Larus glider flight sensor system 3.9.2024
Software-In-The-Loop test and validation system
Loading...
Searching...
No Matches
Kalman_V_A_Aoff_observer.h
Go to the documentation of this file.
1/***********************************************************************/
25#ifndef APPLICATION_VA_AOFF_OBSERVER_H_
26#define APPLICATION_VA_AOFF_OBSERVER_H_
27
28#include "embedded_memory.h"
29#include "embedded_math.h"
30#include <stdint.h>
32
40{
41private:
42
43 // constants
44 enum
45 {
46 N = 3,
47 L = 2
48 };
49 static constexpr float Ta = 0.01f;
50 static ROM float Gain[N][L];
51
52 // variables
53 float x[N];
54
55public:
56 typedef enum// state vector components
57 {
59 } state;
60
62 : x{ v, a, 0.0f}
63 {}
64
65 void update( const float velocity, const float acceleration);
66
67 inline float get_x( state index) const
68 {
69 return x[index];
70 };
71};
72
73#endif /* APPLICATION_VA_OBSERVER_H_ */
float a[2]
Kalman-filter-based sensor fusion observer for horizontal movement.
Kalman_V_A_Aoff_observer_t(float v=ZERO, float a=ZERO)
void update(const float velocity, const float acceleration)
mathematical vector of arbitrary type and size
Definition vector.h:40
defines platform-dependent algorithms and constants
#define ZERO
settings to allow compiling embedded software on a PC target
#define ROM
collection of system tuning parameters