Log in

View Full Version : Mecanum control scheme suggestions?


TD912
30-01-2011, 01:03
We had a bit of an argument over what would be an efficient way to control a mecanum bot. I have realized many teams attempt compete with mecanum bots, but don't always take full advantage of their maneuverability.

Let's be clear: Please do not turn this into another mecanum vs. 6wd discussion, this is about controlling mecanum bots easily and efficiently.

I suggested a 2 joystick approach. This could either be 2 Logitech Attack joysticks, or a PS2-like gamepad.
The left joystick would move forward, backwards, and strafe, while the right joystick would control rotation.
I feel like this would give the maximum amount of control. It is somewhat similar to a first-person-shooter video game. However, a concern has been brought up about 2 joysticks being too complicated and unnecessary.
http://i53.tinypic.com/2w1xt9v.png

Another suggestion was to use only 1 joystick and have a "mecanum mode" switch, where the robot would drive like a 'regular' bot until a button is pressed. Enabling the button would then allow it to temporarily strafe, until the button is released.
This eliminates the need for 2 joysticks, but limits the movement of the robot to either strafing or rotating; it can never do both at once.
I feel this defeats the purpose of having a mecanum drive, as it is being looked at as a 'regular' drive with optional strafing ability.
http://i55.tinypic.com/2ur3uht.png

Then there is also the option of getting a 3-axis joystick, but all of us seem to dislike that idea.

What do you guys think? Or do you have any other suggestions?

BigJ
30-01-2011, 01:09
We use the first scheme mentioned, a translation stick and a rotation stick.

You want to be able to translate and rotate simultaneously to "orbit" things.

Ether
30-01-2011, 01:26
What do you guys think? Or do you have any other suggestions?

There are a few different suggestions for driver interface here (http://www.chiefdelphi.com/media/papers/download/2906).

TD912
30-01-2011, 17:23
We use the first scheme mentioned, a translation stick and a rotation stick.

You want to be able to translate and rotate simultaneously to "orbit" things.

Is "orbiting" like pivoting around a point? Similar to this video (http://www.youtube.com/watch?v=-_rhg4cp5yo) at 0:29?

The person who was suggesting the second control layout says we shouldn't ever have a need to rotate & strafe simultaneously.

However, I believe having 2 joysticks is worth the slight increase in complexity, as it allows for greater maneuverability (which is why we chose mecanum in the first place!)

BigJ
30-01-2011, 17:44
Is "orbiting" like pivoting around a point? Similar to this video (http://www.youtube.com/watch?v=-_rhg4cp5yo) at 0:29?

Yeah, that's exactly what I meant, I should have described it more.

Dad1279
01-02-2011, 08:59
.....Then there is also the option of getting a 3-axis joystick, but all of us seem to dislike that idea........

Why? We used the Logitech 3d last year, liked it.

couvillion
03-02-2011, 13:52
I haven't found a rule against it yet so I am planning to use the first joystick to control translation, and the take apart a second joystick to create a dial that controls facing.

Ether
03-02-2011, 13:57
take apart a second joystick to create a dial that controls facing.

How are you going to process the output from this dial? e.g. Are you going to extract the angle and use that to create a setpoint for a closed-loop control with gyro angle as the process variable... or something else?

couvillion
03-02-2011, 14:43
That is the basic plan. I think some of that is already supported in LabView Mecanum VI. A knob perhaps with stops for face goal, face feeding station seems to be the appropriate level of abstraction for this game.

Certainly a self centering joystick can't control facing and the driver doesn't need to worry about about turning speed he needs to worry about facing so giving him a control of rotation speed simply is making him do the control loop stuff in his head.

Ether
03-02-2011, 15:04
I think some of that is already supported in LabView Mecanum VI. A knob perhaps with stops for face goal, face feeding station seems to be the appropriate level of abstraction for this game.

The functionality you seek is not part of the library support. The library support for holonomic is limited to using the gyro for field-centric control, not for angular-position seeking and holding.

couvillion
03-02-2011, 15:39
Been thinking about PID controllers for a while now. Hope I get it right.

Ether
03-02-2011, 15:58
Been thinking about PID controllers for a while now. Hope I get it right.


This (http://www.chiefdelphi.com/forums/showpost.php?p=1012070&postcount=6) may help.

fhsroboticsteam
04-02-2011, 18:30
This would be the inexpensive route that our team took

Buy a used original Xbox controller on ebay or craigslist (very cheap), or request a donation from a team member.

Chop the end and solder it to a male end of a usb cable. (yes the original xbox controllers are usb)

Download the drivers
http://www.redcl0ud.com/xbcd.html

In labview the axes from the controller will come out as follows
Axis 1: Left thumbstick X
Axis 2: Left thumbstick Y
Axis 4: Right thumbstick X
Axis 5: Right thumbstick Y

you will also get an extra 12 buttons along with your 4 axises

We used Axis 1 and 2 to go forward, backward, left and right
and axis 4 to rotate.

Hope this helped.

TD912
05-02-2011, 16:42
Yeah, we're likely going to go with a USB gamepad, similar to this one:
http://www.newegg.com/Product/Product.aspx?Item=N82E16826249042&cm_re=Steelseries-_-26-249-042-_-Product

There's also two models from Logitech that are similar (or the same?) to the one used in FTC, and they're only around $10-25:
http://www.amazon.com/gp/product/B0000ALFCI?ie=UTF8&force-full-site=1
http://www.amazon.com/gp/product/B003VAHYQY?ie=UTF8&force-full-site=1