Построение модульной
архитектуры программно-реализованного контроллера электроавтоматики[1]
И.А.
Ковалёв,
аспир., ilkovalev@mail.ru,
С.В. Рыбников,
с.н.с., rybnikov@ncsystems.ru,
С.В. Соколов,
н.с., к.т.н., sokolov@ncsystems.ru,
МГТУ «СТАНКИН», г. Москва
В
статье рассматриваются варианты решения логической задачи систем ЧПУ. Показан
сравнительный анализ программно-реализованного контроллера (SoftPlc) и
программируемого логического контроллера электроавтоматики. Представлен способ
построения модулей программно-реализованного котроллера на базе открытой
системы ЧПУ с модульной архитектурой.
The paper examines the logical
solutions to the problem of CNC systems. It shows the comparative analysis of
software-based controller (SoftPlc) and PLC electrics. It presents a method for
constructing modules of a software-implemented controller based on an open CNC
system with a modular architecture.
Мощность
персональных компьютеров растет с каждым годом, что позволяет производить
систематизированный сбор сведений о подконтрольном объекте и объектов,
воздействующего на него, используя только программный подход, без использования
внешней аппаратной поддержки.
Это
в свою очередь предоставляет возможность создания на базе систем PCNC4
программно-реализованного контроллера электроавтоматики, перенося таким образом
реализацию логической задачи с ПЛК на систему ЧПУ [1].
При
использовании операционной системы реального времени можно добиться жестких тактов
исполнения управляющих сигналов, при этом используя для передачи один из
многочисленных промышленных протоколов [2]. Данный подход позволит использовать
программный подход реализации задачи электроавтоматики (SoftPlc), который имеет
как свои преимущества, так и недостатки в сравнении со стандартным
программируемым логическим контроллером (PLC).
Традиционно
используется второй способ, при котором применяется контроллер –
специализированный цифровой вычислительный аппарат, используемый для
автоматизации технологических процессов (подача СОЖ, смена инструмента,
вращение шпинделя и т.д.). Для программирования ПЛК используются текстовые (IL, ST) и
графические языки (LD, SFC, FBD).
Отсюда
вытекает зависимость от сред программирования контроллеров конкретных производителей
или сторонних разработчиков, что зачастую выливается в сложные задачи [3].
рис. 1 Обобщенная архитектура системы ЧПУ
и место задачи управления электроавтоматикой
Сегодня
появляется реальная возможность программной реализации управления
электроавтоматикой станков в рамках общего программного обеспечения систем ЧПУ
без привлечения дополнительной аппаратуры и системного ПО ПЛК, которые являются
неотъемлемой частью практический любой современной системы ЧПУ [1].
Указанный
подход снижает стоимость системы управления, упрощает общее ПО, уменьшает
количества ошибок системного программирования, позволяет отлаживать управляющие
программы электроавтоматики в рамках самой системы ЧПУ.
Место
же, занимаемое программно-реализованным контроллером электроавтоматики
находится непосредственно на уровне ядра системе числового программного
управления, что является на уровень выше, чем традиционный подход при
использовании PLC. Это достигается за счет того, что система ЧПУ является
открытой с модульной архитектурой и разработанный модуль SoftPlc таким образом
встраивается в систему.
Нахождение
его в ядре системы ЧПУ, позволяет производить контроль над электроавтоматикой
без использования стороннего оборудования - непосредственно из терминальной
части системы ЧПУ, что так же является существенным плюсом при разработке
управляющих программ, диагностики подсистемы электроавтоматики и её наладке.
При
таком подходе вся логика переносится на уровень ядра системы ЧПУ, в обход
использования различных ПЛК, а в качестве устройств исполнения используются
достаточно простые и дешевые модули удаленного ввода/вывода, работающие по
стандартным промышленным протоколам (Рис.1).
В
статье будет рассмотрено построение различных модулей программно-реализованного
контроллера электроавтоматики, их связь друг с другом и место в системе.
Для
интеграции разрабатываемого программного контроллера в систему ЧПУ с открытой
модульной архитектурой необходимо разработать соответствующий модуль,
включающий в себя различные подуровни, необходимые для работы как с самой
системой ЧПУ, так и с внешней аппаратной частью, а также создать связи между
всеми подуровнями для обеспечения целостности системы на уровне логической
задачи систем ЧПУ.
Базовыми
модулями являются: модуль конфигурации библиотеки логических элементов, модуль
конфигурации устройств, модуль связи с терминальной частью, модуль конфигурации
контроллера электроавтоматики, модуль работы с разделяемой памятью.
Для
реализации данного способа построения был создан абстрактный уровень,
содержащий основные методы и свойства, с помощью которых объединены все
описанные выше модули.
Модуль
конфигурации библиотеки логических элементов представляет собой базовый класс,
от которого наследуются сущности SoftPlcBlocks, SoftPlcConnect, SoftPlcIO.
SoftPlcBlocks в свою очередь является базовым классом для сущностей AndBlock, OrBlock, TimerBlock и других блоков, выполняющих логические,
математические или операции со временем. SoftPlcConnect представляет собой
сущность связи всех блоков между собой и является транспортным каналом значений
между блоками SoftPlcBlocks и SoftPlcIO.
SoftPlcIO в свою очередь представляет собой сущность работы с общей
разделяемой памятью (Рис.2).
рис. 2 Диаграмма классов модуля библиотеки логических элементов
Модуль
работы с разделяемой памятью необходим для заполнения ячеек памяти, которые
опрашиваются устройствами ввода/вывода. После проведенных логических и
математических операций блоки SoftPlcIO записывают в память значения, которые
подхватывают различные устройства. Таким образом, аппаратная часть
освобождается от вычислительной работы, следовательно можно использовать
простые удаленные входы/выходы, которые на порядок дешевле традиционных PLC.
Для
работы аппаратной части необходим модуль конфигурации устройств, который
представляет из себя различные методы для настройки адресов в разделяемой
памяти. Каждое устройство удаленных входов/выходов получает свою ячейку, с
которой работает на протяжении работы всей системы.
Для
визуального отображения и конфигурации программы в ядре системы ЧПУ, а также
настройки модуля конфигурации устройств используется модуль связи с
терминальной частью. С его помощью происходит разбор посылок из редактора управляющих
программ (терминальная задача) и конфигурации данных программ в
программно-реализованном контроллере.
Связь
всех уровней обеспечивает модуль конфигурации контроллера автоматизации,
который выставляет разрешение на работу SoftPlc.
Таким
образом, каждый модуль является в работе независимым от другого, что позволяет
оперативно обрабатывать ему свою информацию, но в тоже время благодаря
связующему уровню все данные являются актуальными в каждый момент времени.
Такой
подход позволяет создавать различные необходимые модули по мере их
необходимости. Отталкиваясь от абстрактного представления базовых уровней,
можно добавлять различный функционал для модулей без потери предыдущих методов
и свойств объектов.
1.
Сосонкин В.Л, Мартинов Г.М. Системы
числового программного управления: Учеб. Пособие. – М.: Логос, 2005.-296с.
2.
Григорьев
С.Н., Андреев А.Г., Мартинов Г.М. Перспективы развития кроссплатформенных
компьютерных систем числового программного управления высокотехнологичного
оборудования // Автоматизация в промышленности. 2011 №5 С.3-8.
3.
Ковалёв
И.А. Разработка библиотеки логических элементов для программно-реализованного
контроллера электроавтоматики. Материалы студенческой научно-практической
конференции "Автоматизация и информационные технологии (АИТ-2012)".
Первый тур. Сборник докладов. - М.: МГТУ "Станкин", 2012. - С.87-90
[1] Работа выполнена по договору № 2332 ГУ/2014об условиях использования гранта на выполнение научно-исследовательских работ