# HeatCurve4P\_DN

## `HeatCurve4P_DN` (FB)

FUNCTION\_BLOCK HeatCurve4P\_DN

### Kurzbeschreibung

> Heizkurve mit vier Aussentemperatur-Punkten und zwei Kennlinien (Nacht, Tag).

### Darstellung

<figure><img src="https://879424349-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQR4vCFzt6ixgsqlR3pdR%2Fuploads%2Fgit-blob-045548764f294fb78f8b63ed3278cfa9ac8ee973%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

### Schnittstellen

#### Eingänge

| Name       | Datentyp | Wertebereich     | Initialwert | Funktion                                               |
| ---------- | -------- | ---------------- | ----------- | ------------------------------------------------------ |
| *rOutTemp* | REAL     | -50.0 … +50.0 °C | 0           | Aussentemperatur zur Berechnung der Kennlinien         |
| *xDay*     | BOOL     |                  |             | Betriebsart (FALSE = Nachtbetrieb / TRUE = Tagbetrieb) |

#### Ausgänge

| Name          | Datentyp | Wertebereich | Initialwert | Funktion                                    |
| ------------- | -------- | ------------ | ----------- | ------------------------------------------- |
| *rSupplyTemp* | REAL     |              | 0.0 °C      | Vorlaufsolltemperatur der aktiven Kennlinie |

#### Sollwerte / Parameter

| Name                    | Datentyp | Wertebereich | Initialwert  | Funktion                                                                                      |
| ----------------------- | -------- | ------------ | ------------ | --------------------------------------------------------------------------------------------- |
| **eManModeN**           | eManNum  |              | eManNum.Auto | Betriebsart für die Vorlaufsolltemperatur *rSupplyTemp*                                       |
| **rManValue**           | REAL     |              | 0.0 °C       | Handwert für die Betriebsart eManNum.Man                                                      |
| **rSupplyTempMin**      | REAL     |              | 20.0 °C      | Absolute minimale Vorlaufsolltemperatur                                                       |
| **rSupplyTempMax**      | REAL     |              | 70.0 °C      | Absolute maximale Vorlaufsolltemperatur                                                       |
| **rTo1**                | REAL     |              | -15.0 °C     | Aussentemperatur für Punkt 1                                                                  |
| **rW1Day**              | REAL     |              | 70.0 °C      | Vorlaufsolltemperatur für Aussentemperatur-Punkt 1 - Tagkennlinie                             |
| **rW1Night**            | REAL     |              | 65.0 °C      | Vorlaufsolltemperatur für Aussentemperatur-Punkt 1 - Nachtkennlinie                           |
| **rTo2**                | REAL     |              | -5.0 °C      | Aussentemperatur für Punkt 2                                                                  |
| **rW2Day**              | REAL     |              | 60.0 °C      | Vorlaufsolltemperatur für Aussentemperatur-Punkt 2 - Tagkennlinie                             |
| **rW2Night**            | REAL     |              | 55.0 °C      | Vorlaufsolltemperatur für Aussentemperatur-Punkt 2 - Nachtkennlinie                           |
| **rTo3**                | REAL     |              | 5.0 °C       | Aussentemperatur für Punkt 3                                                                  |
| **rW3Day**              | REAL     |              | 50.0 °C      | Vorlaufsolltemperatur für Aussentemperatur-Punkt 3 - Tagkennlinie                             |
| **rW3Night**            | REAL     |              | 45.0 °C      | Vorlaufsolltemperatur für Aussentemperatur-Punkt 3 - Nachtkennlinie                           |
| **rTo4**                | REAL     |              | 15.0 °C      | Aussentemperatur für Punkt 4                                                                  |
| **rW4Day**              | REAL     |              | 40.0 °C      | Vorlaufsolltemperatur für Aussentemperatur-Punkt 4 - Tagkennlinie                             |
| **rW4Night**            | REAL     |              | 35.0 °C      | Vorlaufsolltemperatur für Aussentemperatur-Punkt 4 - Nachtkennlinie                           |
| **rButtonJump**         | REAL     |              | 1.0 °C       | Funktion noch nicht implementiert.                                                            |
| **rSupplyTempMaxScale** | REAL     |              | 90.0 °C      | Maximaltemperatur für die Skalierung der Y-Achse (VISU) Schieberegler nur bei 90°C angezeigt! |
| **rBorderDistance**     | REAL     |              | 3.0 °C       | Randabstand zum Rand rechts/links in Grad Celsius für die X-Achse (VISU)                      |

### Funktionsbeschreibung

\
Die Vorlaufsolltemperatur **rSupplyTemp** wird in Abhängigkeit der aktuellen Aussentemperatur **rOutTemp** und der gewählten Kennlinie (Nachtkenlinie: **xDay** = FALSE // Tagkennlinie: **xDay** = TRUE) berechnet.\
Die Vorlaufsolltemperatur \*rSupplyTemp\* wird durch einstellbare absolute Minimal- (**rSupplyTempMin**) und Maximalwerte (**rSupplyTempMax**) begrenzt.\
\
Die Kennlinien sind durch jeweils vier Aussentemperatur-Punkte (getrennt für die Nacht- und Tagkennlinie) definiert und einstellbar.\
Jeder Punkt wird durch eine Aussentemperatur und eine zugeordnete Vorlaufsolltemperatur definiert.\
Die vier Aussentemperatur-Punkte einer Kennlinie werden durch Geraden miteinander verbunden.

{% hint style="danger" %}
Einschränkung

To4 > rTo3 > rTo2 > rTo1
{% endhint %}

\
Der Parameter **eManModeN** erlaubt die Umschaltung der Vorlaufsolltemperatur **rSupplyTemp** vom Automatik- in den Handbetrieb und umgekehrt.\
Im Handbetrieb übernimmt die Vorlaufsolltemperatur \*rSupplyTemp\* den Wert des Parameter **rManValue.**

<figure><img src="https://879424349-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQR4vCFzt6ixgsqlR3pdR%2Fuploads%2Fgit-blob-d54301a5d2b01a706e240053fb87562b92326c93%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

### Visualisierung

Passendes Visualisierungselement aus der HVACV Visu Library: **HeatCurve4P\_DN**

#### Darstellung

<figure><img src="https://879424349-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQR4vCFzt6ixgsqlR3pdR%2Fuploads%2Fgit-blob-f3f3b11a9e4b6cbc32bb57063feadb3bbd2e3705%2Fimage%20(40).png?alt=media" alt=""><figcaption></figcaption></figure>

#### Schnittstellen Visu-Element

| Name                    | Datentyp        | Typ          | Initialwert | Funktion                                                                |
| ----------------------- | --------------- | ------------ | ----------- | ----------------------------------------------------------------------- |
| **FB\_HeatCurve4P\_DN** | HeatCurve4P\_DN | VAR\_IN\_OUT |             | FB Instanz HVAC.HeatCurve4P\_DN hier eintragen z.B. PRG.HeatCurve4P\_DN |

{% hint style="info" %}
Hinweis: VAR\_IN\_OUT Schnittstellen müssen belegt werden, VAR\_INPUT sind optional.
{% endhint %}

### CODESYS

InOut:

| Scope       | Name                  | Type    | Initial      |
| ----------- | --------------------- | ------- | ------------ |
| Input       | `rOutTemp`            | `REAL`  | 0            |
| Input       | `xDay`                | `BOOL`  |              |
| Input Const | `rBorderDistance`     | `REAL`  | 3            |
| Input Const | `rSupplyTempMaxScale` | `REAL`  | 90           |
| Input Const | `rButtonJump`         | `REAL`  | 1            |
| Input Const | `rW4Night`            | `REAL`  | 35           |
| Input Const | `rW4Day`              | `REAL`  | 40           |
| Input Const | `rTo4`                | `REAL`  | 15           |
| Input Const | `rW3Night`            | `REAL`  | 45           |
| Input Const | `rW3Day`              | `REAL`  | 50           |
| Input Const | `rTo3`                | `REAL`  | 5            |
| Input Const | `rW2Night`            | `REAL`  | 55           |
| Input Const | `rW2Day`              | `REAL`  | 60           |
| Input Const | `rTo2`                | `REAL`  | -5           |
| Input Const | `rW1Night`            | `REAL`  | 65           |
| Input Const | `rW1Day`              | `REAL`  | 70           |
| Input Const | `rTo1`                | `REAL`  | -15          |
| Input Const | `rSupplyTempMax`      | `REAL`  | 70           |
| Input Const | `rSupplyTempMin`      | `REAL`  | 20           |
| Input Const | `rManValue`           | `REAL`  | 0            |
| Input Const | `eManModeN`           | eManNum | eManNum.Auto |
| Output      | `rSupplyTemp`         | `REAL`  | 0            |
