<< Click to Display Table of Contents >> Navigation: Приложения > Библиотека OSCAT > OSCAT.Функциональные блоки > OSCAT.ФБ.Модули регулирования > CTRL_PID (OSCAT) |
CTRL_PID – это пропорционально-интегрально-дифференциальный регулятор (ПИД-регулятор) с вычислением девиации процесса и ограничением выходного сигнала, а также возможностью ручного управления.
Вид ФБ в редакторе программ языка FBD:
Входы и выходы ФБ:
Название |
Тип |
Описание |
Входы |
||
ACT |
REAL |
Вход (текущее значение процесса). |
SET |
REAL |
Уставка процесса. |
SUP |
REAL |
Порог. |
OFS |
REAL |
Смещение выхода Y. |
M_I |
REAL |
Значение для ручного режима. |
MAN |
BOOL |
Переключатель ручного режима. |
RST |
BOOL |
Сброс значения интеграла. Для сброса значения интеграла нужно подать импульс на вход RST. |
KP |
REAL |
Коэффициент усиления ФБ. По умолчанию вход KP=1. |
TN |
REAL |
Этот параметр должен быть отличен от 0. Величина 1/TN передается в используемый ПИД-регулятор FT_PIDWL (OSCAT) для формирования в нем коэффициента интегральной части. По умолчанию вход TN=1. Если TN=0, интегрирование приостанавливается (значение интеграла сохраняется). |
TV |
REAL |
Этот параметр передается в используемый ПИД-регулятор FT_PIDWL (OSCAT) для формирования в нем коэффициента дифференциальной части. По умолчанию TV=1. |
LL |
REAL |
Нижняя граница выхода Y. По умолчанию вход LL=-1000. |
LH |
REAL |
Верхняя граница выхода Y. По умолчанию вход LH=1000. |
Выходы |
||
Y |
REAL |
Выход. Значение выхода Y всегда ограничивается значениями LL и LH: LL<=Y<=LH. |
DIFF |
REAL |
Девиация процесса. Если (SET-ACT)<-SUP, DIFF:=SET-ACT+SUP; если (SET-ACT)>SUP, DIFF:=SET-ACT-SUP; если -SUP<=(SET-ACT)<=SUP, DIFF:=0. |
LIM |
BOOL |
Этот выход принимает значение TRUE, если выходной сигнал достигает предела. |
Математически ФБ работает по следующей формуле:
Для вычисления девиации процесса ФБ CTRL_PID использует функцию CTRL_IN (OSCAT), для ограничения выхода – ФБ CTRL_OUT (OSCAT), в качестве собственно регулятора – ФБ FT_PIDWL (OSCAT):
Y:= CTRL_OUT(FT_PIDWL(DIFF,KP,TN,TV,LL,LH,RST), OFS, M_I, LL, LH, MAN)
где
DIFF:= CTRL_IN(SET, ACT, SUP)
В ручном режиме (MAN=TRUE) значение Y продолжает вычисляться по приведенной выше формуле, но заменяется на Y:= M_I + OFS.
Блок-схема ФБ CTRL_PID: