DIFFC - усовершенствованный модуль DIFFB – модуль регулятор (заказ ООО "ЗлакИнвест" для работы с пропаривателем, логика работы с учетом пожеланий заказчика)

Модуль для взаимодействия с блоками ICP 7520 ;

Позволяет изменять аналоговую величину в указанном диапазоне в зависимости от входных параметров

Отличие от DIFFB в наличии 2 таймеров для нагрева и охлаждения

Также изменена функция регулирования, OutVal изменяется только в случае отсутствия тенденции регулируемой величины

к изменению.

Пример:

CurTmp=65, MaxTmp=100, MinTmp=75

OldTmp=63.

OutVal изменяться не будет (CurTmp>OldTmp, температура возрасла, ждем пока не будет меняться или снизится).

CurTmp=65, MaxTmp=100, MinTmp=75

OldTmp=65.

OutVal увеличится (CurTmp=OldTmp, температура не поменялась).

## Функциональные возможности

- Позволяет учесть инерционность системы для регулирования
- Гибкое управление диапазоном выходных значений

ВХОДЫ
Enable | Разрешение работы регулятора
Susp | Приостанов работы
CurTmp | Текущая температура
MaxTmp | Максимальная температура
MinTmp | Минимальная температура
AlrmTmpH | Аварийно высокая температура устанавливает мультипликатор мощности 2 сразу
AlrmTmpL | Аварийно низкая температура устанавливает мультипликатор мощности 2 сразу
Error | Ошибка прибора контроля температуры, если выставален Error&Enable, то OutVal=MinOut(см. ВЫХОДЫ)
ВЫХОДЫ
OutVal | Выходная величина, расчитывается на основе текущих, CurTmp,MinTmp,MaxTmp (ВХОДЫ)

State

текущее состояние регулятора
0 - выключен
1 - включен, прогрев
3 - включен,Error=1
4 - выключен,Error=1
5 - включен, состояние повышения Ouput
6 - включен, состояние понижения Ouput
7 - включен, OutVal без изменения

MinOut, mA | Минимальное знасение регултора
MaxOut, mA | Максимальное значение регулятора
StartPwr | Мощность на момент старта регулятора в течении времени TimePre OutVal=(StartPwr/100)*(MaxOut-MinOut)+MinOut, Регулирования на этой стадии нет пока не вышли в указанный диапазон.
PwrMult | Отладочное значение множителя PwrStep (*1)(*2)(*3)
PweStep | Шаг наращения OutVal, если система не выходит на нужный уровень в течени TimeDly, OutVal[+,-]=(PwrStep/100)*(MaxOut-MinOut) Если система достаточно инерционная и после изменения OutVal по истечении TimeDly продолжает изменяться в сторону отличную от необходимой, то PwrStep*2(*3)... пока не будет нужных изменений, далее используется обычное значение PwrStep
TimePreHeat | Время прогрева, в течении которого OutVal=(StartPwr/100)*(MaxOut-MinOut)+MinOut
TimeWrkHigh | Время реакции системы на подачу изменений при нагреве, в течении которого не будут проводится какие-либо изменения OutVal. Если время вышло, а система не в установленных [MinTmp;MaxTmp], то OutVal изменяется и заново отсчитывается время TimeWrkHigh
TimeWrkLow | Время реакции системы на подачу изменений при охлаждении, в течении которого не будут проводится какие-либо изменения OutVal. Если время вышло, а система не в установленных [MinTmp;MaxTmp], то OutVal изменяется и заново отсчитывается время TimeWrkLow
oldTmp | Отладочное значение старая температура
TimePreCnt | Отладочное значение, счетчик TimePreHeat
TimeWorkHighCnt | Отладочное значение, счетчик TimeWorkHigh
TimeWorkLow | Отладочное значение, счетчик TimeWorkLow
FlSetFlow | резерв