TITLUL PROIECTULUI : COMANDA NUMERICĂ A UNEI ARTICULAȚII ROBOTICE [619059]

1

i UNIVERSITATEA DIN CRAIOVA
FACULTATEA DE AUTOMATICĂ, CALCULATOARE ȘI
ELECTRONICĂ

DEPARTAMENTUL DE MECATRONICĂ ȘI ROBOTICĂ

PROIECT DE DIPLOMĂ

NUME SI PRENUME ABSOLVENT: [anonimizat] : PROF.UNIV.DR.ING. NIȚULESCU MIRCEA

ANUL SUSȚINERII : IULIE 2016

2

UNIVERSITATEA DIN CRAIOVA
FACULTATEA DE AUTOMATICĂ, CALCULATOARE ȘI ELECTRONICĂ

DEPARTAMENTUL DE MECATRONICĂ ȘI ROBOTICĂ

TITLUL PROIECTULUI : COMANDA NUMERICĂ A UNEI ARTICULAȚII ROBOTICE
NUME SI PRENUME ABSOLVENT: [anonimizat] : PROF.UNIV.DR.ING. NIȚULESCU MIRCEA

ANUL SUSȚINERII : IULIE 2016
CRAIOVA

3
„Învățătura este o comoară care își urmează stăpânul pretutindeni.”
Proverb popular

4
CUPRINSUL

1 LISTA FIGURILOR ………………………….. ………………………….. ………………………….. ………………………….. ……5
2 INTRODUCERE ………………………….. ………………………….. ………………………….. ………………………….. ………… 7
3 ROBOTUL ………………………….. ………………………….. ………………………….. ………………………….. ……………….. 8
3.1 DATE CRONOLOGICE ………………………….. ………………………….. ………………………….. …………………………. 8
3.2 DEFINIȚII SI PARTIC ULARITĂȚI ALE ROBOȚ ILOR ………………………….. ………………………….. …………….. 9
3.3 COMPONENTELE FUNDAMEN TALE ALE SISTEMULUI ROBOT ………………………….. ………………………….. 10
3.4 ROBOTUL .OBIECT CONDUCERE ………………………….. ………………………….. ………………………….. ……….. 11
3.5 CLASIFICAREA ROBOȚILO R ………………………….. ………………………….. ………………………….. ………………. 12
3.6 TIPURI DE ROBOȚI EXIS TENȚI ………………………….. ………………………….. ………………………….. ……………. 13
3.7 SISTEMUL SENZORIAL AL ROBOȚ ILOR……………………………………………….. …………………….. 18
3.8 APLICAȚII ALE ROBOȚIL OR………………………………………………….. ………………………….. …… 19
4 SCHEMA ELECTRONICĂ A PLATFORMEI ROBOTICE ………………………….. ………………………….. …… 20
4.1 SERVOMECANISMELE RC ………………………….. ………………………….. ………………………….. ………………… 21
4.2 CRITERII PENTRU ALEGE REA UNUI MICROCONTRO LLER ………………………….. ………………………….. …… 22
4.3 SCHEMA BLOC A UNUI MI CROCONTROLLER ………………………….. ………………………….. …………………… 23
4.4 PARTICULARIZARE . MICROCONTROLLER -UL PIC18F46K80 ………………………….. ………………………….. 24
4.5 DISPOZITIVE I/O ………………………….. ………………………….. ………………………….. ………………………….. . 26
4.6 MODULE TIMER ………………………….. ………………………….. ………………………….. ………………………….. .. 27
5 MICROCONTROLLER -UL PIC18F46K80 ………………………….. ………………………….. ………………………….. 28
6 MATERIALE FOLOSITE ÎN STRUCTURA CORPULU I LA CONSTRUCȚIA ROB OTULUI ………… 34
6.1 PROIECTAREA HARDWARE GENERALĂ A ROBOTULUI ………………………….. ………………………….. ……… 35
7 CODUL SURSĂ ………………………….. ………………………….. ………………………….. ………………………….. ……… 45
8 CONCLUZII ………………………….. ………………………….. ………………………….. ………………………….. …………… 52
9 BIBLIOGRAFIE ………………………….. ………………………….. ………………………….. ………………………….. ……… 53
10 REFERINȚE WEB ………………………….. ………………………….. ………………………….. ………………………….. …… 55
11 CD /DVD……. ……………….. ……………….. ……………….. ……………….. ……………….. ……………….. ………57

5

1 LISTA FI GURILOR
Figura 3.0 Componentele unui sistem robotic – pagina 4
Figura 3.1 Soluții constructive privind principalele blocuri ale unui si stem – pagina 5
Figu ra 3.2 Robot cu braț articulat cu 5 articulații – pagina 7
Figura 3.3 Spațiul de lucru (roșu) al unui robot cu 5 articulații – pagina 7
Figura 3.4 Robot cu braț articulat , cu 6 articulații – pagina 8
Figura 3.5 Spațiul de lucru (roșu) al unui robot cu 6 articulații – pagina 8
Figura 3.6. Robot SCARA cu 4 articulații – pagina 9
Figura 3.7 Robot SCARA cu 4 articulații – pagina 10
Figura 3.8 Exemplu de robot portal cu 3 grade de libert ate – pagina 10
Figura 3.9 Spațiul de lucru al unui robot portal cu 3 grade de libertate – pagina 11
Figura 4.1 Schema electronică a platformei robotice – pagina 14
Figura 4.2 Servomecanism RC – pagina 15
Figura 4.3 Comanda PWM a servo mecanismelor RC – pagina 15
Figura 4.4 Schema bloc microcontroller – pagina 17
Figura 4.5 Particularizare. Diagrama bloc a microcontrollerului PIC18F46K80 – pagina 18
Figura 4.6 Diagrama bloc a microcontrollerului PIC18F46K80 – pagina 19
Figura 5.0 PIC18F46K80 – pagina 22
Figura 5.1 Arhitectura Harward – pagina 22
Figura 5.2 Secvența de execuție a unei instrucțiuni – pagina 23
Figura 5.3 Resurse microcontroller – pagina 24
Figura 5.4 Descriere funcționalităti pi ni – pagina 27
Figura 5.5 Pinul MCLR – pagina 27

6
Figura 6.1 Tipul de cablaj utilizat – pagina 29
Figura 6.2 Prezentarea robotului – pagina 30
Figura 6.3 Prezentarea robotului – pagina 31
Figura 6.4 Prezentarea robotului – pagina 32
Figura 6.5 Prezentarea robotului – pagina 33
Figura 6.6 Prezentarea robotului – pagina 34
Figura 6.7 Prezentarea robotului – pagina 35
Figura 6.8 Prezentarea robotului – pagina 36
Figura 6.9 Prezentarea robotului – pagina 37
Figura 7.1 Realizarea b rațului roboti – pagina 46

7

2 INTRODUCERE
Lucrarea de față reprezintă obiectul realizării practice a unei platforme robotice de tip “braț
robotic” cu 3 grade de libertate care este capabil să apuce si să mute un obiect. Comanda brațului
robotic este realizată prin intermediul unei tastaturi cu mic roswitch -uri care trimite către
microcontroller comenzi de mișcare în sus, jos, rotire stânga – dreapta si gripp. Microcontrolle -ul
utilizat este din familia Microchip, are o arhitectura Harvard pe 8 biți și lucrează la o frecvenț ă de
clock de 64 Mz. Alimen tarea tuturor modulelor electronice din componenta brațului robotic se
realizează de l a o sursă de tensiune DC 6 -18V ș i este stabilizată prin intermediul a doua circuite
specializate de tip 7805. Am utilizat două circuite integrate de acest tip 7805 deoar ece în urma
testelor practice am constatat faptul că în momentul în care se comandă servomecanismele RC,
curentul consumat depașește pe o scurtă perioadă de timp 0.5A, tensiunea stabilizată de la ieș ire
scade la o valoare inferioară (<3V) iar microcontroll er-ul se resetează în momentul în care detectează
acest lucru. Am constatat faptul că daca dispozitivele de putere (in cazul de fața servomecanismele
RC) sunt alimentate separat, resetarea mic rocontroller -ului este evitată ș i deasemenea semnalele
perturbat oare induse de motoarele DC (ce fac parte din servomecanisme) pe linia de alimentare a
microcontroller -ului sunt eliminate. Așa cum a fost menționat și mai sus, unitatea centrala de
procesare a semnalelor are la bază microcontroller -ul pe 8 -biți PIC18F46K8 0 ce funcț ionează la o
viteză de 64 Mhz ș i dispune de rezerve generoase de memorie RAM/ROM, timere si protocoale de
comunicație (în cadrul proiectului vor fi descrise pe larg toate aceste caracteristici). Microcontroller -ul
PIC18F46K80 este integrat în ace st proiect robotic și exec ută task -uri precum achiziția ș i prelucrarea
semnalelor digitale provenite de la tastatura de comandă dar în același timp generează ș i semnalele
de comandă PWM pentru cele 4 servomecanisme care actionează brațul robotic. În ceea ce privește
partea de BOM (Bill of Materials), pentru realizarea brațelor și a bazei platformei robotice am u tilizat
un material performant ș i ușor de prelucrat, care are o rezistenț ă sporită la forțe de îndoire/torsiune
și este rezistent totodată și la te mperatură/umiditate. Pentru interconectarea elementelor
constitutive ale brațului robotic am utilizat prinderea în șuruburi , adeziv ș i baghete de plastic
maleabil. În ceea ce privește realizarea propriu zisă/fizică a circuitelor electronice, am utilizat PCB-
urile cu găuri deoar ece sunt rezistente, se lucrează uș or cu ele și permit transpunerea schemei
electronice într -un mod adaptiv și curat.

8

3 ROBOTUL
3.1 Date cronologice
Un robot este este un operator mecanic sau virtual, artificial. Robotul este un
sistem compus din mai multe elemente: mecanică, senzori și actori precum și un mecanism
de direcționare. Mecanica stabilește înfățișarea robotului și mișcările posibile pe timp d e
funcționare. Senzorii și actorii sunt întrebuințați la interacția cu mediul sistemului.
Mecanismul de direcționare are grijă ca robotul să -și îndeplinească obiectivul cu succes,
evaluând de exemplu informațiile senzorilor. Acest mecanism reglează motoare le și planifică
mișcările care trebuiesc effectuate. Cuvântul „robot” a fost utilizat pentru prima dată în piesa
„Roboții universali ai lui Rossum” scrisa de Karel Capek (Cehia) în 1920. Termenul inventat
semnifică muncă forțată, sclavie și derivă din „rob ota”. Bazele roboților de azi stau mult mai
departe . Primele modele de mașini pot fi mai degrabă numite automate (provenind din
grecescul automatos, care se mișcă singur). Acestea nu puteau executa decât câte un singur
obiectiv, f iind constrânse de constr ucție. Matematicianul grec Archytas a construit, conform
unor relatări, unul dintre aceste prime automate: un porumbel propulsat cu vapori, care putea
zbura singur. Acest porumbel cavernos din lemn era umplut cu aer sub presiune. Cu
descoperirea ceasului m ecanic din secolul XIV s -a deschis calea unor posibilități noi și
complexe. Nu mult după aceea au apărut primele mașini, care semănau îndepărtat cu roboții
de azi. Posibil era însă numai ca mișcările să urmeze una după alta, fără să fie nevoie de
intervenț ia manuală în acel system.
Dezvoltarea electrotehnicii din secolul XX a adus cu sine și o dezvoltare a roboticii.
Printre primii roboți mobili se numără sistemul Elmer și Elsie construit de William Grey
Walter în anul 1948. Aceste triciclete se put eau îndrepta spre o sursă de lumină și puteau să
recunoască coliziuni în împrejurimi.
Anul 1956 este considerat ca anul nașterii a robotului industrial. George Devol a depus
candidatura în acest an în SUA pentru un patent pentru "transferul programa t de articole".
Câțiva ani după aceea a construit împreună cu Joseph Engelberger UNIMATE. Acest robot
de cca. două tone a fost mai întâi introdus în montarea de iconoscoape pentru televizoare,
găsindu -și apoi drumul în industria automobilă. Programele pent ru acest robot au fost salvate
sub formă de comenzi direcționate pentru motoare pe un cilindru magnetic. Din acest
moment se introduc roboți industriali ca UNIMATE în multe domenii ale producției fiind
permanent dezvoltați mai departe pentru a putea face f ață cererilor complexe care li se
impun.

9

3.2 Definiții si particularități ale roboților
Conform ISO -8373 robotul este definit ca fiind un controlat automat, reprogramabil,
manipulator multifuncțional, programabil în trei sau mai multe axe, care poate fi fix sau
mobil pentru utilizarea în aplicații de automatizare industrială. . Cu toate acestea Institutul de
Robotică din America definește robotul ca f iind un manipulator reprogramabil
multifuncțional proiectat pentru a muta materiale, piese, scule sau dispozitive specializate
prin mișcări variabile programate pentru p erformanța unor sarcini diferi . Asociația de
Robotică Japoneză nu prezintă o definiție clară ci î mparte roboții în șase clase:
1) Manual – Manipularea dispozitivelor acționată de către un operator;
2)Fixarea secvenței robotului;
3)Variabila -Robot secvențial cu o ușoară modificare a secvenței de control;
4) Robot de redare, care poate înregistra o propunere pentru mai târziu;
5) Roboți cu comandă numerică având un program de mișcare pentru a preda acestuia sarcini
manuale;
6) Robot inteligent: poate înțelege mediul său și este capabil să îndeplinească sarcinile, în
ciuda schimbărilor condiților de funcționare.
Dintre particularitățile unui robot putem defini patru, considerate a fi cele mai importante, pe
care trebuie să le îndeplinească o mașină ca aceasta să poată fi încadrată în categoria
,,robot”:
1) Interacțiune – această particularitate se referă la faptul că robotul trebuie să poată
interacționa cu mediul, cu alți roboți sau cu oamenii, luând decizii;
2) Autonomie – această particularitate se referă la faptul că robotul trebuie să poată
operafără intervenție umană;
3) Reprogramare – robotul trebuie să poată fi reprogramat
În Germania este necesar ca un robot să aibe mai mult de 3 axe, dar acesastă definiție nu
este acceptată unanim, în întraga lume. Multe alte țări între care Japonia și Statele Unite ,
utilizează alte definiții pentru roboți. De aceea este dificil efectuarea unui studiu comparativ a
unor statistici de genul "număr de roboți la o mie de locuitori". În Japonia, de exemplu, un
manipulator cu două axe comandat manual este considerat robot. În domeniul roboticii, cei
mai interesanți roboți sunt numiți "roboți inteligenți". Ei ar trebui să fie capabili să
manipuleze obiecte în lumea reală și să reacționeze la evenimente externe. În plus, ei trebuie
să fie flexibili, de exemplu să -și modifice comportamentul. Forma și mărimea robotului nu are
importanță în stabilirea faptului dacă este sau nu inteligent. Cel mai important criteriu este
multitudinea de senzori folosiți de robot.

10

3.3 Componentele fundamentale ale sistemului robot
Privit în toată complexitatea sa, un sistem robotic c uprinde urmatoarele componente :
a) spatiul de operare;
b) sursa de energie ;
c) sursa de informație ;
d) robotul.
Spatiul de operare al unui robot este strâns legat de domeniul de lucru al acestuia, de
gama aplicatiilor la care participa. Acest spatiu este definit direct de parametrii arhite cturii
mecanice a robotului ș i este restrictionat pe de o parte de anumite caracteristici ale
elementelor interne, mecanice, ș i pe de alta parte de caracteristicile obiectelor implicate în
procesul tehnologic. Sursa de energie constituie suportul energetic necesar pentru punerea în
miscare a elemen telor mobile ale robotului cât și pentru asigurarea alimentă rii electrice a
sistemului de acționare ș i a celui de conducere. Sursa de informație defineș te modul de
operare al robotului, caracteristi cile de bază ale functio nării acestuia, structura algoritmilor
de conducere în functie de specificul operaț iei, de modul de prelucrare a informatiei de bază
(în timp real sau nu) și de relația robot – operator existentă în procesul de operare. Această
relatie poate determina func ționarea automată, independentă , a robotului sau în asociere cu
operatorul (de exemplu sistemele de teleoperare). În figura 3.0 este prezentată schemă unui
robot ce conține componentele enunțate mai sus.

Figura 3.0 Componentele unui sistem robotic

11

3.4 Robotul .Obiect conducere
Roboții, prin structura și funcțiile lor reprezintă o clasă de sisteme ce sintetizează
elemente de vârf dint r-o serie de domenii tehnico – știintifice. De fapt, prin atribuțiile sale
robotul imită sau substituie funcțiile de locomotie, manipulare ș i de intelect al e omului. Este
evident, deci, că robotul reprezintă un sistem extrem de complex, descris prin modele
matematice sofisticat e definite prin sisteme de ecuații diferenț iale neliniare, cu parametrii
variabili, deterministe sau stohastice, cuprinzând un numa r mare de variabile de intrare ș i
iesire.
Funcția de bază a robotului este reprezentată de miș carea acestuia în s patiu, deci
regimurile statice ș i dinamice ale structurii mecanice vo r reprezenta punctul de plecare în
definirea robotului ca obiect de conducere. Pentru exemplificare, să consideram un ro bot cu
trei articulații de rotație .Mișcarea, evoluția robotului, este determinată de cele trei momente
M1, M 2, M 3 aplicate în ar ticulații, acestea determinân d rotirea segmentelor corespunzătoare
și deci obținerea unei noi poziții a brațului, pozitie definită prin noile valori ale unghiurilor
q1, q2, q3. Considerat, deci, ca obiect orientat de conducere, robotul primeste un v ector de
intrare definit de forț ele ge neralizate aplicate în articulații și generează un vector de iesire
format din unghiurile (sau deplasările) articulațiilor. În figura 1.3 sunt prezentate soluț ii
constructive privind principalele blocuri ale u nui astfel de sis tem. Se observă că variabilele
principale ce intervin în conducerea robotului sunt gene rate sau prelucrate în blocuri ș i
componente specializate. Astfel, activarea articula țiilor mecanice este realizată prin
intermediul blocului de acț ionare care, pe de o parte determină algoritmul de control pentru
fiecare articulație, iar pe de altă parte a sigură sursa energetica necesară miș carii.

Figura 3.1 Soluț ii constructive privind principalele blocuri ale u nui sistem.

12

3.5 Clasificarea roboților
1. Din punct de vedere al gradului de mobilitate se clasifică în doua categorii : r oboți ficși și
mobili.
2. Din punct de vedere al sistemul ui de coordonare roboții sunt clasificați în roboți cu sistem
de coordonare carteziene,cilindrice și sferice.
3. Din punct de vedere al informației de intrare și a metodei de instuire roboții se clasifică
astfel:
– roboți acționați de om;
-roboți cu sistem de comandă secvenți;
-roboți cu sistem secvențial cu program mod;
-roboți cu pro gramare prin instruire ;
-roboți inteligenți .
4.Din punct de vedere al sistemului de acționare sunt patru categorii de roboți: roboți cu
acționare hidraulică,electrică,pneumatică și mixtă
5. Din punct de vedere al sistemului de comandă roboții sunt clasifi :
-roboți cu comandă punct cu punct. La acești roboți nu contează traiectoria popriu
-roboți cu comandă pe contur care implică coordonarea mișcării axelor;
-roboți cu comandă pe întreaga categorie care implică toți parametrii de mișcare.
Arhitectura internă a unui robot conține cinci sisteme importante, fiecare dintre acestea
aparținând unui domeniu al tehnicii clasice:
-sistemul mecanic de susținere și al articulațiilor,cuple de rotație și de translație;
-sistemul de acționare, care poate fi hidraulic,pneumatic,electric sau mixt;
-sistemul de tran smisie al mișcării;
-sisitemul senzorial;
-sistemul decizional.

13

3.6 Tipuri de roboți existenți
Următoarele tipuri de roboți sunt cele mai utiliza te în aplicațiile industriale:
– roboți cu braț artic ulat (cu 5 sau 6 articulații) ;
– roboți SCARA ;
– roboți tip porta
Robot cu braț articulat cu 5 articulații
În figura 3.2 se prezintă un robot cu 5 articulații.

Figura 3.2 Robot cu braț articulate cu 5 articulații.
Caracteristici tehnice
Aranjamentul articulațiilor: 5 articulații de rotație
Avantaje:
-Spațiu de lucru mare ;
-Mișcări rapide ;
-Se pot instala pe podea sau suspendați (de tavan) .
Spațiul de lucru al robotului cu 5 articulații
În figura 3. 3 , în culoare roșie (închisă) se prezintă spațiul de lucru al unui robot cu
5 articulații. Spațiul de lucru este dat de primele 3 articulații și nu ține seama de articulațiile
4 și 5, care au rolul doar de a modifica orientarea TCP.

Figura 3.3 Spațiul de lucru (roșu) al unui robot cu 5 articulații.

14

Aplicațiile ale roboților cu 5 articulații
Aplicațiile tipice ale roboților cu 5 articulații sunt:
– Alimentarea cu piese pentru mașini -unelte CNC;
– Asamblare;
– Automatizări de laborat or ;
– Testare ;
– Educație .

Robot cu braț articulat cu 6 articulații
Figura 3.4 arată modul de dispunere al celor 6 articulații.

Figura 3.4 Robot cu braț articulat , cu 6 articulații.
Caracteristici tehnice
Aranjamentul articulațiilor: 6 articulații de rotație
Avantaje:
-spațiu de lucru mare ;
-mișcări rapide ;
-se pot instala pe podea sau suspendați (de tavan ) ;
-orientare arbitrară a gripper -ului sau uneltei .

Spațiul de lucru al robotului cu 6 articulații
În figura 3.5, în culoare roșie (închisă) se prezintă spați ul de lucru al unui robot cu 6
articulații. Spațiul de lucru este dat de primele 3 articulații și nu ține seama de articulațiile 4,
5 și 6, care au rolul doar de a modifica orientarea TCP.

Figura 3.5 Spațiul de lucru (roșu) al unui robot cu 6 articulații .

15

Roboți SCARA
Roboții SCARA sunt o particularizare a unui robot articulat, în sensul că ei
acționează prin articulații dar numai într -un plan orizontal. Numele SCARA vine de la
acronimul pentru: Selective Compliance Assembly Robot Arm. Figura de mai jos arată un
astfel de robot cu 4 articulații.

Figura 3.6. Robot SCARA cu 4 articulații .

Caracteristici tehnice
Aranj amentul articulații lor: 2 sau 3 articulații rotaționale, 1 articulație liniară
Avantaje:
-mișcări orizontale foarte rapide;
-rigiditate mare în ar ticulația verticală
-repetabilitate foarte bună
Dezavantaje: Lucru într -un singur plan
Spațiul de lucru al unui robot SCARA
În figura 3. 7 se prezintă spațiul de lucru (într -un plan) al unui robot SC ARA cu 4 articulații.
Spațiul de lucru este definit de primele 3 articulații, pornind de la baza robotului .

16

Figura 3.7 Robot SCARA cu 4 articulații.

Roboți portal
Un robot portal este instalat deasupra spațiului de lucru, ca un pod rulant. Figura 3.8
prezintă configurațiile axelor unui asemenea robot.

Figura 3.8 Exemplu de robot portal cu 3 grade de libertate.
Caracteristici tehnice
Aranjamentul articulațiilor : 3 articulații liniare
Avantaje:
– spațiu de lucru mare ;
– posibilitate de manipulare sarcini mari.
Spațiul de lucru al roboților portal .

17

Figura 3.9 Spațiul de lucru al unui robot portal cu 3 grade de libertate (vedere de
sus).

18
3.7 Sistemul senzorial al roboților
Un robot trebuie să execute un numar mare de mișcari în concordanț a cu sarcinile
tehnologice impuse în diverse condiț ii determinate de specificul mediului său de operare
și să-și modifice corespunză tor caracteristicile funcț ionale odată cu modificarile survenite
în factorii interni și externi în spațiul că rora activeaza. Deci, un sistem robotic trebuie să fie
autoadaptiv, să posede capacitatea de a -și modif ica legile de mișcare în concordanță cu
modifică rile mediului.
Realizarea acestui deziderat impune introducerea î n orice sistem de conducere a
roboț ilor a unor dispozitive sp eciale, senzori care să asigure informaț iile primare privind
caracteristicile ș i parametrii mediului de operare. Ansamblul acestor dispozitive și
echipamente ce oferă robot ului o imagine a lumii externe î n care evolueaz ă și care permite
acestuia să realizeze o comportare adaptiv ă fată de orice modificări interne sau externe,
formează sistemul senzorial al robotului.
Complexitatea orică rui echipam ent senzorial este direct legată de funcția
tehnologică ce trebuie executată . Sistemul senzorial poate oferi informaț ii privind
parametrii intrinseci ai robotului (deplasare, viteză, acceleraț ie) sau poate defini caracterul
obiectelor din imediata vecină tate a spațiului de operare. Asfel, o primă clasificare
importantă este legată de sistemele pentru identificarea parametrilor interni ș i cele pentru
identificarea parametrilo r externi, ca punct de plecare î ntr-o prezentare succintă a sistemu lui
senzorial. Senzorii utilizaț i la dotarea manipulatoarelor și roboț ilor trebuie să aibă
caracteristici statice liniare și caracteris tici dinamice stabile, viteză mare de ră spuns,
reproductibilitate, robustețe ș i fiabilitate.
Clasificarea senzorilor utilizați î n robotic
În cazul ce l mai general, clasificarea tin ând cont de locul de culegere a informațiilor și
functia îndeplinită se prezintă astfel:
Senzori interni (proprioceptivi) – furnizează date privind diferitele elemente componente ale
robotului (pozitie, orientare, viteză, articulații);
Senzori externi (exteroceptivi) – culeg date despre elementele din exteriorul robotului;
Functie de distantă de la care sunt culese informa țiile putem avea ș i urmă toarea clasificare:
Senzori de contact – folosiți pentru mă surarea presiunii dintre obiect și dispoz itivul de
prehensiune, a alunecării obiectului față de dispozitivul de prehensiune, respecti v pentru
determinarea proprietaț ilor fizice ale obiectului;
Senzori de zonă apropiată (de proximitate) de tip optic, pneumatic sau
electromagnetic, care dau informatii fară a avea contact fizic cu obiectul;
Senzori de zonă îndepărtată , de tip acustic cu ultrasunete sau camera video, utilizați de
roboț i mobili pentru plani ficarea acțiunilor.

19

3.8 Aplicații ale roboților
Roboți sunt folosiți în diverse aplicații care sunt industriale sau neindustriale.
În categori a aplicațiilor neindustriale se includ construcțiile, reabilitarea bolnavilor,
comerț, transport și circulația mărfurilor,administrația locală, protecția mediului înconjurător
și agricultură, supraveghere, inspecție, protecția de radiații și intervenții în caz de catastrofe,
hoteluri și restaurante, în medicină, gospodărie, hobby și petrecerea timpului liber. În
medicină se gasesc sisteme robotizate pentru diagnoză prin ecografie, sisteme robotizate
pentru intervenții neurochirurgicale, vehicule ghidate aut omat pentru transportul bolnavilor
imobilizați la pat, vehicule ghidate automat pentru transportul medicamentelor, alimentelor
vehicule ghidate automat pentru activități de curățenie și dezinsecție în spitale, sisteme
robotizate pentru pregătirea prin simu lare a unor intervenții chirurgicale.
Pentru reabilitare se pot identifica diverse aplicații ale roboților: scaun cu roțile
pliant, manipulator pentru deservirea persoanelor paralizate, vehicul pentru conducerea
nevăzătorilor.
În construcț ii: vehicul ghidat automat pentru asfaltarea șoselelor; excavatoare
autonome, sistem robotizat pentru compactarea și nivelarea suprafețelor turnate din beton,
sistem robotizat pentru inspectarea fațadelor clădirilor, sistem robotizat pentru montarea și
demontarea schelelor metalice. Pentru protejarea mediului înconjurător se gasesc sisteme
robotizate de sortare a gunoiului în vederea reciclării, sisteme automate de inspectare,
curățare și recondiționare a coșurilor de fum înalte, platforme autonome mobile pentru
decontaminarea clădirilor, străzilor și vehicul ghidat automat pentru decontaminarea solului.
În agricultură, există sisteme robotizate de plantare a răsadurilor, sistem robotizat de
culegere a fructelor, sistem robotizat de culegere a florilor.
În comerț, transporturi, circulație se pot preciza urmatoarele aplicații ale roboților:
vehicule ghidate a Pentru siguranță și pază se gasesc roboti mobili de pază pe timpul nopții,
vehicul autonom pentru stingerea incendiilor, robot mobil pentru detectarea și dezamorsarea
minelor, sistem robotizat pentru intervenții în spații periculoase etc.
Pentru hobby și petrecerea timpului liber se pot preciza următoarele aplicații: robot
de supraveghere copii pentru diverse intervale de vârstă, robot de gestionare și supraveghere
generală a locuinței, robot mobil pentru pentru tunderea automată a gazonului instalație
robotizată pentru curățirea bărcilor de agrement și sport.

20
4 Schema electronică a platformei robotice
În figura 4.1 este prezentată schema electronică a platformei robotice

Figura 4.1 Schema electronică a platformei robotice

21

4.1 Servomecanismele RC – descriere generală de funcționare
O altă categorie de motoare DC utilizate în robotică ce dispun de cutie de viteze și
sunt comandate în semnal PWM o reprezintă servomecanismele RC. Din punctul de vedere al
costurilor a cestea sunt dispozitive de acționare avantajoase din foarte multe puncte de
vedere. Pot fi folosite în aplicații unde este necesar un control precis al pozitiei axului motor
de ieșire din servomecanism iar mișcarea aceastora este limitată mecanic la un ung hi de
aproximativ 180 grade. Pe de altă parte, cu mici modificări la partea mecanică, miscarea de
rotație a axului se poate transforma în mișcare de rotație continua. Acest lucru ar reprezenta
si principalul lor dezavantaj (modificarea de către utilizator pentru a obține o mișcare
continuă de rotație).

Figura 4.2 Servomecanism RC
Metoda de comandă a acestor mecanisme se realizează prin PWM sau altfel spus prin
puls cu lațimea factorului de umplere variabil. Așadar pentru comandă sunt necesare doar 3
fire, din care 2 de alimentare și doar un fir de comandă, fir prin care se va trimite comanda în
regim PWM . Pulsul de comanda corelat cu poziția unghiulară a rotorului, este prezentat în
figura următoare :

Figura 4.3 Comanda PWM a servomecanismelor RC
În momentul c ând aceste motoare sunt comandate să execute o mișcare de
rotație, poziția de comandă este menținută at ât timp c ât se trimite semnalul PWM.

22

4.2 Criterii pentru alegerea unui microcontroller
Sunt multe aspecte de care trebuie ținut seama la alegerea unui MC pentru o anumită
aplicație. Alegerea unui MC potrivit poate duce la succesul proiectului, așa cum o alegere
nepotrivită poate duce la eșecul proiectului. Fiecare cititor trebuie să adapteze aceste criterii
nevoilor sale și scalei proprii de valori. Obiectivul urmărit în alegerea unui MC este
obținerea calității dorite cu un cost cât mai scăzut. Calitățile dorite înseamnă performanță,
fiabilitate, calități EMC (de compatibilitate electromagnetică cu mediul), iar costul total
include costurile cercetării, proiectării, construcției, testării, reparării produsului. În primul
rând se pune problema stabilirii funcției pe care MC trebuie s -o îndeplinească în sistem.
Alegerea din catalog a unui MC trebuie făcută în ideea a cât mai puțin hardware suplimentar
(din motive economice). Procesul de căutare este dificil din cauza numărului foarte mare de
tipuri de MC disponibile pe piață. . După stab ilirea MC optim se verifică prețurile, dacă este
disponibil, suportul acordat de fabricant, existența uneltelor de dezvoltare, stabilitatea firmei
constructoare. Un criteriu important este posibilitatea de a fi găsit pe piață (optenabilitatea),
mai ales în zone în care circulația mărfurilor este destul de greoaie. Criteriile pentru alegerea
unui MC sunt, în ordinea importanței:
1). Posibilitatea folosirii în aplicația dată este suficient un MC sau sunt necesare
circuite suplimentare;
2). Liniile I/O sunt suficiente (un număr prea mic înseamnă că aplicația nu se poate
face cu acest MC, iar un număr prea mare înseamnă un cost excesiv);
3). Există toate interfețele solicitate de aplicație: I/O serial, convertoare A/D, D/A și
nu există interf ețe în plus;
4). Există capacitatea de memorare suficientă: RAM, ROM;
5). MC are viteza suficientă pentru această aplicație. Se verifică timpul necesar rulării
programului care trebuie să fie mai mic decât intervalul de timp în care trebuie să
reacționeze MC.
Un argument pentru alegerea unui tip de MC este existența unui modul de evaluare.
Pentru a promova propriile MC, mulți furnizori au creat Kit -uri de evaluare care conțin plăci
de evaluare și un soft minimal cu care se poate învăța utilizarea MC și se pot pune la punct
aplicații. Un kit conține de regulă un program monitor pentru calculator PC, un program de
transfer al datelor spre placa de evaluare (prin interfața RS232 sau CENTRONICS), un
asamblor și un com pilator C. Toate kiturile sunt însoțite de documentație.

23

4.3 Schema bloc a unui microcontroller
Schema este în continuare o reprezentare generalizată :

Figura 4.4 Schema bloc microcontroller

Se poate observa că un MC este organizat în jurul unei magistrale interne pe care se
vehiculează date, adrese și semnale de comandă și control între blocurile funcționale.
Unitatea centrală execută instrucțiunile pe care le primește prin magistrala de date din
memoria program. Structura Harvard este posibilă și răspândită la MC pentru că de regulă
instrucțiunile sunt stocate în memoria ROM, iar datele în cea RAM. Magistrala de date și cea
de adrese pot fi separate sau multiplexate. Fiecare MC are un control ler de întreruperi care
admite atât intrări din exterior cât și de la modulele interne. Unele MC dispun de un
controller DMA propriu.Modulele I /O pot fi seriale sau paralele
Fiecare modul transfe ră date cu exteriorul prin intermediul registrului de date (RD). Modulul
este programat (configurat) de unitatea centrală prin intermediul unui registru de comenzi
(RC) și se poate citi starea modulului prin registrul de stare (RS). Prin RS se pot genera
întreruperi către unitatea centrală. Registrele modulelor I/O pot fi văzute de UC ca locații de
memorie sau ca dispozitive de I/O într -un spațiu de adresare separat. Sub numele de
dispozitiv I/O, într -o abordare generalizată, sunt cuprinse principalele inte rfețe ale MC
(timer, canal serial UART) și linii I/O grupate în porturi paralele de uz general. Același
nume generic poate acoperi și interfețele speciale întâlnite în configurații particulare de MC
(convertor A/D, interfață serială sincronă, interfață LCD , interfață USB, etc.

24

4.4 Particularizare. Microcontroller -ul PIC18F46K80 – package si descriere pini

Figura 4.5 Particularizare. Diagrama bloc a microcontrollerului PIC18F46K80

25

Figura 4.6 Diagrama bloc a microcontrollerului PIC18F46K80

26

4.5 Dispozitive I/O
Dispozitivele I/O reprezintă un aspect de mare interes atunci când este vorba de
microcontroller, interes rezultat din însăș i particularitatea unui MC aceea de a interacționa cu
mediul în procesul de control pe care îl conduce.
Dispozitivele I/O implementează funcții speciale degrevând unitatea centrală de toate
aspectele specifice de comandă și control în funcția respectivă.Ex istă o varietate mare de
dispozitive I/O; dispozitivele I/O conduc operații generale de comunicație (transfer serial sau
paralel de date), funcții generale de timp (numărare de evenimente, generare de impulsuri),
operații de conversie analog/numerică, func ții de protecție, funcții speciale de comandă, și
enumerarea poate continua. Parte din resurse acoperă funcțiile de control propriu -zis, iar o
parte asigură funcțiile necesare aplicațiilor în timp real (sistemul de întreruperi, timer). Din
această mare var ietate, parte din dispozitive se găsesc în configurația tuturor MC sau sunt
foarte des întâlnite, iar o altă parte de dispozitive o regăsim doar în MC construite pentru a
optimiza aplicații cu un grad mare de particularitate. În acest capitol, în continuar e, vor fi
prezentate dispozitive des întâlnite în echiparea MC. Dispozitivele I/O sunt “văzute” de
unitatea centrală ca porturi. Există două filozofii de alocare a adreselor (mapare) pentru
apelarea porturilor de către unitatea centrală. Porturile sunt ma pate fie în spațiul de memorie,
fie într -un spațiu propriu.
Avantajele mapării în spații separate :
• Metoda nu este susceptibilă de a provoca erori soft deoarece se
folosesc instrucțiuni diferite pentru a accesa memoria și dispozitivele I/O;
• Dispozitive le I/O nu ocupă spațiu de memorie;
• Decodificatorul de adrese pentru dispozitivele I/O este mai simplu
deoarece spațiul de adresare al dispozitivelor I/O este mai mic.
Dezavantaje ale mapării în spații separate:
• instrucțiunile I/O sunt mai puțin flexibi le în comparație cu
instrucțiunile de lucru cu memoria;
• instrucțiunile I/O nu permit folosirea modurilor de adresare folosite în
lucrul cu memoria.
Avantajul mapării în spațiu comun:
• toate instrucți unile de lucru cu memoria și toate modurile de adresare
sunt utilizabile și în tratarea dispozitivelo I/O (programarea operațiilor
I/O este foarte flexibilă);
Dezavantajele mapării în același spațiu:
• este susceptibil la erori software;
• spațiul de adresare disponibil pentru memorie este mai mic.
Avantajul mapării într -un spațiu comun este acela că se poate opera cu porturile la fel
ca și cu o locație de memorie; multe operații aritmetice și logice folosesc operanzi direct de
la port, datele pot fi mutate între porturi cu o singură instrucțiune, conținutul unui port poate
fi citit, incrementat și rezultatul scris din nou la port de asemenea cu o singură instrucțiune.

27

4.6 Module Timer
Natura aplicațiilor pentru care s -a născut microcontroller -ul implică o multitudine de
funcții de timp puse la dispoziția utilizatorului prin module de timp numite timer. Un MC
este echipat în mod obligatoriu cu un astfel de modul mai mult sau mai puțin complex. Un
sistem timer obișnuit pune la dispoziție un set de funcții implementate pe baza unui
numărător liber central și a unor blocuri funcționale pentru fiecare funcție în parte. Timer -ul
are în structura sa, dintre toate celelalte subsisteme, cele mai multe registre. Toate funcțiile
unui timer pot genera întreruperi independente; fiecare are controlul propriu și propriul
vector de întrerupere. Modulele timer complexe sunt construite cu arii de numărare
programabile (PCA). Pentru aplicații speciale în timp real s -au construit module timer cu
unitate aritmetică și logică proprie. Timer -ul este folosit pentru a măsura timpul și pentru a
genera semnale cu perioade și frecvențe dorite. Timer -ele nu sunt doar circuite cu funcții
detemporizare; în modulul timer sunt implementate câteva mecanisme care pun la dispoziția
utilizatorului funcții specifice. Mecanismul de comparare permite controlul unor semnale de
ieșire; mecanismul de captură permite monitorizarea unor semnale de intrare; numărătoarele
interne permit generarea de referințe de timp inte rne, necesare în bucle de întârziere,
multiplexarea diferitelor sarcini software, ș.a. Timer -ul poate fi folosit practic pentru orice
funcție de timp, inclusiv generarea unor forme de undă sau conversii D/A simple. Funcțiile
oferite de un timer sunt:
1) Captură la intrare (IC – input capture ) – această funcție se bazează pe posibilitatea
de a stoca valoarea numărătorului principal la momentul apariției unui front activ al unui
semnal extern. Facilitatea permite măsurarea lățimii unui impuls sau a perioadei unui
semnal. Facilitatea poate fi folosită și ca referință de timp pentru declanșarea altor operații.
2) Comparare la ieșire (OC – output compare ) – se compară la fiecare impuls de ceas
valoarea numărătorului principal cu cea a unui registru. Dacă se constată egalitate, în funcție
de programarea anterioară pot avea loc următoarele evenimente: declanșarea unei acțiuni la
un pin de ieșire (opțional), setarea unui flag într -un registru sau gener area unei întreruperi
pentru unitatea central (opțional). Funcția este folosită pentru a genera întârzieri sau pentru a
genera o formă de undă cu valori dorite pentru frecvență și pentru factorul de umplere .
3) Întreruperi în timp real (RTI – real-time in terrupt ) – într-un sistem există sarcini
care trebuiesc executate periodic sau care nu permit depășirea unui interval limită între doua
execuții. Aceste sarcini sunt lansate ca rutine de tratare a întreruperii generate de timer.
4) COP ( computer operating properly ) watchdog – această funcție este folosită
pentru a reseta sistemul în cazul în care din erori de programare ( bugs ) sau erori în
desfășurarea programului datorate perturbațiilor mediului, registrul COP nu este accesat într –
un interval de timp prescris.
5) Acumulare de pulsuri (pulse accumulator ) – este funcția folosită pentru a număra
evenimentele ce apar într -un interval de timp determinat sau pentru a măsura durata unui
impuls.

28

5 Microcontrollerul PIC18F46K80

Figura 5.0 PIC18F46K80
Microcontrollerul utilizat pentru acest proiect este PIC18F46K80 ș i are
reprezentarea pinilor ca î n figura de mai sus .Pinii I/O ai microcontrollerului înglobează mai
multe funcții , asfel , pinii corespunză tori port -ului PORTA pot fi setați ș i ca pini analogici
de intrare dar ș i ca pini digitali de intrare/ieș ire. De asemenea pini i Vpp , RB7 si RB6 sunt
utilizați î n programarea memoriei microcontrollerului prin conexiune ICSP , dar pinii RB7 ,
RB6 pot fi utilizați ș i ca pini digitali de intrare/ieș ire. Microcontroller -ul PIC18F46K80
conține un numar de 1 1 canale ana logice și pot fi folosite î n regim multip lexat, independent
unul de celă lalt. Microcontrollerul are la bază arhitectu ra de tipul Harvard și un numar de 35
de instrucțiuni, put ând opera la o frecvența maximă de 64 Mhz , reprezent ând o viteză
propriu zisă de lucru de F(clock)/4= 16 Mhz. Acest lucru înseamnă că microcontroller -ul are
capabilitatea de a executa un număr de 16 milioane de instrucțiuni pe secundă, lucru ce îl
recomandă in proiecte de acest gen.

Figura 5.1 Arhitectura Harward

Un aspect important legat de acest tip de arhite ctură este acela că memoria program
este separată de memoria de date , în acest fel fiind posibilă citirea unei date si a unei

29
instrucțiuni în acelaș i timp( memoria de date și memoria program se află pe BUS -uri
diferite). Tehnica pipel ine este cea prin i ntermediul căreia o instrucțiune se execută corect
iar în cazul de față , o instrucțiune este corect realizată î n 4 perioade de c lock, astfel , la o
frecventă a oscilatorului de 64 Mhz, frecvența reală de lucru a microcontrolerului va fi de
264/4 = 16 Mhz, sau altfel spus, 16 mips ( 16 milioane de de instrucțiuni pe secundă)
Această tehnică se regăsește și la procesoare și ajută la cresterea vitezei propriu zise de
lucru. Fiecare etapă din cele 4 din pr ocesul pipeline este executată de către o unitate
functională a microcontrollerului. Segm entele pipeline sunt conectate între ele într -un mod
analog asamblă rii unei conducte din segmente de ț eava. Segmentele tipice de execuție ale
unei instrucț iuni mașină pe microcontroller sunt:
F- fetch – se referă la un ciclu special în care procesorul citește din memorie codul
instrucțiunii ce urmează a fi executată .
D-decode – se referă la procesul de decodare , process în care instrucțiunea este
recunoscută și procesul are tot ce î i trebuie pent ru execuția instrucț iunii.
E-execute – reprezintă procesul propriu zis de executie a instrucț iunii .
W-write -back – scrierea rezultatului înapoi î n memorie.

Figura 5.2 Secvența de execuție a unei instrucțiuni

Referitor la microcontrollerul PIC1 8F46K80, acestă, pe l ânga os cilatorul extern ce
poate fi adă ugat din pun ct de vedere hardware, mai conține ș i un oscilator intern fiind
posibil astfel prin intermediul multiplicatorului PLL atingere a unei frecvențe de p âna la 64
Mhz. În cazul de față frecvența la care operează microcontrolerul este de 64 Mhz (oscilator
intern) și a fost ales pentru că are integrat în construcția sa o platformă ADC multicanal,
platformă ce a corespuns standarde lor de design digital alese la începutul construcț iei acestui
proiect. Un avantaj net față de alte microcontrollere este acela referitor la viteza mare de
execuție a instrucțiunilor și totodată numărul mare de canale I/O de care dispune. Pe langă
toate aceste caracteristici superioare se mai adaugă faptul că microcontrollerul dispune și de
o serie largă de modul de comunicație serial -sincronă si asincronă, I2C, CAN, convertor
analogic pe 12 biți și este totodată versatil din punctul de vedere al alimentării de oarece
poate fi alimentat cu o tensiune de 3.3V p âna la 5V. Programarea microcontroller -ului se
realizează prin intermediul conexiunii de tip ICSP ce este compusă din 5 pini (Vpp, Vdd,
Vss, DAT si CLK). O serie de caracteristici ce descriu microcontroll erul PIC1 8F46K80 sunt
prezentate în figura urmă toare :

30

Figura 5.3 Resurse microcontroller

Funcțiile pinilor I/O

31

32

Figura 5.4 Descriere funcționalită ti pini

33

Pinul MCLR/Vpp
Acest prin are rolul de MASTER CLEAR OR RESET .
– MCLR and VPP sunt două funcții reprezentate prin acelaș i pin;
– MCLR reprezintă Master Clear, iar funcția de reset pe microcontroller va determina
ca microcontrollerul să stea într -o stare de reset at ât timp c ât MCLR este conectat la GND .
Datorită acestui fapt, pent ru a se evita eventualele resetă ri ale mi crocontrollerului, se
utilizează un rezis tor de tipul pull -up care menține în permanența pinul de MCLR la Vdd.
Când MCLR e ste conectat la Vdd , atunci microcontrollerul începe să execute prima
instru cțiune din memoria program. Definiția VPP se traduce c a fiind Voltage for
Programming și este utilizat î n proces ul scrierii memoriei . Atunci c ând amplitudinea
tensiuni i de pe pinul Vpp este cuprinsă î ntre 9-13v microcontrollerul intră î ntr-o stare
specială de reset unde acesta nu funcționează , dar poate fi programat.

Figura 5.5 Pinul MCLR

34

6 Materiale folosite în structura corpului la construcția roboților
Ca și corpul uman, corpul unui robot conține părțile vitale ce ajută la buna
funcționare a sa. Astfel structura de bază a corpului unui robot poate fi construită din
materiale precum lemn, plastic sau metal și poate lua orice formă și dimensiune. O
caracteristică importantă de care trebuie să se țină cont atunci când se aleg dimensiunile și
formele materialului este aceea că pe structura corpului vor fi dispuse
motoarele/servomotoarele, acumulatorii, plăcile electronice și alte elemente auxiliare, care
au o anumită greutate și care influențează nu numai alegerea param etrilor materialului, ci și
locomoția prin modul în care sunt dispuse pe cadrul robotului. În cazul de fața materialul
predominant folosit este lemnul datorita ușurinței cu care se prelucrează. Metalul reprezintă
alegerea optimă în construcția structurii d e bază a unui robot, iar printre metalele cel mai des
utilizate în acest scop se pot enumera:
– Aluminiul este un material utilizat în construcția roboților de dimensiuni medii și
mari și se remarcă duritatea mare raportată la greutate, fiind în același timp ușor de prelucrat
dar scump în comparație cu alte materiale.
– Oțelul este deseori utilizat în construcția ca drului unui robot datorită durității ridicate iar ca
dezavantaj se remarcă faptul că prelucrarea acestuia necesită scule speciale, oțelul fiind un
material mai greu deformabil. Oțelul inoxidabil este utilizat în construcția componentelor de
precizie cum ar fi brațe, mâini, angrenaje și alte mecanisme unde aluminiul nu ar putea face
față solicitărilor.
– Lemnul este un material utilizat în principal la construcția cadrului unui robot, și
apreciat pentru faptul că se prelucrează f oarte ușor.Acesta are o duritate slabă raportată la
greutate.
– Plasticul este materialul folosit la aproape orice în zilele noastre, inclusiv la
construcția roboților. Acesta are o duritate chiar mai mare decât a multor metale și este
foarte ușor de prelucrat și de lipit.Acestea au fost doar câteva exemple de materiale cel mai
des utilizate în construcția roboților, dar lista poate continua având în vedere apariția de noi
materiale a căror principală caracteristică este duritatea maximă raportată la greutatea
minimă. Un material ușor de prelucrat cu greutate mică și duritate mare constituie un avantaj
și duce implicit la o proiectare mai bună a tuturor ansamblelor unui robot. Cu cât greutatea
este mai mică cu atât c onsumul de energie este mai redus și implicit autonomia de
funcționare mai mare. În ceea ce privește construcția robotului din cazul de fata, materialele
utilizate au fost:
-Plastic, baghete de plastic ,f orex, aluminiul.

35

6.1 Proiectarea hardware gener ală a robotului
Proiectarea hardware a robotului s -a axat în principiu pe reducerea greutății și de aici
toate avantajele care decurg. Materialele utilizate în construcția robotului cum ar fi
aluminiul, cuprul și plasticul au asigurat această diminuare a greutății și în principiu o
optimizare a proiectării hardware. În ceea ce privește plăcile de bază pe care s -au plantat
componentele electronice, pentru comoditate și rapiditate în execuție, plăcuțele cu găuri au
fost alegerea optimă așa cum se poate obs erva și în figura următoare:

Figura 6.1 Tipul de cablaj utilizat
Componentele electronice folosite în construcția robotului au fost alese în ideea unei
dimensiuni cât mai reduse și o calitate sporită pentru o optimizare a spațiului utilizat și
anume a cadrului robotului. Toți rezistorii utilizați sunt marcați în codul culorilor și au o
valoare a puterii proprii de 1/4W, această alegere fiind făcută în strânsă corelație cu faptul că
prin circuitele existente curentul care circulă nu are valori mari. Pe l ângă toate acestea, au
mai fost utilizate LED -uri cu o singură culoare, condensatori, regulatoare de tensiune de 5V,
motoare de curent continuu și o serie largă de de conectori și fire. S -a insistat foarte mult pe
calitatea lipiturilor precum și pe conecto rii, mufele și firele de conexiune alese pentru ca în
etapele următoare ale construcției robotului să nu se întâmpine probleme legate de
conectivitate .

36

În următo arele imagini sunt prezentate poze cu proiectarea generală a brațului robotului :

Figura 6.2 Prezentarea robotului

37

38
Figura 6.3 Prezentarea robotului

39

Figura 6.4 Prezentarea robotului

40

Figura 6.5 Prezentarea robotului

41

Figura 6.6 Prezentarea robotului

42

Figura 6.7 Prezentarea robotu lui

43

Figura 6.8 Prezentarea robotului

44

Figura 6.9 Prezentarea robotului

45

7 Codul sursă C
#define sus PORTA.f3
#define jos PORTE.f0
#define stanga PORTA.f2
#define dreapta PORTE.f1
#define stanga_sus PORTC.f2
#define stanga_jos PORTE.f2
#define dreapta_sus PORTA.f1
#define dreapta_jos PORTA.f0
#define centru PORTA.f5
#define LED_stang a LATD.f0
#define LED_centru_stanga LATD.f1
#define LED_dreapta LATD.f3
#define LED_centru_dreapta LATD.f2
#define servo_baza LATD.f7
#define servo_sus LATD.f6
#define servo_gripp LATD.f4
#define servo_ultim LATD.f5

46

//––––––––––– DESCRIERE –––––––––––– //
/*Platforma robotică mobilă comandată prin microswitch -ri și 3 grade de libertate.
Alimentarea sistemelor electronice componente se realizează la o tensiune de 5V,
tensiune obținută prin stabilizare pozitivă de tensiune de la o sursă externă de
5-18V. Mișcările brațel or platformei robotice se realizează prin intermediul
servomecanismelor RC.*/
//––––––––- CONECTIVITATE si MODULE ELECTRONICE –––––– //
/*1). INTRARI DIGITALE :
RA0 = tasta dreapta jos;
RA1 = tasta dreapta sus;
RA2 = tasta stanga;
RA3 = tasta sus;
RA5 = tasta centru;
RE0 = tasta jos;
RE1 = tasta dreapta;
RE2 = tasta stanga jos;
RC2 = tasta stanga sus;
2). IESIRI LED -uri indicatoare:
RD0 = LED stanga;
RD1 = LED centru stanga;
RD2 = LED centru dreapta;
RD3 = LED dreapta;

47

3). IESIRI SERVOMECANISME :
RD4 = SERVO GRIPP;
RD5 = SERVO ULTIM;
RD6 = SERVO CENTRAL;
RD7 = SERVO BAZA; */
//–––––––––––––––––––––––––- //
void main() {
//––– setari registri clock –64Mhz => 61.2 ns/ instruction (measured with oscilloscope) –– //
// OS CILATORUL ESTE SETAT PE INTERNAL OSCILATOR 64 Mhz
// 1). Din seterile "project -edit project" se seteatează tipul oscilatorului (setat pe internal RC
oscillator) din registrul CONFIG1H;
// a). Registrul CONFIG1H<3:0> = bitii FOSC<3:0> = "1000" ( modul = INTIO2 internal RC oscillator);
// b). Registrul CONFIG1H<4> = PLLCFG = "1" (1 = Oscillator is multiplied by 4);
// 2). Registrul OSCTUNE <6> = PLLEN = "1" (Frequency Multiplier PLL Enable bit = enable);
// 3). Registrul OSCCON <6:4> = bitii IRCF<2:0 > = "111"(111 = HF -INTOSC output frequency is used
(16 MHz)) – tipul oscilaatorului intet folosit
// 4). Registrul OSCCON <1:0> = bitii SCS<1:0> = "00"(Default primary oscillator (OSC1/OSC2 or HF –
INTOSC with or without PLL. Defined by the FOSC<3:0> Conf iguration bits, CONFIG1H<3:0>)
//––––––––––––––––––––––––––––––––––––– //

48

OSCCON = 0b01110000;
OSCTUNE.f6 = 1;
//–––––––– setari TRIS -reg directivitate –––––––– //
TRISA = 0b00101111;
TRISC = 0b00000100;
TRISB = 0b00000000;
TRISD = 0b00000000;
TRISE = 0b00000111;
ANCON0=0; // Canalele AN0 -AN7 de IN = digitale
ANCON1=0; // Canalele AN8 -AN14 de IN = digitale
//–––––––- SETARE INTRERUPERE PE TIMER1 ––––––––– //
INTCON.GIE = 1; //enable all un -masked interrupts
INTCON.PEIE = 1; //Set PEIE
T1CON = 1; //enable Timer1
PIR1.TMR1IF = 0; //clear interrupt flag
TMR1H = 0b11111111; // SET INITIAL START TIMER VALUE -High (step = 0.114 ms cu
osciloscopul = pas de timer)
TMR1L = 0b11110111; // SET INITIAL START TIMER VALUE -Low
PIE1.TMR1IE = 0; // disable Timer1 interrupt
//–––––––––––––––––––––––––- //

49

LATD = 0; / / iesirile pe LED -uri =0;

for (;;){
//––––––––––––––––– servo baza = s âtnga -dreapta
while (stanga){
servo_baza= 1;
Delay_us(900);
servo_baza = 0;
Delay_ms(40);
LED_stanga = 1;
}

while (dreapta){
servo_baza= 1;
Delay_us(2000);
servo_baza = 0;
Delay_ms(40);
LED_dreapta = 1;
}
//––––––––––––––––––––––- servo gripp

while (dreapta_sus){

50
servo_gripp= 1;
Delay_us(900 );
servo_gripp= 0;
Delay_ms(18);
LED_centru_stanga =1;
LED_centru_dreapta =1;
}

while (dreapta_jos){
servo_gripp= 1;
Delay_us(2100);
servo_gripp= 0;
Delay_ms(18);
LED_centru_stanga =1;
LED_centru_dreapta =1;
}
LED_stanga =0;
}
}

//–––––––––––––––––––––- servo superior
while (sus){
servo_sus= 1;
Delay_us(900);
servo_sus = 0;
Delay_ms(40);

51
LED_centru_stanga =1;
}
whil e (jos){
servo_sus= 1;
Delay_us(1700);
servo_sus = 0;
Delay_ms(40);
LED_centru_dreapta =1;
}
//––––––––––––––––––––– servo sus ultim
while (stanga_sus){
servo_ultim= 1;
Delay_us(800);
servo_ultim = 0;
Delay_ms(30);
}

while (stanga_jos){
servo_ultim= 1;
Delay_us(2200);
servo_ultim = 0;
Delay_ms(30);
}
LED_centru_dreapta =0;
LED_centru_stanga =0;
LED_dreapta =0;

52

8 Concluzii
În lucrarea prezentă sunt afiș ați toți pașii efectuați pentru construcția unei platforme
robotice și controlul acesteia . :
– comanda braț ului robotic a fost realizată prin intermediul unei tastaturi cu
microswitch -uri care trimite că tre microcontroller comenzi de mișcare în sus, jos, rotire
stânga- dreapta si gripp ;
– microcontroller -ul PIC18F46K80 a fost integrat în acest proiect ș i executa task-uri
precum achiziț ia si prelucrarea semnalelor digitale prov enite de la tastatura de comandă ;
– pentru realizarea brațelor ș i a bazei platformei robotice am utilizat un material
performant și uș or de prelucrat ;
-pentru interconectarea e lementelor cons titutive ale braț ului robotic am utilizat
prinderea în șuruburi , adeziv ș i baghete de plastic maleabil ;
-în ceea ce privește realizarea propriu zisă/fizică a circuitelor electronice, am utilizat
PCB -urile cu gă uri deoarece sunt rez istente, se lucreaza uș or cu ele ș i permit tr anspunerea
schemei electronice într -un mod adaptiv ș i curat.

Figura 7.1 Realizarea brațului roboti

53

9 Bibliografie
1. Ivanescu M., Nitulescu M., Stoian V., Bizdoaca N., Sisteme neconventionale pentru
conducerea robotilor, Editura Universitaria, Craiova, 2002.
2. Dorin Al., Dobrescu T. Pascu N., Ivan I., Cinematica roboților industriali, Editura BREN,
ISBN – 978-973-648-970-9, București, 2011
3. Nicolescu, A., Conceptia si explo atarea RI, Note de curs. Aplicatii de calcul pentru proiect,
UPB, 2010 -2011
4. Nicole scu, A., – Roboti Industriali Vol.1, ISBN 973 30 1244 0, Editura Didactica si
Pedagogica RA, 2005, Bucuresti
5. Enciu,G.,Sisteme de Alimentare Transport Transfer, Ed itura Didactica si Pedagogica RA,
2008, ISBN -978-973-30-2344 -9, Bucuresti
6 .Dobriceanu M .; Sisteme cu microprocesoare Manual universitar pentru învățământ cu
frecvență redusă, Ed. Universitaria Craiova, 2012.
7 .Mircea Ivanescu – Roboti industriali. Editura Universitaria Craiova 1994
8. Seiciu P. – Organe de masini, Note de curs, UPB
9. Mircea Ivanescu -Sisteme avan sate de conducere in robotica Editura Scrisul Romanesc 2003
10 Mircea Nițulescu, Do rian Cojocaru, Cristian Vladu, Sorin Dumitru, Tehnologie și educație
mecatronică. Dezvoltare durabilă. Modul 2 Platforme mecatronice pentru educație și formare
flexibilă, FlexFORM, notițe de curs și laborator, Craiova, 2011
11 Mircea Ivănescu, D orian Cojocaru, Ilie Diaconu, Introducere în mecatronică Editura
Universitaria 2002
12 Nicola, S. Microcontrolere. Aplicații in mecatronica, Ed. Universitaria Craiova, 2005;
13 Simion, Mihaela, Botean, A.I., Bejan, M., Utilizarea fotoelasticimetriei în analiza stării de
tensiuni pentru o structură de robot industrial. Considerații generale, Știință și Inginerie, vol. 21,
Editura AGIR, București, 2012, ISSN 2067 -7138, pag. 62 1-628.
14 Bejan, M., Rezistența materialelor, vol. 1, 2, ediția a V -a și a IV -a. Editura AGIR, București și
Editura Mega, ClujNapoca, 2009.
15 Ciobanu L., Manipulatoare si roboti industriali, Editura Gh. Asachi, Iasi, 1994.
16 Țarca R, Țarcă I, Tripe Vidican A, Tocuț P, Tripe Vidican C., – The functional model of a robot
system – Annals of DAAAMfor 2006 & Proceedings Viena 2006 .

54
17 Viorel, I. A., Iancu, V., Mașini și acționări electrice, Litografia Universității Tehnice Cluj-
Napoca, 1990.
18 Vaida Ionut Kovacs Francisc Tripe -Vidican C Self – Reconfigurable mobile robot Analele
Universității Oradea -Fascicola Mecanică -2003
19 Florin Mares, Grigore Fetecau, Doinita Balasoiu – Elemente de comandă și control pentru
acționări și sisteme de reglare automată , Editura Economică Preuniversitaria, Bucuresti,2002 ;
20 Mătieș, V. , Mândru, D. , Bălan, R. , Tătar, O. , Rusu, C. , – Tehnologie și educație
mecatronică , Ed. Todesco, Cluj -Napoca, 2001
21 R.Bălan:Microcontrolere: Structură și aplicații, Cluj -Napoca, 2002
22 P. Haller: Arhitectura calculatoarelor, note de curs Tg. Mureș 1997
23 Genge B., Haller P., Proiectarea sistemelor dedicate și încorporate. Microcontr olerul PIC. Ed.
MatrixRom, 2008
24 Fernando E. Valdes -Perez, Ramon Pallas -Areny – Microcontrollers: Fundamentals and
Applications with PIC
25 B. ILIE Microcontrollere. Aplicatii. Editura Universității”L.Blaga” din Sibiu, 2008, ISBN 9 78-
973-739-578-8
26 . Cojocaru G., Fr.Kovaci „Roboții in acțiune ”, Ed.Facla, Timișoara,1998
27 Breaz R., Bogdan L. „ Automatizari in sisteme de productie ” Editura Universitatii „Lu cian
Blaga” Sibiu, 2003
28 Pâslă D.,, Modelarea și simularea roboților industriali.”
29 Pellerin D., Thibault S.,, Practical FPGA programming in C” , Prentice Hall, 2005.
30 Costin I.O.,,Acționari Electrice Funcționarea si coma nda roboților industriali”, Editura
Todesco 2008
31 Chircor, M. „Noutați in cinematica și dinamica roboților industriali ”,Editura Fundației Andrei
Șaguna, Constanța, 1997.
32 Gheorghe I Gheorghe, Valentin Pau, Doru Dumitru Palade, Meca tronica, Editura Cefin,
București, 2002.
33 Alecsa B. , Onea A.,,An FPGA implementation of a brushless DC motor speed controller”,
SIITME 2010 , Pitești, România, septembrie 2010.

55
10 Referințe Web
1 www.seattlerobotics.org/guide/servos.html
2 www.seattlerobotics.org/guide/servohack.html
3 www.cs.uiowa.edu/~jones/step/index.html
4 www.repairfaq.org/filipg/RC/F_Servo101.html
5 www.hut.fi/Misc/Electronics/
6 www.boondog.com \tutorials \tutorials.htm
7 www.eg3.com/ee/robotics.htm
8 http://members.tripod.com/RoBoJRR/reference.htm
9 http://rvl.www.ecn.purdue.edu/RVL/mobile -robot -nav/mobile -robot -nav.html
10 www.rentron.com/.
11 www.tabrobotkit.com.
12 www.robotics.com/arobot/sonar.html.
13 www.hompro.com/techkids/..
14www.robotul.rowww.roboti.wikipedia.ro
15 http://roboti.ro/products.aspx -roboti, kituri si componente

56
PIC Robotics – John Iovine
Programming Pic Microcontrollers With Picbasic
Adaptive Motion of Animals and Machines – Hiroshi Kimura et al (Eds)
Advances in Robot Kinematics – Jadran Lenarcic and Bernard Roth (Eds)
Amphibionics Build Your Own Biologically Inspired Reptilian Robot – Karl Williams
An Introduction to MEMs Engineering – Nadim Maluf and Kirt Williams
Anatomy of a Rrobot – Charles M Bergren
Apress.Robot.Building.for.Beginners.Dec.2009
Artificial Mind System – Kernel Memory Approach – Tetsuya Hoya
Autonomous Mobile Robots – Shuzhi Sam Ge & Frank L Lewis
Autonomous Robotic Systems – Anibal T. de Almeida and Oussama Khatib (Eds)
Scientific Methods in Mobile Robotics – Ulrich Nehmzow
Robot Builders Bonanza – Gordon Mccomb

57

10 CD/DVD
Autorul atașează în această anexă obligatorie, versiunea electronică a aplicației, a acestei
lucrări, precum și prezenta rea finală a tezei.

58

Similar Posts