Paparazzi UAS  v6.2_unstable
Paparazzi is a free software Unmanned Aircraft System.
ahrs_madgwick.h File Reference
+ Include dependency graph for ahrs_madgwick.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  AhrsMadgwick
 Madgwick filter structure. More...
 

Functions

void ahrs_madgwick_init (void)
 
void ahrs_madgwick_set_body_to_imu_quat (struct FloatQuat *q_b2i)
 
void ahrs_madgwick_align (struct FloatRates *lp_gyro, struct FloatVect3 *lp_accel)
 
void ahrs_madgwick_propagate (struct FloatRates *gyro, float dt)
 
void ahrs_madgwick_update_accel (struct FloatVect3 *accel)
 

Variables

struct AhrsMadgwick ahrs_madgwick
 

Detailed Description

AHRS using Madgwick implementation

See: https://x-io.co.uk/open-source-imu-and-ahrs-algorithms/

Definition in file ahrs_madgwick.h.


Data Structure Documentation

◆ AhrsMadgwick

struct AhrsMadgwick

Madgwick filter structure.

Definition at line 38 of file ahrs_madgwick.h.

+ Collaboration diagram for AhrsMadgwick:
Data Fields
struct FloatVect3 accel Measured accelerometers.
struct FloatRates bias Gyro bias (from alignment)
struct OrientationReps body_to_imu body_to_imu rotation
bool is_aligned aligned flag
struct FloatQuat quat Estimated attitude (quaternion)
struct FloatRates rates Measured gyro rates.
bool reset flag to request reset/reinit the filter

Function Documentation

◆ ahrs_madgwick_align()

void ahrs_madgwick_align ( struct FloatRates lp_gyro,
struct FloatVect3 lp_accel 
)

Definition at line 59 of file ahrs_madgwick.c.

References ahrs_float_get_quat_from_accel(), ahrs_madgwick, AhrsMadgwick::bias, AhrsMadgwick::is_aligned, and AhrsMadgwick::quat.

Referenced by aligner_cb().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ahrs_madgwick_init()

void ahrs_madgwick_init ( void  )

Definition at line 50 of file ahrs_madgwick.c.

References ahrs_madgwick, init_state(), AhrsMadgwick::is_aligned, and AhrsMadgwick::reset.

Referenced by ahrs_madgwick_register().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ahrs_madgwick_propagate()

◆ ahrs_madgwick_set_body_to_imu_quat()

void ahrs_madgwick_set_body_to_imu_quat ( struct FloatQuat q_b2i)

Definition at line 147 of file ahrs_madgwick.c.

References ahrs_madgwick, AhrsMadgwick::body_to_imu, AhrsMadgwick::is_aligned, orientationSetQuat_f(), and AhrsMadgwick::quat.

Referenced by body_to_imu_cb().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ahrs_madgwick_update_accel()

void ahrs_madgwick_update_accel ( struct FloatVect3 accel)

Definition at line 142 of file ahrs_madgwick.c.

References AhrsMadgwick::accel, and ahrs_madgwick.

Referenced by accel_cb().

+ Here is the caller graph for this function:

Variable Documentation

◆ ahrs_madgwick