Skip to content

Sensor Models

Available Sensor Models

Configuration

For both the simulator and the estimator a set of sensors to use needs to be defined in the respective .yamlfiles.

Example simulator_config.yaml
# Other Simulator settings / parameters 

# SENSORS
sensors:
  sensor_names: ["vicon", "imu", "wheel_encoders", "lighthouse"]
  vicon:
    R:
      value: [[0.0001], [0.0001], [0.0001]] #std of 1cm -> cov of 0.01*0.01=0.0001
      is_diag: true
    frequency: 200 # Hz
    key: vicon # optional, if not set us e name of sensor
    measurement_noise:
      type: multivariate_gaussian
      seed: 1
      outlier_probability: 0.0
      outlier_scale: 1
      mean:
        value: [[0], [0], [0]]
    delay: 0.0

  imu:
    R:
      value: [[0.01], [0.01], [0.01]]
      is_diag: true
    frequency: 200 #Hz
    key: imu # optional, if not set use name of sensor
    measurement_noise:
      type: multivariate_gaussian
      seed: 1
      outlier_probability: 0.0
      outlier_scale: 1
      mean:
        value: [[0], [0], [0]]
    delay: 0.0

  wheel_encoders:
    R:
      value: [[1], [1], [1], [1]]
      is_diag: true
    frequency: 200 #Hz
    key: wheel_encoders # optional, if not set use name of sensor
    measurement_noise:
      type: multivariate_gaussian
      seed: 1
      outlier_probability: 0.0
      outlier_scale: 1
      mean:
        value: [[0], [0], [0], [0]]
    delay: 0.0

  lighthouse:
    frequency: 50 #Hz
    sensor_pos:
      value: [[0.035, 0.02, 0.035, 0.02], [0.015, 0.015, -0.015, -0.015]]
    key: lighthouse
    base_stations: ["bs0"]

    bs0:
      bs_ID: 0
      R:
        # value: [[0.0000101, 0.00001, 0.00001, 0.00001], [0.00001, 0.0000101, 0.00001, 0.00001], [0.00001, 0.00001, 0.0000101, 0.00001], [0.00001, 0.00001, 0.00001, 0.0000101]]
        value: [[0.0000101, 0.00001, 0.00001, 0.00001],
                 [0.00001, 0.0000101, 0.00001, 0.00001],
                 [0.00001, 0.00001, 0.0000101, 0.00001],
                 [0.00001, 0.00001, 0.00001, 0.0000101]]
        is_diag: false
      P_bs:
        value: [[0.423652], [0.449405], [1.99268]]
      R_bs:
        value: [[-0.0939952, 0.993122, -0.0698045], [-0.0609725, -0.0757257, -0.995263], [-0.993704, -0.0892937, 0.067671]]
      dt1: -0.0508728
      dt2: 0.0464478
    measurement_noise:
      type: multivariate_gaussian
      seed: 1
      outlier_probability: 0.00
      outlier_scale: 1
      mean:
        value: [[0], [0], [0], [0]]
    delay: 0.0
Example estimator.yaml
# Other Estimator settings / parameters 

# SENSORS
sensors:
  sensor_names: ["vicon", "imu", "wheel_encoders"] # options: ["vicon", "imu", "wheel_encoder", "lighthouse"]
  vicon:
    R:
      value: [[0.001],[0.001],[0.001]]
      is_diag: true
    key: vicon # optional, if not set use name of sensor
    outlier_rejection:
      use_outlier_rejection: true
      outlier_rejection_type: "cov_threshold"
      outlier_threshold: 3
      max_consecutive_outliers: 5

  imu:
    R:
      value: [[0.1], [0.1], [0.1]]
      is_diag: true
    key: imu # optional, if not set use name of sensor
    outlier_rejection:
      use_outlier_rejection: true
      outlier_rejection_type: "cov_threshold"
      outlier_threshold: 5
      max_consecutive_outliers: 8

  wheel_encoders:
    R:
      value: [[1], [1], [1], [1]]
      is_diag: true
    key: wheel_encoders # optional, if not set use name of sensor
    outlier_rejection:
      use_outlier_rejection: true
      outlier_rejection_type: "cov_threshold"
      outlier_threshold: 5
      max_consecutive_outliers: 8

  lighthouse:
    sensor_pos:
      value: [[0.035, 0.02, 0.035, 0.02], [0.015, 0.015, -0.015, -0.015]]
    key: lighthouse
    base_stations: ["bs0"]
    bs0:
      bs_ID: 0
      R:
        value: [[0.0000101, 0.00001, 0.00001, 0.00001],
                 [0.00001, 0.0000101, 0.00001, 0.00001],
                 [0.00001, 0.00001, 0.0000101, 0.00001],
                 [0.00001, 0.00001, 0.00001, 0.0000101]]
      P_bs:
        value: [[0.423652], [0.449405], [1.99268]]
      R_bs:
        value: [[-0.0939952, 0.993122, -0.0698045], [-0.0609725, -0.0757257, -0.995263], [-0.993704, -0.0892937, 0.067671]]
      dt1: -0.0508728
      dt2: 0.0464478
    outlier_rejection:
      use_outlier_rejection: true
      outlier_rejection_type: "cov_threshold"
      outlier_threshold: 3
      max_consecutive_outliers: 8