• Rezultati Niso Bili Najdeni

Sinhronizacija robotske roke v Visual Components Premium z virtualnim krmilnikom URSim

N/A
N/A
Protected

Academic year: 2022

Share "Sinhronizacija robotske roke v Visual Components Premium z virtualnim krmilnikom URSim"

Copied!
43
0
0

Celotno besedilo

(1)

UNIVERZA V LJUBLJANI Fakulteta za strojništvo

Sinhronizacija robotske roke v Visual Components Premium z virtualnim krmilnikom URSim

Katarina Medved

Zaključna naloga Univerzitetnega študijskega programa I. stopnje

Strojništvo - Razvojno raziskovalni program

(2)
(3)

UNIVERZA V LJUBLJANI Fakulteta za strojništvo

Sinhronizacija robotske roke v Visual Components Premium z virtualnim krmilnikom URSim

Zaključna naloga Univerzitetnega študijskega programa I. stopnje Strojništvo - Razvojno raziskovalni program

Katarina Medved

Mentor: doc. dr. Marko Šimic, univ. dipl. inž.

Somentor: prof. dr. Niko Herakovič, univ. dipl. inž.

Ljubljana, september 2021

(4)
(5)

Zahvala

Zahvaljujem se mentorjema, ki sta me vodila pri izdelavi zaključne naloge. Zahvala gre tudi družini in prijateljem, ki so med študijem podpirali.

(6)
(7)

Izvleček

UDK 621.865.8:004.451.62(043.2) Tek. štev.: UN I/1587

Sinhronizacija robotske roke v Visual Components Premium z virtualnim krmilnikom URSim

Katarina Medved

Ključne besede: virtualni zagon virtualni krmilnik

Visual Components Premium URSim

metoda programske opreme v zanki

Obravnavan je problem povezave virtualnega modela robota podjetja Universal Robots v Visual Components Premium z virtualnim krmilnikom URSim. Povezave med virtualnimi roboti in virtualnimi krmilniki so temelj za konstruktivni (metoda programske opreme v zanki) zagon proizvodnje. Ta način priprave na proizvodnjo se je v zadnjih letih izkazal za učinkovitega, saj lahko veliko napak v delovanju načrtovane proizvodnje ugotovimo v tej fazi in se jim tako posledično lahko izognemo pri fizičnemu zagonu proizvodnje. Ker so dosedanja navodila za izvedbo povezave med URSim krmilnikom in Universal Robots robotom v programu Visual Components Premium pomanjkljiva ter od uporabnika pričakujejo predznanja s področja uporabe virtualnih računalnikov, smo postopek vzpostavitve povezave podrobno opisali in podali navodila za odpravljanje napak. Izdelana

(8)

Abstract

UDC 621.865.8:004.451.62(043.2) No.: UN I/1587

Synchronization of a robot arm in Visual Components Premium with the URSim virtual controller

Katarina Medved

Key words: virtual commissioning virtual controller

Visual Components Premium URSim

Software-in-the-Loop

We discuss the problem of connecting a virtual model of a Universal Robots robot in Visual Components Premium with the URSim virtual controller. The connection between virtual robots and virtual controllers are the basis for constructive (Software-in-the-Loop) commissioning. This method of commissioning has been proven to be effective in recent years, as many errors in the operation of a planned production can be identified at this stage and thus can be avoided in real commissioning. Because the current instructions for connecting the URSim controller and the Universal Robots robot in Visual Components Premium are deficient and the user is expected to have prior knowledge in the use of virtual machines, we described the connection process in detail and provided troubleshooting instructions. A robot cell and a robot movement program were developed for the purpose of displaying the operation of the controller and the simulation.

(9)

Kazalo

Kazalo slik ... xi

Seznam uporabljenih okrajšav ... xii

1 Uvod ... 1

1.1 Ozadje problema ... 1

1.2 Cilji ... 1

2 Teoretične osnove in pregled literature ... 2

2.1 Načini zagona proizvodnje ... 2

2.2 Virtualni zagon proizvodnje ... 2

2.2.1 Modeliranje simulacije procesa ... 3

2.2.2 Metoda strojne opreme v zanki ... 4

2.2.3 Metoda programske opreme v zanki ... 4

2.3 Digitalni dvojček ... 5

3 Metodologija raziskave ... 6

3.1 Obravnava virtualnih okolij in programov ... 6

3.1.1 Visual Components Premium ... 6

3.1.2 URSim ... 6

3.1.3 VirtualBox ... 7

3.1.4 7-Zip ... 7

3.2 Povezava robota v VCP z virtualnim krmilnikom URSim ... 8

3.2.1 Vklop virtualizacije ... 8

3.2.2 Ustvarjanje novega virtualnega računalnika ... 9

3.2.3 Prilagoditev nastavitev virtualnega računalnika ... 11

3.2.3.1 Nastavitve zaslona virtualnega računalnika ... 12

3.2.3.2 Nastavitve omrežja virtualnega računalnika ... 12

3.2.3.3 Deljenje mape med gostiteljskim in virtualnim računalnikom ... 13

3.2.4 Preverjanje ustreznosti nastavitev virtualnega računalnika ... 14

3.2.5 Dokončanje nastavljanja deljene mape ... 16

3.2.6 Nastavitev povezljivosti v VCP ... 16

3.2.7 Povezava VCP in URSim ... 17

(10)

3.3.2 Izvajanje programa ... 22

4 Rezultati in diskusija ... 23

5 Zaključki ... 27

Literatura ... 29

(11)

Kazalo slik

Slika 2.1: Prikaz različnih načinov zagona proizvodnje [3]. ... 2

Slika 3.1: Smer prenosa podatkov med VCP in URSim. ... 8

Slika 3.2: Pot do informacije o stanju virtualizacije. ... 9

Slika 3.3: Izbira vrste in različice simulatorjevega operacijskega sistema. ... 10

Slika 3.4: Uporaba VDI pri ustvarjanju novega virtualnega računalnika. ... 10

Slika 3.5: Izbira datoteke navideznega trdega diska. ... 11

Slika 3.6: Vstop v nastavitve novega virtualnega računalnika. ... 11

Slika 3.7: Nastavitve zaslona virtualnega računalnika. ... 12

Slika 3.8: Nastavitve omrežja virtualnega računalnika. ... 13

Slika 3.9: Nastavitve deljene mape virtualnega računalnika. ... 13

Slika 3.10: Izgled virtualnega računalnika zaradi napačnih nastavitev. ... 14

Slika 3.11: Izgled dela simulatorja, kjer lahko prosto premikamo robota. ... 15

Slika 3.12: Pot do terminala v URSim. ... 15

Slika 3.13: Lokacija IP-naslova virtualnega računalnika. ... 15

Slika 3.14: Pot do raziskovalca datotek File Manager. ... 16

Slika 3.15: Pot do deljenih map. ... 16

Slika 3.16: Pot do dodatkov v VCP. ... 17

Slika 3.17: Vklop povezljivosti v VCP. ... 17

Slika 3.18: Konfiguriranje povezave in dodajanje novega serverja v VCP. ... 18

Slika 3.19: Povezava sklepov robota v VCP. ... 19

Slika 3.20: Vklop povezave s serverjem v VCP. ... 19

Slika 3.21: Gumb za pričetek simulacije znotraj VCP. ... 19

Slika 3.22: Robota v VCP (a) in URSim (b), ki se sinhrono premikata. ... 20

Slika 3.23: Urejevalnik robotskega programa znotraj URSim. ... 21

Slika 3.24: Posnetek zaslona URSim, ko je v načinu izvajanja programa. ... 22

Slika 4.1: Robotska celica v VCP. ... 23

Slika 4.2: Program, ki ga virtualni krmilnik uporablja za krmiljenje simulacije robota. ... 24

Slika 4.3: Konfiguracija povezanih spremenljivk za sklepe in prijemalo v VCP. ... 24

Slika 4.4: Opozorilo o prepočasni povezavi v VCP konzoli. ... 25

Slika 4.5: Gibanje simulacije robota v VCP (a) in gibanje modela robota v krmilniku (b). ... 26

(12)

Seznam uporabljenih okrajšav

Okrajšava Pomen

CAD PLK POZ SOZ VCP VDI

računalniško podprto načrtovanje (angl. Computer-Aided Design) programabilni logični krmilnik

metoda programske opreme v zanki (angl. Software-in-the-Loop) metoda strojne opreme v zanki (angl. Hardware-in-the-Loop) Visual Components Premium

slika virtualnega diska (angl. Virtual Disk Image)

(13)

1 Uvod

1.1 Ozadje problema

S pojavom industrije 4.0 in vse večje konkurenčnosti na trgu, so fleksibilnost proizvodnje, razvijanje programske opreme in digitalizacija postali pomembnejši kot kadarkoli prej.

Učinkoviti in fleksibilni sistemi so nujni za izdelavo kvalitetnih in poceni izdelkov v kratkih časovnih okvirih, vendar je za razvoj proizvodnih linij, ki to omogočajo, pomembno upoštevati čas, ki je potreben za njihov razvoj in zagon. Običajno se zagon kontrolnih sistemov proizvodnje zgodi šele po tem, ko je proizvodna linija že postavljena na želeni končni lokaciji, kar pa je lahko zaradi potencialnih napak v njeni zasnovi problematično. Nepredvidene napake v novem proizvodnem sistemu lahko privedejo do poškodb strojev, nedelovanja procesa in do potrebe po preurejanju zasnove procesa, kar na koncu lahko vodi do kasnejšega dejanskega zagona proizvodnje in k finančnim izgubam [1].

25% časa, ki je na voljo za oblikovanje proizvodnega obrata, je porabljenega za njen zagon in do 15% časa je porabljenega za odpravljanje težav, ki nastanejo zaradi napak v programski opremi za nadzor delovanja proizvodnje [2].

Ena izmed rešitev tega problema je to, da se izognemo fizični postavitvi proizvodne linije, zagonu in morebitnim potrebnim korekcijam proizvodnje. Bolj učinkovito je najprej simulirati v virtualnem okolju, potrditi ustreznost koncepta in uporabljenih komponent ter nato izdelati proizvodno linijo.

1.2 Cilji

Cilj te zaključne naloge je podrobno opisati postopek povezave virtualnega Universal Robots robota v programu Visual Components Premium (VCP) z virtualnim krmilnikom URSim, izdelati preprosto robotsko celico v programu VCP in napisati program gibanja robota, ki ga bomo naložili na virtualni krmilnik.

(14)

2 Teoretične osnove in pregled literature

2.1 Načini zagona proizvodnje

Poznamo 4 načine zagona proizvodnje, ki se razlikujejo predvsem glede na to, v kolikšni meri je zagon simuliran in katere komponente procesa se simulirajo. Fizični zagon proizvodnje predvideva fizični proizvodni sistem in fizični krmilnik, metoda strojne opreme v zanki (SOZ) zahteva fizični krmilnik in simulacijo proizvodnega sistema, pri metodi resničnosti v zanki je predviden fizični proizvodni sistem in virtualni krmilnik, pri konstruktivnemu zagonu (metoda programske opreme v zanki; POZ) proizvodnje pa sta tako proizvodni sistem kot krmilnik virtualna [3]. Diagram, ki pojasnjuje povezave in razlike med temi 4 načini zagona proizvodnje je viden na sliki 2.1.

Slika 2.1: Prikaz različnih načinov zagona proizvodnje [3].

2.2 Virtualni zagon proizvodnje

Virtualni zagon proizvodnje temelji na povezavi virtualne simulacije procesa in krmilnika, ki je lahko fizičen (SOZ) ali pa virtualen (POZ ali konstruktivni zagon) [4].

(15)

Teoretične osnove in pregled literature

Razlogov za uporabo virtualnega zagona proizvodnje v praksi je več:

- Z načrtovanjem postavitve proizvodnega procesa lahko dosežemo večjo stopnjo varnosti za delavce in za stroje,

- Procesi so lahko optimizirani s pravočasnim ugotavljanjem prisotnosti ozkih grl in potreb po vzdrževanju,

- Pravilnost delovanja programov za krmiljenje je možno preveriti pred realnim zagonom proizvodnje in tako se izognemo številnim napakam v realni proizvodnji, - Bistveno zmanjšanje ali popolna odprava potrebe po ustavljanju proizvodnje za

namene preizkušanja delovanja procesa. [5]

Implementacija virtualnega zagona v prakso pa je težavna iz več vidikov. Virtualni zagon proizvodnje temelji na simulaciji procesa, kar zahteva, da želeni proces postavimo v virtualno okolje, to pa od načrtovalcev zahteva veliko časa in dela, predvsem pri izdelavi potrebnih digitalnih modelov naprav, ki bodo uporabljene v procesu, saj morajo biti ti digitalni stroji z vidika funkcionalnosti čimbolj podobni realnemu stroju. Zaradi potrebe po komunikaciji med simulacijo procesa in krmilnikom, morajo digitalni modeli imeti tudi modelirane senzorje in aktuatorje, kar pa zaradi kompleksnosti modeliranja zahteva bolj izkušen in izobražen kader [3].

2.2.1 Modeliranje simulacije procesa

Razvoj simulacijskega modela procesa se razdeli na modeliranje na nizki stopnji (modeliranje komponent procesa) in na modeliranje na visoki stopnji (modeliranje procesa) [6].

V primeru, da v knjižnici programa za simuliranje procesa ni na voljo potrebnih komponent procesa ali pa so le-te neustrezne, jih je za potrebe uspešnega virtualnega zagona proizvodnje potrebno zmodelirati; potrebno je opraviti modeliranje na nizki stopnji.

Za izdelavo ustreznega digitalnega modela je potrebno modeliranje geometrije komponente, njeno funkcijsko modeliranje in modeliranje pripadajočih električnih komponent. Pri geometrijskemu modelu procesa se uporabijo podatki iz CAD (računalniško podprto načrtovanje, angl. Computer-Aided Design) datotek komponent procesa in se po potrebi ročno poenostavijo. Pomembna je tudi struktura modelov; deli, ki so v realnosti predvideni kot gibajoči, se morajo tudi v geometrijskemu modelu premikati.

Geometrijski model je podlaga za funkcijsko in elektrotehnično modeliranje. Pri funkcijskemu modeliranju je potrebno aktuatorjem in senzorjem ročno določiti funkcije.

Pri izdelavi elektrotehničnega modela pa je potrebno funkcijskemu modelu ročno določiti vhode in izhode za namene kasnejše povezave s krmilnimi programi. Tako modeliranje nam kasneje pri virtualnemu zagonu omogoča zaznavanje napak v mehanski in elektrotehnični zasnovi ter v zasnovi krmilnih programov [2][6].

Pri modeliranju na visoki stopnji sestavimo simulacijo procesa iz modelov komponent procesa, ki se nahajajo v knjižnici programa in morebitnih modelov procesa, ki jih je bilo potrebno ustvariti z modeliranjem na nizki stopnji. Na tej stopnji modeliranja se posebno pozornost nameni postavitvi in povezavi med komponentami procesa [6].

(16)

Teoretične osnove in pregled literature

2.2.2 Metoda strojne opreme v zanki

Metoda strojne opreme v zanki (SOZ) je način virtualnega zagona proizvodnje, kjer simulacijo procesa krmilimo z realnim krmilnikom, najpogosteje s PLK-jem (programabilni logični krmilnik) [7].

SOZ je kompromis med poceni in hitro simulacijo ter njeno natančnostjo. Smiselnost uporabe SOZ metode je odvisna od lastnosti sistema, lastnosti preizkuševališč in drugih objektov ter nazadnje tudi od pristopa k načrtovanju procesa. SOZ je smiselno uporabiti predvsem ko:

- Bi bilo testiranje sistema predrago in/ali bi rezultiralo v njegovem uničenju,

- Imajo komponente sistema zelo nelinearne karakteristike in je zato modeliranje senzorjev in aktuatorjev oteženo,

- So krmilni programi zelo kompleksni. [7]

SOZ se izkaže kot uporabnega tudi pri prehodu med testiranjem simulacije procesa na testiranje fizičnega procesa. Pri tovrstnem preizkušanju je možno simulirane komponente procesa zamenjati s fizičnimi komponentami in tako opazovati obnašanje simuliranega dela procesa in njegovega fizičnega dela. Tak pristop je uporaben predvsem zato, ker simulacija ne more vedno popolnoma reproducirati obnašanja realnega sistema. Na tak način je možno prej poiskati napake, kot pa pri direktnem prehodu iz simulacije na fizičen proces [8].

Ena izmed slabih strani SOZ metode je ta, da mora hitrost simulacije vedno biti enaka realni hitrosti procesa zaradi omejitev takta fizičnega krmilnika. Tako simulacija procesa kot krmilnik imata svoji neodvisni frekvenci delovanja, ki morata biti med seboj natančno sinhronizirani; v nasprotnem primeru pride do nerealnih rezultatov [9].

2.2.3 Metoda programske opreme v zanki

Metoda programske opreme v zanki (POZ) omogoča virtualni zagon proizvodnje, kjer simulacijo procesa krmilimo z virtualnim krmilnikom. Ta metoda omogoča hitro in fleksibilno testiranje različnih scenarijev ter kontrolnih algoritmov, obenem pa je cenejša kot SOZ, saj ne potrebujemo fizičnega krmilnika [10].

Za razliko od SOZ metode, pri POZ metodi ni potrebno, da simulacija poteka v realnem času. To omogoča testiranje programov z manipulacijo časa. Možno je testiranje modelov procesa, ki se izvajajo hitreje kot v resničnosti; prednost tega je prihranek časa in možnost opazovanja obnašanja sistema v daljših časovnih obdobjih. Čas poteka simulacije je lahko tudi upočasnjen, kar omogoči lažje opazovanje morebitnega problema v simulaciji. V primeru težave v simulaciji, je pri uporabi POZ metode možno pavzirati tako simulacijo procesa kot virtualni krmilnik. Možno je tudi koračno premikanje časa, ki omogoča natančno spremljanje problema [9].

POZ metoda je uporabna tudi v primerih, kjer je simuliran proces zelo kompleksen. V primerjavi z metodo SOZ je ta način cenejši in enostavnejši, saj ni potrebno hkrati

(17)

Teoretične osnove in pregled literature

upravljati z več fizičnimi krmilniki. Delo je še dodatno olajšano z združevanjem virtualnih krmilnikov v en sam program, ki omogoča omrežno povezavo med njimi [9].

2.3 Digitalni dvojček

Virtualne modele procesov, sistemov in naprav lahko razdelimo na 3 različne podtipe, ki se med seboj razlikujejo po količini izmenjanih podatkov in načinu izmenjave podatkov med virtualnim modelom in realnim objektom:

- Digitalni model je digitalna kopija že obstoječega ali načrtovanega fizičnega objekta, ki je sposobna popolnoma oponašati njegove karakteristike in funkcionalnost. Med fizičnim objektom in digitalnim modelom ne poteka samodejna izmenjava podatkov.

- Digitalna senca je podobna digitalnemu modelu, vendar ima samodejen enosmeren prenos podatkov od fizičnega objekta do njegovega pripadajočega digitalnega modela.

- Digitalni dvojček je model, kjer je izmenjava podatkov med digitalnim in fizičnim objektom popolnoma integrirana in obojesmerna; sprememba stanja enega vodi do spremembe stanja drugega. [11]

Digitalni dvojček omogoča sočasni nadzor sistema in analizo tako zbranih podatkov.

Posledično se lahko potencialni problemi in nesreče preprečijo, vzdrževanje je lahko bolje načrtovano, predvidijo se spremembe v fizičnemu modelu in olajša se načrtovanje nadgradenj sistema. Za razliko od digitalnega modela, lahko z digitalnim dvojčkom na podlagi zbranih podatkov senzorjev predvidimo obnašanje sistema v različnih pogojih [12].

Digitalne dvojčke je možno uporabiti tudi pri virtualnemu zagonu proizvodnje. Njihova prednost je ta, da so boljši približek fizičnemu objektu kot pa digitalni modeli, ki so običajno uporabljeni v virtualnemu zagonu proizvodnje. To lastnost se lahko s pridom uporabi v primerih, ko je potrebna posodobitev proizvodnje ali pa njena reorganizacija [13].

(18)

3 Metodologija raziskave

3.1 Obravnava virtualnih okolij in programov

Za simulacijo Universal Robots robota UR10 na računalniku z operacijskim sistemom Windows 10 Home smo uporabili naslednje programe:

- Visual Components Premium 4.3, - URSim 3.15.0,

- VirtualBox 5.2.6, - 7-Zip.

3.1.1 Visual Components Premium

VCP omogoča 3D simulacijo proizvodnje in povezovanje z virtualnim krmilnikom.

Premium verzija je bila izbrana, ker ponuja naprednejše programiranje robotov in več možnosti povezljivosti z virtualnimi in fizičnimi krmilniki.

3.1.2 URSim

URSim je simulacijska programska oprema, ki služi simulaciji robotskih programov, njihovemu programiranju in ročnemu premikanju virtualnega robota. Temelji na operacijskem sistemu Linux Lubuntu in vsebuje več simulatorjev za posamezne Universal Robots robote. V okviru te naloge bomo VCP povezali z URSim in pošiljali ukaze z URSim simulatorja na robota v VCP.

URSim si prenesemo v obliki VDI. To pomeni, da si bomo na računalnik prenesli operacijski sistem, ki ima že prednaložene programe in nastavitve. Da bomo lahko URSim zagnali, bomo potrebovali programsko opremo za virtualizacijo, ki nam bo omogočila, da znotraj našega gostiteljskega računalnika obenem poganjamo še en drug virtualni računalnik, ki bo temeljil na sliki virtualnega diska, ki smo ga prenesli s spleta.

(19)

Metodologija raziskave

URSim VDI si prenesemo z uradne spletne strani Universal Robots. Do datoteke pridemo tako, da pod filtri izberemo 'Software' -> 'Non-Linux Offline simulator' in nato izberemo verzijo, ki ustreza seriji našega robota. E-series so simulatorji za novejše robote, ki jih lahko prepoznamo po končnici e, kot na primer UR10e, CB-series pa so simulatorji za starejše robote brez končnice, kot na primer UR10. Ker smo si za naše potrebe izbrali robot UR10, torej izberemo Offline Simulator for CB-series 3.15.0. Za prenos datoteke potrebujemo račun na strani od Universal Robots, ki pa je brezplačen in prostodostopen vsem, ki ga potrebujejo.

3.1.3 VirtualBox

VirtualBox je brezplačen program za virtualizacijo, ki omogoča poganjanje virtualnih računalnikov znotraj gostiteljskega sistema. Prednost uporabe VirtualBoxa in drugih programov za virtualizacijo je to, da lahko imamo več računalnikov v enem. Tako nam za uporabo URSim ne bo potrebno imeti dveh fizičnih računalnikov ali pa fizičnega računalnika in fizičnega robota s krmilnikom.

VirtualBox lahko brezplačno prenesemo z njihove uradne strani. Paziti je treba, da izberemo pravo verzijo in različico za Windows. Za naš namen se je verzija 5.2 izkazala za najboljšo, čeprav je to starejša verzija brez podpore. Razlog za to je dejstvo, da imajo vse naslednje verzije VirtualBoxa možnost izbire grafičnega krmilnika [14].

Ustrezen Linux 3D grafični krmilnik je VMSVGA, ki pa mnogim uporabnikom popolnoma onemogoči spreminjanje velikosti zaslona virtualnega računalnika, kar pa posledično onemogoči uporabo simulatorjev robotov, saj so okna teh programov mnogo večja od velikosti zaslona virtualnega računalnika. Izbira drugega grafičnega krmilnika pa ni možna, saj nas VirtualBox opozori, da nastavitve niso veljavne in nato samodejno za grafični krmilnik nastavi VMSVGA.

Poleg VirtualBoxa pa lahko URSim poganjamo tudi na VMware Playerju, vendar njegove nastavitve in uporaba v sklopu te naloge ne bodo predstavljene.

3.1.4 7-Zip

7-Zip je program za arhiviranje, stiskanje in razširjanje datotek. V sklopu te naloge ga uporabimo za razširjanje stisnjenega URSim VDI. Obstaja mnogo alternativ temu programu, kot na primer WinRAR in PeaZip.

(20)

Metodologija raziskave

3.2 Povezava robota v VCP z virtualnim krmilnikom URSim

Za povezavo med VCP in URSim je potrebnih več korakov. Najprej na gostiteljskem računalniku vklopimo virtualizacijo, ki nam bo omogočila kasnejše ustvarjanje virtualnih računalnikov. Po uspešnem vklopu v VirtualBoxu ustvarimo virtualni računalnik, ki bo poganjal URSim. Pri tem moramo virtualni računalnik pravilno nastaviti. Predvsem pomembne so nastavitve grafike za pravilen prikaz in nastavitve omrežja ter deljenja mape za omogočanje komunikacije med gostiteljskim in virtualnim računalnikom. Na koncu je še potrebno znotraj VCP vklopiti možnost povezovanja z zunanjimi krmilniki in pravilno konfigurirati nastavitve komunikacije med VCP in URSim. Rezultat je komunikacija med obema programoma, kot je prikazana na sliki 3.1.

Slika 3.1: Smer prenosa podatkov med VCP in URSim.

3.2.1 Vklop virtualizacije

Programi za virtulizacijo, kot sta VirtualBox in VMware za svoje delovanje potrebujeta gostiteljski računalnik s procesorjem, ki omogoča virtualizacijo. V privzetem stanju je običajno izključena, njeno stanje pa lahko preverimo v 'Upravitelju opravil', ki ga prikličemo s sočasnim pritiskom tipk Ctrl, Shift in Esc. S klikom na zavihek 'Učinkovitost delovanja' se nam prikažejo podatki o stanju in delovanju računalnika. V podzavihku 'CPE' lahko nato preverimo stanje virtualizacije (slika 3.2). Če je omogočena, preskočimo to poglavje in nadaljujemo z nameščanjem VirtualBoxa, če pa je onemogočena, jo moramo vključiti v BIOS-u.

(21)

Metodologija raziskave

Slika 3.2: Pot do informacije o stanju virtualizacije.

Do BIOS-a lahko dostopamo tako, da gremo v 'Nastavitve' -> 'Posodobitev in varnost' ->

'Obnovitev'. Tu poiščemo podsklop 'Napredni zagon' in pritisnemo na gumb 'Znova zaženi zdaj', ki bo znova zagnal računalnik v novem načinu. Izberemo opcijo 'Troubleshoot' ->

'Advanced options' -> 'UEFI Firmware Settings' -> 'Restart' ('Odpravljanje težav' ->

'Napredne možnosti' -> 'UEFI nastavitve vdelane programske opreme' -> 'Ponovni zagon').

Druga metoda za dostop do BIOS-a je pritisk primernega gumba ob zagonu računalnika.

Največkrat je to gumb F2, vendar je potrebno omeniti, da je to odvisno od proizvajalca računalnika [15].

V BIOS-u nato poiščemo nastavitve virtualizacije in jih vključimo. Ker se BIOS-i med računalniki lahko zelo razlikujejo, ni mogoče podati takih navodil, ki bi natančno opisale potek. Običajno jih lahko dobimo pod naprednimi nastavitvami, pod nastavitvami procesorja ali pod nastavitvami varnosti. Virtualizacija ima lahko različna imena, kot na primer: Intel Virtual Technology, SVM Mode, VTx, in tako dalje [16]. Najenostavnejše to uredimo tako, da na spletu poiščemo navodila za svojo znamko računalnika oziroma procesorja in jim nato sledimo.

3.2.2 Ustvarjanje novega virtualnega računalnika

Znotraj tega poglavja bomo ustvarili nov virtualni računalnik v VirtualBoxu z uporabo URSim slike virtualnega računalnika.

Datoteko, ki smo jo prenesli z uradne strani Universal Robots razširimo s programom 7- Zip na poljubno mesto na računalniku.

(22)

Metodologija raziskave

kot vrsto in različico pa izberemo Linux Ubuntu (64-bit) [17]. Ko so nastavitve iste kot na sliki 3.3, pritisnemo tipko 'Naprej'.

Slika 3.3: Izbira vrste in različice simulatorjevega operacijskega sistema.

VirtualBox nas vpraša po velikosti pomnilnika navideznega računalnika, ki ga poskušamo ustvariti. URSim za svoje delovanje potrebuje najmanj 768 MB [17], za boljše delovanje pa nam je priporočenih 1024 MB. Seveda lahko dodelimo tudi več, vendar se pri običajni rabi razlika v simulatorju ne bo poznala, lahko pa to vpliva na hitrost delovanja našega gostiteljskega računalnika.

V naslednjem koraku moramo novemu računalniku dodeliti navidezni trdi disk. Ker je URSim slika virtualnega diska, nam ni potrebno ustvarjati novega trdega diska, saj smo ga že prenesli z Universal Robots spletne strani. Izberemo opcijo 'Uporabi obstoječo datoteko navideznega trdega diska' in kliknemo na ikono mape zraven izbirnega seznama, kot je prikazano na sliki 3.4.

Slika 3.4: Uporaba VDI pri ustvarjanju novega virtualnega računalnika.

(23)

Metodologija raziskave

Odpre se nam brskalnik datotek, ki so na našem računalniku. Poiščemo mapo, v katero smo razširili URSim. Izberemo datoteko, ki na koncu imena nima končnice -s00X, kot je tudi vidno na sliki 3.5, in pritisnemo 'Odpri'. Vrne nas na VirtualBoxovo pogovorno okno, kjer kliknemo na 'Ustvari'.

Slika 3.5: Izbira datoteke navideznega trdega diska.

3.2.3 Prilagoditev nastavitev virtualnega računalnika

Virtualni računalnik je sedaj ustvarjen, vendar moramo pred uporabo prilagoditi še nekaj nastavitev. Na seznamu obstoječih virtualnih računalnikov označimo naš nov virtualni računalnik (enkratni levi klik) in nato v zgornjem levem kotu kliknemo na 'Nastavitve', kot je označeno na sliki 3.6.

(24)

Metodologija raziskave

Nastavitve lahko spremenimo kadarkoli kasneje, pri tem pa smo pozorni na to, ali je virtualni računalnik med spreminjanjem nastavitev vključen ali ne. Nekatere nastavitve, kot na primer deljenje map in omrežja, lahko spreminjamo pri vključenemu virtualnemu računalniku, medtem ko je spreminjanje lastnosti zaslona onemogočeno v tem stanju.

3.2.3.1 Nastavitve zaslona virtualnega računalnika

Izberemo podzavihek 'Zaslon' in odkljukamo opcijo 'Omogoči pospeševanje 3D' (slika 3.7). Na ta način se izognemo težavam s 3D-modeli v URSim simulatorjih, kot na primer slabi kvaliteti modela, zrnatosti in črnemu utripanju. V primeru, da vseeno nastopijo težave s 3D modeli v virtualnemu računalniku, lahko povečamo velikost grafičnega polnilnika na večjo vrednost. Privzeta vrednost je 16 MB.

Slika 3.7: Nastavitve zaslona virtualnega računalnika.

3.2.3.2 Nastavitve omrežja virtualnega računalnika

V podzavihku 'Omrežje' nastavimo omrežni vmesnik. S prvega seznama izberemo možnost 'Povezan vmesnik' (slika 3.8). Na ta način bo virtualni računalnik dobil svoj IP-naslov in lahko ga bomo povezali z robotom v VCP.

(25)

Metodologija raziskave

Slika 3.8: Nastavitve omrežja virtualnega računalnika.

3.2.3.3 Deljenje mape med gostiteljskim in virtualnim računalnikom

Kot zadnje lahko dodamo še deljenje mape, ki nam bo omogočilo, da ima virtualni računalnik dostop do ene ali več map, ki se nahajajo na gostiteljskem računalniku. To nam bo omogočilo enostavno nalaganje robotskih programov z enega na drug računalnik.

Alternativa deljeni mapi pa je uporaba USB-ključa za prenos datotek, ki pa ne potrebuje dodatne konfiguracije.

Kliknemo na podzavihek 'Deljene mape' in kliknemo na ikono mape, ki se nahaja na skrajnem desnem robu okna. Odpre se nam pogovorno okno, v katerem lahko določimo pot do mape, ki jo želimo deliti z virtualnim računalnikom. Na seznamu 'Pot mape' izberemo možnost 'Drugo'. Odprlo se nam bo še eno pogovorno okno, kjer lahko izberemo pot do mape. Odkljukamo še možnost 'Samodejno priklopi', kakor je prikazano na sliki 3.9, in kliknemo 'V redu'. Preostanek nastavitev deljenja mape bo potrebno narediti v virtualnem računalniku. [17]

Slika 3.9: Nastavitve deljene mape virtualnega računalnika.

(26)

Metodologija raziskave

3.2.4 Preverjanje ustreznosti nastavitev virtualnega računalnika

Virtualni računalnik je pripravljen na prvi zagon. Zaženemo ga z dvoklikom na ime računalnika. Najprej preverimo, ali smo ga pravilno konfigurirali. Ko vidimo namizje virtualnega računalnika, povečamo okno, znotraj katerega je virtualni računalnik (Gumb 'Maksimiraj' v naslovni vrstici VirtualBoxa). Resolucija zaslona se mora samodejno povečati. Primer neustreznega izgleda je na sliki 3.10. Opomba; resolucija zaslona se ob nalaganju operacijskega sistema ne bo samodejno povečala, tudi če je bil virtualni računalnik pravilno nameščen – potrebno je počakati, da se nam prikaže namizje.

Če se resolucija ne spremeni:

- si naložimo VirtualBox 5.2, če imamo trenutno naloženo novejšo različico, - si prenesemo bodisi novejšo bodisi starejšo verzijo URSim.

Slika 3.10: Izgled virtualnega računalnika zaradi napačnih nastavitev.

Drugi korak je odprtje poljubnega URSim simulatorja. Ko se program zažene, kliknemo bodisi na gumb 'Program Robot' ('Programiraj robota') bodisi na gumb 'Run Program' ('Zaženi program') in nato na zavihek 'Move' ('Premakni'), ki je viden na sliki 3.11.

Pritisnemo in držimo katerokoli modro tipko in opazujemo model robota. Model ne sme utripati in URSim se medtem ne sme samodejno zapreti. Če z modelom ni težav, zapremo ta program.

Če se pojavijo prej navedene težave:

- v nastavitvah zaslona virtualnega računalnika povečamo grafični pomnilnik, - v nastavitvah zaslona virtualnega računalnika omogočimo 3D pospeševanje.

(27)

Metodologija raziskave

Slika 3.11: Izgled dela simulatorja, kjer lahko prosto premikamo robota.

Preverimo še nastavitev IP-naslova. Pritisnemo na modro ikono v spodnjem skrajno levem kotu, izberemo 'System Tools' ('Sistemska orodja') in nato 'UXTerm'. Pot je prikazana na sliki 3.12. Odprl se nam bo terminal.

Slika 3.12: Pot do terminala v URSim.

V terminal vtipkamo ifconfig in pritisnemo tipko enter. Informacija o IP-naslovu se nahaja na začetku 3. vrstice, kot je tudi označeno na sliki 3.13. IP-naslov 10.0.2.X pomeni, da IP- naslov ni bil pravilno nastavljen in posledično kasneje ne bomo mogli povezati VCP in URSim simulatorja. [17]

(28)

Metodologija raziskave

3.2.5 Dokončanje nastavljanja deljene mape

Zadnji korak je dokončanje nastavljanja deljenih map, ki ga moramo opraviti v virtualnem računalniku. Ponovno odpremo terminal in vanj vtipkamo sudo adduser ur vboxsf ter pritisnemo tipko enter. Virtualni računalnik sedaj izklopimo. To naredimo tako, da zapremo njegovo okno in izberemo opcijo Izklopi računalnik. Takoj zatem ga ponovno zaženemo in odpremo 'File Manager' ('Raziskovalec datotek'). Pot do njega je vidna na sliki 3.14. [17]

Slika 3.14: Pot do raziskovalca datotek File Manager.

Deljeno mapo poiščemo tako, da v lokacijski vrstici vtipkamo /media in pritisnemo tipko enter. Izgled mape media, ki vsebuje deljene mape, je prikazan na sliki 3.15. [17]

Slika 3.15: Pot do deljenih map.

Virtualni računalnik je sedaj pripravljen za uporabo.

3.2.6 Nastavitev povezljivosti v VCP

Da lahko povežemo VCP in URSim, moramo najprej v programu VCP vključiti možnost povezljivosti, saj je v privzetem stanju onemogočena. Omogočimo jo tako, da odpremo

(29)

Metodologija raziskave

zavihek 'File' -> 'Options' -> 'Add On' ('Datoteka' -> 'Možnosti' -> 'Dodatki'), kot je vidno na sliki 3.16.

Slika 3.16: Pot do dodatkov v VCP.

Na dnu strani poiščemo poglavje 'Connectivity' ('Povezljivost') in kliknemo na gumb 'Enable' ('Omogoči') ter na gumb 'OK' (slika 3.17). Nov zavihek za povezljivost se nam bo prikazal šele ob ponovnemu zagonu programa.

Slika 3.17: Vklop povezljivosti v VCP.

3.2.7 Povezava VCP in URSim

Zaženemo VCP in URSim. Za namene testiranja delovanja povezave in pravilnosti nastavitev, v VCP odpremo Universal Robots robot, ki ga želimo simulirati, v URSim pa izberemo primeren simulacijski program; če želimo simulacijo UR10 robota, bomo tudi v URSim izbrali simulacijski program za UR10 robote. Niti URSim niti VCP nam ne bosta javila napake, če izberemo napačno kombinacijo in pri pravilni povezavi se bosta modela robotov v teh programih gibala sinhrono, kar nas lahko lažno prepriča, da smo vse nastavili pravilno.

V VCP izberemo zavihek 'Connectivity' ('Povezljivost') in v oknu 'Connectivity

(30)

Metodologija raziskave

Slika 3.18: Konfiguriranje povezave in dodajanje novega serverja v VCP.

Ustvarili smo nov server. Samodejno se nam na desni strani odpre novo okno 'Edit Connection' ('Uredi povezavo'). Potrebno je samo vtipkati IP-naslov, ki ga ima robot v URSimu. Navodila za pridobitev IP-naslova so v poglavju Preverjanje ustreznosti nastavitev virtualnega računalnika.

Kliknemo gumb 'Test Connection' ('Testiraj povezavo') in po vzpostavitvi uspešne povezave na dnu okna kliknemo 'Apply' ('Uporabi').

Vrnemo se v okno 'Connectivity Configuration' ('Konfiguracija povezljivosti'), desno kliknemo na opciji 'Server to simulation' ('Od serverja do simulacije') in izberemo 'Add variables' ('Dodaj spremenljivke'). Odpre se nam okno 'Create Variable Pairs' ('Ustvari pare spremenljivk'). Na levi strani okna imamo seznam robotov, ki so trenutno v VCP prostoru, na desni pa je seznam vhodnih in izhodnih signalov. V desnem oknu z roboti kliknemo na plus zraven imena robota, nato na plus zraven opcije 'RTDEInterface' ('RTDEvmesnik') in nazadnje kliknemo na 'RTDEJoints' ('RTDEsklepi'). V desnem oknu kliknemo na plus zraven 'Outputs' ('Izhodi'), nato plus zraven 'Joint Variables' ('Spremenljivke sklepov') in na koncu izberemo 'target_q'. Na dnu okna potrdimo nastavitve s klikom na 'Pair Selected' ('Izberi par') in nato zapremo okno. S tem smo povezali sklepe robota v VCP in robota v URSim. Potek je za lažjo predstavo prikazan na sliki 3.19.

(31)

Metodologija raziskave

Slika 3.19: Povezava sklepov robota v VCP.

Sedaj server vključimo v oknu Connectivity Configuration (Konfiguracija povezljivosti).

Prej prazen krogec mora po kliku postati zelen kot na sliki 3.20.

Slika 3.20: Vklop povezave s serverjem v VCP.

V oknu s simulacijo pritisnemo gumb 'Play' ('Začni'), ki je označen na sliki 3.21.

(32)

Metodologija raziskave

V URSim simulatorju sedaj poiščemo kontrolno ploščo za premikanje robota, kakor je opisano v poglavju Preverjanje ustreznosti nastavitev virtualnega računalnika, in pritisnemo na katerokoli izmed modrih tipk. Robot v VCP in v URSim simulatorju se morata sedaj sinhrono gibati, kot je vidno na sliki 3.22. Če se robot v VCP ne odziva, ponastavimo simulacijo z gumbom 'Reset' ('Ponastavitev') in nato pritisnemo na 'Play' ('Začni').

Slika 3.22: Robota v VCP (a) in URSim (b), ki se sinhrono premikata.

3.3 Vstavitev robotskega programa v URSim

Da bo simulacija robota v VCP delovala, moramo robotski program s končnico .urp naložiti na virtualni krmilnik URSim. Ker lahko z npr. naknadno obdelavo kode v VCP dobimo robotski program z neustrezno končnico, bo predstavljen še način za pretvorbo prvotnega robotskega programa v robotski program z ustrezno končnico znotraj programa URSim.

3.3.1 Pretvorba robotskega programa v ustrezen format

Zaženemo virtualni računalnik in glede na robota, ki ga želimo testirati, odpremo ustrezen URSim simulatorski program. Na začetnem zaslonu izberemo možnost 'Program Robot' ('Programiranje robota'). Na naslednji strani imamo na voljo 3 možnosti; 'Load Program' ('Naloži program'), ki nam omogoča urejanje že prej napisanega programa s končnico .urp, 'Pick and Place', ki je predloga za pisanje pick-and-place programa, in 'Empty Program' ('Prazen program'), ki je prazna predloga za pisanje poljubnega programa. Za namen pretvorbe formata že obstoječega programa, izberemo možnost 'Empty program' ('Prazen program'). Za lažje razumevanje je na sliki 3.23 priložen posnetek zaslona. Najprej kliknemo na zavihek 'Structure' ('Struktura'), potem pa na zavihek 'Advanced' ('Napredno'), kot prikazano na sliki. Kliknemo na gumb 'Script Code' ('Pisanje programa') in na levi

(33)

Metodologija raziskave

strani se nam bo na diagramu 'Robot Program' ('Robotski program') pojavila veja 'Script' ('Program').

Slika 3.23: Urejevalnik robotskega programa znotraj URSim.

Da lahko v ta urejevalnik programov vstavimo naš program, bodisi dvokliknemo na vejo 'Script' ('Program') bodisi se premaknemo z zavihka 'Structure' ('Struktura') na zavihek 'Command' ('Ukaz'). Na skrajni desni strani okna z drsnega seznama izberemo opcijo 'File' ('Datoteka'), nato pa na skrajni desni strani okna izberemo možnost 'Edit' ('Uredi'), ki se je na novo prikazala. Odpre se nam novo okno File Editor (Urejevalnik datotek), v katerem lahko urejamo program. Ker želimo zgolj pretvoriti program, v zgornjem levem kotu kliknemo na 'Open' ('Odpri'). Prikazal se nam bo seznam vseh programov, ki se nahajajo na lokaciji /home/ur/ursim-current/programs. Ker zunaj te mape z URSim ne moremo iskati programov, jih je potrebno shraniti na to lokacijo, če želimo do njih dostopati. S seznama izberemo želen program in potrdimo s klikom na 'Open' ('Odpri'). Vrne nas na okno File Editor (Urejevalnik datotek), kjer lahko uredimo program, lahko pa urejevalnik zapustimo s klikom na gumb 'Exit' ('Izhod'). Vrne nas na zavihek 'Command' ('Ukaz'), kjer lahko sedaj v belem prostoru vidimo naš program. Program shranimo tako, kliknemo na 'File' ('Datoteka') in izberemo možnost 'Save As …' ('Shrani kot...). Program poljubno poimenujemo in shranimo s klikom na 'Save' ('Shrani'). Na začetni zaslon se vrnemo tako,

(34)

Metodologija raziskave

3.3.2 Izvajanje programa

Glede na robota, ki ga želimo testirati, odpremo ustrezen URSim simulacijski program. Na začetnem zaslonu izberemo možnost 'Run Program' ('Izvajanje programa'). Prikaže se nam stran, ki je vidna na sliki 3.24. V zgornjem levem kotu kliknemo na 'File' ('Datoteka') in izberemo možnost 'Load Program' ('Naloži program'). Prikaže se nam seznam programov s končnico .urp v mapi /home/ur/ursim-current/programs. Izberemo želenega in ga odpremo. Program je sedaj naložen na krmilnik, vendar se še ne izvaja. Poženemo ga tako, da na dnu okna pritisnemo na 2. gumb z leve; gumb 'Play' ('Zaženi'). Če preklopimo z zavihka 'Run' ('Zagon') na zavihek 'Move' ('Premikanje'), lahko opazujemo predvideno premikanje robota. Na zavihku 'Log' ('Dnevnik') se nam izpišejo vse napake, na katere krmilnik naleti. Za namene analize delovanja robota lahko ustvarimo podporno datoteko s pritiskom na gumb 'Support file' ('Podporna datoteka').

Slika 3.24: Posnetek zaslona URSim, ko je v načinu izvajanja programa.

(35)

4 Rezultati in diskusija

Za namene testiranja pravilnosti povezave in zmogljivosti virtualnega krmilnika ter simulatorja, smo v VCP z uporabo Works knjižnice izdelali preprosto robotsko celico, ki je vidna na sliki 4.1. Prvi tekoči trak ustvari izdelke in jih prenese do delovnega mesta robota UR10, ki ga s 3-prstnim prijemalom prime in prenese v škatle, ki potujejo po drugem tekočem traku.

Ker je bil prvoten namen te naloge analiza povezave med simulacijo in virtualnim krmilnikom, je ta robotska celica brez nekaterih funkcionalnosti in komponent, ki bi sicer v realni proizvodnji bile zaželene, kot na primer senzorji na tekočem traku, premične zapore, kletka okoli delovnega območja robota in podobno.

(36)

Rezultati in diskusija

V naslednjem koraku smo napisali program, ki ga URSim krmilnik pošilja na simulacijo robota. V 2. vrstici program definira, kje se nahaja središče prijemala. V vrsticah 3 do 5 je določeno gibanje robota od začetne točke do trenutka, ko je tik nad izdelkom. Vrstici 6 in 7 pošljejo digitalni signal robotu, da odpre prijemalo. Sledi vrstica, ki robotu ukaže, da počaka pol sekunde. To je potrebno, da ima prijemalo čas se zapreti, preden nese izdelek do škatle, kot je napisano v vrsticah od 9 do 11. Sledijo 3 vrstice, kjer je na podoben način kot pri zapiranju definirano odpiranje. V 15. vrstici se robot vrne na prvotno mesto.

Slika 4.2: Program, ki ga virtualni krmilnik uporablja za krmiljenje simulacije robota.

Prijemalo robota se pri delovanju programa odpira in zapira z ukazom set_digital_out(n, b). Da simulacija v lahko sprejme in izvede te ukaze, je potrebno v VCP konfigurirati povezane spremenljivke za prijemalo. Postopek je podoben konfiguraciji sklepov robota.

Na sliki 4.3 je v 2. in 8. stolpcu prikazano, katere spremenljivke smo povezali. V 7. stolpcu je zelena kljukica, kar pomeni, da komunikacija med simulacijo in krmilnikom poteka. V 4. in 6. stolpcu se nam pri izvajanju simulacije s krmilniškim programom izpisujejo dejanske in predvidene vrednosti. Idealno je, da so vrednosti v obeh stolpcih vedno enake, kar pomeni, da je komunikacija med krmilnikom in robotom ustrezna in da se program pravilno izvaja. Med izdelavo te naloge smo ta cilj dosegli.

Slika 4.3: Konfiguracija povezanih spremenljivk za sklepe in prijemalo v VCP.

(37)

Rezultati in diskusija

En izmed večjih problemov virtualnega zagona proizvodnje so omejitve računalniške strojne opreme. V primeru, da hkrati izvajamo več zahtevnih procesov ali pa simuliramo večje proizvodnje linije, se lahko zgodi, da se zaradi preobremenjenega računalniškega procesorja povezava med simulacijo robota in virtualnim krmilnikom upočasni.

Upočasnjena povezava pa lahko privede do napačnega delovanja simulacije in posledično je možno, da nam v realnosti proizvodna linija ne bi pravilno delovala. To nam VCP sporoči v konzoli, kot je prikazano na sliki 4.4. V tem prikazanem primeru nam VCP najprej izpiše čas, pri katerem je prišlo do napake. Nato sledi ime napake, v tem primeru gre za opozorilo v zvezi s stanjem povezave. Za tem je poimenovana povezava, ki je problematična in katera smer prenosa podatkov dela težave. V našem primeru je to bila povezava z Universal Robots RTDE v smeri od virtualnega krmilnika do simulacije. Izpiše se natančnejši opis problema; zamik prenosa podatkov je višji od 100 milisekund. Na koncu se izpiše še povprečni zamik zadnjih 5 operacij v milisekundah.

Slika 4.4: Opozorilo o prepočasni povezavi v VCP konzoli.

Končni rezultat te naloge je sočasno gibanje simulacije robota v VCP in modela robota v virtualnem krmilniku URSim (slika 4.5).

(38)

Rezultati in diskusija

Slika 4.5: Gibanje simulacije robota v VCP (a) in gibanje modela robota v krmilniku (b).

(39)

5 Zaključki

V sklopu te naloge smo vzpostavili povezavo med simulacijo robota znotraj Visual Components Premium in virtualnim krmilnikom URSim, ki omogoča sinhronizacijo gibanja robotske roke v obeh programih. Pri tem smo:

1) Ustvarili virtualni računalnik, znotraj katerega poganjamo virtualni krmilnik URSim.

Postopek je bil podrobno opisan in vsebuje navodila za vklop virtualizacije na gostiteljskem računalniku, uporabo VDI pri ustvarjanju virtualnega računalnika in prilagoditev nastavitev virtualnega računalnika za njegovo pravilno delovanje (nastavitve zaslona, omrežja in deljenje mape).

2) Napisali seznam potrebne programske opreme. Uporabili smo Visual Components Premium 4.3 za simulacijo robotske celice, URSim 3.15.0 za poganjanje virtualnega krmilnika, 7-Zip za razširjanje prenesene URSim VDI in VirtualBox 5.2.6 za sočasno poganjanje URSim na našem gostiteljskem računalniku.

3) Virtualni krmilnik smo povezali s simulacijo robota. Pri tem smo opisali, kako v VCP omogočiti funkcijo povezljivosti, kako pravilno konfigurirati Universal Robots RTDE povezavo med VCP in virtualnim krmilnikom, kako ustrezno povezati spremeljivke, da se sklepi robota v simulaciji odzivajo na signale iz krmilnika in kako vključiti povezavo med VCP in URSim.

4) Za našo študijo primera smo znotraj VCP z Works knjižnico sestavili model robotske celice, ki je bil sestavljen iz dveh tekočih trakov, UR10 robota in njegovega krmilnika.

Robot je pri tem izdelke iz enega tekočega traka postavljal v škatle, ki so se nahajale na drugem tekočem traku. Pri tem smo za virtualni krmilnik napisali ''primi in spusti'' program za delovanje robota.

5) Napisani robotski program smo vstavili v virtualni krmilnik in ocenili ustreznost skupnega delovanja simulacije in krmilnika

Predlogi za nadaljnje delo

Zaradi obsežnosti in aktualnosti teme, se nam za nadaljnje dela ponuja mnogo različnih

(40)

Zaključki

sprejemajo signale iz okoliških strojev in naprav, bi se lahko posvetili obojestranski komunikaciji med virtualnim krmilnikom in simulacijo robota. V industriji se na isti proizvodnji liniji pogosto uporablja več robotov hkrati; smiselno bi bilo, da se poizkusi simulirati povezavo več robotov z več krmilniki. Pri tem bi lahko tudi raziskali simulacije in virtualne krmilnike robotov drugih proizvajalcev, saj se med seboj precej razlikujejo.

(41)

Literatura

[1] M. Dahl, K. Bengtsson, P. Bergagård, M. Fabian, P. Falkman: Sequence Planner:

Supporting Integrated Virtual Preparation and Commissioning. IFAC- PapersOnLine 50(1) (2017) str. 5818-5823.

[2] P. Hoffmann, R. Schumann, T. M. A. Maksoud, G. C. Premier: Virtual

Commissioning Of Manufacturing Systems - A Review And New Approaches For Simplification. V: A. Bargiela, S. A. Ali, D. Crowley, E. J.H. Kerckhoffs (ur.):

Proceedings - 24th European Conference on Modelling and Simulation. Kuala Lumpur, Malezija, 2010, str. 175-181.

[3] Chi G. Lee, Sang C. Park: Survey on the virtual commissioning of manufacturing systems, Journal of Computational Design and Engineering 1(3), (2014), str. 213–

222.

[4] G. Reinhart, G. Wünsch: Economic application of virtual commissioning to

mechatronic production systems. Production Engineering 1(4) (2007) str, 371–379.

[5] I. P. Salvatierra: Simulation software for automation industry – Factory I/O and KUKASim software: diplomsko delo. Gävle , 2018.

[6] P. Hoffmann, R. Schumann, T. M. A. Maksoud, G. C. Premier: Research on simplified modelling strategy for virtual commissioning. V: F. Breitenecker, A, G.

Bruzzone, E. Jimenez, F. Longo, Y. Merkuryev, B. Sokolov (ur.): 24th European Modeling and Simulation Symposium. Dunaj, Avstrija, 2012, str. 293-302.

[7] P. Sarhadi, S. Yousefpour, S: State of the art: hardware in the loop modeling and simulation with its applications in design, development and implementation of system and control software. International Journal of Dynamics and Control 3 (2015) str. 470–479.

[8] A. Bouscayrol: Different types of Hardware-In-the-Loop simulation for electric drives. 2008 IEEE International Symposium on Industrial Electronics. Cambridge, UK, 2008, str. 2146-2151.

[9] B. Brooks, A. Davidson, I. McGregor: The evolving relationship between simulation and emulation: faster than real-time controls testing. V: A. Tolk, S. Y. Diallo, I. O.

(42)

[10] M. B. Ayed, L. Zouari, M. Abid: Software In the Loop Simulation for Robot Manipulators. Engineering, Technology & Applied Science Research 7(5) (2017) str. 2017-2021.

[11] M. Schamp, L. Van De Ginste, S. Hoedt, A. Claeys, E. Aghezzaf, J. Cottyn: Virtual Commissioning of Industrial Control Systems - a 3D Digital Model Approach.

Procedia Manufacturing 39 (2019) str. 66-73.

[12] A. M. Madni, C. C. Madni, S. D. Lucero: Leveraging Digital Twin Technology in Model-Based Systems Engineering. Systems 7(1): 7 (2019).

[13] W. Shen, T. Hu, Y. Yin, J. He, F. Tao, A. Y. C. Nee: Digital twin based virtual commissioning for computerized numerical control machine tools. V: F. Tao, A. Liu, T. Hu, A. Y. C. Nee (ur.): Digital Twin Driven Smart Design. Academic Press, London, 2020.

[14] Changelog for VirtualBox 6.0. Dostopno na:

https://www.virtualbox.org/wiki/Changelog-6.0, ogled: 22. 4. 2021.

[15] T. Finley-Moise: How to Enter BIOS Setup on Windows PCs. Dostopno na:

https://www.hp.com/us-en/shop/tech-takes/how-to-enter-bios-setup-windows-pcs, ogled: 22. 4. 2021.

[16] How to Enable Virtualization (Hypervisor) in BIOS/UEFI. Dostopno na:

https://www.isumsoft.com/computer/enable-virtualization-technology-vt-x-in-bios- or-uefi.html, ogled: 23.4.2021.

[17] Universal robots: Guide: Setting up the virtual environment to simulate UR robots.

Universal robots, Odense, 2020. Dostopno na: https://academy.universal-

robots.com/media/jiehhszc/ursim_vmoracle_installation_guidev03_en.pdf, ogled:

1.5. 2021.

(43)

Reference

POVEZANI DOKUMENTI

Formirala se je Islamska skupnost Bosne in Hercegovine, in sicer tako, da se je Starešinstvo Islamske skup- nosti za Bosno in Hercegovino, Hrvaško in Slovenijo preimenovalo..

dešifríranje -a s (angl. decryption, decypherment, decrypting, decipherment) postopek, pri katerem se tajnopis z uporabo šifrirnega algoritma in šifrirnega ključa spremeni

robotske revolucije se nanašata na napredne robote in tehnologije umetne inteligence, uporabo robotov tako v proizvodne namene kakor v vsakdanjem življenju ter oblikovanje družbe

Poleg tega omogoča vklop in izklop odmeva, ki vsa sporočila, ki jih prejme s sintetizatorja, predvaja tudi na računalniku; vklop in izklop zakasnitve, ki

Opisan je postopek prenosa podatkov o študentu iz 'testnega' okolja na strežniku na pametni telefon, kako so podatki shranjeni in prikazani na zaslonu ter kako se

V tretjem poglavju sem se posvetil splošnemu opisu nadzornih sistemov (SCADA), arhitekturi, principu komunikacije in opisu funkcionalnosti, ki jih taki sistemi

43 Sinhronizacijsko ogrodje Microsoft Sync Framework – MSF Server Sync Provider Proxy: V N-nivojski sinhronizaciji je posredovalni strežnik (angl. proxy) zadolžen za posredovanje

Korak 2: Izraˇ cun mnoˇ zice reˇsitev IK (Poglavje 3) je postopek zaporednih mate- matiˇ cnih operacij, ki na podlagi podanih koordinat (toˇ ck X, Y, Z) izraˇ cuna vrednosti