Spawn URDF in Gazebo off the ground (e.g. You have to write/use a Gazebo Plugin that applies efforts to the joints or use en existing package like ros_control. Otherwise you should expect limp arm behavior - similar to the real world. Gazebo is a simulator, so you have to somehow inject joint forces into the simulated world. RViz is a visualizer, so you can "move" an arm in RViz just by broadcasting ideal joint states. Old: Maybe useful info but not the correct answer to OP's problem Note: Gazebo Answers ( ) is usually where I go with these types of Gazebo-focused questions if you end up running into any other snags. You should be able to spawn your model into Gazebo like so: Links that are penetrating on spawn can cause the model to "explode"ģ) (Optional) I always enable implicitSpringDamping for better stability simulating joint damping: You can re-enable self-collisions selectively. )Ģ) If model still explodes, disable self-collision for all links:
To understand what the purple boxes actually mean check out.
Note: In Gazebo, View -> Inertia will give you a ballpark idea of the inertial matrices. Either using geometric approximations or something like MeshLab Update: At least one of the links in the URDF has an incorrect Inertial matrices (probably way too small) The robot is then "exploding" - after which all the links are collected at the origin. The arm's links are jumbled up because the joints are not being actuated. The URDF is spawning successfully in Gazebo (i.e. Here is the sample of urdf for the robot arm: Here is the pic of using simulation pause: Here is the pic that robot arm in the rviz I followed the tutorial of urdf in gazebo and added friction and damping in the urdf. It seems joint element in urdf doesn't work. The problem is my robot arm is broken link by link. Hence I am trying to load urdf file in gazebo. Right now I want to use load kinect to get some simulated data for robot arm. I have succeeded loading my designed robot arm in rviz and finished planning and executing.