FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Waldmensch am 02 Juli 2014, 22:54:21

Titel: [gelöst] Ansatz gesucht um die Einschaltdauer eines FS20 zu ermitteln
Beitrag von: Waldmensch am 02 Juli 2014, 22:54:21
Folgendes Problem: Ich habe eine Poolpumpe, die am Tag maximal 4 Stunden laufen soll wenn die PV Anlage >= 3kW liefert

Der Schaltvorgang bei 3kW klappt. Nur wie kann ich die kumulierte Einschaltdauer erfassen, bei einem wolkigen Tag zum Beispiel? Sprich wenn die Pumpe an/aus geht? Nach 4h Laufzeit soll die Pumpe nicht mehr geschaltet werden bzw. ausbleiben.

define SunnyOnPower notify Sunny:PV.* {
   if ($hour >= 10 && $hour < 17) {
     if (ReadingsVal('Sunny','PV',0) < 3000) {
       fhem('set FS20_test off') unless ($value{FS20_test} eq 'off');
     }
   
     if (ReadingsVal('Sunny','PV',0) > 3000) {
       fhem('set FS20_test on') unless ($value{FS20_test} eq 'on');
     }
   }
}
Titel: Antw:Ansatz gesucht um die Einschaltdauer eines FS20 zu ermitteln
Beitrag von: Waldmensch am 02 Juli 2014, 23:16:34
Ich glaub ich hab was gefunden - lese mich grad in den HourCounter ein http://www.fhemwiki.de/wiki/HourCounter
Titel: Antw:Ansatz gesucht um die Einschaltdauer eines FS20 zu ermitteln
Beitrag von: Waldmensch am 02 Juli 2014, 23:49:41
Hier ist die fertige Lösung mit dem Modul von hier: http://forum.fhem.de/index.php/topic,12216.msg72596.html#msg72596

define Counter_SunnySwitch1 HourCounter FS20_test:on FS20_test:off
attr Counter_SunnySwitch1 room Solar

define SunnyOnPower notify Sunny:PV.* {
   if ($hour >= 10 && $hour < 17 && ReadingsVal('Counter_SunnySwitch1','pulseTimePerDay',0) < 14400) {
     if (ReadingsVal('Sunny','PV',0) < 3000) {
       fhem('set FS20_test off') unless ($value{FS20_test} eq 'off');
     }
   
     if (ReadingsVal('Sunny','PV',0) > 3000) {
       fhem('set FS20_test on') unless ($value{FS20_test} eq 'on');
     }
   }
}