also hier mein Skript am Beispiel eines Wandthermostaten HM-TC-IT-WM-W-EU, gepaart mit einem Wired-Aktor HMW-IO-12-SW7-DR (Funk-Aktor ist auch möglich) zur Steuerung einer Fußbodenheizung (
OHNE den Einsatz von Addons, wie z.B. Homeputer, CUxD,...).
Simpel aber funktional!
Code: Alles auswählen
!Skript zur Steuerung der Fußbodenheizung (by AudioSonic)---------------------------------------------
!---------ZimmerXY-EG---------------------------------------------------------------------------------
!---------Einstellungen-------------------------------------------------------------------------------
!Wandthermostat mit zugehörigem Schaltaktor eintragen
string tmpA = "LEQ12345678"; !Wandthermostat RT_ZimmerXY-EG, eigene Seriennr. eintragen
string tmpD = "JEQ87654321:16"; !Schaltaktor mit Kanalnr. HAKT_ZimmerXY-EG, eigene Seriennr. eintragen
real tmpZ = 0.2; !Differenz zur Soll-Temperatur festlegen, bevor Aktor abschaltet
!---------Skriptbereich--------------------------------------------------------------------------------
real tmpB = dom.GetObject("BidCos-RF."#tmpA#":2.ACTUAL_TEMPERATURE").Value(); !Ist-Temperatur
real tmpC = dom.GetObject("BidCos-RF."#tmpA#":2.SET_TEMPERATURE").Value(); !Soll-Temperatur
var tmpE = dom.GetObject("BidCos-Wired."#tmpD#".STATE").Value(); !Status Schaltaktor Wired
!Temperaturen vergleichen und bei Bedarf Aktor schalten
if((tmpB < (tmpC-tmpZ)) && (tmpE == 0))
{dom.GetObject("BidCos-Wired."#tmpD#".STATE").State(1);} !Schaltaktor einschalten
if((tmpB >= (tmpC-tmpZ)) && (tmpE == 1))
{dom.GetObject("BidCos-Wired."#tmpD#".STATE").State(0);} !Schaltaktor ausschalten
!-------------------------------------------------------------------------------------------------------
O.g. Skript kann für jede Wandthermostat/Aktorkanal-Paarung in ein einziges "großes" Skript hintereinander kopiert werden.
Unter Einstellungen sind die Seriennr. des Wandthermostates und des Aktors+Kanal einzutragen.
Sollte ein Funkaktor für die Ansteuerung der FHB-Stellventile verwendet werden, ist im Skriptbereich überall das
BidCos-Wired durch
BidCos-RF zu ersetzen.
Die Differenz zur Solltemperatur, also wann der Aktor aus- und einschalten soll, kann ebenfalls selbst eingestellt werden.
Achtung: Differenz von 0.2 bedeudet, dass der Aktor 0,1°C vor Erreichen der Soll-Temperatur abschaltet. Also ist Soll-Temperatur = 20°C, dann schaltet der Aktor bei Erreichen von 19,9°C ab. Die Differenz von 0.2 funktioniert bei mir sehr gut. Es gibt keine Regelschwankungen.
(Schaltet der Aktor bei den 19,9°C ab, dann geht bei mir die Temperatur erst mal auf 20°C oder 20,1°C hoch (Überschwinger durch Nachheizen der FBH) und nach 2 oder 3h vielleicht, fällt dann die Temperatur wieder ab auf 19,8°C, wo dann der Aktor wieder einschaltet.)
Der Aufruf des "großen" Skriptes erfolgt dann durch folgendes Programm:
Dabei nimmt man einen seiner Wandthermostate (im Prinzip egal welcher) und triggert auf seine Aktualisierung der Ist-Temperatur (Achtung: beim Wandthermostat den Kanal
2, also z.B: LEQ12345678:
2 auswählen, die Aktualisierung der Ist-Temperatur erfolgt so in der Regel alle 2-3 Minuten) den Skriptaufruf.
Die Heizzeiten und Soll-Temperaturen können, bzw. sollten weiterhin im Wandthermostat selbst hinterlegt sein.
--> Fertig.
Grüße