Paparazzi UAS
v5.18.0_stable
Paparazzi is a free software Unmanned Aircraft System.
|
#include "std.h"
#include "math/pprz_geodetic_int.h"
#include "math/pprz_algebra_int.h"
#include "math/pprz_orientation_conversion.h"
#include "subsystems/ins.h"
#include "subsystems/gps.h"
Go to the source code of this file.
Data Structures | |
struct | InsModuleInt |
Ins implementation state (fixed point) More... | |
Functions | |
void | ins_module_wrapper_init (void) |
void | ins_module_init (void) |
void | ins_module_propagate (struct Int32Vect3 *accel, float dt) |
void | ins_module_update_gps (struct GpsState *gps_s, float dt) |
void | ins_module_update_baro (float pressure) |
void | ins_module_reset_local_origin (void) |
Variables | |
struct InsModuleInt | ins_module |
global INS state More... | |
Paparazzi specific wrapper to run simple module based INS.
Definition in file ins_skeleton.h.
struct InsModuleInt |
Ins implementation state (fixed point)
Definition at line 40 of file ins_skeleton.h.
Data Fields | ||
---|---|---|
struct OrientationReps | body_to_imu | body_to_imu rotation |
struct GpsState | gps | internal copy of last GPS message |
struct NedCoor_i | ltp_accel | |
struct LtpDef_i | ltp_def | |
bool | ltp_initialized | |
struct NedCoor_i | ltp_pos | position in m in BFP with INT32_POS_FRAC |
struct NedCoor_i | ltp_speed | velocity in m/s in BFP with INT32_SPEED_FRAC |
void ins_module_init | ( | void | ) |
Definition at line 149 of file ins_skeleton.c.
Referenced by ins_module_wrapper_init().
void ins_module_propagate | ( | struct Int32Vect3 * | accel, |
float | dt | ||
) |
Definition at line 185 of file ins_skeleton.c.
References InsModuleInt::body_to_imu, ins_module, int32_rmat_transp_vmult(), InsModuleInt::ltp_accel, orientationGetRMat_i(), stateGetNedToBodyRMat_i(), stateSetAccelBody_i(), and VECT3_COPY.
Referenced by accel_cb().
void ins_module_reset_local_origin | ( | void | ) |
Definition at line 198 of file ins_skeleton.c.
Referenced by ins_reset_local_origin().
void ins_module_update_baro | ( | float | pressure | ) |
Definition at line 153 of file ins_skeleton.c.
Referenced by baro_cb().
void ins_module_update_gps | ( | struct GpsState * | gps_s, |
float | dt | ||
) |
Definition at line 157 of file ins_skeleton.c.
References GpsState::ecef_pos, GpsState::ecef_vel, GPS_VALID_POS_ECEF_BIT, GPS_VALID_VEL_ECEF_BIT, GPS_VALID_VEL_NED_BIT, ins_module, INT32_POS_OF_CM_DEN, INT32_POS_OF_CM_NUM, INT32_SPEED_OF_CM_S_DEN, INT32_SPEED_OF_CM_S_NUM, INT32_VECT3_SCALE_2, InsModuleInt::ltp_def, InsModuleInt::ltp_pos, InsModuleInt::ltp_speed, ned_of_ecef_point_i(), ned_of_ecef_vect_i(), GpsState::ned_vel, and GpsState::valid_fields.
Referenced by gps_cb().
void ins_module_wrapper_init | ( | void | ) |
Definition at line 223 of file ins_skeleton.c.
References accel_cb(), accel_ev, baro_cb(), baro_ev, body_to_imu_cb(), body_to_imu_ev, gps_cb(), gps_ev, ins_init_origin_i_from_flightplan(), ins_module, INS_MODULE_BARO_ID, INS_MODULE_GPS_ID, INS_MODULE_IMU_ID, ins_module_init(), INT32_VECT3_ZERO, InsModuleInt::ltp_accel, InsModuleInt::ltp_def, InsModuleInt::ltp_initialized, InsModuleInt::ltp_pos, and InsModuleInt::ltp_speed.
struct InsModuleInt ins_module |
global INS state
Definition at line 71 of file ins_skeleton.c.
Referenced by body_to_imu_cb(), gps_cb(), ins_module_propagate(), ins_module_update_gps(), ins_module_wrapper_init(), ins_ned_to_state(), and ins_reset_local_origin().