mirror of
https://github.com/ArduPilot/ardupilot
synced 2025-01-18 06:38:29 -04:00
Copter: bug fix to set sonar_alt_health to zero when disabled
This commit is contained in:
parent
5b50f31b8f
commit
21ff3853f1
@ -2056,8 +2056,10 @@ static void update_altitude()
|
||||
baro_rate = constrain(baro_rate, -500, 500);
|
||||
|
||||
// read in sonar altitude and calculate sonar rate
|
||||
if(g.sonar_enabled) {
|
||||
sonar_alt = read_sonar();
|
||||
sonar_alt = read_sonar();
|
||||
// start calculating the sonar_rate as soon as valid sonar readings start coming in so that we are ready when the sonar_alt_health becomes 3
|
||||
// Note: post 2.9.1 release we will remove the sonar_rate variable completely
|
||||
if(sonar_alt_health > 1) {
|
||||
sonar_rate = (sonar_alt - old_sonar_alt) * 10;
|
||||
sonar_rate = constrain(sonar_rate, -150, 150);
|
||||
}
|
||||
|
@ -35,6 +35,12 @@ static int32_t read_barometer(void)
|
||||
static int16_t read_sonar(void)
|
||||
{
|
||||
#if CONFIG_SONAR == ENABLED
|
||||
// exit immediately if sonar is disabled
|
||||
if( !g.sonar_enabled ) {
|
||||
sonar_alt_health = 0;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int16_t temp_alt = sonar.read();
|
||||
|
||||
if(temp_alt >= sonar.min_distance && temp_alt <= sonar.max_distance * 0.70) {
|
||||
|
Loading…
Reference in New Issue
Block a user