# PreRinseOperationValveAnalog

## `PreRinseOperationValveAnalog` (FB)

FUNCTION\_BLOCK PreRinseOperationValveAnalog

### Short description

> Control of the start-up operation of a ventilation system\
> \
> Typical application: Preparing a ventilation system at low outdoor temperatures

### Representation

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

### Function description

#### General

This function block is used to control the start-up operation of a ventilation system depending on the current outside temperature *rOAT* and the current return temperature *rRnT* of the heater circuit.\
It guarantees the defined and effective preheating of the heater circuit before releasing the fans of the ventilation system (goal: prevention of frost damage to the heater circuit).

#### Control

The start-up operation (preheating and control signal ramp) starts with a rising edge (FALSE > TRUE) at the input *xRequest*,\
if the current outside temperature *rOAT* falls below the threshold **rMaxOAT** is below.\
The output *xEn* is activated (= TRUE) and is used to indicate the active start-up operation or to enable the heater pump.\
The control signal *rHeaterY* is fixed to the setpoint / parameter **rYStart** and is used to control the heater valve.

> **Value range for the setpoint / parameter rYStart**
>
> The setpoint / parameter may only take values > 0 %\
> The start-up operation ends after the minimum duration **tMinTime** (Condition: No return temperature sensor is present (*rRnT* <= -20.0 °C)).

The start-up operation ends if the current return temperature *rRnT* falls below the threshold **rMinRnT** is exceeded (Condition: A return temperature sensor is present (*rRnT* > -20.0 °C)).\
The start-up operation can be terminated at any time by the input *xRequest* (= FALSE).\
\
After the end of the start-up operation, a linearly decreasing (start value = *rHeaterY* ) **rYStart**signal ramp with the duration **tRamp** is generated on the control signal - heater valve from start-up operation. While this signal ramp is being generated and during the start-up operation the output *xRamp* is active (= TRUE).\
\
If the duration of the start-up operation exceeds the threshold **tMaxTime**, the fault message for timeout is activated (= TRUE).\
\
At the output *tET* the elapsed duration is displayed during the start-up operation.\
\
In the inactive state (*xRequest* = FALSE) the outputs assume the following states:

| *xEn* | *xRamp* | *rHeaterY* | *tET*      | *xAlarm* | Notes              |
| ----- | ------- | ---------- | ---------- | -------- | ------------------ |
| FALSE | FALSE   | 0.0 %      | Last value | FALSE    | *xRequest* = FALSE |

Legend: X = any

### CODESYS

InOut:

| Scope       | Name           | Type    | Initial      |
| ----------- | -------------- | ------- | ------------ |
| Input       | `xRequest`     | `BOOL`  |              |
| Input       | `rOAT`         | `REAL`  |              |
| Input       | `rRnT`         | `REAL`  | -22.2        |
| Output      | `xEn`          | `BOOL`  |              |
| Output      | `xRamp`        | `BOOL`  |              |
| Output      | `rHeaterY`     | `REAL`  |              |
| Output      | `tET`          | `TIME`  |              |
| Output      | `xAlarm`       | `BOOL`  |              |
| Input Const | `udiMaxTime`   | `UDINT` | 30           |
| Input Const | `rYStart`      | `WORD`  | 80           |
| Input Const | `udiRamp`      | `UDINT` | 8            |
| Input Const | `eMinTimeBase` | eTime   | eTime.Minute |
| Input Const | `udiMinTime`   | `UDINT` | 2            |
| Input Const | `rMinRnT`      | `REAL`  | 30           |
| Input Const | `rMaxOAT`      | `REAL`  | 10           |


---

# 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-library/functionblocks/components/prerinseoperationvalveanalog.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.
