Odwołania do typu danych GnssMeasurement

Odwołania do typu danych GnssMeasurement

#include < gps.h >

Pola danych

size_t  size
 
GnssMeasurementFlags   flags
 
int16_t  svid
 
GnssConstellationType   constellation
 
podwójny time_offset_ns
 
GnssMeasurementState   state
 
int64_t  received_sv_time_in_ns
 
int64_t  received_sv_time_uncertainty_in_ns
 
podwójny c_n0_dbhz
 
podwójny pseudorange_rate_mps
 
podwójny pseudorange_rate_uncertainty_mps
 
GnssAccumulatedDeltaRangeState   accumulated_delta_range_state
 
podwójny accumulated_delta_range_m
 
podwójny accumulated_delta_range_uncertainty_m
 
liczba zmiennoprzecinkowa carrier_frequency_hz
 
int64_t  carrier_cycles
 
podwójny carrier_phase
 
podwójny carrier_phase_uncertainty
 
GnssMultipathIndicator   multipath_indicator
 
podwójny snr_db
 

Szczegółowy opis

Reprezentuje pomiar GNSS. Zawiera informacje nieprzetworzone i przetworzone.

Niezależność – wszystkie informacje o pomiarach sygnału (np. sv_time, pseudorange_rate, multipath_indicator) zgłaszane w tym typie danych powinny być oparte wyłącznie na pomiarach sygnału GNSS. Nie wolno syntetyzować pomiarów przez obliczanie lub raportowanie oczekiwanych pomiarów na podstawie znanej lub oszacowanej pozycji, prędkości lub czasu.

Definicja w wierszu 1656 pliku gps.h .

Dokumentacja pola

double accumulated_delta_range_m

Zbiorzony zakres delty od ostatniego resetowania kanału w metrach. Wartość dodatnia wskazuje, że SV oddala się od odbiornika.

Znak „skumulowanego zakresu delty” i jego związek ze znakiem „fazy nośnika” są podane w równaniu: skumulowany zakres delty = -k * faza nośnika (gdzie k jest stałą)

Ta wartość musi być wypełniona, jeśli „accumulated delta range state” != GPS_ADR_STATE_UNKNOWN. Należy jednak pamiętać, że dane są prawidłowe tylko wtedy, gdy „accumulated delta range state” = GPS_ADR_STATE_VALID.

Definicja w wierszu 1835 pliku gps.h .

GnssAccumulatedDeltaRangeState accumulated_delta_range_state

Stan skumulowanego zakresu delta. Wskazuje, czy ADR został zresetowany, czy wystąpiło przesunięcie cyklu (co oznacza utratę blokady).

Ta wartość jest wymagana.

Definicja w wierszu 1821 pliku gps.h .

podwójna dokładność accumulated_delta_range_uncertainty_m

Niepewność 1-sigma skumulowanego zakresu delty w metrach. Ta wartość musi być wypełniona, jeśli „accumulated delta range state” != GPS_ADR_STATE_UNKNOWN.

Definicja w wierszu 1841 pliku gps.h .

podwójny c_n0_dbhz

Współczynnik gęstości sygnału w dB-Hz, zwykle w zakresie [0, 63]. Zawiera zmierzoną wartość C/N0 sygnału na porcie anteny.

Ta wartość jest wymagana.

Definicja w wierszu 1778 pliku gps.h .

int64_t carrier_cycles

Liczba pełnych cykli nośnych między satelitą a odbiornikiem. Częstotliwość odniesienia jest podana w polu „carrier_frequency_hz”. Możliwe przesunięcia i resety cyklu w zbiorze tej wartości można wywnioskować z flag accumulated_delta_range_state.

Jeśli dane są dostępne, flaga „flags” musi zawierać GNSS_MEASUREMENT_HAS_CARRIER_CYCLES.

Definicja w wierszu 1861 pliku gps.h .

float carrier_frequency_hz

Częstotliwość operatora, z jaką kody i wiadomości są modulowane, może być L1 lub L2. Jeśli pole nie jest skonfigurowane, zakłada się, że częstotliwość nośnika to L1.

Jeśli dane są dostępne, flaga „flags” musi zawierać GNSS_MEASUREMENT_HAS_CARRIER_FREQUENCY.

Definicja w wierszu 1850 pliku gps.h .

podwójny carrier_phase

Faza RF wykrywana przez odbiornik, w zakresie [0,0, 1,0]. Jest to zwykle część ułamkowa pełnego pomiaru fazy nośnej.

Częstotliwość odniesienia jest podana w polu „carrier_frequency_hz”. Wartość zawiera „niepewność fazy nośnika”.

Jeśli dane są dostępne, w elementach „flags” musi być obecny element GNSS_MEASUREMENT_HAS_CARRIER_PHASE.

Definicja w wierszu 1873 pliku gps.h .

podwójna carrier_phase_uncertainty

Niepewność 1-sigma fazy nośnika. Jeśli dane są dostępne, w elementach „flags” musi być podany parametr GNSS_MEASUREMENT_HAS_CARRIER_PHASE_UNCERTAINTY.

Definicja w wierszu 1880 pliku gps.h .

Definiuje konstelację danego satelity. Wartość powinna być jedną z tych stałych GNSS_CONSTELLATION_*

Definicja w wierszu 1673 pliku gps.h .

Zestaw flag wskazujących poprawność pól w tej strukturze danych.

Definicja w wierszu 1661 pliku gps.h .

GnssMultipathIndicator multipath_indicator

Wyliczenie wskazujące stan „wielokrotnej ścieżki” zdarzenia.

Wskaźnik wielościeżkowy ma na celu zgłaszanie obecności nakładających się sygnałów, które manifestują się jako zniekształcone szczyty korelacji.

  • jeśli kształt szczytu korelacji jest zniekształcony, zgłoś, że wielościeżka to GNSS_MULTIPATH_INDICATOR_PRESENT.
  • jeśli nie ma zniekształconego kształtu szczytu korelacji, zgłoś GNSS_MULTIPATH_INDICATOR_NOT_PRESENT
  • Jeśli sygnały są zbyt słabe, aby rozróżnić te informacje, użyj parametru GNSS_MULTIPATH_INDICATOR_UNKNOWN.

Przykład: podczas przeprowadzania standaryzowanego testu wydajności wielościeżkowej z nakładaniem (3GPP TS 34.171) wskaźnik wielościeżkowy powinien zwracać GNSS_MULTIPATH_INDICATOR_PRESENT w przypadku sygnałów, które są śledzone i zawierają informacje o wielościeżkowej ścieżce, oraz GNSS_MULTIPATH_INDICATOR_NOT_PRESENT w przypadku sygnałów, które są śledzone, ale nie zawierają informacji o wielościeżkowej ścieżce.

Definicja w wierszu 1901 pliku gps.h .

podwójna pseudorange_rate_mps

Szybkość pseudozakresu w sygnaturze czasowej w m/s. Korekta danej wartości współczynnika pseudozakresu obejmuje korekty błędów częstotliwości zegara odbiornika i satelity. Upewnij się, że to pole jest niezależne (patrz komentarz na szczycie typu GnssMeasurement struct).

Należy podać „nieskorygowaną” „pseudoszybkość” oraz pole „drift” ( GpsClock)) (gdy podajesz nieskorygowaną pseudoszybkość, nie stosuj korekt opisanych powyżej).

Wartość zawiera „niepewność szybkości pseudozakresu”. Dodatnia wartość „uncorrected” wskazuje, że SV oddala się od odbiornika.

Znak „nieskorygowanej” „pseudoszybkości” i jej związek ze znakiem „zmiany Dopplera” jest określony przez równanie: pseudoszybkość = -k * zmiana Dopplera (gdzie k to stała)

Powinien to być najbardziej dokładny dostępny współczynnik pseudozakresu, oparty na aktualnych pomiarach sygnału z tego kanału.

Wartość ta musi być podawana w ramach typowej jakości PRR fazy nośnej (kilka cm/s na sekundę niepewności lub lepiej) – gdy sygnały są wystarczająco silne i stabilne, np. sygnały z symulacji GPS o wartości >= 35 dB-Hz.

Definicja w wierszu 1805 pliku gps.h .

podwójna pseudorange_rate_uncertainty_mps

Niepewność 1-sigma dla pseudorange_rate_mps. Niepewność jest reprezentowana jako wartość bezwzględna (jednostronna).

Ta wartość jest wymagana.

Definicja w wierszu 1813 pliku gps.h .

int64_t received_sv_time_in_ns

Odebrany sygnał GNSS Time-of-Week w momencie pomiaru (w nanosekundach). Upewnij się, że to pole jest niezależne (patrz komentarz na szczycie typu GnssMeasurement struct).

W przypadku GPS i QZSS: Odebrany czas GPS w godzinie pomiaru w nanosekundach. Wartość jest podana względem początku bieżącego tygodnia GPS.

Biorąc pod uwagę najwyższy stan synchronizacji, który można osiągnąć dla każdego satelity, prawidłowy zakres tego pola może być następujący: Szukanie : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN Blokada kodu C/A : [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK jest ustawiona Bitowa synchronizacja : [ 0 20ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC jest ustawiona Synchronizacja podramkowa : [ 0 6s ] : GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC jest ustawiona TOW dekodowane : [ 0 1week ] : GNSS_MEASUREMENT_STATE_TOW_DECODED jest ustawiona

Uwaga: jeśli w przypadku liczby całkowitej w milisekundach występuje niejednoznaczność, w polu „state” należy odpowiednio ustawić parametr GNSS_MEASUREMENT_STATE_MSEC_AMBIGUOUS.

Ta wartość musi być wypełniona, jeśli „state” != GNSS_MEASUREMENT_STATE_UNKNOWN.

W przypadku Glonass: Odebrany czas Glonass w czasie pomiaru w nanosekundach.

Biorąc pod uwagę najwyższy stan synchronizacji, który można osiągnąć dla każdego satelity, prawidłowy zakres tego pola może być następujący: Szukanie : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN Blokada kodu C/A : [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK jest ustawiona Synchronizacja symboli : [ 0 10ms ] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC jest ustawiona Synchronizacja bitów : [ 0 20ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC jest ustawiona Synchronizacja ciągu znaków : [ 0 2s ] : GNSS_MEASUREMENT_STATE_GLO_STRING_SYNC jest ustawiona Czas lokalny : [ 0 1day ] : GNSS_MEASUREMENT_STATE_GLO_TOD_DECODED jest ustawiona

W przypadku Beidou: Odbierany czas tygodnia Beidou w czasie pomiaru w nanosekundach.

Biorąc pod uwagę najwyższy stan synchronizacji, który można osiągnąć dla każdego satelity, prawidłowy zakres dla tego pola może być następujący: Szukanie : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN Blokowanie kodu C/A: [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK jest ustawione Bitowa synchronizacja (D2): [ 0 2ms ] : GNSS_MEASUREMENT_STATE_BDS_D2_BIT_SYNC jest ustawione Bitowa synchronizacja (D1): [ 0 20ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC jest ustawione Subframe (D2): [ 0 0.6s ] : GNSS_MEASUREMENT_STATE_BDS_D2_SUBFRAME_SYNC jest ustawione Subframe (D1): [ 0 6s ] : GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC jest ustawione Czas tygodnia : [ 0 1week ] : GNSS_MEASUREMENT_STATE_TOW_DECODED jest ustawione

W przypadku Galileo: Odebrany czas tygodnia Galileo w czasie pomiaru w nanosekundach.

Blokada kodu E1BC : [ 0 4ms ] : GNSS_MEASUREMENT_STATE_GAL_E1BC_CODE_LOCK jest ustawiona Blokada 2. kodu E1C: [ 0 100ms ] : GNSS_MEASUREMENT_STATE_GAL_E1C_2ND_CODE_LOCK jest ustawiona

Strona E1B : [0 2 s ] : ustawiono GNSS_MEASUREMENT_STATE_GAL_E1B_PAGE_SYNC. Dzień tygodnia: [0 1 tydzień ] : ustawiono GNSS_MEASUREMENT_STATE_TOW_DECODED.

W przypadku SBAS: Odebrany czas SBAS w czasie pomiaru w nanosekundach.

Biorąc pod uwagę najwyższy stan synchronizacji, który można osiągnąć dla każdego satelity, prawidłowy zakres tego pola może być następujący: Szukanie : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN Blokada kodu C/A: [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK jest ustawiona Synchronizacja symboli : [ 0 2ms ] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC jest ustawiona Wiadomość : [ 0 1s ] : GNSS_MEASUREMENT_STATE_SBAS_SYNC jest ustawiona

Definicja w wierszu 1763 pliku gps.h .

int64_t received_sv_time_uncertainty_in_ns

Niepewność 1-sigma otrzymanego czasu tygodnia GPS w nanosekundach.

Ta wartość musi być wypełniona, jeśli „state” != GPS_MEASUREMENT_STATE_UNKNOWN.

Definicja w wierszu 1770 pliku gps.h .

size_t size

ustaw na sizeof(GpsMeasurement)

Definicja w wierszu 1658 pliku gps.h .

podwójna snr_db

Stosunek sygnału do szumu na wyjściu korelatora w dB. Jeśli dane są dostępne, w elementach „flags” musi być podany parametr GNSS_MEASUREMENT_HAS_SNR. Jest to stosunek mocy „wysokość szczytu korelacji ponad obserwowany szum” do „szum RMS”.

Definicja w wierszu 1909 pliku gps.h .

Stan synchronizacji na poszczególne satelity. Reprezentuje bieżący stan synchronizacji powiązanego satelity. W zależności od stanu synchronizacji należy odpowiednio interpretować pole „received GPS tow”.

Ta wartość jest wymagana.

Definicja w wierszu 1694 pliku gps.h .

int16_t svid

Numer identyfikacyjny satelity, zdefiniowany w  GnssSvInfo::svid Jest to wartość obowiązkowa.

Definicja w wierszu 1667 pliku gps.h .

double time_offset_ns

Odchylenie czasowe, w którym dokonano pomiaru, w nanosekundach. Czas odbiornika referencyjnego jest określony przez GpsData::clock::time_ns i powinien być interpretowany w taki sam sposób jak wskazany przez GpsClock::type .

Znak wartości time_offset_ns jest określony przez tę zależność: czas pomiaru = GpsClock::time_ns + time_offset_ns

Zapewnia on indywidualny znacznik czasu dla pomiaru i pozwala na dokładność do nanosekund. Ta wartość jest wymagana.

Definicja w wierszu 1686 pliku gps.h .


Dokumentacja tego typu danych została wygenerowana z tego pliku:
  • hardware/libhardware/include/hardware/ gps.h