Sunteți pe pagina 1din 11

care se obţin pe baza rel. aplicată PC ce se află pe elementul n al structurii (i = n).

Se notează r  r 0 şi T  Tn :

Matricea T constă în produsul a n matrice de Ai de transformare între două elemente succesive:


T  A1  A 2  ...  A n

Este necesară adoptarea sistemelor locale de axe.


Originea acestora poate fi luată în centrul cuplei dintre
elementul considerat şi cel aflat înainte în lanţul cinematic. În
acest caz este posibil calculul matriceal cu ajutorul matricelor T , ca mai sus. În calculul
dinamic al structurii se recomandă adoptare originii în centrul de masă al corpurilor.

Recomandări la adoptarea sistemelor de axe:


- axele cuplelor sunt alese ca axe OZ;
- la elementele sub formă de bară, axa barei se ia ca axă OX.
Matricele A i  i 1iT vor depinde de coordonatele robot care sunt unghiurile de poziţie
relativă dintre elemente în cazul cuplelor de rotaţie şi poziţia liniară relativă a elementelor în
cazul cuplelor de translaţie. Fiecare dintre matricele Ai depinde numai de coordonata sa robot qi .
Calculul produsului pentru obţinerea lui T se face numeric.
Ultimele 3 componente ale lui x reprezintă orientarea OL dată, de exemplu, prin vectorul
coordonatelor Kardan:
x r  xk   xk 1 xk 3 
T
xk 2

Vectorul xk se obţine din matricea S care reprezintă primele trei linii şi primele trei coloane sale
matricei T.
Modelul geometric direct permite calculul nu numai într-un singur
punct, ci şi stabilirea spaţiului de lucru al structurii. Spaţiul de lucru este dat
de multitudinea de puncte pe care le poate ocupa obiectul de lucru când se
modifică coordonatele robot în limitele constructiv-funcţionale ale cuplelor.
Practic se dau aceste limite prin vectorii:
qmax   q max1 , q max 2 , ... q max n  T ;

qmin   q min 1 , q min 2 , ...q min n 


T

între care variază vectorul coordonatelor robot.


Prin programul de calcul pe lângă determinările numerice legate de poziţie şi de orientare
se poate realiza şi partea grafică care conţine cel puţin două vederi ale spaţiului de lucru şi

24
secţiunea cu un plan vertical al acestuia.

Exemplu de calcul al modelului geometric direct pentru o


structură simplă RRR
Evident, această structură incompletă
ilustrează numai obţinerea poziţiei carteziene a
unui punct şi nu şi orientarea unui OL.
Sunt 3 elemente mobile: 1, 2 şi 3 şi un
element fix: 0. Cuplele sunt toate de rotaţie.
Numărul de cuple este egal cu cel al elementelor
mobile.
Se adoptă sistemele de axe legate de
fiecare corp {0}, {1}, {2} şi {3}. Originile
sistemelor se dispun în centrul cuplelor.
Cele 3 matrice de transformare corespund
rotaţiei în jurul axelor de coordonate.
Pentru prima cuplă dintre elementele 0 şi 1:
 cq1  sq1 0 0
 
 sq cq1 0 0
A1  1T  Rot Z   1
0

0 0 1 H1 
 
 0 0 0 1 

În scrierea elementelor matricelor a fost scris concentrat: sin q1  sq1 şi cos q1  cq1 , etc.
Primele trei elemente ale ultimei coloane corespund vectorului originii O 1 a {1} proiectată în
{0}:
 0 
0  
OrgO1  0 
H 
 1

Pentru a doua cuplă dintre elementele 1 şi 2:


 cq 2 0 sq 2 0 
 
 0 1 0 0 
A 2  2T  Rot Y  
1

 sq 2 0 cq 2 H2 
 
 0 0 0 1 

Primele trei elemente ale ultimei coloane corespund vectorului originii O2 a {2}
proiectată în {1}:

25
 0 
2  
OrgO 3   0 
H 
 2

Pentru a treia cuplă dintre elementele 2 şi 3:


 cq 3 0 sq 3 L1 
 
 0 1 0 0
A 3  3T  Rot Y  
2

 sq 3 0 cq 3 0
 
 0 0 0 1 

primele trei elemente ale ultimei coloane corespund vectorului originii O 3 a {3} proiectată în
{2}:
 L1 
1  
OrgO 2  0 
0
 

Matricea T se obţine cf.:


T  A1  A 2  A 3

Se efectuează iniţial produsul:


 cq1cq 2  sq1 cq1sq 2 0 
 
 sq cq cq1 sq1sq 2 0 
A1  A 2   1 2
 sq 2 0 cq 2 H1  H 2 
 
 0 0 0 1 

Se face, apoi, produsul: T   A1  A 2   A 3 , obţinând:

 cq1cq 2 cq 3  cq1sq 2 sq 3  sq 1 cq1cq 2 sq 3  cq1sq 2 cq 3 L1cq1cq 2 


 
 sq cq cq  sq 1sq 2 sq 3 cq1 sq 1cq 2 sq 3  sq1sq 2 cq 3 L1sq 1cq 2 
T 1 2 3
 sq 2 cq 3  cq 2 cq 3 0  sq 2 sq 3  cq 2 cq 3  L1sq 2  H1  H 2 
 
 0 0 0 1 
 
Se notează: q3a  q2  q3 , şi H  H 1  H 2 şi după unele grupări, se poate scrie matricea T astfel:
 cq1cq 3a  sq1 cq1sq 3a L1cq1cq 2 
 
 sq cq cq1 sq1sq 3a L1sq1cq 2 
T   1 3a
 sq 3a 0 cq 3a  L1sq 2  H 
 
 0 0 0 1 
 
Punctul M aparţinând elementului 3 se poate exprima în sistemul local de axe {3} astfel:
c
 
3  0
rM  
a
 
1
 
3
Vectorul rM a fost exprimat completat cu a 4-a componentă pentru a putea efectua
calculele corespunzător cu matricea T (4x4).

26
Coordonatele punctului M exprimate în sistemul fix {0}:
0 3
rM  rM  T  rM
După efectuarea calculului se obţine:

 c  cq1cq3a  a  cq1sq3a  L1cq1cq2 


 
 c  sq1cq3a  a  sq1sq3a  L1sq1cq2 
rM  
 c  sq3a  a  cq3a  L1sq2  H 
 
 1 
 

Deci coordonatele carteziene ale punctului M exprimate în {0} sunt:

Relaţiile reprezintă soluţia modelului geometric direct al


structurii RRR date, cu punctul M ce aparţine elementului 3.

Cinematica analitică a structurii.


Modelul direct şi invers al vitezelor
Componentele vectorului x al poziţiei generalizate sunt funcţii de coordonatele robot,
global, de vectorul coordonatelor robot q, adică:
x  f  q

Mai departe se consideră cazul structurilor cu orientarea complet determinată ce au n = 6,


vectorul q având 6 componente

Exprimare dezvoltată:
x 1  f1  q1 , q 2 ,..., q 6 
x 2  f 2  q1 , q 2 ,..., q 6 
........
x 6  f 6  q1 , q 2 ,..., q 6 

Derivând în raport cu timpul se obţine:


  J q
x  modelul direct al vitezelor.
 - vectorul generalizat al vitezelor
x
q
 - vectorul vitezelor robot:
  x
x 1 x 2 ...
T

x 6   v x vy vz xk 1 xk 2 xk 3  T
,

27
q   q 1 q 2 ... q 6 

J - Jacobianul sistemului de funcţii - cuprinde derivatele parţiale funcţie de coordonatele


robot:
f
J  q   f  q  
q

În exprimare detaliată:

 f1 f1 f1 


 .. 
 q1 q2 qn 
 f 2 f 2 f 2 
..
J  q    q1 q2 qn 
 
 .. .. .. .. 
 f n f n
..
f n 
 q q2 qn 
 1
Utilizarea tehnicii de calcul permite calculul jacobianului prin derivare numerică.
Funcţiile nu sunt explicit cunoscute, ele se calculează succesiv cu relaţiile prezentate până acum.
Se aplică, apoi, formula de derivare numerică:
f k  q1 , q 2 ,..., q j  q,..., q 6   f k  q1 , q 2 ,..., q j ,..., q 6 
J k,j  ; j  1...6; k  1...6;
q
4 5
Se alege o valoare q j  10 ...10 . Eroarea este de ordinul a q 2 .

Modelul cinematic direct al vitezelor presupune cunoscute vitezele robot


v  x t   v x vz 
T
q
 . Se calculează componentele vitezei liniare vy a obiectului de lucru
(primele trei componente ale lui x
 ). Ultimele trei componente reprezintă componentele vitezei

kardan xk   xk 1  T


xk 2 xk 3 .

Viteza unghiulară  a obiectului de lucru se poate calcula din viteza kardan astfel [3]:
ω  Tk  x k
Matricea Tk are expresia:
1 0 sxk1 
 
Tk   0 cxk1  sxk 1cxk 2 
 0 sxk cxk1cxk 2 
 1

Rezolvarea problemei inverse a vitezelor se deduce din :


  J  q  1  x
q

Inversarea Jacobianului J  q  1 se face prin una din metodele cunoscute în calculul


matriceal.

28
Cinematica pe traiectorie va permite determinarea vectorului generalizat al vitezelor
x
 în punctele în care a fost discretizată traiectoria. Se determină separat partea

v  x t   v x v z  ce reprezintă viteza liniară a punctului caracteristic pe traiectorie şi


T
vy

vitezele kardan: xk   xk1  T


xk 2 xk3 .
Problema inversă a acceleraţiilor nu se poate rezolva comod analitic, deoarece dacă se
derivează relaţiile, apare J  q  , greu de obţinut, chiar numeric. Se poate face un calcul
aproximativ prin derivare numerică în raport cu timpul a vitezelor robot, plecând de la definiţia:
dq i
qi  ; (i = 1…6).
dt
Aceasta se va putea face, însă, numai după analiza cinematicii pe traiectorie când se vor
putea corela valorile vitezelor robot cu timpul de parcurs. Asupra acestor aspecte se va reveni
mai departe.

Cinematica pe traiectorie
Privind aplicaţia pe care o realizează structura pot interveni trei cazuri:
planificarea în spaţiul de lucru, planificarea în spaţiul acţionării şi planificarea prin
învăţare (interpolare).
a) Planificarea în spaţiul de lucru.
Sunt cunoscute poziţia şi orientarea în punctul iniţial I şi în punctul final F, adică se cunosc
vectorii: x i şi x f . Parametrii cinematici în aceste puncte sunt de asemenea cunoscuţi, pentru
punctul I: x i ; x i şi pentru punctul F: x f ; x f .
- Dacă punctele I şi F sunt porniri şi respectiv opriri ale structurii, atunci parametrii
cinematici sunt nuli în aceste puncte.
- Dacă traiectoria IF face parte din discretizarea unei traiectorii mai largi, atunci
parametrii cinematici şi geometrici sunt corelaţi cu cei ai segmentelor de traiectorie
alăturate.
Din punct de vedere al tipului de traiectorie propriu-zisă descrisă de vectorul
coordonatelor carteziene xt , putem avea de a face cu traiectorii dreaptă sau arce de cerc.
În ceea ce priveşte orientarea:
- în aplicaţiile de manipulare simplă nu sunt impuneri pentru punctele intermediare,
orientarea şi cinematica sa putând avea aceleaşi legi ca şi cele adoptate pentru
xt ; x
 t ; x t .

- excepţie sunt cazurile sudurii, a montajului şi chiar a vopsirii unde legea de variaţie a

29
orientării este direct impusă.
Planificarea (interpolarea) propriu-zisă constă în adoptarea modului de variaţie al
vitezei liniare, pentru realizarea segmentului (arcului) IF.
- Putem adopta legea de variaţie liniară a vitezei sau de tip spline de exemplu spline de
ordinul 3 la care acceleraţiile variază liniar şi vitezele parabolic.
- Se poate, de asemenea realiza o combinaţie dintre posibilităţile de mai sus.
- În toate cazurile se cere realizarea unui timp minim de parcurs fără a se depăşi
parametrii cinematici limită: vmax şi amax.
- Evident pentru fiecare punct din discretizarea segmentului IF se rezolvă modelul
invers trecând în spaţiul de lucru, acela al acţionării, al coordonatelor, vitezelor şi
acceleraţiilor-robot: q; q  . OBS: Se verifică dacă nu sunt depăşiţi parametrii
;q

cinematici din spaţiul acţionării.


Avantajul planificării în spaţiul de lucru este obţinerea traiectoriei şi a
orientării controlate, evitarea obstacolelor, evitarea ieşirii din spaţiul de lucru alocat.
b) Planificarea în spaţiul acţionării
În cadrul aplicaţiei, ca şi la varianta anterioară sunt cunoscute elementele punctelor I şi F.
Se aplică modelul invers trecându-se în spaţiul acţionării pentru punctele I şi F. De această dată
se influenţează direct limitele cinematice din acest spaţiu, adică: q
 max şi q
 max la ce nu trebuie

depăşite pe parcurs. După ce se realizează o planificare după aceleaşi principii ca în celălalt caz,
a lui q; q  se poate trece, folosind modelul direct la spaţiul de lucru pentru punctele
;q

intermediare ale traiectoriei. Traiectoria ce o va realiza structura în acest spaţiu nu interesează


direct, nici geometric şi nici cinematic, ci doar în sensul evitării obstacolelor, etc.
c ) Planificarea prin învăţare
Aici nu se face o planificare propriu-zisă ci o interpolare în spaţiul acţionării (a
coordonatelor robot) între punctele de eşantionare (discretizare) memorate în procesul de
“învăţare” pe care este forţat să-l descrie robotul.

În cazurile a) şi b) trebuie adoptată o lege de interpolare, fie în spaţiul de lucru, fie în cel
al acţionării. Mai jos, sunt făcute unele precizări în acest sens.

Interpolare cu variaţie liniară a vitezei


- cel mai simplu mod de aplicare al vitezei pe parcurs.
- de exemplu pentru controlul în spaţiul de lucru, se presupune că la capetele

30
intervalului parcurs IF  s vitezele sunt nule. Există o perioadă de accelerare t ac
care, pentru a realiza un timp minim de parcurs per, este egală cu acceleraţia maximă
admisă a max . Viteza creşte până la valoarea maximă admisă v max .
- În cazul general ( a), urmează o perioadă de regim cu durata t reg în care viteza
rămâne constantă şi acceleraţia este nulă. În perioada de frânare de durată t f , viteza
scade la zero, acceleraţia fiind constantă şi negativă  a f . În general t f  t ac , pentru
a putea realiza controlul mai precis al poziţiei de oprire.

a) Caz general, iar b,c situaţii particulare


Acceleraţia de frânare se poate introduce prin factorul k f :
k f  t f / t ac

Variaţia acceleraţiei se face în trepte apărând 4 salturi de acceleraţie. Acesta este un


dezavantaj deoarece, în aceste puncte au loc variaţii ale forţelor de inerţie (şocuri)
nedorite. Avantajul este programabilitatea simplă.
Există situaţii când, din cauza parcursului s mai mic nu se atinge viteza maximă, ci

doar vmax  v max (c). În aceste cazuri lipseşte perioada de regim t reg  0 . b reprezintă cazul

limită, când lipseşte perioada de regim, dar se obţine v max .


Separarea dintre situaţiile de mai sus se face după:

 1  k f 
2
v
slim  max
2  a max

Dacă s  s im se obţine un parcurs cu t ac  0 . Timpii pentru parcurgerea diferitelor


zone se calculează cu relaţiile:
v max s 1  k f   t ac
t ac  ; t reg   ; t f  k f  t ac ;
a max v max 2

Pentru cazul când s  s lim se pot calcula:

31
2  s  a max v
vmax  ; t ac  max ; t reg  0; t f  k f  t ac ;
1  kf a max

Interpolarea spline
Acceleraţiile q
 (exemplificând în spaţiu acţionării) au variaţie fără discontinuităţi.

Variaţia lor este liniară cu excepţia primului şi ultimului interval, unde variază parabolic. Se
cunosc coordonatele robot pentru k puncte de discretizare: q1 , q 2 ,..., q k . Mai se cunosc pentru
fiecare din cele n coordonate
robot valorile cinematice limită
q
 lim, j şi q
 lim, j (j = 1…n) ce nu

pot fi depăşite, care cel mult pot fi


atinse, independent, pe unul din
intervale.
Modul de variaţie al vitezelor şi
acceleraţiilor pentru una din coordonatele robot, pentru un exemplu de calcul la care k = 6,
intervalele 1…5.

Cinematică cu modif. treptată a acceleraţiei


Se propune o cinematică la care modificările de acceleraţie
nu sunt bruşte, ci se fac în intervale de timp t , pentru zona de
mişcare accelerată şi t f  k f  t , pentru zona de frânare. Se
consideră, de asemenea: a f  a max / kf ;
Spaţiul minim pentru a realiza cinematica completă cu t reg  0 :


s lim  1  k f   v max / 2 / a max  v max  t / 2
2

Dacă s  s lim se calculează:
t ac  v max / a max  t; t reg   s  s lim  / v max ;

t f  k f  t ac ; per  t ac  t reg  t f

Sunt 7 intervale de timp:


1) 0  t  t ; 2) t  t  t ac  t ;
3) t ac  t  t  t ac ; 4) t ac  t  t ac  t reg ;
5) t ac  t reg  t  t ac  t reg  k f  t ;

32
6 6) t ac  t reg  k f  t  t  t ac  t reg  k f   t ac  t 

7) t ac  t reg  k f   t ac  t   t  per
În tabelul următor sunt centralizate pentru aceste intervale ecuaţiile a(t); v(t ) şi s(t); Cu
excepţia primului interval, în aceste funcţii este folosită variabila t1 care reprezintă timpul de la
începutul intervalului respectiv.

33
Int a(t) v(t) s(t)

1 a max a max t 2 a max t 3


t
t 2 t 6 t
2 a max  t   t 2 t t t 2 
a max  t 1   a max  1  1  
 2  2 2 6 
 
3  t  t 2 3  t 3 t 2  3  t
2
3 7 
1  1   a max a max  1  t 1  t ac  t  a max  1  1  t 1  t ac  t   ac  t ac t  t 2 
 t 
 2 t 2   6 t 2  2  2 2 6 
4 0 a max  t ac  t  t 
a max  t ac  t    ac  t1 
 2 
5 a max t 1  t 2   t 3 
a max  1  t  t  a max  1   t  t    t  t ac  t  
k f 2 t  
 2 k 2t ac   6 k 2t ac 
1
2
reg 

 f   f
6 a max  3 t    3  t1
2
 t t  7 
a max  t ac  t  1  a max  t1  t ac  t    t ac  k f t  ac  t reg    t reg t  k f t 2  S
kf  2 kf 
  2  2 kf  2 2 6 
7  t 1  2  t 2
 a max  t   t ac 2 t ac t t 2  t  
3
1  1   t  t1   t1 t1 t  t ac
kf k f t  a max   a max  1
   k      t t  t   t  
  2 k f  1 2 k f t    2 k f 6 k 2 t f   reg  
ac reg
    f
2  2 2 6   2 2
+

34

S-ar putea să vă placă și