Отладка функций коммуникации ЧПУ с использованием средств визуализации
управляющих программ ПЛК
Г.М. Мартинов,
д.т.н. проф.,
Н.В. Козак,
к.т.н., доц., kozak@ncsystems.ru,
С.В. Богданов,
магистр.,
МГТУ «СТАНКИН», г. Москва
В статье представлены результаты разработки
управляющей программы программируемого логического контроллера.
Продемонстрирована общая структура POU модулей и их внутренняя
взаимосвязь. Представлено описание решение задачи коммуникации интерфейса
ЧПУ-ПЛК и возможность отладки коммуникационной составляющей систем числового
программного управления средствами визуализации управляющих программ ПЛК.
In
this article there are results of development control program for the PLC. The
general structure of POU modules and their internal correlation is shown. The
description of the solution for the task
of communication of the NC-PLC interface and possibility of debugging of a
communication components of systems of numerical control is provided by
visualization tools of the PLC control program.
Практически каждое современное промышленное
предприятие оснащено разнообразным автоматизированным оборудованием, которое
используется на всех участках жизненного цикла продукции. Для решения задачи
взаимодействия оборудования с другими устройствами или человеком на
предприятиях в качестве управляющей платформы используют средства
электроавтоматики. В зависимости от назначения, устройства электроавтоматики
подразделяются на: командные (кнопки, путевые выключатели, датчики и др.);
логические (реле, программируемые логические контроллеры и др.); исполнительные
(контакторы, электрические магниты и муфты, исполнительные двигатели);
источники питания и преобразователи напряжений; защитные (предохранители,
автоматические выключатели, тепловые реле). С точки зрения систем управления
интерес представляют именно логические элементы электроавтоматики.
Программируемые логические контролеры (ПЛК) имеют возможность выполнять
обширный и постоянно пополняющийся список задач. Одной из важных задач ПЛК
заключается в передаче собранных сведений в систему управления вышестоящего
уровня [1, 2].
Целью работы является создание решения, для отладки
функций коммуникации систем числового программного управления с ПЛК[1]. Решение основано на
использовании средств визуализации управляющих программ ПЛК.
Взаимодействие между устройствами, входящими в состав
автоматизированной системы (компьютерами, контроллерами, датчиками,
исполнительными устройствами), происходит в общем случае через локальную сеть.
К протоколам передачи данных по этой сети предъявляются жесткие требования:
· обеспечение надежности доставки сообщений;
· широкая поддержка разнообразных программных и
аппаратных составляющих;
· передача данных объемом около 1Мб-та в одном
сообщении;
· возможность циклической
передачи данных;
· универсальность адресации устройств. [3, 4].
Наиболее полно
перечисленные требования удовлетворяет стек протоколов TCP/IP.
Данный стек имеет открытую архитектуру, стандартизированные высокоуровневые
протоколы и получил широкое применение в области сетевых технологий.
В процессе разработке управляющей программы ПЛК для
взаимодействия с ядром системы числового программного управления (ЧПУ)
вышестоящего уровня по протоколу TCP/IP была построена общая
структурная схема модулей POU (Program Organization Unit), используемых на стороне ПЛК (рис.1).
Модули POU уровня коммуникации
отвечают за установку соединения и обмен данных для интерфейса взаимодействия
ПЛК – ЧПУ. Такое взаимодействие организовывается по принципу мастер-слейв
(клиент - сервер), где в качестве мастера выступает компьютер верхнего уровня.
ПЛК в свою очередь постоянно находится в
режиме ожидания запроса от систем ЧПУ. Только при получении адресованного
непосредственно контроллеру запроса, осуществляется однократная пересылка
ответа.
Пошаговый алгоритм установки соединения и обмена данными отражен на рис.2.
Объекты PlcInMemory и PlcOutMemory
представляют собой массив данных и обеспечивают связь с классами уровня
коммуникации. Эти объекты используются для хранения информации из
последнего входного/выходного пакета
данных от ядра ЧПУ. Эта информация содержит в себе данные об общем количестве и
состоянии подключенных устройств и оборудовании с которым работает система
управления.
Модули POU PLC_InOutTableAxis, PLC_InOutTableChannel, PLC_InOutTableMessages, PLC_InOutTableSpindel и PLC_InOutTableMCommands
можно отнести к вышестоящему уровню работы с данными.
рис. 1 Структура модулей POU управляющей программы ПЛК
рис. 2 Последовательнось взаимодействия интерфейса ПЛК и ЧПУ
В процессе работы создается различное количество
объектов таблиц классов в зависимости от количества подключенного оборудования,
которое является входной информацией для управляющей программы ПЛК. В описанных
модулях POU происходит составление актуальной информации о
текущем состоянии всего оборудования, подключенного к ПЛК. Детализация
взаимосвязей модулей POU, представлена на рис.3.
рис.3 Структура модулей POU для обработки входного
пакета данных от системы ЧПУ
Объекты класса InternalServerAxiOMA с использование
подклассов обеспечивают расчёт и предоставление информации о первом байте, хранящем информацию о соответствующем
устройстве, в ответном пакете.
В управляющей программе ПЛК осуществляется
периодический вызов классов PLCAxeHandler,
PLCChannelHandler,
PLCMCommandHandler, PLCMessageHandler,
PLCSpindleHandler для обновления
информации о текущем состоянии соответствующих устройств. Это информация
может поступать как от разнообразных датчиков, установленных непосредственно на
производстве и связанных с ПЛК, так и от
пользователя во время режима отладки
вышестоящих устройств ЧПУ.
При проведении отладки функций коммуникации систем ЧПУ возникает необходимость гибкого
изменения различных параметров оборудования подключенного к ПЛК. В разработанной управляющей программе существует возможность моделировать сигналы
от оборудования без прямого подключения. В этом случае сам
пользователь-тестировщик, используя встроенную систему визуализации
входных/выходных сигналов (рис.4), может задать любую комбинацию сигналов для
проверки ответной реакции ЧПУ.
рис.4 Визуализация
входных/выходных сигналов
Такой способ представления сочетает в себе
интуитивную простоту пользовательского интерфейса и наглядность, путем
одновременного мониторинга входных и выходных сигналов. Все введенные таким
образом сигналы проходят проверку корректности полученных значении и поступают в модули POU, занимающиеся обработкой
сигналов. На рис.5 схематично представлена последовательность в циклическом
обмене данными между ЧПУ к ПЛК.
рис. 5 Задачи (потоки управления)
в управляющей программе ПЛК
Получение запроса от ЧПУ и формирование ответа на
него в логике управляющей программы ПЛК происходит асинхронно. Это
обеспечивается двумя независимыми задачами (потоками) выполняемыми в
управляющей программе ПЛК. На стороне задачи логики ПЛК, программа с заданной
цикличностью читает данные из буфера входных данных (PlcInMemory) и обновляет состояние
выходов функциональных блоков (например, PlcSpindleHandler). В обратном направлении,
данные входов функциональных блоков обрабатываются (запаковываются) и кладутся
в буфер выходных данных ПЛК (PlcInMemory). Задача коммуникации ЧПУ-ПЛК
обеспечивает обновление данных во входном буфере, в соответствии с данными
полученными от ЧПУ, и отправляет данные выходного буфера в ЧПУ.
Практическими результатом
проделанной работы являются:
· Решение коммуникационной
задачи взаимодействия ЧПУ с ПЛК, основанное на построении специализированной
управляющей программы для ПЛК, обеспечивающей циклический прием и передачу
данных в ЧПУ.
· Специализированный протокол
взаимодействия управляющей программы коммуникации для реализации взаимодействия
с системами управления вышестоящего уровня.
· Визуализированный интерфейс
оператора, отображающий текущее состояние входных/выходных сигналов.
Научными результатами работы являются:
· Предложенная структура РОU модулей
для создания управляющей программы ПЛК, обеспечивающей циклический обмен
данными о технологическом процессе.
· Созданные алгоритмы
взаимодействия, обеспечивающие отладку функций коммуникации систем ЧПУ.
Литература
1.
Мартинов Г.М., Нежметдинов Р.А. «Кроссплатформенный
программно-реализованный логический контроллер управления электроавтоматикой
станков с ЧПУ» // Автоматизация и современные технологии. 2013. № 1. С. 15-23.
2.
Григорьев С.Н. Научно-технические проблемы построения современных
технологических систем с числовым программным управлением // Мехатроника,
автоматизация, управление. 2011. № 4. c. 19-26.
3.
Козак Н.В., Абдуллаев Р.А. Концепция построения средств диагностики и
управления устройствами электроавтоматики на базе OPC технологии // Системы
управления и информационные технологии. 2010. №3. С. 28-32.
4.
Мартинова Л.И., Козак Н.В., Нежметдинов Р.А., Пушков Р.Л. Реализация
открытости управления электроавтоматикой станков в системе ЧПУ класса PCNC //
Приборы и системы. Управление, контроль, диагностика.2011. №02. С. 11-16
5.
Козак Н.В., Нежметдинов Р.А. Графические системы и интерфейс оператора:
учебное пособие. – М.: МГТУ "Станкин", 2010. – 81с.
[1]
Работа выполнена по договору № 14.124.13.6495-МК об условиях использования
гранта Президента РФ, для государственной поддержки молодых российских ученых,
МК-6495.2013.9.