From 964453b134328aeb29ddbb1d55d6687920402b8a Mon Sep 17 00:00:00 2001 From: bmagyar Date: Wed, 11 Dec 2024 05:42:30 +0000 Subject: [PATCH] deploy: 59f9e9504ba39e10a4a65c31239fc5137db93c01 --- foxy/.buildinfo | 2 +- .../acknowledgements/acknowledgements.doctree | Bin 7434 -> 7434 bytes .../doc/contributing/contributing.doctree | Bin 24361 -> 24361 bytes .../differences_to_ros1.doctree | Bin 34748 -> 34748 bytes .../getting_started/getting_started.doctree | Bin 50559 -> 50559 bytes foxy/.doctrees/doc/project_ideas.doctree | Bin 38260 -> 38260 bytes .../.doctrees/doc/resources/resources.doctree | Bin 67145 -> 67145 bytes .../controller_manager/doc/userdoc.doctree | Bin 9211 -> 9211 bytes .../doc/ros2_control/doc/index.doctree | Bin 5962 -> 5962 bytes .../doc/fake_components_userdoc.doctree | Bin 13533 -> 13533 bytes .../ros2controlcli/doc/userdoc.doctree | Bin 24766 -> 24766 bytes .../doc/ros2_control_demos/doc/index.doctree | Bin 12763 -> 12763 bytes .../diff_drive_controller/doc/userdoc.doctree | Bin 5687 -> 5687 bytes .../doc/controllers_index.doctree | Bin 12858 -> 12858 bytes .../doc/writing_new_controller.doctree | Bin 59925 -> 59925 bytes .../effort_controllers/doc/userdoc.doctree | Bin 4124 -> 4124 bytes .../doc/userdoc.doctree | Bin 8657 -> 8657 bytes .../doc/userdoc.doctree | Bin 4196 -> 4196 bytes .../doc/userdoc.doctree | Bin 5895 -> 5895 bytes .../doc/userdoc.doctree | Bin 7851 -> 7851 bytes .../doc/userdoc.doctree | Bin 5225 -> 5225 bytes .../doc/userdoc.doctree | Bin 33758 -> 33758 bytes .../position_controllers/doc/userdoc.doctree | Bin 4154 -> 4154 bytes .../tricycle_controller/doc/userdoc.doctree | Bin 5149 -> 5149 bytes .../velocity_controllers/doc/userdoc.doctree | Bin 4154 -> 4154 bytes foxy/.doctrees/environment.pickle | Bin 664630 -> 664630 bytes foxy/.doctrees/index.doctree | Bin 28593 -> 28593 bytes foxy/index.html | 2 +- foxy/searchindex.js | 2 +- galactic/.buildinfo | 2 +- .../acknowledgements/acknowledgements.doctree | Bin 7434 -> 7434 bytes .../doc/contributing/contributing.doctree | Bin 24361 -> 24361 bytes .../differences_to_ros1.doctree | Bin 34748 -> 34748 bytes .../getting_started/getting_started.doctree | Bin 50559 -> 50559 bytes galactic/.doctrees/doc/project_ideas.doctree | Bin 38260 -> 38260 bytes .../.doctrees/doc/resources/resources.doctree | Bin 67145 -> 67145 bytes .../controller_manager/doc/userdoc.doctree | Bin 11589 -> 11589 bytes .../doc/ros2_control/doc/index.doctree | Bin 6066 -> 6066 bytes .../doc/fake_components_userdoc.doctree | Bin 13533 -> 13533 bytes .../doc/hardware_components_userdoc.doctree | Bin 20103 -> 20103 bytes .../ros2controlcli/doc/userdoc.doctree | Bin 23385 -> 23385 bytes .../doc/ros2_control_demos/doc/index.doctree | Bin 12635 -> 12635 bytes .../diff_drive_controller/doc/userdoc.doctree | Bin 5687 -> 5687 bytes .../doc/controllers_index.doctree | Bin 13250 -> 13250 bytes .../doc/writing_new_controller.doctree | Bin 59945 -> 59945 bytes .../effort_controllers/doc/userdoc.doctree | Bin 4124 -> 4124 bytes .../doc/userdoc.doctree | Bin 8657 -> 8657 bytes .../doc/userdoc.doctree | Bin 4196 -> 4196 bytes .../doc/userdoc.doctree | Bin 5895 -> 5895 bytes .../doc/userdoc.doctree | Bin 18436 -> 18436 bytes .../doc/userdoc.doctree | Bin 33758 -> 33758 bytes .../position_controllers/doc/userdoc.doctree | Bin 4154 -> 4154 bytes .../velocity_controllers/doc/userdoc.doctree | Bin 4154 -> 4154 bytes galactic/.doctrees/environment.pickle | Bin 692990 -> 692990 bytes galactic/.doctrees/index.doctree | Bin 28609 -> 28609 bytes galactic/index.html | 2 +- galactic/searchindex.js | 2 +- humble/.buildinfo | 2 +- .../acknowledgements/acknowledgements.doctree | Bin 1325794 -> 1342094 bytes .../.doctrees/doc/api_list/api_list.doctree | Bin 37383 -> 37383 bytes .../doc/contributing/contributing.doctree | Bin 25325 -> 25325 bytes .../doc/gazebo_ros2_control/doc/index.doctree | Bin 61188 -> 61188 bytes .../getting_started/getting_started.doctree | Bin 55057 -> 55057 bytes .../doc/gz_ros2_control/doc/index.doctree | Bin 45062 -> 45062 bytes .../doc/migration/differences_to_ros1.doctree | Bin 34666 -> 34666 bytes .../.doctrees/doc/migration/migration.doctree | Bin 5268 -> 5268 bytes humble/.doctrees/doc/project_ideas.doctree | Bin 29987 -> 29987 bytes .../doc/release_notes/release_notes.doctree | Bin 5020 -> 5020 bytes .../.doctrees/doc/resources/resources.doctree | Bin 88267 -> 88267 bytes .../doc/controller_chaining.doctree | Bin 25468 -> 25468 bytes .../controller_manager/doc/userdoc.doctree | Bin 46853 -> 46853 bytes .../doc/ros2_control/doc/debugging.doctree | Bin 20585 -> 20585 bytes .../doc/ros2_control/doc/index.doctree | Bin 6089 -> 6089 bytes .../doc/ros2_control/doc/migration.doctree | Bin 3256 -> 3256 bytes .../ros2_control/doc/release_notes.doctree | Bin 13475 -> 13475 bytes .../different_update_rates_userdoc.doctree | Bin 29658 -> 29658 bytes .../doc/hardware_components_userdoc.doctree | Bin 8564 -> 8564 bytes .../hardware_interface_types_userdoc.doctree | Bin 27560 -> 27560 bytes .../doc/joints_userdoc.doctree | Bin 34588 -> 34588 bytes .../doc/mock_components_userdoc.doctree | Bin 24317 -> 24317 bytes .../writing_new_hardware_component.doctree | Bin 65671 -> 65671 bytes .../ros2controlcli/doc/userdoc.doctree | Bin 31356 -> 31356 bytes .../doc/ros2_control_demos/doc/index.doctree | Bin 52045 -> 52045 bytes .../doc/run_from_docker.doctree | Bin 3337 -> 3337 bytes .../example_1/doc/userdoc.doctree | Bin 82177 -> 82177 bytes .../example_10/doc/userdoc.doctree | Bin 37201 -> 37201 bytes .../example_11/doc/userdoc.doctree | Bin 34581 -> 34581 bytes .../example_12/doc/userdoc.doctree | Bin 49142 -> 49142 bytes .../example_13/doc/userdoc.doctree | Bin 96331 -> 96331 bytes .../example_14/doc/userdoc.doctree | Bin 38802 -> 38802 bytes .../example_15/doc/userdoc.doctree | Bin 48009 -> 48009 bytes .../example_2/doc/userdoc.doctree | Bin 38842 -> 38842 bytes .../example_3/doc/userdoc.doctree | Bin 51669 -> 51669 bytes .../example_4/doc/userdoc.doctree | Bin 38036 -> 38036 bytes .../example_5/doc/userdoc.doctree | Bin 41260 -> 41260 bytes .../example_6/doc/userdoc.doctree | Bin 33378 -> 33378 bytes .../example_7/doc/userdoc.doctree | Bin 106718 -> 106718 bytes .../example_8/doc/userdoc.doctree | Bin 32245 -> 32245 bytes .../example_9/doc/userdoc.doctree | Bin 36642 -> 36642 bytes .../doc/userdoc.doctree | Bin 14315 -> 14315 bytes .../admittance_controller/doc/userdoc.doctree | Bin 49263 -> 49263 bytes .../doc/userdoc.doctree | Bin 11606 -> 11606 bytes .../diff_drive_controller/doc/userdoc.doctree | Bin 57038 -> 57038 bytes .../doc/controllers_index.doctree | Bin 12863 -> 12863 bytes .../ros2_controllers/doc/migration.doctree | Bin 4979 -> 4979 bytes .../doc/mobile_robot_kinematics.doctree | Bin 49618 -> 49618 bytes .../doc/release_notes.doctree | Bin 21998 -> 21998 bytes .../doc/writing_new_controller.doctree | Bin 60202 -> 60202 bytes .../effort_controllers/doc/userdoc.doctree | Bin 8222 -> 8222 bytes .../doc/userdoc.doctree | Bin 18515 -> 18515 bytes .../doc/userdoc.doctree | Bin 12877 -> 12877 bytes .../gpio_controllers/doc/userdoc.doctree | Bin 15670 -> 15670 bytes .../gripper_controllers/doc/userdoc.doctree | Bin 13842 -> 13842 bytes .../doc/userdoc.doctree | Bin 16591 -> 16591 bytes .../doc/userdoc.doctree | Bin 24581 -> 24581 bytes .../doc/parameters.doctree | Bin 45020 -> 45020 bytes .../doc/trajectory.doctree | Bin 38596 -> 38596 bytes .../doc/userdoc.doctree | Bin 46164 -> 46164 bytes .../pid_controller/doc/userdoc.doctree | Bin 39019 -> 39019 bytes .../pose_broadcaster/doc/userdoc.doctree | Bin 14933 -> 14933 bytes .../position_controllers/doc/userdoc.doctree | Bin 8292 -> 8292 bytes .../doc/userdoc.doctree | Bin 14103 -> 14103 bytes .../doc/userdoc.doctree | Bin 3871 -> 3871 bytes .../doc/userdoc.doctree | Bin 49037 -> 49037 bytes .../tricycle_controller/doc/userdoc.doctree | Bin 7205 -> 7205 bytes .../doc/userdoc.doctree | Bin 12709 -> 12709 bytes .../velocity_controllers/doc/userdoc.doctree | Bin 8292 -> 8292 bytes .../doc/simulators/simulators.doctree | Bin 7042 -> 7042 bytes .../supported_robots/supported_robots.doctree | Bin 24838 -> 24838 bytes humble/.doctrees/environment.pickle | Bin 4326498 -> 4342798 bytes humble/.doctrees/index.doctree | Bin 28428 -> 28428 bytes .../acknowledgements/acknowledgements.html | 676 +++++++++++------- .../doc/api/admittance__rule_8hpp_source.html | 219 +++--- .../admittance__rule__impl_8hpp_source.html | 563 +++++++-------- .../force__torque__sensor_8hpp_source.html | 4 +- ...ing__controllers__library_8hpp_source.html | 12 +- .../api/steering__odometry_8hpp_source.html | 4 +- humble/doc/api/tolerances_8hpp_source.html | 4 +- humble/doc/api/trajectory_8hpp_source.html | 4 +- humble/index.html | 2 +- humble/searchindex.js | 2 +- iron/.buildinfo | 2 +- .../acknowledgements/acknowledgements.doctree | Bin 1325794 -> 1342094 bytes iron/.doctrees/doc/api_list/api_list.doctree | Bin 37275 -> 37275 bytes .../doc/contributing/contributing.doctree | Bin 25325 -> 25325 bytes .../doc/gazebo_ros2_control/doc/index.doctree | Bin 61188 -> 61188 bytes .../getting_started/getting_started.doctree | Bin 56005 -> 56005 bytes .../doc/gz_ros2_control/doc/index.doctree | Bin 45087 -> 45087 bytes .../doc/migration/differences_to_ros1.doctree | Bin 34666 -> 34666 bytes .../.doctrees/doc/migration/migration.doctree | Bin 5264 -> 5264 bytes iron/.doctrees/doc/project_ideas.doctree | Bin 29987 -> 29987 bytes .../doc/release_notes/release_notes.doctree | Bin 5016 -> 5016 bytes .../.doctrees/doc/resources/resources.doctree | Bin 88267 -> 88267 bytes .../doc/controller_chaining.doctree | Bin 25454 -> 25454 bytes .../controller_manager/doc/userdoc.doctree | Bin 37683 -> 37683 bytes .../doc/ros2_control/doc/debugging.doctree | Bin 20585 -> 20585 bytes .../doc/ros2_control/doc/index.doctree | Bin 6089 -> 6089 bytes .../doc/ros2_control/doc/migration.doctree | Bin 3232 -> 3232 bytes .../ros2_control/doc/release_notes.doctree | Bin 10939 -> 10939 bytes .../different_update_rates_userdoc.doctree | Bin 29642 -> 29642 bytes .../doc/hardware_components_userdoc.doctree | Bin 8564 -> 8564 bytes .../hardware_interface_types_userdoc.doctree | Bin 27560 -> 27560 bytes .../doc/joints_userdoc.doctree | Bin 34576 -> 34576 bytes .../doc/mock_components_userdoc.doctree | Bin 24317 -> 24317 bytes .../writing_new_hardware_component.doctree | Bin 65637 -> 65637 bytes .../ros2controlcli/doc/userdoc.doctree | Bin 31078 -> 31078 bytes .../doc/ros2_control_demos/doc/index.doctree | Bin 52030 -> 52030 bytes .../doc/run_from_docker.doctree | Bin 3337 -> 3337 bytes .../example_1/doc/userdoc.doctree | Bin 82059 -> 82059 bytes .../example_10/doc/userdoc.doctree | Bin 37121 -> 37121 bytes .../example_11/doc/userdoc.doctree | Bin 34515 -> 34515 bytes .../example_12/doc/userdoc.doctree | Bin 49064 -> 49064 bytes .../example_13/doc/userdoc.doctree | Bin 96241 -> 96241 bytes .../example_14/doc/userdoc.doctree | Bin 38727 -> 38727 bytes .../example_15/doc/userdoc.doctree | Bin 47819 -> 47819 bytes .../example_2/doc/userdoc.doctree | Bin 38768 -> 38768 bytes .../example_3/doc/userdoc.doctree | Bin 51605 -> 51605 bytes .../example_4/doc/userdoc.doctree | Bin 37966 -> 37966 bytes .../example_5/doc/userdoc.doctree | Bin 41172 -> 41172 bytes .../example_6/doc/userdoc.doctree | Bin 33312 -> 33312 bytes .../example_7/doc/userdoc.doctree | Bin 106678 -> 106678 bytes .../example_8/doc/userdoc.doctree | Bin 32179 -> 32179 bytes .../example_9/doc/userdoc.doctree | Bin 36558 -> 36558 bytes .../doc/userdoc.doctree | Bin 14315 -> 14315 bytes .../admittance_controller/doc/userdoc.doctree | Bin 49223 -> 49223 bytes .../doc/userdoc.doctree | Bin 11606 -> 11606 bytes .../diff_drive_controller/doc/userdoc.doctree | Bin 54915 -> 54915 bytes .../doc/controllers_index.doctree | Bin 15876 -> 15876 bytes .../ros2_controllers/doc/migration.doctree | Bin 4955 -> 4955 bytes .../doc/mobile_robot_kinematics.doctree | Bin 49618 -> 49618 bytes .../doc/release_notes.doctree | Bin 23001 -> 23001 bytes .../doc/writing_new_controller.doctree | Bin 60194 -> 60194 bytes .../effort_controllers/doc/userdoc.doctree | Bin 8222 -> 8222 bytes .../doc/userdoc.doctree | Bin 18499 -> 18499 bytes .../doc/userdoc.doctree | Bin 12877 -> 12877 bytes .../gripper_controllers/doc/userdoc.doctree | Bin 13834 -> 13834 bytes .../doc/userdoc.doctree | Bin 16575 -> 16575 bytes .../doc/userdoc.doctree | Bin 24573 -> 24573 bytes .../doc/parameters.doctree | Bin 44744 -> 44744 bytes .../doc/trajectory.doctree | Bin 38596 -> 38596 bytes .../doc/userdoc.doctree | Bin 46099 -> 46099 bytes .../pid_controller/doc/userdoc.doctree | Bin 39003 -> 39003 bytes .../pose_broadcaster/doc/userdoc.doctree | Bin 14917 -> 14917 bytes .../position_controllers/doc/userdoc.doctree | Bin 8292 -> 8292 bytes .../doc/userdoc.doctree | Bin 14780 -> 14780 bytes .../doc/userdoc.doctree | Bin 3871 -> 3871 bytes .../doc/userdoc.doctree | Bin 47713 -> 47713 bytes .../tricycle_controller/doc/userdoc.doctree | Bin 33385 -> 33385 bytes .../doc/userdoc.doctree | Bin 12709 -> 12709 bytes .../velocity_controllers/doc/userdoc.doctree | Bin 8292 -> 8292 bytes .../doc/simulators/simulators.doctree | Bin 7042 -> 7042 bytes .../supported_robots/supported_robots.doctree | Bin 24230 -> 24230 bytes iron/.doctrees/environment.pickle | Bin 4326501 -> 4342801 bytes iron/.doctrees/index.doctree | Bin 28384 -> 28384 bytes .../acknowledgements/acknowledgements.html | 676 +++++++++++------- iron/index.html | 2 +- iron/searchindex.js | 2 +- jazzy/.buildinfo | 2 +- .../acknowledgements/acknowledgements.doctree | Bin 1325794 -> 1342094 bytes jazzy/.doctrees/doc/api_list/api_list.doctree | Bin 38238 -> 38238 bytes .../doc/contributing/contributing.doctree | Bin 25325 -> 25325 bytes .../doc/gazebo_ros2_control/doc/index.doctree | Bin 60058 -> 60058 bytes .../getting_started/getting_started.doctree | Bin 56080 -> 56080 bytes .../doc/gz_ros2_control/doc/index.doctree | Bin 46244 -> 46244 bytes .../doc/migration/differences_to_ros1.doctree | Bin 34666 -> 34666 bytes .../.doctrees/doc/migration/migration.doctree | Bin 5266 -> 5266 bytes jazzy/.doctrees/doc/project_ideas.doctree | Bin 29987 -> 29987 bytes .../doc/release_notes/release_notes.doctree | Bin 5018 -> 5018 bytes .../.doctrees/doc/resources/resources.doctree | Bin 95416 -> 95416 bytes .../doc/resources/roscon2023_workshop.doctree | Bin 15191 -> 15191 bytes .../doc/controller_chaining.doctree | Bin 45057 -> 45057 bytes .../controller_manager/doc/userdoc.doctree | Bin 93225 -> 93225 bytes .../doc/ros2_control/doc/debugging.doctree | Bin 21099 -> 21099 bytes .../doc/ros2_control/doc/index.doctree | Bin 6089 -> 6089 bytes .../doc/ros2_control/doc/migration.doctree | Bin 53583 -> 53583 bytes .../ros2_control/doc/release_notes.doctree | Bin 90230 -> 90230 bytes .../different_update_rates_userdoc.doctree | Bin 14896 -> 14896 bytes .../doc/hardware_components_userdoc.doctree | Bin 8564 -> 8564 bytes .../hardware_interface_types_userdoc.doctree | Bin 44423 -> 44423 bytes .../doc/joints_userdoc.doctree | Bin 34579 -> 34579 bytes .../doc/mock_components_userdoc.doctree | Bin 23217 -> 23217 bytes .../writing_new_hardware_component.doctree | Bin 89751 -> 89751 bytes .../ros2controlcli/doc/userdoc.doctree | Bin 36261 -> 36261 bytes .../doc/ros2_control_demos/doc/index.doctree | Bin 52033 -> 52033 bytes .../doc/run_from_docker.doctree | Bin 3337 -> 3337 bytes .../example_1/doc/userdoc.doctree | Bin 81829 -> 81829 bytes .../example_10/doc/userdoc.doctree | Bin 37201 -> 37201 bytes .../example_11/doc/userdoc.doctree | Bin 34581 -> 34581 bytes .../example_12/doc/userdoc.doctree | Bin 49142 -> 49142 bytes .../example_13/doc/userdoc.doctree | Bin 96331 -> 96331 bytes .../example_14/doc/userdoc.doctree | Bin 38700 -> 38700 bytes .../example_15/doc/userdoc.doctree | Bin 47087 -> 47087 bytes .../example_2/doc/userdoc.doctree | Bin 38842 -> 38842 bytes .../example_3/doc/userdoc.doctree | Bin 51669 -> 51669 bytes .../example_4/doc/userdoc.doctree | Bin 38036 -> 38036 bytes .../example_5/doc/userdoc.doctree | Bin 41260 -> 41260 bytes .../example_6/doc/userdoc.doctree | Bin 33384 -> 33384 bytes .../example_7/doc/userdoc.doctree | Bin 102718 -> 102718 bytes .../example_8/doc/userdoc.doctree | Bin 32245 -> 32245 bytes .../example_9/doc/userdoc.doctree | Bin 31527 -> 31527 bytes .../doc/userdoc.doctree | Bin 14315 -> 14315 bytes .../admittance_controller/doc/userdoc.doctree | Bin 49157 -> 49157 bytes .../doc/userdoc.doctree | Bin 11606 -> 11606 bytes .../diff_drive_controller/doc/userdoc.doctree | Bin 52840 -> 52840 bytes .../doc/controllers_index.doctree | Bin 16175 -> 16175 bytes .../ros2_controllers/doc/migration.doctree | Bin 11788 -> 11788 bytes .../doc/mobile_robot_kinematics.doctree | Bin 49618 -> 49618 bytes .../doc/release_notes.doctree | Bin 32524 -> 32524 bytes .../doc/writing_new_controller.doctree | Bin 61031 -> 61031 bytes .../effort_controllers/doc/userdoc.doctree | Bin 8222 -> 8222 bytes .../doc/userdoc.doctree | Bin 22643 -> 22643 bytes .../doc/userdoc.doctree | Bin 12877 -> 12877 bytes .../gpio_controllers/doc/userdoc.doctree | Bin 16319 -> 16319 bytes .../gripper_controllers/doc/userdoc.doctree | Bin 13842 -> 13842 bytes .../doc/userdoc.doctree | Bin 16591 -> 16591 bytes .../doc/userdoc.doctree | Bin 26551 -> 26551 bytes .../doc/parameters.doctree | Bin 42050 -> 42050 bytes .../doc/trajectory.doctree | Bin 38596 -> 38596 bytes .../doc/userdoc.doctree | Bin 46107 -> 46107 bytes .../doc/userdoc.doctree | Bin 12965 -> 12965 bytes .../doc/userdoc.doctree | Bin 17553 -> 17553 bytes .../pid_controller/doc/userdoc.doctree | Bin 39282 -> 39282 bytes .../pose_broadcaster/doc/userdoc.doctree | Bin 14933 -> 14933 bytes .../position_controllers/doc/userdoc.doctree | Bin 8292 -> 8292 bytes .../doc/userdoc.doctree | Bin 14796 -> 14796 bytes .../doc/userdoc.doctree | Bin 3871 -> 3871 bytes .../doc/userdoc.doctree | Bin 46248 -> 46248 bytes .../tricycle_controller/doc/userdoc.doctree | Bin 32551 -> 32551 bytes .../doc/userdoc.doctree | Bin 12709 -> 12709 bytes .../velocity_controllers/doc/userdoc.doctree | Bin 8292 -> 8292 bytes .../.doctrees/doc/roscon2024_workshop.doctree | Bin 10753 -> 10753 bytes .../doc/simulators/simulators.doctree | Bin 7042 -> 7042 bytes .../supported_robots/supported_robots.doctree | Bin 24838 -> 24838 bytes jazzy/.doctrees/environment.pickle | Bin 4747115 -> 4763415 bytes jazzy/.doctrees/index.doctree | Bin 28455 -> 28455 bytes .../acknowledgements/acknowledgements.html | 676 +++++++++++------- jazzy/index.html | 2 +- jazzy/searchindex.js | 2 +- master/.buildinfo | 2 +- .../acknowledgements/acknowledgements.doctree | Bin 1325794 -> 1342094 bytes .../.doctrees/doc/api_list/api_list.doctree | Bin 38350 -> 38350 bytes .../doc/contributing/contributing.doctree | Bin 25325 -> 25325 bytes .../doc/gazebo_ros2_control/doc/index.doctree | Bin 60058 -> 60058 bytes .../getting_started/getting_started.doctree | Bin 52224 -> 52224 bytes .../doc/gz_ros2_control/doc/index.doctree | Bin 50710 -> 50710 bytes .../doc/migration/differences_to_ros1.doctree | Bin 34666 -> 34666 bytes .../.doctrees/doc/migration/migration.doctree | Bin 5270 -> 5270 bytes master/.doctrees/doc/project_ideas.doctree | Bin 29987 -> 29987 bytes .../doc/release_notes/release_notes.doctree | Bin 5022 -> 5022 bytes .../.doctrees/doc/resources/resources.doctree | Bin 95416 -> 95416 bytes .../doc/resources/roscon2023_workshop.doctree | Bin 15191 -> 15191 bytes .../doc/controller_chaining.doctree | Bin 45057 -> 45057 bytes .../controller_manager/doc/userdoc.doctree | Bin 93225 -> 93225 bytes .../doc/ros2_control/doc/debugging.doctree | Bin 21099 -> 21099 bytes .../doc/ros2_control/doc/index.doctree | Bin 6089 -> 6089 bytes .../doc/ros2_control/doc/migration.doctree | Bin 53593 -> 53593 bytes .../ros2_control/doc/release_notes.doctree | Bin 90230 -> 90230 bytes .../different_update_rates_userdoc.doctree | Bin 14896 -> 14896 bytes .../doc/hardware_components_userdoc.doctree | Bin 8564 -> 8564 bytes .../hardware_interface_types_userdoc.doctree | Bin 44423 -> 44423 bytes .../doc/joints_userdoc.doctree | Bin 34585 -> 34585 bytes .../doc/mock_components_userdoc.doctree | Bin 23217 -> 23217 bytes .../writing_new_hardware_component.doctree | Bin 89751 -> 89751 bytes .../ros2controlcli/doc/userdoc.doctree | Bin 36261 -> 36261 bytes .../doc/ros2_control_demos/doc/index.doctree | Bin 52047 -> 52047 bytes .../doc/run_from_docker.doctree | Bin 3337 -> 3337 bytes .../example_1/doc/userdoc.doctree | Bin 81829 -> 81829 bytes .../example_10/doc/userdoc.doctree | Bin 37201 -> 37201 bytes .../example_11/doc/userdoc.doctree | Bin 34581 -> 34581 bytes .../example_12/doc/userdoc.doctree | Bin 49142 -> 49142 bytes .../example_13/doc/userdoc.doctree | Bin 96331 -> 96331 bytes .../example_14/doc/userdoc.doctree | Bin 38700 -> 38700 bytes .../example_15/doc/userdoc.doctree | Bin 47087 -> 47087 bytes .../example_2/doc/userdoc.doctree | Bin 38842 -> 38842 bytes .../example_3/doc/userdoc.doctree | Bin 51669 -> 51669 bytes .../example_4/doc/userdoc.doctree | Bin 38036 -> 38036 bytes .../example_5/doc/userdoc.doctree | Bin 41260 -> 41260 bytes .../example_6/doc/userdoc.doctree | Bin 33384 -> 33384 bytes .../example_7/doc/userdoc.doctree | Bin 102724 -> 102724 bytes .../example_8/doc/userdoc.doctree | Bin 32245 -> 32245 bytes .../example_9/doc/userdoc.doctree | Bin 31527 -> 31527 bytes .../doc/userdoc.doctree | Bin 14315 -> 14315 bytes .../admittance_controller/doc/userdoc.doctree | Bin 49157 -> 49157 bytes .../doc/userdoc.doctree | Bin 11606 -> 11606 bytes .../diff_drive_controller/doc/userdoc.doctree | Bin 52840 -> 52840 bytes .../doc/controllers_index.doctree | Bin 16175 -> 16175 bytes .../ros2_controllers/doc/migration.doctree | Bin 11788 -> 11788 bytes .../doc/mobile_robot_kinematics.doctree | Bin 49618 -> 49618 bytes .../doc/release_notes.doctree | Bin 32524 -> 32524 bytes .../doc/writing_new_controller.doctree | Bin 61039 -> 61039 bytes .../effort_controllers/doc/userdoc.doctree | Bin 8222 -> 8222 bytes .../doc/userdoc.doctree | Bin 22643 -> 22643 bytes .../doc/userdoc.doctree | Bin 12877 -> 12877 bytes .../gpio_controllers/doc/userdoc.doctree | Bin 16319 -> 16319 bytes .../gripper_controllers/doc/userdoc.doctree | Bin 13842 -> 13842 bytes .../doc/userdoc.doctree | Bin 16591 -> 16591 bytes .../doc/userdoc.doctree | Bin 26551 -> 26551 bytes .../doc/parameters.doctree | Bin 42050 -> 42050 bytes .../doc/trajectory.doctree | Bin 38596 -> 38596 bytes .../doc/userdoc.doctree | Bin 46107 -> 46107 bytes .../doc/userdoc.doctree | Bin 12965 -> 12965 bytes .../doc/userdoc.doctree | Bin 17553 -> 17553 bytes .../pid_controller/doc/userdoc.doctree | Bin 39282 -> 39282 bytes .../pose_broadcaster/doc/userdoc.doctree | Bin 14933 -> 14933 bytes .../position_controllers/doc/userdoc.doctree | Bin 8292 -> 8292 bytes .../doc/userdoc.doctree | Bin 14796 -> 14796 bytes .../doc/userdoc.doctree | Bin 3871 -> 3871 bytes .../doc/userdoc.doctree | Bin 46260 -> 46260 bytes .../tricycle_controller/doc/userdoc.doctree | Bin 32551 -> 32551 bytes .../doc/userdoc.doctree | Bin 12709 -> 12709 bytes .../velocity_controllers/doc/userdoc.doctree | Bin 8292 -> 8292 bytes .../.doctrees/doc/roscon2024_workshop.doctree | Bin 12124 -> 12124 bytes .../doc/simulators/simulators.doctree | Bin 7042 -> 7042 bytes .../supported_robots/supported_robots.doctree | Bin 24838 -> 24838 bytes master/.doctrees/environment.pickle | Bin 4750394 -> 4766694 bytes master/.doctrees/index.doctree | Bin 28425 -> 28425 bytes .../acknowledgements/acknowledgements.html | 676 +++++++++++------- master/searchindex.js | 2 +- rolling/.buildinfo | 2 +- .../acknowledgements/acknowledgements.doctree | Bin 1325794 -> 1342094 bytes .../.doctrees/doc/api_list/api_list.doctree | Bin 38350 -> 38350 bytes .../doc/contributing/contributing.doctree | Bin 25325 -> 25325 bytes .../doc/gazebo_ros2_control/doc/index.doctree | Bin 60058 -> 60058 bytes .../getting_started/getting_started.doctree | Bin 52224 -> 52224 bytes .../doc/gz_ros2_control/doc/index.doctree | Bin 50710 -> 50710 bytes .../doc/migration/differences_to_ros1.doctree | Bin 34666 -> 34666 bytes .../.doctrees/doc/migration/migration.doctree | Bin 5270 -> 5270 bytes rolling/.doctrees/doc/project_ideas.doctree | Bin 29987 -> 29987 bytes .../doc/release_notes/release_notes.doctree | Bin 5022 -> 5022 bytes .../.doctrees/doc/resources/resources.doctree | Bin 95416 -> 95416 bytes .../doc/resources/roscon2023_workshop.doctree | Bin 15191 -> 15191 bytes .../doc/controller_chaining.doctree | Bin 45057 -> 45057 bytes .../controller_manager/doc/userdoc.doctree | Bin 93225 -> 93225 bytes .../doc/ros2_control/doc/debugging.doctree | Bin 21099 -> 21099 bytes .../doc/ros2_control/doc/index.doctree | Bin 6089 -> 6089 bytes .../doc/ros2_control/doc/migration.doctree | Bin 53593 -> 53593 bytes .../ros2_control/doc/release_notes.doctree | Bin 90230 -> 90230 bytes .../different_update_rates_userdoc.doctree | Bin 14896 -> 14896 bytes .../doc/hardware_components_userdoc.doctree | Bin 8564 -> 8564 bytes .../hardware_interface_types_userdoc.doctree | Bin 44423 -> 44423 bytes .../doc/joints_userdoc.doctree | Bin 34585 -> 34585 bytes .../doc/mock_components_userdoc.doctree | Bin 23217 -> 23217 bytes .../writing_new_hardware_component.doctree | Bin 89751 -> 89751 bytes .../ros2controlcli/doc/userdoc.doctree | Bin 36261 -> 36261 bytes .../doc/ros2_control_demos/doc/index.doctree | Bin 52047 -> 52047 bytes .../doc/run_from_docker.doctree | Bin 3337 -> 3337 bytes .../example_1/doc/userdoc.doctree | Bin 81829 -> 81829 bytes .../example_10/doc/userdoc.doctree | Bin 37201 -> 37201 bytes .../example_11/doc/userdoc.doctree | Bin 34581 -> 34581 bytes .../example_12/doc/userdoc.doctree | Bin 49142 -> 49142 bytes .../example_13/doc/userdoc.doctree | Bin 96331 -> 96331 bytes .../example_14/doc/userdoc.doctree | Bin 38700 -> 38700 bytes .../example_15/doc/userdoc.doctree | Bin 47087 -> 47087 bytes .../example_2/doc/userdoc.doctree | Bin 38842 -> 38842 bytes .../example_3/doc/userdoc.doctree | Bin 51669 -> 51669 bytes .../example_4/doc/userdoc.doctree | Bin 38036 -> 38036 bytes .../example_5/doc/userdoc.doctree | Bin 41260 -> 41260 bytes .../example_6/doc/userdoc.doctree | Bin 33384 -> 33384 bytes .../example_7/doc/userdoc.doctree | Bin 102724 -> 102724 bytes .../example_8/doc/userdoc.doctree | Bin 32245 -> 32245 bytes .../example_9/doc/userdoc.doctree | Bin 31527 -> 31527 bytes .../doc/userdoc.doctree | Bin 14315 -> 14315 bytes .../admittance_controller/doc/userdoc.doctree | Bin 49157 -> 49157 bytes .../doc/userdoc.doctree | Bin 11606 -> 11606 bytes .../diff_drive_controller/doc/userdoc.doctree | Bin 52840 -> 52840 bytes .../doc/controllers_index.doctree | Bin 16175 -> 16175 bytes .../ros2_controllers/doc/migration.doctree | Bin 11788 -> 11788 bytes .../doc/mobile_robot_kinematics.doctree | Bin 49618 -> 49618 bytes .../doc/release_notes.doctree | Bin 32524 -> 32524 bytes .../doc/writing_new_controller.doctree | Bin 61039 -> 61039 bytes .../effort_controllers/doc/userdoc.doctree | Bin 8222 -> 8222 bytes .../doc/userdoc.doctree | Bin 22643 -> 22643 bytes .../doc/userdoc.doctree | Bin 12877 -> 12877 bytes .../gpio_controllers/doc/userdoc.doctree | Bin 16319 -> 16319 bytes .../gripper_controllers/doc/userdoc.doctree | Bin 13842 -> 13842 bytes .../doc/userdoc.doctree | Bin 16591 -> 16591 bytes .../doc/userdoc.doctree | Bin 26551 -> 26551 bytes .../doc/parameters.doctree | Bin 42050 -> 42050 bytes .../doc/trajectory.doctree | Bin 38596 -> 38596 bytes .../doc/userdoc.doctree | Bin 46107 -> 46107 bytes .../doc/userdoc.doctree | Bin 12965 -> 12965 bytes .../doc/userdoc.doctree | Bin 17553 -> 17553 bytes .../pid_controller/doc/userdoc.doctree | Bin 39282 -> 39282 bytes .../pose_broadcaster/doc/userdoc.doctree | Bin 14933 -> 14933 bytes .../position_controllers/doc/userdoc.doctree | Bin 8292 -> 8292 bytes .../doc/userdoc.doctree | Bin 14796 -> 14796 bytes .../doc/userdoc.doctree | Bin 3871 -> 3871 bytes .../doc/userdoc.doctree | Bin 46260 -> 46260 bytes .../tricycle_controller/doc/userdoc.doctree | Bin 32551 -> 32551 bytes .../doc/userdoc.doctree | Bin 12709 -> 12709 bytes .../velocity_controllers/doc/userdoc.doctree | Bin 8292 -> 8292 bytes .../.doctrees/doc/roscon2024_workshop.doctree | Bin 12124 -> 12124 bytes .../doc/simulators/simulators.doctree | Bin 7042 -> 7042 bytes .../supported_robots/supported_robots.doctree | Bin 24838 -> 24838 bytes rolling/.doctrees/environment.pickle | Bin 4750394 -> 4766694 bytes rolling/.doctrees/index.doctree | Bin 28425 -> 28425 bytes .../acknowledgements/acknowledgements.html | 676 +++++++++++------- rolling/index.html | 2 +- rolling/searchindex.js | 2 +- 459 files changed, 2543 insertions(+), 1687 deletions(-) diff --git a/foxy/.buildinfo b/foxy/.buildinfo index b2b4ad0027c..c0ddf7ae356 100644 --- a/foxy/.buildinfo +++ b/foxy/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 09cb0855356e8e8e2d6395993deee422 +config: 6f7bda590b436bac1feef873d420f73a tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/foxy/.doctrees/doc/acknowledgements/acknowledgements.doctree b/foxy/.doctrees/doc/acknowledgements/acknowledgements.doctree index 3122e4b7aecabf5aafe38a6602ce35a78fd3fb07..c93f80f4db086610628376d8742e6076ed3c9ae0 100644 GIT binary patch delta 66 zcmeCO>ayBk#AujhY>=N~l5eh`WSDGdoRVUYXliU^Vr*`1m}F#-n4DsoVq%({YLskZ Vl9XhaVwPw=*^otSb0yayBk#As-eQ)HZ;mtUx#Y;KyAY-XHfV3KBPmX>N}YH6HgX=Y$yo@|Pm}+V?*^otSb0y5Lm&GnNElMRhiQVbGJjg3r<&CLyyj0_T!Q%qA#Op{ZM Ul1)sKk_=PK63sV1V|I=P0I)d}dH?_b delta 64 zcmZ3vk8$Nb#tmDU4NY>2jMMY-3-y!DO_P$%jFSvZ(oD_LQq4>)jgu_R3@pr(O;b_~ UQ&Q4WO$-cEO^r4`V|I=P0LanyFb@s+p;!agwE(frWXpX-bM= TN=jO)iGg9NsnO6%Np4=1h diff --git a/foxy/.doctrees/doc/getting_started/getting_started.doctree b/foxy/.doctrees/doc/getting_started/getting_started.doctree index 8d9c93c1b799285a38606bb4f81d0c3532de996e..e5efbb0b1505516473a1246638de15ac106d4971 100644 GIT binary patch delta 64 zcmV~$NezH75CFh5^??QUWcBRP51;y|8WJqvtIX`x_v#NcycuT6v@*bIZf Sv$RBWP>MugU2danyFb@s+p;!agwE(frWXpX-bM= TN=jO)iGg9NsnO;{M!6#ZzRMJL diff --git a/foxy/.doctrees/doc/project_ideas.doctree b/foxy/.doctrees/doc/project_ideas.doctree index 2003ccd4b1e5d0e1503365011a839d28cefd3ff7..45d6a046e9cbe1179ff675739fce568ddb10a703 100644 GIT binary patch delta 64 zcmeyeis{QLrVTobhFQi2`6(v(=K4v7$%e)$DF%tA#zrQ_=H`Y;Mh1z=DW)kVrpc*B U$tEUANrowAiRPPQ8O5gn0IGWv;Q#;t delta 64 zcmeyeis{QLrVTobh9)^h#_4(ah5E_nrb)?W#z_VyX{Kgrsb;2@#z~fD1{UVYrYR|g UDJf~GCI*J7rbe4%8O5gn0LLK|UjP6A diff --git a/foxy/.doctrees/doc/resources/resources.doctree b/foxy/.doctrees/doc/resources/resources.doctree index 03940127eae067443f8f8e83d8a070d02aca4919..e744a1d42886babebf39e09f1af1cd90e905ac1b 100644 GIT binary patch delta 68 zcmX@v!*a5RWrGT%VV1E$eu_!HxqgyivY~NGib0~Ov5|?fxw&DIkwIc|ifM|8X>zJj XvWZDjl3|KjqIq*DanyFb@s+p;!agwE(frWXpX-bM= XN=jO)iGg9NsZnz%3;Cu|a-{Nxr#$l3}u;aY~9oqN%ZwiLtr4VUm$SVseUUiiv4*s!_6u RNm7zwidmxh=5odsB>;dm6I1{I delta 62 zcmezE{@Z68~PLXkXUVfo|vbkwevYBy`fk~RFSz4-@sikp}rI~?+d9rCrieXAh RTB?bGVXCRo=5odsB>)A9iw5Eu|a-{Nxr#$l3}u;aY~9oqN%ZwiLtr4VUm$SVseUUiiv4*s!_6u RNm7zwidmxh=6uH6q5xam68ZoD delta 62 zcmX@5cS>)A9iyR1PLXkXUVfo|vbkwevYBy`fk~RFSz4-@sikp}rI~?+d9rCrieXAh RTB?bGVXCRo=6uH6q5yb;6LB7Da6*lUEuCm#w!qMS6t%*Mt$2j5DoZN*Ux)^18yF^%97O0>5* OPJvk!_ssaN@z4)?GZQKR delta 62 zcmcbed^>rA8Ka>|PLXkXUVfo|vbkwevYBy`fk~RFSz4-@sikp}rI~?+d9rCrieXAh RTB?bGVXCRo=5)pq0|1uU6Q}?H diff --git a/foxy/.doctrees/doc/ros2_controllers/diff_drive_controller/doc/userdoc.doctree b/foxy/.doctrees/doc/ros2_controllers/diff_drive_controller/doc/userdoc.doctree index a0e06bc0884676f86e8a3dd6b7297102e0d45bae..0afa19474545017ccbd55197d4a25b05911c0799 100644 GIT binary patch delta 62 zcmdn4vt4I{52In0u|a-{Nxr#$l3}u;aY~9oqN%ZwiLtr4VUm$SVseUUiiv4*s!_6u RNm7zwidmxh=32&GA^=qJ63PGo delta 62 zcmdn4vt4I{52K+;PLXkXUVfo|vbkwevYBy`fk~RFSz4-@sikp}rI~?+d9rCrieXAh RTB?bGVXCRo=32&GA^>rh6G#96 diff --git a/foxy/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree b/foxy/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree index 1660574747378c7cd7a6e996eac0b6238721f646..1883ad97a17ac772c6529e4a5d7029e3072eb78b 100644 GIT binary patch delta 71 zcmdm$vMXhS2BT4yu|a-{Nxr#$l3}u;aY~9oqN%ZwiLtr4VUm$SVseUUiiv4*s!_6u bNm7zwidmw${$vLw(a95}MK`xFZZiM?9aa^{ delta 71 zcmdm$vMXhS2BVQlPLXkXUVfo|vbkwevYBy`fk~RFSz4-@sikp}rI~?+d9rCrieXAh bTB?bGVXCQ-{$vLw(a95}MK`xFZZiM?K57<5 diff --git a/foxy/.doctrees/doc/ros2_controllers/doc/writing_new_controller.doctree b/foxy/.doctrees/doc/ros2_controllers/doc/writing_new_controller.doctree index 5f2ebd844b2dbb19439e7a297061562eb317afec..b1aabaa4eeff6e428f9e1aaef32892ee05e1b585 100644 GIT binary patch delta 64 zcmbPwg?Z`~<_!*vhFQi2`6(v(=K4v7$%e)$DF%tA#zrQ_=H`Y;Mh1z=DW)kVrpc*B U$tEUANrowAiRPON8JD~O0G9C-f&c&j delta 64 zcmbPwg?Z`~<_!*vh9)^h#_4(ah5E_nrb)?W#z_VyX{Kgrsb;2@#z~fD1{UVYrYR|g UDJf~GCI*J7rbe3!8JD~O0JE1B00000 diff --git a/foxy/.doctrees/doc/ros2_controllers/effort_controllers/doc/userdoc.doctree b/foxy/.doctrees/doc/ros2_controllers/effort_controllers/doc/userdoc.doctree index 0367d718e43b4b60416da44c8f4191c18dafc009..87bcde1f3109c9d9f7ff86376931bc0e52b10dfc 100644 GIT binary patch delta 62 zcmbQEFh^m78>3;Cu|a-{Nxr#$l3}u;aY~9oqN%ZwiLtr4VUm$SVseUUiiv4*s!_6u RNm7zwidmxh=5ofRd;mbz5>)^I delta 62 zcmbQEFh^m78>68~PLXkXUVfo|vbkwevYBy`fk~RFSz4-@sikp}rI~?+d9rCrieXAh RTB?bGVXCRo=5ofRd;nd064L+x diff --git a/foxy/.doctrees/doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.doctree b/foxy/.doctrees/doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.doctree index 43953d6e7c8952b13824a3f1e2572415ab5b2075..bde4623f0ad5b1793f47a8e262a9a395809d6cb9 100644 GIT binary patch delta 62 zcmccUe9?JB0;6G;u|a-{Nxr#$l3}u;aY~9oqN%ZwiLtr4VUm$SVseUUiiv4*s!_6u RNm7zwidmxh=823B3IK2U66OE^ delta 62 zcmccUe9?JB0;8cxPLXkXUVfo|vbkwevYBy`fk~RFSz4-@sikp}rI~?+d9rCrieXAh RTB?bGVXCRo=823B3IL3s6J!7Y diff --git a/foxy/.doctrees/doc/ros2_controllers/forward_command_controller/doc/userdoc.doctree b/foxy/.doctrees/doc/ros2_controllers/forward_command_controller/doc/userdoc.doctree index e6abf6208b79549664e2049a4396b398a2698272..eb0b28162546ea7041760feb8cb51c02e3e91f2b 100644 GIT binary patch delta 62 zcmaE&@I+xl7^7j9u|a-{Nxr#$l3}u;aY~9oqN%ZwiLtr4VUm$SVseUUiiv4*s!_6u RNm7zwidmxh=61%rd;n)<6FmR` delta 62 zcmaE&@I+xl7^9&{PLXkXUVfo|vbkwevYBy`fk~RFSz4-@sikp}rI~?+d9rCrieXAh RTB?bGVXCRo=61%rd;o+C6T1Ka diff --git a/foxy/.doctrees/doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.doctree b/foxy/.doctrees/doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.doctree index 1df3fd6533b5aac84741d20709c16ec1df653024..c9c0b2f7b0c66c96c4a780c8f981bf58c7e9e6ec 100644 GIT binary patch delta 62 zcmZqIYuDT0$7q;kY>=N~l5eh`WSDGdoRVUYXliU^Vr*`1m}F#-n4DsoVq%({YLskZ Rl9XhaVwPyWxt_5@6aYUM5N}YH6HgX=Y$yo@|Pm}+XYxt_5@6aZVk62AZd diff --git a/foxy/.doctrees/doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.doctree b/foxy/.doctrees/doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.doctree index 781683a60a003e4b17abee21ffeecc0209e93887..279ec85982d50479af373a2bee25b47459fc092d 100644 GIT binary patch delta 62 zcmZ2&yV`a`0Ha}+u|a-{Nxr#$l3}u;aY~9oqN%ZwiLtr4VUm$SVseUUiiv4*s!_6u RNm7zwidmxh=0-*>SpZiK5>)^I delta 62 zcmZ2&yV`a`0HdKvPLXkXUVfo|vbkwevYBy`fk~RFSz4-@sikp}rI~?+d9rCrieXAh RTB?bGVXCRo=0-*>Spaji64L+x diff --git a/foxy/.doctrees/doc/ros2_controllers/joint_state_controller/doc/userdoc.doctree b/foxy/.doctrees/doc/ros2_controllers/joint_state_controller/doc/userdoc.doctree index 0f7973aeb3e00a06bb61f88cbc8139d6df1f9659..9eff4aabacad66259b37f947a19fe00efb169284 100644 GIT binary patch delta 62 zcmaE<@ls=hAERNGu|a-{Nxr#$l3}u;aY~9oqN%ZwiLtr4VUm$SVseUUiiv4*s!_6u RNm7zwidmxh=6c3gLI7*M6IcKM delta 62 zcmaE<@ls=hAETj3PLXkXUVfo|vbkwevYBy`fk~RFSz4-@sikp}rI~?+d9rCrieXAh RTB?bGVXCRo=6c3gLI8+k6V?C# diff --git a/foxy/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.doctree b/foxy/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.doctree index 4daaee5aa51efd708cb6df2228ad1bc8c85ff62b..f986cc96a1f9e1ea342c7a340b0fa7247ce6514e 100644 GIT binary patch delta 64 zcmccD&UCMxX+s2~VV1E$eu_!HxqgyivY~NGib0~Ov5|?fxw&DIkwIc|ifM|8X>zJj TvWZDjl3|KjqWR`d#?U4JnbH&U delta 64 zcmccD&UCMxX+s2~p-E1Wae7{Up?anyFb@s+p;!agwE(frWXpX-bM= TN=jO)iGg9NsnO<6#?U4Jws;hA diff --git a/foxy/.doctrees/doc/ros2_controllers/position_controllers/doc/userdoc.doctree b/foxy/.doctrees/doc/ros2_controllers/position_controllers/doc/userdoc.doctree index 02a4664b747d5b23985b472bed57b99cd86dbd46..2c993d4580f50521f8706208162fef308f0d288d 100644 GIT binary patch delta 62 zcmdm`uuEZs7o%a8u|a-{Nxr#$l3}u;aY~9oqN%ZwiLtr4VUm$SVseUUiiv4*s!_6u RNm7zwidmxh=4!_Md;m~M60-mR delta 62 zcmdm`uuEZs7o(v`PLXkXUVfo|vbkwevYBy`fk~RFSz4-@sikp}rI~?+d9rCrieXAh RTB?bGVXCRo=4!_Md;o0k6EOe) diff --git a/foxy/.doctrees/doc/ros2_controllers/tricycle_controller/doc/userdoc.doctree b/foxy/.doctrees/doc/ros2_controllers/tricycle_controller/doc/userdoc.doctree index 2763db99f80cc4ef9c04cf0e77d770df2df20e5e..2e2d8188f625d89d961d8223bcc8284dacd84018 100644 GIT binary patch delta 62 zcmbQMF;`=Q2cuz@u|a-{Nxr#$l3}u;aY~9oqN%ZwiLtr4VUm$SVseUUiiv4*s!_6u RNm7zwidmxh=1RsTLI6dJ5^ewh delta 62 zcmbQMF;`=Q2cw}$PLXkXUVfo|vbkwevYBy`fk~RFSz4-@sikp}rI~?+d9rCrieXAh RTB?bGVXCRo=1RsTLI7eh66^o~ diff --git a/foxy/.doctrees/doc/ros2_controllers/velocity_controllers/doc/userdoc.doctree b/foxy/.doctrees/doc/ros2_controllers/velocity_controllers/doc/userdoc.doctree index 49f17a9a0f370a5fac197cfa458b28ca733b0864..3781839170b302f18a34930e3162753647301e1a 100644 GIT binary patch delta 62 zcmdm`uuEZs7o%a8u|a-{Nxr#$l3}u;aY~9oqN%ZwiLtr4VUm$SVseUUiiv4*s!_6u RNm7zwidmxh=4!_Md;m~M60-mR delta 62 zcmdm`uuEZs7o(v`PLXkXUVfo|vbkwevYBy`fk~RFSz4-@sikp}rI~?+d9rCrieXAh RTB?bGVXCRo=4!_Md;o0k6EOe) diff --git a/foxy/.doctrees/environment.pickle b/foxy/.doctrees/environment.pickle index a949062dbc290feae81b6237a9e1e4c24539c7a4..e7e393bf8677f1c1a9efa04677f43558aaeca08c 100644 GIT binary patch delta 16126 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 Qlwvayn?l>0p)!^J9p{qzF8}}l diff --git a/foxy/.doctrees/index.doctree b/foxy/.doctrees/index.doctree index 7d9baaabf664ea3e359c256effa7511fb661bf42..bfab806462d6a90c0dee84291b7c3e8d7225fa1b 100644 GIT binary patch delta 82 zcmdmZpK;@T#tmkShFQi2`6(v(=K4v7$%e)$DF%tA#zrQ_=H`Y;Mh1z=DW)kVrpc*B m$tEUANrowAiRPQr8IOf98gAALGh<{loP0i9dUHd#p#%U!m>ItS delta 82 zcmdmZpK;@T#tmkSh9)^h#_4(ah5E_nrb)?W#z_VyX{Kgrsb;2@#z~fD1{UVYrYR|g mDJf~GCI*J7rbe678IOf98f?}JGh<{ln0!85dUHd#p#%VE{~9|0 diff --git a/foxy/index.html b/foxy/index.html index e5faa045c45..6c842cdd596 100644 --- a/foxy/index.html +++ b/foxy/index.html @@ -150,7 +150,7 @@

Development Organisation and Communication -

Built on 2024-12-10 at 05:40 GMT

+

Built on 2024-12-11 at 05:40 GMT

diff --git a/foxy/searchindex.js b/foxy/searchindex.js index f73dfedd3b3..ac729d66118 100644 --- a/foxy/searchindex.js +++ b/foxy/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"2021-05 ROSCon Fr 2021": [[5, "roscon-fr-2021"]], "2021-06 ROSDevDay 2021": [[5, "rosdevday-2021"]], "2021-10 ROS World 2021": [[5, "ros-world-2021"]], "2021-10-07 Weekly Robotics Meetup #13": [[5, "weekly-robotics-meetup-13"]], "2022-06 ROSCon Fr 2022": [[5, "roscon-fr-2022"]], "2022-10 ROSCon 2022": [[5, "roscon-2022"]], "2022-12 ROS-Industrial Conference 2022": [[5, "ros-industrial-conference-2022"]], "2023-02 ROS Meetup Munich #5": [[5, "ros-meetup-munich-5"]], "API Documentation": [[7, "api-documentation"]], "Acknowledgements": [[0, "acknowledgements"]], "Add support for hardware semantic components": [[4, "add-support-for-hardware-semantic-components"]], "Architecture": [[3, "architecture"]], "Asynchronous Control Components": [[4, "asynchronous-control-components"]], "Available Broadcasters": [[12, "available-broadcasters"]], "Available Controllers": [[12, "available-controllers"]], "CI configuration": [[1, "ci-configuration"]], "Command Line Interface": [[9, "command-line-interface"]], "Commands": [[18, "commands"]], "Compiling": [[3, "compiling"]], "Concepts": [[7, "concepts"]], "Controller Manager": [[3, "controller-manager"], [6, "controller-manager"]], "Controller Migration": [[2, "controller-migration"]], "Controllers": [[3, "controllers"], [12, "id1"]], "Controller\u2019s Access to Hardware": [[2, "controller-s-access-to-hardware"]], "Core functionalities": [[7, "core-functionalities"]], "Demos": [[10, "demos"]], "Details about parameters": [[20, "details-about-parameters"]], "Development Organisation and Communication": [[24, "development-organisation-and-communication"]], "Diagrams": [[5, "diagrams"]], "Differences to ros_control (ROS1)": [[2, "differences-to-ros-control-ros1"]], "Fake Components": [[8, "fake-components"]], "Feature-parity for controllers from ROS1": [[4, "feature-parity-for-controllers-from-ros1"]], "Features": [[7, "features"]], "Force Torque Sensor Broadcaster": [[15, "force-torque-sensor-broadcaster"]], "Generic System": [[8, "generic-system"]], "Getting Started": [[3, "getting-started"]], "Guidelines and Best Practices": [[12, "guidelines-and-best-practices"]], "Hardware Components": [[3, "hardware-components"]], "Hardware Description in URDF": [[3, "hardware-description-in-urdf"]], "Hardware Interfaces": [[2, "hardware-interfaces"]], "Hardware Structures - classes": [[2, "hardware-structures-classes"]], "Hardware interface type": [[11, "hardware-interface-type"], [14, "hardware-interface-type"], [16, "hardware-interface-type"], [18, "hardware-interface-type"], [20, "hardware-interface-type"], [21, "hardware-interface-type"], [23, "hardware-interface-type"]], "Helper scripts": [[6, "helper-scripts"]], "IMU Sensor Broadcaster": [[17, "imu-sensor-broadcaster"]], "Images": [[5, "images"]], "Migration Guide to ros2_control": [[2, "migration-guide-to-ros2-control"]], "Mission-Control for ros2_control": [[4, "mission-control-for-ros2-control"]], "Mode switching demo": [[10, "mode-switching-demo"]], "Nomenclature": [[12, "nomenclature"]], "Other features": [[11, "other-features"], [20, "other-features"], [22, "other-features"]], "Overview": [[24, "overview"]], "Parameters": [[8, "parameters"], [15, "parameters"], [17, "parameters"], [18, "parameters"]], "Per-joint Parameters": [[8, "per-joint-parameters"]], "Presentations": [[5, "presentations"]], "Project Ideas for GSoC 2022": [[4, "project-ideas-for-gsoc-2022"]], "Pull Requests": [[1, "pull-requests"]], "ROS2 interface of the controller": [[20, "ros2-interface-of-the-controller"]], "Repository organization": [[10, "repository-organization"]], "Repository structure and CI configuration": [[1, "repository-structure-and-ci-configuration"]], "Resource Manager": [[3, "resource-manager"]], "Resources": [[5, "resources"]], "RobotHardware to Components": [[2, "robothardware-to-components"]], "Rules for the repositories and process of merging pull requests": [[1, "rules-for-the-repositories-and-process-of-merging-pull-requests"]], "Running the Framework for Your Robot": [[3, "running-the-framework-for-your-robot"]], "Specialized versions of JointTrajectoryController (TBD in \u2026)": [[20, "specialized-versions-of-jointtrajectorycontroller-tbd-in"]], "Trajectory representation": [[20, "trajectory-representation"]], "Tutorials and Demos for ros2_control": [[4, "tutorials-and-demos-for-ros2-control"]], "Useful External References": [[13, "useful-external-references"]], "User Interfaces": [[3, "user-interfaces"]], "Using Joint Trajectory Controller(s)": [[20, "using-joint-trajectory-controller-s"]], "Velocity commands": [[11, "velocity-commands"], [22, "velocity-commands"]], "Welcome to the ros2_control documentation - Foxy!": [[24, "welcome-to-the-ros2-control-documentation-foxy"]], "Writing a new controller": [[13, "writing-a-new-controller"]], "Writing documentation": [[1, "writing-documentation"]], "diff_drive_controller": [[11, "diff-drive-controller"]], "effort_controllers": [[14, "effort-controllers"]], "forward_command_controller": [[16, "forward-command-controller"]], "joint_state_broadcaster": [[18, "joint-state-broadcaster"]], "joint_state_controller": [[19, "joint-state-controller"]], "joint_trajectory_controller": [[20, "joint-trajectory-controller"]], "list_controller_types": [[9, "list-controller-types"]], "list_controllers": [[9, "list-controllers"]], "list_hardware_interfaces": [[9, "list-hardware-interfaces"]], "load_controller": [[9, "load-controller"]], "position_controllers": [[21, "position-controllers"]], "reload_controller_libraries": [[9, "reload-controller-libraries"]], "ros2_controllers": [[12, "ros2-controllers"]], "set_controller_state": [[9, "set-controller-state"]], "spawner.py": [[6, "spawner-py"]], "switch_controllers": [[9, "switch-controllers"]], "tricycle_controller": [[22, "tricycle-controller"]], "unload_controller": [[9, "unload-controller"]], "unspawner.py": [[6, "unspawner-py"]], "velocity_controllers": [[23, "velocity-controllers"]]}, "docnames": ["doc/acknowledgements/acknowledgements", "doc/contributing/contributing", "doc/differences_to_ros1/differences_to_ros1", "doc/getting_started/getting_started", "doc/project_ideas", "doc/resources/resources", "doc/ros2_control/controller_manager/doc/userdoc", "doc/ros2_control/doc/index", "doc/ros2_control/hardware_interface/doc/fake_components_userdoc", "doc/ros2_control/ros2controlcli/doc/userdoc", "doc/ros2_control_demos/doc/index", "doc/ros2_controllers/diff_drive_controller/doc/userdoc", "doc/ros2_controllers/doc/controllers_index", "doc/ros2_controllers/doc/writing_new_controller", "doc/ros2_controllers/effort_controllers/doc/userdoc", "doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc", "doc/ros2_controllers/forward_command_controller/doc/userdoc", "doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc", "doc/ros2_controllers/joint_state_broadcaster/doc/userdoc", "doc/ros2_controllers/joint_state_controller/doc/userdoc", "doc/ros2_controllers/joint_trajectory_controller/doc/userdoc", "doc/ros2_controllers/position_controllers/doc/userdoc", "doc/ros2_controllers/tricycle_controller/doc/userdoc", "doc/ros2_controllers/velocity_controllers/doc/userdoc", "index"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.todo": 2}, "filenames": ["doc/acknowledgements/acknowledgements.rst", "doc/contributing/contributing.rst", "doc/differences_to_ros1/differences_to_ros1.rst", "doc/getting_started/getting_started.rst", "doc/project_ideas.rst", "doc/resources/resources.rst", "doc/ros2_control/controller_manager/doc/userdoc.rst", "doc/ros2_control/doc/index.rst", "doc/ros2_control/hardware_interface/doc/fake_components_userdoc.rst", "doc/ros2_control/ros2controlcli/doc/userdoc.rst", "doc/ros2_control_demos/doc/index.rst", "doc/ros2_controllers/diff_drive_controller/doc/userdoc.rst", "doc/ros2_controllers/doc/controllers_index.rst", "doc/ros2_controllers/doc/writing_new_controller.rst", "doc/ros2_controllers/effort_controllers/doc/userdoc.rst", "doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.rst", "doc/ros2_controllers/forward_command_controller/doc/userdoc.rst", "doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.rst", "doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.rst", "doc/ros2_controllers/joint_state_controller/doc/userdoc.rst", "doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.rst", "doc/ros2_controllers/position_controllers/doc/userdoc.rst", "doc/ros2_controllers/tricycle_controller/doc/userdoc.rst", "doc/ros2_controllers/velocity_controllers/doc/userdoc.rst", "index.rst"], "indexentries": {}, "objects": {}, "objnames": {}, "objtypes": {}, "terms": {"": [0, 1, 3, 4, 5, 10, 13, 24], "0": [3, 8, 18, 20], "01": 20, "03": 20, "05": [20, 24], "1": [1, 3, 4, 5, 8, 13], "10": 24, "100": 3, "12": 24, "171": 20, "175": 4, "2": [1, 3, 5, 8], "20": 20, "2020": 0, "2024": 24, "23": 3, "3": [3, 4], "302": 4, "303": 4, "304": 4, "350": 4, "3rd": 5, "40": 24, "43": 3, "45": 4, "50": [3, 20], "500": 4, "6d": 15, "732287": 0, "81": 4, "9": 4, "A": [3, 5, 13, 20], "As": [1, 13], "At": 13, "BY": 5, "Be": 1, "By": 20, "For": [1, 3, 4, 5, 8, 13, 20], "If": [1, 2, 3, 6, 13, 15, 20, 24], "In": [2, 3, 4, 5, 13], "It": [1, 2, 3, 4, 6, 15], "Its": 24, "Not": 20, "On": 3, "One": 5, "Such": 4, "That": [1, 13], "The": [0, 2, 3, 4, 5, 8, 9, 10, 11, 12, 13, 15, 17, 18, 19, 20, 22, 24], "There": [3, 6, 13], "These": [14, 16, 21, 23], "To": [1, 2, 3, 24], "With": 5, "_control": 5, "_interfac": 2, "abi": 1, "abl": 1, "about": [4, 8, 24], "abov": [2, 20], "abstract": [3, 5], "acceler": [5, 10, 11, 12, 20, 22], "accept": [1, 13, 14, 16, 21, 23], "access": [3, 4, 5, 6, 8, 13], "accord": [12, 20], "aceleromet": 4, "achiev": [14, 16, 21, 23], "action": 20, "action_monitor_r": 20, "activ": [1, 2, 3, 9], "actuat": [2, 3, 4, 8], "actuatorinterfac": 2, "ad": [1, 4, 8, 13, 18], "add": [1, 2, 13], "addit": [2, 4], "addition": [4, 24], "address": [1, 4], "adjust": 9, "admitt": 5, "adopt": 4, "advantag": 8, "afraid": 1, "after": [1, 11, 13, 22], "again": 10, "against": 1, "agnost": 5, "agreement": 0, "aka": 5, "all": [1, 2, 3, 4, 5, 8, 10, 13, 18, 20], "allow": [2, 20], "allow_partial_joints_go": 20, "alreadi": [9, 13, 20], "also": [1, 2, 3, 4, 5, 13], "altern": [3, 20], "although": 4, "alwai": 1, "ament": 13, "ament_add_gmock": 13, "ament_cmak": 13, "ament_cmake_gmock": 13, "ament_export_librari": 13, "ament_packag": 13, "an": [1, 2, 3, 4, 5, 8, 9, 13, 20], "andi": 5, "angular": [11, 22], "angular_veloc": 17, "ani": [2, 3, 5, 13], "announc": 24, "anoth": 4, "answer": 24, "anymor": 2, "api": [1, 4], "appli": 9, "applic": [1, 3, 5, 6], "approach": 2, "appropri": 4, "approv": 1, "ar": [1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 13, 15, 17, 18, 20, 22, 24], "architectur": [4, 5], "arduino": 3, "argument": [6, 9], "arm": 5, "around": [4, 15, 17], "arrai": 18, "asap": 9, "ask": 13, "assign": 13, "assum": 3, "assur": 0, "attempt": 20, "author": 5, "auto": 3, "automat": [3, 11, 22], "autonom": 5, "avail": [2, 3, 5, 9, 10, 13, 18, 20], "avoid": [1, 13], "awar": 1, "ax": 15, "axi": [4, 15], "back": 1, "background": 1, "base": [3, 5, 9, 11, 13, 22], "base_link": 22, "bash": 13, "basic": [2, 3, 4, 5, 13], "becaus": 20, "becom": 5, "been": [10, 19], "befor": [1, 2, 6, 13], "behavior": [4, 8], "below": 5, "benc": [4, 5], "benchmark": 4, "best": [5, 13], "better": 5, "between": [3, 4, 19, 20], "binari": 1, "board": 3, "bodi": 11, "boolean": [8, 18, 20], "boost": 8, "booth": 5, "both": [4, 5], "bottom": 13, "box": 2, "brake": 1, "branch": 1, "broadcast": [8, 18, 19], "brook": 5, "buffer": [4, 24], "bug": 24, "build": [1, 13], "built": 24, "c": [4, 6, 9, 13], "calcul": 3, "call": [2, 3, 13], "can": [1, 2, 3, 4, 5, 7, 8, 13, 15, 19, 20, 24], "capabl": [3, 4], "care": [2, 4, 13], "case": [2, 4, 5, 13, 20, 24], "caus": 20, "cc": 5, "cell": [2, 15], "certain": [14, 16, 21, 23], "chain": 5, "chanc": 1, "chang": [1, 2, 3, 5, 9, 13, 20], "channel": 3, "check": [1, 2, 3, 4, 8, 10, 13, 20, 24], "choos": 2, "chosen": 3, "claim": 10, "class": [3, 5, 9, 13], "class_list_macro": 13, "clean": [1, 4], "cli": [3, 7, 9], "clock": 20, "close": 13, "cm": 3, "cmake": 13, "cmakelist": 13, "code": [1, 2, 4, 5, 13], "cokela": 1, "colcon": 13, "collabor": 1, "collect": [5, 14, 16, 21, 23], "com": [3, 4], "combin": [2, 8, 20], "combinedrobothardwar": 2, "command": [2, 3, 4, 5, 7, 8, 10, 12, 13, 14, 16, 20, 21, 23, 24], "command_interfac": [3, 20], "command_interface_configur": [2, 13], "comment": 1, "commit": 1, "common": [3, 4, 12, 24], "commun": [2, 3, 4, 5], "compani": [0, 5], "company_nam": 5, "compar": [3, 4, 5], "compass": 4, "compat": [1, 2, 5], "compil": 13, "complet": [3, 12], "complex": [3, 4, 5], "compon": [0, 5, 6, 7, 11, 15, 17, 22, 24], "composit": [2, 5], "comprehens": 10, "comput": [11, 22], "concept": [4, 5, 8, 10], "conductor": 4, "configur": [2, 3, 4, 5, 6, 9, 10, 13, 20], "configure_control": 9, "configure_start_control": 9, "conflict": [2, 3, 4], "connect": 3, "consid": [1, 9], "consist": [4, 20, 24], "constant": 2, "constraint": [13, 20], "constructor": [2, 13], "consult": 5, "contact": 5, "content": 13, "continu": 20, "contribut": [0, 1, 5], "contributor": 1, "control": [5, 7, 8, 9, 10, 11, 14, 15, 16, 17, 18, 19, 21, 22, 23, 24], "control_msg": [20, 24], "control_toolbox": [4, 24], "controller_interfac": [3, 4, 9, 13, 15, 17], "controller_manag": [3, 4, 6, 9, 13, 20], "controller_manager_msg": 3, "controller_manager_timeout": 6, "controller_nam": [6, 9, 13], "controller_name_namespac": 13, "controller_name_packag": 13, "controller_typ": 6, "controllerinterfac": [2, 3, 9, 13], "controllermanag": 2, "controllernam": 13, "convent": 1, "copi": 13, "core": 1, "correct": [1, 2, 20], "correspond": [8, 13, 24], "could": [3, 5, 13, 20], "cowboi": 1, "cpp": [2, 13], "creat": [2, 3, 5, 8, 13], "critic": [2, 4], "cross": 2, "cubic": 20, "current": [1, 4, 9, 20], "custom": [3, 8, 15], "custom_interface_with_following_offset": 8, "cycl": 5, "daemon": 9, "dai": 1, "data": [2, 3, 4, 8, 19], "dc": 3, "deactiv": [2, 3], "deal": 3, "debug": 8, "decid": 2, "declar": [2, 13], "deeper": 5, "default": [2, 3, 8, 18, 20], "defin": [2, 3, 4, 8, 12, 13, 15, 17, 18, 20], "definit": [3, 12, 13, 15], "degrad": 4, "delv": 5, "demo": 5, "demonstr": 10, "deni": [4, 5], "depend": [1, 3, 13, 20], "deprec": [9, 12], "deriv": 3, "describ": [2, 3], "descript": [1, 2, 5, 13], "design": [2, 3, 4, 5, 24], "desir": [4, 20], "detail": [1, 2, 3, 8, 13], "develop": [1, 5, 8, 10, 13], "deviat": 20, "diff_drive_control": [4, 9], "diffdrivecontrol": 9, "differ": [3, 4, 5, 14, 15, 16, 21, 23], "differenti": [11, 12, 19, 24], "difficulti": 4, "direct": [1, 2, 4, 13], "directli": [3, 24], "directori": 13, "discontinu": 20, "discourag": 20, "discours": 24, "discoveri": 9, "discuss": [1, 5, 24], "distribut": [1, 24], "do": [1, 2, 3, 4, 5, 6, 13, 20], "doc": 24, "document": [3, 4, 5, 8, 19], "doe": [2, 13, 20], "doesn": 1, "dof": 3, "don": 1, "done": [5, 13], "doubl": [4, 8, 20], "down": 5, "doxygen": 7, "dr": 5, "draft": 4, "drawback": [2, 24], "drive": [11, 12, 22, 24], "driver": [3, 5], "dynam": [3, 13], "dynamic_joint_st": 18, "e": [1, 2, 3, 4, 5, 8, 13, 14, 15, 16, 18, 20, 21, 23, 24], "each": [1, 3, 4], "earlier": 4, "easi": 4, "easiest": 13, "edit": 5, "effector": 3, "effort": [2, 12, 14, 16, 20], "effort_control": 12, "eg": 20, "either": 5, "els": 1, "emerg": 5, "empti": 13, "enabl": [2, 3, 4, 5, 10, 15], "encod": 3, "encourag": 1, "end": [2, 3, 13, 20], "enforc": [2, 20], "engin": 13, "enjoi": 13, "ensur": [2, 5], "entri": [3, 13], "entropi": 1, "environ": [1, 3, 5], "envis": 4, "equival": 2, "error": [3, 4, 13, 20], "especi": [1, 2], "essenti": 4, "etc": 24, "eu": 0, "european": 0, "even": 8, "event": 5, "everi": 24, "everyth": [4, 13], "exact": 13, "exactli": 1, "exampl": [2, 3, 4, 5, 8, 9, 10, 15, 20, 24], "example_interfac": 15, "example_nam": 15, "example_param_read_for_sec": 3, "example_param_write_for_sec": 3, "excel": 2, "except": 1, "exchang": [2, 4], "execut": [3, 13, 20], "executor": 3, "exercis": 1, "exist": [2, 3, 4, 6, 13], "exit": [6, 9], "expect": [1, 4, 20], "experi": 1, "explan": 3, "explicit": [5, 20], "explicitli": 1, "export": [3, 13], "export_": 2, "expos": 5, "extend": [2, 3, 4, 13], "extern": [2, 3, 4, 8], "extra": [5, 18], "extra_joint": 18, "extract": [2, 11, 22], "factor": 5, "fail": 1, "failur": 4, "fake": 7, "fake_sensor_command": 8, "fals": [8, 18, 20], "familiar": [4, 24], "featur": [1, 5, 8, 24], "feedback": [11, 20, 22], "feedforward": 20, "few": [4, 5], "figur": 3, "file": [2, 3, 4, 5, 6, 8, 13, 20], "final": [2, 5], "find": 1, "find_packag": 13, "fine": 13, "first": [1, 2, 13], "fiveai": 5, "fix": [1, 2], "fixup": 1, "flag": [13, 20], "flexibl": 3, "focu": 5, "focus": [4, 5], "folder": [3, 5, 13], "follow": [0, 1, 2, 3, 4, 8, 9, 10, 12, 13, 20, 24], "follow_joint_trajectori": 20, "followjointtrajectori": 20, "forc": [3, 5, 9, 12], "forcetorquesensor": 15, "forcetorquesensor1dhardwar": 3, "forget": 2, "fork": 1, "form": 4, "format": 4, "forward": [5, 8, 12, 20, 24], "forward_command_controller_acceler": 10, "forward_command_controller_illegal1": 10, "forward_command_controller_illegal2": 10, "forward_command_controller_posit": 10, "forward_command_controller_veloc": 10, "forwardcommandcontrol": 3, "found": [3, 7, 13, 19, 20, 24], "foxi": [1, 3, 5], "frame": [15, 17], "frame_id": [3, 15, 17], "framework": [1, 2, 4, 5, 6, 8, 9, 10, 12, 13, 24], "frequenc": 4, "friend": 13, "friendli": 3, "from": [0, 1, 2, 3, 5, 6, 8, 9, 11, 13, 15, 17, 20, 22, 24], "ft": 15, "full": 13, "function": [1, 2, 3, 4, 5], "fund": 0, "further": 13, "furthermor": 5, "futur": [1, 5], "g": [1, 2, 3, 4, 5, 8, 13, 14, 16, 18, 21, 23, 24], "galact": 1, "gazebo": 4, "gener": [4, 5, 13, 20, 24], "geometry_msg": 15, "get": [5, 24], "github": [3, 4, 7, 12, 24], "githubusercont": 3, "give": [1, 3, 5, 24], "given": [3, 20], "gmock": 4, "gmt": 24, "go": [5, 13], "goal": [4, 5, 20, 24], "goal_tim": 20, "good": [1, 4], "googl": 24, "gpio": 4, "grace": 4, "grant": 0, "granular": 2, "great": 13, "green": 1, "gripper": [2, 3, 8], "gripper_joint": 3, "group": [4, 20, 24], "guarante": 20, "guard": 13, "gui": 10, "guid": [5, 13], "guidelin": 1, "gyroscop": 4, "h": [6, 9, 13, 19], "ha": [0, 1, 3, 4, 5, 13, 19], "had": 2, "hand": 3, "handl": [1, 2, 4, 5, 20], "handler": 5, "hard": [2, 4], "hardwar": [5, 6, 8, 10, 12, 13, 22, 24], "hardware_interfac": [2, 3, 8, 12, 13], "hardwareinfo": 2, "have": [1, 2, 3, 4, 8, 10, 13, 20], "header": [1, 13], "heartbeat": 4, "heavi": 5, "help": [1, 6, 9, 13], "here": [2, 7, 13, 19, 20], "hereund": 3, "hidden": 9, "high": 4, "horizon": 0, "hot": 5, "hour": 4, "how": [1, 4, 5, 13], "howev": [4, 6], "hpp": 13, "html": 1, "http": [0, 1, 3, 4], "humanoid": 3, "hw_if_effort": 12, "hw_if_posit": 12, "hw_if_veloc": 12, "hydraul": 20, "hz": 4, "i": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17, 20, 21, 22, 23, 24], "id8": 1, "idea": 24, "ideal": [5, 8], "identifi": 4, "ifndef": 13, "ignit": 4, "ignor": [11, 20, 22], "immedi": 1, "impact": 1, "implement": [2, 3, 4, 5, 8, 10, 11, 12, 13, 20, 22, 24], "import": [3, 13, 20], "importantli": 13, "imposs": 2, "improv": 4, "imu": [4, 12], "imusensor": 17, "inc": 5, "includ": [2, 4, 9, 13], "increas": 1, "inde": 10, "independ": 3, "individu": 13, "industri": [0, 3, 4], "influenc": 5, "info": 1, "inform": [0, 8, 13, 24], "ingredi": 5, "init": [2, 13], "initi": [2, 13], "inject": 5, "innov": 0, "input": [3, 4, 5, 11, 20, 22], "insert": 5, "insid": 8, "instal": [3, 13], "instanc": 4, "instant": 20, "instead": [3, 8, 19, 20], "institut": 0, "integr": [3, 4, 5, 8, 10, 20, 24], "intent": [1, 8], "interact": [3, 5, 6, 9], "interfac": [4, 5, 6, 7, 8, 10, 12, 13, 15, 17, 24], "interface_nam": 15, "interface_typ": 13, "intern": [4, 20], "interpol": [12, 20], "interrupt": [2, 6], "introduc": [4, 5], "introduct": [5, 20], "involv": 5, "issu": [1, 4, 24], "its": [1, 2, 3, 4, 5, 15, 17], "itself": 2, "ivanov": 5, "jerk": [5, 11, 22], "johann": 5, "join": 24, "joint": [2, 3, 5, 11, 12, 13, 14, 16, 18, 21, 23, 24], "joint1": [3, 8, 9, 10, 20], "joint2": [3, 9, 10, 20], "joint3": 20, "joint4": 20, "joint5": 20, "joint6": 20, "joint_a2": 2, "joint_nam": [13, 20], "joint_stat": 18, "joint_state_broadcast": 19, "joint_state_control": [9, 10], "joint_trajectori": 20, "joint_trajectory_control": [4, 9], "joint_trajectory_plugin": 2, "jointstatecontrol": 9, "jointtrajectori": 20, "jointtrajectorycontrol": [2, 9], "jointtrajectorycontrollerst": 20, "keep": [1, 13], "kernel": 5, "khz": 4, "kill": [6, 9], "kinemat": 5, "knudsen": 5, "kuka": 3, "last": [13, 20], "latest": 3, "launch": [3, 6, 8, 10], "layer": 5, "least": [13, 20], "leav": 6, "less": 15, "let": 10, "level": [4, 5, 14, 16, 20, 21, 23], "librari": [2, 3, 4, 9, 13], "licens": 5, "life": 5, "lifecycl": [2, 3, 5, 6], "lifecyclenod": 3, "like": [1, 2, 3, 4, 5], "limit": [1, 4, 5, 11, 22], "line": [3, 7, 13], "linear": [11, 20, 22], "linear_acceler": 17, "link": [3, 5], "linter": 1, "list": [3, 5, 9, 10, 12, 13, 20, 24], "list_hardware_interfac": 10, "live": [1, 5], "load": [3, 6, 9, 10, 13], "load_configure_control": 9, "load_control": 10, "load_start_control": 9, "local": [1, 18], "logic": 3, "long": 4, "look": 5, "loop": [3, 5, 13, 20], "lovro": 5, "low": [4, 5], "ltd": 5, "machin": [3, 4], "macro": [2, 3, 13], "made": 5, "magyar": [4, 5], "mai": [14, 16, 21, 23], "main": [1, 3, 4, 5, 6, 8, 13, 24], "maintain": [1, 3, 4], "major": 0, "make": [1, 2, 4, 5, 24], "manag": [2, 4, 5, 7, 9, 13, 24], "mandatori": [3, 15, 17, 20], "mani": [5, 13], "manipul": [5, 20], "manual": [3, 4, 13, 24], "map": [8, 20], "mark": 2, "master": [1, 3, 4], "match": 3, "materi": 5, "matter": 1, "max": 3, "max_forc": 3, "maxim": 20, "mayb": 2, "md": 3, "mean": [1, 2, 8], "measur": [3, 8, 15], "mechan": 20, "medium": 4, "meet": 24, "member": [2, 13], "memori": [4, 13], "mentor": 4, "messag": [1, 4, 6, 9, 15, 17, 18, 20, 24], "method": [1, 2, 3, 13], "mid": 1, "mimic": 8, "mimick": 8, "min": 3, "min_forc": 3, "mind": [1, 13], "minim": 24, "mirror": 8, "miss": 4, "mobil": [5, 11, 22], "mock": 5, "mode": [4, 20], "modifi": 5, "modul": 4, "modular": [3, 5], "moment": 4, "monitor": 20, "more": [0, 1, 2, 3, 4, 8, 13], "most": [4, 13], "motiv": 4, "motor": [3, 4], "moveit": [5, 8], "moveit2": [4, 5], "movement": 4, "msg": [15, 17, 20], "much": [4, 13], "multi": [2, 3, 4, 5, 10], "multipl": [2, 3, 20], "multipli": 8, "must": 1, "my": 5, "my_state_broadcast": 18, "najjar": 5, "name": [1, 2, 3, 5, 6, 8, 9, 13, 15, 17, 18, 20], "namespac": [6, 12, 13, 18, 20], "nan": 20, "nathan": 5, "nav2": 5, "navig": 5, "necessari": 1, "need": [2, 3, 4, 5, 13], "net": 5, "new": [1, 5, 12, 20, 24], "next": [1, 20], "nobodi": 1, "node": [3, 6, 8, 9, 10, 13], "non": [1, 5, 15], "none": 13, "note": [1, 3, 10, 24], "now": [10, 13], "numer": 20, "numeric_limit": 20, "obei": 5, "object": 3, "odometri": [11, 22], "offer": [5, 6], "offlin": 8, "offset": [8, 20], "often": [4, 8, 13], "ok": 13, "on_activ": [2, 13], "on_configur": [2, 13], "on_deactiv": [2, 13], "onc": [4, 5], "one": [1, 2, 3, 4, 5, 13, 15, 24], "onli": [1, 2, 3, 4, 5, 6, 9, 13, 15, 20], "onlin": [5, 13], "open": [1, 20], "open_loop_control": 20, "openli": 5, "oper": 24, "opposit": 13, "optim": 2, "option": [2, 6, 8, 9, 13, 15, 18, 20], "orbit": 4, "orchestr": 4, "order": 19, "org": 4, "organ": [1, 5, 24], "orient": 17, "origin": [1, 5], "other": [1, 2, 3, 5, 13], "otherwis": 13, "our": [1, 3, 4, 5], "out": [2, 11], "output": [3, 4, 5, 9, 15, 17, 20], "over": [1, 4], "overcom": 24, "overrid": 13, "overview": 5, "p": 6, "pace": 1, "packag": [1, 2, 3, 10, 13, 15, 17, 19, 20, 24], "package_nam": 13, "parallel": [3, 8], "param": [3, 6, 8], "param_fil": 6, "paramet": [2, 5, 13], "parent": 13, "pars": [2, 7], "part": [1, 4, 5, 13], "parti": 5, "path": 5, "pendant": 5, "peopl": 1, "per": [4, 15], "perform": 5, "physic": [2, 3, 8], "picknik": 5, "pid": [20, 24], "ping": 1, "pipe": 8, "pipelin": 1, "pixel": 5, "pkg": 13, "place": [4, 13, 20], "plan": [5, 24], "plapp": 5, "pleas": [1, 24], "plu": 20, "plugin": [3, 13], "pluginlib": [2, 3, 13], "pluginlib_export_class": [2, 13], "pluginlib_export_plugin_description_fil": 13, "point": [3, 12, 13, 24], "port": 4, "posit": [2, 3, 5, 6, 9, 10, 12, 14, 16, 20, 21, 23], "position_control": [12, 20], "position_state_following_offset": 8, "position_velocity_acceleration_control": 20, "position_velocity_control": 20, "positionactuatorhardwar": 3, "possibl": [1, 3, 4, 13, 20], "potenti": [1, 13], "power": 5, "pr": 1, "practic": 5, "practition": 5, "pre": 1, "predefin": 20, "prefac": 5, "prefer": 4, "prefix": [13, 15, 17], "prepar": 13, "preprocessor": 13, "preset": 4, "previou": 24, "problem": [5, 24], "process": 13, "profil": 4, "programm": 0, "project": [0, 1, 24], "proper": [1, 20], "proport": 1, "propos": 24, "protect": [4, 13], "prove": 10, "provid": [3, 4, 5, 6, 8, 10, 12, 13, 20, 24], "proxi": 20, "public": 13, "publish": [4, 11, 15, 17, 18, 20, 22, 24], "pull": 4, "pure": [3, 20], "purpos": 4, "put": [1, 13], "py": 10, "qualiti": [0, 1], "question": 24, "queu": 20, "quick": 5, "quiet_nan": 20, "quintic": 20, "quit": 4, "random": 1, "rang": 3, "rate": [4, 20], "raw": 3, "rclcpp": 13, "rclcpp_lifecycl": 13, "re": 3, "reach": 20, "read": [1, 2, 3, 13, 18, 20], "readabl": 4, "readi": [5, 13], "readm": 3, "real": [2, 4, 5, 8, 13, 18, 20, 24], "realiz": [3, 5], "realtim": [5, 11, 20, 22, 24], "realtime_tool": [4, 24], "reason": 5, "receiv": [0, 2], "recent": 13, "recommend": [3, 5], "record": 5, "reduc": [1, 8], "refer": 3, "regard": 24, "regardless": 1, "regist": 2, "relat": [3, 4, 5], "releas": [1, 3, 5], "relev": [4, 24], "reli": 4, "reload": 9, "rememb": 13, "remov": 19, "renam": 19, "repeatedli": 1, "replac": 4, "repo": [1, 3], "report": [3, 4, 18, 24], "repositori": [3, 4, 7, 12, 24], "repres": 3, "reproduc": 24, "request": [2, 24], "requir": [1, 2, 3, 4, 13], "research": [0, 5], "reserv": 13, "resourc": 2, "resourcemanag": 2, "respect": [4, 5], "rest_syntax": 1, "result": [1, 3], "return": 13, "return_typ": 13, "reus": 5, "review": [1, 4, 24], "rewrit": [4, 24], "rich": 4, "right": 4, "rigid": 2, "rm": 3, "ro": [0, 1, 3, 4, 6, 8, 9, 19, 24], "roadmap": [4, 24], "robot": [0, 2, 4, 10, 11, 15, 22, 24], "robothw": 2, "robust": 20, "root": 13, "ros1": 5, "ros2": [3, 4, 5, 6, 9, 10, 13, 24], "ros2_control": [1, 3, 5, 6, 8, 10, 13], "ros2_control_demo": [1, 3, 24], "ros2_control_demo_bringup": 10, "ros2_control_demo_hardwar": [3, 10], "ros2_control_nod": 3, "ros2_control_test_asset": 13, "ros2_control_test_nod": 10, "ros2controlcli": 3, "ros__paramet": 20, "ros_control": [4, 5, 24], "ros_distro": 1, "rosin": 0, "rrbot": [3, 10], "rrbot_system_multi_interfac": 10, "rrbot_tcp": 3, "rrbotforcetorquesensor1d": 3, "rrbotgripp": 3, "rrbotsystempositiononli": 3, "rrbotsystempositiononlyhardwar": [2, 3], "rsi": 3, "rule": 13, "run": [4, 5, 6, 9], "rune": 5, "safe": [2, 11, 13, 20, 22], "safeti": 4, "same": [1, 3, 4, 15], "satisfi": 1, "scale": 5, "scenario": 4, "scope": 1, "script": [3, 4, 13], "search": 13, "second": [4, 9, 13, 24], "section": [1, 2, 13], "see": [1, 2, 3, 10, 13, 15, 17, 20], "segment": 20, "semant": [5, 15, 17], "semantic_compon": 4, "semi": 1, "sens": [2, 3, 15], "sensibl": 2, "sensor": [2, 3, 4, 8, 12], "sensor_msg": 17, "sensor_nam": [15, 17], "sensorinterfac": 2, "sent": 4, "separ": [1, 2, 3], "serv": [1, 3, 4], "server": 20, "servic": [3, 4, 6], "set": [1, 2, 4, 5, 8, 9, 14, 16, 18, 20, 21, 23], "set_controller_st": 10, "set_stat": 9, "setup": [3, 4, 13], "share": [5, 13], "shell": 13, "short": [1, 13, 24], "should": [1, 2, 4, 5, 6, 9, 10, 13, 18], "show": [1, 3, 5, 6, 9], "showcas": [4, 5], "shown": 5, "side": [3, 4, 5], "signal": 4, "similar": [1, 3, 5], "similarli": 20, "simpl": [3, 4, 5, 10, 13, 19], "simplecontrollermanag": 4, "simpli": [5, 20], "simplifi": [13, 24], "simul": [4, 8, 10], "singl": 5, "six": 15, "size": 4, "skeleton": 3, "skill": 4, "smooth": 24, "snake_cas": 13, "snippet": 2, "so": [3, 13], "softwar": [0, 3], "solut": [2, 5], "some": [1, 4, 5, 20, 24], "sort": [12, 13], "sourc": [1, 3, 5, 13], "space": [11, 20], "specif": [4, 20], "specifi": [13, 20], "sphinx": 1, "spin": 9, "spin_tim": 9, "spline": 20, "squash": 1, "src": [3, 13], "srv": 3, "stabl": [1, 4], "stack": [3, 5], "stage": 1, "standard": [1, 2, 3, 4, 5, 9, 12, 15], "start": [1, 2, 5, 6, 9, 10, 13, 20, 24], "startup": 6, "state": [2, 3, 4, 5, 8, 9, 10, 12, 13, 15, 18, 20], "state_interfac": [3, 20], "state_interface_configur": [2, 13], "state_publish_r": 20, "statu": [4, 9, 20], "std": 20, "steer": 22, "step": [13, 20, 24], "still": [1, 2, 3], "stogl": 5, "stop": [2, 5, 6, 9, 10, 11, 22], "stopped_velocity_toler": 20, "store": 13, "strategi": [2, 20], "stream": [2, 5], "stretch": 4, "strict": 9, "string": [2, 8, 13, 18, 20], "struct": 4, "structur": [3, 4, 13, 20], "studi": 5, "style": [1, 13], "submit": [1, 5], "success": 13, "suffici": [1, 15], "suitabl": [2, 5], "summari": [1, 5, 24], "support": [0, 2, 3, 5, 8, 9, 13, 20, 24], "sure": [1, 4, 24], "surround": 2, "switch": [4, 9], "switch_control": 10, "switch_timeout": 9, "sync": 1, "system": [2, 3, 4, 5, 10, 20, 24], "systemcompon": 5, "systeminterfac": [2, 8], "s\u00f8e": 5, "t": [1, 6], "tag": [3, 13, 24], "take": [2, 4, 13, 18], "talk": 5, "target": [1, 12, 13, 20], "task": [4, 5, 11], "tcp_fts_sensor": 3, "teach": 5, "teleoper": 5, "templat": [10, 13, 20], "term": [20, 24], "test": [1, 4, 8, 10, 13], "test_control": 9, "test_controller_nam": 9, "test_depend": 13, "test_load_": 13, "thank": 1, "thei": [1, 2, 3, 4, 5, 8, 9, 12, 13, 20], "them": [1, 3, 4, 6, 13, 18], "theori": [3, 24], "therefor": [4, 13, 18, 20], "thi": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 13, 14, 15, 16, 18, 19, 20, 21, 23, 24], "thing": 1, "thoma": 1, "those": [1, 2, 3, 4, 8, 13, 15, 20], "thread": 4, "three": [1, 2, 3, 13], "through": [3, 4, 9, 11, 12, 13, 20, 24], "time": [1, 2, 4, 5, 6, 8, 9, 11, 13, 15, 20, 24], "timeout": [6, 9, 22], "tip": 5, "titl": 1, "togeth": 3, "toler": 20, "toni": 5, "took": 2, "tool": [2, 4, 5], "toolkit": 24, "top": 5, "topic": [4, 5, 20], "torqu": [3, 12], "traceabl": 1, "track": [3, 24], "tracker": 24, "traction": 22, "trajectori": [5, 12, 24], "trajectory_msg": 20, "translat": [11, 22], "transmiss": 3, "tree": 4, "tri": 20, "trick": 4, "tricycl": [5, 12, 22], "trigger": 4, "trivial": [1, 8], "true": [19, 20], "turtl": 19, "tutori": 1, "twist": [11, 22], "two": [1, 3, 4, 6, 13, 15], "txt": 13, "type": [1, 2, 3, 5, 6, 9, 12, 13, 15, 17], "typic": [4, 20], "u": [1, 6], "unclaim": [9, 10], "unconfigur": 6, "under": [0, 5, 13, 24], "understand": [1, 4], "unifi": 5, "union": 0, "uniqu": 13, "unit": 4, "univers": [1, 4, 5], "unload": [3, 6, 9], "unreleas": 24, "until": 6, "up": [1, 5, 10], "updat": [2, 3, 4, 13], "upgrad": 5, "ur": 5, "urdf": 2, "us": [1, 2, 3, 4, 5, 8, 9, 12, 14, 15, 16, 17, 18, 19, 21, 23, 24], "usabl": 3, "usag": [5, 6, 9], "use_local_top": 18, "user": 4, "usual": [2, 8, 13], "util": 5, "valu": [2, 3, 4, 8, 13, 20], "valv": 3, "variabl": [2, 4, 13], "variou": 4, "vc": 3, "vector": 13, "veloc": [2, 3, 5, 10, 12, 20, 21, 23], "velocity_control": 12, "veri": [1, 2, 4], "version": [1, 4], "via": 3, "virtual": 5, "visibility_control": 13, "visibl": 13, "visit": 3, "vivid": 1, "wa": [4, 13], "wai": [1, 13, 15], "wait": [6, 9], "want": 3, "waypoint": [5, 12, 20], "we": [1, 4, 5], "wednesdai": 24, "weekend": 1, "welcom": 1, "well": [5, 9, 20], "were": 4, "wg": 24, "wget": 3, "what": 5, "wheel": 11, "when": [1, 2, 3, 4, 8, 9, 13, 20], "where": [1, 4, 13], "which": [2, 3, 4, 5, 9, 11, 13, 15, 17, 20, 22], "while": [3, 4, 5, 10, 20], "wide": 24, "wikipedia": [3, 24], "wild": 5, "window": 13, "without": [2, 3, 8, 13], "work": [1, 4, 5, 11, 13, 14, 16, 20, 21, 22, 23, 24], "workspac": [3, 13], "world": [6, 8], "wrap": 20, "wrapper": [15, 17], "wrenchstamp": 15, "write": [2, 3, 4, 5, 12], "written": 13, "x": [11, 15, 17, 22], "xacro": 3, "xml": [2, 13], "y": 15, "yaml": [3, 4, 20], "yet": 20, "yield": 20, "you": [1, 2, 3, 5, 8, 13, 24], "your": [1, 2, 5, 8, 13, 24], "z": [11, 15, 22], "zeleank": 5, "zelenak": 5, "\u0161togl": [4, 5]}, "titles": ["Acknowledgements", "Pull Requests", "Differences to ros_control (ROS1)", "Getting Started", "Project Ideas for GSoC 2022", "Resources", "Controller Manager", "API Documentation", "Fake Components", "Command Line Interface", "Demos", "diff_drive_controller", "ros2_controllers", "Writing a new controller", "effort_controllers", "Force Torque Sensor Broadcaster", "forward_command_controller", "IMU Sensor Broadcaster", "joint_state_broadcaster", "joint_state_controller", "joint_trajectory_controller", "position_controllers", "tricycle_controller", "velocity_controllers", "Welcome to the ros2_control documentation - Foxy!"], "titleterms": {"": [2, 20], "02": 5, "05": 5, "06": 5, "07": 5, "10": 5, "12": 5, "13": 5, "2021": 5, "2022": [4, 5], "2023": 5, "5": 5, "about": 20, "access": 2, "acknowledg": 0, "add": 4, "api": 7, "architectur": 3, "asynchron": 4, "avail": 12, "best": 12, "broadcast": [12, 15, 17], "ci": 1, "class": 2, "command": [9, 11, 18, 22], "commun": 24, "compil": 3, "compon": [2, 3, 4, 8], "concept": 7, "confer": 5, "configur": 1, "control": [2, 3, 4, 6, 12, 13, 20], "core": 7, "demo": [4, 10], "descript": 3, "detail": 20, "develop": 24, "diagram": 5, "diff_drive_control": 11, "differ": 2, "document": [1, 7, 24], "effort_control": 14, "extern": 13, "fake": 8, "featur": [4, 7, 11, 20, 22], "forc": 15, "forward_command_control": 16, "foxi": 24, "fr": 5, "framework": 3, "from": 4, "function": 7, "gener": 8, "get": 3, "gsoc": 4, "guid": 2, "guidelin": 12, "hardwar": [2, 3, 4, 11, 14, 16, 18, 20, 21, 23], "helper": 6, "idea": 4, "imag": 5, "imu": 17, "industri": 5, "interfac": [2, 3, 9, 11, 14, 16, 18, 20, 21, 23], "joint": [8, 20], "joint_state_broadcast": 18, "joint_state_control": 19, "joint_trajectory_control": 20, "jointtrajectorycontrol": 20, "line": 9, "list_control": 9, "list_controller_typ": 9, "list_hardware_interfac": 9, "load_control": 9, "manag": [3, 6], "meetup": 5, "merg": 1, "migrat": 2, "mission": 4, "mode": 10, "munich": 5, "new": 13, "nomenclatur": 12, "organ": 10, "organis": 24, "other": [11, 20, 22], "overview": 24, "paramet": [8, 15, 17, 18, 20], "pariti": 4, "per": 8, "position_control": 21, "practic": 12, "present": 5, "process": 1, "project": 4, "pull": 1, "py": 6, "refer": 13, "reload_controller_librari": 9, "repositori": [1, 10], "represent": 20, "request": 1, "resourc": [3, 5], "ro": 5, "robot": [3, 5], "robothardwar": 2, "ros1": [2, 4], "ros2": 20, "ros2_control": [2, 4, 12, 24], "ros_control": 2, "roscon": 5, "rosdevdai": 5, "rule": 1, "run": 3, "script": 6, "semant": 4, "sensor": [15, 17], "set_controller_st": 9, "spawner": 6, "special": 20, "start": 3, "structur": [1, 2], "support": 4, "switch": 10, "switch_control": 9, "system": 8, "tbd": 20, "torqu": 15, "trajectori": 20, "tricycle_control": 22, "tutori": 4, "type": [11, 14, 16, 18, 20, 21, 23], "unload_control": 9, "unspawn": 6, "urdf": 3, "us": [13, 20], "user": 3, "veloc": [11, 22], "velocity_control": 23, "version": 20, "weekli": 5, "welcom": 24, "world": 5, "write": [1, 13], "your": 3}}) \ No newline at end of file +Search.setIndex({"alltitles": {"2021-05 ROSCon Fr 2021": [[5, "roscon-fr-2021"]], "2021-06 ROSDevDay 2021": [[5, "rosdevday-2021"]], "2021-10 ROS World 2021": [[5, "ros-world-2021"]], "2021-10-07 Weekly Robotics Meetup #13": [[5, "weekly-robotics-meetup-13"]], "2022-06 ROSCon Fr 2022": [[5, "roscon-fr-2022"]], "2022-10 ROSCon 2022": [[5, "roscon-2022"]], "2022-12 ROS-Industrial Conference 2022": [[5, "ros-industrial-conference-2022"]], "2023-02 ROS Meetup Munich #5": [[5, "ros-meetup-munich-5"]], "API Documentation": [[7, "api-documentation"]], "Acknowledgements": [[0, "acknowledgements"]], "Add support for hardware semantic components": [[4, "add-support-for-hardware-semantic-components"]], "Architecture": [[3, "architecture"]], "Asynchronous Control Components": [[4, "asynchronous-control-components"]], "Available Broadcasters": [[12, "available-broadcasters"]], "Available Controllers": [[12, "available-controllers"]], "CI configuration": [[1, "ci-configuration"]], "Command Line Interface": [[9, "command-line-interface"]], "Commands": [[18, "commands"]], "Compiling": [[3, "compiling"]], "Concepts": [[7, "concepts"]], "Controller Manager": [[3, "controller-manager"], [6, "controller-manager"]], "Controller Migration": [[2, "controller-migration"]], "Controllers": [[3, "controllers"], [12, "id1"]], "Controller\u2019s Access to Hardware": [[2, "controller-s-access-to-hardware"]], "Core functionalities": [[7, "core-functionalities"]], "Demos": [[10, "demos"]], "Details about parameters": [[20, "details-about-parameters"]], "Development Organisation and Communication": [[24, "development-organisation-and-communication"]], "Diagrams": [[5, "diagrams"]], "Differences to ros_control (ROS1)": [[2, "differences-to-ros-control-ros1"]], "Fake Components": [[8, "fake-components"]], "Feature-parity for controllers from ROS1": [[4, "feature-parity-for-controllers-from-ros1"]], "Features": [[7, "features"]], "Force Torque Sensor Broadcaster": [[15, "force-torque-sensor-broadcaster"]], "Generic System": [[8, "generic-system"]], "Getting Started": [[3, "getting-started"]], "Guidelines and Best Practices": [[12, "guidelines-and-best-practices"]], "Hardware Components": [[3, "hardware-components"]], "Hardware Description in URDF": [[3, "hardware-description-in-urdf"]], "Hardware Interfaces": [[2, "hardware-interfaces"]], "Hardware Structures - classes": [[2, "hardware-structures-classes"]], "Hardware interface type": [[11, "hardware-interface-type"], [14, "hardware-interface-type"], [16, "hardware-interface-type"], [18, "hardware-interface-type"], [20, "hardware-interface-type"], [21, "hardware-interface-type"], [23, "hardware-interface-type"]], "Helper scripts": [[6, "helper-scripts"]], "IMU Sensor Broadcaster": [[17, "imu-sensor-broadcaster"]], "Images": [[5, "images"]], "Migration Guide to ros2_control": [[2, "migration-guide-to-ros2-control"]], "Mission-Control for ros2_control": [[4, "mission-control-for-ros2-control"]], "Mode switching demo": [[10, "mode-switching-demo"]], "Nomenclature": [[12, "nomenclature"]], "Other features": [[11, "other-features"], [20, "other-features"], [22, "other-features"]], "Overview": [[24, "overview"]], "Parameters": [[8, "parameters"], [15, "parameters"], [17, "parameters"], [18, "parameters"]], "Per-joint Parameters": [[8, "per-joint-parameters"]], "Presentations": [[5, "presentations"]], "Project Ideas for GSoC 2022": [[4, "project-ideas-for-gsoc-2022"]], "Pull Requests": [[1, "pull-requests"]], "ROS2 interface of the controller": [[20, "ros2-interface-of-the-controller"]], "Repository organization": [[10, "repository-organization"]], "Repository structure and CI configuration": [[1, "repository-structure-and-ci-configuration"]], "Resource Manager": [[3, "resource-manager"]], "Resources": [[5, "resources"]], "RobotHardware to Components": [[2, "robothardware-to-components"]], "Rules for the repositories and process of merging pull requests": [[1, "rules-for-the-repositories-and-process-of-merging-pull-requests"]], "Running the Framework for Your Robot": [[3, "running-the-framework-for-your-robot"]], "Specialized versions of JointTrajectoryController (TBD in \u2026)": [[20, "specialized-versions-of-jointtrajectorycontroller-tbd-in"]], "Trajectory representation": [[20, "trajectory-representation"]], "Tutorials and Demos for ros2_control": [[4, "tutorials-and-demos-for-ros2-control"]], "Useful External References": [[13, "useful-external-references"]], "User Interfaces": [[3, "user-interfaces"]], "Using Joint Trajectory Controller(s)": [[20, "using-joint-trajectory-controller-s"]], "Velocity commands": [[11, "velocity-commands"], [22, "velocity-commands"]], "Welcome to the ros2_control documentation - Foxy!": [[24, "welcome-to-the-ros2-control-documentation-foxy"]], "Writing a new controller": [[13, "writing-a-new-controller"]], "Writing documentation": [[1, "writing-documentation"]], "diff_drive_controller": [[11, "diff-drive-controller"]], "effort_controllers": [[14, "effort-controllers"]], "forward_command_controller": [[16, "forward-command-controller"]], "joint_state_broadcaster": [[18, "joint-state-broadcaster"]], "joint_state_controller": [[19, "joint-state-controller"]], "joint_trajectory_controller": [[20, "joint-trajectory-controller"]], "list_controller_types": [[9, "list-controller-types"]], "list_controllers": [[9, "list-controllers"]], "list_hardware_interfaces": [[9, "list-hardware-interfaces"]], "load_controller": [[9, "load-controller"]], "position_controllers": [[21, "position-controllers"]], "reload_controller_libraries": [[9, "reload-controller-libraries"]], "ros2_controllers": [[12, "ros2-controllers"]], "set_controller_state": [[9, "set-controller-state"]], "spawner.py": [[6, "spawner-py"]], "switch_controllers": [[9, "switch-controllers"]], "tricycle_controller": [[22, "tricycle-controller"]], "unload_controller": [[9, "unload-controller"]], "unspawner.py": [[6, "unspawner-py"]], "velocity_controllers": [[23, "velocity-controllers"]]}, "docnames": ["doc/acknowledgements/acknowledgements", "doc/contributing/contributing", "doc/differences_to_ros1/differences_to_ros1", "doc/getting_started/getting_started", "doc/project_ideas", "doc/resources/resources", "doc/ros2_control/controller_manager/doc/userdoc", "doc/ros2_control/doc/index", "doc/ros2_control/hardware_interface/doc/fake_components_userdoc", "doc/ros2_control/ros2controlcli/doc/userdoc", "doc/ros2_control_demos/doc/index", "doc/ros2_controllers/diff_drive_controller/doc/userdoc", "doc/ros2_controllers/doc/controllers_index", "doc/ros2_controllers/doc/writing_new_controller", "doc/ros2_controllers/effort_controllers/doc/userdoc", "doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc", "doc/ros2_controllers/forward_command_controller/doc/userdoc", "doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc", "doc/ros2_controllers/joint_state_broadcaster/doc/userdoc", "doc/ros2_controllers/joint_state_controller/doc/userdoc", "doc/ros2_controllers/joint_trajectory_controller/doc/userdoc", "doc/ros2_controllers/position_controllers/doc/userdoc", "doc/ros2_controllers/tricycle_controller/doc/userdoc", "doc/ros2_controllers/velocity_controllers/doc/userdoc", "index"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.todo": 2}, "filenames": ["doc/acknowledgements/acknowledgements.rst", "doc/contributing/contributing.rst", "doc/differences_to_ros1/differences_to_ros1.rst", "doc/getting_started/getting_started.rst", "doc/project_ideas.rst", "doc/resources/resources.rst", "doc/ros2_control/controller_manager/doc/userdoc.rst", "doc/ros2_control/doc/index.rst", "doc/ros2_control/hardware_interface/doc/fake_components_userdoc.rst", "doc/ros2_control/ros2controlcli/doc/userdoc.rst", "doc/ros2_control_demos/doc/index.rst", "doc/ros2_controllers/diff_drive_controller/doc/userdoc.rst", "doc/ros2_controllers/doc/controllers_index.rst", "doc/ros2_controllers/doc/writing_new_controller.rst", "doc/ros2_controllers/effort_controllers/doc/userdoc.rst", "doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.rst", "doc/ros2_controllers/forward_command_controller/doc/userdoc.rst", "doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.rst", "doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.rst", "doc/ros2_controllers/joint_state_controller/doc/userdoc.rst", "doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.rst", "doc/ros2_controllers/position_controllers/doc/userdoc.rst", "doc/ros2_controllers/tricycle_controller/doc/userdoc.rst", "doc/ros2_controllers/velocity_controllers/doc/userdoc.rst", "index.rst"], "indexentries": {}, "objects": {}, "objnames": {}, "objtypes": {}, "terms": {"": [0, 1, 3, 4, 5, 10, 13, 24], "0": [3, 8, 18, 20], "01": 20, "03": 20, "05": [20, 24], "1": [1, 3, 4, 5, 8, 13], "100": 3, "11": 24, "12": 24, "171": 20, "175": 4, "2": [1, 3, 5, 8], "20": 20, "2020": 0, "2024": 24, "23": 3, "3": [3, 4], "302": 4, "303": 4, "304": 4, "350": 4, "3rd": 5, "40": 24, "43": 3, "45": 4, "50": [3, 20], "500": 4, "6d": 15, "732287": 0, "81": 4, "9": 4, "A": [3, 5, 13, 20], "As": [1, 13], "At": 13, "BY": 5, "Be": 1, "By": 20, "For": [1, 3, 4, 5, 8, 13, 20], "If": [1, 2, 3, 6, 13, 15, 20, 24], "In": [2, 3, 4, 5, 13], "It": [1, 2, 3, 4, 6, 15], "Its": 24, "Not": 20, "On": 3, "One": 5, "Such": 4, "That": [1, 13], "The": [0, 2, 3, 4, 5, 8, 9, 10, 11, 12, 13, 15, 17, 18, 19, 20, 22, 24], "There": [3, 6, 13], "These": [14, 16, 21, 23], "To": [1, 2, 3, 24], "With": 5, "_control": 5, "_interfac": 2, "abi": 1, "abl": 1, "about": [4, 8, 24], "abov": [2, 20], "abstract": [3, 5], "acceler": [5, 10, 11, 12, 20, 22], "accept": [1, 13, 14, 16, 21, 23], "access": [3, 4, 5, 6, 8, 13], "accord": [12, 20], "aceleromet": 4, "achiev": [14, 16, 21, 23], "action": 20, "action_monitor_r": 20, "activ": [1, 2, 3, 9], "actuat": [2, 3, 4, 8], "actuatorinterfac": 2, "ad": [1, 4, 8, 13, 18], "add": [1, 2, 13], "addit": [2, 4], "addition": [4, 24], "address": [1, 4], "adjust": 9, "admitt": 5, "adopt": 4, "advantag": 8, "afraid": 1, "after": [1, 11, 13, 22], "again": 10, "against": 1, "agnost": 5, "agreement": 0, "aka": 5, "all": [1, 2, 3, 4, 5, 8, 10, 13, 18, 20], "allow": [2, 20], "allow_partial_joints_go": 20, "alreadi": [9, 13, 20], "also": [1, 2, 3, 4, 5, 13], "altern": [3, 20], "although": 4, "alwai": 1, "ament": 13, "ament_add_gmock": 13, "ament_cmak": 13, "ament_cmake_gmock": 13, "ament_export_librari": 13, "ament_packag": 13, "an": [1, 2, 3, 4, 5, 8, 9, 13, 20], "andi": 5, "angular": [11, 22], "angular_veloc": 17, "ani": [2, 3, 5, 13], "announc": 24, "anoth": 4, "answer": 24, "anymor": 2, "api": [1, 4], "appli": 9, "applic": [1, 3, 5, 6], "approach": 2, "appropri": 4, "approv": 1, "ar": [1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 13, 15, 17, 18, 20, 22, 24], "architectur": [4, 5], "arduino": 3, "argument": [6, 9], "arm": 5, "around": [4, 15, 17], "arrai": 18, "asap": 9, "ask": 13, "assign": 13, "assum": 3, "assur": 0, "attempt": 20, "author": 5, "auto": 3, "automat": [3, 11, 22], "autonom": 5, "avail": [2, 3, 5, 9, 10, 13, 18, 20], "avoid": [1, 13], "awar": 1, "ax": 15, "axi": [4, 15], "back": 1, "background": 1, "base": [3, 5, 9, 11, 13, 22], "base_link": 22, "bash": 13, "basic": [2, 3, 4, 5, 13], "becaus": 20, "becom": 5, "been": [10, 19], "befor": [1, 2, 6, 13], "behavior": [4, 8], "below": 5, "benc": [4, 5], "benchmark": 4, "best": [5, 13], "better": 5, "between": [3, 4, 19, 20], "binari": 1, "board": 3, "bodi": 11, "boolean": [8, 18, 20], "boost": 8, "booth": 5, "both": [4, 5], "bottom": 13, "box": 2, "brake": 1, "branch": 1, "broadcast": [8, 18, 19], "brook": 5, "buffer": [4, 24], "bug": 24, "build": [1, 13], "built": 24, "c": [4, 6, 9, 13], "calcul": 3, "call": [2, 3, 13], "can": [1, 2, 3, 4, 5, 7, 8, 13, 15, 19, 20, 24], "capabl": [3, 4], "care": [2, 4, 13], "case": [2, 4, 5, 13, 20, 24], "caus": 20, "cc": 5, "cell": [2, 15], "certain": [14, 16, 21, 23], "chain": 5, "chanc": 1, "chang": [1, 2, 3, 5, 9, 13, 20], "channel": 3, "check": [1, 2, 3, 4, 8, 10, 13, 20, 24], "choos": 2, "chosen": 3, "claim": 10, "class": [3, 5, 9, 13], "class_list_macro": 13, "clean": [1, 4], "cli": [3, 7, 9], "clock": 20, "close": 13, "cm": 3, "cmake": 13, "cmakelist": 13, "code": [1, 2, 4, 5, 13], "cokela": 1, "colcon": 13, "collabor": 1, "collect": [5, 14, 16, 21, 23], "com": [3, 4], "combin": [2, 8, 20], "combinedrobothardwar": 2, "command": [2, 3, 4, 5, 7, 8, 10, 12, 13, 14, 16, 20, 21, 23, 24], "command_interfac": [3, 20], "command_interface_configur": [2, 13], "comment": 1, "commit": 1, "common": [3, 4, 12, 24], "commun": [2, 3, 4, 5], "compani": [0, 5], "company_nam": 5, "compar": [3, 4, 5], "compass": 4, "compat": [1, 2, 5], "compil": 13, "complet": [3, 12], "complex": [3, 4, 5], "compon": [0, 5, 6, 7, 11, 15, 17, 22, 24], "composit": [2, 5], "comprehens": 10, "comput": [11, 22], "concept": [4, 5, 8, 10], "conductor": 4, "configur": [2, 3, 4, 5, 6, 9, 10, 13, 20], "configure_control": 9, "configure_start_control": 9, "conflict": [2, 3, 4], "connect": 3, "consid": [1, 9], "consist": [4, 20, 24], "constant": 2, "constraint": [13, 20], "constructor": [2, 13], "consult": 5, "contact": 5, "content": 13, "continu": 20, "contribut": [0, 1, 5], "contributor": 1, "control": [5, 7, 8, 9, 10, 11, 14, 15, 16, 17, 18, 19, 21, 22, 23, 24], "control_msg": [20, 24], "control_toolbox": [4, 24], "controller_interfac": [3, 4, 9, 13, 15, 17], "controller_manag": [3, 4, 6, 9, 13, 20], "controller_manager_msg": 3, "controller_manager_timeout": 6, "controller_nam": [6, 9, 13], "controller_name_namespac": 13, "controller_name_packag": 13, "controller_typ": 6, "controllerinterfac": [2, 3, 9, 13], "controllermanag": 2, "controllernam": 13, "convent": 1, "copi": 13, "core": 1, "correct": [1, 2, 20], "correspond": [8, 13, 24], "could": [3, 5, 13, 20], "cowboi": 1, "cpp": [2, 13], "creat": [2, 3, 5, 8, 13], "critic": [2, 4], "cross": 2, "cubic": 20, "current": [1, 4, 9, 20], "custom": [3, 8, 15], "custom_interface_with_following_offset": 8, "cycl": 5, "daemon": 9, "dai": 1, "data": [2, 3, 4, 8, 19], "dc": 3, "deactiv": [2, 3], "deal": 3, "debug": 8, "decid": 2, "declar": [2, 13], "deeper": 5, "default": [2, 3, 8, 18, 20], "defin": [2, 3, 4, 8, 12, 13, 15, 17, 18, 20], "definit": [3, 12, 13, 15], "degrad": 4, "delv": 5, "demo": 5, "demonstr": 10, "deni": [4, 5], "depend": [1, 3, 13, 20], "deprec": [9, 12], "deriv": 3, "describ": [2, 3], "descript": [1, 2, 5, 13], "design": [2, 3, 4, 5, 24], "desir": [4, 20], "detail": [1, 2, 3, 8, 13], "develop": [1, 5, 8, 10, 13], "deviat": 20, "diff_drive_control": [4, 9], "diffdrivecontrol": 9, "differ": [3, 4, 5, 14, 15, 16, 21, 23], "differenti": [11, 12, 19, 24], "difficulti": 4, "direct": [1, 2, 4, 13], "directli": [3, 24], "directori": 13, "discontinu": 20, "discourag": 20, "discours": 24, "discoveri": 9, "discuss": [1, 5, 24], "distribut": [1, 24], "do": [1, 2, 3, 4, 5, 6, 13, 20], "doc": 24, "document": [3, 4, 5, 8, 19], "doe": [2, 13, 20], "doesn": 1, "dof": 3, "don": 1, "done": [5, 13], "doubl": [4, 8, 20], "down": 5, "doxygen": 7, "dr": 5, "draft": 4, "drawback": [2, 24], "drive": [11, 12, 22, 24], "driver": [3, 5], "dynam": [3, 13], "dynamic_joint_st": 18, "e": [1, 2, 3, 4, 5, 8, 13, 14, 15, 16, 18, 20, 21, 23, 24], "each": [1, 3, 4], "earlier": 4, "easi": 4, "easiest": 13, "edit": 5, "effector": 3, "effort": [2, 12, 14, 16, 20], "effort_control": 12, "eg": 20, "either": 5, "els": 1, "emerg": 5, "empti": 13, "enabl": [2, 3, 4, 5, 10, 15], "encod": 3, "encourag": 1, "end": [2, 3, 13, 20], "enforc": [2, 20], "engin": 13, "enjoi": 13, "ensur": [2, 5], "entri": [3, 13], "entropi": 1, "environ": [1, 3, 5], "envis": 4, "equival": 2, "error": [3, 4, 13, 20], "especi": [1, 2], "essenti": 4, "etc": 24, "eu": 0, "european": 0, "even": 8, "event": 5, "everi": 24, "everyth": [4, 13], "exact": 13, "exactli": 1, "exampl": [2, 3, 4, 5, 8, 9, 10, 15, 20, 24], "example_interfac": 15, "example_nam": 15, "example_param_read_for_sec": 3, "example_param_write_for_sec": 3, "excel": 2, "except": 1, "exchang": [2, 4], "execut": [3, 13, 20], "executor": 3, "exercis": 1, "exist": [2, 3, 4, 6, 13], "exit": [6, 9], "expect": [1, 4, 20], "experi": 1, "explan": 3, "explicit": [5, 20], "explicitli": 1, "export": [3, 13], "export_": 2, "expos": 5, "extend": [2, 3, 4, 13], "extern": [2, 3, 4, 8], "extra": [5, 18], "extra_joint": 18, "extract": [2, 11, 22], "factor": 5, "fail": 1, "failur": 4, "fake": 7, "fake_sensor_command": 8, "fals": [8, 18, 20], "familiar": [4, 24], "featur": [1, 5, 8, 24], "feedback": [11, 20, 22], "feedforward": 20, "few": [4, 5], "figur": 3, "file": [2, 3, 4, 5, 6, 8, 13, 20], "final": [2, 5], "find": 1, "find_packag": 13, "fine": 13, "first": [1, 2, 13], "fiveai": 5, "fix": [1, 2], "fixup": 1, "flag": [13, 20], "flexibl": 3, "focu": 5, "focus": [4, 5], "folder": [3, 5, 13], "follow": [0, 1, 2, 3, 4, 8, 9, 10, 12, 13, 20, 24], "follow_joint_trajectori": 20, "followjointtrajectori": 20, "forc": [3, 5, 9, 12], "forcetorquesensor": 15, "forcetorquesensor1dhardwar": 3, "forget": 2, "fork": 1, "form": 4, "format": 4, "forward": [5, 8, 12, 20, 24], "forward_command_controller_acceler": 10, "forward_command_controller_illegal1": 10, "forward_command_controller_illegal2": 10, "forward_command_controller_posit": 10, "forward_command_controller_veloc": 10, "forwardcommandcontrol": 3, "found": [3, 7, 13, 19, 20, 24], "foxi": [1, 3, 5], "frame": [15, 17], "frame_id": [3, 15, 17], "framework": [1, 2, 4, 5, 6, 8, 9, 10, 12, 13, 24], "frequenc": 4, "friend": 13, "friendli": 3, "from": [0, 1, 2, 3, 5, 6, 8, 9, 11, 13, 15, 17, 20, 22, 24], "ft": 15, "full": 13, "function": [1, 2, 3, 4, 5], "fund": 0, "further": 13, "furthermor": 5, "futur": [1, 5], "g": [1, 2, 3, 4, 5, 8, 13, 14, 16, 18, 21, 23, 24], "galact": 1, "gazebo": 4, "gener": [4, 5, 13, 20, 24], "geometry_msg": 15, "get": [5, 24], "github": [3, 4, 7, 12, 24], "githubusercont": 3, "give": [1, 3, 5, 24], "given": [3, 20], "gmock": 4, "gmt": 24, "go": [5, 13], "goal": [4, 5, 20, 24], "goal_tim": 20, "good": [1, 4], "googl": 24, "gpio": 4, "grace": 4, "grant": 0, "granular": 2, "great": 13, "green": 1, "gripper": [2, 3, 8], "gripper_joint": 3, "group": [4, 20, 24], "guarante": 20, "guard": 13, "gui": 10, "guid": [5, 13], "guidelin": 1, "gyroscop": 4, "h": [6, 9, 13, 19], "ha": [0, 1, 3, 4, 5, 13, 19], "had": 2, "hand": 3, "handl": [1, 2, 4, 5, 20], "handler": 5, "hard": [2, 4], "hardwar": [5, 6, 8, 10, 12, 13, 22, 24], "hardware_interfac": [2, 3, 8, 12, 13], "hardwareinfo": 2, "have": [1, 2, 3, 4, 8, 10, 13, 20], "header": [1, 13], "heartbeat": 4, "heavi": 5, "help": [1, 6, 9, 13], "here": [2, 7, 13, 19, 20], "hereund": 3, "hidden": 9, "high": 4, "horizon": 0, "hot": 5, "hour": 4, "how": [1, 4, 5, 13], "howev": [4, 6], "hpp": 13, "html": 1, "http": [0, 1, 3, 4], "humanoid": 3, "hw_if_effort": 12, "hw_if_posit": 12, "hw_if_veloc": 12, "hydraul": 20, "hz": 4, "i": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17, 20, 21, 22, 23, 24], "id8": 1, "idea": 24, "ideal": [5, 8], "identifi": 4, "ifndef": 13, "ignit": 4, "ignor": [11, 20, 22], "immedi": 1, "impact": 1, "implement": [2, 3, 4, 5, 8, 10, 11, 12, 13, 20, 22, 24], "import": [3, 13, 20], "importantli": 13, "imposs": 2, "improv": 4, "imu": [4, 12], "imusensor": 17, "inc": 5, "includ": [2, 4, 9, 13], "increas": 1, "inde": 10, "independ": 3, "individu": 13, "industri": [0, 3, 4], "influenc": 5, "info": 1, "inform": [0, 8, 13, 24], "ingredi": 5, "init": [2, 13], "initi": [2, 13], "inject": 5, "innov": 0, "input": [3, 4, 5, 11, 20, 22], "insert": 5, "insid": 8, "instal": [3, 13], "instanc": 4, "instant": 20, "instead": [3, 8, 19, 20], "institut": 0, "integr": [3, 4, 5, 8, 10, 20, 24], "intent": [1, 8], "interact": [3, 5, 6, 9], "interfac": [4, 5, 6, 7, 8, 10, 12, 13, 15, 17, 24], "interface_nam": 15, "interface_typ": 13, "intern": [4, 20], "interpol": [12, 20], "interrupt": [2, 6], "introduc": [4, 5], "introduct": [5, 20], "involv": 5, "issu": [1, 4, 24], "its": [1, 2, 3, 4, 5, 15, 17], "itself": 2, "ivanov": 5, "jerk": [5, 11, 22], "johann": 5, "join": 24, "joint": [2, 3, 5, 11, 12, 13, 14, 16, 18, 21, 23, 24], "joint1": [3, 8, 9, 10, 20], "joint2": [3, 9, 10, 20], "joint3": 20, "joint4": 20, "joint5": 20, "joint6": 20, "joint_a2": 2, "joint_nam": [13, 20], "joint_stat": 18, "joint_state_broadcast": 19, "joint_state_control": [9, 10], "joint_trajectori": 20, "joint_trajectory_control": [4, 9], "joint_trajectory_plugin": 2, "jointstatecontrol": 9, "jointtrajectori": 20, "jointtrajectorycontrol": [2, 9], "jointtrajectorycontrollerst": 20, "keep": [1, 13], "kernel": 5, "khz": 4, "kill": [6, 9], "kinemat": 5, "knudsen": 5, "kuka": 3, "last": [13, 20], "latest": 3, "launch": [3, 6, 8, 10], "layer": 5, "least": [13, 20], "leav": 6, "less": 15, "let": 10, "level": [4, 5, 14, 16, 20, 21, 23], "librari": [2, 3, 4, 9, 13], "licens": 5, "life": 5, "lifecycl": [2, 3, 5, 6], "lifecyclenod": 3, "like": [1, 2, 3, 4, 5], "limit": [1, 4, 5, 11, 22], "line": [3, 7, 13], "linear": [11, 20, 22], "linear_acceler": 17, "link": [3, 5], "linter": 1, "list": [3, 5, 9, 10, 12, 13, 20, 24], "list_hardware_interfac": 10, "live": [1, 5], "load": [3, 6, 9, 10, 13], "load_configure_control": 9, "load_control": 10, "load_start_control": 9, "local": [1, 18], "logic": 3, "long": 4, "look": 5, "loop": [3, 5, 13, 20], "lovro": 5, "low": [4, 5], "ltd": 5, "machin": [3, 4], "macro": [2, 3, 13], "made": 5, "magyar": [4, 5], "mai": [14, 16, 21, 23], "main": [1, 3, 4, 5, 6, 8, 13, 24], "maintain": [1, 3, 4], "major": 0, "make": [1, 2, 4, 5, 24], "manag": [2, 4, 5, 7, 9, 13, 24], "mandatori": [3, 15, 17, 20], "mani": [5, 13], "manipul": [5, 20], "manual": [3, 4, 13, 24], "map": [8, 20], "mark": 2, "master": [1, 3, 4], "match": 3, "materi": 5, "matter": 1, "max": 3, "max_forc": 3, "maxim": 20, "mayb": 2, "md": 3, "mean": [1, 2, 8], "measur": [3, 8, 15], "mechan": 20, "medium": 4, "meet": 24, "member": [2, 13], "memori": [4, 13], "mentor": 4, "messag": [1, 4, 6, 9, 15, 17, 18, 20, 24], "method": [1, 2, 3, 13], "mid": 1, "mimic": 8, "mimick": 8, "min": 3, "min_forc": 3, "mind": [1, 13], "minim": 24, "mirror": 8, "miss": 4, "mobil": [5, 11, 22], "mock": 5, "mode": [4, 20], "modifi": 5, "modul": 4, "modular": [3, 5], "moment": 4, "monitor": 20, "more": [0, 1, 2, 3, 4, 8, 13], "most": [4, 13], "motiv": 4, "motor": [3, 4], "moveit": [5, 8], "moveit2": [4, 5], "movement": 4, "msg": [15, 17, 20], "much": [4, 13], "multi": [2, 3, 4, 5, 10], "multipl": [2, 3, 20], "multipli": 8, "must": 1, "my": 5, "my_state_broadcast": 18, "najjar": 5, "name": [1, 2, 3, 5, 6, 8, 9, 13, 15, 17, 18, 20], "namespac": [6, 12, 13, 18, 20], "nan": 20, "nathan": 5, "nav2": 5, "navig": 5, "necessari": 1, "need": [2, 3, 4, 5, 13], "net": 5, "new": [1, 5, 12, 20, 24], "next": [1, 20], "nobodi": 1, "node": [3, 6, 8, 9, 10, 13], "non": [1, 5, 15], "none": 13, "note": [1, 3, 10, 24], "now": [10, 13], "numer": 20, "numeric_limit": 20, "obei": 5, "object": 3, "odometri": [11, 22], "offer": [5, 6], "offlin": 8, "offset": [8, 20], "often": [4, 8, 13], "ok": 13, "on_activ": [2, 13], "on_configur": [2, 13], "on_deactiv": [2, 13], "onc": [4, 5], "one": [1, 2, 3, 4, 5, 13, 15, 24], "onli": [1, 2, 3, 4, 5, 6, 9, 13, 15, 20], "onlin": [5, 13], "open": [1, 20], "open_loop_control": 20, "openli": 5, "oper": 24, "opposit": 13, "optim": 2, "option": [2, 6, 8, 9, 13, 15, 18, 20], "orbit": 4, "orchestr": 4, "order": 19, "org": 4, "organ": [1, 5, 24], "orient": 17, "origin": [1, 5], "other": [1, 2, 3, 5, 13], "otherwis": 13, "our": [1, 3, 4, 5], "out": [2, 11], "output": [3, 4, 5, 9, 15, 17, 20], "over": [1, 4], "overcom": 24, "overrid": 13, "overview": 5, "p": 6, "pace": 1, "packag": [1, 2, 3, 10, 13, 15, 17, 19, 20, 24], "package_nam": 13, "parallel": [3, 8], "param": [3, 6, 8], "param_fil": 6, "paramet": [2, 5, 13], "parent": 13, "pars": [2, 7], "part": [1, 4, 5, 13], "parti": 5, "path": 5, "pendant": 5, "peopl": 1, "per": [4, 15], "perform": 5, "physic": [2, 3, 8], "picknik": 5, "pid": [20, 24], "ping": 1, "pipe": 8, "pipelin": 1, "pixel": 5, "pkg": 13, "place": [4, 13, 20], "plan": [5, 24], "plapp": 5, "pleas": [1, 24], "plu": 20, "plugin": [3, 13], "pluginlib": [2, 3, 13], "pluginlib_export_class": [2, 13], "pluginlib_export_plugin_description_fil": 13, "point": [3, 12, 13, 24], "port": 4, "posit": [2, 3, 5, 6, 9, 10, 12, 14, 16, 20, 21, 23], "position_control": [12, 20], "position_state_following_offset": 8, "position_velocity_acceleration_control": 20, "position_velocity_control": 20, "positionactuatorhardwar": 3, "possibl": [1, 3, 4, 13, 20], "potenti": [1, 13], "power": 5, "pr": 1, "practic": 5, "practition": 5, "pre": 1, "predefin": 20, "prefac": 5, "prefer": 4, "prefix": [13, 15, 17], "prepar": 13, "preprocessor": 13, "preset": 4, "previou": 24, "problem": [5, 24], "process": 13, "profil": 4, "programm": 0, "project": [0, 1, 24], "proper": [1, 20], "proport": 1, "propos": 24, "protect": [4, 13], "prove": 10, "provid": [3, 4, 5, 6, 8, 10, 12, 13, 20, 24], "proxi": 20, "public": 13, "publish": [4, 11, 15, 17, 18, 20, 22, 24], "pull": 4, "pure": [3, 20], "purpos": 4, "put": [1, 13], "py": 10, "qualiti": [0, 1], "question": 24, "queu": 20, "quick": 5, "quiet_nan": 20, "quintic": 20, "quit": 4, "random": 1, "rang": 3, "rate": [4, 20], "raw": 3, "rclcpp": 13, "rclcpp_lifecycl": 13, "re": 3, "reach": 20, "read": [1, 2, 3, 13, 18, 20], "readabl": 4, "readi": [5, 13], "readm": 3, "real": [2, 4, 5, 8, 13, 18, 20, 24], "realiz": [3, 5], "realtim": [5, 11, 20, 22, 24], "realtime_tool": [4, 24], "reason": 5, "receiv": [0, 2], "recent": 13, "recommend": [3, 5], "record": 5, "reduc": [1, 8], "refer": 3, "regard": 24, "regardless": 1, "regist": 2, "relat": [3, 4, 5], "releas": [1, 3, 5], "relev": [4, 24], "reli": 4, "reload": 9, "rememb": 13, "remov": 19, "renam": 19, "repeatedli": 1, "replac": 4, "repo": [1, 3], "report": [3, 4, 18, 24], "repositori": [3, 4, 7, 12, 24], "repres": 3, "reproduc": 24, "request": [2, 24], "requir": [1, 2, 3, 4, 13], "research": [0, 5], "reserv": 13, "resourc": 2, "resourcemanag": 2, "respect": [4, 5], "rest_syntax": 1, "result": [1, 3], "return": 13, "return_typ": 13, "reus": 5, "review": [1, 4, 24], "rewrit": [4, 24], "rich": 4, "right": 4, "rigid": 2, "rm": 3, "ro": [0, 1, 3, 4, 6, 8, 9, 19, 24], "roadmap": [4, 24], "robot": [0, 2, 4, 10, 11, 15, 22, 24], "robothw": 2, "robust": 20, "root": 13, "ros1": 5, "ros2": [3, 4, 5, 6, 9, 10, 13, 24], "ros2_control": [1, 3, 5, 6, 8, 10, 13], "ros2_control_demo": [1, 3, 24], "ros2_control_demo_bringup": 10, "ros2_control_demo_hardwar": [3, 10], "ros2_control_nod": 3, "ros2_control_test_asset": 13, "ros2_control_test_nod": 10, "ros2controlcli": 3, "ros__paramet": 20, "ros_control": [4, 5, 24], "ros_distro": 1, "rosin": 0, "rrbot": [3, 10], "rrbot_system_multi_interfac": 10, "rrbot_tcp": 3, "rrbotforcetorquesensor1d": 3, "rrbotgripp": 3, "rrbotsystempositiononli": 3, "rrbotsystempositiononlyhardwar": [2, 3], "rsi": 3, "rule": 13, "run": [4, 5, 6, 9], "rune": 5, "safe": [2, 11, 13, 20, 22], "safeti": 4, "same": [1, 3, 4, 15], "satisfi": 1, "scale": 5, "scenario": 4, "scope": 1, "script": [3, 4, 13], "search": 13, "second": [4, 9, 13, 24], "section": [1, 2, 13], "see": [1, 2, 3, 10, 13, 15, 17, 20], "segment": 20, "semant": [5, 15, 17], "semantic_compon": 4, "semi": 1, "sens": [2, 3, 15], "sensibl": 2, "sensor": [2, 3, 4, 8, 12], "sensor_msg": 17, "sensor_nam": [15, 17], "sensorinterfac": 2, "sent": 4, "separ": [1, 2, 3], "serv": [1, 3, 4], "server": 20, "servic": [3, 4, 6], "set": [1, 2, 4, 5, 8, 9, 14, 16, 18, 20, 21, 23], "set_controller_st": 10, "set_stat": 9, "setup": [3, 4, 13], "share": [5, 13], "shell": 13, "short": [1, 13, 24], "should": [1, 2, 4, 5, 6, 9, 10, 13, 18], "show": [1, 3, 5, 6, 9], "showcas": [4, 5], "shown": 5, "side": [3, 4, 5], "signal": 4, "similar": [1, 3, 5], "similarli": 20, "simpl": [3, 4, 5, 10, 13, 19], "simplecontrollermanag": 4, "simpli": [5, 20], "simplifi": [13, 24], "simul": [4, 8, 10], "singl": 5, "six": 15, "size": 4, "skeleton": 3, "skill": 4, "smooth": 24, "snake_cas": 13, "snippet": 2, "so": [3, 13], "softwar": [0, 3], "solut": [2, 5], "some": [1, 4, 5, 20, 24], "sort": [12, 13], "sourc": [1, 3, 5, 13], "space": [11, 20], "specif": [4, 20], "specifi": [13, 20], "sphinx": 1, "spin": 9, "spin_tim": 9, "spline": 20, "squash": 1, "src": [3, 13], "srv": 3, "stabl": [1, 4], "stack": [3, 5], "stage": 1, "standard": [1, 2, 3, 4, 5, 9, 12, 15], "start": [1, 2, 5, 6, 9, 10, 13, 20, 24], "startup": 6, "state": [2, 3, 4, 5, 8, 9, 10, 12, 13, 15, 18, 20], "state_interfac": [3, 20], "state_interface_configur": [2, 13], "state_publish_r": 20, "statu": [4, 9, 20], "std": 20, "steer": 22, "step": [13, 20, 24], "still": [1, 2, 3], "stogl": 5, "stop": [2, 5, 6, 9, 10, 11, 22], "stopped_velocity_toler": 20, "store": 13, "strategi": [2, 20], "stream": [2, 5], "stretch": 4, "strict": 9, "string": [2, 8, 13, 18, 20], "struct": 4, "structur": [3, 4, 13, 20], "studi": 5, "style": [1, 13], "submit": [1, 5], "success": 13, "suffici": [1, 15], "suitabl": [2, 5], "summari": [1, 5, 24], "support": [0, 2, 3, 5, 8, 9, 13, 20, 24], "sure": [1, 4, 24], "surround": 2, "switch": [4, 9], "switch_control": 10, "switch_timeout": 9, "sync": 1, "system": [2, 3, 4, 5, 10, 20, 24], "systemcompon": 5, "systeminterfac": [2, 8], "s\u00f8e": 5, "t": [1, 6], "tag": [3, 13, 24], "take": [2, 4, 13, 18], "talk": 5, "target": [1, 12, 13, 20], "task": [4, 5, 11], "tcp_fts_sensor": 3, "teach": 5, "teleoper": 5, "templat": [10, 13, 20], "term": [20, 24], "test": [1, 4, 8, 10, 13], "test_control": 9, "test_controller_nam": 9, "test_depend": 13, "test_load_": 13, "thank": 1, "thei": [1, 2, 3, 4, 5, 8, 9, 12, 13, 20], "them": [1, 3, 4, 6, 13, 18], "theori": [3, 24], "therefor": [4, 13, 18, 20], "thi": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 13, 14, 15, 16, 18, 19, 20, 21, 23, 24], "thing": 1, "thoma": 1, "those": [1, 2, 3, 4, 8, 13, 15, 20], "thread": 4, "three": [1, 2, 3, 13], "through": [3, 4, 9, 11, 12, 13, 20, 24], "time": [1, 2, 4, 5, 6, 8, 9, 11, 13, 15, 20, 24], "timeout": [6, 9, 22], "tip": 5, "titl": 1, "togeth": 3, "toler": 20, "toni": 5, "took": 2, "tool": [2, 4, 5], "toolkit": 24, "top": 5, "topic": [4, 5, 20], "torqu": [3, 12], "traceabl": 1, "track": [3, 24], "tracker": 24, "traction": 22, "trajectori": [5, 12, 24], "trajectory_msg": 20, "translat": [11, 22], "transmiss": 3, "tree": 4, "tri": 20, "trick": 4, "tricycl": [5, 12, 22], "trigger": 4, "trivial": [1, 8], "true": [19, 20], "turtl": 19, "tutori": 1, "twist": [11, 22], "two": [1, 3, 4, 6, 13, 15], "txt": 13, "type": [1, 2, 3, 5, 6, 9, 12, 13, 15, 17], "typic": [4, 20], "u": [1, 6], "unclaim": [9, 10], "unconfigur": 6, "under": [0, 5, 13, 24], "understand": [1, 4], "unifi": 5, "union": 0, "uniqu": 13, "unit": 4, "univers": [1, 4, 5], "unload": [3, 6, 9], "unreleas": 24, "until": 6, "up": [1, 5, 10], "updat": [2, 3, 4, 13], "upgrad": 5, "ur": 5, "urdf": 2, "us": [1, 2, 3, 4, 5, 8, 9, 12, 14, 15, 16, 17, 18, 19, 21, 23, 24], "usabl": 3, "usag": [5, 6, 9], "use_local_top": 18, "user": 4, "usual": [2, 8, 13], "util": 5, "valu": [2, 3, 4, 8, 13, 20], "valv": 3, "variabl": [2, 4, 13], "variou": 4, "vc": 3, "vector": 13, "veloc": [2, 3, 5, 10, 12, 20, 21, 23], "velocity_control": 12, "veri": [1, 2, 4], "version": [1, 4], "via": 3, "virtual": 5, "visibility_control": 13, "visibl": 13, "visit": 3, "vivid": 1, "wa": [4, 13], "wai": [1, 13, 15], "wait": [6, 9], "want": 3, "waypoint": [5, 12, 20], "we": [1, 4, 5], "wednesdai": 24, "weekend": 1, "welcom": 1, "well": [5, 9, 20], "were": 4, "wg": 24, "wget": 3, "what": 5, "wheel": 11, "when": [1, 2, 3, 4, 8, 9, 13, 20], "where": [1, 4, 13], "which": [2, 3, 4, 5, 9, 11, 13, 15, 17, 20, 22], "while": [3, 4, 5, 10, 20], "wide": 24, "wikipedia": [3, 24], "wild": 5, "window": 13, "without": [2, 3, 8, 13], "work": [1, 4, 5, 11, 13, 14, 16, 20, 21, 22, 23, 24], "workspac": [3, 13], "world": [6, 8], "wrap": 20, "wrapper": [15, 17], "wrenchstamp": 15, "write": [2, 3, 4, 5, 12], "written": 13, "x": [11, 15, 17, 22], "xacro": 3, "xml": [2, 13], "y": 15, "yaml": [3, 4, 20], "yet": 20, "yield": 20, "you": [1, 2, 3, 5, 8, 13, 24], "your": [1, 2, 5, 8, 13, 24], "z": [11, 15, 22], "zeleank": 5, "zelenak": 5, "\u0161togl": [4, 5]}, "titles": ["Acknowledgements", "Pull Requests", "Differences to ros_control (ROS1)", "Getting Started", "Project Ideas for GSoC 2022", "Resources", "Controller Manager", "API Documentation", "Fake Components", "Command Line Interface", "Demos", "diff_drive_controller", "ros2_controllers", "Writing a new controller", "effort_controllers", "Force Torque Sensor Broadcaster", "forward_command_controller", "IMU Sensor Broadcaster", "joint_state_broadcaster", "joint_state_controller", "joint_trajectory_controller", "position_controllers", "tricycle_controller", "velocity_controllers", "Welcome to the ros2_control documentation - Foxy!"], "titleterms": {"": [2, 20], "02": 5, "05": 5, "06": 5, "07": 5, "10": 5, "12": 5, "13": 5, "2021": 5, "2022": [4, 5], "2023": 5, "5": 5, "about": 20, "access": 2, "acknowledg": 0, "add": 4, "api": 7, "architectur": 3, "asynchron": 4, "avail": 12, "best": 12, "broadcast": [12, 15, 17], "ci": 1, "class": 2, "command": [9, 11, 18, 22], "commun": 24, "compil": 3, "compon": [2, 3, 4, 8], "concept": 7, "confer": 5, "configur": 1, "control": [2, 3, 4, 6, 12, 13, 20], "core": 7, "demo": [4, 10], "descript": 3, "detail": 20, "develop": 24, "diagram": 5, "diff_drive_control": 11, "differ": 2, "document": [1, 7, 24], "effort_control": 14, "extern": 13, "fake": 8, "featur": [4, 7, 11, 20, 22], "forc": 15, "forward_command_control": 16, "foxi": 24, "fr": 5, "framework": 3, "from": 4, "function": 7, "gener": 8, "get": 3, "gsoc": 4, "guid": 2, "guidelin": 12, "hardwar": [2, 3, 4, 11, 14, 16, 18, 20, 21, 23], "helper": 6, "idea": 4, "imag": 5, "imu": 17, "industri": 5, "interfac": [2, 3, 9, 11, 14, 16, 18, 20, 21, 23], "joint": [8, 20], "joint_state_broadcast": 18, "joint_state_control": 19, "joint_trajectory_control": 20, "jointtrajectorycontrol": 20, "line": 9, "list_control": 9, "list_controller_typ": 9, "list_hardware_interfac": 9, "load_control": 9, "manag": [3, 6], "meetup": 5, "merg": 1, "migrat": 2, "mission": 4, "mode": 10, "munich": 5, "new": 13, "nomenclatur": 12, "organ": 10, "organis": 24, "other": [11, 20, 22], "overview": 24, "paramet": [8, 15, 17, 18, 20], "pariti": 4, "per": 8, "position_control": 21, "practic": 12, "present": 5, "process": 1, "project": 4, "pull": 1, "py": 6, "refer": 13, "reload_controller_librari": 9, "repositori": [1, 10], "represent": 20, "request": 1, "resourc": [3, 5], "ro": 5, "robot": [3, 5], "robothardwar": 2, "ros1": [2, 4], "ros2": 20, "ros2_control": [2, 4, 12, 24], "ros_control": 2, "roscon": 5, "rosdevdai": 5, "rule": 1, "run": 3, "script": 6, "semant": 4, "sensor": [15, 17], "set_controller_st": 9, "spawner": 6, "special": 20, "start": 3, "structur": [1, 2], "support": 4, "switch": 10, "switch_control": 9, "system": 8, "tbd": 20, "torqu": 15, "trajectori": 20, "tricycle_control": 22, "tutori": 4, "type": [11, 14, 16, 18, 20, 21, 23], "unload_control": 9, "unspawn": 6, "urdf": 3, "us": [13, 20], "user": 3, "veloc": [11, 22], "velocity_control": 23, "version": 20, "weekli": 5, "welcom": 24, "world": 5, "write": [1, 13], "your": 3}}) \ No newline at end of file diff --git a/galactic/.buildinfo b/galactic/.buildinfo index aaf2544bfd6..6f94d6b36b2 100644 --- a/galactic/.buildinfo +++ b/galactic/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: f526ab26b86d6ab0091a4964335e6a70 +config: e6ecfb2bded861faf2f4a09fdbeb70c2 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/galactic/.doctrees/doc/acknowledgements/acknowledgements.doctree b/galactic/.doctrees/doc/acknowledgements/acknowledgements.doctree index b82176f17eb57909f2d84fc1195fcaae6cbda00f..b93e90f5f96c4ca89b05281c6433cb00c5f1807d 100644 GIT binary patch delta 66 zcmeCO>ayBk#AujhY>=N~l5eh`Vv%T(lw@R-W@?^nVU}!`oSI^8l9-lkU}m10mSUV{ Vk!omaWNel+*^otSb0yayBk#As-eQ)HZ;mtUxFVrpb&W|(B0lwy!(YMf|hmYQZ@mTGF6lxUWmm}FsK VVs2!XmS~hV*^otSb0y5Lm&Gl0(5-pOFjEvGu&66$6lFgD+Q_M{g(~=F$%u~}+ UjMFSq4NZ-V&5|}hV|I=P0LPCN3;+NC delta 64 zcmZ3vk8$Nb#tmDU4NY>2jMMY-3-wJ*jm*pplZ=y64AM-E6V1$0(+tc~O-+*$&5{$7 UEDTJ{jm**#jnXzhV|I=P0Kcc#>6%NnT!+# delta 64 zcmdnf&$OqXX@eG{p-E1Wae7{Up}vW!k(rrcl5tXsL7J&?qM2E0nt@rWscBN8S#n~M Tg@K8=ky%=zQQGEc#>6%Nm4p-B diff --git a/galactic/.doctrees/doc/getting_started/getting_started.doctree b/galactic/.doctrees/doc/getting_started/getting_started.doctree index b9d751b020c58a9df8a30e5053f195d60b070bac..5665cb94a2955189d4134e4381161bdef431daf4 100644 GIT binary patch delta 64 zcmez0#r(gEd4mC?VV1E$eu_!Hxqga8qD4}Ykx`ndd9sCBvRQI!in&Q*TC#zed1_jU TahgS{p{bFvS<>c2M!6#ZxqB3f delta 64 zcmez0#r(gEd4mC?p-E1Wae7{Up}vW!k(rrcl5tXsL7J&?qM2E0nt@rWscBN8S#n~M Tg@K8=ky%=zQQGE2M!6#ZwR03= diff --git a/galactic/.doctrees/doc/project_ideas.doctree b/galactic/.doctrees/doc/project_ideas.doctree index 9261381c16e75f5f0921a4aa8ea57fbcb4e50da8..aa493fafb4955f8416504bd49b5441d599cc0daa 100644 GIT binary patch delta 64 zcmeyeis{QLrVTobhFQi2`6(v(=K3iXi55voMn-9-=E)Xj$!5u^Ddr}LX~_m==Ba5Z U#%UI*hNecwW=Wf48O5gn0Kw4|a{vGU delta 64 zcmeyeis{QLrVTobh9)^h#_4(ah59C@MrLM)NybSj25F|oiDqW0X$EGgrlv`WX32?3 U76vBfMrLV=MroU48O5gn0KLf+O8@`> diff --git a/galactic/.doctrees/doc/resources/resources.doctree b/galactic/.doctrees/doc/resources/resources.doctree index 3ea7a1e4d3e3eee80f356a0c599790066e7582c4..d4f7616359e687743a1d6d77fedc25b8fd94a73d 100644 GIT binary patch delta 68 zcmX@v!*a5RWrGT%VV1E$eu_!Hxqga8qD4}Ykx`ndd9sCBvRQI!in&Q*TC#zed1_jU XahgS{p{bFvSyFQ-gE*K diff --git a/galactic/.doctrees/doc/ros2_control/controller_manager/doc/userdoc.doctree b/galactic/.doctrees/doc/ros2_control/controller_manager/doc/userdoc.doctree index 695ad57147a555a55c1daa55775edce8d267678e..031047c1694623b1d2969856627c574d86d6c051 100644 GIT binary patch delta 62 zcmX>abu?;&8>3;Cu|a-{Nxr#$ibbMDQj(ETnyGoRg;}y$a%zgXNn%>Efth(~T8eR+ RMXI5xk+E6Q=5oe!+5m@C6Y~H7 delta 62 zcmX>abu?;&8>68~PLXkXUVfpziK&s9nPHM~Qi?&Esd1v2S!$YrS*odNQleRMVv>b{ RiMf$kTB1?f=5oe!+5m%06UzVq diff --git a/galactic/.doctrees/doc/ros2_control/doc/index.doctree b/galactic/.doctrees/doc/ros2_control/doc/index.doctree index a55c1ecb292672b5a42fcf06e3c1e44dd5fdb6eb..a106d5b9c53722b6c24823b4abd42943d296ae93 100644 GIT binary patch delta 62 zcmdm_ze#_C9iw5Eu|a-{Nxr#$ibbMDQj(ETnyGoRg;}y$a%zgXNn%>Efth(~T8eR+ RMXI5xk+E6Q=6ptHF#u-^62|}l delta 62 zcmdm_ze#_C9iyR1PLXkXUVfpziK&s9nPHM~Qi?&Esd1v2S!$YrS*odNQleRMVv>b{ RiMf$kTB1?f=6ptHF#ux&5}yD7 diff --git a/galactic/.doctrees/doc/ros2_control/hardware_interface/doc/fake_components_userdoc.doctree b/galactic/.doctrees/doc/ros2_control/hardware_interface/doc/fake_components_userdoc.doctree index 6147001bc9735fe0ccc663ad3d024476671e3e6c..223c5fd4f79a87de751d385e7cee9bdaa04a5f62 100644 GIT binary patch delta 62 zcmcbcc{g)|1EXPEfth(~T8eR+ RMXI5xk+E6Q=0e6CV*r<;6Wag) delta 62 zcmcbcc{g)|1EZlyPLXkXUVfpziK&s9nPHM~Qi?&Esd1v2S!$YrS*odNQleRMVv>b{ RiMf$kTB1?f=0e6CV*rzy6SDvS diff --git a/galactic/.doctrees/doc/ros2_control/hardware_interface/doc/hardware_components_userdoc.doctree b/galactic/.doctrees/doc/ros2_control/hardware_interface/doc/hardware_components_userdoc.doctree index 24562275b1da34f889244af4f0c15adeacc003b8..870f84e25e98af0c5f9849dc27a384ea43605c64 100644 GIT binary patch delta 64 zcmZpl%h*1baf1h=VV1E$eu_!Hxqga8qD4}Ykx`ndd9sCBvRQI!in&Q*TC#zed1_jU TahgS{p{bFvS<>c8Mm}Evj58Bu delta 64 zcmZpl%h*1baf1h=p-E1Wae7{Up}vW!k(rrcl5tXsL7J&?qM2E0nt@rWscBN8S#n~M Tg@K8=ky%=zQQGE8Mm}Evh$|C4 diff --git a/galactic/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree b/galactic/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree index 40b7a83ed4e2d3352f6b2b7c65758c188e425ac9..3efc3bbe48e2e3675dda6da13acb2b017ef443bc 100644 GIT binary patch delta 64 zcmcb)jq&C-#tn9ihFQi2`6(v(=K3iXi55voMn-9-=E)Xj$!5u^Ddr}LX~_m==Ba5Z U#%UI*hNecwW=Wg#8DB*L0KcLY4*&oF delta 64 zcmcb)jq&C-#tn9ih9)^h#_4(ah59C@MrLM)NybSj25F|oiDqW0X$EGgrlv`WX32?3 U76vBfMrLV=MroV#8DB*L0K1wL=Kufz diff --git a/galactic/.doctrees/doc/ros2_control_demos/doc/index.doctree b/galactic/.doctrees/doc/ros2_control_demos/doc/index.doctree index d3763b0e88885eea16c7302601a2ba146ee760ff..7a463a95f588bcf61c3310d54e80ec65d802de1c 100644 GIT binary patch delta 62 zcmV~$TMfV<3;@8O2xy_L9r{|bAFM5z9BfR$?v5UPsPr4#_OZFTEKvo>$tGlE;XGDa QBaU=Ti9P{I->ZD}2a*sJIRF3v delta 62 zcmcbebUSH-8Ka>|PLXkXUVfpziK&s9nPHM~Qi?&Esd1v2S!$YrS*odNQleRMVv>b{ RiMf$kTB1?f=5)p{`T&jy6cGRb diff --git a/galactic/.doctrees/doc/ros2_controllers/diff_drive_controller/doc/userdoc.doctree b/galactic/.doctrees/doc/ros2_controllers/diff_drive_controller/doc/userdoc.doctree index ab79bcb5ccd86766b13c51e31a58e65ac6f820b9..6568e39b16ca1daa06932f2cdd2c080f9fd42ba3 100644 GIT binary patch delta 62 zcmdn4vt4I{52In0u|a-{Nxr#$ibbMDQj(ETnyGoRg;}y$a%zgXNn%>Efth(~T8eR+ RMXI5xk+E6Q=32&GA^>bh6I=iQ delta 62 zcmdn4vt4I{52K+;PLXkXUVfpziK&s9nPHM~Qi?&Esd1v2S!$YrS*odNQleRMVv>b{ RiMf$kTB1?f=32&GA^>PV6Epw- diff --git a/galactic/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree b/galactic/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree index 1a8427325db1991a7d7be071c867c65ae00a4c9f..b008faecaba9ce5242411ae0d611d7d54713d49b 100644 GIT binary patch delta 66 zcmX?Efth(~T8eR+ VMXI5xk+E6QWJWou&BcuVMgYb{ ViMf$kTB1?fWJWou&BcuVMgYxL6cGRb diff --git a/galactic/.doctrees/doc/ros2_controllers/doc/writing_new_controller.doctree b/galactic/.doctrees/doc/ros2_controllers/doc/writing_new_controller.doctree index 949ecd47de6bdc6c25522889cf9ca43aacbd51c2..e1da0bd6e50b735a1fbb5dee2532c4e161d5aa10 100644 GIT binary patch delta 64 zcmZ2^g?Z%_<_!*vhFQi2`6(v(=K3iXi55voMn-9-=E)Xj$!5u^Ddr}LX~_m==Ba5Z U#%UI*hNecwW=We18F#z@0Jt+1Pyhe` delta 64 zcmZ2^g?Z%_<_!*vh9)^h#_4(ah59C@MrLM)NybSj25F|oiDqW0X$EGgrlv`WX32?3 U76vBfMrLV=MroT18F#z@0JJL=C;$Ke diff --git a/galactic/.doctrees/doc/ros2_controllers/effort_controllers/doc/userdoc.doctree b/galactic/.doctrees/doc/ros2_controllers/effort_controllers/doc/userdoc.doctree index 0c6a76e3c7bfc405310a6535eac0f0b97518c764..091bc9a5a7e1568844d1d2e5ef67e6a15613a1d2 100644 GIT binary patch delta 62 zcmbQEFh^m78>3;Cu|a-{Nxr#$ibbMDQj(ETnyGoRg;}y$a%zgXNn%>Efth(~T8eR+ RMXI5xk+E6Q=5ofRd;nN066XK_ delta 62 zcmbQEFh^m78>68~PLXkXUVfpziK&s9nPHM~Qi?&Esd1v2S!$YrS*odNQleRMVv>b{ RiMf$kTB1?f=5ofRd;nA<62AZd diff --git a/galactic/.doctrees/doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.doctree b/galactic/.doctrees/doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.doctree index 50a98064f080ef97ba5a432eb05d0fcb8860e994..279455bb7e840d321cddb8acf66068be1fac5636 100644 GIT binary patch delta 62 zcmccUe9?JB0;6G;u|a-{Nxr#$ibbMDQj(ETnyGoRg;}y$a%zgXNn%>Efth(~T8eR+ RMXI5xk+E6Q=823B3IK;s6Lb{ RiMf$kTB1?f=823B3IKyg6HovE diff --git a/galactic/.doctrees/doc/ros2_controllers/forward_command_controller/doc/userdoc.doctree b/galactic/.doctrees/doc/ros2_controllers/forward_command_controller/doc/userdoc.doctree index f3333dd783688f4c390465197dfc4f2724ae97a2..26cd75d75dce83f13e2256081f8cc8fd45e93ee0 100644 GIT binary patch delta 62 zcmaE&@I+xl7^7j9u|a-{Nxr#$ibbMDQj(ETnyGoRg;}y$a%zgXNn%>Efth(~T8eR+ RMXI5xk+E6Q=61%rd;osC6VCtu delta 62 zcmaE&@I+xl7^9&{PLXkXUVfpziK&s9nPHM~Qi?&Esd1v2S!$YrS*odNQleRMVv>b{ RiMf$kTB1?f=61%rd;og06Q=+G diff --git a/galactic/.doctrees/doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.doctree b/galactic/.doctrees/doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.doctree index c8dba1355e1eca79f3318afca5229ae3b9818cf9..f33172c855920f0f90380d4a6d1373f2ad9ddbdb 100644 GIT binary patch delta 62 zcmZqIYuDT0$7q;kY>=N~l5eh`Vv%T(lw@R-W@?^nVU}!`oSI^8l9-lkU}m10mSUV{ Rk!omaWNenSxt_5@6aZFk64L+x delta 62 zcmZqIYuDT0$7pDhQ)HZ;mtUxFVrpb&W|(B0lwy!(YMf|hmYQZ@mTGF6lxUWmm}FsK RVs2!XmS~i=xt_5@6aZ3Y5~~0J diff --git a/galactic/.doctrees/doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.doctree b/galactic/.doctrees/doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.doctree index 488b35ddc2d5dca7b8a126dabde2bcf7257b0c2b..ace9f16e5fb12b56a7f5878899151d16a1c996df 100644 GIT binary patch delta 64 zcmZpfz}PZ@aYF#3VV1E$eu_!Hxqga8qD4}Ykx`ndd9sCBvRQI!in&Q*TC#zed1_jU TahgS{p{bFvS<>c4#%4DFhe#8{ delta 64 zcmZpfz}PZ@aYF#3p-E1Wae7{Up}vW!k(rrcl5tXsL7J&?qM2E0nt@rWscBN8S#n~M Tg@K8=ky%=zQQGE4#%4DFgFq9T diff --git a/galactic/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.doctree b/galactic/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.doctree index ce631ae83e16f548b78c31b6f4293a6d9c281d91..f6e668bb12c8b801b578a4bb39430d5cbf9d4ec3 100644 GIT binary patch delta 64 zcmccD&UCMxX+s2~VV1E$eu_!Hxqga8qD4}Ykx`ndd9sCBvRQI!in&Q*TC#zed1_jU TahgS{p{bFvS<>cC#?U4Ju_zRU delta 64 zcmccD&UCMxX+s2~p-E1Wae7{Up}vW!k(rrcl5tXsL7J&?qM2E0nt@rWscBN8S#n~M Tg@K8=ky%=zQQGEC#?U4JtsoR# diff --git a/galactic/.doctrees/doc/ros2_controllers/position_controllers/doc/userdoc.doctree b/galactic/.doctrees/doc/ros2_controllers/position_controllers/doc/userdoc.doctree index c6d9dd63176591a7ce685fee08de0e4da9621301..67833b18308a6e85eefd39e5c35f64c97888b4cf 100644 GIT binary patch delta 62 zcmdm`uuEZs7o%a8u|a-{Nxr#$ibbMDQj(ETnyGoRg;}y$a%zgXNn%>Efth(~T8eR+ RMXI5xk+E6Q=4!_Md;n*k6GZ?3 delta 62 zcmdm`uuEZs7o(v`PLXkXUVfpziK&s9nPHM~Qi?&Esd1v2S!$YrS*odNQleRMVv>b{ RiMf$kTB1?f=4!_Md;nvY6CD5m diff --git a/galactic/.doctrees/doc/ros2_controllers/velocity_controllers/doc/userdoc.doctree b/galactic/.doctrees/doc/ros2_controllers/velocity_controllers/doc/userdoc.doctree index 1d3d290f7327bca19d2503a0f061b75d9f2cd456..0a27bf9f7dfcd9ad36aab1515419edb04def8602 100644 GIT binary patch delta 62 zcmdm`uuEZs7o%a8u|a-{Nxr#$ibbMDQj(ETnyGoRg;}y$a%zgXNn%>Efth(~T8eR+ RMXI5xk+E6Q=4!_Md;n*k6GZ?3 delta 62 zcmdm`uuEZs7o(v`PLXkXUVfpziK&s9nPHM~Qi?&Esd1v2S!$YrS*odNQleRMVv>b{ RiMf$kTB1?f=4!_Md;nvY6CD5m diff --git a/galactic/.doctrees/environment.pickle b/galactic/.doctrees/environment.pickle index 57e6e8259b12ca9df6770e202ebf653340321756..171fe2796e1ab829aa0f8b4290e6aa75f1c751da 100644 GIT binary patch delta 15700 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 JxSCMuzX7jC3`qb0 delta 15552 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 I&_Jm4FDzTFj{pDw diff --git a/galactic/.doctrees/index.doctree b/galactic/.doctrees/index.doctree index 4daade7248746e85449864d9a9f185bfdb4f8b7b..2881aee09ab28aa59c76376cd78236ce87c4d348 100644 GIT binary patch delta 82 zcmX?jpYh;*#tmkShFQi2`6(v(=K3iXi55voMn-9-=E)Xj$!5u^Ddr}LX~_m==Ba5Z m#%UI*hNecwW=WgV8Lx#f8g8}=Gh<{loP0lAdh>*ELkR$KG8(Y} delta 82 zcmX?jpYh;*#tmkSh9)^h#_4(ah59C@MrLM)NybSj25F|oiDqW0X$EGgrlv`WX32?3 m76vBfMrLV=MroVV8Lx#f8f>-;Gh<{ln0!B6dh>*ELkR$DKN^Ps diff --git a/galactic/index.html b/galactic/index.html index a8632ce49c6..6858e7b9f4d 100644 --- a/galactic/index.html +++ b/galactic/index.html @@ -150,7 +150,7 @@

Development Organisation and Communication -

Built on 2024-12-10 at 05:40 GMT

+

Built on 2024-12-11 at 05:40 GMT

diff --git a/galactic/searchindex.js b/galactic/searchindex.js index b40a4dc657c..cb9d62b0ffb 100644 --- a/galactic/searchindex.js +++ b/galactic/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"2021-05 ROSCon Fr 2021": [[5, "roscon-fr-2021"]], "2021-06 ROSDevDay 2021": [[5, "rosdevday-2021"]], "2021-10 ROS World 2021": [[5, "ros-world-2021"]], "2021-10-07 Weekly Robotics Meetup #13": [[5, "weekly-robotics-meetup-13"]], "2022-06 ROSCon Fr 2022": [[5, "roscon-fr-2022"]], "2022-10 ROSCon 2022": [[5, "roscon-2022"]], "2022-12 ROS-Industrial Conference 2022": [[5, "ros-industrial-conference-2022"]], "2023-02 ROS Meetup Munich #5": [[5, "ros-meetup-munich-5"]], "API Documentation": [[7, "api-documentation"]], "Acknowledgements": [[0, "acknowledgements"]], "Add support for hardware semantic components": [[4, "add-support-for-hardware-semantic-components"]], "Architecture": [[3, "architecture"]], "Asynchronous Control Components": [[4, "asynchronous-control-components"]], "Available Broadcasters": [[13, "available-broadcasters"]], "Available Controllers": [[13, "available-controllers"]], "CI configuration": [[1, "ci-configuration"]], "Command Line Interface": [[10, "command-line-interface"]], "Commands": [[19, "commands"]], "Compiling": [[3, "compiling"]], "Concepts": [[7, "concepts"]], "Controller Manager": [[3, "controller-manager"], [6, "controller-manager"]], "Controller Migration": [[2, "controller-migration"]], "Controllers": [[3, "controllers"], [13, "id1"]], "Controller\u2019s Access to Hardware": [[2, "controller-s-access-to-hardware"]], "Core functionalities": [[7, "core-functionalities"]], "Demos": [[11, "demos"]], "Details about parameters": [[20, "details-about-parameters"]], "Determinism": [[6, "determinism"]], "Development Organisation and Communication": [[23, "development-organisation-and-communication"]], "Diagrams": [[5, "diagrams"]], "Differences to ros_control (ROS1)": [[2, "differences-to-ros-control-ros1"]], "Fake Components": [[8, "fake-components"]], "Feature-parity for controllers from ROS1": [[4, "feature-parity-for-controllers-from-ros1"]], "Features": [[7, "features"]], "Force Torque Sensor Broadcaster": [[16, "force-torque-sensor-broadcaster"]], "Generic System": [[8, "generic-system"]], "Getting Started": [[3, "getting-started"]], "Guidelines and Best Practices": [[13, "guidelines-and-best-practices"]], "Handling of errors that happen during read() and write() calls": [[9, "handling-of-errors-that-happen-during-read-and-write-calls"]], "Hardware Components": [[3, "hardware-components"], [9, "hardware-components"]], "Hardware Description in URDF": [[3, "hardware-description-in-urdf"]], "Hardware Interfaces": [[2, "hardware-interfaces"]], "Hardware Structures - classes": [[2, "hardware-structures-classes"]], "Hardware interface type": [[12, "hardware-interface-type"], [15, "hardware-interface-type"], [17, "hardware-interface-type"], [19, "hardware-interface-type"], [20, "hardware-interface-type"], [21, "hardware-interface-type"], [22, "hardware-interface-type"]], "Helper scripts": [[6, "helper-scripts"]], "IMU Sensor Broadcaster": [[18, "imu-sensor-broadcaster"]], "Images": [[5, "images"]], "Migration Guide to ros2_control": [[2, "migration-guide-to-ros2-control"]], "Migration from Foxy to Galactic": [[9, "migration-from-foxy-to-galactic"]], "Mission-Control for ros2_control": [[4, "mission-control-for-ros2-control"]], "Mode switching demo": [[11, "mode-switching-demo"]], "Nomenclature": [[13, "nomenclature"]], "Other features": [[12, "other-features"], [20, "other-features"]], "Overview": [[23, "overview"]], "Parameters": [[8, "parameters"], [16, "parameters"], [18, "parameters"], [19, "parameters"]], "Per-joint Parameters": [[8, "per-joint-parameters"]], "Presentations": [[5, "presentations"]], "Project Ideas for GSoC 2022": [[4, "project-ideas-for-gsoc-2022"]], "Pull Requests": [[1, "pull-requests"]], "ROS2 interface of the controller": [[20, "ros2-interface-of-the-controller"]], "Repository organization": [[11, "repository-organization"]], "Repository structure and CI configuration": [[1, "repository-structure-and-ci-configuration"]], "Resource Manager": [[3, "resource-manager"]], "Resources": [[5, "resources"]], "RobotHardware to Components": [[2, "robothardware-to-components"]], "Rules for the repositories and process of merging pull requests": [[1, "rules-for-the-repositories-and-process-of-merging-pull-requests"]], "Running the Framework for Your Robot": [[3, "running-the-framework-for-your-robot"]], "Specialized versions of JointTrajectoryController (TBD in \u2026)": [[20, "specialized-versions-of-jointtrajectorycontroller-tbd-in"]], "Trajectory representation": [[20, "trajectory-representation"]], "Tutorials and Demos for ros2_control": [[4, "tutorials-and-demos-for-ros2-control"]], "Useful External References": [[14, "useful-external-references"]], "User Interfaces": [[3, "user-interfaces"]], "Using Joint Trajectory Controller(s)": [[20, "using-joint-trajectory-controller-s"]], "Velocity commands": [[12, "velocity-commands"]], "Welcome to the ros2_control documentation - Galactic!": [[23, "welcome-to-the-ros2-control-documentation-galactic"]], "Writing a new controller": [[14, "writing-a-new-controller"]], "Writing documentation": [[1, "writing-documentation"]], "diff_drive_controller": [[12, "diff-drive-controller"]], "effort_controllers": [[15, "effort-controllers"]], "forward_command_controller": [[17, "forward-command-controller"]], "joint_state_broadcaster": [[19, "joint-state-broadcaster"]], "joint_trajectory_controller": [[20, "joint-trajectory-controller"]], "list_controller_types": [[10, "list-controller-types"]], "list_controllers": [[10, "list-controllers"]], "list_hardware_interfaces": [[10, "list-hardware-interfaces"]], "load_controller": [[10, "load-controller"]], "position_controllers": [[21, "position-controllers"]], "reload_controller_libraries": [[10, "reload-controller-libraries"]], "ros2_controllers": [[13, "ros2-controllers"]], "set_controller_state": [[10, "set-controller-state"]], "spawner": [[6, "spawner"]], "switch_controllers": [[10, "switch-controllers"]], "unload_controller": [[10, "unload-controller"]], "unspawner": [[6, "unspawner"]], "velocity_controllers": [[22, "velocity-controllers"]]}, "docnames": ["doc/acknowledgements/acknowledgements", "doc/contributing/contributing", "doc/differences_to_ros1/differences_to_ros1", "doc/getting_started/getting_started", "doc/project_ideas", "doc/resources/resources", "doc/ros2_control/controller_manager/doc/userdoc", "doc/ros2_control/doc/index", "doc/ros2_control/hardware_interface/doc/fake_components_userdoc", "doc/ros2_control/hardware_interface/doc/hardware_components_userdoc", "doc/ros2_control/ros2controlcli/doc/userdoc", "doc/ros2_control_demos/doc/index", "doc/ros2_controllers/diff_drive_controller/doc/userdoc", "doc/ros2_controllers/doc/controllers_index", "doc/ros2_controllers/doc/writing_new_controller", "doc/ros2_controllers/effort_controllers/doc/userdoc", "doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc", "doc/ros2_controllers/forward_command_controller/doc/userdoc", "doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc", "doc/ros2_controllers/joint_state_broadcaster/doc/userdoc", "doc/ros2_controllers/joint_trajectory_controller/doc/userdoc", "doc/ros2_controllers/position_controllers/doc/userdoc", "doc/ros2_controllers/velocity_controllers/doc/userdoc", "index"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.todo": 2}, "filenames": ["doc/acknowledgements/acknowledgements.rst", "doc/contributing/contributing.rst", "doc/differences_to_ros1/differences_to_ros1.rst", "doc/getting_started/getting_started.rst", "doc/project_ideas.rst", "doc/resources/resources.rst", "doc/ros2_control/controller_manager/doc/userdoc.rst", "doc/ros2_control/doc/index.rst", "doc/ros2_control/hardware_interface/doc/fake_components_userdoc.rst", "doc/ros2_control/hardware_interface/doc/hardware_components_userdoc.rst", "doc/ros2_control/ros2controlcli/doc/userdoc.rst", "doc/ros2_control_demos/doc/index.rst", "doc/ros2_controllers/diff_drive_controller/doc/userdoc.rst", "doc/ros2_controllers/doc/controllers_index.rst", "doc/ros2_controllers/doc/writing_new_controller.rst", "doc/ros2_controllers/effort_controllers/doc/userdoc.rst", "doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.rst", "doc/ros2_controllers/forward_command_controller/doc/userdoc.rst", "doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.rst", "doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.rst", "doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.rst", "doc/ros2_controllers/position_controllers/doc/userdoc.rst", "doc/ros2_controllers/velocity_controllers/doc/userdoc.rst", "index.rst"], "indexentries": {}, "objects": {}, "objnames": {}, "objtypes": {}, "terms": {"": [0, 1, 3, 4, 5, 11, 14, 23], "0": [3, 8, 19, 20], "01": 20, "03": 20, "04": 6, "05": [20, 23], "1": [1, 3, 4, 5, 8, 14], "10": 23, "100": 3, "12": 23, "171": 20, "175": 4, "2": [1, 3, 5, 8], "20": 20, "2020": 0, "2024": 23, "22": 6, "23": 3, "3": [3, 4], "302": 4, "303": 4, "304": 4, "350": 4, "3rd": 5, "40": 23, "43": 3, "45": 4, "50": [3, 6, 20], "500": 4, "6d": 16, "732287": 0, "81": 4, "9": 4, "A": [3, 5, 14, 19, 20], "As": [1, 14], "At": 14, "BY": 5, "Be": 1, "By": [19, 20], "For": [1, 3, 4, 5, 6, 8, 9, 14, 20], "If": [1, 2, 3, 6, 9, 14, 16, 19, 20, 23], "In": [2, 3, 4, 5, 14, 19], "It": [1, 2, 3, 4, 6, 16, 19], "Its": 23, "Not": 20, "On": 3, "One": 5, "Such": 4, "That": [1, 14], "The": [0, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 16, 18, 19, 20, 23], "There": [3, 6, 9, 14], "These": [15, 17, 21, 22], "To": [1, 2, 3, 6, 19, 23], "With": 5, "_control": 5, "_interfac": 2, "abi": 1, "abl": 1, "about": [4, 8, 19, 23], "abov": [2, 20], "abstract": [3, 5, 9], "acceler": [5, 11, 12, 13, 20], "accept": [1, 14, 15, 17, 21, 22], "access": [3, 4, 5, 6, 8, 14, 19], "accord": [13, 20], "aceleromet": 4, "achiev": [15, 17, 21, 22], "action": 20, "action_monitor_r": 20, "activ": [1, 2, 3, 10, 19], "actuat": [2, 3, 4, 8, 9], "actuatorinterfac": 2, "ad": [1, 4, 8, 14, 19], "add": [1, 2, 9, 14], "addit": [2, 4], "addition": [4, 23], "address": [1, 4], "adjust": 10, "admitt": 5, "adopt": 4, "advantag": 8, "afraid": 1, "after": [1, 12, 14], "again": [9, 11], "against": 1, "agnost": 5, "agreement": 0, "aka": 5, "all": [1, 2, 3, 4, 5, 8, 9, 11, 14, 19, 20], "allow": [2, 20], "allow_partial_joints_go": 20, "alreadi": [10, 14, 20], "also": [1, 2, 3, 4, 5, 14], "altern": [3, 20], "although": [4, 9], "alwai": 1, "amd64": 6, "ament": 14, "ament_add_gmock": 14, "ament_cmak": 14, "ament_cmake_gmock": 14, "ament_export_librari": 14, "ament_packag": 14, "an": [1, 2, 3, 4, 5, 8, 10, 14, 19, 20], "andi": 5, "angular": 12, "angular_veloc": 18, "ani": [2, 3, 5, 9, 14], "announc": 23, "anoth": 4, "answer": 23, "anymor": 2, "api": [1, 4], "appli": 10, "applic": [1, 3, 5, 6], "approach": 2, "appropri": 4, "approv": 1, "ar": [1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 16, 18, 19, 20, 23], "architectur": [4, 5], "arduino": 3, "argument": [6, 10], "arm": 5, "around": [4, 16, 18], "arrai": 19, "asap": 10, "ask": [14, 19], "assign": 14, "assum": 3, "assur": 0, "attempt": [6, 20], "author": 5, "auto": 3, "automat": [3, 12], "autonom": 5, "avail": [2, 3, 5, 10, 11, 14, 19, 20], "avoid": [1, 14], "awar": 1, "ax": 16, "axi": [4, 16], "back": 1, "background": 1, "base": [3, 5, 9, 10, 12, 14], "base_interfac": 9, "baseinterfac": 9, "bash": 14, "basic": [2, 3, 4, 5, 14], "becaus": 20, "becom": 5, "been": 11, "befor": [1, 2, 6, 14], "behavior": [4, 8], "below": 5, "benc": [4, 5], "benchmark": 4, "best": [5, 6, 14], "beta": 6, "better": 5, "between": [3, 4, 9, 19, 20], "binari": 1, "blog": 6, "board": 3, "bodi": 12, "boolean": [8, 19, 20], "boost": 8, "booth": 5, "both": [4, 5, 19], "bottom": 14, "box": 2, "brake": 1, "branch": 1, "broadcast": [8, 19], "brook": 5, "buffer": [4, 23], "bug": 23, "build": [1, 14], "built": 23, "bullsey": 6, "c": [4, 6, 10, 14], "calcul": 3, "call": [2, 3, 14], "callbackreturn": 9, "can": [1, 2, 3, 4, 5, 7, 8, 9, 14, 16, 20, 23], "capabl": [3, 4], "care": [2, 4, 14], "case": [2, 4, 5, 14, 19, 20, 23], "caus": 20, "cc": 5, "cell": [2, 16], "certain": [15, 17, 21, 22], "chain": 5, "chanc": 1, "chang": [1, 2, 3, 5, 9, 10, 14, 20], "channel": 3, "check": [1, 2, 3, 4, 8, 9, 11, 14, 20, 23], "choos": 2, "chosen": 3, "claim": 11, "class": [3, 5, 9, 10, 14], "class_list_macro": 14, "clean": [1, 4], "cli": [3, 7, 10], "clock": 20, "close": 14, "cm": 3, "cmake": 14, "cmakelist": [9, 14], "code": [1, 2, 4, 5, 14], "cokela": 1, "colcon": 14, "collabor": 1, "collect": [5, 15, 17, 21, 22], "com": [3, 4, 6], "combin": [2, 8, 19, 20], "combinedrobothardwar": 2, "command": [2, 3, 4, 5, 7, 8, 11, 13, 14, 15, 17, 20, 21, 22, 23], "command_interfac": [3, 20], "command_interface_configur": [2, 14], "comment": 1, "commit": 1, "common": [3, 4, 13, 19, 23], "commun": [2, 3, 4, 5], "compani": [0, 5], "company_nam": 5, "compar": [3, 4, 5], "compass": 4, "compat": [1, 2, 5], "compil": 14, "complet": [3, 9, 13], "complex": [3, 4, 5], "compon": [0, 5, 6, 7, 12, 16, 18, 23], "composit": [2, 5], "comprehens": 11, "comput": [6, 12], "concept": [4, 5, 8, 11], "conductor": 4, "configur": [2, 3, 4, 5, 6, 9, 10, 11, 14, 19, 20], "conflict": [2, 3, 4], "connect": 3, "consid": [1, 10], "consist": [4, 20, 23], "const": 9, "constant": 2, "constraint": [14, 20], "constructor": [2, 14], "consult": 5, "contact": 5, "content": 14, "continu": 20, "contribut": [0, 1, 5], "contributor": 1, "control": [5, 7, 8, 9, 10, 11, 12, 15, 16, 17, 18, 19, 21, 22, 23], "control_msg": [20, 23], "control_toolbox": [4, 23], "controller_interfac": [3, 4, 10, 14, 16, 18], "controller_manag": [3, 4, 6, 10, 14, 20], "controller_manager_msg": 3, "controller_manager_timeout": 6, "controller_nam": [6, 10, 14], "controller_name_namespac": 14, "controller_name_packag": 14, "controller_typ": 6, "controllerinterfac": [2, 3, 10, 14], "controllermanag": 2, "controllernam": 14, "convent": 1, "copi": 14, "core": 1, "correct": [1, 2, 20], "correspond": [8, 14, 23], "could": [3, 5, 14, 19, 20], "cowboi": 1, "cpp": [2, 14], "creat": [2, 3, 5, 8, 14], "critic": [2, 4], "cross": [2, 19], "cubic": 20, "current": [1, 4, 9, 10, 20], "current_sensor": 19, "custom": [3, 8, 16, 19], "custom_interfac": 19, "custom_interface_with_following_offset": 8, "cycl": 5, "daemon": 10, "dai": 1, "data": [2, 3, 4, 8, 19], "dc": 3, "deactiv": [2, 3], "deal": 3, "debian": 6, "debug": 8, "decid": 2, "declar": [2, 14], "deeper": 5, "default": [2, 3, 8, 19, 20], "defin": [2, 3, 4, 8, 13, 14, 16, 18, 19, 20], "definit": [3, 13, 14, 16], "degrad": 4, "delv": 5, "demo": 5, "demonstr": 11, "deni": [4, 5], "depend": [1, 3, 9, 14, 20], "deriv": 3, "derived_effort": 19, "derived_veloc": 19, "describ": [2, 3], "descript": [1, 2, 5, 9, 14], "design": [2, 3, 4, 5, 23], "desir": [4, 20], "detail": [1, 2, 3, 8, 9, 14], "develop": [1, 5, 8, 11, 14], "deviat": 20, "diff_drive_control": [4, 10], "diffdrivecontrol": 10, "differ": [3, 4, 5, 15, 16, 17, 19, 21, 22], "differenti": [12, 13, 23], "difficulti": 4, "direct": [1, 2, 4, 14], "directli": [3, 23], "directori": 14, "discontinu": 20, "discourag": 20, "discours": 23, "discoveri": 10, "discuss": [1, 5, 23], "distribut": [1, 23], "do": [1, 2, 3, 4, 5, 6, 14, 20], "doc": 23, "document": [3, 4, 5, 8], "doe": [2, 14, 20], "doesn": 1, "dof": 3, "don": 1, "done": [5, 14], "doubl": [4, 8, 20], "down": 5, "doxygen": 7, "dr": 5, "draft": 4, "drawback": [2, 23], "drive": [12, 13, 23], "driver": [3, 5], "dynam": [3, 14], "dynamic_joint_st": 19, "e": [1, 2, 3, 4, 5, 8, 14, 15, 16, 17, 19, 20, 21, 22, 23], "each": [1, 3, 4, 9, 19], "earlier": 4, "easi": 4, "easiest": [6, 14], "edit": 5, "effector": 3, "effort": [2, 13, 15, 17, 19, 20], "effort_control": 13, "eg": 20, "either": 5, "els": 1, "emerg": 5, "empti": 14, "enabl": [2, 3, 4, 5, 6, 9, 11, 16], "encod": 3, "encourag": 1, "end": [2, 3, 9, 14, 20], "enforc": [2, 20], "engin": 14, "enjoi": 14, "ensur": [2, 5], "entri": [3, 14], "entropi": 1, "environ": [1, 3, 5], "envis": 4, "equival": 2, "error": [3, 4, 14, 19, 20], "especi": [1, 2], "essenti": 4, "etc": 23, "eu": 0, "european": 0, "even": 8, "event": 5, "everi": 23, "everyth": [4, 14], "exact": 14, "exactli": 1, "exampl": [2, 3, 4, 5, 8, 10, 11, 16, 19, 20, 23], "example_interfac": 16, "example_nam": 16, "example_param_read_for_sec": 3, "example_param_write_for_sec": 3, "excel": 2, "except": 1, "exchang": [2, 4], "execut": [3, 14, 20], "executor": 3, "exercis": 1, "exist": [2, 3, 4, 6, 9, 14], "exit": [6, 10], "expect": [1, 4, 20], "experi": 1, "explan": 3, "explicit": [5, 20], "explicitli": 1, "export": [3, 14], "export_": 2, "expos": 5, "extend": [2, 3, 4, 14], "extern": [2, 3, 4, 8], "extra": [5, 19], "extra_joint": 19, "extract": [2, 12], "factor": 5, "fail": 1, "failur": [4, 9], "fake": 7, "fake_sensor_command": 8, "fals": [8, 19, 20], "familiar": [4, 23], "featur": [1, 5, 8, 23], "feedback": [12, 19, 20], "feedforward": 20, "few": [4, 5], "field": 19, "figur": 3, "file": [2, 3, 4, 5, 6, 8, 14, 20], "final": [2, 5, 9], "find": 1, "find_packag": 14, "fine": 14, "first": [1, 2, 9, 14], "fiveai": 5, "fix": [1, 2], "fixup": 1, "flag": [14, 20], "flexibl": 3, "focu": 5, "focus": [4, 5], "folder": [3, 5, 14], "follow": [0, 1, 2, 3, 4, 8, 9, 10, 11, 13, 14, 20, 23], "follow_joint_trajectori": 20, "followjointtrajectori": 20, "forc": [3, 5, 10, 13], "forcetorquesensor": 16, "forcetorquesensor1dhardwar": 3, "forget": 2, "fork": 1, "form": 4, "format": [4, 19], "forward": [5, 8, 13, 20, 23], "forward_acceleration_control": 11, "forward_illegal1_control": 11, "forward_illegal2_control": 11, "forward_position_control": 11, "forward_velocity_control": 11, "forwardcommandcontrol": 3, "found": [3, 7, 14, 20, 23], "foxi": [1, 3, 5], "frame": [16, 18], "frame_id": [3, 16, 18], "framework": [1, 2, 4, 5, 6, 8, 9, 10, 11, 13, 14, 19, 23], "frequenc": 4, "friend": 14, "friendli": 3, "from": [0, 1, 2, 3, 5, 6, 8, 10, 12, 14, 16, 18, 20, 23], "ft": 16, "full": 14, "function": [1, 2, 3, 4, 5, 6], "fund": 0, "further": 14, "furthermor": 5, "futur": [1, 5], "g": [1, 2, 3, 4, 5, 8, 14, 15, 17, 19, 21, 22, 23], "galact": 1, "gazebo": 4, "gener": [4, 5, 14, 20, 23], "geometry_msg": 16, "get": [5, 9, 23], "github": [3, 4, 7, 13, 23], "githubusercont": 3, "give": [1, 3, 5, 23], "given": [3, 20], "gmock": 4, "gmt": 23, "go": [5, 14], "goal": [4, 5, 20, 23], "goal_tim": 20, "good": [1, 4], "googl": 23, "gpio": 4, "grace": 4, "grant": 0, "granular": 2, "great": 14, "green": 1, "gripper": [2, 3, 8], "gripper_joint": 3, "group": [4, 20, 23], "guarante": 20, "guard": 14, "gui": 11, "guid": [5, 14], "guidelin": 1, "gyroscop": 4, "h": [6, 10, 14], "ha": [0, 1, 3, 4, 5, 14, 19], "had": 2, "hand": 3, "handl": [1, 2, 4, 5, 20], "handler": 5, "hard": [2, 4], "hardwar": [5, 6, 7, 8, 11, 13, 14, 23], "hardware_interfac": [2, 3, 8, 9, 13, 14], "hardware_interface_status_valu": 9, "hardwareinfo": 2, "have": [1, 2, 3, 4, 6, 8, 9, 11, 14, 19, 20], "header": [1, 9, 14], "heartbeat": 4, "heavi": 5, "help": [1, 6, 10, 14], "here": [2, 7, 14, 20], "hereund": 3, "hidden": 10, "high": 4, "horizon": 0, "hot": 5, "hour": 4, "how": [1, 4, 5, 14], "howev": [4, 6], "hpp": [9, 14], "html": 1, "http": [0, 1, 3, 4, 6], "humanoid": 3, "hw_if_acceler": 13, "hw_if_effort": 13, "hw_if_posit": 13, "hw_if_veloc": 13, "hydraul": [19, 20], "hz": 4, "i": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23], "id8": 1, "idea": 23, "ideal": [5, 8], "identifi": 4, "ifndef": 14, "ignit": 4, "ignor": [12, 20], "imag": 6, "immedi": 1, "impact": 1, "implement": [2, 3, 4, 5, 8, 11, 12, 13, 14, 20, 23], "import": [3, 14, 20], "importantli": 14, "imposs": 2, "improv": 4, "imu": [4, 13], "imusensor": 18, "in_deactiv": 9, "inc": 5, "includ": [2, 4, 9, 10, 14], "increas": 1, "inde": 11, "independ": 3, "individu": 14, "industri": [0, 3, 4], "influenc": 5, "info": [1, 9], "inform": [0, 8, 14, 23], "ingredi": 5, "init": [2, 14], "initi": [2, 14], "inject": 5, "innov": 0, "input": [3, 4, 5, 12, 20], "insert": 5, "insid": 8, "instal": [3, 6, 14], "instanc": [4, 19], "instant": 20, "instead": [3, 8, 20], "institut": 0, "integr": [3, 4, 5, 8, 11, 20, 23], "intent": [1, 8], "interact": [3, 5, 6, 10], "interfac": [4, 5, 6, 7, 8, 9, 11, 13, 14, 16, 18, 23], "interface_nam": 16, "interface_typ": 14, "intern": [4, 20], "interpol": [13, 20], "interrupt": [2, 6], "introduc": [4, 5], "introduct": [5, 20], "involv": 5, "issu": [1, 4, 23], "its": [1, 2, 3, 4, 5, 6, 16, 18, 19], "itself": 2, "ivanov": 5, "jerk": [5, 12], "jitter": 6, "johann": 5, "join": 23, "joint": [2, 3, 5, 12, 13, 14, 15, 17, 19, 21, 22, 23], "joint1": [3, 8, 10, 11, 20], "joint2": [3, 10, 11, 20], "joint3": 20, "joint4": 20, "joint5": 20, "joint6": 20, "joint_a2": 2, "joint_nam": [14, 20], "joint_stat": 19, "joint_state_broadcast": 11, "joint_state_control": 10, "joint_trajectori": 20, "joint_trajectory_control": [4, 10], "joint_trajectory_plugin": 2, "jointstatecontrol": 10, "jointtrajectori": 20, "jointtrajectorycontrol": [2, 10], "jointtrajectorycontrollerst": 20, "keep": [1, 14], "kernel": [5, 6], "kf_estimated_posit": 19, "khz": 4, "kill": [6, 10], "kinemat": 5, "knudsen": 5, "kuka": 3, "last": [9, 14, 20], "latest": 3, "latter": 19, "launch": [3, 6, 8, 11], "layer": 5, "least": [14, 20], "leav": 6, "less": 16, "let": 11, "level": [4, 5, 15, 17, 20, 21, 22], "librari": [2, 3, 4, 10, 14], "licens": 5, "life": 5, "lifecycl": [2, 3, 5, 6, 9], "lifecyclenod": 3, "lifecyclenodeinterfac": 9, "like": [1, 2, 3, 4, 5], "limit": [1, 4, 5, 12], "line": [3, 7, 9, 14, 19], "linear": [12, 20], "linear_acceler": 18, "link": [3, 5, 9], "linter": 1, "linux": 6, "list": [3, 5, 9, 10, 11, 13, 14, 20, 23], "list_hardware_interfac": 11, "littl": 6, "live": [1, 5], "load": [3, 6, 10, 11, 14], "load_control": 11, "local": [1, 19], "logic": 3, "long": 4, "look": 5, "loop": [3, 5, 6, 14, 19, 20], "lovro": 5, "low": [4, 5], "lt": 6, "ltd": 5, "machin": [3, 4], "macro": [2, 3, 14], "made": [5, 9], "magyar": [4, 5], "mai": [9, 15, 17, 21, 22], "main": [1, 3, 4, 5, 6, 8, 14, 23], "maintain": [1, 3, 4], "major": 0, "make": [1, 2, 4, 5, 6, 23], "manag": [2, 4, 5, 7, 9, 10, 14, 23], "mandatori": [3, 16, 18, 20], "mani": [5, 14], "manipul": [5, 20], "manual": [3, 4, 14, 23], "map": [8, 19, 20], "map_interface_to_joint_st": 19, "mark": 2, "master": [1, 3, 4], "match": 3, "materi": 5, "matrix": 19, "matter": 1, "max": 3, "max_forc": 3, "maxim": 20, "mayb": 2, "md": 3, "mean": [1, 2, 8], "measur": [3, 8, 16, 19], "mechan": 20, "medium": 4, "meet": 23, "member": [2, 14], "memori": [4, 14], "mentor": 4, "messag": [1, 4, 6, 10, 16, 18, 19, 20, 23], "method": [1, 2, 3, 9, 14], "mid": 1, "mimic": 8, "mimick": 8, "min": 3, "min_forc": 3, "mind": [1, 14], "minim": 23, "mirror": 8, "miss": [4, 19], "mobil": [5, 12], "mock": 5, "mode": [4, 20], "modifi": 5, "modul": 4, "modular": [3, 5], "moment": 4, "monitor": 20, "more": [0, 1, 2, 3, 4, 8, 14], "most": [4, 14], "motiv": 4, "motor": [3, 4], "moveit": [5, 8], "moveit2": [4, 5], "movement": 4, "msg": [16, 18, 20], "much": [4, 14], "multi": [2, 3, 4, 5, 11], "multipl": [2, 3, 19, 20], "multipli": 8, "must": 1, "my": 5, "my_state_broadcast": 19, "najjar": 5, "name": [1, 2, 3, 5, 6, 8, 10, 14, 16, 18, 19, 20], "namespac": [6, 13, 14, 19, 20], "nan": 20, "nathan": 5, "nav2": 5, "navig": 5, "necessari": [1, 9], "need": [2, 3, 4, 5, 14], "net": 5, "new": [1, 5, 13, 20, 23], "next": [1, 20], "nobodi": 1, "node": [3, 6, 8, 9, 10, 11, 14], "node_interfac": 9, "non": [1, 5, 16], "none": [14, 19], "normal": 6, "note": [1, 3, 11, 23], "now": [11, 14], "numer": 20, "numeric_limit": 20, "obei": 5, "object": 3, "odometri": 12, "offer": [5, 6], "offlin": 8, "offset": [8, 19, 20], "often": [4, 8, 14, 19], "ok": 14, "on_activ": [2, 9, 14], "on_configur": [2, 14], "on_deactiv": [2, 9, 14], "on_error": 9, "on_init": 9, "onc": [4, 5], "one": [1, 2, 3, 4, 5, 14, 16, 19, 23], "onli": [1, 2, 3, 4, 5, 6, 9, 10, 14, 16, 19, 20], "onlin": [5, 14], "open": [1, 19, 20], "open_loop_control": 20, "openli": 5, "oper": 23, "opposit": 14, "optim": [2, 6], "option": [2, 6, 8, 9, 10, 14, 16, 19, 20], "orbit": 4, "orchestr": 4, "org": [4, 6], "organ": [1, 5, 23], "orient": 18, "origin": [1, 5], "other": [1, 2, 3, 5, 14, 19], "otherwis": [14, 19], "our": [1, 3, 4, 5], "out": [2, 12], "output": [3, 4, 5, 10, 16, 18, 20], "over": [1, 4], "overcom": 23, "overrid": 14, "overview": 5, "p": 6, "pace": 1, "packag": [1, 2, 3, 6, 9, 11, 14, 16, 18, 20, 23], "package_nam": 14, "parallel": [3, 8], "param": [3, 6, 8], "param_fil": 6, "paramet": [2, 5, 14], "parent": 14, "pars": [2, 7], "part": [1, 4, 5, 14], "parti": 5, "path": 5, "pendant": 5, "peopl": 1, "per": [4, 16], "perform": [5, 6], "permiss": 6, "physic": [2, 3, 8, 9], "picknik": 5, "pid": [20, 23], "ping": 1, "pipe": 8, "pipelin": 1, "pixel": 5, "pkg": 14, "place": [4, 14, 20], "plan": [5, 23], "plapp": 5, "pleas": [1, 23], "plu": 20, "plugin": [3, 9, 14], "pluginlib": [2, 3, 14], "pluginlib_export_class": [2, 14], "pluginlib_export_plugin_description_fil": 14, "point": [3, 13, 14, 23], "port": [4, 9], "posit": [2, 3, 5, 6, 10, 11, 13, 15, 17, 19, 20, 21, 22], "position_control": [13, 20], "position_state_following_offset": 8, "position_velocity_acceleration_control": 20, "position_velocity_control": 20, "positionactuatorhardwar": 3, "possibl": [1, 3, 4, 6, 14, 20], "potenti": [1, 14], "power": 5, "pr": 1, "practic": 5, "practition": 5, "pre": 1, "predefin": 20, "prefac": 5, "prefer": 4, "prefix": [14, 16, 18], "prepar": 14, "preprocessor": 14, "preset": 4, "previou": 23, "previous_st": 9, "print": 19, "prioriti": 6, "problem": [5, 23], "process": 14, "product": 19, "profil": 4, "programm": 0, "project": [0, 1, 23], "proper": [1, 20], "proport": 1, "propos": 23, "protect": [4, 14], "prove": 11, "provid": [3, 4, 5, 6, 8, 11, 13, 14, 19, 20, 23], "proxi": 20, "public": 14, "publish": [4, 12, 16, 18, 19, 20, 23], "pull": 4, "pure": [3, 20], "purpos": 4, "put": [1, 14], "py": 11, "qualiti": [0, 1], "question": 23, "queu": 20, "quick": [5, 9], "quiet_nan": 20, "quintic": 20, "quit": 4, "random": 1, "rang": 3, "rate": [4, 20], "raw": 3, "rclcpp": 14, "rclcpp_lifecycl": [9, 14], "rclcpp_lifecyl": 9, "re": 3, "reach": 20, "read": [1, 2, 3, 14, 19, 20], "readabl": 4, "readi": [5, 14], "readm": 3, "real": [2, 4, 5, 6, 8, 14, 19, 20, 23], "realiz": [3, 5], "realtim": [5, 12, 20, 23], "realtime_tool": [4, 23], "reason": 5, "receiv": [0, 2], "recent": 14, "recommend": [3, 5], "record": 5, "recov": 9, "reduc": [1, 8], "refer": 3, "refern": 9, "regard": 23, "regardless": 1, "regist": 2, "relat": [3, 4, 5], "releas": [1, 3, 5, 6], "relev": [4, 23], "reli": 4, "relianc": 19, "reload": [9, 10], "rememb": 14, "remov": 9, "renam": 9, "repeatedli": 1, "replac": [4, 9], "repo": [1, 3], "report": [3, 4, 19, 23], "repositori": [3, 4, 7, 13, 23], "repres": [3, 9], "reproduc": 23, "request": [2, 19, 23], "requir": [1, 2, 3, 4, 14], "research": [0, 5], "reserv": 14, "resourc": 2, "resourcemanag": 2, "respect": [4, 5], "rest_syntax": 1, "result": [1, 3, 19], "return": [9, 14, 19], "return_typ": [9, 14], "reus": 5, "review": [1, 4, 23], "rewrit": [4, 23], "rich": 4, "right": 4, "rigid": 2, "rm": 3, "ro": [0, 1, 3, 4, 6, 8, 10, 23], "roadmap": [4, 23], "robot": [0, 2, 4, 11, 12, 16, 19, 23], "robot_state_publish": 19, "robothw": 2, "robust": 20, "root": 14, "ros1": 5, "ros2": [3, 4, 5, 6, 10, 11, 14, 23], "ros2_control": [1, 3, 5, 6, 8, 9, 11, 14], "ros2_control_demo": [1, 3, 23], "ros2_control_demo_bringup": 11, "ros2_control_demo_hardwar": [3, 11], "ros2_control_nod": 3, "ros2_control_test_asset": 14, "ros2_control_test_nod": 11, "ros2controlcli": 3, "ros__paramet": 20, "ros_control": [4, 5, 23], "ros_distro": 1, "rosin": 0, "rrbot": [3, 11], "rrbot_system_multi_interfac": 11, "rrbot_tcp": 3, "rrbotforcetorquesensor1d": 3, "rrbotgripp": 3, "rrbotsystempositiononli": 3, "rrbotsystempositiononlyhardwar": [2, 3], "rsi": 3, "rt": 6, "rule": 14, "run": [4, 5, 6, 10], "rune": 5, "rviz": 19, "safe": [2, 12, 14, 20], "safeti": 4, "same": [1, 3, 4, 16], "satisfi": 1, "scale": 5, "scenario": 4, "sched_fifo": 6, "scope": 1, "script": [3, 4, 14], "search": 14, "second": [4, 10, 14, 23], "section": [1, 2, 14], "see": [1, 2, 3, 11, 14, 16, 18, 20], "segment": 20, "semant": [5, 16, 18], "semantic_compon": 4, "semi": 1, "sens": [2, 3, 16], "sensibl": 2, "sensor": [2, 3, 4, 8, 9, 13], "sensor_msg": 18, "sensor_nam": [16, 18], "sensorinterfac": 2, "sent": 4, "separ": [1, 2, 3, 19], "serv": [1, 3, 4], "server": 20, "servic": [3, 4, 6, 9], "set": [1, 2, 4, 5, 6, 8, 9, 10, 11, 15, 17, 19, 20, 21, 22], "set_controller_st": 11, "set_stat": 10, "setup": [3, 4, 14], "share": [5, 14], "shell": 14, "short": [1, 14, 23], "should": [1, 2, 4, 5, 6, 9, 10, 11, 14, 19], "show": [1, 3, 5, 6, 9, 10, 19], "showcas": [4, 5], "shown": 5, "side": [3, 4, 5], "signal": 4, "similar": [1, 3, 5], "similarli": 20, "simpl": [3, 4, 5, 11, 14], "simplecontrollermanag": 4, "simpli": [5, 20], "simplifi": [14, 23], "simul": [4, 8, 11], "singl": 5, "six": 16, "size": 4, "skeleton": 3, "skill": 4, "slightli": 19, "smooth": 23, "snake_cas": 14, "snippet": 2, "so": [3, 14], "softwar": [0, 3], "solut": [2, 5], "some": [1, 4, 5, 19, 20, 23], "sort": [13, 14], "sourc": [1, 3, 5, 14], "space": [12, 20], "specif": [4, 9, 19, 20], "specifi": [14, 20], "sphinx": 1, "spin": 10, "spin_tim": 10, "spline": 20, "squash": 1, "src": [3, 14], "srv": 3, "stabl": [1, 4], "stack": [3, 5], "stage": 1, "standard": [1, 2, 3, 4, 5, 10, 13, 16, 19], "start": [1, 2, 5, 6, 9, 10, 11, 14, 20, 23], "startup": 6, "state": [2, 3, 4, 5, 8, 9, 10, 11, 13, 14, 16, 19, 20], "state_interfac": [3, 20], "state_interface_configur": [2, 14], "state_publish_r": 20, "statu": [4, 9, 10, 20], "status_": 9, "std": 20, "step": [14, 20, 23], "still": [1, 2, 3], "stogl": 5, "stop": [2, 5, 6, 9, 10, 11, 12], "stopped_velocity_toler": 20, "store": 14, "strategi": [2, 20], "stream": [2, 5], "stretch": 4, "strict": 10, "strictli": 9, "string": [2, 8, 14, 19, 20], "struct": 4, "structur": [3, 4, 14, 20], "studi": 5, "style": [1, 14], "submit": [1, 5], "substanti": 9, "success": [9, 14], "suffici": [1, 16], "suit": 6, "suitabl": [2, 5], "summari": [1, 5, 23], "support": [0, 2, 3, 5, 8, 10, 14, 19, 20, 23], "sure": [1, 4, 23], "surround": 2, "switch": [4, 10], "switch_control": 11, "switch_timeout": 10, "symbol": 9, "sync": 1, "syscal": 6, "system": [2, 3, 4, 5, 9, 11, 20, 23], "systemcompon": 5, "systeminterfac": [2, 8], "s\u00f8e": 5, "t": [1, 6], "tag": [3, 14, 23], "take": [2, 4, 14, 19], "talk": 5, "target": [1, 13, 14, 20], "task": [4, 5, 12], "tcp_fts_sensor": 3, "teach": 5, "techniqu": 19, "teleoper": 5, "templat": [11, 14, 20], "term": [20, 23], "test": [1, 4, 8, 11, 14], "test_control": 10, "test_controller_nam": 10, "test_depend": 14, "test_load_": 14, "thank": 1, "thei": [1, 2, 3, 4, 5, 8, 10, 13, 14, 20], "them": [1, 3, 4, 6, 14, 19], "theori": [3, 23], "therefor": [4, 6, 14, 19, 20], "thi": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 14, 15, 16, 17, 20, 21, 22, 23], "thing": 1, "thoma": 1, "those": [1, 2, 3, 4, 8, 14, 16, 19, 20], "thread": [4, 6], "three": [1, 2, 3, 9, 14], "through": [3, 4, 10, 12, 13, 14, 20, 23], "throughput": 6, "time": [1, 2, 4, 5, 6, 8, 10, 12, 14, 16, 20, 23], "timeout": [6, 10], "tip": 5, "titl": 1, "togeth": 3, "toler": 20, "toni": 5, "took": 2, "tool": [2, 4, 5], "toolkit": 23, "top": 5, "topic": [4, 5, 20], "torqu": [3, 13], "torque_sensor": 19, "traceabl": 1, "track": [3, 23], "tracker": 23, "trajectori": [5, 13, 23], "trajectory_msg": 20, "translat": 12, "transmiss": 3, "tree": 4, "tri": 20, "trick": 4, "tricycl": 5, "trigger": 4, "trivial": [1, 8], "true": 20, "tutori": 1, "twist": 12, "two": [1, 3, 4, 6, 14, 16], "txt": [9, 14], "type": [1, 2, 3, 5, 6, 9, 10, 13, 14, 16, 18], "typic": [4, 19, 20], "u": [1, 6], "ubuntu": 6, "unclaim": [10, 11], "unconfigur": [6, 9], "undefin": 9, "under": [0, 5, 14, 23], "understand": [1, 4], "unifi": 5, "union": 0, "uniqu": 14, "unit": 4, "univers": [1, 4, 5], "unless": 19, "unload": [3, 6, 10], "unreleas": 23, "until": 6, "up": [1, 5, 11], "updat": [2, 3, 4, 14], "upgrad": 5, "ur": 5, "urdf": 2, "us": [1, 2, 3, 4, 5, 6, 8, 9, 10, 13, 15, 16, 17, 18, 19, 21, 22, 23], "usabl": 3, "usag": [5, 6, 10], "use_local_top": 19, "usecas": 19, "user": 4, "usual": [2, 8, 14], "util": 5, "valu": [2, 3, 4, 8, 14, 19, 20], "valv": 3, "variabl": [2, 4, 14], "variou": 4, "vc": 3, "vector": 14, "veloc": [2, 3, 5, 11, 13, 19, 20, 21, 22], "velocity_control": 13, "veri": [1, 2, 4], "version": [1, 4], "via": 3, "virtual": 5, "visibility_control": 14, "visibl": 14, "visit": 3, "visual": 19, "vivid": 1, "wa": [4, 14], "wai": [1, 14, 16], "wait": [6, 10], "want": [3, 6], "warn": 19, "waypoint": [5, 13, 20], "we": [1, 4, 5, 9, 19], "wednesdai": 23, "weekend": 1, "welcom": 1, "well": [5, 6, 10, 20], "were": 4, "wg": 23, "wget": 3, "what": 5, "wheel": 12, "when": [1, 2, 3, 4, 6, 8, 10, 14, 20], "where": [1, 4, 14, 19], "which": [2, 3, 4, 5, 10, 12, 14, 16, 18, 19, 20], "while": [3, 4, 5, 11, 20], "wide": 23, "wikipedia": [3, 23], "wild": 5, "window": 14, "without": [2, 3, 8, 14], "work": [1, 4, 5, 12, 14, 15, 17, 19, 20, 21, 22, 23], "workspac": [3, 14], "world": [6, 8], "would": 19, "wrap": 20, "wrapper": [16, 18], "wrenchstamp": 16, "write": [2, 3, 4, 5, 13], "written": 14, "x": [12, 16, 18], "xacro": 3, "xml": [2, 9, 14], "y": 16, "yaml": [3, 4, 20], "yet": 20, "yield": 20, "you": [1, 2, 3, 5, 6, 8, 9, 14, 23], "your": [1, 2, 5, 8, 14, 23], "z": [12, 16], "zeleank": 5, "zelenak": 5, "\u0161togl": [4, 5]}, "titles": ["Acknowledgements", "Pull Requests", "Differences to ros_control (ROS1)", "Getting Started", "Project Ideas for GSoC 2022", "Resources", "Controller Manager", "API Documentation", "Fake Components", "Hardware Components", "Command Line Interface", "Demos", "diff_drive_controller", "ros2_controllers", "Writing a new controller", "effort_controllers", "Force Torque Sensor Broadcaster", "forward_command_controller", "IMU Sensor Broadcaster", "joint_state_broadcaster", "joint_trajectory_controller", "position_controllers", "velocity_controllers", "Welcome to the ros2_control documentation - Galactic!"], "titleterms": {"": [2, 20], "02": 5, "05": 5, "06": 5, "07": 5, "10": 5, "12": 5, "13": 5, "2021": 5, "2022": [4, 5], "2023": 5, "5": 5, "about": 20, "access": 2, "acknowledg": 0, "add": 4, "api": 7, "architectur": 3, "asynchron": 4, "avail": 13, "best": 13, "broadcast": [13, 16, 18], "call": 9, "ci": 1, "class": 2, "command": [10, 12, 19], "commun": 23, "compil": 3, "compon": [2, 3, 4, 8, 9], "concept": 7, "confer": 5, "configur": 1, "control": [2, 3, 4, 6, 13, 14, 20], "core": 7, "demo": [4, 11], "descript": 3, "detail": 20, "determin": 6, "develop": 23, "diagram": 5, "diff_drive_control": 12, "differ": 2, "document": [1, 7, 23], "dure": 9, "effort_control": 15, "error": 9, "extern": 14, "fake": 8, "featur": [4, 7, 12, 20], "forc": 16, "forward_command_control": 17, "foxi": 9, "fr": 5, "framework": 3, "from": [4, 9], "function": 7, "galact": [9, 23], "gener": 8, "get": 3, "gsoc": 4, "guid": 2, "guidelin": 13, "handl": 9, "happen": 9, "hardwar": [2, 3, 4, 9, 12, 15, 17, 19, 20, 21, 22], "helper": 6, "idea": 4, "imag": 5, "imu": 18, "industri": 5, "interfac": [2, 3, 10, 12, 15, 17, 19, 20, 21, 22], "joint": [8, 20], "joint_state_broadcast": 19, "joint_trajectory_control": 20, "jointtrajectorycontrol": 20, "line": 10, "list_control": 10, "list_controller_typ": 10, "list_hardware_interfac": 10, "load_control": 10, "manag": [3, 6], "meetup": 5, "merg": 1, "migrat": [2, 9], "mission": 4, "mode": 11, "munich": 5, "new": 14, "nomenclatur": 13, "organ": 11, "organis": 23, "other": [12, 20], "overview": 23, "paramet": [8, 16, 18, 19, 20], "pariti": 4, "per": 8, "position_control": 21, "practic": 13, "present": 5, "process": 1, "project": 4, "pull": 1, "read": 9, "refer": 14, "reload_controller_librari": 10, "repositori": [1, 11], "represent": 20, "request": 1, "resourc": [3, 5], "ro": 5, "robot": [3, 5], "robothardwar": 2, "ros1": [2, 4], "ros2": 20, "ros2_control": [2, 4, 13, 23], "ros_control": 2, "roscon": 5, "rosdevdai": 5, "rule": 1, "run": 3, "script": 6, "semant": 4, "sensor": [16, 18], "set_controller_st": 10, "spawner": 6, "special": 20, "start": 3, "structur": [1, 2], "support": 4, "switch": 11, "switch_control": 10, "system": 8, "tbd": 20, "torqu": 16, "trajectori": 20, "tutori": 4, "type": [12, 15, 17, 19, 20, 21, 22], "unload_control": 10, "unspawn": 6, "urdf": 3, "us": [14, 20], "user": 3, "veloc": 12, "velocity_control": 22, "version": 20, "weekli": 5, "welcom": 23, "world": 5, "write": [1, 9, 14], "your": 3}}) \ No newline at end of file +Search.setIndex({"alltitles": {"2021-05 ROSCon Fr 2021": [[5, "roscon-fr-2021"]], "2021-06 ROSDevDay 2021": [[5, "rosdevday-2021"]], "2021-10 ROS World 2021": [[5, "ros-world-2021"]], "2021-10-07 Weekly Robotics Meetup #13": [[5, "weekly-robotics-meetup-13"]], "2022-06 ROSCon Fr 2022": [[5, "roscon-fr-2022"]], "2022-10 ROSCon 2022": [[5, "roscon-2022"]], "2022-12 ROS-Industrial Conference 2022": [[5, "ros-industrial-conference-2022"]], "2023-02 ROS Meetup Munich #5": [[5, "ros-meetup-munich-5"]], "API Documentation": [[7, "api-documentation"]], "Acknowledgements": [[0, "acknowledgements"]], "Add support for hardware semantic components": [[4, "add-support-for-hardware-semantic-components"]], "Architecture": [[3, "architecture"]], "Asynchronous Control Components": [[4, "asynchronous-control-components"]], "Available Broadcasters": [[13, "available-broadcasters"]], "Available Controllers": [[13, "available-controllers"]], "CI configuration": [[1, "ci-configuration"]], "Command Line Interface": [[10, "command-line-interface"]], "Commands": [[19, "commands"]], "Compiling": [[3, "compiling"]], "Concepts": [[7, "concepts"]], "Controller Manager": [[3, "controller-manager"], [6, "controller-manager"]], "Controller Migration": [[2, "controller-migration"]], "Controllers": [[3, "controllers"], [13, "id1"]], "Controller\u2019s Access to Hardware": [[2, "controller-s-access-to-hardware"]], "Core functionalities": [[7, "core-functionalities"]], "Demos": [[11, "demos"]], "Details about parameters": [[20, "details-about-parameters"]], "Determinism": [[6, "determinism"]], "Development Organisation and Communication": [[23, "development-organisation-and-communication"]], "Diagrams": [[5, "diagrams"]], "Differences to ros_control (ROS1)": [[2, "differences-to-ros-control-ros1"]], "Fake Components": [[8, "fake-components"]], "Feature-parity for controllers from ROS1": [[4, "feature-parity-for-controllers-from-ros1"]], "Features": [[7, "features"]], "Force Torque Sensor Broadcaster": [[16, "force-torque-sensor-broadcaster"]], "Generic System": [[8, "generic-system"]], "Getting Started": [[3, "getting-started"]], "Guidelines and Best Practices": [[13, "guidelines-and-best-practices"]], "Handling of errors that happen during read() and write() calls": [[9, "handling-of-errors-that-happen-during-read-and-write-calls"]], "Hardware Components": [[3, "hardware-components"], [9, "hardware-components"]], "Hardware Description in URDF": [[3, "hardware-description-in-urdf"]], "Hardware Interfaces": [[2, "hardware-interfaces"]], "Hardware Structures - classes": [[2, "hardware-structures-classes"]], "Hardware interface type": [[12, "hardware-interface-type"], [15, "hardware-interface-type"], [17, "hardware-interface-type"], [19, "hardware-interface-type"], [20, "hardware-interface-type"], [21, "hardware-interface-type"], [22, "hardware-interface-type"]], "Helper scripts": [[6, "helper-scripts"]], "IMU Sensor Broadcaster": [[18, "imu-sensor-broadcaster"]], "Images": [[5, "images"]], "Migration Guide to ros2_control": [[2, "migration-guide-to-ros2-control"]], "Migration from Foxy to Galactic": [[9, "migration-from-foxy-to-galactic"]], "Mission-Control for ros2_control": [[4, "mission-control-for-ros2-control"]], "Mode switching demo": [[11, "mode-switching-demo"]], "Nomenclature": [[13, "nomenclature"]], "Other features": [[12, "other-features"], [20, "other-features"]], "Overview": [[23, "overview"]], "Parameters": [[8, "parameters"], [16, "parameters"], [18, "parameters"], [19, "parameters"]], "Per-joint Parameters": [[8, "per-joint-parameters"]], "Presentations": [[5, "presentations"]], "Project Ideas for GSoC 2022": [[4, "project-ideas-for-gsoc-2022"]], "Pull Requests": [[1, "pull-requests"]], "ROS2 interface of the controller": [[20, "ros2-interface-of-the-controller"]], "Repository organization": [[11, "repository-organization"]], "Repository structure and CI configuration": [[1, "repository-structure-and-ci-configuration"]], "Resource Manager": [[3, "resource-manager"]], "Resources": [[5, "resources"]], "RobotHardware to Components": [[2, "robothardware-to-components"]], "Rules for the repositories and process of merging pull requests": [[1, "rules-for-the-repositories-and-process-of-merging-pull-requests"]], "Running the Framework for Your Robot": [[3, "running-the-framework-for-your-robot"]], "Specialized versions of JointTrajectoryController (TBD in \u2026)": [[20, "specialized-versions-of-jointtrajectorycontroller-tbd-in"]], "Trajectory representation": [[20, "trajectory-representation"]], "Tutorials and Demos for ros2_control": [[4, "tutorials-and-demos-for-ros2-control"]], "Useful External References": [[14, "useful-external-references"]], "User Interfaces": [[3, "user-interfaces"]], "Using Joint Trajectory Controller(s)": [[20, "using-joint-trajectory-controller-s"]], "Velocity commands": [[12, "velocity-commands"]], "Welcome to the ros2_control documentation - Galactic!": [[23, "welcome-to-the-ros2-control-documentation-galactic"]], "Writing a new controller": [[14, "writing-a-new-controller"]], "Writing documentation": [[1, "writing-documentation"]], "diff_drive_controller": [[12, "diff-drive-controller"]], "effort_controllers": [[15, "effort-controllers"]], "forward_command_controller": [[17, "forward-command-controller"]], "joint_state_broadcaster": [[19, "joint-state-broadcaster"]], "joint_trajectory_controller": [[20, "joint-trajectory-controller"]], "list_controller_types": [[10, "list-controller-types"]], "list_controllers": [[10, "list-controllers"]], "list_hardware_interfaces": [[10, "list-hardware-interfaces"]], "load_controller": [[10, "load-controller"]], "position_controllers": [[21, "position-controllers"]], "reload_controller_libraries": [[10, "reload-controller-libraries"]], "ros2_controllers": [[13, "ros2-controllers"]], "set_controller_state": [[10, "set-controller-state"]], "spawner": [[6, "spawner"]], "switch_controllers": [[10, "switch-controllers"]], "unload_controller": [[10, "unload-controller"]], "unspawner": [[6, "unspawner"]], "velocity_controllers": [[22, "velocity-controllers"]]}, "docnames": ["doc/acknowledgements/acknowledgements", "doc/contributing/contributing", "doc/differences_to_ros1/differences_to_ros1", "doc/getting_started/getting_started", "doc/project_ideas", "doc/resources/resources", "doc/ros2_control/controller_manager/doc/userdoc", "doc/ros2_control/doc/index", "doc/ros2_control/hardware_interface/doc/fake_components_userdoc", "doc/ros2_control/hardware_interface/doc/hardware_components_userdoc", "doc/ros2_control/ros2controlcli/doc/userdoc", "doc/ros2_control_demos/doc/index", "doc/ros2_controllers/diff_drive_controller/doc/userdoc", "doc/ros2_controllers/doc/controllers_index", "doc/ros2_controllers/doc/writing_new_controller", "doc/ros2_controllers/effort_controllers/doc/userdoc", "doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc", "doc/ros2_controllers/forward_command_controller/doc/userdoc", "doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc", "doc/ros2_controllers/joint_state_broadcaster/doc/userdoc", "doc/ros2_controllers/joint_trajectory_controller/doc/userdoc", "doc/ros2_controllers/position_controllers/doc/userdoc", "doc/ros2_controllers/velocity_controllers/doc/userdoc", "index"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.todo": 2}, "filenames": ["doc/acknowledgements/acknowledgements.rst", "doc/contributing/contributing.rst", "doc/differences_to_ros1/differences_to_ros1.rst", "doc/getting_started/getting_started.rst", "doc/project_ideas.rst", "doc/resources/resources.rst", "doc/ros2_control/controller_manager/doc/userdoc.rst", "doc/ros2_control/doc/index.rst", "doc/ros2_control/hardware_interface/doc/fake_components_userdoc.rst", "doc/ros2_control/hardware_interface/doc/hardware_components_userdoc.rst", "doc/ros2_control/ros2controlcli/doc/userdoc.rst", "doc/ros2_control_demos/doc/index.rst", "doc/ros2_controllers/diff_drive_controller/doc/userdoc.rst", "doc/ros2_controllers/doc/controllers_index.rst", "doc/ros2_controllers/doc/writing_new_controller.rst", "doc/ros2_controllers/effort_controllers/doc/userdoc.rst", "doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.rst", "doc/ros2_controllers/forward_command_controller/doc/userdoc.rst", "doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.rst", "doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.rst", "doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.rst", "doc/ros2_controllers/position_controllers/doc/userdoc.rst", "doc/ros2_controllers/velocity_controllers/doc/userdoc.rst", "index.rst"], "indexentries": {}, "objects": {}, "objnames": {}, "objtypes": {}, "terms": {"": [0, 1, 3, 4, 5, 11, 14, 23], "0": [3, 8, 19, 20], "01": 20, "03": 20, "04": 6, "05": [20, 23], "1": [1, 3, 4, 5, 8, 14], "100": 3, "11": 23, "12": 23, "171": 20, "175": 4, "2": [1, 3, 5, 8], "20": 20, "2020": 0, "2024": 23, "22": 6, "23": 3, "3": [3, 4], "302": 4, "303": 4, "304": 4, "350": 4, "3rd": 5, "40": 23, "43": 3, "45": 4, "50": [3, 6, 20], "500": 4, "6d": 16, "732287": 0, "81": 4, "9": 4, "A": [3, 5, 14, 19, 20], "As": [1, 14], "At": 14, "BY": 5, "Be": 1, "By": [19, 20], "For": [1, 3, 4, 5, 6, 8, 9, 14, 20], "If": [1, 2, 3, 6, 9, 14, 16, 19, 20, 23], "In": [2, 3, 4, 5, 14, 19], "It": [1, 2, 3, 4, 6, 16, 19], "Its": 23, "Not": 20, "On": 3, "One": 5, "Such": 4, "That": [1, 14], "The": [0, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 16, 18, 19, 20, 23], "There": [3, 6, 9, 14], "These": [15, 17, 21, 22], "To": [1, 2, 3, 6, 19, 23], "With": 5, "_control": 5, "_interfac": 2, "abi": 1, "abl": 1, "about": [4, 8, 19, 23], "abov": [2, 20], "abstract": [3, 5, 9], "acceler": [5, 11, 12, 13, 20], "accept": [1, 14, 15, 17, 21, 22], "access": [3, 4, 5, 6, 8, 14, 19], "accord": [13, 20], "aceleromet": 4, "achiev": [15, 17, 21, 22], "action": 20, "action_monitor_r": 20, "activ": [1, 2, 3, 10, 19], "actuat": [2, 3, 4, 8, 9], "actuatorinterfac": 2, "ad": [1, 4, 8, 14, 19], "add": [1, 2, 9, 14], "addit": [2, 4], "addition": [4, 23], "address": [1, 4], "adjust": 10, "admitt": 5, "adopt": 4, "advantag": 8, "afraid": 1, "after": [1, 12, 14], "again": [9, 11], "against": 1, "agnost": 5, "agreement": 0, "aka": 5, "all": [1, 2, 3, 4, 5, 8, 9, 11, 14, 19, 20], "allow": [2, 20], "allow_partial_joints_go": 20, "alreadi": [10, 14, 20], "also": [1, 2, 3, 4, 5, 14], "altern": [3, 20], "although": [4, 9], "alwai": 1, "amd64": 6, "ament": 14, "ament_add_gmock": 14, "ament_cmak": 14, "ament_cmake_gmock": 14, "ament_export_librari": 14, "ament_packag": 14, "an": [1, 2, 3, 4, 5, 8, 10, 14, 19, 20], "andi": 5, "angular": 12, "angular_veloc": 18, "ani": [2, 3, 5, 9, 14], "announc": 23, "anoth": 4, "answer": 23, "anymor": 2, "api": [1, 4], "appli": 10, "applic": [1, 3, 5, 6], "approach": 2, "appropri": 4, "approv": 1, "ar": [1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 16, 18, 19, 20, 23], "architectur": [4, 5], "arduino": 3, "argument": [6, 10], "arm": 5, "around": [4, 16, 18], "arrai": 19, "asap": 10, "ask": [14, 19], "assign": 14, "assum": 3, "assur": 0, "attempt": [6, 20], "author": 5, "auto": 3, "automat": [3, 12], "autonom": 5, "avail": [2, 3, 5, 10, 11, 14, 19, 20], "avoid": [1, 14], "awar": 1, "ax": 16, "axi": [4, 16], "back": 1, "background": 1, "base": [3, 5, 9, 10, 12, 14], "base_interfac": 9, "baseinterfac": 9, "bash": 14, "basic": [2, 3, 4, 5, 14], "becaus": 20, "becom": 5, "been": 11, "befor": [1, 2, 6, 14], "behavior": [4, 8], "below": 5, "benc": [4, 5], "benchmark": 4, "best": [5, 6, 14], "beta": 6, "better": 5, "between": [3, 4, 9, 19, 20], "binari": 1, "blog": 6, "board": 3, "bodi": 12, "boolean": [8, 19, 20], "boost": 8, "booth": 5, "both": [4, 5, 19], "bottom": 14, "box": 2, "brake": 1, "branch": 1, "broadcast": [8, 19], "brook": 5, "buffer": [4, 23], "bug": 23, "build": [1, 14], "built": 23, "bullsey": 6, "c": [4, 6, 10, 14], "calcul": 3, "call": [2, 3, 14], "callbackreturn": 9, "can": [1, 2, 3, 4, 5, 7, 8, 9, 14, 16, 20, 23], "capabl": [3, 4], "care": [2, 4, 14], "case": [2, 4, 5, 14, 19, 20, 23], "caus": 20, "cc": 5, "cell": [2, 16], "certain": [15, 17, 21, 22], "chain": 5, "chanc": 1, "chang": [1, 2, 3, 5, 9, 10, 14, 20], "channel": 3, "check": [1, 2, 3, 4, 8, 9, 11, 14, 20, 23], "choos": 2, "chosen": 3, "claim": 11, "class": [3, 5, 9, 10, 14], "class_list_macro": 14, "clean": [1, 4], "cli": [3, 7, 10], "clock": 20, "close": 14, "cm": 3, "cmake": 14, "cmakelist": [9, 14], "code": [1, 2, 4, 5, 14], "cokela": 1, "colcon": 14, "collabor": 1, "collect": [5, 15, 17, 21, 22], "com": [3, 4, 6], "combin": [2, 8, 19, 20], "combinedrobothardwar": 2, "command": [2, 3, 4, 5, 7, 8, 11, 13, 14, 15, 17, 20, 21, 22, 23], "command_interfac": [3, 20], "command_interface_configur": [2, 14], "comment": 1, "commit": 1, "common": [3, 4, 13, 19, 23], "commun": [2, 3, 4, 5], "compani": [0, 5], "company_nam": 5, "compar": [3, 4, 5], "compass": 4, "compat": [1, 2, 5], "compil": 14, "complet": [3, 9, 13], "complex": [3, 4, 5], "compon": [0, 5, 6, 7, 12, 16, 18, 23], "composit": [2, 5], "comprehens": 11, "comput": [6, 12], "concept": [4, 5, 8, 11], "conductor": 4, "configur": [2, 3, 4, 5, 6, 9, 10, 11, 14, 19, 20], "conflict": [2, 3, 4], "connect": 3, "consid": [1, 10], "consist": [4, 20, 23], "const": 9, "constant": 2, "constraint": [14, 20], "constructor": [2, 14], "consult": 5, "contact": 5, "content": 14, "continu": 20, "contribut": [0, 1, 5], "contributor": 1, "control": [5, 7, 8, 9, 10, 11, 12, 15, 16, 17, 18, 19, 21, 22, 23], "control_msg": [20, 23], "control_toolbox": [4, 23], "controller_interfac": [3, 4, 10, 14, 16, 18], "controller_manag": [3, 4, 6, 10, 14, 20], "controller_manager_msg": 3, "controller_manager_timeout": 6, "controller_nam": [6, 10, 14], "controller_name_namespac": 14, "controller_name_packag": 14, "controller_typ": 6, "controllerinterfac": [2, 3, 10, 14], "controllermanag": 2, "controllernam": 14, "convent": 1, "copi": 14, "core": 1, "correct": [1, 2, 20], "correspond": [8, 14, 23], "could": [3, 5, 14, 19, 20], "cowboi": 1, "cpp": [2, 14], "creat": [2, 3, 5, 8, 14], "critic": [2, 4], "cross": [2, 19], "cubic": 20, "current": [1, 4, 9, 10, 20], "current_sensor": 19, "custom": [3, 8, 16, 19], "custom_interfac": 19, "custom_interface_with_following_offset": 8, "cycl": 5, "daemon": 10, "dai": 1, "data": [2, 3, 4, 8, 19], "dc": 3, "deactiv": [2, 3], "deal": 3, "debian": 6, "debug": 8, "decid": 2, "declar": [2, 14], "deeper": 5, "default": [2, 3, 8, 19, 20], "defin": [2, 3, 4, 8, 13, 14, 16, 18, 19, 20], "definit": [3, 13, 14, 16], "degrad": 4, "delv": 5, "demo": 5, "demonstr": 11, "deni": [4, 5], "depend": [1, 3, 9, 14, 20], "deriv": 3, "derived_effort": 19, "derived_veloc": 19, "describ": [2, 3], "descript": [1, 2, 5, 9, 14], "design": [2, 3, 4, 5, 23], "desir": [4, 20], "detail": [1, 2, 3, 8, 9, 14], "develop": [1, 5, 8, 11, 14], "deviat": 20, "diff_drive_control": [4, 10], "diffdrivecontrol": 10, "differ": [3, 4, 5, 15, 16, 17, 19, 21, 22], "differenti": [12, 13, 23], "difficulti": 4, "direct": [1, 2, 4, 14], "directli": [3, 23], "directori": 14, "discontinu": 20, "discourag": 20, "discours": 23, "discoveri": 10, "discuss": [1, 5, 23], "distribut": [1, 23], "do": [1, 2, 3, 4, 5, 6, 14, 20], "doc": 23, "document": [3, 4, 5, 8], "doe": [2, 14, 20], "doesn": 1, "dof": 3, "don": 1, "done": [5, 14], "doubl": [4, 8, 20], "down": 5, "doxygen": 7, "dr": 5, "draft": 4, "drawback": [2, 23], "drive": [12, 13, 23], "driver": [3, 5], "dynam": [3, 14], "dynamic_joint_st": 19, "e": [1, 2, 3, 4, 5, 8, 14, 15, 16, 17, 19, 20, 21, 22, 23], "each": [1, 3, 4, 9, 19], "earlier": 4, "easi": 4, "easiest": [6, 14], "edit": 5, "effector": 3, "effort": [2, 13, 15, 17, 19, 20], "effort_control": 13, "eg": 20, "either": 5, "els": 1, "emerg": 5, "empti": 14, "enabl": [2, 3, 4, 5, 6, 9, 11, 16], "encod": 3, "encourag": 1, "end": [2, 3, 9, 14, 20], "enforc": [2, 20], "engin": 14, "enjoi": 14, "ensur": [2, 5], "entri": [3, 14], "entropi": 1, "environ": [1, 3, 5], "envis": 4, "equival": 2, "error": [3, 4, 14, 19, 20], "especi": [1, 2], "essenti": 4, "etc": 23, "eu": 0, "european": 0, "even": 8, "event": 5, "everi": 23, "everyth": [4, 14], "exact": 14, "exactli": 1, "exampl": [2, 3, 4, 5, 8, 10, 11, 16, 19, 20, 23], "example_interfac": 16, "example_nam": 16, "example_param_read_for_sec": 3, "example_param_write_for_sec": 3, "excel": 2, "except": 1, "exchang": [2, 4], "execut": [3, 14, 20], "executor": 3, "exercis": 1, "exist": [2, 3, 4, 6, 9, 14], "exit": [6, 10], "expect": [1, 4, 20], "experi": 1, "explan": 3, "explicit": [5, 20], "explicitli": 1, "export": [3, 14], "export_": 2, "expos": 5, "extend": [2, 3, 4, 14], "extern": [2, 3, 4, 8], "extra": [5, 19], "extra_joint": 19, "extract": [2, 12], "factor": 5, "fail": 1, "failur": [4, 9], "fake": 7, "fake_sensor_command": 8, "fals": [8, 19, 20], "familiar": [4, 23], "featur": [1, 5, 8, 23], "feedback": [12, 19, 20], "feedforward": 20, "few": [4, 5], "field": 19, "figur": 3, "file": [2, 3, 4, 5, 6, 8, 14, 20], "final": [2, 5, 9], "find": 1, "find_packag": 14, "fine": 14, "first": [1, 2, 9, 14], "fiveai": 5, "fix": [1, 2], "fixup": 1, "flag": [14, 20], "flexibl": 3, "focu": 5, "focus": [4, 5], "folder": [3, 5, 14], "follow": [0, 1, 2, 3, 4, 8, 9, 10, 11, 13, 14, 20, 23], "follow_joint_trajectori": 20, "followjointtrajectori": 20, "forc": [3, 5, 10, 13], "forcetorquesensor": 16, "forcetorquesensor1dhardwar": 3, "forget": 2, "fork": 1, "form": 4, "format": [4, 19], "forward": [5, 8, 13, 20, 23], "forward_acceleration_control": 11, "forward_illegal1_control": 11, "forward_illegal2_control": 11, "forward_position_control": 11, "forward_velocity_control": 11, "forwardcommandcontrol": 3, "found": [3, 7, 14, 20, 23], "foxi": [1, 3, 5], "frame": [16, 18], "frame_id": [3, 16, 18], "framework": [1, 2, 4, 5, 6, 8, 9, 10, 11, 13, 14, 19, 23], "frequenc": 4, "friend": 14, "friendli": 3, "from": [0, 1, 2, 3, 5, 6, 8, 10, 12, 14, 16, 18, 20, 23], "ft": 16, "full": 14, "function": [1, 2, 3, 4, 5, 6], "fund": 0, "further": 14, "furthermor": 5, "futur": [1, 5], "g": [1, 2, 3, 4, 5, 8, 14, 15, 17, 19, 21, 22, 23], "galact": 1, "gazebo": 4, "gener": [4, 5, 14, 20, 23], "geometry_msg": 16, "get": [5, 9, 23], "github": [3, 4, 7, 13, 23], "githubusercont": 3, "give": [1, 3, 5, 23], "given": [3, 20], "gmock": 4, "gmt": 23, "go": [5, 14], "goal": [4, 5, 20, 23], "goal_tim": 20, "good": [1, 4], "googl": 23, "gpio": 4, "grace": 4, "grant": 0, "granular": 2, "great": 14, "green": 1, "gripper": [2, 3, 8], "gripper_joint": 3, "group": [4, 20, 23], "guarante": 20, "guard": 14, "gui": 11, "guid": [5, 14], "guidelin": 1, "gyroscop": 4, "h": [6, 10, 14], "ha": [0, 1, 3, 4, 5, 14, 19], "had": 2, "hand": 3, "handl": [1, 2, 4, 5, 20], "handler": 5, "hard": [2, 4], "hardwar": [5, 6, 7, 8, 11, 13, 14, 23], "hardware_interfac": [2, 3, 8, 9, 13, 14], "hardware_interface_status_valu": 9, "hardwareinfo": 2, "have": [1, 2, 3, 4, 6, 8, 9, 11, 14, 19, 20], "header": [1, 9, 14], "heartbeat": 4, "heavi": 5, "help": [1, 6, 10, 14], "here": [2, 7, 14, 20], "hereund": 3, "hidden": 10, "high": 4, "horizon": 0, "hot": 5, "hour": 4, "how": [1, 4, 5, 14], "howev": [4, 6], "hpp": [9, 14], "html": 1, "http": [0, 1, 3, 4, 6], "humanoid": 3, "hw_if_acceler": 13, "hw_if_effort": 13, "hw_if_posit": 13, "hw_if_veloc": 13, "hydraul": [19, 20], "hz": 4, "i": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23], "id8": 1, "idea": 23, "ideal": [5, 8], "identifi": 4, "ifndef": 14, "ignit": 4, "ignor": [12, 20], "imag": 6, "immedi": 1, "impact": 1, "implement": [2, 3, 4, 5, 8, 11, 12, 13, 14, 20, 23], "import": [3, 14, 20], "importantli": 14, "imposs": 2, "improv": 4, "imu": [4, 13], "imusensor": 18, "in_deactiv": 9, "inc": 5, "includ": [2, 4, 9, 10, 14], "increas": 1, "inde": 11, "independ": 3, "individu": 14, "industri": [0, 3, 4], "influenc": 5, "info": [1, 9], "inform": [0, 8, 14, 23], "ingredi": 5, "init": [2, 14], "initi": [2, 14], "inject": 5, "innov": 0, "input": [3, 4, 5, 12, 20], "insert": 5, "insid": 8, "instal": [3, 6, 14], "instanc": [4, 19], "instant": 20, "instead": [3, 8, 20], "institut": 0, "integr": [3, 4, 5, 8, 11, 20, 23], "intent": [1, 8], "interact": [3, 5, 6, 10], "interfac": [4, 5, 6, 7, 8, 9, 11, 13, 14, 16, 18, 23], "interface_nam": 16, "interface_typ": 14, "intern": [4, 20], "interpol": [13, 20], "interrupt": [2, 6], "introduc": [4, 5], "introduct": [5, 20], "involv": 5, "issu": [1, 4, 23], "its": [1, 2, 3, 4, 5, 6, 16, 18, 19], "itself": 2, "ivanov": 5, "jerk": [5, 12], "jitter": 6, "johann": 5, "join": 23, "joint": [2, 3, 5, 12, 13, 14, 15, 17, 19, 21, 22, 23], "joint1": [3, 8, 10, 11, 20], "joint2": [3, 10, 11, 20], "joint3": 20, "joint4": 20, "joint5": 20, "joint6": 20, "joint_a2": 2, "joint_nam": [14, 20], "joint_stat": 19, "joint_state_broadcast": 11, "joint_state_control": 10, "joint_trajectori": 20, "joint_trajectory_control": [4, 10], "joint_trajectory_plugin": 2, "jointstatecontrol": 10, "jointtrajectori": 20, "jointtrajectorycontrol": [2, 10], "jointtrajectorycontrollerst": 20, "keep": [1, 14], "kernel": [5, 6], "kf_estimated_posit": 19, "khz": 4, "kill": [6, 10], "kinemat": 5, "knudsen": 5, "kuka": 3, "last": [9, 14, 20], "latest": 3, "latter": 19, "launch": [3, 6, 8, 11], "layer": 5, "least": [14, 20], "leav": 6, "less": 16, "let": 11, "level": [4, 5, 15, 17, 20, 21, 22], "librari": [2, 3, 4, 10, 14], "licens": 5, "life": 5, "lifecycl": [2, 3, 5, 6, 9], "lifecyclenod": 3, "lifecyclenodeinterfac": 9, "like": [1, 2, 3, 4, 5], "limit": [1, 4, 5, 12], "line": [3, 7, 9, 14, 19], "linear": [12, 20], "linear_acceler": 18, "link": [3, 5, 9], "linter": 1, "linux": 6, "list": [3, 5, 9, 10, 11, 13, 14, 20, 23], "list_hardware_interfac": 11, "littl": 6, "live": [1, 5], "load": [3, 6, 10, 11, 14], "load_control": 11, "local": [1, 19], "logic": 3, "long": 4, "look": 5, "loop": [3, 5, 6, 14, 19, 20], "lovro": 5, "low": [4, 5], "lt": 6, "ltd": 5, "machin": [3, 4], "macro": [2, 3, 14], "made": [5, 9], "magyar": [4, 5], "mai": [9, 15, 17, 21, 22], "main": [1, 3, 4, 5, 6, 8, 14, 23], "maintain": [1, 3, 4], "major": 0, "make": [1, 2, 4, 5, 6, 23], "manag": [2, 4, 5, 7, 9, 10, 14, 23], "mandatori": [3, 16, 18, 20], "mani": [5, 14], "manipul": [5, 20], "manual": [3, 4, 14, 23], "map": [8, 19, 20], "map_interface_to_joint_st": 19, "mark": 2, "master": [1, 3, 4], "match": 3, "materi": 5, "matrix": 19, "matter": 1, "max": 3, "max_forc": 3, "maxim": 20, "mayb": 2, "md": 3, "mean": [1, 2, 8], "measur": [3, 8, 16, 19], "mechan": 20, "medium": 4, "meet": 23, "member": [2, 14], "memori": [4, 14], "mentor": 4, "messag": [1, 4, 6, 10, 16, 18, 19, 20, 23], "method": [1, 2, 3, 9, 14], "mid": 1, "mimic": 8, "mimick": 8, "min": 3, "min_forc": 3, "mind": [1, 14], "minim": 23, "mirror": 8, "miss": [4, 19], "mobil": [5, 12], "mock": 5, "mode": [4, 20], "modifi": 5, "modul": 4, "modular": [3, 5], "moment": 4, "monitor": 20, "more": [0, 1, 2, 3, 4, 8, 14], "most": [4, 14], "motiv": 4, "motor": [3, 4], "moveit": [5, 8], "moveit2": [4, 5], "movement": 4, "msg": [16, 18, 20], "much": [4, 14], "multi": [2, 3, 4, 5, 11], "multipl": [2, 3, 19, 20], "multipli": 8, "must": 1, "my": 5, "my_state_broadcast": 19, "najjar": 5, "name": [1, 2, 3, 5, 6, 8, 10, 14, 16, 18, 19, 20], "namespac": [6, 13, 14, 19, 20], "nan": 20, "nathan": 5, "nav2": 5, "navig": 5, "necessari": [1, 9], "need": [2, 3, 4, 5, 14], "net": 5, "new": [1, 5, 13, 20, 23], "next": [1, 20], "nobodi": 1, "node": [3, 6, 8, 9, 10, 11, 14], "node_interfac": 9, "non": [1, 5, 16], "none": [14, 19], "normal": 6, "note": [1, 3, 11, 23], "now": [11, 14], "numer": 20, "numeric_limit": 20, "obei": 5, "object": 3, "odometri": 12, "offer": [5, 6], "offlin": 8, "offset": [8, 19, 20], "often": [4, 8, 14, 19], "ok": 14, "on_activ": [2, 9, 14], "on_configur": [2, 14], "on_deactiv": [2, 9, 14], "on_error": 9, "on_init": 9, "onc": [4, 5], "one": [1, 2, 3, 4, 5, 14, 16, 19, 23], "onli": [1, 2, 3, 4, 5, 6, 9, 10, 14, 16, 19, 20], "onlin": [5, 14], "open": [1, 19, 20], "open_loop_control": 20, "openli": 5, "oper": 23, "opposit": 14, "optim": [2, 6], "option": [2, 6, 8, 9, 10, 14, 16, 19, 20], "orbit": 4, "orchestr": 4, "org": [4, 6], "organ": [1, 5, 23], "orient": 18, "origin": [1, 5], "other": [1, 2, 3, 5, 14, 19], "otherwis": [14, 19], "our": [1, 3, 4, 5], "out": [2, 12], "output": [3, 4, 5, 10, 16, 18, 20], "over": [1, 4], "overcom": 23, "overrid": 14, "overview": 5, "p": 6, "pace": 1, "packag": [1, 2, 3, 6, 9, 11, 14, 16, 18, 20, 23], "package_nam": 14, "parallel": [3, 8], "param": [3, 6, 8], "param_fil": 6, "paramet": [2, 5, 14], "parent": 14, "pars": [2, 7], "part": [1, 4, 5, 14], "parti": 5, "path": 5, "pendant": 5, "peopl": 1, "per": [4, 16], "perform": [5, 6], "permiss": 6, "physic": [2, 3, 8, 9], "picknik": 5, "pid": [20, 23], "ping": 1, "pipe": 8, "pipelin": 1, "pixel": 5, "pkg": 14, "place": [4, 14, 20], "plan": [5, 23], "plapp": 5, "pleas": [1, 23], "plu": 20, "plugin": [3, 9, 14], "pluginlib": [2, 3, 14], "pluginlib_export_class": [2, 14], "pluginlib_export_plugin_description_fil": 14, "point": [3, 13, 14, 23], "port": [4, 9], "posit": [2, 3, 5, 6, 10, 11, 13, 15, 17, 19, 20, 21, 22], "position_control": [13, 20], "position_state_following_offset": 8, "position_velocity_acceleration_control": 20, "position_velocity_control": 20, "positionactuatorhardwar": 3, "possibl": [1, 3, 4, 6, 14, 20], "potenti": [1, 14], "power": 5, "pr": 1, "practic": 5, "practition": 5, "pre": 1, "predefin": 20, "prefac": 5, "prefer": 4, "prefix": [14, 16, 18], "prepar": 14, "preprocessor": 14, "preset": 4, "previou": 23, "previous_st": 9, "print": 19, "prioriti": 6, "problem": [5, 23], "process": 14, "product": 19, "profil": 4, "programm": 0, "project": [0, 1, 23], "proper": [1, 20], "proport": 1, "propos": 23, "protect": [4, 14], "prove": 11, "provid": [3, 4, 5, 6, 8, 11, 13, 14, 19, 20, 23], "proxi": 20, "public": 14, "publish": [4, 12, 16, 18, 19, 20, 23], "pull": 4, "pure": [3, 20], "purpos": 4, "put": [1, 14], "py": 11, "qualiti": [0, 1], "question": 23, "queu": 20, "quick": [5, 9], "quiet_nan": 20, "quintic": 20, "quit": 4, "random": 1, "rang": 3, "rate": [4, 20], "raw": 3, "rclcpp": 14, "rclcpp_lifecycl": [9, 14], "rclcpp_lifecyl": 9, "re": 3, "reach": 20, "read": [1, 2, 3, 14, 19, 20], "readabl": 4, "readi": [5, 14], "readm": 3, "real": [2, 4, 5, 6, 8, 14, 19, 20, 23], "realiz": [3, 5], "realtim": [5, 12, 20, 23], "realtime_tool": [4, 23], "reason": 5, "receiv": [0, 2], "recent": 14, "recommend": [3, 5], "record": 5, "recov": 9, "reduc": [1, 8], "refer": 3, "refern": 9, "regard": 23, "regardless": 1, "regist": 2, "relat": [3, 4, 5], "releas": [1, 3, 5, 6], "relev": [4, 23], "reli": 4, "relianc": 19, "reload": [9, 10], "rememb": 14, "remov": 9, "renam": 9, "repeatedli": 1, "replac": [4, 9], "repo": [1, 3], "report": [3, 4, 19, 23], "repositori": [3, 4, 7, 13, 23], "repres": [3, 9], "reproduc": 23, "request": [2, 19, 23], "requir": [1, 2, 3, 4, 14], "research": [0, 5], "reserv": 14, "resourc": 2, "resourcemanag": 2, "respect": [4, 5], "rest_syntax": 1, "result": [1, 3, 19], "return": [9, 14, 19], "return_typ": [9, 14], "reus": 5, "review": [1, 4, 23], "rewrit": [4, 23], "rich": 4, "right": 4, "rigid": 2, "rm": 3, "ro": [0, 1, 3, 4, 6, 8, 10, 23], "roadmap": [4, 23], "robot": [0, 2, 4, 11, 12, 16, 19, 23], "robot_state_publish": 19, "robothw": 2, "robust": 20, "root": 14, "ros1": 5, "ros2": [3, 4, 5, 6, 10, 11, 14, 23], "ros2_control": [1, 3, 5, 6, 8, 9, 11, 14], "ros2_control_demo": [1, 3, 23], "ros2_control_demo_bringup": 11, "ros2_control_demo_hardwar": [3, 11], "ros2_control_nod": 3, "ros2_control_test_asset": 14, "ros2_control_test_nod": 11, "ros2controlcli": 3, "ros__paramet": 20, "ros_control": [4, 5, 23], "ros_distro": 1, "rosin": 0, "rrbot": [3, 11], "rrbot_system_multi_interfac": 11, "rrbot_tcp": 3, "rrbotforcetorquesensor1d": 3, "rrbotgripp": 3, "rrbotsystempositiononli": 3, "rrbotsystempositiononlyhardwar": [2, 3], "rsi": 3, "rt": 6, "rule": 14, "run": [4, 5, 6, 10], "rune": 5, "rviz": 19, "safe": [2, 12, 14, 20], "safeti": 4, "same": [1, 3, 4, 16], "satisfi": 1, "scale": 5, "scenario": 4, "sched_fifo": 6, "scope": 1, "script": [3, 4, 14], "search": 14, "second": [4, 10, 14, 23], "section": [1, 2, 14], "see": [1, 2, 3, 11, 14, 16, 18, 20], "segment": 20, "semant": [5, 16, 18], "semantic_compon": 4, "semi": 1, "sens": [2, 3, 16], "sensibl": 2, "sensor": [2, 3, 4, 8, 9, 13], "sensor_msg": 18, "sensor_nam": [16, 18], "sensorinterfac": 2, "sent": 4, "separ": [1, 2, 3, 19], "serv": [1, 3, 4], "server": 20, "servic": [3, 4, 6, 9], "set": [1, 2, 4, 5, 6, 8, 9, 10, 11, 15, 17, 19, 20, 21, 22], "set_controller_st": 11, "set_stat": 10, "setup": [3, 4, 14], "share": [5, 14], "shell": 14, "short": [1, 14, 23], "should": [1, 2, 4, 5, 6, 9, 10, 11, 14, 19], "show": [1, 3, 5, 6, 9, 10, 19], "showcas": [4, 5], "shown": 5, "side": [3, 4, 5], "signal": 4, "similar": [1, 3, 5], "similarli": 20, "simpl": [3, 4, 5, 11, 14], "simplecontrollermanag": 4, "simpli": [5, 20], "simplifi": [14, 23], "simul": [4, 8, 11], "singl": 5, "six": 16, "size": 4, "skeleton": 3, "skill": 4, "slightli": 19, "smooth": 23, "snake_cas": 14, "snippet": 2, "so": [3, 14], "softwar": [0, 3], "solut": [2, 5], "some": [1, 4, 5, 19, 20, 23], "sort": [13, 14], "sourc": [1, 3, 5, 14], "space": [12, 20], "specif": [4, 9, 19, 20], "specifi": [14, 20], "sphinx": 1, "spin": 10, "spin_tim": 10, "spline": 20, "squash": 1, "src": [3, 14], "srv": 3, "stabl": [1, 4], "stack": [3, 5], "stage": 1, "standard": [1, 2, 3, 4, 5, 10, 13, 16, 19], "start": [1, 2, 5, 6, 9, 10, 11, 14, 20, 23], "startup": 6, "state": [2, 3, 4, 5, 8, 9, 10, 11, 13, 14, 16, 19, 20], "state_interfac": [3, 20], "state_interface_configur": [2, 14], "state_publish_r": 20, "statu": [4, 9, 10, 20], "status_": 9, "std": 20, "step": [14, 20, 23], "still": [1, 2, 3], "stogl": 5, "stop": [2, 5, 6, 9, 10, 11, 12], "stopped_velocity_toler": 20, "store": 14, "strategi": [2, 20], "stream": [2, 5], "stretch": 4, "strict": 10, "strictli": 9, "string": [2, 8, 14, 19, 20], "struct": 4, "structur": [3, 4, 14, 20], "studi": 5, "style": [1, 14], "submit": [1, 5], "substanti": 9, "success": [9, 14], "suffici": [1, 16], "suit": 6, "suitabl": [2, 5], "summari": [1, 5, 23], "support": [0, 2, 3, 5, 8, 10, 14, 19, 20, 23], "sure": [1, 4, 23], "surround": 2, "switch": [4, 10], "switch_control": 11, "switch_timeout": 10, "symbol": 9, "sync": 1, "syscal": 6, "system": [2, 3, 4, 5, 9, 11, 20, 23], "systemcompon": 5, "systeminterfac": [2, 8], "s\u00f8e": 5, "t": [1, 6], "tag": [3, 14, 23], "take": [2, 4, 14, 19], "talk": 5, "target": [1, 13, 14, 20], "task": [4, 5, 12], "tcp_fts_sensor": 3, "teach": 5, "techniqu": 19, "teleoper": 5, "templat": [11, 14, 20], "term": [20, 23], "test": [1, 4, 8, 11, 14], "test_control": 10, "test_controller_nam": 10, "test_depend": 14, "test_load_": 14, "thank": 1, "thei": [1, 2, 3, 4, 5, 8, 10, 13, 14, 20], "them": [1, 3, 4, 6, 14, 19], "theori": [3, 23], "therefor": [4, 6, 14, 19, 20], "thi": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 14, 15, 16, 17, 20, 21, 22, 23], "thing": 1, "thoma": 1, "those": [1, 2, 3, 4, 8, 14, 16, 19, 20], "thread": [4, 6], "three": [1, 2, 3, 9, 14], "through": [3, 4, 10, 12, 13, 14, 20, 23], "throughput": 6, "time": [1, 2, 4, 5, 6, 8, 10, 12, 14, 16, 20, 23], "timeout": [6, 10], "tip": 5, "titl": 1, "togeth": 3, "toler": 20, "toni": 5, "took": 2, "tool": [2, 4, 5], "toolkit": 23, "top": 5, "topic": [4, 5, 20], "torqu": [3, 13], "torque_sensor": 19, "traceabl": 1, "track": [3, 23], "tracker": 23, "trajectori": [5, 13, 23], "trajectory_msg": 20, "translat": 12, "transmiss": 3, "tree": 4, "tri": 20, "trick": 4, "tricycl": 5, "trigger": 4, "trivial": [1, 8], "true": 20, "tutori": 1, "twist": 12, "two": [1, 3, 4, 6, 14, 16], "txt": [9, 14], "type": [1, 2, 3, 5, 6, 9, 10, 13, 14, 16, 18], "typic": [4, 19, 20], "u": [1, 6], "ubuntu": 6, "unclaim": [10, 11], "unconfigur": [6, 9], "undefin": 9, "under": [0, 5, 14, 23], "understand": [1, 4], "unifi": 5, "union": 0, "uniqu": 14, "unit": 4, "univers": [1, 4, 5], "unless": 19, "unload": [3, 6, 10], "unreleas": 23, "until": 6, "up": [1, 5, 11], "updat": [2, 3, 4, 14], "upgrad": 5, "ur": 5, "urdf": 2, "us": [1, 2, 3, 4, 5, 6, 8, 9, 10, 13, 15, 16, 17, 18, 19, 21, 22, 23], "usabl": 3, "usag": [5, 6, 10], "use_local_top": 19, "usecas": 19, "user": 4, "usual": [2, 8, 14], "util": 5, "valu": [2, 3, 4, 8, 14, 19, 20], "valv": 3, "variabl": [2, 4, 14], "variou": 4, "vc": 3, "vector": 14, "veloc": [2, 3, 5, 11, 13, 19, 20, 21, 22], "velocity_control": 13, "veri": [1, 2, 4], "version": [1, 4], "via": 3, "virtual": 5, "visibility_control": 14, "visibl": 14, "visit": 3, "visual": 19, "vivid": 1, "wa": [4, 14], "wai": [1, 14, 16], "wait": [6, 10], "want": [3, 6], "warn": 19, "waypoint": [5, 13, 20], "we": [1, 4, 5, 9, 19], "wednesdai": 23, "weekend": 1, "welcom": 1, "well": [5, 6, 10, 20], "were": 4, "wg": 23, "wget": 3, "what": 5, "wheel": 12, "when": [1, 2, 3, 4, 6, 8, 10, 14, 20], "where": [1, 4, 14, 19], "which": [2, 3, 4, 5, 10, 12, 14, 16, 18, 19, 20], "while": [3, 4, 5, 11, 20], "wide": 23, "wikipedia": [3, 23], "wild": 5, "window": 14, "without": [2, 3, 8, 14], "work": [1, 4, 5, 12, 14, 15, 17, 19, 20, 21, 22, 23], "workspac": [3, 14], "world": [6, 8], "would": 19, "wrap": 20, "wrapper": [16, 18], "wrenchstamp": 16, "write": [2, 3, 4, 5, 13], "written": 14, "x": [12, 16, 18], "xacro": 3, "xml": [2, 9, 14], "y": 16, "yaml": [3, 4, 20], "yet": 20, "yield": 20, "you": [1, 2, 3, 5, 6, 8, 9, 14, 23], "your": [1, 2, 5, 8, 14, 23], "z": [12, 16], "zeleank": 5, "zelenak": 5, "\u0161togl": [4, 5]}, "titles": ["Acknowledgements", "Pull Requests", "Differences to ros_control (ROS1)", "Getting Started", "Project Ideas for GSoC 2022", "Resources", "Controller Manager", "API Documentation", "Fake Components", "Hardware Components", "Command Line Interface", "Demos", "diff_drive_controller", "ros2_controllers", "Writing a new controller", "effort_controllers", "Force Torque Sensor Broadcaster", "forward_command_controller", "IMU Sensor Broadcaster", "joint_state_broadcaster", "joint_trajectory_controller", "position_controllers", "velocity_controllers", "Welcome to the ros2_control documentation - Galactic!"], "titleterms": {"": [2, 20], "02": 5, "05": 5, "06": 5, "07": 5, "10": 5, "12": 5, "13": 5, "2021": 5, "2022": [4, 5], "2023": 5, "5": 5, "about": 20, "access": 2, "acknowledg": 0, "add": 4, "api": 7, "architectur": 3, "asynchron": 4, "avail": 13, "best": 13, "broadcast": [13, 16, 18], "call": 9, "ci": 1, "class": 2, "command": [10, 12, 19], "commun": 23, "compil": 3, "compon": [2, 3, 4, 8, 9], "concept": 7, "confer": 5, "configur": 1, "control": [2, 3, 4, 6, 13, 14, 20], "core": 7, "demo": [4, 11], "descript": 3, "detail": 20, "determin": 6, "develop": 23, "diagram": 5, "diff_drive_control": 12, "differ": 2, "document": [1, 7, 23], "dure": 9, "effort_control": 15, "error": 9, "extern": 14, "fake": 8, "featur": [4, 7, 12, 20], "forc": 16, "forward_command_control": 17, "foxi": 9, "fr": 5, "framework": 3, "from": [4, 9], "function": 7, "galact": [9, 23], "gener": 8, "get": 3, "gsoc": 4, "guid": 2, "guidelin": 13, "handl": 9, "happen": 9, "hardwar": [2, 3, 4, 9, 12, 15, 17, 19, 20, 21, 22], "helper": 6, "idea": 4, "imag": 5, "imu": 18, "industri": 5, "interfac": [2, 3, 10, 12, 15, 17, 19, 20, 21, 22], "joint": [8, 20], "joint_state_broadcast": 19, "joint_trajectory_control": 20, "jointtrajectorycontrol": 20, "line": 10, "list_control": 10, "list_controller_typ": 10, "list_hardware_interfac": 10, "load_control": 10, "manag": [3, 6], "meetup": 5, "merg": 1, "migrat": [2, 9], "mission": 4, "mode": 11, "munich": 5, "new": 14, "nomenclatur": 13, "organ": 11, "organis": 23, "other": [12, 20], "overview": 23, "paramet": [8, 16, 18, 19, 20], "pariti": 4, "per": 8, "position_control": 21, "practic": 13, "present": 5, "process": 1, "project": 4, "pull": 1, "read": 9, "refer": 14, "reload_controller_librari": 10, "repositori": [1, 11], "represent": 20, "request": 1, "resourc": [3, 5], "ro": 5, "robot": [3, 5], "robothardwar": 2, "ros1": [2, 4], "ros2": 20, "ros2_control": [2, 4, 13, 23], "ros_control": 2, "roscon": 5, "rosdevdai": 5, "rule": 1, "run": 3, "script": 6, "semant": 4, "sensor": [16, 18], "set_controller_st": 10, "spawner": 6, "special": 20, "start": 3, "structur": [1, 2], "support": 4, "switch": 11, "switch_control": 10, "system": 8, "tbd": 20, "torqu": 16, "trajectori": 20, "tutori": 4, "type": [12, 15, 17, 19, 20, 21, 22], "unload_control": 10, "unspawn": 6, "urdf": 3, "us": [14, 20], "user": 3, "veloc": 12, "velocity_control": 22, "version": 20, "weekli": 5, "welcom": 23, "world": 5, "write": [1, 9, 14], "your": 3}}) \ No newline at end of file diff --git a/humble/.buildinfo b/humble/.buildinfo index 9060f830579..494612531c5 100644 --- a/humble/.buildinfo +++ b/humble/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 91a0a5c9b394a098f7b91fae2691164c +config: c9972919e35737bfb75847e7d3de8518 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/humble/.doctrees/doc/acknowledgements/acknowledgements.doctree b/humble/.doctrees/doc/acknowledgements/acknowledgements.doctree index 3820d1c97b118bb9192e049c7930c70a2837bc5f..3c750af6fbf3b28ee28b58623e3adcb19dac85e4 100644 GIT binary patch delta 14348 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 BaYz6F delta 12659 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 delta 64 zcmZo)!qmQmX+t8Tp-E1Wae7{Up}w(!Ns2|9c^VKHCL1RiTUw^3B&MY#nVKYcni-{$>t8m)I SVr*n)X=apawz-2bH4y;ou@zeY diff --git a/humble/.doctrees/doc/gazebo_ros2_control/doc/index.doctree b/humble/.doctrees/doc/gazebo_ros2_control/doc/index.doctree index b8d641370e62f1556f4bd38d55790ccb8cfe7001..953ed0d0a9d21d92a8859fe971b3bb5355b77cd6 100644 GIT binary patch delta 129 zcmZp<$J}y{d4mO`QI@emeu_!HxxR^^sd6O@=x^ccO0J!!h1^@s6 delta 129 zcmZp<$J}y{d4mO`kx5RGae7{Up}w(!Ns2|9c^VKHCL1RiTUw^3B&MY#nVKYcni-{<=}+e4lil3TIAuL~dL=feZk%rm0EHDOo&W#< diff --git a/humble/.doctrees/doc/getting_started/getting_started.doctree b/humble/.doctrees/doc/getting_started/getting_started.doctree index 86b2aa742773b643777df4fe755e655b8b92cab6..1a028faf072f77fd4f7cc0bc69e950acacd7b903 100644 GIT binary patch delta 64 zcmbQZj(Orb<_!jnhFQi2`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* SVzQx;iKTg>$>v1H4Oank#S@+Y delta 64 zcmbQZj(Orb<_!jnh9)^h#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> SVr*n)X=apawmFe;!&LyRX%y-J diff --git a/humble/.doctrees/doc/gz_ros2_control/doc/index.doctree b/humble/.doctrees/doc/gz_ros2_control/doc/index.doctree index a87b3a4367e8319e2d0e50da145c691d0c577d25..a68fac98045f2a6f097351c9567e8b186c52c926 100644 GIT binary patch delta 123 zcmZpBz|{7DX@e1?VV1E$eu_!HxxR^^sdZa&cLrUL*2>m>*P delta 123 zcmZpBz|{7DX@e1?p-E1Wae7{Up}w(!Ns2|9c^VKHCL1RiTUw^3B&MY#nVKYcni-{P!1wcni-{rlusOr6ie}B%7EeC7Ku; QnOT|{rJ8LHWwaLt0Ah($ diff --git a/humble/.doctrees/doc/project_ideas.doctree b/humble/.doctrees/doc/project_ideas.doctree index b792c4dd854d31c72a353dcaa372c7e399f42281..40f1002959caf27976b49e8e8e93374ff49e584d 100644 GIT binary patch delta 64 zcmZ4digEEP#tk}*hFQi2`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* SVzQx;iKTg>$>vzbW5ocMM-$=z delta 64 zcmZ4digEEP#tk}*h9)^h#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> SVr*n)X=apawmFvZSTO+4>lH2l diff --git a/humble/.doctrees/doc/release_notes/release_notes.doctree b/humble/.doctrees/doc/release_notes/release_notes.doctree index 9d02997e9aadb056cd67e5aef73fe1347128c495..25783f65f028eeb409f6b37ba98b7e335d1dd1c9 100644 GIT binary patch delta 62 zcmbQEK1Y3n4x?d~u|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o QXk=n(o@lZ;meF1a05SLxWB>pF delta 62 zcmbQEK1Y3n4x^z-PLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; QnOT|{rJ8MyWwaLp0BW2PumAu6 diff --git a/humble/.doctrees/doc/resources/resources.doctree b/humble/.doctrees/doc/resources/resources.doctree index 48bb7a42f2e6999780aa9482f5a2998ee55841c9..a9a1179b89705183c44fb9a0a13519ce95f022e1 100644 GIT binary patch delta 73 zcmX@Tk@fUO)(t9*Mp?!N`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* bVzQx;iKTg>iT>pC+~Uo-jN5Y=8RNnMO0yOA delta 73 zcmX@Tk@fUO)(t9*MkYB$#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> bVr*n)X=apara$>Sw|H|d$>vN(;UoaE)f1oq delta 64 zcmex!jPcJg#tjyXh9)^h#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> SVr*n)X=apawmFkgI0*pjc@*pb diff --git a/humble/.doctrees/doc/ros2_control/controller_manager/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control/controller_manager/doc/userdoc.doctree index ec41cfebecc1322db4d8b91d93899227a7f08265..873678a6d907f4f51c2cfa1fa8d7b995b8c304ea 100644 GIT binary patch delta 69 zcmZpD$JF|cX@eW1QI@emeu_!HxxR^^sdcni-{<=}$h8tFd_jW9n7_IWreh diff --git a/humble/.doctrees/doc/ros2_control/doc/debugging.doctree b/humble/.doctrees/doc/ros2_control/doc/debugging.doctree index 4e514cbad2d0b5b8c4c059fe56dd3c7c5e6d2660..ba6628bfe78e517c68d78b63d7c9dc82edd2d0d5 100644 GIT binary patch delta 64 zcmaF4fbr!5#tngthFQi2`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* SVzQx;iKTg>$>t`;=Y9a5)f6BA delta 64 zcmaF4fbr!5#tngth9)^h#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> SVr*n)X=apawz-M%xgP-6c@=B` diff --git a/humble/.doctrees/doc/ros2_control/doc/index.doctree b/humble/.doctrees/doc/ros2_control/doc/index.doctree index 4c1cfe2eef6a6f525a947ccd8e1d012a7f725523..c77f651dbb7cd5c5f688e3e399811440a9d44982 100644 GIT binary patch delta 62 zcmX@9e^P&g9iw5Eu|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o QXk=n(o@lZ;pD{`d08g$G5dZ)H delta 62 zcmX@9e^P&g9iyR1PLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; QnOT|{rJ8NdXN(d90Eki(T>t<8 diff --git a/humble/.doctrees/doc/ros2_control/doc/migration.doctree b/humble/.doctrees/doc/ros2_control/doc/migration.doctree index d1ee18d65f8688c1640ce9c326ae8b5495aa1850..ea579ba9794212ee30afba7f1c976fc8cb6fead8 100644 GIT binary patch delta 61 zcmdlXxkGY8JELKiu|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o PXk=n(o@lao2O~ECJH-*; delta 61 zcmdlXxkGY8JENgVPLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; PnOT|{rJ60?!N?5&a~%^b diff --git a/humble/.doctrees/doc/ros2_control/doc/release_notes.doctree b/humble/.doctrees/doc/ros2_control/doc/release_notes.doctree index e852633ebd33d8096f470ac78db0c0c3f7a17a12..9e108dde668dcc8de201aa8d5178f9e5bf7ec99b 100644 GIT binary patch delta 62 zcmZ3Sxj1t}BcoxKu|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o QXk=n(o@lap6XQoC0BQphasU7T delta 62 zcmZ3Sxj1t}Bcq{7PLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; QnOT|{rJ8Nt#Q4z&0HUW9z5oCK diff --git a/humble/.doctrees/doc/ros2_control/hardware_interface/doc/different_update_rates_userdoc.doctree b/humble/.doctrees/doc/ros2_control/hardware_interface/doc/different_update_rates_userdoc.doctree index da8712288218c563749f0a837a74abd92d2454c5..9e00198388fb5c2557c081d3ec59e21254f1a11f 100644 GIT binary patch delta 64 zcmcchoblFk#tnXqhFQi2`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* SVzQx;iKTg>$>w^-=pq2O^b{fh delta 64 zcmcchoblFk#tnXqh9)^h#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> SVr*n)X=apawz-}$x(ER9m=$gS diff --git a/humble/.doctrees/doc/ros2_control/hardware_interface/doc/hardware_components_userdoc.doctree b/humble/.doctrees/doc/ros2_control/hardware_interface/doc/hardware_components_userdoc.doctree index e1cb4308b2572bd0b5ce5a633f69f9b328f284b8..342020631d1305d016f91a94108fe1137bca63fb 100644 GIT binary patch delta 67 zcmez3^u=j|2cuDzu|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o VXk=n(o@k;!*`L*U^Ipd7@&M7t6r}(F delta 67 zcmez3^u=j|2cwZmPLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; VnOT|{rJCta_Gfk8yq9siJOB{(74ZN7 diff --git a/humble/.doctrees/doc/ros2_control/hardware_interface/doc/hardware_interface_types_userdoc.doctree b/humble/.doctrees/doc/ros2_control/hardware_interface/doc/hardware_interface_types_userdoc.doctree index 8985fa5ef9740c3c5db24c70c5c2da1a3674ab14..4392364af5f2f7ee4f688abab0c2bae22dc2f8b7 100644 GIT binary patch delta 69 zcmZ2+opHr=#tlJ?Mp?!N`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* YVzQx;iKTg>iT>o1TppXxFy6@o00N&DMF0Q* delta 69 zcmZ2+opHr=#tlJ?MkYB$#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> XVr*n)X=apara$>4m&fKajCV2tLBAJ~ diff --git a/humble/.doctrees/doc/ros2_control/hardware_interface/doc/joints_userdoc.doctree b/humble/.doctrees/doc/ros2_control/hardware_interface/doc/joints_userdoc.doctree index 88680daaa9458a152d304f5d17364ffa89861ecb..e30f6dbac243a72d00b6cdba0a3e4d673c910377 100644 GIT binary patch delta 69 zcmbQ!$26ypX@ef4QI@emeu_!HxxR^^sdcni-{<=}&HSHQPLmv8@#V3epxf diff --git a/humble/.doctrees/doc/ros2_control/hardware_interface/doc/mock_components_userdoc.doctree b/humble/.doctrees/doc/ros2_control/hardware_interface/doc/mock_components_userdoc.doctree index f6223d9b7660e4f54b6793b8d05361a2779ebff6..8051438f56ff2333238e475e388cc4471759f8de 100644 GIT binary patch delta 64 zcmeynm+|jj#tjaPhFQi2`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* SVzQx;iKTg>$>u`Fo>%~})D#o| delta 64 zcmeynm+|jj#tjaPh9)^h#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> SVr*n)X=apawz-h8Cl&zecokp( diff --git a/humble/.doctrees/doc/ros2_control/hardware_interface/doc/writing_new_hardware_component.doctree b/humble/.doctrees/doc/ros2_control/hardware_interface/doc/writing_new_hardware_component.doctree index b6cec3da677cb04a699e63edc650271f19a7d734..06191ee75bb87aa472e5195e8ede659f92edec6f 100644 GIT binary patch delta 64 zcmZo~WNB|?+2F@$m}P8`pJI}4u5V&!YMx?bm||>VnPh5a1Y}#Lq$Q^&nOT^p85$-f SCL0==SehrAY_4bI_zwVIy%O*M delta 64 zcmZo~WNB|?+2F@$Xp&Q8oSv6osBdgwl46l&o(2Sl$;L^>mX@h0iD@ZGrY6ZIW=V-A S#ztnAW=5%Io9h`l{sRD*VH7+7 diff --git a/humble/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree index 917c0991e4b887497288161f32accbf79d96f7bd..ab089b11f4f863345acf659a669d9f37acabbf0e 100644 GIT binary patch delta 64 zcmezKh4If9#tn9ihFQi2`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* SVzQx;iKTg>$>w}U-bw( SVr*n)X=apawmF}Xw-NvY8x>^$ diff --git a/humble/.doctrees/doc/ros2_control_demos/doc/index.doctree b/humble/.doctrees/doc/ros2_control_demos/doc/index.doctree index 2ce9533a291d75f9db78c20ea178b916ebb07f02..d2868cfc0dcde80c088e27cb7b7491f6ff2014b0 100644 GIT binary patch delta 69 zcmX>*jrr^}<_%_yMp?!N`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* YVzQx;iKTg>iT>n=yTmuwGoCvM0P+SFkpKVy delta 69 zcmX>*jrr^}<_%_yMkYB$#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> YVr*n)X=apara$@NF7eIvjOR`Q05LTe-2eap diff --git a/humble/.doctrees/doc/ros2_control_demos/doc/run_from_docker.doctree b/humble/.doctrees/doc/ros2_control_demos/doc/run_from_docker.doctree index dffff1c139f71165c00b1573fb0a613cd53d5e95..4d159fc8a7a6fef2f783ce492ce6ceccf88514ce 100644 GIT binary patch delta 62 zcmeB_>Xh2h&tjNmY>=N~l5ehWVrXifVq}Xh2h&thnjQ)HZ;mtUxFY+#aNk!GF-1cu4RNye6zsVRwRDM_X#$tGq=i6+KI QW|n3~sb-rGuy}F+0CUI_JOBUy diff --git a/humble/.doctrees/doc/ros2_control_demos/example_1/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_1/doc/userdoc.doctree index 8564b5e68cee0d46dd20f25682523ddd1303e3ca..3787c877a4e773376fa87beb32e0491ba00aa833 100644 GIT binary patch delta 74 zcmZo{Vr^_<-4MlSlx1v?pJI}4u5V&!YMx?bm||>VnPh5a1Y}#Lq$Q^&nOT^p85$-f cCL0==SehrA=uhA1z-ZXKmvQ@EMn)HV04=^1-T(jq delta 74 zcmZo{Vr^_<-4MlSWRg>4oSv6osBdgwl46l&o(2Sl$;L^>mX@h0iD@ZGrY6ZIW=V-A c#ztnAW=5%I`qMW$Fd8=RW!%1(k$>v_hBmDrECKM_F delta 64 zcmcb(i0R@YrVTNSh9)^h#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> SVr*n)X=apawz-$_NIwA2$`y71 diff --git a/humble/.doctrees/doc/ros2_control_demos/example_11/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_11/doc/userdoc.doctree index 7d102f2edb42ef65a388e66e6f00422ec8aa5c50..f9aad3eed7dbc59ace7138343d8baa43dce4d4fc 100644 GIT binary patch delta 73 zcmbQ*$27H%X+sR7QI@emeu_!HxxR^^sdcni-{<=}$Hk5TAUzO?vYI#?V#(YoQmq diff --git a/humble/.doctrees/doc/ros2_control_demos/example_12/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_12/doc/userdoc.doctree index 5250ef11eea5db1e7bf9927ea24bb24c6453e220..9c3b7477081335a81d4e66878b6d97d53706b8cc 100644 GIT binary patch delta 73 zcmezNpXu9wrVTNSMp?!N`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* cVzQx;iKTg>iT>mXT;h}W?3dnrfYEFp0HA>wp8x;= delta 73 zcmezNpXu9wrVTNSMkYB$#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> cVr*n)X=aparayTCm-ys8`=vJ@U^LqY0OZjb>i_@% diff --git a/humble/.doctrees/doc/ros2_control_demos/example_13/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_13/doc/userdoc.doctree index f74d98c7cc86aed04d7c1891f404c0e9bdb7626c..db8c3dafc06d9c70b8b33e5dac83b952fd434007 100644 GIT binary patch delta 77 zcmX^8f%WtU)(tU?Mp?!N`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* gVzQx;iKTg>iT-4TSn gVr*n)X=aparaxIBR(x_>j9Bw-#_hWq87Gth042*B6951J diff --git a/humble/.doctrees/doc/ros2_control_demos/example_14/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_14/doc/userdoc.doctree index fe61cd16a507ccf9f7d66a363753c89e0c0142f1..1c5911e64c41f38be016c6d8df5160ba92c5d1ea 100644 GIT binary patch delta 69 zcmbQVo@vs0rVTNSMp?!N`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* YVzQx;iKTg>iT-5A=|-CmFkYGp0OTAM+5i9m delta 69 zcmbQVo@vs0rVTNSMkYB$#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> YVr*n)X=apara#$ny3ytXjF+YY03%BmCIA2c diff --git a/humble/.doctrees/doc/ros2_control_demos/example_15/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_15/doc/userdoc.doctree index a2c18153ef54a94de1a5b2acb31c898626278dc2..fe990bd4b30c72b732b2b4348aec6ee9d4764f05 100644 GIT binary patch delta 64 zcmeDD&eZvxX+sR7VV1E$eu_!HxxR^^sd&rSfHZxp5g delta 64 zcmeDD&eZvxX+sR7p-E1Wae7{Up}w(!Ns2|9c^VKHCL1RiTUw^3B&MY#nVKYcni-{iT-3qDb>mS(|I=UW&Ar808VfhivR!s delta 73 zcmdnBo@v*5rVUYyMkYB$#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> cVr*n)X=apara#$HN_BGobe_$78UIcN0FuBM*8l(j diff --git a/humble/.doctrees/doc/ros2_control_demos/example_3/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_3/doc/userdoc.doctree index 037a3f255cb4bc71c770c6f00572374aaccd6a78..96cc86319084923c1fa7b9958b85b3c0cdb0c244 100644 GIT binary patch delta 73 zcmcaQnfdBu<_%GdMp?!N`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* cVzQx;iKTg>iT-3kKJm$OPD*Xw%P4UI087^v+yDRo delta 73 zcmcaQnfdBu<_%GdMkYB$#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> cVr*n)X=aparaxJbPki#6lTw@aGD@5P0FWmbC;$Ke diff --git a/humble/.doctrees/doc/ros2_control_demos/example_4/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_4/doc/userdoc.doctree index 61611b593845d310a2ec6c9d0353e23d1e743148..f56e677ad1223ec50ab1e1a7bf84a68ff2ba964e 100644 GIT binary patch delta 77 zcmbQTl4;6HrVUYyMp?!N`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* gVzQx;iKTg>iT-2-e(}k@e4>*Jrm$|_%Xobf0E!eB>Hq)$ delta 77 zcmbQTl4;6HrVUYyMkYB$#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> gVr*n)X=aparaxJMUwm>epXlU*DXg3KGG3nq0MnEiHUIzs diff --git a/humble/.doctrees/doc/ros2_control_demos/example_5/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_5/doc/userdoc.doctree index 15aaa853b5e9db2b7501a1ff113c323890377b0d..f92f9c2bb1ce46957eb70507b0025ea0bf0d7b1d 100644 GIT binary patch delta 73 zcmZ2;h-u9srVUYyMp?!N`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* cVzQx;iKTg>iT>pMeBzV&;`laiWUQVK08cm;y#N3J delta 73 zcmZ2;h-u9srVUYyMkYB$#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> cVr*n)X=aparayT<{9 diff --git a/humble/.doctrees/doc/ros2_control_demos/example_6/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_6/doc/userdoc.doctree index a66e5fc2a220a52290f5bbc9396c10d36c7e27ce..f7fe75ffd4fc0164a56e1fa8d5c0582f794d39ac 100644 GIT binary patch delta 73 zcmaFV!t|(xX+spFQI@emeu_!HxxR^^sdcni-{<=}!*i5uYr;E4q0HiT>n!PO8lt8Mkj_WYnDx0CSEPX8-^I delta 73 zcmcb2knP? cVr*n)X=apara$?flWOxu#_by!8Fl9a0Jq*4vj6}9 diff --git a/humble/.doctrees/doc/ros2_control_demos/example_8/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_8/doc/userdoc.doctree index 024cb24542005fd61ea3ed6fca9e6979f559c4aa..6b8e5a7fcd6bc7137495fb22f257f34948f9c195 100644 GIT binary patch delta 73 zcmezRoAK*!#tl)7Mp?!N`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* cVzQx;iKTg>iT>n+JmQo0)JkpM%V<#p0G#s}J^%m! delta 73 zcmezRoAK*!#tl)7MkYB$#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> cVr*n)X=apara$>0kND(0wNjh+GFsFC0O3O!iU0rr diff --git a/humble/.doctrees/doc/ros2_control_demos/example_9/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_9/doc/userdoc.doctree index c8e04f2e340f85582ee0deb4a486a5b34b861639..4676d496a60ea91fb1bd21a1d2e7bccc37eb387d 100644 GIT binary patch delta 76 zcmZ29k7?07rVUYyrdh@Y`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* fVzQx;iKTg>iGE6c^5l;ZB9qVYb8lY9Skemsh20os delta 76 zcmZ29k7?07rVUYyrY1Q>#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> fVr*n)X=apark|3ZJo#gU$mDbU+?&@imh=Ju&Jh{0 diff --git a/humble/.doctrees/doc/ros2_controllers/ackermann_steering_controller/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/ackermann_steering_controller/doc/userdoc.doctree index bd7f333924e73cec6d8827e26c28763eedfcd93a..c7cb5f24a6f99d949a4aba2bd808391d40395351 100644 GIT binary patch delta 71 zcmaEz|2ls|45Lw&u|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o ZXk=n(o@k;!`69pQWGfEM&1V?p%>X~r73%;1 delta 71 zcmaEz|2ls|45N`rPLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; ZnOT|{rJCtazQ`{+*@{DR^BG2YGXR7l7dHR^ diff --git a/humble/.doctrees/doc/ros2_controllers/admittance_controller/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/admittance_controller/doc/userdoc.doctree index 8cf7ad7202affcd6e0b1c536432eb9cbb5e85129..48ccc82c5063f9ee121c4030926fc31760b6a451 100644 GIT binary patch delta 127 zcmaFg!2G^}d4mt5VV1E$eu_!HxxR^^sdcni-{L6X)Yl{C^G;6 diff --git a/humble/.doctrees/doc/ros2_controllers/bicycle_steering_controller/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/bicycle_steering_controller/doc/userdoc.doctree index 65783be3bc9d10570d281d1b71cb68325610d749..69160ae500782c427c2c2f9d89c1cdc0c331f875 100644 GIT binary patch delta 67 zcmcZ>buDT`1fx-wu|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o VXk=n(o@k;!d7+5m=G~05wE@()6y^W` delta 67 zcmcZ>buDT`1f!8jPLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; VnOT|{rJCtaUMOO?c{k&1Z2%MJ7BT<; diff --git a/humble/.doctrees/doc/ros2_controllers/diff_drive_controller/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/diff_drive_controller/doc/userdoc.doctree index 624ba64451a42e264359498922fcd8ffd231d640..ce7a3cd7ced420c987d10e8abf6a8c1d67c2781b 100644 GIT binary patch delta 127 zcmX@Nm-*aY<_$iKhFQi2`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* jVzQx;iKTg>$>v(ddlyL8Ho2BjXR^Uj?ahxbz2*i0<6 iVr*n)X=apawz-z^-UZUNO|E6snQU-Wd-LNrlusOr6ie}B%7EeC7Ku; YnOT|{rJCtak{6vUz{Rq;nDLAO06Lcy)Bpeg diff --git a/humble/.doctrees/doc/ros2_controllers/doc/migration.doctree b/humble/.doctrees/doc/ros2_controllers/doc/migration.doctree index c124c934663a25eb97ec7f86fef9f944ba750b28..020aa92fb4898ce5aeae297bc9b8aacf889f7839 100644 GIT binary patch delta 62 zcmeyY_E~L1JELKiu|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o QXk=n(o@lap2jgx*0CAiXK>z>% delta 62 zcmeyY_E~L1JENgVPLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; QnOT|{rJ8Nt!MIxx0IEO~jQ{`u diff --git a/humble/.doctrees/doc/ros2_controllers/doc/mobile_robot_kinematics.doctree b/humble/.doctrees/doc/ros2_controllers/doc/mobile_robot_kinematics.doctree index 998d6e7f9e534565a16851d4a16ce8c5fed394f9..1a24ada4c1d1844cd425e503b5e00ab8500e942d 100644 GIT binary patch delta 64 zcmccA%zUYtd4mI^VV1E$eu_!HxxR^^sdcni-{$>vRrHX#78uM_(K delta 64 zcmaF2n(^Ig#tn^(h9)^h#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> SVr*n)X=apaws{kyO$Y$#Qx!)5 diff --git a/humble/.doctrees/doc/ros2_controllers/doc/writing_new_controller.doctree b/humble/.doctrees/doc/ros2_controllers/doc/writing_new_controller.doctree index acd8397e75b4995667e3cae62764eb233f754cb0..f1b0beaf7e0d98067c4244700bfd10f94cca6685 100644 GIT binary patch delta 64 zcmZ2=jd|5I<_!*vhFQi2`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* SVzQx;iKTg>$>u`Foi72GC=^`) delta 64 zcmZ2=jd|5I<_!*vh9)^h#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> SVr*n)X=apawz-gT=Su+3%oV8s diff --git a/humble/.doctrees/doc/ros2_controllers/effort_controllers/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/effort_controllers/doc/userdoc.doctree index 55ae618341dfe7adc199c82080b71277d9316127..a2408179ee61016eb6eee2cd28cdfd6fce04dee7 100644 GIT binary patch delta 62 zcmbQ|FwbFw8>3;Cu|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o QXk=n(o@lbUoN>7v07bGALI3~& delta 62 zcmbQ|FwbFw8>68~PLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; QnOT|{rJ8LnXIw4^0De{zjsO4v diff --git a/humble/.doctrees/doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.doctree index 4ca036d2889d50e1a68daf759a69d15b806b46d2..bf5c804ca6c67451bddc667546fbf36f85e6657a 100644 GIT binary patch delta 127 zcmcaSf${PL#tjLKhFQi2`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* iVzQx;iKTg>$>xcS?bf7gn>>-xY;uBy!RGb0OSk}u)FvPR delta 127 zcmcaSf${PL#tjLKh9)^h#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> iVr*n)X=apaws|6ByEWrlusOr6ie}B%7EeC7Ku; VnOT|{rJCta?vygvyn}J70RR&$78?Kn diff --git a/humble/.doctrees/doc/ros2_controllers/gpio_controllers/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/gpio_controllers/doc/userdoc.doctree index a35c2a1085d7f4a395c8be004a9fc5f39857845a..29577d61b955808395ce4aace70a29f3fe7d6017 100644 GIT binary patch delta 67 zcmdm1wXJG{6QfarlusOr6ie}B%7EeC7Ku; VnOT|{rJCtaP7_z#Jd1ITH2@3T70Cbq diff --git a/humble/.doctrees/doc/ros2_controllers/gripper_controllers/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/gripper_controllers/doc/userdoc.doctree index 9894a552206b2210573e05e2799420b1e0f82235..f7cebfbe201b0faa1fa0dea95ed1d9a2541b9894 100644 GIT binary patch delta 62 zcmbP~Gbv|-2cuz@u|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o QXk=n(o@lbUl5wU9096hWjsO4v delta 62 zcmbP~Gbv|-2cw}$PLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; QnOT|{rJ8N7WSnUN0FAN}+5i9m diff --git a/humble/.doctrees/doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.doctree index dd57ee95e5c21961ba6abd7f13737c8c81eb5c62..08ab2befbed75358a838d5dd0c1532600d503346 100644 GIT binary patch delta 127 zcmX@#$aubyaf2VDVV1E$eu_!HxxR^^sdF$PEB#<0Y8@ delta 127 zcmX@#$aubyaf2VDp-E1Wae7{Up}w(!Ns2|9c^VKHCL1RiTUw^3B&MY#nVKYcni-{cni-{iT-5!rG}e38H3jW02P=P1^@s6 delta 69 zcmca}pXtthrVVP0MkYB$#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> XVr*n)X=apara#$!so~~M#^7}TRJa#X diff --git a/humble/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/trajectory.doctree b/humble/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/trajectory.doctree index 15b0a03f4177b98e78bc5fc431ae6daf599974c5..a7ea992dfaef49f1fbe199441a37b7d7bcfeab37 100644 GIT binary patch delta 69 zcmX@Img&e^rVTZWMp?!N`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* YVzQx;iKTg>iT>pHR{PCw8Lv+P00z7kqyPW_ delta 69 zcmX@Img&e^rVTZWMkYB$#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> XVr*n)X=aparaw8p)qe9^#_Ll6Mcfzg diff --git a/humble/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.doctree index 16976121d4087955b752945a888bba567a427f16..6bda60fa44fb8e87e6b1de0bf12dd31f069a0ffa 100644 GIT binary patch delta 69 zcmcceg6YZ&rVSB{Mp?!N`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* YVzQx;iKTg>iT-3q9-Ga_82dH>03W&*DgXcg delta 69 zcmcceg6YZ&rVSB{MkYB$#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> XVr*n)X=apara#${$7b^}#=cDeUfLIS diff --git a/humble/.doctrees/doc/ros2_controllers/pid_controller/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/pid_controller/doc/userdoc.doctree index 12a6c82a82ffcd2ce06e051dc65858a124f2d86b..098a47f461371cef077cf36a81b39de2cfc53227 100644 GIT binary patch delta 194 zcmaF8f$8-IrVVzChFQi2`6(v(=K3avrsgR|hAGA-mPw{&MnJY@N?LMil9`2hnxSD* vVzQx;iKTg>$>w~<*k;nTP0nXjot)nxI$6JgYqMjkARF06Xl}mPJ&Okb6(Tx1 delta 194 zcmaF8f$8-IrVVzCh9)^h#_4(ah5E(@CMgza=4n7+m~5P6Y-yRAl9-l~WNMOZVwRL> vVr*n)X=apawmF|MwwZKolk*u>C+ByFPS$VW+U(dW$VRpinwu|n&*A|9(^)rlusOr6ie}B%7EeC7Ku; hnOT|{rJCta-YB59c^0FjE}42Kuh&uBtfQ~V4FCwfDH8wy diff --git a/humble/.doctrees/doc/ros2_controllers/position_controllers/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/position_controllers/doc/userdoc.doctree index 78df37bd5f6fa43493489f9b5c36b8451e4f75fb..1080c49c768965ded5dad2e04cca0d6eb2771768 100644 GIT binary patch delta 62 zcmaFj@Wf$*7o%a8u|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o QXk=n(o@lbUn(?I^0BD927ytkO delta 62 zcmaFj@Wf$*7o(v`PLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; QnOT|{rJ8N7W_&3J0HG=rWB>pF diff --git a/humble/.doctrees/doc/ros2_controllers/range_sensor_broadcaster/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/range_sensor_broadcaster/doc/userdoc.doctree index e837a30d347e2b0ed4bb3eb5b88a44256fac0634..9a64a13477fbf0864b4a0e07f732303ce5865655 100644 GIT binary patch delta 131 zcmbQ9H$87d5Tj9+u|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o hXk=n(o@k;!`K_|v=1q*tG|ALEnNL-7^FwVjZU8v&CvX4& delta 131 zcmbQ9H$87d5TlVvPLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; hnOT|{rJCtaeygmvc@yI@O)~XP=2O+&{7~DB8vqY)DhL1o diff --git a/humble/.doctrees/doc/ros2_controllers/rqt_joint_trajectory_controller/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/rqt_joint_trajectory_controller/doc/userdoc.doctree index 318b688e3a29e2c738c4a203ac7fd54364759f8a..f328a64b9342927f0d8f158298f86ebaf03ed7f8 100644 GIT binary patch delta 62 zcmbO)H(zc;0;6G;u|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o QXk=n(o@lapB4Zyf06Z%a3IG5A delta 62 zcmbO)H(zc;0;8cxPLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; QnOT|{rJ8M?$k@jV0Cdk2RsaA1 diff --git a/humble/.doctrees/doc/ros2_controllers/steering_controllers_library/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/steering_controllers_library/doc/userdoc.doctree index 84b8aadd56f50f62c4dbe9dcdc6df2ad1439be1d..92f5191463f8bd0bfea4819a407ec7c4c2e9ee60 100644 GIT binary patch delta 73 zcmeDE&(!;$X+spFQI@emeu_!HxxR^^sdcni-{<=}-QsB0AZIS7Y-@#v^+Hr|TI3 diff --git a/humble/.doctrees/doc/ros2_controllers/tricycle_controller/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/tricycle_controller/doc/userdoc.doctree index b393f4fef211e7e483dea21daa6054e25fe1b7fd..e6c9889045202500f7956554c839f229c97c8e4f 100644 GIT binary patch delta 67 zcmZ2#vD9LN2cuDzu|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o VXk=n(o@k;!*_Oj(^E$?IDFC8j6M+B# delta 67 zcmZ2#vD9LN2cwZmPLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; VnOT|{rJCtaw&gI{ypFM43IO4O6wLqt diff --git a/humble/.doctrees/doc/ros2_controllers/tricycle_steering_controller/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/tricycle_steering_controller/doc/userdoc.doctree index aafb94b0bfc1ab058b2c69e513679c0b7e501920..e984bb1a608a78162287d57eda5c19408b7e3021 100644 GIT binary patch delta 71 zcmZ3Qyfk@36r)j=u|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o aXk=n(o@k;!xu0Kj@=tb+%_kY}=mP*2$QE+| delta 71 zcmZ3Qyfk@36r+(zPLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; ZnOT|{rJCta?&lYs{F7Z{^GU`#`T$!P7ry`i diff --git a/humble/.doctrees/doc/ros2_controllers/velocity_controllers/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/velocity_controllers/doc/userdoc.doctree index 7a3e7761c9fb47d48c13b7c7d6f531580dd131f7..d1686c4bdc5109e7b9785a6013c86b7ee9ad463e 100644 GIT binary patch delta 62 zcmaFj@Wf$*7o%a8u|a-{Nxr$hiJ_@^ijiT8v594pshJUwZJCmmoSI~2VV-7an3R}o QXk=n(o@lbUn(?I^0BD927ytkO delta 62 zcmaFj@Wf$*7o(v`PLXkXUVfpzv4Kg7MVfgU5Ev#KCmCB>rlusOr6ie}B%7EeC7Ku; QnOT|{rJ8N7W_&3J0HG=rWB>pF diff --git a/humble/.doctrees/doc/simulators/simulators.doctree b/humble/.doctrees/doc/simulators/simulators.doctree index 7240fd2150c18f98a4732ebab6df181f4c58fbbb..d1fac0c8f60899425c5e8f2e27aeaf2b7d1d432b 100644 GIT binary patch delta 62 zcmZoNZ!+JY#%P#jY>=N~l5ehWVrXifVq}cni-{AE diff --git a/humble/.doctrees/environment.pickle b/humble/.doctrees/environment.pickle index e1a6d4679bfb4b941c22cf264034ba9feefaff1c..e70b7667ddae3cb52d36f8f78f6d51cb3e27b5b2 100644 GIT binary patch delta 60624 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 I&gg*u2MMDu`~Uy| diff --git a/humble/.doctrees/index.doctree b/humble/.doctrees/index.doctree index 93e5c5751f5506adc2dfce19d935b17b82ec4251..73bc90e413d9f4cbb8633e11fa264fa92a138be1 100644 GIT binary patch delta 78 zcmeCV$Jld^af2D7VV1E$eu_!HxxR^^sdcni-{Maintainers
- 58606 + 58315
@@ -181,13 +181,13 @@

Maintainers -
+
- 23017 + 23014
-
+
@@ -208,13 +208,13 @@

Maintainers -
+
- 8133 + 8096
-
+
@@ -235,13 +235,13 @@

Maintainers -
+
- 7867 + 7863
-
+
@@ -249,7 +249,7 @@

Maintainers -
+
- 102064 + 102300
@@ -332,7 +332,7 @@

Maintainers -
+
@@ -359,7 +359,7 @@

Maintainers -
+
@@ -386,7 +386,7 @@

Maintainers -
+
@@ -394,7 +394,7 @@

Maintainers
0.95
-
+
- + @@ -474,18 +474,18 @@

Maintainers -
+
- 0.91 + 0.92
-
+
- + @@ -503,15 +503,15 @@

Maintainers -
+
0.59
-
+
@@ -532,15 +532,15 @@

Maintainers -
+
0.18
-
+
@@ -548,7 +548,7 @@

Maintainers
@@ -607,7 +607,7 @@

Maintainers -
+
@@ -628,15 +628,15 @@

Maintainers
- 0.45 + 0.44
-
+
@@ -657,18 +657,18 @@

Maintainers -
+
0.93
-
+
- + @@ -686,23 +686,23 @@

Maintainers -
+
0.92
-
+
- + - Fetched on 2024-12-10 03:47:40 UTC + Fetched on 2024-12-11 03:46:34 UTC