The MAST simulation environment relies on the Gazebo robotics simulator which in turn uses the Open Dynamics Engine (ODE]) to simulate rigid body dynamics. Algorithms can interface directly to Gazebo or through the Player architecture.

Dependencies

 * Ode 0.9
 * Gazebo 0.7
 * Player 2.0.4 (optional)

Installation Notes

There are some specific versions and compile options that must be used for compatibility with the MAST robot models. Please follow the following instructions when installing the dependencies.

Compiling/Installing ODE 0.9

./configure --enable-double-precision --enable-release
make
[sudo] make install

Note the change to configure options for ODE

Compiling/Installing Gazebo 0.7.0

We have an "in-house" version of Gazebo (gazebo-0.7.0-grasp.tgz) that solves several issues including hardware rendering with the Radeon Mobility Chipsets and correct handling of 3D dynamics with cylinder geometries.

Compiling and installing is fairly simple:

./configure
[sudo] make install

Compiling/Installing Player 2.0.4

As with Gazebo, we have an "in-house" version of Player (player-2.0.4-grasp.tgz) that fixes several bugs (some of which may be fixed in player-2.0.5 but we have not had a chance to test this new version). As stated above, make sure that you install Player before Gazebo as the Gazebo install process will need to detect Player in order to install the appropriate interfaces.

Use the standard install procedure:

./configure
make
[sudo] make install

Simulation Package Usage

With all of the dependencies installed and working correctly, the simulation models (download link below) can easily be compiled with a make command in it's root directory. Currently, the package includes a world file describing the experimental environment we have in L457 at the GRASP Lab (worlds/l457/l457.world).

Rendering Details

Note that when camera sensors are defined in each world file there is a flag called renderMethod. By default, this uses GLXP rendering which enables hardware rendering via graphics hardware. In Linux, this works best with nvidia cards though software rendering can sometimes be enabled by setting renderMethod to GLX. On Mac OSX, renderMethod should be XLIB.

Downloads

mast-1.0.tgz