Repolode
tenfoldpaper

tenfoldpaper/multipanda_ros2

A ROS 2 Humble integration for the Franka Emika Panda arm that runs the same ros2_control controllers on real robots and in MuJoCo simulation.

Stars
91
Forks
43
Open issues
2
Last commit
10 days ago

What is it?

multipanda_ros2 ports most features of the original franka_ros to ROS 2 Humble for the Franka Emika Panda robot, building on a ros2_control framework. It supports torque, joint position, joint velocity and Cartesian control interfaces, with example controllers for each, and includes runtime error recovery and parameter setter services.

The project's main addition is a MuJoCo simulation that exposes the same interfaces as the real robot, so a controller written for hardware can run unchanged in simulation. The simulation is built as a plugin to mujoco_ros_pkg and currently depends on a fork of that package. It also supports single-arm, dual-arm and a mobile manipulator setup with two Panda arms.

The repository includes a Docker-based one-click installer as well as a manual installation guide tested on Ubuntu 22.04 with libfranka 0.9.2 and MuJoCo 3.2.0.

Key features

  • 01Real-robot control interfaces for torque, joint position, joint velocity and Cartesian commands.
  • 02MuJoCo simulation that accepts the same controllers as the real Panda arm.
  • 03Gripper action servers in simulation with the same interface as the real gripper.
  • 04Runtime error recovery for franka::ControlException without reloading controllers.
  • 05Dual-arm and mobile manipulator (Garmi) launch configurations.

Use cases

  • Developing and testing Panda controllers in MuJoCo before running them on hardware.
  • Porting franka_ros-based robot code to ROS 2 Humble.
  • Prototyping dual-arm or mobile manipulation setups with simulated Panda arms.

Quick start

  1. 1

    Clone the repository recursively to include mujoco_ros_pkgs

    git clone --recursive https://github.com/tenfoldpaper/multipanda_ros2.git
  2. 2

    Enter the cloned repository

    cd multipanda_ros2
  3. 3

    Build the docker image (takes some time)

    ./tools/setup_env
  4. 4

    Start the development container

    ./run

Things to know

  • Targets ROS 2 Humble and Ubuntu 22.04 with a real-time kernel for real robot use.
  • Requires a fork of mujoco_ros_pkgs rather than the original repository.
  • The MuJoCo simulation requires MuJoCo 3.2.0 for the manual install path.
  • The default MoveIt config depends on a deprecated warehouse package, which is a known issue.

In collections

Topics

#ros2#robotics#franka-panda#mujoco#simulation#ros2-control#real-time-control

FAQ

What is multipanda_ros2?
A ROS 2 Humble integration for the Franka Emika Panda arm that runs the same ros2_control controllers on real robots and in MuJoCo simulation. multipanda_ros2 ports most features of the original franka_ros to ROS 2 Humble for the Franka Emika Panda robot, building on a ros2_control framework. It supports torque, joint position, joint velocity and Cartesian control interfaces, with example controllers for each, and includes runtime error recovery and parameter setter services.
Is multipanda_ros2 free to use? What license does it have?
multipanda_ros2 is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is multipanda_ros2 still maintained?
Actively maintained. The last commit to multipanda_ros2 was on Oct 28, 2026.
What can I use multipanda_ros2 for?
Developing and testing Panda controllers in MuJoCo before running them on hardware. Porting franka_ros-based robot code to ROS 2 Humble. Prototyping dual-arm or mobile manipulation setups with simulated Panda arms.
How do I install multipanda_ros2?
Clone the repository recursively to include mujoco_ros_pkgs: git clone --recursive https://github.com/tenfoldpaper/multipanda_ros2.git Enter the cloned repository: cd multipanda_ros2 Build the docker image (takes some time): ./tools/setup_env Start the development container: ./run
Where can I get multipanda_ros2?
The source code and installation instructions are on GitHub: https://github.com/tenfoldpaper/multipanda_ros2

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects