49 atmosphere (101325.0f),
53 air_pressure_resampler_100Hz_10Hz(0.04f),
61 GNSS_negative_altitude(
ZERO),
66 TAS_averager(1.0f / 1.0f / 100.0f),
67 IAS_averager(1.0f / 1.0f / 100.0f)
73#if DEVELOPMENT_ADDITIONS
74 ahrs_magnetic.update_magnetic_induction_data( declination, inclination);
80 if( !
isnan( temperature) && !
isnan( humidity) )
117 air_pressure_resampler_100Hz_10Hz.
respond(pressure);
132 pitot_pressure = pressure < 0.0f ? 0.0f : pressure;
133 if( pitot_pressure > 4500.0f)
140 TAS_averager.
settle(0.0f);
146 IAS_averager.
settle(0.0f);
185#if DEVELOPMENT_ADDITIONS
197#if DEVELOPMENT_ADDITIONS
206 float pitot_pressure;
214 float GNSS_negative_altitude;
215 unsigned GNSS_fix_type;
attitude and heading reference system (interface)
uBlox GNSS + D-GNSS interface
#define FAST_SAMPLING_TIME
computes properties of earth's atmosphere
Attitude and heading reference system.
void update_magnetic_induction_data(float declination, float inclination)
void attitude_setup(const float3vector &acceleration, const float3vector &induction)
initial attitude setup from observables
void set_from_euler(float r, float n, float y)
observation of the aircraft state (ground / flying)
Maintenance of atmosphere data like pressure, density etc.
void disregard_ambient_air_data(void)
float get_negative_altitude(void) const
float get_IAS_from_dynamic_pressure(float dynamic_pressure) const
float get_TAS_from_dynamic_pressure(float dynamic_pressure) const
void initialize(float altitude)
void set_pressure(float p_abs)
void feed_QFF_density_metering(float pressure, float MSL_altitude)
void set_ambient_air_data(float temperature, float humidity)
organizes horizontal navigation, wind observation and variometer
void reset_altitude(void)
void set_density_data(float temperature, float humidity)
void update_pressure(float pressure)
update absolute pressure called @ 100 Hz
void initialize_QFF_density_metering(float MSL_altitude)
bool update_at_10Hz()
slow update flight observer data
void update_at_100Hz(const float3vector &acc, const float3vector &mag, const float3vector &gyro)
update AHRS from IMU
void set_from_add_mag(const float3vector &acc, const float3vector &mag)
void report_data(output_data_t &d)
copy all navigator data into output_data structure
void feed_QFF_density_metering(float pressure, float MSL_altitude)
void update_pitot(float pressure)
update pitot pressure called @ 100 Hz
void disregard_density_data(void)
void update_magnetic_induction_data(float declination, float inclination)
void update_GNSS_data(const coordinates_t &coordinates)
update on new navigation data from GNSS
void set_from_euler(float r, float n, float y)
float get_IAS(void) const
void set_attitude(float roll, float nick, float yaw)
return aggregate flight observer
void settle(const datatype &present_input)
datatype respond(const datatype &input)
this class is responsible for all glider flight data
void reset(float pressure_altitude, float GNSS_altitude)
mathematical vector of arbitrary type and size
mechanisms to filter wind data
differentiate data (template)
type CLIP(type x, type min, type max)
float configuration(EEPROM_PARAMETER_ID id)
specialized averager for circling and straight flight
Contains all important data from the GNSS.
combination of all input and output data in one structure
collection of system tuning parameters
#define DEVELOPMENT_ADDITIONS
wind measurement system (interface)