Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Smart Meter Zähler mit S0 Ausgang

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Smart Meter Zähler mit S0 Ausgang

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

      Hallo,

      Ich würde gerne meinen Smart Meter mit S0 Ausgang in meinen io brocker einbinden.
      Im moment hab ich einen ESP32 mit der Firmware von ESPeasy am laufen und logge die Impulse mit.
      Bei meinem Zähler entsprechen 1600imp / 1 KWh.
      die Pulse werden schon an iobroker übertragen und dort geloggt.

      Bildschirmfoto 2021-03-01 um 19.45.08.png

      Wie schaffe ich es jetzt den Impulswert erstens in kWh umzurechnen ? Wie oder muss ich einen Datenpunkt erstellen.

      Danke für eure hilfe.

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

        @pmunz
        Erstelle im Tab "Objekte" unter "0_userdata.0" einen Datenpunkt vom Typ "Zahl" mit der Einheit "kWh" für den Zählerstand und gebe den Anfangszählerstand ein. Mit einem kleinen Blockly-Skript kann dann weiter gezählt werden.

        Bild_2021-03-01_202639.png

        Homoran 1 Reply Last reply Reply Quote 1
        • P
          pmunz last edited by pmunz

          @paul53
          Danke für deine Hilfe, ich hab mir einen Datenpunkt wie du beschrieben hast erstellt aber irgendwie komm ich mit dem Blockly nicht in schuss.

          mein Blockly im moment:

          <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
              <variable id="Y*)uQOfA3A0pswm8w1GH">Wert</variable>
            </variables>
            <block type="variables_set" id="l+b)/1Oh=bK{OW)cHTi?" x="187" y="38">
              <field name="VAR" id="Y*)uQOfA3A0pswm8w1GH">Wert</field>
              <value name="VALUE">
                <block type="math_arithmetic" id="^B7%2v{!gu0EEl@k9FrK">
                  <field name="OP">MULTIPLY</field>
                  <value name="A">
                    <shadow type="math_number" id="h5vLrf=_}6A)FIyY4iyR">
                      <field name="NUM">1600</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="get_value" id=")M7;?6gjE_kz.h[Gfe%4">
                      <field name="ATTR">val</field>
                      <field name="OID">mqtt.0.ESP_ZaehlerkastenWHG.Strom_Hauptzaehler.Total</field>
                    </block>
                  </value>
                </block>
              </value>
              <next>
                <block type="on_ext" id="ysdmc3`Gr[OlS6wX3zwn">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                  <field name="CONDITION">gt</field>
                  <field name="ACK_CONDITION"></field>
                  <value name="OID0">
                    <shadow type="field_oid" id="g=PqAuIY6*91!SWub}aQ">
                      <field name="oid">mqtt.0.ESP_ZaehlerkastenWHG.Strom_Hauptzaehler.Total</field>
                    </shadow>
                  </value>
                  <statement name="STATEMENT">
                    <block type="math_change" id="J[INl;irhSMSyTHN::QR">
                      <field name="VAR" id="Y*)uQOfA3A0pswm8w1GH">Wert</field>
                      <value name="DELTA">
                        <shadow type="math_number" id="Ose%bzsXA3)HbX}h^aUU">
                          <field name="NUM">1</field>
                        </shadow>
                      </value>
                      <next>
                        <block type="update" id="(B=+NHQ[WhJB9^`PyUYd">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">0_userdata.0.ESP_HauptzählerWHG</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="math_rndfixed" id="FmVtkYMO!FT2*7~s,]5{">
                              <field name="n">3</field>
                              <value name="x">
                                <shadow type="math_number" id="ebKRD:!RU^UU}v`Ox31t">
                                  <field name="NUM">1600</field>
                                </shadow>
                              </value>
                            </block>
                          </value>
                        </block>
                      </next>
                    </block>
                  </statement>
                </block>
              </next>
            </block>
          </xml>
          

          mein Impuls-Counter zeigt im Moment ca 360 an natürlich steigend.
          was hab ich da wieder falsch gemacht ?
          Danke

          Bildschirmfoto 2021-03-01 um 21.06.04.png
          Bildschirmfoto 2021-03-01 um 21.07.18.png

          Homoran paul53 2 Replies Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators @pmunz last edited by

            @pmunz du musst bei max natürlich einen ausreichend hohen Wert eintragen

            P 1 Reply Last reply Reply Quote 0
            • P
              pmunz @Homoran last edited by

              @homoran sagte in Smart Meter Zähler mit S0 Ausgang:

              @pmunz du musst bei max natürlich einen ausreichend hohen Wert eintragen

              Ahh, vielen dank
              und ist es auch möglich einen Anfangszählerstand zu hinterlegen?
              wo kann ich diesen Wert eintragen?

              Danke

              1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators @paul53 last edited by Homoran

                @pmunz
                wie Paul schon schrieb

                @paul53 sagte in Smart Meter Zähler mit S0 Ausgang:

                Erstelle im Tab "Objekte" unter "0_userdata.0" einen Datenpunkt vom Typ "Zahl" mit der Einheit "kWh" für den Zählerstand und gebe den Anfangszählerstand ein.

                einfach eintragen

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

                  @pmunz sagte: mein Blockly im moment:

                  Du liest den falschen Datenpunkt bei Skriptstart ein. Verwende bitte nicht "Wert" für eine Variable, da es irritiert.

                  Bild_2021-03-01_211604.png

                  <xml xmlns="https://developers.google.com/blockly/xml">
                   <variables>
                     <variable id="Y*)uQOfA3A0pswm8w1GH">wert</variable>
                   </variables>
                   <block type="variables_set" id="l+b)/1Oh=bK{OW)cHTi?" x="187" y="38">
                     <field name="VAR" id="Y*)uQOfA3A0pswm8w1GH">wert</field>
                     <value name="VALUE">
                       <block type="math_arithmetic" id="^B7%2v{!gu0EEl@k9FrK">
                         <field name="OP">MULTIPLY</field>
                         <value name="A">
                           <shadow type="math_number" id="h5vLrf=_}6A)FIyY4iyR">
                             <field name="NUM">1600</field>
                           </shadow>
                         </value>
                         <value name="B">
                           <shadow type="math_number" id="d6ob|)J]{ekBQ]}g`P_4">
                             <field name="NUM">0</field>
                           </shadow>
                           <block type="get_value_var" id="mjeW5(w8d[G;yoH+b*kr">
                             <field name="ATTR">val</field>
                             <value name="OID">
                               <shadow type="text" id="03}}p#O0#`arH7eTt|1*">
                                 <field name="TEXT">0_userdata.0.ESP_HauptzählerWHG</field>
                               </shadow>
                             </value>
                           </block>
                         </value>
                       </block>
                     </value>
                     <next>
                       <block type="on_ext" id="ysdmc3`Gr[OlS6wX3zwn">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                         <field name="CONDITION">gt</field>
                         <field name="ACK_CONDITION"></field>
                         <value name="OID0">
                           <shadow type="field_oid" id="g=PqAuIY6*91!SWub}aQ">
                             <field name="oid">mqtt.0.ESP_ZaehlerkastenWHG.Strom_Hauptzaehler.Total</field>
                           </shadow>
                         </value>
                         <statement name="STATEMENT">
                           <block type="math_change" id="J[INl;irhSMSyTHN::QR">
                             <field name="VAR" id="Y*)uQOfA3A0pswm8w1GH">wert</field>
                             <value name="DELTA">
                               <shadow type="math_number" id="Ose%bzsXA3)HbX}h^aUU">
                                 <field name="NUM">1</field>
                               </shadow>
                             </value>
                             <next>
                               <block type="update" id="(B=+NHQ[WhJB9^`PyUYd">
                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                 <field name="OID">0_userdata.0.ESP_HauptzählerWHG</field>
                                 <field name="WITH_DELAY">FALSE</field>
                                 <value name="VALUE">
                                   <block type="math_rndfixed" id="FmVtkYMO!FT2*7~s,]5{">
                                     <field name="n">3</field>
                                     <value name="x">
                                       <shadow type="math_number" id="ebKRD:!RU^UU}v`Ox31t">
                                         <field name="NUM">1600</field>
                                       </shadow>
                                       <block type="math_arithmetic" id="+kEi+?y3-h/RA~M-9^o[">
                                         <field name="OP">DIVIDE</field>
                                         <value name="A">
                                           <shadow type="math_number" id="wXRqTRp|GoRiiSBoX7M*">
                                             <field name="NUM">1</field>
                                           </shadow>
                                           <block type="variables_get" id="w_YkhGsd4.;vZfh_!U6@">
                                             <field name="VAR" id="Y*)uQOfA3A0pswm8w1GH">wert</field>
                                           </block>
                                         </value>
                                         <value name="B">
                                           <shadow type="math_number" id="sDH~Nl)d;nN]Hh1eDyQS">
                                             <field name="NUM">1600</field>
                                           </shadow>
                                         </value>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </next>
                           </block>
                         </statement>
                       </block>
                     </next>
                   </block>
                  </xml>
                  

                  P 2 Replies Last reply Reply Quote 1
                  • P
                    pmunz @paul53 last edited by

                    Danke für eure hilfe, ich werde das ganze Testen und mein ergebnis hier posten.

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

                      @paul53 @Homoran
                      Hallo,

                      ich konnte das jetzt testen komm aber auf keinen grünen zweig, die Impulse meines Zählers kommen schön im iobroker an und werden hochgezählt seit gestern :
                      Bildschirmfoto 2021-03-02 um 17.33.53.png

                      Mein Blockly das von euch Empfohlen läuft anscheinend aber die kWh werte in klarzext sind unverständlich, ich verstehe nicht wie er zu dieser summe bzw diesem kWh Wert kommt :

                      Bildschirmfoto 2021-03-02 um 17.35.45.png

                      mein Blockly:

                      <xml xmlns="https://developers.google.com/blockly/xml">
                        <variables>
                          <variable id="Y*)uQOfA3A0pswm8w1GH">cnt</variable>
                        </variables>
                        <block type="variables_set" id="l+b)/1Oh=bK{OW)cHTi?" x="-12" y="88">
                          <field name="VAR" id="Y*)uQOfA3A0pswm8w1GH">cnt</field>
                          <value name="VALUE">
                            <block type="math_arithmetic" id="^B7%2v{!gu0EEl@k9FrK">
                              <field name="OP">MULTIPLY</field>
                              <value name="A">
                                <shadow type="math_number" id="h5vLrf=_}6A)FIyY4iyR">
                                  <field name="NUM">1600</field>
                                </shadow>
                              </value>
                              <value name="B">
                                <shadow type="math_number" id="d6ob|)J]{ekBQ]}g`P_4">
                                  <field name="NUM">0</field>
                                </shadow>
                                <block type="get_value_var" id="mjeW5(w8d[G;yoH+b*kr">
                                  <field name="ATTR">val</field>
                                  <value name="OID">
                                    <shadow type="text" id="03}}p#O0#`arH7eTt|1*">
                                      <field name="TEXT">0_userdata.0.ESP_HauptzählerWHG</field>
                                    </shadow>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                          <next>
                            <block type="on_ext" id="ysdmc3`Gr[OlS6wX3zwn">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                              <field name="CONDITION">gt</field>
                              <field name="ACK_CONDITION"></field>
                              <value name="OID0">
                                <shadow type="field_oid" id="g=PqAuIY6*91!SWub}aQ">
                                  <field name="oid">mqtt.0.ESP_ZaehlerkastenWHG.Strom_Hauptzaehler.Total</field>
                                </shadow>
                              </value>
                              <statement name="STATEMENT">
                                <block type="math_change" id="J[INl;irhSMSyTHN::QR">
                                  <field name="VAR" id="Y*)uQOfA3A0pswm8w1GH">cnt</field>
                                  <value name="DELTA">
                                    <shadow type="math_number" id="Ose%bzsXA3)HbX}h^aUU">
                                      <field name="NUM">1</field>
                                    </shadow>
                                  </value>
                                  <next>
                                    <block type="update" id="(B=+NHQ[WhJB9^`PyUYd">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                      <field name="OID">0_userdata.0.ESP_HauptzählerWHG</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE">
                                        <block type="math_rndfixed" id="FmVtkYMO!FT2*7~s,]5{">
                                          <field name="n">2</field>
                                          <value name="x">
                                            <shadow type="math_number" id="ebKRD:!RU^UU}v`Ox31t">
                                              <field name="NUM">1600</field>
                                            </shadow>
                                            <block type="math_arithmetic" id="+kEi+?y3-h/RA~M-9^o[">
                                              <field name="OP">DIVIDE</field>
                                              <value name="A">
                                                <shadow type="math_number" id="wXRqTRp|GoRiiSBoX7M*">
                                                  <field name="NUM">1</field>
                                                </shadow>
                                                <block type="variables_get" id="w_YkhGsd4.;vZfh_!U6@">
                                                  <field name="VAR" id="Y*)uQOfA3A0pswm8w1GH">cnt</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <shadow type="math_number" id="sDH~Nl)d;nN]Hh1eDyQS">
                                                  <field name="NUM">1600</field>
                                                </shadow>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </next>
                                </block>
                              </statement>
                            </block>
                          </next>
                        </block>
                      </xml>
                      

                      Weiters meine Datenpunkt einstellung :

                      Bildschirmfoto 2021-03-02 um 17.36.52.png

                      Danke nochmals!

                      Homoran paul53 2 Replies Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators @pmunz last edited by Homoran

                        @pmunz sagte in Smart Meter Zähler mit S0 Ausgang:

                        die Impulse meines Zählers kommen schön im iobroker an und werden hochgezählt seit gestern :

                        wo denn?
                        in welchem Datenpunkt?
                        count ist 0
                        Time dürfte die Zeit zwischen zwei Impulsen sein, oder?
                        welche Einheit?

                        Total ist was?

                        Wie sieht denn jetzt dein Blockly aus?
                        Der Code nutzt mir mobil nichts

                        Wie war denn der kWh Wert auf dem Zähler vor dem Start des Skripts und wie hoch ist er jetzt?

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

                          @pmunz sagte: mein Blockly:

                          Da auf 2 Nachkommastellen gerundet wird, wird die letzte Stelle des Wertes (entspricht 10 Wh) bei jedem 16. Impuls um 1 erhöht. Dieser Wert hat nichts mit dem Wert in "Total" zu tun, sondern soll von einem Anfangszählerstand (bitte Zähler ablesen) weiter zählen. Ich denke dass als Trigger-Datenpunkt "Count" besser geeignet ist als "Total". "Total" sollte aber gleichermaßen funktionieren, falls "Total" nicht irgendwann auf 0 zurück gesetzt wird (Überlauf).

                          @homoran sagte in Smart Meter Zähler mit S0 Ausgang:

                          Time dürfte die Zeit zwischen zwei Impulsen sein, oder?

                          Was nicht zu funktionieren scheint, da der Wert in allen 3 Bildern gleich ist. Das würde eine absolut konstante Leistung bedeuten.

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

                            @paul53 sagte in Smart Meter Zähler mit S0 Ausgang:

                            @pmunz sagte: mein Blockly:

                            Da auf 2 Nachkommastellen gerundet wird, wird die letzte Stelle des Wertes (entspricht 10 Wh) bei jedem 16. Impuls um 1 erhöht. Dieser Wert hat nichts mit dem Wert in "Total" zu tun, sondern soll von einem Anfangszählerstand (bitte Zähler ablesen) weiter zählen. Ich denke dass als Trigger-Datenpunkt "Count" besser geeignet ist als "Total".

                            Hallo,

                            der Count wird mir leider mit ESPeasy nicht ausgegeben , der Wert Total (ca 3095 ) sind die Echtzeit Impulse meines Zählers
                            der bei jedem 4ten Impuls eine Nachkommerstelle den Zählerstand erhöht , sprich 4 mal Blinken am Zähler ist eine Nachkommerstelle
                            der Echtzeit Zählerstand ist im Moment 000032,70 kWh.

                            auf dem Zähler steht 400imp/kWh in der beschreibung allerdings 1600imp/kWh

                            Gestern beim Starten hatte ich am Zähler ca 27,00 kWh und es wurden bis heute ca 3095 impulse gezählt, aber der Wert im Datenpunkt ist komisch und ich weis nicht wo ich den derzeitigen Zählerstand reinschreiben muss um einfach weiter zu zählen vorausgesetzt das Blockly oder mein umrechnungs faktor passt.
                            Hab ich den Datenpunkt schon richtig eingestellt ?
                            Danke

                            das grafische Blockly im Moment:

                            Bildschirmfoto 2021-03-02 um 18.01.58.png

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

                              @pmunz sagte: Hab ich den Datenpunkt schon richtig eingestellt ?

                              Der Datenpunkt passt.

                              @pmunz sagte in Smart Meter Zähler mit S0 Ausgang:

                              der Wert Total (ca 3030 ) sind die Echtzeit Impulse

                              Das sind die gezählten Impulse seit Inbetriebnahme des ESP.

                              @pmunz sagte in Smart Meter Zähler mit S0 Ausgang:

                              auf dem Zähler steht 400imp/kWh in der beschreibung allerdings 1600imp/kWh

                              Erhöhen sich die kWh im Datenpunkt zu langsam? Dann ändere den Faktor an beiden Stellen auf 400.

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

                                @paul53
                                Der Faktor 400 imp/kWh passt jetzt und der Datenpunktwert zählt jetzt richtig hoch.

                                Wo kann ich jetzt noch den Echt Zählerstand Editieren oder eintragen damit der auch Zähler Syncron läuft ?

                                Wert Zähler gleich Wert Datenpunkt ?

                                Vielen Dank!

                                Homoran paul53 2 Replies Last reply Reply Quote 0
                                • Homoran
                                  Homoran Global Moderator Administrators @pmunz last edited by

                                  @pmunz sagte in Smart Meter Zähler mit S0 Ausgang:

                                  Wert Zähler gleich Wert Datenpunkt ?

                                  ja

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

                                    @pmunz sagte: Wert Zähler gleich Wert Datenpunkt ?

                                    Ja, Zähler ablesen und Wert in Datenpunkt eingeben (Tab "Objekte").

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

                                      @paul53 sagte in Smart Meter Zähler mit S0 Ausgang:

                                      @pmunz sagte: Wert Zähler gleich Wert Datenpunkt ?

                                      Ja, Zähler ablesen und Wert in Datenpunkt eingeben (Tab "Objekte").

                                      🙂 ohh , zu blöd oder ich versteh da etwas nicht , egal welchen wert ich im Datenpunkt eingebe kommt 0 raus, wo sollte ich es den deiner meinung hinterlegen / eingeben ?

                                      Bildschirmfoto 2021-03-02 um 18.24.18.png

                                      Homoran 1 Reply Last reply Reply Quote 0
                                      • Homoran
                                        Homoran Global Moderator Administrators @pmunz last edited by

                                        @pmunz sagte in Smart Meter Zähler mit S0 Ausgang:

                                        oder ich versteh da etwas nicht

                                        nicht den DP editieren sondern den Wert

                                        P 1 Reply Last reply Reply Quote 0
                                        • P
                                          pmunz @Homoran last edited by

                                          @homoran sagte in Smart Meter Zähler mit S0 Ausgang:

                                          nicht den DP editieren sondern den Wert

                                          Ja das hab ich mir natürlich auch gedacht, nur sobald ein neuer impuls kommt wird wieder der alte Zählerstand angezeigt und mein neuer den ich gerade gesetzt hab überschrieben.

                                          editiert hab ich hier :

                                          Bildschirmfoto 2021-03-02 um 18.32.05.png

                                          Homoran paul53 2 Replies Last reply Reply Quote 0
                                          • Homoran
                                            Homoran Global Moderator Administrators @pmunz last edited by

                                            @pmunz sagte in Smart Meter Zähler mit S0 Ausgang:

                                            editiert hab ich hier :

                                            einfach auf die Zahl geklickt?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            632
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            blockly javascript
                                            4
                                            26
                                            1341
                                            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