Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Robotikai Alapok I. Ami a robotprogramozás c. mérés elvégzéséhez szükséges… Prohászka Zoltán,

Hasonló előadás


Az előadások a következő témára: "Robotikai Alapok I. Ami a robotprogramozás c. mérés elvégzéséhez szükséges… Prohászka Zoltán,"— Előadás másolata:

1 Robotikai Alapok I. Ami a robotprogramozás c. mérés elvégzéséhez szükséges… Prohászka Zoltán,

2 Tudnivalók Kötelező jelenlét HF egyénenként, papíron beugró kérdések: 2 képlet:Euler/D-H

3 Mit kell megtanulni? Euler kéz, DH lépés mint mátrixok szorzata Minden, ami a mérési útmutató kérdéseihez szükséges (.pdf, 59. oldal) ARPS (azok az utasítások, amik a példaprogramban szerepelnek, és még más, lásd II. rész, utolsó dia) Kézivezérlő 2*6 mozgatógombja, joint és world üzemmód

4 Mit kell a mérésre hozni? EGYÉNI házi feladatot, PAPÍRON Mindenki ugyan azt a feladatot kapja (.pdf vége: mérési útmutató), de értelemszerűen kicsit másképp oldja meg.

5 Használati útmutató A mérésen jó, ha értik ami itt le van írva, de ez nem egy 100% megtanulandó anyag. Megtanulandók: külön specifikálva A mérésre készülők fussák át az anyagot, ezután nézzék át a megtanulandókat, és azt, amit a megtanulandók megértéséhez szükségesnek éreznek. Az anyag részletes, hogy az érdeklődők tudjanak miből meríteni, ha alkalmazni akarják az anyagot. –Szürke színnel szedett: CSAK Érdeklődőknek! Akinek képességei megengedik, vezesse le, és használja az anyagot ellenőrzésre…

6 A manipulátor Az ipari robot egy irányított mechanizmus, melynek legfőbb tulajdonsága, hogy a rá szerelt végberendezést képes térben és időben előírt módon pozicionálni, s ennek segítségével feladatot megoldani TCP, szerszámközéppont Léteznek teljesen más robotok CNC, zárt láncú, mobilis, flexibilis, kígyók, stb.

7 DoF:Degrees of Freedom Szabadságfok (egyenletrendszerek, ismeretlenek, kényszerek): Megoldások sokaságának dimenziói: Hány skalárral járható be a halmaz? Térbeli forgatás 3 DoF, geom. biz. 2-D DoF: 2 T+1 R 3-D DoF: 3 T+3 R=6, pl. gázmolekulák m>6: Redundáns Robot (pl. emberi kar:9), marad m-6 szabadság: optimális energia, manőverábilitás, információközlés, testbeszéd

8 Csuklóképlet TTT: xyz CNC maró TTTR: alkatrész beültető RRTR: scara, alkatrész beült. TTTRRR: komoly CNC RRRRRR: Ipari robot Általában az első 3 csukló felelős a pozícionálásért, többi forgat (DEKOMPOZÍCIÓ)

9 Nokia Puma 560 arm

10 Robotvezérlők A manipulátor mozgatásához valamilyen vezérlő szükséges (Teljesítményelektronika, szabályzás, alapjel előállítás, ember-gép kapcsolat) Az előadás célja, hogy a hallgatók tisztában legyenek a manipulátorban és a vezérlőben zajló folyamatokról

11

12

13 Térbeli helyzet leírása 2D-ben könnyebb illusztrálni, mert könnyebben lehet lerajzolni, elképzelni. 2D-ben érdemes a geometria-algebrai kapcsolatokat megérteni 3D algebrai kiterjesztés egyszerűen következik a 2D algebrából, 3D geometria elképzeléséhez térlátás és/vagy sok gyakorlás szükséges, –DE ELENGEDHETETLEN, ha valaki ilyen problémákat akar mérnöki módon kezelni

14 Egy síkbeli test minden pontja megadható három kitüntetet pontjának LINEÁRIS kombinációjaként –Nevezzük az elsőt a test origójának (O) –Vegyük fel a másik kettőt (B,C) az origótól 90 fokban, ha lehet, azonos távolságban –Minden P i pont megadható x i, y i koordinátákkal: P i =x i *(B-O)+y i *(C-O)+O Legyen ez a test egy F betű (5 pont) Ha mozgatjuk O,B,C-t, akkor minden így megadott p i is mozogni fog

15 P i =x i *(B-O)+y i *(C-O)+O Használjunk MÁTRIX-ot, mert az algebrában az fejezi ki két koordinátavektor általános lineáris kapcsolatát A=[(B-O) (C-O)], t=O, P i =A*[x i ;y i ]+t=[A t]*[x i ;y i ;1] –(ez egy vektorok lineáris kombinációját kifejező egyenlet) Elnevezés:A-tartalmazza a bázis-oszlopvektorokat. (ekkor [A t] abszolút helyzetet kódol, és félig algebrai, félig geometriai mennyiség) Ha F –et ki akarjuk rajzolni pl. a képernyőre, akkor annak a koordinátarendszerét kell használni (ekkor [A t]-be a B,C,O vektorok képernyőkoordinátarendszer szerinti koordinátás reprezentációját kell tenni. Ez már egy mátrix) Az O,B,C vektorok koordinátáit tartalmazó [A t] egy mátrix, ez használható koordinátarendszerek relatív helyzeteinek a számszerű kódolására

16 Koordináta rendszerek (Robotikában: KERETek) –1 pontból és N vektorból áll. Krumpli, N nyílvesszővel. (N: dimenziók) –Megfelelő algebrai és geometriai objektumok kapcsolatának megadása KERETekkel lehetséges »(a Keretek emiatt félig geometriai, félig algebrai objektumok) –Egy keretnek, mint geometriai objektumnak algebrai leírásához (pl. számítógép) szükség van egy másik keretre. Azaz csak 2 keret helyzetét számszerűsíthetjük, 1 keretét nem. –Két origó középpontú keret viszonya (relatív orientációjuk) NxN-es mátrix: Hogyan fejezhető ki az egyik vektorai a másik vektorainak lin. Kombinációival –Lineáris terek tárgyalásakor (Matematika, Lineáris Algebra) a keretek eltolása nem megengedett, a nyilak mindig az origóból indulnak. –Két általános helyzetű keret viszonya: Homogén (N+1)x(N+1)-es mátrix

17 Jelölési szokások Általában oszlopvektorokat használunk –Sorvektorok jelölése: v T : transzponált oszlopvektor –Kivéve Sz.gépes Grafika, itt minden transzponált Mátrixszorzások sorrendje fordított Kereteket 1 indexszel jelöljük:K A Több (legalább 2) kerettel dolgozunk Geometriai vektorok algebrai koordinátavektorainak indexe azt jelenti, melyik keretben írtuk fel: p A : p vektor az A keretben mérve Transzformációkat két indexel látjuk el: Melyik kerethez képest melyik keret helyzetét jelöli. T AB :K B helyzete K A - hoz képest

18 Jelölési szokások II A jelölés választása praktikus: –vektor átszámítása másik keretbe: p B = T AB * p A –Transzformációk halmozása: T AC = T AB * T BC –Keretek szerepének felcserélése: T BA =(T AB ) -1 –Könnyű észrevenni, ha egy képletben elírtuk az indexeket –sorvektoros jelölés esetében pont fordítva praktikus a transzformációk indexelése Pár inkonzisztencia: –Régi és új fogalma nem mindig egzakt –Forgatási mátrixokat állapotmátrixként értelmezzük, általában elhagyjuk az indexeket –Keretek geometriai vektorai pont másképpen transzformálódnak (jobbról szorzódnak) geometriailag, mint a koordinátavektorok, [x B,y B,z B ]*T BA =[x A,y A,z A ], de ezzel nem lesz dolgunk SW fejlesztéskor precízen kell a választott jelölést dokumentálni, adminisztrálni –Fejlesztésbe bekapcsolódáskor, hibakereséskor ezt érdemes átnézni, ellenőrizni (először)

19

20 Homogén koordináták Abszolút, azaz pozícióvektorok N koordinátájához hozzáírunk 1-et Relatív, azaz irányvektorok N koordinátájához 0-t írunk. Transzformációs mátrixok alá N db 0-t és egy 1-est, mivel ezek első N oszlopa relatív vektorokat jelent, utolsó oszlopa pedig eltolást, ami egy pozícióvektor.

21 Homogén koordináták II Homogén koordinátás vektorok és Transzformációs mátrixok: –Inhomogének, az elemeik jelentésének fizikai dimenziója szerint –A velük végzendő műveletek lesznek homogének. –Az elnevezés a lineáris, ill. differenciál egyenletek csoportosításából ered Ez Debug Assertion-re is használható, pl. –Sebesség, gyorsulás: relatív –Két abszolút vektornak csak súlyozott átlagolás céljából adhatunk össze Homogén transzformációk kombinálása, invertálása sem vezet ki ebből a speciális alakból: –Alul marad mindig a , ill (2D) (grafikában jobb oldalt) Relatív vektorok transzformációjakor a keretek eltolását figyelmen kívül kell hagyni. –Pont ezt eredményezi, hogy a relatív vektor alá 0-t írtunk. Továbbtanulóknak: Projektív viszonyok esetében (pl. gépi térlátás) más az N+1. sor jelentése, nem csak 0 vagy 1 lehet.

22

23 A probléma MATLAB szkript mellékelve K 0 :Mássz ki a csónakból és állj a mólóra, arccal a part felé. T 01 :Menj előre 100 lépést és fordulj balra T 12 :Menj 60 lépést, és fordulj jobbra T 23 :Lopózz előre 200 lépést, és látni fogod az ellenséget jobbra, kb. 300 lépés távolságra tőled (E 3 ). Találsz egy kulcsot elásva. T 34 : Fordulj meg, menj (vissza) 100 lépést, balra fordulva (T 45 ) találsz egy titkos ajtót, amit a kulccsal kinyithatsz, Bejutsz, az ellenséget NEM LÁTOD a szikláktól, állitsd be a löveget a célra (E 5 ), és TŰZ!

24

25 %K0:Mássz ki a csónakból és állj a mólóra, arccal a part felé. %T01:Menj elore 100 lépést és fordulj balra %T12:Menj 60 lépést, és fordulj jobbra %T23:Lopózz elore 200 lépést, és látni fogod az ellenséget %jobbra, kb. 300 lépés távolságra %toled (E3). Találsz egy kulcsot elásva. %T34: Fordulj meg, menj (vissza) 100 lépést, balra fordulva (T45) találsz egy titkos ajtót, amit a kulccsal kinyithatsz, %Bejutsz, az ellenséget NEM LÁTOD a szikláktól, állitsd be a löveget a célra (E5), és TUZ! %Választás: A kommandós Y irányba halad (12 orának), %jobbra +X (3 orara), balra -X irányban (9 orara) lát. T_jobb=[0 1 0;-1 0 0;0 0 1]; T_bal=T_jobb^-1; T_0_akt=eye(3); T_01=[1 0 0; ; 0 0 1]*T_bal; T_0_akt=T_0_akt*T_01 T_12=[1 0 0; ; 0 0 1]*T_jobb; T_0_akt=T_0_akt*T_12 T_23=[1 0 0; ; 0 0 1]; T_0_akt=T_0_akt*T_23 E_3=[300;0;1]; T_34=diag([-1,-1,1])*[1 0 0; ; 0 0 1];%Itt elobb megfordul, aztan halad!!! T_0_akt=T_0_akt*T_34 T_45=T_bal; T_0_akt=T_0_akt*T_45 T_35=T_34*T_45; E_5=T_35^-1*E_3; E_5 T_05=T_01*T_12*T_23*T_35; E_0=T_05*E_5; E_0 Érdeklődők futtassák MATLAB-ban!

26 ‘2’ probléma: –Egy tárgyhoz képesti relatív pozíció hol található egy másik tárgyhoz képest? –Egy tárgyhoz képesti relatív mozgás hova visz? Geometriai és algebrai objektumok kapcsolata –Pont, egyenes, kör reprezentációja, kavics –Helyzet: MINDIG RELATÍV!!! Rakd le úgy a székeket, hogy mindegyik úgy álljon a mellete levőhöz képest, mint ez a kettő!

27 Térbeli helyzet leírása

28 Keretek és Transzformációk Egy merev testhez rögzített egységvektor-hármast hívunk keretnek (3D-ben) Csak a keretek RELATÍV helyzete formalizálható, amit az egyik keretet a másikba vivő transzformációnak nevezünk.

29 Helyzetek 2 Világos, hogy a merev testek elmozdulásait halmozni lehet (eltolás, forgatás, megint eltolás) (pl. LOGO programnyelv, teknősbéka) Egy A | p kombináció leírja a soron következő (új) koordinátarendszer helyzetét az előző (régi) k.r. –ben !!!!!DE!!!!! Segítségével egy pont régi k.r.-beli helyzetét számíthatjuk ki, ha ismerjük hol van az új koordinátarendszerben.

30 Pont koordinátái a megelőző keretben

31 Homogén koordináták

32 Homogén koordináták és mátrixok -Transzformációk kombinálása N+1-es mátrixszorzással, egyszerűen:

33 Invertálás Keretek szerepének megfordítása, (N+1)x(N+1)-es invertálással, vagy kihasználva, hogy csak ortonormált forgatási tagunk lesz. -Ez annak a következménye, hogy nem dolgozunk se nagyító (hasonlósági), se lapító vagy nyíró (affin) lineáris transzformációkkal. -Ilyen transzformációkra is használhatóak az eddigiek, kivéve ez a dia!

34 Forgatás 2D és 3D Z tengely 2D, inhomogén, [x;y]=Rot2D(phi)*[x’,y’] 3D Z, inhomogén: -X,Y síkban ugyan az, mint 2D-ben -Z koordináta nem változik: [x;y;z]=RotZ(phi)*[x’,y’,z’]

35 Forgatás 3D, X és Y S előjele C alatt pozitív, kivéve Y körüli forgatást. Könnyú eltéveszteni !!! -3 szájbarágós dia, érdeklődőknek: kockapakolás, bázistranszformáció, csempézés

36

37

38

39 Helyzetek tömören 2D vs 3D 1Test poziciója: kituntetett pontjának (súlypont) koordinátái Használjunk koordinátarendszereket a helyzet (elfordulás) leírására is (linearitás) Leírjuk: Origo koordinátái (abszolút vektor) x, y, (z) egységvektorok (relatív vektorok) Ez visszaolvasható oszloponként, felrajzolható (pl. Debug visualizer)

40 Helyzetek -Lényegi kérdések Miért hívjuk homogén koordinátáknak a hom. koord.-kat? Milyen geometriai művelet a mátrixszorzás? Attól függ, van-e geometriai jelentése a szorzandó mátrixoknak Milyen geometriai műveletnek felel meg az invertálás? dettó. Miért van szükség koordináta rendszer használatára a robotikában? –Miért kell több koordináta rendszer? Miért használunk mátrixokat a robotikában?

41 A Kinematikai lánc A piros nyíllal jelölt mozgás van előírva a feladat szerint, A robot a kék nyíllal jelölt transzformációt tudja változtatni a motorok által.

42 A Puma 560 Euler kézcsuklója

43 Az Euler-kéz képletei

44 Szinguláris állapotok Nem tud tetszőleges mozgás szerint elindulni Jacobi mátrix lapos Euler: szinguláris kinyújtva, 0,0,0-ban Inverz euler: végtelen megoldás, nem kettő Ember keze: RPY, kinyújtva maximális manőverábilitás, szinguláris 0,+-90,0-ban Ember keze nem tud szingulárisba menni Ló szingulárisban alszik, PUMA is. (READY)

45 A D-H alak képletei

46 A Puma-560 D-H alakja

47 Direkt Geometriai feladat 6+2 mátrixszorzás

48 Inverz Geometriai feladat Transzcendens egyenletek Jó tervezéssel a feladat dekompnálható, pl az utolsó 3 csukló egy pontban metszi egymást

49 Dekompozíció

50 Több megoldás Első 3 csukló: 4 megoldás Euler csukló: 2 megoldás Az összesen 8! A gépnek mozgás közben kell választania. Ez baj!

51

52

53 Az előző dia ábrái: A robot csuklóinak pozitív iránya Tengely körüli forgatás A bázisvektorok végpontjainak mozgása mindig merőleges a tengelyre Az Euler kéz által bejárható tartomány nem bontható két részre egyértelműen Az első 3 csukló 4 megoldása egy pozíció megvalósítására, –a robot –a robot geometriája, 2 szemszögből Egy problémás mozgatás, 2 megoldás választása is indokolható Teljesen kinyújtott kar READY helyzet csak majdnem szinguláris Nulla csuklóváltozó vektor D-H konvenció szerint Nem teljesíthető (szinguláris) mozgáskomponensek –J2, J3 szinguláris (sebességugrásos szingularitás) –J3 szinguláris (sebességugrásos szingularitás) –J5 szinguláris (pozícióugrásos szingularitás)

54 Robotikai alapok II. Bevezető előadások a robotprogramozás c. méréshez Készítette: Prohászka Zoltán

55 Tartalom !!! Jelenléti ív !!! Pályatervezés (skalár, P2P,CT,Joint,Descart) Robotvezérlő ARPS Példaprogram

56 Pályatervezés Pontok közötti egyenes pálya, mert… Egy DoF robot P2P mozgása Gyorsítási idő választása, követelmények Szuperpozició, CT mozgás m-DoF mozgás csuklóváltozókban 6-Dof mozgás DesCart rendszerben

57 Pontok közötti egyenes pálya, mert… Egyszerű megadni Egyszerű elképzelni, ütközést előre látni Műszaki környezetben minden szögletes Egy mozgás-szakaszt lényegében 2 pont definiál Töréspontos mozgás CAD-ből lehetne pályát importálni

58 Egy DoF robot Point-to-point (P2P) mozgása Általánosítható bármilyen robotra Legrövidebb út az egyenes B és C között Minden pontban megáll 1. tipp: p=B+(C-B)*(t/tC) (tB:=0) Baj: sebességugrás !TÁBLA! 2. tipp t>tau VAGY t

59 Miért baj a gyorsulásugrás? Miért baj a sebességugrás? Mesterségesen hibát viszünk a rendszerbe, (ha nem vesszük figyelmbe, hogy a motortekercsek árama nem ugorhat) 3 hurkos kaszkád szabályzás Minden hurok tartalmaz szaturációs limitet Ha az alapjel ezt sérti, hiba, pl. Integrator AntiWindup+változatos anomáliák A hiba jelentsen bajt (ütközés) !

60 *Mit kell tenni a gyorsító és lassító szakaszokban? a(t=-tau)=0 és a(t=tau)=0 a(t) legyen polinom (integráljuk, deriváljuk,ismerjük, kedveljük) Átlagsebesség legyen v/2 3. tipp: a(t) legyen parabola (ismerjük régről) maximuma t=0-ban (elsőfokú tag 0) Integráltja legyen v. P(t) negyedfokú polinom lesz (harmadfokú tag 0)

61 *Gyorsítási idő választása, követelmények Ne legyen telítésben semmi se, Ukapocs se! (+-24 V) U=cEMF*ω+R*I+L*dI/dt A 24 voltos keretből kell tartalékolni v max miatt (EMF), a max miatt, maradék használható az áram változtatására Ezeket a limiteket a tervezők döntik el. Ezekből számítható τ min. v(t)=[0...v max ], t=[- τ … + τ]

62 *Szuperpozició, CT mozgás A-B mozgás lassító szakasza egybeeshet B-C mozgás gyorsító szakaszával τ min legyen olyan, hogy –v max -ról gyorsíthat + v max -ra. a(t) marad parabola, p(t) negyedfokú Mindkettőt számoljuk, eredményt szuperponáljuk

63

64 m-DoF mozgás csuklóváltozókban A,B,C-t m db csuklókoordinátával adjuk meg. Az egyes csuklók egyszerre érjék el a pontokat (tA,tB,tC közös, tau globális) Időzítés a csuklónkénti (sebesség)korlátok figyelembevételével számítjuk (tau-t is) Rotációs csuklók esetén görbe pályán mozog, TTT esetben egyenes pályán

65 *6-Dof mozgás DesCart rendszerben 3 DoF transzlációt mintha TTT robot lenne Orientációt minden (P2P) szakaszra külön kezdeti és végorientáció között mindig található forgástengely (Rodrigues) Úgy tervezzük a pályát, mintha egy ilyen tengely körül forgató csuklónk lenne. A-B lassításának és B-C gyorsításának szuperpozíciója 3*3-as mátrixszorzással

66 6-Dof mozgás DesCart rendszerben TCP egyenesen mozog a töréspontok környezetén kívül. A pályatervezés eredménye egy időtől függő mátrix, amit a fenti algoritmus kiszámol. Ebből csuklókoordinátákat kell számolni minden mintavételi pontra Inverz Geometriai feladat rendszeresen hívandó A fizikailag elérhető megoldások száma a pálya mentén változik Nem jó, ha ‘inteligensen, OKOSan’ találgatja, melyik megoldás lenne a legjobb. Az a jó, ha BUTA, mint a gép, és probléma esetén megáll (SZFÉRA: szűkszavú üzenettel)

67 Robotvezérlő felépítése IO, kalibráció Processzorok Szabályzási funkciók Számítógép funkciók Kezelőfelület Kézivezérlő Balesetvédelem

68 I/O Output: 6 motor PWM, féklazítás (lámpa), szelep nyit/csuk, szenzor táp Input: 6*(inkremens+analóg potméter) (tengelyek pozíciószenzorai) +Digitális I/O 0/24 V

69 Csuklószenzor Kalibráció Digitális Inkremens adó: 2 fázisjel, 1 null jel ( rés/fordulat, 4*es kiértékelés, kb. 1:60 áttétel –előny: pontos, digitális, gyors –hátárny: relatív Analóg ‘Helipot’: 60 jól elkülöníthető mérés –előny: abszolút –hátrány: zajos, AD kell, lassú Kalibráció: Előnyök egyesítése –Ellenpélda: hátrányok egyesítése: robogó, oldalkocsi CAL utasítás nélkül csak relatív csuklómozgás M J, és kézivezérlő JOINT mód –Vajon miért?

70 Processzorok

71 Szabályozás Háromhurkos kaszkád, PWM Feszültséggel áramot (=nyomaték) Nyomatékkal sebességet Sebességgel pozíciót Digitális pozíciómérés, számított sebesség Túláramfigyelés, hiba figyelése 1 ms ciklusidő

72 Számítógép 1+6 CPU, 16 bit, fix point Billentyűzet, monitor Interaktív command prompt Memória, Floppy műveletek (Programok, helyzetek (pontok) ) Interpreteres parancs és programvégrehajtás Alapjelgenerállás=Pályatervezés

73 Pályatervezés Görbe ívű mozgások (S nélküli utasítások pl. GO, MOVE): pályatervezés csuklókoordinátákban. –Egyszerű, gyors, 1 ms –6 csuklóprocesszon szinkronban –Egyértelmű –GÖRBE Egyenes mozgatások (S-es utasítások, pl. GOS, MOVES) pályatervezés Descartes koordinátákban –Inverz geometriai szubrutinok folyamatosan hívódnak –Inverz szögfüggvények, főprocesszoron –lassú, ms, ezen idő közben csuklóinterpoláció a 6 csuklóprocesszoron –Több megoldás létezik, megoldások száma is változik!!! BAJ!!! Konfiguráció-váltás: –Nem I alakú mozgás, hanem T vagy alakú (pozícióugrásos) –Mi a jobb? Pozícióugrás vagy sebességugrás? Mi a kevésbé rossz? Milyen algoritmust kell akkor írni? Milyen ARPS programot kell írni?

74 Pályatervezés II Vezérlő SW: –Ne váltson konfigurációt, ha nincs megoldás megfelelő csuklótávolságban, akkor álljon meg –HIBAÜZENET: A közel levő megoldás mért nem folytatható? JOINT 5 OUT OF RANGE –Mikor hívódik INVGEO?: Egyenes vonalú mozgáskor sokszor Descartes helyzetbe való mozgáskor ARPS: –Mindent lassan kipróbálni sebességugrásos megállás egész számú többszörös legyen a gyorsabb sebesség –Pálya ritkább mintavételezése –Akadály közelében kicsi mozgás: Descartes, ütközés-elkerülés –Nagy mozgás szabad térben: Csukló, konfigurációt válthat –Konfiguráció megjegyzése: Csuklóváltózós pont (pl. #A)

75 Pályatervezés III GO #A –Gyakorlatilag mindig lefut Asztallal ütközhet GO A –Meghívódik A-ra INVGEO, a konfiguráció kapcsolók alapján választ a csuklótartományokon belüli megoldások közül GOS #A –Nem engedélyezett GOS A –Folyamatosan hívódik INVGEO, de csak a robotkar aktuális konfigurációjának megfelelő megoldást fogadja el, különben megáll Konfigurációváltás: Pl. Move Joint, vagy kézivezérlő.

76 Kezelőfelület Csak Alarm, csak indokolt esetben!

77 Kézivezérlő

78 Descartes mozgás csak kalibráltan Off:vezérlés kézben, Comp: computeren Open-Close (kompresszor) Mozgatóüzemmódok: Joint, World, Tool Speed, Descartes, Jacobian (6*6) Message FREE-t használni TILOS! Step: Nem használjuk

79 Balesetvédelem Vészgombokat NYOMNI kell A robotnak sok olyan komponense van, ami meghibásodás esetén durva balesetet okozhat! A robot hatósugara egy kb. 2m átmérőjű gömb. A robot hatósugarán belülre csak a legszükségesebb ideig nyúlunk, fokozott figyelemmel (mérésvezető) Néha lekapcsol magától… CAL, –1 programhiba: TOOL átállítása, TOO FAR

80 ARPS Command prompt Editor Pontok kezelése Mozgások kezelése Végrehajtás, változók

81 Command prompt CAL Programutasítások ponttal:.GO READY,.M J 2,60.MOVES 0,0,-100 Dimenziók: mm, és fok Miért? Mi a hiba? LIST STATUS (L S) Helyzetek tárolása, törlése, listázása, módosítása, másolása Programok adminisztrációja Floppy, memóriakezelés

82 Editor PDIR, PLIST, EDIT Előbb papíron meg kell írni Begépeljük (nincs javítás) Kilépés: E+enter Javítás: I(nsert) D(elete) R(eplace), RA E(xit)

83 Helyzetek kezelése Adatstruktúra: 6 Dof helyzet vagy 6-D csuklóvektor (konfiguráció benne van) Létrehozás: betanítással: HERE A, H #B Listázás, törlés LLIST, LDEL Módosítás, másolás SHIFT, LOCATE Kombinálás A(B) = pose(rel) HERE A(B) is megy, egyedül itt lehet kimeneti arg. Referencia és relatív helyzetek Mátrixszorzás SHIFT B=100,50,0 FRAME F=O,X,XY, BASE x,y,z,z_rot BASE, TOOL átdefiniálásának mire van hatása? –#A, A, mindegyik, egyik sem?

84 Mozgások Relatív: MOVE JOINT, MOVES Helyben: ALIGN Abszolút GO,GOS,GONEAR,GOSNEAR SPEED OPEN CLOSE

85 Végrehajtás RUN prg (STOP) HALT (EXIT) 20 GO A (cimke) JUMP 20 IF C<=3 THEN JUMP 20 CALL prg RETURN C ********comment*************

86 Változók: Integer és helyzet Nincs deklaráció (mint az interpretereknél) SET J=I <> LOCATE B2=B0 SET I=I+1 <> SHIFT B2=0,0,10 Változók globálisak Pontokra nem használható a SET, helyette LOCATE vagy SHIFT Helyzetekkel kapcsolatos utasítások szám argumentuma csak konstans lehet, változó vagy kifejezés nem.

87 Példaprogram Példa elrendezése Digitális I/O Algoritmus program

88 Példa elrendezése

89 Digitális I/O kezelése Mérés alatt nem használjuk –A példaprogram illusztráció céljából használja Meghajtás: OUT (+)addr(0..31) 24 V OUT -addr(0..31) 0 V Várakozás: WAIT IN (+)addr(0..31) 24 V WAIT IN -addr(0..31) 0 V

90 Főprogram

91 Szubrutin

92 Megtanulandó ARPS utasítások Minden, ami szerepel a példaprogramban HERE, BASE, TOOL, MOVE(S), TMOVE(S), MOVE JOINT FRAME F=O,X,XY: relatív keret készítése 3 descartes-helyzet TCP-je szerint HERE F(A_F), LOCATE A=F(A_F), GO F(A_F), SHIFT A_F=20,0,50


Letölteni ppt "Robotikai Alapok I. Ami a robotprogramozás c. mérés elvégzéséhez szükséges… Prohászka Zoltán,"

Hasonló előadás


Google Hirdetések