Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Skript Heizung - Homematic Geräte

    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

    Skript Heizung - Homematic Geräte

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

      hallo, leider stehe ich komplett an un benötige Hilfe.... 😞

      2 Wandthermostate sollen einen Schaltaktor (für Pumpe) schalten.

      in verwendung: Adapter Heatingcontroll

      2xHomematic Funk-Wandthermostat HM-TC-IT-WM-W-EU
      4x Funk-Heizkörperthermostat HM-CC-RT-DN (2 pro Raumthermostat!)
      1x Homematic Funk-Schaltaktor 2fach, Unterputzmontage HM-LC-Sw2-FM (je Schaltausgang 1 Pumpe) <-- 1 Pumpe Haus, 1 Pumpe Zubau (Zubau: 2 Wandthermostate 4HK Thermostate!)


      über Heatingcontroll werden 2 Datenpunkte angesteuert - Heizung Aromastudio und Heizung Wohnzimmer

      nun schaffe ich es zwar über ein Skript den Aktor der Pumpe einzuschalten, aber nicht mehr aus.
      Oder es funktioniert einfach beides nicht 😞

      Auf Facebook habe ich bereits gefragt, daher erlaube ich mir dies zu verlinken.. da ist auch ein kleiner Kriesen verlauf.
      [https://www.facebook.com/groups/440499112958264/permalink/1377388715935961/](link url)

      Achja... trage ich den pumpenaktor im Heatingcontrol Adapter bei beiden Räumen ein, wird immer nur bei einem Raum geschalten, wenn Raum 2 schalten möchte, bleibt der Aktor aus 😞

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

        @Wieger-Daniel
        Ich würde die Pumpen abhängig von der maximalen Ventilstellung der HM-CC-RT-DN schalten:

        // Pumpen abhängig von Ventilstellung schalten
        
        const idV1 = 'hm-rpc...';
        const idV2 = 'hm-rpc...';
        const idV3 = 'hm-rpc...';
        const idV4 = 'hm-rpc...';
        const idP1 = 'hm-rpc...';
        const idP2 = 'hm-rpc...';
        
        var v1 = getState(idV1).val;
        var v2 = getState(idV2).val;
        var v3 = getState(idV3).val;
        var v4 = getState(idV4).val;
        var p1 = getState(idP1).val;
        
        function pumpen() {
            let maxV = Math.max(v1, v2, v3, v4);
            if(maxV > 15) p1 = true;
            else if (maxV < 10) p1 = false;
            if(getState(idP1).val != p1) setState(idP1, p1)
            if(getState(idP2).val != p1) setState(idP2, p1)
        }
        
        pumpen(); // Script start
        
        on(idV1, function(dp) {
            v1 = dp.state.val;
            pumpen();
        });
        on(idV2, function(dp) {
            v2 = dp.state.val;
            pumpen();
        });
        on(idV3, function(dp) {
            v3 = dp.state.val;
            pumpen();
        });
        on(idV4, function(dp) {
            v4 = dp.state.val;
            pumpen();
        });
        
        Wieger Daniel 1 Reply Last reply Reply Quote 0
        • Wieger Daniel
          Wieger Daniel @paul53 last edited by

          @paul53
          Vielen Dank

          Habe dies über ein Homematic Script bereits versucht und bin gescheitert 😞

          Irgendwie sind die ventile scheinbar länger offen als notwendig und daher schaltet die heizung auch ned richtig 😞

          Darf ich dein skript versuchen?

          Muss ich nur die grünen Werte anpassen oder?

          Also V1, V2, V3, V4 sind die HK Ventile. P1 der Pumpenaktor.

          Sollte ich alle 4 Ventile eintragen, oder nur 2(sind ja 2 pro Raumthermostat).

          Vielen dank

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

            @Wieger-Daniel sagte:

            Muss ich nur die grünen Werte anpassen oder?

            Ja, die IDs müssen eingetragen werden.

            @Wieger-Daniel sagte in Skript Heizung - Homematic Geräte:

            V1, V2, V3, V4 sind die HK Ventile. P1 der Pumpenaktor.

            Ja.

            @Wieger-Daniel sagte in Skript Heizung - Homematic Geräte:

            Sollte ich alle 4 Ventile eintragen

            Ja. Die Ventilstellungen können trotz gemeinsamem Raumthermostat unterschiedlich sein (I-Anteil des Reglers). Der Raumthermostat regelt nicht, sondern gibt nur Temperatur-Istwert und -Sollwert vor.

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

              @paul53
              hab das nun übernommen, die Datenpunkte angepasst..

              Pumpe schaltet nicht aus. 😞
              alle Ventile sind auf 0% Pumpe läuft frohlockend weiter.!!
              broker0.png

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

                @Wieger-Daniel sagte:

                die Datenpunkte angepasst..

                idP1 und idP2 sind identisch. Wenn nur eine Pumpe gesteuert werden soll, dann lösche alles, was idP2 enthält.

                Du verwendest eine negative Hysterese. Ändere in

                    if(maxV > 22) p1 = true;
                    else if (maxV < 20) p1 = false;
                
                Wieger Daniel 1 Reply Last reply Reply Quote 0
                • Wieger Daniel
                  Wieger Daniel @paul53 last edited by

                  @paul53
                  ok fast alle angepasst 😮

                  hatte den 2. Datenpunkt mit idP2 zuerst nicht rausgelöscht (übersehen) und ne fehlermeldung erhalten... daher hab ich einfach mal den gleichen wie bei P1 genommen :'D

                  uff die zwei maxV hab ich vertauscht 😕

                  dann kanns ja gar nicht funktionieren, wenn ich hier so pfusche...

                  Danke, Danke Danke 🙂
                  Ich hoffe jetzt hab ichs und es funktioniert. ich glaub ich muss mich nun echt mal in Javascripte einlesen/einlernen...

                  // Pumpen abhängig von Ventilstellung schalten
                  
                   
                  
                  const idV1 = 'hm-rpc.0.REQ0840934.4.VALVE_STATE'/*Wohzimmer2 3 VALVE STATE*/;
                  
                  const idV2 = 'hm-rpc.0.REQ0840963.4.VALVE_STATE'/*Wohnzimmer HK 3 VALVE STATE*/;
                  
                  const idV3 = 'hm-rpc.0.REQ0841103.4.VALVE_STATE'/*Aromastudio HK 3 VALVE STATE*/;
                  
                  const idV4 = 'hm-rpc.0.REQ0841104.4.VALVE_STATE'/*Aromastudio HK 2 4 VALVE STATE*/;
                  
                  const idP1 = 'hm-rpc.0.QEQ0022408.1.STATE'/*Heizpumpe unten STATE*/;
                  
                   
                  
                  var v1 = getState(idV1).val;
                  
                  var v2 = getState(idV2).val;
                  
                  var v3 = getState(idV3).val;
                  
                  var v4 = getState(idV4).val;
                  
                  var p1 = getState(idP1).val;
                  
                   
                  
                  function pumpen() {
                  
                      let maxV = Math.max(v1, v2, v3, v4);
                  
                      if(maxV > 22) p1 = true;
                  
                      else if (maxV < 20) p1 = false;
                  
                      if(getState(idP1).val != p1) setState(idP1, p1)
                  
                  }
                  
                   
                  
                  pumpen(); // Script start
                  
                   
                  
                  on(idV1, function(dp) {
                  
                      v1 = dp.state.val;
                  
                      pumpen();
                  
                  });
                  
                  on(idV2, function(dp) {
                  
                      v2 = dp.state.val;
                  
                      pumpen();
                  
                  });
                  
                  on(idV3, function(dp) {
                  
                      v3 = dp.state.val;
                  
                      pumpen();
                  
                  });
                  
                  on(idV4, function(dp) {
                  
                      v4 = dp.state.val;
                  
                      pumpen();
                  
                  });
                  
                  

                  so hab ichs nun gespeichert 🙂

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

                    @Wieger-Daniel sagte:

                    so hab ichs nun gespeichert

                    Mit Firefox aus dem Forum kopiert ? Darauf deuten die vielen Leerzeilen hin.

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

                      @paul53 sagte in Skript Heizung - Homematic Geräte:

                      @Wieger-Daniel sagte:

                      so hab ichs nun gespeichert

                      Mit Firefox aus dem Forum kopiert ? Darauf deuten die vielen Leerzeilen hin.

                      ja mit Firefox kopiert..

                      So einschalten hat nun schon mal funktioniert. 🙂
                      So Ausschalten funktioniert auch.

                      nochmals vielen Dank 🙂
                      Aber die Übertragung der Ventilöffnung an die WEBUI ist echt sehr träge 😕 die Ventile sind teils schon sicherlich fast ne Minute zu, kommt erst die Anzeige von 0% in der Webui

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

                        @Wieger-Daniel sagte:

                        die Ventile sind teils schon sicherlich fast ne Minute zu, kommt erst die Anzeige von 0% in der Webui

                        Die Thermostate senden nur alle ca. 2,5 Minuten.

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

                          @paul53 manchmal wäre mir etwas kürzere Sendeintervalle lieber 🙂

                          Aber egal. Kann man damit leben.
                          Hauptsache es läuft nun.

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

                            @Wieger-Daniel sagte:

                            manchmal wäre mir etwas kürzere Sendeintervalle lieber

                            Dann müssten die Batterien öfter gewechselt werden.

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            794
                            Online

                            31.9k
                            Users

                            80.1k
                            Topics

                            1.3m
                            Posts

                            blockly heating
                            2
                            12
                            503
                            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