Paparazzi UAS
v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
|
Calculation of the Geomagnetic field vector from current location. More...
#include "modules/geo_mag/geo_mag.h"
#include "math/pprz_geodetic_wmm2020.h"
#include "math/pprz_algebra_double.h"
#include "modules/gps/gps.h"
#include "modules/core/abi.h"
#include "autopilot.h"
Go to the source code of this file.
Macros | |
#define | GEO_MAG_SENDER_ID 1 |
Functions | |
void | geo_mag_init (void) |
void | geo_mag_periodic (void) |
void | geo_mag_event (void) |
Variables | |
struct GeoMag | geo_mag |
Calculation of the Geomagnetic field vector from current location.
This module is based on the world magnetic model from (http://www.ngdc.noaa.gov/geomag/WMM/DoDWMM.shtml).
Definition in file geo_mag.c.
void geo_mag_event | ( | void | ) |
Definition at line 59 of file geo_mag.c.
References LlaCoor_i::alt, GeoMag::calc_once, EXT_COEFF1, EXT_COEFF2, EXT_COEFF3, extrapsh(), float_vect3_normalize(), GEO_EPOCH, geo_mag, GEO_MAG_SENDER_ID, gps, GPS_EPOCH_BEGIN, h(), IEXT, LlaCoor_i::lat, GpsState::lla_pos, LlaCoor_i::lon, mag_calc(), MAXCOEFF, NMAX_1, NMAX_2, GeoMag::ready, SECS_IN_YEAR, GpsState::tow, GeoMag::vect, GpsState::week, WEEKS_IN_YEAR, DoubleVect3::x, DoubleVect3::y, and DoubleVect3::z.
void geo_mag_init | ( | void | ) |
Definition at line 45 of file geo_mag.c.
References GeoMag::calc_once, geo_mag, and GeoMag::ready.
void geo_mag_periodic | ( | void | ) |
Definition at line 51 of file geo_mag.c.
References autopilot_throttle_killed(), GeoMag::calc_once, geo_mag, GpsFixValid, and GeoMag::ready.
struct GeoMag geo_mag |
Definition at line 1 of file geo_mag.c.
Referenced by geo_mag_event(), geo_mag_init(), and geo_mag_periodic().