logo search

3.2.3. Реализация регуляторов и объектов управления в scada-системе TraceMode

Звено PID (ПИД) Этот блок формирует выходное значение по ПИД-закону от величины, поданной на его вход INP.  Для ввода значений настроек используются три входа: KP - коэффициент при пропорциональной составляющей, KD - при дифференциальной, KI - при интегральной.  Модуль подаваемого на вход KI отрицательного значения передается на выход. Далее при подаче на вход KIнеотрицательного значения регулирование начинается с установленной величины.  Для ограничения величины управляющего воздействия используются входы блока MIN и MAX. Первый из них задает нижний предел управления, а второй – верхний. Если величина управления выходит за любую из этих границ, то выходу присваивается величина соответствующего входа и перестает накапливаться интегральная составляющая закона регулирования.  Данный блок вычисляет величину управления по значению рассогласования регулируемой величины и задания, которое надо вычислять с помощью отдельного функционального блока.  Введение в алгоритм параметра dt исключает необходимость в пересчете настроек регулятора при смене периода опроса канала регулирования.  Пример. Конфигурация контура регулирования  На рис.3.8 показана программа, реализующая контур регулирования. Здесь вычисляется рассогласование регулируемой величины с заданием, далее введена зона нечувствительности и вычисление управляющего значения. Далее стоит переключатель режима (ручной/автоматический).  Рис. 3.8 Для реализации описанных функций используются четыре блока. Первый из них (-) вычисляет рассогласования регулируемой величины с заданием. Эти параметры подаются на его входы AS и AD соответственно. Величина рассогласования с выхода первого блока подается на вход INP блока DZONE, который реализует функцию зоны нечувствительности. Величина зоны нечувствительности подается на его вход DLT. Выход второго блока подается на вход INP блока PID, реализующего вычисление величины управляющего воздействия. Для переключения контура на ручной режим используется функциональный блок SEL. На его вход IN0 подается выход блока PID, а на вход IN1 - величина ручного управления выходом регулятора. Управление переключением режимов осуществляется входом IGблока SEL.  ^ Управление устройством типа “двигатель” (MOT)  Данный блок позволяет управлять устройствами типа двигатель (рис. 3.9). Они имеют два входа управления (включить и выключить) и могут находиться в состояниях работы, резерва, ремонта или аварии.  Рис. 3.9 Входы и выходы блока  Блок MOT имеет следующие функциональные входы:  CMD – вход управления устройством:  1 – включить;  2 – выключить;  STS – вход управления переключением состояний:  0 – не определен;  1 – включен;  2 – выключен;  3 – перевод в резерв с подтверждением;  4 – ремонт;  5 – ошибка (авария);  6 – обнулить выход ERR (доступно только из состояния ремонт);  8 – перевод в резерв без подтверждения;  9 – подтверждение перевода в резерв;  END – вход контроля датчиков состояния устройства:  1-й бит – включен,  2-й бит – выключен,  3-й бит – контроль ДАВЛЕНИЯ;  5-й бит – отключение контроля включения,  6-й бит – отключение контроля выключения;  7-й бит – блокировка проверки ДАВЛЕНИЯ (0 – не проверять, 1 - проверять).  dT – время удержания сигналов управления в секундах;  ALR – ручная установка признака аварийного состояния;  T – время переключения состояний включен/выключен [сек];  CHK – при состоянии ремонт дублирует функции входа CMD. Значения 1 и 2 – команды включения и выключения. Другие значения переводят устройство в режим опробования – увеличение выхода STS на 16. Команда CHK (значения 1 и 2) работает в режиме ремонт при подаче на вход STS значений 1 или 2. В режимах 1 и 2 эта команда приоритетна над CMD.  Выходы данного блока имеют следующее назначение:  STS – признак текущего состояния устройства:  0 – не определено,  1 – включен,  2 – выключен,  3 – резерв,  4 – ремонт,  5 – ошибка,  9 – включается,  10 – выключается;  11 – ожидание перевода в резерв.  ON – сигнал управления включением;  OFF – сигнал управления выключением;  ERR – характеристика аварийной ситуации:  1 – одновременно присутствуют сигналы от датчиков включения и выключения;  2 – несанкционированное выключение (выключение внешними средствами - например, вручную);  3 – несанкционированное включение (включение внешними средствами - например, вручную);  4 – при выключении за время T не пришел сигнал от датчика выключения;  5 – при включении за время T не пришел сигнал от датчика включения;  6 – при включении за время dT не снят сигнал от датчика выключения;  7 – при выключении за время dT не снят сигнал от датчика включения;  8 – переход в состояние ошибка по команде STS;  9 – переход в состояние ошибка по команде ALR.  Описание работы блока  Данный блок предназначен для формирования команд управления устройствами типа двигатель и контроля их состояния.  Команды управления подаются вход CMD: значение 1 – включить, а 2 – выключить. В рабочем состоянии устройства при получении любой из этих команд на соответствующем выходе блока (ON – для включения, OFF – для выключения) формируется импульс. Длина этого импульса задается в секундах входом dT.  При выполнении этих операций контролируется значение входа END. Два его младших бита контролируют сигналы от датчиков (первый бит – включение, второй – выключение). Если операция выполнена некорректно, то устройство переводится в состояние ошибка. При этом выходу STS присваивается значение 5, а выходу OFF – значение 1 (сигнал выключения устройства). Величина выхода ERR характеризует текущую ошибку в работе устройства.  Устройство можно также перевести в состояние ошибка подачей значения 5 на вход STS или значения отличного от 0 на вход ALR. В первом случае выход ERR будет равен 8, а во втором – 9.  Если управляемое устройство не имеет датчиков состояния, то можно заблокировать их анализ. Блокировка сигналов от датчиков включения и выключения выполняется с помощью 5-го и 6-го битов входа END (считая с 1) соответственно. При их равенстве 1 считается, что устройство перешло в заданное состояние по истечении времени, установленного значением входа T.  Обнуление значения выхода ERR допустимо только из состояния ремонт. Для этого надо входу STS присвоить значение 6.  При включении двигателя по концевому выключателю или по времени и отсутствии сигнала ДАВЛЕНИЯ код СОСТОЯНИЯ равен 12 (холостой ход) и код ошибки – 10 (включен, но давления нет).  В режимах 2 (выключен) и 3 (резерв) появление сигнала ДАВЛЕНИЯ вызывает ошибку 12 (несанкционированное давление).  Если при отключении возникает сигнал ДАВЛЕНИЯ, формируются состояние 5 и ошибка 11.  Задание одного из битов 80 или 08 переводит блок в режим отслеживания концевых выключателей и ДАВЛЕНИЯ (перевод в состояния ВКЛЮЧЕН, ВЫКЛЮЧЕН или ХОЛОСТОЙ ХОД).  При этом бит 80 добавляет к статусу 16, ни на какие изменения CMD и STS реакции нет, ошибки типа 10, 11, 12 - не формируются.  Особенности перехода между состояниями  Состояние работа устройства характеризуется значениями 1 или 2 выхода STS (включено и выключено соответственно).  Из состояния 5 (ошибка) при STS=8 осуществляется переход в состояние 3 (резерв), а при STS=3 – в состояние 11 (ожидание подтверждения перехода в резерв). Из состояния 5 (ошибка) можно перейти также в состояние4 (ремонт) и затем в 3 (резерв). Наличие ERR>0 не означает неработоспособности устройства и невозможности смены состояний.  Из состояния 1 (включен) блок может быть переведен в состояние 2 (выключен) подачей на вход STS значения 7.  В состояние работа можно перейти только из состояния резерв (значение выхода STS равно 3), пройдя через состояние выключен. Для этого надо подать на вход STS значение 2 (выключен), а затем – 1 (включен). И уже после этого команды, подаваемые на вход CMD, будут формировать сигналы управления устройством на выходах ON и OFF.  Для перехода в состояние резерв надо, находясь в состоянии ремонт подать на вход STS значение 3 или 8. В первом случае переход будет осуществлен только после последующей посылки на этот же вход значения 9, а во втором – сразу.  Сигналы конечных выключателей проверяются (если нет блокировок) динамически (в момент подачи исполнительной команды на выход блока) и статически – в состоянии 1 проверяется отсутствие бита 2 (выключен) входа END, в состояниях 2 и 3 проверяется отсутствие бита 1. Если эти условия не выполняются, осуществляется переход в состояние 5 с указанием соответствующего кода ошибки. ^ Управление задвижкой (ZDV)  Данный блок реализует алгоритм управления устройством типа задвижки. Он контролирует значения трех дискретных сигналов: концевые выключатели открытия и закрытия, а также сигнал с муфты. Для управления используются два дискретных сигнала: открыть и закрыть. Задвижка может не иметь сигнала с муфты или использовать дополнительный управляющий сигнал на остановку. Примеры управления такими устройствами будут приведены ниже.  Данный блок имеет пять функциональных входов и четыре выхода. Вход CMD предназначен для приема команд управления. Такими командами могут быть:  0 – остановить;  1 – открыть;  2 (-1) – закрыть. Второй вход IOP предназначен для контроля состояния концевого выключателя открытия. На вход ICL надо подавать значения состояния двух других дискретных сигналов:  1-й бит - концевой выключатель закрытия;  2-й бит - сигнал с муфты.  Вход PT используется для задания времени открытия/закрытия задвижки (в секундах). Его значение должно быть немного больше реального времени открытия. Эта величина используется для анализа аварийных ситуаций, а также для управления задвижкой по времени в случае неисправности датчиков ее состояния.  Вход CSC предназначен для блокирования сигналов с концевых выключателей и муфты, сброса аварийных признаков и настройки крайних положений задвижки, если блокированы сигналы концевых выключателей. Тип этого входа должен быть установлен HEX.  При блокировании любого сигнала все операции, использующие его значение, выполняются по времени. Аварийные признаки в этом случае не формируются. Для выполнения перечисленных операций следует установить в 1 следующие биты:  1-й – блокирование концевого выключателя открытия;  2-й – блокирование концевого выключателя закрытия;  3-й – блокирование сигнала с муфты;  4-й – установка 0% закрытия (при 6-м бите равном 1);  5-й – установка 100% закрытия (при 6-м бите равном 1);  6-й – сброс аварийных признаков и калибровка положения.  7-й – учет гистерезиса при изменении направления движения задвижки. Величина гистерезиса равна половине времени открывания или закрывания (выбирается автоматически в зависимости от направления движения), установленного блоком SdV.  8-й – перевод в режим дистанционного управления. В этом режиме состояние задвижки отслеживается по концевым выключателям, аварийные ситуации не контролируются.  На приведенном ниже рис. 3.10 иллюстрируется назначение функциональных входов и выходов данного блока.  Рис. 3.10 Рассмотрим теперь назначение выходов данного блока. На первом из них (OPN) формируется значение дискретного сигнала на открытие задвижки. Выход CLS используется для формирования значения сигнала на закрытие.  На выход Q%L выводится положение задвижки в виде процента закрытия. Эта величина формируется отношением времени, прошедшего с подачи соответствующей команды, к значению входа PT. При достижении любого из крайних положений эта величина принимает значение 0 или 100, в зависимости от положения. Если при первом пересчете блока значения дискретных сигналов от задвижки не соответствуют ни одному из крайних положений, то величина выхода Q%L устанавливается равной 50. Первый же переход в любое крайнее положение синхронизирует значение этого выхода с реальным положением задвижки.  Выход ALR предназначен для контроля над состоянием задвижки. Младший байт этого выхода передает статус состояния задвижки, а старший – признаки аварийных состояний.  Байт статуса может принимать следующие значения:  1 – открывается;  2 – закрывается;  4 – открыт;  8 – закрыт;  17 – остановка при открытии (0x11);  18 – остановка при закрытии (0x12).  С помощью байта аварийных состояний алгоритм управления задвижкой индицирует следующие ситуации:  1 – одновременно установлены в 1 сигналы с концевых выключателей открытия и закрытия;  2 – при открытии не отключился концевой выключатель закрытия или сигнал с муфты по истечении установленного времени;  3 – при закрытии не отключился концевой выключатель открытия по истечении установленного времени;  4 – остановка после открывания по времени (не сработал концевой выключатель ОТКРЫТО);  5 – остановка после закрытия по времени (нет сигналов от концевого выключателя ЗАКРЫТО и/или муфты);  6 – остановка при открывании по времени (не сняты сигналы от концевого выключателя ЗАКРЫТО и/или муфты);  7 – остановка при закрытии по времени (не снят сигнал с концевого выключателя ОТКРЫТО);  8 – заклинивание: при закрытии задвижки до ее перехода в крайнее положение появился сигнал с муфты.  10 – при открытой или закрытой задвижке пропали сигналы от соответствующих концевых выключателей;  11 – при закрытой задвижке пропал сигнал от концевого выключателя, а сигнал от муфты остался;  12 – при закрытой задвижке пропал сигнал от муфты, а сигнал от концевого выключателя остался.  Времена для контроля ситуаций 2 и 3 по умолчанию принимаются равными 10% от значения входа PT. Их можно изменить с помощью блока SdV. Его описание приведено ниже.  После формирования признака аварии, он остается, даже если ситуация вернулась в нормальное состояние. Для сброса признаков аварии надо установить в 1 шестой бит входа CSC.  В заключение рассмотрим управление с помощью данного алгоритма устройствами, описание которых несколько отличается.  ^ Пример: управление шаровым краном. Шаровой кран не имеет сигнала с муфты. Чтобы использовать блок ZDV, следует сигнал с концевого выключателя закрытия умножить на три. Для этого нужен дополнительный блок умножения. Выход блока умножения надо подать на вход ICL блока управления задвижкой.  При такой конфигурации сигнал о закрытии и сигнал с муфты будут всегда формироваться одновременно и признаков некорректной работы устройства не будет.  Пример: управление задвижкой с выделенным сигналом на остановку.  Многие задвижки используют не два, а три управляющих сигнала. Этот дополнительный сигнал управляет остановкой перемещения. Для управления такими задвижками можно использовать функциональный блок (ZDV). Однако надо предусмотреть еще один функциональный блок, который будет формировать третий управляющий сигнал. Этот сигнал должен устанавливаться в 1 при подаче на вход CMD блока управления задвижкой величины 0. При всех других значениях этот выход должен быть равен 0. Для этого надо использовать блок, реализующий функцию инверсии. Вход этого блока следует соединить с первым функциональным входом блока управления задвижкой.