SDF 1.5

The Robot Modeling Language (SDF) is an XML file format used to describe all the elements in a simulation environment.

Usage


Meta-Tags

Meta-tags are processed by the parser before the final SDF file is generated.
<sdf>
<world>
<audio>
<device>
<gui>
<camera>
<physics>
<max_step_size>
<real_time_factor>
<real_time_update_rate>
<max_contacts>
<gravity>
<simbody> <bullet> <ode>
<scene>
<ambient>
<background>
<sky> <shadows>
<fog> <grid>
<light>
<cast_shadows>
<pose>
<diffuse>
<specular>
<attenuation> <direction>
<spot>
<model>
<static>
<allow_auto_disable>
<pose>
<link>
<gravity>
<self_collide>
<kinematic>
<pose>
<must_be_base_link>
<velocity_decay> <inertial> <collision>
<laser_retro>
<max_contacts>
<pose>
<geometry> <surface>
<visual> <sensor>
<always_on>
<update_rate>
<visualize>
<pose>
<topic>
<plugin>
<camera> <contact> <gps> <imu> <ray> <rfidtag>
<rfid>
<sonar> <transceiver> <force_torque>
<projector> <audio_sink>
<audio_source>
<joint>
<parent>
<child>
<pose>
<gearbox_ratio>
<gearbox_reference_body>
<thread_pitch>
<axis> <axis2> <physics> <sensor>
<always_on>
<update_rate>
<visualize>
<pose>
<topic>
<plugin>
<camera> <contact> <gps> <imu> <ray> <rfidtag>
<rfid>
<sonar> <transceiver> <force_torque>
<plugin>
<gripper>
<actor>
<pose>
<skin> <animation> <script> <link>
<gravity>
<self_collide>
<kinematic>
<pose>
<must_be_base_link>
<velocity_decay> <inertial> <collision>
<laser_retro>
<max_contacts>
<pose>
<geometry> <surface>
<visual> <sensor>
<always_on>
<update_rate>
<visualize>
<pose>
<topic>
<plugin>
<camera> <contact> <gps> <imu> <ray> <rfidtag>
<rfid>
<sonar> <transceiver> <force_torque>
<projector> <audio_sink>
<audio_source>
<joint>
<parent>
<child>
<pose>
<gearbox_ratio>
<gearbox_reference_body>
<thread_pitch>
<axis> <axis2> <physics> <sensor>
<always_on>
<update_rate>
<visualize>
<pose>
<topic>
<plugin>
<camera> <contact> <gps> <imu> <ray> <rfidtag>
<rfid>
<sonar> <transceiver> <force_torque>
<plugin>
<plugin>
<joint>
<parent>
<child>
<pose>
<gearbox_ratio>
<gearbox_reference_body>
<thread_pitch>
<axis> <axis2> <physics> <sensor>
<always_on>
<update_rate>
<visualize>
<pose>
<topic>
<plugin>
<camera> <contact> <gps> <imu> <ray> <rfidtag>
<rfid>
<sonar> <transceiver> <force_torque>
<road>
<width>
<point>
<spherical_coordinates>
<surface_model>
<latitude_deg>
<longitude_deg>
<elevation>
<heading_deg>
<state>
<sim_time>
<wall_time>
<real_time>
<insertions>
<model>
<static>
<allow_auto_disable>
<pose>
<link>
<gravity>
<self_collide>
<kinematic>
<pose>
<must_be_base_link>
<velocity_decay> <inertial> <collision>
<laser_retro>
<max_contacts>
<pose>
<geometry> <surface>
<visual> <sensor>
<always_on>
<update_rate>
<visualize>
<pose>
<topic>
<plugin>
<camera> <contact> <gps> <imu> <ray> <rfidtag>
<rfid>
<sonar> <transceiver> <force_torque>
<projector> <audio_sink>
<audio_source>
<joint>
<parent>
<child>
<pose>
<gearbox_ratio>
<gearbox_reference_body>
<thread_pitch>
<axis> <axis2> <physics> <sensor>
<always_on>
<update_rate>
<visualize>
<pose>
<topic>
<plugin>
<camera> <contact> <gps> <imu> <ray> <rfidtag>
<rfid>
<sonar> <transceiver> <force_torque>
<plugin>
<gripper>
<deletions> <model>
<model>
<static>
<allow_auto_disable>
<pose>
<link>
<gravity>
<self_collide>
<kinematic>
<pose>
<must_be_base_link>
<velocity_decay> <inertial> <collision>
<laser_retro>
<max_contacts>
<pose>
<geometry> <surface>
<visual> <sensor>
<always_on>
<update_rate>
<visualize>
<pose>
<topic>
<plugin>
<camera> <contact> <gps> <imu> <ray> <rfidtag>
<rfid>
<sonar> <transceiver> <force_torque>
<projector> <audio_sink>
<audio_source>
<joint>
<parent>
<child>
<pose>
<gearbox_ratio>
<gearbox_reference_body>
<thread_pitch>
<axis> <axis2> <physics> <sensor>
<always_on>
<update_rate>
<visualize>
<pose>
<topic>
<plugin>
<camera> <contact> <gps> <imu> <ray> <rfidtag>
<rfid>
<sonar> <transceiver> <force_torque>
<plugin>
<gripper>
<grasp_check> <gripper_link>
<palm_link>
<actor>
<pose>
<skin>
<filename>
<scale>
<animation>
<filename>
<scale>
<interpolate_x>
<script>
<loop>
<delay_start>
<auto_start>
<trajectory>
<link>
<gravity>
<self_collide>
<kinematic>
<pose>
<must_be_base_link>
<velocity_decay> <inertial> <collision>
<laser_retro>
<max_contacts>
<pose>
<geometry> <surface>
<visual> <sensor>
<always_on>
<update_rate>
<visualize>
<pose>
<topic>
<plugin>
<camera> <contact> <gps> <imu> <ray> <rfidtag>
<rfid>
<sonar> <transceiver> <force_torque>
<projector> <audio_sink>
<audio_source>
<joint>
<parent>
<child>
<pose>
<gearbox_ratio>
<gearbox_reference_body>
<thread_pitch>
<axis> <axis2> <physics> <sensor>
<always_on>
<update_rate>
<visualize>
<pose>
<topic>
<plugin>
<camera> <contact> <gps> <imu> <ray> <rfidtag>
<rfid>
<sonar> <transceiver> <force_torque>
<plugin>
<light>
<cast_shadows>
<pose>
<diffuse>
<specular>
<attenuation>
<range>
<linear>
<constant>
<quadratic>
<direction>
<spot>
<inner_angle>
<outer_angle>
<falloff>
<sdf>
Description: SDF base element.
Required: 1    Type: n/a
Attributes
version:
Version number of the SDF format.
Type: string   Default: 1.5

<world>
Description: The world element encapsulates an entire world description including: models, scene, physics, joints, and plugins
Required: *    Type: n/a
Attributes
name:
Unique name of the world
Type: string   Default: __default__

<audio>
Description: Global audio properties.
Required: 0    Type: n/a
<device>
Description: Device to use for audio playback. A value of "default" will use the system's default audio device. Otherwise, specify a an audio device file"
Required: 1    Type: string    Default: default
<gui>
Description: none
Required: 0    Type: n/a
Attributes
fullscreen:
no description
Type: bool   Default: 0

<camera>
Description: none
Required: 0    Type: n/a
Attributes
name:
no description
Type: string   Default: user_camera

<view_controller>
Description: none
Required: 0    Type: string    Default: orbit
<pose>
Description: none
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<track_visual>
Description: none
Required: 0    Type: n/a
<name>
Description: none
Required: 1    Type: string    Default: __default__
<min_dist>
Description: none
Required: 0    Type: double    Default: 0
<max_dist>
Description: none
Required: 0    Type: double    Default: 0
<physics>
Description: The physics tag specifies the type and properties of the dynamics engine.
Required: 1    Type: n/a
Attributes
type:
The type of the dynamics engine. Current options are ode, bullet, simbody and rtql8. Defaults to ode if left unspecified.
Type: string   Default: ode

<max_step_size>
Description: Maximum time step size at which every system in simulation can interact with the states of the world. (was physics.sdf's dt).
Required: 1    Type: double    Default: 0.001
<real_time_factor>
Description: target simulation speedup factor, defined by ratio of simulation time to real-time.
Required: 1    Type: double    Default: 1
<real_time_update_rate>
Description: Rate at which to update the physics engine (UpdatePhysics calls per real-time second). (was physics.sdf's update_rate).
Required: 1    Type: double    Default: 1000
<max_contacts>
Description: Maximum number of contacts allowed between two entities. This value can be over ridden by a max_contacts element in a collision element.
Required: 0    Type: int    Default: 20
<gravity>
Description: The gravity vector
Required: 1    Type: vector3    Default: 0 0 -9.8
<simbody>
Description: Simbody specific physics properties
Required: 0    Type: n/a
<min_step_size>
Description: (Currently not used in simbody) The time duration which advances with each iteration of the dynamics engine, this has to be no bigger than max_step_size under physics block. If left unspecified, min_step_size defaults to max_step_size.
Required: 0    Type: double    Default: 0.0001
<accuracy>
Description: Roughly the relative error of the system. -LOG(accuracy) is roughly the number of significant digits.
Required: 0    Type: double    Default: 0.001
<max_transient_velocity>
Description: Tolerable "slip" velocity allowed by the solver when static friction is supposed to hold object in place.
Required: 0    Type: double    Default: 0.01
<contact>
Description: Relationship among dissipation, coef. restitution, etc. d = dissipation coefficient (1/velocity) vc = capture velocity (velocity where e=e_max) vp = plastic velocity (smallest v where e=e_min) > vc Assume real COR=1 when v=0. e_min = given minimum COR, at v >= vp (a.k.a. plastic_coef_restitution) d = slope = (1-e_min)/vp OR, e_min = 1 - d*vp e_max = maximum COR = 1-d*vc, reached at v=vc e = 0, v
Required: 0    Type: n/a
<stiffness>
Description: Default contact material stiffness (force/dist or torque/radian).
Required: 0    Type: double    Default: 1e+08
<dissipation>
Description: dissipation coefficient to be used in compliant contact; if not given it is (1-min_cor)/plastic_impact_velocity
Required: 0    Type: double    Default: 100
<plastic_coef_restitution>
Description: this is the COR to be used at high velocities for rigid impacts; if not given it is 1 - dissipation*plastic_impact_velocity
Required: 0    Type: double    Default: 0.5
<plastic_impact_velocity>
Description: smallest impact velocity at which min COR is reached; set to zero if you want the min COR always to be used
Required: 0    Type: double    Default: 0.5
<static_friction>
Description: static friction (mu_s) as described by this plot: http://gazebosim.org/wiki/File:Stribeck_friction.png
Required: 0    Type: double    Default: 0.9
<dynamic_friction>
Description: dynamic friction (mu_d) as described by this plot: http://gazebosim.org/wiki/File:Stribeck_friction.png
Required: 0    Type: double    Default: 0.9
<viscous_friction>
Description: viscous friction (mu_v) with units of (1/velocity) as described by this plot: http://gazebosim.org/wiki/File:Stribeck_friction.png
Required: 0    Type: double    Default: 0
<override_impact_capture_velocity>
Description: for rigid impacts only, impact velocity at which COR is set to zero; normally inherited from global default but can be overridden here. Combining rule: use larger velocity
Required: 0    Type: double    Default: 0.001
<override_stiction_transition_velocity>
Description: This is the largest slip velocity at which we'll consider a transition to stiction. Normally inherited from a global default setting. For a continuous friction model this is the velocity at which the max static friction force is reached. Combining rule: use larger velocity
Required: 0    Type: double    Default: 0.001
<bullet>
Description: Bullet specific physics properties
Required: 0    Type: n/a
<solver>
Description: none
Required: 1    Type: n/a
<type>
Description: One of the following types: sequential_impulse only.
Required: 1    Type: string    Default: sequential_impulse
<min_step_size>
Description: The time duration which advances with each iteration of the dynamics engine, this has to be no bigger than max_step_size under physics block. If left unspecified, min_step_size defaults to max_step_size.
Required: 0    Type: double    Default: 0.0001
<iters>
Description: Number of iterations for each step. A higher number produces greater accuracy at a performance cost.
Required: 1    Type: int    Default: 50
<sor>
Description: Set the successive over-relaxation parameter.
Required: 1    Type: double    Default: 1.3
<constraints>
Description: Bullet constraint parameters.
Required: 1    Type: n/a
<cfm>
Description: Constraint force mixing parameter. See the ODE page for more information.
Required: 1    Type: double    Default: 0
<erp>
Description: Error reduction parameter. See the ODE page for more information.
Required: 1    Type: double    Default: 0.2
<contact_surface_layer>
Description: The depth of the surface layer around all geometry objects. Contacts are allowed to sink into the surface layer up to the given depth before coming to rest. The default value is zero. Increasing this to some small value (e.g. 0.001) can help prevent jittering problems due to contacts being repeatedly made and broken.
Required: 1    Type: double    Default: 0.001
<split_impulse>
Description: Similar to ODE's max_vel implementation. See http://web.archive.org/web/20120430155635/http://bulletphysics.org/mediawiki-1.5.8/index.php/BtContactSolverInfo#Split_Impulse for more information.
Required: 1    Type: bool    Default: 1
<split_impulse_penetration_threshold>
Description: Similar to ODE's max_vel implementation. See http://web.archive.org/web/20120430155635/http://bulletphysics.org/mediawiki-1.5.8/index.php/BtContactSolverInfo#Split_Impulse for more information.
Required: 1    Type: double    Default: -0.01
<ode>
Description: ODE specific physics properties
Required: 0    Type: n/a
<solver>
Description: none
Required: 1    Type: n/a
<type>
Description: One of the following types: world, quick
Required: 1    Type: string    Default: quick
<min_step_size>
Description: The time duration which advances with each iteration of the dynamics engine, this has to be no bigger than max_step_size under physics block. If left unspecified, min_step_size defaults to max_step_size.
Required: 0    Type: double    Default: 0.0001
<iters>
Description: Number of iterations for each step. A higher number produces greater accuracy at a performance cost.
Required: 1    Type: int    Default: 50
<precon_iters>
Description: Experimental parameter.
Required: 0    Type: int    Default: 0
<sor>
Description: Set the successive over-relaxation parameter.
Required: 1    Type: double    Default: 1.3
<constraints>
Description: ODE constraint parameters.
Required: 1    Type: n/a
<cfm>
Description: Constraint force mixing parameter. See the ODE page for more information.
Required: 1    Type: double    Default: 0
<erp>
Description: Error reduction parameter. See the ODE page for more information.
Required: 1    Type: double    Default: 0.2
<contact_max_correcting_vel>
Description: The maximum correcting velocities allowed when resolving contacts.
Required: 1    Type: double    Default: 100
<contact_surface_layer>
Description: The depth of the surface layer around all geometry objects. Contacts are allowed to sink into the surface layer up to the given depth before coming to rest. The default value is zero. Increasing this to some small value (e.g. 0.001) can help prevent jittering problems due to contacts being repeatedly made and broken.
Required: 1    Type: double    Default: 0.001
<scene>
Description: Specifies the look of the environment.
Required: 1    Type: n/a
<ambient>
Description: Color of the ambient light.
Required: 1    Type: color    Default: 0.4 0.4 0.4 1
<background>
Description: Color of the background.
Required: 1    Type: color    Default: 0.7 0.7 0.7 1
<sky>
Description: Properties for the sky
Required: 0    Type: n/a
<time>
Description: Time of day [0..24]
Required: 0    Type: double    Default: 10
<sunrise>
Description: Sunrise time [0..24]
Required: 0    Type: double    Default: 6
<sunset>
Description: Sunset time [0..24]
Required: 0    Type: double    Default: 20
<clouds>
Description: Sunset time [0..24]
Required: 0    Type: n/a
<speed>
Description: Speed of the clouds
Required: 0    Type: double    Default: 0.6
<direction>
Description: Direction of the cloud movement
Required: 0    Type: double    Default: 0
<humidity>
Description: Density of clouds
Required: 0    Type: double    Default: 0.5
<mean_size>
Description: Average size of the clouds
Required: 0    Type: double    Default: 0.5
<ambient>
Description: Ambient cloud color
Required: 0    Type: color    Default: 0.8 0.8 0.8 1
<shadows>
Description: Enable/disable shadows
Required: 1    Type: bool    Default: 1
<fog>
Description: Controls fog
Required: 0    Type: n/a
<color>
Description: Fog color
Required: 0    Type: color    Default: 1 1 1 1
<type>
Description: Fog type: constant, linear, quadratic
Required: 0    Type: string    Default: none
<start>
Description: Distance to start of fog
Required: 0    Type: double    Default: 1
<end>
Description: Distance to end of fog
Required: 0    Type: double    Default: 100
<density>
Description: Density of fog
Required: 0    Type: double    Default: 1
<grid>
Description: Enable/disable the grid
Required: 0    Type: bool    Default: 1
<light>
Description: The light element describes a light source.
Required: *    Type: n/a
Attributes
name:
A unique name for the light.
Type: string   Default: __default__
type:
The light type: point, directional, spot.
Type: string   Default: point

<cast_shadows>
Description: When true, the light will cast shadows.
Required: 0    Type: bool    Default: 0
<pose>
Description: A position and orientation in the global coordinate frame for the light.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<diffuse>
Description: Diffuse light color
Required: 1    Type: color    Default: 1 1 1 1
<specular>
Description: Specular light color
Required: 1    Type: color    Default: 0.1 0.1 0.1 1
<attenuation>
Description: Light attenuation
Required: 0    Type: n/a
<range>
Description: Range of the light
Required: 1    Type: double    Default: 10
<linear>
Description: The linear attenuation factor: 1 means attenuate evenly over the distance.
Required: 0    Type: double    Default: 1
<constant>
Description: The constant attenuation factor: 1.0 means never attenuate, 0.0 is complete attenutation.
Required: 0    Type: double    Default: 1
<quadratic>
Description: The quadratic attenuation factor: adds a curvature to the attenuation.
Required: 0    Type: double    Default: 0
<direction>
Description: Direction of the light, only applicable for spot and directional lights.
Required: 1    Type: vector3    Default: 0 0 -1
<spot>
Description: Spot light parameters
Required: 0    Type: n/a
<inner_angle>
Description: Angle covered by the bright inner cone
Required: 1    Type: double    Default: 0
<outer_angle>
Description: Angle covered by the outer cone
Required: 1    Type: double    Default: 0
<falloff>
Description: The rate of falloff between the inner and outer cones. 1.0 means a linear falloff, less means slower falloff, higher means faster falloff.
Required: 1    Type: double    Default: 0
<model>
Description: The model element defines a complete robot or any other physical object.
Required: *    Type: n/a
Attributes
name:
A unique name for the model. This name must not match another model in the world.
Type: string   Default: __default__

<static>
Description: If set to true, the model is immovable. Otherwise the model is simulated in the dynamics engine.
Required: 0    Type: bool    Default: 0
<allow_auto_disable>
Description: Allows a model to auto-disable, which is means the physics engine can skip updating the model when the model is at rest. This parameter is only used by models with no joints.
Required: 0    Type: bool    Default: 1
<pose>
Description: A position and orientation in the global coordinate frame for the model. Position(x,y,z) and rotation (roll, pitch yaw) in the global coordinate frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<link>
Description: A physical link with inertia, collision, and visual properties. A link must be a child of a model, and any number of links may exist in a model.
Required: +    Type: n/a
Attributes
name:
A unique name for the link within the scope of the model.
Type: string   Default: __default__

<gravity>
Description: If true, the link is affected by gravity.
Required: 0    Type: bool    Default: 1
<self_collide>
Description: If true, the link can collide with other links in the model.
Required: 0    Type: bool    Default: 0
<kinematic>
Description: If true, the link is kinematic only
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the link reference frame, relative to the model reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<must_be_base_link>
Description: If true, the link will have 6DOF and be a direct child of world.
Required: 0    Type: bool    Default: 0
<velocity_decay>
Description: Exponential damping of the link's velocity.
Required: 1    Type: n/a
<linear>
Description: Linear damping
Required: 1    Type: double    Default: 0
<angular>
Description: Angular damping
Required: 1    Type: double    Default: 0
<inertial>
Description: The inertial properties of the link.
Required: 0    Type: n/a
<mass>
Description: The mass of the link.
Required: 0    Type: double    Default: 1
<pose>
Description: This is the pose of the inertial reference frame, relative to the link reference frame. The origin of the inertial reference frame needs to be at the center of gravity. The axes of the inertial reference frame do not need to be aligned with the principal axes of the inertia.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<inertia>
Description: The 3x3 rotational inertia matrix. Because the rotational inertia matrix is symmetric, only 6 above-diagonal elements of this matrix are specified here, using the attributes ixx, ixy, ixz, iyy, iyz, izz.
Required: 0    Type: n/a
<ixx>
Description: none
Required: 1    Type: double    Default: 1
<ixy>
Description: none
Required: 1    Type: double    Default: 0
<ixz>
Description: none
Required: 1    Type: double    Default: 0
<iyy>
Description: none
Required: 1    Type: double    Default: 1
<iyz>
Description: none
Required: 1    Type: double    Default: 0
<izz>
Description: none
Required: 1    Type: double    Default: 1
<collision>
Description: The collision properties of a link. Note that this can be different from the visual properties of a link, for example, simpler collision models are often used to reduce computation time.
Required: *    Type: n/a
Attributes
name:
Unique name for the collision element within the scope of the parent link.
Type: string   Default: __default__

<laser_retro>
Description: intensity value returned by laser sensor.
Required: 0    Type: double    Default: 0
<max_contacts>
Description: Maximum number of contacts allowed between two entities. This value overrides the max_contacts element defined in physics.
Required: 0    Type: int    Default: 10
<pose>
Description: The reference frame of the collision element, relative to the reference frame of the link.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<geometry>
Description: The shape of the visual or collision object.
Required: 1    Type: n/a
<empty>
Description: You can use the empty tag to make empty geometries.
Required: 0    Type: n/a
<box>
Description: Box shape
Required: 0    Type: n/a
<size>
Description: The three side lengths of the box. The origin of the box is in its geometric center (inside the center of the box).
Required: 1    Type: vector3    Default: 1 1 1
<cylinder>
Description: Cylinder shape
Required: 0    Type: n/a
<radius>
Description: Radius of the cylinder
Required: 1    Type: double    Default: 1
<length>
Description: Length of the cylinder
Required: 1    Type: double    Default: 1
<heightmap>
Description: A heightmap based on a 2d grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI to a grayscale image file
Required: 1    Type: string    Default: __default__
<size>
Description: The size of the heightmap in world units. When loading an image: "size" is used if present, otherwise defaults to 1x1x1. When loading a DEM: "size" is used if present, otherwise defaults to true size of DEM.
Required: 0    Type: vector3    Default: 1 1 1
<pos>
Description: A position offset.
Required: 0    Type: vector3    Default: 0 0 0
<texture>
Description: The heightmap can contain multiple textures. The order of the texture matters. The first texture will appear at the lowest height, and the last texture at the highest hieght. Use blend to control the hieight thresholds and fade between textures.
Required: *    Type: n/a
<size>
Description: Size of the applied texture in meters.
Required: 1    Type: double    Default: 10
<diffuse>
Description: Diffuse texture image filename
Required: 1    Type: string    Default: __default__
<normal>
Description: Normalmap texture image filename
Required: 1    Type: string    Default: __default__
<blend>
Description: The blend tag controls how two adjacent textures are mixed. The number of blend elements should equal one less than the number of textures.
Required: *    Type: n/a
<min_height>
Description: Min height of a blend layer
Required: 1    Type: double    Default: 0
<fade_dist>
Description: Distance over which the blend occurs
Required: 1    Type: double    Default: 0
<use_terrain_paging>
Description: Set if the rendering engine will use terrain paging
Required: 0    Type: bool    Default: 0
<image>
Description: Extrude a set of boxes from a grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI of the grayscale image file
Required: 1    Type: string    Default: __default__
<scale>
Description: Scaling factor applied to the image
Required: 1    Type: double    Default: 1
<threshold>
Description: Grayscale threshold
Required: 1    Type: int    Default: 200
<height>
Description: Height of the extruded boxes
Required: 1    Type: double    Default: 1
<granularity>
Description: The amount of error in the model
Required: 1    Type: int    Default: 1
<mesh>
Description: Mesh shape
Required: 0    Type: n/a
<uri>
Description: Mesh uri
Required: 1    Type: string    Default: __default__
<submesh>
Description: Use a named submesh. The submesh must exist in the mesh specified by the uri
Required: 0    Type: n/a
<name>
Description: Name of the submesh within the parent mesh
Required: 1    Type: string    Default: __default__
<center>
Description: Set to true to center the vertices of the submesh at 0,0,0. This will effectively remove any transformations on the submesh before the poses from parent links and models are applied.
Required: 0    Type: bool    Default: 0
<scale>
Description: Scaling factor applied to the mesh
Required: 0    Type: vector3    Default: 1 1 1
<plane>
Description: Plane shape
Required: 0    Type: n/a
<normal>
Description: Normal direction for the plane
Required: 1    Type: vector3    Default: 0 0 1
<size>
Description: Length of each side of the plane
Required: 1    Type: vector2d    Default: 1 1
<sphere>
Description: Sphere shape
Required: 0    Type: n/a
<radius>
Description: radius of the sphere
Required: 1    Type: double    Default: 1
<surface>
Description: The surface parameters
Required: 0    Type: n/a
<bounce>
Description: none
Required: 0    Type: n/a
<restitution_coefficient>
Description: Bounciness coefficient of restitution, from [0...1], where 0=no bounciness.
Required: 0    Type: double    Default: 0
<threshold>
Description: Bounce capture velocity, below which effective coefficient of restitution is 0.
Required: 0    Type: double    Default: 100000
<friction>
Description: none
Required: 0    Type: n/a
<ode>
Description: ODE friction parameters
Required: 0    Type: n/a
<mu>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<mu2>
Description: Second coefficient of friction in the range of [0..1]
Required: 0    Type: double    Default: 1
<fdir1>
Description: 3-tuple specifying direction of mu1 in the collision local reference frame.
Required: 0    Type: vector3    Default: 0 0 0
<slip1>
Description: Force dependent slip direction 1 in collision local frame, between the range of [0..1].
Required: 0    Type: double    Default: 0
<slip2>
Description: Force dependent slip direction 2 in collision local frame, between the range of [0..1].
Required: 0    Type: double    Default: 0
<bullet>
Description: none
Required: 0    Type: n/a
<friction>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<friction2>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<fdir1>
Description: 3-tuple specifying direction of mu1 in the collision local reference frame.
Required: 0    Type: vector3    Default: 0 0 0
<rolling_friction>
Description: coefficient of friction in the range of [0..1]
Required: 0    Type: double    Default: 1
<contact>
Description: none
Required: 0    Type: n/a
<collide_without_contact>
Description: Flag to disable contact force generation, while still allowing collision checks and contact visualization to occur.
Required: 0    Type: bool    Default: 0
<collide_without_contact_bitmask>
Description: Bitmask for collision filtering when collide_without_contact is on
Required: 0    Type: unsigned int    Default: 1
<ode>
Description: ODE contact parameters
Required: 0    Type: n/a
<soft_cfm>
Description: Soft constraint force mixing.
Required: 0    Type: double    Default: 0
<soft_erp>
Description: Soft error reduction parameter
Required: 0    Type: double    Default: 0.2
<kp>
Description: dynamically "stiffness"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1e+12
<kd>
Description: dynamically "damping"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1
<max_vel>
Description: maximum contact correction velocity truncation term.
Required: 0    Type: double    Default: 0.01
<min_depth>
Description: minimum allowable depth before contact correction impulse is applied
Required: 0    Type: double    Default: 0
<bullet>
Description: Bullet contact parameters
Required: 0    Type: n/a
<soft_cfm>
Description: Soft constraint force mixing.
Required: 0    Type: double    Default: 0
<soft_erp>
Description: Soft error reduction parameter
Required: 0    Type: double    Default: 0.2
<kp>
Description: dynamically "stiffness"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1e+12
<kd>
Description: dynamically "damping"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1
<split_impulse>
Description: Similar to ODE's max_vel implementation. See http://bulletphysics.org/mediawiki-1.5.8/index.php/BtContactSolverInfo#Split_Impulse for more information.
Required: 1    Type: bool    Default: 1
<split_impulse_penetration_threshold>
Description: Similar to ODE's max_vel implementation. See http://bulletphysics.org/mediawiki-1.5.8/index.php/BtContactSolverInfo#Split_Impulse for more information.
Required: 1    Type: double    Default: -0.01
<soft_contact>
Description: none
Required: 0    Type: n/a
<dart>
Description: soft contact pamameters based on paper: http://www.cc.gatech.edu/graphics/projects/Sumit/homepage/papers/sigasia11/jain_softcontacts_siga11.pdf
Required: 0    Type: n/a
<bone_attachment>
Description: This is variable k_v in the soft contacts paper. Its unit is N/m.
Required: 1    Type: double    Default: 100
<stiffness>
Description: This is variable k_e in the soft contacts paper. Its unit is N/m.
Required: 1    Type: double    Default: 100
<damping>
Description: Viscous damping of point velocity in body frame. Its unit is N/m/s.
Required: 1    Type: double    Default: 10
<flesh_mass_fraction>
Description: Fraction of mass to be distributed among deformable nodes.
Required: 1    Type: double    Default: 0.05
<visual>
Description: The visual properties of the link. This element specifies the shape of the object (box, cylinder, etc.) for visualization purposes.
Required: *    Type: n/a
Attributes
name:
Unique name for the visual element within the scope of the parent link.
Type: string   Default: __default__

<cast_shadows>
Description: If true the visual will cast shadows.
Required: 0    Type: bool    Default: 1
<laser_retro>
Description: will be implemented in the future release.
Required: 0    Type: double    Default: 0
<transparency>
Description: The amount of transparency( 0=opaque, 1 = fully transparent)
Required: 0    Type: double    Default: 0
<pose>
Description: The reference frame of the visual element, relative to the reference frame of the link.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<material>
Description: The material of the visual element.
Required: 0    Type: n/a
<script>
Description: Name of material from an installed script file. This will override the color element if the script exists.
Required: 0    Type: n/a
<uri>
Description: URI of the material script file
Required: +    Type: string    Default: __default__
<name>
Description: Name of the script within the script file
Required: 1    Type: string    Default: __default__
<shader>
Description: none
Required: 0    Type: n/a
Attributes
type:
vertex, pixel, normal_map_objectspace, normal_map_tangentspace
Type: string   Default: pixel

<normal_map>
Description: filename of the normal map
Required: 0    Type: string    Default: __default__
<lighting>
Description: If false, dynamic lighting will be disabled
Required: 0    Type: bool    Default: 1
<ambient>
Description: The ambient color of a material specified by set of four numbers representing red/green/blue, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<diffuse>
Description: The diffuse color of a material specified by set of four numbers representing red/green/blue/alpha, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<specular>
Description: The specular color of a material specified by set of four numbers representing red/green/blue/alpha, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<emissive>
Description: The emissive color of a material specified by set of four numbers representing red/green/blue, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<geometry>
Description: The shape of the visual or collision object.
Required: 1    Type: n/a
<empty>
Description: You can use the empty tag to make empty geometries.
Required: 0    Type: n/a
<box>
Description: Box shape
Required: 0    Type: n/a
<size>
Description: The three side lengths of the box. The origin of the box is in its geometric center (inside the center of the box).
Required: 1    Type: vector3    Default: 1 1 1
<cylinder>
Description: Cylinder shape
Required: 0    Type: n/a
<radius>
Description: Radius of the cylinder
Required: 1    Type: double    Default: 1
<length>
Description: Length of the cylinder
Required: 1    Type: double    Default: 1
<heightmap>
Description: A heightmap based on a 2d grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI to a grayscale image file
Required: 1    Type: string    Default: __default__
<size>
Description: The size of the heightmap in world units. When loading an image: "size" is used if present, otherwise defaults to 1x1x1. When loading a DEM: "size" is used if present, otherwise defaults to true size of DEM.
Required: 0    Type: vector3    Default: 1 1 1
<pos>
Description: A position offset.
Required: 0    Type: vector3    Default: 0 0 0
<texture>
Description: The heightmap can contain multiple textures. The order of the texture matters. The first texture will appear at the lowest height, and the last texture at the highest hieght. Use blend to control the hieight thresholds and fade between textures.
Required: *    Type: n/a
<size>
Description: Size of the applied texture in meters.
Required: 1    Type: double    Default: 10
<diffuse>
Description: Diffuse texture image filename
Required: 1    Type: string    Default: __default__
<normal>
Description: Normalmap texture image filename
Required: 1    Type: string    Default: __default__
<blend>
Description: The blend tag controls how two adjacent textures are mixed. The number of blend elements should equal one less than the number of textures.
Required: *    Type: n/a
<min_height>
Description: Min height of a blend layer
Required: 1    Type: double    Default: 0
<fade_dist>
Description: Distance over which the blend occurs
Required: 1    Type: double    Default: 0
<use_terrain_paging>
Description: Set if the rendering engine will use terrain paging
Required: 0    Type: bool    Default: 0
<image>
Description: Extrude a set of boxes from a grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI of the grayscale image file
Required: 1    Type: string    Default: __default__
<scale>
Description: Scaling factor applied to the image
Required: 1    Type: double    Default: 1
<threshold>
Description: Grayscale threshold
Required: 1    Type: int    Default: 200
<height>
Description: Height of the extruded boxes
Required: 1    Type: double    Default: 1
<granularity>
Description: The amount of error in the model
Required: 1    Type: int    Default: 1
<mesh>
Description: Mesh shape
Required: 0    Type: n/a
<uri>
Description: Mesh uri
Required: 1    Type: string    Default: __default__
<submesh>
Description: Use a named submesh. The submesh must exist in the mesh specified by the uri
Required: 0    Type: n/a
<name>
Description: Name of the submesh within the parent mesh
Required: 1    Type: string    Default: __default__
<center>
Description: Set to true to center the vertices of the submesh at 0,0,0. This will effectively remove any transformations on the submesh before the poses from parent links and models are applied.
Required: 0    Type: bool    Default: 0
<scale>
Description: Scaling factor applied to the mesh
Required: 0    Type: vector3    Default: 1 1 1
<plane>
Description: Plane shape
Required: 0    Type: n/a
<normal>
Description: Normal direction for the plane
Required: 1    Type: vector3    Default: 0 0 1
<size>
Description: Length of each side of the plane
Required: 1    Type: vector2d    Default: 1 1
<sphere>
Description: Sphere shape
Required: 0    Type: n/a
<radius>
Description: radius of the sphere
Required: 1    Type: double    Default: 1
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<sensor>
Description: The sensor tag describes the type and properties of a sensor.
Required: 0    Type: n/a
Attributes
name:
A unique name for the sensor. This name must not match another model in the model.
Type: string   Default: __default__
type:
The type name of the sensor. By default, SDF supports types camera, depth, multicamera, contact, gps, imu, ir and ray.
Type: string   Default: __default__

<always_on>
Description: If true the sensor will always be updated according to the update rate.
Required: 0    Type: bool    Default: 0
<update_rate>
Description: The frequency at which the sensor data is generated. If left unspecified, the sensor will generate data every cycle.
Required: 0    Type: double    Default: 0
<visualize>
Description: If true, the sensor is visualized in the GUI
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the sensor, relative to the parent link reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<topic>
Description: Name of the topic on which data is published. This is necessary for visualization
Required: 0    Type: string    Default: __default__
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<camera>
Description: These elements are specific to camera sensors.
Required: 0    Type: n/a
Attributes
name:
An optional name for the camera.
Type: string   Default: __default__

<pose>
Description: A position and orientation in the parent coordinate frame for the camera.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<horizontal_fov>
Description: Horizontal field of view
Required: 1    Type: double    Default: 1.047
<image>
Description: The image size in pixels and format.
Required: 1    Type: n/a
<width>
Description: Width in pixels
Required: 1    Type: int    Default: 320
<height>
Description: Height in pixels
Required: 1    Type: int    Default: 240
<format>
Description: (L8|R8G8B8|B8G8R8|BAYER_RGGB8|BAYER_BGGR8|BAYER_GBRG8|BAYER_GRBG8)
Required: 0    Type: string    Default: R8G8B8
<clip>
Description: The near and far clip planes. Objects closer or farther than these planes are not rendered.
Required: 1    Type: n/a
<near>
Description: Near clipping plane
Required: 1    Type: double    Default: 0.1
<far>
Description: Far clipping plane
Required: 1    Type: double    Default: 100
<save>
Description: Enable or disable saving of camera frames.
Required: 0    Type: n/a
Attributes
enabled:
True = saving enabled
Type: bool   Default: 0

<path>
Description: The path name which will hold the frame data. If path name is relative, then directory is relative to current working directory.
Required: 1    Type: string    Default: __default__
<depth_camera>
Description: Depth camera parameters
Required: 0    Type: n/a
<output>
Description: Type of output
Required: 1    Type: string    Default: depths
<noise>
Description: The properties of the noise model that should be applied to generated images
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw additive noise values independently for each pixel from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<contact>
Description: These elements are specific to the contact sensor.
Required: 0    Type: n/a
<collision>
Description: name of the collision element within a link that acts as the contact sensor.
Required: 1    Type: string    Default: __default__
<topic>
Description: Topic on which contact data is published.
Required: 1    Type: string    Default: __default_topic__
<gps>
Description: These elements are specific to the GPS sensor.
Required: 0    Type: n/a
<position_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<velocity_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<imu>
Description: These elements are specific to the IMU sensor.
Required: 0    Type: n/a
<topic>
Description: Topic on which data is published.
Required: 0    Type: string    Default: __default_topic__
<noise>
Description: The properties of the noise model that should be applied to generated data
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<rate>
Description: Noise parameters for angular rates.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<accel>
Description: Noise parameters for linear accelerations.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<ray>
Description: These elements are specific to the ray (laser) sensor.
Required: 0    Type: n/a
<scan>
Description: none
Required: 1    Type: n/a
<horizontal>
Description: none
Required: 1    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 640
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 1    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<vertical>
Description: none
Required: 0    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 1
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 0    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<range>
Description: specifies range properties of each simulated ray
Required: 1    Type: n/a
<min>
Description: The minimum distance for each ray.
Required: 1    Type: double    Default: 0
<max>
Description: The maximum distance for each ray.
Required: 1    Type: double    Default: 0
<resolution>
Description: Linear resolution of each ray.
Required: 0    Type: double    Default: 0
<noise>
Description: The properties of the noise model that should be applied to generated scans
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<rfidtag>
Description: none
Required: 0    Type: n/a
<rfid>
Description: none
Required: 0    Type: n/a
<sonar>
Description: These elements are specific to the sonar sensor.
Required: 0    Type: n/a
<min>
Description: Minimum range
Required: 1    Type: double    Default: 0
<max>
Description: Max range
Required: 1    Type: double    Default: 1
<radius>
Description: Radius of the sonar cone at max range.
Required: 1    Type: double    Default: 0.5
<transceiver>
Description: These elements are specific to a wireless transceiver.
Required: 0    Type: n/a
<essid>
Description: Service set identifier (network name)
Required: 0    Type: string    Default: wireless
<frequency>
Description: Specifies the frequency of transmission in MHz
Required: 0    Type: double    Default: 2442
<min_frequency>
Description: Only a frequency range is filtered. Here we set the lower bound (MHz).
Required: 0    Type: double    Default: 2412
<max_frequency>
Description: Only a frequency range is filtered. Here we set the upper bound (MHz).
Required: 0    Type: double    Default: 2484
<gain>
Description: Specifies the antenna gain in dBi
Required: 1    Type: double    Default: 2.5
<power>
Description: Specifies the transmission power in dBm
Required: 1    Type: double    Default: 14.5
<sensitivity>
Description: Mininum received signal power in dBm
Required: 0    Type: double    Default: -90
<force_torque>
Description: These elements are specific to the force torque sensor.
Required: 0    Type: n/a
<frame>
Description: Frame in which to report the wrench values.
Required: 0    Type: string    Default: parent
<projector>
Description: none
Required: 0    Type: n/a
Attributes
name:
Name of the projector
Type: string   Default: __default__

<texture>
Description: Texture name
Required: 1    Type: string    Default: __default__
<pose>
Description: Pose of the projector
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<fov>
Description: Field of view
Required: 0    Type: double    Default: 0.785
<near_clip>
Description: Near clip distance
Required: 0    Type: double    Default: 0.1
<far_clip>
Description: far clip distance
Required: 0    Type: double    Default: 10
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<audio_sink>
Description: An audio sink.
Required: *    Type: n/a
<audio_source>
Description: An audio source.
Required: *    Type: n/a
<uri>
Description: URI of the audio media.
Required: 1    Type: string    Default: __default__
<pitch>
Description: Pitch for the audio media, in Hz
Required: 0    Type: double    Default: 1
<gain>
Description: Gain for the audio media, in dB.
Required: 0    Type: double    Default: 1
<contact>
Description: List of collision objects that will trigger audio playback.
Required: 0    Type: n/a
<collision>
Description: Name of child collision element that will trigger audio playback.
Required: +    Type: string    Default: __default__
<loop>
Description: True to make the audio source loop playback.
Required: 0    Type: bool    Default: 0
<pose>
Description: A position and orientation in the parent coordinate frame for the audio source. Position(x,y,z) and rotation (roll, pitch yaw) in the parent coordinate frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<joint>
Description: A joint connections two links with kinematic and dynamic properties.
Required: *    Type: n/a
Attributes
name:
A unique name for the joint within the scope of the model.
Type: string   Default: __default__
type:
The type of joint, which must be one of the following: (revolute) a hinge joint that rotates on a single axis with either a fixed or continuous range of motion, (gearbox) geared revolute joints, (revolute2) same as two revolute joints connected in series, (prismatic) a sliding joint that slides along an axis with a limited range specified by upper and lower limits, (ball) a ball and socket joint, (universal), like a ball joint, but constrains one degree of freedom, (piston) similar to a Slider joint except that rotation around the translation axis is possible.
Type: string   Default: __default__

<parent>
Description: Name of the parent link
Required: 1    Type: string    Default: __default__
<child>
Description: Name of the child link
Required: 1    Type: string    Default: __default__
<pose>
Description: Pose offset from child link frame to joint frame (expressed in child link frame).
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<gearbox_ratio>
Description: Parameter for gearbox joints. Given theta_1 and theta_2 defined in description for gearbox_reference_body, theta_2 = -gearbox_ratio * theta_1.
Required: 0    Type: double    Default: 1
<gearbox_reference_body>
Description: Parameter for gearbox joints. Gearbox ratio is enforced over two joint angles. First joint angle (theta_1) is the angle from the gearbox_reference_body to the parent link in the direction of the axis element and the second joint angle (theta_2) is the angle from the gearbox_reference_body to the child link in the direction of the axis2 element.
Required: 0    Type: string    Default: __default__
<thread_pitch>
Description: Parameter for screw joints.
Required: 0    Type: double    Default: 1
<axis>
Description: Parameters related to the axis of rotation for revolute joints, the axis of translation for prismatic joints.
Required: 1    Type: n/a
<xyz>
Description: Represents the x,y,z components of the axis unit vector. The axis is expressed in the joint frame unless the use_parent_model_frame flag is set to true. The vector should be normalized.
Required: 1    Type: vector3    Default: 0 0 1
<use_parent_model_frame>
Description: Flag to interpret the axis xyz element in the parent model frame instead of joint frame. Provided for Gazebo compatibility (see https://bitbucket.org/osrf/gazebo/issue/494 ).
Required: 1    Type: bool    Default: 0
<dynamics>
Description: An element specifying physical properties of the joint. These values are used to specify modeling properties of the joint, particularly useful for simulation.
Required: 0    Type: n/a
<damping>
Description: The physical velocity dependent viscous damping coefficient of the joint.
Required: 0    Type: double    Default: 0
<friction>
Description: The physical static friction value of the joint.
Required: 0    Type: double    Default: 0
<limit>
Description: specifies the limits of this joint
Required: 1    Type: n/a
<lower>
Description: An attribute specifying the lower joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 1    Type: double    Default: -1e+16
<upper>
Description: An attribute specifying the upper joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 1    Type: double    Default: 1e+16
<effort>
Description: An attribute for enforcing the maximum joint effort applied by Joint::SetForce. Limit is not enforced if value is negative.
Required: 0    Type: double    Default: -1
<velocity>
Description: (not implemented) An attribute for enforcing the maximum joint velocity.
Required: 0    Type: double    Default: -1
<stiffness>
Description: Joint stop stiffness. Support physics engines: SimBody.
Required: 0    Type: double    Default: 1e+08
<dissipation>
Description: Joint stop dissipation.
Required: 0    Type: double    Default: 1
<axis2>
Description: Parameters related to the second axis of rotation for revolute2 joints and universal joints.
Required: 0    Type: n/a
<xyz>
Description: Represents the x,y,z components of the axis unit vector. The axis is expressed in the joint frame unless the use_parent_model_frame flag is set to true. The vector should be normalized.
Required: 1    Type: vector3    Default: 0 0 1
<use_parent_model_frame>
Description: Flag to interpret the axis xyz element in the parent model frame instead of joint frame. Provided for Gazebo compatibility (see https://bitbucket.org/osrf/gazebo/issue/494 ).
Required: 1    Type: bool    Default: 0
<dynamics>
Description: An element specifying physical properties of the joint. These values are used to specify modeling properties of the joint, particularly useful for simulation.
Required: 0    Type: n/a
<damping>
Description: The physical velocity dependent viscous damping coefficient of the joint. EXPERIMENTAL: if damping coefficient is negative and implicit_spring_damper is true, adaptive damping is used.
Required: 0    Type: double    Default: 0
<friction>
Description: The physical static friction value of the joint.
Required: 0    Type: double    Default: 0
<limit>
Description: none
Required: 0    Type: n/a
<lower>
Description: An attribute specifying the lower joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 0    Type: double    Default: -1e+16
<upper>
Description: An attribute specifying the upper joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 0    Type: double    Default: 1e+16
<effort>
Description: An attribute for enforcing the maximum joint effort applied by Joint::SetForce. Limit is not enforced if value is negative.
Required: 0    Type: double    Default: -1
<velocity>
Description: (not implemented) An attribute for enforcing the maximum joint velocity.
Required: 0    Type: double    Default: -1
<stiffness>
Description: Joint stop stiffness. Supported physics engines: SimBody.
Required: 0    Type: double    Default: 1e+08
<dissipation>
Description: Joint stop dissipation. Supported physics engines: SimBody.
Required: 0    Type: double    Default: 1
<physics>
Description: Parameters that are specific to a certain physics engine.
Required: 0    Type: n/a
<simbody>
Description: Simbody specific parameters
Required: 0    Type: n/a
<must_be_loop_joint>
Description: Force cut in the multibody graph at this joint.
Required: 0    Type: bool    Default: 0
<ode>
Description: ODE specific parameters
Required: 0    Type: n/a
<provide_feedback>
Description: (DEPRECATION WARNING: In SDF 1.5 this tag will be replaced by the same tag directly under the physics-block. For now, this tag overrides the one outside of ode-block, but in SDF 1.5 this tag will be removed completely.) If provide feedback is set to true, ODE will compute the constraint forces at this joint.
Required: 0    Type: bool    Default: 0
<cfm_damping>
Description: If cfm damping is set to true, ODE will use CFM to simulate damping, allows for infinite damping, and one additional constraint row (previously used for joint limit) is always active.
Required: 0    Type: bool    Default: 0
<implicit_spring_damper>
Description: If implicit_spring_damper is set to true, ODE will use CFM, ERP to simulate stiffness and damping, allows for infinite damping, and one additional constraint row (previously used for joint limit) is always active. This replaces cfm_damping parameter in sdf 1.4.
Required: 0    Type: bool    Default: 0
<fudge_factor>
Description: Scale the excess for in a joint motor at joint limits. Should be between zero and one.
Required: 0    Type: double    Default: 0
<cfm>
Description: Constraint force mixing for constrained directions
Required: 0    Type: double    Default: 0
<erp>
Description: Error reduction parameter for constrained directions
Required: 0    Type: double    Default: 0.2
<bounce>
Description: Bounciness of the limits
Required: 0    Type: double    Default: 0
<max_force>
Description: Maximum force or torque used to reach the desired velocity.
Required: 0    Type: double    Default: 0
<velocity>
Description: The desired velocity of the joint. Should only be set if you want the joint to move on load.
Required: 0    Type: double    Default: 0
<limit>
Description: none
Required: 0    Type: n/a
<cfm>
Description: Constraint force mixing parameter used by the joint stop
Required: 1    Type: double    Default: 0
<erp>
Description: Error reduction parameter used by the joint stop
Required: 1    Type: double    Default: 0.2
<suspension>
Description: none
Required: 0    Type: n/a
<cfm>
Description: Suspension constraint force mixing parameter
Required: 1    Type: double    Default: 0
<erp>
Description: Suspension error reduction parameter
Required: 1    Type: double    Default: 0.2
<provide_feedback>
Description: If provide feedback is set to true, physics engine will compute the constraint forces at this joint. For now, provide_feedback under ode block will override this tag and given user warning about the migration. provide_feedback under ode is scheduled to be removed in SDF 1.5.
Required: 0    Type: bool    Default: 0
<sensor>
Description: The sensor tag describes the type and properties of a sensor.
Required: 0    Type: n/a
Attributes
name:
A unique name for the sensor. This name must not match another model in the model.
Type: string   Default: __default__
type:
The type name of the sensor. By default, SDF supports types camera, depth, multicamera, contact, gps, imu, ir and ray.
Type: string   Default: __default__

<always_on>
Description: If true the sensor will always be updated according to the update rate.
Required: 0    Type: bool    Default: 0
<update_rate>
Description: The frequency at which the sensor data is generated. If left unspecified, the sensor will generate data every cycle.
Required: 0    Type: double    Default: 0
<visualize>
Description: If true, the sensor is visualized in the GUI
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the sensor, relative to the parent link reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<topic>
Description: Name of the topic on which data is published. This is necessary for visualization
Required: 0    Type: string    Default: __default__
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<camera>
Description: These elements are specific to camera sensors.
Required: 0    Type: n/a
Attributes
name:
An optional name for the camera.
Type: string   Default: __default__

<pose>
Description: A position and orientation in the parent coordinate frame for the camera.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<horizontal_fov>
Description: Horizontal field of view
Required: 1    Type: double    Default: 1.047
<image>
Description: The image size in pixels and format.
Required: 1    Type: n/a
<width>
Description: Width in pixels
Required: 1    Type: int    Default: 320
<height>
Description: Height in pixels
Required: 1    Type: int    Default: 240
<format>
Description: (L8|R8G8B8|B8G8R8|BAYER_RGGB8|BAYER_BGGR8|BAYER_GBRG8|BAYER_GRBG8)
Required: 0    Type: string    Default: R8G8B8
<clip>
Description: The near and far clip planes. Objects closer or farther than these planes are not rendered.
Required: 1    Type: n/a
<near>
Description: Near clipping plane
Required: 1    Type: double    Default: 0.1
<far>
Description: Far clipping plane
Required: 1    Type: double    Default: 100
<save>
Description: Enable or disable saving of camera frames.
Required: 0    Type: n/a
Attributes
enabled:
True = saving enabled
Type: bool   Default: 0

<path>
Description: The path name which will hold the frame data. If path name is relative, then directory is relative to current working directory.
Required: 1    Type: string    Default: __default__
<depth_camera>
Description: Depth camera parameters
Required: 0    Type: n/a
<output>
Description: Type of output
Required: 1    Type: string    Default: depths
<noise>
Description: The properties of the noise model that should be applied to generated images
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw additive noise values independently for each pixel from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<contact>
Description: These elements are specific to the contact sensor.
Required: 0    Type: n/a
<collision>
Description: name of the collision element within a link that acts as the contact sensor.
Required: 1    Type: string    Default: __default__
<topic>
Description: Topic on which contact data is published.
Required: 1    Type: string    Default: __default_topic__
<gps>
Description: These elements are specific to the GPS sensor.
Required: 0    Type: n/a
<position_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<velocity_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<imu>
Description: These elements are specific to the IMU sensor.
Required: 0    Type: n/a
<topic>
Description: Topic on which data is published.
Required: 0    Type: string    Default: __default_topic__
<noise>
Description: The properties of the noise model that should be applied to generated data
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<rate>
Description: Noise parameters for angular rates.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<accel>
Description: Noise parameters for linear accelerations.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<ray>
Description: These elements are specific to the ray (laser) sensor.
Required: 0    Type: n/a
<scan>
Description: none
Required: 1    Type: n/a
<horizontal>
Description: none
Required: 1    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 640
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 1    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<vertical>
Description: none
Required: 0    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 1
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 0    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<range>
Description: specifies range properties of each simulated ray
Required: 1    Type: n/a
<min>
Description: The minimum distance for each ray.
Required: 1    Type: double    Default: 0
<max>
Description: The maximum distance for each ray.
Required: 1    Type: double    Default: 0
<resolution>
Description: Linear resolution of each ray.
Required: 0    Type: double    Default: 0
<noise>
Description: The properties of the noise model that should be applied to generated scans
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<rfidtag>
Description: none
Required: 0    Type: n/a
<rfid>
Description: none
Required: 0    Type: n/a
<sonar>
Description: These elements are specific to the sonar sensor.
Required: 0    Type: n/a
<min>
Description: Minimum range
Required: 1    Type: double    Default: 0
<max>
Description: Max range
Required: 1    Type: double    Default: 1
<radius>
Description: Radius of the sonar cone at max range.
Required: 1    Type: double    Default: 0.5
<transceiver>
Description: These elements are specific to a wireless transceiver.
Required: 0    Type: n/a
<essid>
Description: Service set identifier (network name)
Required: 0    Type: string    Default: wireless
<frequency>
Description: Specifies the frequency of transmission in MHz
Required: 0    Type: double    Default: 2442
<min_frequency>
Description: Only a frequency range is filtered. Here we set the lower bound (MHz).
Required: 0    Type: double    Default: 2412
<max_frequency>
Description: Only a frequency range is filtered. Here we set the upper bound (MHz).
Required: 0    Type: double    Default: 2484
<gain>
Description: Specifies the antenna gain in dBi
Required: 1    Type: double    Default: 2.5
<power>
Description: Specifies the transmission power in dBm
Required: 1    Type: double    Default: 14.5
<sensitivity>
Description: Mininum received signal power in dBm
Required: 0    Type: double    Default: -90
<force_torque>
Description: These elements are specific to the force torque sensor.
Required: 0    Type: n/a
<frame>
Description: Frame in which to report the wrench values.
Required: 0    Type: string    Default: parent
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<gripper>
Description: none
Required: *    Type: n/a
Attributes
name:
no description
Type: string   Default: __default__

<grasp_check>
Description: none
Required: 0    Type: n/a
<detach_steps>
Description: none
Required: 0    Type: int    Default: 40
<attach_steps>
Description: none
Required: 0    Type: int    Default: 20
<min_contact_count>
Description: none
Required: 0    Type: unsigned int    Default: 2
<gripper_link>
Description: none
Required: +    Type: string    Default: __default__
<palm_link>
Description: none
Required: 1    Type: string    Default: __default__
<actor>
Description: none
Required: *    Type: n/a
Attributes
name:
no description
Type: string   Default: __default__
static:
no description
Type: bool   Default: 0

<pose>
Description: Origin of the actor
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<skin>
Description: none
Required: 1    Type: n/a
<filename>
Description: none
Required: 1    Type: string    Default: __default__
<scale>
Description: none
Required: 0    Type: double    Default: 1
<animation>
Description: none
Required: +    Type: n/a
Attributes
name:
no description
Type: string   Default: __default__

<filename>
Description: none
Required: 1    Type: string    Default: __default__
<scale>
Description: none
Required: 0    Type: double    Default: 1
<interpolate_x>
Description: none
Required: 0    Type: bool    Default: 0
<script>
Description: none
Required: 1    Type: n/a
<loop>
Description: none
Required: 0    Type: bool    Default: 1
<delay_start>
Description: none
Required: 0    Type: double    Default: 0
<auto_start>
Description: none
Required: 0    Type: bool    Default: 1
<trajectory>
Description: none
Required: *    Type: n/a
Attributes
id:
no description
Type: int   Default: 0
type:
no description
Type: string   Default: __default__

<waypoint>
Description: none
Required: *    Type: n/a
<time>
Description: none
Required: 1    Type: double    Default: 0
<pose>
Description: none
Required: 1    Type: pose    Default: 0 0 0 0 -0 0
<link>
Description: A physical link with inertia, collision, and visual properties. A link must be a child of a model, and any number of links may exist in a model.
Required: +    Type: n/a
Attributes
name:
A unique name for the link within the scope of the model.
Type: string   Default: __default__

<gravity>
Description: If true, the link is affected by gravity.
Required: 0    Type: bool    Default: 1
<self_collide>
Description: If true, the link can collide with other links in the model.
Required: 0    Type: bool    Default: 0
<kinematic>
Description: If true, the link is kinematic only
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the link reference frame, relative to the model reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<must_be_base_link>
Description: If true, the link will have 6DOF and be a direct child of world.
Required: 0    Type: bool    Default: 0
<velocity_decay>
Description: Exponential damping of the link's velocity.
Required: 1    Type: n/a
<linear>
Description: Linear damping
Required: 1    Type: double    Default: 0
<angular>
Description: Angular damping
Required: 1    Type: double    Default: 0
<inertial>
Description: The inertial properties of the link.
Required: 0    Type: n/a
<mass>
Description: The mass of the link.
Required: 0    Type: double    Default: 1
<pose>
Description: This is the pose of the inertial reference frame, relative to the link reference frame. The origin of the inertial reference frame needs to be at the center of gravity. The axes of the inertial reference frame do not need to be aligned with the principal axes of the inertia.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<inertia>
Description: The 3x3 rotational inertia matrix. Because the rotational inertia matrix is symmetric, only 6 above-diagonal elements of this matrix are specified here, using the attributes ixx, ixy, ixz, iyy, iyz, izz.
Required: 0    Type: n/a
<ixx>
Description: none
Required: 1    Type: double    Default: 1
<ixy>
Description: none
Required: 1    Type: double    Default: 0
<ixz>
Description: none
Required: 1    Type: double    Default: 0
<iyy>
Description: none
Required: 1    Type: double    Default: 1
<iyz>
Description: none
Required: 1    Type: double    Default: 0
<izz>
Description: none
Required: 1    Type: double    Default: 1
<collision>
Description: The collision properties of a link. Note that this can be different from the visual properties of a link, for example, simpler collision models are often used to reduce computation time.
Required: *    Type: n/a
Attributes
name:
Unique name for the collision element within the scope of the parent link.
Type: string   Default: __default__

<laser_retro>
Description: intensity value returned by laser sensor.
Required: 0    Type: double    Default: 0
<max_contacts>
Description: Maximum number of contacts allowed between two entities. This value overrides the max_contacts element defined in physics.
Required: 0    Type: int    Default: 10
<pose>
Description: The reference frame of the collision element, relative to the reference frame of the link.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<geometry>
Description: The shape of the visual or collision object.
Required: 1    Type: n/a
<empty>
Description: You can use the empty tag to make empty geometries.
Required: 0    Type: n/a
<box>
Description: Box shape
Required: 0    Type: n/a
<size>
Description: The three side lengths of the box. The origin of the box is in its geometric center (inside the center of the box).
Required: 1    Type: vector3    Default: 1 1 1
<cylinder>
Description: Cylinder shape
Required: 0    Type: n/a
<radius>
Description: Radius of the cylinder
Required: 1    Type: double    Default: 1
<length>
Description: Length of the cylinder
Required: 1    Type: double    Default: 1
<heightmap>
Description: A heightmap based on a 2d grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI to a grayscale image file
Required: 1    Type: string    Default: __default__
<size>
Description: The size of the heightmap in world units. When loading an image: "size" is used if present, otherwise defaults to 1x1x1. When loading a DEM: "size" is used if present, otherwise defaults to true size of DEM.
Required: 0    Type: vector3    Default: 1 1 1
<pos>
Description: A position offset.
Required: 0    Type: vector3    Default: 0 0 0
<texture>
Description: The heightmap can contain multiple textures. The order of the texture matters. The first texture will appear at the lowest height, and the last texture at the highest hieght. Use blend to control the hieight thresholds and fade between textures.
Required: *    Type: n/a
<size>
Description: Size of the applied texture in meters.
Required: 1    Type: double    Default: 10
<diffuse>
Description: Diffuse texture image filename
Required: 1    Type: string    Default: __default__
<normal>
Description: Normalmap texture image filename
Required: 1    Type: string    Default: __default__
<blend>
Description: The blend tag controls how two adjacent textures are mixed. The number of blend elements should equal one less than the number of textures.
Required: *    Type: n/a
<min_height>
Description: Min height of a blend layer
Required: 1    Type: double    Default: 0
<fade_dist>
Description: Distance over which the blend occurs
Required: 1    Type: double    Default: 0
<use_terrain_paging>
Description: Set if the rendering engine will use terrain paging
Required: 0    Type: bool    Default: 0
<image>
Description: Extrude a set of boxes from a grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI of the grayscale image file
Required: 1    Type: string    Default: __default__
<scale>
Description: Scaling factor applied to the image
Required: 1    Type: double    Default: 1
<threshold>
Description: Grayscale threshold
Required: 1    Type: int    Default: 200
<height>
Description: Height of the extruded boxes
Required: 1    Type: double    Default: 1
<granularity>
Description: The amount of error in the model
Required: 1    Type: int    Default: 1
<mesh>
Description: Mesh shape
Required: 0    Type: n/a
<uri>
Description: Mesh uri
Required: 1    Type: string    Default: __default__
<submesh>
Description: Use a named submesh. The submesh must exist in the mesh specified by the uri
Required: 0    Type: n/a
<name>
Description: Name of the submesh within the parent mesh
Required: 1    Type: string    Default: __default__
<center>
Description: Set to true to center the vertices of the submesh at 0,0,0. This will effectively remove any transformations on the submesh before the poses from parent links and models are applied.
Required: 0    Type: bool    Default: 0
<scale>
Description: Scaling factor applied to the mesh
Required: 0    Type: vector3    Default: 1 1 1
<plane>
Description: Plane shape
Required: 0    Type: n/a
<normal>
Description: Normal direction for the plane
Required: 1    Type: vector3    Default: 0 0 1
<size>
Description: Length of each side of the plane
Required: 1    Type: vector2d    Default: 1 1
<sphere>
Description: Sphere shape
Required: 0    Type: n/a
<radius>
Description: radius of the sphere
Required: 1    Type: double    Default: 1
<surface>
Description: The surface parameters
Required: 0    Type: n/a
<bounce>
Description: none
Required: 0    Type: n/a
<restitution_coefficient>
Description: Bounciness coefficient of restitution, from [0...1], where 0=no bounciness.
Required: 0    Type: double    Default: 0
<threshold>
Description: Bounce capture velocity, below which effective coefficient of restitution is 0.
Required: 0    Type: double    Default: 100000
<friction>
Description: none
Required: 0    Type: n/a
<ode>
Description: ODE friction parameters
Required: 0    Type: n/a
<mu>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<mu2>
Description: Second coefficient of friction in the range of [0..1]
Required: 0    Type: double    Default: 1
<fdir1>
Description: 3-tuple specifying direction of mu1 in the collision local reference frame.
Required: 0    Type: vector3    Default: 0 0 0
<slip1>
Description: Force dependent slip direction 1 in collision local frame, between the range of [0..1].
Required: 0    Type: double    Default: 0
<slip2>
Description: Force dependent slip direction 2 in collision local frame, between the range of [0..1].
Required: 0    Type: double    Default: 0
<bullet>
Description: none
Required: 0    Type: n/a
<friction>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<friction2>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<fdir1>
Description: 3-tuple specifying direction of mu1 in the collision local reference frame.
Required: 0    Type: vector3    Default: 0 0 0
<rolling_friction>
Description: coefficient of friction in the range of [0..1]
Required: 0    Type: double    Default: 1
<contact>
Description: none
Required: 0    Type: n/a
<collide_without_contact>
Description: Flag to disable contact force generation, while still allowing collision checks and contact visualization to occur.
Required: 0    Type: bool    Default: 0
<collide_without_contact_bitmask>
Description: Bitmask for collision filtering when collide_without_contact is on
Required: 0    Type: unsigned int    Default: 1
<ode>
Description: ODE contact parameters
Required: 0    Type: n/a
<soft_cfm>
Description: Soft constraint force mixing.
Required: 0    Type: double    Default: 0
<soft_erp>
Description: Soft error reduction parameter
Required: 0    Type: double    Default: 0.2
<kp>
Description: dynamically "stiffness"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1e+12
<kd>
Description: dynamically "damping"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1
<max_vel>
Description: maximum contact correction velocity truncation term.
Required: 0    Type: double    Default: 0.01
<min_depth>
Description: minimum allowable depth before contact correction impulse is applied
Required: 0    Type: double    Default: 0
<bullet>
Description: Bullet contact parameters
Required: 0    Type: n/a
<soft_cfm>
Description: Soft constraint force mixing.
Required: 0    Type: double    Default: 0
<soft_erp>
Description: Soft error reduction parameter
Required: 0    Type: double    Default: 0.2
<kp>
Description: dynamically "stiffness"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1e+12
<kd>
Description: dynamically "damping"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1
<split_impulse>
Description: Similar to ODE's max_vel implementation. See http://bulletphysics.org/mediawiki-1.5.8/index.php/BtContactSolverInfo#Split_Impulse for more information.
Required: 1    Type: bool    Default: 1
<split_impulse_penetration_threshold>
Description: Similar to ODE's max_vel implementation. See http://bulletphysics.org/mediawiki-1.5.8/index.php/BtContactSolverInfo#Split_Impulse for more information.
Required: 1    Type: double    Default: -0.01
<soft_contact>
Description: none
Required: 0    Type: n/a
<dart>
Description: soft contact pamameters based on paper: http://www.cc.gatech.edu/graphics/projects/Sumit/homepage/papers/sigasia11/jain_softcontacts_siga11.pdf
Required: 0    Type: n/a
<bone_attachment>
Description: This is variable k_v in the soft contacts paper. Its unit is N/m.
Required: 1    Type: double    Default: 100
<stiffness>
Description: This is variable k_e in the soft contacts paper. Its unit is N/m.
Required: 1    Type: double    Default: 100
<damping>
Description: Viscous damping of point velocity in body frame. Its unit is N/m/s.
Required: 1    Type: double    Default: 10
<flesh_mass_fraction>
Description: Fraction of mass to be distributed among deformable nodes.
Required: 1    Type: double    Default: 0.05
<visual>
Description: The visual properties of the link. This element specifies the shape of the object (box, cylinder, etc.) for visualization purposes.
Required: *    Type: n/a
Attributes
name:
Unique name for the visual element within the scope of the parent link.
Type: string   Default: __default__

<cast_shadows>
Description: If true the visual will cast shadows.
Required: 0    Type: bool    Default: 1
<laser_retro>
Description: will be implemented in the future release.
Required: 0    Type: double    Default: 0
<transparency>
Description: The amount of transparency( 0=opaque, 1 = fully transparent)
Required: 0    Type: double    Default: 0
<pose>
Description: The reference frame of the visual element, relative to the reference frame of the link.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<material>
Description: The material of the visual element.
Required: 0    Type: n/a
<script>
Description: Name of material from an installed script file. This will override the color element if the script exists.
Required: 0    Type: n/a
<uri>
Description: URI of the material script file
Required: +    Type: string    Default: __default__
<name>
Description: Name of the script within the script file
Required: 1    Type: string    Default: __default__
<shader>
Description: none
Required: 0    Type: n/a
Attributes
type:
vertex, pixel, normal_map_objectspace, normal_map_tangentspace
Type: string   Default: pixel

<normal_map>
Description: filename of the normal map
Required: 0    Type: string    Default: __default__
<lighting>
Description: If false, dynamic lighting will be disabled
Required: 0    Type: bool    Default: 1
<ambient>
Description: The ambient color of a material specified by set of four numbers representing red/green/blue, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<diffuse>
Description: The diffuse color of a material specified by set of four numbers representing red/green/blue/alpha, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<specular>
Description: The specular color of a material specified by set of four numbers representing red/green/blue/alpha, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<emissive>
Description: The emissive color of a material specified by set of four numbers representing red/green/blue, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<geometry>
Description: The shape of the visual or collision object.
Required: 1    Type: n/a
<empty>
Description: You can use the empty tag to make empty geometries.
Required: 0    Type: n/a
<box>
Description: Box shape
Required: 0    Type: n/a
<size>
Description: The three side lengths of the box. The origin of the box is in its geometric center (inside the center of the box).
Required: 1    Type: vector3    Default: 1 1 1
<cylinder>
Description: Cylinder shape
Required: 0    Type: n/a
<radius>
Description: Radius of the cylinder
Required: 1    Type: double    Default: 1
<length>
Description: Length of the cylinder
Required: 1    Type: double    Default: 1
<heightmap>
Description: A heightmap based on a 2d grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI to a grayscale image file
Required: 1    Type: string    Default: __default__
<size>
Description: The size of the heightmap in world units. When loading an image: "size" is used if present, otherwise defaults to 1x1x1. When loading a DEM: "size" is used if present, otherwise defaults to true size of DEM.
Required: 0    Type: vector3    Default: 1 1 1
<pos>
Description: A position offset.
Required: 0    Type: vector3    Default: 0 0 0
<texture>
Description: The heightmap can contain multiple textures. The order of the texture matters. The first texture will appear at the lowest height, and the last texture at the highest hieght. Use blend to control the hieight thresholds and fade between textures.
Required: *    Type: n/a
<size>
Description: Size of the applied texture in meters.
Required: 1    Type: double    Default: 10
<diffuse>
Description: Diffuse texture image filename
Required: 1    Type: string    Default: __default__
<normal>
Description: Normalmap texture image filename
Required: 1    Type: string    Default: __default__
<blend>
Description: The blend tag controls how two adjacent textures are mixed. The number of blend elements should equal one less than the number of textures.
Required: *    Type: n/a
<min_height>
Description: Min height of a blend layer
Required: 1    Type: double    Default: 0
<fade_dist>
Description: Distance over which the blend occurs
Required: 1    Type: double    Default: 0
<use_terrain_paging>
Description: Set if the rendering engine will use terrain paging
Required: 0    Type: bool    Default: 0
<image>
Description: Extrude a set of boxes from a grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI of the grayscale image file
Required: 1    Type: string    Default: __default__
<scale>
Description: Scaling factor applied to the image
Required: 1    Type: double    Default: 1
<threshold>
Description: Grayscale threshold
Required: 1    Type: int    Default: 200
<height>
Description: Height of the extruded boxes
Required: 1    Type: double    Default: 1
<granularity>
Description: The amount of error in the model
Required: 1    Type: int    Default: 1
<mesh>
Description: Mesh shape
Required: 0    Type: n/a
<uri>
Description: Mesh uri
Required: 1    Type: string    Default: __default__
<submesh>
Description: Use a named submesh. The submesh must exist in the mesh specified by the uri
Required: 0    Type: n/a
<name>
Description: Name of the submesh within the parent mesh
Required: 1    Type: string    Default: __default__
<center>
Description: Set to true to center the vertices of the submesh at 0,0,0. This will effectively remove any transformations on the submesh before the poses from parent links and models are applied.
Required: 0    Type: bool    Default: 0
<scale>
Description: Scaling factor applied to the mesh
Required: 0    Type: vector3    Default: 1 1 1
<plane>
Description: Plane shape
Required: 0    Type: n/a
<normal>
Description: Normal direction for the plane
Required: 1    Type: vector3    Default: 0 0 1
<size>
Description: Length of each side of the plane
Required: 1    Type: vector2d    Default: 1 1
<sphere>
Description: Sphere shape
Required: 0    Type: n/a
<radius>
Description: radius of the sphere
Required: 1    Type: double    Default: 1
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<sensor>
Description: The sensor tag describes the type and properties of a sensor.
Required: 0    Type: n/a
Attributes
name:
A unique name for the sensor. This name must not match another model in the model.
Type: string   Default: __default__
type:
The type name of the sensor. By default, SDF supports types camera, depth, multicamera, contact, gps, imu, ir and ray.
Type: string   Default: __default__

<always_on>
Description: If true the sensor will always be updated according to the update rate.
Required: 0    Type: bool    Default: 0
<update_rate>
Description: The frequency at which the sensor data is generated. If left unspecified, the sensor will generate data every cycle.
Required: 0    Type: double    Default: 0
<visualize>
Description: If true, the sensor is visualized in the GUI
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the sensor, relative to the parent link reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<topic>
Description: Name of the topic on which data is published. This is necessary for visualization
Required: 0    Type: string    Default: __default__
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<camera>
Description: These elements are specific to camera sensors.
Required: 0    Type: n/a
Attributes
name:
An optional name for the camera.
Type: string   Default: __default__

<pose>
Description: A position and orientation in the parent coordinate frame for the camera.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<horizontal_fov>
Description: Horizontal field of view
Required: 1    Type: double    Default: 1.047
<image>
Description: The image size in pixels and format.
Required: 1    Type: n/a
<width>
Description: Width in pixels
Required: 1    Type: int    Default: 320
<height>
Description: Height in pixels
Required: 1    Type: int    Default: 240
<format>
Description: (L8|R8G8B8|B8G8R8|BAYER_RGGB8|BAYER_BGGR8|BAYER_GBRG8|BAYER_GRBG8)
Required: 0    Type: string    Default: R8G8B8
<clip>
Description: The near and far clip planes. Objects closer or farther than these planes are not rendered.
Required: 1    Type: n/a
<near>
Description: Near clipping plane
Required: 1    Type: double    Default: 0.1
<far>
Description: Far clipping plane
Required: 1    Type: double    Default: 100
<save>
Description: Enable or disable saving of camera frames.
Required: 0    Type: n/a
Attributes
enabled:
True = saving enabled
Type: bool   Default: 0

<path>
Description: The path name which will hold the frame data. If path name is relative, then directory is relative to current working directory.
Required: 1    Type: string    Default: __default__
<depth_camera>
Description: Depth camera parameters
Required: 0    Type: n/a
<output>
Description: Type of output
Required: 1    Type: string    Default: depths
<noise>
Description: The properties of the noise model that should be applied to generated images
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw additive noise values independently for each pixel from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<contact>
Description: These elements are specific to the contact sensor.
Required: 0    Type: n/a
<collision>
Description: name of the collision element within a link that acts as the contact sensor.
Required: 1    Type: string    Default: __default__
<topic>
Description: Topic on which contact data is published.
Required: 1    Type: string    Default: __default_topic__
<gps>
Description: These elements are specific to the GPS sensor.
Required: 0    Type: n/a
<position_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<velocity_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<imu>
Description: These elements are specific to the IMU sensor.
Required: 0    Type: n/a
<topic>
Description: Topic on which data is published.
Required: 0    Type: string    Default: __default_topic__
<noise>
Description: The properties of the noise model that should be applied to generated data
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<rate>
Description: Noise parameters for angular rates.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<accel>
Description: Noise parameters for linear accelerations.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<ray>
Description: These elements are specific to the ray (laser) sensor.
Required: 0    Type: n/a
<scan>
Description: none
Required: 1    Type: n/a
<horizontal>
Description: none
Required: 1    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 640
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 1    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<vertical>
Description: none
Required: 0    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 1
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 0    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<range>
Description: specifies range properties of each simulated ray
Required: 1    Type: n/a
<min>
Description: The minimum distance for each ray.
Required: 1    Type: double    Default: 0
<max>
Description: The maximum distance for each ray.
Required: 1    Type: double    Default: 0
<resolution>
Description: Linear resolution of each ray.
Required: 0    Type: double    Default: 0
<noise>
Description: The properties of the noise model that should be applied to generated scans
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<rfidtag>
Description: none
Required: 0    Type: n/a
<rfid>
Description: none
Required: 0    Type: n/a
<sonar>
Description: These elements are specific to the sonar sensor.
Required: 0    Type: n/a
<min>
Description: Minimum range
Required: 1    Type: double    Default: 0
<max>
Description: Max range
Required: 1    Type: double    Default: 1
<radius>
Description: Radius of the sonar cone at max range.
Required: 1    Type: double    Default: 0.5
<transceiver>
Description: These elements are specific to a wireless transceiver.
Required: 0    Type: n/a
<essid>
Description: Service set identifier (network name)
Required: 0    Type: string    Default: wireless
<frequency>
Description: Specifies the frequency of transmission in MHz
Required: 0    Type: double    Default: 2442
<min_frequency>
Description: Only a frequency range is filtered. Here we set the lower bound (MHz).
Required: 0    Type: double    Default: 2412
<max_frequency>
Description: Only a frequency range is filtered. Here we set the upper bound (MHz).
Required: 0    Type: double    Default: 2484
<gain>
Description: Specifies the antenna gain in dBi
Required: 1    Type: double    Default: 2.5
<power>
Description: Specifies the transmission power in dBm
Required: 1    Type: double    Default: 14.5
<sensitivity>
Description: Mininum received signal power in dBm
Required: 0    Type: double    Default: -90
<force_torque>
Description: These elements are specific to the force torque sensor.
Required: 0    Type: n/a
<frame>
Description: Frame in which to report the wrench values.
Required: 0    Type: string    Default: parent
<projector>
Description: none
Required: 0    Type: n/a
Attributes
name:
Name of the projector
Type: string   Default: __default__

<texture>
Description: Texture name
Required: 1    Type: string    Default: __default__
<pose>
Description: Pose of the projector
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<fov>
Description: Field of view
Required: 0    Type: double    Default: 0.785
<near_clip>
Description: Near clip distance
Required: 0    Type: double    Default: 0.1
<far_clip>
Description: far clip distance
Required: 0    Type: double    Default: 10
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<audio_sink>
Description: An audio sink.
Required: *    Type: n/a
<audio_source>
Description: An audio source.
Required: *    Type: n/a
<uri>
Description: URI of the audio media.
Required: 1    Type: string    Default: __default__
<pitch>
Description: Pitch for the audio media, in Hz
Required: 0    Type: double    Default: 1
<gain>
Description: Gain for the audio media, in dB.
Required: 0    Type: double    Default: 1
<contact>
Description: List of collision objects that will trigger audio playback.
Required: 0    Type: n/a
<collision>
Description: Name of child collision element that will trigger audio playback.
Required: +    Type: string    Default: __default__
<loop>
Description: True to make the audio source loop playback.
Required: 0    Type: bool    Default: 0
<pose>
Description: A position and orientation in the parent coordinate frame for the audio source. Position(x,y,z) and rotation (roll, pitch yaw) in the parent coordinate frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<joint>
Description: A joint connections two links with kinematic and dynamic properties.
Required: *    Type: n/a
Attributes
name:
A unique name for the joint within the scope of the model.
Type: string   Default: __default__
type:
The type of joint, which must be one of the following: (revolute) a hinge joint that rotates on a single axis with either a fixed or continuous range of motion, (gearbox) geared revolute joints, (revolute2) same as two revolute joints connected in series, (prismatic) a sliding joint that slides along an axis with a limited range specified by upper and lower limits, (ball) a ball and socket joint, (universal), like a ball joint, but constrains one degree of freedom, (piston) similar to a Slider joint except that rotation around the translation axis is possible.
Type: string   Default: __default__

<parent>
Description: Name of the parent link
Required: 1    Type: string    Default: __default__
<child>
Description: Name of the child link
Required: 1    Type: string    Default: __default__
<pose>
Description: Pose offset from child link frame to joint frame (expressed in child link frame).
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<gearbox_ratio>
Description: Parameter for gearbox joints. Given theta_1 and theta_2 defined in description for gearbox_reference_body, theta_2 = -gearbox_ratio * theta_1.
Required: 0    Type: double    Default: 1
<gearbox_reference_body>
Description: Parameter for gearbox joints. Gearbox ratio is enforced over two joint angles. First joint angle (theta_1) is the angle from the gearbox_reference_body to the parent link in the direction of the axis element and the second joint angle (theta_2) is the angle from the gearbox_reference_body to the child link in the direction of the axis2 element.
Required: 0    Type: string    Default: __default__
<thread_pitch>
Description: Parameter for screw joints.
Required: 0    Type: double    Default: 1
<axis>
Description: Parameters related to the axis of rotation for revolute joints, the axis of translation for prismatic joints.
Required: 1    Type: n/a
<xyz>
Description: Represents the x,y,z components of the axis unit vector. The axis is expressed in the joint frame unless the use_parent_model_frame flag is set to true. The vector should be normalized.
Required: 1    Type: vector3    Default: 0 0 1
<use_parent_model_frame>
Description: Flag to interpret the axis xyz element in the parent model frame instead of joint frame. Provided for Gazebo compatibility (see https://bitbucket.org/osrf/gazebo/issue/494 ).
Required: 1    Type: bool    Default: 0
<dynamics>
Description: An element specifying physical properties of the joint. These values are used to specify modeling properties of the joint, particularly useful for simulation.
Required: 0    Type: n/a
<damping>
Description: The physical velocity dependent viscous damping coefficient of the joint.
Required: 0    Type: double    Default: 0
<friction>
Description: The physical static friction value of the joint.
Required: 0    Type: double    Default: 0
<limit>
Description: specifies the limits of this joint
Required: 1    Type: n/a
<lower>
Description: An attribute specifying the lower joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 1    Type: double    Default: -1e+16
<upper>
Description: An attribute specifying the upper joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 1    Type: double    Default: 1e+16
<effort>
Description: An attribute for enforcing the maximum joint effort applied by Joint::SetForce. Limit is not enforced if value is negative.
Required: 0    Type: double    Default: -1
<velocity>
Description: (not implemented) An attribute for enforcing the maximum joint velocity.
Required: 0    Type: double    Default: -1
<stiffness>
Description: Joint stop stiffness. Support physics engines: SimBody.
Required: 0    Type: double    Default: 1e+08
<dissipation>
Description: Joint stop dissipation.
Required: 0    Type: double    Default: 1
<axis2>
Description: Parameters related to the second axis of rotation for revolute2 joints and universal joints.
Required: 0    Type: n/a
<xyz>
Description: Represents the x,y,z components of the axis unit vector. The axis is expressed in the joint frame unless the use_parent_model_frame flag is set to true. The vector should be normalized.
Required: 1    Type: vector3    Default: 0 0 1
<use_parent_model_frame>
Description: Flag to interpret the axis xyz element in the parent model frame instead of joint frame. Provided for Gazebo compatibility (see https://bitbucket.org/osrf/gazebo/issue/494 ).
Required: 1    Type: bool    Default: 0
<dynamics>
Description: An element specifying physical properties of the joint. These values are used to specify modeling properties of the joint, particularly useful for simulation.
Required: 0    Type: n/a
<damping>
Description: The physical velocity dependent viscous damping coefficient of the joint. EXPERIMENTAL: if damping coefficient is negative and implicit_spring_damper is true, adaptive damping is used.
Required: 0    Type: double    Default: 0
<friction>
Description: The physical static friction value of the joint.
Required: 0    Type: double    Default: 0
<limit>
Description: none
Required: 0    Type: n/a
<lower>
Description: An attribute specifying the lower joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 0    Type: double    Default: -1e+16
<upper>
Description: An attribute specifying the upper joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 0    Type: double    Default: 1e+16
<effort>
Description: An attribute for enforcing the maximum joint effort applied by Joint::SetForce. Limit is not enforced if value is negative.
Required: 0    Type: double    Default: -1
<velocity>
Description: (not implemented) An attribute for enforcing the maximum joint velocity.
Required: 0    Type: double    Default: -1
<stiffness>
Description: Joint stop stiffness. Supported physics engines: SimBody.
Required: 0    Type: double    Default: 1e+08
<dissipation>
Description: Joint stop dissipation. Supported physics engines: SimBody.
Required: 0    Type: double    Default: 1
<physics>
Description: Parameters that are specific to a certain physics engine.
Required: 0    Type: n/a
<simbody>
Description: Simbody specific parameters
Required: 0    Type: n/a
<must_be_loop_joint>
Description: Force cut in the multibody graph at this joint.
Required: 0    Type: bool    Default: 0
<ode>
Description: ODE specific parameters
Required: 0    Type: n/a
<provide_feedback>
Description: (DEPRECATION WARNING: In SDF 1.5 this tag will be replaced by the same tag directly under the physics-block. For now, this tag overrides the one outside of ode-block, but in SDF 1.5 this tag will be removed completely.) If provide feedback is set to true, ODE will compute the constraint forces at this joint.
Required: 0    Type: bool    Default: 0
<cfm_damping>
Description: If cfm damping is set to true, ODE will use CFM to simulate damping, allows for infinite damping, and one additional constraint row (previously used for joint limit) is always active.
Required: 0    Type: bool    Default: 0
<implicit_spring_damper>
Description: If implicit_spring_damper is set to true, ODE will use CFM, ERP to simulate stiffness and damping, allows for infinite damping, and one additional constraint row (previously used for joint limit) is always active. This replaces cfm_damping parameter in sdf 1.4.
Required: 0    Type: bool    Default: 0
<fudge_factor>
Description: Scale the excess for in a joint motor at joint limits. Should be between zero and one.
Required: 0    Type: double    Default: 0
<cfm>
Description: Constraint force mixing for constrained directions
Required: 0    Type: double    Default: 0
<erp>
Description: Error reduction parameter for constrained directions
Required: 0    Type: double    Default: 0.2
<bounce>
Description: Bounciness of the limits
Required: 0    Type: double    Default: 0
<max_force>
Description: Maximum force or torque used to reach the desired velocity.
Required: 0    Type: double    Default: 0
<velocity>
Description: The desired velocity of the joint. Should only be set if you want the joint to move on load.
Required: 0    Type: double    Default: 0
<limit>
Description: none
Required: 0    Type: n/a
<cfm>
Description: Constraint force mixing parameter used by the joint stop
Required: 1    Type: double    Default: 0
<erp>
Description: Error reduction parameter used by the joint stop
Required: 1    Type: double    Default: 0.2
<suspension>
Description: none
Required: 0    Type: n/a
<cfm>
Description: Suspension constraint force mixing parameter
Required: 1    Type: double    Default: 0
<erp>
Description: Suspension error reduction parameter
Required: 1    Type: double    Default: 0.2
<provide_feedback>
Description: If provide feedback is set to true, physics engine will compute the constraint forces at this joint. For now, provide_feedback under ode block will override this tag and given user warning about the migration. provide_feedback under ode is scheduled to be removed in SDF 1.5.
Required: 0    Type: bool    Default: 0
<sensor>
Description: The sensor tag describes the type and properties of a sensor.
Required: 0    Type: n/a
Attributes
name:
A unique name for the sensor. This name must not match another model in the model.
Type: string   Default: __default__
type:
The type name of the sensor. By default, SDF supports types camera, depth, multicamera, contact, gps, imu, ir and ray.
Type: string   Default: __default__

<always_on>
Description: If true the sensor will always be updated according to the update rate.
Required: 0    Type: bool    Default: 0
<update_rate>
Description: The frequency at which the sensor data is generated. If left unspecified, the sensor will generate data every cycle.
Required: 0    Type: double    Default: 0
<visualize>
Description: If true, the sensor is visualized in the GUI
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the sensor, relative to the parent link reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<topic>
Description: Name of the topic on which data is published. This is necessary for visualization
Required: 0    Type: string    Default: __default__
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<camera>
Description: These elements are specific to camera sensors.
Required: 0    Type: n/a
Attributes
name:
An optional name for the camera.
Type: string   Default: __default__

<pose>
Description: A position and orientation in the parent coordinate frame for the camera.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<horizontal_fov>
Description: Horizontal field of view
Required: 1    Type: double    Default: 1.047
<image>
Description: The image size in pixels and format.
Required: 1    Type: n/a
<width>
Description: Width in pixels
Required: 1    Type: int    Default: 320
<height>
Description: Height in pixels
Required: 1    Type: int    Default: 240
<format>
Description: (L8|R8G8B8|B8G8R8|BAYER_RGGB8|BAYER_BGGR8|BAYER_GBRG8|BAYER_GRBG8)
Required: 0    Type: string    Default: R8G8B8
<clip>
Description: The near and far clip planes. Objects closer or farther than these planes are not rendered.
Required: 1    Type: n/a
<near>
Description: Near clipping plane
Required: 1    Type: double    Default: 0.1
<far>
Description: Far clipping plane
Required: 1    Type: double    Default: 100
<save>
Description: Enable or disable saving of camera frames.
Required: 0    Type: n/a
Attributes
enabled:
True = saving enabled
Type: bool   Default: 0

<path>
Description: The path name which will hold the frame data. If path name is relative, then directory is relative to current working directory.
Required: 1    Type: string    Default: __default__
<depth_camera>
Description: Depth camera parameters
Required: 0    Type: n/a
<output>
Description: Type of output
Required: 1    Type: string    Default: depths
<noise>
Description: The properties of the noise model that should be applied to generated images
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw additive noise values independently for each pixel from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<contact>
Description: These elements are specific to the contact sensor.
Required: 0    Type: n/a
<collision>
Description: name of the collision element within a link that acts as the contact sensor.
Required: 1    Type: string    Default: __default__
<topic>
Description: Topic on which contact data is published.
Required: 1    Type: string    Default: __default_topic__
<gps>
Description: These elements are specific to the GPS sensor.
Required: 0    Type: n/a
<position_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<velocity_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<imu>
Description: These elements are specific to the IMU sensor.
Required: 0    Type: n/a
<topic>
Description: Topic on which data is published.
Required: 0    Type: string    Default: __default_topic__
<noise>
Description: The properties of the noise model that should be applied to generated data
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<rate>
Description: Noise parameters for angular rates.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<accel>
Description: Noise parameters for linear accelerations.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<ray>
Description: These elements are specific to the ray (laser) sensor.
Required: 0    Type: n/a
<scan>
Description: none
Required: 1    Type: n/a
<horizontal>
Description: none
Required: 1    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 640
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 1    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<vertical>
Description: none
Required: 0    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 1
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 0    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<range>
Description: specifies range properties of each simulated ray
Required: 1    Type: n/a
<min>
Description: The minimum distance for each ray.
Required: 1    Type: double    Default: 0
<max>
Description: The maximum distance for each ray.
Required: 1    Type: double    Default: 0
<resolution>
Description: Linear resolution of each ray.
Required: 0    Type: double    Default: 0
<noise>
Description: The properties of the noise model that should be applied to generated scans
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<rfidtag>
Description: none
Required: 0    Type: n/a
<rfid>
Description: none
Required: 0    Type: n/a
<sonar>
Description: These elements are specific to the sonar sensor.
Required: 0    Type: n/a
<min>
Description: Minimum range
Required: 1    Type: double    Default: 0
<max>
Description: Max range
Required: 1    Type: double    Default: 1
<radius>
Description: Radius of the sonar cone at max range.
Required: 1    Type: double    Default: 0.5
<transceiver>
Description: These elements are specific to a wireless transceiver.
Required: 0    Type: n/a
<essid>
Description: Service set identifier (network name)
Required: 0    Type: string    Default: wireless
<frequency>
Description: Specifies the frequency of transmission in MHz
Required: 0    Type: double    Default: 2442
<min_frequency>
Description: Only a frequency range is filtered. Here we set the lower bound (MHz).
Required: 0    Type: double    Default: 2412
<max_frequency>
Description: Only a frequency range is filtered. Here we set the upper bound (MHz).
Required: 0    Type: double    Default: 2484
<gain>
Description: Specifies the antenna gain in dBi
Required: 1    Type: double    Default: 2.5
<power>
Description: Specifies the transmission power in dBm
Required: 1    Type: double    Default: 14.5
<sensitivity>
Description: Mininum received signal power in dBm
Required: 0    Type: double    Default: -90
<force_torque>
Description: These elements are specific to the force torque sensor.
Required: 0    Type: n/a
<frame>
Description: Frame in which to report the wrench values.
Required: 0    Type: string    Default: parent
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<joint>
Description: A joint connections two links with kinematic and dynamic properties.
Required: *    Type: n/a
Attributes
name:
A unique name for the joint within the scope of the model.
Type: string   Default: __default__
type:
The type of joint, which must be one of the following: (revolute) a hinge joint that rotates on a single axis with either a fixed or continuous range of motion, (gearbox) geared revolute joints, (revolute2) same as two revolute joints connected in series, (prismatic) a sliding joint that slides along an axis with a limited range specified by upper and lower limits, (ball) a ball and socket joint, (universal), like a ball joint, but constrains one degree of freedom, (piston) similar to a Slider joint except that rotation around the translation axis is possible.
Type: string   Default: __default__

<parent>
Description: Name of the parent link
Required: 1    Type: string    Default: __default__
<child>
Description: Name of the child link
Required: 1    Type: string    Default: __default__
<pose>
Description: Pose offset from child link frame to joint frame (expressed in child link frame).
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<gearbox_ratio>
Description: Parameter for gearbox joints. Given theta_1 and theta_2 defined in description for gearbox_reference_body, theta_2 = -gearbox_ratio * theta_1.
Required: 0    Type: double    Default: 1
<gearbox_reference_body>
Description: Parameter for gearbox joints. Gearbox ratio is enforced over two joint angles. First joint angle (theta_1) is the angle from the gearbox_reference_body to the parent link in the direction of the axis element and the second joint angle (theta_2) is the angle from the gearbox_reference_body to the child link in the direction of the axis2 element.
Required: 0    Type: string    Default: __default__
<thread_pitch>
Description: Parameter for screw joints.
Required: 0    Type: double    Default: 1
<axis>
Description: Parameters related to the axis of rotation for revolute joints, the axis of translation for prismatic joints.
Required: 1    Type: n/a
<xyz>
Description: Represents the x,y,z components of the axis unit vector. The axis is expressed in the joint frame unless the use_parent_model_frame flag is set to true. The vector should be normalized.
Required: 1    Type: vector3    Default: 0 0 1
<use_parent_model_frame>
Description: Flag to interpret the axis xyz element in the parent model frame instead of joint frame. Provided for Gazebo compatibility (see https://bitbucket.org/osrf/gazebo/issue/494 ).
Required: 1    Type: bool    Default: 0
<dynamics>
Description: An element specifying physical properties of the joint. These values are used to specify modeling properties of the joint, particularly useful for simulation.
Required: 0    Type: n/a
<damping>
Description: The physical velocity dependent viscous damping coefficient of the joint.
Required: 0    Type: double    Default: 0
<friction>
Description: The physical static friction value of the joint.
Required: 0    Type: double    Default: 0
<limit>
Description: specifies the limits of this joint
Required: 1    Type: n/a
<lower>
Description: An attribute specifying the lower joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 1    Type: double    Default: -1e+16
<upper>
Description: An attribute specifying the upper joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 1    Type: double    Default: 1e+16
<effort>
Description: An attribute for enforcing the maximum joint effort applied by Joint::SetForce. Limit is not enforced if value is negative.
Required: 0    Type: double    Default: -1
<velocity>
Description: (not implemented) An attribute for enforcing the maximum joint velocity.
Required: 0    Type: double    Default: -1
<stiffness>
Description: Joint stop stiffness. Support physics engines: SimBody.
Required: 0    Type: double    Default: 1e+08
<dissipation>
Description: Joint stop dissipation.
Required: 0    Type: double    Default: 1
<axis2>
Description: Parameters related to the second axis of rotation for revolute2 joints and universal joints.
Required: 0    Type: n/a
<xyz>
Description: Represents the x,y,z components of the axis unit vector. The axis is expressed in the joint frame unless the use_parent_model_frame flag is set to true. The vector should be normalized.
Required: 1    Type: vector3    Default: 0 0 1
<use_parent_model_frame>
Description: Flag to interpret the axis xyz element in the parent model frame instead of joint frame. Provided for Gazebo compatibility (see https://bitbucket.org/osrf/gazebo/issue/494 ).
Required: 1    Type: bool    Default: 0
<dynamics>
Description: An element specifying physical properties of the joint. These values are used to specify modeling properties of the joint, particularly useful for simulation.
Required: 0    Type: n/a
<damping>
Description: The physical velocity dependent viscous damping coefficient of the joint. EXPERIMENTAL: if damping coefficient is negative and implicit_spring_damper is true, adaptive damping is used.
Required: 0    Type: double    Default: 0
<friction>
Description: The physical static friction value of the joint.
Required: 0    Type: double    Default: 0
<limit>
Description: none
Required: 0    Type: n/a
<lower>
Description: An attribute specifying the lower joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 0    Type: double    Default: -1e+16
<upper>
Description: An attribute specifying the upper joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 0    Type: double    Default: 1e+16
<effort>
Description: An attribute for enforcing the maximum joint effort applied by Joint::SetForce. Limit is not enforced if value is negative.
Required: 0    Type: double    Default: -1
<velocity>
Description: (not implemented) An attribute for enforcing the maximum joint velocity.
Required: 0    Type: double    Default: -1
<stiffness>
Description: Joint stop stiffness. Supported physics engines: SimBody.
Required: 0    Type: double    Default: 1e+08
<dissipation>
Description: Joint stop dissipation. Supported physics engines: SimBody.
Required: 0    Type: double    Default: 1
<physics>
Description: Parameters that are specific to a certain physics engine.
Required: 0    Type: n/a
<simbody>
Description: Simbody specific parameters
Required: 0    Type: n/a
<must_be_loop_joint>
Description: Force cut in the multibody graph at this joint.
Required: 0    Type: bool    Default: 0
<ode>
Description: ODE specific parameters
Required: 0    Type: n/a
<provide_feedback>
Description: (DEPRECATION WARNING: In SDF 1.5 this tag will be replaced by the same tag directly under the physics-block. For now, this tag overrides the one outside of ode-block, but in SDF 1.5 this tag will be removed completely.) If provide feedback is set to true, ODE will compute the constraint forces at this joint.
Required: 0    Type: bool    Default: 0
<cfm_damping>
Description: If cfm damping is set to true, ODE will use CFM to simulate damping, allows for infinite damping, and one additional constraint row (previously used for joint limit) is always active.
Required: 0    Type: bool    Default: 0
<implicit_spring_damper>
Description: If implicit_spring_damper is set to true, ODE will use CFM, ERP to simulate stiffness and damping, allows for infinite damping, and one additional constraint row (previously used for joint limit) is always active. This replaces cfm_damping parameter in sdf 1.4.
Required: 0    Type: bool    Default: 0
<fudge_factor>
Description: Scale the excess for in a joint motor at joint limits. Should be between zero and one.
Required: 0    Type: double    Default: 0
<cfm>
Description: Constraint force mixing for constrained directions
Required: 0    Type: double    Default: 0
<erp>
Description: Error reduction parameter for constrained directions
Required: 0    Type: double    Default: 0.2
<bounce>
Description: Bounciness of the limits
Required: 0    Type: double    Default: 0
<max_force>
Description: Maximum force or torque used to reach the desired velocity.
Required: 0    Type: double    Default: 0
<velocity>
Description: The desired velocity of the joint. Should only be set if you want the joint to move on load.
Required: 0    Type: double    Default: 0
<limit>
Description: none
Required: 0    Type: n/a
<cfm>
Description: Constraint force mixing parameter used by the joint stop
Required: 1    Type: double    Default: 0
<erp>
Description: Error reduction parameter used by the joint stop
Required: 1    Type: double    Default: 0.2
<suspension>
Description: none
Required: 0    Type: n/a
<cfm>
Description: Suspension constraint force mixing parameter
Required: 1    Type: double    Default: 0
<erp>
Description: Suspension error reduction parameter
Required: 1    Type: double    Default: 0.2
<provide_feedback>
Description: If provide feedback is set to true, physics engine will compute the constraint forces at this joint. For now, provide_feedback under ode block will override this tag and given user warning about the migration. provide_feedback under ode is scheduled to be removed in SDF 1.5.
Required: 0    Type: bool    Default: 0
<sensor>
Description: The sensor tag describes the type and properties of a sensor.
Required: 0    Type: n/a
Attributes
name:
A unique name for the sensor. This name must not match another model in the model.
Type: string   Default: __default__
type:
The type name of the sensor. By default, SDF supports types camera, depth, multicamera, contact, gps, imu, ir and ray.
Type: string   Default: __default__

<always_on>
Description: If true the sensor will always be updated according to the update rate.
Required: 0    Type: bool    Default: 0
<update_rate>
Description: The frequency at which the sensor data is generated. If left unspecified, the sensor will generate data every cycle.
Required: 0    Type: double    Default: 0
<visualize>
Description: If true, the sensor is visualized in the GUI
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the sensor, relative to the parent link reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<topic>
Description: Name of the topic on which data is published. This is necessary for visualization
Required: 0    Type: string    Default: __default__
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<camera>
Description: These elements are specific to camera sensors.
Required: 0    Type: n/a
Attributes
name:
An optional name for the camera.
Type: string   Default: __default__

<pose>
Description: A position and orientation in the parent coordinate frame for the camera.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<horizontal_fov>
Description: Horizontal field of view
Required: 1    Type: double    Default: 1.047
<image>
Description: The image size in pixels and format.
Required: 1    Type: n/a
<width>
Description: Width in pixels
Required: 1    Type: int    Default: 320
<height>
Description: Height in pixels
Required: 1    Type: int    Default: 240
<format>
Description: (L8|R8G8B8|B8G8R8|BAYER_RGGB8|BAYER_BGGR8|BAYER_GBRG8|BAYER_GRBG8)
Required: 0    Type: string    Default: R8G8B8
<clip>
Description: The near and far clip planes. Objects closer or farther than these planes are not rendered.
Required: 1    Type: n/a
<near>
Description: Near clipping plane
Required: 1    Type: double    Default: 0.1
<far>
Description: Far clipping plane
Required: 1    Type: double    Default: 100
<save>
Description: Enable or disable saving of camera frames.
Required: 0    Type: n/a
Attributes
enabled:
True = saving enabled
Type: bool   Default: 0

<path>
Description: The path name which will hold the frame data. If path name is relative, then directory is relative to current working directory.
Required: 1    Type: string    Default: __default__
<depth_camera>
Description: Depth camera parameters
Required: 0    Type: n/a
<output>
Description: Type of output
Required: 1    Type: string    Default: depths
<noise>
Description: The properties of the noise model that should be applied to generated images
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw additive noise values independently for each pixel from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<contact>
Description: These elements are specific to the contact sensor.
Required: 0    Type: n/a
<collision>
Description: name of the collision element within a link that acts as the contact sensor.
Required: 1    Type: string    Default: __default__
<topic>
Description: Topic on which contact data is published.
Required: 1    Type: string    Default: __default_topic__
<gps>
Description: These elements are specific to the GPS sensor.
Required: 0    Type: n/a
<position_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<velocity_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<imu>
Description: These elements are specific to the IMU sensor.
Required: 0    Type: n/a
<topic>
Description: Topic on which data is published.
Required: 0    Type: string    Default: __default_topic__
<noise>
Description: The properties of the noise model that should be applied to generated data
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<rate>
Description: Noise parameters for angular rates.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<accel>
Description: Noise parameters for linear accelerations.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<ray>
Description: These elements are specific to the ray (laser) sensor.
Required: 0    Type: n/a
<scan>
Description: none
Required: 1    Type: n/a
<horizontal>
Description: none
Required: 1    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 640
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 1    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<vertical>
Description: none
Required: 0    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 1
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 0    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<range>
Description: specifies range properties of each simulated ray
Required: 1    Type: n/a
<min>
Description: The minimum distance for each ray.
Required: 1    Type: double    Default: 0
<max>
Description: The maximum distance for each ray.
Required: 1    Type: double    Default: 0
<resolution>
Description: Linear resolution of each ray.
Required: 0    Type: double    Default: 0
<noise>
Description: The properties of the noise model that should be applied to generated scans
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<rfidtag>
Description: none
Required: 0    Type: n/a
<rfid>
Description: none
Required: 0    Type: n/a
<sonar>
Description: These elements are specific to the sonar sensor.
Required: 0    Type: n/a
<min>
Description: Minimum range
Required: 1    Type: double    Default: 0
<max>
Description: Max range
Required: 1    Type: double    Default: 1
<radius>
Description: Radius of the sonar cone at max range.
Required: 1    Type: double    Default: 0.5
<transceiver>
Description: These elements are specific to a wireless transceiver.
Required: 0    Type: n/a
<essid>
Description: Service set identifier (network name)
Required: 0    Type: string    Default: wireless
<frequency>
Description: Specifies the frequency of transmission in MHz
Required: 0    Type: double    Default: 2442
<min_frequency>
Description: Only a frequency range is filtered. Here we set the lower bound (MHz).
Required: 0    Type: double    Default: 2412
<max_frequency>
Description: Only a frequency range is filtered. Here we set the upper bound (MHz).
Required: 0    Type: double    Default: 2484
<gain>
Description: Specifies the antenna gain in dBi
Required: 1    Type: double    Default: 2.5
<power>
Description: Specifies the transmission power in dBm
Required: 1    Type: double    Default: 14.5
<sensitivity>
Description: Mininum received signal power in dBm
Required: 0    Type: double    Default: -90
<force_torque>
Description: These elements are specific to the force torque sensor.
Required: 0    Type: n/a
<frame>
Description: Frame in which to report the wrench values.
Required: 0    Type: string    Default: parent
<road>
Description: none
Required: *    Type: n/a
Attributes
name:
Name of the road
Type: string   Default: __default__

<width>
Description: Width of the road
Required: 1    Type: double    Default: 1
<point>
Description: A series of points define the path of the road.
Required: +    Type: vector3    Default: 0 0 0
<spherical_coordinates>
Description: none
Required: 0    Type: n/a
<surface_model>
Description: Name of planetary surface model, used to determine the surface altitude at a given latitude and longitude. The default is an ellipsoid model of the earth based on the WGS-84 standard. It is used in Gazebo's GPS sensor implementation.
Required: 1    Type: string    Default: EARTH_WGS84
<latitude_deg>
Description: Geodetic latitude at origin of gazebo reference frame, specified in units of degrees.
Required: 1    Type: double    Default: 0
<longitude_deg>
Description: Longitude at origin of gazebo reference frame, specified in units of degrees.
Required: 1    Type: double    Default: 0
<elevation>
Description: Elevation of origin of gazebo reference frame, specified in meters.
Required: 1    Type: double    Default: 0
<heading_deg>
Description: Heading offset of gazebo reference frame, measured as angle between East and gazebo x axis, or equivalently, the angle between North and gazebo y axis. The angle is specified in degrees.
Required: 1    Type: double    Default: 0
<state>
Description: none
Required: *    Type: n/a
Attributes
world_name:
Name of the world this state applies to
Type: string   Default: __default__

<sim_time>
Description: Simulation time stamp of the state [seconds nanoseconds]
Required: 0    Type: time    Default: 0 0
<wall_time>
Description: Wall time stamp of the state [seconds nanoseconds]
Required: 0    Type: time    Default: 0 0
<real_time>
Description: Real time stamp of the state [seconds nanoseconds]
Required: 0    Type: time    Default: 0 0
<insertions>
Description: A list of new model names
Required: 0    Type: n/a
<model>
Description: The model element defines a complete robot or any other physical object.
Required: *    Type: n/a
Attributes
name:
A unique name for the model. This name must not match another model in the world.
Type: string   Default: __default__

<static>
Description: If set to true, the model is immovable. Otherwise the model is simulated in the dynamics engine.
Required: 0    Type: bool    Default: 0
<allow_auto_disable>
Description: Allows a model to auto-disable, which is means the physics engine can skip updating the model when the model is at rest. This parameter is only used by models with no joints.
Required: 0    Type: bool    Default: 1
<pose>
Description: A position and orientation in the global coordinate frame for the model. Position(x,y,z) and rotation (roll, pitch yaw) in the global coordinate frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<link>
Description: A physical link with inertia, collision, and visual properties. A link must be a child of a model, and any number of links may exist in a model.
Required: +    Type: n/a
Attributes
name:
A unique name for the link within the scope of the model.
Type: string   Default: __default__

<gravity>
Description: If true, the link is affected by gravity.
Required: 0    Type: bool    Default: 1
<self_collide>
Description: If true, the link can collide with other links in the model.
Required: 0    Type: bool    Default: 0
<kinematic>
Description: If true, the link is kinematic only
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the link reference frame, relative to the model reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<must_be_base_link>
Description: If true, the link will have 6DOF and be a direct child of world.
Required: 0    Type: bool    Default: 0
<velocity_decay>
Description: Exponential damping of the link's velocity.
Required: 1    Type: n/a
<linear>
Description: Linear damping
Required: 1    Type: double    Default: 0
<angular>
Description: Angular damping
Required: 1    Type: double    Default: 0
<inertial>
Description: The inertial properties of the link.
Required: 0    Type: n/a
<mass>
Description: The mass of the link.
Required: 0    Type: double    Default: 1
<pose>
Description: This is the pose of the inertial reference frame, relative to the link reference frame. The origin of the inertial reference frame needs to be at the center of gravity. The axes of the inertial reference frame do not need to be aligned with the principal axes of the inertia.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<inertia>
Description: The 3x3 rotational inertia matrix. Because the rotational inertia matrix is symmetric, only 6 above-diagonal elements of this matrix are specified here, using the attributes ixx, ixy, ixz, iyy, iyz, izz.
Required: 0    Type: n/a
<ixx>
Description: none
Required: 1    Type: double    Default: 1
<ixy>
Description: none
Required: 1    Type: double    Default: 0
<ixz>
Description: none
Required: 1    Type: double    Default: 0
<iyy>
Description: none
Required: 1    Type: double    Default: 1
<iyz>
Description: none
Required: 1    Type: double    Default: 0
<izz>
Description: none
Required: 1    Type: double    Default: 1
<collision>
Description: The collision properties of a link. Note that this can be different from the visual properties of a link, for example, simpler collision models are often used to reduce computation time.
Required: *    Type: n/a
Attributes
name:
Unique name for the collision element within the scope of the parent link.
Type: string   Default: __default__

<laser_retro>
Description: intensity value returned by laser sensor.
Required: 0    Type: double    Default: 0
<max_contacts>
Description: Maximum number of contacts allowed between two entities. This value overrides the max_contacts element defined in physics.
Required: 0    Type: int    Default: 10
<pose>
Description: The reference frame of the collision element, relative to the reference frame of the link.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<geometry>
Description: The shape of the visual or collision object.
Required: 1    Type: n/a
<empty>
Description: You can use the empty tag to make empty geometries.
Required: 0    Type: n/a
<box>
Description: Box shape
Required: 0    Type: n/a
<size>
Description: The three side lengths of the box. The origin of the box is in its geometric center (inside the center of the box).
Required: 1    Type: vector3    Default: 1 1 1
<cylinder>
Description: Cylinder shape
Required: 0    Type: n/a
<radius>
Description: Radius of the cylinder
Required: 1    Type: double    Default: 1
<length>
Description: Length of the cylinder
Required: 1    Type: double    Default: 1
<heightmap>
Description: A heightmap based on a 2d grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI to a grayscale image file
Required: 1    Type: string    Default: __default__
<size>
Description: The size of the heightmap in world units. When loading an image: "size" is used if present, otherwise defaults to 1x1x1. When loading a DEM: "size" is used if present, otherwise defaults to true size of DEM.
Required: 0    Type: vector3    Default: 1 1 1
<pos>
Description: A position offset.
Required: 0    Type: vector3    Default: 0 0 0
<texture>
Description: The heightmap can contain multiple textures. The order of the texture matters. The first texture will appear at the lowest height, and the last texture at the highest hieght. Use blend to control the hieight thresholds and fade between textures.
Required: *    Type: n/a
<size>
Description: Size of the applied texture in meters.
Required: 1    Type: double    Default: 10
<diffuse>
Description: Diffuse texture image filename
Required: 1    Type: string    Default: __default__
<normal>
Description: Normalmap texture image filename
Required: 1    Type: string    Default: __default__
<blend>
Description: The blend tag controls how two adjacent textures are mixed. The number of blend elements should equal one less than the number of textures.
Required: *    Type: n/a
<min_height>
Description: Min height of a blend layer
Required: 1    Type: double    Default: 0
<fade_dist>
Description: Distance over which the blend occurs
Required: 1    Type: double    Default: 0
<use_terrain_paging>
Description: Set if the rendering engine will use terrain paging
Required: 0    Type: bool    Default: 0
<image>
Description: Extrude a set of boxes from a grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI of the grayscale image file
Required: 1    Type: string    Default: __default__
<scale>
Description: Scaling factor applied to the image
Required: 1    Type: double    Default: 1
<threshold>
Description: Grayscale threshold
Required: 1    Type: int    Default: 200
<height>
Description: Height of the extruded boxes
Required: 1    Type: double    Default: 1
<granularity>
Description: The amount of error in the model
Required: 1    Type: int    Default: 1
<mesh>
Description: Mesh shape
Required: 0    Type: n/a
<uri>
Description: Mesh uri
Required: 1    Type: string    Default: __default__
<submesh>
Description: Use a named submesh. The submesh must exist in the mesh specified by the uri
Required: 0    Type: n/a
<name>
Description: Name of the submesh within the parent mesh
Required: 1    Type: string    Default: __default__
<center>
Description: Set to true to center the vertices of the submesh at 0,0,0. This will effectively remove any transformations on the submesh before the poses from parent links and models are applied.
Required: 0    Type: bool    Default: 0
<scale>
Description: Scaling factor applied to the mesh
Required: 0    Type: vector3    Default: 1 1 1
<plane>
Description: Plane shape
Required: 0    Type: n/a
<normal>
Description: Normal direction for the plane
Required: 1    Type: vector3    Default: 0 0 1
<size>
Description: Length of each side of the plane
Required: 1    Type: vector2d    Default: 1 1
<sphere>
Description: Sphere shape
Required: 0    Type: n/a
<radius>
Description: radius of the sphere
Required: 1    Type: double    Default: 1
<surface>
Description: The surface parameters
Required: 0    Type: n/a
<bounce>
Description: none
Required: 0    Type: n/a
<restitution_coefficient>
Description: Bounciness coefficient of restitution, from [0...1], where 0=no bounciness.
Required: 0    Type: double    Default: 0
<threshold>
Description: Bounce capture velocity, below which effective coefficient of restitution is 0.
Required: 0    Type: double    Default: 100000
<friction>
Description: none
Required: 0    Type: n/a
<ode>
Description: ODE friction parameters
Required: 0    Type: n/a
<mu>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<mu2>
Description: Second coefficient of friction in the range of [0..1]
Required: 0    Type: double    Default: 1
<fdir1>
Description: 3-tuple specifying direction of mu1 in the collision local reference frame.
Required: 0    Type: vector3    Default: 0 0 0
<slip1>
Description: Force dependent slip direction 1 in collision local frame, between the range of [0..1].
Required: 0    Type: double    Default: 0
<slip2>
Description: Force dependent slip direction 2 in collision local frame, between the range of [0..1].
Required: 0    Type: double    Default: 0
<bullet>
Description: none
Required: 0    Type: n/a
<friction>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<friction2>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<fdir1>
Description: 3-tuple specifying direction of mu1 in the collision local reference frame.
Required: 0    Type: vector3    Default: 0 0 0
<rolling_friction>
Description: coefficient of friction in the range of [0..1]
Required: 0    Type: double    Default: 1
<contact>
Description: none
Required: 0    Type: n/a
<collide_without_contact>
Description: Flag to disable contact force generation, while still allowing collision checks and contact visualization to occur.
Required: 0    Type: bool    Default: 0
<collide_without_contact_bitmask>
Description: Bitmask for collision filtering when collide_without_contact is on
Required: 0    Type: unsigned int    Default: 1
<ode>
Description: ODE contact parameters
Required: 0    Type: n/a
<soft_cfm>
Description: Soft constraint force mixing.
Required: 0    Type: double    Default: 0
<soft_erp>
Description: Soft error reduction parameter
Required: 0    Type: double    Default: 0.2
<kp>
Description: dynamically "stiffness"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1e+12
<kd>
Description: dynamically "damping"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1
<max_vel>
Description: maximum contact correction velocity truncation term.
Required: 0    Type: double    Default: 0.01
<min_depth>
Description: minimum allowable depth before contact correction impulse is applied
Required: 0    Type: double    Default: 0
<bullet>
Description: Bullet contact parameters
Required: 0    Type: n/a
<soft_cfm>
Description: Soft constraint force mixing.
Required: 0    Type: double    Default: 0
<soft_erp>
Description: Soft error reduction parameter
Required: 0    Type: double    Default: 0.2
<kp>
Description: dynamically "stiffness"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1e+12
<kd>
Description: dynamically "damping"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1
<split_impulse>
Description: Similar to ODE's max_vel implementation. See http://bulletphysics.org/mediawiki-1.5.8/index.php/BtContactSolverInfo#Split_Impulse for more information.
Required: 1    Type: bool    Default: 1
<split_impulse_penetration_threshold>
Description: Similar to ODE's max_vel implementation. See http://bulletphysics.org/mediawiki-1.5.8/index.php/BtContactSolverInfo#Split_Impulse for more information.
Required: 1    Type: double    Default: -0.01
<soft_contact>
Description: none
Required: 0    Type: n/a
<dart>
Description: soft contact pamameters based on paper: http://www.cc.gatech.edu/graphics/projects/Sumit/homepage/papers/sigasia11/jain_softcontacts_siga11.pdf
Required: 0    Type: n/a
<bone_attachment>
Description: This is variable k_v in the soft contacts paper. Its unit is N/m.
Required: 1    Type: double    Default: 100
<stiffness>
Description: This is variable k_e in the soft contacts paper. Its unit is N/m.
Required: 1    Type: double    Default: 100
<damping>
Description: Viscous damping of point velocity in body frame. Its unit is N/m/s.
Required: 1    Type: double    Default: 10
<flesh_mass_fraction>
Description: Fraction of mass to be distributed among deformable nodes.
Required: 1    Type: double    Default: 0.05
<visual>
Description: The visual properties of the link. This element specifies the shape of the object (box, cylinder, etc.) for visualization purposes.
Required: *    Type: n/a
Attributes
name:
Unique name for the visual element within the scope of the parent link.
Type: string   Default: __default__

<cast_shadows>
Description: If true the visual will cast shadows.
Required: 0    Type: bool    Default: 1
<laser_retro>
Description: will be implemented in the future release.
Required: 0    Type: double    Default: 0
<transparency>
Description: The amount of transparency( 0=opaque, 1 = fully transparent)
Required: 0    Type: double    Default: 0
<pose>
Description: The reference frame of the visual element, relative to the reference frame of the link.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<material>
Description: The material of the visual element.
Required: 0    Type: n/a
<script>
Description: Name of material from an installed script file. This will override the color element if the script exists.
Required: 0    Type: n/a
<uri>
Description: URI of the material script file
Required: +    Type: string    Default: __default__
<name>
Description: Name of the script within the script file
Required: 1    Type: string    Default: __default__
<shader>
Description: none
Required: 0    Type: n/a
Attributes
type:
vertex, pixel, normal_map_objectspace, normal_map_tangentspace
Type: string   Default: pixel

<normal_map>
Description: filename of the normal map
Required: 0    Type: string    Default: __default__
<lighting>
Description: If false, dynamic lighting will be disabled
Required: 0    Type: bool    Default: 1
<ambient>
Description: The ambient color of a material specified by set of four numbers representing red/green/blue, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<diffuse>
Description: The diffuse color of a material specified by set of four numbers representing red/green/blue/alpha, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<specular>
Description: The specular color of a material specified by set of four numbers representing red/green/blue/alpha, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<emissive>
Description: The emissive color of a material specified by set of four numbers representing red/green/blue, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<geometry>
Description: The shape of the visual or collision object.
Required: 1    Type: n/a
<empty>
Description: You can use the empty tag to make empty geometries.
Required: 0    Type: n/a
<box>
Description: Box shape
Required: 0    Type: n/a
<size>
Description: The three side lengths of the box. The origin of the box is in its geometric center (inside the center of the box).
Required: 1    Type: vector3    Default: 1 1 1
<cylinder>
Description: Cylinder shape
Required: 0    Type: n/a
<radius>
Description: Radius of the cylinder
Required: 1    Type: double    Default: 1
<length>
Description: Length of the cylinder
Required: 1    Type: double    Default: 1
<heightmap>
Description: A heightmap based on a 2d grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI to a grayscale image file
Required: 1    Type: string    Default: __default__
<size>
Description: The size of the heightmap in world units. When loading an image: "size" is used if present, otherwise defaults to 1x1x1. When loading a DEM: "size" is used if present, otherwise defaults to true size of DEM.
Required: 0    Type: vector3    Default: 1 1 1
<pos>
Description: A position offset.
Required: 0    Type: vector3    Default: 0 0 0
<texture>
Description: The heightmap can contain multiple textures. The order of the texture matters. The first texture will appear at the lowest height, and the last texture at the highest hieght. Use blend to control the hieight thresholds and fade between textures.
Required: *    Type: n/a
<size>
Description: Size of the applied texture in meters.
Required: 1    Type: double    Default: 10
<diffuse>
Description: Diffuse texture image filename
Required: 1    Type: string    Default: __default__
<normal>
Description: Normalmap texture image filename
Required: 1    Type: string    Default: __default__
<blend>
Description: The blend tag controls how two adjacent textures are mixed. The number of blend elements should equal one less than the number of textures.
Required: *    Type: n/a
<min_height>
Description: Min height of a blend layer
Required: 1    Type: double    Default: 0
<fade_dist>
Description: Distance over which the blend occurs
Required: 1    Type: double    Default: 0
<use_terrain_paging>
Description: Set if the rendering engine will use terrain paging
Required: 0    Type: bool    Default: 0
<image>
Description: Extrude a set of boxes from a grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI of the grayscale image file
Required: 1    Type: string    Default: __default__
<scale>
Description: Scaling factor applied to the image
Required: 1    Type: double    Default: 1
<threshold>
Description: Grayscale threshold
Required: 1    Type: int    Default: 200
<height>
Description: Height of the extruded boxes
Required: 1    Type: double    Default: 1
<granularity>
Description: The amount of error in the model
Required: 1    Type: int    Default: 1
<mesh>
Description: Mesh shape
Required: 0    Type: n/a
<uri>
Description: Mesh uri
Required: 1    Type: string    Default: __default__
<submesh>
Description: Use a named submesh. The submesh must exist in the mesh specified by the uri
Required: 0    Type: n/a
<name>
Description: Name of the submesh within the parent mesh
Required: 1    Type: string    Default: __default__
<center>
Description: Set to true to center the vertices of the submesh at 0,0,0. This will effectively remove any transformations on the submesh before the poses from parent links and models are applied.
Required: 0    Type: bool    Default: 0
<scale>
Description: Scaling factor applied to the mesh
Required: 0    Type: vector3    Default: 1 1 1
<plane>
Description: Plane shape
Required: 0    Type: n/a
<normal>
Description: Normal direction for the plane
Required: 1    Type: vector3    Default: 0 0 1
<size>
Description: Length of each side of the plane
Required: 1    Type: vector2d    Default: 1 1
<sphere>
Description: Sphere shape
Required: 0    Type: n/a
<radius>
Description: radius of the sphere
Required: 1    Type: double    Default: 1
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<sensor>
Description: The sensor tag describes the type and properties of a sensor.
Required: 0    Type: n/a
Attributes
name:
A unique name for the sensor. This name must not match another model in the model.
Type: string   Default: __default__
type:
The type name of the sensor. By default, SDF supports types camera, depth, multicamera, contact, gps, imu, ir and ray.
Type: string   Default: __default__

<always_on>
Description: If true the sensor will always be updated according to the update rate.
Required: 0    Type: bool    Default: 0
<update_rate>
Description: The frequency at which the sensor data is generated. If left unspecified, the sensor will generate data every cycle.
Required: 0    Type: double    Default: 0
<visualize>
Description: If true, the sensor is visualized in the GUI
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the sensor, relative to the parent link reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<topic>
Description: Name of the topic on which data is published. This is necessary for visualization
Required: 0    Type: string    Default: __default__
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<camera>
Description: These elements are specific to camera sensors.
Required: 0    Type: n/a
Attributes
name:
An optional name for the camera.
Type: string   Default: __default__

<pose>
Description: A position and orientation in the parent coordinate frame for the camera.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<horizontal_fov>
Description: Horizontal field of view
Required: 1    Type: double    Default: 1.047
<image>
Description: The image size in pixels and format.
Required: 1    Type: n/a
<width>
Description: Width in pixels
Required: 1    Type: int    Default: 320
<height>
Description: Height in pixels
Required: 1    Type: int    Default: 240
<format>
Description: (L8|R8G8B8|B8G8R8|BAYER_RGGB8|BAYER_BGGR8|BAYER_GBRG8|BAYER_GRBG8)
Required: 0    Type: string    Default: R8G8B8
<clip>
Description: The near and far clip planes. Objects closer or farther than these planes are not rendered.
Required: 1    Type: n/a
<near>
Description: Near clipping plane
Required: 1    Type: double    Default: 0.1
<far>
Description: Far clipping plane
Required: 1    Type: double    Default: 100
<save>
Description: Enable or disable saving of camera frames.
Required: 0    Type: n/a
Attributes
enabled:
True = saving enabled
Type: bool   Default: 0

<path>
Description: The path name which will hold the frame data. If path name is relative, then directory is relative to current working directory.
Required: 1    Type: string    Default: __default__
<depth_camera>
Description: Depth camera parameters
Required: 0    Type: n/a
<output>
Description: Type of output
Required: 1    Type: string    Default: depths
<noise>
Description: The properties of the noise model that should be applied to generated images
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw additive noise values independently for each pixel from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<contact>
Description: These elements are specific to the contact sensor.
Required: 0    Type: n/a
<collision>
Description: name of the collision element within a link that acts as the contact sensor.
Required: 1    Type: string    Default: __default__
<topic>
Description: Topic on which contact data is published.
Required: 1    Type: string    Default: __default_topic__
<gps>
Description: These elements are specific to the GPS sensor.
Required: 0    Type: n/a
<position_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<velocity_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<imu>
Description: These elements are specific to the IMU sensor.
Required: 0    Type: n/a
<topic>
Description: Topic on which data is published.
Required: 0    Type: string    Default: __default_topic__
<noise>
Description: The properties of the noise model that should be applied to generated data
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<rate>
Description: Noise parameters for angular rates.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<accel>
Description: Noise parameters for linear accelerations.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<ray>
Description: These elements are specific to the ray (laser) sensor.
Required: 0    Type: n/a
<scan>
Description: none
Required: 1    Type: n/a
<horizontal>
Description: none
Required: 1    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 640
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 1    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<vertical>
Description: none
Required: 0    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 1
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 0    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<range>
Description: specifies range properties of each simulated ray
Required: 1    Type: n/a
<min>
Description: The minimum distance for each ray.
Required: 1    Type: double    Default: 0
<max>
Description: The maximum distance for each ray.
Required: 1    Type: double    Default: 0
<resolution>
Description: Linear resolution of each ray.
Required: 0    Type: double    Default: 0
<noise>
Description: The properties of the noise model that should be applied to generated scans
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<rfidtag>
Description: none
Required: 0    Type: n/a
<rfid>
Description: none
Required: 0    Type: n/a
<sonar>
Description: These elements are specific to the sonar sensor.
Required: 0    Type: n/a
<min>
Description: Minimum range
Required: 1    Type: double    Default: 0
<max>
Description: Max range
Required: 1    Type: double    Default: 1
<radius>
Description: Radius of the sonar cone at max range.
Required: 1    Type: double    Default: 0.5
<transceiver>
Description: These elements are specific to a wireless transceiver.
Required: 0    Type: n/a
<essid>
Description: Service set identifier (network name)
Required: 0    Type: string    Default: wireless
<frequency>
Description: Specifies the frequency of transmission in MHz
Required: 0    Type: double    Default: 2442
<min_frequency>
Description: Only a frequency range is filtered. Here we set the lower bound (MHz).
Required: 0    Type: double    Default: 2412
<max_frequency>
Description: Only a frequency range is filtered. Here we set the upper bound (MHz).
Required: 0    Type: double    Default: 2484
<gain>
Description: Specifies the antenna gain in dBi
Required: 1    Type: double    Default: 2.5
<power>
Description: Specifies the transmission power in dBm
Required: 1    Type: double    Default: 14.5
<sensitivity>
Description: Mininum received signal power in dBm
Required: 0    Type: double    Default: -90
<force_torque>
Description: These elements are specific to the force torque sensor.
Required: 0    Type: n/a
<frame>
Description: Frame in which to report the wrench values.
Required: 0    Type: string    Default: parent
<projector>
Description: none
Required: 0    Type: n/a
Attributes
name:
Name of the projector
Type: string   Default: __default__

<texture>
Description: Texture name
Required: 1    Type: string    Default: __default__
<pose>
Description: Pose of the projector
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<fov>
Description: Field of view
Required: 0    Type: double    Default: 0.785
<near_clip>
Description: Near clip distance
Required: 0    Type: double    Default: 0.1
<far_clip>
Description: far clip distance
Required: 0    Type: double    Default: 10
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<audio_sink>
Description: An audio sink.
Required: *    Type: n/a
<audio_source>
Description: An audio source.
Required: *    Type: n/a
<uri>
Description: URI of the audio media.
Required: 1    Type: string    Default: __default__
<pitch>
Description: Pitch for the audio media, in Hz
Required: 0    Type: double    Default: 1
<gain>
Description: Gain for the audio media, in dB.
Required: 0    Type: double    Default: 1
<contact>
Description: List of collision objects that will trigger audio playback.
Required: 0    Type: n/a
<collision>
Description: Name of child collision element that will trigger audio playback.
Required: +    Type: string    Default: __default__
<loop>
Description: True to make the audio source loop playback.
Required: 0    Type: bool    Default: 0
<pose>
Description: A position and orientation in the parent coordinate frame for the audio source. Position(x,y,z) and rotation (roll, pitch yaw) in the parent coordinate frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<joint>
Description: A joint connections two links with kinematic and dynamic properties.
Required: *    Type: n/a
Attributes
name:
A unique name for the joint within the scope of the model.
Type: string   Default: __default__
type:
The type of joint, which must be one of the following: (revolute) a hinge joint that rotates on a single axis with either a fixed or continuous range of motion, (gearbox) geared revolute joints, (revolute2) same as two revolute joints connected in series, (prismatic) a sliding joint that slides along an axis with a limited range specified by upper and lower limits, (ball) a ball and socket joint, (universal), like a ball joint, but constrains one degree of freedom, (piston) similar to a Slider joint except that rotation around the translation axis is possible.
Type: string   Default: __default__

<parent>
Description: Name of the parent link
Required: 1    Type: string    Default: __default__
<child>
Description: Name of the child link
Required: 1    Type: string    Default: __default__
<pose>
Description: Pose offset from child link frame to joint frame (expressed in child link frame).
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<gearbox_ratio>
Description: Parameter for gearbox joints. Given theta_1 and theta_2 defined in description for gearbox_reference_body, theta_2 = -gearbox_ratio * theta_1.
Required: 0    Type: double    Default: 1
<gearbox_reference_body>
Description: Parameter for gearbox joints. Gearbox ratio is enforced over two joint angles. First joint angle (theta_1) is the angle from the gearbox_reference_body to the parent link in the direction of the axis element and the second joint angle (theta_2) is the angle from the gearbox_reference_body to the child link in the direction of the axis2 element.
Required: 0    Type: string    Default: __default__
<thread_pitch>
Description: Parameter for screw joints.
Required: 0    Type: double    Default: 1
<axis>
Description: Parameters related to the axis of rotation for revolute joints, the axis of translation for prismatic joints.
Required: 1    Type: n/a
<xyz>
Description: Represents the x,y,z components of the axis unit vector. The axis is expressed in the joint frame unless the use_parent_model_frame flag is set to true. The vector should be normalized.
Required: 1    Type: vector3    Default: 0 0 1
<use_parent_model_frame>
Description: Flag to interpret the axis xyz element in the parent model frame instead of joint frame. Provided for Gazebo compatibility (see https://bitbucket.org/osrf/gazebo/issue/494 ).
Required: 1    Type: bool    Default: 0
<dynamics>
Description: An element specifying physical properties of the joint. These values are used to specify modeling properties of the joint, particularly useful for simulation.
Required: 0    Type: n/a
<damping>
Description: The physical velocity dependent viscous damping coefficient of the joint.
Required: 0    Type: double    Default: 0
<friction>
Description: The physical static friction value of the joint.
Required: 0    Type: double    Default: 0
<limit>
Description: specifies the limits of this joint
Required: 1    Type: n/a
<lower>
Description: An attribute specifying the lower joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 1    Type: double    Default: -1e+16
<upper>
Description: An attribute specifying the upper joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 1    Type: double    Default: 1e+16
<effort>
Description: An attribute for enforcing the maximum joint effort applied by Joint::SetForce. Limit is not enforced if value is negative.
Required: 0    Type: double    Default: -1
<velocity>
Description: (not implemented) An attribute for enforcing the maximum joint velocity.
Required: 0    Type: double    Default: -1
<stiffness>
Description: Joint stop stiffness. Support physics engines: SimBody.
Required: 0    Type: double    Default: 1e+08
<dissipation>
Description: Joint stop dissipation.
Required: 0    Type: double    Default: 1
<axis2>
Description: Parameters related to the second axis of rotation for revolute2 joints and universal joints.
Required: 0    Type: n/a
<xyz>
Description: Represents the x,y,z components of the axis unit vector. The axis is expressed in the joint frame unless the use_parent_model_frame flag is set to true. The vector should be normalized.
Required: 1    Type: vector3    Default: 0 0 1
<use_parent_model_frame>
Description: Flag to interpret the axis xyz element in the parent model frame instead of joint frame. Provided for Gazebo compatibility (see https://bitbucket.org/osrf/gazebo/issue/494 ).
Required: 1    Type: bool    Default: 0
<dynamics>
Description: An element specifying physical properties of the joint. These values are used to specify modeling properties of the joint, particularly useful for simulation.
Required: 0    Type: n/a
<damping>
Description: The physical velocity dependent viscous damping coefficient of the joint. EXPERIMENTAL: if damping coefficient is negative and implicit_spring_damper is true, adaptive damping is used.
Required: 0    Type: double    Default: 0
<friction>
Description: The physical static friction value of the joint.
Required: 0    Type: double    Default: 0
<limit>
Description: none
Required: 0    Type: n/a
<lower>
Description: An attribute specifying the lower joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 0    Type: double    Default: -1e+16
<upper>
Description: An attribute specifying the upper joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 0    Type: double    Default: 1e+16
<effort>
Description: An attribute for enforcing the maximum joint effort applied by Joint::SetForce. Limit is not enforced if value is negative.
Required: 0    Type: double    Default: -1
<velocity>
Description: (not implemented) An attribute for enforcing the maximum joint velocity.
Required: 0    Type: double    Default: -1
<stiffness>
Description: Joint stop stiffness. Supported physics engines: SimBody.
Required: 0    Type: double    Default: 1e+08
<dissipation>
Description: Joint stop dissipation. Supported physics engines: SimBody.
Required: 0    Type: double    Default: 1
<physics>
Description: Parameters that are specific to a certain physics engine.
Required: 0    Type: n/a
<simbody>
Description: Simbody specific parameters
Required: 0    Type: n/a
<must_be_loop_joint>
Description: Force cut in the multibody graph at this joint.
Required: 0    Type: bool    Default: 0
<ode>
Description: ODE specific parameters
Required: 0    Type: n/a
<provide_feedback>
Description: (DEPRECATION WARNING: In SDF 1.5 this tag will be replaced by the same tag directly under the physics-block. For now, this tag overrides the one outside of ode-block, but in SDF 1.5 this tag will be removed completely.) If provide feedback is set to true, ODE will compute the constraint forces at this joint.
Required: 0    Type: bool    Default: 0
<cfm_damping>
Description: If cfm damping is set to true, ODE will use CFM to simulate damping, allows for infinite damping, and one additional constraint row (previously used for joint limit) is always active.
Required: 0    Type: bool    Default: 0
<implicit_spring_damper>
Description: If implicit_spring_damper is set to true, ODE will use CFM, ERP to simulate stiffness and damping, allows for infinite damping, and one additional constraint row (previously used for joint limit) is always active. This replaces cfm_damping parameter in sdf 1.4.
Required: 0    Type: bool    Default: 0
<fudge_factor>
Description: Scale the excess for in a joint motor at joint limits. Should be between zero and one.
Required: 0    Type: double    Default: 0
<cfm>
Description: Constraint force mixing for constrained directions
Required: 0    Type: double    Default: 0
<erp>
Description: Error reduction parameter for constrained directions
Required: 0    Type: double    Default: 0.2
<bounce>
Description: Bounciness of the limits
Required: 0    Type: double    Default: 0
<max_force>
Description: Maximum force or torque used to reach the desired velocity.
Required: 0    Type: double    Default: 0
<velocity>
Description: The desired velocity of the joint. Should only be set if you want the joint to move on load.
Required: 0    Type: double    Default: 0
<limit>
Description: none
Required: 0    Type: n/a
<cfm>
Description: Constraint force mixing parameter used by the joint stop
Required: 1    Type: double    Default: 0
<erp>
Description: Error reduction parameter used by the joint stop
Required: 1    Type: double    Default: 0.2
<suspension>
Description: none
Required: 0    Type: n/a
<cfm>
Description: Suspension constraint force mixing parameter
Required: 1    Type: double    Default: 0
<erp>
Description: Suspension error reduction parameter
Required: 1    Type: double    Default: 0.2
<provide_feedback>
Description: If provide feedback is set to true, physics engine will compute the constraint forces at this joint. For now, provide_feedback under ode block will override this tag and given user warning about the migration. provide_feedback under ode is scheduled to be removed in SDF 1.5.
Required: 0    Type: bool    Default: 0
<sensor>
Description: The sensor tag describes the type and properties of a sensor.
Required: 0    Type: n/a
Attributes
name:
A unique name for the sensor. This name must not match another model in the model.
Type: string   Default: __default__
type:
The type name of the sensor. By default, SDF supports types camera, depth, multicamera, contact, gps, imu, ir and ray.
Type: string   Default: __default__

<always_on>
Description: If true the sensor will always be updated according to the update rate.
Required: 0    Type: bool    Default: 0
<update_rate>
Description: The frequency at which the sensor data is generated. If left unspecified, the sensor will generate data every cycle.
Required: 0    Type: double    Default: 0
<visualize>
Description: If true, the sensor is visualized in the GUI
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the sensor, relative to the parent link reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<topic>
Description: Name of the topic on which data is published. This is necessary for visualization
Required: 0    Type: string    Default: __default__
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<camera>
Description: These elements are specific to camera sensors.
Required: 0    Type: n/a
Attributes
name:
An optional name for the camera.
Type: string   Default: __default__

<pose>
Description: A position and orientation in the parent coordinate frame for the camera.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<horizontal_fov>
Description: Horizontal field of view
Required: 1    Type: double    Default: 1.047
<image>
Description: The image size in pixels and format.
Required: 1    Type: n/a
<width>
Description: Width in pixels
Required: 1    Type: int    Default: 320
<height>
Description: Height in pixels
Required: 1    Type: int    Default: 240
<format>
Description: (L8|R8G8B8|B8G8R8|BAYER_RGGB8|BAYER_BGGR8|BAYER_GBRG8|BAYER_GRBG8)
Required: 0    Type: string    Default: R8G8B8
<clip>
Description: The near and far clip planes. Objects closer or farther than these planes are not rendered.
Required: 1    Type: n/a
<near>
Description: Near clipping plane
Required: 1    Type: double    Default: 0.1
<far>
Description: Far clipping plane
Required: 1    Type: double    Default: 100
<save>
Description: Enable or disable saving of camera frames.
Required: 0    Type: n/a
Attributes
enabled:
True = saving enabled
Type: bool   Default: 0

<path>
Description: The path name which will hold the frame data. If path name is relative, then directory is relative to current working directory.
Required: 1    Type: string    Default: __default__
<depth_camera>
Description: Depth camera parameters
Required: 0    Type: n/a
<output>
Description: Type of output
Required: 1    Type: string    Default: depths
<noise>
Description: The properties of the noise model that should be applied to generated images
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw additive noise values independently for each pixel from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<contact>
Description: These elements are specific to the contact sensor.
Required: 0    Type: n/a
<collision>
Description: name of the collision element within a link that acts as the contact sensor.
Required: 1    Type: string    Default: __default__
<topic>
Description: Topic on which contact data is published.
Required: 1    Type: string    Default: __default_topic__
<gps>
Description: These elements are specific to the GPS sensor.
Required: 0    Type: n/a
<position_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<velocity_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<imu>
Description: These elements are specific to the IMU sensor.
Required: 0    Type: n/a
<topic>
Description: Topic on which data is published.
Required: 0    Type: string    Default: __default_topic__
<noise>
Description: The properties of the noise model that should be applied to generated data
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<rate>
Description: Noise parameters for angular rates.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<accel>
Description: Noise parameters for linear accelerations.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<ray>
Description: These elements are specific to the ray (laser) sensor.
Required: 0    Type: n/a
<scan>
Description: none
Required: 1    Type: n/a
<horizontal>
Description: none
Required: 1    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 640
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 1    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<vertical>
Description: none
Required: 0    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 1
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 0    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<range>
Description: specifies range properties of each simulated ray
Required: 1    Type: n/a
<min>
Description: The minimum distance for each ray.
Required: 1    Type: double    Default: 0
<max>
Description: The maximum distance for each ray.
Required: 1    Type: double    Default: 0
<resolution>
Description: Linear resolution of each ray.
Required: 0    Type: double    Default: 0
<noise>
Description: The properties of the noise model that should be applied to generated scans
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<rfidtag>
Description: none
Required: 0    Type: n/a
<rfid>
Description: none
Required: 0    Type: n/a
<sonar>
Description: These elements are specific to the sonar sensor.
Required: 0    Type: n/a
<min>
Description: Minimum range
Required: 1    Type: double    Default: 0
<max>
Description: Max range
Required: 1    Type: double    Default: 1
<radius>
Description: Radius of the sonar cone at max range.
Required: 1    Type: double    Default: 0.5
<transceiver>
Description: These elements are specific to a wireless transceiver.
Required: 0    Type: n/a
<essid>
Description: Service set identifier (network name)
Required: 0    Type: string    Default: wireless
<frequency>
Description: Specifies the frequency of transmission in MHz
Required: 0    Type: double    Default: 2442
<min_frequency>
Description: Only a frequency range is filtered. Here we set the lower bound (MHz).
Required: 0    Type: double    Default: 2412
<max_frequency>
Description: Only a frequency range is filtered. Here we set the upper bound (MHz).
Required: 0    Type: double    Default: 2484
<gain>
Description: Specifies the antenna gain in dBi
Required: 1    Type: double    Default: 2.5
<power>
Description: Specifies the transmission power in dBm
Required: 1    Type: double    Default: 14.5
<sensitivity>
Description: Mininum received signal power in dBm
Required: 0    Type: double    Default: -90
<force_torque>
Description: These elements are specific to the force torque sensor.
Required: 0    Type: n/a
<frame>
Description: Frame in which to report the wrench values.
Required: 0    Type: string    Default: parent
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<gripper>
Description: none
Required: *    Type: n/a
Attributes
name:
no description
Type: string   Default: __default__

<grasp_check>
Description: none
Required: 0    Type: n/a
<detach_steps>
Description: none
Required: 0    Type: int    Default: 40
<attach_steps>
Description: none
Required: 0    Type: int    Default: 20
<min_contact_count>
Description: none
Required: 0    Type: unsigned int    Default: 2
<gripper_link>
Description: none
Required: +    Type: string    Default: __default__
<palm_link>
Description: none
Required: 1    Type: string    Default: __default__
<deletions>
Description: A list of deleted model names
Required: 0    Type: n/a
<name>
Description: The name of a deleted model
Required: +    Type: string    Default: __default__
<model>
Description: Model state
Required: *    Type: n/a
Attributes
name:
Name of the model
Type: string   Default: __default__

<pose>
Description: Pose of the model
Required: 1    Type: pose    Default: 0 0 0 0 -0 0
<joint>
Description: Joint angle
Required: *    Type: n/a
Attributes
name:
Name of the joint
Type: string   Default: __default__

<angle>
Description: Angle of an axis
Required: +    Type: double    Default: 0
Attributes
axis:
Index of the axis.
Type: unsigned int   Default: 0

<link>
Description: Link state
Required: *    Type: n/a
Attributes
name:
Name of the link
Type: string   Default: __default__

<pose>
Description: Pose of the link relative to the model
Required: 1    Type: pose    Default: 0 0 0 0 -0 0
<velocity>
Description: Velocity of the link
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<acceleration>
Description: Acceleration of the link
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<wrench>
Description: Force applied to the link
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<collision>
Description: Collision state
Required: *    Type: n/a
Attributes
name:
Name of the collision
Type: string   Default: __default__

<pose>
Description: Pose of the link relative to the model
Required: 1    Type: pose    Default: 0 0 0 0 -0 0
<model>
Description: The model element defines a complete robot or any other physical object.
Required: *    Type: n/a
Attributes
name:
A unique name for the model. This name must not match another model in the world.
Type: string   Default: __default__

<static>
Description: If set to true, the model is immovable. Otherwise the model is simulated in the dynamics engine.
Required: 0    Type: bool    Default: 0
<allow_auto_disable>
Description: Allows a model to auto-disable, which is means the physics engine can skip updating the model when the model is at rest. This parameter is only used by models with no joints.
Required: 0    Type: bool    Default: 1
<pose>
Description: A position and orientation in the global coordinate frame for the model. Position(x,y,z) and rotation (roll, pitch yaw) in the global coordinate frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<link>
Description: A physical link with inertia, collision, and visual properties. A link must be a child of a model, and any number of links may exist in a model.
Required: +    Type: n/a
Attributes
name:
A unique name for the link within the scope of the model.
Type: string   Default: __default__

<gravity>
Description: If true, the link is affected by gravity.
Required: 0    Type: bool    Default: 1
<self_collide>
Description: If true, the link can collide with other links in the model.
Required: 0    Type: bool    Default: 0
<kinematic>
Description: If true, the link is kinematic only
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the link reference frame, relative to the model reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<must_be_base_link>
Description: If true, the link will have 6DOF and be a direct child of world.
Required: 0    Type: bool    Default: 0
<velocity_decay>
Description: Exponential damping of the link's velocity.
Required: 1    Type: n/a
<linear>
Description: Linear damping
Required: 1    Type: double    Default: 0
<angular>
Description: Angular damping
Required: 1    Type: double    Default: 0
<inertial>
Description: The inertial properties of the link.
Required: 0    Type: n/a
<mass>
Description: The mass of the link.
Required: 0    Type: double    Default: 1
<pose>
Description: This is the pose of the inertial reference frame, relative to the link reference frame. The origin of the inertial reference frame needs to be at the center of gravity. The axes of the inertial reference frame do not need to be aligned with the principal axes of the inertia.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<inertia>
Description: The 3x3 rotational inertia matrix. Because the rotational inertia matrix is symmetric, only 6 above-diagonal elements of this matrix are specified here, using the attributes ixx, ixy, ixz, iyy, iyz, izz.
Required: 0    Type: n/a
<ixx>
Description: none
Required: 1    Type: double    Default: 1
<ixy>
Description: none
Required: 1    Type: double    Default: 0
<ixz>
Description: none
Required: 1    Type: double    Default: 0
<iyy>
Description: none
Required: 1    Type: double    Default: 1
<iyz>
Description: none
Required: 1    Type: double    Default: 0
<izz>
Description: none
Required: 1    Type: double    Default: 1
<collision>
Description: The collision properties of a link. Note that this can be different from the visual properties of a link, for example, simpler collision models are often used to reduce computation time.
Required: *    Type: n/a
Attributes
name:
Unique name for the collision element within the scope of the parent link.
Type: string   Default: __default__

<laser_retro>
Description: intensity value returned by laser sensor.
Required: 0    Type: double    Default: 0
<max_contacts>
Description: Maximum number of contacts allowed between two entities. This value overrides the max_contacts element defined in physics.
Required: 0    Type: int    Default: 10
<pose>
Description: The reference frame of the collision element, relative to the reference frame of the link.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<geometry>
Description: The shape of the visual or collision object.
Required: 1    Type: n/a
<empty>
Description: You can use the empty tag to make empty geometries.
Required: 0    Type: n/a
<box>
Description: Box shape
Required: 0    Type: n/a
<size>
Description: The three side lengths of the box. The origin of the box is in its geometric center (inside the center of the box).
Required: 1    Type: vector3    Default: 1 1 1
<cylinder>
Description: Cylinder shape
Required: 0    Type: n/a
<radius>
Description: Radius of the cylinder
Required: 1    Type: double    Default: 1
<length>
Description: Length of the cylinder
Required: 1    Type: double    Default: 1
<heightmap>
Description: A heightmap based on a 2d grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI to a grayscale image file
Required: 1    Type: string    Default: __default__
<size>
Description: The size of the heightmap in world units. When loading an image: "size" is used if present, otherwise defaults to 1x1x1. When loading a DEM: "size" is used if present, otherwise defaults to true size of DEM.
Required: 0    Type: vector3    Default: 1 1 1
<pos>
Description: A position offset.
Required: 0    Type: vector3    Default: 0 0 0
<texture>
Description: The heightmap can contain multiple textures. The order of the texture matters. The first texture will appear at the lowest height, and the last texture at the highest hieght. Use blend to control the hieight thresholds and fade between textures.
Required: *    Type: n/a
<size>
Description: Size of the applied texture in meters.
Required: 1    Type: double    Default: 10
<diffuse>
Description: Diffuse texture image filename
Required: 1    Type: string    Default: __default__
<normal>
Description: Normalmap texture image filename
Required: 1    Type: string    Default: __default__
<blend>
Description: The blend tag controls how two adjacent textures are mixed. The number of blend elements should equal one less than the number of textures.
Required: *    Type: n/a
<min_height>
Description: Min height of a blend layer
Required: 1    Type: double    Default: 0
<fade_dist>
Description: Distance over which the blend occurs
Required: 1    Type: double    Default: 0
<use_terrain_paging>
Description: Set if the rendering engine will use terrain paging
Required: 0    Type: bool    Default: 0
<image>
Description: Extrude a set of boxes from a grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI of the grayscale image file
Required: 1    Type: string    Default: __default__
<scale>
Description: Scaling factor applied to the image
Required: 1    Type: double    Default: 1
<threshold>
Description: Grayscale threshold
Required: 1    Type: int    Default: 200
<height>
Description: Height of the extruded boxes
Required: 1    Type: double    Default: 1
<granularity>
Description: The amount of error in the model
Required: 1    Type: int    Default: 1
<mesh>
Description: Mesh shape
Required: 0    Type: n/a
<uri>
Description: Mesh uri
Required: 1    Type: string    Default: __default__
<submesh>
Description: Use a named submesh. The submesh must exist in the mesh specified by the uri
Required: 0    Type: n/a
<name>
Description: Name of the submesh within the parent mesh
Required: 1    Type: string    Default: __default__
<center>
Description: Set to true to center the vertices of the submesh at 0,0,0. This will effectively remove any transformations on the submesh before the poses from parent links and models are applied.
Required: 0    Type: bool    Default: 0
<scale>
Description: Scaling factor applied to the mesh
Required: 0    Type: vector3    Default: 1 1 1
<plane>
Description: Plane shape
Required: 0    Type: n/a
<normal>
Description: Normal direction for the plane
Required: 1    Type: vector3    Default: 0 0 1
<size>
Description: Length of each side of the plane
Required: 1    Type: vector2d    Default: 1 1
<sphere>
Description: Sphere shape
Required: 0    Type: n/a
<radius>
Description: radius of the sphere
Required: 1    Type: double    Default: 1
<surface>
Description: The surface parameters
Required: 0    Type: n/a
<bounce>
Description: none
Required: 0    Type: n/a
<restitution_coefficient>
Description: Bounciness coefficient of restitution, from [0...1], where 0=no bounciness.
Required: 0    Type: double    Default: 0
<threshold>
Description: Bounce capture velocity, below which effective coefficient of restitution is 0.
Required: 0    Type: double    Default: 100000
<friction>
Description: none
Required: 0    Type: n/a
<ode>
Description: ODE friction parameters
Required: 0    Type: n/a
<mu>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<mu2>
Description: Second coefficient of friction in the range of [0..1]
Required: 0    Type: double    Default: 1
<fdir1>
Description: 3-tuple specifying direction of mu1 in the collision local reference frame.
Required: 0    Type: vector3    Default: 0 0 0
<slip1>
Description: Force dependent slip direction 1 in collision local frame, between the range of [0..1].
Required: 0    Type: double    Default: 0
<slip2>
Description: Force dependent slip direction 2 in collision local frame, between the range of [0..1].
Required: 0    Type: double    Default: 0
<bullet>
Description: none
Required: 0    Type: n/a
<friction>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<friction2>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<fdir1>
Description: 3-tuple specifying direction of mu1 in the collision local reference frame.
Required: 0    Type: vector3    Default: 0 0 0
<rolling_friction>
Description: coefficient of friction in the range of [0..1]
Required: 0    Type: double    Default: 1
<contact>
Description: none
Required: 0    Type: n/a
<collide_without_contact>
Description: Flag to disable contact force generation, while still allowing collision checks and contact visualization to occur.
Required: 0    Type: bool    Default: 0
<collide_without_contact_bitmask>
Description: Bitmask for collision filtering when collide_without_contact is on
Required: 0    Type: unsigned int    Default: 1
<ode>
Description: ODE contact parameters
Required: 0    Type: n/a
<soft_cfm>
Description: Soft constraint force mixing.
Required: 0    Type: double    Default: 0
<soft_erp>
Description: Soft error reduction parameter
Required: 0    Type: double    Default: 0.2
<kp>
Description: dynamically "stiffness"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1e+12
<kd>
Description: dynamically "damping"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1
<max_vel>
Description: maximum contact correction velocity truncation term.
Required: 0    Type: double    Default: 0.01
<min_depth>
Description: minimum allowable depth before contact correction impulse is applied
Required: 0    Type: double    Default: 0
<bullet>
Description: Bullet contact parameters
Required: 0    Type: n/a
<soft_cfm>
Description: Soft constraint force mixing.
Required: 0    Type: double    Default: 0
<soft_erp>
Description: Soft error reduction parameter
Required: 0    Type: double    Default: 0.2
<kp>
Description: dynamically "stiffness"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1e+12
<kd>
Description: dynamically "damping"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1
<split_impulse>
Description: Similar to ODE's max_vel implementation. See http://bulletphysics.org/mediawiki-1.5.8/index.php/BtContactSolverInfo#Split_Impulse for more information.
Required: 1    Type: bool    Default: 1
<split_impulse_penetration_threshold>
Description: Similar to ODE's max_vel implementation. See http://bulletphysics.org/mediawiki-1.5.8/index.php/BtContactSolverInfo#Split_Impulse for more information.
Required: 1    Type: double    Default: -0.01
<soft_contact>
Description: none
Required: 0    Type: n/a
<dart>
Description: soft contact pamameters based on paper: http://www.cc.gatech.edu/graphics/projects/Sumit/homepage/papers/sigasia11/jain_softcontacts_siga11.pdf
Required: 0    Type: n/a
<bone_attachment>
Description: This is variable k_v in the soft contacts paper. Its unit is N/m.
Required: 1    Type: double    Default: 100
<stiffness>
Description: This is variable k_e in the soft contacts paper. Its unit is N/m.
Required: 1    Type: double    Default: 100
<damping>
Description: Viscous damping of point velocity in body frame. Its unit is N/m/s.
Required: 1    Type: double    Default: 10
<flesh_mass_fraction>
Description: Fraction of mass to be distributed among deformable nodes.
Required: 1    Type: double    Default: 0.05
<visual>
Description: The visual properties of the link. This element specifies the shape of the object (box, cylinder, etc.) for visualization purposes.
Required: *    Type: n/a
Attributes
name:
Unique name for the visual element within the scope of the parent link.
Type: string   Default: __default__

<cast_shadows>
Description: If true the visual will cast shadows.
Required: 0    Type: bool    Default: 1
<laser_retro>
Description: will be implemented in the future release.
Required: 0    Type: double    Default: 0
<transparency>
Description: The amount of transparency( 0=opaque, 1 = fully transparent)
Required: 0    Type: double    Default: 0
<pose>
Description: The reference frame of the visual element, relative to the reference frame of the link.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<material>
Description: The material of the visual element.
Required: 0    Type: n/a
<script>
Description: Name of material from an installed script file. This will override the color element if the script exists.
Required: 0    Type: n/a
<uri>
Description: URI of the material script file
Required: +    Type: string    Default: __default__
<name>
Description: Name of the script within the script file
Required: 1    Type: string    Default: __default__
<shader>
Description: none
Required: 0    Type: n/a
Attributes
type:
vertex, pixel, normal_map_objectspace, normal_map_tangentspace
Type: string   Default: pixel

<normal_map>
Description: filename of the normal map
Required: 0    Type: string    Default: __default__
<lighting>
Description: If false, dynamic lighting will be disabled
Required: 0    Type: bool    Default: 1
<ambient>
Description: The ambient color of a material specified by set of four numbers representing red/green/blue, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<diffuse>
Description: The diffuse color of a material specified by set of four numbers representing red/green/blue/alpha, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<specular>
Description: The specular color of a material specified by set of four numbers representing red/green/blue/alpha, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<emissive>
Description: The emissive color of a material specified by set of four numbers representing red/green/blue, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<geometry>
Description: The shape of the visual or collision object.
Required: 1    Type: n/a
<empty>
Description: You can use the empty tag to make empty geometries.
Required: 0    Type: n/a
<box>
Description: Box shape
Required: 0    Type: n/a
<size>
Description: The three side lengths of the box. The origin of the box is in its geometric center (inside the center of the box).
Required: 1    Type: vector3    Default: 1 1 1
<cylinder>
Description: Cylinder shape
Required: 0    Type: n/a
<radius>
Description: Radius of the cylinder
Required: 1    Type: double    Default: 1
<length>
Description: Length of the cylinder
Required: 1    Type: double    Default: 1
<heightmap>
Description: A heightmap based on a 2d grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI to a grayscale image file
Required: 1    Type: string    Default: __default__
<size>
Description: The size of the heightmap in world units. When loading an image: "size" is used if present, otherwise defaults to 1x1x1. When loading a DEM: "size" is used if present, otherwise defaults to true size of DEM.
Required: 0    Type: vector3    Default: 1 1 1
<pos>
Description: A position offset.
Required: 0    Type: vector3    Default: 0 0 0
<texture>
Description: The heightmap can contain multiple textures. The order of the texture matters. The first texture will appear at the lowest height, and the last texture at the highest hieght. Use blend to control the hieight thresholds and fade between textures.
Required: *    Type: n/a
<size>
Description: Size of the applied texture in meters.
Required: 1    Type: double    Default: 10
<diffuse>
Description: Diffuse texture image filename
Required: 1    Type: string    Default: __default__
<normal>
Description: Normalmap texture image filename
Required: 1    Type: string    Default: __default__
<blend>
Description: The blend tag controls how two adjacent textures are mixed. The number of blend elements should equal one less than the number of textures.
Required: *    Type: n/a
<min_height>
Description: Min height of a blend layer
Required: 1    Type: double    Default: 0
<fade_dist>
Description: Distance over which the blend occurs
Required: 1    Type: double    Default: 0
<use_terrain_paging>
Description: Set if the rendering engine will use terrain paging
Required: 0    Type: bool    Default: 0
<image>
Description: Extrude a set of boxes from a grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI of the grayscale image file
Required: 1    Type: string    Default: __default__
<scale>
Description: Scaling factor applied to the image
Required: 1    Type: double    Default: 1
<threshold>
Description: Grayscale threshold
Required: 1    Type: int    Default: 200
<height>
Description: Height of the extruded boxes
Required: 1    Type: double    Default: 1
<granularity>
Description: The amount of error in the model
Required: 1    Type: int    Default: 1
<mesh>
Description: Mesh shape
Required: 0    Type: n/a
<uri>
Description: Mesh uri
Required: 1    Type: string    Default: __default__
<submesh>
Description: Use a named submesh. The submesh must exist in the mesh specified by the uri
Required: 0    Type: n/a
<name>
Description: Name of the submesh within the parent mesh
Required: 1    Type: string    Default: __default__
<center>
Description: Set to true to center the vertices of the submesh at 0,0,0. This will effectively remove any transformations on the submesh before the poses from parent links and models are applied.
Required: 0    Type: bool    Default: 0
<scale>
Description: Scaling factor applied to the mesh
Required: 0    Type: vector3    Default: 1 1 1
<plane>
Description: Plane shape
Required: 0    Type: n/a
<normal>
Description: Normal direction for the plane
Required: 1    Type: vector3    Default: 0 0 1
<size>
Description: Length of each side of the plane
Required: 1    Type: vector2d    Default: 1 1
<sphere>
Description: Sphere shape
Required: 0    Type: n/a
<radius>
Description: radius of the sphere
Required: 1    Type: double    Default: 1
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<sensor>
Description: The sensor tag describes the type and properties of a sensor.
Required: 0    Type: n/a
Attributes
name:
A unique name for the sensor. This name must not match another model in the model.
Type: string   Default: __default__
type:
The type name of the sensor. By default, SDF supports types camera, depth, multicamera, contact, gps, imu, ir and ray.
Type: string   Default: __default__

<always_on>
Description: If true the sensor will always be updated according to the update rate.
Required: 0    Type: bool    Default: 0
<update_rate>
Description: The frequency at which the sensor data is generated. If left unspecified, the sensor will generate data every cycle.
Required: 0    Type: double    Default: 0
<visualize>
Description: If true, the sensor is visualized in the GUI
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the sensor, relative to the parent link reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<topic>
Description: Name of the topic on which data is published. This is necessary for visualization
Required: 0    Type: string    Default: __default__
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<camera>
Description: These elements are specific to camera sensors.
Required: 0    Type: n/a
Attributes
name:
An optional name for the camera.
Type: string   Default: __default__

<pose>
Description: A position and orientation in the parent coordinate frame for the camera.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<horizontal_fov>
Description: Horizontal field of view
Required: 1    Type: double    Default: 1.047
<image>
Description: The image size in pixels and format.
Required: 1    Type: n/a
<width>
Description: Width in pixels
Required: 1    Type: int    Default: 320
<height>
Description: Height in pixels
Required: 1    Type: int    Default: 240
<format>
Description: (L8|R8G8B8|B8G8R8|BAYER_RGGB8|BAYER_BGGR8|BAYER_GBRG8|BAYER_GRBG8)
Required: 0    Type: string    Default: R8G8B8
<clip>
Description: The near and far clip planes. Objects closer or farther than these planes are not rendered.
Required: 1    Type: n/a
<near>
Description: Near clipping plane
Required: 1    Type: double    Default: 0.1
<far>
Description: Far clipping plane
Required: 1    Type: double    Default: 100
<save>
Description: Enable or disable saving of camera frames.
Required: 0    Type: n/a
Attributes
enabled:
True = saving enabled
Type: bool   Default: 0

<path>
Description: The path name which will hold the frame data. If path name is relative, then directory is relative to current working directory.
Required: 1    Type: string    Default: __default__
<depth_camera>
Description: Depth camera parameters
Required: 0    Type: n/a
<output>
Description: Type of output
Required: 1    Type: string    Default: depths
<noise>
Description: The properties of the noise model that should be applied to generated images
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw additive noise values independently for each pixel from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<contact>
Description: These elements are specific to the contact sensor.
Required: 0    Type: n/a
<collision>
Description: name of the collision element within a link that acts as the contact sensor.
Required: 1    Type: string    Default: __default__
<topic>
Description: Topic on which contact data is published.
Required: 1    Type: string    Default: __default_topic__
<gps>
Description: These elements are specific to the GPS sensor.
Required: 0    Type: n/a
<position_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<velocity_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<imu>
Description: These elements are specific to the IMU sensor.
Required: 0    Type: n/a
<topic>
Description: Topic on which data is published.
Required: 0    Type: string    Default: __default_topic__
<noise>
Description: The properties of the noise model that should be applied to generated data
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<rate>
Description: Noise parameters for angular rates.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<accel>
Description: Noise parameters for linear accelerations.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<ray>
Description: These elements are specific to the ray (laser) sensor.
Required: 0    Type: n/a
<scan>
Description: none
Required: 1    Type: n/a
<horizontal>
Description: none
Required: 1    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 640
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 1    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<vertical>
Description: none
Required: 0    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 1
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 0    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<range>
Description: specifies range properties of each simulated ray
Required: 1    Type: n/a
<min>
Description: The minimum distance for each ray.
Required: 1    Type: double    Default: 0
<max>
Description: The maximum distance for each ray.
Required: 1    Type: double    Default: 0
<resolution>
Description: Linear resolution of each ray.
Required: 0    Type: double    Default: 0
<noise>
Description: The properties of the noise model that should be applied to generated scans
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<rfidtag>
Description: none
Required: 0    Type: n/a
<rfid>
Description: none
Required: 0    Type: n/a
<sonar>
Description: These elements are specific to the sonar sensor.
Required: 0    Type: n/a
<min>
Description: Minimum range
Required: 1    Type: double    Default: 0
<max>
Description: Max range
Required: 1    Type: double    Default: 1
<radius>
Description: Radius of the sonar cone at max range.
Required: 1    Type: double    Default: 0.5
<transceiver>
Description: These elements are specific to a wireless transceiver.
Required: 0    Type: n/a
<essid>
Description: Service set identifier (network name)
Required: 0    Type: string    Default: wireless
<frequency>
Description: Specifies the frequency of transmission in MHz
Required: 0    Type: double    Default: 2442
<min_frequency>
Description: Only a frequency range is filtered. Here we set the lower bound (MHz).
Required: 0    Type: double    Default: 2412
<max_frequency>
Description: Only a frequency range is filtered. Here we set the upper bound (MHz).
Required: 0    Type: double    Default: 2484
<gain>
Description: Specifies the antenna gain in dBi
Required: 1    Type: double    Default: 2.5
<power>
Description: Specifies the transmission power in dBm
Required: 1    Type: double    Default: 14.5
<sensitivity>
Description: Mininum received signal power in dBm
Required: 0    Type: double    Default: -90
<force_torque>
Description: These elements are specific to the force torque sensor.
Required: 0    Type: n/a
<frame>
Description: Frame in which to report the wrench values.
Required: 0    Type: string    Default: parent
<projector>
Description: none
Required: 0    Type: n/a
Attributes
name:
Name of the projector
Type: string   Default: __default__

<texture>
Description: Texture name
Required: 1    Type: string    Default: __default__
<pose>
Description: Pose of the projector
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<fov>
Description: Field of view
Required: 0    Type: double    Default: 0.785
<near_clip>
Description: Near clip distance
Required: 0    Type: double    Default: 0.1
<far_clip>
Description: far clip distance
Required: 0    Type: double    Default: 10
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<audio_sink>
Description: An audio sink.
Required: *    Type: n/a
<audio_source>
Description: An audio source.
Required: *    Type: n/a
<uri>
Description: URI of the audio media.
Required: 1    Type: string    Default: __default__
<pitch>
Description: Pitch for the audio media, in Hz
Required: 0    Type: double    Default: 1
<gain>
Description: Gain for the audio media, in dB.
Required: 0    Type: double    Default: 1
<contact>
Description: List of collision objects that will trigger audio playback.
Required: 0    Type: n/a
<collision>
Description: Name of child collision element that will trigger audio playback.
Required: +    Type: string    Default: __default__
<loop>
Description: True to make the audio source loop playback.
Required: 0    Type: bool    Default: 0
<pose>
Description: A position and orientation in the parent coordinate frame for the audio source. Position(x,y,z) and rotation (roll, pitch yaw) in the parent coordinate frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<joint>
Description: A joint connections two links with kinematic and dynamic properties.
Required: *    Type: n/a
Attributes
name:
A unique name for the joint within the scope of the model.
Type: string   Default: __default__
type:
The type of joint, which must be one of the following: (revolute) a hinge joint that rotates on a single axis with either a fixed or continuous range of motion, (gearbox) geared revolute joints, (revolute2) same as two revolute joints connected in series, (prismatic) a sliding joint that slides along an axis with a limited range specified by upper and lower limits, (ball) a ball and socket joint, (universal), like a ball joint, but constrains one degree of freedom, (piston) similar to a Slider joint except that rotation around the translation axis is possible.
Type: string   Default: __default__

<parent>
Description: Name of the parent link
Required: 1    Type: string    Default: __default__
<child>
Description: Name of the child link
Required: 1    Type: string    Default: __default__
<pose>
Description: Pose offset from child link frame to joint frame (expressed in child link frame).
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<gearbox_ratio>
Description: Parameter for gearbox joints. Given theta_1 and theta_2 defined in description for gearbox_reference_body, theta_2 = -gearbox_ratio * theta_1.
Required: 0    Type: double    Default: 1
<gearbox_reference_body>
Description: Parameter for gearbox joints. Gearbox ratio is enforced over two joint angles. First joint angle (theta_1) is the angle from the gearbox_reference_body to the parent link in the direction of the axis element and the second joint angle (theta_2) is the angle from the gearbox_reference_body to the child link in the direction of the axis2 element.
Required: 0    Type: string    Default: __default__
<thread_pitch>
Description: Parameter for screw joints.
Required: 0    Type: double    Default: 1
<axis>
Description: Parameters related to the axis of rotation for revolute joints, the axis of translation for prismatic joints.
Required: 1    Type: n/a
<xyz>
Description: Represents the x,y,z components of the axis unit vector. The axis is expressed in the joint frame unless the use_parent_model_frame flag is set to true. The vector should be normalized.
Required: 1    Type: vector3    Default: 0 0 1
<use_parent_model_frame>
Description: Flag to interpret the axis xyz element in the parent model frame instead of joint frame. Provided for Gazebo compatibility (see https://bitbucket.org/osrf/gazebo/issue/494 ).
Required: 1    Type: bool    Default: 0
<dynamics>
Description: An element specifying physical properties of the joint. These values are used to specify modeling properties of the joint, particularly useful for simulation.
Required: 0    Type: n/a
<damping>
Description: The physical velocity dependent viscous damping coefficient of the joint.
Required: 0    Type: double    Default: 0
<friction>
Description: The physical static friction value of the joint.
Required: 0    Type: double    Default: 0
<limit>
Description: specifies the limits of this joint
Required: 1    Type: n/a
<lower>
Description: An attribute specifying the lower joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 1    Type: double    Default: -1e+16
<upper>
Description: An attribute specifying the upper joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 1    Type: double    Default: 1e+16
<effort>
Description: An attribute for enforcing the maximum joint effort applied by Joint::SetForce. Limit is not enforced if value is negative.
Required: 0    Type: double    Default: -1
<velocity>
Description: (not implemented) An attribute for enforcing the maximum joint velocity.
Required: 0    Type: double    Default: -1
<stiffness>
Description: Joint stop stiffness. Support physics engines: SimBody.
Required: 0    Type: double    Default: 1e+08
<dissipation>
Description: Joint stop dissipation.
Required: 0    Type: double    Default: 1
<axis2>
Description: Parameters related to the second axis of rotation for revolute2 joints and universal joints.
Required: 0    Type: n/a
<xyz>
Description: Represents the x,y,z components of the axis unit vector. The axis is expressed in the joint frame unless the use_parent_model_frame flag is set to true. The vector should be normalized.
Required: 1    Type: vector3    Default: 0 0 1
<use_parent_model_frame>
Description: Flag to interpret the axis xyz element in the parent model frame instead of joint frame. Provided for Gazebo compatibility (see https://bitbucket.org/osrf/gazebo/issue/494 ).
Required: 1    Type: bool    Default: 0
<dynamics>
Description: An element specifying physical properties of the joint. These values are used to specify modeling properties of the joint, particularly useful for simulation.
Required: 0    Type: n/a
<damping>
Description: The physical velocity dependent viscous damping coefficient of the joint. EXPERIMENTAL: if damping coefficient is negative and implicit_spring_damper is true, adaptive damping is used.
Required: 0    Type: double    Default: 0
<friction>
Description: The physical static friction value of the joint.
Required: 0    Type: double    Default: 0
<limit>
Description: none
Required: 0    Type: n/a
<lower>
Description: An attribute specifying the lower joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 0    Type: double    Default: -1e+16
<upper>
Description: An attribute specifying the upper joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 0    Type: double    Default: 1e+16
<effort>
Description: An attribute for enforcing the maximum joint effort applied by Joint::SetForce. Limit is not enforced if value is negative.
Required: 0    Type: double    Default: -1
<velocity>
Description: (not implemented) An attribute for enforcing the maximum joint velocity.
Required: 0    Type: double    Default: -1
<stiffness>
Description: Joint stop stiffness. Supported physics engines: SimBody.
Required: 0    Type: double    Default: 1e+08
<dissipation>
Description: Joint stop dissipation. Supported physics engines: SimBody.
Required: 0    Type: double    Default: 1
<physics>
Description: Parameters that are specific to a certain physics engine.
Required: 0    Type: n/a
<simbody>
Description: Simbody specific parameters
Required: 0    Type: n/a
<must_be_loop_joint>
Description: Force cut in the multibody graph at this joint.
Required: 0    Type: bool    Default: 0
<ode>
Description: ODE specific parameters
Required: 0    Type: n/a
<provide_feedback>
Description: (DEPRECATION WARNING: In SDF 1.5 this tag will be replaced by the same tag directly under the physics-block. For now, this tag overrides the one outside of ode-block, but in SDF 1.5 this tag will be removed completely.) If provide feedback is set to true, ODE will compute the constraint forces at this joint.
Required: 0    Type: bool    Default: 0
<cfm_damping>
Description: If cfm damping is set to true, ODE will use CFM to simulate damping, allows for infinite damping, and one additional constraint row (previously used for joint limit) is always active.
Required: 0    Type: bool    Default: 0
<implicit_spring_damper>
Description: If implicit_spring_damper is set to true, ODE will use CFM, ERP to simulate stiffness and damping, allows for infinite damping, and one additional constraint row (previously used for joint limit) is always active. This replaces cfm_damping parameter in sdf 1.4.
Required: 0    Type: bool    Default: 0
<fudge_factor>
Description: Scale the excess for in a joint motor at joint limits. Should be between zero and one.
Required: 0    Type: double    Default: 0
<cfm>
Description: Constraint force mixing for constrained directions
Required: 0    Type: double    Default: 0
<erp>
Description: Error reduction parameter for constrained directions
Required: 0    Type: double    Default: 0.2
<bounce>
Description: Bounciness of the limits
Required: 0    Type: double    Default: 0
<max_force>
Description: Maximum force or torque used to reach the desired velocity.
Required: 0    Type: double    Default: 0
<velocity>
Description: The desired velocity of the joint. Should only be set if you want the joint to move on load.
Required: 0    Type: double    Default: 0
<limit>
Description: none
Required: 0    Type: n/a
<cfm>
Description: Constraint force mixing parameter used by the joint stop
Required: 1    Type: double    Default: 0
<erp>
Description: Error reduction parameter used by the joint stop
Required: 1    Type: double    Default: 0.2
<suspension>
Description: none
Required: 0    Type: n/a
<cfm>
Description: Suspension constraint force mixing parameter
Required: 1    Type: double    Default: 0
<erp>
Description: Suspension error reduction parameter
Required: 1    Type: double    Default: 0.2
<provide_feedback>
Description: If provide feedback is set to true, physics engine will compute the constraint forces at this joint. For now, provide_feedback under ode block will override this tag and given user warning about the migration. provide_feedback under ode is scheduled to be removed in SDF 1.5.
Required: 0    Type: bool    Default: 0
<sensor>
Description: The sensor tag describes the type and properties of a sensor.
Required: 0    Type: n/a
Attributes
name:
A unique name for the sensor. This name must not match another model in the model.
Type: string   Default: __default__
type:
The type name of the sensor. By default, SDF supports types camera, depth, multicamera, contact, gps, imu, ir and ray.
Type: string   Default: __default__

<always_on>
Description: If true the sensor will always be updated according to the update rate.
Required: 0    Type: bool    Default: 0
<update_rate>
Description: The frequency at which the sensor data is generated. If left unspecified, the sensor will generate data every cycle.
Required: 0    Type: double    Default: 0
<visualize>
Description: If true, the sensor is visualized in the GUI
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the sensor, relative to the parent link reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<topic>
Description: Name of the topic on which data is published. This is necessary for visualization
Required: 0    Type: string    Default: __default__
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<camera>
Description: These elements are specific to camera sensors.
Required: 0    Type: n/a
Attributes
name:
An optional name for the camera.
Type: string   Default: __default__

<pose>
Description: A position and orientation in the parent coordinate frame for the camera.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<horizontal_fov>
Description: Horizontal field of view
Required: 1    Type: double    Default: 1.047
<image>
Description: The image size in pixels and format.
Required: 1    Type: n/a
<width>
Description: Width in pixels
Required: 1    Type: int    Default: 320
<height>
Description: Height in pixels
Required: 1    Type: int    Default: 240
<format>
Description: (L8|R8G8B8|B8G8R8|BAYER_RGGB8|BAYER_BGGR8|BAYER_GBRG8|BAYER_GRBG8)
Required: 0    Type: string    Default: R8G8B8
<clip>
Description: The near and far clip planes. Objects closer or farther than these planes are not rendered.
Required: 1    Type: n/a
<near>
Description: Near clipping plane
Required: 1    Type: double    Default: 0.1
<far>
Description: Far clipping plane
Required: 1    Type: double    Default: 100
<save>
Description: Enable or disable saving of camera frames.
Required: 0    Type: n/a
Attributes
enabled:
True = saving enabled
Type: bool   Default: 0

<path>
Description: The path name which will hold the frame data. If path name is relative, then directory is relative to current working directory.
Required: 1    Type: string    Default: __default__
<depth_camera>
Description: Depth camera parameters
Required: 0    Type: n/a
<output>
Description: Type of output
Required: 1    Type: string    Default: depths
<noise>
Description: The properties of the noise model that should be applied to generated images
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw additive noise values independently for each pixel from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<contact>
Description: These elements are specific to the contact sensor.
Required: 0    Type: n/a
<collision>
Description: name of the collision element within a link that acts as the contact sensor.
Required: 1    Type: string    Default: __default__
<topic>
Description: Topic on which contact data is published.
Required: 1    Type: string    Default: __default_topic__
<gps>
Description: These elements are specific to the GPS sensor.
Required: 0    Type: n/a
<position_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<velocity_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<imu>
Description: These elements are specific to the IMU sensor.
Required: 0    Type: n/a
<topic>
Description: Topic on which data is published.
Required: 0    Type: string    Default: __default_topic__
<noise>
Description: The properties of the noise model that should be applied to generated data
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<rate>
Description: Noise parameters for angular rates.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<accel>
Description: Noise parameters for linear accelerations.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<ray>
Description: These elements are specific to the ray (laser) sensor.
Required: 0    Type: n/a
<scan>
Description: none
Required: 1    Type: n/a
<horizontal>
Description: none
Required: 1    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 640
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 1    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<vertical>
Description: none
Required: 0    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 1
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 0    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<range>
Description: specifies range properties of each simulated ray
Required: 1    Type: n/a
<min>
Description: The minimum distance for each ray.
Required: 1    Type: double    Default: 0
<max>
Description: The maximum distance for each ray.
Required: 1    Type: double    Default: 0
<resolution>
Description: Linear resolution of each ray.
Required: 0    Type: double    Default: 0
<noise>
Description: The properties of the noise model that should be applied to generated scans
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<rfidtag>
Description: none
Required: 0    Type: n/a
<rfid>
Description: none
Required: 0    Type: n/a
<sonar>
Description: These elements are specific to the sonar sensor.
Required: 0    Type: n/a
<min>
Description: Minimum range
Required: 1    Type: double    Default: 0
<max>
Description: Max range
Required: 1    Type: double    Default: 1
<radius>
Description: Radius of the sonar cone at max range.
Required: 1    Type: double    Default: 0.5
<transceiver>
Description: These elements are specific to a wireless transceiver.
Required: 0    Type: n/a
<essid>
Description: Service set identifier (network name)
Required: 0    Type: string    Default: wireless
<frequency>
Description: Specifies the frequency of transmission in MHz
Required: 0    Type: double    Default: 2442
<min_frequency>
Description: Only a frequency range is filtered. Here we set the lower bound (MHz).
Required: 0    Type: double    Default: 2412
<max_frequency>
Description: Only a frequency range is filtered. Here we set the upper bound (MHz).
Required: 0    Type: double    Default: 2484
<gain>
Description: Specifies the antenna gain in dBi
Required: 1    Type: double    Default: 2.5
<power>
Description: Specifies the transmission power in dBm
Required: 1    Type: double    Default: 14.5
<sensitivity>
Description: Mininum received signal power in dBm
Required: 0    Type: double    Default: -90
<force_torque>
Description: These elements are specific to the force torque sensor.
Required: 0    Type: n/a
<frame>
Description: Frame in which to report the wrench values.
Required: 0    Type: string    Default: parent
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<gripper>
Description: none
Required: *    Type: n/a
Attributes
name:
no description
Type: string   Default: __default__

<grasp_check>
Description: none
Required: 0    Type: n/a
<detach_steps>
Description: none
Required: 0    Type: int    Default: 40
<attach_steps>
Description: none
Required: 0    Type: int    Default: 20
<min_contact_count>
Description: none
Required: 0    Type: unsigned int    Default: 2
<gripper_link>
Description: none
Required: +    Type: string    Default: __default__
<palm_link>
Description: none
Required: 1    Type: string    Default: __default__
<actor>
Description: none
Required: *    Type: n/a
Attributes
name:
no description
Type: string   Default: __default__
static:
no description
Type: bool   Default: 0

<pose>
Description: Origin of the actor
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<skin>
Description: none
Required: 1    Type: n/a
<filename>
Description: none
Required: 1    Type: string    Default: __default__
<scale>
Description: none
Required: 0    Type: double    Default: 1
<animation>
Description: none
Required: +    Type: n/a
Attributes
name:
no description
Type: string   Default: __default__

<filename>
Description: none
Required: 1    Type: string    Default: __default__
<scale>
Description: none
Required: 0    Type: double    Default: 1
<interpolate_x>
Description: none
Required: 0    Type: bool    Default: 0
<script>
Description: none
Required: 1    Type: n/a
<loop>
Description: none
Required: 0    Type: bool    Default: 1
<delay_start>
Description: none
Required: 0    Type: double    Default: 0
<auto_start>
Description: none
Required: 0    Type: bool    Default: 1
<trajectory>
Description: none
Required: *    Type: n/a
Attributes
id:
no description
Type: int   Default: 0
type:
no description
Type: string   Default: __default__

<waypoint>
Description: none
Required: *    Type: n/a
<time>
Description: none
Required: 1    Type: double    Default: 0
<pose>
Description: none
Required: 1    Type: pose    Default: 0 0 0 0 -0 0
<link>
Description: A physical link with inertia, collision, and visual properties. A link must be a child of a model, and any number of links may exist in a model.
Required: +    Type: n/a
Attributes
name:
A unique name for the link within the scope of the model.
Type: string   Default: __default__

<gravity>
Description: If true, the link is affected by gravity.
Required: 0    Type: bool    Default: 1
<self_collide>
Description: If true, the link can collide with other links in the model.
Required: 0    Type: bool    Default: 0
<kinematic>
Description: If true, the link is kinematic only
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the link reference frame, relative to the model reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<must_be_base_link>
Description: If true, the link will have 6DOF and be a direct child of world.
Required: 0    Type: bool    Default: 0
<velocity_decay>
Description: Exponential damping of the link's velocity.
Required: 1    Type: n/a
<linear>
Description: Linear damping
Required: 1    Type: double    Default: 0
<angular>
Description: Angular damping
Required: 1    Type: double    Default: 0
<inertial>
Description: The inertial properties of the link.
Required: 0    Type: n/a
<mass>
Description: The mass of the link.
Required: 0    Type: double    Default: 1
<pose>
Description: This is the pose of the inertial reference frame, relative to the link reference frame. The origin of the inertial reference frame needs to be at the center of gravity. The axes of the inertial reference frame do not need to be aligned with the principal axes of the inertia.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<inertia>
Description: The 3x3 rotational inertia matrix. Because the rotational inertia matrix is symmetric, only 6 above-diagonal elements of this matrix are specified here, using the attributes ixx, ixy, ixz, iyy, iyz, izz.
Required: 0    Type: n/a
<ixx>
Description: none
Required: 1    Type: double    Default: 1
<ixy>
Description: none
Required: 1    Type: double    Default: 0
<ixz>
Description: none
Required: 1    Type: double    Default: 0
<iyy>
Description: none
Required: 1    Type: double    Default: 1
<iyz>
Description: none
Required: 1    Type: double    Default: 0
<izz>
Description: none
Required: 1    Type: double    Default: 1
<collision>
Description: The collision properties of a link. Note that this can be different from the visual properties of a link, for example, simpler collision models are often used to reduce computation time.
Required: *    Type: n/a
Attributes
name:
Unique name for the collision element within the scope of the parent link.
Type: string   Default: __default__

<laser_retro>
Description: intensity value returned by laser sensor.
Required: 0    Type: double    Default: 0
<max_contacts>
Description: Maximum number of contacts allowed between two entities. This value overrides the max_contacts element defined in physics.
Required: 0    Type: int    Default: 10
<pose>
Description: The reference frame of the collision element, relative to the reference frame of the link.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<geometry>
Description: The shape of the visual or collision object.
Required: 1    Type: n/a
<empty>
Description: You can use the empty tag to make empty geometries.
Required: 0    Type: n/a
<box>
Description: Box shape
Required: 0    Type: n/a
<size>
Description: The three side lengths of the box. The origin of the box is in its geometric center (inside the center of the box).
Required: 1    Type: vector3    Default: 1 1 1
<cylinder>
Description: Cylinder shape
Required: 0    Type: n/a
<radius>
Description: Radius of the cylinder
Required: 1    Type: double    Default: 1
<length>
Description: Length of the cylinder
Required: 1    Type: double    Default: 1
<heightmap>
Description: A heightmap based on a 2d grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI to a grayscale image file
Required: 1    Type: string    Default: __default__
<size>
Description: The size of the heightmap in world units. When loading an image: "size" is used if present, otherwise defaults to 1x1x1. When loading a DEM: "size" is used if present, otherwise defaults to true size of DEM.
Required: 0    Type: vector3    Default: 1 1 1
<pos>
Description: A position offset.
Required: 0    Type: vector3    Default: 0 0 0
<texture>
Description: The heightmap can contain multiple textures. The order of the texture matters. The first texture will appear at the lowest height, and the last texture at the highest hieght. Use blend to control the hieight thresholds and fade between textures.
Required: *    Type: n/a
<size>
Description: Size of the applied texture in meters.
Required: 1    Type: double    Default: 10
<diffuse>
Description: Diffuse texture image filename
Required: 1    Type: string    Default: __default__
<normal>
Description: Normalmap texture image filename
Required: 1    Type: string    Default: __default__
<blend>
Description: The blend tag controls how two adjacent textures are mixed. The number of blend elements should equal one less than the number of textures.
Required: *    Type: n/a
<min_height>
Description: Min height of a blend layer
Required: 1    Type: double    Default: 0
<fade_dist>
Description: Distance over which the blend occurs
Required: 1    Type: double    Default: 0
<use_terrain_paging>
Description: Set if the rendering engine will use terrain paging
Required: 0    Type: bool    Default: 0
<image>
Description: Extrude a set of boxes from a grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI of the grayscale image file
Required: 1    Type: string    Default: __default__
<scale>
Description: Scaling factor applied to the image
Required: 1    Type: double    Default: 1
<threshold>
Description: Grayscale threshold
Required: 1    Type: int    Default: 200
<height>
Description: Height of the extruded boxes
Required: 1    Type: double    Default: 1
<granularity>
Description: The amount of error in the model
Required: 1    Type: int    Default: 1
<mesh>
Description: Mesh shape
Required: 0    Type: n/a
<uri>
Description: Mesh uri
Required: 1    Type: string    Default: __default__
<submesh>
Description: Use a named submesh. The submesh must exist in the mesh specified by the uri
Required: 0    Type: n/a
<name>
Description: Name of the submesh within the parent mesh
Required: 1    Type: string    Default: __default__
<center>
Description: Set to true to center the vertices of the submesh at 0,0,0. This will effectively remove any transformations on the submesh before the poses from parent links and models are applied.
Required: 0    Type: bool    Default: 0
<scale>
Description: Scaling factor applied to the mesh
Required: 0    Type: vector3    Default: 1 1 1
<plane>
Description: Plane shape
Required: 0    Type: n/a
<normal>
Description: Normal direction for the plane
Required: 1    Type: vector3    Default: 0 0 1
<size>
Description: Length of each side of the plane
Required: 1    Type: vector2d    Default: 1 1
<sphere>
Description: Sphere shape
Required: 0    Type: n/a
<radius>
Description: radius of the sphere
Required: 1    Type: double    Default: 1
<surface>
Description: The surface parameters
Required: 0    Type: n/a
<bounce>
Description: none
Required: 0    Type: n/a
<restitution_coefficient>
Description: Bounciness coefficient of restitution, from [0...1], where 0=no bounciness.
Required: 0    Type: double    Default: 0
<threshold>
Description: Bounce capture velocity, below which effective coefficient of restitution is 0.
Required: 0    Type: double    Default: 100000
<friction>
Description: none
Required: 0    Type: n/a
<ode>
Description: ODE friction parameters
Required: 0    Type: n/a
<mu>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<mu2>
Description: Second coefficient of friction in the range of [0..1]
Required: 0    Type: double    Default: 1
<fdir1>
Description: 3-tuple specifying direction of mu1 in the collision local reference frame.
Required: 0    Type: vector3    Default: 0 0 0
<slip1>
Description: Force dependent slip direction 1 in collision local frame, between the range of [0..1].
Required: 0    Type: double    Default: 0
<slip2>
Description: Force dependent slip direction 2 in collision local frame, between the range of [0..1].
Required: 0    Type: double    Default: 0
<bullet>
Description: none
Required: 0    Type: n/a
<friction>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<friction2>
Description: Coefficient of friction in the range of [0..1].
Required: 0    Type: double    Default: 1
<fdir1>
Description: 3-tuple specifying direction of mu1 in the collision local reference frame.
Required: 0    Type: vector3    Default: 0 0 0
<rolling_friction>
Description: coefficient of friction in the range of [0..1]
Required: 0    Type: double    Default: 1
<contact>
Description: none
Required: 0    Type: n/a
<collide_without_contact>
Description: Flag to disable contact force generation, while still allowing collision checks and contact visualization to occur.
Required: 0    Type: bool    Default: 0
<collide_without_contact_bitmask>
Description: Bitmask for collision filtering when collide_without_contact is on
Required: 0    Type: unsigned int    Default: 1
<ode>
Description: ODE contact parameters
Required: 0    Type: n/a
<soft_cfm>
Description: Soft constraint force mixing.
Required: 0    Type: double    Default: 0
<soft_erp>
Description: Soft error reduction parameter
Required: 0    Type: double    Default: 0.2
<kp>
Description: dynamically "stiffness"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1e+12
<kd>
Description: dynamically "damping"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1
<max_vel>
Description: maximum contact correction velocity truncation term.
Required: 0    Type: double    Default: 0.01
<min_depth>
Description: minimum allowable depth before contact correction impulse is applied
Required: 0    Type: double    Default: 0
<bullet>
Description: Bullet contact parameters
Required: 0    Type: n/a
<soft_cfm>
Description: Soft constraint force mixing.
Required: 0    Type: double    Default: 0
<soft_erp>
Description: Soft error reduction parameter
Required: 0    Type: double    Default: 0.2
<kp>
Description: dynamically "stiffness"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1e+12
<kd>
Description: dynamically "damping"-equivalent coefficient for contact joints
Required: 0    Type: double    Default: 1
<split_impulse>
Description: Similar to ODE's max_vel implementation. See http://bulletphysics.org/mediawiki-1.5.8/index.php/BtContactSolverInfo#Split_Impulse for more information.
Required: 1    Type: bool    Default: 1
<split_impulse_penetration_threshold>
Description: Similar to ODE's max_vel implementation. See http://bulletphysics.org/mediawiki-1.5.8/index.php/BtContactSolverInfo#Split_Impulse for more information.
Required: 1    Type: double    Default: -0.01
<soft_contact>
Description: none
Required: 0    Type: n/a
<dart>
Description: soft contact pamameters based on paper: http://www.cc.gatech.edu/graphics/projects/Sumit/homepage/papers/sigasia11/jain_softcontacts_siga11.pdf
Required: 0    Type: n/a
<bone_attachment>
Description: This is variable k_v in the soft contacts paper. Its unit is N/m.
Required: 1    Type: double    Default: 100
<stiffness>
Description: This is variable k_e in the soft contacts paper. Its unit is N/m.
Required: 1    Type: double    Default: 100
<damping>
Description: Viscous damping of point velocity in body frame. Its unit is N/m/s.
Required: 1    Type: double    Default: 10
<flesh_mass_fraction>
Description: Fraction of mass to be distributed among deformable nodes.
Required: 1    Type: double    Default: 0.05
<visual>
Description: The visual properties of the link. This element specifies the shape of the object (box, cylinder, etc.) for visualization purposes.
Required: *    Type: n/a
Attributes
name:
Unique name for the visual element within the scope of the parent link.
Type: string   Default: __default__

<cast_shadows>
Description: If true the visual will cast shadows.
Required: 0    Type: bool    Default: 1
<laser_retro>
Description: will be implemented in the future release.
Required: 0    Type: double    Default: 0
<transparency>
Description: The amount of transparency( 0=opaque, 1 = fully transparent)
Required: 0    Type: double    Default: 0
<pose>
Description: The reference frame of the visual element, relative to the reference frame of the link.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<material>
Description: The material of the visual element.
Required: 0    Type: n/a
<script>
Description: Name of material from an installed script file. This will override the color element if the script exists.
Required: 0    Type: n/a
<uri>
Description: URI of the material script file
Required: +    Type: string    Default: __default__
<name>
Description: Name of the script within the script file
Required: 1    Type: string    Default: __default__
<shader>
Description: none
Required: 0    Type: n/a
Attributes
type:
vertex, pixel, normal_map_objectspace, normal_map_tangentspace
Type: string   Default: pixel

<normal_map>
Description: filename of the normal map
Required: 0    Type: string    Default: __default__
<lighting>
Description: If false, dynamic lighting will be disabled
Required: 0    Type: bool    Default: 1
<ambient>
Description: The ambient color of a material specified by set of four numbers representing red/green/blue, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<diffuse>
Description: The diffuse color of a material specified by set of four numbers representing red/green/blue/alpha, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<specular>
Description: The specular color of a material specified by set of four numbers representing red/green/blue/alpha, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<emissive>
Description: The emissive color of a material specified by set of four numbers representing red/green/blue, each in the range of [0,1].
Required: 0    Type: color    Default: 0 0 0 1
<geometry>
Description: The shape of the visual or collision object.
Required: 1    Type: n/a
<empty>
Description: You can use the empty tag to make empty geometries.
Required: 0    Type: n/a
<box>
Description: Box shape
Required: 0    Type: n/a
<size>
Description: The three side lengths of the box. The origin of the box is in its geometric center (inside the center of the box).
Required: 1    Type: vector3    Default: 1 1 1
<cylinder>
Description: Cylinder shape
Required: 0    Type: n/a
<radius>
Description: Radius of the cylinder
Required: 1    Type: double    Default: 1
<length>
Description: Length of the cylinder
Required: 1    Type: double    Default: 1
<heightmap>
Description: A heightmap based on a 2d grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI to a grayscale image file
Required: 1    Type: string    Default: __default__
<size>
Description: The size of the heightmap in world units. When loading an image: "size" is used if present, otherwise defaults to 1x1x1. When loading a DEM: "size" is used if present, otherwise defaults to true size of DEM.
Required: 0    Type: vector3    Default: 1 1 1
<pos>
Description: A position offset.
Required: 0    Type: vector3    Default: 0 0 0
<texture>
Description: The heightmap can contain multiple textures. The order of the texture matters. The first texture will appear at the lowest height, and the last texture at the highest hieght. Use blend to control the hieight thresholds and fade between textures.
Required: *    Type: n/a
<size>
Description: Size of the applied texture in meters.
Required: 1    Type: double    Default: 10
<diffuse>
Description: Diffuse texture image filename
Required: 1    Type: string    Default: __default__
<normal>
Description: Normalmap texture image filename
Required: 1    Type: string    Default: __default__
<blend>
Description: The blend tag controls how two adjacent textures are mixed. The number of blend elements should equal one less than the number of textures.
Required: *    Type: n/a
<min_height>
Description: Min height of a blend layer
Required: 1    Type: double    Default: 0
<fade_dist>
Description: Distance over which the blend occurs
Required: 1    Type: double    Default: 0
<use_terrain_paging>
Description: Set if the rendering engine will use terrain paging
Required: 0    Type: bool    Default: 0
<image>
Description: Extrude a set of boxes from a grayscale image.
Required: 0    Type: n/a
<uri>
Description: URI of the grayscale image file
Required: 1    Type: string    Default: __default__
<scale>
Description: Scaling factor applied to the image
Required: 1    Type: double    Default: 1
<threshold>
Description: Grayscale threshold
Required: 1    Type: int    Default: 200
<height>
Description: Height of the extruded boxes
Required: 1    Type: double    Default: 1
<granularity>
Description: The amount of error in the model
Required: 1    Type: int    Default: 1
<mesh>
Description: Mesh shape
Required: 0    Type: n/a
<uri>
Description: Mesh uri
Required: 1    Type: string    Default: __default__
<submesh>
Description: Use a named submesh. The submesh must exist in the mesh specified by the uri
Required: 0    Type: n/a
<name>
Description: Name of the submesh within the parent mesh
Required: 1    Type: string    Default: __default__
<center>
Description: Set to true to center the vertices of the submesh at 0,0,0. This will effectively remove any transformations on the submesh before the poses from parent links and models are applied.
Required: 0    Type: bool    Default: 0
<scale>
Description: Scaling factor applied to the mesh
Required: 0    Type: vector3    Default: 1 1 1
<plane>
Description: Plane shape
Required: 0    Type: n/a
<normal>
Description: Normal direction for the plane
Required: 1    Type: vector3    Default: 0 0 1
<size>
Description: Length of each side of the plane
Required: 1    Type: vector2d    Default: 1 1
<sphere>
Description: Sphere shape
Required: 0    Type: n/a
<radius>
Description: radius of the sphere
Required: 1    Type: double    Default: 1
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<sensor>
Description: The sensor tag describes the type and properties of a sensor.
Required: 0    Type: n/a
Attributes
name:
A unique name for the sensor. This name must not match another model in the model.
Type: string   Default: __default__
type:
The type name of the sensor. By default, SDF supports types camera, depth, multicamera, contact, gps, imu, ir and ray.
Type: string   Default: __default__

<always_on>
Description: If true the sensor will always be updated according to the update rate.
Required: 0    Type: bool    Default: 0
<update_rate>
Description: The frequency at which the sensor data is generated. If left unspecified, the sensor will generate data every cycle.
Required: 0    Type: double    Default: 0
<visualize>
Description: If true, the sensor is visualized in the GUI
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the sensor, relative to the parent link reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<topic>
Description: Name of the topic on which data is published. This is necessary for visualization
Required: 0    Type: string    Default: __default__
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<camera>
Description: These elements are specific to camera sensors.
Required: 0    Type: n/a
Attributes
name:
An optional name for the camera.
Type: string   Default: __default__

<pose>
Description: A position and orientation in the parent coordinate frame for the camera.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<horizontal_fov>
Description: Horizontal field of view
Required: 1    Type: double    Default: 1.047
<image>
Description: The image size in pixels and format.
Required: 1    Type: n/a
<width>
Description: Width in pixels
Required: 1    Type: int    Default: 320
<height>
Description: Height in pixels
Required: 1    Type: int    Default: 240
<format>
Description: (L8|R8G8B8|B8G8R8|BAYER_RGGB8|BAYER_BGGR8|BAYER_GBRG8|BAYER_GRBG8)
Required: 0    Type: string    Default: R8G8B8
<clip>
Description: The near and far clip planes. Objects closer or farther than these planes are not rendered.
Required: 1    Type: n/a
<near>
Description: Near clipping plane
Required: 1    Type: double    Default: 0.1
<far>
Description: Far clipping plane
Required: 1    Type: double    Default: 100
<save>
Description: Enable or disable saving of camera frames.
Required: 0    Type: n/a
Attributes
enabled:
True = saving enabled
Type: bool   Default: 0

<path>
Description: The path name which will hold the frame data. If path name is relative, then directory is relative to current working directory.
Required: 1    Type: string    Default: __default__
<depth_camera>
Description: Depth camera parameters
Required: 0    Type: n/a
<output>
Description: Type of output
Required: 1    Type: string    Default: depths
<noise>
Description: The properties of the noise model that should be applied to generated images
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw additive noise values independently for each pixel from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<contact>
Description: These elements are specific to the contact sensor.
Required: 0    Type: n/a
<collision>
Description: name of the collision element within a link that acts as the contact sensor.
Required: 1    Type: string    Default: __default__
<topic>
Description: Topic on which contact data is published.
Required: 1    Type: string    Default: __default_topic__
<gps>
Description: These elements are specific to the GPS sensor.
Required: 0    Type: n/a
<position_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<velocity_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<imu>
Description: These elements are specific to the IMU sensor.
Required: 0    Type: n/a
<topic>
Description: Topic on which data is published.
Required: 0    Type: string    Default: __default_topic__
<noise>
Description: The properties of the noise model that should be applied to generated data
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<rate>
Description: Noise parameters for angular rates.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<accel>
Description: Noise parameters for linear accelerations.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<ray>
Description: These elements are specific to the ray (laser) sensor.
Required: 0    Type: n/a
<scan>
Description: none
Required: 1    Type: n/a
<horizontal>
Description: none
Required: 1    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 640
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 1    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<vertical>
Description: none
Required: 0    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 1
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 0    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<range>
Description: specifies range properties of each simulated ray
Required: 1    Type: n/a
<min>
Description: The minimum distance for each ray.
Required: 1    Type: double    Default: 0
<max>
Description: The maximum distance for each ray.
Required: 1    Type: double    Default: 0
<resolution>
Description: Linear resolution of each ray.
Required: 0    Type: double    Default: 0
<noise>
Description: The properties of the noise model that should be applied to generated scans
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<rfidtag>
Description: none
Required: 0    Type: n/a
<rfid>
Description: none
Required: 0    Type: n/a
<sonar>
Description: These elements are specific to the sonar sensor.
Required: 0    Type: n/a
<min>
Description: Minimum range
Required: 1    Type: double    Default: 0
<max>
Description: Max range
Required: 1    Type: double    Default: 1
<radius>
Description: Radius of the sonar cone at max range.
Required: 1    Type: double    Default: 0.5
<transceiver>
Description: These elements are specific to a wireless transceiver.
Required: 0    Type: n/a
<essid>
Description: Service set identifier (network name)
Required: 0    Type: string    Default: wireless
<frequency>
Description: Specifies the frequency of transmission in MHz
Required: 0    Type: double    Default: 2442
<min_frequency>
Description: Only a frequency range is filtered. Here we set the lower bound (MHz).
Required: 0    Type: double    Default: 2412
<max_frequency>
Description: Only a frequency range is filtered. Here we set the upper bound (MHz).
Required: 0    Type: double    Default: 2484
<gain>
Description: Specifies the antenna gain in dBi
Required: 1    Type: double    Default: 2.5
<power>
Description: Specifies the transmission power in dBm
Required: 1    Type: double    Default: 14.5
<sensitivity>
Description: Mininum received signal power in dBm
Required: 0    Type: double    Default: -90
<force_torque>
Description: These elements are specific to the force torque sensor.
Required: 0    Type: n/a
<frame>
Description: Frame in which to report the wrench values.
Required: 0    Type: string    Default: parent
<projector>
Description: none
Required: 0    Type: n/a
Attributes
name:
Name of the projector
Type: string   Default: __default__

<texture>
Description: Texture name
Required: 1    Type: string    Default: __default__
<pose>
Description: Pose of the projector
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<fov>
Description: Field of view
Required: 0    Type: double    Default: 0.785
<near_clip>
Description: Near clip distance
Required: 0    Type: double    Default: 0.1
<far_clip>
Description: far clip distance
Required: 0    Type: double    Default: 10
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<audio_sink>
Description: An audio sink.
Required: *    Type: n/a
<audio_source>
Description: An audio source.
Required: *    Type: n/a
<uri>
Description: URI of the audio media.
Required: 1    Type: string    Default: __default__
<pitch>
Description: Pitch for the audio media, in Hz
Required: 0    Type: double    Default: 1
<gain>
Description: Gain for the audio media, in dB.
Required: 0    Type: double    Default: 1
<contact>
Description: List of collision objects that will trigger audio playback.
Required: 0    Type: n/a
<collision>
Description: Name of child collision element that will trigger audio playback.
Required: +    Type: string    Default: __default__
<loop>
Description: True to make the audio source loop playback.
Required: 0    Type: bool    Default: 0
<pose>
Description: A position and orientation in the parent coordinate frame for the audio source. Position(x,y,z) and rotation (roll, pitch yaw) in the parent coordinate frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<joint>
Description: A joint connections two links with kinematic and dynamic properties.
Required: *    Type: n/a
Attributes
name:
A unique name for the joint within the scope of the model.
Type: string   Default: __default__
type:
The type of joint, which must be one of the following: (revolute) a hinge joint that rotates on a single axis with either a fixed or continuous range of motion, (gearbox) geared revolute joints, (revolute2) same as two revolute joints connected in series, (prismatic) a sliding joint that slides along an axis with a limited range specified by upper and lower limits, (ball) a ball and socket joint, (universal), like a ball joint, but constrains one degree of freedom, (piston) similar to a Slider joint except that rotation around the translation axis is possible.
Type: string   Default: __default__

<parent>
Description: Name of the parent link
Required: 1    Type: string    Default: __default__
<child>
Description: Name of the child link
Required: 1    Type: string    Default: __default__
<pose>
Description: Pose offset from child link frame to joint frame (expressed in child link frame).
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<gearbox_ratio>
Description: Parameter for gearbox joints. Given theta_1 and theta_2 defined in description for gearbox_reference_body, theta_2 = -gearbox_ratio * theta_1.
Required: 0    Type: double    Default: 1
<gearbox_reference_body>
Description: Parameter for gearbox joints. Gearbox ratio is enforced over two joint angles. First joint angle (theta_1) is the angle from the gearbox_reference_body to the parent link in the direction of the axis element and the second joint angle (theta_2) is the angle from the gearbox_reference_body to the child link in the direction of the axis2 element.
Required: 0    Type: string    Default: __default__
<thread_pitch>
Description: Parameter for screw joints.
Required: 0    Type: double    Default: 1
<axis>
Description: Parameters related to the axis of rotation for revolute joints, the axis of translation for prismatic joints.
Required: 1    Type: n/a
<xyz>
Description: Represents the x,y,z components of the axis unit vector. The axis is expressed in the joint frame unless the use_parent_model_frame flag is set to true. The vector should be normalized.
Required: 1    Type: vector3    Default: 0 0 1
<use_parent_model_frame>
Description: Flag to interpret the axis xyz element in the parent model frame instead of joint frame. Provided for Gazebo compatibility (see https://bitbucket.org/osrf/gazebo/issue/494 ).
Required: 1    Type: bool    Default: 0
<dynamics>
Description: An element specifying physical properties of the joint. These values are used to specify modeling properties of the joint, particularly useful for simulation.
Required: 0    Type: n/a
<damping>
Description: The physical velocity dependent viscous damping coefficient of the joint.
Required: 0    Type: double    Default: 0
<friction>
Description: The physical static friction value of the joint.
Required: 0    Type: double    Default: 0
<limit>
Description: specifies the limits of this joint
Required: 1    Type: n/a
<lower>
Description: An attribute specifying the lower joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 1    Type: double    Default: -1e+16
<upper>
Description: An attribute specifying the upper joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 1    Type: double    Default: 1e+16
<effort>
Description: An attribute for enforcing the maximum joint effort applied by Joint::SetForce. Limit is not enforced if value is negative.
Required: 0    Type: double    Default: -1
<velocity>
Description: (not implemented) An attribute for enforcing the maximum joint velocity.
Required: 0    Type: double    Default: -1
<stiffness>
Description: Joint stop stiffness. Support physics engines: SimBody.
Required: 0    Type: double    Default: 1e+08
<dissipation>
Description: Joint stop dissipation.
Required: 0    Type: double    Default: 1
<axis2>
Description: Parameters related to the second axis of rotation for revolute2 joints and universal joints.
Required: 0    Type: n/a
<xyz>
Description: Represents the x,y,z components of the axis unit vector. The axis is expressed in the joint frame unless the use_parent_model_frame flag is set to true. The vector should be normalized.
Required: 1    Type: vector3    Default: 0 0 1
<use_parent_model_frame>
Description: Flag to interpret the axis xyz element in the parent model frame instead of joint frame. Provided for Gazebo compatibility (see https://bitbucket.org/osrf/gazebo/issue/494 ).
Required: 1    Type: bool    Default: 0
<dynamics>
Description: An element specifying physical properties of the joint. These values are used to specify modeling properties of the joint, particularly useful for simulation.
Required: 0    Type: n/a
<damping>
Description: The physical velocity dependent viscous damping coefficient of the joint. EXPERIMENTAL: if damping coefficient is negative and implicit_spring_damper is true, adaptive damping is used.
Required: 0    Type: double    Default: 0
<friction>
Description: The physical static friction value of the joint.
Required: 0    Type: double    Default: 0
<limit>
Description: none
Required: 0    Type: n/a
<lower>
Description: An attribute specifying the lower joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 0    Type: double    Default: -1e+16
<upper>
Description: An attribute specifying the upper joint limit (radians for revolute joints, meters for prismatic joints). Omit if joint is continuous.
Required: 0    Type: double    Default: 1e+16
<effort>
Description: An attribute for enforcing the maximum joint effort applied by Joint::SetForce. Limit is not enforced if value is negative.
Required: 0    Type: double    Default: -1
<velocity>
Description: (not implemented) An attribute for enforcing the maximum joint velocity.
Required: 0    Type: double    Default: -1
<stiffness>
Description: Joint stop stiffness. Supported physics engines: SimBody.
Required: 0    Type: double    Default: 1e+08
<dissipation>
Description: Joint stop dissipation. Supported physics engines: SimBody.
Required: 0    Type: double    Default: 1
<physics>
Description: Parameters that are specific to a certain physics engine.
Required: 0    Type: n/a
<simbody>
Description: Simbody specific parameters
Required: 0    Type: n/a
<must_be_loop_joint>
Description: Force cut in the multibody graph at this joint.
Required: 0    Type: bool    Default: 0
<ode>
Description: ODE specific parameters
Required: 0    Type: n/a
<provide_feedback>
Description: (DEPRECATION WARNING: In SDF 1.5 this tag will be replaced by the same tag directly under the physics-block. For now, this tag overrides the one outside of ode-block, but in SDF 1.5 this tag will be removed completely.) If provide feedback is set to true, ODE will compute the constraint forces at this joint.
Required: 0    Type: bool    Default: 0
<cfm_damping>
Description: If cfm damping is set to true, ODE will use CFM to simulate damping, allows for infinite damping, and one additional constraint row (previously used for joint limit) is always active.
Required: 0    Type: bool    Default: 0
<implicit_spring_damper>
Description: If implicit_spring_damper is set to true, ODE will use CFM, ERP to simulate stiffness and damping, allows for infinite damping, and one additional constraint row (previously used for joint limit) is always active. This replaces cfm_damping parameter in sdf 1.4.
Required: 0    Type: bool    Default: 0
<fudge_factor>
Description: Scale the excess for in a joint motor at joint limits. Should be between zero and one.
Required: 0    Type: double    Default: 0
<cfm>
Description: Constraint force mixing for constrained directions
Required: 0    Type: double    Default: 0
<erp>
Description: Error reduction parameter for constrained directions
Required: 0    Type: double    Default: 0.2
<bounce>
Description: Bounciness of the limits
Required: 0    Type: double    Default: 0
<max_force>
Description: Maximum force or torque used to reach the desired velocity.
Required: 0    Type: double    Default: 0
<velocity>
Description: The desired velocity of the joint. Should only be set if you want the joint to move on load.
Required: 0    Type: double    Default: 0
<limit>
Description: none
Required: 0    Type: n/a
<cfm>
Description: Constraint force mixing parameter used by the joint stop
Required: 1    Type: double    Default: 0
<erp>
Description: Error reduction parameter used by the joint stop
Required: 1    Type: double    Default: 0.2
<suspension>
Description: none
Required: 0    Type: n/a
<cfm>
Description: Suspension constraint force mixing parameter
Required: 1    Type: double    Default: 0
<erp>
Description: Suspension error reduction parameter
Required: 1    Type: double    Default: 0.2
<provide_feedback>
Description: If provide feedback is set to true, physics engine will compute the constraint forces at this joint. For now, provide_feedback under ode block will override this tag and given user warning about the migration. provide_feedback under ode is scheduled to be removed in SDF 1.5.
Required: 0    Type: bool    Default: 0
<sensor>
Description: The sensor tag describes the type and properties of a sensor.
Required: 0    Type: n/a
Attributes
name:
A unique name for the sensor. This name must not match another model in the model.
Type: string   Default: __default__
type:
The type name of the sensor. By default, SDF supports types camera, depth, multicamera, contact, gps, imu, ir and ray.
Type: string   Default: __default__

<always_on>
Description: If true the sensor will always be updated according to the update rate.
Required: 0    Type: bool    Default: 0
<update_rate>
Description: The frequency at which the sensor data is generated. If left unspecified, the sensor will generate data every cycle.
Required: 0    Type: double    Default: 0
<visualize>
Description: If true, the sensor is visualized in the GUI
Required: 0    Type: bool    Default: 0
<pose>
Description: This is the pose of the sensor, relative to the parent link reference frame.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<topic>
Description: Name of the topic on which data is published. This is necessary for visualization
Required: 0    Type: string    Default: __default__
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<camera>
Description: These elements are specific to camera sensors.
Required: 0    Type: n/a
Attributes
name:
An optional name for the camera.
Type: string   Default: __default__

<pose>
Description: A position and orientation in the parent coordinate frame for the camera.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<horizontal_fov>
Description: Horizontal field of view
Required: 1    Type: double    Default: 1.047
<image>
Description: The image size in pixels and format.
Required: 1    Type: n/a
<width>
Description: Width in pixels
Required: 1    Type: int    Default: 320
<height>
Description: Height in pixels
Required: 1    Type: int    Default: 240
<format>
Description: (L8|R8G8B8|B8G8R8|BAYER_RGGB8|BAYER_BGGR8|BAYER_GBRG8|BAYER_GRBG8)
Required: 0    Type: string    Default: R8G8B8
<clip>
Description: The near and far clip planes. Objects closer or farther than these planes are not rendered.
Required: 1    Type: n/a
<near>
Description: Near clipping plane
Required: 1    Type: double    Default: 0.1
<far>
Description: Far clipping plane
Required: 1    Type: double    Default: 100
<save>
Description: Enable or disable saving of camera frames.
Required: 0    Type: n/a
Attributes
enabled:
True = saving enabled
Type: bool   Default: 0

<path>
Description: The path name which will hold the frame data. If path name is relative, then directory is relative to current working directory.
Required: 1    Type: string    Default: __default__
<depth_camera>
Description: Depth camera parameters
Required: 0    Type: n/a
<output>
Description: Type of output
Required: 1    Type: string    Default: depths
<noise>
Description: The properties of the noise model that should be applied to generated images
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw additive noise values independently for each pixel from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<contact>
Description: These elements are specific to the contact sensor.
Required: 0    Type: n/a
<collision>
Description: name of the collision element within a link that acts as the contact sensor.
Required: 1    Type: string    Default: __default__
<topic>
Description: Topic on which contact data is published.
Required: 1    Type: string    Default: __default_topic__
<gps>
Description: These elements are specific to the GPS sensor.
Required: 0    Type: n/a
<position_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical position measurement, in units of meters.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<velocity_sensing>
Description: Parameters related to GPS position measurement.
Required: 0    Type: n/a
<horizontal>
Description: Noise parameters for horizontal velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<vertical>
Description: Noise parameters for vertical velocity measurement, in units of meters/second.
Required: 0    Type: n/a
<noise>
Description: The properties of a sensor noise model.
Required: 1    Type: n/a
Attributes
type:
The type of noise. Currently supported types are: "none" (no noise). "gaussian" (draw noise values independently for each measurement from a Gaussian distribution). "gaussian_quantized" ("gaussian" plus quantization of outputs (ie. rounding))
Type: string   Default: none

<mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian*", the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian*", the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<precision>
Description: For type "gaussian_quantized", the precision of output signals. A value of zero implies infinite precision / no quantization.
Required: 0    Type: double    Default: 0
<imu>
Description: These elements are specific to the IMU sensor.
Required: 0    Type: n/a
<topic>
Description: Topic on which data is published.
Required: 0    Type: string    Default: __default_topic__
<noise>
Description: The properties of the noise model that should be applied to generated data
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<rate>
Description: Noise parameters for angular rates.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<accel>
Description: Noise parameters for linear accelerations.
Required: 1    Type: n/a
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<bias_mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<bias_stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which bias values are drawn.
Required: 0    Type: double    Default: 0
<ray>
Description: These elements are specific to the ray (laser) sensor.
Required: 0    Type: n/a
<scan>
Description: none
Required: 1    Type: n/a
<horizontal>
Description: none
Required: 1    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 640
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 1    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<vertical>
Description: none
Required: 0    Type: n/a
<samples>
Description: The number of simulated rays to generate per complete laser sweep cycle.
Required: 1    Type: unsigned int    Default: 1
<resolution>
Description: This number is multiplied by samples to determine the number of range data points returned. If resolution is less than one, range data is interpolated. If resolution is greater than one, range data is averaged.
Required: 0    Type: double    Default: 1
<min_angle>
Description: none
Required: 1    Type: double    Default: 0
<max_angle>
Description: Must be greater or equal to min_angle
Required: 1    Type: double    Default: 0
<range>
Description: specifies range properties of each simulated ray
Required: 1    Type: n/a
<min>
Description: The minimum distance for each ray.
Required: 1    Type: double    Default: 0
<max>
Description: The maximum distance for each ray.
Required: 1    Type: double    Default: 0
<resolution>
Description: Linear resolution of each ray.
Required: 0    Type: double    Default: 0
<noise>
Description: The properties of the noise model that should be applied to generated scans
Required: 0    Type: n/a
<type>
Description: The type of noise. Currently supported types are: "gaussian" (draw noise values independently for each beam from a Gaussian distribution).
Required: 1    Type: string    Default: gaussian
<mean>
Description: For type "gaussian," the mean of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<stddev>
Description: For type "gaussian," the standard deviation of the Gaussian distribution from which noise values are drawn.
Required: 0    Type: double    Default: 0
<rfidtag>
Description: none
Required: 0    Type: n/a
<rfid>
Description: none
Required: 0    Type: n/a
<sonar>
Description: These elements are specific to the sonar sensor.
Required: 0    Type: n/a
<min>
Description: Minimum range
Required: 1    Type: double    Default: 0
<max>
Description: Max range
Required: 1    Type: double    Default: 1
<radius>
Description: Radius of the sonar cone at max range.
Required: 1    Type: double    Default: 0.5
<transceiver>
Description: These elements are specific to a wireless transceiver.
Required: 0    Type: n/a
<essid>
Description: Service set identifier (network name)
Required: 0    Type: string    Default: wireless
<frequency>
Description: Specifies the frequency of transmission in MHz
Required: 0    Type: double    Default: 2442
<min_frequency>
Description: Only a frequency range is filtered. Here we set the lower bound (MHz).
Required: 0    Type: double    Default: 2412
<max_frequency>
Description: Only a frequency range is filtered. Here we set the upper bound (MHz).
Required: 0    Type: double    Default: 2484
<gain>
Description: Specifies the antenna gain in dBi
Required: 1    Type: double    Default: 2.5
<power>
Description: Specifies the transmission power in dBm
Required: 1    Type: double    Default: 14.5
<sensitivity>
Description: Mininum received signal power in dBm
Required: 0    Type: double    Default: -90
<force_torque>
Description: These elements are specific to the force torque sensor.
Required: 0    Type: n/a
<frame>
Description: Frame in which to report the wrench values.
Required: 0    Type: string    Default: parent
<plugin>
Description: A plugin is a dynamically loaded chunk of code. It can exist as a child of world, model, and sensor.
Required: *    Type: n/a
Attributes
name:
A unique name for the plugin, scoped to its parent.
Type: string   Default: __default__
filename:
Name of the shared library to load. If the filename is not a full path name, the file will be searched for in the configuration paths.
Type: string   Default: __default__

<light>
Description: The light element describes a light source.
Required: *    Type: n/a
Attributes
name:
A unique name for the light.
Type: string   Default: __default__
type:
The light type: point, directional, spot.
Type: string   Default: point

<cast_shadows>
Description: When true, the light will cast shadows.
Required: 0    Type: bool    Default: 0
<pose>
Description: A position and orientation in the global coordinate frame for the light.
Required: 0    Type: pose    Default: 0 0 0 0 -0 0
<diffuse>
Description: Diffuse light color
Required: 1    Type: color    Default: 1 1 1 1
<specular>
Description: Specular light color
Required: 1    Type: color    Default: 0.1 0.1 0.1 1
<attenuation>
Description: Light attenuation
Required: 0    Type: n/a
<range>
Description: Range of the light
Required: 1    Type: double    Default: 10
<linear>
Description: The linear attenuation factor: 1 means attenuate evenly over the distance.
Required: 0    Type: double    Default: 1
<constant>
Description: The constant attenuation factor: 1.0 means never attenuate, 0.0 is complete attenutation.
Required: 0    Type: double    Default: 1
<quadratic>
Description: The quadratic attenuation factor: adds a curvature to the attenuation.
Required: 0    Type: double    Default: 0
<direction>
Description: Direction of the light, only applicable for spot and directional lights.
Required: 1    Type: vector3    Default: 0 0 -1
<spot>
Description: Spot light parameters
Required: 0    Type: n/a
<inner_angle>
Description: Angle covered by the bright inner cone
Required: 1    Type: double    Default: 0
<outer_angle>
Description: Angle covered by the outer cone
Required: 1    Type: double    Default: 0
<falloff>
Description: The rate of falloff between the inner and outer cones. 1.0 means a linear falloff, less means slower falloff, higher means faster falloff.
Required: 1    Type: double    Default: 0