Способ повышения точности позиционирования промышленного робота
METHOD FOR INCREASING ACCURACY OF POSITIONING INDUSTRIAL ROBOTS

Изобретение относится к области робототехники и позволяет повысить точность позиционирования промышленного робота.
Известен способ повышения точности позиционирования промышленного робота, опубликованный в статье «Accuracy and Calibration Issues of Industrial Manipulators», Mohamed Abderrahim, Alla Khamis, Santiago Garrido, Luis Moreno, ISBN:3-86611-286-6. Повышение точности позиционирования робота осуществляется путем измерения набора точек позиции робота в рабочем пространстве робота, вычисляется набор параметров, уменьшающих погрешность между номинальной моделью робота и реальным роботом. Способ включает калибровку кинематических и некинематических параметров промышленного робота.
Известен патент US 8457786 (В2), опубликованный 04.06.2013 г, «Method and an apparatus for calibration of an industrial robot system». Раскрыт способ и устройство для калибровки промышленной роботизированной системы, содержащей один робот, включающий систему координат робота и манипулятор, включающий систему координат манипулятора и приспособленный удерживать ориентацию заготовки и менять эту ориентацию поворотом вокруг некоторой оси вращения. Заданные точки робота программируются в координатной системе объекта. Устройство содержит контроллер робота, по меньшей мере, три калибровочных объекта, расположенных на манипуляторе, и калибровочный инструмент, удерживаемый роботом. Положения калибровочных объектов известны в координатной системе объекта. Контроллер робота выполнен для определения положений калибровочных объектов в координатной системе робота, для определения положений первого и второго упомянутых калибровочных объектов при трех различных углах оси вращения манипулятора, для определения направления оси вращения манипулятора в координатной системе робота на основе определенных положений первого и второго калибровочных объектов при трех углах оси и для определения взаиморасположения координатной системы первого объекта и координатной системы манипулятора посредством достижения наилучшего соответствия известных и определенных положений калибровочных объектов.
За прототип взят способ повышения точности позиционирования промышленного робота, описанный в статье «Absolute calibration of an ABB IRB 1600 robot using a laser tracker», Albert Nubiola, Ilian A. Bonev. Способ повышения точности позиционирования робота, включающий калибровку кинематических параметров робота и калибровку некинематических параметров путем вычисления крутящего момента каждого звена на основе данных о массе звена, его центра тяжести, массы рабочего органа, крутящий момент каждого звена рассчитывается рекурсивно и зависит от центра масс последующих звеньев и рабочего органа, затем на основе данных о крутящем моменте каждого звена вычисляется вклад крутящего момента в угловое отклонение звена робота. Угловое отклонение звена используется в параметрах Денавита-Хартенберга (DH-параметры), описывающих кинематическую модель робота.
Техническая задача заключается в расширении арсенала технических средств, создании способа повышения точности позиционирования промышленного робота с учетом рабочей нагрузки.
В соответствии с первым вариантом изобретения техническая задача в способе повышения точности позиционирования промышленного робота, включающем калибровку кинематических и некинематических параметров промышленного робота, достигается тем, что калибровка некинематических параметров содержит следующие шаги:
проводят измерение действительных координат расположения робота в заданных координатах расположения робота с рабочей нагрузкой при вращении наиболее длинных звеньев А и Б с заданным шагом;
из измеренных действительных координат расположения робота вычисляют действительные углы поворота звеньев А и Б, используя функции обратной кинематики;
вычисляют функции отклонения действительных углов поворота звеньев А и Б от заданных углов поворота;
вносят изменения в кинематическую модель робота с учетом полученных функций для корректировки углов поворота звеньев А и Б.
В соответствии со вторым вариантом изобретения техническая задача в способе повышения точности позиционирования промышленного робота, включающем калибровку кинематических и некинематических параметров промышленного робота, достигается тем, что калибровка некинематических параметров содержит следующие шаги:
проводят измерение координат точки на запястье робота в заданных координатах расположения робота с рабочей нагрузкой при вращении наиболее длинных звеньев А и Б с заданным шагом;
вычисляют функцию удельной ошибки угла поворота звена Б от угла звена Б к горизонту, используя выборку измеренных координат точки на запястье робота, соответствующих одному фиксированному положению звена А;
вычисляют второй набор координат точки на запястье робота путем коррекции измеренных координат точки с учетом угловой поправки звена Б;
используя второй набор координат точки на запястье робота, вычисляют набор функций удельной ошибки угла поворота звена А от заданного угла звена А к горизонту для всех измеренных углов звена Б;
вносят изменения в кинематическую модель робота, при этом вычисляют функцию удельной ошибки угла поворота звена А для заданного угла звена Б путем интерполяции между двумя функциями из набора функций удельной ошибки угла поворота звена А, соответствующих двум, ближайшим к заданному, измеренным углам поворота звена Б;
вычисляют угловую поправку для звеньев А и Б, интегрируя функцию удельной ошибки угла поворота соответствующего звена на участке между максимумом функции и заданным значением угла поворота звена к горизонту.
В соответствии с третьим вариантом изобретения техническая задача в способе повышения точности позиционирования промышленного робота, включающем калибровку кинематических и некинематических параметров промышленного робота, достигается тем, что калибровка некинематических параметров содержит следующие шаги:
проводят измерение координат точки на запястье робота в заданных координатах расположения робота с рабочей нагрузкой при вращении наиболее длинных звеньев А и Б с заданным шагом;
вычисляют функцию удельной ошибки угла поворота звена Б от угла звена Б к горизонту, используя выборку измеренных координат точки на запястье робота, соответствующих одному фиксированному положению звена А;
вычисляют второй набор координат точки на запястье робота путем коррекции измеренных координат точки с учетом угловой поправки звена Б;
используя второй набор координат точки на запястье робота, вычисляют набор функций удельной ошибки угла поворота звена А от заданного угла звена А к горизонту для всех измеренных углов звена Б;
для каждого звена А и Б вычисляют набор значений поправок к углу поворота для всех комбинаций углов поворота звеньев А и Б, при этом
для вычисления поправок к углу для звеньев А и Б, для звена А сначала вычисляют функцию удельной ошибки угла поворота звена А для заданного угла звена Б путем интерполяции между двумя функциями из набора функций удельной ошибки угла поворота звена А, соответствующих двум, ближайшим к заданному, измеренным углам поворота звена Б; угловые поправки для звеньев А и Б вычисляют, интегрируя функцию удельной ошибки угла поворота соответствующего звена на участке между максимумом функции и заданным значением угла поворота звена к горизонту;
вычисляют функции отклонения угла поворота для каждого звена А и Б от заданных углов поворота звеньев А и Б, путем аппроксимации набора значений поправок к углу поворота звеньев А и Б;
вносят изменения в кинематическую модель робота с учетом полученных функций отклонения угла поворота звеньев А и Б.
На фиг. 1 изображен общий вид 6-осевого шарнирного промышленного робота, схематично показана траектория движения звеньев при измерениях.
На фиг. 2 изображен общий вид функции абсолютной ошибки угла поворота звена промышленного робота.
На фиг. 3 изображен общий вид функции удельной ошибки угла поворота звена промышленного робота.
На фиг. 4 изображен набор измеренных точек, описывающих окружность.
На фиг. 5 схематично показано отклонение звеньев промышленного робота при измерениях.
Реализация способа повышения точности позиционирования промышленного робота рассмотрена применительно к 6-осевому промышленному роботу (шарнирный робот), в котором второе звено 1 (далее звено А) и третье звено 2 (далее звено Б) являются наиболее длинными, а их оси вращения параллельны (фиг. 1).
Осуществление первого варианта изобретения.
Калибровка кинематических параметров заключается в приведении номинальной модели робота в соответствие с реальными геометрическими параметрами робота. Суть калибровки заключается в измерении геометрических параметров робота и корректировки его кинематической модели, которая описывается параметрами Денавита-Хартенберга (DH-параметры).
Известны разные способы калибровки кинематических параметров, описанные в литературе «Kinematic Modeling, Identification, and Control of Robotic Manipulators», Henry W. Stone, 1987 г; «Fundamentals Of Manipulator Calibration», Benjamin W. Mooring, Zvi S. Roth, Morris R. Oriels, 1991 г.; «Идентификация геометрических параметров технологических роботов с системой технического зрения (СТЗ)». Асп. Поливанов А.Ю., д.т.н., проф. Клевалин В., А. Москва, МГТУ «СТАНКИН», кафедра «Робототехника и мехатроника».
Калибровка кинематических параметров.
Измерение геометрических параметров проводят с помощью координатно-измерительной машины, обеспечивающей высокую точность измерений и наибольший охват рабочей зоны, например, лазерный трекер Leica АТ402.
На запястье робота 3 (фиг. 1) устанавливают светоотражающие марки (не показаны), координаты которых отслеживаются лазерным трекером. Определяют смещение системы координат лазерного трекера относительно системы координат робота для измерения действительных координат расположения робота в рабочей зоне. Идентифицируется плоскость вращения для каждого звена робота. Плоскость вращения содержит набор точек, описываемый запястьем робота при вращающемся звене. Из набора точек для каждого звена вычисляют центр вращения, который расположен на оси звена. Переводят плоскость вращения вдоль оси вращения так, чтобы она совпадала с плоскостью XY DH-параметров соответствующего звена, что позволяет извлечь и скорректировать DH-параметры робота. Данная методика корректировки кинематической модели робота приведена в статье «Kinematic model identification of industrial manipulators», M. Abderrahim, A.R. Whittaker, опубликованной в журнале «Robotics and Computer Integrated Manufacturing» в 2000 г.
Калибровку некинематических параметров осуществляют после калибровки кинематических параметров.
Известно, что при рабочей нагрузке позиция робота отклоняется от заданного положения, при этом величина отклонения зависит от массы рабочей нагрузки и положения звеньев робота. Наибольшее отклонение происходит в редукторах и при деформации наиболее длинных звеньев А и Б, 1 и 2 на фиг. 1 соответственно. Корректировка углов поворота звеньев А и Б позволяет значительно увеличить точность позиционирования робота с рабочей нагрузкой 4 (фиг. 1).
С помощью координатно-измерительной машины проводят измерение действительных координат расположения робота в заданных координатах расположения робота с рабочей нагрузкой 4 при вращении наиболее длинных звеньев А и Б с заданным шагом. При этом для шарнирного робота задается режим работы, при котором все звенья, кроме звена А и звена Б, неподвижны. Звено А вращается из крайнего положения с определенным шагом, например, 10 градусов, до другого крайнего положения, при этом в каждой точке остановки звена А звено Б так же совершает вращение между своими крайними положениями с определенным шагом, например, 10 градусов. В результате измерения получают два набора точек, соответствующих действительным и заданным координатам расположения робота. Или, как вариант, набор точек, соответствующих действительным координатам расположения робота и набор заданных углов поворота звеньев А и Б робота.
Из измеренных действительных координат расположения робота вычисляют действительные углы поворота звеньев А и Б, используя функции обратной кинематики. Решая обратную задачу кинематики для шарнирного робота, вычисляют реальные углы поворота звеньев А и Б в каждой измеренной точке. При решении обратной задачи используют геометрические параметры робота, полученные при калибровке кинематических параметров. После вычисления получают набор
действительных углов поворота звеньев А и Б для каждой измеренной точки. Набор заданных углов поворота можно так же вычислить, решая обратную задачу кинематики для заданных координат расположения робота. В результате получают наборы действительных и заданных углов поворота звеньев А и Б для каждой заданной точки расположения робота, что позволяет вычислить отклонение этих углов.
Вычисляют функции отклонения действительных углов от заданных углов поворота звеньев А и Б. Функции отклонения действительных углов вычисляются путем аппроксимации набора значений отклонения действительных углов от заданных углов поворота звена А и звена Б. Аппроксимация может быть осуществлена модифицированным методом Шепарда, описанным Robert J. Renka «Multivariate Interpolation of Large Sets of Scattered Data», 1988 г. Также существуют программные решения, основанные на методах аппроксимации, которые позволяют автоматизировать процесс аппроксимации измеренных данных. В результате аппроксимации для звена А и звена Б вычисляются функции отклонения действительных углов, зависящие от заданных углов поворота звена А и Б  где  - заданные углы поворота звена А и звена Б).
Вносят изменения в кинематическую модель робота с учетом полученных функций для корректировки углов поворота звеньев А и Б. Для звена А и Б шарнирного робота корректируют DH-параметры, при этом угол поворота для этих звеньев будет равен  и  соответственно.
Таким образом, при позиционировании робота с рабочей нагрузкой углы поворота наиболее длинных звеньев А и Б робота рассчитываются с учетом значений функций отклонения действительных углов, увеличивая точность позиционирования промышленного робота.
Осуществление второго варианта изобретения.
Второй вариант изобретения основан на нахождении функций удельной ошибки углов поворота звеньев.
Упругие деформации, возникающие на звеньях робота в результате действия силы тяжести, зависят от величины проекции силы тяжести на касательную к окружности вращения в точке центра масс. В положении оси робота, когда эта проекция равна нулю (условно вертикальное положение), звено робота находится в минимально деформированном состоянии. В условно горизонтальном положении, проекция силы тяжести и деформации максимальны.
Абсолютная ошибка угла поворота звена будет зависеть от длины плеча и величины деформаций, график этой функции имеет общий вид, приведенный на фиг. 2.
Дифференциал функции абсолютной ошибки угла поворота звена будет являться функцией удельной ошибки угла поворота звена, график функции удельной ошибки угла поворота звена имеет общий вид, приведенный на фиг. 3. Это подтверждается экспериментальными данными.
Максимум аппроксимирующей функции удельной ошибки угла поворота звена будет соответствовать значению угла звена к горизонту, при котором деформации и отклонение звена минимальны.
Положение этого максимума может отличаться в зависимости от нагрузки и распределения масс, а также положения звеньев робота. Находя максимум на функции удельной ошибки угла поворота звена, мы находим точку с минимальной абсолютной ошибкой угла. Чтобы найти величину абсолютной ошибки угла поворота звена в заданном значении угла нужно проинтегрировать функцию удельной ошибки между ее максимальным и заданным значением.
Для калибровки некинематических параметров проводят измерение координат точки на запястье 3 робота в заданных координатах расположения робота с рабочей нагрузкой 4 при вращении наиболее длинных звеньев А и Б с заданным шагом. Для осуществления второго варианта способа достаточно измерения координат одной точки на запястье 3 робота, поскольку в вычислениях используется угол, на который поворачивается звено при измерениях. Для этого на запястье 3 робота закрепляют светоотражающую марку, координаты которой отслеживаются лазерным трекером. Траектория движения робота при измерениях аналогична описанному в первом варианте способа, при этом в каждом фиксированном положении звена А звено Б описывает окружность 5 маркером, закрепленным на запястье 3 робота (фиг. 1).
Вычисляют функцию удельной ошибки угла поворота звена Б от угла звена Б к горизонту, используя выборку измеренных координат точки на запястье 3 робота, соответствующих одному фиксированному положению звена А. Предпочтительно выборку измеренных координат осуществить при вертикальном положении звена А, так как в этом случае звено А вносит минимальную погрешность в измерение углового отклонения звена Б. Выборка измеренных координат представляет собой набор точек 6, принадлежащих окружности (фиг. 4), который можно аппроксимировать окружностью 7, определить центр окружности 8 и вычислить угол 9 между двумя измеренными точками 6 и центром окружности 8, который является фактическим шагом поворота звена Б. Значением удельной ошибки угла поворота звена Б является разница между фактическим и заданным шагом поворота звена Б, деленная на заданный шаг звена Б. Набор значений удельной ошибки угла поворота звена Б аппроксимируется, в результате получают функцию удельной ошибки угла поворота звена Б от угла звена Б к горизонту.
Для вычисления угловой поправки звена Б для известного значения угла звена Б к горизонту интегрируют функцию удельной ошибки угла поворота звена Б на участке между максимумом функции и заданным значением угла поворота звена Б к горизонту, полученное значение и будет величиной угловой поправки звена Б.
Угловое отклонение звена А зависит от положения звена А и звена Б, поскольку при вращении звена Б смещается общий центр тяжести. Поэтому измеренные координаты точки на запястье 3 робота несут в себе угловое отклонение двух звеньев А и Б. Для вычисления фактического шага поворота звена А необходимо сформировать новый набор координат точки на запястье 3, который учитывает угловую поправку звена Б. Для этого вычисляют второй набор координат точки на запястье 3 робота путем коррекции измеренных координат точки с учетом угловой поправки звена Б. На фиг. 5 схематично показано реальное положение звена А 10, заданное положение звена Б 11, реальное положение звена Б 12, положение измеренной точки 13, новое вычисленное положение измеренной точки 14. Зная центр окружности 8, угловую поправку звена Б 15, уточненные DH-параметры и координаты измеренной точки 13, вычисляют координаты новой точки 14 (фиг. 5).
Используя второй набор координат точки на запястье робота, вычисляют набор функций удельной ошибки угла поворота звена А от заданного угла звена А к горизонту для всех измеренных углов звена Б. Выборка из второго набора координат точки на запястье робота, соответствующая одному измеренному углу звена Б так же будет представлять собой набор точек, лежащих на окружности, описываемой точкой на запястье при вращении звена А и фиксированном звене Б (фиг. 4). Аналогично описанному выше методу вычисления функции удельной ошибки угла поворота для звена Б, используя второй набор координат точки на запястье, вычисляют функции удельной ошибки угла поворота звена А от заданного угла звена А к горизонту для каждого измеренного угла звена Б. В результате получают набор функций удельной ошибки угла поворота звена А от заданного угла звена А к горизонту для всех измеренных углов звена Б.
Вычисление угловой поправки звена А для заданного угла звена Б осуществляется в два этапа.
Вычисляют функцию удельной ошибки угла поворота звена А для заданного угла звена Б путем интерполяции между двумя функциями из набора функций удельной ошибки угла поворота звена А, соответствующих двум, ближайшим к заданному, измеренным углам поворота звена Б. Значения измеренных углов поворота звена Б имеют дискретные значения, поэтому для вычисления функции удельной ошибки угла поворота звена А для заданного значения угла звена Б, лежащего между двумя дискетными значениями, проводят интерполяцию между двумя функциями из набора функций удельной ошибки угла поворота звена А, соответствующих этим дискретным значениям угла звена Б.
Интерполяцию между двумя функциями проводят по формуле F=f1*(1-k)+f2*k, где k - коэффициент интерполяции, f1, f2 - функции, между которыми проводят интерполяцию. Коэффициент интерполяции k=(U-J)/(U-L), где J - заданный угол звена Б, U - ближайший к заданному, больший измеренный угол звена Б, L - ближайший к заданному, меньший измеренный угол звена Б.
Вычисляют угловую поправку звена А для заданного угла звена Б и известного значения угла звена А к горизонту, интегрируя функцию удельной ошибки угла поворота звена А для заданного угла звена Б на участке между максимумом функции и заданным значением угла поворота звена А к горизонту.
Вносят изменения в кинематическую модель робота, при этом функция удельной ошибки угла поворота звена Б и набор функций удельной ошибки угла поворота звена А хранятся в программном обеспечении промышленного робота, а угловая поправка к звеньям А и Б рассчитывается при позиционировании робота.
Таким образом, при позиционировании робота с рабочей нагрузкой, углы поворота звеньев А и Б робота рассчитываются с учетом угловой поправки для этих звеньев, увеличивая точность позиционирования промышленного робота.
Осуществление третьего варианта изобретения.
Третий вариант изобретения является комбинацией второго и первого варианта.
Так же, как и во втором варианте, проводятся измерения, вычисляются функция удельной ошибки угла поворота звена Б от угла звена Б к горизонту и набор функций удельной ошибки угла поворота звена А от заданного угла звена А к горизонту для всех измеренных углов звена Б. Так же, как и во втором варианте, для вычисления поправок к углу для звеньев А и Б, для звена А сначала вычисляют функцию удельной ошибки угла поворота звена А для заданного угла звена Б путем интерполяции между двумя функциями из набора функций удельной ошибки угла поворота звена А, соответствующих двум, ближайшим к заданному, измеренным углам поворота звена Б, угловые поправки для звеньев А и Б вычисляют, интегрируя функцию удельной ошибки угла поворота соответствующего звена на участке между максимумом функции и заданным значением угла поворота звена к горизонту.
Подобно первому варианту для каждого звена А и Б вычисляют набор значений поправок к углу поворота для всех комбинаций углов поворота звеньев А и Б способом, описанным в предыдущем абзаце, затем вычисляют функции отклонения угла поворота для каждого звена А и Б от заданных углов поворота звеньев А и Б путем аппроксимации полученного набора значений поправок к углу поворота звеньев А и Б;
Как и в первом варианте изобретения вносят изменения в кинематическую модель робота с учетом полученных функций отклонения угла поворота звеньев А и Б, что приводит к повышению точности позиционирования промышленного робота.