-
 

kobuki_velocity_smoother package from kobuki_velocity_smoother repo

kobuki_velocity_smoother

Package Summary

Tags No category tags.
Version 0.15.0
License BSD
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/kobuki-base/kobuki_velocity_smoother.git
VCS Type git
VCS Version release/0.15.x
Last Updated 2022-10-01
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bound incoming velocity messages according to robot velocity and acceleration limits.

Additional Links

Maintainers

  • Jihoon Lee

Authors

  • Jorge Santos Simon

Kobuki Velocity Smoother

[About][Parameters][Topics][Usage][Feedback]

About

ROS 2 package for smoothing commanded velocities represented by a stream of geometry_msg/msg/Twist messages. It applies limits to linear and angular components of both speed and acceleration. Feedback from either the odometry / actual commanded velocity can be used to provide a better result in some situations (read further below).

Profiles

Parameters

  • ~accel_lim_v (double, default: 0.8): linear acceleration limit
  • ~accel_lim_w (double, default: 5.4): angular acceleration limit
  • ~speed_lim_v (double, default: 0.3): linear velocity limit
  • ~speed_lim_w (double, default: 3.5): angular velocity limit
  • ~decel_factor (double, default: 1.0): multiplier for the acceleration limit when decelerating
  • ~frequency (double, default: 20.0): computed and published rate, adhered to regardless of the incoming message rate (interpolates when necessary)
  • ~feedback (int, default: 0): the type of feedback to use (0 - none, 1 - odometry, 2 - actual commanded velocities)

Topics

Subscriptions

  • ~/input (geometry_msgs/msg/Twist): input velocity commands
  • ~/feedback/odometry (nav_msgs/msg/Odometry): topic for odometry feedback, only required if the requested feedback has been set for odometry
  • ~/feedback/cmd_vel (geometry_msgs/msg/Twist): topic for actual commanded velocity feedback, only required if the requested feedback has been set for actual commanded velocities

Publications

  • ~smoothed (geometry_msgs/msg/Twist): smoothed output velocity commands respecting velocity and acceleration limits

Usage

  • All the parameters except frequency and feedback are dynamically reconfigurable.
  • Linear and angular velocities are smoothed proportionally to be more restricted, so we guarantee a constant rotation radius.
  • If the input topic becomes inactive, and the last command is not a zero-velocity one (maybe the controller crashed, or just forgot good manners…), we introduce a fake zero-velocity command after a short timeout.

Simply wire up the channels to their appropriate topics. The tests can be a useful starting point.

Feedback

There are some reasons to use robot feedback. The two most frequently faced:

  • Multiple controllers compete for controlling the robot via a multiplexer. A controller that has been excluded by another with higher priority may suddenly issue commands significantly different to the last commanded velocity when the multiplexer has switched back to it. i.e. the commanded velocity profile experiences a large, discrete jump. In these cases, option 2 is very useful.
  • The robot fails to generate the commanded velocity due to, for example, unmodelled inclines, carpets etc. In these cases, option 1 is very useful.
CHANGELOG

Kobuki Velocity Smoother

Forthcoming

0.15.0 (2022-10-01)

  • Rename the package to kobuki_velocity_smoother. (#20)
  • Make a few more style fixes for older cpplint. (#18)
  • Update the README.md (#17)
  • Don't install test artifacts. (#16)
  • Minor cleanup of the includes.
  • Remove the internal accel_lim_w variable.
  • Remove internal accel_lim_v.
  • Remove decel_factor internal variable.
  • Remove internal decel_lim_w variable.
  • Remove internal decel_lim_v variable.
  • Remove speed_lim_w internal variable.
  • Remove speed_lim_v internal variable.
  • Remove the quiet internal variable.
  • Make sure to allow other parameters in the list.
  • Enable the style checkers, and fix the style to conform. (#14)
  • Fix the tests to work with modern ROS 2. (#13)
  • Small fix to the velocity smoother. (#12)
  • Fix the test so it works with 'colcon test' (#11)

0.14.0 (2020-01-20)

  • [ros2] parameters/topics renamed more sensibly, #8
  • [docs] moved from the ROS1 wiki and updated, #8
  • [tests] translational smoothing test added, #7

0.13.0 (2020-01-20)

  • [infra] refactored for ROS 2 and renamed to velocity_smoother, #1

0.6.3 (2014-12-05)

0.6.2 (2014-11-30)

  • yocs_velocity_smoother: adds node name param to launcher
  • adds a little launcher restructing for muxer and smoother
  • Contributors: Marcus Liebhardt

0.6.0 (2014-07-08)

  • updating package informations. remove email for authors. updating maintainer
  • Contributors: Jihoon Lee

0.5.3 (2014-03-24)

0.5.2 (2013-11-05)

0.5.1 (2013-10-14)

  • Unify naming politics for binaries and plugins.

0.5.0 (2013-10-11)

0.4.1 (2013-10-08)

0.4.0 (2013-08-29)

  • Add bugtracker and repo info URLs.
  • Changelogs at package level.
  • Separate and comment velocity feedback remaps.
  • License link fixed.

0.3.0 (2013-07-02)

  • Fix on velocity smoother to deal with low-rate simulated time (namely Stage).
  • Allow using end velocity commands as robot feedback (until now we can use only odometry).

0.2.3 (2013-04-15)

0.2.2 (2013-02-10)

0.2.1 (2013-02-08)

0.2.0 (2013-02-07)

  • Catkinized.

0.1.3 (2013-01-08)

  • Dynamic reconfigure for velocity/acceleration limits.
  • Fix on deceleration smoothing.

0.1.2 (2013-01-02)

  • Add test program.
  • Add licensing.

0.1.1 (2012-12-21)

  • Keep direction constant when smoothing velocities, i.e. draw constant arcs. To do so we must sometimes over-limit dv or dw.
  • Bound velocity in addition to acceleration. Also set physically meaningful values for acceleration.

0.1.0 (2012-12-05)

  • Initial version.

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged kobuki_velocity_smoother at Robotics Stack Exchange

kobuki_velocity_smoother package from kobuki_velocity_smoother repo

kobuki_velocity_smoother

Package Summary

Tags No category tags.
Version 0.15.0
License BSD
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/kobuki-base/kobuki_velocity_smoother.git
VCS Type git
VCS Version release/0.15.x
Last Updated 2022-10-01
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bound incoming velocity messages according to robot velocity and acceleration limits.

Additional Links

Maintainers

  • Jihoon Lee

Authors

  • Jorge Santos Simon

Kobuki Velocity Smoother

[About][Parameters][Topics][Usage][Feedback]

About

ROS 2 package for smoothing commanded velocities represented by a stream of geometry_msg/msg/Twist messages. It applies limits to linear and angular components of both speed and acceleration. Feedback from either the odometry / actual commanded velocity can be used to provide a better result in some situations (read further below).

Profiles

Parameters

  • ~accel_lim_v (double, default: 0.8): linear acceleration limit
  • ~accel_lim_w (double, default: 5.4): angular acceleration limit
  • ~speed_lim_v (double, default: 0.3): linear velocity limit
  • ~speed_lim_w (double, default: 3.5): angular velocity limit
  • ~decel_factor (double, default: 1.0): multiplier for the acceleration limit when decelerating
  • ~frequency (double, default: 20.0): computed and published rate, adhered to regardless of the incoming message rate (interpolates when necessary)
  • ~feedback (int, default: 0): the type of feedback to use (0 - none, 1 - odometry, 2 - actual commanded velocities)

Topics

Subscriptions

  • ~/input (geometry_msgs/msg/Twist): input velocity commands
  • ~/feedback/odometry (nav_msgs/msg/Odometry): topic for odometry feedback, only required if the requested feedback has been set for odometry
  • ~/feedback/cmd_vel (geometry_msgs/msg/Twist): topic for actual commanded velocity feedback, only required if the requested feedback has been set for actual commanded velocities

Publications

  • ~smoothed (geometry_msgs/msg/Twist): smoothed output velocity commands respecting velocity and acceleration limits

Usage

  • All the parameters except frequency and feedback are dynamically reconfigurable.
  • Linear and angular velocities are smoothed proportionally to be more restricted, so we guarantee a constant rotation radius.
  • If the input topic becomes inactive, and the last command is not a zero-velocity one (maybe the controller crashed, or just forgot good manners…), we introduce a fake zero-velocity command after a short timeout.

Simply wire up the channels to their appropriate topics. The tests can be a useful starting point.

Feedback

There are some reasons to use robot feedback. The two most frequently faced:

  • Multiple controllers compete for controlling the robot via a multiplexer. A controller that has been excluded by another with higher priority may suddenly issue commands significantly different to the last commanded velocity when the multiplexer has switched back to it. i.e. the commanded velocity profile experiences a large, discrete jump. In these cases, option 2 is very useful.
  • The robot fails to generate the commanded velocity due to, for example, unmodelled inclines, carpets etc. In these cases, option 1 is very useful.
CHANGELOG

Kobuki Velocity Smoother

Forthcoming

0.15.0 (2022-10-01)

  • Rename the package to kobuki_velocity_smoother. (#20)
  • Make a few more style fixes for older cpplint. (#18)
  • Update the README.md (#17)
  • Don't install test artifacts. (#16)
  • Minor cleanup of the includes.
  • Remove the internal accel_lim_w variable.
  • Remove internal accel_lim_v.
  • Remove decel_factor internal variable.
  • Remove internal decel_lim_w variable.
  • Remove internal decel_lim_v variable.
  • Remove speed_lim_w internal variable.
  • Remove speed_lim_v internal variable.
  • Remove the quiet internal variable.
  • Make sure to allow other parameters in the list.
  • Enable the style checkers, and fix the style to conform. (#14)
  • Fix the tests to work with modern ROS 2. (#13)
  • Small fix to the velocity smoother. (#12)
  • Fix the test so it works with 'colcon test' (#11)

0.14.0 (2020-01-20)

  • [ros2] parameters/topics renamed more sensibly, #8
  • [docs] moved from the ROS1 wiki and updated, #8
  • [tests] translational smoothing test added, #7

0.13.0 (2020-01-20)

  • [infra] refactored for ROS 2 and renamed to velocity_smoother, #1

0.6.3 (2014-12-05)

0.6.2 (2014-11-30)

  • yocs_velocity_smoother: adds node name param to launcher
  • adds a little launcher restructing for muxer and smoother
  • Contributors: Marcus Liebhardt

0.6.0 (2014-07-08)

  • updating package informations. remove email for authors. updating maintainer
  • Contributors: Jihoon Lee

0.5.3 (2014-03-24)

0.5.2 (2013-11-05)

0.5.1 (2013-10-14)

  • Unify naming politics for binaries and plugins.

0.5.0 (2013-10-11)

0.4.1 (2013-10-08)

0.4.0 (2013-08-29)

  • Add bugtracker and repo info URLs.
  • Changelogs at package level.
  • Separate and comment velocity feedback remaps.
  • License link fixed.

0.3.0 (2013-07-02)

  • Fix on velocity smoother to deal with low-rate simulated time (namely Stage).
  • Allow using end velocity commands as robot feedback (until now we can use only odometry).

0.2.3 (2013-04-15)

0.2.2 (2013-02-10)

0.2.1 (2013-02-08)

0.2.0 (2013-02-07)

  • Catkinized.

0.1.3 (2013-01-08)

  • Dynamic reconfigure for velocity/acceleration limits.
  • Fix on deceleration smoothing.

0.1.2 (2013-01-02)

  • Add test program.
  • Add licensing.

0.1.1 (2012-12-21)

  • Keep direction constant when smoothing velocities, i.e. draw constant arcs. To do so we must sometimes over-limit dv or dw.
  • Bound velocity in addition to acceleration. Also set physically meaningful values for acceleration.

0.1.0 (2012-12-05)

  • Initial version.

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged kobuki_velocity_smoother at Robotics Stack Exchange

kobuki_velocity_smoother package from kobuki_velocity_smoother repo

kobuki_velocity_smoother

Package Summary

Tags No category tags.
Version 0.15.0
License BSD
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/kobuki-base/kobuki_velocity_smoother.git
VCS Type git
VCS Version release/0.15.x
Last Updated 2022-10-01
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bound incoming velocity messages according to robot velocity and acceleration limits.

Additional Links

Maintainers

  • Jihoon Lee

Authors

  • Jorge Santos Simon

Kobuki Velocity Smoother

[About][Parameters][Topics][Usage][Feedback]

About

ROS 2 package for smoothing commanded velocities represented by a stream of geometry_msg/msg/Twist messages. It applies limits to linear and angular components of both speed and acceleration. Feedback from either the odometry / actual commanded velocity can be used to provide a better result in some situations (read further below).

Profiles

Parameters

  • ~accel_lim_v (double, default: 0.8): linear acceleration limit
  • ~accel_lim_w (double, default: 5.4): angular acceleration limit
  • ~speed_lim_v (double, default: 0.3): linear velocity limit
  • ~speed_lim_w (double, default: 3.5): angular velocity limit
  • ~decel_factor (double, default: 1.0): multiplier for the acceleration limit when decelerating
  • ~frequency (double, default: 20.0): computed and published rate, adhered to regardless of the incoming message rate (interpolates when necessary)
  • ~feedback (int, default: 0): the type of feedback to use (0 - none, 1 - odometry, 2 - actual commanded velocities)

Topics

Subscriptions

  • ~/input (geometry_msgs/msg/Twist): input velocity commands
  • ~/feedback/odometry (nav_msgs/msg/Odometry): topic for odometry feedback, only required if the requested feedback has been set for odometry
  • ~/feedback/cmd_vel (geometry_msgs/msg/Twist): topic for actual commanded velocity feedback, only required if the requested feedback has been set for actual commanded velocities

Publications

  • ~smoothed (geometry_msgs/msg/Twist): smoothed output velocity commands respecting velocity and acceleration limits

Usage

  • All the parameters except frequency and feedback are dynamically reconfigurable.
  • Linear and angular velocities are smoothed proportionally to be more restricted, so we guarantee a constant rotation radius.
  • If the input topic becomes inactive, and the last command is not a zero-velocity one (maybe the controller crashed, or just forgot good manners…), we introduce a fake zero-velocity command after a short timeout.

Simply wire up the channels to their appropriate topics. The tests can be a useful starting point.

Feedback

There are some reasons to use robot feedback. The two most frequently faced:

  • Multiple controllers compete for controlling the robot via a multiplexer. A controller that has been excluded by another with higher priority may suddenly issue commands significantly different to the last commanded velocity when the multiplexer has switched back to it. i.e. the commanded velocity profile experiences a large, discrete jump. In these cases, option 2 is very useful.
  • The robot fails to generate the commanded velocity due to, for example, unmodelled inclines, carpets etc. In these cases, option 1 is very useful.
CHANGELOG

Kobuki Velocity Smoother

Forthcoming

0.15.0 (2022-10-01)

  • Rename the package to kobuki_velocity_smoother. (#20)
  • Make a few more style fixes for older cpplint. (#18)
  • Update the README.md (#17)
  • Don't install test artifacts. (#16)
  • Minor cleanup of the includes.
  • Remove the internal accel_lim_w variable.
  • Remove internal accel_lim_v.
  • Remove decel_factor internal variable.
  • Remove internal decel_lim_w variable.
  • Remove internal decel_lim_v variable.
  • Remove speed_lim_w internal variable.
  • Remove speed_lim_v internal variable.
  • Remove the quiet internal variable.
  • Make sure to allow other parameters in the list.
  • Enable the style checkers, and fix the style to conform. (#14)
  • Fix the tests to work with modern ROS 2. (#13)
  • Small fix to the velocity smoother. (#12)
  • Fix the test so it works with 'colcon test' (#11)

0.14.0 (2020-01-20)

  • [ros2] parameters/topics renamed more sensibly, #8
  • [docs] moved from the ROS1 wiki and updated, #8
  • [tests] translational smoothing test added, #7

0.13.0 (2020-01-20)

  • [infra] refactored for ROS 2 and renamed to velocity_smoother, #1

0.6.3 (2014-12-05)

0.6.2 (2014-11-30)

  • yocs_velocity_smoother: adds node name param to launcher
  • adds a little launcher restructing for muxer and smoother
  • Contributors: Marcus Liebhardt

0.6.0 (2014-07-08)

  • updating package informations. remove email for authors. updating maintainer
  • Contributors: Jihoon Lee

0.5.3 (2014-03-24)

0.5.2 (2013-11-05)

0.5.1 (2013-10-14)

  • Unify naming politics for binaries and plugins.

0.5.0 (2013-10-11)

0.4.1 (2013-10-08)

0.4.0 (2013-08-29)

  • Add bugtracker and repo info URLs.
  • Changelogs at package level.
  • Separate and comment velocity feedback remaps.
  • License link fixed.

0.3.0 (2013-07-02)

  • Fix on velocity smoother to deal with low-rate simulated time (namely Stage).
  • Allow using end velocity commands as robot feedback (until now we can use only odometry).

0.2.3 (2013-04-15)

0.2.2 (2013-02-10)

0.2.1 (2013-02-08)

0.2.0 (2013-02-07)

  • Catkinized.

0.1.3 (2013-01-08)

  • Dynamic reconfigure for velocity/acceleration limits.
  • Fix on deceleration smoothing.

0.1.2 (2013-01-02)

  • Add test program.
  • Add licensing.

0.1.1 (2012-12-21)

  • Keep direction constant when smoothing velocities, i.e. draw constant arcs. To do so we must sometimes over-limit dv or dw.
  • Bound velocity in addition to acceleration. Also set physically meaningful values for acceleration.

0.1.0 (2012-12-05)

  • Initial version.

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged kobuki_velocity_smoother at Robotics Stack Exchange

kobuki_velocity_smoother package from kobuki_velocity_smoother repo

kobuki_velocity_smoother

Package Summary

Tags No category tags.
Version 0.15.0
License BSD
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/kobuki-base/kobuki_velocity_smoother.git
VCS Type git
VCS Version release/0.15.x
Last Updated 2022-10-01
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bound incoming velocity messages according to robot velocity and acceleration limits.

Additional Links

Maintainers

  • Jihoon Lee

Authors

  • Jorge Santos Simon

Kobuki Velocity Smoother

[About][Parameters][Topics][Usage][Feedback]

About

ROS 2 package for smoothing commanded velocities represented by a stream of geometry_msg/msg/Twist messages. It applies limits to linear and angular components of both speed and acceleration. Feedback from either the odometry / actual commanded velocity can be used to provide a better result in some situations (read further below).

Profiles

Parameters

  • ~accel_lim_v (double, default: 0.8): linear acceleration limit
  • ~accel_lim_w (double, default: 5.4): angular acceleration limit
  • ~speed_lim_v (double, default: 0.3): linear velocity limit
  • ~speed_lim_w (double, default: 3.5): angular velocity limit
  • ~decel_factor (double, default: 1.0): multiplier for the acceleration limit when decelerating
  • ~frequency (double, default: 20.0): computed and published rate, adhered to regardless of the incoming message rate (interpolates when necessary)
  • ~feedback (int, default: 0): the type of feedback to use (0 - none, 1 - odometry, 2 - actual commanded velocities)

Topics

Subscriptions

  • ~/input (geometry_msgs/msg/Twist): input velocity commands
  • ~/feedback/odometry (nav_msgs/msg/Odometry): topic for odometry feedback, only required if the requested feedback has been set for odometry
  • ~/feedback/cmd_vel (geometry_msgs/msg/Twist): topic for actual commanded velocity feedback, only required if the requested feedback has been set for actual commanded velocities

Publications

  • ~smoothed (geometry_msgs/msg/Twist): smoothed output velocity commands respecting velocity and acceleration limits

Usage

  • All the parameters except frequency and feedback are dynamically reconfigurable.
  • Linear and angular velocities are smoothed proportionally to be more restricted, so we guarantee a constant rotation radius.
  • If the input topic becomes inactive, and the last command is not a zero-velocity one (maybe the controller crashed, or just forgot good manners…), we introduce a fake zero-velocity command after a short timeout.

Simply wire up the channels to their appropriate topics. The tests can be a useful starting point.

Feedback

There are some reasons to use robot feedback. The two most frequently faced:

  • Multiple controllers compete for controlling the robot via a multiplexer. A controller that has been excluded by another with higher priority may suddenly issue commands significantly different to the last commanded velocity when the multiplexer has switched back to it. i.e. the commanded velocity profile experiences a large, discrete jump. In these cases, option 2 is very useful.
  • The robot fails to generate the commanded velocity due to, for example, unmodelled inclines, carpets etc. In these cases, option 1 is very useful.
CHANGELOG

Kobuki Velocity Smoother

Forthcoming

0.15.0 (2022-10-01)

  • Rename the package to kobuki_velocity_smoother. (#20)
  • Make a few more style fixes for older cpplint. (#18)
  • Update the README.md (#17)
  • Don't install test artifacts. (#16)
  • Minor cleanup of the includes.
  • Remove the internal accel_lim_w variable.
  • Remove internal accel_lim_v.
  • Remove decel_factor internal variable.
  • Remove internal decel_lim_w variable.
  • Remove internal decel_lim_v variable.
  • Remove speed_lim_w internal variable.
  • Remove speed_lim_v internal variable.
  • Remove the quiet internal variable.
  • Make sure to allow other parameters in the list.
  • Enable the style checkers, and fix the style to conform. (#14)
  • Fix the tests to work with modern ROS 2. (#13)
  • Small fix to the velocity smoother. (#12)
  • Fix the test so it works with 'colcon test' (#11)

0.14.0 (2020-01-20)

  • [ros2] parameters/topics renamed more sensibly, #8
  • [docs] moved from the ROS1 wiki and updated, #8
  • [tests] translational smoothing test added, #7

0.13.0 (2020-01-20)

  • [infra] refactored for ROS 2 and renamed to velocity_smoother, #1

0.6.3 (2014-12-05)

0.6.2 (2014-11-30)

  • yocs_velocity_smoother: adds node name param to launcher
  • adds a little launcher restructing for muxer and smoother
  • Contributors: Marcus Liebhardt

0.6.0 (2014-07-08)

  • updating package informations. remove email for authors. updating maintainer
  • Contributors: Jihoon Lee

0.5.3 (2014-03-24)

0.5.2 (2013-11-05)

0.5.1 (2013-10-14)

  • Unify naming politics for binaries and plugins.

0.5.0 (2013-10-11)

0.4.1 (2013-10-08)

0.4.0 (2013-08-29)

  • Add bugtracker and repo info URLs.
  • Changelogs at package level.
  • Separate and comment velocity feedback remaps.
  • License link fixed.

0.3.0 (2013-07-02)

  • Fix on velocity smoother to deal with low-rate simulated time (namely Stage).
  • Allow using end velocity commands as robot feedback (until now we can use only odometry).

0.2.3 (2013-04-15)

0.2.2 (2013-02-10)

0.2.1 (2013-02-08)

0.2.0 (2013-02-07)

  • Catkinized.

0.1.3 (2013-01-08)

  • Dynamic reconfigure for velocity/acceleration limits.
  • Fix on deceleration smoothing.

0.1.2 (2013-01-02)

  • Add test program.
  • Add licensing.

0.1.1 (2012-12-21)

  • Keep direction constant when smoothing velocities, i.e. draw constant arcs. To do so we must sometimes over-limit dv or dw.
  • Bound velocity in addition to acceleration. Also set physically meaningful values for acceleration.

0.1.0 (2012-12-05)

  • Initial version.

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged kobuki_velocity_smoother at Robotics Stack Exchange

No version for distro noetic. Known supported distros are highlighted in the buttons above.

kobuki_velocity_smoother package from kobuki_velocity_smoother repo

kobuki_velocity_smoother

Package Summary

Tags No category tags.
Version 0.15.0
License BSD
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/kobuki-base/kobuki_velocity_smoother.git
VCS Type git
VCS Version release/0.15.x
Last Updated 2022-10-01
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bound incoming velocity messages according to robot velocity and acceleration limits.

Additional Links

Maintainers

  • Jihoon Lee

Authors

  • Jorge Santos Simon

Kobuki Velocity Smoother

[About][Parameters][Topics][Usage][Feedback]

About

ROS 2 package for smoothing commanded velocities represented by a stream of geometry_msg/msg/Twist messages. It applies limits to linear and angular components of both speed and acceleration. Feedback from either the odometry / actual commanded velocity can be used to provide a better result in some situations (read further below).

Profiles

Parameters

  • ~accel_lim_v (double, default: 0.8): linear acceleration limit
  • ~accel_lim_w (double, default: 5.4): angular acceleration limit
  • ~speed_lim_v (double, default: 0.3): linear velocity limit
  • ~speed_lim_w (double, default: 3.5): angular velocity limit
  • ~decel_factor (double, default: 1.0): multiplier for the acceleration limit when decelerating
  • ~frequency (double, default: 20.0): computed and published rate, adhered to regardless of the incoming message rate (interpolates when necessary)
  • ~feedback (int, default: 0): the type of feedback to use (0 - none, 1 - odometry, 2 - actual commanded velocities)

Topics

Subscriptions

  • ~/input (geometry_msgs/msg/Twist): input velocity commands
  • ~/feedback/odometry (nav_msgs/msg/Odometry): topic for odometry feedback, only required if the requested feedback has been set for odometry
  • ~/feedback/cmd_vel (geometry_msgs/msg/Twist): topic for actual commanded velocity feedback, only required if the requested feedback has been set for actual commanded velocities

Publications

  • ~smoothed (geometry_msgs/msg/Twist): smoothed output velocity commands respecting velocity and acceleration limits

Usage

  • All the parameters except frequency and feedback are dynamically reconfigurable.
  • Linear and angular velocities are smoothed proportionally to be more restricted, so we guarantee a constant rotation radius.
  • If the input topic becomes inactive, and the last command is not a zero-velocity one (maybe the controller crashed, or just forgot good manners…), we introduce a fake zero-velocity command after a short timeout.

Simply wire up the channels to their appropriate topics. The tests can be a useful starting point.

Feedback

There are some reasons to use robot feedback. The two most frequently faced:

  • Multiple controllers compete for controlling the robot via a multiplexer. A controller that has been excluded by another with higher priority may suddenly issue commands significantly different to the last commanded velocity when the multiplexer has switched back to it. i.e. the commanded velocity profile experiences a large, discrete jump. In these cases, option 2 is very useful.
  • The robot fails to generate the commanded velocity due to, for example, unmodelled inclines, carpets etc. In these cases, option 1 is very useful.
CHANGELOG

Kobuki Velocity Smoother

Forthcoming

0.15.0 (2022-10-01)

  • Rename the package to kobuki_velocity_smoother. (#20)
  • Make a few more style fixes for older cpplint. (#18)
  • Update the README.md (#17)
  • Don't install test artifacts. (#16)
  • Minor cleanup of the includes.
  • Remove the internal accel_lim_w variable.
  • Remove internal accel_lim_v.
  • Remove decel_factor internal variable.
  • Remove internal decel_lim_w variable.
  • Remove internal decel_lim_v variable.
  • Remove speed_lim_w internal variable.
  • Remove speed_lim_v internal variable.
  • Remove the quiet internal variable.
  • Make sure to allow other parameters in the list.
  • Enable the style checkers, and fix the style to conform. (#14)
  • Fix the tests to work with modern ROS 2. (#13)
  • Small fix to the velocity smoother. (#12)
  • Fix the test so it works with 'colcon test' (#11)

0.14.0 (2020-01-20)

  • [ros2] parameters/topics renamed more sensibly, #8
  • [docs] moved from the ROS1 wiki and updated, #8
  • [tests] translational smoothing test added, #7

0.13.0 (2020-01-20)

  • [infra] refactored for ROS 2 and renamed to velocity_smoother, #1

0.6.3 (2014-12-05)

0.6.2 (2014-11-30)

  • yocs_velocity_smoother: adds node name param to launcher
  • adds a little launcher restructing for muxer and smoother
  • Contributors: Marcus Liebhardt

0.6.0 (2014-07-08)

  • updating package informations. remove email for authors. updating maintainer
  • Contributors: Jihoon Lee

0.5.3 (2014-03-24)

0.5.2 (2013-11-05)

0.5.1 (2013-10-14)

  • Unify naming politics for binaries and plugins.

0.5.0 (2013-10-11)

0.4.1 (2013-10-08)

0.4.0 (2013-08-29)

  • Add bugtracker and repo info URLs.
  • Changelogs at package level.
  • Separate and comment velocity feedback remaps.
  • License link fixed.

0.3.0 (2013-07-02)

  • Fix on velocity smoother to deal with low-rate simulated time (namely Stage).
  • Allow using end velocity commands as robot feedback (until now we can use only odometry).

0.2.3 (2013-04-15)

0.2.2 (2013-02-10)

0.2.1 (2013-02-08)

0.2.0 (2013-02-07)

  • Catkinized.

0.1.3 (2013-01-08)

  • Dynamic reconfigure for velocity/acceleration limits.
  • Fix on deceleration smoothing.

0.1.2 (2013-01-02)

  • Add test program.
  • Add licensing.

0.1.1 (2012-12-21)

  • Keep direction constant when smoothing velocities, i.e. draw constant arcs. To do so we must sometimes over-limit dv or dw.
  • Bound velocity in addition to acceleration. Also set physically meaningful values for acceleration.

0.1.0 (2012-12-05)

  • Initial version.

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged kobuki_velocity_smoother at Robotics Stack Exchange

No version for distro melodic. Known supported distros are highlighted in the buttons above.