Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. S0 Stromzähler umrechnen in aktuelle Verbrauch

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    S0 Stromzähler umrechnen in aktuelle Verbrauch

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

      Hi,

      ich habe einen S0 Stromzähler mit dem ich mir gerne den aktuellen Verbrauch in Vis anzeigen lassen würde.

      Jetzt weiß ich aber nicht wie ich die Ipmulse die über die S0 Schnittstelle ausgegeben werden, so umrechnen kann das mir der aktuelle Stromverbrauch angezeigt wird (z.B. im 1minuten Takt?).

      Hat jemand dafür ein Script oder ist das überhaupt nicht möglich?

      Habe gesucht aber nichts gefunden was mir weiterhilft oder ich habe es nicht verstanden 🙂

      Hoffe jemand kann mir helfen.

      Gruß

      Eddy

      1 Reply Last reply Reply Quote 0
      • G
        GoodOld last edited by

        Habe doch etwas gefunden.

        viewtopic.php?f=21&t=16953&p=178154&hilit=s0#p178154

        Gruß

        Eddy

        L 1 Reply Last reply Reply Quote 0
        • H
          Hansi-Decker last edited by

          Hallo GoodOld

          Ich habe meinen Stromzähler mit S0 über einen esp8266 geloggt und die Daten

          Count

          Timer

          Total

          in meinen Iobroker übertragen. Nun suche ich noch nach dem passenden Skript.

          Hast Du mir das Skript als Blockly Export oder so dass ich es importieren kann.

          Grus Hansi

          1 Reply Last reply Reply Quote 0
          • G
            GoodOld last edited by

            Hi,

            also ich habe das hier benutzt damit mir der aktuelle Wert angezeigt wird.

            Hoffe es hilft dir weiter.

            Du musst drei Variablen/Datenpunkte ändern bzw. deine eintragen. (EDIT:der Wert 1000 muss man auch noch abändern, je nachdem was für eine Auflösung der eigene Stromzähler hat, also wieviele x Impules sind 1 kW)

            Den untersten Datenpunkt der bei mir "Stromverbrauch aktuell Küche" heist, den musst du dir manuell erstellen.

            In diesen Datenpunkt wird dir dann der aktuelle Verbrauch angezeigt.

            Gruß

            Eddy

             <xml xmlns="http://www.w3.org/1999/xhtml"><block type="comment" id="s4n}ce17BN(O_xkYAU0W" x="388" y="13"><field name="COMMENT">dein Datenpunkt vom esp Time</field></block> 
              <block type="on_ext" id="ysdmc3`Gr[OlS6wX3zwn" x="63" y="38"><mutation items="1"></mutation>
                <field name="CONDITION">any</field>
            
                <value name="OID0"><shadow type="field_oid" id="g=PqAuIY6*91!SWub}aQ"><field name="oid">mqtt.0.StromzaehlerKueche.PulsKueche.Time</field></shadow></value> 
                <statement name="STATEMENT"><block type="variables_set" id="l+b)/1Oh=bK{OW)cHTi?"><field name="VAR">Wert</field>
                    <value name="VALUE"><block type="math_arithmetic" id="Cr=Lo5i2kGjw31~IMD}Z"><field name="OP">DIVIDE</field>
                        <value name="A"><shadow type="math_number" id="h5vLrf=_}6A)FIyY4iyR"><field name="NUM">1</field></shadow> 
                          <block type="get_value" id=")M7;?6gjE_kz.h[Gfe%4"><field name="ATTR">val</field>
                            <field name="OID">mqtt.0.StromzaehlerKueche.PulsKueche.Time</field></block></value> 
                        <value name="B"><shadow type="math_number" id="CLnK.uIp+f_wBL]+41:e"><field name="NUM">1000</field></shadow></value></block></value> 
                    <next><block type="variables_set" id="#J1w5f46yGCvs`5;|l/|"><field name="VAR">Wert</field>
                        <value name="VALUE"><block type="math_arithmetic" id="^B7%2v{!gu0EEl@k9FrK"><field name="OP">DIVIDE</field>
                            <value name="A"><shadow type="math_number" id="h5vLrf=_}6A)FIyY4iyR"><field name="NUM">3600</field></shadow></value> 
                            <value name="B"><shadow type="math_number" id="d6ob|)J]{ekBQ]}g`P_4"><field name="NUM">1000</field></shadow> 
                              <block type="variables_get" id="OQ3o_4[OzW+,pD{vi7=Q"><field name="VAR">Wert</field></block></value></block></value> 
                        <next><block type="control" id="=E0MGCLN./3sKFZkIOpb"><mutation delay_input="false"></mutation>
                            <field name="OID">javascript.0.Stromverbrauch_aktuell_Küche</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE"><block type="math_round" id="HjaqaHU@h#wj6OM?j*+:"><field name="OP">ROUND</field>
                                <value name="NUM"><shadow type="math_number" id="P=8-%G(uftUvKd|SikfY"><field name="NUM">3.1</field></shadow> 
                                  <block type="variables_get" id="+bKXuN1/@*.aKYmp{10T"><field name="VAR">Wert</field></block></value></block></value></block></next></block></next></block></statement></block> 
              <block type="comment" id="E:xfX+:#L%{HOOMyRlcS" x="538" y="88"><field name="COMMENT">dein Datenpunkt vom esp Time</field></block> 
              <block type="comment" id="MQN523NR~EcmN:EiVuXR" x="162" y="163"><field name="COMMENT">dein Datenpunkt, musst du manuell erstellen</field></block></xml> 
            
            1 Reply Last reply Reply Quote 0
            • H
              Hansi-Decker last edited by

              Hallo

              Danke für die schnelle Antwort.

              Ich werde es heute testen da ich krank bin und auch noch Sonntag ist

              Ich schreib wenn ob es geklappt hat

              Gruß Hansi

              1 Reply Last reply Reply Quote 0
              • H
                Hansi-Decker last edited by

                Hallo Eddy

                Hat sofort geklappt. Was habe ich Stunden verbracht ohne Erfolg.

                Danke Hansi

                1 Reply Last reply Reply Quote 0
                • G
                  GoodOld last edited by

                  Moin,

                  ich denke da ist noch ein "kleiner" Fehler drin, bzw. ich Zähle den Verbrauch von einer Klimaanlage zusätzlich und wenn diese aus ist und der Wert Time = 0 ist dann kommt als verbrauch der Maximal Wert des Datenpunktes raus bei mir 9999.

                  Habe mal das Skript abgeändert da ich aber erst paar Tag mit ioBroker arbeite bin ich mir nicht sicher das es richtig ist, aber es scheint zu funktionieren.

                  Muss es im laufe des Tages noch testen.

                   <xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="0Sk;oHtQ6S:k07HPnW?7" x="63" y="88"><mutation items="1"></mutation>
                      <field name="CONDITION">any</field>
                  
                      <value name="OID0"><shadow type="field_oid" id="L/T2y/92sL}W_HXn2T1~"><field name="oid">mqtt.0.StromzaehlerKlima.Pulszaehler.Time</field></shadow></value> 
                      <statement name="STATEMENT"><block type="controls_if" id="iUaf[k~^|w),4x.){V+F"><value name="IF0"><block type="logic_compare" id="t[QH7N-2s/0#f()E*+TK"><field name="OP">GT</field>
                              <value name="A"><block type="get_value" id="l,*,Z*N:qq6wgKXv[xRA"><field name="ATTR">val</field>
                                  <field name="OID">mqtt.0.StromzaehlerKlima.Pulszaehler.Time</field></block></value> 
                              <value name="B"><block type="math_number" id="12!)ey:4h!i1Vcpa_P/."><field name="NUM">0</field></block></value></block></value> 
                          <statement name="DO0"><block type="variables_set" id="We#NKwtz7+;Hz#jm.(;}"><field name="VAR">Wert</field>
                              <value name="VALUE"><block type="math_arithmetic" id="ej+i[]|eM4x7k?O^x^E7"><field name="OP">DIVIDE</field>
                                  <value name="A"><shadow type="math_number" id="h5vLrf=_}6A)FIyY4iyR"><field name="NUM">1</field></shadow> 
                                    <block type="get_value" id="l|suXsLX?BHmSza7l|iJ"><field name="ATTR">val</field>
                                      <field name="OID">mqtt.0.StromzaehlerKlima.Pulszaehler.Time</field></block></value> 
                                  <value name="B"><shadow type="math_number" id="LM4@`W`A:}E8Y9it}x=+"><field name="NUM">1000</field></shadow></value></block></value> 
                              <next><block type="variables_set" id="~;[g2O3X(]AA,rIqaiF+"><field name="VAR">Wert</field>
                                  <value name="VALUE"><block type="math_arithmetic" id="8*o-g!6Okm;;z%}o*W65"><field name="OP">DIVIDE</field>
                                      <value name="A"><shadow type="math_number" id="I[7R;75:Lju`h(5wk]:}"><field name="NUM">3600</field></shadow></value> 
                                      <value name="B"><shadow type="math_number" id="d6ob|)J]{ekBQ]}g`P_4"><field name="NUM">1000</field></shadow> 
                                        <block type="variables_get" id="/e/c.+=#@9#.ykM}aa+*"><field name="VAR">Wert</field></block></value></block></value> 
                                  <next><block type="control" id="Op`JzD}_|;6;ql1k2ON9"><mutation delay_input="false"></mutation>
                                      <field name="OID">javascript.0.Stromverbrauch_aktuell_Klima</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE"><block type="math_round" id="F=.oa5q#rl**.n0;FfkU"><field name="OP">ROUND</field>
                                          <value name="NUM"><shadow type="math_number" id="P=8-%G(uftUvKd|SikfY"><field name="NUM">3.1</field></shadow> 
                                            <block type="variables_get" id="0{|G%xhtf5NW3jz4NXe="><field name="VAR">Wert</field></block></value></block></value></block></next></block></next></block></statement></block></statement></block></xml> 
                  
                  D D 2 Replies Last reply Reply Quote 0
                  • G
                    GoodOld last edited by

                    Eine Sache ganz vergessen, der Wert "1000" in dem Skript, muss man noch mit seinem Wert/Ausflösung/Impule vom seinem eigenen Stromzähler abändern.

                    D.h. wenn 2000 Impule = 1KW ist dann dort 2000 eintragen usw.

                    Gruß

                    Eddy

                    1 Reply Last reply Reply Quote 0
                    • H
                      Hansi-Decker last edited by

                      Hallo

                      Stimmt . Das habe ich nicht bedacht. Ich war so froh dass mal etwas funktioniert.

                      Meiner hat 800 Impuls für 1 Kw

                      Habs mal geändert.

                      Ist doch mal ne gute Basis.

                      Gruß Hansi

                      1 Reply Last reply Reply Quote 0
                      • J
                        joewanne last edited by

                        Hallo GoodOld,

                        erstmal muss ich sagen das dieses Script Wunderbar funktioniert.
                        Kann man das noch erweitern, so das man den Tages- Wochen- Monat- und Jahresverbrauch
                        anzeigen lassen kann.
                        Leider reichen meine Kenntnisse hierüber noch nicht aus.

                        Liebe Grüße
                        Jörg

                        paul53 1 Reply Last reply Reply Quote 0
                        • paul53
                          paul53 @joewanne last edited by

                          @joewanne sagte:

                          Tages- Wochen- Monat- und Jahresverbrauch anzeigen lassen kann.

                          Dafür ist der Adapter SourceAnalytix gedacht.

                          J 1 Reply Last reply Reply Quote 0
                          • J
                            joewanne @paul53 last edited by

                            @paul53 said in S0 Stromzähler umrechnen in aktuelle Verbrauch:

                            Dafür ist der Adapter SourceAnalytix gedacht.

                            Okay, danke schon mal für die schnelle Antwort, werde ich mir dann später noch anschauen

                            1 Reply Last reply Reply Quote 0
                            • D
                              do4bmw @GoodOld last edited by

                              @GoodOld Hy Ich hoffe du bist noch aktiv

                              bin auch gerade neu in ioBroker angekommen und habe dein Script entdeckt.

                              Grundsätzlich funktioniert es wunderbar , nur wenn ich einen Verbrauch von mehr als 3600Watt habe zeigt es nicht mehr an.

                              habe ein Test mit 7KW last gemacht , leider zeigt das script nie mehr als ungefähr 3568watt an.

                              Zähler macht 1000imp/kWh , habe die 1000 Stehen lassen

                              irgendeine idee ?

                              gruß Benny

                              D paul53 2 Replies Last reply Reply Quote 0
                              • D
                                do4bmw @do4bmw last edited by

                                oder hat jemand anderes vieleicht eine idee dazu ?

                                D 1 Reply Last reply Reply Quote 0
                                • D
                                  do4bmw @do4bmw last edited by

                                  niemand 😞

                                  1 Reply Last reply Reply Quote 0
                                  • paul53
                                    paul53 @do4bmw last edited by paul53

                                    @do4bmw sagte:

                                    Test mit 7KW last gemacht , leider zeigt das script nie mehr als ungefähr 3568watt an.

                                    Script ? Kommen ca. 2 Impulse pro s ?

                                    D 1 Reply Last reply Reply Quote 0
                                    • D
                                      do4bmw @paul53 last edited by

                                      @paul53 said in S0 Stromzähler umrechnen in aktuelle Verbrauch:

                                      @do4bmw sagte:

                                      Test mit 7KW last gemacht , leider zeigt das script nie mehr als ungefähr 3568watt an.

                                      Script ? Kommen ca. 2 Impulse pro s ?

                                      Hy

                                      das script habe ich von @GoodOld übernommen, sieht bei mir derzeit so aus

                                      und ja es kann schon sein das manchmal 2 impulse pro Sek kommen ... ist das dass problem ?
                                      gerade dann wenn man halt viele KW zieht.

                                      <xml xmlns="https://developers.google.com/blockly/xml">
                                        <variables>
                                          <variable id="Y*)uQOfA3A0pswm8w1GH">Wert</variable>
                                        </variables>
                                        <block type="on_ext" id="0Sk;oHtQ6S:k07HPnW?7" x="63" y="88">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                          <field name="CONDITION">any</field>
                                          <field name="ACK_CONDITION"></field>
                                          <value name="OID0">
                                            <shadow type="field_oid" id="L/T2y/92sL}W_HXn2T1~">
                                              <field name="oid">mqtt.0.DO4BMW_S0-1.Strom.Time</field>
                                            </shadow>
                                          </value>
                                          <statement name="STATEMENT">
                                            <block type="controls_if" id="iUaf[k~^|w),4x.){V+F">
                                              <value name="IF0">
                                                <block type="logic_compare" id="t[QH7N-2s/0#f()E*+TK">
                                                  <field name="OP">GT</field>
                                                  <value name="A">
                                                    <block type="get_value" id="l,*,Z*N:qq6wgKXv[xRA">
                                                      <field name="ATTR">val</field>
                                                      <field name="OID">mqtt.0.DO4BMW_S0-1.Strom.Time</field>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="math_number" id="12!)ey:4h!i1Vcpa_P/.">
                                                      <field name="NUM">0</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <statement name="DO0">
                                                <block type="variables_set" id="We#NKwtz7+;Hz#jm.(;}">
                                                  <field name="VAR" id="Y*)uQOfA3A0pswm8w1GH">Wert</field>
                                                  <value name="VALUE">
                                                    <block type="math_arithmetic" id="ej+i[]|eM4x7k?O^x^E7">
                                                      <field name="OP">DIVIDE</field>
                                                      <value name="A">
                                                        <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="h5vLrf=_}6A)FIyY4iyR">
                                                          <field name="NUM">1</field>
                                                        </shadow>
                                                        <block type="get_value" id="l|suXsLX?BHmSza7l|iJ">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">mqtt.0.DO4BMW_S0-1.Strom.Time</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <shadow type="math_number" id="LM4@`W`A:}E8Y9it}x=+">
                                                          <field name="NUM">1000</field>
                                                        </shadow>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <next>
                                                    <block type="variables_set" id="~;[g2O3X(]AA,rIqaiF+">
                                                      <field name="VAR" id="Y*)uQOfA3A0pswm8w1GH">Wert</field>
                                                      <value name="VALUE">
                                                        <block type="math_arithmetic" id="8*o-g!6Okm;;z%}o*W65">
                                                          <field name="OP">DIVIDE</field>
                                                          <value name="A">
                                                            <shadow type="math_number" id="I[7R;75:Lju`h(5wk]:}">
                                                              <field name="NUM">3600</field>
                                                            </shadow>
                                                          </value>
                                                          <value name="B">
                                                            <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="d6ob|)J]{ekBQ]}g`P_4">
                                                              <field name="NUM">1000</field>
                                                            </shadow>
                                                            <block type="variables_get" id="/e/c.+=#@9#.ykM}aa+*">
                                                              <field name="VAR" id="Y*)uQOfA3A0pswm8w1GH">Wert</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <next>
                                                        <block type="control" id="Op`JzD}_|;6;ql1k2ON9">
                                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                          <field name="OID">mqtt.0.DO4BMW_S0-1.Strom.Watt2</field>
                                                          <field name="WITH_DELAY">FALSE</field>
                                                          <value name="VALUE">
                                                            <block type="math_round" id="F=.oa5q#rl**.n0;FfkU">
                                                              <field name="OP">ROUND</field>
                                                              <value name="NUM">
                                                                <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="P=8-%G(uftUvKd|SikfY">
                                                                  <field name="NUM">3.1</field>
                                                                </shadow>
                                                                <block type="variables_get" id="0{|G%xhtf5NW3jz4NXe=">
                                                                  <field name="VAR" id="Y*)uQOfA3A0pswm8w1GH">Wert</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </statement>
                                            </block>
                                          </statement>
                                        </block>
                                      </xml>
                                      
                                      paul53 1 Reply Last reply Reply Quote 0
                                      • paul53
                                        paul53 @do4bmw last edited by paul53

                                        @do4bmw sagte:

                                        manchmal 2 impulse pro Sek kommen ... ist das dass problem ?

                                        Bei 7 kW müssen 2 Impulse pro Sekunde kommen. Das Skript wertet allerdings eine Zeit aus und enthält keine Begrenzung. Logge mal den Trigger-Wert, der bei 7 kW etwas über 500 enthalten muss.

                                        D 1 Reply Last reply Reply Quote 0
                                        • D
                                          do4bmw @paul53 last edited by

                                          @paul53 said in S0 Stromzähler umrechnen in aktuelle Verbrauch:

                                          @do4bmw sagte:

                                          manchmal 2 impulse pro Sek kommen ... ist das dass problem ?

                                          Bei 7 kW müssen 2 Impulse pro Sekunde kommen. Das Skript wertet allerdings eine Zeit aus und enthält keine Begrenzung. Logge mal den Trigger-Wert, der bei 7 kW etwas über 500 enthalten muss.

                                          bei 7.7KW kommt hier sehr häufig der wert 1014 durch

                                          paul53 1 Reply Last reply Reply Quote 0
                                          • paul53
                                            paul53 @do4bmw last edited by

                                            @do4bmw sagte:

                                            bei 7.7KW kommt hier sehr häufig der wert 1014 durch

                                            Der Wert ist falsch. Du musst also die Ursache an der Quelle suchen.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            911
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            11
                                            66
                                            6207
                                            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