I want to create a robot that will navigate on a desired path! That path can be a straight line or a circular path with a given radius.

I will use 3 or 4 omni wheel drive platform and for positioning, I am using this research paper which perform dead-reckoning using mouse sensors.

Dead-Reckoning using Mouse Sensors

I've understood that I will get x, y and θ positions, which are actual positions of robot. These can be used to calculate the error and then using PID to compensate the error.

But, to find the error, I must have the desired position of the robot at that moment!

For example, the Robot is at (0,0) and it needs to move in a circular path of equation

$$ x^2 + y^2 - 10y = 0 $$

Now, I want to calculate the position at t = 2 sec, how to do that?

If someone has already done similar stuff, please post the link. I am not able to find any resource on web!


Generally speaking, you need to define how long you want a full revolution to take. From that, you know what the desired angle is at each timestep and can calculate the desired position.

Note this breaks down to cos and sin waves in both $x$ and $y$ for ellipses in general. $$ \begin{align} x^d - x_c &= a_x \cos \left ( \frac{2 \pi}{p} t \right ) \\ y^d - y_c &= a_y \sin \left ( \frac{2 \pi}{p} t \right ) \end{align} $$ where $x^d$ and $y^d$ are the desired respective positions, $(x_c, y_c)$ is the center of the circle, $a_x$ and $a_y$ define the ellipse size ($a_x = a_y = $radius for a pure circle), $p$ is the period in seconds for a full revolution, and $t$ is the time in seconds.

  • $\begingroup$ Can you provide me a link for this kind of resource? $\endgroup$
    – Akshat
    Aug 2 '14 at 13:46
  • $\begingroup$ This is just basic trig. Consider a unit circle that you want to complete in $2 \pi$ seconds. At t=1s you have $\theta=1$, $x=\cos(1)$, and $y=\sin(1)$ $\endgroup$
    – ryan0270
    Aug 2 '14 at 15:27

This excellent course covers a lot of your question. Processor presented well in talking and also actual demo on real hardware.

Also has software stimulator for student to test out without real hardware.

As course now finished, not sure if you can log in or need to wait until next run.


also, I never used omni wheel, would you mind advise formula, pointer,tutorial,paper on how to convert wheel rotation to speed and angle of path. Also, if possible, can I have 10 to 20, photo of different omni wheel setup. First time to see your paper using 90 degree gear to allow longer motor than straight 120 degree delta format usually see. excellent idea.


This site is temporarily in read only mode and not accepting new answers.

Not the answer you're looking for? Browse other questions tagged .