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. 2 Werte Subtrtahieren in Node Red

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    2 Werte Subtrtahieren in Node Red

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      siporax @siporax last edited by

      @siporax said in 2 Werte Subtrtahieren in Node Red:

      @mickym said in 2 Werte Subtrtahieren in Node Red:

      @geschild sagte in 2 Werte Subtrtahieren in Node Red:

      PS. Kannst du mir den elektrischen Aufbau von @siporax erklären?

      Nee - das muss @siporax selbst machen - ich bin nur für die Logik in NodeRed zuständig. 😉

      Habe eine Warnmeldungen
      7 forum.JPG

      Wenn Wechselrichter ausgeschaltet ist hat der Teich dennoch Verbrauch der wird mir nicht dan angezeigt ?

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

        @siporax

        1. Also Du musst halt vorher mit der Logik klar kommen. Die Warnmeldungen kommen, weil Du versucht hast einen schreibgeschützten Wert im Sonoff Adapter zu beschreiben - das darfst Du halt nicht. Überprüfe Deine iobroker-Out Nodes. Bis auf die Werte, die Du zum Steuern verwendest, darf sonst nur der Adapter was reinschreiben.

        Schreibgeschütze Werte erkennst Du an dem Schloss:

        dbeb62c8-1b84-4a07-984e-16acfd6a69c5-image.png

        1. Ich hab Dir ja gesagt Du sollst die einfache Variante nehmen und dann kannst Du wenn Du keinen Verbrauch auch 0 schreiben und den Wechselrichter ignorieren.

        e16926ac-2969-404c-84f3-4f4efa87ccbf-image.png

        [
           {
               "id": "18edda87f3b39f3e",
               "type": "ioBroker in",
               "z": "7e6af0015415146d",
               "name": "Teich-Pow",
               "topic": "sonoff.0.Teich-Verbrauch.ENERGY_Power",
               "payloadType": "value",
               "onlyack": "",
               "func": "all",
               "gap": "",
               "fireOnStart": "false",
               "outFormat": "MQTT",
               "x": 2080,
               "y": 3600,
               "wires": [
                   [
                       "0ebf71f32dd2b609"
                   ]
               ]
           },
           {
               "id": "f0133d29a83f3d17",
               "type": "ioBroker get",
               "z": "7e6af0015415146d",
               "name": "WR-Fritz",
               "topic": "fritzdect.0.DECT_116570079058.power",
               "attrname": "wr",
               "payloadType": "value",
               "errOnInvalidState": "nothing",
               "x": 2400,
               "y": 3660,
               "wires": [
                   [
                       "746280ddaeb139a2"
                   ]
               ]
           },
           {
               "id": "746280ddaeb139a2",
               "type": "change",
               "z": "7e6af0015415146d",
               "name": "TeichPow - WR",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "(payload - wr) * -1",
                       "tot": "jsonata"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 2580,
               "y": 3660,
               "wires": [
                   [
                       "1e4d02d4327046e2"
                   ]
               ]
           },
           {
               "id": "1e4d02d4327046e2",
               "type": "ioBroker out",
               "z": "7e6af0015415146d",
               "name": "Realer_Teichverbrauch",
               "topic": "0_userdata.0.Node_Red_Realer_Teichverbrauch",
               "ack": "true",
               "autoCreate": "false",
               "stateName": "",
               "role": "",
               "payloadType": "",
               "readonly": "",
               "stateUnit": "",
               "stateMin": "",
               "stateMax": "",
               "x": 2810,
               "y": 3580,
               "wires": []
           },
           {
               "id": "0ebf71f32dd2b609",
               "type": "switch",
               "z": "7e6af0015415146d",
               "name": "Verbrauch > 0",
               "property": "payload",
               "propertyType": "msg",
               "rules": [
                   {
                       "t": "eq",
                       "v": "0",
                       "vt": "num"
                   },
                   {
                       "t": "gt",
                       "v": "0",
                       "vt": "num"
                   }
               ],
               "checkall": "true",
               "repair": false,
               "outputs": 2,
               "x": 2260,
               "y": 3600,
               "wires": [
                   [
                       "1e4d02d4327046e2"
                   ],
                   [
                       "f0133d29a83f3d17"
                   ]
               ]
           }
        ]
        

        S 1 Reply Last reply Reply Quote 0
        • S
          siporax @mickym last edited by

          @mickym said in 2 Werte Subtrtahieren in Node Red:

          @siporax

          1. Also Du musst halt vorher mit der Logik klar kommen. Die Warnmeldungen kommen, weil Du versucht hast einen schreibgeschützten Wert im Sonoff Adapter zu beschreiben - das darfst Du halt nicht. Überprüfe Deine iobroker-Out Nodes. Bis auf die Werte, die Du zum Steuern verwendest, darf sonst nur der Adapter was reinschreiben.

          Schreibgeschütze Werte erkennst Du an dem Schloss:

          dbeb62c8-1b84-4a07-984e-16acfd6a69c5-image.png

          1. Ich hab Dir ja gesagt Du sollst die einfache Variante nehmen und dann kannst Du wenn Du keinen Verbrauch auch 0 schreiben und den Wechselrichter ignorieren.

          e16926ac-2969-404c-84f3-4f4efa87ccbf-image.png

          [
             {
                 "id": "18edda87f3b39f3e",
                 "type": "ioBroker in",
                 "z": "7e6af0015415146d",
                 "name": "Teich-Pow",
                 "topic": "sonoff.0.Teich-Verbrauch.ENERGY_Power",
                 "payloadType": "value",
                 "onlyack": "",
                 "func": "all",
                 "gap": "",
                 "fireOnStart": "false",
                 "outFormat": "MQTT",
                 "x": 2080,
                 "y": 3600,
                 "wires": [
                     [
                         "0ebf71f32dd2b609"
                     ]
                 ]
             },
             {
                 "id": "f0133d29a83f3d17",
                 "type": "ioBroker get",
                 "z": "7e6af0015415146d",
                 "name": "WR-Fritz",
                 "topic": "fritzdect.0.DECT_116570079058.power",
                 "attrname": "wr",
                 "payloadType": "value",
                 "errOnInvalidState": "nothing",
                 "x": 2400,
                 "y": 3660,
                 "wires": [
                     [
                         "746280ddaeb139a2"
                     ]
                 ]
             },
             {
                 "id": "746280ddaeb139a2",
                 "type": "change",
                 "z": "7e6af0015415146d",
                 "name": "TeichPow - WR",
                 "rules": [
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "(payload - wr) * -1",
                         "tot": "jsonata"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 2580,
                 "y": 3660,
                 "wires": [
                     [
                         "1e4d02d4327046e2"
                     ]
                 ]
             },
             {
                 "id": "1e4d02d4327046e2",
                 "type": "ioBroker out",
                 "z": "7e6af0015415146d",
                 "name": "Realer_Teichverbrauch",
                 "topic": "0_userdata.0.Node_Red_Realer_Teichverbrauch",
                 "ack": "true",
                 "autoCreate": "false",
                 "stateName": "",
                 "role": "",
                 "payloadType": "",
                 "readonly": "",
                 "stateUnit": "",
                 "stateMin": "",
                 "stateMax": "",
                 "x": 2810,
                 "y": 3580,
                 "wires": []
             },
             {
                 "id": "0ebf71f32dd2b609",
                 "type": "switch",
                 "z": "7e6af0015415146d",
                 "name": "Verbrauch > 0",
                 "property": "payload",
                 "propertyType": "msg",
                 "rules": [
                     {
                         "t": "eq",
                         "v": "0",
                         "vt": "num"
                     },
                     {
                         "t": "gt",
                         "v": "0",
                         "vt": "num"
                     }
                 ],
                 "checkall": "true",
                 "repair": false,
                 "outputs": 2,
                 "x": 2260,
                 "y": 3600,
                 "wires": [
                     [
                         "1e4d02d4327046e2"
                     ],
                     [
                         "f0133d29a83f3d17"
                     ]
                 ]
             }
          ]
          

          Versuche das morgen in Ruhe nochmal.
          bekomme ich damit immer den Teichverbrauch angezeigt auch wenn der Wechselrichter nicht läuft ?

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

            @siporax Na wenn der Wechselrichter nicht läuft, was steht denn dann in dem Datenpunkt. Nein - woran erkennt man denn dass der nicht läuft. Wenn in dem Datenpunkt 0 steht ist es doch egal dann wird halt nichts abgezogen. Wie gesagt die Logik musst Du formulieren - am Besten als Text.

            S 1 Reply Last reply Reply Quote 0
            • S
              siporax @mickym last edited by siporax

              @mickym said in 2 Werte Subtrtahieren in Node Red:

              @siporax Na wenn der Wechselrichter nicht läuft, was steht denn dann in dem Datenpunkt. Nein - woran erkennt man denn dass der nicht läuft. Wenn in dem Datenpunkt 0 steht ist es doch egal dann wird halt nichts abgezogen. Wie gesagt die Logik musst Du formulieren - am Besten als Text.

              Genau wenn nicht abgezogen wird steht die null und der normale Wert soll dann angezeigt werden vom Teich Pow.
              Das macht er auch schon nur steht ein minus davor was ja nicht stimmt.
              Der Wert ansich stimmt aber schon mal als Zahl 🙂
              Gerade getestet,Danke mal dafür.

              Mann würde es erkenen wen der Wert vom WR Fitz nicht mehr wie 0-15 Watt verbraucht im Standby in einer Minute.
              Denke so könnte man das erkennen wann der Wechselrichter nichts Leistet.

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

                @siporax Dann musst Du halt die Werte über 1 Minute aufsummieren und dann mit einer Minute Verzögerung das ausgeben. Wenn die Summe oder Mittelwert innerhalb der Minute unter 15 ist, setzt Du den Wert des Wechselrichters einfach auf 0.

                Schau mal: https://flows.nodered.org/node/node-red-contrib-aggregator

                S 1 Reply Last reply Reply Quote 1
                • S
                  siporax @mickym last edited by

                  @mickym said in 2 Werte Subtrtahieren in Node Red:

                  @siporax Dann musst Du halt die Werte über 1 Minute aufsummieren und dann mit einer Minute Verzögerung das ausgeben. Wenn die Summe oder Mittelwert innerhalb der Minute unter 15 ist, setzt Du den Wert des Wechselrichters einfach auf 0.

                  Kann dir zwar folgen was du meinst aber kein Plan wie man das einstellt.
                  Auch würde dann das minus vor dem Wert noch bleiben.

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

                    @siporax Ich hab Dir doch gezeigt - wie Du entweder mit -1 multiplizierst oder den absoluten Wert nimmst.

                    https://forum.iobroker.net/post/1019993

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      siporax @mickym last edited by siporax

                      @mickym said in 2 Werte Subtrtahieren in Node Red:

                      @siporax Ich hab Dir doch gezeigt - wie Du entweder mit -1 multiplizierst oder den absoluten Wert nimmst.

                      https://forum.iobroker.net/post/1019993

                      Bringen wir das Minus Zeichen noch vor dem Wert weg wenn der wechselrichter aus ist ?
                      Ich macht da morgen weiter damit.

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

                        @siporax

                        @siporax sagte in 2 Werte Subtrtahieren in Node Red:

                        Bringen wir das Minus noch vor dem Wert weg ?
                        Ich macht da morgen weiter damit.

                        Ich versteh Dich nicht. In dem Post habe ich Dir doch 2 Möglichkeiten gezeigt. Entweder mit der Absolutfunktion oder Du multiplizierst mit -1

                        S 1 Reply Last reply Reply Quote 0
                        • S
                          siporax @mickym last edited by

                          @mickym said in 2 Werte Subtrtahieren in Node Red:

                          @siporax

                          @siporax sagte in 2 Werte Subtrtahieren in Node Red:

                          Bringen wir das Minus noch vor dem Wert weg ?
                          Ich macht da morgen weiter damit.

                          Ich versteh Dich nicht. In dem Post habe ich Dir doch 2 Möglichkeiten gezeigt. Entweder mit der Absolutfunktion oder Du multiplizierst mit -1

                          Du hast recht habs mir angesehen,teste morgen bin müde.Danke

                          S 1 Reply Last reply Reply Quote 0
                          • S
                            siporax @siporax last edited by siporax

                            @siporax said in 2 Werte Subtrtahieren in Node Red:

                            @mickym said in 2 Werte Subtrtahieren in Node Red:

                            @siporax

                            @siporax sagte in 2 Werte Subtrtahieren in Node Red:

                            Bringen wir das Minus noch vor dem Wert weg ?
                            Ich macht da morgen weiter damit.

                            Ich versteh Dich nicht. In dem Post habe ich Dir doch 2 Möglichkeiten gezeigt. Entweder mit der Absolutfunktion oder Du multiplizierst mit -1

                            Du hast recht habs mir angesehen,teste morgen bin müde.Danke

                            So habe das wie im Bild abgeändert vom ChangeNode vom TeichPow-WR .
                            Das Minus ist zwar weg aber es läuft nicht mehr (schreibt nichts mehr neues in den Ordner vom Iobroker )

                            [
                               {
                                   "id": "85fb4f8bec7a080c",
                                   "type": "tab",
                                   "label": "Realer Teichverbrauch W1",
                                   "disabled": false,
                                   "info": "",
                                   "env": []
                               },
                               {
                                   "id": "18edda87f3b39f3e",
                                   "type": "ioBroker in",
                                   "z": "85fb4f8bec7a080c",
                                   "name": "Teich-Pow",
                                   "topic": "sonoff.0.Teich-Verbrauch.ENERGY_Power",
                                   "payloadType": "value",
                                   "onlyack": "",
                                   "func": "all",
                                   "gap": "",
                                   "fireOnStart": "false",
                                   "outFormat": "MQTT",
                                   "x": 140,
                                   "y": 160,
                                   "wires": [
                                       [
                                           "0ebf71f32dd2b609"
                                       ]
                                   ]
                               },
                               {
                                   "id": "f0133d29a83f3d17",
                                   "type": "ioBroker get",
                                   "z": "85fb4f8bec7a080c",
                                   "name": "WR-Fritz",
                                   "topic": "fritzdect.0.DECT_116570079058.power",
                                   "attrname": "wr",
                                   "payloadType": "value",
                                   "errOnInvalidState": "nothing",
                                   "x": 460,
                                   "y": 220,
                                   "wires": [
                                       [
                                           "746280ddaeb139a2"
                                       ]
                                   ]
                               },
                               {
                                   "id": "746280ddaeb139a2",
                                   "type": "change",
                                   "z": "85fb4f8bec7a080c",
                                   "name": "TeichPow - WR",
                                   "rules": [
                                       {
                                           "t": "set",
                                           "p": "payload",
                                           "pt": "msg",
                                           "to": "$abs(verbrauch - wr)",
                                           "tot": "jsonata"
                                       }
                                   ],
                                   "action": "",
                                   "property": "",
                                   "from": "",
                                   "to": "",
                                   "reg": false,
                                   "x": 640,
                                   "y": 220,
                                   "wires": [
                                       [
                                           "1e4d02d4327046e2"
                                       ]
                                   ]
                               },
                               {
                                   "id": "1e4d02d4327046e2",
                                   "type": "ioBroker out",
                                   "z": "85fb4f8bec7a080c",
                                   "name": "Realer_Teichverbrauch",
                                   "topic": "0_userdata.0.Node_Red_Realer_Teichverbrauch",
                                   "ack": "true",
                                   "autoCreate": "false",
                                   "stateName": "",
                                   "role": "",
                                   "payloadType": "",
                                   "readonly": "",
                                   "stateUnit": "",
                                   "stateMin": "",
                                   "stateMax": "",
                                   "x": 910,
                                   "y": 140,
                                   "wires": []
                               },
                               {
                                   "id": "0ebf71f32dd2b609",
                                   "type": "switch",
                                   "z": "85fb4f8bec7a080c",
                                   "name": "Verbrauch > 0",
                                   "property": "payload",
                                   "propertyType": "msg",
                                   "rules": [
                                       {
                                           "t": "eq",
                                           "v": "0",
                                           "vt": "num"
                                       },
                                       {
                                           "t": "gt",
                                           "v": "0",
                                           "vt": "num"
                                       }
                                   ],
                                   "checkall": "true",
                                   "repair": false,
                                   "outputs": 2,
                                   "x": 320,
                                   "y": 160,
                                   "wires": [
                                       [
                                           "1e4d02d4327046e2"
                                       ],
                                       [
                                           "f0133d29a83f3d17"
                                       ]
                                   ]
                               }
                            ]
                            

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

                              @siporax

                              063af3ae-fe3b-49b0-99ff-5082e8189143-image.png

                              da muss payload und nicht verbrauch rein.

                              Arbeite auch immer mit Debug Nodes - wenn Du Fehlern auf die Spur kommen willst.

                              S 1 Reply Last reply Reply Quote 0
                              • S
                                siporax @mickym last edited by siporax

                                @mickym said in 2 Werte Subtrtahieren in Node Red:

                                @siporax

                                063af3ae-fe3b-49b0-99ff-5082e8189143-image.png

                                da muss payload und nicht verbrauch rein.

                                Arbeite auch immer mit Debug Nodes - wenn Du Fehlern auf die Spur kommen willst.

                                So läuft nun. Danke
                                Wie oft wir der Wert aktualisiert ? Er schreibt alle 4 oder 5 Minuten nur den Wert.

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

                                  @siporax Er schreibt dann der Wert wenn der Sonoff Power Datenpunkt aktualisiert wird. Das hat also nichts mit NodeRed zu tun. Ggf. kannst Du im Sonoff Adapter was einstellen - das musst Du aber dort erfragen.

                                  S 1 Reply Last reply Reply Quote 0
                                  • S
                                    siporax @mickym last edited by

                                    @mickym said in 2 Werte Subtrtahieren in Node Red:

                                    @siporax Er schreibt dann der Wert wenn der Sonoff Power Datenpunkt aktualisiert wird. Das hat also nichts mit NodeRed zu tun. Ggf. kannst Du im Sonoff Adapter was einstellen - das musst Du aber dort erfragen.

                                    Ok,werde mal nachsehen.
                                    Danke für die Hilfe hier.

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    877
                                    Online

                                    31.7k
                                    Users

                                    79.7k
                                    Topics

                                    1.3m
                                    Posts

                                    3
                                    60
                                    2618
                                    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