During the off-season my team has been working on motion profiling using the built in API in the TalonSRX. To generate the paths, we use this tool: https://github.com/vannaka/Motion_Profile_Generator. However, when we use the measured drive base width, the robot consistently under-turns.
I did some research online, and apparently the “effective drive base width” must be empirically determined. By guessing and checking, the robot consistently turned 90 degrees correctly with an effective drive base width of 40in, rather than the measured with of 29in.
While the turning works accurately, the robot’s final position wasn’t where it was supposed to be. Rather, the left side of the robot followed the left path. However, when the robot turned right, the right side of the robot followed the right path.
This means that for complicated turns, we have no way of determining where the robot ended up, since the center of the robot isn’t following the center of the path. I think this is caused by the incorrect drive base width, since the path generator believes that the robot is bigger than it actually is. This results in the robot inaccurately following the path.
What existing solutions are there for this problem? Why does the path generation algorithm require an incorrect drive base width?