OpenSeaMap-dev:HW-logger/delayspread: Unterschied zwischen den Versionen

Aus OpenSeaMap-dev
Wechseln zu: Navigation, Suche
(Genauere Beschreibung der Systemkonfiguration)
(Zeitliche Genauigkeit von NMEA Datentelegrammen)
Zeile 3: Zeile 3:
 
== Zeitliche Genauigkeit von NMEA Datentelegrammen ==
 
== Zeitliche Genauigkeit von NMEA Datentelegrammen ==
  
=== Beschreibung des Settings ===
+
=== Systemkonfiguration ===
...
+
 
 +
Ein Handelsüblicher GPS-Empfänger wird mit einem USB-Hub am [[OpenSeaMap-dev:HW-logger/Victor-HW-Logger|OpenSeaMap-WLAN-Logger]] betrieben.
 +
Dort werden auch über einen Seriell-USB-Wandler die bootseigenen
 +
[http://aprs.gids.nl/nmea NMEA]-Daten aus einer SeaTalk-NMEA-Bridge eingespeist.
 +
Auf dem Bootsbus arbeitet u.a. ein ein weiterer GPS-Empfänger (Furuno).
 +
Ferner ist am Hub noch ein Miniatur-WLAN-Stick angeschlossen.
 +
Mittels [http://www.catb.org/gpsd gpsd] wurden die Datenströme auf dem OpenSeaMap-WLAN-Logger zusammengemultiplext und
 +
über die Drahtlosverbindung zu einem Linux-PC übertragen.  
 +
Mit dem Kommando
 +
gpspipe -ur > logfile.nmea
 +
wurden die Daten mit Zeitstempeln versehen aufgezeichnet. Hier ein Datenausschnitt:
 +
2013-06-24 09:07:29.435524: $IIRMC,070724,A,4038.910,N,01757.410,E,3.3,042.0,240613,3,E,A*15
 +
2013-06-24 09:07:29.437945: $IIRSA,-5,A,,V*4F
 +
2013-06-24 09:07:29.438068: $IIMWV,307.5,R,10.8,N,A*05
 +
2013-06-24 09:07:29.494247: $IIMWV,292.5,T,9.2,N,A*3C
 +
2013-06-24 09:07:30.045399: $IIVHW,329.0,T,326.0,M,3.00,N,5.56,K*5F
 +
2013-06-24 09:07:30.051770: $IIVPW,1.15,N,0.59,M*5B
 +
2013-06-24 09:07:30.051882: $IIVWR,052.5,L,10.8,N,5.6,M,20.0,K*5D
 +
2013-06-24 09:07:30.051919: $GPGSV,3,1,11,02,03,225,19,05,59,265,31,07,40,051,27,08,70,022,23*71
 +
2013-06-24 09:07:30.051953: $GPGSV,3,2,11,09,70,288,31,10,39,177,26,13,12,102,15,26,41,306,24*7C
 +
2013-06-24 09:07:30.051985: $GPGSV,3,3,11,28,52,150,25,19,03,054,20,15,02,295,20*45
 +
2013-06-24 09:07:30.052015: $GPZDA,070725.00,24,06,2013,00,00*61
 +
2013-06-24 09:07:30.052044: $GPGGA,070725,4038.9157,N,01757.4207,E,1,08,1.20,15.25,M,38.017,M,,*70
 +
2013-06-24 09:07:30.052075: $GPRMC,070725,A,4038.9157,N,01757.4207,E,3.3202,33.446,240613,,*1E
 +
Die Busdaten haben ein $II-Präfix, die Navilock-Daten sind mit $GPxxx gekennzeichnet.
 +
 
  
 
=== Ergebnisse ===
 
=== Ergebnisse ===
Zeile 26: Zeile 51:
 
   I:  If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=pl2303
 
   I:  If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=pl2303
  
Systemkonfiguration:
+
Systemkonfiguration war wie oben beschrieben.
 
 
Dieser GPS-Empfänger wurde mit einem USB-Hub am [[OpenSeaMap-dev:HW-logger/Victor-HW-Logger|OpenSeaMap-WLAN-Logger]] betrieben.
 
Dort wurden auch über einen Seriell-USB-Wandler die bootseigenen
 
[http://aprs.gids.nl/nmea NMEA]-Daten aus einer SeaTalk-NMEA-Bridge eingespeist.
 
Ferner war am Hub noch ein Miniatur-WLAN-Stick angeschlossen.
 
Mittels [http://www.catb.org/gpsd gpsd] wurden die Datenströme zusammengemultiplext und
 
über die Drahtlosverbindung zu einem Linux-PC übertragen.
 
Mit dem Kommando
 
gpspipe -ur > logfile.nmea
 
wurden die Daten mit Zeitstempeln versehen aufgezeichnet. Hier ein Datenausschnitt:
 
2013-06-24 09:07:29.435524: $IIRMC,070724,A,4038.910,N,01757.410,E,3.3,042.0,240613,3,E,A*15
 
2013-06-24 09:07:29.437945: $IIRSA,-5,A,,V*4F
 
2013-06-24 09:07:29.438068: $IIMWV,307.5,R,10.8,N,A*05
 
2013-06-24 09:07:29.494247: $IIMWV,292.5,T,9.2,N,A*3C
 
2013-06-24 09:07:30.045399: $IIVHW,329.0,T,326.0,M,3.00,N,5.56,K*5F
 
2013-06-24 09:07:30.051770: $IIVPW,1.15,N,0.59,M*5B
 
2013-06-24 09:07:30.051882: $IIVWR,052.5,L,10.8,N,5.6,M,20.0,K*5D
 
2013-06-24 09:07:30.051919: $GPGSV,3,1,11,02,03,225,19,05,59,265,31,07,40,051,27,08,70,022,23*71
 
2013-06-24 09:07:30.051953: $GPGSV,3,2,11,09,70,288,31,10,39,177,26,13,12,102,15,26,41,306,24*7C
 
2013-06-24 09:07:30.051985: $GPGSV,3,3,11,28,52,150,25,19,03,054,20,15,02,295,20*45
 
2013-06-24 09:07:30.052015: $GPZDA,070725.00,24,06,2013,00,00*61
 
2013-06-24 09:07:30.052044: $GPGGA,070725,4038.9157,N,01757.4207,E,1,08,1.20,15.25,M,38.017,M,,*70
 
2013-06-24 09:07:30.052075: $GPRMC,070725,A,4038.9157,N,01757.4207,E,3.3202,33.446,240613,,*1E
 
Die Busdaten haben ein $II-Präfix, die Navilock-Daten sind mit $GPxxx gekennzeichnet.
 
 
 
  
 
Die drei folgenden Bilder zeigen, dass die ZDA (rot) und RMC (grün, meist verdeckt) Messages des Navilock-GPS  
 
Die drei folgenden Bilder zeigen, dass die ZDA (rot) und RMC (grün, meist verdeckt) Messages des Navilock-GPS  

Version vom 12. Oktober 2013, 23:24 Uhr

- Vorläufige Seite -

Zeitliche Genauigkeit von NMEA Datentelegrammen

Systemkonfiguration

Ein Handelsüblicher GPS-Empfänger wird mit einem USB-Hub am OpenSeaMap-WLAN-Logger betrieben. Dort werden auch über einen Seriell-USB-Wandler die bootseigenen NMEA-Daten aus einer SeaTalk-NMEA-Bridge eingespeist. Auf dem Bootsbus arbeitet u.a. ein ein weiterer GPS-Empfänger (Furuno). Ferner ist am Hub noch ein Miniatur-WLAN-Stick angeschlossen. Mittels gpsd wurden die Datenströme auf dem OpenSeaMap-WLAN-Logger zusammengemultiplext und über die Drahtlosverbindung zu einem Linux-PC übertragen. Mit dem Kommando

gpspipe -ur > logfile.nmea

wurden die Daten mit Zeitstempeln versehen aufgezeichnet. Hier ein Datenausschnitt:

2013-06-24 09:07:29.435524: $IIRMC,070724,A,4038.910,N,01757.410,E,3.3,042.0,240613,3,E,A*15
2013-06-24 09:07:29.437945: $IIRSA,-5,A,,V*4F
2013-06-24 09:07:29.438068: $IIMWV,307.5,R,10.8,N,A*05
2013-06-24 09:07:29.494247: $IIMWV,292.5,T,9.2,N,A*3C
2013-06-24 09:07:30.045399: $IIVHW,329.0,T,326.0,M,3.00,N,5.56,K*5F
2013-06-24 09:07:30.051770: $IIVPW,1.15,N,0.59,M*5B
2013-06-24 09:07:30.051882: $IIVWR,052.5,L,10.8,N,5.6,M,20.0,K*5D
2013-06-24 09:07:30.051919: $GPGSV,3,1,11,02,03,225,19,05,59,265,31,07,40,051,27,08,70,022,23*71
2013-06-24 09:07:30.051953: $GPGSV,3,2,11,09,70,288,31,10,39,177,26,13,12,102,15,26,41,306,24*7C
2013-06-24 09:07:30.051985: $GPGSV,3,3,11,28,52,150,25,19,03,054,20,15,02,295,20*45
2013-06-24 09:07:30.052015: $GPZDA,070725.00,24,06,2013,00,00*61
2013-06-24 09:07:30.052044: $GPGGA,070725,4038.9157,N,01757.4207,E,1,08,1.20,15.25,M,38.017,M,,*70
2013-06-24 09:07:30.052075: $GPRMC,070725,A,4038.9157,N,01757.4207,E,3.3202,33.446,240613,,*1E

Die Busdaten haben ein $II-Präfix, die Navilock-Daten sind mit $GPxxx gekennzeichnet.


Ergebnisse

Navilock NL-464US

USB GPS Empfänger mit interner Antenne und einem 20 Kanal SiRFstarIII GPS Chipsatz. http://www.navilock.de/produkte/G_60122/dokumente.html

Auf einem Linux-System liefert dieser GPS-Empfaenger folgende Informationen:

lsusb
 ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
usb-devices
 T:  Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=12  MxCh= 0 
 D:  Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
 P:  Vendor=067b ProdID=2303 Rev=04.00
 S:  Manufacturer=Prolific Technology Inc. 
 S:  Product=USB-Serial Controller D
 C:  #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA
 I:  If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=pl2303

Systemkonfiguration war wie oben beschrieben.

Die drei folgenden Bilder zeigen, dass die ZDA (rot) und RMC (grün, meist verdeckt) Messages des Navilock-GPS relativ zuverlässig zum gleichen Bruchteil einer Sekunde auftauchen. Auf der x-Achse sind die Sekunden der lokalen aufgetragen, die Minuten schreiten auf der y-Achse nach oben fort. Je schräger die rote Linie liegt, desto höher ist die Drift der lokalen Zeitbasis gegenüber der GPS-Zeit.

Die Daten des Tiefensensors treten hier beispielsweise zu stets unterschiedlichen aber vorhersagbaren Zeiten auf. Das gilt leider auch fuer die RMC-Nachricht eines bordeigenen Furuno GPS. Interessant ist auch, dass offenbar um die 33. Sekunde jeder Minute besonders hohe Laufzeitstreuungen auftreten. Bei genauerem Hinsehen ist ferner zu beobachten, dass die zeitlichen Abstände der Navilock-RMC -Nachrichten mit einer Periode von 3 Sekunden schwanken.

Grafiken

Laufzeitverhalten verschiedener Systemumgebungen und GPS-Empfaenger

Navilock and Furuno zoom1.jpeg

Ausschnitt 1 (aus dem vorhergehenden Bild)

Navilock and Furuno zoom2.jpg

Ausschnitt 2 (aus dem vorhergehenden Bild)

Navilock and Furuno zoom3.jpg