Кинематика манипуляционных роботов.




Федеральное государственное автономное образовательное

Учреждение высшего профессионального образования

«ЮЖНЫЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ»

ТЕХНОЛОГИЧЕСКИЙ ИНСТИТУТ В г. ТАГАНРОГЕ

(ТТИ Южного федерального университета)

 

 

Индивидуальная работа №2

 

Кинематика манипуляционных роботов.

по курсу

«Программные средства для моделирования роботов и робототехнических систем»

 

 

 

Группа Н-80

 

Студент Козлов А.В.

 

Проверил Волощенко Ю.П.

 

Таганрог 2012


Индивидуальная работа №2.

Пример 1.1

В подвижной, связанной системой координат OUVW заданы две точки a(UVW)= (5,4,1)T и b(UVW)= (8,1,6)T. Требуется определить координаты a(XYZ) и b(XYZ) этих точек в абсолютной ситеме координат, если система OUVWповернута относительно оси OY на угол 30 град.

 

Решение

 

>

>

>

>

>

>

>

Пример 1.2.

Требуется найти матрицу поворота подвижной системы OUVW, являющейся результатом последовательности выполнения поворотов сначала на угол alpha вокруг оси OU, затем на угол phi вокруг оси OY, на угол Theta вокру осиOW.

Решение

>

>

>

>

>

 

Пример 1.3

Требуется найти матрицу однородных преоразований, обратную матрице А, где А задана.

Решение

>

>

>

>

>

>

>

>

>

Пример 1.4.

Имеется робототехнический комплекс, состоящий из двух манипуляционных роботов.Известны матрицы: А1-однородных преобразований, А2-описывает положение схвата второго робота. Для согласования работы роботов требуется определить матрицу А12.

Решение:

>

>

>

>

>

Пример 1.5.

Требуется определить матрицу А транспонированную, задающую преобразование, состоящее из поворота на угол α вокруг оси ОХ, затем смещение на b едииниц вдоль оси OV подвижной системы координат.

Решение:

>

>

>

>

>

Пример 1.8.

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

Решение:

>

 

>

>

Пример 1.9.

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

Решение:

>

>

Решение ПЗК для двухзвенника

>

>

Решение ПЗК на примере манипуляционного трехзвенника. Вариант 5.

>

>

>

>

Матрица манипулятора по заданному варианту

 

>

>

>

>

Применение решений ПЗК в задачах робототехники. Пример 1.10

>

Решение.

>

Понятие матрицы Якоби решения ПЗК и вырожденные конфигурации робота. Пример 1.11

>

>

>

>

>

>

>

>

>

>

Рабочее пространство манипулятора и его построение посредством пакета символьных вычислений Maple

 

Постороение рабочего пространства манипулятора в виде точечного графика

>

> with(plots):

>

Задание кинематических параметров МР

>

>

Решение ПЗК

> x:=cos(q1)*cos(q2)*q3;

> y:=sin(q1)*cos(q2)*q3;

> z:=sin(q2)*q3+.1;

 

> L:=matrix(2420,3):

> m:=1;

> for k from -.25*evalf(Pi) by 0.05*evalf(Pi) to.25*evalf(Pi) do

> for i from -.5*evalf(Pi) by 0.05*evalf(Pi) to.5*evalf(Pi) do

> for j from 0 by 0.05 to 0.5 do

> L[m,1]:=evalf(subs([q1=i,q3=j,q2=k],x)):

> L[m,2]:=evalf(subs([q1=i,q3=j,q2=k],y)):

> L[m,3]:=evalf(subs([q1=i,q3=j,q2=k],z)):

> m:=m+1:

> od:od:od;

> evalm(L):

 

> pointplot3d(op(L));

>

Постороение рабочего пространства манипулятора из нескольких плоскостей

 

> restart:

> with(plots):with(linalg):

 

>

Ввод решение ПЗК.

> P:=matrix(3,1,[cos(q1)*cos(q2)*q3,sin(q1)*cos(q2)*q3,sin(q2)*q3+.1]);

 

 

> workspace:=proc(P,N1,N2,N3,q1_r::anything,q2_r::anything,q3_r::anything)

local

pointmax,ii,jj,kk,Spi,Spj,Spk,M,M1,Msurf,M1surf,Msub,Sdown,Sup,S1,S2,S3,S4,i,j,k,m,l,n;

if (type(op([2],args[5]),range)=false or

type(op([2],args[6]),range)=false or

type(op([2],args[7]),range)=false) then

RETURN(`Range must be view x=1..3`):

fi;

pointmax:=N1*N2*N3:

M:=matrix(pointmax,3):

M1:=matrix(pointmax,3):

m:=1:

Spi:=(abs(op([2,1],args[5]))+abs(op([2,2],args[5])))/(N1-1):

Spj:=(abs(op([2,1],args[6]))+abs(op([2,2],args[6])))/(N2-1):

Spk:=(abs(op([2,1],args[7]))+abs(op([2,2],args[7])))/(N3-1):

if (op([2,1],args[5])=op([2,2],args[5])) then Spi:=0 fi:

if (op([2,1],args[6])=op([2,2],args[6])) then Spj:=0 fi:

if (op([2,1],args[7])=op([2,2],args[7])) then Spk:=0 fi:

i:=op([2,1],args[5]):

for ii from 1 to N1 do

j:=op([2,1],args[6]):

for jj from 1 to N2 do

k:=op([2,1],args[7]):

for kk from 1 to N3 do

M[m,1]:=evalf(subs([op(1,args[5])=i,op(1,args[6])=j,op(1,args[7])=k],P[1,1])):

M[m,2]:=evalf(subs([op(1,args[5])=i,op(1,args[6])=j,op(1,args[7])=k],P[2,1])):

M[m,3]:=evalf(subs([op(1,args[5])=i,op(1,args[6])=j,op(1,args[7])=k],P[3,1])):

m:=m+1:

k:=k+Spk:

od:

j:=j+Spj:

od:

i:=i+Spi:

od:

Sdown:=[seq([seq([M[i,1],M[i,2],M[i,3]],i=((j*N3)+1)..((j+1)*N3))],j=0..N2-1)]:

S3:=surfdata(Sdown):

l:=(N1-1)*N2*N3:

Sup:=[seq([seq([M[i,1],M[i,2],M[i,3]],i=((j*N3)+l+1)..((j+1)*N3)+l)],j=0..N2-1)]:

S4:=surfdata(Sup):

m:=1:

for i from 1 to N1 do

for j from 1 to N3 do

n:=j+(i-1)*N3*N2:

for k from 1 to N2 do

M1[m,1]:=M[n,1]:

M1[m,2]:=M[n,2]:

M1[m,3]:=M[n,3]:

n:=n+N3:

m:=m+1:

od:

od:

od:

for i from 1 to N1 do

l:=(i-1)*N3*N2:

for j from 2 by 2 to N2 do

n:=(j-1)*N3+l+1:

Msub:=submatrix(M,n..n+N3-1,1..3):

for k from 1 to N3 do

M[n+k-1,1]:=Msub[N3-k+1,1]:

M[n+k-1,2]:=Msub[N3-k+1,2]:

M[n+k-1,3]:=Msub[N3-k+1,3]:

od:

od:

od:

for i from 1 to N1 do

l:=(i-1)*N3*N2:

for j from 2 by 2 to N3 do

n:=(j-1)*N2+l+1:

Msub:=submatrix(M1,n..n+N2-1,1..3):

for k from 1 to N2 do

M1[n+k-1,1]:=Msub[N2-k+1,1]:

M1[n+k-1,2]:=Msub[N2-k+1,2]:

M1[n+k-1,3]:=Msub[N2-k+1,3]:

od:

od:

od:

M1surf:=[seq([seq([M1[i,1],M1[i,2],M1[i,3]],i=((j*N3*N2)+1)..((j+1)*N3*N2))],j=0..N1-1)]:

Msurf:=[seq([seq([M[i,1],M[i,2],M[i,3]],i=((j*N3*N2)+1)..((j+1)*N3*N2))],j=0..N1-1)]:

S1:=surfdata(Msurf):

S2:=surfdata(M1surf):

display(S1,S2,S3,S4);

end:

>

> display(tree_zveno,style=patch,scaling=UNCONSTRAINED);

>

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2018-10-25 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: