CHANGELOG

Changelog for package joint_trajectory_controller

3.28.0 (2024-11-13)

  • Update maintainers and add url tags (backport #1363) (#1365)

  • [jtc] Improve trajectory sampling efficiency (#1297) (#1358)

  • [JTC] Fix the JTC length_error exceptions in the tests (backport #1360) (#1362)

  • Contributors: mergify[bot]

3.27.0 (2024-11-02)

  • fixes for windows compilation (#1330) (#1333) Co-authored-by: SENAI-GilmarCorreia <gilmar.correia@sp.senai.br> (cherry picked from commit fa42b5ec97b0af5420060844b7027b8e8912c05d) Co-authored-by: Gilmar Correia <gilmar.jeronimo@sp.senai.br>

  • [JTC] Add Parameter to Toggle State Setting on Activation (#1231) (#1319) * [JTC] Add param to setting last command interface value as state on activation * [JTC] add a note about set_last_command_interface_value_as_state_on_activation to release_notes. Updated the parameters.yaml description to match the same wording. ——— Co-authored-by: Bence Magyar <bence.magyar.robotics@gmail.com> Co-authored-by: Christoph Fröhlich <christophfroehlich@users.noreply.github.com> (cherry picked from commit f96d2fc0fbf94537f769cffcf844858f7a085671) Co-authored-by: Kenta Kato <kenta.kato.4321@gmail.com>

  • Contributors: mergify[bot]

3.26.3 (2024-09-11)

3.26.2 (2024-08-22)

3.26.1 (2024-08-14)

  • Fix admittance controller interface read/write logic (backport #1232) (#1235)

  • Contributors: mergify[bot]

3.26.0 (2024-07-24)

  • Fix WaitSet issue in tests (backport #1206) (#1212)

  • [JTC] Make goal_time_tolerance overwrite default value only if explicitly set (backport #1192 + #1209) (#1207)

  • [JTC] Process tolerances sent with action goal (backport #716) (#1190)

  • Contributors: mergify[bot]

3.25.0 (2024-07-09)

  • JTC trajectory end time validation fix (#1090) (#1141)

  • Contributors: mergify[bot]

3.24.0 (2024-05-14)

3.23.0 (2024-04-30)

  • [JTC] Remove unused test code (#1095) (#1097)

  • Remove action_msg dependency (#1077) (#1081)

  • Deprecate start with holding (#1076)

  • [JTC] Convert lambda to class functions (backport #945) (#1015)

  • [JTC] Continue with last trajectory-point on success (#842) (#877)

  • Bump version of pre-commit hooks (#1073) (#1075)

  • [JTC] Angle wraparound for first segment of trajectory (#796) (#1034)

  • Contributors: Christoph Fröhlich, mergify[bot]

3.22.0 (2024-02-12)

  • Fix usage of M_PI on Windows (#1036) (#1038)

  • Add test_depend on hardware_interface_testing (backport #1018) (#1020)

  • Add tests for interface_configuration_type consistently (backport #899) (#1007)

  • Let sphinx add parameter description with nested structures to documentation (#652) (#1006)

  • [JTC] Fill action error_strings (#887) (#1010)

  • [JTC] Invalidate empty trajectory messages (#902) (#1001)

  • Revert “[JTC] Remove read_only from ‘joints’, ‘state_interfaces’ and ‘command_interfaces’ parameters (#967)” (#978) (#987)

  • Contributors: mergify[bot]

3.21.0 (2024-01-20)

  • [Docs] Update deprecated topic name (#964) (#965)

  • [JTC] Cancel goal in on_deactivate (#962) (#971)

  • Contributors: mergify[bot]

3.20.2 (2024-01-11)

  • [JTC] Remove read_only from ‘joints’, ‘state_interfaces’ and ‘command_interfaces’ parameters (#967) (#969)

  • Contributors: mergify[bot]

3.20.1 (2024-01-08)

3.20.0 (2024-01-03)

  • [JTC] Cleanup includes (#943) (#960)

  • Add rqt_JTC to docs (#950) (#953)

  • [JTC] Add console output for tolerance checks (#932) (#939)

  • Contributors: mergify[bot]

3.19.2 (2023-12-12)

  • Cleanup package.xml und clarify tests of JTC. (#889) (#925)

  • Contributors: mergify[bot]

3.19.1 (2023-12-05)

  • Fix floating point comparison in JTC (#879) (#880)

  • Contributors: mergify[bot]

3.19.0 (2023-12-01)

  • [JTC] Activate checks for parameter validation (backport #857) (#873)

  • [JTC] Improve update methods for tests (backport #858)

  • [JTC] Fix dynamic reconfigure of tolerances (backport #849)

  • [JTC] Fix tests when state offset is used (backport #797)

  • [JTC] Set allow_nonzero_velocity_at_trajectory_end default false and rename class variables (backport #834) (#843)

  • [JTC] Remove unused home pose (#845) (#852)

  • Contributors: Christoph Fröhlich, Dr Denis, Bence Magyar

3.18.0 (2023-11-21)

  • [JTC] Activate update of dynamic parameters (#761) (#838)

  • Contributors: mergify[bot]

3.17.0 (2023-10-31)

  • Cleanup comments and unnecessary checks (#803)

  • Update requirements of state interfaces (#798)

  • [JTC] Add tests for acceleration command interface (#752)

  • Contributors: Christoph Fröhlich

3.16.0 (2023-09-20)

  • [Docs] Improve interface description of JTC (#770)

  • [JTC] Add time-out for trajectory interfaces (#609)

  • [JTC] Rename parameter: normalize_error to angle_wraparound (#772)

  • [JTC] Fix hold position mode with goal_time>0 (#758)

  • [JTC] Add note on goal_time=0 in docs (#773)

  • Contributors: Christoph Fröhlich

3.15.0 (2023-09-11)

  • [JTC] Make most parameters read-only (#771)

  • Contributors: Christoph Fröhlich

3.14.0 (2023-08-16)

  • [JTC] Tolerance tests + Hold on time violation (#613) * Add new test to ensure that controller goes into position holding when tolerances are violated * Hold position if goal_time is exceeded with topic interface * Fix hold on time-violation

  • [JTC] Fix typos, implicit cast, const member functions (#748)

  • Remove wrong description (#742)

  • [JTC] Explicitly set hold position (#558)

  • Contributors: Christoph Fröhlich

3.13.0 (2023-08-04)

  • Small improvement in remapping (#393)

  • [JTC] Update trajectory documentation (#714)

  • [JTC] Reject messages with effort fields (#699) (#719)

  • [Doc] Fix links (#715)

  • Contributors: Andy Zelenak, Bence Magyar, Christoph Fröhlich

3.12.0 (2023-07-18)

  • Remove reactivation test from ROS 1

  • Don’t test update after cleanup

  • Fix namespace for parameter traits(#703)

  • Fixed update period computation in test (#693)

  • [JTC] Reject trajectories with nonzero terminal velocity (#567)

  • Compute velocity errors when using an effort command interface (#679)

  • Add test for velocity error with effort cmd interface (#690)

  • Revert “[JTC] Command final waypoint identically when traj_point_active_ptr_ is nullptr (#682)”

  • [JTC] Fix time sources and wrong checks in tests (#686)

  • Increase action tests timeout (#680)

  • [JTC] Extend tests (#612)

  • [JTC] Command final waypoint identically when traj_point_active_ptr_ is nullptr (#682)

  • Contributors: Christoph Fröhlich, Ethan Gordon, Lars Tingelstad, gwalck, Bence Magyar

3.11.0 (2023-06-24)

  • jtc: fix minor typo in traj validation error msg (#674)

  • Added -Wconversion flag and fix warnings (#667)

  • Contributors: G.A. vd. Hoorn, gwalck

3.10.1 (2023-06-06)

3.10.0 (2023-06-04)

  • enable ReflowComments to also use ColumnLimit on comments (#625)

  • Contributors: Sai Kishor Kothakota

3.9.0 (2023-05-28)

  • Use branch name substitution for all links (#618)

  • [JTC] Fix deprecated header (#610)

  • Fix github links on control.ros.org (#604)

  • Contributors: Christoph Fröhlich

3.8.0 (2023-05-14)

  • [JTC] Import docs from wiki.ros.org (#566)

  • Contributors: Christoph Fröhlich

3.7.0 (2023-05-02)

  • Fix JTC from immediately returning success (#565)

  • Contributors: Marq Rasmussen

3.6.0 (2023-04-29)

  • Renovate load controller tests (#569)

  • Fix docs format (#589)

  • [JTC] Implement new ~/controller_state message (#557)

  • Contributors: Bence Magyar, Christoph Fröhlich

3.5.0 (2023-04-14)

  • [Parameters] Use gt_eq instead of deprecated lower_bounds in validators (#561)

  • [JTC] Disable use of closed-loop PID adapter if controller is used in open-loop mode. (#551)

  • Contributors: Dr. Denis

3.4.0 (2023-04-02)

  • Update JTC documentation (#541)

  • Contributors: Christoph Fröhlich

3.3.0 (2023-03-07)

  • Add comments about auto-generated header files (#539)

  • 🕰️ remove state publish rate from JTC. (#520)

  • Contributors: AndyZe, Dr. Denis

3.2.0 (2023-02-10)

  • fix JTC segfault (#518)

  • fix interpolation logic (#516)

  • Fix overriding of install (#510)

  • Add JTC normalize_error parameter to doc (#511)

  • Fix JTC segfault on unload (#515)

  • Don’t set interpolation_method_ twice (#517)

  • Remove compile warnings. (#519)

  • Contributors: Andy Zelenak, Christoph Fröhlich, Dr. Denis, Michael Wiznitzer, Márk Szitanics, Solomon Wiznitzer, Tyler Weaver, Chris Thrasher

3.1.0 (2023-01-26)

  • ported the joint_trajectory_controller query_state service to ROS2 (#481)

  • [JTC] Configurable joint positon error normalization behavior (#491)

  • Contributors: Christoph Fröhlich, Sai Kishor Kothakota, Bence Magyar

3.0.0 (2023-01-19)

  • [JTC] Add pid gain structure to documentation (#485)

  • [JTC] Activate test for only velocity controller (#487)

  • [JTC] Allow ff_velocity_scale=0 without deprecated warning (#490)

  • Add backward_ros to all controllers (#489)

  • Fix markup in userdoc.rst (#480)

  • [JTC] Remove deprecation from parameters validation file. (#476)

  • Contributors: Bence Magyar, Christoph Fröhlich, Denis Štogl

2.15.0 (2022-12-06)

2.14.0 (2022-11-18)

  • Fix parameter library export (#448)

  • Contributors: Tyler Weaver

2.13.0 (2022-10-05)

  • Generate Parameter Library for Joint Trajectory Controller (#384)

  • Fix rates in JTC userdoc.rst (#433)

  • Fix for high CPU usage by JTC in gzserver (#428) * Change type cast wall timer period from second to nanoseconds. create_wall_timer() expects delay in nanoseconds (duration object) however the type cast to seconds will result in 0 (if duration is less than 1s) and thus causing timer to be fired non stop resulting in very high CPU usage. * Reset smartpointer so that create_wall_timer() call can destroy previous trajectory timer. node->create_wall_timer() first removes timers associated with expired smartpointers before servicing current request. The JTC timer pointer gets overwrite only after the create_wall_timer() returns and thus not able to remove previous trajectory timer resulting in upto two timers running for JTC during trajectory execution. Althougth the previous timer does nothing but still get fired.

  • Contributors: Arshad Mehmood, Borong Yuan, Tyler Weaver, Andy Zelenak, Bence Magyar, Denis Štogl

2.12.0 (2022-09-01)

  • Use a “steady clock” when measuring time differences (#427)

  • [JTC] Add additional parameter to enable configuration of interfaces for following controllers in a chain. (#380)

  • test: :white_check_mark: fix and add back joint_trajectory_controller state_topic_consistency (#415)

  • Reinstate JTC tests (#391)

  • [JTC] Hold position if tolerance is violated even during non-active goal (#368)

  • Small fixes for JTC. (#390) variables in JTC to not clutter other PR with them. fixes of updating parameters on renewed configuration of JTC that were missed

  • Contributors: Andy Zelenak, Bence Magyar, Denis Štogl, Jaron Lundwall, Michael Wiznitzer

2.11.0 (2022-08-04)

2.10.0 (2022-08-01)

  • Make JTC callbacks methods with clear names (#397) #abi-breaking

  • Use system time in all tests to avoid error with different time sources. (#334)

  • Contributors: Bence Magyar, Denis Štogl

2.9.0 (2022-07-14)

  • Add option to skip interpolation in the joint trajectory controller (#374) * Introduce InterpolationMethods structure * Use parameters to define interpolation use in JTC

  • Contributors: Andy Zelenak

2.8.0 (2022-07-09)

  • Preallocate JTC variables to avoid resizing in realtime loops (#340)

  • Contributors: Andy Zelenak

2.7.0 (2022-07-03)

  • Properly retrieve parameters in the Joint Trajectory Controller (#365)

  • Rename the “abort” variable in the joint traj controller (#367)

  • account for edge case in JTC (#350)

  • Contributors: Andy Zelenak, Michael Wiznitzer

2.6.0 (2022-06-18)

  • Disable failing workflows (#363)

  • Fixed lof message in joint_trayectory_controller (#366)

  • CMakeLists cleanup (#362)

  • Fix exception about parameter already been declared & Change default c++ version to 17 (#360) * Default C++ version to 17 * Replace explicit use of declare_paremeter with auto_declare

  • Member variable renaming in the Joint Traj Controller (#361)

  • Contributors: Alejandro Hernández Cordero, Andy Zelenak, Jafar Abdi

2.5.0 (2022-05-13)

  • check for nans in command interface (#346)

  • Contributors: Michael Wiznitzer

2.4.0 (2022-04-29)

  • Fix a gtest deprecation warning (#341)

  • Delete unused variable in joint_traj_controller (#339)

  • updated to use node getter functions (#329)

  • Fix JTC state tolerance and goal_time tolerance check bug (#316) * fix state tolerance check bug * hold position when canceling or aborting. update state tolerance test * add goal tolerance fail test * better state tolerance test * use predefined constants * fix goal_time logic and tests * add comments

  • Contributors: Andy Zelenak, Jack Center, Michael Wiznitzer, Bence Magyar, Denis Štogl

2.3.0 (2022-04-21)

  • [JTC] Allow integration of states in goal trajectories (#190) * Added position and velocity deduction to trajectory. * Added support for deduction of states from their derivatives.

  • Use CallbackReturn from controller_interface namespace (#333)

  • [JTC] Implement effort-only command interface (#225) * Fix trajectory tolerance parameters * Implement effort command interface for JTC * Use auto_declare for pid params * Set effort to 0 on deactivate

  • [JTC] Variable renaming for clearer API (#323)

  • Remove unused include to fix JTC test (#319)

  • Contributors: Akash, Andy Zelenak, Bence Magyar, Denis Štogl, Jafar Abdi, Victor Lopez

2.2.0 (2022-03-25)

  • Use lifecycle node as base for controllers (#244)

  • JointTrajectoryController: added missing control_toolbox dependencies (#315)

  • Use time argument on update function instead of node time (#296)

  • Export dependency (#310)

  • Contributors: DasRoteSkelett, Erick G. Islas-Osuna, Jafar Abdi, Denis Štogl, Vatan Aksoy Tezer, Bence Magyar

2.1.0 (2022-02-23)

  • INSTANTIATE_TEST_CASE_P -> INSTANTIATE_TEST_SUITE_P (#293)

  • Contributors: Bence Magyar

2.0.1 (2022-02-01)

  • Fix missing control_toolbox dependency (#291)

  • Contributors: Denis Štogl

2.0.0 (2022-01-28)

  • [JointTrajectoryController] Add velocity-only command option for JTC with closed loop controller (#239) * Add velocity pid support. * Remove incorrect init test for only velocity command interface. * Add clarification comments for pid aux variables. Adapt update loop. * Change dt for pid to appropriate measure. * Improve partial commands for velocity-only mode. * Extend tests to use velocity-only mode. * Increase timeout for velocity-only mode parametrized tests. * add is_same_sign for better refactor * refactor boolean logic * set velocity to 0.0 on deactivate

  • Contributors: Lovro Ivanov, Bence Magyar

1.3.0 (2022-01-11)

1.2.0 (2021-12-29)

1.1.0 (2021-10-25)

  • Move interface sorting into ControllerInterface (#259)

  • Revise for-loop style (#254)

  • Contributors: bailaC

1.0.0 (2021-09-29)

  • Remove compile warnings. (#245)

  • Add time and period to update function (#241)

  • Quickfix 🛠: Correct confusing variable name (#240)

  • Unify style of controllers. (#236)

  • Change test to work with Foxy and posterior action API (#237)

  • ros2_controllers code changes to support ros2_controls issue #489 (#233)

  • Removing Boost from controllers. (#235)

  • refactor get_current_state to get_state (#232)

  • Contributors: Bence Magyar, Denis Štogl, Márk Szitanics, Tyler Weaver, bailaC

0.5.0 (2021-08-30)

  • Add auto declaration of parameters. (#224)

  • Bring precommit config up to speed with ros2_control (#227)

  • Add initial pre-commit setup. (#220)

  • Enable JTC for hardware having offset from state measurements (#189) * Avoid “jumps” with states that have tracking error. All test are passing but separatelly. Is there some kind of timeout? * Remove allow_integration_flag * Add reading from command interfaces when restarting controller

  • Reduce docs warnings and correct adding guidelines (#219)

  • Contributors: Bence Magyar, Denis Štogl, Lovro Ivanov

0.4.1 (2021-07-08)

0.4.0 (2021-06-28)

  • Force torque sensor broadcaster (#152) * Stabilize joint_trajectory_controller tests * Add rclcpp::shutdown(); to all standalone test functions

  • Fixes for Windows (#205) * Export protected joint trajectory controller functions

  • Fix deprecation warnings on Rolling, remove rcutils dependency (#204)

  • Fix parameter initialisation for galactic (#199) * Fix parameter initialisation for galactic * Fix forward_command_controller the same way * Fix other compiler warnings * Missing space

  • Fix rolling build (#200) * Fix rolling build * Stick to printf style * Add back :: around interface type Co-authored-by: Bence Magyar <bence.magyar.robotics@gmail.com>

  • Contributors: Akash, Bence Magyar, Denis Štogl, Tim Clephas, Vatan Aksoy Tezer

0.3.1 (2021-05-23)

  • Reset external trajectory message upon activation (#185) * Reset external trajectory message to prevent preserving the old goal on systems with hardware offsets * Fix has_trajectory_msg() function: two wrongs were making a right so functionally things were fine

  • Contributors: Nathan Brooks, Matt Reynolds

0.3.0 (2021-05-21)

  • joint_trajectory_controller publishes state in node namespace (#187)

  • [JointTrajectoryController] Enable position, velocity and acceleration interfaces (#140) * joint_trajectory_controller should not go into FINALIZED state when fails to configure, remain in UNCONFIGURED

  • Contributors: Bence Magyar, Denis Štogl

0.2.1 (2021-05-03)

  • Migrate from deprecated controller_interface::return_type::SUCCESS -> OK (#167)

  • [JTC] Add link to TODOs to provide better trackability (#169)

  • Fix JTC segfault (#164) * Use a copy of the rt_active_goal to avoid segfault * Use RealtimeBuffer for thread-safety

  • Add basic user docs pages for each package (#156)

  • Contributors: Bence Magyar, Matt Reynolds

0.2.0 (2021-02-06)

  • Use ros2 contol test assets (#138) * Add description to test trajecotry_controller * Use ros2_control_test_assets package * Delete obsolete components plugin export

  • Contributors: Denis Štogl

0.1.2 (2021-01-07)

0.1.1 (2021-01-06)

0.1.0 (2020-12-23)

  • Remove lifecycle node controllers (#124)

  • Use resource manager on joint trajectory controller (#112)

  • Use new joint handles in all controllers (#90)

  • More jtc tests (#75)

  • remove unused variables (#86)

  • Port over interpolation formulae, abort if goals tolerance violated (#62)

  • Partial joints (#68)

  • Use clamp function from rcppmath (#79)

  • Reorder incoming out of order joint_names in trajectory messages (#53)

  • Action server for JointTrajectoryController (#26)

  • Add state_publish_rate to JointTrajectoryController (#25)

  • Contributors: Alejandro Hernández Cordero, Anas Abou Allaban, Bence Magyar, Denis Štogl, Edwin Fan, Jordan Palacios, Karsten Knese, Victor Lopez