Browse Source

Rover: add init_compass method

no functional change
mission-4.1.18
Randy Mackay 8 years ago
parent
commit
a07920c5b2
  1. 1
      APMrover2/Rover.h
  2. 15
      APMrover2/sensors.cpp
  3. 11
      APMrover2/system.cpp

1
APMrover2/Rover.h

@ -415,6 +415,7 @@ private: @@ -415,6 +415,7 @@ private:
void update_trigger(void);
void update_alt();
void gcs_failsafe_check(void);
void init_compass(void);
void compass_accumulate(void);
void compass_cal_update(void);
void update_compass(void);

15
APMrover2/sensors.cpp

@ -1,5 +1,20 @@ @@ -1,5 +1,20 @@
#include "Rover.h"
// initialise compass
void Rover::init_compass()
{
if (!g.compass_enabled) {
return;
}
if (!compass.init()|| !compass.read()) {
cliSerial->printf("Compass initialisation failed!\n");
g.compass_enabled = false;
} else {
ahrs.set_compass(&compass);
}
}
/*
if the compass is enabled then try to accumulate a reading
also update initial location used for declination

11
APMrover2/system.cpp

@ -145,15 +145,8 @@ void Rover::init_ardupilot() @@ -145,15 +145,8 @@ void Rover::init_ardupilot()
log_init();
#endif
if (g.compass_enabled == true) {
if (!compass.init()|| !compass.read()) {
cliSerial->printf("Compass initialisation failed!\n");
g.compass_enabled = false;
} else {
ahrs.set_compass(&compass);
// compass.get_offsets(); // load offsets to account for airframe magnetic interference
}
}
// initialise compass
init_compass();
// initialise sonar
init_sonar();

Loading…
Cancel
Save