changed h_ctl_pitch_dgain to positive

already had postive definition for stabilization_adaptive, but negative for stabilization_attitude
This commit is contained in:
Felix Ruess
2011-11-29 19:51:14 +01:00
parent c3f0bb8170
commit d4d97473d4
18 changed files with 19 additions and 19 deletions
@@ -202,7 +202,7 @@
<define name="ROLL_KFFD" value="0"/> <define name="ROLL_KFFD" value="0"/>
<define name="PITCH_PGAIN" value="20000."/> <define name="PITCH_PGAIN" value="20000."/>
<define name="PITCH_DGAIN" value="-1000"/> <define name="PITCH_DGAIN" value="1000"/>
<define name="PITCH_IGAIN" value="-300"/> <define name="PITCH_IGAIN" value="-300"/>
<define name="PITCH_KFFA" value="0."/> <define name="PITCH_KFFA" value="0."/>
<define name="PITCH_KFFD" value="0."/> <define name="PITCH_KFFD" value="0."/>
@@ -166,7 +166,7 @@ on<!DOCTYPE airframe SYSTEM "airframe.dtd">
<define name="ROLL_PGAIN" value="6000."/> <define name="ROLL_PGAIN" value="6000."/>
<define name="AILERON_OF_THROTTLE" value="0.0"/> <define name="AILERON_OF_THROTTLE" value="0.0"/>
<define name="PITCH_PGAIN" value="8898.3046875"/> <define name="PITCH_PGAIN" value="8898.3046875"/>
<define name="PITCH_DGAIN" value="-1694.91503906"/> <define name="PITCH_DGAIN" value="1694.91503906"/>
<define name="ELEVATOR_OF_ROLL" value="1520.73706055"/> <define name="ELEVATOR_OF_ROLL" value="1520.73706055"/>
+1 -1
View File
@@ -187,7 +187,7 @@
<define name="ROLL_KFFD" value="0"/> <define name="ROLL_KFFD" value="0"/>
<define name="PITCH_PGAIN" value="7000."/> <define name="PITCH_PGAIN" value="7000."/>
<define name="PITCH_DGAIN" value="-2400."/> <define name="PITCH_DGAIN" value="2400."/>
<define name="PITCH_IGAIN" value="-300."/> <define name="PITCH_IGAIN" value="-300."/>
<define name="PITCH_KFFA" value="0."/> <define name="PITCH_KFFA" value="0."/>
<define name="PITCH_KFFD" value="0."/> <define name="PITCH_KFFD" value="0."/>
+1 -1
View File
@@ -190,7 +190,7 @@
<define name="ROLL_KFFD" value="0"/> <define name="ROLL_KFFD" value="0"/>
<define name="PITCH_PGAIN" value="7000."/> <define name="PITCH_PGAIN" value="7000."/>
<define name="PITCH_DGAIN" value="-2400."/> <define name="PITCH_DGAIN" value="2400."/>
<define name="PITCH_IGAIN" value="-300."/> <define name="PITCH_IGAIN" value="-300."/>
<define name="PITCH_KFFA" value="0."/> <define name="PITCH_KFFA" value="0."/>
<define name="PITCH_KFFD" value="0."/> <define name="PITCH_KFFD" value="0."/>
+1 -1
View File
@@ -177,7 +177,7 @@
<define name="ROLL_KFFD" value="-500"/> <define name="ROLL_KFFD" value="-500"/>
<define name="PITCH_PGAIN" value="14522.4716797"/> <define name="PITCH_PGAIN" value="14522.4716797"/>
<define name="PITCH_DGAIN" value="-0."/> <define name="PITCH_DGAIN" value="0."/>
<define name="PITCH_IGAIN" value="-500"/> <define name="PITCH_IGAIN" value="-500"/>
<define name="PITCH_KFFA" value="0."/> <define name="PITCH_KFFA" value="0."/>
<define name="PITCH_KFFD" value="0."/> <define name="PITCH_KFFD" value="0."/>
+1 -1
View File
@@ -326,7 +326,7 @@ http://paparazzi.enac.fr/w/index.php?title=Theory_of_Operation
<define name="PITCH_PGAIN" value="7000."/> <define name="PITCH_PGAIN" value="7000."/>
<!-- only for stabilization adaptive --> <!-- only for stabilization adaptive -->
<define name="PITCH_DGAIN" value="-1000."/> <define name="PITCH_DGAIN" value="1000."/>
<define name="PITCH_IGAIN" value="-500."/> <define name="PITCH_IGAIN" value="-500."/>
<define name="PITCH_KFFA" value="0."/> <define name="PITCH_KFFA" value="0."/>
<define name="PITCH_KFFD" value="0."/> <define name="PITCH_KFFD" value="0."/>
+1 -1
View File
@@ -182,7 +182,7 @@
<define name="ROLL_PGAIN" value="6000."/> <define name="ROLL_PGAIN" value="6000."/>
<define name="AILERON_OF_THROTTLE" value="0.0"/> <define name="AILERON_OF_THROTTLE" value="0.0"/>
<define name="PITCH_PGAIN" value="8898.3046875"/> <define name="PITCH_PGAIN" value="8898.3046875"/>
<define name="PITCH_DGAIN" value="-1694.91503906"/> <define name="PITCH_DGAIN" value="1694.91503906"/>
<define name="PITCH_IGAIN" value="0"/> <define name="PITCH_IGAIN" value="0"/>
<define name="ELEVATOR_OF_ROLL" value="1520.73706055"/> <define name="ELEVATOR_OF_ROLL" value="1520.73706055"/>
+1 -1
View File
@@ -160,7 +160,7 @@
<define name="ROLL_PGAIN" value="6000."/> <define name="ROLL_PGAIN" value="6000."/>
<define name="AILERON_OF_THROTTLE" value="0.0"/> <define name="AILERON_OF_THROTTLE" value="0.0"/>
<define name="PITCH_PGAIN" value="9000."/> <define name="PITCH_PGAIN" value="9000."/>
<define name="PITCH_DGAIN" value="-1700."/> <define name="PITCH_DGAIN" value="1700."/>
<define name="ELEVATOR_OF_ROLL" value="1500"/> <define name="ELEVATOR_OF_ROLL" value="1500"/>
+1 -1
View File
@@ -148,7 +148,7 @@
<define name="AILERON_OF_THROTTLE" value="0.0"/> <define name="AILERON_OF_THROTTLE" value="0.0"/>
<define name="PITCH_PGAIN" value="2500."/> <define name="PITCH_PGAIN" value="2500."/>
<define name="PITCH_DGAIN" value="-1000"/> <define name="PITCH_DGAIN" value="1000"/>
<define name="ELEVATOR_OF_ROLL" value="1100"/> <define name="ELEVATOR_OF_ROLL" value="1100"/>
+1 -1
View File
@@ -172,7 +172,7 @@
<define name="ROLL_PGAIN" value="6000."/> <define name="ROLL_PGAIN" value="6000."/>
<define name="AILERON_OF_THROTTLE" value="0.0"/> <define name="AILERON_OF_THROTTLE" value="0.0"/>
<define name="PITCH_PGAIN" value="9000."/> <define name="PITCH_PGAIN" value="9000."/>
<define name="PITCH_DGAIN" value="-1700."/> <define name="PITCH_DGAIN" value="1700."/>
<define name="ELEVATOR_OF_ROLL" value="1500"/> <define name="ELEVATOR_OF_ROLL" value="1500"/>
</section> </section>
+1 -1
View File
@@ -35,7 +35,7 @@
<dl_setting MAX="25000" MIN="000" STEP="250" VAR="h_ctl_roll_pgain" shortname="roll_pgain" module="stabilization/stabilization_attitude"/> <dl_setting MAX="25000" MIN="000" STEP="250" VAR="h_ctl_roll_pgain" shortname="roll_pgain" module="stabilization/stabilization_attitude"/>
<dl_setting MAX="1" MIN="0" STEP="0.05" VAR="h_ctl_roll_max_setpoint" shortname="max_roll" param="H_CTL_ROLL_MAX_SETPOINT"/> <dl_setting MAX="1" MIN="0" STEP="0.05" VAR="h_ctl_roll_max_setpoint" shortname="max_roll" param="H_CTL_ROLL_MAX_SETPOINT"/>
<dl_setting MAX="25000" MIN="0" STEP="250" VAR="h_ctl_pitch_pgain" shortname="pitch_pgain" param="H_CTL_PITCH_PGAIN"/> <dl_setting MAX="25000" MIN="0" STEP="250" VAR="h_ctl_pitch_pgain" shortname="pitch_pgain" param="H_CTL_PITCH_PGAIN"/>
<dl_setting MAX="0" MIN="-50000" STEP="10" VAR="h_ctl_pitch_dgain" shortname="pitch_dgain" param="H_CTL_PITCH_DGAIN"/> <dl_setting MAX="50000" MIN="0" STEP="10" VAR="h_ctl_pitch_dgain" shortname="pitch_dgain" param="H_CTL_PITCH_DGAIN"/>
<dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_elevator_of_roll" shortname="elevator_of_roll" param="H_CTL_ELEVATOR_OF_ROLL"/> <dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_elevator_of_roll" shortname="elevator_of_roll" param="H_CTL_ELEVATOR_OF_ROLL"/>
<dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_aileron_of_throttle" shortname="aileron_of_throttle"/> <dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_aileron_of_throttle" shortname="aileron_of_throttle"/>
+1 -1
View File
@@ -11,7 +11,7 @@
<dl_setting MAX="0" MIN="-15000" STEP="250" VAR="h_ctl_roll_rate_gain" shortname="roll_dgain" param="H_CTL_ROLL_RATE_GAIN"/> <dl_setting MAX="0" MIN="-15000" STEP="250" VAR="h_ctl_roll_rate_gain" shortname="roll_dgain" param="H_CTL_ROLL_RATE_GAIN"/>
<dl_setting MAX="0" MIN="-5000" STEP="10" VAR="h_ctl_roll_igain" shortname="roll_igain" param="H_CTL_ROLL_IGAIN" handler="SetRollIGain"/> <dl_setting MAX="0" MIN="-5000" STEP="10" VAR="h_ctl_roll_igain" shortname="roll_igain" param="H_CTL_ROLL_IGAIN" handler="SetRollIGain"/>
<dl_setting MAX="25000" MIN="0" STEP="250" VAR="h_ctl_pitch_pgain" shortname="pitch_pgain" param="H_CTL_PITCH_PGAIN"/> <dl_setting MAX="25000" MIN="0" STEP="250" VAR="h_ctl_pitch_pgain" shortname="pitch_pgain" param="H_CTL_PITCH_PGAIN"/>
<dl_setting MAX="0" MIN="-55000" STEP="250" VAR="h_ctl_pitch_dgain" shortname="pitch_dgain" param="H_CTL_PITCH_DGAIN"/> <dl_setting MAX="50000" MIN="0" STEP="250" VAR="h_ctl_pitch_dgain" shortname="pitch_dgain" param="H_CTL_PITCH_DGAIN"/>
<dl_setting MAX="0" MIN="-5000" STEP="10" VAR="h_ctl_pitch_igain" shortname="pitch_igain" param="H_CTL_PITCH_IGAIN" handler="SetPitchIGain"/> <dl_setting MAX="0" MIN="-5000" STEP="10" VAR="h_ctl_pitch_igain" shortname="pitch_igain" param="H_CTL_PITCH_IGAIN" handler="SetPitchIGain"/>
<dl_setting MAX=".3" MIN="0." STEP="0.001" VAR="h_ctl_pitch_of_roll" shortname="pitch_of_roll" param="H_CTL_PITCH_OF_ROLL"/> <dl_setting MAX=".3" MIN="0." STEP="0.001" VAR="h_ctl_pitch_of_roll" shortname="pitch_of_roll" param="H_CTL_PITCH_OF_ROLL"/>
<dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_aileron_of_throttle" shortname="aileron_of_throttle" module="stabilization/stabilization_adaptive"/> <dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_aileron_of_throttle" shortname="aileron_of_throttle" module="stabilization/stabilization_adaptive"/>
+1 -1
View File
@@ -11,7 +11,7 @@
<dl_setting MAX="0" MIN="-15000" STEP="250" VAR="h_ctl_roll_rate_gain" shortname="roll_dgain" param="H_CTL_ROLL_RATE_GAIN"/> <dl_setting MAX="0" MIN="-15000" STEP="250" VAR="h_ctl_roll_rate_gain" shortname="roll_dgain" param="H_CTL_ROLL_RATE_GAIN"/>
<dl_setting MAX="0" MIN="-5000" STEP="10" VAR="h_ctl_roll_igain" shortname="roll_igain" param="H_CTL_ROLL_IGAIN" handler="SetRollIGain"/> <dl_setting MAX="0" MIN="-5000" STEP="10" VAR="h_ctl_roll_igain" shortname="roll_igain" param="H_CTL_ROLL_IGAIN" handler="SetRollIGain"/>
<dl_setting MAX="25000" MIN="0" STEP="250" VAR="h_ctl_pitch_pgain" shortname="pitch_pgain" param="H_CTL_PITCH_PGAIN"/> <dl_setting MAX="25000" MIN="0" STEP="250" VAR="h_ctl_pitch_pgain" shortname="pitch_pgain" param="H_CTL_PITCH_PGAIN"/>
<dl_setting MAX="0" MIN="-55000" STEP="250" VAR="h_ctl_pitch_dgain" shortname="pitch_dgain" param="H_CTL_PITCH_DGAIN"/> <dl_setting MAX="50000" MIN="0" STEP="250" VAR="h_ctl_pitch_dgain" shortname="pitch_dgain" param="H_CTL_PITCH_DGAIN"/>
<dl_setting MAX="0" MIN="-5000" STEP="10" VAR="h_ctl_pitch_igain" shortname="pitch_igain" param="H_CTL_PITCH_IGAIN" handler="SetPitchIGain"/> <dl_setting MAX="0" MIN="-5000" STEP="10" VAR="h_ctl_pitch_igain" shortname="pitch_igain" param="H_CTL_PITCH_IGAIN" handler="SetPitchIGain"/>
<dl_setting MAX=".3" MIN="0." STEP="0.001" VAR="h_ctl_pitch_of_roll" shortname="pitch_of_roll" param="H_CTL_PITCH_OF_ROLL"/> <dl_setting MAX=".3" MIN="0." STEP="0.001" VAR="h_ctl_pitch_of_roll" shortname="pitch_of_roll" param="H_CTL_PITCH_OF_ROLL"/>
<dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_aileron_of_throttle" shortname="aileron_of_throttle" module="stabilization/stabilization_adaptive"/> <dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_aileron_of_throttle" shortname="aileron_of_throttle" module="stabilization/stabilization_adaptive"/>
+1 -1
View File
@@ -50,7 +50,7 @@
<dl_setting MAX="25000" MIN="000" STEP="250" VAR="h_ctl_roll_pgain" shortname="roll_pgain" module="stabilization/stabilization_attitude"/> <dl_setting MAX="25000" MIN="000" STEP="250" VAR="h_ctl_roll_pgain" shortname="roll_pgain" module="stabilization/stabilization_attitude"/>
<dl_setting MAX="1" MIN="0" STEP="0.05" VAR="h_ctl_roll_max_setpoint" shortname="max_roll" param="H_CTL_ROLL_MAX_SETPOINT"/> <dl_setting MAX="1" MIN="0" STEP="0.05" VAR="h_ctl_roll_max_setpoint" shortname="max_roll" param="H_CTL_ROLL_MAX_SETPOINT"/>
<dl_setting MAX="25000" MIN="0" STEP="250" VAR="h_ctl_pitch_pgain" shortname="pitch_pgain" param="H_CTL_PITCH_PGAIN"/> <dl_setting MAX="25000" MIN="0" STEP="250" VAR="h_ctl_pitch_pgain" shortname="pitch_pgain" param="H_CTL_PITCH_PGAIN"/>
<dl_setting MAX="0" MIN="-50000" STEP="10" VAR="h_ctl_pitch_dgain" shortname="pitch_dgain" param="H_CTL_PITCH_DGAIN"/> <dl_setting MAX="20" MIN="0" STEP="0.1" VAR="h_ctl_pitch_dgain" shortname="pitch_dgain" param="H_CTL_PITCH_DGAIN"/>
<dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_elevator_of_roll" shortname="elevator_of_roll" param="H_CTL_ELEVATOR_OF_ROLL"/> <dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_elevator_of_roll" shortname="elevator_of_roll" param="H_CTL_ELEVATOR_OF_ROLL"/>
<dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_aileron_of_throttle" shortname="aileron_of_throttle"/> <dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_aileron_of_throttle" shortname="aileron_of_throttle"/>
+1 -1
View File
@@ -49,7 +49,7 @@
<dl_setting MAX="25000" MIN="000" STEP="250" VAR="h_ctl_roll_pgain" shortname="roll_pgain" module="stabilization/stabilization_attitude"/> <dl_setting MAX="25000" MIN="000" STEP="250" VAR="h_ctl_roll_pgain" shortname="roll_pgain" module="stabilization/stabilization_attitude"/>
<dl_setting MAX="1" MIN="0" STEP="0.05" VAR="h_ctl_roll_max_setpoint" shortname="max_roll" param="H_CTL_ROLL_MAX_SETPOINT"/> <dl_setting MAX="1" MIN="0" STEP="0.05" VAR="h_ctl_roll_max_setpoint" shortname="max_roll" param="H_CTL_ROLL_MAX_SETPOINT"/>
<dl_setting MAX="25000" MIN="0" STEP="250" VAR="h_ctl_pitch_pgain" shortname="pitch_pgain" param="H_CTL_PITCH_PGAIN"/> <dl_setting MAX="25000" MIN="0" STEP="250" VAR="h_ctl_pitch_pgain" shortname="pitch_pgain" param="H_CTL_PITCH_PGAIN"/>
<dl_setting MAX="0" MIN="-50000" STEP="10" VAR="h_ctl_pitch_dgain" shortname="pitch_dgain" param="H_CTL_PITCH_DGAIN"/> <dl_setting MAX="50000" MIN="0" STEP="10" VAR="h_ctl_pitch_dgain" shortname="pitch_dgain" param="H_CTL_PITCH_DGAIN"/>
<dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_elevator_of_roll" shortname="elevator_of_roll" param="H_CTL_ELEVATOR_OF_ROLL"/> <dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_elevator_of_roll" shortname="elevator_of_roll" param="H_CTL_ELEVATOR_OF_ROLL"/>
<dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_aileron_of_throttle" shortname="aileron_of_throttle"/> <dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_aileron_of_throttle" shortname="aileron_of_throttle"/>
+1 -1
View File
@@ -50,7 +50,7 @@
<dl_setting MAX="25000" MIN="000" STEP="250" VAR="h_ctl_roll_pgain" shortname="roll_pgain" module="stabilization/stabilization_attitude"/> <dl_setting MAX="25000" MIN="000" STEP="250" VAR="h_ctl_roll_pgain" shortname="roll_pgain" module="stabilization/stabilization_attitude"/>
<dl_setting MAX="1" MIN="0" STEP="0.05" VAR="h_ctl_roll_max_setpoint" shortname="max_roll" param="H_CTL_ROLL_MAX_SETPOINT"/> <dl_setting MAX="1" MIN="0" STEP="0.05" VAR="h_ctl_roll_max_setpoint" shortname="max_roll" param="H_CTL_ROLL_MAX_SETPOINT"/>
<dl_setting MAX="25000" MIN="0" STEP="250" VAR="h_ctl_pitch_pgain" shortname="pitch_pgain" param="H_CTL_PITCH_PGAIN"/> <dl_setting MAX="25000" MIN="0" STEP="250" VAR="h_ctl_pitch_pgain" shortname="pitch_pgain" param="H_CTL_PITCH_PGAIN"/>
<dl_setting MAX="0" MIN="-50000" STEP="10" VAR="h_ctl_pitch_dgain" shortname="pitch_dgain" param="H_CTL_PITCH_DGAIN"/> <dl_setting MAX="50000" MIN="0" STEP="10" VAR="h_ctl_pitch_dgain" shortname="pitch_dgain" param="H_CTL_PITCH_DGAIN"/>
<dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_elevator_of_roll" shortname="elevator_of_roll" param="H_CTL_ELEVATOR_OF_ROLL"/> <dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_elevator_of_roll" shortname="elevator_of_roll" param="H_CTL_ELEVATOR_OF_ROLL"/>
<dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_aileron_of_throttle" shortname="aileron_of_throttle"/> <dl_setting MAX="5000" MIN="0" STEP="100" VAR="h_ctl_aileron_of_throttle" shortname="aileron_of_throttle"/>
@@ -171,7 +171,7 @@ void h_ctl_init( void ) {
h_ctl_pitch_setpoint = 0.; h_ctl_pitch_setpoint = 0.;
h_ctl_pitch_loop_setpoint = 0.; h_ctl_pitch_loop_setpoint = 0.;
h_ctl_pitch_pgain = ABS(H_CTL_PITCH_PGAIN); h_ctl_pitch_pgain = ABS(H_CTL_PITCH_PGAIN);
h_ctl_pitch_dgain = H_CTL_PITCH_DGAIN; h_ctl_pitch_dgain = ABS(H_CTL_PITCH_DGAIN);
h_ctl_pitch_igain = H_CTL_PITCH_IGAIN; h_ctl_pitch_igain = H_CTL_PITCH_IGAIN;
h_ctl_pitch_sum_err = 0.; h_ctl_pitch_sum_err = 0.;
h_ctl_pitch_Kffa = H_CTL_PITCH_KFFA; h_ctl_pitch_Kffa = H_CTL_PITCH_KFFA;
@@ -416,7 +416,7 @@ inline static void h_ctl_pitch_loop( void ) {
float cmd = h_ctl_pitch_Kffa * h_ctl_ref_pitch_accel float cmd = h_ctl_pitch_Kffa * h_ctl_ref_pitch_accel
+ h_ctl_pitch_Kffd * h_ctl_ref_pitch_rate + h_ctl_pitch_Kffd * h_ctl_ref_pitch_rate
- h_ctl_pitch_pgain * err - h_ctl_pitch_pgain * err
+ h_ctl_pitch_dgain * d_err - h_ctl_pitch_dgain * d_err
+ h_ctl_pitch_igain * h_ctl_pitch_sum_err; + h_ctl_pitch_igain * h_ctl_pitch_sum_err;
cmd /= airspeed_ratio2; cmd /= airspeed_ratio2;
@@ -141,7 +141,7 @@ void h_ctl_init( void ) {
h_ctl_pitch_setpoint = 0.; h_ctl_pitch_setpoint = 0.;
h_ctl_pitch_loop_setpoint = 0.; h_ctl_pitch_loop_setpoint = 0.;
h_ctl_pitch_pgain = ABS(H_CTL_PITCH_PGAIN); h_ctl_pitch_pgain = ABS(H_CTL_PITCH_PGAIN);
h_ctl_pitch_dgain = H_CTL_PITCH_DGAIN; h_ctl_pitch_dgain = ABS(H_CTL_PITCH_DGAIN);
h_ctl_elevator_setpoint = 0; h_ctl_elevator_setpoint = 0;
h_ctl_elevator_of_roll = H_CTL_ELEVATOR_OF_ROLL; h_ctl_elevator_of_roll = H_CTL_ELEVATOR_OF_ROLL;