Hallo zusammen,
ich möchte gerne die Wassertemperatur in einem Kessel über einen PID regeln.
Die Wassertemperatur erhalte ich von einem 1-wire Sensor.
Den PID habe ich so erstellt:
define Regler1 PID Kessel_1_Temperatur:temp:([\d\.]*) Kessel_1_Heizung::off:on 0.2 25 0
Problem ist, dass der Set Befehl Werte zwischen 0 und 100 liefert.
Logfile Auszug:
2013.09.28 15:16:35 3: PID set Regler1 desired 15
2013.09.28 15:16:35 3: set Kessel_1_Heizung 0 : Unknown argument ?, choose one of on off
Im Regler selber werden actuation und integrator korrekt mit on bzw. off angezeigt.
Wie schaffe ich es nun, dass der ausgelöste set Befehl off bzw on ist?
Ich bin für jeden Tipp dankbar.
Gruß Mark
Man koennte ein notify bauen, was je nach Schwellwert ein on oder off ausloest.
Ich habe aber meine Zweifel, ob das besser ist, als ein einfacher Schwellwert-Vergleich. Dazu gibt es auch ein FHEM Modul, faellt mir aber nicht ein, wie es heisst. Oder man mancht es mit einem perl-Vergleich in der notify der Temperaturwerte.
Zitat von: rudolfkoenig schrieb am So, 29 September 2013 09:52Man koennte ein notify bauen, was je nach Schwellwert ein on oder off ausloest.
Dazu gibt es auch ein FHEM Modul, faellt mir aber nicht ein, wie es heisst.
THRESHOLD
siehe Parallel-Thread.
Gruß
Damian
Ich schreibe jetzt den PID Wert in einen Dummy und werte, wie vorgeschlagen, mit einem notify aus.
Danke
Gruß Mark
Zitat von: Mark schrieb am So, 29 September 2013 15:17Ich schreibe jetzt den PID Wert in einen Dummy und werte, wie vorgeschlagen, mit einem notify aus.
Danke
Gruß Mark
Wäre mit einem Einzeiler wahrscheinlich einfacher gewesen:
define TH_Regler1 THRESHOLD Kessel_1_Temperatur:temp:5:50 Kessel_1_Heizung
Bedeutung: Hält die Kesseltemperatur zwischen 50 und 45 (50-5) Grad
Gruß
Damian
Da hast Du natürlich Recht, zumal meine Wärmequelle nur 0 und 1 kennt.
Danke dafür.
Gruß Mark