Skip to content

Commit

Permalink
Nederdrones...
Browse files Browse the repository at this point in the history
  • Loading branch information
dewagter committed Dec 14, 2023
1 parent 38a6ad2 commit 6f5df22
Show file tree
Hide file tree
Showing 8 changed files with 140 additions and 100 deletions.
15 changes: 10 additions & 5 deletions conf/airframes/ENAC/cyfoam.xml
Original file line number Diff line number Diff line change
Expand Up @@ -156,18 +156,23 @@
<!--<servo name="SERVO_TEST" no="4" min="1000" neutral="1500" max="2000"/>-->
</servos>

<commands>
<commands><!-- Order must match the INDI ctrl_eff: INDI_NUM_ACT -->
<axis name="ELEVON_LEFT" failsafe_value="0"/>
<axis name="ELEVON_RIGHT" failsafe_value="0"/>
<axis name="MOTOR_RIGHT" failsafe_value="0"/>
<axis name="MOTOR_LEFT" failsafe_value="0"/>

<axis name="PITCH" failsafe_value="0"/>
<axis name="ROLL" failsafe_value="0"/>
<axis name="YAW" failsafe_value="0"/>
<axis name="THRUST" failsafe_value="0"/>
</commands>

<command_laws>
<set servo="ELEVON_LEFT" value="autopilot.motors_on ? actuators_pprz[0] : 0"/>
<set servo="ELEVON_RIGHT" value="autopilot.motors_on ? actuators_pprz[1] : 0"/>
<set servo="RM" value="autopilot.motors_on ? actuators_pprz[2] : -MAX_PPRZ"/>
<set servo="LM" value="autopilot.motors_on ? actuators_pprz[3] : -MAX_PPRZ"/>
<set servo="ELEVON_LEFT" value="autopilot.motors_on ? @ELEVON_LEFT : 0"/>
<set servo="ELEVON_RIGHT" value="autopilot.motors_on ? @ELEVON_RIGHT : 0"/>
<set servo="RM" value="autopilot.motors_on ? @MOTOR_RIGHT : -MAX_PPRZ"/>
<set servo="LM" value="autopilot.motors_on ? @MOTOR_LEFT : -MAX_PPRZ"/>
<!--<set servo="RM" value="autopilot_motors_on ? -MAX_PPRZ : -MAX_PPRZ"/>-->
<!--<set servo="LM" value="autopilot_motors_on ? -MAX_PPRZ : -MAX_PPRZ"/>-->
</command_laws>
Expand Down
48 changes: 24 additions & 24 deletions conf/airframes/tudelft/nederdrone4.xml
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@
<module name="fdm" type="jsbsim"/>

<module name="logger_file">
<define name="FILE_LOGGER_PATH" value="/home/ewoud/Documents"/>
<define name="FILE_LOGGER_PATH" value="~/"/>
</module>

<!--Not dealing with these in the simulation-->
Expand Down Expand Up @@ -225,38 +225,38 @@
<define name="ROLL_COEF" value="{256, 253, 159, -159, -253, -256, 256, 157, 56, -56, -157, -256}"/>
<define name="PITCH_COEF" value="{256, 256, 256, 256, 256, 256, -256, -256, -256, -256, -256, -256}"/>
<define name="YAW_COEF" value="{251, -256, 252, -252, 256, -251, -256, 252, -254, 254, -252, 256}"/>
<!--<define name="YAW_COEF" value="{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}"/>-->
<define name="THRUST_COEF" value="{256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256}"/>
</section>

<command_laws>
<let var="th_hold" value="Or(LessThan(RadioControlValues(RADIO_TH_HOLD), -4800), !autopilot_get_motors_on())"/>

<!-- Tip props always at 80% -->
<call fun="actuators_pprz[8] = (Or(LessThan(RadioControlValues(RADIO_TH_HOLD), -4800), 0.01 > sched_ratio_tip_props)? -9600 : 9600/100*85*sched_ratio_tip_props);"/>
<call fun="sys_id_doublet_add_values(autopilot_get_motors_on(),FALSE,actuators_pprz)"/>
<call fun="sys_id_chirp_add_values(autopilot_get_motors_on(),FALSE,actuators_pprz)"/>

<set servo="MOTOR_1" value="($th_hold? -9600 : actuators_pprz[8])"/>
<set servo="MOTOR_2" value="($th_hold? -9600 : actuators_pprz[0])"/>
<set servo="MOTOR_3" value="($th_hold? -9600 : actuators_pprz[0])"/>
<set servo="MOTOR_4" value="($th_hold? -9600 : actuators_pprz[1])"/>
<set servo="MOTOR_5" value="($th_hold? -9600 : actuators_pprz[1])"/>
<set servo="MOTOR_6" value="($th_hold? -9600 : actuators_pprz[8])"/>
<set servo="MOTOR_7" value="($th_hold? -9600 : actuators_pprz[2])"/>
<set servo="MOTOR_8" value="($th_hold? -9600 : actuators_pprz[2])"/>
<set servo="MOTOR_9" value="($th_hold? -9600 : actuators_pprz[2])"/>
<set servo="MOTOR_10" value="($th_hold? -9600 : actuators_pprz[3])"/>
<set servo="MOTOR_11" value="($th_hold? -9600 : actuators_pprz[3])"/>
<set servo="MOTOR_12" value="($th_hold? -9600 : actuators_pprz[3])"/>
<let var="tip_thruster" value="(Or(LessThan(RadioControlValues(RADIO_TH_HOLD), -4800), 0.01 > sched_ratio_tip_props)? -9600 : 9600/100*85*sched_ratio_tip_props)"/>
<call fun="sys_id_doublet_add_values(autopilot_get_motors_on(),FALSE,values)"/>
<call fun="sys_id_chirp_add_values(autopilot_get_motors_on(),FALSE,values)"/>

<set servo="MOTOR_1" value="($th_hold? -9600 : $tip_thruster)"/>
<set servo="MOTOR_2" value="($th_hold? -9600 : @FRONT_LEFT)"/>
<set servo="MOTOR_3" value="($th_hold? -9600 : @FRONT_LEFT)"/>
<set servo="MOTOR_4" value="($th_hold? -9600 : @FRONT_RIGHT)"/>
<set servo="MOTOR_5" value="($th_hold? -9600 : @FRONT_RIGHT)"/>
<set servo="MOTOR_6" value="($th_hold? -9600 : $tip_thruster)"/>

<set servo="MOTOR_7" value="($th_hold? -9600 : @REAR_LEFT)"/>
<set servo="MOTOR_8" value="($th_hold? -9600 : @REAR_LEFT)"/>
<set servo="MOTOR_9" value="($th_hold? -9600 : @REAR_LEFT)"/>
<set servo="MOTOR_10" value="($th_hold? -9600 : @REAR_RIGHT)"/>
<set servo="MOTOR_11" value="($th_hold? -9600 : @REAR_RIGHT)"/>
<set servo="MOTOR_12" value="($th_hold? -9600 : @REAR_RIGHT)"/>

<!-- Removed ApplyDiff for differential control -->
<set servo="AIL_1" value="($th_hold? 9600 : actuators_pprz[4])"/>
<set servo="AIL_2" value="($th_hold? 9600 : actuators_pprz[5])"/>
<set servo="AIL_3" value="actuators_pprz[6]"/>
<set servo="AIL_4" value="actuators_pprz[7]"/>
<set servo="FLAP_3" value="actuators_pprz[6]"/>
<set servo="FLAP_4" value="actuators_pprz[7]"/>
<set servo="AIL_1" value="($th_hold? 9600 : @FRONT_LEFT_FLAP)"/>
<set servo="AIL_2" value="($th_hold? 9600 : @FRONT_RIGHT_FLAP)"/>
<set servo="AIL_3" value="@REAR_LEFT_FLAP"/>
<set servo="AIL_4" value="@REAR_RIGHT_FLAP"/>
<set servo="FLAP_3" value="@REAR_LEFT_FLAP"/>
<set servo="FLAP_4" value="@REAR_RIGHT_FLAP"/>
</command_laws>

<section name="MISC">
Expand Down
55 changes: 34 additions & 21 deletions conf/airframes/tudelft/nederdrone6.xml
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@
<module name="fdm" type="jsbsim"/>

<module name="logger_file">
<define name="FILE_LOGGER_PATH" value="/home/ewoud/Documents"/>
<define name="FILE_LOGGER_PATH" value="~/"/>
</module>

<!--Not dealing with these in the simulation-->
Expand Down Expand Up @@ -189,7 +189,20 @@
<servo name="AIL_4" no="7" min="6000" neutral="0" max="-6000"/>
</servos>

<commands>
<commands><!-- Order must match the INDI ctrl_eff: INDI_NUM_ACT -->
<axis name="FRONT_LEFT" failsafe_value="0"/>
<axis name="FRONT_RIGHT" failsafe_value="0"/>
<axis name="REAR_LEFT" failsafe_value="0"/>
<axis name="REAR_RIGHT" failsafe_value="0"/>

<axis name="FRONT_LEFT_FLAP" failsafe_value="0"/>
<axis name="FRONT_RIGHT_FLAP" failsafe_value="0"/>
<axis name="REAR_LEFT_FLAP" failsafe_value="0"/>
<axis name="REAR_RIGHT_FLAP" failsafe_value="0"/>

<axis name="TIP_THRUSTERS" failsafe_value="0"/>

<!-- Default commands -->
<axis name="ROLL" failsafe_value="0"/>
<axis name="PITCH" failsafe_value="-300"/>
<axis name="YAW" failsafe_value="0"/>
Expand All @@ -204,34 +217,34 @@
<define name="ROLL_COEF" value="{256, 157, 56, -56, -157, -256, 256, 157, 56, -56, -157, -256}"/>
<define name="PITCH_COEF" value="{256, 256, 256, 256, 256, 256, -256, -256, -256, -256, -256, -256}"/>
<define name="YAW_COEF" value="{251, -256, 252, -252, 256, -251, -256, 252, -254, 254, -252, 256}"/>
<!--<define name="YAW_COEF" value="{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}"/>-->
<define name="THRUST_COEF" value="{256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256}"/>
</section>

<command_laws>
<let var="th_hold" value="Or(LessThan(RadioControlValues(RADIO_TH_HOLD), -4800), !autopilot_get_motors_on())"/>

<!-- Tip props always at 80% -->
<call fun="actuators_pprz[8] = (Or(LessThan(RadioControlValues(RADIO_TH_HOLD), -4800), 0.01 > sched_ratio_tip_props)? -9600 : 9600/100*70*sched_ratio_tip_props);"/>

<set servo="MOTOR_1" value="($th_hold? -9600 : actuators_pprz[8])"/>
<set servo="MOTOR_2" value="($th_hold? -9600 : actuators_pprz[0])"/>
<set servo="MOTOR_3" value="($th_hold? -9600 : actuators_pprz[0])"/>
<set servo="MOTOR_4" value="($th_hold? -9600 : actuators_pprz[1])"/>
<set servo="MOTOR_5" value="($th_hold? -9600 : actuators_pprz[1])"/>
<set servo="MOTOR_6" value="($th_hold? -9600 : actuators_pprz[8])"/>
<set servo="MOTOR_7" value="($th_hold? -9600 : actuators_pprz[2])"/>
<set servo="MOTOR_8" value="($th_hold? -9600 : actuators_pprz[2])"/>
<set servo="MOTOR_9" value="($th_hold? -9600 : actuators_pprz[2])"/>
<set servo="MOTOR_10" value="($th_hold? -9600 : actuators_pprz[3])"/>
<set servo="MOTOR_11" value="($th_hold? -9600 : actuators_pprz[3])"/>
<set servo="MOTOR_12" value="($th_hold? -9600 : actuators_pprz[3])"/>
<let var="tip_thruster" value="(Or(LessThan(RadioControlValues(RADIO_TH_HOLD), -4800), 0.01 > sched_ratio_tip_props)? -9600 : 9600/100*70*sched_ratio_tip_props)"/>

<set servo="MOTOR_1" value="($th_hold? -9600 : $tip_thruster)"/>
<set servo="MOTOR_2" value="($th_hold? -9600 : @FRONT_LEFT)"/>
<set servo="MOTOR_3" value="($th_hold? -9600 : @FRONT_LEFT)"/>
<set servo="MOTOR_4" value="($th_hold? -9600 : @FRONT_RIGHT)"/>
<set servo="MOTOR_5" value="($th_hold? -9600 : @FRONT_RIGHT)"/>
<set servo="MOTOR_6" value="($th_hold? -9600 : $tip_thruster)"/>

<set servo="MOTOR_7" value="($th_hold? -9600 : @REAR_LEFT)"/>
<set servo="MOTOR_8" value="($th_hold? -9600 : @REAR_LEFT)"/>
<set servo="MOTOR_9" value="($th_hold? -9600 : @REAR_LEFT)"/>
<set servo="MOTOR_10" value="($th_hold? -9600 : @REAR_RIGHT)"/>
<set servo="MOTOR_11" value="($th_hold? -9600 : @REAR_RIGHT)"/>
<set servo="MOTOR_12" value="($th_hold? -9600 : @REAR_RIGHT)"/>

<!-- Removed ApplyDiff for differential control -->
<set servo="AIL_1" value="($th_hold? 9600 : actuators_pprz[4])"/>
<set servo="AIL_2" value="($th_hold? 9600 : actuators_pprz[5])"/>
<set servo="AIL_3" value="actuators_pprz[6]"/>
<set servo="AIL_4" value="actuators_pprz[7]"/>
<set servo="AIL_1" value="($th_hold? 9600 : @FRONT_LEFT_FLAP)"/>
<set servo="AIL_2" value="($th_hold? 9600 : @FRONT_RIGHT_FLAP)"/>
<set servo="AIL_3" value="@REAR_LEFT_FLAP"/>
<set servo="AIL_4" value="@REAR_RIGHT_FLAP"/>
</command_laws>

<section name="MISC">
Expand Down
57 changes: 35 additions & 22 deletions conf/airframes/tudelft/nederdrone7.xml
Original file line number Diff line number Diff line change
Expand Up @@ -247,7 +247,20 @@
<servo name="AIL_4" no="7" min="6000" neutral="0" max="-6000"/>
</servos>

<commands>
<commands><!-- Order must match the INDI ctrl_eff: INDI_NUM_ACT -->
<axis name="FRONT_LEFT" failsafe_value="0"/>
<axis name="FRONT_RIGHT" failsafe_value="0"/>
<axis name="REAR_LEFT" failsafe_value="0"/>
<axis name="REAR_RIGHT" failsafe_value="0"/>

<axis name="FRONT_LEFT_FLAP" failsafe_value="0"/>
<axis name="FRONT_RIGHT_FLAP" failsafe_value="0"/>
<axis name="REAR_LEFT_FLAP" failsafe_value="0"/>
<axis name="REAR_RIGHT_FLAP" failsafe_value="0"/>

<axis name="TIP_THRUSTERS" failsafe_value="0"/>

<!-- Default commands -->
<axis name="ROLL" failsafe_value="0"/>
<axis name="PITCH" failsafe_value="-300"/>
<axis name="YAW" failsafe_value="0"/>
Expand All @@ -262,34 +275,34 @@
<define name="ROLL_COEF" value="{256, 157, 56, -56, -157, -256, 256, 157, 56, -56, -157, -256}"/>
<define name="PITCH_COEF" value="{256, 256, 256, 256, 256, 256, -256, -256, -256, -256, -256, -256}"/>
<define name="YAW_COEF" value="{251, -256, 252, -252, 256, -251, -256, 252, -254, 254, -252, 256}"/>
<!--<define name="YAW_COEF" value="{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}"/>-->
<define name="THRUST_COEF" value="{256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256}"/>
</section>

<command_laws>
<let var="th_hold" value="Or(LessThan(RadioControlValues(RADIO_TH_HOLD), -4800), !autopilot_get_motors_on())"/>

<!-- Tip props always at 80% -->
<call fun="actuators_pprz[8] = (Or(LessThan(RadioControlValues(RADIO_TH_HOLD), -4800), 0.01 > sched_ratio_tip_props)? -9600 : 9600/100*70*sched_ratio_tip_props);"/>

<set servo="MOTOR_1" value="($th_hold? -9600 : actuators_pprz[8])"/>
<set servo="MOTOR_2" value="($th_hold? -9600 : actuators_pprz[0])"/>
<set servo="MOTOR_3" value="($th_hold? -9600 : actuators_pprz[0])"/>
<set servo="MOTOR_4" value="($th_hold? -9600 : actuators_pprz[1])"/>
<set servo="MOTOR_5" value="($th_hold? -9600 : actuators_pprz[1])"/>
<set servo="MOTOR_6" value="($th_hold? -9600 : actuators_pprz[8])"/>
<set servo="MOTOR_7" value="($th_hold? -9600 : actuators_pprz[2])"/>
<set servo="MOTOR_8" value="($th_hold? -9600 : actuators_pprz[2])"/>
<set servo="MOTOR_9" value="($th_hold? -9600 : actuators_pprz[2])"/>
<set servo="MOTOR_10" value="($th_hold? -9600 : actuators_pprz[3])"/>
<set servo="MOTOR_11" value="($th_hold? -9600 : actuators_pprz[3])"/>
<set servo="MOTOR_12" value="($th_hold? -9600 : actuators_pprz[3])"/>
<let var="tip_thruster" value="(Or(LessThan(RadioControlValues(RADIO_TH_HOLD), -4800), 0.01 > sched_ratio_tip_props)? -9600 : 9600/100*70*sched_ratio_tip_props)"/>

<set servo="MOTOR_1" value="($th_hold? -9600 : $tip_thruster)"/>
<set servo="MOTOR_2" value="($th_hold? -9600 : @FRONT_LEFT)"/>
<set servo="MOTOR_3" value="($th_hold? -9600 : @FRONT_LEFT)"/>
<set servo="MOTOR_4" value="($th_hold? -9600 : @FRONT_RIGHT)"/>
<set servo="MOTOR_5" value="($th_hold? -9600 : @FRONT_RIGHT)"/>
<set servo="MOTOR_6" value="($th_hold? -9600 : $tip_thruster)"/>

<set servo="MOTOR_7" value="($th_hold? -9600 : @REAR_LEFT)"/>
<set servo="MOTOR_8" value="($th_hold? -9600 : @REAR_LEFT)"/>
<set servo="MOTOR_9" value="($th_hold? -9600 : @REAR_LEFT)"/>
<set servo="MOTOR_10" value="($th_hold? -9600 : @REAR_RIGHT)"/>
<set servo="MOTOR_11" value="($th_hold? -9600 : @REAR_RIGHT)"/>
<set servo="MOTOR_12" value="($th_hold? -9600 : @REAR_RIGHT)"/>

<!-- Removed ApplyDiff for differential control -->
<set servo="AIL_1" value="($th_hold? 9600 : actuators_pprz[4])"/>
<set servo="AIL_2" value="($th_hold? 9600 : actuators_pprz[5])"/>
<set servo="AIL_3" value="actuators_pprz[6]"/>
<set servo="AIL_4" value="actuators_pprz[7]"/>
<set servo="AIL_1" value="($th_hold? 9600 : @FRONT_LEFT_FLAP)"/>
<set servo="AIL_2" value="($th_hold? 9600 : @FRONT_RIGHT_FLAP)"/>
<set servo="AIL_3" value="@REAR_LEFT_FLAP"/>
<set servo="AIL_4" value="@REAR_RIGHT_FLAP"/>
</command_laws>

<section name="MISC">
Expand Down Expand Up @@ -398,9 +411,9 @@
<define name="ESTIMATION_FILT_CUTOFF" value="5.0"/>
<define name="FILT_CUTOFF_P" value="20."/>
<define name="FILT_CUTOFF_Q" value="20."/>
<define name="FILT_CUTOFF_R" value="4."/>
<define name="FILT_CUTOFF_R" value="4.0"/>

<!-- first order actuator dynamics -->
<!--define name="ACT_DYN" value="{0.009, 0.009, 0.009, 0.009, 0.05, 0.05, 0.05, 0.05}"/-->
<define name="ACT_DYN" value="{0.028, 0.028, 0.028, 0.028, 0.05, 0.05, 0.05, 0.05}"/>
<define name="ACT_RATE_LIMIT" value="{9600, 9600, 9600, 9600, 170, 170, 170, 170}"/>
<define name="ACT_IS_SERVO" value="{0, 0, 0, 0, 1, 1, 1, 1}"/>
Expand Down
55 changes: 34 additions & 21 deletions conf/airframes/tudelft/nederdrone8.xml
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@
<module name="fdm" type="jsbsim"/>

<module name="logger_file">
<define name="FILE_LOGGER_PATH" value="/home/ewoud/Documents"/>
<define name="FILE_LOGGER_PATH" value="~/"/>
</module>

<!--Not dealing with these in the simulation-->
Expand Down Expand Up @@ -189,7 +189,20 @@
<servo name="AIL_4" no="7" min="6000" neutral="0" max="-6000"/>
</servos>

<commands>
<commands><!-- Order must match the INDI ctrl_eff: INDI_NUM_ACT -->
<axis name="FRONT_LEFT" failsafe_value="0"/>
<axis name="FRONT_RIGHT" failsafe_value="0"/>
<axis name="REAR_LEFT" failsafe_value="0"/>
<axis name="REAR_RIGHT" failsafe_value="0"/>

<axis name="FRONT_LEFT_FLAP" failsafe_value="0"/>
<axis name="FRONT_RIGHT_FLAP" failsafe_value="0"/>
<axis name="REAR_LEFT_FLAP" failsafe_value="0"/>
<axis name="REAR_RIGHT_FLAP" failsafe_value="0"/>

<axis name="TIP_THRUSTERS" failsafe_value="0"/>

<!-- Default commands -->
<axis name="ROLL" failsafe_value="0"/>
<axis name="PITCH" failsafe_value="-300"/>
<axis name="YAW" failsafe_value="0"/>
Expand All @@ -204,34 +217,34 @@
<define name="ROLL_COEF" value="{256, 157, 56, -56, -157, -256, 256, 157, 56, -56, -157, -256}"/>
<define name="PITCH_COEF" value="{256, 256, 256, 256, 256, 256, -256, -256, -256, -256, -256, -256}"/>
<define name="YAW_COEF" value="{251, -256, 252, -252, 256, -251, -256, 252, -254, 254, -252, 256}"/>
<!--<define name="YAW_COEF" value="{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}"/>-->
<define name="THRUST_COEF" value="{256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256}"/>
</section>

<command_laws>
<let var="th_hold" value="Or(LessThan(RadioControlValues(RADIO_TH_HOLD), -4800), !autopilot_get_motors_on())"/>

<!-- Tip props always at 80% -->
<call fun="actuators_pprz[8] = (Or(LessThan(RadioControlValues(RADIO_TH_HOLD), -4800), 0.01 > sched_ratio_tip_props)? -9600 : 9600/100*70*sched_ratio_tip_props);"/>

<set servo="MOTOR_1" value="($th_hold? -9600 : actuators_pprz[8])"/>
<set servo="MOTOR_2" value="($th_hold? -9600 : actuators_pprz[0])"/>
<set servo="MOTOR_3" value="($th_hold? -9600 : actuators_pprz[0])"/>
<set servo="MOTOR_4" value="($th_hold? -9600 : actuators_pprz[1])"/>
<set servo="MOTOR_5" value="($th_hold? -9600 : actuators_pprz[1])"/>
<set servo="MOTOR_6" value="($th_hold? -9600 : actuators_pprz[8])"/>
<set servo="MOTOR_7" value="($th_hold? -9600 : actuators_pprz[2])"/>
<set servo="MOTOR_8" value="($th_hold? -9600 : actuators_pprz[2])"/>
<set servo="MOTOR_9" value="($th_hold? -9600 : actuators_pprz[2])"/>
<set servo="MOTOR_10" value="($th_hold? -9600 : actuators_pprz[3])"/>
<set servo="MOTOR_11" value="($th_hold? -9600 : actuators_pprz[3])"/>
<set servo="MOTOR_12" value="($th_hold? -9600 : actuators_pprz[3])"/>
<let var="tip_thruster" value="(Or(LessThan(RadioControlValues(RADIO_TH_HOLD), -4800), 0.01 > sched_ratio_tip_props)? -9600 : 9600/100*70*sched_ratio_tip_props)"/>

<set servo="MOTOR_1" value="($th_hold? -9600 : $tip_thruster)"/>
<set servo="MOTOR_2" value="($th_hold? -9600 : @FRONT_LEFT)"/>
<set servo="MOTOR_3" value="($th_hold? -9600 : @FRONT_LEFT)"/>
<set servo="MOTOR_4" value="($th_hold? -9600 : @FRONT_RIGHT)"/>
<set servo="MOTOR_5" value="($th_hold? -9600 : @FRONT_RIGHT)"/>
<set servo="MOTOR_6" value="($th_hold? -9600 : $tip_thruster)"/>

<set servo="MOTOR_7" value="($th_hold? -9600 : @REAR_LEFT)"/>
<set servo="MOTOR_8" value="($th_hold? -9600 : @REAR_LEFT)"/>
<set servo="MOTOR_9" value="($th_hold? -9600 : @REAR_LEFT)"/>
<set servo="MOTOR_10" value="($th_hold? -9600 : @REAR_RIGHT)"/>
<set servo="MOTOR_11" value="($th_hold? -9600 : @REAR_RIGHT)"/>
<set servo="MOTOR_12" value="($th_hold? -9600 : @REAR_RIGHT)"/>

<!-- Removed ApplyDiff for differential control -->
<set servo="AIL_1" value="($th_hold? 9600 : actuators_pprz[4])"/>
<set servo="AIL_2" value="($th_hold? 9600 : actuators_pprz[5])"/>
<set servo="AIL_3" value="actuators_pprz[6]"/>
<set servo="AIL_4" value="actuators_pprz[7]"/>
<set servo="AIL_1" value="($th_hold? 9600 : @FRONT_LEFT_FLAP)"/>
<set servo="AIL_2" value="($th_hold? 9600 : @FRONT_RIGHT_FLAP)"/>
<set servo="AIL_3" value="@REAR_LEFT_FLAP"/>
<set servo="AIL_4" value="@REAR_RIGHT_FLAP"/>
</command_laws>

<section name="MISC">
Expand Down

0 comments on commit 6f5df22

Please sign in to comment.