Ik “m decodeer NMEA GPRMC -zinnen van een GPS-apparaat. De indeling van het datumveld is ddmmyy. Dus 191194 is 19 november 1994. Dit maakt het onmogelijk om jaren groter dan 1999 weer te geven. gewijzigd om dit probleem te omzeilen?

Answer

Die berichten komen overeen met de oude NMEA 0183 -specificatie. Die meer dan gewijzigd werd vervangen door NMEA 2000 , die heel anders is en geen ascii seriële communicatie is. is eigenlijk een heel ander beest. NMEA 0183 is echter nog steeds in gebruik en wordt door veel apparaten ondersteund. En het tweecijferige jaar rolt gewoon over. Daarom wordt het jaar 2000 weergegeven als 00 en 2018 als 18. Hier is een voorbeeld van een deel van NMEA-uitvoer opgenomen door mijzelf enkele jaren geleden:

$SDMTW,8.8,C*34 $SDVHW,,,,,0.00,N,0.00,K*5B $GPRMC,190430,A,4812.3038,S,07330.7690,W,3.7,3.8,090210,13.7,E,D*26 $GPRMB,A,,,,,,,,,,,,A,D*0E $GPGGA,190430,4812.3038,S,07330.7690,W,2,06,2.5,4.9,M,12.4,M,,*42 $GPGLL,4812.3038,S,07330.7690,W,190430,A,D*4A 

U kunt zien dat het tijdstempel is 090210, dat was inderdaad 9 februari 2010.

Gelukkig is er geen dubbelzinnigheid in de gegevens omdat er in 1910 geen GPS of NMEA was. Het eerste NMEA-protocol was NMEA 0180, met de ” 80 “in” 0180 “wat 1980 betekent ( 3 ), dus u kunt erop vertrouwen dat elke waarde onder de 80 overeenkomt met deze eeuw. De problemen beginnen in 2080, maar gelukkig is dat nog een lange weg te gaan.

Antwoord

Alleen sinds GPS begon in 1978 u kunt waarschijnlijk aannemen dat elke datum lager dan 78 in deze eeuw valt.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *