Das folgende Beispiel zeigt, wie man einen Badheizkörper mit zusätzlicher E-Heizung regelt.
Aufgabe:
In der Zwischenheizperiode, wenn die Zentralheizung nicht in Betrieb ist,
soll das Bad morgens auf eine angenehme Temperatur gebracht werden.
Lösung:
In dem Skript „Einstellungen“ wird per Hand die Heizperiode ausgewählt,
die vorher im Skript „Konstanten“ definiert worden sind.
Das Funk-Thermostat (bitte Bedienungsanleitung lesen!) setzt “ im Heizbetrieb die Variable auf „False",
wenn die gewählte Temperatur erreicht wurde und auf „True“ bei einer Unterschreitung (Hysterese beachten).
Die Funkbefehle werden mindestens alle 8 Minuten wiederholt.
An die Steckdose wird ein Einschaltbefehl von 10 Minuten gesendet. Dies geschieht aus Sicherheitsgründen:
sollte die Funkübertragung ausfallen, so schaltet sich die Steckdose automatisch ab.
Befindet sich der Thermostat im manuellen Betrieb, so können die Schaltzeiten im Skript angegeben werden.
Im Automatik-Betrieb sind die Vergleiche: (time() > $time_xxx) wegzulassen.
Vorraussetzung:
Für den FS20 STR muss ein „FS20 RX“ und für Steckdose ein „FS20 TX“ Modul in den
Instances eingefügt werden – siehe Bild.
Die beiden Geräte müssen unterschiedliche Adressen besitzen, weil die Steuerung indirekt
– also über ein IP-Symcon Skript – erfolgt.
Bezugsquelle:
ELV / FS20 STR / Best-Nr.: ##-562-16 / € 35,-
ELV / FS20 ST-2 / Best-Nr.: ##-577-89 / € 20,-
<?
/*
*******************************
IP-SYNCOM Event Scripting
*******************************
*/
//File: Einstellungen.ips.php
// (C) by CSS/MST Mai 2005
include("Scripts/Konstanten.ips.php");
// $heizperiode_sommer / $heizperiode_winter / $heizperiode_zwischen
$heizperiode = $heizperiode_zwischen;
?>
<?
/*
*******************************
IP-SYNCOM Event Scripting
*******************************
*/
//File: Konstanten.ips.php
// siehe Bedienungsanleitung > Regenmelder
$regenmelder_faktor = 0.37; //0.37mm pro Wippe
// Heizperiode: 1 = Sommer / 2 = Winter / 3 = Zwischenzeit
$heizperiode_sommer = 1;
$heizperiode_winter = 2;
$heizperiode_zwischen = 3;
?>
<?
/*
*******************************
IP-SYNCOM Event Scripting
*******************************
*/
//File: Bad.ips.php
// (C) by CSS/MST Mai 2005
// Trigger: IN_Thermostat_Bad
include("Scripts/Einstellungen.ips.php");
$time_von = mktime( 5, 30, 0, date("m"), date("d"), date("Y")); // 5:30 Uhr / täglich
$time_bis = mktime( 9, 0, 0, date("m"), date("d"), date("Y")); // 9:00 Uhr / täglich
If (($heizperiode == $heizperiode_zwischen) && (time() > $time_von) && (time() < $time_bis)) { // Zwischen - Heiz - Periode
$an_aus = getValueBoolean("IN_Thermostat_Bad");
if ($an_aus == True) {
FS20_SwitchDuration(62023, True, 600); // für 10 Minuten An
// und bei Unterbrechung der Funkverbindung automatisch ausschalten!
} else {
$status = GetValueBoolean("IN_Thermostat_Bad");
if ($status == True) { // nur wenn das Gerät an ist dann ausschalten
FS20_SwitchMode(62023, False); // Aus
}
}
// } else { > hier kann ein Skript für die Zentralheizung stehen
}
?>
PS:
Die im o.g. Skript verwendete Instance–ID muß für Ihre Umgebung angepasst werden.
Benutzen Sie die Tastenkombination CTRL + I um InstanceID Selector zu öffnen und wählen Sie die entsprechende Instance aus.
Bei Fragen, Unklarheiten, Anregungen usw. bitte hier posten!