ROS2 packages for the Panda robot
Franka hardware interface is based on libfranka
that needs to be installed using the following steps:
$ sudo apt install build-essential cmake git libpoco-dev libeigen3-dev
$ git clone --recursive https://github.com/frankaemika/libfranka --branch fr3-develop
$ cd libfranka
$ mkdir build
$ cd build
$ cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=OFF ..
$ cmake --build .
$ cpack -G DEB
$ sudo dpkg -i libfranka*.deb
Required setup : Ubuntu 22.04 LTS
- Install
ros2
packages. The current development is based ofros2 humble
. Installation steps are described here. - Source your
ros2
environment:NOTE: The ros2 environment needs to be sources in every used terminal. If only one distribution of ros2 is used, it can be added to thesource /opt/ros/humble/setup.bash
~/.bashrc
file. - Install
colcon
and its extensions :sudo apt install python3-colcon-common-extensions
- Create a new ros2 workspace:
mkdir ~/ros2_ws/src
- Pull relevant packages, install dependencies, compile, and source the workspace by using:
cd ~/ros2_ws git clone https://github.com/maberobotics/ilab_franka_robot.git src/ilab_franka_robot vcs import src < src/ilab_franka_robot.repos rosdep install --ignore-src --from-paths . -y -r colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release --symlink-install source install/setup.bash
NOTE: The ilab_franka_robot.repos
file contains links to ros2 packages that need to be source-built to use their newest features.
NOTE: If you experience unexpected behavior with the joint_trajectory_controller
, you are probably shadowing the default one with the custom version provided by franka_ros2
.
The package comes with a general purpose launch file, which can be run using
$ ros2 launch ilab_franka_bringup ilab_franka.launch.py
Several launch arguments can be used to adapt the launch. These arguments can be shown by running
ros2 launch ilab_franka_bringup ilab_franka.launch.py --show-args
For example, to start the Franka real robot with Moveit2 planning and Rviz2, run
ros2 launch ilab_franka_bringup ilab_franka.launch.py use_fake_hardware:=false use_planning:=true start_rviz:=true robot_ip:=172.16.0.2