Fussbodenheizung mit PWM steuern

Begonnen von jamesgo, 24 September 2015, 08:28:49

Vorheriges Thema - Nächstes Thema

Blauhorn

Hast Du mal versucht, das Attribut "autoCalcTemp" auf 0 zu setzen? Ich hab meine PMWRs alle so eingestellt und läuft sehr gut.

Gruß vom blauhorn
1xBananaPi; 1x FB7490; 1xCUL433; 1x CC2530+CC2591; OpenMiLight-Gateway; 1xHMUART; HM-LC-Sw4-DR; Sonoff* mit TASMOTA, LEDController; MySensors; zigbee2mqtt;

jamesgo

Hallo Rolf56,

ich glaube bei deinem Aktor fehlt dir das Attribut setList.
Setze es doch mal auf "on off".

Grüße
Andy

Rolf56

Hallo Andy

Vielen Dank für Deinen Vorschlag. Das Erstellen des Attr. setList  "on off" ändert leider nichts am Sachverhalt.

list Vorratsraum.Heizventil.Wohnzimmer

Internals:
   NAME       Vorratsraum.Heizventil.Wohnzimmer
   NR         97
   STATE      off
   TYPE       dummy
   READINGS:
     2018-12-03 20:06:38   state           off
Attributes:
   room       Vorratsraum
   setList    on off


Habe die desired-temp mal von 30 auf 20 reduziert und wieder auf 30 erhöht.

Auszug aus der Log-Datei

2018.12.03 20:09:00 3: PWM_Calculate PWM.FussbodenHeizung
2018.12.03 20:09:00 3: PWM_CalcRoom PWMR_Wohnzimmer: F2 new on
2018.12.03 20:09:00 3: PWM_Calculate PWMR_Wohnzimmer: F98 switch on (pulse=0.921)
2018.12.03 20:09:00 3: PWM_Calculate PWMR_Wohnzimmer: F97 keep room off (pulse=0.921) (max=0)
2018.12.03 20:09:00 3: PWM_Calculate: loop 0 PWMR_Wohnzimmer 0.921
2018.12.03 20:09:00 3: PWM_Calculate: pulseSum 0.921 avg 0.921 minRoomsOn(4)
2018.12.03 20:10:00 3: PWM_Calculate PWM.FussbodenHeizung
2018.12.03 20:10:00 3: PWM_CalcRoom PWMR_Wohnzimmer: F2 new on
2018.12.03 20:10:00 3: PWM_Calculate PWMR_Wohnzimmer: F98 switch on (pulse=0.922)
2018.12.03 20:10:00 3: PWM_Calculate PWMR_Wohnzimmer: F97 keep room off (pulse=0.922) (max=0)
2018.12.03 20:10:00 3: PWM_Calculate: loop 0 PWMR_Wohnzimmer 0.922
2018.12.03 20:10:00 3: PWM_Calculate: pulseSum 0.922 avg 0.922 minRoomsOn(4)
2018.12.03 20:11:00 3: PWM_Calculate PWM.FussbodenHeizung
2018.12.03 20:11:00 3: PWM_CalcRoom PWMR_Wohnzimmer: F2 new on
2018.12.03 20:11:00 3: PWM_Calculate PWMR_Wohnzimmer: F98 switch on (pulse=0.923)
2018.12.03 20:11:00 3: PWM_Calculate PWMR_Wohnzimmer: F97 keep room off (pulse=0.923) (max=0)
2018.12.03 20:11:00 3: PWM_Calculate: loop 0 PWMR_Wohnzimmer 0.923
2018.12.03 20:11:00 3: PWM_Calculate: pulseSum 0.923 avg 0.923 minRoomsOn(4)
2018.12.03 20:12:00 3: PWM_Calculate PWM.FussbodenHeizung
2018.12.03 20:12:00 3: PWM_CalcRoom PWMR_Wohnzimmer: F2 new on
2018.12.03 20:12:00 3: PWM_Calculate PWMR_Wohnzimmer: F0 stay unchanged off: (99 < 360 sec)
2018.12.03 20:12:00 3: PWM_Calculate: loop 0 PWMR_Wohnzimmer 0.184
2018.12.03 20:12:00 3: PWM_Calculate: pulseSum 0.184 avg 0.184 minRoomsOn(0)
2018.12.03 20:13:00 3: PWM_Calculate PWM.FussbodenHeizung
2018.12.03 20:13:00 3: PWM_CalcRoom PWMR_Wohnzimmer: F8 stay off
2018.12.03 20:13:00 3: PWM_Calculate: loop 0 PWMR_Wohnzimmer 0.184
2018.12.03 20:13:00 3: PWM_Calculate: pulseSum 0.184 avg 0.184 minRoomsOn(0)
2018.12.03 20:14:00 3: PWM_Calculate PWM.FussbodenHeizung
2018.12.03 20:14:00 3: PWM_CalcRoom PWMR_Wohnzimmer: F8 stay off
2018.12.03 20:14:00 3: PWM_Calculate: loop 0 PWMR_Wohnzimmer 0.184
2018.12.03 20:14:00 3: PWM_Calculate: pulseSum 0.184 avg 0.184 minRoomsOn(0)
2018.12.03 20:14:51 3: deConz: websocket opened to 192.168.0.29:443
2018.12.03 20:14:51 3: deConz: websocket: Switching Protocols ok
2018.12.03 20:15:00 3: PWM_Calculate PWM.FussbodenHeizung
2018.12.03 20:15:00 3: PWM_CalcRoom PWMR_Wohnzimmer: F5 stay off
2018.12.03 20:15:00 3: PWM_Calculate: loop 0 PWMR_Wohnzimmer 0.924
2018.12.03 20:15:00 3: PWM_Calculate: pulseSum 0.924 avg 0.924 minRoomsOn(4)
2018.12.03 20:16:00 3: PWM_Calculate PWM.FussbodenHeizung
2018.12.03 20:16:00 3: PWM_CalcRoom PWMR_Wohnzimmer: F2 new on
2018.12.03 20:16:00 3: PWM_Calculate PWMR_Wohnzimmer: F98 switch on (pulse=0.924)
2018.12.03 20:16:00 3: PWM_Calculate PWMR_Wohnzimmer: F97 keep room off (pulse=0.924) (max=0)
2018.12.03 20:16:00 3: PWM_Calculate: loop 0 PWMR_Wohnzimmer 0.924
2018.12.03 20:16:00 3: PWM_Calculate: pulseSum 0.924 avg 0.924 minRoomsOn(4)


jamesgo

Hallo,
Jetzt ist es 'NoRoomsToStayOff 1' beim PWM
Bei einem Raum nicht sinnvoll [emoji848]
Grüße Andy

Gesendet von meinem BTV-DL09 mit Tapatalk


Rolf56

Hallo Andy

... und das heisst?

Ich hab die PWM schon mal für 4 Räume vorgesehen, teste aber momentan erst mit einem Raum.

Grüsse
Rolf

jamesgo

Beim pwm hast du '4,1,0.25' definiert. Mach mal '4,0,0.25' draus.
Du hast definiert dass min 1 Raum aus bleiben muss

Gesendet von meinem BTV-DL09 mit Tapatalk


Rolf56

Hallo Andy

Vielen Dank für Deinen Tip. Es hat geholfen!  8)

Grüsse
Rolf

lern_noch

Ich habe irgendwo in den 47 Seiten gelesen, dass sich die Soll-Einstellung für die Temperatur beim Tageswechsel automatisch ändert und nicht unverändert weiter läuft. Ich meine aber auch gelesen zu haben, dass dies überprüft und ggfls. geändert werden sollte.

Die Stellen finde ich nicht mehr :-(.

Wie ist der aktuelle Stand?

Ansonsten besten Dank für ein einfaches Modul auch für Anfänger, welches eine äußerst komplizierte Sache regelt.

jamesgo

Hallo lern_noch,

wenn auto_calc nicht auf "0" steht, führt jeder Raum (per default 300 Sekunden) alle 5 Minuten eine Berechnung der Solltemperatur aus.
Liegt die aktuelle Uhrzeit vor dem ersten Zeitpunkt der Regel des aktuellen Tages (tempRule1 Mo-Fr 6:35,e 14:10,d 21:30,n) (d.h. also z.B 0:05) dann wird c_tempN als Solltemperatur verwendet.

Das ist die aktuelle Implementierung und es steht auch keine Änderung an dieser Stelle an.

Grüße
Andy

lern_noch

Danke,

dann ist je mit Fr 00:15,E ...  oder was auch immer die 24 Stunden - Stunden - Wunschtemperaturvorwahl gesichert.

wowogiengen

Hallo,
mir ist aufgefallen, dass das Modul PWMR in Verbindung mit dem Modul PWM wohl ein Problem hat, wenn der Aktor ein "MISSING ACK" als Status zurückliefert.
Wenn der Status "MISSING ACK" ist, dann wird der Aktor nicht mehr auf oder zu gemacht.
Im Normalfall reagieren die Module ja so:

Wenn der Aktor "ZU" ist, und "AUF" sein sollte, dann wird er auf "AUF" gestellt. Wenn ich ihn dann manuell wieder auf "ZU" stelle, dauert es nur ein paar Sekunden, bevor er wieder auf "AUF" springt.

Wenn der Status jetzt aber eben nicht "AUF" oder "ZU" ist, kann PWM(R) nicht richtig schalten, und die Heizung bleibt dauernd an oder aus...

Was kann man da machen - außer nach der Ursache für das "MISSING ACK" zu suchen?

PS. Das "MISSING ACK" kommt mir komisch vor, weil FHEM-Sender und der Aktor im gleichen Raum sind...

Viele Grüße
Wolfgang

stromer-12

Nabend,

Was ist eigentlich der Unterschied zwischen PID 1... und PID 2... außer der dem ILookBackCnt ?
--
Gruß Gerd
FHEM (SVN) auf RPi1B mit HMser | ESPLink
FHEM (SVN) virtuell mit HMLAN | HMUSB | CUL

sledge

Zitat von: wowogiengen am 07 Januar 2019, 23:01:11
Hallo,
mir ist aufgefallen, dass das Modul PWMR in Verbindung mit dem Modul PWM wohl ein Problem hat, wenn der Aktor ein "MISSING ACK" als Status zurückliefert.
Wenn der Status "MISSING ACK" ist, dann wird der Aktor nicht mehr auf oder zu gemacht.
Im Normalfall reagieren die Module ja so:

Wenn der Aktor "ZU" ist, und "AUF" sein sollte, dann wird er auf "AUF" gestellt. Wenn ich ihn dann manuell wieder auf "ZU" stelle, dauert es nur ein paar Sekunden, bevor er wieder auf "AUF" springt.

Wenn der Status jetzt aber eben nicht "AUF" oder "ZU" ist, kann PWM(R) nicht richtig schalten, und die Heizung bleibt dauernd an oder aus...

Was kann man da machen - außer nach der Ursache für das "MISSING ACK" zu suchen?

PS. Das "MISSING ACK" kommt mir komisch vor, weil FHEM-Sender und der Aktor im gleichen Raum sind...

Viele Grüße
Wolfgang
Hi Wolfgang,

als ich mit PWM / PWMR anfing, hatte ich mit meiner HM-basierenden Lösung auch "Probleme". Kein Missing ack, aber die Aktoren blieben immer auf "set-off" o.ä. hängen. Zunächst bin ich auch den Weg gegangen, das irgendwie im PWM(R) Modul zu behandeln - das war die größte Zeitverschwendung meines Lebens in Sachen FHEM, kann ich nur für mich festhalten.

Nach systematischer Beseitigung verschiedener Empfangs- und Konfigurationsprobleme (zB vccu mit preferred IO oder Migration auf ein "richtiges" WLAN-System) läuft PWMR bei mir wie ein Uhrwerk. Gelegentliche "Hänger" gibt es noch, aber eher so alle 2-3 Wochen mal ein "set-off", das hängenbleibt. Hier kenne ich den Fehler und begegne dem Symptom mit einem Watchdog.

Leider hastg Du nicht geschrieben, welche Aktoren Du verwendest - auch die RSSI-Werte sind durchaus aufschlussreich, sofern vorhanden.

Gruß,

Tom
FHEM: debian Intel-NUC / 25 x MAX!, 15 x HM-bidcos, MQTT, 3 x 1wire, 20 x Shelly, 20 x Tasmota, 12 x Yeelight, Opentherm-GW, Espeasy, alexa-fhem, kodi, unifi, musiccast, ...

jamesgo

Zitat von: stromer-12 am 08 Januar 2019, 22:14:30
Nabend,

Was ist eigentlich der Unterschied zwischen PID 1... und PID 2... außer der dem ILookBackCnt ?
--
Gruß Gerd

Pid 2 ist die Implementierung von PID nach Handbuch. Es werden "alle" I-Werte in die Rechnung einbezogen. Der I-Wert liegt zwischen 0..1
Pid 1 es werden die Letzen 5 (besser z.B 22) Werte berücksichtigt. Der I-Wert liegt zwischen -1..1. Wenn jede Minute gerechnet wird bedeutet 22 dass I für die lezten 22 Minuten relevant ist.

Mir gefällt die Variante 1 besser.

Grüße
Andy

jamesgo

Zitat von: wowogiengen am 07 Januar 2019, 23:01:11
Hallo,
mir ist aufgefallen, dass das Modul PWMR in Verbindung mit dem Modul PWM wohl ein Problem hat, wenn der Aktor ein "MISSING ACK" als Status zurückliefert.
Wenn der Status "MISSING ACK" ist, dann wird der Aktor nicht mehr auf oder zu gemacht.
Im Normalfall reagieren die Module ja so:

Wenn der Aktor "ZU" ist, und "AUF" sein sollte, dann wird er auf "AUF" gestellt. Wenn ich ihn dann manuell wieder auf "ZU" stelle, dauert es nur ein paar Sekunden, bevor er wieder auf "AUF" springt.

Wenn der Status jetzt aber eben nicht "AUF" oder "ZU" ist, kann PWM(R) nicht richtig schalten, und die Heizung bleibt dauernd an oder aus...

Was kann man da machen - außer nach der Ursache für das "MISSING ACK" zu suchen?

PS. Das "MISSING ACK" kommt mir komisch vor, weil FHEM-Sender und der Aktor im gleichen Raum sind...

Viele Grüße
Wolfgang

Hallo Wolfgang,

wenn ich mir den Code anschaue, dann wir immer ein "set actor ..." ausgeführt, unabhängig wie "actorState" steht.
Der für den Raum interne Wert von "actorState" wird einmalig aus dem Actor ermittelt. Hier ist Variablen "STATE" entscheidend.

Der Actor wir mit "<actor>[:<a_regexp_on>]" definiert. Default für den regexp ist "on". D.h. wenn "on" den "STATE" des Actors matched dann wird actorState auf "on" gesetzt. Bei "MISSING ACK" wird angenommen dass der Actor auf "off" steht. Jeder neu berechnete Zustand wird mit "set ..." gesetzt. Wenn das setzen funktionieren würde, dann würde der Status spätestens nach dem zweien mal schalten stimmen.

Du könntest "a_regexp_on" z.B. auf "on|MISSING.*" setzten, dann würde "MISSING ACK" als "on" interpretiert und es würde auch nach dem Neustart von FHEM versucht werden den Actor auszuschalten. (aber eben nur einmal nach dem Start).

Wenn aber der "set off" nur manchmal zum Ausschalten führt hilft das nur wenig. D.h. PWM/PWMR regeln fröhlich drauf los aber dein Actor schaltet nur ab und an (und es liegt nicht am Modul was dem Actor weniger gefällt)

Also kann ich mich nur der Aussagge von Tom anschliessen: Du musst den Actor in den Griff bekommen.

Ein Actor hat nur zwei Stati. On oder Off und nicht drei (on/off/vielleicht).

Grüße
Andy