107
1 1. INTRODUCERE 1.1 Stadiul actual al roboticii 1921 Karel Capek „Roboţii industriali ai lui Rossum“ 1943 Isaac Asimov „I am a Robot“ 1954 Kernward – UK Brevet – Manipulator cu două braţe 1956 George C. Devol – USA Brevet – Dispozitiv de transfer automat 1959 Joseph Engelberger Cumpără brevetul de la Devol şi realizează în anul 1960 robotul Unimate la firma Unimation Inc., firmă ce va lucra în profit de abia din anul 1973. 1968 38 roboţi Unimate la linia de sudare a caroseriilor din Lordstown 1968 Kawasaki Heawy Industries a cumpărat licenţa Unimate 1971 Primul robot japonez la Nissan Motors 1971 Fiat – Italia / Torino Linia de sudat în puncte caroserii 1971 ASEA – Suedia Primul robot cu acţionare electrică 1974 RV – 70 Regie Renault / Franţa robot cu acţionare electrică 1976 Prof. Chr. Pelecudi – UP Bucureşti / „Introducere în robotică” primul articol de robotică apărut în România – MTM 76 Timişoara / Reşiţa 1979 „Colectiv Multidisciplinar de Roboţi Industriali” la Institutul Politehnic „Traian Vuia” Timişoara. 1982, 8 februarie REMT – 1 Primul robot industrial românesc, Institutul Politehnic „Traian Vuia” Timişoara şi Electromotor Timişoara Distins cu Premiul „TRAIAN VUIA“ al Academiei Române

Robotica Avansata Curs

  • Upload
    gomarlux

  • View
    1.471

  • Download
    26

Embed Size (px)

Citation preview

Page 1: Robotica Avansata Curs

11. INTRODUCERE

1.1 Stadiul actual al roboticii

1921 Karel Capek „Roboţii industriali ai lui Rossum“

1943 Isaac Asimov „I am a Robot“

1954 Kernward – UK Brevet – Manipulator cu două braţe

1956 George C. Devol – USA Brevet – Dispozitiv de transfer automat

1959 Joseph Engelberger Cumpără brevetul de la Devol şi realizează în

anul 1960 robotul Unimate la firma Unimation Inc., firmă ce va lucra în

profit de abia din anul 1973.

1968 38 roboţi Unimate la linia de sudare a caroseriilor din Lordstown

1968 Kawasaki Heawy Industries a cumpărat licenţa Unimate

1971 Primul robot japonez la Nissan Motors

1971 Fiat – Italia / Torino Linia de sudat în puncte caroserii

1971 ASEA – Suedia Primul robot cu acţionare electrică

1974 RV – 70 Regie Renault / Franţa robot cu acţionare electrică

1976 Prof. Chr. Pelecudi – UP Bucureşti / „Introducere în robotică” primul

articol de robotică apărut în România – MTM 76 Timişoara / Reşiţa

1979 „Colectiv Multidisciplinar de Roboţi Industriali” la Institutul Politehnic

„Traian Vuia” Timişoara.

1982, 8 februarie REMT – 1 Primul robot industrial românesc,

Institutul Politehnic „Traian Vuia” Timişoara şi Electromotor Timişoara

Distins cu Premiul „TRAIAN VUIA“ al Academiei Române

Page 2: Robotica Avansata Curs

21982 Kovacs Fr. Cojocaru G – “Manipulatoare, Roboţi şi aplicaţiile lor

industriale” prima carte de robotică din România.

1983 RIP 6,3 – Automatica Bucureşti Implementat la Autobuzul Bucureşti

1985 RIC – 25, RIS – 63 ICSIT TITAN Bucureşti în cadrul Programului

Naţional de Roboţi Industriali

1986 Institutul Politehnic „Traian Vuia” Timişoara şi Electro-Timiş Timişoara

Familie de Roboţi cu:

Acţionare electrică mR 2,5 MRE 12,5 MAE 100

Acţionare pneumatică MRP 12,5 MAP 100

Acţionare hidraulică RH 1kN

1987 Institutul Politehnic „Traian Vuia” Timişoara şi IMMUM Baia Mare

Manipulator sincron – MASINh 500 Expus la TIB´87 şi distins

cu Medalia de aur

1988 Institutul Politehnic „Traian Vuia” Timişoara şi IMMUM Baia Mare

Robotul Portal – ROPOS 50 Expus la TIB´88 şi distins cu

Medalia de aur

Page 3: Robotica Avansata Curs

31.2 Tendinţe de dezvoltare ale roboticii

- creşterea gradului de autonomie ale roboţilor

- scăderea gradului de structurare al mediului

a) ROBOŢI INDUSTRIALI 1960 –

- mediu structurat

- obiecte situate în puncte de precizie ale mediului

- sarcini predefinite prin program

- executarea automată de programe explicite

b) ROBOŢI de PRESTĂRI SERVICII 1984 –

- model al universului bazat pe prelevate din mediu

- percepţie artificială

- procesare informaţională multisenzorială

- programe implicite

- planificarea traiectoriei (traiectorie dinamică)

b) ROBOŢI PERSONALI 2003 –

- capacităţi de comunicare cu mediul

- utilizare de modele pentru înţelegerea mediului

- planificarea automată a întregului program

- funcţii de supraveghere a întregii activităţi

Robot staţionar – Manipulare

Vehicul ghidat automat (VGA) – Deplasare prin rulare

Maşini păşitoare – Deplasare prin păşire

Page 4: Robotica Avansata Curs

4

Fig. 1.1 Dezvoltarea Roboticii

1. ROBOŢI INDUSTRIALI:

• Robot Industrial (Manipulare) + Senzori = Asamblare automată;

• Roboţi inteligenţi staţionari; Pe viitor Roboţi de dezasamblare

2. VEHICULE GHIDATE AUTOMAT:

• Fără elemente de inteligenţă artificială = Roboţi Mobili pentru Transportul

Materialelor pe o traiectorie ghidată în mediu structurat;

• cu Senzori (Video, de Proximitate) îşi aleg traiectoria într-un mediu nestructurat.

3. MAŞINI PĂŞITOARE multi-ped şi biped

Robot Industrial

Robot industrial avansat

Robot prestări servicii

staţionar

Roboţi de Servicii

Vehicule Ghidate Automat

Vehicule Ghidate Automat Avansate

Roboţi de Serviciu Mobili

Telerobot

Mecanism de păşire

Maşină Păşire

multiped

Maşină Păşire biped

Robot Humanoid

Manipulare

Deplasare pe roţi

Deplasare prin păşire

Stabilitate

Interacţiune om maşină

Senzori

Senzori

Reţea Internet

Page 5: Robotica Avansata Curs

5

Fig. 1.2 Mecatronica şi Robotica

MECANICĂ

ELECTRONICĂ

CALCULATOARE

MECATRONICĂ şi ROBOTICĂ

Page 6: Robotica Avansata Curs

62. NOŢIUNI DE TEORIA SISTEMELOR

2.1 Clasificarea sistemelor

Sistem: ansamblu de elemente şi relaţiile (legăturile) dintre ele.

Mediu: ansamblul elementelor care nu fac parte din sistem.

Legături orientate: Intrări (INPUT) sau Ieşiri (OUTPUT)

Legături neorientate: perturbaţii („zgomote”).

Sistem închis: nu are legături cu mediul său.

Sistem deschis: are legături orientate sau neorientate cu mediul său.

Sistem simplu: are puţine elemente şi legături între acestea.

Sistem complex: are multe elemente şi legături între ele.

Sistem concret: are elemente materiale.

Sistem abstract: nu are elemente materiale.

Sistem natural: există fără intervenţia omului.

Sistem artificial: este creat de om.

Sistem determinist: are legături orientate.

Sistem stohastic: are legături neorientate.

Fig. 2.1 Sistem deschis

(S)

T ...

. . .

.

.

.

x1 x2

xm

y1 y2

yn

z1 z2 zk

Intrări Input

Ieşiri Output

Perturbaţii („zgomote“)

MEDIU

Page 7: Robotica Avansata Curs

72.2 Funcţia de transfer T

Funcţia de transfer: asigură transformarea mărimii de intrare X = X (t) în mărimi de

ieşire Y = Y (t) conform relaţiei:

Y = T . X (2.1)

Vectorul intrărilor X = X (x1, x2, x3, . . . , xm)T

Vectorul ieşirilor Y = Y (y1, y2, y3, . . . , yn)T

Matricea de transfer T

Vectorul perturbaţiilor Z = Z (z1, z2, z3, . . . , zk)T

Fig. 2.2 Sistem cu buclă de reacţie

Z – caracter aleatoriu

Y’ – Vectorul ieşirilor perturbate

Y’ = T ( X + Z ) (2.2)

(S)

T X Y

Z MEDIU

(SR)

TR

ΔY TR ΔY

Page 8: Robotica Avansata Curs

8Bucla de reacţie (SR) asigură eliminarea perturbaţiilor.

Vectorul erorilor = intrarea în bucla de reacţie

ΔY = Y’ – Y (2.3)

TR . ΔY – ieşirea din bucla de reacţie

TR – funcţia de transfer a buclei de reacţie

Y = T ( X + Z + TR . ΔY ) (2.4)

Ierarhizarea sistemelor

Sistemul de rang „R“ conţine unul sau mai multe sisteme de rang „R-1“ .

S R - 1 ∈ S R S R ∈ S R + 1 (2.5)

Sistemul de rang „R“ este un element al unui sistem de rang „R+1“ .

Ierarhizarea sistemelor = cunoaşterea structurii unui sistem şi a legăturilor dintre

subsistemele acestuia.

2.3 Cuplarea a două sisteme

Două sisteme sunt cuplate dacă cel puţin o ieşire a unuia este o intrare în celălalt.

Fig. 2.3 Două sisteme cuplate

X (2) = [x21, x22, x23, . . . , x2m]T (2.6)

Y (1) = [y11, y12, y13, . . . , y1n]T

x2p = y1q p = 1...m q = 1...n (2.7)

Matricea de cuplare = Matrice „m x n“ cu „m“ intrări in S2 şi „n“ ieşiri din S1.

K 12 = [ e pq ] p = 1...m q = 1...n (2.8)

(S1)

X (2) Y (1)

(S2)

Page 9: Robotica Avansata Curs

9

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

mnmqm2m1

pnpqp2p1

2n2q2221

1n1q1211

12

e...e...ee........

e...e...ee........

e...e...eee...e...ee

K (2.9)

⎪⎩

⎪⎨⎧

=≠∀

==∀=

n,1qyx0

m,1pyx1e

q1p2

q1p2pq (2.10)

epq = 1 există o legătură între S1 şi S2

epq = 0 nu există o legătură între S1 şi S2

Modelul matematic al cuplării sistemelor S1 şi S2

X (2) = K12 . Y (1) (2.11)

EXEMPLUL 2.1 m = 5 X (2) = [1 0 1 0 0]T

n = 3 Y (1) = [1 1 0]T

K 12 = [ e pq ]5 x 3 x21 = y11 ⇒ e11 = 1

x23 = y13 ⇒ e32 = 1

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

=

000000010000001

K12

Fig. 2.4 Cuplarea a două sisteme

(S1)

x25 y13

x11

(S2)

x12

x24 x22

x21 x23

y11 y12

y21 y22

Page 10: Robotica Avansata Curs

10Matricea de structură = matricea unui sistem de rang „R“ care conţine "Si" subsistem

i = 1...n.

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

=

0.KKK....

K.0KKK.K0KK.KK0

S

3n2n1n

n33231

n22321

n11312

(2.12)

K ij – matricele de cuplare ale sistemelor "Si" K ii = 0

Umărul maxim de cuplări Nmax = n (n-1) (2.13)

EXEMPLUL 2.2 n = 3 Nmax = 3 . 2 = 6

⎥⎥⎥

⎢⎢⎢

⎡=

000K0KKK0

S 2321

1312

K 31 = 0 K 32 = 0

Fig. 2.5 Matricea de structură

(S1)

x11

(S2)

x12

x21

y11 y12

y21 y22

(S3)

y31

x31

x32

Page 11: Robotica Avansata Curs

113. MODULUL MATEMATIC AL MANIPULĂRII

Celulă de fabricaţie = Mediu Industrial (MI) + Robot Industrial (RI) + Dispozitiv de

Alimentare / Evacuare + Maşină - Unealtă + Dispozitiv de lucru (DL) + Obiect (OB)

+ Sculă (SC) + Efector Final (EF)

Fig. 3.1 Modelul matematic al manipulării

Manipulare = Corelarea elementelor lanţului tehnologic de către sistemul de comandă

prin programe elaborate pe baza algoritmelor de calcul‚ transformări succesive de

coordonate între diferite sisteme de referinţă.

RI

EF

SC

OB

DLMI

Page 12: Robotica Avansata Curs

12

)S(P j∈

Fig. 3.2 Transformări de coordonate între două sisteme de referinţă

pj

ji

pi

rrr +=

pj

ijji

pi

rBrr ⋅+= (3.1)

Vectorul de poziţie al punctului P în sistemul solidului „Si“ ( )Tiiipi

zyxr =

Vectorul de poziţie al punctului P în sistemul solidului „Sj“ ( )Tjjjpj

zyxr = (3.2)

Vectorul de poziţie al originii Oj in raport cu Oi ( )Tz0y0x0ji

rrrr =

Matricea cosinusurilor directoare [ ] 3,1jieB ijij ===

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⋅⎥⎥⎥

⎢⎢⎢

⎡+

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧=

⎪⎭

⎪⎬

⎪⎩

⎪⎨

j

j

j

333231

232221

131211

z0

y0

x0

i

i

i

zyx

eeeeeeeee

rrr

zyx

(3.1’)

Cu quadri-vector pj

ji

pi

rTr ⋅= (3.3)

Si

Sj

Xi

Yi

( Xi, Yi, Zi ) ( Xj, Yj, Zj )

XjZi

Yj Zj

Oi

Oj

P Pj r

Pi r

ji r

Page 13: Robotica Avansata Curs

13

( )Tiiipi

1zyxr = ( )Tjjjpj

1zyxr = [ ] 3,1lkaT klij === (3.4)

⎪⎪⎭

⎪⎪⎬

⎪⎪⎩

⎪⎪⎨

⎥⎥⎥⎥

⎢⎢⎢⎢

=

⎪⎪⎭

⎪⎪⎬

⎪⎪⎩

⎪⎪⎨

1zyx

1000aaaaaaaaaaaa

1zyx

j

j

j

34333231

24232221

14131211

i

i

i

(3. 3’)

3.1 Matricea de transformare omogenă

Exprimă situarea relativă a solidului Sj în raport cu solidul Si.

ji R = Matricea de rotaţie

jir = Matricea de translaţie ⎥

⎥⎦

⎢⎢⎣

⎡=

⎥⎥⎥⎥

⎢⎢⎢⎢

=1O

rR

1000reeereeereee

T Tj

ij

i

z0333231

y0232221

x0131211

ji (3. 5)

Fig. 3.3 Transformări de coordonate între trei sisteme de referinţă

S0

X0

Y0

Z0

O0

Sj

Xj

Zj

Oj

P Pj r

Pi r

ji r

Si

Xi

YiZi

Oi

P0 r

j0 r

i0 r

Page 14: Robotica Avansata Curs

14

pj

j0

p0

rTr ⋅=

pi

i0

p0

rTr ⋅= (3.6)

pj

ji

pi

rTr ⋅=

pj

ji

i0

p0

rTTr ⋅⋅= (3.7)

Relaţia de recurenţă ji

i0

j0 TTT ⋅= i=j-1 j=1..6 (3.8)

SCEF

EFRI

RIMI

SCMI TTTT ⋅⋅= (3.9)

SCOB

OBDL

DLMI

SCMI TTTT ⋅⋅=

SCOB

OBDL

DLMI

SCEF

EFRI

RIMI

SCMI TTTTTTT ⋅⋅=⋅⋅= (3.10)

RIMI T = depinde de amplasarea robotului în hală

EFRI T = funcţie de coordonatele generalizate

SCEF T = depinde de construcţia efectorului final

DLM T = depinde de amplasarea DL (MU) în hală

OBDL T = depinde de situarea OB în DL

SCOB T = se citeşte din desenul de execuţie al OB

1SC

EFSC

OBOB

DLDL

MI1RI

MIEF

RI TTTTTT −− ⋅⋅⋅⋅= (3.11)

Conform cerinţelor tehnologice = situarea sculei în raport cu obiectul Situarea

efectorului final în raport cu robotul EFR

SCOB TT ⇒ prin modificarea

coordonatelor generalizate, qi , i=1...6;

Pentru o cuplă de rotaţie qi = θi; Pentru o cuplă de translaţie qi = di.

Page 15: Robotica Avansata Curs

153.1.1 Matricele de transformare omogene elementare

Fig. 3.4 Cuplă de rotaţie

⎥⎥⎥⎥

⎢⎢⎢⎢

θθθ−θ

10000cossin00sincos00001

),x(Rotii

iiii

⎥⎥⎥⎥

⎢⎢⎢⎢

θθ−

θθ

10000cos0sin00100sin0cos

),y(Rotii

ii

ii

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡θθθ−θ

1000010000cossin00sincos

),z(Rot ii

ii

ii (3.12)

Fig. 3.5 Cuplă de translaţie

X0

Y0

Z0

O0

Xi Yi

Zi

Oic

a

b

ji

ki

ii k0

i0

j0

X0 = Xi

Y0

Z0

O0 = Oi

Zi

Yi

θi

θi

θi

k0

i0 j0 ji ki

ii

Page 16: Robotica Avansata Curs

16

⎥⎥⎥⎥

⎢⎢⎢⎢

=

100001000010a001

)a,x(Trans i (3.13)

⎥⎥⎥⎥

⎢⎢⎢⎢

=

10000100b0100001

)b,y(Trans i

⎥⎥⎥⎥

⎢⎢⎢⎢

=

1000c10000100001

)c,z(Trans i

3.2 Matricea de situare

Fig. 3.6 Matricea de situare

Versor normal { }Tzyx nnnn =

Versor de orientare { }Tzyx oooo = (3.14)

Versor de apropiere { }Tzyx aaaa =

Vectorul de poziţie { }Tzyx pppp =

RI

EF

6 1

δ'

δ a

n

o

z0

x0 y0

p

O0

M OB

Page 17: Robotica Avansata Curs

17

ji

i0

j0 TTT ⋅= i=j-1 j=1..6 (3.15)

65

50

60 TTT ⋅= 5

44

05

0 TTT ⋅= 43

30

40 TTT ⋅= . . . 2

11

02

0 TTT ⋅=

∏ −=⋅⋅⋅⋅⋅=6

1i

1i6

55

44

33

22

11

06

0 TTTTTTTT (3.16)

Matricea de situare ⎥⎦

⎤⎢⎣

⎡=

1000paonTEF

R (3.17)

Ecuaţia matriceală a manipulării 60

EFR TT = (3.18)

Page 18: Robotica Avansata Curs

184. MODELUL GEOMETRIC AL SITUĂRII OBIECTULUI MANIPULAT

4.1 Modelul geometric direct al situării obiectului manipulat

4.1.1 Modelul Denavit - Hartenberg

Fig. 4.1 Notaţiile utilizate de modelul Denavit - Hartenberg

Metoda Denavit - Hartenberg s-a introdus în 1955. Este cea mai răspândită metoda

de modelare geometrică a roboţilor. Avantajul metodei constă în numărul redus de

parametri necesari trecerii de la un sistem de referinţă la altul (6 4).

Algoritmul este următorul:

1) Se notează elementele pornind de la baza robotului (elementul 0) şi terminând

cu efectorul final. Numărul cuplei cinematice este dat elementul cu cifră mai

mare din componenţa ei.

2) Axa z i-1 este axa cuplei cinematice „i”, care leagă elementul „i-1” de elementul „i”.

3) Axa x i-1 este perpendiculara comună a axelor z i-1 şi z i-2 şi este orientată de la

Oi-2 la Oi-1. Originea sistemului de referinţă se alege în punctul de intersecţie al

perpendicularei comune cu axele cuplelor cinematice.

xi-1xi

i+1i

i-1

i-2

zi-1

zi-2

zi

di

ai αi

θiOi-1

Oi-2

Oi O’i-1

i-1

i i+1

Page 19: Robotica Avansata Curs

19 Sensul pozitiv fiind de la indicele mai mic la cel cu indice mai mare.

4) Axele Y sunt definite de produsul vectorial XZY ×= .

5) Se construieşte un tabel cu parametri: θi , di , ai , αi

Trecerea de la sistemul de referinţă Oi-1 la cel cu originea în Oi se face prin 4 mişcări

elementare:

⇒ o rotaţie cu unghiul θi în jurul axei z i-1 , de suprapunere a axei xi-1 pe

direcţia axei xi, sensul pozitiv fiind de la xi-1 la x i.

⇒ o translaţie cu di de-a lungul axei z i-1 ce aduce originea Oi-1 în O’i-1,

sensul pozitiv de la Oi-1 în O’i-1.

⇒ o translaţie cu ai de-a lungul axei xi suprapunând originea O’i-1cu Oi,

sensul pozitiv de la O’i-1 la Oi.

⇒ o rotaţie cu unghiul αi în jurul axei xi , de suprapunere a axei zi-1 pe

axa zi, pozitiv în sensul trigonometric.

Matricea de transformare de la elementul „i” la elementul „i-1” este de forma:

i-1Ti = Rot (zi-1 , θi) . Trans (zi-1 , di) . Trans (xi , ai) . Rot (xi , αi) (4.1)

⎥⎥⎥⎥

⎢⎢⎢⎢

ααα−α

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡θθθ−θ

=−

10000cossin00sincos00001

100001000010a001

1000d10000100001

1000010000cossin00sincos

Tii

ii

i

i

ii

ii

i1i (4.2)

⎥⎥⎥⎥

⎢⎢⎢⎢

ααθ⋅α⋅θ−α⋅θθθ⋅α⋅θα⋅θ−θ

=−

1000dcossin0sinasincoscoscossincosasinsincossincos

Tiii

iiiiiii

iiiiiii

i1i (4.2’)

Page 20: Robotica Avansata Curs

20Deci rezolvarea modelului geometric direct necesită cunoaşterea unor dimensiuni

(liniare şi unghiulare):

Pentru o cuplă de rotaţie: di , ai , αi sunt constante şi θi = θi (t)

Pentru o cuplă de translaţie: θi , ai , αi sunt constante şi di = di (t)

Tabelul Denavit-Hartenberg

θi di ai αi

0-1 θ1 d1 a1 α1 1-2 θ2 d2 a2 α2 2-3 θ3 d3 a3 α3

Revenind la ecuaţia matriceală:

60

EFR TT = ∏ −=

6

1i

1i6

0 TT (4.3)

⎥⎥⎥⎥

⎢⎢⎢⎢

=

⎥⎥⎥⎥

⎢⎢⎢⎢

1000ffffffffffff

1000paonpaonpaon

34333231

24232221

14131211

zzzz

yyyy

xxxx

(4.4)

unde ( )iiiiijij adff αθ= (4.5)

Pentru convenţia Denavit - Hartenberg, soluţia problemei geometrice directe constă

în egalarea elementelor matricelor din relaţia 4.4:

34z33z32z31z

24y23y22y21y

14x13x12x11x

fpfafofnfpfafofnfpfafofn

============

(4.6)

Page 21: Robotica Avansata Curs

21EXEMPLUL 4.1

Fig. 4.2 Modelul geometric direct - Structura RTT: a) schema cinematică b) schema asociată

θi di ai αi

0 – 1 θ1 0 0 0 1 – 2 0 d2 a2 +900 2 – 3 0 d3 0 0

⎥⎥⎥⎥

⎢⎢⎢⎢

ααθ⋅α⋅θ−α⋅θθθ⋅α⋅θα⋅θ−θ

=−

1000dcossin0sinasincoscoscossincosasinsincossincos

Tiii

iiiiiii

iiiiiii

i1i (4.2’)

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡θθθ−θ

=

1000010000cossin00sincos

T 11

11

10

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡−

=

1000d1100100a001

T2

2

21

⎥⎥⎥⎥

⎢⎢⎢⎢

=

1000d10000100001

T3

32

32

21

10

30 TTTT ⋅⋅=

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡θ⋅−θ⋅θ−θθ⋅+θ⋅θθ

=

1000d010

cosdsinacos0sinsindcosasin0cos

T2

131211

131211

30

θ1

d2

d3

A

B C

M1

0

2 3

a) θ1

d2

d3

O0=O1

M=O3 1

z3

2 3

b)

a2

O’1

O2

z2

z1

z0

x0

x1

x2

x3

α2

Page 22: Robotica Avansata Curs

224.1.2 Modelul Craig

Fig. 4.3 Notaţiile utilizate de modelul Craig

Particularitatea modelului Craig constă în alegerea axei z i în axa cuplei

cinematice „i”, care leagă elementul „i-1” de elementul „i”. Transformarea omogenă este o

funcţie de 4 parametri dintre care una este variabilă iar celelalte trei sunt constante. De fapt

putem afirma că fiecare parametru exprimă o matrice elementară motiv pentru care se mai

ataşează 3 sisteme de referinţă intermediare R, Q şi P. Strategia de trecere de la sistemul

legat de elementul „i-1” la elementul „i” constă în:

⇒ Trecerea de la sistemul de referinţă „i-1” la sistemul de referinţă „R”, care

are loc printr-o rotaţie cu unghiul αi-1 în jurul axei xi-1 de suprapunere a

axei zi-1 pe axa zR, pozitiv în sensul trigonometric;

⇒ Trecerea de la sistemul de referinţă „R” la sistemul de referinţă „Q” care

are loc printr-o translaţie cu ai-1 de-a lungul axei xi-1 suprapunând originea

„R” cu „Q”, sensul pozitiv de la „R” la „Q”.

xQ

xi

i i-1

i-2

zi-1

zi

di ai-1

αi-1

θi Oi-1=R

Oi

Q=P

i-1

i

xR

zR

xi-1

zQ

zP

xP

Page 23: Robotica Avansata Curs

23⇒ Trecerea de la sistemul de referinţă „Q” la sistemul de referinţă „P” care are

loc printr-o rotaţie cu unghiul θi în jurul axei zi de suprapunere a axei xQ

pe axa direcţia axei xP, pozitiv în sensul trigonometric;

⇒ Trecerea de la sistemul de referinţă „P” la sistemul de referinţă „i” care are

loc printr-o translaţie cu di de-a lungul axei zi ce aduce originea „P” în

„Oi”, sensul pozitiv de la „P” în „Oi”.

Conform relaţiei de recurenţă:

iP

PQ

QR

R1i

i1i TTTTT ⋅⋅⋅= −− (4.7)

sau matricea de transformare omogenă de la elementul „i-1” la elementul „i” este:

i-1Ti = Rot (xi-1 , αi-1) . Trans (xi-1 , ai-1) . Rot (zi , θi) . Trans (zi , di)

respectiv i-1Ti = Elice (xi-1 , αi-1 , ai-1) . Elice (zi , θi , di) (4.8)

Utilizând matricele elementare se obţine:

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡θθθ−θ

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡ −

⎥⎥⎥⎥

⎢⎢⎢⎢

−α−α−α−−α

=−

1000id100

00100001

1000010000icosisin00isinicos

100001000010

1ia001

100001icos1isin001isin1icos00001

iT1i (4.9)

⎥⎥⎥⎥

⎢⎢⎢⎢

α⋅αα⋅θα⋅θα⋅−α−α⋅θα⋅θ

θθ

=−−−−

−−−−

1000cosdcossincossinsinsindsincoscoscossin

a0sincos

T1ii1i1ii1ii

1ii1i1ii1ii

1iii

i1i (4.10)

Modelul Craig elimină confuzia datorată utilizării indicelui „i” pentru axa „i-1” ca în

cazul convenţiei Denavit – Hartenberg, dar păstrează problema singularităţii de

model datorat cazului axelor paralele. Transformarea omogenă după modelul Craig

poate fi privită ca o compunere de două mişcări elicoidale.

Page 24: Robotica Avansata Curs

244.1.3 Modelul Hayati

Fig. 4.4 Notaţiile utilizate de modelul Hayati

Pe baza modelului Denavit – Hartenberg, modelul Hayati încearcă eliminarea

singularităţii de model pentru cazul axelor paralele succesive, prin înlocuirea distanţei

„di”, dintre originile sistemelor „i” şi „i-1” (modelele Denavit–Hartenberg şi Craig),

cu unghiul de aliniere „βi”, al axei „yi” cu axa „yi-1”. Utilizând acest model

singularitatea de axe paralele este înlocuită cu singularitatea de axe perpendiculare,

problemele menţinându-se.

i-1Ti = Rot (zi-1 , θi) . Trans (xi-1 , ai) . Rot (xi -1, αi) . Rot (yi , βi) (4.11)

x'i-1

i

i-1

zi-1

zi

αi

θi Oi-1

Oi

i i+1

xi-1

yi-1

y'i-1

i+1

θi

βi

βi

βi αi

xi αi

yi

z'i-1

y'i-1

zi-1

ai

Page 25: Robotica Avansata Curs

254.1.4 Modelul Hsu - Everett

Fig. 4.5 Notaţiile utilizate de modelul Hsu - Everett

Pentru a elimina problemele apărute în urma modificării făcute de Hayati, Hsu

şi Everett menţin această modificare (unghiul de aliniere „βi”), dar reintroduc

parametrul „di”,

i-1Ti = Rot (zi-1 , θi) . Trans (zi-1 , di) . Trans (xi-1 , ai) . Rot (xi-1 , αi) . Rot (yi , βi)

(4.12)

Calibrarea utilizând acest model, precum şi studiul sensibilităţii de model

referitor la liniaritatea operatorului au condus la rezultate remarcabile privind

insensibilitatea datorată erorilor de execuţie şi de montaj. Numărul parametrilor

variabili rămâne acelaşi, fiind vorba doar de unul singur pentru o cuplă cinematică

conducătoare. Chiar dacă iniţial volumul de calcul este mai mare, simplificările de

model pentru studiul dinamicii pot justifica folosirea a 5 parametrii.

ai

zi

αi

Oi

i+1

i+1

βi

βi

βi αi

xi αi

yi

z'i-1

y'i-1

zi-1

i

i-1

zi-1

i θi

θi Oi-1

xi-1

yi-1

y'i-1 O'i-1

di

x'i-1

x'i-1

Page 26: Robotica Avansata Curs

264.1.5 Modelul Kovács - Stone

Fig. 4.6 Notaţiile utilizate de modelul Kovács pentru o structura de robot RTT a) schema cinematică b) schema asociată

Modelul Kovács constă în ataşarea unui contur poligonal deschis dispozitivului

de ghidare, ataşându-se câte un sistem de referinţă fiecărui laturi a conturului şi

elementelor în mişcare relativă. Convenţia este următoarea:

⇒ Axele z se aleg ca axe ale cuplelor cinematice de rotaţie sau de translaţie;

⇒ Offseturile se aleg ca axe x;

⇒ Axele x se aleg paralele între ele.

3''2

''2'2

'22

21

10

30 TTTTTT ⋅⋅⋅⋅= (4.13)

0 T 3 = Rot (z0 , θ1) . Trans (z1 , d2) . Trans (x2’ , a2’) . Rot (x2’’ , α2’’) . Trans (z2’’ , d3)

(4.14)

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥⎥

⎢⎢⎢⎢

⋅−

⋅⋅⋅θθθ−θ

=

10003d10000100001

1000001001000001

1000010000102a001

10002d10000100001

10000100001cos1sin001sin1cos

3T0

(4.15)

θ1

d2

d3

A

B C

M1

0

2 3

a)

O2’= O2’’

θ1

d2

d3

O0=O1

M=O3

z3

b)

a2’

O2 z2’’

z1

z0

x0

x1

x2’

x3

α2’’ x2’’ z2

x2

z2’

Page 27: Robotica Avansata Curs

27

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡θ+θ−θ−θθ+θθθ

=

1000d010

sinacosdcos0sincosasindsin0cos

T2

121311

121311

30 (4.16)

Modelul STONE (Arm Signature Model, S – Model) este analog cu cel

prezentat anterior, utilizând însă alte notaţii. Situarea (orientarea + poziţionarea) sunt

calculate asemănător modelului Denavit – Hartenberg.

Sn = B1 . B2 . . . . . Bn (4.17)

Matricele Bi descriu transformările elementare relative dintre sistemele Si-1 şi Si

având ca referinţă Si-1, fiind definită prin:

i-1 B i = Rot (z, γi) . Trans (0, 0, di) . Trans (ai, 0, 0) . Rot (x, αi) . Trans (0, 0, bi)

(4.18)

Page 28: Robotica Avansata Curs

284.1.6 Modelul Kovács utilizând noţiunea PeSiR

PeSiR = Perechi de Sisteme de Referinţă

Fig. 4.7 Notaţiile utilizate de modelul PeSiR

Elementele N şi N’ în contact materializează o cuplă cinematică generalizată.

Sistemele de referinţă N şi N’ ataşate constituie Perechea de Sisteme de Referinţă,

PeSiR N - N’. Situarea relativă a două sisteme de referinţă N şi N’, se exprimă prin

matricea de situare:

⎥⎥⎥⎥

⎢⎢⎢⎢

=

zzzz

yyyy

xxxx'N

N

aonraonraonr0001

S (4.19)

Situarea relativă a sistemului de referinţă N’ faţă de sistemul de referinţă N se

poate exprima şi prin intermediul matricei de trecere de la N’ la N:

N S N’ = N T N’ (4.20)

SN

pMM'N r

'NN r

O’

O

SM

SO

SS

pNN’

N

M

M’

p'N

P

Page 29: Robotica Avansata Curs

29unde:

N T N’ = Trans (x, q1) . Trans (y, q2) . Trans (z , q3) . Rot (x, q4) . Rot (y, q5) . Rot (z, q6)

(4.21)

⎥⎥⎥⎥

⎢⎢⎢⎢

⋅⋅−−⋅⋅+⋅⋅⋅+⋅⋅−⋅⋅⋅

=

545453

6465464654652

6465464654651'N

N

cccssqcssscccsssscqsscscsccssccq

o001

T (4.22)

unde s4 = sin q4 c4 = cos q4

N T N’ se poate exprima şi ca o matrice în formă vectorială (6 x 1) şi anume:

{ }T654321

v'N

N qqqqqqT = (4.23)

Ceea ce conduce la exprimarea situării sistemului N’ în raport cu N cu expresia:

v'N

Nv'N

N TS = (4.24)

unde matricea de situare v'N

N S are expresia:

{ }Trzryrxzyx

v'N

N ooorrrS = (4.25)

⇒ { }Tzyx'N

N rrrr = este vectorul de poziţie al originii sistemului de referinţă

N’ în raport cu sistemul de referinţă N;

⇒ { }Trzryrx'Nr

N oooo = este vectorul de orientare al sistemului de referinţă

N’ în raport cu sistemul de referinţă N.

Modelul matricial de ordinul zero al cuplei generalizate este definit de expresia:

{ } 6,1iqT Ti

v'N

N == (4.26)

având în componenţă elemente constante şi elemente variabile:

Page 30: Robotica Avansata Curs

30

( ) ( ) .varv

'NN

.ctv

'NNv

'NN TTT += (4.27)

sau

{ } { } { } 6,1iqqq T.vari

T.cti

Ti =+= (4.28)

Modelul cinematic de ordinul 1 al cuplei generalizate are expresia:

( ) ( ) { } ( ) 0Tt

qTTt

T .ctv

'NNT

.vari.varv

'NNv

'NNv

'NN

=∂∂

==∂∂

= &&& (4.29)

Modelul cinematic de ordinul 2 al cuplei generalizate are expresia:

( ) ( ) { }T.vari.var

v'N

Nv'N

N2

2v

'NN qTT

tT &&&&&& ==

∂∂

= (4.30)

unde: qi ct. este partea constantă { }

0t

q .cti =∂

qi var. este partea variabilă qi var.= qi var.(t)

Numărul gradelor de libertate al cuplei generalizate se calculează cu relaţia:

( )

( ) 0qq

qL .var

j.var

6

1jj.var

≠=∑= (4.31)

Clasa cuplei generalizate este: i = 6 - L

Elementul N’M formează un „offset” generalizat (Fig. 4.7). O pereche de sisteme de

referinţă N’ şi M se solidarizează cu acest element. Modelul matematic de ordinul

zero al „offset”-ului generalizat are expresia:

{ }T6c5c4c3c2c1c

vM

'N qqqqqqT = (4.32)

în care elementul N’M este nedeformabil (rigid). Întrucât 0qq cici == &&& modelele

cinematice de ordinul 1 şi 2 al „offset”-ului generalizat nu mai au sens.

Page 31: Robotica Avansata Curs

31Alegând un reper P∈M, vectorul de poziţie al punctului P (Fig. 4.7), în raport cu

sistemul de referinţă N se exprimă prin:

pTpTp 'N'N

NMM

NN⋅=⋅= (4.33)

iar în raport cu sistemul de referinţă N’ cu relaţia:

pTp MM

'N'N⋅= (4.34)

Din sistemul format de relaţiile (4.33) şi (4.34):

⎪⎩

⎪⎨⎧

⋅=

⋅⋅=

pTp

pTTpM

MNN

MM

'N'N

NN

(4.35)

se obţine:

∏=⋅=N

MM

'N'N

NM

N TTTT (4.36)

Astfel în raport cu un reper exterior, „offset”-ul generalizat are ca expresie a

modelelor cinematice de ordinul 1 şi 2:

0TTTT M'N

M'N

'NN

MN

=⋅= &&& (4.37)

respectiv:

M'N

'NN

MN TTT ⋅= &&&& (4.38)

Considerând lanţul cinematic deschis (Fig. 4.8 a) format din două elemente N şi M

legate printr-o cuplă cinematică NN’ şi având un „offset” N’M, expresia matricei de

situare a elementului M în raport cu elementul N este:

∏==N

MM

NM

N TTS (4.39)

respectiv pentru un reper exterior:

Page 32: Robotica Avansata Curs

32

pTp MN

M

N⋅=∏ (4.40)

Viteza şi acceleraţia de schimbare a situării elementului M în raport cu elementul N

este dată de expresia:

∏∂∂

=N

MM

N Tt

S& ∏∂∂

=N

M2

2

MN T

tS&& (4.41)

respectiv pentru un reper exterior:

pTt

p MN

M

N⋅⎟⎠⎞

⎜⎝⎛

∂∂

=′

∏ pTt

p MN

M2

2N⋅⎟⎠

⎞⎜⎝

⎛∂∂

=″

∏ (4.42)

deoarece pentru P∈M rezultă: 0pp MM=

″=′

Fig. 4.8 Mecanism generator de traiectorie: a) robot serial; b) robot paralel

Contururile închise ale mecanismului (Fig. 4.8 b) se formează astfel încât fiecare conexiune

care leagă elementul „m” de elementul „0” să se includă în maximum două contururi închise.

Conturul I: 0 – A1 – B1 – C1 – C2 – B2 – A2 – 0

Conturul II: 0 – A2 – B2 – C2 – C3 – B3 – A3 – 0

Conturul III: 0 – A1 – B1 – C1 – C3 – B3 – A3 – 0

A

B

C

M

1

2

3

0 A3

1’’’

A11’

0

2’

B1

C1

2’’’

B3

C3

A2

1’’

2’’ B2

I

C2

II

IIIa b

Page 33: Robotica Avansata Curs

33

⋅⋅⋅=⎟⎠⎞

⎜⎝⎛=⎟

⎠⎞

⎜⎝⎛=⎟

⎠⎞

⎜⎝⎛= ∏∏∏

3

0

m2

0

m1

0

mm

0 TTTS (4.43)

'3'2

'2'1

'3'1

NN

NN

NN TTT == (4.44)

unde ∏0

mT corespunde conexiunii NN’, iar numărul de egalităţi matriceale din

sistemul 4.44 este de : ( )∑ −= ε 2ordl (4.45)

unde s-a notat cu ordε, ordinul elementului ε, dacă ordε ≥ 3

4.1.7 Modelul geometric invers Denavit – Hartenberg

Pornind de la ecuaţia matriceală prezentată în relaţia 4.3

∏ −==6

1i

1i6

0EF

R TTT

Pe baza matricei coordonatelor generalizate:

{ }T654321 qqqqqqq = (4.46)

şi înmulţind la stânga se separă succesiv variabilele „qi”:

61

65

54

43

32

21

EFR1

10 TTTTTTTT =⋅⋅⋅⋅=⋅−

62

65

54

43

32

EFR1

101

21 TTTTTTTT =⋅⋅⋅=⋅⋅ −−

63

65

54

43

EFR1

101

211

32 TTTTTTTT =⋅⋅=⋅⋅⋅ −−− (4.47)

64

65

54

EFR1

101

211

321

43 TTTTTTTT =⋅=⋅⋅⋅⋅ −−−−

65

EFR1

101

211

321

431

54 TTTTTTT =⋅⋅⋅⋅⋅ −−−−−

Produsele matriceale conduc la următoarea egalitate:

⎥⎥⎥⎥

⎢⎢⎢⎢

=

⎥⎥⎥⎥

⎢⎢⎢⎢

1000hhhhhhhhhhhh

1000)p(f)a(f)o(f)n(f)p(f)a(f)o(f)n(f)p(f)a(f)o(f)n(f

34333231

24232221

14131211

3333

2222

1111

(4.48)

Page 34: Robotica Avansata Curs

34respectiv următoarele relaţii între elementele matricelor:

⎪⎩

⎪⎨

============

343333323313

242232222212

141131121111

h)p(fh)a(fh)o(fh)n(fh)p(fh)a(fh)o(fh)n(fh)p(fh)a(fh)o(fh)n(f

(4.49)

Dintre aceste relaţii se selectează relaţia care este dependentă numai de variabila „qi”

unde i=1...6. Soluţionând pe rând relaţiile 4.47 se obţin variabilele „qi”.

EXEMPLUL 4.2

Aferent structurii robotului prezentat în Exemplul 4.1. Pornind de la expresia matricei

de transformare omogenă aferentă mecanismului generator de traiectorie de structura

RzTzTx:

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡θ⋅−θ⋅θ−θθ⋅+θ⋅θθ

=

1000d010

cosdsinacos0sinsindcosasin0cos

T2

131211

131211

30

⎪⎩

⎪⎨

=

θ−θ=θ+θ=

2z

1312y

1312x

dp

cosdsinapsindcosap

(4.50)

Prima soluţie este d2 = pz.

Primele două ecuaţii ale sistemului 4.50 conduc la obţinerea lui d3.

( )( )⎪⎩

⎪⎨⎧

θ−θ=

θ+θ=2

13122y

21312

2x

cosdsinap

sindcosap

⎪⎩

⎪⎨⎧

θ+θθ−θ=

θ+θθ+θ=

122

31132122

22y

122

31132122

22x

sindcossinda2sinap

cosdcossinda2cosap (4.51)

( ) ( ) 2y

2x1

21

2221

21

223 ppsincosasincosd +=θ+θ+θ+θ

Page 35: Robotica Avansata Curs

352y

2x

22

23 ppad +=+ pt. a2 = const.

A doua soluţie este 22

2y

2x3 appd −+=

Din prima relaţie a sistemului 4.50 şi anume

x1213 pcosasind =θ+θ Fig. 4.9

se admite o soluţie de forma:

DcosBsinA 11 =θ+θ (4.52)

Utilizând substituţia (conform Fig. 4.9):

22 BAriarABarctgundesinrBsicosrA +==ϕϕ=ϕ= (4.53)

( )

( )

( ) ( )( )

ABarctg

DBADarctg

DBADarctg

DrDarctg

DrD

rD1

rD

cossintg

rD1cos

rDsin

rDcossinsincos

Dcossinrsincosr

2221

222221

22

2

21

11

2

2

1

1

11

11

−−+±

−+±=

−±=θ+ϕ

−±=

−±

=θ+ϕθ+ϕ

=θ+ϕ

−=θ+ϕ

=θ+ϕ

=θϕ+θϕ

=θϕ+θϕ

(4.54)

Pentru A = d3 B = a2 şi D = px se obţine a treia soluţie θ1:

3

22x

22

23

x1 d

aarctgpad

parctg −−+

±=θ

ϕ B

A

r

x

y

Page 36: Robotica Avansata Curs

365 MODELUL CINEMATIC DIRECT ŞI INVERS AL ROBOTULUI

In cazul rezolvării problemei cinematice directe a vitezelor se cunosc lungimile elemen-

telor şi vitezele lor relative şi se calculează viteza rezultantă a punctului caracteristic M.

In cazul rezolvării problemei cinematice inverse a vitezelor se cunosc lungimile

elementelor şi viteza rezultantă a punctului caracteristic M (Fig. 5.1) şi se calculează

vitezele relative ale cuplelor conducătoare.

5.1 Modelul cinematic direct al robotului

Fig. 5.1 Model de calcul pentru analiza cinematică directă a vitezelor

Se consideră un sistem de referinţă fix ataşat bazei robotului - RI cu originea în

punctul O0 şi un sistem de referinţă mobil ataşat efectorului final – EF sau obiectului

manipulat cu originea în punctul caracteristic M = Oi. Starea de viteză a EF se

defineşte prin matricea:

⎪⎭

⎪⎬⎫

⎪⎩

⎪⎨⎧

Φ= &r

&r&r PX (5.1)

unde: { }Tzyx PPPP &&&&r = este vectorul viteză liniară al originii Oi;

{ }Tzyx ΦΦΦ=Φ &&&&r este vectorul viteză unghiulară rezultant al EF;

zi

A

N

OPz0

x0 y0O0

M=Oi

xi

yi RI

EF

Page 37: Robotica Avansata Curs

37Se defineşte matricea vitezelor generalizate:

{ }T654321 qqqqqqQ &&&&&&&r = (5.2)

unde: ( )ii tq θ

∂∂

=& pentru o cuplă conducătoare de rotaţie;

( )ii dt

q∂∂

=& pentru o cuplă de translaţie;

Legătura dintre cele două relaţii X&r

şi Q&r

este dată de matricea Jacobiană:

QJX &r&r ⋅= (5.3)

sau

⎪⎪⎪

⎪⎪⎪

⎪⎪⎪

⎪⎪⎪

⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢

=

⎪⎪⎪⎪

⎪⎪⎪⎪

⎪⎪⎪⎪

⎪⎪⎪⎪

ΦΦΦ

6

5

4

3

2

1

666564636261

565554535251

464544434241

363534333231

262524232221

161514131211

z

y

x

z

y

x

qqqqqq

JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ

PPP

&

&

&

&

&

&

&

&

&

&

&

&

(5.4)

Soluţia problemei constă în determinarea elementelor matricei Jacobiene.

Explicitând prima linie:

616515414313212111x qJqJqJqJqJqJP &&&&&&& +++++= (5.5)

pentru: t

PP xx ∂

∂=&

tqq i

i ∂∂

=& (5.6)

se obţine 1616515414313212111x q/qJqJqJqJqJqJP ∂∂+∂+∂+∂+∂+∂=∂ (5.7)

respectiv:

1

616

1

515

1

414

1

313

1

212

1

x11 q

qJqqJ

qqJ

qqJ

qqJ

qPJ

∂∂

−∂∂

−∂∂

−∂∂

−∂∂

−∂∂

= (5.8)

Page 38: Robotica Avansata Curs

38şi având în vedere că în fiecare cuplă conducătoare parametrii cinematici sunt

independenţi între ei, adică:

0qq

qq

qq

qq

qq

1

6

1

5

1

4

1

3

1

2 =∂∂

=∂∂

=∂∂

=∂∂

=∂∂

1

x11 q

PJ∂∂

= (5.9)

În mod similar se deduc şi celelalte elemente ale matricei Jacobiene,

soluţionând linie cu linie relaţia 5.4. Sistemul de 36 de relaţii rezultat este de forma:

i

xi1 q

PJ∂∂

= i

yi2 q

PJ

∂=

i

zi3 q

PJ∂∂

= i

xi4 q

J∂Φ∂

= i

yi5 q

J∂

Φ∂=

i

zi6 q

J∂Φ∂

= (5.10)

5.2 Modelul cinematic invers al robotului

Cunoscând starea de viteză a EF prin matricea X&r

, se determină starea de viteză a

cuplelor conducătoare cu relaţia:

XJQ 1 &r&r ⋅= − (5.11)

Din expresiile elementelor matricei Jacobiene, se constată că elementele primei

coloane depind numai de q1, elementele celei de-a doua coloane depind numai de q2,

ş.a.m.d., adică: Ji1 = f(q1) Ji2 = f(q2) . . . Ji6 = f(q6) (5.12)

Astfel primele trei linii ale matricei Jacobiene se obţin cu ajutorul submatricei de

translaţie, iar următoarele trei linii cu ajutorul submatricei de rotaţie din cadrul

matricei de transformare omogenă.

5.3 Metoda P. G. Ránky de determinare a elementelor matricei Jacobiene

Considerând un punct „P”, definit de vectorul de poziţie Pr

, faţă de un sistem de

referinţă mobil cu originea OM, poziţionat în raport cu un sistem de referinţă fix cu

originea în OF, prin vectorul 0Xr

.

Page 39: Robotica Avansata Curs

39

Fig. 5.2 Model de calcul pentru viteza punctului P

Ecuaţia vectorială a punctului P în sistemul de referinţă fix:

PXX F0

FF rrr+= (5.13)

derivată în raport cu timpul:

PVV F0

FF ′+=rrr

(5.14)

Considerând submatricea de orientare definită prin relaţia_

⎥⎥⎥

⎢⎢⎢

αααθ−αθθαθαθ−θ

=cossin0

sincoscoscossinsinsincossincos

R (5.15)

Vectorul de poziţie al punctului P în raport cu sistemul de referinţă fix se exprimă

prin relaţia:

PRP MM

FF rr⋅= (5.16)

sau derivata ei:

PRPRP MM

FMM

FF ′⋅+⋅′=′rrr

(5.17)

Întrucât matricea R este ortonormală, având proprietatea:

T1 RR =− IRR 1 =⋅−

şi cum: 0PP MM ttancons =′⇒=rr

(5.18)

zM 0x

zF

xF yFOF

OM

xM

yM P

xP

Page 40: Robotica Avansata Curs

40se obţine:

( ) ( ) PRPRRRPRRRP MFFMFTFMTFF rrrr⋅⋅Ω=⋅⋅⋅′=⋅⋅⋅′=′ (5.19)

Derivând relaţia 5.15 se obţine:

⎥⎥⎥

⎢⎢⎢

⎡αθαθ−θαθαθ−θ−

=′

000sinsincossincossincoscoscossin

R (5.20)

Transpusa matricei din relaţia 5.15 este:

⎥⎥⎥

⎢⎢⎢

ααθ−αθααθαθ−

θθ=

cossincossinsinsincoscoscossin

0sincosR T (5.21)

iar produsul matriceal:

Ω=θ⋅⎥⎥⎥

⎢⎢⎢

⎡ −=⋅′ &

000001010

RR T (5.22)

Revenind la relaţia 5.14:

PRVV MFF0

FF rrr⋅⋅Ω+= (5.23)

Submatricea de translaţie are expresia:

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧θ⋅θ⋅

=dsinacosa

X0F r (5.24)

care prin derivare:

⎪⎭

⎪⎬

⎪⎩

⎪⎨

θ⋅⋅θθ⋅⋅θ−

=dcosasina

V0F

&

&

&r

(5.25)

Page 41: Robotica Avansata Curs

41Relaţia finală a vitezei liniare este

Pcossin0

sincoscoscossinsinsincossincos

000001010

dcosasina

V MF r&

&

&

&r

⋅αα

αθ−αθθαθαθ−θ

⋅θ⋅−

+θ⋅⋅θθ⋅⋅θ−

=

⎥⎥⎥

⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

⎪⎭

⎪⎬⎫

⎪⎩

⎪⎨⎧

(5.26)

5.4 Cinematica unei cuple conducătoare de rotaţie

Fig. 5.3 Schema unei cuple conducătoare de rotaţie

Pentru cupla conducătoare de rotaţie conform Fig. 5.3 viteza liniară a originii 0F Vr

,

deci din relaţia 5.23 se obţine: PRV MFFF rr⋅⋅Ω= (5.27)

Fig. 5.4 Calculul vectorilor de poziţie al punctului P

Pentru două elemente succesive „i-1” şi „i” legate între ele printr-o cuplă

conducătoare de rotaţie i-1Ci relaţia 5.27 devine:

ni

i1i

i1i

i1i PRV

rr⋅⋅Ω= −−− (5.28)

yi-1 Oi-1

zi-1 xi-1

Oi

zi

xi

yi

On-1

zn-1

xn-1

yn-1

On=M

zn

xn

yn

ni Pr

n1i Pr−

ZF = ZM

YM

XF

OF = OM

XM

YFθi

θi

θi

0

1

Page 42: Robotica Avansata Curs

42

Considerând vectorul ni Pr

ca unind punctul caracteristic M, aparţinând efectorului

final cu originea Oi, vectorul n1i Pr

− se obţine din relaţia:

ni

i1i

n1i PRP

rr⋅= −− (5.29)

Expresie utilizată în relaţia 5.28 conduce la:

n1i

i1i

i1i PV

rr−−− ⋅Ω= (5.30)

sau: i

n

x

y1i

iz

y

x1i

i

i

1i

i1i

0PP

PPP

000001010

V θ⋅⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧−=

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧⋅θ⋅

⎥⎥⎥

⎢⎢⎢

⎡ −=

−−−

− &&r

(5.31)

Pentru a exprima viteza elementului „i” în sistemul de referinţă fix este necesar să

apelăm la submatriacea de rotaţie R a matricei de transformare omogenă 0 T i-1 şi

anume 0 R i-1 şi obţinem:

( ) ( ) inx1i

1iz

y

x0

ny1i

1iz

y

x0

i

n

x

y1i

1izzz

yyy

xxx0

i

n

x

y1i

1i0

i0

POOO

PNNN

0PP

AONAONAON

0PP

RV

θ⋅⎥⎥⎥

⎢⎢⎢

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧+

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧−=

=θ⋅⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧−⋅

⎥⎥⎥

⎢⎢⎢

⎡=θ⋅

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧−⋅=

&

&&r

(5.32)

Mişcarea de rotaţie finită în jurul axei zi:

iiiii1i

100

kj0i0 θ⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧=θ++=Φ−

rrrr (5.33)

iar derivata: ii1i

100θ⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧=Φ− &&r (5.34)

Page 43: Robotica Avansata Curs

43În mod similar pentru a exprima viteza unghiulară a elementului „i” în sistemul de

referinţă fix, apelăm la submatricea de rotaţie 0 R i-1:

i

1iz

y

x0

ii1i

1izzz

yyy

xxx0

i1i

1izzz

yyy

xxx0

i0

AAA

100

AONAONAON

AONAONAON

θ⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧=θ

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧=Φ⋅

⎥⎥⎥

⎢⎢⎢

⎡=Φ⋅

⎥⎥⎥

⎢⎢⎢

⎡=Φ

&&&r&r&r (5.35)

Grupând viteza liniară şi viteza unghiulară relativă şi absolută conform relaţiei 5.1:

i

1i

i1i VX

⎭⎬⎫

⎩⎨⎧

Φ=

−−

&r

r&r i

n

x

y1i

i1i

1000PP

X θ⋅

⎪⎪⎪

⎪⎪⎪

⎪⎪⎪

⎪⎪⎪

⎧−

=

− &&r (5.36a)

i

0

i0 VX

⎭⎬⎫

⎩⎨⎧

Φ= &r

r&r

( ) ( )

⎪⎪⎪⎪

⎪⎪⎪⎪

⎪⎪⎪⎪

⎪⎪⎪⎪

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧+

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧−

=

⎪⎪⎪⎪

⎪⎪⎪⎪

⎪⎪⎪⎪

⎪⎪⎪⎪

ΦΦΦ

=

1iz

y

x0

nx1i

1iz

y

x0

ny1i

1iz

y

x0

iz

y

x

z

y

x0

i0

AAA

POOO

PNNN

PPP

X

&

&

&

&

&

&

&riθ& (5.36b)

5.5 Cinematica unei cuple conducătoare de translaţie

Fig. 5.5 Schema unei cuple conducătoare de translaţie

ZM

YM

XF

OM

XM

YF

0

OF

1 ZF

di

Page 44: Robotica Avansata Curs

44Se caracterizează prin lipsa mişcării de rotaţie: 0ttancons =θ⇒=θ & deci

rămâne numai componenta specifică translaţiei: 0FF VVrr

= (5.37)

Considerând sistemele fix şi mobil ca fiind două sisteme succesive ataşate

elementelor „i-1” şi ”i” legate între ele printr-o cuplă de translaţie i-1Ci:

i

n

1i

ni

1i

i1i d

100

d00

V &

&

r⋅

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧=

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧=

−−

− (5.38)

Pentru a exprima viteza elementului „i” în sistemului de referinţă fix se apelează la

submatricea de orientare 0 R i-1 a matricei de transformare omogenă 0 T i-1:

i

1iz

y

x

i

n

1i

1izzz

yyy

xxx0

i1i

1i0

i0 d

AAA

d100

AONAONAON

VRV &&rr

⋅⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧=⋅

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧⋅

⎥⎥⎥

⎢⎢⎢

⎡=⋅=

−− (5.39)

Ţinând cont că vectorul viteză unghiulară relativă 0i1i =Φ− &r şi absolută i

0Φ&r

= 0,

alături de viteza liniară relativă şi absolută se obţine:

i

1i

i1i VX

⎭⎬⎫

⎩⎨⎧

Φ=

−−

&r

r&r i

n

1i

i1i d

000100

X &&r ⋅

⎪⎪⎪

⎪⎪⎪

⎪⎪⎪

⎪⎪⎪

=

− (5.40a)

i

0

i0 VX

⎭⎬⎫

⎩⎨⎧

Φ= &r

r&r i

1i

z

y

x0

iz

y

x

z

y

x0

i0 d

000

AAA

PPP

X &

&

&

&

&

&

&

&r ⋅

⎪⎪⎪

⎪⎪⎪

⎪⎪⎪

⎪⎪⎪

=

⎪⎪⎪⎪

⎪⎪⎪⎪

⎪⎪⎪⎪

⎪⎪⎪⎪

ΦΦΦ

=

(5.40b)

Page 45: Robotica Avansata Curs

456. MODELUL CINETOSTATIC AL DISPOZITIVULUI DE GHIDARE AL

ROBOŢILOR

Se consideră dispozitivul de ghidare al unui robot industrial având la bază lanţul cinematic

deschis prezentat în Fig. 6.1. Pentru determinarea reacţiunilor dinamice în cuplele cinematice şi

a forţelor / momentelor de echilibrare în cuplele cinematice conducătoare se impune să

cunoaştem mişcarea mecanismului şi rezultanta forţelor / momentelor exterioare (gravitaţionale,

de frecare şi tehnologice) nFr

şi nMr

ce acţionează asupra elementului „n”.

Fig. 6.1 Schema de calcul cinetostatic al dispozitivului de ghidare al roboţilor

Se va determina torsorul reacţiunilor dinamice ARr

şi AMr

din cupla cinematică de

rotaţie A pentru a atinge starea de mişcare dorită. Ecuaţiile de echilibru sunt:

0

nF

i-1

1

2

i

n-1 n

nM

AM

A

AR

DM

DR

D

M

N

iF

iM

Page 46: Robotica Avansata Curs

46

⎪⎩

⎪⎨⎧

=+

=+

0MM

0FR

nA

nArr

rr

(6.1)

Admiţând că, cupla cinematică D este o cuplă de translaţie, al cărui torsor al forţelor exterioare

include forţele/momentele iFr

şi iMr

de echilibrare ale cuplei cinematice analizate anterior,

atunci ecuaţia de echilibru este:

⎪⎩

⎪⎨⎧

=+

=+

0MM

0FR

iD

iDrr

rr

(6.2)

Torsorul forţelor generalizate din cupla cinematică de rotaţie A este:

{ }{ }⎪⎩

⎪⎨⎧

=

=

⎪⎭

⎪⎬⎫

⎪⎩

⎪⎨⎧

=ℜT

1x3AzAyAxA

T1x3AzAyAxA

1x6A

AA

MMMM

RRRRunde

M

Rr

rr

(6.3)

iar torsorul forţelor generalizate exterioare:

{ }{ }⎪⎩

⎪⎨⎧

=

=

⎪⎭

⎪⎬⎫

⎪⎩

⎪⎨⎧

=ℑT

1x3nznynxn

T1x3nznynxn

1x6n

n

MMMM

FFFFunde

M

Fr

rr

(6.4)

Utilizând matricea Jacobiană:

ℑ⋅=ℜrr

JA (6.5)

⎪⎪⎪

⎪⎪⎪

⎪⎪⎪

⎪⎪⎪

⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢

=

⎪⎪⎪

⎪⎪⎪

⎪⎪⎪

⎪⎪⎪

nz

ny

nx

nz

ny

nx

666564636261

565554535251

464544434241

363534333231

262524232221

161514131211

Az

Ay

Ax

Az

Ay

Ax

MMMFFF

JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ

MMMRRR

Explicitând prima linie:

nz16ny15nx14nz13ny12nx11Ax MJMJMJFJFJFJR ⋅+⋅+⋅+⋅+⋅+⋅= (6.6)

Page 47: Robotica Avansata Curs

47Se determină elementele matricei Jacobiene:

⎪⎪⎪⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪⎪⎪⎪

∂∂

=∂∂

=∂∂

=∂∂

=∂∂

=∂∂

=

∂=

∂=

∂=

∂=

∂=

∂=

∂∂

=∂∂

=∂∂

=∂∂

=∂∂

=∂∂

=

∂∂

=∂∂

=∂∂

=∂∂

=∂∂

=∂∂

=

∂=

∂=

∂=

∂=

∂=

∂=

∂∂

=∂∂

=∂∂

=∂∂

=∂∂

=∂∂

=

nz

Az66

ny

Az65

nx

Az64

nz

Az63

ny

Az62

nx

Az61

nz

Ay56

ny

Ay55

nx

Ay54

nz

Ay53

ny

Ay52

nx

Ay51

nz

Ax46

ny

Ax45

nx

Ax44

nz

Ax43

ny

Ax42

nx

Ax41

nz

Az36

ny

Az35

nx

Az34

nz

Az33

ny

Az32

nx

Az31

nz

Ay26

ny

Ay25

nx

Ay24

nz

Ay23

ny

Ay22

nx

Ay21

nz

Ax16

ny

Ax15

nx

Ax14

nz

Ax13

ny

Ax12

nx

Ax11

MMJ

MMJ

MMJ

FMJ

FMJ

FMJ

MM

JMM

JMM

JF

MJ

FM

JF

MJ

MMJ

MMJ

MMJ

FMJ

FMJ

FMJ

MRJ

MRJ

MRJ

FRJ

FRJ

FRJ

MR

JMR

JMR

JFR

JFR

JFR

J

MRJ

MRJ

MRJ

FRJ

FRJ

FRJ

(6.7)

6.1 Cinetostatica unei cuple conducătoare de rotaţie

Fig. 6.2 Model de calcul al unei cuple conducătoare de rotaţie

n-1

nM

nF

θ AM

AR

Ah

ndi

j

k

xn

yn

zn

n

eAM

On

Page 48: Robotica Avansata Curs

48Ecuaţia de echilibru în cupla cinematică A este:

⎪⎩

⎪⎨⎧

=Σ+×+×++

=+

0MFdRhMM

0FR

fAnnAAnA

nArrrrrrr

rr

(6.8)

Neglijând efectul momentelor forţelor de frecare: 0MfA =Σr

şi:

{ } { }{ } { }{ } { }⎪

⎪⎩

⎪⎪⎨

==

==

==

T1x3AzAyAxA

T1x3nznynxn

T1x3AzAyAxA

T1x3nznynxn

T1x3AzAyAxA

T1x3nznynxn

hhhhddddMMMMMMMM

RRRRFFFF

rr

rr

rr

(6.9)

Pentru 0MfA ≠Σr

vezi Roboţi Industriali – Kovacs F. şi Rădulescu C.: Litografia Institutul Politehnic ”Traian Vuia” Timişoara, 1992 – pag. 116.

unde: nFr

- rezultanta forţelor exterioare;

nMr

- momentul rezultant al forţelor exterioare;

ndr

- perpendiculara din On pe direcţia vectorului nFr

;

ARr

- reacţiunea din cupla cinematică A; AM

r- momentul reactiv din cupla cinematică A;

Ahr

- perpendiculara din On pe direcţia vectorului ARr

.

Din prima ecuaţie a relaţiei 6.8 rezultă:

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧−=

⎪⎭

⎪⎬

⎪⎩

⎪⎨

nz

ny

nx

Az

Ay

Ax

FFF

RRR

nzAz

nyAy

nxAx

FRFRFR

−=−=−=

(6.10)

Ceea ce permite, ca din relaţia 6.7, să se determine elementele matricei Jacobiene din

primele trei linii:

0JJJJJ1FRJ

0JJJJJ1FR

J

0JJJJJ1FRJ

3635343231nz

Az33

2625242321ny

Ay22

1615141312nx

Ax11

=====−=∂∂

=

=====−=∂∂

=

=====−=∂∂

=

(6.11)

Neglijând suma momentelor forţelor de frecare 0MfA =Σr

şi efectuând produsele:

Page 49: Robotica Avansata Curs

49

( ) ( )( )kRhRh

jRhRhiRhRh

RRRhhhkji

RhAxAyAyAx

AxAzAzAxAyAzAzAy

AzAyAx

AzAyAxAA r

rrrr

−++−−−

=⎥⎥⎥

⎢⎢⎢

=× (6.12)

( ) ( )( )kFdFd

jFdFdiFdFd

FFFdddkji

Fdnxnynynx

nxnznznxnynznzny

nznynx

nznynxnn r

rrrr

−++−−−

=⎥⎥⎥

⎢⎢⎢

=× (6.13)

Din a doua ecuaţie a relaţiei 6.8 rezultă:

⎪⎭

⎪⎬

⎪⎩

⎪⎨

−−−

−⎪⎭

⎪⎬

⎪⎩

⎪⎨

−−−

−⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧−=

⎪⎭

⎪⎬

⎪⎩

⎪⎨

nxnynynx

nznxnxnz

nynznzny

AxAyAyAx

AzAxAxAz

AyAzAzAy

nz

ny

nx

Az

Ay

Ax

FdFdFdFdFdFd

RhRhRhRhRhRh

MMM

MMM

(6.14)

Ceea ce permite să se determine elementele matricei Jacobiene din ultimele trei linii:

( ) ( ) nznyAynynzAznx

nynznyAznznynzAynx

nynznznyAyAzAzAynxAx

FdhFdhM

FdFhFdFhM

FdFdRhRhMM

−+−−−=

+−−+−=

+−+−−=

(6.15)

( ) ( )

0MMJ0

MMJ1

MMJ

dhF

MJdhF

MJ0F

MJ

nz

Ax46

ny

Ax45

nx

Ax44

nyAynz

Ax43nzAz

ny

Ax42

nx

Ax41

=∂∂

==∂∂

=−=∂∂

=

−+=∂∂

=−−=∂∂

==∂∂

=

(6.16)

( ) ( ) nznxAxnxnzAzny

nznxnzAxnxnznxAzny

nznxnxnzAzAxAxAznyAy

FdhFdhM

FdFhFdFhM

FdFdRhRhMM

−−−+−=

+−−+−=

+−+−−=

(6.17)

( ) ( )

0MM

J1MM

J0MM

J

dhF

MJ0

FM

JdhF

MJ

nz

Ay56

ny

Ay55

nx

Ay54

nxAxnz

Ay53

ny

Ay52nzAz

nx

Ay51

=∂

∂=−=

∂==

∂=

−−=∂

∂==

∂=−+=

∂=

(6.18)

Page 50: Robotica Avansata Curs

50

( ) ( ) nynxAxnxnyAynz

nynxnyAxnxnynxAynz

nxnynynxAxAyAyAxnzAz

FdhFdhM

FdFhFdFhM

FdFdRhRhMM

−+−−−=

−++−−=

+−+−−=

(6.19)

( ) ( )

1MMJ0

MMJ0

MMJ

0F

MJdhF

MJdhF

MJ

nz

Az66

ny

Az65

nx

Az64

nz

Az63nxAx

ny

Az62nyAy

nx

Az61

−=∂∂

==∂∂

==∂∂

=

=∂∂

=−+=∂∂

=−−=∂∂

=

(6.20)

Elementele matricei Jacobiene sunt:

( )( )( ) 62nxAx53

61nyAy43

51nzAz42

665544332211

JdhJ

JdhJJdhJ

1JJJJJJ

−=−−=

−=−+=−=−−=

−======

(6.21)

Matrcea Jacobiană pentru o cuplă conducătoare de rotaţie are expresia:

⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢

−−−

=

665343

555342

444342

33

22

11

rotatie

J000JJ0J0J0J00JJJ0000J000000J000000J

J (6.22)

Momentului de echilibrare MeA din cupla cinematică de rotaţie A, ce acţionează pe

direcţia axei z şi pune în mişcare elementul „n” în raport cu „n-1”, se obţine din

relaţia:

MeA = MAz (6.23)

Page 51: Robotica Avansata Curs

516.2 Cinetostatica unei cuple conducătoare de translaţie

Fig. 6.3 Model de calcul al unei cuple conducătoare de translaţie

Ecuaţia de echilibru în cupla cinematică D este:

⎪⎩

⎪⎨⎧

=×+×++

=Σ++

0FdRhMM

0FFR

nnDDnD

fDnDrrrrrr

rrr

(6.24)

Pentru : 0FfD =Σr

şi:

{ } { }{ } { }{ } { }⎪

⎪⎩

⎪⎪⎨

==

==

==

T1x3DzD

T1x3nznynxn

T1x3DzDyDxD

T1x3nznynxn

T1x3DzDyDxD

T1x3nznynxn

h00hddddMMMMMMMM

RRRRFFFF

rr

rr

rr

(6.25)

Pentru 0FfD ≠Σr

vezi Roboţi Industriali – Kovacs F. şi Rădulescu C.: Litografia Institutul Politehnic ”Traian Vuia” Timişoara, 1992 – pag. 126.

unde: nFr

- rezultanta forţelor exterioare;

nMr

- momentul rezultant al forţelor exterioare;

ndr

- perpendiculara din On pe direcţia vectorului nFr

;

DRr

- reacţiunea din cupla cinematică D;

n-1

nM

nF

d DM

DR

Dh

nd

i

j

k

xn

yn

zn

n

eDF

On

Page 52: Robotica Avansata Curs

52

DMr

- momentul reactiv din cupla cinematică D;

Dhr

- paralela cu direcţia de mişcare.

Din prima ecuaţie a relaţiei 6.24 rezultă:

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧−=

⎪⎭

⎪⎬

⎪⎩

⎪⎨

nz

ny

nx

Dz

Dy

Dx

FFF

RRR

nzDz

nyDy

nxDx

FRFRFR

−=−=−=

(6.26)

Ceea ce permite, ca din relaţia 6.7, să se determine elementele matricei Jacobiene din

primele trei linii:

0JJJJJ1FRJ

0JJJJJ1FR

J

0JJJJJ1FRJ

3635343231nz

Dz33

2625242321ny

Dy22

1615141312nx

Dx11

=====−=∂∂

=

=====−=∂

∂=

=====−=∂∂

=

(6.27)

Neglijând suma forţelor de frecare 0FfD =Σr

şi efectuând produsele:

jRhiRhRRRh00kji

Rh DxDzDyDz

DzDyDx

DzDD

rrrr+−=

⎥⎥⎥

⎢⎢⎢

=× (6.28)

( ) ( )( )kFdFd

jFdFdiFdFd

FFFdddkji

Fdnxnynynx

nxnznznxnynznzny

nznynx

nznynxnn r

rrrr

−++−−−

=⎥⎥⎥

⎢⎢⎢

=× (6.13)

Din a doua ecuaţie a relaţiei 6.24 rezultă:

⎪⎭

⎪⎬

⎪⎩

⎪⎨

−−−

−⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧−−

⎪⎭

⎪⎬

⎪⎩

⎪⎨

⎧−=

⎪⎭

⎪⎬

⎪⎩

⎪⎨

nxnynynx

nznxnxnz

nynznzny

DxDz

DyDz

nz

ny

nx

Dz

Dy

Dx

FdFdFdFdFdFd

0RhRh

MMM

MMM

(6.29)

Ceea ce permite să se determine elementele matricei Jacobiene din ultimele trei linii:

Page 53: Robotica Avansata Curs

53

( ) nznynynzDznx

nynznznynyDznx

nynznznyDyDznxDx

FdFdhM

FdFdFhM

FdFdRhMM

−−−−=

+−−−=

+−+−=

(6.30)

( )

0MMJ0

MMJ1

MMJ

dF

MJdhF

MJ0F

MJ

nz

Dx46

ny

Dx45

nx

Dx44

nynz

Dx43nzDz

ny

Dx42

nx

Dx41

=∂∂

==∂∂

=−=∂∂

=

−=∂∂

=−−=∂∂

==∂∂

=

(6.31)

( ) nznxnxnzDzny

nznxnxnznxDzny

nznxnxnzDxDznyDy

FdFdhM

FdFdFhM

FdFdRhMM

+−+−=

+−+−=

+−−−=

(6.32)

( )

0MM

J1MM

J0MM

J

dF

MJ0

FM

JdhF

MJ

nz

Dy56

ny

Dy55

nx

Dy54

nxnz

Dy53

ny

Dy52nzDz

nx

Dy51

=∂

∂=−=

∂==

∂=

=∂

∂==

∂=−+=

∂=

(6.33)

nynxnxnynznxnynynxnzDz FdFdMFdFdMM −+−−=+−−= (6.34)

1MMJ0

MMJ0

MMJ

0F

MJdF

MJdF

MJ

nz

Dz66

ny

Dz65

nx

Dz64

nz

Dz63nx

ny

Dz62ny

nx

Dz61

−=∂∂

==∂∂

==∂∂

=

=∂∂

=−=∂∂

==∂∂

=

(6.35)

Elementele matricei Jacobiene sunt:

( )

62nx53

61ny43

51nzDz42

665544332211

JdJ

JdJJdhJ

1JJJJJJ

−=+=

−=−=−=−−=

−======

(6.36)

Matrcea Jacobiană pentru o cuplă conducătoare de translaţie are expresia:

Page 54: Robotica Avansata Curs

54

⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢

−−−

=

665343

555342

444342

33

22

11

translatie

J000JJ0J0J0J00JJJ0000J000000J000000J

J (6.37)

Forţa de echilibrare FeA din cupla cinematică de translaţie D, ce acţionează pe direcţia

axei z şi pune în mişcare elementul „n” în raport cu „n-1”, se obţine din relaţia:

FeD = RDz (6.38)

Analiza cinetostatică se efectuează pentru fiecare cuplă conducătoare în parte ,

pornind de la efectorul final. Torsorul forţelor exterioare (forţa gravitaţională, forţele

tehnologice şi momentul rezultant al forţelor exterioare) ce încarcă elementul „n” şi

cupla cinematică n-1Cn, permit determinarea reacţiunilor dinamice şi a forţei,

respectiv momentului de echilibrare cu ajutorul căreia se poate alege motorul de

antrenare liniar, respectiv rotativ.

Forţa, respectiv momentul de echilibrare astfel determinat se va îngloba în torsorul

forţelor exterioare (reacţiunea şi momentul reactiv ce încarcă elementul „n-1”), ceea

ce permite determinarea reacţiunii şi forţei, respectiv momentului de echilibrare din

cupla conducătoare n-2Cn-1 ş.a.m.d.

Page 55: Robotica Avansata Curs

557. MODELUL DINAMIC AL DISPOZITIVULUI DE GHIDARE AL

ROBOŢILOR

În capitolele precedente am studiat modelul matematic al manipulării într-o celulă de

fabricaţie flexibilă, modelele geometrice ale situării obiectului manipulat, modelul

cinematic şi modelul cinetostatic al dispozitivului de ghidare al roboţilor, dar nu am

considerat niciodată forţa ca o cauză a mişcării. În acest capitol vom considera

ecuaţiile de mişcare ale roboţilor pe baza forţei, respectiv momentului de acţionare al

motorului. Dinamica roboţilor va fi studiată pe structuri de roboţi având la bază

lanţuri cinematice deschise. Dinamica roboţilor comportă două probleme:

⇒ prima problemă o reprezintă cazul când se impune un punct pe traiectorie,

q,q,q &&& şi dorim să aflăm momentul motor Mm, cazul conducerea robotului;

⇒ a doua problemă este cum să calculăm mişcarea mecanismului la aplicarea

unor forţe, respectiv momente motoare în cuple conducătoare. Deci se

cunoaşte momentul de acţionare Mm şi se calculează q,q,q &&& , cazul simularea

mişcării robotului.

7.1 Modelul Lagrange – Euler

Modelul dinamic al unui robot utilizând metoda Lagrange – Euler este simplă şi

sistematică. Ecuaţiile mişcării ce se obţin sunt de ordinul doi, ecuaţii diferenţiale

neliniare specifice mişcărilor cuplate. De precizat că pentru a simplifica aceste ecuaţii

s-au neglijat dinamica conducerii şi forţele de frecare din angrenaje.

Formalismul lagrangean se bazează pe funcţia lui Lagrange definită prin:

L = Ec – Ep (7.1)

Page 56: Robotica Avansata Curs

56Ecuaţiile dinamice clasice exprimate în termenii funcţiei lagrangene sunt:

n,1iQqL

qL

dtd

iii

==∂∂

−⎟⎟⎠

⎞⎜⎜⎝

⎛∂∂&

(7.2)

unde n este numărul de grade de mobillitate al robotului, qi – coordonata generalizată,

q& – viteza generalizată, iar Qi – forţa generalizată.

Ecuaţiile dinamice pentru un robot se obţin in 5 paşi:

a. se calculează viteza liniară a tuturor punctelor materiale ale elementelor;

b. se calculează energia cinetică Eci = 0,5 m . v2;

c. se calculează energia potenţială Ep = m g h;

d. se formează funcţia lui Lagrange L = Ec – Ep;

e. se determină ecuaţia dinamică n,1iqL

qL

dtdQ

iii =

∂∂

−⎟⎟⎠

⎞⎜⎜⎝

⎛∂∂

=&

a. Calculul vitezei unui punct al robotului

Un punct material aparţinând elementului „i” este definit în raport cu sistemul de

referinţă propriu prin vectorul de poziţie:

{ }Tiii

i 1zyxr =r (7.3)

iar în raport cu sistemul de referinţă fix prin vectorul de poziţie:

{ }T000

0 1zyxr =r (7.4)

Relaţia de legătură dintre cei doi vectori de poziţie:

rTr ii

00 rr⋅= ( ) i,1j)t(qqqTT jjji

0i

0 === (7.5)

iar viteza: ( ) ttanconsr0rt

rqqTr iii

i

1jj

j

i0

0 ==∂∂

⋅⎟⎟⎠

⎞⎜⎜⎝

∂∂

= ∑=

r&rr&&r (7.6)

Page 57: Robotica Avansata Curs

57Pătratul vitezei se exprimă prin produsul scalar:

( ) rrr 0020 &r&r&r ⋅= (7.7)

sau prin urma matricei produs (la o matrice pătratică suma pătratelor elementelor de

pe diagonala principală):

( ) ( )T0020 rrTRr &r&r&r ⋅= (7.8)

care conduce la:

( )⎥⎥⎦

⎢⎢⎣

⎡⋅⎟⎟

⎞⎜⎜⎝

∂∂

⋅⋅⋅∂∂

=

=⎥⎥⎦

⎢⎢⎣

⎟⎟⎠

⎞⎜⎜⎝

⎛⋅⋅

∂∂

⋅⋅∂∂

=⎟⎠⎞

⎜⎝⎛

∑∑

∑ ∑

= =

= =

kj

T

k

i0

Tiii

1j

i

1k j

i0

i

1j

Ti

1k

ik

k

i0

ij

j

i02

qqqTrr

qTTR

rqqTrq

qTTR

dtrd

&&rr

r&

r&

r

(7.9)

b. Calculul energiei cinetice

Energia cinetică a unei particule de masă „dm” localizătă în elementul „i” prin

vectorul de poziţie ri r este:

( )⎥⎥⎦

⎢⎢⎣

⎡⋅⎟⎟

⎞⎜⎜⎝

∂∂

⋅⋅⋅∂∂

=⋅⎟⎠⎞

⎜⎝⎛= ∑∑

= =kj

T

k

i0

Tiii

1j

i

1k j

i02

ci qqqTdmrr

qTTRdm

dtrd

21dE &&

rrr

(7.10)

Energia cinetică a elementului „i” este suma energiilor cinetice ale tuturor punctelor

materiale ale elementului „i”:

( )⎥⎥⎦

⎢⎢⎣

⎡⋅⎟⎟

⎞⎜⎜⎝

∂∂

⋅⋅⋅∂∂

== ∫∑∑∫= =

kj

T

k

i0

Mi

Tiii

1j

i

1k j

i0

Micic qq

qTdmrr

qTTR

21dEE &&

rr (7.11)

Matricea de inerţie:

( )∫ ⋅⋅=Mi

Tiii dmrrJ rr (7.12)

Page 58: Robotica Avansata Curs

58sau:

{ }

⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢

=⋅

⎪⎪⎭

⎪⎪⎬

⎪⎪⎩

⎪⎪⎨

∫∫∫∫

∫∫∫∫

∫∫∫∫

∫∫∫∫

MiMii

Mii

Mii

Mii

Mi

2i

Miii

Miii

Mii

Miii

Mi

2i

Miii

Mii

Miii

Miii

Mi

2i

Miiii

i

i

i

dmdmzdmydmx

dmzdmzdmyzdmxz

dmydmzydmydmxy

dmxdmzxdmyxdmx

dm1zyx

1zyx

(7.13)

Ţinând cont de momentele de inerţie axiale şi a centrifugale, în raport cu sistemul de

referinţă propriu elementului „i”:

( )( )( ) ∫∫

∫∫

∫∫

=+=

=+=

=+=

Miiiyz

Mi

2i

2izz

Miiixz

Mi

2i

2iyy

Miiixy

Mi

2i

2ixx

dmzyIidmyxIi

dmzxIidmxzIi

dmyxIidmzyIi

(7.14)

şi a momentelor statice mecanice:

iiMi

iiiMi

iiiMi

i zMdmzyMdmyxMdmx === ∫∫∫ (7.15)

unde iii z,y,x sunt coordonatele centrului de greutate al elementului „i”, în care este

concentrată masa Mi.

Întrucât:

( ) ( ) ( )

( )

( ) ( ) ( )

( )zzyyxx

Mi

2i

2i

Mi

2i

2i

Mi

2i

2i

Mi

2i

zzyyxx

Mi

2i

2i

Mi

2i

2i

Mi

2i

2i

Mi

2i

IiIiIi21

dmzy21dmyx

21dmxz

21dmy

IiIiIi21

dmyx21dmxz

21dmzy

21dmx

+−=

=+++++−=

++−=

=+++++−=

∫∫∫∫

∫∫∫∫

(7.16 a)

Page 59: Robotica Avansata Curs

59

( ) ( ) ( )

( )zzyyxx

Mi

2i

2i

Mi

2i

2i

Mi

2i

2i

Mi

2i

IiIiIi21

dmxz21dmzy

21dmyx

21dmz

−+=

=+++++−= ∫∫∫∫ (7.16 b)

rezultă:

⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢

−+

+−

++−

=

iiiiiii

iizzyyxx

zyzx

iiyzzzyyxx

yx

iixzxyzzyyxx

i

MzMyMxM

zM2

IiIiIiIiIi

yMIi2

IiIiIiIi

xMIiIi2

IiIiIi

J (7.17)

ceea ce permite reformularea relaţiei:

∑∑= = ⎥

⎥⎦

⎢⎢⎣

⎡⋅⎟⎟

⎞⎜⎜⎝

∂∂

⋅⋅∂∂

=i

1j

i

1kkj

T

k

i0

ij

i0

ic qqqTJ

qTTR

21E && (7.18)

Energia cinetică totală ale elementelor componente ale dispozitivului de ghidare:

∑∑∑∑= = ==

⋅⋅⎥⎥

⎢⎢

⎟⎟⎠

⎞⎜⎜⎝

∂∂

⋅⋅∂∂

==6

1ikj

i

1j

i

1k

T

k

i0

ij

i06

1iicc qq

qTJ

qTTR

21EE && (7.19)

c. Calculul energiei potenţiale

Energia potenţială a elementului „i” de masă Mi, admiţând că nivelul de potenţial

zero este planul xiOiyi al sistemului de referinţă propriu elementului „i”, este

exprimată de relaţia:

( )cii

i0T

iip rTgME rr⋅⋅−= (7.20)

unde vectorul acceleraţie gravitaţională este: { }Ti

i 1g00g =r (7.21)

Page 60: Robotica Avansata Curs

60iar vectorul de poziţie al centrului de greutate Ci al elementului „i”, în care este

concentrată masa Mi a acestui element este: { }Tiiicii 1zyxr =r (7.22)

Energia potenţială totală a elementelor dispozitivului de ghidare este:

( )∑∑==

⋅⋅−==6

1ici

ii

0Ti

6

1iipp rTgMEE rr (7.23)

d. Funcţia Lagrange

L = Ec – Ep (7.1)

( )∑∑∑∑== = =

⋅⋅+⋅⋅⎥⎥⎦

⎢⎢⎣

⎟⎟⎠

⎞⎜⎜⎝

∂∂

⋅⋅∂∂

=6

1ici

ii

0Ti

6

1ikj

i

1j

i

1k

T

k

i0

ij

i0

rTgMqqqTJ

qTTR

21L rr

&& (7.24)

f. Ecuaţiile dinamice

k,j,imaxpQqL

qL

dtd

ipp

==∂∂

−⎟⎟⎠

⎞⎜⎜⎝

∂∂&

(7.25)

k

6

pi

i

1k

T

k

i0

ip

i0

pq

qTJ

qTTR

qL

&&

⋅⎥⎥⎦

⎢⎢⎣

⎟⎟⎠

⎞⎜⎜⎝

∂∂

⋅⋅∂∂

=∂∂ ∑∑

= = (7.26)

∑∑∑

∑∑∑

∑∑

= = =

= = =

= =

⋅⋅⎥⎥⎦

⎢⎢⎣

⎟⎟⎠

⎞⎜⎜⎝

∂∂∂

⋅⋅∂∂

+

+⋅⋅⎥⎥

⎢⎢

⎟⎟⎠

⎞⎜⎜⎝

∂∂

⋅⋅∂∂

∂+

+⋅⎥⎥⎦

⎢⎢⎣

⎟⎟⎠

⎞⎜⎜⎝

∂∂

⋅⋅∂∂

=⎟⎟⎠

⎞⎜⎜⎝

∂∂

6

pimk

i

1k

i

1m

T

mk

i02

ip

i0

6

pimk

i

1k

i

1m

T

k

i0

imp

i02

k

6

pi

i

1k

T

k

i0

ip

i0

p

qqqqTJ

qTTR

qqqTJ

qqTTR

qqTJ

qTTR

qL

dtd

&&

&&

&&&

(7.27)

∑ ∑∑∑= == =

⎟⎟⎠

⎞⎜⎜⎝

∂∂

⋅⋅+⋅⋅⎥⎥⎦

⎢⎢⎣

⎟⎟⎠

⎞⎜⎜⎝

∂∂

⋅⋅∂∂

∂=

∂∂ 6

pi

6

pici

i

p

i0

Tipj

i

1j

i

1k

T

k

i0

ipj

i02

pr

qTgMqq

qTJ

qqTTR

qL rr

&& (7.28)

Page 61: Robotica Avansata Curs

61Având în vedere că ecuaţiile dinamice sunt independente de ordinea de sumare se

evidenţiază următoarea formă:

6,1iQDqqDqD iikj

i

1j

i

1kijki

i

1jij ==+⋅⋅+⋅ ∑∑∑

= ==&&&& (7.29)

unde iq&&r - acceleraţia generalizată { }Tn21i q...qqq &&&&&&&&r =

jq&r - viteza generalizată { }Tn1n3121kj qq...qqqqqq &&&&&&&r&r

−=

{ }T2n

22

21

2k q...qqq &&&&r = (7.30)

D ij - este termenul inerţial:

∑= ⎥

⎢⎢

⎟⎟⎠

⎞⎜⎜⎝

∂∂

⋅⋅∂∂

=6

j,imaxp

T

i

p0

pj

p0

ij qT

JqT

TRD (7.31)

pentru: i = j D ii este termenul inerţial al cuplei conducătoare „i”;

pentru: ji ≠ D ij este cuplarea efectului inerţial între cuplele conducătoare „i” şi „j”;

Termenul cinetic: ∑= ⎥

⎢⎢

⎟⎟⎠

⎞⎜⎜⎝

∂∂

⋅⋅∂∂

∂=

6

k,j,imaxp

T

i

p0

pkj

p02

ijk qT

JqqT

TRD (7.32)

pentru: j = k D ijj este termenul forţei centrifugale al cuplei conducătoare „i”,

dependent de acceleraţia cuplei „j”;

pentru kj≠ D ijk este termenul forţei Corriolis al cuplei conducătoare „i”, dependent

de acceleraţia cuplelor „j” şi „k”;

Termenul gravitaţional D i ce încarcă cupla conducătoare „i”:

6,1irqT

gMD6

1pci

p

i

p0

Tii =⎟

⎟⎠

⎞⎜⎜⎝

∂∂

⋅⋅−= ∑=

rr (7.33)

Page 62: Robotica Avansata Curs

62Matricele D depind de dimensiunea elementelor, de masele lor şi de masa

manipulată, de poziţie centrelor de greutate, momentul de inerţie masic şi de poziţia

momentană. Interdependenţa dintre parametri cinematici generalizaţi duce la o

cuplare a mişcărilor. Termenii inerţiali şi gravitaţionali sunt importanţi în conducerea

robotului, deoarece afectează stabilitatea şi precizia de situare. Termenii centrifugal şi

Corriolis sunt importanţi dacă mişcarea are loc cu o viteză mare.

7.2 Modelul Newton – Euler

Se va considera fiecare element al dispozitivlui de ghidare ca un solid rigid. Dacă

cunoaştem centrul de masă şi tensorul de inerţie al elementului, atunci distribuţia

masei este complet caracterizată. Pentru a mişca elementul se impune accelerarea lui.

Forţa de inerţie necesară este în funcţie de masa şi acceleraţia dorită a elementului.

Ecuaţia lui Newton pentru mişcarea de translaţie şi ecuaţia lui Euler pentru mişcarea

de rotaţie fac legătura dintre forţa de inerţie, masă şi acceleraţie.

Fig. 7.1 Acţiunea unei forţe în centrul de masă

În Fig. 7.1 un element avînd centrul de masă Ci va cauza accelerarea conform

ecuaţiei lui Newton: Ciii VMF &rr⋅= (7.34)

unde Mi este masa elementului „i”.

Ci

i

CiV&rCiV

r

iFr

Page 63: Robotica Avansata Curs

63

Fig. 7.2 Acţiunea unui moment în centrul de masă

În Fig. 7.2 se arată un element rotindu-se cu viteza unghiulară iωr şi acceleraţia

iω&r . În această situaţie, momentul Ni cu care va fii acţionat elementul, va cauza

această mişcare conform ecuaţiei lui Euler:

iiCi

iiiCi

i IIN ω⋅×ω+ω⋅=rr&r

r (7.35)

unde CiIi – tensorul inerţial, relativ la un sistem de axe cu centrul în Ci; Fi – rezultanta forţelor exterioare ce acţionează în centrul de masă; Ni – momentul rezultant al forţelor exterioare în raport cu centrul de masă Ci;

7.2.1 Metoda iterativă Newton – Euler

Stabilirea ecuaţiilor dinamice prin metoda iterativă, care pune în evidenţă

variabilele generalizate, forţele generalizate motoare şi forţele de legătură dintre

elementele componente ale robotului.

a) Metoda iteraţiei de la baza robotului spre efectorul final. Pentru fiecare element

se determină viteza şi acceleraţia liniare şi unghiulare, respectiv forţele şi

momentele forţelor exterioare conform ecuaţiilor dinamice Newton – Euler.

b) Metoda iteraţiei de la efectorul final spre baza robotului. Pentru fiecare

element se determină forţele şi momentele forţelor de legătură dintre

Ci

i

Ciω&r

iNr

Ciωr

Page 64: Robotica Avansata Curs

64elementele „i-1 – i” şi „i – i+1”, respectiv forţele generalizate motoare din

cuplele cinematice conducătoare ale robotului.

a) Metoda iteraţiei de la baza robotului spre efectorul final (i = 1…n)

În ordine pentru calculul forţei de inerţie ce acţionează asupra elementelor, se

calculează viteza de rotaţie, acceleraţia liniară şi unghiulară a centrului de masă al

fiecărui element. Iteraţia porneşte cu elementul 1 şi continuă element cu element spre

efectorul final „n”.

Propagarea vitezei unghiulare de la element la element:

n,1itranslatieidaca0rotatieidaca1

undekqR iii

ii1i1i

1ii

ii =

⎩⎨⎧

==

=ΔΔ+ω⋅=ω −−

− &rr (7.36)

Viteza liniară a originii fiecărui sistem al elementului „i”:

[ ]⎩⎨⎧

==

=ΔΔ+×ω+= −−

−−

−− translatieidaca0

rotatieidaca1undekqrVRV ii

iiii

1i1i

1i1i

1i1i

ii

i &rrrr

(7.37)

Acceleraţia unghiulare de la un element la altul:

[ ]iiii

ii1i

1i1i

ii1i

1i1i

ii

i kqkqRR &&&&r&r&r +×ω⋅Δ+ω⋅=ω −−

−−−

− (7.38)

Acceleraţia liniară a originii fiecărui sistem al elementului „i”:

( )[ ] [ ]iiii

iii

iii

1i1i

1i1i

1ii

1i1i

1i1i

1i1i

ii

i kqkq2rrVRV &&&&rrrrr&r&r&r +×ωΔ+×ω×ω+×ω+= −−

−−

−−−

−−

−− (7.39)

Acceleraţia centrului de masă:

( )Cii

ii

ii

Cii

ii

ii

Cii rrVV rrrr&r&r&r ×ω×ω+×ω+= (7.40)

De notat că pentru elementul 0 se obţine 000

00 =ω=ω &rr . Având calculate acceleraţiile

liniare şi unghiulare ale centrului de masă al fiecărui element se aplică ecuaţiile lui

Page 65: Robotica Avansata Curs

65Newton – Euler pentru a calcula forţa de inerţie şi momentul necesar acţionării

centrului de masă al fiecărui element.

Cii

iii VMF &rr

⋅= (7.41)

ii

iCi

ii

Cii

iCi

ii IIN ω⋅×ω+ω⋅= &rr&rr

(7.42)

b) Metoda iteraţiei de la efectorul final spre baza robotului (i = n…1)

Având calculate forţa şi momentul ce acţionează asupra fiecărui element, ne rămâne

să calculăm forţa / momentul ce rezultă în fiecare articulaţie. Acestea se obţin prin

scrierea unei ecuaţii de echilibru a fiecărui element. Asupra fiecărui element

acţionează forţe şi momente exterioare, care sunt echilibrate de forţele şi momentele

de legătură ifrşi inr dintre elementele „i – 1, i” respectiv forţele şi momentele de

legătură 1if +

rşi 1in +r dintre elementele „i, i + 1”

Fig. 7.3 Starea de echilibru al elementului „i”

ifr

– forţa exercitată de elementul ”i” asupra elementului „i-1”;

inr – momentul exercitat de elementul ”i” asupra elementului „i-1”.

Ci (Mi, iIi)

i

ii Nr

zi

zi+1

yi

xi

i+1

i-1

ii Fr

Cii rr

1ii r +r

ii fr

1i1i f ++r

ii nr

1i1i n ++ r

yi+1

xi+1

Oi

Oi+1

Page 66: Robotica Avansata Curs

66Sumând forţele ce acţionează asupra elementului ”i” scriem de fapt ecuaţia de

echilibru a elementului ”i”:

1i1i

1ii

ii

1ii

ii

ii fRfffF +

+++ ⋅−=−=

rrrrr (7.43)

Sumând momentele ce acţionează în raport cu centrul de masă se obţine ecuaţia de

echilibru a momentelor:

( )

( )1i

1i1i

i1i

ii

iCi

i1i

1i1i

ii

i

1ii

1ii

1ii

ii

Cii

1ii

ii

1ii

Cii

1ii

1ii

ii

Cii

1ii

ii

1ii

Cii

1ii

ii

Cii

1ii

ii

ii

fRrFrnRn

frffrnn

frfrfrnn

frrfrnnN

++

++++

+

++++

++++

+++

⋅×−×+⋅−=

=×−−×−−=

=×+×−×−−=

=×−−×−−=

rrrrrr

rrrrrrr

rrrrrrrr

rrrrrrrr

(7.44)

În final se pot rearanja relaţiile de echilibru ale forţei şi momentelor astfel ca ele să

devină relaţii iterative, de la elementul „n la 1”.

1i1i

1ii

1ii

ii

Cii

1i1i

1ii

ii

ii

1i1i

1ii

ii

ii

fRrFrnRNn

fRFf

++

++++

+

++

+

⋅×+×+⋅+=

⋅+=rrrrrrr

rrr

(7.45)

Forţa generalizată motoare iQm din cupla cinematică conducătoare este:

( ) fi

iiT

ii

iiiT

ii

imi Qkf1knQ

rrrrrr+⋅⋅Δ−+⋅⋅Δ= (7.46)

unde pentru: f

ii

iTi

im

ii

fi

iiT

ii

mi

i

QkfQtranslatieidaca0

QknQrotatieidaca1rrrr

rrrr

+⋅===Δ

+⋅===Δ (7.47)

fi Qr

- este forţa generalizată datorită frecărilor vâscoase, având expresia:

fci

iifi QqbQ

r&

r⋅⋅= (7.48)

bi - coeficient de frecare vâscoasă;

fci Qr

- este forţa generalizată datorită frecărilor uscate (coulombiene), având

expresia:

Page 67: Robotica Avansata Curs

67

( ) )q(signfkc1)q(signfk2dcQ ii

ii

iiiii

ii

iiiifc

i &rr

&rrr

⋅×⋅⋅Δ−+⋅×⋅⋅⋅Δ= (7.49)

unde pentru: )q(signfkcQtranslatieidaca0

)q(signfk2dcQrotatieidaca1

ii

ii

ifci

i

iii

iii

ifci

i

&rrr

&rrr

⋅×⋅===Δ

⋅×⋅⋅===Δ (7.50)

ci - coeficient de frecare uscată; di – diametrul fusului din cupla de rotaţie.

7.3 Modelul Apple

Ecuaţiile lui Apple permit exprimarea dinamicii sistemelor mecanice. Ecuaţiile lui

Apple au fost introduse pentru a descrie dinamica sistemelor non - holonomice. In

continuare se tratează utilizarea ecuaţiilor lui Apple pentru sisteme de rigide cuplate.

Se consideră un sistem de N particule notate cu l = 1, 2, …, N. Fie ca particula l să

aibă masa ml şi vectorul de poziţie lrr . Atunci poziţia sistemul este definită prin

vectorii: N21 r,,r,r rL

rr . Fiecare vector de poziţie se poate proiecta într-un sistem de

referinţă cartezian având proiecţiile: x1, x2, x3,…..x3N-2, x3N-1, x3N.

Deci poziţie sistemului de particule (solidul rigid) este definită printr-un vector de

dimensiunea 3N T3N321 ) x.,, x, x,(x x ………=

r .

Să luăm în considerare constrângerile impuse sistemului:

f(x, t) = 0 sau f(x) = 0 (7.51)

numite constrângeri geometrice sau constrângeri holonomice. Dacă un sistem este în

mişcare şi este supus numai la astfel de constrângeri atunci vorbim de sisteme holonomice.

Dacă constrângerile au o formă neintegrabilă:

0dx)x(Asau0dtAdx)t,x(AN3

1

N3

1=⋅=⋅+⋅ ν

=ννν

=νν ∑∑ (7.52)

Page 68: Robotica Avansata Curs

68atunci acestea se numesc constrângeri non – holonomice. Dacă ele sunt impuse unui

sistem atunci vorbim de sisteme non – holonomice.

Constrângerile la care timpul nu este exprimat în mod explicit se cheamă scleronome

sau constrângeri statice. Dacă este explicitată dependenţa de timp, aceste constrângeri

sunt reonome sau constrângeri dinamice. Considerăm un sistem de particule în

mişcare supus la k constrângeri holonomice (geometrice):

k,,2,10)t,x(f L=μ=μ (7.53)

Conform principiului lui d’Alembert, dinamica unui sistem holonomic se poate

descrie prin ecuaţiile diferenţiale:

0RrmF llll =+−r

&&rr

(7.54)

unde: lFr

- rezultanta forţelor active ce acţionează asupra particulelor ml;

lRr

- rezultanta forţelor reactive pe care le impun constrângerile.

Numărul de ecuaţii necesare pentru a rezolva dinamica unui asemenea sistem este

mai mare decât numărul de grade de liberatate ale sistemului. Sistemul are n = 3N + k

grade de libertate, iar aici avem nevoie de 3N+k ecuaţii scalare (3N ecuaţii

diferenţiale de tipul (7.54), pentru că sunt Nrr vectori de poziţie cu câte 3 proiecţii şi k

ecuaţii de legătură de tipul (7.53) aferente fiecărei constrângeri în parte).

Se pune întrebarea care este setul de ecuaţii minimal pentru a descrie dinamica

sistemului. În acest scop pentru a deriva ecuaţiile lui Apple se utilizează metoda

deplasărilor virtuale:

( ) N,1l0rRrmF lllll ==δ⋅+−rr

&&rr

(7.55)

unde lrrδ - este deplasarea virtuală a particulei „l”.

Page 69: Robotica Avansata Curs

69Dacă sumăm pentru toate particulele N,1l = :

( )∑=

=δ⋅+−N

1llllll 0rRrmF rr

&&rr

(7.56)

Vom lua în considerare numai constrângerile geometrice ideale pentru care

0rR ll =δ⋅rr

, adică lRr

este perpendicular pe lrrδ , atunci:

( )∑=

=δ⋅−N

1lllll 0rrmF r&&r

r (7.57)

Această ecuaţie uneşte principiul lui d’Alembert şi principiul deplasărilor virtuale al

lui Lagrange. De aceea de multe ori se cheamă ecuaţiile lui d’Alembert - Lagrange.

Introducem proiecţiile carteziene cu următoarele notaţii:

( ) ( ) ( )( ) ( ) ( )N31N32N3N65423211

N31N32N3N65423211

P,P,PF,,P,P,PF,P,P,PF

x,x,xr,,x,x,xr,x,x,xr

−−

−−

===

===r

Lrr

rL

rr

(7.58)

şi o renumerotare a maselor:

N31N32N3N65423211 m,m,mmm,m,mmm,m,mm −−→→→ L (7.59)

Cu aceste notaţii ecuaţia (7.57) ia forma:

( )∑=ν

νννν =δ⋅−N3

10xxmP && (7.60)

Sistemul de N particule supus la k constrângeri are n = 3N – k grade de libertate, iar

coordonatele x1, x2, …, x3N nu sunt independente datorită constrângerilor. Se definesc

n parametri independenţi q1, q2, …, qn, care determină poziţia sistemului şi care se

cheamă coordonate generalizate. Deci fiecare coordonată carteziană νx se poate

exprima în funcţie de aceste coordonate generalizate şi timp:

( ) ( ) n,1itqqtqqqxx iin21 === νν L (7.61)

Page 70: Robotica Avansata Curs

70Pentru un sistem staţionar timpul t nu este explicit exprimat. Deplasarea virtuală νδx

se exprimă prin relaţia:

ii

n

1iii

n

1ii

i qxaqaq

qxx

∂∂

=δ⋅=δ⋅∂∂

=δ νν

=

νν ∑∑ (7.62)

Înlocuind relaţia (7.62) în relaţia (7.60)

( )

∑∑∑∑

∑ ∑∑∑

∑ ∑

= =ννν

= =νννν

=ν =ν

=ννν

=νν

=ν =νννν

δ⋅⋅=δ⋅⋅⋅

=δ⋅⋅−δ⋅⋅

=δ⋅⋅−

n

1i

N3

1ii

n

1i

N3

1ii

N3

1

n

1iii

N3

1

n

1iii

N3

1

n

1iii

qaPqaxm

0qaxmqaP

0qaxmP

&&

&&

&&

(7.63)

Termenul din membrul drept reprezintă lucrul mecanic virtual al tuturor forţelor

active ce acţionează asupra sistemului. Introducând notaţia:

n,1iaPQN3

1ii =⋅= ∑

=ννν (7.64)

Lucrul mecanic virtual primeşte forma:

i

n

1ii qQdA δ⋅= ∑

= (7.65)

unde Qi este forţa generalizată corespunzătoare coordonatelor generalizate. Pentru a

transforma membrul stâng al ecuaţiei (7.63 – ultima linie), se derivă expresia (7.61):

taq

taq

qaqq

qaqax

txaaqa

txq

qxx

n

1ii

in

1i

n

1i

n

1jj

j

in

1jji

i

iii

i

n

1iii

n

1ii

i

∂∂

+⋅∂∂

+⋅∂∂

+⋅⋅∂∂

+⋅=

∂∂

=+⋅=∂∂

+⋅∂∂

=

ν

=

ν

= = =

ν

=

ννν

ννν

=

ννν

∑∑ ∑ ∑∑

∑∑

&&&&&&&&

&&&

(7.66)

De unde se observă că iaν se poate exprima şi sub forma:

Page 71: Robotica Avansata Curs

71

ii q

xa&&

&&

δδ

= νν (7.67)

Revenind la membrul stâng al relaţiei (7.63 – ultima linie) se obţine:

∑∑∑∑= =ν

ννν

= =νννν δ⋅

δδ⋅⋅=δ⋅⋅⋅

n

1i

N3

1i

i

n

1i

N3

1ii q

qxxmqaxm&&

&&&&&& (7.68)

Introducând funcţia S:

∑=ν

νν ⋅⋅=N3

1

2xm21S && (7.69)

numită energia de accelerare. Este evidentă relaţia:

n,1iqS

qxxm

ii

N3

1

2 =∂∂

=∂∂⋅⋅ ν

=ννν∑

&&&&

&&&& (7.70)

Deci membrul stâng se poate scrie şi sub forma:

0qQqSsauqQq

qS

i

n

1ii

ii

n

1ii

n

1ii

i=δ⎟⎟

⎞⎜⎜⎝

⎛−

∂∂

δ⋅=δ∂∂ ∑∑∑

=== &&&& (7.71)

Deoarece deplasare virtuală iqδ este o variabilă independentă, rezultă drept

consecinţă că forma finală a ecuaţiilor lui Apple:

n,1iQqS

ii

==∂∂&&

(7.72)

Deci problema modelului dinamic se reduce la exprimarea energiei de acceleraţie S

în funcţie de coordonatele generalizate. Aplicând ecuaţiile lui Apple la un robot,

rezultă că este suficient să calculăm energia de acceleraţie a unui element (corp rigid)

şi să sumăm toate elementele lanţului cinematic pentru a determina funcţia S.

Page 72: Robotica Avansata Curs

72De exemplu funcţia S este exprimată în funcţie de coordonatele generalizate qi,

utilizând o expresie de recurenţă a acceleraţiei. Pornind de la expresia care consideră

corpul rigid ca un sistem de particule: ∑=

⎟⎟⎠

⎞⎜⎜⎝

⎛⋅⋅=

N

1l

2

2l

2

l dtrdm

21S

r

(7.73)

Dacă introducem centrul de masă cu vectorul său de poziţie crr , atunci:

'lcl rrr rrr+= (7.74)

unde 'lrr este vectorul de poziţie al particulei ml, raportat la centrul de masă Cl.

∑ ∑

∑∑

= =

==

⎟⎟⎠

⎞⎜⎜⎝

⎛⋅+⋅+⎟⎟

⎞⎜⎜⎝

⎛⋅=

=⎥⎥⎦

⎢⎢⎣

⎡⎟⎟⎠

⎞⎜⎜⎝

⎛+⋅+⎟⎟

⎞⎜⎜⎝

⎛⋅=⎟⎟

⎞⎜⎜⎝

⎛+⋅⋅=

N

1l

N

1l

2

2'l

2

l2'l

2

l2c

22

2c

2

2

2'l

2

2'l

2

2c

22

2c

2N

1ll

N

1l

2

2'l

2

2c

2

l

dtrdm

21

dtrdm

dtrd

dtrdM

21

dtrd

dtrd

dtrd2

dtrdm

21

dtrd

dtrdm

21S

rrrr

rrrrrr

(7.75)

unde ∑=

=N

1llmM este masa totală a corpului rigid.

Expresia ⎟⎠⎞

⎜⎝⎛ ⋅=⋅ ∑∑

==

N

1l'll2

2N

1l2

'l2

l rmdtd

dtrdm rr

(7.76)

conduce la: ∑=

=⋅N

1l'll 0rm r în raport cu centrul de masă Cl. (7.77)

Utilizând relaţiile (7.76) şi (7.77) în relaţia (7.75) obţinem:

∑=

⋅⋅+⋅⋅=N

1l

2'll

2c am

21aM

21S rr (7.78)

unde: car este acceleraţia centrului de masă;

'lar este acceleraţia centrului de masă ml în mişcarea s-a relativă raportată la

centrul de masă.

Page 73: Robotica Avansata Curs

737.4 Modelul dinamic simplificat

Acest model decuplează axele robotului, luând în considerare numai o singură axă şi

neglijând influenţele reciproce ale axelor dispozitivului de ghidare al robotului. Fiecare

axă, fiecare modul, fiecare cuplă cinematică conducătoare se tratează separat ca şi un

sistem mecanic izolat compus dintr-un motor, o transmisie mecanică şi un consumator.

Fig. 7.4 Componenţa unei axe a robotului

Calculele se efectuează pentru cupla cinematică conducătoare „i, i+1”. Se iau în

considerare ca elemente mobile, elementele „i+1 .. n”. Lanţul cinematic „i+1 .. n”,

conţinând şi efectorul final cu obiectul manipulat, se vor considera în poziţia cea mai

dezavantajoasă, când momentul rezistent redus Mred este maxim. Toate reducerile se

fac la arborele motorului electric de acţionare rotativ, sau la tija pistonului motorului

pneumatic / hidraulic liniar.

a) Cupla cinematică conducătoare de rotaţie „i, i+1”.

Se impune ca la arborele motorului electric rotativ să se dezvolte o putere motoare capabilă să

învingă puterea momentelor rezistente (gravitaţionale, de frecare, de inerţie şi tehnologice).

tehnredinredfrredgredred

redmmredmmmredm

MMMMMMM0MMPP

+++=⟩⇒≠ω∀⋅ω⟩⋅ω⟩

(7.79)

unde: gredM - momentul rezistent redus al forţelor gravitaţionale;

frredM - momentul rezistent redus al forţelor de frecare;

inredM - momentul rezistent redus al forţelor de inerţie;

tehnredM - momentul rezistent redus al forţelor tehnologice, care se calculează numai dacă robotul este purtător al unei scule sau al unui cap de forţă.

M TM C

Mm

Mred

Page 74: Robotica Avansata Curs

74Momentul rezistent redus al forţelor gravitaţionale al elementelor lanţului cinematic

„i+1 .. n” se determină din condiţia echilibrării puterilor consumate în sistem de

forţele de greutate:

j

n

1ijjCj

mgred

j

n

1ijjCjmgredgred

cosVG1M

cosVGMP

α⋅⋅ω

=

α⋅⋅=ω⋅=

+=

+= (7.80)

unde: Gj – forţa de greutate a elementului j;

VCj – viteza centrului de greutate al elementului j;

αj – unghiul de presiune.

Fig. 7.5 Schema de calcul al gredM

Momentul rezistent redus al forţelor de frecare se determină din condiţia compensării

puterilor disipate în sistem de forţele de frecare, care acţionează în fiecare cuplă

cinematică a lanţului cinematic „i+1 .. n” (inclusiv în cuplele cinematice ale

transmisiei mecanice şi ale motorului rotativ).

⎟⎟⎠

⎞⎜⎜⎝

⎛ω⋅+⋅

ω=

ω⋅+⋅=ω⋅=

∑∑

∑∑

+=+=

+=+=

n

1mkkkfr

m

1ijjjfr

1mfrred

n

1mkkkfr

m

1ijjjfrmfrredfrred

MVF1M

MVFMP

(7.81)

mj αj

Cj CjVr

CjGr

j

Page 75: Robotica Avansata Curs

75Momentul rezistent redus al forţelor de inerţie al lanţului cinematic „i+1 .. n” se

determină din relaţia:

2m

n

1ijCj

redmredinred

E2JJM

ω=ε⋅=

∑+= (7.82)

unde: Jred - momentul de inerţie masic redus se determină din condiţia ca energia

cinetică înmagazinată de întregul sistem să fie înmagazinată şi de arborele motor

(arborele de reducere).

∑∑∑+=+=+=

ω⋅+⋅=n

1mk

2kCk

m

1ij

2Cjj

n

1ijCj J

21Vm

21E (7.83)

unde: mj – masa elementului j concentrată în centru de greutate Cj aflat în mişcare de

translaţie cu viteza VCj;

JCk – momentul de inerţie masic al elementului k în raport cu axa de rotaţie

(luându-se în calcul şi elementele transmisiei mecanice, inclusiv rotorul

motorului electric) în mişcare de rotaţie cu viteza unghiulară ωk.

⎟⎟⎠

⎞⎜⎜⎝

⎛ω⋅+⋅

ω= ∑∑

+=+=

n

1mk

2kCk

m

1ij

2Cjj2

mred JVm1J (7.84)

Fig. 7.6 Variaţia vitezei unghiulare

tacc tfr

T

ω

t

ωreg

Page 76: Robotica Avansata Curs

76Acceleraţia unghiulară εm a arborelui motor pentru un profil trapezoidal al vitezei

unghiulare ωm a arborelui motor se exprimă prin relaţia:

kTm

=ε (7.85)

unde k < 1 exprimă ponderea tacc, respectiv tfr, în timpul total, respectiv:

kTtt fracc == (7.86)

( ) regk

j

k21T

ω⋅−

Ψ= (7.87)

unde: jΨ – cursa unghiulară a mişcării relative a elementului în mişcare de rotaţie.

b) Cupla cinematică conducătoare de translaţie „i, i+1”.

Se impune la nivelul tijei motorului liniar să se dezvolte o putere motoare capabilă să

învingă puterea forţelor rezistente (gravitaţionale, de frecare, de inerţie şi tehnologice).

tehnredinredfrredgredred

redmmredmmmredm

FFFFFFF0FFPP

+++=⟩⇒≠ω∀⋅ω⟩⋅ω⟩

(7.88)

unde: gredF - forţa rezistentă redusă a forţelor gravitaţionale;

frredF - forţa rezistentă redusă a forţelor de frecare;

inredF - forţa rezistentă redusă a forţelor de inerţie;

tehnredF - forţa rezistentă redusă a forţelor tehnologice, care se calculează

numai dacă robotul este purtător al unui cap de forţă.

Forţa rezistentă redusă a forţelor gravitaţionale al elementelor lanţului cinematic „i+1 .. n” se

determină din condiţia echilibrării puterilor consumate în sistem de forţele de greutate:

j

n

1ijjCj

mgred

j

n

1ijjCjmgredgred

cosVGV1F

cosVGVFP

α⋅⋅=

α⋅⋅=⋅=

+=

+= (7.89)

Page 77: Robotica Avansata Curs

77unde: Gj – forţa de greutate a elementului j;

VCj – viteza centrului de greutate al elementului j;

αj – unghiul de presiune.

Fig. 7.7 Schema de calcul al gredF

Forţa rezistentă redusă a forţelor de frecare se determină din condiţia învingerii

puterilor disipate în sistem de forţele de frecare, care acţionează în fiecare cuplă

cinematică a lanţului cinematic „i+1 .. n” (inclusiv în cuplele cinematice ale

transmisiei mecanice şi ale motorului liniar).

⎟⎟⎠

⎞⎜⎜⎝

⎛ω⋅+⋅=

ω⋅+⋅=⋅=

∑∑

∑∑

+=+=

+=+=

n

1mkkkfr

m

1ijjjfr

1mfrred

n

1mkkkfr

m

1ijjjfrmfrredfrred

MVFV

1F

MVFVFP

(7.90)

Forţa rezistentă redusă a forţelor de inerţie al lanţului cinematic „i+1 .. n” se

determină din relaţia:

2m

n

1ijCj

redmredinred V

E2mamF

∑+==⋅= (7.91)

unde: mred - masa redusă se determină din condiţia ca energia cinetică înmagazinată

de întregul sistem să fie înmagazinată şi de tija motoare (arborele de reducere).

mj αj

Cj CjVr

CjGr

j

Page 78: Robotica Avansata Curs

78

∑∑∑+=+=+=

ω⋅+⋅=n

1mk

2kCk

m

1ij

2Cjj

n

1ijCj J

21Vm

21E (7.92)

unde: mj – masa elementului j concentrată în centru de greutate Cj aflat în mişcare de

translaţie cu viteza VCj;

JCk – momentul de inerţie masic al elementului k în raport cu axa de rotaţie,

(luându-se în calcul şi elementele transmisiei mecanice, inclusiv rotorul

motorului electric) în mişcare de rotaţie cu viteza unghiulară ωk.

⎟⎟⎠

⎞⎜⎜⎝

⎛ω⋅+⋅= ∑∑

+=+=

n

1mk

2kCk

m

1ij

2Cjj2

mred JVm

V1m (7.93)

Fig. 7.8 Variaţia vitezei liniare

Acceleraţia liniară am a tijei motoare pentru un profil trapezoidal al vitezei liniare Vm

a tijei motoare se exprimă prin relaţia:

kTVa m

m = (7.94)

unde k < 1 exprimă ponderea tacc, respectiv tfr, în timpul total, respectiv:

kTtt fracc == (7.95)

( ) regj

j

Vk21h

T⋅−

= (7.96)

unde: h – cursa liniară a mişcării relative a elementului în mişcare de translaţie.

tacc tfr

T

V

t

Vreg

Page 79: Robotica Avansata Curs

79c) Determinare momentului de frânare

Fig. 7.9 Variaţia vitezei unghiulare la frânare

Pentru o cuplă cinematică conducătoare „i, i+1” acţionată de un motor rotativ, se

pune condiţia ca pe durata frânării viteza unghiulară să scadă la zero în momentul t2.

Energia cinetică în momentul începerii frânării, t12 este:

2mredC J

21E ω⋅= (7.97)

sau ∫∫ ϕ=ϕ⋅=2

12

2

12

t

tred

t

tredC dMdME (7.98)

unde: dtdMMMMM mredfrtehnredfrredgredred ω=ϕ+++= (7.99)

( ) Tk21tt

21dtd m122m

t

tm

t

t

2

12

2

12

⋅⋅ω=−ω=ω=ϕ ∫∫ (7.100)

TkE2MTkM

21E

m

CredmredC ⋅⋅ω

=⋅⋅ω⋅= (7.101)

tehnredfrredgredredredfr MMMMM −−−= (7.102)

tehnredfrredgredm

Credfr MMM

TkE2M −−−⋅⋅ω

= (7.103)

Pentru alegerea frânei se calculează momentul sau forţa de frânare care trebuie

dezvoltată. Pentru o cuplă cinematică conducătoare acţionată de un motor rotativ:

fr

mredfrfr

fr

mredfrfr V

MFMM ω=

ωω

= (7.104)

t12 t2

ω

t

ωm

Page 80: Robotica Avansata Curs

80d) Determinare forţei de frânare

Fig. 7.10 Variaţia vitezei liniare la frânare

Pentru o cuplă cinematică conducătoare „i, i+1” acţionată de un motor liniar, se

impune aceeaşi condiţie ca pe durata frânării viteza motorului să scadă la zero în

momentul t2. Energia cinetică în momentul începerii frânării, t12 este:

2mredC Vm

21E ⋅= (7.105)

sau ∫∫ =⋅=2

12

2

12

t

tred

t

tredC dsFdsFE (7.106)

unde: dtVdsFFFFF mredfrtehnredfrredgredred =+++= (7.107)

( ) TkV21ttV

21dtVds m122

t

tmm

t

t

2

12

2

12

⋅⋅=−== ∫∫ (7.108)

TkVE2FTkVF

21E

m

CredmredC ⋅⋅

=⋅⋅⋅= (7.109)

tehnredfrredgredredredfr FFFFF −−−= (7.110)

tehnredfrredgredm

Credfr FFF

TkVE2F −−−⋅⋅

= (7.111)

Pentru alegerea frânei se calculează momentul sau forţa de frânare care trebuie

dezvoltată. Pentru o cuplă cinematică conducătoare acţionată de un motor liniar:

fr

mredfrfr

fr

mredfrfr V

VFFVFM =ω

= (7.112)

t12 t2

V

t

Vm

Page 81: Robotica Avansata Curs

828. COMANDA ŞI CONTROLUL ROBOŢILOR

8.1. Sarcina şi funcţiile sistemului de comandă

8.1.1. Structura robotului

Robotul se consideră ca un sistem de rangul R, compus din subsisteme de rang R-1.

Structura unui robot este prezentată în figura 8.1.

Fig. 8.1 Schema structurală a robotului

Sistemul mecanic este compus din mecanisme, care asigură mişcarea efectorului

final în situările sale pe traiectoria programată. Platforma mobilă se regăseşte numai

în structura roboţilor mobili. Sistemul mecanic preia forţele generalizate ce

acţionează din mediu asupra robotului.

Sistemul de acţionare impune mişcarea relativă a elementelor mecanismelor

sistemului mecanic. Sistemul de acţionare are ca şi componente câte un element de

acţionare pentru fiecare cuplă cinematică conducătoare a mecanismelor sistemului

mecanic.

M

E

D I

U

SISTEM MECANIC

EFECTOR FINAL

PLATFORMĂ MOBILĂ

SISTEM DE ACŢIONARE

SISTEM DE COMANDĂ

SENZORI

TRADUCTOARE

APARATE DE MASURĂ

SISTEM DE CONDUCERE

SISTEM DE ENERGIZARE A FLUIDULUI

Page 82: Robotica Avansata Curs

83Sistemul de energizare a fluidului se utilizează la roboţi în cazul sistemelor de

acţionare hidraulice, respectiv pneumatice cu compresor propriu, deci a celora care

folosesc ca purtător de energie un fluid.

Sistemul de comandă prelucrează informaţiile despre starea mediului (externo -

percepţie) şi despre starea interioară a robotului (proprio - percepţie) şi emite , în

conformitate cu aceste informaţii şi propriul program, comenzi către sistemul de

acţionare. Senzorii şi traductoarele sunt elemente de inteligenţă artificială ce culeg

informaţii (senzori culeg informaţii care nu sunt legate de deplasări – provenite din

mediu –, iar traductoarele culeg informaţii legate de deplasări ale subsistemelor

robotului. Sistemul de conducere al robotului, reuneşte sistemul de comandă, sistemul

de acţionare şi elementele de inteligentă artificială.

Sarcina principală a sistemului de comandă este de a transpune programele de

aplicaţie în mişcări relative al elementelor cuplelor cinematice conducătoare ale

dispozitivului de ghidare.

Comanda mişcării este prima sarcina a sistemului de comandă şi constă în:

a) coordonarea şi supravegherea (controlul) mişcării efectorului final prin

situările programate, sau a punctului caracteristic M pe traiectoriile

programate;

b) sincronizarea desfăşurării mişcărilor robotului ce evenimentele care au loc

la periferia robotului prin prelucrarea semnalelor externe preluate din

procesul de producţie (maşini unelte, dispozitive de lucru etc.)

Page 83: Robotica Avansata Curs

84c) prelucrarea datelor de la senzorii externi (sisteme de prelucrarea

imaginilor) şi transpunerea rezultatelor prelucrate în reacţiile dorite.

Programele de aplicaţie arată într-o formă interpretabilă sarcinile pe care le are de

executat robotul. Aceste programe au fost concepute „on-line” de către un

programator, care de cele mai multe ori a folosit dispozitivul de ghidare şi sistemul de

comandă al robotului, în regim de instalaţie de teleoperare. De aceea se impune a

doua sarcină a sistemului de comandă şi anume programarea robotului. Prin

programarea robotului se realizează în primul rând dialogul cu operatorul uman,

căruia i se pun la dispoziţie comenzile şi funcţiile pentru conceperea, corectarea şi

testarea programului de mişcare, precum şi dispozitivele de: introducere, scoatere şi

arhivare a programului.

Sarcinile sistemului de comandă sunt realizate de cele două componente ale sale:

a) subsistemul hardware bazat pe microprocesor;

b) subsistemul software.

În cazul sistemelor de comandă moderne are loc o conlucrare a celor două

componente permiţând:

a) comanda manuală a robotului;

b) comanda automată a robotului;

c) comanda adaptivă a robotului;

d) iniţializarea robotului (aducerea lui în poziţia de referinţă);

e) programarea robotului, testarea şi corectarea programelor.

Page 84: Robotica Avansata Curs

858.2. Comanda mişcării robotului

Principala sarcină a unui robot este aceea de execuţie automată a mişcărilor

programate. Comanda mişcării robotului se realizează pe nivele ierarhice.

Fig. 8.2 Comanda mişcării robotului

Pe nivelul înalt se planifică mişcarea sistemului mecanic pe baza programului de

aplicaţie şi în acord cu informaţia senzorială şi a traductoarelor. Pentru obţinerea

informaţiilor din mediul de operare al robotului (externo – percepţie) se folosesc

senzori: tactili, de forţă /moment, vizuali (camere video – CCD), auditivi

(microfoane), de temperatură etc. Prin senzor se înţelege un dispozitiv care preia o

anumită informaţie prin intermediul unui receptor, îl transformă într-un semnal , de

PROGRAM

Planificarea mişcării

Generarea traiectoriei

Execuţia mişcării

Nivel de bază

Interfaţa pentru senzori şi traductoare

Traductoare Poziţie Viteză

Senzor de temperatură

Senzor audio

Senzor video

Senzor tactil

Senzor de forţă / momentNivel mediu

Nivel înalt

1 2 6

Page 85: Robotica Avansata Curs

86obicei electric, prin intermediul unui convertor şi îl transmite mai departe sistemului

de comandă, eventual amplificat şi prelucrat.

Pentru obţinerea informaţiilor despre stare internă a robotului (proprio – percepţie) se

folosesc traductoare care măsoară poziţia şi viteza generalizată, relativă a elementelor

cuplelor cinematice conducătoare.

La nivelul mediu are loc generarea traiectoriei, adică se determină punctele de

precizie prin care trece traiectoria punctului caracteristic între punctul START şi

punctul ŢINTĂ. Se realizează de asemenea o coordonare a mişcării axelor robotului

(viteze şi acceleraţii generalizată) astfel că aceste puncte să poată fi atinse.

La nivelul de bază, execuţia mişcării, se controlează mişcarea relativă a elementelor

fiecărei cuple cinematice conducătoare. Axele energetice aferente acestuia sunt

controlate digital.

8.2.1. Transformări de coordonate

Descrierea unei mişcări complexe se poate realiza direct în coordonate generalizate

(coordonate specifice robotului – joint coordinate), adică în variabilele cuplelor

Fig. 8.3 Sisteme de coordonate a) coordonate generalizate (ROBOT); b) coordonate operaţionale(carteziene ataşate bazei robotului); c) coordonate operaţionale (carteziene ataşate efectorului final)

a)

q1

q2 q

4

q3 q

5

q6

T

B

Z

X YO

b)

C

A

T

z

x y

c

c)

b

aT

Page 86: Robotica Avansata Curs

87cinematice conducătoare. Acest lucru este însă dificil de sesizat de către operatorul

uman. De aceea situarea efectorului final în sistemul de coordonate operaţionale

ataşat bazei robotului sau a efectorului final este mai uşor de sesizat de către

operatorul uman, deoarece ambele sisteme sunt carteziene. În sistemul de coordonate

ataşat efectorului final, mişcările sunt relative deoarece originea T – tool point a

sistemului de coordonate se modifică. Acest sistem este preferat în cazul operaţiilor

de montaj. Sistemele de comandă avansate dau posibilitatea utilizatorului, ca în faza

de programare să poată alege între coordonatele generalizate şi cele operaţionale

(având originea la baza robotului sau la efectorul final). Acest lucru simplifică

conducerea manuală a robotului, operatorul putând utiliza taste de direcţionare sau

joystick – ul. Pentru a exprima aceleaşi mişcări în diferite sisteme de coordonate sunt

necesare transformări de coordonate.

Transformarea directă de coordonate

Când punctele unei traiectorii sunt deja specificate în sistemul de coordonate

generalizat (de exp. la programarea prin instruire), atunci se poate determina în mod

univoc situarea efectorului final al robotului în sistemul de coordonate generalizat

ataşat bazei robotului. Aceasta se realizează prin matricea de transformare omogenă.

( ) ⎥⎦

⎤⎢⎣

⎡===⇒= ∏

=

1000paon

TTTTqqqq EFR

6

1ii

1i6

0EF

RT621

rrrr

Lr (8.1)

Transformarea inversă de coordonate

Asigură trecerea de la sistemul de coordonate operaţional cu originea la baza

robotului, la cel de coordonate generalizate.

Page 87: Robotica Avansata Curs

88

( )

6565

EFR1

101

211

321

431

54

465

54

EFR1

101

211

321

43

365

54

43

EFR1

101

211

32

265

43

32

EFR1

101

21

165

32

21

EFR1

10

65

21

10

EFR

60

EFRT

621EFR

q,qTTTTTTT

qTTTTTTT

qTTTTTTT

qTTTTTT

qTTTTT

TTTT

TTqqqqT

⇒=⋅⋅⋅⋅⋅

⇒⋅=⋅⋅⋅⋅

⇒⋅⋅=⋅⋅⋅

⇒⋅⋅⋅

⇒⋅=⋅

⋅=

==⇒

−−−−−

−−−−

−−−

−−

L

L

L

Lr

(8.2)

8.2.2. Comanda automată a roboţilor

Comanda automată trebuie să suplinească operatorul uman în prescrierea activităţii

robotului. În acest scop se necesită: preluarea informaţiilor privind sarcinile de executat

de către robot de la operatorul uman sub formă de program, memorarea acestor sarcini,

definirea mişcărilor pe care trebuie să le execute efectorul final, definirea mişcărilor

relative ale cuplelor cinematice conducătoare ale dispozitivului de ghidare,

recepţionarea şi interpretarea informaţiilor primite privind mişcarea realizată.

Fig. 8.4 Comanda automată a mişcării robotului

M

B

A

C

X

Y

Z

M1

M11

M12

M13

M1k

M2

M1’ M1’’

ΔX ΔZ

ΔY

Page 88: Robotica Avansata Curs

89Funcţia de comandă automată a robotului este realizată de sistemul de comandă

automată a robotului compusă din: unitatea centrală de comandă şi de procesare a

informaţiilor, dispozitivul de programare, dispozitivul de memorare a mişcărilor

axelor, dispozitivul de intrare / ieşire. Comanda în regim automat a mişcării

robotului, între punctele START şi ŢINTĂ poate fi:

a) Comanda secvenţială când mişcarea efectorului final se compune din atâtea

secvenţe câte cuple cinematice conducătoare contribuie la realizarea ei. Se

acţionează succesiv fiecare cuplă cinematică conducătoare. Traiectoria punctului

caracteristic M este compusă din segmentele M1M1’, M1’M1’’, M1’’ M2.

b) Comanda punct cu punct PTP – Point To Point, asincronă, sincronă şi multipunct.

b1) comanda punct cu punct asincronă – PTP asincronă, este cel mai vechi şi cel

mai simplu mod de comandă. El este folosit în aplicaţii de manipulare, paletizare

şi sudare în puncte. În acest caz se specifică doar distanţa până la punctul ţintă şi

profilul de viteză. Mişcările axelor nu sunt corelate, ele încep simultan şi se

termină pe rând. Traiectoria punctului caracteristic nu este definită.

b2) comanda punct cu punct sincronă – PTP sincronă, îi este caracteristică faptul

că toate axele îşi încep mişcarea şi o termină în acelaşi timp. În acest caz se

impune corelarea vitezelor elementelor cuplelor cinematice conducătoare. Şi în

acest caz traiectoria punctului caracteristic nu este definită.

b3) comanda multipunct – MP, este tot o comandă de tip PTP, însă numărul

punctelor impuse pe traiectorie este mult mai mare. La comanda MP, pe lângă

condiţia ca mişcarea relativă a celor 3 cuple cinematice conducătoare să înceapă

Page 89: Robotica Avansata Curs

90şi să se termine în acelaşi moment, se impune şi condiţia ca în intervalul de timp

ti+1 – ti să se parcurgă cursele xi+1 – xi, yi+1 – yi şi zi+1 – zi, între punctele de precizie

Mi(xi, yi, zi) şi Mi+1 (xi+1, yi+1, zi+1). Aceste puncte de precizie sunt memorate

automat, în procesul de instruire, la intervale de timp fixe, stabilite de sistemul de

comandă. Şi în acest caz traiectoria punctului caracteristic dintre două puncte de

precizie nu este definită. Această comandă este folosită pentru roboţi utilizaţi la

sudarea în puncte sau la vopsire.

c) Comanda de traiectorie continuă CP – Continous Parth, realizează deplasarea

punctului caracteristic al efectorului final pe o traiectorie continuă impusă. Pentru

aceasta toate axele trebuie comandate simultan. Semnalele de comandă pentru

aceste axe sunt calculate de interpolatorul de mişcare, care este o componentă

sofware a generatorului de traiectorie. Pentru generarea acestora se parcurg

următoarele etape: interpolarea traiectoriei în sistemul de coordonate operaţional

ataşat bazei robotului, sau al efectorului final, transformarea inversă de coordonate,

interpolarea fină la nivelul axei de mişcare şi reglarea situării elementelor fiecărei

cuple cinematice conducătoare. Comanda pe traiectorie continuă se impune în

cazul unor aplicaţii de sudare cu arc electric, tăiere cu jet de apă sau de laser,

polizare şi montaj. La comanda CP traiectoria punctului caracteristic între punctele

START şi ŢINTĂ, este aproximată prin intermediul unor curbe de interpolare

(segmente de dreaptă, arce de cerc sau arce de parabolă), având ecuaţia:

⎩⎨⎧

=Φ=

0)z,y,x(0)z,y,x(F

(8.3)

Page 90: Robotica Avansata Curs

91ceea ce impune corelarea mişcărilor relative ale cuplelor cinematice conducătoare.

Dacă la momentul tj punctul caracteristic trebuie să fie în poziţia Mj(xj, yj, zj),

deplasările relative ale cuplelor cinematice conducătoare vor fi:

⎪⎩

⎪⎨

−=Δ

−=Δ

−=Δ

1jj1

1jj1

1jj1

zzz

yyy

xxx

(8.4)

Pentru deplasarea Δx1j a cuplei cinematice conducătoare A rezultă:

⎪⎩

⎪⎨⎧

=Δ+Δ+Δ+Φ

=Δ+Δ+Δ+

0)zz,yy,xx(

0)zz,yy,xx(F

j11j11j11

j11j11j11 (8.5)

sistem din care se obţin Δy1j şi Δz1j.

8.2.3. Comanda manuală a roboţilor

Se realizează de către operatorul uman, rolul sistemului de comandă fiind preluat de

către acesta, el fiind sau nu asistat de senzori / traductoare. Dacă operatorul uman se

găseşte la distanţă de sistemul mecanic şi de cel de acţionare al robotului, comanda

manuală este de teleoperare / telecomandă, iar roboţii se numesc instalaţii de teleoperare.

Comanda manuală se poate realiza fie direct fie prin metoda master – slave.

a) Comanda manuală directă.

Este asemănătoare cu programarea „on line” prin instruire a unui robot comandat

automat. Ea se realizează prin acţionarea de către operatorul uman a unor butoane,

întrerupătoare sau manete (joy – stick), care comandă direct motoarele de acţionare

ale cuple lor cinematice conducătoare. Toate butoanele, întrerupătoarele sau manetele

se montează pe un panou, care constituie interfaţa om – maşină.

Transmiterea la distanţă a comenzilor manuale se poate realiza prin:

⇒ cabluri / conducte de alimentare cu energie a motoarelor sistemului de acţionare;

Page 91: Robotica Avansata Curs

92⇒ unde radio prin emiţătoare / receptoare radio;

⇒ biocurenţi prelevaţi de la operatorul uman cu deficienţe fizice în cazul protezelor

sau ortezelor.

b) Comanda manuală copiere.

Comanda manuală directă este dificilă, deoarece supune operatorul uman la controlul

simultan aşi coordonat a unui număr mare de semnale şi informaţii. Comanda manuală

prin copiere constă în comandarea de către operatorul uman a unui lanţ cinematic identic

structural şi proporţional geometric (coeficientul de proporţionalitate fiind denumit

„coeficient de sclav”). Lanţul cinematic comandat direct poartă denumirea de „lanţ

master”, iar robotul este un „ lanţ slave”. Instalaţiile master-slave se mai numesc şi „

manipulatoare sincrone” deoarece lanţul master şi slave se mişcă sincron.

c) Comanda mixtă a roboţilor.

Se realizează prin conlucrarea operatorului uman cu sistemul de comandă automat al

robotului. De regulă operatorul uman apelează manual secvenţele de program pe care

sistemul de comandă automată al robotului o execută automat.

8.3. Programarea roboţilor

Flexibilitatea şi productivitatea unui robot industrial este legată de faptul că sistemul său

de comandă poate fi programat pentru realizarea optimă a unor sarcini diversificate.

Realizarea programului de comandă a unui robot presupune: programarea mişcărilor şi

programarea derulării comenzilor.

Programarea mişcărilor se referă la axele energetice componente. În cadrul ei se

determină punctele traiectoriei de mişcare a punctului caracteristic, orientările

aferente efectorului final şi respectiv intervalele de mişcare.

Page 92: Robotica Avansata Curs

93Programarea derulării comenzilor se referă la stabilirea legăturii dintre intervalele de

mişcare, determinarea parametrilor de proces ca: timpi, viteze şi acceleraţii generalizate,

prelucrarea datelor de proces, precum şi comunicaţia cu periferia sistemului robot.

Programarea robotului poate fi „on – line” (programare apropiată de robot) şi „off – line”

(programare îndepărtată de robot).

Programarea „on – line” este cea mai răspândită. Programarea mişcării se face prin

instruire, programatorul realizând mişcările prin conducerea manuală a robotului, sau a

unui model în regim de instalaţie de teleoperare, în timp ce sistemul de comandă al

robotului înregistrează în memorie datele de mişcare. În continuare operatorul uman prin

comenzi alfanumerice sau taste funcţionale programează derularea programului.

Programarea „off – line” – programatorul prestabileşte valorile numerice ale parametrilor

mişcării pe un calculator aflat la distanţă faţă de robot. Modul de realizare a programării

mişcării: Playback şi Teach-in.

Programarea Playback – Efectorul final străbate întreaga succesiune de situări programate,

iar înregistrarea situărilor de pe traiectorie este independentă de programator, fiind realizată

de sistemul de comandă cu un tact prestabilit. Comanda în regim automat a unui robot la

care s-a folosit programarea Playback se face în modul multipunct MP. Dezavantajul constă

în capacitatea de memorie mare pentru a stoca informaţiile privind succesiunea de situări.

Programarea Teach – in – programatorul conduce efectorul final spre situările marcate ale

succesiunii de situări programate, care apoi este înregistrată în memoria calculatorului.

Parametrii de mişcare ca: viteza, acceleraţia, precizia de atingerea a unui punct şi tipul

interpolării între două situări memorate, sunt introduşi de programator în faza de editare a

Page 93: Robotica Avansata Curs

94programului. După editare urmează faza de compilare, în care programul editat este

transformat într-un cod binar, perceput de sistemul de comandă. Tot în această fază se

corectează eventualele erori din faza de editare.

Înregistrarea situărilor succesive ale efectorului final se poate face prin:

a) conducerea directă a robotului, când după decuplarea frânelor, operatorul uman

acţionează manual robotul cu ajutorul unui mâner plasat pe efectorul final.

Aplicaţia este frecventă la operaţiile de vopsire.

b) conducerea unui model cinematic, când programatorul se foloseşte de un lanţ

cinematic asemănător din punct de vedere cinematic cu dispozitivul de ghidare al

robotului.

c) conducerea master - slave, când se manipulează sarcini foarte mari, iar

mişcarea robotului se realizează cu propriul sistem de acţionare. Pentru aceasta se

utilizează un lanţ cinematic de conducere a robotului. Mişcările robotului se

realizează sincron cu ale lanţului cinematic, manevrat de operatorul uman, având

o instalaţie master – slave.

d) conducerea prin panou de învăţare, comanda mişcării robotului şi înregistrarea

în memorie a situărilor succesive se face cu panouri mobile cu taste de direcţie şi

joystick-uri. Acţionarea unei taste de direcţie comandă robotul să se deplaseze în

concordanţă cu semnificaţia tastei şi a sistemului de coordonate ales. Sistemele de

comandă moderne permit transformări de coordonate (directe sau inverse) în timp

real, permiţând alegerea de către operator a sistemului de coordonate.

Page 94: Robotica Avansata Curs

959. SINTEZA FUNCŢIILOR DE CONDUCERE A ROBOŢILOR

Mişcarea efectorului final se realizează în spaţiul cartezian 3D. Poziţiile punctului

caracteristic respectiv orientarea dreptei caracteristice şi dreptei auxiliare se definesc

în conformitate cu matricea de situare în raport cu sistemul de referinţă fix ataşat

bazei robotului. Definirea mişcării relative a elementelor cuplelor cinematice

conducătoare se realizează prin calcul, de către sistemul de comandă al robotului.

Legile de variaţie în funcţie de timp al deplasărilor şi vitezele generalizate

relative ale elementelor cuplelor cinematice conducătoare se numesc legi de mişcare.

Cele mai des utilizate legi de mişcare sunt cele cu „profil de viteză”, „polinomiale” şi

„polinomiale cu racordări”.

Sistemul de comandă calculează la intervale de timp prescrise, în funcţie de

situările efectorului final (coordonatele sale în spaţiul cartezian), şi legea de mişcare

adoptată, în funcţie de poziţia şi viteza relativă generalizată ale elementelor cuplelor

cinematice conducătoare (coordonatele sale în spaţiul cuplelor cinematice

conducătoare), operaţia numindu-se transformări de coordonate.

În cazul comenzii pe traiectorie continuă, sistemul de comandă calculează

vitezele generalizate ale mişcărilor relative ale elementelor cuplelor cinematice

conducătoare în momentele aferente timpului de eşantionare prin intermediul

modelului cinematic invers al dispozitivului de ghidare al robotului.

9.1. Funcţia de conducere

Funcţia de conducere a axelor de robot este o îmbinare a funcţiei de comandă şi

funcţia de acţionare a axelor robotului. Conţinutul funcţiei de conducere este:

Page 95: Robotica Avansata Curs

96recepţionarea semnalelor emise de sistemul de comandă privind variaţia în timp a

parametrilor mişcărilor relative ale elementelor cuplelor cinematice conducătoare,

comanda funcţionării motoarelor de acţionare pentru realizarea parametrilor amintiţi,

controlul realizării lor şi corelarea funcţionării motoarelor.

9.2. Legi de mişcare ale cuplelor cinematice conducătoare

9.2.1. Legi de mişcare parabolică (cu profil de viteză trapezoidal)

Fig. 9.1 Legea de mişcare cu profil de viteză trapezoidal

Legile de mişcare cu profil de viteză trapezoidal, v = ct., au dezavantajul unor şocuri

puternice în funcţionare, ca efect al forţei de inerţie rezultante.

t

t

t

a

V

V12

x1 x11

x22 x2 x

t1 t11 t22 t2

Page 96: Robotica Avansata Curs

97Pentru condiţiile iniţiale:

222211121 ktttttaaa =−=−== (9.1)

2max

12

212

12opt

212

22212212

222221112

22212

22222222122

222211121122

21211221222

22

211

2111111

tVx1

tVx1k

t)k1(V

tka21ktVt)k21(Vtka

21xxxx

tka21ktV)tt(a

21)tt(Vx

t)k21()tt()tt(t)tt(t)k21(V)tt(Vx

tka21x)tt(a

21x

−=−=

−=

=⋅−+−+⋅=++=

⋅−=−⋅−−=

−=−−−−=−−=−=

⋅==−⋅=

(9.2)

Se obţine amax din expresia:

22

2opt

2optmax12max

2optmax1222122112

22opt

11max

tkt)k21(Vx

a

2t)k21(Vx

2xxxx

tkx2a

−−=

−−=

−===

(9.3)

9.2.2. Principiile legilor de mişcare polinomiale

Un polinom de rangul n şi primele doua derivate ale sale au expresiile:

2nn

3n1n

232

1nn

2n1n

2321

nn

1n1n

2210

tC)1n(ntC)1n)(2n(tC6C2)t(F

tnCtC)1n(tC3tC2C)t(F

tCtCtCtCC)t(F

−−−

−−−

−−

−+−−++=′′

+−+++=′

+++++=

L

L

L

(9.4)

Pentru trasarea legii de mişcare de ordinul zero se impun N perechi de valori, unde N

– numărul coeficienţilor polinomiale are expresia: N=n+1. Pentru a se evita şocurile

în funcţionare se impune ca la capetele de cursă să avem V = 0 şi a = 0 adică:

0)t(F0)t(Fx)t(Ftt0C2)t(F0C)t(F0C)t(F0tt

221222

2111011

=′′=′==∀==′′==′====∀

(9.5)

Page 97: Robotica Avansata Curs

98Pentru N = 6 condiţii iniţiale impuse rezulta n = 5 gradul poligonului, adică:

55

44

33 tCtCtC)t(F ++= (9.6)

Din a doua condiţie pusă în relaţiile (9.6) se obţine sistemul de 3 ecuaţii cu 3 necunoscute:

⎪⎪⎪⎪

⎪⎪⎪⎪

==++=′′

−=⇒=++=′

==++=

52

125

325

224232

42

124

425

324

2232

32

12312

525

424

3232

tx6C0tC20tC12tC6)t(F

tx15C0tC5tC4tC3)t(F

tx10CxtCtCtC)t(F

(9.7)

Rezolvând sistemul (9.7) expresia generală a legii de mişcare polinomiale ce răspunde la

condiţiile iniţiale impuse este:

5

212

4

212

3

212 t

tx6ttx15

ttx10)t(F ⎟⎟

⎞⎜⎜⎝

⎛+⎟⎟

⎞⎜⎜⎝

⎛−⎟⎟

⎞⎜⎜⎝

⎛−= (9.8)

Fig. 9.2 Legea de mişcare cu profil de viteză o funcţie polinomială – a) şi aproximarea cu segmente de dreaptă – b)

t

t

V

x

tjti

Δxj

Mj’

Mj

Mi

Mi’Δxi

xj’xj

xi

xi’

Vij

b) t

t

V

x

tj ti a)

Mi Mj

Page 98: Robotica Avansata Curs

99În cazul în care profilul vitezei nu este trapezoidal, ci o funcţie polinomială sau o funcţie

trigonometrică, ea se poate aproxima cu segmente de dreaptă. Cea mai bună aproximare

se obţine dacă:

jnjn

1nj1n

2j2j10j

inin

1ni1n

2i2i10i

'jji

'ij

'ji

'iji

xtCtCtCtCC)t(F

xtCtCtCtCC)t(F

xxxxxxxxxxxxxx

=+++++=

=+++++=

Δ=−=−Δ−=Δ+=Δ=Δ=Δ

−−

−−

L

L (9.9a)

ij

ni

nj

nij

3i

3j

3ij21ij

ij

ij

ijijijij

ij

ijij

tttt

Ctttt

C)tt(CCttx2V

ttx2xx

Vx2xx'x'xtt

'x'xV

−+⋅⋅⋅+

−++++

−Δ−

=

Δ−−=⇒Δ−−=−

−=

(9.9b)

9.2.3. Legi de mişcare polinomiale cu racordări

Pentru a exprima o traiectorie descrisă în coordonate carteziene sunt necesare M funcţii

de aproximare, câte una pentru fiecare grad de mobilitate al robotului, iar aceste funcţii

se calculează pentru fiecare punct de precizie impus pe traiectorie. Ţinând cont că

fiecare punct de precizie reclamă trei condiţii iniţiale (poziţie, viteză şi acceleraţie)

gradul funcţiei polinomiale ce trece prin k puncte de precizie este n = 3k-1.

Metoda Ho şi Cook utilizează aproximarea traiectoriei polinomiale prin

segmente de curbă, utilizând funcţii polinomiale de gradul 3 pentru segmentele

intermediare şi de gradul 4 pentru segmentele de început şi de sfârşit. Pentru a trasa o

traiectorie prin n puncte sunt necesare n-1 funcţii polinomiale de aproximare: 2 funcţii

de gradul 4, pentru începutul şi sfârşitul traiectoriei şi n-3 funcţii de gradul 3 pentru

segmentele intermediare.

Page 99: Robotica Avansata Curs

100a) Pentru două puncte de precizie intermediare ale traiectoriei, Mk şi Mk+1

( 1nk2 −≤≤ ), funcţia polinomială de gradul trei pe segmentul 1+kkMM scrisă pentru

o singură cuplă cinematică conducătoare:

[ ]1kk3

32

210 t,0tttCtCtCC)t(F +=∈+++= (9.10)

Fig. 9.3 Aproximarea între două puncte de precizie ale traiectoriei

Pentru intervalul de timp [ ]1kk t,0tt +=∈ se impun următoarele condiţii iniţiale:

1k1kk1k1kk F)t(FF)0(FF)t(FF)0(F ++++ ′=′′=′== (9.11)

unde Fk şi Fk+1 reprezintă poziţia în planul mişcării, al punctelor Mk şi Mk+1 la

momentele tk=0 şi tk+1, iar F’k şi F’k+1 reprezintă vitezele cuplei cinematice

conducătoare în aceleaşi puncte şi aceleaşi momente.

Derivând relaţia (9.10) se obţine expresia legii de mişcare de ordinul unu.

2321 tC3tC2C)t(F ++=′ (9.12)

Înlocuind condiţiile iniţiale din relaţia (9.11) în relaţiile (9.10) şi (9.12) se obţine:

1k0k CF)0(FCF)0(F =′=′== (9.13)

⎪⎩

⎪⎨⎧

++′=′=′

++′+==

++++

+++++

21k31k2k1k1k

31k3

21k21kkk1k1k

tC3tC2FF)t(F

tCtCtFFF)t(F (9.14)

Mk+1

Mk+2

Mk

tk+1 tk+2 tk

F(t)

F”(tk+1) F”(tk+2)

1ktt0 +≤≤ 2ktt0 +≤≤

Page 100: Robotica Avansata Curs

101Rezolvând sistemul de ecuaţii (9.14) se obţine pe intervalul de timp [ ]1kk t,tt +∈ :

( )

( )⎥⎦

⎤⎢⎣

⎡′+′+

−=

⎥⎦

⎤⎢⎣

⎡′−′−

−=

++

+

+

++

+

+

1kk1k

1kk2

1k3

1kk1k

k1k

1k2

FFt

FF2t1C

FF2t

FF3t1C

(9.15)

Pentru valori particulare 1nk2 −≤≤ relaţiile (9.13) şi (9.15) se pot grupa matriceal:

⎪⎪⎭

⎪⎪⎬

⎪⎪⎩

⎪⎪⎨

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

−−−=

⎪⎪⎭

⎪⎪⎬

⎪⎪⎩

⎪⎪⎨

+

+

++++

++++'

1k

'k

1k

k

21k

21k

31k

31k

1k1k2

1k2

1k

3

2

1

0

FF

FF

t1

t1

t2

t2

t1

t2

t3

t3

01000001

CCCC

(9.16)

Se vor selecta valorile lui tk+1 pentru care punctul Mk+1 asigura o eroare de traiectorie

minimă:

imminqqtM

1i

2k,i1k,i1k =⎥⎦

⎤⎢⎣⎡ −=Φ∀ ∑

=++ (9.17)

qi,k+1 este coordonata generalizată obţinută prin acţionarea cuplei cinematice

conducătoare pentru a atinge punctul Mk+1.

Vitezele kF′ şi 1kF +′ se determină din condiţiile de continuitate a legii de mişcare de

ordinul doi (a acceleraţiilor) în punctele de precizie. Prin derivarea expresiei vitezei

din relaţia (9.11) se obţine acceleraţia la sfârşitul primului segment în punctul de

precizie Mk+1: ( ) 1k321k tC6C2tF ++ +=′′ (9.18)

Pentru începutul celui de-al doilea segment expresia acceleraţiei devine:

( ) 2k322k tC6C2tF ++ +=′′ (9.19)

Particularizând la t=0 ⇒ F”(0) = 2C2 (9.20)

Page 101: Robotica Avansata Curs

102Continuitatea legii de mişcare de gradul doi (în acceleraţie constantă)în punctul Mk+1:

( ) ( )2k1k tFtF ++ ′′=′′ (9.21)

Utilizând expresiile (9.16), (9.18) şi (9.20) în relaţia (9.21) se obţine:

( ) ( )[ ]k1k2

2k1k2k2

1k2k1k

2k1k1k2k1kk2k FFtFFttt3FtF)tt(2Ft −+−=′+′++′ +++++

++++++++ (9.22)

Pentru valori particulare 1nk2 −≤≤ relaţia (9.22) se poate grupa matriceal:

( ) ( )[ ]( ) ( )[ ]( ) ( )[ ]

( ) ( )[ ]⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

−+−

−+−

−+−

−+−

=

⎪⎪⎪

⎪⎪⎪

⎪⎪⎪

⎪⎪⎪

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

+

++

+

−−−−−−−−

−−−−

3n2n2

1n24n1n2

2n1n2n

452656

25

65

342545

24

54

232434

23

43

'1n

'4

'3

'2

2n1n2n1n

5656

4545

3434

FFtFFttt

3

FFtFFttt3

FFtFFttt3

FFtFFttt3

F

FFF

t)tt(2t00000

000t)tt(2t000000t)tt(2t000000t)tt(2t

MM

L

MMMMMMMM

L

L

L

(9.23)

Rezolvând sistemul matriceal (9.23) se obţin valorile matricei vitezelor [ ]F′ şi

înlocuind în matricea (9.16) rezultă o soluţie unică a coeficienţilor polinomiali pentru

fiecare funcţie polinomială de ordinul trei. Pe măsură ce se obţin soluţiile funcţiilor

polinomiale - relaţia (9.10) - se impune verificarea respectării condiţiei de eroare

minimă faţă de traiectoria programată.

b) Pentru primul şi ultimul segment al traiectoriei se impune condiţia iniţială de

funcţionare fără şocuri: 0FFFF nn11 =′′=′=′′=′ (9.24)

Page 102: Robotica Avansata Curs

103utilizând funcţia polinomială de gradul patru:

44

33

2210 tCtCtCtCC)t(F ++++= (9.25)

Fig. 9.4 Aproximarea primului segment al traiectoriei

⇒ pentru segmentul iniţial 21MM pe intervalul de timp [ ]21 t,0tt =∈ se

impun următoarele condiţii iniţiale:

0C)0(F0C)0(FFC)0(F 2110 ==′′==′== (9.26)

⎪⎪⎩

⎪⎪⎨

′′=+=′′

′=+=′

=++=

2224232

2324

2232

2424

32312

FtC12tC6)t(F

FtC4tC3)t(F

FtCtCF)t(F

(9.27)

Rezolvând primele 2 ecuaţii din sistemul de ecuaţii (9.27) se obţine:

( )

( ) 232

1242

4

222

1232

3

Ft1FF

t3C

Ft1FF

t4C

′+−−

=

′−−=

(9.28)

⇒ pentru segmentul final n1-n MM pe intervalul de timp [ ]n1n t,0tt =∈ − se

impun următoarele condiţii iniţiale:

1n11n0 FC)0(FFC)0(F −− ′==′== (9.29)

M2

M3

M1

t2 t3 t1

F1(t)

F”(t2) F”(t0)

2tt0 ≤≤ 1ktt0 +≤≤

F2(t)

Page 103: Robotica Avansata Curs

104

Fig. 9.5 Aproximarea ultimului segment al traiectoriei

⎪⎪⎩

⎪⎪⎨

=++=′′

=+++′=′

=+++′+=

−−

0tC12tC6C2)t(F

0tC4tC3tC2F)t(F

FtCtCtCtFF)t(F

2n4n32n

3n4

2n3n21nn

n4n4

3n3

2n2n1n1nn

(9.30)

Rezolvând sistemul de ecuaţii (9.30) se obţine:

( )

( )

( )2n1n1nn4n

4

n1n1nn3n

3

n1n1nn2n

2

tFF3F3t1C

tF3F8F8t1C

tF3F6F6t1C

−−

−−

−−

′−−=

′++−=

′−−=

(9.31)

Pentru determinarea matricei vitezelor [ ]F′ se impune condiţia de continuitate a legii

de mişcare de ordinul doi (a acceleraţiilor) în punctele de precizie M2 pentru primul

segment al traiectoriei şi Mn-1 pentru ultimul al traiectoriei.

Acceleraţia la sfârşitul primului segment de curbă, în punctul de precizie M2 se exprimă

prin derivata a doua a funcţiei polinomiale de gradul patru - vezi relaţia (9.25):

( ) 224232 tC12tC6tF +=′′ (9.32)

care cu ajutorul relaţiilor (9.31) ia forma:

Mn-1 Mn

Mn-2

tn-1 tn tn-2

Fn-1(t)

F”(tn-1) F”(tn)

1ntt0 −≤≤ ntt0 ≤≤

Fn(t)

Page 104: Robotica Avansata Curs

105

( ) ( ) 22

1222

2 Ft6FF

t12tF ′+−

−=′′ (9.33)

La începutul primului segment de curbă intermediară, derivata de ordinul doi a

funcţiei polinomiale de ordinul trei se obţine cu ajutorul relaţiei (9.12):

( ) tC6C2tF 32 +=′′ (9.34)

Particularizând la t=0, corespunzător punctului de precizie M2 de început al primului

segment de curba intermediar: ⇒ F”(0) = 2C2 (9.35)

unde coeficientul C2 este definit de relaţia (9.15) pentru k = 2:

( )⎥⎦

⎤⎢⎣

⎡′−′−

−= 32

3

23

3FF2

tFF3

t2F”(0) (9.36)

Continuitatea legii de mişcare de gradul doi (în acceleraţie constantă)în punctul M2,

se exprimă prin egalarea relaţiilor (9.33) şi (9.36):

( ) ( )0tFtF k2 =′′=′′ (9.37)

( ) ( )2323

1222

33

223

FFt3FF

t6F

t1F

t3

t2

−+−=′+′⎟⎟⎠

⎞⎜⎜⎝

⎛+ (9.38)

În mod similar acceleraţia la sfârşitul ultimului segment de curbă intermediară, în

punctul de precizie Mn-1, este obţinută din relaţiei (9.34) pentru t = tn-1:

( ) 1n321n tC6C2tF −− +=′′ (9.39)

unde coeficienţii C2 şi C3, definiţi de relaţia (9.15), pe intervalul de timp [ ]2k1k t,tt ++∈

au expresia:

Page 105: Robotica Avansata Curs

106

( )

( )⎥⎦

⎤⎢⎣

⎡′+′+

−=

⎥⎦

⎤⎢⎣

⎡′−′−

−=

+++

++

+

+++

++

+

2k1k2k

2k1k2

2k3

2k1k2k

1k2k

2k2

FFt

FF2t

1C

FF2t

FF3t

1C (9.15a)

ce se particularizează pentru k = n – 1:

( )

( )⎥⎦

⎤⎢⎣

⎡′+′+

−=

⎥⎦

⎤⎢⎣

⎡′−′−

−=

−−−

−−

−−−

−−

1n2n1n

1n2n2

1n3

1n2n1n

2n1n

1n2

FFt

FF2t1C

FF2t

FF3t1C

(9.40)

Cu aceste precizări relaţia (9.38) devine:

( ) 1n1n

2n1n

1n21n

2n21n

1n Ft4F

t2F

t6F

t6tF −

−−

−−

−−

−− ′+′+−=′′ (9.41)

La începutul segmentului final, pentru tn = 0, acceleraţia este definită de derivata a

doua a funcţiei polinomiale de ordinul patru, prin a treia ecuaţie din relaţia (9.30):

( ) 2C20F =′′ (9.42)

unde coeficientul C2 este definit de relaţia (9.31):

( ) ( )n1n1nn2n

tF3F6F6t20F −− ′−−=′′ (9.43)

Egalând relaţiile (9.40) cu (9.41) rezultă:

( ) ( )0tFtF n1n =′′=′′ − (9.44)

se obţine:

( ) ( )1nn2n

2n1n21n

1nn1n

2n1n

FFt6FF

t3F

t3

t2F

t1

−−−−

−−

−−

−+−=′⎟⎟⎠

⎞⎜⎜⎝

⎛++′ (9.45)

Page 106: Robotica Avansata Curs

107Combinând relaţiile (9.38) cu (9.45) cu relaţia (9.23), prin completarea primei linii cu

relaţia (9.38) şi a ultimei linii cu relaţia (9.45) se obţine:

( )( )

( )

( )

( ) ( )

( ) ( )[ ]( ) ( )[ ]( ) ( )[ ]

( ) ( )[ ]( ) ( )

⎪⎪⎪⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪⎪⎪⎪

−+−

−+−

−+−

−+−

−+−

−+−

=

⎪⎪⎪⎪

⎪⎪⎪⎪

⎪⎪⎪⎪

⎪⎪⎪⎪

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

+

+

++

+

+

−−−−

−−−−−−−−

−−

−−−−

1nn2n

2n1n21n

3n2n2

1n24n1n2

2n1n2n

452656

25

65

342545

24

54

232434

23

43

1222

2323

'1n

'2n

'5

'4

'3

'2

n1n1n

2n1n2n1n

5656

4545

3434

323

FFt6FF

t3

FFtFFttt

3

FFtFFttt3

FFtFFttt3

FFtFFttt3

FFt6FF

t3

FF

FFFF

t3

t2

t1000000

ttt2t00000

000ttt2t000000ttt2t000000ttt2t

000000t1

t3

t2

MM

L

L

MMMMMMMM

L

L

L

L

(9.46)

Rezolvând sistemul matriceal al relaţiei (9.46)se obţin toate valorile matricei vitezei

[ ]F′ , definind astfel toate funcţiile polinomiale de gradul trei şi patru utilizate pentru

aproximare traiectoriei prescrise în planul mişcării.

Extinzând metoda prezentată pentru toate cele M cuple cinematice conducătoare ale

unui robot industrial, ceea ce conduce la un maxim de (n-1).M funcţii polinomiale

pentru o traiectorie aproximată prin n puncte de precizie.

Page 107: Robotica Avansata Curs

108Valorile extreme ale vitezelor se pot exprima printr-un factor:

( )( )⎥⎥⎦

⎢⎢⎣

⎡ ≤≤′= +

ij

1iijijv V

tt0:tFmaxmaxS (9.47)

unde Vij – viteza de regim a unei cuple cinematice conducătoare j, pentru M,1j = ;

F’ij – viteza pe segmentul de curba i, prin acţionarea cuplei cinematice

conducătoare j.

Valorile extreme ale acceleraţiilor se pot exprima de asemenea printr-un factor:

( )( )⎥⎥⎦

⎢⎢⎣

⎡ ≤≤′′= +

ij

1iijija a

tt0:tFmaxmaxS (9.48)

unde aij – acceleraţia de regim a cuplei cinematice conducătoare j, pentru M,1j = ;

F”ij – acceleraţia pe segmentul de curba i, prin acţionarea cuplei cinematice

conducătoare j.

Valoarea optimă a factorului S este:

S = max. (Sv , Sa) (9.48)