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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Skript für Wohnraumlüftung

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    10
    1
    322

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.5k

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

Skript für Wohnraumlüftung

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

    Hallo zusammen,

    nachdem ich meine Wolf CWL-F-300 per Sonoff 4ch pro smart gemacht habe, probiere ich mich nun an einem ersten Skript. Dieses möchte (noch) nicht funktionieren. Zudem tue ich mich schwer, eine Hysterese in Blockly umzusetzen.

    Genug geredet, hier mein erster Skriptversuch:

    563c3b6e-6612-47d7-83c1-88151df92fe2-image.png

    Vielleicht sieht jemand auf Anhieb wo das Problem steckt.

    Vielen Dank vorab für eure Hilfe.


    <xml xmlns="https://developers.google.com/blockly/xml">
    <variables>
    <variable id="#(o,NQ=5-MzE@lgK(56">vorheriger Wert</variable> </variables> <block type="on_ext" id=")fw|#y$xK/8%ks..bJzM" x="131" y="-3"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="D{xjXdLih|T#{P;{HVa">
    <field name="oid">deconz.0.Sensors.3.humidity</field>
    </shadow>
    </value>
    <value name="OID1">
    <shadow type="field_oid" id="[DKT{#LGO|iqQy[yShu"> <field name="oid">deconz.0.Sensors.19.humidity</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="Q%~7d1*D$1!R_Uj}tpJk"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_operation" id="KWqvDx::s]vZq!e;87TC" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_operation" id="l~/w3xw^}0LUT=1H6R;y" inline="false"> <field name="OP">OR</field> <value name="A"> <block type="logic_compare" id="l6JhQLEdvXcU:OABor(V"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="HoK%bz[N~-GKGsc.}hmD"> <field name="ATTR">val</field> <field name="OID">deconz.0.Sensors.3.humidity</field> </block> </value> <value name="B"> <block type="math_number" id="uE8ptEP$wi]Y)3mU/5!p"> <field name="NUM">75</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="W.g!?CTxAq%u|~d$Dtjb"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="%5y?H4,-1!%mgHzk$:;z"> <field name="ATTR">val</field> <field name="OID">deconz.0.Sensors.9.humidity</field> </block> </value> <value name="B"> <block type="math_number" id="VfSq/vF7pql|(/7mvlrL"> <field name="NUM">75</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="(h=H3L~/CS;mX$f]j3iE" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="IBfbWCPp8_R#@Gw3=]^T"> <field name="OP">LTE</field> <value name="A"> <block type="variables_get" id="#zzyUC%o}C|49q)%p(9">
    <field name="VAR" id="#(o,NQ=5-MzE@lgK(56">vorheriger Wert</field> </block> </value> <value name="B"> <block type="math_number" id="x{|qJ38H#AAhI;!Fj^l$"> <field name="NUM">80</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="#!GpLyo|b|+Ut]c+3Z">
    <field name="OP">LTE</field>
    <value name="A">
    <block type="get_value" id="a4{3k8j
    QpD.8:zv%p=x">
    <field name="ATTR">val</field>
    <field name="OID">deconz.0.Sensors.9.humidity</field>
    </block>
    </value>
    <value name="B">
    <block type="math_number" id="Xb[Zkokr%l8`z~7,fXP2">
    <field name="NUM">60</field>
    </block>
    </value>
    </block>
    </value>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO0">
    <block type="controls_if" id="P9hhA(tviw.T+zUR:`op">
    <mutation elseif="1"></mutation>
    <value name="IF0">
    <block type="logic_compare" id="=f}DNXhG[pZyq9V4TvKr">
    <field name="OP">LT</field>
    <value name="A">
    <block type="get_value" id="$1s|13N6S;8If-o@IJV~">
    <field name="ATTR">val</field>
    <field name="OID">deconz.0.Sensors.8.temperature</field>
    </block>
    </value>
    <value name="B">
    <block type="math_number" id=".70`D/cnS_@E1Ec%KhZ7">
    <field name="NUM">30</field>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO0">
    <block type="comment" id="7T~|krQ$w[4|~3H{,),U">
    <field name="COMMENT">Intensivlüftung zur Feuchtereduzierung</field>
    <next>
    <block type="control" id="wQ311x-[J0twV5@^:%j_">
    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
    <field name="OID">sonoff.0.Lueftungssteuerung.POWER3</field>
    <field name="WITH_DELAY">FALSE</field>
    <value name="VALUE">
    <block type="logic_boolean" id="7V]%r,.1xtn~oXC~c={u">
    <field name="BOOL">TRUE</field>
    </block>
    </value>
    <next>
    <block type="debug" id="8O6ZkIzQQFjP8zUziYj">
    <field name="Severity">log</field>
    <value name="TEXT">
    <shadow type="text" id="Z[W)-XC;AN#MhMyO`:J,">
    <field name="TEXT">Intensivlüftung gestartet</field>
    </shadow>
    </value>
    </block>
    </next>
    </block>
    </next>
    </block>
    </statement>
    <value name="IF1">
    <block type="logic_compare" id="I6b0}^a##b`~kyg8=SI!">
    <field name="OP">GTE</field>
    <value name="A">
    <block type="get_value" id="11;^@y7NWJJv^kj12r]8">
    <field name="ATTR">val</field>
    <field name="OID">deconz.0.Sensors.8.temperature</field>
    </block>
    </value>
    <value name="B">
    <block type="math_number" id="d)2uR|i/{$P;`L]8_9lI">
    <field name="NUM">30</field>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO1">
    <block type="comment" id="rR:XR{5zcq-Y}JwP)^Cj">
    <field name="COMMENT">reduzierte Lüftung</field>
    <next>
    <block type="control" id="P%,ew1qUK.SJ{8OcCgx/">
    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
    <field name="OID">sonoff.0.Lueftungssteuerung.POWER1</field>
    <field name="WITH_DELAY">FALSE</field>
    <value name="VALUE">
    <block type="logic_boolean" id="jMdY1x.CB(tk;[sZT(:?">
    <field name="BOOL">FALSE</field>
    </block>
    </value>
    <next>
    <block type="control" id="=|$reaA!76~!{;$@[PDC">
    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
    <field name="OID">sonoff.0.Lueftungssteuerung.POWER2</field>
    <field name="WITH_DELAY">FALSE</field>
    <value name="VALUE">
    <block type="logic_boolean" id=":i?S6xtghj=Be);d/9x{">
    <field name="BOOL">FALSE</field>
    </block>
    </value>
    <next>
    <block type="control" id="gK^7|vZsihdR41ooq%hJ">
    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
    <field name="OID">sonoff.0.Lueftungssteuerung.POWER3</field>
    <field name="WITH_DELAY">FALSE</field>
    <value name="VALUE">
    <block type="logic_boolean" id="V[rbNwB=[VEB6gxA^[T?">
    <field name="BOOL">FALSE</field>
    </block>
    </value>
    <next>
    <block type="debug" id="%RBgMVcQ_`|R,L~$8E.G">
    <field name="Severity">log</field>
    <value name="TEXT">
    <shadow type="text" id="2=}y8bc.O=Qk!=|dzsO~">
    <field name="TEXT">Reduzierte Lüftung gestartet</field>
    </shadow>
    </value>
    </block>
    </next>
    </block>
    </next>
    </block>
    </next>
    </block>
    </next>
    </block>
    </statement>
    </block>
    </statement>
    <statement name="ELSE">
    <block type="controls_if" id="kGXy,9)6[Wqn9)v(Rh8O">
    <value name="IF0">
    <block type="logic_operation" id="!A$hht.h5U)hkztylv8
    " inline="false">
    <field name="OP">AND</field>
    <value name="A">
    <block type="logic_operation" id="/7iR0}Ir:J^E:^3Q_Jg^" inline="false">
    <field name="OP">OR</field>
    <value name="A">
    <block type="logic_compare" id="%x%00W^MPcQ_`p~4~8*d">
    <field name="OP">LTE</field>
    <value name="A">
    <block type="get_value" id="Fe2xuoln/:`Dy9LcTP5N">
    <field name="ATTR">val</field>
    <field name="OID">deconz.0.Sensors.3.humidity</field>
    </block>
    </value>
    <value name="B">
    <block type="math_number" id="yElV8=aT!nFFV13jE$X+">
    <field name="NUM">75</field>
    </block>
    </value>
    </block>
    </value>
    <value name="B">
    <block type="logic_compare" id="Gfv.H|CWBI,}EM;M/w9m">
    <field name="OP">LTE</field>
    <value name="A">
    <block type="get_value" id="Q3q/ZGMWLzOx]Ln)CSZV">
    <field name="ATTR">val</field>
    <field name="OID">deconz.0.Sensors.9.humidity</field>
    </block>
    </value>
    <value name="B">
    <block type="math_number" id="_intM0a:3%%AEfQ!ChLh">
    <field name="NUM">75</field>
    </block>
    </value>
    </block>
    </value>
    </block>
    </value>
    <value name="B">
    <block type="logic_compare" id="tu2f~iin{=]Tcp3WE)fO">
    <field name="OP">GT</field>
    <value name="A">
    <block type="variables_get" id=":CHB6SC`.!h+qdyK.T#y">
    <field name="VAR" id="#(o,NQ=5-MzE`@lgK(56">vorheriger Wert</field>
    </block>
    </value>
    <value name="B">
    <block type="math_number" id="}cne#MMNNOnXSdDcS_V`">
    <field name="NUM">75</field>
    </block>
    </value>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO0">
    <block type="comment" id="-PhigH3~t!cDAN4t02)9">
    <field name="COMMENT">Nennlüftung</field>
    <next>
    <block type="control" id="z)32Ky1]ITXWo`$jjj4Q">
    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
    <field name="OID">sonoff.0.Lueftungssteuerung.POWER2</field>
    <field name="WITH_DELAY">FALSE</field>
    <value name="VALUE">
    <block type="logic_boolean" id="J)}*6$2oykYck6(S|ljK">
    <field name="BOOL">TRUE</field>
    </block>
    </value>
    <next>
    <block type="debug" id="U^-d#8r3Ry@5Ga]dku=9">
    <field name="Severity">log</field>
    <value name="TEXT">
    <shadow type="text" id="|Wa8-%M)oz%JUCN)c92?">
    <field name="TEXT">Nennlüftung</field>
    </shadow>
    </value>
    </block>
    </next>
    </block>
    </next>
    </block>
    </statement>
    </block>
    </statement>
    </block>
    </statement>
    </block>
    </xml>

    M Online
    M Online
    MCU
    schrieb am zuletzt editiert von
    #2

    @ami9o
    Wann wird Feuchteschutz(50m³/Std) auf "WAHR" gesetzt?
    Warum wird auf Änderung von Feuchtesensor HWR abgefragt, aber nicht genutzt?
    Es wird dann noch die Außensensor HWR Feuchtigkeit abgefragt?
    Evtl. erklärst du mal was genau mit dem Script erreichen willst?
    Soweit ich es verstanden habe gibt es 3 Zustände, die man in der Wohnraumlüftung aktiveren kann.
    Feuchteschutz
    Nennlüftung
    Intensivlüftung
    Diese drei Zustände werden mittels Sonoff 4ch angesteuert, richtig?
    Und wenn es geht bitte Dein Script in einen SPOILER hüllen "das Auge". Sonst ist die Anzeige in der INFO immer für alle so lang zu sehen.

    Danke.

    NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
    Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

    A 1 Antwort Letzte Antwort
    0
    • M MCU

      @ami9o
      Wann wird Feuchteschutz(50m³/Std) auf "WAHR" gesetzt?
      Warum wird auf Änderung von Feuchtesensor HWR abgefragt, aber nicht genutzt?
      Es wird dann noch die Außensensor HWR Feuchtigkeit abgefragt?
      Evtl. erklärst du mal was genau mit dem Script erreichen willst?
      Soweit ich es verstanden habe gibt es 3 Zustände, die man in der Wohnraumlüftung aktiveren kann.
      Feuchteschutz
      Nennlüftung
      Intensivlüftung
      Diese drei Zustände werden mittels Sonoff 4ch angesteuert, richtig?
      Und wenn es geht bitte Dein Script in einen SPOILER hüllen "das Auge". Sonst ist die Anzeige in der INFO immer für alle so lang zu sehen.

      Danke.

      A Offline
      A Offline
      ami9o
      schrieb am zuletzt editiert von ami9o
      #3

      @MCU said in Skript für Wohnraumlüftung:

      @ami9o
      Wann wird Feuchteschutz(50m³/Std) auf "WAHR" gesetzt?
      Warum wird auf Änderung von Feuchtesensor HWR abgefragt, aber nicht genutzt?
      Es wird dann noch die Außensensor HWR Feuchtigkeit abgefragt?
      Evtl. erklärst du mal was genau mit dem Script erreichen willst?
      Soweit ich es verstanden habe gibt es 3 Zustände, die man in der Wohnraumlüftung aktiveren kann.
      Feuchteschutz
      Nennlüftung
      Intensivlüftung
      Diese drei Zustände werden mittels Sonoff 4ch angesteuert, richtig?
      Und wenn es geht bitte Dein Script in einen SPOILER hüllen "das Auge". Sonst ist die Anzeige in der INFO immer für alle so lang zu sehen.

      Danke.

      Vorab zur Erläuterung: Es gibt neben den Zuständen "Feuchteschutz", "Nennlüftung" und "Intensivlüftung" auch einen weiteren (vierten) Zustand "Reduzierte Lüftung". Dieser Zustand ist wahr, wenn keiner der vorherigen Zustände über den Sonoff gesteuert wird.

      Der Datenpunkt Feuchteschutz wird in diesem Skript nicht auf wahr gesetzt. (Er muss aber - neben Nennlüftung und Intensivlüftung - auf Falsch gesetzt werden, damit Reduzierte Lüftung auf wahr gesetzt werden kann.

      "Warum wird auf Änderung von Feuchtesensor HWR abgefragt, aber nicht genutzt?" OK, da ist schon ein Fehler...
      Es müsste statt Außensensor HWR der Wert von Feuchtesensor HWR erfasst werden.

      Jedoch dürfte das keinen Einfluss haben, wenn der Wert Feuchtesensor Bad über 75 % läge.

      Folgender Gedanke hinter dem Skript:

      Wenn die Luftfeuchte im Bad oder im Hauswirtschaftsraum über 75 % liegt und der vorherige Wert unter 75 % lag und die Außenluftfeuchte unter 60 % liegt, soll die Intensivlüftung erfolgen, sofern die Außentemperatur unter 30 °C liegt.

      Sollte die Außentemperatur über 30 °C liegen, soll eine reduzierte Lüftung - der vierte Zustand - aktiviert werden.

      Wenn die Feuchtewerte der beiden Räume wieder unter 75 % liegen und der vorherige Wert darüber lag, soll die Nennlüftung aktiviert werden.

      Ich hoffe, mich soweit verständlich ausgedrückt zu haben.

      M 1 Antwort Letzte Antwort
      0
      • A ami9o

        @MCU said in Skript für Wohnraumlüftung:

        @ami9o
        Wann wird Feuchteschutz(50m³/Std) auf "WAHR" gesetzt?
        Warum wird auf Änderung von Feuchtesensor HWR abgefragt, aber nicht genutzt?
        Es wird dann noch die Außensensor HWR Feuchtigkeit abgefragt?
        Evtl. erklärst du mal was genau mit dem Script erreichen willst?
        Soweit ich es verstanden habe gibt es 3 Zustände, die man in der Wohnraumlüftung aktiveren kann.
        Feuchteschutz
        Nennlüftung
        Intensivlüftung
        Diese drei Zustände werden mittels Sonoff 4ch angesteuert, richtig?
        Und wenn es geht bitte Dein Script in einen SPOILER hüllen "das Auge". Sonst ist die Anzeige in der INFO immer für alle so lang zu sehen.

        Danke.

        Vorab zur Erläuterung: Es gibt neben den Zuständen "Feuchteschutz", "Nennlüftung" und "Intensivlüftung" auch einen weiteren (vierten) Zustand "Reduzierte Lüftung". Dieser Zustand ist wahr, wenn keiner der vorherigen Zustände über den Sonoff gesteuert wird.

        Der Datenpunkt Feuchteschutz wird in diesem Skript nicht auf wahr gesetzt. (Er muss aber - neben Nennlüftung und Intensivlüftung - auf Falsch gesetzt werden, damit Reduzierte Lüftung auf wahr gesetzt werden kann.

        "Warum wird auf Änderung von Feuchtesensor HWR abgefragt, aber nicht genutzt?" OK, da ist schon ein Fehler...
        Es müsste statt Außensensor HWR der Wert von Feuchtesensor HWR erfasst werden.

        Jedoch dürfte das keinen Einfluss haben, wenn der Wert Feuchtesensor Bad über 75 % läge.

        Folgender Gedanke hinter dem Skript:

        Wenn die Luftfeuchte im Bad oder im Hauswirtschaftsraum über 75 % liegt und der vorherige Wert unter 75 % lag und die Außenluftfeuchte unter 60 % liegt, soll die Intensivlüftung erfolgen, sofern die Außentemperatur unter 30 °C liegt.

        Sollte die Außentemperatur über 30 °C liegen, soll eine reduzierte Lüftung - der vierte Zustand - aktiviert werden.

        Wenn die Feuchtewerte der beiden Räume wieder unter 75 % liegen und der vorherige Wert darüber lag, soll die Nennlüftung aktiviert werden.

        Ich hoffe, mich soweit verständlich ausgedrückt zu haben.

        M Online
        M Online
        MCU
        schrieb am zuletzt editiert von MCU
        #4

        @ami9o
        Also so? :

        d3bcde0b-3bc3-49e1-95e0-b4e33d9f3364-image.png

        Wenn der Feuchteschutz sowieso nicht verändert wird, kann man den natürlich auch einmal beim Start vom Script setzen?

        NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
        Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

        paul53P 1 Antwort Letzte Antwort
        0
        • M MCU

          @ami9o
          Also so? :

          d3bcde0b-3bc3-49e1-95e0-b4e33d9f3364-image.png

          Wenn der Feuchteschutz sowieso nicht verändert wird, kann man den natürlich auch einmal beim Start vom Script setzen?

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

          @MCU sagte:

          Also so?

          • Variablen ohne Inhalt (undefined) werden zum Vergleich herangezogen ?
          • vorheriger Wert ist bei Mehrfachtrigger so nicht verwendbar, da nicht klar ist, wer getriggert hat
          • Die Bewertung der rel. Feuchte außen ist für die Entscheidung "Entfeuchten" ungeeignet. Es müssen abs. Feuchte bzw. Taupunkt innen und außen verglichen werden.

          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

          M A 2 Antworten Letzte Antwort
          0
          • A ami9o

            Hallo zusammen,

            nachdem ich meine Wolf CWL-F-300 per Sonoff 4ch pro smart gemacht habe, probiere ich mich nun an einem ersten Skript. Dieses möchte (noch) nicht funktionieren. Zudem tue ich mich schwer, eine Hysterese in Blockly umzusetzen.

            Genug geredet, hier mein erster Skriptversuch:

            563c3b6e-6612-47d7-83c1-88151df92fe2-image.png

            Vielleicht sieht jemand auf Anhieb wo das Problem steckt.

            Vielen Dank vorab für eure Hilfe.


            <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
            <variable id="#(o,NQ=5-MzE@lgK(56">vorheriger Wert</variable> </variables> <block type="on_ext" id=")fw|#y$xK/8%ks..bJzM" x="131" y="-3"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="D{xjXdLih|T#{P;{HVa">
            <field name="oid">deconz.0.Sensors.3.humidity</field>
            </shadow>
            </value>
            <value name="OID1">
            <shadow type="field_oid" id="[DKT{#LGO|iqQy[yShu"> <field name="oid">deconz.0.Sensors.19.humidity</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="Q%~7d1*D$1!R_Uj}tpJk"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_operation" id="KWqvDx::s]vZq!e;87TC" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_operation" id="l~/w3xw^}0LUT=1H6R;y" inline="false"> <field name="OP">OR</field> <value name="A"> <block type="logic_compare" id="l6JhQLEdvXcU:OABor(V"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="HoK%bz[N~-GKGsc.}hmD"> <field name="ATTR">val</field> <field name="OID">deconz.0.Sensors.3.humidity</field> </block> </value> <value name="B"> <block type="math_number" id="uE8ptEP$wi]Y)3mU/5!p"> <field name="NUM">75</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="W.g!?CTxAq%u|~d$Dtjb"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="%5y?H4,-1!%mgHzk$:;z"> <field name="ATTR">val</field> <field name="OID">deconz.0.Sensors.9.humidity</field> </block> </value> <value name="B"> <block type="math_number" id="VfSq/vF7pql|(/7mvlrL"> <field name="NUM">75</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="(h=H3L~/CS;mX$f]j3iE" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="IBfbWCPp8_R#@Gw3=]^T"> <field name="OP">LTE</field> <value name="A"> <block type="variables_get" id="#zzyUC%o}C|49q)%p(9">
            <field name="VAR" id="#(o,NQ=5-MzE@lgK(56">vorheriger Wert</field> </block> </value> <value name="B"> <block type="math_number" id="x{|qJ38H#AAhI;!Fj^l$"> <field name="NUM">80</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="#!GpLyo|b|+Ut]c+3Z">
            <field name="OP">LTE</field>
            <value name="A">
            <block type="get_value" id="a4{3k8j
            QpD.8:zv%p=x">
            <field name="ATTR">val</field>
            <field name="OID">deconz.0.Sensors.9.humidity</field>
            </block>
            </value>
            <value name="B">
            <block type="math_number" id="Xb[Zkokr%l8`z~7,fXP2">
            <field name="NUM">60</field>
            </block>
            </value>
            </block>
            </value>
            </block>
            </value>
            </block>
            </value>
            <statement name="DO0">
            <block type="controls_if" id="P9hhA(tviw.T+zUR:`op">
            <mutation elseif="1"></mutation>
            <value name="IF0">
            <block type="logic_compare" id="=f}DNXhG[pZyq9V4TvKr">
            <field name="OP">LT</field>
            <value name="A">
            <block type="get_value" id="$1s|13N6S;8If-o@IJV~">
            <field name="ATTR">val</field>
            <field name="OID">deconz.0.Sensors.8.temperature</field>
            </block>
            </value>
            <value name="B">
            <block type="math_number" id=".70`D/cnS_@E1Ec%KhZ7">
            <field name="NUM">30</field>
            </block>
            </value>
            </block>
            </value>
            <statement name="DO0">
            <block type="comment" id="7T~|krQ$w[4|~3H{,),U">
            <field name="COMMENT">Intensivlüftung zur Feuchtereduzierung</field>
            <next>
            <block type="control" id="wQ311x-[J0twV5@^:%j_">
            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
            <field name="OID">sonoff.0.Lueftungssteuerung.POWER3</field>
            <field name="WITH_DELAY">FALSE</field>
            <value name="VALUE">
            <block type="logic_boolean" id="7V]%r,.1xtn~oXC~c={u">
            <field name="BOOL">TRUE</field>
            </block>
            </value>
            <next>
            <block type="debug" id="8O6ZkIzQQFjP8zUziYj">
            <field name="Severity">log</field>
            <value name="TEXT">
            <shadow type="text" id="Z[W)-XC;AN#MhMyO`:J,">
            <field name="TEXT">Intensivlüftung gestartet</field>
            </shadow>
            </value>
            </block>
            </next>
            </block>
            </next>
            </block>
            </statement>
            <value name="IF1">
            <block type="logic_compare" id="I6b0}^a##b`~kyg8=SI!">
            <field name="OP">GTE</field>
            <value name="A">
            <block type="get_value" id="11;^@y7NWJJv^kj12r]8">
            <field name="ATTR">val</field>
            <field name="OID">deconz.0.Sensors.8.temperature</field>
            </block>
            </value>
            <value name="B">
            <block type="math_number" id="d)2uR|i/{$P;`L]8_9lI">
            <field name="NUM">30</field>
            </block>
            </value>
            </block>
            </value>
            <statement name="DO1">
            <block type="comment" id="rR:XR{5zcq-Y}JwP)^Cj">
            <field name="COMMENT">reduzierte Lüftung</field>
            <next>
            <block type="control" id="P%,ew1qUK.SJ{8OcCgx/">
            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
            <field name="OID">sonoff.0.Lueftungssteuerung.POWER1</field>
            <field name="WITH_DELAY">FALSE</field>
            <value name="VALUE">
            <block type="logic_boolean" id="jMdY1x.CB(tk;[sZT(:?">
            <field name="BOOL">FALSE</field>
            </block>
            </value>
            <next>
            <block type="control" id="=|$reaA!76~!{;$@[PDC">
            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
            <field name="OID">sonoff.0.Lueftungssteuerung.POWER2</field>
            <field name="WITH_DELAY">FALSE</field>
            <value name="VALUE">
            <block type="logic_boolean" id=":i?S6xtghj=Be);d/9x{">
            <field name="BOOL">FALSE</field>
            </block>
            </value>
            <next>
            <block type="control" id="gK^7|vZsihdR41ooq%hJ">
            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
            <field name="OID">sonoff.0.Lueftungssteuerung.POWER3</field>
            <field name="WITH_DELAY">FALSE</field>
            <value name="VALUE">
            <block type="logic_boolean" id="V[rbNwB=[VEB6gxA^[T?">
            <field name="BOOL">FALSE</field>
            </block>
            </value>
            <next>
            <block type="debug" id="%RBgMVcQ_`|R,L~$8E.G">
            <field name="Severity">log</field>
            <value name="TEXT">
            <shadow type="text" id="2=}y8bc.O=Qk!=|dzsO~">
            <field name="TEXT">Reduzierte Lüftung gestartet</field>
            </shadow>
            </value>
            </block>
            </next>
            </block>
            </next>
            </block>
            </next>
            </block>
            </next>
            </block>
            </statement>
            </block>
            </statement>
            <statement name="ELSE">
            <block type="controls_if" id="kGXy,9)6[Wqn9)v(Rh8O">
            <value name="IF0">
            <block type="logic_operation" id="!A$hht.h5U)hkztylv8
            " inline="false">
            <field name="OP">AND</field>
            <value name="A">
            <block type="logic_operation" id="/7iR0}Ir:J^E:^3Q_Jg^" inline="false">
            <field name="OP">OR</field>
            <value name="A">
            <block type="logic_compare" id="%x%00W^MPcQ_`p~4~8*d">
            <field name="OP">LTE</field>
            <value name="A">
            <block type="get_value" id="Fe2xuoln/:`Dy9LcTP5N">
            <field name="ATTR">val</field>
            <field name="OID">deconz.0.Sensors.3.humidity</field>
            </block>
            </value>
            <value name="B">
            <block type="math_number" id="yElV8=aT!nFFV13jE$X+">
            <field name="NUM">75</field>
            </block>
            </value>
            </block>
            </value>
            <value name="B">
            <block type="logic_compare" id="Gfv.H|CWBI,}EM;M/w9m">
            <field name="OP">LTE</field>
            <value name="A">
            <block type="get_value" id="Q3q/ZGMWLzOx]Ln)CSZV">
            <field name="ATTR">val</field>
            <field name="OID">deconz.0.Sensors.9.humidity</field>
            </block>
            </value>
            <value name="B">
            <block type="math_number" id="_intM0a:3%%AEfQ!ChLh">
            <field name="NUM">75</field>
            </block>
            </value>
            </block>
            </value>
            </block>
            </value>
            <value name="B">
            <block type="logic_compare" id="tu2f~iin{=]Tcp3WE)fO">
            <field name="OP">GT</field>
            <value name="A">
            <block type="variables_get" id=":CHB6SC`.!h+qdyK.T#y">
            <field name="VAR" id="#(o,NQ=5-MzE`@lgK(56">vorheriger Wert</field>
            </block>
            </value>
            <value name="B">
            <block type="math_number" id="}cne#MMNNOnXSdDcS_V`">
            <field name="NUM">75</field>
            </block>
            </value>
            </block>
            </value>
            </block>
            </value>
            <statement name="DO0">
            <block type="comment" id="-PhigH3~t!cDAN4t02)9">
            <field name="COMMENT">Nennlüftung</field>
            <next>
            <block type="control" id="z)32Ky1]ITXWo`$jjj4Q">
            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
            <field name="OID">sonoff.0.Lueftungssteuerung.POWER2</field>
            <field name="WITH_DELAY">FALSE</field>
            <value name="VALUE">
            <block type="logic_boolean" id="J)}*6$2oykYck6(S|ljK">
            <field name="BOOL">TRUE</field>
            </block>
            </value>
            <next>
            <block type="debug" id="U^-d#8r3Ry@5Ga]dku=9">
            <field name="Severity">log</field>
            <value name="TEXT">
            <shadow type="text" id="|Wa8-%M)oz%JUCN)c92?">
            <field name="TEXT">Nennlüftung</field>
            </shadow>
            </value>
            </block>
            </next>
            </block>
            </next>
            </block>
            </statement>
            </block>
            </statement>
            </block>
            </statement>
            </block>
            </xml>

            sigi234S Online
            sigi234S Online
            sigi234
            Forum Testing Most Active
            schrieb am zuletzt editiert von
            #6

            @ami9o

            Mal was zum lesen:

            https://forum.iobroker.net/topic/2313/skript-absolute-feuchte-berechnen?page=1

            Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
            Immer Daten sichern!

            1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @MCU sagte:

              Also so?

              • Variablen ohne Inhalt (undefined) werden zum Vergleich herangezogen ?
              • vorheriger Wert ist bei Mehrfachtrigger so nicht verwendbar, da nicht klar ist, wer getriggert hat
              • Die Bewertung der rel. Feuchte außen ist für die Entscheidung "Entfeuchten" ungeeignet. Es müssen abs. Feuchte bzw. Taupunkt innen und außen verglichen werden.
              M Online
              M Online
              MCU
              schrieb am zuletzt editiert von
              #7

              @paul53 Zum Thema vorheriger Wert:
              Der vorherige Wert wird immer auf den Trigger bezogen!

              b1215fcb-1679-4cb2-935f-d4150243b501-image.png

              NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
              Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

              paul53P 1 Antwort Letzte Antwort
              0
              • M MCU

                @paul53 Zum Thema vorheriger Wert:
                Der vorherige Wert wird immer auf den Trigger bezogen!

                b1215fcb-1679-4cb2-935f-d4150243b501-image.png

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

                @MCU sagte:

                Der vorherige Wert wird immer auf den Trigger bezogen!

                Ja, natürlich auf den Trigger. Wer aber hat getriggert: Bad oder HWR ?

                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 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @MCU sagte:

                  Also so?

                  • Variablen ohne Inhalt (undefined) werden zum Vergleich herangezogen ?
                  • vorheriger Wert ist bei Mehrfachtrigger so nicht verwendbar, da nicht klar ist, wer getriggert hat
                  • Die Bewertung der rel. Feuchte außen ist für die Entscheidung "Entfeuchten" ungeeignet. Es müssen abs. Feuchte bzw. Taupunkt innen und außen verglichen werden.
                  A Offline
                  A Offline
                  ami9o
                  schrieb am zuletzt editiert von ami9o
                  #9

                  @paul53 said in Skript für Wohnraumlüftung:

                  @MCU sagte:

                  Also so?

                  • Variablen ohne Inhalt (undefined) werden zum Vergleich herangezogen ?
                  • vorheriger Wert ist bei Mehrfachtrigger so nicht verwendbar, da nicht klar ist, wer getriggert hat
                  • Die Bewertung der rel. Feuchte außen ist für die Entscheidung "Entfeuchten" ungeeignet. Es müssen abs. Feuchte bzw. Taupunkt innen und außen verglichen werden.

                  Das sieht gut aus.
                  *1 Die Fragestellung verstehe ich nicht so ganz
                  *2 wieder etwas gelernt :)
                  *3 Wie genau stelle ich diesen Vergleich an?

                  M 1 Antwort Letzte Antwort
                  0
                  • A ami9o

                    @paul53 said in Skript für Wohnraumlüftung:

                    @MCU sagte:

                    Also so?

                    • Variablen ohne Inhalt (undefined) werden zum Vergleich herangezogen ?
                    • vorheriger Wert ist bei Mehrfachtrigger so nicht verwendbar, da nicht klar ist, wer getriggert hat
                    • Die Bewertung der rel. Feuchte außen ist für die Entscheidung "Entfeuchten" ungeeignet. Es müssen abs. Feuchte bzw. Taupunkt innen und außen verglichen werden.

                    Das sieht gut aus.
                    *1 Die Fragestellung verstehe ich nicht so ganz
                    *2 wieder etwas gelernt :)
                    *3 Wie genau stelle ich diesen Vergleich an?

                    M Online
                    M Online
                    MCU
                    schrieb am zuletzt editiert von MCU
                    #10

                    @ami9o Ich hatte ja in dem BLOCKLY nicht Deine Werte mit genutzt, sondern nur die Logik abgebildet.
                    Du musst natürlich deine Werte eintragen anstatt der Variablen!
                    Also nicht Variable "Luftfeuchtigkeit_HWR" sondern "WERT von ObjectID 'Feuchtesensor HWR (Luftfeuchte) humidity" nutzen.
                    Oder Variable setzen "Luftfeuchtigkeit HWR" = "WERT von ObjectID 'Feuchtesensor HWR (Luftfeuchte) humidity".
                    Wollte nicht die ObjectStruktur anlegen. Ging ja erstmal um die Logik.
                    Bei dem unteren hat natürlich der @paul53 Recht. Hier müsste man den "vorherigen" Wert noch genauer abfragen.
                    Aber nur wenn man bei dem "und" der beiden Wert (Luftfeuchtigkeit) bleibt, denn bei "oder" ist es egal.
                    Bezogen auf die rel. Luftfeuchtigkeit solltest du dir nochmal den Link von @sigi234 anschauen.

                    5a8577fb-b532-4c10-89e4-d2ba46c9f1ee-image.png

                    So kann man die vorherigen Werte der einzelnen ObjectID unterscheiden.

                    2ce07661-b63a-46f7-a353-2dab1bc53dce-image.png

                    NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                    Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                    A 1 Antwort Letzte Antwort
                    0
                    • M MCU

                      @ami9o Ich hatte ja in dem BLOCKLY nicht Deine Werte mit genutzt, sondern nur die Logik abgebildet.
                      Du musst natürlich deine Werte eintragen anstatt der Variablen!
                      Also nicht Variable "Luftfeuchtigkeit_HWR" sondern "WERT von ObjectID 'Feuchtesensor HWR (Luftfeuchte) humidity" nutzen.
                      Oder Variable setzen "Luftfeuchtigkeit HWR" = "WERT von ObjectID 'Feuchtesensor HWR (Luftfeuchte) humidity".
                      Wollte nicht die ObjectStruktur anlegen. Ging ja erstmal um die Logik.
                      Bei dem unteren hat natürlich der @paul53 Recht. Hier müsste man den "vorherigen" Wert noch genauer abfragen.
                      Aber nur wenn man bei dem "und" der beiden Wert (Luftfeuchtigkeit) bleibt, denn bei "oder" ist es egal.
                      Bezogen auf die rel. Luftfeuchtigkeit solltest du dir nochmal den Link von @sigi234 anschauen.

                      5a8577fb-b532-4c10-89e4-d2ba46c9f1ee-image.png

                      So kann man die vorherigen Werte der einzelnen ObjectID unterscheiden.

                      2ce07661-b63a-46f7-a353-2dab1bc53dce-image.png

                      A Offline
                      A Offline
                      ami9o
                      schrieb am zuletzt editiert von
                      #11

                      @MCU; @paul53; @sigi234

                      Vielen Dank für euer Feedback. Werde mich nun intensiver mit der Materie befassen und das Skript entsprechend anpassen.

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


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      776

                      Online

                      32.5k

                      Benutzer

                      81.7k

                      Themen

                      1.3m

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

                      • Du hast noch kein Konto? Registrieren

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