Pick & Place folyamatok a RoboDK-ban

A mostani bejegyzésben közelebbről is megvizsgáljuk a Pick & Place folyamatokat, valamint azt is, hogy ezeket hogyan tudjuk a RoboDK-ban megvalósítani.

A Pick & Place folyamatok az esetek többségében könnyedén kiválthatók robottal, remekül szimulálhatók, valamint jó kiindulópontot jelentenek egy gyártórendszer automatizálásakor, hiszen kétségkívül mindenhol találkozunk olyan eljárással, ahol a munkadarabok mozgatásához emberi erőforrást használunk. Az ilyen feladatok ráadásul konzisztenciát igényelnek, mely monoton munkavégzéshez vezet. Nem rossz ötlet tehát ezek elvégzését például robotok kezébe adni, amik ezt gyorsan, és költséghatékonyan művelik. Persze az anyagmozgatást nem feltétlen robotok végzik egy üzemben, mi most mégis csak velük fogunk foglalkozni.

De mi is az a Pick & Place?

Pick and place-nek hívjuk az olyan eljárásokat, ahol valamilyen gép rövidtávú anyagmozgatást végez. Ez természetesen sokféleképpen megvalósulhat. Lehet szó rakatképző vagy palettázó folyamatról, amikor például raklapra fel- vagy le-pakolunk, de beszélhetünk valamilyen csomagoló eljárásról, összeszerelésről vagy a munkadarab egyik állomásról a másikra való áthelyezéséről. Ide tartozik még az is, amikor egy robot csak tartja az alkatrészt, amin közben valamilyen más eljárást végeznek. Tömören tehát, a gép a tárgyat megragadja, átmozgatja máshová, majd elengedi.

Pick & Place a RoboDK-ban

Az imént említett példák természetesen RoboDK-ban is megvalósíthatók és bár az elv valóban egyszerű, ha manuálisan szeretnénk összeállítani a programot, az a mozgatandó objektumok esetlegesen magas száma miatt hosszadalmas feladat lehet. Az RDK fejlesztői azonban hamarosan bővíteni szeretnék a funkciók listáját egy olyan eszközzel, ami éppen az ilyen megoldásokra fókuszál és nagyban megkönnyíti a dolgunkat abban az esetben, ha rengeteg hasonló alprogramot kéne létrehoznunk. A Palletizing Plug-in fejlesztése ezen cikk készítése idejében „Beta” fázisban van, így teljesnek nem mondható, de a szerepét kifogástalanul betölti.

Hiszen a hagyományos módszer esetében a mozgatni kívánt elemekhez egyesével kell hozzárendelnünk a megközelítési és megfogási pontokat, majd ugyanezt az elengedési oldalon. A program utasításainak létrehozásához ezután a rengeteg „Target”-et kell kiválogatnunk helyes sorrendben. A számos célpont között pedig könnyen összezavarodhatunk.

Ezzel szemben a Plug-in kezelőfelületén csupán néhány dolgot kell beállítanunk: meghatározzuk a mozgások, illetve egy elem referencia-koordinátarendszerét, illetve megadjuk, hogy az elemek hogyan rendeződnek el az alátámasztáson (ami esetünkben egy raklap). Arra is lehetőségünk van, hogy több, egymáson elhelyezkedő és különböző elrendezésű rétegeket hozzunk létre. Tetszés szerint személyre szabhatjuk a megközelítési és visszahúzási mozdulatokat is.

Továbbra is hagyományos módon kell azonban meghatároznunk a megfogás és elengedés parancsokat, valamint definiálnunk kell valamilyen inicializáló alprogramot, ami a főprogram lefutásának elején megy végbe. Ez a plusz feladat persze nem feltétlen hátrányos, hiszen a legtöbb esetben szükség van valamilyen kezdeti mozgásra, ha más nem arra, hogy a robot alaphelyzetből a raklap fölé álljon be. Ezután a Plug-in létrehozza a Targeteket és magát a teljes programot is. Tetszés szerint lehetőségünk van további alfolyamatokat rendelni a pakolófolyamatunkhoz, amit a Palletizing Plug-In ügyesen épít be, hogy aztán például szekvenciálisan újra és újra lejátszódjanak.

Szerző: Szabó Balázs – gyakornok.