From 03cd7539081856be242b883cc750fce6c9d9bea4 Mon Sep 17 00:00:00 2001 From: mhubii Date: Sat, 19 Oct 2024 10:55:31 +0100 Subject: [PATCH] humble -> rolling, ubuntu 22.04 -> 24.04 (#180) --- .github/CONTRIBUTING.md | 2 +- ...11.yml => build-ubuntu-24.04-fri-1.11.yml} | 6 +-- ...14.yml => build-ubuntu-24.04-fri-1.14.yml} | 6 +-- ...15.yml => build-ubuntu-24.04-fri-1.15.yml} | 6 +-- ...16.yml => build-ubuntu-24.04-fri-1.16.yml} | 6 +-- ...2.5.yml => build-ubuntu-24.04-fri-2.5.yml} | 6 +-- ...2.7.yml => build-ubuntu-24.04-fri-2.7.yml} | 6 +-- .github/workflows/build.yml | 4 +- README.md | 26 ++++++------ docker/Dockerfile | 2 +- docker/doc/docker.rst | 2 +- lbr_bringup/config/moveit_servo.yaml | 41 +++++++------------ lbr_bringup/doc/lbr_bringup.rst | 12 +++--- .../doc/lbr_demos_advanced_cpp.rst | 10 ++--- .../doc/lbr_demos_advanced_py.rst | 12 +++--- lbr_demos/lbr_demos_cpp/doc/lbr_demos_cpp.rst | 24 +++++------ lbr_demos/lbr_demos_py/doc/lbr_demos_py.rst | 24 +++++------ lbr_demos/lbr_moveit/doc/lbr_moveit.rst | 12 +++--- .../lbr_moveit_cpp/doc/lbr_moveit_cpp.rst | 10 ++--- lbr_fri_ros2_stack/repos-fri-1.11.yaml | 2 +- lbr_fri_ros2_stack/repos-fri-1.14.yaml | 2 +- lbr_fri_ros2_stack/repos-fri-1.15.yaml | 2 +- lbr_fri_ros2_stack/repos-fri-1.16.yaml | 2 +- lbr_fri_ros2_stack/repos-fri-2.5.yaml | 2 +- lbr_fri_ros2_stack/repos-fri-2.7.yaml | 2 +- lbr_moveit_config/doc/lbr_moveit_config.rst | 6 +-- lbr_ros2_control/doc/lbr_ros2_control.rst | 12 +++--- 27 files changed, 118 insertions(+), 129 deletions(-) rename .github/workflows/{build-ubuntu-22.04-fri-1.11.yml => build-ubuntu-24.04-fri-1.11.yml} (71%) rename .github/workflows/{build-ubuntu-22.04-fri-1.14.yml => build-ubuntu-24.04-fri-1.14.yml} (71%) rename .github/workflows/{build-ubuntu-22.04-fri-1.15.yml => build-ubuntu-24.04-fri-1.15.yml} (71%) rename .github/workflows/{build-ubuntu-22.04-fri-1.16.yml => build-ubuntu-24.04-fri-1.16.yml} (71%) rename .github/workflows/{build-ubuntu-22.04-fri-2.5.yml => build-ubuntu-24.04-fri-2.5.yml} (71%) rename .github/workflows/{build-ubuntu-22.04-fri-2.7.yml => build-ubuntu-24.04-fri-2.7.yml} (71%) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 5310de88..e9e31d2c 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -13,7 +13,7 @@ Contributions are vital to this project. If you want to contribute a feature / f 1. Open an issue: - Explain the issue and your solution - - Request a new branch: `dev--`, e.g. `dev-humble-my-new-demo` + - Request a new branch: `dev--`, e.g. `dev-rolling-my-new-demo` 2. Fork this repository 3. Create a [pull request](https://github.com/lbr-stack/lbr_fri_ros2_stack/pulls) against `dev--` diff --git a/.github/workflows/build-ubuntu-22.04-fri-1.11.yml b/.github/workflows/build-ubuntu-24.04-fri-1.11.yml similarity index 71% rename from .github/workflows/build-ubuntu-22.04-fri-1.11.yml rename to .github/workflows/build-ubuntu-24.04-fri-1.11.yml index 1f105d60..3de0799f 100644 --- a/.github/workflows/build-ubuntu-22.04-fri-1.11.yml +++ b/.github/workflows/build-ubuntu-24.04-fri-1.11.yml @@ -1,8 +1,8 @@ -name: build-ubuntu-22.04-fri-1.11 +name: ubuntu-24.04-fri-1.11 on: pull_request: branches: - - humble + - rolling workflow_dispatch: schedule: - cron: "0 0 * * 0" @@ -11,5 +11,5 @@ jobs: build: uses: ./.github/workflows/build.yml with: - os: ubuntu-22.04 + os: ubuntu-24.04 fri_version: 1.11 diff --git a/.github/workflows/build-ubuntu-22.04-fri-1.14.yml b/.github/workflows/build-ubuntu-24.04-fri-1.14.yml similarity index 71% rename from .github/workflows/build-ubuntu-22.04-fri-1.14.yml rename to .github/workflows/build-ubuntu-24.04-fri-1.14.yml index 0dbb74c9..c85da043 100644 --- a/.github/workflows/build-ubuntu-22.04-fri-1.14.yml +++ b/.github/workflows/build-ubuntu-24.04-fri-1.14.yml @@ -1,8 +1,8 @@ -name: build-ubuntu-22.04-fri-1.14 +name: ubuntu-24.04-fri-1.14 on: pull_request: branches: - - humble + - rolling workflow_dispatch: schedule: - cron: "0 0 * * 0" @@ -11,5 +11,5 @@ jobs: build: uses: ./.github/workflows/build.yml with: - os: ubuntu-22.04 + os: ubuntu-24.04 fri_version: 1.14 diff --git a/.github/workflows/build-ubuntu-22.04-fri-1.15.yml b/.github/workflows/build-ubuntu-24.04-fri-1.15.yml similarity index 71% rename from .github/workflows/build-ubuntu-22.04-fri-1.15.yml rename to .github/workflows/build-ubuntu-24.04-fri-1.15.yml index 7842296c..5ec898dc 100644 --- a/.github/workflows/build-ubuntu-22.04-fri-1.15.yml +++ b/.github/workflows/build-ubuntu-24.04-fri-1.15.yml @@ -1,8 +1,8 @@ -name: build-ubuntu-22.04-fri-1.15 +name: ubuntu-24.04-fri-1.15 on: pull_request: branches: - - humble + - rolling workflow_dispatch: schedule: - cron: "0 0 * * 0" @@ -11,5 +11,5 @@ jobs: build: uses: ./.github/workflows/build.yml with: - os: ubuntu-22.04 + os: ubuntu-24.04 fri_version: 1.15 diff --git a/.github/workflows/build-ubuntu-22.04-fri-1.16.yml b/.github/workflows/build-ubuntu-24.04-fri-1.16.yml similarity index 71% rename from .github/workflows/build-ubuntu-22.04-fri-1.16.yml rename to .github/workflows/build-ubuntu-24.04-fri-1.16.yml index 2d45ee57..855eb38c 100644 --- a/.github/workflows/build-ubuntu-22.04-fri-1.16.yml +++ b/.github/workflows/build-ubuntu-24.04-fri-1.16.yml @@ -1,8 +1,8 @@ -name: build-ubuntu-22.04-fri-1.16 +name: ubuntu-24.04-fri-1.16 on: pull_request: branches: - - humble + - rolling workflow_dispatch: schedule: - cron: "0 0 * * 0" @@ -11,5 +11,5 @@ jobs: build: uses: ./.github/workflows/build.yml with: - os: ubuntu-22.04 + os: ubuntu-24.04 fri_version: 1.16 diff --git a/.github/workflows/build-ubuntu-22.04-fri-2.5.yml b/.github/workflows/build-ubuntu-24.04-fri-2.5.yml similarity index 71% rename from .github/workflows/build-ubuntu-22.04-fri-2.5.yml rename to .github/workflows/build-ubuntu-24.04-fri-2.5.yml index de3e3a82..8068003e 100644 --- a/.github/workflows/build-ubuntu-22.04-fri-2.5.yml +++ b/.github/workflows/build-ubuntu-24.04-fri-2.5.yml @@ -1,8 +1,8 @@ -name: build-ubuntu-22.04-fri-2.5 +name: ubuntu-24.04-fri-2.5 on: pull_request: branches: - - humble + - rolling workflow_dispatch: schedule: - cron: "0 0 * * 0" @@ -11,5 +11,5 @@ jobs: build: uses: ./.github/workflows/build.yml with: - os: ubuntu-22.04 + os: ubuntu-24.04 fri_version: 2.5 diff --git a/.github/workflows/build-ubuntu-22.04-fri-2.7.yml b/.github/workflows/build-ubuntu-24.04-fri-2.7.yml similarity index 71% rename from .github/workflows/build-ubuntu-22.04-fri-2.7.yml rename to .github/workflows/build-ubuntu-24.04-fri-2.7.yml index 71c65ae1..284fd789 100644 --- a/.github/workflows/build-ubuntu-22.04-fri-2.7.yml +++ b/.github/workflows/build-ubuntu-24.04-fri-2.7.yml @@ -1,8 +1,8 @@ -name: build-ubuntu-22.04-fri-2.7 +name: ubuntu-24.04-fri-2.7 on: pull_request: branches: - - humble + - rolling workflow_dispatch: schedule: - cron: "0 0 * * 0" @@ -11,5 +11,5 @@ jobs: build: uses: ./.github/workflows/build.yml with: - os: ubuntu-22.04 + os: ubuntu-24.04 fri_version: 2.7 diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ea5e4e11..cb223e18 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -20,5 +20,5 @@ jobs: - uses: ros-tooling/action-ros-ci@v0.2 with: package-name: lbr_fri_ros2_stack - target-ros2-distro: humble - vcs-repo-file-url: https://raw.githubusercontent.com/lbr-stack/lbr_fri_ros2_stack/humble/lbr_fri_ros2_stack/repos-fri-${{ inputs.fri_version }}.yaml + target-ros2-distro: rolling + vcs-repo-file-url: https://raw.githubusercontent.com/lbr-stack/lbr_fri_ros2_stack/rolling/lbr_fri_ros2_stack/repos-fri-${{ inputs.fri_version }}.yaml diff --git a/README.md b/README.md index 612c46f1..6a8dd0d3 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # lbr_fri_ros2_stack -[![License](https://img.shields.io/github/license/lbr-stack/lbr_fri_ros2_stack)](https://github.com/lbr-stack/lbr_fri_ros2_stack/tree/humble?tab=Apache-2.0-1-ov-file#readme) +[![License](https://img.shields.io/github/license/lbr-stack/lbr_fri_ros2_stack)](https://github.com/lbr-stack/lbr_fri_ros2_stack/tree/rolling?tab=Apache-2.0-1-ov-file#readme) [![Documentation Status](https://readthedocs.org/projects/lbr-stack/badge/?version=latest)](https://lbr-stack.readthedocs.io/en/latest/?badge=latest) [![JOSS](https://joss.theoj.org/papers/c43c82bed833c02503dd47f2637192ef/status.svg)](https://joss.theoj.org/papers/c43c82bed833c02503dd47f2637192ef) [![Code Style: Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) @@ -15,10 +15,10 @@ ROS 2 packages for the KUKA LBR, including communication to the real robot via t LBR Med 14 R820 - LBR IIWA 7 R800 - LBR IIWA 14 R820 - LBR Med 7 R800 - LBR Med 14 R820 + LBR IIWA 7 R800 + LBR IIWA 14 R820 + LBR Med 7 R800 + LBR Med 14 R820 @@ -26,12 +26,12 @@ ROS 2 packages for the KUKA LBR, including communication to the real robot via t ## Status | OS | ROS Distribution | FRI Version | Build Status | | :------------- | :--------------- | :---------- | :----------- | -| `Ubuntu-22.04` | `humble` | `1.11` | [![build-ubuntu-22.04-fri-1.11](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-22.04-fri-1.11.yml/badge.svg)](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-22.04-fri-1.11.yml) | -| `Ubuntu-22.04` | `humble` | `1.14` | [![build-ubuntu-22.04-fri-1.14](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-22.04-fri-1.14.yml/badge.svg)](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-22.04-fri-1.14.yml) | -| `Ubuntu-22.04` | `humble` | `1.15` | [![build-ubuntu-22.04-fri-1.15](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-22.04-fri-1.15.yml/badge.svg)](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-22.04-fri-1.15.yml) | -| `Ubuntu-22.04` | `humble` | `1.16` | [![build-ubuntu-22.04-fri-1.16](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-22.04-fri-1.16.yml/badge.svg)](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-22.04-fri-1.16.yml) | -| `Ubuntu-22.04` | `humble` | `2.5` | [![build-ubuntu-22.04-fri-2.5](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-22.04-fri-2.5.yml/badge.svg)](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-22.04-fri-2.5.yml) | -| `Ubuntu-22.04` | `humble` | `2.7` | [![build-ubuntu-22.04-fri-2.7](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-22.04-fri-2.7.yml/badge.svg)](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-22.04-fri-2.7.yml) | +| `Ubuntu-24.04` | `rolling` | `1.11` | [![ubuntu-24.04-fri-1.11](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-24.04-fri-1.11.yml/badge.svg)](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-24.04-fri-1.11.yml) | +| `Ubuntu-24.04` | `rolling` | `1.14` | [![ubuntu-24.04-fri-1.14](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-24.04-fri-1.14.yml/badge.svg)](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-24.04-fri-1.14.yml) | +| `Ubuntu-24.04` | `rolling` | `1.15` | [![ubuntu-24.04-fri-1.15](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-24.04-fri-1.15.yml/badge.svg)](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-24.04-fri-1.15.yml) | +| `Ubuntu-24.04` | `rolling` | `1.16` | [![ubuntu-24.04-fri-1.16](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-24.04-fri-1.16.yml/badge.svg)](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-24.04-fri-1.16.yml) | +| `Ubuntu-24.04` | `rolling` | `2.5` | [![ubuntu-24.04-fri-2.5](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-24.04-fri-2.5.yml/badge.svg)](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-24.04-fri-2.5.yml) | +| `Ubuntu-24.04` | `rolling` | `2.7` | [![ubuntu-24.04-fri-2.7](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-24.04-fri-2.7.yml/badge.svg)](https://github.com/lbr-stack/lbr_fri_ros2_stack/actions/workflows/build-ubuntu-24.04-fri-2.7.yml) | ## Documentation Full documentation available on [Read the Docs](https://lbr-stack.readthedocs.io/en/latest). @@ -46,10 +46,10 @@ Full documentation available on [Read the Docs](https://lbr-stack.readthedocs.io 2. Create a workspace, clone, and install dependencies ```shell - source /opt/ros/humble/setup.bash + source /opt/ros/rolling/setup.bash export FRI_CLIENT_VERSION=1.15 mkdir -p lbr-stack/src && cd lbr-stack - vcs import src --input https://raw.githubusercontent.com/lbr-stack/lbr_fri_ros2_stack/humble/lbr_fri_ros2_stack/repos-fri-${FRI_CLIENT_VERSION}.yaml + vcs import src --input https://raw.githubusercontent.com/lbr-stack/lbr_fri_ros2_stack/rolling/lbr_fri_ros2_stack/repos-fri-${FRI_CLIENT_VERSION}.yaml rosdep install --from-paths src -i -r -y ``` diff --git a/docker/Dockerfile b/docker/Dockerfile index 7c660dbe..2d0c3e42 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,4 +1,4 @@ -FROM ros:humble-ros-base-jammy +FROM ros:rolling-ros-base-jammy # change default shell to bash SHELL ["/bin/bash", "-c"] diff --git a/docker/doc/docker.rst b/docker/doc/docker.rst index 53803077..2d32e9b8 100644 --- a/docker/doc/docker.rst +++ b/docker/doc/docker.rst @@ -14,7 +14,7 @@ To run the ``lbr_fri_ros2_stack`` in a Docker container, follow the instructions export FRI_CLIENT_VERSION=1.15 # replace by your FRI client version mkdir -p lbr-stack/src && cd lbr-stack - vcs import src --input https://raw.githubusercontent.com/lbr-stack/lbr_fri_ros2_stack/humble/lbr_fri_ros2_stack/repos-fri-${FRI_CLIENT_VERSION}.yaml + vcs import src --input https://raw.githubusercontent.com/lbr-stack/lbr_fri_ros2_stack/rolling/lbr_fri_ros2_stack/repos-fri-${FRI_CLIENT_VERSION}.yaml #. Install `Docker `_:octicon:`link-external`. diff --git a/lbr_bringup/config/moveit_servo.yaml b/lbr_bringup/config/moveit_servo.yaml index 9d292fba..f78fb770 100644 --- a/lbr_bringup/config/moveit_servo.yaml +++ b/lbr_bringup/config/moveit_servo.yaml @@ -1,25 +1,21 @@ # Please do e.g. refer to -# - https://github.com/moveit/moveit2/blob/humble/moveit_ros/moveit_servo/config/panda_simulated_config.yaml -# - https://github.com/moveit/moveit2/blob/humble/moveit_ros/moveit_servo/config/panda_simulated_config_pose_tracking.yaml +# - https://github.com/moveit/moveit2/blob/main/moveit_ros/moveit_servo/config/test_config_panda.yaml +# - https://github.com/moveit/moveit2/blob/main/moveit_ros/moveit_servo/config/panda_simulated_config.yaml /**/servo_node: ros__parameters: moveit_servo: - ## Properties of incoming commands - command_in_type: "unitless" # "unitless"> in the range [-1:1], as if from joystick. "speed_units"> cmds are in m/s and rad/s + ## Properties of outgoing commands + publish_period: 0.005 # 1/controller manager update rate [seconds] + + incoming_command_timeout: 0.5 # seconds + command_in_type: "unitless" # "unitless" in the range [-1:1], as if from joystick. "speed_units" cmds are in m/s and rad/s scale: # Scale parameters are only used if command_in_type=="unitless" - linear: 0.4 # Max linear velocity. Unit is [m/s]. Only used for Cartesian commands. - rotational: 0.8 # Max angular velocity. Unit is [rad/s]. Only used for Cartesian commands. + linear: 0.2 # Max linear velocity. Unit is [m/s]. Only used for Cartesian commands. + rotational: 0.2 # Max angular velocity. Unit is [rad/s]. Only used for Cartesian commands. # Max joint angular/linear velocity. Only used for joint commands on joint_command_in_topic. joint: 0.5 - # Optionally override Servo's internal velocity scaling when near singularity or collision (0.0 = use internal velocity scaling) - # override_velocity_scaling_factor = 0.0 # valid range [0.0:1.0] - - ## Properties of outgoing commands - publish_period: 0.005 # #1/controller manager update rate [seconds] - low_latency_mode: false # Set this to true to publish as soon as an incoming Twist command is received (publish_period is ignored) - # What type of topic does your robot driver expect? # Currently supported are std_msgs/Float64MultiArray or trajectory_msgs/JointTrajectory command_out_type: std_msgs/Float64MultiArray @@ -30,6 +26,7 @@ publish_joint_accelerations: false ## Plugins for smoothing outgoing commands + use_smoothing: true smoothing_filter_plugin_name: "online_signal_smoothing::ButterworthFilterPlugin" # If is_primary_planning_scene_monitor is set to true, the Servo server's PlanningScene advertises the /get_planning_scene service, @@ -40,23 +37,15 @@ ## MoveIt properties move_group_name: arm # Often 'manipulator' or 'arm' - planning_frame: link_0 # The MoveIt planning frame. Often 'base_link' or 'world' - - ## Other frames - ee_frame_name: link_ee # The name of the end effector link, used to return the EE pose - robot_link_command_frame: link_0 # commands must be given in the frame of a robot link. Usually either the base or end effector - - ## Stopping behaviour - incoming_command_timeout: 0.1 # Stop servoing if X seconds elapse without a new command - # If 0, republish commands forever even if the robot is stationary. Otherwise, specify num. to publish. - # Important because ROS may drop some messages and we need the robot to halt reliably. - num_outgoing_halt_msgs_to_publish: 4 ## Configure handling of singularities and joint limits lower_singularity_threshold: 17.0 # Start decelerating when the condition number hits this (close to singularity) hard_stop_singularity_threshold: 30.0 # Stop when the condition number hits this - joint_limit_margin: 0.1 # added as a buffer to joint limits [radians]. If moving quickly, make this larger. - leaving_singularity_threshold_multiplier: 2.0 # Multiply the hard stop limit by this when leaving singularity (see https://github.com/ros-planning/moveit2/pull/620) + leaving_singularity_threshold_multiplier: 2.0 # Multiply the hard stop limit by this when leaving singularity (see https://github.com/moveit/moveit2/pull/620) + # Added as a buffer to joint variable position bounds [in that joint variable's respective units]. + # Can be of size 1, which applies the margin to all joints, or the same size as the number of degrees of freedom of the active joint group. + # If moving quickly, make these values larger. + joint_limit_margins: [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1] ## Topic names cartesian_command_in_topic: ~/delta_twist_cmds # Topic for incoming Cartesian twist commands diff --git a/lbr_bringup/doc/lbr_bringup.rst b/lbr_bringup/doc/lbr_bringup.rst index da2c79d5..7493620c 100644 --- a/lbr_bringup/doc/lbr_bringup.rst +++ b/lbr_bringup/doc/lbr_bringup.rst @@ -36,7 +36,7 @@ Launch Files ------------ Mock Setup ~~~~~~~~~~ -Useful for running a physics-free simulation of the system. This launch file will (see `mock.launch.py `_:octicon:`link-external`): +Useful for running a physics-free simulation of the system. This launch file will (see `mock.launch.py `_:octicon:`link-external`): #. Run the ``robot_state_publisher`` #. Run the ``ros2_control_node`` with mock components as loaded from ``robot_description`` @@ -52,7 +52,7 @@ Useful for running a physics-free simulation of the system. This launch file wil Gazebo Simulation ~~~~~~~~~~~~~~~~~ -Useful for running a physics simulation the the system. This launch file will will (see `gazebo.launch.py `_:octicon:`link-external`): +Useful for running a physics simulation the the system. This launch file will will (see `gazebo.launch.py `_:octicon:`link-external`): #. Start the ``robot_state_publisher`` #. Start the ``Gazebo`` simulation @@ -90,7 +90,7 @@ Hardware #. Launch file: - This launch file will (see `hardware.launch.py `_:octicon:`link-external`): + This launch file will (see `hardware.launch.py `_:octicon:`link-external`): #. Run the ``robot_state_publisher`` #. Run the ``ros2_control_node`` with the ``lbr_fri_ros2::SystemInterface`` plugin from :doc:`lbr_ros2_control <../../lbr_ros2_control/doc/lbr_ros2_control>` as loaded from ``robot_description`` (which will attempt to establish a connection to the real robot). @@ -106,7 +106,7 @@ Hardware RViz ~~~~ -This launch file will spin up ``RViz`` for visualization. It will (see `rviz.launch.py `_:octicon:`link-external`): +This launch file will spin up ``RViz`` for visualization. It will (see `rviz.launch.py `_:octicon:`link-external`): #. Read ``RViz`` configurations. #. Run ``RViz``. @@ -144,7 +144,7 @@ Mixins ------ The ``lbr_bringup`` package makes heavy use of mixins. Mixins are simply state-free classes with static methods. They are a convenient way of writing launch files. -The below shows an example of the `rviz.launch.py `_:octicon:`link-external` file: +The below shows an example of the `rviz.launch.py `_:octicon:`link-external` file: .. code:: python @@ -183,5 +183,5 @@ Troubleshooting --------------- Noisy Execution ~~~~~~~~~~~~~~~ -- Frequency: Make sure the ``ros2_control_node`` frequency and the ``FRI send period`` are compatible, consider changing ``update_rate`` in `lbr_controllers.yaml `_:octicon:`link-external`. +- Frequency: Make sure the ``ros2_control_node`` frequency and the ``FRI send period`` are compatible, consider changing ``update_rate`` in `lbr_controllers.yaml `_:octicon:`link-external`. - Realtime priority: Set real time priority in ``code /etc/security/limits.conf``, add the line: ``user - rtprio 99``, where user is your username. diff --git a/lbr_demos/lbr_demos_advanced_cpp/doc/lbr_demos_advanced_cpp.rst b/lbr_demos/lbr_demos_advanced_cpp/doc/lbr_demos_advanced_cpp.rst index 2cd26566..eb08980a 100644 --- a/lbr_demos/lbr_demos_advanced_cpp/doc/lbr_demos_advanced_cpp.rst +++ b/lbr_demos/lbr_demos_advanced_cpp/doc/lbr_demos_advanced_cpp.rst @@ -14,8 +14,8 @@ This demo implements a simple admittance controller. #. Client side configurations: - #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: @@ -38,7 +38,7 @@ This demo implements a simple admittance controller. ctrl:=lbr_joint_position_command_controller \ model:=iiwa7 # [iiwa7, iiwa14, med7, med14] -#. Launch the `admittance_control `_:octicon:`link-external`: +#. Launch the `admittance_control `_:octicon:`link-external`: .. code-block:: bash @@ -55,8 +55,8 @@ kinematics to move the robot's end-effector along the z-axis in Cartesian space. #. Client side configurations: - #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: diff --git a/lbr_demos/lbr_demos_advanced_py/doc/lbr_demos_advanced_py.rst b/lbr_demos/lbr_demos_advanced_py/doc/lbr_demos_advanced_py.rst index fb37b371..532ccd98 100644 --- a/lbr_demos/lbr_demos_advanced_py/doc/lbr_demos_advanced_py.rst +++ b/lbr_demos/lbr_demos_advanced_py/doc/lbr_demos_advanced_py.rst @@ -14,8 +14,8 @@ This demo implements a simple admittance controller. #. Client side configurations: - #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: @@ -38,7 +38,7 @@ This demo implements a simple admittance controller. ctrl:=lbr_joint_position_command_controller \ model:=iiwa7 # [iiwa7, iiwa14, med7, med14] -#. Run the `admittance_control `_:octicon:`link-external` with remapping and parameter file: +#. Run the `admittance_control `_:octicon:`link-external` with remapping and parameter file: .. code-block:: bash @@ -54,8 +54,8 @@ This demo implements an admittance controller with a remote center of motion (RC #. Client side configurations: - #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: @@ -78,7 +78,7 @@ This demo implements an admittance controller with a remote center of motion (RC ctrl:=lbr_joint_position_command_controller \ model:=iiwa7 # [iiwa7, iiwa14, med7, med14] -#. Run the `admittance_rcm_control `_:octicon:`link-external` with remapping and parameter file: +#. Run the `admittance_rcm_control `_:octicon:`link-external` with remapping and parameter file: .. code-block:: bash diff --git a/lbr_demos/lbr_demos_cpp/doc/lbr_demos_cpp.rst b/lbr_demos/lbr_demos_cpp/doc/lbr_demos_cpp.rst index dafaa698..edf2a975 100644 --- a/lbr_demos/lbr_demos_cpp/doc/lbr_demos_cpp.rst +++ b/lbr_demos/lbr_demos_cpp/doc/lbr_demos_cpp.rst @@ -14,8 +14,8 @@ This demo uses the :ref:`lbr_fri_ros2::LBRJointPositionCommandController` and ov #. Client side configurations: - #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: @@ -38,7 +38,7 @@ This demo uses the :ref:`lbr_fri_ros2::LBRJointPositionCommandController` and ov ctrl:=lbr_joint_position_command_controller \ model:=iiwa7 # [iiwa7, iiwa14, med7, med14] -#. Run the `joint_sine_overlay `_:octicon:`link-external` node: +#. Run the `joint_sine_overlay `_:octicon:`link-external` node: .. code-block:: bash @@ -60,7 +60,7 @@ Simulation ctrl:=joint_trajectory_controller \ model:=iiwa7 # [iiwa7, iiwa14, med7, med14] -#. Run the `joint_trajectory_client `_:octicon:`link-external`: +#. Run the `joint_trajectory_client `_:octicon:`link-external`: .. code-block:: bash @@ -72,8 +72,8 @@ Hardware ~~~~~~~~ #. Client side configurations: - #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: @@ -96,8 +96,8 @@ This demo uses the :ref:`lbr_fri_ros2::LBRTorqueCommandController` and overlays #. Client side configurations: - #. Configure the ``client_command_mode`` to ``torque`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``500`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``torque`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``500`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: @@ -120,7 +120,7 @@ This demo uses the :ref:`lbr_fri_ros2::LBRTorqueCommandController` and overlays ctrl:=lbr_torque_command_controller \ model:=iiwa7 # [iiwa7, iiwa14, med7, med14] -#. Run the `torque_sine_overlay `_:octicon:`link-external` node: +#. Run the `torque_sine_overlay `_:octicon:`link-external` node: .. code-block:: bash @@ -134,8 +134,8 @@ This demo uses the :ref:`lbr_fri_ros2::LBRWrenchCommandController` and overlays #. Client side configurations: - #. Configure the ``client_command_mode`` to ``wrench`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``500`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``wrench`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``500`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: @@ -158,7 +158,7 @@ This demo uses the :ref:`lbr_fri_ros2::LBRWrenchCommandController` and overlays ctrl:=lbr_wrench_command_controller \ model:=iiwa7 # [iiwa7, iiwa14, med7, med14] -#. Run the `wrench_sine_overlay `_:octicon:`link-external` node: +#. Run the `wrench_sine_overlay `_:octicon:`link-external` node: .. code-block:: bash diff --git a/lbr_demos/lbr_demos_py/doc/lbr_demos_py.rst b/lbr_demos/lbr_demos_py/doc/lbr_demos_py.rst index c15ed340..aca3edce 100644 --- a/lbr_demos/lbr_demos_py/doc/lbr_demos_py.rst +++ b/lbr_demos/lbr_demos_py/doc/lbr_demos_py.rst @@ -14,8 +14,8 @@ This demo uses the :ref:`lbr_fri_ros2::LBRJointPositionCommandController` and ov #. Client side configurations: - #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: @@ -38,7 +38,7 @@ This demo uses the :ref:`lbr_fri_ros2::LBRJointPositionCommandController` and ov ctrl:=lbr_joint_position_command_controller \ model:=iiwa7 # [iiwa7, iiwa14, med7, med14] -#. Run the `joint_sine_overlay `_:octicon:`link-external` node: +#. Run the `joint_sine_overlay `_:octicon:`link-external` node: .. code-block:: bash @@ -60,7 +60,7 @@ Simulation ctrl:=joint_trajectory_controller \ model:=iiwa7 # [iiwa7, iiwa14, med7, med14] -#. Run the `joint_trajectory_client `_:octicon:`link-external`: +#. Run the `joint_trajectory_client `_:octicon:`link-external`: .. code-block:: bash @@ -72,8 +72,8 @@ Hardware ~~~~~~~~ #. Client side configurations: - #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: @@ -96,8 +96,8 @@ This demo uses the :ref:`lbr_fri_ros2::LBRTorqueCommandController` and overlays #. Client side configurations: - #. Configure the ``client_command_mode`` to ``torque`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``500`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``torque`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``500`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: @@ -120,7 +120,7 @@ This demo uses the :ref:`lbr_fri_ros2::LBRTorqueCommandController` and overlays ctrl:=lbr_torque_command_controller \ model:=iiwa7 # [iiwa7, iiwa14, med7, med14] -#. Run the `torque_sine_overlay `_:octicon:`link-external` node: +#. Run the `torque_sine_overlay `_:octicon:`link-external` node: .. code-block:: bash @@ -134,8 +134,8 @@ This demo uses the :ref:`lbr_fri_ros2::LBRWrenchCommandController` and overlays #. Client side configurations: - #. Configure the ``client_command_mode`` to ``wrench`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``500`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``wrench`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``500`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: @@ -158,7 +158,7 @@ This demo uses the :ref:`lbr_fri_ros2::LBRWrenchCommandController` and overlays ctrl:=lbr_wrench_command_controller \ model:=iiwa7 # [iiwa7, iiwa14, med7, med14] -#. Run the `wrench_sine_overlay `_:octicon:`link-external` node: +#. Run the `wrench_sine_overlay `_:octicon:`link-external` node: .. code-block:: bash diff --git a/lbr_demos/lbr_moveit/doc/lbr_moveit.rst b/lbr_demos/lbr_moveit/doc/lbr_moveit.rst index 9b7d394a..42c17ea9 100644 --- a/lbr_demos/lbr_moveit/doc/lbr_moveit.rst +++ b/lbr_demos/lbr_moveit/doc/lbr_moveit.rst @@ -54,16 +54,16 @@ MoveIt Servo - Simulation You can now experiment with -- Modifying the MoveIt Servo parameters in `moveit_servo.yaml `_:octicon:`link-external`. E.g. the ``robot_link_command_frame`` to change the commanding frame. +- Modifying the MoveIt Servo parameters in `moveit_servo.yaml `_:octicon:`link-external`. E.g. the ``robot_link_command_frame`` to change the commanding frame. - Connect a joystick or game controller. -- Or changing the veloctiy scales for this keyboard driver in `forward_keyboard.yaml `_:octicon:`link-external`. +- Or changing the veloctiy scales for this keyboard driver in `forward_keyboard.yaml `_:octicon:`link-external`. MoveIt Servo - Hardware ~~~~~~~~~~~~~~~~~~~~~~~ #. Client side configurations: - #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: @@ -122,8 +122,8 @@ MoveIt via RViz - Hardware ~~~~~~~~~~~~~~~~~~~~~~~~~~ #. Client side configurations: - #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: diff --git a/lbr_demos/lbr_moveit_cpp/doc/lbr_moveit_cpp.rst b/lbr_demos/lbr_moveit_cpp/doc/lbr_moveit_cpp.rst index 5d907950..8442254b 100644 --- a/lbr_demos/lbr_moveit_cpp/doc/lbr_moveit_cpp.rst +++ b/lbr_demos/lbr_moveit_cpp/doc/lbr_moveit_cpp.rst @@ -2,7 +2,7 @@ lbr_moveit_cpp ============== .. note:: - Also refer to the official `MoveIt `_:octicon:`link-external` documentation. + Also refer to the official `MoveIt `_:octicon:`link-external` documentation. .. contents:: Table of Contents :depth: 2 @@ -29,7 +29,7 @@ Simulation mode:=mock \ model:=iiwa7 # [iiwa7, iiwa14, med7, med14] -#. Run the `hello_moveit `_:octicon:`link-external` node: +#. Run the `hello_moveit `_:octicon:`link-external` node: .. code-block:: bash @@ -41,8 +41,8 @@ Hardware ~~~~~~~~ #. Client side configurations: - #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` - #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` + #. Configure the ``client_command_mode`` to ``position`` in `lbr_system_parameters.yaml `_:octicon:`link-external` + #. Set the ``update_rate`` to ``100`` in `lbr_controllers.yaml `_:octicon:`link-external` #. Remote side configurations: @@ -61,7 +61,7 @@ Hardware Examining the Code ~~~~~~~~~~~~~~~~~~ -The source code for this demo is available on `GitHub `_:octicon:`link-external`. The demo vastly follows the official `MoveIt `_:octicon:`link-external` demo. +The source code for this demo is available on `GitHub `_:octicon:`link-external`. The demo vastly follows the official `MoveIt `_:octicon:`link-external` demo. Differently, this repository puts the ``MoveGroup`` under a namespace. The ``MoveGroup`` is thus created as follows: diff --git a/lbr_fri_ros2_stack/repos-fri-1.11.yaml b/lbr_fri_ros2_stack/repos-fri-1.11.yaml index a0e658db..2527d70f 100644 --- a/lbr_fri_ros2_stack/repos-fri-1.11.yaml +++ b/lbr_fri_ros2_stack/repos-fri-1.11.yaml @@ -10,4 +10,4 @@ repositories: lbr_fri_ros2_stack: type: git url: https://github.com/lbr-stack/lbr_fri_ros2_stack - version: humble + version: rolling diff --git a/lbr_fri_ros2_stack/repos-fri-1.14.yaml b/lbr_fri_ros2_stack/repos-fri-1.14.yaml index 3bde0b56..74fda90e 100644 --- a/lbr_fri_ros2_stack/repos-fri-1.14.yaml +++ b/lbr_fri_ros2_stack/repos-fri-1.14.yaml @@ -10,4 +10,4 @@ repositories: lbr_fri_ros2_stack: type: git url: https://github.com/lbr-stack/lbr_fri_ros2_stack - version: humble + version: rolling diff --git a/lbr_fri_ros2_stack/repos-fri-1.15.yaml b/lbr_fri_ros2_stack/repos-fri-1.15.yaml index 5e7f40fe..a31b52b4 100644 --- a/lbr_fri_ros2_stack/repos-fri-1.15.yaml +++ b/lbr_fri_ros2_stack/repos-fri-1.15.yaml @@ -10,4 +10,4 @@ repositories: lbr_fri_ros2_stack: type: git url: https://github.com/lbr-stack/lbr_fri_ros2_stack - version: humble + version: rolling diff --git a/lbr_fri_ros2_stack/repos-fri-1.16.yaml b/lbr_fri_ros2_stack/repos-fri-1.16.yaml index 84df1702..cc20cdd6 100644 --- a/lbr_fri_ros2_stack/repos-fri-1.16.yaml +++ b/lbr_fri_ros2_stack/repos-fri-1.16.yaml @@ -10,4 +10,4 @@ repositories: lbr_fri_ros2_stack: type: git url: https://github.com/lbr-stack/lbr_fri_ros2_stack - version: humble + version: rolling diff --git a/lbr_fri_ros2_stack/repos-fri-2.5.yaml b/lbr_fri_ros2_stack/repos-fri-2.5.yaml index 637e81a0..1280b6f6 100644 --- a/lbr_fri_ros2_stack/repos-fri-2.5.yaml +++ b/lbr_fri_ros2_stack/repos-fri-2.5.yaml @@ -10,4 +10,4 @@ repositories: lbr_fri_ros2_stack: type: git url: https://github.com/lbr-stack/lbr_fri_ros2_stack - version: humble + version: rolling diff --git a/lbr_fri_ros2_stack/repos-fri-2.7.yaml b/lbr_fri_ros2_stack/repos-fri-2.7.yaml index 90dcd423..e04b513e 100644 --- a/lbr_fri_ros2_stack/repos-fri-2.7.yaml +++ b/lbr_fri_ros2_stack/repos-fri-2.7.yaml @@ -10,4 +10,4 @@ repositories: lbr_fri_ros2_stack: type: git url: https://github.com/lbr-stack/lbr_fri_ros2_stack - version: humble + version: rolling diff --git a/lbr_moveit_config/doc/lbr_moveit_config.rst b/lbr_moveit_config/doc/lbr_moveit_config.rst index 3484e3a1..52e70858 100644 --- a/lbr_moveit_config/doc/lbr_moveit_config.rst +++ b/lbr_moveit_config/doc/lbr_moveit_config.rst @@ -86,11 +86,11 @@ This procedure applies to all LBRs: ``iiwa7``, ``iiwa14``, ``med7``, and ``med14 #. Manual changes: - #. Manually add acceleration limits in `joint_limits.yaml `_:octicon:`link-external` (not supported in ``URDF``) + #. Manually add acceleration limits in `joint_limits.yaml `_:octicon:`link-external` (not supported in ``URDF``) - #. In the `move_group.launch.py `_:octicon:`link-external` use the robot descriotion from ``lbr_description`` + #. In the `move_group.launch.py `_:octicon:`link-external` use the robot descriotion from ``lbr_description`` - #. In `moveit_controllers.yaml `_:octicon:`link-external` change the ``arm_controller`` to ``joint_trajectory_controller``, as in `lbr_controllers.yaml `_:octicon:`link-external` + #. In `moveit_controllers.yaml `_:octicon:`link-external` change the ``arm_controller`` to ``joint_trajectory_controller``, as in `lbr_controllers.yaml `_:octicon:`link-external` Update MoveIt Configuration --------------------------- diff --git a/lbr_ros2_control/doc/lbr_ros2_control.rst b/lbr_ros2_control/doc/lbr_ros2_control.rst index 36f2f7ba..0354f68a 100644 --- a/lbr_ros2_control/doc/lbr_ros2_control.rst +++ b/lbr_ros2_control/doc/lbr_ros2_control.rst @@ -3,7 +3,7 @@ lbr_ros2_control .. note:: - Refer to :ref:`lbr_demos` for exemplary usage - - Also refer to the official `ros2_control `_:octicon:`link-external` documentation + - Also refer to the official `ros2_control `_:octicon:`link-external` documentation .. contents:: Table of Contents :depth: 2 @@ -23,14 +23,14 @@ A simplified overview of ``lbr_ros2_control`` is shown :ref:`below `_:octicon:`link-external`. +New starters are often confused by ``ros2_control``. Everything in ``ros2_control`` is a plugin, refer `pluginlib `_:octicon:`link-external`. Hardware components and controllers are loaded as plugins (components) by the ``controller_manager::ControllerManager`` during runtime. Therefore, hardware and controllers communicate over shared memory in the same process, **not** topics! -The ``controller_manager::ControllerManager`` has a node, the `controller_manager `_:octicon:`link-external`. +The ``controller_manager::ControllerManager`` has a node, the `controller_manager `_:octicon:`link-external`. - Hardware plugins are read from the ``robot_descritption`` parameter of the ``robot_state_publisher`` node and loaded at runtime. -- Parameters, such as ``update_rate``, the configured controllers, are simply set as node parameters, see e.g. `lbr_controllers.yaml `_:octicon:`link-external`. +- Parameters, such as ``update_rate``, the configured controllers, are simply set as node parameters, see e.g. `lbr_controllers.yaml `_:octicon:`link-external`. Hardware Plugin --------------- @@ -42,8 +42,8 @@ The ``lbr_ros2_control::SystemInterface`` plugin implements a ``hardware_interfa .. thumbnail:: img/lbr_ros2_control_detailed_v2.0.0.svg :alt: lbr_ros2_control_detailed -- The ``controller_manager::ControllerManager`` loads the correct plugin from the ```` tag in the ``robot_description``: `lbr_system_interface.xacro `_:octicon:`link-external` -- FRI relevant parameters are forwarded to the ``lbr_ros2_control::SystemInterface`` plugin from `lbr_system_paramters.yaml `_:octicon:`link-external` +- The ``controller_manager::ControllerManager`` loads the correct plugin from the ```` tag in the ``robot_description``: `lbr_system_interface.xacro `_:octicon:`link-external` +- FRI relevant parameters are forwarded to the ``lbr_ros2_control::SystemInterface`` plugin from `lbr_system_paramters.yaml `_:octicon:`link-external` The ``lbr_ros2_control::SystemInterface`` is spun with the ``controller_manager`` node at a rate set by the ``update_rate`` parameter. The communication to the robot is run **asynchronously** at a rate set by the robot's sample time.