Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node-Red
    5. Geräte per Datenpunkt schalten

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Geräte per Datenpunkt schalten

    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      Chris_78 @Oskar last edited by

      @Oskar
      Freut mich das es jetzt funktioniert 🙂

      Zum Thema Sonoff-Schalter:
      Die IF-Abfrage sieht mir fehlerhaft aus.
      Deine Abfrage: IF "Wert von Objekt: Close == "Close"
      Bedeutet du fragst ob der Inhalt vom Datenpunkt "Close" ist. Der Datenpunkt sieht
      mir aber nach einem Boolean aus. Dürfte also nur true/false (wahr/falsch) sein.

      Die bessere Variante sollte sein den Datenpunkt "state" abzufragen. Dieser sollte sich ändern während
      das Rollo hoch oder runter fährt.

      z.B.
      IF "Wert von Objekt: state == "Stop"
      Rollo runterfahren
      else
      Rollo stoppen

      Ich nutze selber nur Javascript, falls du aber noch Probleme hast, kann ich versuchen dir ein Blockly zusammen zu bauen. 🙂

      Zum Thema Prozente direkt mitteilen:
      Wenn ich dich richtig verstehe möchtest du über Alexa eine Art Szene schalten.
      z.B. "Alexa schalte Fernseh Szene ein" -> Fernseh schaltet ein und Rollo geht auf 60 Prozent.

      Sollte so ähnlich über Node Red funktionieren:

      test.png

      Szene Fernseh: So benennen wie du möchtest 🙂
      Funktion "TV an":

      if (msg.payload.on === true) {
          msg.payload = true;
      } else if (msg.payload.on === false) {
          msg.payload = false;
      }    
      return msg;
      

      Den Licht-Schalter in meinem Beispiel natürlich durch eine schaltbare Steckdose für deinen TV ersetzen.

      Funktion "Rollo schalten":

      if (msg.payload.on === true) {
          msg.payload = 60;
      } else {
          msg.payload = 0;
      }
      return msg;
      

      Im obigen Beispiel würde bei dem Befehl: "Alexa schalte Szene Fernseh ein":
      TV wird eingeschaltet
      Rollo fährt auf 60 %

      Bei dem Befehl: "Alexa schalte Szene Fernseh aus":
      TV wird ausgeschaltet
      Rollo fährt auf 0%

      Ich hoffe, so meintest du es ungefähr und ich habe dich richtig verstanden 🙂

      O 1 Reply Last reply Reply Quote 0
      • O
        Oskar @Chris_78 last edited by

        @Chris_78
        Hallo, ja das hast du richtig verstanden, wie oben beschrieben habe ich mir dies vorgestellt, jedoch mit dem Payload geht es bei mir nicht.

        Was den Schalter anbelangt habe ich die Datenpunkte beigelegt, es wäre schön von dir, wenn du mir das Blockly erstellen würdest, abgestimmt auf den Shelly
        Anmerkung 2020-08-22 200021.gif
        Danke im voraus und noch lg

        C 1 Reply Last reply Reply Quote 0
        • C
          Chris_78 @Oskar last edited by Chris_78

          @Oskar

          Hallo,
          Bzgl. Payload, poste bitte deinen NodeRed Flow, damit wir den prüfen können. Optimalerweise mit Debugausgaben.
          Habe das bei mir gerade nachgetestet und funktioniert ohne Probleme.

          Schalter:
          Ich wüde das Blockly ungefähr so aufbauen (nicht schön aber selten):

          test.png

          Für den zweiten Teil brauchst du nur "Rolladen Buero Power1" durch "Rolladen Buero Power2" ersetzen und den Open-Datenpunkt
          durch Close zu tauschen.

          Schicke mir bitte noch mal die RAW-Ausgabe vom Shelly Datenpunkt "state". Bin mir aktuell nicht sicher, ob dieser
          eine String-Ausgabe zurück gibt.

          O 3 Replies Last reply Reply Quote 0
          • O
            Oskar @Chris_78 last edited by

            @Chris_78
            Hallo, hatte ich vergessen zu erwähnen, es geht schon jedoch ganz auf oder ganz zu,
            Lg Oskar

            1 Reply Last reply Reply Quote 0
            • O
              Oskar @Chris_78 last edited by

              @Chris_78
              Guten Morgen, das mit Node-Red mit dem Sonnenschutz geht ich hatte nur vergessen zu sagen "starte" wenn ich sage starte Buero Sonnenschutz dann geht es richtig.
              Anmerkung 2020-08-23 074814.gif Anmerkung 2020-08-23 074840.gif

              Nur der Sonoff-Schalter geht noch nicht, der rollladen stopt kurz geht aber dann weiter, anbei den Datenpunkt
              Anmerkung 2020-08-23 075414.gif
              Wenn das nicht richtig geht dann mach ich nur auf und zu, das andere macht ja dann die Alexa mit den zwischenstops,
              lg Oskar

              1 Reply Last reply Reply Quote 0
              • O
                Oskar @Chris_78 last edited by

                @Chris_78
                Hallo, ich habe noch eine Frage zu meinen Rollladen, auf der Südseite hatte ich einen Lichtsensor der mit einem Blockly Skript bei starker Sonneneinstrahlung den Rollladen etwas geschlossen hat, dies war mit eine Zeit Steuerung gekoppelt, damit der Rollladen bei einer Wolke nicht gleich wieder aufgegangen ist. Das Blockly war sehr verschachtelt und kompliziert, ist dies einfacher mit Node-Red zu lösen?
                Danke im voraus
                LG Oskar

                C 1 Reply Last reply Reply Quote 0
                • C
                  Chris_78 @Oskar last edited by

                  @Oskar

                  Hallo,

                  bzgl. Sonoff-Schalter:
                  Poste bitte dein aktuelles Blockly. In dem Beispiel, dass ich dir zugeschickt habe, ist schon mal ein Fehler drin 🙂
                  Der String-Vergleich muss ein kleines "stop" enthalten (Im Beispiel hatte ich es groß geschrieben...).

                  Bzgl. Lichtsensor:
                  Auch hier mal bitte das Blockly posten.
                  Mal schauen was wir machen können. 🙂

                  O 2 Replies Last reply Reply Quote 0
                  • O
                    Oskar @Chris_78 last edited by

                    @Chris_78
                    Hallo, anbei eins der beiden Skripte
                    Anmerkung 2020-08-24 200812.gif

                    Für das Skript mit dem Lichtsensor wurden eigene Datenpunkte erstellt
                    Anmerkung 2020-08-24 201258.gif

                    Wie bekomme ich diesen Luxwert in die Datenpunkte?
                    Anmerkung 2020-08-24 201408.gif

                    ich glaube ich bin zu wenig fit für IoBroker
                    lg Oskar

                    1 Reply Last reply Reply Quote 0
                    • O
                      Oskar @Chris_78 last edited by

                      @Chris_78
                      hier noch die beiden Skripte für die Rollladensteuerung
                      Anmerkung 2020-08-24 122612.gif Anmerkung 2020-08-24 122334.gif
                      lg Oskar

                      C 1 Reply Last reply Reply Quote 0
                      • C
                        Chris_78 @Oskar last edited by

                        @Oskar

                        Hallo,

                        funktioniert denn aktuell das 1. Skript (Rolladenbuero.POWER1), oder macht dies noch Probleme?

                        Bzgl 2. Skript (Lichtsensor):
                        Ferndiagnose ist hier etwas problematisch. Laut dem Skript sollten die Durchschnittswerte die jeweiligen
                        Luxwerte enthalten. Ich verstehe noch nicht wo die Boolean-Werte (false) herkommen. Hast du die Werte
                        selber erstellt oder wurden sie vom Skript erzeugt? Falls vom Skript zeige mir bitte den Teil des Skripts.

                        Ansonsten versuche doch erst mal mit einem kleineren Skript anzufangen, um es dann Stück für Stück zu erweitern.
                        z.B.

                        • Trigger: wenn der letzte Lux Wert kleiner ist als der vorige
                          test.png

                        • Wenn Zeit zwischen 14:00 Uhr und 22:00 Uhr

                        • dann fahre Rollo 10% hoch

                        Ich weiß allerdings nicht wie man im Blockly an den vorigen Wert ran kommt. Ist in Javasript relativ einfach.
                        Da müsstest du mal jemanden fragen der mit Blockly etwas fitter ist 🙂

                        O 1 Reply Last reply Reply Quote 0
                        • O
                          Oskar @Chris_78 last edited by

                          @Chris_78
                          Hallo Chris, das erste Skript Power1 geht noch nicht richtig, es geht komplett auf oder komplett zu, wenn ich die Taste dazwischen Drücke, stoppt der Rollladen kurz und dann geht er aber weiter, dies geschieht in beiden Richtungen.

                          Das andere Skript wurde mir mal von jemanden anderen eingerichtet, die vielen Luxabfragen sind dafür da, daß der Rolladen nicht bei jeder Wolke wieder zugeht. Die abfrage der Uhrzeit ist nicht wichtig,

                          Soll ich dir das Skript mal per privater mail zusenden, lg Dieter

                          C 2 Replies Last reply Reply Quote 0
                          • C
                            Chris_78 @Oskar last edited by Chris_78

                            @Oskar

                            Hi Oskar,

                            schicke mir das komplette Skript am besten zu. Optimalerweise auch die kompletten Screenshots der zugehörigen
                            Datenpunkte.

                            Bzgl. Rollo Skript:
                            Kannst du beim Schalten der Rollos mal folgende Datenpunkte im Auge behalten:
                            "state"
                            "Pause"
                            "Open" oder "Close"
                            "RolladenBuero Power1"

                            Ich werde parallel mal versuchen das bei mir nachzustellen.

                            Edit:
                            Ich habe mir gerade noch mal dein Skript angesehen. Ändere noch mal die Funktion von [= "stop"] in [!= "stop"].
                            Vielleicht hilft das ja schon. Ansonsten bin ich auch am testen 🙂

                            1 Reply Last reply Reply Quote 0
                            • C
                              Chris_78 @Oskar last edited by

                              @Oskar

                              Ich habe das gerade nachgestellt. Bei mir klappt es ohne Probleme.
                              Mein Skript sieht minimal anders aus, da ich diese per MQTT anspreche.
                              Sollte aber keinen Unterschied machen.

                              Zum Schalten habe ich mir ein Testdatenpunkt angelegt.

                              test.png

                              O 2 Replies Last reply Reply Quote 0
                              • O
                                Oskar @Chris_78 last edited by

                                @Chris_78
                                Hallo, das mit dem geänderten Skripten gehen leider beide nicht:
                                Skript.txt

                                Anmerkung 2020-08-26 152523.gif
                                lg Oskar

                                1 Reply Last reply Reply Quote 0
                                • O
                                  Oskar @Chris_78 last edited by

                                  @Chris_78
                                  Hallo Chris, kannst du mir kurz erklären wie man einen virtuellen (Alias) Datenpunkt erstellt?

                                  lg Oskar

                                  C 1 Reply Last reply Reply Quote 0
                                  • C
                                    Chris_78 @Oskar last edited by Chris_78

                                    @Oskar

                                    Hallo,
                                    du hast leider das if-Statement nicht ganz korrekt angepasst 🙂
                                    Sollte so aussehen:
                                    test.png
                                    (Das != in den "Operator" vor dem "stop")

                                    Bzgl. Alias:
                                    Es gibt einen Adapter "Geräte verwalten" mit dem kann man das wohl grafisch umsetzen. Hat bei mir aber
                                    nicht so gut funkitoniert (da ich einige Geräte mit unterschiedlichen Lese/Schreib-Datenpunkte habbe).

                                    Ich handle das mit einem Javascript und passe mir den Datenpunkt/Alias im Nachgang in der RAW-Ansicht an.
                                    Hast du bereits einen Alias.0 Ordner (ansonsten muss erst noch ein Datenpunkt erstellt werden)?

                                    Vielleicht sollten wir mal eine Discord/Teamviewer, oder was auch immer, Session machen.
                                    Wäre einfacher zu helfen/erklären, und ich kann mal direkt rauf schauen... 🙂

                                    O 1 Reply Last reply Reply Quote 0
                                    • O
                                      Oskar @Chris_78 last edited by

                                      @Chris_78
                                      Hallo Chris, schön dass Du so viel Geduld mit mir hast, das Skript habe ich angepasst aber da geht gar nicht mehr
                                      Anmerkung 2020-08-26 215032.gif
                                      Leider schaffe ich es nicht den Alias.0 anzulegen, Ich würde den Ordner Alias.0 und danach den Ordner RollladenWest benötigen und dann den Datenpunkt wo ich die Lux Werte aus dem Original Datenpunkt benötige.
                                      Ich würde dir gerne eine Mail zusenden wenn ich eine MailAdresse bekomme
                                      Lg Oskar

                                      C O 2 Replies Last reply Reply Quote 0
                                      • C
                                        Chris_78 @Oskar last edited by Chris_78

                                        @Oskar

                                        Das Skript ist leider immer noch nicht korrekt angepasst. Im aktuellen Zustand wird nur der
                                        Pause Button/Datenpunkt getriggert.
                                        Korrekte Version: Skript.txt

                                        Meine E-Mail: chrmar@gmx.net

                                        Bzgl. Alias:

                                        Falls du den Ordner noch nicht hast solltest du folgendermaßen vorgehen:

                                        • im ioBRoker in die Objektansicht wechseln
                                        • ziemlich weit nach unten scrollen bis du einen Datenpunkt findest der alias.meta heißt (ich hoffe, das ist der richtige Name)
                                        • falls du den Punkt nicht findest evtl. mal auf die Expertenansicht wechseln (Menu oben - 2 Icons links neben dem Plus Zeichen)
                                        • die alias.meta anklicken/markieren und dann oben auf das Plus drücken
                                          test.png
                                        • Einfach einen neuen Test-Datenpunkt anlegen
                                        • Danach den Browser refreshen (F5)
                                        • Nun solltest du relativ weit oben in der Objekt-Ansicht einen Alias.0 Ordner haben
                                        1 Reply Last reply Reply Quote 0
                                        • O
                                          Oskar @Oskar last edited by

                                          @Chris_78
                                          Hallo Chris, habe mal wieder eine Frage zum Eintrag in Node-Red.
                                          payload.gif
                                          Bei diesem Eintrag kann ich Alexa Licht an oder aus sagen, wie ist der Eintrag wenn das Licht nur ausgeschaltet werden soll?
                                          lg Oskar

                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post

                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          553
                                          Online

                                          31.7k
                                          Users

                                          79.8k
                                          Topics

                                          1.3m
                                          Posts

                                          6
                                          95
                                          6215
                                          Loading More Posts
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          The ioBroker Community 2014-2023
                                          logo