From 44ca2f0ec0e912fa3ce8e921dee3c09fd4e03a83 Mon Sep 17 00:00:00 2001 From: grompo <> Date: Tue, 25 Oct 2016 18:41:59 +0000 Subject: [PATCH] LUXTRONIK2: Heizgrenze - MinSoll von Parameter git-svn-id: https://svn.fhem.de/fhem/trunk@12427 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/23_LUXTRONIK2.pm | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/fhem/FHEM/23_LUXTRONIK2.pm b/fhem/FHEM/23_LUXTRONIK2.pm index b54c0a08e..7087fa5a5 100644 --- a/fhem/FHEM/23_LUXTRONIK2.pm +++ b/fhem/FHEM/23_LUXTRONIK2.pm @@ -640,6 +640,8 @@ LUXTRONIK2_DoUpdate($) $return_str .= "|". ($heatpump_visibility[167]==1 ? $heatpump_parameters[684] : "no"); # 62 - counterHeatQPool $return_str .= "|". ($heatpump_visibility[2]==1 ? $heatpump_values[153] : "no"); + # 63 - returnTemperatureTargetMin + $return_str .= "|". ($heatpump_visibility[295]==1 ? $heatpump_parameters[979] : "no"); return $return_str; } @@ -776,6 +778,7 @@ LUXTRONIK2_UpdateDone($) my $flowTemperature = LUXTRONIK2_CalcTemp($a[15]); my $returnTemperature = LUXTRONIK2_CalcTemp($a[16]); my $returnTemperatureTarget = LUXTRONIK2_CalcTemp($a[17]); + my $returnTemperatureTargetMin = LUXTRONIK2_CalcTemp($a[63]); my $heatPumpPower = 0; my $heatRodPower = AttrVal($name, "heatRodElectricalPowerWatt", 0); @@ -845,7 +848,8 @@ LUXTRONIK2_UpdateDone($) elsif ($a[40] == 1) { $prefix = "in ";} if ($a[40] == 2) { #Sonderbehandlung bei WP-Fehlern $opStateHeatPump2 = $prefix . strftime "%d.%m.%Y %H:%M:%S", localtime($a[42]); - } else { + } + else { $opStateHeatPump2 = $prefix . LUXTRONIK2_FormatDuration($a[41]); } readingsBulkUpdate($hash,"opStateHeatPump2",$opStateHeatPump2); @@ -880,12 +884,14 @@ LUXTRONIK2_UpdateDone($) readingsBulkUpdate($hash,"opModeHeating",$value); # Heating operating state # Consider also heating limit - if ($a[10] == 0 - && $a[11] == 1 - && $averageAmbientTemperature >= $thresholdHeatingLimit) { + if ($a[10] == 0 && $a[11] == 1 + && $averageAmbientTemperature >= $thresholdHeatingLimit + && ($returnTemperatureTarget == $returnTemperatureTargetMin || $returnTemperatureTarget == 20 && $ambientTemperature<10) + ) { if ($ambientTemperature>=10 ) { - $value = "Heizungsgrenze (Soll 15 C)"; - } else { + $value = "Heizgrenze (Soll ".$returnTemperatureTargetMin." C)"; + } + else { $value = "Frostschutz (Soll 20 C)"; } } else { @@ -1935,8 +1941,8 @@ LUXTRONIK2_doStatisticDeltaSingle ($$$$$$$)