Umbau des Wettersensorempfängers von ELV
© 2006-2009 Helmut Bayerlein, dc3yc [at] darc [.] de
Beim Decodieren und Entschlüsseln des Sensorprotokolls hat mir der Wettersensorempfänger aus Heft 06/2000 des ELV-Journals sehr gute Hilfe geleistet. Allerdings funktioniert er ursprünglich nur für die Sensoren, die auf 433MHz senden. Da die neuen Sensoren auf 868MHz ihre Daten übertragen, versuchte ich, ein 868MHz-Empfangsmodul anzuschließen. Nun gab es zwei Probleme: das höherfrequente Modul benötigt nur 3Volt Betriebsspannung, während das alte mit 5Volt arbeitete. Folglich war der Datenpegel auch kleiner. Da gerade kein 3V-Spannungsregler zur Hand war, schaltete ich eine rote Low-Current-LED in die Spannungsversorgung. Dies ergab den erforderlichen Spannungsabfall und gleichzeitig dient sie als Betriebsanzeige. Die ursprünglich vorhandenen Schmitt-Trigger-Gatter zur Flankenregenerierung 74HC14 schalten bei 1/3 und 2/3 Betriebsspannung. Somit liegt der Schwellwert, um High-Pegel zu erkennen, über 3Volt. Deswegen muss dieser Baustein gegen den TTL-kompatiblen Typ 74HCT14 ausgetauscht werden. Seine Schwellwerte liegen bei ca. 1.4Volt, um High-Pegel zu erkennen, was im Ausgangsbereich des Moduls RX868-3V liegt. Mittels eines kleinen Kippschalters lassen sich die beiden Datenausgänge der Empfänger nun auf den Decoder umschalten.
<Schaltbild folgt!>
Das Protokoll zwischen PC und Wettersensorempfänger ist recht einfach:
Baudrate 19200Bd, 8 Datenbits mit gerader Parity, das 7.Datenbit ist immer
gesetzt. Es werden immer 8 Bytes pro Wettertelegramm übertragen, wobei das erste
Byte 02 und das letzte Byte 03 sind. Die dazwischen liegenden 6 Bytes sind die
Nutzdaten.
Im 1. Nutzdatenbyte ist in Bit 4..6 der Sensortyp
codiert, im Bit 3 die Protokollversion (normalerweise 1) und in Bit 0..2 die
Sensoradresse.
Beim Temperatursensor steht im 2. und 3. Byte die Temperatur (in 1/10 Grad,
negative im Zweierkomplement) und im 4. die Feuchte (in Prozent). Falls es ein
Innensensor ist, würde im 5. und 6. Byte der Luftdruck stehen, ansonsten zweimal
00.
Beim Regensensor ist der Zählerwert in Byte 2 und 3 codiert. Die restlichen drei
Bytes sind 00.
Wird ein Windsensortelegramm empfangen, steht im 2. und 3. Byte die
Windgeschwindigkeit sowie im 5. und 6. Byte die Windrichtung. Im Byte 4 ist
möglicherweise die Schwankungsbreite codiert.
Licht- und Strahlungssensoren konnten nicht getestet werden, da ich keine
besitze.