Programul de studii: MECATRONICĂ [602431]

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 1
Programul de studii: MECATRONICĂ

CUPRINS
Rezumatul Lucrării ………………………….. ………………………….. ………………………….. ………………………….. …….. 3
Abstract ………………………….. ………………………….. ………………………….. ………………………….. …………………… 4
1. Introducere ………………………….. ………………………….. ………………………….. ………………………….. …………… 5
2. Analiza critică a soluțiilor existente și justificarea soluției alese ………………………….. ………………………… 7
2.1 Structura mașinilor comandate numeric ………………………….. ………………………….. ………………………. 7
2.2 Programarea și comanda numerică ………………………….. ………………………….. ………………………….. … 8
2.2.1 Structura generală a unui program în cod G ………………………….. ………………………….. …………… 8
2.3 Analiza critică a soluțiilor existente ………………………….. ………………………….. ………………………….. .. 10
2.3.1 Mașini -unelte comandate numeric industriale ………………………….. ………………………….. ……… 11
2.3.2 Mașini comandate numeric de tip hobby ………………………….. ………………………….. …………….. 14
2.4 Justificarea soluției alese ………………………….. ………………………….. ………………………….. ……………… 16
2.5 Obiectivele și ipotezele cercetării ………………………….. ………………………….. ………………………….. …. 17
3. Considerații teoretice privind mașinile comandate numeric folosite la prelucrarea cablajelor
imprimate ………………………….. ………………………….. ………………………….. ………………………….. ………………. 18
3.1 Sistemul mecanic ………………………….. ………………………….. ………………………….. ………………………… 18
3.1.1 Tipuri de motoare utilizate pentru mașinile comandate numeric ………………………….. ………… 18
3.1.2 Transmisia ………………………….. ………………………….. ………………………….. ………………………….. .. 21
3.1.3 Tipuri de rulmenți utilizați în construcția mașinilor comandate numeric ………………………….. . 24
3.1.4 Ghidaje liniare ………………………….. ………………………….. ………………………….. ……………………… 26
3.2 Sistemul electronic ………………………….. ………………………….. ………………………….. ……………………… 27
3.2.1 Sursa de alimentare ………………………….. ………………………….. ………………………….. ………………. 27
3.2.2 Senzorii de capăt de cursă ………………………….. ………………………….. ………………………….. ……… 28
3.2.3 Circuitul pentru comandarea motoarelor ………………………….. ………………………….. …………….. 29
3.2.4 Platforma cu microcontroller ………………………….. ………………………….. ………………………….. …. 34
3.3 Sistemul de comandă și control ………………………….. ………………………….. ………………………….. ……. 36
3.4 Accesorii software auxiliare ………………………….. ………………………….. ………………………….. …………. 37
3.4.1 Programul utilizat în proiectarea schemei electronice și a traseelor circuitelor imprimate. …. 37
3.4.2 Programul ce covertește prot otipul virtual al PCB -ului în limbajul de programare al mașinilor
unelte. ………………………….. ………………………….. ………………………….. ………………………….. ……………. 39
4. Proiectarea mecanică a sistemului și simularea pr ototipului virtual ………………………….. ………………… 40
4.1 Proiectarea mecanică ………………………….. ………………………….. ………………………….. ………………….. 40
4.1.1 Prezentarea software -ului în care s -a realizat proiectarea ………………………….. ………………….. 40

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 2
Programul de studii: MECATRONICĂ

4.1.2 Proiectarea și modelarea componentelor mecanice ale mașinii comandate numeric. ………… 42
4.2 Si mularea prototipului virtual ………………………….. ………………………….. ………………………….. ………. 49
4.2.1 Prezentarea software -ului în care s -a realizat simularea ………………………….. …………………….. 50
4.2.2 Simularea mișcărilor pe cele 3 axe ale mașinii comandate numeric ………………………….. …….. 51
5. Proiectarea sistemului electronic ………………………….. ………………………….. ………………………….. ……….. 54
5.1 Prezentarea software -ului de proiectare electronică EAGLE PCB Design Software …………………… 54
5.2 Proiectarea schemei electronice și A cablajului imprimat ………………………….. …………………………. 57
6. Realizarea practică a mașinii comandate numeric folosită la prelucrarea cablajelor imprimate ………. 61
6.1 Realizarea sistemului mecanic ………………………….. ………………………….. ………………………….. ……… 61
6.1.1 Realizarea structurii de rezistență a mașinii comandate numeric ………………………….. ………… 61
6.1.2 Stabilirea caracteristicilor necesare în vederea alegerii și achiziț ionării motoarelor …………… 64
6.1.3 Prezentarea sistemului mecanic realizat și asamblat ………………………….. ………………………….. 66
6.2 Realizarea sistemului electronic ………………………….. ………………………….. ………………………….. ……. 68
6.2.1 Calcularea și alegerea sursei de alimentare ………………………….. ………………………….. ………….. 68
6.2.2 Realizarea circuitului cu driver -e de motoare ………………………….. ………………………….. ……….. 69
6.2.3. Platforma cu microcontroller Arduino ………………………….. ………………………….. ………………… 71
6.2.4 Testarea funcționalității sistemului electronic ………………………….. ………………………….. ………. 72
6.3 Sistemul software ………………………….. ………………………….. ………………………….. ……………………….. 73
6.3.1 Programul ce realizează transmisia datelor către Arduino ………………………….. ………………….. 73
6.3.2 Implementarea algoritmului software pe placa Arduino ………………………….. …………………….. 75
6.4 Asamblarea mașinii comandate numeric și testarea funcționalității ………………………….. …………… 77
7. Memoriul de calcul ………………………….. ………………………….. ………………………….. ………………………….. . 82
8. Măs uri de protecția muncii, Tehnica securității și Prevenirea și stingerea incendiilor …………………….. 84
9. Concluzii finale, contribuții și perspe ctive de dezvoltare ………………………….. ………………………….. ……. 85
Bibliografie ………………………….. ………………………….. ………………………….. ………………………….. …………….. 87
Anexa nr. 1 ………………………….. ………………………….. ………………………….. ………………………….. …………….. 90

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 3
Programul de studii: MECATRONICĂ

REZUMATUL L UCRĂRII
Mașinile comandate numeric sunt sisteme mecatronice utilizate pentru modificarea
formei și a dimensiunilor corpurilor metalice sau nemetalice, prin procesul de așchiere. Cu
ajutorul acesto r mașini unelte se pot reproduce piese cu o precizie foarte mare, permițând astfel o
producție în serie mare.
Prezentul Proiect de Diplomă a avut drept scop proiectarea și realizarea unei mașini
comandate numeric care urmează s ă fie utilizată la prelucrarea cablajelor imprimate.
În partea introductivă a proiectului, s -au prezentat noțiuni generale legate de mașinile
comandate numeric, despre istoria lor și despre scara la care acestea sunt utilizate la nivel
mondial. Tot în acea stă parte au fost expuse noțiuni generale despre cablajele imprimate,
utilizare lor, dar și diverse moduri de obținere ale acestora. Următorul pas în derularea
proiectului a fost constituit din analizarea soluțiilor existente în prezent la nivel mondial și
alegerea variantei optime în vederea proiectării și realizării. După analizarea soluțiilor existente
și alegerea unei variante optime, a fost nevoie de prezentarea componentelor mecanice și
electronice utilizate pentru construcția mașinilor comandate nume ric, dar și a variantelor
software pentru comandarea întregului ansamblu și a programelor auxiliare cu ajutorul cărora se
realizează cablajele imprimate .
Prin intermediul concluzilor desprinse în urma parcurgerii pașilor anteriori, s -a realizat
proiectarea sistemului mecanic și modelarea tridimensională a acestuia în programul Catia. După
ce a fost realizată modelarea 3D, s -a efectuat o simulare a prototipului virtual în programul LMS
Virtual Lab. În urma simulării au rezultat grafice de forțe și momente, c are au fost folosite pentru
stabilirea caracteristicilor necesare alegerii motoarelor pas cu pas. După ce motoarele pas cu pas
au fost alese, s -a putut stabili tipul de driver -e de motoare potrvite acestui proiect și alături de
acestea și componentele necesare astfel că s -a putut realiza și proiectarea sistemului electronic .
Pornind de la modelul 3D al sistemului mecanic, s -a început realizarea practică a
acestuia. Pentru construcția carcasei, materialul utilizat a fost lemnul, ghidajele și piulițele s -au
realizat din poliamidă, iar materialul din care au fost realizate tijele filetate și axele de ghidare
este oțelul. Pentru asamblarea și fixarea componentelor mecanice s -au utilizat șuruburi și bride
de prindere, motoarele au fost fixate de tijele fileta te cu ajutorul unor bucși, iar la capetele opuse
prinderii motoarelor, pentru reducerea frecării, s -au utilizat lagăre de rostogolire. Realizarea
sistemului electronic a constat din, calcularea și alegerea unei surse de alimentare potrivite
proiectului și din realizarea circuitului pentru comandarea motoarelor pas cu pas. Circuitul
pentru comandarea moto arelor, a fost realizat pe o placă de prototipare, urmând ca ulterior să fie
transferat pe cablaj imprimat. După ce sistemul mecanic și cel electronic au fo st realizate, s -a
putut trece la implementarea algoritmului software pe placa Arduino și adaptarea acestuia la
cerințele proiectului.
În momentul în care toți pașii prezentați în rândurile de mai sus, au fost parcurși,
ansamblului i -a fost testată funcțio nalitatea și au fost stabilite concluziile finale.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 4
Programul de studii: MECATRONICĂ

ABSTRACT
Numerical control machines are mechatronic systems used to model the shape and size of
metallic or non -metallic bodies through cutting. By using these machine tools, parts can be
reproduced with the highest precision, thus allowing mass production.
The hereby degree thesis has as purpose the design and production of a numeric control
machine to be used in the milling of printed circuit boards.
The introductory part of the thesis provides general i nformation related to numeric
control machines, their history and the scale they are used worldwide. In addition, the same
section presents general concepts regarding printed circuit boards, their use as well as the various
methods of manufacturing them. T he next step in the development of the project consisted in the
analysis of the worldwide currently employed solutions and the selection of the optimum
alternative in view of designing and producing. Following, it was necessary to illustrate the
mechanical and electronic components used in the construction of the numeric control machines
along with the software alternatives for the command of the entire aggregate and the auxiliary
programs with the help of which printed circuit board are created.
The design ing of the mechanical system and its tridimensional modelling in Catia
program were achieved as a result of the conclusions drawn while covering the previous steps.
The simulation of the virtual prototype in LMS Virtual Lab, subsequent to the 3D modelling,
generated graphics of f orces and torques which were further used to determine the characteristics
required in the choosing of stepper motors . Consequently, the type of motor driver appropriate
for the project was decided on along with the necessary compon ents, which allowed the
electronic system to be designed and realized.
Starting from the 3D model of the mechanical system, its manufacturing was started.
Wood was the material used for the case, polyamide for the guiding system and screw nuts and
steel fo r the threaded rods and guiding axes. Screws and flanges were used in order to assemble
and secure the mechanical components, the engines were attached to the threaded rods with
thimbles and, at opposite ends, bearings were used to reduce friction. The com pletion of the
electronic system involved the calculation and selection of the appropriate power source as well
as the creation of the stepper engine command/control circuit. It was made on a prototyping
board, later being transferred on a printed circuit board. The manufacturing of the mechanical
and electronic systems made possible the implementation of the software algorithm on the
Arduino board and its adjusting to the project requirements.
The aggregate’s performance was tested after all the steps pres ented above had been
covered and final conclusions were drawn.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 5
Programul de studii: MECATRONICĂ

1. INTRODUCERE
Mașinile comandate numeric sunt sisteme mecatronice utilizate pe scară largă în industrie
și care au rolul de a modifica forma și dimensiunile unor materiale metalice sau nemetali ce, prin
procesul de așchiere . Aceste mașini au apărut ca un pas firesc în evoluția tehnologică a societății,
ca un răspuns la necesitatea de precizie și rapiditate din domeniul industrial. Datorită acestor
unelte se pot prelucra materiale sub forme foarte complexe la viteze ridicate, pe rmițând astfel
producția în serie mare a pieselor.
Comanda numerică reprezintă un procedeu de comandă automată ce permite poziționarea
sau ghidarea unui organ mobil în orice moment al mișcării, funcție de coordonatele lui. [1] Cu
ajutorul său se realizează mișcări ce urmează o traiectorie bine stabilită și se obțin profil e
complexe, ce nu pot fi obținute prin alte procedee de prelucrarea.
Prima mașină comandată numeric, a fost realizată în anul 1951, în Statele Unite ale
Americii la Institutul de Tehnologie din Massachusetts (MIT). Prima generație de mașini
comandate numer ic folosea lămpi electronice cu vacuum, din această cauză produceau o căldură
foarte mare dar ocupau și un spatiu destul de mare. Acestea, deși au reprezentat un salt destul de
mare în evoluția tehnologică încă nu erau foarte fiabile, dar acest lucru avea să se schimbe o dată
cu apariția celei de -a două generații de astfel de mașinării. Evoluția acestora a constat din
înlocuirea lămpilor electronice cu tranzistor i. Utilizarea tranzistorilor a făcut ca spațiul ocupat și
căldura produse să fie mai mici față de generația anterioară, crescând astfel și fiabilitatea lor.
Aceste două generații de mașini -unelte nu dispuneau de memorie, astfel că instrucțiunile
erau stocate pe benzi de hârtie perforată fiind transmise pe rând către mașină. Evoluția
următoarei generații a constat în utilizarea circuitelor intergate (ceea ce a scăzut considerabil
dimensiunile de gabarit) și în implementarea unei memorii proprii de stocare. Primele memorii
de stocare au fost memoriile cu role de bandă magnetică.
Odată cu apariția microprocesoarelor și a implementării tehnologiei lor a apărut și
generația mașinilor comandate numeric utilizate în prezent. Acestea au avantajul de a putea
converti desenul piesei modelate cu ajutorul tehnologiei de proiectare asistată de calculator
(CAD) în numere. Aceste numere reprezintă coordonatele în care scula așchietoare trebuie să fie
amplasată pentru a realiza prelucrarea piesei. [2]
Prezenta lucrare de diplomă își propune proiectarea și realizarea unei mașini comandate
numeric pentru realizarea și prelucrarea cablajelor imprimate, în vederea utilizări i sale în diverse
proiecte universitare și personale.
Cablajele imprimate (PCB – Printed Circuit Board) reprezintă circuitele electrice de
legătură dintre componentele electronice. Ele sunt realizat e sub formă de benzi sau suprafețe
conductoare de metal pe un suport izolant.
În general placa utilizată pentru realizarea cablajului imprimat este formată dintr -un
material izolant peste care este aplicat un strat sau mai multe straturi de cupru. Cea mai des
utilizată metoda pentru realizarea traseelor electrice a cablajelor, este metoda corozivă. Această

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 6
Programul de studii: MECATRONICĂ

metodă constă în : realizarea schemei electronice și a traseelor electrice într -un soft specializat de
proiectare a cablajelor imprimate, imprimarea imag inii pe folia de cupru și ultimul pas constă în
scufundarea plăcii într -o substanță corozivă (clorură feerică), astfel ca părțile pe care nu a fost
aplicat strat protector sunt corodate, rămânând în final traseele necesare realizării circuitului
electronic . Deși această metodă este cea mai populară, ea nu este singura, cablajele imprimate
putând fi realizate și cu ajutorul mașinilor comandate numeric, prin metoda așchierii. [3]
În cazul cablajelor imprimate realizate prin metoda așchierii se realizează sche ma
elctronică și traseele electrice, apoi cu ajutorul unor programe speciale, imaginea traseului
electric este transformată într -un limbaj specific mașinilor comandate numeric (cod G). Acest
cod comunică mașinii coordonatele în care scula trebuie să se dep laseze pentru a grava pe placă
imaginea traseului electric. În plus această metodă are avantajul de putea fi folosită și pentru
realizarea găurilor pentru plasarea componentelor electronice, cât și pentru realizarea găurilor de
fixare a plăcii.
Această luc rare are drept scop parcurgerea etapelor ne cesare documentării, proiectării și
realizării unei mașini comandate numeric .
În cadrul etapei de documentare au fost tratate pe larg câteva dintre produsele deja
existente pe piață , au fost prezentate și compara te soluțiile mecanice, electronice și software. În
urma acestei analize a fost aleasă soluția cea mai avantajoasă pentru realizarea sistemului.
Următoarea etapă principală a constat în proiectarea sistemului mecanic și a sistemului
electronic. În cadrul acestei etape s -a avut în vedere modul în care sistemul trebuie să
funcționeze și alegerea corespunzătoare a componentelor mecanice și electronice.
Ultima etapă a fost realizarea sistemului, în care se descrie pas cu pas modul în care
sistemul a fost reali zat precum și modul de asamblare și de utilizare al acestuia.
Prezenta lucrare se dorește a fi un punct de plecare în dezvolta rea ulterioară mașinii
comandate numeric, prin îmbunătățirea atât a sistemului mecanic cât și a celui electronic, în
vederea obțin erii unui sistem cât mai performant și flexibil.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 7
Programul de studii: MECATRONICĂ

2. ANALIZA CRITICĂ A SO LUȚIILOR EXISTENTE Ș I
JUSTIFICAREA SOLUȚIE I ALESE
2.1 STRUCTURA MAȘINI LOR COMANDATE NUMERI C
Structura unei mașini comandate numeric este formată, în principal din două componente.
Prima este mașina -unealtă care poate fi: freză, strung, mașină de găurit, de rectificat,rabotat,
alezat, mortezat etc. A doua componentă este controller -ul, acesta este ”creierul” care
coordonează mișcările sculei așchietoare. Pe lângă cele două componente majo re, există și
anumite componente auxiliare.
Din punct de vedere funcțional, pentru un CNC sunt importante următoarele
caracteristici: [4]
o Numărul de axe pe care se poate deplasa mașina;
o Purtătorul de program;
o Memoria pentru înmagazinarea programelor;
o Modul de introducere a programelor;
o Posibilitatea de adaptare pentru legătura cu o memorie externă;
o Precizia obținută.
Orice mașină unealtă realizează mișcări în raport cu niște axe specifice fiecăreia, de aceea
este foarte importantă stabilirea corectă a axelor. În comanda numerică, noțiunea de axă
reprezintă o deplasare liniară sau o rotație. Aceste mișcări sunt realizate de organele mobile ale
mașinii unelte comandate numeric (MUCN). Teoretic există 3 axe de translație (X,Y,Z) și 3 axe
de rotație în jur ul celor 3 axe de translație și în acest caz se consideră mașina ca având 6 axe. În
cazul în care tot ansamblul este montat pe un suport care poate executa diferite mișcări, se poate
discuta de mașini cu 7, 8 sau chiar 9 axe. [4]
Cele mai cunoscute echipame nte CNC sunt: [4]
o Sinumerik, Siemens, Germania;
o FANUC, Japonia;
o Alcatel, Franța;
o Haas, SUA;
o Mikromat, Germania;
o Heidenhein, Germania.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 8
Programul de studii: MECATRONICĂ

2.2 PROGRAMAREA ȘI COMAN DA NUMERICĂ
Toate mișcările executate de MUCN se raportează la un sistem de referință, în general
acest sistem de referință corespunde cu originea sistemului de coordonate. Punctul de origine al
sistemului de coordonate, este punctul în care toate coordonatele axelor au valoarea 0. Acesta
trebuie să fie un punct fix și bine stabilit în spațiu, deoarece p oziționarea pieselor de prelucrat se
face față de acest punct. Pe lângă sistemul de coordonate fix al mașinii, se alege și un sistem de
referință relativ. Acesta se alege de către programator și reprezintă punctul de unde începe
prelucrarea piesei. Sistemu l absolut de coordonate al MUCN și sistemul relativ de referință sunt
legate între ele printr -un vector de poziție. Această operațiune se numește ”poziționarea piesei”
și are ca efect transformarea coordonatelor relative în coordonate absolute , prin efectu area, de
către mașina comandată numeric, a unei translații automate. [4]
Desenele de execuție ale pieselor sunt realizate cu ajutorul programelor de tip CAD
(acronim din lb. Engleză care înseamnă Computer Aided Design – Proiectare Asistată de
Calculator). Din aceste desene se extrag coordonatele utilizate de mașinile unelte pentru
prelucrarea pieselor brute.
Pentru recunoașterea și deplasarea mașinii la coordonatelor descrise în desenul de
execuție, acestea trebuie scrise într -un limbaj specific de programa re. Scrierea în limbajul
specific de programare al mașinii, se poate face manual, direct de către un programator sau se
face automat, cu ajutorul unor programe special concepute. Acestea poartă denumirea de sisteme
CAM ( acronim din lb. Engleză care înseam nă Computer Aided Manufacturing – Fabricare
Asistată de Calculator) .
În programarea mașinilor comandate numeric se deosebesc 5 etape: [1]
o Se strâng informații de desen și tehnologie în planul de operații;
o Sunt calculate și transformate informațiile de pozi ție și coordona te alea
mașinii unelte, în infor mații codificate;
o Se scrie programul sursă;
o Înainte ca programul să fie implementat în mașina unealtă, acesta se probează
pe un simulator. Proba are ca scop depistarea de greșeli în programare sau
optimizarea programului conceput;
o Ultima etapă este cea de transferare a programului către mașină, în vederea
realizării prelucrării.
2.2.1 Structura generală a unui program în cod G
Un program realizat pentru comandarea mașinilor -unelte este alcătuit din fraze și cuvinte.
Fiecare frază reprezintă un pas al prelucrării , instrucțiunile fiind scrise în interiorul frazelor sub
formă de cuvinte. Cuvintele reprezintă un caracater alfabetic, urmat de o cirfră sau un număr.
Toate programele scrise în limbajul de programare al mașin ilor unelte comandate numeric sunt
formate dintr -o parte de început, în care instrucțiunile pregătesc mașina pentru începerea
prelucrării, partea de mijloc, în cadrul căreia instrucțiunile vizează în mod direct realizarea

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 9
Programul de studii: MECATRONICĂ

prelucrării și ultima parte este c ea a căror instrucțiuni vizează finalizarea prelucr ării și care
îndepărtează scula așchietoare de piesă, opresc motorul ce antrenează scula etc.
Programele realizate pentru comandarea numerică a mașinilor unelte poartă denumirea
generică de programe în cod G. Denumirea aceasta vine tocmai din cauză că principalele funcții
ale acestui limbaj de programare încep cu litera G.
În tabelul 2.1 sunt prezentate pe scurt cele mai utilizate funcții utilizate în acest limbaj de
programare.
Tabel 2.1 Funcții specifice ale limbajului de programare [1]
Funcția Specificul funcției
% Marchează începutul programului;
N Număr frază;
L Număr subprogram;
G00 Poziționare rapidă;
G01 Interpolare liniară;
G02 Interpolare circulară în sens orar;
G03 Interpolare circulară în sens trigonometric;
G04 Temporizare în număr de rotații ale arborelui principal (AP);
G26 Programare rază după axa X;
G27 Programare diametru după X;
G28 Autoprogramare pentru strunjire plană (frontală);
G29 Autoprogramare pentru strunjire longitudinală;
G32 Deplasare la poziția de schimbare a sculei;
G33 Filetare cu pas constant;
G36 Deplasare la punctul de început al programului;
G38 Autoprogramare START;
G39 Autoprogramare STOP;
G40 Sfârșit de echidistanță;
G41 Echidistanță stânga în sensul de prelucrare;
G42 Echidistanță dreapta în sensul de prelucrare;
G44 Completare prin unghi;
G45 Completare prin cerc;
G54 Deplasare punct nul;
G60 Oprire exactă (poziționare precisă);
G63 Tarodare cu mandrină de compensare;
G64 Regim de conturare fără compensare erori de poziție;
G90 Introducerea dimensiunilor absolute;
X Informație de traiectorie după axa X în [mm] ;
Y Informație de traiectorie după axa Y în [mm] ;
Z Informație de traiectorie după axa Z în [mm] ;

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 10
Programul de studii: MECATRONICĂ

I Parametru de interpolare pentru axa X în [mm]
Pasul filetului paralel cu axa X în [mm/rot];
J Param etru de interpolare pentru axa Y în [mm]
Pasul filetului paralel cu axa Y în [mm/rot];
K Parametrul de interpolare pentru axa Z în [mm] (G90/G91)
Pasul filetului paralel cu axa Z în [mm/rot];
F Avansul în [mm/rot];
S Turația arborelui principal [rot/min];
T Număr sculă;
M00 Oprire programată necondiționată;
M02 Sfârșit de program cu revenire la prima fază;
M3 Sens de rotație a arborelui principal spre dreapta;
M4 Sens de rotație a arborelui principal spre stânga;
M5 Oprire arbore principal;
M8 Pornire răcire;
M9 Oprire agent de răcire;
M10 Oprirea arborelui principal ;
M11 Pornire transportor șpan;
M12 Oprire transportor șpan;
M22 Revenire din subprogram.
M60 Schimbare sculă;
R Valoarea adâncimii de așchiere.

2.3 ANALIZA CRITICĂ A SOLUȚIILOR EXISTEN TE
În prezent sunt existente pe piață două mari categorii de mașini unelte comandate
numeric. Prima categorie este cea a mașinilor unelte folosite la nivel industrial. Acestea sunt
mașini cu dimensiuni de gabarit mari, pot prelucra piese de dimensiuni variabile, la precizii și
viteze ridicate. A doua categorie o reprezintă mașinile unelte de tip hobby, care nu sunt atât de
performante ca și prima categorie, de aceea nici nu sunt utilizate la nivel industrial. Ca și
caracteristici principale ale acestora, pot fi considerate: dimensiunile mici de gabarit, precizie și
viteză de prelucrare considerabil mai mici față de cele de tip industrial, cos tul scăzut de
achiziționare și întreținere.
În general mașinile unelte din prima categorie sunt realizate de firme recunoscute la nivel
mondial, în timp ce mașinile care fac parte din cea de a doua categorie sunt realizate de firme
mai puțin cunoscute, sau chiar pot fi construite în ateliere personale.
În continuare vor fi prezentate și comparate câteva exemple din cele două categorii
enunțate mai sus.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 11
Programul de studii: MECATRONICĂ

2.3.1 Mașini -unelte comandate numeric industriale
Primul model de MUCN prezentat este DOOSAN Puma MX 2500 . Acesta este un strung
CNC cu 7 axe produs în anul 2005 .

Fig 2.1 Imaginea de ansamblu a mașinii CNC DOOSAN Puma MX [5]
Strungul DOOSAN Puma are următoarele caracteristici: [5]
o Lungimea rotației: 1020 mm ;
o Diametrul turației: 550 mm ;
o Control: Fanuc 18iTB ;
o Numărul axelor controlate: 7 ;
o Șurub de găurire: 76 mm ;
o Conul uneltei: Capto C6 ;
o Deplasare longitudinală a saniei: 550 mm ;
o Turația maximă: 3500 rot/min ;
o Intervalul deplasării rapide: 24 -24-16 m/min ;
o Putere totală: 26 kW ;
o Greutatea aproximativă: 12000 kg ;
o Dimensiuni aproximative: 4500x2500x2500 mm .
Al doilea mode l de mașină unealtă comandată numeric este strungul HARDINGE GS –
250 N.W. Acesta este un strung ceva mai nou decât precedentul, fiind fabricat în 2008.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 12
Programul de studii: MECATRONICĂ

Fig. 2.2 Imaginea de ansamblu a strungului HARDINGE GS -250 N.W. [6]
Strungul HARDINGE GS -250 N.W. are următoarele caracteristici: [6]
o Lungimea rotației: 1600 mm ;
o Diametrul turației: 250 mm ;
o Control: Siemens Sinumerik 18 D ;
o Numărul axelor controlate: 7 ;
o Șurub de găurire: 65 mm ;
o Deplasare longitudinală a saniei: 550 mm ;
o Turația maximă: 2500 rot/min ;
o Diametrul maxim al sculei: 356 mm;
o Putere totală: 30 kW ;
o Greutatea aproximativă: 5000 kg ;
o Dimensiuni aproximative: 4400x2100x2100 mm ;

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 13
Programul de studii: MECATRONICĂ

Fig. 2.3 Imaginea de ansamblu a frezei comandate numeric Cincinnati Milacron ARROW
500 [7]
Al treilea model de mașină unealtă este freza model Cincinnati Milacron ARROW 500 ,
fabricată în anul 1995 și care prezintă următoareale caracteristici: [7]
o Controller CNC: AC RAMATIC 2100 (Siemens) ;
o Cursa maximă : x\y\z: 510 mm x 510 mm x 510 mm;
o Magazie scule: 21 ;
o Plaja de turații: 60 – 6000 rot/min ;
o Con port scule: ISO 40 ;
o Număr de axe: 3 -4;
o Dimensiune masă de lucru:520 mm x 700 mm;
o Greutate max. piesa de prelucrat:350 kg ;
o Gabarit L x l x H: 2650 mm x 2000 mm x 2700mm ;
o Greutate: 3050 kg;
o Putere instalata: 16 kw.

Ultimul model de mașină comandată numeric de tip industrial, este modelul de freză
WEIDA XK7125 . Această mașină comandată numeric vine cu un controller de tip Siemens
808D și are următoarele caracteristici: [8]
o Cursa maximă : x\y\z: 400mm x 240mm x 400mm;
o Viteza pentru deplasare rapidă: 6000 mm/min;
o Viteza de avans: 2.5 -3000 mm/min
o Plaja de turații: 60 – 6000 rot/min;

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 14
Programul de studii: MECATRONICĂ

o Precizia de poziționare: +0.02mm … -0.02 mm;
o Precizia de r epetare a poziționării: 0.01 mm;
o Dimensiune masă de lucru:600mm x 250mm;
o Greutate max. piesa de prelucrat:350 kg;
o Gabarit L x l x H: 1650mm x 1600mm x 2000mm;
o Greutate: 1450 kg;

Fig. 2.4 Imaginea de ansamblu a frezei comandate numeric WEIDA XK7125 [9]
2.3.2 Mașini comandate numeric de tip hobby
Primul model de mașină comandată numeric de tip hobby modelul ZEN707F8 realizată
de Zen ToolWorks. Aceasta este o mașină pentru gravat pe 3 axe, poate fi folosită și pentru tăiat
diverse materiale , pentru realiza rea de cablaje imprimate și pentru diverse alte prelucrări.
Motoarele care antrenează cele 3 axe sunt de tip NEMA 17, transmisia mișcării este realizată cu
ajutorul unor angrenaje șurub -piuliță, iar dimensiunile de lucru sunt : 177mm X 177mm X
51mm. Este compatibilă cu programele: Mach 3 CNC Control și ArtCam Express. [10]
Dezavantajul acestei mașini este că pentru a putea fi utilizat este necesar un computer ce dispune
de port paralel . Acest lucru este destul de incomod, din cauză că majoritatea computer elor nu
mai sunt dotate cu astfel de porturi. Pentru a putea fi utilizat cu orice fel de computer este
necesar un adaptor special sau mai poate fi utilizată o platformă cu microcontroller de tip
Arduino.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 15
Programul de studii: MECATRONICĂ

Fig.2.5 Imaginea de ansamblu a mașinii de gravat Zen Toolworks [10]
Al doilea model de mașină comandată numeric de tip hobby este modelul
DIYLILCNCv2 (Big Shoulders) și reprezintă un proiect open -source al unei mașini pentru tăiat.
Pentru construcția ansamblului f ix de susținere a părților mobile a fost preferat placajul ,
deoarece este un material ușor, iar forțele la care este supus nu sunt foarte mari. Toate resursele
necesare pentru realizarea acesteia sunt puse la dispoziție prin intermediul internetului.
Dimensiunile de lucru sunt: 310mm X 340mm X 110mm și poate fi utilizată pentru tăierea
materialelor din: lemn, plastic, metale ușoare etc. Pentru ca sistemul să fie pus în mișcare sun t
necesare 3 motoare pas cu pas . Pentru transformarea mișcării de rotație a mo toarelor în mișcare
de translație, care să asigure deplasarea pe cele 3 axe, s-a preferat urilizarea transmisiei pe curea
pentru axele X și Y, în timp ce pentru axa Z s -a utilizat o transmisie șurub -piuliță. Programul
care controlează și pune în mișcare an samblul este EMC2 și rulează doar p e sistemul de operare
Linux. [12 ] De asemenea și această mașină este controlată de computer prin intermediul portului
paralel .

Fig.2.6 Imaginea de ansamblu a mașinii comandate numeric Big Shoulders [11]

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 16
Programul de studii: MECATRONICĂ

Ultima variantă de mașină comandată numeric de tip hobby este un model de mașină de
gravat cu LASER. Acest model utilizează o diodă LASER cu puterea de 500 mW, are o precizie
de 0.01 mm și poate grava pe o suprafață de 170mm X 200mm. Dimensiunile de gabarit sunt
reduse 31 0mm X 250mm X 150mm, funcționează la o tensiune de lucru de 12 volți. Față de
precedentele două exemple, această mașină funcționează pe două axe și în plus conexiunea
computer -mașină se realizează cu ajutorul unei platforme Arduino, astfel nemaifiind nevoi e de
un computer cu port paralel. Cele două axe sunt puse în mișcare de două motoare pas cu pas, iar
transmisia este pe curea. [13]

Fig.2.7 Imagine de ansamblu a mașinii de gravat cu LASER [13]
2.4 JUSTIFICAREA SOLUȚIE I ALESE
În urma analizei asupra ce rcetărilor și realizărilor pri vind mașinile comandate numeric, se
desprind următoarele concluzii:
1. Sistemele de acest tip sunt destinate atât pentru industrie, cît și p entru ateliere
personale.
2. Pentru realizarea unor sisteme de acest gen, materialele necesare variază în funcție de
destinația pentru care este construită maș ina.
3. De asemenea acest lucru este valabil și pentru modul în care mașina comandată
numeric este cotrolată. Modalitatea de control variind de la un simplu computer, cu
un anumit soft instalat, pentru cele de tip hobby, până la automate programabile
specializate, ce au instalat programul lor propriu , pentru mașinile folosite la nivel
industrial.
4. Pentru mașinile comandate numeric de tip industrial prețul variază de la câteva zeci
de mii de Euro, până la câteva sute de mii sau chiar milioane de Euro. În schimb
pretul unei mașini comandate numeric de tip hobby este redus acesta fiind cuprins
între câteva sute de Euro, până undeva în jurul a 1000 sau maxim 2000 de Euro.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 17
Programul de studii: MECATRONICĂ

5. Întreținerea MUCN de tip industrial necesită personal calificat, piesele de schimb sunt
costisitoare și necesită o tehnologie destul de complicată pentru a putea fi montate,
astfel încât se ajunge la un cost de întreținere foarte mare. În schimb pentru MUCN
de tip hobby, nu es te necesar personal calificat, aceste a putând fi reparate chiar de
către deținător, piesele de schimb sunt relativ ieftine și nici nu necesită o tehnologie
complicată de interschimbabilitate.
Datorită factorilor enumerați mai sus, s -a ales ca soluție const ructivă, realizarea unei
mașini comandate numeric de tip hobby, ce va fi controlată de computer prin intermediul unei
plăci Arduino. Pentru gravarea circuitelor imprimate se va utiliza o sculă așchietoare, se vor
utiliza 3 motoare pentru a se asigura mișca rea pe 3 axe, iar transmisia va fi șurub -piuliță. Cele 3
motoare necesită și circuite de tip Driver de motoare, deoarece placa Arduino nu poate furniza
suficient curent motoarelor. Construcția ansamblului fix va fi din lemn, deoarece forțele
exercitate nu sunt foarte mari, iar astfel va scădea greutatea finală.
2.5 OBIECTIVELE ȘI I POTEZELE CERCETĂRII
În vederea realizării acestui proiect se au avea în vedere următoarele obiective:
o Proiectarea și r ealizarea sistemului mecanic ce asigură mișcarea de așchiere .
o Proiectarea și r ealizarea sistemului electronic, ce acționează partea mecanică.
o Implementarea algoritmului software pe placa Arduino, necesar pentru
interpretarea datelor primite de la computer și comanda sistemului electronic.
o Implementarea unui program ce realizează transmisia automată a datelor către
placa Arduino.
o Utilizarea și valorificarea sistemului.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 18
Programul de studii: MECATRONICĂ

3. CONSIDERAȚII TEOR ETICE PRIVIND MAȘINI LE
COMANDATE NUMERIC FO LOSITE LA PRELUCRARE A
CABLAJELOR IMPRIMATE
Toate mașinile comandate numeric, indifer ent de destinația lor, sunt formate din 3
sisteme principale interconectate, dependente unul față de celălalt. Aceste sisteme sunt:
1. Sistemul mecanic, ce cuprinde toate el ementele care sunt implicate în efectuarea
deplasărilor ;
2. Sistemul electronic, acesta a cționează și pune în mișcare sistemul mecanic;
3. Sistemul de comandă și control.
În afara celor 3 sisteme principale, pentru realizarea unui cablaj imprimat cu ajutorul unei
mașini comandate numeric, mai sunt necesare două accesorii software auxiliare și anu me:
1. Programul cu ajutorul căruia se realizează schema electronică și se proiectează traseul
circuitului;
2. Un program ce transformă coordonatele și informațiile de poziție din desenul de
execuție al traseului, în limbajul specific de programare, al mașinilor unelte.
În continuare urme ază o descriere detaliată a fiecărui sistem în parte, dar și a programelor
auxiliare, necesare pentru scrierea codului sursă în limbajul specific de programare.
3.1 SISTEMUL MECANIC
Sistemul mecanic are rolul de a asigura atât mobil itatea ansamblului cât și intergritatea
structurală. Acesta se proiectează în funcție de mediul de lucru și obiectivele stabilite pentru
mașina unealtă. În parte care urmează vor fi prezenta te componente le mecanice necesare
realizării unui astfel de sistem .
3.1.1 Tipuri de motoare utilizate pentru mașinile comandate numeric
Motorul reprezintă componenta mecanică esențială în construirea unei MUCN. Acesta
are rolul de a transforma energia electrică în energie mecanică. Datorită faptului că aceste mașini
sunt destinate prelucrărilor de înaltă precizie, se preferă utilizarea motoarelor pas cu pas.
Motorul pas cu pas (MPP) reprezintă un motor sincron special, care convertește semnalul
electric primit în mișcare de rotație, ce constă în mișcări incrementale care au ac eeași mărime.
Semnalul electric este primit sub formă de impulsuri, aplicate asupra fazelor motorului. În
funcție de numărul de faze ale motorului poate fi determinat și unghiul de rot ație, numit și unghi
de pas. [14 ]
Unghiul de pas ( ) al motorului determină câți pași trebuie executați pentru ca rotorul să
efetcueze o rotație completă . Astfel cu cât unghiul de pas este mai mic, cu atât numărul de pași

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 19
Programul de studii: MECATRONICĂ

necesari efectuării unei rotații complete este mai mare. Spre exemplu pentru un unghi de pas cu
valoarea de 1.8 , sunt necesari 200 de pași pentru realizarea unei rotații complete (360 ).
Numărul de pași necesari efectuării unei rotații complete se poate calcula cu următoarea formulă:

; (3.1)

Fig.3.1 Structura și modul de funcționare a unui MPP [15]
În figura de mai sus se poate observa reprezentarea schematică a unui motor pas cu pas,
alături de explicațiile fiecărei componente în parte. Pentru reprezentarea din această imagine
unghiul de pas se poate calcula în funcție de numărul de faze ale motorului și de numărul de poli
ai săi. Formula pentru aceasta este următoarea:

(3.2)
În funcție de modul de conectare al înfășurărilor se deosebesc două tipuri de motoare pas
cu pas și anume, MPP bipolare și MPP unipolare. [16]
MPP bipolare sunt comandate prin schimbarea sensului curentului prin una din cele două
bobine, pe rând. Acestea au în general 4 fire de conectare.
MPP unipolare sunt comandate prin alimentarea, cu aceeași polaritate, a fiecăreia din cele
4 bobine, pe rând. E le au, în general 5 sau 6 fire de conectare.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 20
Programul de studii: MECATRONICĂ

Fig.3.2 Modalități de conectare a motoarelor pas cu pas [17]
În figura 3.2 se poate observa modul de conectare al motoarelor pas cu pas, în funcție de
tipul motorului și de numărul de fire.
Cele mai utilizate motoare pas cu pas pentru mașinile comandate numeric sunt cele care
corespund standardului NEMA (National Electrical Manufacturers Association). Acest standard
se referă la dimensiunea ( L X l ) sau la diametrul măștii motorului , în funcție de mo del și a fost
introdus pentru a asigura interschimbabilitatea pieselor . Motoarele care corespund acestui
standard se recunosc datorită notației lor specifice, care este de tipul : NEMA X, unde X poate
lua valorile: 8, 11, 14, 17, 23, 34, 42. Dimensiunea/ D iametrul măștii este dat în inch și se
calculează împărțind la 10 valoarea X. În figura 3.3 se poate observa un exemplu de motor de tip
Nema 23, utilizat pentru deplasarea axelor mașinilor unelte.

Fig.3.3 Motor NEMA 23 [18 ]

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 21
Programul de studii: MECATRONICĂ

3.1.2 Transmisia
Această componentă are rolul de a transforma mișcarea de rotație a motorului, în mișcare
de translație, astfel încât să fie asigurată deplasarea corectă a axelor. Există mai multe variante de
transmisii, acestea fiind utilizate în funcție de greadul de precizie c are se dorește a fi obținut.
3.1.2.1 Transmisii prin curele
Sunt transmisii mecanice care transmit mișcarea de rotație și sarcina, de la o roată
conducătoare la o roată condusă, cu ajutorul unui element, flexibil și infinit, ce poartă denumirea
de curea.
Puterea este transmisă de la o roată la cealaltă cu ajutorul forței de frecare, apărută între
curea și roțile aflate în contact cu aceasta. Forța de apăsare a curelei (prin care se realizează
frecarea) se r eglează în timpul montajul ui, prin întinderea curelei. [19 ]
Roțile care pun cureaua în mișcare poartă denumirea de fulii. Pentru fiecare axă este
nevoie de două fulii. Una dintre acestea este montată pe motor, iar cealaltă vine montată în
partea opusă. În figura 3.4 se poate observa imaginea unei fulii cu dinți. Atât fulia dințată cât și
cureaua cu dinți au rolul de a reduce alunecarea crelei cât mai mult.

Fig.3.4 Fulie [20 ]
Curelele utilizate în industrie sunt variate, acestea putând fi clasificate în f uncție de forma
secțiunii: [19]
o Curele late , puterea pe care o pot transmite este P=2000 kW, la viteze periferice
mai mici sau egale cu 12 m/s;
o Curele trapezoidale;
o Curele politriunghiulare;
o Curele dințate, pu terea maximă transmisă este P=400 kW, la viteza periferică
mai mică sau egală cu 80 m/s;
Cele mai utilizate curele pentru transmisia mișcării, în cazul mașinilor comandate
numeric, sunt curelele dințate. O astfel de curea, este reprezentată în figura 3.5 .

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 22
Programul de studii: MECATRONICĂ

Fig.3.5 Curea dințată [21 ]
Dintre avantajele transmisiilor mecanice pe curea pot fi amintite următoarele: [19 ]
o Funcționarea lor se face fără zgomot;
o Se monteză și se întrețin fără efort;
o Șocurile și vibrațiile sunt amortizate;
o Costuri de fabricație mici;
o Sarcina este transmisă la distanțe mari, comparabil cu alte tipuri de transmisii
mecanice;
o Viteza de funcționare este mare;
o Nu necesită precizie ridicată la montaj.
Printre dezavantajele acetui tip de transm isie se află și următoarele: [19 ]
o Dimensiuni mar i de gabarit;
o Durabilitate limitată;
o Raportul de transmitere nu este constant din cauza alunecării curelei pe roți;
o Sensibilitate mare la factorii externi;
Cu toate că au o serie mare de avantaje, transmisiile mecanice pe curele prezintă și unele
dezavanta je, motiv pentru care nu sunt utilizate la mașinile comandate numeric, decât în cazul în
care nu este necesară o precizie foarte înaltă și nici forțele de rezistență nu sunt mari. Spre
exemplu acestea sunt utilizate în cazul mașinilor pentru gravat cu Lase r, aici prelucrarea
făcându -se fără forțe de rezistență.
3.1.2.2 Transmisiile șurub -piuliță
Aceste transmisii transformă mișcarea de rotație în mișcare de translație , iar odată cu
mișcarea se transmite și sarcina. Cupla elicoidală reprezintă elementul cel mai impo rtant al

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 23
Programul de studii: MECATRONICĂ

acestor transmisii, prin intermediul acesteia, mișcarea de rotație este converti tă în mișcare de
translație. [22 ]
În cazul mașinilor comandate numeric transformarea mișcării de rotație se face în
următorul mod: șurubul efectuează mișcarea de rotaț ie, fiind antrenat de motor și ca urmare a
acestui fenomen, piulița efectuează o translație, corespunzătoare cu pasul filetului.
În funcție de tipul de frecare, deosebim cuple elicodale cu alunecare și cuple elicoidale cu
rostogolire ( cuple elicoidale cu bile ). [22 ]
Cuplele elicoidale cu alunecare sunt transmisiile clasice șurub -piuliță și reprezintă cea
mai utilizată metodă de transmitere a mișcării. În figura 3.6 se poate observa reprezentarea
acestei transmisii.

Fig.3.6 Transmisie șurub -piuliță (cu plă elicoidală cu alunecare) [23 ]
Avantajele pe care le prezintă acest tip de transmisii, nu sunt foarte numeroase, dar sunt
esențiale pentru funcționarea optimă a mașinilor comandate numeric. Printre a ceste avantaje se
numără și: [22 ]
o Transmiterea de sarc ini mari;
o Siguranța în exploatare;
o Funcționează cu zgomot redus.
Desigur aceste transmisii au și dezavantaje, printre care se pot aminti:
o Randamentul scăzut;
o Dificultatea realizării piulițelor;
o Costuri de producție relativ mari.
Deși transmisiile șurub -piuliță cu cuplă elicoidală cu alunecare sunt cele mai utilizate în
construcția mașinilor unelte, nu sunt și cele mai performante. Acest fapt se datorează
randamentului mic obținut. Cuplele elicoidale cu rostogolire, fiind mult mai performante din
acest punct de vedere. Mișcarea se efectuează cu o frecare minimă, deoarece piulițele sunt dotate

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 24
Programul de studii: MECATRONICĂ

cu mai multe rânduri de bile cu recirculare internă. În figura 3. 7, se poate observa reprezentarea
unei astfel de transmisii.

Fig.3.7 Transmisie șurub -piuliță cu cup lă elicoidală ce rostogolire [24 ]
3.1.3 Tipuri de rulmenți utilizați în construcția mașinilor comandate
numeric
Lagărele reprezintă orgrane de mașini cu rolul de susținere a arborilor sau a pieselor cu
mișcare de rotație, fiind utilizate pentru preluarea sarcini lor ce acționează a supra. În cazul funcție
de frecarea din interiorul lagărului, se deosebesc, lagăre cu rostogolire și lagăre cu alunecare.
Elementul principal al lagărului cu rostogolire este rulmentul. Acesta este format din: inel
exterior, inel interio r, corpuri de rostogolire și colivie (împiedică contactul dintre corpurile de
rostogolire). [25]
Avantajele cele mai importante ale utilizării rulmenților sunt: [25]
 Randamentul mare;
 Gabarit axial redus, ceea ce înseamnă o capacitate de încărcare mare pe unitatea
de lungime;
 Consum scăzut de lubrifiant;
 Întreținere ușoară;
 Grad mare de standardizare internațională.
Printre dezavantajele acestor organe de mașini se pot aminti, următoarele:

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 25
Programul de studii: MECATRONICĂ

 Sensibilitatea la șocuri, vibrații și funcționare cu viteze foarte mari;
 Gabaritul radial relativ mare;
În figura 3.8 este reprezentat un rulment normal cu bile pe un rînd de tip 625ZZ . Acești
rulmenți sunt cele mai utilizate tipuri de rulmenți. Acești rulmenți sunt construiți pentru a prelua
sarcini axiale mici și sarcin i radiale medii. Codul rulmentului 625ZZ are următoarea
semnificație: Cifra 6 semnifică faptul că este un rulment cu bile, cifra 2 că face parte din seria
doi de diametre, cifra 5 reprezintă diametrul interior al rulmentului (5 mm) și ZZ semnifică
faptul că este protejat cu capac metalic pe ambele părți.

Fig.3.8 Rulment cu bile pe un rând 625ZZ [26]
Primul și cel mai important rol al rulmenților în construcția mașinilor unelte comandate
numeric este de a susține șurubul în timpul mișcării de rotație. În a cest caz rulmentul se
montează în partea opusă motorului. Cel de al doilea rol este cel de a asigura ghidajul pe ntru
deplasare a pe cele 3 axe. În acest caz se folosesc rulmenț i liniari, care asigură deplasarea pe
axele de ghidare lin, cu frecare redusă. Un astfel de exemplu de rulment este prezentat în figura
3.9. Acesta este un rulment liniar cu bile recirculabile și este așezat într -o carcasă de aluminiu,
prevăzută cu găuri filetate pentru montare.

Fig.3.8 Rulment liniar cu bile [27]

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 26
Programul de studii: MECATRONICĂ

3.1.4 Ghidaje liniare
Aceste organe de mașini sunt utilizate în cadrul mașinilor comandate numeric pentru a
muta o sarcină de -a lungul unui traseu drept, cu o rezistență pe direcția de mișcare cât mai mică.
Un sistem de ghidare liniară este compus dintr -un rulment liniar și din axe sau șine de ghidare.
[28] Deoarece despre tipurile de rulmenți s -a discutat într -un capitol anterior, în acest capitol se
va face referire doar la axele de ghidare și la șinele de ghidare.
În figura 3.9 sunt reprezentate trei tipuri de axe de ghidare, cu diametre diferite. Axele de
ghidare sunt în general sub formă de bări metalice, cu un anumit diametru. Diametrul trebuie ales
astfel încât să corespundă diametrului interior al rulmentului liniar. Folosirea sistemelor de
ghidare ce utilizează aceste tip uri de axe are câteva avantaje importante, dintre care se pot aminti
următoarele:
o Mișcarea se efectuează lin și precis;
o Au un randament ridicat;
o Frecarea fiind foarte mică, forța necesară deplasării sarcinii scade considerabil.

Fig.3.9 Axe de ghidare [29]
A doua variantă pentru asigurarea ghidajului liniar la mașinile comandate numeric este
ghidajul pe șină. Acest tip de ghidare, este mai performant decât precedentul , el oferă o suprafață
netedă și durabilă, iar capacitatea de încărcare este mai mare . În plus acestea sunt susținute în
totalitate pe întreaga lungime de deplasare. Dezavantajul major al acestui sistem de ghidare îl
reprezintă costul ridicat de achiziționare. În figura 3.10 este prezentată o șină de ghidare, în timp
ce în figura 3.11 este prez entat întreg sistemul de ghidare cu șină și rulment liniar. După cum se
poate observa structura rulmentului liniar diferă ca formă față de rulmentul liniar folosit la
sistemul de ghidare pe axă.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 27
Programul de studii: MECATRONICĂ

Fig.3.10 Șină pentru ghidare [30] Fig.3.11 Sistem de ghidare cu șină [29]
3.2 SISTEMUL ELECTRONIC
Sistemul electronic are rolul de a pune în mișcare componentele sistemului mecanic
mobil. Prin intermediul acestui sistem motoarele sunt comandate să efectueze mișcări ce
urmează un anumit algoritm.
În cazul mașinilor unelte comandate numeric de tip hobby, sistemul electronic este format
din următoarele componente:
1. Sursă de alimentare;
2. Senzori de capăt de cursă;
3. Circuit electronic pentru comandarea motoarelor;
4. Placă cu mic rocontroller.
3.2.1 Sursa de alimentare
Sursa de alimentare este un sistem ce transformă curentul alternativ de la rețeaua de
curent, în curent continuu și totodată coboară tensiunea la valoarea la care componentele trebuie
alimentate. În general mașinile comand ate numeric, au nevoie de surse de tensiune în intervalul
12 V – 36 V. Pe lângă tensiunea de alimentare, contează foarte mul ca sursa de alimentare să
asigure furnizarea unui curent suficient de mare pentru alimentarea tuturor componentelor. Din
această ca uză este de preferat ca atunci când se alege o sursă de alimentare, să se aleagă o sursă
ce furnizează un curent cât mai mare. Cei mai mari consumatori de curent sunt motoarele pas cu
pas. Curentul consumat de motoare variază în funcție de modul de funcțio nare, astfel că cel mai
puțin va consuma atunci când motorul este lăsat să funcționeze în gol și cel mai mult va consuma
când motorul este blocat.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 28
Programul de studii: MECATRONICĂ

Fig.3.11 Sursă de alimentare [31]
În figura 3.11 este reprezentată o sursă de alimentare ce furnizează la ieșire o tensiune de
12 V și un curent de până la 29 A. Tensiunea de intrarea variază, aceasta putând fi alimentată la
o tensiune în curent alternativ cuprinsă între valorile 180 V – 264 V. Sursa este dotată cu
protecție la scurtcircuit și suprasarcină, ve ntilator pentru răcire și senzor de temperatură. [31]
3.2.2 Senzorii de capăt de cursă
Senzorii sunt dispozitive ce generează semnale electrice în funcție de anumite semnale
sau stimuli. În funcție de factorul sensibil, aceștia pot fi: [32]
o Mecanici (ex. Senzori de presiune);
o Chimici(ex. Senzori de alcool);
o Magnetici(ex. Senzori Hall);
o Termici(ex. Termistori);
o Radiativi(ex. Senzori ultrasonici).
Rolul senzorilor în construcția mașinilor comandate numeric, reprezintă detecția
apropierii și prevenirea lovirii părți i aflate în mișcare, de partea fixă. În cazul unei mașini
comandate numeric cu 3 axe de deplasare, este nevoie de 6 senzori de capăt de cursă.
Senzorii mecanici sunt cei mai utilizați ca senzori de capăt de cursă, deoarece detecția nu
este necesară o precizie de detectare foarte înaltă, fiind suficient ca detecția să fie realizată în
momentul contactului dintre senzor și partea mobilă, astfel ca în momentul lovirii senzorului,
sistemul să nu mai avanseze.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 29
Programul de studii: MECATRONICĂ

Fig.3.12 Senzor capăt de cursă [33]
În figura 3.12 este reprezentat un senzor de capăt de cursă mecanic. Acesta acționează ca
un întrerupător. Modul de funcționare este simplu, o bornă este conectată la microcontroller și
cealaltă bornă este conectată la 5 V. În momentul în care partea aflat ă în mișcare lovește
senzorul, circuitul se închide și microcontroller -ul primește un semnal de 5 V, astfel că acesta
știe că senzorul a fost atins și comandă oprirea motorului care se afla în mișcare.
3.2.3 Circuitul pentru comandarea motoarelor
Din cauză că mi crocontroller -ele nu pot alimenta în mod direct consumatori mari de
curent, deoarece furnizează un curent insuficient ( aprox. 50 mA ), este necesară utilizarea unor
circuite suplimentare, ce se alimentează atât de la microcontroller, cât și de la sursa d e
alimentare. Aceste circuite integrate poartă deumirea generică de Driver de motoare. Un astfel
de circuit are rolul de a amplifica semnalele transmise de microcontr oller la tensiunea și curentul
necesar punerii în mișcare a motoarelor.
Pentru comanda m otoarelor pas cu pas, utilizate în astfel de proiecte, se utilizează 3 tipuri
difer ite de driver e de motoare. Acestea au caracteristici diferite, alegerea lor făc ându -se în
funcție de cerințele pe care trebuie să le îndeplinească. În rândurile ce urmează v or fi prezentate
caracteristicile și schemele de utilizare alor trei modele de drivere de motoare.
3.2.3.1 Driver de motoare de tip L293 produs de firma Texas Instruments
Modelul acesta de driver este constituit din 4 semi punți H și este destinat, controlului
bidirecțional al curentului, cu valoare maximă de 1 A pe fiecare canal . Tensiunea la care acesta
operează este cuprinsă între 4.5 V și 36 V . Este destinat conducerii de sarcini inductive ce sunt
întâlnite în cazul releelor, solenoidelor, motoare pas cu pas sa u de curent continuu. [34] În figura
3.13 se poate observa circuitul integrat L293, a cărui caracteristici au fost prezentate mai sus, în
timp ce în figurile 3.14 și 3.15 sunt reprezentate două modalități de conectare a acestui driver la
un motor pas cu pa s bipolar .

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 30
Programul de studii: MECATRONICĂ

Fig.3.13 Driver de tip L293 [35]
În schema din figura 3.14 conectarea celor 4 intrări ale circuitului integrat L293 se face la
două porturi ale microcontroller -ului. Pentru ca acest lucru să fie posibil, este necesară utilizarea
a doi tranzist ori bipolari de tip NPN, două rezistențe de 1 kΩ și a două rezistențe de 10 kΩ.
Conectarea acestor componente auxiliare se face conform schemei din figură.
Avantajul utilizării acestei scheme îl reprezintă utilizarea unui număr redus de porturi ale
microco ntrller -ului, astfel că se reduce semnificativ numărul de porturi utilizate pentru întregul
sistem. Din păcate utilizarea acestei scheme presupune folosirea unui număr crescut de elemente,
astfel crescând dificultatea realizării montajului.

Fig.3.14 Schemă de conectare a driver -ului, folosind 2 ieșiri de la microcontroller [3 6]
Schema din figura 3.15 este simplă, realizarea montajului nefiind complicată deoarece nu
se utilizează niciun component auxiliar. Modul acesta de conectare este preferat în caz ul în care
sistemul ce se dorește a fi realizat nu este foarte complex și necesită un număr redus de
componente ce trebuie conectate la porturile microcontroller -ului. În cazul unei mașini

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 31
Programul de studii: MECATRONICĂ

comandate numeric acest monta j nu este eficient, deoarece pentru co mandarea a 3 axe vor fi
nevoie de utilizarea a 12 p orturi ale microcontroller -ului doar pentru comandarea motoarelor.

Fig.3.1 5 Schemă de conectare a driver -ului, folosind 4 ieșiri de la microcontroller . [36]
În cazul ambelor scheme de conectare a driver -ului la microcontroller, pentru
comandarea motoarelor pas cu pas , se observă anumite notații în dreptul fiecărui pin al
circuitului intergat. Pentru o înțelegere mai bună a modului de funcționare se va face o scurtă
descriere a fiecărei notații.
o 1,2,3,4 en. (enable) se conectează la 5 V pentru a activa controlul motorului.
o 1,2,3,4 in. (input) reprezintă porturile de intrare ale circuitului. În cazul schemei
din figura 3.15, toate cele 4 intrări se conectează la microcontroller. Pentru
schema din figura 3 .14 conectarea celor 4 intrări se face pe doar două porturi ale
microconntrollerului, după cum urmează: intrările 1 și 4 sunt conectate direct la
microcontroller și intrările 2 și 3 sunt conectate la cele două porturi ale
microcontroller -ului prin intermedi ul unei rezistențe și al unui tranzistor.
o 1,2,3,4 out. (output) reprezintă ieșirile circuitului integrat. Acestea se conectează
la bornele motorului pas cu pas.
o GND se conectează la masa întregului circuit.
o V1 reprezintă alimentarea unității logice și se c onectează la 5 V.
o V2 se conectează la tensiuni cuprinse între 4.5 V – 36 V si reprezintă surs a de
alimentare a motoarelor.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 32
Programul de studii: MECATRONICĂ

3.2.3.2 Driver de motoare de tip L298 produs de firma STMicroelectronics
Circuitul i ntegrat L298 poate fi achiziționat atât în capsula clasi că, cât și în capsulă SMD
( Surface Mounting Design). În privința caracteristicilor tehnice este asemănător circuitului
L293. Acest circuit realizează controlul bidirecțional al curentului, cu valoare maximă de 2 A pe
fiecare canal. Tensiune a maximă de int rare este de 46 V. [37] De asemenea este destinat
conducerii unor sarcini inductive, deci poate fi utilizat în cazul motoarelor pas cu pas. În figura
3.16 este reprezentată imaginea uni circuit L298 în capsulă clasică, acest tip de capsulă este
preferat în utilizare datorită ușu rinței cu care se montează și demontează.

Fig.3.16 Circuit integrat L298 în capsulă normală . [38]
Utilizarea acestui driver de motoare este incomodă, deoarece pentru a putea fi utilizat la
comandarea motoarelor pas cu pas bipolare, este necesară folosire a împreună cu un circuit
integrat auxiliar de tip L297. Modul de conectare se poate observa în reprezentarea schematică
din figura 3.17.

Fig. 3.17 Schema de coma ndă a unui motor pas cu pas. [37 ]

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 33
Programul de studii: MECATRONICĂ

După cum se observă în schema de comandă, acest montaj nece sită și alte componente
auxiliare ( diode, condensatori și rezistențe ) , din această cauză realizarea sa este greoaie și
datorită numărului mare de componente, pot apărea erori de montaj destul de greu de depistat.
Se recomandă utilizarea acestui driver, î mpreună cu monatajul respectiv, în special în
cazul în care transmisia de date se face pe portul paralel.
3.2.3.3 Modul d river de motoare de tip A4988 produs de firma Pololu
Circuitul A4988 este un driver de motoare cu micropășire și este proiectat pentru
comandar ea motoarelor pas cu pas bipolare. Tensiunea maximă la care poate fi alimentat este de
35 V iar curentul maxim este de 2 A pe fiecare canal. În plus poate tensiunea unității logice poate
fi alimentată atât la 5 V cât și la 3.3 V. [39] În cazul produsului r ealizat de firma Pololu este
vorba de un modul ce conține acest driver. Conexiunea cu microcontroller -ul se face prin
intermediul a doi pini, denumiți STEP și DIR. Aceștia comandă efectuarea unui anumit număr de
pași (STEP) cât și direcția în care se efec tuează acești pași (DIR). În figura 3.18 este reprezentat
modulul ce conține driver -ul de motoare A4988.

Fig.3.18 Modul driver de motoare A4988. [40]
Construcția aceasta modulară asigură un grad ridicat de flexibilitate, acesta putând fi
schimbat cu ușurință în cazul defectării. În plus montarea este simplă, fiind nevoie de cunoștiințe
minime în domeniul electronicii.

Fig.3.19 Schema pentru conectare a modulului [40]

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 34
Programul de studii: MECATRONICĂ

În figura 3.19 se poate observa o schemă funcțională ce utilizează acest modul. În această
schemă mai sunt reprezentate, sursă de alimentare a motoarelor, cuprinsă între 8 V și 35 V, un
motor pas cu pas bipolar, sursa de alimentare a unită ții logice și microcontroller -ul. Modul de
conectare este simplu, fiind reprezentat explicit în figura de mai sus.
Datorită avantajelor enumerate mai sus, această variantă este cea mai utilizată în
construcția mașinilor comandate numeric, ce utilizează o platformă cu microcontroller , fiind
soluția cea mai simplă de utilizare și care necesită un nivel de cunoștiințe minim în domeniul
electronicii.
3.2.4 Platforma cu microcontroller
Un microcontroller este un sistem folosit pentru a comanda și a culege infor mații din
mediul înconjurător. Pentru o mai bună înțelegere a noțiunii de microcontroller, acesta se poate
considera un calculator pe un singur chip. Elementele sale componente fiind următoarele : [41]
o Unitatea centrală de prelucrare (UCP);
o Generator de ta ct, acesta necesită atașarea exterioară a unui cristal de cuarț;
o Memoria RAM;
o Memoria ROM/PROM/EPROM/EEPROM;
o Dispozitive de intrare și ieșire;
o Controller de întreruperi;
o Dispozitive periferice.

Fig.3.20 Schema bloc a unui microcontroller [41]
În figura 3 .20 se observă schema bloc a unui microcontroller, în care este prezentat din
punct de vedere schematic modul de funcționare al acestuia. Programul ce trebuie executat este

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 35
Programul de studii: MECATRONICĂ

încărcat în memoria microcontroller -ului, în unitatea centrală de prelucrare progra mul este
interpretat și rulat pas cu pas. În paralel cu rularea programului se citesc și datele primite de la
senzori, prin intermediul intrărilor ( acestea pot fi analogice sau digitale ). În funcție de datele
primite se acționează actuatorii prin interme diul ieșirilor sale. Generatorul de tact are rolul de a
dicta frecvența cu care se execută instrucțiunile.
Arduino reprezintă una dintre cele mai flexibile și simplu de folosit platforme cu
microcontroller. Deoarece se bucură de o popularitate foarte mare , există numeroase dispozitive
dezvoltate pentru a putea fi folosite împreună cu acesta. Datorită acestui lucru poate fi utilizat
pentru o gama largă de aplicații, în special, dar fără a se limita la acesta, din domeniul
automatizărilor.

Fig.3.21 . Arduin o UNO [42]
În figura 3.21 este prezentată cea mai populară platformă Arduino, aceasta poartă
denumirea de Arduino UNO și are următoarele caracteristici tehnice: [42]
o Microcontroler: ATmega328
o Tensiune de lucru: 5V
o Tensiune de intrare (recomandat): 7 -12V
o Tensiune de intrare (limită): 6 -20V
o Pini digitali: 14 (6 PWM output)
o Pini analogici: 6
o Intensitate de ieșire: 40 mA
o Intensitate de ieșire pe 3.3V: 50 mA
o Memorie Flash: 32 KB (ATmega328) 0.5 KB pentru bootloader
o SRAM: 2 KB (ATmega328)

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 36
Programul de studii: MECATRONICĂ

o EEPROM: 1 KB (ATmega3 28)
o Frecvența de ceas : 16 MHz
Această platformă este atât de populară datorită dimensiunilor sale destul de mici, a
prețului relativ scăzut ș i a faptului că are suficiente intrări și ieșiri astfel încât să poată fi utilizat
cu succes în numeroase aplicați i.
În cazul utilizării sale pentru construirea unei mașini comandate numeric, are rolul de a
intepreta datele primite de la computer și de a acționa motoarele în funcție de instrucțiunile
primite. Pentru a putea interpreta limbajul de programare specific al mașinilor comandate
numeric, este necesară scrierea unui program special în memoria microcontroller -ului.
3.3 SISTEMUL DE COMANDĂ ȘI CONTROL
Sistemul de comandă și control reprezintă sistemul ce asigură coordonarea deplasărilor pe
fiecare axă în parte astfe l încât mișcările să se realizeze conform unui algoritm bine determinat.
În cazul mașinilor comandate numeric, aceest lucru este realizat de către un computer prin
intermediul unui software specializat ce preia, intepretează și transmite mașinii datele int roduse.
Pentru a ușura interacțiunea om -mașină, aceste soft -uri au, în general o interfață utilizator, care
poate conține butoane, prin intermediul cărora se pot efectua diverse setări în ceea ce privește
prelucrarea, modificări ale programului în cazul î n care este necesară intervenția operatorului,
led-uri, afișaje pe care se derulează liniile de cod, pentru ca operatorul să vadă în ce stadiu al
prelucrării se află piesa și diverse alte
Pentru a exemplifica un astfel de soft specializat, în figura 3.22 este prezentată interfața
utilizator a programului Mach3.

Fig.3.22. Interfața util izator a software -ului Mach3 [43 ]
În figură se poate observa cât de complexă este interfața utilizator și cât de mare este
gradul de flexibilitate oferit de aceasta. Sunt o ferite informații referitoare la poziția sculei, viteza
de rotație și avansul sculei. În cazul unei erori apărute pe timpul prelucrării se poate apăsa

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 37
Programul de studii: MECATRONICĂ

butonul de STOP, mai există și un buton pentru Start, Reset, buton pentru alegerea și încărcare
programul ui, pentru modificare programului etc. În colțul din stânga sus există un ecran pe care
se derulează liniile de cod în timp real . Asemănător acestui program sunt realizate și celelalte
programe existente pentru comanda și controlul mașinilor comandate nume ric, dar s -a ales acest
soft pentru exemplificare, deoarece acesta este cel mai complex. Din păcate dezavantajul major
al acestuia îl reprezintă limitarea posibilității realizării conexiunii cu mașina doar prin
intermediul portului paralel. Din această cau ză în cadrul acestui proiect se preferă utilizarea unei
soluții diferite. Soluția aleasă este utilizarea unei plăcuțe Arduino, datorită acestui lucru comanda
se face prin intermediul portului USB.
Utilizarea plăcii de dezvoltare Arduino crește gradul de co mplexitate a sistemului de
comandă și control. În acest caz este necesar un program ce asigură atât transmisia continuă a
datelor către mașină cât și interfața utilizator, iar rolul de interpretare a datelor primite și
acționare a motoarelor este preluat d e placa Arduino, prin intermediul unui program special
conceput pentru această operațiune.
3.4 ACCESORII SOFTWARE A UXILIARE
Deși aceste programe auxiliare nu sunt utilizate în construcția propriu -zisă a mașinilor
comandate numeric, ele sunt necesare atunci când se dorește realizarea și prelucrarea cablajelor
imprimate . Deoarece scopul acestui proiect îl reprezintă proiectarea și realizarea unei mașini
comandate numeric folosită , la prelucrarea cablajelor imprimate , este necesară și descrierea
acestor elemen te.
3.4.1 Programul utilizat în proiectarea schemei electronice și a traseelor
circuitelor imprimate .
Primul pas în realizarea unui cablaj imprimat îl reprezintă proiecatarea schemei
electronice. În cadrul acestei etape se aleg componentele electronice necesare, se poziționează și
se conectează în raport unele cu celelalte astfel încât cirucitul să funcțio neze conform destinației
pentru care este realizat.
Următorul pas îl constituie realizarea traseelor în vederea construirii cablajului imprimat.
După ce s -a realizat schema electronică, se trece la poziționarea pe o placă virtuală a tuturor
componentelor, poziționarea se va face într -un mod convenabil astfel încât realizarea traseului să
se facă într -un mod ușor. Traseele reprezintă linii sau curbe ce realizează conexiunile dintre
componente conform schemei realizate la pasul anterior. Grosimea cu care ace stea se trasează
trebuie să fie suficientă astfel încât să fie posibilă parcurgerea acestora de către curentul electric.
Pașii descriși anterior se realizează cu ajutorul programelor destinate acestui scop. Există
numeroase astfel de programe, iar pentru u nele utilizarea lor este gratuită, în timp ce pentru altele
este necesară achiziționarea unei licențe. Câteva exemple de program utilizate la proiectarea
cablaje lor imprimate sunt:Target, EAGLE , Proteus, OrCAD, KiCAD, Expert PCB etc. Toate
aceste programe au inclusă atât proiectarea CAD cât și procesarea CAM a schemei.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 38
Programul de studii: MECATRONICĂ

În figura 3.23 . se observă un exemplu de schemă electronică a unui montaj , realizată în
programul EAGLE .

Fig.3.23. Schema electronică a unui montaj electronic.
În figura 3.24. este imagine a traseului pentru realizarea circuitului imprimat al schemei
prezentate în figura 3.23., realizat de asemenea în EAGLE .

Fig.3.24. Traseul realizat în vederea imprimării pe placă de cupru
În cele două exemple din figuri le 3.23. și 3.24. se observă dif erența dintre realizarea unei
scheme electronice și realizarea traseului în vederea imprimării acestuia pe un suport placat cu
cupru. În primul rând în cadrul unei scheme electronice traseele pot fi intersectate între ele, fiind
nevoie doar ca ele să poată fi deosebite, în timp ce atunci când se creează prototipul virtual

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 39
Programul de studii: MECATRONICĂ

traseele trebuie realizate cu grijă fără a se intersecta. În al doilea rând pentru prototipul virtual al
plăcii este nevoie ca toate componentele să fie așezate în ordine, astfel încât la final dimensiunile
de gabarit ale plăcii să fie optime, în schimb atunci când se realizează schema electronică este
necesară doar așezare a și conectarea componentelor într -o ordine logică și inteligibilă.
3.4.2 Programul ce covertește prototipul virtual a l PCB -ului în limbajul de
programare al mașinilor unelte.
După realizarea prototipului virtual al cablajului ce se dorește a fi imprimat este necesar
ca acesta să fie convertit în coordonate, care mai apoi sunt transcrise în limbajul specific de
programare . Pentru aceasta se folosesc anumite programe care generează codul ce trebuie
încărcat pe mașina -unealtă automat. Un astfel de program este și PCB -GCODE. Acesta
reprezintă ULP ( User Language Program) ce se instalează ca o extensie, în interiorul
programul ui utilizat pentru proiectarea și realizarea cablajelor imprimate. Pentru o funcționare
optimă este recomandată rularea acestui program prin intermediul programului EAGLE.
Procesul de realizare al cablajelor imprimate cu ajutorul acestu program constă în:
o Realizarea schemei electronice;
o Crearea prototipului virtual al cablajului;
o Rularea programului PCB -GCODE.ULP, pentru a genera codul G;
o Verificarea și optimizarea codului cu ajutorul unui program ce simulează
prelucrarea CNC;
o Încărcarea codului pe mașină î n vederea realizării cablajului imprimat.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 40
Programul de studii: MECATRONICĂ

4. PROIECTAREA MECANICĂ A SISTEMULUI ȘI
SIMULAREA PROTOTIPUL UI VIRTUAL
4.1 PROIECTAREA MECANICĂ
Prin noțiunea de proiectare asistată de calculator se înțelege utilizarea de către inginerii
proiectanți a acelor unelte, aplicații software sau programe de calculator, în vederea conceperii,
realizării și modelării unei piese. [44]
În vederea proiectării mecanice a mașinii comandate numeric, se au în vedere concluziile
trase la sfârșitul capitolului 2. Proiectarea și modelarea 3D a întregului ansamblu se realizează în
programul de proiectare asistată de calculator Catia, produs de firma Dassault Systemes.
4.1.1 Prezentare a software -ului în care s -a realizat proiectarea
Programul de proiectare asistată de calculator Catia reprezintă o soluție software
multiplatformă CAD/CAM/CAE. La început a fost creat pentru a fi utilizat în industria militară,
ulterior fiind adoptat și în industria civilă. [45]
Pentru realizarea și mode larea unei piese în Catia, se urmează următorii pași:
1. Se pornește programul ;
În figura 4.1 se poate observa cum arată interfața cu utilizatorul, a programului Catia. Din
fereastra Start, localizată în colțul din stânga sus, se alege modulul de lucru dorit .

Fig.4.1. Interfața cu utilizatorul în Catia

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 41
Programul de studii: MECATRONICĂ

2. Se intră în modulul Sketcher, pentru a se realiza schița piesei ce se dorește a
fi concepută;
În figura 4.2 este reprezentată imaginea modulului Sketcher, ce se accesează
din meniu Start – Mechanical Desi gn – Sketcher.

Fig.4.2 . Modulul Sketcher
După ce s -a accesat acest modul, se începe construcția geometriei dorite. În partea
dreaptă a figurii 4.2, sunt prezentate uneltele de lucru ale acestui modul. Acestea se utilizează în
vederea construirii schiței , dar și a costrângerii dimensionale și geometrice a acesteia.
Câteva exemple de unelte ale acestui modul sunt: Point by clicking, Axis, Line, Elipse,
Spline, Circle, Rectangular și Profile. Acestea sunt localizate pe bara de unelte iar ordinea în care
au fost enumerate corespunde poziționării pe bară din partea inferioară spre partea superioară.
3. Odată schița realizată, se iese în modulul Part Design. În acest modul piesa este
modelată 3D;
În figura 4.3. în partea superioară este reprezentată imaginea modulului Part Design iar
dedesubtul ei este imaginea mărită a uneltelor de lucru ale acestui modul. Cu ajutorul acestora se
realizează diverse operațiuni prin care piesa este adusă la forma dorită.
Pentru lucrul în acest modul uneltele utilizate cel mai d es sunt:
o Primul din lista uneltelor (începând cu partea stângă) este Pad, cu ajutorul acestei
comenzi se obține o structură pe 3 dimensiuni a profilului realizat în modulul
Sketcher.
o Următoare comandă din acestă listă este Pocket. Pentru a utiliza această comandă
este nevoie ca mai întâi să fie realizat un alt profil pe suprafața 3D construită .
Aceasta realizează o înlăturare de material pe suprafața descrisă de acel profil și
cu adâncimea specificată de utilizator.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 42
Programul de studii: MECATRONICĂ

o Comanda Shaft, realizează piese tridimen sionale de revoluție. Pentru a realiza o
astfel de piesă, în modulul Sketcher este nevoie să fie creat un profilul dorit al
piesei și mai este necesară trasarea unei axe de simetrie.
o Comanda Groove, poate fi considerată ca opusul comenzii Shaft, cu ajutoru l
acestei comenzi se realizează o înlăturare de material de pe suprafața piesei, în
jurul unei axe.
o Comanda Hole se utilizează atunci când se dorește realizarea unei găuri pe
suuprafața piesei. Găurile pot fi, străpunse, filetate, etc.
o Rib, Slot și Solid Combine se află de asemenea în lista uneltelor, dar sun t mai
puțin utilizate.

Fig. 4.3 . Modulul Part Design și imaginea detaliată a uneltelor de lucru

4. În cazul în care se dorește realizarea unui ansamblu, toate piesele modelate în modulu
Part Design sunt adăugate în modulul Assembly Design.
4.1.2 Proiectarea și modelarea componentelor mecanice ale mașinii
comandate numeric.
În imaginea din figura 4.4 este reprezentarea cutiei mașinii comandate numeric, pe care
vor fi așezate toate celelalte componente. Acea sta trebuie să fie o structură rigidă pentru a putea
susține greutatea celorlalte componente. Dimensiunil de gabarit ale cutiei sunt în milimetri li au
următoarele valori (L X l X H) 400 mm X 400 mm X 100 mm și g rosimea perețilo r este de 10 de

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 43
Programul de studii: MECATRONICĂ

mm. În parte a inferioară, pe două din cele 4 părți ce constiuie suprafața cutiei, au fost realizate 6
găuri pe care vor fi montate 2 axe pe ntru ghidare și o tijă filetată, ce vor asigura deplasarea pe
axa Y.

Fig.4.4 . Modelarea 3D a cutiei CNC
Pe suprafața superioar ă a celorlalte două părți paralele, pe care nu au fost realizate găuri,
se vor monta două brațe ce vor susține axele și tija filetată ce va face posibilă deplasarea sculei
de-a lungul axei X. Cele două brațe sunt identice, au fiecare câte 3 găuri pe care s e montează
două axe de ghidare și o tijă filetată
. În imaginea 4.5 se poate observa reprezentarea unuia dintre aceste brațe. Pentru a putea
fi montate pe suprafața superioară a cutiei, este necesar ca acestea să aibă aceeași grosime cu cea
a pereților cut iei și anume 10 mm. Celelalte două dimensiuni ale brațelor sunt: lățimea de 80 mm
și înălțimea de 300 mm.
Aceste brațe vor fi montate și fixate pe suprafața pereților cutiei prin intermediul unor
șuruburi și a unei bride de prindere pentru fiecare braț în parte. Fiecare bridă va cuprinde pe
suprafața ei atât brațul respectiv, cât și peretele cutiei corespunzător. Prinderea se va face în cel
puțin patru șuruburi pentru fiecare bridă, astfel că două șuruburi vor fixa brida și peretele cutiei,
iar cele lalte două șuruburi vor fixa aceeași bridă cu brațul respectiv.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 44
Programul de studii: MECATRONICĂ

Fig.4.5 . Modelarea 3D a brațelor
Următorul pas în crearea modelului 3D al sistemului mecanic al mașinii comandate
numeric este realizarea unui suport care va rigidiza cele două brațe fixate de cutia CNC. În figura
4.6 se poate observa modelul tridimensional al acestui suport. Acesta se va fixa în partea din
spate a brațelor .

Fig.4.6 . Modelarea 3D a suportului pentru brațe
După ce au fost modelate elementele rigide ale ansamblului, se începe modelarea axelor
de ghidare, ghidajelor liniare, a tijelor filetate și a piulițelor. Axele de ghidare necesare
construcției mașinii comandate numeri sunt în număr de șase. Pentru axa X și axa Y sunt
dimensiunile axelor trebuie să fie de 400 de mm, în timp ce pentru axa Z dimensiunile celor două
axe trebuie să fie de 200 mm.
Pentru o mai bună înțelegere a geometriei acestor axe, în imaginea din figura 4.7 este
reprezentată una dintre cele 6 axe de ghidare

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 45
Programul de studii: MECATRONICĂ

Fig.4.7 . Modelarea 3D a axelor de ghidare
Pe suprafața axelor de ghidare vor rula ghidajele liniare. Acestea vor fi montate pe masa
pe care se vor așeza elementele ce necesită prelucrare, în cazul axei Y, pentru axa X vor fi
așezate pe spatele suportului ce asigură mișcarea axei Z, iar pentru axa Z se vor monta pe spatele
suportului pentru scula așchietoare și vor asigura efectuarea translațiilor de -a lungul celor 3 axe
cu jocuri și frecare cât mai mici. În figura 4.8 este reprezentată imaginea unui ghidaj liniar pent ru
a se putea observa geometria și modu l în care acestea au fost modelate.

Fig.4.8 . Modelarea 3D a ghidajelor liniare
Prin intermediul tijelor filetate și a piulițelor se asigură transformarea mișcării de rotație a
motoarelor în mișcare de translație, astfel se face posibilă deplasarea părțil or mobile. Din această
cauză ele reprezintă un rol esențial în construcția mașinilor comandate numeric, deci și
modelarea virtuală a lor este esențială.
În figura 4.9 se poate observa imaginea modelului tridmensional a unei tije filetate, în
figură se mai poate observa că există într -unul dintre capete o gaură, pentru montarea motorului.
Fixarea acestora se face prin intermediul unei bucși.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 46
Programul de studii: MECATRONICĂ

Fig.4.9 . Modelarea 3D a tijelor filetate
Deplasarea pe cele 3 axe se face în felul următor, în timp ce ansamblul f ormat din tijă și
motor se rotește, piuliț a, care este fixată de alături de ghidajele liniare de unul dintre suporți sau
de masă, realizează o mișcare de translație. Una dintre piulițele modelate este reprezentată în
figura 4.10, după cum se poate observa piulița area aceeași formă ca și ghidajele liniare, s -a
realizat acest lucru pentru ca montarea să fie similară cu cea a ghidajelor.

Fig.4.10 . Modelarea 3D a piulițelor
În imaginea din figura 4.11 este reprezentată masa pe care se așează placa de cupru
ce urmează a fi prelucrată în vederea realizării circuitului electric. Aceasta are formă
dreptunghiulară, dimensiunile ei fiind de 200 mm X 270 mm. Pe aceasta se vor monta niște
bride cu ajutorul cărora se fixează plăcuțele.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 47
Programul de studii: MECATRONICĂ

Fig.4.11 . Modelarea 3D a mesei pentru deplasarea pe axa Y
Pentru ca scula așchietoare să se deplaseze de -a lungul axei X, este nevoie de un suport
ce susține axa Z. Acest suport este reprezentat în f igura 4.12 și după cum se poate observa are
formă de „U” pentru a se putea fixa axele de ghidare și tija filetată a axei Z. Deasupra acestui
suport se montează motorul ce asigură deplasarea axei Z.

Fig.4.12 . Modelarea 3D a suportului pentru deplasarea pe axa Z
Pentru a putea efectua prelucrarea cablajului, scula așchietoare are nevoie de un suport
care să o susțină. Acest suport este reprezentat în figura 4.13, s -a optat ca suportul să fie sub

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 48
Programul de studii: MECATRONICĂ

formă de L pentru ca scula să poată să fie fixată de marginea suportului pe toată lungimea sa,
astfel încât să se asigure o rigiditate suficientă pentru efectuarea prelucrărilor.

Fig.4.13 . Modelarea 3D a suportului pentru scula așchietoare
Cea mai importantă componentă mecanică a întregului ansamblu o repre zintă m otorul pas
cu pas. Modelarea acestuia este reprezentată în figura 4.14 și este realizată conform
dimensiunilor standardului NEMA 15 . Dimensiunile acestui standard sunt: Lungime 39 mm,
lățime 39 mm și înălțimea de 34 mm.

Fig.4.14 . Modelarea 3D a motoarelo r pas cu pas

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 49
Programul de studii: MECATRONICĂ

Fig.4.15 . Modelarea 3D a întregului ansamblu
În figura 4.15 se poate observa modelarea 3D a întregului ansamblu. Acesta este realizată
cu ajutorul modulului Assembly Design. Pentru a modela ansamblul s -au utilizat costrângerile
geometrice puse la dispoziție de acest modul. Câteva exemple de astfel de comenzi sunt:
o Coincidence și a fost utilizată pentru a fixa axele de ghidare și tijele filetate în
găurile aferente dar și pentru a fixa ghidajele liniare și piulițele de aceste axe și
tije.
o Contact, aceasta s -a utilizat pentru a se fixa restul de componente unele de
celelalte.
o Offset, prin intermediul acestei comenzi s -a asigurat așezarea la o anumită
distanță a componentelor fixate cu ajutorul comenzii Contact.
4.2 SIMULAREA PROTOTI PULUI VIRTUAL
Sistemele MBS ( Multibody systems ) reprezintă studiul comportamentului dinamic al
tuturor corpurilor rigide sau flexibile, ce sunt interconectate. Fiecare dintre corpuri poate avea
mișcări de translație sau de rotație.
În principiu corpurile afla te în mișcare sunt descrise de comportamentul lor cinematic.
Comportamentul dinamic al acestora rezultă din echilibrul dintre forțele aplicate și rata de
schimbare a impulsului.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 50
Programul de studii: MECATRONICĂ

În timp ce corpurile simple sau părți ale unui sistem mecanic sunt studiate în detaliu prin
metoda elementului finit, comportamentul unui sistem multicorp ( MBS ) este studiat de obicei
prin metode specifice MBS , în următoarele domenii: [46]
o Inginerie aerospațială;
o Inginerie b iomecanică;
o Robotică;
o Inginerie industrială;
o Fizică.
Studiul comportamenutului sistemelor multicorp ( MBS ) se realizează mult mai ușor în
prezent, datorit ă tehnologiei actuale, astfel că studiul comportamentului dinamic al acestora se
face automat de către un software specializat. Cele mai cunoscute programe care se utilizează în
analiza sistemelor multicorp sunt : MSC Adams, al companiei MSC Software Corporation și
LMS Virtual Lab, al companiei germane Siemens.
4.2.1 Prezentarea software -ului în care s -a realizat simularea
Pentru simularea prototipului virt ual s -a utilizat programul LMS Virtual Lab, deoarece
aceste pachet software se află în dotarea laboratoarelor facultății.
Programul LMS Virtual Lab permite analizarea și optimizarea în timp real a
performanțelor sistemelor mecanice și mecatronice, înainte de testarea acestor sisteme în
varianta lor fizică. Acest lucru reprezintă un mare avantaj, deoarece nu mai este necesară
construirea unui prototip fizic pentru testare, acest lucru făcâdu -se la nivel virtual. Astfel
costurile și timpul de fabricție se red uc considerabil. [47]
Pe lângă caracteristicile enumerate mai sus, acest program este compatibil și cu diverse
soft-uri CAD, astfel că modelarea 3D se poate realiza într -un anumit sofware, iar mai apoi pentru
simularea prototipului virtual se importă model ul în LMS. Însă programul are la rândul său
încorporat un program în care se poate realiza modelarea 3D și anume programul pe care LMS
Virtual Lab îl are încorpora t este Catia. Deoarece despre sofware -ul Catia s -a discutat în cadrul
subcapitolului de proie ctare mecanică, în această parte vor fi prezentate doar caracteristicile
specifice pentru realizarea simulării prototipului virtual .
În figura 4.16. este reprezentată imaginea de ansamblu a sistemului mecanic al mașinii
comandate numeric , pentru care urmea ză să se realizeze simularea mișcărilor pe cele 3 axe. De
asemenea în aceeași figură se observă și interfața utilizator a acestui program. În partea dreaptă
se flă comenzile utilizate pentru a introduce o cuplă, pentru a introduce o forță cât și pentru a
introduce un driver de mișcare în acea cuplă. În partea stângă se află arborescența, prin
intermediul căreia se pot vedea operațiunile realizate până în acel moment.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 51
Programul de studii: MECATRONICĂ

Fig.4.16. Prezentarea interfeței utilizator în LMS .
4.2.2 Simularea mișcărilor pe cele 3 axe ale mașinii comandate numeric
În vederea simulării mișcărilor pe cele 3 axe al e prototipului virtual al mașinii comandate
numeric, s -a pornit de la modelul tridime nsional prezentat în figura 4.16 și care a fost realizat în
Catia.
După ce s -a realizat modelul tridimensional al mașinii comandate numeric, acesta este
importat în software -ul LMS Virtual Lab. Pentru a se putea realiza simularea mișcărilor pe cele 3
axe, este necesar ca mai întâi, componentele ansamblului să fie transfor mate în corpuri (body).
Dacă pentru realizarea modelului 3D al ansamblului s -au utilizat constângeri geometrice, după ce
toate componentele au fost transformate în corpuri, acestea trebuie constrânse cinematic. Prin
urmare în interiorul fiecărei articulați i se introduc cuple cinematice. Câteva exemple de cuple ce
pot fi introduse în articulații sunt:
o Cuple de translație;
o Cuple de rotație;
o Cuple cilindrice;
o Cuplă de tip șurub -piuliță;
o Cuplă cu roți dințate.
În cazul acestei simulări s -a utilizat cupla de translație pentru articulațiile mobile, iar
corpurile fixe, au fost fixate prin intermediul selectării din meniul Properties al fiecărui corp a
opțiunii Fixed To Ground . În momentul în care s -au realizat toa te aceste setări, se trece la
introducerea în cuple , a driver -elor de mișcare, care vor simula mișcarea pe care mașina trebuie
să o realizeze.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 52
Programul de studii: MECATRONICĂ

Simularea mișcărilor pe cele 3 axe a mașinii comandate numeric s -a realizat pentru
calcularea forțelor și momente lor apărute în aceste cuple pe tot parcursul simulării. În urma
acestor calcule au rezultat niște grafice, din care s -au putut extrage valorile maxime ale
momentelor de torsiune pentru fiecare axă în parte. După ce s -au stabilit valorile maxime ale
momentu lui de torsiune pentru fiecare cuplă în parte, se pot stabili caracteristicile pe care
motorul ales pentru exploatare, trebuie să le aibă.

Fig.4.17. Graficul de variație în timp al momentului de torsiune pentru cupla din axa X
În figura 4.17. este repre zentat graficul variației în timp a momentului de torsiune pentru
axa X, după cum se poate observa din imagine, acesta variază foarte puțin, abia spre finalul
simulării, moment în care momentul de torsiune atinge valoarea maximă și apoi scade brusc până
când atinge o valoare minimă, urmând ca mai apoi să revină la valoare constantă. Valorile atinse
de momentul de torsiune din cupla axei X variază între 0.096 Nm, atunci când acesta are valoare
minimă, 0.108 Nm, această valoare se menține constantă în majorit atea timpului și 0.122 Nm,
când momentul de torsiune atinge valoarea maximă.
Pentru graficul de variație în timp al momentului de torsiune din cupla axei Y, prezentat
în figura 4.18. valoarea maximă este de 0.122 Nm, în timp ce valoarea minimă este de 0.0 94 Nm.
Pe acest grafic se poate observa că există o variație mult mai puternică a momentului de torsiune
pe parcursul simulării. Această variație se datorează solicitărilor mai mari la care este supusă
această cuplă.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 53
Programul de studii: MECATRONICĂ

Fig.4.18. Graficul de variație în timp al momentului de torsiune pentru cupla din axa Y
În figura 4.19 se poate observa că momentul de torsiune pentru cupla din axa Z variază
foarte puternic la începutul simulării și la sfârșitul său. Acest lucru se întâmplă deoarece la
începutul simulării suportul pentru sculă coboară pentru începerea prelucrării, iar la sfărșitul
acestei, când prelucrarea s -a finalizat, acesta se ridică în poziția inițială. După cum se poate
observa pe grafic, valoarea maximă a momentului de torsiune este de 0.12 Nm.

Fig.4.19. Graficul de variație în timp al momentului de torsiune pentru cupla din axa Z
În urma realizării acestei simulări și a graficelor rezultate, se observă că valorile cuplului
maxim pentru fiecare cuplă în parte sunt apropiate, de aici se desprinde concluzia că toate cele 3
motoare ce se vor folosi în acționarea mașinii comandate numeric , pot avea aceleași
carcateristici.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 54
Programul de studii: MECATRONICĂ

5. PROIECTAREA SISTEMUL UI ELECTRONIC
Pentru sistemul electronic, s -a optat pent ru realizarea cablajului imprimat în detrimentul
utilizării unor sis teme modulare. În vederea realizarării schemei electronice și implicit a
cablajului, s -a pornit de la schema prezentată în figura 3.14. Pentru comanda a trei motoare este
necesar să se rea lizeze schema pentru 3 drivere de motoare. S -a ales utilizarea acestei scheme
deoarece aceste drivere pot asigura suficient curent motoarelor, realizarea circuitului este
suficient de simplă și nu în ultimul rând reprezintă cea mai avantajoasă variantă di n punct de
vedere economic.
Proiectarea circuitului electronic s -a făcut cu ajutorul programului Eagle PCB Design
software al firmei Cad Soft din Statele Unite ale Americii. În partea ce urmează este prezentată o
descriere a programului și a modului de fu ncționare.
5.1 PREZENTAREA SOFTWARE -ULUI DE PROIECTARE
ELECTRONICĂ EAGLE PC B DESIGN SOFTWARE
Denumirea EAGLE (tradus din lb.engleză înseamnă vultur) reprezintă un acronim și este
format din 5 cuvinte Easily Applicable Graphical Layout Editor. Acest program este destinat
inginerilor electroniști sau pasionaților de electronică ce doresc să realizeze cablaje imprimate.
Avantajele pe care le prezintă sunt faptul că este ușor de î nvățat, este compatibil Windows,
Linux și MAC, asistența tehnică este gratuită și există si o versiune gratuită a acestui soft. [48]
Deși suprafața de lucru pentru versiunea gratis este limitată la 10 X 10 cm, există suficientă
flexibilitate pentru realiza rea unor plăci suficient de complexe.
Versiunea de program cu care s -a lucrat pentru proiectarea schemei electronice și a
cablajului imprimat, este versiunea Eagle 6.5.0 Light. Aceasta este o versiune ceva mai veche a
programului iar licența utilizată este Freeware .
Program ul EAGLE este forma t din trei module principale :
1. Control Panel, în acest modul se găsesc și se accesează proiectele realizate,
bibliotecile de componente, regulile de desenare, etc. În figura 5.1 se regăsește
imaginea panoului de control . Acest modul se deschide automat, odată cu lansarea
aplicației.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 55
Programul de studii: MECATRONICĂ

Fig.5.1. Modulul Control Panel
2. Schematic, modulul acesta este utilizate pentru desenarea schemei elctronice și
verificarea existenței erorilor. În figura 5.2 se observă modulul schematic, i ar în
partea stângă se pot observa comenzile ce se utilizează la alegerea componentelor,
înlocuirea componentelor, mutarea lor, trasarea legăturilor, etc.

Fig.5.2 Modul de lucru Schematic
În cadrul acestui modul, un rol extrem de important îl constituie utilizarea comenzii de
selecție și adăugare de componente. Atunci când se accesează această comandă, este afișată o

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 56
Programul de studii: MECATRONICĂ

fereastră de dialog care deschide toate bibliotecile și componentele aferente fiecăreia. În figura
5.3 se poate observa caseta de selecție a componentelor și alăturat în partea stângă, iconița care
deschide această fereastră . În cadrul acestui meniu în partea stânga se observă multitudinea de
opțiuni pentru alegerea unor componente. În exemplul din acest caz s -a ales un LED de tip
PoointLED L AP4-TOP. În prima imagine din dreapta este reprezentarea simbolică a unei diode
electroluminescente, așa cum va apărea și pe schema electronică, în timp ce în imaginea a doua
este reprezentată imaginea LED -ului. După cum se poate observa , conform cu repre zentarea din
cea de -a doua imagine, această diodă electroluminescentă este de tip SMD.

Fig.5.3 Caseta de selecție și adăugare a componentelor
3. Modulul Board, acesta este modulul care se utilizează după ce este realizată schema
electronică. În cadrul acestui modul se realizează designul plăcii, modul în care
componentele sunt așezate, realizarea traseelor în vederea imprimării. În varianta
Light a programului Eagle pentru realizarea traseelor se utilizează două layere, astfel
putând fi proiectată o pla că cu traseele imprimate pe ambele părți. În figura 5.3 se
observă modulul de lucru Board și de asemenea tot în partea stângă sunt amplasate
instrumentele de lucru. Pentru a reduce efortul realizării unui cablaj imp rimat, Eagle
dispune și de o op țiune de realizare automată a traseelor.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 57
Programul de studii: MECATRONICĂ

Fig.5.4 . Modulul Board
5.2 PROIECTAREA SCHEMEI ELECTRONICE ȘI A CAB LAJULUI
IMPRIMAT
Primul pas în realizarea schemei electronice a fost constituit din stabilirea componentelor
ce trebuie adăugate, prin urmare s -a alcătuit o li stă în care este specificat tipul componentei și
numărul de bucăți:
o 3 circuite de tip driver de motoare L293D;
o 6 tranzistori bipolari de tip NPN;
o 6 rezistențe de 1 kΩ ;
o 6 rezistențe de 10 kΩ ;
o 3 conectori cu șurub cu 4 piste;
o 6 conectori tip tată pentru conexiunea la porturile digitale ale microcontroller –
ului;
o 2 conectori tip tată pentru conectarea la porturile GND și 5 V ale plăcii Arduino;
o 2 conectori tip tată pentru conectare la bornele de + și – ale sursei de alimentare la
12 V.
După ce s -a stabilit necesarul de componente, se trece la pasul următor și anume,
adăugarea componentelor și așezarea lor într -o poziție convenabilă pentru a se putea face
conexiunile cu ușurință. Acest pas este reprezentat în figura 5.5, în care se pot observa
componentele aș ezate pe suprafața de lucru, într -un mod cât mai convenabil, urmând doar a se
realiza conexiunile.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 58
Programul de studii: MECATRONICĂ

Fig.5.5. Reprezentarea componentelor așezate pe suprafața de lucru
Pentru ca schema electronică din figura 5.5 să aibă o logică, care să o facă funcțional ă din
punct de vedere electronic, este necesar să se realizeze legăturile dintre componente. Acestea ne
arată modul în care curentul trece prin circuit și modul cum funcționează întreg circuitul.

Fig.5.6 . Schema electronică completă a circuitului cu driver -ele de motoare
În figura 5.6 este reprezentată schema electronică completă, traseele realizate în schemă,
sunt utile și în momentul când se realizează prototipul virtual al cablajului imprimat, deoarece în
momentul în care se trece din modulul Schematic, in modulul Board componentele trebuie
rearanjate fiindcă sunt plasate în afara suprafeței de lucru, într -o ordine aleatoare , iar conexiunile
realizate la pasul anterior sunt păstrate, cu ajutorul lor realizându -se traseele în vedere a

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 59
Programul de studii: MECATRONICĂ

imprimării . În figura 5.7 se observă poziționarea componentelor atunci când s -a inițiat modulul
Board. Acestea trebuie mutate în interiorul suprafeței de lucru, suprafață limitată la dimensiunile
de 10 X 10 cm, deoarece se utilizează versiunea Eagle 6.5. 0 Light.

Fig.5.7. Poziționarea aleatoare a componentelor în modulul Board
De această dată componentele se așează în modul optim pentru realizarea cablajului
imprimat și se fac traseele conform legăturilor realizate în modulul Schematic . În modulul Boar d
se poate observa că toate componentele sunt reprezentate exact în modul în care sunt construite
și în realitate. Acest lucru este necesar deoarece , dacă dimensiunile componentelor virtuale ar fi
diferite de cele reale, ar apărea neconcordanțe în realizar ea cablajului. În figura 5.8 este realizat
cablajul virtual în vederea imprimării sale. Datorită gradului de complexitate, cablajul se
realizează pe o placă de cupru dublu placată, fiind nevoie ca imprimarea să fie făcută pe ambele
părți ale plăcii. Culoar ea utilizată pentru traseele realizate pe partea superioară este roșu, iar
culoarea utilizată pentru traseele realizate pe partea inferioară este albastru.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 60
Programul de studii: MECATRONICĂ

Fig.5. 8. Traseele și poziționarea pieselor pe circuit în vederea imprimării
Imprimarea cablajului se face prin metoda fotochimică, care presupune următorii pași:
1. Se exportă imaginea cu traseele pentru partea superioară și inferioară separat, în
două fișiere de tip PDF . Imaginile exportate sunt alb -negru și în oglindă.
2. Se printează documentele cu ajutorul unei imprimante LASER, la rezoluție
maximă.
3. Se transferă cele două imagini de o parte și de cealaltă a suportului placat cu
cupru. Pentru realizarea acestui transfer, se utilizează un fier de călcat cu care se
realizează treceri su ccesive deasupra foiilor cu traseele și placă.
4. După ce s -a realizat transferul tușului pe placă, aceasta se introduce într -o soluție
corozivă, soluția de clorură feerică este cea mai des utilizată. Soluția corodează
suprafețele care nu sunt protejate de tușul ce tocmai a fost transferat.
5. Se curăță plăcuța sub un jet de apă.
6. Se realizează găurile în placă, cu un burghiu de 1 mm, acolo unde este necesar să
fie montate componentele.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 61
Programul de studii: MECATRONICĂ

6. REALIZAREA PRACTICĂ A MAȘINII COMANDATE
NUMERIC FOLOSITĂ LA PRELUCRAREA CABLAJELOR
IMPRIMATE
Pornindu -se de la concluziile desprinse din capitolele anterioare se începe realizarea
practică a proiectului. Pentru început este nevoie să se stabilească necesarul de componente și
apoi acestea să fie achiziționate.
6.1 REALIZAREA S ISTEMULUI MECANIC
6.1.1 Realizarea structurii de rezistență a mașinii comandate numeric
Pentru partea mecanică se începe cu realizarea structurii de rezistență a mașinii
comandate numeric. În vederea obținerii unei structuri asemănătoare modelului proiecta t și
prezentat în cadrul capitolului 4, a fost nevoie de achiziționarea unor materiale lemnoase și de
prelucrarea lor, pentru a fi aduse la dimensiunile și forma dorită.
În figura 6.1. se poate observa realizare cutiei pe care se vor monta restul component elor.
Aceasta a fost realizată conform dimensiunilor stabilite în cadrul proiectării și anume, cutia are
formă de pătrat cu latura de 400 mm. Prelucrarea în vederea obținerii acestei forme a constat din,
tăierea materialelor de lemn la dimensiunile stabili te cu ajutorul unui fierăstrău pendular,
șlefuirea marginilor pentru o cât mai bună finisare, astfel încât îmbinările să se realizeze corect.
Fixarea îmbinărilor s -a realizat cu ajutorul șuruburilor, câte 2 pentru fiecare îmbinare.

Fig.6.1. Realizarea structurii de bază a MUCN

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 62
Programul de studii: MECATRONICĂ

În următorul pas au fost realizate brațele ce se așează pe structura de bază și suportul care
rigidizează cele două brațe . Modul în care acestea au fost prelucrate și îmbinate este similar cu
modul în care a fost realizată cutia. În figura 6.2. este reprezentată imaginea brațelor, a suportului
pentru brațe și a suportului pentru axa Z.

Fig.6.2. Realizarea și asamblarea brațelor, suportului ce rigidizează brațele și a suportului
pentru axa Z
Suportul care va mișca scula pe axa Z este în formă de U, în cele două capete se vor
realiza găuri pentru montarea axelor de ghidare și a tijei filetate. Tot în această figură se poate
observa că au fost montate și axele de ghidare ce vor ajuta la deplasarea sculei așchietoare de -a
lungul axei X. De asemenea, deși nu este vizibil în imagine, pe partea din spate a suportului în
formă de U au fost montate și două bucși, pentru ca acesta să poată fi deplasat de-a lungul axei
X. Axele de ghidare pentru toate cele 3 axe de deplasare sunt realizate d in oțel inoxidabil cu
diametrul de 8 mm. Pentru o mai bună observare a axelor de ghidare și a bucșilor utilizate în
construcția mașinii comandate numeric, s -a introdus figura 6.3. , în care sunt reprezentate axele
de ghidare și bucșile aferente deplasării p e axa Z.

Fig.6.3. Axele de ghidare și bucșile utilizate pentru deplasarea de -a lungul axei Z

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 63
Programul de studii: MECATRONICĂ

Pentru construcția mașinii comandate numeric a fost nevoie de 6 axe de ghidare, cele
două axe care se deplasează de -a lungul axei Z au dimensiunile de 180 mm, celelalte 4 axe, 2
pentru deplasarea pe axa X și 2 utilizate pentru deplasarea pe axa Y, au aceeași lungime și
anume 39 0 mm. Pentru montarea lor a fost nevoie să se realizeze găuri pe suprafețele în care s -a
dorit ca acestea să fie fixate. Fixarea și monta rea lor s -a făcut prin presare, astfel încât să se
asigure o rigiditate suficientă pentru ca axele să nu aibă joc.
Bucșile ce asigură deplasarea pe axele de ghidare sunt realizate din poliamidă, acest
material are o rezistență foarte bună, dar și un coefic ient de frecare suficient de mic. Pentru a
micșora frecarea dintre bucși și axele de ghidare se aplică o peliculă de ulei. Pentru deplasarea pe
axa Z și pe axa X, s -au utilizat câte o bucșă pentru fiecare axă de ghidare, în timp ce pentru
deplasarea pe axa Y, s-au utilizat câte două bucși pentru fiecare axă în parte. Acest lucru a fost
necesar datorită suprafeței mai mari ce trebuie deplasată. Toate bucșile utilizate au fost tăiate la
aceleași lungimi, 40 mm, și au același diametru interior, de 8 mm și exte rior, de 24 mm.
După cum a fost stabilit în cadrul capitolului 2, transmisia folosită pentru deplasarea celor
3 axe, este transmisie șurub -piuliță. Tijele filetate ce au fost utilizate sunt metric 8 și pasul
filetului este de 1 ,25 mm. Faptul că pasul file tului este de 1 ,25 mm, asigură o precizie de
deplasare foarte bună ,dar și o viteză de deplasare micșorată . Ținând cont că majoritatea
motoarelor pas cu pas utilizate în construcția mașinilor comandate numeric, efectuează 200 de
pași pentru o rotație comple tă, rezultă că pentru o deplasare de 1 mm motorul trebuie să
efectueze 160 de pași. Pentru realizarea acestor 3 tije filetate, a fost achiziționată o tijă cu
lungimea de 1000 mm, care a fost secționată în 3 bucăți, cu dimensiunile, 390 mm, pentru
transmisia deplasării pe axa X, 390 mm, pentru depalasarea pe axa Y și 180 mm pentru
deplasarea pe axa Z.
Pentru construcția și realizarea transmisiei pentru deplasarea pe cele 3 axe a mașinii
comandate numeric, a fost de nevoie de 3 piulițe. Acestea au fost reali zate din același material ca
și ghidajele liniare și anume din poliamidă. De asemenea, pentru a putea fi montate împreună cu
ghidajele, acestea au fost tăiate la lungimea de 40 mm, diametrul exterior este de 24 mm.
Realizarea filetului celor 3 piulițe, a f ost realizat cu ajutorul unui tarod de metric 8 și pasul de 1
mm.
Transmisia șurub -piuliță este necesară pentru deplasarea pe axa Z deoarece în acest caz
este nevoie ca în momentul în care scula așchietoare coboară pentru începerea prelucrării, trebuie
să rămână fixă, iar când prelucrarea ia sfârșit și scula se ridică, de asemenea trebuie să rămână
fixă, fără să existe riscul ca aceasta să coboare înapoi și să distrugă piesa prelucrată sau să se
realizeze un accident. Pentru celelalte 2 deplasări, pe axa X și axa Y s -a utilizat această
transmisie, datorită preciziei pe care aceasta o oferă, deși utilizarea ei este mai puțin eficientă din
punctul de vedere al randamentului.
Figura 6.4. a fost adăugată pentru a se putea observa mai detaliat cum arată ansamblu l
șurub -piuliță. În imagine ansamblul încă nu a fost montat pe mașina comandată numeric, s -a
preferat acest lucru pentru a se observa mai bine modul în care piulița a fost realizată și modul în
care îmbinarea între tija filetată și piuliță este realizată.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 64
Programul de studii: MECATRONICĂ

Fig.6.4. Realizarea transmisiei șurub -piuliță, pentru una dintre axele de deplasare.
6.1.2 Stabilirea caracteristicilor necesare în vederea alegerii și achiziționării
moto arelor
În urma calculelor și graficelor rezultate în urma simulării prototipului v irtual din cadrul
capitolului 4 s -a putut afla ce cuplu trebuie să dezvolte motoarele pentru a se putea realiza
deplasarea pentru fiecare din cele 3 axe. Pentru alegerea motoarelor s -au avut în vedere valorile
maxime de pe grafice ale cuplului pentru fieca re axă în parte.
Valorile maxime ale momentului de torsiune pentru deplasarea pe fiecare dintre cele 3
axe, sunt următoarele:
o Pentru deplasarea pe axa X, valoarea maximă, de pe grafic a momentului de
torsiune, este: 0.122 Nm.
o Pentru deplasarea pe axa Y, va loarea maximă, de pe grafic a momentului de
torsiune, este: 0.122 Nm.
o Pentru deplasarea pe axa Z, valoarea maximă, de pe grafic a momentului de
torsiune, este: 0.120 Nm.
Datorită faptului că valorile maxime ale cuplului sunt apropiate, se poate alege pentru
acționarea celor 3 axe, același tip de motor. Pentru ca motoarele să nu fie forțate și să lucreze la
putere maximă, motoarele ce s -au ales au caracteristici superioare necesarului calculat.
Prin urmare s -au achiziționat 3 motoare pas cu pas bipolar , de tip NEMA 15, model
3BYGH 405B produs în Polonia. Caracteristicile acestor motoare sunt: [52]
o Unghiul de pas este de 1.8 ;
o Tensiunea de alimentare este de 12 V;
o Curentul de lucru este de 0.4 A;
o Rezistența înfășurărilor este de 30 Ω;
o Inductanța este de 32 mH;

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 65
Programul de studii: MECATRONICĂ

o Cuplul maxim este de 0.21 Nm;
o Momentul de inerție al rotorului este de 20 ;
o Masa motorului este de 240 grame;
o Dimensiunile de gabarit ale acestui tip de motoare sunt: 39 mm X 39 mm X 34
mm;
o Aceste motoare sunt prevăzute cu 4 găuri filetate pentru fixare, de metric 3;
o Lungimea axului este de 18 mm , iar diametrul acestuia este de 5 mm.

Fig.6.5. Tipul de motor utilizat pentru deplasarea, celor 3 axe [53]
În figura 6.5. se poate observa motorul ce a fost ales pentru acționarea celor 3 axe de
deplasare. Motoarele au fost amplasate pe ansamblul mecanic fix, aproape în același mod în care
au fost amplasate și în modelul tridimensional. Singura diferență față de modelul 3D, o
reprezintă fixarea motorului ce acționează axa Y, în spatele ansamblu lui, în locul amplasării sale
în partea din față din modelul 3D. Cele 3 motoare au fost amplasate astfel, deoarece este de
preferat ca motoarele să rămână fixe, pentru a nu fi necesară utilizarea unor cabluri și fire foarte
lungi. Motorul ce acționează axa de deplasare Z nu a putut fi amplasat într -un loc fix, astfel că
acesta a fost amplasat pe suportul ce acționează axa Z .
Pentru asamblarea axului fiecărui motor în parte cu tijele filetate corespunzătoare, s -au
utilizat niște bucși metalice auxiliare , iar fixarea lor a fost făcută cu ajutorul unor știfturi filetate
de metric 4. Pentru fiecare b ucșă a fost nevoie de 2 astfel de știfturi , care au fixat tija filetată și
axul motorului în interiorul bucșei.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 66
Programul de studii: MECATRONICĂ

6.1.3 Prezentarea sistemului mecanic realizat și asam blat
În figurile prezentate mai jos, se poate observa realizarea și asamblarea întregului sistem
mecanic. Au fost adăugate imagini ale ansamblului din mai multe unghiuri, astfel încât să se
poată vedea modul în care au fost montate și fixate componentele principale.

Fig.6.6. Imaginea ansamblului mecanic, vedere din față .

Fig.6.7. Imaginea ansamblului mecanic, vedere din spate .

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 67
Programul de studii: MECATRONICĂ

Fig.6.8. Imaginea ansamblului mecanic, vedere din lateral.
În figura 6.8. se poate observa modul în care au fost fixate brațele de cutie, pentru aceasta
s-au folosit câte două bride de prindere, montate de o parte și de cealaltă a fiecărui braț, fixarea
lor s-a făcut cu șuruburi după cum se poate observa în imagine.

Fig.6.9. Detaliu asupra modului de fixare al bucșilor și al piuliței axa X.
În figura 6.9 este imaginea în detaliu a modului în care au fost montate și fixate bucșile și
piulițele corespunzătoare deplasării pe axa X. Se poate observa că acestea au fost fixate de
suportul care se deplasează de -a lungul axei X, cu ajutorul unor coliere metalice și prinse cu
șuruburi. Într -un mod asemănător au fost montate și fixate și restul bucșilor și piulițelor.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 68
Programul de studii: MECATRONICĂ

6.2 REALIZAREA SISTE MULUI ELECTRONIC
Sistemul electronic este format din 3 părți: Sursa de alimentare, circuitul c u driver -ele de
motoare și placa Arduino. Fiecare din cele 3 părți are un rol foarte important în alimentarea și
comandarea motarelor pas cu pas. În cele ce urmează sunt prezentate caracteristicile și modul în
care au fost alese și achiziționate componetel e electronice.
6.2.1 Calcularea și alegerea sursei de alimentare
Pentru stabilirea tensiunii de ieșire și a curentului necesar alimentării sistemului mecanic
a fost nevoie ca acestea să fie calculate în funcție de caracteristicile motoarelor utilizate.
Formulele utilizate pentru calcularea caracteristicilor necesare alegerii sursei de alimentare sunt:
(6.3)
unde: reprezină tensiunea de ieșire necesară a sursei de alimentare și
reprezintă Tensiunea de alimentare a motoarelor.
(6.4)
unde: reprezină curentul de ieșire necesar sursei de alimentare și ,
reprezintă Curentul consumat de fiecare motor în parte.
Deoarece legarea la sursa de alimentare a motoarelor se realizează în paralel, tensiunea de
ieșire necesară este însăși tensiunea necesară alimentării a unui singur motor, iar curentul de
ieșire al sur sei reprezintă suma necesarului de curent al celor 3 motoare.
În momentul în care s -au calcula Tensiunea de ieșire și curentul de iesșire nesar sursei de
alimentare, se poate calcula și puterea pe care aceasta trebuie să o dezvolte.
(6.5)
unde: este puterea ce trebuie dezvoltată de sursa de alimentare.
În urma calculelor efectuate mai sus, se poate achiziționa sursa de alimentare. Deoarece
toate sursele sunt construite conform unui standard, este dificil să se găsească o sursă de
alimentare ce prezintă exact caracteristicile, calculate mai sus, în plus este nevoie de un plus de
putere, în cazul în care în calcule au intervenit erori. Prin urmare s -a optat pent ru o sursă de 12
V, dar al cărui curent maxim de ieșire este mai mare de 1,2 A.
S-a avut în vedere achiziționarea unei surse de alimentare profesionale, de tipul celei
prezentate în figura 3.11 , dar costul unei astfel de surse, este mare și caracteristici le sale sunt cu
mult peste ceea ce este nevoie, astfel că utilizarea unei surse de acest gen nu se justifica.
Prin urmare s -a optat pentru utilizarea unui alimentator clasic, asemănător celui prezentat
în figura 6.10, deoarece caracteristicile sale sunt su fieciente pentru acționarea motoarelor, iar
costul de achiziție este mult mai mic.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 69
Programul de studii: MECATRONICĂ

Fig.6.10 Alimentator de 12 V . [54]
Caracteristicile acestui alimentator sunt: [54]
o Sursă în comutație, greutate redusă, fiabilitate crescută;
o Mufă alimentare standard 5.5/ 2.1;
o Led indicator tensiune;
o Tensiune la ieșire: 12V;
o Curent la ieșire: 3A;
o Protecție la scurt circuit;
o Protecție la supratensiune;
o Protecție la suprasarcină.
6.2.2 Realizarea circuitului cu driver -e de motoare
Pentru realizarea circuitului cu driver -e de motoare, a fost nevoie de achiziționarea
următoarelor componente:
o 3 circuite de tip driver de motoare L293D;
o 3 socluri cu 16 pini, pentru circuitele L293D;
o 6 tranzistori bipolari HN9014C de tip NPN;
o 6 rezistențe de 1 kΩ ;

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 70
Programul de studii: MECATRONICĂ

o 6 rezistențe de 10 kΩ ;
o 6 conector i cu șurub cu 2 piste;
o 6 conectori tip tată, în unghi pentru conexiunea la porturile digitale ale
microcontroller -ului;
o 2 conectori tip tată pentru conectarea la porturile GND și 5 V ale plăcii Arduino;
o 2 conectori tip tată pentru conectare la bornele de + și – ale sursei de alimentare la
12 V;
o Fire pentru realizarea conexiunilor între componente;
o Placă de prototipare, cu dimensiunile de 72 mm X 95 mm.
S-a preferat ca mai întâi circuitul să fie realizat pe o placă de prototipare pentru a se
verifica funcțio nalitatea schemei, înainte ca aceasta să fie realizat pe cablaj imprimat.
Deoarece ciruitele integrate prezintă o sensibilitate termică mai mare, a fost nevoie și de
utilizarea unor socluri, care au fost lipite pe placă și în care driver -ele de motoare au fost așezate.
Pentru realizarea circuitului s -a pornit de la schema electronică proiectată în capitolul 5 al
acestei lucrări. Circuitul a fost realizat și testat, iar î n figura 6.11. se poate observa rezultatul
obținut.

Fig.6.11. Circuitul cu driver -e de motoare, vedere din față și vedere din spate .
După cum se poate observa din imagine, 4 din conectorii cu șurub au fost montați în
partea din față, în timp ce ceilalți doi au fost montați în partea dreapta -jos. Driver -ele de motoare
au fost montate dou ă în partea superioară a plăcii și unul în partea inferioară, acest lucru fiind
necesar deoarece spațiul oferit de plăcuță nu permitea așezare a acestora unul lângă celălalt.
Conectorii de tip tată pentru conectarea la porturile de 5 V și GND ale plăcuței A rduino se pot
observa în parte dreapta sus, alături de notațiile aferente fiecărui pin, iar conectorii de tip tată

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 71
Programul de studii: MECATRONICĂ

pentru conectarea la porturile digitale ale plăcii Arduino sunt situați în partea din stânga -jos. Se
observă că toți conectorii utilizați la conectarea circuitului la placa Arduino sunt îndoiți la unghi
de 90 . Acest lucru a fost preferat pentru o conectare mai ușoară a firelelor. Mai există pe placă,
în partea centrală, 2 pini de tip tată, utilizați pentru conectarea circuitului la sursa de a limentare.
De asemenea au fost înscrise și notațiile + și – pentru a nu se încurca bornele atunci când se face
conectarea. Rezistențele de culoare albastră au valoarea de 1 kΩ , iar rezistențele de culoare beige
și cu dimensiuni mai mici decât cele albastre au valoarea de 10 kΩ. Pe placă se mai pot observa
și tranzistorii de tip HN9014C, a căror utilizare face posibilă comandarea driver -elor de motoare
cu placa Arduino doar prin utilizarea a două porturi digitale, pentru fiecare driver.
6.2.3. Platforma cu microcontroller Arduino
Pentru realizarea conexiunii dintre computer și mașina comandată numeric, este nevoie
de o placă de tip Arduino. Ace asta este conectată la computer prin intermediul portului USB de
care dispune și asigură, cu ajutorul unui algoritm, transmiterea și interpretarea datelor primite de
la computer. Pentru funcționarea corectă a mașinii comandate numeric, este necesară utilizarea a
6 porturi digitale pentru circuitul cu driver -e de motoare și a altor 6 porturi digitale, pentru
conectarea s enzorilor de capat de cursă. În plus, mai sunt utilizate porturile de alimentare la 5 V
și GND. Deși se putea utiliza o platformă Arduino UNO, aceasta putând asigura necesarul de
porturi digitale , s-a utilizat o platformă de tip Arduino MEGA 2560, pentru s implul motiv că
această platoformă fusese deja achiziționată și nu a mai fost nevoie de o nouă investiție.
Acest tip de platformă poate fi observată în figura 6.12. și prezintă următoarele
caracteristici: [53]
o Microcontroler: ATmega2560
o Tensiune de lucru: 5V
o Tensiune de intrare (recomandat) : 7-12V
o Tensiune de intrare (limite) : 6-20V
o Pini digitali: 54 (14 au ieșire PWM )
o Pini analogici : 16
o Curent de iesire: 40 mA
o Curent de iesire 3.3V Pin : 50 mA
o Capacitate Memorie Flash : 256 KB , 8 KB pentru bootloader
o Capaci tate Memorie SRAM: 8 KB
o Capacitate Memorie EEPROM : 4 KB
o Frecvența de ceas: 16 MHz

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 72
Programul de studii: MECATRONICĂ

Fig.6.12. Platforma cu microcontr oller Arduino MEGA2560 . [55]
6.2.4 Testarea funcționalității sistemului electronic
Pentru a putea știi dacă sistemul electronic, în special circuitul cu driver -ele de motoare
este funcțional, a fost nevoie de testarea acestuia. Deoarece în momentul realizării acestui test
motoarele pas cu pas alese în vederea exploatării nu au putut fi u tilizate, fiindcă deși comanda lor
s-a făcut în timp util, onorarea comenzii s -a făcut cu întârzieri majore, s -au utilizat 3 motoare pas
cu pas bipolare, recuperate de la mai multe imprimante. Deși caracteristicile acestor nu erau
identice cu cele ale moto arelor comandate, cu ajutorul acestora, s -a putut efectua un test de
funcționalitate.

Fig.6.13. Testarea sistemului electronic .

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 73
Programul de studii: MECATRONICĂ

În figura 6.13. se poate observa modul în care componentele sistemului electronic au fost
legate, pentru testare. Pentru test are a fost încărcat în memoria microcontroller -ului un program
ce comanda efectuarea, pe rând pentru fiecare motor în parte, a unui anumit număr de pași.
Astfel s -a putut observa că circuitul este funcțional și poate fi implementat în vederea exploatării
sale pentru mașina comandată numeric.
6.3 SISTEMUL SOFTWARE
Așa cum s -a spus în capitolele precedente, sistemul software, este format din două părți,
un program pentru computer, în care se încarcă codul G și apoi este transmis către placa Arduino
și un prog ram care se încarcă pe placa Arduino, care decodifică datele primite și transmite
comenzile către circuitul cu driver -e de motoare.
6.3.1 Programul ce realizează transmisia datelor către Arduino
Deoarece domeniul mașinilor comandate numeric de tip hobby e ste unul destul de vast,
există numeroase programe de tip Open Source, ce pot fi folosite pentru transmisia datelor către
Arduino. Programul ales pentru efectuare acestei operațiuni, este un program realizat în mediul
de programare Processing .

Fig.6.14. Mediul de programare Processing.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 74
Programul de studii: MECATRONICĂ

În figura 6.14 este prezantată interfața cu utilizatorul a mediului de programare
Processing. Acesta a fost un proiect inițiat de către Ben Fry și Casey Reas la Institutul de
tehnologie din Massachusetts ( MIT ).
Processing reprezintă un limbaj de programare, mediu de programare și o comunitate
online. Inițial acest limbaj de programare a fost creat pentru a ușura procesul de învățare al
limbajelor de programare. Acest mediu de programare, are un domeniu de utiliza re extrem de
vast, fiind folosit de, studenți, artști, designeri, cercetători și pasionați de programare, ce folosesc
Processing pentru a învăța, crea prototipuri și pentru producție.
Mulțumită avantajelor pe care le oferă acest mediu de programare, există numeroase
surse de documentare și tu toriale, ceea ce îl fac ușor de învățat.
Programul utilizat pentru transmiterea datelor către placa Arduino dispune de o interfață
grafică, de unde se poate selecta fișierul ce se dorește a fi transmis, există un buton de unde se
încarcă programul dorit și care deschide o fereastră separată, în se poate efectua o simulare a
prelucrării, pentru a se observa eventualele erori, mai există o ferestră de unde se poate selecta
portul serial la care este conectat Arduino.
În figura 6.15. este reprezentată interfața utilizator a programului și în partea dreaptă a
acestei se poate vedea ferestra în care s -a efectuat o simulare a unei prelucrări de cablaj
imprimat.

Fig.6.15. Interfața utilizator a programului.
În imaginea 6.15. nu este reprezentat, dar în momentul în care se face conexiunea cu
placa Arduino , mai apare o ferestră suplimentară, în care se pot introduce manual comenzi
pentru deplasarea ansamblului, un buton de STOP, care oprește prelucrare și un buton de
pornire/ pa uză. În plus în timpul în care se realizează prelucrarea, în partea inferioară se

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 75
Programul de studii: MECATRONICĂ

derulează comenzile pe care programul le transmite, astfel putând să se verifice dacă mașina
execută corect instrucțiunile.
6.3.2 Implementarea algoritmului software pe placa Arduino
Datorită popularității sale, placa Arduino are din ce în ce mai multe utilizări. În ultima
perioadă de timp s -au construit mașini comandate numeric și chiar imprimante 3D, care
utilizează plăci Arduino. Utilizarea lor crește gradul de flexibilitat e al acestor construcții, dar în
același timp crește nivelul de complexitate al sistemului software. Pentru programare se
utilizează mediul de programare Arduino, conceput special pentru aceste plăci de dezvoltare.
Limbajul de programare este asemănător cu limbajul C, care are în plus implementate diverse
funții și metode de lucru special concepute.
Funcțiile principale, specifice limbajului de programare Arduino sunt:
o void setup() – Secvențele de cod scrise în această buclă, rulează o singură dată, la
începutul programului. Tot în interiorul aceste bucle, se stabilesc intrările/ieșirile
și tipul acestora.
o void loop() – Codul scris în interiorul acestei bucle de program este rulat linie cu
linie în mod continuu.
o pinMode(nr pin, tip) – este folosit pentru stabilirea tipului de intrare/ieșire. Nr.
pin reprezintă numărul înscris pe platforma în dreptul pinului, iar tipul poate fi
INPUT sau OUTPUT. Se folosește doar în cazul pinilor I/O sau PWM;
o digitalWrite(nr pin, stare) – este folosit pentru setarea pinilor digitali. Starea
acestora poate fi 1 logic (1 sau HIGH) sau 0 logic (0 sau LOW);
o digitalRead(nr pin) – citește valoarea digitală a intrării (0 sau 1);
o analogWrite(nr pin, valoare) – este folosit pentru comanda PWM a ieșirilor
compatibile. Valoarea este cuprinsă între 0 – 255;
o analogRead(nr pin) – returnează valoarea analogică a intrării (0 – 1023);
o Serial.begin(viteză) – este folosit pentru inițializarea comunicațiilor seriale
folosind viteze cuprinse între 300 și 115200 biți/secundă . Cea mai des utilizată
rată de transfer este de 9600 biți/secundă. Arduino Mega are 3 porturi seriale iar
pentru apelarea lor se folosește Serial1,Serial2 sau Serial3;
o delay(ms ) – oprește rularea programului o perioadă de timp(milisecunde);
o int – numere întregi; ocupă 16biți de memorie și au valori cuprinse între – și
;
o unsigned int – numere întregi, pozitive; ocupă 16 biți de memorie și au valori
cuprinse între 0 și -1 (0 …65535);
o long – numere întregi; ocupă 32 biți și au valori cuprinse între – și ;

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 76
Programul de studii: MECATRONICĂ

o unsigned long – numere întregi, pozitive; ocupă 32 biți și au valori cuprinse între
0 și ;
o float – numere reale; ocupă 32 biți de memorie.
Pentru folosirea plăcii Arduino la realizarea mașinilor comandate numeric sau a
imprimantelor 3D, există numeroase programe cu licență open source, ce pot fi adaptate și
implementate. Datorită acestui lucru s -a utilizat un astfel de program ce a fost adap tat cerințelor
acestui proiect.
Deoarece majoritatea proiectelor de acest gen folosesc circuite pe ntru comandarea
motoarelor cu micropășire, a fost nevoie ca programul să fie adaptat pentru a fi compatibil cu
tipul de driver -e utilizate în acest proiect. În plus a mai fost nevoie ca programul să fie adaptat și
pentru restul caracteristicilor constructi ve ale acestui proiect, spre exemplu:
o Definirea numărului de pași pe care fiecare motor trebuie să îî efectueze pentru o
rotație completă: #define X_MOTOR_STEP 200 , #define Y _MOTOR_STEPS
200, #define Z_MOTOR_STEPS 200 , având în vedere că toate cele 3 motoare au
aceleași caracteristici, toate cele 3 motoare efectuează 200 pași pentru o rotație
completă.
o Definirea numărului de pași ce trebuie să fie realizați de motor pentru o deplasare
de 1 mm: #define X_STEPS_PER_MM 160 , #define Y _STEPS_PER_MM 160 ,
#define Z _STEPS_PER_MM 160 . Necesarul de pași pentru o deplasare de 1
mm a fost calculat cu formula ( 7 .6 ) .
o Definirea numărului de pași ce trebuie să fie realizați de motor pentru o deplasare
de 1 inch: #define X_STEPS_PER_INCH 4064, #define Y_STEPS_PER _INCH
4064, #define Z_STEPS_PER_INCH 4064 . Necesarul de pași pentru o
deplasare de 1 m m a fost calculat cu formula ( 7 .7 ) .
o Viteza maximă de deplasarea: #define FAST_XY_FEEDRATE 30, #define
FAST_Z_FEEDRATE 30 . Pentru început se alege o viteză mai mică, urmând ca
mai apoi dacă este posibil aceasta să fie crescută.
o În afara acestor caracteristici se mai setează și pinii ce vor fi utilizați pentru
comandarea celor 3 axe ;
Pentru citirea datelor primite de la computer, pe portul serial al plăcii Arduino, se
utilizează funcția Serial.read( ) .
În afara funcțiilor enumerate mai sus au mai fost utilizate funcțiile specifice acestui
limbaj de programare, astfel încât să poată fi calculate coordonatele în care trebuie să se
deplaseze scula așchietoare.
Programul a fost testat împreună cu programul ce transmite datele către computer
prezemtat amterior și este funcțional, dar mai are nevoie de optimizări, deoarece nu recunoaște
toate comenzile specifice limbajului de programare numeric ( cod G).
Programul integral po ate fi consultat în Anexa 1.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 77
Programul de studii: MECATRONICĂ

6.4 ASAMBLAREA MAȘIN II COMANDATE NUMERIC ȘI TESTAREA
FUNCȚIONALITĂȚII
În imaginile următoare este reprezentată mașina comandată numeric în 3 vederi. La
construcția inițială a sistemului mecanic a mai fost adăugată o placă cu di mensiunile de 600 mm
X 400 mm. Placa a fost adăugată în primul rând pentru a se putea monta și fixa sistemul
electronic alături de cel mecanic, dar și pentru rigidizarea întregului ansamblu.

.
Fig.6.16 . Mașina comandată numeric, vedere de sus.
În figura 6.16. se poate observa întregul ansamblu într -o vedere de sus. În partea stângă a
imaginii se află componentele electronice ce au fost montate pe placă. Pentru fixarea acestora s –
au utilizat șuruburi și piulițe M3. Sursa de alimentare a fost montată și fix ată pe placă cu bandă
dublu adezivă. S -a preferat montarea componentelor electronice în exteriorul sistemului
mecanic, deoarece astfel sunt ferite de eventuale așchii survenite din timpul prelucrărilor.
În figura 6.17 este o vedere din lateral a ansamblul ui, ce a fost adăugată pentru a putea fi
observat că în locul unei scule așchietoare a fost mon tată o cariocă de culoare albastră , pentru a
putea testa funționalitatea mașinii comandate numeric. S-a preferat acest lucru pentru testarea
ansamblului, deoarec e în cazul unor eventuale probleme hardware sau erori software să nu fie
afectată integritatea mașinii comandate numeric sau a sculei așchietoare. Până la funcționarea
optimă a întregului ansamblu, testele se vor face în continuare utilizându -se carioca.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 78
Programul de studii: MECATRONICĂ

Fig.6.17 . Mașina comandată numeric, vedere din lateral.
În momentul în care mașina comandată numeric este pregătită pentru realizarea și
prelucrarea cablajelor imprimate în locul cariocii va fi montată o unealtă multifuncțională de tip
Dremel 3000. Acest tip de unealtă este prezentat în figura 6.18.

Fig.6.18. Unealtă multifuncțională Dremel 3000 [56]
O unealtă de acest gen asigură turații foarte mari, fapt pentru care pot fi utilizate în
domeniul prelucrărilor prin așchiere . Caracteristicile sunt tehnice ale aceste unelte sunt: [56]
o Putere nominală: 130 W;
o Tensiunea 230 V;
o Masa 0,55 kg;
o Turația fără sarcină 10.000 – 33.000 1/min;

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 79
Programul de studii: MECATRONICĂ

Pentru ca această sculă să poată fi utilizată la prelucrarea cablajelor imprimate, este
necesar să fie montată o freză în formă de V cu un unghi de 20 ….30 . Un model al acestui tip de
freză este reprezentat în figura 6. 19.

Fig.6.19. Freză utilizată la realizarea traseelor pentru cablajele imprimate
Pentru a se efectua un test de funționalitate a mașinii comandate numeric, s -a realiza t o
schemă electronică în Eagle , a unui circuit utilizat pentru indicarea nivelului d e încărcare al unor
acumulatori . În figura 6.20 , în partea stângă este reprezentată schema electronică, în timp ce în
partea dreaptă este reprezentat prototipul virtual al cablajului imprimat

Fig.6.20 . Schema electronică și Prototipul virtual al cablajului imprimat .

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 80
Programul de studii: MECATRONICĂ

După ce au fost realizate la nivel virtual traseele cablajului imprimat, se rulează
programul PCB -GCODE.ULP cu ajutorul căruia se generează un fișier text care conține codul G,
care urmează a fi utilizat pentru testarea mașinii comand ate numeric. Unitatea de măsură în care
sunt generate coordonatele este țolul (inch). În figura 6.21 se află imaginea fișierului text conține
codul G.

Fig.6.21 Fișierul care conține codul G
Acest fișier este încărcat, pentru a fi transmis către placa Arduino, în programul Gcode
Feeder, realizat în Processing. Interfața utilizator a acestui program permite vizualizarea pas cu
pas a rulării programului , comanda manuală, pentru a putea aduce scula în poziția din care se
dorește începerea prelucrării și un buton pentru punerea pe pauză a prelucrării. În figura 6.22 este
reprezentată interfața utilizator în care a fost încărcat programul.

Fig.6.22 Interfața utilizator, cu opțiunile aferente.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 81
Programul de studii: MECATRONICĂ

În partea inferioară se pot observa liniile de program care deja au fost rulate, în partea
superioară dreapta se observă fereastra în care se pot introduce coordonatele manual, pentru
deplasarea sculei în locul dorit. Apoi mai există opțiunea simulării prelucrării înainte ca aceasta
să fie realizată și transmiterea pro priu-zisă a codului.
Înainte ca prog ramul să fie rulat pentru testare, se efectuează o simulare a prelucrării,
pentru a se verifica dacă programul gen erat este corect. În figura 6.22 este reprezentat rezultatul
simulării, putându -se observa că programul e ste corect și că poate fi util izat pentru testarea
mașinii comandate numeric.

Fig.6.23 . Simularea cablajului imprimat Fig.6.24. Rezultatul obț inut în urma testării
Rezultatul testul ui este prezentat în figura 6.24. Figurile 6.23 și 6.24 au fost așezate în
paralel pentru a se putea observa diferențele dintre simulare și test. Se observă diferențe majore
între cele două imagini, care se datorează lipsei de precizie a mașinii comandate numeric. Prin
urmare înainte de montarea sculei aș chietoare pe ansamblu și începerea exploatării produsului,
este necesară optimizarea sistemului mecanic.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 82
Programul de studii: MECATRONICĂ

7. MEMORIUL DE CAL CUL
Stabilirea numărului de pași necesari pentru deplasarea pe distanța de 1 mm și
respectiv de 1 țol:
Calculele utilizate la stabilirea necesarului de pași ce trebuie efectuați pentru deplasarea
de-a lungul uneia dintre axe pe distanța de 1 milimetru, respectiv 1 inch:

(7.6)

(7.7)
unde: reprezintă numărul de pași pe care motorul trebuie să îi efectueze pentru o deplasare
de 1 mm , reprezintă numărul de pași pe care motorul trebuie să îi efectueze pentru o
deplasare de 1 inch, semnifică numărul de pași necesari efectuării unei rotații complete
și p reprezintă pasul filetului.
Calculul tijelor filetate:
Tijele filetate sunt supuse unei tensiuni de torsiune în timpul deplasării. Tensiunea de
torsiune se calculează cu relația:

(7.8)

unde: reprezintă tensiunea de torsiune la care este supus șurubul, Mt reprezintă
momentul de t orsiune și reprezintă diametrul interior al filetului de mișcare care pentru
M8x1,25 are valoarea de 6,647 mm .
Deoarece atât motoarele cât și tijele filetate prezintă aceleași caracteristici, este suficientă
efectuarea unui singur calcul pentru stabilir ea tensiunii de torsiune a celor 3 tije filetate.
Calculul piulițelor:
Asemeni tijelor filetate și piulițele utilizate la transmiterea mișcării sunt supuse tot unei
tensiuni de torsiune, acestă tensiune se calculează cu relația:

; (7.9)

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 83
Programul de studii: MECATRONICĂ

;
unde: reprezintă tensiunea de torsiune la care este supusă piulița, Mins reprezintă
momentul de torsiu ne, reprezintă diametrul exterior piuliței și este diametrul exterior al
filetului.
Calculul vitezei de așchiere:
Se consideră că viteza de rotație a sculei așchietoare este de 20000 rot/min.

(7.10)

;
unde: este viteza de așchiere, d este diametrul frezei și n este viteza de rotație a sculei
așchietoare.
Calculul costului de producție al mașinii comandate numeric:
Pentru realizarea mașinii comandate numeric s -au achiziționat următoarele componente:
o Placa Arduino Mega 2560, preț 229 Lei;
o Componente electronice necesare pentru realizarea circuit ului pentru comandarea
motoarelor, preț 100 Lei;
o Cele trei motoare au costat 250 Lei;
o Sursa de alimentare, preț 20 Lei;
o Tija filetată M8X1,25 cu dimensiunea de 1000 mm, preț 10 Lei ;
o Axele de ghidare, preț 38 Lei;
o Piulițele, Bucșile pentru ghidare, rulmenț i, șuruburi și piulițe, holșuruburi pentru
lemn, bride prindere și bucși pentru fixarea tijelor filetate de motor, preț 35 Lei;
o Materialul lemnos, necesar la construirea ansamblului, preț 50 Lei;
Cost = 229 + 100 + 250 + 20 + 10 +38 + 35 + 50 = 732 Lei ; (7.11)

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 84
Programul de studii: MECATRONICĂ

8. MĂSURI DE PROTECȚ IA MUNCII, TEHNICA SECURITĂȚII
ȘI PREVENIRE A ȘI STINGEREA INCENDII LOR
Acest tip de norme au ca scop prevenirea accidentelor și a bolilor profesionale. Normele
de protecție a muncii privind exploatarea mașinii comandate numeric folosită la prelucrarea
cablajelor imprimate sunt: [58]
1. Se interzice accesul în spațiile de deplasare a port -sculei.
2. Este interzisă atingerea componentelor mașinii în timpul funcționării.
3. Curățirea așchiilor se face de la distanță ș i numai când mașina este oprită.
4. Așchiile nu se îndepărtează cu mâna
5. Ungerea cu ulei a axelor de ghidare și a tijelor filetate se face doar cu mașina
oprită.
6. Reparațiile și reglajele se execută numai după deconectarea mașinii comandate
numeric de sub tensi une.
7. Înaintea începerii prelucrării se verifică starea generală a mașinii.
8. În momentul verificărilor se au în vedere eventuale zgomote anormale, sau
vibrații care ies din parametri.
9. Înaintea fixării piesei pe masa de lucru, se curăță canalele de așchii.
10. Piesele de prelucrat se vor fixa rigid pe masa mașinii, în menghină sau cu ajutorul
dispozitivelor de fixare.
11. Cablajul imprimat se îndepărtează doar după finalizarea prelucrării și în
momentul în care scula așchietoare este oprită.
12. Este indicat să se utili zeze ochelari de protecție în momentul în care se efectuează
o prelucrare.
13. Freza se înlocuiește doar în momentul în care scula așchietoare este scoasă de sub
tensiune.
14. Avansul se pornește numai după pornirea sculei așchietoare.
15. În timpul funcționării scul ei așchietoare, nu este permis ca pe masă să se găsească
scule sau piese nefixate.
16. Verificarea calității suprafeței prelucrate se face numai după oprirea mașinii.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 85
Programul de studii: MECATRONICĂ

9. CONCLUZII FINALE, CONTRIBUȚII ȘI PERSP ECTIVE DE
DEZVOLTARE
Lucrarea de față, intitulată Proiectarea și realizarea unei mașini comandate numeric
folosită la prelucrarea cablajelor imprimate , și-a propus realizarea unei mașini comandate
numeric capabilă să realizeze traseele electrice ale cablajelor imprimate, găurile de montare a
componentelo r, găurile de fixare a plăcuței și decuparea plăcii la dimensiunile cerute.
Din cauza unor probleme ce au apărut pe parcurs și au fost constatate în timpul
procesului de realizare a mașinii comandate numeric, obiectivele propuse nu au fost atinse în
totalitate, astfel că în rândurile de mai jos sunt prezentate concluziile desprinse în urma realizării
acestui proiect.
Pentru început, a vantajele mașinii comandate numeric , dezvoltate în cadrul proiectului de
diplomă sunt :
o Costul de producție redus în comparație cu celelalte soluții existente la nivel
intern și in ternațional;
o Sistemul electronic este simplu și performant, prin urmare este recomandată
utilizarea sa în cazul în care motoarele folosite nu consumă, atunci când sunt în
sarcină, mai mult de 600 mA .
o Integrarea plăcii de dezvoltare cu microcontroller Arduino în construcția mașinii,
pentru ca aceasta să poată fi comandată de la orice computer, ce dispune de port
USB.
o Utilizarea de programe cu licență Open Source , acest lucru contribuind la
reduc erea costul ui de producție;
o Consumul redus de curent electric;
o Realizarea circuitului pentru driver -ele de motoare în locul utilizării modulelor ce
încorporează driver -e de motoare , care deși au performanțe mai bune, au un cost
ridicat de achiziționare.
În urma parcurgerii proiectului se constată că există unele îmbunătățiri ce trebuie aduse
mașinii comandate numeric, pentru ca ace asta să poată fi utilizată în scopul în ca re a fost
proiectată si construită. S-au constatat probleme la partea mecanică, datora te în primul rând
tehnologiei de prelucrare a compon entelor , care prezintă un grad de complexitate ridicat și care
nu a putut fi realizată într -un mediu profesional. D in această cauză există jocuri destul de mari,
care reduc semnificativ precizia de preluc rare.
În concluzie, realizarea unei mașini comandate numeric care să poată fi utilizată la
prelucrarea cablajelor imprimate, este dificil de realizat fără o tehnologie corespunzătoare de
prelucrare a componentelor mecanice.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 86
Programul de studii: MECATRONICĂ

Este necesară optimizarea sistemului software care prezintă mici probleme în
recunoașterea unor funcții ale limbajului de programare pentru mașini unelte, dar și unele erori la
nivelul executării comenzilor.
Contribuțiile personale aduse în cadrul acestui proiect, sunt:
o Realizarea unei analize a sistemelor similare la nivel intern și internațional;
o Modelarea tridimenisonală în Catia a mașinii comandate numeric;
o Proiectarea și realizarea circuitului pentru driver -ele de motoare;
o Simularea prototipului virtual în LMS Virtual Lab;
o Adaptarea algoritmului software pentru placa Arduino, astfel încât acesta să
corespundă cerințelor proiectului;
o Realizarea practică a unei mașini comandate numeric;
o Adaptarea acesteia pentru a putea fi utilizată la prelucrarea cablajelor imprimate.
Prezentul proie ct de diplomă reprezintă un punct de plecare pentru dezvoltarea unei
mașini comandate numeric performante, iar ca perspective în această direcție, se pot considera
următoarele :
o Utilizarea rulmenților liniari pentru deplasarea de -a lungul axelor de ghidare;
o Utilizarea unor tehnologii profesionale de prelucrare a componentelor mecanice;
o Înlocuirea transmisiei șurub -piuliță clasică, cu o transmisie șurub -piuliță cu bile;
o Optimizarea algoritmului software;
o Comandarea și controlul wireless al mașinii comandate n umeric;
o Realizarea circuitului electronic pe o placă ce conține traseele electronice
imprimate.

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 87
Programul de studii: MECATRONICĂ

BIBLIOGRAFIE
[1] I. Barbu, Gh. Bejinaru -Mihoc, Notițe de curs Mașini de lucru cu comandă numerică, 2013 –
2014 ;
[2] CNC Machine Overview and Computer Numerical Control History , Disponibil la:
http://www.cnccookbook.com/CCCNCMachine.htm [ Accesat 04.06.2015 ]
[3] Gh. Bejinaru -Mihoc, Notițe de curs Tehnologia micro și nano sistemelor , 2013 -2014
[4] Notiuni generale despre CAM si comanda numerica , Disponibil la:
http://catia.3x.ro/index_files/text/Notiuni.htm [Accesat 04.06.2015 ]
[5] https://www.surplex.com/ro/p/7/doosan -puma -mx-2500 -s-cnc-fraes -drehmaschine –
198774.html [Accesat 04.06.2015 ]
[6] https://www.surplex.com/ro/m/7/hardinge -gs-250-nw-rods-turner -208587.html [Accesat
04.06.2015 ]
[7]http://www.bizoo.ro/firma/blumapi/vanzare/419448/freza -cnc-cincinnati -milacron –
indisponibil [ Accesat 04.06.2015 ]
[8] http://weida -mc.en.alibaba.com/ product/902153183 –
200651730/CNC_MILLING_MACHINE_XK7125.html [Accesat 04.06.2015 ]
[9] http://weida -mc.en.alibaba.com/productshowimg/902153183 –
200651730/CNC_MILLING_MACHINE_XK7125.html [Accesat 04.06.2015 ]
[10] Zen Toolworks CNC , Disponibil la:
http://ww w.zentoolworks.com/product_info.php?cPath=14&products_id=132 [Accesat
04.06.2015 ]
[11] http://diylilcnc.org/wp -content/uploads/2009/11/Wide_angle_011 -525×3931.jpg [Accesat
04.06.2015 ]
[12] bigShoulders, Disponibil la: http://diylilcnc.org/bigshoulders/ [Accesat 04.06.2015 ]
[13] http://www.banggood.com/500mW -Desktop -DIY-Violet -Laser -Engraving -Machine –
Picture -CNC -Printer -p-969324.html [Accesat 05.06.2015 ]
[14] L. Cristea, S. Zamfira , Notițe de C urs Bazele Sistemelor Mecatronice , 2012 -2013
[15] M. Luculescu , Notiț e de Curs Microcontrollere și Microprocesoare, 2013 -2014
[16] Comanda motorului pas cu pas , Disponibil la:
http://cursuri.flexform.ro/courses/L2/document/Cluj –
Napoca/grupa7/Peter_Arpad/site/pascomanda.pdf [Accesat 05.06.2015 ]
[17] Motoare CNC , Disponibil la: http://cncro.ro/lang/ro -ro/electronica -electronics/motoare/
[Accesat 05.06.2015 ]
[18]
http://sine.ni.com/nips/cds/pages/image?imagepath=/images/products/us/motor_07170709_l.jpg
&title=NEMA%2023%20Stepper%20Motors&oracleLang=ro [Accesat 05.06.2015 ]
[19] Gh. Moldovean, Notiț e de curs Organe de mașini , Capitolul 11 Transmisii mecanice, 2012 –
2013.
[20] Fulie, Disponibil la: http://www.robofun.ro/imprimante -3d/componente -imprimante –
3d/fulie -t25-16-dinti [Accesat 05.06.2015 ]

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 88
Programul de studii: MECATRONICĂ

[21] Curea dințată, Disponibil la: http://www.robofun.ro/curea -t5-metru -liniar?search=curea
[Accesat 05.06.2015 ]
[22] Gh. Moldovean, Notiț e de curs Organe de mașini , Capitolul 2 Asamblări filetate, 2012 –
2013.
[23] http://test.pge.ro/prod/346 [Accesat 05.06.2015 ]
[24] Șurub cu bile, Disponibil la: http://cnc –
shop.ro/index.php?route=product/product&product_id=166 [Accesat 05.06.2015 ]
[25] Gh. Moldovean , Notiț e de curs Organe de mașini , Capitolul 2 Rulmenți și montaje cu
rulmenți, 2012 -2013.
[26] Rulment cu interior de 8 mm, Disponibil la: http://nichelina –
cnc.ro/product_info.php?cPath=40_78&products_id=315 [Accesat 06.06.2015 ]
[27] Rulment liniar, Disponibil la: http://nichelina –
cnc.ro/product_info.php?cPath=49_72&products_id=286 [Accesat 06.06.2015 ]
[28] CNC Linear Motion Systems , Disponibil la: http://www.cncroutersource.com/linear –
motion.html [Accesat 06.06.2015 ]
[29] Axa ghidaj , Disponibil la:
http://www.tekro.ro/index.php?route=product/product&product_id=163 [Accesat 06.06.2015 ]
[30] Linear guide rails, Disponibil la: https://www.buildyourcnc.com/Item/mechanical -rails-
linear -guide -rails-20mm#prettyPhoto [Accesat 06.06.2015 ]
[31] Sursă 12 V -29 A, Disponibil la:
http://www.robofun.ro/ surse_de_alimentare/alimentatoare/sursa -12V-20A [ Accesat 06.06.2015 ]
[32] S. Zamfira , Notite de curs Senzori, 2013 -2014 .
[33] http://www.clasohlson.com/uk/Micro -Switch/Pr364767000 [Accesat 06.06.2015 ]
[34] Datesheet L293, Disponibil la: http://www.ti.com/lit/ds/symlink/l293.pdf [Accesat
07.06.2015 ]
[35] L293D, Disponibil la: http://www.robofun.ro/L293D?search=l293 [Accesat 07.06.2015 ]
[36] Circuit for Bipolar Stepper Motor , Disponibil la:
http://www .arduino.cc/en/Reference/StepperBipolarCircuit [Accesat 07.06.2015 ]
[37] L298, Disponibil la: http://www.robofun.ro/L298N?search=l298 [Accesat 07.06.2015 ]
[38] Datasheet L298, Disponibil la:
http://www.st.com/web/en/resource/technical/document/datasheet/CD00000240.pdf [Accesat
07.06.2015 ]
[39] Datasheet A4988, Disponibil la:
https://www.pololu.com/file/download/A4988.pdf?file_id=0J450 [Accesat 07.06.2015 ]
[40] A4988 Stepper Motor Driver Carrier, Black Edition , https://www.pololu.com/product/2986
[Accesat 07.06.2015 ]
[41] P. Borza, C.Gerigan, P. Ogrutan și Gh. Toacș e, Microcontrol lere, Editura Tehnică , 2000 .
[42] Arduini UNO R3, Disponibil la: http://www.robofun.ro/arduino/arduino_uno_v3 [Accesat
07.06.2015 ]
[43] http://www.jcopro.net/wp -content/uploads/2012/02/mach3a.jpg [Accesat 09.06.2015 ]
[44] I. Barbu, Proiectare asistată de calculator Notițe de curs, 2013 -2014
[45] Catia, Disponibil la: http://ro.wikipedia. org/wiki/Catia [Accesat 10.06.2015 ]
[46] Multy Body System, Disponibil la: https://en.wikipedia.org/wiki/Multibody_system
[Accesat 16.06.2015 ]

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 89
Programul de studii: MECATRONICĂ

[47] LMS Virtual Lab, Disponibil la:
http://www.plm.automation.siemens.com/en_us/products/lms/virtual -lab/motion/index.shtml
[Accesat 16.06.2015 ]
[48] About EAGLE PCB Design Software , Disponibil la: http://www.cadsoftusa.com/eagle –
pcb-design -software/about -eagle/ [Accesat 14.06.2015 ]
[49] A. Dumi triu, S. Zamfira ș i M. Luculescu, Mecatro nică, vol.2, Editu ra Universităț ii
Transilvania din Braș ov, 656 pagini, 2011, ISBN 978 -973-598-990-3.
[50] Gh. Bejinaru -Mihoc, S. La che, I Olaru, Tehnologia producț iei microsistemelor, 182
pagini,1997, ISBN 973 -96505 -7-0
[51] G. Williams, CNC Robotics, 320 pagini, 2003, ISB N 0-07-141828 -8
[52] Datasheet 2 -PHASE STEPPER MOTOR 39BYGH SERIES
[53] http://www.tme.eu/ro/details/39bygh405b/electromotoare/ [Accesat 17.06.2015 ]
[54] Alimentator stabilizat 12V 3000mA , Disponibil la:
http://www.mivarom.ro/catalog/product_info.php/alimentator -stabilizat -12v-3000ma -p-
4742?osCsid=9ieocagkf1188nnndiufmho5n2 [Accesat 18.06.2015 ]
[55] Arduino MEGA 2560, Disponibil la: http://w ww.robofun.ro/arduino/arduino_mega2560
[Accesat 18.06.2015 ]
[56] Dremel 3000, Disponibil la: http://www.dremeleurope.com/ro/ro/dremel%C2%AE3000 –
6013 -ocs-c/ , [Accesat 20.06.2015 ]
[57] Cerebral Meltdown, Disponibil la:
http://www.cerebralmeltdown.com/cncstuff/files/index.htm , [Accesat 20.06.2015 ]
[58] Norme specifice de securitate a muncii pent ru prelucrarea metalelor prin aș chiere ,
Disponibil la: http://www.iprotectiamuncii.ro/norme -protectia -muncii/nssm -1 , [Accesat
20.06.2015 ]

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 90
Programul de studii: MECATRONICĂ

ANEXA NR. 1
#include <HardwareSerial.h>

//our command string
#define COMMAND_SIZE 128
char palabra[COMMAND_SIZE];
byte serial_count;
int no_data = 0;

void setup()
{
Serial.begin(38400);
Serial.println("start");

init_process_string();
init_steppers();

}

void loop()
{
char c;

//keep it hot!

if (Serial.available() > 0)
{
c = Serial.read();
no_data = 0;

if (c != ' \n')
{
palabra[serial_count] = c;
serial_count++;
}
}
else
{
no_data++;
delayMicroseconds(100);
}

if (serial_count && (c == ' \n' || no_data > 10 0))
{

process_string(palabra, serial_count);

init_process_string();
}

//no data? turn off steppers
if (no_data > 1000)
disable_steppers();
}

#define X_STEPS_PER_INCH 4064
#define X_STEPS_PER_MM 160
#define X_MOTOR_STEPS 200

#define Y_STEPS_PER_INCH 4064
#define Y_STEPS_PER_MM 160
#define Y_MOTOR_STEPS 200

#define Z_STEPS_PER_INCH 4064

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 91
Programul de studii: MECATRONICĂ

#define Z_STEPS_PER_MM 160
#define Z_MOTOR_STEPS 200

#define FAST_XY_FEEDRATE 30
#define FAST_Z_FEEDRATE 30

#define CURVE_SECTION_INCHES 0.019685
#define CURVE_SECTION_MM 0.5

#define SENSORS_INVERTING 0
#define X_STEP_PIN 8
#define X_DIR_PIN 9
#define X_MIN_PIN 4
#define X_MAX_PIN 2
#define X_ENABLE_PIN 15

#define Y_STEP_PIN 11
#define Y_DIR_PIN 10
#define Y_MIN_PIN 3
#define Y_MAX_PIN 5
#define Y_ENABLE_PIN 15

#define Z_STEP_PIN 13
#define Z_DIR_PIN 12
#define Z_MIN_PIN 7
#define Z_MAX_PIN 6
#define Z_ENABLE_PIN 15
// our point structure to make things nice.
struct LongPoint {
long x;
long y;
long z;
};

struct FloatPoint {
float x;
float y;
float z;
};

FloatPoint current_units;
FloatPoint target_units;
FloatPoint delta_units;

FloatPoint current_steps;
FloatPoint target_steps;
FloatPoint delta_steps;

boolean abs_mode = false; //0 = incremental; 1 = absolute

//default to inches for units
float x_units = X_STEPS_PER_INCH;
float y_units = Y_STEPS_PER_INCH;
float z_units = Z_STEPS_PER_INCH;
float curve_section = CURVE_SECTION_INCHES;

//our direction vars
byte x_direction = 1;
byte y_direction = 1;
byte z_direction = 1;

//init our string processing
void init_process_string()
{
//init our command
for (byte i=0; i<COMMAND_SIZE; i++)
palabra[i] = 0;

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 92
Programul de studii: MECATRONICĂ

serial_count = 0;
}

//our feedrate variables.
float feedrate = 0.0;
long feedrate_micros = 0;

//Read the string and execute instructions
void process_string(char instruction[], int size)
{
//the character / means delete block… used for comments and stuff.
if (instruction[0] == '/')
{
Serial.println("ok");
return;
}

//init baby!
FloatPoint fp;
fp.x = 0.0;
fp.y = 0 .0;
fp.z = 0.0;

byte code = 0;;

//did we get a gcode?
if (
has_command('G', instruction, size) ||
has_command('X', instruction, size) ||
has_command('Y', instruction, size) ||
has_command('Z', instruction, size)
)
{
//which one?
code = (int)search_string('G', instruction, size);

// Get co -ordinates if required by the code type given
switch (code)
{
case 0:
case 1:
case 2:
case 3:
if(abs_mode)
{

if (has_command('X', instruction, size))
fp.x = search_string('X', instruction, size);
else
fp.x = current_units.x;

if (has_command('Y', instruction, size))
fp.y = search_string('Y', instruction, size);
else
fp.y = current_units.y;

if (has_command('Z', instruction, size))
fp.z = search_string('Z', instruction, size);
else
fp.z = current_units.z;
}
else
{
fp.x = search_string('X', instruction, size) +
current_units.x;

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 93
Programul de studii: MECATRONICĂ

fp.y = search_string('Y', instruction, size) +
current_units.y;
fp.z = search_string('Z', instruction, size) +
current_units.z;
}
break;
}

//do something!
switch (code)
{
case 0:
case 1:
//set our target.
set_target(fp.x, fp.y, fp.z);

//do we have a set speed?
if (has_command('G', instruction, size))
{
//adjust if we have a specific feedrate.
if (code == 1)
{
//how fast do we move?
feedrate = search_string('F', instruction, size);
if (feedrate > 0)
feedrate_micros =
calculate_feedrate_delay(feedrate);
//nope, no feedrate
else
feedrate_micros = getMaxSpeed();
}
//use our max for normal moves.
else
feedrate_micros = getMaxSpeed();
}
//nope, just coordinates!
else
{
//do we have a feedrate yet?
if (feedrate > 0)
feedrate_micros = calculate_feedrate_delay(feedrate);
//nope, no feedrate
else
feedrate_micros = getMaxSpeed();
}

//finally move.
dda_move(feedrate_micros);
break;

//Clockwise arc
case 2:
//Counterclockwise arc
case 3:
FloatPoint cent;

// Centre coordinates are always relative
cent.x = search_string('I', instruction, size) + current_units.x;
cent.y = search_string('J', instruct ion, size) + current_units.y;
float angleA, angleB, angle, radius, length, aX, aY, bX, bY;

aX = (current_units.x – cent.x);
aY = (current_units.y – cent.y);
bX = (fp.x – cent.x);
bY = (fp.y – cent.y);

if (code == 2) { // Clock wise

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 94
Programul de studii: MECATRONICĂ

angleA = atan2(bY, bX);
angleB = atan2(aY, aX);
} else { // Counterclockwise
angleA = atan2(aY, aX);
angleB = atan2(bY, bX);
}

if (angleB <= angleA) angleB += 2 * M_PI;
angle = angleB – angleA;

radius = sqrt(aX * aX + aY * aY);
length = radius * angle;
int steps, s, step;
steps = (int) ceil(length / curve_section);

FloatPoint newPoint;
for (s = 1; s <= steps; s++) {
step = (code == 3) ? s : steps – s; // Work backwards for CW
newPoint.x = cent.x + radius * cos(angleA + angle * ((float)
step / steps));
newPoint.y = cent.y + radius * sin(angleA + angle * ((float)
step / steps));
set_target(newPoint.x, newPoint.y, fp.z);

// Need to calculate rate for each section of curve
if (feedrate > 0)
feedrate_micros = calculate_feedrate_delay(feedrate);
else
feedrate_micros = getMaxSpeed();

// Make step
dda_move(feedrate_micros);
}

break;

//Dwell
case 4:
delay((int)search_ string('P', instruction, size));
break;

//Inches for Units
case 20:
x_units = X_STEPS_PER_INCH;
y_units = Y_STEPS_PER_INCH;
z_units = Z_STEPS_PER_INCH;
curve_section = CURVE_SECTION_INCHES;

calculate_deltas();
break;

//mm for Units
case 21:
x_units = X_STEPS_PER_MM;
y_units = Y_STEPS_PER_MM;
z_units = Z_STEPS_PER_MM;
curve_section = CURVE_SECTION_MM;

calculate_deltas();
break;

//go home.
case 28:
set_target(0.0, 0.0, 0.0);
dda_move(getMaxSpeed());
break;

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 95
Programul de studii: MECATRONICĂ

//go home via an intermediate point.
case 30:
fp.x = search_string('X', instruction, size);
fp.y = search_string('Y', instruction, size);
fp.z = search_string('Z', instruction, size);

//set our target.
if(abs_mode)
{
if (!has_command('X', instruction, size))
fp.x = current_units.x;
if (!has_command('Y', instruction, size))
fp.y = current_units.y;
if (!has_command('Z', instruction, size))
fp.z = current_uni ts.z;

set_target(fp.x, fp.y, fp.z);
}
else
set_target(current_units.x + fp.x, current_units.y + fp.y,
current_units.z + fp.z);

//go there.
dda_move(getMaxSpeed());

//go home.
set_target(0.0, 0.0, 0.0);
dda_move(getMaxSpeed());
break;

//Absolute Positioning
case 90:
abs_mode = true;
break;

//Incremental Positioning
case 91:
abs_mode = false;
break;

//Set as home
case 92:
set_position(0.0, 0.0, 0.0);
break;

default:
Serial.print("huh? G");
Serial.println(code,DEC);
}
}

//find us an m code.
if (has_command('M', instruction, size))
{
code = search_string('M', instruction, size);
switch (code)
{
//TODO: this is a bug because search_string returns 0. gotta fix that.
case 0:
true;
break;

default:

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 96
Programul de studii: MECATRONICĂ

Serial.print("Huh? M");
Serial.println(code);
}
}

//tell our host we're done.
Serial.println("ok");
// Serial.println(line, DEC);
}

double s earch_string(char key, char instruction[], int string_size)
{
char temp[10] = "";

for (byte i=0; i<string_size; i++)
{
if (instruction[i] == key)
{
i++;
int k = 0;
while (i < string_size && k < 10)
{
if (instruction[i] == 0 || instruction[i] == ' ')
break;

temp[k] = instruction[i];
i++;
k++;
}
return strtod(temp, NULL);
}
}

return 0;
}
bool has_command(char key, char instruction[], int string_size)
{
for (byte i=0; i<string_size; i++)
{
if (instruction[i] == key)
return true;
}

return false;
}

//init our variables
long max_delta;
long x_counter;
long y_counter;
long z_counter;
bool x_can_step;
bool y_can_step;
bool z_can_step;
int milli_delay;

void init_steppers()
{
disable_steppers();

//init our points.
current_units.x = 0.0;
current_units.y = 0.0;
current_units.z = 0.0;
target_units.x = 0.0;
target_units.y = 0.0;
target_units.z = 0.0;

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 97
Programul de studii: MECATRONICĂ

pinMode(X_STEP_PIN, OUTPUT);
pinMode(X_DIR_PIN, OUTPUT);
pinMode(X_ENABLE_PIN, OUTPUT);
pinMode(X_MIN_PIN, INPUT);
pinMode(X_MAX_PIN, INPUT);

pinMode(Y_STEP_PIN, OUTPUT);
pinMode(Y_DIR_PIN, OUTPUT);
pinMode(Y_ENABLE_PIN, OUTPUT);
pinMode(Y_MIN_PIN, INPUT);
pinMode(Y_MAX_PIN, INPUT);

pinMode(Z_STEP_PIN, OUTPUT);
pinMode(Z_DIR_PIN, OUTPUT);
pinMode(Z_ENABLE_PIN, OUTPUT);
pinMode(Z_MIN_PIN, INPUT);
pinMode(Z_MAX_PIN, INPUT);

calculate_deltas();
}

void dda_move(long micro_delay)
{
digitalWrite(X_ENABLE_PIN, HIGH);
digitalWrite(Y_ENABLE_PIN, HIGH);
digitalWr ite(Z_ENABLE_PIN, HIGH);

max_delta = max(delta_steps.x, delta_steps.y);
max_delta = max(delta_steps.z, max_delta);

long x_counter = -max_delta/2;
long y_counter = -max_delta/2;
long z_counter = -max_delta/2;

bool x_can_step = 0;
bool y_can_step = 0;
bool z_can_step = 0;

if (micro_delay >= 16383)
milli_delay = micro_delay / 1000;
else
milli_delay = 0;

do
{
x_can_step = can_step(X_MIN_PIN, X_MAX_PIN, current_steps.x, target_steps.x,
x_direction);
y_can_step = can_step(Y_MIN_PIN, Y_M AX_PIN, current_steps.y, target_steps.y,
y_direction);
z_can_step = can_step(Z_MIN_PIN, Z_MAX_PIN, current_steps.z, target_steps.z,
z_direction);

if (x_can_step)
{
x_counter += delta_steps.x;

if (x_counter > 0)
{
do_step(X_STEP_PIN, X_DIR_PIN, x_direction);
x_counter -= max_delta;

if (x_direction)
current_steps.x++;
else
current_steps.x –;
}

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 98
Programul de studii: MECATRONICĂ

}

if (y_can_step)
{
y_counter += delta_steps.y;

if (y_counter > 0)
{
do_step(Y_STEP_PIN, Y_DIR_PIN, y_direction);
y_counter -= max_delta;

if (y_direction)
current_steps.y++;
else
current_steps.y –;
}
}

if (z_can_step)
{
z_counter += delta_steps.z;

if (z_counter > 0)
{
do_step(Z_STEP_PIN, Z_DI R_PIN, z_direction);
z_counter -= max_delta;

if (z_direction)
current_steps.z++;
else
current_steps.z –;
}
}

//wait for next step.
if (milli_delay > 0)
delay(milli_delay);
else
delayMicroseconds(micro_delay);
}
while (x_can_step || y_can_step || z_can_step);

current_units.x = target_units.x;
current_units.y = target_units.y;
current_units.z = target_units.z;
calculate_deltas();
}

bool can_step(byte min_pin, byte max_pin, long current, long target, byte direction)
{
if (target == current)
return false;
else if (read_switch(min_pin) && !direction)
return false;
else if (read_switch(max_pin) && direction)
return false;

return true;
}

void do_step(byte pinA, byte pinB, byte dir)
{
switch (dir << 2 | digitalRead(pinA) << 1 | digitalRead(pinB)) {
case 0: /* 0 00 -> 10 */
case 5: /* 1 01 -> 11 */

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 99
Programul de studii: MECATRONICĂ

digitalWrite(pinA, HIGH);
break;
case 1: /* 0 0 1 -> 00 */
case 7: /* 1 11 -> 10 */
digitalWrite(pinB, LOW);
break;
case 2: /* 0 10 -> 11 */
case 4: /* 1 00 -> 01 */
digitalWrite(pinB, HIGH);
break;
case 3: /* 0 11 -> 01 */
case 6: /* 1 10 -> 00 */
digitalWrite(pinA, LOW);
break;
}
delayMicroseconds(5);
}

bool read_switch(byte pin)
{

if ( SENSORS_INVERTING )
return !digitalRead(pin) && !digitalRead(pin);
else
return digitalRead(pin) && digitalRead(pin);
}

long to_steps(float steps_per_unit, float units)
{
return steps_per_unit * units;
}

void set_target(float x, float y, float z)
{
target_units.x = x;
target_units.y = y;
target_units.z = z;

calculate_deltas();
}

void set_position(float x, float y, float z)
{
current_units.x = x;
current_units.y = y;
current_units.z = z;

calculate_deltas();
}

void calculate_deltas()
{
//figure our deltas.
delta_units.x = abs(target_units.x – current_units.x);
delta_units.y = abs(target_units.y – current_units.y);
delta_units.z = abs(target_units.z – current_units.z);

//set our steps current, target, and delta
current_steps.x = to_steps(x_units, current_units.x);
current_steps.y = to_steps(y_units, current_units.y);
current_steps.z = to_steps(z_units, current_units.z);

target_steps.x = to_steps(x_units, target_units.x);
target_steps.y = to_steps(y_units, target_units.y);
target_steps.z = to_steps(z_units, targ et_units.z);

UNIVERSITATEA TRANSILVANIA DIN BRAȘOV
Facultatea Design de Produs și Mediu PROIECT DE DIPLOMĂ Pag. 100
Programul de studii: MECATRONICĂ

delta_steps.x = abs(target_steps.x – current_steps.x);
delta_steps.y = abs(target_steps.y – current_steps.y);
delta_steps.z = abs(target_steps.z – current_steps.z);

//what is our direction
x_direction = (target_units.x >= current_units.x);
y_direction = (target_units.y >= current_units.y);
z_direction = (target_units.z >= current_units.z);

//set our direction pins as well
digitalWrite(X_DIR_PIN, x_direction);
digitalWrite(Y_DIR_PIN, y_direction);
digitalWrite(Z_DIR_P IN, z_direction);
}

long calculate_feedrate_delay(float feedrate)
{
//how long is our line length?
float distance = sqrt(delta_units.x*delta_units.x + delta_units.y*delta_units.y +
delta_units.z*delta_units.z);
long master_steps = 0;

//find the dom inant axis.
if (delta_steps.x > delta_steps.y)
{
if (delta_steps.z > delta_steps.x)
master_steps = delta_steps.z;
else
master_steps = delta_steps.x;
}
else
{
if (delta_steps.z > delta_steps.y)
master_steps = delta_steps.z;
else
master_steps = delta_steps.y;
}

return ((distance * 600000000.0) / feedrate) / master_steps;
}

long getMaxSpeed()
{
if (delta_steps.z > 0)
return calculate_feedrate_delay(FAST_Z_FEEDRATE);
else
return calculate_feedrate_delay(FAST_XY_FEEDRATE);
}

void disable_steppers()
{
//enable our steppers
digitalWrite(X_ENABLE_PIN, LOW);
digitalWrite(Y_ENABLE_PIN, LOW);
digitalWrite(Z_ENABLE_PIN, LOW);
}

Similar Posts