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.
    • 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
                                          • paul53
                                            paul53 @pmunz last edited by

                                            @pmunz sagte: sobald ein neuer impuls kommt wird wieder der alte Zählerstand angezeigt

                                            Skript stoppen, Wert eingeben, Skript starten.

                                            P Homoran 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            910
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

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