Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   NI LabVIEW (http://www.chiefdelphi.com/forums/forumdisplay.php?f=182)
-   -   Mecanum Trouble (http://www.chiefdelphi.com/forums/showthread.php?t=133581)

REDBARON 27-01-2015 18:40

Mecanum Trouble
 
Our team is trying mecanum this year with four Talon SRXs and CAN, however we've been having troubles with the motors not behaving as expected, we are aware that the code from NI is not correct, but we've tried various configurations, and nothing has worked, we've ensured our SRXs are ID-ed properly yet still the code refuses to work, forward/backward, and rotate will work fine but strafing fail, or strafing and rotate work but forward/backward fail, all help is appreciated,
-Jack

Ether 27-01-2015 18:44

Re: Mecanum Trouble
 
Quote:

Originally Posted by REDBARON (Post 1434884)
forward/backward, and rotate will work fine but strafing fail, or strafing and rotate work but forward/backward fail, all help is appreciated,

Run this test and post your results here.



Ether 27-01-2015 18:46

Re: Mecanum Trouble
 
Quote:

Originally Posted by Ether (Post 1434889)
Run this test and post your results here.

Also, tilt your bot on its side and take a picture of the bottom showing all 4 wheels. Post the picture here.



REDBARON 27-01-2015 21:30

Re: Mecanum Trouble
 
Update: we achieved strafing and forward/backward, but rotation is not working, the front motors run forwards and the back backwards, or vice-versa based on direction of rotation, so that all motors are pulling outward and are fighting each other, the wheels are arranged in the proper X-formation, we arranged our input values and everything else is functioning properly, here is the code we used that fixed the problem: http://pho.to/8fJab from this thread: http://www.chiefdelphi.com/forums/sh...light=mechanum
We also used this link to setup or rotation values: http://www.pobots.com/files/8213/5726/0394/mecanum.pdf
Again, all help is appreciated,
-Jack

Ether 27-01-2015 21:48

Re: Mecanum Trouble
 
Quote:

Originally Posted by REDBARON (Post 1434988)
the wheels are arranged in the proper X-formation

As viewed from the top of the bot, or from below? (They won't be the same).


Quote:

we achieved strafing and forward/backward, but rotation is not working... Again, all help is appreciated
Do this:
http://www.chiefdelphi.com/forums/sh...89&postcount=2



Dawg2T4 27-01-2015 22:19

Re: Mecanum Trouble
 
The wheels are arranged in the proper X as viewed from the top of the bot, as I believe they should be. Right now, sending a pure forward, backward, left, or right signal has the bot going in the right direction. The rotate, however, has all of the wheels going outward from each other (the two front go forward while the two back go backward) or all inward (front go backward, back go forward).

Ether 27-01-2015 22:24

Re: Mecanum Trouble
 
Quote:

Originally Posted by Dawg2T4 (Post 1435007)
The rotate, however, has all of the wheels going outward from each other (the two front go forward while the two back go backward) or all inward (front go backward, back go forward).

Which rotate command direction (clockwise or counterclockwise) corresponds to which behavior (all outward or all inward)?



Ether 27-01-2015 23:07

Re: Mecanum Trouble
 
Quote:

Originally Posted by Cecil (Post 1435025)
From the top, the wheels should look like a diamond, an X from the bottom.

The above advice is incorrect.

From the top, rollers should look like X.
From the bottom, rollers should look like diamond.

http://www.chiefdelphi.com/forums/sh...4&postcount=18



Cecil 27-01-2015 23:20

Re: Mecanum Trouble
 
Quote:

Originally Posted by Ether (Post 1435029)
The above advice is incorrect.

You got me there... My interpretation of "X from the top" is different than others apparently. After looking at the linked PDF, based on the description the wheels are in the correct orientation.

My apologies.. Carry on..

(I often describe it to the team as diamond from the top because the rollers face each other in a diamond shape. Guess I should tell them differently. Never thought to look at the way the rollers relate to each other...)

Ether 27-01-2015 23:35

Re: Mecanum Trouble
 
Quote:

Originally Posted by Ether (Post 1435009)
Which rotate command direction (clockwise or counterclockwise) corresponds to which behavior (all outward or all inward)?

If a rotate clockwise command causes all the wheels to run outward you need to swap the FrontRight and BackLeft motor commands.

If a rotate clockwise command causes all the wheels to run inward you need to swap the FrontLeft and BackRight motor comands.

Others here can advise you how to do that in the software, or you can swap the appropriate motor wires.



Levansic 28-01-2015 01:23

Re: Mecanum Trouble
 
Outward or inward is a bit confusing, try looking directly at the wheels from the outside of the robot, while the robot is elevated and not touching the floor. If you crank the joystick clockwise, all of the wheels should appear to turn counter-clockwise, when viewed from the outside. Take note of the ones that are going clockwise.

Go into begin.vi, and right-click on the terminal on the left side of the 4-motor drive open vi, that matches the inversion for the motors which spin clockwise. Click on the new boolean constant to turn it from false to true. Do this for all motors that are turning the wrong way.

If you have trouble finding the motor inversion terminals (which likely are unconnected), use Control-H to bring up the context-sensitive help, and mouse over the drive open vi.

All of this assumes that your motors are called in the correct position. In most cases, you will likely have to invert two of the four motors.

Ether 28-01-2015 01:45

Re: Mecanum Trouble
 
Quote:

Originally Posted by Levansic (Post 1435076)
Outward or inward is a bit confusing

He defined exactly what he meant by those terms in his earlier post:

Quote:

Originally Posted by Dawg2T4 (Post 1435007)
The rotate, however, has all of the wheels going outward from each other (the two front go forward while the two back go backward) or all inward (front go backward, back go forward).

... but he didn't clearly specify which rotate command (clockwise or counterclockwise) was causing which wheel motion ("outward" or "inward").



Quote:

Originally Posted by Levansic (Post 1435076)
If you crank the joystick clockwise, all of the wheels should appear to turn counter-clockwise, when viewed from the outside. Take note of the ones that are going clockwise.

Go into begin.vi, and right-click on the terminal on the left side of the 4-motor drive open vi, that matches the inversion for the motors which spin clockwise. Click on the new boolean constant to turn it from false to true. Do this for all motors that are turning the wrong way.

If he does what you recommended above, it will fix the rotate problem, but break the forward/reverse and strafe right/left motions which are presently working correctly.

What he needs to do is swap the FrontRight and BackLeft motor commands (if the rotate clockwise command is causing the wheels to turn "outward") or swap the FrontLeft and BackRight motor commands (if the rotate clockwise command is causing the wheels to turn "inward").

Quote:

All of this assumes that your motors are called in the correct position.
They are not. That's the problem.



Ether 28-01-2015 10:14

Re: Mecanum Trouble
 
1 Attachment(s)
Quote:

Originally Posted by Ether (Post 1435080)
What he needs to do is swap the FrontRight and BackLeft motor commands (if the rotate clockwise command is causing the wheels to turn "outward") or swap the FrontLeft and BackRight motor commands (if the rotate clockwise command is causing the wheels to turn "inward").

The attached chart shows the situation if OP meant to say that a rotate clockwise command
caused the front wheels to rotate forward and the back wheels to rotate backward.
  • Green means wheel rotation forward
  • Red means wheel rotation backward
  • Columns B D F H J L show what it should be
  • Columns labeled "?" show what it is actually doing (per OP's testing)

As you can see, swapping the FrontRight and BackLeft motor commands will correct the problem:
  • the RCW and RCC will be corrected, and
  • the already correct FWD, REV, STR, & STL will be unaffected

Dawg2T4 28-01-2015 16:55

Re: Mecanum Trouble
 
Just for some clarification, when you say swap the Front Right and Back Left motors, do you mean within the HolonomicDrive.vi, or is there a place within the teleop.vi to do that? Our Build session starts in about half an hour, so we can tell how well it worked then.

Ether 28-01-2015 17:26

Re: Mecanum Trouble
 
Quote:

Originally Posted by Dawg2T4 (Post 1435305)
Just for some clarification, when you say swap the Front Right and Back Left motors...

Just to be clear, I said swap the motor commands, not the motors. This can be accomplished in software, or in hardware by swapping the motor wires (while leaving the motors themselves unmoved). Swapping the physical motors themselves would serve no purpose here.

Quote:

do you mean within the HolonomicDrive.vi, or is there a place within the teleop.vi to do that? Our Build session starts in about half an hour, so we can tell how well it worked then.
I don't do LabVIEW. Do whatever you have to do so that the motor commands are swapped. What that means is this:
  • the command that presently is going to the FrontRight motor should be sent instead to the BackLeft motor, and

  • the command that presently is going to the BackLeft motor should be sent instead to the FrontRight motor

I think that can be accomplished in the Begin vi, wherever you assign the CAN addresses for the 4 motor locations. If there are any LabVIEW gurus reading, please chime in here.


PS: you never did answer this post. It's important; it determines which motor commands should be swapped.





All times are GMT -5. The time now is 04:33.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi