# H1\_4DIOR

## `H1_4DIOR` (FB)

FUNCTION\_BLOCK H1\_4DIOR EXTENDS SlaveModuleDipSwitchOverwrite IMPLEMENTS ISlaveModule

InOut:

| Scope       | Name                           | Type             | Initial             | Comment                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | Inherited from                                                                        |
| ----------- | ------------------------------ | ---------------- | ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
| Input       | `itfModbusConnector`           | IModbusConnector |                     |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | BaseSlave                                                                             |
| Output      | `xInitRunning`                 | `BOOL`           |                     | <p><code>xInitRunning</code> ist <code>TRUE</code>, solange die Initialisierung<br>beim Ersten Start durchgeühr wird.</p>                                                                                                                                                                                                                                                                                                                                                                                                                           | BaseSlave                                                                             |
| Output      | `xInitFinished`                | `BOOL`           |                     | <p><code>xInitFinished</code> ist <code>TRUE</code>, sobald beim Ersten Start<br>alle Parameter an das Modul gesendet sind.</p>                                                                                                                                                                                                                                                                                                                                                                                                                     | BaseSlave                                                                             |
| Output      | `xAlarmCom`                    | `BOOL`           |                     | <p><code>xAlarmCom</code> ist <code>TRUE</code>, wenn es einen<br>Kommunikationsfehler gibt.</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                    | BaseSlave                                                                             |
| Output      | `xBusy`                        | `BOOL`           |                     | <p><code>xBusy</code> ist <code>TRUE</code>, wenn ein Modbus Request ausgeführt<br>wird.</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                        | BaseSlave                                                                             |
| Output      | `usiConfiguredSlaveID`         | `USINT`          |                     | Zeigt die aktuell eingestellte Slave-ID an                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | BaseSlave                                                                             |
| Output      | `eError`                       | ERROR            |                     | Kein Fehler = `ERROR.No_Error`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | BaseSlave                                                                             |
| Output      | `stDebugOutput`                | DebugOutput      |                     |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | BaseSlave                                                                             |
| Input       | `xEnable`                      | `BOOL`           | TRUE                | <p>Deaktiviert das Modul und setzt alle Ausgänge auf den<br>Standard Initialisierungswert zurück</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                | BaseSlaveModule                                                                       |
| Input       | `xReinitModule`                | `BOOL`           |                     | <p>Reinitialisiert das Modul und sendet alle Parameter an das<br>Modul</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | BaseSlaveModule                                                                       |
| Input       | `xResetModule`                 | `BOOL`           |                     | <p>Setzt das Modul zurück, löscht den EEPROM Speichert, führt<br>einen Lampentest durch und startet das Modul neu (Achtung:<br>Danach ist Autobauding wieder aktiviert)</p>                                                                                                                                                                                                                                                                                                                                                                         | BaseSlaveModule                                                                       |
| Output      | `wFirmware`                    | `WORD`           |                     | Zeigt die aktuelle Firmware des Modules an                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | BaseSlaveModule                                                                       |
| Output      | `xAuto`                        | `BOOL`           |                     | <p><code>FALSE</code> = Mindestens ein Eingang und/oder ein Ausgang sind<br>im Zustand <code>eManBin <> eManBin.Auto</code>. <code>TRUE</code> = Alle<br>Eingänge und Ausgänge haben den Zustand eManBin =<br>eManBin.Auto (Hinweis: Falls das Übersteuern mittels Dip-<br>Schalter (Hardware) deaktiviert ist und der Ausgang im<br>Zustand <code>eManBin <> eManBin.Auto</code>, bleibt xAuto weiterhin<br><code>TRUE</code>. Auswertung erfolgt je Ausgang. )</p>                                                                                | BaseSlaveModule                                                                       |
| Output      | `xAutoSoftware`                | `BOOL`           |                     | <p><code>FALSE</code> = Mindestens ein Eingang und/oder Ausgang sind<br>mittels Parameter (Software) im Zustand <code>eManBin <>\<br/>eManBin.Auto</code>. <code>TRUE</code> = Alle Eingänge und Ausgänge sind<br>mittels Parameter (Software) im Zustand <code>eManBin =\<br/>eManBin.Auto</code>.</p>                                                                                                                                                                                                                                             | SlaveModuleSoftOverwrite                                                              |
| Output      | `xAutoHardware`                | `BOOL`           |                     | <p><code>FALSE</code> = Mindestens ein Eingang und/oder Ausgang sind<br>mittels Dip-Schalter (Hardware) im Zustand <code>eManBin <>\<br/>eManBin.Auto</code>. <code>TRUE</code> = Alle Eingänge und Ausgänge sind<br>mittels Dip-Schalter (Hardware) im Zustand <code>eManBin =\<br/>eManBin.Auto</code>. (Hinweis: Falls das Übersteuern mittels Dip-<br>Schalter (Hardware) deaktiviert ist und der Ausgang im<br>Zustand <code>eManBin <> eManBin.Auto</code>, bleibt xAuto weiterhin<br><code>TRUE</code>. Auswertung erfolgt je Ausgang. )</p> | SlaveModuleDipSwitchOverwrite                                                         |
| Input       | `xDO1`                         | `BOOL`           |                     | Digitaler Ausgang DO1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |                                                                                       |
| Input       | `xDO2`                         | `BOOL`           |                     | Digitaler Ausgang DO2                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |                                                                                       |
| Input       | `xDO3`                         | `BOOL`           |                     | Digitaler Ausgang DO3                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |                                                                                       |
| Input       | `xDO4`                         | `BOOL`           |                     | Digitaler Ausgang DO4                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |                                                                                       |
| Input Const | `eDO4_ManBin`                  | eManBin          | eManBin.Auto        | Manuelle Übersteuerung des digitalen Ausgangs                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |                                                                                       |
| Input Const | `eDO4_SafeState`               | DOSafeStateMode  | DOSafeStateMode.OFF | Zustand des Ausgangs bei Busausfall                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |                                                                                       |
| Input Const | `xDO4_DeactivateDipSwitch`     | `BOOL`           | FALSE               | <p><code>TRUE</code> = Hardware Handübersteuerung des Dip Schalters<br>deaktiviert</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                              | <p><code>FALSE</code> = Hardware Handübersteuerung des Dip<br>Schalters aktiviert</p> |
| Input Const | `eDO3_ManBin`                  | eManBin          | eManBin.Auto        | Manuelle Übersteuerung des digitalen Ausgangs                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |                                                                                       |
| Input Const | `eDO3_SafeState`               | DOSafeStateMode  | DOSafeStateMode.OFF | Zustand des Ausgangs bei Busausfall                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |                                                                                       |
| Input Const | `xDO3_DeactivateDipSwitch`     | `BOOL`           | FALSE               | <p><code>TRUE</code> = Hardware Handübersteuerung des Dip Schalters<br>deaktiviert</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                              | <p><code>FALSE</code> = Hardware Handübersteuerung des Dip<br>Schalters aktiviert</p> |
| Input Const | `eDO2_ManBin`                  | eManBin          | eManBin.Auto        | Manuelle Übersteuerung des digitalen Ausgangs                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |                                                                                       |
| Input Const | `eDO2_SafeState`               | DOSafeStateMode  | DOSafeStateMode.OFF | Zustand des Ausgangs bei Busausfall                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |                                                                                       |
| Input Const | `xDO2_DeactivateDipSwitch`     | `BOOL`           | FALSE               | <p><code>TRUE</code> = Hardware Handübersteuerung des Dip Schalters<br>deaktiviert</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                              | <p><code>FALSE</code> = Hardware Handübersteuerung des Dip<br>Schalters aktiviert</p> |
| Input Const | `eDO1_ManBin`                  | eManBin          | eManBin.Auto        | Manuelle Übersteuerung des digitalen Ausgangs                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |                                                                                       |
| Input Const | `eDO1_SafeState`               | DOSafeStateMode  | DOSafeStateMode.OFF | Zustand des Ausgangs bei Busausfall                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |                                                                                       |
| Input Const | `xDO1_DeactivateDipSwitch`     | `BOOL`           | FALSE               | <p><code>TRUE</code> = Hardware Handübersteuerung des Dip Schalters<br>deaktiviert</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                              | <p><code>FALSE</code> = Hardware Handübersteuerung des Dip<br>Schalters aktiviert</p> |
| Input Const | `eDI4_ManBin`                  | eManBin          | eManBin.Auto        | Manuelle Übersteuerung des digitalen Eingangs                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |                                                                                       |
| Input Const | `xDI4Negation`                 | `BOOL`           | FALSE               | Negation                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |                                                                                       |
| Input Const | `xDI4_ACVoltageMode`           | `BOOL`           |                     | <p><code>TRUE</code> = Aktiviert eine Verzögerung des Eingangs mit dem<br>definierten Wert von <code>tACModeInputVoltageDelay</code>. <code>FALSE</code><br>= Keine Verzögerung</p>                                                                                                                                                                                                                                                                                                                                                                 |                                                                                       |
| Input Const | `eDI3_ManBin`                  | eManBin          | eManBin.Auto        | Manuelle Übersteuerung des digitalen Eingangs                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |                                                                                       |
| Input Const | `xDI3Negation`                 | `BOOL`           | FALSE               | Negation                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |                                                                                       |
| Input Const | `xDI3_ACVoltageMode`           | `BOOL`           |                     | <p><code>TRUE</code> = Aktiviert eine Verzögerung des Eingangs mit dem<br>definierten Wert von <code>tACModeInputVoltageDelay</code>. <code>FALSE</code><br>= Keine Verzögerung</p>                                                                                                                                                                                                                                                                                                                                                                 |                                                                                       |
| Input Const | `eDI2_ManBin`                  | eManBin          | eManBin.Auto        | Manuelle Übersteuerung des digitalen Eingangs                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |                                                                                       |
| Input Const | `xDI2Negation`                 | `BOOL`           | FALSE               | Negation                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |                                                                                       |
| Input Const | `xDI2_ACVoltageMode`           | `BOOL`           |                     | <p><code>TRUE</code> = Aktiviert eine Verzögerung des Eingangs mit dem<br>definierten Wert von <code>tACModeInputVoltageDelay</code>. <code>FALSE</code><br>= Keine Verzögerung</p>                                                                                                                                                                                                                                                                                                                                                                 |                                                                                       |
| Input Const | `eDI1_ManBin`                  | eManBin          | eManBin.Auto        | Manuelle Übersteuerung des digitalen Eingangs                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |                                                                                       |
| Input Const | `xDI1Negation`                 | `BOOL`           | FALSE               | Negation                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |                                                                                       |
| Input Const | `xDI1_ACVoltageMode`           | `BOOL`           |                     | <p><code>TRUE</code> = Aktiviert eine Verzögerung des Eingangs mit dem<br>definierten Wert von <code>tACModeInputVoltageDelay</code>. <code>FALSE</code><br>= Keine Verzögerung</p>                                                                                                                                                                                                                                                                                                                                                                 |                                                                                       |
| Input Const | `xUseSafeStateValueBeforeInit` | `BOOL`           | TRUE                |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |                                                                                       |
| Input Const | `tACModeInputVoltageDelay`     | `TIME`           | TIME#100ms          | <p>Eine Änderung des Signals, das an einem DI anliegt, wird<br>erst nach Ablauf dieser Zeit erkannt. (Wird nur verwendet<br>wenn <code>xDI1\_ACVoltageMode</code> <code>TRUE</code> ist,<br><code>xDI2\_ACVoltageMode</code> <code>TRUE</code> ist, <code>xDI3\_ACVoltageMode</code><br><code>TRUE</code> ist oder <code>xDI4\_ACVoltageMode</code> <code>TRUE</code> )</p>                                                                                                                                                                         |                                                                                       |
| Input Const | `tReadFeedback`                | `TIME`           | TIME#5s0ms          | <p>Abfragezeit für Rückmeldungen der digitalen Eingänge und der<br>Handübersteuerung. (Hinweis: Die Abfragezeit darf nicht<br>größer als die Zeit von <code>tBusTimeout</code> sein.)</p>                                                                                                                                                                                                                                                                                                                                                           |                                                                                       |
| Input Const | `tSendDelayAfterInit`          | `TIME`           | TIME#0ms            | Verzögerung zum Versenden der Ausgänge                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |                                                                                       |
| Input Const | `tReadInputs`                  | `TIME`           | TIME#1s0ms          | <p>Abfragezeit für digitale Eingänge (Hinweis: Die Abfragezeit<br>darf nicht größer als die Zeit von <code>tBusTimeout</code> sein.)</p>                                                                                                                                                                                                                                                                                                                                                                                                            |                                                                                       |
| Input Const | `tBusTimeout`                  | `TIME`           | TIME#20s0ms         | `T#0s` = Kein Bus-Timeout = Kein SafeState Modus                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |                                                                                       |
| Input Const | `usiSlaveID`                   | `USINT`          | 10                  | Die Slave-Adresse für das Modul                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |                                                                                       |
| Output      | `xDI1`                         | `BOOL`           |                     | <p>Digitaler Eingang (Abfrage erfolgt im Interval der Angebenen<br>Zeit von <code>tReadInputs</code>)</p>                                                                                                                                                                                                                                                                                                                                                                                                                                           |                                                                                       |
| Output      | `xDI2`                         | `BOOL`           |                     | <p>Digitaler Eingang (Abfrage erfolgt im Interval der Angebenen<br>Zeit von <code>tReadInputs</code>)</p>                                                                                                                                                                                                                                                                                                                                                                                                                                           |                                                                                       |
| Output      | `xDI3`                         | `BOOL`           |                     | <p>Digitaler Eingang (Abfrage erfolgt im Interval der Angebenen<br>Zeit von <code>tReadInputs</code>)</p>                                                                                                                                                                                                                                                                                                                                                                                                                                           |                                                                                       |
| Output      | `xDI4`                         | `BOOL`           |                     | <p>Digitaler Eingang (Abfrage erfolgt im Interval der Angebenen<br>Zeit von <code>tReadInputs</code>)</p>                                                                                                                                                                                                                                                                                                                                                                                                                                           |                                                                                       |
| Output      | `xDO1_Fb`                      | `BOOL`           |                     | <p>Rückmeldung des Digitalen Ausgang DO1. Beachtet die<br>Auswertung der Handübersteuerung. Tatsächlicher Wert - LED<br>Aktiv = <code>TRUE</code>, LED Inaktiv = <code>FALSE</code> (Abfrage erfolgt<br>im Interval der Angebenen Zeit von <code>tReadFeedback</code>)</p>                                                                                                                                                                                                                                                                          |                                                                                       |
| Output      | `xDO2_Fb`                      | `BOOL`           |                     | <p>Rückmeldung des Digitalen Ausgang DO2. Beachtet die<br>Auswertung der Handübersteuerung. Tatsächlicher Wert - LED<br>Aktiv = <code>TRUE</code>, LED Inaktiv = <code>FALSE</code> (Abfrage erfolgt<br>im Interval der Angebenen Zeit von <code>tReadFeedback</code>)</p>                                                                                                                                                                                                                                                                          |                                                                                       |
| Output      | `xDO3_Fb`                      | `BOOL`           |                     | <p>Rückmeldung des Digitalen Ausgang DO3. Beachtet die<br>Auswertung der Handübersteuerung. Tatsächlicher Wert - LED<br>Aktiv = <code>TRUE</code>, LED Inaktiv = <code>FALSE</code> (Abfrage erfolgt<br>im Interval der Angebenen Zeit von <code>tReadFeedback</code>)</p>                                                                                                                                                                                                                                                                          |                                                                                       |
| Output      | `xDO4_Fb`                      | `BOOL`           |                     | <p>Rückmeldung des Digitalen Ausgang DO4. Beachtet die<br>Auswertung der Handübersteuerung. Tatsächlicher Wert - LED<br>Aktiv = <code>TRUE</code>, LED Inaktiv = <code>FALSE</code> (Abfrage erfolgt<br>im Interval der Angebenen Zeit von <code>tReadFeedback</code>)</p>                                                                                                                                                                                                                                                                          |                                                                                       |
| Output      | `eAOO1`                        | eManBin          |                     | <p>Hand - Schalterposition (A)uto (A)us (E)in (Abfrage erfolgt<br>im Interval der Angebenen Zeit von <code>tReadFeedback</code>)</p>                                                                                                                                                                                                                                                                                                                                                                                                                |                                                                                       |
| Output      | `eAOO2`                        | eManBin          |                     | <p>Hand - Schalterposition (A)uto (A)us (E)in (Abfrage erfolgt<br>im Interval der Angebenen Zeit von <code>tReadFeedback</code>)</p>                                                                                                                                                                                                                                                                                                                                                                                                                |                                                                                       |
| Output      | `eAOO3`                        | eManBin          |                     | <p>Hand - Schalterposition (A)uto (A)us (E)in (Abfrage erfolgt<br>im Interval der Angebenen Zeit von <code>tReadFeedback</code>)</p>                                                                                                                                                                                                                                                                                                                                                                                                                |                                                                                       |
| Output      | `eAOO4`                        | eManBin          |                     | <p>Hand - Schalterposition (A)uto (A)us (E)in (Abfrage erfolgt<br>im Interval der Angebenen Zeit von <code>tReadFeedback</code>)</p>                                                                                                                                                                                                                                                                                                                                                                                                                |                                                                                       |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://support.powerio.com/hub/codesys-hvac/hvac-modbusio2-lib/funktionsbausteine/h1_4dior.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
