diff options
author | Lorenz Meier <lorenz@px4.io> | 2015-04-21 13:45:45 +0200 |
---|---|---|
committer | Lorenz Meier <lorenz@px4.io> | 2015-04-21 13:45:45 +0200 |
commit | a0ad5ec42b659fbf083a489c368f9a90c29444a6 (patch) | |
tree | e78d9f5205aaa91da0e268d718414255ccf6584e | |
parent | 9c282cf6d69c60e2e280d1febf21fc96bb6e40cc (diff) | |
parent | 5e044e5b676747a278513ec7501a472dea25aac6 (diff) | |
download | px4-firmware-a0ad5ec42b659fbf083a489c368f9a90c29444a6.tar.gz px4-firmware-a0ad5ec42b659fbf083a489c368f9a90c29444a6.tar.bz2 px4-firmware-a0ad5ec42b659fbf083a489c368f9a90c29444a6.zip |
Merge pull request #2062 from PX4/firefly
Firefly6
-rw-r--r-- | ROMFS/px4fmu_common/init.d/13002_firefly6 | 10 | ||||
-rw-r--r-- | ROMFS/px4fmu_common/init.d/rc.interface | 11 | ||||
-rw-r--r-- | ROMFS/px4fmu_common/mixers/firefly6.aux.mix | 18 | ||||
-rw-r--r-- | src/modules/vtol_att_control/vtol_att_control_main.cpp | 4 |
4 files changed, 35 insertions, 8 deletions
diff --git a/ROMFS/px4fmu_common/init.d/13002_firefly6 b/ROMFS/px4fmu_common/init.d/13002_firefly6 index 29167f1ed..9489bfd9a 100644 --- a/ROMFS/px4fmu_common/init.d/13002_firefly6 +++ b/ROMFS/px4fmu_common/init.d/13002_firefly6 @@ -8,10 +8,14 @@ sh /etc/init.d/rc.vtol_defaults set MIXER firefly6 -set MIXER_AUX firefly6 +set PWM_OUT 123456 -set PWM_OUT 12345678 -set PWM_AUX_OUT 1234 +set MIXER_AUX firefly6 set PWM_AUX_RATE 50 +set PWM_AUX_OUT 1234 +set PWM_AUX_DISARMED 1000 +set PWM_AUX_MIN 1000 +set PWM_AUX_MAX 2000 + param set VT_MOT_COUNT 6 param set VT_IDLE_PWM_MC 1080 diff --git a/ROMFS/px4fmu_common/init.d/rc.interface b/ROMFS/px4fmu_common/init.d/rc.interface index efdba9506..7a424970f 100644 --- a/ROMFS/px4fmu_common/init.d/rc.interface +++ b/ROMFS/px4fmu_common/init.d/rc.interface @@ -45,7 +45,7 @@ then if mixer load $OUTPUT_DEV $MIXER_FILE then - echo "[i] Mixer: $MIXER_FILE" + echo "[i] Mixer: $MIXER_FILE on $OUTPUT_DEV" else echo "[i] Error loading mixer: $MIXER_FILE" tone_alarm $TUNE_ERR @@ -105,7 +105,7 @@ then set MIXER_AUX_FILE none set OUTPUT_AUX_DEV /dev/pwm_output1 - if [ -f $SDCARD_MIXERS_PATH/$MIXER_AUX.mix ] + if [ -f $SDCARD_MIXERS_PATH/$MIXER_AUX.aux.mix ] then set MIXER_AUX_FILE $SDCARD_MIXERS_PATH/$MIXER_AUX.aux.mix else @@ -120,7 +120,12 @@ then then if fmu mode_pwm then - mixer load $OUTPUT_AUX_DEV $MIXER_AUX_FILE + if mixer load $OUTPUT_AUX_DEV $MIXER_AUX_FILE + then + echo "[i] Mixer: $MIXER_AUX_FILE on $OUTPUT_AUX_DEV" + else + echo "[i] Error loading mixer: $MIXER_AUX_FILE" + fi else tone_alarm $TUNE_ERR fi diff --git a/ROMFS/px4fmu_common/mixers/firefly6.aux.mix b/ROMFS/px4fmu_common/mixers/firefly6.aux.mix index 9ed6eeed9..b0b425092 100644 --- a/ROMFS/px4fmu_common/mixers/firefly6.aux.mix +++ b/ROMFS/px4fmu_common/mixers/firefly6.aux.mix @@ -1,4 +1,14 @@ -# mixer for the FireFly6 elevons +# mixer for the FireFly6 tilt mechansim servo, elevons and landing gear +======================================================================= + +Tilt mechanism servo mixer +--------------------------- +M: 1 +O: 10000 10000 0 -10000 10000 +S: 1 4 10000 10000 0 -10000 10000 + +Elevon mixers +------------- M: 2 O: 10000 10000 0 -10000 10000 S: 1 0 7500 7500 0 -10000 10000 @@ -8,3 +18,9 @@ M: 2 O: 10000 10000 0 -10000 10000 S: 1 0 7500 7500 0 -10000 10000 S: 1 1 -8000 -8000 0 -10000 10000 + +Landing gear mixer +------------------ +M: 1 +O: 10000 10000 0 -10000 10000 +S: 0 7 10000 10000 0 -10000 10000 diff --git a/src/modules/vtol_att_control/vtol_att_control_main.cpp b/src/modules/vtol_att_control/vtol_att_control_main.cpp index defcff8e4..d9425f2bb 100644 --- a/src/modules/vtol_att_control/vtol_att_control_main.cpp +++ b/src/modules/vtol_att_control/vtol_att_control_main.cpp @@ -176,7 +176,7 @@ private: bool flag_idle_mc; //false = "idle is set for fixed wing mode"; true = "idle is set for multicopter mode" unsigned _motor_count; // number of motors float _airspeed_tot; - + float _tilt_control; //*****************Member functions*********************************************************************** void task_main(); //main task @@ -241,6 +241,7 @@ VtolAttitudeControl::VtolAttitudeControl() : flag_idle_mc = true; _airspeed_tot = 0.0f; + _tilt_control = 0.0f; memset(& _vtol_vehicle_status, 0, sizeof(_vtol_vehicle_status)); _vtol_vehicle_status.vtol_in_rw_mode = true; /* start vtol in rotary wing mode*/ @@ -521,6 +522,7 @@ void VtolAttitudeControl::fill_mc_att_control_output() //set neutral position for elevons _actuators_out_1.control[0] = _actuators_mc_in.control[2]; //roll elevon _actuators_out_1.control[1] = _actuators_mc_in.control[1];; //pitch elevon + _actuators_out_1.control[4] = _tilt_control; // for tilt-rotor control } /** |