Sunteți pe pagina 1din 20

27.01.

2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

Tehnologie Afaceri Referate Didactica Legislatie Familie

Acasa » tehnologie » tehnica mecanica


PLANIFICAREA TRAIECTORIILOR ROBOTILOR
PLANIFICAREA TRAIECTORIILOR ROBOTILOR

PLANIFICAREA TRAIECTORIILOR ROBOTILOR

1 Introducere
Problemele cinematicii si dinamicii robotilor industriali au fost examinate in
capitolele anterioare, astfel incat in acest capitol ne vom referi la problema alegerii
regulei pentru conducere ce asigura miscarea RI in lungul unei traiectorii stabile.
Inainte de inceperea miscarii RI este important sa se cunoasca daca exista pe
traiectoria RI obstacole si daca exista limite pe traiectoria endefectorului. Pot exista
doua tipuri de coliziuni :

a corpului robotului cu obstacole din spatiul sau de lucru ;

a endefectorului cu obstacole din spatiul sau de lucru.

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 1/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

In functie de raspunsurile la aceste doua intrebari regula de conducere a


robotilor apartine unuia din cele patru tipuri indicate in tabelul 1. Din acest tabel se observa ca regulile de conducere
a robotilor se impart in doua categorii :

- cand exista obstacole pe traiectorie;

- cand nu exista obstacole pe traiectorie.

In acest capitol sunt examinate diferite moduri de planificare a traiectoriilor cand lipsesc obstacolele. In situatia in care exista
obstacole , acestea vor fi ocolite , cea mai simpla metoda de a le ocoli fiind prin stabilirea unui numar de puncte intermediare.

Traiectoria stabilita a manipulatorului poate fi definita sub forma unei succesiuni de puncte in spatiul in care
sunt date pozitia si orientarea sub forma unei curbe spatiale ce uneste aceste puncte. Curba de-a lungul careia se
deplaseaza endefectorul din pozitia initiala in cea finala se numeste traiectoria endefectorului. Sarcina noastra consta
in elaborarea unui aparat matematic pentru alegerea si descrierea miscarii dorite a manipulatorului intre punctul
initial si cel final al traiectoriei.

Tabelel 1 Tipuri de conducere a robotilor.

Obstacole pe traiectoria robotului

Exista Lipsesc

Limitele pe Exista Planificarea autonoma a Planificarea


traiectoria traiectoriei ce asigura autonoma a
robotului ocolirea obstacolelor, traiectoriei plus
plus reglarea miscarii in reglarea miscarii
lungul traiectoriei alese in lungul
in procesul de traiectoriei alese
functionare a robotului in procesul de
functionare a
robotului

Lipsesc Conducera pe pozitie Conducera pe


plus detectarea si pozitie
ocolirea obstacolelor in
procesul de miscare

Diferenta dintre diferitele mijloace de planificare a traiectoriilor robotilor se reduce la aproximatii sau la
interpolarea traiectoriei alese cu polinoame de diferite clase si la alegerea unei succesiuni oarecare de puncte de
sprijin in care se produce corectarea parametrilor miscarii robotului pe traiectoria dintre punctul initial si cel final.
Punctul initial si cel final al traiectoriei pot fi descrise atat in coordonate interne (articulare) cat si in coordonate
externe ( operationale). Mai frecvent se utilizeaza totusi coordonatele operationale, intrucat cu ajutorul lor este mai
comod sa se stabileasca pozitia corecta a endefectorului. Fata de acestea coordonatele articulare nu sunt utile in
calitate de sistem de lucru deoarece axele articulatiilor nu sunt ortogonale si deci nu este posibila o descriere
independenta a pozitiei si orientarii EE. Daca in punctul initial si cel final al traiectoriei este necesara cunoasterea
coordonatelor articulare, valorile lor se pot obtine cu ajutorul programului de rezolvare a problemei cinematice
inverse. De regula traiectoria ce uneste pozitia initiala si finala a EE nu este unica. Este posibila de exemplu
deplasarea EE atat in lungul dreptei care uneste cele doua puncte cat si de-a lungul unei curbe oarecari ce satisface
un sir de limitari pentru pozitia si orientarea EE pe portiunile initiale si finale ale traiectoriei.

In acest capitol se examineaza modalitatile de planificare atat ale traiectoriilor rectilinii cat si al traiectoriilor palne neliniare.
Mai intai vom examina cel mai simplu caz de planificare al traiectoriilor ce satisface cateva limite privind caracterul miscarii EE
iar apoi rezultatul obtinut il vom generaliza cu scopul luarii in consideratie a limitelor dinamicii miscarii robotului. Pentru o mai
buna intelegere, planificarea miscarii poate fi socotita ca o “cutie neagra”. La intrare se dau cateva variabile ce caracterizeaza
limitele aflate pe traiectorie. Iesirea este o succesiune data in timp a punctelor intermediare in care sunt determinate in
coordonate articulare si operationale , pozitia , orientarea , viteza si acceleratia EE si prin care manipulatorul trebuie sa treaca
intre punctul initial si cel final. La planificarea traiectoriilor se foloseste una dintre urmatoarele doua abordari :

Programatorul indica un set precis de limite pentru pozitie, viteza si acceleratia coordonatelor generalizate ale
manipulatorului in cateva puncte ale traiectoriei ( puncte nodale). Dupa aceasta planificatorul traiectoriilor alege dintr-
www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 2/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

o clasa oarecare a functiilor functia care trece prin punctele nodale si care satisface in aceste puncte limitarile date.

A doua abordare consta in aceea ca programatorul indica traiectoria dorita a robotului sub forma unei functii oarecari
descrisa analitic, de exemplu o traiectorie rectilinie descrisa in coordonate carteziene. Programatorul produce o
aproximare a traiectoriei date in coordonate articulare sau operationale.

In prima abordare, determinarea limitelor si planificarea traiectoriei se produce in coordonate articulare. Inrucat
in miscarea EE nu apar limite , programatorului ii este greu sa prezinte traiectoria realizata a EE si de aceea apare
posibilitatea ciocnirii cu obstacole.

In cazul celei de a doua abordari limitele se indica in coordonate operationale in timp ce actionarile de forta
realizeaza schimbarea coordonatelor articulare. De aceea pentru determinarea traiectoriei este suficient sa se indice
cu aproximatie traiectoria . Cu ajutorul transformarilor functionale aproximative se trece de la limitele date in
coorodnate operationale la cele in coordonate articulare si numai dupa aceea se cauta printre functiile de clasa
stabilite traiectoria ce satisface limitele exprimate in coordonate articulare.

Cele doua abordari de mai sus pentru planificarea traiectoriei ar putea fi folosite ( practic in timp real ) pentru realizarea
eficienta a succesiunilor de puncte nodale ale traiectoriilor robotului. Totusi succesiunea data in timp a vectorilor in spatiul
variabilelor articulare se formeaza fara a lua in consideratie limitele dinamicii manipulatorului ceea ce poate conduce la
aparitia unor erori.

2 Formularea generala a problemei planificarii traiectoriilor.

Planificarea traiectoriilor se poate produce atat in coordonate articulare cat si operationale. La planificarea traiectoriilor in
coordonate articulare pentru descrierea completa a miscarii manipulatorului se indica dependenta in functie de timp a tuturor
variabilelor articulare ca si primele doua derivate ale lor. Daca planificarea traiectoriilor se face in coordonate operationale se
indica dependenta de timp a pozitiei, vitezei si acceleratiilor EE si pe baza acestor informatii se determina valorile
coordonatelor articulare ale vitezelor si acceleratiilor lor. Planificarea miscarii in coordonate articulare prezinta trei avantaje :

1) Se indica comportamentul variabilelor conduse direct in procesul de miscare al robotului;

2) Planificarea traiectoriei se poate realiza practic in timp real;

3) Traiectoriile variabilelor articulare sunt mai usor de planificat. Deficienta consta in modul complicat de determinare
a pozitiei verigilor si a EE in procesul miscarii. O asemenaea procedura este adesea necesara pentru a evita ciocnirea
cu obstacole ce exista pe traiectoria EE. In caz general algoritmul principal de formare a punctelor nodale ale
traiectoriei din spatiul variabilelor articulare este foarte simplu :

t = t0

ciclul : asteptati momentul urmator al corectiei ;

t = t+dt ;

h(t) este pozitia data a manipulatorului in spatiul variabilelor articulare la momentul t.

Daca t= tf , iesiti din procedura;

Realizati ciclul :

Aici dt este intervalul de timp dintre doua momente succesive ale corectiei parametrilor de miscare ai robotului.

Din algoritmul descris mai sus se observa ca toate calculele se efectueaza pentru determinarea functiei h(t) a traiectoriei care
trebuie sa se innoiasca in fiecare punct al corectiei parametrilor pentru miscarea manipulatorului. Pe traiectoria planificata
exista patru tipuri de limitari :

1) punctele nodale ale traiectoriei trebuie sa se calculeze usor prin procedeul nerecurent;

2) pozitiile intermediare trebuie sa se determine cu o singura cifra;

3) trebuie sa se asigure continuitatea coordonatelor articulare si a primelor doua derivate;

4) trebuie sa fie reduse la minimum miscarile inutile de tip imprastiere.

Limitarile enumerate mai sus sunt satisfacute de traiectoriile generate de succesiuni polinoamiale. Spre exemplu
daca pentru descrierea miscarii unei articulatii “i”se foloseste succesiunea “p” a polinoamelor, ele trebuind sa contina
3(p+1) coeficientii alesi in concordanta cu conditiile initiale si finale pentru pozitie, viteza si acceleratie si sa asigure
continuitatea acestor caracteristici pe intreaga traiectorie. Daca se adauga o limita suplimentara, de exemplu se
indica o pozitie intr-un punct oarecare intermediar al traiectoriei, atunci pentru realizarea acestei conditii se cere un
coeficient suplimentar. De regula, se indica doua conditi suplimentare pentru pozitie ( in apropierea punctului initial al
traiectoriei si in aproperea celui final ) care asigura directiile nepericuloase ale miscarii pe portiunile initiala si finala si
o precizie mai mare a conducerii miscarii. In acest caz, schimbarea fiecarei variabile articulare poate fi descrisa cu un

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 3/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

singur polinom de gradul sapte sau cu doua polinoame : unul de grad patru si unul de grad trei ( 4-3-4 ) sau ( 3-5-3
). Aceste procedee sunt examinate in urmatoarele subcapitole. Daca planificarea traiectoriei se face in coordonate
operationale algoritmul indicat mai sus se transforma, avand urmatorul aspect :

t = to

ciclul : asteptati momentul urmator al corectiei;

t = to + dt ;

H(t) este pozitia EE in spatiul operational la momentul t;

Q[H(t)] este vectorul coordonatelor articulare ce corespund lui H(t);

Daca t = tf iesiti din procedura;

Realizati ciclul;

Aici pe langa calcularea functiei traiectoriei H(t) in fiecare punct de corectie al parametrilor de miscare a RI se
cere sa se determine si valorile variabilelor articulare ce corespund pozitiei calculate a EE . Functia matriceala H(t)
descrie pozitia EE in spatiul absolut si in momentul de timp “t” si dupa cum se arata in subcapitolul 4 , reprezinta
matricea de transformare a coordonatelor cu o dimensiune de 4x

In general, planificarea traiectoriilor in coordonate operationale se compune din 2 pasi succesivi:

formarea succesiunii punctelor nodale in spatiul operational , care sunt dispuse in lungul traiectoriei planificate a EE;

alegerea unor functii de orice clasa care descrie (aproximeaza) portiunile traiectoriei intre punctele nodale , in
concordanta cu un criteriu oarecare.

Exista doua abordari principale fata de planificarea traiectoriilor in spatiul operational.

In prima dintre ele majoritatea calculelor, optimizarea traiectoriilor si reglarea ulterioara a miscarii se produc in coordonate
operationale. Dand actionarii semnalul de comanda se calculeaza diferenta dintre pozitia curenta si cea data a EE in spatiul
operational. Punctele nodale pe traiectoria rectilinie data in spatiul cartezian se aleg pentru intervalele de timp fixate.
Calcularea valorilor coordonatelor articulare in aceste puncte se produce in procesul de conducere a miscarii RI, utilizand
modelul geometric invers.

A doua abordare consta in aproximarea portiunilor rectilinii ale traiectoriei din spatiul variabilelor articulare
obtinute ca rezultat al interpolarii traiectoriei intre punctele nodale cu polinoamele de grad mic. Reglarea miscarii in
aceasta abordare are loc la nivelul variabilelor articulare. Semnalul de comanda transmis la actionare se calculeaza
pentru diferenta dintre pozitia fluctuanta si cea data a RI in spatiul coordonatelor articulare.

Prima dintre abordarile enumerate mai sus pentru planificarea traiectoriilor in spatiul operational permite sa se asigure o
mare precizie a miscarii in lungul traiectoriei date. Totusi toti algoritmii cunoscuti pentru conducerea miscarii se construiesc
avand in vedere lipsa traductorilor care masoara pozitia EE in spatiul operational si in cel articular. Aceasta conduce la
necesitatea realizarii transformarii coordonatelor operationale ale EE in vectorul coordonatelor articulare ale RI, dar in
procesul miscarii aceasta este o problema care cere un numar mare de calcule si adesea un timp mare pentru conducerea RI.
Mai departe, cerintele fata de traiectorie

( continuitate, conditii limitative ) se formuleaza in coordonate operationale , in timp ce limitarile dinamice ce sunt
luate in consideratie in etapa planificarii traiectoriei se indica in spatiul coordonatelor articulare. Neajunsurile
enumerate ale primei abordari conduc la faptul ca se foloseste mai mult a doua abordare bazata pe transformarea
coordonatelor carteziene ale punctelor nodale in coordonate articulare corespunzatoare, cu efectuarea ulterioara a
interpolarii in spatiul variabilelor articulare cu polinoame de grad mic. Aceasta abordare necesita mai putin timp
pentru calcule in comparatie cu prima abordare si usureaza luarea in considerare a limitelor dinamicii RI. Totusi
precizia miscarii in lungul traiectoriei date in spatiul operational se micsoreaza in acest caz. In subcapitolul 4 vom
examina cateva scheme de planificare a traiectoriilor ce folosesc abordarile indicate.

3 Traicetoriile in spatiul variabilelor articulare


La conducerea RI , inainte de a trece la planificarea traiectoriei de miscare este necesar sa se determine configuratiile
robotului in punctul initial si cel final al traiectoriei. Planificarea traiectoriilor in spatiul variabilelor articulare se va efectua
tinand seama de urmatoarele considerente :

In momentul ridicari obiectului de manipulat miscarea EE trebuie sa fie indreptata de la obiect; in caz contrar se
poate produce ciocnirea EE cu suprafata pe care este asezat obiectul.

Se va indica pozitia punctului initial al EE si normala ce trece prin pozitia initiala pe suprafata pe care este asezat
obiectul, stabilindu-se astfel coordonatele punctului initial. Indicandu-se timpul in care EE ajunge in acest punct, se
poate comanda viteza de miscarea a EE.

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 4/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

Conditii analoage se pot formula pentru punctul de apropiere de pozitia finala : EE trebuie sa treaca prin punctul de
apropiere aflat pe normala EE ce trece prin pozitia finala a EE spre suprafata pe care trebuie sa fie asezat obiectul
manipulat. Aceasta asigura o directie corecta a miscarii pe portiunea finala a traiectoriei.( portiunea de apropiere ).

Din cele aratate mai sus rezulta ca orice traiectorie a miscarii RI trebuie sa treaca prin 4 puncte date : punctul initial ,
punctul de pornire , de apropiere si cel final.

Pe traiectorie trebuie sa se indice urmatoarele :

a) punctul initial - descris de viteza si acceleratie ( adesea egale cu zero);

b) punctul de plecare - pozitia , viteza si acceleratia sunt continui ;

c) punctul de apropiere - la fel ca si pentru cel de plecare;

d) punctul final - sunt date viteza si acceleratia ( de obicei egale cu zero ).

Valorile coordonatelor articulare trebuie sa se afle in limitele restrictiilor fizice si geometrice ale fiecarei articulatii.

La determinarea timpului de miscare este necesar sa se tina seama de urmatoarele :

a) timpul de parcurgere a portiunii initiale si a celei finale a traiectoriei se alege tinand seama de viteza ceruta pentru
apropierea si plecarea EE si reprezinta o constanta oarecare ce depinde de caracteristicile actionarilor de forta a
articulatiilor;

b) timpul de miscare pe portiunea medie a traiectoriei se determina prin valorile maxime ale vitezelor si acceleratiilor
fiecareia dintre articulatii. Pentru normare se foloseste timpul maxim necesar pentru trecerea prin aceasta portiune a
traiectoriei articulatiei care este cea mai putin rapida.

Se cere sa se aleaga un grad oarecare al functiilor polinomului ce permite sa se efectueze interpolarea traiectoriei pentru
punctele nodale date ( punctul initial , de pornire , de apropiere si cel final ) care asigura realizarea conditiei continuitatii
pozitiei, a vitezei si a acceleratiei pe tot intervalul de timp [ to , tf ].

Punctul initial :

pozitia ( este data );

viteza ( este data de obicei egala cu zero );

acceleratia ( este data de obicei zero );

Puncte intermediare :

pozitia in punctul de plecare ( pornire ) ( este data );

pozitia in punctul initial ( se schimba neintrerupt la trecerea intre portiunile succesive ale traiectoriei ) ;

viteza ( se schimba neintrerupt la trecerea intre portiunile succesive ale traiectoriei ) ;

acceleratia ( se schimba neintrerupt la trecerea intre portiunile succesive ale traiectoriei ) ;

pozitia in primul; punct de apropiere ( este data ) ;

pozitia in punctul de apropiere ( se schimba neintrerupt la trecerea intre portiunile succesive ale traiectoriei ) ;

viteza ( se schimba neintrerupt la trecerea intre portiunile succesive ale traiectoriei ) ;

acceleratia ( se schimba neintrerupt la trecerea intre portiunile succesive ale traiectoriei ) ;

Punctul final :

pozitia ( este data )

viteza ( este data , de obicei zero )

acceleratia ( este data , de obicei zero )

Una dintre modalitati consta in aceea ca se descrie miscarea articulatiei “i” cu un polinom de gradul sapte:

qi(t) = a7t7+a6t6+.+ a2t2+a1t+a0

in care coeficientii necunoscuti ai se determina din conditiile limita date si din conditiile de continuitate. Totusi
folosirea unui asemenea polinom de un grad mare are un sir de inconveniente. In particular sunt greu de determinat
www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 5/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

valorile extreme. Abordarea alternativa consta in faptul ca se imparte traiectoria miscarii in cateva portiuni si fiecare
din acestea se interpoleaza cu un polinom de grad mic.

Exista diferite mijloace de impartire a traiectoriei in portiuni , fiecare din ele avand avantaje si dezavantaje. Urmatoarele
variante sunt cele mai raspandite :

Traiectoria fiecarei variabile articulare se imparte in trei portiuni. Prima portiune ce indica miscarea intre punctul initial
si cel de pornire este descrisa de un polinom de gradul 4. A doua portiune a traiectoriei intre punctul de pornire si
punctul de apropiere este descrisa de un polinom de gradul 3. Ultima portiune a traiectoriei dintre punctul de
apropiere si punctul final este descrisa de un polinom de gradul

Pentru a obtine o buna precizie de pozitionare trebuie sa fragmentam traiectoria in cel putin trei portiuni :

o portiune de pornire , la sfarsitul careia se ating viteza si acceleratia maxima ;

o portiune de-a lungul careia se pastreaza constante viteza si acceleratia iar EE parcurge cea mai mare parte a
traiectoriei;

o portiune finala , de pozitionare.

Uneori, in functie de necesitati, si portiunea mediana se imparte la randul ei in mai multe portiuni, daca exista
obstacole sau daca se impune modificarea parametrilor cinematici.

Fig. 1.O modalitate de fragmentare a traiectoriei.

A = punctul initial

B = punctul de plecare

C = punctulde apropiere

D = punctul final

AB = portiunea de pornire ;

BC = portiunea de-a lungul careia se pastreaza constante viteza si acceleratia ;

CD = portiunea finala , de pozitionare.

Aceasta fragmentare este necesara in primul rand datorita exigentelor impuse de precizia de pozitionare. Evident
ca este necesara o prima portiune de accelerare de la viteza initiala ( de cele mai multe ori zero ) la cea de regim.
Portiunea finala este necesara pentru a putea realiza o puternica decelerare ( de obicei pana la viteza zero ) , fara de
care nu s-ar putea realiza pozitionarea exacta.

Sectionarea traiectoriei in portiuni se produce ca si pentru 4-3-4 , dar se folosesc alte polinoame de interpolare. Se
foloseste functia “spline” cubica cand se sectioneaza traiectoria in cinci portiuni. Numarul polinoamelor folosite pentru
descrierea completa a traiectoriei pentru un RI cu N grade de libertate este 3xN , iar numarul coeficientilor de

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 6/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

determinat este 7xN. In acest caz , se cere sa se determine extremele pentru toate cele 3N portiunile ale
traiectoriilor. In urmatorul subcapitol vom examina schemele de planificare a traiectoriilor 4-3-4 si ale traiectoriilor
date de functii cubice spline.

3.1. Calculul traiectoriei in cazul 4-3-4.

In legatura cu faptul ca pentru fiecare portiune a traiectoriei se cere sa se determine N traiectorii ale variabilelor articulare ,
este comod sa se foloseasca timpul normat t , tI[0,1]. Aceasta permite sa se obtina caracterul unitar al ecuatiilor ce
descriu schimbarea fiecareia dintre variabilele articulare pe fiecare portiune a traiectoriei. Astfel timpul normat se va
schimba de la t=0 ( momentul initial pentru fiecare din portiunile traiectoriei ) pana la t=1 ( momentul final pentru
fiecare din portiunile traiectoriei). Introducem urmatoarele notatii :

-) t , este timpul normat , tI

t este timpul real , masurat in secunde.

ti este momentul ( in timp real ) de terminare a portiunii “i” a traiectoriei;

-) ti = (ti ti-1 ) si este intervalul de timp real consumat pentru parcurgerea portiunii`i` a traiectoriei.

t = (t ti-1 ti ti-1 t I ti-1 ti ; tI


Traiectoria de miscare a variabilelor articulare `j` se indica sub forma unei succesiuni de polinoame hi(t). Pe
fiecare portiune a traiectoriei, pentru fiecare variabila articulara, polinoamele folosite exprimate in timp normat au
forma :

h1(t) = a14t4+a13t3+a12t2+a11t+a10 ( prima portiune )

h2(t) = a23t3+a22t2+a21t+a20 ( a doua portiune )

hn(t) = an4t4+an3t3+an2t2+an1t+an0 ( ultima portiune )

Indexul variabilei ce se afla in partea stanga a fiecarei egalitati indica numarul portiunii traiectoriei, portiunea “n”
fiind ultima. Indexul din notatiile coeficientilor necunoscuti aij au urmatorul inteles :

coeficientul `i` pentru portiunea `j` a traiectoriei.

Conditiile limita pe care trebuie sa le satisfaca sistemul ales de polinoame sunt urmatoarele :

Pozitia initiala q q(t0).

Valoarea vitezei initiale v0 ( de obicei este zero )

Valoarea acceleratiei initiale a0 ( de obicei zero )

Pozitia in punctul de pornire q q(t1)

Continuitatea in pozitie in momentul t1 , adica q(t1)= q(t1*)

Continuitatea in viteza in momentul t1 , adica v(t1)= v(t1*)

Continuitatea in acceleratie in momentul t1 , adica

a(t1)= a(t1*)

Pozitia in punctul q q(t2)

Continuitatea in pozitie in momentul t2 , adica q (t2)= q(t2*)

Continuitatea in viteza in momentul t2 , adica v(t2)= v(t2*)

Continuiotatea in acceleratie in momentul t2 , adica

a(t2)= a(t2*)

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 7/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

Pozitia finala qf q (tf)

Valoarea vitezei finale vf ( de obicei nula )

Valoarea acceleratiei finale af ( de obicei nula )

vi(t) = dhi(t)/dt = dhi(t)/dt x dt/ dt ti ti-1 ] x dhi(t)/dt = 1/ti dhi(t) /dt = [1/ti] fi(t) , i=1,2,..,n (1)

ai(t) = dh2i(t)/dt ti ti-1 ]2 x d2hi(t)/dt2 = 1/ti2 dh2i(t) /dt2 =

= [1/ti2] fi(t) , i=1,2,..,n (2)

Pentru descrierea primei portiuni a traiectoriei se foloseste un polinom de gradul 4.

h1(t) = a14t4+a13t3+a12t2+a11t +a10 , tI (3)

Luand in consideratie egalitatile (1) si (2) viteza si acceleratia de pe aceasta portiune au aspectul :

v1(t) = d[h(t)]/t1 = [ 4a14t3+3a13t2+2a12t+a11]/t1 (4)

a1(t) = d2[h(t)]/t12 = [ 12a14 t2+ 6a13t + 2a12 ]/t12 (5)

Pentru t=0 ( punctul initial al portiunii date a traiectoriei ) Din conditiile limita in acest punct rezulta :

a10 = h1(0) = q q dat ) (6)

v0 = h1(0)/t1 = i=0 = a11/t1 (7)

Din aceasta avem a11 = v0t1 si

a0 = d[hi(0)]/t12 = i=0 = 2a12/t12 (8)

Substituind valorile obtinute ale coeficientilor in egalitatea (3.) vom obtine :

h1(t) = a14t4 + a13t3 +[a0t13/2]t2+(v0t1) t + q tI (9)

Pentru t=1 ( punctul final al portiunii date a traiectoriei )

In acest punct vom reduce conditiile limita aplicate, excluzand cerinta deplasarii precise a traiectoriei prin pozitia data , dar
pastrand conditiile privind continuitatea vitezei si a acceleratiei. Aceste conditii semnifica faptul ca viteza si acceleratia la
capatul primei portiuni a traiectoriei trebuie sa coincida cu viteza si acceleratia de la inceputul portiunii a doua. La capatul
primei portiuni viteza si acceleratia sunt egale in mod corespunzator :

v1(1) = v1 = dh1(1)/t1 = [4a14+3a13+a0t12+v0t1]/t1 (10)

a1(1) = a1 = d2h1(1)/t12 = [12a14 + 6a13 + a0t12]/t12 (11)

Pentru descrierea portiunii a doua a traiectoriei se foloseste un polinom de gradul al treilea.

h2(t) = a23t3+a22t2+a21t+a20 , tI (12)

1). Pentru t=0 ( punctul de plecare ) folosind egalitatile (1) si (2) avem in acest punct :

h2(0) = a20 = q (13)

v1= dh2(0)/t2=i=0 = a21/t2 (14)

De aici rezulta ca :

a1 = dh2(0)/t22 = i=0 = 2a22/t22 (15)

si se obtine a22 = a1t22/2

Intrucat in acest punct viteza si acceleratia trebuie sa coincida in mod corespunzator cu viteza si acceleratia din punctul final
al portiunii anterioare a traiectoriei se impun egalitatile :

h2(0)/t2 = h1(1)/t1 si h2(0)/t22 = h1(1)/t12 (16)

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 8/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

care conduc in mod corespunzator la urmatoarele conditii :

[( 3a23t2+2a22t+a21)/t2]i=0 = [( 4a14t3+3a13t2+2a12t+a11)/t1]i=1 (17)

sau ,

a21/t2+4a14/t1+3a13/t1+a0t12/t1+v0t1/t1 =0 (18)

si

[(6a23t+2a22)/t22]i=0 = [( 12a14t2+6a13t+2a12)/t12]i=1 (19)

sau

2a22/t22+12a14/t12+6a13/t12+a0t12/t12=0 (20)

2) Pentru t=1 ( punctul de apropiere) In acest punct viteza si acceleratia trebuie sa coincida cu viteza si acceleratia
din punctul initial al urmatoarei portiuni a traiectoriei. Pentru punctul examinat avem ;

h2(1)=a23+a22+a21+a20 (21)

v2(1) = h2(1)/t2 = [( 3a23t2+2a22t+a21)]i=1 = [ 3a23+2a22+a21]/t2 (22)

a2(1) = h2(1)/t22 = [(6a23t+2a22)/t22]i=1 = [6a23+2a22]t22 (23)

In descrierea ultimei portiuni a traiectoriei se foloseste un polinom de gradul 4.

, tI (24)

In aceasta egalitate se inlocuieste t cu t`= t-1 si se examineaza dependenta de noua variabila t` si fata de aceasta vom
efectua deplasarea in timp normat. Ddaca variabila t apartine intervalului [0 , 1] , atunci variabila t` apartine intervalului de
[-1 , 0] .

Astfel , egalitatea (24) va avea forma :

, tI (25)

In final vom gasi viteza si acceleratia pe ultima portiune: , (26)

, (27)

Pentru t`= 0 (punctul final al portiunii examinate a traiectoriei).

In concordanta cu conditiile limita din acest punct avem:

hn(0) = an0 = qf (28)

vf =h`n (0)/ tn = an1 /tn , (29)

De aici rezulta:

an1 = vf tn .

Mai departe ,

af =h`n(0) / tn2 =2an2 / tn2 (30)

si in final :

an2 =aftn2 / 2.

Pentru t`=1

In concordanta cu conditiile limita din punctul de apropiere obtinem :

hn(-1)=an4 - an3 + [ aftn2 / 2 ] -vf tn+ qf q (31)


www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 9/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

hn(-1)/tn= (32)

(33)

Conditiile de continuitate a vitezei si a acceleratiei din punctul de apropiere se noteaza in modul urmator :

[h`2(1) / t2 ]=[ h`n(-1) / tn ] si [h`2(1) / t22 ]=[h`n(-1) / tn2 ] , (34)

sau

0 , (35)

si

0 (36)

d q q = h1 (1)-h1(0) = a14 + a13 +[a0 t12 / 2]+ v0t1 , (37)

d q q = h2 (1)-h2(0) = a23 + a22 + a21 , (38)

dn qf q = hn (0)-hn (-1) =-an4 + an3 - [af tn2 / 2] + vf tn .(39)

Toti coeficientii necunoscuti din polinoame ce descriu schimbarea variabilei articulare pot fi determinati prin rezolvarea in
comun a ecuatiilor (37) , (18) , (20) , (38) , (39) si (35) .

Prezentand acest sistem de ecuatii in forma matriceala , vom obtine :

y =Cx , (40)

unde

(41)

, (42)

x = ( a13 , a14 , a21 , a22 , a23 , an3 , an4 , )T (43)

Astfel , problema planificarii traiectoriei conduce la rezolvarea ecuatiei vectoriale (40) :

, (44)

sau x = C-1y. (45)

Structura matricei C permite sa se gaseasca usor coeficientii necunoscuti. Pe langa aceasta , matricea inversa C exista
intotdeauna numai daca intervalele de timp ti (cand i = 1,2,n ) sunt pozitive . Rezolvand ecuatia (45) obtinem toti coeficientii
necunoscuti ai polinoamelor care descriu traiectoria coordonatei articulare “j” . Intrucat pentru polinomul ce descrie ultima
portiune a traiectoriei a fost efectuata inlocuirea ce porneste ( ce muta ) intervalul schimbarii timpului normat , atunci , dupa
determinarea coeficientilor ani din ecuatia (45) , este necesar sa se efectueze inlocuirea inversa , ce consta in substituirea
t`=t-1 in egalitatea (25). Ca rezultat obtinem :

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 10/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

hn(t)=an4 t4 +(-4an4 +an3 )t3 +(6an4 -3an3 +an2 )t2 +(-4an4 +3an3 -2an2 +an1 )t+(an4 -an3+an2-an1+an0) , tI (46)

Pentru prima portiune a traiectoriei obtinem :

h1(t)=[d -v0t1 -(a0t12 / 2)- o ]t4 +ot3 +[a0t12 / 2]t2 +(v0f1)t+qo

v1 =(h`1(1) / t1)= (4d / t1 ) -3v0 -a0t1 -(o /t1 )

a1 =(h`1(1) / t12 )=(12d / t1 )-(12v0 / t1 )-5ao-(6o / t12 ).

Pentru a doua portiune a traiectoriei obtinem :

h2(t)=[d -v1t2 - (a1 t22 / 2 )]t3+[a1t22 / 2]t2+(v1t2)t+q

v2=[h`2(1) / t2]=(3d / t2)-2v1 -(a1t2 / 2) , (47)

a2=[h`2(1) / t22]=(6d / t22) - (6v1 / t2)-2a1t2 .

Pentru ultima portiune a traiectoriei obtinem :

hn(t)=[9dn -4v2tn - (a2tn2 / 2)-5vftn+(aftn2 / 2)]t4+[-8dn+5vftn-(aftn2 / 2)+3v2tn]t3+ +[a2tn2 / 2]t2+ (v2tn)t+q

unde o=f/g , si

f=2d [4+(2tn /t2 )+(2tn / t1 )+(3t2 / t1)]- (d t1 / t2)[3+(tn / t2)]+(2dnt1 / tn)-v0t1[6+(6t2 / t1)+ +(4tn / t1 )+(3tn / t2
)]-vft1 -a0t1tn[(5/3)+(t1 / t2)+(2t1 / tn)+(5t2 / 2tn)]+aft1tn ,

g=(tn / t2)+(2tn / t1)+2+(3t2 / t1)

Calculul traiectoriei in cazul interpolarii cu polinoame pentru traiectoria 3-5-3 .

Prima portiune a traiectoriei este deescrisa de :

h1(t)=[d -v0t1 -(a0t12 / 2)]t3+[a0t12 / 2]t2+(v0t1 )t+q

v1=[h`1(1) / t1]=(3d / t1)-2v0 -(a0t1 / 2) , (49)

a1=[h`1(1) / t12] = (6d / t12)-(6v0 / t1 )-2a0 .

A doua portiune a traiectoriei :

h2(t)=[6d -3v1t2 -3v2t2-(a1t22 / 2)+(a2t22 / 2)]t5+[-15d +8v1 t2+7v2t2+(3a1t22 / 2 )-a2t22]t4+[10d -6v1t2-4v2t2-


(3a1t22 / 2)+(a2t22 / 2)]t3+[a1t22 / 2]t3+[a1t22 / 2]t2+(v1t2)t+q

v2=[h`2(1) / t2]=(3dn / tn)-2vf+(aftn / 2), (50)

a2=[h`2(1) /t22]=(-6dn / tn2)+(6vf / tn)-2af.

Ultima portiune a traiectoriei :

hn(t)=[dn-vftn+(aftn / 2)]t3+(-3dn+3vftn-aftn2)t2+[3dn-2vftn+(aftn2 / 2)]t+q (51)


www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 11/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR
Calculele analoage se utilizeaza la calcularea traiectoriei in alte situatii.

3.2.Descrierea traiectoriei cu functii “spline” cubice.

Interpolarea functiei date cu functii polinomiale cubice care asigura continuitatea primelor doua derivate in punctele nodale se
numeste functie splina cubica. Un asemenea mijloc de interpolare asigura o precizie suficienta aproximatiei si netezimea
functiei de aproximare . In general splina este in fiecare punct un polinom de gradul k cu derivatele “k-1” continui in punctele
nodale. In cazul “splinelor” cubice continuitatea primei derivate asigura continuitatea vitezei , iar continuitatea celei de-a
doua derivate semnifica continuitatea acceleratiei . Functiile splinele cubice au un sir intreg de calitati . In primul rand acestea
sunt polinoame de grad minim care asigura continuitatea vitezei si acceleratiei . In al doilea rand gradul mic al polinoamelor
utilizate scurteaza timpul de calcul.

La folosirea splinelor cubice fiecare din cele cinci portiuni ale traiectoriei se descrie cu un polinom ce are aspectul:

hj(t)=aj3t3+aj2t2+aj1t+aj0 , j=1,2,3,4,n (52)

cand tj-1 t tj tI[0 , 1] , aij semnifica coeficientul necunoscut i ce corespunde portiunii j a traiectoriei, portiunea n a
traiectoriei fiind ultima . Utilizarea functiilor splinelor cubice presupune existenta a cinci portiuni ale traiectorii si sase
puncte nodale . Totusi in rationamentele noastre anterioare noi am folosit numai patru puncte nodale : punctul initial ,
punctul de pornire , punctul de apropiere si punctul final .

Pentru a asigura un numar suficient de conditii limita pentru determinarea coeficientilor necunoscuti aji sunt necesare inca
doua puncte nodale. Aceste puncte nodale suplimentare se pot alege pe segmentul traiectoriei intre punctul de pornire si
punctul de apropiere . Nu este necesar sa se cunoasca precis valoarea coordonatei din aceste puncte , este suficient sa se
indice momentele de timp si sa se ceara continuitatea vitezei si acceleratiei. In acest mod sistemul ales de polinoame de
interpolare trebuie sa satisfaca urmatoarele conditii limita :

1) coordonata trebuie sa ia valorile date in punctul initial , in punctul de plecare , in punctul de apropiere si in punctul final ;

2) viteza si acceleratia trebuie sa fie continui in toate punctele nodale . Valorile acestor variabile sunt cunoscute pana la
inceperea calcului traiectorie planificate . Prima si a doua derivata ale polinoamelor in raport cu timpul real sunt egale in mod
corespunzator cu :

vj(t)=[h`j(t) / tj]=3aj3t2+2aj2t+aj1 , j=1,2,3,4,n, (53)

aj(t)=[h`j(t) / tj2]=(6aj3t+2aj2) / tj2 , j=1,2,3,4,n, (54)

unde tj este intervalul de timp real consumat la parcurgerea portiunii j a traiectoriei . Pozitia, viteza si acceleratia ce
au fost date in punctul initial si in cel final ale traiectoriei ca si pozitia din punctul de pornire si de apropiere determina
pe deplin coeficientii polinoamelor h1 (t) si hn (t) ce descriu portiunea initiala si cea finala a traiectoriei . Cand se
cunosc h1 (t) si hn (t) coeficientii polinoamelor h2 (t) , h3 (t) , h4(t) se determina din conditiile continuitatii in
punctele nodale .

Prima portiune a traiectoriei este descrisa de polinomul :

h1(t)=a13t3+a12t2+a11t+a10 . (55)

Cand t = 0 in concordanta cu conditiile initiale avem :

h1(0)=a10=q q este dat ) , (56)

v0 = . (57)

De aici obtinem a11=v0t1. In continuare

a0 = (58)

rezulta ca :

a12 = a0t12 / 2 .

Cand t = 1 in concordanta cu conditia aplicata pozitiei in punctul de pornire , avem :

h1(1) = a13+ (a0t12 / 2)+ v0t1+ q q

Din aceasta este usor de dedus ca :

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 12/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

a13-o1-v0t1 -(a0t12 / 2 ) , (60)

unde d qi qi-1. In acest mod prima portiune a traiectoriei este determinata complet

h1(t) = [d -v0t1 -(a0t12 / 2)]t3+[a0t12 / 2]t2+(v0t1) +q

In concordanta cu expresia (56) viteza si acceleratia in punctul final al primei portiuni a traiectoriei sunt egale cu :

(62)

, (63)

Aceasta viteza si acceleratie trebuie sa coincida in mod corespunzator cu viteza si cu acceleratia din punctul initial al
urmatoarei portiuni a traiectoriei. Ultima portiune a traiectoriei este descrisa de polinomul :

hn(t)= an3t3+ an2t2+ an1t+ an0. (64)

Folosind conditiile limita pentru t = 0 si t = 1 , obtinem :

hn(0)= an0= qn qn este dat), (65)

hn(1)= an3+ an2+ an1+ qn qf (66)

h`n(1)= vf= (3an3+2an2+ an1 ) / tn , (67)

[h`n(1) / tn2]= af= (6an3+2an2) / tn2 (68)

Rezolvand aceste ecuatii in raport cu coeficientii necunoscuti an3 , an2 , an1 , obtinem :

hn(t)=[dn -vftn +(aftn2 / 2)]t3 +(-3dn+3vftn-aftn2)t2+[3dn-2vftn+(aftn2) / 2]t+qn (69)

unde dn qf qn

A doua portiune a traiectoriei este descrisa de polinomul:

h2(t)=a23t3+a22t2+a21t+a20 . (70)

Din conditiile continuitatii pentru pozitie , viteza si acceleratie in punctul de pornire gasim :

h2(0)=a20=q q este cunoscut ) (71)

v1=h`2(0) / t2=a21 / t2 =h`1(1) / t1. (72)

De aici rezulta a21 = v1t2 ,

a1= h`2(0) / t22 =(2a22) / t22=h`1(1) / t12 (73)

si urmeaza : a22=(a1t22) /2.

Luand in consideratie coeficientii gasiti se poate nota

h2(t)= a23t3+ [(a1t22) / 2]t2+ (v1 t2)+ q (74)

unde v1=(3d )/ t1 -2v0-(a0t1 )/ 2 , a1=(6d ) /t12-(6v0) /t1 -2a0

Ramane sa se determine coeficientul a23. Cu ajutorul egalitatii (69) vom determina viteza si acceleratia cand t = 1 , care
trebuie sa coincida in mod corespunzator cu viteza si cu acceleratia din punctul initial al portiunii urmatoare a traiectoriei :

h2(1)= q = a23+ (a1t22)/ 2+ v1t2+ q (75)

h`2(1) / t2= v2= (3a23+ a1t22+ v1t2) / t2= v1+ a1t2+ (3a23)/ t2 , (71)

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 13/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

h``2(1) /t22= a2= (6a23+a1t22) /t22=a1+(6a23) / t22. (76)

Observam ca fiecare din marimile q , v2 si a2 depind de valoarea a23 .

A treia portiune a traiectoriei este descrisa de polinomul :

h3(t) = a33t3+ a32t2+ a31t+ a30 . (77)

In punctul t = 0 , din concordanta cu conditiile de continuitate a pozitiei, a vitezei si a acceleratiei avem :

h3(0) = a30= q = a23+ (a1t22) / 2+ v1t2 + q , (78)

v2 = [h3(0)] / t3= a31 / t3 = h2(1) / t2. (79)

In acest mod , a31 =v2t3.

In continuare ,

a2 = h3(0) / t32= (2a32) / t32 = h``2(1) / t22 . (80)

De aici vom obtine :

a32 =(a2t32) / 2 .

Substituind valorile gasite (obtinute) ale coeficientilor din expresia (73), obtinem :

h3(t) =a33t3+[(a2t32) / 2]t2 +v2t3t+q (81)

Vom determina in punctul t = 1 valorile vitezei si acceleratiei care trebuie sa coincida cu caracteristicile
corespunzatoare din punctul initial al portiunii urmatoare :

h3(1)= q q + v2t3+ [(a2t32) / 2]+a33 , (82)

[h`3(1) / t3]= v3 [3a33+ a2t32 + v2t3] /t3= v2+a2t3+(3a33) / t3 , (83)

[h``3(1) /t32]= a3= (6a33+ a2t32]/ t32= a2+(6a33) /t32. (84)

Observam ca fiecare din marimile q , v3 si a3 depinde de a33.

A patra portiune a traiectoriei este descrisa de polinomul

h4(t)= a43t3 + a42t2+a41t + a40 . (85)

Folosind conditiile aplicate pozitiei in punctul de apropiere ca si conditiile de continuitate a vitezei si acceleratiei din acest
punct , obtinem :

h4(0)= a40= q q +v2t3+ (a2t32) / 2+a33 , (86)

v3=h`4(0)/ t4=a41 / t4 = h`3(1) / t3, (87)

care da :

a41= v3 t

In continuare :

a3= h``4 (0) /t42 = (2a42) / t42= h``3(1) /t22. (88)

De aici obtinem:

a42=(a3t42) / 2.

Substituind expresiile gasite pentru coeficientii din egalitatea (80), obtinem :

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 14/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

h4(t)= a43 t3 +[(a3t42) / 2 ]t2+ (v3t4)t+ q3 , (89)

unde q , v3 si a3 se determina in mod corespunzator cu egalitatile (87) , (88) si (89) , iar coeficientii a23 , a33 si a43
sunt ca si inainte necunoscuti. Cu ajutorul acestor coeficientii trebuie determinate in intregime polinoamele ce descriu
cele trei portiuni de mijloc ale traiectoriei. Pentru aceasta ne vom folosi de conditiile din punctul limita dintre a patra
portiune si ultima portiune a traiectoriei :

h4(1)= a43+ (a3t42) / 2 + v3t4 + q q , (90)

h`4(1)/t4= (3a43) /t4 + a3 t4 + v3 = v4 =(3dn) / tn -2vf + (aftn)/ 2 (91)

h``4(1) / t42 =ba43 / t42 + a3 = a4 =(-6dn)/ tn2 +(6vf)/ tn -2af, (92)

Din aceste ecuatii se pot gasi valorile coeficientilor necunoscuti a23 , a33 si a43. Ca rezultat toate polinoamele vor fi
determinate in intregime. In continuare este prezentat aspectul final al acestor polinoame :

h1 (t) = [d -v0t1 -(a0t22 / 2)]t3+ [(a0t12) / 2]t2+ (v0t1)t+ q

v1=(3d ) / t1 -2v0 -(a0t1 ) / 2 ; (94)

a1=(6d ) / t12-(6v0 ) / t1 -2a0 ; (95)

h2(t) =a23t3+[(a0t22) / 2]t2+ (v1t2)t+ q , (96)

q = a23 +(a1t22) / 2 + v1t2+ q , (97)

v2= v1+ a1t2 + (3a23) / t2 ; (98)

a2= a1+ (6a23) / t22 ; (99)

h3(t) = a33 t3 + [(a2t32) / 2]t2 + (v2t3)t + q (100)

q q +v2t3 + [(a2t32) / 2]+ a33 , (101)

v3 = v2 + a2t3 + [(3a33) / t3]; a3 = a2+(6a33) / t32 , (102)

h4(t)= a43t3 + [(a3t42) / 2]t2+ (v3t4)t + q (103)

hn(t) = [dn -vftn +(aftn2) / 2]t3+ (-3dn+3vffn -aftn2)t2 + [3dn -2vftn+(aftn2) / 2]t + q , (104)

v4 = [(3dn) / tn] -2vf+ [(aftn) / 2]; a4 = [(-6dn) / tn2]+ [(6vf) / tn]-2af ; (105)

a23 = t22(x1/D) , a33 = t32(x2/ D) , a43 = t42(x3/D) , (106)

In plus:

x1 = k1 (u-t2) + k2(t42-d) - k3 [(u-t4)d + t42(t4-t2)] , (107)

x2 = -k1 (u+t3) + k2(c-t42)+ k3 [(u-t4)c+ t42(u-t2)] , (108)

x3 = k1 (u-t4) + k2(d-c) +k3[(t4-t2)c -d(u-t2)] , (109)

D = u(u-t2)(u-t4) , (110)

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 15/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR
u = t2 + t3 + t4 , (111)

k1 = q q -v1u -a1(u2/2) , (112)

k2 = [v4- v1 -a1 u -(a4-a1)u/2] / 3 (113)

k3 = (a4-a1) / 6 , (114)

c = 3u2 -3ut2 + t22 , (115)

d = 3t42 + 3t3t4 + t32 , (116)

In acest mod se demonstreaza ca daca sunt cunoscute pozitiile din punctul initial si din cel final , din punctul de pornire si din
cel de apropiere ca si timpul miscarii pe fiecare din portiunile traiectoriei , cu acestea este definita complet functia splina
cubica ce da regula de variatie a coordonatelor articulare. In acest subcapitol am examinat constructia functiei “splinei” cubice
pentru o traiectorie cu cinci puncte nodale.

4. Planificarea traiectoriilor in coordonate carteziene

In subcapitolul anterior au fost examinate modurile de constructie a traiectoriilor in spatiul variabilelor articulare bazat pe
utilizarea polinoamelor de interpolare de ordin mic. Desi coordonatele articulare determina complet pozitia si orientarea EE in
spatiul cartezian, coordonatele articulare nu sunt intotdeauna utile. Aceasta este conditionata de faptul ca majoritatea
coordonatelor articulare ale manipulatorului nu sunt ortogonale si nu permit schimbarea independenta a pozitiei si orientarii
EE. Strategia de conducere a RI se prezinta de obicei sub forma unei succesiuni a punctelor nodale in spatiul operational prin
care trebuie sa treaca EE. In legatura cu aceasta este necesar un aparat matematic ce permite sa se descrie atat punctele
nodale prin care trebuie sa treaca EE cat si curba spatiala ( traiectoria ) ce uneste aceste puncte.

Paul a propus un mijloc de planificare a traiectoriei EE in spatiul operational care consta dintr-o succesiune de portiuni
rectilinii. Intre portiunile rectilinii ale traiectoriei miscarea se realizeaza cu ajutorul interpolarii patratice. Portiunile rectilinii ale
traiectoriei miscarii sunt obtinute ca rezultat al rezolvarii problemei cinematice inverse a punctelor din spatiul variabilelor
articulare. Metoda propusa de Paul a fost dezvoltata si perfectionata de Tailor pe seama folosirii unui aparat cu cuaterniomi
pentru descrierea orientarii EE.

Proprietatile cuaterniomilor au permis sa se simplifice calculul pentru descrierea miscarii de rotatie a EE intre punctele nodale.
Toate abordarile mentionate privind planificarea traiectoriilor rectilinii in spatiul operational le vom examina in urmatoarele
doua subcapitole.

4.1 Metoda ce foloseste matricea transformarii omogene.

In sistemele de programare a miscarii robotilor miscarea manipulatorului poate fi descrisa ca o succesiune de puncte nodale
in spatiul operational. Fiecare dintre aceste puncte este descris de matricea transformarii omogene care face legatura intre
sistemul de coordonate al EE si sistemul fix. Valorile coordonatelor articulare ce corespund pozitiilor EE in punctele nodale ale
spatiului operational se obtin prin rezolvarea problemei cinematice inverse. In continuare pentru a realiza conducerea EE
traiectoria intre doua puncte nodale succesive in spatiul variabilelor articulare se interpoleaza cu un polinom de gradul doi. Ca
rezultat conducerea RI se realizeaza astfel incat EE sa se miste pe o linie dreapta ce uneste aceste puncte. Avantajul unui
asemenea mijloc de conducere este posibilitatea de a manipula obiecte aflate in miscare. Desi pozitia EE din punctele nodale
este descrisa in intregime de matricea de transformare omogena. Paul a propus sa se foloseasca pentru realizarea trecerii
dintr-un punct nodal in altul o translatie si doua rotatii

In general pozitia pe care trebuie sa o ocupe RI se determina cu urmatoarea ecuatie principala :

0T 6T = 0Cbaza(t)bazaPobiect (117)
6 unealta

unde ,

T6 este matricea pentru transformarea omogena ce are dimensiunea 4x4 si care descrie pozitia si orientarea EE
in sistemul de baza;

Tunealta este matricea transformarii omogne ce ar dimensiunea 4x4 si care descrie pozitia si orientarea uneltei
in raport cu sistemul de coordonate al EE. Mai precis, aceasta matrice descrie pozitia parti uneltei ce actioneaza direct
si a carei miscare trebuie condusa;

Cbaza(t) este matricea transformarii omogene ce are dimensiunea 4x4 si care este functie de timp. Aceasta
matrice descrie pozitia sistemului de lucru al coordonatelor obiectului manipulat in raport cu sistemul de baza al
coordonatelor;

bazaP
obiect este matricea transformarii omogene ce are dimensiunea 4x4 si care descrie pozitia si orientarea
data a obiectului ce se manipuleaza in momentul apucarii lui si in raport cu sistemul de lucru.

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 16/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

Daca matricea 6Tunelta este inclusa deja in matricea 0T6 , in ecuatia (117) , matricea 0T6 , in ecuatia (117)
matricea 6Tinstrument este unica si ea poate fi omisa.

Daca sistemul de lucru al coordonatelor obiectului coincide cu sistemul de baza al coordonatelor manipulatorului , atunci
0C
baza(t) reprezinta o matrice unica in oricare moment de timp. Se poate observa ca partea stanga a ecuatiei (117) descrie
pozitia si orientarea EE in momentul apucarii obiectului , in timp ce partea dreapta a acestei ecuatii descrie pozitia si
orientarea partii din obiectul de manipulat supusa apucarii. In acest mod putem determina matricea 0T6 care stabileste
configuratia RI, necesara pentru realizarea corecta a apucarii obiectului sub forma :

0T =0C bazaP 6 -1
6 baza(t) obiect [ Tunelata] (118)

Daca s-ar fi putut sa se calculeze destul de repede elementele matricei 0T6 si apoi sa se determine variabilele
articulare, aceasta ar fi fost suficient pentru realizarea conducerii manipulatorului.

4.2. Traiectoria cu abateri limita


Modul descris mai sus de formare a traiectoriei in coordonate carteziene cere un consum mare de timp pentru calcul. Pe langa
aceasta in timp real este prea complicat sa se realizeze evaluarea limitelor miscarii RI in spatiul coordonatelor interne. Exista
un numar de posibilitati pentru a inlatura aceste probleme. Este posibil ca din timp (pana la realizarea miscarii ) sa se
primeasca si sa se inregistreze in memoria calculatorului rezolvarea problemei cinematice inverse simuland functionarea
algoritmului.

Realizarea miscarii date, in acest caz, nu este dificila intrucat succesiunea punctelor de comanda va fi citita din
memoria calculatorului . O alta cale posibila consta in calcularea din timp a valorilor coordonatelor printr-o succesiune
oarecare a punctelor fiecareia dintre portiunile traiectoriei si apoi sa se realizeze interpolarea cu polinoame de grad
inferior. Dificultatea unei asemenea abordari consta in faptul ca numarul punctelor intermediare necesare pentru
realizarea miscarii ce este destul de aproape de o miscare rectilinie, depinde de miscarea realizata. Alegerea apriorica
a intervalului este destul de mica pentru a asigura mici abateri de la miscarea rectilinie si conduce la o mare crestere
a volumului calculelor preliminare si a resurselor folosite ale memoriei. Avand in vedere toate acestea Tailor a propus
un mijloc de planificare a traiectoriilor in spatiul variabilelor articulare denumit traiectorii cu abateri limitate .

In etapa calculelor preliminare, aceasta metoda permite alegerea unui numar de puncte intermediare suficient
pentru ca abaterile traiectoriei planificate a EE de la miscarea rectilinie sa nu depaseasca limitele stabilite .

In cazul unei asemenea abordari mai intai se calculeaza vectorii coordonatelor articulare “q” , ce corespund punctelor
modale ale traiectorei date in spatiul cartezian . Apoi vectorii calculati se folosesc in calitate de puncte nodale in
procedura de construire a traiectoriei de schimbare a variabilelor analoaga cu procedura folosita la construirea
traiectoriei in coordonate carteziene. Miscarea din punctul [q0 ] in punctul [q1 ] este descrisa cu ecuatia :

q(t) = q1-(T1-1)/T1Dq1 (119)

iar la trecerea de la portiunea dintre [qo]si [q1] la portiunea dintre [q1] si [q2] miscarea se stabileste cu formula

q(t`) = q1[(t-t`)2/4tT2] Dq1+ [(t-t`)2/4tT2] Dq2 (120)

unde Dq1= q1-q0 , Dq2= q2-q1 , T1 , T2 t` si t au acelasi sens ca si mai sus. Aceste ecuatii asigura o viteza constanta
pentru miscarea dintre punctele nodale in spatiul coordonatelor articulare si o trecere lina cu acceleratie constanta de
la o portiune a traiectoriei la alta portiune .

Totusi, in acest caz, sistemul de coordonate al EE poate sa se abata mult de la traiectoria rectilinie stabilita. Marimea abaterii
se caracterizeaza prin diferenta dintre Fj(t) ce descrie pozitia EE si care corespunde punctului qj(t) in spatiul variabilelor
articulare si Fd(t) ce descrie pozitia EE in momentul t cand al miscarii sale pe traiectoria rectilinie stabilita in spatiul cartezian.
Abaterile de la pozitie si de la orientare se stabilesc conform cu formulele:

dp = [Pj(t)-Pd(t)] (121)

dp = | partea unghiulara Rot(n,j j

unde Rot(n,j) = R-1d(t)Rj(t)

Stabilind abaterile maxime admise pentru pozitie si orientare dMAXR si dMAXP vom cere realizarea conditiilor :

dp<dMAXP si dR<dMAXR

Pentru aceasta este necesar sa se aleaga un numar suficient de puncte intermediare intre doua puncte nodale
succesive. Modul propus de Taylor pentru construirea unor traiectorii cu abateri limitate este in esenta un algoritm de
www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 17/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

construire succesiva a punctelor intermediare ce asigura realizarea conditiilor (122). Acest algoritm poseda o mare
convergenta, desi setul de puncte intermediare este format cu ajutorul algoritmului si nu este minim . Acest algoritm
este prezentat mai jos

Algoritmul de formare a traiectoriilor cu abateri limitate


In cazul abaterilor maxime stabilite dMAXR si dMAXP corespunzatoare pentru pozitia si orientarea nodale
stabilite Fi ale traiectoriei in spatiul cartezian, acest algoritm formeaza succesiunea punctelor nodale intermediare in
spatiul variabilelor articulare, succesiunea in care abaterile sistemului de coordonate al EE de la traiectoria rectilinie
stabilita in spatiul cartezian nu depasesc limitele stabilite. Etapele algoritmului sunt :

S1. Calcularea valorilor variabilelor .

Stabiliti vectorii coordonatelor [q0] si [q1] , ce corespund punctelor [F0] si[ F1] .

S2. Calcularea punctului mijlociu in spatiul variabilelor articulare . Calcularea punctului mediu [qm] in spatiul variabilelor

qm = q1-0,5 Dq1

unde Dq1= q1-q0 si calcularea pozitiri [Fm] a sistemului de coordonate a EE care corespunde valorilor coordonatelor
[qm] .

S3. Calcularea punctului mijlociu in spatiul cartezian. Calcularea punctul mijlociu corespunzator [Fc] al traiectoriei in spatiul
cartezian.

Pc = (P0+P1)/2 , Rc

unde Rot(n,q)=R-10R1

S Calcularea abaterii . Calcularea abaterii [Fm] de la dp=|pm-pc| , dR = | partea unghiulara Rot(n,j)=R-1cRm| = |j| ( mai
corect este sa se scrie dR = | partea unghiulara Rot(n, j j| , unde Rot(n, j) = R-1cRm

S5. Verificarea conditiei abaterilor . Daca dp<dMAX incheiati functionarea algoritmului. In caz contrar calculati vectorul
[qc] al coordonatelor ce corespund punctului [Fc] al traiectoriei carteziene si realizati pasii S2-S5 succesiv pentru
doua subintervale inlocuind [F1]cu [Fc] si [Fc] cu [F0]. Acest algoritm are o convergenta destul de rapida .

De regula la o singura iteratie abaterea maxima se micsoreaza aproximativ de 4 ori . Tailor a cercetat viteza
convergentei algoritmului prezentat pentru un RI cilindric (doua grade de libertate de translatie si doua de rotatie ).
S-a dovedit ca la o singura iteratie abaterea maxima se micsoreaza de maximum 4 ori . Astfel metoda de construire a
traiectoriilor cu abateri limitate consta in formarea unei succesiuni de puncte intermediare in spatiul variabilelor care
sa asigure miscarea EE in spatiul cartezian si in lungul traiectoriei. Aceasta abatere de la traiectoria rectilinie stabilita
nu depaseste limitele stabilite .

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 18/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR

Politica de confidentialitate

Copyright © 2020 - Toate drepturile rezervate.


.com Toate documentele au caracter informativ cu scop educational.

Proiecte
vezi toate proiectele
PROIECT DE LECTIE Clasa: I Matematica - Adunarea si
scaderea numerelor naturale de la 0 la 30, fara trecere
peste ordin
Proiect didactic Grupa: mijlocie - Consolidarea mersului in
echilibru pe o linie trasata pe sol (30 cm)
Redresor electronic automat pentru incarcarea bateriilor
auto - proiect atestat
Proiectarea instalatiilor de alimentare ale motoarelor cu
aprindere prin scanteie cu carburator

Lucrari de diploma
vezi toate lucrarile de diploma
Lucrare de diploma - eritrodermia psoriazica
ACTIUNEA DIPLOMATICA A ROMANIEI LA
CONFERINTA DE PACE DE LA PARIS (1946-1947)
Proiect diploma Finante Banci - REALIZAREA INSPECTIEI
FISCALE LA O SOCIETATE COMERCIALA
Lucrare de diploma managementul firmei “diagnosticul si
evaluarea firmei”

Lucrari licenta
vezi toate lucrarile de licenta
CONTABILITATEA FINANCIARA TESTE GRILA LICENTA
LUCRARE DE LICENTA - FACULTATEA DE EDUCATIE
FIZICA SI SPORT
Lucrare de licenta stiintele naturii siecologie - 'surse de
poluare a clisurii dunarii”
LUCRARE DE LICENTA - Gestiunea stocurilor de materii
prime si materiale

Lucrari doctorat
vezi toate lucrarile de doctorat
Doctorat - Modele dinamice de simulare ale accidentelor
rutiere produse intre autovehicul si pieton
Diagnosticul ecografic in unele afectiuni gastroduodenale
si hepatobiliare la animalele de companie - TEZA DE
DOCTORAT
LUCRARE DE DOCTORAT ZOOTEHNIE - AMELIORARE
- Estimarea valorii economice a caracterelor din obiectivul

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 19/20
27.01.2020 PLANIFICAREA TRAIECTORIILOR ROBOTILOR
ameliorarii intr-o linie materna de porcine

Proiecte de atestat
vezi toate proiectele de atestat
Proiect atestat informatica- Tehnician operator tehnica de
calcul - Unitati de Stocare
LUCRARE DE ATESTAT ELECTRONIST - TEHNICA DE
CALCUL - Placa de baza
ATESTAT PROFESIONAL LA INFORMATICA -
programare FoxPro for Windows
Proiect atestat tehnician in turism - carnaval la venezia

Fise tehnologice de sudare WPS


DATE NECESARE PROGRAMARII
NC
STABILIREA VITEZEI DE
PROIECTARE
Axioma legaturilor
SISTEMUL DE ALIMENTARE CU
COMBUSTIBIL
Transferul de caldura prin radiatie
Lucrul mecanic, puterea si
momentul motor
ALIAJELE ALUMINIULUI

Termeni si conditii
Contact
Creeaza si tu

www.creeaza.com/tehnologie/tehnica-mecanica/PLANIFICAREA-TRAIECTORIILOR-RO727.php 20/20

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