ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
What you have wrong conceptually is that you should have two urdf/xacro files: one for gazebo, and one for ROS. Each file contains different types of information about the robot arm.
The gazebo one contains physics-related properties like inertia and entries which load simulation models of the joints. None of this information is needed when using ROS on an actual physical robot, which is why it tends to be put in a separate file.
The ROS urdf/xacro file contains link and joint geometry information, collision primitives, and visualization info for rviz. This file is typically loaded into the /robot_description
property on the parameter server using a node in your launch file. This property name might be prefixed by a namespace depending on how you have things set up.
You are missing the ROS xacro file, and missing the property-setting node in your launch file.