Ask Your Question

Omni-direction cmd_vel to motors speed callback

asked 2019-10-11 06:19:10 -0600

makemelive gravatar image

updated 2019-10-11 06:47:47 -0600

ct2034 gravatar image


I recently 3d printed some mecanum wheels and now i'm waiting for stepper motors.

My question is how to get the speed from the Twist message (linear.x , linear.y, angular.z) provided by move_base and transform into appropriate motor speeds. The setup is the normal square one (the extended lines from the rollers need to converge on the centre of the robot)

Thank you!!!

edit retag flag offensive close merge delete


You put omni-wheel in the tags. But you mean mecanum-wheel, right?

ct2034 gravatar image ct2034  ( 2019-10-11 06:56:01 -0600 )edit

yes sorry about that!

makemelive gravatar image makemelive  ( 2019-10-11 07:11:20 -0600 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2019-10-11 07:05:19 -0600

ct2034 gravatar image

You need to implement inverse kinematics for mecanum wheels. A quick google gave me: or even this one:

edit flag offensive delete link more


very helpfull what i needed, actually i think i need to implement only forward kinematics, inverse kinematics might be usefull for getting odometry although some guess work might be needed since the steppers are open-loop but still quite accurate. I will study the links and upload my rosserial arduino code (or Jetson nano gpio code ) with the a4988 drivers here!! Thanks!!

makemelive gravatar image makemelive  ( 2019-10-11 07:18:50 -0600 )edit

I think the terminology in the second link may be mixed up ...

ct2034 gravatar image ct2034  ( 2019-10-11 07:29:30 -0600 )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



Asked: 2019-10-11 06:19:10 -0600

Seen: 194 times

Last updated: Oct 11 '19