Gazebo currently supports the following models.
AvatarHeli
The AvatarHeli model simulates the USC AVATAR helicopter, a Bergen Industrial Twin RC helicopter (http://www.bergenrc.com/IndustrialTwin.asp).
AvatarHeli currently does not support any interfaces.
No player drivers are available.
AvatarHeli models can be instantiated using the
<model:AvatarHeli>
tag. The following attributes are
supported.
<model:AvatarHeli> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
Blimp
The Blimp model simulates a UPenn Blimp.
Blimp supports the libgazebo position and position3d interface.
Basic motor control and odometry information is available through the gz_position or gz_position3d driver.
Blimp models can be instantiated using the
<model:Blimp>
tag. The following attributes are
supported.
<model:Blimp> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
<is3d> | true/false | false | Does this use the position3d interface? |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
ClodBuster
The ClodBuster model simulates the UPenn ClodBuster robot (4 wheel drive robot with Ackerman steering).
ClodBuster supports the libgazebo position interface.
Basic motor control and odometry information is available through the gz_position driver.
ClodBuster models can be instantiated using the
<model:ClodBuster>
tag. The following attributes are
supported.
<model:ClodBuster> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
<raw_encoder_position> | true/false | false | Flag indicating return of raw wheel encoder values. |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
Factory
The Factory model maintains no physical characteristics, but instead allows the user to dynamically create models at runtime. A model is instantiated by passing an XML character string to a Factory model. The character string use the same model format as the .world files. Note that the string should only contain the model description, and no other tags. The XML string is passed into Gazebo through the gz_factory interface which has the same interface as the Player speech device.
Factory supports the libgazebo factory interface.
A new model is created using the gz_factory driver.
Factory models can be instantiated using the <model:Factory>
tag. The following attributes are supported.
<model:Factory> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
This model does not have a physical representation.
GarminGPS
The model simulates GPS information by using the flat-world approximation. It doesn't account for GPS occlusion or loss of signal, etc.
supports the libgazebo gps interfaces.
The GPS position are available through the gz_gps driver.
models can be instantiated using the
<model:GarminGPS>
tag. The following attributes are
supported.
<model:> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
<origin> | 3-vector | (0,0,0) | coordinates of the origin in lat-long-alt |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
GroundPlane
The model simulates a flat infinite plane.
has no libgazebo interface.
There are no player drivers.
models can be instantiated using the
<model:GroundPlane>
tag. The following attributes are
supported.
<model:> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
<normal> | 3-vector | (0,0,1) | Direction of the normal vector |
<height> | double | 0 | Distance along the z-axis to place the plane |
<color> | 3-vector | (0,0,0) | RGB color |
<texture2D> | string | NULL | Texture image filename |
<cfm> | double | 0.01 | Constraint Force Mixing parameter |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
LightSource
The LightSource model simulates a single point light.
LightSource has no libgazebo interface.
There are no player drivers.
LightSource models can be instantiated using the
<model:LightSource>
tag. The following attributes are
supported.
<model:LightSource> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
<ambientColor> | 4-vector | (0.2 0.2 0.2 1.0) | Ambient color |
<diffuseColor> | 4-vector | (0.8 0.8 0.8 1.0) | Diffuse color |
<specularColor> | 4-vector | (0.2 0.2 0.2 1.0) | Specular color |
<attenuation> | 3-vector | (1.0 0.0 0.0) | Constant, Linear, Quadratic attenuation |
|
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
MapExtruder
The MapExtruder model extrudes a 2D image into 3D geometry. This is useful for generating simple maps. The bottom left point in the image is mapped to the position specified by the pos tag.
MapExtruder currently has no libgazebo interface.
There are no player drivers.
MapExtruder models can be instantiated using the
<model:MapExtruder>
tag. The following attributes are
supported.
<model:MapExtruder> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
<imageFile> | string | NULL | PPM image file to extrude |
<negative> | true/false | false | Use the inverse color values |
<threshold> | integer | 200 | Value over which a pixel is considered filled space |
<width> | float | 0.1 | Width of the geometries |
<height> | float | 1 | Height of the geometries, along z-axis |
<scale> | float | 0.1 | Scale the map up or down |
<color> | 3-vector | (0,0,0) | RGB color |
<errBound> | float | 5 | Allowable error in the geometries |
<halign> | left/center | left | Horizontal alignment |
<valign> | bottom/center | bottom | Vertical alignment |
|
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
ObserverCam
The model provides a interactive viewport through which users can view the simulation (think of it as a fly god's eye).
models can be instantiated using the
<model:ObserverCam>
tag. The following attributes are
supported.
<model:> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
<updatePeriod> | float | 0.1 | Seconds between refresh |
<displayRays> | true/false | false | Display laser rays |
<saveFrames> | string | NULL | Directory to store image frames |
<shadeModel> | flat/smooth | flat | OpenGL shading model |
<polygonMode> | point/line/fill | fill | OpenGL polygon mode |
<lens> | Camera lens attributes | ||
<hfov> | degrees | 60 | Horizontal field of view |
<nearClip> | meters | 0.20 | Distance to near clip plane |
<farClip> | meters | 1000.0 | Distance to far clip plane |
The following are definitions for the ObserverWindow. The window attribute block must be a child of <model:>.
<window:X11GLWindow> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Window ID string |
<title> | string | NULL | Window title string |
<size> | 2-vector | (100,100) | Initial size of the window |
<moveScale> | float | 0.1 | Mouse movement scale factor |
Mouse Commands | ||
Button | Vertical Move | Horizontal Move |
Left | Rotate along X axis | Rotate along Z axis |
Middle | Translate along Z axis | Translate along X axis |
Right | Translate along Y axis | Translate along X axis |
This model does not have a physical representation.
Pioneer2AT
The model simulates the ActivMedia Pioneer2AT (``all terrain'') robot with 4 wheels and skid steering. Currently, it does not simulate the robot's sonar ring.
supports the libgazebo position interface.
Basic motor control and odometry information is available through the gz_position driver.
models can be instantiated using the
<model:Pioneer2AT>
tag. The following attributes are
supported.
<model:> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
Pioneer2DX
The model simulates the ActivMedia Pioneer2DX (indoor) robot with 2 drive wheels and a castor. Currently, it does not simulate the robot's sonar ring.
supports the libgazebo position interface.
Basic motor control and odometry information is available through the gz_position driver.
models can be instantiated using the
<model:Pioneer2DX>
tag. The following attributes are
supported.
<model:> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
Pioneer2Gripper
The model simulates the ActivMedia Pioneer2 Gripper. Every object in the world that can be picked up by a gripper must set the <canBeGrip> to true.
supports the libgazebo gripper interface.
Control of the gripper position is available through the gz_gripper driver.
models can be instantiated using the
<model:Pioneer2Gripper>
tag. The following attributes are
supported.
<model:> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. | |
baseBarBody | single | |
Stationary support bar leftGripperBody | single | |
Left gripper rightGripperBody | single | |
Right gripper |
Pioneer2Sonars
The model simulates the ActivMedia Pioneer2 Sonar Ring. The sonar ring consists of 15 ray proximity sensors, each of which simulates a single sonar.
supports the libgazebo sonar interface.
Control of the sonars is available through the gz_sonars driver.
models can be instantiated using the
<model:Pioneer2Sonars>
tag. The following attributes are
supported.
<model:> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0,0,0) | Position of the ray |
<dir> | 3-vector | (0,0,0) | Direction of the ray |
<range> | meters | 0 | Initial sensor range |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
PointSet
The model visualizes a, usually dense, point cloud.
has no libgazebo interface.
There are no player drivers.
models can be instantiated using the
<model:PointSet>
tag. The following attributes are
supported.
<model:> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
<pointFile> | string | NULL | Point cloud data file |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
SegwayRMP
The model simulates RMP modification of the Segway HT.
Those of you that already have one of these will know what this is; for everyone else: the Segway RMP (Robotic Mobility Platform) is a two-wheeled, dynamically stabilized robot made from a modified Segway HT (Human Transporter). This is an interesting beast: it is large, fast and heavy, and will fall down alarmingly if you turn the power off.
The model includes a PID inverted pendulum controller written by Marin Kobilarov mkobilar(at)usc.edu. The dynamics are roughly similar to those of the real robot, but users should not expect a close correlation.
supports the libgazebo position interface. IMU data is not yet available.
Basic motor control and odometry information is available through the gz_position driver. IMU data is not yet available.
models can be instantiated using the
<model:SegwayRMP>
tag. The following attributes are
supported.
<model:> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. | |
topPlate | Top plate |
Shrimp
The model simulates the BlueBotics Shrimp robot. This model is currently under development.
supports the libgazebo position interface.
Basic motor control and odometry information is available through the gz_position driver.
models can be instantiated using the
<model:Shrimp>
tag. The following attributes are
supported.
<model:> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
SickLMS200
The model simulates the ubiquitous SICK scanning laser range-finder.
supports the libgazebo laser and fiducial interfaces.
Range and intensity data is available through the gz_laser driver. Fiducial information (ID, range, bearing and orientation) is available through the gz_fiducial driver. Note that, at present, only SimpleSolid models can be fiducials.
SickLMS200 models can be instantiated using the
<model:SickLMS200>
tag. The following attributes are
supported.
<model:SickLMS200> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
<rangeCount> | int | 361 | The number of range readings to generate. |
<rayCount> | int | 91 | The number of actual rays to generate. |
<maxRange> | float | 8.192 | Maximum laser range (m). |
<minRange> | float | 0.20 | Minimum laser range (m). |
<scanPeriod> | float | 0.200 | The interval between successive scans (s). |
Note that when the number of rays is less than the number of range readings, the ``missing'' range readings will be interpolated. Reducing the number of rays is a good way to save CPU cycles (at the expense of simulation fidelity).
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
SimpleSolid
The model creates simple solid objects, such as spheres and boxes. The solids have mass, and will interact with other objects.
does not support any interfaces.
There are no Player drivers for .
models can be instantiated using the
<model:SimpleSolid>
tag. The following attributes are
supported.
<model:SimpleSolid> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
<shape> | string | NULL | Shape description. Can be any of: sphere, box, cylinder. |
<size> | float | 1.0 | Sphere diameter. |
<size> | tuple | (0.1, 1.0) | Cylinder diameter and height. |
<size> | tuple | (1.0, 1.0, 1.0) | Box width, length and height. |
<mass> | float | 1.0 | Mass of the object (kg). |
<color> | tuple | (0, 0, 0, 1) | Color of the object (including alpha, if transparency is enabled. |
<retro> | float | 0 | Retro-reflectivity level (0 = not a retro-reflector, 1 = perfect retro-reflector). |
<fiducial> | integer | -1 | Fiducial ID (-1 = not a fiducial). |
<transparent> | true/false | false | Sets transparency. |
<texture2D> | string | NULL | Texture image filename |
<cfm> | double | 0.01 | Constraint Force Mixing parameter |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
SonyVID30
The model simulates the Sony VID 30 pan-tilt-zoom camera. This model will probably be merged with the MonoCam model in future releases.
supports the libgazebo ptz interface.
The camera position (pan and tilt) can be controlled by setting pan/tilt using the gz_ptz driver.
models can be instantiated using the
<model:SonyVID30>
tag. The following attributes are
supported.
<model:SonyVID30> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
<gain> | double | 1.0 | Motion gain |
<zoomLimits> | tuple | (10.0, 60.0) | Zoom limits |
<imageSize> | tuple | (320, 240) | Size of the image in pixels |
<updatePeriod> | float | 0.1 | Seconds between refresh |
<displayRays> | true/false | false | Display laser rays |
<saveFrames> | string | NULL | Directory to store image frames |
<shadeModel> | flat/smooth | flat | OpenGL shading model |
<polygonMode> | point/line/fill | fill | OpenGL polygon mode |
<lens> | Camera lens attributes | ||
<hfov> | degrees | 60 | Horizontal field of view |
<nearClip> | meters | 0.20 | Distance to near clip plane |
<farClip> | meters | 1000.0 | Distance to far clip plane |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. | |
head | The camera head (the bit that moves.) |
The following are definitions for the windows. The window attribute block must be a child of <model:>.
<window:X11GLWindow> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Window ID string |
<title> | string | NULL | Window title string |
Terrain
The model generates a triangle mesh from a 2D image or other data file, such as a DEM. The generated mesh has a variable triangle density corresponding to a user defined error bound. A high error bound allows for more error in the terrain representation, resulting in fewer triangles.
has no libgazebo interface.
There are no player drivers.
models can be instantiated using the
<model:Terrain>
tag. The following attributes are
supported.
<model:> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
<vertexSpacing> | double | 1.0 | Meters between the vertices of the mesh. |
<elevationScale> | double | 1.0 | Elevation scale factor in meters. |
<color> | 3-vector | (0,0,0) | RGB color |
<texture2D> | string | NULL | Texture image filename |
<textureRepeat> | tuple | (1.0 1.0) | Texture repetition in X and Y directions. |
<cfm> | double | 0.01 | Constraint Force Mixing parameter |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
TotemPole
The model generates a stack of simple solids to create a visual fiducial.
has no libgazebo interface.
There are no player drivers.
models can be instantiated using the
<model:TotemPole>
tag. The following attributes are
supported.
<model:> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
<shape> | box/cylinder | cylinder | Simple Sold shape. |
<diameter> | double | 0.10 | Diameter of the totem pole in meters. |
<steps> | integer | 1 | Number of shapes used in the pole. |
<step_##_height> | double | 0.02 | Height of the ##th shape. |
<step_##_barcode> | binary string | NULL | Barcode of ##th shape. |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |
TruthWidget
The is a magical device for querying and modifying the true pose of objects in the simulator. It has no simulated body, but can be attached to other models to learn or change their pose.
supports the libgazebo truth interface.
As of Player 1.4rc2, this model has no Player support.
models can be instantiated using the
<model:TruthWidget>
tag. The following attributes are
supported.
<model:> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
This model does not have a physical representation.
WheelChair
The model simulates a robotic wheelchair.
supports the libgazebo position interface.
Basic motor control and odometry information is available through the gz_position driver.
models can be instantiated using the
<model:WheelChair>
tag. The following attributes are
supported.
<model:> | |||
Attribute | Type | Default | Description |
<id> | string | NULL | Model ID string |
<xyz> | 3-vector | (0, 0, 0) | Model position |
<rpy> | Euler angles | (0, 0, 0) | Model orientation |
The following bodies are used by this model.
Name | Description | |
canonical | The canonical (default) body. |