Informacje o strukturze GnssClock

Informacje o strukturze GnssClock

#include < gps.h >

Pola danych

size_t  size
 
GnssClockFlags   flags
 
int16_t  leap_second
 
int64_t  time_ns
 
podwójny time_uncertainty_ns
 
int64_t  full_bias_ns
 
podwójny bias_ns
 
podwójny bias_uncertainty_ns
 
podwójny drift_nsps
 
podwójny drift_uncertainty_nsps
 
uint32_t  hw_clock_discontinuity_count
 

Szczegółowy opis

Reprezentuje szacunkowy czas zegara GPS.

Definicja w wierszu 1455 pliku gps.h .

Dokumentacja pola

podwójny bias_ns

Błąd poniżej nanosekundy. Szacowany błąd sumy tego parametru i parametru full_bias_ns to parametr bias_uncertainty_ns.

Jeśli dane są dostępne, flaga „flags” musi zawierać GNSS_CLOCK_HAS_BIAS. czy GPS obliczył pozycję. Ta wartość jest wymagana, jeśli odbiornik ma szacowany czas GPS.

Definicja w wierszu 1534 pliku gps.h .

podwójny błąd bias_uncertainty_ns

Niepewność 1-sigma związana z lokalnym szacunkiem czasu GPS (błąd zegara) w nanosekundach. Niepewność jest reprezentowana jako wartość bezwzględna (jednostronna).

Jeśli dane są dostępne, flaga „flags” musi zawierać GNSS_CLOCK_HAS_BIAS_UNCERTAINTY. Ta wartość jest wymagana, jeśli odbiornik ma szacowany czas GPS.

Definicja w wierszu 1545 pliku gps.h .

podwójny drift_nsps

Odchylenie zegara w nanosekundach (na sekundę).

Dodatnia wartość oznacza, że częstotliwość jest wyższa niż częstotliwość nominalna, a wartość (full_bias_ns + bias_ns) rośnie z czasem.

Wartość zawiera „niepewność dryftu”. Jeśli dane są dostępne, flaga „flags” musi zawierać GNSS_CLOCK_HAS_DRIFT.

Ta wartość jest wymagana, jeśli odbiornik ma szacowany czas GNSS

Definicja w wierszu 1559 pliku gps.h .

podwójny drift_uncertainty_nsps

Niepewność 1-sigma związana z odchyleniem zegara w nanosekundach (na sekundę). Niepewność jest reprezentowana jako wartość bezwzględna (jednostronna).

Jeśli dane są dostępne, flaga „flags” musi zawierać GNSS_CLOCK_HAS_DRIFT_UNCERTAINTY. Jeśli GPS obliczył pozycję, to pole jest wymagane i musi być wypełnione.

Definicja w wierszu 1569 pliku gps.h .

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

Definicja w wierszu 1463 pliku gps.h .

int64_t full_bias_ns

Różnica między zegarem sprzętowym (pole „time”) w odbiorniku GPS a prawdziwym czasem GPS od 0000Z, 6 stycznia 1980 r., w nanosekundach.

Znak wartości jest zdefiniowany za pomocą tej zależności: lokalny szacowany czas GPS = time_ns - (full_bias_ns + bias_ns)

Ta wartość jest wymagana, jeśli odbiornik ma szacowany czas GPS. Jeśli obliczony czas dotyczy konstelacji innej niż GPS, należy zastosować przesunięcie czasowe tej konstelacji względem GPS, aby wypełnić tę wartość. Szacunkowa wartość błędu sumy tego parametru i parametru bias_ns to bias_uncertainty_ns, a wywołujący jest odpowiedzialny za używanie tej wartości niepewności (może ona być bardzo duża przed rozwiązaniem problemu dotyczącego czasu GPS). Jeśli dane są dostępne, flaga „flags” musi zawierać GNSS_CLOCK_HAS_FULL_BIAS.

Definicja w wierszu 1523 pliku gps.h .

uint32_t hw_clock_discontinuity_count

Jeśli w zegarze sprzętowym występują jakiekolwiek przerwy, to pole jest wymagane.

„Przerwa” ma na celu uwzględnienie sytuacji, gdy następuje przejście z jednego źródła czasu na drugie. Pojedynczy oscylator kwarcowy (XO) nie powinien mieć żadnych przerw, dlatego można go ustawić i pozostawić na 0.

Jeśli jednak wartość time_ns (zegar HW) pochodzi z kombinacji źródeł, która nie jest tak płynna jak typowe XO, lub jest w inny sposób zatrzymana i ponowicie uruchomiona, ta wartość powinna być zwiększana za każdym razem, gdy wystąpi przerwa. (na przykład ta wartość może wynosić 0 podczas uruchamiania urządzenia i zwiększać się za każdym razem, gdy nastąpi zmiana ciągłości zegara. W nieprawdopodobnym przypadku, gdy ta wartość osiągnie pełną skalę, wymagane jest przeniesienie (a nie ograniczenie) wartości, tak aby nadal się zmieniała podczas kolejnych zdarzeń przerwania.

Ponieważ ta liczba jest taka sama w przypadku wszystkich raportów GnssClock , można bezpiecznie założyć, że wartość time_ns jest ciągła, np.pochodzi z jednego zegara o wysokiej jakości (np. XO lub lepszego, który jest zwykle używany podczas ciągłego próbkowania sygnału GNSS).

Oczekuje się, że w okresach, w których dostępnych jest niewiele sygnałów GNSS, zegar HW będzie jak najdłużej wolny od przerw, ponieważ zapobiegnie to konieczności używania (marnowania) pomiarów GNSS do pełnego rozwiązywania zadań związanych z błędem i odchyleniem zegara GPS, gdy używa się towarzyszących pomiarów z kolejnych raportów GnssData

Definicja w wierszu 1600 pliku gps.h .

int16_t leap_second

Dane o sekundach przestępnych. Znak wartości jest zdefiniowany za pomocą tego równania: utc_time_ns = time_ns - (full_bias_ns + bias_ns) - leap_second * 1 000 000 000

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

Definicja w wierszu 1473 pliku gps.h .

size_t size

ustaw na sizeof(GnssClock)

Definicja w wierszu 1457 w pliku gps.h .

int64_t time_ns

Wartość zegara wewnętrznego odbiornika GNSS. Jest to wartość zegara sprzętowego.

W przypadku lokalnego zegara sprzętowego wartość ta powinna rosnąć monotonicznie, dopóki zegar jest włączony. (w przypadku zegara HW, który nie jest włączony stale, patrz pole hw_clock_discontinuity_count). Szacunkowy czas GPS odbiornika można uzyskać, odejmując od tej wartości sumę parametrów full_bias_ns i bias_ns (jeśli są dostępne).

Czas GPS jest najlepszym szacunkiem bieżącego czasu GPS, jaki może uzyskać odbiornik GNSS.

Dokładność poniżej nanosekund można uzyskać za pomocą pola „bias_ns”. Wartość zawiera „niepewność czasu”.

To pole jest wymagane.

Definicja w wierszu 1494 pliku gps.h .

podwójny time_uncertainty_ns

Niepewność 1-sigma związana z czasem zegara w nanosekundach. Niepewność jest reprezentowana jako wartość bezwzględna (jednostronna).

Jeśli dane są dostępne, w elementach „flags” musi być podany parametr GNSS_CLOCK_HAS_TIME_UNCERTAINTY. Ta wartość jest w istocie równa zeru (jest to odniesienie do zegara lokalnego, według którego mierzone są wszystkie inne czasy i niepewności czasowe). (W związku z tym to pole może nie być określone zgodnie z flagą GNSS_CLOCK_HAS_TIME_UNCERTAINTY lub może być określone i ustawione na 0).

Definicja w wierszu 1506 w pliku gps.h .


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