GPS-TELEMETRIE
MIT
KARTENAUSWERTUNG
VORLÄUFIGE PROJEKTIDEE
Stand: 18. April 2010
Abb. 1a-d ( Screenprints GARMIN
OREGON )
Vorläufig basierend auf den Tests mit APRS-Daten, so wie sie im
Amateurfunkbetrieb verwendet werden.
So ganz neu ist es
nicht, daß manche GPS-Handgeräte zusätzlich zu ihrem
NMEA-Datenausgang auch noch mit einem NMEA-Eingang
ausgestattet sind.
Im
hierbei unterstützten Format zugeführt, lassen sich auf diese
Weise neue Wegpunkte
im geräteinternen Speicher ablegen und falls eine
Kartendarstellung möglich ist, so lassen sie sich hierauf auch
anzeigen ( Abb.1a ). In der Praxis wurde diese Funktion bisher
allerdings kaum
benutzt, obwohl sie interessante Möglichkeiten z.B. auch zur
Live-Positionsverfolgung jeder Art sich bewegender Objekte
bietet.
Im Folgenden seien Ideen für ein relativ einfaches
Funk-Telemetrieprojekt
vorgestellt. Es ermöglicht nicht nur eine laufende
Standortverfolgung von
Fahrzeugen ( Modellen ) usw. auf Karten, sondern auch noch die Anzeige
von der Gegenstation empfangener Zusatzinformationen wie z.B.
Höhenwerten, Bewegungsgeschwindigkeiten
und Bewegungsrichtungen ( Abb.1d ). Vorgesehen ist darüber hinaus
aber
auch noch die Auswertung mehrerer beliebiger Analogdaten, was z.B. die
Bordspannung auf der Senderseite beinhalten kann.
Auf der
auswertenden Seite wird eines der schon oben erwähnten
GPS-Handgeräte benutzt. Mithilfe der von ihm gelieferten GPS-Daten
ist damit zusätzlich auch noch eine ständige Kontrolle des
räumlichen Bezuges zwischen dem eigenen und dem Fremdstandort
möglich wird ( Abb.1a, c-d ).
EINHEIT ZUR
DATENERFASSUNG UND AUSSENDUNG (
FREMDEINHEIT )
Abb. 2
Auf der Daten-Erfassungsseite wurde das GPS-Empfängerboard
"NL507-TTL"
von NAVILOCK ( bezug z.B. über Amazon
möglich )
eingesetzt. Es ist mit 3.3V
betreibbar und liefert seine NMEA-Daten mit
9600bps und 3Vss-TTL-Pegel. Bausteine mit
ähnlichen Schnittstellendaten lassen sich an dieser Stelle
natürlich ebenfalls
verwenden.
Mithilfe eines Microcontroller vom Typ ATMEL "ATMEGA8"
werden die
vom GPS-Empfänger bereitgestellten NMEA-Datensätze der Typen:
"GPGGA"
und "GPRMC"
ausgewertet, wobei der Erstere die Längengrad-,
Breitengrad- und Höhendaten liefert, wogegen die Werte für
Bewegungsgeschwindigkeit- und Bewegungsrichtung den RMC-Protokollen
entnommen werden.
Die Identifikation der sendenden Stelle erfolgt über einen frei
wählbaren Ident-Namen, der aus mehreren ASCII-Zeichen bestehen
kann und
später auf der anzeigenden Karte neben der Positionsmarke
erscheint ( Im Amateurfunkbetrieb wird an dieser Stelle
üblicherweise das amtliche
Rufzeichen benutzt ). Aus Gründen der Übersichtlichkeit
sollte man sich
dabei in der Praxis auf Namen mit max. etwa 8 Zeichen
beschränken. Er wird einmalig im EEPROM-Bereich des
Mikrocontrollers abgelegt und bleibt dort bis zu einer evtl.
später einmal gewünschten Überschreibung erhalten.
Aus den zur Verfügung stehenden Daten erzeugt der Mikrocontroller
neue NMEA-Datensätze. Dabei handelt es sich um die zur
Wegpunkverarbeitung auf der auswertenden Seite akzeptierten
Protokolltypen:
"GPWPL"
und "PGRMW", wobei
es sich bei Letzteren um ein
GARMIN-proprietäres ( = firmenspezifisches ) Format handelt.
Während die GPWPL-Protokolle nur Längen- und
Breitengraddaten, sowie Wegpunktnamen enthalten, ist durch Verwendung
von "PGRMW"
zusätzlich auch noch eine Übermittlung von Höhendaten
und Wegpunktsymbolen ( ICONS ) möglich. In einem Kommentarfeld
lassen sich bei Bedarf auch noch beliebige andere Daten
hinzufügen. Das können z.B. die von der mobilen Station
stammenden Bewegungsdaten oder irgendwelche Analoginformationen sein.
Nachdem die Protokolle
jeweils noch um
eine Prüfsumme ergänzt wurden, werden sie vom Mikrocontroller
etwa im Sekundentakt mit 9600bps seriell ausgeben
und gelangen von hier an den Dateneingang des Sendermoduls. An dieser
Stelle setze ich das RADIOTRONIX
Transceivermodul "Wi.232EUR-R" ein. Es
arbeitet im 868MHz-Bereich und erlaubt Sendeleistungen von
bis zu 32mW. Bei Bord-Boden-Verbindungen sind damit mühelos
Funkreichweiten von 1500m und mehr erreichbar. Zur Einhaltung des im
868MHz-Bereich
vorgeschriebenen max. Duty-Cycles ( zeitlich prozentuale
Frequenzbelegung ) wird es bei mir im Kanal 4
( 869.525MHz ) betrieben, der hierfür
einen Wert von 10% zulässt.
Die drei Bestandteile der Gebereinheit ( GPS-Empfangsmodul,
Mikrocontroller und Funkbaustein ) lassen sich mit einer einheitlichen
Spannung von
3.3V versorgen. Dazu könnte
z.B. eine 3.7V-LiPo-Zelle mit nachgeschaltetem 3.3V-Spannungsregler (
Low-Drop-Version ) benutzt werden. Ich habe stattdessen jedoch einen
von
Fa. SPARKFUN aus den USA stammenden DC/DC-Wandler benutzt ( Art.:
PRT-08290
). Er erlaubt den Betrieb aus unterschiedlichsten Energiequellen im
Spannungsbereich von 1.1V bis 4.5V, muss allerdings vorher zuerst
einmal von 5V-Ausgangsspannung auf 3.3V umgestellt
werden ( wozu 100KOhm-Widerstand "RF2" durch ein 180KOhm-Exemplar
auszutauschen ist ).
Zur Konfiguration ist ein separater TTL/USB-Adaper
erforderlich. Geeignete Versionen sind auch von anderen Herstellern als
betriebsfertiges
Board erhältlich ( siehe unter "Interessante Links" ). Sobald
er über die Punkte A-C angeschlossen und eine Brücke an
"CONFIG1" hergestellt wurde, startet das Mikrocontrollerprogramm im
Configurations-Mode. Wird an einem angeschlossenen PC ein
Terminalprogramm aktiviert, so lässt sich hierüber der bei
allen folgenden Aussendungen zur Identifikation benutzte Wegpunktname
eingeben.
Die Konfiguration des Funkbausteins erfolgt durch Anschluss des
gleichen Adapters an den Punkten D-F. Über eine Brücke an
"CONFIG2" ist dafür auch der "Wi.232EUR-R" in den zugehörigen
Modus zu versetzen. Die Einstellung der gewünschten
Transceiverparameter erfolgt wiederum am PC mithilfe einer hierfür
vom Hersteller bereitstehenden Windows-Software. Nach Beendigung der
Einstellungen sind
eventl. noch bestehende Konfigurations-Brücken wieder aufzutrennen
EINHEIT
ZUM DATENEMPFANG UND AUSWERTUNG
Abb. 3
Auf der auswertenden Seite wird das gleiche Funkmodul
"Wi.232-EUR-R" eingesetzt. Grundsätzlich kann die
Funkübertragung natürlich auch mit anderen Bausteinen
erfolgen. Wichtig ist nur, daß sie 9K6-Datensignale über
ausreichende Distanzen
übertragen und mögliche Übertragungsfehler weitgehend
selbst erkennen können ( wie z.B. ZigBee ).
Am Datenausgang des Funkbausteins stehen die empfangenen GPWPL- und
PGRMN-Datensätze wieder zur Verfügung. Nach Pegelwandlung
mithilfe eines MAX3232 ( das ist die 3V-Version des bekannten: MAX232 )
können sie von einem angschlossenen GARMIN-Handgerät
geeigneten Typs direkt verarbeitet werden. Dazu ist es nicht nur
erforderlich, daß diese Geräte eine NMEA-IN-Funktion
besitzen, sondern es muss auch noch die Möglichkeit bestehen,
über serielle Datenanschlüsse hierauf zugreifen zu
können. Geräte, die einen solchen Zugriff NUR über
USB
erlauben, sind hier somit nicht verwendbar. Während serielle
Datenanschlüsse häufig auch schon bei älteren
GPS-Geräten zu
finden waren, wurde auf sie später oft zugunsten von
Nur-USB-Anschlüssen verzichtet. Vermutlich nach Kundendruck hat
man
sich ihrer erst in der letzter Zeit wieder besonnen, so dass die
neueren GARMIN Gerätetypen OREGON ( ab Typ 300 ) und COLORADO
wieder Schnittstellen besitzen, die eine Umschaltung zwischen USB und
SERIELL erlauben.
Der einfachste Zugriff auf die seriellen Daten erfolgt durch Nutzung
eines dazu von GARMIN
erhältlichen Anschlusskabels mit der
Bezeichnung "010-11131-00". Es ermöglicht eine Fernspeisung
des
GPS-Gerätes ( Spannungsbereich: 8-36V ), wozu ein Spannungswandler
eingebaut ist. Weiterhin in das Kabel integriert sind ein
bidirektionaler Wandler zwischen ( 3V-) TTL- und RS232-Pegelwerten und
eine
Umschaltfunktion zur Freigabe der seriellen Datenenein- und
Ausgänge.
Nachdem die Belegung der von den Geräten
verwendeten Mini-B
Anschlussbuchsen aber generell bekannt ist, könnte eine Adaption
grundsätzlich auch ohne dieses
( relativ teure ) Kabel im Selbstbau realisiert werden. Dabei
müsste allerdings
sorgfältig darauf geachtet werden, daß hier keine zur evtl.
Beschädigung des
angeschlossenen Gerätes führenden Fehler passieren.
Nähere Angaben zur Anschlussbelegung und zum Adapter-Selbstbau
findet man hier.
Ankommende Wegpunkdaten werden im geräteinternen Speicher des
GPS-Gerätes abgelegt und auf der Karte dargestellt ( Abb. 1a ).
Ich
verwende hierbei das Modell OREGON400t,
das von Haus schon eine
europaweite topographische Karte im Maßstab 1:100000 mitbringt,
was im Normalfall schon eine ausreichende Auflösung
sicherstellt.
Wem das nicht genügt, dem bietet Fa. GARMIN ( für viel Geld )
auch noch topographische
Karten im Maßstab 1:25000. Einige Kosten
kann man auch noch sparen, in dem man den Gerätetyp OREGON300
einsetzt und dabei z.B. die kostenlos erhältlichen Karten aus dem
OpenMaps-Projekt verwendet.
Mit geeigneter Software ist darüber
hinaus sogar die
Einbindung selbst
erstellter Karten möglich.
Die Wegpunkte werden an Hand ihres Namens identifiziert, wobei das
Eintreffen von Datenstrings mit bereits bekanntem WP-Namen zur
Überschreibung bereits abgelegter Positionsdaten und damit
auch zur Aktualisierung der Anzeigeposition auf der Karte
führt.
Mitübertragene Zusatzdaten können durch
Antippen des jeweiligen Wegpunkt-Icons aufgerufen werden. Daraufhin
öffnet sich ein sie anzeigender Bildschirm ( Abb. 1d ). Ein
weitere Möglichkeit des Aufrufs von Zusatzinformationen
besteht über den im Hauptmenü zu findenden "WAYPOINT MANAGER"
( Abb. 1b ). Die nach seiner Anwahl erscheinende Liste ( Abb.
1c ) enthält alle
dem System bekannten Wegpunktnamen, wobei sich die gewünschten
Informationen durch Antippen
des zugehörigen WP-Fensters, Anwahl der Funktion "VIEWMAP" und
wiederum des WP-Namensfensters erreichen lassen.
Die Konfiguration des Funkmoduls erfolgt analog zur Geberseite durch
Anschluss des schon oben erwähnten TTL/USB-Adapters an den Punkten
D und F, wobei auch
dieser Funkbaustein wiederum vorher in den Konfigurationsmodus versetzt
sein musste. Die Verbindungen zu den Anschlüssen E und G sind
dabei zeitweise zu unterbrechen.
NACHBAU
Das auf der Geberseite verwendete Programm wurde in
BASCOM-AVR geschrieben und ist
bei Interesse verfügbar. Ansonsten
gibt es die beiden Einheiten bisher nur als Versuchsaufbauten. Falls
irgendwo Interesse bestehen sollte dafür ( SMD- ) Platinen zu
entwerfen, so ist das durchaus in meinem Interesse und würde auch
mit Rat und Tat unterstützt werden. Ich selbst habe allerdings
derzeit nicht vor, in dieser Richtung aktiv zu werden.
KONTAKT:
khhmz(at)t-online.de
INTERESSANTE
LINKS