mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-08-02 04:58:15 +08:00
Dodeca mixer using the AUX channels (#7532)
* Added Dodecarotor Mixer * fixed formatting style * Renamed dodeca mixers to top and bottom
This commit is contained in:
51
ROMFS/px4fmu_common/init.d/24001_dodeca_cox
Normal file
51
ROMFS/px4fmu_common/init.d/24001_dodeca_cox
Normal file
@@ -0,0 +1,51 @@
|
||||
#!nsh
|
||||
#
|
||||
# @name Generic Dodecarotor cox geometry
|
||||
#
|
||||
# @type Dodecarotor cox
|
||||
# @class Copter
|
||||
#
|
||||
# @output MAIN1 motor 1
|
||||
# @output MAIN2 motor 2
|
||||
# @output MAIN3 motor 3
|
||||
# @output MAIN4 motor 4
|
||||
# @output MAIN5 motor 5
|
||||
# @output MAIN6 motor 6
|
||||
#
|
||||
# @output AUX1 motor 7
|
||||
# @output AUX2 motor 8
|
||||
# @output AUX3 motor 9
|
||||
# @output AUX4 motor 10
|
||||
# @output AUX5 motor 11
|
||||
# @output AUX6 motor 12
|
||||
#
|
||||
# @maintainer Ian McNanie <ianmcnanie@gmail.com>
|
||||
# @maintainer William Peale <develop707@gmail.com>
|
||||
#
|
||||
|
||||
set VEHICLE_TYPE mc
|
||||
|
||||
if [ $AUTOCNF == yes ]
|
||||
then
|
||||
param set NAV_ACC_RAD 2.0
|
||||
param set RTL_RETURN_ALT 30.0
|
||||
param set RTL_DESCEND_ALT 10.0
|
||||
param set PWM_MIN 1075
|
||||
param set PWM_MAX 1950
|
||||
param set PWM_RATE 400
|
||||
|
||||
param set RTL_LAND_DELAY 0
|
||||
fi
|
||||
|
||||
set PWM_AUX_RATE 400
|
||||
# Note: May Have to set these parameters manually. They don't appear to save.
|
||||
set PWM_AUX_DISARMED 900
|
||||
param set PWM_AUX_MIN 1075
|
||||
param set PWM_AUX_MAX 1950
|
||||
|
||||
set MIXER dodeca_top_cox
|
||||
set MIXER_AUX dodeca_bottom_cox
|
||||
|
||||
# Need to set all 8 channels
|
||||
set PWM_OUT 12345678
|
||||
set PWM_AUX_OUT 123456
|
||||
3
ROMFS/px4fmu_common/mixers/dodeca_bottom_cox.aux.mix
Normal file
3
ROMFS/px4fmu_common/mixers/dodeca_bottom_cox.aux.mix
Normal file
@@ -0,0 +1,3 @@
|
||||
# Dodeca Cox
|
||||
|
||||
R: 6a 10000 10000 10000 0
|
||||
3
ROMFS/px4fmu_common/mixers/dodeca_top_cox.main.mix
Normal file
3
ROMFS/px4fmu_common/mixers/dodeca_top_cox.main.mix
Normal file
@@ -0,0 +1,3 @@
|
||||
# Dodeca Cox
|
||||
|
||||
R: 6m 10000 10000 10000 0
|
||||
@@ -172,6 +172,13 @@ MultirotorMixer::from_text(Mixer::ControlCallback control_cb, uintptr_t cb_handl
|
||||
} else if (!strcmp(geomname, "8c")) {
|
||||
geometry = MultirotorGeometry::OCTA_COX;
|
||||
|
||||
} else if (!strcmp(geomname, "6m")) {
|
||||
geometry = MultirotorGeometry::DODECA_TOP_COX;
|
||||
|
||||
} else if (!strcmp(geomname, "6a")) {
|
||||
geometry = MultirotorGeometry::DODECA_BOTTOM_COX;
|
||||
|
||||
|
||||
#if 0
|
||||
|
||||
} else if (!strcmp(geomname, "8cw")) {
|
||||
|
||||
@@ -195,8 +195,25 @@ tri_y = [
|
||||
[ 180, 0.0],
|
||||
]
|
||||
|
||||
dodeca_top_cox = [
|
||||
[ 90, CW],
|
||||
[ -90, CCW],
|
||||
[ -30, CW],
|
||||
[ 150, CCW],
|
||||
[ 30, CCW],
|
||||
[-150, CW],
|
||||
]
|
||||
|
||||
tables = [quad_x, quad_h, quad_plus, quad_v, quad_wide, quad_s250aq, quad_deadcat, hex_x, hex_plus, hex_cox, hex_t, octa_x, octa_plus, octa_cox, octa_cox_wide, twin_engine, tri_y]
|
||||
dodeca_bottom_cox = [
|
||||
[ 90, CCW],
|
||||
[ -90, CW],
|
||||
[ -30, CCW],
|
||||
[ 150, CW],
|
||||
[ 30, CW],
|
||||
[-150, CCW],
|
||||
]
|
||||
|
||||
tables = [quad_x, quad_h, quad_plus, quad_v, quad_wide, quad_s250aq, quad_deadcat, hex_x, hex_plus, hex_cox, hex_t, octa_x, octa_plus, octa_cox, octa_cox_wide, twin_engine, tri_y, dodeca_top_cox, dodeca_bottom_cox]
|
||||
|
||||
def variableName(variable):
|
||||
for variableName, value in list(globals().items()):
|
||||
|
||||
Reference in New Issue
Block a user