From 837c6ce2495e573d088999d6e738a50eefec356f Mon Sep 17 00:00:00 2001 From: Gautier Hattenberger Date: Wed, 25 May 2011 10:34:47 +0200 Subject: [PATCH] add an option to reverse airspeed measure when you stupidely mix static and dynamic pressure --- conf/airframes/ENAC/fixed-wing/spocIII-2.xml | 30 +++++++++++--------- sw/airborne/modules/sensors/airspeed_ets.c | 5 ++++ 2 files changed, 22 insertions(+), 13 deletions(-) diff --git a/conf/airframes/ENAC/fixed-wing/spocIII-2.xml b/conf/airframes/ENAC/fixed-wing/spocIII-2.xml index ebe2cde45e3..2983b7f7c3c 100644 --- a/conf/airframes/ENAC/fixed-wing/spocIII-2.xml +++ b/conf/airframes/ENAC/fixed-wing/spocIII-2.xml @@ -13,8 +13,10 @@ - + + + @@ -35,7 +37,7 @@ - + @@ -54,10 +56,10 @@ - - - - + + + + @@ -101,7 +103,7 @@
- + @@ -109,7 +111,7 @@ - + @@ -130,6 +132,8 @@ + + @@ -175,18 +179,18 @@ - + - - - + + + - +
diff --git a/sw/airborne/modules/sensors/airspeed_ets.c b/sw/airborne/modules/sensors/airspeed_ets.c index 4921e9c6a23..1859cf5ca20 100644 --- a/sw/airborne/modules/sensors/airspeed_ets.c +++ b/sw/airborne/modules/sensors/airspeed_ets.c @@ -146,8 +146,13 @@ void airspeed_ets_read_event( void ) { airspeed_ets_offset_tmp += airspeed_ets_raw; } // Convert raw to m/s +#ifdef AIRSPEED_ETS_REVERSE + if (airspeed_ets_offset_init && airspeed_ets_raw < airspeed_ets_offset) + airspeed_tmp = AIRSPEED_ETS_SCALE * sqrtf( (float)(airspeed_ets_offset-airspeed_ets_raw) ) - AIRSPEED_ETS_OFFSET; +#else if (airspeed_ets_offset_init && airspeed_ets_raw > airspeed_ets_offset) airspeed_tmp = AIRSPEED_ETS_SCALE * sqrtf( (float)(airspeed_ets_raw-airspeed_ets_offset) ) - AIRSPEED_ETS_OFFSET; +#endif else airspeed_tmp = 0.0; // Airspeed should always be positive