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. Blockly-Script Thermostat/Heizung

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    15
    1
    876

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    685

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.9k

Blockly-Script Thermostat/Heizung

Geplant Angeheftet Gesperrt Verschoben Blockly
blockly
27 Beiträge 4 Kommentatoren 2.4k Aufrufe 4 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.
  • paul53P paul53

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

    Sie muss bei >= 18 °C abschalten.

    KabaK Offline
    KabaK Offline
    Kaba
    schrieb am zuletzt editiert von
    #17

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

    paul53P 1 Antwort Letzte Antwort
    0
    • KabaK Kaba

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

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

      @kaba sagte: tut sie leider nicht.

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

      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

      KabaK 2 Antworten Letzte Antwort
      0
      • paul53P paul53

        @kaba sagte: tut sie leider nicht.

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

        KabaK Offline
        KabaK Offline
        Kaba
        schrieb am zuletzt editiert von
        #19

        @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);
          }
        });
        
        paul53P 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @kaba sagte: tut sie leider nicht.

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

          KabaK Offline
          KabaK Offline
          Kaba
          schrieb am zuletzt editiert von
          #20

          @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.

          paul53P 1 Antwort Letzte Antwort
          0
          • L Online
            L Online
            Linedancer
            schrieb am zuletzt editiert von Linedancer
            #21

            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.

            –

            Ciao, Gerhard

            KabaK 1 Antwort Letzte Antwort
            0
            • KabaK Kaba

              @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);
                }
              });
              
              paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #22

              @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.

              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

              KabaK 2 Antworten Letzte Antwort
              0
              • KabaK Kaba

                @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.

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

                @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

                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

                KabaK 1 Antwort Letzte Antwort
                0
                • L 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.

                  KabaK Offline
                  KabaK Offline
                  Kaba
                  schrieb am zuletzt editiert von
                  #24

                  @linedancer

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

                  1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @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.

                    KabaK Offline
                    KabaK Offline
                    Kaba
                    schrieb am zuletzt editiert von
                    #25

                    @paul53

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

                    1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @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

                      KabaK Offline
                      KabaK Offline
                      Kaba
                      schrieb am zuletzt editiert von
                      #26

                      @paul53

                      Vielen Dank, gute Idee. Habe ich so umgesetzt :+1:

                      1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @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.

                        KabaK Offline
                        KabaK Offline
                        Kaba
                        schrieb am zuletzt editiert von
                        #27

                        @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 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

                        607

                        Online

                        32.6k

                        Benutzer

                        82.0k

                        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