MODUL 4 · UPOZNAVANJE I OSNOVE RADA U ROBOTSKOM SIMULACIJSKOM OKRUŽENJU
Nastavna jedinica 4.5
Korištenje programskih paketa za programiranje i simulaciju rada robota
Sve dosad naučeno spaja se u jednu stanicu. U njoj postoje robot, alat, obradak, transporter i ograda, a program koji ih pokreće provjerava se prije nego što išta dođe na stroj. Simulacija odgovara na tri pitanja: dohvaća li robot sve točke, sudara li se s nečim i staje li u zadani takt.
- izraditi virtualnu robotsku stanicu i postaviti njezine osnovne postavke
- navesti elemente virtualne stanice i njihovu ulogu
- izraditi simulacijski program orijentiran gibanju za rukovanje predmetom rada
- očitati statuse robota i protumačiti poruke o nedostižnim točkama i sudarima
- provesti simulaciju i validaciju paletizacije te očitati vrijeme ciklusa
- opisati postupak prijenosa provjerenog programa na stvarni robot
Izrada stanice i osnovne postavke
Rad počinje praznom stanicom u koju se iz knjižnice uvodi robot. Bira se točan model, jer o njemu ovise doseg, opsezi zglobova i brzine; model približne veličine daje simulaciju koja izgleda uvjerljivo, a na stroju ne radi. Zatim se postavlja koordinatni sustav stanice i robot se u njemu smješta na svoje mjesto, s visinom postolja i zakretom kakvi će biti u pogonu.
Slijede alat i korisnički koordinatni sustavi. Alat se uvodi kao model s definiranom radnom točkom i masom; bez ispravne radne točke svaka će putanja biti pomaknuta. Korisnički sustav veže se uz napravu ili paletu, čime koordinate iz baze podataka prestaju ovisiti o položaju robota u prostoru.
| Korak | Što se postavlja | Posljedica pogreške |
|---|---|---|
| izbor robota | model, doseg, nosivost | točke izvan stvarnog dosega |
| smještaj robota | položaj i visina postolja | sustavni pomak cijelog programa |
| alat | geometrija, radna točka, masa | pomaknuta putanja, kriva dinamika |
| korisnički sustav | ishodište naprave ili palete | podaci iz baze ne odgovaraju stanici |
| ulazi i izlazi | signali prema alatu i strojevima | program se ne može ispitati u cijelosti |
Elementi virtualne stanice
Stanica nije samo robot. U model ulazi sve što utječe na doseg, sudare i vrijeme ciklusa. Elementi koji se ne mogu pomicati modeliraju se pojednostavljeno, ali s točnim vanjskim mjerama; elementi koji se gibaju traže i opis gibanja.
| Element | Uloga u modelu | Što se mora znati |
|---|---|---|
| robot | izvodi gibanja | model, položaj, konfiguracija zglobova |
| alat | hvata i otpušta obradak | radna točka, masa, oblik za provjeru sudara |
| obradak | predmet rada | mjere, masa, mjesto hvatanja |
| transporter | dovodi i odvodi obratke | brzina, visina, mjesto zaustavljanja |
| stroj | izvor ili odredište obratka | položaj vrata, vrijeme obrade, signali |
| paleta | mjesto odlaganja | ishodište, raspored mjesta, visina sloja |
| ograda i vrata | zaštita i granice prostora | vanjske mjere, mjesta prolaza |
Ograda se često izostavlja jer robot u nju ionako ne bi smio ući. Upravo je zato treba modelirati: provjera sudara na modelu otkriva da lakat robota pri dugom gibanju prelazi liniju ograde, što se na stroju vidi tek kao udarac.
Simulacijski program orijentiran gibanju
Program u simulaciji piše se jednako kao na stroju, samo brže i bez rizika. Osnovni ciklus rukovanja ima uvijek istu kostur: sigurna točka, prilaz, hvatanje, odmak, prijenos, prilaz odlaganju, otpuštanje, povratak. Točke se ne uče vođenjem nego se uzimaju s geometrije modela ili računaju iz podataka.
PROC ciklus()
MoveJ sigurna, v1000, z50, alat;
FOR n FROM 1 TO brojPozicija DO
uzmi := pozicijaIzBaze(n);
MoveJ Offs(uzmi, 0, 0, 150), v1000, z20, alat;
MoveL uzmi, v200, fine, alat;
SetDO hvataljka, 1;
WaitTime 0.25;
MoveL Offs(uzmi, 0, 0, 150), v300, z20, alat;
odlozi := tockaOdlaganja(n, stupaca, redova);
MoveJ Offs(odlozi, 0, 0, 200), v1000, z50, alat;
MoveL odlozi, v250, fine, alat;
SetDO hvataljka, 0;
WaitTime 0.25;
MoveL Offs(odlozi, 0, 0, 200), v400, z20, alat;
ENDFOR
MoveJ sigurna, v1000, fine, alat;
ENDPROCU ovom se kratkom potprogramu vidi sve iz prethodnih jedinica: petlja s brojilom, poziv funkcije koja vraća položaj, podaci iz baze i upravljanje izlazom prema hvataljki. Simulacija taj program izvodi nad modelom i za svaki prolaz mjeri vrijeme.
Statusi robota i poruke
Tijekom simulacije okruženje prati stanje robota i javlja se čim nešto nije u redu. Poruke se ne preskaču: svaka od njih znači da bi se na stroju dogodio zastoj ili kvar.
| Poruka | Uzrok | Postupak |
|---|---|---|
| točka nije dostižna | položaj izvan radnog prostora ili izvan opsega zgloba | pomaknuti napravu, zakrenuti robot ili promijeniti konfiguraciju |
| sudar | preklapanje alata ili ruke s modelom okoline | podignuti prilaz, uvesti međutočku, promijeniti redoslijed |
| blizina singularnosti | osi se poravnavaju, brzina zgloba naglo raste | zaobići područje međutočkom ili promijeniti orijentaciju alata |
| prekoračena brzina osi | zahtjev za brzinom većom od dopuštene | smanjiti brzinu putanje ili produljiti segment |
| prekoračena nosivost | masa alata i obratka iznad dopuštene | provjeriti podatke o masi i položaju težišta |
Nedostižna točka najčešće nije posljedica prekratkog dosega nego konfiguracije. Robot bi točku mogao dohvatiti s laktom u drugom položaju, ali u zadanoj konfiguraciji ne može. Zato se prije premještanja naprave uvijek provjerava može li se ista točka postići drugim položajem zglobova.
Zapamtite
Simulacija bez prijavljenih poruka nije dokaz ispravnosti. Ona samo znači da u modelu nema onoga što je model u stanju prepoznati. Kabeli, crijeva, nakupine strugotine i ljudske ruke u modelu ne postoje.
Praćenje složene geometrije i validacija
Kada putanja mora slijediti rub ili površinu obratka, točke se ne zadaju pojedinačno nego se izvode iz geometrije. Odabere se krivulja na modelu, zada se razmak između točaka i način orijentacije alata, a paket iz toga generira niz naredbi. Za ravninsku konturu dovoljno je zadržati stalan nagib alata; za prostornu krivulju orijentacija se veže uz normalu površine, pa se alat po putanji zakreće.
Gusto postavljene točke daju glatku putanju, ali produljuju program i opterećuju kontroler. Rijetko postavljene točke daju kraći program uz odstupanje od stvarnog ruba. Razmak se zato bira prema dopuštenom odstupanju tetive, a ne prema osjećaju.
Validacija paletizacije provodi se u četiri koraka. Prvo se pusti cijeli ciklus za punu paletu, ne samo za nekoliko komada, jer se problemi pojavljuju na rubovima i na gornjem sloju. Drugo se uključi provjera sudara za sve elemente stanice. Treće se očita vrijeme ciklusa i usporedi sa zahtijevanim taktom. Četvrto se pregleda prikaz putanje i uklone nepotrebni zaobilasci i zaustavljanja.
Pažnja
Vrijeme ciklusa iz simulacije vrijedi samo ako okruženje koristi model stvarnog kontrolera. Kod paketa koji samo interpoliraju gibanje odstupanje može biti i trećina vremena, najčešće zato što se ne uzimaju u obzir stvarna ubrzanja i obrada zona zaobljenja.
Iz vremena pojedinih dijelova ciklusa računa se vrijeme po komadu, vrijeme punjenja palete i broj paleta u smjeni. Vrijeme izmjene palete dodaje se jednom po paleti.
Prijenos programa na stvarni robot
Provjeren program prenosi se na kontroler mrežom ili prijenosnom memorijom. Prijenos je samo prvi korak; slijedi usklađivanje. Na stroju se izmjere dvije do tri referentne točke naprave i palete, a zatim se korisnički koordinatni sustav pomakne tako da izmjereno stanje odgovara modelu. Time se uklanja najveći dio odstupanja između modela i stvarnosti.
Nakon usklađivanja program se izvodi smanjenom brzinom, korak po korak, uz spremnu tipku za zaustavljanje. Provjeravaju se mjesta hvatanja i odlaganja, prilazi i signali prema alatu. Tek kada cijeli ciklus prođe bez ispravke, brzina se postupno podiže na radnu, a stanica prelazi u automatski rad.
Na kraju se model ažurira prema stvarnom stanju. Izmjene napravljene na stroju vraćaju se u stanicu u računalu, jer model koji zaostaje za pogonom prestaje biti koristan već nakon druge izmjene.
Ključni pojmovi
| Pojam | Značenje |
|---|---|
| Virtualna stanica | Model ćelije u simulacijskom paketu s robotom, alatom, obratkom i okolinom. |
| Nedostižna točka | Položaj koji robot u zadanoj konfiguraciji ne može postići. |
| Provjera sudara | Otkrivanje preklapanja modela robota, alata i okoline tijekom gibanja. |
| Odstupanje tetive | Najveća razlika između stvarnog ruba i putanje kroz izračunate točke. |
| Validacija simulacije | Provjera punog ciklusa na sudare, dohvat i vrijeme ciklusa. |
| Usklađivanje s ćelijom | Mjerenje referentnih točaka na stroju i pomicanje korisničkog sustava. |
Provjeri se
Kratka provjera prije prelaska na sljedeću jedinicu. Odgovor se potvrđuje klikom, a obrazloženje se prikazuje odmah.
Pitanje 1 od 3
Poruka o nedostižnoj točki najčešće se rješava:
Ista se točka često može postići drugim položajem zglobova, pa se to provjerava prije premještanja opreme.
Pitanje 2 od 3
Zašto se ograda modelira u virtualnoj stanici?
Lakat robota pri dugom gibanju može prijeći liniju ograde, što se bez modela ne vidi.
Pitanje 3 od 3
Validacija paletizacije provodi se:
Problemi s dohvatom i sudarima pojavljuju se upravo na rubovima i na gornjem sloju.
Odgovoreno 0 od 3.