sensor accel/gyro message cleanup

- split out integrated data into new standalone messages (sensor_accel_integrated and sensor_gyro_integrated)
 - publish sensor_gyro at full rate and remove sensor_gyro_control
 - limit sensor status publications to 10 Hz
 - remove unused accel/gyro raw ADC fields
 - add device IDs to sensor_bias and sensor_correction
    - vehicle_angular_velocity/vehicle_acceleration: check device ids before using bias and corrections
This commit is contained in:
Daniel Agar
2020-01-18 01:15:00 -05:00
committed by GitHub
parent 1d932f6ec9
commit bb465ca5b7
34 changed files with 696 additions and 756 deletions
+4 -3
View File
@@ -60,8 +60,8 @@ set(msg_files
ekf_gps_position.msg
esc_report.msg
esc_status.msg
estimator_status.msg
estimator_innovations.msg
estimator_status.msg
follow_target.msg
geofence_result.msg
gps_dump.msg
@@ -105,14 +105,15 @@ set(msg_files
satellite_info.msg
sensor_accel.msg
sensor_accel_fifo.msg
sensor_accel_integrated.msg
sensor_accel_status.msg
sensor_baro.msg
sensor_bias.msg
sensor_combined.msg
sensor_correction.msg
sensor_gyro.msg
sensor_gyro_control.msg
sensor_gyro_fifo.msg
sensor_gyro_integrated.msg
sensor_gyro_status.msg
sensor_mag.msg
sensor_preflight.msg
@@ -156,7 +157,7 @@ set(msg_files
vtol_vehicle_status.msg
wheel_encoders.msg
wind_estimate.msg
)
)
set(deprecated_msgs
ekf2_innovations.msg # 2019-11-22, Updated estimator interface and logging; replaced by 'estimator_innovations'.
+7 -19
View File
@@ -1,22 +1,10 @@
uint64 timestamp # time since system start (microseconds)
uint32 device_id # unique device ID for the sensor that does not change between power cycles
uint64 timestamp # time since system start (microseconds)
uint64 timestamp_sample
uint64 error_count
uint32 device_id # unique device ID for the sensor that does not change between power cycles
float32 x # acceleration in the NED X board axis in m/s^2
float32 y # acceleration in the NED Y board axis in m/s^2
float32 z # acceleration in the NED Z board axis in m/s^2
float32 x # acceleration in the NED X board axis in m/s^2
float32 y # acceleration in the NED Y board axis in m/s^2
float32 z # acceleration in the NED Z board axis in m/s^2
uint32 integral_dt # integration time (microseconds)
uint8 integral_samples # number of samples integrated
float32 x_integral # delta velocity in the NED X board axis in m/s over the integration time frame (integral_dt)
float32 y_integral # delta velocity in the NED Y board axis in m/s over the integration time frame (integral_dt)
float32 z_integral # delta velocity in the NED Z board axis in m/s over the integration time frame (integral_dt)
uint8 integral_clip_count # total clip count per integration period on any axis
float32 temperature # temperature in degrees celsius
float32 scaling # scaling from raw to m/s^2
int16 x_raw
int16 y_raw
int16 z_raw
float32 temperature # temperature in degrees celsius
+8 -8
View File
@@ -1,13 +1,13 @@
uint64 timestamp # time since system start (microseconds)
uint32 device_id # unique device ID for the sensor that does not change between power cycles
uint64 timestamp # time since system start (microseconds)
uint64 timestamp_sample
uint64 timestamp_sample # time since system start (microseconds)
uint32 device_id # unique device ID for the sensor that does not change between power cycles
float32 dt # delta time between samples (microseconds)
float32 dt # delta time between samples (microseconds)
float32 scale
uint8 samples # number of valid samples
uint8 samples # number of valid samples
int16[16] x # acceleration in the NED X board axis in m/s/s
int16[16] y # acceleration in the NED Y board axis in m/s/s
int16[16] z # acceleration in the NED Z board axis in m/s/s
int16[16] x # acceleration in the NED X board axis in m/s/s
int16[16] y # acceleration in the NED Y board axis in m/s/s
int16[16] z # acceleration in the NED Z board axis in m/s/s
+13
View File
@@ -0,0 +1,13 @@
uint64 timestamp # time since system start (microseconds)
uint64 timestamp_sample
uint32 device_id # unique device ID for the sensor that does not change between power cycles
float32 temperature # temperature in degrees celsius
uint64 error_count
float32[3] delta_velocity # delta velocity in the NED board axis in m/s over the integration time frame (dt)
uint16 dt # integration time (microseconds)
uint8 samples # number of samples integrated
uint8 clip_count # total clip count per integration period on any axis
+5 -4
View File
@@ -1,5 +1,6 @@
uint64 timestamp # time since system start (microseconds)
uint32 device_id # unique device ID for the sensor that does not change between power cycles
uint64 timestamp # time since system start (microseconds)
uint32 device_id # unique device ID for the sensor that does not change between power cycles
uint64 error_count
@@ -7,11 +8,11 @@ float32 temperature
uint8 rotation
uint64[3] clipping # clipping per axis
uint32[3] clipping # clipping per axis
uint16 measure_rate
uint16 sample_rate
float32 full_scale_range
float32 vibration_metric # high frequency vibration level in the IMU delta velocity data (m/s)
float32 vibration_metric # high frequency vibration level in the IMU delta velocity data (m/s)
+3
View File
@@ -7,8 +7,11 @@ uint64 timestamp # time since system start (microseconds)
# In-run bias estimates (subtract from uncorrected data)
uint32 gyro_device_id # unique device ID for the sensor that does not change between power cycles
float32[3] gyro_bias # gyroscope in-run bias in body frame (rad/s)
uint32 accel_device_id # unique device ID for the sensor that does not change between power cycles
float32[3] accel_bias # accelerometer in-run bias in body frame (m/s^2)
uint32 mag_device_id # unique device ID for the sensor that does not change between power cycles
float32[3] mag_bias # magnetometer in-run bias in body frame (Gauss)
+4
View File
@@ -55,3 +55,7 @@ uint8 selected_baro_instance # barometric pressure uORB topic instance for the v
uint8[3] gyro_mapping
uint8[3] accel_mapping
uint8[3] baro_mapping
uint32[3] gyro_device_ids
uint32[3] accel_device_ids
uint32[3] baro_device_ids
+7 -19
View File
@@ -1,22 +1,10 @@
uint64 timestamp # time since system start (microseconds)
uint32 device_id # unique device ID for the sensor that does not change between power cycles
uint64 timestamp # time since system start (microseconds)
uint64 timestamp_sample
uint64 error_count
uint32 device_id # unique device ID for the sensor that does not change between power cycles
float32 x # angular velocity in the NED X board axis in rad/s
float32 y # angular velocity in the NED Y board axis in rad/s
float32 z # angular velocity in the NED Z board axis in rad/s
float32 x # angular velocity in the NED X board axis in rad/s
float32 y # angular velocity in the NED Y board axis in rad/s
float32 z # angular velocity in the NED Z board axis in rad/s
uint32 integral_dt # integration time (microseconds)
uint8 integral_samples # number of samples integrated
float32 x_integral # delta angle in the NED X board axis in rad/s over the integration time frame (integral_dt)
float32 y_integral # delta angle in the NED Y board axis in rad/s over the integration time frame (integral_dt)
float32 z_integral # delta angle in the NED Z board axis in rad/s over the integration time frame (integral_dt)
uint8 integral_clip_count # total clip count per integration period on any axis
float32 temperature # temperature in degrees celsius
float32 scaling # scaling from raw to rad/s
int16 x_raw
int16 y_raw
int16 z_raw
float32 temperature # temperature in degrees celsius
-11
View File
@@ -1,11 +0,0 @@
# WARNING: Not recommend for custom development.
# This topic is part of an incremental refactoring of the sensor pipeline and will likely disappear post PX4 release v1.10
uint32 device_id # unique device ID for the sensor that does not change between power cycles
uint64 timestamp # time since system start (microseconds)
uint64 timestamp_sample # time the raw data was sampled (microseconds)
float32[3] xyz # filtered angular velocity in the board axis in rad/s
+8 -8
View File
@@ -1,13 +1,13 @@
uint32 device_id # unique device ID for the sensor that does not change between power cycles
uint64 timestamp # time since system start (microseconds)
uint64 timestamp_sample
uint64 timestamp # time since system start (microseconds)
uint64 timestamp_sample # time since system start (microseconds)
uint32 device_id # unique device ID for the sensor that does not change between power cycles
float32 dt # delta time between samples (microseconds)
float32 dt # delta time between samples (microseconds)
float32 scale
uint8 samples # number of valid samples
uint8 samples # number of valid samples
int16[16] x # angular velocity in the NED X board axis in rad/s
int16[16] y # angular velocity in the NED Y board axis in rad/s
int16[16] z # angular velocity in the NED Z board axis in rad/s
int16[16] x # angular velocity in the NED X board axis in rad/s
int16[16] y # angular velocity in the NED Y board axis in rad/s
int16[16] z # angular velocity in the NED Z board axis in rad/s
+13
View File
@@ -0,0 +1,13 @@
uint64 timestamp # time since system start (microseconds)
uint64 timestamp_sample
uint32 device_id # unique device ID for the sensor that does not change between power cycles
float32 temperature # temperature in degrees celsius
uint64 error_count
float32[3] delta_angle # delta angle in the NED board axis in rad/s over the integration time frame (dt)
uint16 dt # integration time (microseconds)
uint8 samples # number of samples integrated
uint8 clip_count # total clip count per integration period on any axis
+6 -5
View File
@@ -1,5 +1,6 @@
uint64 timestamp # time since system start (microseconds)
uint32 device_id # unique device ID for the sensor that does not change between power cycles
uint64 timestamp # time since system start (microseconds)
uint32 device_id # unique device ID for the sensor that does not change between power cycles
uint64 error_count
@@ -7,13 +8,13 @@ float32 temperature
uint8 rotation
uint64[3] clipping # clipping per axis
uint32[3] clipping # clipping per axis
uint16 measure_rate
uint16 sample_rate
float32 full_scale_range
float32 vibration_metric # high frequency vibration level in the IMU delta angle data (rad)
float32 vibration_metric # high frequency vibration level in the IMU delta angle data (rad)
float32 coning_vibration # Level of coning vibration in the IMU delta angles (rad^2)
float32 coning_vibration # Level of coning vibration in the IMU delta angles (rad^2)
+4 -2
View File
@@ -256,8 +256,6 @@ rtps:
id: 112
- msg: vehicle_acceleration
id: 113
- msg: sensor_gyro_control
id: 114
- msg: airspeed_validated
id: 115
- msg: onboard_computer_status
@@ -273,6 +271,10 @@ rtps:
id: 120
- msg: sensor_gyro_status
id: 121
- msg: sensor_accel_integrated
id: 122
- msg: sensor_gyro_integrated
id: 123
########## multi topics: begin ##########
- msg: actuator_controls_0
id: 150