Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. HM Heizung Modus

    NEWS

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    HM Heizung Modus

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      Smartuser last edited by

      @kmxak:

      Moin,

      wollte mich gerade mal meiner Heizung widmen habe allerdings einige verwirrungen.

      Im HM UI kann man ein aktives Wochenprogramm anlegen dann hat man eine Comfort Option und eine Eco Funktion.

      Als Datenpunkt finde ich Comfort das wohl die Temp dann auf den fixen wert stellt.

      Lowering Mode ist der Eco Mode?

      Die Wochenprogramme sind nicht über ioBroker ansteuerbar?

      Kann mir ein HM Experte helfen? `

      Hi,

      schau dir mal diesen Thread an:

      http://forum.iobroker.net/viewtopic.php?f=21&t=6080

      Gruß

      1 Reply Last reply Reply Quote 0
      • kmxak
        kmxak Most Active last edited by

        das Script kenne ich war mir zu umfangreich… mal sehen

        1 Reply Last reply Reply Quote 0
        • Blackmike
          Blackmike last edited by

          wochenprogramme sind auch von iobroker aus änderbar, aber nicht zu einfach über die States:

          ich habs hier mal versucht:

          http://forum.iobroker.net/viewtopic.php … 343#p63343

          mittlerweile läuft das bei mir

          gruss, black

          1 Reply Last reply Reply Quote 0
          • eric2905
            eric2905 last edited by

            Moin,

            @kmxak:

            Die Wochenprogramme sind nicht über ioBroker ansteuerbar? `
            die Wochenprogramme sind ein Problem - die liegen nicht in der CCU, sondern in dem einzelnen Komponenten. Sie werden nur über die CCU "verwaltet".

            Es gibt im HM-Forum einen langen Thread dazu (und wohl auch eine Umsetzung, wie man das Scriptgesteuert machen kann). Soweit ich weiß, hat es aber noch keiner für/nach ioBroker umgesetzt.

            Das ist mein aktueller Wissenstand zu dem Thema.

            Gruß,

            Eric

            1 Reply Last reply Reply Quote 0
            • M
              Marcolotti last edited by

              Doch, ich hab das 😄

              721_wochenprogrammuebersicht.jpg

              folgendes Script in der CCU2 unter /usr/local als setparam.tcl hinterlegen:

               `#!/bin/tclsh
                  #
                  # Aufruf für ein putParamset (z.B. via system.Exec)
                  # =================================================
                  #
                  # tclsh setparam <addresse>  <datentyp> <wert>
                  # z.B.
                  # tclsh setparam GEQ004711:2 MODE_TEMPERATUR_REGULATOR int 2
                  #
                  load tclrpc.so
                  set item [lindex $argv 1]
                  set datatype [lindex $argv 2]
                  set val [lindex $argv 3]
                  set cmd "{$item {$datatype $val}}"
                  xmlrpc http://192.168.178.34:2001/ putParamset ]  </wert></datentyp></addresse>`
              
              Natürlich die IP-Adresse tauschen.
              
              Die LEQ musst du noch anpassen für dein Wandthermostat.
              
              HM Script:
              `~~[code]~~string cmd = "tclsh /usr/local/setparam.tcl LEQ1463266 WEEK_PROGRAM_POINTER int 1";
              dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State(cmd);[/code]`
              
              Wochenprogramm 1 = WEEK_PROGRAM_POINTER int 0
              
              Wochenprogramm 2 = WEEK_PROGRAM_POINTER int 1
              
              Wochenprogramm 3 = WEEK_PROGRAM_POINTER int 2
              
              Ich schalte automatisch je nach Arbeitsplan und Anwesenheit. Funktioniert zuverlässig.
              
              Gruß Marco
              
              1 Reply Last reply Reply Quote 0
              • kmxak
                kmxak Most Active last edited by

                danke euch.

                Ach herrje ist das alles kompliziert.

                1 Reply Last reply Reply Quote 0
                • Blackmike
                  Blackmike last edited by

                  du kannst das in TCL auf der CCU auf der CCU machen

                  kann man,muss man nicht

                  es geht auch von IOBroker aus unter benutzung der :8181 ScriptApi der CCU

                  // Konstanten für CCU Push
                  var http = require('http'); 
                  var path = "/blabla.exe";
                  
                  function setCCUscript (sDevice,wochenprog) {
                      var data = 'object o1= devices.Get("' + sDevice + '");';
                      data +='string s2="";';
                      data +='if (o1) {';
                      data += 'xmlrpc.PutParamset (o1.Interface(), o1.Address(), "MASTER", "WEEK_PROGRAM_POINTER", '+ wochenprog.toString () +'); s2="SET";';
                      data += '} else { s2 = "NO DEVICE"; }';   
                      return data
                  }
                  
                  function setPushVar (data) {
                      var options = {
                      host: getObject('system.adapter.hm-rpc.0').native.homematicAddress,
                      port: 8181,
                      path: path,
                      method: 'POST',
                      headers: {
                          'User-Agent' : 'Mozilla/5.0',
                          'Content-Type': 'text/plain',
                          'Content-Length': data.length,
                      }
                      };
                      return options;
                  }
                  
                  function httpPost (options,data) {
                      var req = http.request(options, function(res) {
                          var body='';
                          res.on('data', function(d) { body += d.toString (); });
                          res.on('end', function() {   });      
                      });
                      req.on('error', function(e) { log('ERROR: ' + e.message,"warn"); });
                      (data ? req.write(data) : log("Daten: keine Daten angegeben"));
                      req.end();
                  }
                  
                  // Bei Änderung von Wochenprogramm Küche Push senden an CCU2
                  
                  on ({id: "javascript.0.WEEKPROG.KUECHE", change: 'ne'}, function(obj) {
                      var script = setCCUscript ("AI_KUECHE_TH",getState ("javascript.0.WEEKPROG.KUECHE").val);
                      httpPost (setPushVar (script),script);
                      log ("Ändern Küche Wochenprog auf Programm " + getState ("javascript.0.WEEKPROG.KUECHE").val);
                  });
                  

                  Das Programmist ein Ausschnitt aus Programm von mir und macht folgendes:

                  Es existiert ein Javascript Object unter Javascript.0.WEEKPROG.KUECHE Typ Zahl Wertebereich 0..2

                  die Schedule unter on wird aufgerufen bei einer änderung von javascript.0.WEEKPROG.KUECHE

                  und schreibt im angegebenen Device "AI_KUECHE_TH" , muss natürlich angepasst werden, den Weekpointer auf den Wert, den javascript.0.WEEKPROG.KUECHE hat

                  Der Part hier kommt ohne TCL aus und kann bei Bedarf auf andere Werte des Bereiches Master angepasst werden.

                  gruss, Black

                  1 Reply Last reply Reply Quote 0
                  • K
                    Kev0 last edited by

                    @Blackmike

                    könntest du nochmal einem Java Deppen wie mir erklären wie ich das skript zu nutzen habe?

                    Meine Intention ist bei Abwesenheit die gesamten Thermostate in ein anderes Wochenprogramm zu versetzen.

                    Grüße

                    Kevin

                    1 Reply Last reply Reply Quote 0
                    • BuZZy
                      BuZZy last edited by

                      Wenn du wirklich nur bei Abwesenheit eine bestimmte Temperatur setzen willst,

                      wieso setzt du diese dann nicht einfach bei Abwesenheit?

                      Oder soll bei Abwesenheit wirklich ein anderes Wochenprogramm laufen was die Temperaturen zu festgelegten Uhrzeiten hoch und runter regelt obwohl niemand zuhause ist?

                      Gruß

                      1 Reply Last reply Reply Quote 0
                      • K
                        Kev0 last edited by

                        Hi,

                        habe gar nicht realisiert das du geantwortet hast 😉

                        Ja ich möchte ein anderes Wochenprogramm abfahren, da beim Umstellen von Auto auf Manuell bei Abwesenheit und umgekehrt beim setzten von Manuell auf Auto Modus bei Anwesenheit die Heizungen erstmal unnötig aufreißen und die Wohnung ist plötzlich eine Sauna.

                        Wenn ich jedoch nur das Wochenprogramm ändere ist das Verhalten anders.

                        Grüße

                        1 Reply Last reply Reply Quote 0
                        • F
                          Flauschi last edited by

                          das musst Du mir nun erklären…also:

                          Wochenprogramm: Montag bis Freitag 16:30 - 22:00 Uhr = 21 °C

                          davon gehen wir einfach mal aus.

                          Wenn Du nun abwesend bist, schaltest Du alles einfach Manu: 18 °C.

                          Nun bist Du heute mal länger unterwegs und kommst gegen 20:00 Uhr heim..... Dein Automatismus, setzt nun alles Auto = 21°C

                          und jetzt überschwingt Deine Heizung so, dass Du eine "Sauna" hast?

                          Das würde ich aber mal an der Vorlauftemperatur einstellen...

                          ich verstehe nicht, warum Dir ein anderes Wochenprogramm dieses Verhalten abändert? Das ist ja ein Regelverhalten der Heizung.

                          Das heisst, wenns heizen soll, dann gehen Deine Ventile auf.....sobald (bzw. knapp vorher) machen die Ventile zu...nun sind Deine Heizkörper aber so heiss, dass die Heizung gnadenlos überschwingt.....

                          Das macht ein anderes Wochenprogramm doch auch 🙂

                          1 Reply Last reply Reply Quote 0
                          • BuZZy
                            BuZZy last edited by

                            Hallo,

                            In wie fern sollte sich das Verhalten denn ändern wenn du Wochenprogramme änderst anstatt den manuellen Temperaturen?

                            Die Thermostate steuern in gleicher Weise auf die eingestellte Soll-Temperatur. Egal ob die Soll-Temperatur vom Manu- oder Automodus kommt..

                            Entscheident ist die Soll-Temperatur - wie gesagt - egal ob Manu- oder Wochenprogramm.

                            Ich tippe eher auf falsche Einstellung am Heizkessel.

                            EDIT:

                            genau wie Flauschi das geschrieben hat. 😄 😉

                            Gruß

                            1 Reply Last reply Reply Quote 0
                            • K
                              Kev0 last edited by

                              Danke für die Antworten.

                              Leider kann ich weder an der Vorlauftemperatur (aktuell 61,9°C) drehen noch kleiner Heizkörper anschaffen.

                              Es ist eine Mietwohnung und die Heizungen sind für die Raumgröße leider ziemlich überdimensioniert.

                              Mir ist aufgefallen das beim Wechsel von Manu auf Auto ein anderes Verhalten gefahren wird als beim Wechseln der Wochenprogramme.

                              Ich denke mal das fällt bei richtig dimensionierten Heizungen gar nicht erst auf, ist für mich aber die einzige Lösung das harte Überschwingen abzufangen.

                              Wäre cool wenn mir jemand erklärt wie ich es umsetzen kann, nicht warum es keinen Sinn machen würde.

                              Grüße

                              Kevin

                              1 Reply Last reply Reply Quote 0
                              • BuZZy
                                BuZZy last edited by

                                Da musst du wohl über ein Script auf der CCU die Programme umschalten.

                                Erstell auf der CCU eine Systemvariable und ein Script auf der CCU welches diese variable überwacht. Wenn variable = true dann Wochenprogramm X setzen wenn Variable = false dann Wochenprogramm Y setzen..

                                Diese CCU Variablen kann man im iobroker dann mit dem Rega Adapter steuern.

                                Gruß

                                1 Reply Last reply Reply Quote 0
                                • K
                                  Kev0 last edited by

                                  @Blackmike:

                                  du kannst das in TCL auf der CCU auf der CCU machen

                                  kann man,muss man nicht

                                  es geht auch von IOBroker aus unter benutzung der :8181 ScriptApi der CCU

                                  // Konstanten für CCU Push
                                  var http = require('http'); 
                                  var path = "/blabla.exe";
                                  
                                  function setCCUscript (sDevice,wochenprog) {
                                      var data = 'object o1= devices.Get("' + sDevice + '");';
                                      data +='string s2="";';
                                      data +='if (o1) {';
                                      data += 'xmlrpc.PutParamset (o1.Interface(), o1.Address(), "MASTER", "WEEK_PROGRAM_POINTER", '+ wochenprog.toString () +'); s2="SET";';
                                      data += '} else { s2 = "NO DEVICE"; }';   
                                      return data
                                  }
                                  
                                  function setPushVar (data) {
                                      var options = {
                                      host: getObject('system.adapter.hm-rpc.0').native.homematicAddress,
                                      port: 8181,
                                      path: path,
                                      method: 'POST',
                                      headers: {
                                          'User-Agent' : 'Mozilla/5.0',
                                          'Content-Type': 'text/plain',
                                          'Content-Length': data.length,
                                      }
                                      };
                                      return options;
                                  }
                                  
                                  function httpPost (options,data) {
                                      var req = http.request(options, function(res) {
                                          var body='';
                                          res.on('data', function(d) { body += d.toString (); });
                                          res.on('end', function() {   });      
                                      });
                                      req.on('error', function(e) { log('ERROR: ' + e.message,"warn"); });
                                      (data ? req.write(data) : log("Daten: keine Daten angegeben"));
                                      req.end();
                                  }
                                  
                                  // Bei Änderung von Wochenprogramm Küche Push senden an CCU2
                                  
                                  on ({id: "javascript.0.WEEKPROG.KUECHE", change: 'ne'}, function(obj) {
                                      var script = setCCUscript ("AI_KUECHE_TH",getState ("javascript.0.WEEKPROG.KUECHE").val);
                                      httpPost (setPushVar (script),script);
                                      log ("Ändern Küche Wochenprog auf Programm " + getState ("javascript.0.WEEKPROG.KUECHE").val);
                                  });
                                  

                                  Das Programmist ein Ausschnitt aus Programm von mir und macht folgendes:

                                  Es existiert ein Javascript Object unter Javascript.0.WEEKPROG.KUECHE Typ Zahl Wertebereich 0..2

                                  die Schedule unter on wird aufgerufen bei einer änderung von javascript.0.WEEKPROG.KUECHE

                                  und schreibt im angegebenen Device "AI_KUECHE_TH" , muss natürlich angepasst werden, den Weekpointer auf den Wert, den javascript.0.WEEKPROG.KUECHE hat

                                  Der Part hier kommt ohne TCL aus und kann bei Bedarf auf andere Werte des Bereiches Master angepasst werden.

                                  gruss, Black `

                                  Ist das hier nicht rein auf iobroker laufend?

                                  Grüße

                                  1 Reply Last reply Reply Quote 0
                                  • BuZZy
                                    BuZZy last edited by

                                    Scheint so, ich weiß allerdings nicht was mit````
                                    var path = "/blabla.exe";

                                    
                                    Ich persönlich finde die Lösung mit der Systemvariable und dem Mini Skript auf der CCU "eleganter".
                                    
                                    Gruß
                                    1 Reply Last reply Reply Quote 0
                                    • K
                                      Kev0 last edited by

                                      Das war ja der Grund meiner Nachfrage <emoji seq="1f601">😁</emoji>

                                      Ich finde es wesentlich besser ALLES über eine Instanz sprich iobroker zu regeln, da die CCU2 dazu zu dätsch ist. Ich habe mir schon 2x das System mit Scripten zerschossen.

                                      Darum lieber iobroker.

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

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate
                                      FAQ Cloud / IOT
                                      HowTo: Node.js-Update
                                      HowTo: Backup/Restore
                                      Downloads
                                      BLOG

                                      995
                                      Online

                                      32.1k
                                      Users

                                      80.7k
                                      Topics

                                      1.3m
                                      Posts

                                      8
                                      18
                                      1940
                                      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