Gazebo | Ignition | Community
Ask Your Question
0

ODE crash on a simple scenario on ignition gazebo

asked 2021-06-09 03:18:56 -0500

this post is marked as community wiki

This post is a wiki. Anyone with karma >75 is welcome to improve it.

Hello !

I'm trying to run a simple scenario with ignition where there are multiple spheres falling on the ground and colliding with each other but after a little time (it seems there are too much collisions) ignition crash and I have the message :

ODE INTERNAL ERROR 1: assertion "aabbBound >= dMinIntExact && aabbBound < dMaxIntExact" failed in collide() [collision_space.cpp:460]

I tested with different versions of ignition (citadel, dome, edifice) with ubuntu 20.04 but I just get the same error and I also can't find the file collision_space.cpp.

Does anyone have such problem? Any solutions? Or maybe ignition can't support this type of simulation ?

My world looks like this :

<sdf version="1.7">
<world name="4">
    <physics name="1ms" type="ignored">
              <max_step_size>0.001</max_step_size>
              <real_time_factor>1.0</real_time_factor>
    </physics>
    <gravity>0 0 -9.8</gravity>
    <include>
        <uri>model://floor_r1_i1</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i1</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i2</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i3</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i4</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i5</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i6</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i7</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i8</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i9</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i10</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i11</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i12</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i13</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i14</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i15</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i16</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i17</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i18</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i19</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i20</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i21</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i22</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i23</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i24</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i25</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i26</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i27</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i28</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i29</uri>
    </include>
    <include>
        <uri>model://sphere_r4_i30</uri>
    </include>
</world>

</sdf>

And sphere object is :

 <model name="sphere_r4_i1">
  <link name="sphere_link">
    <inertial>
      <inertia>
        <ixx>0.1</ixx>
        <ixy>0</ixy>
        <ixz>0</ixz>
        <iyy>0.1</iyy>
        <iyz>0</iyz>
        <izz>0.1</izz>
      </inertia>
      <mass>1.0</mass>
    </inertial>
    <collision name="sphere_collision">
      <geometry>
        <sphere>
          <radius>0.02</radius>
        </sphere>
      </geometry>
    </collision>

    <visual name="sphere_visual">
      <geometry>
        <sphere>
          <radius>0.02</radius>
        </sphere>
      </geometry>
      <material>
        <ambient>0 0 1 1</ambient>
        <diffuse>0 0 1 1</diffuse>
        <specular>0 0 1 1</specular>
      </material>
    </visual>
  </link>
  <pose> insert different pose here </pose>
</model>

With different pose for each

Thanks !

edit retag flag offensive close merge delete

Comments

could you please attach the world you are using to generate the error?

Jose Luis Rivero gravatar imageJose Luis Rivero ( 2021-06-16 08:37:11 -0500 )edit

I added the world I am using in the question

Defim gravatar imageDefim ( 2021-06-18 03:47:58 -0500 )edit

Thank you for your answer I think this is indeed the same problem but (I'm sorry I'm a beginner) I don't know how to install the repository dart to be used by ignition

Defim gravatar imageDefim ( 2021-06-21 04:04:18 -0500 )edit

One way is to remove you current DART version (e.g. sudo apt-get remove libdart*) and then build/install the fork from source (link to instructions is in README of the repository). If your Ignition uses a different version of DART, then you need to also build Ignition from source (instruction are on http://ignitionrobotics.org) while specifying the correct version of the DART in CMakeLists.txt of ign-physics. I am not sure, but there might be an easier solution if the binaries are available.

AndrejOrsula gravatar imageAndrejOrsula ( 2021-06-23 03:27:13 -0500 )edit

Thank you it works !

Defim gravatar imageDefim ( 2021-06-23 10:27:50 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
1

answered 2021-06-18 05:56:24 -0500

This might be related to https://github.com/ignition-forks/dart/pull/6. Using the fork fixed such issue for me, but it is only really a problem in worlds with way too many objects.

[Not related to this issue] For anyone getting the same error, it can also occur if you let objects fall forever into the abyss. If that is the case, consider adding an invisible collision plane under your world.

edit flag offensive delete link more

Question Tools

1 follower

Stats

Asked: 2021-06-09 03:18:56 -0500

Seen: 598 times

Last updated: Jun 18 '21