Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Verbrauchsschwankung mit Blockly erkennen

NEWS

  • Wartung am 15.11. – Forum ab 22:00 Uhr nicht erreichbar
    BluefoxB
    Bluefox
    12
    2
    256

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.0k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.7k

Verbrauchsschwankung mit Blockly erkennen

Verbrauchsschwankung mit Blockly erkennen

Scheduled Pinned Locked Moved Blockly
24 Posts 9 Posters 3.2k Views 7 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    MiB
    wrote on last edited by
    #6

    Ach Mist, die Sache mit vorheriger Wert funktioniert nicht. Hier mal ein Auszug aus den Daten bei Knitterschutz:
    werte.JPG
    Die Leistung steigt an und dann wieder ab, also vor 4 die 120 angeben bringt nix.

    J 1 Reply Last reply
    0
    • M MiB

      Ach Mist, die Sache mit vorheriger Wert funktioniert nicht. Hier mal ein Auszug aus den Daten bei Knitterschutz:
      werte.JPG
      Die Leistung steigt an und dann wieder ab, also vor 4 die 120 angeben bringt nix.

      J Offline
      J Offline
      Jan1
      wrote on last edited by
      #7

      @MiB
      Das Blockly war nur ein sehr einfaches Beispiel, wie man das umsetzten kann. Das kann natürlich auch so erweitert werden und der Timeout ist ne praktische Funktion um ungewünschte Schwankungen zu filtern.

      1 Reply Last reply
      0
      • M MiB

        Hey @Jan1 ,

        ah, jetzt hab ich das mit dem Vorher Wert schonmal verstanden. DANKE
        Aber ich denke ich brauche noch eine Prüfung mehr, weil der Zustand kann auch zwischendurch mal auftreten. Oder ist das mit dem 30sec Timer bei Dir schon überprüft? Weil zwischendurch wartet er keine 30sec um wieder anzulaufen, das passiert innerhalb 10sec

        rantanplanR Offline
        rantanplanR Offline
        rantanplan
        wrote on last edited by
        #8

        @MiB Schau mal hier. Vielleicht kannst Du das gebrauchen. Oder Teile daraus.
        Waschmaschine
        Grüße

        Rantanplan

        CCU3 / MS Server 2019(VM) / Scripten mit Blockly

        1 Reply Last reply
        0
        • M Offline
          M Offline
          MiB
          wrote on last edited by
          #9

          @rantanplan habs mir mal angesehen, cooles Script. Aber du setzt ja drauf das der Wert 40 sec. so bleibt und ich versuche durch eine Logik zu erkennen das alle 30 sec. die Trommel mal kurz dreht. Hab leider noch kein richtigen Plan wie ich das mache. Wahrscheinlich muss ich 2 timer nutzen, wobei der 2. nicht zur gleichen Zeit wie der 1. starten darf um das auf und ab des Verbrauchs zu erkennen. Oder was ich auch noch überlegt habe, für 30 sec. die Werte in eine Liste aufnehmen und dann auswerten ob die Liste ansteigt und abfällt. Aber das wie ist mir noch nicht klar.

          rantanplanR 1 Reply Last reply
          0
          • M MiB

            @rantanplan habs mir mal angesehen, cooles Script. Aber du setzt ja drauf das der Wert 40 sec. so bleibt und ich versuche durch eine Logik zu erkennen das alle 30 sec. die Trommel mal kurz dreht. Hab leider noch kein richtigen Plan wie ich das mache. Wahrscheinlich muss ich 2 timer nutzen, wobei der 2. nicht zur gleichen Zeit wie der 1. starten darf um das auf und ab des Verbrauchs zu erkennen. Oder was ich auch noch überlegt habe, für 30 sec. die Werte in eine Liste aufnehmen und dann auswerten ob die Liste ansteigt und abfällt. Aber das wie ist mir noch nicht klar.

            rantanplanR Offline
            rantanplanR Offline
            rantanplan
            wrote on last edited by
            #10

            @MiB sagte in Verbrauchsschwankung mit Blockly erkennen:

            @rantanplan habs mir mal angesehen, cooles Script. Aber du setzt ja drauf das der Wert 40 sec. so bleibt und ich versuche durch eine Logik zu erkennen das alle 30 sec. die Trommel mal kurz dreht. Hab leider noch kein richtigen Plan wie ich das mache. Wahrscheinlich muss ich 2 timer nutzen, wobei der 2. nicht zur gleichen Zeit wie der 1. starten darf um das auf und ab des Verbrauchs zu erkennen. Oder was ich auch noch überlegt habe, für 30 sec. die Werte in eine Liste aufnehmen und dann auswerten ob die Liste ansteigt und abfällt. Aber das wie ist mir noch nicht klar.

            Mit Timern immer vorsichtig sein und an der richtigen Stelle "stop" Timer einsetzen.
            Ob ein Timer läuft, kannst Du in Blockly leider nur über eine Hilfsvariable ermitteln.

            Wir haben "leider" keine Waschmaschine mit Knitterschutz und kann die Problematik nicht nachstellen.

            Wenn Du irgendwo hängst, stell Dein Blockly ruhig hier rein.
            Möglichst als Export. Da kann man leichter "mitschrauben".

            Grüße

            Rantanplan

            CCU3 / MS Server 2019(VM) / Scripten mit Blockly

            1 Reply Last reply
            0
            • M Offline
              M Offline
              MiB
              wrote on last edited by
              #11

              Danke, das ist nett. Daten sind kein Problem. Kann auch die Exceltabelle mit 3 aufgezeichneten Verbrauchswerten mit bereitstellen. Aber das ganze dann zu Testen wenn man selber die Funktion am Trockner nicht hat ist schwierig. Aber ich gebe nicht auf, ich bastel so lange bis es entweder geht, oder mir einer sagt das ist leider nicht machbar.

              1 Reply Last reply
              0
              • paul53P Offline
                paul53P Offline
                paul53
                wrote on last edited by
                #12

                Wenn ich mir die Tabelle so anschaue, sollte es so funktionieren:
                Blockly_Knitter_Ende.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

                1 Reply Last reply
                1
                • M Offline
                  M Offline
                  MiB
                  wrote on last edited by
                  #13

                  Hi @paul53
                  cooler Ansatz, was ich nicht verstehe - warum der Timer in 60s z.B. die Meldung bringen soll. Wenn ich das interpretiere kommt für mich dabei raus:
                  Wenn Verbrauch kleiner 150 dann
                  wenn vorher >= 150 dann
                  Meldung in 60s über Zustand (Knitterschutz)
                  sonst
                  wenn Verbrauch < 4 dann
                  wenn vorher >= 4 dann
                  in 60s Meldung (Ende Knitterschutz und ausschalten)
                  Ist das korrekt so? Und ich glaube ich muss die ganze Exceltabelle mal hochladen. Manchmal macht der Trockner zwischendrin eine ganz kurze Paus (so wie mal Luft holen) und macht gleich weiter. Die Tabelle enthält über 10000 Einträge von 3 Trocknungszyklen. Ich hoffe das ist jetzt nicht zu Aufwendig da mal durchzuschauen. Will ja niemanden für mich die Arbeit machen lassen, wäre aber echt toll wenn wir das hinbekommen würden.
                  Trockner Leistung.xlsx

                  paul53P 1 Reply Last reply
                  0
                  • M MiB

                    Hi @paul53
                    cooler Ansatz, was ich nicht verstehe - warum der Timer in 60s z.B. die Meldung bringen soll. Wenn ich das interpretiere kommt für mich dabei raus:
                    Wenn Verbrauch kleiner 150 dann
                    wenn vorher >= 150 dann
                    Meldung in 60s über Zustand (Knitterschutz)
                    sonst
                    wenn Verbrauch < 4 dann
                    wenn vorher >= 4 dann
                    in 60s Meldung (Ende Knitterschutz und ausschalten)
                    Ist das korrekt so? Und ich glaube ich muss die ganze Exceltabelle mal hochladen. Manchmal macht der Trockner zwischendrin eine ganz kurze Paus (so wie mal Luft holen) und macht gleich weiter. Die Tabelle enthält über 10000 Einträge von 3 Trocknungszyklen. Ich hoffe das ist jetzt nicht zu Aufwendig da mal durchzuschauen. Will ja niemanden für mich die Arbeit machen lassen, wäre aber echt toll wenn wir das hinbekommen würden.
                    Trockner Leistung.xlsx

                    paul53P Offline
                    paul53P Offline
                    paul53
                    wrote on last edited by paul53
                    #14

                    @MiB sagte:

                    Manchmal macht der Trockner zwischendrin eine ganz kurze Paus (so wie mal Luft holen) und macht gleich weiter.

                    Deshalb die 60 s Verzögerung. Falls zu kurz, dann erhöhen.

                    @MiB sagte in Verbrauchsschwankung mit Blockly erkennen:

                    was ich nicht verstehe - warum der Timer in 60s z.B. die Meldung bringen soll.

                    Wenn innerhalb der 60 s die Leistungsschwelle wieder überschritten wird, wird der Timer gestoppt und es erfolgt keine Meldung. Erst nach neuem Timerstart erfolgt die Meldung mit Verzögerung (wenn solange die Leistung unterhalb der Schwelle bleibt).

                    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

                    1 Reply Last reply
                    0
                    • M Offline
                      M Offline
                      MiB
                      wrote on last edited by
                      #15

                      achso, jetzt hab ich es. Er bekommt die Anweisung wenn über 150 mach folgendes, aber erst in 60s (also Ausführung merken) dann irgendwann ist der Wert mal wieder unter 150 aber der dezeitige Vorher Wert nicht größer 150 dann stoppt der timer und die im Hinterkopf gemerkte Anweisung wird gelöscht. Richtig?
                      Jetzt muss ich mal schauen wie ich was in den Trockner bekomme. Frau hat gestern extra alles mögliche gewaschen damit ich genug aufzeichnen kann 🙂

                      1 Reply Last reply
                      0
                      • paul53P Offline
                        paul53P Offline
                        paul53
                        wrote on last edited by paul53
                        #16

                        @MiB sagte:

                        Er bekommt die Anweisung wenn über 150 mach folgendes, aber erst in 60s (also Ausführung merken) dann irgendwann ist der Wert mal wieder unter 150 aber der dezeitige Vorher Wert nicht größer 150 dann stoppt der timer und die im Hinterkopf gemerkte Anweisung wird gelöscht. Richtig?

                        Er bekommt die Anweisung: Wenn unter 150 und vorheriger Wert mindestens 150, dann starte Timer für die um 60 s verzögerte Aktion. Falls innerhalb der 60 s der Wert mal wieder über 150, stoppt der Timer und die verzögerte Aktion wird nicht ausgeführt.
                        Die Abfrage auf vorheriger Wert mindestens 150 verhindert, dass der Timer mehrfach gestartet wird.

                        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

                        1 Reply Last reply
                        0
                        • M Offline
                          M Offline
                          MiB
                          wrote on last edited by
                          #17

                          Hallo @paul53
                          wollte kurz Rückinfo geben. Heute gab es mal wieder was zu trocknen und ich muss sagen, Prima Arbeit. Hat genau wie du es erwartet hast funktioniert. Meine Frau ist begeistert. Jetzt muss ich mal sehen wie der Trockner sich bei anderen Programmen verhält und eventuell etwas anpassen, aber im Moment geht es richtig gut. Hatte anfangs etwas Probleme der Logik zu folgen, aber jetzt ist es mir klar.
                          Herzlichen Dank
                          Grüße Michael

                          1 Reply Last reply
                          0
                          • S Offline
                            S Offline
                            steff.h.
                            wrote on last edited by
                            #18

                            Hallo zusammen,

                            ich habe ein ähnliches Problem und versucht es hiermit zu lösen.

                            Ich werde jedoch immer mit Nachrichten zugeschüttet.

                            Der Sonoff POW ist immer angeschaltet und sollte nur bei Wattänderungen eine Nachricht schicken.

                            1. Wenn er aktiviert wurde
                            2. Wenn der Knitterschutz aktiviert wurde
                            3. Wenn der Trockner fertig ist

                            ich habe nun folgendes probiert:

                            Aufnahme11.jpg

                            <xml xmlns="http://www.w3.org/1999/xhtml">
                              <variables>
                                <variable type="undefined" id="timeout1">timeout1</variable>
                                <variable type="undefined" id="timeout2">timeout2</variable>
                              </variables>
                              <block type="on_ext" id="+A7wlutQO8gBfqosc.y3" x="-387" y="-12">
                                <mutation items="1"></mutation>
                                <field name="CONDITION">any</field>
                                <field name="ACK_CONDITION"></field>
                                <value name="OID0">
                                  <shadow type="field_oid" id="L[i=p{|ii-ai*/YAZ@8s">
                                    <field name="oid">sonoff.0.Trockner.ENERGY_Power</field>
                                  </shadow>
                                </value>
                                <statement name="STATEMENT">
                                  <block type="controls_if" id="V6]e:v6u:?I_dnQ6L_VO">
                                    <value name="IF0">
                                      <block type="logic_compare" id="YL]^MiM0C_d90EjXd7qr">
                                        <field name="OP">GT</field>
                                        <value name="A">
                                          <block type="get_value" id="yM=9zWrslsViHeXAVGm6">
                                            <field name="ATTR">val</field>
                                            <field name="OID">sonoff.0.Trockner.ENERGY_Power</field>
                                          </block>
                                        </value>
                                        <value name="B">
                                          <block type="text" id="H=g~S*6(?G/uCr~jDdCp">
                                            <field name="TEXT">50</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                    <statement name="DO0">
                                      <block type="control" id="vs.J|^}}{M%%SJ1bpk;V">
                                        <mutation delay_input="false"></mutation>
                                        <field name="OID">Meine_Geräte.0.status_trockner</field>
                                        <field name="WITH_DELAY">FALSE</field>
                                        <value name="VALUE">
                                          <block type="logic_boolean" id="gvfoVV5t!!Us3^C~!w.H">
                                            <field name="BOOL">FALSE</field>
                                          </block>
                                        </value>
                                      </block>
                                    </statement>
                                    <next>
                                      <block type="controls_if" id="Y?veRO*2:#`oT-H/BM5+">
                                        <mutation else="1"></mutation>
                                        <value name="IF0">
                                          <block type="logic_compare" id=":k:zLc}nC%#r^+K^Eo.(">
                                            <field name="OP">LT</field>
                                            <value name="A">
                                              <block type="on_source" id="U7o;jTuGj!Z%x*giBA4~">
                                                <field name="ATTR">state.val</field>
                                              </block>
                                            </value>
                                            <value name="B">
                                              <block type="text" id="-Wv/soS#il1z5y*+s%mA">
                                                <field name="TEXT">50</field>
                                              </block>
                                            </value>
                                          </block>
                                        </value>
                                        <statement name="DO0">
                                          <block type="controls_if" id="UT~9*H(1tT=L|IjL$v,V">
                                            <value name="IF0">
                                              <block type="logic_compare" id="Ijf~JlR]#oy,r)6-[DD*">
                                                <field name="OP">GTE</field>
                                                <value name="A">
                                                  <block type="on_source" id="2*y6K4S,#@Lb:ffPeJ`$">
                                                    <field name="ATTR">oldState.val</field>
                                                  </block>
                                                </value>
                                                <value name="B">
                                                  <block type="text" id="kGM9Mt`m?YPRcKg-FEQm">
                                                    <field name="TEXT">50</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <statement name="DO0">
                                              <block type="timeouts_settimeout" id="^Q88lhsvgd-!3s?NQe9u">
                                                <field name="NAME">timeout1</field>
                                                <field name="DELAY">60</field>
                                                <field name="UNIT">sec</field>
                                                <statement name="STATEMENT">
                                                  <block type="telegram" id="~Gak]59)R_ohwhQAG(6D">
                                                    <field name="INSTANCE">.0</field>
                                                    <field name="LOG"></field>
                                                    <field name="SILENT">FALSE</field>
                                                    <field name="PARSEMODE">default</field>
                                                    <value name="MESSAGE">
                                                      <shadow type="text" id="U][E8N^7Bu/+`G(NxN}#">
                                                        <field name="TEXT">Die Waschmaschine wurde angeschaltet</field>
                                                      </shadow>
                                                      <block type="text" id="m1iR~_xBdK;GdKQ)pTk3">
                                                        <field name="TEXT">Knitterschutz gestartet</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </statement>
                                              </block>
                                            </statement>
                                          </block>
                                        </statement>
                                        <statement name="ELSE">
                                          <block type="timeouts_cleartimeout" id="}wGFsqm^VCq)ca%bTT@O">
                                            <field name="NAME">timeout1</field>
                                          </block>
                                        </statement>
                                        <next>
                                          <block type="controls_if" id="Gr}3ElHJKOhnV;OT#(k0">
                                            <mutation else="1"></mutation>
                                            <value name="IF0">
                                              <block type="logic_compare" id="mx}}YJbMCz.DnAhYmc)g">
                                                <field name="OP">LT</field>
                                                <value name="A">
                                                  <block type="on_source" id="/gRw/2)$e_gOuY+Pk%ns">
                                                    <field name="ATTR">state.val</field>
                                                  </block>
                                                </value>
                                                <value name="B">
                                                  <block type="text" id="{zexH{O4=EP0tiO2yp7+">
                                                    <field name="TEXT">15</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <statement name="DO0">
                                              <block type="controls_if" id="lrJePpuBL0{0us[W%?*i">
                                                <value name="IF0">
                                                  <block type="logic_compare" id="S~{L:EcJ*Z$FL+xJ_B(!">
                                                    <field name="OP">GTE</field>
                                                    <value name="A">
                                                      <block type="on_source" id="moC0PBTuWi3zR:GM0Td`">
                                                        <field name="ATTR">oldState.val</field>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="text" id="AYGH)f=Xj*$m)7p{6z5g">
                                                        <field name="TEXT">15</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <statement name="DO0">
                                                  <block type="timeouts_settimeout" id="U1raJ]Me_D;w$%JwW(Hv">
                                                    <field name="NAME">timeout2</field>
                                                    <field name="DELAY">60</field>
                                                    <field name="UNIT">sec</field>
                                                    <statement name="STATEMENT">
                                                      <block type="control" id="b3NWGdz9,IcSytr#=ISq">
                                                        <mutation delay_input="false"></mutation>
                                                        <field name="OID">Meine_Geräte.0.status_trockner</field>
                                                        <field name="WITH_DELAY">FALSE</field>
                                                        <value name="VALUE">
                                                          <block type="logic_boolean" id=")|#,|PdmCZ$=4GxqQQ_g">
                                                            <field name="BOOL">TRUE</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </statement>
                                                  </block>
                                                </statement>
                                              </block>
                                            </statement>
                                            <statement name="ELSE">
                                              <block type="timeouts_cleartimeout" id="]pA)cl[picj,_omxa]@{">
                                                <field name="NAME">timeout2</field>
                                              </block>
                                            </statement>
                                            <next>
                                              <block type="controls_if" id="0KU30/v2h#W(!`#[gp76">
                                                <mutation elseif="1"></mutation>
                                                <value name="IF0">
                                                  <block type="logic_compare" id="]-Zb+?Hn_!lMC-aT9alk">
                                                    <field name="OP">EQ</field>
                                                    <value name="A">
                                                      <block type="get_value" id="ln#_*!,/omF%2!L4WRp-">
                                                        <field name="ATTR">val</field>
                                                        <field name="OID">Meine_Geräte.0.status_trockner</field>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="logic_boolean" id="pSN^b91_Se1kc2o;W4J^">
                                                        <field name="BOOL">FALSE</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <statement name="DO0">
                                                  <block type="telegram" id="i||{vH9*ebG3rYojyq#~">
                                                    <field name="INSTANCE">.0</field>
                                                    <field name="LOG"></field>
                                                    <field name="SILENT">FALSE</field>
                                                    <field name="PARSEMODE">default</field>
                                                    <value name="MESSAGE">
                                                      <shadow type="text" id="U][E8N^7Bu/+`G(NxN}#">
                                                        <field name="TEXT">Die Waschmaschine wurde angeschaltet</field>
                                                      </shadow>
                                                      <block type="text" id="Vzzqg.~Y}lOC=Vmy,[1X">
                                                        <field name="TEXT">Der Trockner wurde angeschaltet </field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </statement>
                                                <value name="IF1">
                                                  <block type="logic_compare" id="21(9~CU|XRCn:EOXk2/@">
                                                    <field name="OP">EQ</field>
                                                    <value name="A">
                                                      <block type="get_value" id="TSvo:2H{H+}IE{#M1`FO">
                                                        <field name="ATTR">val</field>
                                                        <field name="OID">Meine_Geräte.0.status_trockner</field>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="logic_boolean" id="h=.8?l5o{aiN|)W)LXh@">
                                                        <field name="BOOL">TRUE</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <statement name="DO1">
                                                  <block type="telegram" id="ed05d|bQf^sw*MK?SR-6">
                                                    <field name="INSTANCE">.0</field>
                                                    <field name="LOG"></field>
                                                    <field name="SILENT">FALSE</field>
                                                    <field name="PARSEMODE">default</field>
                                                    <value name="MESSAGE">
                                                      <shadow type="text" id="sKyyX,f?IkAZP`RFQReF">
                                                        <field name="TEXT">Die Waschmaschine ist fertig :)</field>
                                                      </shadow>
                                                      <block type="text" id="Me[sfL:79y?isrCAn~-e">
                                                        <field name="TEXT">Der Trockner ist fertig :) </field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </statement>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </next>
                                  </block>
                                </statement>
                              </block>
                            </xml>
                            

                            kann man hier einer helfen?

                            HomoranH 1 Reply Last reply
                            0
                            • S steff.h.

                              Hallo zusammen,

                              ich habe ein ähnliches Problem und versucht es hiermit zu lösen.

                              Ich werde jedoch immer mit Nachrichten zugeschüttet.

                              Der Sonoff POW ist immer angeschaltet und sollte nur bei Wattänderungen eine Nachricht schicken.

                              1. Wenn er aktiviert wurde
                              2. Wenn der Knitterschutz aktiviert wurde
                              3. Wenn der Trockner fertig ist

                              ich habe nun folgendes probiert:

                              Aufnahme11.jpg

                              <xml xmlns="http://www.w3.org/1999/xhtml">
                                <variables>
                                  <variable type="undefined" id="timeout1">timeout1</variable>
                                  <variable type="undefined" id="timeout2">timeout2</variable>
                                </variables>
                                <block type="on_ext" id="+A7wlutQO8gBfqosc.y3" x="-387" y="-12">
                                  <mutation items="1"></mutation>
                                  <field name="CONDITION">any</field>
                                  <field name="ACK_CONDITION"></field>
                                  <value name="OID0">
                                    <shadow type="field_oid" id="L[i=p{|ii-ai*/YAZ@8s">
                                      <field name="oid">sonoff.0.Trockner.ENERGY_Power</field>
                                    </shadow>
                                  </value>
                                  <statement name="STATEMENT">
                                    <block type="controls_if" id="V6]e:v6u:?I_dnQ6L_VO">
                                      <value name="IF0">
                                        <block type="logic_compare" id="YL]^MiM0C_d90EjXd7qr">
                                          <field name="OP">GT</field>
                                          <value name="A">
                                            <block type="get_value" id="yM=9zWrslsViHeXAVGm6">
                                              <field name="ATTR">val</field>
                                              <field name="OID">sonoff.0.Trockner.ENERGY_Power</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="text" id="H=g~S*6(?G/uCr~jDdCp">
                                              <field name="TEXT">50</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <statement name="DO0">
                                        <block type="control" id="vs.J|^}}{M%%SJ1bpk;V">
                                          <mutation delay_input="false"></mutation>
                                          <field name="OID">Meine_Geräte.0.status_trockner</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE">
                                            <block type="logic_boolean" id="gvfoVV5t!!Us3^C~!w.H">
                                              <field name="BOOL">FALSE</field>
                                            </block>
                                          </value>
                                        </block>
                                      </statement>
                                      <next>
                                        <block type="controls_if" id="Y?veRO*2:#`oT-H/BM5+">
                                          <mutation else="1"></mutation>
                                          <value name="IF0">
                                            <block type="logic_compare" id=":k:zLc}nC%#r^+K^Eo.(">
                                              <field name="OP">LT</field>
                                              <value name="A">
                                                <block type="on_source" id="U7o;jTuGj!Z%x*giBA4~">
                                                  <field name="ATTR">state.val</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="text" id="-Wv/soS#il1z5y*+s%mA">
                                                  <field name="TEXT">50</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <statement name="DO0">
                                            <block type="controls_if" id="UT~9*H(1tT=L|IjL$v,V">
                                              <value name="IF0">
                                                <block type="logic_compare" id="Ijf~JlR]#oy,r)6-[DD*">
                                                  <field name="OP">GTE</field>
                                                  <value name="A">
                                                    <block type="on_source" id="2*y6K4S,#@Lb:ffPeJ`$">
                                                      <field name="ATTR">oldState.val</field>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="text" id="kGM9Mt`m?YPRcKg-FEQm">
                                                      <field name="TEXT">50</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <statement name="DO0">
                                                <block type="timeouts_settimeout" id="^Q88lhsvgd-!3s?NQe9u">
                                                  <field name="NAME">timeout1</field>
                                                  <field name="DELAY">60</field>
                                                  <field name="UNIT">sec</field>
                                                  <statement name="STATEMENT">
                                                    <block type="telegram" id="~Gak]59)R_ohwhQAG(6D">
                                                      <field name="INSTANCE">.0</field>
                                                      <field name="LOG"></field>
                                                      <field name="SILENT">FALSE</field>
                                                      <field name="PARSEMODE">default</field>
                                                      <value name="MESSAGE">
                                                        <shadow type="text" id="U][E8N^7Bu/+`G(NxN}#">
                                                          <field name="TEXT">Die Waschmaschine wurde angeschaltet</field>
                                                        </shadow>
                                                        <block type="text" id="m1iR~_xBdK;GdKQ)pTk3">
                                                          <field name="TEXT">Knitterschutz gestartet</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </statement>
                                            </block>
                                          </statement>
                                          <statement name="ELSE">
                                            <block type="timeouts_cleartimeout" id="}wGFsqm^VCq)ca%bTT@O">
                                              <field name="NAME">timeout1</field>
                                            </block>
                                          </statement>
                                          <next>
                                            <block type="controls_if" id="Gr}3ElHJKOhnV;OT#(k0">
                                              <mutation else="1"></mutation>
                                              <value name="IF0">
                                                <block type="logic_compare" id="mx}}YJbMCz.DnAhYmc)g">
                                                  <field name="OP">LT</field>
                                                  <value name="A">
                                                    <block type="on_source" id="/gRw/2)$e_gOuY+Pk%ns">
                                                      <field name="ATTR">state.val</field>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="text" id="{zexH{O4=EP0tiO2yp7+">
                                                      <field name="TEXT">15</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <statement name="DO0">
                                                <block type="controls_if" id="lrJePpuBL0{0us[W%?*i">
                                                  <value name="IF0">
                                                    <block type="logic_compare" id="S~{L:EcJ*Z$FL+xJ_B(!">
                                                      <field name="OP">GTE</field>
                                                      <value name="A">
                                                        <block type="on_source" id="moC0PBTuWi3zR:GM0Td`">
                                                          <field name="ATTR">oldState.val</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="text" id="AYGH)f=Xj*$m)7p{6z5g">
                                                          <field name="TEXT">15</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO0">
                                                    <block type="timeouts_settimeout" id="U1raJ]Me_D;w$%JwW(Hv">
                                                      <field name="NAME">timeout2</field>
                                                      <field name="DELAY">60</field>
                                                      <field name="UNIT">sec</field>
                                                      <statement name="STATEMENT">
                                                        <block type="control" id="b3NWGdz9,IcSytr#=ISq">
                                                          <mutation delay_input="false"></mutation>
                                                          <field name="OID">Meine_Geräte.0.status_trockner</field>
                                                          <field name="WITH_DELAY">FALSE</field>
                                                          <value name="VALUE">
                                                            <block type="logic_boolean" id=")|#,|PdmCZ$=4GxqQQ_g">
                                                              <field name="BOOL">TRUE</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </statement>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </statement>
                                              <statement name="ELSE">
                                                <block type="timeouts_cleartimeout" id="]pA)cl[picj,_omxa]@{">
                                                  <field name="NAME">timeout2</field>
                                                </block>
                                              </statement>
                                              <next>
                                                <block type="controls_if" id="0KU30/v2h#W(!`#[gp76">
                                                  <mutation elseif="1"></mutation>
                                                  <value name="IF0">
                                                    <block type="logic_compare" id="]-Zb+?Hn_!lMC-aT9alk">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="get_value" id="ln#_*!,/omF%2!L4WRp-">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">Meine_Geräte.0.status_trockner</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="logic_boolean" id="pSN^b91_Se1kc2o;W4J^">
                                                          <field name="BOOL">FALSE</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO0">
                                                    <block type="telegram" id="i||{vH9*ebG3rYojyq#~">
                                                      <field name="INSTANCE">.0</field>
                                                      <field name="LOG"></field>
                                                      <field name="SILENT">FALSE</field>
                                                      <field name="PARSEMODE">default</field>
                                                      <value name="MESSAGE">
                                                        <shadow type="text" id="U][E8N^7Bu/+`G(NxN}#">
                                                          <field name="TEXT">Die Waschmaschine wurde angeschaltet</field>
                                                        </shadow>
                                                        <block type="text" id="Vzzqg.~Y}lOC=Vmy,[1X">
                                                          <field name="TEXT">Der Trockner wurde angeschaltet </field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </statement>
                                                  <value name="IF1">
                                                    <block type="logic_compare" id="21(9~CU|XRCn:EOXk2/@">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="get_value" id="TSvo:2H{H+}IE{#M1`FO">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">Meine_Geräte.0.status_trockner</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="logic_boolean" id="h=.8?l5o{aiN|)W)LXh@">
                                                          <field name="BOOL">TRUE</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO1">
                                                    <block type="telegram" id="ed05d|bQf^sw*MK?SR-6">
                                                      <field name="INSTANCE">.0</field>
                                                      <field name="LOG"></field>
                                                      <field name="SILENT">FALSE</field>
                                                      <field name="PARSEMODE">default</field>
                                                      <value name="MESSAGE">
                                                        <shadow type="text" id="sKyyX,f?IkAZP`RFQReF">
                                                          <field name="TEXT">Die Waschmaschine ist fertig :)</field>
                                                        </shadow>
                                                        <block type="text" id="Me[sfL:79y?isrCAn~-e">
                                                          <field name="TEXT">Der Trockner ist fertig :) </field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </statement>
                                </block>
                              </xml>
                              

                              kann man hier einer helfen?

                              HomoranH Offline
                              HomoranH Offline
                              Homoran
                              Global Moderator Administrators
                              wrote on last edited by
                              #19

                              @steff-h sagte in Verbrauchsschwankung mit Blockly erkennen:

                              Ich werde jedoch immer mit Nachrichten zugeschüttet

                              Du solltest unbedingt mal die Daten hochauflösend loggen und dir danach die Kurve ansehen.

                              Die Werte schwanken bei odernen Maschinen kurzfristig gewaltig

                              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                              1 Reply Last reply
                              0
                              • XxJooOX Offline
                                XxJooOX Offline
                                XxJooO
                                wrote on last edited by XxJooO
                                #20

                                @steff-h ,

                                Hallo, schau Dir doch mal mein unten aufgeführtes Waschmaschinen-Blockly an. Dein Problem liegt wahrscheinlich darin, dass der Sonoff-Pow ständig die Werte ändert, da auch der Trockner sekündlich den Wert ändert und das auch gerne unter 50 und in der nächsten Sekunde wieder über 50. Deshalb wird ständig getriggert und telegram schickt was. Das Script von unten schaut nach, ob sich die Werte fünf mal hintereinander unter 2 befinden um dann zu triggern. Versuch es mal.

                                Grüße

                                PS: @Homoran war schneller, aber er weist auf das Gleiche hin...

                                <xml xmlns="http://www.w3.org/1999/xhtml">
                                  <block type="on_ext" id="{@YbEO81jP45_Wv%`G~V" x="-387" y="-12">
                                    <mutation items="1"></mutation>
                                    <field name="CONDITION">any</field>
                                    <field name="ACK_CONDITION"></field>
                                    <value name="OID0">
                                      <shadow type="field_oid" id="KKMh9]1;JU;y)l~O1?:8">
                                        <field name="oid">sonoff.0.Sonoff-Pow-Waschmaschine.ENERGY_Power</field>
                                      </shadow>
                                    </value>
                                    <statement name="STATEMENT">
                                      <block type="controls_if" id="Tz-/aRLZ%6yfRg?~!ASl">
                                        <mutation elseif="1"></mutation>
                                        <value name="IF0">
                                          <block type="logic_compare" id="RFQ:hZTWTn+0fqk3L{(-">
                                            <field name="OP">GT</field>
                                            <value name="A">
                                              <block type="get_value" id="3%TT^X~(Q5aB}Y4s]Fya">
                                                <field name="ATTR">val</field>
                                                <field name="OID">sonoff.0.Sonoff-Pow-Waschmaschine.ENERGY_Power</field>
                                              </block>
                                            </value>
                                            <value name="B">
                                              <block type="text" id="(,:]5Jvy-G1K(g[v@jo1">
                                                <field name="TEXT">50</field>
                                              </block>
                                            </value>
                                          </block>
                                        </value>
                                        <statement name="DO0">
                                          <block type="control" id="QTzY}_ond~G]B|eRA@Lq">
                                            <mutation delay_input="false"></mutation>
                                            <field name="OID">Eigene.Objekte.Geräte.Waschmaschine_ist_fertig</field>
                                            <field name="WITH_DELAY">FALSE</field>
                                            <value name="VALUE">
                                              <block type="logic_boolean" id="Gyn`!|3.4qS].:ColIeT">
                                                <field name="BOOL">FALSE</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="control" id="R_3nkOj][E%u?2Ta37bz">
                                                <mutation delay_input="false"></mutation>
                                                <field name="OID">Eigene.Objekte.Geräte.Waschmaschinenzähler</field>
                                                <field name="WITH_DELAY">FALSE</field>
                                                <value name="VALUE">
                                                  <block type="math_number" id="pcO^t|l4y.THVnNo|?oL">
                                                    <field name="NUM">0</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </next>
                                          </block>
                                        </statement>
                                        <value name="IF1">
                                          <block type="logic_compare" id="^9/A}3)3rA2pc/6=/Fto">
                                            <field name="OP">LT</field>
                                            <value name="A">
                                              <block type="get_value" id="?-}lTJ41aADEukuCBat3">
                                                <field name="ATTR">val</field>
                                                <field name="OID">sonoff.0.Sonoff-Pow-Waschmaschiene.ENERGY_Power</field>
                                              </block>
                                            </value>
                                            <value name="B">
                                              <block type="text" id="8DfHDB3lV*UAzbe]eVcU">
                                                <field name="TEXT">2</field>
                                              </block>
                                            </value>
                                          </block>
                                        </value>
                                        <statement name="DO1">
                                          <block type="control" id="QHrg0]k0wr3PfuIBsJ!H">
                                            <mutation delay_input="false"></mutation>
                                            <field name="OID">Eigene.Objekte.Geräte.Waschmaschinenzähler</field>
                                            <field name="WITH_DELAY">FALSE</field>
                                            <value name="VALUE">
                                              <block type="math_arithmetic" id="y5NO*~^U!3rZvPOP}p99">
                                                <field name="OP">ADD</field>
                                                <value name="A">
                                                  <shadow type="math_number" id="t46p(Xt/QEC^LOTi^kh.">
                                                    <field name="NUM">1</field>
                                                  </shadow>
                                                  <block type="get_value" id="2]a3oM=PJFvB4]:F.TIb">
                                                    <field name="ATTR">val</field>
                                                    <field name="OID">Eigene.Objekte.Geräte.Waschmaschinenzähler</field>
                                                  </block>
                                                </value>
                                                <value name="B">
                                                  <shadow type="math_number" id="/EXgdR6@K[OZ{2@{wFqV">
                                                    <field name="NUM">1</field>
                                                  </shadow>
                                                </value>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="controls_if" id="%jHtAnbRrA:ES!]M#.]4">
                                                <value name="IF0">
                                                  <block type="logic_compare" id="eK!*/64GQzj7ul5[1o{U">
                                                    <field name="OP">GT</field>
                                                    <value name="A">
                                                      <block type="get_value" id="MT]e.aRY7#gDKM^5KLGE">
                                                        <field name="ATTR">val</field>
                                                        <field name="OID">Eigene.Objekte.Geräte.Waschmaschinenzähler</field>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="text" id="qFtDNlGvc.Q0Rw`l:-q)">
                                                        <field name="TEXT">5</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <statement name="DO0">
                                                  <block type="control" id="E;!{Y_v+cv8eJL.:x7`K">
                                                    <mutation delay_input="false"></mutation>
                                                    <field name="OID">Eigene.Objekte.Geräte.Waschmaschine_ist_fertig</field>
                                                    <field name="WITH_DELAY">FALSE</field>
                                                    <value name="VALUE">
                                                      <block type="logic_boolean" id="7@H~{7M{YLo51xL/@?0P">
                                                        <field name="BOOL">TRUE</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </statement>
                                              </block>
                                            </next>
                                          </block>
                                        </statement>
                                      </block>
                                    </statement>
                                    <next>
                                      <block type="on_ext" id="^bjX`z`(c6|NOE7od8m{">
                                        <mutation items="1"></mutation>
                                        <field name="CONDITION">ne</field>
                                        <field name="ACK_CONDITION"></field>
                                        <value name="OID0">
                                          <shadow type="field_oid" id="p(Y8#7ya#8V)V_r=L|AY">
                                            <field name="oid">Eigene.Objekte.Geräte.Waschmaschine_ist_fertig</field>
                                          </shadow>
                                        </value>
                                        <statement name="STATEMENT">
                                          <block type="controls_if" id="c}KW,NC~y{R3,GHaCdm~">
                                            <mutation elseif="1"></mutation>
                                            <value name="IF0">
                                              <block type="logic_compare" id="2VfDCLfBt@w0Tz+8/vyY">
                                                <field name="OP">EQ</field>
                                                <value name="A">
                                                  <block type="get_value" id="*yVKM0%[r~#@JMQE.-[=">
                                                    <field name="ATTR">val</field>
                                                    <field name="OID">Eigene.Objekte.Geräte.Waschmaschine_ist_fertig</field>
                                                  </block>
                                                </value>
                                                <value name="B">
                                                  <block type="logic_boolean" id="3-+a.bG=Tt}oj`jYJ1l^">
                                                    <field name="BOOL">FALSE</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <statement name="DO0">
                                              <block type="telegram" id="2oPfv{ptPp%y[jwp^@?0">
                                                <field name="INSTANCE"></field>
                                                <field name="LOG"></field>
                                                <field name="SILENT">FALSE</field>
                                                <field name="PARSEMODE">default</field>
                                                <value name="MESSAGE">
                                                  <shadow type="text" id="lLV8E7P8=x,g1j.M[`#-">
                                                    <field name="TEXT">Die Waschmaschine wurde angeschaltet</field>
                                                  </shadow>
                                                </value>
                                              </block>
                                            </statement>
                                            <value name="IF1">
                                              <block type="logic_compare" id="BLPv?Av{QCjSZwz2C9o7">
                                                <field name="OP">EQ</field>
                                                <value name="A">
                                                  <block type="get_value" id="f-.T9%q:49F7M`dkh*/S">
                                                    <field name="ATTR">val</field>
                                                    <field name="OID">Eigene.Objekte.Geräte.Waschmaschine_ist_fertig</field>
                                                  </block>
                                                </value>
                                                <value name="B">
                                                  <block type="logic_boolean" id="Bb2WzPjc27[}p;0e{z^U">
                                                    <field name="BOOL">TRUE</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <statement name="DO1">
                                              <block type="telegram" id="VxKMn*kukZ9.LFX4,|f`">
                                                <field name="INSTANCE"></field>
                                                <field name="LOG"></field>
                                                <field name="SILENT">FALSE</field>
                                                <field name="PARSEMODE">default</field>
                                                <value name="MESSAGE">
                                                  <shadow type="text" id="sKyyX,f?IkAZP`RFQReF">
                                                    <field name="TEXT">Die Waschmaschine ist fertig :)</field>
                                                  </shadow>
                                                  <block type="text_join" id="2Bypwm1zS{+O,h,dTXo~">
                                                    <mutation items="4"></mutation>
                                                    <value name="ADD0">
                                                      <block type="text" id="U5)QI0lF+t{v~!!J9xIy">
                                                        <field name="TEXT">Die Waschmaschine ist fertig :) </field>
                                                      </block>
                                                    </value>
                                                    <value name="ADD1">
                                                      <block type="text" id="LIrrEjix9%X6_)#kLm1@">
                                                        <field name="TEXT">Und du hast heute </field>
                                                      </block>
                                                    </value>
                                                    <value name="ADD2">
                                                      <block type="get_value" id="t5.cTL2%]q_%0uPV/`OE">
                                                        <field name="ATTR">val</field>
                                                        <field name="OID">sonoff.0.Sonoff-Pow-Waschmaschiene.ENERGY_Today</field>
                                                      </block>
                                                    </value>
                                                    <value name="ADD3">
                                                      <block type="text" id="5L;wo|S(tD#i{u=}N(ig">
                                                        <field name="TEXT"> kWh beim Waschen verbraucht.</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                              </block>
                                            </statement>
                                          </block>
                                        </statement>
                                      </block>
                                    </next>
                                  </block>
                                </xml>
                                

                                ioBroker auf Intel NUC - Homematic CCU3/pivCCU auf Raspi 3B+

                                1 Reply Last reply
                                0
                                • S Offline
                                  S Offline
                                  steff.h.
                                  wrote on last edited by
                                  #21

                                  danke dir, baue es mal mit ein und teste 🙂

                                  1 Reply Last reply
                                  0
                                  • S Offline
                                    S Offline
                                    steff.h.
                                    wrote on last edited by
                                    #22

                                    also das mit dem Zähler fand ich jetzt für mich die nicht 100% Lösung...

                                    Hab es jetzt mal mit Timer probiert, in der Testumgebung (virtuellen Zahlen) hat es gut funktioniert, mal sehen wie es in der Praxis läuft 🙂

                                    <xml xmlns="http://www.w3.org/1999/xhtml">
                                      <variables>
                                        <variable type="undefined" id="timer_Knitterschutz">timer_Knitterschutz</variable>
                                        <variable type="undefined" id="timer_fertig">timer_fertig</variable>
                                        <variable type="undefined" id="timer_start">timer_start</variable>
                                      </variables>
                                      <block type="on_ext" id="{@YbEO81jP45_Wv%`G~V" x="-387" y="-12">
                                        <mutation items="1"></mutation>
                                        <field name="CONDITION">any</field>
                                        <field name="ACK_CONDITION"></field>
                                        <value name="OID0">
                                          <shadow type="field_oid" id="KKMh9]1;JU;y)l~O1?:8">
                                            <field name="oid">eigene_Geräte.0.Trockner.Trockner</field>
                                          </shadow>
                                        </value>
                                        <statement name="STATEMENT">
                                          <block type="controls_if" id="Tz-/aRLZ%6yfRg?~!ASl">
                                            <mutation elseif="1"></mutation>
                                            <value name="IF0">
                                              <block type="logic_compare" id="RFQ:hZTWTn+0fqk3L{(-">
                                                <field name="OP">GT</field>
                                                <value name="A">
                                                  <block type="get_value" id="3%TT^X~(Q5aB}Y4s]Fya">
                                                    <field name="ATTR">val</field>
                                                    <field name="OID">eigene_Geräte.0.Trockner.Trockner</field>
                                                  </block>
                                                </value>
                                                <value name="B">
                                                  <block type="text" id="(,:]5Jvy-G1K(g[v@jo1">
                                                    <field name="TEXT">200</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <statement name="DO0">
                                              <block type="timeouts_cleartimeout" id="GDB?IltR,Hog?lZkj@Ri">
                                                <field name="NAME">timer_fertig</field>
                                                <next>
                                                  <block type="timeouts_cleartimeout" id="MxsxpE}%wX+vOka^6sJE">
                                                    <field name="NAME">timer_Knitterschutz</field>
                                                    <next>
                                                      <block type="timeouts_settimeout" id="%sP/]s/Wq[CN5Cr)ZXcE">
                                                        <field name="NAME">timer_start</field>
                                                        <field name="DELAY">30</field>
                                                        <field name="UNIT">sec</field>
                                                        <statement name="STATEMENT">
                                                          <block type="control" id="QTzY}_ond~G]B|eRA@Lq">
                                                            <mutation delay_input="false"></mutation>
                                                            <field name="OID">eigene_Geräte.0.Trockner.Trockner_fertig</field>
                                                            <field name="WITH_DELAY">FALSE</field>
                                                            <value name="VALUE">
                                                              <block type="logic_boolean" id="Gyn`!|3.4qS].:ColIeT">
                                                                <field name="BOOL">FALSE</field>
                                                              </block>
                                                            </value>
                                                            <next>
                                                              <block type="control" id="dCPQU95vaZjskHy8WfRw">
                                                                <mutation delay_input="false"></mutation>
                                                                <field name="OID">eigene_Geräte.0.Trockner.Trockner_Knitterschutz</field>
                                                                <field name="WITH_DELAY">FALSE</field>
                                                                <value name="VALUE">
                                                                  <block type="logic_boolean" id="m_m~oziSEG8Vbxg9hS]0">
                                                                    <field name="BOOL">FALSE</field>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </statement>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </statement>
                                            <value name="IF1">
                                              <block type="logic_compare" id="^9/A}3)3rA2pc/6=/Fto">
                                                <field name="OP">LT</field>
                                                <value name="A">
                                                  <block type="get_value" id="?-}lTJ41aADEukuCBat3">
                                                    <field name="ATTR">val</field>
                                                    <field name="OID">eigene_Geräte.0.Trockner.Trockner</field>
                                                  </block>
                                                </value>
                                                <value name="B">
                                                  <block type="text" id="8DfHDB3lV*UAzbe]eVcU">
                                                    <field name="TEXT">5</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <statement name="DO1">
                                              <block type="timeouts_cleartimeout" id="OdwG.CwD~j,[RvL`/$Y7">
                                                <field name="NAME">timer_start</field>
                                                <next>
                                                  <block type="timeouts_settimeout" id="T.AsjIcgdlrs;ME/eGv7">
                                                    <field name="NAME">timer_Knitterschutz</field>
                                                    <field name="DELAY">20</field>
                                                    <field name="UNIT">sec</field>
                                                    <statement name="STATEMENT">
                                                      <block type="control" id="QHrg0]k0wr3PfuIBsJ!H">
                                                        <mutation delay_input="false"></mutation>
                                                        <field name="OID">eigene_Geräte.0.Trockner.Trockner_Knitterschutz</field>
                                                        <field name="WITH_DELAY">FALSE</field>
                                                        <value name="VALUE">
                                                          <block type="logic_boolean" id="l3U+F]JlZaL11c5(J`P]">
                                                            <field name="BOOL">TRUE</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </statement>
                                                    <next>
                                                      <block type="timeouts_settimeout" id="`gsfK+4~NVuy0`cutC,Q">
                                                        <field name="NAME">timer_fertig</field>
                                                        <field name="DELAY">5</field>
                                                        <field name="UNIT">min</field>
                                                        <statement name="STATEMENT">
                                                          <block type="control" id="ZD!YyTw9oj8G~fNS1,Rh">
                                                            <mutation delay_input="false"></mutation>
                                                            <field name="OID">eigene_Geräte.0.Trockner.Trockner_fertig</field>
                                                            <field name="WITH_DELAY">FALSE</field>
                                                            <value name="VALUE">
                                                              <block type="logic_boolean" id="yvf2u7C=BrSJ08v;SWbf">
                                                                <field name="BOOL">TRUE</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </statement>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </statement>
                                          </block>
                                        </statement>
                                        <next>
                                          <block type="on_ext" id="Q94+tPd)Uj`%l=N7ri-f">
                                            <mutation items="1"></mutation>
                                            <field name="CONDITION">ne</field>
                                            <field name="ACK_CONDITION"></field>
                                            <value name="OID0">
                                              <shadow type="field_oid" id="kS?`eSEel]v1S.F]V.*x">
                                                <field name="oid">eigene_Geräte.0.Trockner.Trockner_Knitterschutz</field>
                                              </shadow>
                                            </value>
                                            <statement name="STATEMENT">
                                              <block type="controls_if" id="?iCVZFXaeJEzUKNC8k!r">
                                                <mutation elseif="1"></mutation>
                                                <value name="IF0">
                                                  <block type="logic_compare" id="[(T!mZH}Nvn*dCCtr6u.">
                                                    <field name="OP">EQ</field>
                                                    <value name="A">
                                                      <block type="get_value" id="?ZYV1).sdAbe33eT9UVJ">
                                                        <field name="ATTR">val</field>
                                                        <field name="OID">eigene_Geräte.0.Trockner.Trockner_Knitterschutz</field>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="logic_boolean" id="#yWUf6y]^$tg{WVtm/;*">
                                                        <field name="BOOL">TRUE</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <statement name="DO0">
                                                  <block type="telegram" id="O+6t}Cv2l-_thLLhPiHJ">
                                                    <field name="INSTANCE">.0</field>
                                                    <field name="LOG"></field>
                                                    <field name="SILENT">FALSE</field>
                                                    <field name="PARSEMODE">default</field>
                                                    <value name="MESSAGE">
                                                      <shadow type="text" id="lLV8E7P8=x,g1j.M[`#-">
                                                        <field name="TEXT">Die Waschmaschine wurde angeschaltet</field>
                                                      </shadow>
                                                      <block type="text" id="XVOEYo.x?twa;r+MeYGc">
                                                        <field name="TEXT">Der Trockner startet den Knitterschutz ! </field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </statement>
                                                <value name="IF1">
                                                  <block type="logic_compare" id="2VfDCLfBt@w0Tz+8/vyY">
                                                    <field name="OP">EQ</field>
                                                    <value name="A">
                                                      <block type="get_value" id="*yVKM0%[r~#@JMQE.-[=">
                                                        <field name="ATTR">val</field>
                                                        <field name="OID">eigene_Geräte.0.Trockner.Trockner_Knitterschutz</field>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="logic_boolean" id="3-+a.bG=Tt}oj`jYJ1l^">
                                                        <field name="BOOL">FALSE</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <statement name="DO1">
                                                  <block type="telegram" id="2oPfv{ptPp%y[jwp^@?0">
                                                    <field name="INSTANCE">.0</field>
                                                    <field name="LOG"></field>
                                                    <field name="SILENT">FALSE</field>
                                                    <field name="PARSEMODE">default</field>
                                                    <value name="MESSAGE">
                                                      <shadow type="text" id="lLV8E7P8=x,g1j.M[`#-">
                                                        <field name="TEXT">Die Waschmaschine wurde angeschaltet</field>
                                                      </shadow>
                                                      <block type="text" id="CRLGpd#_}:2;FaGp^8aD">
                                                        <field name="TEXT">Der Trockner wurde angeschaltet </field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </statement>
                                              </block>
                                            </statement>
                                            <next>
                                              <block type="on_ext" id="^bjX`z`(c6|NOE7od8m{">
                                                <mutation items="1"></mutation>
                                                <field name="CONDITION">ne</field>
                                                <field name="ACK_CONDITION"></field>
                                                <value name="OID0">
                                                  <shadow type="field_oid" id="p(Y8#7ya#8V)V_r=L|AY">
                                                    <field name="oid">eigene_Geräte.0.Trockner.Trockner_fertig</field>
                                                  </shadow>
                                                </value>
                                                <statement name="STATEMENT">
                                                  <block type="controls_if" id="c}KW,NC~y{R3,GHaCdm~">
                                                    <value name="IF0">
                                                      <block type="logic_compare" id="BLPv?Av{QCjSZwz2C9o7">
                                                        <field name="OP">EQ</field>
                                                        <value name="A">
                                                          <block type="get_value" id="f-.T9%q:49F7M`dkh*/S">
                                                            <field name="ATTR">val</field>
                                                            <field name="OID">eigene_Geräte.0.Trockner.Trockner_fertig</field>
                                                          </block>
                                                        </value>
                                                        <value name="B">
                                                          <block type="logic_boolean" id="Bb2WzPjc27[}p;0e{z^U">
                                                            <field name="BOOL">TRUE</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                    <statement name="DO0">
                                                      <block type="telegram" id="VxKMn*kukZ9.LFX4,|f`">
                                                        <field name="INSTANCE">.0</field>
                                                        <field name="LOG"></field>
                                                        <field name="SILENT">FALSE</field>
                                                        <field name="PARSEMODE">default</field>
                                                        <value name="MESSAGE">
                                                          <shadow type="text" id="sKyyX,f?IkAZP`RFQReF">
                                                            <field name="TEXT">Die Waschmaschine ist fertig :)</field>
                                                          </shadow>
                                                          <block type="text" id="U5)QI0lF+t{v~!!J9xIy">
                                                            <field name="TEXT">Der Trockner ist fertig :) </field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </statement>
                                                  </block>
                                                </statement>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </xml>
                                    
                                    1 Reply Last reply
                                    0
                                    • OliverIOO Offline
                                      OliverIOO Offline
                                      OliverIO
                                      wrote on last edited by
                                      #23

                                      und wenns genauer aber komplexer werden sollte,
                                      dann noch was mit gleitendem durchschnitt
                                      http://www.iobroker.net/docu/?page_id=3670&lang=de

                                      Das hier sind deine Daten aus der Excel mit einem gleitenden Durchschnitt (schwarze linie) von 50

                                      7cddb03a-dc76-4bc2-bbba-7ce3c40d4927-image.png

                                      zum selber ausprobieren:
                                      hier links die daten mit watt als datenreihe 1
                                      dann rechts die 2 spalte mit dem timestamp
                                      danach in das erzeugte diagramm auf die datenlinie mit rechte maustaste klicken und trendlinie hinzufügen. gleitender druchschnitt wählen und mit zeitraum rumspielen (hier mit 50)
                                      73a106f6-672b-4988-aa54-73854194f71b-image.png

                                      das oben genannte skript müsste man so anpassen, dass für die verbrauchsdaten der letzen ca 30 sekunden bis 1 minute Daten in der liste wären und darüber dann durchjagen

                                      aber wie gesagt, genauer aber auch komplizierter

                                      Meine Adapter und Widgets
                                      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                      Links im Profil

                                      paul53P 1 Reply Last reply
                                      0
                                      • OliverIOO OliverIO

                                        und wenns genauer aber komplexer werden sollte,
                                        dann noch was mit gleitendem durchschnitt
                                        http://www.iobroker.net/docu/?page_id=3670&lang=de

                                        Das hier sind deine Daten aus der Excel mit einem gleitenden Durchschnitt (schwarze linie) von 50

                                        7cddb03a-dc76-4bc2-bbba-7ce3c40d4927-image.png

                                        zum selber ausprobieren:
                                        hier links die daten mit watt als datenreihe 1
                                        dann rechts die 2 spalte mit dem timestamp
                                        danach in das erzeugte diagramm auf die datenlinie mit rechte maustaste klicken und trendlinie hinzufügen. gleitender druchschnitt wählen und mit zeitraum rumspielen (hier mit 50)
                                        73a106f6-672b-4988-aa54-73854194f71b-image.png

                                        das oben genannte skript müsste man so anpassen, dass für die verbrauchsdaten der letzen ca 30 sekunden bis 1 minute Daten in der liste wären und darüber dann durchjagen

                                        aber wie gesagt, genauer aber auch komplizierter

                                        paul53P Offline
                                        paul53P Offline
                                        paul53
                                        wrote on last edited by paul53
                                        #24

                                        @OliverW sagte:

                                        was mit gleitendem durchschnitt

                                        Ersetze bitte Zeile 34

                                          setState(avrid, parseFloat((sum / n).toFixed(1)));
                                        

                                        durch

                                          setState(avrid, Math.round(10 * sum / n) / 10, true); // 1 Nachkommastelle
                                        

                                        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

                                        1 Reply Last reply
                                        0
                                        Reply
                                        • Reply as topic
                                        Log in to reply
                                        • Oldest to Newest
                                        • Newest to Oldest
                                        • Most Votes


                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        127

                                        Online

                                        32.4k

                                        Users

                                        81.3k

                                        Topics

                                        1.3m

                                        Posts
                                        Community
                                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                        ioBroker Community 2014-2025
                                        logo
                                        • Login

                                        • Don't have an account? Register

                                        • Login or register to search.
                                        • First post
                                          Last post
                                        0
                                        • Recent
                                        • Tags
                                        • Unread 0
                                        • Categories
                                        • Unreplied
                                        • Popular
                                        • GitHub
                                        • Docu
                                        • Hilfe