Od dwóch miesięcy po Łodzi jeżdżą autobusy z komputerami do sprzedaży biletów, które na razie służą tylko do oglądania. […] Do dziś one nie działają, choć cały czas jeżdżą po mieście w autobusach.” – napisał kilka dni temu łódzki dodatek regionalny Gazety Wyborczej. – „Jak dowiedzieliśmy się w MPK, błąd polega na tym, że komputery współdziałają z systemem GPS, który na terenie Łodzi jest za mało powszechny„. Korzystając zatem z okazji, publikujemy krótki artykuł o tym, jak działa GPS. Wszystkich, którzy jeszcze tego nie wiedzą (z panem rzecznikiem łódzkiego MPK na czele), zapraszamy do lektury… :-)

Wyobraź sobie, że masz mapę i cyrkiel, jesteś gdzieś w Polsce, ale kompletnie się zgubiłeś i nie masz pojęcia, gdzie. W takich sytuacjach dobrym pomysłem bywa zapytanie pierwszego napotkanego przechodnia. „Jesteś jakieś 130 km od Warszawy” – mogłaby brzmieć odpowiedź. Niby niewiele, ale zawsze coś – wiesz więc już, że jesteś gdzieś na okręgu, którego środek leży w Warszawie, a promień wynosi 130 km. Zapytaj więc kolejnego przechodnia. „Stąd do Lublina jest jakieś 300 km” – brzmi odpowiedź. To już coś – masz dwa punkty do wyboru, jeden w Łodzi, drugi gdzieś koło Ostrołęki… ale dla pewności zapytaj jeszcze kogoś. „Jesteśmy ok. 400 km od Suwałk” – odpowiada. I wszystko jasne. Jesteś w Łodzi. Udało się wybrnąć z na pozór beznadziejnej sytuacji.

Od idei nawigacji przy użyciu mapy i cyrkla do idei funkcjonowania systemu GPS jest już całkiem blisko. Mamy wiele cyrkli – są nimi 24 satelity krążące wokół Ziemi po orbitach nachylonych do płaszczyzny równika pod kątem 55 stopni. Satelity krążą na wysokości ok. 20 tys. km, przez co są widoczne prawie z dowolnego punktu na Ziemi (jedynie na obszarach okołobiegunowych nie da się używać GPSu). Zamiast papierowej mapy trzymamy w ręku odbiornik GPS (który, nota bene, bywa wyposażony w mapę cyfrową).

Każdy satelita nadaje cyklicznie (na częstotliwości 1575,42 MHz) ramkę informacji nawigacyjnej. Najważniejszą informacją zawartą w ramce są elementy orbity tegoż satelity oraz jego dane statusowe. Na podstawie tych informacji oraz aktualnego czasu nasz odbiornik może obliczyć aktualne położenie satelity w przestrzeni.

Konstelacja satelitów GPS została tak pomyślana, aby w każdym punkcie pokrytego zasięgiem obszaru kuli ziemskiej stale widoczne były co najmniej 4 satelity. Dzięki temu odbiornik może przeprowadzić procedurę zbliżoną do tej, którą przeprowadziliśmy wcześniej, odpytując przechodniów o odległości do różnych miast.

Pomiar odległości od jednego satelity pozwala umieścić odbiornik na powierzchni sfery o zadanym środku i promieniu. Drugi pomiar (tym razem od innego satelity) zawęża zbiór możliwych lokalizacji do okręgu, a trzeci – do dwóch punktów. Na tym procedurę można by zakończyć – w ogromnej większości przypadków jeden z punktów leży na tak absurdalnie dużej wysokości, że można go wykluczyć bez wykonywania czwartego pomiaru.

Jednak odbiornik wykonuje czwarty pomiar, ale jego cel jest inny. Otóż aby hipotetyczne sfery wyznaczone przez odległości od satelitów wyznaczyły nam dokładnie jeden punkt, wymagane jest, aby zegar odbiornika był idealnie zsynchronizowany z wzorcem czasowym (zegarem atomowym) umieszczonym na satelicie. W praktyce warunek ten nigdy nie jest spełniony – mało kto miałby ochotę wozić ze sobą zegar atomowy, aby synchronizować odbiornik. Mamy więc cztery niewiadome – nasze współrzędne w kartezjańskim układzie trójwymiarowym oraz odchyłka zegara od czasu wzorcowego. Potrzebujemy więc układu co najmniej czterech równań, czyli musimy wykonać co najmniej cztery pomiary. Efektem ubocznym jest to, że nasz odbiornik może ustawić dokładnie swój zegar i oprócz swojej lokalizacji będziemy też znać aktualny czas.

Każdy, kogo lektura niniejszego tekstu jeszcze nie zmęczyła, zadałby w tym miejscu pytanie, jak właściwie mierzyć te ogromne odległości, które dzielą nas od satelitów?

Wielkością, którą potrafimy mierzyć najdokładniej ze wszystkich, jest czas. Idealnym sposobem pomiaru dowolnej wielkości fizycznej jest więc sprowadzenie go do pomiaru czasu. Naturalnym sposobem powiązania czasu z odległością jest użycie prędkości światła – stałej, którą znamy z bardzo dużą dokładnością. Aby zmierzyć odległość od satelity, nasz odbiornik musi więc określić czas, którego fala elektromagnetyczna nadawana przez satelitę GPS potrzebuje na pokonanie odległości między satelitą a anteną odbiornika.

Ale jak określić, w którym dokładnie momencie satelita wysłał do nas paczkę danych?

Jest to możliwe dzięki użytej w systemie GPS techniki kodowania przesyłanej informacji. Wraz z danymi nawigacyjnymi satelita nadaje pseudolosową sekwencję bitów (tzw. kod C/A – Coarse Aquisition), która powtarza się cyklicznie co 1 milisekundę. Algorytm generacji sekwencji jest znany odbiornikowi, ponadto odbiornik „wie”, że początek sekwencji miał miejsce 6 stycznia 1980 roku o godzinie 0:00 czasu uniwersalnego. Sekwencja ta może więc zostać wygenerowana w odbiorniku. Równocześnie odbiornik odbiera sekwencję pseudolosową nadaną przez satelitę i porównuje ją z sekwencją generowaną lokalnie. Wyznaczając przesunięcie czasowe między sekwencjami, odbiornik jest w stanie określić, ile czasu potrzebował sygnał radiowy nadany przez satelitę, aby dotrzeć na Ziemię. Voila! Wiemy, jak daleko jest satelita!

Należałoby właściwie powiedzieć „wiedzielibyśmy”, a to z dwóch powodów. Pierwszy to wspomniany już wcześniej brak synchronizacji między zegarem odbiornika a zegarem satelity, jednak wartość błędu wynikającego z tego faktu jest taka sama dla wszystkich pomiarów i można ją dzięki temu łatwo poprawić w omówiony powyżej sposób, tj. wykonując pomiary odległości od czterech satelitów zamiast od trzech. Uważny czytelnik dostrzeże także drugi problem, który wynika z faktu, iż sekwencja pseudolosowa trwa tylko 1 ms, a zatem jej długość w przestrzeni wynosi 300 km (taką odległość przebywa fala elektromagnetyczna w czasie 1 ms). Zatem wynik każdego pomiaru będzie się zawierał w przedziale 0-300 km i będzie się różnił od odległości faktycznej o nieznaną wielokrotność 300 km. Odbiornik może jednak wyznaczyć tę wielokrotność, opierając się o dodatkowe dane przesyłane przez satelitę i minimalizując wartość błędu wyznaczenia pozycji.

Proste? Nie, bardzo skomplikowane. Niniejszy tekst dotyka zaledwie wierzchołka góry lodowej. GPS umożliwia uzyskanie w cywilnych zastosowaniach dokładności rzędu pojedynczych metrów, a to wymaga wielu dodatkowych zabiegów. Trzeba uwzględnić efekt relatywistyczny, efekt Dopplera, wprowadzać poprawki na propagację fal elektromagnetycznych w jonosferze, bardzo dokładnie mierzyć i korygować orbity satelitów oraz utrzymywać synchronizację czasu w obrębie konstelacji z dokładnością do pojedynczych nanosekund! Jednak system od początku był przeznaczony do zastosowań wojskowych, przez co cechuje się bardzo wysoką niezawodnością – działa zawsze i (prawie) wszędzie. Nawet w Łodzi, mimo że jest tam „mało powszechny” :-)

Autor

Tomasz Lemiech

  • Super Ghost

    — „oraz utrzymywać synchronizację czasu w obrębie konstelacji z dokładnością do pojedynczych nanosekund!”
    o fajnie… nie wiedzialem.. :) a jak to jest w ogule odmierzane?? 😛 😀

  • Ciekawski

    Mniam — Doskonały artykuł. Czyta się doskonale i bym się nie bał jeszcze bardziej zagłębić w techniczne aspekty funkcjonowania systemu. Może kiedyś Autor doda suplement? :)

    • Szpajder

      Czemu nie? :) — Dziękuję za miłe słowa. Specjalnie pominąłem wiele detali, o których chciałem w pierwszej chwili napisać. Wolałem jednak, żeby tekst pozostał zrozumiały dla kogoś, kto nic jeszcze nie wie na temat teorii działania GPSu. Lepiej nie odstraszać czytelnika, zanim doczyta do połowy. Oczywiście suplement mogę napisać – jak się kiedyś zbiorę, nie omieszkam :)

      • peeles

        Dzięki za artykuł :) — Artykuł naprawdę ciekawy :) Zawsze mnie to ciekawiło ale jakoś nie miałem okazji poczytać o tym. No i dołączam się do prośby o ciąg dalszy :)

        O tym czwartym satelicie jest troche niejasne, pisze że służy on do synchronizacji czasu, ale przecież wszystkie satelity nadają czas, więc co on robi dodatkowo?

        I jak się ma GPS do Galileo? Z tego co wiem będzie więcej satelitów i będą wyżej, czyli będzie ich więcej widać jednocześnie. Ma to na celu tylko lepszą dokłądność, czy coś jeszcze?. Zasada działania będzie taka sama, czy może będą to prostsze i tańsze satelity, ale za to będzie ich więcej?

        Ehh, trzeba iść pogoglać :)

      • Maciek

        Myślę, że panowie z MPK… — Myślę, że panowie z MPK i tak do połowy raczej nie doczytali… Wprawdzie Hawking napisał w „Krótkiej historii czasu” że każdy umieszczony wzór zmniejsza liczbę czytelników o połowę, jednak z chęcią dowiedziałbym się więcej na ten temat, łącznie z technicznymi szczegółami (i wzorami :-) Także czekam na obiecany suplement

  • andrzej

    szóstka z plusem — Szóstka z plusem za ten wątek, Czekam na dalszy ciąg (obiecany).

  • Anonymous

    ?? — GPS podobno ma wprowadzony matemaatyczny błąd odległość (szłyszałem ze tylko wojskowe i lotnicze są super dokładne)??

    • Jakub Skowron

      To prawda — Satelity specjalnie wysyłają sygnały nie do końca dokładne, tzn. dodają lub odejmują chwilkę (zdaje mi się, że te zmiany są obliczane na podstawie pewnego tylko im znanego algorytmu) przez co pomiar czsu nie jest dokładny. Natomiast GPS-y wojskowe znają te „poprawki” w wysyłanych sygnałach, więc znają lepiej położenie.

      Można powiedzieć, że system GPS jest zagłuszany przez jego operatorów.

      • Szpajder

        To nieprawda — A właściwie była to prawda – do 1 maja 2000. Funkcja SA (Selective Availability), o której piszesz, została wówczas wyłączona, przez co błąd określenia pozycji przez cywilne odbiorniki zmalał poniżej 20 metrów (wcześniej mógł sięgać nawet 100 metrów). Polecam lekturę http://www.ngs.noaa.gov/FGCS/info/sans_SA/ .

  • Michał M.

    System w Łodzi już działa — Chciałem tylko powiedzieć, że automaty do sprzedaży biletów działają już poprawnie… chyba poprawnie – ja mam migawkę i nie kupuję biletów 😉 MPK oficjalnie nie powiedziało, co było rzeczywistą przyczyną problemów sprzed kilku miesięcy. Być może artyjkuł Tomka wpłynął na wygodę pasażerów :)

    pozdrawiam

    • KolegaX

      KolegaX — Michał M. napisał:
      > Chciałem tylko powiedzieć, że automaty do sprzedaży biletów działają
      > już poprawnie… chyba poprawnie – ja mam migawkę i nie kupuję
      > biletów 😉

      Pozwól Michale, że dla „obcokrajowców” przetłumaczę, że „migawka” to bilet miesięczny w plastikowej oprawce, którym miga sie przed oczami „kanara” polujacego na tych, którzy nie kasują biletów jednorazowych (też miałem problemy z terminologią). Chyba to się nie zmieniło?.

      > MPK oficjalnie nie powiedziało, co było rzeczywistą
      > przyczyną problemów sprzed kilku miesięcy. Być może artyjkuł Tomka
      > wpłynął na wygodę pasażerów :)

      MPK to „tramwajarnia”.
      Sorka za te wcinki (ale mnie nie rozumieli, gdy używałej naszej terminologii MPK-owskiej. Czy wyobrazisz sobie, np. że we Wszechświecie nie rozumieją słowa „pętla”?!!)

      A swoją drogą, to już mnie wkurza to, że wszelkie „problemy życiowe” najlepiej opisuje się na przykładzie Łodzi. No bo oczywiście fajnie jest jak ktoś jest niedorozwinięty (kasjer w MPK nie zna zasady działana GPS, naprawdę idiota jakiś, he, he), bo wówczas jak bosko i inteligentnie na tym tle my wypadamy …! Sczególnie w Stolicy!
      >
      > pozdrawiam,

      I ja takoż

  • Tomek S.

    Pytanie do specjalistow — Jako fizyk wiem, ze efekty STW i OTW trzeba wziac pod uwage przy synchronizacji czasu systemu GPS. Czy mozecie mi powiedziec jaka poprawka do mojej pozycji jest wnoszona dzieki tym efektom. Tzn. gdyby nie uwzglednic STW i OTW to o ile roznilaby sie moja pozycja od prawdziwej?

    Dzieki…
    Mysle, ze artykul powinien przeczytac M.C. :)

    Pozdrowienia,
    Tomek S.