76_SolarForecast: Version 1.57.3

git-svn-id: https://svn.fhem.de/fhem/trunk@30225 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
DS_Starter
2025-08-27 17:49:14 +00:00
parent 6bd5d98895
commit 203a7a8044
2 changed files with 10 additions and 4 deletions

View File

@@ -11084,6 +11084,7 @@ sub _transferBatteryValues {
delete $data{$name}{current}{batpowerinsum};
delete $data{$name}{current}{batpoweroutsum};
delete $data{$name}{current}{batcapsum};
delete $data{$name}{current}{batwhtotal};
for my $bn (1..MAXBATTERIES) {
$bn = sprintf "%02d", $bn;
@@ -11296,19 +11297,21 @@ sub _transferBatteryValues {
}
if ($num) {
writeToHistory ( { paref => $paref, key => 'socwhsum', val => (sprintf "%.0f", $socwhsum), hour => $nhour } );
if ($bcapsum) {
my $soctotal = sprintf "%.2f", ($socwhsum / $bcapsum * 100); # resultierender SoC (%) aller Batterien als "eine"
$data{$name}{current}{batsoctotal} = $soctotal;
push @{$data{$name}{current}{batsocslidereg}}, $soctotal; # Schieberegister average SOC aller Batterien
}
$socwhsum = sprintf "%.0f", $socwhsum;
writeToHistory ( { paref => $paref, key => 'socwhsum', val => $socwhsum, hour => $nhour } );
limitArray ($data{$name}{current}{batsocslidereg}, SLIDENUMMAX);
$data{$name}{current}{batpowerinsum} = $pbisum; # summarische laufende Batterieladung
$data{$name}{current}{batpoweroutsum} = $pbosum; # summarische laufende Batterieentladung
$data{$name}{current}{batcapsum} = $bcapsum; # Summe installierte Batterie Kapazität in Wh
$data{$name}{current}{batwhtotal} = $socwhsum; # Ladung in Wh über alle Batterien
}
return;

View File

@@ -11084,6 +11084,7 @@ sub _transferBatteryValues {
delete $data{$name}{current}{batpowerinsum};
delete $data{$name}{current}{batpoweroutsum};
delete $data{$name}{current}{batcapsum};
delete $data{$name}{current}{batwhtotal};
for my $bn (1..MAXBATTERIES) {
$bn = sprintf "%02d", $bn;
@@ -11296,19 +11297,21 @@ sub _transferBatteryValues {
}
if ($num) {
writeToHistory ( { paref => $paref, key => 'socwhsum', val => (sprintf "%.0f", $socwhsum), hour => $nhour } );
if ($bcapsum) {
my $soctotal = sprintf "%.2f", ($socwhsum / $bcapsum * 100); # resultierender SoC (%) aller Batterien als "eine"
$data{$name}{current}{batsoctotal} = $soctotal;
push @{$data{$name}{current}{batsocslidereg}}, $soctotal; # Schieberegister average SOC aller Batterien
}
$socwhsum = sprintf "%.0f", $socwhsum;
writeToHistory ( { paref => $paref, key => 'socwhsum', val => $socwhsum, hour => $nhour } );
limitArray ($data{$name}{current}{batsocslidereg}, SLIDENUMMAX);
$data{$name}{current}{batpowerinsum} = $pbisum; # summarische laufende Batterieladung
$data{$name}{current}{batpoweroutsum} = $pbosum; # summarische laufende Batterieentladung
$data{$name}{current}{batcapsum} = $bcapsum; # Summe installierte Batterie Kapazität in Wh
$data{$name}{current}{batwhtotal} = $socwhsum; # Ladung in Wh über alle Batterien
}
return;