Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Mika 0

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    M
    • Profile
    • Following 0
    • Followers 0
    • Topics 49
    • Posts 202
    • Best 2
    • Groups 2

    Mika 0

    @Mika 0

    Starter

    0
    Reputation
    28
    Profile views
    202
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    Mika 0 Follow
    Pro Starter

    Best posts made by Mika 0

    • RE: Hilfe! Nach Update des javascript Adapters 404

      @mrbungle64 Auch dir Danke für den Input. Muss ich schauen wie ich das HW seitig umsetzen kann. Gerne ändern ich den Betreff, aber wo ist da ein Bearbeiten Button?

      & an @Thomas-Braun
      OS Updates sind drauf. Der RAM läuft immer noch voll. Kann es sein, dass durch das Update ein Skript schuld sein könnte? Kann man das herausfinden welches es sein könnte?

      Edit: Thread Titel ändern geschafft. 😉

      posted in ioBroker Allgemein
      M
      Mika 0
    • RE: Wert schwankt

      @TT-Tom Ich arbeite nur mit vollen Grad. Trotzdem schwankt eben ein Wert bei Wasserentnahme.

      @paul53 Der Aufbau in deinem Bild ist ja einwandfrei! Kein zeitlicher Einfluss. Über Variable, einfach CLEVER. Getestet und funktioniert.

      @ticaki Die Meldung ist nicht kriegsentscheidend. Man kann dann einfach bei genug Sonne selbsts im ioBroker die Boiler Heizung aktivieren. Entweder über Wärmepumpe oder händisch Heizstab.

      DANKE AN ALLE!

      posted in Blockly
      M
      Mika 0

    Latest posts made by Mika 0

    • RE: Ansteuerung für Zeit X

      OK danke euch allen.
      Ich werde diverse Möglichkeiten testen und euch berichten
      @martinp

      1. was bedeutet "false" initialisieren?
      2. wie geht das?
      posted in Blockly
      M
      Mika 0
    • Ansteuerung für Zeit X

      Hallo,

      ich habe einen Heizstab in meinem Boiler, den ich Ersatzweise für die Wärmepumpe im Sommer betreibe.
      Die Ansteuerung erfolgt über die Vis, ein Objekt. Das Blockly läuft los und steuert für 30min im regelmäßigen Abstand von 3 Sekunden ein Zeitrelais an.
      Sollte sich iobroker aufhängen oder fehlerhaft sein, wird nicht mehr angesteuert und der Heizstab saugt mir nicht die Hausbatterie leer. So der Grundgedanke.

      Gelegentlich kommt es aber vor, dass nicht nur 30min angesteuert wird, sondern ununterbrochen, bis ich entweder iobroker neu starte, oder das Skript beende.

      1. Warum ist das so?
      2. Wie kann ich das Blockly verbessern, damit es überhaupt nicht dazu kommen kann?
      3. Wie kann ich verhindern, wenn schon eine Person auf Heizen gedrückt hat, also das Skript läuft, jemand anderes den während die Ansteuerung schon läuft nochmals das Skript startet. Ich vermute, dass könnte auch Einfluss haben. Vielleicht gibt es die Möglichkeit, das zu verhindern

      4141eb16-8077-4d7a-9f1c-e245b01779e2-image.png

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable type="interval" id="Intervall">Intervall</variable>
          <variable type="interval" id="Intervall2">Intervall2</variable>
        </variables>
        <block type="on_ext" id="{GP]f31L:Z[:8=bu`p7e" x="-337" y="-2137">
          <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
          <field name="CONDITION">any</field>
          <field name="ACK_CONDITION"></field>
          <value name="OID0">
            <shadow type="field_oid" id="3ciF;@X=vqdnZWF}/ND*">
              <field name="oid">0_userdata.0.Boiler.HeizstabAN30min</field>
            </shadow>
          </value>
          <statement name="STATEMENT">
            <block type="controls_if" id="iq/q#-=Abklf_EhtBYkK">
              <value name="IF0">
                <block type="logic_compare" id="tbh*PfF;vTS#Pf8@-3*J">
                  <field name="OP">EQ</field>
                  <value name="A">
                    <block type="on_source" id="1*`ZN7m4B|(U?{NvV/|-">
                      <field name="ATTR">state.val</field>
                    </block>
                  </value>
                  <value name="B">
                    <block type="logic_boolean" id="5wKA#s?j!xMt@o:y4Dwp">
                      <field name="BOOL">TRUE</field>
                    </block>
                  </value>
                </block>
              </value>
              <statement name="DO0">
                <block type="timeouts_setinterval" id="U1Psj/[4{(8mM$SST!Y6">
                  <field name="NAME">Intervall</field>
                  <field name="INTERVAL">3</field>
                  <field name="UNIT">sec</field>
                  <statement name="STATEMENT">
                    <block type="control" id=".*}z95zpJQuIn@*M]9IF">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">s7.2.DBs.DB1.NI32_121_1_Boiler_Stufe_NUR_Heizstab_Puls-Ansteuerung</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="logic_boolean" id="{VWJ!M7,.!5|vQt.XX$i">
                          <field name="BOOL">TRUE</field>
                        </block>
                      </value>
                    </block>
                  </statement>
                  <next>
                    <block type="update" id="@qHjmj$O1vM]AQiJZ=HB">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">0_userdata.0.Boiler.HeizstabAN30min</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="logic_boolean" id="-VP;T9%@oM4vS#*e~E~1">
                          <field name="BOOL">FALSE</field>
                        </block>
                      </value>
                      <next>
                        <block type="timeouts_wait" id="h4R*C^X]WZ#[d^X8^0N*">
                          <field name="DELAY">30</field>
                          <field name="UNIT">min</field>
                          <next>
                            <block type="timeouts_clearinterval" id="QQ+0)HsRZ1VUm!!87:Z{">
                              <field name="NAME">Intervall</field>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
          </statement>
        </block>
        <block type="on_ext" id=");@yOqr(mMo~ALPv4/=5" disabled="true" x="888" y="-2063">
          <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
          <field name="CONDITION">any</field>
          <field name="ACK_CONDITION"></field>
          <value name="OID0">
            <shadow type="field_oid" id="Ij)-ngYVT#cLxp,?P/K|">
              <field name="oid">0_userdata.0.Boiler.HeizstabAN30min</field>
            </shadow>
          </value>
          <statement name="STATEMENT">
            <block type="controls_if" id="aIsH%2KngNR,_:[!SCu?">
              <value name="IF0">
                <block type="logic_compare" id=".-%f^|%IP[42K`+KG12B">
                  <field name="OP">EQ</field>
                  <value name="A">
                    <block type="on_source" id="zz+uMp2gvk)x7SZMNR+}">
                      <field name="ATTR">state.val</field>
                    </block>
                  </value>
                  <value name="B">
                    <block type="logic_boolean" id="f{dAWKeOZ,O$]txc0/}r">
                      <field name="BOOL">TRUE</field>
                    </block>
                  </value>
                </block>
              </value>
              <statement name="DO0">
                <block type="timeouts_setinterval" id="tK2zyxG,e1VL1Ja3GW*@">
                  <field name="NAME">Intervall2</field>
                  <field name="INTERVAL">2</field>
                  <field name="UNIT">sec</field>
                  <statement name="STATEMENT">
                    <block type="control" id="-*^#TQzRS9rZU.%~qlVC">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">s7.2.DBs.DB1.NI32_Boiler_Stufe_NUR_Heizstab_Ansteuerung_(Zusatzrelais-Dauersignal)</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="logic_boolean" id="ka[OYk$9tzx9-?Kxw^bX">
                          <field name="BOOL">TRUE</field>
                        </block>
                      </value>
                    </block>
                  </statement>
                  <next>
                    <block type="telegram" id="2KxsY+}@i0S6lY(!f[Qr">
                      <field name="INSTANCE"></field>
                      <field name="LOG"></field>
                      <field name="SILENT">FALSE</field>
                      <field name="PARSEMODE">default</field>
                      <field name="ESCAPING">FALSE</field>
                      <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                      <value name="MESSAGE">
                        <shadow type="text" id=":x~LJOhzhk@,0z:6E4`z">
                          <field name="TEXT">Heizstab für 30min an</field>
                        </shadow>
                      </value>
                      <value name="USERNAME">
                        <block type="text" id="J{SZDA#SsH4,8!VaU%aI">
                          <field name="TEXT">Michael</field>
                        </block>
                      </value>
                      <next>
                        <block type="timeouts_wait" id="J4k~5QLA2sx*N[ydPQc8">
                          <field name="DELAY">15</field>
                          <field name="UNIT">min</field>
                          <next>
                            <block type="timeouts_clearinterval" id="h_~J%?~6q]H].|nVVG_c">
                              <field name="NAME">Intervall</field>
                              <next>
                                <block type="control_ex" id="5H]wK@eIgjSX7HiSuTf=">
                                  <field name="TYPE">true</field>
                                  <field name="CLEAR_RUNNING">FALSE</field>
                                  <value name="OID">
                                    <shadow type="field_oid" id="wjSA(m4#v1;GcT{7iu@9">
                                      <field name="oid">0_userdata.0.Boiler.HeizstabAN30min</field>
                                    </shadow>
                                  </value>
                                  <value name="VALUE">
                                    <shadow type="logic_boolean" id="p+JC@nUbIB=s(DEUC}.U">
                                      <field name="BOOL">FALSE</field>
                                    </shadow>
                                  </value>
                                  <value name="DELAY_MS">
                                    <shadow type="math_number" id="(]yJ*3[CCC=HB);2p8_e">
                                      <field name="NUM">0</field>
                                    </shadow>
                                  </value>
                                  <next>
                                    <block type="telegram" id="V8v2.HaOWFe*~?{5:B;c">
                                      <field name="INSTANCE"></field>
                                      <field name="LOG"></field>
                                      <field name="SILENT">FALSE</field>
                                      <field name="PARSEMODE">default</field>
                                      <field name="ESCAPING">FALSE</field>
                                      <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                      <value name="MESSAGE">
                                        <shadow type="text" id="~(oOqE6)X;)?zy%wnQq8">
                                          <field name="TEXT">Heizstab wieder aus</field>
                                        </shadow>
                                      </value>
                                      <value name="USERNAME">
                                        <block type="text" id="zOJ|[C)zoGPyK`#z,,V;">
                                          <field name="TEXT">Michael</field>
                                        </block>
                                      </value>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
          </statement>
        </block>
      </xml>
      

      Besten Dank für eure Hilfe.

      posted in Blockly
      M
      Mika 0
    • RE: Wertänderung mit Wert vor 5 Min vergleichen

      @paul53 das klingt gut. Da muss ich mich aber erst richtig einlesen. Kann man sicherlich auch für mein System umbasteln.
      Bis dato kann ja mein Skript laufen.

      posted in Blockly
      M
      Mika 0
    • RE: Wertänderung mit Wert vor 5 Min vergleichen

      @paul53 sagte in Wertänderung mit Wert vor 5 Min vergleichen:

      @mika-0 sagte: So sieht das Konzept aus:

      Das verstehe ich nicht: Sind zu viele Prozentwerte.
      Vermutung: Du möchtest in Abhängigkeit von der Änderungsgeschwindigkeit der Regelabweichung (Istwert - Sollwert) die Leistung der WP in Stufen steuern?

      Nicht ganz.
      Abhängig von Delta: Raum-Ziel-Temperatur minus Raum-Temperatur wird die Kompressorleistung gesteuert.
      Es handelt sich um Luft-Luft Wärmepumpen, also kein Puffermedium (Bsp. Wasser). Die Raumluft kann sich also sehr schnell ändern. Damit es zu keiner Kompressorabschaltung kommt, soll so schnell wie möglich die Zieltemperatur erreicht werden und kurz vor Erreichen der Zieltemperatur wird die Kompressorleistung gedrosselt und soll sich so einpendeln.

      Wenn Sonne dazu kommt, gibt es einen Überschwinger. Den kann ich nicht beeinflussen, deshalb wird auch Bereich F berücksichtigt.

      Was besseres ist mir bisher nicht eingefallen.

      posted in Blockly
      M
      Mika 0
    • RE: Wertänderung mit Wert vor 5 Min vergleichen

      @paul53 Vielen Dank für die Hilfe. Jetzt bekomme ich auch eine Differenz angezeigt.

      @Homoran Danke auch dir für die Erklärung

      posted in Blockly
      M
      Mika 0
    • RE: Wertänderung mit Wert vor 5 Min vergleichen

      @paul53 Ich verstehe das nicht, wie ich das vorher setzen soll.
      Ich habe das so aufgesetzt wir deine Vorgabe. Muss ich noch irgendein Trigger nutzen für die "setze" ohne Trigger ganz oben?

      Das Skript ist viel zu lange um das hier als Bild aufzulisten. Ich habe das Skript mal hier rein gemacht. Ahhh, das Skript ist auch zu lang. Ich versuchs im nächsten Beitrag.

      7daf34aa-5a2d-4a78-a3a4-79510a602160-image.png

      Das Thema mit den Bereichen kannst unten sehen. Die Kompressorleistung wir statisch gesetzt je Bereich A-D und F - dies entspricht dem Temperatur-Delta auf einem festen Wert. Die Differenz wird nach 3 Minuten neu gebildet und positiv oder negativ ausgewertet (ob die Raumtemp steigt oder fällt). Durch die Differenz wird die Kompressorleistung innerhalb eines Bereiches verändert.

      Eine Leistung der Wärmepumpe ist abhängig von der Außentemperatur und der Wärmemenge des Raumes, sicherlich auch etwas der Luftfeuchte draußen. Um das alles zu umgehen und den Kompressor mit so wenig wie nötig an Leistung zu befeuern die Sache mit den Bereichen und den Differenzen. So umgehe ich Kompressorabschaltungen.

      So sieht das Konzept aus:
      b35587bc-659d-42a0-b1c7-958d476f4127-image.png

      posted in Blockly
      M
      Mika 0
    • RE: Wertänderung mit Wert vor 5 Min vergleichen

      @paul53 Danke, habe ich umgesetzt und im Test funktioniert das. Danke.

      b77d5523-e843-4704-a97d-a80cce4a801c-image.png

      Ist das so korrekt mit den oberen "setze" ? Wozu ist das initialisieren?

      Ich habe noch Bereiche eingetragen um eine Art Hysterese einzubauen. Sobald ein Bereich betreten wird, wird dieser nicht erneut ausgelöst, sondern erst, wenn ein weiterer Bereich betreten wird.
      Macht mein Ansatz hier Sinn das vorerst auf false zu setzen?

      790d27d3-5f4f-4c8c-9ebf-04ca99ec72bc-image.png

      @Homoran Auch dir Danke, aber paul53 war schneller 😉

      posted in Blockly
      M
      Mika 0
    • Wertänderung mit Wert vor 5 Min vergleichen

      Hallo,

      ich suche im Blockly die Möglichkeit für eine Temperaturänderungserkennung alle 5 Minuten.
      Die Objekte: Raum-Soll Temperatur minus Raumtemperatur (beides Zahlen).
      Daraus bilde ich mir ein Delta, also Raum-Soll minus Raumtemperatur.

      Alle 6-10 Sekunden kommt ein neuer oder aktualisierter Wert der Raumtemperatur.

      Ich möchte eine Temperaturänderung alle 5 Minuten feststellen.
      Wie kann ich denn den jetzigen Raumtemperatur Wert in einer Variable festhalten, und diesen mit dem Wert in 5 Minuten vergleichen und daraus weiter arbeiten?

      posted in Blockly
      M
      Mika 0
    • RE: Ansteuerung Motor in Position

      @martinp geschafft. Einfach 2 Abfragen gemacht. Ist halt alles doppelt, aber somit bin ich immer im positiven Rechenwert.

      24577bde-cf6c-45d9-9a8f-0ee1686a329f-image.png
      8cf3b730-f547-49ee-a044-a702556ea71d-image.png

      posted in Blockly
      M
      Mika 0
    • RE: Ansteuerung Motor in Position

      @martinp danke ich probiere und gebe Bescheid

      posted in Blockly
      M
      Mika 0
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo