Skip to content

lbr-stack/lbr_fri_ros2_stack

Repository files navigation

lbr_fri_ros2_stack

License Documentation Status JOSS Code Style: Black

ROS 2 packages for the KUKA LBR, including communication to the real robot via the Fast Robot Interface (FRI) and Gazebo simulation support. Included are the iiwa7, iiwa14, med7, and med14.

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

Status

OS ROS Distribution FRI Version Build Status
Ubuntu-24.04 rolling 1.11 ubuntu-24.04-fri-1.11
Ubuntu-24.04 rolling 1.14 ubuntu-24.04-fri-1.14
Ubuntu-24.04 rolling 1.15 ubuntu-24.04-fri-1.15
Ubuntu-24.04 rolling 1.16 ubuntu-24.04-fri-1.16
Ubuntu-24.04 rolling 2.5 ubuntu-24.04-fri-2.5
Ubuntu-24.04 rolling 2.7 ubuntu-24.04-fri-2.7

Documentation

Full documentation available on Read the Docs.

Quick Start

  1. Install ROS 2 development tools

    sudo apt install ros-dev-tools
  2. Create a workspace, clone, and install dependencies

    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/rolling/lbr_fri_ros2_stack/repos-fri-${FRI_CLIENT_VERSION}.yaml
    rosdep install --from-paths src -i -r -y

Note

FRI client is cloned from fri and must be available as branch, refer README.

  1. Build

    colcon build --symlink-install
  2. In terminal 1, launch a mock setup via

    source install/setup.bash
    ros2 launch lbr_bringup mock.launch.py \
        model:=iiwa7 # [iiwa7, iiwa14, med7, med14]

Tip

List all arguments for the launch file via ros2 launch lbr_bringup mock.launch.py -s

  1. In terminal 2, visualize the setup via

    source install/setup.bash
    ros2 launch lbr_bringup rviz.launch.py \
        rviz_cfg_pkg:=lbr_bringup \
        rviz_cfg:=config/mock.rviz

Now, run the demos. To get started with the real robot, checkout the Hardware Setup.

Citation

If you enjoyed using this repository for your work, we would really appreciate ❤️ if you could leave a ⭐ and / or cite it, as it helps us to continue offering support.

@article{Huber2024,
  doi       = {10.21105/joss.06138},
  url       = {https://doi.org/10.21105/joss.06138},
  year      = {2024},
  publisher = {The Open Journal},
  volume    = {9},
  number    = {103},
  pages     = {6138},
  author    = {Martin Huber and Christopher E. Mower and Sebastien Ourselin and Tom Vercauteren and Christos Bergeles},
  title     = {LBR-Stack: ROS 2 and Python Integration of KUKA FRI for Med and IIWA Robots},
  journal   = {Journal of Open Source Software}
}

Acknowledgements

Open Source Contributors

We would like to acknowledge all contributors 🚀

lbr_fri_ros2_stack

lbr_fri_ros2_stack contributors

fri

fri contributors

Organizations and Grants

We would further like to acknowledge following supporters:

Logo Notes
wellcome This work was supported by core and project funding from the Wellcome/EPSRC [WT203148/Z/16/Z; NS/A000049/1; WT101957; NS/A000027/1].
eu_flag This project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement No 101016985 (FAROS project).
RViMLab Built at RViMLab.
King's College London Built at CAI4CAI.
King's College London Built at King's College London.