Среда разработки Unimod PRO 2 (версия 2.3.40)
 Руководство по программированию
×

SET - управление заданием


Назначение.
Функциональный блок SET формирует задания для регулятора.
 
Состав структурной переменной.
Переменная со структурным типом SET будет добавлена в локальный словарь автоматически при добавлении блока в редактор.
Автоматический режим работы.
В автоматическом режиме (AUTO=TRUE) входной сигнал X проходит через звено динамической балансировки поэтапно:
  • При отключенной динамической балансировке (V<=0) входной сигнал X проходит на выход Y без изменений (Y=X).
  • Иначе, определяется скорость изменения значения X относительно Y:
    ,
    где Yi-1 – значение выхода в предыдущем цикле, Tc – время цикла контроллера.
  • Если |V1|<=V, то сигнал X проходит на выход Y без изменений (Y=X).
  • Если |V1|>V, то выход Y будет изменяться по следующей формуле:
    ,
    где Yi – значение выхода в текущем цикле, Yi-1 – значение выхода в предыдущем цикле, V – скорость динамической балансировки.
  • Выход Y будет изменяться с ограниченной скоростью V, пока не достигнет значения X.
  • На выход XOUT передается входной сигнал X без изменений.
Ручной режим работы.
В ручном режиме (AUTO=FALSE) выходы блока Y=X0 и XOUT=X0.
Пример использования совместно с блоком аналогового регулирования RAN.
С блока SET выходной сигнал Y (задание) передается на вход X1 аналогового регулятора RAN. На вход X0 блока SET подается тот же сигнал, что и на вход X2 регулятора (регулируемый параметр).
В ручном режиме работы блок SET игнорирует входной сигнал X, и без изменения передает значение сигнала X0 (temperature) на выход Y. В таком случае, в блоке аналогового регулятора RAN значение задания на входе X1 и значение регулируемого параметра temperature на входе X2 всегда совпадают, так как на оба входа поступает одинаковое значение temperature (задание отслеживает регулируемый параметр).
После переключения в автоматический режим работы блок SET сохраняет на выходе Y последнее выведенное значение temperature до конца текущего цикла контроллера, и начинает отслеживать изменение сигнала X. Уже в следующем цикле контроллера выходной сигнал Y (задание) может быть изменен. В таком случае, в блоке RAN значение задания X1 и значение регулируемого параметра X2 могут отличаться (задание аналогового регулятора перестает отслеживать регулируемый параметр).
Для блокировки изменения задания X на время ручного режима работы к выходу XOUT блока SET требуется подключить входной параметр X. В таком случае в ручном режиме задание всегда будет равно параметру X0.
Если выход XOUT не задействовать, значение задания можно изменять при любом режиме работы.
Пример синтаксиса на языке ST.
//вызов функционального блока
Block.SET(AUTO, X, V, X0);
//Y - задание для регулятора с динамической балансировкой,
//в ручном режиме работы Y=X0
Y := Block.Y;
//XOUT=X в автоматическом режиме (задание без балансировки),
//в ручном режиме XOUT=X0
XOUT := Block.XOUT;