# Position model

[Model]

The position model simulates a mobile robot base. It can drive in one of two modes; either *differential*, i.e. able to control its speed and turn rate by driving left and roght wheels like a Pioneer robot, or

*omnidirectional*, i.e. able to control each of its three axes independently.

## Worldfile properties

**Summary and default values**

position ( # position properties drive "diff" localization "gps" localization_origin [ <defaults to model's start pose> ] watchdog_timeout -1.0 # odometry error model parameters, # only used if localization is set to "odom" # see description below for what the parameters mean odom_error [0.01 0.05 0.01 0.02 0.01 0.02] # model properties )

**Note**- Since Stage-1.6.5 the odom property has been removed. Stage will generate a warning if odom is defined in your worldfile. See localization_origin instead.

**Details**- drive "diff", "omni" or "car"
- select differential-steer mode (like a Pioneer), omnidirectional mode or carlike (velocity and steering angle).

- localization "gps" or "odom"
- if "gps" the position model reports its position with perfect accuracy. If "odom", a simple odometry model is used and position data drifts from the ground truth over time. The odometry model is parameterized by the odom_error property.

- localization_origin [x y theta]
- set the origin of the localization coordinate system. By default, this is copied from the model's initial pose, so the robot reports its position relative to the place it started out. Tip: If localization_origin is set to [0 0 0] and localization is "gps", the model will return its true global position. This is unrealistic, but useful if you want to abstract away the details of localization. Be prepared to justify the use of this mode in your research!

- odom_error [x xstd y ystd theta thetastd]
- parameters for the odometry error model used when specifying localization "odom". Defines a gaussian error model with a mean and standard deviation. A nonzero mean introduces a bias into the odometry, which is realistic for many robots. The standard deviations are with respect to a standard length (1m) for x and y, and with respect to a full revolution for theta. The exact interpretation of the parameters depends on the drive model. For differential drive, theta and y contribute to angle errors, based on the amount of turn (theta) and amount of distance traveled (y). Translational distance error is given by x. For other drive models, only the bias term is used. Note that due to rounding errors, setting these values to zero does NOT give you perfect localization - for that you need to choose localization "gps".

- watchdog_timeout [float]
- time, in seconds, since the last command was received after which the robot will be stopped. Set to -1.0 for no timeout (this is the default).

- drive "diff", "omni" or "car"

Generated on Thu Dec 13 14:35:18 2007 for Stage by 1.4.6