Chciałem tylko trochę bardziej szczegółowo opisać, co dzieje się, gdy starsze odbiorniki czekają na dane. Innymi słowy, dlaczego ten almanach (i zapamiętana pozycja) jest tak przydatny?
Sygnały GPS są bardzo słabe. Biorąc pod uwagę odległość, sygnał dociera znacznie poniżej poziomu szumu, gdy dociera do ziemi. Nigdy nie wykryłbyś satelity bezpośrednio, gdybyś po prostu oglądał skan lunety z prawidłową częstotliwością.
Sposób, w jaki odbiornik uzyskuje informacje, polega na porównaniu przychodzącego sygnału z określonym wzorcem (poprzez korelację FFT). Jeśli zastosowany zostanie prawidłowy wzorzec, korelacja zostanie wyrównana, a dane będą widoczne.
Do prostego odbiornika w starym stylu dojście do tego punktu wymaga od korelatora urządzenia dwóch rzeczy: częstotliwości wiadomości z satelity i fazy wiadomości (wyrównania wzorców). Jeśli którykolwiek z nich jest niepoprawny, korelacja kończy się niepowodzeniem i nic nie jest wykrywane. Ruchy satelitów oznaczają, że odbierany sygnał podlega stosunkowo dużym przesunięciom Dopplera.
Po umieszczeniu almanachu i dobrym wyobrażeniu o bieżącej lokalizacji i czasie odbiornik może oszacować względne ruchy satelity i odbiornika, aby usunąć większość przesunięcia Dopplera i zbliżyć się nieco do częstotliwości. Oznacza to, że korelator może zwykle znaleźć trafienie, po prostu wypróbowując różne fazy dla wzorca sygnału. To wyszukiwanie w przestrzeni fazowej można wykonać w ciągu kilku sekund.
Jeśli brakuje almanachu lub nie ma oszacowania aktualnej lokalizacji i czasu, system musi wypróbować różne fazy i różne częstotliwości, aby uzyskać dane z każdego satelity. Teraz, gdy trzeba szukać w dwóch różnych wymiarach, nawet system wielokanałowy może „znaleźć” 3 satelity brutalną siłą.
Nowoczesne chipsety mogą korzystać z dodatkowych sygnałów i wielu równoległych komparatorów, aby przyspieszyć wyszukiwanie, nawet bez obecności A-GPS. Podejrzewam, że chipset, który otrzymujesz na tarczy Arduino, jest prawdopodobnie starszy / tańszy i nie będzie korzystać z tych nowszych funkcji.