/mc_state_observation

State observers for mc_rtc

Primary LanguageC++BSD 2-Clause "Simplified" LicenseBSD-2-Clause

mc_state_observation

This package implements additional state observers for mc_rtc. Some will be considered for inclusion in mc_rtc once they have been fully battle tested.

Here is an overview of the various observers implemented:

Observers

AttitudeObserver (estimation of IMU orientation)

This observer is directly inspired by the AttitudeEstimator of hrpsys-state-observation (that provides an improved replacement for the deprecated KalmanFilter component of hrpsys-private). The AttitudeEstimator component has been heavily used on HRP-5P.

Configuration options:

robot: JVRC1                # robot to observe (defaults to the main robot)
imuSensor: Accelerometer    # sensor providing the IMU measurements (defaults to the first bodysensor)
updateSensor: Accelerometer # name of the sensor in which to write the estimated orientation (defaults to imuSensor)
log_kf: false               # whether to log the kalman filter parameters (default: false)
init_from_control: true     # whether to initialize the kalman filter's orientation from the control robot state (default: true)
KamanFilter:                # configuration of the kalman filter (default values should be reasonable in most cases)
  compensateMode: true
  offset: [0,0,0]           # Apply an orientation offset to the estimation result (rpy or matrix)
  acc_cov: 0.003
  gyr_cov: 1e-10
  ori_acc_cov: 0.003
  lin_acc_cov: 1e-13
  state_cov: 3e-14
  state_init_cov: 1e-8

Dependencies