Вычислите строения соединений, чтобы достичь положения end-effector
Алгоритмы Robotics System Toolbox/Manipulator
Блок Inverse Kinematics использует обратный кинематический (IK) решатель, чтобы вычислить строения соединений для желаемого положения end-effector на основе заданной модели древовидного твердого тела. Создайте модель древовидного твердого тела для вашего робота с помощью rigidBodyTree
класс. Модель древовидного твердого тела задает все ограничения соединений, которые применяет решатель.
Задайте RigidBodyTree
параметр и требуемый концевой эффектор внутри маски блока. Можно также настроить параметры алгоритма на вкладке Solver Parameters.
Введите требуемый концевой эффекторный Pose, Weights на допуск положения и InitialGuess для строения соединения. Решатель выводит строение робота, Config, которая удовлетворяет положению end-effector в пределах допусков, заданных на вкладке Solver Parameters.
[1] Бадреддин, Хассан, Стефан Вандевалль и Йохан Мейерс. Последовательное квадратичное программирование (SQP) для оптимального управления при прямой числовой симуляции турбулентного потока. Журнал вычислительной физики. 256 (2014): 1–16. doi: 10.1016/j.jcp.2013.08.044.
[2] Bertsekas, Dimitri P. Нелинейное программирование. Belmont, MA: Athena Scientific, 1999.
[3] Голдфарб, Дональд. Расширение метода переменной метрики Дэвидона до максимизации при линейном неравенстве и ограничениях равенства. SIAM Journal по прикладной математике. Том 17, № 4 (1969): 739-64. doi: 10.1137/0117067.
[4] Нокедал, Хорхе и Стивен Райт. Численная оптимизация. Нью-Йорк, Нью-Йорк: Спрингер, 2006.
[5] Сугихара, Томомичи. «Разрешимость-неконтролируемая обратная кинематика методом Левенберга-Марквардта». Транзакции IEEE по робототехнике. Том 27, № 5 (2011): 984-91. doi: 10.1109/tro.2011.2148230.
[6] Чжао, Цзяньминь и Норман И. Бадлер. «Позиционирование обратной кинематики с использованием нелинейного программирования для высоко сочлененных фигур». Транзакции ACM на графике. Том 13, № 4 (1994): 313-36. doi: 10,1145/ 195826,195827.