FB_HVACHeatingCurve

FB_HVACHeatingCurve 1:

Die Heizkurve mit vier Punkten dient der Ermittlung des Sollwertes für die Vorlauftemperatur eines Heizkreises in Abhängigkeit der Außentemperatur.

Dieser Funktionsbaustein muss funktionsbedingt mit dem FB_HVACSetpointHeating zusammen verwendet werden. Der Grund dafür ist, dass der Betrag für die Nachtabsenkung beim FB_HVACHeatingCurve berücksichtigt wird.

VAR_INPUT

eDataSecurityType    : E_HVACDataSecurityType;
bSetDefault          : BOOL;
rOutsideTempDamped   : REAL;
bDayOperation        : BOOL;
bReset               : BOOL;

eDataSecurityType:Wenn eDataSecurityType:= eHVACDataSecurityType_Persistent ist, werden die persistenten VAR_IN_OUT-Variablen des Funktionsbausteins bei einer Wertänderung im Flash des Rechners abgelegt. Dafür ist es zwingend erforderlich den Funktionsbaustein FB_HVACPersistentDataHandling einmalig im Hauptprogramm, das zyklisch aufgerufen wird, zu instanziieren. Ansonsten wird der instanziierte FB intern nicht freigegeben.

Eine Wertänderung kann vom Gebäudeleitsystem, einem lokalen Bediengerät oder von einem Schreibzugriff von TwinCAT aus erfolgen. Beim Neustart des Rechners werden die gesicherten Daten automatisch vom Flash in den RAM zurück gelesen.

Anwendungsbeispiel: example_persistent.zip

Bei eDataSecurityType:= eHVACDataSecurityType_Idle werden die persistent deklarierten Variablen nicht spannungsausfallsicher gespeichert.

Hinweis

Eine sich zyklisch ändernde Variable darf niemals mit der IN_OUT-Variablen eines Funktionsbausteins verbunden werden, wenn eDataSecurityType:= eHVACDataSecurityType_Persistent ist. Es würde zu einem frühzeitigen Verschleiß des Flashspeichers führen.

bSetDefault: Wenn die Variable TRUE ist, werden die Default-Werte der VAR_IN_OUT Variablen übernommen.

rOutsideTempDamped: Mit dieser Eingangsvariablen wird dem Funktionsbaustein die aktuelle gedämpfte Außentemperatur übergeben.

bDayOperation: TRUE = Tagbetrieb, FALSE = Nachtbetrieb.

bReset: Quittierungseingang bei einer Störung.

VAR_OUTPUT

rTempSetpoint     : REAL;
bInvalidParameter : BOOL;

rTempSetpoint: Der errechnete Sollwert für die Vorlauftemperatur (0°C..500°C).

bInvalidParameter: Zeigt an, dass ein falscher Eingangsparameter anliegt. bInvalidParameter muss mit bReset quittiert werden.

VAR_IN_OUT

rMinTemp            : REAL;
rMaxTemp            : REAL;
rNightSetback       : REAL;
rTempSetpoint_Y1    : REAL;
rTempSetpoint_Y2    : REAL;
rTempSetpoint_Y3    : REAL;
rTempSetpoint_Y4    : REAL;
rOutsideTemp_X1     : REAL;
rOutsideTemp_X2     : REAL;
rOutsideTemp_X3     : REAL;
rOutsideTemp_X4     : REAL;

rMinTemp: Mit dieser Variable wird der minimale Wert des Sollwertes für die Vorlauftemperatur definiert. Die Variable wird persistent gespeichert. Voreingestellt auf 0.

rMaxTemp: Mit dieser Variable wird der maximale Wert des Sollwertes für die Vorlauftemperatur definiert. Die Variable wird persistent gespeichert. Voreingestellt auf 500.

rNightSetback: Mit dieser Variable wird der Betrag der Nachtabsenkung angegeben. Die Variable wird persistent gespeichert. Voreingestellt auf 20.

rTempSetpoint_Y1 / rOutsideTemp_X1: Mit diesem Wertepaar wird der Verlauf der Heizkurve Punkt 1 parametriert. Die Variable wird persistent gespeichert. Voreingestellt auf 20.

rTempSetpoint_Y2 / rOutsideTemp_X2: Mit diesem Wertepaar wird der Verlauf der Heizkurve Punkt 2 parametriert. Die Variable wird persistent gespeichert. Voreingestellt auf 65 und 0.

rTempSetpoint_Y3 / rOutsideTemp_X3: Mit diesem Wertepaar wird der Verlauf der Heizkurve Punkt 3 parametriert. Die Variable wird persistent gespeichert. Voreingestellt auf 74 und -10.

rTempSetpoint_Y4 / rOutsideTemp_X4: Mit diesem Wertepaar wird der Verlauf der Heizkurve Punkt 4 parametriert. Die Variable wird persistent gespeichert. Voreingestellt auf 80 und -20.

Verlauf von den Heizungskennlinien

FB_HVACHeatingCurve 2:

Bedingungen

Für die Eingabe der Werte gilt folgendes: X1 > X 2 > X3 > X4 und Y1 < Y2 < Y3 <Y4.

Des Weiteren muss der minimale Wert des Sollwertes für die Vorlauftemperatur <= rTempSetpoint_Y1 und >= 0 sein. Der maximale Wert des Sollwertes für die Vorlauftemperatur muss >= rTempSetpoint_Y4 sein.

Wird eine dieser Bedingungen nicht erfüllt; wird die Variable bInvalidParameter auf TRUE gesetzt und die Defaultwerte der VAR_IN_OUT Variablen werden übernommen.

Voraussetzungen

Entwicklungsumgebung

erforderliche Bibliothek

Erforderliche Function

TwinCAT 3.1 ab Build 4022.16

Tc2_HVAC V3.3.1.0

TF8000 | TC3 HVAC V1.0.0.0