mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-03-27 01:12:18 +08:00
ekf: use PDOP instead of GDOP as TDOP (part of GDOP) is not given by the GNSS receiver
This commit is contained in:
committed by
Mathieu Bresciani
parent
20705e3c53
commit
09c8c8f706
@@ -104,7 +104,7 @@ def get_gps_check_fail_flags(estimator_status: dict) -> dict:
|
||||
|
||||
# 0 : insufficient fix type (no 3D solution)
|
||||
# 1 : minimum required sat count fail
|
||||
# 2 : minimum required GDoP fail
|
||||
# 2 : minimum required PDOP fail
|
||||
# 3 : maximum allowed horizontal position error fail
|
||||
# 4 : maximum allowed vertical position error fail
|
||||
# 5 : maximum allowed speed error fail
|
||||
@@ -114,7 +114,7 @@ def get_gps_check_fail_flags(estimator_status: dict) -> dict:
|
||||
# 9 : maximum allowed vertical velocity discrepancy fail
|
||||
gps_fail_flags['gfix_fail'] = ((2 ** 0 & estimator_status['gps_check_fail_flags']) > 0) * 1
|
||||
gps_fail_flags['nsat_fail'] = ((2 ** 1 & estimator_status['gps_check_fail_flags']) > 0) * 1
|
||||
gps_fail_flags['gdop_fail'] = ((2 ** 2 & estimator_status['gps_check_fail_flags']) > 0) * 1
|
||||
gps_fail_flags['pdop_fail'] = ((2 ** 2 & estimator_status['gps_check_fail_flags']) > 0) * 1
|
||||
gps_fail_flags['herr_fail'] = ((2 ** 3 & estimator_status['gps_check_fail_flags']) > 0) * 1
|
||||
gps_fail_flags['verr_fail'] = ((2 ** 4 & estimator_status['gps_check_fail_flags']) > 0) * 1
|
||||
gps_fail_flags['serr_fail'] = ((2 ** 5 & estimator_status['gps_check_fail_flags']) > 0) * 1
|
||||
|
||||
@@ -219,11 +219,11 @@ def create_pdf_report(ulog: ULog, output_plot_filename: str) -> None:
|
||||
# gps_check_fail_flags summary
|
||||
data_plot = CheckFlagsPlot(
|
||||
status_time, gps_fail_flags,
|
||||
[['nsat_fail', 'gdop_fail', 'herr_fail', 'verr_fail', 'gfix_fail', 'serr_fail'],
|
||||
[['nsat_fail', 'pdop_fail', 'herr_fail', 'verr_fail', 'gfix_fail', 'serr_fail'],
|
||||
['hdrift_fail', 'vdrift_fail', 'hspd_fail', 'veld_diff_fail']],
|
||||
x_label='time (sec)', y_lim=(-0.1, 1.1), y_labels=['failed', 'failed'],
|
||||
sub_titles=['GPS Direct Output Check Failures', 'GPS Derived Output Check Failures'],
|
||||
legend=[['N sats', 'GDOP', 'horiz pos error', 'vert pos error', 'fix type',
|
||||
legend=[['N sats', 'PDOP', 'horiz pos error', 'vert pos error', 'fix type',
|
||||
'speed error'], ['horiz drift', 'vert drift', 'horiz speed',
|
||||
'vert vel inconsistent']], annotate=False, pdf_handle=pdf_pages)
|
||||
data_plot.save()
|
||||
|
||||
Reference in New Issue
Block a user