I’m using ode to simulate and model the drive characteristics of an 4 wheeled robot. I’m controlling the robot by setting the velocity of the left and right wheels. I can the drive the robot in the a circle by setting a differential velocity for the left and right wheels. It will drive in a circle and end up in the starting location as expected, however I’m finding that the ode body angularVelocity is varying as it moves around the circle. The angularVelocity variation is periodic with max when the robot orientaion of 0, 90, 180 and 270, and min at 45 degree increments. When I plot the path, its more like an elipse than a circle. This is independent of the starting position, speed or direction of rotation.
I’m not sure why this is happening or how to fix it.