![]() |
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 |
Re: Mecanum Trouble
Quote:
|
Re: Mecanum Trouble
Quote:
|
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 |
Re: Mecanum Trouble
Quote:
Quote:
http://www.chiefdelphi.com/forums/sh...89&postcount=2 |
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).
|
Re: Mecanum Trouble
Quote:
|
Re: Mecanum Trouble
Quote:
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 |
Re: Mecanum Trouble
Quote:
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...) |
Re: Mecanum Trouble
Quote:
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. |
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. |
Re: Mecanum Trouble
Quote:
Quote:
Quote:
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:
|
Re: Mecanum Trouble
1 Attachment(s)
Quote:
caused the front wheels to rotate forward and the back wheels to rotate backward.
As you can see, swapping the FrontRight and BackLeft motor commands will correct the problem:
|
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.
|
Re: Mecanum Trouble
Quote:
Quote:
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. |
Re: Mecanum Trouble
Swap them in Begin, making the inputs to the Open 4 Motor Drive match the actual motors on the robot.
|
Re: Mecanum Trouble
Sending the robot a clockwise signal makes all of the wheels turn inward towards each other. When we made the change for the motor commands all it did was changed the strafing to the all in/out command and changed what we wanted the rotation to be to strafing.
|
Re: Mecanum Trouble
Quote:
If not, undo what you did and make the correct change. Quote:
Quote:
Quote:
|
Re: Mecanum Trouble
Quote:
Looks like the change was not done properly. Please post LabVIEW png snippet of before & after code. |
Re: Mecanum Trouble
Quote:
-Jack |
Re: Mecanum Trouble
Quote:
Before: http://s278.photobucket.com/user/Daw...tml?sort=3&o=1 After: http://s278.photobucket.com/user/Daw...tml?sort=3&o=0 |
Re: Mecanum Trouble
1 Attachment(s)
Quote:
Swapping the FL&BR motor commands should have had no impact at all on the strafe command. And it should have corrected the rotate behavior. This is assuming that you have provided accurate test data about wheel direction in response to fwd/rev and strafe left/right as shown in the attached chart. Would you please post the before and after code as a LabVIEW PNG snippet as an attachment here on CD. |
Re: Mecanum Trouble
Sorry, had some problem with posting the picture of the code. It's updated now with a link to each instance of the code.
|
Re: Mecanum Trouble
Quote:
|
Re: Mecanum Trouble
Quote:
Quote:
Quote:
|
Re: Mecanum Trouble
2 Attachment(s)
Here are the attachments, in order before and after.
|
Re: Mecanum Trouble
Quote:
The miscommunication was that the "change" in question was not clearly defined, as we had already left yesterday with that change made and the rotation still wasn't working. Sorry about that. |
Re: Mecanum Trouble
1 Attachment(s)
Hold on a second, I think I know what's going on. On the "Open 4 Motor.vi", there are actually 4 terminals to invert motors. It looks like you have both of the bottom ones set to true and the top two unwired (which defaults to false). This would mean that Both your front left and front right motors are inverted, but not the other ones. Your inversions should match on sides, not front to back. I have attached a photo that should explain it a bit better.
Try going back to the default code (run the wires directly from the joystick axes to the holonomic vi) and see if inverting the correct motors fixes everything for you. If you push the joystick forward, and the robot moves backwards, switch the inversions to the right side instead. |
Re: Mecanum Trouble
We've sorted out the rotation problems by coding in a button that switches to arcade and using that to rotate, however we have noticed that strafing remains on the x-axis. but the y-axis causes rotation. we would like to resolve this and have the y-axis remain the same and the x-axis change
|
Re: Mecanum Trouble
Hey guys, sorry its been a while, but we still dont have a solution. We did find out our Talons were not ID'd correctly and we have fixed that. So here's the situation.
We changed the Holonomic.vi so that the values were correct. After a few more tests, we swapped the X and Y-axis wires that lead into the Holonomic.vi in teleop. We ended up having something similar to arcade drive, but with the Z-axis of the controller being used for strafing, and the strafing malfunctioning so that the wheels in front both ran forward, and the back ones ran back, rather than strafing right, and the front ran backwards, and the back forwards, rather than strafing left. |
Re: Mecanum Trouble
Very strange happenings!
So, needless to say, your guys' fixes worked. The reason it didn't help us at first is because we had a Talon IDing issue on our Mobile Test Bed. Then, when we decided to code the drive on our smaller test bed, something very strange happened. Every time we issued a forward signal to the roboRIO, the motors on our test bed ran backwards. After losing a lot of sleep and a lot of troubleshooting, we found out that the smaller motors on our test bed (the bag motors) run reverse of the Mini Cims, which made testing very confusing. Very strange! |
| All times are GMT -5. The time now is 01:35. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi