Gazebo | Ignition | Community
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

differential_drive_controller veers

I have been through several very similar basic tutorials for building a simulated mobile robot in Gazebo. They all consist of a pair of wheels, a chassis and a caster. In each case the vehicle is connected to the differential_drive_controller (libgazebo_ros_diff_drive.so) plugin.

I am trying to understand the behaviour. When I send a new speed demand (using teleop_twist_keyboard) the vehicle moves. I start the vehicle pointing along the x-axis. The speed demand that I apply is forwards. My expectation is that the vehicle should move exactly along the x-axis, since there should be no forces to rotate the vehicle. However, within 10m the vehicle has rotated by about 45deg.

Does the gazebo simulator add noise to the simulation/control? Is there some other explanation for this behaviour?