This is a ros2-control controller based on unitree guide. The original unitree guide project could be found here. I used KDL for the kinematic and dynamic calculation, so the controller performance has difference with the original one (sometimes very unstable).
Tested environment:
- Ubuntu 24.04
- ROS2 Jazzy
- Ubuntu 22.04
- ROS2 Humble
Required hardware interfaces:
- command:
- joint position
- joint velocity
- joint effort
- KP
- KD
- state:
- joint effort
- joint position
- joint velocity
- imu sensor
- linear acceleration
- angular velocity
- orientation
cd ~/ros2_ws
colcon build --packages-up-to unitree_guide_controller
Warm Reminder: You need to launch Unitree Mujoco C++ Simulation before launch the controller.
source ~/ros2_ws/install/setup.bash
ros2 launch unitree_guide_controller mujoco.launch.py pkg_description:=go2_description
source ~/ros2_ws/install/setup.bash
ros2 launch unitree_guide_controller gazebo_classic.launch.py pkg_description:=go2_description
source ~/ros2_ws/install/setup.bash
ros2 launch unitree_guide_controller gazebo.launch.py pkg_description:=go2_description