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. Function Node welche zwei Werte vergleicht

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Function Node welche zwei Werte vergleicht

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active @mickym last edited by

      @mickym sagte in Function Node welche zwei Werte vergleicht:

      Was ggf. auch nochzu bedenken ist, ob Du die Laufzeit ggf. zurücksetzt, wenn eine Pause durch das Ausschalten der Pumpe nicht mehr erforderlich ist, da sie eh lange genug ausgeschaltet war.

      Hier mal die Änderung um die Auszeiten zu zählen - damit wird quasi auch wenn über Nacht eh alles ausgeschaltet ist, dass dann die Laufzeit zurückgestellt wird. Du musst halt die Pausenzeit genauso anpassen.

      Hier zum Import:

      [{"id":"1b6c6646565c829e","type":"switch","z":"517cd16e4d7e6ae4","name":"Check WP","property":"payload.switch0.output","propertyType":"msg","rules":[{"t":"true"},{"t":"false"}],"checkall":"true","repair":false,"outputs":2,"x":1630,"y":3840,"wires":[["a81280bcde91cb43"],["4b2dcbb7fa3c347f"]]},{"id":"66f1ebe9b8cf6467","type":"switch","z":"517cd16e4d7e6ae4","name":"Pausenlimit erreicht?","property":"payload","propertyType":"msg","rules":[{"t":"gt","v":"1","vt":"num"}],"checkall":"true","repair":false,"outputs":1,"x":2060,"y":3940,"wires":[["878c47ba3fe7f98d"]]},{"id":"4b2dcbb7fa3c347f","type":"change","z":"517cd16e4d7e6ae4","name":"Setze PauseWP","rules":[{"t":"set","p":"payload","pt":"msg","to":"PauseWP","tot":"flow"},{"t":"set","p":"payload","pt":"msg","to":"$exists(payload) ? payload : 0","tot":"jsonata"},{"t":"set","p":"payload","pt":"msg","to":"payload + 1","tot":"jsonata"},{"t":"set","p":"PauseWP","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1840,"y":3940,"wires":[["66f1ebe9b8cf6467"]]}]
      

      5a540149-b093-45be-ad84-1140d6fda835-image.png

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

        @1984chris sagte in Function Node welche zwei Werte vergleicht:

        @mickym
        jetztz bekomme ich aber am Ende kein ein mehr weder für Shelly noch für Homeserver

        Ach ja und vergiss nicht das Pollintervall in der Shelly Node auf 60000 ms zu setzen. Die Werte für die Laufzeit und die Pause sind ja Minuten.

        1 1 Reply Last reply Reply Quote 0
        • 1
          1984chris @mickym last edited by

          @mickym
          es wird kein ein signal durchgeleitet...

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

            @1984chris Gut - dann musst Du mit debug Nodes schauen, wo es hängen bleibt.

            Aktiviere halt mal alle Debug Nodes bzw. schau wie weit die Nachrichten kommen - ggf. neue Debug Nodes dran machen.

            dbc8352b-5802-4642-942f-7fcc203a6cbc-image.png

            Hast Du in dem Switch

            56e76390-32e1-409f-9bac-2212dd2b2ef0-image.png

            auch die max. Laufzeit richtig eingetragen?

            1 1 Reply Last reply Reply Quote 0
            • 1
              1984chris @mickym last edited by

              @mickym
              es liegt an der Laufzeitlimit erreicht Node im Hauptast habe dahinter ein Debug Node und da wird nix angezeigt.

              1 mickym 2 Replies Last reply Reply Quote 0
              • 1
                1984chris @1984chris last edited by

                @1984chris
                habe die Laufzeit auf 2 runtergesetzt zum testen...

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

                  @1984chris Gut und hast Du den Wert da drin angepasst - da waren ja noch 5 Minuten drin zum Test.

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

                    @1984chris Nein im Gegenteil - das ist das Maximum an Laufzeit. In der Realität wenn Du 5 Stunden Laufzeit haben willst, muss da <= 300 drin stehen.

                    Genauso wie Du unten dann Laufzeit erreicht > 300 einstellen musst.

                    1 2 Replies Last reply Reply Quote 0
                    • 1
                      1984chris @mickym last edited by

                      @mickym
                      mit 2 hab ich Minuten gemeint.

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

                        @1984chris sagte in Function Node welche zwei Werte vergleicht:

                        @mickym
                        mit 2 hab ich Minuten gemeint.

                        Ja trotzdem oben wird durchgelassen, wenn die Laufzeit KLEINER als x Minuten ist.

                        739d533f-8ae9-493b-b939-4ad6ed7f59a5-image.png

                        Wenn Du da 2 einträgst, dann blockiert es doch bereits bei der 2. Minute Laufzeit

                        1 Reply Last reply Reply Quote 0
                        • 1
                          1984chris @mickym last edited by

                          @mickym
                          hab den Fehler schon es war unter Eigenschaft msg und nicht flow eingestellt.
                          hab aber nichts geändert...

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

                            @1984chris Trag da oben 300 ein. Es wird durchgelassen, wenn die Kontextvariable LaufzeitWP kleiner als der eingetragene Wert ist.

                            a63ce357-86c4-4262-bce1-1cf740364234-image.png

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

                              Um bei Testen den Filter zurückzusetzen kannst Du mit Inject ein msg.reset in den filter einspeisen.

                              e84197e6-f166-43db-a1dd-36764d8c38df-image.png

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

                                Und zeig mal die Kontextvariable LaufzeitWP aus dem Kontextfenster.

                                1 1 Reply Last reply Reply Quote 0
                                • 1
                                  1984chris @mickym last edited by

                                  @mickym Kontext.jpg

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

                                    @1984chris Ja dann muss die Node aber durchlassen. Speise eine Nachricht vor der Node ein und ein Debug dahinter - das muss durchgehen

                                    Die Node lässt durch, wenn die Kontextvariable KLEINER GLEICH als (Datentyp Zahl) 300 ist.

                                    bb54b8e9-8166-4d04-bf71-0669092c7b85-image.png

                                    Da sie bei Dir 1 ist, muss es da durchgehen.

                                    1 1 Reply Last reply Reply Quote 0
                                    • 1
                                      1984chris @mickym last edited by

                                      @mickym
                                      es funktioniert der Fehler lag bei der Eigenschaft war msg und nicht flow...

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

                                        @1984chris Gut - unten habe ich Dir ja noch ein paar Änderungen empfohlen. Also den unteren Flow mit dem oberen Flow verbinden und die ausgeschaltete Zeit ebenfalls messen.

                                        1 1 Reply Last reply Reply Quote 0
                                        • 1
                                          1984chris @mickym last edited by

                                          @mickym
                                          hab ich gemacht. Jetzt a´schaut das ganze aber schon sehr komplex aus.....

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

                                            @1984chris Ja du kannst jetzt auch noch Nodes gruppieren, um das ein bisschen zu dokumentieren und thematisch zusammenzufassen.

                                            Und ja Du hast Dir ja auch eine komplexe Logik ausgedacht. Deswegen ist es auch wichtig die Funktionen getrennt zu halten.

                                            Der untere Flow - der die Pausen und Laufzeiten erfasst, der obere Flow der anhand der Überschussleistung schaltet.

                                            Die Inject Nodes zum Testen fallen ja dann weg, wenn Du da die entsprechenden Nodes dranhängst, die die eigentlichen Daten liefern.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            747
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            207
                                            17988
                                            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