Вложений: 1
Схема управления насосами системы отопления
Написал программу управления насосами сетевой воды, работающие попарно, переключение происходит раз в 12ч. При переключении один насос запускается (становится рабочим) второй останавливается (становится резервным). Старт обрабатывается по первому входу ПР110 (I1), при пропадании теплоносителя перед насосами "сухой ход" (I2) все насосы останавливаются, на выход №2 (Q2) подается непрерывный сигнал аварии, при падении давления на напорном патрубке (за насосами) вход I3 подается пульсация (1с) на выход Q2. Для того чтобы насос успел достичь своего рабочего параметра по давлению, переменная "авр" включается с задержкой времени 30с. При однавременном срабатывании АВР и сухого хода оба насоса останавливаются, на выход Q2 подается непрерывный сигнал. Когда переменная "авр" активна, программа обрабатывает какой из насосов в данный период времени является рабочим, а какой резервным, и исходя из этого происходит включение резервного насоса и выключения рабочего.
Все сделал через переменные т.к. так легче читать саму программу, сейчас занимаюсь минимизацией через макросы и как-то не очень получается.
В программе есть один недочет, с каторым пока не могу справится:
Когда до конца работы рабочего насоса (к примеру насос №1) остается времени меньше 30 секунд и вход I3 запускает таймер "авр", то переменная "авр" переходит в еденицу уже когда работает насос №2 и программа считает что это именно насос №2 неисправен и переключает обратно на насос №1. Случай маловероятен, но всякое бывает. Если кто может подскажите решение проблемы.