User Tools

Site Tools


gazebo:simple-arm

Back to Gazebo Main Page

Though it's possible to use gazebo alone to define and simulate the dynamic model of a robot, it is more convenient to directly consider making this model is the ROS environment, so that, afterwards, we can benefit from all ROS packages to control our robot. So the approach described here considers a tight link between ROS and gazebo.

The first thing to create is a ROS workspace :

mkdir -p ws/src
cd ws
catkin_make

We will model a simple robotic arm. It is wise to separate the model in different ROS packages. There is no imposed way to do it, but one way could to have 3 packages for : robot description, robot control and gazebo interface. Let's do it:

cd src
catkin_create_pkg simple_arm_description std_msgs
catkin_create_pkg simple_arm_gazebo std_msgs rospy roscpp
catkin_create_pkg simple_arm_control std_msgs rospy roscpp
cd ..
catkin_make
source devel/setup.bash

The model is described using xacro format on top of urdf format. We might have use sdf format, but xacro with his macro and variables features will make modeling more effective when dealing with more complex robots. For example, with xacro, you can define one leg in a macro and use this macro 6 times to model an hexapod.

We start from an existing mesh provided by the CAD model of the robotic arm. It's a good way to start from the CAD files , either you can use the 3D design of an existing robot or you can design your own robot. here we will use the CAD file of a Kuka Kr6 robotic arm taken from the grabcad library.

gazebo/simple-arm.txt · Last modified: 2023/03/31 12:19 by 127.0.0.1