- It's moving because the masses were set way too high. The inertial tensors correspond to something around 50 kg of mass, and the "mass" was set to 5 tons for the base and 0.5 tons for the wheels. Reduced that. I found Wikipedia's list of inertia tensors quite helpful.
- The visual and collision model of base_link did not match (that's why the robot appeared to be "floating").
- The wheels had no collision model (that's why they didn't show up).
- Transmissions for front wheels were commented out (that's why there were no joint_states published for them).
Also, there were some minor problems:
use_sim_time
has to be set to "true"
. Fixed in launch file. - Don't run the joint_state_publisher while gazebo is running. Both publish joint_states and will interfere. Removed it from launch file.
karlik.xacro
: The <joint>
element shouldn't have a sub-element <joint_properties>
. AFAIK, it's not defined anywhere and confuses things like the joint_state_publisher. Deleted those lines.
You can get the fixed version here.