Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Node-Red: Loop gebaut, statt Statusrückmeldungen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Node-Red: Loop gebaut, statt Statusrückmeldungen

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      tomily last edited by

      Hallo Leute,

      zur Steuerung meiner Rollläden (Homematic) und 433-MHZ Steckdosen (Brennenstuhl), habe ich mir eine Visualisierung mit Node-Red bzw. Node-Red Dashbaord gebaut:

      Switch_Dashboard.jpg
      Dashboard_Rollladen.jpg

      Das sieht super aus und funktioniert auch gut. Leider bekomme ich aber keine Statusrückmeldung in die Schalter, wenn diese an anderer Stelle geschaltet werden. Fahre ich den Rollladen also am Aktor selbst, bleibt der alte Wert in der Visualisierung stehen. An für sich logisch (woher soll er auch den Status wissen).
      Genau so logisch ist auch, dass mit meiner bestehenden Konfiguration ein klassicher Loop entsteht. Weiß mir aber nicht anders zu helfen:

      Counter_Rolladen.jpg

      Swicht_Steckdose.jpg

      Wie bekomme ich es hin, dass mein Switch, sowie Counter sowohl das Gerät schaltet, aber auch den aktuellen Wert anzeigt?

      Hat mir jemand ein Tipp? Sehe vor lauter Bäumen den Wald nicht mehr.

      Beste Grüße
      Tom

      1 Reply Last reply Reply Quote 0
      • mickym
        mickym Most Active last edited by mickym

        Bei dem Switch den Haken bei Pass Through raus machen und Indictor shows status on input (bei dem switch).

        Bei dem Numeric schalter ebenfalls.

        1 Reply Last reply Reply Quote 0
        • T
          tomily last edited by

          Hi,

          vielen Dank für die schnelle Rückmeldung. Das hatte ich schon so eingestellt.
          Mache ich grundsätzlich irgendwas falsch? Das Vorgehen müsste doch so ein, wie in den Screenshots eingangs?

          Switch.JPG

          Numeric.JPG

          1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active last edited by mickym

            Nun - dann dürfte doch jetzt erst mal keine Endlosschleife vorliegen. Richtig? - Wenn ja dann zeig die Konfig der anderen Nodes.

            Bei dem Switch ist das eindeutig - da Du wahrscheinlich erst mal nur strings rausbekommst.
            Wenn der Ausgang ein boolean sein muss - dann mache eine change node vor dem switch indem Du
            true als String in true boolean und entsprechend bei false davor setzt.

            1 Reply Last reply Reply Quote 0
            • T
              tomily last edited by

              Stimmt, wenn der "Path-Trough" Haken draußen ist, gibt es keinen Loop (Irgendwie Sinnvoll =).
              Leider funktioniert es dann trotzdem nicht. Bei beiden.

              Hier Numeric. Es wird Links der Richtige Zustand ermittelt, aber am Schalter nicht angezeigt:

              Zustand: numeric.jpg

              Node Config: NumericNode.jpg

              Anzeige: NumericNode2.jpg

              Beim Switch ist das Ähnlich:

              Optisch zwar okey, aber schalten und anzeigen geht nicht: switchNode.jpg

              Switch Node Config: switch.jpg

              Ich fühle mich wie ein blutiger Anfänger 😞

              mickym 1 Reply Last reply Reply Quote 0
              • mickym
                mickym Most Active @tomily last edited by mickym

                @tomily Na das ist doch kein Problem. 😉 - Ich mach Dir mal 1 node - den Du einfach in die Zwischenablage kopierst und dann in Dein Node-Red importiertst importierst.
                Bei dem Wert musst Du darauf achten, dass Du nicht einen value sondern ein command in dem letzten Node schickst.
                Dann ist kein ack flag gesetzt und nur dann passiert was.

                Das weiterhin 94 angezeigt wird, heißt einfach, dass der gesendete 100 Wert nicht von Deiner HW bestätigt (acknowledged) wurde.

                Wie gesagt mach den Change Node noch vor Deinen Switch - kopier das einfach in die Zwischenablage und dann importiere diese.

                [
                    {
                        "id": "e0c24880.74fb88",
                        "type": "change",
                        "z": "6e170384.60c96c",
                        "name": "translate",
                        "rules": [
                            {
                                "t": "change",
                                "p": "payload",
                                "pt": "msg",
                                "from": "true",
                                "fromt": "str",
                                "to": "true",
                                "tot": "bool"
                            },
                            {
                                "t": "change",
                                "p": "payload",
                                "pt": "msg",
                                "from": "false",
                                "fromt": "str",
                                "to": "false",
                                "tot": "bool"
                            }
                        ],
                        "action": "",
                        "property": "",
                        "from": "",
                        "to": "",
                        "reg": false,
                        "x": 240,
                        "y": 4420,
                        "wires": [
                            []
                        ]
                    }
                ]
                

                WICHTI bei dem Roladen _Node - COMMAND und nicht VALUE nach außen schreiben.

                1 Reply Last reply Reply Quote 0
                • T
                  tomily last edited by

                  Genial! Danke! Ich muss es heute abend nochmal zuhause testen (Aktuell per Remote), aber die Sache mit dem Switch scheint dank dem Translate zu funktionieren. DANKE! Nur wieso?

                  85fa6a53-310f-4a87-808b-d941eb4efe31-grafik.png

                  Du wandelst also nur einen "String" in einen "Boolean", damit es funktioniert?

                  Zu der Sache mit dem Rollladen/Heizung/Dimmer:

                  Nach dem Umstellen auf "Command" funktioniert auch das. Super! Allerdings tritt nun folgendes Phänomen auf:

                  Der auf und ab Knopf soll den Rollladen jeweils an den Endpunkt fahren. Deshalb habe ich "Step 100" ausgewählt.
                  Der Status wird aber nur sauber zurück geschrieben, wenn ich "Step 1" auswähle.

                  88a0b524-709b-438c-9ad7-301f3b55acdb-grafik.png

                  So schnell kann ich den Wert gar nicht einstellen, bevor er nicht schon vom neuen Status überschrieben worden ist.
                  Da muss ich noch ein bisschen dran spielen. Gibt es evtl. ähnlich zum "translate" einen Delay? Dass der Wert erst nach X Sekunden aktualisiert wird?

                  Grüße

                  mickym 1 Reply Last reply Reply Quote 0
                  • mickym
                    mickym Most Active @tomily last edited by mickym

                    @tomily
                    Ja lass das mit dem Step 1.
                    Hier ist der Trigger Node nützlich denn Du hinter DEinen nummerischen Output schaltest.

                    [
                        {
                            "id": "98fd10e5.dee8",
                            "type": "trigger",
                            "z": "a0bc94f0.ccb338",
                            "op1": "",
                            "op2": "",
                            "op1type": "nul",
                            "op2type": "payl",
                            "duration": "5",
                            "extend": true,
                            "units": "s",
                            "reset": "",
                            "bytopic": "all",
                            "name": "",
                            "x": 1530,
                            "y": 1140,
                            "wires": [
                                [
                                    "32cc4c94.abcce4",
                                    "f1ee532c.95b88"
                                ]
                            ]
                        }
                    ]
                    

                    In dem Fall darf sich der Wert 5 s lang nicht mehr ändern - kannst natürlich auch auf 1 s stellen - bis dann der Wert gesendet wird.

                    Ach und auf Deine Frage wieso Du den translate vorschalten muss - ist da der Node-Red Adapter alles in Strings umwandelt.

                    Das kann man zwar abschalten - aber ich habs auch so belassen - dann weißt Du dass halt immer Srings rauskommen

                    screen.png

                    1 Reply Last reply Reply Quote 0
                    • T
                      tomily last edited by

                      GEIL GEIL GEIL!!!! DANKE....das ist genial. Bin mit beiden Punkten einen entscheidenden Schritt weiter. Und das in so kurzer Zeit. Kann ich Dir virtuell eine Umarmung zukommen lassen? Ach das geht ja Dank Corona nicht 😞

                      Das mit dem Rollladen und dem Trigger funktioniert und ist ein akzeptabler Workaround.
                      Eine letzte Frage dazu:

                      Die Werte gehen ja von 0-100%. Ich würde gerne den Zustand im Schalter sehen, das geht aber nur mit Step 1**.
                      Zum Rollladen schließen, müsste ich also 100x auf Ab drücken oder drauf bleiben, bis der Wert auf 0 ist. Das Sofortige setzen von 100 auf 0 geht aber nur mit Step 100. Gibt es hierfür auch noch eine Lösung?

                      Mit diesem Vorgehen würden sich neben Rollläden auch Heizungen oder Dimmer gut schalten lassen, oder?

                      mickym 1 Reply Last reply Reply Quote 0
                      • mickym
                        mickym Most Active @tomily last edited by mickym

                        @tomily
                        Also Du kannst schon 0-100 machen und Step 10 oder andere Schrittweite.

                        Wenn Du ein Problem hast - kann das ebenfalls sein, dass das mit dem String nicht aus iobroker funktionierts und Du konvertierst das in eine Zahl. Also damit kann ich jede Schrittweite erzeugen.

                        [
                            {
                                "id": "c31e7f09.ce296",
                                "type": "change",
                                "z": "6e170384.60c96c",
                                "name": "to Number",
                                "rules": [
                                    {
                                        "t": "set",
                                        "p": "payload",
                                        "pt": "msg",
                                        "to": "$number(msg.payload)\t",
                                        "tot": "jsonata"
                                    }
                                ],
                                "action": "",
                                "property": "",
                                "from": "",
                                "to": "",
                                "reg": false,
                                "x": 470,
                                "y": 4560,
                                "wires": [
                                    []
                                ]
                            }
                        ]
                        

                        Für komplett auf und zu würde ich halt einen Button machen, indem du dann direkt 0 oder 100 bei Drücken schickst.

                        1 Reply Last reply Reply Quote 0
                        • T
                          tomily last edited by

                          Das mit dem "Convert" to ist mir jetzt noch nicht ganz klar. Ich versuche mich aber mal daran.

                          Werde das eben erlernte gleich nochmal mal ausprobieren und testen, ob das schalten nun funktioniert.

                          Melde mich wieder. Vorab aber schonmal ein fettes DANKE!

                          1 Reply Last reply Reply Quote 0
                          • mickym
                            mickym Most Active last edited by mickym

                            Mach Dir einfach immer ein Debug Node dahin, wo Du den Ausgang sehen möchtest.

                            screen.png

                            Im Debug Fenster sind Zahlen immer blau dargestellt und Du siehst den Typ "number"

                            Ist es eine Zeichenkette dann würde "6" in rot dargestellt ausgegeben und Typ "string".

                            und habe gerne geholfen. 😉

                            1 Reply Last reply Reply Quote 0
                            • T
                              tomily last edited by

                              Vielen Dank "mickym".

                              Beide Probleme sind gelöst!
                              Habe sowohl den Switch, als auch die Rollladensteuerung hinbekommen.

                              Durch den Debug-Node, konnte ich noch weitere Probleme finden und kann mit meinem eigentlichen Projekt weiter machen.

                              👍 👼

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              867
                              Online

                              31.9k
                              Users

                              80.1k
                              Topics

                              1.3m
                              Posts

                              vis
                              2
                              13
                              768
                              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