Betriebsanleitung (16461)
BLUESONIC
14
Wilh. Lambrecht GmbH Germany
15
Anhang
15.1 Kommunikation im NMEA-Protokoll
15.1.1
Aufbau
Ein NMEA-Befehl wird durch die ID eingeleitet und mit den Zeichen CR (0Dh)
abgeschlossen. Zeichen, die einen ASCII-Wert repräsentieren, stehen in einfachen
Anführungszeichen.
15.1.2
Telegramm Wind (NMEA)
Antwort:
$WIMWV,xxx.x,R,xxx.x,M,A*xx(CR)(LF)
$WIMWV,
fix
xxx.x
Windrichtung
,R,
fix
xxx.x
Windgeschwindigkeit
,
fix
M
m/s
,
fix
A
A = gültiger Wert, V = ungültiger Wert
*
Prüfsummenkennung
xx
Prüfsumme (highbyte first)
CR
Carriage Return
LF
Line Feed
Telegramm im Fehlerfall
Antwort:
$WIMWV,,R,,M,V*(CR)(LF)
$WIMWV,
fix
,R,
fix
,
fix
M
m/s
,
fix
V
V = ungültiger Wert
*
Prüfsummenkennung
xx
Prüfsumme (highbyte first)
CR
Carriage Return
LF
Line Feed
Beispiel:
Das Telgramm: $WIMWV,230.6,R,003.4,M,A*23
bedeutet der Wind kommt mit 3,4 m/s aus 230,6°
Hinweis:
Bei der Entwicklung eines NMEA Decoders sollte nicht von festen Feldlängen ausgegangen
werden. Die NMEA Definition geht von einer variablen Feldlänge aus. Das Kommazeichen
(',') dient als Feldtrenner. Numerische Werte in einem Feld können unterschiedlich dargestellt
werden. Wird ein Feld nicht ausgegeben, so hat es eine Länge von 0 Zeichen ( ,,).
Die Checksumme „CS“ wird als 2-Zeichen-Hexadezimalwert ausgegeben. Sie errechnet sich
als XOR Verknüpfung aller Zeichen des Datensatzes zwischen „$“ und „*“. D. h. „$“ und „*“
fließen nicht in die Berechnung ein.
<CR>...carriage return (hex0D),
<LF>... linefeed (hex 0A)