Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Gelöst] Addieren des Stromverbrauches von L1 L2 L3

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    927

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

[Gelöst] Addieren des Stromverbrauches von L1 L2 L3

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
12 Beiträge 5 Kommentatoren 5.8k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • H Offline
    H Offline
    Heinzelmaennchen
    schrieb am zuletzt editiert von
    #1

    Hallo Zusammen,

    ich würde gerne den Stromverbrauch eines dreiphasig angeschlossenen Herdes aus den Einzelwerten addieren um dann zum einen den Gesamtverbrauch anzuzeigen und zum anderen die Umschaltung (Text, Farbe etc.) einer Metro Schaltfläche zu steuern.

    Ich habe mir dafür einen einfachen node-red flow gebaut, der den Verbrauch von L1 misst und bei Überschreiten eines bestimmten Verbrauches ein Variable auf true oder false setzt. Das funktioniert soweit auch sehr gut.

    Ich stehe aber vollkommen auf dem Schlauch, wie ich die Verbrauchswerte nun von allen drei Phasen addieren kann. Kann ich das in node-red, was natürlich am einfachsten wäre, oder brauche ich ein Script mit dem ich den Gesamtverbrauch errechne und dann ne Variable damit befülle auf die ich dann aus node-red heraus zugreife?

    Wäre sehr dankbar für Eure Unterstützung

    Gruß

    Bernhard

    Edit, 3.1.2016

    Kaum 2 Wochen später :D , ist hier auch schon die Lösung. Zur Erinnerung. Es ging mir um einen NodeRed-Flow, der mir die drei Werte addiert. Darüber hinaus auch noch eine Boolsche Variable setzt auf die ein Widget reagieren kann, und noch den kumulierten Wert in eine eigene neue Variable setzt um den Gesamtwert dann anzuzeigen.

    Vielleicht hlfts ja auch jemand anderem.

    ! [{"id":"dcbfbd00.23404","type":"ioBroker in","name":"Herd-L1","topic":"b-control-em.1.Herd-L1_0001201210230031","payloadType":"value","x":167.8958282470703,"y":80.88888549804688,"z":"2cb51836.d34ae8","wires":[["f6f6f5b5.090908"]]},{"id":"205e92a8.dfa16e","type":"ioBroker in","name":"Herd-L2","topic":"b-control-em.1.Herd-L2_0001201210250429","payloadType":"value","x":167.8958282470703,"y":176.88890075683594,"z":"2cb51836.d34ae8","wires":[["888f0411.7770f8"]]},{"id":"d91f1185.26e0f","type":"ioBroker in","name":"Herd-L3","topic":"b-control-em.1.Herd-L3_0001201209240147","payloadType":"value","x":166.8958282470703,"y":260.888916015625,"z":"2cb51836.d34ae8","wires":[["b63c594.f49c3a8"]]},{"id":"ce395248.31c6b","type":"function","name":"parseFloat und Addition","func":"context.data = context.data || new Object();\n\nswitch (msg.topic) {\n case "consL1":\n context.data.consL1 = msg.payload;\n msg = null;\n break;\n case "consL2":\n context.data.consL2 = msg.payload;\n msg = null;\n break;\n \n case "consL3":\n context.data.consL3 = msg.payload;\n msg = null;\n break;\n \n default:\n msg = null;\n \tbreak;\n\n}\nif(context.data.consL1 != null && context.data.consL2 != null && context.data.consL3 != null) {\n//L1 = parseFloat(context.data.consL1);\n//L2 = parseFloat(context.data.consL2);\n//L3 = parseFloat(context.data.consL3);\nmsg2 = new Object();\nmsg2 = context.data;\nmsg2.payload = parseFloat(context.data.consL1)+parseFloat(context.data.consL2)+parseFloat(context.data.consL3);\ncontext.data=null;\nreturn msg2;\n} else return msg;","outputs":1,"noerr":0,"x":579.2291717529297,"y":174.88888549804688,"z":"2cb51836.d34ae8","wires":[["9fc5c6d5.603a38","bf61bff0.409e4"]]},{"id":"f6f6f5b5.090908","type":"function","name":"consL1","func":"msg.topic="consL1";\n//msg.payload="Task1's payload"\nreturn msg;","outputs":1,"noerr":0,"x":342.2291717529297,"y":83.88888549804688,"z":"2cb51836.d34ae8","wires":[["ce395248.31c6b"]]},{"id":"888f0411.7770f8","type":"function","name":"consL2","func":"msg.topic="consL2";\n//msg.payload="Task2's payload"\nreturn msg;","outputs":1,"noerr":0,"x":345.2291717529297,"y":178.88888549804688,"z":"2cb51836.d34ae8","wires":[["ce395248.31c6b"]]},{"id":"b63c594.f49c3a8","type":"function","name":"consL3","func":"msg.topic="consL3";\n//msg.payload="Task3's payload"\nreturn msg;","outputs":1,"noerr":0,"x":340.2291717529297,"y":262.8888854980469,"z":"2cb51836.d34ae8","wires":[["ce395248.31c6b"]]},{"id":"42e66c00.bd1994","type":"ioBroker out","name":"node-red.0.consumption.herd_bool","topic":"node-red.0.consumption.herd_bool","ack":"true","autoCreate":"true","x":1368.8960418701172,"y":118.88888549804688,"z":"2cb51836.d34ae8","wires":[]},{"id":"9fc5c6d5.603a38","type":"switch","name":"An oder Aus?","property":"payload","rules":[{"t":"lte","v":"5"},{"t":"else"}],"checkall":"true","outputs":2,"x":841.8958587646484,"y":121.88888549804688,"z":"2cb51836.d34ae8","wires":[["9ce0667a.631f98"],["d4341833.2bcbe8"]]},{"id":"9ce0667a.631f98","type":"change","name":"false bei Aus","rules":[{"t":"set","p":"payload","to":"true"}],"action":"","property":"","from":"","to":"","reg":false,"x":1070.8958587646484,"y":82.88888549804688,"z":"2cb51836.d34ae8","wires":[["42e66c00.bd1994"]]},{"id":"d4341833.2bcbe8","type":"change","name":"true bei An","rules":[{"t":"set","p":"payload","to":"false"}],"action":"","property":"","from":"","to":"","reg":false,"x":1067.8958587646484,"y":160.88890075683594,"z":"2cb51836.d34ae8","wires":[["42e66c00.bd1994"]]},{"id":"bf61bff0.409e4","type":"ioBroker out","name":"node-red.0.consumption.herd_value","topic":"node-red.0.consumption.herd_value","ack":"true","autoCreate":"true","x":910.8958587646484,"y":223.88888549804688,"z":"2cb51836.d34ae8","wires":[]}]
    5373_alarmanlage.txt

    Gruß

    Bernhard

    –------------------------------------------

    263 Kanäle in 91 Geräten

    3x Sonos Play:1, 1x Sonos:Amp, 1x Sonos Playbar

    4x Hue E27, 21xHue GU10, 1x Lightify RGB Stripe, 1x Lightify E27 TW

    -------------...

    1 Antwort Letzte Antwort
    0
    • blauholstenB Offline
      blauholstenB Offline
      blauholsten
      Developer
      schrieb am zuletzt editiert von
      #2

      Hi,

      habe zwar keine Ahnung von JS, aber probiere mal das…

      createState('verbrauch', 0);
      crateState('alarm', 0);
      
      var eins = parseFloat(id:"StromL1");
      var zwei = parseFloat(id:"StromL2");
      var drei = parseFloat(id:"StromL3");
      
      var isteins = getState(eins).val;
      var istzwei = getState(zwei).val;
      var istdrei = getState(drei).val;
      
      function summe();
      
      var verbrauch = (eins + zwei + drei);
      
      if(verbrauch>xxx)
      {
      setState(alarm, 1);
      }
      elseif(verbrauch
      

      aber aus Elektrotechnischer Sicht macht es mehr sin sich die Leistung anzeigen zu lassen….````
      var verbrauch = ((eins + zwei + drei)*230);

      Entwickler vom: - Viessman Adapter
      - Alarm Adapter

      1 Antwort Letzte Antwort
      0
      • H Offline
        H Offline
        Heinzelmaennchen
        schrieb am zuletzt editiert von
        #3

        Hallo Blauholsten,

        herzlichen Dank für den Denkansatz. Ich glaube fast dass ich das hinbekomme. Auf jeden Fall werde ich das mal auf eigene Faust versuchen als Script dann so umzusetzen. Und natürlich, Asche über mein Haupt, natürlich ist nicht Verbrauch sondern Wirkleistung das, was ich berechnen möchte ;-)

        Gruß und Danke

        Bernhard

        Gruß

        Bernhard

        –------------------------------------------

        263 Kanäle in 91 Geräten

        3x Sonos Play:1, 1x Sonos:Amp, 1x Sonos Playbar

        4x Hue E27, 21xHue GU10, 1x Lightify RGB Stripe, 1x Lightify E27 TW

        -------------...

        1 Antwort Letzte Antwort
        0
        • sissiwupS Offline
          sissiwupS Offline
          sissiwup
          schrieb am zuletzt editiert von
          #4

          Hallo,

          Kannst du direkt in Node-red machen und dann in eine Variable schreiben.

          MfG

          Sissi

          –-----------------------------------------

          1 CCU3 1 CCU2-Gateway 1 LanGateway 1 Pi-Gateway 1 I7 für ioBroker/MySQL


          1 Antwort Letzte Antwort
          0
          • H Offline
            H Offline
            Heinzelmaennchen
            schrieb am zuletzt editiert von
            #5

            Hallo Sissiwup,

            und wie ? Mein Ehrgeiz verbietet mir gerade, die klassische Frage "Haste mal nen Beispiel für mich ;-)" zu stellen.

            Ich komme nicht dahinter, wie ich innerhalb eines function-Blockes drei unterschiedliche Eingangswerte differenzieren kann. Vielleicht denke ich einfach nur zu kompliziert. Ich würde mir einen node wünschen, der eine festlegbare Anzahl Eingänge hat, mit denen ich dann unterschiedliche mathematische Operationen oder ähnliches durchführen kann. Scheint es aber so nicht zu geben.Aber ich werde das jetzt auf Basis des o.a. Beispiels mal probieren. Mal sehen wie weit ich komme.

            Gruß

            Bernhard

            Gruß

            Bernhard

            –------------------------------------------

            263 Kanäle in 91 Geräten

            3x Sonos Play:1, 1x Sonos:Amp, 1x Sonos Playbar

            4x Hue E27, 21xHue GU10, 1x Lightify RGB Stripe, 1x Lightify E27 TW

            -------------...

            1 Antwort Letzte Antwort
            0
            • H Offline
              H Offline
              hometm
              schrieb am zuletzt editiert von
              #6

              Nur der technischen Vollständigkeit halber:

              Wenn sich im Stromkreis ein asynchrones Drehstromgerät oder 3-phasiger Herd befindet stimmt die Berechnung nicht zu 100% :-)

              Aber für den Alltagsgebrauch habe ich es auch so gelöst

              Tobias

              Gesendet von meinem VT10416-2 mit Tapatalk

              1 Antwort Letzte Antwort
              0
              • H Offline
                H Offline
                Heinzelmaennchen
                schrieb am zuletzt editiert von
                #7

                Hallo hometm,

                das ist natürlich richtig. Das ganze soll bei mir auch nur dazu dienen, dass ich erkennen kann, ob der Herd an ist oder nicht. Der Herd hat an L1 eine Standbyleistung! von ca. 2.1W. Die Phasen L2-L3 sind im ausgeschalteten Zustand bei 0W. Ich möchte aber aus verschiedenen Überwachungsaufgaben heraus nur einen Gesamtwert haben, den ich überwache. Ist schlicht einfacher so.

                Gruß

                Bernhard

                –------------------------------------------

                263 Kanäle in 91 Geräten

                3x Sonos Play:1, 1x Sonos:Amp, 1x Sonos Playbar

                4x Hue E27, 21xHue GU10, 1x Lightify RGB Stripe, 1x Lightify E27 TW

                -------------...

                1 Antwort Letzte Antwort
                0
                • blauholstenB Offline
                  blauholstenB Offline
                  blauholsten
                  Developer
                  schrieb am zuletzt editiert von
                  #8

                  @hometm:

                  Nur der technischen Vollständigkeit halber:

                  Wenn sich im Stromkreis ein asynchrones Drehstromgerät oder 3-phasiger Herd befindet stimmt die Berechnung nicht zu 100% :-)

                  Aber für den Alltagsgebrauch habe ich es auch so gelöst

                  Tobias

                  Gesendet von meinem VT10416-2 mit Tapatalk `
                  Na das erklär mal bitte

                  Entwickler vom: - Viessman Adapter
                  - Alarm Adapter

                  1 Antwort Letzte Antwort
                  0
                  • H Offline
                    H Offline
                    Heinzelmaennchen
                    schrieb am zuletzt editiert von
                    #9

                    Hallo blauholsten,

                    Normalerweise müsste man dann nämlich die Formel nehmen p=u*i * cos phi (phasenverschiebung).

                    Aber den phasenwinkel muss man erstmal messen können. Kann ich zwar bei mir, macht aber alles nur unnötig kompliziert und ich will ja nur wissen, ob der Herd auf allen drei Phasen läuft oder eben nur im Standby.
                    6696_debugger.jpg

                    Gruß

                    Bernhard

                    –------------------------------------------

                    263 Kanäle in 91 Geräten

                    3x Sonos Play:1, 1x Sonos:Amp, 1x Sonos Playbar

                    4x Hue E27, 21xHue GU10, 1x Lightify RGB Stripe, 1x Lightify E27 TW

                    -------------...

                    1 Antwort Letzte Antwort
                    0
                    • blauholstenB Offline
                      blauholstenB Offline
                      blauholsten
                      Developer
                      schrieb am zuletzt editiert von
                      #10

                      @Heinzelmaennchen:

                      Formel nehmen p=u*i * cos phi (phasenverschiebung). `
                      Ein normaler Eherd kann als rein ohmsche last betrachtet werden. Daher kann man den COS ausser acht lassen.

                      Entwickler vom: - Viessman Adapter
                      - Alarm Adapter

                      1 Antwort Letzte Antwort
                      0
                      • paul53P Offline
                        paul53P Offline
                        paul53
                        schrieb am zuletzt editiert von
                        #11

                        Korrekturen zum Script von blauholsten:

                        createState('Herdleistung', 0);
                        createState('Herdein', false);
                        
                        var id1 = "id von StromL1";
                        var id2 = "id von StromL2";
                        var id3 = "id von StromL3";
                        
                        var i1 = getState(id1).val;
                        var i2 = getState(id2).val;
                        var i3 = getState(id3).val;
                        
                        function summe() {
                        	var p = (i1 + i2 + i3) * 230;
                        	setState("Herdleistung", p);
                        	if(p > 3) setState("Herdein", true);
                        	else setState("Herdein", false);
                        }
                        
                        on(id1, function(dp) {
                           i1 = dp.newState.val;
                           summe();
                        });
                        on(id2, function(dp) {
                           i2 = dp.newState.val;
                           summe();
                        });
                        on(id3, function(dp) {
                           i3 = dp.newState.val;
                           summe();
                        });
                        
                        summe(); // bei Scriptstart
                        

                        Eventuell muss parseFloat auf die Stromwerte angewendet werden:

                        	var p = (parseFloat(i1) + parseFloat(i2) + parseFloat(i3)) * 230;
                        
                        

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        1 Antwort Letzte Antwort
                        0
                        • H Offline
                          H Offline
                          Heinzelmaennchen
                          schrieb am zuletzt editiert von
                          #12

                          Ich habe eben gerade den ersten Eintrag um meine Lösung erweitert. Vielleicht kann es ja jemand brauchen.

                          Gruß

                          Bernhard

                          –------------------------------------------

                          263 Kanäle in 91 Geräten

                          3x Sonos Play:1, 1x Sonos:Amp, 1x Sonos Playbar

                          4x Hue E27, 21xHue GU10, 1x Lightify RGB Stripe, 1x Lightify E27 TW

                          -------------...

                          1 Antwort Letzte Antwort
                          0
                          Antworten
                          • In einem neuen Thema antworten
                          Anmelden zum Antworten
                          • Älteste zuerst
                          • Neuste zuerst
                          • Meiste Stimmen


                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          646

                          Online

                          32.6k

                          Benutzer

                          82.2k

                          Themen

                          1.3m

                          Beiträge
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                          ioBroker Community 2014-2025
                          logo
                          • Anmelden

                          • Du hast noch kein Konto? Registrieren

                          • Anmelden oder registrieren, um zu suchen
                          • Erster Beitrag
                            Letzter Beitrag
                          0
                          • Home
                          • Aktuell
                          • Tags
                          • Ungelesen 0
                          • Kategorien
                          • Unreplied
                          • Beliebt
                          • GitHub
                          • Docu
                          • Hilfe