-
 

Package Summary

Tags No category tags.
Version 0.17.2
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/at-wat/neonavigation.git
VCS Type git
VCS Version master
Last Updated 2024-11-08
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

Path following control package for wheeled mobile robot

Additional Links

No additional links.

Maintainers

  • Atsushi Watanabe

Authors

  • Atsushi Watanabe

trajectory_tracker package

The topic names will be migrated to ROS recommended namespace model. Set /neonavigation_compatible parameter to 1 to use new topic names.

trajectory_tracker

trajectory_tracker node controls vehicle velocity to follow given path.

Subscribed topics

  • ~/path (new: path) [nav_msgs::Path]
  • ~/speed (new: speed) [std_msgs::Float32]
  • /tf
  • /odom [nav_msgs::Odometry] (Optional: this topic is subscribed only when “use_odom” option is true)

Published topics

  • ~/cmd_vel (new: cmd_vel) [geometry_msgs::Twist]
  • ~/status [trajectory_tracker_msgs::TrajectoryTrackerStatus]
  • ~/tracking [geometry_msgs::PoseStamped]

Services

Called services

Parameters

  • “frame_robot” (string, default: std::string(“base_link”))
  • “path” deprecated (string, default: std::string(“path”))
  • “cmd_vel” deprecated (string, default: std::string(“cmd_vel”))
  • “hz” (double, default: 50.0)
  • “look_forward” (double, default: 0.5)
  • “curv_forward” (double, default: 0.5)
  • “k_dist” (double, default: 1.0)
  • “k_ang” (double, default: 1.0)
  • “k_avel” (double, default: 1.0)
  • “gain_at_vel” (double, default: 0.0)

    compensate k_ang according to the current linear velocity to keep convergence characteristic at the linear velocity, specified by this parameter, if gain_at_vel != 0

  • “dist_lim” (double, default: 0.5)
  • “dist_stop” (double, default: 2.0)
  • “rotate_ang” (?, default: M_PI / 4)
  • “max_vel” (double, default: 0.5)
  • “max_angvel” (double, default: 1.0)
  • “max_acc” (double, default: 1.0)
  • “max_angacc” (double, default: 2.0)
  • “acc_toc_factor” (double, default: 0.9)

    decrease max_acc by this factor in time optimal control to reduce vibration due to control delay.

  • “angacc_toc_factor” (double, default: 0.9)

    decrease max_angacc by this factor in time optimal control to reduce vibration due to control delay. This parameter is valid when “use_time_optimal_control” is true.

  • “path_step” (int, default: 1)
  • “goal_tolerance_dist” (double, default: 0.2)
  • “goal_tolerance_ang” (double, default: 0.1)
  • “stop_tolerance_dist” (double, default: 0.1)
  • “stop_tolerance_ang” (double, default: 0.05)
  • “no_position_control_dist” (double, default: 0.0)
  • “min_tracking_path” (?, default: noPosCntlDist)
  • “allow_backward” (bool, default: true)
  • “limit_vel_by_avel” (bool, default: false)
  • “check_old_path” (bool, default: false)
  • “use_odom” (bool, default: false)

    When use_odom is false, trajectory_tracker publishes command velocities at a constant rate specified in “hz” option. When use_odom is true, it publishes command velocities just after odometry is updated. “hz” option is ignored in this mode.

  • “predict_odom” (bool, default: true)

    If true, predicted coordinates of the robot at the present timestamp are used. This parameter is valid when “use_odom” is true.

  • “odom_timeout_sec” (double, default: 0.1)

    Robot will be stopped after the duration specified in this parameter has passed since the last odometry was received. This parameter is valid when “use_odom” is true.

  • “use_time_optimal_control” (bool, default: True)

    If true, time optimal control mode is used during turning in place. Otherwise, the same algorithm used for path tracking is used.

  • “time_optimal_control_future_gain” (double, default: 1.5)

    A gain to look ahead to robot’s angle used in time optimal control. This parameter is valid when “use_time_optimal_control” is true.

  • “k_ang_rotation” (double, default: 1.0)

    “k_ang” value used during turning in place. This parameter is valid when “use_time_optimal_control” is false.

  • “k_avel_rotation” (double, default: 1.0)

    “k_avvel” value used during turning in place. This parameter is valid when “use_time_optimal_control” is false.


trajectory_recorder

trajectory_recorder node generates Path message from TF.

Subscribed topics

  • /tf

Published topics

  • ~/recpath (new: path) [nav_msgs::Path]

Services

Called services

Parameters

  • “frame_robot” (string, default: std::string(“base_link”))
  • “frame_global” (string, default: std::string(“map”))
  • “path” (string, default: std::string(“recpath”))
  • “dist_interval” (double, default: 0.3)
  • “ang_interval” (double, default: 1.0)

trajectory_saver

trajectory_saver node saves Path message to file.

Subscribed topics

  • ~/recpath (new: path) [nav_msgs::Path]
  • /tf

Published topics

Services

Called services

Parameters

  • “path” deprecated (string, default: std::string(“recpath”))
  • “file” (string, default: std::string(“a.path”))

trajectory_server

trajectory_server node loads Path from file and publishes it.

Subscribed topics

  • /tf

Published topics

  • ~/path (new: path) [nav_msgs::Path]
  • ~/status [trajectory_tracker_msgs::TrajectoryServerStatus]

Services

  • ~/ChangePath (new: change_path) [trajectory_tracker_msgs::ChangePath]

Called services

Parameters

  • “path” deprecated (string, default: std::string(“path”))
  • “file” (string, default: std::string(“a.path”))
  • “hz” (?, default: double(5))
  • “filter_step” (double, default: 0.0)

Acknowledgement

This research was supported by a contract with the Ministry of Internal Affairs and Communications entitled, ‘Novel and innovative R&D making use of brain structures’

This software was implemented to accomplish the above research. Original idea of the implemented control scheme was published on:
S. Iida, S. Yuta, “Vehicle command system and trajectory control for autonomous mobile robots,” in Proceedings of the 1991 IEEE/RSJ International Workshop on Intelligent Robots and Systems (IROS), 1991, pp. 212-217.

CHANGELOG

Changelog for package trajectory_tracker

0.17.2 (2024-11-07)

0.17.1 (2024-03-22)

0.17.0 (2023-11-02)

0.16.0 (2023-09-14)

  • planner_cspace: start planning from expected robot pose (#717)
  • Contributors: Naotaka Hatao

0.15.0 (2023-08-30)

  • trajectory_tracker: make trajectory_tracker library (#713)
  • Contributors: Naotaka Hatao

0.14.2 (2023-07-31)

0.14.1 (2023-07-07)

0.14.0 (2023-06-06)

0.13.0 (2023-05-31)

0.12.2 (2023-02-28)

0.12.1 (2023-02-25)

  • trajectory_tracker: relax test conditions (#674)
  • Improve test logs on timeout (#673)
  • trajectory_tracker: throttle tf exception logs (#670)
  • trajectory_tracker: improve test stability (#667)
  • Contributors: Atsushi Watanabe

0.12.0 (2023-01-30)

0.11.8 (2022-12-28)

0.11.7 (2022-08-05)

  • trajectory_tracker: fix prediction_offset of trajectory_tracker (#644)
  • Contributors: Naotaka Hatao

0.11.6 (2022-07-20)

0.11.5 (2022-07-06)

0.11.4 (2022-04-13)

0.11.3 (2021-12-02)

0.11.2 (2021-11-08)

0.11.1 (2021-10-29)

  • trajectory_tracker: increase SwitchBackWithPathUpdate test timeout (#611)
  • Contributors: Atsushi Watanabe

0.11.0 (2021-08-30)

  • trajectory_tracker: add velocity tolerance parameters (#607)
  • Apply clang-format-11 with new setting (#605)
  • Contributors: Naotaka Hatao

0.10.11 (2021-06-21)

0.10.10 (2021-03-18)

0.10.9 (2021-03-16)

0.10.8 (2021-03-10)

0.10.7 (2021-03-07)

0.10.6 (2021-01-28)

0.10.5 (2020-12-24)

0.10.4 (2020-11-12)

0.10.3 (2020-10-22)

0.10.2 (2020-10-07)

0.10.1 (2020-08-26)

0.10.0 (2020-08-06)

  • trajectory_tracker: add a mode to apply the same control method during turning in place (#513)
  • trajectory_tracker: relax test tolerance on tf mode (#545)
  • trajectory_tracker: goal if both raw and predicted pose is in tolerance (#540)
  • trajectory_tracker: fix wrong tracking target just after new path is received (#537)
  • Increase initialization timeout in the tests (#536)
  • trajectory_tracker: add odometry timeout checking (#534)
  • trajectory_tracker: predict odometry by extrapolation (#529)
  • trajectory_tracker: add use_odom option (#523)
  • trajectory_tracker: make trajectory_tracker dynamic-reconfigurable (#521)
  • Contributors: Atsushi Watanabe, Naotaka Hatao

0.9.1 (2020-07-16)

  • trajectory_tracker: fix remained distance calculation on overshoot (#514)
  • Contributors: Atsushi Watanabe

0.9.0 (2020-07-02)

0.8.8 (2020-06-15)

0.8.7 (2020-05-22)

0.8.6 (2020-05-15)

  • Fix duplicated tf timestamp (#494)
  • Contributors: Atsushi Watanabe

0.8.5 (2020-05-04)

0.8.4 (2020-04-30)

  • Clean unused dependencies (#472)
  • trajectory_tracker: add missing dep to std_srvs (#470)
  • Contributors: Atsushi Watanabe

0.8.3 (2020-04-26)

0.8.2 (2020-04-07)

  • Support Noetic (#461)
  • Contributors: Atsushi Watanabe

0.8.1 (2020-03-12)

0.8.0 (2020-03-04)

  • Add message package version constraints (#443)
  • trajectory_tracker: check path timestamps in tests (#441)
  • trajectory_tracker: add path header to TrajectoryTrackerStatus (#439)
  • Contributors: Atsushi Watanabe, Naotaka Hatao

0.7.0 (2020-02-04)

  • trajectory_tracker: calculate correct curvature at the end of path (#435)
  • trajectory_tracker: fix test initialization timeout (#432)
  • Contributors: Atsushi Watanabe, Naotaka Hatao

0.6.0 (2020-01-18)

  • trajectory_tracker: add a service to clear recorded path (#422)
  • Contributors: Naotaka Hatao

0.5.1 (2020-01-06)

  • Migrate from C math functions to C++ (#407)
  • trajectory_tracker: fix test stability (#405)
  • Contributors: Atsushi Watanabe

0.5.0 (2019-10-21)

  • trajectory_tracker: track interpolated rotation (#394)
  • Contributors: Atsushi Watanabe

0.4.3 (2019-09-10)

0.4.2 (2019-08-19)

0.4.1 (2019-08-15)

  • trajectory_tracker: update demo params (#352)
  • Drop ROS Indigo and Ubuntu Trusty support (#310)
  • planner_cspace: calculate path hysteresis in 3-DOF space (#304)
  • Fix include directory priority (#308)
  • Contributors: Atsushi Watanabe

0.4.0 (2019-05-09)

  • trajectory_tracker: speed up simulation on rostest (#280)
  • trajectory_tracker: linear velocity adaptive gain control (#276)
  • trajectory_tracker: remove unused parameters (#274)
  • trajectory_tracker: fix remained distance for path with two poses (#272)
  • Add LICENSE file (#270)
  • Support melodic (#266)
  • Contributors: Atsushi Watanabe, Yuta Koga

0.3.1 (2019-01-10)

  • trajectory_tracker: fix test timeout for path with velocity (#263)
  • trajectory_tracker: add timeout to the test (#261)
  • trajectory_tracker: support PathWithVelocity (#244)
  • trajectory_tracker: fix robot pose prediction (#250)
  • trajectory_tracker: fix angular velocity limit (#252)
  • trajectory_tracker: add acceleration factor parameter of time optimal control (#249)
  • trajectory_tracker: fix local goal handling (#251)
  • trajectory_tracker: add tolerance to InPlaceTurn (#248)
  • trajectory_tracker: fix angle normalization in in-place turn mode (#247)
  • trajectory_tracker: refactoring (#239)
  • Fix pointer alignment style (#233)
  • Migrate tf to tf2 (#230)
  • trajectory_tracker: fix status output topic path (#225)
  • trajectory_tracker: add tests (#207)
  • Fix catkin package definitions (#206)
  • Contributors: Atsushi Watanabe, So Jomura

0.2.3 (2018-07-19)

0.2.2 (2018-07-17)

0.2.1 (2018-07-14)

0.2.0 (2018-07-12)

  • Fix namespace migration messages (#174)
  • Fix topic/service namespace model (#168)
  • Fix package dependencies (#167)
  • Update package descriptions and unify license and version (#165)
  • Use neonavigation_msgs package (#164)
  • trajectory_tracker: reduce angular oscillation (#120)
  • trajectory_tracker: use timer instead of spinOnce polling (#119)
  • trajectory_tracker: fix naming style. (#92)
  • Support package install. (#45)
  • Fix coding styles. (#39)
  • trajectory_tracker: removes unnecessary launch files (#18)
  • trajectory_tracker: adds option to store timestamp in recorded path (#13)
  • adds READMEs (#11)
  • trajectory_tracker: subtree merge changes on trajectory_tracker repository
  • Subtree-merge 'trajectory_tracker' package
  • Contributors: Atsushi Watanabe

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 trajectory_tracker at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 0.17.2
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/at-wat/neonavigation.git
VCS Type git
VCS Version master
Last Updated 2024-11-08
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

Path following control package for wheeled mobile robot

Additional Links

No additional links.

Maintainers

  • Atsushi Watanabe

Authors

  • Atsushi Watanabe

trajectory_tracker package

The topic names will be migrated to ROS recommended namespace model. Set /neonavigation_compatible parameter to 1 to use new topic names.

trajectory_tracker

trajectory_tracker node controls vehicle velocity to follow given path.

Subscribed topics

  • ~/path (new: path) [nav_msgs::Path]
  • ~/speed (new: speed) [std_msgs::Float32]
  • /tf
  • /odom [nav_msgs::Odometry] (Optional: this topic is subscribed only when “use_odom” option is true)

Published topics

  • ~/cmd_vel (new: cmd_vel) [geometry_msgs::Twist]
  • ~/status [trajectory_tracker_msgs::TrajectoryTrackerStatus]
  • ~/tracking [geometry_msgs::PoseStamped]

Services

Called services

Parameters

  • “frame_robot” (string, default: std::string(“base_link”))
  • “path” deprecated (string, default: std::string(“path”))
  • “cmd_vel” deprecated (string, default: std::string(“cmd_vel”))
  • “hz” (double, default: 50.0)
  • “look_forward” (double, default: 0.5)
  • “curv_forward” (double, default: 0.5)
  • “k_dist” (double, default: 1.0)
  • “k_ang” (double, default: 1.0)
  • “k_avel” (double, default: 1.0)
  • “gain_at_vel” (double, default: 0.0)

    compensate k_ang according to the current linear velocity to keep convergence characteristic at the linear velocity, specified by this parameter, if gain_at_vel != 0

  • “dist_lim” (double, default: 0.5)
  • “dist_stop” (double, default: 2.0)
  • “rotate_ang” (?, default: M_PI / 4)
  • “max_vel” (double, default: 0.5)
  • “max_angvel” (double, default: 1.0)
  • “max_acc” (double, default: 1.0)
  • “max_angacc” (double, default: 2.0)
  • “acc_toc_factor” (double, default: 0.9)

    decrease max_acc by this factor in time optimal control to reduce vibration due to control delay.

  • “angacc_toc_factor” (double, default: 0.9)

    decrease max_angacc by this factor in time optimal control to reduce vibration due to control delay. This parameter is valid when “use_time_optimal_control” is true.

  • “path_step” (int, default: 1)
  • “goal_tolerance_dist” (double, default: 0.2)
  • “goal_tolerance_ang” (double, default: 0.1)
  • “stop_tolerance_dist” (double, default: 0.1)
  • “stop_tolerance_ang” (double, default: 0.05)
  • “no_position_control_dist” (double, default: 0.0)
  • “min_tracking_path” (?, default: noPosCntlDist)
  • “allow_backward” (bool, default: true)
  • “limit_vel_by_avel” (bool, default: false)
  • “check_old_path” (bool, default: false)
  • “use_odom” (bool, default: false)

    When use_odom is false, trajectory_tracker publishes command velocities at a constant rate specified in “hz” option. When use_odom is true, it publishes command velocities just after odometry is updated. “hz” option is ignored in this mode.

  • “predict_odom” (bool, default: true)

    If true, predicted coordinates of the robot at the present timestamp are used. This parameter is valid when “use_odom” is true.

  • “odom_timeout_sec” (double, default: 0.1)

    Robot will be stopped after the duration specified in this parameter has passed since the last odometry was received. This parameter is valid when “use_odom” is true.

  • “use_time_optimal_control” (bool, default: True)

    If true, time optimal control mode is used during turning in place. Otherwise, the same algorithm used for path tracking is used.

  • “time_optimal_control_future_gain” (double, default: 1.5)

    A gain to look ahead to robot’s angle used in time optimal control. This parameter is valid when “use_time_optimal_control” is true.

  • “k_ang_rotation” (double, default: 1.0)

    “k_ang” value used during turning in place. This parameter is valid when “use_time_optimal_control” is false.

  • “k_avel_rotation” (double, default: 1.0)

    “k_avvel” value used during turning in place. This parameter is valid when “use_time_optimal_control” is false.


trajectory_recorder

trajectory_recorder node generates Path message from TF.

Subscribed topics

  • /tf

Published topics

  • ~/recpath (new: path) [nav_msgs::Path]

Services

Called services

Parameters

  • “frame_robot” (string, default: std::string(“base_link”))
  • “frame_global” (string, default: std::string(“map”))
  • “path” (string, default: std::string(“recpath”))
  • “dist_interval” (double, default: 0.3)
  • “ang_interval” (double, default: 1.0)

trajectory_saver

trajectory_saver node saves Path message to file.

Subscribed topics

  • ~/recpath (new: path) [nav_msgs::Path]
  • /tf

Published topics

Services

Called services

Parameters

  • “path” deprecated (string, default: std::string(“recpath”))
  • “file” (string, default: std::string(“a.path”))

trajectory_server

trajectory_server node loads Path from file and publishes it.

Subscribed topics

  • /tf

Published topics

  • ~/path (new: path) [nav_msgs::Path]
  • ~/status [trajectory_tracker_msgs::TrajectoryServerStatus]

Services

  • ~/ChangePath (new: change_path) [trajectory_tracker_msgs::ChangePath]

Called services

Parameters

  • “path” deprecated (string, default: std::string(“path”))
  • “file” (string, default: std::string(“a.path”))
  • “hz” (?, default: double(5))
  • “filter_step” (double, default: 0.0)

Acknowledgement

This research was supported by a contract with the Ministry of Internal Affairs and Communications entitled, ‘Novel and innovative R&D making use of brain structures’

This software was implemented to accomplish the above research. Original idea of the implemented control scheme was published on:
S. Iida, S. Yuta, “Vehicle command system and trajectory control for autonomous mobile robots,” in Proceedings of the 1991 IEEE/RSJ International Workshop on Intelligent Robots and Systems (IROS), 1991, pp. 212-217.

CHANGELOG

Changelog for package trajectory_tracker

0.17.2 (2024-11-07)

0.17.1 (2024-03-22)

0.17.0 (2023-11-02)

0.16.0 (2023-09-14)

  • planner_cspace: start planning from expected robot pose (#717)
  • Contributors: Naotaka Hatao

0.15.0 (2023-08-30)

  • trajectory_tracker: make trajectory_tracker library (#713)
  • Contributors: Naotaka Hatao

0.14.2 (2023-07-31)

0.14.1 (2023-07-07)

0.14.0 (2023-06-06)

0.13.0 (2023-05-31)

0.12.2 (2023-02-28)

0.12.1 (2023-02-25)

  • trajectory_tracker: relax test conditions (#674)
  • Improve test logs on timeout (#673)
  • trajectory_tracker: throttle tf exception logs (#670)
  • trajectory_tracker: improve test stability (#667)
  • Contributors: Atsushi Watanabe

0.12.0 (2023-01-30)

0.11.8 (2022-12-28)

0.11.7 (2022-08-05)

  • trajectory_tracker: fix prediction_offset of trajectory_tracker (#644)
  • Contributors: Naotaka Hatao

0.11.6 (2022-07-20)

0.11.5 (2022-07-06)

0.11.4 (2022-04-13)

0.11.3 (2021-12-02)

0.11.2 (2021-11-08)

0.11.1 (2021-10-29)

  • trajectory_tracker: increase SwitchBackWithPathUpdate test timeout (#611)
  • Contributors: Atsushi Watanabe

0.11.0 (2021-08-30)

  • trajectory_tracker: add velocity tolerance parameters (#607)
  • Apply clang-format-11 with new setting (#605)
  • Contributors: Naotaka Hatao

0.10.11 (2021-06-21)

0.10.10 (2021-03-18)

0.10.9 (2021-03-16)

0.10.8 (2021-03-10)

0.10.7 (2021-03-07)

0.10.6 (2021-01-28)

0.10.5 (2020-12-24)

0.10.4 (2020-11-12)

0.10.3 (2020-10-22)

0.10.2 (2020-10-07)

0.10.1 (2020-08-26)

0.10.0 (2020-08-06)

  • trajectory_tracker: add a mode to apply the same control method during turning in place (#513)
  • trajectory_tracker: relax test tolerance on tf mode (#545)
  • trajectory_tracker: goal if both raw and predicted pose is in tolerance (#540)
  • trajectory_tracker: fix wrong tracking target just after new path is received (#537)
  • Increase initialization timeout in the tests (#536)
  • trajectory_tracker: add odometry timeout checking (#534)
  • trajectory_tracker: predict odometry by extrapolation (#529)
  • trajectory_tracker: add use_odom option (#523)
  • trajectory_tracker: make trajectory_tracker dynamic-reconfigurable (#521)
  • Contributors: Atsushi Watanabe, Naotaka Hatao

0.9.1 (2020-07-16)

  • trajectory_tracker: fix remained distance calculation on overshoot (#514)
  • Contributors: Atsushi Watanabe

0.9.0 (2020-07-02)

0.8.8 (2020-06-15)

0.8.7 (2020-05-22)

0.8.6 (2020-05-15)

  • Fix duplicated tf timestamp (#494)
  • Contributors: Atsushi Watanabe

0.8.5 (2020-05-04)

0.8.4 (2020-04-30)

  • Clean unused dependencies (#472)
  • trajectory_tracker: add missing dep to std_srvs (#470)
  • Contributors: Atsushi Watanabe

0.8.3 (2020-04-26)

0.8.2 (2020-04-07)

  • Support Noetic (#461)
  • Contributors: Atsushi Watanabe

0.8.1 (2020-03-12)

0.8.0 (2020-03-04)

  • Add message package version constraints (#443)
  • trajectory_tracker: check path timestamps in tests (#441)
  • trajectory_tracker: add path header to TrajectoryTrackerStatus (#439)
  • Contributors: Atsushi Watanabe, Naotaka Hatao

0.7.0 (2020-02-04)

  • trajectory_tracker: calculate correct curvature at the end of path (#435)
  • trajectory_tracker: fix test initialization timeout (#432)
  • Contributors: Atsushi Watanabe, Naotaka Hatao

0.6.0 (2020-01-18)

  • trajectory_tracker: add a service to clear recorded path (#422)
  • Contributors: Naotaka Hatao

0.5.1 (2020-01-06)

  • Migrate from C math functions to C++ (#407)
  • trajectory_tracker: fix test stability (#405)
  • Contributors: Atsushi Watanabe

0.5.0 (2019-10-21)

  • trajectory_tracker: track interpolated rotation (#394)
  • Contributors: Atsushi Watanabe

0.4.3 (2019-09-10)

0.4.2 (2019-08-19)

0.4.1 (2019-08-15)

  • trajectory_tracker: update demo params (#352)
  • Drop ROS Indigo and Ubuntu Trusty support (#310)
  • planner_cspace: calculate path hysteresis in 3-DOF space (#304)
  • Fix include directory priority (#308)
  • Contributors: Atsushi Watanabe

0.4.0 (2019-05-09)

  • trajectory_tracker: speed up simulation on rostest (#280)
  • trajectory_tracker: linear velocity adaptive gain control (#276)
  • trajectory_tracker: remove unused parameters (#274)
  • trajectory_tracker: fix remained distance for path with two poses (#272)
  • Add LICENSE file (#270)
  • Support melodic (#266)
  • Contributors: Atsushi Watanabe, Yuta Koga

0.3.1 (2019-01-10)

  • trajectory_tracker: fix test timeout for path with velocity (#263)
  • trajectory_tracker: add timeout to the test (#261)
  • trajectory_tracker: support PathWithVelocity (#244)
  • trajectory_tracker: fix robot pose prediction (#250)
  • trajectory_tracker: fix angular velocity limit (#252)
  • trajectory_tracker: add acceleration factor parameter of time optimal control (#249)
  • trajectory_tracker: fix local goal handling (#251)
  • trajectory_tracker: add tolerance to InPlaceTurn (#248)
  • trajectory_tracker: fix angle normalization in in-place turn mode (#247)
  • trajectory_tracker: refactoring (#239)
  • Fix pointer alignment style (#233)
  • Migrate tf to tf2 (#230)
  • trajectory_tracker: fix status output topic path (#225)
  • trajectory_tracker: add tests (#207)
  • Fix catkin package definitions (#206)
  • Contributors: Atsushi Watanabe, So Jomura

0.2.3 (2018-07-19)

0.2.2 (2018-07-17)

0.2.1 (2018-07-14)

0.2.0 (2018-07-12)

  • Fix namespace migration messages (#174)
  • Fix topic/service namespace model (#168)
  • Fix package dependencies (#167)
  • Update package descriptions and unify license and version (#165)
  • Use neonavigation_msgs package (#164)
  • trajectory_tracker: reduce angular oscillation (#120)
  • trajectory_tracker: use timer instead of spinOnce polling (#119)
  • trajectory_tracker: fix naming style. (#92)
  • Support package install. (#45)
  • Fix coding styles. (#39)
  • trajectory_tracker: removes unnecessary launch files (#18)
  • trajectory_tracker: adds option to store timestamp in recorded path (#13)
  • adds READMEs (#11)
  • trajectory_tracker: subtree merge changes on trajectory_tracker repository
  • Subtree-merge 'trajectory_tracker' package
  • Contributors: Atsushi Watanabe

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 trajectory_tracker at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 0.4.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/at-wat/neonavigation.git
VCS Type git
VCS Version indigo-devel
Last Updated 2019-05-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

Path following control package for wheeled mobile robot

Additional Links

No additional links.

Maintainers

  • Atsushi Watanabe

Authors

  • Atsushi Watanabe

trajectory_tracker package

The topic names will be migrated to ROS recommended namespace model. Set /neonavigation_compatible parameter to 1 to use new topic names.

trajectory_tracker

trajectory_tracker node controls vehicle velocity to follow given path.

Subscribed topics

  • ~/path (new: path) [nav_msgs::Path]
  • ~/speed (new: speed) [std_msgs::Float32]
  • /tf

Published topics

  • ~/cmd_vel (new: cmd_vel) [geometry_msgs::Twist]
  • ~/status [trajectory_tracker_msgs::TrajectoryTrackerStatus]
  • ~/tracking [geometry_msgs::PoseStamped]

Services

Called services

Parameters

  • “frame_robot” (string, default: std::string(“base_link”))
  • “path” deprecated (string, default: std::string(“path”))
  • “cmd_vel” deprecated (string, default: std::string(“cmd_vel”))
  • “hz” (double, default: 50.0)
  • “look_forward” (double, default: 0.5)
  • “curv_forward” (double, default: 0.5)
  • “k_dist” (double, default: 1.0)
  • “k_ang” (double, default: 1.0)
  • “k_avel” (double, default: 1.0)
  • “gain_at_vel” (double, default: 0.0)

    compensate k_ang according to the current linear velocity to keep convergence characteristic at the linear velocity, specified by this parameter, if gain_at_vel != 0

  • “dist_lim” (double, default: 0.5)
  • “dist_stop” (double, default: 2.0)
  • “rotate_ang” (?, default: M_PI / 4)
  • “max_vel” (double, default: 0.5)
  • “max_angvel” (double, default: 1.0)
  • “max_acc” (double, default: 1.0)
  • “max_angacc” (double, default: 2.0)
  • “acc_toc_factor” (double, default: 0.9)

    decrease max_acc by this factor in time optimal control to reduce vibration due to control delay

  • “angacc_toc_factor” (double, default: 0.9)

    decrease max_angacc by this factor in time optimal control to reduce vibration due to control delay

  • “path_step” (int, default: 1)
  • “goal_tolerance_dist” (double, default: 0.2)
  • “goal_tolerance_ang” (double, default: 0.1)
  • “stop_tolerance_dist” (double, default: 0.1)
  • “stop_tolerance_ang” (double, default: 0.05)
  • “no_position_control_dist” (double, default: 0.0)
  • “min_tracking_path” (?, default: noPosCntlDist)
  • “allow_backward” (bool, default: true)
  • “limit_vel_by_avel” (bool, default: false)
  • “check_old_path” (bool, default: false)

trajectory_recorder

trajectory_recorder node generates Path message from TF.

Subscribed topics

  • /tf

Published topics

  • ~/recpath (new: path) [nav_msgs::Path]

Services

Called services

Parameters

  • “frame_robot” (string, default: std::string(“base_link”))
  • “frame_global” (string, default: std::string(“map”))
  • “path” (string, default: std::string(“recpath”))
  • “dist_interval” (double, default: 0.3)
  • “ang_interval” (double, default: 1.0)

trajectory_saver

trajectory_saver node saves Path message to file.

Subscribed topics

  • ~/recpath (new: path) [nav_msgs::Path]
  • /tf

Published topics

Services

Called services

Parameters

  • “path” deprecated (string, default: std::string(“recpath”))
  • “file” (string, default: std::string(“a.path”))

trajectory_server

trajectory_server node loads Path from file and publishes it.

Subscribed topics

  • /tf

Published topics

  • ~/path (new: path) [nav_msgs::Path]
  • ~/status [trajectory_tracker_msgs::TrajectoryServerStatus]

Services

  • ~/ChangePath (new: change_path) [trajectory_tracker_msgs::ChangePath]

Called services

Parameters

  • “path” deprecated (string, default: std::string(“path”))
  • “file” (string, default: std::string(“a.path”))
  • “hz” (?, default: double(5))
  • “filter_step” (double, default: 0.0)

Acknowledgement

This research was supported by a contract with the Ministry of Internal Affairs and Communications entitled, ‘Novel and innovative R&D making use of brain structures’

This software was implemented to accomplish the above research. Original idea of the implemented control scheme was published on:
S. Iida, S. Yuta, “Vehicle command system and trajectory control for autonomous mobile robots,” in Proceedings of the 1991 IEEE/RSJ International Workshop on Intelligent Robots and Systems (IROS), 1991, pp. 212-217.

CHANGELOG

Changelog for package trajectory_tracker

0.4.0 (2019-05-09)

  • trajectory_tracker: speed up simulation on rostest (#280)
  • trajectory_tracker: linear velocity adaptive gain control (#276)
  • trajectory_tracker: remove unused parameters (#274)
  • trajectory_tracker: fix remained distance for path with two poses (#272)
  • Add LICENSE file (#270)
  • Support melodic (#266)
  • Contributors: Atsushi Watanabe, Yuta Koga

0.3.1 (2019-01-10)

  • trajectory_tracker: fix test timeout for path with velocity (#263)
  • trajectory_tracker: add timeout to the test (#261)
  • trajectory_tracker: support PathWithVelocity (#244)
  • trajectory_tracker: fix robot pose prediction (#250)
  • trajectory_tracker: fix angular velocity limit (#252)
  • trajectory_tracker: add acceleration factor parameter of time optimal control (#249)
  • trajectory_tracker: fix local goal handling (#251)
  • trajectory_tracker: add tolerance to InPlaceTurn (#248)
  • trajectory_tracker: fix angle normalization in in-place turn mode (#247)
  • trajectory_tracker: refactoring (#239)
  • Fix pointer alignment style (#233)
  • Migrate tf to tf2 (#230)
  • trajectory_tracker: fix status output topic path (#225)
  • trajectory_tracker: add tests (#207)
  • Fix catkin package definitions (#206)
  • Contributors: Atsushi Watanabe, So Jomura

0.2.3 (2018-07-19)

0.2.2 (2018-07-17)

0.2.1 (2018-07-14)

0.2.0 (2018-07-12)

  • Fix namespace migration messages (#174)
  • Fix topic/service namespace model (#168)
  • Fix package dependencies (#167)
  • Update package descriptions and unify license and version (#165)
  • Use neonavigation_msgs package (#164)
  • trajectory_tracker: reduce angular oscillation (#120)
  • trajectory_tracker: use timer instead of spinOnce polling (#119)
  • trajectory_tracker: fix naming style. (#92)
  • Support package install. (#45)
  • Fix coding styles. (#39)
  • trajectory_tracker: removes unnecessary launch files (#18)
  • trajectory_tracker: adds option to store timestamp in recorded path (#13)
  • adds READMEs (#11)
  • trajectory_tracker: subtree merge changes on trajectory_tracker repository
  • Subtree-merge 'trajectory_tracker' package
  • Contributors: Atsushi Watanabe

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 trajectory_tracker at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 0.17.2
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/at-wat/neonavigation.git
VCS Type git
VCS Version master
Last Updated 2024-11-08
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

Path following control package for wheeled mobile robot

Additional Links

No additional links.

Maintainers

  • Atsushi Watanabe

Authors

  • Atsushi Watanabe

trajectory_tracker package

The topic names will be migrated to ROS recommended namespace model. Set /neonavigation_compatible parameter to 1 to use new topic names.

trajectory_tracker

trajectory_tracker node controls vehicle velocity to follow given path.

Subscribed topics

  • ~/path (new: path) [nav_msgs::Path]
  • ~/speed (new: speed) [std_msgs::Float32]
  • /tf
  • /odom [nav_msgs::Odometry] (Optional: this topic is subscribed only when “use_odom” option is true)

Published topics

  • ~/cmd_vel (new: cmd_vel) [geometry_msgs::Twist]
  • ~/status [trajectory_tracker_msgs::TrajectoryTrackerStatus]
  • ~/tracking [geometry_msgs::PoseStamped]

Services

Called services

Parameters

  • “frame_robot” (string, default: std::string(“base_link”))
  • “path” deprecated (string, default: std::string(“path”))
  • “cmd_vel” deprecated (string, default: std::string(“cmd_vel”))
  • “hz” (double, default: 50.0)
  • “look_forward” (double, default: 0.5)
  • “curv_forward” (double, default: 0.5)
  • “k_dist” (double, default: 1.0)
  • “k_ang” (double, default: 1.0)
  • “k_avel” (double, default: 1.0)
  • “gain_at_vel” (double, default: 0.0)

    compensate k_ang according to the current linear velocity to keep convergence characteristic at the linear velocity, specified by this parameter, if gain_at_vel != 0

  • “dist_lim” (double, default: 0.5)
  • “dist_stop” (double, default: 2.0)
  • “rotate_ang” (?, default: M_PI / 4)
  • “max_vel” (double, default: 0.5)
  • “max_angvel” (double, default: 1.0)
  • “max_acc” (double, default: 1.0)
  • “max_angacc” (double, default: 2.0)
  • “acc_toc_factor” (double, default: 0.9)

    decrease max_acc by this factor in time optimal control to reduce vibration due to control delay.

  • “angacc_toc_factor” (double, default: 0.9)

    decrease max_angacc by this factor in time optimal control to reduce vibration due to control delay. This parameter is valid when “use_time_optimal_control” is true.

  • “path_step” (int, default: 1)
  • “goal_tolerance_dist” (double, default: 0.2)
  • “goal_tolerance_ang” (double, default: 0.1)
  • “stop_tolerance_dist” (double, default: 0.1)
  • “stop_tolerance_ang” (double, default: 0.05)
  • “no_position_control_dist” (double, default: 0.0)
  • “min_tracking_path” (?, default: noPosCntlDist)
  • “allow_backward” (bool, default: true)
  • “limit_vel_by_avel” (bool, default: false)
  • “check_old_path” (bool, default: false)
  • “use_odom” (bool, default: false)

    When use_odom is false, trajectory_tracker publishes command velocities at a constant rate specified in “hz” option. When use_odom is true, it publishes command velocities just after odometry is updated. “hz” option is ignored in this mode.

  • “predict_odom” (bool, default: true)

    If true, predicted coordinates of the robot at the present timestamp are used. This parameter is valid when “use_odom” is true.

  • “odom_timeout_sec” (double, default: 0.1)

    Robot will be stopped after the duration specified in this parameter has passed since the last odometry was received. This parameter is valid when “use_odom” is true.

  • “use_time_optimal_control” (bool, default: True)

    If true, time optimal control mode is used during turning in place. Otherwise, the same algorithm used for path tracking is used.

  • “time_optimal_control_future_gain” (double, default: 1.5)

    A gain to look ahead to robot’s angle used in time optimal control. This parameter is valid when “use_time_optimal_control” is true.

  • “k_ang_rotation” (double, default: 1.0)

    “k_ang” value used during turning in place. This parameter is valid when “use_time_optimal_control” is false.

  • “k_avel_rotation” (double, default: 1.0)

    “k_avvel” value used during turning in place. This parameter is valid when “use_time_optimal_control” is false.


trajectory_recorder

trajectory_recorder node generates Path message from TF.

Subscribed topics

  • /tf

Published topics

  • ~/recpath (new: path) [nav_msgs::Path]

Services

Called services

Parameters

  • “frame_robot” (string, default: std::string(“base_link”))
  • “frame_global” (string, default: std::string(“map”))
  • “path” (string, default: std::string(“recpath”))
  • “dist_interval” (double, default: 0.3)
  • “ang_interval” (double, default: 1.0)

trajectory_saver

trajectory_saver node saves Path message to file.

Subscribed topics

  • ~/recpath (new: path) [nav_msgs::Path]
  • /tf

Published topics

Services

Called services

Parameters

  • “path” deprecated (string, default: std::string(“recpath”))
  • “file” (string, default: std::string(“a.path”))

trajectory_server

trajectory_server node loads Path from file and publishes it.

Subscribed topics

  • /tf

Published topics

  • ~/path (new: path) [nav_msgs::Path]
  • ~/status [trajectory_tracker_msgs::TrajectoryServerStatus]

Services

  • ~/ChangePath (new: change_path) [trajectory_tracker_msgs::ChangePath]

Called services

Parameters

  • “path” deprecated (string, default: std::string(“path”))
  • “file” (string, default: std::string(“a.path”))
  • “hz” (?, default: double(5))
  • “filter_step” (double, default: 0.0)

Acknowledgement

This research was supported by a contract with the Ministry of Internal Affairs and Communications entitled, ‘Novel and innovative R&D making use of brain structures’

This software was implemented to accomplish the above research. Original idea of the implemented control scheme was published on:
S. Iida, S. Yuta, “Vehicle command system and trajectory control for autonomous mobile robots,” in Proceedings of the 1991 IEEE/RSJ International Workshop on Intelligent Robots and Systems (IROS), 1991, pp. 212-217.

CHANGELOG

Changelog for package trajectory_tracker

0.17.2 (2024-11-07)

0.17.1 (2024-03-22)

0.17.0 (2023-11-02)

0.16.0 (2023-09-14)

  • planner_cspace: start planning from expected robot pose (#717)
  • Contributors: Naotaka Hatao

0.15.0 (2023-08-30)

  • trajectory_tracker: make trajectory_tracker library (#713)
  • Contributors: Naotaka Hatao

0.14.2 (2023-07-31)

0.14.1 (2023-07-07)

0.14.0 (2023-06-06)

0.13.0 (2023-05-31)

0.12.2 (2023-02-28)

0.12.1 (2023-02-25)

  • trajectory_tracker: relax test conditions (#674)
  • Improve test logs on timeout (#673)
  • trajectory_tracker: throttle tf exception logs (#670)
  • trajectory_tracker: improve test stability (#667)
  • Contributors: Atsushi Watanabe

0.12.0 (2023-01-30)

0.11.8 (2022-12-28)

0.11.7 (2022-08-05)

  • trajectory_tracker: fix prediction_offset of trajectory_tracker (#644)
  • Contributors: Naotaka Hatao

0.11.6 (2022-07-20)

0.11.5 (2022-07-06)

0.11.4 (2022-04-13)

0.11.3 (2021-12-02)

0.11.2 (2021-11-08)

0.11.1 (2021-10-29)

  • trajectory_tracker: increase SwitchBackWithPathUpdate test timeout (#611)
  • Contributors: Atsushi Watanabe

0.11.0 (2021-08-30)

  • trajectory_tracker: add velocity tolerance parameters (#607)
  • Apply clang-format-11 with new setting (#605)
  • Contributors: Naotaka Hatao

0.10.11 (2021-06-21)

0.10.10 (2021-03-18)

0.10.9 (2021-03-16)

0.10.8 (2021-03-10)

0.10.7 (2021-03-07)

0.10.6 (2021-01-28)

0.10.5 (2020-12-24)

0.10.4 (2020-11-12)

0.10.3 (2020-10-22)

0.10.2 (2020-10-07)

0.10.1 (2020-08-26)

0.10.0 (2020-08-06)

  • trajectory_tracker: add a mode to apply the same control method during turning in place (#513)
  • trajectory_tracker: relax test tolerance on tf mode (#545)
  • trajectory_tracker: goal if both raw and predicted pose is in tolerance (#540)
  • trajectory_tracker: fix wrong tracking target just after new path is received (#537)
  • Increase initialization timeout in the tests (#536)
  • trajectory_tracker: add odometry timeout checking (#534)
  • trajectory_tracker: predict odometry by extrapolation (#529)
  • trajectory_tracker: add use_odom option (#523)
  • trajectory_tracker: make trajectory_tracker dynamic-reconfigurable (#521)
  • Contributors: Atsushi Watanabe, Naotaka Hatao

0.9.1 (2020-07-16)

  • trajectory_tracker: fix remained distance calculation on overshoot (#514)
  • Contributors: Atsushi Watanabe

0.9.0 (2020-07-02)

0.8.8 (2020-06-15)

0.8.7 (2020-05-22)

0.8.6 (2020-05-15)

  • Fix duplicated tf timestamp (#494)
  • Contributors: Atsushi Watanabe

0.8.5 (2020-05-04)

0.8.4 (2020-04-30)

  • Clean unused dependencies (#472)
  • trajectory_tracker: add missing dep to std_srvs (#470)
  • Contributors: Atsushi Watanabe

0.8.3 (2020-04-26)

0.8.2 (2020-04-07)

  • Support Noetic (#461)
  • Contributors: Atsushi Watanabe

0.8.1 (2020-03-12)

0.8.0 (2020-03-04)

  • Add message package version constraints (#443)
  • trajectory_tracker: check path timestamps in tests (#441)
  • trajectory_tracker: add path header to TrajectoryTrackerStatus (#439)
  • Contributors: Atsushi Watanabe, Naotaka Hatao

0.7.0 (2020-02-04)

  • trajectory_tracker: calculate correct curvature at the end of path (#435)
  • trajectory_tracker: fix test initialization timeout (#432)
  • Contributors: Atsushi Watanabe, Naotaka Hatao

0.6.0 (2020-01-18)

  • trajectory_tracker: add a service to clear recorded path (#422)
  • Contributors: Naotaka Hatao

0.5.1 (2020-01-06)

  • Migrate from C math functions to C++ (#407)
  • trajectory_tracker: fix test stability (#405)
  • Contributors: Atsushi Watanabe

0.5.0 (2019-10-21)

  • trajectory_tracker: track interpolated rotation (#394)
  • Contributors: Atsushi Watanabe

0.4.3 (2019-09-10)

0.4.2 (2019-08-19)

0.4.1 (2019-08-15)

  • trajectory_tracker: update demo params (#352)
  • Drop ROS Indigo and Ubuntu Trusty support (#310)
  • planner_cspace: calculate path hysteresis in 3-DOF space (#304)
  • Fix include directory priority (#308)
  • Contributors: Atsushi Watanabe

0.4.0 (2019-05-09)

  • trajectory_tracker: speed up simulation on rostest (#280)
  • trajectory_tracker: linear velocity adaptive gain control (#276)
  • trajectory_tracker: remove unused parameters (#274)
  • trajectory_tracker: fix remained distance for path with two poses (#272)
  • Add LICENSE file (#270)
  • Support melodic (#266)
  • Contributors: Atsushi Watanabe, Yuta Koga

0.3.1 (2019-01-10)

  • trajectory_tracker: fix test timeout for path with velocity (#263)
  • trajectory_tracker: add timeout to the test (#261)
  • trajectory_tracker: support PathWithVelocity (#244)
  • trajectory_tracker: fix robot pose prediction (#250)
  • trajectory_tracker: fix angular velocity limit (#252)
  • trajectory_tracker: add acceleration factor parameter of time optimal control (#249)
  • trajectory_tracker: fix local goal handling (#251)
  • trajectory_tracker: add tolerance to InPlaceTurn (#248)
  • trajectory_tracker: fix angle normalization in in-place turn mode (#247)
  • trajectory_tracker: refactoring (#239)
  • Fix pointer alignment style (#233)
  • Migrate tf to tf2 (#230)
  • trajectory_tracker: fix status output topic path (#225)
  • trajectory_tracker: add tests (#207)
  • Fix catkin package definitions (#206)
  • Contributors: Atsushi Watanabe, So Jomura

0.2.3 (2018-07-19)

0.2.2 (2018-07-17)

0.2.1 (2018-07-14)

0.2.0 (2018-07-12)

  • Fix namespace migration messages (#174)
  • Fix topic/service namespace model (#168)
  • Fix package dependencies (#167)
  • Update package descriptions and unify license and version (#165)
  • Use neonavigation_msgs package (#164)
  • trajectory_tracker: reduce angular oscillation (#120)
  • trajectory_tracker: use timer instead of spinOnce polling (#119)
  • trajectory_tracker: fix naming style. (#92)
  • Support package install. (#45)
  • Fix coding styles. (#39)
  • trajectory_tracker: removes unnecessary launch files (#18)
  • trajectory_tracker: adds option to store timestamp in recorded path (#13)
  • adds READMEs (#11)
  • trajectory_tracker: subtree merge changes on trajectory_tracker repository
  • Subtree-merge 'trajectory_tracker' package
  • Contributors: Atsushi Watanabe

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 trajectory_tracker at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 0.17.2
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/at-wat/neonavigation.git
VCS Type git
VCS Version master
Last Updated 2024-11-08
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

Path following control package for wheeled mobile robot

Additional Links

No additional links.

Maintainers

  • Atsushi Watanabe

Authors

  • Atsushi Watanabe

trajectory_tracker package

The topic names will be migrated to ROS recommended namespace model. Set /neonavigation_compatible parameter to 1 to use new topic names.

trajectory_tracker

trajectory_tracker node controls vehicle velocity to follow given path.

Subscribed topics

  • ~/path (new: path) [nav_msgs::Path]
  • ~/speed (new: speed) [std_msgs::Float32]
  • /tf
  • /odom [nav_msgs::Odometry] (Optional: this topic is subscribed only when “use_odom” option is true)

Published topics

  • ~/cmd_vel (new: cmd_vel) [geometry_msgs::Twist]
  • ~/status [trajectory_tracker_msgs::TrajectoryTrackerStatus]
  • ~/tracking [geometry_msgs::PoseStamped]

Services

Called services

Parameters

  • “frame_robot” (string, default: std::string(“base_link”))
  • “path” deprecated (string, default: std::string(“path”))
  • “cmd_vel” deprecated (string, default: std::string(“cmd_vel”))
  • “hz” (double, default: 50.0)
  • “look_forward” (double, default: 0.5)
  • “curv_forward” (double, default: 0.5)
  • “k_dist” (double, default: 1.0)
  • “k_ang” (double, default: 1.0)
  • “k_avel” (double, default: 1.0)
  • “gain_at_vel” (double, default: 0.0)

    compensate k_ang according to the current linear velocity to keep convergence characteristic at the linear velocity, specified by this parameter, if gain_at_vel != 0

  • “dist_lim” (double, default: 0.5)
  • “dist_stop” (double, default: 2.0)
  • “rotate_ang” (?, default: M_PI / 4)
  • “max_vel” (double, default: 0.5)
  • “max_angvel” (double, default: 1.0)
  • “max_acc” (double, default: 1.0)
  • “max_angacc” (double, default: 2.0)
  • “acc_toc_factor” (double, default: 0.9)

    decrease max_acc by this factor in time optimal control to reduce vibration due to control delay.

  • “angacc_toc_factor” (double, default: 0.9)

    decrease max_angacc by this factor in time optimal control to reduce vibration due to control delay. This parameter is valid when “use_time_optimal_control” is true.

  • “path_step” (int, default: 1)
  • “goal_tolerance_dist” (double, default: 0.2)
  • “goal_tolerance_ang” (double, default: 0.1)
  • “stop_tolerance_dist” (double, default: 0.1)
  • “stop_tolerance_ang” (double, default: 0.05)
  • “no_position_control_dist” (double, default: 0.0)
  • “min_tracking_path” (?, default: noPosCntlDist)
  • “allow_backward” (bool, default: true)
  • “limit_vel_by_avel” (bool, default: false)
  • “check_old_path” (bool, default: false)
  • “use_odom” (bool, default: false)

    When use_odom is false, trajectory_tracker publishes command velocities at a constant rate specified in “hz” option. When use_odom is true, it publishes command velocities just after odometry is updated. “hz” option is ignored in this mode.

  • “predict_odom” (bool, default: true)

    If true, predicted coordinates of the robot at the present timestamp are used. This parameter is valid when “use_odom” is true.

  • “odom_timeout_sec” (double, default: 0.1)

    Robot will be stopped after the duration specified in this parameter has passed since the last odometry was received. This parameter is valid when “use_odom” is true.

  • “use_time_optimal_control” (bool, default: True)

    If true, time optimal control mode is used during turning in place. Otherwise, the same algorithm used for path tracking is used.

  • “time_optimal_control_future_gain” (double, default: 1.5)

    A gain to look ahead to robot’s angle used in time optimal control. This parameter is valid when “use_time_optimal_control” is true.

  • “k_ang_rotation” (double, default: 1.0)

    “k_ang” value used during turning in place. This parameter is valid when “use_time_optimal_control” is false.

  • “k_avel_rotation” (double, default: 1.0)

    “k_avvel” value used during turning in place. This parameter is valid when “use_time_optimal_control” is false.


trajectory_recorder

trajectory_recorder node generates Path message from TF.

Subscribed topics

  • /tf

Published topics

  • ~/recpath (new: path) [nav_msgs::Path]

Services

Called services

Parameters

  • “frame_robot” (string, default: std::string(“base_link”))
  • “frame_global” (string, default: std::string(“map”))
  • “path” (string, default: std::string(“recpath”))
  • “dist_interval” (double, default: 0.3)
  • “ang_interval” (double, default: 1.0)

trajectory_saver

trajectory_saver node saves Path message to file.

Subscribed topics

  • ~/recpath (new: path) [nav_msgs::Path]
  • /tf

Published topics

Services

Called services

Parameters

  • “path” deprecated (string, default: std::string(“recpath”))
  • “file” (string, default: std::string(“a.path”))

trajectory_server

trajectory_server node loads Path from file and publishes it.

Subscribed topics

  • /tf

Published topics

  • ~/path (new: path) [nav_msgs::Path]
  • ~/status [trajectory_tracker_msgs::TrajectoryServerStatus]

Services

  • ~/ChangePath (new: change_path) [trajectory_tracker_msgs::ChangePath]

Called services

Parameters

  • “path” deprecated (string, default: std::string(“path”))
  • “file” (string, default: std::string(“a.path”))
  • “hz” (?, default: double(5))
  • “filter_step” (double, default: 0.0)

Acknowledgement

This research was supported by a contract with the Ministry of Internal Affairs and Communications entitled, ‘Novel and innovative R&D making use of brain structures’

This software was implemented to accomplish the above research. Original idea of the implemented control scheme was published on:
S. Iida, S. Yuta, “Vehicle command system and trajectory control for autonomous mobile robots,” in Proceedings of the 1991 IEEE/RSJ International Workshop on Intelligent Robots and Systems (IROS), 1991, pp. 212-217.

CHANGELOG

Changelog for package trajectory_tracker

0.17.2 (2024-11-07)

0.17.1 (2024-03-22)

0.17.0 (2023-11-02)

0.16.0 (2023-09-14)

  • planner_cspace: start planning from expected robot pose (#717)
  • Contributors: Naotaka Hatao

0.15.0 (2023-08-30)

  • trajectory_tracker: make trajectory_tracker library (#713)
  • Contributors: Naotaka Hatao

0.14.2 (2023-07-31)

0.14.1 (2023-07-07)

0.14.0 (2023-06-06)

0.13.0 (2023-05-31)

0.12.2 (2023-02-28)

0.12.1 (2023-02-25)

  • trajectory_tracker: relax test conditions (#674)
  • Improve test logs on timeout (#673)
  • trajectory_tracker: throttle tf exception logs (#670)
  • trajectory_tracker: improve test stability (#667)
  • Contributors: Atsushi Watanabe

0.12.0 (2023-01-30)

0.11.8 (2022-12-28)

0.11.7 (2022-08-05)

  • trajectory_tracker: fix prediction_offset of trajectory_tracker (#644)
  • Contributors: Naotaka Hatao

0.11.6 (2022-07-20)

0.11.5 (2022-07-06)

0.11.4 (2022-04-13)

0.11.3 (2021-12-02)

0.11.2 (2021-11-08)

0.11.1 (2021-10-29)

  • trajectory_tracker: increase SwitchBackWithPathUpdate test timeout (#611)
  • Contributors: Atsushi Watanabe

0.11.0 (2021-08-30)

  • trajectory_tracker: add velocity tolerance parameters (#607)
  • Apply clang-format-11 with new setting (#605)
  • Contributors: Naotaka Hatao

0.10.11 (2021-06-21)

0.10.10 (2021-03-18)

0.10.9 (2021-03-16)

0.10.8 (2021-03-10)

0.10.7 (2021-03-07)

0.10.6 (2021-01-28)

0.10.5 (2020-12-24)

0.10.4 (2020-11-12)

0.10.3 (2020-10-22)

0.10.2 (2020-10-07)

0.10.1 (2020-08-26)

0.10.0 (2020-08-06)

  • trajectory_tracker: add a mode to apply the same control method during turning in place (#513)
  • trajectory_tracker: relax test tolerance on tf mode (#545)
  • trajectory_tracker: goal if both raw and predicted pose is in tolerance (#540)
  • trajectory_tracker: fix wrong tracking target just after new path is received (#537)
  • Increase initialization timeout in the tests (#536)
  • trajectory_tracker: add odometry timeout checking (#534)
  • trajectory_tracker: predict odometry by extrapolation (#529)
  • trajectory_tracker: add use_odom option (#523)
  • trajectory_tracker: make trajectory_tracker dynamic-reconfigurable (#521)
  • Contributors: Atsushi Watanabe, Naotaka Hatao

0.9.1 (2020-07-16)

  • trajectory_tracker: fix remained distance calculation on overshoot (#514)
  • Contributors: Atsushi Watanabe

0.9.0 (2020-07-02)

0.8.8 (2020-06-15)

0.8.7 (2020-05-22)

0.8.6 (2020-05-15)

  • Fix duplicated tf timestamp (#494)
  • Contributors: Atsushi Watanabe

0.8.5 (2020-05-04)

0.8.4 (2020-04-30)

  • Clean unused dependencies (#472)
  • trajectory_tracker: add missing dep to std_srvs (#470)
  • Contributors: Atsushi Watanabe

0.8.3 (2020-04-26)

0.8.2 (2020-04-07)

  • Support Noetic (#461)
  • Contributors: Atsushi Watanabe

0.8.1 (2020-03-12)

0.8.0 (2020-03-04)

  • Add message package version constraints (#443)
  • trajectory_tracker: check path timestamps in tests (#441)
  • trajectory_tracker: add path header to TrajectoryTrackerStatus (#439)
  • Contributors: Atsushi Watanabe, Naotaka Hatao

0.7.0 (2020-02-04)

  • trajectory_tracker: calculate correct curvature at the end of path (#435)
  • trajectory_tracker: fix test initialization timeout (#432)
  • Contributors: Atsushi Watanabe, Naotaka Hatao

0.6.0 (2020-01-18)

  • trajectory_tracker: add a service to clear recorded path (#422)
  • Contributors: Naotaka Hatao

0.5.1 (2020-01-06)

  • Migrate from C math functions to C++ (#407)
  • trajectory_tracker: fix test stability (#405)
  • Contributors: Atsushi Watanabe

0.5.0 (2019-10-21)

  • trajectory_tracker: track interpolated rotation (#394)
  • Contributors: Atsushi Watanabe

0.4.3 (2019-09-10)

0.4.2 (2019-08-19)

0.4.1 (2019-08-15)

  • trajectory_tracker: update demo params (#352)
  • Drop ROS Indigo and Ubuntu Trusty support (#310)
  • planner_cspace: calculate path hysteresis in 3-DOF space (#304)
  • Fix include directory priority (#308)
  • Contributors: Atsushi Watanabe

0.4.0 (2019-05-09)

  • trajectory_tracker: speed up simulation on rostest (#280)
  • trajectory_tracker: linear velocity adaptive gain control (#276)
  • trajectory_tracker: remove unused parameters (#274)
  • trajectory_tracker: fix remained distance for path with two poses (#272)
  • Add LICENSE file (#270)
  • Support melodic (#266)
  • Contributors: Atsushi Watanabe, Yuta Koga

0.3.1 (2019-01-10)

  • trajectory_tracker: fix test timeout for path with velocity (#263)
  • trajectory_tracker: add timeout to the test (#261)
  • trajectory_tracker: support PathWithVelocity (#244)
  • trajectory_tracker: fix robot pose prediction (#250)
  • trajectory_tracker: fix angular velocity limit (#252)
  • trajectory_tracker: add acceleration factor parameter of time optimal control (#249)
  • trajectory_tracker: fix local goal handling (#251)
  • trajectory_tracker: add tolerance to InPlaceTurn (#248)
  • trajectory_tracker: fix angle normalization in in-place turn mode (#247)
  • trajectory_tracker: refactoring (#239)
  • Fix pointer alignment style (#233)
  • Migrate tf to tf2 (#230)
  • trajectory_tracker: fix status output topic path (#225)
  • trajectory_tracker: add tests (#207)
  • Fix catkin package definitions (#206)
  • Contributors: Atsushi Watanabe, So Jomura

0.2.3 (2018-07-19)

0.2.2 (2018-07-17)

0.2.1 (2018-07-14)

0.2.0 (2018-07-12)

  • Fix namespace migration messages (#174)
  • Fix topic/service namespace model (#168)
  • Fix package dependencies (#167)
  • Update package descriptions and unify license and version (#165)
  • Use neonavigation_msgs package (#164)
  • trajectory_tracker: reduce angular oscillation (#120)
  • trajectory_tracker: use timer instead of spinOnce polling (#119)
  • trajectory_tracker: fix naming style. (#92)
  • Support package install. (#45)
  • Fix coding styles. (#39)
  • trajectory_tracker: removes unnecessary launch files (#18)
  • trajectory_tracker: adds option to store timestamp in recorded path (#13)
  • adds READMEs (#11)
  • trajectory_tracker: subtree merge changes on trajectory_tracker repository
  • Subtree-merge 'trajectory_tracker' package
  • Contributors: Atsushi Watanabe

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 trajectory_tracker at Robotics Stack Exchange