Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Addition in Blockly ist ein Takt verpätet

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Addition in Blockly ist ein Takt verpätet

    This topic has been deleted. Only users with topic management privileges can see it.
    • haus-automatisierung
      haus-automatisierung Developer Most Active @haus-automatisierung last edited by haus-automatisierung

      Das wäre mein Vorschlag. Nach wie vor unschön das über den HTTP-Aufruf zu machen und nicht über den Shelly-Adapter / MQTT.

      Screenshot 2023-11-23 at 16.27.16.png

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="5~z~#Wiey6Wm+:k-(y;)">powerDach</variable>
          <variable id="?t`soW~ls~_ZNU7NtEJ/">powerWand</variable>
          <variable id="pHhGY(Q7*~o%Dd37|tWd">result</variable>
        </variables>
        <block type="schedule" id="k8}]c#R$J#k4)~j3iE/]" x="38" y="-112">
          <field name="SCHEDULE">*/5 * * * * *</field>
          <statement name="STATEMENT">
            <block type="request" id="rk2/ba#iAcz{o.1Q/7a$">
              <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation>
              <field name="WITH_STATEMENT">TRUE</field>
              <field name="LOG">log</field>
              <value name="URL">
                <shadow type="text" id="pO18(QsS98Vfw5L]vEhf">
                  <field name="TEXT">http://</field>
                </shadow>
                <block type="text" id="}?YTa6cQ^5}}%:]9+Jq4">
                  <field name="TEXT">http://192.168.42.82/emeter/0/em_data</field>
                </block>
              </value>
              <statement name="STATEMENT">
                <block type="variables_set" id="nN0NOsiK3NItgy`[i?h:">
                  <field name="VAR" id="5~z~#Wiey6Wm+:k-(y;)">powerDach</field>
                  <value name="VALUE">
                    <block type="get_attr" id="W;B#3}b+`UbFL|^$j4pB">
                      <value name="PATH">
                        <shadow type="text" id="b!YJsu*sjfmsO8-5P5-a">
                          <field name="TEXT">power</field>
                        </shadow>
                      </value>
                      <value name="OBJECT">
                        <block type="convert_json2object" id="emW/+YWf|iqNRZ8r4IZr">
                          <value name="VALUE">
                            <block type="variables_get" id="bsJ8~?bfvi5w}Tm|Y6/Q">
                              <field name="VAR" id="pHhGY(Q7*~o%Dd37|tWd">result</field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                  <next>
                    <block type="request" id="EJiI.Mt]-t@/!+x.EVO]">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation>
                      <field name="WITH_STATEMENT">TRUE</field>
                      <field name="LOG"></field>
                      <value name="URL">
                        <shadow type="text" id="pO18(QsS98Vfw5L]vEhf">
                          <field name="TEXT">http://</field>
                        </shadow>
                        <block type="text" id="R=eVdGpEtS2l0$5lSvtU">
                          <field name="TEXT">http://192.168.42.82/emeter/1/em_data</field>
                        </block>
                      </value>
                      <statement name="STATEMENT">
                        <block type="variables_set" id="Z6sVuRB@UNS=5#w=7IX;">
                          <field name="VAR" id="?t`soW~ls~_ZNU7NtEJ/">powerWand</field>
                          <value name="VALUE">
                            <block type="get_attr" id="y/o-vXfo@{$L$kvE~sN]">
                              <value name="PATH">
                                <shadow type="text" id="{LCKb-*Fj%3.F!?I/0z=">
                                  <field name="TEXT">power</field>
                                </shadow>
                              </value>
                              <value name="OBJECT">
                                <block type="convert_json2object" id="cgwUFo(vLF[~F[7t3##E">
                                  <value name="VALUE">
                                    <block type="variables_get" id="ydNn}:!UQtd6de.j5Ns;">
                                      <field name="VAR" id="pHhGY(Q7*~o%Dd37|tWd">result</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                          <next>
                            <block type="create_ex" id="qN0qvmtbx3~Ews`Zjv~s">
                              <field name="NAME">Geislingen.Solar.Dach</field>
                              <field name="TYPE">number</field>
                              <field name="READABLE">TRUE</field>
                              <field name="WRITEABLE">FALSE</field>
                              <value name="VALUE">
                                <block type="math_number" id="DA;REE-cDiZGFJWFqJ}Q">
                                  <field name="NUM">0</field>
                                </block>
                              </value>
                              <statement name="STATEMENT">
                                <block type="update" id="+/O`77Zs[D]`1PXebcv+">
                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                  <field name="OID">javascript.0.Geislingen.Solar.Dach</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE">
                                    <block type="variables_get" id="CrY;Lp^hcpYdojEKOQzD">
                                      <field name="VAR" id="5~z~#Wiey6Wm+:k-(y;)">powerDach</field>
                                    </block>
                                  </value>
                                </block>
                              </statement>
                              <next>
                                <block type="create_ex" id="A)W1wsT6SPZW3lv-l4P%">
                                  <field name="NAME">Geislingen.Solar.Wand</field>
                                  <field name="TYPE">number</field>
                                  <field name="READABLE">TRUE</field>
                                  <field name="WRITEABLE">FALSE</field>
                                  <value name="VALUE">
                                    <block type="math_number" id="s@:ZK()u1VJnh#+/Eo~;">
                                      <field name="NUM">0</field>
                                    </block>
                                  </value>
                                  <statement name="STATEMENT">
                                    <block type="update" id="G{ymt}c@ru:p%9IAFkd4">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                      <field name="OID">javascript.0.Geislingen.Solar.Wand</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE">
                                        <block type="variables_get" id="RMn.aVm(y05[|02h-dq;">
                                          <field name="VAR" id="?t`soW~ls~_ZNU7NtEJ/">powerWand</field>
                                        </block>
                                      </value>
                                    </block>
                                  </statement>
                                  <next>
                                    <block type="create_ex" id="-YA!ln})F0;*,VaK*N#8">
                                      <field name="NAME">Geislingen.Solar.gesamt</field>
                                      <field name="TYPE">number</field>
                                      <field name="READABLE">TRUE</field>
                                      <field name="WRITEABLE">FALSE</field>
                                      <value name="VALUE">
                                        <block type="math_number" id=",i/x4Z6a5S1T#B0!W64F">
                                          <field name="NUM">0</field>
                                        </block>
                                      </value>
                                      <statement name="STATEMENT">
                                        <block type="update" id="A~Ab*1ZA[B,$CL,K-kDS">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                          <field name="OID">javascript.0.Geislingen.Solar.gesamt</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE">
                                            <block type="math_arithmetic" id=":iPP{?/N96a3rD@FYLZ7" inline="false">
                                              <field name="OP">ADD</field>
                                              <value name="A">
                                                <shadow type="math_number" id="XF0@Xf|:)@!W9EI^a|jO">
                                                  <field name="NUM">1</field>
                                                </shadow>
                                                <block type="variables_get" id=")btF}XTf/=(Krzb_#yHW">
                                                  <field name="VAR" id="5~z~#Wiey6Wm+:k-(y;)">powerDach</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <shadow type="math_number" id="lXM:`u0kd.-A3`r!OU4J">
                                                  <field name="NUM">1</field>
                                                </shadow>
                                                <block type="variables_get" id="VAarkCZ;_q,;OHg/_zn!">
                                                  <field name="VAR" id="?t`soW~ls~_ZNU7NtEJ/">powerWand</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </statement>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </statement>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
          </statement>
        </block>
      </xml>
      
      M 1 Reply Last reply Reply Quote 0
      • M
        Meckii @haus-automatisierung last edited by

        @haus-automatisierung
        Vielen Dank.
        Du magst recht haben dass das so nicht sehr schön ist, aber ich möchte ja was dabei lernen und wollte mich so in Blockly reinarbeiten...

        haus-automatisierung 1 Reply Last reply Reply Quote 0
        • haus-automatisierung
          haus-automatisierung Developer Most Active @Meckii last edited by

          @meckii Naja das kannst Du ja auch mit den Datenpunkten des Shelly-Adapters. Das Problem ist hier ja auch das Polling. Du "verpasst" ja viele Werte und nervst die Geräte per HTTP. Und kannst die Geräte auch nicht mit einem Passwort schützen. Also insgesamt viele Nachteile.

          M 1 Reply Last reply Reply Quote 0
          • M
            Meckii @haus-automatisierung last edited by Meckii

            @haus-automatisierung
            Die Frage ist ob man bei einem Balkonkraftwerk wirklich jenden Messwert braucht 🙂
            Ich hätte den Cron später auf 5min oder so gestellt...

            Dennoch vielen Dank 🙂

            1 Reply Last reply Reply Quote 0
            • M
              Meckii last edited by

              Habe jetzt mit dem Shelly Adapter experimentiert.
              Der hat ein Problem - oder ich bin zu doof.

              Die Shellys laufen nicht hier bei mir zu Hause sondern in einem anderen Subnet welches über VPN (zwei Fritzboxen) gekoppelt ist.
              Das angeben der IP hat leider nicht funktioniert...

              haus-automatisierung 1 Reply Last reply Reply Quote 0
              • haus-automatisierung
                haus-automatisierung Developer Most Active @Meckii last edited by

                @meckii sagte in Addition in Blockly ist ein Takt verpätet:

                Der hat ein Problem - oder ich bin zu doof.

                Dann wäre die Frage, was Du alles konfiguriert hast und welche Infos Dir in der Dokumentation des Adapters fehlen. Dort probiere ich ja eigentlich jeden Fall genau zu erklären und welche Infos wofür sind.

                Mit "der Adapter hat ein Problem" kann ich nichts anfangen. 🙂

                Homoran 1 Reply Last reply Reply Quote 1
                • Homoran
                  Homoran Global Moderator Administrators @haus-automatisierung last edited by

                  @haus-automatisierung ich nutze keine Shellys.
                  Aver war da nicht was, dass (je nach Konfiguration??) es nicht über verschiedene Subnetze geht?

                  1 Reply Last reply Reply Quote 0
                  • haus-automatisierung
                    haus-automatisierung Developer Most Active last edited by haus-automatisierung

                    @homoran sagte in Addition in Blockly ist ein Takt verpätet:

                    Aver war da nicht was, dass (je nach Konfiguration??) es nicht über verschiedene Subnetze geht?

                    Das ist sehr allgemein gefragt. Kommt drauf an, was man vor hat. Wenn das Routing konfiguriert ist, klappt das natürlich auch. Meistens ist mDNS ein Problem (für CoAP und multicast - sollte man eh nicht nutzen).

                    Aber wenn man MQTT nutzt, dann gibt es ja kein Auto-Discovery oder Multicast.

                    Im Thread klappt ja schon der Zugriff von ioBroker zu den Shellies per HTTP. Die Frage ist, ob es auch andersrum klappt: Also dass die Shellies eine MQTT-Verbindung (Port 1882 ist Standard) zum ioBroker im anderen Netz aufbauen dürfen.

                    1 Reply Last reply Reply Quote 1
                    • M
                      Meckii last edited by

                      MQTT kann ich leider nicht nutzen, da mein Vater die Sellyapp (cloud) beibehalten möchte.
                      Daher der Versuch über CoAP...
                      Vielleicht hab ich Morgen nochmals Zeit da ein bisschen dran rumzuprobieren...

                      haus-automatisierung 1 Reply Last reply Reply Quote 0
                      • haus-automatisierung
                        haus-automatisierung Developer Most Active @Meckii last edited by

                        @meckii sagte in Addition in Blockly ist ein Takt verpätet:

                        Daher der Versuch über CoAP...

                        Wenn auf dem Shelly unicast konfiguriert ist, sollte das aber klappen?

                        1 Reply Last reply Reply Quote 0
                        • M
                          Meckii last edited by Meckii

                          Ok. Shelly-Adapter läuft und bekommt die Daten per unicast.
                          Leider funktioniert mein Script welches die Addition der zwei Leistungen ausführt nicht.

                          <xml xmlns="https://developers.google.com/blockly/xml">
                            <block type="on_ext" id="9obsf4j}+ALRCYj:v`c/" x="-87" y="-363">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                              <field name="CONDITION">ne</field>
                              <field name="ACK_CONDITION"></field>
                              <value name="OID0">
                                <shadow type="field_oid" id="7e5~BJi;f-iX;[`VnrY6">
                                  <field name="oid">default</field>
                                </shadow>
                                <block type="logic_operation" id="{LJ$h2Gd6wix3:h}x,`f">
                                  <field name="OP">OR</field>
                                  <value name="A">
                                    <block type="get_object" id="=9teI6aWLh4}0TGbHAl,">
                                      <field name="OID">shelly.0.SHEM#12345678EAB9#1.Emeter0.Power</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="get_object" id="V6/drw_7odA%65gvXNC*">
                                      <field name="OID">shelly.0.SHEM#12345678EAB9#1.Emeter1.Power</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <statement name="STATEMENT">
                                <block type="create" id="iEx}%$]rU!v!?!Q09:r9">
                                  <field name="NAME">Solar.gesamt</field>
                                  <value name="VALUE">
                                    <block type="math_number" id="O5_F]Wk}$nsVd?O{t5qK">
                                      <field name="NUM">0</field>
                                    </block>
                                  </value>
                                  <value name="COMMON">
                                    <block type="text" id="0Bxa?7/i#HAO?)(*BI=|">
                                      <field name="TEXT">{"type": "number", "unit": "W"}</field>
                                    </block>
                                  </value>
                                  <statement name="STATEMENT">
                                    <block type="update" id="A~Ab*1ZA[B,$CL,K-kDS">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                      <field name="OID">javascript.0.Solar.gesamt</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE">
                                        <block type="math_arithmetic" id=":iPP{?/N96a3rD@FYLZ7">
                                          <field name="OP">ADD</field>
                                          <value name="A">
                                            <shadow type="math_number" id="XF0@Xf|:)@!W9EI^a|jO">
                                              <field name="NUM">1</field>
                                            </shadow>
                                            <block type="get_value" id="~~[==`uxt.EW0RQ#y|.^">
                                              <field name="ATTR">val</field>
                                              <field name="OID">shelly.0.SHEM#12345678EAB9#1.Emeter0.Power</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <shadow type="math_number" id="lXM:`u0kd.-A3`r!OU4J">
                                              <field name="NUM">1</field>
                                            </shadow>
                                            <block type="get_value" id=",PE~URIbDSC{Jh4J{hy5">
                                              <field name="ATTR">val</field>
                                              <field name="OID">shelly.0.SHEM#12345678EAB9#1.Emeter1.Power</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </statement>
                                </block>
                              </statement>
                            </block>
                          </xml>![Screenshot 2023-11-26 112931.png](/assets/uploads/files/1700994592072-screenshot-2023-11-26-112931.png) 
                          

                          Screenshot 2023-11-26 112931.png

                          haus-automatisierung 1 Reply Last reply Reply Quote 0
                          • haus-automatisierung
                            haus-automatisierung Developer Most Active @Meckii last edited by haus-automatisierung

                            @meckii Das liegt nicht am Adapter, sondern an deinem falschen Script. Wenn Du mehrere Objekt-IDs überwachen willst musst Du links auf das Zahnrad klicken und diese dann untereinander angeben. Und bitte auf die Objekt ID registrieren, nicht auf ein komplettes Objekt.

                            Grunlagen anschauen. Der Oder-Block gehört da auf keinen Fall hin 🙂

                            Screenshot 2023-11-26 at 15.10.24.png

                            M 1 Reply Last reply Reply Quote 0
                            • M
                              Meckii @haus-automatisierung last edited by

                              @haus-automatisierung
                              Jetzt Funktioniert es 🙂
                              Vielen lieben Dank!

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              1.0k
                              Online

                              31.7k
                              Users

                              79.8k
                              Topics

                              1.3m
                              Posts

                              4
                              16
                              589
                              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