X-Drive Speed

I see what you’re saying. But by your logic of vector addition it would require that two wheels both at 100 rpm traveling the same direction would give the robot a speed of 200 rpm. You can’t have it both ways. You are applying different logic to an xdrive and a tank drive.

Oh that’s right! Math! I forgot all about it. I’d appreciate it if you would chill just a bit and participate in discussion without automatically assuming I’m mentally challenged because I don’t agree with you.

I’m not implying that you’re mentally challenged, nor am I assuming it. I’m simply stating must have ignored common mathematical procedures that apply to this, and that have real world proof of work. Have you seen an X Drive? They actually do go 1.41 times faster than a tank drive with similar configuration (Weight, Gear Ratio, Wheel Size, etc.) There is real world proof behind this, and you seem to be ignoring it. There’s no point in fighting a troll, especially with a name such as “MonicaLewinsky2K16”…

The two directions of the x drives movement act independently. The rollers on the omnidirectional wheels mean that I can drive 100rpm north/south without effecting my east/west movement and vice versa. So we can reach the logical conclusion here that we can move 1.41x as fast in any diagonal direction (which is actually a square direction relative to the chassis because the wheels are on 45 degree angles). Ignoring the tank drive for now, do you agree with this?

Actually I have used both x drives and tank drives during my years in vex. This season I switched between the two. Also I’m not trolling…I’m posting anonymously and after all the heat I’m getting for these posts you can understand why

I’m just curious, did you use the same configuration on both of the two robots? I’d assume not, seeing as the robot did not follow the rule by which most do.

Yes, you are correct in assuming that with a tank drive, vector maths don’t modify the speed, but the same is not true with an X drive.

You can’t drive in more than one direction at any given time with a Tank drive, however, with an X Drive you can. It’s the idea of strafing. When you strafe, you effectively drive both up and left (in this example) however, when crabbing or moving diagonally, you are moving slower, since you’re moving in one direction.

Interesting. Not sure why the same is not true for an x drive…
Since this discussion isn’t making much headway I think I’m going to strip down my tank drive and compare it to my teammate’s x drive and see how that goes. Also maybe ask my physics teacher about it

What you say makes sense. It took looking at the velocities rather than the wheels to get it to add up for me, pun intended.

Lets not get too riled up over vectors. This post provided a mundane and basic description of the pythagorean theorem that wasn’t helpful to anyone in the context of this discussion. This post and the one’s that have followed have included exaggerated accusations that, once again, have been helpful to no one. If you want to judge someone as a troll, I would suggest that you look at the value their posts bring to the discussion. They may seem argumentative, but at least they aren’t made just to heighten ones ego, the ultimate form of trolling.

I agree with the fact that vector addition only really makes sense when working with 45 degree angles, it’s strange honestly. When applying it in any other way, things don’t seem to make a lot of sense (see attached picture)
http://s3.hfreni.space/img/f002af.png

Just to clarify again, vector addition ONLY works in the case of an x drive because the x motion are y motion are completely independent, and it simply gives us the length of the resulting vector. In the following pictures the green arrows are the wheel motion vectors (always 100rpm) and the red arrows are the resulting motion.

The first picture shows an x drive:
http://puu.sh/ow5uh/d82a713fbd.png
Vector addition works for this case to give us the length of the resultant vector, but only because the x and y direction are independent

Now if we adjust the angle of the wheels to make the drive more “tankish” (the wheels are no longer on a 45 degree angle, they are closer to being straight forward) which brings the two vectors closer together, we get this situation:
http://puu.sh/ow5xI/bc7586fc83.png
This implies that the robot would SLOW DOWN which agrees with the empirical evidence.
Note that this is NOT vector addition, as vector addition would imply the tank drive would go faster, as you correctly pointed out.

Finally, we reach the case of a tank drive where both wheels are pointing in the same direction:
http://puu.sh/ow5F2/1a7d982acd.png
Again, this is NOT vector addition.

Currently in the process of trying to figure out what the correct maths is for finding the length of the resultant vector…
Apologies for the crude drawings and I hope this helps!

Well you’re math is right as ive said before just not sure why vector addition is applicable for one and not the other. Going to have to do some looking into this on my own. Thanks for the help

Vector addition is never really applicable, It just gives the correct answer in the case that the wheels are perpendicular. The actual resultant vector length seems to be 1/cos(theta) * the component vectors where theta is the angle the wheels are away from facing straight forward.

Thus for an angle of 0 (ie. tank drive):
resultant = 1/cos(0) * 100rpm = 100rpm

For an angle of 45:
resultant = 1/cos(45) * 100rpm = 141 rpm

You can try any angles in between to get different speeds, but note if your angle is not 45 the x drive will move at different speeds in the forward and strafe directions.

The original blog post is isolating one wheel and comparing travel while moving diagonally which in reality isn’t how you would implement the x-drive. I drew up an analysis which fills in all parts of the puzzle. When using the x-drive opposing vectors cancel each other out, so you must consider the net speed. I’ve come to the conclusion that the tank drive is always faster unless rotating in which case they are equal. The x-drive is much more maneuverable in general, unless trying to drive up a ramp.

When utilizing an X-Drive which has 6 wheels, with 4 being a traditional X-Drive, and 2 being similar to the middle wheels on a 6 motor drive, do you have to intentionally slow down the middle wheels by a factor of the square root of two?

It does travel about 1.414 times faster because you get one rotation of the wheel at 45 degrees, then the rollers on the wheel are rotating perpendicular to the direction of the wheel at the same speed the wheel is rotating.

Add the two component vectors to get the resultant that is sqrt2 times larger than each leg.

The math works. Hundreds of people have done it.

Since the x-drive wheels are trying to go 1.4 times faster than a straight wheel I believe you would need to speed up the middle wheels by a factor of the square root of two.

You would have to speed up the middle wheels by a factor of sqrt2, or slow down the corners by 1/sqrt2

Unless you use 2.75" wheels on the corners, because that yields a gear ratio very close to 1 in the forward direction. Similar to the one in this video: Asterisk Drive You can do the math to check it if you want, but it works. Just make sure the internal gearing on all the motors is the same then. Effectively the smaller wheel automatically slows it down.

Ok so after consulting with my physics teacher I have found that a tank drive definitely goes faster. You all are correct when you say that two vectors of 100rpm of one going north and one going east would create a resultant vector of 141rpm northeast. However this is not what is happening in an xdrive. The two vectors I just described are not fighting each other but rather act in conjuction with each other. In an xdrive the two vectors act against each other, canceling out the vector in the x direction, leaving two vectors of 70.71rpm in the y direction that you cannot add together for the same reason you cannot add the vectors of a tank drive together. Thus an xdrive goes 1/root2 times as fast as a tank drive.

Please just build it to prove to yourself that you are wrong. (did you read this? http://www.aura.org.nz/archives/1137 )

Or, if you are a troll, just…don’t.

So, an X drive is a plus drive moving diagonally. That motion might be easier to visualize. We basically have 2 separate 2 motor drives in a plus drive, one moving forward/back and the other moving left/right.


^   -->     ^
|           |
    -->

Let’s ignore slowing due to torque and wheel slippage ATM, because they’re annoying. The > and ^ mark directions of movement of each wheel, the – and | are wheels. If each is spinning at 100 rpm, then we are in fact moving forward at 100 rpm * pi * wheel diameter and right at 100 rpm * pi * wheel diameter. This gives us the result that it goes faster than a tank drive. And I’m not saying that your physics teacher was wrong, @MonicaLewinsky2K16, I think s/he misunderstood the way an X drive works.

Yeah, i think someone made a mistake, my numbers have a x-drive being faster