- •П. К. Лопатин Интеллектуальные манипуляционные роботы
- •Предисловие
- •Введение
- •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. Иерархия уровней Управления роботами
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •Заключение
- •Учебное издание
- •Учебное пособие
2.4. Уравнение динамики манипулятора
Теперь мы готовы к тому, чтобы, подставив выражения (2.19) и (2.26) в систему уравнений (2.1), получить уравнение динамики манипулятора.
Распишем выражение для кинетической энергии (2.19) более подробно:
K = =
= =
= +
+ +...+
+ )=
= +
+ + (2.27)
+ +
+ +
+ + + +
+ + + }+...+
+ +
+ + +...+ +...+
+ + +...+ }.
Вычислим
= =
= =
= | учтем, что tr(AHST) = tr(SHAT) и что = 0 при k>i | =
= = (2.28)
При вычислении будем учитывать, что обобщенные скорости не входят в матрицы и Hi. На то, что в формуле (2.29) одни слагаемые написаны курсивом, а другие – обычным шрифтом, пока не обращаем внимания:
= + }
+ + +
+ + +
+ +
+ +...+
+
+ + (2.29)
+ +
+ + +...+
+
+ + +...+
+....+
+ + +...+
+ (2.29)
+ + +...+
Обращаем внимание, что если k = 1, то при дифференцировании остаются все фигурные скобки. Если k = 2, исчезает первая фигурная скобка и т.д. Если k = n, то исчезают все фигурные скобки, кроме последней. Если k совпадает с индексом обобщенной скорости, которую мы собираемся дифференцировать, то после дифференцирования останется 1, если не совпадает – останется 0.
Выпишем в формуле (2.29) члены, написанные не курсивом:
A = } +
+ + +
+ }+...+
+
+ +
+ + +...+
+ (2.30)
+....+
+ + +...+
= . (2.30)
Можно видеть, что члены формулы (2.29), написанные курсивом, равны соответствующим членам, написанным не курсивом. Поэтому
= . (2.31)
Вычислим :
= = =
= + = (2.32)
= + =
= + .
Можно также видеть, что
= 0 , k=1, ... , n (2.33)
и
= . (2.34)
Таким образом, уравнение динамики манипулятора принимает вид
+ –
– + =Qk, k=1,2,...,n. (2.35)
Введем обозначения:
= , (2.36)
= ( , (2.37)
, (2.38)
, (2.39)
ak(q, c) = , (2.40)
где с – вектор параметров манипулятора (длины звеньев, масса и моменты инерции звеньев и т.д.).
Теперь уравнение динамики манипулятора принимает вид
, k=1,...,n. (2.41)
Преобразуем первое слагаемое в (2.41):
= =
= + +...+
+ =
= + +...+ + +...+ =
= =|обозначим |= . (2.42)
Аналогично преобразуем второе слагаемое в (2.41):
= = , (2.43)
где = . (2.44)
Тогда уравнение динамики манипулятора принимает вид
+ + ak(q, c) = Qk, k=1,...,n, (2.45)
или построчно
. (2.46)
Введем обозначения:
A = , (2.47)
b(q, ,c) = = , (2.48)
Q = . (2.49)
Принимая во внимание обозначения (2.47)–(2.49), мы можем записать уравнение динамики манипулятора следующим образом:
A(q(t), c) (t) + b(q(t), (t), c) = Q(t). (2.50)
Запись (2.50) является общепринятой обобщенной формой записи уравнения динамики манипуляторов. Уравнение динамики устанавливает зависимость между вектором обобщенных координат q(t) и вектором обобщенных сил Q(t).
Мы вывели систему уравнений (2.50), называемых в робототехнике «уравнением динамики манипулятора». Если мы знаем, как изменяется (или как должен изменяться) вектор q(t), то по уравнению динамики можно узнать, как должны изменяться обобщенные силы Q(t), чтобы манипулятор отработал траекторию q(t). И наоборот, если мы знаем, как изменяется вектор Q(t), то, дважды проинтегрировав систему (2.50), можно вычислить q(t). Вычисление Q(t) по известному q(t) называется прямой задачей динамики, а вычисление q(t) по известному Q(t) называется обратной задачей динамики.