CAM Tippek #8: Robot programozás CAM rendszerrel problémái – 1. rész

Az ipar egyre több területén terjed el a robot karok használata. Vannak olyan területek, melyeken kialakult módszerekkel és hatékonyan használják a különböző ipari tevékenységek felgyorsítására és üzembiztosabb elvégzésére. Logikusan adódik a robotok alkalmazása a marási megmunkálások során is, pontosabban fogalmazva olyan műveleteknél, ahol a robotnak adott vezérelt pályákon kell végig haladva valamilyen műveletet elvégezni. Ebben az esetben kézenfekvő megoldásként kínálkozik valamilyen CAM rendszert munkára fogni, hogy a robotunk mozgáspályáját ebben készítsük el. Nézzük meg milyen problémákat kell megoldanunk, ha ezt hatékonyan és főleg üzembiztosan akarjuk megoldani!

robotinterface2

A robotok adott mozgáspályán történő mozgásával nagyon sokféle ipari műveletet tudunk végrehajtani: sorjázás, vágás, marás, festés, hegesztés. Tulajdonképpen bármilyen olyan műveletnél hatékony megoldás lehet, ahol a robot “kezébe” tudjuk adni a megfelelő szerszámot (maró, hegesztő, kés, festékszóró, stb.) és azzal a műveletnek megfelelő pályán végig tudjuk vezetni. Ennek a megoldására az egyik lehetséges megoldás a betanítás, akkor a robotot egyszerűen megtanítjuk milyen pályát kell bejárnia. Ez a módszer sok esetben nem járható illetve több hátránya is van (pontatlanság). Logikus és hatékony megoldásnak kínálkozik, hogy a robotunk mozgását egy CAM szoftverrel vezéreljük, hiszen ezek a rendszerek képesek mozgáspályákat készíteni – az már csak funkcionális elképzelés, hogy az adott pálya mar, hegeszt, vág vagy éppen fest.

Vizsgáljuk meg milyen problémákat kell figyelembe vennünk és megoldanunk, ha egy ilyen CAM rendszeres offline robot programozást szeretnénk megvalósítani:

1. A megfelelő pálya generálása.

A CAM rendszerrel történő robot programozás talán legerősebb oldala a pályagenerálás, hiszen a CAM rendszereket erre fejlesztették ki: megfelelő többtengelyes mozgáspályákat kell generálniuk. Ezért elmondható, hogy egy CAM rendszer a legtöbbször hatékonyan meg tud birkózni azzal a feladattal, hogy egy szerszámot egy kontúr mentén megfelelő irányultsággal vezessen végig (vágás, sorjázás, gravírozás, hegesztés) vagy épp egy adott felületen egyenletes mintázattal pályákat készítsen úgy, hogy a meghatározott területet egyenletes pályaközökkel járja be a szerszám, és minden pontban megfelelő irányú legyen (marás, festés, hegesztés). Az adott technológiához szükséges pályák elkészítésére a CAM rendszerekben található szerszámpályák közül a legalkalmasabbal elkészítjük a mozgáspályát, mely a pálya pontjainak térbeli elhelyezkedése (X,Y,Z koordináták)mellett még azt információt is tartalmazza, hogy a pálya mentén az egyes pontokban milyen irányban (I,J,K vektor) kell állnia a szerszámnak.

Polírozó robot offline programozással (PowerMILL Robot Interface).

2. A robot “nyelvére lefordítani” a mozgáspályát

A mozgáspályák elkészítése után a következő fontos feladat, hogy a robot “nyelvére lefordítsuk” a CAM rendszerben elkészített pályát. Ezt a feladatot, hasonlóan a maráshoz,  a posztprocesszor látja el ebben az esetben is. Van azonban pár jelentős különbség, mely megnehezít(het)i a dolgunkat. Példaként vizsgáljunk egy 6 csuklóponttal rendelkező robotot. Ebben az esetben a következő alapkérdések merülnek fel:

a, A CAM rendszerünk képes kezelni 6 forgó tengelyt?

IGEN: Amennyiben a CAM rendszerünk posztprocesszora képes kezelni legalább 6 forgó tengelyt, akkor lehetőségünk van kiszámítani a pálya mentén az összes forgó csukló szögét, így minden pályapontban egyértelműen meghatározott a robot pozíciója. Az ütközésvizsgálatunk egyértelműen elvégezhető (lásd később) – amennyiben a robot kinematikai modellje rendelkezésre áll. Az egyetlen hátrány ezzel a módszerrel, hogy a pálya adott pontjában a robot nem biztos, hogy optimális “helyzetben” van, hiszen a CAM rendszer által számolt pálya pontra és adott irányra a robot többféle “megoldással” – helyzettel rá tud állni. Ezt az optimális helyzetet a robot saját vezérlése tudja, azonban most a CAM rendszerünk számolta a csuklók szögeit, így az csak abban az esetben lehet optimális, ha az adott robot gyártójától ez az információ a CAM rendszerben megtalálható. (Ez legtöbbször akkor teljesül, ha a robot programozásához az adott robot gyártója által fejlesztett CAM rendszert vásárolunk.)

Előnyök: – Teljes ütközésvizsgálat lehetséges a CAM rendszerben
Hátrányok: – Nem (biztosan) optimális robot mozgás
Szükséges:
– A CAM rendszer támogasson megfelelő számú forgó tengelyt.
– A robot kinematikai modellje.

robotmaster2NEM: Amennyiben a CAM rendszerünk nem támogat legalább 6 forgó tengelyt, akkor is van esélyünk természetesen a robot mozgatására, hiszen a legtöbb robot vezérlője képes kiszámítani a robot (optimális!) helyzetét akkor, ha ismert a szerszám vezérelt pontja és abban a szerszám iránya (XYZ + IJK). Ebben az esetben nem szükséges, hogy a robot kinematikai modellje rendelkezésünkre álljon (hiszen a CAM rendszer amúgy sem tudna mit kezdeni vele) illetve a robot optimális mozgása is biztosított, hiszen azt a robot vezérlője számolja. Viszont nagy hátrány, hogy a teljes, robot elemeire kiterjedő ütközésvizsgálat nem, vagy csak nagyon limitált esetekben megoldott. Ez ezért van, mert a robot pillanatnyi helyzete (a forgópontok szögei) a robot vezérlőjén számítódnak ki, így azok nem ismertek a CAM rendszer számára.

Előnyök:
– A CAM rendszerünknek nem kell legalább 6 forgó tengelyt támogatnia.
– Nem szükséges a robot kinematikai modellje.
– A robot optimális mozgást végez a pálya mentán.
Hátrányok: – A robot elemeire kiterjedő ütközés vizsgálat nem, vagy limitáltan megoldott.
Szükséges: – Nincs speciális szükséglet.

IGEN, De NEM-ként használva: Ebben a megoldásban a CAM rendszerünk támogat legalább 6 forgó tengelyt, ismert a robot kinematikai modellje is, de a robotnak mégis csak a pálya XYZ,IJK koordinátáit adjuk meg. Így a robot mozgása optimális lesz, hiszen azt a robot vezérlője számolta ki. Ha a valós mozgás információit – a pálya mentén a forgópontok szögei – vissza tudjuk juttatni a kinematikai szimulátorunkba, akkor a teljes ütközésvizsgálat is megoldható. Ez legtöbbször csak úgy oldható meg, hogy a roboton “a levegőben” (üres megmunkálási környezetben) futtatjuk le a pályát, majd a valós csuklószög értékeket visszatöltjük a kinematikai szimulátorunkba és elvégezzük az ütközésvizsgálatot.

Cikkünk folytatásában tovább elemezzük a robotok CAM rendszerrel történő offline programozását.