Введение
В современном микроэлектронном производстве ключевыми требованиями к роботизированным системам являются высокая точность позиционирования, повторяемость операций и надежность. Шарнирные роботы типа SCARA (Selective Compliance Articulated Robot Arm) находят широкое применение для транспортировки кремниевых пластин благодаря своей жесткой конструкции, высокой скорости и компактности [1]. Однако эффективное использование таких роботов невозможно без корректного алгоритма управления, который должен обеспечивать движение рабочего органа по заданной траектории с минимальными отклонениями.
- Математическая модель
Рассматривается SCARA-робот с двумя вращательными степенями свободы в горизонтальной плоскости. Длины звеньев L 1 и L 2 являются постоянными параметрами конструкции [2]. Задача управления формулируется следующим образом: необходимо обеспечить перемещение рабочего органа из начальной точки (x 0 ,y 0 ) в целевую точку X = (x,y) за заданное время t с постоянной линейной скоростью, при этом угловые скорости звеньев не должны превышать максимально допустимых значений.
Для решения этой задачи используются две базовые кинематические формулы:
- Прямая кинематика позволяет определить координаты рабочего органа по известным углам поворота звеньев θ 1 , θ 2 :
- Обратная кинематика решает обратную задачу: находит углы поворота по заданным координатам:
Критически важным этапом является проверка достижимости целевой точки, которая выполняется на основе условия:
Это условие гарантирует, что целевая точка находится в пределах рабочей зоны манипулятора, исключая тем самым риск столкновений или аварийных остановок.
- Алгоритм управления
На рисунке 1 представлена схема алгоритма управления SCARA-робота.
Рис. 1. Схема алгоритма управления SCARA-робота
Алгоритм начинается с чтения конфигурационного файла, содержащего параметры робота, включая длину звеньев, максимальная возможная скорость движения и дополнительные ограничения на рабочую область движения. После этого оператор может выполнить подключение к контроллеру, управляющему двигателями робота. В случае успешного подключения осуществляется установление связи и получение текущих углов поворота осей робота. Если подключение отсутствует, работа с реальным оборудованием становится невозможной.
Движение реализуется вдоль прямой линии до целевой точки X и выполняется итерационно с использованием шага по времени Δt. Линейная скорость разделяется на 2 составляющие по осям x и y:
На каждом шаге работы алгоритма выполняется следующий набор операций:
- По текущим углам поворота звеньев с использованием формул прямой кинематики определяется текущее положение робота в декартовой системе координат:
- Вычисляется следующее положение рабочего органа путём смещения текущих координат вдоль направления на целевую точку на величину, соответствующую заданной линейной скорости и шагу времени:
- По полученным координатам вычисляются новые углы поворота звеньев с использованием формул обратной кинематики:
- Вычисляются угловые скорости звеньев по формулам:
- Рассчитанные значения углов поворота и угловых скоростей передаются по протоколу EtherCAT на контроллер робота.
- После завершения движения от контроллера поступает запрос актуальных значений углов поворота осей. Полученные данные используются в следующих расчётах.
Описанный цикл продолжается до момента достижения целевой точки X или же завершается досрочно, в случае, если угловая скорость оказалась выше допустимой.
- Стек технологий
Программная реализация разработанного алгоритма выполнена на языке C# в среде Microsoft Visual Studio 2022. Выбор C# обусловлен поддержкой объектно-ориентированного программирования, статической типизацией, автоматическим управлением памятью и богатой экосистемой для разработки desktop-приложений [3]. Visual Studio 2022 предоставляет встроенные инструменты отладки, профилирования и интеграцию с Git, что ускоряет процесс разработки и повышает качество кода [4].
Пользовательский интерфейс реализован на базе Windows Presentation Foundation (WPF) [5] с применением архитектурного шаблона MVVM (Model-View-ViewModel). WPF обеспечивает гибкую привязку данных и масштабирование интерфейса, а MVVM позволяет разделить визуальную часть, логику и данные, что упрощает тестирование и сопровождение системы.
Для взаимодействия с сервоприводами применяется промышленный протокол EtherCAT, обеспечивающий высокоскоростной обмен данными и синхронизацию движения осей. Параметры робота хранятся в конфигурационном файле формата JSON, что упрощает их редактирование без перекомпиляции.
Заключение
В результате проведённой работы разработан алгоритм управления шарнирным роботом типа SCARA. Алгоритм базируется на математической модели, включающей прямую и обратную кинематику, и обеспечивает прямолинейное движение рабочего органа с равномерной скоростью.
Программная реализация алгоритма выполнена на языке C# с использованием платформы.NET и технологии WPF. Использование EtherCAT позволяет управлять реальным оборудованием в реальном времени.
Литература:
- Собашникова О. А., Васильчук Н. Ю. Исследование SCARA-роботов, истории их создания, применения, преимуществ и недостатков // Наукоёмкие технологии в приборо- и машиностроении. — 2024. — С. 190–195.
- Калушев К. А., Воронова Л. И. Разработка математической модели управления роботом SCARA на базе шаговых двигателей // Робототехника и техническая кибернетика. — 2024. — № 2. — С. 104–114.
- Learn microsoft [Электронный ресурс] Руководство по языку программирования С#: https://learn.microsoft.com/ru-ru/dotnet/csharp/
- Microsoft [Электронный ресурс] Visual Studio: https://visualstudio.microsoft.com
- Мак-Дональд М. WPF: Windows Presentation Foundation в.NET 3.0 для профессионалов / пер. с англ. М.: Издательство «Лори», 2007. 864 с

