Classes | Defines | Functions | Variables
dgnss_management.h File Reference
#include "amb_kf.h"
#include "sats_management.h"
Include dependency graph for dgnss_management.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  dgnss_settings_t

Defines

#define DEFAULT_AMB_DRIFT_VAR   1e-8
#define DEFAULT_AMB_INIT_VAR   1e8
#define DEFAULT_CODE_VAR_KF   (100 * 400)
#define DEFAULT_CODE_VAR_TEST   (100 * 400)
#define DEFAULT_NEW_INT_VAR   1e10
#define DEFAULT_PHASE_VAR_KF   (9e-4 * 16)
#define DEFAULT_PHASE_VAR_TEST   (9e-4 * 16)

Functions

s8 _dgnss_low_latency_float_baseline (u8 num_sdiffs, sdiff_t *sdiffs, double ref_ecef[3], u8 *num_used, double b[3])
s8 _dgnss_low_latency_IAR_baseline (u8 num_sdiffs, sdiff_t *sdiffs, double ref_ecef[3], u8 *num_used, double b[3])
void dgnss_fixed_baseline (u8 n, sdiff_t *sdiffs, double ref_ecef[3], u8 *num_used, double b[3])
s8 dgnss_fixed_baseline2 (u8 num_sdiffs, sdiff_t *sdiffs, double ref_ecef[3], u8 *num_used, double b[3])
void dgnss_float_baseline (u8 *num_used, double b[3])
s8 dgnss_iar_get_single_hyp (double *hyp)
u8 dgnss_iar_MLE_ambs (s32 *ambs)
u32 dgnss_iar_num_hyps (void)
u32 dgnss_iar_num_sats (void)
u8 dgnss_iar_pool_contains (double *ambs)
s8 dgnss_iar_resolved (void)
void dgnss_init (u8 num_sats, sdiff_t *sdiffs, double reciever_ecef[3])
void dgnss_init_known_baseline (u8 num_sats, sdiff_t *sdiffs, double receiver_ecef[3], double b[3])
s8 dgnss_low_latency_baseline (u8 num_sdiffs, sdiff_t *sdiffs, double ref_ecef[3], u8 *num_used, double b[3])
void dgnss_new_float_baseline (u8 num_sats, sdiff_t *sdiffs, double ref_ecef[3], u8 *num_used, double b[3])
void dgnss_rebase_ref (u8 num_sats, sdiff_t *sdiffs, double reciever_ecef[3], u8 old_prns[MAX_CHANNELS], sdiff_t *corrected_sdiffs)
void dgnss_reset_iar (void)
void dgnss_set_settings (double phase_var_test, double code_var_test, double phase_var_kf, double code_var_kf, double amb_drift_var, double amb_init_var, double new_int_var)
void dgnss_update (u8 num_sats, sdiff_t *sdiffs, double reciever_ecef[3])
u8 get_amb_kf_cov (double *cov)
u8 get_amb_kf_de_and_phase (u8 num_sdiffs, sdiff_t *sdiffs, double ref_ecef[3], double *de, double *phase)
u8 get_amb_kf_mean (double *ambs)
u8 get_amb_kf_prns (u8 *prns)
u8 get_amb_test_prns (u8 *prns)
nkf_tget_dgnss_nkf (void)
u8 get_iar_de_and_phase (u8 num_sdiffs, sdiff_t *sdiffs, double ref_ecef[3], double *de, double *phase)
sats_management_tget_sats_management (void)
s32get_stupid_filter_ints (void)
void make_measurements (u8 num_diffs, sdiff_t *sdiffs, double *raw_measurements)
void measure_amb_kf_b (double reciever_ecef[3], u8 num_sdiffs, sdiff_t *sdiffs, double *b)
void measure_b_with_external_ambs (double reciever_ecef[3], u8 num_sdiffs, sdiff_t *sdiffs, double *ambs, double *b)
void measure_iar_b_with_external_ambs (double reciever_ecef[3], u8 num_sdiffs, sdiff_t *sdiffs, double *ambs, double *b)

Variables

dgnss_settings_t dgnss_settings

Define Documentation

#define DEFAULT_AMB_DRIFT_VAR   1e-8

Definition at line 23 of file dgnss_management.h.

#define DEFAULT_AMB_INIT_VAR   1e8

Definition at line 24 of file dgnss_management.h.

#define DEFAULT_CODE_VAR_KF   (100 * 400)

Definition at line 22 of file dgnss_management.h.

#define DEFAULT_CODE_VAR_TEST   (100 * 400)

Definition at line 20 of file dgnss_management.h.

#define DEFAULT_NEW_INT_VAR   1e10

Definition at line 25 of file dgnss_management.h.

#define DEFAULT_PHASE_VAR_KF   (9e-4 * 16)

Definition at line 21 of file dgnss_management.h.

#define DEFAULT_PHASE_VAR_TEST   (9e-4 * 16)

Definition at line 19 of file dgnss_management.h.


Function Documentation

s8 _dgnss_low_latency_float_baseline ( u8  num_sdiffs,
sdiff_t sdiffs,
double  ref_ecef[3],
u8 num_used,
double  b[3] 
)

Constructs a low latency float baseline measurement. The sdiffs have no particular reason (other than a general tendency brought by hysteresis) to match up with the float filter's sats, so we have to check if we can solve. For now, unless the sdiffs are a superset of the float sats, we don't solve.

solve whenever the information is there.

since we're now using make_dd_measurements_and_sdiffs outside of the amb_test context, pull it into another file.

pull this function into the KF, once we pull the sats_management struct into the KF too. When we do, do the same for the IAR low lat solution.

Parameters:
num_sdiffsThe number of sdiffs input.
sdiffsThe sdiffs used to measure. (These should be a superset of the float sats).
ref_ecefThe reference position used for solving, and making observation matrices.
num_usedThe number of sats actually used to compute the baseline.
bThe baseline computed.
Returns:
-1 if it can't solve. 0 If it can solve.

Definition at line 532 of file dgnss_management.c.

s8 _dgnss_low_latency_IAR_baseline ( u8  num_sdiffs,
sdiff_t sdiffs,
double  ref_ecef[3],
u8 num_used,
double  b[3] 
)

Constructs a low latency IAR resolved baseline measurement. The sdiffs have no particular reason (other than a general tendency brought by hysteresis) to match up with the IAR sats, so we have to check if we can solve. For now, unless the sdiffs are a superset of the IAR sats, we don't solve.

, solve whenever we can

since we're now using make_dd_measurements_and_sdiffs outside of the amb_test context, pull it into another file.

pull this into the IAR file when we do the same for the float low lat solution.

Parameters:
num_sdiffsThe number of sdiffs input.
sdiffsThe sdiffs used to measure. (These should be a superset of the float sats).
ref_ecefThe reference position used for solving, and making observation matrices.
num_usedThe number of sats actually used to compute the baseline.
bThe baseline computed.
Returns:
-1 if it can't solve. 0 If it can solve.

Definition at line 589 of file dgnss_management.c.

void dgnss_fixed_baseline ( u8  n,
sdiff_t sdiffs,
double  ref_ecef[3],
u8 num_used,
double  b[3] 
)

Definition at line 428 of file dgnss_management.c.

s8 dgnss_fixed_baseline2 ( u8  num_sdiffs,
sdiff_t sdiffs,
double  ref_ecef[3],
u8 num_used,
double  b[3] 
)

Definition at line 450 of file dgnss_management.c.

void dgnss_float_baseline ( u8 num_used,
double  b[3] 
)
s8 dgnss_iar_get_single_hyp ( double *  hyp)

Definition at line 394 of file dgnss_management.c.

u8 dgnss_iar_MLE_ambs ( s32 ambs)

Definition at line 1013 of file dgnss_management.c.

u32 dgnss_iar_num_hyps ( void  )

Definition at line 380 of file dgnss_management.c.

u32 dgnss_iar_num_sats ( void  )

Definition at line 389 of file dgnss_management.c.

u8 dgnss_iar_pool_contains ( double *  ambs)

Definition at line 1008 of file dgnss_management.c.

s8 dgnss_iar_resolved ( void  )

Definition at line 1003 of file dgnss_management.c.

void dgnss_init ( u8  num_sats,
sdiff_t sdiffs,
double  reciever_ecef[3] 
)

Definition at line 108 of file dgnss_management.c.

void dgnss_init_known_baseline ( u8  num_sats,
sdiff_t sdiffs,
double  receiver_ecef[3],
double  b[3] 
)

Definition at line 679 of file dgnss_management.c.

s8 dgnss_low_latency_baseline ( u8  num_sdiffs,
sdiff_t sdiffs,
double  ref_ecef[3],
u8 num_used,
double  b[3] 
)

Finds the baseline using low latency sdiffs. The low latency sdiffs are not guaranteed to match up with either the amb_test's or the float sdiffs, and thus care must be taken to transform them accordingly and check their availability in those sat sets.

Parameters:
num_sdiffsThe number of low-latency sdiffs provided.
sdiffsThe low-latency sdiffs.
ref_ecefThe referece position for the baseline. (TODO is this the local or remote receiver position?)
num_usedOutput number of sdiffs actually used in the baseline estimate.
bOutput baseline.
Returns:
1 if we are using an IAR resolved baseline. 2 if we are using a float baseline. -1 if we can't give a baseline.

Definition at line 643 of file dgnss_management.c.

void dgnss_new_float_baseline ( u8  num_sats,
sdiff_t sdiffs,
double  ref_ecef[3],
u8 num_used,
double  b[3] 
)

Definition at line 405 of file dgnss_management.c.

void dgnss_rebase_ref ( u8  num_sats,
sdiff_t sdiffs,
double  reciever_ecef[3],
u8  old_prns[MAX_CHANNELS],
sdiff_t corrected_sdiffs 
)

Definition at line 174 of file dgnss_management.c.

void dgnss_reset_iar ( void  )

Definition at line 673 of file dgnss_management.c.

void dgnss_set_settings ( double  phase_var_test,
double  code_var_test,
double  phase_var_kf,
double  code_var_kf,
double  amb_drift_var,
double  amb_init_var,
double  new_int_var 
)

Definition at line 39 of file dgnss_management.c.

void dgnss_update ( u8  num_sats,
sdiff_t sdiffs,
double  reciever_ecef[3] 
)

Definition at line 295 of file dgnss_management.c.

u8 get_amb_kf_cov ( double *  cov)

Definition at line 984 of file dgnss_management.c.

u8 get_amb_kf_de_and_phase ( u8  num_sdiffs,
sdiff_t sdiffs,
double  ref_ecef[3],
double *  de,
double *  phase 
)

Definition at line 957 of file dgnss_management.c.

u8 get_amb_kf_mean ( double *  ambs)

Definition at line 977 of file dgnss_management.c.

u8 get_amb_kf_prns ( u8 prns)

Definition at line 991 of file dgnss_management.c.

u8 get_amb_test_prns ( u8 prns)

Definition at line 997 of file dgnss_management.c.

nkf_t* get_dgnss_nkf ( void  )

Definition at line 1019 of file dgnss_management.c.

u8 get_iar_de_and_phase ( u8  num_sdiffs,
sdiff_t sdiffs,
double  ref_ecef[3],
double *  de,
double *  phase 
)

Definition at line 967 of file dgnss_management.c.

Definition at line 1029 of file dgnss_management.c.

Definition at line 1024 of file dgnss_management.c.

void make_measurements ( u8  num_diffs,
sdiff_t sdiffs,
double *  raw_measurements 
)

Definition at line 53 of file dgnss_management.c.

void measure_amb_kf_b ( double  reciever_ecef[3],
u8  num_sdiffs,
sdiff_t sdiffs,
double *  b 
)

Definition at line 810 of file dgnss_management.c.

void measure_b_with_external_ambs ( double  reciever_ecef[3],
u8  num_sdiffs,
sdiff_t sdiffs,
double *  ambs,
double *  b 
)

Definition at line 844 of file dgnss_management.c.

void measure_iar_b_with_external_ambs ( double  reciever_ecef[3],
u8  num_sdiffs,
sdiff_t sdiffs,
double *  ambs,
double *  b 
)

Definition at line 878 of file dgnss_management.c.


Variable Documentation

Definition at line 29 of file dgnss_management.c.



swiftnav
Author(s):
autogenerated on Sat Jun 8 2019 18:56:50