|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
|||
|
|||
|
Re: Calibrating Mecanum Drive
Has anyone ever achieved this with the standard andymark?
Also, has everyone ever used the accelerometer get angle function to measure translational error? |
|
#2
|
|||
|
|||
|
Re: Calibrating Mecanum Drive
Quote:
Kudos to the killer bees for this excellent paper! Steve |
|
#3
|
|||
|
|||
|
Re: Calibrating Mecanum Drive
Last season we used a gyro with mecanum wheels for field centric control. We didn't have any extra code to keep the robot from rotating while moving in a line (typically with tank drive a robot will drive in a large arc). Our robot still moved straight.
This leads me to believe that as the robot slightly rotated from biased motors, it still attempted to move in that straight line. Since the more powerful motors rotated towards the axis that robot was moving (making their contribution less and less), the gyro compensated for the rotation and a natural equilibrium was found (instead of active code keeping the robot on a straight course). (If you can't tell I'm having a bit of difficulty trying to put into words what I think happened). Imagine a case where two motors are completely dead, catty-corner. If you tried to move in a straight line, the robot would begin to spin until the dead motors made a line perpendicular to the axis you're trying to move on, and the robot would no longer be able to move. Does this make sense ![]() |
|
#4
|
|||
|
|||
|
Re: Calibrating Mecanum Drive
@artdutra04
What is the motivation behind a PD controller specifically? @efoote Sorry, I'm having difficulty interpreting this. If I'm understanding correctly, you only used the gyro in order to rotate the joystick input vector for field-centric control. How did it help keep the robot on a straight course? |
|
#5
|
|||
|
|||
|
Re: Calibrating Mecanum Drive
Imagine your robot has four mecanum wheels, with two dead motors on opposite corners, and two live motors on the different corners.
You use the joystick to try and go straight in an axis. Because there are only the opposite two motors powering the robot, the robot will spin as it moves. Since the gyro is compensating for the spin, the robot will still be attempting to move in that same direction. The two live motors will begin to output less and less. The robot will continue to spin until the two dead motors are perpendicular to the axis that you're trying to move the robot on, and the two motors that work will be lined on that axis. The robot will no longer move, because the gyro in field centric drive will tell the working motors not to move, and tell the dead motors to go full power. Now, imagine that instead of two dead motors, they only work at 90%. The same process will occur, except an equilibrium will be found sooner. This equilibrium requires no extra code to compensate for the biased motors. I hope that makes sense? Otherwise I might have to try some of my mad paint skills. |
|
#6
|
||||
|
||||
|
Re: Calibrating Mecanum Drive
Quote:
Less programming win! |
|
#7
|
|||
|
|||
|
Re: Calibrating Mecanum Drive
After taking a look at the vectors, there won't be rotation if the two live motors have equal strength, the robot will just move on a diagonal.
Woops .This won't be the case though, so I think you'll still get the effect. The correct way to go about doing this is to compensate for the rotation though . |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|