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

Mecanum wheels ok in one direction not the other in Gazebo

asked 2014-09-19 17:54:34 -0500

arennuit gravatar image

Hi all,

This looks like a problem of contacts simulation parameters... Let me give more details:

I am currently trying to emulate mecanum wheels using ros indigo and gazebo 2.2 thanks to a trick I found in the VREP implementation of the youbot (see here). They actually use the hierarchy shown below for a single wheel and update the direction of the axis of revolute joint 2 at each frame:

Hierarchy for a wheel:

  • mobile platform base link
    • continuous / revolute joint 1 (its axis is the axis of the wheel – or motor, this is the joint which is actuated)
      • visual representation of the wheel (this is the mesh of the mecanum wheel)
      • dummy collision and inertia
      • continuous / revolute joint 2 (its axis is oriented at 45°, along the direction of the contacting roller and crosses the COM of the wheel)
        • collision geometry (this is a collision sphere)

I implemented this hierarchy for each wheel (urdf file here) and coded a gazebo plugin which performs the axis alignment computation (plugin code here). The system turns out to work ok when moving in the principal direction of the mobile robot (all mecanum wheels turn in the same direction), but when attempting to move sideways (2 opposite mecanum wheels rotating in one direction the two others in the opposite direction), the mobile robot moves as expected for a few frames but then goes back and forth in a way which is not realistic. It looks like a problem with contacts so I played a bit with the mu, kp and kd values of the link in contact with the floor but that did not help.

I have put some videos illustrating the working case when going frontwards (video here) and the problematic case when going sideways (video here). The simulations are stepped by hand to better show the problem.

On the second video (problematic case), the torque applied to the wheels is constant during the whole course of the simulation, hence the mobile movement should be sideways in the up direction. But we observe the wheels accelerate / slide before the mobile platform changes direction back and forth (up and down on the screen). This is very unintuitive.

If I replace the mecanum wheels with normal wheels, all is as expected. The orientation of wheel axes realigned at each step look fine from the printfs.

I am not sure what to do and feel a bit lost... Anyone has an idea of what I could change to improve things?



edit retag flag offensive close merge delete

2 Answers

Sort by » oldest newest most voted

answered 2014-09-20 00:12:24 -0500

A better place to ask this question might be gazebo answers as it is very specific to gazebo. I think there are certainly issues with contact modeling that might relate to your problem, as discussed here and here.

edit flag offensive delete link more


Ok, I have posted on gazebo answers ( ). Thanks for the links.

arennuit gravatar image arennuit  ( 2014-09-22 15:52:04 -0500 )edit

answered 2016-06-14 08:25:43 -0500

shengnan gravatar image

updated 2016-06-29 09:27:56 -0500

Hi arennuit, thanks for the information, now i simulated the mecanum wheels in gazebo by simulate one hub and 12 free moving rollers, it's working but when go to the side move, the performance was not good, what did you do with the friction? Can you please check my question in:

Thanks in advance.

Shengnan Chen

edit flag offensive delete link more


Hello shengnan, as far as I know gazebo is not able to handle mecanum wheels simulation at the time being. The reason why is described in the links here: . I have used vrep instead (which is really great by the way).

arennuit gravatar image arennuit  ( 2016-06-14 08:55:41 -0500 )edit

Hello shengnan, as I told you above I did not use gazebo. Now you decided to fully emulate the real world behavior with the actual rollers simulation. You will certainly end up with numerical stability problems because of this choice.

arennuit gravatar image arennuit  ( 2016-06-29 10:43:12 -0500 )edit

As I already told you there is no solution that I know for simulating mecanum wheels in gazebo.

arennuit gravatar image arennuit  ( 2016-06-29 10:43:43 -0500 )edit

Question Tools



Asked: 2014-09-19 17:54:34 -0500

Seen: 1,964 times

Last updated: Jun 29 '16