Quote:
Originally Posted by dboisvert
We are using Victors
Code:
RobotDrive *m_robotDrive;
m_robotDrive = new RobotDrive(1, 2, 3, 4);
|
I think that's the root of your problem. The version of the RobotDrive constructor that takes four PWM channel numbers sets them up as Jaguars. You need to open four Victors and pass them to the version of the RobotDrive constructor that takes four motor references.
The reason this makes a difference is that the factory-calibrated neutral PWM value for a Victor is slightly higher than the neutral PWM value for a Jaguar. Because of the incorrect translation from -1..1 speed control to PWM pulse width, you'll end up running motors a bit faster in reverse than with the same forward speed command. In your case, the right motors will go faster than the left ones when you're driving forward. At very low speeds, the difference will be relatively large.