Ask Your Question

writing a driver for 4-wheels differential drive robot

asked 2016-07-05 11:42:32 -0500

VEGETA gravatar image

I want to make a custom robot and my problem is publishing odometry values. I have and Ackermann steering car robot, but I read that it is hard to integrate that in ROS.

Thus, I switched to this one:

As you see, it is a 4WD differential drive robot chassis with wheel encoders. I've read about this package here:

but I don't know if it is a "driver" or not. Can you help me in this? I just want to integrate such a robot with ROS in order to do other stuff that I want which will include using Kinect and stuff... so getting accurate poses are essential.

I looked for ready solutions like Jakal but their price is simply insane!


edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2016-07-05 12:25:49 -0500

mcshicks gravatar image

You might be better off looking at this package to start and this related page

I looked briefly at the web page and I didn't see where the encoders were included. Anyway if you have the encoder input you either do the odometty on the arduino or use rosserial to send the values to your PC and to it there. In either case you will have to use rosserial to send the topics to your computer you are running ROS on.

edit flag offensive delete link more


nice help there, I thought of using Arduino but I guess Raspberry Pi 3 is going to be used as main controller with ROS so why not just use it directly?

my question is how to calculate odometry? what are the required values and so on?

it is better if there is an example.


VEGETA gravatar image VEGETA  ( 2016-07-05 16:31:29 -0500 )edit

Look at this example: . You need a method (encoder) to measure the wheel rotation and the distance between the wheels

mcshicks gravatar image mcshicks  ( 2016-07-06 19:33:58 -0500 )edit

so just this short amount of code is necessary? then use rosserial to send it to navigation packages?

I read somewhere here that there is a ready-to-use differential drive driver software... do you know about it?

VEGETA gravatar image VEGETA  ( 2016-07-19 18:46:21 -0500 )edit

My robot is not 2 wheels but it is 4 wheels... is that still diff drive or is it skid drive?

VEGETA gravatar image VEGETA  ( 2016-07-24 03:09:54 -0500 )edit

hi @VEGETA did you find the answer to this question? I have found some examples for this problem. However, they are all made using 2 wheels. And I think it's very difficult to make a 4-wheel robot using these examples.

tooght gravatar image tooght  ( 2018-01-21 12:49:20 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


Asked: 2016-07-05 11:42:32 -0500

Seen: 1,819 times

Last updated: Jul 05 '16