Samstag, 8. Juni 2013

GPS-Mouse RoyalTek RGM-2000

Ich habe sie beim Aufräumen wieder gefunden. Ursprünglich war die GPS-Mouse zum Anschluss an die Vpower Teleskopsteuerung gedacht. Da ich mich damals jedoch nicht entscheiden konnte, wo ich genau die Stecker an der Vpower anbringe (Handbox oder Hauptgerät), habe ich die Idee nicht weiter verfolgt.





Nun ist die RoyalTek RGM-2000 wieder aus der Versenkung aufgetaucht und hat meine Neugier geweckt.
Da der Stecker der GPS-Mouse nicht zu gebrauchen war, wurde er durch eine einfachere Zugangsmöglichkeit ersetzt:


Kabelbelegung der RGM-2000:


                           rot = +5 V
                       schwarz = GND
                          gelb = TX
                          weiß = RX


Die GPS-Mouse habe ich an den Arduino Mega angeschlossen, weil er hardwareseitig mehrere serielle Schnittstellen hat.

Anschluss:


GPS-Mouse TX --> Arduino Pin 18 (RX1)
GPS-Mouse RX --> Arduino Pin 19 (TX1)

Mit dem Programm "MultiSerialMega" und dem seriellen Monitor kann man ohne großen Aufwand die NMEA 0183 Datensätze sichtbar machen (NMEA = National Marine Electronics Association).



Bei mehreren Inbetriebnahmen der Schaltung dauerte es zwischen 50 s und 2 Minuten bis ein gültiger Datensatz generiert wurde.





NMEA 0183 definiert, dass der Sender die Daten gemäß RS-232 (z.B. serielle Schnittstelle am PC) bereitstellt. Die Übertragungsgeschwindigkeit beträgt 4800 bit/s. Die Daten werden im ASCII-Format (American Standard Code for Information Interchange) bereitgestellt.
Geliefert werden von der RGM-2000 zwei Datensätze:

$GPGGA,174916.918,4912.3456,N,00612.3456,E,1,05,1.8,183.9,M,47.8,M,0.0,0000*7A
$GPVTG,,T,,M,0.00,N,0.0,K*7E


Der Inhalt wird auf der Web-Site http://www.NMEA.de beschrieben. 
Das erste Datenfeld (Komma als Trennzeichen) bedeutet:

$GP = GPS
GGA = Global Positioning System Fix Data
VTG = Track made good and Ground speed

Der GGA-Datensatz setzt sich wie folgt zusammen:

174916.918 = Zeit (UTC) im Format hhmmss.sss
 4912.3456 = Breitengrad im Format XXYY.ZZZZ ⇒ XX°YY'(0.ZZZZ * 60)" 
         N = Nord
00612.3456 = Längengrad im Format XXXYY.ZZZZ 
         E = Ost
         1 = GPS Signalqualität (0 - fix not available, 1 - GPS fix,
             2 - Differential GPS fix )
        05 = Anzahl der empfangbaren Satelliten (00 - 12)
       1.8 = horizontale Abweichung
     183.9 = Höhe der Antenne über dem Geoiden (eine idealisierte Form 
             der Erde zu Messzwecken)
         M = Einheit des vorherigen Datenfeldes = Meter
      47.8 = Abweichung des  WGS-84 Ellipsoiden vom Geoiden
         M = Einheit des vorherigen Datenfeldes = Meter
       0.0 = Alter des differential GPS Datensatzes
      0000 = Differential GPS Referenz Stations ID, 0000-1023
         * = Ende des Datensatzes (Payload)
        7A = Prüfsumme des Datensatzes


Der VTG-Datensatz enthält folgende Felder:

leer = Richtung in ° (leer, weil sich der Empfänger nicht bewegt hat)
   T = True (geografische Richtung)
leer = Richtung in °
   M = Magnetic (Richtung gemäß Magnetfeld)
leer = Geschwindigkeit in Knoten
   N = Knoten
leer = Geschwindigkeit in km/h
   K = km/h
   * = Ende des Datensatzes (Payload)
  7E = Prüfsumme


Ein Programm, um die Daten zu visuallisieren ist VisualGPS.
Man kann nach Auswertung mehrerer Datensätze z.B. erkennen, dass die mittlere Genauigkeit - hier beim Empfang von 3 bis 5 Satelliten - ca. 6 m im Breitengrad und 5 m im Längengrad betrug: