How does a mecanum drive work?

Please correct me if I’m wrong about anything, it’s my first year actaully being involved and im still not 100% clear on a couple things haha.

Just found out that mecanum drives are a thing, so I was wondering how going forward and back as well as left and right works with those wheels. I also saw a couple teams with omni wheels as only the back two of a tank drive and was wondering how that effected the driving/why a team would choose to do it. Thanks.

Using omni-wheels on the corner reduces scrubbing and makes it easier to turn. When a traditional tank chassis turns, the outer wheels have to move more laterally (against the direction they’re designed for) than the center wheels. Using omnis helps the outer wheels slide left and right and making it easier to turn. I really can’t explain it too well but we experienced this last year. We had 6 pneumatic wheels (3 on each side) and it was really hard to turn the bot due to the high friction of the wheels. Using omnis in the front helped solve our turning issue and we were able to turn much much better.

You don’t need to use omnis on a drivetrain. They help turn but another option is to have a center drop so the wheels don’t scrub as much. The KOP drivetrain comes with a center drop so you don’t have to worry about that.

1 Like

tl;dr on mecanums: Angled rollers.
tl;dr on omnis: It depends.

OK, that’s a little bit short. I’ll do them in that order.

Mecanum wheels have rollers at an angle. There are two “directions” of mecanum wheel, Left and Right. For now, we’ll ignore exact placement (that’s what CD search is for, look for papers by @Ether) and go for a high-level overview. You place 2 Left wheels and 2 Right wheels, each diagonally from the wheel of its same type, and power each wheel independently (and control each motor independently). For forwards and backwards, all 4 motors go the “same way”, similar to a tank drive. Same for a spin. But for sideways motion, you turn one side’s motors towards each other and the other side’s motors away from each other.

@ProPain37 covered the omnis pretty well; the one thing I would add is that strategically placed omnis can help you move the center of rotation (CoR) of your robot to where you want it (i.e. forward or back of center) instead of in the middle of the robot. This could be really useful in games like 2015 (CoR on the stacking side) or in some shooting games (help turn the robot more accurately/better) depending on what exactly you wanted to do.

1 Like

What’s a centre drop?

You lower your middle axles by a small amount. (Typically 1/8th or 3/16ths of an inch)

This means that only some of the robot’s wheels will be on the ground at any time. It makes your robot a little tippier, but it also makes it turn more easily.

2 Likes

Oh, ok. Thanks.

1 Like

image
Basically Mecanum wheels apply force 45 degrees from straight forward. You can break this down into part of the force being in the front-back direction and part of it being in the side-side direction. When the front and back wheels are ran in opposite directions, the front-back forces cancel out and the only remaining force is in the side-side direction. This causes the robot to move sideways. You can also run the wheels together in the same direction to make the robot drive like a standard tank drive.

The key to mecaum drive is that each of the four wheels needs its own motor independent of the other 4 wheels so that it can turn in either direction at any speed. With a traditional tank drive like the kit chassis, all of the wheels on a side are connected by belts or chains.

When you use a tank drive, the wheels on the corners rub against the carpet and make it hard for the robot to turn. Most teams make the center wheel on either side about 1/8" lower than the corner wheels so that only two wheels on each side touch the floor at any given time. This makes it easier for the robot to turn.

3 Likes

If you’d like a more in depth explanation about how all of the math works out for this, I’d suggest familiarizing yourself with the term vector and try to learn a bit about the basic trigonometry functions sine, cosine, and tangent. Trig is crucial to understanding mecanum and it’s also useful for doing all kinds of robot-related math whether you’re a programmer or member of the build team.

1 Like

The image really helped, thanks. I’m sold on mecanum being cool now. maybe not the most convenient because you need to program each motor independently but it’s still cool nonetheless.

Mecanum is really cool, but it usually isn’t the best choice for your drivetrain. It’s very vulnerable to defense and it isn’t as maneuverable as swerve or slide drive. This is because the rollers on the wheels waste some of your traction in the direction you aren’t trying to move and that hurts acceleration. Some teams like 1986 have used it very effectively, but they’re the pretty much the exception to the rule.

However, if your team is looking to approach holonomic drivetrains (holonomic basically just means it can move sideways) in the offseason, mecanum is very simple to design and control compared to the other options.

3 Likes

I would–personally–suggest an H-drive first for simplicity. 1 extra motor instead of 2 is the primary reason for that.

H-drive: All the wheels of a tank drive are omnis. In the middle of the robot, there are another few omnis at a right angle, used for sideways translation.

If you have field obstacles like the Boundaries this year, you’ll want a retracting/shock-tolerant H wheel set. that may add another actuator.

The standard thing I would say–particularly in your position, @AltoClef–is that you want to develop the drivetrain in the offseason FIRST, before you consider using it in competition, if at all possible. Part of that is to figure out what you don’t know. The other part is so your drivers have something to practice with!

2 Likes

The only reason I disagree with this is that it’s really hard (in my personal experience) to get an H-drive flat enough for all 5 wheels to engage.

Game fields and school floors aren’t really flat either so it can be really difficult to work out. Using a rocker drive solution like 148 solves this problem but it’s also a lot of mechanical complexity to add.

Mecanum can also struggle if the drive base isn’t completely flat but it’s typically less picky about this for a few reasons.

  1. 4 points of contact is easier to level than 5 points of contact.
  2. The wheels are further apart and having a bit of frame flex can do the leveling for you. The center wheel in an H-drive is usually connected to a cross-member across the frame which will significantly increase frame rigidity, which is something we don’t really want (to a degree). Your drive base should definitely be rigid, but some amount of flex is beneficial simply due to imperfections in the driving surface.
  3. In most modes of translation/rotation, the wheels on opposite corners of a mecanum drive will be doing pretty close to the same thing, and one of those wheels will always have full contact with the floor. This also helps to minimize the flatness issue.

All that said, I totally agree that H-drive is conceptually easier to grasp, but I’d argue most teams will be more successful trying to get mecanum to work properly. The math behind both drivetrains is pretty similar but I believe you would go about controlling them a bit differently. This is all based off of my personal experience working with both drivetrains and I totally am not an expert on either.

This is great advice. We tried to do H-drive in season in 2017 and we ended up having to remove the center wheel because it caused so many issues.

1 Like

You don’t need to precisely calculate the center “h” wheel. If you do what robowranglers did in 2014, it’s basically a swivel and the torque of the motor pushes the module down which allows the bot to translate. The module itself isn’t too hard to make.

I was bored first semester cause we didn’t have much to do so during the process of multiple lunch periods I decided I’d make a mini h drive out of old kop frame material and to make the “h-module”, all I used was a bandsaw and a drill press. It worked pretty well with the only downside being that there was 0 math done to calculate gear ratios.

To OP: DONT DONT DONT DONT do a drivetrain that can move sideways. Yes it’s cool (in theory) but in reality it’s usually not the best choice. Mecanum and H-Drive are able to be pushed around quite easily and probably aren’t the best choice. The only exception to the moving sideways bad is swerve but that’s honestly not worth it for a lot of teams.

As 254 put it

1 Like

Omni wheels have rollers aligned 90 degrees to the wheel. This allows the wheels to apply force forwards and backwards, and to slide freely left and right.

A hypothetical wheel with parallel rollers around its rim would be rather useless, because it would apply zero force forwards or backwards (wasting the power of the motors attached to it), but it would still resist sliding left and right.

Mecanum wheels have rollers at an angle (say 45 degrees). This means that when a motor rotates a mecanum wheel, it produces a force 45 degrees away from the way the wheel is facing (parallel to the roller axles). Depending on whether the rollers are 45 degrees clockwise or counterclockwise, a mecanum wheel rotating forwards will push either forwards-and-left or forwards-and-right.

Here is a mecanum wheel viewed from above, with its axle going along the y-axis of the picture:


 ← |||| → traction wheel pushes forward or backward


       ↗ mecanum wheel can push this way
   \\\
  ↙ or that way

In this picture, you are viewing the rollers on the top of the wheel. The rollers on the bottom of the wheel (the ones touching the carpet) are at this angle: ///. This is why the wheel can push in the ↗↙ directions, and freely slide in the ↖↘ directions. Analogously, an omni wheel with its rollers are oriented like === can push in the ←→ directions, and freely slide in the ↑↓ directions. Roller wheels can always push parallel to their rollers’ axles, and freely slide perpendicular to their rollers’ axles.


Let’s say your robot has 2 mecanum wheels. One has its rollers twisted clockwise, and the other has its rollers twisted counterclockwise. When you spin both wheels “forwards”, one wheel will push forwards-and-left, and the other wheel will push forwards-and-right. The left- and right-forces will cancel each other out (so long as your robot isn’t putting more weight on one than the other), and the robot will move forward.

  ↗ this wheel pushes this way
\\\
 |
 |    → robot goes forward
 |
///
  ↘ this wheel pushes that way

This robot does a funny thing when it tries to turn in place. It turns (because one side is being pushed forwards and the other is being pushed backwards), but it also slides sideways (because one wheel changed direction, so both wheels are now pushing sideways the same way).

  ↗ this wheel pushes this way
\\\
 |
 |    robot goes ↷ and also ↑
 |
///
  ↖ but this wheel pushes another way!

Because there are only 2 wheels, and each one sorta pushes in 2 directions (a left-right direction and a forward-backward direction), we can’t always make the forces add up to what we need. Let’s use 4 wheels!

\\\-----///
 |       |
 |       |
 |       |
///-----\\\

(It’s important that the wheels be organized exactly this way, because otherwise the robot can’t turn.)

It can still go forward (and backward), because the left-right forces are still balanced, and the forward-backward forces are all forward.

  ↗
\\\-----///
 |       | ↘
 |   →   |    robot goes forwards
 |       | ↗
///-----\\\
  ↘

Now, it can also turn! The back wheels still produce the same sliding force that they did when there were no front wheels, but the front wheels now produce an equal and opposite sliding force. The robot spins in place with little wasted force.

  ↗
\\\-----///
 |       | ↘
 |   ↷   |    robot turns
↖|       |
///-----\\\
       ↙

Turning is done by making the left wheels spin one way (forwards, in the above example) and the right wheels spin the other way. What happens if we make one diagonal pair spin one way, the the opposite diagonal pair spin the other? It goes sideways!

  ↗    ↖
\\\-----///
 |       |
 |   ↑   |    robot translates sideways
↖|       |↗
///-----\\\

A tank-drive robot can drive forward/backward, turn in place, or make wide turns (facing tangent to the turn). They can only face the way they are going.

A mecanum drive robot can drive forward/backward, drive left/right, turn in place, drive diagonally, make wide turns facing tangent to the turn, and make wide turns facing into or away from the center of the turn. This is the same flexibility that swerve drive robots have – the ability to travel in any direction, and face any direction, at any time.

Mecanum drive robots are built very similarly to tank drive robots. You need separate motors for each of the 4 wheels, but the axles and wheels are mounted identically to tank drive wheels. You can easily make a mecanum drive robot from the kit-of-parts chassis.

Mecanum drive has serveral major weaknesses:

  1. The wheels are heavy, and the small ones are often fragile. In addition to eating into your weight budget, heavy wheels require a lot more motor power to accelerate or decelerate.

  2. Mecanum is never totally efficient. Tank is efficient going forwards/backwards (all wheels push the right direction) and inefficient when turning (all non-central wheels scrub). Swerve is always efficient, because it can always make all 4 wheels push the right direction. Mecanum makes all 4 wheels push in ways that add to the right direction, but there are almost always extra (wasted) forces that cancel each other out. Wasted force = wasted traction and wasted energy.

  3. Mecanum drive is only controllable if all 4 wheels have equal traction. If one or more wheels have less traction than the others, then those wheels will also produce less force than the other wheels, and the forces will no longer add up or cancel out the way you expect. The robot will do weird drifts or turns when it isn’t supposed to, and be hard to control. Reasons why the wheels might have different traction include:

    1. the wheels are on different surfaces (like carpet and HDPE)
    2. the robot is tipping while performing an aggressive maneuver, reaching out with a manipulator, being defended against, or carrying heavy game pieces
    3. the robot’s center of gravity is not centered between the 4 wheels
    4. one of the wheels is damaged
    5. some of the rollers are bolted in too tightly, worn down, poorly lubricated, or dirty
  4. Mecanum wheels have poor traction. The small rollers have rather hard rubber coatings on them, so they can’t sink and bite into carpet nearly as much as plaxion tread, or pneumatic tires. Also, because each wheel is covered in rollers, they can slide freely in the direction their rollers are pointed. The robot doesn’t slide freely (because half of the rollers point one way and the other half point the other way), but it is still much easier to push than a tank drive robot.

Fast, well-driven mecanum drive robots can evade defenders, but can’t push through them. Slow mecanum drive robots driven by inexperienced drivers will fall victim to any defender. Mecanum robots are nearly useless as defenders, unless they block game pieces in-air, block driver or robot vision, or brace themselves against the field.

This is really the key reason you don’t see more mecanum robots. Teams that are comfortable with swerve will almost always choose swerve because of its advantages (efficiency, speed, maneuverability, traction). Teams that aren’t comfortable with swerve have to evaluate every game after kickoff. If defense will be effective and commonplace, teams will stick with tank. If defense will be minimal (ineffective, difficult, risky, or outright illegal), and maneuverability valuable, then mecanum might be a competitive choice that year.

Even if a game is free of defense, most teams will still build tank drive robots, because those are simpler to build, simpler to program, and simpler to drive. Simple robots get “done” sooner, enabling more driver practice. Simple robots cost less. Simple robots are more reliable in competition. And every year, at least one robot on the Einstein-winning alliance has been tank drive.

That said, mecanum drive is really cool! I think it’s great for off-season robots. They’re not too difficult to build or program, and they are very interesting to onlookers (and sponsors!). It’s also much more viable in FTC, where defense is less common, efficiency is less important (you aren’t as worried about tripping 40-Amp fuses), and the forces are much lower.

5 Likes

I’m pretty sure by OP’s response he was saying it was “cool” but not necessarily what there were planning to build. I think we all know that one student that has said “That’s cool, we should build it” with no other reason. Based on the recent Thread history of OP, he (or she) is smarter than that.

@AVHon has a really good explanation of mecanum wheels. This is fundamentally more valuable because it helps on understand both mecanum drive and mecanum intakes (also know as vectored intakes)

Op, since you seem to be interested in different drivetrains, here’s a pretty good powerpoint called drivetrain design by 1114, Simbotics. The actually cad models are a little out of date in terms of how people typically build drivetrains, but the fundamentals are there.

Often, when picking a drivetrain, doing what you know best has major advantages. You learn the flaws and take advantage of the features, while better designing programming and electrical for it. (tech isn’t the only sub-team :stuck_out_tongue: )

1 Like

It certainly is if you rigidly mount all the wheels, especially if the terrain isn’t perfectly flat (and it isn’t). By mounting the left/right wheel on a spring or pneumatic cylinder to maintain a basically constant force* of engagement on that wheel, it works pretty well. I haven’t used it myself, but Vex’s Versadrop will do this.
https://www.vexrobotics.com/217-4824.html

* typically 20-30% of the robot weight seems to work well.

1 Like

What’s the 148 rocker drive?

4WD all omnis?

I believe it’s where the torque from the motor actually pushes the strafe wheel into the carpet. I did a white paper on how it (theoretically) works a while back.

I think 254 will change their minds in the coming seasons. The exceptional performance of 148 (previously a no swerve team) this year with even just cots swerve was proof in my mind sideways is most certainly not a waste.

1 Like

Well…