mirror of
https://github.com/ArduPilot/ardupilot
synced 2025-02-10 18:03:56 -04:00
AP_Baro: added hil_mode support
This commit is contained in:
parent
4ff75f0371
commit
ac3dd87790
@ -66,7 +66,8 @@ AP_Baro::AP_Baro() :
|
|||||||
_last_altitude_EAS2TAS(0.0f),
|
_last_altitude_EAS2TAS(0.0f),
|
||||||
_EAS2TAS(0.0f),
|
_EAS2TAS(0.0f),
|
||||||
_external_temperature(0.0f),
|
_external_temperature(0.0f),
|
||||||
_last_external_temperature_ms(0)
|
_last_external_temperature_ms(0),
|
||||||
|
_hil_mode(false)
|
||||||
{
|
{
|
||||||
memset(sensors, 0, sizeof(sensors));
|
memset(sensors, 0, sizeof(sensors));
|
||||||
|
|
||||||
@ -289,9 +290,11 @@ void AP_Baro::init(void)
|
|||||||
*/
|
*/
|
||||||
void AP_Baro::update(void)
|
void AP_Baro::update(void)
|
||||||
{
|
{
|
||||||
|
if (!_hil_mode) {
|
||||||
for (uint8_t i=0; i<_num_drivers; i++) {
|
for (uint8_t i=0; i<_num_drivers; i++) {
|
||||||
drivers[i]->update();
|
drivers[i]->update();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// consider a sensor as healthy if it has had an update in the
|
// consider a sensor as healthy if it has had an update in the
|
||||||
// last 0.5 seconds
|
// last 0.5 seconds
|
||||||
|
@ -121,6 +121,9 @@ public:
|
|||||||
// return number of registered sensors
|
// return number of registered sensors
|
||||||
uint8_t num_instances(void) const { return _num_sensors; }
|
uint8_t num_instances(void) const { return _num_sensors; }
|
||||||
|
|
||||||
|
// enable HIL mode
|
||||||
|
void set_hil_mode(void) { _hil_mode = true; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// how many drivers do we have?
|
// how many drivers do we have?
|
||||||
uint8_t _num_drivers;
|
uint8_t _num_drivers;
|
||||||
@ -150,6 +153,7 @@ private:
|
|||||||
float _external_temperature;
|
float _external_temperature;
|
||||||
uint32_t _last_external_temperature_ms;
|
uint32_t _last_external_temperature_ms;
|
||||||
DerivativeFilterFloat_Size7 _climb_rate_filter;
|
DerivativeFilterFloat_Size7 _climb_rate_filter;
|
||||||
|
bool _hil_mode:1;
|
||||||
|
|
||||||
void SimpleAtmosphere(const float alt, float &sigma, float &delta, float &theta);
|
void SimpleAtmosphere(const float alt, float &sigma, float &delta, float &theta);
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user