KS300 Patch - Division by Zero

Begonnen von arnoaugustin, 02 Dezember 2016, 11:08:09

Vorheriges Thema - Nächstes Thema

arnoaugustin

Hallo Rudi,

bzgl. dem letzten Patch am 13_KS300.pm gabs bei mir Probleme.
Ich meine diesen Patch hier:
https://forum.fhem.de/index.php/topic,54236.msg458861.html#msg458861
Der Patch sollte es ja robuster machen, falls zwei Datenpakete zur "gleichen" Zeit kommen.


      my $deltatsecs= ($tsecs - $tsecs_prev); # we have observed two datagrams at the same second
      $deltatsecs= 1 if($deltatsecs< 1);
      my $thours_delta = ($tsecs - $tsecs_prev)/3600.0; # in hours
      my $rain_raw_per_hour = $rain_raw_delta/$thours_delta;
      if(($rain_raw_delta<0) || ($rain_raw_per_hour> 200.0)) {
            $rain_raw_ofs = $rain_raw_ofs_prev-$rain_raw_delta;


Problem ist hier dass $thours_delta NULL werden kann.
Statt
      my $thours_delta = ($tsecs - $tsecs_prev)/3600.0; # in hours
sollte da besser
      my $thours_delta = $deltatsecs/3600.0; # in hours
stehen.

Viele Grüße,

Arno

rudolfkoenig

Danke, habs geaendert und eingecheckt.