На современном этапе развития техники остро стоит вопрос модернизации предприятий алмазодобывающего профиля с целью повышения эффективности и оптимизации работы промышленного оборудования и основных технологических процессов, в том числе снижения энергопотребления. Инструментом этого может служить комплексная автоматизация и оптимизация производства, организация сквозного обмена данными и отчетности в рамках корпоративной информационной сети производственных подразделений предприятия. Именно автоматизация наиболее доступное, а иногда и единственное средство быстрого повышения эффективности производства, снижения себестоимости и повышения качества продукции. На основе компьютерного анализа больших потоков информации в контурах управления и отображения протекающих процессов в виде «виртуальных» мнемосхем, оптимизации управления промышленных объектов предоставляется возможность оперативного переконфигурирования производства и оптимизации технологических процессов и промышленного оборудования в ходе его работы без остановки самого производства [1].
Для возможности повсеместного внедрения автоматизации производственных процессов необходимо на ключевых технологических участках внедрить программируемые логические контроллеры.
Программируемые логические контроллеры (ПЛК) являются базовыми элементами систем промышленной автоматики и представляют собой микропроцессорное устройство, предназначенное для сбора, преобразования, обработки, хранения информации и выработки команд управления, имеющих конечное количество входов и выходов, подключенных к ним датчиков, ключей, исполнительных механизмов к объекту управления, и предназначенные для работы в режимах реального времени [2]. Их выпускают множество производителей и представленные большинством из них различные линейки моделей также обширны, для многих инженеров актуальна проблема выбора наиболее подходящего решения по соотношению таких параметров, как производительность, функционал, стоимость. На данный момент ведущими производителями являются:
– Siemens – среда разработки Simatic Step 7;
– GE (бывш. GE Fanuc) – среда разработки Proficy ME;
– Schneider Еlectric – среда разработки Concept, Unity Pro;
– Mitsubishi Electric – среда разработки MELSOFT GX Works2;
– Beckhoff – среда разработки TwinCAT;
– Allen Bradley – среда разработки RSLogix 5000;
– ABB – среды разработки нет, использует CoDeSys;
– Omron – среда разработки CX-One;
– Koyo (ПЛК DirectLogic) – среда разработки DirectSOFT;
– ICP DAS – своей среды разработки нет, использует ISaGRAF.
Принцип работы ПЛК несколько отличается от обычных микропроцессорных устройств. Программное обеспечение универсальных контроллеров состоит из двух частей. Первая часть – это системное программное обеспечение. Проводя аналогию с компьютером, можно сказать, что это операционная система, то есть управляет работой узлов контроллера, взаимосвязи составляющих частей, внутренней диагностикой. Системное программное обеспечение ПЛК расположено в постоянной памяти центрального процессора и всегда готово к работе. По включению питания ПЛК готов взять на себя управление системой уже через несколько миллисекунд. ПЛК работают циклически по методу периодического опроса входных данных. Рабочий цикл ПЛК включает 4 фазы: опрос входов, выполнение пользовательской программы, установку значений выходов, некоторые вспомогательные операции (диагностика, подготовка данных для отладчика, визуализации и так далее) [3].
Физически типичный ПЛК представляет собой блок, имеющий определенный набор выходов и входов для подключения датчиков и исполнительных механизмов. Логика управления описывается программно на основе микрокомпьютерного ядра. Абсолютно одинаковые ПЛК могут выполнять совершенно разные функции. Причем для изменения алгоритма работы не требуется каких-либо переделок аппаратной части. Аппаратная реализация входов и выходов ПЛК ориентирована на сопряжение с унифицированными приборами и мало подвержена изменениям [4].
Аппаратное обеспечение программируемых логических контроллеров
Характеристики основных линеек моделей у производителей ПЛК имеют небольшое отличие, поскольку используют общие типы конфигурации модулей [5–6]. Существуют три основных наиболее распространённых типа конфигурации:
1. С параллельной шиной – ПЛК с параллельной шиной, к которой подключаются модули ввода/вывода. Имеет 3 разновидности – шасси, базовую плату и крейт.
1.1. Шасси – каждый модуль оснащен двумя разъемами шины с двух сторон, позволяющими, с одной стороны, подключить его к существующей системе, и с другой – подключить еще один аналогичный модуль. У модуля ЦПУ разъем один. Примеры: VersaMax от GE Fanuc, S7-300 от Siemens, Modicon M340 от Schneider Electric, FX от Mitsubishi Electric.
1.2. Базовая плата – имеется отдельная плата с фиксированным набором посадочных мест для включения модулей, в том числе модулей блока питания и ЦПУ. Например: серия RX3i от GE Fanuc, S7-400 от Siemens, DirectLogic DL405.
1.3. Крейт – разновидность базовой платы, включающей в себя шину данных, направляющие для модулей, блоки питания и CPU. Примеры: RX7i от GE Fanuc, КАМАК, DirectLogic от DL05 до DL205, ICP DAS XP-8000.
2. С последовательной шиной – модули соединяются друг с другом и с модулем ЦПУ, например по RS-485. Это не стандартная реализация ПЛК, используется редко. Пример: ICP DAS 7000 (ADAM 4000).
3. Несколько шин одновременно – одноплатный компьютер с любым набором входов и выходов, программируемый посредством CoDeSys, ISaGRAF или аналогичной среды разработки. Примеры: формат PC-104, промышленный компьютер с платами типа PCI-1756 от Advantech, устройствами в COM-портах.
Более дорогие модели ПЛК проектируются как базовая плата или крейт, необходимо это для максимальной защиты данных.
Программное обеспечение для программирования ПЛК
Всё программное обеспечение для ПЛК работает по одному принципу – создание в целевом ЦПУ исполняемого кода. В большинстве случаев производитель не предоставляет информации о том, какая операционная система используется в модуле процессора ПЛК, но сами модули работают достаточно стабильно.
При необходимости на ПЛК реализуется резервирование, вплоть до троирования, штатными средствами аппаратных средств и среды разработки [7]. Стандарты языков программирования регламентируются IEC 61131-3 и IEC 61499. Функциональной разницы между языками IEC 61131-3 нет. Разница заключается в наглядности логических конструкций. На языках LD и FBD одинаковая логическая конструкция выглядит по-разному, при этом она может быть проще или сложнее для восприятия в зависимости от решаемой задачи. IEC 61499 – стандарт для функциональных блоков ПЛК для поддержки параллельности и событийности выполнений блоков [8–9]. На данный момент используется не столь часто, так как особой необходимости в нем нет для большинства задач.
Функциональная наполненность у всех сред разработки в целом достаточно близка. Везде есть работа с битами, словами, математические операции, логические функции, диагностика, обмен данными, ПИД-регулирование. Соответственно, основные отличия приходятся на интерфейс, наличие симулятора ПЛК, сравнение проектов и возможность разработки модулей на С++.
Интерфейс всех сред разработки можно разделить на два типа:
1. Многооконный (рис. 1), когда одна утилита служит для конфигурации аппаратуры, вторая позволяет работать с переменными, в третьей редактируется открытый блок (Step 7, ISaGRAF, CX-One).
Рис. 1. Пример многооконного интерфейса
Рис. 2. Пример однооконного интерфейса
2. Однооконный (рис. 2), с одним исполняемым файлом, поделенный на зоны, в которых отображаются в зависимости от выбранной вкладки – коды, конфигурация аппаратуры и остальные параметры (Proficy ME, CoDeSys, DirectLogic, RSLogix 5000).
Для демонстрации различий между производителями, в качестве примера рассмотрим обращение к модулям ввода вывода (таблица).
Разновидности обращений к модулям ввода-вывода по производителям
Параметр |
Siemens (Step 7), CoDeSys, ISaGRAF |
GE Fanuc (Proficy) |
Koyo (DirectLogic) |
Sсhneider Electric (Concept) |
Mitsubishi Electric (MELSOFT GX Works2) |
Omron (CX-One) |
Allen Bradley (RS Logix 5000) |
Дискретный вход |
%IX0.1 |
%I00001 |
%X1 |
%100001 |
%X1 |
I:0.01 |
1791_8AC:I.Data.0 |
Дискретный выход |
%QX0.1 |
%Q00001 |
%Y1 |
%000001 |
%Y1 |
Q:1.01 |
1791_8AC:O.Data.0 |
Аналоговый вход |
%IW0.1 |
%AI0001 |
%W1 |
%300001 |
%U3\G11 |
I:2000 |
1756_IF8:I.Ch0 Data |
Аналоговый выход |
%QW0.1 |
%AQ0001 |
%W2 |
%400001 |
%U4\G16 |
Q:2010 |
1756_IF8:O.Ch0 Data |
Память бит |
– |
%M00001 |
– |
– |
– |
– |
– |
Память слов |
– |
%R00001 |
– |
– |
– |
– |
– |
Как видно из таблицы, формат представления данных в различных средах разработки отличается весьма существенно [10–11].
Программа в ПЛК выполняется постоянно в цикле. Соответственно, действие не обязательно завершать в одном цикле программы – можно перенести его в следующий цикл, например, по флагу. Значение отображающихся переменных может меняться. Например, отображается 1, но раз в секунду на один такт ПЛК (несколько миллисекунд) этой переменной присваивается 0. И единственное, чем это изменение можно уловить, это использование какого-либо оператора, срабатывающего при условии переменная = 0.
Анализ применения ПЛК
Для наглядности произведем выбор программируемых логических контроллеров для комплексной автоматизации различных по количеству датчиков и исполнительных устройств объектов.
Для систем от 100 входов/выходов подойдет следующее оборудование:
1. Связка одноплатный компьютер со средой CoDeSys / ISaGRAF или иным аналогом [12].
2. ПЛК с параллельной шиной:
– GE Fanuc – VersaMax, VersaMax Micro.
– Siemens – S7-200
– Allen Bradley – MicroLogix
– Schneider Electric – Modicon M340
– Mitsubishi Electric – FX
– ABB – AC500, AC500 eCO
– Omron – CP1H Koyo
– DirectLogic – DL05, DL06
3. Для разнесенной системы (каждые 20 метров по десятку кнопок) ПЛК с последовательной шиной: можно взять ICP DAS 7000 + ISaGRAF, это позволит получить общую длину системы до 1200 метров.
Для систем от 500 до 2000 входов/выходов:
– GE Fanuc – RX3i
– Siemens – S7-300
– Allen Bradley – SLC 500, CompactLogix
– Schneider Electric – Modicon Premium
– Beckhoff – практически все
– Omron – CJ1M, CJ1G-P, CJ2M, CJ2H
– Koyo DirectLogic – DL205, DL405
Для систем от 2000 входов/выходов и выше [13–15]:
– GE Fanuc – RX7i
– Siemens – S7-400
– Allen Bradley – PLC 5, ControlLogix
– Schneider Electric – Modicon Quantum
– Mitsubishi Electric – System Q
– Omron – CS1G/H, CS1D.
Заключение
В некоторых случаях ставить несколько ПЛК вместо одного целесообразнее с точки зрения объемов логики. Если вся логика, к примеру, на ПИД-регуляторах – даже в случае небольшого количества входных и выходных сигналов имеет смысл либо брать следующую модель, либо подумать о нескольких ПЛК, если код бьется на законченные фрагменты, с минимумом обмена между ними. Градация по числу входов/выходов, разумеется, более плавная, что позволяет подобрать ПЛК максимально точно в соответствии с необходимостью. Таким образом, внедрение программируемых логических контроллеров в рамках комплексной автоматизации предприятий алмазодобывающей отрасли может обеспечить: энергосбережение и энергоэффективность; повышение производительности технологических линий; отслеживание в реальном времени и определение эффективности технологических процессов производства.