Inhaltsverzeichnis:

Ein OEM-GPS in alles einbetten - Gunook
Ein OEM-GPS in alles einbetten - Gunook

Video: Ein OEM-GPS in alles einbetten - Gunook

Video: Ein OEM-GPS in alles einbetten - Gunook
Video: Was tun NACH dem Zusammenbau?! PC Einrichten & Windows Installieren... 2024, November
Anonim
Betten Sie ein OEM-GPS in alles ein
Betten Sie ein OEM-GPS in alles ein
Betten Sie ein OEM-GPS in alles ein
Betten Sie ein OEM-GPS in alles ein

Ich zeige Ihnen, wie Sie ein hochgradig anpassbares OEM-GPS-Gerät anschließen. Dies sind großartige Geräte, die in praktisch alles eingebettet werden können. Ein komplettes kundenspezifisches System zu bauen ist eine Menge Arbeit. Es erfordert normalerweise spezifische Kenntnisse über mehrere Komponenten. Auch wenn jede Komponente erlernt ist, dauert es noch lange, alles zusammenzustellen. Ich dachte zuerst darüber nach, einen eigenen GPS-Empfänger zu bauen, aber nachdem ich einen Artikel über die GPS- und GLONASS-Theorie gelesen hatte, entschied ich mich gegen das Unterfangen, da es wahrscheinlich ein halbes Jahr dauern würde. Zum Glück für diejenigen von uns, die gerne GPS integrieren möchten in unsere benutzerdefinierten Projekte (ich verwende sie in der Robotik) oder erfahren Sie einfach mehr, es gibt eine riesige Auswahl an OEM-GPS-Einheiten. Der OEM bedeutet, dass es in andere Projekte integriert werden soll und nicht mit einem Bildschirm oder Gehäuse geliefert wird, oder irgendwelche Extras. Das Tolle an den meisten dieser Geräte ist, dass sie extrem vielseitig und einfach anzuschließen sind. Wie immer habe ich dieses Tutorial auch im Videoformat zur Verfügung gestellt: Ich werde mein Bestes tun, um jeden Abschnitt im weiteren Verlauf detailliert zu erklären.

Schritt 1: Benötigtes Zubehör

Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht

1. Stromversorgung um 5 V (3 AA- oder AAA-Batterien in Reihe sind 4,5 V oder 9 V mit einem Spannungsregler)2. Bei Verwendung eines 9V - 5V Spannungsreglers3. Kabelverbinder an die 9V-Batterie4. Steckbrett5. weibliche serielle Schnittstelle6. einige Drähte zum Anschließen an den seriellen Port7. Lötkolben8. LötenWenn Sie Schwierigkeiten haben, eine serielle Schnittstelle zu finden, können Sie ein altes Gerät auseinandernehmen. Ich habe einen alten Digitalkamera-Adapter auseinandergerissen. Das Modell, das ich demonstriere, wie man es anschließt und verwendet, ist ein Garmin GPS15L. Diese Hinweise sollten jedoch für verschiedene Modelle recht gut gelten. Bei der Auswahl eines OEM-Geräts ist es wichtig, genau auf das Ausgabeformat des Geräts zu achten. Die Ausgänge des GPS15L basieren auf der seriellen RS232-Ebene, während die Parallax-GPS-Einheit auf TTL-Ebenen ausgibt. Dies bedeutet, dass das Parallax-Modell nicht so funktioniert, wie wir dieses Gerät anschließen. TTL-Pegel werden im Allgemeinen für die Kommunikation über integrierte Schaltungen verwendet. Die Parallax-Einheit wäre also besser geeignet, wenn Sie sie direkt an einen Mikrocontroller und nicht an Ihren PC anschließen möchten.

Schritt 2: Anschließen

Anschließen
Anschließen
Anschließen
Anschließen
Anschließen
Anschließen

Das Anschließen des Geräts ist eigentlich ziemlich einfach. Wenn Sie einen Spannungsregler verwenden, stellen Sie sicher, dass die Masse mit den Minuspolen der Batterie, der seriellen Schnittstelle und des GPS verbunden ist. Sie können jede beliebige Art von Stromquelle verwenden, solange Sie diese innerhalb des im Herstellerhandbuch angegebenen Bereichs bereitstellen. (GPS15L 3,3 - 5,4 VDC) Der USB-Anschluss gibt normalerweise 5,05 V aus, das ist also auch eine Option. Ich hatte ursprünglich eine kaputte Glasfaserlampe, die 3 AA-Batterien benötigte. Eine AA- oder AAA-Batterie hat 1,5 Volt. Die faseroptische Leuchte hatte die Batterien in Reihe geschaltet, so dass die tatsächliche Leistung 3 x 1,5 = 4,5 Volt betrug. Ich habe ursprünglich die Stromquelle der Glasfaserlichter ausgeschnitten und in den Tupperware-Behälter mit dem GPS-Gerät gesteckt. Der einzige Unterschied ist, dass es keinen Spannungsregler gab. Ich habe nur die Masse zusammengehakt und die Drähte direkt verlötet.

Schritt 3: Unter Linux testen

Unter Linux testen
Unter Linux testen
Unter Linux testen
Unter Linux testen
Unter Linux testen
Unter Linux testen

Zugriff auf den Comm-Port Bevor Sie etwas mit Ihrem GPS-Gerät unter Linux tun können, müssen Sie wahrscheinlich sicherstellen, dass Sie dem Port, mit dem Sie testen, Lese- und Schreibzugriff gewähren. Normalerweise befinden sich die seriellen Ports in /dev/ttys0, /dev/ttys1, …etcWenn Sie einen Seriell-zu-USB-Adapter verwenden, finden Sie ihn möglicherweise unter /dev/ttyUSB Minicom Von allen Anwendungen, die ich ursprünglich ausprobiert habe für die Prüfung der seriellen/parallelen Ports unter Linux zu verwenden, war die einfachste, die ich fand, "minicom". Diese Anwendung ist abhängig von der von Ihnen verwendeten Distribution, ob sie vorinstalliert ist oder nicht. Ubuntu 8 ist nicht vorinstalliert, aber wie Sie auf den Screenshots sehen können, dauert es nur wenige Minuten, bis es installiert ist und funktioniert richtigen Parameter. Sie können die Anwendung konfigurieren, indem Sie den Befehlszeilenschalter -s verwenden. Wenn Sie Minicom ausführen, können Sie auch auf das Menü zugreifen, indem Sie "Strg" und "a" drücken und dann "z" drücken Seriell-zu-USB-Adapter Der Adapter, den ich derzeit verwende, Ich habe selbst gebaut. Ich würde jedoch empfehlen, einen Adapter auf Basis der FTDI-Chipserie zu kaufen. FTDI bietet hervorragende Treiberunterstützung auf allen Plattformen! Sparkfun bietet einige vorkonfektionierte Lösungen an. Sie haben auch ein großartiges Tutorial zur Verwendung des RS232RL-Chips mit Eagle, um Ihren eigenen zu erstellen.

Schritt 4: Testen unter Windows

Testen unter Windows
Testen unter Windows
Testen unter Windows
Testen unter Windows
Testen unter Windows
Testen unter Windows

Um solche Dinge unter Windows zu testen, verwende ich immer Hyperterminal. Es wird meistens standardmäßig installiert. Ich glaube, ich musste es einmal aus dem Hinzufügen/Entfernen von Programmen auf einem System mit Windows Server installieren.

Die Anfangseinstellungen, mit denen Sie Hyperterminal konfigurieren müssen, befinden sich normalerweise im Handbuch des Herstellers. Beim GPS15L beträgt die Standardbaudrate 4800bps. Ich habe einen Screenshot des Seriell-zu-USB-Adapters beigefügt, den ich mit meinem Robotik-GPS-Projekt verwendet habe. Es sollte erwähnt werden, dass dies auf einem Windows 2000-Rechner durchgeführt wurde. Die Treiberunterstützung für dieses Kabel ist eher begrenzt. Siehe den vorherigen Schritt für den von mir empfohlenen Adapter.

Schritt 5: Die Ausgabe verstehen

Die Ausgabe verstehen
Die Ausgabe verstehen

Das GPS15L kann entweder in NMEA 0183 v2- oder NMEA 0183 v3-Sätzen ausgeben. NMEA 0183 ist nur ein ausgefallener Name dafür, dass das Gerät Textsätze in einem bestimmten Format ausgibt. Dies ist das Format, das zwischen GPS-Einheiten für die Ausgabe der Daten ziemlich universell ist. Zum Glück beschreibt die Bedienungsanleitung des GPS15L/H jeden dieser Sätze im Detail.

Wenn Sie das 15L zum ersten Mal starten, gibt es eine ganze Reihe verschiedener Sätze aus. In der Robotikanwendung, für die ich dies verwendet habe, habe ich jeden zweiten Satz mit Ausnahme der empfohlenen minimalen spezifischen GPS/TRANSIT-Daten (RMC) deaktiviert. Das Folgende ist ein Beispiel für diesen Satz. $GPRMC, 163126, V, 4335.2521, N, 08446.0900, W, 000.0, 173.2, 051206, 006.1, W*62 Der Satz enthält Längengrad, Breitengrad, Geschwindigkeit über Grund, Kurs über Grund und viele weitere hilfreiche Informationen. Beachten Sie, dass einige der Funktionen von den anderen Sätzen abhängen können, wenn Sie alle Sätze außer RMC deaktivieren, wenn Sie das Gerät mit nicht benutzerdefinierter Software verwenden. Als nächstes zeige ich Ihnen, wie Sie die Einstellungen des 15L/H ändern.

Schritt 6: Ändern der GPS-Einstellungen

Ändern der GPS-Einstellungen
Ändern der GPS-Einstellungen

Vorausgesetzt, Sie konnten das Gerät erfolgreich mit Minicom oder Hyperterminal testen, sollten Sie auch Befehle an dieses senden können. Wenn Sie im Produkthandbuch nachschlagen, gibt es einen Abschnitt namens "GPS 15H und 15L Software Interface". In diesem Abschnitt werden alle Sätze beschrieben, die Sie an das GPS-Gerät zurücksenden können, um es zu konfigurieren. Es ist wirklich einfach. Alles, was Sie tun müssen, ist, einen der Programmsätze einzugeben.

In Hyperterminal könnten Sie beispielsweise Folgendes eingeben: $PGRMO, GPRMC, 0 würde den GPRMC-Satz deaktivieren. Sie können auch alle Befehle, die Sie ausführen möchten, in eine Textdatei schreiben und diese Datei dann vom Hyperterminal für Sie in das GPS-Gerät "eintippen".

Schritt 7: Programmierung

Programmierung
Programmierung
Programmierung
Programmierung

Die wahre Schönheit eines OEM-Geräts zeigt sich, wenn Sie sich entscheiden, eine benutzerdefinierte Software dafür zu erstellen. Ich muss gestehen, dass ich ziemlich viel Programmiererfahrung habe. Es ist sicherlich nicht trivial, einen seriellen Puffer zu schreiben, um Daten in eine benutzerdefinierte Anwendung einzulesen. Wenn Sie keine benutzerdefinierte Software für das Gerät schreiben möchten, kann ich das Programm gpsDrive für Linux wärmstens empfehlen. Es funktioniert direkt nach dem Auspacken mit allem, was NMEA 0183-Sätze ausgibt. Wenn Sie benutzerdefinierte Software schreiben möchten, haben Sie Glück. Ich habe eine Klasse angehängt, die ich in Java geschrieben habe, die Daten an den seriellen Port senden und empfangen kann. Es sollte erwähnt werden, dass Java nicht standardmäßig mit den Klassen geliefert wird, die zur Unterstützung der seriellen Kommunikation erforderlich sind. Für den Kurs, den ich angehängt habe, verwende ich die Open-Source-Bibliothek RXTX. Wenn Sie skeptisch sind und die Einheit und den Code in Aktion sehen möchten, können Sie auf meiner Website das Video des Autonomen ansehen Roboternavigationsprojekt. Ich habe auch den kompletten Quellcode zur Verfügung, der verwendet wurde, um den Roboter zu navigieren. Am wichtigsten ist, viel Spaß mit Ihrem GPS!

Empfohlen: