trajectory_tracker package from neonavigation repocostmap_cspace joystick_interrupt map_organizer neonavigation neonavigation_common neonavigation_launch obj_to_pointcloud planner_cspace safety_limiter track_odometry trajectory_tracker |
|
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-12-05 |
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
- 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. Whenuse_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 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
Package Dependencies
Deps | Name |
---|---|
catkin | |
roslint | |
rostest | |
roscpp | |
dynamic_reconfigure | |
geometry_msgs | |
interactive_markers | |
nav_msgs | |
std_srvs | |
tf2 | |
tf2_geometry_msgs | |
tf2_ros | |
neonavigation_common | |
trajectory_tracker_msgs |
System Dependencies
Name |
---|
eigen |
Dependant Packages
Name | Deps |
---|---|
neonavigation | |
neonavigation_launch | |
planner_cspace |
Launch files
Messages
Services
Plugins
Recent questions tagged trajectory_tracker at Robotics Stack Exchange
trajectory_tracker package from neonavigation repocostmap_cspace joystick_interrupt map_organizer neonavigation neonavigation_common neonavigation_launch obj_to_pointcloud planner_cspace safety_limiter track_odometry trajectory_tracker |
|
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-12-05 |
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
- 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. Whenuse_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 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
Package Dependencies
Deps | Name |
---|---|
catkin | |
roslint | |
rostest | |
roscpp | |
dynamic_reconfigure | |
geometry_msgs | |
interactive_markers | |
nav_msgs | |
std_srvs | |
tf2 | |
tf2_geometry_msgs | |
tf2_ros | |
neonavigation_common | |
trajectory_tracker_msgs |
System Dependencies
Name |
---|
eigen |
Dependant Packages
Name | Deps |
---|---|
neonavigation | |
neonavigation_launch | |
planner_cspace |
Launch files
Messages
Services
Plugins
Recent questions tagged trajectory_tracker at Robotics Stack Exchange
trajectory_tracker package from neonavigation repocostmap_cspace joystick_interrupt map_organizer neonavigation neonavigation_common neonavigation_launch obj_to_pointcloud planner_cspace safety_limiter track_odometry trajectory_tracker |
|
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
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 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
Package Dependencies
Deps | Name |
---|---|
catkin | |
roslint | |
rostest | |
rosunit | |
roscpp | |
geometry_msgs | |
interactive_markers | |
nav_msgs | |
tf2 | |
tf2_geometry_msgs | |
tf2_ros | |
neonavigation_common | |
trajectory_tracker_msgs |
System Dependencies
Name |
---|
eigen |
Dependant Packages
Name | Deps |
---|---|
neonavigation | |
neonavigation_launch | |
planner_cspace |
Launch files
Messages
Services
Plugins
Recent questions tagged trajectory_tracker at Robotics Stack Exchange
trajectory_tracker package from neonavigation repocostmap_cspace joystick_interrupt map_organizer neonavigation neonavigation_common neonavigation_launch obj_to_pointcloud planner_cspace safety_limiter track_odometry trajectory_tracker |
|
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-12-05 |
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
- 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. Whenuse_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 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
Package Dependencies
Deps | Name |
---|---|
catkin | |
roslint | |
rostest | |
roscpp | |
dynamic_reconfigure | |
geometry_msgs | |
interactive_markers | |
nav_msgs | |
std_srvs | |
tf2 | |
tf2_geometry_msgs | |
tf2_ros | |
neonavigation_common | |
trajectory_tracker_msgs |
System Dependencies
Name |
---|
eigen |
Dependant Packages
Name | Deps |
---|---|
neonavigation | |
neonavigation_launch | |
planner_cspace |
Launch files
Messages
Services
Plugins
Recent questions tagged trajectory_tracker at Robotics Stack Exchange
trajectory_tracker package from neonavigation repocostmap_cspace joystick_interrupt map_organizer neonavigation neonavigation_common neonavigation_launch obj_to_pointcloud planner_cspace safety_limiter track_odometry trajectory_tracker |
|
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-12-05 |
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
- 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. Whenuse_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 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
Package Dependencies
Deps | Name |
---|---|
catkin | |
roslint | |
rostest | |
roscpp | |
dynamic_reconfigure | |
geometry_msgs | |
interactive_markers | |
nav_msgs | |
std_srvs | |
tf2 | |
tf2_geometry_msgs | |
tf2_ros | |
neonavigation_common | |
trajectory_tracker_msgs |
System Dependencies
Name |
---|
eigen |
Dependant Packages
Name | Deps |
---|---|
neonavigation | |
neonavigation_launch | |
planner_cspace |