Betriebsminuten zählen um bestimmte Geräte einzuschränken

  • hi

    Habe folgende konstallation. Es arbeitet ein Entfeuchter mit knapp 1KW max an einem Shelly plug und sammelt die Stromwerte ein. Zusätzlich werden Temperatur und Feuchtigkeitswerte aus 9 Sensoren gesammelt, gemittelt und eingebunden. Dazu wird dieser noch mit 4 Fenster Motoren unterstützt und es gibt eine Zeitliche Nachtabschaltung und eine Benachrichtigung bei Anwesendheit über einen Echo.

    So viel zum Grundaufbau.

    Zusätzlich hätte ich gern eine Art eine Art Betriebsstundenzähler (in Minuten ) um das Gerät einzuschränken. Durch die Vielzahl an Bedingungen läuft er nicht durchgehend, sondern geht hier und da mal für 10 - 30 min an. Praktisch wäre jetzt wenn 300 min täglich ausreichen um das gewünschte Ziel zu erreichen, das er dann den Rest des Tages eine Pause einlegt und erst am nächsten Tag mit dem zählen neu beginnt.

    Zunächst sollte erst einmal der aktuelle Tag erkannt werden und dann die Laufzeit des Tages. Diese sollte dann immer weiter auf Addiert werden. Im Idealfall wird daraus ein separater Datenpunkt ( Betriebsminuten ) geschrieben den man dann evtl für andere Projekte verwenden kann. Ob man das direkt im Skript löst oder ein separates angelegt wird ist vorerst zweitrangig.

    Bin für alle Lösungsansätze dankbar.

  • Interessanter Ansatz!

    ich hatte erst an tiemeout 1 min gedacht und diesen dann immer Aufzuaddieren, aber so sollte es ganz genau werden.

    Wie sieht denn ein solcher Aufbau im groben aus?

    Zeitstempel?

    Sorry bis her hatte ich immer auf Aktionen eine Reaktion aber Zeit zählen ist jetzt mal was ganz neues für mich.

  • wäre nicht schlecht dann kann ich mir mal ein Bild machen. Die Zeit hätte ich schon über die uptime vom shelly berechnen können, allerdings ist damit noch nicht das Problem mit dem Tag gelöst.

  • Habe dir mal fix ein Beispiel für eine endlose Zählung der Betriebsminuten gebastelt.

    Spoiler anzeigen

    <xml xmlns="https://developers.google.com/blockly/xml">

    <block type="comment" id="RxLMg3HR;2@LZ7igKP:," x="-387" y="-287">

    <field name="COMMENT">Das Gerät</field>

    </block>

    <block type="on_ext" id="hSFcSi%zf)S{`fH:Ofht" x="-612" y="-262">

    <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>

    <field name="CONDITION">ne</field>

    <field name="ACK_CONDITION"></field>

    <value name="OID0">

    <shadow type="field_oid" id="XwN?+bl~{?b.w0x@R#tR">

    <field name="oid">default</field>

    </shadow>

    </value>

    <statement name="STATEMENT">

    <block type="controls_if" id="ujr|aH?=V-|7}nA1s:z;">

    <mutation else="1"></mutation>

    <value name="IF0">

    <block type="logic_boolean" id="mt*}O0dn/j7XTVE@qURf">

    <field name="BOOL">TRUE</field>

    </block>

    </value>

    <statement name="DO0">

    <block type="comment" id="e^KcLuwu=eL4ua]),r+e">

    <field name="COMMENT">MerkerVariable Zeitpunkt AN</field>

    <next>

    <block type="update" id="9Zes)-MOKQ+q@`AX/Wf|">

    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>

    <field name="OID">Object ID</field>

    <field name="WITH_DELAY">FALSE</field>

    <value name="VALUE">

    <block type="convert_from_date" id="RzS(md!/?%po;BPZqK5K">

    <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>

    <field name="OPTION">s</field>

    <value name="VALUE">

    <block type="get_value" id="n:KJJbr-f=?GG,N~Ihu^">

    <field name="ATTR">ts</field>

    <field name="OID">ID auswählen</field>

    </block>

    </value>

    </block>

    </value>

    </block>

    </next>

    </block>

    </statement>

    <statement name="ELSE">

    <block type="comment" id="AAY[GmWoQzl;ww6DS95e">

    <field name="COMMENT">MerkerVariable Zeitpunkt AUS</field>

    <next>

    <block type="update" id="NUmr2%/=`4],zbSsi6e!">

    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>

    <field name="OID">Object ID</field>

    <field name="WITH_DELAY">FALSE</field>

    <value name="VALUE">

    <block type="convert_from_date" id="(UCN78o_pQur*gsdb9(H">

    <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>

    <field name="OPTION">s</field>

    <value name="VALUE">

    <block type="get_value" id="Wj}s,.]ox`#uQS~oOpEG">

    <field name="ATTR">ts</field>

    <field name="OID">ID auswählen</field>

    </block>

    </value>

    </block>

    </value>

    </block>

    </next>

    </block>

    </statement>

    </block>

    </statement>

    </block>

    <block type="comment" id="Q(H]RITIi;^Oj3~n/]W3" x="-12" y="-162">

    <field name="COMMENT">Das Gerät</field>

    </block>

    <block type="comment" id="IWpe5@pl3*Zx/5-Rt?np" x="-12" y="-62">

    <field name="COMMENT">Das Gerät</field>

    </block>

    <block type="comment" id="fpL9DE#~nU%RzTlEAaO%" x="-437" y="38">

    <field name="COMMENT">MerkerVariable Zeitpunkt AUS</field>

    </block>

    <block type="on_ext" id="Uz$=Zi6{]ZFzKa2|zxT8" x="-577" y="68">

    <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>

    <field name="CONDITION">ne</field>

    <field name="ACK_CONDITION"></field>

    <value name="OID0">

    <shadow type="field_oid" id="B}mJc?@6K-o]Z%Cbig`C">

    <field name="oid">default</field>

    </shadow>

    </value>

    <statement name="STATEMENT">

    <block type="comment" id=")Zh$qx?]bT)43mi]`uA4">

    <field name="COMMENT">MerkerVariable Betriebssekunden</field>

    <next>

    <block type="update" id="li@qKrWNbMykJ=aGh6Ru">

    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>

    <field name="OID">Object ID</field>

    <field name="WITH_DELAY">FALSE</field>

    <value name="VALUE">

    <block type="math_arithmetic" id="#r!r5edJUP3PRxsuD_dA">

    <field name="OP">MINUS</field>

    <value name="A">

    <shadow type="math_number" id="0gB;(1w9wk+T?3^9theX">

    <field name="NUM">1</field>

    </shadow>

    </value>

    <value name="B">

    <shadow type="math_number" id="]$Zort@J7Y-Bq[ZH`0`h">

    <field name="NUM">1</field>

    </shadow>

    </value>

    </block>

    </value>

    </block>

    </next>

    </block>

    </statement>

    </block>

    <block type="comment" id="bgpEvA1c/cX)=x@|Y(p^" x="-312" y="138">

    <field name="COMMENT">MerkerVariable Zeitpunkt AN</field>

    </block>

    <block type="comment" id="6.Oik$z=V3GdTOU)leJ`" x="-112" y="138">

    <field name="COMMENT">-</field>

    </block>

    <block type="comment" id="w;`(a|0f+cN-^Dn%0^;%" x="-87" y="138">

    <field name="COMMENT">MerkerVariable Zeitpunkt AUS</field>

    </block>

    <block type="comment" id="j`^*Ymj%=%`f6Q`)]g^O" x="-412" y="263">

    <field name="COMMENT">MerkerVariable Betriebssekunden</field>

    </block>

    <block type="on_ext" id="z8u=L^#XZqJyu1Y8=4eL" x="-587" y="288">

    <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>

    <field name="CONDITION">ne</field>

    <field name="ACK_CONDITION"></field>

    <value name="OID0">

    <shadow type="field_oid" id="vD~s^}a%$!*T9qNWGuo9">

    <field name="oid">default</field>

    </shadow>

    </value>

    <statement name="STATEMENT">

    <block type="comment" id="EQ]1U/wU),tsa~]Osi=_">

    <field name="COMMENT">MerkerVariable Betriebsminuten</field>

    <next>

    <block type="update" id="7=qP9-XahM|%Dlc}GAaa">

    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>

    <field name="OID">Object ID</field>

    <field name="WITH_DELAY">FALSE</field>

    <value name="VALUE">

    <block type="math_rndfixed" id="op]v/@bV(x8G(^gp@rp.">

    <field name="n">3</field>

    <value name="x">

    <shadow type="math_number" id="/.]9wK#6~_-M7S2+ZxK]">

    <field name="NUM">3.1234</field>

    </shadow>

    <block type="math_arithmetic" id="!lf@+NLB[p:Mm+tWf`No">

    <field name="OP">ADD</field>

    <value name="A">

    <shadow type="math_number" id="m#R0%[vXqU^#78jYV+!}">

    <field name="NUM">1</field>

    </shadow>

    </value>

    <value name="B">

    <shadow type="math_number" id="WQ-b))L!-qjW7=,i=39p">

    <field name="NUM">1</field>

    </shadow>

    <block type="math_arithmetic" id="OQe!dqL`z!BD*)WB,G*J">

    <field name="OP">DIVIDE</field>

    <value name="A">

    <shadow type="math_number" id="Xg6_=1@ItUO|Xggql$Xs">

    <field name="NUM">1</field>

    </shadow>

    </value>

    <value name="B">

    <shadow type="math_number" id="~[=Ie8G{Z:y=A$?){d?m">

    <field name="NUM">60</field>

    </shadow>

    </value>

    </block>

    </value>

    </block>

    </value>

    </block>

    </value>

    </block>

    </next>

    </block>

    </statement>

    </block>

    <block type="comment" id="@_#Xr%Pr/dPFZA=yTc*)" x="-312" y="363">

    <field name="COMMENT">MerkerVariable Betriebsminuten</field>

    </block>

    <block type="comment" id="mxwLAe(1H)h.lc?afKVV" x="-87" y="363">

    <field name="COMMENT">+</field>

    </block>

    <block type="comment" id="HFByK1$)dJN4{ThK[v+o" x="-62" y="363">

    <field name="COMMENT">MerkerVariable Betriebssekunden</field>

    </block>

    <block type="comment" id="OsEtkHX5`_uL1#vOb?3i" x="188" y="363">

    <field name="COMMENT">/60</field>

    </block>

    </xml>

  • Hast du den statistics Adapter installiert? Bei den gewünschten Datenpunkte auch statistics dann aktiviert?

    Wenn ja, dann Mal den Baum aktualisieren, bzw warten, je nachdem was du eingestellt hast, muss der Adapter ja den Datenpunkt Bauch erst Erzeugen. Und das tut er erst wenn es soweit ist.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!