Issue #2593 new
Sietse Achterop
created an issue

Hello List,

I have a (now simplified) model of a rower in a boat that keeps crashing or is very unstable. The code can be found in my github.

See the model in the file boot.xacro. There also is a boot.sdf that is generated from that, with only the ros_plugin removed so it can directly be run in gazebo.

Starting this model most of the time shows a wildly unstable behaviour, see this video.

If I change the shoulder joint to have 3 instead of 2 revolute joints, then the model crashes immediately, see this video.

I cannot find anything wrong with the model, all masses, inertias etc. are sane, so I only can conclude there is a bug here.

Comments (4)

  1. Sietse Achterop reporter

    The model now resides in directory testing in my github page. Please see the xacro-file, and a short video from gazebo.

    I now really made the model as simple as possible, with 3 revolute joints, and it still crashes. E.g. the torso of the rower now consists of two links with a fixed joint. If I make the torso out of only one link then there is no crashing.

  2. Sietse Achterop reporter

    Playing with damping and friction doesn't help much. Sometimes there also is the following message in the terminal

    gzclient: /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/include/OgreAxisAlignedBox.h:252: void Ogre::AxisAlignedBox::setExtents(const Ogre::Vector3&, const Ogre::Vector3&): Assertion `(min.x <= max.x && min.y <= max.y && min.z <= max.z) && "The minimum corner of the box must be less than or equal to maximum corner"' failed.
    

    Hopefully this helps.

  3. Sietse Achterop reporter

    I can make the model stable when I change the real time update rate to 3000, and the max step size to 0.00033. Also my complete model, including controllers, will be stable. But the real time factor drops to 0.25, even on a modern 12 core machine. What am I doing wrong. Am I really at the limit of what gazebo can do? My model has about 30 joints and also 30 basic links, nothing fancy. By the way, my current complete model can be found on my github page in the boot4_* directories.

  4. Addisu Z. Taddese

    I took a look at your example (crash_boot.sdf) and I see that left_shoulder_xx_link has a really small mass and it's connected to other links that have a much larger mass. This results in a large inertia ratio across the joints, which is problematic in Gazebo with the default settings. I increased it's mass and MOI values by a factor of 10 and it was stable with step size of 0.001. Take a look at http://gazebosim.org/tutorials?tut=preset_manager&cat=physics to learn more about this issue. My suggestion would be to avoid small links as much as possible.

    FYI, you would probably get more help if you post to http://answers.gazebosim.org/questions/

  5. Log in to comment