$lastPumpStatus=0;
if (gg('Pump3.status')==1 && $lastPumpStatus==0){
$lastPumpStatus=1;
$counter = gg('Pump3.counter');
$counter = $counter+1; setGlobal('Pump3.counter',$counter); setGlobal('Pump3.startTime',time());
$pause=(intval((gg('Pump3.startTime')-gg('Pump3.finishTime'))/60)); //преобразование з секунд в минуты с целым значением setGlobal('Pump3.pauseBetween',$pause); }
if (gg('Pump3.status')==0){$finish=time(); $start=gg('Pump3.startTime');
$duration=$finish-$start; setGlobal('Pump3.durationLast',$duration); setGlobal('Pump3.finishTime',$finish);
if (getGlobal('Pump3.durationLast')<12 && gg('Pump3.DurationNotified')==0) {
//якщо тривалість включення менша за 12 секунд, то ймовірно, що треба підкачати гідрофер say('Внимание!!! Длительность включения насоса мала, всего '.$duration .' секунд. Вероятно нужно стабилизировать давление воздуха в насосной',2);
sg('Pump3.DurationNotified',1); //ця змінна обнуляється таймером ClockChime о 8 годині ранку }
$min=intval($duration/60); $sec=$duration - ($min*60); $lastPumpStatus=0;
if (getGlobal('Pump3.counter')>=gg('Pump3.counterCritical') && gg('Watering.active')==0) { //якщо кількість включень за поточну добу перевищує задане значення і режим поливу вимкненно то є підозра на поломку в системі роботи насосу та гідрофера
say('Внимание!!! Насос включается слишком часто, возможно повреждение насоса',3);
callMethod('WaterPumpAlarm.activate'); } }