cmd_vel_smoother package from jsk_control repocmd_vel_smoother contact_states_observer eus_nlopt eus_qp eus_qpoases eus_teleop joy_mouse jsk_calibration jsk_control jsk_footstep_controller jsk_footstep_planner jsk_ik_server jsk_teleop_joy |
|
Package Summary
Tags | No category tags. |
Version | 0.1.17 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/jsk-ros-pkg/jsk_control.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2024-01-22 |
Dev Status | DEVELOPED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yuki Furuta
Authors
- Yuki Furuta
cmd_vel_smoother
Interpolate velocity command to be published periodically with acceleration / deceleration limit.
What is this?
Basically this node interpolates velocity not to violate acceleration limit by decelating from last received velocity.
For example PR2 has 10Hz control loop in base_controller and if no cmd_vel
has come within 0.1 seconds, the controller stops all the moving motors for safety.
If move_base
node publishes cmd_vel
lower than 10Hz (let it be 5Hz) but continues publishing, controllers send signal to motors forward for 500ms and stop for 500ms, which causes “rattle” (= moves and suddenly stops repeatedly) and can damages motors and other hardwares.
Parameters
-
~x_acc_lim
(Double, default:0.1
)limit value of x-axis translational acceleration. This node publishes velocity not to violate this value.
-
~y_acc_lim
(Double, default:0.1
)limit value of y-axis translational acceleration. This node publishes velocity not to violate this value.
-
~yaw_acc_lim
(Double, default:0.1
)limit value of z-axis rotational acceleration. This node publishes velocity not to violate this value.
-
~desired_rate
(Double, default:10.0
)This node interpolates velocity commands to keep the rate
-
~interpolate_max_frame
(Int, default:5
)Max message count to be published from last received velocity command.
Discussion
-
This package is originated from the discussion in https://github.com/ros-planning/navigation/issues/405 .
I have not looked into detail of implementation but it seems that similar nodes for turtlebot robots exist: https://github.com/yujinrobot/yujin_ocs/tree/devel/yocs_velocity_smoother .
Author
Yuki Furuta «furushchev@jsk.imi.i.u-tokyo.ac.jp»
Changelog for package cmd_vel_smoother
0.1.17 (2023-05-28)
0.1.16 (2022-10-27)
0.1.15 (2018-05-16)
0.1.14 (2018-01-15)
- add cmd_vel_smoother package
(#683)
- add cmd_vel_smoother package
- Contributors: Yuki Furuta
0.1.13 (2017-04-18)
0.1.12 (2017-02-22)
0.1.11 (2017-02-09)
0.1.10 (2016-12-15)
0.1.9 (2016-03-23)
0.1.8 (2015-11-02)
0.1.7 (2015-11-01)
0.1.6 (2015-06-11)
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
geometry_msgs | |
roscpp | |
dynamic_reconfigure | |
catkin |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged cmd_vel_smoother at Robotics Stack Exchange
cmd_vel_smoother package from jsk_control repocmd_vel_smoother contact_states_observer eus_nlopt eus_qp eus_qpoases eus_teleop joy_mouse jsk_calibration jsk_control jsk_footstep_controller jsk_footstep_planner jsk_ik_server jsk_teleop_joy |
|
Package Summary
Tags | No category tags. |
Version | 0.1.17 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/jsk-ros-pkg/jsk_control.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2024-01-22 |
Dev Status | DEVELOPED |
CI status |
|
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yuki Furuta
Authors
- Yuki Furuta
cmd_vel_smoother
Interpolate velocity command to be published periodically with acceleration / deceleration limit.
What is this?
Basically this node interpolates velocity not to violate acceleration limit by decelating from last received velocity.
For example PR2 has 10Hz control loop in base_controller and if no cmd_vel
has come within 0.1 seconds, the controller stops all the moving motors for safety.
If move_base
node publishes cmd_vel
lower than 10Hz (let it be 5Hz) but continues publishing, controllers send signal to motors forward for 500ms and stop for 500ms, which causes “rattle” (= moves and suddenly stops repeatedly) and can damages motors and other hardwares.
Parameters
-
~x_acc_lim
(Double, default:0.1
)limit value of x-axis translational acceleration. This node publishes velocity not to violate this value.
-
~y_acc_lim
(Double, default:0.1
)limit value of y-axis translational acceleration. This node publishes velocity not to violate this value.
-
~yaw_acc_lim
(Double, default:0.1
)limit value of z-axis rotational acceleration. This node publishes velocity not to violate this value.
-
~desired_rate
(Double, default:10.0
)This node interpolates velocity commands to keep the rate
-
~interpolate_max_frame
(Int, default:5
)Max message count to be published from last received velocity command.
Discussion
-
This package is originated from the discussion in https://github.com/ros-planning/navigation/issues/405 .
I have not looked into detail of implementation but it seems that similar nodes for turtlebot robots exist: https://github.com/yujinrobot/yujin_ocs/tree/devel/yocs_velocity_smoother .
Author
Yuki Furuta «furushchev@jsk.imi.i.u-tokyo.ac.jp»
Changelog for package cmd_vel_smoother
0.1.17 (2023-05-28)
0.1.16 (2022-10-27)
0.1.15 (2018-05-16)
0.1.14 (2018-01-15)
- add cmd_vel_smoother package
(#683)
- add cmd_vel_smoother package
- Contributors: Yuki Furuta
0.1.13 (2017-04-18)
0.1.12 (2017-02-22)
0.1.11 (2017-02-09)
0.1.10 (2016-12-15)
0.1.9 (2016-03-23)
0.1.8 (2015-11-02)
0.1.7 (2015-11-01)
0.1.6 (2015-06-11)
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
geometry_msgs | |
roscpp | |
dynamic_reconfigure | |
catkin |