Skip to content

wheel

An optional third source of motion. Wheel odometry constrains the estimate along the directions the platform can actually move, which helps most where the geometry is degenerate, such as in a long corridor.

Option Default Starter
topic "/odom_experimental"
qos.reliability Reliable
covariance not set
kinematic_constraint_std 0.001
kinematic_model Full3D yes
ackermann.imu_to_rear_axle [0.0m, 0.0m, 0.0m] yes
to_imu_transform
  use_tf_tree false
  rotation see below

wheel.topic

Topic carrying nav_msgs/msg/Odometry. Wheel odometry is experimental and has not seen enough testing to be recommended, which is why the default topic name is one nothing publishes on.

wheel.qos.reliability

QoS the wheel odometry topic is subscribed with.

Accepted values: besteffort, reliable, systemdefault

Accepted values are case-insensitive.

wheel.covariance

How far the filter trusts the wheel odometry. Left unset, the covariance carried in the Odometry message is used instead.

Not set by default. Copy the line above into your configuration to enable it.

wheel.kinematic_constraint_std

Standard deviation of the kinematic constraints applied during undistortion. Lower values constrain harder.

Type: number.

wheel.kinematic_model

Which directions of motion the platform is capable of. Anything other than Full3D constrains the IEKF accordingly.

Accepted values: Full3D, Differential, DifferentialDrive, Wheeled2D, Holonomic2D, Holonomic, Ackermann

Accepted values are case-insensitive.

Part of the starter configuration.

wheel.ackermann.imu_to_rear_axle

Offset from the IMU to the centre of the rear axle, in the IMU frame. Only used when kinematic_model is Ackermann.

Type: array<length>.

Part of the starter configuration.

wheel.to_imu_transform

Orientation of the wheel odometry frame relative to the IMU. The velocity and its covariance stay in this frame until the filter evaluates the observation. The reference-point offset is taken from the platform base/Lidar/IMU calibration (or ackermann.imu_to_rear_axle).

wheel.to_imu_transform.use_tf_tree

Look the rotation up in the TF tree instead of using the value below. The lookup happens once, when the first odometry message arrives.

Type: boolean.

wheel.to_imu_transform.rotation

Rotation from the wheel odometry frame into the IMU frame.

Type: array<array<number>>.