Open osrf-migration opened 11 years ago
Original comment by Nate Koenig (Bitbucket: Nathan Koenig).
Until 2.0
Original comment by John Nagle (Bitbucket: nagle).
Good idea. Watching the few DRC videos available in which the ATLAS model is doing something dynamically interesting, it looks wrong. The model jitters when crawling across the ground. It's a heavy object which shouldn't be doing that. Something is probably wrong in the physics system, and simple, validated models are needed to diagnose it. The Gazebo Q/A team (there is one, I assume) needs clear dynamics tests.
A few cases I found useful when I wrote a physics engine in the 1990s are shown at http://www.animats.com/topics/videos.html.
A spinning top. Note that the contact point between the top and the ground is the end of a cylinder. So this exercises the collision detection system. It's not just a point-against-plane contact; the cylinder there is a convex polyhedron and the collision checking is for general convex objects. If the collision detection is introducing noise, this will bring it out. Notice how the top precesses. That's a check on proper inertia tensor handling.
Something massive falling down. (See "Mecha Toss" on that page.) It's worth trying a big model to see if it behaves like a big object.
Collisions between parts of the robot model. (See "Spiral Stair Fall", which is the first known ragdoll-falling-downstairs simulation.) The collision rule used there is that anything can collide with anything unless both bodies are connected to the same joint (in which case joint limits do the job).
People are going to try to use machine learning techniques against the Gazebo simulator, then translate them to the real DRC robots. That will never work unless the simulator physics are sound. The JPL/USCB/Caltech team admits that they got through the DRC by exploiting bugs in the simulator's collision model.
The OpenHRP developers seem to take such issues seriously, which is probably why there are so many humanoid simulations using OpenHRP.
Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).
Original report (archived issue) by Steffi Paepcke (Bitbucket: spaepcke).