Paparazzi UAS  v4.2.2_stable-4-gcc32f65
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
ahrs_float_lkf.h
Go to the documentation of this file.
1 /*
2  * $Id: $
3  *
4  * Copyright (C) 2009 Felix Ruess <felix.ruess@gmail.com>
5  * Copyright (C) 2008-2009 Antoine Drouin <poinix@gmail.com>
6  *
7  * This file is part of paparazzi.
8  *
9  * paparazzi is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License as published by
11  * the Free Software Foundation; either version 2, or (at your option)
12  * any later version.
13  *
14  * paparazzi is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17  * GNU General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with paparazzi; see the file COPYING. If not, write to
21  * the Free Software Foundation, 59 Temple Place - Suite 330,
22  * Boston, MA 02111-1307, USA.
23  */
24 
25 #ifndef AHRS_FLOAT_LKF_H
26 #define AHRS_FLOAT_LKF_H
27 
28 #include "subsystems/ahrs.h"
29 #include "std.h"
30 #include "math/pprz_algebra_int.h"
31 
32 extern struct FloatQuat bafl_quat;
33 extern struct FloatRates bafl_bias;
34 extern struct FloatRates bafl_rates;
35 extern struct FloatEulers bafl_eulers;
36 extern struct FloatRMat bafl_dcm;
37 
38 extern struct FloatQuat bafl_q_a_err;
39 extern struct FloatQuat bafl_q_m_err;
40 extern struct FloatRates bafl_b_a_err;
41 extern struct FloatRates bafl_b_m_err;
42 extern float bafl_qnorm;
43 extern float bafl_phi_accel;
44 extern float bafl_theta_accel;
45 extern struct FloatVect3 bafl_accel_measure;
46 extern struct FloatVect3 bafl_mag;
47 
48 #define BAFL_SSIZE 6
49 extern float bafl_P[BAFL_SSIZE][BAFL_SSIZE];
50 extern float bafl_X[BAFL_SSIZE];
51 
52 extern float bafl_sigma_accel;
53 extern float bafl_sigma_mag;
54 extern float bafl_R_accel;
55 extern float bafl_R_mag;
56 
57 extern float bafl_Q_att;
58 extern float bafl_Q_gyro;
59 
60 
61 #define ahrs_float_lkf_SetRaccel(_v) { \
62  bafl_sigma_accel = _v; \
63  bafl_R_accel = _v * _v; \
64 }
65 #define ahrs_float_lkf_SetRmag(_v) { \
66  bafl_sigma_mag = _v; \
67  bafl_R_mag = _v * _v; \
68 }
69 
70 #endif /* AHRS_FLOAT_LKF_H */
71 
rotation matrix
struct FloatQuat bafl_q_m_err
Attitude and Heading Reference System interface.
angular rates
float bafl_Q_gyro
float bafl_R_mag
euler angles
struct FloatRMat bafl_dcm
#define BAFL_SSIZE
Roation quaternion.
struct FloatEulers bafl_eulers
struct FloatQuat bafl_quat
struct FloatRates bafl_rates
float bafl_sigma_mag
struct FloatVect3 bafl_mag
float bafl_phi_accel
float bafl_sigma_accel
float bafl_R_accel
struct FloatRates bafl_bias
float bafl_P[BAFL_SSIZE][BAFL_SSIZE]
float bafl_theta_accel
float bafl_X[BAFL_SSIZE]
struct FloatRates bafl_b_m_err
struct FloatVect3 bafl_accel_measure
float bafl_Q_att
struct FloatQuat bafl_q_a_err
float bafl_qnorm
struct FloatRates bafl_b_a_err
Paparazzi fixed point algebra.