mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-05-26 10:40:05 +08:00
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 8a4d93cca3 |
@@ -28,7 +28,7 @@ pipeline {
|
||||
]
|
||||
|
||||
def base_builds = [
|
||||
target: ["px4_sitl_default"],
|
||||
target: ["px4_sitl_rtps"],
|
||||
image: docker_images.base,
|
||||
archive: false
|
||||
]
|
||||
@@ -58,7 +58,6 @@ pipeline {
|
||||
"holybro_can-gps-v1_default",
|
||||
"holybro_durandal-v1_default",
|
||||
"holybro_kakutef7_default",
|
||||
"holybro_kakuteh7_default",
|
||||
"holybro_pix32v5_default",
|
||||
"matek_h743-slim",
|
||||
"matek_gnss-m9n-f4_canbootloader",
|
||||
|
||||
@@ -705,21 +705,18 @@ void quickCalibrate() {
|
||||
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "gyro_calibration status || true"'
|
||||
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate accel quick; sleep 1"'
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate accel quick"'
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show CAL_ACC*"'
|
||||
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate gyro; sleep 2"'
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate gyro"'
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show CAL_GYRO*"'
|
||||
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate level; sleep 2"'
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate level"'
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show SENS*"'
|
||||
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate mag quick; sleep 1"'
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate mag quick"'
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show CAL_MAG*"'
|
||||
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate baro; sleep 5"'
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show CAL_BARO*"'
|
||||
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show CAL_*"' // parameters after
|
||||
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "sensors status"'
|
||||
}
|
||||
|
||||
@@ -20,7 +20,6 @@ jobs:
|
||||
ark_can-flow,
|
||||
ark_can-gps,
|
||||
ark_can-rtk-gps,
|
||||
ark_cannode,
|
||||
atl_mantis-edu,
|
||||
av_x-v1,
|
||||
bitcraze_crazyflie,
|
||||
|
||||
@@ -29,9 +29,9 @@ jobs:
|
||||
token: ${{ secrets.ACCESS_TOKEN }}
|
||||
|
||||
- name: Download MAVSDK
|
||||
run: wget "https://github.com/mavlink/MAVSDK/releases/download/v$(cat test/mavsdk_tests/MAVSDK_VERSION)/libmavsdk-dev_$(cat test/mavsdk_tests/MAVSDK_VERSION)_ubuntu20.04_amd64.deb"
|
||||
run: wget "https://github.com/mavlink/MAVSDK/releases/download/v$(cat test/mavsdk_tests/MAVSDK_VERSION)/mavsdk_$(cat test/mavsdk_tests/MAVSDK_VERSION)_ubuntu20.04_amd64.deb"
|
||||
- name: Install MAVSDK
|
||||
run: dpkg -i "libmavsdk-dev_$(cat test/mavsdk_tests/MAVSDK_VERSION)_ubuntu20.04_amd64.deb"
|
||||
run: dpkg -i "mavsdk_$(cat test/mavsdk_tests/MAVSDK_VERSION)_ubuntu20.04_amd64.deb"
|
||||
|
||||
- name: Prepare ccache timestamp
|
||||
id: ccache_cache_timestamp
|
||||
|
||||
@@ -64,6 +64,3 @@
|
||||
path = src/lib/crypto/libtommath
|
||||
url = https://github.com/PX4/libtommath.git
|
||||
branch = px4
|
||||
[submodule "src/modules/microdds_client/Micro-XRCE-DDS-Client"]
|
||||
path = src/modules/microdds_client/Micro-XRCE-DDS-Client
|
||||
url = https://github.com/eProsima/Micro-XRCE-DDS-Client.git
|
||||
|
||||
Vendored
-10
@@ -121,16 +121,6 @@ CONFIG:
|
||||
buildType: MinSizeRel
|
||||
settings:
|
||||
CONFIG: ark_can-rtk-gps_canbootloader
|
||||
ark_cannode_default:
|
||||
short: ark_cannode_default
|
||||
buildType: MinSizeRel
|
||||
settings:
|
||||
CONFIG: ark_cannode_default
|
||||
ark_cannode_canbootloader:
|
||||
short: ark_cannode_canbootloader
|
||||
buildType: MinSizeRel
|
||||
settings:
|
||||
CONFIG: ark_cannode_canbootloader
|
||||
atl_mantis-edu_default:
|
||||
short: atl_mantis-edu
|
||||
buildType: MinSizeRel
|
||||
|
||||
@@ -412,7 +412,6 @@ endif()
|
||||
# subdirectories
|
||||
#
|
||||
add_library(parameters_interface INTERFACE)
|
||||
add_library(kernel_parameters_interface INTERFACE)
|
||||
|
||||
include(px4_add_library)
|
||||
add_subdirectory(src/lib EXCLUDE_FROM_ALL)
|
||||
@@ -435,13 +434,7 @@ add_subdirectory(src/lib/metadata EXCLUDE_FROM_ALL)
|
||||
|
||||
# must be the last module before firmware
|
||||
add_subdirectory(src/lib/parameters EXCLUDE_FROM_ALL)
|
||||
|
||||
if(${PX4_PLATFORM} STREQUAL "nuttx" AND NOT CONFIG_BUILD_FLAT)
|
||||
target_link_libraries(parameters_interface INTERFACE usr_parameters)
|
||||
target_link_libraries(kernel_parameters_interface INTERFACE parameters)
|
||||
else()
|
||||
target_link_libraries(parameters_interface INTERFACE parameters)
|
||||
endif()
|
||||
|
||||
# firmware added last to generate the builtin for included modules
|
||||
add_subdirectory(platforms/${PX4_PLATFORM})
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
# enable fusion of landing target velocity
|
||||
param set-default LTEST_MODE 1
|
||||
param set-default PLD_HACC_RAD 0.1
|
||||
param set-default RTL_PLD_MD 2
|
||||
|
||||
# Start up Landing Target Estimator module
|
||||
landing_target_estimator start
|
||||
|
||||
@@ -8,5 +8,8 @@
|
||||
# disable circuit breaker for airspeed sensor
|
||||
param set-default CBRK_AIRSPD_CHK 162128
|
||||
|
||||
set MAV_TYPE 12
|
||||
param set MAV_TYPE ${MAV_TYPE}
|
||||
|
||||
set MIXER_FILE etc/mixers-sitl/uuv_x_sitl.main.mix
|
||||
set MIXER custom
|
||||
|
||||
@@ -8,5 +8,8 @@
|
||||
# disable circuit breaker for airspeed sensor
|
||||
param set-default CBRK_AIRSPD_CHK 162128
|
||||
|
||||
set MAV_TYPE 12
|
||||
param set MAV_TYPE ${MAV_TYPE}
|
||||
|
||||
set MIXER_FILE etc/mixers-sitl/uuv_x_sitl.main.mix
|
||||
set MIXER custom
|
||||
|
||||
@@ -67,3 +67,4 @@ param set-default PWM_MAIN_FUNC7 107
|
||||
param set-default PWM_MAIN_FUNC8 108
|
||||
|
||||
set MIXER skip
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
# param set-default SYS_CTRL_ALLOC 1
|
||||
param set-default CA_AIRFRAME 2
|
||||
|
||||
param set-default CA_ROTOR_COUNT 5
|
||||
param set-default CA_ROTOR_COUNT 4
|
||||
param set-default CA_ROTOR0_PX 0.1515
|
||||
param set-default CA_ROTOR0_PY 0.245
|
||||
param set-default CA_ROTOR0_KM 0.05
|
||||
@@ -23,9 +23,6 @@ param set-default CA_ROTOR2_KM -0.05
|
||||
param set-default CA_ROTOR3_PX -0.1515
|
||||
param set-default CA_ROTOR3_PY 0.1875
|
||||
param set-default CA_ROTOR3_KM -0.05
|
||||
param set-default CA_ROTOR4_AX 1.0
|
||||
param set-default CA_ROTOR4_AZ 0.0
|
||||
param set-default CA_ROTOR4_PX 0.2
|
||||
|
||||
param set-default CA_SV_CS_COUNT 3
|
||||
param set-default CA_SV_CS0_TYPE 1
|
||||
@@ -71,6 +68,7 @@ param set-default MPC_XY_VEL_I_ACC 4
|
||||
param set-default MPC_XY_VEL_D_ACC 0.1
|
||||
|
||||
param set-default NAV_ACC_RAD 5
|
||||
param set-default NAV_LOITER_RAD 80
|
||||
|
||||
param set-default VT_FWD_THRUST_EN 4
|
||||
param set-default VT_F_TRANS_THR 0.75
|
||||
@@ -79,5 +77,7 @@ param set-default VT_FW_MOT_OFFID 1234
|
||||
param set-default VT_B_TRANS_DUR 8
|
||||
param set-default VT_TYPE 2
|
||||
|
||||
set MAV_TYPE 22
|
||||
|
||||
set MIXER_FILE etc/mixers-sitl/standard_vtol_sitl.main.mix
|
||||
set MIXER custom
|
||||
|
||||
@@ -7,8 +7,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.vtol_defaults
|
||||
|
||||
param set-default MAV_TYPE 20
|
||||
|
||||
# param set-default SYS_CTRL_ALLOC 1
|
||||
param set-default CA_AIRFRAME 4
|
||||
|
||||
@@ -70,6 +68,7 @@ param set-default MPC_XY_VEL_I_ACC 4
|
||||
param set-default MPC_XY_VEL_D_ACC 0.1
|
||||
|
||||
param set-default NAV_ACC_RAD 5
|
||||
param set-default NAV_LOITER_RAD 80
|
||||
|
||||
param set-default VT_FW_DIFTHR_EN 1
|
||||
param set-default VT_FW_DIFTHR_SC 0.5
|
||||
@@ -79,5 +78,7 @@ param set-default VT_TYPE 0
|
||||
|
||||
param set-default WV_EN 0
|
||||
|
||||
set MAV_TYPE 20
|
||||
|
||||
set MIXER_FILE etc/mixers-sitl/quad_x_vtol.main.mix
|
||||
set MIXER custom
|
||||
|
||||
@@ -7,8 +7,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.vtol_defaults
|
||||
|
||||
param set-default MAV_TYPE 21
|
||||
|
||||
# param set-default SYS_CTRL_ALLOC 1
|
||||
param set-default CA_AIRFRAME 3
|
||||
|
||||
@@ -82,6 +80,7 @@ param set-default MPC_XY_VEL_I_ACC 4
|
||||
param set-default MPC_XY_VEL_D_ACC 0.1
|
||||
|
||||
param set-default NAV_ACC_RAD 5
|
||||
param set-default NAV_LOITER_RAD 80
|
||||
|
||||
param set-default VT_B_TRANS_DUR 8
|
||||
param set-default VT_FWD_THRUST_EN 4
|
||||
@@ -89,5 +88,7 @@ param set-default VT_MOT_ID 1234
|
||||
param set-default VT_TILT_TRANS 0.6
|
||||
param set-default VT_TYPE 1
|
||||
|
||||
set MAV_TYPE 21
|
||||
|
||||
set MIXER_FILE etc/mixers-sitl/tiltrotor_sitl.main.mix
|
||||
set MIXER custom
|
||||
|
||||
@@ -38,6 +38,7 @@ param set-default MPC_XY_VEL_I_ACC 4
|
||||
param set-default MPC_XY_VEL_D_ACC 0.1
|
||||
|
||||
param set-default NAV_ACC_RAD 5
|
||||
param set-default NAV_LOITER_RAD 80
|
||||
|
||||
param set-default VT_FWD_THRUST_EN 4
|
||||
param set-default VT_F_TRANS_THR 0.75
|
||||
@@ -50,5 +51,7 @@ param set-default RC_MAP_AUX1 8
|
||||
param set-default RC_MAP_AUX2 9
|
||||
param set-default RC_MAP_AUX3 10
|
||||
|
||||
set MAV_TYPE 22
|
||||
|
||||
set MIXER_FILE etc/mixers-sitl/standard_vtol_sitl.main.mix
|
||||
set MIXER custom
|
||||
|
||||
@@ -37,4 +37,6 @@ param set-default PWM_MAIN_FUNC2 201
|
||||
param set-default PWM_MAIN_FUNC6 101
|
||||
param set-default PWM_MAIN_FUNC7 101
|
||||
|
||||
set MAV_TYPE 10
|
||||
|
||||
set MIXER_FILE skip
|
||||
|
||||
@@ -37,4 +37,6 @@ param set-default PWM_MAIN_FUNC2 101
|
||||
param set-default PWM_MAIN_FUNC6 102
|
||||
param set-default PWM_MAIN_FUNC7 102
|
||||
|
||||
set MAV_TYPE 10
|
||||
|
||||
set MIXER_FILE skip
|
||||
|
||||
@@ -10,8 +10,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.rover_defaults
|
||||
|
||||
param set-default MAV_TYPE 10
|
||||
|
||||
param set-default GND_L1_DIST 5
|
||||
param set-default GND_SP_CTRL_MODE 1
|
||||
param set-default GND_SPEED_D 3
|
||||
@@ -35,4 +33,6 @@ param set-default CBRK_AIRSPD_CHK 162128
|
||||
param set-default GND_MAX_ANG 0.6
|
||||
param set-default GND_WHEEL_BASE 3.0
|
||||
|
||||
set MAV_TYPE 10
|
||||
|
||||
set MIXER_FILE etc/mixers-sitl/rover_ackermann_sitl.main.mix
|
||||
|
||||
@@ -47,4 +47,6 @@ param set-default CA_R_REV 3
|
||||
param set-default PWM_MAIN_FUNC1 101
|
||||
param set-default PWM_MAIN_FUNC2 102
|
||||
|
||||
set MAV_TYPE 11
|
||||
|
||||
set MIXER skip
|
||||
|
||||
@@ -9,8 +9,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
|
||||
param set-default MAV_TYPE 13
|
||||
|
||||
param set-default MC_PITCHRATE_P 0.1
|
||||
param set-default MC_PITCHRATE_I 0.05
|
||||
param set-default MC_PITCH_P 6.0
|
||||
@@ -26,4 +24,6 @@ param set-default TRIG_MODE 4
|
||||
param set-default MNT_MODE_IN 4
|
||||
param set-default MNT_DO_STAB 2
|
||||
|
||||
set MAV_TYPE 13
|
||||
|
||||
set MIXER hexa_x
|
||||
|
||||
@@ -7,8 +7,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
|
||||
param set-default MAV_TYPE 13
|
||||
|
||||
param set-default MC_PITCHRATE_P 0.0800
|
||||
param set-default MC_PITCHRATE_I 0.0400
|
||||
param set-default MC_PITCHRATE_D 0.0010
|
||||
@@ -28,4 +26,6 @@ param set-default MNT_MODE_IN 4
|
||||
param set-default MNT_MODE_OUT 2
|
||||
param set-default MAV_PROTO_VER 2
|
||||
|
||||
set MAV_TYPE 13
|
||||
|
||||
set MIXER hexa_x
|
||||
|
||||
@@ -7,8 +7,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
|
||||
param set-default MAV_TYPE 13
|
||||
|
||||
param set-default SYS_CTRL_ALLOC 1
|
||||
|
||||
param set-default MC_PITCHRATE_P 0.0800
|
||||
@@ -60,5 +58,7 @@ param set-default PWM_MAIN_FUNC4 104
|
||||
param set-default PWM_MAIN_FUNC5 105
|
||||
param set-default PWM_MAIN_FUNC6 106
|
||||
|
||||
set MAV_TYPE 13
|
||||
|
||||
set MIXER skip
|
||||
set MIXER_AUX none
|
||||
|
||||
@@ -24,6 +24,7 @@ fi
|
||||
|
||||
# initialize script variables
|
||||
set IO_PRESENT no
|
||||
set MAV_TYPE none
|
||||
set MIXER none
|
||||
set MIXER_AUX none
|
||||
set MIXER_FILE none
|
||||
@@ -223,13 +224,6 @@ rc_update start
|
||||
manual_control start
|
||||
sensors start
|
||||
commander start
|
||||
|
||||
# Configure vehicle type specific parameters.
|
||||
# Note: rc.vehicle_setup is the entry point for rc.interface,
|
||||
# rc.fw_apps, rc.mc_apps, rc.rover_apps, and rc.vtol_apps.
|
||||
#
|
||||
. ${R}etc/init.d/rc.vehicle_setup
|
||||
|
||||
navigator start
|
||||
|
||||
# Try to start the micrortps_client with UDP transport if module exists
|
||||
@@ -259,6 +253,12 @@ then
|
||||
gyro_calibration start
|
||||
fi
|
||||
|
||||
# Configure vehicle type specific parameters.
|
||||
# Note: rc.vehicle_setup is the entry point for rc.interface,
|
||||
# rc.fw_apps, rc.mc_apps, rc.rover_apps, and rc.vtol_apps.
|
||||
#
|
||||
. ${R}etc/init.d/rc.vehicle_setup
|
||||
|
||||
#user defined mavlink streams for instances can be in PATH
|
||||
. px4-rc.mavlink
|
||||
|
||||
|
||||
@@ -39,26 +39,6 @@ param set-default FW_RR_P 0.3
|
||||
|
||||
param set-default RWTO_TKOFF 1
|
||||
|
||||
param set-default CA_AIRFRAME 1
|
||||
param set-default CA_ROTOR_COUNT 1
|
||||
param set-default CA_ROTOR0_PX 0.3
|
||||
param set-default CA_SV_CS_COUNT 4
|
||||
param set-default CA_SV_CS0_TRQ_R 0.5
|
||||
param set-default CA_SV_CS0_TYPE 2
|
||||
param set-default CA_SV_CS1_TRQ_P 1.0
|
||||
param set-default CA_SV_CS1_TYPE 3
|
||||
param set-default CA_SV_CS2_TRQ_Y 1.0
|
||||
param set-default CA_SV_CS2_TYPE 4
|
||||
param set-default CA_SV_CS3_TYPE 10
|
||||
|
||||
param set-default HIL_ACT_REV 2
|
||||
param set-default HIL_ACT_FUNC1 201
|
||||
param set-default HIL_ACT_FUNC2 202
|
||||
param set-default HIL_ACT_FUNC3 203
|
||||
param set-default HIL_ACT_FUNC4 101
|
||||
param set-default HIL_ACT_FUNC5 204
|
||||
param set-default HIL_ACT_FUNC6 400
|
||||
|
||||
param set SYS_HITL 1
|
||||
|
||||
# disable some checks to allow to fly
|
||||
|
||||
@@ -36,5 +36,4 @@ param set-default MC_PITCHRATE_P 0.19
|
||||
param set-default MC_PITCHRATE_I 0.05
|
||||
param set-default MC_PITCHRATE_D 0.004
|
||||
param set-default MC_YAW_P 4
|
||||
|
||||
set MIXER quad_w
|
||||
|
||||
@@ -15,23 +15,6 @@ set MIXER quad_x
|
||||
|
||||
param set SYS_HITL 1
|
||||
|
||||
param set-default CA_ROTOR_COUNT 4
|
||||
param set-default CA_ROTOR0_PX 0.15
|
||||
param set-default CA_ROTOR0_PY 0.15
|
||||
param set-default CA_ROTOR1_PX -0.15
|
||||
param set-default CA_ROTOR1_PY -0.15
|
||||
param set-default CA_ROTOR2_PX 0.15
|
||||
param set-default CA_ROTOR2_PY -0.15
|
||||
param set-default CA_ROTOR2_KM -0.05
|
||||
param set-default CA_ROTOR3_PX -0.15
|
||||
param set-default CA_ROTOR3_PY 0.15
|
||||
param set-default CA_ROTOR3_KM -0.05
|
||||
|
||||
param set-default HIL_ACT_FUNC1 101
|
||||
param set-default HIL_ACT_FUNC2 102
|
||||
param set-default HIL_ACT_FUNC3 103
|
||||
param set-default HIL_ACT_FUNC4 104
|
||||
|
||||
# disable some checks to allow to fly
|
||||
# - with usb
|
||||
param set-default CBRK_USB_CHK 197848
|
||||
|
||||
@@ -49,6 +49,7 @@ param set-default MPC_Z_VEL_MAX_DN 1.5
|
||||
|
||||
param set-default NAV_ACC_RAD 5
|
||||
param set-default NAV_DLL_ACT 2
|
||||
param set-default NAV_LOITER_RAD 80
|
||||
|
||||
param set-default RTL_DESCEND_ALT 10
|
||||
param set-default RTL_RETURN_ALT 30
|
||||
@@ -60,37 +61,6 @@ param set-default VT_MOT_ID 1234
|
||||
param set-default VT_FW_MOT_OFFID 1234
|
||||
param set-default VT_TYPE 2
|
||||
|
||||
param set-default CA_AIRFRAME 2
|
||||
param set-default CA_ROTOR_COUNT 5
|
||||
param set-default CA_ROTOR0_PX 0.15
|
||||
param set-default CA_ROTOR0_PY 0.15
|
||||
param set-default CA_ROTOR1_PX -0.15
|
||||
param set-default CA_ROTOR1_PY -0.15
|
||||
param set-default CA_ROTOR2_PX 0.15
|
||||
param set-default CA_ROTOR2_PY -0.15
|
||||
param set-default CA_ROTOR2_KM -0.05
|
||||
param set-default CA_ROTOR3_PX -0.15
|
||||
param set-default CA_ROTOR3_PY 0.15
|
||||
param set-default CA_ROTOR3_KM -0.05
|
||||
param set-default CA_ROTOR4_AX 1.0
|
||||
param set-default CA_ROTOR4_AZ 0.0
|
||||
param set-default CA_ROTOR4_PX 0.2
|
||||
|
||||
param set-default CA_SV_CS_COUNT 3
|
||||
param set-default CA_SV_CS1_TRQ_R 0.5
|
||||
param set-default CA_SV_CS1_TYPE 2
|
||||
param set-default CA_SV_CS2_TRQ_P 1.0
|
||||
param set-default CA_SV_CS2_TYPE 3
|
||||
|
||||
param set-default HIL_ACT_FUNC1 101
|
||||
param set-default HIL_ACT_FUNC2 102
|
||||
param set-default HIL_ACT_FUNC3 103
|
||||
param set-default HIL_ACT_FUNC4 104
|
||||
param set-default HIL_ACT_FUNC5 105
|
||||
param set-default HIL_ACT_FUNC6 201
|
||||
param set-default HIL_ACT_FUNC7 202
|
||||
param set-default HIL_ACT_FUNC8 203
|
||||
|
||||
|
||||
param set SYS_HITL 1
|
||||
|
||||
@@ -103,7 +73,7 @@ param set-default CBRK_SUPPLY_CHK 894281
|
||||
param set-default COM_PREARM_MODE 0
|
||||
param set-default CBRK_IO_SAFETY 22027
|
||||
|
||||
param set-default MAV_TYPE 22
|
||||
set MAV_TYPE 22
|
||||
|
||||
set MIXER standard_vtol_hitl
|
||||
|
||||
|
||||
@@ -17,23 +17,6 @@ set PWM_OUT 1234
|
||||
|
||||
param set UAVCAN_ENABLE 0
|
||||
|
||||
param set-default CA_ROTOR_COUNT 4
|
||||
param set-default CA_ROTOR0_PX 0.15
|
||||
param set-default CA_ROTOR0_PY 0.15
|
||||
param set-default CA_ROTOR1_PX -0.15
|
||||
param set-default CA_ROTOR1_PY -0.15
|
||||
param set-default CA_ROTOR2_PX 0.15
|
||||
param set-default CA_ROTOR2_PY -0.15
|
||||
param set-default CA_ROTOR2_KM -0.05
|
||||
param set-default CA_ROTOR3_PX -0.15
|
||||
param set-default CA_ROTOR3_PY 0.15
|
||||
param set-default CA_ROTOR3_KM -0.05
|
||||
|
||||
param set-default HIL_ACT_FUNC1 101
|
||||
param set-default HIL_ACT_FUNC2 102
|
||||
param set-default HIL_ACT_FUNC3 103
|
||||
param set-default HIL_ACT_FUNC4 104
|
||||
|
||||
# set SYS_HITL to 2 to start the SIH and avoid sensors startup
|
||||
param set SYS_HITL 2
|
||||
|
||||
|
||||
@@ -17,26 +17,6 @@ set PWM_OUT 1234
|
||||
|
||||
param set UAVCAN_ENABLE 0
|
||||
|
||||
param set-default CA_AIRFRAME 1
|
||||
param set-default CA_ROTOR_COUNT 1
|
||||
param set-default CA_ROTOR0_PX 0.3
|
||||
param set-default CA_SV_CS_COUNT 4
|
||||
param set-default CA_SV_CS0_TRQ_R 0.5
|
||||
param set-default CA_SV_CS0_TYPE 2
|
||||
param set-default CA_SV_CS1_TRQ_P 1.0
|
||||
param set-default CA_SV_CS1_TYPE 3
|
||||
param set-default CA_SV_CS2_TRQ_Y 1.0
|
||||
param set-default CA_SV_CS2_TYPE 4
|
||||
param set-default CA_SV_CS3_TYPE 10
|
||||
|
||||
param set-default HIL_ACT_REV 2
|
||||
param set-default HIL_ACT_FUNC1 201
|
||||
param set-default HIL_ACT_FUNC2 202
|
||||
param set-default HIL_ACT_FUNC3 203
|
||||
param set-default HIL_ACT_FUNC4 101
|
||||
param set-default HIL_ACT_FUNC5 204
|
||||
param set-default HIL_ACT_FUNC6 400
|
||||
|
||||
# set SYS_HITL to 2 to start the SIH and avoid sensors startup
|
||||
param set-default SYS_HITL 2
|
||||
|
||||
|
||||
@@ -26,28 +26,8 @@ param set-default VT_FW_DIFTHR_SC 0.3
|
||||
param set-default MPC_MAN_Y_MAX 60
|
||||
param set-default MC_PITCH_P 5
|
||||
|
||||
param set-default CA_AIRFRAME 4
|
||||
param set-default CA_ROTOR_COUNT 2
|
||||
param set-default CA_ROTOR0_KM -0.05
|
||||
param set-default CA_ROTOR0_PY 0.2
|
||||
param set-default CA_ROTOR1_KM -0.05
|
||||
param set-default CA_ROTOR1_PY -0.2
|
||||
param set-default CA_SV_CS_COUNT 2
|
||||
param set-default CA_SV_CS0_TRQ_P 0.3
|
||||
param set-default CA_SV_CS0_TRQ_Y 0.3
|
||||
param set-default CA_SV_CS0_TYPE 5
|
||||
param set-default CA_SV_CS1_TRQ_P 0.3
|
||||
param set-default CA_SV_CS1_TRQ_Y -0.3
|
||||
param set-default CA_SV_CS1_TYPE 6
|
||||
|
||||
param set-default HIL_ACT_FUNC1 101
|
||||
param set-default HIL_ACT_FUNC2 102
|
||||
param set-default HIL_ACT_FUNC5 202
|
||||
param set-default HIL_ACT_FUNC6 201
|
||||
param set-default HIL_ACT_REV 32
|
||||
|
||||
param set-default MAV_TYPE 19
|
||||
|
||||
set MAV_TYPE 19
|
||||
set MIXER vtol_tailsitter_duo_sat
|
||||
|
||||
set PWM_OUT 1234
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
. ${R}etc/init.d/rc.vtol_defaults
|
||||
|
||||
param set-default CA_AIRFRAME 2
|
||||
param set-default CA_ROTOR_COUNT 5
|
||||
param set-default CA_ROTOR_COUNT 4
|
||||
param set-default CA_ROTOR0_PX 0.15
|
||||
param set-default CA_ROTOR0_PY 0.15
|
||||
param set-default CA_ROTOR1_PX -0.15
|
||||
@@ -36,9 +36,6 @@ param set-default CA_ROTOR2_KM -0.05
|
||||
param set-default CA_ROTOR3_PX -0.15
|
||||
param set-default CA_ROTOR3_PY 0.15
|
||||
param set-default CA_ROTOR3_KM -0.05
|
||||
param set-default CA_ROTOR4_AX 1.0
|
||||
param set-default CA_ROTOR4_AZ 0.0
|
||||
param set-default CA_ROTOR4_PX 0.2
|
||||
param set-default CA_SV_CS_COUNT 4
|
||||
param set-default CA_SV_CS0_TYPE 1
|
||||
param set-default CA_SV_CS0_TRQ_R -0.5
|
||||
@@ -54,8 +51,7 @@ param set-default PWM_AUX_DIS5 950
|
||||
param set-default VT_TYPE 2
|
||||
param set-default VT_MOT_ID 1234
|
||||
param set-default VT_FW_MOT_OFFID 1234
|
||||
|
||||
param set-default MAV_TYPE 22
|
||||
set MAV_TYPE 22
|
||||
|
||||
set MIXER quad_x
|
||||
set MIXER_AUX vtol_AAERT
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
. ${R}etc/init.d/rc.vtol_defaults
|
||||
|
||||
|
||||
param set-default MAV_TYPE 19
|
||||
|
||||
param set-default MC_ROLL_P 6
|
||||
@@ -37,6 +38,7 @@ param set-default VT_IDLE_PWM_MC 1080
|
||||
param set-default VT_ELEV_MC_LOCK 0
|
||||
param set-default VT_MOT_ID 12
|
||||
param set-default VT_TYPE 0
|
||||
set MAV_TYPE 19
|
||||
|
||||
set MIXER vtol_tailsitter_duo
|
||||
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.vtol_defaults
|
||||
|
||||
param set-default MAV_TYPE 21
|
||||
|
||||
param set-default MC_ROLL_P 7
|
||||
param set-default MC_ROLLRATE_P 0.19
|
||||
@@ -46,6 +45,7 @@ param set-default VT_TILT_TRANS 0.5
|
||||
param set-default VT_TILT_FW 0.9
|
||||
param set-default VT_ELEV_MC_LOCK 0
|
||||
param set-default VT_TYPE 1
|
||||
set MAV_TYPE 21
|
||||
|
||||
set MIXER firefly6
|
||||
set MIXER_AUX firefly6
|
||||
|
||||
@@ -13,8 +13,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.vtol_defaults
|
||||
|
||||
param set-default MAV_TYPE 20
|
||||
|
||||
param set-default CA_AIRFRAME 4
|
||||
param set-default CA_ROTOR_COUNT 4
|
||||
param set-default CA_ROTOR0_PX 0.15
|
||||
@@ -40,6 +38,7 @@ param set-default PWM_MAIN_MAX 2000
|
||||
param set-default VT_MOT_ID 1234
|
||||
param set-default VT_IDLE_PWM_MC 1080
|
||||
param set-default VT_TYPE 0
|
||||
set MAV_TYPE 20
|
||||
|
||||
set MIXER quad_x_vtol
|
||||
|
||||
|
||||
@@ -22,13 +22,13 @@
|
||||
|
||||
. ${R}etc/init.d/rc.vtol_defaults
|
||||
|
||||
param set-default MAV_TYPE 20
|
||||
|
||||
param set-default PWM_MAIN_MAX 2000
|
||||
|
||||
param set-default VT_IDLE_PWM_MC 1080
|
||||
param set-default VT_TYPE 0
|
||||
|
||||
set MAV_TYPE 20
|
||||
|
||||
set MIXER quad_+_vtol
|
||||
|
||||
set PWM_OUT 1234
|
||||
|
||||
@@ -52,6 +52,7 @@ param set-default VT_MOT_ID 1234
|
||||
param set-default VT_FW_MOT_OFFID 1234
|
||||
param set-default VT_IDLE_PWM_MC 1080
|
||||
param set-default VT_TYPE 2
|
||||
set MAV_TYPE 22
|
||||
|
||||
set MIXER quad_x
|
||||
set MIXER_AUX vtol_AAERT
|
||||
|
||||
@@ -41,6 +41,7 @@ param set-default VT_FW_MOT_OFFID 1234
|
||||
param set-default VT_F_TRANS_THR 0.75
|
||||
param set-default VT_IDLE_PWM_MC 1080
|
||||
param set-default VT_TYPE 2
|
||||
set MAV_TYPE 22
|
||||
|
||||
set MIXER quad_x
|
||||
set MIXER_AUX vtol_delta
|
||||
|
||||
@@ -33,6 +33,7 @@ param set-default VT_MOT_ID 1234
|
||||
param set-default VT_FW_MOT_OFFID 1234
|
||||
param set-default VT_IDLE_PWM_MC 1080
|
||||
param set-default VT_TYPE 2
|
||||
set MAV_TYPE 22
|
||||
|
||||
set MIXER quad_x
|
||||
set MIXER_AUX vtol_AAVVT
|
||||
|
||||
@@ -46,6 +46,7 @@ param set-default VT_IDLE_PWM_MC 1080
|
||||
param set-default VT_MOT_ID 1234
|
||||
param set-default VT_FW_MOT_OFFID 1234
|
||||
param set-default VT_TYPE 2
|
||||
set MAV_TYPE 22
|
||||
|
||||
set MIXER quad_x
|
||||
set MIXER_AUX vtol_AAERT
|
||||
|
||||
@@ -77,6 +77,8 @@ param set-default VT_TRANS_MIN_TM 5
|
||||
param set-default VT_TRANS_TIMEOUT 30
|
||||
param set-default VT_TYPE 2
|
||||
|
||||
set MAV_TYPE 22
|
||||
|
||||
set MIXER quad_x
|
||||
set MIXER_AUX vtol_AAERT
|
||||
|
||||
|
||||
@@ -13,8 +13,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.vtol_defaults
|
||||
|
||||
param set-defualt MAV_TYPE 21
|
||||
|
||||
param set-default PWM_AUX_DISARM 1000
|
||||
param set-default PWM_AUX_MAX 2000
|
||||
param set-default PWM_AUX_MIN 1000
|
||||
@@ -30,6 +28,7 @@ param set-default VT_TILT_MC 0.08
|
||||
param set-default VT_TILT_TRANS 0.5
|
||||
param set-default VT_ELEV_MC_LOCK 0
|
||||
param set-default VT_TYPE 1
|
||||
set MAV_TYPE 21
|
||||
|
||||
set MIXER claire
|
||||
set MIXER_AUX claire
|
||||
|
||||
@@ -22,8 +22,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.vtol_defaults
|
||||
|
||||
param set-defualt MAV_TYPE 21
|
||||
|
||||
param set-default CBRK_AIRSPD_CHK 162128
|
||||
|
||||
param set-default FW_ARSP_MODE 1
|
||||
@@ -66,6 +64,7 @@ param set-default VT_TRANS_MIN_TM 1.2
|
||||
param set-default VT_TRANS_P2_DUR 1.3
|
||||
param set-default VT_ELEV_MC_LOCK 0
|
||||
param set-default VT_TYPE 1
|
||||
set MAV_TYPE 21
|
||||
|
||||
set MIXER vtol_convergence
|
||||
|
||||
|
||||
@@ -22,8 +22,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.vtol_defaults
|
||||
|
||||
param set-default MAV_TYPE 22
|
||||
|
||||
param set-default BAT1_CAPACITY 23000
|
||||
param set-default BAT1_N_CELLS 4
|
||||
param set-default BAT1_R_INTERNAL 0.0025
|
||||
@@ -136,6 +134,7 @@ param set-default VT_TRANS_TIMEOUT 22
|
||||
param set-default VT_F_TRANS_RAMP 4
|
||||
|
||||
param set-default COM_RC_OVERRIDE 0
|
||||
set MAV_TYPE 22
|
||||
|
||||
set MIXER deltaquad
|
||||
set MIXER_AUX pass
|
||||
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.vtol_defaults
|
||||
|
||||
param set-default MAV_TYPE 22
|
||||
|
||||
param set-default BAT1_N_CELLS 6
|
||||
|
||||
param set-default FW_AIRSPD_MAX 30
|
||||
@@ -96,6 +94,8 @@ param set-default VT_PSHER_RMP_DT 2
|
||||
param set-default VT_TRANS_MIN_TM 4
|
||||
param set-default VT_TYPE 2
|
||||
|
||||
set MAV_TYPE 22
|
||||
|
||||
set MIXER babyshark
|
||||
set MIXER_AUX pass
|
||||
|
||||
|
||||
@@ -27,8 +27,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.vtol_defaults
|
||||
|
||||
param set-default MAV_TYPE 21
|
||||
|
||||
param set-default VT_IDLE_PWM_MC 1100
|
||||
param set-default VT_TYPE 1
|
||||
param set-default VT_MOT_ID 1234
|
||||
@@ -59,6 +57,8 @@ param set-default CA_SV_CS3_TRQ_Y 1.0
|
||||
param set-default CA_SV_CS3_TYPE 4
|
||||
param set-default CA_SV_TL_COUNT 4
|
||||
|
||||
set MAV_TYPE 21
|
||||
|
||||
set MIXER quad_x
|
||||
set MIXER_AUX vtol_TTTTAAER
|
||||
|
||||
|
||||
@@ -31,6 +31,7 @@ param set-default PWM_AUX_DIS5 950
|
||||
param set-default VT_TYPE 2
|
||||
param set-default VT_MOT_ID 12345678
|
||||
param set-default VT_FW_MOT_OFFID 12345678
|
||||
set MAV_TYPE 22
|
||||
|
||||
set MIXER octo_cox
|
||||
set MIXER_AUX vtol_AAERT
|
||||
|
||||
@@ -19,8 +19,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.vtol_defaults
|
||||
|
||||
param set-default MAV_TYPE 19
|
||||
|
||||
param set-default VT_ELEV_MC_LOCK 0
|
||||
param set-default VT_MOT_COUNT 2
|
||||
param set-default VT_TYPE 0
|
||||
@@ -39,6 +37,8 @@ param set-default CA_SV_CS1_TRQ_P 0.5
|
||||
param set-default CA_SV_CS1_TRQ_Y -0.5
|
||||
param set-default CA_SV_CS1_TYPE 6
|
||||
|
||||
param set-default MAV_TYPE 19
|
||||
set MAV_TYPE 19
|
||||
set MIXER vtol_tailsitter_duo
|
||||
|
||||
set PWM_OUT 1234
|
||||
|
||||
@@ -18,7 +18,4 @@
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
|
||||
# MAV_TYPE_TRICOPTER 15
|
||||
param set-default MAV_TYPE 15
|
||||
|
||||
set MIXER tri_y_yaw+
|
||||
|
||||
@@ -18,7 +18,4 @@
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
|
||||
# MAV_TYPE_TRICOPTER 15
|
||||
param set-default MAV_TYPE 15
|
||||
|
||||
set MIXER tri_y_yaw-
|
||||
|
||||
@@ -17,9 +17,7 @@
|
||||
#
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
|
||||
# MAV_TYPE_COAXIAL 3
|
||||
param set-default MAV_TYPE 3
|
||||
set MIXER coax
|
||||
|
||||
param set-default MC_ROLLRATE_P 0.17
|
||||
param set-default MC_ROLLRATE_I 0.05
|
||||
@@ -38,9 +36,6 @@ param set-default PWM_MAIN_RATE 400
|
||||
|
||||
param set-default RTL_RETURN_ALT 30
|
||||
param set-default RTL_DESCEND_ALT 10
|
||||
|
||||
set MIXER coax
|
||||
|
||||
# This is the gimbal pass mixer
|
||||
set MIXER_AUX pass
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
|
||||
# Configure as helicopter (number 4 defined in commander_helper.cpp)
|
||||
param set-default MAV_TYPE 4
|
||||
set MAV_TYPE 4
|
||||
|
||||
set MIXER blade130
|
||||
|
||||
|
||||
@@ -41,6 +41,5 @@ param set-default FW_R_LIM 40
|
||||
param set-default FW_P_LIM_MAX 25
|
||||
param set-default FW_P_LIM_MIN -5
|
||||
param set-default FW_P_RMAX_NEG 20
|
||||
|
||||
set MIXER TF-G2
|
||||
set MIXER_AUX pass
|
||||
|
||||
@@ -24,5 +24,8 @@ param set-default MAV_0_CONFIG 102
|
||||
param set-default GPS_UBX_DYNMODEL 8
|
||||
param set-default SER_TEL2_BAUD 9600
|
||||
|
||||
set MAV_TYPE 8
|
||||
param set MAV_TYPE ${MAV_TYPE}
|
||||
|
||||
set MIXER IO_pass
|
||||
set MIXER_AUX pass
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
# @board px4_fmu-v2 exclude
|
||||
#
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
set VEHICLE_TYPE mc
|
||||
|
||||
param set-default NAV_ACC_RAD 2
|
||||
|
||||
@@ -39,7 +39,6 @@ param set-default PWM_MAIN_RATE 400
|
||||
|
||||
param set-default RTL_DESCEND_ALT 10
|
||||
param set-default RTL_RETURN_ALT 30
|
||||
|
||||
set MIXER dodeca_top_cox
|
||||
set MIXER_AUX dodeca_bottom_cox
|
||||
|
||||
|
||||
@@ -41,6 +41,9 @@ param set-default FW_RR_P 0.04
|
||||
|
||||
param set-default PWM_MAIN_DISARM 1000
|
||||
|
||||
# Configure this as plane.
|
||||
set MAV_TYPE 1
|
||||
|
||||
# Set mixer.
|
||||
set MIXER fw_generic_wing
|
||||
|
||||
|
||||
@@ -24,6 +24,8 @@
|
||||
|
||||
set MIXER quad_s250aq
|
||||
|
||||
set MAV_TYPE 2
|
||||
|
||||
param set-default ATT_BIAS_MAX 0
|
||||
|
||||
param set-default CBRK_IO_SAFETY 22027
|
||||
|
||||
@@ -164,8 +164,6 @@ param set-default RC_MAP_AUX2 5
|
||||
param set-default RC_MAP_AUX3 10
|
||||
param set-default RC_MAP_AUX4 8
|
||||
param set-default RC_MAP_FLTMODE 6
|
||||
param set-default RC_MAP_RETURN_SW 7
|
||||
|
||||
param set-default RC1_TRIM 1000
|
||||
|
||||
|
||||
|
||||
@@ -21,7 +21,10 @@
|
||||
# @board cuav_x7pro exclude
|
||||
#
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
set VEHICLE_TYPE mc
|
||||
set MIXER quad_x
|
||||
set PWM_OUT 1234
|
||||
|
||||
|
||||
# Attitude & rate gains
|
||||
param set-default MC_ROLLRATE_D 0.0013
|
||||
|
||||
@@ -21,7 +21,10 @@
|
||||
# @maintainer Hyon Lim <lim@uvify.com>
|
||||
#
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
set VEHICLE_TYPE mc
|
||||
set MIXER quad_x
|
||||
set PWM_OUT 1234
|
||||
|
||||
|
||||
# Attitude & rate gains
|
||||
param set-default MC_ROLLRATE_D 0.0013
|
||||
|
||||
@@ -24,6 +24,10 @@
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
|
||||
|
||||
# Configure this as Quadrotor
|
||||
# set MAV_TYPE 14
|
||||
|
||||
# Set mixer
|
||||
set MIXER tilt_quad
|
||||
set MIXER_AUX tilt_quad
|
||||
|
||||
@@ -48,6 +48,8 @@ param set-default NAV_ACC_RAD 0.5
|
||||
param set-default PWM_MAIN_DISARM 1500
|
||||
param set-default PWM_MAIN_MAX 2000
|
||||
param set-default PWM_MAIN_MIN 1000
|
||||
# Configure this as rover
|
||||
set MAV_TYPE 10
|
||||
|
||||
# Set mixer
|
||||
set MIXER rover_generic
|
||||
|
||||
@@ -76,6 +76,9 @@ param set-default RBCLW_SER_CFG 104
|
||||
# Start this driver after setting parameters, because the driver uses some of those parameters.
|
||||
# roboclaw start /dev/ttyS3
|
||||
|
||||
# Configure this as rover
|
||||
set MAV_TYPE 10
|
||||
|
||||
# Set mixer
|
||||
set MIXER generic_diff_rover
|
||||
|
||||
|
||||
@@ -65,6 +65,9 @@ param set-default PWM_MAIN_MIN4 970
|
||||
# Enable Airspeed check circuit breaker because Rovers will have no airspeed sensor
|
||||
param set-default CBRK_AIRSPD_CHK 162128
|
||||
|
||||
# Configure this as rover
|
||||
set MAV_TYPE 10
|
||||
|
||||
# Set mixer
|
||||
set MIXER rover_diff_and_servo
|
||||
|
||||
|
||||
@@ -16,4 +16,7 @@
|
||||
# disable circuit breaker for airspeed sensor
|
||||
param set-default CBRK_AIRSPD_CHK 162128
|
||||
|
||||
set MAV_TYPE 12
|
||||
param set MAV_TYPE ${MAV_TYPE}
|
||||
|
||||
set MIXER uuv_x
|
||||
|
||||
@@ -16,4 +16,7 @@
|
||||
# disable circuit breaker for airspeed sensor
|
||||
param set-default CBRK_AIRSPD_CHK 162128
|
||||
|
||||
set MAV_TYPE 12
|
||||
param set MAV_TYPE ${MAV_TYPE}
|
||||
|
||||
set MIXER uuv_x
|
||||
|
||||
@@ -23,9 +23,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
|
||||
# MAV_TYPE_HEXAROTOR 13
|
||||
param set-default MAV_TYPE 13
|
||||
|
||||
param set-default CA_ROTOR_COUNT 6
|
||||
param set-default CA_ROTOR0_PX 0.0
|
||||
param set-default CA_ROTOR0_PY 0.5
|
||||
|
||||
@@ -27,8 +27,9 @@
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
|
||||
# MAV_TYPE_HEXAROTOR 13
|
||||
param set-default MAV_TYPE 13
|
||||
set MIXER hexa_x
|
||||
set PWM_OUT 12345678
|
||||
|
||||
|
||||
###############################################
|
||||
# Attitude & rate gains
|
||||
@@ -119,7 +120,3 @@ param set-default MAV_1_MODE 2
|
||||
param set-default MAV_1_FORWARD 1
|
||||
param set-default MAV_1_RATE 800000
|
||||
param set-default SER_TEL2_BAUD 921600
|
||||
|
||||
|
||||
set MIXER hexa_x
|
||||
set PWM_OUT 12345678
|
||||
|
||||
@@ -23,9 +23,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
|
||||
# MAV_TYPE_HEXAROTOR 13
|
||||
param set-default MAV_TYPE 13
|
||||
|
||||
param set-default CA_ROTOR_COUNT 6
|
||||
param set-default CA_ROTOR0_PX 0.5
|
||||
param set-default CA_ROTOR0_PY 0.0
|
||||
|
||||
@@ -25,9 +25,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
|
||||
# MAV_TYPE_OCTOROTOR 14
|
||||
param set-default MAV_TYPE 14
|
||||
|
||||
param set-default CA_ROTOR_COUNT 8
|
||||
param set-default CA_ROTOR0_KM -0.05
|
||||
param set-default CA_ROTOR0_PX 0.46
|
||||
|
||||
@@ -25,9 +25,6 @@
|
||||
|
||||
. ${R}etc/init.d/rc.mc_defaults
|
||||
|
||||
# MAV_TYPE_OCTOROTOR 14
|
||||
param set-default MAV_TYPE 14
|
||||
|
||||
set MIXER octo_+
|
||||
|
||||
set PWM_OUT 12345678
|
||||
|
||||
@@ -7,9 +7,6 @@
|
||||
|
||||
set VEHICLE_TYPE airship
|
||||
|
||||
# MAV_TYPE_AIRSHIP 7
|
||||
param set-default MAV_TYPE 7
|
||||
|
||||
#
|
||||
# This is the gimbal pass mixer.
|
||||
#
|
||||
|
||||
@@ -7,9 +7,6 @@
|
||||
|
||||
set VEHICLE_TYPE fw
|
||||
|
||||
# MAV_TYPE_FREE_BALLOON 8
|
||||
param set-default MAV_TYPE 8
|
||||
|
||||
#
|
||||
# Default parameters for balloon UAVs.
|
||||
#
|
||||
|
||||
@@ -7,9 +7,6 @@
|
||||
|
||||
set VEHICLE_TYPE rover
|
||||
|
||||
# MAV_TYPE_SURFACE_BOAT 11
|
||||
param set-default MAV_TYPE 11
|
||||
|
||||
#
|
||||
# Default parameters for UGVs.
|
||||
#
|
||||
|
||||
@@ -7,15 +7,14 @@
|
||||
|
||||
set VEHICLE_TYPE fw
|
||||
|
||||
# MAV_TYPE_FIXED_WING 1
|
||||
param set-default MAV_TYPE 1
|
||||
|
||||
#
|
||||
# Default parameters for fixed wing UAVs.
|
||||
#
|
||||
param set-default COM_POS_FS_DELAY 5
|
||||
param set-default COM_POS_FS_EPH 15
|
||||
param set-default COM_POS_FS_EPV 30
|
||||
param set-default COM_POS_FS_GAIN 0
|
||||
param set-default COM_POS_FS_PROB 1
|
||||
param set-default COM_VEL_FS_EVH 5
|
||||
# Disable preflight disarm to not interfere with external launching
|
||||
param set-default COM_DISARM_PRFLT -1
|
||||
|
||||
@@ -7,9 +7,6 @@
|
||||
|
||||
set VEHICLE_TYPE mc
|
||||
|
||||
# MAV_TYPE_QUADROTOR 2
|
||||
param set-default MAV_TYPE 2
|
||||
|
||||
if param compare IMU_GYRO_RATEMAX 400
|
||||
then
|
||||
param set-default IMU_GYRO_RATEMAX 800
|
||||
|
||||
@@ -7,9 +7,6 @@
|
||||
|
||||
set VEHICLE_TYPE rover
|
||||
|
||||
# MAV_TYPE_GROUND_ROVER 10
|
||||
param set-default MAV_TYPE 10
|
||||
|
||||
#
|
||||
# Default parameters for UGVs.
|
||||
#
|
||||
|
||||
@@ -83,28 +83,16 @@ then
|
||||
teraranger start -X
|
||||
fi
|
||||
|
||||
# paa3905 optical flow sensor (external SPI)
|
||||
if param greater -s SENS_EN_PAA3905 0
|
||||
then
|
||||
paa3905 -S start
|
||||
fi
|
||||
|
||||
# paw3902 optical flow sensor (external SPI)
|
||||
if param greater -s SENS_EN_PAW3902 0
|
||||
then
|
||||
paw3902 -S start
|
||||
fi
|
||||
|
||||
# pmw3901 optical flow sensor (external SPI)
|
||||
# Possible external pmw3901 optical flow sensor
|
||||
if param greater -s SENS_EN_PMW3901 0
|
||||
then
|
||||
pmw3901 -S start
|
||||
fi
|
||||
|
||||
# Check for px4flow sensor
|
||||
if param compare -s SENS_EN_PX4FLOW 1
|
||||
# Possible external paw3902 optical flow sensor
|
||||
if param greater -s SENS_EN_PAW3902 0
|
||||
then
|
||||
px4flow start -X
|
||||
paw3902 -S start
|
||||
fi
|
||||
|
||||
# vl53l1x i2c distance sensor
|
||||
@@ -167,13 +155,6 @@ then
|
||||
irlock start -X
|
||||
fi
|
||||
|
||||
# SPL06 sensor external I2C
|
||||
if param compare -s SENS_EN_SPL06 1
|
||||
then
|
||||
spl06 -X start
|
||||
spl06 -X -a 0x77 start
|
||||
fi
|
||||
|
||||
# PCF8583 counter (RPM sensor)
|
||||
if param compare -s SENS_EN_PCF8583 1
|
||||
then
|
||||
|
||||
@@ -7,9 +7,6 @@
|
||||
|
||||
set VEHICLE_TYPE uuv
|
||||
|
||||
# MAV_TYPE_SUBMARINE 12
|
||||
param set-default MAV_TYPE 12
|
||||
|
||||
param set-default PWM_MAIN_MAX 1950
|
||||
param set-default PWM_MAIN_MIN 1050
|
||||
param set-default PWM_MAIN_DISARM 1500
|
||||
|
||||
@@ -12,9 +12,19 @@ if [ $VEHICLE_TYPE = fw ]
|
||||
then
|
||||
if [ $MIXER = none ]
|
||||
then
|
||||
echo "FW mixer undefined"
|
||||
# Set default mixer for fixed wing if not defined.
|
||||
set MIXER AERT
|
||||
fi
|
||||
|
||||
if [ $MAV_TYPE = none ]
|
||||
then
|
||||
# Set a default MAV_TYPE = 1 if not defined.
|
||||
set MAV_TYPE 1
|
||||
fi
|
||||
|
||||
# Set the mav type parameter.
|
||||
param set MAV_TYPE ${MAV_TYPE}
|
||||
|
||||
# Load mixer and configure outputs.
|
||||
. ${R}etc/init.d/rc.interface
|
||||
|
||||
@@ -32,6 +42,41 @@ then
|
||||
echo "MC mixer undefined"
|
||||
fi
|
||||
|
||||
if [ $MAV_TYPE = none ]
|
||||
then
|
||||
# Set a default MAV_TYPE = 2 if not defined.
|
||||
set MAV_TYPE 2
|
||||
|
||||
# Use mixer to detect vehicle type
|
||||
if [ $MIXER = coax ]
|
||||
then
|
||||
set MAV_TYPE 3
|
||||
fi
|
||||
if [ $MIXER = hexa_x -o $MIXER = hexa_+ ]
|
||||
then
|
||||
set MAV_TYPE 13
|
||||
fi
|
||||
if [ $MIXER = hexa_cox ]
|
||||
then
|
||||
set MAV_TYPE 13
|
||||
fi
|
||||
if [ $MIXER = octo_x -o $MIXER = octo_+ ]
|
||||
then
|
||||
set MAV_TYPE 14
|
||||
fi
|
||||
if [ $MIXER = octo_cox -o $MIXER = octo_cox_w ]
|
||||
then
|
||||
set MAV_TYPE 14
|
||||
fi
|
||||
if [ $MIXER = tri_y_yaw- -o $MIXER = tri_y_yaw+ ]
|
||||
then
|
||||
set MAV_TYPE 15
|
||||
fi
|
||||
fi
|
||||
|
||||
# Set the mav type parameter.
|
||||
param set MAV_TYPE ${MAV_TYPE}
|
||||
|
||||
# Load mixer and configure outputs.
|
||||
. ${R}etc/init.d/rc.interface
|
||||
|
||||
@@ -46,9 +91,19 @@ if [ $VEHICLE_TYPE = rover ]
|
||||
then
|
||||
if [ $MIXER = none ]
|
||||
then
|
||||
echo "rover mixer undefined"
|
||||
# Set default mixer for UGV if not defined.
|
||||
set MIXER rover_generic
|
||||
fi
|
||||
|
||||
if [ $MAV_TYPE = none ]
|
||||
then
|
||||
# Set a default MAV_TYPE = 10 if not defined.
|
||||
set MAV_TYPE 10
|
||||
fi
|
||||
|
||||
# Set the mav type parameter.
|
||||
param set MAV_TYPE ${MAV_TYPE}
|
||||
|
||||
# Load mixer and configure outputs.
|
||||
. ${R}etc/init.d/rc.interface
|
||||
|
||||
@@ -66,6 +121,25 @@ then
|
||||
echo "VTOL mixer undefined"
|
||||
fi
|
||||
|
||||
if [ $MAV_TYPE = none ]
|
||||
then
|
||||
# Set a default MAV_TYPE = 19 if not defined.
|
||||
set MAV_TYPE 19
|
||||
|
||||
# Use mixer to detect vehicle type.
|
||||
if [ $MIXER = firefly6 ]
|
||||
then
|
||||
set MAV_TYPE 21
|
||||
fi
|
||||
if [ $MIXER = quad_x_pusher_vtol ]
|
||||
then
|
||||
set MAV_TYPE 22
|
||||
fi
|
||||
fi
|
||||
|
||||
# Set the mav type parameter.
|
||||
param set MAV_TYPE ${MAV_TYPE}
|
||||
|
||||
# Load mixer and configure outputs.
|
||||
. ${R}etc/init.d/rc.interface
|
||||
|
||||
@@ -83,6 +157,15 @@ then
|
||||
echo "Airship mixer undefined"
|
||||
fi
|
||||
|
||||
if [ $MAV_TYPE = none ]
|
||||
then
|
||||
# Set a default MAV_TYPE = 7 if not defined.
|
||||
set MAV_TYPE 7
|
||||
fi
|
||||
|
||||
# Set the mav type parameter.
|
||||
param set MAV_TYPE ${MAV_TYPE}
|
||||
|
||||
# Load mixer and configure outputs.
|
||||
. ${R}etc/init.d/rc.interface
|
||||
|
||||
@@ -100,11 +183,19 @@ then
|
||||
echo "UUV mixer undefined"
|
||||
fi
|
||||
|
||||
if [ $MAV_TYPE = none ]
|
||||
then
|
||||
# Set default MAV_TYPE to submarine if not defined
|
||||
set MAV_TYPE 12
|
||||
fi
|
||||
|
||||
param set MAV_TYPE ${MAV_TYPE}
|
||||
# Load mixer and configure outputs.
|
||||
. ${R}etc/init.d/rc.interface
|
||||
|
||||
# Start standard vtol apps.
|
||||
. ${R}etc/init.d/rc.uuv_apps
|
||||
|
||||
fi
|
||||
|
||||
|
||||
|
||||
@@ -7,9 +7,6 @@
|
||||
|
||||
set VEHICLE_TYPE vtol
|
||||
|
||||
# MAV_TYPE_VTOL_FIXEDROTOR 22
|
||||
param set-default MAV_TYPE 22
|
||||
|
||||
param set-default MIS_TAKEOFF_ALT 20
|
||||
param set-default MIS_YAW_TMT 10
|
||||
|
||||
|
||||
@@ -29,6 +29,7 @@ set IOFW "/etc/extras/px4_io-v2_default.bin"
|
||||
set IO_PRESENT no
|
||||
set LOGGER_ARGS ""
|
||||
set LOGGER_BUF 8
|
||||
set MAV_TYPE none
|
||||
set MIXER none
|
||||
set MIXER_AUX none
|
||||
set MIXER_FILE none
|
||||
@@ -408,13 +409,6 @@ else
|
||||
commander start
|
||||
fi
|
||||
|
||||
#
|
||||
# Configure vehicle type specific parameters.
|
||||
# Note: rc.vehicle_setup is the entry point for rc.interface,
|
||||
# rc.fw_apps, rc.mc_apps, rc.rover_apps, and rc.vtol_apps.
|
||||
#
|
||||
. ${R}etc/init.d/rc.vehicle_setup
|
||||
|
||||
# Pre-takeoff continuous magnetometer calibration
|
||||
if param compare -s MBE_ENABLE 1
|
||||
then
|
||||
@@ -465,6 +459,13 @@ else
|
||||
fi
|
||||
fi
|
||||
|
||||
#
|
||||
# Configure vehicle type specific parameters.
|
||||
# Note: rc.vehicle_setup is the entry point for rc.interface,
|
||||
# rc.fw_apps, rc.mc_apps, rc.rover_apps, and rc.vtol_apps.
|
||||
#
|
||||
. ${R}etc/init.d/rc.vehicle_setup
|
||||
|
||||
#
|
||||
# Play the startup tune (if not disabled or there is an error)
|
||||
#
|
||||
@@ -492,6 +493,12 @@ else
|
||||
gimbal start
|
||||
fi
|
||||
|
||||
# Check for flow sensor
|
||||
if param compare -s SENS_EN_PX4FLOW 1
|
||||
then
|
||||
px4flow start -X
|
||||
fi
|
||||
|
||||
# Blacksheep telemetry
|
||||
if param compare -s TEL_BST_EN 1
|
||||
then
|
||||
@@ -566,6 +573,7 @@ unset IO_PRESENT
|
||||
unset IOFW
|
||||
unset LOGGER_ARGS
|
||||
unset LOGGER_BUF
|
||||
unset MAV_TYPE
|
||||
unset MIXER
|
||||
unset MIXER_AUX
|
||||
unset MIXER_FILE
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
Mixer for Tailsitter with x motor configuration and elevons
|
||||
===========================================================
|
||||
# @board px4_fmu-v2 exclude
|
||||
# @board omnibus_f4sd exclude
|
||||
|
||||
This file defines a single mixer for tailsitter with motors in X configuration. All controls
|
||||
are mixed 100%.
|
||||
|
||||
@@ -27,5 +27,4 @@ exec find boards msg src platforms test \
|
||||
-path src/lib/crypto/monocypher -prune -o \
|
||||
-path src/lib/crypto/libtomcrypt -prune -o \
|
||||
-path src/lib/crypto/libtommath -prune -o \
|
||||
-path src/modules/microdds_client/Micro-XRCE-DDS-Client -prune -o \
|
||||
-type f \( -name "*.c" -o -name "*.h" -o -name "*.cpp" -o -name "*.hpp" \) | grep $PATTERN
|
||||
|
||||
@@ -55,7 +55,7 @@ def perform_imu_checks(
|
||||
|
||||
# perform the vibration check
|
||||
imu_status['imu_vibration_check'] = 'Pass'
|
||||
for imu_vibr_metric in ['imu_coning', 'imu_hfgyro', 'imu_hfaccel']:
|
||||
for imu_vibr_metric in ['imu_coning', 'imu_hfdang', 'imu_hfdvel']:
|
||||
mean_metric = '{:s}_mean'.format(imu_vibr_metric)
|
||||
peak_metric = '{:s}_peak'.format(imu_vibr_metric)
|
||||
if imu_metrics[mean_metric] > check_levels['{:s}_warn'.format(mean_metric)] \
|
||||
|
||||
@@ -144,27 +144,17 @@ def calculate_imu_metrics(ulog: ULog, multi_instance, in_air_no_ground_effects:
|
||||
imu_metrics[result] = calculate_stat_from_signal(
|
||||
estimator_status_data, 'estimator_status', signal, in_air_no_ground_effects, np.median)
|
||||
|
||||
|
||||
# calculates peak and mean for IMU vibration checks
|
||||
for imu_status_instance in range(4):
|
||||
try:
|
||||
vehicle_imu_status_data = ulog.get_dataset('vehicle_imu_status', imu_status_instance).data
|
||||
|
||||
if vehicle_imu_status_data['accel_device_id'][0] == estimator_status_data['accel_device_id'][0]:
|
||||
|
||||
for signal, result in [('delta_angle_coning_metric', 'imu_coning'),
|
||||
('gyro_vibration_metric', 'imu_hfgyro'),
|
||||
('accel_vibration_metric', 'imu_hfaccel')]:
|
||||
|
||||
peak = calculate_stat_from_signal(vehicle_imu_status_data, 'vehicle_imu_status', signal, in_air_no_ground_effects, np.amax)
|
||||
|
||||
if peak > 0.0:
|
||||
imu_metrics['{:s}_peak'.format(result)] = peak
|
||||
imu_metrics['{:s}_mean'.format(result)] = calculate_stat_from_signal(vehicle_imu_status_data, 'vehicle_imu_status', signal, in_air_no_ground_effects, np.mean)
|
||||
|
||||
except:
|
||||
pass
|
||||
|
||||
for signal, result in [('vibe[0]', 'imu_coning'),
|
||||
('vibe[1]', 'imu_hfdang'),
|
||||
('vibe[2]', 'imu_hfdvel')]:
|
||||
peak = calculate_stat_from_signal(
|
||||
estimator_status_data, 'estimator_status', signal, in_air_no_ground_effects, np.amax)
|
||||
if peak > 0.0:
|
||||
imu_metrics['{:s}_peak'.format(result)] = peak
|
||||
imu_metrics['{:s}_mean'.format(result)] = calculate_stat_from_signal(
|
||||
estimator_status_data, 'estimator_status', signal,
|
||||
in_air_no_ground_effects, np.mean)
|
||||
|
||||
# IMU bias checks
|
||||
estimator_states_data = ulog.get_dataset('estimator_states', multi_instance).data
|
||||
|
||||
@@ -48,7 +48,7 @@ for filename in os.listdir(metadata_directory):
|
||||
|
||||
# # print out the check levels
|
||||
# print('\n'+'The following metadata loaded from '+filename+' were used'+'\n')
|
||||
# val = population_data.get(filename, {}).get('imu_hfgyro_mean')
|
||||
# val = population_data.get(filename, {}).get('imu_hfdang_mean')
|
||||
# print(val)
|
||||
|
||||
# Open pdf file for plotting
|
||||
@@ -90,10 +90,10 @@ population_results = {
|
||||
'ofy_fail_pct_avg':[float('NaN'),'The mean percentage of innovation test fails for the Y axis optical flow sensor'],
|
||||
'imu_coning_max_avg':[float('NaN'),'The mean of the maximum in-flight values of the IMU delta angle coning vibration level (mrad)'],
|
||||
'imu_coning_mean_avg':[float('NaN'),'The mean of the mean in-flight value of the IMU delta angle coning vibration level (mrad)'],
|
||||
'imu_hfgyro_max_avg':[float('NaN'),'The mean of the maximum in-flight values of the IMU high frequency gyro vibration level (rad/s)'],
|
||||
'imu_hfgyro_mean_avg':[float('NaN'),'The mean of the mean in-flight value of the IMU delta high frequency gyro vibration level (rad/s)'],
|
||||
'imu_hfaccel_max_avg':[float('NaN'),'The mean of the maximum in-flight values of the IMU high frequency accel vibration level (m/s/s)'],
|
||||
'imu_hfaccel_mean_avg':[float('NaN'),'The mean of the mean in-flight value of the IMU delta high frequency accel vibration level (m/s/s)'],
|
||||
'imu_hfdang_max_avg':[float('NaN'),'The mean of the maximum in-flight values of the IMU high frequency delta angle vibration level (mrad)'],
|
||||
'imu_hfdang_mean_avg':[float('NaN'),'The mean of the mean in-flight value of the IMU delta high frequency delta angle vibration level (mrad)'],
|
||||
'imu_hfdvel_max_avg':[float('NaN'),'The mean of the maximum in-flight values of the IMU high frequency delta velocity vibration level (m/s)'],
|
||||
'imu_hfdvel_mean_avg':[float('NaN'),'The mean of the mean in-flight value of the IMU delta high frequency delta velocity vibration level (m/s)'],
|
||||
'obs_ang_median_avg':[float('NaN'),'The mean of the median in-flight value of the output observer angular tracking error magnitude (mrad)'],
|
||||
'obs_vel_median_avg':[float('NaN'),'The mean of the median in-flight value of the output observer velocity tracking error magnitude (m/s)'],
|
||||
'obs_pos_median_avg':[float('NaN'),'The mean of the median in-flight value of the output observer position tracking error magnitude (m)'],
|
||||
@@ -360,54 +360,54 @@ if (len(result1) > 0 and len(result2) > 0):
|
||||
plt.close(8)
|
||||
|
||||
# IMU high frequency delta angle vibration levels
|
||||
temp = np.asarray([population_data[k].get('imu_hfgyro_peak') for k in found_keys])
|
||||
temp = np.asarray([population_data[k].get('imu_hfdang_peak') for k in found_keys])
|
||||
result1 = 1000.0 * temp[np.isfinite(temp)]
|
||||
temp = np.asarray([population_data[k].get('imu_hfgyro_mean') for k in found_keys])
|
||||
temp = np.asarray([population_data[k].get('imu_hfdang_mean') for k in found_keys])
|
||||
result2 = 1000.0 * temp[np.isfinite(temp)]
|
||||
|
||||
if (len(result1) > 0 and len(result2) > 0):
|
||||
population_results['imu_hfgyro_max_avg'][0] = np.mean(result1)
|
||||
population_results['imu_hfgyro_mean_avg'][0] = np.mean(result2)
|
||||
population_results['imu_hfdang_max_avg'][0] = np.mean(result1)
|
||||
population_results['imu_hfdang_mean_avg'][0] = np.mean(result2)
|
||||
|
||||
plt.figure(9,figsize=(20,13))
|
||||
|
||||
plt.subplot(2,1,1)
|
||||
plt.hist(result1)
|
||||
plt.title("Gaussian Histogram - IMU HF Gyroscope Vibration Peak")
|
||||
plt.xlabel("imu_hfgyro_max (rad/s)")
|
||||
plt.title("Gaussian Histogram - IMU HF Delta Angle Vibration Peak")
|
||||
plt.xlabel("imu_hfdang_max (mrad)")
|
||||
plt.ylabel("Frequency")
|
||||
|
||||
plt.subplot(2,1,2)
|
||||
plt.hist(result2)
|
||||
plt.title("Gaussian Histogram - IMU HF Gyroscope Vibration Mean")
|
||||
plt.xlabel("imu_hfgyro_mean (rad/s)")
|
||||
plt.title("Gaussian Histogram - IMU HF Delta Angle Vibration Mean")
|
||||
plt.xlabel("imu_hfdang_mean (mrad)")
|
||||
plt.ylabel("Frequency")
|
||||
|
||||
pp.savefig()
|
||||
plt.close(9)
|
||||
|
||||
# IMU high frequency accel vibration levels
|
||||
temp = np.asarray([population_data[k].get('imu_hfaccel_peak') for k in found_keys])
|
||||
# IMU high frequency delta velocity vibration levels
|
||||
temp = np.asarray([population_data[k].get('imu_hfdvel_peak') for k in found_keys])
|
||||
result1 = temp[np.isfinite(temp)]
|
||||
temp = np.asarray([population_data[k].get('imu_hfaccel_mean') for k in found_keys])
|
||||
temp = np.asarray([population_data[k].get('imu_hfdvel_mean') for k in found_keys])
|
||||
result2 = temp[np.isfinite(temp)]
|
||||
|
||||
if (len(result1) > 0 and len(result2) > 0):
|
||||
population_results['imu_hfaccel_max_avg'][0] = np.mean(result1)
|
||||
population_results['imu_hfaccel_mean_avg'][0] = np.mean(result2)
|
||||
population_results['imu_hfdvel_max_avg'][0] = np.mean(result1)
|
||||
population_results['imu_hfdvel_mean_avg'][0] = np.mean(result2)
|
||||
|
||||
plt.figure(10,figsize=(20,13))
|
||||
|
||||
plt.subplot(2,1,1)
|
||||
plt.hist(result1)
|
||||
plt.title("Gaussian Histogram - IMU HF Accelerometer Vibration Peak")
|
||||
plt.xlabel("imu_hfaccel_max (m/s/s)")
|
||||
plt.title("Gaussian Histogram - IMU HF Delta Velocity Vibration Peak")
|
||||
plt.xlabel("imu_hfdvel_max (m/s)")
|
||||
plt.ylabel("Frequency")
|
||||
|
||||
plt.subplot(2,1,2)
|
||||
plt.hist(result2)
|
||||
plt.title("Gaussian Histogram - IMU HF Accelerometer Vibration Mean")
|
||||
plt.xlabel("imu_hfaccel_mean (m/s/s)")
|
||||
plt.title("Gaussian Histogram - IMU HF Delta Velocity Vibration Mean")
|
||||
plt.xlabel("imu_hfdvel_mean (m/s)")
|
||||
plt.ylabel("Frequency")
|
||||
|
||||
pp.savefig()
|
||||
@@ -535,12 +535,12 @@ single_log_results = {
|
||||
'hgt_sensor_status':['Pass','Height sensor check summary. This sensor data can be sourced from either Baro, GPS, range fidner or external vision system. A Fail result indicates a significant error that caused a significant reduction in vehicle navigation performance was detected. A Warning result indicates that error levels higher than normal were detected but these errors did not significantly impact navigation performance. A Pass result indicates that no amonalies were detected and no further investigation is required'],
|
||||
'hgt_test_max':[float('NaN'),'The maximum in-flight value of the height sensor innovation consistency test ratio.'],
|
||||
'hgt_test_mean':[float('NaN'),'The mean in-flight value of the height sensor innovation consistency test ratio.'],
|
||||
'imu_coning_mean':[float('NaN'),'Mean in-flight value of the IMU delta angle coning vibration metric (rad^2)'],
|
||||
'imu_coning_peak':[float('NaN'),'Peak in-flight value of the IMU delta angle coning vibration metric (rad^2)'],
|
||||
'imu_hfgyro_mean':[float('NaN'),'Mean in-flight value of the IMU gyro high frequency vibration metric (rad/s)'],
|
||||
'imu_hfgyro_peak':[float('NaN'),'Peak in-flight value of the IMU gyro high frequency vibration metric (rad/s)'],
|
||||
'imu_hfaccel_mean':[float('NaN'),'Mean in-flight value of the IMU accel high frequency vibration metric (m/s/s)'],
|
||||
'imu_hfaccel_peak':[float('NaN'),'Peak in-flight value of the IMU accel high frequency vibration metric (m/s/s)'],
|
||||
'imu_coning_mean':[float('NaN'),'Mean in-flight value of the IMU delta angle coning vibration metric (rad)'],
|
||||
'imu_coning_peak':[float('NaN'),'Peak in-flight value of the IMU delta angle coning vibration metric (rad)'],
|
||||
'imu_hfdang_mean':[float('NaN'),'Mean in-flight value of the IMU delta angle high frequency vibration metric (rad)'],
|
||||
'imu_hfdang_peak':[float('NaN'),'Peak in-flight value of the IMU delta angle high frequency vibration metric (rad)'],
|
||||
'imu_hfdvel_mean':[float('NaN'),'Mean in-flight value of the IMU delta velocity high frequency vibration metric (m/s)'],
|
||||
'imu_hfdvel_peak':[float('NaN'),'Peak in-flight value of the IMU delta velocity high frequency vibration metric (m/s)'],
|
||||
'imu_sensor_status':['Pass','IMU sensor check summary. A Fail result indicates a significant error that caused a significant reduction in vehicle navigation performance was detected. A Warning result indicates that error levels higher than normal were detected but these errors did not significantly impact navigation performance. A Pass result indicates that no amonalies were detected and no further investigation is required'],
|
||||
'in_air_transition_time':[float('NaN'),'The time in seconds measured from startup that the EKF transtioned into in-air mode. Set to a nan if a transition event is not detected.'],
|
||||
'mag_percentage_amber':[float('NaN'),'The percentage of in-flight consolidated magnetic field sensor innovation consistency test values > 0.5.'],
|
||||
|
||||
@@ -21,10 +21,10 @@ hagl_amber_warn_pct,5.0
|
||||
tas_amber_warn_pct,5.0
|
||||
imu_coning_peak_warn,1.8E-5
|
||||
imu_coning_mean_warn,3.6E-6
|
||||
imu_hfgyro_peak_warn,12
|
||||
imu_hfgyro_mean_warn,2.4
|
||||
imu_hfaccel_peak_warn,360
|
||||
imu_hfaccel_mean_warn,72
|
||||
imu_hfdang_peak_warn,3.0E-3
|
||||
imu_hfdang_mean_warn,6.0E-4
|
||||
imu_hfdvel_peak_warn,9.0E-2
|
||||
imu_hfdvel_mean_warn,1.8E-2
|
||||
obs_ang_err_median_warn,8.0E-3
|
||||
obs_vel_err_median_warn,0.05
|
||||
obs_pos_err_median_warn,0.15
|
||||
|
||||
|
@@ -49,12 +49,12 @@ hagl_test_mean, The mean in-flight value of the height above ground sensor innov
|
||||
ofx_fail_percentage, The percentage of in-flight recorded failure events for the optical flow sensor X-axis innovation consistency test.
|
||||
ofy_fail_percentage, The percentage of in-flight recorded failure events for the optical flow sensor Y-axis innovation consistency test.
|
||||
filter_faults_max, Largest recorded value of the filter internal fault bitmask. Should always be zero.
|
||||
imu_coning_peak, Peak in-flight value of the IMU delta angle coning vibration metric (rad^2)
|
||||
imu_coning_mean, Mean in-flight value of the IMU delta angle coning vibration metric (rad^2)
|
||||
imu_hfgyro_peak, Peak in-flight value of the IMU accel high frequency vibration metric (rad/s)
|
||||
imu_hfgyro_mean, Mean in-flight value of the IMU accel high frequency vibration metric (rad/s)
|
||||
imu_hfaccel_peak, Peak in-flight value of the IMU accel high frequency vibration metric (m/s/s)
|
||||
imu_hfaccel_mean, Mean in-flight value of the IMU accel high frequency vibration metric (m/s/s)
|
||||
imu_coning_peak, Peak in-flight value of the IMU delta angle coning vibration metric (rad)
|
||||
imu_coning_mean, Mean in-flight value of the IMU delta angle coning vibration metric (rad)
|
||||
imu_hfdang_peak, Peak in-flight value of the IMU delta angle high frequency vibration metric (rad)
|
||||
imu_hfdang_mean, Mean in-flight value of the IMU delta angle high frequency vibration metric (rad)
|
||||
imu_hfdvel_peak, Peak in-flight value of the IMU delta velocity high frequency vibration metric (m/s)
|
||||
imu_hfdvel_mean, Mean in-flight value of the IMU delta velocity high frequency vibration metric (m/s)
|
||||
output_obs_ang_err_median, Median in-flight value of the output observer angular error (rad)
|
||||
output_obs_vel_err_median, Median in-flight value of the output observer velocity error (m/s)
|
||||
output_obs_pos_err_median, Median in-flight value of the output observer position error (m)
|
||||
|
||||
|
@@ -1,55 +0,0 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
"""
|
||||
Copyright (c) 2022 PX4 Development Team
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in
|
||||
the documentation and/or other materials provided with the
|
||||
distribution.
|
||||
3. Neither the name PX4 nor the names of its contributors may be
|
||||
used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
File: frag_fusion_symbolic.py
|
||||
Author: Mathieu Bresciani <mathieu@auterion.com>
|
||||
License: BSD 3-Clause
|
||||
Description:
|
||||
"""
|
||||
|
||||
from sympy import *
|
||||
|
||||
V = Symbol("V", real=True)
|
||||
rho = Symbol("rho", real=True)
|
||||
rho_n = Symbol("rho_n", real=True)
|
||||
Mcoef = Symbol("Mcoef", real=True)
|
||||
Bcoef = Symbol("Bcoef", real=True)
|
||||
a = Symbol("a", real=True)
|
||||
|
||||
f1 = 0.5 * rho / Bcoef * V**2 + rho_n * Mcoef * V - a
|
||||
|
||||
print("If Bcoef > 0 and Mcoef > 0")
|
||||
print("V =")
|
||||
res_V = solve(f1, V)
|
||||
res_V = res_V[0]
|
||||
pprint(res_V)
|
||||
print("a_pred =")
|
||||
pprint(solve(f1, a))
|
||||
@@ -1,202 +0,0 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
"""
|
||||
Copyright (c) 2022 PX4 Development Team
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in
|
||||
the documentation and/or other materials provided with the
|
||||
distribution.
|
||||
3. Neither the name PX4 nor the names of its contributors may be
|
||||
used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
File: drag_replay.py
|
||||
Author: Mathieu Bresciani <mathieu@auterion.com>
|
||||
License: BSD 3-Clause
|
||||
Description:
|
||||
Find the best ballistic and momentum drag coefficients for wind estimation
|
||||
using EKF2 replay data.
|
||||
NOTE: this script currently assumes no wind.
|
||||
"""
|
||||
|
||||
import matplotlib.pylab as plt
|
||||
from pyulog import ULog
|
||||
from pyulog.px4 import PX4ULog
|
||||
import numpy as np
|
||||
import quaternion
|
||||
from scipy import optimize
|
||||
|
||||
def getAllData(logfile):
|
||||
log = ULog(logfile)
|
||||
|
||||
v_local = np.matrix([getData(log, 'vehicle_local_position', 'vx'),
|
||||
getData(log, 'vehicle_local_position', 'vy'),
|
||||
getData(log, 'vehicle_local_position', 'vz')])
|
||||
|
||||
t_v_local = ms2s(getData(log, 'vehicle_local_position', 'timestamp'))
|
||||
|
||||
accel = np.matrix([getData(log, 'sensor_combined', 'accelerometer_m_s2[0]'),
|
||||
getData(log, 'sensor_combined', 'accelerometer_m_s2[1]'),
|
||||
getData(log, 'sensor_combined', 'accelerometer_m_s2[2]')])
|
||||
t_accel = ms2s(getData(log, 'sensor_combined', 'timestamp'))
|
||||
|
||||
q = np.matrix([getData(log, 'vehicle_attitude', 'q[0]'),
|
||||
getData(log, 'vehicle_attitude', 'q[1]'),
|
||||
getData(log, 'vehicle_attitude', 'q[2]'),
|
||||
getData(log, 'vehicle_attitude', 'q[3]')])
|
||||
t_q = ms2s(getData(log, 'vehicle_attitude', 'timestamp'))
|
||||
|
||||
dist_bottom = getData(log, 'vehicle_local_position', 'dist_bottom')
|
||||
t_dist_bottom = ms2s(getData(log, 'vehicle_local_position', 'timestamp'))
|
||||
|
||||
(t_aligned, v_body_aligned, accel_aligned) = alignData(t_v_local, v_local, t_accel, accel, t_q, q, t_dist_bottom, dist_bottom)
|
||||
|
||||
t_aligned -= t_aligned[0]
|
||||
|
||||
return (t_aligned, v_body_aligned, accel_aligned)
|
||||
|
||||
def alignData(t_v, v_local, t_accel, accel, t_q, q, t_dist_bottom, dist_bottom):
|
||||
len_accel = len(t_accel)
|
||||
len_q = len(t_q)
|
||||
len_db = len(t_dist_bottom)
|
||||
i_a = 0
|
||||
i_q = 0
|
||||
i_db = 0
|
||||
v_body_aligned = np.empty((3,0))
|
||||
accel_aligned = np.empty((3,0))
|
||||
t_aligned = []
|
||||
|
||||
for i_v in range(len(t_v)):
|
||||
t = t_v[i_v]
|
||||
accel_sum = np.zeros((3,1))
|
||||
accel_count = 0
|
||||
while t_accel[i_a] < t and i_a < len_accel-1:
|
||||
accel_sum += accel[:, i_a] # Integrate accel samples between 2 velocity samples
|
||||
accel_count += 1
|
||||
i_a += 1
|
||||
while t_q[i_q] < t and i_q < len_q-1:
|
||||
i_q += 1
|
||||
while t_dist_bottom[i_db] < t and i_db < len_db-1:
|
||||
i_db += 1
|
||||
|
||||
# Only use in air data
|
||||
if dist_bottom[i_db] < 1.0 or accel_count == 0:
|
||||
continue
|
||||
|
||||
qk = np.quaternion(q[0, i_q],q[1, i_q],q[2, i_q],q[3, i_q])
|
||||
q_vl = np.quaternion(0, v_local[0, i_v], v_local[1, i_v], v_local[2, i_v])
|
||||
q_vb = qk.conjugate() * q_vl * qk # Get velocity in body frame
|
||||
vb = quaternion.as_float_array(q_vb)[1:4]
|
||||
|
||||
v_body_aligned = np.append(v_body_aligned, [[vb[0]], [vb[1]], [vb[2]]], axis=1)
|
||||
accel_aligned = np.append(accel_aligned, accel_sum / accel_count, axis=1)
|
||||
t_aligned.append(t)
|
||||
|
||||
return (t_aligned, v_body_aligned, np.asarray(accel_aligned))
|
||||
|
||||
def getData(log, topic_name, variable_name, instance=0):
|
||||
variable_data = np.array([])
|
||||
for elem in log.data_list:
|
||||
if elem.name == topic_name:
|
||||
if instance == elem.multi_id:
|
||||
variable_data = elem.data[variable_name]
|
||||
break
|
||||
|
||||
return variable_data
|
||||
|
||||
def ms2s(time_ms):
|
||||
return time_ms * 1e-6
|
||||
|
||||
def run(logfile):
|
||||
(t, v_body, a_body) = getAllData(logfile)
|
||||
|
||||
rho = 1.15 # air densitiy
|
||||
rho15 = 1.225 # air density at 15 degC
|
||||
|
||||
# x[0]: momentum drag, scales with v
|
||||
# x[1]: inverse of ballistic coefficient (X body axis), scales with v^2
|
||||
# x[2]: inverse of ballistic coefficient (Y body axis), scales with v^2
|
||||
predict_acc_x = lambda x: -v_body[0] * x[0] - 0.5 * rho * v_body[0]**2 * np.sign(v_body[0]) * x[1]
|
||||
predict_acc_y = lambda x: -v_body[1] * x[0] - 0.5 * rho * v_body[1]**2 * np.sign(v_body[1]) * x[2]
|
||||
|
||||
J = lambda x: np.sum(np.power(abs(a_body[0]-predict_acc_x(x)), 2.0) + np.power(abs(a_body[1]-predict_acc_y(x)), 2.0)) # cost function
|
||||
|
||||
x0 = [0.15, 1/100, 1/100] # initial conditions
|
||||
res = optimize.minimize(J, x0, method='nelder-mead', bounds=[(0,1),(0,10),(0,10)], options={'disp': True})
|
||||
|
||||
# Convert results to parameters
|
||||
innov_var = J(res.x) / (len(v_body[0]) + len(v_body[1]))
|
||||
mcoef = res.x[0] / np.sqrt(rho / rho15)
|
||||
|
||||
bcoef_x = 0.0
|
||||
bcoef_y = 0.0
|
||||
|
||||
if res.x[1] > 1/200:
|
||||
bcoef_x = 1/res.x[1]
|
||||
|
||||
if res.x[2] > 1/200:
|
||||
bcoef_y = 1/res.x[2]
|
||||
|
||||
print(f"param set EKF2_BCOEF_X {bcoef_x:.1f}")
|
||||
print(f"param set EKF2_BCOEF_Y {bcoef_y:.1f}")
|
||||
print(f"param set EKF2_MCOEF {mcoef:.2f}")
|
||||
print(f"/!\EXPERIMENTAL param set EKF2_DRAG_NOISE {innov_var:.2f}")
|
||||
|
||||
# Plot data
|
||||
plt.figure(1)
|
||||
plt.suptitle(logfile.split('/')[-1])
|
||||
ax1 = plt.subplot(2, 1, 1)
|
||||
ax1.plot(t, v_body[0])
|
||||
ax1.plot(t, v_body[1])
|
||||
ax1.set_xlabel("time (s)")
|
||||
ax1.set_ylabel("velocity (m/s)")
|
||||
ax1.legend(["forward", "right"])
|
||||
|
||||
ax2 = plt.subplot(2, 1, 2, sharex=ax1)
|
||||
ax2.set_title(f"BCoef_x = {bcoef_x:.1f}, BCoef_y = {bcoef_y:.1f}, MCoef = {mcoef:.4f}", loc="right")
|
||||
ax2.plot(t, a_body[0])
|
||||
ax2.plot(t, a_body[1])
|
||||
ax2.plot(t, predict_acc_x(res.x))
|
||||
ax2.plot(t, predict_acc_y(res.x))
|
||||
ax2.set_xlabel("time (s)")
|
||||
ax2.set_ylabel("acceleration (m/s^2)")
|
||||
ax2.legend(["meas_forward", "meas_right", "predicted_forward", "predicted_right"])
|
||||
plt.show()
|
||||
|
||||
if __name__ == '__main__':
|
||||
import os
|
||||
import argparse
|
||||
|
||||
# Get the path of this script (without file name)
|
||||
script_path = os.path.split(os.path.realpath(__file__))[0]
|
||||
|
||||
# Parse arguments
|
||||
parser = argparse.ArgumentParser(
|
||||
description='Estimate mag biases from ULog file')
|
||||
|
||||
# Provide parameter file path and name
|
||||
parser.add_argument('logfile', help='Full ulog file path, name and extension', type=str)
|
||||
args = parser.parse_args()
|
||||
|
||||
logfile = os.path.abspath(args.logfile) # Convert to absolute path
|
||||
|
||||
run(logfile)
|
||||
@@ -1,32 +0,0 @@
|
||||
# PX4 Drag fusion parameter tuning algorithm
|
||||
In PX4, drag fusion can be enabled in order to estimate the wind when flying a multirotor, assuming that the body vertical acceleration is produced by the rotors and that the lateral forces are produced by drag.
|
||||
The model assumes a combination of:
|
||||
1. momentum drag: created by the rotors changing the direction of the incoming air, linear to the relative airspeed. Parameter `EKF2_MCOEF`
|
||||
2. bluff body drag: created by the wetted area of the aircraft, quadratic to the relative airspeed. Parameters `EKF2_BCOEF_X` and `EKF2_BCOEF_Y`
|
||||
|
||||
The python script was created to automate the tuning of the aforementioned parameters using flight test data.
|
||||
|
||||
## How to use this script
|
||||
First, a flight log with enough information is required in order to accurately estimate the parameters.
|
||||
The best way to do this is to fly the drone in altitude mode, accelerate to a moderate-high speed and let the drone slow-down by its own drag.
|
||||
Repeat the same maneuver in all directions and several times to obtain a good dataset.
|
||||
|
||||
/!\ NOTE: the current state of this script assumes no wind. Some modifications are required to estimate both the wind and the parameters at the same time.
|
||||
|
||||
Then, install the required python packages:
|
||||
```
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
and run the script and give it the log file as an argument:
|
||||
```
|
||||
python drag_replay.py <logfilename.ulg>
|
||||
```
|
||||
|
||||
The estimated parameters are displayed in the console and the fit quality is shown in a plot:
|
||||
```
|
||||
param set EKF2_BCOEF_X 0.0
|
||||
param set EKF2_BCOEF_Y 62.1
|
||||
param set EKF2_MCOEF 0.16
|
||||
/!\EXPERIMENTAL param set EKF2_DRAG_NOISE 0.31
|
||||
```
|
||||

|
||||
@@ -1,6 +0,0 @@
|
||||
matplotlib==3.5.1
|
||||
numpy==1.22.2
|
||||
pyulog==0.9.0
|
||||
quaternion==3.5.2.post4
|
||||
scipy==1.8.0
|
||||
sympy==1.10.1
|
||||
@@ -250,32 +250,18 @@ def create_pdf_report(ulog: ULog, multi_instance: int, output_plot_filename: str
|
||||
data_plot.save()
|
||||
data_plot.close()
|
||||
|
||||
|
||||
# Plot the EKF IMU vibration metrics
|
||||
for imu_status_instance in range(4):
|
||||
try:
|
||||
vehicle_imu_status_data = ulog.get_dataset('vehicle_imu_status', imu_status_instance).data
|
||||
|
||||
imu_status_time = 1e-6 * vehicle_imu_status_data['timestamp']
|
||||
|
||||
if vehicle_imu_status_data['accel_device_id'][0] == estimator_status['accel_device_id'][0]:
|
||||
|
||||
scaled_estimator_status = {'delta_angle_coning_metric': 1000. * vehicle_imu_status_data['delta_angle_coning_metric'],
|
||||
'gyro_vibration_metric': vehicle_imu_status_data['gyro_vibration_metric'],
|
||||
'accel_vibration_metric': vehicle_imu_status_data['accel_vibration_metric']
|
||||
}
|
||||
data_plot = CheckFlagsPlot(
|
||||
imu_status_time, scaled_estimator_status, [['delta_angle_coning_metric'], ['gyro_vibration_metric'], ['accel_vibration_metric']],
|
||||
x_label='time (sec)',
|
||||
y_labels=['Del Ang Coning (mrad^2)', 'HF Gyro (rad/s)', 'HF accel (m/s/s)'],
|
||||
plot_title='IMU Vibration Metrics',
|
||||
pdf_handle=pdf_pages, annotate=True)
|
||||
data_plot.save()
|
||||
data_plot.close()
|
||||
|
||||
except:
|
||||
pass
|
||||
|
||||
scaled_estimator_status = {'vibe[0]': 1000. * estimator_status['vibe[0]'],
|
||||
'vibe[1]': 1000. * estimator_status['vibe[1]'],
|
||||
'vibe[2]': estimator_status['vibe[2]']
|
||||
}
|
||||
data_plot = CheckFlagsPlot(
|
||||
status_time, scaled_estimator_status, [['vibe[0]'], ['vibe[1]'], ['vibe[2]']],
|
||||
x_label='time (sec)', y_labels=['Del Ang Coning (mrad)', 'HF Del Ang (mrad)',
|
||||
'HF Del Vel (m/s)'], plot_title='IMU Vibration Metrics',
|
||||
pdf_handle=pdf_pages, annotate=True)
|
||||
data_plot.save()
|
||||
data_plot.close()
|
||||
|
||||
# Plot the EKF output observer tracking errors
|
||||
scaled_innovations = {
|
||||
|
||||
+1
-1
Submodule Tools/flightgear_bridge updated: f47ce7b5fb...ea9b6cb5b9
@@ -139,7 +139,6 @@ mc_hover_thrust_estimator,CONFIG_MODULES_MC_HOVER_THRUST_ESTIMATOR=y
|
||||
mc_pos_control,CONFIG_MODULES_MC_POS_CONTROL=y
|
||||
mc_rate_control,CONFIG_MODULES_MC_RATE_CONTROL=y
|
||||
micrortps_bridge,CONFIG_MODULES_MICRORTPS_BRIDGE=y
|
||||
microdds_client,CONFIG_MODULES_MICRODDS_CLIENT=y
|
||||
navigator,CONFIG_MODULES_NAVIGATOR=y
|
||||
px4iofirmware,CONFIG_MODULES_PX4IOFIRMWARE=y
|
||||
rc_update,CONFIG_MODULES_RC_UPDATE=y
|
||||
|
||||
@@ -330,11 +330,9 @@ def get_mixers(yaml_config, output_functions, verbose):
|
||||
option = select_param + '==' + str(type_index)
|
||||
mixer_config = {
|
||||
'option': option,
|
||||
'help-url': 'https://docs.px4.io/master/en/config/actuators.html',
|
||||
}
|
||||
for optional in ['type', 'title']:
|
||||
if optional in current_type:
|
||||
mixer_config[optional] = current_type[optional]
|
||||
if 'type' in current_type:
|
||||
mixer_config['type'] = current_type['type']
|
||||
actuators = []
|
||||
for actuator_conf in current_type['actuators']:
|
||||
actuator = {
|
||||
|
||||
@@ -7,8 +7,7 @@ import os
|
||||
import math
|
||||
import matplotlib.pyplot as plt
|
||||
import numpy as np
|
||||
|
||||
from scipy.signal import medfilt
|
||||
import scipy as sp
|
||||
|
||||
from pyulog import *
|
||||
|
||||
@@ -66,7 +65,7 @@ def resampleWithDeltaX(x,y):
|
||||
return resampledX,resampledY
|
||||
|
||||
def median_filter(data):
|
||||
return medfilt(data, 31)
|
||||
return sp.signal.medfilt(data, 31)
|
||||
|
||||
parser = argparse.ArgumentParser(description='Reads in IMU data from a static thermal calibration test and performs a curve fit of gyro, accel and baro bias vs temperature')
|
||||
parser.add_argument('filename', metavar='file.ulg', help='ULog input file')
|
||||
|
||||
@@ -16,7 +16,7 @@ class ModuleDocumentation(object):
|
||||
valid_categories = ['driver', 'estimator', 'controller', 'system',
|
||||
'communication', 'command', 'template', 'simulation', 'autotune']
|
||||
valid_subcategories = ['', 'distance_sensor', 'imu', 'airspeed_sensor',
|
||||
'magnetometer', 'baro', 'optical_flow', 'rpm_sensor']
|
||||
'magnetometer', 'baro', 'optical_flow']
|
||||
|
||||
max_line_length = 80 # wrap lines that are longer than this
|
||||
|
||||
|
||||
+1
-1
Submodule Tools/sitl_gazebo updated: 2cf56d0bf8...25138e803e
@@ -1,6 +0,0 @@
|
||||
CONFIG_BOARD_TOOLCHAIN="arm-none-eabi"
|
||||
CONFIG_BOARD_ARCHITECTURE="cortex-m4"
|
||||
CONFIG_BOARD_ROMFSROOT=""
|
||||
CONFIG_BOARD_CONSTRAINED_MEMORY=y
|
||||
CONFIG_DRIVERS_BOOTLOADERS=y
|
||||
CONFIG_NSH_BUILTIN_APPS=y
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user