EASYLOC
Auswertung von GPS-Empfängerdaten zur Anzeige von Distanz, Peilwinkel ( Heading ) und Höhendifferenz
Version vom 29. Mai 2008

Mit wenigen handelsüblichen Bauteilen ermöglicht EASYLOC die Anzeige von Distanz, Peilwinkel und Höhendifferenz zwischen zwei geographischen Punkten. Die Ermittlung der zur Berechnung herangezogenen Positionswerte erfolgt dabei nacheinander unter Verwendung von Daten nur eines GPS-Empfängers. Dieser kann entweder direkt angeschlossen sein, oder seine Daten über eine zwischengeschaltete Funkverbindung liefern. Damit wird auf einfache Weise eine laufende Kontrolle von Entfernung, Richtung und Höhenunterschied zu entsprechend ausgestatteten z.B. mobilen Objekten möglich. EASYLOC wertet den NMEA-Protokolltyp "GGA" aus. Dabei wird mit der Standard-Datenrate 4800bps ( 9600bps auf Anfrage ) gearbeitet. Der serielle Eingang kann sowohl TTL-Signale, als auch solche mit RS232-Pegeln verarbeiten. Über einen ebenfalls vorhandenen seriellen Datenausgang werden verschiedene Rechenwerte ausgegeben, womit der der Programmablauf bei Bedarf verfolgt werden kann. Zur Auswertung kann ein beliebiges externes Terminalprogramm verwendet werden.
Nach dem Einschalten der Baugruppe können zuerst die Werte eines Ausgangs- bzw. Referenzpunktes und danach die jeweils aktuellen GPS-Positionsdaten erfasst werden. Die Bedienung ist dabei äußerst einfach:
Wird beim Einschalten von EASYLOC zusätzlich auch eine an Port "PB0" angeschlossene TASTE gedrückt, so startet die prozessorinterne Software im sogenannten "REGISTRATION-MODE". Dieser dient der Erfassung von Referenzdaten. Dabei  werden die vom angeschlossenen GPS-Empfänger kommenden seriellen Navigationsdaten zuerst auf ihre Gültigkeit geprüft. Dazu wird die bei NMEA-Protokollen zusätzlich übermittelte Prüfsumme herangezogen. Wegen möglicher übertragungsbedingter Fehler ist dieser Vorgang  vorallem dort wichtig, wo über Funk empfangene Eingangsdaten zur Auswertung kommen. Wurde diese Prüfung erfolgreich abgeschlossen, so blinkt die rote LED und es wird auf das Eintreffen GÜLTIGER GPS-Navigationsdaten ( GPS-FIX ) gewartet. Um mit möglichst verlässlichen Werten arbeiten zu können wurde festgelegt, dass eine Speicherung der Referenz-Positionsdaten nur erfolgt, wenn Signale von mindestens 4 Satelliten zur Verfügung stehen. Die Ablage selbst erfolgt im prozessorinternen EEPROM-Bereich. Bis zu einem eventuellen späteren Überschreiben bleiben diese Daten von dort aus verfügbar. Der erfolgreiche Abschluss des Speichervorgangs wird durch das Aufleuchten der grünen LED signalisiert. Bei Bedarf kann diese Anzeige durch kurzes Betätigen einer an Port "PD2" angeschlossenen Taste auch wieder gelöscht werden.

Nach erfolgreicher Speicherung der Referenzdaten geht EASYLOC selbständig in den "OPERATION-MODE". Besteht weiterhin gültiger Satellitenempfang, so erlischt die rot blinkende LED und auf dem LCD-Display werden fortlaufend die Werte von DISTANZ, PEILWINKEL ( Heading ) und HÖHENDIFFERENZ zwischen aktueller und vorher gespeicherter Position angezeigt ( siehe Abb.2 ). Zusätzlich erfolgt noch  die Anzeige der Menge aktuell ausgewerteter GPS-Satelliten und eines nach jeder Dateieinlesung um eine Stelle weiterzählenden zweistelligen ( 00-99 ) Up-Counters. Über einen an Port "PB1" angeordneten Schalter lässt sich zudem auswählen, ob die Anzeige von Peilwinkel und Höhendifferenz bezogen auf die aktuell eingehenden Daten ( PB1: offen ) oder bezogen auf die gespeicherten Referenzwerte ( PB1: geschlossen ) erfolgen soll.
Gespeicherte Referenzdaten bleiben auch nach dem Aussschalten von EASYLOC erhalten und stehen damit auch für die spätere Nutzung zur Verfügung. Wird die Baugruppe OHNE zusätzliche Betätigung der an "PB0 angeschlossenen "REGISTRATION-TASTE" eingeschaltet, so startet das Programm direkt im "OPERATION-MODE". Wird danach gültiger Satellitenempfang erkannt ( GPS-FIX ) und dieser Zustand durch Verlöschen der roten LED signalisiert, so erfolgt wiederum eine fortlaufende Anzeige von Daten, die sich durch Berechnung aus den aktuell eingehenden und den im EEPROM-Speicher noch vorhandenen Referenzdaten ergeben.
Damit überhaupt auf irgendwelche Referenzwerte zurückgegriffen werden kann, muss die erste Inbetriebnahme von EASYLOC immer im "REGISTRATION-MODE" erfolgen.


 
Abb.1

Das Schaltbild Abb.1 weist wenig Besonderheiten auf. Der serielle Eingang kann sowohl Signale mit 3 bis 5V-TTL-, als auch solche mit RS232-Pegel verarbeiten, wobei die Diode "D2" nur erforderlich ist, wenn mit  für RS232-Signalen gearbeitet wird. Die Brücke von Punkt "C" nach "A" oder "B" ist gemäß der Schaltbildangaben zu wählen.
Der serielle Testausgang kann direkt mit einem RS232-Pegel verarbeitenden Eingang verbunden werden.
Von den Schaltern S1-S5 wird derzeit nur S1 ( Port: PB1 ) benutzt. Hierüber lässt sich, wie schon oben erwähnt, der Bezugspunkt für die Berechnung der Werte von Heading-Winkel und Höhendifferenz wählen.
Zur Steuerung der grünen und der roten LED werden die Prozessor-Ausgänge PD6 und PD7 benutzt. Eine Besonderheit dabei ist, dass der Schmitt-Trigger "ST2" als Generator arbeitet und ein H-Signal an Ausgang PD7 bewirkt, daß die rote LED blinkt.
Der 6polige ISD-Anschluss kann zum Programmieren des Mikroprocessors "IC1" verwendet werden.


Abb.2

Abb.2 zeigt eine LCD-Anzeige als Beispiel.  "D" steht für die Distanz in Metern. Ab 1000m erfolgt diese Anzeige in "Km". "B" wurde inzwischen durch "H" = "Heading" ersetzt und gibt den Winkel vom gespeicherten zum aktuellen Punkt ( bzw. den entsprechenden Gegenwinkel ) an. "A" bezeichnet die Höhendifferenz zwischen den Endpunkten, während "S" auf die Anzahl der aktuell empfangenen GPS-Satelliten hinweist. Der zweistellige Zahlenwert am rechten Rand der 2.Reihe zeigt den Stand eines Up-Counters ( von 00-99 ). Er zählt bei jeder Protokolleinlesung um eine Stelle weiter und kann zur Kontrolle des Eingangs von Datenprotokollen benutzt werden. Mit Abb.3 folgt das Foto eines ersten Musteraufbaus, bei dem der aus dem Schaltbild ersichtliche ISD-Anschluss noch fehlt.


Abb.3

NACHBAU: Das Programm für EASYLOC wurde in Bascom-AVR geschrieben. Interessenten sollten sich an den Verfasser wenden.