The robot class is available using the nodelet interface, named stdr_robot/Robot. To load a new robot a STDR Server has to be running. New robots/nodelets can be loaded only from stdr_server, using either stdr_gui or command-line tools described below.

A parser for YAML and XML files is also provided, to load or save robots, sensors etc. More details on how to use YAML and XML files with stdr_simulator here.

Tf frames

A robot provides tf transforms for the pose of itself and its sensors. All transforms are relative to map_static frame. For more details about map tf frames see STDR Server tf frames. An example with one spawned robot follows (using rqt_tf_tree):

Sensor transforms

The frame_id for each sensor is defined on loading a robot from GUI or when using a YAML/XML file to describe a sensor. Each sensor frame_id has to have a unique name per robot. To avoid naming collisions with other robots it is also (automatically) prefixed with robot's name. Example: robot0_laser_1.

Robot transform

Each robot provides a tf transform with its current pose. The frame_id is automatically assigned and has the format robot<ID>. Example: robot2.