![]() |
Da Vinci Firmware 1
Firmware for the DaVinci-M rocket avionics board.
|
A temporary, gyroscope-based attitude estimator. More...


Go to the source code of this file.
Functions | |
| void | attitude_estimation (const double quat[4], double ts, double omega_x, double omega_y, double omega_z, double *alpha, double quat_new[4]) |
| Propagates the rocket's attitude quaternion and calculates the angle from vertical. | |
A temporary, gyroscope-based attitude estimator.
This module provides a temporary attitude estimation function that propagates the rocket's orientation (quaternion) forward in time using gyroscope data. It serves as a placeholder for more advanced filters like MEKF or a full Kalman filter.
This implementation was provided by the MSA subteam and is intended for use on hardware configurations that do not have a functioning magnetometer. Because it relies solely on integrating gyroscope rates (a form of dead reckoning), it is susceptible to drift over time.
Definition in file attitude_estimation.h.
| void attitude_estimation | ( | const double | quat[4], |
| double | ts, | ||
| double | omega_x, | ||
| double | omega_y, | ||
| double | omega_z, | ||
| double * | alpha, | ||
| double | quat_new[4] | ||
| ) |
Propagates the rocket's attitude quaternion and calculates the angle from vertical.
| [in] | quat | The current attitude quaternion [w, x, y, z]. |
| [in] | ts | The time step (delta time) in seconds since the last update. |
| [in] | omega_x | Angular velocity around the body's X-axis in radians/second. |
| [in] | omega_y | Angular velocity around the body's Y-axis in radians/second. |
| [in] | omega_z | Angular velocity around the body's Z-axis in radians/second. |
| [out] | alpha | Pointer to a double to store the calculated angle between the rocket's body axis and the vertical, in degrees. |
| [out] | quat_new | An array to store the resulting, updated attitude quaternion. |
Definition at line 27 of file attitude_estimation.c.
References alpha, and eye_attitude().
Referenced by StartKalman_mkf().

