Skip to content
This repository has been archived by the owner on May 17, 2021. It is now read-only.

Westaflex WAC Treiber

westaflex edited this page Mar 7, 2014 · 36 revisions

ENGLISH Version

Table of Contents

Einleitung

In der SHK Industrie hat sich der Modbus zu einem De-Facto-Standard entwickelt, da es sich um ein offenes Protokoll handelt. Im Modbus ASCII wird keine Binärfolge, sondern ASCII-Code übertragen, dadurch ist er direkt lesbar. Mittels der Westaflex Modbus-Umsetzung können ein Master (z. B. ein PC) und mehrere Slaves (z. B. Mess- und Regelsysteme) verbunden werden. Es gibt prinzipiell zwei Ausführungen: Eine über die serielle Schnittstelle (EIA-232 und EIA-485) und eine für das Ethernet. Bei unseren Geräten kommt nur EIA-485 alias RS-485 zum Einsatz.

Treiber Konzept

Daten und Wertepaare, die mit dem Westaflex Modbus/TCP übertragen werden, können Bit- und Wortinformationen enthalten. Grundsätzlich liegen dazu die Buszykluszeiten erheblich über dem KNX/EIB Feldbus-Klassiker. Insofern kann unsere E/A-Lösung mit Modbus/TCP als erheblich leistungsfähiger angesehen werden.  Nach Definition des Modbus-Protokolls enthält dieses folgende Bestandteile: Geräteadresse: 1 Byte, dann Function Code: 1 Byte. Mit diesem Function Code wird festgelegt, welche Operation auf Grund eines Requests durch den Arduino Server ausgeführt werden soll, sowie letztendlich für die Datensicherung mit CRC: 2 Bytes. Jeder Busteilnehmer besitzt eine eindeutige Adresse, wobei die Adresse 0 für einen Broadcast reserviert ist.

Treiber Konfiguration

This section describes how the host (MCU, PC interface etc) can interface with the WAC chip. Extended messaging is also introduced, which is useful if you need to include additional information such as the Device Number. Note that extended messaging does not extend the size of the data payload, which is fixed at 8 bytes and cannot be altered.

Kennzeichnung Modbus Variable Datenadresse Werte
Frostschutz 01h_Read_Coils 0 1-aktiv, 0-passiv
Frostschutzfunktion des Plattenwärmetauschers
Feuer 01h_Read_Coils 1 1-aktiv, 0-passiv
Überhitzungsalarm Anzeige
Filtertausch 01h_Read_Coils 2 1-aktiv, 0-passiv
Filter verschmutzt, Austausch Signal
Ventilation 01h_Read_Coils 3 1-aktiv, 0-passiv
Lüfteralarm Fehlfunktions-Anzeige
Spannung 01h_Read_Coils 5 1-aktiv, 0-passiv
Niedrige Stromspannung Hinweis
Temperatur 01h_Read_Coils 6 1-aktiv, 0-passiv
Sensor Temperatur Alarmmeldung
Abluftwärme 01h_Read_Coils 7 1-aktiv, 0-passiv
Hinweisgeber zur Abluft-Temperatur
Zuluftwärme 01h_Read_Coils 8 1-aktiv, 0-passiv
Hinweissignal des Zuluft-Temperatursensors
Feuchtigkeit 01h_Read_Coils 9 1-aktiv, 0-passiv
DTJ(100) Feuchtigkeits-Alarm (Sensormeldung ab einer Sättigung von 70%)
Wasserrücklauf 01h_Read_Coils 10 1-aktiv, 0-passiv
Wassertemperatur-Sensor im Rücklauf
Außentemperatur 01h_Read_Coils 11 1-aktiv, 0-passiv
Außentemperaturfühler mit Alarm (Geräteabschaltung bei Temperaturen unter dem Gefrierpunkt)
Lüfterstatus 01h_Read_Coils 12 1-aktiv, 0-passiv
Lüftermotoren Status eingeschaltet
Klappenantrieb Status 04h_Read_Input 13 0-90
Antrieb und Status der Außenluftklappe
Vorheizregister 01h_Read_Coils 14 1-aktiv, 0-passiv
Anzeige vom Status des Vorheizregisters
Heizelement 01h_Read_Coils 15 1-aktiv, 0-passiv
Monitor zur Heizleistung
Geschwindigkeit 06h_Write_Holding_Register 16 0, 1, 2, 3
Einstellbereich der Lüfter-Geschwindigkeit
Zuluft-Temperatur 06h_Write_Holding_Register 17 0-30
Einstellbereich der Zuluft-Temperatur
Feuchtigkeitssensor 04h_Read_Input 18 0-99
DTJ(100) Wertebereich des Feuchtigkeitssensors
Zuluft-Motor 04h_Read_Input 19 0-3
Geschwindigkeit des Zuluft-Motors
Abluft-Motor 04h_Read_Input 20 0-3
Geschwindigkeit des Abluft-Motors
Temperatur-Anzeige 04h_Read_Input 21 Hex: E0
Anzeige der Temperatursensoren Zuluftstrecke
Temperatursensor 04h_Read_Input 22 Hex: E0
DTJ(100) Anzeige des Temperatur Wertebereiches
Abluft-Temperatur 04h_Read_Input 23 Hex: E0
Wert des Abluft-Temperatursensors
Außenluft-Sensor 04h_Read_Input 24 Hex: FFEC
Anzeige und Wertebereich des Außenluft-Temperatursensors
Kondensat 04h_Read_Input 25 Hex: FFEC
Anzeige der Kondensattemperatur

Beispiele

to handle many slaves in RTU mode, non blocking connections and RTS flow control.....

modbus_t *mb;

  uint16_t tab_reg[32];
  mb = modbus_new_tcp("127.0.0.1", 1502);
  modbus_connect(mb);
  /* Read 5 registers from the address 0 */
  modbus_read_registers(mb, 0, 5, tab_reg);
  modbus_close(mb);
  modbus_free(mb);

See Examples of typical WAC Bindings, if you have any suggestions or questions don't hesitate to contact us or use the openHAB google group. The snapshot version of our industry4.0 binding can be downloaded, together with the rest of openhab.

Hinweise

Auf der WAC Steuerungsplatine befinden sich zwei Dip-Switches für die Terminierungswiderstände. Bei Anschluss eines Modbus-Gerätes soltten beide auf ON eingestellt sein. Achtung: vor Öffnen der Gehäuseklappe das WAC Geräte komplett vom Stromnetz trennen. Inspiration gefällig?! →Original Westaflex Apps...

Installation


User Interfaces


Community

(link to openHAB forum)

Development



Misc


Samples

A good source of inspiration and tips from users gathered over the years. Be aware that things may have changed since they were written and some examples might not work correctly.

Please update the wiki if you do come across any out of date information.

Use case examples

Collections of Rules on a single page

Single Rules

Scripts


Release Notes

Clone this wiki locally