# Holonomic Drive

We’ve been told to make a holonomic drive on the VEX kit. However, we don’t particularly want to modify/make pieces to make a 45 degree holonomic. Would it work to use the following setup, and would the programming be significantly different? I would think that it would work fine, since it’s pretty much a rotation of the 45 degree angle drive.

I or _ Frame
] omni wheel (will run parallel to the face it is attached to)
. Placeholder

…]______
…I…I]
…I…I
]I______I
…]

Basically, you have one omni-wheel on each face of a square base. Since the drawing is somewhat ambiguous, the wheels which run in the same direction (on your screen, either horizontally or vertically) are on opposite corners of the robot. At this point, my primary concerns are the somewhat odd support polygon (in relative to the actual robot frame) and the programming.

I find your Diagram hard to understand… Embedded Graphics are easer to View…

YES, make the Square Bot Chassis, and attach one motor, Axel, Omni-Wheel per side?? You Pick One Corner, call it the front and program accordingly…

Does the attached picture convey your message? If you want FRONT 1 to be the front of the robot, the programming is quite simply the vertical motors are the y-axis and the horizontal the x-axis. If FRONT 2 is the front, then the regular holonomic programming applies. Both methods are considered holonomic, yet they are completely different (method 1 is way easier)

It turns out that I misinterpreted what they wanted to do. They wish to make a squarebot chassis and put a wheel in the center of each side (which would likely be pretty much the same deal).

Yes, that sounds like a good idea…

Look at the pictures of the Vex Holonomic Drive.

The Frame that supports the Motor, Axel, and Wheel have been cut to a shorter length, and attached to a frame like the Square Bot…

But without cutting the frame, you could make TWO Square Bot Chassis, stack them together and rotate one of the Chassis, 45 Degrees, then connect the Chassis together.

This will work fine. The important thing is the configuration of the wheels, the chassis shape around them doesn’t matter. Even “odd” wheel configurations can be driven holonomically with “a little code”.

The easiest way to build a 4 omni wheel holonomic drive train is to simply put each wheel in the middle of each side of a square base. No building 45* angles, it’s about as simple as just a regular differential drive platform. Programming, as has already been said, is therefore simple if you use one side as forward, because to go forward, you just need the two wheels on the sides, to go sideways you just need the wheels on the front and back, and to move diagonally, you just move the joystick diagonally. To spin, you can just subtract/add values from the other joystick.

Omni wheel Holonomic drive navigation paper.

Yes, totally about the square base and no need for 45-degree angles.

However, I would not necessarily recommend this forward-back (and diagonal) approach. The reason for it is that people tend to try to drive forward-back instead of diagonal, and it’s easier to do so with controllers. Meanwhile, the diagonals are actually the fastest directions. So you’ll have a tendency to have drivers unintentionally drive slower. Of course, it may be easier to mount arms, claws, etc. reaching out from a flat side, and so driving up to an object may change preferences for front-back-diagonal design. That’s why I’m not specifically recommending against it, just pointing out that you’ll tend to have a slower-driving robot-person combination this way.

And that square-root-of-two speed multiplier is one of the reasons to choose this drive style

One way to solve this is by building another square structure on top of the base, but rotating the upper structure 45 degrees.Then, the superstructure risers (lift towers, arm uprights, etc.) can be easily be aligned to the diagonals. Probably not a good idea for this year’s game, but it solves some problems in the general situation.

No, it’s not. That’s a common misconception. If you gear a tank drive to move at the same speed, you’ll get more torque out of the tank drive at the same speed. This root-two multiplier is not represented carefully in many things I’ve read. If you read them carefully, they commonly don’t go into the torque loss, only pointing out the higher speed at the same gear ratio. That’s comparing apples and oranges. Set them up for the same torque and compare speeds or the same speed and compare torques; then the comparison is appropriate and we can see the truth of the matter.

Strafing (and related diagonal movement without needing to rotate) is what is so valuable. It’s useful in and of itself, but also for making really sharp corners when you don’t have room to maneuver. (Think parallel parking, just being able to slide sideways into the spot.)

My experience is different, then. In many cases where student teams have used X-drive, they’ve cited their speed tests as a reason for choosing it. I have pictures of engineering notebook pages where exactly that is written at the bottom of a decision matrix. Teams definitely choose it for speed, according to experiments documented in their engineering notebooks.

And just to be clear, I’m not a fan of holonomic drives. I personally think it has a very limited use case. That’s why I ask the teams why they’re using it.

Are you sure?

Sure, but did they gear the tank drive to drive at the same speed and compare the torque? If you don’t touch the gearing, the holonomic drive will be faster while the tank drive (also with four motors) will have more torque. Now sacrifice some torque to set up the tank drive for more speed, enough to match the holonomic drive. Or, sacrifice torque to match the holonomic drive’s torque and measure the tank drive’s speed. Did they do that? If not, they compared apples and oranges.

In every case I can remember, they were comparing direct drive chassis, with no gearing beyond what’s in the motor. So, yes, I’m sure. It is undeniably faster for the same motor with the same internal gearing and the same wheel size. Change any of those things, and they’re different. That’s not what they were comparing, however.

I think @callen is noting that while the x-drive is faster, it is also essentially a 1.41:1 gearing for speed, so the torque is less. I think @kypyro knows this, but is only concerned about the speed increase, as it’s a gearing that can be done without gears.

Yes. I’ve been interested in why teams choose this, and speed is a frequent reason. I’m not saying it’s the best way to get that speed, I’m reporting what I’ve found when I asked teams about it. @callen is examining whether the square-root-of-two multiple with omni wheels driven on a diagonal is a good way to do it.

I think it’s almost never worth doing at all, except for very specialized reasons. But the teams that use it believe otherwise, obviously.

Yes, my point is many teams believe it, and I’ve seen it written online a lot (which increases the common belief), but it’s not really true.

If you want to know which is truly faster, x-drive v. tank drive for example, gear them both so that you get the same torque out of them. Then race them. You could also gear them for the same speed and check acceleration or check torque another way.

Otherwise it would be just as valid for me to put normal motors on an x-drive and turbo motors on a tank drive and claim tank drives are faster.

This video proves you 100% wrong

The only thing they change is the direction of the wheels

Okay so if we are going to re ignite a debate the forum has had at least a hundred times I am going to start off with a new strategy. First we are going to define terms. The catch all term “torque” really stops being effective.
lets go with

free speed
pushing force
carrying weight capacity

With 2 identically geared and powered chassis
1 is an X drive and 1 is a tank drive

The X drive compared to the tank

free speed = 1.41 times tank
pushing force = 1/1.41 times tank
carrying weight capacity = 0.5 times tank

These are the facts. An X drive vs a 1.41 geared tank drive is NOT identical.

One can argue the double load on the motors will slow the motors down more than was gained with the 1.41 multiplier. This would require some actual testing and wieight measurements to prove or disprove.