36 #define LQG_SOLVER_FAILED -1
37 #define LQG_SOLVER_RUNNING 0
38 #define LQG_SOLVER_DONE 1
45 extern rtkf_t
rtkf_create(
float beta,
float tau,
float Ts,
float R,
float Q1,
float Q2,
float Q3,
float biaslim);
49 extern lqr_t
lqr_create(
float beta,
float tau,
float Ts,
float q1,
float q2,
float r);
53 extern void lqr_update(lqr_t
lqr,
float q1,
float q2,
float r);
63 extern float lqg_controller(lqg_t lqg,
float signal,
float setpoint);
Main PiOS header to include all the compiled in PiOS options.
rtkf_t lqg_get_rtkf(lqg_t lqg)
void rtkf_stabilize_covariance(rtkf_t rtkf, int iterations)
struct rtkf_state * rtkf_t
lqg_t lqg_create(rtkf_t rtkf, lqr_t lqr)
void lqr_get_gains(lqr_t lqr, float K[2])
lqr_t lqg_get_lqr(lqg_t lqg)
void lqg_set_x0(lqg_t lqg, float x0)
void lqr_update(lqr_t lqr, float q1, float q2, float r)
void lqr_stabilize_covariance(lqr_t lqr, int iterations)
int rtkf_solver_status(rtkf_t rtkf)
void lqg_run_covariance(lqg_t lqg, int iter)
void lqg_get_rtkf_state(lqg_t lqg, float *rate, float *torque, float *bias)
lqr_t lqr_create(float beta, float tau, float Ts, float q1, float q2, float r)
rtkf_t rtkf_create(float beta, float tau, float Ts, float R, float q1, float q2, float q3, float biaslim)
float lqg_controller(lqg_t lqg, float signal, float setpoint)
int lqr_solver_status(lqr_t lqr)
int lqg_solver_status(lqg_t lqg)