Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Blockly-Script Thermostat/Heizung

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Blockly-Script Thermostat/Heizung

    This topic has been deleted. Only users with topic management privileges can see it.
    • Kaba
      Kaba @Asgothian last edited by

      @asgothian
      @paul53

      Ich danke Euch! Nun verstanden, umgebaut und getestet 😊
      Da wäre ich alleine nicht drauf gekommen!
      Nur noch eine kurze Frage - müsste es unten links nicht, mache 17, sonst 21 sein?

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @Kaba last edited by

        @kaba sagte: müsste es unten links nicht, mache 17, sonst 21 sein?

        Nein, beim Duschen (Heizung manuell ein) soll der höhere Sollwert greifen.

        @kaba sagte in Blockly-Script Thermostat/Heizung:

        beim/vor'm Duschen die Heizung manuell am Wlan-Stecker einzuschalten.

        Kaba 2 Replies Last reply Reply Quote 0
        • Kaba
          Kaba @paul53 last edited by

          @paul53
          Danke 😊

          1 Reply Last reply Reply Quote 0
          • Kaba
            Kaba @paul53 last edited by Kaba

            @paul53
            @Asgothian

            Guten Morgen zusammen, ich noch einmal.
            Nachdem das Script nun ein bisschen lief, ist mir aufgefallen, dass die Heizung zwar bei 17 Grad einschaltet (bzw. <17), jedoch nicht mehr abschaltet.

            paul53 1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @Kaba last edited by

              @kaba sagte Heizung zwar bei 17 Grad einschaltet (bzw. <17), jedoch nicht mehr abschaltet.

              Sie muss bei >= 18 °C abschalten.

              Kaba 1 Reply Last reply Reply Quote 0
              • Kaba
                Kaba @paul53 last edited by

                @paul53
                Ja, das tut sie leider nicht. Sie schaltet gar nicht mehr ab.

                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @Kaba last edited by

                  @kaba sagte: tut sie leider nicht.

                  Poste bitte den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

                  Kaba 2 Replies Last reply Reply Quote 0
                  • Kaba
                    Kaba @paul53 last edited by

                    @paul53

                    var BadezimmerSollwert, heizung;
                    
                    
                    BadezimmerSollwert = 16;
                    // Fenster
                    on({id: 'zigbee.0.00158d0003a00d06.opened', change: "gt"}, async function (obj) {
                      var value = obj.state.val;
                      var oldValue = obj.oldState.val;
                      setState("hs100.0.192_168_178_33.state"/*HeizungBad*/, false);
                    });
                    // Heizung
                    on({id: 'hs100.0.192_168_178_33.state', change: "ne"}, async function (obj) {
                      var value = obj.state.val;
                      var oldValue = obj.oldState.val;
                      if ((obj.state ? obj.state.val : "") && (obj.state ? obj.state.from : "") != 'system.adapter.javascript.0') {
                        BadezimmerSollwert = 19;
                      } else {
                        BadezimmerSollwert = 16;
                      }
                    });
                    
                    // Temperatur
                    on({id: 'hm-rpc.1.000E5BE9A77AD0.1.ACTUAL_TEMPERATURE', change: "ne"}, async function (obj) {
                      var value = obj.state.val;
                      var oldValue = obj.oldState.val;
                      if (!getState("zigbee.0.00158d0003a00d06.opened").val) {
                        if ((obj.state ? obj.state.val : "") <= BadezimmerSollwert) {
                          heizung = true;
                        } else if ((obj.state ? obj.state.val : "") >= parseFloat(BadezimmerSollwert) + 1) {
                          heizung = false;
                        }
                        if (heizung != getState("hs100.0.192_168_178_33.state").val) {
                          setState("hs100.0.192_168_178_33.state"/*HeizungBad*/, heizung);
                        }
                      }
                    });
                    
                    on({id: 'zigbee.0.00158d0003a00d06.opened', change: "ne"}, async function (obj) {
                      var value = obj.state.val;
                      var oldValue = obj.oldState.val;
                      if (getState("zigbee.0.00158d0003a00d06.opened").val == true && getState("hm-rpc.1.00115A4996E621.4.LEVEL").val < 100) {
                        setState("hm-rpc.1.00115A4996E621.4.LEVEL"/*RA_Bad:4.LEVEL*/, 100);
                      }
                    });
                    
                    paul53 1 Reply Last reply Reply Quote 0
                    • Kaba
                      Kaba @paul53 last edited by

                      @paul53

                      Ich habe die Temperatur noch angepasst und ergänzt, dass wenn Abends das Rollo schon geschlossen ist, es beim öffnen des Fensters hoch fährt.

                      paul53 1 Reply Last reply Reply Quote 0
                      • L
                        Linedancer last edited by Linedancer

                        Ganz schön kompliziert….
                        Du hast doch ein Homematic Thermostat, warum dann per Script die Temperatursteuerung nachbilden?
                        Du setzt beim Thermostat deine Comfort und Eco Temperaturen. Das HM Thermostat hat im Kanal 7 den DP „Decision Value. Der ist bei Heizung aus =0 und bei Heizung ein =200.
                        Das Blockly hat dann nur die Funktion
                        wenn Decision Value = 0 dann wlan Dose aus
                        Sonst
                        WLAN Dose ein

                        Du schreibst leider nicht was für einen Fensterkontakt du hast. Wenn das auch ein Homematic tfk ist, kannst du den per Direktverknüpfung mit dem HM Thermostat verbinden und musst dich auch nicht mehr per Script drum kümmern, ob Fenster auf oder zu.

                        Für das händische Einschalten der Heizung direkt an der WLAN Dose, wählst du vorher am HM Thermostat mit der linken Taste den Manu Mode. Wenn die Regelung wieder greifen soll wählst du Auto Mode.
                        Damit das nicht vergessen geht kann man die Umschaltung auf Auto mit einem Script z.B. nachts um 00:00 automatisieren.

                        Kaba 1 Reply Last reply Reply Quote 0
                        • paul53
                          paul53 @Kaba last edited by

                          @kaba
                          Im Skript sind keine Fehler zu erkennen. Das Skript läuft in der JS-Instanz 0? Wenn ja, füge mal Debug-Blöcke in den Temperatur-Trigger ein, um die Temperatur und den Sollwert zu loggen.

                          Kaba 2 Replies Last reply Reply Quote 0
                          • paul53
                            paul53 @Kaba last edited by

                            @kaba sagte: ergänzt, dass wenn Abends das Rollo schon geschlossen ist, es beim öffnen des Fensters hoch fährt.

                            Das solltest Du in einem Trigger mit dem Ausschalten der Heizung zusammenfassen.

                            Bild_2022-01-25_163228.png

                            Kaba 1 Reply Last reply Reply Quote 0
                            • Kaba
                              Kaba @Linedancer last edited by

                              @linedancer

                              Danke für deinen Vorschlag, ich habe allerings "nur" das Thermostat ohne Tasten. Der Fensterkontakt ist nicht von HM.

                              1 Reply Last reply Reply Quote 0
                              • Kaba
                                Kaba @paul53 last edited by

                                @paul53

                                Ja, läuft in der nuller Instanz. Habe ich soeben eingefügt.

                                1 Reply Last reply Reply Quote 0
                                • Kaba
                                  Kaba @paul53 last edited by

                                  @paul53

                                  Vielen Dank, gute Idee. Habe ich so umgesetzt 👍

                                  1 Reply Last reply Reply Quote 0
                                  • Kaba
                                    Kaba @paul53 last edited by

                                    @paul53 sagte in Blockly-Script Thermostat/Heizung:

                                    @kaba
                                    Im Skript sind keine Fehler zu erkennen. Das Skript läuft in der JS-Instanz 0? Wenn ja, füge mal Debug-Blöcke in den Temperatur-Trigger ein, um die Temperatur und den Sollwert zu loggen.

                                    Ich habe den Fehler bzw. das Problem gefunden. Ich habe die Temperatur ja nachträglich noch angepasst (auf 16 Grad) scheinbar ist irgendwo aber noch die 17 gespeichert, denn die Heizung ist gerade bei >=18 aus gegangen.

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    951
                                    Online

                                    31.7k
                                    Users

                                    79.6k
                                    Topics

                                    1.3m
                                    Posts

                                    blockly
                                    4
                                    27
                                    1436
                                    Loading More Posts
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    Community
                                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                    The ioBroker Community 2014-2023
                                    logo