Обновление макроса:
https://owen.ru/forum/showthread.php?t=34524
Работа макроса основана на том, что по заданному времени хода привода из одного крайнего положения в другое вычисляется время перемещения привода на 1% (TP1).
Посылая на счетчик CTN1 импульсы с интервалом в это время, на счетчике можно получить расчетный % открытия привода.
Сравнивая этот % и % на выходе ПИД регулятора, вырабатываются управляющие дискретные сигналы откр. и закр. привода такой длительности, чтобы привод открылся/закрылся на нужный %.
Макрос критичен к точности задания времени полного хода, поэтому его нужно замерять по факту с конкретным приводом.
Если в приводе имеются значительные люфты, можно задать время их выборки, которое суммируется с временем хода при смене направления вращения(первый импульс).
При включении ПР-ки, по фронту сигнала Test, по спаду сигнала 100% проводится калибровка исходной точки (закрытого положения привода).
Так как неизвестно положение привода, то подается сигнал на закрытие полной длительности хода+20% для надежного закрытия(TOF1).
Сигнал 100% используется для принудительного открытия привода, подается прямо на выход OPEN,сколько присутствует 100%, столько присутствует и OPEN.
V_2. Во второй версии исправлена ошибка расчета времени на % хода, исправлено не закрытие привода при некоторых комбинациях появления сигналов 100% и Enable, добавлено мертвое время в 1цикл при переключении выходов OPEN / CLOSE, а также добавлены дополнительные входы, которые присутствуют в ПИД регуляторе (режим охлаждения, ограничение выходной мощности, пауза).
Нужно понимать что ограничение минимальной мощности ПИД регулятора функционирует только при ПИД регулировании, при снятии сигнала Enable, либо при калибровке исходной точки привод все равно ПОЛНОСТЮ ЗАКРОЕТСЯ. Добавлен вход DZ_% задает дискретность позиционирования привода по сигналу ПИД регулятора, то есть на сколько выход ПИД должен стать больше либо меньше чтобы появился сигнал откр / закр. для уменьшения излишних срабатываний выходов.
Untitled.png