You are on page 1of 37

ROBOTTECHNIKA.

Dr. Cski Tibor egyetemi docens

ROBOTTECHNIKA. Bevezets Alapfogalmak Robotok morfolgiai felptse Alapmozgsok Orientci Robotikai rendszer elemei Hardver Szoftver Robotok geometriai rendszerei Klso koordintarendszerek s nevezetes pontok Homogn transzformci Denavit-Hartenberg transzformci A robotvezrls belso alapfeladata Robotok gpi funkcii Pozcionls Pozcionl rendszerek felptse A pozcionl rendszer rszei Motor Mozgstalakt tmro Irnyt rendszer Megfogs rzkels Belso szenzorok tmrok Kommunikci Robot kommunikcija a kiszolglt berendezssel Robotok programozsa On-line programozs Off-line programozs

1 4 4 7 7 8 8 8 9 9 10 11 12 13 13 13 13 13 13 13 13 13 13 14 14 14 17 19 24 24 24

Cski Tibor: Robottechnika eloadsvzlat

Programnyelvek Programnyelvek szintjei Gpi kd robotprogramozs NC szeru (G formtum) programnyelv Robotfunkcikra orientlt nyelvek Mozgsler nyelvek AML Deklarcik Opertorok s standard fggvnyek. Mozgsutastsok Nvekmnyes mozgsok. Abszolt mozgsok Palettval kapcsolatos utastsok Egyb, mozgssal kapcsolatos utastsok Megfog utastsok Kommunikcis s vrakoz utastsok Programtechnikai utastsok Az AML editor Az AML szimullt betants Az AML szimultor BAPS VAL Feladatler nyelvek AUTOPASS Robotok alkalmazstechnikja Tipikus robotizlt munkahelyek A robotizlt munkahely eszkzei A robot informcis kapcsolatai Esettanulmnyok Cella kiszolgls Szerels Nemzetkzi trendek, irnyzatok Robot s mechatronika Irodalomjegyzk

25 25 25 25 25 25 25 26 27 28 28 29 30 31 32 32 33 34 35 36 36 36 36 36 37 37 37 37 37 37 37 37 37 37

Cski Tibor: Robottechnika eloadsvzlat

Bevezets A tantrgy clkituzse: robotok, mint mechatronikai egysgek megismerse A robotokban alkalmazott alapveto egysgek ttekintse A robotok rendszerekben val mukdtetsnek felvzolsa A robotok programozsa alapjainak elsajttsa A Robot alkalmazsok tanulmnyozsa Fejlodsi tendencik megismerse Mi az a robot? A sz eredete a szlv rabota, ami munkt jelent. A magyar nyelvben a robot kemny, unalmas, fraszt munka, ebbol a szlv szbl ered. A robot mai jelentsei: (kznyelvi): fraszt munka hztartsi gp jtk szoftver (pl.webcrawler) (irodalmi) technikai alkots Karel Capek 1921 Isaac Asimov 1950 ipari robot (Ennek a tantrgynak ez a tmja)

Alapfogalmak A robot mechatronikai szerkezet, amely (nylt) kinematikai lnc mechanizmust s (intelligens) vezrlst tartalmaz, irnytott mozgsokra kpes automatikus mukdsre kpes elort programozhat feladatokat vgez egyttmukdik a krnyezetvel

Cski Tibor: Robottechnika eloadsvzlat

Mechatronics: The synergistic integration of mechanical engineering with electronics and intelligent computer control in the design and manufacture of products and processes. Azaz: A mechatronika a gpszmrnki tevkenysg szinergikus integrcija az elektronikval s az intelligens szmtgpes vezrlssel a termkek s folyamatok tervezsben s a gyrtsban. A robotok felosztsra sokfle szempont ltezik. A japn s az eurpai terminolgia eltr egymstl. Japnban minden robot, ami mozog s mg valamit csinl.

Mozgatott mechanizmus: ipari manipultor (buta vezrls, kevs szabadsg) programozhat manipultor egyszeru mozgs, kttt program teleopercis manipultor tetszoleges mozgs, nincs program ipari robot (okos vezrls, szabadon programozhat) pont-szakasz vezrlsu robot PS, point-straight line mozgs, a plya paramterei nem adhatk meg, csak a clpont programozhat plyavezrlsu robot szervorobot, CP, contiunuous path robot, a plya paramterei megadhatk, programozhatk (plyatpus, sebessg, gyorsuls, stb.) intelligens, szenzorvezrelt robot

Cski Tibor: Robottechnika eloadsvzlat

SC, sensor controlled, a programozott plytl eltro plyn


is mozoghat, fggvnyben. programozhat paramterek, pl.

ero

A robotok osztlyozhatk: mozgsuk munkaterk felptsk vezrlsk feladatuk energiaforrsuk mretk szerint stb. Robotok osztlyozsa mozgsuk szerint: csak a clpont programozhat (pont-szakasz vezrls) plya paramterei is programozhatk (plyavezrls) a Munkaterk szerint (nem igazn lnyegi osztlyozs, rszletesebben a morfolginl trgyaljuk): derkszgu koordints (hasb) munkateru robot hengerkoordints robot gmbkoordints robot Vezrlsk szerint: alacsony kltsgu (PLC jellegu) vezrls nagytuds (enhanced, CNC jellegu) vezrls Intelligens (mestersges intelligencia funkcikat alkalmaz) vezrls Feladatuk szerint: anyagkezelo robot: a robot a munkadarabot manipullja muveletvgzo robot: a robot a szerszmot kezeli, mozgatja szerelo robot: munkadarabot is, szerszmot is kezel, mozgat. Energiaforrsuk szerint: villamos hajts robot hidraulikus robot (pneumatikus robot)

Cski Tibor: Robottechnika eloadsvzlat

Robotok morfolgiai felptse Ha a tr (jelen esetben a robot munkatere) tetszoleges pontjt tetszoleges irnyts robotkzzel, vagy a kzben levo szerszmmal el akarjuk rni, 6 fggetlenl irnythat, mozgathat robotkoordintra van szksgnk.

Alapmozgsok Az alapmozgsok megvalstsa halad vagy forg mozgst lehetov tevo knyszerekkel trtnhet. Egy tetszoleges trbeli pont helyzett 3 koordintjval adhatjuk meg. Ez a pont elrheto 3 megfeleloen egymsra ptett robotkarral. A robot karjait, tagjait sszekto knyszerek lehetnek halad (H, vagy transzverzlis T, vagy prizmatikus P) knyszerek, mozgsok, csszkk, vagy forg (F, vagy rotcis R) mozgsok, knyszerek, tengelyek, csuklk. ltalnosan a robot tagokat sszekto knyszert robot csuklnak fogjuk nevezni, s T vagy R betuvel jelljk. A 3 koordintt teht 2 flekppen valsthatjuk meg, azaz 23 = 8 morfolgiai alapvltozat kpezheto. Ezek a kvetkezok: 1. TTT 2. TTR 3. TRT derkszgu robot (rectangular), hasb alak munkatr. (nem gyakori tpus) szerelo, festo robot (pl. ASEA)

Cski Tibor: Robottechnika eloadsvzlat

4. 5. 6. 7. 8.

TRR RTT RTR RRT RRR

(nem gyakori tpus) henger koordints robot (pl. FANUC, RB) (nem gyakori tpus) UNIMATE nehzzemi robot s SCARA szerelo robot PUMA, antropomorf robot.

Orientci Az orientci 3 szgkoordinta megadst s a 3 forg mozgs megvalstst jelenti. Robotkezekben alkalmazott leggyakoribb megoldsok: Euler: z - y' - z' Kardn: x - y' - z'' RPY (roll - pitch - yaw): y - z' - y'

Robotikai rendszer elemei Egy robotos rendszer ltalban egyttmukdo gpi s emberi eroforrsokat felhasznlva pl fel. Hardver Fobb hardver sszetevok: robot mint gpszeti berendezs a robotvezrlo technolgiai berendezs technolgiai berendezs vezrlse a trsberendezs, segdberendezs trsberendezs vezrlse PLC betant egysg szenzor szenzor processzor cella vezrlo tervezo s programoz munkalloms kommunikcis kapcsolatok Cski Tibor: Robottechnika eloadsvzlat 8

LAN Szoftver tervezo sw. UNIX op.r. CAD CAPP CAM hlzati sw. robot programoz rendszer UNIX vagy PC-s op.r. programoz feladat tervezo interpreter szimultor compiler kommunikcis sw. robot vezrlo rendszer op.r. RT robot program rtelmezo robot vezrlo taszkok kommunikcis sw.

Robotok geometriai rendszerei A robot mozgst clszeruen koordintarendszerekben adhatjuk meg. A koordintarendszerek kapcsolatt transzformcik rjk le. A robotot szemllhetjk kvlrol s a robot belsejbol, minden pont a lerstl fggetlenl azonos kell hogy legyen.

Cski Tibor: Robottechnika eloadsvzlat

Klso koordintarendszerek s nevezetes pontok

P(TCP) z PQ Q RP=p M x UM R z x UR U x
U universe vilg R robot W workpiece munkadarab P TCP programmed point, tool center point programozott pont Q a megmunklsi pont

MQ

Cski Tibor: Robottechnika eloadsvzlat

10

Homogn transzformci
z'

y' z Q q' P

q y

x'

A robotkarok egymshoz viszonytott helyzetnek egzakt megadsa rdekben minden robotkarhoz rgztnk egy gynevezett belso koordintarendszert s a karok egymshoz viszonytott helyzett ezen koordintarendszerek kztti transzformcival rjuk le.

TDH = Rot(z i 1 , i ) Trans(0,0, d i ) Trans (a i ,0,0) Rot(x i , i )


Kt koordintarendszer kztti kapcsolat lersnak matematikai eszkze a homogn transzformci. ltalnos esetben a kt koordintarendszer kztt eltols s elforduls is ltezik. Esetnkben az R kezdopont koordintarendszerben valamely Q pont helyzett a q helyvektor rja le. Szeretnnk ismerni ugyanezen pont helyzett a P kezdopont koordintarendszerben azltal, hogy meghatrozzuk a hozz tartoz q helyvektort.

q = T q'

A homogn transzformcis mtrix ltalnossgban a kvetkezo alak:

h p T= 0 0 0 1
Cski Tibor: Robottechnika eloadsvzlat 11

Ahol

3x3 orientcis mtrix,

eltolsi vektor.

gy a robot teljes trbeli helyzete megadhat.

Denavit-Hartenberg transzformci Hogyan vehetjk fel clszeruen ezeket a koordintarendszereket? Szablyok: A z tengelyek a knyszer (csukl, tengely, csszka) geometriai tengelyei, A belso koordintarendszerek kezdopontjai a zi -re lltott normltranszverzlisok talppontjai, 1. Kitro zi s zi+1 esetn egyrtelmuen meghatrozhat. 2. Metszo zi s zi+1 esetn a metszspont. 3. Prhuzamos zi s zi+1 esetn tetszs szerinti kezdopontot vlasztunk. 4. Egybeeso zi s zi+1 esetn tetszs szerinti kezdopontot vlasztunk. Az xi tengelyek irnya megegyezik a normltranszverzlisok irnyaival 1. Kitro zi s zi+1 esetn egyrtelmuen meghatrozhat. 2. Metszo zi s zi+1 esetn a tetszoleges, de clszeruen vlasztott xi irny. 3. Prhuzamos zi s zi+1 esetn vgtelen sok , de meghatrozott irny normltranszverzlis ltezik, de a kezdopont tetszoleges. 4. Egybeeso zi s zi+1 esetn tetszs szerinti irnyt s kezdopontot vlasztunk. Ilyen vlaszts mellett a robottagok egymshoz viszonytott helyzete az n. Denavit-Hartenberg paramterek ( , , d, a) segtsgvel ngy transzformcival megadhat. A paramterek kzl s d a robottagok mozgsa sorn folyamatosan vltozik, s a konstrukcisan rgztett lland rtkek, melyek az adott robotra jellemzok. Tbb robotkar egymshoz kapcsoldsa esetn az egyes koordintarendszerek transzformcijt megvalst DH mtrixok sszeszorzdnak. A transzformcit az egymst kveto tagprokra elvgezve a robot programozott pontjnak helyzete megadhat.

T =T,11,2 T ... H 0

Cski Tibor: Robottechnika eloadsvzlat

12

T DH

c s = 0 0

s c s s a c c c c s a s s c d 0 0 1

A robotvezrls belso alapfeladata

Robotok gpi funkcii

Pozcionls

Pozcionl rendszerek felptse

A pozcionl rendszer rszei Motor Mozgstalakt tmro Irnyt rendszer Megfogs A robotok megfogszerkezetei alkalmazkodnak az ltaluk kiszolglt technolgiai folyamathoz. Mivel az emberi kz munkavgzo kpessgt s mozgsait igyekszenek msolni, az emberi kz mozgst lekpzo szerkezet lenne a legkedvezobb, ez azonban nehezen valsthat meg. A klnbzo trgyak megfogsa alakzr vagy erozr kapcsolattal realizlhat. Megfogsi elvek: szortpofk (2, 3), ujjak, specilis kszlkek Feladatuk szerint: munkadarab megfogk, szerszm megfogk.

Cski Tibor: Robottechnika eloadsvzlat

13

rzkels A robotoknak mukdsk egyes fzisairl s a kiszolglt technolgiai folyamatrl klnbzo informcikkal kell rendelkeznik. Ezeket az informcikat a szenzorok szolgltatjk s a robot irnytrendszere rtelmezi oket. Szenzorok csoportostsi szempontjai: A krnyezetbol val informciszerzs mdja szerint: rintkezses, rintkezs nlkli. Az informcikat vagy a szenzor s a mrendo test kztti klcsnhatson alapul elv, vagy pedig a szenzorhoz kapcsolt kzeg pillanatnyi jellemzoi alapjn kapjuk. A szenzorok struktrja az alkalmazott mrotalakttl s a fizikai hatselvtol fgg. A mrotalaktk lehetnek: aktvak, passzvak. A passzv talaktok fizikai mennyisgei pl. ellenlls, induktivits, kapacits, stb. Az aktv talaktk jellemzoi pl. feszltsg, ram, tlts, stb. Alkalmazsi terletek. Az rintkezses szenzorok geometriai s fizikai jellemzokrol szolgltatnak informcit. Alkalmazsi helyeik robotokon: A krnyezettel val kapcsolattartsban ero, nyomatk, t (helyzet) rzkelse, A megfogszerkezetben ero s elmozduls lehatrolsa, A karokon ero, nyomatk, elmozduls rtknek meghatrozsa, A hajtrendszerben ero, nyomatk, nyoms, ramerossg s feszltsg mrse. Az rintkezs nlkli szenzorok leggyakoribb alkalmazsi terlete az tmrs, jabban az alakfelismers. Elonyk a tapintero hatsnak kikszblse. Elhelyezkedsk szerint megklnbztetnk klso s belso szenzorokat.

Belso szenzorok

A belso szenzorok a robotmechanikra, a hajtrendszerre s a megfogszerkezetre vannak teleptve. Funkcijuk szerint tmrok, szgsebessgmrok, ero-s nyomatkmrok.

tmrok

A robotkarok csuklkoordintit realizl szgelfordulsok s elmozdulsok pillanatnyi rtknek meghatrozsra szolglnak. Fajti: Digitlis, abszolt kdolt mrolc, kdtrcsa,

Cski Tibor: Robottechnika eloadsvzlat

14

Digitlis, nvekmnyes lineris rcs, forgad, Ero (nyomatk) rzkelo Elsosorban a hajtrendszerek s a technolgiai folyamattal kzvetlen kapcsolatban ll megfogszerkezetek s szerszmok mukdst szablyozzk. Mukdsi elvk a mroelem alakvltozsn alapul, amely a nylsmro blyegek segtsgvel ellenllsvltozss, illetve feszltsgvltozss alakthat. Mind egy-, mind tbbkomponenses ero-, illetve nyomatkrzkelok hasznlatosak.

Klso szenzorok A robot s a krnyezet kzt teremtenek kapcsolatot. A robotok leggyakoribb alkalmazsi terlete a felmrsek szerint: - nts, - kovcsols, - palettzs s egyszeru alkatrsz sszeraks, - ponthegeszts, - festkszrs, - vhegeszts, - sorjtlants, - automatikus ellenorzs, - gyrtcellban val alkalmazs, - automatizlt szerels. Szinte mindegyik terleten rendkvl fontos a klso rzkels, mert segtsgvel pl. a technolgiai folyamat turshatron kvli eltrseit is kezelni lehet. A klso szenzorok ltal szolgltatott informcik nvelik a robot intelligencia szintjt, segtsgkkel mdosthatk az eredeti mozgsplykat megvalst programok. A klso rzkels kt nagy terlete: tapintrzkels, ltrzkels. A tapintrzkels n. binris rzkels, azaz a szenzor rzkeli, hogy a robot kapcsolatba kerl-e valamilyen trggyal, de nem azonostja azt. Az rzkels trtnhet rintssel, mikrokapcsol, tapints tmro, vagy tapints induktv rzkelo ltal. Valamely trgy jelenlte annak megrintse nlkl is rzkelheto. Ennek megoldsai:

Cski Tibor: Robottechnika eloadsvzlat

15

Optikai

kibocst kibocst rzkel

rzkel fnyvisszaverdsen alapul fnyzron alapul

Induktv s kapacitv (ritkbb) rints nlkli rzkelok. A ltrzkelok a robot legfejlettebb szenzorai. Tulajdonkppen a kamert s a kpfeldolgoz processzort rtjk alatta. Tpusai: ktdimenzis ltrzkelo klnll trgyak binris rzkelsre, ktdimenzis ltrzkelo klnll trgyak szrke rnyalatai szerinti rzkelsre, ktdimenzis ltrzkelo egymssal rintkezo, vagy tfedsben lvo trgyak rzkelsre, ktdimenzis ellenorzo kszlkek, ktdimenzis vonalkvetok, klnll trgyrl hromdimenzis informcik kiszursre alkalmas rendszerek perspektvikus brzols, sztereotechnika, strukturlt megvilgts vagy psztz keress elvn, hromdimenzis informci kiszurse rendezetlen trgyhalmazokrl, trbeli helysznelemzs mobil robotok navigcijhoz, tvonalkeresshez s az akadlyok elkerlshez.

Cski Tibor: Robottechnika eloadsvzlat

16

Kommunikci
ZEMIRNYTS LAN KEZEL KEZEL Kazetta Floppy CAPP

D/A analg szervhoz CELLAVEZRL V24 tmr Bin I/O ROBOTVEZRL ROBOT MECHANIKA

Bin I/O TRSBERENDEZS

Prhuzamos interface Kls szmtstechnikai peifria SZENZOR

V24 KLS PROCESSZOR

A robot a kezelovel s tovbbi automatikusan mukdo berendezsekkel interfszeken keresztl kommunikl. A kommunikci a mukdshez s az egyttmukdshez szksges informcicsere megvalstst jelenti. A kommunikcikat megvalst interfszek Binris logikai interfsz Binris jeleket csatol a robotvezrlo s a robot, valamint a krnyezete kztt. A binris jelekkel trtno kommunikci a legegyszerubben megvalsthat, programozsa is a legegyszerubb. A binris jelek lekezelse ltalban PLC-vel, vagy PLI-vel trtnik. A robotvezrlo szempontjbl inputok pl. a krs bitek, felttel bitek, stb., outputok pl. a parancs bitek, nyugtz bitek, stb.

Digitlis interfsz A digitlis interfsz sszetett informcik gyakran ktirny tovbbtsra szolgl. Az informcik kdoltak. Az informcicsere szabvnyos protokollok segtsgvel trtnik. A bitszintu, binris logikai kommunikcinl intelligensebb partnereket felttelez (vezrlsek, intelligens szenzorok, stb.) Az tvitel mdja:

Cski Tibor: Robottechnika eloadsvzlat

17

Prhuzamos tvitel IEEE busz Centronics interfsz Soros tvitel RS 232 USB tvitel bit buszokon Analg interfsz A robotvezrlo s krnyezete kztti analg jelekkel trtno kommunikci lebonyoltsra szolgl. Analg jelekkel a pozcionl rendszerek szablyozkreit, illetve a szenzorok analg kimeno jeleit csatoljuk a robotvezrlohz. Ezen analg jelek kezelse nem tartozik kzvetlenl a programoz, illetve a robot opertor hatskrbe, ezrt rszletes trgyalstl itt eltekintnk.

Kezeloi kommunikcit megvalst interfsz A robot s a robotvezrls optimlis esetben automatikusan, emberi beavatkozs nlkl vgzi munkjt. Azokban az esetekben azonban, amikor az opertor kzremukdse is szksges (bellts, betants, programozs, hibakeress, stb.), megfelelo s jl hasznlhat kezelo szervek hatkonny tehetik a munkt. Hasonlan a korszeru CNC vezrlsekhez, a megjelents s az adatbeads knyelmessge, ttekinthetosge, a kezelot segto funkcik megvalstsa az eladhatsg egyik fontos szempontja lett. A korszeru robotvezrlsekben is egyre fontosabb a grafikus megjelents. Kijelzok: alfanumerikus display (grafikus) Nyomgombok: funkcigombok soft-key alfanumerikus Betant elemek: botkormny egr pozcionl gmb robotmodell

Robotprogram beviteli interfsz Az online vagy offline megrt programok bevitelre s a kiprblt s kijavtott, "belott" robotprogramok eltrolsra szolgl interfsz. Egyedi robotvezrlok esetn leggyakoribb a floppy lemez, rendszerbe integrlt robotvezrlseknl a hlzati interfsz az optimlis megolds.

Cski Tibor: Robottechnika eloadsvzlat

18

MDI Kazetta Floppy DNC (RS 232, LAN)

Robot kommunikcija a kiszolglt berendezssel A robot s a trsberendezs kztti kommunikci legfontosabb clja az egyttmukdo berendezsek szinkronizlsnak megvalstsa. A kvetkezokben nhny pldn keresztl a robotvezrlo s a trsberendezs kztti binris jelek segtsgvel trtno informcicsere megvalstsi lehetosgeit vizsgljuk. A pldk egy, a ksobbiekben ismertetendo programnyelven kszltek, de a pldk egyszerusge miatt mr ezen a helyen is rtheto a mukdsk. A robot s a trsberendezs egyttmukdsnek hardver s szoftver felttelei vannak. A kvetkezokben felttelezzk, hogy a megfelelo sszekttetsek lteznek, a trsberendezs vezrlsben a kommunikci kezels megoldott, s csak a robot programozsi krdseivel foglalkozunk. A trsberendezssel val kommunikci leggyakrabban s legegyszerubben binris I/O-n kereszl valsthat meg, ezrt pldinkban csak ezzel foglalkozunk. A robotnak (mint minden automatikusan mukdtetett berendezsnek) "bizalmatlannak" kell lennie, minden felttelt s a vgrehajtst ellenoriznie kell. Ha egy berendezst ember mukdtet, akkor egy rendkvl jl szenzorlt, magas intelligenciafok, nagyon bonyolult dntshozatali algoritmusokat hasznl felgyelo rendszer, az ember vgzi a szinkronizlsi, hibadetektlsi, beavatkozsi funkcikat. Automatikus, gpi mukdtets esetn egy tlagos ipari rendszerben ilyen fok intelligens megoldsra ltalban sem igny, sem gazdasgos lehetosg nincsen, ezrt egyszerubb, de megbzhat megoldsokra van szksg. Ezrt szksges a felttelek alapos s gondos vizsglata, a lehetosgek elozetes ttekintse, s lehetoleg az sszes felmerlo lehetosgre a vlasz megtervezse. A mintapldkban ezeknek az alapjaival foglalkozunk. A megolds bonyolultsga mindig a trsberendezs vezrlojnek tudstl is fgg. 1. plda: a robot vezrel mindent. Felttelezseink: "buta" trsberendezs a robot felel mindenrt a robot ellenoriz mindent az idozts nem mlhat a vgrehajtsi sebessgen, lass s gyors trsberendezs esetn is megfeleloen kell mukdnie A vgrehajts lpsei: 1. parancskiads 2. a vgrehajts ellenorzse Cski Tibor: Robottechnika eloadsvzlat 19

3. a parancs megszntetse A parancskiads elott a vgrehajthatsg feltteleit ellenorizni lehet/kell. Feladat: adagols (pl. szerszmgp) Megoldand: burkolat nyitsa, zrsa Vezrelendo: nyit=NOT(zr) . Output, kimeno jel, mert a robotvezrlo lltja az rtkt. Ellenorizendo: nyitva, zrva. A burkolat szenzorlt, rzkelt llapotai, input vltozk, a robotvezrlo a trsberendezstol kapja az rtkeket. nyitva s zrva egymsnak nem negltjai, a burkolat llapota nem binris, ezek csak a szlso rtkei. Blokkvzlat:

nyit=1

Nem nyitva?

Igen

adagol

nyit=0

Nem zrva?

Igen

Programrszlet Cski Tibor: Robottechnika eloadsvzlat 20

/* nyit nevu output csatornara 1-et ad, parancs */ /* a burkolat nyitasara */ nyit_var: testi(nyitva, off, nyit_var); /* mindaddig, amig a burkolat nincs */ /* nyitva, itt var */ adagol(); /* a burkolat kinyilt, az adagolas elvegezheto*/ writeo(nyit, off); /* parancs a burkolat zarasara */ zar_var: testi(zarva, off, zar_var); /* mindaddig, amig a burkolat nincs */ /* zarva, itt var */ end; /* vege a programreszletnek */ Idodiagram:

pelda1: subr(); writeo(nyit,on);

nyit

nyitva

zarva

2. program: palettacsere Feladat: palettacsere Vezrlendo: csere. Output, a robot lltja. Ellenorizendo: vanp. vanp=1, ha rzkeli a paletta jelenltt. Tjols mechanikusan trtnik, nem kell vezrelni. Az idoztstol nem fgghet, a palettacsere s a robotprogram vgrehajtsi sebessgtol fggetlenl jl kell mukdnie, ezrt ellenorizni kell a paletta eltvoltst s megrkezst is!

Cski Tibor: Robottechnika eloadsvzlat

21

Programrszlet: cserel: meg_van: meg_nincs: subr(); writeo(csere, on); /* parancs a csere inditasara testi(vanp, on, meg_van); /*meg ott a regi pal testi(navp, off, meg_nincs); /* meg nincs uj pal. writeo(csre, off); /* csre megtortent, leall end;

*/ */ */ */

Idodiagram: csere

vanp

3. plda: kzfogs Feladat: hegeszto berendezs be- s kikapcsolsa Vezrlendo: h_start=NOT(h_stop) Ellenorizendo: h_aram. h_aram=1, ha van hegeszto ram

Programrszlet: hegeszt: subr(); writeo(h_start, on); /* bekapcsolas */ varj: testi(h_aram, off, varj); /*varj, amig nincs hegeszto aram*/ linear(50); /* egyenes interpolacio, 50 mm/perc sebesseg*/ pmove(<p1, pfelso, p4>); /* egyenesek vegpontjai */ writeo(h_start, off); /* kikapcsolas */ vege: testi(h_aram, on, vege); /* varj, mig tenyleg kikapcsol*/ end;

Cski Tibor: Robottechnika eloadsvzlat

22

Idodiagram: h_start

h_aram

4. plda: a robot egyttmukdik egy intelligens vezrlovel. A kommunikci nem felttlenl egyszerubb, de a trsberendezs ltal elltott feladat sokkal sszetettebb lehet! A parancskiadst s az ellenorzst egyarnt kezfogssal clszeru megvalstani. (csinld - rtettem - tudomsul vettem hogy rtetted tudomsul vettem, hogy tudomsul vetted) A robotvezrlo kiadja a parancsot, s megvrja, amg a trsberendezs elkezdi vgrehajtani. (O=csinald, I=vettem) Ezutn a robotvezrlo megvrja, (ttlenl vagy ms feladat vgrehajtsval), amg a trsberendezs jelzi, hogy ksz, s visszajelez, hogy rtette (I=tkesz, O=rendben). Idodiagram: csinald

vettem

rendben

tkesz

Programrszlet: Cski Tibor: Robottechnika eloadsvzlat 23

okos: indult: i0: kesz: res:

subr(); writeo(csinald, on); /*inditas*/ testi(vettem, off, indult); /*var, mig visszajelez*/ writeo(csinald, off); /*jelzett*/ testi(vettem, on, i0); /* var, mig visszaveszi*/ testi(tkesz, off, kesz); /*var, mig a tars jelzi, hogy kesz*/ writeo(rendben, on); /* szol, hogy latja*/ testi(tkesz, on, res); /* var, mig szol, hogy eszrevette*/ writeo(rendben, off); /* visszaveszi a jelzest*/ end;

Robotok programozsa

On-line programozs Robotok on-line programozsrl akkor beszlnk, ha a programozs a bekapcsolt robot mellett, a robotvezrlo szolgltatsait hasznlva trtnik. A programban szereplo pontok megadsa gyakran betantssal, a robot megfogjnak a kvnt pontba trtno mozgatsval valsul meg. Elonye, hogy az elkszlt program szintaktikailag nagy valsznusggel helyes, nincsenek a munkatren kvli pontok. Htrnya, hogy a betantsos helyszni programozs idejre a robot kiesik a termelsbol. Off-line programozs A program rsa a robottl trben elvlik, a program rshoz nincs szksg a robot s a robotvezrls hasznlatra. A program rst clszeruen valamilyen szmtgpes eszkz segti, menurendszerrel, szintaktikus ellenorzssel, szimultorral. Elonye, hogy a programozs nem vesz el gpi idot a robottl, a program jl dokumentlt, archivlt lehet. Htrnya, hogy nem eredmnyez felttlenl vgrehajthat programot, tkzsek, idoztsi hinyossgok esetleg csak a program "belvsekor" derlnek ki.

Cski Tibor: Robottechnika eloadsvzlat

24

Programnyelvek

Programnyelvek szintjei

Gpi kd robotprogramozs A programozs nehzkes, de nagyon hatkony program rhat. NC szeru (G formtum) programnyelv Az NC gpekhez hasonl szintaktikj programnyelv, annak elonyeivel s htrnyaival. Robotfunkcikra orientlt nyelvek A robotok sszes lehetosgt kihasznl, viszonylag programnyelvek, nem nagyon knyelmesen hasznlhatak. Mozgsler nyelvek A robotok legfontosabb funkcijra, a mozgsra, mozgatsra koncentrl programnyelvek, ma a legelterjedtebb, jl hasznlhat, hatkony nyelvek. Egyik legfontosabb kpviselojk az AML nyelv. AML Az AML az A Manufacturing Language (kb. Egy gyrtsprogramozsi nyelv) kezdobetuibol kpzett sz. Az IBM fejlesztette ki sajt cljaira. Robotprogramozsra az AML-nek egy szuktett vltozatt hasznljuk, amely IBM 7576 tpus SCARA robot programozsra alkalmas. A rendszer moduljai: AML programozsi nyelv editor, szerkeszto program betants szimultor (a robot betantsnak kpernyon trtno szimullsra) programszimultor (az AML program vgrehajtsnak szimullsra, ellenorzsre) help (segto rendszer) debugger (hibakereso) kommuniktor a robotvezrlovel alacsony szintu

Cski Tibor: Robottechnika eloadsvzlat

25

Az AML programozsi nyelv fobb rszei:

Deklarcik

Formja: cimke: utasts; A cmkvel nevet adunk a definiland vltoznak vagy szubrutinnak, az utastsban pedig meghatrozzuk a tpust s ltalban a kezdortkt is. Az AML vltoz tpusai: geometriai pont. A pontot 3 koordintjval s a megfog elfordulsi szgvel adhatjuk meg. Plda: p1: new pt(300, -300, -100, 180); Itt x=300 mm, y= -100 mm, z= -100 mm, a megfog elfordulsa R=180 fok pozitv irnyban. A pt() fggvny a megadott adatokbl geometriai struktrt kpez. string. A stringet rtkvel adhatjuk meg. Plda: st: new 'Ez egy string valtozo erteke'; tmb. Tmb megadsa a vltozk rtkeinek felsorolsval trtnhet. Egy tmbnek brmilyen tpus elemi lehetnek, vegyesen is.

Pldul: sok: new<1, p1, st, -100>; A sok nevu tmb elso eleme egy szm, melynek rtke 1, msodik eleme az elobb definilt p1 pont, harmadik eleme az st nevu string, negyedik eleme a -100 rtk. vals vltoz a: new real(1.1); logikai vltoz

Cski Tibor: Robottechnika eloadsvzlat

26

v: new TRUE; szenzor tpus vltoz. Az AML felttelezi, hogy a szenzor jelet n bites A/D talakt kimenete adja az s. bittol kezdve.

ero: sensor(s, n); szubrutin. A szubrutinoknak nevk van s res vagy nem res paramterlistjuk. Egy rutin klnbzo szm paramterekkel is hvhat.

felvesz: subr(mit, honnan); paletta. Az AML rendkvl jl hasznlhat vltoz tpusa a paletta. A paletta logikailag egytt kezelheto pontok halmaza, melyen az AML muveleteket enged meg. A pontok elore vagy htrafel bejrhatk, lncoltak (az utols utn az elso kvetkezik, az elso elott az utols), s tetszoleges sorrendben is elrhetok. Palettzs jellegu feladatok ezrt AML-ben knnyen s elegnsan programozhatk.

talca: new pallet(ba, ja, jf, dbs, n); A talca a definilt paletta neve, ba a bal als pontja, ja a jobb als, jf a jobb felso, dbs az egy sorban levo darabok (pontok) szma, n az sszes darab szma.

Opertorok s standard fggvnyek.

+ * / ++ -AND OR NOT ** IDIV EQ NE GT

sszeads kivons szorzs oszts inkrementls dekrementls logikai s logikai vagy logikai nem hatvnyozs egsz oszts = relci nem egyenlo nagyobb mint 27

Cski Tibor: Robottechnika eloadsvzlat

GE LT LE ABS ACOS ASIN ATAN ATAN2 COS EXP LN MAX MIN MOD SIN SQRT TAN

nagyobb egyenlo kisebb mint kisebb egyenlo abszolt rtk arkusz koszinusz arkusz szinusz arkusz tangens arkusz tangens x/y koszinusz exponencilis fv termszetes logaritmus maximum minimum modulo szinusz ngyzetgyk tangens

Mozgsutastsok

Nvekmnyes mozgsok.

djmove(<i,j,k,l>,<a,b,c,d>); Az i., j. k., l. robotcsuklt nvekmnyesen a, b, c, d rtkkel elmozdtja. Az 1. csuk a vll, a 2. a knyk, a 3. a kz lineris z irny mozgatsa, a 4. a megfog elfordtsa. Pl.: djmove(2,45); a 2. csuklt, a knykt elfordtja 45 fokkal pozitv irnyban. djmove(<1,2>, <30,-15);

Cski Tibor: Robottechnika eloadsvzlat

28

az 1. csuklt pozitv irnyban 30 fokkal, a 2. csuklt negatv irnyban 15 fokkal elfordtja a jelenlegi helyzetkhz kpest. dmove(<x,y,z,r>,<a,b,c,d>); A robotkoordintkat a megadott rtkkel megvltoztatja nvekmnyesen. Pl.: dmove(z, -50); A kezet lefel mozgatja 50 mm-rel. dmove(<x,y>,<100,100>); A programozott pont x s y koordintjt 100-100 mm-rel megnveli. dpmove(pont); A programozott pont koordintit a pont rtkvel megvltoztatja. PL. pont: new pt(100,100,0,0); . . dpmove(pont); az elozo pldabeli elmozdulst okozza.

Abszolt mozgsok

jmove(<i,j,k,l>, <a,b,c,d>); Az i., j., k., l. csuklkoordintt az a, b, c, d rtkre mozgatja. Pl. jmove(<1,3>, <100,-100>); Az 1. koordintt, a vllat +100 fokos helyzetbe lltja, a 3. koordintt, a kezet -100 mm-re mozgatja. Cski Tibor: Robottechnika eloadsvzlat 29

move(<x,y,z,r>, <a,b,c,d>); A robotkoordintkat a megadott rtkre mozgatja. Pl.: move(z,-100); A z koordintt a -100 mm-es helyzetbe mozgatja. move(<x,y,r>,<300,300,360>); Az x s az y koordintkat a 300, 300 mm-es pontba mozgatja, mikzben a megfogt egy teljes fordulattal pozitv irnyban elfordtja. pmove(pont); A programozott pontot a pont-ba mozgatja. Pl: pmove(p1); pmove(pt(300,300,-150,720)); A msodik pldban a pt() fggvny a megadott rkekbol egy pont tpus vltozt generl, majd a pmove() fggvny ebbe a pontba mozgatja a robot programozott pontjt. pmove(<p1,p2,p3>); A programozott pontot a p1, p2, p3 pontokon t mozgatja. Termszetesen mindegyik pontnak a robot munkaterben kell lennie! zmove(a); A robot kezt z irnyban az a mretre mozgatja. Az a rtknek negatvnak kell lennie!

Palettval kapcsolatos utastsok

Cski Tibor: Robottechnika eloadsvzlat

30

nextpart(pal); prevpart(pal); A pal nevu palettn a kvetkezo (nextpart) illetve az elozo (prevpart) paletta pozcit teszi aktuliss. Emlkeztetol: a paletta pozcik lncoltak! getpart(pal); Mozgs a paletta aktulis munkadarab pozcijra. setpart(pal, n); A paletta n. munkadarab pozcijt jelli ki aktulisnak.

Egyb, mozgssal kapcsolatos utastsok

linear(v); Bekapcsolja a lineris interpolcit (a programozott pont a kvetkezokben trbeli egyenes mentn fog mozogni), s belltja a plyasebessget v mm/perc rtkure. v=0 esetn a lineris interpolcit kikapcsolja, a programozott pont az arnyos csuklinterpolcinak megfelelo mdon mozog. circular(v); Bekapcsolja a krinterpolcit s belltja a plyasebessget v mm/perc rtkure. v=0 esetn kikapcsolja a krinterpolcit, a tovbbiakban a programozott pont arnyos csuklinterpolcival mozog. Bekapcsolt krinterpolci esetn a mozgsutastsokban krv pontjainak kell szerepelnik clpontokknt. home(i,j); Az i. s j. robotcsuklt referencia pontra kldi. Pl.: home(1,2); A vll s a knyk referencia helyzetbe megy, a z s a megfog elfordulsa nem vltozik.

Cski Tibor: Robottechnika eloadsvzlat

31

Megfog utastsok grasp(); megfog zr relase(); megfog nyit.

Kommunikcis s vrakoz utastsok break(); Felttel nlkli programozott stop. resume(); Programvgrehajts folytatsa. delay(t); Programvgrehajts ksleltetse t msodpercig. waiti(d, e, t, sr); t msodpercig vr arra, hogy a d input csatorna rtke e legyen. Ha a megadott idon bell ez nem kvetkezik be, hvja a sr szubrutint. writeo(d,e); A d output csatornra e rtket ad ki. Az e 0 vagy 1 lehet, d-nek output vltoznak kell lennie. blink(d); Villogtatja a megadott d output csatornt. endblink(d);

Cski Tibor: Robottechnika eloadsvzlat

32

Villogtats kikapcsolsa. guard(d,e); Figyeli a megadott d input csatornt. Ha rtke e-v vlik, megszaktja a mozgst. endguard(d); Kikapcsolja a figyelst. monitor(d,e,sr); Figyeli a megadott d inputot. Ha az aktulis rtk a megadott e rtkuv vlik, hvja a sr szubrutint. endmonitor(d); Kikapcsolja a figyelst az adott csatornra. testi(d); A d cmu input csatornn levo rtket adja vissza. testi(d,e,c); Feltteles ugrst hajt vgre a c cmkre, ha a d input csatornn e rtku jel van.

Programtechnikai utastsok s: subr(p1,p2, ,pn) . . . end; s nevu szubrutint definil, p1, p2, pn paramterekkel. branch(c); Cski Tibor: Robottechnika eloadsvzlat 33

Felttel nlkli ugrs a megadott c cmkre. while (felt) do begin . . . end; A begin s end kztti utastsok vgrehajtdnak, amg a felt felttel teljesl. if felt then ut1 else ut2; A vezrls a felt felttel teljeslstol fggoen ut1 vagy ut2 utastst hajtja vgre. Ha az else hinyzik, a kvetkezo utasts rvnyes. Az AML editor Az aktulis programfile-t a fomenuben vlasztjuk ki. Ha nem ltezo nevet adunk meg, a rendszer j file-t hoz ltre. Az AML programoknak .aml kiterjesztsueknek kell lennik. Az editorba belpve kiadhatunk: elsodleges parancsokat (a kpernyo tetejn levo mezoben adhatk meg. A mezobe a HOME billentyu lenyomsval juthatunk el.) sor parancsokat (a kpernyo bal oldaln, a sorok elott adhatk ) karakterszintu parancsokat (a szerkesztett sorokban adhatk) A funkcibillentyuk hasznlata: F1 help F2 trli a nem kvnt vltoztatst F3 reset, trli a hibt vagy kiadott parancsot F4 kirja az utols keressi (find) parancsot F5 kirja az utols cserlsi (change) parancsot F6 belps a betant zemmdba F7+ALT az aktulis, betantott robotpozcit betlti a szerkesztett programba. F8 kilps az editorbl F9 ugrs a file elejre

Cski Tibor: Robottechnika eloadsvzlat

34

F10

ugrs a file vgre

Nhny fontos elsodleges parancs: C DI F PR SA SY change, csere: a megadott stringet minden elofordulsban a megadott msikra cserli dir: listt ad az AML knyvtrrl find, keress: megkeresi a megadott stringet print, nyomtats: kinyomtatja a filet save, ments: elmenti a szerkesztett filet ms nven syntax check, szintaktikus ellenorzs: ellenorzi a programot szintaktikai szablyok alapjn

Nhny fontos sorparancs A B C CC-CC D DD-DD Ixxx M after: blokk kezdetnek kijellse before: blokk vgnek kijellse copy: msolja a megadott sort a fenti kijells utn (A) vagy el (B) msolja a megadott sorokat a kijells szerint delete: trli a sort trli a megadott sorokat insert: beszr xxx db res sort move: mozgatja a megjellt sort a kijells szerint

Az AML szimullt betants Kiadhat parancsok: F1 help TAB robotkar konfigurci vlts (jobbkezes-balkezes) SHIFT+TAB konfigurci vlts cursor finom robotpozcionls SHIFT+cursor durva pozcionls PgU, PgD R tengely mozgats F7, F8 Z tengely mozgats F9 grasp F10 release ESC eltrolja a betantott robotkoordintkat Cski Tibor: Robottechnika eloadsvzlat 35

Az AML szimultor F9 F5 F8 F3,F4 F6 F7 szimulci start visszatrs az editorhoz visszatrs a fomenuhz digitlis output kijelzs lptetse opcik belltsa digitlis input rtknek vltoztatsa

BAPS A Bosch cg sajt robotjaihoz kifejlesztett programnyelv. Hatkony, sok jl hasznlhat szolgltatssal.

VAL Eredetileg a PUMA robotokhoz kifejlesztett programnyelv, egyszerusge s ttekintehtosge miatt taln a legelterjedtebb. Ma mr nagyon sok robotvezrlsben hasznljk. Feladatler nyelvek

AUTOPASS Magas szintu, a mestersges intelligencia elemeit is hasznl programnyelv, ma mg csak ksrleti fzisban van.

Cski Tibor: Robottechnika eloadsvzlat

36

Robotok alkalmazstechnikja

Tipikus robotizlt munkahelyek

A robotizlt munkahely eszkzei

A robot informcis kapcsolatai

Esettanulmnyok

Cella kiszolgls

Szerels

Nemzetkzi trendek, irnyzatok

Robot s mechatronika

Irodalomjegyzk
1. Dr. Kulcsr Bla: Robottechnika 2. Szabn dr. Mak Ildik: Robottechnika. http://www.szgt.uni-miskolc.hu/~mako/robel1.pdf, http://www.szgt.unimiskolc.hu/~mako/robel2.pdf, http://www.szgt.uni-miskolc.hu/~mako/robel3.pdf http://www.szgt.uni-miskolc.hu/~mako/robel4.pdf

Cski Tibor: Robottechnika eloadsvzlat

37

You might also like