Paper: 4 wheel independent drive & independent steering ("swerve")

I can’t get to the papers above, so I’m not sure where to start. Here’s how to flip and rotate the axes - anything you want should be a combination of these; apply them one after the other.

  • To use the same origin axis, but reverse direction (clockwise <-> counter clockwise), negate all the sin() terms.
  • To rotate 180 degrees, negate all the sin() and cos() terms.
  • To rotate the reference point 90 degrees “forward”, keeping direction constant, change all sin() to cos() and all cos() to -sin().

I can’t access the sample LabView file either, it appears as though the document doesn’t exist anymore. @Ether, would you be able to re-upload the document that was supposed to be at the following link?

I am very interested in learning from your implementation of this equation ::rtm::

non of the links are working could you please send another link

All of the old CD-Media posts are currently in the process of being fixed:


I see lots of content in CD-Media but I cannot find Ether’s papers when I search on the title (or fragments of it). Have all the posts been restored or is that work still happening?

Do you have a specific White Paper URL that is broken?

FYI, here’s the search query that will return all White Papers imported from the old vBulletin forum that were published by Ether:

1 Like

All set now. I was trying to get to Ethers “4 wheel independent drive & independent steering (“swerve”)” paper and could not initially get to any of the related PDFs (and other files). If I run into another I’ll raise my hand again. Thanks!

Hi everyone!

What about steering motors velocity? I only see traslation speed and steering angle.


Why do you need the steering motor velocity? For a tuple of <x, y, theta> the steering motor angle should be constant.

If you know what the desired steering angle is, you can tune the PID yourself to get your desired steering velocity. Also make sure you allow it to wrap around at 360 degrees. I think PIDController can help with this.

Hi you all,
I found this topic and all the information, PDF and excel tool are great! I´ve just have a question… I´ve spend some time but I was not able to find out why (wr)x=wL/2 and (wr)y=-wW/2 in PDF page 4. Can anyone help me? Like step by step calculation to get those expressions… I would really appreciate it :relaxed:

first some geometry:
rotational velocity is perpendicular to the radius so D=90-c
a=C angles between parallel lines so D=90-a

looking only at WR and its components:
we can use trig to find the absolute values of X and Y
sin(D) =Y/WR multiple both sides by WR
sin(D) * WR= Y
sin(D) is also sin(90-a) (remember D=90-a
sin(90-a) = cos(a) trig identity
so we get:
cos(a)*R *W =Y
from trig we know that: cos(a)=(w/2)/r
after multiplying both sides by r: cos(a)*r= w/2
therefore the absolute value of Y equals w/2 * W
sense it is the absolute value you maybe need to negate if it is in the opposite direction from the positive direction of your axis (such as in the case for the x component in this example)

the math is the same for the x component but replace of the sin with cos and vise verse

1 Like