I have implemented the pure pursuit algorithm for my differential wheeled robot as described in the following paper:


Such that the steering angle is given by λ=2x/l^2

I want the robot to have a constant linear velocity V (say of 0.5m/s) but I am unsure of how I'd go about finding the angular velocity ω using this calculated steering angle.

I wish to plug the angular and linear velocity into the following inverse kinematics formuala for a differential wheeled robot as shown in the figure below.

enter image description here

Where the formulas are described in section 3.2.2 'Introduction to Autonomous Mobile Robots' found here:


I'm unsure of what I need to do to translate the steering angle into a form where it can be input into the formula described above for each of the wheel speeds. I'm sure there is a simple solution but I am lost as to the next steps to take


You can set the angular velocity to whatever you want, that's the control input and depends on the algorithm. You have to set it to be something proportional to the difference in the desired angle (from the intercept trajectory) and the actual angle as measured. You then update the desired angle and velocity and re-calculate.

Try this:


Which will show you how to derive angular velocity as a function of desired heading / speed to a fixed point. Then note that in the paper you linked, they do the same, calculating a velocity that converges to a "look ahead" point.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.