Paparazzi UAS
v5.18.0_stable
Paparazzi is a free software Unmanned Aircraft System.
|
#include "relative_localization_filter.h"
#include "subsystems/datalink/telemetry.h"
#include "state.h"
#include "modules/datalink/extra_pprz_dl.h"
#include "subsystems/abi.h"
#include "math/pprz_algebra.h"
#include "math/pprz_algebra_int.h"
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include "discrete_ekf_no_north.h"
Go to the source code of this file.
Macros | |
#define | RELATIVE_LOCALIZATION_N_UAVS 4 |
#define | RELATIVE_LOCALIZATION_NO_NORTH 1 |
Functions | |
static void | range_msg_callback (uint8_t sender_id, uint8_t ac_id, float range, float trackedVx, float trackedVy, float trackedh, float trackedAx, float trackedAy, float trackedYawr) |
static void | send_relative_localization_data (struct transport_tx *trans, struct link_device *dev) |
void | relative_localization_filter_init (void) |
void | relative_localization_filter_periodic (void) |
Definition in file relative_localization_filter.c.
#define RELATIVE_LOCALIZATION_N_UAVS 4 |
Definition at line 41 of file relative_localization_filter.c.
#define RELATIVE_LOCALIZATION_NO_NORTH 1 |
Definition at line 49 of file relative_localization_filter.c.
|
static |
Definition at line 67 of file relative_localization_filter.c.
References ac_id, discrete_ekf_new(), discrete_ekf_no_north_new(), discrete_ekf_no_north_predict(), discrete_ekf_no_north_update(), discrete_ekf_predict(), discrete_ekf_update(), discrete_ekf_no_north::dt, EKF_L, EKF_M, ekf_rl, get_sys_time_usec(), id_array, idx, int32_vect_find(), latest_update_time, number_filters, FloatRates::r, range_array, RELATIVE_LOCALIZATION_N_UAVS, stateGetAccelNed_f(), stateGetBodyRates_f(), stateGetPositionEnu_f(), stateGetSpeedNed_f(), NedCoor_f::x, NedCoor_f::y, mesonh.mesonh_atmosphere::Z, and EnuCoor_f::z.
Referenced by relative_localization_filter_init().
void relative_localization_filter_init | ( | void | ) |
Definition at line 128 of file relative_localization_filter.c.
References DefaultPeriodic, id_array, int32_vect_set_value(), number_filters, pprzmsg_cnt, range_communication_event, range_msg_callback(), register_periodic_telemetry(), RELATIVE_LOCALIZATION_N_UAVS, send_relative_localization_data(), and UWB_COMM_ID.
void relative_localization_filter_periodic | ( | void | ) |
Definition at line 139 of file relative_localization_filter.c.
References ekf_rl, f, id_array, number_filters, RELATIVE_LOCALIZATION_ID, and mesonh.mesonh_atmosphere::X.
|
static |
Definition at line 111 of file relative_localization_filter.c.
References dev, ekf_rl, id_array, number_filters, pprzmsg_cnt, range_array, and mesonh.mesonh_atmosphere::X.
Referenced by relative_localization_filter_init().
struct discrete_ekf_no_north ekf_rl[RELATIVE_LOCALIZATION_N_UAVS] |
Definition at line 54 of file relative_localization_filter.c.
Referenced by range_msg_callback(), relative_localization_filter_periodic(), and send_relative_localization_data().
int32_t id_array[RELATIVE_LOCALIZATION_N_UAVS] |
Definition at line 60 of file relative_localization_filter.c.
Referenced by range_msg_callback(), relative_localization_filter_init(), relative_localization_filter_periodic(), and send_relative_localization_data().
uint32_t latest_update_time[RELATIVE_LOCALIZATION_N_UAVS] |
Definition at line 61 of file relative_localization_filter.c.
Referenced by range_msg_callback().
uint8_t number_filters |
Definition at line 62 of file relative_localization_filter.c.
Referenced by range_msg_callback(), relative_localization_filter_init(), relative_localization_filter_periodic(), and send_relative_localization_data().
uint8_t pprzmsg_cnt |
Definition at line 64 of file relative_localization_filter.c.
Referenced by relative_localization_filter_init(), and send_relative_localization_data().
float range_array[RELATIVE_LOCALIZATION_N_UAVS] |
Definition at line 63 of file relative_localization_filter.c.
Referenced by range_msg_callback(), and send_relative_localization_data().
|
static |
Definition at line 66 of file relative_localization_filter.c.
Referenced by relative_localization_filter_init().