You are on page 1of 68

UNIVERZITET U TUZLI

MAŠINSKI FAKULTET
MEHATRONIKA

ZAVRŠNI RAD
prvog ciklusa studija

Robotska ćelija za detekciju i sortiranje objekata

Mentor: Student:
Dr.sc. Elvedin Trakić, docent Edin Muhedinović

Tuzla, septembar 2017. godine


UNIVERZITET U TUZLI
MAŠINSKI FAKULTET
MEHATRONIKA

ZAVRŠNI RAD
prvog ciklusa studija

Robotska ćelija za detekciju i sortiranje objekata

Mentor: Student:
Dr.sc. Elvedin Trakić, docent Edin Muhedinović

Tuzla, septembar 2017. godine


SAŽETAK

Razvoj sistema robotskih ćelija započeo je paralelno sa razvojem tehničke grane robotike. Do danas su
se početni koncepti upravljanja takvim sistemima značajno izmjenili te i dalje teže sve većem stepenu
autonomnosti i inteligencije.U ovom radu, temeljem iste ideje, izrađena je robotska ćelija za detekciju
i sortiranje objekata koja se sastoji iz dozatora, obrtnog stola i robotske ruke . Za potrebe upravljanja
robotske ruke razvijena je programska podrška u Arduino IDE, a za detekciju objekata, razvijena je
programska podrška u LabView programskom jeziku primjenom USB kamere koja se nalazi u sklopu
dozatora. Širok spektar mogućnosti ovog sistema primjenom navedenih elemenata predstavlja odličnu
platformu za ostvarivanje sličnih zadataka uz mogućnost proširenja i daljnjeg unapređivanja sistema
dodavanjem novih elemenata.

Ključne riječi: robotika, automatsko upravljanje, robotska ruka, Arduino, LabView


SUMMARY

Development of robotic cells has started simultaneously with beginning of robotic system
development. Initial concepts for controlling such systems were significantly changed until now and
they aim to have even higher degree of autonomy and intelligence.In this paper, based on the same
idea, robotic cell for detection and sorting objects is made which consists of a dispenser, a rotary table
and a robotic arm. This program is developed in Arduino IDE language and it's used for control
purposes of a robotic arm, and for the detection of objects, software support was developed in the
LabView programming language using a USB camera located within the dispenser.A wide range of
possibilities of this system with using all mentioned elements represent excellent platform for
realization more similar tasks and possibility for future system upgrade and further improvement.

Key words: robotics, automatic control, industrial robotic arm, Arduino, Labview
Sadržaj

1. Uvod .......................................................................................................................................... 4
2. Historijski razvoj robota ............................................................................................................. 5
3. Definicije robota......................................................................................................................... 9
4. Podjela robota........................................................................................................................... 10
4.1 Vrste pogona................................................................... Error! Bookmark not defined.
4.2 Geometrija radnog prostora ............................................ Error! Bookmark not defined.
4.2.1 Horizontalna pregibna ruka ............................................ Error! Bookmark not defined.
4.3 Načini upravljanja kretanjem ......................................................................................... 14
5. Industrijski robot ...................................................................................................................... 15
5.1 Područja primjene robota ................................................................................................... 17
5.1.1 Robotska ćelija za prijenos materijala i opsluživanje mašinaError! Bookmark not defined.
5.1.2 Robotske ćelije za procesne operacije.......................................................................... 21
5.1.3 Robotske ćelije za poslove montaže ........................................................................... 23
5.1.4 Robotske ćelije na poslovima kontrole proizvoda ...................................................... 24
6. Digitalna akvizicija i obrada slike u robotici ........................................................................... 25
6.1 Boja u kompjuterskoj viziji ............................................ Error! Bookmark not defined.
6.2 HSL prostor boja ............................................................ Error! Bookmark not defined.
7. Pogled na Labview ................................................................... Error! Bookmark not defined.
7.1 Osnovni koncepti Labview-a.......................................................................................... 31
7.2 Mogućnosti Labview-a .................................................. Error! Bookmark not defined.
7.3 Prednosti Labview-a...................................................... Error! Bookmark not defined.
8. Osnovne komponente sistema.................................................................. Error! Bookmark not defined.
8.1 USB video kamera .................................................................. Error! Bookmark not defined.
8.2 RC servo motor ....................................................................... Error! Bookmark not defined.
8.2.1. Konstrukcija RC servo motora ................................ Error! Bookmark not defined.
8.3 Arduino ................................................................................... Error! Bookmark not defined.
8.4 LED diode................................................................................ Error! Bookmark not defined.
8.4.1 Pojam diode .......................................................................... Error! Bookmark not defined.
8.4.2 Karakteristike LED dioda ................................................................................................... 40
8.4.3 Oblici i veličine dioda ........................................................................................................ 41
9. Izrada praktičnog modela ...................................................................................................................... 42
9.1 Detekcija boje primjenom USB video kamere ..................................................................... 42
9.2 Serijska komunikacija .......................................................................................................... 43
9.3 Gravitacioni dozator sa rotacionim mehanizmom za izbacivanje komadaError! Bookmark not
defined.
9.4 Rotacioni sto ............................................................................................................. 46
9.5 Robotski manipulator .......................................................................................................... 47
9.5.1 Programiranje putanje robotskog manipulatora postupkom vođenja ............................. 48
9.6 Elektronika šema ................................................................. Error! Bookmark not defined.
10. Zaključak .......................................................................................................................................... 51
LITERATURA ............................................................................................................................................ 52
Prilog ........................................................................................................................................ 53
Popis slika

Slika 2.1. Ctesibisiuov sat..............................................................................................................................5


Slika 2.2. Leonardov robot izrađen prema pronađenim nacrtima ...............................................................5
Slika 2.3. Vaucansonova patka.....................................................................................................................6
Slika 2.4. Unimate,prvi industrijski robot ....................................................................................................7
Slika 2.5. Industrijski robot ABB 7600 .........................................................................................................7
Slika 4.1. Air Muscle-pneumatski mišić .....................................................................................................10
Slika 4.2. Radni prostor industrijskog robota ABB IRB 1600 ....................................................................11
Slika 4.3. Rotacijski i translacijski zglob....................................................................................................11
Slika 4.4. Pravougana konfiguracija robota ..............................................................................................12
Slika 4.5. Cilindrična konfiguracija robota ...............................................................................................12
Slika 4.6. Sferna konfiguracija robota .......................................................................................................13
Slika 4.7.Rotacijska konfiguracija robota.....................................................................................13
Slika 4.8. Robot tipa SCARA ......................................................................................................................14
Slika 5.1. Industrijski robot ........................................................................................................................15
Slika 5.2 Funkcionalna blok šema industrijskog robota ...........................................................................16
Slika 5.3. Robot za zavarivanje KUKA .......................................................................................................17
Slika 5.4. Prikaz fleksibilne proizvodne robotske ćelije .............................................................................18
Slika 5.5. Prikaz fleksibilne proizvodnog sistema ......................................................................................18
Slika 5.6 Utimanje iz paleta pokretnoj traci ................................................. Error! Bookmark not defined.
Slika 5.7 Primjer robotskog sistema za opsluživanje alatnog stroja ............ Error! Bookmark not defined.
Slika 5.8. Tačkasto zavarivanje robotima .................................................... Error! Bookmark not defined.
Slika 5.9. Faze zavarivanja .......................................................................... Error! Bookmark not defined.
Slika 5.10. Robotski sistem za montažu ........................................................ Error! Bookmark not defined.
Slika 5.11 Trikoordinatni mijerni sistem za kontrolu dimenzija................... Error! Bookmark not defined.
Slika 6.1. Blok dijagram tipične aplikacije kompjuterske vizije ................... Error! Bookmark not defined.
Slika 6.2. Razlaganje svijetlosti na optičkoj prizmi ..................................... Error! Bookmark not defined.
Slika 6.3. Vidljivi spektar svijetlosti ............................................................. Error! Bookmark not defined.
Slika 6.4. Primjer bajerovog obrasca na senzoru kamere ........................... Error! Bookmark not defined.
Slika 6.5. RGB prostor boja ......................................................................... Error! Bookmark not defined.
Slika 6.6. HSL prostor boja .......................................................................... Error! Bookmark not defined.
Slika 6.7. HSL prostor boja podijeljen na sektore i binove .......................... Error! Bookmark not defined.
Slika 6.8. Veza između prostora nijanse i niza spektra boja .....................................................................29
Slika 6.9 Spektar boja povezan sa slikom .................................................... Error! Bookmark not defined.
Slika 7.1. Izgled front panela........................................................................ Error! Bookmark not defined.
Slika 7.2. Izgled block dijagrama ................................................................. Error! Bookmark not defined.
Slika 8.1. Shematski prikaz dijelova digitalne kamere ................................. Error! Bookmark not defined.
Slika 8.2. USB video kamera ......................................................................................................................35
Slika 8.3. RC servo motor ...........................................................................................................................36
Slika 8.4 Smijer rotacije RC servo motora u zavisnosti od širine impulsa upravljačkog signala ....... Error!
Bookmark not defined.
Slika 8.5. Šematski prikaz strukture RC servo motora ................................ Error! Bookmark not defined.
Slika 8.6. Zvanična Arduino Duemilanove ploča .......................................................................................37
Slika 8.7. Šema poluprovodničke diode ......................................................................................................39
Slika 8.8. Simbol LED diode.......................................................................................................................40
Slika 8.9. Opšti izgled svijetleće diode .......................................................................................................40
Slika 9.1. Prikaz gotovog modela ................................................................................................................42
Slika 9.2. Labview detekcija objekta ..........................................................................................................43
Slika 9.3. Serijska komunikacija u Labview-u ............................................................................................44
Slika 9.4. Gravitacioni dozator ..................................................................................................................45
Slika 9.5. Rotacioni sto ...............................................................................................................................46
Slika 9.6. Izgled robotskog manipulatora ćelije ........................................... Error! Bookmark not defined.
Slika 9.7. Određivanje pozicije manipulatora primjenom Labview softvera Error! Bookmark not defined.
Slika 9.8. Način vođenja robota .................................................................................................................49
Slika 9.9. Elektronička šema spajanja .......................................................... Error! Bookmark not defined.
Edin Muhedinović Završni rad

1. UVOD
Vidni sistem čovjeka sastoji se od oka, očnog živca i mozga. Oko služi za primanje slike, a očni
živac za prijenos slike do mozga u kojem se vrši obrada slike. Računalni vid je pokušaj oponašanja
ljudskog vidnog sistema s ciljem davanja vida računalu. Računalni vid obuhvaća procedure i
metode za primanje, procesiranje, analiziranje i prevođenje slika iz stvarnog svijeta u računalu
prihvatljive matematičke ili simboličke informacije iz kojih računalo može, na temelju
programiranog algoritma, odlučiti koju će programiranu radnju izvršiti.

Glavni razlog uvođenja vizijskih sistema u industriju je taj da ljudi ne mogu osigurati potrebnu
ponovljivost pri obavljanju monotonih poslova čime narušavaju krajnju kvalitetu proizvoda.
Pravilno projektiran robotski sistem koji informacije prima s vizijskog sistema može obavljati
monotone poslove bez ikakve pogreške. Drugi razlog uvođenja je humanizacija rada.
Humanizacija rada zahtijeva da se ljudska ili životinjska radna snaga zamijeni mašinama, kod svih
poslova koji mogu dovesti dovesti u direktnu vezu s narušavanjem zdravlja.

Kako bi čovjeka izbacili iz procesa detekcije i sortiranja objekata. u ovom projektu razvijena je
robotska ćelija koja obezbjeđuje tačnost i brzinu rada. Ovaj projekat uključuje USB kameru koja
otkriva boju objekta a zatim šalje informaciju Arduino UNO-u koji se nalaze pored robotske ruke.
Robotska ruka ima zadatak prihvata objekta sa obrtnog stola a zatim u zavisnosti od boje, vršit će
se sekvence paljenja servo motora robotske ruke a sve u cilju sortiranja objekata na pojedino
mjesto. Poslije svakog sortiranja,robotska ruka,obrtni stol kao i dozator vraćaju se u nulti položaj.
Ova robotska ćelija razvijena je u svrhu da se prikaže kako primjena robota nastoji minimizirati
troškove, optimizirati produktivnost i smanjiti ljudske greške.

4
Edin Muhedinović Završni rad

2. Historijski razvoj robota

Za početke razvoja robota ili njemu sličnih automatiziranih sistema potrebno je vratiti se u antičku
Grčku. U njihovim mitovima spominjalo se kako je bog Hefest stvorio mehaničke djeve od zlata sa
darom govora,a i navodi se tvrdnja da je oko 400 godine p.n.e. grčki filozof Arhitas od Tarentuma
izgradio mehaničkog goluba, vjerojatno pogonjeno parom koji je mogao letjeti. Među početke
robotike ubrajaju se i vodeni satovi, čiji je najpoznatiji predstavnik Ctesibiusov vodeni sat.

Slika 2.1. Ctesibiusov vodeni sat

Interesa za automate skoro nije ni bilo u srednjevjekovnoj Europi ili nisu zabilježeni. Leonardo Da
Vinci je 1495. godine dizajnirao čovjekolikog automata u viteškom oklopu za potrebe zabave, ali
ne zna se da li je dizajn ikada izrađen.

Slika 2.2. Leonardov robot izrađen prema pronađenim nacrtima

U periodu između 1500. - 1800. godine izrađeni su mnogi automati, uključujući one sposobne da
glume, crtaju, lete i sviraju muziku. U to vrijeme izrađena je i nekolicina mehaničkih računara, a
svojevrsni vrhunac u tom periodu predstavlja "Probavljajuća patka" Jacquesa de Vaucansona.
Vaucansonova patka mogla je oponašati pravu patku mašući krilima, jedući zrnje, probavljajući ga i
izbacujući ga iz sistema. Patka se pokretala pomoću utega.

5
Edin Muhedinović Završni rad

Slika 2.3. Vaucansonova patka

Početkom Prve industrijske revolucije ideja automatiziranog sistema počela se primjenjivati i u


industriji kao način smanjenja troškova vremena i novca. Poboljšanja u tkalačkoj industriji dovela su
do velikog broja automatizacije i ideja programibilnih strojeva postala je popularna sa "Analitičkim
strojem" Charlesa Babbagea. Taj veliki i kompleksni uređaj mogao je izvršavati višestruke operacije, a
njime se upravljalo pomoću bušenih kartica.
Riječ "robot" prvi put susrećemo u 20. stoljeću u drami "R.U.R" (Rossumovi univerzalni roboti)
češkog književnika K. Čapeka u kojoj je pomoću nje opisao sljedeću mašinu: "Mašina vješta u radu,a
ponaša se slično čovjeku te ponekad ispunjava funkcije čovjeka." Nije slučajno da je drugi pisac
znanstvene fantastike,Isaac Asimov 1939. godine prihvatio taj pojam i dalje ga popularizirao u svojim
pripovijestima,a i tvorac je izraza "robotika".
Nakon 1950. godine, količina i kompleksnost kompjutera i robota se počela naglo povećavati
zahvaljujući poboljšanju tehnologije potrebne za njihovu proizvodnju. Tako možemo reći da su
savremeni roboti nastali 50-tih godina prošlog stoljeća u SAD, a potječu od pronalazaka teleoperatora,
s jedne strane, te numerički upravljanih alatnih mašina, s druge strane. Teleoperateri su razvijeni za
vrijeme Drugog svjetskog rata radi potrebe daljinskog rukovanja nuklearnim sirovinama, a numerički
upravljane alatne mašine pojavili su se nakon rata kao rješenje problema izrade složenih avionskih
dijelova.
Kombinirajući te dvije različite tehnike, Amerikanac G. Devol je 1954. godine patentirao uređaj koji
bi se mogao smatrati pretečom današnjeg industrijskog robota. U suradnji sa J. Engelbergerom izradio
je 1958. godine i prvi robot, Unimate. To su ujedno i počeci prve i dugo vremena vodeće tvornice
robota u svijetu, Unimation Inc.

6
Edin Muhedinović Završni rad

Slika 2.4. Unimate, prvi industrijski robot

Prvi roboti napravljeni su u Fordovoj tvrtci radi povećanja učinkovitosti proizvodnje automobilskih
dijelova. To su bili numeričke vođene mašine za obradu kovina, u početku programirani pomoću
bušenih kartica, a poslije elektroničkim računalom. Visoku proizvodnost u tako automatiziranoj
programiranoj proizvodnji kočio je prijenos dijelova koji se do tada ručno obavljao.

Engelbergerovi roboti nisu pobudili preveliko zanimanje u njegovoj državi, ali srećom je naišao na
vrlo dobar prijem u Japanu, gdje je 1970. u funkciju ušao prvi industrijski robot koji je radio kao
zavarivač u Nissanovoj tvornici.

Industrijski se robot od svojih roditelja razlikuje po tome što je, suprotno manipulatoru programski
upravljan, a za razliku od NC – alatne mašine, ima mogućnost hvatanja. Ustvari, industrijski je robot
utemeljen na poznatim znanstvenim i tehničkim disciplinama: kretanju mehanizama, energetskim
pogonima, kompjuterskom upravljanju, senzorici. Tek kad su ta područja dosegla određeni stepen
razvoja, mogao se pojaviti industrijski robot u sadašnjem obliku. Slično je bilo i s digitalnim
računalima: tek s pronalaskom tranzistora i mikroprocesorskih čipova računala su dobila i današnje
značenje.

Slika 2.5. Industrijski robot ABB 7600

7
Edin Muhedinović Završni rad

Zemlja koja se najviše koristi robotikom je Japan čiji znanstvenici i danas predvode u razvoju moćnih
robotskih sistema. Ekonomski moćna društva su, nakon brzog rasta računarstva uložila velika sredstva
u razvoj robotike kao tehnologije za budućnost. Zanimljivo je da je od 1972. do 2002. broj robota u
svijetu porastao s hiljadu na oko milijun ili 1000 puta u 30 godina.

Kao još jednu zanimljivost treba istaknuti da se roboti najčešće koriste u automobilskoj industriji, gdje
obavljaju veliki dio posla u sastavljanju automobila. Kao potporu toj tvrdnji stoji podatak da se oko
70% robota u SAD-u koristi upravo u automobilskoj industriji. Potpora navedenim tvrdnjama jest i
podatak da su u Sjevernoj Americi 2003. godine domaći proizvođači robotske tehnologije udruženi u
RIA-u (Robotic Industries Association) zaprimili 19 % više narudžbi nego 2002. godine. Cijela
vrijednost poslova za naše prilike iznosi vrtoglavih 876,5 milijuna USD, dok je ukupan broj jedinica
12 367. Zanimljiv je i podatak da je vrijednost narudžbi iz ostatka svijeta samo 26,5 milijuna USD.
Navedeni podaci potkrepljuju tvrdnje o važnosti američkog tržišta koje je drugo u svijetu (odmah iza
japanskog).

Iako u društvu prevladava mišljenje da su roboti čovjekoliki strojevi, to nije tačno. Oblik robota
prilagođava se zadacima koje bi trebao obavljati, ali i estetici. Većina današnjih
robota su specijalizirani strojevi u tvornicama, ali koriste se i u drugim djelatnostima (istraživanja,
medicina, vojska, itd.).

Treba napomenuti da izraz robot ne obuhvaća sljedeće uređaje: manipulatore s daljinskim


upravljanjem, umjetne bioničke udove ili proteze, iako se uvelike koriste istom tehnologijom kao i
roboti, ali zapravo njima upravljaju ljudi, a ne računala.

8
Edin Muhedinović Završni rad

3. Definicije robota

Postoji mnogo različitih definicija robota, ovisno o mjestu i načinu primjene. U Sjedinjenim
Američkim Državama robot se najčešće definira kao automat prilagođen složenoj okolini koji obavlja
ili dopunjava jednu radnju ili više radnji čovjeka, dok se u Japanu pod robotom podrazumijeva
automat s promjenjivim programom koji se koristi za automatizaciju ručnih operacija.
Robot se u općem slučaju može definirati kao tehnički uređaj sa svrhom obavljanja nekih kretanja i
funkcija koje obavlja čovjek, pri čemu se odlikuje određenom samostalnošću, tj. autonomnošću u
radu. U tom smislu može se koristiti i ova, donekle konkretnija definicija robota: Robot je programski
upravljan mehanički uređaj koji se koristi senzorima za vođenje jednog završnog mehanizma ili više
njih po unaprijed određenoj putanji u radnoj okolini s ciljem manipuliranja fizičkim objektima.
Manipulator (lat. manipulus – šaka; lat. manus – ruka) najčešće je stroj za obavljanje pomoćnih
operacija, koje se odnose na promjenu položaja materijala pri obradi i montaži. U automatiziranim
proizvodnim sistemima pod manipulatorom se podrazumijeva industrijski robot.

Robotika je znanstveno - tehnička disciplina, čiji je cilj izrada i unapređivanje robota,


automatiziranih mašina kojima upravljaju elektronička računala, pomoću upravljačkog programa i
informacija primljenih preko elektroničkih osjetila - senzora.

Rezultati istraživanja rezultiraju robotima koji su mehanički sve savršeniji i imaju sisteme
upravljanja koji uključuju sve više umjetnih čula i elemenata umjetne inteligencije.

Čak i kad su roboti bili relativno primitivni, njihova je uloga bila ključna u podizanju produktivnosti
i konkurencije zapadnih zemalja za osvajanje globalnog tržišta. Danas se u svijetu koristi preko
1.000.000 različitih robota. Razvija se nova generacija pametnih i autonomnih robota, koji mogu
planirati vlastite akcije, opažati i analizirati okolinu i djelovati, na visokom nivou, uz minimalano
učešće čovjeka. Na stotine instituta robotike proučavaju specifična područja koja produbljuju znanja o
ovom relativno novom području znanosti.

Roboti se primjenjuju i u prostorima koji su krajnje negostoljubivi prema čovjeku. Tako su u nizu
svemirskih istraživanja sudjelovala robotizirana vozila koja uzimaju uzorke tla ili obavljaju razna
ispitivanja. Slično je i s podmorskim istraživanjima, u kojima se na dno okeana šalju podmornice s
robotiziranim rukama koja prikupljaju uzorke tla ili izvršavaju određene radne operacije.

9
Edin Muhedinović Završni rad

4. Podjela robota

Manipulatori se mogu podijeliti s obzirom na vrstu pogona, geometriju radnog prostora i načine
upravljanja kretanjem.

4.1. Vrste pogona

Za pogon većine današnjih robotskih manipulatora koriste se električni motori – istosmjerni,


izmjenični i koračni, jer su relativno jeftini, s velikom brzinom i tačnosti i u njih je moguća primjena
složenih algoritama upravljanja.
Kod specifičnih primjena (npr. rukovanje užarenim čelikom ili sastavljanje dijelova automobila), kada
se zahtijeva manipulacija velikim teretima češće se koriste roboti s hidrauličkim pogonima. Takvi
pogoni imaju zadovoljavajuću brzinu rada, a zbog nestlačivosti ulja moguće je mirno održavanje
položaja. Glavni nedostatci tih motora njihove su visoke cijene i onečišćavanje okoline zbog buke i
mogućeg istjecanja ulja.
Treća vrsta pogona jesu pneumatski pogoni koji imaju relativno nisku cijenu i veliku brzinu rada,a ne
onečišćuju okolinu pa su pogodni za laboratorijski rad. Takvi pogoni nisu pogodni za rad s velikim
teretima, jer je zbog stlačivosti zraka nemoguće mirno održavati željeni položaj. Uz to su bučni, a
potrebno je i dodatno filtriranje i sušenje zraka zbog nepoželjne prašine i vlage.
Ako se zahtijeva samo otvaranje i zatvaranje prihvatnice, tada se u završnom mehanizmu koristi
pneumatski motor da se grubim stiskom ne bi oštetio lomljiv predmet. U najnovije vrijeme javljaju se
rješenja koja se koriste pneumatskim pogonima za realizaciju pneumatskih mišića pogodnih za
operacije savijanja.

Slika 4.1. Air Muscle – pneumatski mišić

10
Edin Muhedinović Završni rad

4.2. Geometrija radnog prostora

Radni prostor robota je skup tačaka u trodimenzionalnom prostoru koje se mogu dohvatiti ručnim
zglobom robota na koji je pričvršćen završni mehanizam. Veličina radnog prostora robota ovisi o
broju i tipu zglobova robota, dužinama članaka te o postojećim fizičkim ograničenjima, koja su
neposredno povezana s konkretnom građom i izgledom robota. Na slici 4.2. prikazan je primjer radnog
prostora industrijskog robota ABB IRB 1600.

Slika 4.2. Radni prostor industrijskog robota ABB IRB 1600

Osi prvih triju zglobova robota određuju položaj ručnog zgloba, a osi preostalih triju zglobova
utvrđuju orijentaciju alata. Tako tipovi zglobova upotrijebljenih za prve tri osi određuju geometriju
radnog prostora robota. Kod industrijskih robota koriste se dva osnovna tipa zglobova: rotacijski i
translacijski. Rotacijski zglob rotira oko osi, a translacijski se linijski kreće po osi.

Slika 4.3. Rotacijski i translacijski zglob

Različitim kombinacijama rotacijskih (R) i translacijskih (T) zglobova za prve 3 osi određene su ove
konfiguracije robota:
a) pravougaona (TTT),
b) cilindrična (RTT),
c) sferna (RRT),

11
Edin Muhedinović Završni rad

d) rotacijska (RRR),
e) robot tipa SCARA (engl. selective compliance assemly robot arm) – RTR, TRR ili RRT
građe.
Radni prostor robota s pravougaonom konfiguracijom je prizma. Kod tih robota postoji neposredna
veza između varijabli zglobova i prostornih koordinata alata.

Slika 4.4. Pravougaona konfiguracija robota

Ako se prvi zglob kod pravougaone konfiguracije robota zamijeni rotacijskim zglobom, dobiva se
robot cilindrične konfiguracije. Radni prostor takvog robota zbog ograničenog translacijskog kretanja
jednak je zapremini između dvaju vertikalnih koncentričnih plaštova valjaka.

Slika 4.5. Cilindrična konfiguracija robota

Ako se drugi zglob cilindrične konfiguracije robota zamijeni rotacijskim zglobom, dobiva se robot
sferne konfiguracije. Ako postoji ograničenje translacijskog kretanja, radni je prostor tog tipa robota
zapremina između dvije koncentričnih sfera, a uz ograničenje svih kretanja radni je prostor dio

12
Edin Muhedinović Završni rad

zapremine između dviju koncentričnih sfera. RRT – struktura ima veliku fleksibilnost u pristupu
određenoj lokaciji, a srednje je nosivosti. Robot takve strukture primjenjuje se za tačkasto zavarivanje
i za opsluživanje.

Slika 4.6. Sferna konfiguracija robota

Uza sva tri rotacijska zgloba, robot ima rotacijsku konfiguraciju, koja se još naziva laktasta,
antropomorfna ili zglobna. Ako ne postoji ograničenja rotacijskih kretanja, tada je radni prostor tog
robota kugla, a uz ograničenja to je dio kugle složenog oblika čiji je presjek sa strane najčešće u obliku
polumjeseca. Kako pogoni ne opterećuju podnožje, robot te strukture može se montirati u raznim
položajima. Ima manju nosivost, a primjenjuje se za zavarivanje, bojenje i motažu.

Slika 4.7. Rotacijska konfiguracija robota

4.2.1. Horizontalna pregibna ruka

Takvu strukturu ima robot na slici 13. Razvijen je 1981. godine u Japanu, a na tržištu je poznat pod
nazivom SCARA (Selected Compliance Assembly Robot Arm). Razvoj računala omogućio je
programiranje složenih algoritama vođenja. On ima dva rotacijska i jedan translacijski zglob.

13
Edin Muhedinović Završni rad

Slika 4.8. Robot tipa SCARA

4.3. Načini upravljanja kretanjem

Postoje dva osnovna načina kretanja završnog mehanizma:


• kretanje od tačke do tačke,
• kontinuirano kretanje po putanji

Pri kretanju od tačke do tačke alat se kreće po ciljnim tačkama u radnom prostoru i pri tome nije bitna
putanja između tačaka, ali je važna točnost pozicioniranja. Takav način kretanja koristi se za diskretne
operacije kao što su tačkasto zavarivanje te podizanje i spuštanje predmeta.
Pri kontinuiranom kretanju po putanji završni mehanizam mora se kretati po unaprijed određenoj
putanji u trodimenzionalnom prostoru i pri tome su bitne trajektorija i tačnost pozicioniranja. Roboti
kod kojih se upravlja trajektorijom kretanja mogu se koristiti za bojenje, šavno zavarivanje ili
lijepljenje.

14
Edin Muhedinović Završni rad

5. Industrijski robot

Industrijski se robot od svojih roditelja razlikuje po tome što je, suprotno manipulatoru, programski
upravljan, a za razliku od numerički upravljanog stroja, ima mogućnost hvatanja. Ustvari, industrijski
je robot utemeljen na poznatim znanstvenim i tehničkim disciplinama:

• kretanje mehanizama
• energetski pogon
• kompjutersko upravljanje
• senzorika

Tek kad su ta područja dosegla određeni stepen, mogao se pojaviti industrijski robot u sadašnjem
obliku. Slično je bilo i s digitalnim računalima: tek s pronalaskom tranzistora i mikroprocesorskih
čipova računala su dobila i današnje značenje.

Industrijski se robot temelji na poznatim spoznajama, ipak se za njega može reći da je suma poznatih
znanja stvorila novu kvalitetu. A da je to doista nova kvaliteta, dokazuje dalekosežnost robotizacije:
industrijski roboti rješavaju osnovnu proturječnost savremene industrijske proizvodnje u kojoj su
osnovni obradni procesi i strojevi uvelike automatizirani, a za rukovanje i pokretanje predmeta nema
općih i dobrih rješenja.

Industrijski robot je službeno definiran prema ISO standardu kao automatski kontrolirani,
reprogramabilni, multifunkcionalni manipulator programabilan u tri ili više osi. Tipični poslovi koje
robot obavlja obuhvaćaju zavarivanje, bojanje, spajanje, premještanje, paletiziranje, kontrola i
testiranje a sve to obavlja sa visokom izdržljivošću, brzinom i tačnošću.

Slika 5.1. Industrijski robot

15
Edin Muhedinović Završni rad

Blok - shema industrijskog robota data je na slici 5.2. Vidljivo je da upravljački uređaj (najčešće
mikroračunalo) djeluje na pogone (motori, cilindri) koji pokreću mehanizam robota da bi njegova
prihvatnica (hvataljka, alatka ili senzor) došla u određeni položaj u odnosu prema objektu odnosno
okolini. Mjerenjem položaja i brzine vrha prihvatnice (sistem za mjerenje položaja), preko unutrašnje
povratne veze dobije se informacija kojom se može upravljati kretanje. Crtkano je prikazano kako se
preko vanjske povratne veze mogu dobiti informacije iz okoline (senzori), a sistem za raspoznavanje u
kombinaciji s moćnim računalom osigurava mnogo višu razinu informacija (umjetna inteligencija).

Slika 5.2. Funkcionalna blok – shema industrijskog robota

Najčešće korišteni oblici robota su artikulirani roboti, SCARA roboti i Kartezijski koordinatni roboti.
Roboti posjeduju razne oblike autonomije:
• neki roboti su programirani da vjerno izvršavaju zadane pomake ponovno i ponovno bez
varijacije i visokim stepenom preciznosti
• drugi roboti su mnogo fleksibilniji prema orijentaciji objekta na kojem vrše neku akciju te
posjeduju sisteme koji djeluju kao «oči» koje su povezane sa snažnim računalima i
kontrolerima. Ta vrsta umjetne inteligencije postaje važan čimbenik u modernoj robotici

Neki parametri koji određuju robota:

• broj osi – dvije osi potrebne su za dostići bilo koju tačku u ravnini; tri osi potrebne su za
dostići bilo koju tačku u prostoru. Za potpunu kontrolu kraja ruke potrebne su još tri osi.
• stepeni slobode – obično robot posjeduje isti broj stepeni slobode koliko ima i osi.
• radno područje – prostor koji robot može doseći.
• kinematika – položaj krutih članova i zglobova u robotu koji određuju kretanje robota.
• nosivost – masa koju robot može podići.
• brzina – koliko brzo može robot pozicionirati vrh ruke.
• ubrzanje – koliko brzo može ubrzati os. Ovo je limitirajući faktor i robot ne može dostići svoju
maksimalnu brzinu na maloj udaljenosti ili kompleksnoj putanji koristeći stalnu promjenu
smjera.
• tačnost – koliko tačno se može pozicionirati robot u odnosu na zadanu poziciju. Tačnost može
varirati s brzinom i pozicijom u sklopu ovisno o radnom području i opterećenju.

16
Edin Muhedinović Završni rad

Slika 5.3. Robot za zavarivanje KUKA

5.1. Područja primjene robota

Savremena se proizvodnja znatno automatizira. Osnovni su razlozi za to:


• zahtjevi za što djelotvornijom proizvodnjom što će rezultirati nižom cijenom proizvoda
• zadovoljavanje ujednačene kvalitete razine usklađene sa zahtjevima tržišta
• prilagodljivost proizvoda zahtjevima tržišta

Orijentacija na česte promjene proizvodnog programa uključuje bitne promjene u organizaciji


proizvodnje. Umjesto tzv. „čvrste automatizacije“ koju karakteriziraju visokoautomatizirane
proizvodne linije namijenjene velikoserijskoj proizvodnji određenog proizvoda, teži se takvim
proizvodnim sistemima koji bi i za male serije bili djelotvorni. To dovodi do pojma fleksibilne
automatizacije koja omogućuje proizvodnju različitih proizvoda, praktički bez mijenjanja proizvodne
opreme.U takvoj savremenoj proizvodnji istaknutu ulogi imaju računala i roboti.

Ovisno o proizvodnom programu, razvijeni su sustavi različite složenosti i opremljenosti:


• Fleksibilna proizvodna ćelija prikazana na slici 5.4. sastoji se od robota (3) i nekoliko alatnih
mašina instaliranih oko njega (1). Ćelija je opremljena lokalnim skladištima (4) i (6) u koja se
odlažu alati te djelomično obrađeni i/ili gotovi izratci. Često je opremljena transportnom
trakom (5) kojom se dovode – odvode proizvodi različitog stepena gotovosti. Savremene ćelije
opremljene su sistemom za kontrolu kvalitete proizvoda (2). Tako opremljenom sistemu
zadaća robota je opsluživanje alatnih stojeva različitim alatima i izratcima.

17
Edin Muhedinović Završni rad

Slika 5.4. Prikaz fleksibilne proizvodne robotske ćelije

• Fleksibilna proizvodna linija omogućuje istovremenu proizvodnju više različitih proizvoda. Ti


će se proizvodi, s pomoću linijskog automatiziranog transporta kretati od alatne mašine do
mašine ovisno o osobina izratka. Općenito će se fleksibilna proizvodna linija sastojati od
alatnih mašina, automatiziranog transporta i robota. Kako se često vremena za obrade
pojedinih elemenata znatno razlikuju, postavljaju se uz alatne mašine i privremena skladišta
izradaka.

• Fleksibilni proizvodni sistem može se opisati kao sistem sastavljen od više ćelija povezanih
automatiziranim transportnim sistemom. Kako često neku od zahtijevanih radnih operacija
može izvršiti više ćelija, posao će preuzeti ona koja je u određenom trenutku slobodna. Stoga
izradak putuje trakom dok ne dođe do ćelije koja će ga obrađivati. Preuzima ga robot i po
utvrđenom redoslijedu nosi ga u alatnu mašinu. Po završetku obrade u jednoj ćeliji izradak se
vraća na traku, odakle ide u drugu ćeliju ili kao gotov proizvod ide u sistem za kontrolu
kvalitete. Umjesto linijskim transporterom, promet izradaka moguć je i automatskim
pokretnim kolicima ili mobilnim robotom kao što je prikazano na slici 5.5.

Slika 5.5. Prikaz fleksibilnog proizvodnog sistema

Upravljanje sistemom zahtijeva središnje računalo koje omogućuje upravljanje podsistemima (ćelije,
transport, kontrola).Računalom integrirana proizvodnja sadržava spomenute sisteme dopunjene i

18
Edin Muhedinović Završni rad

sistemima za projektiranje, planiranje, uskladištenje. Ti sistemi omogućuju značajno skraćenje


ukupnog vremena potrebnog za razradu ideje novog proizvoda pa sve do upućivanja proizvoda na
tržište.
U svim spomenutim proizvodnim sistemima, neovisno o razini složenosti, robotske ćelije
imaju istaknutu ulogu. Ovisno o poslovima koje roboti trebaju obavljati, možemo ih razvrstati u
skupine:
- robotske ćelije za prijenos materijala i opsluživanje mašina
- robotske ćelije za obavljanje procesnih operacija
- robotske ćelije za poslove montaže
- robotske ćelije za poslove kontrole

5.1.1. Robotska ćelija za prijenos materijala i opsluživanje mašina

Prijenos materijala potreban je u svakom proizvodnom pogonu. Pod pojmom materijal podrazumijeva
se ili poluproizvod koji ulazi u pogon, ili djelomično obrađen izradak te konačno potpuno obrađen
proizvod koji izlazi iz pogona. Uvijek je potrebno prenositi materijal od mjesta izvršenja jedne radne
operacije do mjesta sljedeće radne operacije.

U operacijama prenošenja materijala najčešće preovladava niskokvalificirana radna snaga. Savremena


proizvodnja zahtijeva veću brzinu rada i ujednačen dotok materijala uz niske troškove. Stoga su
razvijene automatizirane linije koje uključuju transportere i robote. Ovisno o karakteristikama
predmeta na traci (oblik, masa, agregatno stanje, temperatura i sl.), robot će imati određene osobine. S
obzirom na poslove prenošenja predmeta s jednog mjesta na drugo morat će imati različite vrste
hvataljki. Ako mora hvatati različite predmete, morat će raspolagati sistemom za raspoznavanje.

Nosivost, preciznost i ostale karakterisitke moraju biti prilagođene zadatku.Često se elementi prenose
u većim količinama složeni u spremnike (palete).Takav transport čest je u mnogim, osobito procesnim
industrijama.

Upravljanje robotom za poslove premještanja kada se primjenjuje paletiranje složenije je nego kada
robot treba premještati pojedinačne predmete. Kako svaki predmet zauzima određeno mjesto na paleti,
potrebno je pamtiti sve položaje predmeta. No to je pamćenje olakšano pravilnim rasporedom
predmeta na paleti.

Opsluživanje mašina pripada u kategoriju poslova prenošenja materijala. Izradak se uzima najčešće sa
stola ili sa pokretne trake i postavlja na određeno mjesto obradnog stroja kao što je prikazano na slici
5.6.

19
Edin Muhedinović Završni rad

Slika 5.6. „Uzimanje“ iz palete na pokretnoj traci

Potreba za prenošenjem materijala javlja se u nekoliko tehnoloških procesa od kojih se, kao prikladni
za robotizaciju ističu:
• Lijevanje – Lijevanje metala i injekcijsko presanje polimera zahtijevaju od robota prilično
veliku brzinu, ali ne pretjeranu preciznost. Robotski sistem mora biti neosjetljiv na prašinu i
povišenu temperaturu, a ti su elementi „negostoljubive radne sredine“ bili vjerojatno presudni
za donošenje odluke o robotizaciji spomenutih tehnoloških procesa

• Presovanje – Presovanje je srodno hladnom kovanju – element se plastično deformira pri


sobnoj temperaturi. Zahtjev za velikim brzinama često vodi ka rješenju robota sa dvije
hvataljke.

• Opsluživanje alatnih strojeva – Mašinska se obrada na alatnim strojevima (tokarenje, bušenje,


brušenje, glodanje) može učiniti mnogo djelotvornijom uvođenjem robota, koji će prenositi
izratke (ili alata) i postavljati ih na određeno mjesto.

Slika 5.7. Primjer robotskog sistema za opsluživanje alatnog stroja

20
Edin Muhedinović Završni rad

Roboti za opsluživanje alatnih strojeva moraju biti velike prilagodljivosti, brzine i preciznosti.
Kretanja su najčešće jednostavna pa je i programiranje razmjerno jednostavno. Od robota se nadalje
zahtjeva visoka ponovljivost te jednostavna izmjenljivost hvataljke.

5.1.2. Robotske ćelije za procesne operacije

Zavarivanje je dominantan postupak ostvarivanja nerastavljive veze elemenata. Od brojnih postupaka


zavarivanja za robotizaciju prikladni:
• Elektrootporničko (tačkasto) zavarivanje
• Elektrolučno - s kontinuiranim dotokom elektrode - žice namotane na bubanj

Elektrootporničko zavarivanje služi za spajanje tanjih limova (debljine do 6 mm). Pomoću


zavarivačkih kliješta stegnu se limovi. Kroz kliješta se propušta struja velike jačine ( do 1500 A). Pri
protjecanju struje najveći se otpor javlja na mjestu spoja limova. Veliki otpor izaziva veliko (lokalno)
unošenje topline dovoljno za taljenje metala, tj. limova na mjestu spoja. Nizom takvih tačkastih
spajaju se limovi u cjelinu. Najznačajnija primjena tačkastog zavarivanja je u automobilskoj industriji
pri formiranju karoserije.

Slika 5.8. Tačkasto zavarivanje robotima

Elektrolučno zavarivanje je postupak spajanja metalnih dijelova taljenjem. Izvor topline je električna
energija što se u električnom luku između elektrode i osnovnog materijala pretvara u toplinu.
Od niza postupaka za robotizaciju je najprikladniji i najviše se primjenjuje u metaloprerađivačkoj
industriji - MAG postupak. Pri tom se postupku elektroda u obliku žice kontinuirano topi u zaštitnom
sloju plina. Spojevi se izvode s jednim ili više prolaza s njihanjem ili bez njihanja elektrode.
Kvalitetan spoj zahtijeva određenu orijentaciju zavarivačke glave, a potrebo je pravilno izabrati niz
parametara zavarivanja (napon i jačinu struje, primjer, mehanička svojstva i hemijski sastav žice,
brzinu zavarivanja, količinu i sastav zaštitnog plina). Najvažniji elementi kvalitetnog automatskog
elektrolučnog zavarivanje jesu:
- ispravni „dotok“ elektrode- žice
- najbolja udaljenost između elektrode i žice, tj. brzina zavarivanja
- ispravna brzina – napredovanje elektrode i izratka

21
Edin Muhedinović Završni rad

Iz navedenoga se može zaključiti da je robotizacija elektrolučnog zavarivanja složena. Robotski sistem


mora omogućiti kretanje zavarivačke glave (s elektrodom na vrhu) željenom putanjom, uz upravljanje
velikim brojem zavarivačkih parametara. Mehanizam robota za elektrolučno zavarivanje najčešće je
antropomorfne konfiguracije koja omogućuje veliku pokretljivost i prilagodljivost različitim
zahtjevima putanja. Za manje izratke sve se više upotrebljavaju posebne konstrukcije, uređaji za
pozicioniranje, koji služe za prihvat izratke. Izradak se može okretanjem dovesti u položaj koji
omogućuje robotu pristup zavaru u najboljem položaju zavarivanja koje je prikazano na slici 6.9.

Slika 5.9. Faze zavarivanja: a) pristup zavaru, b) početak zavarivanja, c) kraj zavarivanja, d) povratak u
početni položaj

Savremeni roboti za pozicioniranje integrirani su u upravljački sistem robota. Ugradnjom robota na


portal može se znatno povećati radni prostor robota. Takvi tzv. portalni roboti zahtijevaju poseban
pristup s obzirom na geometrijske značajke izratka, postavljanje i pozicioniranje izratka.

Upravljački uređaj robota mora omogućiti praćenje kontinuirane putanje, ali i usklađivati parametre
zavarivanja. Roboti za zavarivanje starije generacije, a još ih ima na tržištu, programirali su se
vođenjem. Robot je „pamtio“ putanju i ponavljao je pri zavarivanju. Za pravocrtni šav (spoj, zavar)
zadavale su se početna i krajnja tačka, a od robota se zahtijevala odgovarajuća interpolacija. Takvi su
roboti ograničeni na zavarivanje tačno postavljenih dijelova jednostavnih oblika. Pritom je potrebno
rješavanje niza problema, a ti problemi su prvenstveno: odstupanje linije spoja od programirane
(netačna montaža, dimenzijska odstupanja, deformacije), promjene napona i jačina struje luka u
odnosu na programirane vrijednosti, te netačnost robotskog sistema.

Stoga se nameće potreba za opskrbom robota kvalitetnim vanjskim senzorima koji će omogućiti
raspoznavanje i praćenje željene putanje. Senzori moraju biti integrirani s robotom i uređajem za
zavarivanje, što kompletnom sistemu daje svojstvo prilagodljivosti (adaptabilnosti).

Senzori moraju dati informacije što se odnose na praćenje linije zavara i parametara zavarivanja, dakle
podatke o stanju prije, ali i za vrijeme zavarivanja. Uz brojna rješenja koja se danas primjenjuju ni

22
Edin Muhedinović Završni rad

jedno potpuno ne zadovoljava istovremene zahtjeve za tačno utvrđivanje pozicije, tačno vođenje duž
spoja te pouzdanost, a uz podnošljivu cijenu. Najširu primjenu imaju senzori temeljeni na osobinama
luka. Senzor tipa elektrode s kontaktom omogućuje određivanje početne pozicije i početni položaj
linije šava –spoja upotrebljavajući elektrodu, žicu za zavarivanje, prije početka zavarivanja.
Savremenije rješenje je beskontaktni senzor. Mjerenjem napona i struje električnog luka određuje se
odstupanje od sredine šava. Tako se približavanje šavu ispituje promjenama električnih karakteristika
luka umjesto dodirom.

Daljnje se povećanje primjene robota u elektrolučnom zavarivanju očekuje iz rezultata istraživanja


usmjerenih usavršavanju vanjskih senzora. Njihovom će se primjenom smanjiti ovisnost o kvaliteti
pripreme dijelova za zavarivanje.

Lasersko zavarivanje, sve češće u savremenoj proizvodnji , jest postupak prirodno blizak robotizaciji.
Najčešće se upotrebljavaju tzv. plinski laseri. Rade na području infracrvenog zračenja, a prijelazi
energije omogućuju se vibracijama molekula plina. Laser omogućuje usmjeravanje velike količine
energije na malu površinu. To svojstvo služi za zagrijavanje metala na vrlo visoku temperaturu pa se
spoj izvodi brzo i precizno, bez deformacija i oštećenja spojnih elemenata.

Lasersko zavarivanje zahtijeva robote sličnih svojstava kao i za elektrolučno zavarivanje. No kako
lasersko zavarivanje omogućuje znatno brži tijek procesa, potreban je robot veće pokretljivosti i
brzine, uz zadržavanje svojstava visoke tačnosti i ponovljivosti.

5.1.3. Robotske ćelije za poslove montaže

Pojam montaže obuhvaća spajanje (rastavljivo ili nerastavljivo) više elemenata koji tvore sklop. Taj
sklop može biti završni ili podsklop koji se daljnjom montažom pretvara u završni sklop. Poslovi
montaže uključuju velik broj radnika i često su velika stavka u troškovima proizvodnje. Stoga su već u
ranoj fazi razvoja automatizacije i poslovi montaže bili automatizirani. Radilo se o tzv. čvrstoj
automatizaciji isplativoj tek pri velikim serijama. Težnja za fleksibilnosti proizvodnje rezultirala je sve
većom primjenom robota na poslovima montaže. Pri formiranju sklopa javljaju se poslovi različitih
osobina (pričvršćivanje elemenata, doprema odnosno transport elemenata i sastavljanje elemenata u
sklop). Stoga će i roboti potrebni na spomenutim poslovima biti različitih karakteristika.

Smatra se važnim da se već u fazi projektiranja vodi računa o specifičnostima koji će olakšati
robotizaciju. Tako se nastoji smanjiti broj dijelova, a time i broj operacija pri montaži. Nastoji se da
elementi koji „dolaze“ robotu uvijek imaju pravilan i poznat položaj i orijentaciju.

O poslovima koje će obavljati robot u procesu montaže ovisit će i njegove ososbine. Općenito će se
zahtijevati velika brzina i preciznost, opremljenost vizualnim senzorima te senzorima sile. Upravljanje
robotima može biti od tačke do tačke ili kontinuirano praćenje putanje.

23
Edin Muhedinović Završni rad

Slika 5.10. Robotski sistem za montažu

5.1.4. Robotske ćelije na poslovima kontrole proizvoda

U završnoj fazi procesa proizvodnje istaknuto mjesto zauzima kontrola proizvoda. Postupci kontrole
mogu se podijeliti u dvije skupine:
- kontrola geometrijskih i fizikalnih osobina
- funkcionalna kontrola

U prvu skupinu pripada kontrola dimenzija, mase, kvalitete površine, ali i provjera homogenosti
materijala, kvalitete zavara i slično. Oblik i dimenzije mogu se nadzirati različitim vizualnim
sistemima ili s pomoću ticala. Računalo dobiva mjerne podatke i vrednuje ih uz pomoć programskog
modula. Savremena rješenja uključuju laserske optičke senzore koji mogu služiti sa kontrolu
dimenzija, ali i za utvrđivanja stanja površinske hrapavosti. Prikaz mjernog uređaja - portalnog robota
dan je na slici 24.

Slika 5.11. Trikoordinatni mjerni sistem za kontrolu dimenzije

Funkcionalna kontrola proizvoda svodi se na provjeru karakteristike proizvoda prema tome kakva mu
je namjena. Uređaji za takvu kontrolu različite su složenosti – od onih koji provjeravaju primjerice
vodljivost žice do provjere funkcioniranja električnih kola na tiskanim pločicama.

24
Edin Muhedinović Završni rad

6. Digitalna akvizicija i obrada slike u robotici


Prepoznavanje objekata zasnovano na viziji se primenjuje u mnogim robotskim sistemima i
aplikacijama vezanim za kompjutersku viziju poput 3D rekonstrukcije objekata u cilju manipulacije u
servisnoj robotici. I pored toga što različite aplikacije imaju različite ciljeve, njihovi algoritmi se
sastoje od svih ili većine koraka prikazanih na slici 6.1.

Slika 6.1. Blok dijagram tipične aplikacije kompjuterske vizije

Akvizicija slike je prvi korak kod aplikacije za prepoznavanje objekata zasnovano na viziji gde se
digitalna kamera koristi kao osnovni izvor informacija koje sadrže scenu u kome se nalazi objekat
interesovanja. Nakon toga pristupa se segmentaciji slike, gde se slika "pojednostavljuje" i priprema za
prepoznavanje objekata, odnosno uopšteno gledano razumjevanje digitalne slike . Segmentacija slike
se obično vrši u tri koraka, preprocesiranje slike, sama segmentacija i post-procesiranje slike. Pre-
procesiranje se vrši u cilju poboljšanja kvaliteta slike (najčešće primenom raznih filtera) ili kako bi se
odredila oblast interesovanja (engl. Region of Interest - ROI) tj. smanjila oblast segmentacije. Nakon
primene adekvatnog algoritma segmentacije, moguće je vršiti post-procesiranje čime bi se npr.
uklonili elementi koji nisu od interesa za klasifikaciju ili se mogu primeniti filteri koji obezbeđuju
bolju rekonstrukciju objekata

6.1. Boja u kompjuterskoj viziji

Proces percipiranja i interpretiranja boje u ljudskom mozgu je psiho-fiziološki fenomen koji nije još
sasvim shvaćen, ali se priroda boje može opisati na formalnoj bazi koja je poduprta eksperimentalnim
i teoretskim rezultatima. Prvo ozbiljno istraživanje boje zabeleženo je u 17- om veku kada je Isak
Njutn otkrio da kada sunčeva svijetlost obasja staklenu prizmu, na izlazu iz nje ne dobijamo isto
obojenu svjetlost već cijeli spektar boja od ljubičaste do crvene, kao što se vidi na slici 6.2.

25
Edin Muhedinović Završni rad

Slika 6.2. Razlaganje svjetlosti na optičkoj prizmi

Otkriveno je da vidljivu svjetlost koju ljudi mogu percipirati čini relativno uzak spektar frekvencija u
elektromagnetnom spektru koji se može videti na slici 6.3.

Slika 6.3. Vidljivi spektar svjetlosti

Ono što ljudi i neke životinje percipiraju kao boju je zapravo reflektovana svetlost s površine nekog
objekta. Zbog toga je izučavanje svjetlosti izuzetno bitno kako za nauku o bojama, tako i za korišćenje
boje u kompjuterskoj viziji. Ako svjetlost nije obojena, tada je ona ahromatska i promatramo je
isključivo kao intenzitet.

Sistemi kompjuterske vizije za akviziciju podataka iz okoline uglavnom koriste digitalne kamere
bazirane na CCD ili CMOS tehnologijama koje pretvaraju svetlost koja pada na senzor kamere prvo u
analogni signal, a nakon toga u digitalni. Senzori u digitalnim kamerama se sastoje od 3 tipa
fotoosetljivih filtera (R, G i B) raspoređenih u određenom obrascu da bi se što bolje aproksimovao rad
ljudskog oka. Primer obrasca filtera je npr. Bajerov filter koji možemo videti na sledećoj slici, a čiji
obrazac sadrži 50% zelenih, 25% crvenih i 25% plavih ćelija (Slika 6.4.)

26
Edin Muhedinović Završni rad

Slika 6.4. Primjer Bajerovog obrasca na senzoru kamere

U RGB prostoru boja svaka boja je sastavljena od primarnih spektralnih komponenti crvene, zelene i
plave boje. Ovaj se model bazira na Dekartovom koordinatnom sistemu kao što je prikazano na slici
6.5.

Slika 6.5. RGB prostor boja

Kao što se može videti na slici 7.5., primarne boje RGB prostora se nalaze na osama koordinatnog
sistema dok su na uglovima sekundarne boje (cijan, magenta i žuta). Koordinatni početak predstavlja
crnu boja, dok je njemu najudaljeniji ugao bijela boja. Zbog svoje jednostavnosti RGB prostor boja je
najrašireniji u upotrebi, ali radi se o prostoru koji nije perceptualno uniforman što znači da euklidska
udaljenost između dvije boje u tom prostoru ne odgovaraju perceptualnoj udaljenosti tih dviju boja
kod ljudske percepcije boja, niti je ovakav prostor boja intuitivan s obzirom na ljudski način
razmišljanja o bojama.

6.2. HSL prostor boja

Ovaj prostor boja uveo je 1978 godine Alvy Ray Smith a temelji se na načinu na koji umjetnici
mješaju boje na svojim paletama. Ovo je jako važan prostor jer opisuje boje najsličnije ljudskoj

27
Edin Muhedinović Završni rad

percepciji. To svojstvo može ovaj prostor učiniti boljim izborom od RGB prostora za pretraživanje
slika.

Slika 6.6. HSL prostor boja

Sjajnost (intezitet) je komponenta koja se u prostoru HSL odvaja od informacija o boji. Ova osobina je
uvod ka još boljoj reprezentaciji neovisno od varijacija inteziteta svjetlosti. Međutim kroma (nijansa i
zasićenje) ravan se ne može koristiti da se predstave crna i bijela boja koje se najčešće koriste kao
pozadinske boje kod mnogih aplikacija u mašinskoj viziji.

Svaki od elemenata u nizu spektra boja odgovara odgovarajućem binu (ograđenom mjestu) boja u
HSL prostoru boja. Posljednja dva elementa niza predstavljaju crnu i bijelu boju respektivno. Slika
6.7. prikazuje kako je prostor boja podjeljen u binove. Prostor sjajnosti je podjeljen na nekoliko
jednakih sektora, a svaki od sektora je dalje podjeljen na dva dijela od kojih jedan dio predstavlja dio
sa visokim vrijednostima zasićenja a drugi dio sa niskom vrijednostima zasićenja. Svaki od ovih
dijelova pripada odgovarajućem binu (element u nizu spektra boja).

Slika 6.7. HSL prostor boja podjeljen na sektore i binove

28
Edin Muhedinović Završni rad

Parameter osjetljivosti boje određuje broj sektora koji je prostor nijanse podjeljen. Slika a) prikazuje
prostor nijanse kada je osvjetljenost jednaka 128. Slika b) prikazuje prostor nijanse podjeljen u
nekoliko sektora, ovisno o željenoj osjetljivosti boje. Slika c) prikazuje svaki sektor koji je dalje
podjeljen na binove sa visokom i niskom količinom zasićenja. Prag zasićenja određuje radijus
unutarnjeg kruga koji razdvaja svaki sektor u binove.

Slika 6.8 prikazuje korespodenciju između elemenata spektra boja i binova u prostoru boja. Prvi
element u nizu spektra predstavlja visoko zasićeni dio u prvom sektoru,drugi element predstavlja
nisko zasićeni dio,treći element predstavlja visoko zasićeni dio drugog sektora i tako dalje. Ako
postoji n binova u prostoru boja, niz spektra boja sadrži n+2 elemnata. Posljednja dva elementa u
spektru boja predstavlja crnu i bijelu boju.

Slika 6.8. Veza između prostora nijanse i niza spektra boja

Spektar boja sa većim brojem binova (elemenata) daje informacije o boji na slici sa više detalja kao
što je je veća rezolucija boje nego spektar sa manjim brojem binova. U IMAQ Visionu možemo
odabrati između tri postavke osjetljivosti boja: niska ,srednja i visoka.

Niska osjetljivost djeli prostor nijanse u sedam sektora davajući ukupno 2 × 7 + 2 = 16 bina. Srednja
osjetljivost dijeli prostor nijanse u 14 sektora davajući ukupno 2 × 14 + 2 = 30 bina. Visoka
osjetljivost dijeli prostor nijanse u ukupno 28 sektora davajući ukupno 2 × 28 + 2 = 58 bina.

Vrijednost svakog elementa u spektru boja označava postotak piksela slike u svakom od binova.
Nakon što je broj binova podešen prema parametru osjetljivosti boje, softver mašinske vizije broji
broj piksela koji je pridružen odgovarajućem binu i pohranjuje omjer ukupnog broja piksela na slici u
odgovarajući element unutar spektra boja. Softver takođe primjenjuje poseban adaptivni algoritam
učenja koji utvrđuje jesu li pikseli crni ili bijeli prije nego li se dodijele odgovarajućem binu.

29
Edin Muhedinović Završni rad

Slika 6.9. Spektar boja povezan sa slikom

Slika 6.9. b predstavlja spektar boja niske osjetljivosti slike a. Visina svakog od elemenata histograma
predstavlja postotak piksela slike koji pripadaju odgovarajućem binu. Spektar boja sadrži korisne
informacije o distribucije boje u slici. Takođe možemo analizirati spektar boja kako bi smo dobili
informacije o najdominantnoj boji na slici čiji element posjeduje najveću vrijednost u spektru boja.

30
Edin Muhedinović Završni rad

7. Pogled na LabVIEW

LabVIEW je u potpunosti grafički program koji izgleda poput crteža elektroničke sheme s jedne strane
i stila električkih mjernih uređaja iz pedesetih godina dvadesetog stoljeća. To čini koncept blok
dijagrama (blok diagram) i prednje ploče (front panel). LabVIEW je hijerarhijski program u tom
smislu da se bilo koji virtualni instrument (bilo koja potpuna funkcionalna cjelina naziva se virtualni
instrument te se gotovo uvijek označava kao VI) koji se programira može brzo pretvoriti u modul koji
može biti potprogram drugog VI. To je u potpunosti analogno konceptu programiranja kod
konvencionalnih programskih jezika. LabVIEW je dizajniran osim toga tako da se može proširivati.
Mogu se dodavati moduli pomoću različitih sredstava. Proizvođač mjerne kartice ili nekog mjernog
instrumenta može pogramirati LabVIEW driver koji se ponaša kao VI koji predatavlja mjernu karticu i
njenu funkcijonalnost u LabVIEW okruženju. Korisnik može također sam napisati LabVIEW modul i
koristiti ga kao VI u drugim programima ili može napisati modul koji se sučeljavalju s LabVIEWom u
drugim jezicima kao što su C i C++ . Oni su poznatu i kao podVI (subVI) i ne razlikuju se od VI osim
što je šučelje određeno za slijedeći nivo. PodVI u C ili C++ su vrlo korisni ukoliko je potrebno izvesti
vrlo složeni numerički postupak na podacima koji nisu pokriveni u standardnoj LabVIEW rutini.

7.1. Osnovni koncepti LabVIEW-a

Slika 7.1. Izgled front panela

Kontrole mogu imati mnoštvo oblika. Mnogi od tih oblika su virtualne «slike» realnih kontrol K a
koje se koriste kod stvarnih instrumenata kao rotirajući gumb (knob) na primjer. Ostali imaju digitalni
koncept. Sve kontrole imaju neku vrstu vizualne informacije na osnovu koje korisnik uvijek zna u
kojem se stanje nalaze. To jako pomaže jer se ne mora pri programiranje eksplicitno programirati i
stanje pojedine kontrole. Drugo vrlo korisno svojstvo kontrola je to da se može odrediti njihova
reakcija ukoliko je postavljena ulazna vrijednost nestabilana. U specifičnom slučaju, ukoliko ulazna
kontrola može poprimiti samo cjelobrojne vrijednosti u opsegu od 0 do 10 može se specificirati što se

31
Edin Muhedinović Završni rad

treba dogoditi ukoliko se unese ulazna vrijednost 3,5 ili -1 ili «nula» (zero) kao tekstualna naredba.
Programski riješiti tu vrstu problema zahtijeva previše programerskog vremena tako da se ovom
opcijom štedi na vremenu.

Slika 7.2. Izgled blok dijagrama

Indikatori imaju mnoštvo različitih oblika. Neki od njih su preslik stvarnih indikatora (instrumenata i
sl.) a neki su dizajnirani prikladnije za zaslon računala. Koncept indikatora uključuje grafove (graphs)
i prikaze (charts) što je druga važna ušteda u vremenu jer se ti pokazivački elementi ne moraju
dizajnirati zasebno. Slika 7.2. Blok dijagram predstavlja pozadinu njegove prednje ploče koji
prikazuje kako su sve kontrole i indikatori povezani međusobno kao i skrivene module gdje se odvija
sva programska obrada podataka. Izgleda na neki način poput elektroničkog shematskog dijagrama i
barem je konceptualno ožičen na isti način. Takav prikaz često izgleda vrlo složen kao u elektroničkoj
shemi stvarnog elektroničkog mjernog instrumenta. Stoga je jedno od najvažnijih svojstava u
LabVIEW programiranju odrediti timing i redoslijed operacija. U konvencionalnom programskom
jeziku to je ostvareno redoslijedom naredbi i korištenjem različitih programskih petlji (FOR, WHILE
itd.). LabVIEW radi na potpuno isti način jedino sto je način na koji se određuje redoslijed izvršenja
naredbi profinjeniji. Koncept korišten u LabVIEWu je dataflow – radnja se na nekom elementu
izvršava kad su svi njegovi ulazi na raspolaganju. To znači paralelnost u izvršenju radnje (ili barem
pseudoparalelizam). Uobičajeno izvršavanje radnji je s lijeva na desno jer su ulazi obično na lijevom
dijelu elementa a izlazi na desnom dijelu. Međutim to nije zahtjev već samo stvar dogovora.
Programske petlje i redoslijed kojim se odvijaju naredbe odvija se pomoću struktura koje izgledaju
poput knjiga s brojevima stranica ili kao odsječci filmske trake.

32
Edin Muhedinović Završni rad

7.2. Mogućnosti LabVIEW-a

Pomoću LabVIEW-a se može upravljati sistemom i vršiti prikaz rezultata preko interaktivnog
grafičkog front panela. Na raspolaganju su brojne opcije za manipulisanje podacima - smještanje
podataka na disk ili direktno u bazu podataka, mrežno povezivanje između dvije ili više aplikacija,
povezivanje na internet ili štampanje izvještaja, direktno ili pomoću Microsoft Office-a.

Prikupljanje podataka i kontrola se vrši pomoću akvizicionih i upravljačkih modula. Podaci se mogu
zabilježiti u file-ovima (ASCII, binarni, …) ili u bazi podataka. Takođe, podaci se mogu slati preko
lokalne mreže ili interneta, ili preuzimati na isti način. Nakon prikupljanja podataka mjerenja, rezultati
se mogu obrađivati primjenom snažnih alata za analizu i vizualizaciju. LabVIEW pojednostavljuje i
skraćuje razvoj kompletnog sistema metodologijom intuitivnog programiranja i brojnim neophodnim
funkcijama integrisanim u razvojno okruženje.

7.3. Prednosti LabVIEW-a

LabView je orijentisan prema mjernim sistemima i industrijskoj kontroli. Ima veliki broj gotovih
biblioteka za mjerenje, obradu i analizu podataka. Ovo olakšava i ubrzava razvoj aplikacija sa
faktorom 4 do 10 puta. Jednostavniji programi za akviziciju se mogu napraviti u roku od samo
nekoliko minuta. Takođe, izrada programa je olakšana za one korisnike koji nemaju iskustva u
programiranju, jer se

Kada aplikacija zahtijeva izmjene, LabVIEW-ov sistem virtualne instrumentacije omogućava


modifikacije bez nabavke nove opreme i bez novih ulaganja. Primjenjujući LabVIEW sistem, svaki
korisnik ima pristup kompletnoj laboratoriji virtualne mjerne instrumentacije, po znatno nižoj cijeni
nego konvencionalni instrumenti. Takođe, ostvarena je i kompatibilnost između različitih platformi,
tako da korisnik može da izabere optimalnu platformu za svoje potrebe. Pored toga, pojavom nove
verzije, zadržava se kompatibilnost sa prethodnom, tako da virtualni instrumenti dizajnirani danas,
mogu da se koriste i u budućim aplikacijama.

LabVIEW sadrži, osim programskog jezika G, i okruženja za izradu korisničkog interfejsa i veliki
broj gotovih primjera, biblioteka, driver-a, zatim okruženje za izradu projekta, compiler i automatsku
izradu instalacione verzije programa, sa velikim brojem parametara koje korisnik može postaviti kako
želi. Ovo omogućava korisniku jednostavnu izradu profesionalnih aplikacija za treće lice koje nema
LabView okruženje. Veliki broj LabVIEW-ovihadd-on softverskih paketa omogućava realizaciju
kompleksnih zadataka, kao što je slanje podataka na internet, akvizicija slike, programiranje baze
podataka i slično, jednostavnim integrisanjem ovih paketa u LabVIEW razvojno okruženje.

LabVIEW može da se upotrijebi u različitim oblastima, za mjerenje, testiranje, monitoring i


procesno upravljanje. Ove aplikacije obuhvataju nadgledanje transportnih sistema, laboratorije,
automatsko testiranje dijelova, upravljanje industrijskim procesima, itd.

33
Edin Muhedinović Završni rad

8. Osnovne komponente sistema

8.1. USB video kamera

Digitalne video kamere umjesto na klasičnu filmsku traku, sliku "hvataju" na


specijalizirani mikročip tipa CMOS ili 3 CCD (tri CCD čipa od kojih svaki obrađuje jednu od tri
osnovne boje) ili jeftinije alternativne vrste. Mikročip digitalizira na njega projiciranu sliku, tj. definira
horizontalnu i vertikalnu poziciju svake tačkice slike (piksela), nijansu boje i intenzitet osvjetljenosti.
Videokamera takav set podataka za čitavu sličicu pohranjuje na digitalni medij - nekad magnetsku
traku ili DVD, a danas najčešće na memorijsku karticu. Za jednu sekundu video snimke, prema
video standardima potrebno je snimiti 25 sličica (engleski "Frame"), da bi se dobili koliko-toliko
prirodni pokreti bez "poskakivanja".

Slika 8.1. Shematski prikaz dijelova digitalne kamere

Digitalni video koristi principe ljudskog vida koji su poznati još od početaka analogne TV i video
tehnike. Bilo koja boja spektra može se dobiti miješanjem određenih iznosa osnovnih boja. Analogne
video kamere proizvode tri različita kontinuirana signala: po jedan za R, G i B komponentu. Ova tri
signala (crveni, zeleni i plavi) mogu se pretvoriti u druga tri: signal luminacije (osvjetljenja ili
intenziteta) Y, koji sadrži informaciju o osvjetljenju, a druga dva su signali za razlikovanje boja (R-Y,
G-Y). Kako je ljudsko oko manje osjetljivo na boju nego na osvjetljenje, signali boja mogu se
prenositi i prikazati sa manjom preciznošću od luminantnih signala. Signal osvjetljenja i signali razlike
boja izračunati su iz RGB signala pomoću pojednostavljene linearne transformacije. U digitalnoj
tehnici, iz tog razloga, signali boja mogu biti uzorkovani na nižim frekvencijama od luminantnog
signala. Spomenuta tehnika se naziva poduzorkovanje (subsampling). Primjerice, omjer 4:1 ukazuje
da je svaka razlika boje uzorkovana na četvrtinu frekvencije od luminacije. Za DV u studijskoj
kvaliteti, prema ITU-R BT.601, luminantni signal ima 720 uzoraka po liniji i 486 do 576 aktivnih
linija po sličici, a horizontalna brzina uzorkovanja signala razlikovanja boja je prepolovljena.
Poduzorkovani omjer time je 4:2:2, što je čest slučaj kod mnogih profesionalnih sistema. High

34
Edin Muhedinović Završni rad

Definition video koristi omjer 4:2:0, NTSC digital video 4:1:1, a neki Highend video formati
podržavaju omjer 4:4:4.

Slika 8.2. USB video kamera

Još uvijek je aktualna standardna DVD rezolucija od 768 x 576 piksela. HDV modeli endemska su
vrsta, njihovu malobrojnu ponudu prati i viša cijena, no prosječni korisnici time nisu zakinuti -
standardna DV rezolucija ima još štošta za ponuditi, snimanje i uređivanje zapisa je poprilično
pojednostavljeno, a konačan rezultat je kvalitetan DVD medij, čak i za zahtjevnijeg korisnika. Osnova
uspjeha digitalnog videa sastoji se u tzv. simetričnoj kompresiji, odnosno sposobnosti komprimiranja
videozapisa u dva smjera na magnetnu traku, te dekomprimiranja sa nje u realnom vremenu
upotrebom jeftinog hardvera dostupnog najširem broju korisnika. Unaprijeđeni MPEG2 algoritam
koristi DCT transformaciju, s namjenom pretvaranja i kompresije video signala u osnovne frekvencije.
DCT, diskretna kosinusna transformacija to čini pretvaranjem vrijednosti slike u koeficijentnu matricu
od 8 x 8 piksela, pri čemu se koriste tri signala, X, Y i Z (X i Y predstavljaju koordinate piksela na
zaslonu a Z vrijednost pojedinog piksela, od 0 do 255). Upotreba većih blokova u spomenutoj matrici
(16 x 16, 64 x 64 ili većih) nema većeg smisla, jer bi se time vrijeme obrade i procesorsko vrijeme
znatno povećalo, a kvaliteta komprimirane slike umanjila.

8.2. RC servo motori

Servo motori su rotacioni aktuatori koji se koriste u aplikacijama gde je potrebno upravljanje ugaonom
pozicijom, brzinom i ubrzanjem. Sastoje se od odgovarajućeg motora u kombinaciji sa senzorom koji
daje informaciju o poziciji. Servo motori takođe sadrže i relativno sofisticirani kontroler, često
odvojen modul, namenjen za upotrebu sa servo motorima. RC (Radio Control) servo motori se
najčešće koriste u aplikacijama sa daljinskim upravljanjem (mali roboti, daljinski upravljani
automobili, avioni, brodovi itd).

35
Edin Muhedinović Završni rad

Slika 8.3. RC servo motor

RC Servo motor poseduje tri priključka, jedan upravljački i dva preko kojih se motoru dovodi
napajanje. Upravljački signal se koristi za upravljane ugaonom pozicijom izlazne osovine i najčešće je
to PWM (Puls-Width Modulation) signal. Trajanje impulsa PWM signala određuje poziciju osovine.
Dok god je upravljački signal prisutan, servo motor zadržava poziciju svoje izlazne osovine. Pri pojavi
signala, motor rotira osovinu u smeru u kom će se najpre ostvariti zadata pozicija. Kada se pozicija
ostvari, osovina se zaustavlja i zadržava poziciju osovine. Upravljački signali servo motora uglavnom
imaju period od 20 ms. Faktor ispune impulsa unutar periode će se odraziti na poziciju izlazne
osovine. Na primer, ako želimo da osovinu dovedemo u ugao od -45° potrebno je da impuls
upravljačkog signala traje 1 ms (faktorom ispune od 5%); kako bi se osovina pozicionirala u neutralni
položaj (0°), širina impulsa treba da je 1,5 ms (faktor ispune 7,5%); ukoliko pak želimo da osovinu
pozicioniramo na ugao od 45° potrebna širina impulsa je 2 ms (faktor ispune 10%).

Širina impulsa je najčešće 1 do 2 ms za kretanje osovine od 90°, mada mnogi servo mogu i preko
toga. Sredina opsega kretanja osovine je najčešće na 1,5 ms. Kraći impulsi okreću osovinu u smeru
kazaljke na satu, a duži suprotno, što se može videti na slici 8.4.

Slika 8.4. Smijer rotacije RC servo motora u zavisnosti od širine impulsa upravljačkog signala

36
Edin Muhedinović Završni rad

8.2.1. Konstrukcija RC servo motora

RC servo motori su sastavljeni iz tri dela: motora sa reduktorom, uređaja povratne sprege i
upravljačke ploče. Kod RC servoa, uređaj povratne sprege čini najčešće potenciometar. Motor, preko
niza zupčanika (koji čine reduktor), okreće izlaznu osovinu i potenciometar istovremeno. Upravljački
modul “očitava” otpornost potenciometra i na taj način utvrđuje trenutnu poziciju izlazne osovine.
Šematski prikaz strukture RC servo motora prikazan je na slici 8.5.

Slika 8.5. Šematski prikaz strukture RC servo motora

8.3. Arduino

Arduino je fizičko-računarska platforma (razvojni sistem) otvorenog koda. Hardver se sastoji od


jednostavnog otvorenog hardverskog dizajna Arduino ploče sa Atmel AVR procesorom i pratećim
ulazno-izlaznim elementima. Softver se sastoji od razvojnog okruženja koje čine standardni kompajler
i bootloader koji se nalazi na samoj ploči.

Slika 8.6. Zvanična Arduino Duemilanove ploča

37
Edin Muhedinović Završni rad

Arduino hardver se programira koristeći programski jezik zasnovan na Wiring jeziku (sintaksa i
biblioteke). U osnovi je sličan C++ programskom jeziku sa izvjesnim pojednostavljenjima i
izmjenama. Integrisano razvojno okruženje je zasnovano na Processingu.

Arduino ploču čine 8-bitni Atmel AVR mikrokontroler sa pripadajućim komponentama koje
omogućavaju programiranje i povezivanje sa drugom elektronikom. Bitan aspekt Arduino projekta je
standardizovan raspored konektora koji omogućava lako povezivanje sa dodatnim modulima,
poznatijim kao shieldovi. Ove dodatne module, štitove, poizvode razni proizvođači širom svijeta.
Zvanične Arduino ploče uglavnom koriste megaAvr seriju čipova, konkretno ATmega8, ATmega168,
ATmega328, ATmega1280 i ATmega2560. Većina ploča posjeduje 5V linearni naponski regulator i
16MHz kristalni oscilator (ili keramički rezonator u nekim verzijama). Arduino mikrokontroleri se
isporučuju sa programiranim bootloader-om koji pojednostavljuje postupak prebacivanja prevedenog
koda u fleš memoriju na čipu. Drugi mikrokontroleri obično zahtijevaju zaseban programator.

Originalni Arduino hardver proizvodi italijanska kompanija Smart Projects. Neke od Arduino ploča
je dizajnirala američka kompanija SparkFun Electronics. Za sada postoji ukupno trinaest zvaničnih
Arduino ploča koje se proizvode u komercijalne svrhe:

1. Serial Arduino, programira se preko DE-9 serijskog konektora i koristi ATmega8 mikrokontroler

2. Arduino Extreme, sa USB interfejsom za programiranje i koristi ATmega8

3. Arduino Mini, minijaturna Arduino verzija u SMD tehnologiji sa ATmega168

4. Arduino Nano, najmanja, USB Arduino verzija, koristi površinski montirani ATmega168
(ATmega328 u novijim verzijama)

5. LilyPad Arduino, minimalistički dizajnirana, koristi se za "elektroniku koja se nosi", koristi


površinski montiran ATmega168 6. Arduino NG, sa USB interfejsom za programiranje, koristi
ATmega8

7. Arduino NG plus, sa USB interfejsom za programiranje, koristi ATmega168

8. Arduino Bluetooth, sa Bluetooth interfejsom za programiranje, koristi ATmega168

9. Arduino Diecimila, sa USB interfejsom za programiranje, koristi ATmega168 u DIL28 kućištu

10. Arduino Duemilanove ("2009"), koristi ATmega168 (ATmega328 za novije verzije) a napaja se
preko USB/DC napajanja uz automatsko prebacivanje

11. Arduino Mega, koristi površinski montiran ATmega1280 za dodatne ulaze i izlaze, kao i dodatnu
memoriju

12. Arduino Uno, koristi isti ATmega328 kao i Duemilanove model, ali umesto FTDI čipseta za USB,
Uno koristi ATmega8U2 programiran kao serijski konvertor

13. Arduino Mega2560, koristi površinski montiran ATmega2560, proširujući raspoloživu memoriju
na 256 kB. Takođe sadrži i novi ATmega8U2 USB čipset.

38
Edin Muhedinović Završni rad

8.4. LED diode

LED diode (Light–emitting diode) su poluprovodnički izvori svetlosti koji se prvenstveno koriste
kao indikatorske lampice na mnogim uređajima, mada sve više pronalaze primenu i u drugim vrstama
osvetljenja. Kao elektronska komponenta prvi put se pojavljuju 1962. godine kao crveno svetlo niskog
intenziteta, da bi današnje, moderne verzije bile dostupne u vidljivom, infracrvenom i ultraljubičastom
spektru talasnih dužina, veoma visokog stepena osvetljenja. Kada je svetlosna dioda polarisana
elektroni su u mogućnosti da se kombinuju sa elektronskim šupljinama unutar uređaja oslobađajući
energiju u obliku fotona. Ovaj efekat se naziva elektroluminiscencija, a boja svetla (odgovara energiji
fotona) određena je vrstom poluprovodnika, kao i njegovih primesa, i varira od ultraljubičastog do
infracrvenog spektra.

Koriste se u aplikacijama auto osvetljenja, saobraćajnih signala, svetlećih reklama i osvetljenja


uopšte. LED diode imaju mnogo prednosti u odnosu na obične svetlosne izvore kao što su manja
potrošnja energije, duži vek trajanja, poboljšana robustnost, manje dimenzije i brže uključivanje pa se
može očekivati da u budućnosti budu još zastupljenije.

8.4.1. Pojam diode

Dioda je elektronska komponenta koja dozvoljava protok struje u jednom smeru bez otpora(ili
sa veoma malim otporom)dok u suprotnom smeru predstavlja beskonačan (ili veoma velik) otpor.
Dioda ima provodan i neprovodan smer.Može se smatrati da za proticanje struje u provodnom smeru
dioda ima otpornost koliko i sama žica provodnika (nula), dok se u neprovodnom smeru može
posmatrati kao prekid provodnika (beskonačno).

Dioda je sastavljena iz P–Nspoja, gdje se priključak (pin) P spoja naziva anoda, a priključak N
spoja katoda. Struja teče od P ka N–oblasti ili od anode ka katodi.P–N spoj je kristal poluprovodnika
koji na jednom kraju ima visoku koncentraciju šupljina, a na drugom kraju visoku koncentraciju
elektrona. Oba tipa ovog materijala su dijelovi istog kristala, čiji su delovi dopirani različitim
primjesama.

Slika 8.7. - Šema poluprovodničke diode

39
Edin Muhedinović Završni rad

Proizvode se od poluprovodničkih materijala, uglavnom od silicijuma i germanijuma, mada još


uvek postoje i diode sa termojonskom emisijom, elektronske cevi.

8.4.2. Karakteristike LED dioda

LED dioda predstavlja specijalan tip poluprovodničke diode koja je sastavljena iz LED čipa
sa dopiranim primesama u strukturi P–N spoja, katode i anode, kao i reflektora. Kao i kod drugih vrsta
dioda i kod LED–a električna struja se lako kreće sa P–strane, ili anode, ka N– strani, katodi, ali ne i u
suprotnom smeru. Kada elektron popuni šupljinu njen energetski nivo opada i oslobađaju se fotoni,
tačnije dolazi do katodne luminiscencije elektrona ili grupe elektrona koje usmerenim kretanjem u
pravcu elektroda različitih napona prelaze sa višeg na niži energetski nivo.Tako dolazi do emitovanja
svijetlosnih talasa.

Slika 8.8. Simbol LED diode

Talasna dužina emitovane svetlosti, a samim tim i boja svetlosti zavisi od prirode grupa
elekrona formiranog P–N spoja.Što je niža frekvencija diode veća je njena efikasnost, pa je za efekat
jednake jačine svetla raznih dioda potrebno povećavati jačinu struje kod dioda viših frekvencija. Ovo
se još više komplikuje činjenicom da je ljudsko oko najosetljivije na svetlost koja je negde između
plave i zelene.

Napon diode zavisi od talasne dužine fotona i nalazi se u rasponu 1.2V za crvenu boju, do 2.4V
za ljubičastu.

Slika 8.9 Opšti izgled svijetleće diode

40
Edin Muhedinović Završni rad

8.4.3. Oblici i veličine LED–a

Led diode se proizvode u različitim oblicima i veličinama. Boja plastičnog omotača je često
iste boje kao i sama svetlost, ali ne mora uvek biti. Na primer, purpurna boja kućišta se mnogo koristi
kod IR dioda, dok se za plave uglavnom koriste bezbojna.

Osnovne vrste LED–a su minijaturne LED, LED srednje i visoke snage, i diode različitog
dizajna kao što su alfanumeričke ili sa više boja.

Minijaturne diode se uglavnom koriste zasebno, najčešće kao indikatorske lampice i veličine
su od 2mm do 8mm. Mogu se montirati u kružne otvore ili na površini uređaja. U najvećem broju
slučajeva nemaju posebne rashladne delove pa su zbog svoje veličine ograničene na niske jačine
struja, od 1mA do 20mA. Oblici ovih dioda mogu biti različiti, pa tako postoje okrugle sa kupolom ili
ravnim vrhom, pravougaone sa ravnim vrhom i u obliku trougla ili kvadrata sa ravnim vrhom.
Omotači im mogu biti bezbojni ili obojeni kako bi poboljšali kontrast i ugao vidljivosti. Postoje tri
glavne kategorije minijaturnih dioda:

1) Za niske struje – uglavnom klasifikovane za jačinu struje do 2mA i napon od 2V


(potrošnja im je oko 4 mW)
2) Standardne – za jačinu struje do 20mA i napon od 2V (potrošnja im je oko 40mW) za
crveno, narandžasto, žuto i zeleno svetlo, i do 20mA struje i napona od 4–5V (
potrošnje oko 100mW) za plavo, ljubičasto i belo svetlo
3) Za ultra–visoke izlaze – za jačinu struje od 20mA i napon 2–5 V specijalno dizajnirane
za direktno gledanje u sunčevu svetlost.

Minijaturne diode mogu raditi i na višim naponima, ali tada im se dodaje otpornik
odgovarajuće jačine.

LED diode srednje snage su uglavnom montirane u otvorima i koriste se kada je potrebno
dobiti osvjetljenje od nekoliko lumena. Ponekad se spajaju sa četiri žice (dve ka katodi i dve ka anodi)
zbog boljeg provođenja toplote. Pošto sadrže velike količine metala mogu izdržati i veće jačine struje
(oko100mA). Ove diode se najčešće koriste za svijetlosne panele, pomoćna svijetla i zadnja svijetla na
automobilima.

Diode visoke snage svijetlosnog emitovanja mogu provoditi struje od nekoliko stotina mA do
1A, a neke od njih mogu emitovati i preko hiljadu lumena svijetlosti. Pošto ovako visoke struje
proizvode preveliku toplotu, na ove uređaje mora biti montirana neka vrsta rashladnog uređaja za
njeno odvođenje. Ako toplota ne bi uspela da se ukloni ovi uređaji bi otkazali posle svega nekoliko
sekundi. Samo jedan HPLED (high–power light–emitting diodes) može zameniti običnu sijalicu, a
ukoliko bi se više njih smestilo u niz dobila bi se veoma moćna LED lampa. Danas, kako njihova
cijena opada, ove diode najčešće služe kao zamena za klasične sijalice, halogene, pa čak i
fluorescentne lampe.

41
Edin Muhedinović Završni rad

9. Izrada praktičnog modela

Na sljedećih nekoliko slika, uz objašnjenja, prikazan je model robotske ćelije, zadužene za


detekciju i sortiranje objekata na osnovu boje.

Slika 9.1. Prikaz gotovog modela

Na slici je prikazan gotov model robotske ćelije koja se sastoji iz gravitacionog dozatora
(dispensera) sa rotacionim izbacivanjem komada iz bunkera dozatora, rotacionog stola za
pomjeranje dijelova od dozatora do radnog prostora robotske ruke i izvršnog sistema za
pomjeranje objekata (robotska ruka) do odgovarajućeg mjesta. Da bi smo razumili proces
detekcije i sortiranja objekata, potrebno je sistem robotske ćelije, čija je uloga sortiranje
objekata na osnovu boje, rastaviti na osnovne sisteme koje ćemo opisati u sljedećim
poglavljima.

9.1. Detekcija boje primjenom USB video kamere

Zbog problema prepoznavanja boja RGB metodom u izradi rada implementiran je algoritam
prepoznavanja boja pomoću HSL metode.

42
Edin Muhedinović Završni rad

Slika 9.2. Labview detekcija boje objekata (Block Diagram)

Kao što je ranije rečeno, svaki od elemenata u nizu spektra boja odgovara odgovarajućem binu
(ograđenom mjestu) boja u HSL prostoru boja.. Prostor sjajnosti je podjeljen na nekoliko jednakih
sektora, a svaki od sektora je dalje podjeljen na dva dijela od kojih jedan dio predstavlja dio sa
visokim vrijednostima zasićenja a drugi dio sa niskom vrijednostima zasićenja. Svaki od ovih dijelova
pripada odgovarajućem binu (element u nizu spektra boja). Vrijednost svakog elementa u spektru boja
označava postotak piksela slike u svakom od binova. Nakon što je broj binova podešen prema
parametru osjetljivosti boje, u našem slučaju to je ‘LOW’, Labview kao softver mašinske vizije broji
broj piksela koji je pridružen odgovarajućem binu i pohranjuje omjer ukupnog broja piksela na slici u
odgovarajući element unutar spektra boja odnosno u zeleni, crveni i plavi element spektra.

9.2. Serijska komunikacija

Arduino pločica ostvaruje komunikaciju koristeći protokole za serijsku komunikaciju. U


našem slučaju serijska komunikacija između Labview softvera zaduženog za prepoznavanje
boja, i Arduino IDE softvera čiji je zadatak sekvence paljenja svih izlaznih. Serijska
komunikacija je proces slanja dijelova podataka (bajtova) preko jednog kanala, poznatog pod
nazivom bus. Podaci se u serijskoj komunikaciji šalju uzastopno jedan za drugim, za razliku
od paralelne komunikaciju gdje se više bitova šalju istovremeno preko više kanala.

43
Edin Muhedinović Završni rad

Prednosti serijske komunikacije u odnosu na paralelnu:

• Manji broj žica omogućuje lakšu obradu vremena propagacije.


• S manjim brojem kanala preslušavanje je otežano u odnosu na veći broj kanala.
• Ušteda prostora i novca, zbog manjeg broja žica, što daje mogućnost i povećanja sigurnosti
tog kanala.

Serijska komunikacija se ostvaruje izmjenom binarnih vrijednosti, te se brzina izražava u


baud-ima. Jedan baud označava prijenos 1 simbola po sekundi. Simbol može biti i višebitni.
Arduino, kao što je navedeno u prijašnjim poglavljima, nudi mnoge mogućnosti za interakciju
sa senzorima, pogonima, motorima, itd. Ali mogućnosti samog Arduina su ipak ograničene.
Na sreću, Arduino je pogodan za ostvarivanje komunikacije s nekim složenijim uređajima
poput računala ili druge Arduino pločice. Takva komunikacija se ostvaruje USB vezom i
koristi se kao serijska RS-232 komunikacija. Arduino IDE je koristi da bi učitao programe na
pločici, no serijska veza se može koristiti i za bilo koje druge vrste komunikacije.

Slika 9.3. Serijska komunikacija u Labview-u

Informacije o boji se dostavljaju u obliku Booleanove logike tj. TRUE ili FALSE. Kako bi
Arduino IDE softver imao mogućnost djelovanja u zavisnosti od boje, od krucijalnog značaja
prebacivanje iz domene Booleanove logike tj.TRUE ili FALSE u 16-bitnu integer vrijednost 0
ili 1. Integer vrijednost 0 ili 1 će se množiti sa odgovarajućim brojem, a sve u cilju slanja
odgovarajuće naredbe Arduino IDE.

44
Edin Muhedinović Završni rad

Ukoliko Labview softver šalje preko COM porta naredbu koja odgovara ‘5’ , u Arduino
memoriji je pohranjeno da ‘5’ odgovara plavoj boji, odnosno ‘6’ odgovara crvenoj i ‘7’
odgovara zelenoj boji. Ukoliko se komanda šalje u obliku broja ‘8’, manipulator ima zadatak
da izbaci kuglicu koja je neutvrđene boje. Na osnovu ovih vrijednosti Arduino će imati
mogućnost slanja naredbi izlaznim uređajima, a sve u cilju sortiranja objekata na
odgovarajuće mjesto.

9.3. Gravitacijski dozator sa rotacionim mehanizmom za izbacivanjem komada

Zadatak dozatora se ogleda u doziranju potrebnih komada u odgovarajućem vremenskom


intervalu. Za detektovanje objekata koji se nalaze u dozatoru ćemo koristiti USB video
kameru. Od naročitog je značaja konstruisanje dozatora u skladu sa objektima koji će se
koristi. Kako je u našem slučaju objekat manipulacije loptastog oblika potrebno je dizajnirati
dozator koji će biti kompatibilan sa tim objektom.

Slika 9.4. Gravitacijski dozator a) prednji pogled b) bočni pogled

Gravitacioni dozatori rade na principu gravitacionog djelovanja odnosno pomjeranje dijelova na


potrebno mjesto, djelovanje sile gravitacije. Uključivanjem rotacionog sistema gravitacijskog dozatora
dolazi do izbacivanja komada iz prostora dozatora. Sljedeći komad neće moći doći na potrebno mjesto
sve dok se rotacioni dio dozatora ne vrati u nulti položaj. Na ovaj način smo osigurani od grešaka koje
se mogu javiti, jer kao sistem detekcije objekata koristimo USB video kameru. To znači da sljedeći

45
Edin Muhedinović Završni rad

objekat ne može doći na potrebno mjesto detekcije sve dok čitava sekvenca sortiranja prethodnog
objekta nije izvršena.

9.4. Rotacioni sto

Rotacioni indeksirani stolovi imaju namjenu pomjeranja objekata u i izvan radnog prostora
robota u odgovarajućem intervalu. Mnogi od namjenskih sistema su izgrađeni oko rotacionog
stola. U ovom slučaju,više čvorova se nalaze oko periferije rotacionog stola i oprema
neophodna za svaku operaciju je grupisana u pojedinim tačkama oko stola. Obrtni stol će
izvršiti rotiranje za određeni ugao kada su sve operacije završene, pomjerajući dio na sljedeću
operaciju.

Slika 9.5. Rotacioni stol sistema robotske ćelije

Takođe je moguće iskoristi takozvani kontinuirani rotacioni stol sa operacijama koje se


izvršavaju na dijelovima koji se kreću. Na ovaj način je osiguran visok protok pošto se ne
gubi vrijeme pri zaustavljanju stola ali su ovi sistemi dosta kompleksniji. Rotacioni stolovi su
kompaktniji i jeftiniji od trakastog transportera i mogu ostvariti visoke protoke.

U našem slučaju rotacioni stol ima zadatak prenošenja detektovanih objekata sa dozatora do
radnog prostora robotske ruke. Na ovaj način predmet će se nalaziti bliže robotskoj ruci a i
osiguran je jednostavniji prihvat objekata.

46
Edin Muhedinović Završni rad

9.5. Robotski manipulator

Robotski manipulator je sastavni dio robotske ćelije. Robot je po definiciji reprogramabilni


fleksibilni manipulator sa mogućnošću reprogrramiranja, a predviđen je da prenosi materijale,
dijelove, alatke ili posebne naprave kroz različite programirane pokrete u svrhu ispunjavanja različitih
zadataka.

Robotska ruka –manipulator je takođe kinematički lanac tj. sastoji se iz triju kinematičkih parova. Na
donjem kraju robotske ruke pričvršćen je završni mehanizam-šaka robota ili prihvatnica. Osnovni
dijelovi koji su bili potrebni za formiranje robotske ruke u ovom projektu su sljedeći:

-servo motori

-vodilice i hvataljka

-mehanički profili

-vijci za učvršćivanje

Slika 9.6. Izgled robotskog manipulatora ćelije

Robotski manipulator posjeduje tri SG90 mikro servo motora mase 9 grama i tri TowerPro MG995
servo motora mase 55 grama. Primjenom ovih motora, ovaj robotski manipulator osvaruje pet stepeni
slobode kretanja, a napajanje svih motora se ostvaruje 5 V napojnom jedinicom.

47
Edin Muhedinović Završni rad

9.5.1. Programiranje putanje robotskog manipulatora postupkom vođenja

Ideja ovog pristupa je da se u fazi obučavanja robot vodi putanjom koja se zahteva pri
izvršenju zadatka. Tada robot pamti izvršeno kretanje i ponavlja ga kada se to od njega zahteva
tj. u fazi praktičnog rada.Ovo je bila osnovna ideja, dakle obučavanje pokazivanjem. U našem
slučaju iskorištena je metoda posrednog vođenja.

Posredno vođenje je savremeniji način programiranja robota. Robot se kreće sledeći komande
koje čovek-operator zadaje pomoću jedne vrste upravljača (najčešći engleski termin je: teach
pendant). Za upravljanje radom robotske ruke u Labview softverskom paketu razvijen je
program koji igra ulogu digitalnog upravljača a sve u cilju dobivanje potrebnih uglova
zakretanja servo motora koje su neophodne za postavljanje robotske ruke u određenu poziciju.

Slika 9.7. Određivanje pozicije manipulatora primjenom Labview softvera

Za vođenje robota koristićemo šest dugmadi. Svakim od dugmadi vodimo po jedan zglob
robota. Okretanjem dugmeta u desnu stranu zglob se obrće u pozitivnom smeru, a okretanjem
dugmeta na lijevu stranu u negativnom. Na ovaj način, vođenjem jednog po jednog zgloba,
dovešćemo završni uređaj u položaj koji se zahteva.Taj položaj ćemo zapamtiti i unijeti u
Arduino softver.

Sada robot vodimo do drugog položaja koji se pamti, a postupak se ponavlja dok se u
potpunosti ne definiše zadatak. Brzina vođenja može se podešavati u Arduinovom softveru
zbog primjene VarSpeedServo biblioteke. Na ovaj način je omogućeno definisane pojedinih
koordinata kretanja robotskog manipulatora bez primjene inverzne kinematike.

48
Edin Muhedinović Završni rad

Slika 9.8 Način vođenja robota

9.6. Elektronička šema

Na sljedećoj slici je prikazana elektronska šema spajanja komponenti korištenih pri izradi
završnog rada

Slika 9.9. Elektronička šema spajanja

49
Edin Muhedinović Završni rad

Na slici 9.9 prikazan je način spajanja komponenti sa Arduinom. Kako MG995 servo motori
zahtjevaju jaču struju koja se može kretati i do 1000 mA bilo je potrebno koristiti napojnu
jedinicu koja u određenom trenutku može isporučiti minimalno 5 A jer Arduino ploča ne bi
mogla izdržati takvu konsumpciju električne struje. Na ovu napojnu jedinicu je bilo potrebno
spojiti i tri SG90 servo motora sa konsumpcijom električne struje koja u određenom trenutku
može iznositi i do 500 mA. Drugo napajanje potiče od same Arduino ploče koja je imala zadatak
napajanje RGB LED-a za indikaciju detektovane boje u procesu rada robotske ćelije. RGB LED
posjeduje 4 izlaza od kojih se 3 spaja na pinove Arduina dok je jedan izlaz zadužen za
uzemljenje. Svaki od izlaza RGB LED koji ulazi u Arduino pinove je bilo potrebno spojiti na
330 Ω otpornik. Osim servo motora, na 5V napojnu jedinicu bilo je i potrebno spojiti 4 diode čiji
je zadatak bio osvjetljenje objekta manipulacije a sve u cilju pravilne detekcije boje objekta a na
kraju i samog sortiranja.

50
Edin Muhedinović Završni rad

10.ZAKLJUČAK
Vizijski sistemi sve se više koriste u industriji gdje zamjenjuju različite kontaktne i
bezkontaktne senzore te ljudski rad. Pomoću njih procesi proizvodnje i montaže mogu se uvelike
pojednostaviti i ubrzati. Problem vizijskih sustava jest taj da je vizijski sistem toliko dobar koliko
je dobra kamera koja se koristi za akviziciju slike.

U ovom radu programiran je i eksperimentalno provjeren vizijski sistem robotske ćelije. Kao
kamera vizijskog sustava korištena je web-kamera koja se u određenim uvjetima pokazalo lošom
opremom tj. odabirom. Neki od nedostataka korištene web-kamere su: uveliko je ovisna o
osvjetljenju – bolje radi tijekom dana kada je prisutno prirodno svjetlo nego navečer i noću;
nema mogućnosti samopodešenja fokusa – moguće je pretraživati područje samo s jedne visine s
malim odstupanjima, što je loše jer je nemoguće obaviti približavanje i detaljniju inspekciju
pronađenog objekta; rezultat njene unutarnje funkcije kojom prepoznaje boje mogu biti
iskrivljene vrijednosti boja, čime se onemogućava prepoznavanje boja objekta.

Prednosti ovog vizijskog sistema su da je on programiran kao modularna aplikacija, čime se


olakšava buduće mijenjanje dijelova programa, te da nije vezan uz tačke okoline – kalibracija,
preuzimanje i odlaganje mogu se vršiti na bilo kojem mjestu unutar radnog prostora robota.
Buduća poboljšanja sistema trebala bi uključivati ugradnju kvalitetnije kamere - čime bi se
ubrzao i olakšao proces prepoznavanja boje. Takođe, poboljšanje sistema se može ostvariti u
domeni optimizacije putanje robota. U ovom radu, robot ima samo mogućnost kretanja ‘tačka po
tačka’, što bi predstavljao problem ukoliko se radi o robotskim ćelijama koje rade u
industrijskim okruženju gdje se zahtjeva velika brzina u pogledu dostizanja određenih pozicija.
Poboljšanje se takođe može ostvariti u povećanju brzine okretanja servo motora robotske ruke.
Međutim, u toj oblasti imamo ograničenja zbog djelovanja inercijalnih sila na komponente
robotske ruke koje mogu uzrokovati neželjeno pomjeranje robota koje dalje djeluje na
nemogućnost postizanja pojedinih pozicija pri sortiranju. Sve u svemu, ovaj rad može poslužiti
kao osnova za daljnje razvijanje vizijskih sistema koji će se baviti prepoznavanjem i sortiranjem
predmeta.

51
Edin Muhedinović Završni rad

Literatura:

1. Iserman,R.; “ Mechatronic System “, Springer , London 2003.

2. Prljača N., Šehić Z.;“Automatsko upravljanje“, Mikroštampa, Tuzla 2008.

3. Abduli R.: Elektrohidraulički servosistemi, Vojno izdavački i novinski centar, Beograd 1988.

4. Heimann,B. Gerth,W.,Popp,K.:“Mechatronik“ Fachbuchverlag,Leipzig,2007.

5. Šarić,B., Osmanović, A.: “Mehatronički sistemi – Aktuatori sa rješenim zadacima“,


Mikroštampa, Tuzla, 2013.

7. Določek V., Karabegović I., ‘’Robotika’’, Tehnički fakultet Bihać 2002.

8. Arduino https://www.arduino.cc/

52
Edin Muhedinović Završni rad

PRILOG Arduino kod

#include <VarSpeedServo.h>

VarSpeedServo dozator; // kreiranje servo objekata

VarSpeedServo rotacioni;

VarSpeedServo servo1;

VarSpeedServo servo2;

VarSpeedServo servo3;

VarSpeedServo servo4;

VarSpeedServo servo5;

VarSpeedServo hvataljka;

int redPin=12;

int bluePin=10;

int greenPin=11;

void setup() {

// put your setup code here, to run once:

pinMode(bluePin, OUTPUT);

pinMode(greenPin, OUTPUT);

pinMode(redPin, OUTPUT);

pinMode(13,OUTPUT);

digitalWrite(13,LOW);

dozator.attach(2);

rotacioni.attach(3);

servo1.attach(4);

53
Edin Muhedinović Završni rad

servo2.attach(5);

servo3.attach(6);

servo4.attach(7);

servo5.attach(8);

hvataljka.attach(9);

Serial.begin(9600);

setColor(255, 255, 255);

hvataljka.write(90, 30, true);

delay(5);

servo1.write(90, 30, true);

delay(5);

servo2.write(90, 30, true);

delay(5);

servo3.write(90, 30, true);

delay(5);

servo4.write(90, 30, true);

delay(5);

servo5.write(90, 30, true);

delay(5);

hvataljka.write(90, 30, true);

delay(5);

rotacioni.write(100, 30, true);

delay(5);

dozator.write(90, 70, true);

54
Edin Muhedinović Završni rad

void setColor(int redValue, int greenValue, int blueValue) {

analogWrite(redPin, redValue);

analogWrite(greenPin, greenValue);

analogWrite(bluePin, blueValue);

void loop() {

// put your main code here, to run repeatedly:

if(Serial.available()>0)

char data= Serial.read();

if (data=='7') // detektovana zelena boja

dozator.write(11, 70, true);

digitalWrite(greenPin, LOW);

delay(1500);

rotacioni.write(20, 50, true);

delay(250);

servo1.write(66, 40, true);

servo3.write(96, 40, true);

servo4.write(51, 40, true);

55
Edin Muhedinović Završni rad

servo2.write(127, 40, true);

hvataljka.write(31, 40, true);

delay(250);

servo1.write(89.2, 40, true);

delay(250);

hvataljka.write(94, 40, true);

delay(500);

servo3.write(94, 40, true);

servo4.write(51, 40, true);

servo3.write(92, 40, true);

servo2.write(105, 40, true);

servo4.write(49, 40, true);

servo2.write(97, 40, true);

servo3.write(90, 40, true);

servo2.write(90, 40, true);

servo4.write(90, 40, true);

servo4.write(70, 40, true);

servo1.write(140, 40, true);

servo2.write(100, 40, true);

servo3.write(92, 40, true);

servo5.write(45, 40, true);

hvataljka.write(60, 60, true);

delay(500);

digitalWrite(greenPin, HIGH);

hvataljka.write(90, 80, true);

56
Edin Muhedinović Završni rad

servo5.write(90, 80, true);

delay(5);

servo2.write(90, 70, true);

servo3.write(90, 70, true);

servo4.write(90, 70, true);

servo1.write(90, 60, true);

rotacioni.write(100, 60, true);

delay(5);

dozator.write(90, 70, true);

if (data=='6')

dozator.write(11, 70, true);

digitalWrite(redPin, LOW);

delay(1500);

rotacioni.write(20, 50, true);

delay(250);

servo1.write(66, 40, true);

servo3.write(96, 40, true);

servo4.write(51, 40, true);

servo2.write(127, 40, true);

hvataljka.write(31, 40, true);

delay(250);

servo1.write(89.2, 40, true);

delay(250);

57
Edin Muhedinović Završni rad

hvataljka.write(94, 40, true);

delay(500);

servo3.write(94, 40, true);

servo4.write(51, 40, true);

servo3.write(92, 40, true);

servo2.write(105, 40, true);

servo4.write(49, 40, true);

servo2.write(97, 40, true);

servo3.write(90, 40, true);

servo2.write(90, 40, true);

servo4.write(90, 40, true);

servo1.write(158, 40, true);

servo2.write(100, 40, true);

servo4.write(80, 40, true);

servo3.write(90, 40, true);

hvataljka.write(60, 40, true);

digitalWrite(redPin, HIGH);

delay(500);

hvataljka.write(90, 70, true);

servo2.write(90, 70, true);

delay(5);

servo3.write(90, 70, true);

delay(5);

servo4.write(90, 70, true);

delay(5);

58
Edin Muhedinović Završni rad

servo1.write(90, 60, true);

delay(5);

rotacioni.write(100, 60, true);

delay(5);

dozator.write(90, 70, true);

if (data=='5')

dozator.write(11, 70, true);

digitalWrite(bluePin, LOW);

delay(1500);

rotacioni.write(20, 50, true);

delay(250);

servo1.write(66, 40, true);

servo3.write(96, 40, true);

servo4.write(51, 40, true);

servo2.write(127, 40, true);

hvataljka.write(31, 40, true);

delay(250);

servo1.write(89.2, 40, true);

delay(250);

hvataljka.write(94, 40, true);

delay(500);

servo3.write(94, 40, true);

servo4.write(51, 40, true);

59
Edin Muhedinović Završni rad

servo3.write(92, 40, true);

servo2.write(105, 40, true);

servo4.write(49, 40, true);

servo2.write(97, 40, true);

servo3.write(90, 40, true);

servo2.write(90, 40, true);

servo4.write(90, 40, true);

servo1.write(126, 40, true);

servo4.write(64, 40, true);

servo3.write(80, 40, true);

servo2.write(114, 40, true);

servo5.write(45, 40, true);

hvataljka.write(60, 40, true);

digitalWrite(bluePin, HIGH);

servo5.write(90, 70, true);

delay(500);

hvataljka.write(90, 70, true);

delay(5);

servo2.write(90, 70, true);

delay(5);

servo3.write(90, 70, true);

delay(5);

servo4.write(90, 70, true);

delay(5);

servo1.write(90, 60, true);

60
Edin Muhedinović Završni rad

delay(5);

rotacioni.write(100, 60, true);

delay(5);

dozator.write(90, 70, true);

if (data=='8')

dozator.write(11, 70, true);

delay(1500);

rotacioni.write(20, 50, true);

delay(250);

servo1.write(66, 40, true);

servo3.write(96, 40, true);

servo4.write(51, 40, true);

servo2.write(127, 40, true);

hvataljka.write(31, 40, true);

delay(250);

servo1.write(89.2, 40, true);

delay(250);

hvataljka.write(94, 40, true);

delay(500);

servo3.write(94, 40, true);

servo4.write(51, 40, true);

servo3.write(92, 40, true);

servo2.write(105, 40, true);

61
Edin Muhedinović Završni rad

servo4.write(49, 40, true);

servo2.write(97, 40, true);

servo3.write(90, 40, true);

servo2.write(90, 40, true);

servo4.write(90, 40, true);

servo1.write(179.5, 40, true);

servo2.write(102, 40, true);

servo4.write(80, 40, true);

servo3.write(90, 40, true);

servo5.write(0, 60, true);

hvataljka.write(60, 40, true);

delay(500);

servo5.write(90, 70, true);

hvataljka.write(90, 70, true);

servo2.write(90, 70, true);

delay(5);

servo3.write(90, 70, true);

delay(5);

servo4.write(90, 70, true);

delay(5);

servo1.write(90, 60, true);

delay(5);

rotacioni.write(100, 60, true);

delay(5);

dozator.write(90, 70, true);

62
Edin Muhedinović Završni rad

63

You might also like