CTRL_PID (OSCAT)

<< Click to Display Table of Contents >>

Navigation:  Приложения > Библиотека OSCAT > OSCAT.Функциональные блоки > OSCAT.ФБ.Модули регулирования >

CTRL_PID (OSCAT)

CTRL_PID – это пропорционально-интегрально-дифференциальный регулятор (ПИД-регулятор) с вычислением девиации процесса и ограничением выходного сигнала, а также возможностью ручного управления.

Вид ФБ в редакторе программ языка FBD:

CTRL_PID_OSCAT

Входы и выходы ФБ:

Название

Тип

Описание

Входы

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_OSCAT_1

Для вычисления девиации процесса ФБ 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:

CTRL_PID_OSCAT_2