ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

I was dealing with the same doubt and found a reference that was very helpful to clarify this issue, in terms of mobile robotics fundamentals. CS 3630 Lecture Notes on Pose and Orientation, Frank Dellaert, January 17, 2014

Summarizing the main points:

  • you have built a differential robot (as also mentioned in the question topic)
  • a differential robot does not allow sideways velocity (non-holomic robot), so vy=0
  • assuming you would work with the /cmd_vel of type geometry_msg/Twist I would suggest to use:

    Vx=(v/w)sin(w),

    Vy=(v/w)(1-cos(w)),

    Vtheta=w

, where v is your desired linear velocity and w your angular velocity.

I was dealing with the same doubt and found a reference that was very helpful to clarify this issue, in terms of mobile robotics fundamentals. CS 3630 Lecture Notes on Pose and Orientation, Frank Dellaert, January 17, 2014

Summarizing the main points:

  • you have built a differential robot (as also mentioned in the question topic)topic question)
  • a differential robot does not allow sideways velocity (non-holomic robot), so vy=0
  • assuming you would work with the /cmd_vel of type geometry_msg/Twist I would suggest to use:

    Vx=(v/w)sin(w),

    Vy=(v/w)(1-cos(w)),

    Vtheta=w

, where v is your desired linear velocity and w your angular velocity.