Technical Specs

β€’ linear velocities v = (𝑣
π‘₯
, 𝑣
𝑦
, 𝑣
𝑧
)
𝑇
in
π‘š
𝑠
,
β€’ angular velocities πœ” = (πœ”
π‘₯
, πœ”
𝑦
, πœ”
𝑧
)
𝑇
in
π‘Ÿπ‘Žπ‘‘
𝑠
,
β€’ gravity-compensated linear accelerations a = (π‘Ž
π‘₯
, π‘Ž
𝑦
, π‘Ž
𝑧
)
𝑇
in
π‘š
𝑠
2
, and
β€’ transformation from camera to IMU coordinate frame as pose with frame name and parent frame name.
For each component, the stream also provides the name of the coordinate frame in which the values are given.
Translation, rotation, and linear velocities are given in the world frame; angular velocities and accelerations are
given in the IMU frame (see Coordinate frames for state estimation, Section 6.3.1). All values refer to the IMU
frame’s origin. That means, for example, that linear velocity is the velocity of the IMU frame’s origin in the world
frame.
Lastly, the stream contains a possible
_
jump flag, which is set to true whenever the optional SLAM component
(see SLAM, Section 7.1) corrects the state estimation after finding a loop closure. The state estimate can jump in
this case, which should be considered when the values are used in a control loop. If SLAM is not running, the
jump flag can be ignored and will stay false.
IMU data stream (imu)
The IMU data stream called imu is provided at the IMU rate of 200 Hz. It consists of the acceleration in x, y, z
directions plus the angular velocities around these three axis. The values are calibrated but not bias- and gravity-
compensated, and are given in the IMU frame. The transformation between IMU and sensor frame is provided in
the real-time dynamics stream.
6.3.3 Services
The sensor dynamics component offers the following services for starting dynamics/motion estimation. All ser-
vices return a numerical code of the entered state. The meaning of the returned state codes and names are given
in Table 6.3.1.
Table 6.3.1: Possible states of the sensor dynamics component
State name Description
IDLE The component is ready, but idle
WAITING_FOR_INS Waiting for stereo INS to start up
WAITING_FOR_INS_AND_SLAM Waiting for stereo INS and SLAM to start up
RUNNING The stereo INS component is running (SLAM is not running)
WAITING_FOR_SLAM Waiting for SLAM to start up (stereo INS is running)
RUNNING_WITH_SLAM Both stereo INS and SLAM are running
STOPPING Transitional state when going to (or through IDLE)
FATAL A fatal error has occured (either in stereo INS or SLAM)
start Starts the stereo INS component. Transitions from state IDLE through WAITING
_
FOR
_
INS to RUNNING.
This service requires no arguments.
This service returns the following response:
{
"accepted": "bool",
"current
_
state": "string"
}
start
_
slam Starts the SLAM and – if not yet started – the stereo INS component. From state IDLE: Transi-
tions through WAITING
_
FOR
_
INS
_
AND
_
SLAM and WAITING
_
FOR
_
SLAM to RUNNING
_
WITH
_
SLAM. From state
RUNNING: Transitions through WAITING
_
FOR
_
SLAM to RUNNING
_
WITH
_
SLAM.
6.3. Sensor dynamics 42