HM-TC-IT-WM-W-EU_SwitchTr

Begonnen von stgeran, 02 September 2017, 13:32:39

Vorheriges Thema - Nächstes Thema

stgeran

Ich weis, daß der Kanal 07 mit einem Schaltaktor gepeert werden kann. Aus der Wiki
set <HM-TC-IT-WM-W-EU_SwitchTr> peerChan 0 <HM-LC-SW1-FM> single set
set <HM-LC-SW1-FM> regSet shCtOn ltLo <HM-TC-IT-WM-W-EU_SwitchTr>

Meine Frage: Was löst den Trigger aus?
FHEM auf Raspberry
CSM 866MHz für EM1010 mit Strom und Gaszähler
CUL 866MHz für MAX! Radiator Thermostat 
CUL 433MHz für Innen und Aussen Temp
HMLAN für HM-LC-Sw1-PI-2

Pfriemler

Was den Trigger auslöst? Die Entscheidung des Thermostaten zu heizen? oder wofür sollte das sonst gut sein? Licht schalten gehört doch nicht zu den vorrangigen Aufgaben des Gerätes.  ;D

Aber ich gestehe: das mit ltLo habe ich nicht durchblickt. Das sollte eigentlich  im Wiki erklärt werden ...
"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."

stgeran

Hab ich jetzt geschafft. Nach dem Hochdrehen der Solltemperatur schaltet der Switch ein. Nach dem Herunterdrehen leider nicht mehr aus. Ich habe es so wie im ersten Post beschrieben gemacht.
FHEM auf Raspberry
CSM 866MHz für EM1010 mit Strom und Gaszähler
CUL 866MHz für MAX! Radiator Thermostat 
CUL 433MHz für Innen und Aussen Temp
HMLAN für HM-LC-Sw1-PI-2

Pfriemler

#3
Ah ... ich glaube zu verstehen.
edit: Nein, jetzt erst. korrigierte Fassung (und keiner hat mich darauf hingewiesen ...  :-[) :

Laut Wiki sendet der Thermostat einen Triggerwert "200" zum Einschalten der Heizung und dann vermutlich eine 0 zum Ausschalten. Liegt die Ist- unter Solltemperatur, wird ein Trigger 200 gesendet, liegt sie darüber, eine 0.
Ein Schaltaktor reagiert aber normalerweise nur auf Trigger >=50 ("geLo"), d.h. er toggelt (schaltet um) bei jedem Trigger. Das heißt beim Heizbeginn schaltet der Aktor ein, bleibt aber dann an, weil er die 0 ignoriert. Erst wenn der Thermostat das nächste Mal einen Einschaltbefehl sendet, schaltet der Aktor aus. Das ist natürlich unerwünscht.

Wenn der Aktor einem Zustand folgen soll (das kann man zum Beispiel mit dem Neigungssensor oder einem Türkontakt so machen: Tor auf > Licht an, Tor zu > Licht aus), kann man stattdessen das Ein- oder Ausschaltkriterium von "geLo" auf "ltLo" ändern. Dann schaltet der Aktor, wenn er einen Trigger 0 bekommt.
Welcher Trigger in welchem Zustand verarbeitet wird, regeln die Register shCtxxx. Ist der Aktor eingeschaltet, ist es das Register shCtOn. Damit der Aktor also zum Heizende (wenn 0 gesendet wird) aussschaltet, muss z.B. sein Triggerkriterium von >=50 auf <50 geändert werden, die genannte Registerprogrammierung tut dies.

Möchte man einen inversen Betrieb erreichen, dann ändert man stattdessen shCtOff auf ltLo. Dann ist der Aktor immer an, wenn nicht geheizt werden soll. Das macht Sinn bei der Ansteuerung von normalerweise offenen Thermostatsteuerköpfen in Fußbodenheizungen (unter Strom dehnt sich eine Flüssigkeit aus und schließt das Ventil = Heizung aus) oder auch wenn statt der Heizung ein Kühlaggregat geschaltet werden soll.

Langer Rede kurzer Sinn: Eigentlich müsste alles wie gewünscht funktionieren. ... ?


"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."