We recently purchased the mecanum wheels and have tried different ideas to get all the motors to spin at exactly the same speed at time. We have tried a bias but that didn’t work due to the increase or descrease in our margin of error over time. I have searched the forums and have yet to find anything we could really use. If anyone could help it would be appreciated.
You could use geartooth sensors to monitor the changes and adjust the speed accordingly. I know we have used this for autonomous in the past.
I’d recommend a PID for velocity. You’d set up one for each wheel, and then just change the target values every time you needed too, I suppose. Or maybe just for autonomous, as trying to brake wouldn’t work…
Anyway, there are a couple of whitepapers on PID you can use, and I know Kevin Watson has PID for velocity already made and ready to go. They work very well if you can use them.
we had the same prob, too.
here’s what you should do:
**
-
if your using motors from different years, place them in a logical order,
for example: 2 08s in the front, and 2 07s in the back. -
grease the gears evenly, and don’t be cheap =]
-
calibrate the Victors
-
use wide and even cables between Victors and fuses, just in case
-
make sure, and you better be real sure your joystick is calibrated and trimmed
and your code is correct.**
My team had the same issue as well. We used one encoder to get RPM data for every PWM value and produced a graph of this data. Using this graph we were able to see which victor/cim pairs were consistently faster and where the respective “true” dead zone of pwm values were for each victor. We immediately saw the dead zone ended up centered at 133, not 127. By shifting all PWMs up by six and limiting PWMs so they wouldn’t overflow the max of 254 we were able to get a nearly perfect strafe.
Something you might also consider is using encoders, gear tooth sensors, or the gyro in a PID loop.
yo mike what would happen if we where to wire the fl trany and the br trany to the same speed control and wire the fr trany and bl trany to the same speed controler and place a gear tooth sensors in the fl and fr tranys so they could all be regulated and fire at the same time so it would not vear off course
That would work as long as you can hook up two motors to a vicktor.
One of your issues you may be experiencing is the manufacturing differences in DC motors. No two motors will ever spin at exactly the same speed and unequal weight at friction will cause you to drift of course. Btw you can not wire 2 motors to the same speed controller. I would suggest to make your system as efficient as possible and then if that doesn’t work either program PID or some other closed loop or get your drive to compensate for the drift. Out robot drifts to the right this year so every time i drive I always give the right joystick more of a push than the left.