УПРАВЛЕНИЕ ПЕРЕМЕЩЕНИЕМ УПРУГИХ СТРУКТУР РОБОТА
CONTROLLING MOVEMENT OF ROBOT RESILIENT STRUCTURES

Изобретение относится к способу управления многоосным роботом, в частности окрасочным роботом, согласно независимому пункту формулы изобретения.
Из DE 10342471 A1 известно управление многоосным окрасочным роботом, перемещающим вершину инструмента (Tool Center Point (TCP)) вдоль заданной траектории робота. Эта известная система управления роботом для повышения точности позиционирования окрасочного робота может учитывать и компенсировать механическую упругость отдельных осей робота. При этом отдельные оси окрасочного робота управляются соответствующим регулятором осей, причем механическая упругость окрасочного робота учитывается таким образом, что отклонение регулируемой величины регулятора относительно упругой оси робота в рамках межосевой связи воздействует на регулятор относительно жесткой оси.
Эта известная система управления роботом уже оказалась целесообразной, однако для повышения точности позиционирования, в частности, при высокодинамических перемещениях робота желательно еще лучше учитывать и компенсировать механическую упругость окрасочного робота.
Из US 2004/0093119 A1 известна система управления роботом, корректирующая ошибки позиционирования робота, обусловленные трением, при регулировании приводов отдельных осей робота, причем заданная траектория робота все же не изменяется. Поэтому точность позиционирования робота в результате этого управления роботом улучшается в недостаточной степени, что, в частности, относится к высокодинамическому режиму работы робота.
Кроме того, в отношении уровня техники следует еще указать на документы DE 102004056861 A1; «Proceedings of the 2005 IEEE Conference on Control Algorithms», August 28-31, 2005, 1170-1175; «Proceedings of IFAC Symposium on Robot Control», September 19-21, 1994, стр.485-490; DE 69829559 T2; DE 102004008406 A1; «Proceedings of the 1992 IEEE Conference on Robotics and Automation», май 1992, стр.1429-1435; «Transactions on Control Systems Technology», Vol.12, No.6, ноябрь 2004, стр.904-919 и EP 1173801 B1. Однако даже при таком уровне техники точность позиционирования робота является неудовлетворительной.
Ближайшим аналогом настоящего изобретения может рассматриваться документ Wells R.L. - INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS: A STUDY OF PATH ERRORS DUE TO SERVO DYNAMICS AND LINK FLEXIBILITIES IN A TWO-COORDINATE ROBOTIC MANIPULATOR, PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON SYSTEMS, MAN AND CYBERNETICS. NEW YORK, 17 OCT. 1993 (1993-10-17), стр.705-709, который раскрывает способ управления многоосным роботом, однако данный способ не учитывает величины внутренних вращающих моментов и/или внешних вращающих моментов.
Поэтому в основу изобретения положена задача создания системы управления многоосным роботом, которая для повышения точности позиционирования робота как можно лучше компенсировала бы упругость робота.
Поставленная задача решается согласно изобретению способом управления роботом по независимому пункту формулы изобретения.
Изобретение содержит общее техническое решение для вычисления поправок траектории при управлении многоосным роботом, перемещающимся вдоль заданной траектории робота для учета упругости, трения и/или инерционности робота, так чтобы управление роботом с помощью соответствующей скорректированной траектории робота компенсировало динамические ошибки позиционирования (например, перерегулирование, упругий изгиб осей робота).
В рамках способа управления согласно изобретению для базовой точки робота, как, например, для так называемой Tool Center Point (TCP), траектория робота задается несколькими точками траектории, которые должны быть пройдены базовой точкой. При этом отдельные точки траектории, предпочтительно, определяются пространственными координатами, определяющими положение отдельных точек траектории в трех пространственных направлениях. Например, для каждой точки траектории может быть задан набор координат или вектор позиции с тремя координатами, указывающими положение соответствующей точки траектории в трехмерной декартовой системе координат.
Затем пространственные координаты отдельных точек заданной траектории робота в рамках способа управления согласно изобретению обычным образом преобразуются согласно обратной кинематике робота в соответствующие координаты осей, причем координаты осей отображают положение отдельных осей робота в соответствующих точках траектории. Преобразование пространственных координат в соответствии с обратной кинематикой робота в соответствующие координаты осей само по себе известно из уровня техники и поэтому не нуждается в дальнейшем описании. Преобразованные координаты осей отдельных точек траектории представляются затем, предпочтительно, в качестве векторов позиции в системе координат осей.
Затем преобразованные координаты осей отдельных точек траектории служат для управления регуляторами, привязанными к отдельным осям, что само по себе известно из уровня техники, как, например, из уже цитировавшейся вначале патентной заявки DE 10342471 A1.
Затем регуляторы, привязанные к отдельным осям робота, управляют приводными двигателями отдельных осей робота, так что базовая точка (например, Tool Center Point) последовательно проходит отдельные точки заданной траектории робота.
Изобретение в дополнение к вышеописанным шагам способа предусматривает, чтобы для отдельных точек траектории робота согласно динамической модели робота вычислялись поправки траектории, причем чтобы поправки траектории учитывали упругость, трение и/или инерционность робота и тем самым обеспечивали компенсацию динамических ошибок позиционирования.
Затем поправки траектории служат для вычисления скорректированных координат осей для отдельных точек заданной траектории робота. Предпочтительно, поправки траектории для вычисления скорректированных координат осей просто прибавляются к нескорректированным координатам осей соответствующих точек траектории, так что поправки обеспечивают смещение.
Затем, наконец, отдельные регуляторы, привязанные к осям, управляются с использованием скорректированных координат осей, благодаря чему динамические ошибки позиционирования компенсируются.
В предпочтительном примере выполнения изобретения для вычисления так называемых внутренних сил и вращающих моментов для движущихся масс робота предусмотрена динамическая модель робота, причем расчет, предпочтительно, происходит в режиме реального времени («Online») в соответствии с моделью недеформируемого тела.
При этом способ управления согласно изобретению, предпочтительно, предусматривает, чтобы нескорректированные координаты осей отдельных точек траектории преобразовывались в величины вращающего момента согласно динамической модели робота, причем чтобы величины внутренних вращающих моментов отображали внутренний вращающий момент приводных двигателей и соответствующих осей робота. Величины внутренних вращающих моментов, вычисленные таким путем, могут, например, учитывать статическую составляющую трения, вязкую составляющую трения и/или инерционность массы трансмиссии отдельных осей робота, как это еще будет описано подробно.
В этом примере выполнения изобретения поправки траектории вычисляются затем, предпочтительно, по внутренним вращающим моментам и известным внешним вращающим моментам, причем, предпочтительно, учитывается упругость отдельных осей робота, для чего отдельные оси робота в простейшем случае рассматриваются в качестве упругих элементов нулевого порядка, работающих на кручение. Тогда поправки траектории вытекают из соответствующей линейной зависимости между заданной постоянной упругого элемента нулевого порядка, работающего на кручение, и суммарными моментами в виде суммы внутренних и внешних вращающих моментов.
fric, stat
fric, stat
i
i
<mrow><msub><mover accent="true"><mi>q</mi><mo>˙</mo></mover><mi>i</mi></msub></mrow>
<mrow><msub><mi>M</mi><mrow><mi>f</mi><mi>r</mi><mi>i</mi><mi>c</mi><mo>,</mo><mtext> </mtext><mi>s</mi><mi>t</mi><mi>a</mi><mi>t</mi><mo>,</mo><mtext> </mtext><mi>i</mi></mrow></msub><mo>=</mo><msub><mi>f</mi><mi>i</mi></msub><msup><mrow /><mrow><mi>s</mi><mi>t</mi><mi>a</mi></mrow></msup><mo>⋅</mo><mi>sgn</mi><mrow><mo>(</mo><mrow><msub><mover accent="true"><mi>q</mi><mo>˙</mo></mover><mi>i</mi></msub></mrow><mo>)</mo></mrow></mrow>
sta
В рамках изобретения величины внутренних вращающих моментов содержат член M статического трения, отображающий трение, не зависящее от скорости, действующее в направлении вращения соответствующего приводного двигателя и которое может быть вычислено по знаку первой производной
нескорректированных координат осей точек траектории по времени и по заданной постоянной статического сопротивления. При этом член M статического трения вычисляется по постоянной f  статического трения и по нескорректированным координатам q осей по следующей формуле:
причем индекс i означает соответствующую ось робота.
fric, dyn
i
vis
<mrow><msub><mover accent="true"><mi>q</mi><mo>˙</mo></mover><mi>i</mi></msub></mrow>
Кроме того, величины внутренних вращающих моментов, вычисленные в рамках динамической модели робота, предпочтительно, содержат член M динамического трения, причем речь идет о линейном члене, действующем пропорционально скорости вращения соответствующего приводного двигателя. Член динамического трения может быть, например, вычислен по динамической постоянной f  трения и первой производной
нескорректированных координат осей точек траектории по времени по следующей формуле:
<mrow><msub><mi>M</mi><mrow><mi>f</mi><mi>r</mi><mi>i</mi><mi>c</mi><mo>,</mo><mtext> </mtext><mi>d</mi><mi>y</mi><mi>n</mi><mo>,</mo><mtext> </mtext><mi>i</mi></mrow></msub><mo>=</mo><msub><mi>f</mi><mi>i</mi></msub><msup><mrow /><mrow><mi>v</mi><mi>i</mi><mi>s</mi></mrow></msup><mo>⋅</mo><msub><mover accent="true"><mi>q</mi><mo>˙</mo></mover><mi>i</mi></msub></mrow>
inert
inert
i
<mrow><msub><mover accent="true"><mi>q</mi><mo>¨</mo></mover><mi>i</mi></msub></mrow>
Наконец, величины внутренних вращающих моментов, вычисленные в рамках динамической модели робота, предпочтительно, содержат также инерционный член M, отображающий механическую инерционность трансмиссии соответствующей оси робота и пропорциональный ускорению вращения соответствующего приводного двигателя. При этом инерционный член M может быть вычислен по второй производной
нескорректированных координат осей точек траектории по времени и по постоянной J по следующей формуле:
.
В предпочтительном примере выполнения изобретения учитывается температурная зависимость вышеупомянутых членов трения. Для этого в рамках способа управления согласно изобретению измеряется окружающая температура, причем параметры модели (например, статическая постоянная трения, динамическая постоянная трения и инерционная постоянная) в этом случае считываются из накопителя параметров в зависимости от измеренной температуры. Затем поправки траектории вычисляются с использованием считанных параметров динамической модели робота, т.е. с учетом текущей температуры. Это согласование с температурой динамической модели дает то преимущество, что в рамках способа управления согласно изобретению учитываются температурные зависимости механических характеристик робота.
i
i
i
i
i
i
sta
vis
sta
vis
«Внутренние» параметры f , f  и J, предпочтительно, экспериментально определяются для каждой оси с помощью специальной программы перемещения робота и метода оптимизации. При этом во время этого перемещения считываются создаваемые вращающие моменты двигателей приводов и одновременно вычисляются вращающие моменты двигателей, получающиеся только за счет масс двигателей. Для каждой результирующей разности моментов методом наименьших квадратов вычисляются внутренние параметры. Полученный набор параметров относится к текущей температуре ветви двигателя/передачи соответствующей оси. Рабочая температура робота подразделяется на дискретные шаги. Робот при перемещении последовательно нагревается. По достижении соответствующего очередного уровня температуры для определения параметров f , f  и J осуществляется вышеупомянутый метод идентификации, и одновременно записывается соответствующая температура. Таким образом, для каждой оси при каждом шаге температуры получают соответствующий набор параметров. Позднее во время работы для каждой оси циклически считывается текущая величина температуры, а после этого в режиме работы «online» устанавливается соответствующий набор параметров.
Затем с помощью вышеописанного вычисления величин внутренних вращающих моментов в соответствии с динамической моделью робота по величинам вращающих моментов и по известным внешним величинам вращающих моментов, как было упомянуто выше, вычисляются поправки траектории, причем, если за основу в качестве модели для отдельных осей робота взят соответствующий упругий элемент нулевого порядка, работающий на кручение, это вычисление в простейшем случае может производиться в соответствии с простой зависимостью между вращающим моментом и углом вращения. Однако, предпочтительно, поправки траектории вычисляются по величинам внутреннего вращающего момента с помощью пропорционального звена Р, пропорционального звена РТ1 и/или пропорционального звена РТ2, что обеспечивает оптимальное моделирование.
В предпочтительном варианте выполнения согласно изобретению координаты осей отдельных точек траектории, скорректированные с помощью поправок траектории, перед настройкой регуляторов, привязанных к осям, фильтруются для сглаживания координат осей. При этой фильтрации может быть получена, например, средняя или средневзвешенная величина. Кроме того, фильтрация может производиться с помощью фильтра, увеличивающего фазу, или фильтра FIR (FIR: Finite Impulse Response). Другими возможными типами фильтров для фильтрации скорректированных координат осей перед настройкой регуляторов, привязанных к осям, являются полосовые фильтры или фильтры нижних частот.
Кроме того, следует упомянуть, что изобретение не ограничивается вышеописанным способом управления, а включает также управление роботом с привязкой к аппаратным средствам, которое пригодно для осуществления этого способа управления и налажено соответствующим образом.
Наконец, изобретение предусматривает также многоосный робот, в частности окрасочный робот, управляемый с помощью такого управления в соответствии со способом управления согласно изобретению.
Другие усовершенствования изобретения охарактеризованы в зависимых пунктах формулы изобретения или более подробно поясняются ниже одновременно с описанием предпочтительного примера выполнения изобретения со ссылкой на фигуры, на которых
фиг.1 изображает схему системы управления роботом согласно изобретению для настройки многоосного окрасочного робота,
фиг.2А и 2В - способ управления в виде блок-схемы программы,
фиг.3 - вычислительный блок системы управления роботом на фиг.1 для вычисления поправок траектории по величинам внутренних вращающих моментов,
фиг.4 - диаграмма для вычисления внутреннего трения в зависимости от производной координат осей по времени,
фиг.5 - схема определения параметров динамической модели робота в рамках процесса калибровки,
фиг.6 - вариант фиг.5, в котором параметры модели вычисляются иным образом, а также
фиг.7 - вариант фиг.5, в котором ось робота для определения параметров динамической модели робота заторможена до остановки.
На фиг.1 изображена упрощенная схема системы управления роботом согласно изобретению для управления многоосным окрасочным роботом.
При этом отдельные оси робота приводятся в движение приводными двигателями 1, что известно из уже цитировавшейся вначале патентной заявки DE 10342471 A1.
При этом приводные двигатели 1 отдельных осей робота управляются соответствующими регуляторами осей 2 для отдельных осей робота с помощью заданной величины I тока, причем различные величины здесь и в дальнейшем характеризуют, соответственно, векторы, содержащие для отдельных осей роботов, соответственно, по одной компоненте.
Кроме того, система управления роботом согласно изобретению содержит интерполятор 3 траектории, входной величиной которого является траектория робота, заданная несколькими точками, причем базовая точка (Tool Center Point (TCP)) окрасочного робота должна проходить через отдельные точки траектории, которые должны определяться соответствующими трехмерными векторами позиции, причем отдельные компоненты вектора позиции отображают пространственные координаты точек траектории в трехмерной декартовой системе координат.
<mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
i
Затем интерполятор 3 траектории преобразует пространственные координаты отдельных точек траектории согласно заданной инверсной кинематике робота в координаты осей, отображающие положение отдельных осей окрасочного робота в соответствующих точках траектории. Таким образом, интерполятор траектории выдает многомерный вектор
позиции, причем число измерений соответствует числу осей робота, так что отдельные компоненты q вектора
позиции отображают положения отдельных осей окрасочного робота в соответствующих точках траектории.
<mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><mi>d</mi><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder><mo>/</mo><mi>d</mi><mi>t</mi></mrow>
<mrow><mi>d</mi><msup><mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow><mn>2</mn></msup><mo>/</mo><mi>d</mi><msup><mi>t</mi><mn>2</mn></msup></mrow>
<mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
Затем вектор
позиции подается в вычислительный блок 4, вычисляющий первую
и вторую производную
вектора
позиции по времени, т.е. скорость и ускорение в системе координат осей.
<mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><mi>d</mi><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder><mo>/</mo><mi>d</mi><mi>t</mi></mrow>
<mrow><mi>d</mi><msup><mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow><mn>2</mn></msup><mo>/</mo><mi>d</mi><msup><mi>t</mi><mn>2</mn></msup></mrow>
<mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><munder accentunder="true"><mi>M</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><msub><mrow><munder accentunder="true"><mi>M</mi><mo stretchy="true">_</mo></munder></mrow><mrow><mi>A</mi><mi>U</mi><mi>β</mi><mi>E</mi><mi>N</mi></mrow></msub></mrow>
<mrow><msub><mrow><munder accentunder="true"><mtext>M</mtext><mo stretchy="true">_</mo></munder></mrow><mrow><mtext>INNEN</mtext></mrow></msub></mrow>
<mrow><msub><mrow><munder accentunder="true"><mtext>M</mtext><mo stretchy="true">_</mo></munder></mrow><mrow><mtext>INNEN</mtext></mrow></msub></mrow>
Кроме того, система управления содержит динамическую модель 5 робота, реализованную с помощью программных средств, которая по вектору
позиции, отнесенному к оси, по первой
и второй производной
вектора
позиции по времени рассчитывает вектор
момента, который состоит из суммы внешнего вращающего момента
и внутреннего вращающего момента
, причем внутренний вращающий момент
учитывает трение и инерционность отдельных осей робота и вычисляется по следующей формуле:
<mrow><msub><mrow><munder accentunder="true"><mtext>M</mtext><mo stretchy="true">_</mo></munder></mrow><mrow><mtext>INNEN</mtext><mtext>, i</mtext></mrow></msub><mo>=</mo><msub><mi>f</mi><mi>i</mi></msub><msup><mrow /><mrow><mi>s</mi><mi>t</mi><mi>a</mi></mrow></msup><mo>⋅</mo><mi>sgn</mi><mrow><mo>(</mo><mrow><msub><mi>q</mi><mi>i</mi></msub></mrow><mo>)</mo></mrow><mo>+</mo><msup><mi>f</mi><mrow><mi>v</mi><mi>i</mi><mi>s</mi></mrow></msup><mo>⋅</mo><msub><mover accent="true"><mi>q</mi><mo>˙</mo></mover><mi>i</mi></msub><mo>+</mo><msub><mi>J</mi><mi>i</mi></msub><mo>⋅</mo><msub><mover accent="true"><mi>q</mi><mo>¨</mo></mover><mi>i</mi></msub></mrow>
<mrow><munder accentunder="true"><mtext>M</mtext><mo stretchy="true">_</mo></munder><mo>=</mo><msub><mrow><munder accentunder="true"><mtext>M</mtext><mo stretchy="true">_</mo></munder></mrow><mrow><mtext>AU</mtext><mi>β</mi><mtext>EM</mtext></mrow></msub><mo>+</mo><msub><mrow><munder accentunder="true"><mtext>M</mtext><mo stretchy="true">_</mo></munder></mrow><mrow><mtext>INNEN</mtext></mrow></msub></mrow>
<mrow><munder accentunder="true"><mi>M</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><mi>Δ</mi><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><mi>Δ</mi><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><munder accentunder="true"><mi>M</mi><mo stretchy="true">_</mo></munder></mrow>
Затем вектор
момента подается на вычислительный блок 6, вычисляющий по вектору
момента вектор
поправки траектории, который затем используется для корректировки траектории, как это еще будет описано подробно. При этом вектор поправки
траектории вычисляется по вектору
момента по следующей формуле:
<mrow><mi>Δ</mi><msub><mi>θ</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>s</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><msub><mi>M</mi><mi>i</mi></msub></mrow><mrow><msup><mi>s</mi><mn>2</mn></msup><mo>⋅</mo><mi>θ</mi><mo>+</mo><mi>s</mi><mo>⋅</mo><mi>D</mi><mo>+</mo><mi>K</mi></mrow></mfrac></mrow>
<mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><mi>Δ</mi><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><msub><mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow><mrow><mtext>KORR</mtext></mrow></msub></mrow>
<mrow><msub><mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow><mrow><mtext>KORR</mtext></mrow></msub></mrow>
Затем нескорректированный вектор
позиции вместе с вектором
поправки траектории подается в сумматор 7, вычисляющий скорректированный вектор
позиции, причем скорректированный вектор
позиции компенсирует динамические отклонения траектории при управлении роботом.
<mrow><msub><mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow><mrow><mtext>KORR</mtext></mrow></msub></mrow>
<mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder><msub><mo>*</mo><mrow><mtext>KORR</mtext></mrow></msub></mrow>
<mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder><msub><mo>*</mo><mrow><mtext>KORR</mtext></mrow></msub></mrow>
Затем скорректированный вектор
позиции для своего сглаживания подается в фильтр 8. Таким образом, фильтр 8 выдает сглаженный вектор
позиции, причем отдельные компоненты скорректированного и сглаженного вектора
позиции подаются в отдельные регуляторы 2 осей для отдельных осей робота.
Блок-схема на фиг.2А и 2В поясняет рабочий способ вышеупомянутого управления роботом.
При первом шаге S1 интерполятору 3 задается траектория из нескольких точек, через которые базовая точка (Tool Center Point (TCP)) окрасочного робота должна последовательно пройти, причем отдельные точки заданной траектории определены в пространственных декартовых координатах.
<mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
Затем пространственные координаты отдельных точек траектории при шаге S2 преобразуются интерполятором 3 траектории в соответствующие координаты
осей, причем координаты осей отображают положение отдельных осей робота в отдельных точках траектории.
<mrow><mi>d</mi><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder><mo>/</mo><mi>d</mi><mi>t</mi></mrow>
<mrow><mi>d</mi><msup><mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow><mn>2</mn></msup><mo>/</mo><mi>d</mi><msup><mi>t</mi><mn>2</mn></msup></mrow>
<mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
Затем при следующем шаге S3 вычислительное устройство 4 вычисляет первую
и вторую производную
вектора
позиции по времени в координатах осей.
Кроме того, при шаге S4 измеряется окружающая температура Т, поскольку динамическая модель 5 робота зависит от температуры, как это еще будет описано подробно.
i
i
i
sta
vis
Шаг S5 предусматривает, чтобы в зависимости от предварительно измеренной окружающей температуры Т параметры динамической рабочей модели 5 затем считывались из накопителя параметров, причем речь в случае параметров модели идет о статической постоянной f  трения, динамической постоянной f  трения и об инерционной постоянной J.
<mrow><munder accentunder="true"><mi>M</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><msub><mrow><munder accentunder="true"><mtext>M</mtext><mo stretchy="true">_</mo></munder></mrow><mrow><mtext>INNEN</mtext></mrow></msub></mrow>
<mrow><msub><mrow><munder accentunder="true"><mtext>M</mtext><mo stretchy="true">_</mo></munder></mrow><mrow><mtext>AU</mtext><mi>β</mi><mtext>EN</mtext></mrow></msub></mrow>
Затем при шаге S6 в динамической модели 5 робота для учета трения и инерционности робота вычисляется суммарный момент
как сумма внутреннего момента
и внешнего момента
.
<mrow><munder accentunder="true"><mi>M</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><mi>Δ</mi><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
Затем шаг S7 предусматривает, чтобы суммарный момент
, вычисленный в соответствии с динамической моделью робота, пересчитывался в соответствии с упругостью осей робота в соответствующие поправки
траектории для отдельных точек траектории в координатах осей.
<mrow><msub><mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow><mrow><mtext>KORR</mtext></mrow></msub></mrow>
<mrow><mi>Δ</mi><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
Затем при шаге S8 вычисляются скорректированные координаты
осей отдельных точек траектории, для чего сумматор 7 прибавляет поправки
траектории к нескорректированным координатам
осей.
<mrow><msub><mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow><mrow><mtext>KORR</mtext></mrow></msub></mrow>
Кроме того, шаг S9 предусматривает, чтобы скорректированные координаты
осей в целях сглаживания отфильтровывались фильтром 8.
<mrow><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder><msub><mo>*</mo><mrow><mtext>KORR</mtext></mrow></msub></mrow>
Кроме того, при шаге S10 осуществляется настройка отдельных регуляторов 2 осей со скорректированными и с отфильтрованными координатами
осей.
Наконец, затем при шаге S11 осуществляется регулирование отдельных приводных двигателей 1 отдельных осей с помощью регуляторов 2 осей.
<mrow><munder accentunder="true"><mi>M</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><mi>Δ</mi><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><munder accentunder="true"><mi>M</mi><mo stretchy="true">_</mo></munder></mrow>
<mrow><mi>Δ</mi><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
На фиг.3 изображен пример выполнения вычислительного блока 6 на фиг.1, вычисляющего по вектору
момента вектор поправки
траектории. В этом примере выполнения вычислительный блок 6 состоит из пропорционального звена Р 9, пропорционального звена РТ1 10, пропорционального звена РТ2 11 и сумматора 12, причем пропорциональное звено Р 9, пропорциональное звено РТ1 10, пропорциональное звено РТ2 11 со стороны входа принимают вектор
момента, а со стороны выхода соединены с сумматором 12, суммирующим для вычисления вектора поправки
траектории выходные сигналы пропорционального звена Р 9, пропорционального звена РТ1 10 и пропорционального звена РТ2 11.
Пропорциональное звено Р само по себе известно из уровня техники и обозначается как пропорциональное звено Р. Таким образом, пропорциональное звено 9 имеет пропорциональную переходную характеристику.
Пропорциональное звено РТ1 известно из уровня техники и имеет пропорциональную переходную характеристику с запаздыванием первого порядка.
Наконец, пропорциональное звено РТ2 также известно из уровня техники и имеет пропорциональную переходную характеристику с запаздыванием второго порядка.
<mrow><mi>Δ</mi><msub><munder accentunder="true"><mi>θ</mi><mo>_</mo></munder><munder accentunder="true"><mi>i</mi><mo>_</mo></munder></msub></mrow>
<mrow><mi>Δ</mi><munder accentunder="true"><mi>θ</mi><mo stretchy="true">_</mo></munder></mrow>
Таким образом, отдельные компоненты
вектора поправки
траектории вычисляются вычислительным блоком 6 как следующая передаточная функция:
<mrow><mi>Δ</mi><msub><mi>θ</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>s</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><msub><mi>M</mi><mi>i</mi></msub></mrow><mrow><msup><mi>s</mi><mn>2</mn></msup><mo>⋅</mo><mi>θ</mi><mo>+</mo><mi>s</mi><mo>⋅</mo><mi>D</mi><mo>+</mo><mi>K</mi></mrow></mfrac></mrow>
fri
fric
fric
<mover accent="true"><mi>q</mi><mo>˙</mo></mover>
На фиг.4 изображена диаграмма для вычисления внутреннего момента M в зависимости от первой производной
координат осей по времени. Из нее видно, что к моменту M трения в мертвой зоне вокруг нулевой точки имеет место особый подход, для чего величины момента M трения от начала до конца мертвой зоны интерполируются линейно.
На фиг.5 в упрощенном виде показано вычисление вышеупомянутых параметров динамической модели робота. При этом в качестве примера изображена лишь одна единственная ось 13 робота с концевым эффектором 14 и соединительным элементом 15 передачи.
Соединительный элемент 15 передачи с помощью приводного двигателя через возбудитель 16 может активироваться нестационарно, периодически или стохастически.
Затем у концевого эффектора 14 с помощью измерительного блока 17 измеряется и передается на блок 18 обработки данных отклонение, причем блок 18 обработки данных для расчета механической переходной характеристики оси 13 робота подвергает измеренное отклонение концевого эффектора анализу Фурье или корреляционному анализу.
Изображение на фиг.6 в значительной степени совпадает с изображением на фиг.5, так что во избежание повторов делается ссылка на вышестоящее описание фиг.5.
Особенность этого примера выполнения заключается в том, что измерительный блок 17 со стороны выхода соединен с анализатором 19, сравнивающим измеренное отклонение с критерием качества и осуществляющим соответствующую поправку в корректирующем блоке 20. Корректирующий блок 20, в свою очередь, соединен со схемой 21 вычислений, воздействующей на критерий качества анализатора 19.
Наконец, на фиг.7 изображен вариант фиг.5, причем концевой эффектор 14 при этом тормозится до остановки. При этом возбудитель 16 проворачивает приводной двигатель пошаговым образом дальше и при этом для расчета жесткости пружины оси 13 измеряет вращающий момент приводного двигателя.
Изобретение не ограничивается вышеописанным предпочтительным примером выполнения. Более того, возможно множество вариантов и модификаций, использующих идею изобретения и подпадающих под его объем охраны.
ПЕРЕЧЕНЬ ПОЗИЦИЙ
1. Приводные двигатели
2. Регулятор осей
3. Интерполятор траектории
4. Вычислительный блок
5. Модель робота
6. Вычислительный блок
7. Сумматор
8. Фильтр
9. Пропорциональное звено Р
10. Пропорциональное звено РТ1
11. Пропорциональное звено РТ2
12. Сумматор
13. Ось робота
14. Концевой эффектор
15. Соединительный элемент передачи
16. Возбудитель
17. Измерительный блок
18. Блок обработки данных
19. Анализатор
20. Корректирующий блок
21. Схема вычислений