2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-04-08 01:14:19 +00:00

76_SolarForecast: contrib 0.82.0

git-svn-id: https://svn.fhem.de/fhem/trunk@27922 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
nasseeder1 2023-09-03 16:45:53 +00:00
parent 2fcc46f101
commit b4687e5377

View File

@ -1251,8 +1251,8 @@ sub Set {
;
}
else {
$setlist .= "aiAddInstance:noArg ".
"aiTrain:noArg ".
$setlist .= #"aiAddInstance:noArg ".
#"aiTrain:noArg ".
"moduleDirection ".
"moduleTiltAngle "
;
@ -2069,11 +2069,12 @@ sub _setreset { ## no critic "not used"
}
if($prop eq 'aiData') {
my $err;
my $dtree = AiDetreeVal ($hash, undef);
if ($dtree) {
delete $data{$type}{$name}{aidectree};
my $err = aiInit ($paref);
($err, $dtree) = aiInit ($paref);
return $err if($err);
}
@ -10473,13 +10474,12 @@ sub aiAddInstance { ## no critic "not used"
return if(!isDWDUsed ($hash));
my $err;
my $dtree = AiDetreeVal ($hash, undef);
if (!$dtree) {
my $err = aiInit ($paref);
($err, $dtree) = aiInit ($paref);
return if($err);
$dtree = AiDetreeVal ($hash, undef);
}
my ($pvrl, $temp, $wcc, $wrp, $rad1h);
@ -10544,10 +10544,8 @@ sub aiTrain { ## no critic "not used"
my $dtree = AiDetreeVal ($hash, undef);
if (!$dtree) {
$err = aiInit ($paref);
($err, $dtree) = aiInit ($paref);
return if($err);
$dtree = AiDetreeVal ($hash, undef);
}
eval { $dtree->train
@ -10581,13 +10579,12 @@ sub aiGetResult { ## no critic "not used"
return if(!isDWDUsed ($hash));
my $err;
my $dtree = AiDetreeVal ($hash, undef);
if (!$dtree) {
my $err = aiInit ($paref);
($err, $dtree) = aiInit ($paref);
return if($err);
$dtree = AiDetreeVal ($hash, undef);
}
for my $idx (sort keys %{$data{$type}{$name}{nexthours}}) {
@ -10634,19 +10631,23 @@ sub aiInit { ## no critic "not used"
my $name = $paref->{name};
my $type = $paref->{type};
my $err;
if ($aidtabs) {
my $msg = qq(The Perl module AI::DecisionTree is missing. Please install it with e.g. "sudo apt-get install libai-decisiontree-perl" for AI support);
debugLog ($paref, 'aiProcess', $msg);
$data{$type}{$name}{current}{aiinitstate} = $msg;
return $msg;
my $err = qq(The Perl module AI::DecisionTree is missing. Please install it with e.g. "sudo apt-get install libai-decisiontree-perl" for AI support);
debugLog ($paref, 'aiProcess', $err);
$data{$type}{$name}{current}{aiinitstate} = $err;
return $err;
}
my $dtree = new AI::DecisionTree ( verbose => 0, noise_mode => 'pick_best' );
$data{$type}{$name}{aidectree} = new AI::DecisionTree ( verbose => 0, noise_mode => 'pick_best' );
$data{$type}{$name}{aidectree} = $dtree;
$data{$type}{$name}{current}{aiinitstate} = 'ok';
Log3 ($name, 3, "$name - AI::DecisionTree new initialized");
return;
return ($err, $dtree);
}
################################################################