Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

wetter:ws500:datensatzbeschreibung [15.02.2009 20:30. ] – angelegt djangowetter:ws500:datensatzbeschreibung [04.01.2011 15:31. ] (aktuell) – Formatierung überarbeitet michi
Zeile 1: Zeile 1:
 +====== Protokoll und Datensatzbeschreibung ======
 +Nachfolgend ist das Protokoll und Datensatzbeschreibung der ELV-Wetterstation ws500/ws550/ws777 beschrieben.
  
 +Die Datenkommunikation mit der Wetterstation erfolgt mit Hilfe von hexadezimalen Zahlen, die entweder einem bestimmten Steuercodewort entsprechen, oder den/die eigentlichen Messwerte repräsentieren.
 +
 +Die Messwerte können in der Regel direkt in die dezimalen Messwerte umgerechnet werden.
 +Die Kommandos zur Datenkommunikation erfolgt durch eine Kennzeichnung am Satzanfang durch die beiden Werte FC FE sowie am Ende durch FC.
 +
 +Werte, die gleich der Bytes FC FE und F8 sind, werden mit Hilfe des "Escape" Byte F8 markiert. Dabei wird F8 dem eigentlichen Rückgabewert
 +vorangestellt und der Messwert um 1 erhöht.
 +
 +===== Escape-Handling =====
 +Das nachfolgende Besipiel veranschaulicht dieses Escape-Handling:
 +<code>
 +F7 => F7
 +F8 => F8 F9
 +F9 => F9
 +FA => FA
 +FB => FB
 +FC => F8 FD
 +FD => FD
 +FE => F8 FF
 +FF => FF
 +</code>
 +
 +Bei negativen Temperaturen ist das erste Byte immer FF und das zweite Byte entspricht dem Messwert minus 25,5 
 +
 +Beispiel: 
 +**FF F6 => 255 246 | 246 - 255 = - 9 | Messwert entspricht  -0,9 °C**
 +
 +Bei Temperaturen größer 25,5 °C ist das erste Byte immer 01.
 +===== Datensatzbeschreibungen =====
 +==== aktueller Datensatz ====
 +Der aktuelle Meßwertedatensatz ist folgendermaßen aufgebaut:
 +
 +Die Byte-Nummerierung bezieht sich nur auf
 +<code>Feld-Nummer: 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
 +Verwendung :       T1 T1 F1 T2 T2 F2 T3 T3 F3 T4 T4 F4 T5 T5 F5 T6 T6 F6 T7 T7 F7 T8 T8 F8 T9 T9 F9 RA IN WI ND *1 *1 SONNE TI TI FI DRUCK WW ABSCHLUSS-CODE 
 +Muster-Satz: FE 33 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 AD 48 00 02 00 00 2C 00 00 96 00 EE 39 03 B6 01 FC
 +
 + 
 +Byte 00      = FE (Kommunikation mit der WS starten) 
 +Byte 01      = 33 d.h. aktuellen Datensatz abholen 
 +Byte 02 - 04 = Fühler 1 Temperatur (02 und 03) und Feuchte (04) 
 +Byte 05 - 07 = Fühler 2 Temperatur (05 und 06) und Feuchte (07) 
 +Byte 08 - 10 = Fühler 3 Temperatur (08 und 09) und Feuchte (10) 
 +Byte 11 - 13 = Fühler 4 Temperatur (11 und 12) und Feuchte (13) 
 +Byte 14 - 16 = Fühler 5 Temperatur (14 und 15) und Feuchte (16) 
 +Byte 17 - 19 = Fühler 6 Temperatur (17 und 18) und Feuchte (19) 
 +Byte 20 - 22 = Fühler 7 Temperatur (20 und 21) und Feuchte (22) 
 +Byte 23 - 25 = Fühler 8 Temperatur (23 und 24) und Feuchte (25) 
 +Byte 26 - 28 = Kombiaußenfühler Temperatur (26 und 27) und Feuchte (28) 
 +Byte 29 - 30 = Regenwippenzähler
 +Byte 31 - 32 = Windgeschwindigkeit (in m/s) 
 +Byte 33 - 34 = Windrichtung (33){Winkel = Wert *5 in °} und Schwankung (34) {Winkel = Wert *5 in °} 
 +Byte 35 - 36 = Sonnenscheindauer in Minuten (fortlaufender Minutenzähler)
 +Byte 37 - 39 = Innenfühler Temperatur (37 und 38) und Feuchte (39) 
 +Byte 40 - 41 = Luftdruck (absolut) in hPa 
 +Byte 42      = ?? ist das die Wetterwilli-Kodierung?                                                {Kodierung noch unklar}
 +Byte 43      = FC Abschluss-Byte
 +</code>
 +==== historischer Datensatz ====
 +Die Byte-Nummerierung bezieht sich nur auf
 +<code>Feld-Nummer: 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
 +Verwendung :             TI ME T1 T1 F1 T2 T2 F2 T3 T3 F3 T4 T4 F4 T5 T5 F5 T6 T6 F6 T7 T7 F7 T8 T8 F8 T9 T9 F9 RA IN WI ND *1 *1 SONNE TI TI FI DRUCK WW ABSCHLUSS-CODE 
 +Muster-Satz: FE 31 80 00 01 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 AD 48 00 02 00 00 2C 00 00 96 00 EE 39 03 B6 01 FC
 +
 + 
 +Byte 00      = FE (Kommunikation mit der WS starten) 
 +Byte 01      = 31 d.h. historischen Datensatz abholen 
 +Byte 02 - 03 = ist immer 80 00 
 +bytw 04 - 05 = Alter des Datensatzes in Minuten 
 +Byte 06 - 08 = Fühler 1 Temperatur (06 und 07) und Feuchte (08) 
 +Byte 06 - 08 = Fühler 2 Temperatur (09 und 10) und Feuchte (11) 
 +Byte 09 - 11 = Fühler 3 Temperatur (12 und 13) und Feuchte (14) 
 +Byte 12 - 14 = Fühler 4 Temperatur (15 und 16) und Feuchte (17) 
 +Byte 15 - 17 = Fühler 5 Temperatur (18 und 19) und Feuchte (20) 
 +Byte 18 - 20 = Fühler 6 Temperatur (21 und 22) und Feuchte (23) 
 +Byte 21 - 23 = Fühler 7 Temperatur (24 und 25) und Feuchte (26) 
 +Byte 24 - 26 = Fühler 8 Temperatur (27 und 28) und Feuchte (29) 
 +Byte 27 - 29 = Kombiaußenfühler Temperatur (30 und 31) und Feuchte (32) 
 +Byte 33 - 34 = Regenwippenzähler 
 +Byte 35 - 36 = Windgeschwindigkeit (in m/s) 
 +Byte 37 - 38 = Windrichtung (37){Winkel = Wert *5 in °} und Schwankung (38) {Winkel = Wert *5 in °} 
 +Byte 39 - 40 = Sonnenscheindauer in Minuten (fortlaufender Minutenzähler)
 +Byte 41 - 43 = Innenfühler Temperatur (41 und 42) und Feuchte (43) 
 +Byte 44 - 45 = Luftdruck (absolut) in hPa 
 +Byte 46      = ?? ist das die Wetterwilli-Kodierung?                                                {Kodierung noch unklar}
 +Byte 47      = FC Abschluss-Byte
 +</code>
 +==== Konfigurationsdatensatz ====
 +<code>00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 
 +      T1 T2 T3 T4 T5 T6 T7 T8 T9 DD HOEHE WIPPE ABSCHLUSS-CODE 
 +FE 32 00 00 00 00 00 00 00 00 10 05 01 F7 01 27 FC
 +
 +Byte 00      = FE (Kommunikation mit der WS starten) 
 +Byte 01      = 32 d.h. aktuelle Konfiguration auslesen 
 +Byte 02      = Fühler 1 vorhanden? (00 == nein, 10 == ja >10 == Dropouts (Wert - 10 == Anzahl der Dropouts)
 +Byte 03      = Fühler 2 vorhanden? (00 == nein, 10 == ja >10 == Dropouts (Wert - 10 == Anzahl der Dropouts)
 +Byte 04      = Fühler 3 vorhanden? (00 == nein, 10 == ja >10 == Dropouts (Wert - 10 == Anzahl der Dropouts)
 +Byte 05      = Fühler 4 vorhanden? (00 == nein, 10 == ja >10 == Dropouts (Wert - 10 == Anzahl der Dropouts)
 +Byte 06      = Fühler 5 vorhanden? (00 == nein, 10 == ja >10 == Dropouts (Wert - 10 == Anzahl der Dropouts)
 +Byte 07      = Fühler 6 vorhanden? (00 == nein, 10 == ja >10 == Dropouts (Wert - 10 == Anzahl der Dropouts)
 +Byte 08      = Fühler 7 vorhanden? (00 == nein, 10 == ja >10 == Dropouts (Wert - 10 == Anzahl der Dropouts)
 +Byte 09      = Fühler 8 vorhanden? (00 == nein, 10 == ja >10 == Dropouts (Wert - 10 == Anzahl der Dropouts)
 +Byte 10      = Kombiaußenfühler vorhanden? (00 == nein, 10 == ja >10 == Dropouts (Wert - 10 == Anzahl der Dropouts)
 +Byte 11      = Intervall der abgespeicherten Datensätze  
 +Byte 12 - 13 = Standort der Station über NN in mtr.
 +Byte 14 - 15 = Faktor == Wert /1000 für die Berechnung der Regenmenge pro Wippenschlag
 +Byte 16      = FC Abschluss-Byte
 +</code>
 +
 +[[wetter:ws500:start|Inhaltsverzeichnis der WS500 Beschreibung]]