[gelöst] Ansatz gesucht um die Einschaltdauer eines FS20 zu ermitteln

Begonnen von Waldmensch, 02 Juli 2014, 22:54:21

Vorheriges Thema - Nächstes Thema

Waldmensch

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');
     }
   }
}

Waldmensch


Waldmensch

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');
     }
   }
}