Метод автоматизации перемещения плазмотрона шестиосным роботом-манипулятором
Автор: Калашников А. С., Руденко М. С., Кучеренко А. Д., Гирн А. В., Михеев А. Е.
Журнал: Сибирский аэрокосмический журнал @vestnik-sibsau
Рубрика: Технологические процессы и материалы
Статья в выпуске: 4 т.22, 2021 года.
Бесплатный доступ
В статье приставлен метод автоматизации создания траекторий движения плазмотрона шестиостным роботом-манипулятором. Система автоматизации создавалась на базе промышленного робота компании KUKA. Автоматизация создания траекторий движения плазмотрона над поверхностью детали реализована следующим образом: создается траектория движения плазматрона в графическом редакторе в формате .dwg. Созданный файл загружается в CAM-программу для станков с ЧПУ. CAM-программа преобразует вектор или область, заданную векторами, в управляющую команду в g-code формате, которая затем преобразуется в KRL программой, написанной на языке программирования Python. Разработка программы состояла из двух этапов: создание прямолинейных движений и создание криволинейных движений. Представлен результат работы метода.
Плазменное напыление, промышленный робот, python, автоматизация
Короткий адрес: https://sciup.org/148323933
IDR: 148323933 | DOI: 10.31772/2712-8970-2021-22-4-700-707
Текст научной статьи Метод автоматизации перемещения плазмотрона шестиосным роботом-манипулятором
В аэрокосмической, металлургической, нефтедобывающей промышленности с каждым годом повышаются требования по безопасности, надёжности и долговечности изделий при эксплуатации в экстремальных условиях (воздействие высоких температур, динамических нагрузок, коррозионных сред и т. д.). Для обеспечения этих требований возникает необходимость наносить на изделия защитные покрытия. Одним из способов нанесения защитных покрытий является плазменное напыление, которое широко используют в аэрокосмической технике [1–4].
С каждым годом количество изделий, используемых в ракетно-космической технике, растет, усложняются их форма и размеры [5–8]. В связи с этим способы нанесения плазменных покрытий становятся практически невыполнимыми. Рабочим органом для нанесения покрытий является плазмотрон [9–10]. В плазмотроне создается струя низкотемпературной плазмы, в которую подается порошок материала покрытия, порошок расплавляется под воздействием температуры плазмы и наносится на подложку-изделие. Однако для получения покрытия плазмотрон необходимо перемещать над поверхностью подложки по определённой траектории и с определенной скоростью. Для этого плазмотрон размещают на роботе-манипуляторе, который обеспечивает его движение.
На рынке представлено большое количество промышленных роботов-манипуляторов, которые могут передвигать плазматрон в процессе напыления, например роботы компаний KUKA, Doosan ROBOTICS, АВВ и др. [11–13]. Робот-манипулятор представляет собой шестиосевой промышленный механизм с приводами и редукторами. На установочном фланце оси А6 устанавливается плазмотрон (рис. 1).

Рис. 1. Оси шестиосного промышленного робота-манипулятора и возможность их передвижения
Fig. 1. Axes of a six-axis industrial robotic arm and the possibility of their movement
Существуют плазматроны, которые способны наносить покрытие в сложно достижимые места [14], но без программы автоматизации движения плазматрона их эффективность падает. Компании-производители промышленных роботов предоставляют платные программные обеспечения для создания управляющих программ, возможности функционала которых чрезмерны для передвижения плазмотрона во время нанесения покрытия. Приобретение таких программ- ных обеспечений не целесообразно, однако программирование траекторий в ручном режиме является трудоемким. Поэтому задача разработки метода автоматического управления пере- движения плазматрона промышленным роботом является актуальной.
Система автоматизации процесса управления передвижения разрабатывалась для промышленного робота серии KUKA KR16-2, стоит отметить, что метод может работать и с другими версиями промышленных роботов. В случае перемещения плазмотрона 6-осным роботом KUKA, управление им обеспечивается с переносного программирующего устройства – пульта управления KUKA smartPAD. Роботы-манипуляторы компании KUKA программируется на языке KRL. Траектории движения плазматрона можно задавать следующими видами команд:
-
– движение Point-to-Point (PTP) – перемещение происходит вдоль быстрейшей траектории, которая, как правило, не является прямой линией. Из-за того, что оси робота совершают вращательные движение, нелинейные траектории выполняются быстрее линейных;
-
– линейное движение (LIN) – движение выполняется по прямой линии;
-
– круговое движение (CIRC) – движение по круговой траектории. Задаются вспомогательная (лежащая на траектории) и целевая точки;
-
– движения SPLINE – для сложных изогнутых траекторий [11].
Автоматизация создания траекторий обработки плоской поверхности реализована следующим образом: создается траектория движения плазматрона в графическом редакторе в формате .dwg. Созданный файл загружается в CAM-программу для станков с ЧПУ. CAM-программа преобразует вектор или область, заданную векторами, в управляющую команду в g-code фор- мате, которая затем преобразуется в KRL программой, написанной на языке программирования Python.
Для этого требуются создать программу на пульте управления KUKA smartPAD. Установить начальную точку и сохранить её. Программа на пульте управления сохранятся в двух файлах.

начало
Действия оператора”!
Создание файлов на smartPAD и их сохранение для дальнейшей работы
Python программа
^ конец
Загрузка нового файла управляющей программы в Kuka
Анализ сохраннех файлов и управляющей программы (g-code) и формирование файла управляющей программы в требуемом виде
Создание управляющей программы для детали в САМ программе ________ (g-code) ________
Установка детали и задание начальной точки
Рис. 2. Блок-схема автоматизированного алгоритма создания управляющей программы
Fig. 2. The flowgraph of an automated algorithm for creating a control program
В первом файле формата .src хранится код программы, а во втором файле формата .dat хранятся координаты точек, углы поворота осей и другие необходимые параметры.
Разработанная нами программа на языке Python производит синтаксический анализ файлов с пульта управления KUKA smartPAD и файла траектории в g-code формате с CAM-программы с помощью регулярных выражений, используя модуль re [15]. Затем программа формирует файл с управляющей траекторией, дополняя код программы в файле с форматом .src . Данный файл загружается на пульте управления KUKA smartPAD.
Алгоритм действий создания управляющей программы представлен в блок-схеме на рис. 2.
Созданная программа преобразует g-code формат в KRL в движение LIN, что было реализовано на первом этапе разработки метода. Далее расстояние между точками траектории анализируется и определяется, лежат они на прямолинейном или криволинейном участке, что было реализовано на втором этапе разработки.
Первый этап
На первом этапе реализовано создание прямолинейных траекторий (движение LIN), что необходимо и достаточно для нанесения покрытия на прямоугольные участки поверхности детали.
В созданной траектории движения CAM программой начальная точка задается нулевыми координатами, для этого, как указано в блок-схеме, требуется задать начальную точку, по которой будут пересчитываться все точки траектории. Траектория в g-code формате представлена на рис. 3. Эти данные переводятся в формат KRL. Учитывается возможность наличия изменения координаты по одной оси. Лишние для нас данные, такие как обороты шпинделя и другие, игнорируются.

XI.177Y-32.378
X1.601Y-32.322
XI.458Y-32.232
XI.342Y-32.116
XI.252Y-31.973
XI.196Y-31.812
XI.177Y-31.647
Рис. 3. Задание прямолинейного движения в управляющей программе в g-code формате и в KRL
LIN |
{X |
1.177, |
Y -32.378} |
LIN |
{X |
1.601, |
Y -32.322} |
LIN |
{X |
1.458, |
Y -32.232} |
LIN |
{X |
1.342, |
Y -32.116} |
LIN |
{X |
1.252, |
Y -31.973} |
LIN |
{X |
1.196, |
Y -31.812} |
LIN |
{X |
1.177, |
Y -31.647} |
Fig. 3. Specifying a rectilinear motion in the control program in g-code format and in KRL
Второй этап
На втором этапе оценены команды движения CIRC и SPLINE для кривых участков траекторий, так как использование LIN для этих целей приводит к долгому «зависанию» плазмотрона над одной областью, что нарушает расчетный режим напыления. Результаты оценки показали, что для поставленной задачи выгоднее использовать движение SPLINE, так как оно обеспечивает плавное движение с заданной скоростью без «зависаний», в отличие от CIRC.
Алгоритм реализации с движением SPLINE основан на программе первого этапа с дальнейшим анализом точек траектории. Кривую линию CAM-программа делит на множество точек, соответственно, оценивая расстояние между двумя соседними точками по формуле rn = ^(xn+1 - xn )2 + (yn+1 - yn )2, можно определить, лежат они на прямой или кривой линии и, в соответствии, с этим изменить команду линейного движения на SPLINE.

LIN {X 975.198, Y 247.396} SPLINE
SPL {X 975.145, Y 247.579}
SPL {X 975.119, Y 247.772}
SPL [X 975.122, Y 247.967}
SPL {X 975.154, Y 248.159}
SPL {X 975.214, Y 248.341} 5LIN {X 976.686, Y 250.156} ENDSPLINE
LIN [Z 280.168}
LIN [X 974,664, Y 257.487}
Рис. 4. Задание криволинейного движения в управляющей программе (KRL)
Fig. 4. Defining a curvilinear movement in the control program (KRL)
Для достижения этого необходимо устранить отсутствие одной из координат точки при её повторении (при движении параллельно осям X или Y). Начало движения SPLINE задается командой SPLINE и заканчивается командой ENDSPLINE, движение внутри этого блока формируется командой SPL для кривой линии и командой SLIN для прямой линии. Перемещение по оси Z формируется изменением только этой координаты, осуществляется движением LIN. Команды в управляющей программе имеют вид, представленный выше на рис. 4.
Заключение
Созданная программа на языке Python позволяет программировать движение плазматрона на 6-осном роботе-манипуляторе KUKA KR16-2, используя CAM-программу для станков с ЧПУ. При этом упрощается создание траекторий движения плазматрона по поверхности изделий. В таблице представлены этапы автоматизации создания траекторий движения плазматрона. Для визуализации результата программы на установочном фланце робота-манипулятора был установлен маркер, который отобразил заданную траекторию.
Этапы автоматизации создания траекторий
№ |
Отображение траекторий |
Вид |
1 |
В графическом редакторе |
^^^^^ |
2 |
В CAM-программе для станков с ЧПУ |
|
3 |
В g-code формате |
X73.500Y-41.038 Х-73.500Y-41.038 X-73.500Y-33.577 X73.500Y-33.577 Х73.500Y-26.115 Х-73.500 X-73.500Y-18.654 Х73.500Y-18.654 |
4 |
В KRL |
LIN {X 907.113, Y 209.41} LIN {X 907.113, Y 216.871} LIN {X 1054.113, Y 216.871} LIN {X 1054.113, Y 224.333} LIN {X 1030.237, Y 224.333} SPLINE SPL {X 1030.745, Y 224.91} SPL {X 1031.229, Y 225.514} SPL {X 1031.685, Y 226.142} SPL {X 1032.113, Y 226.793} |

В дальнейшем планируется доработать программу для объемных траекторий, например, используя в CAM-программе чистовую обработку рельефа объемной детали, можно напылять покрытие плазматроном на объемные детали несложных форм, такие как рефлектор. А также планируется уменьшить число шагов алгоритма автоматизации внедрением Python-программы в CAM-программу макросом и рассмотреть другие варианты автоматизации.
Список литературы Метод автоматизации перемещения плазмотрона шестиосным роботом-манипулятором
- Хасуй А. Техника напыления. М. : Машиностроение, 1975. 288 с.
- Кудинов В. В Плазменные покрытия. М. : Наука, 1977. 270 с.
- Михеев А. Е., Колмыков В. А. Повышение эксплуатационных характеристик поверхностей элементов конструкций летательных аппаратов. Автоматизация процессов обработки. М. : МАКС Пресс, 2002. 224 с.
- Зуев, Д. М., Шахматов А. В., Ханов В. Х. Концепция реконфигурируемой космической лаборатории на примере космического аппарата ReshUCube // Космические системы. М. : Перо, 2021.С. 17-18.
- Aysha S. Hameed, Bindu G. R-Single segment approach and landing guidance and control for an unpowered reusable launch vehicle / Aerospace Science and Technology. 2021. No. 115. P. 106777. Doi: https://doi.org/10.1016/j.ast.2021.106777.
- Формирование сложнопрофильных деталей космических аппаратов методом селективного лазерного сплавления / А. И. Ананьев, Ю. П. Борщев, М. Ю. Квардаков и др. // Вестник НПО им. С. А. Лавочкина. 2017. № 1(35). С. 87-92.
- Ethan P. Hopping, Wensheng Huang, Kunning G. Xu. Small Hall Effect Thruster with 3D Printed Discharge Channel: Design and Thrust Measurements // Aerospace. 2021. Vol. 8. P. 227. Doi: https://doi.org/10.3390/aerospace8080227.
- Lawand Lydia, Massimo Panarotto, Petter Andersson, Ola Isaksson, Michael Kokkolaras. Dynamic Lifecycle Cost Modeling for Adaptable Design Optimization of Additively Remanufactured Aeroengine Components // Aerospace. 2020. No. 8. P. 110. Doi: https://doi.org/10.3390/aerospace 7080110.
- Плазмотрон для нанесения покрытий из тугоплавких дисперсных материалов / А. Е. Михеев, А. В. Гирн, Д. В. Раводина, И. О. Якубович // Сибирский журнал науки и технологий. 2018. Т. 19, № 2. С. 365-372. Doi: 10.31772/2587-6066-2018-19-2-365-372.
- Напыление покрытий плазмотроном с подачей порошка спутно плазменному потоку / А. Е. Михеев, А. В. Гирн, И. О. Якубович, М. С. Руденко // Сибирский аэрокосмический журнал. 2021. Т. 22, № 1. С. 194-200. Doi: 10.31772/2712-8970-2021-22-1-194-200.
- Компания KUKA Roboter [Электронный ресурс]. URL: https://www.kuka.com (дата обращения: 28.11.2021).
- Производитель промышленных роботов Doosan Robots [Электронный ресурс]. URL: https://doosanrobots.ru (дата обращения: 28.11.2021).
- Промышленные роботы ABB [Электронный ресурс]. URL: https://new.abb.com/products/ robotics/ru/ (дата обращения: 28.11.2021).
- Плазмотрон для нанесения покрытий на внутренние поверхности изделий / А. Е. Михеев, А. В. Гирн, И. О. Якубович, М. С. Руденко // Сибирский журнал науки и технологий. 2020. Т. 21, № 2. С. 274-278. Doi: 10.31772/2587-6066-2020-21-2-274-278.
- re - Regular expression operations [Электронный ресурс]. URL: https://docs.python.org/3/ library/re.html (дата обращения: 28.11.2021).