Описание работы контроллера XPAC-8000
Управление (формирование выходных сигналов на ИМ) осуществляется ПЛК. Он производит опрос датчиков и вырабатывает сигналы управления. К функциям, выполняемым контроллером, можно отнести следующие:
- контроль и сигнализация предельных значений;
- управление объектом.
Сигнализация реализуются путем сравнения технологического параметра с определенным предельным значением. В результате вырабатывается соответствующий сигнал.
Управление реализуется при помощи сравнения с граничными значениями, по которым вырабатывается сигнал отключения. В частности для данного объекта это управляющие сигналы на отключение электродвигателя компрессора.
Все первичные преобразователи подают на вход контроллера унифицированные токовые сигналы 4 - 20 мА. Данные сигналы принимаются контроллером и обрабатываются при помощи программы, загруженной из памяти программ.
Программирование контроллера
Работа начинается с создания проекта в ISaGRAF. В описании проекта (Edit description) можно указать автора проекта, его название, версию. В самом проекте создается программа (File - New), при этом можно указать какой язык программирования будет использоваться.
Перед тем, как ввести текст программы, необходимо объявить используемые в ней переменные. Это выполняется с помощью команд меню «Dictionary».
Переменные выбраны на основе анализа датчиков и первичных преобразователей которые имеются на компрессорах и электроприводной ЗРА.
Глобальные переменные (global variables) доступны любой программе созданного проекта. Среди переменных можно выделить следующие:
- аналоговые;
- логические;
- таймерные.
Переменные могут быть входными, выходными и внутренними. Аналоговые переменные могут быть целочисленными или вещественными.
Список переменных, применяемых в программе для данного проекта, приведен в таблице 4.1.
Таблица 4.1 - Список переменных
Идентификатор |
Сигнал |
Тип сигнала |
Описание |
XotkZ1 |
Boolean |
Input |
Открытие задвижки Z1 |
Xev1 |
Boolean |
Input |
электропривод задвижки Z1 запустился на открытие |
Xz1o |
Boolean |
Input |
задвижка Z1 открыта |
XzakZ1 |
Boolean |
Input |
закрыть задвижку Z1 |
Xez1 |
Boolean |
Input |
электропривод задвижки Z1 запустился на закрытие |
Xz1z |
Boolean |
Input |
задвижка Z1 закрыта |
Yz |
Boolean |
Input |
сброс аварии |
XpuskK1 |
Boolean |
Input |
запуск компрессора К1 |
Xvd1 |
Boolean |
Input |
превышение давления на К1 |
Xm1 |
Boolean |
Input |
низкий уровень масла |
Xtk11 |
Boolean |
Input |
температура масляно-газовой суспензии выше нормы |
Xtk12 |
Boolean |
Input |
температура масла выше нормы |
Xtk13 |
Boolean |
Input |
температура газа в цилиндре выше нормы |
XstopK1 |
Boolean |
Input |
остановка компрессора К1 |
Uev1 |
Boolean |
Output |
включение электропривода задвижки Z1 на открытие |
Uez1 |
Boolean |
Output |
включение электропривода задвижки Z1 на закрытие |
Udk1 |
Boolean |
Output |
включение электродвигателя компрессора К1 |
Um1 |
Boolean |
Output |
открытие масляной задвижки |
Ie1 |
Boolean |
Output |
электропривод задвижки Z1 не сработал |
Iz1 |
Boolean |
Output |
задвижка Z1 не исправна |
Uk1 |
Boolean |
Output |
открытие клапана масляно-газовой суспензии |
Uk2 |
Boolean |
Output |
открытие клапана масла |
Uk3 |
Boolean |
Output |
открытие клапана газа |
Ik1 |
Boolean |
Output |
неисправность компрессора |
T1 |
Timers |
Internal |
выдержка времени на включение электропривода Z1 |
T2 |
Timers |
Internal |
выдержка времени на открытие / закрытие Z1 |
imp |
integer |
Internal |
переменная оператора case |
XotkZ2 |
Boolean |
Input |
Открытие задвижки Z2 |
Xev2 |
Boolean |
Input |
электропривод задвижки Z2 запустился на открытие |
Xz2o |
Boolean |
Input |
задвижка Z2 открыта |
XzakZ2 |
Boolean |
Input |
закрыть задвижку Z2 |
Xez2 |
Boolean |
Input |
электропривод задвижки Z2 запустился на закрытие |
Xz2z |
Boolean |
Input |
задвижка Z2 закрыта |
XpuskK2 |
Boolean |
Input |
запуск компрессора К2 |
Xvd2 |
Boolean |
Input |
превышение давления на К2 |
Xm2 |
Boolean |
Input |
низкий уровень масла К2 |
Xtk21 |
Boolean |
Input |
температура масляно-газовой суспензии выше нормы |
Xtk32 |
Boolean |
Input |
температура масла выше нормы |
Xtk33 |
Boolean |
Input |
температура газа в цилиндре выше нормы |
XstopK2 |
Boolean |
Input |
остановка компрессора К2 |
Uev2 |
Boolean |
Output |
включение электропривода задвижки Z2 на открытие |
Uez2 |
Boolean |
Output |
включение электропривода задвижки Z2 на закрытие |
Udk2 |
Boolean |
Output |
включение электродвигателя компрессора К2 |
Um2 |
Boolean |
Output |
открытие масляной задвижки К2 |
Ie2 |
Boolean |
Output |
электропривод задвижки Z2 не сработал |
Iz2 |
Boolean |
Output |
задвижка Z2 не исправна |
Uk21 |
Boolean |
Output |
открытие клапана масляно-газовой суспензии К2 |
Uk22 |
Boolean |
Output |
открытие клапана масла К2 |
Uk23 |
Boolean |
Output |
открытие клапана газа К2 |
Ik2 |
Boolean |
Output |
неисправность компрессора К2 |
XsmenaK1 |
Boolean |
Input |
замена компрессора К1 на К2 |
Xpz |
Boolean |
Input |
открылась промежуточная задвижка |
Upz |
Boolean |
Output |
сигнал на открытие промежуточной задвижки |