Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. [gelöst] Hilfe bei zeitsteuerung

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.0k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.3k

[gelöst] Hilfe bei zeitsteuerung

Geplant Angeheftet Gesperrt Verschoben Blockly
80 Beiträge 4 Kommentatoren 6.5k Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • paul53P paul53

    @Aphofis
    Vorschlag (nur 1. von 4 Uhrzeiten dargestellt):

    Blockly_temp.JPG

    AphofisA Offline
    AphofisA Offline
    Aphofis
    schrieb am zuletzt editiert von
    #3

    @paul53
    Oh Mann woher weißt du sowas alles !?
    Ich werde das mal integrieren und testen
    Vielen Dank!

    1 Antwort Letzte Antwort
    0
    • AphofisA Offline
      AphofisA Offline
      Aphofis
      schrieb am zuletzt editiert von
      #4

      Wenn du so Fit bist im Blockly wäre mir ein Riesen Projekt wichtig !?
      Kannst du da nicht mal drüber gucken ob du eine Idee hast wie man das realisieren kann!?
      Da es die letzte große Sache ist die ich noch integrieren möchte.

      Daten per USB über Blockly senden

      1 Antwort Letzte Antwort
      0
      • AphofisA Offline
        AphofisA Offline
        Aphofis
        schrieb am zuletzt editiert von Aphofis
        #5

        Ist das so korrekt?

        <xml xmlns="http://www.w3.org/1999/xhtml">
          <variables>
            <variable type="" id="u5iug_dP{RWS.8r9[r{%">Dauer</variable>
            <variable type="" id="Q7*Gw)fesXb}OUBj1{`;">Uhrzeit_1</variable>
            <variable type="undefined" id="Intervall">Intervall</variable>
            <variable type="undefined" id="schedule_1">schedule_1</variable>
          </variables>
          <block type="procedures_defnoreturn" id="jE$gVVpa7!Xtx{X@H^Fd" x="-737" y="-762">
            <field name="NAME">Futter</field>
            <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
            <statement name="STACK">
              <block type="variables_set" id="9kptcK|P^2:}bKZXyZ8f">
                <field name="VAR" id="u5iug_dP{RWS.8r9[r{%" variabletype="">Dauer</field>
                <value name="VALUE">
                  <block type="get_value" id=".,XzJi)h(f$9$~(`H$I!">
                    <field name="ATTR">val</field>
                    <field name="OID">Aqua_Control.0.Futterautomatik_multiplikator</field>
                  </block>
                </value>
                <next>
                  <block type="control" id="%}iPzHc5tUi.(P1_MvRo">
                    <mutation delay_input="false"></mutation>
                    <field name="OID">rpi2.0.gpio.25.state</field>
                    <field name="WITH_DELAY">FALSE</field>
                    <value name="VALUE">
                      <block type="logic_boolean" id="SM.e~4#O=p?c/SXA|JX%">
                        <field name="BOOL">TRUE</field>
                      </block>
                    </value>
                    <next>
                      <block type="comment" id="KV;?nPX*TAluqR-qF9f+">
                        <field name="COMMENT">Intervalldauer = Faktor</field>
                        <next>
                          <block type="timeouts_setinterval" id="1+dIQ5^rJM?nkaI[6WN}">
                            <field name="NAME">Intervall</field>
                            <field name="INTERVAL">800</field>
                            <field name="UNIT">ms</field>
                            <statement name="STATEMENT">
                              <block type="math_change" id="!*zN$DgW0K=76_[.1*]X">
                                <field name="VAR" id="u5iug_dP{RWS.8r9[r{%" variabletype="">Dauer</field>
                                <value name="DELTA">
                                  <shadow type="math_number" id="e_D7=bSd65:`]Q{qWSZD">
                                    <field name="NUM">-1</field>
                                  </shadow>
                                </value>
                                <next>
                                  <block type="controls_if" id="=/[;A-M~WF?KXEx~W0z?">
                                    <value name="IF0">
                                      <block type="logic_compare" id=";qY,PC)CB~{1#4iVHaj,">
                                        <field name="OP">LTE</field>
                                        <value name="A">
                                          <block type="variables_get" id="2k;4KgTu$A3wF)@V`ulP">
                                            <field name="VAR" id="u5iug_dP{RWS.8r9[r{%" variabletype="">Dauer</field>
                                          </block>
                                        </value>
                                        <value name="B">
                                          <block type="math_number" id="?bnhw6qVm`$}~NCKlw2P">
                                            <field name="NUM">0</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                    <statement name="DO0">
                                      <block type="timeouts_clearinterval" id=";dz/hf`o4]4(2pDSH)I3">
                                        <field name="NAME">Intervall</field>
                                      </block>
                                    </statement>
                                    <next>
                                      <block type="control" id="SeaFI}%xNdyzRbLV,6HN">
                                        <mutation delay_input="false"></mutation>
                                        <field name="OID">rpi2.0.gpio.25.state</field>
                                        <field name="WITH_DELAY">FALSE</field>
                                        <value name="VALUE">
                                          <block type="logic_boolean" id="1_[)-;0}n;LMH}tCmhi:">
                                            <field name="BOOL">FALSE</field>
                                          </block>
                                        </value>
                                      </block>
                                    </next>
                                  </block>
                                </next>
                              </block>
                            </statement>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                </next>
              </block>
            </statement>
          </block>
          <block type="comment" id="g{Y%*~I{x`_l;*~`c*Fr" x="-717" y="-405">
            <field name="COMMENT">1. Uhrzeit hh:mm</field>
            <next>
              <block type="on_ext" id="}BTi=~h~RiZ;@8S.a_*{">
                <mutation items="1"></mutation>
                <field name="CONDITION">ne</field>
                <field name="ACK_CONDITION"></field>
                <value name="OID0">
                  <shadow type="field_oid" id="6R*wwsh+EjXJ1d`_3hxv">
                    <field name="oid">default</field>
                  </shadow>
                </value>
                <statement name="STATEMENT">
                  <block type="variables_set" id="{M}nz9j/hOc[/j9R0[zd">
                    <field name="VAR" id="Q7*Gw)fesXb}OUBj1{`;" variabletype="">Uhrzeit_1</field>
                    <value name="VALUE">
                      <block type="lists_split" id="g,gp5[yex~P:LF-[.*((">
                        <mutation mode="SPLIT"></mutation>
                        <field name="MODE">SPLIT</field>
                        <value name="INPUT">
                          <block type="on_source" id="Pyx^=nsIZs@M|nbNaAiW">
                            <field name="ATTR">state.val</field>
                          </block>
                        </value>
                        <value name="DELIM">
                          <shadow type="text" id="OEq|yeHMb*DILCJQAnkd">
                            <field name="TEXT">:</field>
                          </shadow>
                        </value>
                      </block>
                    </value>
                    <next>
                      <block type="schedule_clear" id="O0@)[PTM_!LiaM@04{V#">
                        <field name="NAME">schedule_1</field>
                        <next>
                          <block type="schedule_create" id="6x%+6G+PaD[w*{FuFm=K">
                            <field name="NAME">schedule_1</field>
                            <value name="SCHEDULE">
                              <shadow type="field_cron" id="m4F75|F$}NA}2;e/avWa">
                                <field name="CRON">* * * * *</field>
                              </shadow>
                              <block type="cron_builder" id="q6(U2T{7uu}mYF)9QMKr">
                                <mutation seconds="false" as_line="false"></mutation>
                                <field name="LINE">FALSE</field>
                                <field name="WITH_SECONDS">FALSE</field>
                                <value name="DOW">
                                  <shadow type="text" id=")8oVcqHY5re?jv#0QsO8">
                                    <field name="TEXT">*</field>
                                  </shadow>
                                </value>
                                <value name="MONTHS">
                                  <shadow type="text" id="GfQ!DoE|TZTliq*)8,@j">
                                    <field name="TEXT">*</field>
                                  </shadow>
                                </value>
                                <value name="DAYS">
                                  <shadow type="text" id="S6hVuxIjcYJMlS^~:zE5">
                                    <field name="TEXT">*</field>
                                  </shadow>
                                </value>
                                <value name="HOURS">
                                  <shadow type="text" id="NP{*G*@dWEP9M9mNlZFF">
                                    <field name="TEXT">*</field>
                                  </shadow>
                                  <block type="lists_getIndex" id="-0gZ}|H=8/}~St}d%rl;">
                                    <mutation statement="false" at="true"></mutation>
                                    <field name="MODE">GET</field>
                                    <field name="WHERE">FROM_START</field>
                                    <value name="VALUE">
                                      <block type="variables_get" id="8U#M]$`MHq(~A]~(v{2R">
                                        <field name="VAR" id="Q7*Gw)fesXb}OUBj1{`;" variabletype="">Uhrzeit_1</field>
                                      </block>
                                    </value>
                                    <value name="AT">
                                      <block type="math_number" id=")zFTxG~Gpp`eZw8r2,8w">
                                        <field name="NUM">1</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                                <value name="MINUTES">
                                  <shadow type="text" id="I(LCmtz/NJ%:Tvp,*;JL">
                                    <field name="TEXT">*</field>
                                  </shadow>
                                  <block type="lists_getIndex" id="0([.HRKLsVPA.X:jwVI@">
                                    <mutation statement="false" at="true"></mutation>
                                    <field name="MODE">GET</field>
                                    <field name="WHERE">FROM_START</field>
                                    <value name="VALUE">
                                      <block type="variables_get" id="8#E0pY-UET(BcZH]~qB:">
                                        <field name="VAR" id="Q7*Gw)fesXb}OUBj1{`;" variabletype="">Uhrzeit_1</field>
                                      </block>
                                    </value>
                                    <value name="AT">
                                      <block type="math_number" id=";UF-jK:^cV#hui?GDL/V">
                                        <field name="NUM">2</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                              </block>
                            </value>
                            <statement name="STATEMENT">
                              <block type="procedures_callnoreturn" id="/6qq{?/)+*vm:UnA$x,0">
                                <mutation name="Futter"></mutation>
                              </block>
                            </statement>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                </statement>
                <next>
                  <block type="comment" id="7wspNJ:OA(%4Ab.`5IAO">
                    <field name="COMMENT">2. Uhrzeit hh:mm</field>
                  </block>
                </next>
              </block>
            </next>
          </block>
        </xml>
        
        

        Woher kommt jetzt die Uhrzeit in der Liste ???
        Und was kommt in den trigger für ein Objekt in die Objekt ID ?
        Oder kommt in den trigger dann der datenpunkt rein wo man die Uhrzeit einstellen kann für die erste Futter Dosierung?

        paul53P 1 Antwort Letzte Antwort
        0
        • AphofisA Aphofis

          Ist das so korrekt?

          <xml xmlns="http://www.w3.org/1999/xhtml">
            <variables>
              <variable type="" id="u5iug_dP{RWS.8r9[r{%">Dauer</variable>
              <variable type="" id="Q7*Gw)fesXb}OUBj1{`;">Uhrzeit_1</variable>
              <variable type="undefined" id="Intervall">Intervall</variable>
              <variable type="undefined" id="schedule_1">schedule_1</variable>
            </variables>
            <block type="procedures_defnoreturn" id="jE$gVVpa7!Xtx{X@H^Fd" x="-737" y="-762">
              <field name="NAME">Futter</field>
              <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
              <statement name="STACK">
                <block type="variables_set" id="9kptcK|P^2:}bKZXyZ8f">
                  <field name="VAR" id="u5iug_dP{RWS.8r9[r{%" variabletype="">Dauer</field>
                  <value name="VALUE">
                    <block type="get_value" id=".,XzJi)h(f$9$~(`H$I!">
                      <field name="ATTR">val</field>
                      <field name="OID">Aqua_Control.0.Futterautomatik_multiplikator</field>
                    </block>
                  </value>
                  <next>
                    <block type="control" id="%}iPzHc5tUi.(P1_MvRo">
                      <mutation delay_input="false"></mutation>
                      <field name="OID">rpi2.0.gpio.25.state</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="logic_boolean" id="SM.e~4#O=p?c/SXA|JX%">
                          <field name="BOOL">TRUE</field>
                        </block>
                      </value>
                      <next>
                        <block type="comment" id="KV;?nPX*TAluqR-qF9f+">
                          <field name="COMMENT">Intervalldauer = Faktor</field>
                          <next>
                            <block type="timeouts_setinterval" id="1+dIQ5^rJM?nkaI[6WN}">
                              <field name="NAME">Intervall</field>
                              <field name="INTERVAL">800</field>
                              <field name="UNIT">ms</field>
                              <statement name="STATEMENT">
                                <block type="math_change" id="!*zN$DgW0K=76_[.1*]X">
                                  <field name="VAR" id="u5iug_dP{RWS.8r9[r{%" variabletype="">Dauer</field>
                                  <value name="DELTA">
                                    <shadow type="math_number" id="e_D7=bSd65:`]Q{qWSZD">
                                      <field name="NUM">-1</field>
                                    </shadow>
                                  </value>
                                  <next>
                                    <block type="controls_if" id="=/[;A-M~WF?KXEx~W0z?">
                                      <value name="IF0">
                                        <block type="logic_compare" id=";qY,PC)CB~{1#4iVHaj,">
                                          <field name="OP">LTE</field>
                                          <value name="A">
                                            <block type="variables_get" id="2k;4KgTu$A3wF)@V`ulP">
                                              <field name="VAR" id="u5iug_dP{RWS.8r9[r{%" variabletype="">Dauer</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="math_number" id="?bnhw6qVm`$}~NCKlw2P">
                                              <field name="NUM">0</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <statement name="DO0">
                                        <block type="timeouts_clearinterval" id=";dz/hf`o4]4(2pDSH)I3">
                                          <field name="NAME">Intervall</field>
                                        </block>
                                      </statement>
                                      <next>
                                        <block type="control" id="SeaFI}%xNdyzRbLV,6HN">
                                          <mutation delay_input="false"></mutation>
                                          <field name="OID">rpi2.0.gpio.25.state</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE">
                                            <block type="logic_boolean" id="1_[)-;0}n;LMH}tCmhi:">
                                              <field name="BOOL">FALSE</field>
                                            </block>
                                          </value>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </statement>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
            <block type="comment" id="g{Y%*~I{x`_l;*~`c*Fr" x="-717" y="-405">
              <field name="COMMENT">1. Uhrzeit hh:mm</field>
              <next>
                <block type="on_ext" id="}BTi=~h~RiZ;@8S.a_*{">
                  <mutation items="1"></mutation>
                  <field name="CONDITION">ne</field>
                  <field name="ACK_CONDITION"></field>
                  <value name="OID0">
                    <shadow type="field_oid" id="6R*wwsh+EjXJ1d`_3hxv">
                      <field name="oid">default</field>
                    </shadow>
                  </value>
                  <statement name="STATEMENT">
                    <block type="variables_set" id="{M}nz9j/hOc[/j9R0[zd">
                      <field name="VAR" id="Q7*Gw)fesXb}OUBj1{`;" variabletype="">Uhrzeit_1</field>
                      <value name="VALUE">
                        <block type="lists_split" id="g,gp5[yex~P:LF-[.*((">
                          <mutation mode="SPLIT"></mutation>
                          <field name="MODE">SPLIT</field>
                          <value name="INPUT">
                            <block type="on_source" id="Pyx^=nsIZs@M|nbNaAiW">
                              <field name="ATTR">state.val</field>
                            </block>
                          </value>
                          <value name="DELIM">
                            <shadow type="text" id="OEq|yeHMb*DILCJQAnkd">
                              <field name="TEXT">:</field>
                            </shadow>
                          </value>
                        </block>
                      </value>
                      <next>
                        <block type="schedule_clear" id="O0@)[PTM_!LiaM@04{V#">
                          <field name="NAME">schedule_1</field>
                          <next>
                            <block type="schedule_create" id="6x%+6G+PaD[w*{FuFm=K">
                              <field name="NAME">schedule_1</field>
                              <value name="SCHEDULE">
                                <shadow type="field_cron" id="m4F75|F$}NA}2;e/avWa">
                                  <field name="CRON">* * * * *</field>
                                </shadow>
                                <block type="cron_builder" id="q6(U2T{7uu}mYF)9QMKr">
                                  <mutation seconds="false" as_line="false"></mutation>
                                  <field name="LINE">FALSE</field>
                                  <field name="WITH_SECONDS">FALSE</field>
                                  <value name="DOW">
                                    <shadow type="text" id=")8oVcqHY5re?jv#0QsO8">
                                      <field name="TEXT">*</field>
                                    </shadow>
                                  </value>
                                  <value name="MONTHS">
                                    <shadow type="text" id="GfQ!DoE|TZTliq*)8,@j">
                                      <field name="TEXT">*</field>
                                    </shadow>
                                  </value>
                                  <value name="DAYS">
                                    <shadow type="text" id="S6hVuxIjcYJMlS^~:zE5">
                                      <field name="TEXT">*</field>
                                    </shadow>
                                  </value>
                                  <value name="HOURS">
                                    <shadow type="text" id="NP{*G*@dWEP9M9mNlZFF">
                                      <field name="TEXT">*</field>
                                    </shadow>
                                    <block type="lists_getIndex" id="-0gZ}|H=8/}~St}d%rl;">
                                      <mutation statement="false" at="true"></mutation>
                                      <field name="MODE">GET</field>
                                      <field name="WHERE">FROM_START</field>
                                      <value name="VALUE">
                                        <block type="variables_get" id="8U#M]$`MHq(~A]~(v{2R">
                                          <field name="VAR" id="Q7*Gw)fesXb}OUBj1{`;" variabletype="">Uhrzeit_1</field>
                                        </block>
                                      </value>
                                      <value name="AT">
                                        <block type="math_number" id=")zFTxG~Gpp`eZw8r2,8w">
                                          <field name="NUM">1</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <value name="MINUTES">
                                    <shadow type="text" id="I(LCmtz/NJ%:Tvp,*;JL">
                                      <field name="TEXT">*</field>
                                    </shadow>
                                    <block type="lists_getIndex" id="0([.HRKLsVPA.X:jwVI@">
                                      <mutation statement="false" at="true"></mutation>
                                      <field name="MODE">GET</field>
                                      <field name="WHERE">FROM_START</field>
                                      <value name="VALUE">
                                        <block type="variables_get" id="8#E0pY-UET(BcZH]~qB:">
                                          <field name="VAR" id="Q7*Gw)fesXb}OUBj1{`;" variabletype="">Uhrzeit_1</field>
                                        </block>
                                      </value>
                                      <value name="AT">
                                        <block type="math_number" id=";UF-jK:^cV#hui?GDL/V">
                                          <field name="NUM">2</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <statement name="STATEMENT">
                                <block type="procedures_callnoreturn" id="/6qq{?/)+*vm:UnA$x,0">
                                  <mutation name="Futter"></mutation>
                                </block>
                              </statement>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </statement>
                  <next>
                    <block type="comment" id="7wspNJ:OA(%4Ab.`5IAO">
                      <field name="COMMENT">2. Uhrzeit hh:mm</field>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </xml>
          
          

          Woher kommt jetzt die Uhrzeit in der Liste ???
          Und was kommt in den trigger für ein Objekt in die Objekt ID ?
          Oder kommt in den trigger dann der datenpunkt rein wo man die Uhrzeit einstellen kann für die erste Futter Dosierung?

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #6

          @Aphofis sagte:

          kommt in den trigger dann der datenpunkt rein wo man die Uhrzeit einstellen kann für die erste Futter Dosierung?

          Ja, steht doch im Kommentar über dem Trigger.

          @Aphofis sagte in Hilfe bei zeitsteuerung:

          Ist das so korrekt?

          Ich habe keine Lust, das zu importieren. Poste bitte den vom Blockly erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          AphofisA 1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @Aphofis sagte:

            kommt in den trigger dann der datenpunkt rein wo man die Uhrzeit einstellen kann für die erste Futter Dosierung?

            Ja, steht doch im Kommentar über dem Trigger.

            @Aphofis sagte in Hilfe bei zeitsteuerung:

            Ist das so korrekt?

            Ich habe keine Lust, das zu importieren. Poste bitte den vom Blockly erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

            AphofisA Offline
            AphofisA Offline
            Aphofis
            schrieb am zuletzt editiert von Aphofis
            #7

            @paul53

            var Dauer, Uhrzeit_1, Intervall, schedule_1, Uhrzeit_2, schedule_2, Uhrzeit_3, schedule_3, Uhrzeit_4, schedule_4;
            
            /**
             * Beschreibe diese Funktion …
             */
            function Futter() {
              Dauer = getState("Aqua_Control.0.Futterautomatik_multiplikator").val;
              setState("rpi2.0.gpio.25.state"/*Futterautomat_Buchse_4*/, true);
              // Intervalldauer = Faktor
              Intervall = setInterval(function () {
                Dauer = (typeof Dauer == 'number' ? Dauer : 0) + -1;
                if (Dauer <= 0) {
                  (function () {if (Intervall) {clearInterval(Intervall); Intervall = null;}})();
                }
                setState("rpi2.0.gpio.25.state"/*Futterautomat_Buchse_4*/, false);
              }, 800);
            }
            
            
            // 1. Uhrzeit hh:mm
            on({id: 'Aqua_Control.0.Futterautomatik_Uhrzeit_1', change: "ne"}, function (obj) {
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
              Uhrzeit_1 = (obj.state ? obj.state.val : "").split(':');
              (function () {if (schedule_1) {clearSchedule(schedule_1); schedule_1 = null;}})();
              schedule_1 = schedule((Uhrzeit_1[1]).trim() + ' ' + (Uhrzeit_1[0]).trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                Futter();
              });
            });
            // 2. Uhrzeit hh:mm
            on({id: 'Aqua_Control.0.Futterautomatik_Uhrzeit_2', change: "ne"}, function (obj) {
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
              Uhrzeit_2 = (obj.state ? obj.state.val : "").split(':');
              (function () {if (schedule_2) {clearSchedule(schedule_2); schedule_2 = null;}})();
              schedule_2 = schedule((Uhrzeit_2[1]).trim() + ' ' + (Uhrzeit_2[0]).trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                Futter();
              });
            });
            // 3. Uhrzeit hh:mm
            on({id: 'Aqua_Control.0.Futterautomatik_Uhrzeit_3', change: "ne"}, function (obj) {
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
              Uhrzeit_3 = (obj.state ? obj.state.val : "").split(':');
              (function () {if (schedule_3) {clearSchedule(schedule_3); schedule_3 = null;}})();
              schedule_3 = schedule((Uhrzeit_3[1]).trim() + ' ' + (Uhrzeit_3[0]).trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                Futter();
              });
            });
            // 4. Uhrzeit hh:mm
            on({id: 'Aqua_Control.0.Futterautomatik_Uhrzeit_4', change: "ne"}, function (obj) {
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
              Uhrzeit_4 = (obj.state ? obj.state.val : "").split(':');
              (function () {if (schedule_4) {clearSchedule(schedule_4); schedule_4 = null;}})();
              schedule_4 = schedule((Uhrzeit_4[1]).trim() + ' ' + (Uhrzeit_4[0]).trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                Futter();
              });
            });
            
            
            

            Ok so korrekt?

            paul53P 1 Antwort Letzte Antwort
            0
            • AphofisA Aphofis

              @paul53

              var Dauer, Uhrzeit_1, Intervall, schedule_1, Uhrzeit_2, schedule_2, Uhrzeit_3, schedule_3, Uhrzeit_4, schedule_4;
              
              /**
               * Beschreibe diese Funktion …
               */
              function Futter() {
                Dauer = getState("Aqua_Control.0.Futterautomatik_multiplikator").val;
                setState("rpi2.0.gpio.25.state"/*Futterautomat_Buchse_4*/, true);
                // Intervalldauer = Faktor
                Intervall = setInterval(function () {
                  Dauer = (typeof Dauer == 'number' ? Dauer : 0) + -1;
                  if (Dauer <= 0) {
                    (function () {if (Intervall) {clearInterval(Intervall); Intervall = null;}})();
                  }
                  setState("rpi2.0.gpio.25.state"/*Futterautomat_Buchse_4*/, false);
                }, 800);
              }
              
              
              // 1. Uhrzeit hh:mm
              on({id: 'Aqua_Control.0.Futterautomatik_Uhrzeit_1', change: "ne"}, function (obj) {
                var value = obj.state.val;
                var oldValue = obj.oldState.val;
                Uhrzeit_1 = (obj.state ? obj.state.val : "").split(':');
                (function () {if (schedule_1) {clearSchedule(schedule_1); schedule_1 = null;}})();
                schedule_1 = schedule((Uhrzeit_1[1]).trim() + ' ' + (Uhrzeit_1[0]).trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                  Futter();
                });
              });
              // 2. Uhrzeit hh:mm
              on({id: 'Aqua_Control.0.Futterautomatik_Uhrzeit_2', change: "ne"}, function (obj) {
                var value = obj.state.val;
                var oldValue = obj.oldState.val;
                Uhrzeit_2 = (obj.state ? obj.state.val : "").split(':');
                (function () {if (schedule_2) {clearSchedule(schedule_2); schedule_2 = null;}})();
                schedule_2 = schedule((Uhrzeit_2[1]).trim() + ' ' + (Uhrzeit_2[0]).trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                  Futter();
                });
              });
              // 3. Uhrzeit hh:mm
              on({id: 'Aqua_Control.0.Futterautomatik_Uhrzeit_3', change: "ne"}, function (obj) {
                var value = obj.state.val;
                var oldValue = obj.oldState.val;
                Uhrzeit_3 = (obj.state ? obj.state.val : "").split(':');
                (function () {if (schedule_3) {clearSchedule(schedule_3); schedule_3 = null;}})();
                schedule_3 = schedule((Uhrzeit_3[1]).trim() + ' ' + (Uhrzeit_3[0]).trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                  Futter();
                });
              });
              // 4. Uhrzeit hh:mm
              on({id: 'Aqua_Control.0.Futterautomatik_Uhrzeit_4', change: "ne"}, function (obj) {
                var value = obj.state.val;
                var oldValue = obj.oldState.val;
                Uhrzeit_4 = (obj.state ? obj.state.val : "").split(':');
                (function () {if (schedule_4) {clearSchedule(schedule_4); schedule_4 = null;}})();
                schedule_4 = schedule((Uhrzeit_4[1]).trim() + ' ' + (Uhrzeit_4[0]).trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                  Futter();
                });
              });
              
              
              

              Ok so korrekt?

              paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von paul53
              #8

              @Aphofis sagte:

              so korrekt?

              Nicht ganz: Das Auschalten von "rpi2.0.gpio.25.state"/Futterautomat_Buchse_4/ muss innerhalb der Prüfung Dauer <= 0 erfolgen. Die Datenpunkt-ID für den 1. Uhrzeit-Datenpunkt fehlt noch.

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              AphofisA 1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @Aphofis sagte:

                so korrekt?

                Nicht ganz: Das Auschalten von "rpi2.0.gpio.25.state"/Futterautomat_Buchse_4/ muss innerhalb der Prüfung Dauer <= 0 erfolgen. Die Datenpunkt-ID für den 1. Uhrzeit-Datenpunkt fehlt noch.

                AphofisA Offline
                AphofisA Offline
                Aphofis
                schrieb am zuletzt editiert von
                #9

                @paul53
                Irgendwie will die Steuerung nicht das Gerät läuft nur für 800 ms mehr nicht.
                Ich verstehe noch nicht den gesamten Zusammenhang.

                var Dauer, Uhrzeit_1, Intervall, schedule_1, Uhrzeit_2, schedule_2, Uhrzeit_3, schedule_3, Uhrzeit_4, schedule_4;
                
                /**
                 * Beschreibe diese Funktion …
                 */
                function Futter() {
                  Dauer = getState("Aqua_Control.0.Futterautomatik_multiplikator").val;
                  setState("sonoff.0.Aqua_Dosierer.POWER1"/*Aqua_Dosierer_Pumpe_1*/, true);
                  // Intervalldauer = Faktor
                  Intervall = setInterval(function () {
                    Dauer = (typeof Dauer == 'number' ? Dauer : 0) + -1;
                    if (Dauer <= 0) {
                      (function () {if (Intervall) {clearInterval(Intervall); Intervall = null;}})();
                    }
                    setState("sonoff.0.Aqua_Dosierer.POWER1"/*Aqua_Dosierer_Pumpe_1*/, false);
                  }, 800);
                }
                
                
                // 1. Uhrzeit hh:mm
                on({id: 'sonoff.0.Aqua_Dosierer.POWER1', change: "ne"}, function (obj) {
                  var value = obj.state.val;
                  var oldValue = obj.oldState.val;
                  Uhrzeit_1 = (obj.state ? obj.state.val : "").split(':');
                  (function () {if (schedule_1) {clearSchedule(schedule_1); schedule_1 = null;}})();
                  schedule_1 = schedule((Uhrzeit_1[1]).trim() + ' ' + (Uhrzeit_1[0]).trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                    Futter();
                  });
                });
                // 2. Uhrzeit hh:mm
                // 3. Uhrzeit hh:mm
                // 4. Uhrzeit hh:mm
                on({id: 'Aqua_Control.0.Futterautomatik_Uhrzeit_4', change: "ne"}, function (obj) {
                  var value = obj.state.val;
                  var oldValue = obj.oldState.val;
                  Uhrzeit_4 = (obj.state ? obj.state.val : "").split(':');
                  (function () {if (schedule_4) {clearSchedule(schedule_4); schedule_4 = null;}})();
                  schedule_4 = schedule((Uhrzeit_4[1]).trim() + ' ' + (Uhrzeit_4[0]).trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                    Futter();
                  });
                });
                
                
                paul53P 1 Antwort Letzte Antwort
                0
                • AphofisA Aphofis

                  @paul53
                  Irgendwie will die Steuerung nicht das Gerät läuft nur für 800 ms mehr nicht.
                  Ich verstehe noch nicht den gesamten Zusammenhang.

                  var Dauer, Uhrzeit_1, Intervall, schedule_1, Uhrzeit_2, schedule_2, Uhrzeit_3, schedule_3, Uhrzeit_4, schedule_4;
                  
                  /**
                   * Beschreibe diese Funktion …
                   */
                  function Futter() {
                    Dauer = getState("Aqua_Control.0.Futterautomatik_multiplikator").val;
                    setState("sonoff.0.Aqua_Dosierer.POWER1"/*Aqua_Dosierer_Pumpe_1*/, true);
                    // Intervalldauer = Faktor
                    Intervall = setInterval(function () {
                      Dauer = (typeof Dauer == 'number' ? Dauer : 0) + -1;
                      if (Dauer <= 0) {
                        (function () {if (Intervall) {clearInterval(Intervall); Intervall = null;}})();
                      }
                      setState("sonoff.0.Aqua_Dosierer.POWER1"/*Aqua_Dosierer_Pumpe_1*/, false);
                    }, 800);
                  }
                  
                  
                  // 1. Uhrzeit hh:mm
                  on({id: 'sonoff.0.Aqua_Dosierer.POWER1', change: "ne"}, function (obj) {
                    var value = obj.state.val;
                    var oldValue = obj.oldState.val;
                    Uhrzeit_1 = (obj.state ? obj.state.val : "").split(':');
                    (function () {if (schedule_1) {clearSchedule(schedule_1); schedule_1 = null;}})();
                    schedule_1 = schedule((Uhrzeit_1[1]).trim() + ' ' + (Uhrzeit_1[0]).trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                      Futter();
                    });
                  });
                  // 2. Uhrzeit hh:mm
                  // 3. Uhrzeit hh:mm
                  // 4. Uhrzeit hh:mm
                  on({id: 'Aqua_Control.0.Futterautomatik_Uhrzeit_4', change: "ne"}, function (obj) {
                    var value = obj.state.val;
                    var oldValue = obj.oldState.val;
                    Uhrzeit_4 = (obj.state ? obj.state.val : "").split(':');
                    (function () {if (schedule_4) {clearSchedule(schedule_4); schedule_4 = null;}})();
                    schedule_4 = schedule((Uhrzeit_4[1]).trim() + ' ' + (Uhrzeit_4[0]).trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                      Futter();
                    });
                  });
                  
                  
                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von paul53
                  #10

                  @Aphofis sagte:

                  das Gerät läuft nur für 800 ms mehr nicht.

                  @paul53 sagte in Hilfe bei zeitsteuerung:

                  Das Auschalten von "rpi2.0.gpio.25.state"/Futterautomat_Buchse_4/ muss innerhalb der Prüfung Dauer <= 0 erfolgen.

                  steuere Aqua_Dosierer_Pumpe_1 mit falsch muss in das Maul von falls Dauer <= 0, nicht darunter.
                  Blockly_temp.JPG

                  Bist Du sicher, dass das der richtige Datenpunkt ist ?

                  // 1. Uhrzeit hh:mm
                  on({id: 'sonoff.0.Aqua_Dosierer.POWER1', change: "ne"}, function (obj) {
                  

                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                  AphofisA 1 Antwort Letzte Antwort
                  1
                  • paul53P paul53

                    @Aphofis sagte:

                    das Gerät läuft nur für 800 ms mehr nicht.

                    @paul53 sagte in Hilfe bei zeitsteuerung:

                    Das Auschalten von "rpi2.0.gpio.25.state"/Futterautomat_Buchse_4/ muss innerhalb der Prüfung Dauer <= 0 erfolgen.

                    steuere Aqua_Dosierer_Pumpe_1 mit falsch muss in das Maul von falls Dauer <= 0, nicht darunter.
                    Blockly_temp.JPG

                    Bist Du sicher, dass das der richtige Datenpunkt ist ?

                    // 1. Uhrzeit hh:mm
                    on({id: 'sonoff.0.Aqua_Dosierer.POWER1', change: "ne"}, function (obj) {
                    
                    AphofisA Offline
                    AphofisA Offline
                    Aphofis
                    schrieb am zuletzt editiert von
                    #11

                    @paul53
                    Ich habe nur eine nicht gebrauchte dosier Pumpe zum testen benutzt.
                    Sonst ist der furtterautomat leer bis die Steuerung funktioniert 😊🤪

                    1 Antwort Letzte Antwort
                    0
                    • AphofisA Offline
                      AphofisA Offline
                      Aphofis
                      schrieb am zuletzt editiert von
                      #12

                      Jetzt da steuere in der Tasche unter dem stop zyklische Ausführung ist macht die Steuerung nix mehr

                      paul53P 1 Antwort Letzte Antwort
                      0
                      • AphofisA Aphofis

                        Jetzt da steuere in der Tasche unter dem stop zyklische Ausführung ist macht die Steuerung nix mehr

                        paul53P Offline
                        paul53P Offline
                        paul53
                        schrieb am zuletzt editiert von
                        #13

                        @Aphofis sagte:

                        macht die Steuerung nix mehr

                        Dann bau mal ein Log ein:
                        Blockly_temp.JPG

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        AphofisA 1 Antwort Letzte Antwort
                        1
                        • paul53P paul53

                          @Aphofis sagte:

                          macht die Steuerung nix mehr

                          Dann bau mal ein Log ein:
                          Blockly_temp.JPG

                          AphofisA Offline
                          AphofisA Offline
                          Aphofis
                          schrieb am zuletzt editiert von Aphofis
                          #14

                          @paul53
                          Log eingebaut!
                          Kommt keine Meldung in der log nur das dass Script gestartet ist!
                          Wieso eigentlich
                          Erhöhe Dauer um -1 was bewirkt das ?
                          Das ich zwei datenpunkte habe!? Ist bewusst?
                          Einer wo die Uhrzeit drin steht wann dosiert werden soll und ein datenpunkt ist so zu sagen wie lange die Dosierung stattfinden soll
                          Also eine Dosierung sind 800ms
                          Wenn in dem datenpunkt multiplikator steht zb 3
                          Dann soll die Dosierung 3x800 Millisekunden lang sein demnach 2400 ms
                          Hoffe das ist so auch richtig rüber gekommen.
                          Diese beiden datenpunkte jetzt nur zur Dosierung Futter 1 die anderen können wenn’s läuft

                          paul53P 2 Antworten Letzte Antwort
                          0
                          • AphofisA Aphofis

                            @paul53
                            Log eingebaut!
                            Kommt keine Meldung in der log nur das dass Script gestartet ist!
                            Wieso eigentlich
                            Erhöhe Dauer um -1 was bewirkt das ?
                            Das ich zwei datenpunkte habe!? Ist bewusst?
                            Einer wo die Uhrzeit drin steht wann dosiert werden soll und ein datenpunkt ist so zu sagen wie lange die Dosierung stattfinden soll
                            Also eine Dosierung sind 800ms
                            Wenn in dem datenpunkt multiplikator steht zb 3
                            Dann soll die Dosierung 3x800 Millisekunden lang sein demnach 2400 ms
                            Hoffe das ist so auch richtig rüber gekommen.
                            Diese beiden datenpunkte jetzt nur zur Dosierung Futter 1 die anderen können wenn’s läuft

                            paul53P Offline
                            paul53P Offline
                            paul53
                            schrieb am zuletzt editiert von paul53
                            #15

                            @Aphofis sagte:

                            Das ich zwei datenpunkte habe!? Ist bewusst?

                            Nein, es müssten 3 Datenpunkte sein: Die Dauer enthält der DP "Aqua_Control.0.Futterautomatik_multiplikator", die Pumpensteuerung erfolgt an den DP "sonoff.0.Aqua_Dosierer.POWER1" und in welchem DP steht die Uhrzeit ? Deshalb meine Frage weiter oben:

                            Bist Du sicher, dass das der richtige Datenpunkt ist ?

                            Müsste der nicht eine ID haben wie "Aqua_Control.0.Futterautomatik_Uhrzeit_1" ?

                            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                            AphofisA 1 Antwort Letzte Antwort
                            1
                            • paul53P paul53

                              @Aphofis sagte:

                              Das ich zwei datenpunkte habe!? Ist bewusst?

                              Nein, es müssten 3 Datenpunkte sein: Die Dauer enthält der DP "Aqua_Control.0.Futterautomatik_multiplikator", die Pumpensteuerung erfolgt an den DP "sonoff.0.Aqua_Dosierer.POWER1" und in welchem DP steht die Uhrzeit ? Deshalb meine Frage weiter oben:

                              Bist Du sicher, dass das der richtige Datenpunkt ist ?

                              Müsste der nicht eine ID haben wie "Aqua_Control.0.Futterautomatik_Uhrzeit_1" ?

                              AphofisA Offline
                              AphofisA Offline
                              Aphofis
                              schrieb am zuletzt editiert von Aphofis
                              #16

                              @paul53

                              Das schon klar!
                              Datenpunkt wie lange dosiert werden soll
                              Ist der futterautomatik_multiplikator
                              Mit wert 1-3 zb
                              Datenpunkt zum testen der auf die Steuerung reagieren soll mit true und false
                              sonoff.0.Aqua_Dosierer.POWER1
                              Später dann der futterautomatik Motor
                              Und der datenpunkt mit der Uhrzeit
                              Ja ist
                              Futterautomatik_Uhrzeit_1
                              Gibt für die erste Futter Dosierung die Zeit an in
                              Formatierung 16:30 zb

                              1 Antwort Letzte Antwort
                              0
                              • AphofisA Offline
                                AphofisA Offline
                                Aphofis
                                schrieb am zuletzt editiert von Aphofis
                                #17

                                Wenn’s dann läuft wollte ich die selbe Steuerung dann auch für meine Triton Lösungen und Strontium Dosierung benutzen. Natürlich neu erstellt mit eigenen datenpunkten.
                                Mega wäre natürlich das wenn man zb 6 Dosierungen am Tag hat mit je 2ml (760ms = 1 ml) das dann in der Steuerung zb alle Dosierungen zusammen gezählt werden und dann in der Programmierung nicht mehr als 12 ml ( 9120ms) am Tag dosiert werden dürfen so noch mal als kleine Sperre das auch wirklich nicht mehr dosiert wird.

                                1 Antwort Letzte Antwort
                                0
                                • AphofisA Aphofis

                                  @paul53
                                  Log eingebaut!
                                  Kommt keine Meldung in der log nur das dass Script gestartet ist!
                                  Wieso eigentlich
                                  Erhöhe Dauer um -1 was bewirkt das ?
                                  Das ich zwei datenpunkte habe!? Ist bewusst?
                                  Einer wo die Uhrzeit drin steht wann dosiert werden soll und ein datenpunkt ist so zu sagen wie lange die Dosierung stattfinden soll
                                  Also eine Dosierung sind 800ms
                                  Wenn in dem datenpunkt multiplikator steht zb 3
                                  Dann soll die Dosierung 3x800 Millisekunden lang sein demnach 2400 ms
                                  Hoffe das ist so auch richtig rüber gekommen.
                                  Diese beiden datenpunkte jetzt nur zur Dosierung Futter 1 die anderen können wenn’s läuft

                                  paul53P Offline
                                  paul53P Offline
                                  paul53
                                  schrieb am zuletzt editiert von
                                  #18

                                  @Aphofis sagte:

                                  Erhöhe Dauer um -1 was bewirkt das ?

                                  Das ist ein Count down.

                                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                  AphofisA 1 Antwort Letzte Antwort
                                  0
                                  • paul53P paul53

                                    @Aphofis sagte:

                                    Erhöhe Dauer um -1 was bewirkt das ?

                                    Das ist ein Count down.

                                    AphofisA Offline
                                    AphofisA Offline
                                    Aphofis
                                    schrieb am zuletzt editiert von
                                    #19

                                    @paul53
                                    Ok Danke aber laufen will es immer noch nicht
                                    Komisch ist das es zu Anfang zumindest 800ms gelaufen ist nach dem ich steuere pumpe1 in die Tasche vom Intervall gepackt hatte kam nix mehr

                                    paul53P 1 Antwort Letzte Antwort
                                    0
                                    • AphofisA Aphofis

                                      @paul53
                                      Ok Danke aber laufen will es immer noch nicht
                                      Komisch ist das es zu Anfang zumindest 800ms gelaufen ist nach dem ich steuere pumpe1 in die Tasche vom Intervall gepackt hatte kam nix mehr

                                      paul53P Offline
                                      paul53P Offline
                                      paul53
                                      schrieb am zuletzt editiert von
                                      #20

                                      @Aphofis sagte:

                                      aber laufen will es immer noch nicht

                                      Dann poste mal den aktuellen Javascript-Code (ohne letzte Zeile).

                                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                      AphofisA 1 Antwort Letzte Antwort
                                      0
                                      • paul53P paul53

                                        @Aphofis sagte:

                                        aber laufen will es immer noch nicht

                                        Dann poste mal den aktuellen Javascript-Code (ohne letzte Zeile).

                                        AphofisA Offline
                                        AphofisA Offline
                                        Aphofis
                                        schrieb am zuletzt editiert von
                                        #21

                                        @paul53

                                        Der Code:

                                        var Dauer, Uhrzeit_1, Intervall, schedule_1, Uhrzeit_2, schedule_2, Uhrzeit_3, schedule_3, Uhrzeit_4, schedule_4;
                                        
                                        /**
                                         * Beschreibe diese Funktion …
                                         */
                                        function Futter() {
                                          Dauer = getState("Aqua_Control.0.Futterautomatik_multiplikator").val;
                                          setState("sonoff.0.Aqua_Dosierer.POWER1"/*Aqua_Dosierer_Pumpe_1*/, true);
                                          // Intervalldauer = Faktor
                                          Intervall = setInterval(function () {
                                            Dauer = (typeof Dauer == 'number' ? Dauer : 0) + -1;
                                            console.log(Dauer);
                                            if (Dauer <= 0) {
                                              (function () {if (Intervall) {clearInterval(Intervall); Intervall = null;}})();
                                            }
                                            setState("sonoff.0.Aqua_Dosierer.POWER1"/*Aqua_Dosierer_Pumpe_1*/, false);
                                          }, 800);
                                        }
                                        
                                        
                                        // 1. Uhrzeit hh:mm
                                        on({id: 'sonoff.0.Aqua_Dosierer.POWER1', change: "ne"}, function (obj) {
                                          var value = obj.state.val;
                                          var oldValue = obj.oldState.val;
                                          Uhrzeit_1 = (obj.state ? obj.state.val : "").split(':');
                                          (function () {if (schedule_1) {clearSchedule(schedule_1); schedule_1 = null;}})();
                                          schedule_1 = schedule((Uhrzeit_1[1]).trim() + ' ' + (Uhrzeit_1[0]).trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                                            Futter();
                                          });
                                        });
                                        // 3. Uhrzeit hh:mm
                                        // 4. Uhrzeit hh:mm
                                        on({id: 'Aqua_Control.0.Futterautomatik_Uhrzeit_4', change: "ne"}, function (obj) {
                                          var value = obj.state.val;
                                          var oldValue = obj.oldState.val;
                                          Uhrzeit_4 = (obj.state ? obj.state.val : "").split(':');
                                          (function () {if (schedule_4) {clearSchedule(schedule_4); schedule_4 = null;}})();
                                          schedule_4 = schedule((Uhrzeit_4[1]).trim() + ' ' + (Uhrzeit_4[0]).trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                                            Futter();
                                          });
                                        });
                                        
                                        

                                        Die datenpunkte:
                                        0F74F779-1CE7-4D77-B714-F601C53A6F9A.jpeg

                                        1 Antwort Letzte Antwort
                                        0
                                        • paul53P Offline
                                          paul53P Offline
                                          paul53
                                          schrieb am zuletzt editiert von paul53
                                          #22

                                          @Aphofis
                                          Zeile 16: setState() ist immer noch außerhalb der Abfrage if(Dauer <= 0)
                                          Zeile 22: Die ID ist falsch (keine Uhrzeit)
                                          Mit welcher Uhrzeit hast Du es getestet ?

                                          Zum Testen der Funktion Futter rufe die Funktion mal beim Skripstart auf und prüfe den Typ des Multiplikator-Datenpunktes.

                                          Blockly_temp.JPG

                                          Vielleicht hilft die Konvertierung nach Zahl ?
                                          Blockly_temp.JPG

                                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                          AphofisA 2 Antworten Letzte Antwort
                                          1
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          303

                                          Online

                                          32.6k

                                          Benutzer

                                          82.3k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe