select single system-wide wind estimate message (current best)

- publish wind estimate only from EKF, and wind speeds from airspeed selector to new separate topic (airspeed_wind)
 - rename message wind_estimate to wind
 - publish wind from currently used ekf instance (ekf2selector)

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
This commit is contained in:
Silvan Fuhrer
2021-02-20 19:15:01 +01:00
committed by GitHub
parent 9d65e9a980
commit 0ea8104344
17 changed files with 119 additions and 63 deletions

View File

@@ -41,6 +41,7 @@ set(msg_files
adc_report.msg
airspeed.msg
airspeed_validated.msg
airspeed_wind.msg
battery_status.msg
camera_capture.msg
camera_trigger.msg
@@ -66,12 +67,12 @@ set(msg_files
follow_target.msg
generator_status.msg
geofence_result.msg
gimbal_device_set_attitude.msg
gimbal_manager_set_attitude.msg
gimbal_manager_set_manual_control.msg
gimbal_device_attitude_status.msg
gimbal_device_information.msg
gimbal_device_set_attitude.msg
gimbal_manager_information.msg
gimbal_manager_set_attitude.msg
gimbal_manager_set_manual_control.msg
gimbal_manager_status.msg
gps_dump.msg
gps_inject_data.msg
@@ -181,7 +182,7 @@ set(msg_files
vehicle_trajectory_waypoint.msg
vtol_vehicle_status.msg
wheel_encoders.msg
wind_estimate.msg
wind.msg
yaw_estimator_status.msg
)

View File

@@ -16,8 +16,7 @@ float32 beta_innov_var # Sideslip measurement innovation variance
uint8 source # source of wind estimate
uint8 SOURCE_EKF = 0 # wind estimate source is the EKF
uint8 SOURCE_AS_BETA_ONLY = 1 # wind estimate from airspeed selector, only based on synthetic sideslip fusion
uint8 SOURCE_AS_SENSOR_1 = 2 # combined synthetic sideslip and airspeed fusion (data from first airspeed sensor)
uint8 SOURCE_AS_SENSOR_2 = 3 # combined synthetic sideslip and airspeed fusion (data from second airspeed sensor)
uint8 SOURCE_AS_SENSOR_3 = 4 # combined synthetic sideslip and airspeed fusion (data from third airspeed sensor)
uint8 SOURCE_AS_BETA_ONLY = 0 # wind estimate only based on synthetic sideslip fusion
uint8 SOURCE_AS_SENSOR_1 = 1 # combined synthetic sideslip and airspeed fusion (data from first airspeed sensor)
uint8 SOURCE_AS_SENSOR_2 = 2 # combined synthetic sideslip and airspeed fusion (data from second airspeed sensor)
uint8 SOURCE_AS_SENSOR_3 = 3 # combined synthetic sideslip and airspeed fusion (data from third airspeed sensor)

View File

@@ -225,7 +225,7 @@ rtps:
receive: true
- msg: vtol_vehicle_status
id: 105
- msg: wind_estimate
- msg: wind
id: 106
- msg: collision_constraints
id: 107
@@ -329,6 +329,8 @@ rtps:
id: 156
- msg: gimbal_manager_set_manual_control
id: 157
- msg: airspeed_wind
id: 158
########## multi topics: begin ##########
- msg: actuator_controls_0
id: 170
@@ -431,4 +433,7 @@ rtps:
- msg: actuator_controls_5
id: 202
alias: actuator_controls
- msg: estimator_wind
id: 203
alias: wind
########## multi topics: end ##########

16
msg/wind.msg Normal file
View File

@@ -0,0 +1,16 @@
uint64 timestamp # time since system start (microseconds)
uint64 timestamp_sample # the timestamp of the raw data (microseconds)
float32 windspeed_north # Wind component in north / X direction (m/sec)
float32 windspeed_east # Wind component in east / Y direction (m/sec)
float32 variance_north # Wind estimate error variance in north / X direction (m/sec)**2 - set to zero (no uncertainty) if not estimated
float32 variance_east # Wind estimate error variance in east / Y direction (m/sec)**2 - set to zero (no uncertainty) if not estimated
float32 tas_innov # True airspeed innovation
float32 tas_innov_var # True airspeed innovation variance
float32 beta_innov # Sideslip measurement innovation
float32 beta_innov_var # Sideslip measurement innovation variance
# TOPICS wind estimator_wind