Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Intervall zählt weiter

    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

    Intervall zählt weiter

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @kg36304 last edited by paul53

      @kg36304 sagte: was mach ich falsch?

      Bei Änderung von 7 auf 32 oder umgekehrt wird ein weiteres Intervall gestartet, das sich nicht mehr stoppen lässt.
      Besser so:

      Bild_2022-05-06_104312075.png

      Wert (unter "Trigger"):

      Blockly_DP_Props.JPG

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

        @paul53

        Hallo, Danke für die Antwort, ich habe es umgebaut. Es sieht jetzt so aus:

        Bildschirmfoto 2022-05-06 um 20.24.23.png

        Ich hoffe so ist es richtig.

        Zum Verständniss, die Variable "Messerzeit" hat den letzten wert der Objekt ID "Messerzeit" (Datenpunkt) übernommen. Wenn der Status des Mähers sich ändert auf 7 oder 32 zählt die Variable in einer Schritten. Andert Sie sich auf 1, stopt der Intervall und der Wert der Variablen wird in den Datenpunkt geschrieben???
        Stimmt das so, ich will es nicht nur nachbauen sondern auch verstehen 😉

        Vielen Dank

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

          @kg36304 sagte: Andert Sie sich auf 1, stopt der Intervall und der Wert der Variablen wird in den Datenpunkt geschrieben???

          Vergleiche die Bilder: In meinem Vorschlag wird der Wert der Variablen jede Minute in den Datenpunkt geschrieben. Somit ist der Datenpunkt stets aktuell, was für ein Weiterzählen bei einem Neustart des Skripts erforderlich ist.

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

            @paul53

            1 = Mäher ist zu Hause
            7 = Mäher mäht
            32 = Mäher schneidet die Kante.
            Er fängt immer mit dem Kantenschnitt an also geht er von 1 auf 32 ca. 11 Min. Fährt nach Hause (geht auf 1) und startet umgehend den Mähvorgang (geht auf 7).

            bei dem Script wie oben zählt er nur die 10 Minuten Kantenschnitt. Die Zeit wo er mäht ca 100 Min. werden nicht mehr gezählt.

            Mhm, stehe auf dem Schlauch.

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

              @kg36304 sagte: Fährt nach Hause (geht auf 1) und startet umgehend den Mähvorgang (geht auf 7).

              Wenn dem immer so wäre, würde Dein ursprüngliches Skript funktionieren.

              @kg36304 sagte in Intervall zählt weiter:

              Die Zeit wo er mäht ca 100 Min. werden nicht mehr gezählt.

              Poste bitte den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

              K 2 Replies Last reply Reply Quote 0
              • K
                kg36304 @paul53 last edited by

                @paul53 Ok, muss ich später machen, bin gerade an der Arbeit.

                Danke

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

                  @paul53

                  meinst Du so?

                  <block xmlns="https://developers.google.com/blockly/xml" type="variables_set" id="%[JGi6etLl$$Gv$1Hl%c" x="146" y="1162">
                    <field name="VAR" id="W-.N_n4^2j2n9ld}}FT/">Messerzeit</field>
                    <value name="VALUE">
                      <block type="math_round" id="BsHHbBF6NI|F#DH8/Bs5">
                        <field name="OP">ROUND</field>
                        <value name="NUM">
                          <shadow type="math_number" id="NkJ9r_RUF0CJE]6x~c6/">
                            <field name="NUM">3.1</field>
                          </shadow>
                          <block type="get_value" id="JP3tUi|jD`d5u#4k5,zR">
                            <field name="ATTR">val</field>
                            <field name="OID">0_userdata.0.Messerzeit</field>
                          </block>
                        </value>
                      </block>
                    </value>
                  </block>
                  <block xmlns="https://developers.google.com/blockly/xml" type="on_ext" id="ln8?f7z^ZE:9{kmWrH(A" x="146" y="1190">
                    <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="hrK=_],O?_T=V6iYQzZ2">
                        <field name="oid">worx.0.201930198404006033C5.mower.status</field>
                      </shadow>
                    </value>
                    <statement name="STATEMENT">
                      <block type="timeouts_clearinterval" id="QodN}l(];;1H6=61GGRW">
                        <field name="NAME">Intervall3</field>
                        <next>
                          <block type="controls_if" id="|nE/SNJEj0`N3B${9pyF">
                            <value name="IF0">
                              <block type="logic_operation" id="lW.!^fiH`LU|3.bpV@5;">
                                <field name="OP">OR</field>
                                <value name="A">
                                  <block type="logic_compare" id="zC+|wBAWbG7aKqv^+4+:">
                                    <field name="OP">EQ</field>
                                    <value name="A">
                                      <block type="on_source" id="|FWPTz+gk-uKq86!qf]/">
                                        <field name="ATTR">state.val</field>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <block type="math_number" id="5`(a=r|(n5=?Ty~0/YZU">
                                        <field name="NUM">7</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                                <value name="B">
                                  <block type="logic_compare" id="OyU@nRcgOf2mH#$Wq.:t">
                                    <field name="OP">EQ</field>
                                    <value name="A">
                                      <block type="on_source" id="p^M8?a2OVH;f:_GCl0N0">
                                        <field name="ATTR">state.val</field>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <block type="math_number" id="reZICHLhubr%VR0?#rjt">
                                        <field name="NUM">32</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                              </block>
                            </value>
                            <statement name="DO0">
                              <block type="timeouts_setinterval" id=";1vf$B4z,rrUf`RF(h/e">
                                <field name="NAME">Intervall3</field>
                                <field name="INTERVAL">1</field>
                                <field name="UNIT">min</field>
                                <statement name="STATEMENT">
                                  <block type="math_change" id="*X_x2`5`aG)D=%hHELJV">
                                    <field name="VAR" id="W-.N_n4^2j2n9ld}}FT/">Messerzeit</field>
                                    <value name="DELTA">
                                      <shadow type="math_number" id="rAjLf8c8WTARD6@o~{;D">
                                        <field name="NUM">1</field>
                                      </shadow>
                                    </value>
                                  </block>
                                </statement>
                                <next>
                                  <block type="update" id="v#L@sS1+%o;C?`9RHDW!">
                                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                    <field name="OID">0_userdata.0.Messerzeit</field>
                                    <field name="WITH_DELAY">FALSE</field>
                                    <value name="VALUE">
                                      <block type="variables_get" id=",p^[R1Q@TXfl^[3WqQ@p">
                                        <field name="VAR" id="W-.N_n4^2j2n9ld}}FT/">Messerzeit</field>
                                      </block>
                                    </value>
                                  </block>
                                </next>
                              </block>
                            </statement>
                          </block>
                        </next>
                      </block>
                    </statement>
                  </block>
                  
                  Homoran paul53 2 Replies Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @kg36304 last edited by

                    @kg36304 sagte in Intervall zählt weiter:

                    meinst Du so?

                    nein!
                    umschalten auf Javascript Ansicht und dann dort den code nehmen.

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

                      @kg36304 sagte: meinst Du so?

                      Eigentlich nicht, aber damit geht es auch. Es sind zwei Fehler drin.

                      <xml xmlns="https://developers.google.com/blockly/xml">
                        <variables>
                          <variable id="W-.N_n4^2j2n9ld}}FT/">Messerzeit</variable>
                          <variable type="interval" id="Intervall">Intervall</variable>
                        </variables>
                        <block type="variables_set" id="%[JGi6etLl$$Gv$1Hl%c" x="146" y="1162">
                          <field name="VAR" id="W-.N_n4^2j2n9ld}}FT/">Messerzeit</field>
                          <value name="VALUE">
                            <block type="math_round" id="BsHHbBF6NI|F#DH8/Bs5">
                              <field name="OP">ROUND</field>
                              <value name="NUM">
                                <shadow type="math_number" id="NkJ9r_RUF0CJE]6x~c6/">
                                  <field name="NUM">3.1</field>
                                </shadow>
                                <block type="get_value" id="JP3tUi|jD`d5u#4k5,zR">
                                  <field name="ATTR">val</field>
                                  <field name="OID">0_userdata.0.Messerzeit</field>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                        <block type="on_ext" id="ln8?f7z^ZE:9{kmWrH(A" x="146" y="1190">
                          <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="hrK=_],O?_T=V6iYQzZ2">
                              <field name="oid">worx.0.201930198404006033C5.mower.status</field>
                            </shadow>
                          </value>
                          <statement name="STATEMENT">
                            <block type="timeouts_clearinterval" id="QodN}l(];;1H6=61GGRW">
                              <field name="NAME">Intervall</field>
                              <next>
                                <block type="controls_if" id="|nE/SNJEj0`N3B${9pyF">
                                  <value name="IF0">
                                    <block type="logic_operation" id="lW.!^fiH`LU|3.bpV@5;">
                                      <field name="OP">OR</field>
                                      <value name="A">
                                        <block type="logic_compare" id="zC+|wBAWbG7aKqv^+4+:">
                                          <field name="OP">EQ</field>
                                          <value name="A">
                                            <block type="on_source" id="|FWPTz+gk-uKq86!qf]/">
                                              <field name="ATTR">state.val</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="math_number" id="5`(a=r|(n5=?Ty~0/YZU">
                                              <field name="NUM">7</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <value name="B">
                                        <block type="logic_compare" id="OyU@nRcgOf2mH#$Wq.:t">
                                          <field name="OP">EQ</field>
                                          <value name="A">
                                            <block type="on_source" id="p^M8?a2OVH;f:_GCl0N0">
                                              <field name="ATTR">state.val</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="math_number" id="reZICHLhubr%VR0?#rjt">
                                              <field name="NUM">32</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <statement name="DO0">
                                    <block type="timeouts_setinterval" id=";1vf$B4z,rrUf`RF(h/e">
                                      <field name="NAME">Intervall</field>
                                      <field name="INTERVAL">1</field>
                                      <field name="UNIT">min</field>
                                      <statement name="STATEMENT">
                                        <block type="math_change" id="*X_x2`5`aG)D=%hHELJV">
                                          <field name="VAR" id="W-.N_n4^2j2n9ld}}FT/">Messerzeit</field>
                                          <value name="DELTA">
                                            <shadow type="math_number" id="rAjLf8c8WTARD6@o~{;D">
                                              <field name="NUM">1</field>
                                            </shadow>
                                          </value>
                                          <next>
                                            <block type="update" id="v#L@sS1+%o;C?`9RHDW!">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                              <field name="OID">0_userdata.0.Messerzeit</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE">
                                                <block type="variables_get" id=",p^[R1Q@TXfl^[3WqQ@p">
                                                  <field name="VAR" id="W-.N_n4^2j2n9ld}}FT/">Messerzeit</field>
                                                </block>
                                              </value>
                                            </block>
                                          </next>
                                        </block>
                                      </statement>
                                    </block>
                                  </statement>
                                </block>
                              </next>
                            </block>
                          </statement>
                        </block>
                      </xml>
                      

                      Der Fehler, dass die falsche Variable gestoppt wurde, kann aber auch durch den Import entstanden sein.

                      K 2 Replies Last reply Reply Quote 0
                      • K
                        kg36304 @paul53 last edited by

                        @paul53

                        Super, ich glaube ich habe es hin bekommen!!

                        Heute beobacgte ich es nochmal.

                        DDDDAAAANNNNNKKKKEEEE.

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

                          @paul53

                          Moin, also nach gestrigem Mähen habe ich festgestellt, dass es geht 👍

                          Hier das funktionierende Script. Ist kein Hexenwerk aber das der Stop-Block drüber kommt anstatt drunter, tja wieder was gelernt.
                          Danke nochmal an Dich @paul53.

                          Bildschirmfoto 2022-05-10 um 05.58.31.png

                          Einen schönen Tag.

                          Kai

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          916
                          Online

                          31.9k
                          Users

                          80.1k
                          Topics

                          1.3m
                          Posts

                          3
                          13
                          398
                          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