NEWS
Mehrere Steckdosen Werte vergleichen zum Schalten
-
@kredar Das Problem ist dass alle 3 wohl das gleiche Topic haben.Lösch mal aus der Change Node die Regel, die das Topic extrahierst bzw. ändert.die Eingänge melden und es muss sich wie bei mir im Screenshot eine Objekt mit allen 3 Topics bilden. Das liegt daran, dass alle 3 Datenpunkte ENERGY_Power heißen. Wenn du mir den vollständigen Pfad aller 3 topics postest dann kann ich das ändern oder löschst einfach die Regel in der Change-node.
Alternativ kannst du das Topic auch selbst unterschiedlich setzen. So der Flow sollte in jedem Fall funktionieren:
Du musst nur noch die richtigen Datenpunkte vorne anschliessen:Alternativ, wie gesagt, einfach die 1. Regel aus der Change Node des ursprünglichen Flows löschen.
PS: Du kannst die topics auch PC Power1, 2 und 3 nennen - die topics müssen nur unterschiedlich sein.
Und nochmal zu deinem Verständnis. In diesem Fall checkt der Flow nicht die Datenpunkte, sondern die Datenpunkte triggern den Flow. In der JOIN Node werden die Status aller Datenpunkte in einem Objekt gespeichert und nur die Eigenschaft des Objektes aktualisiert, dass sich meldet. Da in der JOIN Node steht, dass bereits nach 1 Nachricht gesendet werden soll, baut sich das Objekt auf, bis sich alles gemeldet hat und bei jeder neuen Nachricht wird das ganze Objekt verschickt, dass dann von der OR Node analysiert wird.
-
Jetzt geht es. Und ja, die Eingangs Nodes (PC Power) müssen unterschiedlich benannt werden da sonst eine Auswertung nicht möglich ist. Das habe ich ja immer mit Steckdose1 - 3 gemacht in meinem Fall. Nur wurde das nicht korrekt erkannt, sondern nur die wirren Watt zahlen ausgewertet.
Vielen Dank für deine Hilfe muss erstmal testen :).
mfg
-
@kredar
Somit bist Du immer auf dem neuest Stand und nicht erst nach 15 Minuten. Wenn Du nicht willst dass permanent Nachrichten kommen, weil sich die Werte nur geringfügig ändern, kannst Du noch eine Filter Node einbauen und dann wolltest Du ja, dass NUR false weiterkommt.Damit würde Dein vollständiger Flow NUR zum Ausschalten der Klima dann wie folgt aussehen:
-
Wunderbar, das ist jetzt wirklich aufgeräumt. Nun muss ich das noch einpflegen. Habe auch Schaltungen nach Uhrzeit (Licht abends) in kombination mit einem Lichtsensor und eben den wie hier beschriebenen PCs via Strommessung. Erst lasst ich das Licht prüfen, dann die Zeit und dann geht das Licht an. Außer es sind alle PCs aus = keiner im Haus = brauche kein Licht. Da muss ich eben dein neues Node einpflegen.
Ich danke dir nochmals für deine Hilfe
mfg
-
@kredar sagte in Mehrere Steckdosen Werte vergleichen zum Schalten:
Wunderbar, das ist jetzt wirklich aufgeräumt. Nun muss ich das noch einpflegen. Habe auch Schaltungen nach Uhrzeit (Licht abends) in kombination mit einem Lichtsensor und eben den wie hier beschriebenen PCs via Strommessung. Erst lasst ich das Licht prüfen, dann die Zeit und dann geht das Licht an. Außer es sind alle PCs aus = keiner im Haus = brauche kein Licht. Da muss ich eben dein neues Node einpflegen.
Ich danke dir nochmals für deine Hilfe
mfg
Freut mich. Hauptsache, Du hast die Funktionsweise verstanden - dann kannst Du es ja auf Deine Bedürfnisse entsprechend anpassen. Im Zweifelsfall lieber nochmal fragen.
-
Werde es mir mal sehr genau anschauen, hast es ja super erklärt oben Merci. Zur Not frage ich nochmal hier.
So schaut eine Schaltung aus. Da schaue ich gerade drüber
mfg
-
@kredar Ich glaube das müsste man logisch vereinfachen - das schaut recht komplex aus.
-
Haha, war klar das das kommt. Ich würde alles vereinfachen, da es doch komplex ist und damit fehleranfällig.
mfg
-
Ich bekomme Fehler angezeigt seit der Umstellung:
node-red.0
2023-06-30 00:45:56.708 error 30 Jun 00:45:56 - [error] [change:923f6883ad9b2e8a] Ungültiger JSONata Ausdruck: The values "false" and 20 either side of operator ">" must be of the same data type30 Jun 00:45:56 - [error] [change:923f6883ad9b2e8a] Ungültiger JSONata Ausdruck: The values "false" and 20 either side of operator ">" must be of the same data typenode-red.0
2023-06-30 00:45:56.688 error 30 Jun 00:45:56 - [error] [change:923f6883ad9b2e8a] Ungültiger JSONata Ausdruck: The values "false" and 20 either side of operator ">" must be of the same data typeIch meine das liegt an dem setze.msg.payload Node oder?
mfg
-
@kredar sagte in Mehrere Steckdosen Werte vergleichen zum Schalten:
923f6883ad9b2e8a
Du gibst diese Zahl einfach in das Suchfeld ein - dann siehst Du welche Node den Fehler wirft.
Es sieht eher so aus - als ob aus aus den Datenpunkten kein numerischer Wert rauskommt - warum auch immer - eventuell musst Du das abfangen. In der Change Node wird ja, je nachdem welche Leistung in dem Datenpunkt steht true oder false gesetzt.
Wenn die payload aber nicht numerisch ist, entsteht dieser Fehler.
Wenn Du nicht erklären kannst, wie das zustande kommt, dann musst Du diese Nachrichten raus filtern oder selbst ein numerischen Wert setzen. Die Fehlermeldung sagt ja, dass ich false > 20 ungültig ist.
Ich bekomme diesen Fehler, wenn der Datenpunkt zum Beispiel nicht existiert.
Einen Filter kannst Du ggf. mit einer Switch NOde setzen, wenn Du nicht sicherstellen kannst, dass Deine Werte numerisch sind:
-
Sorry war verhindert. Werde ich mir anschauen. Das kam nur einmal, bisher nicht mehr. Hmm, mal beobachten ;).
Danke für deine Hilfe.
mfg
-
Habe die Meldung noch öfters bekommen, teste gerade deine Switch Lösung. Mal sehen. Merci für die Lösung zum testen. Hoffe es klappt.
mfg