roboforum.ru

Технический форум по робототехнике.

Обратная задача манипулятора

Обсуждаем рождающиеся мысли и результаты экспериментов.

Обратная задача манипулятора

Сообщение one man » 23 апр 2018, 22:27

Есть идея определения углов манипулятора (вообще, обобщённых координат) с помощью его математической модели – решение обратной задачи.
Задаётся математическая модель манипулятора, в которой учитывается траектория перемещения из одной точки в другую по кусочно-гладкой кривой, в частности, это просто последовательный набор точек в пространстве.
Математической моделью является система уравнений, описывающая связи между точками манипулятора и траекторию перемещения между заданными точками. Решением системы уравнений будут координаты точек манипулятора. После чего, зная длины звеньев и координаты точек в каждый момент времени, вычисляются любые управляющие параметры манипулятора для прямой задачи. По этим параметрам воспроизводится та же самая заданная траектория.
Всю работу по созданию математической модели и вычислению углов можно проводить без манипулятора, имея только его инструкцию с техническими характеристиками.
Тексты программ и более подробное описание в теме на MaplePrimes:
https://www.mapleprimes.com/posts/208958-Determination-Of-The-Angles-Of-The-Manipulator
Аватара пользователя
one man
 
Сообщения: 16
Зарегистрирован: 23 апр 2018, 21:37
прог. языки: maple

Re: Обратная задача манипулятора

Сообщение setar » 23 апр 2018, 23:15

Идея то в чем ?
Задача сто лет как решенная, и используемая постоянно при проектировании и программировании алгоритма движения
Аватара пользователя
setar
Site Admin
 
Сообщения: 10981
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: Обратная задача манипулятора

Сообщение one man » 23 апр 2018, 23:46

Идея? Идея в сведении числа степеней свободы до 1 для манипулятора с любым числом степеней свободы и любым видом сочленения звеньев – до полной аналогии с кинематикой рычажного механизма. Решение находится для всей траектории.
А так, не знаю, просто везде пишут, что обратная задача является довольно трудной.

Добавлено спустя 16 минут 8 секунд:
Как бы добавлю. Если до сих пор нет общих методов расчёта рычажных механизмов, поскольку нет методов решения недоопределённых систем нелинейных уравнений, тогда то же самое можно сказать и про обратные задачи для манипуляторов.
Аватара пользователя
one man
 
Сообщения: 16
Зарегистрирован: 23 апр 2018, 21:37
прог. языки: maple

Re: Обратная задача манипулятора

Сообщение setar » 23 апр 2018, 23:59

ну как бы это сказать, в этом все творчество...
если бы я при программировании движения шестинога свел бы степень свободы ноги к 1 это выглядело бы ужасно :)
а так у меня он мог ходить вприсядку, высоко вытянувшись, широко раскидывая лапы, двигаясь волнообразно и так далее.
это задается граничными условиями для решений системы уравнений
Аватара пользователя
setar
Site Admin
 
Сообщения: 10981
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: Обратная задача манипулятора

Сообщение one man » 24 апр 2018, 11:53

Одна степень свободы не означает какого-то корявого движения, это делается с целью достичь однозначной зависимости между требуемыми координатами точек и управляющими параметрами, последовательность значений которых является решением обратной задачи. Потому что одна и та же траектория крайней точки манипулятора (покраска, сварка, перемещение, протезирование… ) может воспроизводиться бесконечным множеством траекторий остальных подвижных точек. Практически, это перенастраиваемые рычажные механизмы. Здесь очень точные однозначные решения.
Народ, для получения значений параметров использует, например, датчики с жуткой погрешностью… И совсем свежее: в конце темы http://www.cnc-club.ru/forum/viewtopic. ... 52#p435952 типичная ситуация, человек сообщает, что пишет программу для робота. Судя по траектории, там работы по программированию на полдня, если совсем с нуля. То есть, время на создание сообщения и съёмку ушло, как минимум, не меньше, а он ещё в процессе…
На самом деле, если кроме танцев Ваш шестиног способен производить указанные выше и подобные им работы, то тогда никаких проблем для манипуляторов с их обратными задачами не существует.
Аватара пользователя
one man
 
Сообщения: 16
Зарегистрирован: 23 апр 2018, 21:37
прог. языки: maple

Re: Обратная задача манипулятора

Сообщение Angel71 » 24 апр 2018, 17:50

при чём тут точность датчиков вообще? тёплое с мягким.
велосипед с квадратными колёсами что бы гланды через одно место. какая разница, одно уравнение, несколько? можно вообще без решения уравнений и будет максимум одно решение. зацикливаешся на мелочах с кинематикой, когда задача в общем это скелетная анимация с учётом кучи параметров - материал, тип инструмента (фреза,...), его параметры (геометрия,...), режим обработки (скорость подачи, заглубление,...) и т.д.
в этой всей скелетной анимации с планированием последовательности стадий (тип обработки, какой инструмент и прочее), траектории и скорости движения, что бы чего не разворотить и не испортить ()
:pardon: кинематика это только малая часть.



и т.д.
кроме того, что кинематика это малая часть, а у вас пока велосипед, есть ещё чень сомнительная затея - вместо специализированных решений/солверов напихать все эти покраски, сварки и прочее в одну кучу.
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: Обратная задача манипулятора

Сообщение one man » 24 апр 2018, 19:44

Относительно датчиков в обратной задаче для манипулятора можно проявить литературный дар, например, здесь https://dxdy.ru/topic119394.html
Понятие кинематики, прежде всего, включает в себя положение тела в пространстве – это геометрия. Обратная задача для вычисления управляющих параметров является математической, и в неё можно включить кинематику.
Смежные технические области, как рычажные механизмы, станки с ЧПУ, манипуляторы, их гибриды имеют, естественно, много общего как во внутреннем устройстве, так и в математическом описании. Если для рычажных механизмов, например, почти не встретишь понятия эквидистанта, то для ЧПУ это основа обработки... Конкретно для манипулятора прямая задача и обратная задача являются принципиально различными по степени сложности...
Что касается заглубления фрезы, то лично я писал работающую программу, чтобы производить врезание автоматически в допустимом месте с учётом вида фрезы и материала, когда тебя, скорее всего, ещё не было на свете.
Аватара пользователя
one man
 
Сообщения: 16
Зарегистрирован: 23 апр 2018, 21:37
прог. языки: maple

Re: Обратная задача манипулятора

Сообщение sned » 24 апр 2018, 20:31

one man писал(а):Идея? Идея в сведении числа степеней свободы до 1 для манипулятора с любым числом степеней свободы и любым видом сочленения звеньев – до полной аналогии с кинематикой рычажного механизма. Решение находится для всей траектории.

Какой то бред или неспособность внятно донести свои мысли(но скорее первое :D )
sned
 
Сообщения: 303
Зарегистрирован: 08 апр 2013, 08:09
Откуда: Екатеринбург
ФИО: Сергей

Re: Обратная задача манипулятора

Сообщение one man » 24 апр 2018, 21:06

Ребята, вы тут по очереди выскакиваете из табакерки, при этом один умнее другого. Ну, прочитали бы где-нибудь про степени свободы, и как они связаны с количеством звеньев манипулятора и видом их сочленения. Это позволит понять, в чём особенности решения обратной задачи.
Конечно, я был бы в замешательстве от такой реакции, но просто перед этим были опубликованы мои работы в центре приложений MapleSoft (не по моей, что особо приятно, инициативе), и совсем недавно тамошняя совсем уж нерусская публика вполне поняла и весьма одобрила эти же предложения по манипуляторам. При этом английским я не владею, но факт. Пусть на нашем Киберфоруме тоже не то, и слишком мало спецов по этой тематике, но и у них не было принципиальных проблем с пониманием.
Вы уж сильно особые ребята, наверно, из нашего светлого будущего.
Аватара пользователя
one man
 
Сообщения: 16
Зарегистрирован: 23 апр 2018, 21:37
прог. языки: maple

Re: Обратная задача манипулятора

Сообщение setar » 24 апр 2018, 22:59

процентов 80 вообще не понимает о чем речь,
и процентов 10 понимает о чем речь, но отношение к сложной задаче - будем решать вопросы по мере поступления.
и оставшиеся 10 процентов уже решили эту задачу для себя.

Абсолютно нормальная реакция, так что без обид.
Ваше сообщение будет здесь и обязательно дождется тех самоделкиных которым оно поможет.

Добавлено спустя 5 минут 30 секунд:
one man писал(а):Одна степень свободы не означает какого-то корявого движения, это делается с целью достичь однозначной зависимости между требуемыми координатами точек и управляющими параметрами, последовательность значений которых является решением обратной задачи.

одна степень свободы предусматривает отсутствие вокруг других предметов и ограничений, а в реальной задаче (шестиног, несколько манипуляторов на сборке), это ограничение степени свободы может выдать отсутствие решения, хотя по факту решения есть
Аватара пользователя
setar
Site Admin
 
Сообщения: 10981
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: Обратная задача манипулятора

Сообщение Angel71 » 25 апр 2018, 06:55

one man, не переживайте, здесь предостаточно людей, понимающих и что такое степени свободы и что такое ик, что/когда можно использовать для обратной связи и прочее. не поверите, но и с такими матюками как абстрагирование и декомпозиция знакомы, чего и вам желаю. и да, для всяких манипуляторов, хексоподов и прочего, далеко не один и не два человека делали управление. а пока похоже, что вы или свои мысли как-то специфически излагаете или не изучив даже немного из всех наработок по управлению манипуляторов, пытаетесь в лоб (кроме решения уравнений в лоб, есть масса других вариантов, а что когда лучше в каждой конкретной задаче это другой момент) велосипед с квадратными колёсами (одна степень свободы) изобретать.
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: Обратная задача манипулятора

Сообщение dimamichev » 25 апр 2018, 10:03

one man писал(а):Идея? Идея в сведении числа степеней свободы до 1 для манипулятора с любым числом степеней свободы и любым видом сочленения звеньев – до полной аналогии с кинематикой рычажного механизма. Решение находится для всей траектории.
А так, не знаю, просто везде пишут, что обратная задача является довольно трудной.

Добавлено спустя 16 минут 8 секунд:
Как бы добавлю. Если до сих пор нет общих методов расчёта рычажных механизмов, поскольку нет методов решения недоопределённых систем нелинейных уравнений, тогда то же самое можно сказать и про обратные задачи для манипуляторов.

Всё равно тяжко для понимания начинающих... С практической точки зрения что предлагаете? Для конкретной траектории заменить манипулятор с кучкой сервоприводов на один рычажный механизм с одним моторчиком? То есть Ваш способ позволяет создать шарнирно-рычажный эквивалент под траекторию любую? Гексапод на одном моторе? С одной кинематикой он танцует? С другой шлёпает по прямой?
Аватара пользователя
dimamichev
 
Сообщения: 1381
Зарегистрирован: 03 янв 2013, 16:27

Re: Обратная задача манипулятора

Сообщение one man » 25 апр 2018, 11:44

dimamichev писал(а):[Всё равно тяжко для понимания начинающих... С практической точки зрения что предлагаете? Для конкретной траектории заменить манипулятор с кучкой сервоприводов на один рычажный механизм с одним моторчиком? То есть Ваш способ позволяет создать шарнирно-рычажный эквивалент под траекторию любую? Гексапод на одном моторе? С одной кинематикой он танцует? С другой шлёпает по прямой?

Вот, почти половина предложения понята правильно. Признаюсь, пока не понимаю движущихся самостоятельно устройств, но что касается закреплённых, типа платформ и последовательно звеньевых манипуляторов, пусть, с перемещением, то да.
Но одна степень свободы это не работа какого-то одного привода, а чисто математическое представление. Работают, как правило, все приводы, только система уравнений будет иметь одну свободную переменную (степень свободы), и эта переменная не соответствует какой-то конкретной механической части, а её наличие обеспечивает в пространстве конкретную траекторию каждой точки с учётом рабочей траектории. Таких траекторий может быть бесконечное множество, просто мы останавливаемся на какой-то одной для однозначности, нам удобной или держим в запасе несколько вариантов. И, если посмотреть, то формально и внешне получается рычажный механизм с одной степенью свободы на каждом локальном участке, но ограничения чисто математические, и их обеспечивают все приводы. На самом деле, всё очень просто, чтобы пользоваться, имея в минимуме матпакет. Но чтобы детально разобраться, надо почитать про метод Драгилева решения систем нелинейных уравнений. Это тоже несложно. Чисто геометрически – это линия пересечения поверхностей в многомерном пространстве. В нескольких вариантах изложено в центре приложений MapleSoft, правда, на английском. Есть публикации на русском. Если не получится найти самостоятельно, но будет интересно – приведу. .
Аватара пользователя
one man
 
Сообщения: 16
Зарегистрирован: 23 апр 2018, 21:37
прог. языки: maple

Re: Обратная задача манипулятора

Сообщение one man » 25 апр 2018, 23:01

Если не на английском, то где ещё можно почитать о методе. Для наших целей, конечно, лучше всего на английском, а здесь это первая в списке работа и статья Дубанова в прикладной геометрии. Метод объединяет несколько направлений, и чтобы не путаться, лучше смотреть в рекомендованном.

Вісник Національного університету “Львівська політехніка”, 184 Електроніка, № 708, 2011
НОВИЙ МЕТОД ОПТИМІЗАЦІЇ ГЕОМЕТРІЇ АКУСТООПТИЧНОЇ
ВЗАЄМОДІЇ В КРИСТАЛІЧНИХ МАТЕРІАЛАХ ДОВІЛЬНОГО КЛАСУ
СИМЕТРІЇ
© Бурий О.А., Винник Д.М., Кайдан М.В., Андрущак А.С., 2011

Электронный журнал “Прикладная геометрия”
Выпуск 9, номер 19(2007)стр.1-12:
http://e-science.ru/sites/default/files ... ban919.pdf

http://elibrary.ru/item.asp?id=18154006

http://www.avrorasystems.com/ru/public/ ... ENT_ID=625

http://www.dissercat.com/content/razrab ... ovogo-posr

см ссылки
https://ru.wikipedia.org/wiki/%D0%A7%D0 ... 0%B8%D0%B9

---------------------------------------------------------------------------------------
В качестве примера модель четырёхзвенного абстрактного манипулятора с плоским соединением звеньев и поворотным первым звеном. Крайняя точка движется по трансцендентной траектории.
Как происходит получение модели манипулятора, чтобы она воспроизводила его конструкцию. Первое звено имеет первую неподвижную точку, вторая точка звена имеет две степени свободы – перемещается по сфере. Значит, для координат второй точки мы записываем уравнение сферы. Третья точка находится на определённом расстоянии от второй точки и лежит с ней в одной плоскости – ещё два уравнения. И так до последней точки. Всего пять степеней свободы, что соответствует 7 уравнениям. Четыре точки это 12 переменных, минус 7, получается 5. Это сам манипулятор. Но мы знаем, что крайняя точка лежит на трансцендентной кривой, в данном случае это ещё два уравнения – пересечение цилиндрической поверхности и плоскости. И ещё два уравнения мы изыскиваем, например, из равенства сумм проекций звеньев на плоскость XoY. Тут много вариантов.
Осталась одна степень свободы, мы решаем систему и смотрим на экран под разными углами, проверяя прохождение траектории крайней точкой. Параллельно вычисляются управляющие углы для прямой работы.
Ту же самую траекторию с помощью этого же манипулятора мы можем получить при соединённых не “горбом”, а “впадиной” звеньях, при относительно меньшем или большем наклоне первого звена и тд. Просто мы выбрали такой вид, поскольку нам всё равно надо из чего-то выбирать для однозначного получения углов. Моделируем и выбираем. Анимация – это одно решение.
Точность решения для практических целей высокая.
http://www.cyberforum.ru/attachments/929907d1524079497

Добавлено спустя 2 часа 13 минут 38 секунд:
И ещё один пример.
Трёхзвенный манипулятор тоже с пятью степенями свободы. Третье звено с шаровым соединением. В эту точку помещены векторы, имитирующие смещённые оси координат. При решении обратной задачи математически соблюдается одна степень свободы. После прохождения траектории мы знаем последовательность всех управляющих параметров:
https://vk.com/doc242471809_463295142
И иллюстрация неоднозначности этого же решения в любой точке данной траектории. Зафиксировав на траектории крайнюю точку, наблюдаем за бесконечным множеством решений обратной задачи манипулятора. То есть, получаем бесконечное (но далеко не всё) множество значений управляющих параметров только для одной этой точки:
https://vk.com/doc242471809_463357661
Аватара пользователя
one man
 
Сообщения: 16
Зарегистрирован: 23 апр 2018, 21:37
прог. языки: maple

Re: Обратная задача манипулятора

Сообщение one man » 26 апр 2018, 22:54

Ещё небольшие пояснения. Мы можем работать с четырёхзвенным манипулятором, у которого звенья соединены через шаровые шарниры (если такой существует, а это 8 степеней свободы) визуально как с четырёхзвенным от пяти до 8 степеней свободы. Можем как с трёхзвенным или как с двухзвенным. Всё это задаётся уравнениями системы математической модели. Теоретически у нас нет ограничений на число степеней свободы.


Что касается платформ, то их предназначения мне пока не очень понятно, но в плане матмодели они аналогичны манипуляторам. Это пример абстрактной платформы с тремя степенями свободы. Три точки платформы – 9 переменных. Три уравнения отвечают за постоянное расстояние между точками, штанги находятся в заданных плоскостях, а это ещё три уравнения. 9-6=3 степени свободы. Если в качестве управляющих параметров будут углы штанг с плоскостью и их длины, то они автоматически вычисляются в процессе движения по заданной траектории.
https://vk.com/doc242471809_463469263
https://vk.com/doc242471809_463469227
Аватара пользователя
one man
 
Сообщения: 16
Зарегистрирован: 23 апр 2018, 21:37
прог. языки: maple

След.

Вернуться в Идеи

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

cron