Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Учебное пособие 1942

.pdf
Скачиваний:
13
Добавлен:
30.04.2022
Размер:
3.06 Mб
Скачать

 

P(k)j , s ( t s ) = P(k)

j , s +1, ( t s )

(3.38)

при k = 0 , ... , -1,

s = 1, 2 , ... , m-1.

 

 

Всего имеется

m ( +1) неизвестных aj,s в выражении (3.37), а соотношения (3.38) обра-

зуют систему из (m-1) уравнений.

 

 

Остальные уравнения для коэффициентов получаются из условия близости к заданной функции и других условий. Простейшей задающей функцией может быть ступенчатый входной сигнал

qj (t )= aj , s 0 = qj , s - 1 , ts-1< t < ts, (3.39)

не удовлетворяющий условиям непрерывности (3.38). Возможность использования такого входного сигнала определяется свойствами привода и требованиями к качеству переходного движения.

Простейшей функцией, удовлетворяющей условию непрерывности, может быть линейный сплайн ( =1). Общее число свободных параметров равно 2m .

Кроме m-1 условий непрерывности потребуем совпадения значений сплайна с q j (t) в точ-

ках t0, t1, t2, tm-1, tm:

Pj,11(t0) = qj0, Pj,s1(ts) = q j,s, s = 1, 2, ... , m. (3.40)

Это дает недостающие m+1 условий. В итоге находим выражения для коэффициентов:

aj , s 1

= (qj , s - qj , s - 1 )/(ts -ts - 1 ),

 

(3.41)

 

 

91

 

 

 

aj , s 0 = qj , s - 1 - aj , s 1 t s - 1 , s = 1,..., m,

а задающий сигнал имеет вид

qj (t )= aj , s 0 +aj , s 1 t, t s - 1 < t < ts , s = 1, 2, ... , m. (3.42)

Исполнительный механизм робота с приводами представляет собой динамическую систему, которая способна отрабатывать достаточно плавные задающие сигналы. Вместе с тем рассчитанный кусочно-линейный входной сигнал при точном его выполнении порождает резкие импульсы ускорений и, следовательно, перегрузок. Поэтому для улучшения качества управления целесообразно использовать сплайны более высокого порядка. Интерполяция траектории кубическими полиномами, обеспечивающими непрерывность первых двух производных в узловых точках, называется кубическим сплайном. Преимуществом такой интерполяции является то, что относительно низкая степень полинома сокращает вычислительные затраты и в то же время задающие сигналы являются достаточно плавными.

Кубический сплайн записывается следующим образом:

Pj,s3(t)=aj,s0+aj,s1 t+aj,s2 t2+aj,s3 t3, ts-1<t<ts. (3.43)

Число параметров a j ,s , подлежащих определению, равно 4m, а число условий пока равно 3m-1: 2m условий непрерывности и приближения

Pj , s3 (ts)=Pj ,s+1 ,3

(ts),

s = 1, 2, ... , m-1,

(3.44)

 

 

 

Pj ,13 (t0 )=q j,0 ,

Pj,s3 (ts)=qj ,s, s = 1, 2, ... , m

 

92

и m-1 условий непрерывности первой производной

.

.

 

 

 

Pj , s3 (ts)=Pj ,s+1 ,3 (ts),

s = 1, 2, ... , m-1.

(3.45)

Кроме этого, имеется m-1 условий непрерывности ускорений

 

 

..

..

 

 

 

Pj , s3 (ts)=Pj ,s+1 ,3 (ts),

s = 1, 2, ... , m-1,

(3.46)

а также требуемые граничные условия.

Если никаких дополнительных условий на концах траектории не накладывается, то принимаются следующие граничные условия:

.. ..

Pj , 1 3 (t0 )=Pj , m 3 (tm )=0. (3.47)

Однако необходимо учитывать практические потребности. Если движение начинается из состояния покоя и заканчивается состоянием покоя, то прежде всего необходимо потребовать наложения условий на начальную и конечную скорость

. .

Pj , 1 3 (t0 )=Pj , m 3 (tm ) = 0,

(3.48)

но тогда ограничение на ускорения (3.47) в общем случае не будет выполняться. Одновременное выполнение условий (3.47) и (3.48) в общем случае невозможно при использовании только кубических сплайнов: ограничений оказывается больше, чем определяемых параметров. По-

93

этому задачу решают с граничными условиями (3.48), а возникающие при этом ненулевые ускорения можно устранить путем добавления к первому и последнему сплайнам специальных функций. Например, вместо Pj , 1 3 (t) и Pj , m 3 (t) можно взять на первом и последнем отрезках траектории многочлены пятого порядка

Pj , 1 5 (t)=Pj , 1 3 (t )+cj 1 (t -t0 )2 (t1

-t )3 /(t1 - t0 )3 ,

(3.49)

 

 

 

Pj , m 5 (t )=Pj , m 3 (t)+cj m (tm -t )2 (t -t m - 1 )3 /(t m -t m - 1 )3 ,

 

. .

. .

 

 

где cj 1 =-Pj , 1 3 (t0 )/ 2,

cj m =-Pj , m 3

(t m )/ 2 .

(3.50)

Эти функции не нарушают предыдущих ограничений, но обеспечивают также и выполнение условия (3.47).

Сплайн-функции задающих сигналов приводов строятся для каждой степени подвижности. Затем проверяется, правильно ли назначены продолжительность Т управления и разбиение этого интервала на отрезки [ts - 1 , ts ]. Для этого нужно определить максимально-допустимую скорость и, если это необходимо, максимальное ускорение каждой степени подвижности.

Первое приближение для узлов интерполяции ts определяется из формулы

 

ts = ts - 1 + max(|qj s -qj , s - 1 |)/ j m a x ), t0 = 0,

(3.51)

где j max - максимально-допустимая скорость j-го привода.

Если после построения кубических сплайнов на каком-либо отрезке сплайн-функция имеет скорости и (или) ускорения, превосходящие допустимые, то такой отрезок соответственно

94

увеличивается. Затем для нового интервала [0,T ] и нового его разбиения на отрезки [ts - 1 , ts ] повторяется построение сплайн-функций, т.е. задающие функции строятся методом последовательных приближений.

Формирование задающих сигналов занимает от десятых долей секунды до нескольких секунд в зависимости от мощности ЭВМ и используемого языка программирования. После этого задающие функции подаются в реальном масштабе времени на исполнительный уровень для реализации запланированного движения.

95

4. ДИНАМИЧЕСКОЕ УПРАВЛЕНИЕ МАНИПУЛЯТОРАМИ

4.1. Постановка задачи управления

Сформулируем задачу управления для манипуляционных роботов. Проведем синтез алгоритмов управления, которые должны обеспечить решение этой задачи.

Задание роботу обычно формулируется с использованием координат его рабочего органа в абсолютной системе координат пространства. В качестве такой системы примем прямоугольную систему c осями Ox1, Ox2, Ox3, показанными на рис. 1.1 1.4. Связь между вектором X(t) координат рабочего органа и вектором q(t) обобщенных кординат задается соотношением (2.1).

Исходя из (2.1), система управления должна вычислить вектор q(t), который соответствует

96

заданному вектору X(t). Эта задача решается на тактическом уровне управления. Рассчитанный вектор q(t) передается на исполнительный уровень управления. Последний уровень вырабатывает команды на приводы сочленений, которые обеспечивают отработку переменных q(t).

В настоящей главе рассмотрим синтез управления на исполнительном уровне с учетом динамики манипулятора (динамическое управление).

При определении задачи управления возникает ряд вопросов.

1.Должен ли робот отслеживать заданную траекторию или требуется лишь фиксировать рабочий орган манипулятора в некоторых определенных положениях в пространстве? В зависимости от ответа на этот вопрос различают контурное или позиционное управление.

2.Должен ли робот при движении вдоль заданной траектории отрабатывать определенный профиль скорости, т.е. должна ли скорость схвата изменяться в соответствии с заданной траекторией?

3.Если схват должен отслеживать заданную траекторию, а его скорость - изменяться в соответствии с заданным законом, то каковы допустимые отклонения действительного состояния робота от заданной номинальной траектории?

4.Являются ли все параметры манипулятора точно известными или некоторые из них переменны и неизвестны (например, масса переносимых грузов может изменяться в определенных пределах)?

В зависимости от ответов на эти вопросы можно поставить различные задачи управления.

97

Большинство роботов, используемых в настоящее время в промышленности, не предназначено для отработки заданной траектории в пространстве и не способно адаптироваться к изменению параметров.

Система управления такими роботами обеспечивает позиционирование рабочего органа в некоторых определенных точках декартового пространства. Точки, заданные в декартовых координатах X(t) , на тактическом уровне преобразуются в соответствующие обобщенные координаты q(t), а на исполнительном уровне производится управление положением робота от точки к точке, т.е. позиционное управление.

Такое управление приемлемо для решения многих простых задач на производстве. Однако в ряде сложных производственных задач необходимо обеспечивать желаемые скорости и ускорения рабочего органа робота при движении его вдоль заданной траектории (например, при сварке или транспортировке жидкостей). Поэтому в современной робототехнике предъявляются все более и более жесткие требования к эксплуатационным характеристикам роботов.

Наиболее общей задачей робототехники является задача обеспечения практической устойчивости робота вблизи заданной траектории, т.е. контурного управления. Рассмотрим такую задачу.

Пусть тактический уровень обеспечивает исполнительный уровень номинальными траекториями Yзад(t), соответствующими номинальным траекториям обобщенных координат qзад(t), их первым q зад(t) и вторым q зад(t) производным, которые, в свою очередь, соответствуют за-

данным траекториям Xзад(t) рабочего органа, их первым X зад(t) и вторым X зад(t) производным.

98

В общем случае невозможно обеспечить реализацию номинальной траектории без ошибки позиционирования, скорости или ускорения; c другой стороны, всегда допускаются некоторые

отклонения

(t ) от траектории. Обозначим через x(t)

множество допустимых отклонений ко-

ординат X(t)

рабочего органа от заданных значений,

аналогично обозначим через x v (t ) и

x a (t ) соответственно множества допустимых отклонений скоростей и ускорений рабочего ор-

гана. На основе соотношения (2.1) можно отобразить множество

x (t )

из декартового про-

странства в соответствующее множество

q (t ) пространства обобщенных координат:

 

 

 

 

F- 1 [ x (t )]

q (t )

, t

To ,

 

(4.1)

 

где To —интервал времени, за который отрабатывается номинальная

 

траектория.

 

 

 

 

 

 

Аналогично, используя (2.1), можно отобразить множества

допустимых отклонений

x v (t ) и

x a (t) на соответствующие множества допустимых отклонений скоростей

q v (t)

и ус-

корений

q a (t) обобщенных координат от заданных значений q зад(t) и q зад(t).

 

 

 

 

 

 

 

 

 

 

Используя соотношение (1.86) между обобщенной координатой qj (t ) робота и вектором

состояния yj (t) соответствующего привода, можно отобразить области

q (t), q v (t )

и

q a (t)

в области

y j (t ) в пространствах состояния подсистем, которые составляют область

y (t):

 

 

 

G- 1 [ q (t ), q v (t ),

q a (t )]

y (t).

 

(4.2)

Необходимо отметить, что область

y (t) определяется не только допустимыми отклоне-

ниями координат рабочего органа от номинальной траектории за счет погрешностей при отсле-

99

живании заданной траектории; эта область ограничивается также за счет препятствий в рабочем пространстве и различных ограничений кинематических параметров манипулятора. Множества

q v (t ) и q a (t) ограничиваются также возможностями приводов.

С учетом этих ограничений определяется область Y(t) в окрестности номинальных траекторий координат состояний приводов yзад(t), которой должно принадлежать состояние системы

при отслеживании yзад(t). (Номинальные траектории yзад(t) = {yзад1(t), yзад2(t), ..., yзадj(t),..., yзадn(t)}т координат состояния соответствуют желаемым траекториям обобщенных координат

qзад j (t), их первых q зад j (t) и вторых q зад j (t) производных).

Начальное состояние y(0) в момент времени t = 0 должно принадлежать некоторой области в пространстве состояний Y(0). Рассматриваемые области Y(t), Y(0), заданная yзад j (t) и фактическая y(t) траектории координат состояний приводов изображены на рис. 4.1.

Y(t)

y(t)

yзад(t)

Y(0)

 

 

100