From 29c61e1336dbbb7d1d00a52428aa55d308867d6c Mon Sep 17 00:00:00 2001 From: nasseeder1 Date: Wed, 16 Dec 2020 15:48:38 +0000 Subject: [PATCH] 76_Solarforcast: contrib 0.1.0 git-svn-id: https://svn.fhem.de/fhem/trunk@23367 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/contrib/DS_Starter/76_SolarForecast.pm | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/fhem/contrib/DS_Starter/76_SolarForecast.pm b/fhem/contrib/DS_Starter/76_SolarForecast.pm index 1ebb6dbe8..072b1bb5a 100644 --- a/fhem/contrib/DS_Starter/76_SolarForecast.pm +++ b/fhem/contrib/DS_Starter/76_SolarForecast.pm @@ -671,6 +671,10 @@ sub _transferForecastValues { $myHash->{HELPER}{"fc${fd}_".sprintf("%02d",$fh)."_PVforecast"} = $calcpv; # Vorhersagedaten zur Berechnung Korrekturfaktor in Helper speichern + if($fd == 0 && $calcpv > 0) { # Vorhersagedaten des aktuellen Tages zum manuellen Vergleich in Reading speichern + push @$daref, "Today_Hour".sprintf("%02d",$fh)."_PVforecast:$calcpv"; + } + ## Wetter Forecast ################### @@ -707,13 +711,14 @@ sub _transferInverterValues { $indev = $a->[0] // ""; return if(!$indev || !$defs{$indev}); - my $tlim = "0|23"; # Stunde 23 -> bestimmte Aktionen + my $tlim = "0|23"; # Stunde 0/23 -> bestimmte Aktionen if($chour =~ /^($tlim)$/x) { - my @allrds = keys %{$myHash->{READINGS}}; - for my $key(@allrds) { - readingsDelete($myHash, $key) if($key =~ m/^Today_Hour\d{2}_PVreal$/x); - } + deleteReadingspec ($myHash, "Today_Hour.*_PV.*"); + #my @allrds = keys %{$myHash->{READINGS}}; + #for my $key(@allrds) { + # readingsDelete($myHash, $key) if($key =~ m/^Today_Hour\d{2}_PVreal$/x); + #} } ## aktuelle PV-Erzeugung @@ -1798,6 +1803,9 @@ sub calcVariance { Log3($myName, 4, "$myName - Variance calculation in standby. It starts in $rmh hours."); readingsSingleUpdate($myHash, "pvCorrectionFactor_Auto", "on (remains in standby for $rmh hours)", 0); return; + } + else { + readingsSingleUpdate($myHash, "pvCorrectionFactor_Auto", "on", 0); } my @da;