HM-CC-TC und window_switch_receiver

Die HM-Funkthermostate haben ja die Instanz <kennung>:3, die von IPS als window_switch_receiver, aber ohne Variablen, angelegt wird.

Kann man diesen Empfänger nutzen, um vom IPS aus den Thermostaten in den Zustand „Fenster ist offen“ zu versetzen?

Oder gibt es einen besseren Weg, den ich nicht sehe?

Ich möchte die Fenster-/Türkontakte nicht direkt an den Thermostaten anlernen, da dann (1) nur eine Verzögerungszeit möglich ist und (2) ich den Zustand „Fenster offen“ gerne für „Bewohner abwesend“ missbrauchen will.

Du kannst die Kontakte doch direkt in IPS auswerten und damit verknüpfen was Du willst.

Hallo Rainer,

die Kontakte sind natürlich in IPS angelernt.
Aber irgendwie muss ich dem Thermostat ja „sagen“, dass er auf „Fenster offen“-Temperatur schalten soll.
Und das wie gesagt ohne direktes Anlernen der Kontakte, da die Heizung erst mit Verzögerung reagieren soll. Und die Kontakte sind auch zur Überwachung da, und hier darf keine Verzögerung eingestellt werden.

Steuerung Deines Programms über das Ereignis „Bei Änderung der Variable“. D.H. Du musst ein Ereignis anlegen, welches das Programm bei einer Veränderung startet.

Gruß
Bruno

Dann sende doch deinen gewünschten Absenkwert an das Thermostat. Ob Du den Fensteroffen direkt an das Thermostat senden kannst, weis ich grad nicht auswendig.

Danke, ja, das ist naheliegend.

Leider stehen die Thermostate auf Automatik (= fahren ihr eigenes Programm), und IPS kann die Temperatur natürlich runtersetzen - aber welches ist der richtige Wert, auf den Sie später wieder hochgesetzt werden?
Dafür müsste IPS das jeweilige Automatikprogramm kennen, und das wird schnell sehr aufwändig.

Ich sehe im Moment nur 2 Wege:

  1. die gesamten Temperaturprofile von IPS kontrollieren/verwalten lassen

  2. dem Thermostaten sagen: bitte jetzt auf Absenktemperatur gehen, bis getenteiliger Befehl kommt.

Und für (2) schaut mich der window_switch_receiver verlockend an :wink:

Hier sind mal die Datenpunkte der Regler. Mit deiner Funktion wird das also nix.

Kanaltyp WINDOW_SWITCH_RECEIVER
Der Kanal besitzt keine Datenpunkte.

Hi god2010,

ich glaube, ich habe meine Steuerung recht einfach und pragmatisch gelöst:

Meine Heizung wird runter gefahren wenn ich z.B. abwesend bin (runter gefahren: auf Absenktemperatur gesetzt)

die HM-Wandthermostate fahren ihr eigenes Programm, unabhängig von IPS (Stichwort Ausfallsicherheit) und haben zeitgesteuert ihre jeweilige Komfort- und Absenk-Temperatur.

in IPS habe ich darüber hinaus für jeden WT eine Variable für die Absenk- und eine für die Komfort-Temperatur angelegt.

nun passiert folgendes:

Abwesenheit

  1. das IPS erkennt, das ich abwesend bin und schickt anjedes WT die in IPS hinterlegte Absenktemperatur

  2. IPS überwacht ständig die Solltemperatur des WT: sobald sich dieser Wert ändert (wenn z.B. das Programm im WT auf Komforttemperatur schaltet) schaut IPS nach ob ich abwesend bin. Wenn das so ist schickt IPS erneut den im IPS konfigurierten Wert für die Absenktemperatur an das jeweilige Wandhermostat.

Anwesenheit:

  1. IPS erkennt die Anwesenheit und prüft die aktuelle Uhrzeit. Liegt diese zwischen 06:00 Uhr und 22:00 Uhr schickt IPS den konfigurierten Wert für die Komforttemperatur an die Wandthermostate.

genau so könnte man IPS auf den FTK reagieren lassen.

Das berücksichtigt allerdings keine, für jeden Raum indiviuduelle Heizpläne. Will man das berücksichtigen muss man diese Heizpläne komplett (und zusätzlich) in IPS ablegen und prüfen. Das ist für meine Zwecke momentan etwas zu aufwändig, die Threads dazu hier im Forum zeigen mir auch das der Stein des Weisen diesbezüglich noch nicht gefunden wurde.

Hi Rainer,

danke!

heisst dann wohl übersetzt: Damit kann man gar nichts machen :frowning:

Dann reihe ich mich 'mal in die lange Reihe der „Scriptschreiber“ ein, die das Temperaturprofil in IPS verwalten.

:smiley: Genau

Ich habe auch - wie viele hier - dieses Thema angefasst. Ein Ansatz war, dass man die Setpoint Variable ausliest und sich damit das Temperaturprofil automatisch erstellt. Das klappt nicht wirklich wie hier zu lesen.

Aber zum reinen Profileinlesen sollte es reichen, wenn man die Änderungen mitlogged und in ein Profil schreibt.

Aus Zuverlässigkeitsgründen habe ich mich bis heute immer noch gegen IPS in dem Bereich entschieden.

Hallo zusammen,

mein HM-CC-TC läuft auf „mauell“, wenn ein Fenster geöffnet wird, setze ich die Solltemperatur auf 10.0C und nach dem Schliessen des Fensters, wird die vorher eingestellte Temperatur wieder eingestellt.



<?
$Neu = 21.0;

// aktuelle Temperatur ermitteln
$Status = GetValue(18560 /*[Homematic\Kueche\HM-CC-TC-Kueche Conf\SETPOINT]*/);

echo "alte Temperatur=".$Status. " 
";

If (GetValue(57657 /*[Homematic\Kueche\Fenster K2\STATE]*/))
    {
       echo "Fenster ist offen 
";


        if ($Status == 10.0)
        {
        // do nothing
        }
        else
        {
       SetValue(28851 /*[Homematic\Kueche\Fenstertest\K-Temp-Fensterzu]*/,$Status);
       }
        $Neu =  10.0;
    }
    else
    {
        echo "Fenster ist zu 
";

        if ($Status == 10.0)
        {
        $Neu = GetValue(28851 /*[Homematic\Kueche\Fenstertest\K-Temp-Fensterzu]*/);
        }
        else
        {
        SetValue(28851 /*[Homematic\Kueche\Fenstertest\K-Temp-Fensterzu]*/,$Status);
        $Neu = $Status;
        }

    }

if ($Status == $Neu)
    {
    echo "keine Veränderung 
";
    }
else
    {
   echo "neue Temp=".$Neu. " 
";
    HM_WriteValueFloat(25744 /*[Homematic\Kueche\HM-CC-TC-Kueche Conf]*/, "SETPOINT", $Neu);
    }

?>


noch einrichten:
Ereignis auf Statusänderung des Fensterkontaktes und alle 1 min.
Eine Variable für die vorher eingestellte Temperatur.

Gruss NBA