Источник лазерного излучения и система позиционирования луча – гальванометрические дефлекторы или сканаторы – основные узлы любого комплекса лазерной гравировки. Появление мощных волоконных лазерных излучателей, доступных по цене, обладающих высоким КПД и ресурсом работы, и возросшее быстродействие сканаторов позволяют повысить скорости лазерной гравировки. Это также повышает требования к быстродействию устройств управления. В статье проведен краткий сравнительный анализ двух вариантов управления лазерным комплексом: непосредственный и с использованием специализированного контроллера.
Теги: laser beam positioning systems laser engraving лазерная гравировка системы позиционирования лазерного луча
Для управления комплексами лазерной гравировки как правило используются обычные офисные персональные компьютеры (ПК) под управлением операционной системы (ОС) семейства Windows. Это удобно тем, что оператору не нужно обучаться работе в новой среде. При работе на станке он оказывается в знакомой и привычной ему среде Windows. Но при построении систем ЧПУ на базе ПК под управлением ОС Windows возникает вопрос выбора метода управления. Особенно он важен при нанесении изображения на детали вращения (рис.1). Можно выделить два основных подхода: непосредственное управление и командное управление посредством специализированного контроллера.
Непосредственное управление лазерным комплексом предполагает, что все сигналы управления формирует программа, выполняющаяся на ПК. Структурная схема такого варианта изображена на рис.2. В данном варианте управляющая программа, запущенная на ПК, полностью контролирует весь процесс обработки, формируя: траекторию движения луча, посредством записи последовательности координат точек; траектории в ЦАП блока управления сканаторами; скорость движения луча; сигналы включения/выключения излучения и задержки; сигналы управления дополнительными устройствами.
Для формирования всех этих сигналов программа управления использует ресурсы центрального процессора (ЦП). Управляющая программа может использовать до 50–70% процессорного времени. Это негативно сказывается на производительности системы и снижает эффективность труда. Кроме того, необходимо иметь интерфейс ввода-вывода с высокой пропускной способностью.
Предположим, что нужно управлять сканаторами со следующими параметрами: максимальная линейная скорость V= 10 м/с; разрядность – 16 бит (16-ти битам соответствует перемещение луча на 100 мм). Несложными вычислениями получаем: количество полных проходов поля в секунду – это V/102 мм = 100 с-1. Требуемая пропускная способность интерфейса: 100 . 216 2 . 2 = 26214400 байт/с, т.е. больше, чем 26 Мбайт/с. Используя в качестве интерфейса плату параллельного цифрового ввода-вывода Advantech PCI-1751, имеющую разрядность выходного порта 48 бит и частоту обновления около 150 кГц, мы имеем возможность управлять сканаторами с шагом, равным одному разряду ЦАП, со скоростью не более 250 мм/с.
Чтобы получить скорости большего значения, нужно пропорционально увеличивать дискретность. Чтобы получить скорость 2500 мм/с, нужно увеличить шаг до 10 разрядов. Увеличение дискретности отрицательно сказывается на качестве переходных процессов при движении луча, а, соответственно, и на качестве обработки.
При использовании непосредственного управления мы также сталкиваемся с проблемой, связанной с прерываниями в работе ОС. Дело в том, что ОС семейства Windows не являются операционными системами реального времени (ОСР). В системах, не являющихся ОСР, задержка между посылкой команды и ее выполнением не является нормированной. Например, при записи очередного отсчета в ЦАП может произойти задержка, которая может достигать 1 с и даже больше. Лазерный луч на это время прекращает движение, но излучение не выключается. Это приводит к тому, что в точке, на которой остановился луч, происходит прожиг материала в результате чрезмерно долгого воздействия излучения. Возникновение таких задержек снижает качество обработки. Несколько улучшить ситуацию позволяет увеличение приоритета программы средствами OC Windows. Но это лишь незначительно повышает качество маркировки.
Еще сложнее обстоит дело с маркировкой с использованием одновременно нескольких устройств позиционирования, например, при одновременном перемещении луча с помощью сканаторов и материала с помощью стола. Добиться синхронного перемещения при использовании непосредственного управления невозможно. Несинхронность снижает качество маркировки. Известны основные проблемы непосредственного управления: перегрузка центрального процессора; повышенные требования к производительности ПК; невысокая эффективность работы на ПК; снижение производительности и качества обработки.
Однако стоит отметить, что данный вариант широко используется ввиду простоты реализации и применяется для решения задач, не имеющих повышенных требований к качеству и скорости обработки. Одним из вариантов решения проблем, возникающих при непосредственном управлении, является разработка специализированного контроллера, который автономно, без участия центрального процессора ПК, может выполнять рутинные операции процесса управления. В качестве платформы для построения контроллера можно использовать программируемую логическую интегральную схему (ПЛИС) или микроконтроллер (МК).
Задачу управления комплексом лазерной маркировки можно разбить на две основные подзадачи: формирование траектории движения луча и формирование управляющих сигналов. Траектория движения луча представляет собой последовательность точек, между которыми луч перемещается линейно посредством координатного стола или сканаторов. Криволинейные траектории формируются методом кусочно-линейной аппроксимации. Задача линейной интерполяции точек решается использованием алгоритма Брезенхэма [Роджерс Д. Алгоритмические основы машинной графики. – М.: Мир, 1989]. Особенность этого алгоритма заключается в том, что он является целочисленным, а значит, его без труда можно реализовать аппаратно в ПЛИС. Целочисленность данного алгоритма снижает требования к производительности МК, на котором реализуется контроллер лазерного комплекса.
Используя специализированный контроллер, мы сразу решаем первые три проблемы непосредственного управления. Контроллер позволяет пользовательской программе не обсчитывать каждую точку траектории движения луча. Достаточно записать только координаты следующей точки, а контроллер сам переведет луч в указанную точку, проведя линейную интерполяцию. Таким образом, мы переходим от системы управления на уровне сигналов, которой является система непосредственного управления, к системе управления на уровне команд. Использование такой, командной, системы управления позволяет разгрузить ЦП управляющего ПК и интерфейс связи, однако остается проблема системных прерываний и связанных с ними задержек в отправке команд. Решить эту проблему можно, используя буферизацию команд в контроллере. При использовании буферизации команд процесс гравировки не прекращается на время прерывания – обработка идет по командам, накопленным в буфере. Продолжая работать после прерывания, управляющая программа заполняет частично опустошенный буфер. В случае реализации контроллера в ПЛИС в качестве буфера можно использовать ячейки блоков памяти микросхемы. В микроконтроллере можно выделить область памяти данных и реализовать кольцевой буфер. Упрощенная структурная схема системы управления с контроллером приведена на рис.3.
Элементной базой для реализации данного контроллера может быть, как указано выше, ПЛИС или микроконтроллер. Использовать ПЛИС предпочтительнее, так как контроллер на ее базе будет иметь более высокое быстродействие. Однако реализация на ПЛИС является более трудоемкой по причине того, что все алгоритмы необходимо реализовывать аппаратно, путем построения схем из логических вентилей. Использовать микроконтроллер проще. Все алгоритмы реализуются на языке программирования высокого уровня, но в итоге мы получаем систему с меньшим быстродействием. Кроме того, программа микроконтроллера, как и любой программный продукт, подвержена зависаниям. Зависания же в жесткой аппаратной системе на ПЛИС практически исключены.
Примером контроллера может служить блок управления комплексом лазерной обработки (рис.4) LManager, разработанный ООО «Атеко Техноцентр». Он построен на базе ПЛИС Altera Cyclone III. Подключается к ПК по интерфейсу USB 2.0. Этот контроллер позволяет управлять сканаторами со скоростью до 10 м/с, трехкоординатным столом с шаговыми приводами, лазерными излучателями разных типов, имеет набор служебных сигналов. Объем буфера команд у данного контроллера – 70 кб.
В следующей статье мы более подробно рассмотрим структурную схему этого контроллера и его интерфейсы. ❍
Непосредственное управление лазерным комплексом предполагает, что все сигналы управления формирует программа, выполняющаяся на ПК. Структурная схема такого варианта изображена на рис.2. В данном варианте управляющая программа, запущенная на ПК, полностью контролирует весь процесс обработки, формируя: траекторию движения луча, посредством записи последовательности координат точек; траектории в ЦАП блока управления сканаторами; скорость движения луча; сигналы включения/выключения излучения и задержки; сигналы управления дополнительными устройствами.
Для формирования всех этих сигналов программа управления использует ресурсы центрального процессора (ЦП). Управляющая программа может использовать до 50–70% процессорного времени. Это негативно сказывается на производительности системы и снижает эффективность труда. Кроме того, необходимо иметь интерфейс ввода-вывода с высокой пропускной способностью.
Предположим, что нужно управлять сканаторами со следующими параметрами: максимальная линейная скорость V= 10 м/с; разрядность – 16 бит (16-ти битам соответствует перемещение луча на 100 мм). Несложными вычислениями получаем: количество полных проходов поля в секунду – это V/102 мм = 100 с-1. Требуемая пропускная способность интерфейса: 100 . 216 2 . 2 = 26214400 байт/с, т.е. больше, чем 26 Мбайт/с. Используя в качестве интерфейса плату параллельного цифрового ввода-вывода Advantech PCI-1751, имеющую разрядность выходного порта 48 бит и частоту обновления около 150 кГц, мы имеем возможность управлять сканаторами с шагом, равным одному разряду ЦАП, со скоростью не более 250 мм/с.
Чтобы получить скорости большего значения, нужно пропорционально увеличивать дискретность. Чтобы получить скорость 2500 мм/с, нужно увеличить шаг до 10 разрядов. Увеличение дискретности отрицательно сказывается на качестве переходных процессов при движении луча, а, соответственно, и на качестве обработки.
При использовании непосредственного управления мы также сталкиваемся с проблемой, связанной с прерываниями в работе ОС. Дело в том, что ОС семейства Windows не являются операционными системами реального времени (ОСР). В системах, не являющихся ОСР, задержка между посылкой команды и ее выполнением не является нормированной. Например, при записи очередного отсчета в ЦАП может произойти задержка, которая может достигать 1 с и даже больше. Лазерный луч на это время прекращает движение, но излучение не выключается. Это приводит к тому, что в точке, на которой остановился луч, происходит прожиг материала в результате чрезмерно долгого воздействия излучения. Возникновение таких задержек снижает качество обработки. Несколько улучшить ситуацию позволяет увеличение приоритета программы средствами OC Windows. Но это лишь незначительно повышает качество маркировки.
Еще сложнее обстоит дело с маркировкой с использованием одновременно нескольких устройств позиционирования, например, при одновременном перемещении луча с помощью сканаторов и материала с помощью стола. Добиться синхронного перемещения при использовании непосредственного управления невозможно. Несинхронность снижает качество маркировки. Известны основные проблемы непосредственного управления: перегрузка центрального процессора; повышенные требования к производительности ПК; невысокая эффективность работы на ПК; снижение производительности и качества обработки.
Однако стоит отметить, что данный вариант широко используется ввиду простоты реализации и применяется для решения задач, не имеющих повышенных требований к качеству и скорости обработки. Одним из вариантов решения проблем, возникающих при непосредственном управлении, является разработка специализированного контроллера, который автономно, без участия центрального процессора ПК, может выполнять рутинные операции процесса управления. В качестве платформы для построения контроллера можно использовать программируемую логическую интегральную схему (ПЛИС) или микроконтроллер (МК).
Задачу управления комплексом лазерной маркировки можно разбить на две основные подзадачи: формирование траектории движения луча и формирование управляющих сигналов. Траектория движения луча представляет собой последовательность точек, между которыми луч перемещается линейно посредством координатного стола или сканаторов. Криволинейные траектории формируются методом кусочно-линейной аппроксимации. Задача линейной интерполяции точек решается использованием алгоритма Брезенхэма [Роджерс Д. Алгоритмические основы машинной графики. – М.: Мир, 1989]. Особенность этого алгоритма заключается в том, что он является целочисленным, а значит, его без труда можно реализовать аппаратно в ПЛИС. Целочисленность данного алгоритма снижает требования к производительности МК, на котором реализуется контроллер лазерного комплекса.
Используя специализированный контроллер, мы сразу решаем первые три проблемы непосредственного управления. Контроллер позволяет пользовательской программе не обсчитывать каждую точку траектории движения луча. Достаточно записать только координаты следующей точки, а контроллер сам переведет луч в указанную точку, проведя линейную интерполяцию. Таким образом, мы переходим от системы управления на уровне сигналов, которой является система непосредственного управления, к системе управления на уровне команд. Использование такой, командной, системы управления позволяет разгрузить ЦП управляющего ПК и интерфейс связи, однако остается проблема системных прерываний и связанных с ними задержек в отправке команд. Решить эту проблему можно, используя буферизацию команд в контроллере. При использовании буферизации команд процесс гравировки не прекращается на время прерывания – обработка идет по командам, накопленным в буфере. Продолжая работать после прерывания, управляющая программа заполняет частично опустошенный буфер. В случае реализации контроллера в ПЛИС в качестве буфера можно использовать ячейки блоков памяти микросхемы. В микроконтроллере можно выделить область памяти данных и реализовать кольцевой буфер. Упрощенная структурная схема системы управления с контроллером приведена на рис.3.
Элементной базой для реализации данного контроллера может быть, как указано выше, ПЛИС или микроконтроллер. Использовать ПЛИС предпочтительнее, так как контроллер на ее базе будет иметь более высокое быстродействие. Однако реализация на ПЛИС является более трудоемкой по причине того, что все алгоритмы необходимо реализовывать аппаратно, путем построения схем из логических вентилей. Использовать микроконтроллер проще. Все алгоритмы реализуются на языке программирования высокого уровня, но в итоге мы получаем систему с меньшим быстродействием. Кроме того, программа микроконтроллера, как и любой программный продукт, подвержена зависаниям. Зависания же в жесткой аппаратной системе на ПЛИС практически исключены.
Примером контроллера может служить блок управления комплексом лазерной обработки (рис.4) LManager, разработанный ООО «Атеко Техноцентр». Он построен на базе ПЛИС Altera Cyclone III. Подключается к ПК по интерфейсу USB 2.0. Этот контроллер позволяет управлять сканаторами со скоростью до 10 м/с, трехкоординатным столом с шаговыми приводами, лазерными излучателями разных типов, имеет набор служебных сигналов. Объем буфера команд у данного контроллера – 70 кб.
В следующей статье мы более подробно рассмотрим структурную схему этого контроллера и его интерфейсы. ❍
Отзывы читателей