Sunteți pe pagina 1din 40

CINEMATICA ROBOILOR INDUSTRIALI

PROBLEMA CINEMATIC DIRECT


Problema cinematic direct reprezint ansamblul relaiilor care permit definirea
poziiei endefectorului n funcie de coordonatele articulare, practic ea asigurnd conversia
coordonatelor interne (articulare) n coordonate externe (operaionale). Poziia endefectorului
este definit prin cele m coordonate :
X = [ x
1
, x
2
, .... , x
m
] (1)
Variabilele articulare sunt definite astfel :
q = [ q
1
, q
2
, .... , q
n
]
T
(2)
Problema cinematic direct se exprim prin relaia :
X = f(q) (3)
iar problema cinematic invers prin relaia :
q = f
-1
(X)
Exist mai multe modalitai de definire a vectorului X , combinnd una din
metodele de definire a poziiei cu una dintre metodele de definire a orientrii.
De exemplu utiliznd cosinuii directori, obinem:
X = [P
x
, P
y
, P
z
, s
x
,s
y
, s
z
, n
x
, n
y
, n
z
, a
x
, a
y
, a
z
]
T
(4)
n cele mai multe cazuri , calculul lui X implic calculul matricei de transformare a
endefectorului.
Utiliznd triedrele i notaiile Hartemberg-Denavit , matricea de transformare a
coordonatelor triedrului i n coordonate i-1, se definete ca fiind
i-1
T
i

i-1
T
i
=
C i S i di
C iS i C iC i S i riS i
S iS i S iC i C i riC i


1
]
1
1
1
1
0
0 0 0 1
(5)
Conversia coordonatelor articulare n coordonate operaionale se face prin rezolvarea
problemei cinematice directe iar conversia coordonatelor coordonatelor operaionale n
coordonate articulare se face prin rezolvarea problemei cinematice inverse.
Aplicaie la problema cinematic direct
Fa de sistemul de coordonate fix, coordonatele unui punct, de exemplu articulaia
4 la momentul t
k
se determin rezolvnd problema cinematic direct.
Matricile de transformare omogene ale robotului PUMA 600 au forma :
0
T
1
=
C S
S C
1 1 0 0
1 1 0 0
0 0 1 0
0 0 0 1

1
]
1
1
1
1
1
T
2
=
C S
S C
2 2 0 0
0 0 1 0149
2 2 0 0
0 0 0 1

1
]
1
1
1
1
.
2
T
3
=
C S
S C
3 3 0
3 3 0 0
0 0 1 0
0 0 0 1

1
]
1
1
1
1
0
T
3
=
0
T
1

1
T
2

2
T
3

X
Y
Z
4
4
4
1

1
]
1
1
1
1
=
0
T
3

x
y
z
1

1
]
1
1
1
1
Pentru robotul Puma relaia de mai sus devine :
X
Y
Z
4
4
4
1

1
]
1
1
1
1
=
0
T
3

1
]
1
1
1
1
0 02
0 432
0
1
,
,
Rezolvnd sistemul ce rezult din relaia precedent, rezult:
X
4
= 0,432Cos
2
i(t)+0,149Sin i(t)-0,864Cos
2
i(t)Sin i(t)-0,02[Cos
3
i(t)-
Cos i(t)Sin i(t)]
Y
4
= -0,149Cos i(t)+0,432Cos i(t)Sin i(t)-0.864Cos i(t)Sin
2
i(t)-
0,02[Cos
2
i(t)Sin i(t)-Sin
3
i(t)]
Z
4
= -0,432Sin i(t)+0.04Cos i(t)Sin i(t)+0,432[-Cos
2
i(t)+Sin
2
i(t)]
Obinem astfel coordonatele operaionale (externe) n funcie de cele articulare
(interne), care n acelai timp reprezint i ecuaiile parametrice ale traiectoriei articulaiei 4
PROBLEMA CINEMATIC INVERS
Problema cinematic invers permite calculul coordonatelor articulaiilor, care aduc
endefectorul n poziia i orientarea dorit, date fiind coordonatele absolute (operaionale).
Atunci cnd problema cinematic invers are soluie, ea se constituie n modelul
geometric invers MGI.
Dac nu putem gsi o soluie analitic problemei cinematice inverse (ceea ce se
ntmpl destul de frecvent) putem apela la metode numerice, al cror neajuns ns l
constituie volumul mare de calcule. Cea mai frecvent metod este metoda Newton-Raphson.
Exist o varietate de metode de rezolvare a problemei cinematice inverse ( Pieper 68 ,
Paul 81 , Lee 83 , Elgazaar 85 , Pieper i Khalil 88 ).
Dintre acestea se remarc pentru facilitile pe care le ofer metoda Pieper i Khalil i
metoda lui Paul.
Metod lui Khalil i Pieper permite rezolvarea problemei cinematice inverse indiferent
de valorile caracteristicilor geometrice al robotului, dar pentru roboii cu ase grade de
libertate i care posed sau trei cuple cinemtice de rotaie cu axele concurente sau trei cuple
cinematice de translaie.
Datorit flexibilitii i faptului c posed soluie a problemei cinematice inverse,
aceast structur cu trei cuple de rotaie cu axele concurente (numit i structur "decuplat" )
se regsete n majoritatea modelelor de roboi comercializate.
Poziia punctului de intersecie al celor trei axe este unic determinat doar de
variabilele q
1
,q
2
,q
3
.
Un alt avantaj al structurii decuplate este c permite disocierea i tratarea separat a
poziionrii i a orientrii.
Metoda lui Paul trateaz separat fiecare caz n parte.
Mai exist i alte metode, ca cea a lui Lee i Elgazaar care ns nu au un mare grad
de generalitate i nu suport generalizari.
Spunem c un robot are soluie la problema cinematic invers dac putem s-i
calculm toate configuraiile care permit atingerea unei poziii date.
Nu toate mecanismele articulate satisfac aceasta condiie.
Dup Roth, roboii cu mai puin de ase grade de libertate au ntotdeauna soluie.
Roboii cu sase grade de libertate au soluie, dac prezint una dintre urmtoarele
caracteristici :
- posed trei cuple de translaie;
- posed trei cuple de rotaie cu axe concurente;
- posed o cupla de rotaie i una de translaie coaxiale;
- posed doua perechi de cuple de rotaie cu axe concurente.
Aproape toate structurile de roboi industriali utilizate n industrie prezint o soluie a
problemei cinematice inverse i de aceea au structuri asemnatoare celor descrise anterior.
Din punct de vedere al numrului de soluii exist trei cazuri :
I. Problema cinematic invers nu are soluii, ca n cazul cnd inta se afl n afara
spaiului de lucru al robotului.
II. Problema cinematic invers are o infinitate de soluii atunci cnd :
- robotul este redundant vis a vis de misiunea ncredinat;
- robotul se afl ntr-o configuraie singular. Robotul nu-i poate roti
endefectorul n jurul anumitor axe. Aceast situaie nu se datoreaz
structurii robotului ci valorilor numerice ale unor parametri ce descriu
situaiile impuse.
III. Problema cinematic invers are un numar finit de soluii i toate pot fi calculate
far ambiguitate. Numrul de soluii depinde de arhitectura robotului.
Pentru clasa roboilor cu ase grade de libertate posednd trei cuple cinematice de
rotaie cu axe concurente numrul maxim de soluii este de 32.
Acest numr, obinut atunci cnd nici un parametru geometric nu este nul, descrete
atunci cnd acetia iau anumite valori particulare.
Numarul de soluii mai depinde i de marimea curselor articulaiilor.
Rezolvarea problemei cinematice inverse
Fie un robot industrial a crui matrice de transformare omogen are expresia :
0
T
n
=
0
T
1
1
T
2
.....
n-1
T
n
(15)
Vom nota
U
0
=
0
T
1
1
T
2
......
n-1
T
n
(16)
unde U
0
=
1
1
1
1
]
1

1 0 0 0
Pz az nz sz
Py ay ny sy
Px ax nx sx
(17)
Matricea U
0
face parte din datele iniiale ale problemei. Ea descrie poziia final pe
care endefectorul trebuie s o ating.
Rezolvarea problemei cinematice inverse const n determinarea variabilelor articulare
pornind de la relaia (1.15) , n funcie de s , n , a i P.
Calculul primelor trei articulaii
Exist un algoritm care se refer la unul dintre cele mai frecvente arhitecturi de roboi:
cel al roboilor cu ase grade de libertate care posed trei cuple cinematice de rotaie cu axe
concurente.
Poziia punctului de intersectie al celor trei axe concurente este n funcie numai de
q
1
,q
2
,q
3
.
Avnd o structur decuplat se pot separa problemele de poziionare de cele de
orientare.
Deoarece avem de a face cu o structur decuplat :
0
P
6
=
0
P
4
(20)
Px
Py
Pz
1

1
]
1
1
1
1
=
0
T
0

1
T
2

2
T
3

3
T
4

0
0
0
1

1
]
1
1
1
1
(21)
Folosind relaia (1.20) putem determina variabilele q
1
,q
2
,q
3
. Din (1.21) obinem :
3
P
4
=
3
T
4

0
0
0
1

1
]
1
1
1
1
=
C S d
C S C C S r S
S S S C C r C
4 4 0 4
4 4 4 4 4 4 4
4 4 4 4 4 4 4
0 0 0 1

1
]
1
1
1
1



0
0
0
1

1
]
1
1
1
1
= (22)
=
d
r S
r C
4
4 4
4 4
1

1
]
1
1
1
1

unde:
- Ci = reprezint Cos(
i
) ,
- Si = reprezint Sin(
i
).
2
P
4
=
2
T
3

d
r S
r C
4
4 4
4 4
1

1
]
1
1
1
1

=
f
f
f
1
2
3
1

1
]
1
1
1
1
(23)
Utiliznd forma general a lui
2
T
3
, putem determina pe f
i
:
f
1
(
3
) = C3d
4
+S3S
4
r
4
+d
3

f
2
(q
3
) = C
3
(S3d
4
-C3S
4
r
4
)-S
3
(C
4
r
4
+r
3
) (24)
f3(q
3
)= S
3
(S3d
4
-C3S
4
r
4
)+C
3
(C
4
r
4
+r
3
)
Se observ c f
1
este funcie numai de
3
, n timp ce f
2
i f
3
sunt funcii de
3
i de
r3.
nmulind la dreapta cu
1
T
2
, obinem :
1
P
4
=
1
T
2

2
P
4
=
1
T
2

f
f
f
1
2
3
1

1
]
1
1
1
1
=
g
g
g
1
2
3
1

1
]
1
1
1
1
(25)
unde :
g
1
(
3
,q
3
) = F
1
(
3
,q
3
) + d
2

g
2
( q
2
,q
3
) = C
2
F
2
( q
2
,q
3
)-S
2
F
3
( r
2
, q
3
) (26)
g
3
( q
2
,q
3
) = S
2
F
2
( q
2
,q
3
) + C
2
F
3
( r
2
,q
3
)
cu :
F
1
(
3
,q
3
) = C2f
1
- S2f
2

F
2
(q
2
,q
3
) = S2f
1
+ C2f
2
(27)
F
3
(q
2
,q
3
) = f
3
+ r
2

In sfrit, nmulind la stga cu
0
T
1
, obinem :
0
P
4
=
0
T
1

1
P
4
=
C S
s C
r
1 1 0 0
1 1 0 0
0 0 1 1
0 0 0 1

1
]
1
1
1
1

g
g
g
1
2
3
1

1
]
1
1
1
1
(28)
Cum ns

0
P
4
=
Px
Py
Pz
1

1
]
1
1
1
1

rezult coordonatele punctului caracteristic manipulat fa de sistemul de coordonate fix :
P
x
= C1g
1
- S1g
2

P
y
= S1g
1
+ C1g
2
(29)
P
z
= g
3
+ r
1

Calculul lui
4
,
5
,
6
Mecanismul de orientare este constituit din trei cuple cinematice de rotaie cu axe
concurente.
O soluie general pentru determinarea lui
4
,
5
,
6
se obine pornind de la
ecuaia :
3
A
0
[ s n a ] =
3
A
6
(30)
Aceasta poate fi pus i sub forma :
3
A
0
[ s n a ] =
3
A
4

4
A
5

5
A
6
(31)
n forma ei general matricea
i-1
A
i
are forma :
i-1
A
i
= A(x,
i
) A(z ,
i
) (32)
Pentru a simplifica membrul drept, nmulim ambii membrii cu A(x,-
4
). Aceast
descompunere faciliteaz soluia dar nu este obligatorie. Prin nmulire obinem :
A(x,
4
)
3
A
0
[ s n a ] = A (z,
4
)
4
A
5
5
A
6
(33)
Termenul din stnga este cunoscut i l vom nota cu [ F G H ]
Vom obine:
[ F G H ] = A(z,
4
)
4
A
5

5
A
6
(34)
Soluia ecuaiei precedente se obine prin nmuliri succesive ;
A(z, -
4
) [ F G H ] =
4
A
5

5
A
6
(35)
Notam membrul stng cu U(i,j) iar pe cel drept cu T(i,j).
Atfel prima coloana a membrului stng devine :
U
1
(1,1) = C
4
F
x
+S
4
F
y

U
1
(2,1) = -S
4
F
x
+C
4
F
y

U
1
(3,1) = F
z

Analog se obin expresiile celei de a doua i celei de a treia coloane.
U
1
(1,2) = C
4
G
x
+S
4
G
y

U
1
(2,2) = -S
4
F
x
+C
4
G
y

U
1
(3,2) = G
z

U
1
(1,3)= C
4
H
x
+S
4
H
y

U
1
(2,3)= -S
4
H
x
+C
4
H
y

U
1
(3,3)= H
z

Pentru membrul drept obinem :
T
1
(1,1) = C5C6-S5C
6
S6
T
1
(2,1) = C 5S5C6+(C 5C5C 6-S 5S 6)S6
T
1
(3,1) = S 5S5C6+(S 5C5C 6+C 5S 5)S6
T
1
(1,2) = -C5S6-S5C 6C6
T
1
(2,2) = -C 5S5S6+(C 5C5C 6-S 5S 6)C6 (36)
T
1
(3,2) = -S 5S5S6+(S 5C5C 6+C 5S 6)C6
T
1
(1,3) = S5S 6
T
1
(2,3) = -C 5C5S 6-S 5C 6
T
1
(3,3) = -S 5C5S 6+C 5C 6
nmulind n continuare ecuaia (1.35) la stnga, obinem :
5
A
4
A(z,
4
) [F G H ] =
5
A
6
(37)
Elementele componente ale primei coloane a matricei membrului stng au forma :
U
2
(1,1) = (C5C4-C 5S5S4)Fx+(C5S4+C 5S5C4)Fy+S 5S5Fz
U
2
(2,1) = (-S5C4-C 5C5S4)Fx-(S5S4-C 5C5C4)Fy+S 5C5Fz
U
2
(3,1) = S 5S4Fx-S 5C4Fy+C 5Fz
Expresiile coloanei a doua se obin plecnd de la cele ale coloanei I nlocuind (Fx,Fy,Fz) cu
(Gx,Gy,Gz) iar cele ale coloanei a treia nlocuind (Fx,Fy,Fz) cu (Hx,Hy,Hz).
Elementele matricei membrului drept au forma :
T
2
(1,1) = C6
T
2
(2,1) = C 6S6
T
2
(3,1) = S 6S6
T
2
(1,2) = -S6
T
2
(2,2) = C 6C6
T
2
(3,2) = S 6C6
T
2
(1,3) = 0
T
2
(2,3) = -S 6
T
2
(3,3) = C 6
Din egalitatea U
2
(3,3) = T
2
(3,3) obinem
4

Cunoscnd
4
, din U
1
(1,3) = T
1
(1,3) i U
1
(3,3) = T
1
(3,3) obin
5

n sfrit din U
2
(1,1) = T
2
(1,1) i U
2
(1,2) = T
2
(1,2) rezult
6
.
Exist poziii i orientri corespunzatoare anumitor valori particulare ale
caracteristicilor geometrice ale robotului, crora le corespund ecuaii nedeterminate ale
coordonatelor robotului, numite singulariti.
Program de calcul pentru problema cinematic invers
n vederea realizrii unui program de calcul am apelat la un limbaj de programare care
ofer importante faciliti de calcul matricial i numeric: Mathematica 3.0.
Redm mai jos programul surs realizat n baza algoritmului de rezolvare a problemei
cinematice inverse descrise mai sus:
a={0,0,0.432,0.02,0,0};
b={0,-0.149,0,-0.432,0,-0.056}; notaiile H-D ale robotului PUMA 600
al={0,-Pi/2,0,Pi/2,-Pi/2,Pi/2};
coordonatele punctului din spaiul de lucru ( operaionale )
p={0.5,0.12,0.4}
f1[t3]=a[[4]] Cos[t3]+b[[4]] Sin[t3] Sin[al[[4]]]+a[[3]];
f2[t3]=Cos[al[[3]]] (Sin[t3] a[[4]]-Cos[t3] Sin[al[[4]]] b[[4]])-Sin[al[[3]]]
(Cos[al[[4]]] b[[4]]+b[[3]]);
f3[t3]=Sin[al[[3]]] (Sin[t3] a[[4]]-Cos[t3] Sin[al[[4]]] b[[4]])+
+Cos[al[[3]]] (Cos[al[[4]]] b[[4]]+b[[3]]);
F1[t2_,t3_]=Cos[t2] f1[t3]-Sin[t2] f2[t3];
F2[t2_,t3_]=Sin[t2] f1[t3]+Cos[t2] f2[t3];
F3[t2_,t3_]=f3[t3]+b[[2]];
g1[t2_,t3_]=F1[t2,t3]+a[[2]];
g2[t2_,t3_]=Cos[al[[2]]] F2[t2,t3]-Sin[al[[2]]] F3[t2,t3];
g3[t2_,t3_]=Sin[al[[2]]] F2[t2,t3]+Cos[al[[2]]] F3[t2,t3];
P1[t1_,t2_,t3_]=Cos[t1] g1[t2,t3]-Sin[t1] g2[t2,t3];
P2[t1_,t2_,t3_]=Sin[t1] g1[t2,t3]+Cos[t1] g2[t2,t3];
P3[t1_,t2_,t3_]=g3[t2,t3]+b[[1]];
H1[t1_,t2_,t3_]=f1[t3]^2+f2[t3]^2+F3[t2,t3]^2+a[[2]]^2;
H2[t1_,t2_,t3_]=f1[t3]^2+f2[t3]^2+a[[2]]^2+2 a[[2]] F1[t2,t3];
InverseFunction->Automatic;
FindRoot[{P1[t1,t2,t3]==p[[1]],P2[t1,t2,t3]==p[[2]],P3[t1,t2,t3]==p[[3]]},{t1,Pi/100},
{t2,Pi/100},{t3,Pi/100}]
A1[t1_]={{Cos[t1],-Sin[t1],0},{Cos[al[[1]]] Sin[t1],Cos[al[[1]]] Cos[t1],-in[al[[1]]]},
{Sin[al[[1]]] Sin[t1],Sin[al[[1]]] Cos[t1],Cos[al[[1]]]}};
A2[t2_]={{Cos[t2],-Sin[t2],0},{Cos[al[[2]]] Sin[t2],Cos[al[[2]]] Cos[t2],Sin[al[[2]]]},
{Sin[al[[2]]] Sin[t2],Sin[al[[2]]] Cos[t2],Cos[al[[2]]]}};
A3[t3_]={{Cos[t3],-Sin[t3],0},{Cos[al[[3]]] Sin[t3],Cos[al[[3]]] Cos[t3],Sin[al[[3]]]},
{Sin[al[[3]]] Sin[t3],Sin[al[[3]]] Cos[t3],Cos[al[[3]]]}};
A4[t4_]={{Cos[t4],-Sin[t4],0},{Cos[al[[4]]] Sin[t4],Cos[al[[4]]] Cos[t4],Sin[al[[4]]]},
{Sin[al[[4]]] Sin[t4],Sin[al[[4]]] Cos[t4],Cos[al[[4]]]}};
A5[t5_]={{Cos[t5],-Sin[t5],0},{Cos[al[[5]]] Sin[t5],Cos[al[[5]]] Cos[t5],Sin[al[[5]]]},
{Sin[al[[5]]] Sin[t5],Sin[al[[5]]] Cos[t5],Cos[al[[5]]]}};
A6[t6_]={{Cos[t6],-Sin[t6],0},{Cos[al[[6]]] Sin[t6],Cos[al[[6]]] Cos[t6],Sin[al[[6]]]},
{Sin[al[[6]]] Sin[t6],Sin[al[[6]]] Cos[t6],Cos[al[[6]]]}};
OR={{0,-1/sqrt[2],1qrt[2]},{1/sqrt[2],-1/2,-1/2},{1/sqrt[2],1/2,1/2}};
aa1=A1[0.79];aa2=A2[-1.26];aa3=A3[-0.236];
aaa=aa1.aa2.aa3;
K=aaa . A4[t4] . A5[t5] . A6[t6];
F=K[[1]];G=K[[2]];H=K[[3]];
f11=F[[1]];f12=F[[2]];f13=F[[3]];
g21=G[[1]];g22=G[[2]];g23=G[[3]];
h31=H[[1]];h32=H[[2]];h33=H[[3]];
OR1=OR[[1]];OR2=OR[[2]];OR3=OR[[3]];
or11=OR1[[1]];or12=OR1[[2]];or13=OR1[[3]];
or21=OR2[[1]];or22=OR2[[2]];or23=OR2[[3]];
or31=OR3[[1]];or32=OR3[[2]];or33=OR3[[3]];
FindRoot[{f13==0.4,g23==0.3,h31==0.45},{t4,0.01},{t5,0.01},{t6,0.01}]
Aplicaie
Am ales dou poziii din spaiul de lucru al robotului RIP 6,3 descrise de
urmtoarele coordonate operaionale :
q
1op
=[ 680.7 , 393 , 1200 ]
q
2op
=[ 335 , 580.23 , 1000 ]
pentru care prin aplicarea algoritmului de calcul am obinut urmtoarele coordonate
articulare:
q
1art
=[ 1.046 , -9.473 , 11.373 ]
q
2art
=[ 0.732 , -5.362 , 7.539 ]
Calculul distanei maxime a spaiului de lucru al roboilor industriali
Calculul maximului distanei de la origine la punctul caracteristic este ns o problem
dificil, avnd n vedere faptul c expresia acestei distane este o funcie cu un numr de
variabile egal cu cel al numrului de grade de libertate (n cele mai frecvente cazuri 6).
Volumul de calcule este foarte mare i uneori suntem obligai s apelm la metode
numerice de rezolvare a unor ecuaii, cele analitice nefiind operante.
De aceea am imaginat prezenta metod, care pornete de la problema cinematic
invers, evitnd astfel volumul mare de calcule necesitat de determinarea maximului unei
funcii cu ase variabile.
Fr a micora din gradul de generalitate al metodei se vor calcula maximul distanei
pentru robotul RIP 6,3.
nlocuind valorile parametrilor Hartemberg-Denavit ale robotului RIP 6,3 n
formulele (3.29) , (3.27) , (3.26) , (1.27) , obinem :
D
2
= 0.01728 C3 - 0.373248 S3 + 0.395849 (38)
Aceasta reprezint o ecuaie trigonometric n Sin(
3
) i Cos(
3
). Ea are soluie dac
este deplinit condiia :
( 0.01728 )
2
+ ( 0.373248 )
2
( 0.395849 - D
2
)
2
(39)
Efectund calculele , obinem :
D
4
-0.792 D
2
+ 0.017 < 0 (40)
Rezolvnd aceast inecuaie, i alegnd valorile poziive pentru D , obinem :
D [ 0.15 , 0.87721 ]
Deci pentru robotul RIP 6,3 valoarea maxim a distanei ce poate fi parcurs i
pentru care exist soluie a problemei cinematice inverse este 0.87721 m.
Aceast distan poate fi situat oriunde n interiorul spaiului de lucru al robotului,
dar trebuie s inem cont de faptul c acesta nu este omogen.
De asemeni folosind metoda expus mai sus putem spune dac poziia unui punct din
spaiu, exprimat n coordonatele sistemului fix poate fi accesat de ctre robot.
Calculnd distana de la acest punct la origine, pentru o anumit structur de robot,
putem indica dac valoarea distanei satisface ecuaia (40) sau nu i deci, dac problema
cinamatic invers are sau nu soluie.
Aceasta este echivalent cu a determina dac punctul se afl sau nu n interiorul
spaiului de lucru al robotului, ceea ce reprezint o metod rapid de diagnostic al
apartenenei punctului caracteristic manipulat la spaiul de lucru al robotului.
DINAMICA ROBOILOR INDUSTRIALI
Ecuaiile cinematice i dinamice ale unui robot industrial de tip serial
Un robot industrial de tip serial este un mecanism spaial care contine cuple
cinematice de rotaie sau de translaie.
Considerm un set de coordonate generalizate {qi}
n
, pe care le grupm ntr-un
vector n-dimensional al coordonatelor generalizate, q.
Vitezele generalizate se definesc ca fiind derivat n raport cu timpul al coordonatelor
generalizate, q.
Fie c
k
i c
k
vitezele i acceleratiile centrelor de greutate ale elementelui k, iar
wk i wk vitezele i acceleraiile unghiulare ale aceluiasi element k.
Astfel contribuia elementului k la fora de inerie generalizat se definete ca fiind:
c
k
w
k

k
* = -( )
T
m
k
c
k
- ( )
T
h
k
(40)
q q

k
* este un vector n-dimensional,iar h
k
este derivata n raport cu timpul al momentului
unghiular al elementului `k` n raport cu centrul sau de greutate
h
k
= I
k
w
k
+w
k
x I
k
w
k
(42)
unde:
I
k
este tensorul centroidal de inerie al elementului `k`. c
k
/ q i w
k
/ q sunt
mtrici 3 x n.
Vectorul n-dimensionl al forei de inerie generalizat a sistemului este :
c
k
w
k
* =
k
* = - [( )
T
m
k
c
k
+ ( )
T
h
k
]. (43)
q q
Pe de alt parte, dac asupra elementului k se acioneaz cu un sistem de fore i
momente care produc o fora rezultant f
k
actionnd n centrul de greutate al elementului i
un moment n
k
, atunci vectorul n-dimensional al forelor generalizate,corespunzator
elementului k este :
c
k
w
k

k
= ( )
T
f
k
+ ( )
T
n
k
. (44)
q q
Vectorul n-dimensional al forelor active generalizate care acioneaz asupra sistemului este
definit mai jos :
c
k
w
k
= [( )
T
f
k
+ ( )
T
n
k
], (45)
q q
Astfel ecuaia dinamic a sistemului devine : + * = 0 (46)
Ecuaia de mai sus este cunoscuta sub numele de ecuaia Kane
Calculul vitezelor unghiulare i al acceleraiilor
Viteza unghiular i acceleraia elementului i se calculeaz cu relaiile :
w
i
=

'

) ( " " ,
) ( " " ,
1
1
T t r a n s l a t i e d e e s t e i c i n e m a t i c a c u p l a d a c a w
R r o t a t i e d e e s t e i c i n e m a t i c a c u p l a d a c a e w
i
i i i

(47)
w
i
=

'

+ +

) ( " " ,
) ( " " ,
) ( " " ,
1
1 1
1
T t r a n s l a t i e d e e s t e i c i n e m a t i c a c u p l a d a c a w
R r o t a t i e d e e s t e i c i n e m a t i c a c u p l a d a c a e e x w w
T t r a n s l a t i e d e e s t e i c i n e m a t i c a c u p l a d a c a w
i
i i i i i i
i

(48)
Pentru:
i=1,2,....,n,
unde:
w
o
i w
o
sunt vitezele unghiulare i acceleraiile bazei. n scopul reducerii
complexittii calculelor, toti vectorii corespunzatori elementului i se vor exprima in funcie
de coordonatele sistemului i.
Astfel vitezele i acceleraiile unghiulare se vor exprima cu ajutorul urmtoarelor
formule :
Q
i
T
[w
i-1
]
i-1
+
i
[e
i
]
i
, dac cupla cinematic i este R
[w
i
]
i
= Q
i
T
[w
i-1
]
i-1
, dac cupla cinematic ieste T (49)
Q
i
T
[w
i-1
]
i-1
+ [w
i
x
i
e
i
+
i
e
i
]
i
, dac cupla cinematic i este R
[w
i
]
i
= Q
i
T
[w
i-1
]
i-1
, dac cupla cinematic ieste T (50)
Dac sistemul de referin inerial este ales cel al bazei, atunci:
[w
o
]
o
=0, [w
o
]
o
=0.
Calculul vitezelor i acceleraiilor centrelor de greutate
Fie c
i
vectorul de poziie al centrului de greutate, C
i
, al elementului i,
i
fiind
vectorul direcionat de la O
i
la C
i
(vezi figurile 3.1 i 3.2).
Vectorul de poziie a doua centre de greutate succesive este dat de relaia :
c
i
= c
i-1
-
i-1
+ a
i
+
i
(51)
sau,n coordonatele sistemului i :
[c
i
]
i
= Q
i
T
[c
i-1
+a
i
+
i-1
]
i-1
+ [
i
]
i
. (52)
Dup diferenierea ecuaiilor (52) fa de timp, obinem urmtoarele formule :
- dac cupla ieste de tip R,atunci :
[c
i
] = Q
i
T
[c
i-1
+w
i-1
x (a
i
-
i-1
)]
i-1
+[w
i
x
i
]
i
(53)
[c
i
]
i
= Q
i
T
[c
i-1
+w
i-1
x (a
i
x
i-1
) + w
i-1
x (w
i-1
x (a
i
-
i-1
))]
i-1
+ [w
i
x
i
+w
i
x (w
i
x
i
)]
i
(54)
- dac cupla cinematic ieste de tip T, atunci :
[c
i
]
i
= Q
i
T
[c
i-1
+w
i-1
x (a
i
-
i-1
)]
i-1
+ [w
i
x
i
-b
i
e
i
]
i
(55)
[c
i
]
i
= Q
i
T
[c
i-1
+w
i-1
x (a
i
-
i-1
)+w
i-1
x (w
i-1
x (a
i
-
i-1
))]
i-1
+[w
i
x
i
+w
i
x (w
i-1
x
i
)-b
i
e
i
- 2w
i
x b
i
e
i
]
i
. (56)
Fig.3.1. Elemente succesive articulate printr-o cupl de rotaie.
Fig.3.2. Elemente succesive articulate printr-o cupl de translaie.
pentru:
i=1,2,....,n,,unde c
o
i c
o
sunt respectiv viteza i acceleraia centrului de greutate al
bazei.
Dac baza este aleas ca sistem inerial de referin, atunci :
[c
o
]
o
= 0 i [c
o
]
o
=0.
In derivarea ecuaiilor (52),am folosit urmtoarele formulele de derivare ale vectorilor :
element i-
1
element i
O
i
O
i+1
C
i
C
i-1
O
o
O
i-1
a
i+1
c
i
c
i-1
a
i

i-
1
e
i+1
e
i
ee
a
i
O
i
O
o
C
i-1
C
i
O
i+1
d
i
b
i
c
i
c
i-1
O
i-1

i-1
e
i
e
i+1
elementul
`i-1`
elementul `i`

'

" " " " ,


" " " " ,
1
1
T t i p d e e s t e i c i n e m a t i c a c u p l a d a c a e b x a w
R t i p d e e s t e i c i n e m a t i c a c u p l a d a c a x a w
a
i i i i
i i
i
(57)
Program de calcul pentru determinarea vitezelor i a acceleraiilor
Pe baza algoritmului descris mai sus i utiliznd limbajul Mathematica 2.1. am
realizat urmtorul program de calcul :
alf={0,-Pi/2,-Pi/2,0,Pi/2,-Pi/2}
tet={0,Pi/2,0,0,0,0}
bb={-0.1,-0.1,0,-0.6,0,0} Notaiile H-D ale robotului RIP 6,3
aa={0,0,0,0,0,0}
rt={1,1,0,1,1,1}
f1[x_]=0.5295+0.0852 t ;
f2[x_]=-1.43-0.20487 t ;
f3[x_]=-0.03+0.448586 t ; Funciile ce descriu variaia coordonatelor interne ,
f4[x_]=x-4 ; interpolate cu funcii de gradul nti
f5[x_]=x-5 ;
f6[x_]=x-6 ;
f={f1[x],f2[x],f3[x],f4[x],f5[x],f6[x]}
e={{0},{0},{1}}
cr={{0},{0},{0}}
m={9.0,6.0,3.0,1.0,0.6,0.5}
ro1={{0},{0},{-0.1}}
ro2={{0},{0},{0}}
ro3={{0},{0},{0}}
ro4={{0},{0},{0.1}}
ro5={{0},{0.06},{0}}
ro6={{0},{0},{0.2}}
r={ro1,ro2,ro3,ro3,ro4,ro5,ro6}
i1={{0.02,0,0},{0,0.01,0},{0,0,0.01}}
i2={{0.05,0,0},{0,0.01,0},{0,0,0.06}}
i3={{0.4,0,0},{0,0.4,0},{0,0,0.01}}
i4={{0.001,0,0},{0,0.0005,0},{0,0,0.001}}
i5={{0.0005,0,0},{0,0.0002,0},{0,0,0.0005}}
i6={{0.003,0,0},{0,0.001,0},{0,0,0.002}}
am={i1,i2,i3,i4,i5,i6}
For[i=1,i<7,i++,ar=rt[[i]];g[x]=f[[i]];aj=aa[[i]];bj=bb[[i]];
te=tet[[i]];al=alf[[i]];
If[ar==1,
q[x_]={{Cos[te+g[x]],-Sin[te+g[x]],0},
{Cos[al]Sin[te+g[x]],Cos[al]Cos[te+g[x]],-Sin[al]},
{Sin[al]Sin[te+g[x]],Sin[al]Cos[te+g[x]],Cos[al]}};
Q[i_]=Transpose[q[x]];
a[i_]={{aj},{bj Sin[al]},{-bj Cos[al]}},
q[x_]={{Cos[te],-Sin[te],0},
{Cos[al]Sin[te],Cos[al]Cos[te],-Sin[al]},
{Sin[al]Sin[te],Sin[al]Cos[te],Cos[al]}};
Q[i_]=Transpose[q[x]];
a[i_]={{aj},{(bj+g[x]) Sin[al]},{-(bj+g[x]) Sin[al]}}];
If[ar==1,
dw[0]=cr;w[0]=cr;ca[0]=cr;r[[0]]=cr;w[i_]=Q[i] . w[i-1]+D[g[x],x]e;
wi=w[i];aw=w[i-1];alt=D[g[x],x]e;
d1=wi[[2]] alt[[3]]-wi[[3]] alt[[2]];
d2=wi[[1]] alt[[3]]-wi[[3]] alt[[1]];
d3=wi[[1]] alt[[2]]-wi[[2]] alt[[1]];
expr1[i_]={d1,d2,d3};
dw[i_]=Q[i] . dw[i-1]+D[g[x],{x,2}]e+expr1[i];adw=dw[i-1];dwa=dw[i];
di=a[i]-r[[i-1]];
exp1=adw[[2]] di[[3]]-adw[[3]] di[[2]];
exp2=adw[[1]] di[[3]]-adw[[3]] di[[1]];
exp3=adw[[1]] di[[2]]-adw[[2]] di[[1]];
expr2[i_]={exp1,exp2,exp3};
expa1=aw[[2]] di[[3]]-aw[[3]] di[[2]];
expa2=aw[[1]] di[[3]]-aw[[3]] di[[1]];
expa3=aw[[1]] di[[2]]-aw[[2]] di[[1]];
expr3[i_]={expa1,expa2,expa3};
aex=expr3[i];
expb1=aw[[2]] aex[[3]]-aw[[3]] aex[[2]];
expb2=aw[[1]] aex[[3]]-aw[[3]] aex[[1]];
expb3=aw[[1]] aex[[2]]-aw[[2]] aex[[1]];
expr4[i_]={expb1,expb2,expb3};
roi=r[[i]];
expc1=dwa[[2]] roi[[3]]-dwa[[3]] roi[[2]];
expc2=dwa[[1]] roi[[3]]-dwa[[3]] roi[[1]];
expc3=dwa[[1]] roi[[2]]-dwa[[2]] roi[[1]];
expr5[i_]={expc1,expc2,expc3};
expd1=wi[[2]] roi[[3]]-wi[[3]] roi[[2]];
expd2=wi[[1]] roi[[3]]-wi[[3]] roi[[1]];
expd3=wi[[1]] roi[[2]]-wi[[2]] roi[[1]];
expr6[i_]={expd1,expd2,expd3};
bex=expr6[i];
expe1=wi[[2]] bex[[3]]-wi[[3]] bex[[2]];
expe2=wi[[1]] bex[[3]]-wi[[3]] bex[[1]];
expe3=wi[[1]] bex[[2]]-wi[[2]] bex[[1]];
expr7[i_]={expe1,expe2,expe3};
ca[i]=Q[i] . (ca[i-1]+expr2[i]+expr4[i])+expr5[i]+expr7[i];
Print[i],
dw[0]=cr;w[0]=cr;ca[0]=cr;r[[0]]=cr;
w[i_]=Q[i] . w[i-1];wi=w[i];aw=w[i-1];alt=D[g[x],x]e;
dw[i_]=Q[i] . dw[i-1];adw=dw[i-1];dwa=dw[i];
d1=wi[[2]] alt[[3]]-wi[[3]] alt[[2]];
d2=wi[[1]] alt[[3]]-wi[[3]] alt[[1]];
d3=wi[[1]] alt[[2]]-wi[[2]] alt[[1]];
expr1[i_]={d1,d2,d3};
di=a[i]-r[[i-1]];
exp1=adw[[2]] di[[3]]-adw[[3]] di[[2]];
exp2=adw[[1]] di[[3]]-adw[[3]] di[[1]];
exp3=adw[[1]] di[[2]]-adw[[2]] di[[1]];
expr2[i_]={exp1,exp2,exp3};
expa1=aw[[2]] di[[3]]-aw[[3]] di[[2]];
expa2=aw[[1]] di[[3]]-aw[[3]] di[[1]];
expa3=aw[[1]] di[[2]]-aw[[2]] di[[1]];
expr3[i_]={expa1,expa2,expa3};
aex=expr3[i];
expb1=aw[[2]] aex[[3]]-aw[[3]] aex[[2]];
expb2=aw[[1]] aex[[3]]-aw[[3]] aex[[1]];
expb3=aw[[1]] aex[[2]]-aw[[2]] aex[[1]];
expr4[i_]={expb1,expb2,expb3};
roi=r[[i]];
expc1=dwa[[2]] roi[[3]]-dwa[[3]] roi[[2]];
expc2=dwa[[1]] roi[[3]]-dwa[[3]] roi[[1]];
expc3=dwa[[1]] roi[[2]]-dwa[[2]] roi[[1]];
expr5[i_]={expc1,expc2,expc3};
expd1=wi[[2]] roi[[3]]-wi[[3]] roi[[2]];
expd2=wi[[1]] roi[[3]]-wi[[3]] roi[[1]];
expd3=wi[[1]] roi[[2]]-wi[[2]] roi[[1]];
expr6[i_]={expd1,expd2,expd3};
bex=expr6[i];
expe1=wi[[2]] bex[[3]]-wi[[3]] bex[[2]];
expe2=wi[[1]] bex[[3]]-wi[[3]] bex[[1]];
expe3=wi[[1]] bex[[2]]-wi[[2]] bex[[1]];
expr7[i_]={expe1,expe2,expe3};
ca[i]=Q[i] . (ca[i-1]+expr2[i]+expr4[i])+expr5[i]+expr7[i]-D[g[x],{x,2}]e-2.expr1[i]];
jk=am[[i]];wi=w[i];dwa=dw[i];jt=jk . wi;
exf1=wi[[2]] jt[[3]]-wi[[3]] jt[[2]];
exf2=wi[[1]] jt[[3]]-wi[[3]] jt[[1]];
exf3=wi[[1]] jt[[2]]-wi[[2]] jt[[1]];
expr8[i_]={exf1,exf2,exf3};
ha[i]=jk . dwa+expr8[i];
Aplicaie
Pentru o micare executat ntre dou puncte P
1
i P
2
, ale spaiului de lucru (definite
anterior), micare generat n coordonate articulare, se vor determina vitezele i acceleraiile
gradelor de libertate 1 i 3.
Astfel n programul de mai sus vitezele unghiulare au fost notate cu w, matricile de
transformare cu Q, acceleraiile unghiulare cu dw , iar acceleraiile centrelor de greutate
cu ca.
Redm mai jos aceste mrimi pentru gradele de libertate nti i trei.
Print[w[3]];
{{(1 - 0.20487 Cos[4 - x] + 0.0852 Cos[1.43 + 0.20487 x] Sin[4 - x])
Sin[6 - x] + Cos[6 - x] (Cos[5 - x] (-0.0852 Cos[4 - x] Cos[1.43 + 0.20487 x] -
0.20487 Sin[4 - x]) - Sin[5 - x] (1 - 0.0852 Sin[1.43 + 0.20487 x]))},
{-(Cos[6 - x] (1 - 0.20487 Cos[4 - x] + 0.0852 Cos[1.43 + 0.20487 x] Sin[4 - x])) +
Sin[6 - x] (Cos[5 - x] (-0.0852 Cos[4 - x] Cos[1.43 + 0.20487 x] - 0.20487 Sin[4 - x]) -
Sin[5 - x] (1 - 0.0852 Sin[1.43 + 0.20487 x]))},
{1 + (-0.0852 Cos[4 - x] Cos[1.43 + 0.20487 x] - 0.20487 Sin[4 - x])
Sin[5 - x] + Cos[5 - x] (1 - 0.0852 Sin[1.43 + 0.20487 x])}}
Print[dw[3]];
{{-(Cos[6 - x] (1 - 0.20487 Cos[4 - x] + 0.0852 Cos[1.43 + 0.20487 x] Sin[4 - x])) +
Sin[6 - x] (Cos[5 - x] (-0.0852 Cos[4 - x] Cos[1.43 + 0.20487 x] - 0.20487 Sin[4 - x]) -
Sin[5 - x] (1 - 0.0852 Sin[1.43 + 0.20487 x])) + Sin[6 - x] (0.0852 Cos[4 - x] Cos[1.43 +
0.20487 x] + 0.20487 Sin[4 - x] - 0.0174549 Sin[4 - x] Sin[1.43 + 0.20487 x]) + Cos[6 - x] (-
0.0174549 Cos[1.43 + 0.20487 x] Sin[5 - x] + (-0.0852 Cos[4 - x] Cos[1.43 + 0.20487 x] -
0.20487 Sin[4 - x]) Sin[5 - x] + Cos[5 - x] (1 - 0.0852 Sin[1.43 + 0.20487 x]) + Cos[5 - x]
(0.20487 Cos[4 - x] - 0.0852 Cos[1.43 + 0.20487 x] Sin[4 - x] + 0.0174549 Cos[4 - x]
Sin[1.43 + 0.20487 x]))}, {(1 - 0.20487 Cos[4 - x] + 0.0852 Cos[1.43 + 0.20487 x] Sin[4 - x])
Sin[6 - x] + Cos[6 - x] (Cos[5 - x] (-0.0852 Cos[4 - x] Cos[1.43 + 0.20487 x] - 0.20487 Sin[4
- x]) - Sin[5 - x] (1 - 0.0852 Sin[1.43 + 0.20487 x])) - Cos[6 - x] (0.0852 Cos[4 - x] Cos[1.43
+ 0.20487 x] + 0.20487 Sin[4 - x] - 0.0174549 Sin[4 - x] Sin[1.43 + 0.20487 x])
+ Sin[6 - x] (-0.0174549 Cos[1.43 + 0.20487 x] Sin[5 - x] + (-0.0852 Cos[4 - x] Cos[1.43 +
0.20487 x] - 0.20487 Sin[4 - x]) Sin[5 - x] + Cos[5 - x] (1 - 0.0852 Sin[1.43 + 0.20487 x]) +
Cos[5 - x] (0.20487 Cos[4 - x] - 0.0852 Cos[1.43 + 0.20487 x] Sin[4 - x] + 0.0174549 Cos[4
- x] Sin[1.43 + 0.20487 x]))}, {0.0174549 Cos[5 - x] Cos[1.43 + 0.20487 x] + Cos[5 - x] (-
0.0852 Cos[4 - x] Cos[1.43 + 0.20487 x] - 0.20487 Sin[4 - x]) - Sin[5 - x] (1 - 0.0852
Sin[1.43 + 0.20487 x]) + Sin[5 - x] (0.20487 Cos[4 - x] - 0.0852 Cos[1.43 + 0.20487 x] Sin[4
- x] + 0.0174549 Cos[4 - x] Sin[1.43 + 0.20487 x])}}
Print[ca[3]];
{{-0.183804 - 0.0349098 (0.03 - 0.448586 x) Cos[1.43 + 0.20487 x] -
0.00725904 (-0.03 + 0.448586 x) Cos[1.43 + 0.20487 x] Sin[1.43 + 0.20487 x] +
Sin[1.43 + 0.20487 x] (2.1684 10
-19
Cos[1.43 + 0.20487 x] +
0.000725904 Cos[1.43 + 0.20487 x] Sin[1.43 + 0.20487 x]) -
Cos[1.43 + 0.20487 x] (0.000725904 Cos[1.43 + 0.20487 x]
2
+
0.00174549 Sin[1.43 + 0.20487 x] + 0.0852 (0.020487 - 0.00852 Sin[1.43 + 0.20487 x])
Sin[1.43 + 0.20487 x])}, {0.0764391 Cos[1.43 + 0.20487 x] - 0.000725904 Cos[1.43 +
0.20487 x]
2
- 0.00725904 (-0.03 + 0.448586 x) Cos[1.43 + 0.20487 x]
2
-
0.20487 (0.020487 - 0.00852 Sin[1.43 + 0.20487 x]) - 0.00174549 Sin[1.43 + 0.20487 x] -
0.0174549 (0.03 - 0.448586 x) Sin[1.43 + 0.20487 x] + 0.20487 (0.20487 (-0.03 + 0.448586
x) + 0.0852 (0.03 - 0.448586 x) Sin[1.43 + 0.20487 x])}, {0.00725904 (0.03 - 0.448586 x)
Cos[1.43 + 0.20487 x]
2
+ 0.0174549 (-0.03 + 0.448586 x) Sin[1.43 + 0.20487 x] +
0.0852 Sin[1.43 + 0.20487 x] (0.20487 (-0.03 + 0.448586 x) + 0.0852 (0.03 - 0.448586 x)
Sin[1.43 + 0.20487 x]) - Cos[1.43 + 0.20487 x] (2.1684 10
-19
Cos[1.43 + 0.20487 x] +
0.000725904 Cos[1.43 + 0.20487 x] Sin[1.43 + 0.20487 x]) - Sin[1.43 + 0.20487 x]
(0.000725904 Cos[1.43 + 0.20487 x]
2
+ 0.00174549 Sin[1.43 + 0.20487 x] + 0.0852
(0.020487 - 0.00852 Sin[1.43 + 0.20487 x]) Sin[1.43 + 0.20487 x])}}
Generarea micrii
Roboii industriali realizeaz trei mari grupe de operaii :
- deplasri pure;
- eforturi statice pure;
- sarcini complexe rezultate din combinarea deplasrilor i a eforturilor.
n cele ce urmeaz va fi analizat numai prima categorie de operaii, deplasarile pure.
n timpul unei deplasri un robot trebuie s parcurg o anumit traiectorie dup o
anumit lege orar. Aceast traiectorie este definit prin poziiile i orientrile succesive ale
endefectorului.
Studiul acestei probleme este necesar n vederea determinrii semnalelor de comand
pe fiecare grad de libertate necesar deplasrii endefectorului pe traiectoria impus.
Traiectoria endefectorului se realizeaz prin compunerea micrii tuturor gradelor de
libertate.
Practic, micarea endefectorului se descompune n micri ale gradelor de libertate,
poziiilor iniiale i finale ale endefectorului din spaiul coordonatelor operaionale le
corespund poziii n spaiul coordonatelor articulare.
Generarea micrii la nivelul unui grad de libertate se poate realiza n dou moduri :
1) n coordonate articulare (interne).
2) n coordonate operaionale (externe).
1) n coordonate articulare endefectorul i atinge inta (punctul final) n momentul
n care toate articulaiile i ating valoarea coordonatei finale.
Dezavantajul major al metodei const n faptul c nu exist un control al traiectoriei,
ci numai al poziiei finale. Metoda se aplic n cazul roboilor de vopsit.
2) Generarea micrii la nivelul unui grad de libertate n coordonate operationale se
realizeaz prin determinarea uneia sau a mai multor funcii de interpolare care asigur
atingerea anumitor puncte din spaiul operaional n funcie de timp.
Aceast metod nltur dezavantajele metodei precedente.
Printre modalitile de generare a micrii ntre doua puncte exist:
a) Deplasarea ntre dou puncte din spaiul de lucru al robotului, fr a i se impune
nici o restricie. n acest caz micarea este liber ntre cele dou puncte.
b) Deplasarea ntre dou puncte din spaiul de lucru al robotului cu condiia atingerii
unor puncte intermediare, n vederea evitarii unor coliziuni cu diferitele obstacole din spaiul
su de lucru.
c) Deplasarea ntre dou puncte din spaiul de lucru al robotului, traiectoria fiindu-i
impus (liniar, circular, etc.)
d) Deplasarea ntre dou puncte din spaiul de lucru al robotului de-a lungul unei
traiectorii impuse.
n unele dintre cazurile descrise mai sus, generarea micrii se poate face n spaiul
coordonatelor articulare (a i b).
n celelelte cazuri, micarea fiind definit prin coordonatele operaionale, acestea
trebuiesc transformate n coordonate articulare.
Generarea micarii n spaiul articulaiilor prezint numeroase avantaje, cum ar fi :
- micarea este minimal pe fiecare dintre articulaii;
- volumul de calcule necesar este mai mic;
- micarea nu este afectat de trecerea prin puncte singulare;
- limitrile de vitez i de cuplu se cunosc, ele corespunznd limitelor fizice ale
dispoziivelor de acionare (motoare elecetrice, hidraulice, etc.). n schimb exist un
dezavantaj major, cel al deplasrii imprevizibile ntre poziia iniial i cea final,
existnd riscul coliziunilor. Din acest cauz aceast metod de generare a micrii
se recomand pentru micri rapide n spaii lipsite de obstacole.
Generarea micrii n spaiul operational prezint avantajul controlului traiectoriei dar
are i unele dezavantaje, cum ar fi:
- este necesar n permanen conversia coordonatelor din spaiul operaional n cel al
articulaiilor, on line;
- metoda nu se poate aplica n cazul punctelor singulare sau a celor care nu aparin
spaiului de lucru al robotului;
- limitele de vitez i cuplu fiind definite n spaiul articulatiilior, nu se pot utiliza direct
n cel operational. n acest caz se impun limitri prin valorile medii ale parametrilor de
performan ai robotului, indiferent de configuraie, rezultnd uneori utilizarea lui sub nivelul
performanelor sale.
Generarea micrii ntre dou puncte n spaiul articulaiilor
Fie un robot industrial cu n grade de libertate, q
i
i q
f
vectorii poziiei iniiale i
finale n spaiul articulatiilor iar v
m
i a
m
respectiv viteza i acceleraia maxim. Legea de
micare este exprimat prin ecuaia :
q(t) = q
i
+ r(t) D (58)
unde:
0<t<t
f
i D = q
f
-q
i
(59)
r(t) este o funcie de interpolare definit prin urmtoarele condiii iniiale:
r(0) = 0;r(t
f
) = 1 (60)
Cele mai frecvente funcii de interpolare utilizate sunt cele polinomiale de gradul nti sau
trei.
n cazul utilizrii funciilor polinomiale de gradul nti, micarea fiecrei articulaii
este descris printr-o funcie de gradul nti, ecuaia micrii putndu-se exprima sub forma :
q(t) = q
i
+ t/t
f
D (61)
Prin derivarea relaiei de mai sus se obine :
q`(t) = D/t
f
(62)
Deci viteza va fi constant de a lungul intregii traiectorii. Graficele de variaie ale coordonatei
articulare, vitezei i acceleraiei sunt redate n figura 3.5.
r(t) = a
0
t
3
+a
1
t
2
+a
2
t+a
3
(63)
iar condiiile limit sunt :
q(0) = q
i

q(t
f
) = q
f

q(0) = 0 (64)
q(t
f
) = 0
Coeficienii a
i
se obin prin rezolvarea sistemului de mai sus, rezultnd :
a
0
=qi
a
1
=0
a
2
=3D/t
f
2

a
3
=-2D/t
f
3

Deci:
r(t) = 3(t/t
f
)
2
-2(t/t
f
)
3
(65)
Graficele de variaie ale coordonatelor articulare, vitezei i acceleraiei sunt redate n figura
3.3.
n unele cazuri se impun legile de variaie ale vitezelor i acceleraiilor n funcie de
timp.
Cea mai frecvent utilizat lege de variaie a vitezelor este dup un profil trapezoidal.
q
j

q
f
j
q
i
j
t
f
t
q
j

(q
f
j
-q
i
j
)t
f

t
q
j

t
Fig. 3.3. Interpolarea liniar pentru un modul
q
j

q
f
j

q
i
j

t
f
t
q
j

3|D
j
|/2t
f

t
q
j

6|Dj|/t
f
2

t
Fig.3.4. Interpolarea cu polinoame de gradul trei pentru un modul
Pentru intervalul [0, ] avem urmtoarele condiii limit :
q
k
(0)=a
m

q
k
(0)=0 (66)
q
k
(0)=0
Prin integrarea lui (66) se obine :
q
k
(t) = a
m
t+k
1

Din relaia de mai sus rezult c:
q
k
(t) = a
m
t
2
/2
Pentru intervalul ( , t
f
- ] condiile limit sunt :
q
k
= 0
q
k
= v
m

Prin integrare se obine :
q
i
(t) = v
m
t
q
i
(t) = v
m
t
2
/2+k
3

Dar,
q
i
( ) = a
m

2
/2 , din condiia de continuitate n .
v
m

2
/2+k
3
= a
m

2
/2 => k
3
=
2
/2(a
m
-v
m
)
Deci:
q
i
(t) = v
m
t
2
/2+
2
/2(a
m
-v
m
)
Pentru t = t
f
- , obinem :
q
i
(t
f
- ) = (v
m
t
f
2
+
2
a
m
-2v
m
t
f
)/2
Pentru intervalul (t
f
- ,t
f
] condiiile limit devin :
q
k
= -a
m

q
k
(t
f
)= 0
Prin integrarea se obine :
q
k
(t) = -a
m
t+k
4

Pentru k
4
obinem:
k
4
= a
m
t
f
, i deci : q
k
(t) = -a
m
t+a
m
t
f

Integrnd se obine :
q
k
(t) = (-a
m
t
2
/2+amt
f
t )+k
5

Din condiia de continuitate n t
f
- se obine :
k
5
= ( 2a
m

2
-a
m
t
f
+v
m
tf
2
-2v
m
t
f
)/2
Deci, pentru diagramele de variaie a vitezelor i acceleraiilor impuse modulului k se
obine:
a
m
t
2
/2 pentru t [o, ]
q
k
(t) = [v
m
t
2
+
2
(a
m
-v
m
)]/2 pentru t ( ,t
f
- ]
[-a
m
t
2
/2+a
m
t
f
t]+[2a
m

2
-a
m
t
f
+v
m
t
f
2
-2v
m
t
f
]/2 pentru t (t
f
-
,t
f
]
n acest exemplu am considerat o anumit alur a graficelor de variaie ale vitezelor i
acceleraiilor i timpi de accelerare i decelerare egali. Metoda expus mai sus se preteaza
ns i la o generalizare, putnd lua n considerare timpi de accelerare i decelerare diferii
(
1


2
) i grafice de variaie ale vitezelor i acceleraiilor avnd o alta alur dat de o
expresie analitic oarecare.
Aplicaie
Fie dou puncte P
1
i P
2
din spaiul de lucru al robotului RIP 6,3, descrise n
coordonate operaionale i pentru care am determinat n capitolul 1 coordonatele articulare
prin rezolvarea problemei cinematice inverse. Am luat n considerare numai primele trei
grade de libertate care asigur poziionarea.
P
1op
=[0.50,0.12,0.4]
P
2op
=[0.40,0.1,0.30]
P
1art
=[0.529533,-1.43014,-0.03022]
P
2art
=[0.614724,-1.63487,0.418366]
Dorim s generm micarea ntre cele dou puncte n coordonate articulare. Putem
exprima legile de micare cu ajutorul unor funcii polinomiale de gradul nti sau de gradul
trei. Pentru a reduce volumul calculelor vom opta n acest caz pentru funciile de gradul nti.
Deci, vom avea :
q
1
(t) = 0.5295 + 0.0852 ( t/t
f
)
q
2
(t) = -1.43 0.20487 ( t/t
f
)
q
3
(t) = -0.03 + 0.448586 ( t/t
f
)
Dac lum n considerare un timp total t
f
= 1 sec. , relaiile de mai sus devin :
q
1
(t) = 0.5295 + 0.0852 t
q
2
(t) = -1.43 0.20487 t
q
3
(t) = -0.03 + 0.448586 t
Vom analiza i varianata interpolrii cu funcii de gradul trei.
q
1
(t) = 0.5295 + 0.0852 [3(t/t
f
)
2
-2(t/t
f
)
3
]
q
2
(t) = -1.43 0.20487 [3(t/t
f
)
2
-2(t/t
f
)
3
]
q
3
(t) = -0.03 + 0.448586 [3(t/t
f
)
2
-2(t/t
f
)
3
]
Pentru un timp total t
f
= 1 sec. , relaiile de mai sus devin :
q
1
(t) = 0.5295 + 0.0852 (3t
2
-2t
3
)
q
2
(t) = -1.43 0.20487 (3t
2
-2t
3
)
q
3
(t) = -0.03 + 0.448586 (3t
2
-2t
3
)
Planificarea traiectoriilor roboilor industriali
Problemele cinematicii, dinamicii i ale generrii micrii la nivelul unui grad de
mobilitate au fost examinate n capitolele anterioare, astfel nct, n acest capitol ne vom referi
la problema determinrii algoritmului pentru conducere ce asigur micarea RI n lungul unei
traiectorii prestabilite.
nainte de nceperea micrii RI este important s se cunoasc dac exista pe
traiectoria RI obstacole i dac exist restricii pe traiectoria endefectorului.
Pot exista dou tipuri de coliziuni:
- ale corpului robotului cu obstacole din spaiul su de lucru;
- ale endefectorului cu obstacole din spaiul su de lucru.
n funcie de rspunsurile la aceste dou ntrebri regula de conducere a roboilor
aparine unuia din cele patru tipuri indicate n tabelul 5.1. Din acest tabel se observ c
regulile de conducere a roboilor se mpart n dou categorii :
- cnd exist obstacole pe traiectorie;
- cnd nu exist obstacole pe traiectorie.
n acest capitol sunt examinate diferite moduri de planificare a traiectoriilor cnd
lipsesc obstacolele.
n situaia n care exist obstacole, acestea vor fi ocolite, cea mai simpl metod de a
le ocoli fiind prin stabilirea unui numar de puncte intermediare.
Traiectoria stabilit a obiectului manipulat poate fi definit sub forma unei succesiuni
de puncte n spaiul n care sunt date poziia i orientarea sub forma unei curbe spaiale ce
unete aceste puncte.
Curba de-a lungul creia se deplaseaz endefectorul din poziia iniial n cea final
se numete traiectoria end-efectorului.
Sarcina noastr const n elaborarea unui algoritm pentru alegerea i descrierea
micrii dorite a manipulatorului ntre punctul iniial i cel final al traiectoriei.
Diferena dintre diferitele metode de planificare a traiectoriilor roboilor se reduce la
aproximaii sau la interpolarea traiectoriei alese cu polinoame de diferite clase i la alegerea
unei succesiuni oarecare de puncte de sprijin n care se produce corectarea parametrilor
micrii robotului pe traiectoria dintre punctul iniial i cel final.
Punctul iniial i cel final al traiectoriei pot fi descrise att n coordonate interne
(articulare) ct i n coordonate externe (operaionale). Mai frecvent se utilizeaz coordonatele
operaionale, ntruct cu ajutorul lor este mai comod s se stabileasc poziia corect a
endefectorului.
Dac ntre punctul iniial i cel final al traiectoriei este necesar cunoaterea
coordonatelor articulare, valorile lor se pot obine cu ajutorul programului de rezolvare a
problemei cinematice inverse.
De regul traiectoria ce unete poziia iniial i final a EE nu este unic.
Este posibil, de exemplu, deplasarea EE att n lungul dreptei care uneste cele dou
puncte ct i de-a lungul unei curbe oarecare ce satisface un ir de restricii pentru poziia i
orientarea EE pe poriunile iniiale i finale ale traiectoriei.
Tabelel 3.1 Tipuri de conducere a roboilor.
Obstacole pe traiectoria robotului
Exist Lipsesc
Limitele
pe
traiectoria
robotului
Exist
Planificarea
autonom a
traiectoriei ce
asigur ocolirea
obstacolelor, plus
reglarea micrii n
lungul traiectoriei
alese n procesul de
funcionare a
robotului
Planificarea
autonom a
traiectoriei
plus reglarea
micrii n
lungul
traiectoriei
alese n
procesul de
funcionare a
robotului
Lipsesc
Conducera pe
poziie plus
detectarea i
ocolirea
obstacolelor n
procesul de micare
Conducera pe
poziie
n acest capitol se examineaz modalitile de planificare att ale traiectoriilor
rectilinii ct i al traiectoriilor plane neliniare.
Mai nti vom examina cel mai simplu caz de planificare al traiectoriilor ce satisface
cteva restricii privind caracterul micrii EE iar apoi rezultatul obinut l vom generaliza cu
scopul lurii n consideraie a limitelor dinamicii robotului.
Pentru o mai bun nelegere, planificarea micrii poate fi socotit ca o cutie
neagr. La intrare se indic cteva variabile ce caracterizeaz limitele aflate pe traiectorie.
Ieirea este o succesiune dat n timp a punctelor intermediare n care sunt determinate n
coordonate articulare i operaionale, poziia, orientarea, viteza i acceleraia EE prin care
obiectul manipulat trebuie s treac ntre punctul iniial i cel final.
La planificarea traiectoriilor se folosete una dintre urmtoarele dou abordri :
1) Programatorul indic un set precis de restricii pentru poziie, viteza i acceleraia
coordonatelor generalizate ale manipulatorului n cteva puncte ale traiectoriei
(puncte nodale). Dup aceasta, planificatorul traiectoriilor alege dintr-o clas
oarecare a funciilor funcia care trece prin punctele nodale i care satisface n aceste
puncte restricii date.
2) A doua abordare const n aceea c programatorul indic traiectoria dorit a
robotului sub forma unei funcii oarecare descris analitic, de exemplu o traiectorie
rectilinie descris n coordonate carteziene. Programatorul produce o aproximare a
traiectoriei date n coordonate articulare sau operaionale.
n prima abordare, determinarea restriciilor i planificarea traiectoriei se produce n
coordonate articulare.
ntruct n micarea EE nu apar restricii, programatorului i este greu s determine
traiectoria realizat a EE i de aceea apare posibilitatea ciocnirii cu obstacole.
n cazul celei de a dou abordri restriciile se indic n coordonate operaionale n timp
ce acionrile de for au parametrii exprimai n coordonate articulare.
Cu ajutorul transformrilor funcionale (problema cinematic invers) se trece de la
limitele exprimate n coordonate operaionale la cele n coordonate articulare i numai dup
aceea se caut printre funciile de clas stabilite traiectoria ce satisface restriciile exprimate n
coordonate articulare.
Cele dou abordri de mai sus pentru planificarea traiectoriei ar putea fi folosite
(practic n timp real) pentru realizarea eficient a succesiunilor de puncte nodale ale
traiectoriilor robotului.
Totui, succesiunea dat n timp a vectorilor {q(t) , d[q(t)]/dt , d
2
[q(t)]/dt
2
} n spaiul
variabilelor articulare se formeaz fr a lua n consideraie limitele dinamicii manipulatorului
ceea ce poate conduce la apariia unor erori.
Formularea general a problemei planificrii traiectoriilor.
Planificarea traiectoriilor se poate produce att n coordonate articulare ct i
operaionale.
La planificarea traiectoriilor n coordonate articulare pentru descrierea complet a
micrii manipulatorului se indic dependena n funcie de timp a tuturor variabilelor
articulare ca i a primele dou derivate ale lor.
Dac planificarea traiectoriilor se face n coordonate operaionale se indic dependena
de timp a poziiei, vitezei i acceleraiilor EE i pe baza acestor informaii se determin
valorile coordonatelor articulare ale vitezelor i acceleraiilor lor.
Planificarea micrii n coordonate articulare prezint trei avantaje :
1) Se indic comportamentul variabilelor controlate direct n procesul de micare al
robotului;
2) Planificarea traiectoriei se poate realiza practic n timp real;
3) Traiectoriile variabilelor articulare sunt mai uor de planificat.
Deficiena const n modul complicat de determinare a poziiei diferitelor elemente ale
robotului i a EE n procesul micrii.
O asemenea procedur este adesea necesar pentru a evita ciocnirea cu obstacole ce
exist pe traiectoria EE.
n caz general algoritmul principal de formare a punctelor nodale ale traiectoriei din
spaiul variabilelor articulare este foarte simplu:
t = t
0

ciclul : asteptai momentul urmtor al coreciei ;
t = t+dt ;
h(t) este funcia care exprim poziia dat a manipulatorului n spaiul variabilelor articulare la
momentul t.
Dac t= t
f
, ieii din procedur;
Realizai ciclul;
Aici dt este intervalul de timp dintre dou momente succesive ale coreciei
parametrilor de micare ai robotului.
Pe traiectoria planificat exist trei tipuri de restricii :
1) punctele nodale ale traiectoriei trebuie s se calculeze uor prin procedee nerecurente;
2) trebuie s se asigure continuitatea coordonatelor articulare i a primelor dou derivate;
3) trebuie s fie reduse la minimum micrile inutile de tip mprtiere.
Restriciiile enumerate mai sus sunt satisfcute de traiectoriile generate de succesiuni
polinoamiale.
Spre exemplu, dac, pentru descrierea micrii unei articulaii i se folosete
succesiunea p a polinoamelor, ele trebuie s conin 3(p+1) coeficienii alei n
concordan cu condiiile iniiale i finale pentru poziie, vitez i acceleraie i s asigure
continuitatea acestor caracteristici pe ntreaga traiectorie.
Dac se adaug o restricie suplimentar, de exemplu, se indic o poziie ntr-un punct
oarecare, intermediar al traiectoriei, atunci pentru realizarea acestei condiii se cere o condiie
suplimentar.
De regul, se indic dou condiii suplimentare pentru poziie (n apropierea punctului
iniial al traiectoriei i n aproperea celui final) care asigur direciile nepericuloase ale
micarii pe poriunile iniial i final i o precizie mai mare a conducerii micrii.
n acest caz, variaia fiecrei variabile articulare poate fi descris cu un singur polinom
de gradul apte sau cu dou polinoame: unul de grad patru i unul de grad trei ( 4-3-4) sau ( 3-
5-3 ).
Aceste procedee sunt examinate n urmtoarele subcapitole.
Dac planificarea traiectoriei se face n coordonate operaionale algoritmul indicat mai
sus se transform, avnd urmtorul aspect :
t = t
o

ciclul : asteptai momentul urmtor al coreciei;
t = t
o
+ dt ;
unde:
H(t) este poziia EE n spaiul operaional la momentul t;
Q[H(t)] este vectorul coordonatelor articulare ce corespund lui H(t);
Dac t = t
f
ieii din procedur;
Realizai ciclul;
Aici, pe lng determinarea funciei traiectoriei H(t) n fiecare punct de corecie al
parametrilor de micare a RI se cere s se determine i valorile variabilelor articulare ce
corespund poziiei calculate a EE . Funcia matriceala H(t) descrie poziia EE n spaiul
absolut i n momentul de timp t i dup cum se arat n subcapitolul 5.3 , ea reprezint
matricea de transformare a coordonatelor cu o dimensiune de 4 x 6.
n general, planificarea traiectoriilor n coordonate operaionale se compune din 2 pai
succesivi:
1) formarea succesiunii punctelor nodale n spaiul operaional, care sunt dispuse n
lungul traiectoriei planificate a EE;
2) alegerea unor funcii de orice clas care descrie (aproximeaz) poriunile traiectoriei
ntre punctele nodale , n concordan cu un criteriu oarecare.
Exist dou abordri principale fa de planificarea traiectoriilor n spaiul operaional.
n prima dintre ele majoritatea calculelor, optimizarea traiectoriilor i reglarea
ulterioar a micrii se produc n coordonate operaionale. Dnd acionrii semnalul de
comand se calculeaz diferen dintre poziia curent i cea dat a EE n spaiul operaional.
Punctele nodale de pe traiectoria rectilinie dat n spaiul cartezian se aleg pentru intervalele
de timp fixate. Calcularea valorilor coordonatelor articulare n aceste puncte se produce n
procesul de conducere a micarii RI, utiliznd modelul geometric invers.
A doua abordare const n aproximarea poriunilor rectilinii ale traiectoriei din spaiul
variabilelor articulare obinute ca rezultat al interpolrii traiectoriei ntre punctele nodale cu
polinoamele de grad mic. Reglarea micrii n aceast abordare are loc la nivelul variabilelor
articulare. Semnalul de comand transmis la acionare se calculeaz pentru diferena dintre
poziia curent i cea dat a RI n spaiul coordonatelor articulare.
Prima dintre abordrile enumerate mai sus pentru planificarea traiectoriilor n spaiul
operaional permite s se asigure o mare precizie a micrii n lungul traiectoriei date. Totui,
toi algoritmii cunoscui pentru conducerea micrii se construiesc avnd n vedere lipsa
traductorilor care msoar poziia EE n spaiul operaional i n cel articular. Aceasta
conduce la necesitatea realizrii transformrii coordonatelor operaionale ale EE n vectorul
coordonatelor articulare ale RI, dar n procesul micrii aceasta este o problema care cere un
volum mare de calcule i adesea un timp mare pentru conducerea RI. Mai departe, cerinele
fa de traiectorie ( continuitate, condiii limitative ) se formuleaz n coordonate operaionale,
n timp ce limitrile dinamice ce sunt luate n consideraie n etapa planificrii traiectoriei se
indic n spaiul coordonatelor articulare. Neajunsurile enumerate ale primei abordri conduc
la faptul c se folosete mai mult a doua abordare bazat pe transformarea coordonatelor
carteziene ale punctelor nodale n coordonate articulare corespunztoare, cu efectuarea
ulterioar a interpolrii n spaiul variabilelor articulare cu polinoame de grad mic. Aceast
abordare necesit mai puin timp pentru calcule n comparaie cu prima abordare i uureaz
luarea n considerare a limitelor dinamicii RI. Totui precizia micrii n lungul traiectoriei
date n spaiul operaional se micoreaz n acest caz. n subcapitolul urmtor vom examina
cteva scheme de planificare a traiectoriilor ce folosesc abordrile indicate.
Traiectoriile n spaiul variabilelor articulare
La conducerea roboilor industriali, nainte de a trece la planificarea traiectoriei de
micare este necesar s se determine configuraiile robotului n punctul iniial i cel final al
traiectoriei. Planificarea traiectoriilor n spaiul variabilelor articulare se va efectua innd
cont de urmtoarele considerente:
1) n momentul ridicri obiectului de manipulat micarea EE trebuie s fie ndreptat de la
obiect; n caz contrar se poate produce ciocnirea EE cu suprafaa pe care este aezat obiectul.
2) Se va indica poziia punctului iniial al EE i normala ce trece prin poziia iniial pe
suprafaa pe care este aezat obiectul, stabilindu-se astfel coordonatele punctului iniial.
Indicndu-se timpul n care EE ajunge n acest punct, se poate comanda viteza de micarea a
EE.
3) Condiii analoage se pot formula pentru punctul de apropiere de poziia final : EE trebuie
s treac prin punctul de apropiere aflat pe normala EE ce trece prin poziia final a EE spre
suprafaa pe care trebuie s fie aezat obiectul manipulat. Aceasta asigur o direcie corect a
micrii pe intervalul final a traiectoriei (intervalul de apropiere).
4) Din cele artate mai sus rezult c orice traiectorie a micrii RI trebuie s treac prin 4
puncte date: punctul iniial, punctul de pornire, de apropiere i cel final.
5) Pe traiectorie trebuie s se indice urmtoarele:
a) punctul iniial - descris de vitez i acceleraie (adesea egale cu zero);
b) punctul de plecare - poziia , viteza i acceleraia sunt continui ;
c) punctul de apropiere - la fel ca i pentru cel de plecare;
d) punctul final - sunt date viteza i acceleraia (de obicei egale cu zero).
6) Valorile coordonatelor articulare trebuie s se afle n limitele restriciilor fizice i
geometrice ale fiecrei articulaii.
7) La determinarea timpului de micare este necesar s se in seama de urmtoarele:
a) timpul de parcurgere a poriunii iniiale i a celei finale a traiectoriei se alege innd seama
de viteza cerut pentru apropierea i plecarea EE, i reprezint o constant oarecare ce
depinde de caracteristicile acionrilor de for ale articulaiilor;
b) timpul de micare pe intervalul medie a traiectoriei se determina prin valorile maxime ale
vitezelor i acceleraiilor fiecreia dintre articulaii. Pentru normare se folosete timpul maxim
necesar pentru trecerea prin aceasta poriune a traiectoriei articulaiei care este cea mai puin
rapid.
Se recomand s se aleag un grad oarecare al funciilor polinomului ce permite s se
efectueze interpolarea traiectoriei pentru punctele nodale date (punctul iniial, de pornire, de
apropiere i cel final) care asigur realizarea condiiei continuitii poziiei, a vitezei i a
acceleraiei pe tot intervalul de timp [ t
o
, t
f
].
Punctul iniial :
1) poziia (este dat);
2) viteza (este dat de obicei egal cu zero);
3) acceleraia (este dat de obicei zero);
Puncte intermediare :
4) poziia n punctul de plecare, de pornire (se alege);
5) poziia n punctul iniial (se schimb nentrerupt la trecerea ntre poriunile succesive ale
traiectoriei);
6) viteza (se schimb nentrerupt la trecerea ntre poriunile succesive ale traiectoriei);
7) acceleraia (se schimba nentrerupt la trecerea ntre poriunile succesive ale traiectoriei);
8) poziia n primul punct de apropiere (se alege);
9) poziia n punctul de apropiere (se schimb nentrerupt la trecerea ntre poriunile succesive
ale traiectoriei) ;
10) viteza (se schimb nentrerupt la trecerea ntre poriunile succesive ale traiectoriei) ;
11) acceleraia (se schimba nentrerupt la trecerea ntre poriunile succesive ale traiectoriei);
Punctul final :
12) poziia (este dat)
13) viteza (este dat , de obicei zero)
14) acceleraia (este dat , de obicei zero)
Una dintre modaliti const n aceea c se descrie micarea articulaiei i cu un polinom de
gradul apte:
q
i
(t) = a
7
t
7
+a
6
t
6
+....+ a
2
t
2
+a
1
t+a
0
,
n care coeficienii necunoscui a
i
se determin din condiiile limit date i din condiiile de
continuitate. Totui folosirea unui asemenea polinom de un grad mare are un ir de
inconveniente. n particular sunt greu de determinat valorile extreme. Abordarea alternativa
const n faptul c se mparte traiectoria micrii n cteva poriuni i fiecare din acestea se
interpoleaz cu un polinom de grad mic.
Exist diferite mijloace de mprire a traiectoriei n poriuni, fiecare din ele avnd
avantaje i dezavantaje. Varianta 4-3-4 este cea mai rspndit. Legea de variaie a
coordonatelor articulare pentru un grad de mobilitate se exprim n figura 3.5.
D
C

B
A
Fig. 5.1.
A = punctul iniial
B = punctul de plecare
C = punctulde apropiere
D = punctul final
- AB = intervalul de pornire ;
- BC = intervalul de-a lungul creia se pstreaz constante viteza i acceleraia ;
- CD = intervalul final, de poziionare.
Pentru a obine o bun precizie de poziionare trebuie s fragmentm traiectoria n cel
putin trei intervale :
- un interval de pornire , la sfritul creia se ating viteza i acceleraia maxim ;
- un interval de-a lungul creia se pstreaz constante viteza i acceleraia iar EE parcurge
cea mai mare parte a traiectoriei;
- un interval final, de poziionare.
Uneori, n funcie de necesiti, i intervalul median se mparte la rndul ei n mai multe
intervale, dac exist obstacole sau dac se impune modificarea parametrilor cinematici.
Aceast fragmentare este necesar n primul rnd datorit exigenelor impuse de precizia de
poziionare. Evident c este necesar un prim interval de accelerare de la viteza iniial ( de
cele mai multe ori zero ) la cea de regim. Intervalul final este necesar pentru a putea realiza o
puternic decelerare ( de obicei pn la vitez zero ), fr de care nu s-ar putea realiza
poziionarea exact.
n cadrul variantei 3-5-3 secionarea traiectoriei n intervale se produce ca i pentru 4-3-4, dar
se folosesc alte polinoame de interpolare. Numrul polinoamelor folosite pentru descrierea
completa a traiectoriei pentru un RI cu N grade de mobilitate este 3xN , iar numrul
coeficienilor de determinat este 7xN. n acest caz, trebuiesc determinate extremitile pentru
toate cele 3N intervale ale traiectoriilor. n urmtorul subcapitol vom examina schemele de
planificare a traiectoriilor n sistemul 4-3-4 .
Calculul traiectoriei n cazul 4-3-4
n legtura cu faptul c pentru fiecare interval a domeniului de variaie a coordonatelor
articulare se cere s se determine N intervale ale variabilelor articulare, este comod s se
foloseasc timpul normat t, t[0,1]. Aceasta permite s se obin caracterul unitar al
ecuaiilor ce descriu schimbarea fiecreia dintre variabilele articulare pe fiecare interval al
traiectoriei. Astfel timpul normat variaz de la t=0 ( momentul iniial pentru fiecare din
intervalele traiectoriei ) pn la t=1 ( momentul final pentru fiecare din intervalele
traiectoriei). Introducem urmtoarele notaii :
-) t , este timpul normat, t=t/t
m
; t[0,1].
-) este timpul real , msurat n secunde.
-)
i
este momentul ( n timp real ) de terminare a intervalului i al traiectoriei;
-) t
i
= (
i
-
i-1
) este intervalul de timp real consumat pentru parcurgerea intervalul i al
traiectoriei.
t = ( -
i-1
)/(
i
-
i-1
) ; [
i-1
-
i
] ; t[0,1].
Domeniul de variie al variabilelor articulare j se indic sub forma unei succesiuni de
polinoame h
i
(t). Pe fiecare interval al domeniului, pentru fiecare variabil articular,
polinoamele folosite exprimate n timp normat au forma:
h
1
(t) = a
14
t
4
+a
13
t
3
+a
12
t
2
+a
11
t+a
10
(primul interval)
h
2
(t) = a
23
t
3
+a
22
t
2
+a
21
t+a
20
(al doilea interval)

h
n
(t) = a
n4
t
4
+a
n3
t
3
+a
n2
t
2
+a
n1
t+a
n0
(ultimul interval)
Indexul variabilei ce se afl n partea stng a fiecrei egaliti indic numrul poriunii
traiectoriei, intervalul n fiind ultima. Indexul din notaiile coeficienilor necunoscui a
ij
au
urmtoarea semnificaie:
- coeficientul i pentru intervalul j al traiectoriei.
Condiiile limit pe care trebuie s le satisfac sistemul ales de polinoame sunt urmtoarele :
1) Poziia iniiala
0
= (t
0
);
2) Valoarea vitezei iniiale v
0
(de obicei este zero);
3) Valoarea acceleraiei iniiale a
0
(de obicei zero);
4) Poziia n punctul de pornire
1
(se alege);
5) Continuitatea n poziie n punctual de plecare, n momentul
1
, adica (t
1
)= (t
1
*
)
6) Continuitatea n vitez, n punctual de plecare, n momentul
1
, adic v(t
1
)= v(t
1
*
)
7) Continuitatea n acceleraie n punctual de plecare n momentul
1
, adic a(t
1
)= a(t
1
*
)
8) Poziia n punctul de apropiere
2
( se alege )
9) Continuitatea n poziie, n punctul de apropiere, n momentul
2
, adic (t
2
)= (t
2
*
)
10) Continuitatea n vitez, n punctul de apropiere, n momentul
2
, adic v(t
2
)= v(t
2
*
)
11) Continuitatea n acceleraie, n punctul de apropiere, n momentul
2
, adic a(t
2
)= a(t
2
*
)
12) Poziia final
f
= (t
f
)
13) Valoarea vitezei finale v
f
(de obicei nul)
14) Valoarea acceleraiei finale a
f
(de obicei nul)
v
i
(t) = dh
i
(t)/d = dh
i
(t)/dt x dt/ d = [1/(
i
-
i-1
)] x dh
i
(t)/dt = 1/t
i
dh
i
(t) /dt = [1/t
i
] f
i
(t) ,
i=1,2,..,n (67)
a
i
(t) = dh
2
i
(t)/d
2
= [1/(
i
-
i-1
)]
2
x d
2
h
i
(t)/dt
2
= 1/t
i
2
dh
2
i
(t) /dt
2
=
= [1/t
i
2
] f
i
(t) , i=1,2,..,n (68)
Pentru descrierea primului interval al traiectoriei se folosete un polinom de gradul 3.
h
1
(t) = a
14
t
4
+a
13
t
3
+a
12
t
2
+a
11
t +a
10
, t[0,1]. (69)
Lund n consideraie egalitile (67) i (68) viteza i acceleraia de pe aceast poriune au
forma:
v
1
(t) = d[h
1
(t)]/t
1
= [ 4a
14
t3+3a
13
t2+2a
12
t+a
11
]/t
1
(70)
a
1
(t) = d
2
[h
1
(t)]/t
1
2
= [ 12a
14
t2+ 6a
13
t + 2a
12
]/t
1
2
(71)
1). Pentru t=0 (punctul iniial al intervalului dat al traiectoriei) Din condiiile limit n acest
punct rezult :
a
10
= h
1
(0) =
0
(
0
dat ) (72)
v
0
= d[h
1
(0)] / t
1
= {[ 4a
14
t3+3a
13
t2+2a
12
t+a
11
]/t
1
}
t=0
= a
11
/t
1
(73)
Din aceast relaie rezult : a
11
= v
0
t
1
i
a
0
= d
2
[h
i
(0)]/t
1
2
= {[ 12a
14
t2+ 6a
13
t + 2a
12
]/t
1
2
}
t=0
= 2a
12
/t
1
2
(74)
Substituind valorile obinute ale coeficienilor n egalitatea (69) vom obine:
h
1
(t) = a
14
t
4
+ a
13
t
3
+[a
0
t
1
3/2
]t
2
+(v
0
t
1
) t +
0
, t[0,1]. (75)
2). Pentru t=1 ( punctul final al primului interval al traiectoriei )
n acest punct vom reduce condiiile limit aplicate, excluznd cerina deplasrii
precise a coordonatelor articulare prin poziia dat, dar pstrnd condiiile privind
continuitatea vitezei i a acceleraiei. Aceste condiii semnific faptul c viteza i acceleraia
la captul primului interval al traiectoriei trebuie s coincid cu viteza i acceleraia de la
nceputul intervalului al doilea. La captul primului interval viteza i acceleraia sunt egale n
mod corespunztor:
v
1
(1) = v
1
= dh
1
(1)/t
1
= [4a
14
+3a
13
+a
0
t
1
2
+v
0
t1]/t
1
(76)
a
1
(1) = a
1
= d
2
h
1
(1)/t
1
2
= [12a
14
+ 6a
13
+ a
0
t
1
2
]/t
1
2
(77)
Pentru descrierea celui de al doilea interval al traiectoriei se folosete un polinom de gradul
al treilea.
h
2
(t) = a
23
t
3
+a
22
t
2
+a
21
t+a
20
, t[0,1]. (78)
1). Pentru t=0 (punctul de plecare) folosind egalittile (3.67) i (3.68) avem n acest punct :
h
2
(0) = a
20
=
2
(79)
v
1
= dh
2
(0)/t
2
={[3a
23
t
2
+2a
22
t+a
21
]/t
2
}
t=0
= a
21
/t
2
(80)
De aici rezult c :
a
1
= dh
2
(0)/t
2
2
= {[6a
23
t+2a
22
]/t
2
2
}
t=0
= 2a
22
/t
2
2
(81)
i se obine a
22
= a
1
t
2
2
/2
ntruct n acest punct viteza i acceleraia trebuie s coincid n mod corespunztor cu
viteza i acceleraia din punctul final al intervalului anterioar al domeniului de variaie a
coordonatelor articulare se impun egalitile:
d[h
2
(0)]/t
2
= d[h
1
(1)]/t
1
i d
2
[h
2
(0)]/t
2
2
= d
2
[h
1
(1)]/t
1
2
(82)
care conduc n mod corespunztor la urmtoarele condiii :
[( 3a
23
t
2
+2a
22
t+a
21
)/t
2
]
t=0
= [( 4a
14
t
3
+3a
13
t
2
+2a
12
t+a
11
)/t
1
]
t=1
(83)
sau,
a
21
/t
2
= 4a
14
/t
1
+3a
13
/t
1
+a
0
t
1
2
/t
1
+v
0
t
1
/t
1
(84)
i
[(6a
23
t+2a
22
)/t
2
2
]
t=0
= [( 12a
14
t
2
+6a
13
t+2a
12
)/t
1
2
]
t=1
(85)
sau
2a
22
/t
2
2
= 12a
14
/t
1
2
+6a
13
/t
1
2
+a
0
t
1
2
/t
1
2
(86)
2) Pentru t=1 (punctul de apropiere) n acest punct viteza i acceleraia trebuie s coincid cu
viteza i acceleraia din punctul iniial al urmtoarului interval al domeniului de variaie a
coordonatelor articulare. Pentru punctul examinat avem ;
h
2
(1)=a
23
+a
22
+a
21
+a
20
(87)
v
2
(1) = h
2
(1)/t
2
= [( 3a
23
t
2
+2a
22
t+a
21
)]
t=1
= [ 3a
23
+2a
22
+a
21
]/t
2
(88)
a
2
(1) = h
2
(1)/t
2
2
= [(6a
23
t+2a
22
)/t
2
2
]
t=1
= [6a
23
+2a
22
]t
2
2
(89)
n descrierea ultimului interval al domeniului de variaie al coordonatelor articulare se
folosete un polinom de gradul 3.
( )
0 1
2
2
3
3
4
4 n n n n n n
a t a t a t a t a t h + + + +
, t[0 , 1] (90)
n aceasta egalitate se nlocuiete t cu t`= t-1 i se examineaz dependena de noua
variabil t` i fa de aceasta vom efectua deplasarea n timp normat. Dac variabila t
aparine intervalului [0 , 1] , atunci variabila t` aparine intervalului de [-1 , 0] .
Astfel , egalitatea (90) va avea forma :
( )
0 1
2
2
3
3
4
4
` ` ` `
n n n n n n
a t a t a t a t a t h + + + +
, t[0 , 1] (91)
n final vom gsi viteza i acceleraia pe ultimul interval:
( )
( )
n
n n n n
n
n n
t
a t a t a t a
t
t h
n
t v
1 2
2
3
3
4
` 2 ` 3 ` 4 `
`
+ + +
, (92)
( )
( )
a t
n
h
n
t
t
n
a
n
t a
n
t a
n
t
n
`
` ` ` `

+ +
2
12
4
6
3
2
2
2
, (93)
1. Pentru t`= 0 (punctul final al intervalului examinat al traiectoriei).
n concordan cu condiiile limit din acest punct avem:
h
n
(0) = a
n0
=
f
, (94)
v
f
=h`
n
(0)/ t
n
= a
n1
/t
n
, (95)
De aici rezult:
a
n1
= v
f
t
n
.
Mai departe ,
a
f
=h`
n
(0) / t
n
2
=2a
n2
/ t
n
2
(96)
i n final :
a
n2
=a
f
t
n
2
/ 2.
2. Pentru t`=-1
n concordan cu condiiile limit din punctul de apropiere obinem :
h
n
(-1)=a
n4
- a
n3
+ [ a
f
t
n
2
/ 2 ] -v
f
t
n
+
f
=
2
(1) (97)
h
n
(-1)/t
n
=
n
n f n f n n
n
n n n n
t
t v t a a a
` t
t
a ` t a ` t a ` t a
+ +

+ + +

1
]
1

2
3 4
1 2
2 3
4
3 4
1
2 3 4
(98)
( )
n
n f n n
n
n n
n
n
t
t a a a
` t
t
a ` t a ` t a
t
h
2
3 4
2
2 3
2
4
2
6 12
1
2 6 12 1
+

+ +

1
]
1

(99)
Condiiile de continuitate a vitezei i a acceleraiei din punctul de apropiere conduc la:
[h`
2
(1) / t
2
]=[ h`
n
(-1) / t
n
] i [h`
2
(1) / t
2
2
]=[h`
n
(-1) / t
n
2
] , (100)
sau

0
2
21
2
22
2
23
2 2
3 4
2 3
3 4
+ + +
+
t
a
t
a
t
a
t
t v t a a a
n
n f n f n n
(101)
i
+ +
+
2
2
22
2
2
23
2
2
3 4 2 6
6 12
t
a
t
a
t
t a a a
n
n f n n
0 (102)
Notm:

1
=
1
-
0
= h
1
(1)-h
1
(0) = a
14
+ a
13
+[a
0
t
1
2
/ 2]+ v
0
t
1
, (103)

2
=
2
-
1
= h
2
(1)-h
2
(0) = a
23
+ a
22
+ a
21
,
(104)

n
=
f
-
2
= h
n
(0)-h
n
(-1) =-a
n4
+ a
n3
- [a
f
t
n
2
/ 2] + v
f
t
n
. (105)
Toi coeficienii necunoscui din polinoame ce descriu schimbarea variabilei
articulare pot fi determinati prin rezolvarea n comun a ecuaiilor (103), (104), (105).
Prezentnd acest sistem de ecuaii n forma matriceal, vom obine :
y =Cx , (106)
unde
1
1
]
1

+
+

n f
t a
n f
f n f
t a
t v a
v t a a v t a t v
y
n f
2
2 0 0 1 0 1 0
2
1
2
2
1 0
, ,
, , , , ,


(107)
1
1
1
1
1
1
1
1
1
]
1

1 1 0 0 0 0 0
0 0 0
0 0
0 0 1 1 1 0 0
0 0 0 0
0 0 0 0
0 0 0 0 0 1 1
2 2 2
2
2
2
2 2 2
2
2
2
1
2
1
2 1 1
12 6 6 2
4 3 3 2 1
2 12 6
1 4 3
n n
n n
t
t t t t
t t t t t
t t
t t t
C
,
(108)
x = ( a
13
, a
14
, a
21
, a
22
, a
23
, a
n3
, a
n4
, )
T

Astfel, problema planificrii traiectoriei conduce la rezolvarea ecuaiei matriciale
(109):

1 j
j ij i
x c y
,
sau x = C
-1
y. (109)
Structura matricei C permite s se gseasc uor coeficienii necunoscui. Pe lng
aceasta, matricea invers C
-1
exist ntotdeauna numai dac intervalele de timp t
i
(cnd i =
1,2,...n ) sunt pozitive. Rezolvnd ecuaia (109) obinem toi coeficienii necunoscui ai
polinoamelor care descriu coordonata articular j. ntruct pentru polinomul ce descrie
ultimul interval al domeniului de variaie a coordonatei articulare a fost efectuat o substituie,
atunci dup determinarea coeficienilor a
ni
din ecuaia (109), este necesar s se efectueze
nlocuirea invers, ce const n substituirea t`=t-1 n egalitatea (105).
Aplicaie
Pentru deplasarea endefectorului ntre dou puncte definite n coordonate articulare,
planificarea micrii efectundu-se n coordonate articulare, se vor determina legile de
variaie ale coordonatelor articulare ale gradului de mobilitate 3 utiliznd dou puncte
nodale intermediare (unul de plecare i cellalt de apropiere).
Rezolvare
Fie dou puncte A i B din spaiul de lucru al robotului industrial . Coordonatele
articulare corespunztoare acestor dou puncte sunt :
A [ 0.610 , -1.630 , 0.40 ] ; D [ 0.490 , -1.210 , 0.520 ] .
Acestea reprezint punctul iniial A i punctul final D.
Se impune s specificm valorile vitezelor i ale acceleraiilor iniiale. Acestea sunt:
v
A
= 0 ; a
A
= 0 ; v
D
= 0 ; a
D
= 0 .
Pentru a asigura o bun precizie de poziionare trebuie s fragmentm traiectoria n cel
puin trei segmente prin introducerea a cel puin dou puncte nodale,
- unul de plecare B ( q
1
B
, q
2
B
, 0.42 ) ;
- unul de apropiere C ( q
1
C
, q
2
C
, 0.42 ).
Astfel, intervalul iniial se mparte n trei intervale:
- un interval de pornire AB , de-a lungul cruia se realizeaz accelerarea i se ating viteza i
acceleraia maxim;
- un interval BC de-a lungul cruia viteza i acceleraia rmn constante; ea reprezint cea
mai mare parte din traiectoria iniial AD;
- un interval final CD, de poziionare, care are ca scop asigurarea unei bune precizii de
poziionare prin micorarea vitezei i a acceleraiei.
Uneori intervalul median BC se mparte la rndul ei n mai multe un intervale dac de-a
lungul lui exist obstacole.
n cele ce urmeaz vom studia (pe cazul concret mai sus enunat) situaia cea mai frecvent
ntlnit i anume cu dou puncte nodale intermediare i trei un intervale.
Pentru fiecare robot industrial cu N grade de mobilitate, fiecruia dintre cele 4 puncte
nodale ale traiectoriei i corespund 4N puncte nodale. Deci i la nivelul gradului de mobilitate
3 vom avea 4 puncte nodale i trei poriuni. Legile de variaie ale variabilei articulare 3
sunt descrise prin trei polinoame, cte unul pentru fiecare poriune. Vom adopta cazul 4-3-3.
Rezult c pentru intervalul i legea de variaie a coordonatei articulare 3 este descris de
polinomul h
i
(t), astfel:
h
1
(t) = a
14
t
4
+a
13
t
3
+a
12
t
2
+a
11
t +a
10
, t[0,1].
h
2
(t) = a
23
t
3
+a
22
t
2
+a
21
t+a
20
, t[0,1]. , t[0,1].
h
3
(t) = a
34
t
4
+a
33
t
3
+a
32
t
2
+a
31
t +a
30
, t[0,1].
Problema se reduce deci la a determina cei 14 coeficieni care definesc cele trei
polinoame de mai sus. Pentru aceasta vom apela la condiiile limit i la condiiile de
continuitate ale poziiei, vitezei i acceleraiei n cele dou puncte nodale.
Pentru poziia iniial A
h
1
(t) = a
14
t
4
+a
13
t
3
+a
12
t
2
+a
11
t +a
10
, t[0,1].
h
1
(0) = 0,40 condiia limit pentru poziie
v
1
(0) = 0 condiia limit pentru vitez
a
1
(0) = 0 condiia limit pentru acceleraie
Aceste trei condiii sunt condiiile limit n punctul iniial i ele reprezint trei din cele
14 ecuaii necesare determinrii lui h
1
(t).
h
1
(0) = a
10
a
10
= 0,40 (ecuaia 1 )
v
1
(t) = d[h(t)]/t
1
= [ 4a
14
t
3
+3a
13
t
2
+2a
12
t+a
11
]/t
1

v
1
(0) = a
11
a
11
= 0 (ecuaia 2 )
a
1
(t) = d
2
[h(t)]/t
1
2
= [ 12a
14
t
2
+ 6a
13
t + 2a
12
]/t
1
2

a
1
(0) = a
12
a
12
= 0 (ecuaia 3 )
Pentru punctul de plecare B
h
2
(t) = a
23
t
3
+a
22
t
2
+a
21
t+a
20
, t[0,1]. , t[0,1].
h
2
(0) = a
20
v
2
(0) = dh
2
(0)/t
2
={[3a
23
t
2
+2a
22
t+a
21
]/t
2
}
t=0
= a
21
/t
2

De aici rezult c :
a
2
(0) = dh
2
(0)/t
2
2
= {[6a
23
t+2a
22
]/t
2
2
}
t=0
= 2a
22
/t
2
2

ntruct n acest punct poziia, viteza i acceleraia trebuie s coincid n mod
corespunztor cu poziia, viteza i acceleraia din punctul final al intervalului anterior al
domeniului se impun egalitile :
h
1
(1) = h
2
(0) condiia de continuitate a poziiei n B
a
14
+a
13
+a
10
= a
20
(ecuaia 4 )
d[h
2
(0)]/t
2
= d[h
1
(1)]/t
1
condiia de continuitate a vitezei n B
4a
14
+3a
13
= a
21
(ecuaia 5 )
d
2
[h
2
(0)]/t
2
2
= d
2
[h
1
(1)]/t
1
2
condiia de continuitate a acceleraiei n B
12a
14
+6a
13
= 2a
22
(ecuaia 6 )
Pentru punctul de apropiere C
h
3
(t) = a
34
t
4
+a
33
t
3
+a
32
t
2
+a
31
t +a
30

In scopul micorrii volumului de calcule vom efectua substituia :
t` = t 1 t` [-1 , 0 ]
Obinem :
h
3
(t`) = a`
34
t`
4
+a`
33
t`
3
+a`
32
t`
2
+a`
31
t` +a`
30
v
3
(t`) = d[h
3
(t`)]/t` = [ 4a`
34
t`
3
+3a`
33
t`
2
+2a`
32
t`+a`
31
]
a
3
(t`) = d
2
[h
3
(t`)]/t`
2
= [ 12a`
34
t`
2
+ 6a`
33
t` + 2a`
32
]
Identificnd polinomul iniial cu cel obinut prin schimbarea de variabil . obinem :
a`
34
= a
34
a`
33
= 4a
34
+a
33
a`
32
= 6a
34
+3a
33
+a
32
a`
31
= 4a
34
+3a
33
+2a
32
+a
31
a`
30
= a
34
+a
33
+a
32
+a
31
+a
30
Condiiile de continuitate ale poziiei, vitezelor i acceleraiilor n punctul C sunt :
h
2
(1) = h
3
(-1)
a
23
+a
22
+a
21
+a
20
= a`
34
-a`
33
+a`
32
-a`
31
+a`
30
condiia de continuitate a poziiei n C
(ecuaia 7 )
v
2
(1) = v
3
(-1)
3a
23
+2a
22
+a
21
= -4a`
34
+3a`
33
-2a`
32
+a`
31
condiia de continuitate a vitezei n C
(ecuaia 8 )
a
2
(1) = a
3
(-1)
6a
23
+2a
22
= 12a`
34
-6a`
33
+2a`
32
condiia de continuitate a acceleraiei n C
(ecuaia 9 )
Pentru punctul D
Vom impune urmtoarele condiii limit :
h
3
(0) = 0,52
a`30 = 0,52 (ecuaia 10 )
v
3
(0) = 0
a`31 = 0 (ecuaia 11 )
a
3
(0) = 0
a`32 = 0 (ecuaia 12 )
Pn acum am obinut 12 ecuaii, celelalte 2 ecuaii necesare pn la obinerea unui
sistem determinat de 14 ecuaii cu 14 necunoscute se obin din condiiile de definire ale
poziiei punctelor nodale intermediare.
Acestea sunt:
- pentru B
h
2
(0) = 0,42 a
20
= 0,42 (ecuaia 13)
- pentru C
h
2
(1) = 0,50 a
23
+a
22
+a
21
+a
20
= 0,50 (ecuaia 14)
Am obinut astfel urmtorul sistem de ecuaii liniare de 14 ecuaii cu 14 necunoscute :
a
10
= 0,40
a
11
= 0
a
12
= 0
a
14
+a
13
+a
10
= a
20

4a
14
+3a
13
= a
21

12a
14
+6a
13
= 2a
22
a
23
+a
22
+a
21
+a
20
= a`
34
-a`
33
+a`
32
-a`
31
+a
30

3a
23
+2a
22
+a
21
= -4a`
34
+3a`
33
-2a`
32
+a`
31

6a
23
+2a
22
= 12a`
34
-6a`
33
+2a`
32

a`
30
= 0,52
a`
31
= 0
a`
32
= 0
a
23
+a
22
+a
21
+a
20
= 0,50
a
20
= 0,42
Prin rezolvarea sistemului de mai sus utiliznd Mathematica 3.0 sau oricare alt limbaj
tiinific, obinem :
a
10
=0.4 , a
11
= 0, a
12
=0 , a
13
=0.02 , a
14
=0 ,
a
20
=0.42 , a
21
=0.06 , a
22
=0.06 , a
23
=-0.04 ,
a
30
= 0.52, a
31
=0 , a
32
=0 , a
33
=0.02 , a
34
=0
Astfel cele trei polinoame care descriu micarea elemetului 3 sunt:
h
1
(t) = 0.02t
3
+0.4
h
2
(t) = -0.04t
3
+0.06t
2
+0.06t+0.42
h
3
(t) = 0.02t
3
+0.52
BIBLIOGRAFIE
[1] Angeles J., O.Ma - An algorithm for inverse dynamics of n-axis general manipulator using
Kane`s equations , Computers Math.Applic. Vol.17,No.12,1989.
[2] Angeles J., O.Ma - Dynamics simulation of n-axis serial robotic manipulators using a
natural orthogonal complement, The international Journal of
RoboticResearch,Vol.7,Nr.5, Oct. 1988.
[3] Angeles J. - Iterativ Kinematic Inversion of General Five - Axis Robot Manipulators, The
International Journal of Robotic Research,Vol.4. Nr.4,Winter 1986
[4] Angeles J. - On the Numerical Solution of the Inverse Kinematic Problem, The
International Journal of Robotic Research,Vol 4,Nr.2,Summer 1985.
[5] Angeles J.A. Alivizatos and P.J.Zsombor-Murray - The synthesis of smooth trajectory for
pick-and-place operatons , IEEE Trans.Syst.Man Cybern. 18(1) , 173-178 (1988).
[6] Angeles J. , S.Lee - The formulation of dynamical , equations of holonomic mrchanical
systems using a natural orthogonasl complement , International Journal of Robotic Research
4/1987.
[7] Atkenson C. , Chae H.A. , Hollerbach J. - Estimation of inertial parameters of manipulator
load and links , Cambridge , Massachuesetts , MIT Press. 1986.
[8] Angeles J. - Spatial kinematic chains : Analysis , synthesis , and optimization , Berlin :
Springer verlag.
[9] Angeles J. , Rojas A. - On the use of condition-number minimization and continuon in the
iterative kinematic analysis of robot manipulator , Proc.Fifth IASTED Symposium Robotics,
New Orleans1985.
[10] Batiurea Gh. .a. Comanda numeric a mainilor-unelte,
Editura tehnic , Bucureti 1976
[11] Chircor M. - Asupra volumului spaiului de lucru al roboilor industriai , Sesiunea de
Comunicri Stiintifice, Braila,1993.
[12] Chircor M. Nouti n cinematica dinamica roboilor industriali , Editura Fundaiei
Andrei Saguna , Constana , 1997.
[13] Chircor M. - Calculul deplasrilor finite la roboii de topologie paralel , A XVIII - a
Conferina de Mecanic Solidelor , Constana , 09 - 11 iunie 1994.
[14] Chircor M. - Calculul deplasrilor roboilor industriali folosind notaiile Hartemberg-
Denavit , Acta Universitatis Cibiniensis , Sibiu ,1995.
[15] Chircor M.- Calculul energiei consumate de robotul industrial la manipularea unei sarcini
, Acta Universitatis Cibiniensis , Sibiu ,1995.
[16] Chircor M. - The control of the motion in Internal and External Coordinates ,
International Symposium on Systems atheory , Robotics , Computers and Process
Informatics , Craiova , 6-7 june 1996.
[17] Chircor M. - A limit of the Serial Topology , International Symposium on Systems
atheory , Robotics , Computers and Process Informatics , Craiova , 6-7 june 1996.
[18] Chircor M. Cercetri privind construcia modular a roboilor industriali Tez de
doctorat , Universitatea Politehnic Bucureti , 1997.
[19] Cojocaru G., Fr.Kovaci - Roboii n aciune, Ed.Facla, Timioara,1998./
[20] Davidoviciu A., G.Drgnoiu , A.Moanga , Modelarea , simularea i comanda
manipulatoarelor i roboilor industriali , Ed.Tehnica , Bucureti 1986.
[21] Denavit J., McGraw-Hill - Kinematic Syntesis of Linkage,Hartenberg R.SN.Y.1964.
[22] Drimer D.,A.Oprea,Al. Dorin - Roboi industriali i manipulatoare, Ed. Tehnic 1985.
[23] Dombre E., Wisama Khalil - Modelisation et commande des robots , Editions Hermes ,
Paris 1988.
[24] Doroftei Ioan Introducere n roboii pitori , Editura CERMI , Iai 1998.
[25] Dorn W.S., D.D.McCracken - Metode numerice cu programare in FORTRAN, Editura
Tehnic, Bucureti 1973.
[26] Golub G - Matrix , The Johns Hopkins University Press, London.
[27] Hartemberg R.S. and J.Denavit - A kinematic notation for lower pair mechanisms , J.
appl.Mech. 22,215-221 (1955).
[28] Hasegawa , Matsushita , Kanedo - On the study of standardisation and symbol related to
industrial robot in Japan , Industrial Robot Sept.1980.
[29] HollerbachJ.M. - Wrist-partitioned inverse kinematic accelerations and manipulator
dynamics. , International Journal of Robotic Research 2,61-76 (1983)
[30] Ispas V.,I.Pop,M.Bocu - Roboi industriali, Ed.Dacia, Cluj, 1985.
[31] Ispas V. - Aplicaiile cinematicii n construcia manipulatoarelor i a roboilor
industriali , Ed.Academiei Romne 1990.
[32] Khalil W. - J.F.Kleinfinger and M.Gautier , Reducing the computational burden of the
dynamic model of robots. , Proc. IEEE Conf.Robotics ana Automation , San Francisco , Vol.1
, 1986.
[33] Kane T.R., D.A. Levinson - The use of Kane`s dynamic equations in robotics,
International Journal of Robotic Research,Nr. 2/1983.
[34] Kane T.R. - Dynamics of nonholonomic systems , Trans.ASME , J.appl.Mech. , 83 , 574-
578 (1961).
[35] Kazerounian K. , Gupta K.C. , Manipulator dynamics using the extended zero reference
position description , IEEE Journal of Robotic and Automation RA-2/1986.
[36] Kovacs Fr., G.Cojocaru - Manipulatoare, roboi i aplicaiile lor industriale,
Ed.Facla,Timioara,1982.
[37] Kovacs Fr , C. Rdulescu - Roboi industriali , Reprografia Universitii Timioara ,
1992.
[38] Kyriakopoulos K. J. and G.N.Saridis - Minimum distance estimation and collision
prediction under uncertainty for on line robotic motion planning., International Journal of
Robotic Research 3/1986.
[39] Larionescu D. - Metode numerice , Editura Tehnic, Bucureti 1989.
[40] Luh J.S.Y., Walker M.W. , Paul R.P.C. - On line computational scheme for mechanical
manipulators , Journal of Dynamic Systems Measures and Control 102/1980
[41] Ma O.- Dynamics of serial - typen-axis robotic manipulators, Thesis, Department of
Mechanical Engineering,McGill University,Montreal,1987.
[42] Monkam G. - Parallel robots take gold in Barcelona, ,Industrial Robot,4/1992.
[43] Monkam G. - Parallel robots take gold in Barcelona , Industrial Robot 4/1992.
[44] Olaru A. - Dinamica roboilor industriali , Reprografia Universitii Politehnice
Bucureti , 1994.
[45] Platon V. Sisteme avansate de producie , Editura tehnic, Bucureti , 1990.
[46] Pan C. , Drimer D. - Probleme ale construciei modulare a manipulataoarelor i
roboilor , I Simpozion National de Roboi Industriali , Bucureti 1981.
[47] Pandrea N. - Determinarea spaiului de lucru al roboilor industriali , Simpozion National
de Roboi Industriali , Bucureti 1981.
[48] Pandrea N. - Asupra echilibrrii statice a mecanismelor RRT pentru roboi industriali ,
Simpozion National de Roboi Industriali , Bucureti 1981.
[49] .Punescu T. Celule flexibile de prelucrare , Editura Universitii Transilvania
Braov , 1998.
[50] Paul R. , Shimano B. - Kinematic control equations for simple manipulators , IEEE
Trans. Systems , Man and Cybernetics SMC-11.
[51] Pelecudi Christian - Teoria mecanismelor spaiale, Ed. Academiei, 1972.
[52] Powell I.L.,B.A.Miere - The kinematic analysis and simulation of the parallel topology
manipulator , The Marconi Review,1982.
[53] Raghavan M. , Roth B. - Kinematic analysis of 6R manipulator of genaral geometry ,
Proc. 5 th International Symposium on Robotic Research , MIT Press , Cambridge
Massachusets , 1990.
[54] Renaud M. - Quasi-minimal computation of the dynamic model of a robot manipulator
utilising the Newton-Euler formulism and the notion of augmented body. Proc.IEEE
Conf.Robotics Automn Raleigh , Vol.3 , 1987.
[55] Roculet M. - Analiz matematic , Editura Didactic si Pedagodic, Bucureti 1973.
[56] Seeger G. - Self-tuning of commercial manipulator based on an inverse dynamic model ,
J.Robotics Syst. 2 / 1990.
[57] Soos E., C.Teodosiu - Calcul tensorial cu aplicaii n mecanica solidelor, Editura
Stiinific i Enciclopedic, Bucureti 1983.
[58] Stnescu A. , A. Curaj Tehnici de generare automat a micrilor roboilor, Reprografia
Universitii Politehnice Bucureti , 1997.
[59] Stanescu A. Dumitrache I.- Inteligena artificiala i robotica , Ed.Academiei , Bucureti
1983.
[60] Tandirci Murat ,Jorge Angeles, John Darcovich - On Rotation Representations in
Computational Robot Kinematics ,
Tamio Arai,Hisashi Osumi - Three wire suspension robot, Industrial Robot,4/1992.
[61] Uicker J.J. - On the dynamic analysis of spatial linkage 4x4 , Northwest University 1965.
[62] Vlcovici V., St. Blan, R. Voinea - Mecanica teoretic, Editura tehnic,1968.
[63] Vukobratovic M. - Applied dynamics of manipulation robots , New York , 1989.
[64] Walker M.W. and D.E.Orin - Efficient dynamic computer simulation of robot
mechanisms , J.Dynamic Syst. Meas. Control 104 205-211 (1982).
[65] STAS R 12928/2-90.
[66] STAS R 12928/3-90.
[67] STAS R 12928/1-90.
[68] STAS 12938-91
[69] OIDICM - Actualiti n domeniul roboilor industriali , Bucureti 1987.
[70] OIDICM - Robotizarea proceselor tehnologice de tanare i matriare , Nr. 1-45/1989.
[71] OIDICM , SID 69 - Nouti n robotica industrial , Bucureti , 1987.
[72] OIDICM , SID 53 - Utilizarea robotilor industriali la sudarea metalelor i la procese
conexe , Bucureti , 1985.
[73] IDAR Colecie ( Informare - Documentare - Automatizare - Robotizare - Calculatoare )
Bucureti , 1980-1990.
[74] INID Colecie , Buletine de informare i documentare tehnico-tiinifice , Bucureti
1980-1990.