Не имеет зоны нечувствительности? Добавим http://www.owen.ru/forum/showthread....l=1#post158489
Остальная кривизна в чем?
Скрин - фрагмент из реального проекта, это был регулятор уровня воды в барабане котла ДКВР. Работает по сей день и даже не подозревает о том, что он якобы "кривой".
Мой канал на ютубе
https://www.youtube.com/c/ПетрАртюков
Библиотека ГМ для СП300
https://disk.yandex.com/d/gHLMhLi8x1_HBg
Посмотрите вложение выше, я сделал именно на основе dz2. Дайте замечания.
Да в том даже, что чтобы повторит Ваш скрин нужно подключить кучу разных библиотек, и ни в одной из них не обнаружить загадочного блока GEN_PULS. Но не в этом дело, а в том, что за столько лет в библиотеках не появилось классического импульсного ПИД регулятора, с заведомо правильной логикой работы непосредственно от разработчика.
GEN_PULSE - из библиотеки OSCAT
Захват-1.png
Если лень подключать эту библиотеку, то вот код
Код:FUNCTION_BLOCK GEN_PULSE VAR_INPUT ENQ : BOOL := TRUE; PTH : TIME; PTL : TIME; END_VAR VAR_OUTPUT Q : BOOL; END_VAR VAR tx: TIME; tn: TIME; init: BOOL; END_VAR IF enq THEN tx := DWORD_TO_TIME(T_PLC_MS()); IF NOT init THEN init := TRUE; tn := tx; END_IF; IF tx - tn >= SEL(Q, PTL, PTH) THEN tn := tn + SEL(Q, PTL, PTH); Q := NOT Q; END_IF; ELSE Q := FALSE; init := FALSE; END_IF;
Мой канал на ютубе
https://www.youtube.com/c/ПетрАртюков
Библиотека ГМ для СП300
https://disk.yandex.com/d/gHLMhLi8x1_HBg
Подскажите пожалуйста, какой блок ПИД-регулятора использовать для языка LD? Может нужно как то особенно блок вставлять? Ругается, что на вход идет BOOL, а не REAL, для LD это понятно...
Добрый день! Подскажите пожалуйста есть ли ошибки в подходу к построению импульсного ПИД в сообщении http://www.owen.ru/forum/showthread....l=1#post206540 ? У меня основной вопрос по формированию 1 импульса. Как классически должна расчитываться его длительность?
Хочу использовать "функциональный блок регулятора с АНР для трехпозиционного ИМ без
датчика положения (APID_VALVE)" из биб-ки PID_Reg2
Для поддержки т-ры.
Пидрег.JPG
Есть пара вопросов:
1.
PV_0:REAL – начальное значение регулируемого параметра или значение параметра при
нулевой мощности управляющего сигнала. Это какое нужно установить значение?
2.
SYNC:BOOL – установка положения задвижки через вход PV. При установке значения True
положение задвижки (в диапазоне от 0 до 1) считывается из входа PV и сохраняется во
внутренней переменной ФБ. Это как? Можно на пальцах?
В данный момент использую ручное управление задвижкой без датчика положения - (VALVE_REG_NO_POS) из биб-ки PID_Regulators
3.
Возможна ли такая логика работы: Регулирование происходит APID_VALVE при нажатии "Ручное управление" управляю блоком VALVE_REG_NO_POS? В APID_VALVE нет времени реверса ИМ, как с этим быть?
Не зная броду, не суйся в воду. (Пословица.)
Век живи, век учись(а умрешь дураком).
Опыт растет прямо пропорционально выведенному из строя оборудованию.