Programarea Unui Robot Industrial de Tip Abb Pentru Manipularea Unor Piese Prismatice

Proiect de diplomă

Programarea unui robot industrial de tip ABB pentru manipularea unor piese prismatice

Introducere

Inca incepand din cele mai vechi timpuri, omul a cautat sa isi usureze sarcinile, construind numeroase mecanisme care sa ajute la dezvoltarea unor sisteme ce au ajutat la reducerea efortului fizic depus de om. Printre primele mecanisme care au eliminat efortul fizic de catre om, se numara manipulatoarele si robotii. Cuvantul "robot" , cuvant preluat din limba ceha care inseamna "munca grea", a fost prima data asociat cu un dispozitiv ce executa ordine de catre dramaturgul ceh Karel Capek în 1920 în piesa de teatru „Roboții universali ai lui Rossum” unde roboții erau infatisari umane, dar lipsite de personalitate ce executau ordine. Termenul de "robot" a inceput sa fie astfel folosit abia 3 ani mai tarziu, dupa ce lucrarea lui Capek a fost tradusa in engleza. In mod obisnuit un robot este o masina care, imita omul fie ca infatisare, fie ca posibilitati de actiune. Termenul de "robotica" a fost prima data folosit de catre scriitorul american de origine rusă, Isac Asimov (n. 1920), care in lucrarea lui enunta cele 3 reguli de baza ale unui robot:

Un robot nu poate leza o ființă umană sau nu poate asista inactiv atunci când aceasta este în primejdie.

Orice robot trebuie să se supună comenzilor primite de la ființele umane, cu excepția acelor comenzi care nu respectă primul principiu.

Orice robot trebuie să se autoprotejeze atunci când este pusă în pericol integritatea sa, cu excepția cazurilor în care s-ar încălca cel puțin unul dintre primele două principii.

Chiar daca primele informatii despre roboti au aparut la inceputul secolului XIX, primul robot industrial a fost prima data folosit în anul 1963 la uzinele Trenton ( S.U.A.) ale companiei General Motors. De atunci și pânã astãzi numãrul și performanțele roboților industriali au crescut în continuu , pe mãsura dezvoltãrii posibilitãților lor , gãsindu-și noi utilizãri , astãzi putând fi folosiți în toate sferele de activitate.

Organul de execuție al robotului este alcătuit dintr-un lanț cinematic închis sau deschis oferind diverse grade de libertate prin intermediul cărora dispozitivul de lucru poate acționa:

• mână mecanică;

• dispozitiv de manevrare;

• dispozitiv de apucare;

De-a lungul timpului, pricipalele companii construcoare sau asociațiile naționale din domeniu au cautat sa defineasca cat mai sugestiv termenul de "robot":

RIA (Robot Institute of America): „Robotul este un manipulator multifuncțional,

reprogramabil, destinat deplasării materialelor, pieselor, sculelor sau altor dispozitive

specializate prin mișcări variabile, programate pentru a îndeplini anumite sarcini”.

JIRA (Japan Industrial Robot Association): „Robotul este un dispozitiv versatil și

flexibil care oferă funcții de deplasare similare celor ale membrelor umane sau ale cărui funcții de deplasare sunt comandate de senzori și de mijloace proprii de recunoaștere”.

BRA (British Robot Association): „Robotul este un dispozitiv reprogramabil realizat

pentru manipularea și transportul pieselor, sculelor sau altor mijloace de producție prin

mișcări variabile programate pentru a îndeplini sarcini specifice de fabricație”.

General Motors: „Robotul este un echipament fizic cu funcționare programabilă

capabil să efectueze anumite operații și secvențe de operații orientate spre manipularea de

piese, scule, subansamble”

În contextul acestei definiții, prin funcție inteligentă se înțelege capacitatea sistemului de a executa cel puțin una din următoarele acțiuni: judecată, recunoașterea, adaptarea sau învățarea.

În general robotul industrial este considerat ca fiind un sistem integrat mecano-electro-informațional, utilizat în procesul de producție în scopul realizării unor funcții de manipulare analoage cu cele realizate de mâna omului, conferind obiectului manipulat orice mișcare programată liber, în cadrul unui proces tehnologic ce se desfășoară într-un mediu specific.

În generarea unui sistem nou de manipulare cu roboți sau manipulatoare reprezintă o investiție inițială mai scumpă decât a unei automatizări specializate rigide, însă datorită avantajelor precizate anterior, în timp și în special în situția schimbării frecvente a producției ele devin mult mai eficiente din punct de vedere economic.

Lucrarea de diploma are urmatoarele obiective:

Prezentarea robotului industrial de tip ABB IRB 140;

Calibrarea, programarea și simularea practică a robotului industrial ABB IRB 140;

Capitolul I.

Prezentarea robotului industrial ABB IRB 140

I.1 Prezentare generală

ABB este cea mai mare companie producătoare de sisteme robot, fiind lider mondial în domeniul tehnologiilor energetice și de automatizare. Cu sediul în Zurich, Elveția, compania are 150.000 de angajați si opereaza in aproximativ 100 de țari.

Sistemul robot ABB IRB 140 S4C M2000 este format din următoarele componente:

Manipulator tip IRB 140;

Controler S4C M2000 : – Blocul de control

– Consola de instruire

Fig. 1.1 – Controlerul de mișcare și manipulatorul[3]

I.2 Manipulatorul IRB 140

Robotul ABB IRB 140 are șase grade de libertate oferite de șase cuple cinematice de clasa a V-a, toate de rotație, acesta avand o structură deschisă, care este special adaptat pentru o utilizare flexibilă, și poate comunica în permanență cu sistemele externe.

Robotul este echipat cu sistemul de operare OS BaseWare. BaseWare OS controlează fiecare aspect al robotului, precum controlul mișcării, dezvoltarea și executarea aplicațiilor program de comunicare, etc.

Prin caracteristicile sale poate fi utilizat, în funcție de efectorul final cu care este dotat, în diferite operații industriale, cum ar fi: manipulare (deservirea de mașini unelte, prese, etc.), sudură cu arc, lipire, tăiere, debavurare, asamblare. Datorită flexibilitații, obținută atât prin structura mecanică, cât și prin sistemul de comandă ce permite diferite modalități de programare și de comunicare sau sincronizare cu alte echipamente industriale și cu utilizatorul, robotul IRB 140 poate fi utilizat și în sistemele de tip CIM (Computer Integrated Manufacturing).

Din figura 1.2 se observă că este vorba despre un robot neredondant (6 grade de mobilitate), la care toate articulațiile sunt de rotație, acționarea fiind electrică, folosindu-se motoare de curent alternativ. Din felul în care sunt plasate cele șase axe ale articulațiilor rezultă că este vorba despre un robot rezolvabil.

Fig. 1.2 Cele 6 axe ale manipulatorului IRB 140 [10]

Manipulatorul are o greutate de aproximativ 98 de kilograme excluzând cablurile până la controler si poate avea o capacitate de sarcina de pana la 6 kg.. Prin intermediul figurii 1.3 se reprezintă dimensiunile manipulatorului, dimensiuni date în mm.

Fig. 1.3 Vizualizarea manipulatorului din pozițiile spate, lateral și sus [10]

I.2.1. Mișcarea în cadrul axelor

Deplasările maxime pentru articulațiile robotului sunt date în tabelul 1.1:

Tabelul 1.1. Aria de deplasare a axelor manipulatorului [10]

Am numit ca fiind antebraț articulația 3 al robotului (baza este articulația 1), iar antebrațul este articulația 3. Ultimele două articulații determină orientarea apucătorului, fiind posibile două mișcări de orientare, după unghiurile cunoscute în robotică sub denumirile “pitch” și “roll”.

În figura 1.4 se prezintă vitezele unghiulare de deplasare ale motoarelor manipulatorului.

Fig. 1.4 Vitezele unghiulare de deplasare pe axe [10]

Performanțele robotului sunt determinate de caracteristicile acestuia:

capacitate de sarcină: 6 kg;

repetabilitate 0,1 mm;

putere maximă consumată: 1,5 kW cu motoarele alimentate și 0,3 kW cu motoarele nealimentate;

temperatura de operare: 5 45C pentru robot, 5 40C pentru sistemul de comandă;

umiditate : 95% la temperatură constantă ;

nivelul de zgomat maxim 70 dB;

unitatea de programare: portabilă (“teach pendant”), cu tastatură, joystick și display (16 linii x 40 caractere);

I.3. Controlerul S4C. Sistemul de comandă al robotului .

Principalele elemente ale controlerului S4C, de mișcare pentru roboți sunt precizate în figura 1.5

.

Fig. 1.5 – Controlerul S4C[5]

Sistemul de comandă al robotului este organizat asemenea figuri 1.6. Acesta constă din 3 unități distincte aflate pe două plăci de circuit imprimat. O unitate este calculatorul central care are rolul de a coordona atât activitatea robotului cât și cea a celorlalte echipamente care cooperează cu robotul și care sunt comandate prin porturile de intrare/ieșire. Pe nivelul ierarhic inferior se găsesc unitatea de comandă a axelor robotului și unitatea de comunicație.

Prima asigură comanda articulațiilor prin intermediul circuitelor drivere și culegerea informațiilor senzoriale de la robot prin intermediul sistemului de măsură (acesta transmite informațiile la unitatea de comandă a articulațiilor printr-o legătură serială).

Fig. 1.6. Structura ierarhică internă a controler-ului [6]

Unitatea de comunicație este cea care asigură transferul informațional cu utilizatorul prin intermediul unității mobile de învățare (“teach pendant”), cu alte echipamente prin intermediul porturilor de intrare/ieșire și cu memoria externă (unitate de dischete).

Principalele elemente externe ale Controler-ului S4C , prezentate in figura 1.5 sunt :

I.3.1 Comutatorul general de alimentare

Comutatorul general de alimentare, figura 1.7, este un buton cu două poziții ce activează respectiv dezactivează alimentarea de la rețea cu energie electrică.

Fig 1.7. Comutatorul general de

alimentare

I.3.2 Panoul de operare

Structura panoului de operare [Figura 1.8] și o scurtă descriere a elementelor componente este prezentată în cele ce urmează:

Fig. 1.8 – Panoul de operare[5]

Activare motoare – starea curentă a motoarelor robotului este indicată de o lampă;

lumină continuă – motoarele sunt pregătite pentru comandă;

lumină intermitentă – robotul este decalibrat;

lumină intermitentă– a fost atinsă o poziție limită a spațiului de lucru indicată de limitatoare fizice montate pe segmentele robotului sau este selectat modul de lucru manual.

Modul de operare a robotului:

Modul de operare automat

Este selectat la execuția unor programe robot în cadrul unui proces tehnologic. În acest mod de operare nu este posibilă comanda robotului prin joystick. De asemenea, butonul de activare al motoarelor situat pe consola de operare este dezactivat și toate facilitățile de editare a programelor sunt blocate.

Modul de operare manual cu viteză redusă

Este folosit pentru programare și la comanda manuală a segmentelor robotului.

Selectarea acestui mod de operare se face și în cazul în care se dorește dezactivarea motoarelor.

Modul de operare manual cu viteză maximă

Este folosit pentru testarea programelor robot la viteza maximă, viteză atinsă la selecția modului de operare automat. În acest mod de operare butonul activare motoare este activ. La apăsarea acestuia programele încărcate vor fi executate și la eliberare, execuția programelor va fi suspendată.

Butonul de avarie

La apăsarea acestui buton, indiferent de starea sau modul de operare în care se află robotul, vor fi anulate toate comenzile către motoare. Butonul de avarie va rămâne apăsat, iar pentru activarea motoarelor va trebui readus în poziția sa inițială.

Contor pentru timpul de operare

Indică numărul de ore în care motoarele robotului au fost active.

Figura 1.9. Controlerul și consola de instruire

I.4. Consola de instruire

Consola de instruire ocupă o poziție centrală în sistemul robot ABB IRB 140. Cu ajutorul său poate fi realizată majoritatea operațiilor de bază. Prezentarea consolei de instruire și a elementelor componente este realizată în figura 1.10 și în figura 1.11.

Fig.1.10 Consola de instruire

Butonul Oprire de Urgență (Emergency Stop)

Acest buton este cunoscut și sub denumirea de “ciupercă de avarie”. La apăsarea acestui buton, indiferent de starea sau modul de operare în care se află robotul, vor fi anulate toate comenzile către motoare.

Practic, apăsarea acestui buton are ca efect trecerea tuturor motoarelor electrice ale robotului în modul oprit . După apăsare, butonul rămâne blocat în această pozițe, iar revenirea sa în poziția inițială necesită efectuarea unei mișcări mecanice speciale din partea utilizatorului . Revenirea în starea inițială are ca efect trecerea tuturor motoarelor electrice ale robotului în modul pornit doar dupa apăsarea butonului de activare motoare de pe panoul de operare.

Dispozitivul de validare a mișcării

Are trei poziții: eliberat, apăsat până la jumătatea cursei și complet apăsat. Apăsat la jumătatea cursei, butonul va determina activarea motoarelor robotului, iar în celelalte două stări butonul va determina dezactivarea motoarelor. Butonul va activa motoarele robotului numai în cazul în care se dorește deplasarea segmentelor prin Joystick sau la lansarea în execuție a unor programe, în cazul în care robotul este în unul din cele două moduri de operare Manual.

Joystick

Acesta este un dispozitiv cu o construcție specială, care prezintă trei grade de libertate, și este folosit pentru a deplasa manual segmentele robotului. Spre exemplu, joystick-ul poate fi folosit de operator atunci când dorește construirea unui nou program pentru robot.[8]

Display-ul (Ecranul)

Este folosit pentru a afișa toate informațiile necesare în timpul programării robotului, al schimbării programului funcțional . Pe ecran pot fi afișate simultan 16 linii, fiecare linie fiind compusă din 40 de caractere.

Tastele consolei

Figura 1.11 va prezenta numele diferitelor taste existente pe consola de programare, cele mai multe taste generând anumite funcții predefinite de către constructor, pe când câteva pot fi programate de utilizator.

Din punct de vedere funcțional, tastele sunt împărțite în câteva "grupe". Dispunerea lor pe suprafața consolei, în funcție de grupa de apartenență, poate fi observată de asemenea în figura 1.11 :

Fig. 1.11 – Structura consolei de operare[8]

Principalele grupe de taste existente pe consola de programare sunt următoarele:

Taste pentru operarea pe ecran cu "ferestre"

Taste pentru navigare

Taste pentru controlul mișcării

Taste pentru activarea meniurilor

Taste pentru activarea unor funcții

Taste de uz general

Taste programabile

Taste numerice

Tastele pentru operarea pe ecran cu "ferestre" permit selectarea unei “ferestre” (din cele disponibile în mod predefinit) cu care utilizatorul dorește să lucreze la un moment dat pe ecranul consolei. Aceste ferestre sunt asociate de fapt unor funcții concrete care pot fi realizate de către sistemul-robot prin intermediul consolei de programare:[8]

Controlul manual adică funcția prin care articulațiile robotului pot fi deplasate sub comanda manuală a operatorului.

Programare, adică grupul de funcții specifice proceselor de construcție, editare și testare a unui program funcțional.

Managementul intrărilor și ieșirilor digitale, adică funcția prin care se gestionează manual controlul intrărilor și ieșirilor robotului (existente pe modulul specializat I / O amplasat în interiorul controller-ului).

Managementul fișierelor, adică funcția prin care se gestionează fișierele asociate programelor funcționale.

Parametrii sistemului, adică funcția prin care se configurează sistemul-robot prin valori alocate unor parametrii cunoscuți sub denumirea de "parametrii sistem".

Service, adică funcția prin care consola oferă utilizatoru-lui informații utile asupra "problemelor funcționale" ale robotului, precum și anumite modalități sau proceduri pentru "depășirea" acestora.

Operația automată adică funcția prin care robotul efectuează "automat" un program funcțional (fără controlul direct al operatorului uman).

Tastele incluse în acest prim grup și funcțiile alocate lor sunt următoarele:

Operația manuală. Tastă folosită pentru a introduce pe ecran o fereastră specifică procesului de instruire a robotului (în privința mișcărilor efectuate din articulațiile sale).

Program. Tastă folosită pentru a introduce pe ecran o fereastră specifică procesului de programare a robotului, editare și testare a programului realizat.

Managementul intrărilor și ieșirilor digitale. Tastă folosită pentru a introduce pe ecran o fereastră care permite simulări logice ale semnalelor de intrare / ieșire din modulul specializat Inputs / Outputs al controller-ului robot.

Diverse. Tastă folosită pentru a comuta pe ecran apariția altor tipuri de ferestre (spre exemplu Parametrii sistem, Service, Operația automată sau Managementul fișierelor).

Tastele pentru navigare sunt folosite de către utilizator pentru a naviga între ferestrele afișate simultan pe ecran sau pentru a muta cursorul în interiorul aceleiași pagini care ocupă ecranul la un moment dat.

Listă. Această tastă se folosește pentru a muta cursorul dintr-o fereastră în alta, atunci când două ferestre sunt afișate simultan pe ecran (ferestrele sunt separate pe ecran printr-o linie dublă orizontală).

Pagina următoare. Informația afișată pe ecran se numește pagină și este limitată la 16 linii cu 40 caractere. Aceste taste permit trecerea la pagina următoare respectiv la pagina anterioară.

Jos / Sus. Aceste taste se folosesc pentru a deplasa cursorul cu o linie în jos (respectiv în sus) din poziția sa curentă în pagina afișată pe ecran.

Stânga / Dreapta. Aceste taste se folosesc pentru a deplasa cursorul cu o coloană la stânga (respectiv la dreapta) în cadrul paginii afișate pe ecran la un moment dat.

Tastele pentru controlul mișcării. Sunt folosite de către operator pentru a alege modalitățile dorite în privința mi șcării articulațiilor robotului sau ale unor "axe externe de mișcare" atașate acestuia.Cu ajutorul lor sunt posibile:

Deplasări liniare ale punctului caracteristic al terminalului robot de-a lungul axelor de coordonate ale sistemului de referință (rectangular) atașat acestui punct (așa-numitul "sistem de referință TCP"). În cazul general, aceste deplasări presupun mișcări intercorelate (interpolate) ale tuturor articulațiilor robotului, astfel încât la nivelul TCP să rezulte numai deplasări de-a lungul axelor sistemului de coordonate .

Orientări (rotații) ale "sistemului de referință TCP" în jurul originii sale, respectiv punctul TCP.

Deplasări ale TCP produse prin mișcarea unei singure articulații a robotului sau a unui grup de articulații. Acest mod de mișcare este cunoscut în literatura de specialitate sub denumirea de mișcarea axă cu axă, și se caracterizează prin faptul că deplasarea unei articulații se face total independent în raport cu celelalte .De regulă, în timpul deplasării unei articulații celelalte își mențin valoarea asociată a "coordonatei generalizate", cu excepția cazurilor în care construcția mecanică a robotului nu permite acest lucru.

Tastele pentru activarea meniurilor. Aceste taste, permit activarea unor meniuri pe ecranul consolei. Referitor la modul lor de operare se poate preciza:

Tipul meniului alocat la un moment dat unei anumite taste este automat afișat pe ecran, în partea sa superioară și sub fiecare tastă. Aceasta înseamnă faptul că o tastă poate să aibă alocate meniuri diferite, în funcție de starea curentă a consolei la un moment dat.

Conținutul unui meniu este afișat pe ecran numai după apăsarea tastei adiacente. El este prezentat într-o fereastră și este plasat în partea superioară a ecranului (sub tasta corespondentă).

Tastele pentru activarea unor funcții Aceste taste permit activarea unor funcții frecvent folosite de către operator. Referitor la modul lor de operare se poate preciza faptul că tipul funcției alocate la un moment dat unei taste este afișat pe ecran, în partea sa inferioară și deasupra tastei, deci și alocarea acestor taste este tot de tip "dinamic", ca și în cazul grupului precedent.

Tastele de uz general. Tastele incluse în acest grup permit utilizatorului diferite funcții care nu sunt legate de un anumit regim de programare. În general, ele asigură funcții de control și editare a programelor robot.

Stop(Oprire). Apăsarea acestei taste determină oprirea din execuție a unui program.

Contrast. Prin apăsarea repetată a acestei taste se poate modifica contrastul ecranului, astfel încât acesta să devină cât mai lizibil.

Delete(Stergere). Apăsarea acestei taste șterge o zonă de informație care a fost selectată anterior pe ecran.

Enter(Selectare). Această tastă se folosește pentru a confirma introducerea oricăror date prin consolă (în mod similar tastei cu aceiași funcție de pe tastatura unui calculator).

Taste programabile. Un grup format din 3 taste pot fi programate de către utilizator pentru funcții de tip "setare/resetare" alocate unei ieșiri digitale a robotului sau pentru simularea activării unor intrări digitale ale sistemului robot. Ele sunt inscripționate cu P1, P2 și respectiv P3.

De menționat că pe fața consolei sunt disponibile și două butoane care pot fi folosite în același scop. Acesta este motivul pentru care ele sunt inscripționate cu P4 și respectiv P5.

Tastele numerice. Un grup format din 12 taste sunt plasate în partea dreaptă a ecranului consolei de programare. Dintre acestea, un număr de 10 taste sunt inscripționate numeric prin cifrele 0-9, iar celelalte două sunt inscripționate cu caracterele " – " și respectiv " * ". Ansamblul celor 12 taste din acest grup permite introducerea caracterelor alfa-numerice necesare realizării unui program funcțional.[8]

Pentru aceasta se utilizează o procedură "indirectă" și relativ ingenioasă, prin care fiecare tastă din grupul de 12 este asociată în final unui caracter alfanumeric afișat pe ecran. Întrucât numărul tastelor numerice este mai mic decât cel al caracterelor alfa-numerice, acestea sunt afișate pe ecran în grupuri de câte 12. Fiecare grup de caractere alfanumerice este de fapt o matrice cu 4 linii și 3 coloane (exact ca și dispunerea spațială a tastelor numerice) care conține în fiecare locație un caracter.

Fig 1.12 Utilizarea tastelor numerice pentru introducerea unui text[8]

În figura 1.12 este prezentată atât zona tastelor numerice de pe consolă cât și o fereastră cu caractere alfanumerice care este afișată pe ecranul consolei. În partea de jos a ferestrei se observă 5 simboluri (A-a, ← , →, Cancel și OK).

Capitolul II.

Prezentarea stației de lucru

II.1. Componentele statiei de lucru

Masa de lucru : – conveior

– clemă fixare machetă spate

– clemă fixare machetă dreapta

– clemă fixare machetă stânga

– senzor detecție machetă

Unealta vacuum

Stand manipulator ABB IRB 140

Machetă

Cutie piese

Piese prismatice

II.2.Masa de lucru

Conține : a) conveior

b) trei cleme de fixare: spate, stânga, dreapta

c) senzor detecție machetă

d) motor

Dimensiuni: ~ lungime 397mm

~ lățime 268mm

~ înălțime 178mm

Fig. 2.1. Masă de lucru

Este masa punctului de lucru robot. Are rolul de a ține fixa macheta ,cu ajutorul celor 3 cleme de prindere , pentru o manipulare cat mai precisa.

II.3. Unealtă vacuum

Conține: a) corp unealtă vacuum

b) cap unealtă vacuum

Ca și unealtă atașată robotului asigură manipularea pieselor cu ajutorul vacuumului.

Dimensiuni: ~ lungime 50 mm

~ lățime 50 mm

~ înălțime 95 mm

Fig. 2.2. Unealta vacuum

II.4. Stand manipulator ABB 140

Rolul sau este de a susține manipulatorul IRB ABB 140.

Dimensiuni: ~ lungime 527 mm

~ lățime 459 mm

~ înălțime 993 mm

Stand-ul manipulatorului este prins de podea cu suruburi pentru siguranță.

Fig. 2.3. Stand manipulator ABB IRB 140

II.5. Machetă

Platformă ce susține piesele și cutia unde sunt depozitate piesele pana in momentul in care sunt aranjate pe machetă.

Dimensiuni: ~ lungime 250 mm

~ lățime 250 mm

~ înălțime 84 mm

Fig. 2.4. Machetă

II.5. Piesele prismatice

a) Piesa nr. 1

Dimensiuni: ~ lungime 40 mm

~ lățime 40 mm

~ înălțime 40 mm

Fig. 2.5. Piesa nr. 1

b) Piesa nr. 2

Dimensiuni: ~ lungime 40 mm

~ lățime 40 mm

~ înălțime 40 mm

Fig. 2.6. Piesa nr. 2

c) Piesa nr. 3

Dimensiuni: ~ lungime 40 mm

~ lățime 60 mm

~ înălțime 20 mm

Fig. 2.7. Piesa nr. 3

d) Piesa nr. 4

Dimensiuni: ~ lungime 40 mm

~ lățime 60 mm

~ înălțime 20 mm

Fig. 2.8. Piesa nr. 4

e) Piesa nr. 5

Dimensiuni: ~ lungime 40 mm

~ lățime 20 mm

~ înălțime 40 mm

Fig. 2.9. Piesa nr. 5

f) Piesa nr. 6

Dimensiuni: ~ lungime 40 mm

~ lățime 40 mm

~ înălțime 40 mm

Fig. 2.10. Piesa nr. 6

g) Piesa nr. 7

Dimensiuni: ~ lungime 60 mm

~ lățime 40 mm

~ înălțime 20 mm

Fig. 2.11. Piesa nr. 7

II.7. Cutia

Rol în depozitarea pieselor.

Dimensiuni: ~ lungime 68 mm

~ lățime 108mm

~ înălțime 60 mm

Fig. 2.12. Cutia

II.8. Macheta cu piese

Se prezintă dispunerea pieselor pe machetă, aleasă arbitrar deoarece se poate observa că anumite piese pot fi așezate în diverse locații sub diferite poziții.

Fig. 2.13. Model real machetă cu piese

Capitolul III.

Aplicația practică de programare a robotului industrial ABB IRB 140

III.1 Calibrarea robotului industrial ABB IRB 140

După punerea sub tensiune, robotul trebuie readus în poziția de origine mecanică în vederea sincronizării axelor de rotație (în lipsa sincronizării, comenzile de deplasare la o poziție memorată, sau date prin coordonate, precum și memorarea pozițiilor nu sunt efectuate).

Primul pas este de a poziționa robotul în poziția de origine mecanică, mișcând axele astfel încât marcajele de pe fiecare axă a robotului să coincidă cu cea din figura 3.1.

Fig. 3.1 Pozițiile de calibrare[6]

Această sincronizare poate fi realizată utilizând cutia de instruire a robotului astfel: “Service->Calib->Fine Calibration”(figurile 3.2, 3.3).

Fig. 3.2 Fereastra principală

Fig. 3.3 Fereastra “Service”

Din această fereastră vom alege fiecare axă folosind butonul “All” și vom calibra fiecare axă (figura 3.4).

Fig. 3.4 Axele manipulatorului

Urmatorul pas este să actualizam contorul de rotație a fiecarei axe, utilizand meniul “Service->Calib->Rev.Counter Update” (figura 3.5)

Fig. 3.5 Fereastra “Service”

Din această fereastra vom alege fiecare axă folosind butonul “All” și vom actualiza contorul de rotație pentru fiecare axă. (figura 3.6)

Fig. 3.6 Controlul de rotație

Pasul următor este de a se introduce valorile coordonatelor pentru stabilirea sistemului de referință. Acestea se introduc cu ajutorul consolei de instruire astfel: “System parameters-Topics – Manipulator – irb” (figurile 3.7, 3.8, 3.9)

Fig. 3.7 Fereastra principală

Fig. 3.8 Fereastra “System Parameters”

Fig. 3.9 Axele manipulatorului

În cadrul ferestrei Motor Calibration se accesează cele 6 axe ale robotului și la opțiunea Compensarea Calibrării se introduc valorile date de producător (figura 3.10).

Fig. 3.10 Compensarea calibrării

Aceste valori sunt date de producător și se găsesc inscripționate în interiorul controlerului robotului (figurile 3.11, 3.12)

Fig. 3.11 Controlerul robotului

Fig. 3.12 Compensarea calibrării

III.2 Setările parametrilor pentru gripperul pneumatic

Pentru a putea utiliza gripperul pneumatic trebuie să introducem în memoria robotului o nouă unitate de comandă pentru semnalele de intrare-ieșire.

Unitatea DSQC 328 (figura 3.13) conține 16 semnale digitale de intrare, divizate în grupuri de câte 8, și 16 semnale digitale de ieșire divizate în două grupuri de câte 8. Aceasta unitate este alimentată cu 24 de volți.

Fig. 3.13 Unitatea DSQC 328[6]

Putem introduce unitatea de comandă în memoria robotului astfel: “System parameters->Topics->IO Signals->Units” (figurile 3.14, 3.15, 3.16, 3.17).

Fig. 3.14 Fereastra principală

Fig. 3.15 Fereastra “System parameters”

Fig. 3.16 Unitățile digitale de intrare-ieșire

Fig. 3.17 Unitățile digitale de intrare – ieșire

Am creat o unitate nouă, numită “vac”, tipul unității este “d328” și are adresa 10 (figura 3.18).

Fig. 3.18 Unitatea “vac” creată.

Următorul pas este să setam semnalui digital de ieșire pentru gripperul pneumatic astfel”System parameters->Topics->IO Signals->Units->Add”(figurile 3.19,3.20,3.21,3.22)

Fig. 3.19 Fereastra principală

Fig. 3.20 Fereastra “System parameters”.

Fig. 3.21 Fereastra semnalele utilizatorului

Fig. 3.22 Fereastra semnalele utilizatorului

Am creat un nou semnal digital de ieșire pe care l-am conectat la unitatea “vac”, care a fost creata anterior (figura 3.23).

Fig. 3.23 Fereastra “semnalul d1”.

Din fereastra “Inputs/Outputs” putem modifica manual semnalele create în semnale logice “0” sau “1” (figura 3.24).

Fig. 3.24 Managementul intrărilor și ieșirilor digitale

După ce am terminat de realizat setările de calibrare și parametrii gripperului pneumatic, trebuie să salvăm acești parametrii în memoria internă a robotului. Pentru a face acest lucru trebuie să accesăm meniul “Misceellaneous – File – Save All as…” (figurile 3.25, 3.26).

Fig 3.25 Ferastra “salvare parametri”.

Fig. 3.26 Dosarul “Backup”.

Am numit acești parametri “Sysparbackup”, salvându-i în subdirectorul “Backup” (figura 3.27).

Fig. 3.27 Dosarul “Sysparbackup”.

III.3 Utilizarea joystick-ului pentru mișcarea robotului

Mișcarea articulațiilor robotului se poate realiza cu ajutorul joystick-ului amplasat pe consola de instruire. În cazul general, joystick-ul este un dispozitiv specializat, folosit pentru a mișca în pozițiile dorite articulațiile unui robot. Joystick-ul existent pe consola ABB conține 3 grade de libertate, ceea ce înseamnă că se pot comanda simultan maxim 3 mișcări diferite ale robotului prin intermediul său. Viteza mișcării este direct proporțională cu deflexia joystick-ului, o deflexie mare a joystick-ului față de poziția sa de repaus însemnând și o viteză mai mare a mișcării comandate.

Joystick-ul poate fi folosit indiferent de fereastra care este deschisă în acel moment pe ecranul consolei. Chiar dacă la un moment dat una din articulațiile robotului este în afara domeniului său activ (intervalul de operare predefinit), aceasta se poate aduce înapoi în domeniul activ cu ajutorul joystick-ului. Totuși, din motive evidente, nu se poate mișca robotul cu ajutorul joystick-ului în următoarele situații:

Când robotul este în modul automat.

Când un program este în curs de execuție.

Funcțiile joystick-ului pot fi vizualizate și schimbate după dorința utilizatorului în fereastra “Jogging”(figura 3.29). După realizarea selecției dorite, robotul se va mișca imediat ce este manevrat joystick-ul. Pentru aceasta trebuie luate măsuri de precauție asupra setărilor parametrilor de mișcare (limita de viteză) precum și referitoare la elementele prezente în spațiul de operare al robotului.

Deplasarea liniara a robotului se poate face astfel:

Se verifică faptul că selectorul modului de operare de pe panoul operator este trecut în regimul manual.

Folosind tastele consolei de instruire, se selectează robotul ca unitate de mișcare și respectiv mișcarea liniară ca tip de mișcare pentru robot.

Fig. 3.28 Tastele consolei folosite pentru selecția tipului de mișcare

Se reamintește faptul că:

Cu ajutorul tastei “Motion unit” se poate alege între operarea robotului și operarea unei alte axe externe de mișcare. În ambele cazuri joystick-ul va fi folosit ca dispozitiv pentru comanda mișcărilor.

Cu ajutorul tastei “Motion type” se poate selecta modalitatea dorită de mișcare a robotului sub comanda manuală a operatorului exercitată pe joystick. De aici se poate selecta:

Mișcare liniară

Mișcare de reorientare a efectorului robot

Mișcare la nivel de articulație. Avem două grupuri de articulații: grupul 1 (format din articulațiile 1, 2 și 3) și grupul 2 (format din articulațiile 4, 5 și 6).

Se apasă butonul de validare al mișcării de pe consolă și se menține constant în această poziție, astfel încât să se obțină activarea acționărilor robotului

Fig. 3.29 Ferastra “Jogging”.

II.4 Construirea programului robot cu ajutorul consolei de instruire

II.4.1 Instrucțiuni de poziționare

O instrucțiune de poziționare este definită prin următoarele argumente, fiecare definind o caracteristică de mișcare a robotului:

tipul traiectoriei (liniară, circulară, arbitrară);

poziția și orientarea țintă;

viteza în timpul deplasării;

tipul (zona) de poziționare, dat sub forma distanței la care se va apropia efectorul de poziția țintă, înainte de a începe deplasarea către următoarea poziție programată;

efectorul (unealta) folosit în operația curentă.

În programul nostru instrucțiunile de poziționare vor fi prezentate astfel:

“MoveAbs *, v100, z50, tool10”

“MoveL *, v100, z50, tool10”

Fiecare dintre ele având urmatoarele semnificații:

MoveAbs – deplasare la o poziție țintă definită în spațiul coordonatelor generalizate

MoveL – deplasare liniară

* – punctul țintă

v100 – viteza deplasării este 100 mm/s

z50 – distanța față de punctul țintă , până la care se realizează deplasarea este de 20mm

tool1 – efectorul utilizat în deplasare este tool1(unealta vacuum)

Pentru programarea robotului să efectueze o deplasare se vor parcurge următorii pași:

Se va poziționa robotul în poziția țintă prin deplasarea joystick-ului în modul de operare manual

Se selectează o instrucțiune din lista de instrucțiuni: meniul “Program -Edit:Show IPL – IPL1: Motion&Process.”

Se alege instrucțiunea dorită prin apăsarea tastei numerice corespunzătoare. Instrucțiunea va fi inclusă direct în program, și argumentele ei vor fi setate automat. Dacă argumentele introduse în mod implicit în instrucțiunea selectată satisfac cerințele utilizatorului, instrucțiunea este gata pentru a fi lansată în execuție.

II.4.2 Setarea/Resetarea unui semnal de ieșire

O instrucțiune de adresare a unui semnal de ieșire digital este definită prin următoarele argumente:

semnalul digital adresat;

nivelul pentru starea activă a semnalului digital (low sau high);

În programul nostru instrucțiunile de poziționare vor arata astfel:

“Set d1” – Semnalul d1 corespunzător vacuum-ului este setat pe 1 logic

“Reset d1” – Semnalul d1 corespunzător vacuum-ului de asemenea , este setat pe 0 logic

Programarea presupune parcurgerea următorilor pași:

Se selectează o instrucțiune din lista de instrucțiuni: meniul “Program -Edit:Show IPL – IPL1: IO.”

Se alege instrucțiunea dorită prin apăsarea taste numerice corespunzătoare;

Instrucțiunea va fi inclusă direct în program. Argumentul selectat va fi marcat cu caracterul “?”. Porțiunea din subsolul liniei duble conține toate semnalele digitale de ieșire disponibile.

Precizarea semnalului și a nivelului cu care va fi setat se face în modul următor:

Se va selecta argumentul ce urmează a fi modificat.

Se va selecta semnalul dorit;

Se va apăsa butonul “OK” pentru confirmare.

II.4.3 Instrucțiunea de temporizare

Execuția unei instrucțiuni de așteptare are ca efect suspendarea temporară a execuției unui program. Perioada în care execuția este suspendată poate fi dictată de un semnal digital de intrare sau poate fi precizată explicit în instrucțiune.

În programul nostru instrucțiunile de temporizare vor arată astfel:

“WaitTime\InPos, 0.05”

Acestea având urmatoarea semnificație :

WaitTime\InPos – instrucțiunea de temporizare în poziție

0.05 – valoarea temporizării (în cazul nostru 0.05 secunde)

Programarea presupune parcurgerea următorilor pași:

Se selectează o instrucțiune din lista de instrucțiuni: meniul “Program -Edit:Show IPL – IPL1: Common.”

Se va selecta instrucțiunea “WaitTime” , dupa care “InPos” pentru a programa robotul să astepte in poziția curentă , pentru perioada selectată , următoarea instrucțiune.

Folosind tastele numerice, se va introduce temporizarea;

Se apasă butonul “OK” pentru confirmare

Fig. 3.30 Ferastra “Program”

Imagini din timpul simulari :

Fig. 3.31 Robotul așezând prima piesa pe machetă

Fig. 3.32 Robotul ridicând cea de-a III-a piesa din cutie

Fig. 3.33 Așezarea ultimei piese pe machetă

Fig. 3.33 Revenirea robotului în “Home Position”

Concluzii

Deși a fost construit în anul 2000 , robotul indistrial de tip ABB IRB 140 , avand o vechime de aproape 15 ani , chiar si in ziua de astazi este folosit in anumite

Similar Posts