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. [Geklärt] Auto Hand Blockly schaltet nicht wie gewünscht

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    13
    1
    146

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.3k

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

[Geklärt] Auto Hand Blockly schaltet nicht wie gewünscht

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
blocklyjavascript
16 Beiträge 2 Kommentatoren 624 Aufrufe 1 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

    @Altersrentner
    Das kann nicht funktionieren, denn Wert darf keine Variable sein, sondern eine Eigenschaft des Trigger-Datenpunktes. Benenne die Variable Wert um in value (genau so geschrieben), damit es funktioniert.

    Das erste Kommando ändere so:

    Blockly_temp.JPG

    A Offline
    A Offline
    Altersrentner
    schrieb am zuletzt editiert von
    #7

    @paul53
    Habe Deinen Vorschlag eingearbeitet.
    Brachte aber leider keinen Erfolg.

    var auto, value;
    
    
    // Hand Auto
    auto = getState("javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik").val;
    on({id: "javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik"/*Heizungssteuerung. Hand_Automatik*/, change: "ne"}, function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      auto = value;
      if (!auto) {
        // Alle 4 Pumpen aus
        setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
        setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
        setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
        setState("hm-rpc.2.MEQ1534348.13"/*Pumpe 1A7*/, false);
      }
    });
    // Raumtemperatur UG
    on({id: "mihome.0.devices.weather_v1_158d0002329079.temperature"/*Temperature Eingang*/, change: "ne"}, function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      // Puffer-Temperatur
      if (getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val > 35 && auto) {
        if (value >= 20.5) {
          // Pumpe UG aus
          setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
        }
        if (value < 20) {
          // Pumpe UG ein
          setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, true);
        }
      }
    });
    // Raumtemperatur EG
    on({id: "mihome.0.devices.weather_v1_158d00023290e8.temperature"/*Temperature Wohnzimmer*/, change: "ne"}, function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      // Puffer-Temperatur
      if (getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val > 35 && auto) {
        if (value >= 23) {
          // Pumpe EG aus
          setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
        }
        if (value <= 22.9) {
          // Pumpe EG aus
          setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, true);
        }
      }
    });
    // Raumtemperatur OG
    on({id: "fhem.0.TF_Bad.temperature"/*TF_Bad temperature*/, change: "ne"}, function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      // Puffer-Temperatur
      if (getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val > 35 && auto) {
        if (value >= 22.5) {
          // Pumpe EG aus
          setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
        }
        if (value < 22.3) {
          // Pumpe EG aus
          setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, true);
        }
      }
    });
    _text
    
    

    Kann es sein, das ein anderes Blockly das Auto/Hand beeinflusst?
    Wenn ja, was ich vermute. Wie bekomme ich raus welches.
    Gibt es einen Befehl den ich nutzen könnte um Verbindungen anzuzeigen

    paul53P 1 Antwort Letzte Antwort
    0
    • A Altersrentner

      @paul53
      Habe Deinen Vorschlag eingearbeitet.
      Brachte aber leider keinen Erfolg.

      var auto, value;
      
      
      // Hand Auto
      auto = getState("javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik").val;
      on({id: "javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik"/*Heizungssteuerung. Hand_Automatik*/, change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        auto = value;
        if (!auto) {
          // Alle 4 Pumpen aus
          setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
          setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
          setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
          setState("hm-rpc.2.MEQ1534348.13"/*Pumpe 1A7*/, false);
        }
      });
      // Raumtemperatur UG
      on({id: "mihome.0.devices.weather_v1_158d0002329079.temperature"/*Temperature Eingang*/, change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        // Puffer-Temperatur
        if (getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val > 35 && auto) {
          if (value >= 20.5) {
            // Pumpe UG aus
            setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
          }
          if (value < 20) {
            // Pumpe UG ein
            setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, true);
          }
        }
      });
      // Raumtemperatur EG
      on({id: "mihome.0.devices.weather_v1_158d00023290e8.temperature"/*Temperature Wohnzimmer*/, change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        // Puffer-Temperatur
        if (getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val > 35 && auto) {
          if (value >= 23) {
            // Pumpe EG aus
            setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
          }
          if (value <= 22.9) {
            // Pumpe EG aus
            setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, true);
          }
        }
      });
      // Raumtemperatur OG
      on({id: "fhem.0.TF_Bad.temperature"/*TF_Bad temperature*/, change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        // Puffer-Temperatur
        if (getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val > 35 && auto) {
          if (value >= 22.5) {
            // Pumpe EG aus
            setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
          }
          if (value < 22.3) {
            // Pumpe EG aus
            setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, true);
          }
        }
      });
      _text
      
      

      Kann es sein, das ein anderes Blockly das Auto/Hand beeinflusst?
      Wenn ja, was ich vermute. Wie bekomme ich raus welches.
      Gibt es einen Befehl den ich nutzen könnte um Verbindungen anzuzeigen

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

      @Altersrentner sagte:

      Habe Deinen Vorschlag eingearbeitet.

      Das Script muss so funktionieren.

      @Altersrentner sagte in Auto Hand Blockly schaltet nicht wie gewünscht:

      Kann es sein, das ein anderes Blockly das Auto/Hand beeinflusst?

      Das muss wohl so sein.

      @Altersrentner sagte in Auto Hand Blockly schaltet nicht wie gewünscht:

      Wenn ja, was ich vermute. Wie bekomme ich raus welches.

      Nach und nach deaktivieren.

      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

      A 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @Altersrentner sagte:

        Habe Deinen Vorschlag eingearbeitet.

        Das Script muss so funktionieren.

        @Altersrentner sagte in Auto Hand Blockly schaltet nicht wie gewünscht:

        Kann es sein, das ein anderes Blockly das Auto/Hand beeinflusst?

        Das muss wohl so sein.

        @Altersrentner sagte in Auto Hand Blockly schaltet nicht wie gewünscht:

        Wenn ja, was ich vermute. Wie bekomme ich raus welches.

        Nach und nach deaktivieren.

        A Offline
        A Offline
        Altersrentner
        schrieb am zuletzt editiert von
        #9

        @paul53 said in Auto Hand Blockly schaltet nicht wie gewünscht:

        Das Script muss so funktionieren.

        Davon war ich aufgrund Deiner Erfahrungen überzeugt.
        Ich denke jetzt das Skript gefunden zu haben, welches den Konflikt ausgelöst hat.
        Kann aber im Moment leider nicht weiter testen, da alle Raumtemperaturen
        bedingt durch Sonne über Temp.Soll liegen.
        Melde mich wieder.
        Danke erst mal.
        Gruß Michael

        1 Antwort Letzte Antwort
        0
        • A Offline
          A Offline
          Altersrentner
          schrieb am zuletzt editiert von
          #10

          Hallo paul53,
          Also es gibt jetzt zwei Skripte sprich Blocklys die für die Heizungssteuerung zuständig sind.
          Ursprünglich war dieser Skript zuständig und er funktioniert ohne Auto/Hand ohne Probleme:

          // Hier noch Räume OG eintragen
          // Prüfe Temp Puffer und Räume 1A7 schalten
          console.warn('Prüfe Temp Puffer und Räume');
          on({id: new RegExp('hm-rpc\\.0\\.OEQ0673599\\.2\\.TEMPERATURE' + "|" + 'mihome\\.0\\.devices\\.weather_v1_158d00023290e8\\.temperature' + "|" + 'mihome\\.0\\.devices\\.weather_v1_158d0002329079\\.temperature' + "|" + 'fhem\\.0\\.TF_Bad\\.temperature' + "|" + 'javascript\\.0\\.Eigene_Datenpunkte\\.Räume\\.Wohnzimmer\\.Heizung_EIN_AUS' + "|" + 'default'), change: "any"}, function (obj) {
              // wenn Temp Puffer >35 und Temp  Räume < Soll dann
            if (parseFloat(getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val) >= 35) {
              if (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9 || parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) <= 20 || parseFloat('fhem.0.TF_Bad.temperature') <= 22.3) {
                // Pumpe 1A7 einschalten
                console.warn('schalte 1A7 ein  ');
                setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, true);
              }
            }
            // Prüfe Temp Puffer und Räume 1A7 ausschalten
            if (parseFloat(getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val) <= 35) {
              if (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) >= 23 || parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) >= 20.5 && parseFloat('fhem.0.TF_Bad.temperature') >= 22.5) {
                // Pumpe 1A7 ausschalten
                console.warn('schalte 1A7  aus  ');
                setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, false);
              }
            }
            // Wenn Temp Eingang Ist > Soll Pumpe UG ausschalten
            if (parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) >= 20.5) {
              setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
            } else if (parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) <= 20) {
              setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, true);
            }
            // Wenn Temp WZ < Soll Pumpe EG einsschalten
            console.warn('Wenn Temp WZ <Soll Pumpe EG einschalten');
            if (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) >= 23) {
              console.warn(' Pumpe EG aus');
              setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
            }
            if (getState("javascript.0.Eigene_Datenpunkte.Räume.Wohnzimmer.Heizung_EIN_AUS").val == true && parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9) {
              setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
              console.warn(' Pumpe EG aus');
            }
            if (getState("javascript.0.Eigene_Datenpunkte.Räume.Wohnzimmer.Heizung_EIN_AUS").val == false && parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9) {
              console.warn(' Pumpe EG ein');
              setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, true);
            }
            // Wenn Temp Bad< Soll Pumpe OG einsschalten
            if (parseFloat(getState("fhem.0.TF_Bad.temperature").val) >= 22.5) {
              setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
            } else if (parseFloat(getState("fhem.0.TF_Bad.temperature").val) <= 22.3) {
              setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, true);
            }
          });
          _
          

          Nun ist aber das Auto/Hand Skript dazu gekommen.

          var auto, value;
          
          
          // Hand Auto
          auto = getState("javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik").val;
          on({id: "javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik"/*Heizungssteuerung. Hand_Automatik*/, change: "ne"}, function (obj) {
            var value = obj.state.val;
            var oldValue = obj.oldState.val;
            auto = value;
            if (!auto) {
              // Alle 4 Pumpen aus
              setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
              setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
              setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
              setState("hm-rpc.2.MEQ1534348.13"/*Pumpe 1A7*/, false);
            }
          });
          // Raumtemperatur UG
          on({id: "mihome.0.devices.weather_v1_158d0002329079.temperature"/*Temperature Eingang*/, change: "ne"}, function (obj) {
            var value = obj.state.val;
            var oldValue = obj.oldState.val;
            // Puffer-Temperatur
            if (getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val > 35 && auto) {
              if (value >= 20.5) {
                // Pumpe UG aus
                setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
              }
              if (value < 20) {
                // Pumpe UG ein
                setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, true);
              }
            }
          });
          // Raumtemperatur EG
          on({id: "mihome.0.devices.weather_v1_158d00023290e8.temperature"/*Temperature Wohnzimmer*/, change: "ne"}, function (obj) {
            var value = obj.state.val;
            var oldValue = obj.oldState.val;
            // Puffer-Temperatur
            if (getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val > 35 && auto) {
              if (value >= 23) {
                // Pumpe EG aus
                setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
              }
              if (value <= 22.9) {
                // Pumpe EG aus
                setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, true);
              }
            }
          });
          // Raumtemperatur OG
          on({id: "fhem.0.TF_Bad.temperature"/*TF_Bad temperature*/, change: "ne"}, function (obj) {
            var value = obj.state.val;
            var oldValue = obj.oldState.val;
            // Puffer-Temperatur
            if (getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val > 35 && auto) {
              if (value >= 22.5) {
                // Pumpe EG aus
                setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
              }
              if (value < 22.3) {
                // Pumpe EG aus
                setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, true);
              }
            }
          });
          
          

          `Beide Skripte beeinflussen sich gegenseitig.. Ich habe schon versucht, im AutoHand alle Blöcke außer Block 1 zu deaktivieren aber die Aktoren schalten sich bei Hand wieder ein.
          Mir ist klar, dass beide Skripte verknüpft werden müssen- aber wie???

          paul53P 1 Antwort Letzte Antwort
          0
          • A Altersrentner

            Hallo paul53,
            Also es gibt jetzt zwei Skripte sprich Blocklys die für die Heizungssteuerung zuständig sind.
            Ursprünglich war dieser Skript zuständig und er funktioniert ohne Auto/Hand ohne Probleme:

            // Hier noch Räume OG eintragen
            // Prüfe Temp Puffer und Räume 1A7 schalten
            console.warn('Prüfe Temp Puffer und Räume');
            on({id: new RegExp('hm-rpc\\.0\\.OEQ0673599\\.2\\.TEMPERATURE' + "|" + 'mihome\\.0\\.devices\\.weather_v1_158d00023290e8\\.temperature' + "|" + 'mihome\\.0\\.devices\\.weather_v1_158d0002329079\\.temperature' + "|" + 'fhem\\.0\\.TF_Bad\\.temperature' + "|" + 'javascript\\.0\\.Eigene_Datenpunkte\\.Räume\\.Wohnzimmer\\.Heizung_EIN_AUS' + "|" + 'default'), change: "any"}, function (obj) {
                // wenn Temp Puffer >35 und Temp  Räume < Soll dann
              if (parseFloat(getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val) >= 35) {
                if (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9 || parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) <= 20 || parseFloat('fhem.0.TF_Bad.temperature') <= 22.3) {
                  // Pumpe 1A7 einschalten
                  console.warn('schalte 1A7 ein  ');
                  setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, true);
                }
              }
              // Prüfe Temp Puffer und Räume 1A7 ausschalten
              if (parseFloat(getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val) <= 35) {
                if (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) >= 23 || parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) >= 20.5 && parseFloat('fhem.0.TF_Bad.temperature') >= 22.5) {
                  // Pumpe 1A7 ausschalten
                  console.warn('schalte 1A7  aus  ');
                  setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, false);
                }
              }
              // Wenn Temp Eingang Ist > Soll Pumpe UG ausschalten
              if (parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) >= 20.5) {
                setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
              } else if (parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) <= 20) {
                setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, true);
              }
              // Wenn Temp WZ < Soll Pumpe EG einsschalten
              console.warn('Wenn Temp WZ <Soll Pumpe EG einschalten');
              if (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) >= 23) {
                console.warn(' Pumpe EG aus');
                setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
              }
              if (getState("javascript.0.Eigene_Datenpunkte.Räume.Wohnzimmer.Heizung_EIN_AUS").val == true && parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9) {
                setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                console.warn(' Pumpe EG aus');
              }
              if (getState("javascript.0.Eigene_Datenpunkte.Räume.Wohnzimmer.Heizung_EIN_AUS").val == false && parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9) {
                console.warn(' Pumpe EG ein');
                setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, true);
              }
              // Wenn Temp Bad< Soll Pumpe OG einsschalten
              if (parseFloat(getState("fhem.0.TF_Bad.temperature").val) >= 22.5) {
                setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
              } else if (parseFloat(getState("fhem.0.TF_Bad.temperature").val) <= 22.3) {
                setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, true);
              }
            });
            _
            

            Nun ist aber das Auto/Hand Skript dazu gekommen.

            var auto, value;
            
            
            // Hand Auto
            auto = getState("javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik").val;
            on({id: "javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik"/*Heizungssteuerung. Hand_Automatik*/, change: "ne"}, function (obj) {
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
              auto = value;
              if (!auto) {
                // Alle 4 Pumpen aus
                setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
                setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
                setState("hm-rpc.2.MEQ1534348.13"/*Pumpe 1A7*/, false);
              }
            });
            // Raumtemperatur UG
            on({id: "mihome.0.devices.weather_v1_158d0002329079.temperature"/*Temperature Eingang*/, change: "ne"}, function (obj) {
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
              // Puffer-Temperatur
              if (getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val > 35 && auto) {
                if (value >= 20.5) {
                  // Pumpe UG aus
                  setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
                }
                if (value < 20) {
                  // Pumpe UG ein
                  setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, true);
                }
              }
            });
            // Raumtemperatur EG
            on({id: "mihome.0.devices.weather_v1_158d00023290e8.temperature"/*Temperature Wohnzimmer*/, change: "ne"}, function (obj) {
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
              // Puffer-Temperatur
              if (getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val > 35 && auto) {
                if (value >= 23) {
                  // Pumpe EG aus
                  setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                }
                if (value <= 22.9) {
                  // Pumpe EG aus
                  setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, true);
                }
              }
            });
            // Raumtemperatur OG
            on({id: "fhem.0.TF_Bad.temperature"/*TF_Bad temperature*/, change: "ne"}, function (obj) {
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
              // Puffer-Temperatur
              if (getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val > 35 && auto) {
                if (value >= 22.5) {
                  // Pumpe EG aus
                  setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
                }
                if (value < 22.3) {
                  // Pumpe EG aus
                  setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, true);
                }
              }
            });
            
            

            `Beide Skripte beeinflussen sich gegenseitig.. Ich habe schon versucht, im AutoHand alle Blöcke außer Block 1 zu deaktivieren aber die Aktoren schalten sich bei Hand wieder ein.
            Mir ist klar, dass beide Skripte verknüpft werden müssen- aber wie???

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

            @Altersrentner sagte:

            aber wie???

            Der Datenpunkt "javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik" muss in beiden Scripts ausgewertet werden.

            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

            1 Antwort Letzte Antwort
            0
            • A Offline
              A Offline
              Altersrentner
              schrieb am zuletzt editiert von
              #12

              Hallo paul53,
              meinst Du so?

              var auto, value;
              
              
              // Hier noch Räume OG eintragen
              // Prüfe Temp Puffer und Räume 1A7 schalten
              auto = getState("javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik").val;
              on({id: "javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik"/*Heizungssteuerung. Hand_Automatik*/, change: "ne"}, function (obj) {
                var value = obj.state.val;
                var oldValue = obj.oldState.val;
                auto = value;
                if (!auto) {
                  setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
                  setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                  setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
                  setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, false);
                }
              });
              console.warn('Prüfe Temp Puffer und Räume');
              on({id: new RegExp('hm-rpc\\.0\\.OEQ0673599\\.2\\.TEMPERATURE' + "|" + 'mihome\\.0\\.devices\\.weather_v1_158d00023290e8\\.temperature' + "|" + 'mihome\\.0\\.devices\\.weather_v1_158d0002329079\\.temperature' + "|" + 'fhem\\.0\\.TF_Bad\\.temperature' + "|" + 'javascript\\.0\\.Eigene_Datenpunkte\\.Räume\\.Wohnzimmer\\.Heizung_EIN_AUS' + "|" + 'default'), change: "any"}, function (obj) {
                  // wenn Temp Puffer >35 und Temp  Räume < Soll dann
                if (parseFloat(getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val) >= 35) {
                  if (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9 || parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) <= 20 || parseFloat('fhem.0.TF_Bad.temperature') <= 22.3) {
                    // Pumpe 1A7 einschalten
                    console.warn('schalte 1A7 ein  ');
                    setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, true);
                  }
                }
                // Prüfe Temp Puffer und Räume 1A7 ausschalten
                if (parseFloat(getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val) <= 35) {
                  if (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) >= 23 || parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) >= 20.5 && parseFloat('fhem.0.TF_Bad.temperature') >= 22.5) {
                    // Pumpe 1A7 ausschalten
                    console.warn('schalte 1A7  aus  ');
                    setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, false);
                  }
                }
                // Wenn Temp Eingang Ist > Soll Pumpe UG ausschalten
                if (parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) >= 20.5) {
                  setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
                } else if (parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) <= 20) {
                  setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, true);
                }
                // Wenn Temp WZ < Soll Pumpe EG einsschalten
                console.warn('Wenn Temp WZ <Soll Pumpe EG einschalten');
                if (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) >= 23) {
                  console.warn(' Pumpe EG aus');
                  setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                }
                if (getState("javascript.0.Eigene_Datenpunkte.Räume.Wohnzimmer.Heizung_EIN_AUS").val == true && parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9) {
                  setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                  console.warn(' Pumpe EG aus');
                }
                if (getState("javascript.0.Eigene_Datenpunkte.Räume.Wohnzimmer.Heizung_EIN_AUS").val == false && parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9) {
                  console.warn(' Pumpe EG ein');
                  setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, true);
                }
                // Wenn Temp Bad< Soll Pumpe OG einsschalten
                if (parseFloat(getState("fhem.0.TF_Bad.temperature").val) >= 22.5) {
                  setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
                } else if (parseFloat(getState("fhem.0.TF_Bad.temperature").val) <= 22.3) {
                  setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, true);
                }
              });
              _tex
              

              aber leider funktioniert das nicht

              paul53P 1 Antwort Letzte Antwort
              0
              • A Altersrentner

                Hallo paul53,
                meinst Du so?

                var auto, value;
                
                
                // Hier noch Räume OG eintragen
                // Prüfe Temp Puffer und Räume 1A7 schalten
                auto = getState("javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik").val;
                on({id: "javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik"/*Heizungssteuerung. Hand_Automatik*/, change: "ne"}, function (obj) {
                  var value = obj.state.val;
                  var oldValue = obj.oldState.val;
                  auto = value;
                  if (!auto) {
                    setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
                    setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                    setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
                    setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, false);
                  }
                });
                console.warn('Prüfe Temp Puffer und Räume');
                on({id: new RegExp('hm-rpc\\.0\\.OEQ0673599\\.2\\.TEMPERATURE' + "|" + 'mihome\\.0\\.devices\\.weather_v1_158d00023290e8\\.temperature' + "|" + 'mihome\\.0\\.devices\\.weather_v1_158d0002329079\\.temperature' + "|" + 'fhem\\.0\\.TF_Bad\\.temperature' + "|" + 'javascript\\.0\\.Eigene_Datenpunkte\\.Räume\\.Wohnzimmer\\.Heizung_EIN_AUS' + "|" + 'default'), change: "any"}, function (obj) {
                    // wenn Temp Puffer >35 und Temp  Räume < Soll dann
                  if (parseFloat(getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val) >= 35) {
                    if (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9 || parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) <= 20 || parseFloat('fhem.0.TF_Bad.temperature') <= 22.3) {
                      // Pumpe 1A7 einschalten
                      console.warn('schalte 1A7 ein  ');
                      setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, true);
                    }
                  }
                  // Prüfe Temp Puffer und Räume 1A7 ausschalten
                  if (parseFloat(getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val) <= 35) {
                    if (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) >= 23 || parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) >= 20.5 && parseFloat('fhem.0.TF_Bad.temperature') >= 22.5) {
                      // Pumpe 1A7 ausschalten
                      console.warn('schalte 1A7  aus  ');
                      setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, false);
                    }
                  }
                  // Wenn Temp Eingang Ist > Soll Pumpe UG ausschalten
                  if (parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) >= 20.5) {
                    setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
                  } else if (parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) <= 20) {
                    setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, true);
                  }
                  // Wenn Temp WZ < Soll Pumpe EG einsschalten
                  console.warn('Wenn Temp WZ <Soll Pumpe EG einschalten');
                  if (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) >= 23) {
                    console.warn(' Pumpe EG aus');
                    setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                  }
                  if (getState("javascript.0.Eigene_Datenpunkte.Räume.Wohnzimmer.Heizung_EIN_AUS").val == true && parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9) {
                    setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                    console.warn(' Pumpe EG aus');
                  }
                  if (getState("javascript.0.Eigene_Datenpunkte.Räume.Wohnzimmer.Heizung_EIN_AUS").val == false && parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9) {
                    console.warn(' Pumpe EG ein');
                    setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, true);
                  }
                  // Wenn Temp Bad< Soll Pumpe OG einsschalten
                  if (parseFloat(getState("fhem.0.TF_Bad.temperature").val) >= 22.5) {
                    setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
                  } else if (parseFloat(getState("fhem.0.TF_Bad.temperature").val) <= 22.3) {
                    setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, true);
                  }
                });
                _tex
                

                aber leider funktioniert das nicht

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

                @Altersrentner:

                meinst Du so?

                Die Variable auto zu setzen, ist gut. Die Pumpen müssen aber nur in einem Script ausgeschaltet werden. Die Variable auto muss zu jedem Einschalten der Pumpen ausgewertet werden. Beispiel:

                  } else if (auto && parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) <= 20) {
                    setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, true);
                  }
                

                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

                1 Antwort Letzte Antwort
                1
                • A Offline
                  A Offline
                  Altersrentner
                  schrieb am zuletzt editiert von
                  #14

                  paul53
                  Hallo,
                  Habe es jetzt wie vorgeschlagen in die Heizungssteuerung eingearbeitet,:anguished:
                  Der erste Test mit einem Raum verlief erfolgreich.:blush:
                  Warte jetzt ab, wie die anderen Räume reagieren.
                  Ist das Skript Auto/Hand noch erforderlich?
                  Es wurde testweise deaktiviert und die Auto / Hand funktioniert über die Heizungssteuerung:

                  var auto, value;
                  
                  
                  // Hier noch Räume OG eintragen
                  // Prüfe Temp Puffer und Räume 1A7 schalten
                  auto = getState("javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik").val;
                  on({id: "javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik"/*Heizungssteuerung. Hand_Automatik*/, change: "ne"}, function (obj) {
                    var value = obj.state.val;
                    var oldValue = obj.oldState.val;
                    auto = value;
                    if (!auto) {
                      setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
                      setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                      setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
                      setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, false);
                    }
                  });
                  console.warn('Prüfe Temp Puffer und Räume');
                  on({id: new RegExp('hm-rpc\\.0\\.OEQ0673599\\.2\\.TEMPERATURE' + "|" + 'mihome\\.0\\.devices\\.weather_v1_158d00023290e8\\.temperature' + "|" + 'mihome\\.0\\.devices\\.weather_v1_158d0002329079\\.temperature' + "|" + 'fhem\\.0\\.TF_Bad\\.temperature' + "|" + 'javascript\\.0\\.Eigene_Datenpunkte\\.Räume\\.Wohnzimmer\\.Heizung_EIN_AUS' + "|" + 'default'), change: "any"}, function (obj) {
                      // wenn Temp Puffer >35 und Temp  Räume < Soll dann
                    if (parseFloat(getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val) >= 35) {
                      if (auto && (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9 || parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) <= 20 || parseFloat('fhem.0.TF_Bad.temperature') <= 22.3)) {
                        // Pumpe 1A7 einschalten
                        console.warn('schalte 1A7 ein  ');
                        setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, true);
                      }
                    }
                    // Prüfe Temp Puffer und Räume 1A7 ausschalten
                    if (parseFloat(getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val) <= 35) {
                      if (getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val && (parseFloat() >= 23 || parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) >= 20.5 && parseFloat('fhem.0.TF_Bad.temperature') >= 22.5)) {
                        // Pumpe 1A7 ausschalten
                        console.warn('schalte 1A7  aus  ');
                        setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, false);
                      }
                    }
                    // Wenn Temp Eingang Ist > Soll Pumpe UG ausschalten
                    if (parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) >= 20.5) {
                      setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
                    } else if (auto && parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) <= 20) {
                      setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, true);
                    }
                    // Wenn Temp WZ < Soll Pumpe EG einsschalten
                    console.warn('Wenn Temp WZ <Soll Pumpe EG einschalten');
                    if (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) >= 23) {
                      console.warn(' Pumpe EG aus');
                      setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                    }
                    if (getState("javascript.0.Eigene_Datenpunkte.Räume.Wohnzimmer.Heizung_EIN_AUS").val == true && parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9) {
                      setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                      console.warn(' Pumpe EG aus');
                    }
                    if (auto && getState("javascript.0.Eigene_Datenpunkte.Räume.Wohnzimmer.Heizung_EIN_AUS").val == false && parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9) {
                      console.warn(' Pumpe EG ein');
                      setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, true);
                    }
                    // Wenn Temp Bad< Soll Pumpe OG einsschalten
                    if (parseFloat(getState("fhem.0.TF_Bad.temperature").val) >= 22.5) {
                      setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
                    } else if (auto && parseFloat(getState("fhem.0.TF_Bad.temperature").val) <= 22.3) {
                      setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, true);
                    }
                  });
                  
                  

                  Gruß Michael

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • A Altersrentner

                    paul53
                    Hallo,
                    Habe es jetzt wie vorgeschlagen in die Heizungssteuerung eingearbeitet,:anguished:
                    Der erste Test mit einem Raum verlief erfolgreich.:blush:
                    Warte jetzt ab, wie die anderen Räume reagieren.
                    Ist das Skript Auto/Hand noch erforderlich?
                    Es wurde testweise deaktiviert und die Auto / Hand funktioniert über die Heizungssteuerung:

                    var auto, value;
                    
                    
                    // Hier noch Räume OG eintragen
                    // Prüfe Temp Puffer und Räume 1A7 schalten
                    auto = getState("javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik").val;
                    on({id: "javascript.0.Eigene_Datenpunkte.Heizungssteuerung._Hand_Automatik"/*Heizungssteuerung. Hand_Automatik*/, change: "ne"}, function (obj) {
                      var value = obj.state.val;
                      var oldValue = obj.oldState.val;
                      auto = value;
                      if (!auto) {
                        setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
                        setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                        setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
                        setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, false);
                      }
                    });
                    console.warn('Prüfe Temp Puffer und Räume');
                    on({id: new RegExp('hm-rpc\\.0\\.OEQ0673599\\.2\\.TEMPERATURE' + "|" + 'mihome\\.0\\.devices\\.weather_v1_158d00023290e8\\.temperature' + "|" + 'mihome\\.0\\.devices\\.weather_v1_158d0002329079\\.temperature' + "|" + 'fhem\\.0\\.TF_Bad\\.temperature' + "|" + 'javascript\\.0\\.Eigene_Datenpunkte\\.Räume\\.Wohnzimmer\\.Heizung_EIN_AUS' + "|" + 'default'), change: "any"}, function (obj) {
                        // wenn Temp Puffer >35 und Temp  Räume < Soll dann
                      if (parseFloat(getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val) >= 35) {
                        if (auto && (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9 || parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) <= 20 || parseFloat('fhem.0.TF_Bad.temperature') <= 22.3)) {
                          // Pumpe 1A7 einschalten
                          console.warn('schalte 1A7 ein  ');
                          setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, true);
                        }
                      }
                      // Prüfe Temp Puffer und Räume 1A7 ausschalten
                      if (parseFloat(getState("hm-rpc.0.OEQ0673599.2.TEMPERATURE").val) <= 35) {
                        if (getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val && (parseFloat() >= 23 || parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) >= 20.5 && parseFloat('fhem.0.TF_Bad.temperature') >= 22.5)) {
                          // Pumpe 1A7 ausschalten
                          console.warn('schalte 1A7  aus  ');
                          setState("hm-rpc.2.MEQ1534348.13.STATE"/*Pumpe 1A7.STATE*/, false);
                        }
                      }
                      // Wenn Temp Eingang Ist > Soll Pumpe UG ausschalten
                      if (parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) >= 20.5) {
                        setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, false);
                      } else if (auto && parseFloat(getState("mihome.0.devices.weather_v1_158d0002329079.temperature").val) <= 20) {
                        setState("hm-rpc.2.MEQ1534510.13.STATE"/*Pumpe UG.STATE*/, true);
                      }
                      // Wenn Temp WZ < Soll Pumpe EG einsschalten
                      console.warn('Wenn Temp WZ <Soll Pumpe EG einschalten');
                      if (parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) >= 23) {
                        console.warn(' Pumpe EG aus');
                        setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                      }
                      if (getState("javascript.0.Eigene_Datenpunkte.Räume.Wohnzimmer.Heizung_EIN_AUS").val == true && parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9) {
                        setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, false);
                        console.warn(' Pumpe EG aus');
                      }
                      if (auto && getState("javascript.0.Eigene_Datenpunkte.Räume.Wohnzimmer.Heizung_EIN_AUS").val == false && parseFloat(getState("mihome.0.devices.weather_v1_158d00023290e8.temperature").val) <= 22.9) {
                        console.warn(' Pumpe EG ein');
                        setState("hm-rpc.2.MEQ1534348.14.STATE"/*Pumpe EG.STATE*/, true);
                      }
                      // Wenn Temp Bad< Soll Pumpe OG einsschalten
                      if (parseFloat(getState("fhem.0.TF_Bad.temperature").val) >= 22.5) {
                        setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, false);
                      } else if (auto && parseFloat(getState("fhem.0.TF_Bad.temperature").val) <= 22.3) {
                        setState("fhem.0.HeizungspumpeOG.state_switch"/*HeizungspumpeOG state_switch*/, true);
                      }
                    });
                    
                    

                    Gruß Michael

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

                    @Altersrentner sagte:

                    Ist das Skript Auto/Hand noch erforderlich?

                    Das musst Du wissen, ob es Abhängigkeiten enthält, die in dem anderen Script nicht vorhanden sind.

                    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

                    A 1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @Altersrentner sagte:

                      Ist das Skript Auto/Hand noch erforderlich?

                      Das musst Du wissen, ob es Abhängigkeiten enthält, die in dem anderen Script nicht vorhanden sind.

                      A Offline
                      A Offline
                      Altersrentner
                      schrieb am zuletzt editiert von
                      #16

                      @paul53 said in Auto Hand Blockly schaltet nicht wie gewünscht:

                      @Altersrentner sagte:

                      Ist das Skript Auto/Hand noch erforderlich?

                      Das musst Du wissen, ob es Abhängigkeiten enthält, die in dem anderen Script nicht vorhanden sind.

                      Hallo,
                      Das Skript der Heizungssteuerung läuft seit gestern wie gehabt und gewünscht
                      mit dem integrierten Auto/Hand Modus.
                      Das ursprüngliche Auto/Hand Skript ist jetzt seit 24 Stunden deaktiviert.
                      Bis jetzt keine Unregelmäßigkeiten
                      Damit ist der Betreff geklärt.
                      Danke für Deine Unterstützung
                      Freundliche Grüße
                      Michael

                      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

                      549

                      Online

                      32.7k

                      Benutzer

                      82.4k

                      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