# TROX\_XM0

## `TROX_XM0` (FB)

`FUNCTION_BLOCK` TROX\_XM0

### Representation

<figure><img src="/files/b12237aa36881b7bdce52c50fd97e4be19a98a79" alt=""><figcaption></figcaption></figure>

InOut:

| Scope       | Name                    | Type                        | Initial                                   | Comment                                                                                                                                                             |
| ----------- | ----------------------- | --------------------------- | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Input       | `xEn`                   | `BOOL`                      | TRUE                                      | Enable / disable communication (TRUE = enable)                                                                                                                      |
| Input       | `byUnitId`              | `BYTE`                      | 0                                         | Device address                                                                                                                                                      |
| Input       | `xUpdateActual`         | `BOOL`                      | FALSE                                     | <p>Update of actual values (on every rising edge<br>)</p>                                                                                                           |
| Input       | `xUpdateSetp`           | `BOOL`                      | FALSE                                     | <p>Update of setpoints (on every rising edge<br>)</p>                                                                                                               |
| Input       | `xResError`             | `BOOL`                      | FALSE                                     | <p>Reinitialization of the outputs <code>eErrorCodeCom</code> or<br><code>xErrorCodeDev</code> to the fault-free state (on every rising edge)</p>                   |
| Input       | `rSetpVolFlowPerc`      | `REAL`                      | 0.0                                       | <p>Setpoint - volume flow in % (0.0 - 100.0 %) (0.0 % =<br>Vmin, 100.0 % = Vmax)</p>                                                                                |
| Inout       | `ModbusClient`          | `ModbusClientBase`          |                                           | Client of the device                                                                                                                                                |
| Output      | `rVnomUnit`             | `REAL`                      |                                           | Rated volume flow in the selected volume flow unit                                                                                                                  |
| Output      | `rVminUnit`             | `REAL`                      |                                           | <p>Minimum value - volume flow in the selected<br>volume flow unit</p>                                                                                              |
| Output      | `rVmaxUnit`             | `REAL`                      |                                           | <p>Maximum value - volume flow in the selected<br>volume flow unit</p>                                                                                              |
| Output      | `rDamperPosPerc`        | `REAL`                      |                                           | <p>Absolute position of the air damper in percent (0.0% =<br>Closed, 100.0% = Open)</p>                                                                             |
| Output      | `rDamperPosDegree`      | `REAL`                      |                                           | Absolute position of the air damper in degrees                                                                                                                      |
| Output      | `rVolFlowPerc`          | `REAL`                      |                                           | Actual value of the volume flow in percent of the rated volume flow                                                                                                 |
| Output      | `rVolFlowUnit`          | `REAL`                      |                                           | <p>Actual value of the volume flow in the selected<br>volume flow unit</p>                                                                                          |
| Output      | `eSetpSourceFb`         | TROX\_XM0\_SETP\_SOURCE     |                                           | Feedback of the source for the setpoint (2 = Bus)                                                                                                                   |
| Output      | `rSensorValue`          | `REAL`                      |                                           | Current actual value of the sensor in mV                                                                                                                            |
| Output      | `xSensorOffsetInDevice` | `BOOL`                      |                                           | <p>Indication of whether the sensors must be calibrated in the device<br>(TRUE = calibration in the device required, FALSE = calibration in the<br>FB required)</p> |
| Output      | `xAlarm`                | `BOOL`                      | FALSE                                     | Collective fault (TRUE = fault)                                                                                                                                     |
| Output      | `xAlarmCom`             | `BOOL`                      | FALSE                                     | Collective fault - communication (TRUE = fault)                                                                                                                     |
| Output      | `eErrorCodeCom`         | ModbusErrorCode             |                                           | Error code - communication (0 = no error)                                                                                                                           |
| Output      | `stErrorCodeDev`        | `STRING`                    |                                           | String with the numbers of the active device errors                                                                                                                 |
| Output      | `xBusy`                 | `BOOL`                      |                                           | Communication indicator (TRUE = communication)                                                                                                                      |
| Input Const | `rSensorValueOffset`    | `REAL`                      | 0.0                                       | <p>Constant measured value offset for the transmitted voltage -<br>actual value</p>                                                                                 |
| Input Const | `eSetpSource`           | TROX\_XM0\_SETP\_SOURCE     | TROX\_XM0\_SETP\_SOURCE.BUS\_IN\_BUS\_OUT | <p>Influence: Outputs: rSensorValue<br>Source for the setpoint (2 = Bus)</p>                                                                                        |
| Input Const | `eOverrideCon`          | TROX\_XM0\_OVERRIDE\_CON    | TROX\_XM0\_OVERRIDE\_CON.NO\_OVERRIDE     | Forced override of the air damper (0 = none)                                                                                                                        |
| Input Const | `eCommand`              | TROX\_XM0\_COMMAND          | TROX\_XM0\_COMMAND.NO\_COMMAND            | Triggering of test functions (0 = none)                                                                                                                             |
| Input Const | `eVolumeFlowUnit`       | TROX\_XM0\_VOLUMEFLOW\_UNIT | TROX\_XM0\_VOLUMEFLOW\_UNIT.M3\_PER\_H    | <p>Unit for the specification of the absolute volume flows (1 =<br>m3/h)</p>                                                                                        |
| Input Const | `xSetpVolumeFlowMinMax` | `BOOL`                      | FALSE                                     | <p>Triggering the transfer of the parameters <code>rSetpVolumeFlowMin</code><br>or <code>rSetpVolumeFlowMax</code> (on every rising edge)</p>                       |
| Input Const | `rSetpVolumeFlowMax`    | `REAL`                      | 300.0                                     | <p>Setpoint for the maximum volume flow in the selected<br>volume flow unit (at rSetpVolFlowPerc = 100.0 %)</p>                                                     |
| Input Const | `rSetpVolumeFlowMin`    | `REAL`                      | 100.0                                     | <p>Setpoint for the minimum volume flow in the selected<br>volume flow unit (at rSetpVolFlowPerc = 0.0 %)</p>                                                       |
| Input Const | `tTimeOut`              | `TIME`                      | TIME#10s0ms                               | <p>Duration for activation of the state<br><code>Communication error</code></p>                                                                                     |
| Input Const | `eBusFailureCommand`    | TROX\_XM0\_BUS\_FAILURE     | TROX\_XM0\_BUS\_FAILURE.NO\_FAILURE       | <p>Definition of the behavior in the event of a bus failure (0 = no<br>action)</p>                                                                                  |
| Input Const | `tTimeUpdateSetp`       | `TIME`                      | TIME#45s0ms                               | <p>Update interval for the processes influenced by the input<br><code>xUpdateSetp</code> influenced</p>                                                             |
| Input Const | `tTimeUpdateActual`     | `TIME`                      | TIME#3s0ms                                | <p>Update interval for the processes influenced by the input<br><code>xUpdateActual</code> influenced</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/en/hvac-modbus-library/functionblocks/trox/trox_xm0.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.
