Wie bringe ich einen GPS-Empfänger an?


60

Ich möchte einen GPS-Empfänger an meinen Pi anschließen, damit ich:

  1. Holen Sie sich meine geografische Position
  2. Synchronisieren Sie die Uhr, wenn keine Verbindung zum Netzwerk besteht

Welche Möglichkeiten habe ich? Funktioniert von gpsd unterstützte Hardware mit dem Pi?


3
Das klingt großartig!
Alex Chamberlain

Dieser GPS-Empfänger scheint eine gute Option zu sein, aber ich müsste ein wenig damit spielen, um eine anständige Antwort zu finden. Es läuft mit 3V3 und 75mA, was ein guter Anfang ist!
Alex Chamberlain

1
Habe gerade eine Antwort über gpsd geschrieben, da ich es in der Frage nicht bemerkt habe. D'oh! Zu Ihrer Information , hier ist die gpsd-Site: catb.org/gpsd/index.html, die Informationen zum Abrufen der Zeit- und Ortsinformationen von einer Softwareseite enthält.
Winwaed

Sie können auch ein Bluetooth-GPS-Gerät verwenden, um es an der besten Position zu platzieren (z. B. in der Nähe eines Fensters), obwohl es eine separate Stromversorgung benötigt. GPS-Geräte, die NMEA 0183 sprechen, arbeiten mit GPSD und sie sind ziemlich normal. Vielleicht finden Sie ein gebrauchtes. Bluetooth auf dem RPi sollte auch mit den meisten Bluetooth-Dongles funktionieren.
Elmicha

Meine Prämie geht an eine Antwort, die ein Hardwareschema und Softwarebeispiele zum Einstellen der Uhr und zum Anzeigen der geografischen Position enthält.
Alex Chamberlain

Antworten:


42

GPS-Empfänger

Ich würde für einen generischen USB-GPS-Empfänger wie den BU-353 gehen

BU-353

Es funktioniert mit dem Raspberry Pi genauso wie mit einem normalen Linux-Computer.

Die meisten USB-GPS-Empfänger sind nur USB-zu-Seriell-Adapter, die die NMEA-Daten vom GPS-Empfänger lesen. Schauen Sie sich die Treiber für pl2303 an (viele Geräte, die ich gesehen habe, verwenden diesen speziellen Chip), die verfügbar sein sollten.

Sie können auch GPIO und einen herkömmlichen NMEA 0183-GPS-Empfänger verwenden, müssen sich dann aber Gedanken über die Stromversorgung machen und die Preise sind häufig höher. GPS-Antennen sind an Bord von Booten und Schiffen üblich und verbrauchen normalerweise 12 Volt.

Die USB-Lösung ist billiger.

Software

Der von mir erwähnte GPS-Empfänger ist mit GPSD kompatibel .

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

Dadurch werden gpsd und die zugehörige Software installiert. Überprüfen Sie den GPS-Status mit cgps -s.

NTP-Uhr

Um die Uhr mit NTP zu synchronisieren , müssen Sie ntp installieren.

sudo apt-get install ntp

Siehe diesen Blog-Beitrag: http://blog.retep.org/2012/06/18/getting-gps-to-work-on-a-raspberry-pi/ . Es behandelt NTP im Detail.


4
Dieser Blog-Beitrag ist großartig.
Jivings

2
Ich kann bestätigen, dass die BU-353 mit einem Pi
Kugelfisch

Erhält ntp die Uhrzeit vom GPS-Modul, wenn keine Internetverbindung besteht?
Dimme

Dies wird Ihren einen USB-Port
auffressen

1
@ JohnDemetriou Hängt vom Anwendungsfall ab. Eine genaue Uhr kann den Unterschied zwischen korrekten und falschen Zeitstempeln ausmachen. Wenn Sie mehrere Sensoren mit einer eigenen Uhr kombinieren, kann es beispielsweise zu einer falschen Reihenfolge von Ereignissen kommen, wenn die Uhren unterschiedlich sind.
Ragnar123


5

Schau dir adafruit ultimate gps an

Es hat alles was Sie wollen und mehr:

-165 dBm Empfindlichkeit, 10 Hz - Updates, 66 Kanäle
5V freundliches Design und nur 20 mA Stromaufnahme
Versuchsaufbau freundlich + zwei Befestigungslöcher RTC - Batterie-kompatibel
Built-in Datenaufzeichnung PPS - Ausgang auf fix
> 25Km Höhe
Interne Patch - Antenne + U.fl Anschluss für externe aktive Antenne
Fix Status LED

… Alles für unter 40 Dollar!


4

Wenn Sie USB nicht verwenden möchten, können Sie TTL- GPS-Empfänger verwenden. Sparkfun macht einen sehr schnellen 50-Kanal-GPS-Empfänger, aber Sie können andere bei eBay oder auf anderen Websites finden.

Sie können dies nutzen, indem Sie die serielle Konsole am P i deaktivieren und den Empfänger direkt an die UART-Pins anschließen.

Bildbeschreibung hier eingeben

* Denken Sie daran, die Spannungen des verwendeten GPS-Geräts zu überprüfen


2
Wenn Sie die Spannungen nicht herunterschalten möchten (da diese Module fast immer 5-V-Logik haben), können Sie sie in einen TTL-USB-Adapter und die USB-Seite in den Pi stecken. Dies schont die serielle Konsole (für uns, die es lieben) und umgeht einen Spannungsteiler oder Pegelwandler.
Patrick Cook
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.