
Сообщение от
witalexxx
В исправленном Вами проекте куда то исчезла ротация по заданному времени работы, то есть при изменении уровня давления по входу AI насосы переключаются с ротацией, но ротационный включенный насос будет включен до тех пор, пока уровень давления не упадет до порога выключения насоса, то есть, насос будет работать и не переключается на следующий насос по заданному времени работы, равному 1 минуте. Но при снижении давления до порога выключения насоса следующим уже включиться тот насос у которого минимальная наработка. В принципе и так хорошо, что работает, но что с ротацией пока не пойму. Может быть все же действительно в реальном ПР переменная ЕТ каким то образом проскакивает равенство на несколько единиц и и ротация не сработает по заданной уставке времени ротации?
Что то вы понаписали, не понятное.
Время задачи осталось 1 мин (можно менять),
Включение по минимальной наработки сделал только 1 раз (main=0) , потом +1 при ротации. У вас же сброс наработки при включении, какая минимальная наработка вообще может быть, если все наработки по 0.
Вот строка выбора по минимальной наработке. Допишите Q or в начале строки, будет по минимальной работать всегда.
Только при работе по 1 минуте, так не стоит делать.
Код:
if Q or main=0 and ET<=PT1 and not Q then Main:=Min3(T1_,T2_,T3_);end_if // Выбор насоса по мин. наработке через 1 мин
Про строку сброса таймера и ротацию +1 уже написал выше.