• Rezultati Niso Bili Najdeni

2.1 Zahteve naročnika

Naročnik linije se primarno ukvarja s sestavljanjem elektronskih naprav za avtomobilsko industrijo. Zaradi potrebe po veliki čistoči, kar pomeni, da ni prisotnosti prašnih delcev, je bilo potrebno linijo sestaviti tako, da je neprodušno zaprta in skladna s standardom »Cleanroom ISO6«. Ker se na večini postaj uporabljajo le dve kameri, je bilo mogoče za dve postaji uporabiti le en računalnik VC5. To pomeni, da si postaji WP1 in WP2 delita en VC5. Prav tako si po en računalnik delijo postaje WP4 in WP5, WP6 in WP7. WP8 in WP10 imata vsaka svoj VC5, ker se pri njiju uporablja po šest kamer. Zaradi večjega števila kamer, je bilo potrebno uporabiti preklopnik (ang.

switch) za kameri, ki sta uporabljeni za pošiljanje odlagalne pozicije robotu. Razlog preklapljanja je v tem, da ti dve kameri nikoli ne delujeta istočasno. Z istim razlogom je tudi pri postaji WP7 uporabljen preklopnik pri kamerah, ki sta usmerjeni na odlagalno pozicijo. Postaja WP9 ima svoj VC5 in štiri kamere, kolikor je tudi kanalov na VC5.

Ena od posebnih zahtev naročnika je bila tudi dvojezičnost uporabniških vmesnikov, saj se podjetje nahaja v Romuniji.

Dodatna zahteva, oz. nadgradnja naročnika je bila, da se recepti za programe med LHD in RHD, menjajo samodejno ob vstopu palete v postajo, kar se je rešilo z uporabo radiofrekvenčne identifikacije (ang. Radio Frequency IDentification – RFID).

2.2 Delovni cikel postaje WP7

Postaja WP7 na podnožje odloži zadnjo dolgo folijo in zarezni trak. Delovanje postaje je naslednje. Pred začetkom delovanja se preveri ali so vsi začetni in varnostni pogoji izpolnjeni. Ob izpolnjevanju vseh teh pogojev, je postajo mogoče zagnati na uporabniškem vmesniku PLK-ja. Če je bila postaja predhodno resetirana, se najprej izvede inicializacija programa. Inicializacija postavi vse vrednosti kamere v osnovno stanje, premakne robotski manipulator v začetno lego, če ta še ni v njej, postavi vse servo motorje, ki so potrebni za podajanje folije, v začetne položaje, postavi podajalno mizo v osnovni položaj in napne podajalno folijo zareznega traku.

Po končani inicializaciji se zažene delovni cikel. Pri tem podajalec folije najprej preveri ali je na podajalni mizi že prisotna folija. Če folije ni, jo mehanizem poda na mizo, ta pa se premakne na opazovalno pozicijo kamere. V primeru, da je folija že prisotna, se miza postavi v opazovalno pozicijo kamere. Kamera hkrati zajame sliko folije in zareznega traku, s čimer se določi njun položaj in orientacija. V primeru, da

18 2 Opis proizvodnje linije

na mizi zareznega traku ni prisotnega nobenega kosa, se podajalna folija prevrti naprej za fiksno vrednost. Prevrti se za toliko kolikor je potrebno, da se pomakne za tri mesta zareznega traku. Po končanem vrtenju se slika zajame ponovno. Postopek se ponavlja dokler na mizi ni zaznanega kosa. Manipulator najprej pobere folijo in jo odloži na podnožje, za tem pa se zarezni trak postavi v pobiralno pozicijo, kamera pa še enkrat zajame sliko le-tega. Manipulator se premakne v položaj za pobiranje zareznega traku, ki je izven vidnega območja kamere nad odlagalno pozicijo. V tem času kamera zajame sliko odlagalne pozicije, manipulator pa namesti zarezni trak. Ko ga manipulator namesti, se umakne v osnovno pozicijo, kamera pa zajame sliko še enkrat, tokrat za pregled odlaganja. Medtem ko manipulator odlaga zarezni trak, se na podajalno mizo že poda nova folija. Cikel se ponavlja, dokler v sistemu ni nobene napake.

19

3 Strojna oprema

V tem poglavju je opisana vsa potrebna strojna oprema, ki se je uporabila za izgradnjo sistema. Podrobneje so predstavljene kamere, objektivi, načini osvetlitve ter industrijski računalnik, namenjen za aplikacije strojnega vida.

3.1 Kamere

Za izvedbo projekta so bile uporabljene štiri industrijske kamere. Za pregled folij in za doziranje zareznega traku se uporabljata kameri CAM-CIC-12MR proizvajalca Cognex, za pregled in sporočanje odlagalne pozicije pa se uporabljata kameri CAM-CIC-5000R, prav tako proizvajalca Cognex. Kamere CAM-CIC zajemajo slike v monokromatski tehniki, uporabljajo zaklop na osnovi lamel oziroma zaves ter z računalnikom komunicirajo preko protokola GigE (Gigabit Ethernet), saj je velikost slik dokaj velika, odzivni čas pa mora biti čim krajši. Kamere uporabljajo senzor svetlobe tipa CMOS. Glavna razlika med tipoma kamer 12MR in 5000R je, da ima prva ločljivost dvanajst mega pikslov in frekvenco zajema osem sličic na sekundo, druga pa ločljivost pet mega pikslov in frekvenco zajema štirinajst sličic na sekundo.

Kamere imajo dva priključka, in sicer enega za priklop kabla Ethernet, drugega pa za uporabo vhodnih in izhodnih signalov v kamero oz. iz kamere. Vhodni in izhodni elementi so varovani z optičnim spojnikom, njihovo funkcionalnost pa se nastavlja v programu Cognex Designer, v katerem se nastavlja tudi čas osvetlitve senzorja. V primeru tega projekta so se uporabljali izhodni signali za proženje luči. Kamera je napajana preko sistema PoE (ang. Power over Ethernet), kar pomeni napajanje preko Etherneta. Na sliki 3.1 je prikazana kamera CAM-CIC tipa A [3].

20 3 Strojna oprema

Slika 3.1: industrijska kamera Cognex CIC

3.2 Objektivi

Poleg kamere je objektiv naslednji najpomembnejši del za zajem ustreznih slik.

Industrijski objektivi, ki so uporabljeni v tem projektu, omogočajo nastavitev zaslonke in ostrine. V tem podpoglavju bom opisal osnovno sestavo in funkcionalnost takšnega objektiva.

Neglede na njihov namen, je osnovni princip delovanja pri vseh objektivih enak, pa naj bodo namenjeni fotografiranju, snemanju ali industrijskim aplikacijam. V osnovi je objektiv sestavljen iz več konveksnih in konkavnih leč ter iz zaslonke. Slika 3.2 prikazuje lečo z goriščno razdaljo 16 mm proizvajalca Edmund Optics [4].

Slika 3.2: Primer objektiva z goriščno razdaljo 16 mm.

3.2 Objektivi 21

3.2.1 Zaslonka

Zaslonka je nastavljiva odprtina, skozi katero potuje snop svetlobe. Širina te odprtine vpliva na količino svetlobe, ki pride do senzorja v kameri ter tudi na globinsko ostrino zajete slike. Bolj kot je zaslonka odprta, več svetlobe pride do zaklopa, prav tako pa se zmanjša tudi globinska ostrina slike. Le-ta pove koliko predmetov na sliki ima še ustrezno ostrino, in sicer pred in po najbolj ostri točki, ki jo zajamemo. Zaslonka se odpira oziroma zapira po korakih, ki se imenujejo f-stop. F-stop število je podano z enačbo 3.1, kjer je N število f-stop, f je goriščna razdalja objektiva, D pa odprtina zaslonke. Število D je določeno kot potence kvadratnega korena števila dva, kar prikazuje enačba 3.2 [5].

𝑁 = 𝑓

⁄𝐷 (3.1)

𝐷1 = √21 ≈ 1,4 , 𝐷2 = √22 = 2 , 𝐷3 = √23 ≈ 2.8 , 𝐷4 = √24 = 4 … (3.2)

Na sliki 3.3 je prikazan primer odprtine zaslonke glede na število f-stop.

Slika 3.3: Primer odprtosti zaslonke

3.2.2 Goriščna razdalja

Goriščna razdalja objektiva določa razdaljo od prve leče na kameri do točke kjer se snop svetlobe združi v eno točko. Goriščna razdalja je pri objektivih uporabljenih v predstavljenem projektu fiksna ter govori o tem, kolikšen je vidni kot objektiva. Večja

22 3 Strojna oprema

kot je goriščna razdalja, ožji je kot vidnega polja. Ožji kot je kot vidnega polja, bolj podrobna je končna slika. Kot vidnega polja se izračuna z enačbo 3.3, kjer je x diagonala senzorja kamere, f pa goriščna razdalja. Enačba približno določa vidno polje kamere, saj senzor ni kvadratne oblike, ampak je običajno pravokoten, kar pomeni, da je vidni kot po dolžini senzorja širši kot pa po širini senzorja. Ista enačba se lahko uporablja tudi za izračun vidnega polja po širini in dolžini senzorja.

𝐾𝑜𝑡 𝑣𝑖𝑑𝑛𝑒𝑔𝑎 𝑝𝑜𝑙𝑗𝑎 = 2 ∗ 𝑎𝑟𝑐𝑡𝑎𝑛 𝑥

2∗𝑓 (3.3)

3.2.3 Izbira objektiva

Pri izbiri objektiva je potrebno poznati dimenzije območja pregleda, razdaljo med kamero in območjem pregleda ter dimenzije senzorja kamere. Zajeti je potrebno le območje, ki je nujno za razpoznavanje, saj zajem širšega področja predstavlja izgubo ločljivosti slike. Za izbiro ustreznega objektiva sta v pomoč dve enačbi, in sicer enačba 3.4, s katero izračunamo potreben kot, da celotno pregledno območje zajamemo na sliki, ter enačba 3.5, s katero preračunamo kot v goriščno razdaljo.

𝜑 = arctan𝑑𝑖𝑚𝑒𝑛𝑧𝑖𝑗𝑎 𝑚𝑖𝑧𝑒

𝑣𝑖š𝑖𝑛𝑎 𝑘𝑎𝑚𝑒𝑟𝑒 (3.4)

𝑓 = 𝑑𝑖𝑚𝑒𝑛𝑧𝑖𝑗𝑎 𝑠𝑒𝑛𝑧𝑜𝑟𝑗𝑎

2∗tan𝜑2 (3.5)

Pri kameri, ki je postavljena nad folijo, je diagonala mize približno 600 mm, oddaljenost kamere približno 1000 mm, diagonala senzorja kamere pa znaša 9,33 mm.

Ker se pri končnem sestavljanju vedno pojavijo napake, bodisi zaradi napake pri montiranju bodisi pri proizvodnji kosov, se za izračun uporabljajo približki končne sestave. Ker imajo objektivi fiksno goriščno razdaljo, ne moremo določiti optimalne goriščne razdalje, izberemo pa lahko najboljši približek. Za pomoč pri računanju goriščne razdalje sem v programskem jeziku C# napisal kratek program.

Program deluje preko okna z ukaznim pozivnikom, ki ga prikazuje slika 3.4, kodo programa pa slika 3.5. Najprej si izberemo način računanja, ki je lahko:

1. Računanje z diagonalo mize.

2. Računanje z dolžino in širino mize

3. Računanje z znano goriščno razdaljo za pridobitev velikosti mize.

V primeru, da izberemo računanje z diagonalo mize, je najprej potrebno vpisati diagonalo senzorja, za tem diagonalo mize, nato pa še razdaljo med kamero in mizo.

Ko so vneseni vsi podatki, se izpiše potrebna goriščna razdalja leče. Pri računanju z

3.2 Objektivi 23

diagonalo se najprej uporabi enačba 3.4, kjer se izračuna kot. Izračunani kot se za tem uporabi še v enačbi 3.5. Rezultat se zaokroži na dve decimalki in se izpiše v oknu.

Za računaje z dolžino in širino mize se enako kot pri računanju z diagonalo najprej uporabi enačba 3.4 in za tem 3.5, le da se uporabi dvakrat, in sicer za vsako dimenzijo posebej.

Drugače je pri računanju z že znano goriščno razdaljo. Tu se najprej vnese diagonala senzorja, nato razdalja med kamero in mizo, za tem pa se vnese še goriščna razdalja objektiva. Rezultat je maksimalna diagonala mize. Za izračun se najprej uporabi enačba 3.6, za tem pa še enačba 3.7. Primer izračuna je viden na sliki 3.4.

𝜑 = 2 ∗ arctan𝑑𝑖𝑎𝑔𝑜𝑛𝑎𝑙𝑎 𝑠𝑒𝑛𝑧𝑜𝑟𝑗𝑎

2∗𝑓 (3.6)

𝑑𝑖𝑎𝑔𝑜𝑛𝑎𝑙𝑎 𝑚𝑖𝑧𝑒 = tan 𝜑 ∗ 𝑣𝑖𝑠𝑖𝑛𝑎 𝑘𝑎𝑚𝑒𝑟𝑒 (3.7)

Slika 3.4: Okno z ukaznim pozivnikom za računanje z diagonalo

24 3 Strojna oprema

Slika 3.5: Program za določanje goriščne razdalje

3.2 Objektivi 25

Izračun za objektiv kamere, ki je nameščena nad folijo, je znašal 16,84 mm, kar pomeni, da je najbližji približek leča, ki ima 16 mm goriščne razdalje. Odstopanje sem pri končni izdelavi kompenziral tako, da sem kamero nekoliko dvignil, da je bila celotna miza zajeta na sliko. Na sliki 3.6 je prikazan sistem strojnega vida za podajanje folije.

Slika 3.6: Podajalec folij

Pri kameri, ki je postavljena nad podajalcem zareznega traku, je oblika opazovane mize ozka in dolga. Zaradi takšne oblike za preračun goriščne razdalje nisem uporabil diagonale mize, temveč dolžino in širino senzorja ter mize. Širina mize je bila v tem primeru 70 mm, dolžina 300 mm, dimenzija senzorja pa 5,64 mm (širina) x 7,53 mm (dolžina). Razdalja med kamero in površino je znašala 600 mm. Izračunal sem, da naj bo goriščna razdalja po dolžini 15,59 mm, po širini pa 48,51 mm. Uporabil

26 3 Strojna oprema

sem lečo z goriščno razdaljo 16 mm. Slika 3.7 prikazuje končno postavitev sistema za pregled zareznega traku.

Slika 3.7: Podajalec zareznega traku

Kameri, ki opazujeta odlagalno pozicijo, sta tipa CIC-5000R. Dimenzije tega senzorja so drugačne kot pri kamerah CIC-12MR. Dolžina senzorja je 5,70 mm, širina 4,28 mm, diagonala pa 7,13 mm. Diagonala opazovane odlagalne pozicije je 250 mm, kameri pa sta od nje oddaljeni 970 mm. Izračunana goriščna razdalja je 28,12 mm, uporabljen pa je bil najboljši približek, tj. 25 mm. Slika 3.8 prikazuje odlagalno pozicijo zareznega traku.

3.3 Luči 27

Slika 3.8: Odlagalna pozicija zareznega traku.

3.3 Luči

Osvetlitev predstavlja pomemben del vsakega sistema za strojni vid. Pred izbiro ustreznih luči je potrebno poznati kako je predmet, ki ga opazujemo, zgrajen in katero informacijo želimo s slike pridobiti. Informacija, ki jo iščemo je lahko bodisi pozicija predmeta bodisi njegove dimenzije ali pa samo prisotnost neke določene značilke.

Glede na želeno informacijo se določi tip luči ter njihova pozicija, ki pomembno vpliva na kakovost zajete slike [1].

Pri zajemu slik lahko prihaja tudi do neželenega bleščanja. Bleščanje lahko povzroči zunanji dejavnik, kot npr. sonce ali različna razsvetljava prostora, ali pa luči, ki so namenjene strojnemu vidu. Tovrstne motnje lahko močno vplivajo na kvaliteto zajete slike, saj določenih značilk ni mogoče razpoznati, če opazovani predmet ni pravilno osvetljen. Da zmanjšamo vpliv zunanjih virov svetlobe na kvaliteto zajete slike, je sistem za strojni vid običajno postavljen v temni prostor.

3.3.1 Luči pri podajalcu zareznega traku

Pri podajalcu zareznega traku je luč postavljena ob strani in višje od opazovane mize. Barva luči je rdeča, saj je ta barva zelo primerna za razpoznavanje kontrasta med črnim zareznim trakom in srebrno mizo, na kateri se ga podaja. Rdeča barva zaradi svoje dolge valovne dolžine poudari kontrast. Pri testiranju različnih postavitev sem ugotovil, da je ta postavitev in rdeča barva, najprimernejša za to aplikacijo. Končna postavitev luči je vidna na sliki 3.7. Za optimalno pozicijo luči sem opravil dva testa,

28 3 Strojna oprema

in sicer postavitev luči s strani ter postavitev obročaste luči pod kamero, pri čemer kamera zajema sliko skozi njo.

Prvi test je bil opravljen z belo paličasto LED sijalko. Belo barvo sem uporabil samo za testiranje pozicije, ker v podjetju takrat ni bilo na voljo sijalke rdeče barve.

Sijalka je bila postavljena s strani, približno deset centimetrov višje od opazovanega predmeta. Slika, ki jo pri takšni konfiguraciji zajame kamera, je vidna na sliki 3.9.

Slika 3.9: Primer testa z lučjo bele barve od strani

Pri drugem testu sem uporabil obročasto luč, ki je postavljena nad opazovanim predmetom, kamera pa sliko zajema skozi obroč luči. Izkazalo se je, da je takšna postavitev neprimerna, zaradi prevelikega odboja svetlobe z zareznega traku in folije, na kateri se zarezni trak podaja. Slika, ki jo pri takšni konfiguraciji zajame kamera, je vidna na sliki 3.10. Druga postavitev je neprimeren tudi zato, ker je zarezni trak lahko poškodovan ali ima mehurček, česar kamera pri takšni postavitvi ne zazna.

3.3 Luči 29

Slika 3.10: Primer testiranja z lučjo bele barve z vrha

Na sliki 3.11 je prikazana zajeta slika kamere pri končnem izdelku. Kot je vidno je kontrast med mizo in zareznim trakom zelo izrazit, podajalna folija pa je povsem neopazna.

Slika 3.11: Končna slika podajalca zareznega traku

30 3 Strojna oprema

3.3.2 Luč pri podajalcu folije

Pri podajalcu folije je bil koncept postavitve luči sprva zasnovan tako, da bi bile luči nameščene nad folijo ter usmerjene proti njej, kot prikazano na sliki 3.12. Izkazalo se je, da takšna postavitev ni ustrezna, saj je material, iz katerega je narejena folija, odbijal svetlobo le na mestu kamor je svetila luč.

Slika 3.12: Prva postavitev luči pri podajalcu folije

Problem sem najprej želel rešiti z uporabo difuzorja, kar pa se ni izkazalo za dovolj dobro rešitev, saj je bila folija še vedno osvetljena le na določenih delih. Za končno rešitev sem uporabil kupolo, ki je bila nameščena nad folijo. Luči pri tem svetijo navzgor v kupolo, kamera pa je postavljena za kupolo in zajema sliko skozi luknjo v njej. Kupola je bele ne svetleče barve, s čimer dosežemo čim boljšo razpršitev svetlobe. Za izdelavo kupole sem najprej uporabil bel karton, ko pa se je izkazalo, da je rešitev ustrezna, se je končni izdelek izdelal iz pločevine. Slika 3.6 prikazuje končno postavitev kupole, kamere in luči.

3.3 Luči 31

Za razliko od luči pri podajalcu zareznega traku, so luči pri podajalcu folije modre barve, saj modra barva zelo dobro poudari razliko med mizo in folijo. Folija je sicer sive barve, ampak jo zaradi materiala, iz katerega je izdelana, modra barva poudari. Sliko, ki jo zajame kamera v takšni konfiguraciji, prikazuje slika 3.13.

Slika 3.13: Končna slika folije

3.3.3 Luč pri odlagalni poziciji

Luč pri odlagalni poziciji sem postavil s strani, in sicer iz nasprotne kot je postavljena kamera. Postavitev luči je prikazana na sliki 3.8. V tem primeru je barva luči rdeča, saj je pri odlagalni poziciji potrebno preverjati natančnost odlaganja zareznega traku. Enako kot pri podajalcu zareznega traku, je tudi pri odlaganju potrebno doseči zadosten kontrast med zareznim trakom, ki je črne barve in podlago, ki je sive barve.

Razlog za postavitev luči s strani je v preverjanju ali so na odloženem kosu napake, kot npr. mehurčki, kateri se lahko pojavijo zaradi napake pri prijemanju zareznega traku. Pri testiranju konfiguracije se je izkazalo, da se zaradi postavitve luči na sliki pojavlja senca, ki je zelo moteča in ovira razpoznavanje slike. Problem sem sprva poskušal rešiti z naklonom luči, kar pa ni doseglo želenega učinka. Luč je bilo potrebno premakniti višje, kar pa je posledično vodilo do oviranja robotskega manipulatorja. Problem sem rešil tako, da sem celoten nosilec luči premaknil na drugo stran celice.

32 3 Strojna oprema

3.4 Programirljivi logični krmilnik

Programirljivi logični krmilnik (PLK) je digitalna elektronska naprava, ki na podlagi ukazov, shranjenih v programirljivim pomnilniku, izvaja logične, sekvenčne, časovne in aritmetične operacije ter s tem vodi različne naprave in procese preko binarnih in analognih vhodov in izhodov [2].

V tem sistemu je uporabljen logični krmilnik Siemens in sicer, serije S7-1500.

Simatic S7-1500 je ena od mnogih serij programirljivih logičnih krmilnikov nemškega proizvajalca Siemens. Krmilniki so ena od najpomembnejših komponent znotraj proizvodne linije, saj nanj priključimo vse ostale komponente krmiljenja v obliki vhodno-izhodnih enot, preko katerih dobimo in pošiljamo ukaze do izvršilnih enot.

Industrijski krmilniki morajo biti robustni in odporni na motnje, saj je v industriji potrebna natančnost in zanesljivost, s čimer se prepreči materialna škoda, zaradi nenatančnosti izdelkov ter zaradi zaustavitev proizvodnih strojev in linij.

Povezava med kamero in robotskim manipulatorjem je vzpostavljena preko tega krmilnika, ki skrbi tudi za krmiljenje celotne postaje. Vse informacije in ukazi se pošiljajo preko krmilnika. Za vsak zajem slike je potreben ukaz krmilnika. Ko se program na VC5 zaključi, se podatki pošljejo krmilniku, ta pa ji nato pošlje manipulatorju.

3.5 Računalnik VC5

Cognex VC5 je industrijski računalnik namenjen strojnemu vidu. Za komunikacijo ima na voljo dvoje vrat LAN, štiri vrata GigE, ena vrata I-ENET in ena vrata RS232. Za različne senzorje ima na voljo dva priključka DB15 in štiri vhode za enkoderje. Na voljo ima tudi osem vhodov in šestnajst izhodov. Za komunikacijo s PLK sem uporabil protokol PROFINET. Poleg omenjenega ima VC5 na voljo tudi tri vrata USB in en izhod VGA. Vrata GigE imajo možnost napajanja preko etherneta in so namenjena priključitvi kamer. Na računalniku je nameščena vsa programska oprema, potrebna za avtomatizirano obdelavo slik. Razvojni program, ki je na računalniku, se imenuje Cognex Designer, verzija 2.6. Operacijski sistem je Windows 8.1 embeded. Računalnik VC5 je proizvajalec sicer umaknil iz prodaje, zaradi nestabilnosti, vendar pa naročnik zahteva uporabo računalnika VC5. Med izvajanjem projekta sem ugotovil, da ima VC5 veliko pomanjkljivost oz. napako, in sicer to, da se slike shranjujejo na notranji disk SSD. V primeru okvare diska je potrebna zamenjava celotnega računalnika. Problem sem rešil tako, da sem za hranjenje slik uporabil USB ključ. Računalnik VC5 prikazuje slika 3.14 [6].