In today's fast-paced tech world, simulations are like a secret weapon for crafting robots. Our goal? To connect the world of Robotic Operating Systems (ROS) with the awesome physics simulation capabilities of DeepMind's MuJoCo.
This project integrates the MuJoCo simulation environment with the ros-control package through a hardware interface. By doing this, we are able to simulate and control a robotic manipulator via ROS. mujoco_sim_node, publishes joint states of the robot and takes effort inputs from the hardware interface.
As evident in the node-graph, the project is equipped with RViz for visualization. With our intention to introduce a motion planner and potentially other sensors, RViz will play a pivotal role in visualizing these upcoming additions.
The project currently supports only the UR5e Robotic Manipulator, but our goal is to expand support to other robotic manipulators and possibly even mobile robots in the future.
To Do:
- Adding support for Franka Panda
- Bringing in MoveIt Support
- Fine-tuning PID settings
To get rolling, you'll need:
- ros-noetic
- ros_control
- rospy = 1.15.15
- mujoco-py = 2.3.7
- numpy = 1.24.1
Download the package and build it via catkin.
Launch ROS bridge:
roslaunch ur5e_mujoco_bringup ur5_mujoco.laun6ch
Launch the simulation:
python3 src/mujoco_sim_pkg/scripts/ur5_simulation.py
Launch MoveIt Controllers (Make sure ros_controllers didn't crashed):
roslaunch ur5e_moveit_mj ros_controllers.launch
roslaunch ur5e_moveit_mj move_group.launch
Now you can control the trajectory of the robot, using MoveIt.
We want your help! You can copy our code, add to it, report problems, and team up with others who love robots and simulations. Add support to other robots, add different controllers etc. Sky is the limit!
Yunus Talha Erzurumlu : yunus.terzurumlu@gmail.com
Check these sites:
This project still under the development and mangaed by Yunus Talha Erzurumlu.