NEWS
Visualisierung mit Node Red erstellen
-
@damrak2022 sagte in Visualisierung mit Node Red erstellen:
@mickym Ein boolean
Und was unterscheidest Du in deiner Switch Node?
-
@mickym Da habe ich String genommen.
-
@damrak2022 sagte in Visualisierung mit Node Red erstellen:
@mickym Da habe ich String genommen.
Richtig - also kann der Switch Node schon mal nicht funktionieren.
Das ist auch der Grund warum ich Dir gesagt habe mache Debug Nodes dran und schau was für Datentypen rauskommen.Das gleiche mit Deiner Change Node - schau Dir mal die Datentypen an, die Deine Datenpunkte benötigen - ich denke auch booleans und Du setzt aktiv einen String.
Unabhängig davon, wie funktioniert denn eine Change Node.
-
@mickym Damit kann ich Eigenschaften ändern, löschen und verschieben
-
@damrak2022 sagte in Visualisierung mit Node Red erstellen:
@mickym Damit kann ich Eigenschaften ändern, löschen und verschieben
Also das mit den Datentypen und der Switch - Node ist klar?
Zur Change Node,
ja damit kannst Du Eigenschaften ändern, löschen und verschieben oder setzen. Dazu definierst DU Regeln, die NACHEINANDER abgearbeitet werden.
Was macht also diese Change Node?
Was passiert in der 1. Regel - wie sieht die payload aus, wie sieht die payload nach der 2. Regel aus und wie sieht deshalb IMMER das Endergebnis aus?
-
@mickym Gute Frage, ich denke mal:
- er nimmt die Eigenschaft true oder false
- dann gibt er den Befehl weiter
Ganz ehrlich so wirklich kann ich es nicht erklären
-
@damrak2022 Eben das ist das Problem.
Es passiert folgendes:
..... ein Nachrichtenobjekt - kommt an der Change Node an ..... dort setzt Du mit der 1. Regel die payload des Nachrichtenobjektes auf den String - Zeichenkette => "true", dann kommt die 2. Regel - einfach was drin steht und Du setzt damit die payload des Nachrichtenobjektes auf den String - Zeichenkette => "false". Alle anderen Eigenschaften des Nachrichtenobjektes werde nicht geändert.
Also wird die Change Node - egal was rein kommt, immer nur ein Nachrichtenobjekt mit einer payload Eigenschaft als String "false" ausgeben. Was anderes hast Du nicht definiert. -
Es wird also nicht mal dies - mal das ausgegeben - sonder IMMER - und EINDEUTIG nur das was DU definiert hast.
Also im Prinzip egal was da für ein Nachrichtenobjekt reinkommt, es wird immer ein String mit "false" ausgegeben. - Das ist nicht nur der falsche Datentyp - Du schmeisst damit alle Informationen weg - und setzt nur "false".Warum wahrscheinlich die Lampe eingeschaltet wurde ist, dass wenn in einem Datenpunkt was steht, dann wird der als boolean gleich true interpretiert - hat aber nichts mit der eigentlichen Eingabe zu tun.
-
@mickym Okay, das habe ich mir auch mal wegkopiert
-
@damrak2022 sagte in Visualisierung mit Node Red erstellen:
@mickym Okay, das habe ich mir auch mal wegkopiert
Na wichtig - ist, dass Du Dir das weg kopierte auch immer wieder mal in Dein Gedächtnis kopierst und bei Bedarf dann auch wieder anwendest.
-
@mickym Da hast Du allerdings recht.
-
@mickym Hast Du Lust etwas mit Routen in der Worldmap zu machen? Allerdings ganz langsam und nicht an einem Abend? Ich getraue mich ja kaum zu fragen.
-
@damrak2022 sagte in Visualisierung mit Node Red erstellen:
@mickym Hast Du Lust etwas mit Routen in der Worldmap zu machen? Allerdings ganz langsam und nicht an einem Abend? Ich getraue mich ja kaum zu fragen.
Wichtig ist, hast Du nun das Problem mit den Datentypen und die Funktionsweise der Change Nodes nun wirklich verstanden und das es nicht ein mal hier, mal da gibt.
Und ehrlich gesagt - nein ich habe keine Lust immer neue Funktionen mit Dir zu machen, solange Du mit den Basics noch soweit entfernt bist. Wir können das Beispiel gerne mit dem Licht und der An- Abwesenheit ausbauen - aber auf die Routen habe ich keine Lust - weil ich dann nur am Ende den Flow mache. Nimm Dir doch nicht solche Dinge vor, wenn die einfachen Dinge nicht mal funktionieren.
-
@mickym Okay, das ist in Ordnung
-
@mickym Um mein Licht auszuschalten wenn ich weg bin, bräuchte ich ja nur die Datenpunkte der Lampen jeweils in einer ioBroker out Node zu dem bestehenden ioBroker in Node hinzufügen, oder gibt es eine elegantere Lösung, wie z.B. über einen Helligkeitssensor. Wie ist das bei Dir?
-
@damrak2022 Es gibt keine eleganten, sondern nur intelligente und weniger intelligente Lösungen.
Die An- und Abwesenheit übers Geofencing ist eine gute Lösung, die nutze ich auch. Ich nutze die Bewegungsmelder von XIAOMI und die haben ja auch Helligkeitssensoren.
Klar - ich schalte bei Abwesenheit alles aus.
Ansonsten werden die Lichter in Abhängigkeit der Bewegungsmelder und der Helligkeit gesteuert. An trüben Tagen kann es dann schon mal sein, dass trotz Hysterese die Lampen manchmal ein und ausschalten.
Ansonsten gibt es auch Indikatoren, die die Lichtautomatik ausschalten - wenn der Fernseher zum Beispiel läuft bleiben also die Lichter eingeschaltet, damit die nicht ausgehen, wenn man sich mal auf dem Sofa nicht genügend bewegt. Es werden auch immer nur bestimmte Lampen im Zimmer als Standard eingeschaltet.Wichtig ist das man die Lichtautomatik auch ausschalten kann. Gerade auch tagsüber oder für Leute, die nichts mit SmartHome zu tun haben - Gäste - wenn sie auf die Toilette gehen, sollen ja noch normal schalten können. Ich habe das generell nun so geschaltet, dass wenn ich das Licht über den Wandschalter eingeschaltet habe, dann wird die Lichtautomatik ausgeschaltet und das Licht bleibt an. Wenn ich das Licht am Wandschalter ausschalte, dann werden wieder Helligkeit und Bewegung gesteuert.
Zugleich will ich auch die Lichtautomatik in Abwesenheit komplett ausschalten - es sollen die Lampen ja in Abwesenheit nicht angehen, wenn niemand da
Also es hat einige Zeit gedauert - bis da so funktioniert hat. hier nur mal ein Auszug von 2 Zimmern mit der Lichtsteuerung. Teilweise macht es auch Sinn, Helligkeitswerte von anderen Zimmern zu nehmen.
Es gibt aber auch Räume - die nur über den Bewegungsmelder - oder Bewegungsmelder und Uhrzeit geschaltet werden, also ohne Helligkeit.
-
@mickym Uff, das sieht kompliziert aus. Ich werde jetzt meinen Bewegungsmelder in das Wohnzimmer verlegen und dann möchte ich das so einrichten, das meine beiden Lampen ab einer gewissen Dunkelheit abends einschalten.
Das Ganze würde ich aber gerne noch so verknüpfen, das die Lampen ausgehen, wenn ich meinen iMac einschalte, da ich dann ja am Schreibtisch sitze und die Lampen nicht benötige.
Ansonsten sind meine beiden Lampen über IFTTT und meiner Withings Sleep Sensormatte so geschaltet das sie sich ausschalten sobald ich mich ins Bett lege. -
@damrak2022 Nur Helligkeit - das würde ich mir logisch aber überlegen. Wenn Du das Licht abends aus machst, wird es dann sicher in der Nacht angehen.
-
@damrak2022 Mach mal ein Art Logikdiagramm und schau - ob das Sinn macht. Meist nimmt man den Bewegungsmelder, prüft dann Helligkeit oder Uhrzeit, ob geschaltet wird oder nicht.
-
@mickym Ja, ich überlege mir was und zeige es Dir dann
-
@mickym Also eine Idee habe ich, aber ob das umsetzbar ist - keine Ahnung
1.Lightlevel greift den Wert vomHelligkeitssensor aus ioBroker ab
2.Filter soll dann dafür sorgen das die Stehlampe und Kugelleuchte in meinem TV Bereich aus bleiben, solange der Datenpunkt vom iMac auf true steht. (Dann ist nämlich meine Schreibtischlampe und der iMac an)
3.Split weiß ich selbst nicht so genau
4. Lampen sollen aus bleiben wenn ich im Bett liege (werde ja über IFTTT sowieso ausgeschaltet, sobald ich mich hinlege
5. Bewegungsmelder soll nur reagieren, wenn alle Lampen aus sind und dann die Stehlampe und Kugelleuchte einschalten, am besten nur zwischen 20:00 Uhr und 05:00 Uhr