Jak podłączyć odbiornik GPS?

60

Chciałbym podłączyć odbiornik GPS do mojego Pi, aby móc:

  1. Uzyskaj moje położenie geograficzne
  2. Synchronizuj zegar, gdy nie jest podłączony do sieci

Jakie są moje opcje? Czy sprzęt obsługiwany przez GPS będzie współpracował z Pi?

Maria Zverina
źródło
3
Brzmi niesamowicie!
Alex Chamberlain,
Ten odbiornik GPS wygląda na dobrą opcję, ale musiałbym się z nim bawić, aby uzyskać przyzwoitą odpowiedź. Działa przy 3V3 i 75mA, co jest dobrym początkiem!
Alex Chamberlain,
1
Właśnie napisałem odpowiedź na temat GPS, ponieważ nie zauważyłem tego w pytaniu. Nie! Do Twojej wiadomości, oto strona gpsd: catb.org/gpsd/index.html, która da informacje na temat uzyskiwania informacji o czasie i lokalizacji od strony oprogramowania.
Winwaed
Możesz także użyć urządzenia GPS Bluetooth, dzięki czemu możesz ustawić je w najlepszej pozycji (np. W pobliżu okna), chociaż wymaga ono osobnego źródła zasilania. Urządzenia GPS mówiące NMEA 0183 działają z gpsd i są dość standardowe, więc może uda ci się znaleźć używany. Bluetooth na RPi powinien również działać z większością kluczy sprzętowych Bluetooth.
elmicha
Moja nagroda zostanie przyznana za odpowiedź, która zawiera schemat sprzętowy i przykłady oprogramowania do ustawiania zegara i wyświetlania położenia geograficznego.
Alex Chamberlain,

Odpowiedzi:

42

Odbiornik GPS

Wybrałbym ogólny odbiornik GPS USB, taki jak BU-353

BU-353

Działa z Raspberry Pi, podobnie jak normalny komputer z systemem Linux.

Większość odbiorników GPS USB to po prostu adaptery USB-Serial, które odczytują dane NMEA z odbiornika GPS. Spójrz na sterowniki PL2303 (wiele jednostek, które widziałem używają tego konkretnego układu), powinny być dostępne.

Możesz także użyć GPIO i tradycyjnego odbiornika GPS NMEA 0183, ale wtedy musisz się martwić o moc, a ceny są często wyższe. Anteny GPS są powszechne na pokładzie łodzi i statków i zwykle zużywają 12 V.

Rozwiązanie USB jest tańsze.

Oprogramowanie

Wspomniany odbiornik GPS jest zgodny z gpsd .

sudo apt-get install gpsd gpsd-clients python-gps

Spowoduje to zainstalowanie gpsd i powiązanego oprogramowania. Sprawdź status GPS za pomocą cgps -s.

Zegar NTP

Aby zsynchronizować zegar z NTP , musisz zainstalować NTTP.

sudo apt-get install ntp

Zobacz ten post na blogu: http://blog.retep.org/2012/06/18/getting-gps-to-work-on-a-raspberry-pi/ . Obejmuje szczegółowo ntp.

Ragnar123
źródło
4
Ten post na blogu jest świetny.
Jivings,
2
Mogę potwierdzić, że BU-353 współpracuje z pi
pufferfish
Czy ntp pobiera czas z modułu GPS, gdy nie jest podłączony do Internetu?
Dimme,
to zajmie twój jeden port USB ....
Ruthvik Vaila
1
@JohnDemetriou Zależy od przypadku użycia. Precyzyjny zegar może odróżnić poprawne i niepoprawne znaczniki czasu - jeśli sumujesz z wielu czujników z ich własnym zegarem, możesz na przykład uzyskać niewłaściwą kolejność zdarzeń, jeśli zegary się różnią.
Ragnar123
6

Przydatny moduł GPS do samouczka Raspberry Pi !

alex
źródło
1
Chciałbym zobaczyć, jak tego rodzaju samouczek się replikuje ... blogi zawsze znikają ....
Maria Zverina,
Przesłuchanie ze względu na to, że odpowiedź jest tylko linkiem
John Demetriou
5

Spójrz na ostateczny GPS adafruita

Ma wszystko, czego chcesz i więcej:

Czułość -165 dBm, aktualizacje 10 Hz,
przyjazna dla 66 kanałów konstrukcja 5 V i pobór prądu tylko 20 mA
Przyjazny dla Breadboard + dwa otwory montażowe Kompatybilny z baterią RTC
Wbudowana rejestracja Wyjście PPS na
stałej wysokości> 25 km
Wewnętrzna antena łatowa + złącze u.FL dla zewnętrznego aktywna antena
LED statusu naprawy

… Wszystko za mniej niż 40 $!

Guntis
źródło
4

Jeśli nie chcesz korzystać z USB, możesz użyć odbiorników GPS TTL . Sparkfun ma bardzo szybki 50-kanałowy odbiornik GPS, ale możesz znaleźć inne na eBayu lub innych stronach.

Można tego użyć, wyłączając konsolę szeregową na P i i podłączając odbiornik bezpośrednio do pinów UART.

wprowadź opis zdjęcia tutaj

* Pamiętaj o sprawdzeniu napięć używanego urządzenia GPS

Piotr Kula
źródło
2
Jeśli nie chcesz obniżać napięcia (ponieważ te moduły prawie zawsze mają logikę 5 V), możesz podłączyć je do adaptera TTL na USB, a stroną USB do Pi. Oszczędza to konsolę szeregową (dla nas, którzy ją kochamy) i omija dzielnik napięcia lub przetwornik poziomu.
Patrick Cook,