Verknüpfung TFK und Temperatur unklar

Node-RED als CCU3/RaspberryMatic Addon, WebApp, HomeKit, ...

Moderator: Co-Administratoren

Antworten
HMNutzer
Beiträge: 708
Registriert: 24.10.2016, 17:18
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 150 Mal
Danksagung erhalten: 22 Mal

Verknüpfung TFK und Temperatur unklar

Beitrag von HMNutzer » 23.05.2021, 10:49

Servus,

ich brauche bitte Grundlagenhilfe bei einem Flow.
Aufgabenstellung:
Wenn Fenster auf und Temperatur unter 10°C dann Meldung.

Bisherige Idee:
Die Temperatur wird über einen BangBang Node in True bzw. False umgewandelt. Klappt.
Der Zustand des Fensters über TFK liefert 2 wenn offen und 0 wenn zu.
Meine Idee war nur, die beiden Parameter über ein logisches AND zu verknüpfen. Leider schaffe ich es nicht,
den TFK Status (2 bzw. 0) in ein True oder False umzuwandeln.
Mein Versuch über einen Switch und zwei Change-Nodes klappt nicht.

Kann mir bitte einer den richtigen Weg erklären?

Bei meinem bis ersten Versuch ist mir nicht klar, wie oft die Temperatur abgefragt wird und somit die Meldung wiederholt oder eben unterbrochen wird.
In CCU Logik: wie oft ist bei "bei Aktualisierung auslösen"?
Viele Grüße

Martin

RaspberryMatic auf ESXi 7 mit RPI-RF-MOD/HB-RF-ETH. Div. HM und HMIP Funkkomponenten im Holzständerhaus

vore
Beiträge: 163
Registriert: 28.11.2011, 20:31
System: CCU und Access Point
Hat sich bedankt: 4 Mal
Danksagung erhalten: 4 Mal

Re: Verknüpfung TFK und Temperatur unklar

Beitrag von vore » 23.05.2021, 11:27

Hallo Martin,
Du kannst die "Events" über ein "Value"-Node von der CCU empfangen (in diesem Fall über den TFK) und dann im zweiten Schritt die Temperatur prüfen. In diesem Fall würde Node-Red bei jeder Betätigung des TFK ein Event empfangen. Es wird dann geprüft, ob es ein False (Zu) oder ein True (Auf) war.
Von dem "logischen" UND musste ich mich am Anfang auch etwas "entwöhnen" das ist in Node-Red nicht so einfach (jedes "Und" braucht ein eigenes Topic damit die "UNDs" unterschieden werden können). Das würde ich hier aber nicht machen, weil in meinen Augen zu aufwendig.

Hier ein Vorschlag entweder für die Tür oder direkt auf die Temperatur. Ich würde es mit der Tür machen, dann würdest Du aber keine Meldung bekommen, wenn während "Tür auf" die Temperatur absinkt (das sollte vermutlich kein Problem sein). Mit dem anderen Beispiel würde die Temperaturänderung ein Event auslösen.

Code: Alles auswählen

[{"id":"96d9428d.80f2e8","type":"ccu-value","z":"cb3bee10.ae923","name":"TFK-Tür","iface":"BidCos-RF","channel":"","datapoint":"","mode":"","start":true,"change":false,"cache":true,"queue":false,"on":0,"onType":"undefined","ramp":0,"rampType":"undefined","working":false,"ccuConfig":"38263145.35ea0e","topic":"${CCU}/${Interface}/${channel}/${datapoint}","x":260,"y":160,"wires":[["c53efba1.441c9"]]},{"id":"c53efba1.441c9","type":"switch","z":"cb3bee10.ae923","name":"True/Offen","property":"payload","propertyType":"msg","rules":[{"t":"true"}],"checkall":"true","repair":false,"outputs":1,"x":410,"y":160,"wires":[["a29e3734.fee4"]]},{"id":"a29e3734.fee4","type":"ccu-switch","z":"cb3bee10.ae923","name":"Temperatur <=10°","ccuConfig":"38263145.35ea0e","iface":"BidCos-RF","channel":"","sysvar":"B_Regenstatus","sysvarProperty":"value","datapoint":"STATE","datapointProperty":"value","property":"payload","propertyType":"msg","rules":[{"t":"lte","v":"10","vt":"num"}],"checkall":"false","repair":false,"outputs":1,"x":590,"y":160,"wires":[[]]},{"id":"62b81a6b.769b64","type":"ccu-value","z":"cb3bee10.ae923","name":"Temperatur","iface":"BidCos-RF","channel":"","datapoint":"","mode":"","start":true,"change":false,"cache":true,"queue":false,"on":0,"onType":"undefined","ramp":0,"rampType":"undefined","working":false,"ccuConfig":"38263145.35ea0e","topic":"${CCU}/${Interface}/${channel}/${datapoint}","x":270,"y":260,"wires":[["a72ed8cf.c7c8a8"]]},{"id":"953a819d.898f18","type":"ccu-switch","z":"cb3bee10.ae923","name":"Tür offen?","ccuConfig":"38263145.35ea0e","iface":"BidCos-RF","channel":"","sysvar":"B_Regenstatus","sysvarProperty":"value","datapoint":"","datapointProperty":"value","property":"payload","propertyType":"msg","rules":[{"t":"true"}],"checkall":"false","repair":false,"outputs":1,"x":630,"y":260,"wires":[[]]},{"id":"a72ed8cf.c7c8a8","type":"switch","z":"cb3bee10.ae923","name":"Temperratur <=10°","property":"payload","propertyType":"msg","rules":[{"t":"lte","v":"10","vt":"num"}],"checkall":"true","repair":false,"outputs":1,"x":450,"y":260,"wires":[["953a819d.898f18"]]},{"id":"38263145.35ea0e","type":"ccu-connection","name":"CCU3","host":"127.0.0.1","regaEnabled":true,"bcrfEnabled":true,"iprfEnabled":true,"virtEnabled":true,"bcwiEnabled":true,"cuxdEnabled":true,"regaPoll":true,"regaInterval":"30","rpcPingTimeout":"60","rpcInitAddress":"127.0.0.1","rpcServerHost":"127.0.0.1","rpcBinPort":"2047","rpcXmlPort":"2048","queueTimeout":"5000","queuePause":"250","contextStore":"memory"}]
System: Asus TinkerS mit RaspberryMatic und Cubietruck mit IOBroker

HMNutzer
Beiträge: 708
Registriert: 24.10.2016, 17:18
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 150 Mal
Danksagung erhalten: 22 Mal

Re: Verknüpfung TFK und Temperatur unklar

Beitrag von HMNutzer » 23.05.2021, 12:00

Hallo Vore,

mein "Knoten" besteht eben darin, dass ich einen Hinweis kriegen will, wenn Fenster offen und Temperatur unter 10°C.
Wenn nun bei geöffnetem Fenster die Temperatur über 10!C steigt, sollen keine weiteren Hinweise kommen.

Laufen die Flows immer wieder durch und die Bedingungen werden abgefragt?
Wenn ja, in welchem Abstand?
Viele Grüße

Martin

RaspberryMatic auf ESXi 7 mit RPI-RF-MOD/HB-RF-ETH. Div. HM und HMIP Funkkomponenten im Holzständerhaus

vore
Beiträge: 163
Registriert: 28.11.2011, 20:31
System: CCU und Access Point
Hat sich bedankt: 4 Mal
Danksagung erhalten: 4 Mal

Re: Verknüpfung TFK und Temperatur unklar

Beitrag von vore » 23.05.2021, 12:10

Hallo!
Hast du mein Beispiel mal importiert? Da sollte eigentlich genau das machen. Es wird eine „Message“ ausgesendet von der letzen Node, sobald Tür aufgeht und in diesem Moment die Temperatur <=10C ist. Diese “Message” kannst du dann weiter verarbeiten (z.B. mit einer Meldung). Die Flows sind immer aktiv und warten auf ein Event (in diesem Fall TFK meldet irgendwas). Ist Vergleichbar mit der Webui “auf Änderungen” triggern. Die Flows werden meines Wissen nicht nacheinander abgearbeitet. Alle Flows sind immer aktiv (außer Sub-Flows natürlich).

Gruß

Volker
System: Asus TinkerS mit RaspberryMatic und Cubietruck mit IOBroker

HMNutzer
Beiträge: 708
Registriert: 24.10.2016, 17:18
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 150 Mal
Danksagung erhalten: 22 Mal

Re: Verknüpfung TFK und Temperatur unklar

Beitrag von HMNutzer » 23.05.2021, 15:54

Servus Volker,

Deine beiden Flows verstehe ich so:
1. Wenn die Tür offen ist, dann wandle die Zahl 2 in "true" um und prüfe die Temperatur. Dann mach irgendwas.
2. Wenn die Temperatur kleiner 10 dann schaue wie die Tür ist und mach irgendwas.

Beides verstehe ich so, dass beim Ändern der Tür oder Temperatur der Flow anspringt.
Danach soll aber eine wiederholende Meldung kommen, dass die Tür offen ist.
Und zwar solange, bis die Tür geschlossen wird oder die Temperatur über 10°C steigt.

Wie soll das gehen?
Viele Grüße

Martin

RaspberryMatic auf ESXi 7 mit RPI-RF-MOD/HB-RF-ETH. Div. HM und HMIP Funkkomponenten im Holzständerhaus

vore
Beiträge: 163
Registriert: 28.11.2011, 20:31
System: CCU und Access Point
Hat sich bedankt: 4 Mal
Danksagung erhalten: 4 Mal

Re: Verknüpfung TFK und Temperatur unklar

Beitrag von vore » 23.05.2021, 19:11

Hallo!
Also in 2 wird da nichts gewandelt. Der Node wird getriggert, wenn sich der Zustand des TFK ändert. Ist der Wert des TFK True (offen) leitet die Switch-Node die Message (True) an die die zweite Switch-Node weiter. Ist die Temperatur <=10 wird die Message ebenfalls über Output 1 ausgegeben. Das kannst du dann weiter verarbeiten.
Für die Wiederholung brauchst du eine Schleife. Ich würde es mit einem Loop-Timer machen. Den kannst Du Dir über die Paketverwaltung installieren. Zeit festlegen wann der wieder prüfen soll und wenn TFK Zu meldet, den Timer mit Stop abbrechen.

https://flows.nodered.org/node/node-re ... looptimer2

Gruß

Volker
System: Asus TinkerS mit RaspberryMatic und Cubietruck mit IOBroker

Antworten

Zurück zu „RedMatic“