- •П. К. Лопатин Интеллектуальные манипуляционные роботы
- •Предисловие
- •Введение
- •1. Кинематика манипуляторов
- •1.1. Манипулятор как система твердых тел
- •1.2. Кинематика произвольного движения тела,
- •1.3. Кинематика поступательного движения тела
- •1.4. Кинематика произвольного движения твердого тела
- •1.5. Характер связей между звеньями
- •1.6. Расстановка систем координат по алгоритму Денавита-Хартенберга
- •1.7. Вывод матрицы перехода от I-й к (I–1)-й системе координат
- •1.8. Уравнение кинематики манипулятора
- •1.9. Скорость и ускорение некоторой точки манипулятора
- •Правая часть (1.45), если k j, k I;
- •0, Если k j.
- •1.10. Прямая задача кинематики
- •1.11. Обратная задача кинематики
- •Примеры решения задач
- •Разделим уравнение (1.71) на (1.72). Получим
- •Задачи для самостоятельного решения
- •Библиографический список
- •2.1. Уравнения Лагранжа II рода
- •2.2. Кинетическая энергия манипулятора
- •Поскольку интеграл – это сумма, то формулу (2.3) можно записать в виде уравнения
- •Из (1.36) следует, что
- •Из формулы (1.42) видно, что
- •2.3. Потенциальная энергия манипулятора
- •2.4. Уравнение динамики манипулятора
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •3. Планирование путей, траекторий и управление манипуляторами
- •3.1. Понятие пространства обобщенных координат.
- •Постановки задачи
- •3.2. Планирование пути методом полиномиальной аппроксимации
- •Решая эту систему, получим
- •3.3. Планирование пути с учетом ограничений на положение, скорость и ускорение
- •3.4. Планирование траектории с учетом динамики манипулятора
- •Библиографический список
- •3.5. Исполнение траектории
- •Библиографический список
- •Библиографический список
- •3.6.1. Алгоритм полного перебора
- •Библиографический список
- •3.6.2. Алгоритм перебора в глубину
- •3.6.3. Алгоритм а*
- •Библиографический список
- •3.6.4. Алгоритм фронта волны
- •Библиографический список
- •3.6.5. Алгоритм полиномиальной апроксимации
- •Библиографический список
- •3.6.6. Диаграммы вороного
- •Библиографический список
- •3.6.7. Алгоритм разделения ячеек
- •1. Предварительный поиск маршрута
- •2. Разделение плоскости на свободные области
- •3. Соединение свободных областей
- •4. Объединение свободных соединенных областей
- •5. Соединение свободных областей на соседних плоскостях
- •6. Создание объединенных областей и проверка достижимости
- •7. Построение маршрута
- •8. Пример
- •Библиографический список
- •Примеры решения задач
- •3.7. Управление манипуляторами в среде с неизвестными препятствиями
- •Библиографический список
- •Алгоритм
- •3.8. Иерархия уровней Управления роботами
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •Заключение
- •Учебное издание
- •Учебное пособие
Библиографический список
1. Моисеев, Н. Н. Элементы теории оптимальных систем [Текст] / Н. Н. Моисеев. – М.: Наука, 1975. – 526 с.
2. Понтрягин, Л. С. Принцип максимума в оптимальном управлении [Текст] / Л. С. Понтрягин. – М.: Наука, 1989. – 60 с.
3.5. Исполнение траектории
Предположим, что мы нашли траекторию q(t), которую манипулятор должен исполнить, и управляющие силы Q(t), которые двигатели должны приложить к звеньям, чтобы они отработали требуемую траекторию. По уравнению привода можно вычислить токи, подаваемые на двигатели. То есть мы могли бы действовать в соответствии со схемой (см. рис. 2). Однако вследствие того, что уравнения динамики и привода лишь приближенно описывают реальные процессы, происходящие в манипуляторе, и звенья в процессе движения подвергаются различного рода возмущающим воздействиям, в действительности мы получим, что реальная траектория qр(t) не будет равна желаемой qж(t). Но нам необходимо, чтобы qр(t) qж(t), или, в других обозначениях,
e(t) = qж(t) – qр(t) 0, (3.92)
где e(t) – рассогласование между qж(t) и qр(t).
Следовательно, нам надо построить такую управляющую систему (регулятор), чтобы она обеспечивала e(t) 0.
Опишем одну идею [1], позволяющую рассчитать управляющие токи так, чтобы ошибка в исполнении желаемой траектории стремилась к нулю. Будем считать, что привод описывается уравнением:
p(t) = D1 p(t) + D2up(t) + D3Mн(qр(t), р(t), c), (3.93)
где Dj – diag(d1j, ..., dnj) – диагональные матрицы размерности n × n, элементы которых выражаются через параметры приводов; Mн(q(t), (t), c) – n-мерный вектор нагрузок на выходных валах приводов, определяемый согласно формуле (5.2) [1]; u(t) – n-мерный вектор обобщенных сил, развиваемых приводами.
Уравнение (3.93) описывает определенный класс приводов с двигателями постоянного тока с независимым возбуждением [1].
Уравнение динамики манипулятора (2.50) запишем в скорректированном виде [1]:
Â(qp(t), c) р(t) +ß(qp(t), р(t), c) = up(t). (3.93а)
Здесь
Â(qp(t), c)= A(qp(t), c)+J1д,
где J1д – диагональная матрица моментов инерции (масс) перемещающихся частей (роторов) двигателей, умноженных на квадраты передаточных отношений, ß(qp(t), р(t), c)= b(qp(t), p(t), c)-MT-MВ, где MT и MВ – векторы моментов сопротивления, создаваемых силами трения, и внешних моментов на валах нагрузки (см. формулу (5.2) [1]).
Будем подавать на привод vр(t) такое, что
p(t) = D1 p(t) + D2{ Â(qp(t), c)[ ж(t) + Г1( p(t) – ж(t)) +
+ Г0(qp(t) – qж(t))] + ß(qp(t), p(t), c)} + D3Mн(qp(t), p(t), c), (3.94)
где Г0 = diag(10, ..., n0), Г1 = diag(11, ..., n1) – диагональные матрицы размерности n x n, ij < 0, i=1,...,n, j=0,1.
Вектор v(t) можно вычислить из (3.94) по известной формуле
v(t) = v(t0) + (t)dt. (3.95)
Покажем, что если мы хотим исполнить траекторию qж(t) и будем подавать на приводы токи v(t), вычисленные по формулам (3.94) и (3.95), то e(t) 0.
Подставим правую часть (3.94) в левую часть (3.93), получим
D1 p(t) + D2{ Â(qp(t), c)[ ж(t) + Г1( p(t) – ж(t)) +
+ Г0(qp(t) – qж(t))] + ß(qp(t), p(t), c)} + D3Mн(qp(t), p(t), c) =
= D1 р(t) + D2uр(t) + D3Mн(qр(t), р(t), c). (3.96)
После сокращений
Â(qp(t), c)[ ж(t) + Г1( p(t) – ж(t)) +
+ Г0(qp(t) – qж(t))] + ß(qp(t), р(t), c) = up(t). (3.97)
В правую часть (3.97) подставим левую часть (3.93а), получим
Â(qp(t), c)[ ж(t) + Г1( p(t) – ж(t)) +
+ Г0(qp(t) – qж(t))] + ß(qp(t), р(t), c) = Â(qp(t), c) р(t) +
+ ß(qp(t), р(t), c). (3.98)
После сокращений получаем
( ж(t) – р(t)) + Г1( p(t) – ж(t)) + Г0(qp(t) – qж(t)) = 0, (3.99)
или
(t) – Г1 (t) – Г0e(t) = 0. (3.100)
Уравнение (3.100) для i-й обобщенной координаты имеет вид
i(t) – i1 i(t) – i0ei(t) = 0, i=1,…,n. (3.101)
Как известно, для уравнения (3.101) можно записать характеристическое уравнение в виде
2 – i1 – i0 = 0. (3.102)
Если характеристическое уравнение имеет простые корни 1i и 2i, то решение уравнения (3.101) имеет вид
ei(t) = , (3.103)
если же характеристическое уравнение имеет кратный корень 0i, то решение уравнения (3.101) имеет вид
ei(t) = , (3.104)
Можно показать, что если i1, i0 отрицательны, то корни уравнения (3.102) также будут отрицательны, а значит, с течением времени ei(t) 0, что нам и требуется. Постоянные c1i и c2i определить можно, так как известны ei(t0) и i(t0), i=1,2,…,n.
Итак, мы показали, что если на приводы подавать токи v(t), вычисляемые согласно формулам (3.94) и (3.95), то e(t) 0 и qр(t) qж(t).
В связи с этим изменится схема управления манипуляторами. Во введении (см. рис. 2) мы дали схему управления манипуляторами, которая называется «схемой без обратной связи». Такая схема не способна корректировать исполняемую траекторию, ее надо изменить. Мы видим, что при вычислении управляющих токов по формуле (3.94) необходимо знать как желаемые траекторию, скорость и ускорение, так и действительные их значения, а также действительные значения управляющих сил, прилагаемых двигателями к звеньям. Эти значения будут подаваться в управляющую систему через датчики обратной связи (рис. 3.4). Такая схема называется схемой управления манипуляторами с обратной связью.
В данной главе мы рассмотрели способ исполнения траектории для определенного класса электроприводов. Более подробный и углубленный анализ вопросов исполнения траектории приведен в [1, 2].
q(t) qp(t)
(t) vp(t) up(t) (t)
(t) (t)
up(t)