changed rotorcraft guidance_v gains to positive

This commit is contained in:
Felix Ruess
2011-11-30 23:43:52 +01:00
parent b78989045c
commit dd4f6b0a78
44 changed files with 127 additions and 126 deletions
+4 -4
View File
@@ -173,12 +173,12 @@
<define name="MAX_SUM_ERR" value="2000000"/>
<!--
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="0"/>
-->
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
+2 -2
View File
@@ -209,8 +209,8 @@
<define name="REF_MAX_ZDD" value=" 0.8*9.81"/>
<define name="REF_MIN_ZD" value="-1.5"/>
<define name="REF_MAX_ZD" value=" 1.5"/>
<define name="HOVER_KP" value="-400"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KP" value="400"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="0"/>
<!-- SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
+2 -2
View File
@@ -172,8 +172,8 @@
<define name="REF_MAX_ZDD" value=" 0.5*9.81"/>
<define name="REF_MIN_ZD" value="-1.5"/>
<define name="REF_MAX_ZD" value=" 1.5"/>
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
+2 -2
View File
@@ -153,8 +153,8 @@
<define name="REF_MAX_ZDD" value=" 0.5*9.81"/>
<define name="REF_MIN_ZD" value="-1.5"/>
<define name="REF_MAX_ZD" value=" 1.5"/>
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
@@ -187,8 +187,8 @@
<define name="REF_MAX_ZDD" value=" 0.5*9.81"/>
<define name="REF_MIN_ZD" value="-1.5"/>
<define name="REF_MAX_ZD" value=" 1.5"/>
<define name="HOVER_KP" value="-200"/>
<define name="HOVER_KD" value="-100"/>
<define name="HOVER_KP" value="200"/>
<define name="HOVER_KD" value="100"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
+2 -2
View File
@@ -207,8 +207,8 @@
<define name="REF_MAX_ZDD" value=" 0.5*9.81"/>
<define name="REF_MIN_ZD" value="-1.5"/>
<define name="REF_MAX_ZD" value=" 1.5"/>
<define name="HOVER_KP" value="-200"/>
<define name="HOVER_KD" value="-100"/>
<define name="HOVER_KP" value="200"/>
<define name="HOVER_KD" value="100"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
+2 -2
View File
@@ -220,8 +220,8 @@
<define name="REF_MAX_ZDD" value=" 0.8*9.81"/>
<define name="REF_MIN_ZD" value="-1.5"/>
<define name="REF_MAX_ZD" value=" 1.5"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-250"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="250"/>
<define name="HOVER_KI" value="0"/>
<!-- SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
+2 -2
View File
@@ -178,8 +178,8 @@
<define name="REF_MAX_ZDD" value=" 0.5*9.81"/>
<define name="REF_MIN_ZD" value="-1.5"/>
<define name="REF_MAX_ZD" value=" 1.5"/>
<define name="HOVER_KP" value="-200"/>
<define name="HOVER_KD" value="-100"/>
<define name="HOVER_KP" value="200"/>
<define name="HOVER_KD" value="100"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
+4 -4
View File
@@ -201,12 +201,12 @@
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="0"/>
<!--
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<define name="HOVER_KI" value="0"/>
-->
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
@@ -160,9 +160,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-250"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="250"/>
<define name="HOVER_KI" value="100"/>
<!-- SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- SPEED_BFP_OF_REAL(1.5) * 20% -->
@@ -178,9 +178,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-250"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="250"/>
<define name="HOVER_KI" value="100"/>
<!-- SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- SPEED_BFP_OF_REAL(1.5) * 20% -->
+3 -3
View File
@@ -151,9 +151,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="100"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- BOOZ_SPEED_I_OF_F(1.5) * 20% -->
+3 -3
View File
@@ -155,9 +155,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="100"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- BOOZ_SPEED_I_OF_F(1.5) * 20% -->
+4 -4
View File
@@ -173,12 +173,12 @@
<define name="MAX_SUM_ERR" value="2000000"/>
<!--
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="0"/>
-->
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
+3 -3
View File
@@ -146,9 +146,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="100"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- BOOZ_SPEED_I_OF_F(1.5) * 20% -->
+3 -3
View File
@@ -225,9 +225,9 @@ second attempt
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="100"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value="163"/>
<!-- BOOZ_SPEED_I_OF_F(1.5) * 20% -->
+3 -3
View File
@@ -162,9 +162,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="100"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- BOOZ_SPEED_I_OF_F(1.5) * 20% -->
+2 -2
View File
@@ -185,8 +185,8 @@
<define name="REF_MAX_ZDD" value=" 0.5*9.81"/>
<define name="REF_MIN_ZD" value="-1.5"/>
<define name="REF_MAX_ZD" value=" 1.5"/>
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
@@ -185,8 +185,8 @@
<define name="REF_MAX_ZDD" value=" 0.5*9.81"/>
<define name="REF_MIN_ZD" value="-1.5"/>
<define name="REF_MAX_ZD" value=" 1.5"/>
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
+3 -3
View File
@@ -226,9 +226,9 @@ second attempt
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="100"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value="163"/>
<!-- BOOZ_SPEED_I_OF_F(1.5) * 20% -->
+3 -3
View File
@@ -141,9 +141,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="100"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- BOOZ_SPEED_I_OF_F(1.5) * 20% -->
+3 -3
View File
@@ -195,9 +195,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)" />
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)" />
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-100"/>
<define name="HOVER_KD" value="-60"/>
<define name="HOVER_KI" value="-10"/>
<define name="HOVER_KP" value="100"/>
<define name="HOVER_KD" value="60"/>
<define name="HOVER_KI" value="10"/>
<!-- 1.5m/s for full stick : SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value="163" />
<!-- SPEED_BFP_OF_REAL(1.5) * 20% -->
+2 -2
View File
@@ -160,8 +160,8 @@
<define name="REF_MAX_ZDD" value=" 0.5*9.81"/>
<define name="REF_MIN_ZD" value="-1.5"/>
<define name="REF_MAX_ZD" value=" 1.5"/>
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
+3 -3
View File
@@ -137,9 +137,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<define name="HOVER_KI" value="-20"/>
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<define name="HOVER_KI" value="20"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- BOOZ_SPEED_I_OF_F(1.5) * 20% -->
+3 -3
View File
@@ -151,9 +151,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="100"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- BOOZ_SPEED_I_OF_F(1.5) * 20% -->
+3 -3
View File
@@ -151,9 +151,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="100"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- BOOZ_SPEED_I_OF_F(1.5) * 20% -->
+3 -3
View File
@@ -165,9 +165,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<define name="HOVER_KI" value="-20"/>
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<define name="HOVER_KI" value="20"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- BOOZ_SPEED_I_OF_F(1.5) * 20% -->
+3 -3
View File
@@ -146,9 +146,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<!--define name="HOVER_KI" value="-100"/-->
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<!--define name="HOVER_KI" value="100"/-->
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
+3 -3
View File
@@ -149,9 +149,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<!--define name="HOVER_KI" value="-100"/-->
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<!--define name="HOVER_KI" value="100"/-->
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
+2 -2
View File
@@ -152,8 +152,8 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
+3 -3
View File
@@ -145,9 +145,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-250"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="250"/>
<define name="HOVER_KI" value="100"/>
<!-- SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- SPEED_BFP_OF_REAL(1.5) * 20% -->
+2 -2
View File
@@ -185,8 +185,8 @@
<define name="REF_MAX_ZDD" value=" 0.5*9.81"/>
<define name="REF_MIN_ZD" value="-1.5"/>
<define name="REF_MAX_ZD" value=" 1.5"/>
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
+2 -2
View File
@@ -185,8 +185,8 @@
<define name="REF_MAX_ZDD" value=" 0.5*9.81"/>
<define name="REF_MIN_ZD" value="-1.5"/>
<define name="REF_MAX_ZD" value=" 1.5"/>
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
+2 -2
View File
@@ -185,8 +185,8 @@
<define name="REF_MAX_ZDD" value=" 0.5*9.81"/>
<define name="REF_MIN_ZD" value="-1.5"/>
<define name="REF_MAX_ZD" value=" 1.5"/>
<define name="HOVER_KP" value="-150"/>
<define name="HOVER_KD" value="-80"/>
<define name="HOVER_KP" value="150"/>
<define name="HOVER_KD" value="80"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
+3 -3
View File
@@ -145,9 +145,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-250"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="250"/>
<define name="HOVER_KI" value="100"/>
<!-- SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- SPEED_BFP_OF_REAL(1.5) * 20% -->
+2 -2
View File
@@ -131,8 +131,8 @@
<define name="MAX_ERR_Z" value="POS_BFP_OF_REAL( 10.)"/>
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-250"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="250"/>
<!-- SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- SPEED_BFP_OF_REAL(1.5) * 20% -->
+2 -2
View File
@@ -109,8 +109,8 @@
<define name="MAX_ERR_Z" value="POS_BFP_OF_REAL( 10.)"/>
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-250"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="250"/>
<!-- SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- SPEED_BFP_OF_REAL(1.5) * 20% -->
+3 -3
View File
@@ -147,9 +147,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="100"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- BOOZ_SPEED_I_OF_F(1.5) * 20% -->
+3 -3
View File
@@ -138,9 +138,9 @@
<define name="MAX_ERR_Z" value="POS_BFP_OF_REAL( 10.)"/>
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="HOVER_KP" value="-300"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KI" value="-0"/>
<define name="HOVER_KP" value="300"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="0"/>
<!-- 1.5m/s for full stick : SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- SPEED_BFP_OF_REAL(1.5) * 20% -->
+3 -3
View File
@@ -150,9 +150,9 @@
<define name="MIN_ERR_ZD" value="SPEED_BFP_OF_REAL(-10.)"/>
<define name="MAX_ERR_ZD" value="SPEED_BFP_OF_REAL( 10.)"/>
<define name="MAX_SUM_ERR" value="2000000"/>
<define name="HOVER_KP" value="-500"/>
<define name="HOVER_KD" value="-200"/>
<define name="HOVER_KI" value="-100"/>
<define name="HOVER_KP" value="500"/>
<define name="HOVER_KD" value="200"/>
<define name="HOVER_KI" value="100"/>
<!-- 1.5m/s for full stick : SPEED_BFP_OF_REAL(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value ="163"/>
<!-- SPEED_BFP_OF_REAL(1.5) * 20% -->
+3 -3
View File
@@ -55,9 +55,9 @@
</dl_settings>
<dl_settings NAME="Vert Loop">
<dl_setting var="guidance_v_kp" min="-600" step="1" max="0" module="guidance/guidance_v" shortname="kp"/>
<dl_setting var="guidance_v_kd" min="-600" step="1" max="0" module="guidance/guidance_v" shortname="kd"/>
<dl_setting var="guidance_v_ki" min="-300" step="1" max="0" module="guidance/guidance_v" shortname="ki" handler="SetKi" />
<dl_setting var="guidance_v_kp" min="0" step="1" max="600" module="guidance/guidance_v" shortname="kp"/>
<dl_setting var="guidance_v_kd" min="0" step="1" max="600" module="guidance/guidance_v" shortname="kd"/>
<dl_setting var="guidance_v_ki" min="0" step="1" max="300" module="guidance/guidance_v" shortname="ki" handler="SetKi" />
<dl_setting var="guidance_v_z_sp" min="-5" step="0.5" max="3" module="guidance/guidance_v" shortname="sp" unit="2e-8m" alt_unit="m" alt_unit_coef="0.00390625"/>
<dl_setting var="ins_vf_realign" min="0" step="1" max="1" module="subsystems/ins" shortname="vf_realign" values="OFF|ON"/>
</dl_settings>
+3 -3
View File
@@ -44,9 +44,9 @@
</dl_settings>
<dl_settings NAME="Vert Loop">
<dl_setting var="guidance_v_kp" min="-600" step="1" max="0" module="guidance/guidance_v" shortname="kp"/>
<dl_setting var="guidance_v_kd" min="-600" step="1" max="0" module="guidance/guidance_v" shortname="kd"/>
<dl_setting var="guidance_v_ki" min="-300" step="1" max="0" module="guidance/guidance_v" shortname="ki" handler="SetKi" />
<dl_setting var="guidance_v_kp" min="0" step="1" max="600" module="guidance/guidance_v" shortname="kp"/>
<dl_setting var="guidance_v_kd" min="0" step="1" max="600" module="guidance/guidance_v" shortname="kd"/>
<dl_setting var="guidance_v_ki" min="0" step="1" max="300" module="guidance/guidance_v" shortname="ki" handler="SetKi" />
<dl_setting var="guidance_v_z_sp" min="-5" step="0.5" max="3" module="guidance/guidance_v" shortname="sp" unit="2e-8m" alt_unit="m" alt_unit_coef="0.00390625"/>
<dl_setting var="ins_vf_realign" min="0" step="1" max="1" module="subsystems/ins" shortname="vf_realign" values="OFF|ON"/>
</dl_settings>
+3 -3
View File
@@ -44,9 +44,9 @@
</dl_settings>
<dl_settings NAME="Vert Loop">
<dl_setting var="guidance_v_kp" min="-600" step="1" max="0" module="guidance/guidance_v" shortname="kp"/>
<dl_setting var="guidance_v_kd" min="-600" step="1" max="0" module="guidance/guidance_v" shortname="kd"/>
<dl_setting var="guidance_v_ki" min="-300" step="1" max="0" module="guidance/guidance_v" shortname="ki" handler="SetKi" />
<dl_setting var="guidance_v_kp" min="0" step="1" max="600" module="guidance/guidance_v" shortname="kp"/>
<dl_setting var="guidance_v_kd" min="0" step="1" max="600" module="guidance/guidance_v" shortname="kd"/>
<dl_setting var="guidance_v_ki" min="0" step="1" max="300" module="guidance/guidance_v" shortname="ki" handler="SetKi" />
<dl_setting var="guidance_v_z_sp" min="-5" step="0.5" max="3" module="guidance/guidance_v" shortname="sp" unit="2e-8m" alt_unit="m" alt_unit_coef="0.00390625"/>
<dl_setting var="ins_vf_realign" min="0" step="1" max="1" module="subsystems/ins" shortname="vf_realign" values="OFF|ON"/>
</dl_settings>
@@ -97,9 +97,9 @@ void guidance_v_init(void) {
guidance_v_mode = GUIDANCE_V_MODE_KILL;
guidance_v_kp = GUIDANCE_V_HOVER_KP;
guidance_v_kd = GUIDANCE_V_HOVER_KD;
guidance_v_ki = GUIDANCE_V_HOVER_KI;
guidance_v_kp = ABS(GUIDANCE_V_HOVER_KP);
guidance_v_kd = ABS(GUIDANCE_V_HOVER_KD);
guidance_v_ki = ABS(GUIDANCE_V_HOVER_KI);
guidance_v_z_sum_err = 0;
@@ -261,9 +261,9 @@ __attribute__ ((always_inline)) static inline void run_hover_loop(bool_t in_flig
guidance_v_zd_ref = gv_zd_ref<<(INT32_SPEED_FRAC - GV_ZD_REF_FRAC);
guidance_v_zdd_ref = gv_zdd_ref<<(INT32_ACCEL_FRAC - GV_ZDD_REF_FRAC);
/* compute the error to our reference */
int32_t err_z = ins_ltp_pos.z - guidance_v_z_ref;
int32_t err_z = guidance_v_z_ref - ins_ltp_pos.z;
Bound(err_z, GUIDANCE_V_MIN_ERR_Z, GUIDANCE_V_MAX_ERR_Z);
int32_t err_zd = ins_ltp_speed.z - guidance_v_zd_ref;
int32_t err_zd = guidance_v_zd_ref - ins_ltp_speed.z;
Bound(err_zd, GUIDANCE_V_MIN_ERR_ZD, GUIDANCE_V_MAX_ERR_ZD);
if (in_flight) {
@@ -297,12 +297,13 @@ __attribute__ ((always_inline)) static inline void run_hover_loop(bool_t in_flig
#endif
/* our error command */
guidance_v_fb_cmd = ((-guidance_v_kp * err_z) >> 12) +
((-guidance_v_kd * err_zd) >> 21) +
((-guidance_v_ki * guidance_v_z_sum_err) >> 21);
guidance_v_fb_cmd = ((guidance_v_kp * err_z) >> 12) +
((guidance_v_kd * err_zd) >> 21) +
((guidance_v_ki * guidance_v_z_sum_err) >> 21);
guidance_v_delta_t = guidance_v_ff_cmd + guidance_v_fb_cmd;
// guidance_v_delta_t = guidance_v_fb_cmd;
// z-axis pointing down -> positive error means we need less thrust
guidance_v_delta_t = - (guidance_v_ff_cmd + guidance_v_fb_cmd);
// guidance_v_delta_t = -guidance_v_fb_cmd;
}