Omni-direction cmd_vel to motors speed callback
Hello,
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!!!
Asked by makemelive on 2019-10-11 06:19:10 UTC
Answers
You need to implement inverse kinematics for mecanum wheels. A quick google gave me: https://www.scirp.org/Html/6-7900244_31739.htm#txtF2 or even this one: http://robotsforroboticists.com/drive-kinematics/
Asked by ct2034 on 2019-10-11 07:05:19 UTC
Comments
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!!
Asked by makemelive on 2019-10-11 07:18:50 UTC
I think the terminology in the second link may be mixed up ... https://en.wikipedia.org/wiki/Forward_kinematics
Asked by ct2034 on 2019-10-11 07:29:30 UTC
Comments
You put omni-wheel in the tags. But you mean mecanum-wheel, right?
Asked by ct2034 on 2019-10-11 06:56:01 UTC
yes sorry about that!
Asked by makemelive on 2019-10-11 07:11:20 UTC