NEWS
manueller Schalter über die Automatik setzen?
-
@csh-de Nun das ist wie mit dem anderen Problem - der Schalter hat mit dem Flow nur indirekt was zu tun. . Warum nutzt Du eigentlich trigger Nodes zum ein und ausschalten, wenn Du sowieso immer sendest?- Muss doch nicht 2 fach gesendet werden und warum verwendest Du immer msg.post? Wenn es mal komplizierter wird, würde ich Dir sogar eher eine Template Node vorschlagen aber so kannst doch einfach die payload verwenden?
Ich mach Dir gleich einen Vorschlag.
-
@mickym sagte in manueller Schalter über die Automatik setzen?:
trigger Nodes
damit er zweimal sendet, manchmal schaltet die Steckdose nicht gleich...
-
@mickym sagte in manueller Schalter über die Automatik setzen?:
warum verwendest Du immer msg.post?
das habe ich aus dem forum, es funktioniert, was ich da genau mache weiß ich nicht, try and error
-
@csh-de Na dann sollten wir mal aus dem trial und error Wissen machen.
OK - keine Ahnung warum das 2 mal gesendet werden soll - vielleicht ist das eine Eigenart der Pumpe - wir probieren es mal nur mit einem Senden.
Ich habe deshalb mal Deine trigger Nodes rausgeschmissen - sind aber noch im Flow (rotes Fragezeichen).
Ich habe die Aus- und Einschaltkommandos direkt in die ChangeNodes verfrachtet und gleich so, dass man die als Query-Parameter in einem Objekt an die Request Node schickt.
Das heißt du kannst in dem Du das Kommando POWER ON und POWER OFF als Objekt Deines topic schickst, direkt an die HTTP Request Nodes senden.
Über das Anfügen der payload (als Objekt) - kann die HTTP-Request Node selbst direkt als Query Parameter in die URL einfügen. Du musst Dich also nicht um die Codierung von Leer- und Sonderzeichen kümmern.
Nun zu was grundsätzlichem - Du musst wenn Du im Dashboard einen Flow steuern willst, den zeitlich unabhängig vom Flow machen. Sprich Dein Schalter PoolPumpe soll je ein Schalter sein mit dem Du steuern willst, ob das automatisch geschieht. Das hat also mit dem Zustand der Pumpe 0 und nichts zu tun. Deshalb hier den Kontext verwenden.
Wenn Du zusätzlich noch die Pumpe mit einem Schalter im Dashboard schalten willst und es Anzeigen lassen willst, dann brauchst Du ein zusätzliches Element in deinem Dashboard.
Hier als der Flow ergänzt um einen manuellen Schalter
Also hier musst Du einfach exakt sein, dass eine Automatik nichts mit dem Schaltzustand der Pumpe zu tun hat.
Hier also wieder mit dem manuellen Schalter der Pumpe ergänzt mit der Du natürlich bis zum nächsten Wert die Automatik überschreibst, deshalb am Ende des Flows.
Hier zum Import das Ganze:
-
Es gäbe zwar auch die Möglichkeit, wenn Du manuell den Schalter umlegst die Automatik automatisch zu deaktivieren. ALLERDINGS hast Du ja dann keine Möglichkeit mehr die Automatik wieder zu aktivieren. Ausser eben durch einen EIGENEN Schalter oder durch eine zeitliche Steuerung. Ich werde Dir auch gerne ein zeitliche Lösung vorschlagen - wenn Du keinen eigenen Schalter haben willst und Du die Automatik, wie Du sagst temporär deaktivieren willst. Sagen wir mal nach 2 Std. soll die Automatik automatisch wieder übernehmen?
Das wäre also die Lösung mit nur einem Schalter und zeitlicher Steuerung:
Sprich nach 2 Std. wird die Automatik wieder aktiv. Das kann man natürlich auch über das Dashboard parametrisieren, wenn man will.
Aber nochmal:
- Die Automatikschaltung hat mit dem Status der Pumpe nichts zu tun.
- Wenn man manuell übersteuern möchte kann man die Automatik mit einem eigenen Schalter steuern oder über eine zeitliche Begrenzung die Automatik wieder aktiv setzen.
Wenn man wie im vorigen Post - die Pumpe manuell übersteuert, die Automatik eingeschaltet bleibt, wird diese die manuelle Schaltung wieder überschreiben. Du musst einfach Deine Logik überdenken, was Du genau willst.
-
@mickym Mega, DANKE für die Arbeit und die Zeit die du da rein steckst. Ich kann mich garnicht genug bedanken, megadank!!!
-
@csh-de Ich werde an dem letzten Flow noch was verbessern, damit auch wirklich der Status angezeigt wird und nicht nur der Schalter. Dann müsstest Du halt dort den Datenpunkt anschließen, der den Status wiedergibt.
Beispiel - Dein Pumpe meldet ihren Zustand mit ON oder OFF zurück - dann nimmst Du nicht die Rückkopplung des Schalters für den Zustand der Pumpe-
Du musst das halt ON/OFF nur wieder in das Objektformat wandeln, damit der Schalter den Zustand richtig erkennt.
-
@mickym sehr gut! kannst du den Code dazu noch Posten
-
@csh-de Na ich dachte die Change Node hatte ich ja gepostet, aber bitte gerne hier noch die 3 Nodes.
-
@mickym alles umgesetzt, funktioniert perfekt!!! Danke!!
konnte gleich noch meine Heizstäbe Automatik umschreiben mit dieser eleganten Lösung, sehr schön.
und wieder sehr viel dabei gelernt, I Love ItGrazie und Ciao