FHEM Forum

FHEM - Hausautomations-Systeme => MAX => Thema gestartet von: bismosa am 07 Oktober 2018, 12:20:54

Titel: Temperatur Scannen - Idee
Beitrag von: bismosa am 07 Oktober 2018, 12:20:54
Hallo,

ich hatte da gerade eine Idee...aber die Umsetzung ist noch sehr unpraktisch.
Ich nutze den Max-Scanner nicht. Da ich den manuellen Modus weiterhin benötige, könnte ich hier nur den Modus der Temperaturänderung verwenden. Leider hatte dies auch immer mal wieder Schwierigkeiten gemacht, da doch häufiger manuell die Temperatur verstellt wird.
Da ich jedoch nicht auf die Ist-Temperatur verzichten möchte, bin ich gerade am basteln mit einer anderen Lösung.

Meine Idee:
Wenn ich (auch nur kurz) Booste (selbst wenn die Boost-Position = Ventilstellung ist), wird die Temperatur übermittelt. Juhuu.
Also habe ich es mal testweise so umgesetzt:

([+00:30])({
##IST-Werte merken
my $ISTBoostDuration = ReadingsVal("Max_HT_Flur", "boostDuration", 5);
my $ISTboostValveposition = ReadingsVal("Max_HT_Flur", "boostValveposition", 80);

##Erst abfrage, wo das Ventil steht
my $ValvePos = ReadingsVal("Max_HT_Flur", "valveposition", 0);
Log 1, ("ValvePos: $ValvePos");

##Boost auf Pos. + 1 setzen / geht auch ohne!
##my $ValvePosNeu = $ValvePos + 1;
my $ValvePosNeu = $ValvePos ;
fhem("set Max_HT_Flur boostValveposition $ValvePosNeu");
Log 1, ("boostValveposition $ValvePosNeu");

##Boosten
fhem("set Max_HT_Flur desiredTemperature boost");
Log 1, ("desiredTemperature boost");

##Beenden des Boost-Modus
##Boost-Zeit auf 0
fhem("set Max_HT_Flur boostDuration 0");
##Boosten neu starten
fhem("set Max_HT_Flur desiredTemperature boost");
##Boost-Zeit Wiederherstellen
fhem("set Max_HT_Flur boostDuration $ISTBoostDuration");
##Boost-Position wiederherstellen
fhem("set Max_HT_Flur boostValveposition $ISTboostValveposition");
})


Das ist natürlich suboptimal.
Nachteile:
1.) Es sind viel zu viele Telegramme, die gesendet werden müssen! So sind es 6!
2.) Wenn die IST-Position sich gerade verändert hat, fährt das Ventil kurz etwas weiter (aber nach ein paar Sek. wieder zurück)

Vorteile:
1.) Die Temperatur wird übermittelt
2.) Man "sieht" am Display, das der Scanner kurzzeitig am Arbeiten ist
3.) Nach 3sek. ist der Spuk vorbei
4.) Das Ventil fährt meist gar nicht / Selten nur minimal
5.) Bedienung etc. sollte so erhalten bleiben. Auch die eingestellten Werte bleiben immer erhalten

Es fehlt natürlich noch die Abfrage, wie alt das Reading der Temperatur ist...etc.

Also muss noch ein wenig optimiert werden. Daher meine Fragen:
1.) Ist es möglich, die Boost-Zeit weiter zu verkürzen? 5 sek. würden bereits ausreichen. Bisher kann ich leider als minimum nur 5Min. wählen. (Dann hätte ich "nur" noch 3 Telegramme)
2.) Sollte 1.) nicht möglich sein...ist es möglich, den Boost-Befehl zu beenden (würde das verändern der Zeit - also 2 Telegramme - sparen)
3.) Ist es vielleicht sogar möglich eine bestimmte Ventilposition anzufahren?

Was haltet ihr davon? Vielleicht gibt es ja so noch weitere Ideen?

Gruß
Bismosa