Skip to content
James Taylor edited this page Jun 19, 2018 · 12 revisions

Introduction

Situated Weazelball HD Video

Figure 1 - Weazelball behavior in situ (Situated Weazelball HD Video on YouTube)

Click on the link to view the behavior of the Weazelball in situ on YouTube. Gifs of the simulated Weazelball for each simulator are embedded below to give an idea of the behavior exhibited by a simulated Weazelball. Unfortunately, the gifs may not fully reflect the behavior due to the compression applied. For each gif, a link to a HD video on YouTube is provided which will give a more accurate idea of how the simulated Weazelball performed for each simulator.

Figure 2 - The Weazelball simulated in ODE (ODE Video on YouTube). Gazebo 4.0 with ODE successfully simulates the Weazelball scenario and the behavior is plausible; however, if the ODE behavior is inspected closely, there are some behaviors that suggest that the ODE simulation is not entirely predictive. For example, when a situated Weazelball is rolling freely with forward velocity, i.e. with established forward momentum and without any collisions with obstacles, the Weazelball does not exhibit significant changes in direction other than the typical oscillation. In ODE, the Weazelball tends to tumble instead of establishing a forward direction which causes the Weazelball to change directions when rolling freely. A real Weazelball will tend to tumble much less which will allow the Weazelball to establish a forward direction and stabilize into its typical oscillatory behavior.

Figure 3 - The Weazelball simulated in DART (DART Video on YouTube). Gazebo 4.0 with DART successfully simulates the Weazelball scenario; however, the behavior exhibited is too wild. We noticed that changes to friction in the Gazebo configuration were not applied to the simulation which led us to examine the DART interface in this version Gazebo. We found that the friction parameter read by Gazebo was not applied to DART bodies and DART dynamics would therefore use its own default parameter instead of the friction coefficient specified in the Gazebo configuration files. To work around this problem, we changed the default value in DART to the value specified in the Gazebo configuration, recompiled DART, and compared block on inclined plane simulations in ODE and DART against one another to validate that the friction parameters are equivalent. This raises a question about what other aspects of the interface were not fully supported which may help explain why DART performance is too wild.

Figure 4 - The Weazelball simulated in Bullet (Bullet Video on YouTube). The performance of Gazebo 4.0 with Bullet demonstrates how a simulation can fail dramatically. We talked with Erwin Coumins and he explained that Bullet had not been well integrated into Gazebo in this particular version of Gazebo. Our examination of the DART integration supports his claim, so we would like to make clear that this behavior is not representative of Bullet itself. This issue highlights a significant problem in selecting a simulator. Users may not be fully aware of how well supported a simulator actually is in a preferred environment.

Figure 5 - The Weazelball simulated in SimWise 4D (SimWise Video on YouTube). A reviewer noted that there was a significant error with our inertia model in our Gazebo Weazelball configuration. We made the correction to our Gazebo configuration; however, we decided that we needed to validate the configuration against another simulator to confirm the behavior. We used SimWise 4D, a simulator that can derive models directly from CAD models, to give us a benchmark and confirm the parameters defined for Gazebo. The linked video shows the performance of the Weazelball in SimWise which produces a very plausible simulation. We did not use the SimWise data in our validation due to challenges in ensuring that the data retrieved from both simulation environments would be completely compatible.

Repository

TODO: Add a map of the data repository

Clone this wiki locally