What do the friction coefficients mean and why are they so large in the DRCSim Atlas URDF files?

I've been looking through the URDF specifications of the Atlas robot from DRC Sim. I noticed that there are two mu values and that they are quite large for what I would expect for a coefficient of friction. I've done some Googling but haven't found a definitive answer on what exactly the coefficient's mean and why the coefficients are larger than 1 in the models.

I found on ODE's wiki some information about the friction coefficients. http://ode-wiki.org/wiki/index.php?title=Manual:Concepts#FrictionApproximation However, it mentions that there are two approximation methods. So my first question is, which one does Gazebo use by default and which one does the DRC Sim use?

I found a few more references to the coefficients in the ODE manual here http://ode-wiki.org/wiki/index.php?title=Manual:_All&printable=yes#Contact

I think that this section in the manual explains the difference between mu1 and mu2 and what the fdir1 and fdir2 parameters in the URDF means, but if it doesn't please let me know.

However, what I'm still not understanding is why there are mu values in the URDF that are above 1. Especially because in the newer SDF format specification it explicitly says that mu should be a value between 0 and 1. http://gazebosim.org/sdf/1.3.html#mu

So my second question is why are the mu values so high in the URDF specification of the Atlas robot?

Also I wasn't sure if here or the ros answers site was more appropriate for this question. So I've posted in both places. Here is the other question. http://answers.ros.org/question/56178/what-do-the-friction-coefficients-mean-and-why-are-they-so-large-in-the-drcsim-atlas-urdf-files/

edit retag close merge delete

Sort by » oldest newest most voted

Gazebo uses the dContactApprox1 option without the fdir1 option by default.

fdir1 is a Vector3 specifying the direction of mu1 in the collision local reference frame. If left unspecified as (0, 0, 0), mu1 and mu2 will align along x and y-axis of the world reference frame. In the atlas case, the fdir1 is specified to be (1, 0, 0), so mu1 will always act along the "heel-to-toe" direction.

The friction coefficients will be updated by an existing pull request, changes have been made to use mu of 0.9 for atlas feet. This value may change when we get more realistic friction coefficient approximations.

more

OK. So with dContactApprox on, the friction model should be the "cone" approximated as a square-base pyramid, as shown here, right?

http://ode-wiki.org/wiki/index.php?title=Manual:Concepts#Collisionhandling

That should overestimate friction by up to sqrt(2) depending on the direction, which is probably good enough for basic legged locomotion.

If mu = mu1 = mu2 are equal, then for

|Ft| < |Fn| * mu

there should be no slippage, right?

Is all that the case, and does it work reasonably well?

more