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. Node Red Optimierung PV Überschuss für Anfänger

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Node Red Optimierung PV Überschuss für Anfänger

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

      @mickym für mich schaut das gut aus und ich bin zuversichtlich das ich warmes wasser habe morgen. No risk no fun 😉

      und ich hatte gar nicht gewusst das nicht alles verbunden sein muss und man auch mit dem 1 Uhr so anfangen kann.

      jedenfalls vielen Danke

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

        @harry_vlbg sagte in Node Red Optimierung PV Überschuss für Anfänger:

        und ich hatte gar nicht gewusst das nicht alles verbunden sein muss und man auch mit dem 1 Uhr so anfangen kann.

        Nein es zählt der gesamte Flow und die Nachrichten warten ja nicht. Sprich wenn tagsüber der Boiler eingeschaltet wird, wartest Du ja nicht bis es nachts ist. Sondern Du speicherst diesen Zustand und dann triggerst Du erneut nachts und überprüfst die Variable, die Du tagsüber gesetzt hast.

        Hier nochmal die 2. Variante bei der auf die Variable boiler uninitialisiert sein darf:

        [
          {
              "id": "aaa0ed39edb3edd4",
              "type": "inject",
              "z": "0be53785c72fb931",
              "name": "Um 1:00 Uhr",
              "props": [
                  {
                      "p": "payload"
                  }
              ],
              "repeat": "",
              "crontab": "00 01 * * *",
              "once": false,
              "onceDelay": 0.1,
              "topic": "",
              "payload": "true",
              "payloadType": "bool",
              "x": 180,
              "y": 420,
              "wires": [
                  [
                      "9e4761a142f09e81"
                  ]
              ]
          },
          {
              "id": "9e4761a142f09e81",
              "type": "switch",
              "z": "0be53785c72fb931",
              "name": "",
              "property": "boiler",
              "propertyType": "flow",
              "rules": [
                  {
                      "t": "true"
                  },
                  {
                      "t": "false"
                  }
              ],
              "checkall": "true",
              "repair": false,
              "outputs": 2,
              "x": 350,
              "y": 420,
              "wires": [
                  [
                      "7e349e4ca29ffcd6"
                  ],
                  [
                      "c655aac69df0fd46"
                  ]
              ]
          },
          {
              "id": "7e349e4ca29ffcd6",
              "type": "change",
              "z": "0be53785c72fb931",
              "name": "",
              "rules": [
                  {
                      "t": "set",
                      "p": "boiler",
                      "pt": "flow",
                      "to": "false",
                      "tot": "bool"
                  }
              ],
              "action": "",
              "property": "",
              "from": "",
              "to": "",
              "reg": false,
              "x": 520,
              "y": 400,
              "wires": [
                  []
              ]
          },
          {
              "id": "c655aac69df0fd46",
              "type": "http request",
              "z": "0be53785c72fb931",
              "name": "Shelly Befehl Boiler ein",
              "method": "GET",
              "ret": "txt",
              "paytoqs": "ignore",
              "url": "http://192.168.178.54/relay/0?turn=on",
              "tls": "",
              "persist": false,
              "proxy": "",
              "insecureHTTPParser": false,
              "authType": "",
              "senderr": false,
              "headers": [],
              "x": 550,
              "y": 440,
              "wires": [
                  [
                      "de34012212847940"
                  ]
              ]
          },
          {
              "id": "de34012212847940",
              "type": "delay",
              "z": "0be53785c72fb931",
              "name": "",
              "pauseType": "delay",
              "timeout": "45",
              "timeoutUnits": "minutes",
              "rate": "1",
              "nbRateUnits": "1",
              "rateUnits": "second",
              "randomFirst": "1",
              "randomLast": "5",
              "randomUnits": "seconds",
              "drop": false,
              "allowrate": false,
              "outputs": 1,
              "x": 790,
              "y": 440,
              "wires": [
                  [
                      "2cc1b139cd534e58"
                  ]
              ]
          },
          {
              "id": "2cc1b139cd534e58",
              "type": "http request",
              "z": "0be53785c72fb931",
              "name": "Boiler aus nach 45 Min",
              "method": "GET",
              "ret": "txt",
              "paytoqs": "ignore",
              "url": "http://192.168.178.54/relay/0?turn=off",
              "tls": "",
              "persist": false,
              "proxy": "",
              "insecureHTTPParser": false,
              "authType": "",
              "senderr": false,
              "headers": [],
              "x": 1020,
              "y": 440,
              "wires": [
                  []
              ]
          }
        ]
        
        

        Nochmal korrigiert - 21:23 Uhr.

        Irgendwie mag die switch Node nicht, also es muss am 2. Ausgang ansonsten stehn

        95305581-d357-4e98-8cf4-d9aa73e3fc85-image.png

        [
            {
                "id": "d1d049e169e228fc",
                "type": "switch",
                "z": "0be53785c72fb931",
                "name": "",
                "property": "boiler",
                "propertyType": "flow",
                "rules": [
                    {
                        "t": "true"
                    },
                    {
                        "t": "else"
                    }
                ],
                "checkall": "true",
                "repair": false,
                "outputs": 2,
                "x": 370,
                "y": 740,
                "wires": [
                    [
                        "6da956cdd703773b"
                    ],
                    [
                        "0d8b0d47db440ec1"
                    ]
                ]
            }
        ]
        
        H 3 Replies Last reply Reply Quote 0
        • H
          Harry_vlbg @mickym last edited by

          @mickym und ich habe mir gedanken gemacht wie ich das lösen kann da ja um 1 Uhr auch schon der nächste Tag ist ....
          zu kompliziert gedacht

          1 Reply Last reply Reply Quote 0
          • H
            Harry_vlbg @mickym last edited by

            @mickym ok - werde ich noch abändern

            1 Reply Last reply Reply Quote 0
            • H
              Harry_vlbg @mickym last edited by

              @mickym ach - das mit dem Urlaub haben wir noch vergessen.
              aber auch kein Problem wenn kein Bock mehr hast heute. Ich hätte auch Mittwochs wieder Zeit

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

                @harry_vlbg Na das ist einfach: einfach ein globale Variable setzen und dann mit einer Switch Node filtern.

                Du setzt einfach zu Beginn eine globale Variable urlaub = false.

                e8fb430f-8e4e-4727-881d-16de6ae1b969-image.png

                Und überall, wo während eines Urlaubs die Trigger gesperrt werden sollen klemmst Du eine switch Node als Filter davor:

                0c0cbe18-2a91-41cb-999b-6f6208970c97-image.png

                H 1 Reply Last reply Reply Quote 0
                • H
                  Harry_vlbg @mickym last edited by

                  @mickym danke

                  dann lass ich heute mal heizen und probiere morgen den Testurlaub.
                  eine Nacht haltet es der Boiler aus

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

                    @harry_vlbg sagte in Node Red Optimierung PV Überschuss für Anfänger:

                    @mickym danke

                    dann lass ich heute mal heizen und probiere morgen den Testurlaub.
                    eine Nacht haltet es der Boiler aus

                    Dann hast Du ja übermorgen kein warmes Wasser - brrr 🤧

                    H 2 Replies Last reply Reply Quote 0
                    • H
                      Harry_vlbg @mickym last edited by

                      @mickym kein Problem - dann gehe ich auswärts 😉

                      1 Reply Last reply Reply Quote 0
                      • H
                        Harry_vlbg @mickym last edited by

                        @mickym
                        hat gut funktioniert alles, jetzt hätte ich noch eine Node die ich haben sollte.

                        Wenn der Akku die 100% erreicht sollte ich eine PV ausschalten. Also wie gehabt wieder mit dem HTTP request wie gewohnt nur mit anderer IP Adresse.
                        Grund ist das ich nicht zu viel Strom einspeise da ich in Ö nur 800 Watt unangemeldet darf.
                        Jetzt ist das Ausschalten ja nicht das Problem - sollte aber wenn es dann wieder von 100 auf 98 geht natürlich wieder einschalten. Auch dann am nächsten Tag wieder anspringen.
                        Der Shelly wird dabei durch die eigene Oberfläche mit einer Delay von 30 Minuten nach Sonnenaufgang ein und 30 Minuten nach Sonnenuntergang ausgeschalten.
                        Dies könnte ich natürlich dort auch löschen und ebenfalls im Node Red implementieren.
                        Also meine Herausforderung ist dass, das der Ladezustand ein nur von oben herunter erfolgen soll. Nicht das ich den ganzen Tag bei jedem Ladezustand ein Einschalten sende.
                        Geht das?

                        Danke

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

                          @harry_vlbg Nun ja - im Prinzip ist alles möglich, was man logisch einigermassen in Worte fassen kann.

                          Jetzt ist das Ausschalten ja nicht das Problem - sollte aber wenn es dann wieder von 100 auf 98 geht natürlich wieder einschalten. Auch dann am nächsten Tag wieder anspringen.

                          Du vergleichst einfach mit dem vorherigen Wert, um eine Tendenz festzustellen. Ich habe mal =98% als Einschaltsignal und 100% als Ausschaltsignal genommen, in der richtigen Tendenz. Falls 98% übersprungen wird - weiß nicht ob das möglich ist, dann kann man auch <=98% nehmen und dann mit true und false und einer Filternode arbeiten.

                          NodeRedSupport.png

                          Hier der Flow zum Import:

                          [
                             {
                                 "id": "0e43a5fbf07c8f26",
                                 "type": "inject",
                                 "z": "7e6af0015415146d",
                                 "name": "",
                                 "props": [
                                     {
                                         "p": "payload"
                                     },
                                     {
                                         "p": "topic",
                                         "vt": "str"
                                     }
                                 ],
                                 "repeat": "",
                                 "crontab": "",
                                 "once": false,
                                 "onceDelay": 0.1,
                                 "topic": "Akku",
                                 "payload": "100",
                                 "payloadType": "num",
                                 "x": 240,
                                 "y": 6160,
                                 "wires": [
                                     [
                                         "4f1a218eb9883c64"
                                     ]
                                 ]
                             },
                             {
                                 "id": "62a8e78e071f074a",
                                 "type": "inject",
                                 "z": "7e6af0015415146d",
                                 "name": "",
                                 "props": [
                                     {
                                         "p": "payload"
                                     },
                                     {
                                         "p": "topic",
                                         "vt": "str"
                                     }
                                 ],
                                 "repeat": "",
                                 "crontab": "",
                                 "once": false,
                                 "onceDelay": 0.1,
                                 "topic": "Akku",
                                 "payload": "99",
                                 "payloadType": "num",
                                 "x": 240,
                                 "y": 6200,
                                 "wires": [
                                     [
                                         "4f1a218eb9883c64"
                                     ]
                                 ]
                             },
                             {
                                 "id": "1f3a16499e2c0790",
                                 "type": "inject",
                                 "z": "7e6af0015415146d",
                                 "name": "",
                                 "props": [
                                     {
                                         "p": "payload"
                                     },
                                     {
                                         "p": "topic",
                                         "vt": "str"
                                     }
                                 ],
                                 "repeat": "",
                                 "crontab": "",
                                 "once": false,
                                 "onceDelay": 0.1,
                                 "topic": "Akku",
                                 "payload": "98",
                                 "payloadType": "num",
                                 "x": 240,
                                 "y": 6240,
                                 "wires": [
                                     [
                                         "4f1a218eb9883c64"
                                     ]
                                 ]
                             },
                             {
                                 "id": "47d3cab9b7d27a9d",
                                 "type": "inject",
                                 "z": "7e6af0015415146d",
                                 "name": "",
                                 "props": [
                                     {
                                         "p": "payload"
                                     },
                                     {
                                         "p": "topic",
                                         "vt": "str"
                                     }
                                 ],
                                 "repeat": "",
                                 "crontab": "",
                                 "once": false,
                                 "onceDelay": 0.1,
                                 "topic": "Akku",
                                 "payload": "97",
                                 "payloadType": "num",
                                 "x": 240,
                                 "y": 6280,
                                 "wires": [
                                     [
                                         "4f1a218eb9883c64"
                                     ]
                                 ]
                             },
                             {
                                 "id": "4f1a218eb9883c64",
                                 "type": "switch",
                                 "z": "7e6af0015415146d",
                                 "name": "Tendenz",
                                 "property": "payload",
                                 "propertyType": "msg",
                                 "rules": [
                                     {
                                         "t": "gt",
                                         "v": "",
                                         "vt": "prev"
                                     },
                                     {
                                         "t": "lt",
                                         "v": "",
                                         "vt": "prev"
                                     }
                                 ],
                                 "checkall": "true",
                                 "repair": false,
                                 "outputs": 2,
                                 "x": 440,
                                 "y": 6200,
                                 "wires": [
                                     [
                                         "56beb37bf0190b8c"
                                     ],
                                     [
                                         "90c3a1a960bb652d"
                                     ]
                                 ],
                                 "outputLabels": [
                                     "Tendenz steigend",
                                     "Tendenz fallend"
                                 ]
                             },
                             {
                                 "id": "95e1e5e77bc43cd1",
                                 "type": "debug",
                                 "z": "7e6af0015415146d",
                                 "name": "Boiler ausschalten",
                                 "active": true,
                                 "tosidebar": true,
                                 "console": false,
                                 "tostatus": false,
                                 "complete": "payload",
                                 "targetType": "msg",
                                 "statusVal": "",
                                 "statusType": "auto",
                                 "x": 910,
                                 "y": 6160,
                                 "wires": []
                             },
                             {
                                 "id": "56beb37bf0190b8c",
                                 "type": "switch",
                                 "z": "7e6af0015415146d",
                                 "name": "Bei 100 % ausschalten",
                                 "property": "payload",
                                 "propertyType": "msg",
                                 "rules": [
                                     {
                                         "t": "eq",
                                         "v": "100",
                                         "vt": "num"
                                     }
                                 ],
                                 "checkall": "true",
                                 "repair": false,
                                 "outputs": 1,
                                 "x": 660,
                                 "y": 6160,
                                 "wires": [
                                     [
                                         "95e1e5e77bc43cd1"
                                     ]
                                 ]
                             },
                             {
                                 "id": "d17e712dec0e3055",
                                 "type": "debug",
                                 "z": "7e6af0015415146d",
                                 "name": "Boiler einschalten",
                                 "active": true,
                                 "tosidebar": true,
                                 "console": false,
                                 "tostatus": false,
                                 "complete": "payload",
                                 "targetType": "msg",
                                 "statusVal": "",
                                 "statusType": "auto",
                                 "x": 910,
                                 "y": 6240,
                                 "wires": []
                             },
                             {
                                 "id": "90c3a1a960bb652d",
                                 "type": "switch",
                                 "z": "7e6af0015415146d",
                                 "name": "Bei = 98 % einschalten",
                                 "property": "payload",
                                 "propertyType": "msg",
                                 "rules": [
                                     {
                                         "t": "eq",
                                         "v": "98",
                                         "vt": "num"
                                     }
                                 ],
                                 "checkall": "true",
                                 "repair": false,
                                 "outputs": 1,
                                 "x": 660,
                                 "y": 6240,
                                 "wires": [
                                     [
                                         "d17e712dec0e3055"
                                     ]
                                 ]
                             }
                          ]
                          

                          H 2 Replies Last reply Reply Quote 0
                          • H
                            Harry_vlbg @mickym last edited by

                            @mickym
                            Hi,
                            ist ja super - das mit der Tendenz habe ich noch gar nirgends gelesen.
                            Dieses Akku 100 / 99... bekommt er das aus meiner Batterie oder muss das noch irgendwo übermittelt werden?

                            Ein Wert überspringen kann es nicht da die Pytes Batterie mir bei jeder Änderung ein msg erzeugt. Weiß aber noch nicht ob ich hier dann noch so ein MSG Topic "Akku" brauche.

                            1 Reply Last reply Reply Quote 0
                            • H
                              Harry_vlbg @mickym last edited by

                              @mickym habe es nun so gelöst. Müsste meiner Meinung auch klappen.
                              wenn er sich in diesem Bereich bewegt schaltet es und morgens geht es ohnehin an bei Sonnenaufgang.
                              Spricht was dagegen?

                              50ee73b0-7af1-4283-8c95-a752a297cb30-image.png

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

                                @harry_vlbg sagte in Node Red Optimierung PV Überschuss für Anfänger:

                                @mickym habe es nun so gelöst. Müsste meiner Meinung auch klappen.
                                wenn er sich in diesem Bereich bewegt schaltet es und morgens geht es ohnehin an bei Sonnenaufgang.
                                Spricht was dagegen?

                                50ee73b0-7af1-4283-8c95-a752a297cb30-image.png

                                ac58609a-fdff-42bc-998f-5cc082e42240-image.png

                                So was macht gar keinen Sinn - war soll eine Switch Node mit 3 Ausgängen, wenn die dann alle in einen Eingang münden.

                                H 2 Replies Last reply Reply Quote 0
                                • H
                                  Harry_vlbg @mickym last edited by

                                  @mickym ich dachte das die Funktion Tendenz das steuert ob es mehr oder weniger wird?

                                  mickym 1 Reply Last reply Reply Quote 0
                                  • H
                                    Harry_vlbg @mickym last edited by

                                    @mickym
                                    ah - jetzt ist es mir geschossen. Macht nur mit 2 Sinn

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

                                      @harry_vlbg Hast Du Dir denn die Switch Node angeschaut? Diese Node vergleicht einfach die payload mit dem Vorgängerwert. - Da muss nichts davor geschaltet werden.

                                      Sprich es kommt ein Wert - ist der größer (am Anfang immer der Fall) - dann geht der Wert an den oberen Ausgang, wenn kleiner an den unteren Ausgang

                                      1385ef29-9f52-4639-854e-5c6f29e4bd94-image.png

                                      aber wo bekommt er denn diesen Wert her von der Batterie ?

                                      Ja ich hab das doch mit den Inject Nodes simuliert:
                                      a61dae83-9499-4af4-b647-f5166add30c4-image.png

                                      Du musst also dafür sorgen, dass der Akkustand zwischen 0 und 100 einfach in die Switch NOde kommt -

                                      Keine Ahnung ob die 77 Deine blaue Node Pytes Ah sind oder % des Akkus. Du musst halt den Akkustand zwischen 0-100 einspeisen. Du willst das bei 100% ausgeschaltet wird und bei 98% wieder eingeschaltet wird - also musst Du dafür Sorge tragen, dass der Akkustand in den Flow eingespeist wird.

                                      H 1 Reply Last reply Reply Quote 0
                                      • H
                                        Harry_vlbg @mickym last edited by

                                        @mickym
                                        aber wo bekommt er denn diesen Wert her von der Batterie ?

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

                                          @harry_vlbg sagte in Node Red Optimierung PV Überschuss für Anfänger:

                                          @mickym
                                          aber wo bekommt er denn diesen Wert her von der Batterie ?

                                          Ja klar - woher soll denn der Akkustand kommen? Und ich weiß nicht, ob das Ah oder 0-100%. Du musst doch wissen, wie man den Akkustand berechnet, wenn Du willst, dass er bei bestimmten Zuständen ein- und ausgeschaltet wird.

                                          Bei dem 1. Flow war es doch auch der Akkustand:

                                          daa0bd75-4437-44a8-aafa-286df39d10b1-image.png

                                          Also brauchst Du doch nur von der blauen Node noch eine Verbindung zu dem jetzigen Flow machen oder eine 2. blaue Node nehmen.

                                          eb046235-8ba3-4816-8d76-560191ec523b-image.png

                                          H 1 Reply Last reply Reply Quote 0
                                          • H
                                            Harry_vlbg @mickym last edited by

                                            @mickym
                                            also es sind %

                                            somit müsste ich wieder so einen flow. Akku setzten
                                            c6f5f1c2-d3b5-4250-bd7e-fe0c984c20fe-image.png

                                            und dann am switch node umstellen
                                            e5eecf94-bee9-4149-97b5-12e3282f6efc-image.png

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.1k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            2
                                            73
                                            2533
                                            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