Integrate asynchronous GPS IMU fusion
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
#ifndef GPS_SYSTEM_APP_H
|
||||
#define GPS_SYSTEM_APP_H
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <stdint.h>
|
||||
|
||||
#include "fusion/fusion_measurement.h"
|
||||
#include "fusion/navigation_fusion.h"
|
||||
#include "gps/NavEquations.h"
|
||||
#include "imu/imu_sample.h"
|
||||
|
||||
/* Application-owned messages and lifecycle state at the GPS/IMU/fusion
|
||||
* boundary. Solver, driver and ESKF private state remain in their modules. */
|
||||
typedef struct {
|
||||
gps_nav_solution_t gps_solution;
|
||||
fusion_gps_measurement_t gps_for_fusion;
|
||||
imu_sample_t imu_sample;
|
||||
navigation_fusion_output_t fused_solution;
|
||||
uint64_t gps_measurement_ticks;
|
||||
uint64_t last_status_tick;
|
||||
bool gps_epoch_ready;
|
||||
bool fusion_enabled;
|
||||
bool imu_initialized;
|
||||
bool fusion_initialized;
|
||||
bool imu_running;
|
||||
} gps_system_state_t;
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user