RTMaps Toolkits Documentation日本語

Basic Toolkit › Signal Processing components

imu_orientation_estimator

Estimates the orientation quaternion from a gyro and an accelerometer, optionally with a magnetometer, without GNSS.

Processing

Data format

Notes

References

Properties

NameDefaultDescription
filter_modeMahonyMahony or Madgwick.
Options: Mahony, Madgwick.
gyro_unitrad_per_sUnit of gyro: rad_per_s or deg_per_s.
Options: rad_per_s, deg_per_s.
use_magnetometerfalseCorrects the yaw with the input mag.
max_gap_in_ms500When the time between two gyro samples is longer than this, or not positive, the orientation is held for that sample.
mahony_kp1.0Strength of the correction (1/s). The time constant is 1/mahony_kp. Must be greater than 0.
mahony_ki0.01Strength of the estimation of the gyro bias (1/s^2). 0 disables it. Must not be negative.
madgwick_beta0.1Speed of the correction (rad/s). Must be greater than 0.
magnetic_declination_in_deg0.0Magnetic declination, east positive, -180 to 180. With 0 the yaw is referenced to the magnetic north.

Outputs

NameDescription
quaternionOrientation [w, x, y, z], body to world.
Type: Float64

Inputs

NameDescription
gyroAngular rate [x, y, z] in gyro_unit. Each sample updates the orientation and gives one output.
Type: Float64
accAcceleration [x, y, z], any unit. The latest valid sample is used.
Type: Float64
magMagnetic field [x, y, z], any unit, calibrated. Only with use_magnetometer. The latest valid sample is used.
Type: Float64