Das folgende Beispiel zeigt, wie man mit Hilfe eines HMS 100 T (Temperatursensor) und einer FS20 ST (Steckdose) elektrische Heizgeräte regelt.
Quasi als Ersatz für den FS20 Thermostat.
Ich verwende es z.B. in der Übergangsphase der Heizperioden um den „Bad-Heizkörper-Handtuchhalter“ zu regeln oder für eine Zusatzheizung.
Die anliegende Grafik zeigt anschaulich die „Regelgüte“: sie beträgt hier ± 0.5°C und den Temperaturabfall der Nachtabsenkung von 22:00 bis 7:00 Uhr
Voraussetzung:
Ein den „Instances“ ein Device „HMSRX“ mit einer zugeordneten Variablen sowie ein „FS20TX“ für die Steckdose.
Das folgende Skript wird mit der Variablen „Temp_UG_Wohn“ getriggert (STRG + T)
Der Status „Flag_Heiz_Regelung_Tag“ für Tag oder Nachtbetrieb kann z.B. im Timer-Wizzard gesetzt werden ebenso können die Regelgrenzen
(22,5 und 16) als Konstanten verwendet werden.
<?
/*
*******************************
IP-SYMCON Event Scripting
*******************************
File : Heizung_Wohn_UG.ips.php
Trigger : Temp_UG_Wohn
Interval :
*/
$temperatur = GetValueFloat("Temp_UG_Wohn");
$mode_tn = GetValueBoolean("Flag_Heiz_Regelung_Tag");
if ($mode_tn == True) { // TAG
if ($temperatur <= 22.5 ) {
IPS_RunScript("FS20_UG_Wohn_Heizung_Zeit");
}
} else { // Nacht
if ($temperatur <= 16 ) {
IPS_RunScript("FS20_UG_Wohn_Heizung_Zeit");
}
}
?>
Aus Sicherheitsgründen wird die E-Heizung nur für 10 Minuten eingeschaltet. Sie bekommt aber erneut einen Einschaltbefehl,
wenn die Temperatur noch nicht erreicht wurde. In der Regel kommen alle 5-6 Minuten Werte vom HMS.
<?
/*
*******************************
IP-SYMCON Event Scripting
*******************************
File : FS20_UG_Wohn_Heizung_Zeit.ips.php
Trigger :
Interval :
*/
FS20_SwitchDuration(44007, True, 10 * 60);
IPS_SetScriptTimer("Reset_OUT_UG_Wohn_Heiz", 10 * 60);
?>
Und zum Schluss noch ein Hilfsskript: leider setzt IP-Symcon die Status-Variable des Gerätes, das mit dem Befehl: „FS20_SwitchDuration“
eingeschaltet wurde nicht automatisch zurück. Dies muss der Anwender selber programmieren:
Der „ScriptTimer“, der oben auf 10 Minuten gesetzt wurde, wird hier wieder ausgeschaltet und die Status Variable der Steckdose auf „False“ gesetzt.
<?
/*
*******************************
IP-SYMCON Event Scripting
*******************************
File : Reset_OUT_UG_Wohn_Heiz.ips.php
Trigger :
Interval :
*/
SetValueBoolean("OUT_UG_Wohn_Heiz", False);
IPS_SetScriptTimer("Reset_OUT_UG_Wohn_Heiz", 0);
?>