GnssMeasurement-Strukturreferenz

GnssMeasurement-Strukturreferenz

#include < gps.h >

Datenfelder

size_t Größe
GnssMeasurementFlags Flaggen
int16_t svid
GnssConstellationType Konstellation
doppelt time_offset_ns
GnssMeasurementState Zustand
int64_t empfangene_sv_time_in_ns
int64_t empfangene_sv_time_uncertainty_in_ns
doppelt c_n0_dbhz
doppelt pseudorange_rate_mps
doppelt pseudorange_rate_uncertainty_mps
GnssAccumulatedDeltaRangeState akkumulierter_delta_range_state
doppelt akkumuliert_delta_range_m
doppelt akkumulierte_delta_range_uncertainty_m
schweben Trägerfrequenz_Hz
int64_t Carrier_cycles
doppelt Carrier_Phase
doppelt Carrier_phase_uncertainty
GnssMultipathIndicator multipath_indicator
doppelt snr_db

detaillierte Beschreibung

Stellt eine GNSS-Messung dar und enthält rohe und berechnete Informationen.

Unabhängigkeit – Alle in dieser Struktur gemeldeten Signalmessinformationen (z. B. sv_time, pseudorange_rate, multipath_indicator) sollten nur auf GNSS-Signalmessungen basieren. Sie dürfen Messungen nicht synthetisieren, indem Sie erwartete Messungen auf der Grundlage bekannter oder geschätzter Position, Geschwindigkeit oder Zeit berechnen oder melden.

Definition in Zeile 1656 der Datei gps.h .

Felddokumentation

doppelte akkumulierte_delta_range_m

Kumulierte Delta-Reichweite seit dem letzten Kanal-Reset in Metern. Ein positiver Wert zeigt an, dass sich der SV vom Empfänger entfernt.

Das Vorzeichen des „akkumulierten Deltabereichs“ und seine Beziehung zum Vorzeichen der „Trägerphase“ ergibt sich aus der Gleichung: akkumulierter Deltabereich = -k * Trägerphase (wobei k eine Konstante ist)

Dieser Wert muss ausgefüllt werden, wenn „Akkumulierter Deltabereichsstatus“ != GPS_ADR_STATE_UNKNOWN. Es wird jedoch erwartet, dass die Daten nur dann korrekt sind, wenn: „akkumulierter Deltabereichsstatus“ == GPS_ADR_STATE_VALID.

Definition in Zeile 1835 der Datei gps.h .

GnssAccumulatedDeltaRangeState academic_delta_range_state

Status des akkumulierten Deltabereichs. Es zeigt an, ob ADR zurückgesetzt ist oder ein Zyklusschlupf vorliegt (was auf einen Verlust der Sperre hinweist).

Dies ist ein obligatorischer Wert.

Definition in Zeile 1821 der Datei gps.h .

doppelte akkumulierte_delta_range_uncertainty_m

1-Sigma-Unsicherheit der akkumulierten Delta-Reichweite in Metern. Dieser Wert muss ausgefüllt werden, wenn „Akkumulierter Deltabereichsstatus“ != GPS_ADR_STATE_UNKNOWN.

Definition in Zeile 1841 der Datei gps.h .

doppeltes c_n0_dbhz

Träger-Rausch-Dichte in dB-Hz, typischerweise im Bereich [0, 63]. Es enthält den gemessenen C/N0-Wert für das Signal am Antennenanschluss.

Dies ist ein obligatorischer Wert.

Definition in Zeile 1778 der Datei gps.h .

int64_t Carrier_cycles

Die Anzahl der vollständigen Trägerzyklen zwischen dem Satelliten und dem Empfänger. Die Referenzfrequenz wird durch das Feld „carrier_frequenz_hz“ angegeben. Hinweise auf mögliche Zyklusverschiebungen und Rücksetzungen bei der Akkumulation dieses Werts können aus den Flags Accumulated_delta_range_state abgeleitet werden.

Wenn die Daten verfügbar sind, müssen „Flags“ GNSS_MEASUREMENT_HAS_CARRIER_CYCLES enthalten.

Definition in Zeile 1861 der Datei gps.h .

Float Carrier_Frequenz_Hz

Trägerfrequenz, mit der Codes und Nachrichten moduliert werden. Sie kann L1 oder L2 sein. Wenn das Feld nicht gesetzt ist, wird angenommen, dass die Trägerfrequenz L1 ist.

Wenn die Daten verfügbar sind, müssen „Flags“ GNSS_MEASUREMENT_HAS_CARRIER_FREQUENCY enthalten.

Definition in Zeile 1850 der Datei gps.h .

doppelte Carrier_Phase

Die vom Empfänger erkannte HF-Phase im Bereich [0,0, 1,0]. Dies ist normalerweise der Bruchteil der vollständigen Trägerphasenmessung.

Die Referenzfrequenz wird durch das Feld „carrier_frequenz_hz“ angegeben. Der Wert enthält die „Trägerphasenunsicherheit“.

Wenn die Daten verfügbar sind, müssen „Flags“ GNSS_MEASUREMENT_HAS_CARRIER_PHASE enthalten.

Definition in Zeile 1873 der Datei gps.h .

doppelte Carrier_phase_uncertainty

1-Sigma-Unsicherheit der Trägerphase. Wenn die Daten verfügbar sind, müssen „Flags“ GNSS_MEASUREMENT_HAS_CARRIER_PHASE_UNCERTAINTY enthalten.

Definition in Zeile 1880 der Datei gps.h .

Definiert die Konstellation des angegebenen SV. Der Wert sollte eine dieser GNSS_CONSTELLATION_*-Konstanten sein

Definition in Zeile 1673 der Datei gps.h .

Eine Reihe von Flags, die die Gültigkeit der Felder in dieser Datenstruktur angeben.

Definition in Zeile 1661 der Datei gps.h .

GnssMultipathIndicator multipath_indicator

Eine Aufzählung, die den „Multipath“-Status des Ereignisses angibt.

Der Multipath-Indikator soll das Vorhandensein überlappender Signale melden, die sich als verzerrte Korrelationsspitzen manifestieren.

  • Wenn eine verzerrte Korrelationsspitzenform vorliegt, melden Sie, dass Multipath GNSS_MULTIPATH_INDICATOR_PRESENT ist.
  • Wenn keine verzerrte Korrelationspeakform vorliegt, melden Sie GNSS_MULTIPATH_INDICATOR_NOT_PRESENT
  • Wenn die Signale zu schwach sind, um diese Informationen zu erkennen, melden Sie GNSS_MULTIPATH_INDICATOR_UNKNOWN

Beispiel: Bei der Durchführung des standardisierten überlappenden Multipath-Leistungstests (3GPP TS 34.171) sollte der Multipath-Indikator GNSS_MULTIPATH_INDICATOR_PRESENT für die Signale melden, die verfolgt werden und Multipath enthalten, und GNSS_MULTIPATH_INDICATOR_NOT_PRESENT für die Signale, die verfolgt werden und keinen Multipath enthalten.

Definition in Zeile 1901 der Datei gps.h .

doppelte pseudorange_rate_mps

Pseudorange-Rate zum Zeitstempel in m/s. Die Korrektur eines bestimmten Pseudorange-Rate-Werts umfasst Korrekturen für Empfänger- und Satellitenuhrfrequenzfehler. Stellen Sie sicher, dass dieses Feld unabhängig ist (siehe Kommentar oben in der GnssMeasurement -Struktur).

Es ist zwingend erforderlich, die „unkorrigierte“ „Pseudorange-Rate“ und auch das „Drift“-Feld von GpsClock anzugeben (Bei der Bereitstellung der unkorrigierten Pseudorange-Rate dürfen die oben beschriebenen Korrekturen nicht angewendet werden.)

Der Wert beinhaltet die „Pseudorange-Rate-Unsicherheit“. Ein positiver „unkorrigierter“ Wert zeigt an, dass sich der SV vom Empfänger entfernt.

Das Vorzeichen der „unkorrigierten“ „Pseudorange-Rate“ und ihre Beziehung zum Vorzeichen der „Doppler-Verschiebung“ ergibt sich aus der Gleichung: Pseudorange-Rate = -k * Doppler-Verschiebung (wobei k eine Konstante ist)

Dies sollte die genaueste verfügbare Pseudorange-Rate sein, basierend auf frischen Signalmessungen von diesem Kanal.

Es ist zwingend erforderlich, dass dieser Wert bei typischer Trägerphasen-PRR-Qualität (wenige cm/s pro Sekunde Unsicherheit oder besser) bereitgestellt wird – wenn die Signale ausreichend stark und stabil sind, z. B. Signale von einem GPS-Simulator bei >= 35 dB-Hz.

Definition in Zeile 1805 der Datei gps.h .

doppelte pseudorange_rate_uncertainty_mps

1-Sigma-Unsicherheit der pseudorange_rate_mps. Die Unsicherheit wird als absoluter (einseitiger) Wert dargestellt.

Dies ist ein obligatorischer Wert.

Definition in Zeile 1813 der Datei gps.h .

int64_t empfangene_sv_time_in_ns

Die zum Messzeitpunkt empfangene GNSS-Wochenzeit in Nanosekunden. Stellen Sie sicher, dass dieses Feld unabhängig ist (siehe Kommentar oben in der GnssMeasurement -Struktur).

Für GPS und QZSS ist dies: Empfangene GPS-Wochenzeit zum Messzeitpunkt in Nanosekunden. Der Wert ist relativ zum Beginn der aktuellen GPS-Woche.

Angesichts des höchsten Synchronisierungsstatus, der pro Satellit erreicht werden kann, kann der gültige Bereich für dieses Feld sein: Suche: [0]: GNSS_MEASUREMENT_STATE_UNKNOWN C/A-Codesperre: [0 1 ms]: GNSS_MEASUREMENT_STATE_CODE_LOCK ist gesetzt Bitsynchronisierung: [0 20 ms] : GNSS_MEASUREMENT_STATE_BIT_SYNC ist eingestellt Subframe-Synchronisierung: [ 0 6s ] : GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC ist gesetzt TOW dekodiert : [ 0 1 Woche ] : GNSS_MEASUREMENT_STATE_TOW_DECODED ist gesetzt

Beachten Sie Folgendes: Wenn Unklarheiten in ganzzahligen Millisekunden bestehen, sollte GNSS_MEASUREMENT_STATE_MSEC_AMBIGUOUS im Feld „Status“ entsprechend festgelegt werden.

Dieser Wert muss ausgefüllt werden, wenn „state“ != GNSS_MEASUREMENT_STATE_UNKNOWN ist.

Für Glonass ist dies: Empfangene Glonass-Tageszeit zum Messzeitpunkt in Nanosekunden.

Angesichts des höchsten Synchronisierungsstatus, der pro Satellit erreicht werden kann, kann der gültige Bereich für dieses Feld sein: Suche: [0]: GNSS_MEASUREMENT_STATE_UNKNOWN C/A-Codesperre: [0 1 ms]: GNSS_MEASUREMENT_STATE_CODE_LOCK ist festgelegt Symbolsynchronisierung: [0 10 ms] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC ist gesetzt Bitsynchronisation: [ 0 20 ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC ist gesetzt Stringsynchronisation : [ 0 2 s ] : GNSS_MEASUREMENT_STATE_GLO_STRING_SYNC ist gesetzt Tageszeit : [ 0 1 Tag ] : GNSS_MEASUREMENT_STATE_GLO_TOD _DECODED ist gesetzt

Für Beidou ist dies: Empfangene Beidou-Wochenzeit zum Messzeitpunkt in Nanosekunden.

Angesichts des höchsten Synchronisierungsstatus, der pro Satellit erreicht werden kann, kann der gültige Bereich für dieses Feld sein: Suche: [ 0 ]: GNSS_MEASUREMENT_STATE_UNKNOWN C/A-Codesperre: [ 0 1 ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK ist gesetzt Bitsynchronisierung (D2): [ 0 2 ms ]: GNSS_MEASUREMENT_STATE_BDS_D2_BIT_SYNC ist gesetzt Bitsynchronisation (D1): [ 0 20 ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC ist gesetzt Subframe (D2): [ 0 0,6 s ] : GNSS_MEASUREMENT_STATE_BDS_D2_SUBFRAME_SYNC ist gesetzt Subframe (D1): [ 0 6s]: GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC ist eingestellt. Uhrzeit von Woche: [0 1 Woche]: GNSS_MEASUREMENT_STATE_TOW_DECODED ist eingestellt

Für Galileo ist dies: Empfangene Galileo-Wochenzeit zum Messzeitpunkt in Nanosekunden.

E1BC Codesperre: [ 0 4 ms ] : GNSS_MEASUREMENT_STATE_GAL_E1BC_CODE_LOCK ist gesetzt. E1C 2. Codesperre: [ 0 100 ms ] : GNSS_MEASUREMENT_STATE_GAL_E1C_2ND_CODE_LOCK ist gesetzt

E1B-Seite: [0 2s]: GNSS_MEASUREMENT_STATE_GAL_E1B_PAGE_SYNC ist eingestellt. Wochenzeit: [0 1 Woche]: GNSS_MEASUREMENT_STATE_TOW_DECODED ist gesetzt

Für SBAS ist dies: Empfangene SBAS-Zeit zum Messzeitpunkt in Nanosekunden.

Angesichts des höchsten Synchronisierungsstatus, der pro Satellit erreicht werden kann, kann der gültige Bereich für dieses Feld sein: Suche: [0]: GNSS_MEASUREMENT_STATE_UNKNOWN C/A-Codesperre: [0 1 ms]: GNSS_MEASUREMENT_STATE_CODE_LOCK ist festgelegt Symbolsynchronisierung: [0 2 ms] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC ist gesetzt. Nachricht: [ 0 1s ] : GNSS_MEASUREMENT_STATE_SBAS_SYNC ist gesetzt

Definition in Zeile 1763 der Datei gps.h .

int64_t empfangen_sv_time_uncertainty_in_ns

1-Sigma-Unsicherheit der empfangenen GPS-Wochenzeit in Nanosekunden.

Dieser Wert muss ausgefüllt werden, wenn „state“ != GPS_MEASUREMENT_STATE_UNKNOWN ist.

Definition in Zeile 1770 der Datei gps.h .

size_t Größe

auf sizeof(GpsMeasurement) setzen

Definition in Zeile 1658 der Datei gps.h .

doppelte snr_db

Signal-Rausch-Verhältnis am Korrelatorausgang in dB. Wenn die Daten verfügbar sind, müssen „Flags“ GNSS_MEASUREMENT_HAS_SNR enthalten. Dies ist das Leistungsverhältnis der „Korrelationsspitzenhöhe über dem beobachteten Grundrauschen“ zum „Rauschen-RMS“.

Definition in Zeile 1909 der Datei gps.h .

Pro Satellitensynchronisierungsstatus. Es stellt den aktuellen Synchronisierungsstatus für den zugehörigen Satelliten dar. Basierend auf dem Synchronisierungsstatus sollte das Feld „Received GPS Tow“ entsprechend interpretiert werden.

Dies ist ein obligatorischer Wert.

Definition in Zeile 1694 der Datei gps.h .

int16_t svid

Satellitenfahrzeug-ID-Nummer, wie in GnssSvInfo::svid definiert. Dies ist ein obligatorischer Wert.

Definition in Zeile 1667 der Datei gps.h .

doppelter time_offset_ns

Zeitversatz, bei dem die Messung durchgeführt wurde, in Nanosekunden. Die Zeit des Referenzempfängers wird durch GpsData::clock::time_ns angegeben und sollte auf die gleiche Weise interpretiert werden wie durch GpsClock::type angegeben.

Das Vorzeichen von time_offset_ns ergibt sich aus der folgenden Gleichung: Messzeit = GpsClock::time_ns + time_offset_ns

Es liefert einen individuellen Zeitstempel für die Messung und ermöglicht eine Genauigkeit im Sub-Nanosekunden-Bereich. Dies ist ein obligatorischer Wert.

Definition in Zeile 1686 der Datei gps.h .


Die Dokumentation für diese Struktur wurde aus der folgenden Datei generiert:
  • hardware/libhardware/include/hardware/ gps.h