mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-05-12 23:42:23 +08:00
create temperature_compensation module
- this is a new module for temperature compensation that consolidates the functionality previously handled in the sensors module (calculating runtime thermal corrections) and the events module (online thermal calibration) - by collecting this functionality into a single module we can optionally disable it on systems where it's not used and save some flash (if disabled at build time) or memory (disabled at run time)
This commit is contained in:
@@ -5,12 +5,37 @@
|
||||
# NOTE: Script variables are declared/initialized/unset in the rcS script.
|
||||
#
|
||||
|
||||
set TEMP_CALIB_ARGS ""
|
||||
set TEMP_COMP_START ""
|
||||
|
||||
if param compare TC_A_ENABLE 1
|
||||
then
|
||||
set TEMP_COMP_START "true"
|
||||
fi
|
||||
|
||||
if param compare TC_B_ENABLE 1
|
||||
then
|
||||
set TEMP_COMP_START "true"
|
||||
fi
|
||||
|
||||
if param compare TC_G_ENABLE 1
|
||||
then
|
||||
set TEMP_COMP_START "true"
|
||||
fi
|
||||
|
||||
if [ "x$TEMP_COMP_START" != "x" ]
|
||||
then
|
||||
temperature_compensation start
|
||||
fi
|
||||
|
||||
unset TEMP_COMP_START
|
||||
|
||||
|
||||
#
|
||||
# Determine if a thermal calibration should be started.
|
||||
#
|
||||
|
||||
set TEMP_CALIB_ARGS ""
|
||||
|
||||
if param compare SYS_CAL_ACCEL 1
|
||||
then
|
||||
set TEMP_CALIB_ARGS "${TEMP_CALIB_ARGS} -a"
|
||||
@@ -34,7 +59,7 @@ fi
|
||||
#
|
||||
if [ "x$TEMP_CALIB_ARGS" != "x" ]
|
||||
then
|
||||
send_event temperature_calibration ${TEMP_CALIB_ARGS}
|
||||
temperature_compensation calibrate ${TEMP_CALIB_ARGS}
|
||||
fi
|
||||
|
||||
unset TEMP_CALIB_ARGS
|
||||
unset TEMP_CALIB_ARGS
|
||||
|
||||
@@ -59,6 +59,7 @@ px4_add_board(
|
||||
rc_update
|
||||
rover_pos_control
|
||||
sensors
|
||||
temperature_compensation
|
||||
sih
|
||||
#simulator
|
||||
vmount
|
||||
|
||||
@@ -76,6 +76,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -83,6 +83,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
#sih
|
||||
temperature_compensation
|
||||
simulator
|
||||
vmount
|
||||
vtol_att_control
|
||||
|
||||
@@ -68,6 +68,7 @@ px4_add_board(
|
||||
rc_update
|
||||
rover_pos_control
|
||||
sensors
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -68,6 +68,7 @@ px4_add_board(
|
||||
rc_update
|
||||
rover_pos_control
|
||||
sensors
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -76,6 +76,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -76,6 +76,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -53,6 +53,7 @@ px4_add_board(
|
||||
sensors
|
||||
sih
|
||||
#simulator
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -32,6 +32,7 @@ px4_add_board(
|
||||
navigator
|
||||
rc_update
|
||||
sensors
|
||||
#temperature_compensation
|
||||
SYSTEMCMDS
|
||||
bl_update
|
||||
config
|
||||
|
||||
@@ -55,6 +55,7 @@ px4_add_board(
|
||||
sensors
|
||||
sih
|
||||
#simulator
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -81,6 +81,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -82,6 +82,7 @@ px4_add_board(
|
||||
#rover_pos_control
|
||||
sensors
|
||||
#sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -46,6 +46,7 @@ px4_add_board(
|
||||
navigator
|
||||
rc_update
|
||||
sensors
|
||||
#temperature_compensation
|
||||
SYSTEMCMDS
|
||||
bl_update
|
||||
config
|
||||
|
||||
@@ -56,6 +56,7 @@ px4_add_board(
|
||||
#rover_pos_control
|
||||
sensors
|
||||
#sih
|
||||
#temperature_compensation
|
||||
vmount
|
||||
#vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -56,6 +56,7 @@ px4_add_board(
|
||||
#rover_pos_control
|
||||
sensors
|
||||
#sih
|
||||
#temperature_compensation
|
||||
vmount
|
||||
#vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -74,6 +74,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -80,6 +80,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -78,6 +78,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -64,6 +64,7 @@ px4_add_board(
|
||||
#rover_pos_control
|
||||
sensors
|
||||
#sih
|
||||
#temperature_compensation
|
||||
#vmount
|
||||
#vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -87,6 +87,7 @@ px4_add_board(
|
||||
#rover_pos_control
|
||||
sensors
|
||||
#sih
|
||||
#temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -56,6 +56,7 @@ px4_add_board(
|
||||
navigator
|
||||
rc_update
|
||||
sensors
|
||||
temperature_compensation
|
||||
vmount
|
||||
SYSTEMCMDS
|
||||
#bl_update
|
||||
|
||||
@@ -81,6 +81,7 @@ px4_add_board(
|
||||
battery_status
|
||||
rc_update
|
||||
sensors
|
||||
temperature_compensation
|
||||
vmount
|
||||
#vtol_att_control
|
||||
#airspeed_selector
|
||||
|
||||
@@ -54,6 +54,8 @@ px4_add_board(
|
||||
navigator
|
||||
rc_update
|
||||
sensors
|
||||
sih
|
||||
#temperature_compensation
|
||||
vmount
|
||||
SYSTEMCMDS
|
||||
#bl_update
|
||||
|
||||
@@ -50,6 +50,7 @@ px4_add_board(
|
||||
battery_status
|
||||
rc_update
|
||||
sensors
|
||||
temperature_compensation
|
||||
vmount
|
||||
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -86,6 +86,7 @@ px4_add_board(
|
||||
#rover_pos_control
|
||||
sensors
|
||||
#sih
|
||||
#temperature_compensation
|
||||
#vmount
|
||||
#vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -86,6 +86,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -86,6 +86,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -81,6 +81,7 @@ px4_add_board(
|
||||
rc_update
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
airspeed_selector
|
||||
|
||||
@@ -79,6 +79,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -77,6 +77,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -77,6 +77,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -81,6 +81,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -78,6 +78,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -10,13 +10,11 @@ px4_add_board(
|
||||
IO px4_io-v2_default
|
||||
TESTING
|
||||
UAVCAN_INTERFACES 2
|
||||
|
||||
SERIAL_PORTS
|
||||
GPS1:/dev/ttyS0
|
||||
TEL1:/dev/ttyS1
|
||||
TEL2:/dev/ttyS2
|
||||
TEL4:/dev/ttyS3
|
||||
|
||||
DRIVERS
|
||||
adc
|
||||
barometer # all available barometer drivers
|
||||
@@ -25,14 +23,15 @@ px4_add_board(
|
||||
camera_trigger
|
||||
differential_pressure # all available differential pressure drivers
|
||||
distance_sensor # all available distance sensor drivers
|
||||
dshot
|
||||
gps
|
||||
#heater
|
||||
imu/adis16448
|
||||
imu/adis16497
|
||||
#imu # all available imu drivers
|
||||
imu/adis16448
|
||||
imu/adis16477
|
||||
imu/adis16497
|
||||
imu/bmi055
|
||||
imu/mpu6000
|
||||
imu/mpu9250
|
||||
irlock
|
||||
lights/blinkm
|
||||
lights/rgbled
|
||||
@@ -41,6 +40,7 @@ px4_add_board(
|
||||
magnetometer # all available magnetometer drivers
|
||||
mkblctrl
|
||||
optical_flow # all available optical flow drivers
|
||||
#osd
|
||||
pca9685
|
||||
power_monitor/ina226
|
||||
#protocol_splitter
|
||||
@@ -56,9 +56,10 @@ px4_add_board(
|
||||
test_ppm
|
||||
tone_alarm
|
||||
uavcan
|
||||
|
||||
MODULES
|
||||
airspeed_selector
|
||||
attitude_estimator_q
|
||||
battery_status
|
||||
camera_feedback
|
||||
commander
|
||||
dataman
|
||||
@@ -66,7 +67,6 @@ px4_add_board(
|
||||
events
|
||||
fw_att_control
|
||||
fw_pos_control_l1
|
||||
rover_pos_control
|
||||
land_detector
|
||||
landing_target_estimator
|
||||
load_mon
|
||||
@@ -74,17 +74,17 @@ px4_add_board(
|
||||
logger
|
||||
mavlink
|
||||
mc_att_control
|
||||
mc_rate_control
|
||||
mc_pos_control
|
||||
mc_rate_control
|
||||
#micrortps_bridge
|
||||
navigator
|
||||
battery_status
|
||||
rc_update
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
airspeed_selector
|
||||
|
||||
SYSTEMCMDS
|
||||
bl_update
|
||||
config
|
||||
@@ -113,7 +113,6 @@ px4_add_board(
|
||||
usb_connected
|
||||
ver
|
||||
work_queue
|
||||
|
||||
EXAMPLES
|
||||
bottle_drop # OBC challenge
|
||||
fixedwing_control # Tutorial code from https://px4.io/dev/example_fixedwing_control
|
||||
@@ -124,5 +123,4 @@ px4_add_board(
|
||||
px4_simple_app # Tutorial code from http://dev.px4.io/en/apps/hello_sky.html
|
||||
rover_steering_control # Rover example app
|
||||
uuv_example_app
|
||||
|
||||
)
|
||||
|
||||
@@ -82,6 +82,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -59,6 +59,7 @@ px4_add_board(
|
||||
navigator
|
||||
rc_update
|
||||
sensors
|
||||
temperature_compensation
|
||||
vmount
|
||||
SYSTEMCMDS
|
||||
bl_update
|
||||
|
||||
@@ -10,13 +10,11 @@ px4_add_board(
|
||||
IO px4_io-v2_default
|
||||
TESTING
|
||||
UAVCAN_INTERFACES 2
|
||||
|
||||
SERIAL_PORTS
|
||||
GPS1:/dev/ttyS0
|
||||
TEL1:/dev/ttyS1
|
||||
TEL2:/dev/ttyS2
|
||||
TEL4:/dev/ttyS3
|
||||
|
||||
DRIVERS
|
||||
adc
|
||||
barometer # all available barometer drivers
|
||||
@@ -25,14 +23,15 @@ px4_add_board(
|
||||
camera_trigger
|
||||
differential_pressure # all available differential pressure drivers
|
||||
distance_sensor # all available distance sensor drivers
|
||||
dshot
|
||||
gps
|
||||
#heater
|
||||
imu/adis16448
|
||||
imu/adis16497
|
||||
#imu # all available imu drivers
|
||||
imu/adis16448
|
||||
imu/adis16477
|
||||
imu/adis16497
|
||||
imu/bmi055
|
||||
imu/mpu6000
|
||||
imu/mpu9250
|
||||
irlock
|
||||
lights/blinkm
|
||||
lights/rgbled
|
||||
@@ -41,6 +40,7 @@ px4_add_board(
|
||||
magnetometer # all available magnetometer drivers
|
||||
mkblctrl
|
||||
optical_flow # all available optical flow drivers
|
||||
#osd
|
||||
pca9685
|
||||
power_monitor/ina226
|
||||
#protocol_splitter
|
||||
@@ -56,9 +56,10 @@ px4_add_board(
|
||||
test_ppm
|
||||
tone_alarm
|
||||
uavcan
|
||||
|
||||
MODULES
|
||||
airspeed_selector
|
||||
attitude_estimator_q
|
||||
battery_status
|
||||
camera_feedback
|
||||
commander
|
||||
dataman
|
||||
@@ -66,7 +67,6 @@ px4_add_board(
|
||||
events
|
||||
fw_att_control
|
||||
fw_pos_control_l1
|
||||
rover_pos_control
|
||||
land_detector
|
||||
landing_target_estimator
|
||||
load_mon
|
||||
@@ -74,17 +74,17 @@ px4_add_board(
|
||||
logger
|
||||
mavlink
|
||||
mc_att_control
|
||||
mc_rate_control
|
||||
mc_pos_control
|
||||
mc_rate_control
|
||||
#micrortps_bridge
|
||||
navigator
|
||||
battery_status
|
||||
rc_update
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
airspeed_selector
|
||||
|
||||
SYSTEMCMDS
|
||||
bl_update
|
||||
config
|
||||
@@ -113,7 +113,6 @@ px4_add_board(
|
||||
usb_connected
|
||||
ver
|
||||
work_queue
|
||||
|
||||
EXAMPLES
|
||||
bottle_drop # OBC challenge
|
||||
fixedwing_control # Tutorial code from https://px4.io/dev/example_fixedwing_control
|
||||
@@ -124,5 +123,4 @@ px4_add_board(
|
||||
px4_simple_app # Tutorial code from http://dev.px4.io/en/apps/hello_sky.html
|
||||
rover_steering_control # Rover example app
|
||||
uuv_example_app
|
||||
|
||||
)
|
||||
|
||||
@@ -69,6 +69,7 @@ px4_add_board(
|
||||
rc_update
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
SYSTEMCMDS
|
||||
bl_update
|
||||
|
||||
@@ -59,6 +59,7 @@ px4_add_board(
|
||||
rc_update
|
||||
rover_pos_control
|
||||
sensors
|
||||
temperature_compensation
|
||||
vmount
|
||||
SYSTEMCMDS
|
||||
bl_update
|
||||
|
||||
@@ -82,6 +82,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -83,6 +83,7 @@ px4_add_board(
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -76,11 +76,13 @@ px4_add_board(
|
||||
mc_att_control
|
||||
mc_pos_control
|
||||
mc_rate_control
|
||||
#micrortps_bridge
|
||||
navigator
|
||||
rc_update
|
||||
rover_pos_control
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -51,6 +51,7 @@ px4_add_board(
|
||||
rc_update
|
||||
rover_pos_control
|
||||
sensors
|
||||
temperature_compensation
|
||||
sih
|
||||
#simulator
|
||||
vmount
|
||||
|
||||
@@ -45,6 +45,7 @@ px4_add_board(
|
||||
sensors
|
||||
#sih
|
||||
simulator
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -47,6 +47,7 @@ px4_add_board(
|
||||
sensors
|
||||
#sih
|
||||
simulator
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -45,6 +45,7 @@ px4_add_board(
|
||||
sensors
|
||||
#sih
|
||||
simulator
|
||||
temperature_compensation
|
||||
vmount
|
||||
vtol_att_control
|
||||
SYSTEMCMDS
|
||||
|
||||
@@ -57,6 +57,7 @@ px4_add_board(
|
||||
rc_update
|
||||
sensors
|
||||
sih
|
||||
temperature_compensation
|
||||
vmount
|
||||
SYSTEMCMDS
|
||||
bl_update
|
||||
|
||||
@@ -3,8 +3,6 @@ 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)
|
||||
|
||||
@@ -46,10 +46,6 @@ float32 baro_scale_1 # barometric pressure scale factors in the sensor frame
|
||||
float32 baro_offset_2 # barometric pressure offsets in the sensor frame in m/s/s
|
||||
float32 baro_scale_2 # barometric pressure scale factors in the sensor frame
|
||||
|
||||
uint8 selected_gyro_instance # gyro uORB topic instance for the voted sensor
|
||||
uint8 selected_accel_instance # accelerometer uORB topic instance for the voted sensor
|
||||
uint8 selected_baro_instance # barometric pressure uORB topic instance for the voted sensor
|
||||
|
||||
# Mapping from uORB index to parameter index for each sensor type. For example accel_mapping[1] contains the
|
||||
# compensation parameter system index for the sensor_accel uORB index 1 data.
|
||||
uint8[3] gyro_mapping
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user