FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ MRBT Stacionární průmyslový robot EPSON C3 aplikace pro prezentaci Autoři: Jaromír Picka ID:115255 Jaroslav Večeřa ID:115306 Roman Zach ID:115311
ZADÁNÍ PROJEKTU Seznamte se s šestiosým průmyslovým robotem EPSON C3 a jeho ovládáním. Úkolem bude navrhnout interaktivní aplikaci, kterou bude robot předvádět na prezentačních akcích. Cílem je zábavnou formou ukázat výsledky práce našich studentů a možnosti robotu.
HARDWARE Byl navržen a zkonstruován nástavec pro upevnění popisovače whiteboardmarker na rameno robota. Vzhledem k tomu, že od ramena není k dispozici žádná zpětná vazba o tlaku popisovače na podložku, byl vytvořen mechanismus pružného uchycení. Pružné uchycení zabraňuje zničení popisovače příliš velkým přitlačením k povrchu, kdy by došlo k rozmáčknutí hrotu popisovače. A zároveň zajišťuje popisovači stálý kontakt s povrchem. obrázek 1 Výkres nástavce pro popisovač
SOFTWARE Rozhraní vytvořené aplikace Pro ovládání robota je použita knihovna, která zajišťuje komunikaci po ethernetu (Třída TcpC3Com) a v které jsou implementovány příkazy pro řízení robota (Například Move a Go). Předmětem naší práce bylo navrhnout aplikaci, která předvede schopnosti robota. Výsledný vzhled aplikace je na následujícím obrázku: Obrázek 2. Aplikace pro robota EPSON C3 Naše aplikace je schopna psát za pomoci robota text a kreslit obrázky. Co se týká textu, tak bylo naimplementováno základní formátování textu a několik velikostí písma. Komunikace s robotem se nastaví následovně (IP 10.0.41.10 a port 2000): Obrázek 3. Nastavení komunikace Komunikace s robotem se otevře stiskem tlačítka Otevření TCP.
Jakmile je komunikace zahájena, tak stiskneme v nabídce přesun ramene tlačítko Inicializace. Pro přesun na určitou pozici jsou zde tlačítka Move (pohyb po přímkách, nemusí vždy najít cestu) a Go(dráha není nijak definována, výhoda je, že metoda Go nalezne vždy cestu). Obrázek 4. Inicializace a metody Move a Go Podrobnější údaje ke komunikační knihovně naleznete v práci autora Martina Fireše [1]. Princip psaní textu a kreslení Nyní se zaměříme na předmět naší práce (psaní textu a kreslení obrázků). Pro vymezení psací plochy byla vytvořena nabídka nastavení, ve které se vymezí psací plocha (MEZE X a MEZE Y) a popřípadě je možno ovlivnit jak vysoko bude fixa vyjíždět nad psací plochu (Zdvih). Obrázek 5. Nabídka nastavení Poslední menu slouží k zadání textu, který má být vypsán, nebo k výběru obrázku, který má být vykreslen. Obrázek 6. Ovládání vlastní ukázkové aplikace
Tlačítko servisní poloha slouží k najetí robotu do servisní polohy, ve které je možno pohodlně přišroubovat nebo odšroubovat námi vytvořený kreslící nástavec. Obrázek 7. Servisní poloha sloužící k přimontování kreslícího nástroje Tlačítko init. poloha pro text slouží k najetí do pozice, od které se začne vypisovat. Tlačítkem vypsat text se vypíše text zadaný do textboxu text.
Obrázek 8. Ukázka vypsaného textu v několika velikostech Pomocí tlačítka logo FEKT se vykreslí logo fakulty: Obrázek 9. Vykreslené logo fakulty
Nakonec bylo naimplementováno několik smajlíků (tlačítko SMAJLÍK): Popis vytvořených metod Obrázek 10. Smajlík V této části bude uveden soupis metod, které byly při programování projektu implementovány. Každá uvedená metoda obsahuje stručný funkční popis. Najetí do servisní polohy private void button1_click(object sender, EventArgs e) Metoda je volána při kliknutí na tlačítko Servisní poloha. Jsou odeslány souřadnice pro najetí do servisní polohy (viz Obrázek 6). Inicializační poloha pro psaní textu private void inittextbtn_click(object sender, EventArgs e) Metoda zajistí najetí do polohy vhodné pro psaní textu a je aktivována tlačítkem Init. poloha pro text.
Vlastní vypsání textu private void TestButt_Click(object sender, EventArgs e) Touto metodou se rozparsuje uživatelem vložený text. Je aktivována po stitku tlačítka Vypsat Text. Metoda zajišťuje rozdělení řetězce textu na více řádků a blokuje vypsání pokud je vložený text příliš dlouhý. Vlastní jednotlivých znaků zajišťuje metoda: public Bod VypisPismeno(char znak, Bod pocatecni) Této metodě je předán znak, který je třeba vypsat a objekt Bod, který obsahuje počáteční souřadnice pro psaní znaku. Metoda vrací opět objekt Bod, jehož souřadnice jsou použity jako vstupní pro další znak. Vykreslení loga FEKT public Bod VypisPismeno(char znak, Bod pocatecni) Tato metoda je volána po stisknutí tlačítka LOGO FEKT. Metoda nastaví robota do polohy vhodné pro psaní loga FEKT a spustí sekvenci příkazů pro jeho vykreslení. Vykreslení smajlíka public Bod Smile(Bod pocatecni) Metoda je volána stiskem tlačítka SMAJLÍK. Robot je následně nastaven do polohy vhodné pro vykreslení smajlíka. Byly naprogramovány 3 typy smajlíka. Příslušný tip si uživatel měl možnost zvolit před stiskem tlačítka pomocí ComboBoxu smilesize. Třída s konstruktorem objektů Bod public class Bod Třída obsahuje konstruktor, který vytvoří objekt Bod. ZÁVĚR Seznámili jsme se s šestiosým průmyslovým robotem EPSON C3. Pro jeho ovládání nám byla poskytnuta vytvořená knihovna pro jazyk C#, vytvořená panem Bc. Martinem Firešem. S využitím knihovny byla vytvořena aplikace pro prezentaci robota. Aplikace umožňuje vykreslit všechna písmena abecedy bez diakritiky. Celý text umí rozdělit do několika řádků a je možné zadat několik velikostí písma. Dále bylo do aplikace implementováno vykreslení několika smajlíků a loga fakulty FEKT. Aplikace je plně funkční a je schopná prezentovat možnosti robota EPSON C3.
LITERATURA: [1] Fireš, M. Obslužný program pro robotický manipulátor EPSON. Brno: Vysoké učení technické v Brně, Fakulta elektrotechniky a komunikačních technologií, 2011. 35 s. Vedoucí semestrální práce doc. Ing. Luděk Žalud, Ph.D..