# THERMOKON\_WRF07

## `THERMOKON_WRF07` (FB)

`FUNCTION_BLOCK` THERMOKON\_WRF07

### Darstellung

<figure><img src="https://879424349-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQR4vCFzt6ixgsqlR3pdR%2Fuploads%2Fim8QX7wUXfxvvjjVIfxF%2FHVACModbus.THERMOKON_WRF07.png?alt=media&#x26;token=b85df1aa-14b2-436f-818c-ecb21137d147" alt=""><figcaption></figcaption></figure>

### Allgemeines

> Hinweise:

> Durch den Sollwert / Parameter `eMode` wird aktuell (16.05.2022) nur die Bildung der Raum-Solltemperatur `rSetpTemp` sowie des Solltemperatur-Offsets `rOffset` beeinflusst.

> Die Konfigurationsregister (R0 - R69) bzw. -coils (C0 - C5) werden stets für den Betrieb des WRF07 als reines Raumbediengerät (d.h. ohne eigene, interne Regelung) eingestellt.

> **\* Konfiguration des Geräts \***

> In den Registern 0 - 69 bzw. in den Coils 0 - 5 ist die aktuelle Konfiguration des Geräts abgelegt. Diese wird einmalig beim Neustart / einmalig bei jeder ansteigenden Flanke (xUpdateConfigRead) / zyklisch (tTimeUpdateConfigRead) gelesen und in die Arrays `_arwKonfiguration_0` bzw. `arbyKonfiguration_1` abgelegt.

> Im laufenden Betrieb werden die Register 2 - 69 bzw. die Coils 0 - 3 bei einmalig beim Neustart / bei Wertänderungen neu beschrieben (`_arwKonfiguration_2` bzw. `arbyKonfiguration_3`). Zusätzlich kann dieser schreibende Zugriff über eine ansteigende Flanke am Eingang `xUpdateConfigWrite` ausgelöst werden. Dieser schreibende Zugriff darf nicht zyklisch erfolgen, da die Anzahl der Schreibzugriffe begrenzt ist (EEPROM).

> Die Konfiguration des Geräts lässt sich nicht in den Werkszustand zurück versetzen, in den Arrays `_arwKonfiguration_4` sowie `_arbyKonfiguration_5` sind die Default-Werte gesichert und können über den Eingang `xResDefault` in das Gerät geladen / geschrieben werden.

> Sollwert / Parameter `rOffsetRange`: Eine Änderung wird sofort fehlerfrei übertragen, jedoch wird der neue Offset erst nach einem Kaltstart des WRF07 verwandt.

InOut:

| Scope       | Name                    | Type                                         | Initial                                                            | Comment                                                                                                                                                       |
| ----------- | ----------------------- | -------------------------------------------- | ------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Input       | `xEn`                   | `BOOL`                                       | TRUE                                                               | Freigabe / Sperrung der Kommunikation (TRUE = Freigabe)                                                                                                       |
| Input       | `byUnitId`              | `BYTE`                                       | 0                                                                  | <p>Adresse des Geräts (1 .. 247) (1 .. 63 über DIP-<br>Schalter, 1 .. 247 über Modbus-Befehle)</p>                                                            |
| Input       | `xUpdateActual`         | `BOOL`                                       | FALSE                                                              | <p>Aktualisierung der Istwerte (bei jeder ansteigenden Flanke<br>) (Bereich: Betrieb)</p>                                                                     |
| Input       | `xUpdateSetp`           | `BOOL`                                       | FALSE                                                              | <p>Aktualisierung der Sollwerte (bei jeder ansteigenden Flanke<br>)</p>                                                                                       |
| Input       | `xUpdateConfigRead`     | `BOOL`                                       | FALSE                                                              | <p>Aktualisierung der Konfiguration (lesender Zugriff) (bei<br>jeder ansteigenden Flanke)</p>                                                                 |
| Input       | `xUpdateConfigWrite`    | `BOOL`                                       | FALSE                                                              | <p>Aktualisierung der Konfiguration (schreibender Zugriff) (<br>bei jeder ansteigenden Flanke)</p>                                                            |
| Input       | `xUpdateStates`         | `BOOL`                                       | FALSE                                                              | <p>Aktualisierung der Zustände (Register 256 - 257)(bei<br>jeder ansteigenden Flanke)</p>                                                                     |
| Input       | `xResDefault`           | `BOOL`                                       | FALSE                                                              | <p>Rücksetzung der Konfiguration in den Dafault-Zustand (<br>Register 0 - 69) (Coils 0 - 5)(bei jeder ansteigenden<br>Flanke)</p>                             |
| Input       | `rSetpTempBase`         | `REAL`                                       | 22.0                                                               | Basis - Soll-Temperatur (Grad Celsius)                                                                                                                        |
| Input       | `xLED9`                 | `BOOL`                                       | FALSE                                                              | Steuerung der LED9 (TRUE = Ein)                                                                                                                               |
| Input       | `xEnOffset`             | `BOOL`                                       | FALSE                                                              | <p>Freigabe / Sperrung des Einflusses des Sollwertstellers (<br><code>rOffset</code>) auf die Solltemperatur (<code>rSetpTemp</code>)</p>                     |
| Input       | `xResError`             | `BOOL`                                       | FALSE                                                              | <p>Reinitialisierung des Ausgangs <code>eErrorCodeCom</code> (bei jeder<br>ansteigenden Flanke)</p>                                                           |
| Inout       | `ModbusClient`          | `ModbusClientBase`                           |                                                                    | Client des Geräts                                                                                                                                             |
| Output      | `eDeviceType`           | THERMOKON\_WRF07\_DEVICE\_TYPE               |                                                                    | Typ des Geräts                                                                                                                                                |
| Output      | `eUnitFb`               | THERMOKON\_WRF07\_UNIT                       |                                                                    | Aktuelles Einheiten-System des Geräts — Rückmeldung                                                                                                           |
| Output      | `eRegulationModeFb`     | THERMOKON\_WRF07\_REGULATION\_MODE\_FEEDBACK |                                                                    | Aktueller Regler-Modus des Geräts                                                                                                                             |
| Output      | `rRoomTemp`             | `REAL`                                       |                                                                    | Aktuelle Raumtemperatur in Grad Celsius                                                                                                                       |
| Output      | `rSetpTempBaseFb`       | `REAL`                                       |                                                                    | Basis - Soll-Temperatur (Grad Celsius) — Rückmeldung                                                                                                          |
| Output      | `rOffset`               | `REAL`                                       |                                                                    | Aktueller Offset der Raum-Solltemperatur in K                                                                                                                 |
| Output      | `rSetpTemp`             | `REAL`                                       |                                                                    | Aktuelle Solltemperatur in Grad Celsius                                                                                                                       |
| Output      | `rRelHumidity`          | `REAL`                                       |                                                                    | Relative Raumfeuchtigkeit in Prozent                                                                                                                          |
| Output      | `xSensorOffsetInDevice` | `BOOL`                                       |                                                                    | <p>Anzeige, ob der Abgleich der Sensoren im Gerät erfolgen muss<br>(TRUE = Abgleich im Gerät erforderlich, FALSE = Abgleich im<br>FB erforderlich)</p>        |
| Output      | `rDewPointTemp`         | `REAL`                                       |                                                                    | Taupunkttemperatur in Grad Celsius oder Fahreinheit                                                                                                           |
| Output      | `rAbsHumidity`          | `REAL`                                       |                                                                    | Absolute Raumfeuchtigkeit in g/m3 oder grain/ft3                                                                                                              |
| Output      | `rEnthalpy`             | `REAL`                                       |                                                                    | Enthalpie in kJ/kg oder BTU/lb3                                                                                                                               |
| Output      | `xButton1`              | `BOOL`                                       | FALSE                                                              | <p>Betätigung der Taste 1 (RAW, Impuls mit Zeitdauer<br><code>tTimeButtonPulse</code>)</p>                                                                    |
| Output      | `eFunctionButton1Fb`    | THERMOKON\_WRF07\_BUTTON\_FUNCTION           |                                                                    | Funktion der Taste 1 — Rückmeldung                                                                                                                            |
| Output      | `xLED9Fb`               | `BOOL`                                       | FALSE                                                              | Zustand der LED 9 — Rückmeldung (TRUE = Ein)                                                                                                                  |
| Output      | `eFunctionLED9Fb`       | THERMOKON\_WRF07\_LED\_FUNCTION              |                                                                    | Funktion der LED 9 — Rückmeldung                                                                                                                              |
| Output      | `xDI1`                  | `BOOL`                                       | FALSE                                                              | <p>Zustand des digitalen Eingangs 1 (Zuordnung je nach<br>Funktion <code>eFunctionDI1</code>) (FALSE = Offen, TRUE =<br>Geschlossen)</p>                      |
| Output      | `eFunctionDI1Fb`        | THERMOKON\_WRF07\_DIGITAL\_INPUT\_FUNCTION   |                                                                    | Funktion des digitalen Eingangs 1 — Rückmeldung                                                                                                               |
| Output      | `xDI2`                  | `BOOL`                                       | FALSE                                                              | <p>Zustand des digitalen Eingangs 2 (Zuordnung je nach<br>Funktion <code>eFunctionDI2</code>) (FALSE = Offen, TRUE =<br>Geschlossen)</p>                      |
| Output      | `eFunctionDI2Fb`        | THERMOKON\_WRF07\_DIGITAL\_INPUT\_FUNCTION   |                                                                    | Funktion des digitalen Eingangs 2 — Rückmeldung                                                                                                               |
| Output      | `xDI3`                  | `BOOL`                                       | FALSE                                                              | <p>Zustand des digitalen Eingangs 3 (Zuordnung je nach<br>Funktion <code>eFunctionDI1</code>) (FALSE = Offen, TRUE =<br>Geschlossen)</p>                      |
| Output      | `eFunctionDI3Fb`        | THERMOKON\_WRF07\_DIGITAL\_INPUT\_FUNCTION   |                                                                    | Funktion des digitalen Eingangs 3 — Rückmeldung                                                                                                               |
| Output      | `xDI4`                  | `BOOL`                                       | FALSE                                                              | <p>Zustand des digitalen Eingangs 4 (Zuordnung je nach<br>Funktion <code>eFunctionDI2</code>) (FALSE = Offen, TRUE =<br>Geschlossen)</p>                      |
| Output      | `eFunctionDI4Fb`        | THERMOKON\_WRF07\_DIGITAL\_INPUT\_FUNCTION   |                                                                    | Funktion des digitalen Eingangs 4 — Rückmeldung                                                                                                               |
| Output      | `xAlarm`                | `BOOL`                                       | FALSE                                                              | Sammelstörung (TRUE = Störung)                                                                                                                                |
| Output      | `xAlarmCom`             | `BOOL`                                       | FALSE                                                              | Sammelstörung - Kommunikation (TRUE = Störung)                                                                                                                |
| Output      | `eErrorCodeCom`         | ModbusErrorCode                              |                                                                    | Fehlercode - Kommunikation (0 = kein Fehler)                                                                                                                  |
| Output      | `xBusy`                 | `BOOL`                                       |                                                                    | Kommunikationsanzeige (TRUE = Kommunikation)                                                                                                                  |
| Input Const | `eUnit`                 | THERMOKON\_WRF07\_UNIT                       | THERMOKON\_WRF07\_UNIT.SI                                          | Aktuelles Einheiten-System des Geräts                                                                                                                         |
| Input Const | `rRoomHumityOffset`     | `REAL`                                       | 0.0                                                                | <p>Offset der Raumfeuchte (zur Kalibrierung des Feuchtesensors<br>) in Prozent</p>                                                                            |
| Input Const | `eFunctionLED9`         | THERMOKON\_WRF07\_LED\_FUNCTION              | THERMOKON\_WRF07\_LED\_FUNCTION.EXTERNAL\_CONTROL                  | Funktion der LED 9                                                                                                                                            |
| Input Const | `eFunctionDI4`          | THERMOKON\_WRF07\_DIGITAL\_INPUT\_FUNCTION   | THERMOKON\_WRF07\_DIGITAL\_INPUT\_FUNCTION.NORMALLY\_OPEN\_CONTACT | Funktion des digitalen Eingangs 4                                                                                                                             |
| Input Const | `eFunctionDI3`          | THERMOKON\_WRF07\_DIGITAL\_INPUT\_FUNCTION   | THERMOKON\_WRF07\_DIGITAL\_INPUT\_FUNCTION.NORMALLY\_OPEN\_CONTACT | Funktion des digitalen Eingangs 3                                                                                                                             |
| Input Const | `eFunctionDI2`          | THERMOKON\_WRF07\_DIGITAL\_INPUT\_FUNCTION   | THERMOKON\_WRF07\_DIGITAL\_INPUT\_FUNCTION.NORMALLY\_OPEN\_CONTACT | Funktion des digitalen Eingangs 2                                                                                                                             |
| Input Const | `eFunctionDI1`          | THERMOKON\_WRF07\_DIGITAL\_INPUT\_FUNCTION   | THERMOKON\_WRF07\_DIGITAL\_INPUT\_FUNCTION.NORMALLY\_OPEN\_CONTACT | Funktion des digitalen Eingangs 1                                                                                                                             |
| Input Const | `eFunctionButton1`      | THERMOKON\_WRF07\_BUTTON\_FUNCTION           |                                                                    | Funktion der Taste 1                                                                                                                                          |
| Input Const | `rSetpTempMax`          | `REAL`                                       | 26.0                                                               | Absoluter Maximalwert - Soll-Temperatur (Grad Celsius)                                                                                                        |
| Input Const | `rSetpTempMin`          | `REAL`                                       | 18.0                                                               | Absoluter Minimalwert - Soll-Temperatur (Grad Celsius)                                                                                                        |
| Input Const | `rSetpTempBaseReset`    | `REAL`                                       | 22.0                                                               | Basis - Soll-Temperatur in Grad Celsius nach einem Reset                                                                                                      |
| Input Const | `rOffsetRange`          | `REAL`                                       | 3.0                                                                | <p>Verstellbereich des Sollwert - Potentiometers (symmetrisch,<br>3.0 = +/. 3.0K)</p>                                                                         |
| Input Const | `rRoomTempOffset`       | `REAL`                                       | 0.0                                                                | <p>Offset der Raumtemperatur (zur Kalibrierung des<br>Temperatursensors) in K</p>                                                                             |
| Input Const | `eButton1OutpMode`      | THERMOKON\_WRF07\_BUTTON\_OUTP\_MODE         | THERMOKON\_WRF07\_BUTTON\_OUTP\_MODE.RAW                           | Betriebsart des Ausgangs `xButton1` (RAW, PULSE)                                                                                                              |
| Input Const | `eMode`                 | THERMOKON\_WRF07\_MODE                       | THERMOKON\_WRF07\_MODE.ROOM\_CONTROL\_UNIT                         | <p>Generelle Betriebsart des Geräts (ROOM\_CONTROL\_UNIT: Gerät<br>dient als RBG, INTERNAL\_REGULATION: Sollwertbildung /<br>Temperaturregelung im Gerät)</p> |
| Input Const | `tTimeButtonPulse`      | `TIME`                                       | TIME#1s0ms                                                         | <p>Zeitdauer des Impulses am Ausgang, falls die zugeordnete<br>Taste betätigt wurde</p>                                                                       |
| Input Const | `tTimeUpdateStates`     | `TIME`                                       | TIME#500ms                                                         | <p>Updateintervall für die Vorgänge, die durch den Eingang<br><code>xUpdateStates</code> beeinflusst werden</p>                                               |
| Input Const | `tTimeUpdateConfig`     | `TIME`                                       | TIME#0ms                                                           | <p>Updateintervall für die Vorgänge, die durch den Eingang<br><code>xUpdateConfig</code> beeinflusst werden</p>                                               |
| Input Const | `tTimeUpdateSetp`       | `TIME`                                       | TIME#45s0ms                                                        | <p>Updateintervall für die Vorgänge, die durch den Eingang<br><code>xUpdateSetp</code> beeinflusst werden</p>                                                 |
| Input Const | `tTimeUpdateActual`     | `TIME`                                       | TIME#3s0ms                                                         | <p>Updateintervall für die Vorgänge, die durch den Eingang<br><code>xUpdateActual</code> beeinflusst werden</p>                                               |
