Node Red Schrittkette
Moderator: Co-Administratoren
-
- Beiträge: 166
- Registriert: 28.11.2011, 20:31
- System: CCU und Access Point
- Hat sich bedankt: 5 Mal
- Danksagung erhalten: 5 Mal
Node Red Schrittkette
Hallo Zusammen!
Ich möchte für meinen Gartenbewässerung einen Flow in Node Red anlegen. Allerdings benötige ich dafür einen Art Schrittkette die ich durchlaufen muss. Auch einige Bedingungen müssen vorher geprüft werden.
Bis jetzt konnte ich nichts passendes finden und anscheinend ist das nicht so einfach in Node Red. Hat jemand sowas schon einmal gemacht?
Im Anhang mal eine grobe Struktur was ich benötige.
Gruß
Vore
Ich möchte für meinen Gartenbewässerung einen Flow in Node Red anlegen. Allerdings benötige ich dafür einen Art Schrittkette die ich durchlaufen muss. Auch einige Bedingungen müssen vorher geprüft werden.
Bis jetzt konnte ich nichts passendes finden und anscheinend ist das nicht so einfach in Node Red. Hat jemand sowas schon einmal gemacht?
Im Anhang mal eine grobe Struktur was ich benötige.
Gruß
Vore
System: Asus TinkerS mit RaspberryMatic und Cubietruck mit IOBroker
-
- Beiträge: 460
- Registriert: 06.01.2018, 12:48
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 57 Mal
- Danksagung erhalten: 39 Mal
Re: Node Red Schrittkette
Hallo,
bis auf das mit der Bedingung ist es sehr einfach in Node Red. Bei der Bedingung ist es auch nicht schwer wenn man weiß wie es geht.
Zu dem Zeitversatz, sieh dir mal die trigger oder Delay Node an.
Bei Bedingungen kommt es darauf an was du für welche hast.
Grundsätzlich ist für Bedingungen die Switch Node gut. Bei Zeit die Within time aus dem contrib-sun-position Paket (ist Teil von Redmatic).
Gruß
bis auf das mit der Bedingung ist es sehr einfach in Node Red. Bei der Bedingung ist es auch nicht schwer wenn man weiß wie es geht.
Zu dem Zeitversatz, sieh dir mal die trigger oder Delay Node an.
Bei Bedingungen kommt es darauf an was du für welche hast.
Grundsätzlich ist für Bedingungen die Switch Node gut. Bei Zeit die Within time aus dem contrib-sun-position Paket (ist Teil von Redmatic).
Gruß
-
- Beiträge: 166
- Registriert: 28.11.2011, 20:31
- System: CCU und Access Point
- Hat sich bedankt: 5 Mal
- Danksagung erhalten: 5 Mal
Re: Node Red Schrittkette
Hallo!
Ich habe etwas mit Redmatic gearbeitet, komme aber leider nicht weiter.
Folgende Gegebenheit: ich nutzen einen Wasserverteiler von Gardena, der zwischen den einzelnen Kreisen umschaltet. Dazu habe ich ein Magnetventil das ich schalten kann. Sobald der Magnetventil öffnet, wird der Wasserverteiler durch den Wasserdruck "vorgespannt". Wenn der Wasserdruck nachlässt, schaltet der Wasserverteiler auf den nächsten Kreis um.
Außerdem möchte ich vor dem Start noch den Wasserstand in meiner Zisterne prüfen. Von der Programmlogik wäre das in etwa so:
Teilweise funktioniert es auch schon, hier bekomme ich ein True wenn genug Wasser drin ist.
Ich kann 120Sek bewässern (120Sek zum Testen): Aber dann läuft der Flow einfach durch. Die zweiten 120Sek werde nicht mehr abgewartet. Danach schaltet das Ventil unkontrolliert herum.
Hier mal der komplette Flow:
Jemand eine Idee? Was mache ich falsch?
Ich habe etwas mit Redmatic gearbeitet, komme aber leider nicht weiter.
Folgende Gegebenheit: ich nutzen einen Wasserverteiler von Gardena, der zwischen den einzelnen Kreisen umschaltet. Dazu habe ich ein Magnetventil das ich schalten kann. Sobald der Magnetventil öffnet, wird der Wasserverteiler durch den Wasserdruck "vorgespannt". Wenn der Wasserdruck nachlässt, schaltet der Wasserverteiler auf den nächsten Kreis um.
Außerdem möchte ich vor dem Start noch den Wasserstand in meiner Zisterne prüfen. Von der Programmlogik wäre das in etwa so:
Teilweise funktioniert es auch schon, hier bekomme ich ein True wenn genug Wasser drin ist.
Ich kann 120Sek bewässern (120Sek zum Testen): Aber dann läuft der Flow einfach durch. Die zweiten 120Sek werde nicht mehr abgewartet. Danach schaltet das Ventil unkontrolliert herum.
Hier mal der komplette Flow:
Code: Alles auswählen
[{"id":"37f99254.da0906","type":"tab","label":"Bewaesserung","disabled":true,"info":""},{"id":"66e8b3a5.791b2c","type":"time-inject","z":"37f99254.da0906","name":"","positionConfig":"b573fb49.72bb6","payload":"true","payloadType":"bool","payloadTimeFormat":0,"payloadOffset":0,"payloadOffsetType":"none","payloadOffsetMultiplier":60000,"topic":"start","time":"21:01","timeType":"entered","timeDays":"*","offset":0,"offsetType":"num","offsetMultiplier":60000,"property":"","propertyType":"none","propertyCompare":"true","propertyThreshold":"","propertyThresholdType":"num","timeAlt":"","timeAltType":"entered","timeAltOffset":0,"timeAltOffsetType":"none","timeAltOffsetMultiplier":60000,"once":false,"onceDelay":0.1,"addPayload1":"","addPayload1Type":"none","addPayload1Value":"","addPayload1ValueType":"date","addPayload1Format":"0","addPayload1Offset":0,"addPayload1OffsetType":"none","addPayload1OffsetMultiplier":60000,"addPayload1Days":"*","addPayload2":"","addPayload2Type":"none","addPayload2Value":"","addPayload2ValueType":"date","addPayload2Format":"0","addPayload2Offset":0,"addPayload2OffsetType":"none","addPayload2OffsetMultiplier":60000,"addPayload2Days":"*","addPayload3":"","addPayload3Type":"none","addPayload3Value":"","addPayload3ValueType":"date","addPayload3Format":"0","addPayload3Offset":0,"addPayload3OffsetType":"none","addPayload3OffsetMultiplier":60000,"addPayload3Days":"*","recalcTime":2,"x":120,"y":720,"wires":[["72991c6a.073efc","246801e6.f25816"]]},{"id":"22c7d188.8b6f26","type":"combine-bangbang","z":"37f99254.da0906","upper":"15","lower":"10","invert":false,"name":"Pegelüberwachung","x":510,"y":760,"wires":[["72991c6a.073efc"]]},{"id":"aa133a03.941ea","type":"delay","z":"37f99254.da0906","name":"","pauseType":"delay","timeout":"5","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":1060,"y":720,"wires":[["c5088c0.c5ce778"]]},{"id":"a627ec0d.510798","type":"comment","z":"37f99254.da0906","name":"Zeit für Start und Füllstand","info":"","x":130,"y":660,"wires":[]},{"id":"246801e6.f25816","type":"ccu-get-value","z":"37f99254.da0906","name":"Pegel_Zisterne","ccuConfig":"38263145.35ea0e","iface":"BidCos-RF","channel":"NEQ1012864:1 Pegel_Zisterne","sysvar":"Alarmmeldungen","sysvarProperty":"value","datapoint":"FILLING_LEVEL","datapointProperty":"value","setProp":"","setPropType":"cmsg","x":320,"y":760,"wires":[["22c7d188.8b6f26"]]},{"id":"72991c6a.073efc","type":"BooleanLogic","z":"37f99254.da0906","name":"","operation":"AND","inputCount":"2","topic":"result","x":700,"y":720,"wires":[["aa133a03.941ea","361b3008.c1b728","78f62e42.db1e7"]]},{"id":"361b3008.c1b728","type":"delay","z":"37f99254.da0906","name":"","pauseType":"delay","timeout":"120","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":910,"y":920,"wires":[["30c565dd.efcb22"]]},{"id":"78f62e42.db1e7","type":"debug","z":"37f99254.da0906","name":"Starte Pumpe","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","x":1050,"y":780,"wires":[]},{"id":"16764d62.0b4523","type":"delay","z":"37f99254.da0906","name":"","pauseType":"delay","timeout":"120","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":2290,"y":920,"wires":[["9c59576e.ee1d88"]]},{"id":"44534a60.8edfe4","type":"delay","z":"37f99254.da0906","name":"","pauseType":"delay","timeout":"60","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":1590,"y":920,"wires":[["cdac4bc1.6ce368"]]},{"id":"9ce1f149.599bf8","type":"ccu-value","z":"37f99254.da0906","name":"","iface":"BidCos-Wired","channel":"IEQ0454412:14 Magnetventil_Garage","datapoint":"STATE","mode":"","start":true,"change":true,"cache":false,"queue":false,"on":0,"onType":"undefined","ramp":0,"rampType":"undefined","working":true,"ccuConfig":"38263145.35ea0e","topic":"${CCU}/${Interface}/${channel}/${datapoint}","x":1360,"y":920,"wires":[["44534a60.8edfe4"]]},{"id":"29f7bcab.b23f64","type":"ccu-value","z":"37f99254.da0906","name":"","iface":"BidCos-Wired","channel":"IEQ0454412:14 Magnetventil_Garage","datapoint":"STATE","mode":"","start":true,"change":true,"cache":false,"queue":false,"on":0,"onType":"undefined","ramp":0,"rampType":"undefined","working":true,"ccuConfig":"38263145.35ea0e","topic":"${CCU}/${Interface}/${channel}/${datapoint}","x":2080,"y":920,"wires":[["16764d62.0b4523"]]},{"id":"30c565dd.efcb22","type":"change","z":"37f99254.da0906","name":"","rules":[{"t":"change","p":"payload","pt":"msg","from":"true","fromt":"str","to":"false","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":1140,"y":920,"wires":[["9ce1f149.599bf8"]]},{"id":"cdac4bc1.6ce368","type":"change","z":"37f99254.da0906","name":"","rules":[{"t":"change","p":"payload","pt":"msg","from":"false","fromt":"str","to":"true","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":1820,"y":920,"wires":[["29f7bcab.b23f64"]]},{"id":"f9d49416.f6af78","type":"comment","z":"37f99254.da0906","name":"120Sek Gießen","info":"","x":900,"y":1000,"wires":[]},{"id":"72a031ec.9a91f","type":"comment","z":"37f99254.da0906","name":"True to False","info":"","x":1130,"y":1000,"wires":[]},{"id":"bcb2e2ae.1ae308","type":"comment","z":"37f99254.da0906","name":"Ventil zu","info":"","x":1340,"y":1000,"wires":[]},{"id":"68438ab2.55e5b4","type":"comment","z":"37f99254.da0906","name":"Warten","info":"","x":1590,"y":1000,"wires":[]},{"id":"9ef8b423.79fb8","type":"comment","z":"37f99254.da0906","name":"False to True","info":"","x":1830,"y":1000,"wires":[]},{"id":"f75cc4ca.24d72","type":"comment","z":"37f99254.da0906","name":"Ventil Auf","info":"","x":2080,"y":1000,"wires":[]},{"id":"5bbbb7dc.71e41","type":"comment","z":"37f99254.da0906","name":"120Sek Gießen","info":"","x":2300,"y":1000,"wires":[]},{"id":"51fc1ff6.9bc2b","type":"delay","z":"37f99254.da0906","name":"","pauseType":"delay","timeout":"60","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":3030,"y":920,"wires":[["f844f9.ad219b08"]]},{"id":"eb5d90a7.acc258","type":"ccu-value","z":"37f99254.da0906","name":"","iface":"BidCos-Wired","channel":"IEQ0454412:14 Magnetventil_Garage","datapoint":"STATE","mode":"","start":true,"change":true,"cache":false,"queue":false,"on":0,"onType":"undefined","ramp":0,"rampType":"undefined","working":true,"ccuConfig":"38263145.35ea0e","topic":"${CCU}/${Interface}/${channel}/${datapoint}","x":2800,"y":920,"wires":[["51fc1ff6.9bc2b"]]},{"id":"949b7e0e.5f3a2","type":"ccu-value","z":"37f99254.da0906","name":"","iface":"BidCos-Wired","channel":"IEQ0454412:14 Magnetventil_Garage","datapoint":"STATE","mode":"","start":true,"change":true,"cache":false,"queue":false,"on":0,"onType":"undefined","ramp":0,"rampType":"undefined","working":true,"ccuConfig":"38263145.35ea0e","topic":"${CCU}/${Interface}/${channel}/${datapoint}","x":3520,"y":920,"wires":[["ac3194bc.d3c4c8"]]},{"id":"9c59576e.ee1d88","type":"change","z":"37f99254.da0906","name":"","rules":[{"t":"change","p":"payload","pt":"msg","from":"true","fromt":"str","to":"false","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":2580,"y":920,"wires":[["eb5d90a7.acc258"]]},{"id":"f844f9.ad219b08","type":"change","z":"37f99254.da0906","name":"","rules":[{"t":"change","p":"payload","pt":"msg","from":"false","fromt":"str","to":"true","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":3260,"y":920,"wires":[["949b7e0e.5f3a2"]]},{"id":"ac3194bc.d3c4c8","type":"delay","z":"37f99254.da0906","name":"","pauseType":"delay","timeout":"120","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":3770,"y":920,"wires":[["d3f9cdcf.4365a8"]]},{"id":"275cf624.ffd3ea","type":"comment","z":"37f99254.da0906","name":"120Sek Gießen","info":"","x":3760,"y":1000,"wires":[]},{"id":"9ce5082d.7337a","type":"comment","z":"37f99254.da0906","name":"True to False","info":"","x":2570,"y":1000,"wires":[]},{"id":"68f646be.974e18","type":"comment","z":"37f99254.da0906","name":"Ventil zu","info":"","x":2780,"y":1000,"wires":[]},{"id":"648ee7ad.b1a518","type":"comment","z":"37f99254.da0906","name":"Warten","info":"","x":3030,"y":1000,"wires":[]},{"id":"5cc737c5.d6c9b","type":"comment","z":"37f99254.da0906","name":"False to True","info":"","x":3270,"y":1000,"wires":[]},{"id":"31a55e9b.132c3a","type":"comment","z":"37f99254.da0906","name":"Ventil Auf","info":"","x":3520,"y":1000,"wires":[]},{"id":"d3f9cdcf.4365a8","type":"change","z":"37f99254.da0906","name":"","rules":[{"t":"change","p":"payload","pt":"msg","from":"true","fromt":"str","to":"false","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":4020,"y":920,"wires":[["c9c1bdd4.3377c","e7106210.64ca78"]]},{"id":"44571d0e.2a852c","type":"comment","z":"37f99254.da0906","name":"Fertig und beenden","info":"","x":4030,"y":1000,"wires":[]},{"id":"c9c1bdd4.3377c","type":"ccu-value","z":"37f99254.da0906","name":"","iface":"BidCos-Wired","channel":"IEQ0454412:14 Magnetventil_Garage","datapoint":"STATE","mode":"","start":true,"change":true,"cache":false,"queue":false,"on":0,"onType":"undefined","ramp":0,"rampType":"undefined","working":true,"ccuConfig":"38263145.35ea0e","topic":"${CCU}/${Interface}/${channel}/${datapoint}","x":4300,"y":880,"wires":[[]]},{"id":"e7106210.64ca78","type":"debug","z":"37f99254.da0906","name":"Stoppe Pumpe","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","x":4280,"y":940,"wires":[]},{"id":"c5088c0.c5ce778","type":"ccu-value","z":"37f99254.da0906","name":"","iface":"BidCos-Wired","channel":"IEQ0454412:14 Magnetventil_Garage","datapoint":"STATE","mode":"","start":true,"change":true,"cache":false,"queue":false,"on":0,"onType":"undefined","ramp":0,"rampType":"undefined","working":true,"ccuConfig":"38263145.35ea0e","topic":"${CCU}/${Interface}/${channel}/${datapoint}","x":1280,"y":720,"wires":[[]]},{"id":"b573fb49.72bb6","type":"position-config","z":"","name":"Prath","isValide":"true","longitude":"0","latitude":"0","angleType":"deg","timeZoneOffset":"99","stateTimeFormat":"3","stateDateFormat":"12"},{"id":"38263145.35ea0e","type":"ccu-connection","z":"","name":"localhost","host":"localhost","regaEnabled":true,"bcrfEnabled":true,"iprfEnabled":true,"virtEnabled":false,"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":""}]
System: Asus TinkerS mit RaspberryMatic und Cubietruck mit IOBroker
-
- Beiträge: 63
- Registriert: 08.03.2018, 08:45
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 3 Mal
Re: Node Red Schrittkette
Ok, wenn ich mir deinen Wunsch-Ablauf ansehe, dann ist das ähnlich zu meiner Bewässerung. Die habe ich jetzt mal in Redmatic umgesetzt, dass stand eh noch auf der ToDo Liste. Mein Flow schaut wie folgt aus
Hier als Beispiel habe ich einen inject zum provisorischen Starten genutzt. Das Level der Zisterne wird ausgelesen und in einer Funktion ausgewertet
Wenn der Füllstand größer 20 ist, kann es bei mir losgehen, deshalb wird ein true ausgegeben, sonst ein false
In der Funkton Zähler starten lege ich einen globalen context (globale Variable) an und setze deren Wert auf 1.
Anschließend erfolgt die erste Prüfung, ob der Zähler kleiner oder gleich 5 ist. Nur wenn dies der Fall ist, wird die Nachricht weitergeleitet.
Von hier aus wird das erste Ventil geöffnet und zeitgleich eine Verzögerung gestartet (10 Sekunden waren natürlich nur zum testen). Nach der Verzögerung wird die Nachricht auf false gesetzt und wieder zum Ventil geleitet, welches dann schließt.
Gleichzeitig geht es nach der ersten 10 Sekunden Verzögerung zum Ventil 2 was geöffnet wird und zusätzlich zur nächsten Verzögerung, welche dass zweite Ventil wieder schließt.
Das ganze wiederholt sich jetzt bis zur letzten Verzögerung. Hiernach wird eine Funktion gestartet, welche den Zähler um eins erhöht
und dann wieder in unsere Abfrage "Zähler kleiner 5" geht ( welche ich "kleiner gleich 5" hätte nennen müssen )
Das ganze läuft 5 mal durch und dann war es das, bis man wieder über den inject startet. Ich denke hiermit solltest du diene Anlage auch zum laufen bekommen ... wenn nicht, einfach nochmal schreiben.
Hier als Beispiel habe ich einen inject zum provisorischen Starten genutzt. Das Level der Zisterne wird ausgelesen und in einer Funktion ausgewertet
Wenn der Füllstand größer 20 ist, kann es bei mir losgehen, deshalb wird ein true ausgegeben, sonst ein false
In der Funkton Zähler starten lege ich einen globalen context (globale Variable) an und setze deren Wert auf 1.
Anschließend erfolgt die erste Prüfung, ob der Zähler kleiner oder gleich 5 ist. Nur wenn dies der Fall ist, wird die Nachricht weitergeleitet.
Von hier aus wird das erste Ventil geöffnet und zeitgleich eine Verzögerung gestartet (10 Sekunden waren natürlich nur zum testen). Nach der Verzögerung wird die Nachricht auf false gesetzt und wieder zum Ventil geleitet, welches dann schließt.
Gleichzeitig geht es nach der ersten 10 Sekunden Verzögerung zum Ventil 2 was geöffnet wird und zusätzlich zur nächsten Verzögerung, welche dass zweite Ventil wieder schließt.
Das ganze wiederholt sich jetzt bis zur letzten Verzögerung. Hiernach wird eine Funktion gestartet, welche den Zähler um eins erhöht
und dann wieder in unsere Abfrage "Zähler kleiner 5" geht ( welche ich "kleiner gleich 5" hätte nennen müssen )
Das ganze läuft 5 mal durch und dann war es das, bis man wieder über den inject startet. Ich denke hiermit solltest du diene Anlage auch zum laufen bekommen ... wenn nicht, einfach nochmal schreiben.
-
- Beiträge: 166
- Registriert: 28.11.2011, 20:31
- System: CCU und Access Point
- Hat sich bedankt: 5 Mal
- Danksagung erhalten: 5 Mal
Re: Node Red Schrittkette
Hallo!
Vielen Dank für Deinen Kommentar!
So ähnlich hatte ich es ja auch bereits umgesetzt. Ich habe es jetzt noch einmal etwas umgestellt, zum Testen aber erst einmal die Sache mit dem Zähler weggelassen (kommt dann später dazu).
Mein Problem (was ich nicht verstehe): der Flow läuft einmal durch und startet die Pumpe und öffnet das Ventil.. dann verzögert der Flow aber nicht mehr. Es läuft einmal komplett durch und schaltet nach 120Sek am Schluss alles einfach ab. Die 60Sek werden gar nicht mehr gewartet und auch die zweiten 120Sek nicht.
Was mache ich falsch?
Vielen Dank für Deinen Kommentar!
So ähnlich hatte ich es ja auch bereits umgesetzt. Ich habe es jetzt noch einmal etwas umgestellt, zum Testen aber erst einmal die Sache mit dem Zähler weggelassen (kommt dann später dazu).
Mein Problem (was ich nicht verstehe): der Flow läuft einmal durch und startet die Pumpe und öffnet das Ventil.. dann verzögert der Flow aber nicht mehr. Es läuft einmal komplett durch und schaltet nach 120Sek am Schluss alles einfach ab. Die 60Sek werden gar nicht mehr gewartet und auch die zweiten 120Sek nicht.
Was mache ich falsch?
System: Asus TinkerS mit RaspberryMatic und Cubietruck mit IOBroker
Re: Node Red Schrittkette
Moin vore,
ich glaube die Verzögerungen beziehen sich immer auf den Startpunkt.
Addiere mal die Verzögerungen zusammen und schau mal was passiert.
Frei nach dem Motto:
1 Verzögerung 5s
2 Verzögerung 5s + 120s
3 Verzögerung 5s + 120s + 60s
.. usw...
Gruß Dirk
ich glaube die Verzögerungen beziehen sich immer auf den Startpunkt.
Addiere mal die Verzögerungen zusammen und schau mal was passiert.
Frei nach dem Motto:
1 Verzögerung 5s
2 Verzögerung 5s + 120s
3 Verzögerung 5s + 120s + 60s
.. usw...
Gruß Dirk
RPi3: RaspberryMatic 3.47.22.20191026 (HmIP & HM)
CUxD 2.3.4
RedMatic 5.2.0
Programmedrucken 1.2a
Pocket Control HM V10.5.1 Abo
CUxD 2.3.4
RedMatic 5.2.0
Programmedrucken 1.2a
Pocket Control HM V10.5.1 Abo
-
- Beiträge: 166
- Registriert: 28.11.2011, 20:31
- System: CCU und Access Point
- Hat sich bedankt: 5 Mal
- Danksagung erhalten: 5 Mal
Re: Node Red Schrittkette
Hallo!
Danke für den Tip. Damit läuft zumindest die Sequenz erst mal durch. Wobei das schon ziemlich bescheiden ist.. vor allem wenn das eigentlich mit dynamischen Zeiten durchlaufen soll. Nach Ablauf der Sequenz schalte die Pumpe und das Ventil aus. Nach ca. 2 Min geht das Ventil aber von alleine wieder an (ohne Pumpe) und schaltet munter die Sequenz wieder durch. Und das macht es auch ein 2tes und drittes mal. So langsam bin ich von NodeRede echt enttäuscht. Ich habe nichts gegen basteln.. aber irgendwann sollte es auch mal funktionieren
Gruß
Vore
Danke für den Tip. Damit läuft zumindest die Sequenz erst mal durch. Wobei das schon ziemlich bescheiden ist.. vor allem wenn das eigentlich mit dynamischen Zeiten durchlaufen soll. Nach Ablauf der Sequenz schalte die Pumpe und das Ventil aus. Nach ca. 2 Min geht das Ventil aber von alleine wieder an (ohne Pumpe) und schaltet munter die Sequenz wieder durch. Und das macht es auch ein 2tes und drittes mal. So langsam bin ich von NodeRede echt enttäuscht. Ich habe nichts gegen basteln.. aber irgendwann sollte es auch mal funktionieren
Gruß
Vore
System: Asus TinkerS mit RaspberryMatic und Cubietruck mit IOBroker
-
- Beiträge: 3978
- Registriert: 12.07.2009, 20:01
- Hat sich bedankt: 17 Mal
- Danksagung erhalten: 176 Mal
- Kontaktdaten:
Re: Node Red Schrittkette
Da gibt es einfach noch ein paar Verständnisprobleme bei Dir was die Funktionsweise der CCU Nodes angeht und wann die welche Nachricht an ihrem Ausgang ausgeben.
Setz mal Dein Flow nicht an deren Ausgang fort sondern zweige die nächste Verzögerung jeweils _vor_ dem Eingang der CCU Nodes ab. Und schau Dir mal mit Debug Nodes genau an wo/wann/welche Nachrichten aus welchen Nodes rauskommen, dann sollte das klarer werden.
-
- Beiträge: 3978
- Registriert: 12.07.2009, 20:01
- Hat sich bedankt: 17 Mal
- Danksagung erhalten: 176 Mal
- Kontaktdaten:
Re: Node Red Schrittkette
Und noch eine Anmerkung (die nicht Node-RED spezifisch ist sondern ganz allgemein gilt): Insbesondere bei einer Bewässerungssteuerung solltest Du nicht erst ein Einschalt- und später ein Ausschaltbefehl schicken. Wenn der Ausschaltbefehl "verloren" geht (was - insbesondere, aber nicht nur bei einem Funksystem - immer mal passieren kann) dann wird Dein Garten zur Sumpflandschaft. Bei diesem Usecase solltest Du unbedingt die ON_TIME nutzen (geht mit dem CCU Value Node recht komfortabel), dann läuft die Zeit im Aktor ab und eine Sumpflandschaft ist ausgeschlossen