$count_ban=1

Системы управления движением сложными технологическими объектами

$count_ban=3

Применение программируемых логических контроллеров (ПЛК), обеспечивает решение задач управления автоматизированными технологическими процессами (АСУТП). Однако для построения систем управления движением (СУД) указанных технологических объектов их ресурсов оказывается недостаточно. Это связано с тем, что ПЛК традиционно создавались для управления технологическими объектами и значение термина «реальное время» применительно к АСУТП определяется в основном быстродействием механических, гидравлических или пневматических элементов.

 

Для решения задач, требующих высокой точности, быстродействия, координирующего управления, применяются системы автоматического управления многодвигательным электроприводом, построенные на одном или нескольких вычислительных устройствах. В случае однопроцессорных вычислителей предельное быстродействие определяется числом одновременно обслуживаемых электродвигателей и скоростью нарастания тока в электрических цепях, обычно составляющей десятки микросекунд. Необходимая точность вычислений координат траекторий движения может быть достигнута при 32­64 битовой разрядной сетке.

Использование комплектных электроприводов с цифровым управлением совместно с ПЛК не позволяет достигнуть высоких результатов из­за отсутствия специализированных быстродействующих интерфейсов управления, сложности организации перекрестных связей между электроприводами и отсутствия развитых библиотек функций контроля движения.

 

Использование PC­совместимых компьютеров (PC­base) для управления многодвигательными электроприводами также не лишено недостатков. Несмотря на высокую вычислительную мощность процессоров, реализовать ее в полной степени для СУД не удается по следующим причинам:

1. Жесткие требования к стабильности времени квантования, высокоскоростному интерфейсу, быстрому отклику на прерывание, типичные для СУД, несущественны для PC­компьютеров. С другой стороны, для СУД отсутствует необходимость обеспечения совместной работы программ различных производителей, механизма трансляции логических адресов в физические, наличия большого объема памяти и т.п.

2. Частота системной шины существенно ниже тактовой частоты процессора, а кэширование приводит к непредсказуемому изменению времени обработки.

3. Программы логического и цифрового управления состоят из фрагментов, имеющих небольшой объем (от десятков до сотен машинных команд). Использование операционных систем (ОС) для управления подобными задачами приводит к значительному увеличению затрат времени на переключение контекста, а вывод таких задач за рамки операционных систем весьма существенно тормозит работу самой ОС. Особые требования предъявляются к анализу и обработке исключительных ситуаций в СУД, т.к. последние используются в ответственных и потенциально опасных машинах.

 

В этой связи, а также с увеличивающимися потребностями в системах управления движением (СУД) в различных отраслях промышленности рядом иностранных фирм предприняты попытки создания встраиваемых вычислительных устройств, предназначенных для решения широкого класса задач управления движением – контроллеров движения (КД).

 

Характерной особенностью КД можно считать то, что производитель предлагает целый комплекс изделий, включающий, кроме собственно вычислительного устройства, силовые модули для двигателей различного типа, развитый набор периферийных устройств, средства интерфейса с ведущим компьютером (хостом) и силовыми модулями, а также специализированное программное обеспечение для разработки СУД. Конкретная разработка СУД производится  системными интеграторами. К устройствам подобного рода можно отнести изделия фирм ACS Motion Control (SPiiPlus), Galil (Accelera DMC), Performance Motion (Navigator), Delta Tau (PMAC). КД может использоваться для создания СУД совместно с персональным компьютером или автономно.

 

Стандартный набор функций управления движением, поставляемый с КД, включает в себя: управление положением «точка­точка», толчковый режим «jog», режим «PVT» (положение­скорость­время), слежение за положением, позиционирование, линейную, круговую и сплайновую интерполяции. Некоторые производители включают в этот набор поддержку алгоритмов прямой и инверсной кинематики. Программное обеспечение позволяет задавать, помимо величин перемещения, профили скоростей и ускорений. Все КД обеспечивают как функции управления движением, так и функции логического управления, типичные для ПЛК.

 

В контроллерах предусматриваются возможности управления коллекторными и бесколлекторными двигателями постоянного и переменного тока, линейными и шаговыми двигателями. Для организации обратных связей по положению могут быть использованы квадратурные и синусоидальные энкодеры, резольверы и датчики Холла. В качестве регуляторов положения, как правило, применяются ПИД­регуляторы с упреждающими связями по скорости и положению, настраиваемые пользователем. Для сложных объектов управления имеется возможность использования регуляторов высокого порядка – например, полиномиальных. В ряде случаев возможно применение регуляторов, создаваемых пользователем контроллера, что, однако, требует их достаточно высокой  квалификации. Для управления электроавтоматикой СУД контроллеры имеют широкий набор дискретных входов и выходов.

Конструктивное исполнение КД возможно в виде платы расширения шины PCI, на которой установлен процессор с устройствами памяти и интерфейса или в виде отдельного блока, причем в последнем случае связь с ведущим компьютером производится по высокоскоростному каналу USB или Ethernet. 

 

Появление контроллеров движения было обусловлено, с одной стороны, возникновением  новых, более совершенных микропроцессоров, программируемых логических интегральных схем (ПЛИС), силовых модулей и, с другой – усложнением задач управления многодвигательными электроприводами, повышением требований к точности, быстродействию и надежности приводных устройств.

Важной особенностью КД является аппаратная реализация функций, требующих высокого быстродействия, таких как формирование широтно­модулированных импульсов управления силовыми ключами, интерполяция сигналов измерительных преобразователей положения, фиксация начала отсчета положения. С  этой целью используются ПЛИС. Как правило, на ПЛИС реализуется и многоканальная система ввода­вывода дискретных сигналов связи с многочисленными модулями расширения. Это позволяет значительно снизить вычислительную нагрузку процессора и освободить его от необходимости решения большого числа быстродействующих задач.

 Развитые КД управляют группой приводных устройств общей численностью до 256, обеспечивая при этом такт квантования в контуре положения или скорости в диапазоне 65­400 мкс. Количество управляемых электроприводов зависит от сложности решаемых задач и традиционно секционируется с кратностью равной 2 или 4.

Основная вычислительная мощность КД определяется используемым процессором. В КД применяются процессоры цифровой обработки сигналов (DSP) или RISC­процессоры с тактовой частотой 120­240 МГц. Типичным примером использования однопроцессорных КД является семейство PMAC фирмы Delta Tau, снабженное процессорами 563xx фирмы Motorola с тактовой частотой 80­240 МГц. Контроллеры могут иметь память команд и данных от 128Кх24 до 512Кх24­разрядных слов. Для постоянного хранения программ и данных используется внешняя энергонезависимая Flash­память объемом от 1МБ.

 

Примером использования распределенной микропроцессорной архитектуры является устройство  SPiiPlus, в котором один процессор движения управляет группой RISC­сервопроцессоров с тактовой частотой 120МГц, каждый из которых контролирует два электропривода. Каждый сопроцессор имеет доступ к 2Кб памяти программ, 352х24­разрядным словам оперативной и 96х24 двухпортовой памяти.

Программные модули в КД могут быть разделены на три основных типа – программы логического управления (PLC), управления движением (PMC) и очереди, включающие кольцевые буферы данных. Наиболее высоким приоритетом обладают PMC, запускаемые через равные промежутки времени по прерыванию таймера, а также некоторые из PLC программ, требующие фиксированного временного масштаба, и программы прямого цифрового управления. Свободную часть временного интервала занимают остальные PLC программы, очереди и ряд сервисных функций.  Результаты вычисления значений регуляторов и широтно­импульсных сигналов объединяются в единый «сервоцикл», наличие которого в системе может быть необязательным в случае, если КД используется без силовых модулей или с отдельными силовыми преобразователями. Период расчета «сервоцикла» в большинстве случаев находится в пределах 50­120 мкс, что позволяет обеспечить высокое качество управления движением.

Каждому двигателю в СУД назначается ось, характеризующая геометрические параметры механизма. Возможно использование линейных и круговых осей, имеющих масштабные коэффициенты и начало отсчета. PMC и PLC программы могут формировать значения логических переменных – события.  События означают достижение заданных значений внешними или внутренними переменными. События используются для управления работой системы и синхронизации различных КС.

 

КД могут поставляться с обычными средствами разработки типа VB, C/C++, JAVA и с проблемно­ориентированными языками программирования собственной разработки фирм­производителей. Компиляция управляющих программ может происходить либо на хост­компьютере с последующей загрузкой во Flash­память, либо на самом КД. Кроме того, для отладки СУД предлагаются программные средства, позволяющие вести диалоговый обмен, сбор данных и их визуализацию, мониторинг текущих процессов, автоматизировать процесс настройки приводов.

Недостатком использования КД для построения СУД можно считать необходимость применения нестандартизированных программных средств, а также различие аппаратных платформ и высокую стоимость средств разработки, препятствующих их широкому распространению.  Однако появление новых систем на кристалле (SoC) на основе платформы ARM позволяет рассчитывать на преодоление этих недостатков. Наличие большого числа независимых производителей (до нескольких десятков), бесплатного программного обеспечения, широкий ценовой и функциональный диапазоны, совместимость программного обеспечения снизу­вверх  позволяет надеяться на то, что платформа ARM станет стандартом  для встраиваемых систем.

В качестве примера использования предложенного подхода можно привести создание цифровой СУД стеклоформующего агрегата  (рис. 1). Основным требованием при ее разработке являлось обеспечение синхронно­синфазного движения 4­х рабочих органов с возможностью регулирования взаимного фазового положения. Учитывая трехсменный режим работы агрегата, сложные условия эксплуатации, а соответственно, и высокие требования к надежности, был разработан вариант системы управления на базе автономного контроллера движения (рис. 2). Причем по  мере ее эксплуатации требования к набору функциональных возможностей возрастали. К новым опциям можно отнести возможность работы СУД с механизмами, имеющими различные, в том числе и дробные коэффициенты редукции, фазирование механизмов в процессе разгона агрегата, вариативность типов датчиков положения, управление сложным, изменяющимся в зависимости от производимого изделия циклом работы комплекта пневмомеханизмов, динамический контроль   аварийных режимов и т.п. Важным результатом явилось то, что благодаря заложенным принципам удалось относительно быстро и легко удовлетворить возрастающие требования заказчика, а конкурентные разработки, реализованные на ПЛК­контроллерах,  не выполнив весь комплекс требований, уступили этот сектор рынка.

 

Рис.1 Стеклоформующая машина

 

Рис. 2 Контроллер движения

 

Следующим применением предложенной концепции явилось создание системы управления электрооборудованием IntNC для металлорежущих станков с ЧПУ. Основной принцип построения ЧПУ IntNC заключается в том, что задачи расчета траектории движения, контроллера управления электроприводами и контроллера электроавтоматики интегрированы на единой платформе, основу которой составляет специализированный КД. Система управления в этом случае становится более компактной и надежной вследствие уменьшения аппаратной части и сокращения числа реальных связей между устройствами, которые теперь реализуются на программном уровне. Кроме того, объединение этих устройств на одной базе создает условия для разработки новых алгоритмов как управления оборудованием станка, так и технологических процессов обработки.

СЧПУ IntNC относится к классу двухпроцессорных с открытой архитектурой. На компьютере реализованы терминальные задачи и функции интерпретатора управляющих программ. Для организации интерфейса между системой ЧПУ и оператором на компьютере устанавливается специальная програм­мная среда IntNC (рис. 3).

 

Рис. 3 Терминальное окно управления IntNC

 

На основании изложенных подходов была также разработана система управления манипуляционным роботом IntNCR (рис. 4).

Аппаратно­программные средства блока управления реализуют возможность одновременного управления 16­ю осями с организацией их работы в 6 координатных системах. Это позволяет строить единую систему управления для производственных модулей типа «станок + манипулятор».

 

Рис. 4. Система управления IntNCR манипуляционным роботом PUMA-560

 

В IntNCR реализованы основные виды интерполяции, используемые при формировании сложных траекторий, а также равномерный и неравномерный кубические сплайны. Предоставляются возможности смещения и поворота координатных систем, написания управляющих программ в декартовых и полярных координатах. Динамические характеристики разгона/торможения осей могут быть заданы по линейному, трапецеидальному или S­образному законам. Для оптимизации сложных движений используется режим Lookahead, позволяющий корректировать задающее воздействие со скоростью выполнения до 2 тыс. кадров/с.  Разработанный язык программирования IntLANG для создания УП  позволяет реализовывать технологические задачи любого уровня сложности.

Таким образом, системы управления движением сложными технологическими объектами обеспечивают необходимые показатели качества и позволяют применять их для решения широкого круга технологических задач.

 

Е.В. Красильникъянц

А.П. Бурков

В.В. Ельниковский

НТЦ «ИНЭЛСИ»

т.  8 4932 269703, 269752

krev@dsn.ru, www.inelsy.com

$count_ban=1