diff --git a/foxy/.buildinfo b/foxy/.buildinfo index dfc9c521e9f..487e8af252c 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: cf8ea50ca86ee4ad082bfcfc78073f9e +config: e7d3246817a20f452339062fab30d21d tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/foxy/.doctrees/doc/acknowledgements/acknowledgements.doctree b/foxy/.doctrees/doc/acknowledgements/acknowledgements.doctree index 9eea66ebbd8..ac2982cfb5b 100644 Binary files a/foxy/.doctrees/doc/acknowledgements/acknowledgements.doctree and b/foxy/.doctrees/doc/acknowledgements/acknowledgements.doctree differ diff --git a/foxy/.doctrees/doc/contributing/contributing.doctree b/foxy/.doctrees/doc/contributing/contributing.doctree index 0cf1b9b610f..098f95b6c94 100644 Binary files a/foxy/.doctrees/doc/contributing/contributing.doctree and b/foxy/.doctrees/doc/contributing/contributing.doctree differ diff --git a/foxy/.doctrees/doc/differences_to_ros1/differences_to_ros1.doctree b/foxy/.doctrees/doc/differences_to_ros1/differences_to_ros1.doctree index 5b48eb730c4..c082a48bc4e 100644 Binary files a/foxy/.doctrees/doc/differences_to_ros1/differences_to_ros1.doctree and b/foxy/.doctrees/doc/differences_to_ros1/differences_to_ros1.doctree differ diff --git a/foxy/.doctrees/doc/getting_started/getting_started.doctree b/foxy/.doctrees/doc/getting_started/getting_started.doctree index ac519312ddf..a917c655f30 100644 Binary files a/foxy/.doctrees/doc/getting_started/getting_started.doctree and b/foxy/.doctrees/doc/getting_started/getting_started.doctree differ diff --git a/foxy/.doctrees/doc/project_ideas.doctree b/foxy/.doctrees/doc/project_ideas.doctree index bc4632ae9e6..a3b2a181a08 100644 Binary files a/foxy/.doctrees/doc/project_ideas.doctree and b/foxy/.doctrees/doc/project_ideas.doctree differ diff --git a/foxy/.doctrees/doc/resources/resources.doctree b/foxy/.doctrees/doc/resources/resources.doctree index 0eedb0c4f18..8e76c9eed4e 100644 Binary files a/foxy/.doctrees/doc/resources/resources.doctree and b/foxy/.doctrees/doc/resources/resources.doctree differ diff --git a/foxy/.doctrees/doc/ros2_control/controller_manager/doc/userdoc.doctree b/foxy/.doctrees/doc/ros2_control/controller_manager/doc/userdoc.doctree index 53528034379..7e1dbbd2c97 100644 Binary files a/foxy/.doctrees/doc/ros2_control/controller_manager/doc/userdoc.doctree and b/foxy/.doctrees/doc/ros2_control/controller_manager/doc/userdoc.doctree differ diff --git a/foxy/.doctrees/doc/ros2_control/doc/index.doctree b/foxy/.doctrees/doc/ros2_control/doc/index.doctree index b856e6f7cbd..c8b4e032041 100644 Binary files a/foxy/.doctrees/doc/ros2_control/doc/index.doctree and b/foxy/.doctrees/doc/ros2_control/doc/index.doctree differ diff --git a/foxy/.doctrees/doc/ros2_control/hardware_interface/doc/fake_components_userdoc.doctree b/foxy/.doctrees/doc/ros2_control/hardware_interface/doc/fake_components_userdoc.doctree index 39e696d3d8c..945ce5ddd79 100644 Binary files a/foxy/.doctrees/doc/ros2_control/hardware_interface/doc/fake_components_userdoc.doctree and b/foxy/.doctrees/doc/ros2_control/hardware_interface/doc/fake_components_userdoc.doctree differ diff --git a/foxy/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree b/foxy/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree index e13f07f6bad..ac8cdb01755 100644 Binary files a/foxy/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree and b/foxy/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree differ diff --git a/foxy/.doctrees/doc/ros2_control_demos/doc/index.doctree b/foxy/.doctrees/doc/ros2_control_demos/doc/index.doctree index 77a1c408d6a..7cf163c7c36 100644 Binary files a/foxy/.doctrees/doc/ros2_control_demos/doc/index.doctree and b/foxy/.doctrees/doc/ros2_control_demos/doc/index.doctree differ 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 bc8fd45d208..05ed3bb8092 100644 Binary files a/foxy/.doctrees/doc/ros2_controllers/diff_drive_controller/doc/userdoc.doctree and b/foxy/.doctrees/doc/ros2_controllers/diff_drive_controller/doc/userdoc.doctree differ diff --git a/foxy/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree b/foxy/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree index f47e2678829..6368823f9dd 100644 Binary files a/foxy/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree and b/foxy/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree differ 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 28d815d9b47..e5e2e5c18a7 100644 Binary files a/foxy/.doctrees/doc/ros2_controllers/doc/writing_new_controller.doctree and b/foxy/.doctrees/doc/ros2_controllers/doc/writing_new_controller.doctree differ 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 ae9c0707c05..be824867b55 100644 Binary files a/foxy/.doctrees/doc/ros2_controllers/effort_controllers/doc/userdoc.doctree and b/foxy/.doctrees/doc/ros2_controllers/effort_controllers/doc/userdoc.doctree differ 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 50fcede4232..53a2882b11f 100644 Binary files a/foxy/.doctrees/doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.doctree and b/foxy/.doctrees/doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.doctree differ 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 c6ef41d81d8..000f3ccf3f8 100644 Binary files a/foxy/.doctrees/doc/ros2_controllers/forward_command_controller/doc/userdoc.doctree and b/foxy/.doctrees/doc/ros2_controllers/forward_command_controller/doc/userdoc.doctree differ 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 0f000b90107..1df6dcb7114 100644 Binary files a/foxy/.doctrees/doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.doctree and b/foxy/.doctrees/doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.doctree differ 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 cc4febd2aa2..4b4ed8a9845 100644 Binary files a/foxy/.doctrees/doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.doctree and b/foxy/.doctrees/doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.doctree differ 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 2fb6d36ee03..fb908c1e53f 100644 Binary files a/foxy/.doctrees/doc/ros2_controllers/joint_state_controller/doc/userdoc.doctree and b/foxy/.doctrees/doc/ros2_controllers/joint_state_controller/doc/userdoc.doctree differ 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 f59089193e3..b21e438b75d 100644 Binary files a/foxy/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.doctree and b/foxy/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.doctree differ 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 9612af69845..72131ab7672 100644 Binary files a/foxy/.doctrees/doc/ros2_controllers/position_controllers/doc/userdoc.doctree and b/foxy/.doctrees/doc/ros2_controllers/position_controllers/doc/userdoc.doctree differ 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 3d4aaf91072..0a8563273e4 100644 Binary files a/foxy/.doctrees/doc/ros2_controllers/tricycle_controller/doc/userdoc.doctree and b/foxy/.doctrees/doc/ros2_controllers/tricycle_controller/doc/userdoc.doctree differ 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 4bca0768497..8892d7ecb8d 100644 Binary files a/foxy/.doctrees/doc/ros2_controllers/velocity_controllers/doc/userdoc.doctree and b/foxy/.doctrees/doc/ros2_controllers/velocity_controllers/doc/userdoc.doctree differ diff --git a/foxy/.doctrees/environment.pickle b/foxy/.doctrees/environment.pickle index 17d24cb0776..7a146cf90a9 100644 Binary files a/foxy/.doctrees/environment.pickle and b/foxy/.doctrees/environment.pickle differ diff --git a/foxy/.doctrees/index.doctree b/foxy/.doctrees/index.doctree index 56a514b3a8a..e2c2f12bb54 100644 Binary files a/foxy/.doctrees/index.doctree and b/foxy/.doctrees/index.doctree differ diff --git a/foxy/index.html b/foxy/index.html index 9ca17d218d9..ce1a9b57958 100644 --- a/foxy/index.html +++ b/foxy/index.html @@ -152,7 +152,7 @@
Built on 2024-04-07 at 05:31 GMT
+Built on 2024-04-08 at 05:31 GMT
diff --git a/foxy/searchindex.js b/foxy/searchindex.js index d9055edff9f..aece4ef4c7c 100644 --- a/foxy/searchindex.js +++ b/foxy/searchindex.js @@ -1 +1 @@ -Search.setIndex({"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"], "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"], "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!"], "terms": {"The": [0, 2, 3, 4, 5, 8, 9, 10, 11, 12, 13, 15, 17, 18, 19, 20, 22, 24], "project": [0, 1, 24], "ha": [0, 1, 3, 4, 5, 13, 19], "receiv": [0, 2], "major": 0, "contribut": [0, 1, 5], "from": [0, 1, 2, 3, 5, 6, 8, 9, 11, 13, 15, 17, 20, 22, 24], "follow": [0, 1, 2, 3, 4, 8, 9, 10, 12, 13, 20, 24], "compani": [0, 5], "institut": 0, "support": [0, 2, 3, 5, 8, 9, 13, 20, 24], "rosin": 0, "ro": [0, 1, 3, 4, 6, 8, 9, 19, 24], "industri": [0, 3, 4], "qualiti": [0, 1], "assur": 0, "robot": [0, 2, 4, 10, 11, 15, 22, 24], "softwar": [0, 3], "compon": [0, 5, 6, 7, 11, 15, 17, 22, 24], "more": [0, 1, 2, 3, 4, 8, 13], "inform": [0, 8, 13, 24], "http": [0, 1, 3, 4], "eu": 0, "thi": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 13, 14, 15, 16, 18, 19, 20, 21, 23, 24], "fund": 0, "european": 0, "union": 0, "": [0, 1, 3, 4, 5, 10, 13, 24], "horizon": 0, "2020": 0, "research": [0, 5], "innov": 0, "programm": 0, "under": [0, 5, 13, 24], "grant": 0, "agreement": 0, "732287": 0, "first": [1, 2, 13], "thank": 1, "you": [1, 2, 3, 5, 8, 13, 24], "consid": [1, 9], "ros2_control": [1, 3, 5, 6, 8, 10, 13], "As": [1, 13], "an": [1, 2, 3, 4, 5, 8, 9, 13, 20], "open": [1, 20], "sourc": [1, 3, 5, 13], "we": [1, 4, 5], "welcom": 1, "each": [1, 3, 4], "contributor": 1, "regardless": 1, "background": 1, "experi": 1, "To": [1, 2, 3, 24], "reduc": [1, 8], "entropi": 1, "univers": [1, 4, 5], "our": [1, 3, 4, 5], "vivid": 1, "collabor": 1, "environ": [1, 3, 5], "have": [1, 2, 3, 4, 8, 10, 13, 20], "set": [1, 2, 4, 5, 8, 9, 14, 16, 18, 20, 21, 23], "up": [1, 5, 10], "some": [1, 4, 5, 20, 24], "standard": [1, 2, 3, 4, 5, 9, 12, 15], "method": [1, 2, 3, 13], "requir": [1, 2, 3, 4, 13], "ar": [1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 13, 15, 17, 18, 20, 22, 24], "limit": [1, 4, 5, 11, 22], "scope": 1, "your": [1, 2, 5, 8, 13, 24], "pr": 1, "should": [1, 2, 4, 5, 6, 9, 10, 13, 18], "do": [1, 2, 3, 4, 5, 6, 13, 20], "one": [1, 2, 3, 4, 5, 13, 15, 24], "thing": 1, "avoid": [1, 13], "ad": [1, 4, 8, 13, 18], "random": 1, "fix": [1, 2], "put": [1, 13], "those": [1, 2, 3, 4, 8, 13, 15, 20], "separ": [1, 2, 3], "give": [1, 3, 5, 24], "descript": [1, 2, 5, 13], "titl": 1, "add": [1, 2, 13], "short": [1, 13, 24], "summari": [1, 5, 24], "make": [1, 2, 4, 5, 24], "sure": [1, 4, 24], "pipelin": 1, "i": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17, 20, 21, 22, 23, 24], "green": 1, "don": 1, "t": [1, 6], "afraid": 1, "review": [1, 4, 24], "maintain": [1, 3, 4], "new": [1, 5, 12, 20, 24], "code": [1, 2, 4, 5, 13], "test": [1, 4, 8, 10, 13], "If": [1, 2, 3, 6, 13, 15, 20, 24], "function": [1, 2, 3, 4, 5], "alwai": 1, "exercis": 1, "serv": [1, 3, 4], "live": [1, 5], "origin": [1, 5], "intent": [1, 8], "section": [1, 2, 13], "target": [1, 12, 13, 20], "also": [1, 2, 3, 4, 5, 13], "read": [1, 2, 3, 13, 18, 20], "understand": [1, 4], "how": [1, 4, 5, 13], "handl": [1, 2, 4, 5, 20], "organ": [1, 5, 24], "guidelin": 1, "especi": [1, 2], "applic": [1, 3, 5, 6], "ros2_control_demo": [1, 3, 24], "pleas": [1, 24], "keep": [1, 13], "mind": [1, 13], "work": [1, 4, 5, 11, 13, 14, 16, 20, 21, 22, 23, 24], "fork": 1, "when": [1, 2, 3, 4, 8, 9, 13, 20], "submit": [1, 5], "That": [1, 13], "wai": [1, 13, 15], "main": [1, 3, 4, 5, 6, 8, 13, 24], "repo": [1, 3], "clean": [1, 4], "featur": [1, 5, 8, 24], "branch": 1, "all": [1, 2, 3, 4, 5, 8, 10, 13, 18, 20], "check": [1, 2, 3, 4, 8, 10, 13, 20, 24], "satisfi": 1, "befor": [1, 2, 6, 13], "thei": [1, 2, 3, 4, 5, 8, 9, 12, 13, 20], "can": [1, 2, 3, 4, 5, 7, 8, 13, 15, 19, 20, 24], "must": 1, "approv": 1, "two": [1, 3, 4, 6, 13, 15], "explicitli": 1, "onli": [1, 2, 3, 4, 5, 6, 9, 13, 15, 20], "except": 1, "other": [1, 2, 3, 5, 13], "activ": [1, 2, 3, 9], "where": [1, 4, 13], "back": 1, "traceabl": 1, "discuss": [1, 5, 24], "suffici": [1, 15], "note": [1, 3, 10, 24], "still": [1, 2, 3], "encourag": 1, "help": [1, 6, 9, 13], "u": [1, 6], "increas": 1, "pace": 1, "veri": [1, 2, 4], "like": [1, 2, 3, 4, 5], "find": 1, "issu": [1, 4, 24], "nobodi": 1, "els": 1, "see": [1, 2, 3, 10, 13, 15, 17, 20], "squash": 1, "commit": 1, "messag": [1, 4, 6, 9, 15, 17, 18, 20, 24], "comment": 1, "fixup": 1, "linter": 1, "us": [1, 2, 3, 4, 5, 8, 9, 12, 14, 15, 16, 17, 18, 19, 21, 23, 24], "pre": 1, "correct": [1, 2, 20], "header": [1, 13], "address": [1, 4], "similar": [1, 3, 5], "mean": [1, 2, 8], "result": [1, 3], "exactli": 1, "1": [1, 3, 4, 5, 8, 13], "cowboi": 1, "style": [1, 13], "over": [1, 4], "weekend": 1, "It": [1, 2, 3, 4, 6, 15], "doesn": 1, "matter": 1, "trivial": [1, 8], "peopl": 1, "chanc": 1, "proper": [1, 20], "Be": 1, "awar": 1, "impact": 1, "time": [1, 2, 4, 5, 6, 8, 9, 11, 13, 15, 20, 24], "proport": 1, "its": [1, 2, 3, 4, 5, 15, 17], "ping": 1, "them": [1, 3, 4, 6, 13, 18], "necessari": 1, "repeatedli": 1, "start": [1, 2, 5, 6, 9, 10, 13, 20, 24], "part": [1, 4, 5, 13], "For": [1, 3, 4, 5, 8, 13, 20], "detail": [1, 2, 3, 8, 13], "thoma": 1, "cokela": 1, "info": 1, "tutori": 1, "sphinx": 1, "rest_syntax": 1, "html": 1, "id8": 1, "type": [1, 2, 3, 5, 6, 9, 12, 13, 15, 17], "develop": [1, 5, 8, 10, 13], "stabl": [1, 4], "against": 1, "accept": [1, 13, 14, 16, 21, 23], "api": [1, 4], "abi": 1, "chang": [1, 2, 3, 5, 9, 13, 20], "e": [1, 2, 3, 4, 5, 8, 13, 14, 15, 16, 18, 20, 21, 23, 24], "name": [1, 2, 3, 5, 6, 8, 9, 13, 15, 17, 18, 20], "convent": 1, "master": [1, 3, 4], "semi": 1, "binari": 1, "good": [1, 4], "same": [1, 3, 4, 15], "build": [1, 13], "dai": 1, "2": [1, 3, 5, 8], "ros_distro": 1, "g": [1, 2, 3, 4, 5, 8, 13, 14, 16, 18, 21, 23, 24], "foxi": [1, 3, 5], "galact": 1, "releas": [1, 3, 5], "version": [1, 4], "non": [1, 5, 15], "brake": 1, "distribut": [1, 24], "three": [1, 2, 3, 13], "stage": 1, "current": [1, 4, 9, 20], "futur": [1, 5], "compat": [1, 2, 5], "framework": [1, 2, 4, 5, 6, 8, 9, 10, 12, 13, 24], "packag": [1, 2, 3, 10, 13, 15, 17, 19, 20, 24], "show": [1, 3, 5, 6, 9], "direct": [1, 2, 4, 13], "local": [1, 18], "possibl": [1, 3, 4, 13, 20], "core": 1, "immedi": 1, "depend": [1, 3, 13, 20], "fail": 1, "expect": [1, 4, 20], "after": [1, 11, 13, 22], "next": [1, 20], "sync": 1, "abl": 1, "potenti": [1, 13], "mid": 1, "robothw": 2, "rigid": 2, "ani": [2, 3, 5, 13], "imposs": 2, "extend": [2, 3, 4, 13], "exist": [2, 3, 4, 6, 13], "addit": [2, 4], "sensor": [2, 3, 4, 8, 12], "actuat": [2, 3, 4, 8], "tool": [2, 4, 5], "without": [2, 3, 8, 13], "combinedrobothardwar": 2, "drawback": [2, 24], "solut": [2, 5], "optim": 2, "combin": [2, 8, 20], "extern": [2, 3, 4, 8], "defin": [2, 3, 4, 8, 12, 13, 15, 17, 18, 20], "system": [2, 3, 4, 5, 10, 20, 24], "composit": [2, 5], "basic": [2, 3, 4, 5, 13], "physic": [2, 3, 8], "cell": [2, 15], "surround": 2, "describ": [2, 3], "multi": [2, 3, 4, 5, 10], "gripper": [2, 3, 8], "out": [2, 11], "box": 2, "allow": [2, 20], "joint": [2, 3, 5, 11, 12, 13, 14, 16, 18, 21, 23, 24], "posit": [2, 3, 5, 6, 9, 10, 12, 14, 16, 20, 21, 23], "veloc": [2, 3, 5, 10, 12, 20, 21, 23], "effort": [2, 12, 14, 16, 20], "hard": [2, 4], "data": [2, 3, 4, 8, 19], "approach": 2, "doe": [2, 13, 20], "enforc": [2, 20], "string": [2, 8, 13, 18, 20], "ensur": [2, 5], "constant": 2, "hardware_interfac": [2, 3, 8, 12, 13], "In": [2, 3, 4, 5, 13], "had": 2, "request": [2, 24], "itself": 2, "took": 2, "care": [2, 4, 13], "regist": 2, "resourc": 2, "conflict": [2, 3, 4], "resourcemanag": 2, "take": [2, 4, 13, 18], "state": [2, 3, 4, 5, 8, 9, 10, 12, 13, 15, 18, 20], "avail": [2, 3, 5, 9, 10, 13, 18, 20], "enabl": [2, 3, 4, 5, 10, 15], "anymor": 2, "controllermanag": 2, "implement": [2, 3, 4, 5, 8, 10, 11, 12, 13, 20, 22, 24], "systeminterfac": [2, 8], "granular": 2, "sensorinterfac": 2, "actuatorinterfac": 2, "abov": [2, 20], "choos": 2, "suitabl": [2, 5], "strategi": [2, 20], "decid": 2, "which": [2, 3, 4, 5, 9, 11, 13, 15, 17, 20, 22], "case": [2, 4, 5, 13, 20, 24], "mayb": 2, "sens": [2, 3, 15], "multipl": [2, 3, 20], "constructor": [2, 13], "initi": [2, 13], "variabl": [2, 4, 13], "need": [2, 3, 4, 5, 13], "commun": [2, 3, 4, 5], "default": [2, 3, 8, 18, 20], "configur": [2, 3, 4, 5, 6, 9, 10, 13, 20], "paramet": [2, 5, 13], "pars": [2, 7], "urdf": 2, "snippet": 2, "hardwareinfo": 2, "here": [2, 7, 13, 19, 20], "cross": 2, "valu": [2, 3, 4, 8, 13, 20], "export_": 2, "_interfac": 2, "joint_a2": 2, "extract": [2, 11, 22], "sensibl": 2, "stop": [2, 5, 6, 9, 10, 11, 22], "usual": [2, 8, 13], "includ": [2, 4, 9, 13], "command": [2, 3, 4, 5, 7, 8, 10, 12, 13, 14, 16, 20, 21, 23, 24], "safe": [2, 11, 13, 20, 22], "interrupt": [2, 6], "stream": [2, 5], "write": [2, 3, 4, 5, 12], "exchang": [2, 4], "equival": 2, "forget": 2, "pluginlib_export_class": [2, 13], "macro": [2, 3, 13], "end": [2, 3, 13, 20], "cpp": [2, 13], "file": [2, 3, 4, 5, 6, 8, 13, 20], "creat": [2, 3, 5, 8, 13], "xml": [2, 13], "librari": [2, 3, 4, 9, 13], "pluginlib": [2, 3, 13], "exampl": [2, 3, 4, 5, 8, 9, 10, 15, 20, 24], "rrbotsystempositiononlyhardwar": [2, 3], "excel": 2, "jointtrajectorycontrol": [2, 9], "real": [2, 4, 5, 8, 13, 18, 20, 24], "critic": [2, 4], "mark": 2, "controllerinterfac": [2, 3, 9, 13], "member": [2, 13], "init": [2, 13], "call": [2, 3, 13], "lifecycl": [2, 3, 5, 6], "declar": [2, 13], "state_interface_configur": [2, 13], "command_interface_configur": [2, 13], "design": [2, 3, 4, 5, 24], "updat": [2, 3, 4, 13], "manag": [2, 4, 5, 7, 9, 13, 24], "option": [2, 6, 8, 9, 13, 15, 18, 20], "on_configur": [2, 13], "on_activ": [2, 13], "on_deactiv": [2, 13], "deactiv": [2, 3], "final": [2, 5], "joint_trajectory_plugin": 2, "ros2": [3, 4, 5, 6, 9, 10, 13, 24], "instal": [3, 13], "automat": [3, 11, 22], "want": 3, "workspac": [3, 13], "folder": [3, 5, 13], "wget": 3, "raw": 3, "githubusercont": 3, "com": [3, 4], "vc": 3, "import": [3, 13, 20], "src": [3, 13], "found": [3, 7, 13, 19, 20, 24], "github": [3, 4, 7, 12, 24], "repositori": [3, 4, 7, 12, 24], "figur": 3, "cm": 3, "connect": 3, "abstract": [3, 5], "side": [3, 4, 5], "entri": [3, 13], "point": [3, 12, 13, 24], "through": [3, 4, 9, 11, 12, 13, 20, 24], "servic": [3, 4, 6], "node": [3, 6, 8, 9, 10, 13], "executor": 3, "so": [3, 13], "integr": [3, 4, 5, 8, 10, 20, 24], "custom": [3, 8, 15], "setup": [3, 4, 13], "recommend": [3, 5], "ros2_control_nod": 3, "controller_manag": [3, 4, 6, 9, 13, 20], "manual": [3, 4, 13, 24], "assum": 3, "On": 3, "load": [3, 6, 9, 10, 13], "unload": [3, 6, 9], "access": [3, 4, 5, 6, 8, 13], "match": 3, "provid": [3, 4, 5, 6, 8, 10, 12, 13, 20, 24], "report": [3, 4, 18, 24], "error": [3, 4, 13, 20], "execut": [3, 13, 20], "loop": [3, 5, 13, 20], "output": [3, 4, 5, 9, 15, 17, 20], "rm": 3, "driver": [3, 5], "re": 3, "usabl": 3, "flexibl": 3, "motor": [3, 4], "encod": 3, "deal": 3, "theori": [3, 24], "compar": [3, 4, 5], "refer": 3, "measur": [3, 8, 15], "base": [3, 5, 9, 11, 13, 22], "calcul": 3, "input": [3, 4, 5, 11, 20, 22], "visit": 3, "wikipedia": [3, 24], "object": 3, "deriv": 3, "controller_interfac": [3, 4, 9, 13, 15, 17], "export": [3, 13], "plugin": [3, 13], "forwardcommandcontrol": 3, "lifecyclenod": 3, "class": [3, 5, 9, 13], "machin": [3, 4], "document": [3, 4, 5, 8, 19], "latest": 3, "interact": [3, 5, 6, 9], "list": [3, 5, 9, 10, 12, 13, 20, 24], "definit": [3, 12, 13, 15], "srv": 3, "controller_manager_msg": 3, "while": [3, 4, 5, 10, 20], "directli": [3, 24], "line": [3, 7, 13], "via": 3, "friendli": 3, "cli": [3, 7, 9], "auto": 3, "complet": [3, 12], "rang": 3, "common": [3, 4, 12, 24], "capabl": [3, 4], "readm": 3, "md": 3, "ros2controlcli": 3, "realiz": [3, 5], "repres": 3, "dynam": [3, 13], "There": [3, 6, 13], "complex": [3, 4, 5], "dof": 3, "differ": [3, 4, 5, 14, 15, 16, 21, 23], "between": [3, 4, 19, 20], "transmiss": 3, "humanoid": 3, "hand": 3, "logic": 3, "channel": 3, "kuka": 3, "rsi": 3, "A": [3, 5, 13, 20], "relat": [3, 4, 5], "link": [3, 5], "forc": [3, 5, 9, 12], "torqu": [3, 12], "simpl": [3, 4, 5, 10, 13, 19], "valv": 3, "mandatori": [3, 15, 17, 20], "dc": 3, "arduino": 3, "board": 3, "modular": [3, 5], "independ": 3, "explan": 3, "given": [3, 20], "tag": [3, 13, 24], "chosen": 3, "structur": [3, 4, 13, 20], "track": [3, 24], "togeth": 3, "xacro": 3, "hereund": 3, "rrbot": [3, 10], "parallel": [3, 8], "effector": 3, "rrbotsystempositiononli": 3, "ros2_control_demo_hardwar": [3, 10], "param": [3, 6, 8], "example_param_write_for_sec": 3, "example_param_read_for_sec": 3, "joint1": [3, 8, 9, 10, 20], "command_interfac": [3, 20], "min": 3, "max": 3, "state_interfac": [3, 20], "joint2": [3, 9, 10, 20], "rrbotforcetorquesensor1d": 3, "forcetorquesensor1dhardwar": 3, "0": [3, 8, 18, 20], "43": 3, "tcp_fts_sensor": 3, "frame_id": [3, 15, 17], "rrbot_tcp": 3, "min_forc": 3, "100": 3, "max_forc": 3, "rrbotgripp": 3, "positionactuatorhardwar": 3, "23": 3, "3": [3, 4], "gripper_joint": 3, "50": [3, 20], "yaml": [3, 4, 20], "instead": [3, 8, 19, 20], "pure": [3, 20], "launch": [3, 6, 8, 10], "stack": [3, 5], "could": [3, 5, 13, 20], "altern": [3, 20], "script": [3, 4, 13], "skeleton": 3, "orbit": 4, "around": [4, 15, 17], "everyth": [4, 13], "goal": [4, 5, 20, 24], "long": 4, "run": [4, 5, 6, 9], "task": [4, 5, 11], "interfac": [4, 5, 6, 7, 8, 10, 12, 13, 15, 17, 24], "user": 4, "thread": 4, "protect": [4, 13], "memori": [4, 13], "buffer": [4, 24], "control_toolbox": [4, 24], "second": [4, 9, 13, 24], "frequenc": 4, "high": 4, "rate": [4, 20], "khz": 4, "variou": 4, "anoth": 4, "heartbeat": 4, "signal": 4, "sent": 4, "onc": [4, 5], "per": [4, 15], "500": 4, "hz": 4, "failur": 4, "relev": [4, 24], "draft": 4, "trigger": 4, "skill": 4, "prefer": 4, "c": [4, 6, 9, 13], "trick": 4, "mentor": 4, "benc": [4, 5], "magyar": [4, 5], "deni": [4, 5], "\u0161togl": [4, 5], "size": 4, "350": 4, "hour": 4, "difficulti": 4, "about": [4, 8, 24], "org": 4, "gener": [4, 5, 13, 20, 24], "envis": 4, "simul": [4, 8, 10], "gazebo": 4, "ignit": 4, "showcas": [4, 5], "grace": 4, "degrad": 4, "architectur": [4, 5], "roadmap": [4, 24], "place": [4, 13, 20], "gpio": 4, "mode": [4, 20], "switch": [4, 9], "movement": 4, "safeti": 4, "familiar": [4, 24], "medium": 4, "focus": [4, 5], "although": 4, "easi": 4, "therefor": [4, 13, 18, 20], "often": [4, 8, 13], "orchestr": 4, "purpos": 4, "conductor": 4, "scenario": 4, "appropri": 4, "moment": 4, "right": 4, "replac": 4, "level": [4, 5, 14, 16, 20, 21, 23], "moveit2": [4, 5], "simplecontrollermanag": 4, "form": 4, "behavior": [4, 8], "benchmark": 4, "statu": [4, 9, 20], "publish": [4, 11, 15, 17, 18, 20, 22, 24], "topic": [4, 5, 20], "format": 4, "preset": 4, "modul": 4, "specif": [4, 20], "reli": 4, "doubl": [4, 8, 20], "desir": [4, 20], "howev": [4, 6], "both": [4, 5], "improv": 4, "readabl": 4, "earlier": 4, "concept": [4, 5, 8, 10], "were": 4, "introduc": [4, 5], "essenti": 4, "group": [4, 20, 24], "instanc": 4, "imu": [4, 12], "typic": [4, 20], "9": 4, "axi": [4, 15], "aceleromet": 4, "gyroscop": 4, "compass": 4, "respect": [4, 5], "Such": 4, "struct": 4, "low": [4, 5], "profil": 4, "intern": [4, 20], "addition": [4, 24], "few": [4, 5], "pull": 4, "45": 4, "tree": 4, "semantic_compon": 4, "175": 4, "rewrit": [4, 24], "ros_control": [4, 5, 24], "rich": 4, "wa": [4, 13], "motiv": 4, "adopt": 4, "port": 4, "most": [4, 13], "quit": 4, "miss": 4, "diff_drive_control": [4, 9], "joint_trajectory_control": [4, 9], "consist": [4, 20, 24], "identifi": 4, "much": [4, 13], "303": 4, "304": 4, "stretch": 4, "realtime_tool": [4, 24], "81": 4, "302": 4, "unit": 4, "gmock": 4, "cc": 5, "BY": 5, "licens": 5, "author": 5, "either": 5, "down": 5, "below": 5, "my": 5, "company_nam": 5, "tricycl": [5, 12, 22], "control": [5, 7, 8, 9, 10, 11, 14, 15, 16, 17, 18, 19, 21, 22, 23, 24], "event": 5, "pixel": 5, "prefac": 5, "introduct": [5, 20], "johann": 5, "plapp": 5, "toni": 5, "najjar": 5, "kernel": 5, "hardwar": [5, 6, 8, 10, 12, 13, 22, 24], "agnost": 5, "share": [5, 13], "well": [5, 9, 20], "perform": 5, "heavi": 5, "dr": 5, "stogl": 5, "consult": 5, "practition": 5, "guid": [5, 13], "top": 5, "virtual": 5, "talk": 5, "delv": 5, "deeper": 5, "what": 5, "explicit": [5, 20], "chain": 5, "emerg": 5, "handler": 5, "mock": 5, "usag": [5, 6, 9], "openli": 5, "record": 5, "fiveai": 5, "ltd": 5, "best": [5, 13], "focu": 5, "becom": 5, "util": 5, "3rd": 5, "parti": 5, "nav2": 5, "practic": 5, "tip": 5, "hot": 5, "shown": 5, "furthermor": 5, "get": [5, 24], "reus": 5, "inject": 5, "offer": [5, 6], "expos": 5, "problem": [5, 24], "manipul": [5, 20], "path": 5, "plan": [5, 24], "autonom": 5, "navig": 5, "ideal": [5, 8], "made": 5, "mobil": [5, 11, 22], "arm": 5, "extra": [5, 18], "readi": [5, 13], "power": 5, "studi": 5, "ur": 5, "With": 5, "moveit": [5, 8], "ingredi": 5, "scale": 5, "factor": 5, "teach": 5, "pendant": 5, "influenc": 5, "picknik": 5, "inc": 5, "nathan": 5, "brook": 5, "lovro": 5, "ivanov": 5, "andi": 5, "zelenak": 5, "rune": 5, "s\u00f8e": 5, "knudsen": 5, "onlin": [5, 13], "trajectori": [5, 12, 24], "admitt": 5, "One": 5, "reason": 5, "upgrad": 5, "ros1": 5, "better": 5, "realtim": [5, 11, 20, 22, 24], "contact": 5, "insert": 5, "singl": 5, "waypoint": [5, 12, 20], "mani": [5, 13], "teleoper": 5, "involv": 5, "kinemat": 5, "acceler": [5, 10, 11, 12, 20, 22], "jerk": [5, 11, 22], "obei": 5, "demo": 5, "booth": 5, "zeleank": 5, "unifi": 5, "life": 5, "cycl": 5, "go": [5, 13], "_control": 5, "wild": 5, "materi": 5, "quick": 5, "overview": 5, "layer": 5, "aka": 5, "systemcompon": 5, "forward": [5, 8, 12, 20, 24], "done": [5, 13], "look": 5, "modifi": 5, "simpli": [5, 20], "net": 5, "edit": 5, "collect": [5, 14, 16, 21, 23], "semant": [5, 15, 17], "world": [6, 8], "startup": 6, "h": [6, 9, 13, 19], "p": 6, "param_fil": 6, "controller_typ": 6, "timeout": [6, 9, 22], "controller_manager_timeout": 6, "controller_nam": [6, 9, 13], "argument": [6, 9], "exit": [6, 9], "leav": 6, "unconfigur": 6, "namespac": [6, 12, 13, 18, 20], "kill": [6, 9], "wait": [6, 9], "until": 6, "doxygen": 7, "fake": 7, "mirror": 8, "correspond": [8, 13, 24], "offlin": 8, "advantag": 8, "pipe": 8, "insid": 8, "broadcast": [8, 18, 19], "even": 8, "debug": 8, "boost": 8, "mimic": 8, "offset": [8, 20], "fake_sensor_command": 8, "boolean": [8, 18, 20], "fals": [8, 18, 20], "position_state_following_offset": 8, "custom_interface_with_following_offset": 8, "map": [8, 20], "multipli": 8, "mimick": 8, "deprec": [9, 12], "configure_control": 9, "configure_start_control": 9, "load_configure_control": 9, "load_start_control": 9, "spin": 9, "spin_tim": 9, "hidden": 9, "discoveri": 9, "appli": 9, "alreadi": [9, 13, 20], "daemon": 9, "test_controller_nam": 9, "test_control": 9, "diffdrivecontrol": 9, "joint_state_control": [9, 10], "jointstatecontrol": 9, "unclaim": [9, 10], "set_stat": 9, "reload": 9, "adjust": 9, "strict": 9, "asap": 9, "switch_timeout": 9, "templat": [10, 13, 20], "demonstr": 10, "prove": 10, "comprehens": 10, "ros2_control_demo_bringup": 10, "gui": 10, "ros2_control_test_nod": 10, "rrbot_system_multi_interfac": 10, "py": 10, "list_hardware_interfac": 10, "load_control": 10, "forward_command_controller_posit": 10, "forward_command_controller_veloc": 10, "forward_command_controller_acceler": 10, "forward_command_controller_illegal1": 10, "forward_command_controller_illegal2": 10, "set_controller_st": 10, "claim": 10, "now": [10, 13], "let": 10, "switch_control": 10, "again": 10, "inde": 10, "been": [10, 19], "differenti": [11, 12, 19, 24], "drive": [11, 12, 22, 24], "bodi": 11, "translat": [11, 22], "wheel": 11, "odometri": [11, 22], "comput": [11, 22], "feedback": [11, 20, 22], "twist": [11, 22], "x": [11, 15, 17, 22], "linear": [11, 20, 22], "z": [11, 15, 22], "angular": [11, 22], "ignor": [11, 20, 22], "space": [11, 20], "sort": [12, 13], "accord": [12, 20], "position_control": [12, 20], "hw_if_posit": 12, "velocity_control": 12, "hw_if_veloc": 12, "effort_control": 12, "hw_if_effort": 12, "interpol": [12, 20], "step": [13, 20, 24], "compil": 13, "rule": 13, "prepar": 13, "ament_cmak": 13, "easiest": 13, "search": 13, "recent": 13, "process": 13, "pkg": 13, "flag": [13, 20], "least": [13, 20], "cmakelist": 13, "txt": 13, "package_nam": 13, "hpp": 13, "visibility_control": 13, "window": 13, "copi": 13, "prefix": [13, 15, 17], "guard": 13, "ifndef": 13, "preprocessor": 13, "engin": 13, "friend": 13, "uniqu": 13, "written": 13, "snake_cas": 13, "controllernam": 13, "public": 13, "overrid": 13, "exact": 13, "vector": 13, "store": 13, "simplifi": [13, 24], "further": 13, "parent": 13, "reserv": 13, "importantli": 13, "fine": 13, "return": 13, "return_typ": 13, "ok": 13, "otherwis": 13, "individu": 13, "none": 13, "ask": 13, "full": 13, "joint_nam": [13, 20], "interface_typ": 13, "assign": 13, "opposit": 13, "empti": 13, "constraint": [13, 20], "At": 13, "close": 13, "class_list_macro": 13, "controller_name_namespac": 13, "visibl": 13, "controller_name_packag": 13, "bottom": 13, "test_load_": 13, "content": 13, "last": [13, 20], "specifi": [13, 20], "find_packag": 13, "rclcpp": 13, "rclcpp_lifecycl": 13, "directori": 13, "ament": 13, "cmake": 13, "pluginlib_export_plugin_description_fil": 13, "ament_cmake_gmock": 13, "ros2_control_test_asset": 13, "ament_add_gmock": 13, "ament_export_librari": 13, "ament_packag": 13, "test_depend": 13, "colcon": 13, "rememb": 13, "root": 13, "success": 13, "bash": 13, "enjoi": 13, "great": 13, "shell": 13, "mai": [14, 16, 21, 23], "certain": [14, 16, 21, 23], "achiev": [14, 16, 21, 23], "These": [14, 16, 21, 23], "geometry_msg": 15, "msg": [15, 17, 20], "wrenchstamp": 15, "wrapper": [15, 17], "forcetorquesensor": 15, "sensor_nam": [15, 17], "interface_nam": 15, "frame": [15, 17], "6d": 15, "ft": 15, "y": 15, "less": 15, "six": 15, "ax": 15, "example_nam": 15, "example_interfac": 15, "sensor_msg": 17, "imusensor": 17, "orient": 17, "angular_veloc": 17, "linear_acceler": 17, "joint_stat": 18, "dynamic_joint_st": 18, "use_local_top": 18, "my_state_broadcast": 18, "extra_joint": 18, "arrai": 18, "renam": 19, "joint_state_broadcast": 19, "order": 19, "true": [19, 20], "remov": 19, "turtl": 19, "reach": 20, "instant": 20, "attempt": 20, "mechan": 20, "By": 20, "spline": 20, "guarante": 20, "continu": 20, "discourag": 20, "becaus": 20, "yield": 20, "discontinu": 20, "cubic": 20, "quintic": 20, "pid": [20, 24], "similarli": 20, "eg": 20, "proxi": 20, "wrap": 20, "robust": 20, "clock": 20, "caus": 20, "queu": 20, "segment": 20, "ros__paramet": 20, "joint3": 20, "joint4": 20, "joint5": 20, "joint6": 20, "state_publish_r": 20, "action_monitor_r": 20, "20": 20, "allow_partial_joints_go": 20, "open_loop_control": 20, "stopped_velocity_toler": 20, "01": 20, "goal_tim": 20, "05": [20, 24], "03": 20, "monitor": 20, "action": 20, "control_msg": [20, 24], "followjointtrajectori": 20, "hydraul": 20, "tri": 20, "numer": 20, "nan": 20, "std": 20, "numeric_limit": 20, "quiet_nan": 20, "toler": 20, "jointtrajectori": 20, "deviat": 20, "maxim": 20, "predefin": 20, "joint_trajectori": 20, "trajectory_msg": 20, "jointtrajectorycontrollerst": 20, "follow_joint_trajectori": 20, "server": 20, "position_velocity_control": 20, "position_velocity_acceleration_control": 20, "Not": 20, "yet": 20, "feedforward": 20, "term": [20, 24], "plu": 20, "171": 20, "base_link": 22, "traction": 22, "steer": 22, "Its": 24, "oper": 24, "overcom": 24, "idea": 24, "wide": 24, "toolkit": 24, "unreleas": 24, "smooth": 24, "doc": 24, "wg": 24, "meet": 24, "everi": 24, "wednesdai": 24, "join": 24, "announc": 24, "discours": 24, "googl": 24, "propos": 24, "previou": 24, "bug": 24, "tracker": 24, "minim": 24, "reproduc": 24, "regard": 24, "etc": 24, "question": 24, "answer": 24, "2024": 24, "04": 24, "07": 24, "31": 24, "built": 24, "gmt": 24}, "objects": {}, "objtypes": {}, "objnames": {}, "titleterms": {"acknowledg": 0, "pull": 1, "request": 1, "rule": 1, "repositori": [1, 10], "process": 1, "merg": 1, "write": [1, 13], "document": [1, 7, 24], "structur": [1, 2], "ci": 1, "configur": 1, "differ": 2, "ros_control": 2, "ros1": [2, 4], "hardwar": [2, 3, 4, 11, 14, 16, 18, 20, 21, 23], "class": 2, "interfac": [2, 3, 9, 11, 14, 16, 18, 20, 21, 23], "control": [2, 3, 4, 6, 12, 13, 20], "": [2, 20], "access": 2, "migrat": 2, "guid": 2, "ros2_control": [2, 4, 12, 24], "robothardwar": 2, "compon": [2, 3, 4, 8], "get": 3, "start": 3, "compil": 3, "architectur": 3, "manag": [3, 6], "resourc": [3, 5], "user": 3, "descript": 3, "urdf": 3, "run": 3, "framework": 3, "your": 3, "robot": [3, 5], "project": 4, "idea": 4, "gsoc": 4, "2022": [4, 5], "asynchron": 4, "tutori": 4, "demo": [4, 10], "mission": 4, "add": 4, "support": 4, "semant": 4, "featur": [4, 7, 11, 20, 22], "pariti": 4, "from": 4, "present": 5, "2023": 5, "02": 5, "ro": 5, "meetup": 5, "munich": 5, "5": 5, "12": 5, "industri": 5, "confer": 5, "10": 5, "roscon": 5, "06": 5, "fr": 5, "2021": 5, "world": 5, "07": 5, "weekli": 5, "13": 5, "rosdevdai": 5, "05": 5, "diagram": 5, "imag": 5, "helper": 6, "script": 6, "spawner": 6, "py": 6, "unspawn": 6, "api": 7, "core": 7, "function": 7, "concept": 7, "fake": 8, "gener": 8, "system": 8, "paramet": [8, 15, 17, 18, 20], "per": 8, "joint": [8, 20], "command": [9, 11, 18, 22], "line": 9, "list_control": 9, "list_controller_typ": 9, "list_hardware_interfac": 9, "load_control": 9, "reload_controller_librari": 9, "set_controller_st": 9, "switch_control": 9, "unload_control": 9, "organ": 10, "mode": 10, "switch": 10, "diff_drive_control": 11, "veloc": [11, 22], "type": [11, 14, 16, 18, 20, 21, 23], "other": [11, 20, 22], "nomenclatur": 12, "guidelin": 12, "best": 12, "practic": 12, "avail": 12, "broadcast": [12, 15, 17], "new": 13, "us": [13, 20], "extern": 13, "refer": 13, "effort_control": 14, "forc": 15, "torqu": 15, "sensor": [15, 17], "forward_command_control": 16, "imu": 17, "joint_state_broadcast": 18, "joint_state_control": 19, "joint_trajectory_control": 20, "trajectori": 20, "represent": 20, "detail": 20, "about": 20, "ros2": 20, "special": 20, "version": 20, "jointtrajectorycontrol": 20, "tbd": 20, "position_control": 21, "tricycle_control": 22, "velocity_control": 23, "welcom": 24, "foxi": 24, "overview": 24, "develop": 24, "organis": 24, "commun": 24}, "envversion": {"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, "sphinx": 60}, "alltitles": {"Acknowledgements": [[0, "acknowledgements"]], "Pull Requests": [[1, "pull-requests"]], "Rules for the repositories and process of merging pull requests": [[1, "rules-for-the-repositories-and-process-of-merging-pull-requests"]], "Writing documentation": [[1, "writing-documentation"]], "Repository structure and CI configuration": [[1, "repository-structure-and-ci-configuration"]], "CI configuration": [[1, "ci-configuration"]], "Differences to ros_control (ROS1)": [[2, "differences-to-ros-control-ros1"]], "Hardware Structures - classes": [[2, "hardware-structures-classes"]], "Hardware Interfaces": [[2, "hardware-interfaces"]], "Controller\u2019s Access to Hardware": [[2, "controller-s-access-to-hardware"]], "Migration Guide to ros2_control": [[2, "migration-guide-to-ros2-control"]], "RobotHardware to Components": [[2, "robothardware-to-components"]], "Controller Migration": [[2, "controller-migration"]], "Getting Started": [[3, "getting-started"]], "Compiling": [[3, "compiling"]], "Architecture": [[3, "architecture"]], "Controller Manager": [[3, "controller-manager"], [6, "controller-manager"]], "Resource Manager": [[3, "resource-manager"]], "Controllers": [[3, "controllers"], [12, "id1"]], "User Interfaces": [[3, "user-interfaces"]], "Hardware Components": [[3, "hardware-components"]], "Hardware Description in URDF": [[3, "hardware-description-in-urdf"]], "Running the Framework for Your Robot": [[3, "running-the-framework-for-your-robot"]], "Project Ideas for GSoC 2022": [[4, "project-ideas-for-gsoc-2022"]], "Asynchronous Control Components": [[4, "asynchronous-control-components"]], "Tutorials and Demos for ros2_control": [[4, "tutorials-and-demos-for-ros2-control"]], "Mission-Control for ros2_control": [[4, "mission-control-for-ros2-control"]], "Add support for hardware semantic components": [[4, "add-support-for-hardware-semantic-components"]], "Feature-parity for controllers from ROS1": [[4, "feature-parity-for-controllers-from-ros1"]], "Resources": [[5, "resources"]], "Presentations": [[5, "presentations"]], "2023-02 ROS Meetup Munich #5": [[5, "ros-meetup-munich-5"]], "2022-12 ROS-Industrial Conference 2022": [[5, "ros-industrial-conference-2022"]], "2022-10 ROSCon 2022": [[5, "roscon-2022"]], "2022-06 ROSCon Fr 2022": [[5, "roscon-fr-2022"]], "2021-10 ROS World 2021": [[5, "ros-world-2021"]], "2021-10-07 Weekly Robotics Meetup #13": [[5, "weekly-robotics-meetup-13"]], "2021-06 ROSDevDay 2021": [[5, "rosdevday-2021"]], "2021-05 ROSCon Fr 2021": [[5, "roscon-fr-2021"]], "Diagrams": [[5, "diagrams"]], "Images": [[5, "images"]], "Helper scripts": [[6, "helper-scripts"]], "spawner.py": [[6, "spawner-py"]], "unspawner.py": [[6, "unspawner-py"]], "API Documentation": [[7, "api-documentation"]], "Core functionalities": [[7, "core-functionalities"]], "Features": [[7, "features"]], "Concepts": [[7, "concepts"]], "Fake Components": [[8, "fake-components"]], "Generic System": [[8, "generic-system"]], "Parameters": [[8, "parameters"], [15, "parameters"], [17, "parameters"], [18, "parameters"]], "Per-joint Parameters": [[8, "per-joint-parameters"]], "Command Line Interface": [[9, "command-line-interface"]], "list_controllers": [[9, "list-controllers"]], "list_controller_types": [[9, "list-controller-types"]], "list_hardware_interfaces": [[9, "list-hardware-interfaces"]], "load_controller": [[9, "load-controller"]], "reload_controller_libraries": [[9, "reload-controller-libraries"]], "set_controller_state": [[9, "set-controller-state"]], "switch_controllers": [[9, "switch-controllers"]], "unload_controller": [[9, "unload-controller"]], "Demos": [[10, "demos"]], "Repository organization": [[10, "repository-organization"]], "Mode switching demo": [[10, "mode-switching-demo"]], "diff_drive_controller": [[11, "diff-drive-controller"]], "Velocity commands": [[11, "velocity-commands"], [22, "velocity-commands"]], "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"]], "Other features": [[11, "other-features"], [20, "other-features"], [22, "other-features"]], "ros2_controllers": [[12, "ros2-controllers"]], "Nomenclature": [[12, "nomenclature"]], "Guidelines and Best Practices": [[12, "guidelines-and-best-practices"]], "Available Controllers": [[12, "available-controllers"]], "Available Broadcasters": [[12, "available-broadcasters"]], "Writing a new controller": [[13, "writing-a-new-controller"]], "Useful External References": [[13, "useful-external-references"]], "effort_controllers": [[14, "effort-controllers"]], "Force Torque Sensor Broadcaster": [[15, "force-torque-sensor-broadcaster"]], "forward_command_controller": [[16, "forward-command-controller"]], "IMU Sensor Broadcaster": [[17, "imu-sensor-broadcaster"]], "joint_state_broadcaster": [[18, "joint-state-broadcaster"]], "Commands": [[18, "commands"]], "joint_state_controller": [[19, "joint-state-controller"]], "joint_trajectory_controller": [[20, "joint-trajectory-controller"]], "Trajectory representation": [[20, "trajectory-representation"]], "Using Joint Trajectory Controller(s)": [[20, "using-joint-trajectory-controller-s"]], "Details about parameters": [[20, "details-about-parameters"]], "ROS2 interface of the controller": [[20, "ros2-interface-of-the-controller"]], "Specialized versions of JointTrajectoryController (TBD in \u2026)": [[20, "specialized-versions-of-jointtrajectorycontroller-tbd-in"]], "position_controllers": [[21, "position-controllers"]], "tricycle_controller": [[22, "tricycle-controller"]], "velocity_controllers": [[23, "velocity-controllers"]], "Welcome to the ros2_control documentation - Foxy!": [[24, "welcome-to-the-ros2-control-documentation-foxy"]], "Overview": [[24, "overview"]], "Development Organisation and Communication": [[24, "development-organisation-and-communication"]]}, "indexentries": {}}) \ No newline at end of file +Search.setIndex({"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"], "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"], "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!"], "terms": {"The": [0, 2, 3, 4, 5, 8, 9, 10, 11, 12, 13, 15, 17, 18, 19, 20, 22, 24], "project": [0, 1, 24], "ha": [0, 1, 3, 4, 5, 13, 19], "receiv": [0, 2], "major": 0, "contribut": [0, 1, 5], "from": [0, 1, 2, 3, 5, 6, 8, 9, 11, 13, 15, 17, 20, 22, 24], "follow": [0, 1, 2, 3, 4, 8, 9, 10, 12, 13, 20, 24], "compani": [0, 5], "institut": 0, "support": [0, 2, 3, 5, 8, 9, 13, 20, 24], "rosin": 0, "ro": [0, 1, 3, 4, 6, 8, 9, 19, 24], "industri": [0, 3, 4], "qualiti": [0, 1], "assur": 0, "robot": [0, 2, 4, 10, 11, 15, 22, 24], "softwar": [0, 3], "compon": [0, 5, 6, 7, 11, 15, 17, 22, 24], "more": [0, 1, 2, 3, 4, 8, 13], "inform": [0, 8, 13, 24], "http": [0, 1, 3, 4], "eu": 0, "thi": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 13, 14, 15, 16, 18, 19, 20, 21, 23, 24], "fund": 0, "european": 0, "union": 0, "": [0, 1, 3, 4, 5, 10, 13, 24], "horizon": 0, "2020": 0, "research": [0, 5], "innov": 0, "programm": 0, "under": [0, 5, 13, 24], "grant": 0, "agreement": 0, "732287": 0, "first": [1, 2, 13], "thank": 1, "you": [1, 2, 3, 5, 8, 13, 24], "consid": [1, 9], "ros2_control": [1, 3, 5, 6, 8, 10, 13], "As": [1, 13], "an": [1, 2, 3, 4, 5, 8, 9, 13, 20], "open": [1, 20], "sourc": [1, 3, 5, 13], "we": [1, 4, 5], "welcom": 1, "each": [1, 3, 4], "contributor": 1, "regardless": 1, "background": 1, "experi": 1, "To": [1, 2, 3, 24], "reduc": [1, 8], "entropi": 1, "univers": [1, 4, 5], "our": [1, 3, 4, 5], "vivid": 1, "collabor": 1, "environ": [1, 3, 5], "have": [1, 2, 3, 4, 8, 10, 13, 20], "set": [1, 2, 4, 5, 8, 9, 14, 16, 18, 20, 21, 23], "up": [1, 5, 10], "some": [1, 4, 5, 20, 24], "standard": [1, 2, 3, 4, 5, 9, 12, 15], "method": [1, 2, 3, 13], "requir": [1, 2, 3, 4, 13], "ar": [1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 13, 15, 17, 18, 20, 22, 24], "limit": [1, 4, 5, 11, 22], "scope": 1, "your": [1, 2, 5, 8, 13, 24], "pr": 1, "should": [1, 2, 4, 5, 6, 9, 10, 13, 18], "do": [1, 2, 3, 4, 5, 6, 13, 20], "one": [1, 2, 3, 4, 5, 13, 15, 24], "thing": 1, "avoid": [1, 13], "ad": [1, 4, 8, 13, 18], "random": 1, "fix": [1, 2], "put": [1, 13], "those": [1, 2, 3, 4, 8, 13, 15, 20], "separ": [1, 2, 3], "give": [1, 3, 5, 24], "descript": [1, 2, 5, 13], "titl": 1, "add": [1, 2, 13], "short": [1, 13, 24], "summari": [1, 5, 24], "make": [1, 2, 4, 5, 24], "sure": [1, 4, 24], "pipelin": 1, "i": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17, 20, 21, 22, 23, 24], "green": 1, "don": 1, "t": [1, 6], "afraid": 1, "review": [1, 4, 24], "maintain": [1, 3, 4], "new": [1, 5, 12, 20, 24], "code": [1, 2, 4, 5, 13], "test": [1, 4, 8, 10, 13], "If": [1, 2, 3, 6, 13, 15, 20, 24], "function": [1, 2, 3, 4, 5], "alwai": 1, "exercis": 1, "serv": [1, 3, 4], "live": [1, 5], "origin": [1, 5], "intent": [1, 8], "section": [1, 2, 13], "target": [1, 12, 13, 20], "also": [1, 2, 3, 4, 5, 13], "read": [1, 2, 3, 13, 18, 20], "understand": [1, 4], "how": [1, 4, 5, 13], "handl": [1, 2, 4, 5, 20], "organ": [1, 5, 24], "guidelin": 1, "especi": [1, 2], "applic": [1, 3, 5, 6], "ros2_control_demo": [1, 3, 24], "pleas": [1, 24], "keep": [1, 13], "mind": [1, 13], "work": [1, 4, 5, 11, 13, 14, 16, 20, 21, 22, 23, 24], "fork": 1, "when": [1, 2, 3, 4, 8, 9, 13, 20], "submit": [1, 5], "That": [1, 13], "wai": [1, 13, 15], "main": [1, 3, 4, 5, 6, 8, 13, 24], "repo": [1, 3], "clean": [1, 4], "featur": [1, 5, 8, 24], "branch": 1, "all": [1, 2, 3, 4, 5, 8, 10, 13, 18, 20], "check": [1, 2, 3, 4, 8, 10, 13, 20, 24], "satisfi": 1, "befor": [1, 2, 6, 13], "thei": [1, 2, 3, 4, 5, 8, 9, 12, 13, 20], "can": [1, 2, 3, 4, 5, 7, 8, 13, 15, 19, 20, 24], "must": 1, "approv": 1, "two": [1, 3, 4, 6, 13, 15], "explicitli": 1, "onli": [1, 2, 3, 4, 5, 6, 9, 13, 15, 20], "except": 1, "other": [1, 2, 3, 5, 13], "activ": [1, 2, 3, 9], "where": [1, 4, 13], "back": 1, "traceabl": 1, "discuss": [1, 5, 24], "suffici": [1, 15], "note": [1, 3, 10, 24], "still": [1, 2, 3], "encourag": 1, "help": [1, 6, 9, 13], "u": [1, 6], "increas": 1, "pace": 1, "veri": [1, 2, 4], "like": [1, 2, 3, 4, 5], "find": 1, "issu": [1, 4, 24], "nobodi": 1, "els": 1, "see": [1, 2, 3, 10, 13, 15, 17, 20], "squash": 1, "commit": 1, "messag": [1, 4, 6, 9, 15, 17, 18, 20, 24], "comment": 1, "fixup": 1, "linter": 1, "us": [1, 2, 3, 4, 5, 8, 9, 12, 14, 15, 16, 17, 18, 19, 21, 23, 24], "pre": 1, "correct": [1, 2, 20], "header": [1, 13], "address": [1, 4], "similar": [1, 3, 5], "mean": [1, 2, 8], "result": [1, 3], "exactli": 1, "1": [1, 3, 4, 5, 8, 13], "cowboi": 1, "style": [1, 13], "over": [1, 4], "weekend": 1, "It": [1, 2, 3, 4, 6, 15], "doesn": 1, "matter": 1, "trivial": [1, 8], "peopl": 1, "chanc": 1, "proper": [1, 20], "Be": 1, "awar": 1, "impact": 1, "time": [1, 2, 4, 5, 6, 8, 9, 11, 13, 15, 20, 24], "proport": 1, "its": [1, 2, 3, 4, 5, 15, 17], "ping": 1, "them": [1, 3, 4, 6, 13, 18], "necessari": 1, "repeatedli": 1, "start": [1, 2, 5, 6, 9, 10, 13, 20, 24], "part": [1, 4, 5, 13], "For": [1, 3, 4, 5, 8, 13, 20], "detail": [1, 2, 3, 8, 13], "thoma": 1, "cokela": 1, "info": 1, "tutori": 1, "sphinx": 1, "rest_syntax": 1, "html": 1, "id8": 1, "type": [1, 2, 3, 5, 6, 9, 12, 13, 15, 17], "develop": [1, 5, 8, 10, 13], "stabl": [1, 4], "against": 1, "accept": [1, 13, 14, 16, 21, 23], "api": [1, 4], "abi": 1, "chang": [1, 2, 3, 5, 9, 13, 20], "e": [1, 2, 3, 4, 5, 8, 13, 14, 15, 16, 18, 20, 21, 23, 24], "name": [1, 2, 3, 5, 6, 8, 9, 13, 15, 17, 18, 20], "convent": 1, "master": [1, 3, 4], "semi": 1, "binari": 1, "good": [1, 4], "same": [1, 3, 4, 15], "build": [1, 13], "dai": 1, "2": [1, 3, 5, 8], "ros_distro": 1, "g": [1, 2, 3, 4, 5, 8, 13, 14, 16, 18, 21, 23, 24], "foxi": [1, 3, 5], "galact": 1, "releas": [1, 3, 5], "version": [1, 4], "non": [1, 5, 15], "brake": 1, "distribut": [1, 24], "three": [1, 2, 3, 13], "stage": 1, "current": [1, 4, 9, 20], "futur": [1, 5], "compat": [1, 2, 5], "framework": [1, 2, 4, 5, 6, 8, 9, 10, 12, 13, 24], "packag": [1, 2, 3, 10, 13, 15, 17, 19, 20, 24], "show": [1, 3, 5, 6, 9], "direct": [1, 2, 4, 13], "local": [1, 18], "possibl": [1, 3, 4, 13, 20], "core": 1, "immedi": 1, "depend": [1, 3, 13, 20], "fail": 1, "expect": [1, 4, 20], "after": [1, 11, 13, 22], "next": [1, 20], "sync": 1, "abl": 1, "potenti": [1, 13], "mid": 1, "robothw": 2, "rigid": 2, "ani": [2, 3, 5, 13], "imposs": 2, "extend": [2, 3, 4, 13], "exist": [2, 3, 4, 6, 13], "addit": [2, 4], "sensor": [2, 3, 4, 8, 12], "actuat": [2, 3, 4, 8], "tool": [2, 4, 5], "without": [2, 3, 8, 13], "combinedrobothardwar": 2, "drawback": [2, 24], "solut": [2, 5], "optim": 2, "combin": [2, 8, 20], "extern": [2, 3, 4, 8], "defin": [2, 3, 4, 8, 12, 13, 15, 17, 18, 20], "system": [2, 3, 4, 5, 10, 20, 24], "composit": [2, 5], "basic": [2, 3, 4, 5, 13], "physic": [2, 3, 8], "cell": [2, 15], "surround": 2, "describ": [2, 3], "multi": [2, 3, 4, 5, 10], "gripper": [2, 3, 8], "out": [2, 11], "box": 2, "allow": [2, 20], "joint": [2, 3, 5, 11, 12, 13, 14, 16, 18, 21, 23, 24], "posit": [2, 3, 5, 6, 9, 10, 12, 14, 16, 20, 21, 23], "veloc": [2, 3, 5, 10, 12, 20, 21, 23], "effort": [2, 12, 14, 16, 20], "hard": [2, 4], "data": [2, 3, 4, 8, 19], "approach": 2, "doe": [2, 13, 20], "enforc": [2, 20], "string": [2, 8, 13, 18, 20], "ensur": [2, 5], "constant": 2, "hardware_interfac": [2, 3, 8, 12, 13], "In": [2, 3, 4, 5, 13], "had": 2, "request": [2, 24], "itself": 2, "took": 2, "care": [2, 4, 13], "regist": 2, "resourc": 2, "conflict": [2, 3, 4], "resourcemanag": 2, "take": [2, 4, 13, 18], "state": [2, 3, 4, 5, 8, 9, 10, 12, 13, 15, 18, 20], "avail": [2, 3, 5, 9, 10, 13, 18, 20], "enabl": [2, 3, 4, 5, 10, 15], "anymor": 2, "controllermanag": 2, "implement": [2, 3, 4, 5, 8, 10, 11, 12, 13, 20, 22, 24], "systeminterfac": [2, 8], "granular": 2, "sensorinterfac": 2, "actuatorinterfac": 2, "abov": [2, 20], "choos": 2, "suitabl": [2, 5], "strategi": [2, 20], "decid": 2, "which": [2, 3, 4, 5, 9, 11, 13, 15, 17, 20, 22], "case": [2, 4, 5, 13, 20, 24], "mayb": 2, "sens": [2, 3, 15], "multipl": [2, 3, 20], "constructor": [2, 13], "initi": [2, 13], "variabl": [2, 4, 13], "need": [2, 3, 4, 5, 13], "commun": [2, 3, 4, 5], "default": [2, 3, 8, 18, 20], "configur": [2, 3, 4, 5, 6, 9, 10, 13, 20], "paramet": [2, 5, 13], "pars": [2, 7], "urdf": 2, "snippet": 2, "hardwareinfo": 2, "here": [2, 7, 13, 19, 20], "cross": 2, "valu": [2, 3, 4, 8, 13, 20], "export_": 2, "_interfac": 2, "joint_a2": 2, "extract": [2, 11, 22], "sensibl": 2, "stop": [2, 5, 6, 9, 10, 11, 22], "usual": [2, 8, 13], "includ": [2, 4, 9, 13], "command": [2, 3, 4, 5, 7, 8, 10, 12, 13, 14, 16, 20, 21, 23, 24], "safe": [2, 11, 13, 20, 22], "interrupt": [2, 6], "stream": [2, 5], "write": [2, 3, 4, 5, 12], "exchang": [2, 4], "equival": 2, "forget": 2, "pluginlib_export_class": [2, 13], "macro": [2, 3, 13], "end": [2, 3, 13, 20], "cpp": [2, 13], "file": [2, 3, 4, 5, 6, 8, 13, 20], "creat": [2, 3, 5, 8, 13], "xml": [2, 13], "librari": [2, 3, 4, 9, 13], "pluginlib": [2, 3, 13], "exampl": [2, 3, 4, 5, 8, 9, 10, 15, 20, 24], "rrbotsystempositiononlyhardwar": [2, 3], "excel": 2, "jointtrajectorycontrol": [2, 9], "real": [2, 4, 5, 8, 13, 18, 20, 24], "critic": [2, 4], "mark": 2, "controllerinterfac": [2, 3, 9, 13], "member": [2, 13], "init": [2, 13], "call": [2, 3, 13], "lifecycl": [2, 3, 5, 6], "declar": [2, 13], "state_interface_configur": [2, 13], "command_interface_configur": [2, 13], "design": [2, 3, 4, 5, 24], "updat": [2, 3, 4, 13], "manag": [2, 4, 5, 7, 9, 13, 24], "option": [2, 6, 8, 9, 13, 15, 18, 20], "on_configur": [2, 13], "on_activ": [2, 13], "on_deactiv": [2, 13], "deactiv": [2, 3], "final": [2, 5], "joint_trajectory_plugin": 2, "ros2": [3, 4, 5, 6, 9, 10, 13, 24], "instal": [3, 13], "automat": [3, 11, 22], "want": 3, "workspac": [3, 13], "folder": [3, 5, 13], "wget": 3, "raw": 3, "githubusercont": 3, "com": [3, 4], "vc": 3, "import": [3, 13, 20], "src": [3, 13], "found": [3, 7, 13, 19, 20, 24], "github": [3, 4, 7, 12, 24], "repositori": [3, 4, 7, 12, 24], "figur": 3, "cm": 3, "connect": 3, "abstract": [3, 5], "side": [3, 4, 5], "entri": [3, 13], "point": [3, 12, 13, 24], "through": [3, 4, 9, 11, 12, 13, 20, 24], "servic": [3, 4, 6], "node": [3, 6, 8, 9, 10, 13], "executor": 3, "so": [3, 13], "integr": [3, 4, 5, 8, 10, 20, 24], "custom": [3, 8, 15], "setup": [3, 4, 13], "recommend": [3, 5], "ros2_control_nod": 3, "controller_manag": [3, 4, 6, 9, 13, 20], "manual": [3, 4, 13, 24], "assum": 3, "On": 3, "load": [3, 6, 9, 10, 13], "unload": [3, 6, 9], "access": [3, 4, 5, 6, 8, 13], "match": 3, "provid": [3, 4, 5, 6, 8, 10, 12, 13, 20, 24], "report": [3, 4, 18, 24], "error": [3, 4, 13, 20], "execut": [3, 13, 20], "loop": [3, 5, 13, 20], "output": [3, 4, 5, 9, 15, 17, 20], "rm": 3, "driver": [3, 5], "re": 3, "usabl": 3, "flexibl": 3, "motor": [3, 4], "encod": 3, "deal": 3, "theori": [3, 24], "compar": [3, 4, 5], "refer": 3, "measur": [3, 8, 15], "base": [3, 5, 9, 11, 13, 22], "calcul": 3, "input": [3, 4, 5, 11, 20, 22], "visit": 3, "wikipedia": [3, 24], "object": 3, "deriv": 3, "controller_interfac": [3, 4, 9, 13, 15, 17], "export": [3, 13], "plugin": [3, 13], "forwardcommandcontrol": 3, "lifecyclenod": 3, "class": [3, 5, 9, 13], "machin": [3, 4], "document": [3, 4, 5, 8, 19], "latest": 3, "interact": [3, 5, 6, 9], "list": [3, 5, 9, 10, 12, 13, 20, 24], "definit": [3, 12, 13, 15], "srv": 3, "controller_manager_msg": 3, "while": [3, 4, 5, 10, 20], "directli": [3, 24], "line": [3, 7, 13], "via": 3, "friendli": 3, "cli": [3, 7, 9], "auto": 3, "complet": [3, 12], "rang": 3, "common": [3, 4, 12, 24], "capabl": [3, 4], "readm": 3, "md": 3, "ros2controlcli": 3, "realiz": [3, 5], "repres": 3, "dynam": [3, 13], "There": [3, 6, 13], "complex": [3, 4, 5], "dof": 3, "differ": [3, 4, 5, 14, 15, 16, 21, 23], "between": [3, 4, 19, 20], "transmiss": 3, "humanoid": 3, "hand": 3, "logic": 3, "channel": 3, "kuka": 3, "rsi": 3, "A": [3, 5, 13, 20], "relat": [3, 4, 5], "link": [3, 5], "forc": [3, 5, 9, 12], "torqu": [3, 12], "simpl": [3, 4, 5, 10, 13, 19], "valv": 3, "mandatori": [3, 15, 17, 20], "dc": 3, "arduino": 3, "board": 3, "modular": [3, 5], "independ": 3, "explan": 3, "given": [3, 20], "tag": [3, 13, 24], "chosen": 3, "structur": [3, 4, 13, 20], "track": [3, 24], "togeth": 3, "xacro": 3, "hereund": 3, "rrbot": [3, 10], "parallel": [3, 8], "effector": 3, "rrbotsystempositiononli": 3, "ros2_control_demo_hardwar": [3, 10], "param": [3, 6, 8], "example_param_write_for_sec": 3, "example_param_read_for_sec": 3, "joint1": [3, 8, 9, 10, 20], "command_interfac": [3, 20], "min": 3, "max": 3, "state_interfac": [3, 20], "joint2": [3, 9, 10, 20], "rrbotforcetorquesensor1d": 3, "forcetorquesensor1dhardwar": 3, "0": [3, 8, 18, 20], "43": 3, "tcp_fts_sensor": 3, "frame_id": [3, 15, 17], "rrbot_tcp": 3, "min_forc": 3, "100": 3, "max_forc": 3, "rrbotgripp": 3, "positionactuatorhardwar": 3, "23": 3, "3": [3, 4], "gripper_joint": 3, "50": [3, 20], "yaml": [3, 4, 20], "instead": [3, 8, 19, 20], "pure": [3, 20], "launch": [3, 6, 8, 10], "stack": [3, 5], "could": [3, 5, 13, 20], "altern": [3, 20], "script": [3, 4, 13], "skeleton": 3, "orbit": 4, "around": [4, 15, 17], "everyth": [4, 13], "goal": [4, 5, 20, 24], "long": 4, "run": [4, 5, 6, 9], "task": [4, 5, 11], "interfac": [4, 5, 6, 7, 8, 10, 12, 13, 15, 17, 24], "user": 4, "thread": 4, "protect": [4, 13], "memori": [4, 13], "buffer": [4, 24], "control_toolbox": [4, 24], "second": [4, 9, 13, 24], "frequenc": 4, "high": 4, "rate": [4, 20], "khz": 4, "variou": 4, "anoth": 4, "heartbeat": 4, "signal": 4, "sent": 4, "onc": [4, 5], "per": [4, 15], "500": 4, "hz": 4, "failur": 4, "relev": [4, 24], "draft": 4, "trigger": 4, "skill": 4, "prefer": 4, "c": [4, 6, 9, 13], "trick": 4, "mentor": 4, "benc": [4, 5], "magyar": [4, 5], "deni": [4, 5], "\u0161togl": [4, 5], "size": 4, "350": 4, "hour": 4, "difficulti": 4, "about": [4, 8, 24], "org": 4, "gener": [4, 5, 13, 20, 24], "envis": 4, "simul": [4, 8, 10], "gazebo": 4, "ignit": 4, "showcas": [4, 5], "grace": 4, "degrad": 4, "architectur": [4, 5], "roadmap": [4, 24], "place": [4, 13, 20], "gpio": 4, "mode": [4, 20], "switch": [4, 9], "movement": 4, "safeti": 4, "familiar": [4, 24], "medium": 4, "focus": [4, 5], "although": 4, "easi": 4, "therefor": [4, 13, 18, 20], "often": [4, 8, 13], "orchestr": 4, "purpos": 4, "conductor": 4, "scenario": 4, "appropri": 4, "moment": 4, "right": 4, "replac": 4, "level": [4, 5, 14, 16, 20, 21, 23], "moveit2": [4, 5], "simplecontrollermanag": 4, "form": 4, "behavior": [4, 8], "benchmark": 4, "statu": [4, 9, 20], "publish": [4, 11, 15, 17, 18, 20, 22, 24], "topic": [4, 5, 20], "format": 4, "preset": 4, "modul": 4, "specif": [4, 20], "reli": 4, "doubl": [4, 8, 20], "desir": [4, 20], "howev": [4, 6], "both": [4, 5], "improv": 4, "readabl": 4, "earlier": 4, "concept": [4, 5, 8, 10], "were": 4, "introduc": [4, 5], "essenti": 4, "group": [4, 20, 24], "instanc": 4, "imu": [4, 12], "typic": [4, 20], "9": 4, "axi": [4, 15], "aceleromet": 4, "gyroscop": 4, "compass": 4, "respect": [4, 5], "Such": 4, "struct": 4, "low": [4, 5], "profil": 4, "intern": [4, 20], "addition": [4, 24], "few": [4, 5], "pull": 4, "45": 4, "tree": 4, "semantic_compon": 4, "175": 4, "rewrit": [4, 24], "ros_control": [4, 5, 24], "rich": 4, "wa": [4, 13], "motiv": 4, "adopt": 4, "port": 4, "most": [4, 13], "quit": 4, "miss": 4, "diff_drive_control": [4, 9], "joint_trajectory_control": [4, 9], "consist": [4, 20, 24], "identifi": 4, "much": [4, 13], "303": 4, "304": 4, "stretch": 4, "realtime_tool": [4, 24], "81": 4, "302": 4, "unit": 4, "gmock": 4, "cc": 5, "BY": 5, "licens": 5, "author": 5, "either": 5, "down": 5, "below": 5, "my": 5, "company_nam": 5, "tricycl": [5, 12, 22], "control": [5, 7, 8, 9, 10, 11, 14, 15, 16, 17, 18, 19, 21, 22, 23, 24], "event": 5, "pixel": 5, "prefac": 5, "introduct": [5, 20], "johann": 5, "plapp": 5, "toni": 5, "najjar": 5, "kernel": 5, "hardwar": [5, 6, 8, 10, 12, 13, 22, 24], "agnost": 5, "share": [5, 13], "well": [5, 9, 20], "perform": 5, "heavi": 5, "dr": 5, "stogl": 5, "consult": 5, "practition": 5, "guid": [5, 13], "top": 5, "virtual": 5, "talk": 5, "delv": 5, "deeper": 5, "what": 5, "explicit": [5, 20], "chain": 5, "emerg": 5, "handler": 5, "mock": 5, "usag": [5, 6, 9], "openli": 5, "record": 5, "fiveai": 5, "ltd": 5, "best": [5, 13], "focu": 5, "becom": 5, "util": 5, "3rd": 5, "parti": 5, "nav2": 5, "practic": 5, "tip": 5, "hot": 5, "shown": 5, "furthermor": 5, "get": [5, 24], "reus": 5, "inject": 5, "offer": [5, 6], "expos": 5, "problem": [5, 24], "manipul": [5, 20], "path": 5, "plan": [5, 24], "autonom": 5, "navig": 5, "ideal": [5, 8], "made": 5, "mobil": [5, 11, 22], "arm": 5, "extra": [5, 18], "readi": [5, 13], "power": 5, "studi": 5, "ur": 5, "With": 5, "moveit": [5, 8], "ingredi": 5, "scale": 5, "factor": 5, "teach": 5, "pendant": 5, "influenc": 5, "picknik": 5, "inc": 5, "nathan": 5, "brook": 5, "lovro": 5, "ivanov": 5, "andi": 5, "zelenak": 5, "rune": 5, "s\u00f8e": 5, "knudsen": 5, "onlin": [5, 13], "trajectori": [5, 12, 24], "admitt": 5, "One": 5, "reason": 5, "upgrad": 5, "ros1": 5, "better": 5, "realtim": [5, 11, 20, 22, 24], "contact": 5, "insert": 5, "singl": 5, "waypoint": [5, 12, 20], "mani": [5, 13], "teleoper": 5, "involv": 5, "kinemat": 5, "acceler": [5, 10, 11, 12, 20, 22], "jerk": [5, 11, 22], "obei": 5, "demo": 5, "booth": 5, "zeleank": 5, "unifi": 5, "life": 5, "cycl": 5, "go": [5, 13], "_control": 5, "wild": 5, "materi": 5, "quick": 5, "overview": 5, "layer": 5, "aka": 5, "systemcompon": 5, "forward": [5, 8, 12, 20, 24], "done": [5, 13], "look": 5, "modifi": 5, "simpli": [5, 20], "net": 5, "edit": 5, "collect": [5, 14, 16, 21, 23], "semant": [5, 15, 17], "world": [6, 8], "startup": 6, "h": [6, 9, 13, 19], "p": 6, "param_fil": 6, "controller_typ": 6, "timeout": [6, 9, 22], "controller_manager_timeout": 6, "controller_nam": [6, 9, 13], "argument": [6, 9], "exit": [6, 9], "leav": 6, "unconfigur": 6, "namespac": [6, 12, 13, 18, 20], "kill": [6, 9], "wait": [6, 9], "until": 6, "doxygen": 7, "fake": 7, "mirror": 8, "correspond": [8, 13, 24], "offlin": 8, "advantag": 8, "pipe": 8, "insid": 8, "broadcast": [8, 18, 19], "even": 8, "debug": 8, "boost": 8, "mimic": 8, "offset": [8, 20], "fake_sensor_command": 8, "boolean": [8, 18, 20], "fals": [8, 18, 20], "position_state_following_offset": 8, "custom_interface_with_following_offset": 8, "map": [8, 20], "multipli": 8, "mimick": 8, "deprec": [9, 12], "configure_control": 9, "configure_start_control": 9, "load_configure_control": 9, "load_start_control": 9, "spin": 9, "spin_tim": 9, "hidden": 9, "discoveri": 9, "appli": 9, "alreadi": [9, 13, 20], "daemon": 9, "test_controller_nam": 9, "test_control": 9, "diffdrivecontrol": 9, "joint_state_control": [9, 10], "jointstatecontrol": 9, "unclaim": [9, 10], "set_stat": 9, "reload": 9, "adjust": 9, "strict": 9, "asap": 9, "switch_timeout": 9, "templat": [10, 13, 20], "demonstr": 10, "prove": 10, "comprehens": 10, "ros2_control_demo_bringup": 10, "gui": 10, "ros2_control_test_nod": 10, "rrbot_system_multi_interfac": 10, "py": 10, "list_hardware_interfac": 10, "load_control": 10, "forward_command_controller_posit": 10, "forward_command_controller_veloc": 10, "forward_command_controller_acceler": 10, "forward_command_controller_illegal1": 10, "forward_command_controller_illegal2": 10, "set_controller_st": 10, "claim": 10, "now": [10, 13], "let": 10, "switch_control": 10, "again": 10, "inde": 10, "been": [10, 19], "differenti": [11, 12, 19, 24], "drive": [11, 12, 22, 24], "bodi": 11, "translat": [11, 22], "wheel": 11, "odometri": [11, 22], "comput": [11, 22], "feedback": [11, 20, 22], "twist": [11, 22], "x": [11, 15, 17, 22], "linear": [11, 20, 22], "z": [11, 15, 22], "angular": [11, 22], "ignor": [11, 20, 22], "space": [11, 20], "sort": [12, 13], "accord": [12, 20], "position_control": [12, 20], "hw_if_posit": 12, "velocity_control": 12, "hw_if_veloc": 12, "effort_control": 12, "hw_if_effort": 12, "interpol": [12, 20], "step": [13, 20, 24], "compil": 13, "rule": 13, "prepar": 13, "ament_cmak": 13, "easiest": 13, "search": 13, "recent": 13, "process": 13, "pkg": 13, "flag": [13, 20], "least": [13, 20], "cmakelist": 13, "txt": 13, "package_nam": 13, "hpp": 13, "visibility_control": 13, "window": 13, "copi": 13, "prefix": [13, 15, 17], "guard": 13, "ifndef": 13, "preprocessor": 13, "engin": 13, "friend": 13, "uniqu": 13, "written": 13, "snake_cas": 13, "controllernam": 13, "public": 13, "overrid": 13, "exact": 13, "vector": 13, "store": 13, "simplifi": [13, 24], "further": 13, "parent": 13, "reserv": 13, "importantli": 13, "fine": 13, "return": 13, "return_typ": 13, "ok": 13, "otherwis": 13, "individu": 13, "none": 13, "ask": 13, "full": 13, "joint_nam": [13, 20], "interface_typ": 13, "assign": 13, "opposit": 13, "empti": 13, "constraint": [13, 20], "At": 13, "close": 13, "class_list_macro": 13, "controller_name_namespac": 13, "visibl": 13, "controller_name_packag": 13, "bottom": 13, "test_load_": 13, "content": 13, "last": [13, 20], "specifi": [13, 20], "find_packag": 13, "rclcpp": 13, "rclcpp_lifecycl": 13, "directori": 13, "ament": 13, "cmake": 13, "pluginlib_export_plugin_description_fil": 13, "ament_cmake_gmock": 13, "ros2_control_test_asset": 13, "ament_add_gmock": 13, "ament_export_librari": 13, "ament_packag": 13, "test_depend": 13, "colcon": 13, "rememb": 13, "root": 13, "success": 13, "bash": 13, "enjoi": 13, "great": 13, "shell": 13, "mai": [14, 16, 21, 23], "certain": [14, 16, 21, 23], "achiev": [14, 16, 21, 23], "These": [14, 16, 21, 23], "geometry_msg": 15, "msg": [15, 17, 20], "wrenchstamp": 15, "wrapper": [15, 17], "forcetorquesensor": 15, "sensor_nam": [15, 17], "interface_nam": 15, "frame": [15, 17], "6d": 15, "ft": 15, "y": 15, "less": 15, "six": 15, "ax": 15, "example_nam": 15, "example_interfac": 15, "sensor_msg": 17, "imusensor": 17, "orient": 17, "angular_veloc": 17, "linear_acceler": 17, "joint_stat": 18, "dynamic_joint_st": 18, "use_local_top": 18, "my_state_broadcast": 18, "extra_joint": 18, "arrai": 18, "renam": 19, "joint_state_broadcast": 19, "order": 19, "true": [19, 20], "remov": 19, "turtl": 19, "reach": 20, "instant": 20, "attempt": 20, "mechan": 20, "By": 20, "spline": 20, "guarante": 20, "continu": 20, "discourag": 20, "becaus": 20, "yield": 20, "discontinu": 20, "cubic": 20, "quintic": 20, "pid": [20, 24], "similarli": 20, "eg": 20, "proxi": 20, "wrap": 20, "robust": 20, "clock": 20, "caus": 20, "queu": 20, "segment": 20, "ros__paramet": 20, "joint3": 20, "joint4": 20, "joint5": 20, "joint6": 20, "state_publish_r": 20, "action_monitor_r": 20, "20": 20, "allow_partial_joints_go": 20, "open_loop_control": 20, "stopped_velocity_toler": 20, "01": 20, "goal_tim": 20, "05": [20, 24], "03": 20, "monitor": 20, "action": 20, "control_msg": [20, 24], "followjointtrajectori": 20, "hydraul": 20, "tri": 20, "numer": 20, "nan": 20, "std": 20, "numeric_limit": 20, "quiet_nan": 20, "toler": 20, "jointtrajectori": 20, "deviat": 20, "maxim": 20, "predefin": 20, "joint_trajectori": 20, "trajectory_msg": 20, "jointtrajectorycontrollerst": 20, "follow_joint_trajectori": 20, "server": 20, "position_velocity_control": 20, "position_velocity_acceleration_control": 20, "Not": 20, "yet": 20, "feedforward": 20, "term": [20, 24], "plu": 20, "171": 20, "base_link": 22, "traction": 22, "steer": 22, "Its": 24, "oper": 24, "overcom": 24, "idea": 24, "wide": 24, "toolkit": 24, "unreleas": 24, "smooth": 24, "doc": 24, "wg": 24, "meet": 24, "everi": 24, "wednesdai": 24, "join": 24, "announc": 24, "discours": 24, "googl": 24, "propos": 24, "previou": 24, "bug": 24, "tracker": 24, "minim": 24, "reproduc": 24, "regard": 24, "etc": 24, "question": 24, "answer": 24, "2024": 24, "04": 24, "08": 24, "31": 24, "built": 24, "gmt": 24}, "objects": {}, "objtypes": {}, "objnames": {}, "titleterms": {"acknowledg": 0, "pull": 1, "request": 1, "rule": 1, "repositori": [1, 10], "process": 1, "merg": 1, "write": [1, 13], "document": [1, 7, 24], "structur": [1, 2], "ci": 1, "configur": 1, "differ": 2, "ros_control": 2, "ros1": [2, 4], "hardwar": [2, 3, 4, 11, 14, 16, 18, 20, 21, 23], "class": 2, "interfac": [2, 3, 9, 11, 14, 16, 18, 20, 21, 23], "control": [2, 3, 4, 6, 12, 13, 20], "": [2, 20], "access": 2, "migrat": 2, "guid": 2, "ros2_control": [2, 4, 12, 24], "robothardwar": 2, "compon": [2, 3, 4, 8], "get": 3, "start": 3, "compil": 3, "architectur": 3, "manag": [3, 6], "resourc": [3, 5], "user": 3, "descript": 3, "urdf": 3, "run": 3, "framework": 3, "your": 3, "robot": [3, 5], "project": 4, "idea": 4, "gsoc": 4, "2022": [4, 5], "asynchron": 4, "tutori": 4, "demo": [4, 10], "mission": 4, "add": 4, "support": 4, "semant": 4, "featur": [4, 7, 11, 20, 22], "pariti": 4, "from": 4, "present": 5, "2023": 5, "02": 5, "ro": 5, "meetup": 5, "munich": 5, "5": 5, "12": 5, "industri": 5, "confer": 5, "10": 5, "roscon": 5, "06": 5, "fr": 5, "2021": 5, "world": 5, "07": 5, "weekli": 5, "13": 5, "rosdevdai": 5, "05": 5, "diagram": 5, "imag": 5, "helper": 6, "script": 6, "spawner": 6, "py": 6, "unspawn": 6, "api": 7, "core": 7, "function": 7, "concept": 7, "fake": 8, "gener": 8, "system": 8, "paramet": [8, 15, 17, 18, 20], "per": 8, "joint": [8, 20], "command": [9, 11, 18, 22], "line": 9, "list_control": 9, "list_controller_typ": 9, "list_hardware_interfac": 9, "load_control": 9, "reload_controller_librari": 9, "set_controller_st": 9, "switch_control": 9, "unload_control": 9, "organ": 10, "mode": 10, "switch": 10, "diff_drive_control": 11, "veloc": [11, 22], "type": [11, 14, 16, 18, 20, 21, 23], "other": [11, 20, 22], "nomenclatur": 12, "guidelin": 12, "best": 12, "practic": 12, "avail": 12, "broadcast": [12, 15, 17], "new": 13, "us": [13, 20], "extern": 13, "refer": 13, "effort_control": 14, "forc": 15, "torqu": 15, "sensor": [15, 17], "forward_command_control": 16, "imu": 17, "joint_state_broadcast": 18, "joint_state_control": 19, "joint_trajectory_control": 20, "trajectori": 20, "represent": 20, "detail": 20, "about": 20, "ros2": 20, "special": 20, "version": 20, "jointtrajectorycontrol": 20, "tbd": 20, "position_control": 21, "tricycle_control": 22, "velocity_control": 23, "welcom": 24, "foxi": 24, "overview": 24, "develop": 24, "organis": 24, "commun": 24}, "envversion": {"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, "sphinx": 60}, "alltitles": {"Acknowledgements": [[0, "acknowledgements"]], "Pull Requests": [[1, "pull-requests"]], "Rules for the repositories and process of merging pull requests": [[1, "rules-for-the-repositories-and-process-of-merging-pull-requests"]], "Writing documentation": [[1, "writing-documentation"]], "Repository structure and CI configuration": [[1, "repository-structure-and-ci-configuration"]], "CI configuration": [[1, "ci-configuration"]], "Differences to ros_control (ROS1)": [[2, "differences-to-ros-control-ros1"]], "Hardware Structures - classes": [[2, "hardware-structures-classes"]], "Hardware Interfaces": [[2, "hardware-interfaces"]], "Controller\u2019s Access to Hardware": [[2, "controller-s-access-to-hardware"]], "Migration Guide to ros2_control": [[2, "migration-guide-to-ros2-control"]], "RobotHardware to Components": [[2, "robothardware-to-components"]], "Controller Migration": [[2, "controller-migration"]], "Getting Started": [[3, "getting-started"]], "Compiling": [[3, "compiling"]], "Architecture": [[3, "architecture"]], "Controller Manager": [[3, "controller-manager"], [6, "controller-manager"]], "Resource Manager": [[3, "resource-manager"]], "Controllers": [[3, "controllers"], [12, "id1"]], "User Interfaces": [[3, "user-interfaces"]], "Hardware Components": [[3, "hardware-components"]], "Hardware Description in URDF": [[3, "hardware-description-in-urdf"]], "Running the Framework for Your Robot": [[3, "running-the-framework-for-your-robot"]], "Project Ideas for GSoC 2022": [[4, "project-ideas-for-gsoc-2022"]], "Asynchronous Control Components": [[4, "asynchronous-control-components"]], "Tutorials and Demos for ros2_control": [[4, "tutorials-and-demos-for-ros2-control"]], "Mission-Control for ros2_control": [[4, "mission-control-for-ros2-control"]], "Add support for hardware semantic components": [[4, "add-support-for-hardware-semantic-components"]], "Feature-parity for controllers from ROS1": [[4, "feature-parity-for-controllers-from-ros1"]], "Resources": [[5, "resources"]], "Presentations": [[5, "presentations"]], "2023-02 ROS Meetup Munich #5": [[5, "ros-meetup-munich-5"]], "2022-12 ROS-Industrial Conference 2022": [[5, "ros-industrial-conference-2022"]], "2022-10 ROSCon 2022": [[5, "roscon-2022"]], "2022-06 ROSCon Fr 2022": [[5, "roscon-fr-2022"]], "2021-10 ROS World 2021": [[5, "ros-world-2021"]], "2021-10-07 Weekly Robotics Meetup #13": [[5, "weekly-robotics-meetup-13"]], "2021-06 ROSDevDay 2021": [[5, "rosdevday-2021"]], "2021-05 ROSCon Fr 2021": [[5, "roscon-fr-2021"]], "Diagrams": [[5, "diagrams"]], "Images": [[5, "images"]], "Helper scripts": [[6, "helper-scripts"]], "spawner.py": [[6, "spawner-py"]], "unspawner.py": [[6, "unspawner-py"]], "API Documentation": [[7, "api-documentation"]], "Core functionalities": [[7, "core-functionalities"]], "Features": [[7, "features"]], "Concepts": [[7, "concepts"]], "Fake Components": [[8, "fake-components"]], "Generic System": [[8, "generic-system"]], "Parameters": [[8, "parameters"], [15, "parameters"], [17, "parameters"], [18, "parameters"]], "Per-joint Parameters": [[8, "per-joint-parameters"]], "Command Line Interface": [[9, "command-line-interface"]], "list_controllers": [[9, "list-controllers"]], "list_controller_types": [[9, "list-controller-types"]], "list_hardware_interfaces": [[9, "list-hardware-interfaces"]], "load_controller": [[9, "load-controller"]], "reload_controller_libraries": [[9, "reload-controller-libraries"]], "set_controller_state": [[9, "set-controller-state"]], "switch_controllers": [[9, "switch-controllers"]], "unload_controller": [[9, "unload-controller"]], "Demos": [[10, "demos"]], "Repository organization": [[10, "repository-organization"]], "Mode switching demo": [[10, "mode-switching-demo"]], "diff_drive_controller": [[11, "diff-drive-controller"]], "Velocity commands": [[11, "velocity-commands"], [22, "velocity-commands"]], "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"]], "Other features": [[11, "other-features"], [20, "other-features"], [22, "other-features"]], "ros2_controllers": [[12, "ros2-controllers"]], "Nomenclature": [[12, "nomenclature"]], "Guidelines and Best Practices": [[12, "guidelines-and-best-practices"]], "Available Controllers": [[12, "available-controllers"]], "Available Broadcasters": [[12, "available-broadcasters"]], "Writing a new controller": [[13, "writing-a-new-controller"]], "Useful External References": [[13, "useful-external-references"]], "effort_controllers": [[14, "effort-controllers"]], "Force Torque Sensor Broadcaster": [[15, "force-torque-sensor-broadcaster"]], "forward_command_controller": [[16, "forward-command-controller"]], "IMU Sensor Broadcaster": [[17, "imu-sensor-broadcaster"]], "joint_state_broadcaster": [[18, "joint-state-broadcaster"]], "Commands": [[18, "commands"]], "joint_state_controller": [[19, "joint-state-controller"]], "joint_trajectory_controller": [[20, "joint-trajectory-controller"]], "Trajectory representation": [[20, "trajectory-representation"]], "Using Joint Trajectory Controller(s)": [[20, "using-joint-trajectory-controller-s"]], "Details about parameters": [[20, "details-about-parameters"]], "ROS2 interface of the controller": [[20, "ros2-interface-of-the-controller"]], "Specialized versions of JointTrajectoryController (TBD in \u2026)": [[20, "specialized-versions-of-jointtrajectorycontroller-tbd-in"]], "position_controllers": [[21, "position-controllers"]], "tricycle_controller": [[22, "tricycle-controller"]], "velocity_controllers": [[23, "velocity-controllers"]], "Welcome to the ros2_control documentation - Foxy!": [[24, "welcome-to-the-ros2-control-documentation-foxy"]], "Overview": [[24, "overview"]], "Development Organisation and Communication": [[24, "development-organisation-and-communication"]]}, "indexentries": {}}) \ No newline at end of file diff --git a/galactic/.buildinfo b/galactic/.buildinfo index 1c919f3e16d..7d68066ae92 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: a6fd3698e7a48cf07c2173d7319441cc +config: aa92c6ff32fd5a64113a53abcaf332d5 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/galactic/.doctrees/doc/acknowledgements/acknowledgements.doctree b/galactic/.doctrees/doc/acknowledgements/acknowledgements.doctree index d72f117968b..33aa8fde3a0 100644 Binary files a/galactic/.doctrees/doc/acknowledgements/acknowledgements.doctree and b/galactic/.doctrees/doc/acknowledgements/acknowledgements.doctree differ diff --git a/galactic/.doctrees/doc/contributing/contributing.doctree b/galactic/.doctrees/doc/contributing/contributing.doctree index 2fcc8281c3f..83f51bda23e 100644 Binary files a/galactic/.doctrees/doc/contributing/contributing.doctree and b/galactic/.doctrees/doc/contributing/contributing.doctree differ diff --git a/galactic/.doctrees/doc/differences_to_ros1/differences_to_ros1.doctree b/galactic/.doctrees/doc/differences_to_ros1/differences_to_ros1.doctree index 66ea2ed2870..4b17117c461 100644 Binary files a/galactic/.doctrees/doc/differences_to_ros1/differences_to_ros1.doctree and b/galactic/.doctrees/doc/differences_to_ros1/differences_to_ros1.doctree differ diff --git a/galactic/.doctrees/doc/getting_started/getting_started.doctree b/galactic/.doctrees/doc/getting_started/getting_started.doctree index d9f2a5f6922..4757b7ed1fb 100644 Binary files a/galactic/.doctrees/doc/getting_started/getting_started.doctree and b/galactic/.doctrees/doc/getting_started/getting_started.doctree differ diff --git a/galactic/.doctrees/doc/project_ideas.doctree b/galactic/.doctrees/doc/project_ideas.doctree index bc3195097c1..09df734aa23 100644 Binary files a/galactic/.doctrees/doc/project_ideas.doctree and b/galactic/.doctrees/doc/project_ideas.doctree differ diff --git a/galactic/.doctrees/doc/resources/resources.doctree b/galactic/.doctrees/doc/resources/resources.doctree index de0959fa98d..1332f9f6e16 100644 Binary files a/galactic/.doctrees/doc/resources/resources.doctree and b/galactic/.doctrees/doc/resources/resources.doctree differ 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 1c275dc7ba9..7ac570bd65a 100644 Binary files a/galactic/.doctrees/doc/ros2_control/controller_manager/doc/userdoc.doctree and b/galactic/.doctrees/doc/ros2_control/controller_manager/doc/userdoc.doctree differ diff --git a/galactic/.doctrees/doc/ros2_control/doc/index.doctree b/galactic/.doctrees/doc/ros2_control/doc/index.doctree index 4d3635551ac..727c8f79a88 100644 Binary files a/galactic/.doctrees/doc/ros2_control/doc/index.doctree and b/galactic/.doctrees/doc/ros2_control/doc/index.doctree differ 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 f35e09aad26..d9be8fedf41 100644 Binary files a/galactic/.doctrees/doc/ros2_control/hardware_interface/doc/fake_components_userdoc.doctree and b/galactic/.doctrees/doc/ros2_control/hardware_interface/doc/fake_components_userdoc.doctree differ 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 ec1b76a8912..0dde36f1303 100644 Binary files a/galactic/.doctrees/doc/ros2_control/hardware_interface/doc/hardware_components_userdoc.doctree and b/galactic/.doctrees/doc/ros2_control/hardware_interface/doc/hardware_components_userdoc.doctree differ diff --git a/galactic/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree b/galactic/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree index 727bf75d773..4bd613eba78 100644 Binary files a/galactic/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree and b/galactic/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree differ diff --git a/galactic/.doctrees/doc/ros2_control_demos/doc/index.doctree b/galactic/.doctrees/doc/ros2_control_demos/doc/index.doctree index 1022ac262d9..da97c2531cc 100644 Binary files a/galactic/.doctrees/doc/ros2_control_demos/doc/index.doctree and b/galactic/.doctrees/doc/ros2_control_demos/doc/index.doctree differ 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 06aad309d8b..ecaeafd4d6f 100644 Binary files a/galactic/.doctrees/doc/ros2_controllers/diff_drive_controller/doc/userdoc.doctree and b/galactic/.doctrees/doc/ros2_controllers/diff_drive_controller/doc/userdoc.doctree differ diff --git a/galactic/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree b/galactic/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree index 915a58ea177..aa0b8690ac4 100644 Binary files a/galactic/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree and b/galactic/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree differ 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 72c5f6f0a34..21095d60f39 100644 Binary files a/galactic/.doctrees/doc/ros2_controllers/doc/writing_new_controller.doctree and b/galactic/.doctrees/doc/ros2_controllers/doc/writing_new_controller.doctree differ 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 8acda84f5f6..16bfaf852b3 100644 Binary files a/galactic/.doctrees/doc/ros2_controllers/effort_controllers/doc/userdoc.doctree and b/galactic/.doctrees/doc/ros2_controllers/effort_controllers/doc/userdoc.doctree differ 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 05a75bc4096..e5d02eae9a0 100644 Binary files a/galactic/.doctrees/doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.doctree and b/galactic/.doctrees/doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.doctree differ 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 68b590d12d8..570a9a7af50 100644 Binary files a/galactic/.doctrees/doc/ros2_controllers/forward_command_controller/doc/userdoc.doctree and b/galactic/.doctrees/doc/ros2_controllers/forward_command_controller/doc/userdoc.doctree differ 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 c63eb5e4717..03099f11333 100644 Binary files a/galactic/.doctrees/doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.doctree and b/galactic/.doctrees/doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.doctree differ 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 7ea919c605a..aa63ad770d7 100644 Binary files a/galactic/.doctrees/doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.doctree and b/galactic/.doctrees/doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.doctree differ 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 672a0285b07..c03cb154e99 100644 Binary files a/galactic/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.doctree and b/galactic/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.doctree differ 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 bf3ad8d0905..7acfd64538f 100644 Binary files a/galactic/.doctrees/doc/ros2_controllers/position_controllers/doc/userdoc.doctree and b/galactic/.doctrees/doc/ros2_controllers/position_controllers/doc/userdoc.doctree differ 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 a7945927516..705f778d6db 100644 Binary files a/galactic/.doctrees/doc/ros2_controllers/velocity_controllers/doc/userdoc.doctree and b/galactic/.doctrees/doc/ros2_controllers/velocity_controllers/doc/userdoc.doctree differ diff --git a/galactic/.doctrees/environment.pickle b/galactic/.doctrees/environment.pickle index 4c8ae3b8fcf..ff76e068012 100644 Binary files a/galactic/.doctrees/environment.pickle and b/galactic/.doctrees/environment.pickle differ diff --git a/galactic/.doctrees/index.doctree b/galactic/.doctrees/index.doctree index 5ce0283cd0a..a730443c742 100644 Binary files a/galactic/.doctrees/index.doctree and b/galactic/.doctrees/index.doctree differ diff --git a/galactic/index.html b/galactic/index.html index c5e2bba0ab7..84b41b56d0f 100644 --- a/galactic/index.html +++ b/galactic/index.html @@ -152,7 +152,7 @@Built on 2024-04-07 at 05:31 GMT
+Built on 2024-04-08 at 05:31 GMT
diff --git a/galactic/searchindex.js b/galactic/searchindex.js index fae82484c1d..2b4bf5bc945 100644 --- a/galactic/searchindex.js +++ b/galactic/searchindex.js @@ -1 +1 @@ -Search.setIndex({"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"], "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"], "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!"], "terms": {"The": [0, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 16, 18, 19, 20, 23], "project": [0, 1, 23], "ha": [0, 1, 3, 4, 5, 14, 19], "receiv": [0, 2], "major": 0, "contribut": [0, 1, 5], "from": [0, 1, 2, 3, 5, 6, 8, 10, 12, 14, 16, 18, 20, 23], "follow": [0, 1, 2, 3, 4, 8, 9, 10, 11, 13, 14, 20, 23], "compani": [0, 5], "institut": 0, "support": [0, 2, 3, 5, 8, 10, 14, 19, 20, 23], "rosin": 0, "ro": [0, 1, 3, 4, 6, 8, 10, 23], "industri": [0, 3, 4], "qualiti": [0, 1], "assur": 0, "robot": [0, 2, 4, 11, 12, 16, 19, 23], "softwar": [0, 3], "compon": [0, 5, 6, 7, 12, 16, 18, 23], "more": [0, 1, 2, 3, 4, 8, 14], "inform": [0, 8, 14, 23], "http": [0, 1, 3, 4, 6], "eu": 0, "thi": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 14, 15, 16, 17, 20, 21, 22, 23], "fund": 0, "european": 0, "union": 0, "": [0, 1, 3, 4, 5, 11, 14, 23], "horizon": 0, "2020": 0, "research": [0, 5], "innov": 0, "programm": 0, "under": [0, 5, 14, 23], "grant": 0, "agreement": 0, "732287": 0, "first": [1, 2, 9, 14], "thank": 1, "you": [1, 2, 3, 5, 6, 8, 9, 14, 23], "consid": [1, 10], "ros2_control": [1, 3, 5, 6, 8, 9, 11, 14], "As": [1, 14], "an": [1, 2, 3, 4, 5, 8, 10, 14, 19, 20], "open": [1, 19, 20], "sourc": [1, 3, 5, 14], "we": [1, 4, 5, 9, 19], "welcom": 1, "each": [1, 3, 4, 9, 19], "contributor": 1, "regardless": 1, "background": 1, "experi": 1, "To": [1, 2, 3, 6, 19, 23], "reduc": [1, 8], "entropi": 1, "univers": [1, 4, 5], "our": [1, 3, 4, 5], "vivid": 1, "collabor": 1, "environ": [1, 3, 5], "have": [1, 2, 3, 4, 6, 8, 9, 11, 14, 19, 20], "set": [1, 2, 4, 5, 6, 8, 9, 10, 11, 15, 17, 19, 20, 21, 22], "up": [1, 5, 11], "some": [1, 4, 5, 19, 20, 23], "standard": [1, 2, 3, 4, 5, 10, 13, 16, 19], "method": [1, 2, 3, 9, 14], "requir": [1, 2, 3, 4, 14], "ar": [1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 16, 18, 19, 20, 23], "limit": [1, 4, 5, 12], "scope": 1, "your": [1, 2, 5, 8, 14, 23], "pr": 1, "should": [1, 2, 4, 5, 6, 9, 10, 11, 14, 19], "do": [1, 2, 3, 4, 5, 6, 14, 20], "one": [1, 2, 3, 4, 5, 14, 16, 19, 23], "thing": 1, "avoid": [1, 14], "ad": [1, 4, 8, 14, 19], "random": 1, "fix": [1, 2], "put": [1, 14], "those": [1, 2, 3, 4, 8, 14, 16, 19, 20], "separ": [1, 2, 3, 19], "give": [1, 3, 5, 23], "descript": [1, 2, 5, 9, 14], "titl": 1, "add": [1, 2, 9, 14], "short": [1, 14, 23], "summari": [1, 5, 23], "make": [1, 2, 4, 5, 6, 23], "sure": [1, 4, 23], "pipelin": 1, "i": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23], "green": 1, "don": 1, "t": [1, 6], "afraid": 1, "review": [1, 4, 23], "maintain": [1, 3, 4], "new": [1, 5, 13, 20, 23], "code": [1, 2, 4, 5, 14], "test": [1, 4, 8, 11, 14], "If": [1, 2, 3, 6, 9, 14, 16, 19, 20, 23], "function": [1, 2, 3, 4, 5, 6], "alwai": 1, "exercis": 1, "serv": [1, 3, 4], "live": [1, 5], "origin": [1, 5], "intent": [1, 8], "section": [1, 2, 14], "target": [1, 13, 14, 20], "also": [1, 2, 3, 4, 5, 14], "read": [1, 2, 3, 14, 19, 20], "understand": [1, 4], "how": [1, 4, 5, 14], "handl": [1, 2, 4, 5, 20], "organ": [1, 5, 23], "guidelin": 1, "especi": [1, 2], "applic": [1, 3, 5, 6], "ros2_control_demo": [1, 3, 23], "pleas": [1, 23], "keep": [1, 14], "mind": [1, 14], "work": [1, 4, 5, 12, 14, 15, 17, 19, 20, 21, 22, 23], "fork": 1, "when": [1, 2, 3, 4, 6, 8, 10, 14, 20], "submit": [1, 5], "That": [1, 14], "wai": [1, 14, 16], "main": [1, 3, 4, 5, 6, 8, 14, 23], "repo": [1, 3], "clean": [1, 4], "featur": [1, 5, 8, 23], "branch": 1, "all": [1, 2, 3, 4, 5, 8, 9, 11, 14, 19, 20], "check": [1, 2, 3, 4, 8, 9, 11, 14, 20, 23], "satisfi": 1, "befor": [1, 2, 6, 14], "thei": [1, 2, 3, 4, 5, 8, 10, 13, 14, 20], "can": [1, 2, 3, 4, 5, 7, 8, 9, 14, 16, 20, 23], "must": 1, "approv": 1, "two": [1, 3, 4, 6, 14, 16], "explicitli": 1, "onli": [1, 2, 3, 4, 5, 6, 9, 10, 14, 16, 19, 20], "except": 1, "other": [1, 2, 3, 5, 14, 19], "activ": [1, 2, 3, 10, 19], "where": [1, 4, 14, 19], "back": 1, "traceabl": 1, "discuss": [1, 5, 23], "suffici": [1, 16], "note": [1, 3, 11, 23], "still": [1, 2, 3], "encourag": 1, "help": [1, 6, 10, 14], "u": [1, 6], "increas": 1, "pace": 1, "veri": [1, 2, 4], "like": [1, 2, 3, 4, 5], "find": 1, "issu": [1, 4, 23], "nobodi": 1, "els": 1, "see": [1, 2, 3, 11, 14, 16, 18, 20], "squash": 1, "commit": 1, "messag": [1, 4, 6, 10, 16, 18, 19, 20, 23], "comment": 1, "fixup": 1, "linter": 1, "us": [1, 2, 3, 4, 5, 6, 8, 9, 10, 13, 15, 16, 17, 18, 19, 21, 22, 23], "pre": 1, "correct": [1, 2, 20], "header": [1, 9, 14], "address": [1, 4], "similar": [1, 3, 5], "mean": [1, 2, 8], "result": [1, 3, 19], "exactli": 1, "1": [1, 3, 4, 5, 8, 14], "cowboi": 1, "style": [1, 14], "over": [1, 4], "weekend": 1, "It": [1, 2, 3, 4, 6, 16, 19], "doesn": 1, "matter": 1, "trivial": [1, 8], "peopl": 1, "chanc": 1, "proper": [1, 20], "Be": 1, "awar": 1, "impact": 1, "time": [1, 2, 4, 5, 6, 8, 10, 12, 14, 16, 20, 23], "proport": 1, "its": [1, 2, 3, 4, 5, 6, 16, 18, 19], "ping": 1, "them": [1, 3, 4, 6, 14, 19], "necessari": [1, 9], "repeatedli": 1, "start": [1, 2, 5, 6, 9, 10, 11, 14, 20, 23], "part": [1, 4, 5, 14], "For": [1, 3, 4, 5, 6, 8, 9, 14, 20], "detail": [1, 2, 3, 8, 9, 14], "thoma": 1, "cokela": 1, "info": [1, 9], "tutori": 1, "sphinx": 1, "rest_syntax": 1, "html": 1, "id8": 1, "type": [1, 2, 3, 5, 6, 9, 10, 13, 14, 16, 18], "develop": [1, 5, 8, 11, 14], "stabl": [1, 4], "against": 1, "accept": [1, 14, 15, 17, 21, 22], "api": [1, 4], "abi": 1, "chang": [1, 2, 3, 5, 9, 10, 14, 20], "e": [1, 2, 3, 4, 5, 8, 14, 15, 16, 17, 19, 20, 21, 22, 23], "name": [1, 2, 3, 5, 6, 8, 10, 14, 16, 18, 19, 20], "convent": 1, "master": [1, 3, 4], "semi": 1, "binari": 1, "good": [1, 4], "same": [1, 3, 4, 16], "build": [1, 14], "dai": 1, "2": [1, 3, 5, 8], "ros_distro": 1, "g": [1, 2, 3, 4, 5, 8, 14, 15, 17, 19, 21, 22, 23], "foxi": [1, 3, 5], "galact": 1, "releas": [1, 3, 5, 6], "version": [1, 4], "non": [1, 5, 16], "brake": 1, "distribut": [1, 23], "three": [1, 2, 3, 9, 14], "stage": 1, "current": [1, 4, 9, 10, 20], "futur": [1, 5], "compat": [1, 2, 5], "framework": [1, 2, 4, 5, 6, 8, 9, 10, 11, 13, 14, 19, 23], "packag": [1, 2, 3, 6, 9, 11, 14, 16, 18, 20, 23], "show": [1, 3, 5, 6, 9, 10, 19], "direct": [1, 2, 4, 14], "local": [1, 19], "possibl": [1, 3, 4, 6, 14, 20], "core": 1, "immedi": 1, "depend": [1, 3, 9, 14, 20], "fail": 1, "expect": [1, 4, 20], "after": [1, 12, 14], "next": [1, 20], "sync": 1, "abl": 1, "potenti": [1, 14], "mid": 1, "robothw": 2, "rigid": 2, "ani": [2, 3, 5, 9, 14], "imposs": 2, "extend": [2, 3, 4, 14], "exist": [2, 3, 4, 6, 9, 14], "addit": [2, 4], "sensor": [2, 3, 4, 8, 9, 13], "actuat": [2, 3, 4, 8, 9], "tool": [2, 4, 5], "without": [2, 3, 8, 14], "combinedrobothardwar": 2, "drawback": [2, 23], "solut": [2, 5], "optim": [2, 6], "combin": [2, 8, 19, 20], "extern": [2, 3, 4, 8], "defin": [2, 3, 4, 8, 13, 14, 16, 18, 19, 20], "system": [2, 3, 4, 5, 9, 11, 20, 23], "composit": [2, 5], "basic": [2, 3, 4, 5, 14], "physic": [2, 3, 8, 9], "cell": [2, 16], "surround": 2, "describ": [2, 3], "multi": [2, 3, 4, 5, 11], "gripper": [2, 3, 8], "out": [2, 12], "box": 2, "allow": [2, 20], "joint": [2, 3, 5, 12, 13, 14, 15, 17, 19, 21, 22, 23], "posit": [2, 3, 5, 6, 10, 11, 13, 15, 17, 19, 20, 21, 22], "veloc": [2, 3, 5, 11, 13, 19, 20, 21, 22], "effort": [2, 13, 15, 17, 19, 20], "hard": [2, 4], "data": [2, 3, 4, 8, 19], "approach": 2, "doe": [2, 14, 20], "enforc": [2, 20], "string": [2, 8, 14, 19, 20], "ensur": [2, 5], "constant": 2, "hardware_interfac": [2, 3, 8, 9, 13, 14], "In": [2, 3, 4, 5, 14, 19], "had": 2, "request": [2, 19, 23], "itself": 2, "took": 2, "care": [2, 4, 14], "regist": 2, "resourc": 2, "conflict": [2, 3, 4], "resourcemanag": 2, "take": [2, 4, 14, 19], "state": [2, 3, 4, 5, 8, 9, 10, 11, 13, 14, 16, 19, 20], "avail": [2, 3, 5, 10, 11, 14, 19, 20], "enabl": [2, 3, 4, 5, 6, 9, 11, 16], "anymor": 2, "controllermanag": 2, "implement": [2, 3, 4, 5, 8, 11, 12, 13, 14, 20, 23], "systeminterfac": [2, 8], "granular": 2, "sensorinterfac": 2, "actuatorinterfac": 2, "abov": [2, 20], "choos": 2, "suitabl": [2, 5], "strategi": [2, 20], "decid": 2, "which": [2, 3, 4, 5, 10, 12, 14, 16, 18, 19, 20], "case": [2, 4, 5, 14, 19, 20, 23], "mayb": 2, "sens": [2, 3, 16], "multipl": [2, 3, 19, 20], "constructor": [2, 14], "initi": [2, 14], "variabl": [2, 4, 14], "need": [2, 3, 4, 5, 14], "commun": [2, 3, 4, 5], "default": [2, 3, 8, 19, 20], "configur": [2, 3, 4, 5, 6, 9, 10, 11, 14, 19, 20], "paramet": [2, 5, 14], "pars": [2, 7], "urdf": 2, "snippet": 2, "hardwareinfo": 2, "here": [2, 7, 14, 20], "cross": [2, 19], "valu": [2, 3, 4, 8, 14, 19, 20], "export_": 2, "_interfac": 2, "joint_a2": 2, "extract": [2, 12], "sensibl": 2, "stop": [2, 5, 6, 9, 10, 11, 12], "usual": [2, 8, 14], "includ": [2, 4, 9, 10, 14], "command": [2, 3, 4, 5, 7, 8, 11, 13, 14, 15, 17, 20, 21, 22, 23], "safe": [2, 12, 14, 20], "interrupt": [2, 6], "stream": [2, 5], "write": [2, 3, 4, 5, 13], "exchang": [2, 4], "equival": 2, "forget": 2, "pluginlib_export_class": [2, 14], "macro": [2, 3, 14], "end": [2, 3, 9, 14, 20], "cpp": [2, 14], "file": [2, 3, 4, 5, 6, 8, 14, 20], "creat": [2, 3, 5, 8, 14], "xml": [2, 9, 14], "librari": [2, 3, 4, 10, 14], "pluginlib": [2, 3, 14], "exampl": [2, 3, 4, 5, 8, 10, 11, 16, 19, 20, 23], "rrbotsystempositiononlyhardwar": [2, 3], "excel": 2, "jointtrajectorycontrol": [2, 10], "real": [2, 4, 5, 6, 8, 14, 19, 20, 23], "critic": [2, 4], "mark": 2, "controllerinterfac": [2, 3, 10, 14], "member": [2, 14], "init": [2, 14], "call": [2, 3, 14], "lifecycl": [2, 3, 5, 6, 9], "declar": [2, 14], "state_interface_configur": [2, 14], "command_interface_configur": [2, 14], "design": [2, 3, 4, 5, 23], "updat": [2, 3, 4, 14], "manag": [2, 4, 5, 7, 9, 10, 14, 23], "option": [2, 6, 8, 9, 10, 14, 16, 19, 20], "on_configur": [2, 14], "on_activ": [2, 9, 14], "on_deactiv": [2, 9, 14], "deactiv": [2, 3], "final": [2, 5, 9], "joint_trajectory_plugin": 2, "ros2": [3, 4, 5, 6, 10, 11, 14, 23], "instal": [3, 6, 14], "automat": [3, 12], "want": [3, 6], "workspac": [3, 14], "folder": [3, 5, 14], "wget": 3, "raw": 3, "githubusercont": 3, "com": [3, 4, 6], "vc": 3, "import": [3, 14, 20], "src": [3, 14], "found": [3, 7, 14, 20, 23], "github": [3, 4, 7, 13, 23], "repositori": [3, 4, 7, 13, 23], "figur": 3, "cm": 3, "connect": 3, "abstract": [3, 5, 9], "side": [3, 4, 5], "entri": [3, 14], "point": [3, 13, 14, 23], "through": [3, 4, 10, 12, 13, 14, 20, 23], "servic": [3, 4, 6, 9], "node": [3, 6, 8, 9, 10, 11, 14], "executor": 3, "so": [3, 14], "integr": [3, 4, 5, 8, 11, 20, 23], "custom": [3, 8, 16, 19], "setup": [3, 4, 14], "recommend": [3, 5], "ros2_control_nod": 3, "controller_manag": [3, 4, 6, 10, 14, 20], "manual": [3, 4, 14, 23], "assum": 3, "On": 3, "load": [3, 6, 10, 11, 14], "unload": [3, 6, 10], "access": [3, 4, 5, 6, 8, 14, 19], "match": 3, "provid": [3, 4, 5, 6, 8, 11, 13, 14, 19, 20, 23], "report": [3, 4, 19, 23], "error": [3, 4, 14, 19, 20], "execut": [3, 14, 20], "loop": [3, 5, 6, 14, 19, 20], "output": [3, 4, 5, 10, 16, 18, 20], "rm": 3, "driver": [3, 5], "re": 3, "usabl": 3, "flexibl": 3, "motor": [3, 4], "encod": 3, "deal": 3, "theori": [3, 23], "compar": [3, 4, 5], "refer": 3, "measur": [3, 8, 16, 19], "base": [3, 5, 9, 10, 12, 14], "calcul": 3, "input": [3, 4, 5, 12, 20], "visit": 3, "wikipedia": [3, 23], "object": 3, "deriv": 3, "controller_interfac": [3, 4, 10, 14, 16, 18], "export": [3, 14], "plugin": [3, 9, 14], "forwardcommandcontrol": 3, "lifecyclenod": 3, "class": [3, 5, 9, 10, 14], "machin": [3, 4], "document": [3, 4, 5, 8], "latest": 3, "interact": [3, 5, 6, 10], "list": [3, 5, 9, 10, 11, 13, 14, 20, 23], "definit": [3, 13, 14, 16], "srv": 3, "controller_manager_msg": 3, "while": [3, 4, 5, 11, 20], "directli": [3, 23], "line": [3, 7, 9, 14, 19], "via": 3, "friendli": 3, "cli": [3, 7, 10], "auto": 3, "complet": [3, 9, 13], "rang": 3, "common": [3, 4, 13, 19, 23], "capabl": [3, 4], "readm": 3, "md": 3, "ros2controlcli": 3, "realiz": [3, 5], "repres": [3, 9], "dynam": [3, 14], "There": [3, 6, 9, 14], "complex": [3, 4, 5], "dof": 3, "differ": [3, 4, 5, 15, 16, 17, 19, 21, 22], "between": [3, 4, 9, 19, 20], "transmiss": 3, "humanoid": 3, "hand": 3, "logic": 3, "channel": 3, "kuka": 3, "rsi": 3, "A": [3, 5, 14, 19, 20], "relat": [3, 4, 5], "link": [3, 5, 9], "forc": [3, 5, 10, 13], "torqu": [3, 13], "simpl": [3, 4, 5, 11, 14], "valv": 3, "mandatori": [3, 16, 18, 20], "dc": 3, "arduino": 3, "board": 3, "modular": [3, 5], "independ": 3, "explan": 3, "given": [3, 20], "tag": [3, 14, 23], "chosen": 3, "structur": [3, 4, 14, 20], "track": [3, 23], "togeth": 3, "xacro": 3, "hereund": 3, "rrbot": [3, 11], "parallel": [3, 8], "effector": 3, "rrbotsystempositiononli": 3, "ros2_control_demo_hardwar": [3, 11], "param": [3, 6, 8], "example_param_write_for_sec": 3, "example_param_read_for_sec": 3, "joint1": [3, 8, 10, 11, 20], "command_interfac": [3, 20], "min": 3, "max": 3, "state_interfac": [3, 20], "joint2": [3, 10, 11, 20], "rrbotforcetorquesensor1d": 3, "forcetorquesensor1dhardwar": 3, "0": [3, 8, 19, 20], "43": 3, "tcp_fts_sensor": 3, "frame_id": [3, 16, 18], "rrbot_tcp": 3, "min_forc": 3, "100": 3, "max_forc": 3, "rrbotgripp": 3, "positionactuatorhardwar": 3, "23": 3, "3": [3, 4], "gripper_joint": 3, "50": [3, 6, 20], "yaml": [3, 4, 20], "instead": [3, 8, 20], "pure": [3, 20], "launch": [3, 6, 8, 11], "stack": [3, 5], "could": [3, 5, 14, 19, 20], "altern": [3, 20], "script": [3, 4, 14], "skeleton": 3, "orbit": 4, "around": [4, 16, 18], "everyth": [4, 14], "goal": [4, 5, 20, 23], "long": 4, "run": [4, 5, 6, 10], "task": [4, 5, 12], "interfac": [4, 5, 6, 7, 8, 9, 11, 13, 14, 16, 18, 23], "user": 4, "thread": [4, 6], "protect": [4, 14], "memori": [4, 14], "buffer": [4, 23], "control_toolbox": [4, 23], "second": [4, 10, 14, 23], "frequenc": 4, "high": 4, "rate": [4, 20], "khz": 4, "variou": 4, "anoth": 4, "heartbeat": 4, "signal": 4, "sent": 4, "onc": [4, 5], "per": [4, 16], "500": 4, "hz": 4, "failur": [4, 9], "relev": [4, 23], "draft": 4, "trigger": 4, "skill": 4, "prefer": 4, "c": [4, 6, 10, 14], "trick": 4, "mentor": 4, "benc": [4, 5], "magyar": [4, 5], "deni": [4, 5], "\u0161togl": [4, 5], "size": 4, "350": 4, "hour": 4, "difficulti": 4, "about": [4, 8, 19, 23], "org": [4, 6], "gener": [4, 5, 14, 20, 23], "envis": 4, "simul": [4, 8, 11], "gazebo": 4, "ignit": 4, "showcas": [4, 5], "grace": 4, "degrad": 4, "architectur": [4, 5], "roadmap": [4, 23], "place": [4, 14, 20], "gpio": 4, "mode": [4, 20], "switch": [4, 10], "movement": 4, "safeti": 4, "familiar": [4, 23], "medium": 4, "focus": [4, 5], "although": [4, 9], "easi": 4, "therefor": [4, 6, 14, 19, 20], "often": [4, 8, 14, 19], "orchestr": 4, "purpos": 4, "conductor": 4, "scenario": 4, "appropri": 4, "moment": 4, "right": 4, "replac": [4, 9], "level": [4, 5, 15, 17, 20, 21, 22], "moveit2": [4, 5], "simplecontrollermanag": 4, "form": 4, "behavior": [4, 8], "benchmark": 4, "statu": [4, 9, 10, 20], "publish": [4, 12, 16, 18, 19, 20, 23], "topic": [4, 5, 20], "format": [4, 19], "preset": 4, "modul": 4, "specif": [4, 9, 19, 20], "reli": 4, "doubl": [4, 8, 20], "desir": [4, 20], "howev": [4, 6], "both": [4, 5, 19], "improv": 4, "readabl": 4, "earlier": 4, "concept": [4, 5, 8, 11], "were": 4, "introduc": [4, 5], "essenti": 4, "group": [4, 20, 23], "instanc": [4, 19], "imu": [4, 13], "typic": [4, 19, 20], "9": 4, "axi": [4, 16], "aceleromet": 4, "gyroscop": 4, "compass": 4, "respect": [4, 5], "Such": 4, "struct": 4, "low": [4, 5], "profil": 4, "intern": [4, 20], "addition": [4, 23], "few": [4, 5], "pull": 4, "45": 4, "tree": 4, "semantic_compon": 4, "175": 4, "rewrit": [4, 23], "ros_control": [4, 5, 23], "rich": 4, "wa": [4, 14], "motiv": 4, "adopt": 4, "port": [4, 9], "most": [4, 14], "quit": 4, "miss": [4, 19], "diff_drive_control": [4, 10], "joint_trajectory_control": [4, 10], "consist": [4, 20, 23], "identifi": 4, "much": [4, 14], "303": 4, "304": 4, "stretch": 4, "realtime_tool": [4, 23], "81": 4, "302": 4, "unit": 4, "gmock": 4, "cc": 5, "BY": 5, "licens": 5, "author": 5, "either": 5, "down": 5, "below": 5, "my": 5, "company_nam": 5, "tricycl": 5, "control": [5, 7, 8, 9, 10, 11, 12, 15, 16, 17, 18, 19, 21, 22, 23], "event": 5, "pixel": 5, "prefac": 5, "introduct": [5, 20], "johann": 5, "plapp": 5, "toni": 5, "najjar": 5, "kernel": [5, 6], "hardwar": [5, 6, 7, 8, 11, 13, 14, 23], "agnost": 5, "share": [5, 14], "well": [5, 6, 10, 20], "perform": [5, 6], "heavi": 5, "dr": 5, "stogl": 5, "consult": 5, "practition": 5, "guid": [5, 14], "top": 5, "virtual": 5, "talk": 5, "delv": 5, "deeper": 5, "what": 5, "explicit": [5, 20], "chain": 5, "emerg": 5, "handler": 5, "mock": 5, "usag": [5, 6, 10], "openli": 5, "record": 5, "fiveai": 5, "ltd": 5, "best": [5, 6, 14], "focu": 5, "becom": 5, "util": 5, "3rd": 5, "parti": 5, "nav2": 5, "practic": 5, "tip": 5, "hot": 5, "shown": 5, "furthermor": 5, "get": [5, 9, 23], "reus": 5, "inject": 5, "offer": [5, 6], "expos": 5, "problem": [5, 23], "manipul": [5, 20], "path": 5, "plan": [5, 23], "autonom": 5, "navig": 5, "ideal": [5, 8], "made": [5, 9], "mobil": [5, 12], "arm": 5, "extra": [5, 19], "readi": [5, 14], "power": 5, "studi": 5, "ur": 5, "With": 5, "moveit": [5, 8], "ingredi": 5, "scale": 5, "factor": 5, "teach": 5, "pendant": 5, "influenc": 5, "picknik": 5, "inc": 5, "nathan": 5, "brook": 5, "lovro": 5, "ivanov": 5, "andi": 5, "zelenak": 5, "rune": 5, "s\u00f8e": 5, "knudsen": 5, "onlin": [5, 14], "trajectori": [5, 13, 23], "admitt": 5, "One": 5, "reason": 5, "upgrad": 5, "ros1": 5, "better": 5, "realtim": [5, 12, 20, 23], "contact": 5, "insert": 5, "singl": 5, "waypoint": [5, 13, 20], "mani": [5, 14], "teleoper": 5, "involv": 5, "kinemat": 5, "acceler": [5, 11, 12, 13, 20], "jerk": [5, 12], "obei": 5, "demo": 5, "booth": 5, "zeleank": 5, "unifi": 5, "life": 5, "cycl": 5, "go": [5, 14], "_control": 5, "wild": 5, "materi": 5, "quick": [5, 9], "overview": 5, "layer": 5, "aka": 5, "systemcompon": 5, "forward": [5, 8, 13, 20, 23], "done": [5, 14], "look": 5, "modifi": 5, "simpli": [5, 20], "net": 5, "edit": 5, "collect": [5, 15, 17, 21, 22], "semant": [5, 16, 18], "world": [6, 8], "littl": 6, "jitter": 6, "normal": 6, "linux": 6, "comput": [6, 12], "throughput": 6, "suit": 6, "attempt": [6, 20], "sched_fifo": 6, "prioriti": 6, "rt": 6, "permiss": 6, "syscal": 6, "easiest": [6, 14], "ubuntu": 6, "22": 6, "04": [6, 23], "lt": 6, "beta": 6, "blog": 6, "imag": 6, "amd64": 6, "debian": 6, "bullsey": 6, "startup": 6, "h": [6, 10, 14], "p": 6, "param_fil": 6, "controller_typ": 6, "timeout": [6, 10], "controller_manager_timeout": 6, "controller_nam": [6, 10, 14], "argument": [6, 10], "exit": [6, 10], "leav": 6, "unconfigur": [6, 9], "namespac": [6, 13, 14, 19, 20], "kill": [6, 10], "wait": [6, 10], "until": 6, "doxygen": 7, "fake": 7, "mirror": 8, "correspond": [8, 14, 23], "offlin": 8, "advantag": 8, "pipe": 8, "insid": 8, "broadcast": [8, 19], "even": 8, "debug": 8, "boost": 8, "mimic": 8, "offset": [8, 19, 20], "fake_sensor_command": 8, "boolean": [8, 19, 20], "fals": [8, 19, 20], "position_state_following_offset": 8, "custom_interface_with_following_offset": 8, "map": [8, 19, 20], "multipli": 8, "mimick": 8, "return_typ": [9, 14], "return": [9, 14, 19], "on_error": 9, "previous_st": 9, "success": [9, 14], "callbackreturn": 9, "again": [9, 11], "recov": 9, "reload": [9, 10], "substanti": 9, "renam": 9, "on_init": 9, "baseinterfac": 9, "remov": 9, "base_interfac": 9, "hpp": [9, 14], "hardware_interface_status_valu": 9, "rclcpp_lifecycl": [9, 14], "mai": [9, 15, 17, 21, 22], "strictli": 9, "last": [9, 14, 20], "status_": 9, "const": 9, "in_deactiv": 9, "undefin": 9, "refern": 9, "symbol": 9, "node_interfac": 9, "lifecyclenodeinterfac": 9, "rclcpp_lifecyl": 9, "cmakelist": [9, 14], "txt": [9, 14], "spin": 10, "spin_tim": 10, "hidden": 10, "discoveri": 10, "appli": 10, "alreadi": [10, 14, 20], "daemon": 10, "test_controller_nam": 10, "test_control": 10, "diffdrivecontrol": 10, "joint_state_control": 10, "jointstatecontrol": 10, "unclaim": [10, 11], "set_stat": 10, "adjust": 10, "strict": 10, "asap": 10, "switch_timeout": 10, "templat": [11, 14, 20], "demonstr": 11, "prove": 11, "comprehens": 11, "ros2_control_demo_bringup": 11, "gui": 11, "ros2_control_test_nod": 11, "rrbot_system_multi_interfac": 11, "py": 11, "list_hardware_interfac": 11, "load_control": 11, "forward_position_control": 11, "forward_velocity_control": 11, "forward_acceleration_control": 11, "forward_illegal1_control": 11, "forward_illegal2_control": 11, "joint_state_broadcast": 11, "set_controller_st": 11, "claim": 11, "now": [11, 14], "let": 11, "switch_control": 11, "inde": 11, "been": 11, "differenti": [12, 13, 23], "drive": [12, 13, 23], "bodi": 12, "translat": 12, "wheel": 12, "odometri": 12, "feedback": [12, 19, 20], "twist": 12, "x": [12, 16, 18], "linear": [12, 20], "z": [12, 16], "angular": 12, "ignor": [12, 20], "space": [12, 20], "sort": [13, 14], "accord": [13, 20], "position_control": [13, 20], "hw_if_posit": 13, "velocity_control": 13, "hw_if_veloc": 13, "effort_control": 13, "hw_if_acceler": 13, "hw_if_effort": 13, "interpol": [13, 20], "step": [14, 20, 23], "compil": 14, "rule": 14, "prepar": 14, "ament_cmak": 14, "search": 14, "recent": 14, "process": 14, "pkg": 14, "flag": [14, 20], "least": [14, 20], "package_nam": 14, "visibility_control": 14, "window": 14, "copi": 14, "prefix": [14, 16, 18], "guard": 14, "ifndef": 14, "preprocessor": 14, "engin": 14, "friend": 14, "uniqu": 14, "written": 14, "snake_cas": 14, "controllernam": 14, "public": 14, "overrid": 14, "exact": 14, "vector": 14, "store": 14, "simplifi": [14, 23], "further": 14, "parent": 14, "reserv": 14, "importantli": 14, "fine": 14, "ok": 14, "otherwis": [14, 19], "individu": 14, "none": [14, 19], "ask": [14, 19], "full": 14, "joint_nam": [14, 20], "interface_typ": 14, "assign": 14, "opposit": 14, "empti": 14, "constraint": [14, 20], "At": 14, "close": 14, "class_list_macro": 14, "controller_name_namespac": 14, "visibl": 14, "controller_name_packag": 14, "bottom": 14, "test_load_": 14, "content": 14, "specifi": [14, 20], "find_packag": 14, "rclcpp": 14, "directori": 14, "ament": 14, "cmake": 14, "pluginlib_export_plugin_description_fil": 14, "ament_cmake_gmock": 14, "ros2_control_test_asset": 14, "ament_add_gmock": 14, "ament_export_librari": 14, "ament_packag": 14, "test_depend": 14, "colcon": 14, "rememb": 14, "root": 14, "bash": 14, "enjoi": 14, "great": 14, "shell": 14, "certain": [15, 17, 21, 22], "achiev": [15, 17, 21, 22], "These": [15, 17, 21, 22], "geometry_msg": 16, "msg": [16, 18, 20], "wrenchstamp": 16, "wrapper": [16, 18], "forcetorquesensor": 16, "sensor_nam": [16, 18], "interface_nam": 16, "frame": [16, 18], "6d": 16, "ft": 16, "y": 16, "less": 16, "six": 16, "ax": 16, "example_nam": 16, "example_interfac": 16, "sensor_msg": 18, "imusensor": 18, "orient": 18, "angular_veloc": 18, "linear_acceler": 18, "joint_stat": 19, "dynamic_joint_st": 19, "By": [19, 20], "unless": 19, "latter": 19, "matrix": 19, "product": 19, "print": 19, "warn": 19, "use_local_top": 19, "my_state_broadcast": 19, "arrai": 19, "extra_joint": 19, "map_interface_to_joint_st": 19, "field": 19, "usecas": 19, "hydraul": [19, 20], "relianc": 19, "would": 19, "visual": 19, "robot_state_publish": 19, "rviz": 19, "techniqu": 19, "slightli": 19, "custom_interfac": 19, "kf_estimated_posit": 19, "derived_veloc": 19, "derived_effort": 19, "torque_sensor": 19, "current_sensor": 19, "reach": 20, "instant": 20, "mechan": 20, "spline": 20, "guarante": 20, "continu": 20, "discourag": 20, "becaus": 20, "yield": 20, "discontinu": 20, "cubic": 20, "quintic": 20, "pid": [20, 23], "similarli": 20, "eg": 20, "proxi": 20, "wrap": 20, "robust": 20, "clock": 20, "caus": 20, "queu": 20, "segment": 20, "ros__paramet": 20, "joint3": 20, "joint4": 20, "joint5": 20, "joint6": 20, "state_publish_r": 20, "action_monitor_r": 20, "20": 20, "allow_partial_joints_go": 20, "open_loop_control": 20, "true": 20, "stopped_velocity_toler": 20, "01": 20, "goal_tim": 20, "05": [20, 23], "03": 20, "monitor": 20, "action": 20, "control_msg": [20, 23], "followjointtrajectori": 20, "tri": 20, "numer": 20, "nan": 20, "std": 20, "numeric_limit": 20, "quiet_nan": 20, "toler": 20, "jointtrajectori": 20, "deviat": 20, "maxim": 20, "predefin": 20, "joint_trajectori": 20, "trajectory_msg": 20, "jointtrajectorycontrollerst": 20, "follow_joint_trajectori": 20, "server": 20, "position_velocity_control": 20, "position_velocity_acceleration_control": 20, "Not": 20, "yet": 20, "feedforward": 20, "term": [20, 23], "plu": 20, "171": 20, "Its": 23, "oper": 23, "overcom": 23, "idea": 23, "wide": 23, "toolkit": 23, "unreleas": 23, "smooth": 23, "doc": 23, "wg": 23, "meet": 23, "everi": 23, "wednesdai": 23, "join": 23, "announc": 23, "discours": 23, "googl": 23, "propos": 23, "previou": 23, "bug": 23, "tracker": 23, "minim": 23, "reproduc": 23, "regard": 23, "etc": 23, "question": 23, "answer": 23, "2024": 23, "07": 23, "31": 23, "built": 23, "gmt": 23}, "objects": {}, "objtypes": {}, "objnames": {}, "titleterms": {"acknowledg": 0, "pull": 1, "request": 1, "rule": 1, "repositori": [1, 11], "process": 1, "merg": 1, "write": [1, 9, 14], "document": [1, 7, 23], "structur": [1, 2], "ci": 1, "configur": 1, "differ": 2, "ros_control": 2, "ros1": [2, 4], "hardwar": [2, 3, 4, 9, 12, 15, 17, 19, 20, 21, 22], "class": 2, "interfac": [2, 3, 10, 12, 15, 17, 19, 20, 21, 22], "control": [2, 3, 4, 6, 13, 14, 20], "": [2, 20], "access": 2, "migrat": [2, 9], "guid": 2, "ros2_control": [2, 4, 13, 23], "robothardwar": 2, "compon": [2, 3, 4, 8, 9], "get": 3, "start": 3, "compil": 3, "architectur": 3, "manag": [3, 6], "resourc": [3, 5], "user": 3, "descript": 3, "urdf": 3, "run": 3, "framework": 3, "your": 3, "robot": [3, 5], "project": 4, "idea": 4, "gsoc": 4, "2022": [4, 5], "asynchron": 4, "tutori": 4, "demo": [4, 11], "mission": 4, "add": 4, "support": 4, "semant": 4, "featur": [4, 7, 12, 20], "pariti": 4, "from": [4, 9], "present": 5, "2023": 5, "02": 5, "ro": 5, "meetup": 5, "munich": 5, "5": 5, "12": 5, "industri": 5, "confer": 5, "10": 5, "roscon": 5, "06": 5, "fr": 5, "2021": 5, "world": 5, "07": 5, "weekli": 5, "13": 5, "rosdevdai": 5, "05": 5, "diagram": 5, "imag": 5, "determin": 6, "helper": 6, "script": 6, "spawner": 6, "unspawn": 6, "api": 7, "core": 7, "function": 7, "concept": 7, "fake": 8, "gener": 8, "system": 8, "paramet": [8, 16, 18, 19, 20], "per": 8, "joint": [8, 20], "handl": 9, "error": 9, "happen": 9, "dure": 9, "read": 9, "call": 9, "foxi": 9, "galact": [9, 23], "command": [10, 12, 19], "line": 10, "list_control": 10, "list_controller_typ": 10, "list_hardware_interfac": 10, "load_control": 10, "reload_controller_librari": 10, "set_controller_st": 10, "switch_control": 10, "unload_control": 10, "organ": 11, "mode": 11, "switch": 11, "diff_drive_control": 12, "veloc": 12, "type": [12, 15, 17, 19, 20, 21, 22], "other": [12, 20], "nomenclatur": 13, "guidelin": 13, "best": 13, "practic": 13, "avail": 13, "broadcast": [13, 16, 18], "new": 14, "us": [14, 20], "extern": 14, "refer": 14, "effort_control": 15, "forc": 16, "torqu": 16, "sensor": [16, 18], "forward_command_control": 17, "imu": 18, "joint_state_broadcast": 19, "joint_trajectory_control": 20, "trajectori": 20, "represent": 20, "detail": 20, "about": 20, "ros2": 20, "special": 20, "version": 20, "jointtrajectorycontrol": 20, "tbd": 20, "position_control": 21, "velocity_control": 22, "welcom": 23, "overview": 23, "develop": 23, "organis": 23, "commun": 23}, "envversion": {"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, "sphinx": 60}, "alltitles": {"Acknowledgements": [[0, "acknowledgements"]], "Pull Requests": [[1, "pull-requests"]], "Rules for the repositories and process of merging pull requests": [[1, "rules-for-the-repositories-and-process-of-merging-pull-requests"]], "Writing documentation": [[1, "writing-documentation"]], "Repository structure and CI configuration": [[1, "repository-structure-and-ci-configuration"]], "CI configuration": [[1, "ci-configuration"]], "Differences to ros_control (ROS1)": [[2, "differences-to-ros-control-ros1"]], "Hardware Structures - classes": [[2, "hardware-structures-classes"]], "Hardware Interfaces": [[2, "hardware-interfaces"]], "Controller\u2019s Access to Hardware": [[2, "controller-s-access-to-hardware"]], "Migration Guide to ros2_control": [[2, "migration-guide-to-ros2-control"]], "RobotHardware to Components": [[2, "robothardware-to-components"]], "Controller Migration": [[2, "controller-migration"]], "Getting Started": [[3, "getting-started"]], "Compiling": [[3, "compiling"]], "Architecture": [[3, "architecture"]], "Controller Manager": [[3, "controller-manager"], [6, "controller-manager"]], "Resource Manager": [[3, "resource-manager"]], "Controllers": [[3, "controllers"], [13, "id1"]], "User Interfaces": [[3, "user-interfaces"]], "Hardware Components": [[3, "hardware-components"], [9, "hardware-components"]], "Hardware Description in URDF": [[3, "hardware-description-in-urdf"]], "Running the Framework for Your Robot": [[3, "running-the-framework-for-your-robot"]], "Project Ideas for GSoC 2022": [[4, "project-ideas-for-gsoc-2022"]], "Asynchronous Control Components": [[4, "asynchronous-control-components"]], "Tutorials and Demos for ros2_control": [[4, "tutorials-and-demos-for-ros2-control"]], "Mission-Control for ros2_control": [[4, "mission-control-for-ros2-control"]], "Add support for hardware semantic components": [[4, "add-support-for-hardware-semantic-components"]], "Feature-parity for controllers from ROS1": [[4, "feature-parity-for-controllers-from-ros1"]], "Resources": [[5, "resources"]], "Presentations": [[5, "presentations"]], "2023-02 ROS Meetup Munich #5": [[5, "ros-meetup-munich-5"]], "2022-12 ROS-Industrial Conference 2022": [[5, "ros-industrial-conference-2022"]], "2022-10 ROSCon 2022": [[5, "roscon-2022"]], "2022-06 ROSCon Fr 2022": [[5, "roscon-fr-2022"]], "2021-10 ROS World 2021": [[5, "ros-world-2021"]], "2021-10-07 Weekly Robotics Meetup #13": [[5, "weekly-robotics-meetup-13"]], "2021-06 ROSDevDay 2021": [[5, "rosdevday-2021"]], "2021-05 ROSCon Fr 2021": [[5, "roscon-fr-2021"]], "Diagrams": [[5, "diagrams"]], "Images": [[5, "images"]], "Determinism": [[6, "determinism"]], "Helper scripts": [[6, "helper-scripts"]], "spawner": [[6, "spawner"]], "unspawner": [[6, "unspawner"]], "API Documentation": [[7, "api-documentation"]], "Core functionalities": [[7, "core-functionalities"]], "Features": [[7, "features"]], "Concepts": [[7, "concepts"]], "Fake Components": [[8, "fake-components"]], "Generic System": [[8, "generic-system"]], "Parameters": [[8, "parameters"], [16, "parameters"], [18, "parameters"], [19, "parameters"]], "Per-joint Parameters": [[8, "per-joint-parameters"]], "Handling of errors that happen during read() and write() calls": [[9, "handling-of-errors-that-happen-during-read-and-write-calls"]], "Migration from Foxy to Galactic": [[9, "migration-from-foxy-to-galactic"]], "Command Line Interface": [[10, "command-line-interface"]], "list_controllers": [[10, "list-controllers"]], "list_controller_types": [[10, "list-controller-types"]], "list_hardware_interfaces": [[10, "list-hardware-interfaces"]], "load_controller": [[10, "load-controller"]], "reload_controller_libraries": [[10, "reload-controller-libraries"]], "set_controller_state": [[10, "set-controller-state"]], "switch_controllers": [[10, "switch-controllers"]], "unload_controller": [[10, "unload-controller"]], "Demos": [[11, "demos"]], "Repository organization": [[11, "repository-organization"]], "Mode switching demo": [[11, "mode-switching-demo"]], "diff_drive_controller": [[12, "diff-drive-controller"]], "Velocity commands": [[12, "velocity-commands"]], "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"]], "Other features": [[12, "other-features"], [20, "other-features"]], "ros2_controllers": [[13, "ros2-controllers"]], "Nomenclature": [[13, "nomenclature"]], "Guidelines and Best Practices": [[13, "guidelines-and-best-practices"]], "Available Controllers": [[13, "available-controllers"]], "Available Broadcasters": [[13, "available-broadcasters"]], "Writing a new controller": [[14, "writing-a-new-controller"]], "Useful External References": [[14, "useful-external-references"]], "effort_controllers": [[15, "effort-controllers"]], "Force Torque Sensor Broadcaster": [[16, "force-torque-sensor-broadcaster"]], "forward_command_controller": [[17, "forward-command-controller"]], "IMU Sensor Broadcaster": [[18, "imu-sensor-broadcaster"]], "joint_state_broadcaster": [[19, "joint-state-broadcaster"]], "Commands": [[19, "commands"]], "joint_trajectory_controller": [[20, "joint-trajectory-controller"]], "Trajectory representation": [[20, "trajectory-representation"]], "Using Joint Trajectory Controller(s)": [[20, "using-joint-trajectory-controller-s"]], "Details about parameters": [[20, "details-about-parameters"]], "ROS2 interface of the controller": [[20, "ros2-interface-of-the-controller"]], "Specialized versions of JointTrajectoryController (TBD in \u2026)": [[20, "specialized-versions-of-jointtrajectorycontroller-tbd-in"]], "position_controllers": [[21, "position-controllers"]], "velocity_controllers": [[22, "velocity-controllers"]], "Welcome to the ros2_control documentation - Galactic!": [[23, "welcome-to-the-ros2-control-documentation-galactic"]], "Overview": [[23, "overview"]], "Development Organisation and Communication": [[23, "development-organisation-and-communication"]]}, "indexentries": {}}) \ No newline at end of file +Search.setIndex({"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"], "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"], "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!"], "terms": {"The": [0, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 16, 18, 19, 20, 23], "project": [0, 1, 23], "ha": [0, 1, 3, 4, 5, 14, 19], "receiv": [0, 2], "major": 0, "contribut": [0, 1, 5], "from": [0, 1, 2, 3, 5, 6, 8, 10, 12, 14, 16, 18, 20, 23], "follow": [0, 1, 2, 3, 4, 8, 9, 10, 11, 13, 14, 20, 23], "compani": [0, 5], "institut": 0, "support": [0, 2, 3, 5, 8, 10, 14, 19, 20, 23], "rosin": 0, "ro": [0, 1, 3, 4, 6, 8, 10, 23], "industri": [0, 3, 4], "qualiti": [0, 1], "assur": 0, "robot": [0, 2, 4, 11, 12, 16, 19, 23], "softwar": [0, 3], "compon": [0, 5, 6, 7, 12, 16, 18, 23], "more": [0, 1, 2, 3, 4, 8, 14], "inform": [0, 8, 14, 23], "http": [0, 1, 3, 4, 6], "eu": 0, "thi": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 14, 15, 16, 17, 20, 21, 22, 23], "fund": 0, "european": 0, "union": 0, "": [0, 1, 3, 4, 5, 11, 14, 23], "horizon": 0, "2020": 0, "research": [0, 5], "innov": 0, "programm": 0, "under": [0, 5, 14, 23], "grant": 0, "agreement": 0, "732287": 0, "first": [1, 2, 9, 14], "thank": 1, "you": [1, 2, 3, 5, 6, 8, 9, 14, 23], "consid": [1, 10], "ros2_control": [1, 3, 5, 6, 8, 9, 11, 14], "As": [1, 14], "an": [1, 2, 3, 4, 5, 8, 10, 14, 19, 20], "open": [1, 19, 20], "sourc": [1, 3, 5, 14], "we": [1, 4, 5, 9, 19], "welcom": 1, "each": [1, 3, 4, 9, 19], "contributor": 1, "regardless": 1, "background": 1, "experi": 1, "To": [1, 2, 3, 6, 19, 23], "reduc": [1, 8], "entropi": 1, "univers": [1, 4, 5], "our": [1, 3, 4, 5], "vivid": 1, "collabor": 1, "environ": [1, 3, 5], "have": [1, 2, 3, 4, 6, 8, 9, 11, 14, 19, 20], "set": [1, 2, 4, 5, 6, 8, 9, 10, 11, 15, 17, 19, 20, 21, 22], "up": [1, 5, 11], "some": [1, 4, 5, 19, 20, 23], "standard": [1, 2, 3, 4, 5, 10, 13, 16, 19], "method": [1, 2, 3, 9, 14], "requir": [1, 2, 3, 4, 14], "ar": [1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 16, 18, 19, 20, 23], "limit": [1, 4, 5, 12], "scope": 1, "your": [1, 2, 5, 8, 14, 23], "pr": 1, "should": [1, 2, 4, 5, 6, 9, 10, 11, 14, 19], "do": [1, 2, 3, 4, 5, 6, 14, 20], "one": [1, 2, 3, 4, 5, 14, 16, 19, 23], "thing": 1, "avoid": [1, 14], "ad": [1, 4, 8, 14, 19], "random": 1, "fix": [1, 2], "put": [1, 14], "those": [1, 2, 3, 4, 8, 14, 16, 19, 20], "separ": [1, 2, 3, 19], "give": [1, 3, 5, 23], "descript": [1, 2, 5, 9, 14], "titl": 1, "add": [1, 2, 9, 14], "short": [1, 14, 23], "summari": [1, 5, 23], "make": [1, 2, 4, 5, 6, 23], "sure": [1, 4, 23], "pipelin": 1, "i": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23], "green": 1, "don": 1, "t": [1, 6], "afraid": 1, "review": [1, 4, 23], "maintain": [1, 3, 4], "new": [1, 5, 13, 20, 23], "code": [1, 2, 4, 5, 14], "test": [1, 4, 8, 11, 14], "If": [1, 2, 3, 6, 9, 14, 16, 19, 20, 23], "function": [1, 2, 3, 4, 5, 6], "alwai": 1, "exercis": 1, "serv": [1, 3, 4], "live": [1, 5], "origin": [1, 5], "intent": [1, 8], "section": [1, 2, 14], "target": [1, 13, 14, 20], "also": [1, 2, 3, 4, 5, 14], "read": [1, 2, 3, 14, 19, 20], "understand": [1, 4], "how": [1, 4, 5, 14], "handl": [1, 2, 4, 5, 20], "organ": [1, 5, 23], "guidelin": 1, "especi": [1, 2], "applic": [1, 3, 5, 6], "ros2_control_demo": [1, 3, 23], "pleas": [1, 23], "keep": [1, 14], "mind": [1, 14], "work": [1, 4, 5, 12, 14, 15, 17, 19, 20, 21, 22, 23], "fork": 1, "when": [1, 2, 3, 4, 6, 8, 10, 14, 20], "submit": [1, 5], "That": [1, 14], "wai": [1, 14, 16], "main": [1, 3, 4, 5, 6, 8, 14, 23], "repo": [1, 3], "clean": [1, 4], "featur": [1, 5, 8, 23], "branch": 1, "all": [1, 2, 3, 4, 5, 8, 9, 11, 14, 19, 20], "check": [1, 2, 3, 4, 8, 9, 11, 14, 20, 23], "satisfi": 1, "befor": [1, 2, 6, 14], "thei": [1, 2, 3, 4, 5, 8, 10, 13, 14, 20], "can": [1, 2, 3, 4, 5, 7, 8, 9, 14, 16, 20, 23], "must": 1, "approv": 1, "two": [1, 3, 4, 6, 14, 16], "explicitli": 1, "onli": [1, 2, 3, 4, 5, 6, 9, 10, 14, 16, 19, 20], "except": 1, "other": [1, 2, 3, 5, 14, 19], "activ": [1, 2, 3, 10, 19], "where": [1, 4, 14, 19], "back": 1, "traceabl": 1, "discuss": [1, 5, 23], "suffici": [1, 16], "note": [1, 3, 11, 23], "still": [1, 2, 3], "encourag": 1, "help": [1, 6, 10, 14], "u": [1, 6], "increas": 1, "pace": 1, "veri": [1, 2, 4], "like": [1, 2, 3, 4, 5], "find": 1, "issu": [1, 4, 23], "nobodi": 1, "els": 1, "see": [1, 2, 3, 11, 14, 16, 18, 20], "squash": 1, "commit": 1, "messag": [1, 4, 6, 10, 16, 18, 19, 20, 23], "comment": 1, "fixup": 1, "linter": 1, "us": [1, 2, 3, 4, 5, 6, 8, 9, 10, 13, 15, 16, 17, 18, 19, 21, 22, 23], "pre": 1, "correct": [1, 2, 20], "header": [1, 9, 14], "address": [1, 4], "similar": [1, 3, 5], "mean": [1, 2, 8], "result": [1, 3, 19], "exactli": 1, "1": [1, 3, 4, 5, 8, 14], "cowboi": 1, "style": [1, 14], "over": [1, 4], "weekend": 1, "It": [1, 2, 3, 4, 6, 16, 19], "doesn": 1, "matter": 1, "trivial": [1, 8], "peopl": 1, "chanc": 1, "proper": [1, 20], "Be": 1, "awar": 1, "impact": 1, "time": [1, 2, 4, 5, 6, 8, 10, 12, 14, 16, 20, 23], "proport": 1, "its": [1, 2, 3, 4, 5, 6, 16, 18, 19], "ping": 1, "them": [1, 3, 4, 6, 14, 19], "necessari": [1, 9], "repeatedli": 1, "start": [1, 2, 5, 6, 9, 10, 11, 14, 20, 23], "part": [1, 4, 5, 14], "For": [1, 3, 4, 5, 6, 8, 9, 14, 20], "detail": [1, 2, 3, 8, 9, 14], "thoma": 1, "cokela": 1, "info": [1, 9], "tutori": 1, "sphinx": 1, "rest_syntax": 1, "html": 1, "id8": 1, "type": [1, 2, 3, 5, 6, 9, 10, 13, 14, 16, 18], "develop": [1, 5, 8, 11, 14], "stabl": [1, 4], "against": 1, "accept": [1, 14, 15, 17, 21, 22], "api": [1, 4], "abi": 1, "chang": [1, 2, 3, 5, 9, 10, 14, 20], "e": [1, 2, 3, 4, 5, 8, 14, 15, 16, 17, 19, 20, 21, 22, 23], "name": [1, 2, 3, 5, 6, 8, 10, 14, 16, 18, 19, 20], "convent": 1, "master": [1, 3, 4], "semi": 1, "binari": 1, "good": [1, 4], "same": [1, 3, 4, 16], "build": [1, 14], "dai": 1, "2": [1, 3, 5, 8], "ros_distro": 1, "g": [1, 2, 3, 4, 5, 8, 14, 15, 17, 19, 21, 22, 23], "foxi": [1, 3, 5], "galact": 1, "releas": [1, 3, 5, 6], "version": [1, 4], "non": [1, 5, 16], "brake": 1, "distribut": [1, 23], "three": [1, 2, 3, 9, 14], "stage": 1, "current": [1, 4, 9, 10, 20], "futur": [1, 5], "compat": [1, 2, 5], "framework": [1, 2, 4, 5, 6, 8, 9, 10, 11, 13, 14, 19, 23], "packag": [1, 2, 3, 6, 9, 11, 14, 16, 18, 20, 23], "show": [1, 3, 5, 6, 9, 10, 19], "direct": [1, 2, 4, 14], "local": [1, 19], "possibl": [1, 3, 4, 6, 14, 20], "core": 1, "immedi": 1, "depend": [1, 3, 9, 14, 20], "fail": 1, "expect": [1, 4, 20], "after": [1, 12, 14], "next": [1, 20], "sync": 1, "abl": 1, "potenti": [1, 14], "mid": 1, "robothw": 2, "rigid": 2, "ani": [2, 3, 5, 9, 14], "imposs": 2, "extend": [2, 3, 4, 14], "exist": [2, 3, 4, 6, 9, 14], "addit": [2, 4], "sensor": [2, 3, 4, 8, 9, 13], "actuat": [2, 3, 4, 8, 9], "tool": [2, 4, 5], "without": [2, 3, 8, 14], "combinedrobothardwar": 2, "drawback": [2, 23], "solut": [2, 5], "optim": [2, 6], "combin": [2, 8, 19, 20], "extern": [2, 3, 4, 8], "defin": [2, 3, 4, 8, 13, 14, 16, 18, 19, 20], "system": [2, 3, 4, 5, 9, 11, 20, 23], "composit": [2, 5], "basic": [2, 3, 4, 5, 14], "physic": [2, 3, 8, 9], "cell": [2, 16], "surround": 2, "describ": [2, 3], "multi": [2, 3, 4, 5, 11], "gripper": [2, 3, 8], "out": [2, 12], "box": 2, "allow": [2, 20], "joint": [2, 3, 5, 12, 13, 14, 15, 17, 19, 21, 22, 23], "posit": [2, 3, 5, 6, 10, 11, 13, 15, 17, 19, 20, 21, 22], "veloc": [2, 3, 5, 11, 13, 19, 20, 21, 22], "effort": [2, 13, 15, 17, 19, 20], "hard": [2, 4], "data": [2, 3, 4, 8, 19], "approach": 2, "doe": [2, 14, 20], "enforc": [2, 20], "string": [2, 8, 14, 19, 20], "ensur": [2, 5], "constant": 2, "hardware_interfac": [2, 3, 8, 9, 13, 14], "In": [2, 3, 4, 5, 14, 19], "had": 2, "request": [2, 19, 23], "itself": 2, "took": 2, "care": [2, 4, 14], "regist": 2, "resourc": 2, "conflict": [2, 3, 4], "resourcemanag": 2, "take": [2, 4, 14, 19], "state": [2, 3, 4, 5, 8, 9, 10, 11, 13, 14, 16, 19, 20], "avail": [2, 3, 5, 10, 11, 14, 19, 20], "enabl": [2, 3, 4, 5, 6, 9, 11, 16], "anymor": 2, "controllermanag": 2, "implement": [2, 3, 4, 5, 8, 11, 12, 13, 14, 20, 23], "systeminterfac": [2, 8], "granular": 2, "sensorinterfac": 2, "actuatorinterfac": 2, "abov": [2, 20], "choos": 2, "suitabl": [2, 5], "strategi": [2, 20], "decid": 2, "which": [2, 3, 4, 5, 10, 12, 14, 16, 18, 19, 20], "case": [2, 4, 5, 14, 19, 20, 23], "mayb": 2, "sens": [2, 3, 16], "multipl": [2, 3, 19, 20], "constructor": [2, 14], "initi": [2, 14], "variabl": [2, 4, 14], "need": [2, 3, 4, 5, 14], "commun": [2, 3, 4, 5], "default": [2, 3, 8, 19, 20], "configur": [2, 3, 4, 5, 6, 9, 10, 11, 14, 19, 20], "paramet": [2, 5, 14], "pars": [2, 7], "urdf": 2, "snippet": 2, "hardwareinfo": 2, "here": [2, 7, 14, 20], "cross": [2, 19], "valu": [2, 3, 4, 8, 14, 19, 20], "export_": 2, "_interfac": 2, "joint_a2": 2, "extract": [2, 12], "sensibl": 2, "stop": [2, 5, 6, 9, 10, 11, 12], "usual": [2, 8, 14], "includ": [2, 4, 9, 10, 14], "command": [2, 3, 4, 5, 7, 8, 11, 13, 14, 15, 17, 20, 21, 22, 23], "safe": [2, 12, 14, 20], "interrupt": [2, 6], "stream": [2, 5], "write": [2, 3, 4, 5, 13], "exchang": [2, 4], "equival": 2, "forget": 2, "pluginlib_export_class": [2, 14], "macro": [2, 3, 14], "end": [2, 3, 9, 14, 20], "cpp": [2, 14], "file": [2, 3, 4, 5, 6, 8, 14, 20], "creat": [2, 3, 5, 8, 14], "xml": [2, 9, 14], "librari": [2, 3, 4, 10, 14], "pluginlib": [2, 3, 14], "exampl": [2, 3, 4, 5, 8, 10, 11, 16, 19, 20, 23], "rrbotsystempositiononlyhardwar": [2, 3], "excel": 2, "jointtrajectorycontrol": [2, 10], "real": [2, 4, 5, 6, 8, 14, 19, 20, 23], "critic": [2, 4], "mark": 2, "controllerinterfac": [2, 3, 10, 14], "member": [2, 14], "init": [2, 14], "call": [2, 3, 14], "lifecycl": [2, 3, 5, 6, 9], "declar": [2, 14], "state_interface_configur": [2, 14], "command_interface_configur": [2, 14], "design": [2, 3, 4, 5, 23], "updat": [2, 3, 4, 14], "manag": [2, 4, 5, 7, 9, 10, 14, 23], "option": [2, 6, 8, 9, 10, 14, 16, 19, 20], "on_configur": [2, 14], "on_activ": [2, 9, 14], "on_deactiv": [2, 9, 14], "deactiv": [2, 3], "final": [2, 5, 9], "joint_trajectory_plugin": 2, "ros2": [3, 4, 5, 6, 10, 11, 14, 23], "instal": [3, 6, 14], "automat": [3, 12], "want": [3, 6], "workspac": [3, 14], "folder": [3, 5, 14], "wget": 3, "raw": 3, "githubusercont": 3, "com": [3, 4, 6], "vc": 3, "import": [3, 14, 20], "src": [3, 14], "found": [3, 7, 14, 20, 23], "github": [3, 4, 7, 13, 23], "repositori": [3, 4, 7, 13, 23], "figur": 3, "cm": 3, "connect": 3, "abstract": [3, 5, 9], "side": [3, 4, 5], "entri": [3, 14], "point": [3, 13, 14, 23], "through": [3, 4, 10, 12, 13, 14, 20, 23], "servic": [3, 4, 6, 9], "node": [3, 6, 8, 9, 10, 11, 14], "executor": 3, "so": [3, 14], "integr": [3, 4, 5, 8, 11, 20, 23], "custom": [3, 8, 16, 19], "setup": [3, 4, 14], "recommend": [3, 5], "ros2_control_nod": 3, "controller_manag": [3, 4, 6, 10, 14, 20], "manual": [3, 4, 14, 23], "assum": 3, "On": 3, "load": [3, 6, 10, 11, 14], "unload": [3, 6, 10], "access": [3, 4, 5, 6, 8, 14, 19], "match": 3, "provid": [3, 4, 5, 6, 8, 11, 13, 14, 19, 20, 23], "report": [3, 4, 19, 23], "error": [3, 4, 14, 19, 20], "execut": [3, 14, 20], "loop": [3, 5, 6, 14, 19, 20], "output": [3, 4, 5, 10, 16, 18, 20], "rm": 3, "driver": [3, 5], "re": 3, "usabl": 3, "flexibl": 3, "motor": [3, 4], "encod": 3, "deal": 3, "theori": [3, 23], "compar": [3, 4, 5], "refer": 3, "measur": [3, 8, 16, 19], "base": [3, 5, 9, 10, 12, 14], "calcul": 3, "input": [3, 4, 5, 12, 20], "visit": 3, "wikipedia": [3, 23], "object": 3, "deriv": 3, "controller_interfac": [3, 4, 10, 14, 16, 18], "export": [3, 14], "plugin": [3, 9, 14], "forwardcommandcontrol": 3, "lifecyclenod": 3, "class": [3, 5, 9, 10, 14], "machin": [3, 4], "document": [3, 4, 5, 8], "latest": 3, "interact": [3, 5, 6, 10], "list": [3, 5, 9, 10, 11, 13, 14, 20, 23], "definit": [3, 13, 14, 16], "srv": 3, "controller_manager_msg": 3, "while": [3, 4, 5, 11, 20], "directli": [3, 23], "line": [3, 7, 9, 14, 19], "via": 3, "friendli": 3, "cli": [3, 7, 10], "auto": 3, "complet": [3, 9, 13], "rang": 3, "common": [3, 4, 13, 19, 23], "capabl": [3, 4], "readm": 3, "md": 3, "ros2controlcli": 3, "realiz": [3, 5], "repres": [3, 9], "dynam": [3, 14], "There": [3, 6, 9, 14], "complex": [3, 4, 5], "dof": 3, "differ": [3, 4, 5, 15, 16, 17, 19, 21, 22], "between": [3, 4, 9, 19, 20], "transmiss": 3, "humanoid": 3, "hand": 3, "logic": 3, "channel": 3, "kuka": 3, "rsi": 3, "A": [3, 5, 14, 19, 20], "relat": [3, 4, 5], "link": [3, 5, 9], "forc": [3, 5, 10, 13], "torqu": [3, 13], "simpl": [3, 4, 5, 11, 14], "valv": 3, "mandatori": [3, 16, 18, 20], "dc": 3, "arduino": 3, "board": 3, "modular": [3, 5], "independ": 3, "explan": 3, "given": [3, 20], "tag": [3, 14, 23], "chosen": 3, "structur": [3, 4, 14, 20], "track": [3, 23], "togeth": 3, "xacro": 3, "hereund": 3, "rrbot": [3, 11], "parallel": [3, 8], "effector": 3, "rrbotsystempositiononli": 3, "ros2_control_demo_hardwar": [3, 11], "param": [3, 6, 8], "example_param_write_for_sec": 3, "example_param_read_for_sec": 3, "joint1": [3, 8, 10, 11, 20], "command_interfac": [3, 20], "min": 3, "max": 3, "state_interfac": [3, 20], "joint2": [3, 10, 11, 20], "rrbotforcetorquesensor1d": 3, "forcetorquesensor1dhardwar": 3, "0": [3, 8, 19, 20], "43": 3, "tcp_fts_sensor": 3, "frame_id": [3, 16, 18], "rrbot_tcp": 3, "min_forc": 3, "100": 3, "max_forc": 3, "rrbotgripp": 3, "positionactuatorhardwar": 3, "23": 3, "3": [3, 4], "gripper_joint": 3, "50": [3, 6, 20], "yaml": [3, 4, 20], "instead": [3, 8, 20], "pure": [3, 20], "launch": [3, 6, 8, 11], "stack": [3, 5], "could": [3, 5, 14, 19, 20], "altern": [3, 20], "script": [3, 4, 14], "skeleton": 3, "orbit": 4, "around": [4, 16, 18], "everyth": [4, 14], "goal": [4, 5, 20, 23], "long": 4, "run": [4, 5, 6, 10], "task": [4, 5, 12], "interfac": [4, 5, 6, 7, 8, 9, 11, 13, 14, 16, 18, 23], "user": 4, "thread": [4, 6], "protect": [4, 14], "memori": [4, 14], "buffer": [4, 23], "control_toolbox": [4, 23], "second": [4, 10, 14, 23], "frequenc": 4, "high": 4, "rate": [4, 20], "khz": 4, "variou": 4, "anoth": 4, "heartbeat": 4, "signal": 4, "sent": 4, "onc": [4, 5], "per": [4, 16], "500": 4, "hz": 4, "failur": [4, 9], "relev": [4, 23], "draft": 4, "trigger": 4, "skill": 4, "prefer": 4, "c": [4, 6, 10, 14], "trick": 4, "mentor": 4, "benc": [4, 5], "magyar": [4, 5], "deni": [4, 5], "\u0161togl": [4, 5], "size": 4, "350": 4, "hour": 4, "difficulti": 4, "about": [4, 8, 19, 23], "org": [4, 6], "gener": [4, 5, 14, 20, 23], "envis": 4, "simul": [4, 8, 11], "gazebo": 4, "ignit": 4, "showcas": [4, 5], "grace": 4, "degrad": 4, "architectur": [4, 5], "roadmap": [4, 23], "place": [4, 14, 20], "gpio": 4, "mode": [4, 20], "switch": [4, 10], "movement": 4, "safeti": 4, "familiar": [4, 23], "medium": 4, "focus": [4, 5], "although": [4, 9], "easi": 4, "therefor": [4, 6, 14, 19, 20], "often": [4, 8, 14, 19], "orchestr": 4, "purpos": 4, "conductor": 4, "scenario": 4, "appropri": 4, "moment": 4, "right": 4, "replac": [4, 9], "level": [4, 5, 15, 17, 20, 21, 22], "moveit2": [4, 5], "simplecontrollermanag": 4, "form": 4, "behavior": [4, 8], "benchmark": 4, "statu": [4, 9, 10, 20], "publish": [4, 12, 16, 18, 19, 20, 23], "topic": [4, 5, 20], "format": [4, 19], "preset": 4, "modul": 4, "specif": [4, 9, 19, 20], "reli": 4, "doubl": [4, 8, 20], "desir": [4, 20], "howev": [4, 6], "both": [4, 5, 19], "improv": 4, "readabl": 4, "earlier": 4, "concept": [4, 5, 8, 11], "were": 4, "introduc": [4, 5], "essenti": 4, "group": [4, 20, 23], "instanc": [4, 19], "imu": [4, 13], "typic": [4, 19, 20], "9": 4, "axi": [4, 16], "aceleromet": 4, "gyroscop": 4, "compass": 4, "respect": [4, 5], "Such": 4, "struct": 4, "low": [4, 5], "profil": 4, "intern": [4, 20], "addition": [4, 23], "few": [4, 5], "pull": 4, "45": 4, "tree": 4, "semantic_compon": 4, "175": 4, "rewrit": [4, 23], "ros_control": [4, 5, 23], "rich": 4, "wa": [4, 14], "motiv": 4, "adopt": 4, "port": [4, 9], "most": [4, 14], "quit": 4, "miss": [4, 19], "diff_drive_control": [4, 10], "joint_trajectory_control": [4, 10], "consist": [4, 20, 23], "identifi": 4, "much": [4, 14], "303": 4, "304": 4, "stretch": 4, "realtime_tool": [4, 23], "81": 4, "302": 4, "unit": 4, "gmock": 4, "cc": 5, "BY": 5, "licens": 5, "author": 5, "either": 5, "down": 5, "below": 5, "my": 5, "company_nam": 5, "tricycl": 5, "control": [5, 7, 8, 9, 10, 11, 12, 15, 16, 17, 18, 19, 21, 22, 23], "event": 5, "pixel": 5, "prefac": 5, "introduct": [5, 20], "johann": 5, "plapp": 5, "toni": 5, "najjar": 5, "kernel": [5, 6], "hardwar": [5, 6, 7, 8, 11, 13, 14, 23], "agnost": 5, "share": [5, 14], "well": [5, 6, 10, 20], "perform": [5, 6], "heavi": 5, "dr": 5, "stogl": 5, "consult": 5, "practition": 5, "guid": [5, 14], "top": 5, "virtual": 5, "talk": 5, "delv": 5, "deeper": 5, "what": 5, "explicit": [5, 20], "chain": 5, "emerg": 5, "handler": 5, "mock": 5, "usag": [5, 6, 10], "openli": 5, "record": 5, "fiveai": 5, "ltd": 5, "best": [5, 6, 14], "focu": 5, "becom": 5, "util": 5, "3rd": 5, "parti": 5, "nav2": 5, "practic": 5, "tip": 5, "hot": 5, "shown": 5, "furthermor": 5, "get": [5, 9, 23], "reus": 5, "inject": 5, "offer": [5, 6], "expos": 5, "problem": [5, 23], "manipul": [5, 20], "path": 5, "plan": [5, 23], "autonom": 5, "navig": 5, "ideal": [5, 8], "made": [5, 9], "mobil": [5, 12], "arm": 5, "extra": [5, 19], "readi": [5, 14], "power": 5, "studi": 5, "ur": 5, "With": 5, "moveit": [5, 8], "ingredi": 5, "scale": 5, "factor": 5, "teach": 5, "pendant": 5, "influenc": 5, "picknik": 5, "inc": 5, "nathan": 5, "brook": 5, "lovro": 5, "ivanov": 5, "andi": 5, "zelenak": 5, "rune": 5, "s\u00f8e": 5, "knudsen": 5, "onlin": [5, 14], "trajectori": [5, 13, 23], "admitt": 5, "One": 5, "reason": 5, "upgrad": 5, "ros1": 5, "better": 5, "realtim": [5, 12, 20, 23], "contact": 5, "insert": 5, "singl": 5, "waypoint": [5, 13, 20], "mani": [5, 14], "teleoper": 5, "involv": 5, "kinemat": 5, "acceler": [5, 11, 12, 13, 20], "jerk": [5, 12], "obei": 5, "demo": 5, "booth": 5, "zeleank": 5, "unifi": 5, "life": 5, "cycl": 5, "go": [5, 14], "_control": 5, "wild": 5, "materi": 5, "quick": [5, 9], "overview": 5, "layer": 5, "aka": 5, "systemcompon": 5, "forward": [5, 8, 13, 20, 23], "done": [5, 14], "look": 5, "modifi": 5, "simpli": [5, 20], "net": 5, "edit": 5, "collect": [5, 15, 17, 21, 22], "semant": [5, 16, 18], "world": [6, 8], "littl": 6, "jitter": 6, "normal": 6, "linux": 6, "comput": [6, 12], "throughput": 6, "suit": 6, "attempt": [6, 20], "sched_fifo": 6, "prioriti": 6, "rt": 6, "permiss": 6, "syscal": 6, "easiest": [6, 14], "ubuntu": 6, "22": 6, "04": [6, 23], "lt": 6, "beta": 6, "blog": 6, "imag": 6, "amd64": 6, "debian": 6, "bullsey": 6, "startup": 6, "h": [6, 10, 14], "p": 6, "param_fil": 6, "controller_typ": 6, "timeout": [6, 10], "controller_manager_timeout": 6, "controller_nam": [6, 10, 14], "argument": [6, 10], "exit": [6, 10], "leav": 6, "unconfigur": [6, 9], "namespac": [6, 13, 14, 19, 20], "kill": [6, 10], "wait": [6, 10], "until": 6, "doxygen": 7, "fake": 7, "mirror": 8, "correspond": [8, 14, 23], "offlin": 8, "advantag": 8, "pipe": 8, "insid": 8, "broadcast": [8, 19], "even": 8, "debug": 8, "boost": 8, "mimic": 8, "offset": [8, 19, 20], "fake_sensor_command": 8, "boolean": [8, 19, 20], "fals": [8, 19, 20], "position_state_following_offset": 8, "custom_interface_with_following_offset": 8, "map": [8, 19, 20], "multipli": 8, "mimick": 8, "return_typ": [9, 14], "return": [9, 14, 19], "on_error": 9, "previous_st": 9, "success": [9, 14], "callbackreturn": 9, "again": [9, 11], "recov": 9, "reload": [9, 10], "substanti": 9, "renam": 9, "on_init": 9, "baseinterfac": 9, "remov": 9, "base_interfac": 9, "hpp": [9, 14], "hardware_interface_status_valu": 9, "rclcpp_lifecycl": [9, 14], "mai": [9, 15, 17, 21, 22], "strictli": 9, "last": [9, 14, 20], "status_": 9, "const": 9, "in_deactiv": 9, "undefin": 9, "refern": 9, "symbol": 9, "node_interfac": 9, "lifecyclenodeinterfac": 9, "rclcpp_lifecyl": 9, "cmakelist": [9, 14], "txt": [9, 14], "spin": 10, "spin_tim": 10, "hidden": 10, "discoveri": 10, "appli": 10, "alreadi": [10, 14, 20], "daemon": 10, "test_controller_nam": 10, "test_control": 10, "diffdrivecontrol": 10, "joint_state_control": 10, "jointstatecontrol": 10, "unclaim": [10, 11], "set_stat": 10, "adjust": 10, "strict": 10, "asap": 10, "switch_timeout": 10, "templat": [11, 14, 20], "demonstr": 11, "prove": 11, "comprehens": 11, "ros2_control_demo_bringup": 11, "gui": 11, "ros2_control_test_nod": 11, "rrbot_system_multi_interfac": 11, "py": 11, "list_hardware_interfac": 11, "load_control": 11, "forward_position_control": 11, "forward_velocity_control": 11, "forward_acceleration_control": 11, "forward_illegal1_control": 11, "forward_illegal2_control": 11, "joint_state_broadcast": 11, "set_controller_st": 11, "claim": 11, "now": [11, 14], "let": 11, "switch_control": 11, "inde": 11, "been": 11, "differenti": [12, 13, 23], "drive": [12, 13, 23], "bodi": 12, "translat": 12, "wheel": 12, "odometri": 12, "feedback": [12, 19, 20], "twist": 12, "x": [12, 16, 18], "linear": [12, 20], "z": [12, 16], "angular": 12, "ignor": [12, 20], "space": [12, 20], "sort": [13, 14], "accord": [13, 20], "position_control": [13, 20], "hw_if_posit": 13, "velocity_control": 13, "hw_if_veloc": 13, "effort_control": 13, "hw_if_acceler": 13, "hw_if_effort": 13, "interpol": [13, 20], "step": [14, 20, 23], "compil": 14, "rule": 14, "prepar": 14, "ament_cmak": 14, "search": 14, "recent": 14, "process": 14, "pkg": 14, "flag": [14, 20], "least": [14, 20], "package_nam": 14, "visibility_control": 14, "window": 14, "copi": 14, "prefix": [14, 16, 18], "guard": 14, "ifndef": 14, "preprocessor": 14, "engin": 14, "friend": 14, "uniqu": 14, "written": 14, "snake_cas": 14, "controllernam": 14, "public": 14, "overrid": 14, "exact": 14, "vector": 14, "store": 14, "simplifi": [14, 23], "further": 14, "parent": 14, "reserv": 14, "importantli": 14, "fine": 14, "ok": 14, "otherwis": [14, 19], "individu": 14, "none": [14, 19], "ask": [14, 19], "full": 14, "joint_nam": [14, 20], "interface_typ": 14, "assign": 14, "opposit": 14, "empti": 14, "constraint": [14, 20], "At": 14, "close": 14, "class_list_macro": 14, "controller_name_namespac": 14, "visibl": 14, "controller_name_packag": 14, "bottom": 14, "test_load_": 14, "content": 14, "specifi": [14, 20], "find_packag": 14, "rclcpp": 14, "directori": 14, "ament": 14, "cmake": 14, "pluginlib_export_plugin_description_fil": 14, "ament_cmake_gmock": 14, "ros2_control_test_asset": 14, "ament_add_gmock": 14, "ament_export_librari": 14, "ament_packag": 14, "test_depend": 14, "colcon": 14, "rememb": 14, "root": 14, "bash": 14, "enjoi": 14, "great": 14, "shell": 14, "certain": [15, 17, 21, 22], "achiev": [15, 17, 21, 22], "These": [15, 17, 21, 22], "geometry_msg": 16, "msg": [16, 18, 20], "wrenchstamp": 16, "wrapper": [16, 18], "forcetorquesensor": 16, "sensor_nam": [16, 18], "interface_nam": 16, "frame": [16, 18], "6d": 16, "ft": 16, "y": 16, "less": 16, "six": 16, "ax": 16, "example_nam": 16, "example_interfac": 16, "sensor_msg": 18, "imusensor": 18, "orient": 18, "angular_veloc": 18, "linear_acceler": 18, "joint_stat": 19, "dynamic_joint_st": 19, "By": [19, 20], "unless": 19, "latter": 19, "matrix": 19, "product": 19, "print": 19, "warn": 19, "use_local_top": 19, "my_state_broadcast": 19, "arrai": 19, "extra_joint": 19, "map_interface_to_joint_st": 19, "field": 19, "usecas": 19, "hydraul": [19, 20], "relianc": 19, "would": 19, "visual": 19, "robot_state_publish": 19, "rviz": 19, "techniqu": 19, "slightli": 19, "custom_interfac": 19, "kf_estimated_posit": 19, "derived_veloc": 19, "derived_effort": 19, "torque_sensor": 19, "current_sensor": 19, "reach": 20, "instant": 20, "mechan": 20, "spline": 20, "guarante": 20, "continu": 20, "discourag": 20, "becaus": 20, "yield": 20, "discontinu": 20, "cubic": 20, "quintic": 20, "pid": [20, 23], "similarli": 20, "eg": 20, "proxi": 20, "wrap": 20, "robust": 20, "clock": 20, "caus": 20, "queu": 20, "segment": 20, "ros__paramet": 20, "joint3": 20, "joint4": 20, "joint5": 20, "joint6": 20, "state_publish_r": 20, "action_monitor_r": 20, "20": 20, "allow_partial_joints_go": 20, "open_loop_control": 20, "true": 20, "stopped_velocity_toler": 20, "01": 20, "goal_tim": 20, "05": [20, 23], "03": 20, "monitor": 20, "action": 20, "control_msg": [20, 23], "followjointtrajectori": 20, "tri": 20, "numer": 20, "nan": 20, "std": 20, "numeric_limit": 20, "quiet_nan": 20, "toler": 20, "jointtrajectori": 20, "deviat": 20, "maxim": 20, "predefin": 20, "joint_trajectori": 20, "trajectory_msg": 20, "jointtrajectorycontrollerst": 20, "follow_joint_trajectori": 20, "server": 20, "position_velocity_control": 20, "position_velocity_acceleration_control": 20, "Not": 20, "yet": 20, "feedforward": 20, "term": [20, 23], "plu": 20, "171": 20, "Its": 23, "oper": 23, "overcom": 23, "idea": 23, "wide": 23, "toolkit": 23, "unreleas": 23, "smooth": 23, "doc": 23, "wg": 23, "meet": 23, "everi": 23, "wednesdai": 23, "join": 23, "announc": 23, "discours": 23, "googl": 23, "propos": 23, "previou": 23, "bug": 23, "tracker": 23, "minim": 23, "reproduc": 23, "regard": 23, "etc": 23, "question": 23, "answer": 23, "2024": 23, "08": 23, "31": 23, "built": 23, "gmt": 23}, "objects": {}, "objtypes": {}, "objnames": {}, "titleterms": {"acknowledg": 0, "pull": 1, "request": 1, "rule": 1, "repositori": [1, 11], "process": 1, "merg": 1, "write": [1, 9, 14], "document": [1, 7, 23], "structur": [1, 2], "ci": 1, "configur": 1, "differ": 2, "ros_control": 2, "ros1": [2, 4], "hardwar": [2, 3, 4, 9, 12, 15, 17, 19, 20, 21, 22], "class": 2, "interfac": [2, 3, 10, 12, 15, 17, 19, 20, 21, 22], "control": [2, 3, 4, 6, 13, 14, 20], "": [2, 20], "access": 2, "migrat": [2, 9], "guid": 2, "ros2_control": [2, 4, 13, 23], "robothardwar": 2, "compon": [2, 3, 4, 8, 9], "get": 3, "start": 3, "compil": 3, "architectur": 3, "manag": [3, 6], "resourc": [3, 5], "user": 3, "descript": 3, "urdf": 3, "run": 3, "framework": 3, "your": 3, "robot": [3, 5], "project": 4, "idea": 4, "gsoc": 4, "2022": [4, 5], "asynchron": 4, "tutori": 4, "demo": [4, 11], "mission": 4, "add": 4, "support": 4, "semant": 4, "featur": [4, 7, 12, 20], "pariti": 4, "from": [4, 9], "present": 5, "2023": 5, "02": 5, "ro": 5, "meetup": 5, "munich": 5, "5": 5, "12": 5, "industri": 5, "confer": 5, "10": 5, "roscon": 5, "06": 5, "fr": 5, "2021": 5, "world": 5, "07": 5, "weekli": 5, "13": 5, "rosdevdai": 5, "05": 5, "diagram": 5, "imag": 5, "determin": 6, "helper": 6, "script": 6, "spawner": 6, "unspawn": 6, "api": 7, "core": 7, "function": 7, "concept": 7, "fake": 8, "gener": 8, "system": 8, "paramet": [8, 16, 18, 19, 20], "per": 8, "joint": [8, 20], "handl": 9, "error": 9, "happen": 9, "dure": 9, "read": 9, "call": 9, "foxi": 9, "galact": [9, 23], "command": [10, 12, 19], "line": 10, "list_control": 10, "list_controller_typ": 10, "list_hardware_interfac": 10, "load_control": 10, "reload_controller_librari": 10, "set_controller_st": 10, "switch_control": 10, "unload_control": 10, "organ": 11, "mode": 11, "switch": 11, "diff_drive_control": 12, "veloc": 12, "type": [12, 15, 17, 19, 20, 21, 22], "other": [12, 20], "nomenclatur": 13, "guidelin": 13, "best": 13, "practic": 13, "avail": 13, "broadcast": [13, 16, 18], "new": 14, "us": [14, 20], "extern": 14, "refer": 14, "effort_control": 15, "forc": 16, "torqu": 16, "sensor": [16, 18], "forward_command_control": 17, "imu": 18, "joint_state_broadcast": 19, "joint_trajectory_control": 20, "trajectori": 20, "represent": 20, "detail": 20, "about": 20, "ros2": 20, "special": 20, "version": 20, "jointtrajectorycontrol": 20, "tbd": 20, "position_control": 21, "velocity_control": 22, "welcom": 23, "overview": 23, "develop": 23, "organis": 23, "commun": 23}, "envversion": {"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, "sphinx": 60}, "alltitles": {"Acknowledgements": [[0, "acknowledgements"]], "Pull Requests": [[1, "pull-requests"]], "Rules for the repositories and process of merging pull requests": [[1, "rules-for-the-repositories-and-process-of-merging-pull-requests"]], "Writing documentation": [[1, "writing-documentation"]], "Repository structure and CI configuration": [[1, "repository-structure-and-ci-configuration"]], "CI configuration": [[1, "ci-configuration"]], "Differences to ros_control (ROS1)": [[2, "differences-to-ros-control-ros1"]], "Hardware Structures - classes": [[2, "hardware-structures-classes"]], "Hardware Interfaces": [[2, "hardware-interfaces"]], "Controller\u2019s Access to Hardware": [[2, "controller-s-access-to-hardware"]], "Migration Guide to ros2_control": [[2, "migration-guide-to-ros2-control"]], "RobotHardware to Components": [[2, "robothardware-to-components"]], "Controller Migration": [[2, "controller-migration"]], "Getting Started": [[3, "getting-started"]], "Compiling": [[3, "compiling"]], "Architecture": [[3, "architecture"]], "Controller Manager": [[3, "controller-manager"], [6, "controller-manager"]], "Resource Manager": [[3, "resource-manager"]], "Controllers": [[3, "controllers"], [13, "id1"]], "User Interfaces": [[3, "user-interfaces"]], "Hardware Components": [[3, "hardware-components"], [9, "hardware-components"]], "Hardware Description in URDF": [[3, "hardware-description-in-urdf"]], "Running the Framework for Your Robot": [[3, "running-the-framework-for-your-robot"]], "Project Ideas for GSoC 2022": [[4, "project-ideas-for-gsoc-2022"]], "Asynchronous Control Components": [[4, "asynchronous-control-components"]], "Tutorials and Demos for ros2_control": [[4, "tutorials-and-demos-for-ros2-control"]], "Mission-Control for ros2_control": [[4, "mission-control-for-ros2-control"]], "Add support for hardware semantic components": [[4, "add-support-for-hardware-semantic-components"]], "Feature-parity for controllers from ROS1": [[4, "feature-parity-for-controllers-from-ros1"]], "Resources": [[5, "resources"]], "Presentations": [[5, "presentations"]], "2023-02 ROS Meetup Munich #5": [[5, "ros-meetup-munich-5"]], "2022-12 ROS-Industrial Conference 2022": [[5, "ros-industrial-conference-2022"]], "2022-10 ROSCon 2022": [[5, "roscon-2022"]], "2022-06 ROSCon Fr 2022": [[5, "roscon-fr-2022"]], "2021-10 ROS World 2021": [[5, "ros-world-2021"]], "2021-10-07 Weekly Robotics Meetup #13": [[5, "weekly-robotics-meetup-13"]], "2021-06 ROSDevDay 2021": [[5, "rosdevday-2021"]], "2021-05 ROSCon Fr 2021": [[5, "roscon-fr-2021"]], "Diagrams": [[5, "diagrams"]], "Images": [[5, "images"]], "Determinism": [[6, "determinism"]], "Helper scripts": [[6, "helper-scripts"]], "spawner": [[6, "spawner"]], "unspawner": [[6, "unspawner"]], "API Documentation": [[7, "api-documentation"]], "Core functionalities": [[7, "core-functionalities"]], "Features": [[7, "features"]], "Concepts": [[7, "concepts"]], "Fake Components": [[8, "fake-components"]], "Generic System": [[8, "generic-system"]], "Parameters": [[8, "parameters"], [16, "parameters"], [18, "parameters"], [19, "parameters"]], "Per-joint Parameters": [[8, "per-joint-parameters"]], "Handling of errors that happen during read() and write() calls": [[9, "handling-of-errors-that-happen-during-read-and-write-calls"]], "Migration from Foxy to Galactic": [[9, "migration-from-foxy-to-galactic"]], "Command Line Interface": [[10, "command-line-interface"]], "list_controllers": [[10, "list-controllers"]], "list_controller_types": [[10, "list-controller-types"]], "list_hardware_interfaces": [[10, "list-hardware-interfaces"]], "load_controller": [[10, "load-controller"]], "reload_controller_libraries": [[10, "reload-controller-libraries"]], "set_controller_state": [[10, "set-controller-state"]], "switch_controllers": [[10, "switch-controllers"]], "unload_controller": [[10, "unload-controller"]], "Demos": [[11, "demos"]], "Repository organization": [[11, "repository-organization"]], "Mode switching demo": [[11, "mode-switching-demo"]], "diff_drive_controller": [[12, "diff-drive-controller"]], "Velocity commands": [[12, "velocity-commands"]], "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"]], "Other features": [[12, "other-features"], [20, "other-features"]], "ros2_controllers": [[13, "ros2-controllers"]], "Nomenclature": [[13, "nomenclature"]], "Guidelines and Best Practices": [[13, "guidelines-and-best-practices"]], "Available Controllers": [[13, "available-controllers"]], "Available Broadcasters": [[13, "available-broadcasters"]], "Writing a new controller": [[14, "writing-a-new-controller"]], "Useful External References": [[14, "useful-external-references"]], "effort_controllers": [[15, "effort-controllers"]], "Force Torque Sensor Broadcaster": [[16, "force-torque-sensor-broadcaster"]], "forward_command_controller": [[17, "forward-command-controller"]], "IMU Sensor Broadcaster": [[18, "imu-sensor-broadcaster"]], "joint_state_broadcaster": [[19, "joint-state-broadcaster"]], "Commands": [[19, "commands"]], "joint_trajectory_controller": [[20, "joint-trajectory-controller"]], "Trajectory representation": [[20, "trajectory-representation"]], "Using Joint Trajectory Controller(s)": [[20, "using-joint-trajectory-controller-s"]], "Details about parameters": [[20, "details-about-parameters"]], "ROS2 interface of the controller": [[20, "ros2-interface-of-the-controller"]], "Specialized versions of JointTrajectoryController (TBD in \u2026)": [[20, "specialized-versions-of-jointtrajectorycontroller-tbd-in"]], "position_controllers": [[21, "position-controllers"]], "velocity_controllers": [[22, "velocity-controllers"]], "Welcome to the ros2_control documentation - Galactic!": [[23, "welcome-to-the-ros2-control-documentation-galactic"]], "Overview": [[23, "overview"]], "Development Organisation and Communication": [[23, "development-organisation-and-communication"]]}, "indexentries": {}}) \ No newline at end of file diff --git a/humble/.buildinfo b/humble/.buildinfo index 251b8c6cc73..7ff4853521b 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: d663f52c8f7f353b94604f0a0b61ae39 +config: 6e23c16c2dbec7caee2875d824a191e2 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/humble/.doctrees/doc/acknowledgements/acknowledgements.doctree b/humble/.doctrees/doc/acknowledgements/acknowledgements.doctree index f4f8c34b807..1e903353cc3 100644 Binary files a/humble/.doctrees/doc/acknowledgements/acknowledgements.doctree and b/humble/.doctrees/doc/acknowledgements/acknowledgements.doctree differ diff --git a/humble/.doctrees/doc/contributing/contributing.doctree b/humble/.doctrees/doc/contributing/contributing.doctree index 27ad7423362..548af2d9d8f 100644 Binary files a/humble/.doctrees/doc/contributing/contributing.doctree and b/humble/.doctrees/doc/contributing/contributing.doctree differ diff --git a/humble/.doctrees/doc/differences_to_ros1/differences_to_ros1.doctree b/humble/.doctrees/doc/differences_to_ros1/differences_to_ros1.doctree index 1831ddedfe9..ef9adcd6331 100644 Binary files a/humble/.doctrees/doc/differences_to_ros1/differences_to_ros1.doctree and b/humble/.doctrees/doc/differences_to_ros1/differences_to_ros1.doctree differ diff --git a/humble/.doctrees/doc/gazebo_ros2_control/doc/index.doctree b/humble/.doctrees/doc/gazebo_ros2_control/doc/index.doctree index c5bddcd93d5..7cd61f13095 100644 Binary files a/humble/.doctrees/doc/gazebo_ros2_control/doc/index.doctree and b/humble/.doctrees/doc/gazebo_ros2_control/doc/index.doctree differ diff --git a/humble/.doctrees/doc/getting_started/getting_started.doctree b/humble/.doctrees/doc/getting_started/getting_started.doctree index 2e32c80221d..71ec4e15b5c 100644 Binary files a/humble/.doctrees/doc/getting_started/getting_started.doctree and b/humble/.doctrees/doc/getting_started/getting_started.doctree differ diff --git a/humble/.doctrees/doc/gz_ros2_control/doc/index.doctree b/humble/.doctrees/doc/gz_ros2_control/doc/index.doctree index 42296d7f7bd..2eaede55680 100644 Binary files a/humble/.doctrees/doc/gz_ros2_control/doc/index.doctree and b/humble/.doctrees/doc/gz_ros2_control/doc/index.doctree differ diff --git a/humble/.doctrees/doc/project_ideas.doctree b/humble/.doctrees/doc/project_ideas.doctree index a7e8821d13e..3b0adddf74f 100644 Binary files a/humble/.doctrees/doc/project_ideas.doctree and b/humble/.doctrees/doc/project_ideas.doctree differ diff --git a/humble/.doctrees/doc/resources/resources.doctree b/humble/.doctrees/doc/resources/resources.doctree index 3ebd01b9e5a..acd0bc07c61 100644 Binary files a/humble/.doctrees/doc/resources/resources.doctree and b/humble/.doctrees/doc/resources/resources.doctree differ diff --git a/humble/.doctrees/doc/ros2_control/controller_manager/doc/controller_chaining.doctree b/humble/.doctrees/doc/ros2_control/controller_manager/doc/controller_chaining.doctree index d92c04a62eb..440bede8a71 100644 Binary files a/humble/.doctrees/doc/ros2_control/controller_manager/doc/controller_chaining.doctree and b/humble/.doctrees/doc/ros2_control/controller_manager/doc/controller_chaining.doctree differ 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 eb85b18f17c..8bfbf711241 100644 Binary files a/humble/.doctrees/doc/ros2_control/controller_manager/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control/controller_manager/doc/userdoc.doctree differ diff --git a/humble/.doctrees/doc/ros2_control/doc/index.doctree b/humble/.doctrees/doc/ros2_control/doc/index.doctree index 296e334d345..bfec70f0076 100644 Binary files a/humble/.doctrees/doc/ros2_control/doc/index.doctree and b/humble/.doctrees/doc/ros2_control/doc/index.doctree differ 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 e4fcf746a86..0c76d924f74 100644 Binary files a/humble/.doctrees/doc/ros2_control/hardware_interface/doc/different_update_rates_userdoc.doctree and b/humble/.doctrees/doc/ros2_control/hardware_interface/doc/different_update_rates_userdoc.doctree differ 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 017eef36f86..0455dd9e710 100644 Binary files a/humble/.doctrees/doc/ros2_control/hardware_interface/doc/hardware_components_userdoc.doctree and b/humble/.doctrees/doc/ros2_control/hardware_interface/doc/hardware_components_userdoc.doctree differ 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 f379279feaf..2d4c0588307 100644 Binary files a/humble/.doctrees/doc/ros2_control/hardware_interface/doc/hardware_interface_types_userdoc.doctree and b/humble/.doctrees/doc/ros2_control/hardware_interface/doc/hardware_interface_types_userdoc.doctree differ 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 5c08f5f3fc1..567a204a5c3 100644 Binary files a/humble/.doctrees/doc/ros2_control/hardware_interface/doc/mock_components_userdoc.doctree and b/humble/.doctrees/doc/ros2_control/hardware_interface/doc/mock_components_userdoc.doctree differ 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 2848cda52d7..fb74ca89d92 100644 Binary files a/humble/.doctrees/doc/ros2_control/hardware_interface/doc/writing_new_hardware_component.doctree and b/humble/.doctrees/doc/ros2_control/hardware_interface/doc/writing_new_hardware_component.doctree differ diff --git a/humble/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree index 62553d49f7f..80e5570fb13 100644 Binary files a/humble/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control/ros2controlcli/doc/userdoc.doctree differ diff --git a/humble/.doctrees/doc/ros2_control_demos/doc/index.doctree b/humble/.doctrees/doc/ros2_control_demos/doc/index.doctree index 745a20132e6..6c94f39ffe3 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/doc/index.doctree and b/humble/.doctrees/doc/ros2_control_demos/doc/index.doctree differ 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 cafcd6e3d37..bd647647a39 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/doc/run_from_docker.doctree and b/humble/.doctrees/doc/ros2_control_demos/doc/run_from_docker.doctree differ 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 8d3a4769c4e..185a65378b1 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/example_1/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control_demos/example_1/doc/userdoc.doctree differ diff --git a/humble/.doctrees/doc/ros2_control_demos/example_10/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_10/doc/userdoc.doctree index 23283d26269..c1cec399df3 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/example_10/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control_demos/example_10/doc/userdoc.doctree differ 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 a56e0f19be5..654039de071 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/example_11/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control_demos/example_11/doc/userdoc.doctree differ 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 c71866ca25a..04d213962f5 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/example_12/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control_demos/example_12/doc/userdoc.doctree differ 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 614c4b795e4..7fb5ebb3021 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/example_14/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control_demos/example_14/doc/userdoc.doctree differ diff --git a/humble/.doctrees/doc/ros2_control_demos/example_2/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_2/doc/userdoc.doctree index 22fd4f94899..52311e4d8ff 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/example_2/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control_demos/example_2/doc/userdoc.doctree differ 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 639fe1dd954..6218f044348 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/example_3/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control_demos/example_3/doc/userdoc.doctree differ 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 022d8615225..c532ef5a56b 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/example_4/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control_demos/example_4/doc/userdoc.doctree differ 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 765557a3a57..ff605629264 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/example_5/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control_demos/example_5/doc/userdoc.doctree differ 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 f97ec850d42..2621ad4d5fa 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/example_6/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control_demos/example_6/doc/userdoc.doctree differ diff --git a/humble/.doctrees/doc/ros2_control_demos/example_7/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_control_demos/example_7/doc/userdoc.doctree index 3ed5e82795f..15aa102a9d1 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/example_7/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control_demos/example_7/doc/userdoc.doctree differ 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 697e269e820..064e4ec1eee 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/example_8/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control_demos/example_8/doc/userdoc.doctree differ 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 5a266bc50de..3591b41d596 100644 Binary files a/humble/.doctrees/doc/ros2_control_demos/example_9/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_control_demos/example_9/doc/userdoc.doctree differ 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 0507f96299b..51f35698fd8 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/ackermann_steering_controller/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/ackermann_steering_controller/doc/userdoc.doctree differ 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 c76c655a595..a54cc9a3fba 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/admittance_controller/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/admittance_controller/doc/userdoc.doctree differ 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 76d586c2fdf..95c1b1e7847 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/bicycle_steering_controller/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/bicycle_steering_controller/doc/userdoc.doctree differ 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 63acc0619f7..c61ba7e7117 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/diff_drive_controller/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/diff_drive_controller/doc/userdoc.doctree differ diff --git a/humble/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree b/humble/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree index eac60527ea1..0cad3f31e32 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree and b/humble/.doctrees/doc/ros2_controllers/doc/controllers_index.doctree differ 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 4561dc49cc1..336d45b1426 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/doc/writing_new_controller.doctree and b/humble/.doctrees/doc/ros2_controllers/doc/writing_new_controller.doctree differ 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 c41d6f49732..c30689cc2ae 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/effort_controllers/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/effort_controllers/doc/userdoc.doctree differ 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 64f8410ce3a..965ec89e39e 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/force_torque_sensor_broadcaster/doc/userdoc.doctree differ diff --git a/humble/.doctrees/doc/ros2_controllers/forward_command_controller/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/forward_command_controller/doc/userdoc.doctree index 2c82063fc20..975b014f677 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/forward_command_controller/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/forward_command_controller/doc/userdoc.doctree differ 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 aa8865f33e1..677258c2c42 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/gripper_controllers/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/gripper_controllers/doc/userdoc.doctree differ 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 b68400c180f..aa6f0f283c1 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/imu_sensor_broadcaster/doc/userdoc.doctree differ diff --git a/humble/.doctrees/doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.doctree b/humble/.doctrees/doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.doctree index 06b7abf963b..e17939946ca 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/joint_state_broadcaster/doc/userdoc.doctree differ diff --git a/humble/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/parameters.doctree b/humble/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/parameters.doctree index 49c25d84583..368931fbccb 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/parameters.doctree and b/humble/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/parameters.doctree differ 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 b1092ead2e7..7418f6a49b3 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/trajectory.doctree and b/humble/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/trajectory.doctree differ 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 e5b6b74fd36..d31d27ffab4 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/joint_trajectory_controller/doc/userdoc.doctree differ 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 a71af7da658..3704c21d584 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/position_controllers/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/position_controllers/doc/userdoc.doctree differ 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 eb0efc44cb0..b4e28ad69dd 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/range_sensor_broadcaster/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/range_sensor_broadcaster/doc/userdoc.doctree differ 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 315beed0928..629a74bcabb 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/rqt_joint_trajectory_controller/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/rqt_joint_trajectory_controller/doc/userdoc.doctree differ 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 c3cd1d63648..00fbf9cabd9 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/steering_controllers_library/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/steering_controllers_library/doc/userdoc.doctree differ 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 3d220d718b0..11b410457dd 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/tricycle_controller/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/tricycle_controller/doc/userdoc.doctree differ 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 8ab890f6ff5..4c91a8f69d4 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/tricycle_steering_controller/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/tricycle_steering_controller/doc/userdoc.doctree differ 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 29542aa1b4e..5f556dcad2f 100644 Binary files a/humble/.doctrees/doc/ros2_controllers/velocity_controllers/doc/userdoc.doctree and b/humble/.doctrees/doc/ros2_controllers/velocity_controllers/doc/userdoc.doctree differ diff --git a/humble/.doctrees/doc/simulators/simulators.doctree b/humble/.doctrees/doc/simulators/simulators.doctree index 97f7e50485b..a27df7f7af9 100644 Binary files a/humble/.doctrees/doc/simulators/simulators.doctree and b/humble/.doctrees/doc/simulators/simulators.doctree differ diff --git a/humble/.doctrees/doc/supported_robots/supported_robots.doctree b/humble/.doctrees/doc/supported_robots/supported_robots.doctree index e5f133029e3..65c6749ac93 100644 Binary files a/humble/.doctrees/doc/supported_robots/supported_robots.doctree and b/humble/.doctrees/doc/supported_robots/supported_robots.doctree differ diff --git a/humble/.doctrees/environment.pickle b/humble/.doctrees/environment.pickle index 70dd7bea7db..56f0df2a449 100644 Binary files a/humble/.doctrees/environment.pickle and b/humble/.doctrees/environment.pickle differ diff --git a/humble/.doctrees/index.doctree b/humble/.doctrees/index.doctree index 867223b3bf6..894014a9f90 100644 Binary files a/humble/.doctrees/index.doctree and b/humble/.doctrees/index.doctree differ diff --git a/humble/doc/acknowledgements/acknowledgements.html b/humble/doc/acknowledgements/acknowledgements.html index 3ea1346a4d4..dcd53fa324d 100644 --- a/humble/doc/acknowledgements/acknowledgements.html +++ b/humble/doc/acknowledgements/acknowledgements.html @@ -223,7 +223,7 @@