employee
Rybinsk, Yaroslavl, Russian Federation
graduate student from 01.01.2022 until now
Russian Federation
VAK Russia 2.5.5
UDC 621.865.8
The article examines the advantages and disadvantages of using industrial robots to control a tool during machining operations. It is concluded that the main drawback of robots is their low stiffness. A mathematical model has been developed to calculate the deviation of the tool from the desired trajectory during robotic machining. To predict deviations, the proposed model uses the virtual joint method, which provides a reasonable compromise between modeling accuracy and computational complexity. The model is implemented in Matlab using the Robotics System Toolbox and a URDF description of the industrial robot. It takes into account external forces and torques, as well as dynamic parameters such as velocity and acceleration of the robot’s links. Tool deviations are calculated in both joint and Cartesian spaces. The article presents the results of model testing on a sample tool trajectory using the ABB IRB 120 industrial robot. Based on the modeling results, it is concluded that the robot’s configuration significantly affects the tool positioning accuracy. It is shown that even in the absence of external loads, an unsuccessful choice of robot configuration can cause significant tool deviations due to gravity. The developed model can be used as a tool to improve the accuracy of robotic machining and to optimize production process parameters.
industrial robot, dynamic stiffness, virtual joint modeling, trajectory, Matlab
Введение. Роботизация является одной из основных тенденций современной промышленности. Промышленные роботы могут использоваться для выполнения большого количества различных задач, в частности, широкое распространение получили роботы для захвата, транспортировки и установки заготовок и деталей, сборки изделий и укладки готовой продукции. Роботизация не обошла стороной и сферу механической обработки. И хотя в ней задействованы лишь
1,4 % от общего числа промышленных роботов [1], роботизированная механическая обработка вызывает все больший интерес у современных исследователей.
Роботы, используемые в механической обработке, делятся на три категории в зависимости от выполняемых операций:
- роботы для захвата, перемещения и базирования заготовки – используются для точного позиционирования заготовки перед механической обработкой, выполняемой без непосредственного участия робота;
- роботы для захвата, перемещения и удержания заготовок – используются для удержания и управления заготовкой в процессе обработки;
- роботы для захвата и удержания инструмента – используются для удержания и управления режущим инструментом в процессе обработки.
Наибольший интерес для исследований и дальнейшего развития представляют роботы третьей категории. В настоящее время механическая обработка, как правило, выполняется при помощи металлорежущих станков с ЧПУ. Однако по сравнению с ними промышленные роботы обладают рядом преимуществ. Во-первых, промышленные роботы имеют большее рабочее пространство, что упрощает обработку крупногабаритных деталей [2]. Во-вторых, промышленные роботы обладают большей гибкостью, то есть могут выполнять больший спектр различных задач в постоянно меняющихся требованиях производства. В-третьих, эксплуатация промышленных роботов зачастую обходится дешевле, а их внедрение способствует снижению себестоимости механической обработки до 30 % [3].
Несмотря на описанные преимущества, широкое внедрение промышленных роботов в механическую обработку ограничено рядом их недостатков [4]. Одним из основных недостатков является сложность их программирования. В отличие от станков с ЧПУ, для которых существует единый стандартизированный язык программирования, промышленные роботы используют собственные уникальные языки, определяемые производителями, что усложняет процесс их внедрения в производство, поскольку при этом требуется дополнительное обучение персонала. Однако главными недостатками промышленных роботов по сравнению со станками с ЧПУ являются их более низкая точность и недостаточная повторяемость операций: наибольшее распространение в механической обработке получили роботы с последовательной кинематической структурой, в которой каждое отдельное звено несет на себе вес всех последующих, что приводит к увеличению массы отдельных элементов конструкции и способствует большему отклонению инструмента от желаемой запрограммированной траектории, из-за чего снижается и точность обработки. Поэтому важной задачей является прогнозирование и компенсация отклонений инструмента от желаемой траектории в процессе механической обработки [5].
Описание модели. Для предварительной оценки отклонения инструмента в среде моделирования Matlab была разработана математическая модель в виде скрипта. Расчет отклонения инструмента состоит из нескольких этапов:
- Инициализация параметров промышленного робота;
- Импорт траектории движения инструмента и инициализация параметров процесса обработки;
- Формирование траектории движения рабочего органа робота;
- Моделирование процесса воспроизведения рабочим органом заданной траектории с внешним усилием и определение отклонений инструмента.
На первом этапе расчета определяются параметры промышленного робота. Для работы с роботами в Matlab используется пакет Robotics System Toolbox. При этом робот представляется в виде объекта rigidBodyTree, в котором кинематическая структура робота представляется в виде иерархического соединения жестких тел (звеньев) и соединяющих их шарниров. Создать объект rigidBodyTree можно двумя способами: с помощью представления Денавита-Хартенберга и с помощью файла в формате URDF (Unified Robot Description Format) – формат, используемый для описания роботов в Robotic Operating System (ROS). В первом случае в среде Matlab создается матрица с параметрами Денавита-Хартенберга для моделируемого робота, по которой последовательно создаются его соединения – звенья и шарниры. А во втором случае, файл в формате URDF импортируется в Matlab с помощью функции importrobot. Второй подход является более универсальным, поскольку он позволяет учесть не только кинематическую структуру робота, но и его динамические свойства, такие как массу, центр тяжести, коэффициент трения и тензор инерции каждого звена, а также ограничения поворота шарниров, тогда как представление Денавита-Хартенберга информацию о данных параметрах не содержит.
Описание робота в формате URDF может быть составлено вручную или же с помощью специальных инструментов. Например, плагин SW2URDF позволяет создавать файл в формате URDF с описанием промышленного робота на основе его твердотельной модели в SolidWorks. Кроме того, большое количество готовых URDF-файлов для промышленных роботов уже разработаны сообществом и производителями роботов. В частности, большой вклад в адаптацию ROS для промышленных приложений и разработку открытых библиотек для этих целей внес проект ROS-Industrial [6].
Кроме кинематических и динамических характеристик, важным параметром робота является его жесткость. В робототехнике могут использоваться три подхода к моделированию жесткости: метод конечных элементов (МКЭ), матричный структурный анализ (МСА) и метод виртуальных пружин (МВП) [7].
При использовании МКЭ сложная структура робота разбивается на некоторое конечное число простых элементов, связь между которыми определяется с помощью соответствующих матриц жесткости. Преимуществом использования МКЭ является его высокая точность и возможность определения деформации в любой отдельно взятой части робота, а недостатком – высокая сложность вычисления. Возможность применения такого подхода зачастую ограничена памятью компьютера.
Метод МСА является упрощением МКЭ – в этом случае в качестве конечных элементов используются достаточно большие элементы – 3D-балки, при этом их количество, как правило, соответствует количеству звеньев робота. Преимуществом использования МСА является более простая по сравнению с МКЭ модель для анализа жесткости, а недостатком – трудность применения для анализа робота в нагруженном состоянии [8]. МКЭ и МСА как правило используются для анализа жесткости робота на стадии его проектирования, когда важна точность, а не скорость вычислений.
МВП является наиболее простым в реализации подходом для анализа жесткости робота. В этом случае в стандартную жесткую недеформируемую модель добавляются виртуальные пружины, которые описывают упругие деформации звеньев робота. Такой подход обеспечивает разумный компромисс между точностью модели и вычислительной сложностью [9]. Преимуществом МВП является возможность его использования для прогнозирования и компенсации отклонения инструмента при механической обработке в режиме онлайн, то есть непосредственно в процесс обработки, а недостатком – сложность корректного подбора коэффициента жесткости пружин.
В разработанной модели для ускорения расчета используется МВП. В этом случае жесткость робота выражается в виде диагональной матрицы, размерность которой зависит от количества звеньев робота:
, (1)
где KΘ – конфигурационная матрица жесткости; kj – коэффициент жесткости j-го звена.
Для определения коэффициентов жесткости могут использоваться два подхода: аналитический и экспериментальный. В первом случае жесткость каждого звена робота рассчитывается на основе жесткости его отдельных элементов (таких как электродвигатель, вал, зубчатый ремень, волновой редуктор и др.) [10], а во втором для определения жесткости проводится серия экспериментов [11]. Экспериментальный подход является более точным, но требует больших временных затрат. Исследования показывают, что погрешность аналитического подхода для определения жесткости может достигать 17 % [12].
На втором этапе расчета определяется желаемая траектория движения инструмента. Для этого используется файл в формате .csv, который импортируется в Matlab с помощью функции readtable. Помимо траектории движения инструмента, входным параметром модели для расчета отклонений является и сила в процессе резания, которая в каждой точке движения инструмента представлена в виде матрицы:
, (2)
где FX, FY, FZ – силы, воздействующие на инструмент в процессе обработки вдоль осей X, Y и Z соответственно; TX, TY, TZ – крутящие моменты, воздействующие на инструмент в процесс обработки вдоль осей X, Y и Z соответственно.
На третьем этапе расчета на основе желаемой траектории движения инструмента строится траектория движения рабочего органа робота. Она может быть построена как в декартовом, так и в конфигурационном пространствах. Для задач механической обработки оптимальным является второй подход, так как он позволяет достичь высокой точности и плавности движения рабочего органа и инструмента, а также учитывает физические и кинематические ограничения робота, хотя и является более ресурсозатратным для реализации, поскольку в этом случае на каждом шаге вычислений приходится решать обратную задачу кинематики (ОЗК) [13].
Robotics System Toolbox позволяет использовать аналитические и численные методы для решения ОЗК. В разработанной модели используется аналитическое решение, составленное с помощью функций analyticalInverseKinematics и generateIKFunction. Для генерации траектории движения рабочего органа используется функция minjerkpolytraj, которая позволяет создать плавную траекторию с минимальным рывком, что особенно полезно в задачах, где требуется минимизировать вибрации и обеспечить плавность движения рабочего органа и инструмента, например, при полировке.
На четвертом этапе рассчитываются отклонения инструмента в каждой точке его движения. Как правило, расчет отклонений проводится в декартовом пространстве. Для этого из (1) определяется декартова матрица жесткости:
, (3)
где KX – декартова матрица жесткости; J – матрица Якоби для робота в его текущей точке; KC – комплементарная матрица жесткости, которая описывает влияние взаимодействий между различными степенями свободы робота на его жесткости.
В том случае, если робот в анализируемой конфигурации находится вдали от сингулярных положений, матрицей KC при расчетах можно пренебречь [14]. Кроме того, для расчета отклонений инструмента удобнее работать не с матрицей жесткости, а с матрицей податливости:
, (4)
где CX – декартова матрица податливости:
,
где Ctt – матрица, отвечающая за линейные перемещения инструемента; Ctr – матрица, которая описывает взаимосвязь между линейными и угловыми перемещениями инструмента; Crr – матрица, отвечающая за угловые перемещения инструмента.
Зная матрицу податливости CX и вектор внешних сил и моментов F, можно определить отклонения инструмента в любой точке траектории:
, (5)
где ΔX – вектор отклонений инструмента в декартовом пространстве, который представляет собой матрицу размерностью 6×1:
, (6)
где dx, dy, dz – отклонения инструмента вдоль осей X, Y и Z соответственно; δx, δy, δz – отклонения углов поворота инструмента вокруг осей X, Y и Z соответственно.
Недостатком такого порядка расчета отклонений является отсутствие учета динамических параметров выполняемого процесса, а именно скоростей и ускорений шарниров, а также моментов сил, возникающих в шарнирах робота при движении инструмента по заданной траектории. Чтобы учесть динамические параметры процесса, необходимо перейти от декартового к конфигурационному пространству.
Для определения скоростей и ускорений шарниров в разработанной модели используется численное дифференцирование методом правосторонней разности [15], которое осуществляется сразу после генерации траектории движения рабочего органа. После чего, для расчета моментов сил решается обратная задача динамики (ОЗД). В Robotics System Toolbox для этого используется функция inverseDynamics, в основе которой лежит уравнение динамики робота [16]:
, (7)
где M(q) – матрица масс в конфигурационном пространстве для конфигурации q;
– ускорения шарниров робота;
– матрица кориолисовых и центробежных сил для конфигурации q при скоростях шарниров
; G(q) – вектор сил и моментов гравитации, необходимых для удержания всех шарниров при заданной гравитации; J(q) – геометрический Якобиан; Fext – матрица внешних сил.
При этом важно отметить, что матрица Fext – это не тоже самое, что и матрица F из (2). Матрица Fext содержит информацию о силах, действующих не только на инструмент, но и на другие звенья робота, а для ее создания используется функция externalForce.
По рассчитанным моментам сил можно по закону Гука определить отклонения шарниров в конфигурационном пространстве [17]:
. (8)
Тогда угол поворота шарниров (конфигурация робота) с учетом отклонений:
, (9)
где q – матрица с углами поворота шарниров,
qс – матрица с созданными с помощью решения ОЗК углами поворота шарниров, необходимыми для движения инструмента по заданной траектории.
Чтобы перейти от конфигурационного к декартовому пространству нужно решить задачу прямой кинематики для углов поворота шарниров q. В Robotics System Toolbox для этого используется функция getTransform, которая позволяет получить матрицу однородного преобразования между выбранным звеном, в нашем случае инструментом, и базовой системой координат. Чтобы определить декартовые координаты из полученной матрицы однородного преобразования нужно использовать функцию tform2trvec для определения декартовых координат положения инструмента и функцию tform2eul для определения углов Эйлера, описывающих поворот инструмента в пространстве. Отсюда отклонения инструмента определяются как разность между желаемой и рассчитанной траекторией.
Основная часть. Разработанная модель для расчета отклонений инструмента была испытана на тестовой траектории движения инструмента из [18]. Тестовая траектория задается системой уравнений:
, (10)
где были приняты следующие значения: r = 0,15 м; R = 0,5 м; θ = [0, 2π].
В качестве робота был выбран промышленный робот ABB IRB 120, матрица жесткости которого представлена в [12], а описание в формате URDF взято из [6].
На рис. 1 показано визуальное отображение выбранной модели робота в Matlab и тестовой траектории в начальной точке движения инструмента.
Значения сил и моментов в моделируемом процессе возрастали по экспоненциальному закону:
, (11)
где FМ – максимальное значение силы в процессе обработки; α – параметр, определяющий скорость роста силы. В качестве значений были выбраны:
;
.
Время прохождения инструментом по заданной траектории было выбрано равным 10 с. Рассчитанные в результате моделирования такой траектории суммарные отклонения инструмента по ориентации и положению показаны на рисунке 2, а на рисунках 3 и 4 показаны тестовая и рассчитанная траектория движения инструмента на интервалах времени 0,75–1,25 с и 4,83–5,33 с.
Рис. 1. Кинематическая структура робота и моделируемая траектория движения инструмента
Рис. 2. Отклонение инструмента по ориентации и положению
Рис. 3. Траектория движения инструмента на участке времени 0,75-1,25 с
Рис. 4. Траектория движения инструмента на участке времени 4,83-5,33 с
Выводы
В рамках исследования была разработана математическая модель в Matlab для расчета отклонения инструмента от желаемой траектории в процессе роботизированной механической обработки с использованием метода виртуальных пружин. Разработанная модель была использована для предсказания отклонений инструмента на тестовой траектории.
Анализ полученных графиков (рисунки 2–4) показывает, что наибольшие отклонения инструмента по положению и ориентации наблюдаются на участках времени 0–2 с и 8–10 с, при этом даже в начальной точке, когда на инструмент не действуют внешние силы F, а также скорости и ускорения шарниров равны нулю, отклонения инструмента только под действием силы тяжести больше, чем на участке времени 3–7 с. Это объясняется выбранной исходной конфигурацией робота, которая в данном случае не является оптимальной. Поиск конфигурации с минимальной податливостью требует дополнительного анализа и планируется к рассмотрению в последующих исследованиях.
По полученным результатам можно сделать вывод, что при относительно малых скоростях звеньев основное влияние на отклонения инструмента оказывает конфигурация робота, а не динамические параметры процесса. Поэтому важной задачей, которую нужно решать при роботизированной обработке, является определения оптимального взаимного расположения робота и заготовки: их нужно располагать так, чтобы в процессе обработки робот постоянно находился в конфигурациях, максимально удаленных от сингулярных. Кроме того, при наличии избыточных степеней свободы у робота, нужно обязательно подбирать их оптимальные значения так, чтобы минимизировать отклонения инструмента в процессе механической обработки.
Для повышения точности предложенной модели рекомендуется дополнительно учитывать зазор между сочленениями робота, которые вносят в каждое звено робота дополнительную степень свободы, собственные колебания промышленного робота, а также использовать более точные подходы к определению параметров жесткости робота.
1. Kiefer D., Luo X., Reimer A., Evans D. Robotic Machining: Status, Challenges and Future Trends. Proceedings of the 28th International Conference on Automation and Computing (ICAC). Birmingham, United Kingdom. 2023. Pp. 1–6. DOI:https://doi.org/10.1109/ICAC57885.2023.10275148.
2. Barsan A. A Brief Review of Robotic Machining. Acta Universitatis Cibiniensis. Technical Series. 2019. Vol. 71. Pp. 9–13. DOI:https://doi.org/10.2478/aucts-2019-0003.
3. Caro S., Dumas C., Garnier S., Furet B. Workpiece placement optimization for machining operations with a KUKA KR270-2 robot. Proceedings of the IEEE International Conference on Robotics and Automation. Karlsruhe, Germany. 2013. Pp. 2921–2926. DOI:https://doi.org/10.1109/ICRA.2013.6630982.
4. Kim S.H., Nam E., Ha T.I., Hwang S.H., Lee J.H., Park S.H., Min B.K. Robotic Machining: A Review of Recent Progress. International Journal of Precision Engineering and Manufacturing. 2019. No. 20. Pp. 1–14. DOI:https://doi.org/10.1007/s12541-019-00187-w.
5. Belchior J., Guillo M., Courteille E., Maurine P., Leotoing L., Guines D. Off-line compensation of the tool path deviations on robotic machining: Application to incremental sheet forming. Robotics and Computer-Integrated Manufacturing. 2013. No. 29. Pp. 58–69. DOI:https://doi.org/10.1016/j.rcim.2012.10.008.
6. ROS-Industrial. Available at: https://rosindustrial.org/ (accessed 9 April 2025)
7. Wu K., Li J., Zhao H., Zhong Y. Review of Industrial Robot Stiffness Identification and Modelling. Applied Sciences. 2022. Vol. 12. No. 17, 8719. Pp. 1–24. DOI:https://doi.org/10.3390/app12178719.
8. Klimchik A., Wu Y., Pashkevich A., Caro S., Furet B. Optimal Selection of Measurement Configurations for Stiffness Model Calibration of Anthropomorphic Manipulators. Applied Mechanics and Materials. 2012. No. 162. Pp. 161–170. DOI:https://doi.org/10.4028/www.scientific.net/AMM.162.161.
9. Popov D.I., Klimchik A.S. Stiffness modelling for anthropomorphic robots [Modelirovanie zhestkosti dlya shagayushchih robotov]. Computer Research and Modelling. 2019. Vol. 11. No. 4. Pp. 631–651. DOI:https://doi.org/10.20537/2076-7633-2019-11-4-631-651. (rus)
10. Chen S., Zhang T., Shao M. A 6-DOF articulated robot stiffness research. Proceeding of the 12th World Congress on Intelligent Control and Automation (WCICA). Guilin, China. 2016. Pp. 3230–3235. DOI:https://doi.org/10.1109/WCICA.2016.7578374.
11. Gao K., Zhou X., Wang R., Fan M., He X. Joint Stiffness Identification Based on Robot Configuration Optimization Away from Singularities. Applied Sciences. 2023. Vol. 13. No. 8. 4922. Pp. 1-15. DOI:https://doi.org/10.3390/app13084922.
12. He Z., Song M., Zhang X., Huang G. A New Prediction Method of Displacement Errors Caused by Low Stiffness for Industrial. Robot. Sensors. 2022. Vol. 22. No. 16. 5963. Pp. 1–13. DOI:https://doi.org/10.3390/s22165963.
13. Peters J., Schaal S. Learning operational space control. Proceedings of Robotics: Science and Systems (RSS). Philadelphia. 2006. Pp. 1–8.
14. Gao K. Optimization of Robot Milling Accuracy Based on a New Stiffness Performance Index. IEEE Access. 2024. Vol. 12. Pp. 105211-105218. DOI:https://doi.org/10.1109/ACCESS.2024.3435911.
15. Rafal'skij I.V., Arabej A.V., Lushchik P.E. Applied informatics: manual for specialty 1-42 01 01 «Metallurgical production and materials processing (by areas)» [Prikladnaya informatika: posobie po special'nosti 1-42 01 01 «Metallurgicheskoe proizvodstvo i materialoobrabotka (po napravleniyam)»]. Minsk: BNTU. 2021. (rus)
16. Featherstone R. Rigid Body Dynamics Algorithms: Springer. United States. 2008. 272 p.
17. Souflas T., Gerontas C., Bikas H., Stavropoulos P. On the Optimization of Robot Machining: A Simulation-Based Process Planning Approach. Machines. 2024. Vol. 12. No. 8. 521. Pp. 1–25. DOI:https://doi.org/10.3390/machines12080521.
18. Ni H., Ji S., Ye Y. Redundant Posture Optimization for 6R Robotic Milling Based on Piecewise-Global-Optimization-Strategy Considering Stiffness, Singularity and Joint-Limit. Symmetry. 2022. Vol. 14. No. 10. 2066. Pp. 1–14. DOI:https://doi.org/10.3390/sym14102066.



