UNIVERZA V LJUBLJANI Fakulteta za elektrotehniko in računalništvo 61000 Ljubljana Tržaška 25 Telefon (061) 1768 411 Fax: (061) 264 990 St.: M-669 Datum: 30.3.1995 Roman KAMNIK, dipl.ing. LJUBLJANA Odbor za pedagoško delo Fakultete za elektrotehniko in računalništvo Univerze v Ljubljani izdaja naslednjo magistrsko nalogo iz EL Naslov naloge: ADAPTIVNO KRMILJENJE SILE ROBOTSKEGA DOTIKA Tematika naloge: Industrijski robot s petimi rotacijskimi prostostnimi stopnjami prilagodite za eksperimentalno laboratorijsko uporabo. Izdelajte direktni in inverzni kinematicni model robota in ga implementirajte v robotskem krmilniku osnovanem na osebnem računalniku. Predlagajte shemo adaptivnega impedančnega krmiljenja za regulacijo sile robotskega dotika. Obnašanje krmilnega postopka preverite z računalniško simulacijo krmiljenja ene pros-tostne stopnje robotskega mehanizma. Rezultate simulacije primerjajte z rezultati implementacije krmilne sheme na industrijskem robotu. Mentor prof.dr.Tadej BAJD K o m e ri\t o ^LjÜbC^' Dekan: prof.dr.Tomaž SLIVNIK profcfljW) rag o w\TKO 40 mou - Qh& DtoH- fi.S.% : UNIVERZA V LJUBUANI FAKULTETA ZA ELEKTROTEHNIKO IN RAČUNALNIŠTVO MAGISTRSKO DELO ROMAN KAMNIK Ljubljana, junij 1995 Adaptivno krmiljenje sile robotskega dotika Povzetek Pričujoče delo obravnava problem vodenja robotov v dotiku z okoljem. Za industrijski robot ASEA IRb 6 s petimi prostostnimi stopnjami gibanja je zasnovan algoritem krmiljenja sile. Uporabljen je pristop, ki temelji na impedančnem vodenju robota. Krmilnik takšne vrste je sestavljen iz dveh podsklopov, notranjega pozicijskega regulatorja in zunanjega regulatorja sile. Naloga zunanjega regulatorja sile je generirati referenčno pozicijsko trajektorijo notranjemu pozicijskemu regulatorju glede na sile v dotiku. Povratna informacija o velikosti sile dotika je zagotovljena s štirosnim senzorjem sile, nameščenim v zapestju robota. Delo je razdeljeno na dva dela. Prvi podaja prilagoditev strojne opreme industrijskega robotskega krmilnika, ki ne omogoča vodenja robota v zunanjih koordinatah. Predelava krmilnika je obsegala gradnjo dela strojne opreme ter načrtanje kinematičnih algoritmov vodenja v zunanjih koordinatah. Z novim krmilnikom, zgrajenim na bazi osebnega računalnika, robot ASEA po funkcionalnih sposobnostih dosega sodobne industrijske robote. Poleg tega je robot zaradi odprte programske arhitekture primeren za načrtovanje in študij novih krmilnih algoritmov. V drugem delu magistrske naloge je predstavljen razvoj krmilne sheme vodenja robota v dotiku z okoljem. Krmiljenje sile temelji na krmiljenju mehanske impedance, ki jo vrh robota izraža glede na okolje. Impedančni regulator je zasnovan kot adaptivni regulator, nacrtan s pomočjo direktne modelno referenčne adaptivne regulacije. Izhod, referenčna trajektorija gibanja, je generiran glede na razliko predpisanega in dejanskega odziva sile po posameznih oseh Kartezijevega prostora. Podani so simulirani odzivi krmilne sheme pri simulaciji ene prostostne stopnje ter dejanski odzivi pri implementaciji na robotu. ZAHVALA Iskreno se zahvaljujem mentorju prof .dr. Tadeju Bajdu za neprecenljivo pomoč pri podiplomskem študiju in nastajanju tega dela. S svojimi nasveti in idejami me je tri leta usmerjal in vzpodbujal. Ob posvetih, ki so večkrat potekali ob kavi, je hkrati ustvarjal sproščeno delovno okolje v katerem sem se zelo lepo počutil. Zahvaljujem se akademiku prof.dr. Alojzu Kralju, predstojniku Laboratorija za robotiko in biomedicinsko tehniko, ki me je sprejel v raziskovalno skupino, mi pomagal in z nakupom opreme omogočil nastanek tega dela. Posebej se zahvaljujem komentorju prof.dr. Dragu Matku da me je uvedel v svet adaptivne regulacije in mi bil ob problemih vedno pripravljen priskočiti na pomoč. Zahvaljujem se kolegom iz Laboratorija za robotiko in biomedicinsko tehniko. Bili smo kolektiv v kakršnem sem si vedno želel delati. Mag. Tomaž Karčnik, mag. Jure Zupančič, Zlato Matjačič, dipl.ing., dr. Zdravko Balorda in docent dr. Marko Munih so bili moji sodelavci in svetovalci, ki so mi nesebično pomagali premagovati, za mene včasih nerešljive tehnične probleme. Janez Šega, ing. mije pomagal pri izgradnji strojne opreme. Hvala Gordani za prijateljstvo, potrpežljivost in odrekanja tekom mojega študija. Hvala tudi staršem in bratu Matjažu, ki so verjeli vame, mi po svojih močeh pomagali in me nenazadnje tudi finančno podprli. Adaptivno krmiljenje sile robotskega dotika Vsebina 1 Uvod ............................................ 1 2 Prilagoditev robota ASEA IRb 6 za eksperimentalne namene .......... 9 2.1 Robotski PC krmilnik.............................. 10 2.2 Pretvorba signalov resolverjev v signale kodtrnikov............ 13 2.3 Kinematični model robota ........................... 18 2.3.1 Direktna kinematika .......................... 18 2.3.2 Inverzna kinematika .......................... 27 2.4 Sledenje trajektorije v prostoru ........................ 33 3 Krmiljenje robota ASEA IRb 6 v dotiku z okoljem ............... 37 3.1 Zasnova robotskega impedančnega krmilnika ............... 37 3.2 Adaptivna krmilna shema........................... 41 4 Simulacija delovanja impedančnega krmilnika .................. 49 4.1 Simulacijska shema .............................. 49 4.2 Rezultati simulacije .............................. 54 5 Implementacija impedančnega krmibiika na robotu ............... 59 5.1 ImpedanČno krmiljenje po z osi ....................... 61 5.2 ImpedanČno krmiljenje po oseh x, y in z.................. 64 6 Zaključek ......................................... 70 7 Literatura ......................................... 73 1 Uvod 1 1 Uvod Glavni delež aplikacij robotov v avtomatizaciji proizvodnih postopkov danes predstavljajo delovne naloge, pri katerih se robot giblje v prostoru kot izoliran sistem z malo ali nič interakcije z okolico. Robotske naloge kot so barvanje, varjenje in manipulacija predmetov so primeri vodenja vrha robota po bolj ali manj kompleksni trajektoriji v prostoru, medtem ko orodje ali manipulirani predmet le redko pride v dotik z okoljem. Tudi kadar takšen dotik nastopi, nastopi brez natančno določene strategije krmiljenja gibanja robota v dotiku. Robotsko izvajanje mnogih delovnih nalog zahteva primerno vodenje robota tudi v dotiku z okolico. V primerih robotskega vrtanja, brušenja, poliranja, raziglanja, zvijanja, montaže mehanskih delov je potrebno krmiliti gibanje robota glede na sile, ki nastopajo v dotiku. Glede na številnost takšnih delovnih nalog, ki so zanimive za nadaljni razmah robotike, predstavlja razvoj krmiljenja robotov po sili velik izziv v razvoju robotske tehnologije. Krmiljenje robota v dotiku z okoljem je kompleksna naloga, ki zahteva natančno specifikacijo ciljev naloge, poznavanje strategije generiranja trajektorije gibanja, poznavanje strategije odzivanja na povrate informacije o sili in poziciji ter poznavanje relacije med silo dotika in gibanjem. Potrebno je znanje o nalogi v tolikšni meri, da je možno nacrtati algoritem vodenja s stabilnim odzivom tako v dotiku kot pri prostem gibanju. Začetki razvoja krmiljenja manipulator] e v po sili segajo v 1950-ta leta. Razvoj je šel od preprostih strategij diskretnega odločanja glede na silo dotika, preko pasivnih naprav za zagotavljanje voljnosti vrha manipulatorja do krmilnih zakonov regulacije sile dotika. Predlagani so bili številni algoritmi krmiljenja robotov v dotiku z okoljem. Whitney [1] je podal pregled in primerjavo krmilnih shem različnih avtorjev. Kljub različnim pristopom lahko večino krmilnih shem razvrstimo v dva razreda, v razred eksplicitnega krmiljenja sile in v razred impedančnega krmiljenja. 1 Uvod 2 Eksplicitno krmiljenje sile predstavlja neposredno regulacijo sile v dotiku. Uporabnik definira želeno silo dotika, ki predstavlja referenčno vrednost regulatorju. Razlika med referenčno vrednostjo in dejansko izmerjeno silo je pogrešek sile in ta je preko krmilnega zakona preračunan v potrebne momente v sklepih robota. Eksplicitno krmiljenje sile je ponavadi uporabljeno skupaj s pozicijskim krmiljenjem v t.i. shemi hibridnega krmiljenja sile in pozicije [2, 3, 4]. Ta razdeli delovni prostor robota na dva pravokotna si podprostora in v vsakem izvaja ločeno ali krmiljenje sile ali krmiljenje pozicije. Povratna zanka sile in pozicijska povratna zanka delujeta medsebojno neodvisno. Dovoljeno območje gibanja točke dotika mora biti vzdolž površine, medtem ko mora biti sila dotika normalna na površino. Metoda zahteva določeno znanje o dovoljenih smereh gibanja in o smereh sile dotika, ki so odvisne od strukture okolja in od naloge, ki jo želimo opravljati. Impedančno krmiljenje temelji na ideji krmiljenja dinamičnega obnašanja robota v dotiku. Impedančni krmilnik je nacrtan tako, da vrh robota, gledano z vidika okolja, posnema obnašanje izbranega fizikalnega mehanskega sistema. Celotna strategija predstavlja vodenje robota v smislu zagotavljanja dinamičnega razmerja med silo dotika in gibanjem. Tako je sila dotika krmiljena posredno preko krmiljenja pozicije in mehanskih lastnosti manipulatorja. Trenuten prenos moči med dvema fizikalnima sistemoma je vedno definiran kot produkt dveh spremenljivk, napetosti (npr. sile) in pretoka (npr. gibanja). Gledano z vidika okolja lahko manipulator vzdolž vsake prostostne stopnje predstavlja le dva tipa fizikalnih sistemov: admitancnega, ki sprejema silo in povzroča gibanje ter impedancnega, ki sprejema gibanje in povzroča silo. Koncept impedance in admitance je bolj domač na področju elektrotehnike kot predstavitev frekvenčno odvisne upornosti in prevodnosti. Podobnost obravnave v osnovi velja, razen za dualnost obeh zapisov, ki zaradi nelinearne robotske manipulacije nista zamenljiva. Obstajajo realni fizikalni sistemi, ki so lahko zapisani le v eni od obeh oblik. Najvažnejša posledica dinamične interakcije dveh fizikalnih sistemov je ta, da morata biti sistema komplementarna drug glede na drugega. Če je eden impedančni mora biti drugi admitančni in obratno. V večini robotskih nalog okolje vsebuje vsaj vztrajnost in/ali kinematične omejitve gibanja. To je fizikalni sistem, ki sprejema silo in se odziva s svojim gibanjem. Na tak sistem je mogoče vedno izvršiti pritisk, ni pa ga mogoče vedno premakniti. To je admitančni sistem. Zaradi komplementarnosti kinematično sklopljenih fizikalnih sistemov je pri interakciji 1 Uvod 3 z admitančnim okoljem potrebno obnašanje robota impedančne narave. Mehanska impedanca robota je definirana z impedančno enačbo, ki podaja dinamično razmerje med silo dotika in gibanjem vrha manipulatorja. Glede na uporabo različnih povratnih zank je možnih več oblik impedance. Delovanje pozicijske povratne zanke posnema fizikalno delovanje vzmeti, delovanje negativne hitrostne povratne zanke posnema delovanje dušilnega člena in delovanje povratne zanke po sili spreminja navidezno vztrajnost sistema [5]. S kombinacijo omenjenih povratnih zank dobimo impedanco reda nič, impedanco prvega reda ali impedanco drugega reda. Impedanco reda nič definira enačba F = K(XR - X) (1.1) kjer je F vektor sile dotika, X vektor trenutne pozicije vrha manipulatorja in K diagonalna matrika s koeficienti željene togosti robota po posameznih stopnjah prostosti. Vektor XR je referenčna trajektorija gibanja, ki ji skuša vrh manipulatorja pozicijsko slediti. Ob dotiku pride do spremembe te pozicije in v stacionarnem stanju je to pozicija ravnotežnega stanja. Imenovana je tudi navidezna pozicija, ker lahko leži izven delovnega prostora robota ali v notranjosti podlage. Krmiljenje linearnega razmerja med silo in pozicijo po enačbi (1.1) je poimenovano tudi krmiljenje togosti manipulatorja (stiffness control) [1]. Bolj tipičen predstavnik impedančnega krmiljenja je krmiljenje impedance prvega reda [1, 6]. V tem primeru je razmerje med silo in pozicijo zapisano z enačbo: F = B(XR -X) + K{XR -X) (1.2) Krmiljenju togosti je dodana hitrostna povratna zanka s povratnozančnim ojačenjem. Koeficienti dušenja manipulatorja v matriki B so tako vsota lastnega dušenja mehanizma robota in aktivnega dušenja hitrostne povratne zanke. V tej obliki je impedančni krmilnik v bistvu PD pozicijski regulator v Kartezijevem koordinatnem sistemu. Spreminjanje mehanske impedance sistema je doseženo s spreminjanjem ojačenj pozicijske in hitrostne povratne zanke. Robot z impedanco drugega reda se z vidika okolja obnaša kot mehanski sistema masa-vzmet-dušilni člen. Impedančna enačba je v tem primeru razširjena na obliko: I Uvod 4 F = K(XR - X) + B(4 - X) - MX (1-3) Parameter Mje uporabniško določena navidezna vztrajnost manipulatorja po posameznih oseh. Lastna vztrajnost robotskega mehanizma je tako modificirana s pomočjo aktivnega povratnozančnega delovanja. Prejšnja primera narekujeta uporabo povratne zanke po pospešku. Vendar ta za implementacijo v praksi ni najboljša rešitev zaradi velike šumnosti signala, ki je rezultat večkratnega odvajanja [11]. Boljša rešitev je merjenje sile dotika in uporaba izračunanega pospeška kot krmilne veličine. Neville Hogan [7] je prvi predstavil impedančno krmiljenje osnovano na dinamičnem modelu robota. Za računanje momentov v motorjih rA je uporabil dinamični model robota ta = M(q)q + V(q,q) + G(q) - JTF (M) v katerega je za pospešek q vpeljal pospešek izpeljan iz impedančne enačbe (1.3) in preračunan v koordinate sklepov: X = M'K{XR - L{q)) + M~lB{XR - J{q)q) + M"1 F (1-5) q =Jl(g)[X-J(q)q] M Matrika H(q) v enačbi (1.4) predstavlja vztrajnostni tenzor mehanizma, matrika V(q,q) matriko Coriolisovih in centrifuganlnih sil, vektor G(q) vektor gravitacijskih sil in člen JTF preslikavo vpliva sile dotika na navore v sklepih. V enačbah (1.5) in (1.6) sta matriki L(q) in J(q) direktna kinematična transformacija ter Jacobijeva matrika. Rezultat računske operacije je krmilni zakon ta ^HJ'M-nKiX.-Liqii+BiXx-Jq)^] + (L7) + G + V - HJlJq - JTF , ki glede na izmerjene vrednosti sile, pozicije in hitrosti sklepov podaja potrebne momente v sklepih s ciljem, da vrh manipulatorja izraža želeno impedanco. Krmilni algoritem postane v gibanju brez dotika podoben krmilni shemi z izračunanim pospeškom (resolvedacceleration) [8], ki v primeru dotika upošteva še zunanje vplive na robotski mehanizem. Metoda je zanimiva tudi s stališča reševanja inverznega kinematicnega modela pozicijsko vodenih lUvod 5 manipulatorjev v realnem času. V primeru, da je krmilni zakon osnovan na transponirani Jacobijevi matriki JT [9], ta v popolnosti odpravi potrebo po izračunavanju inverzne kinematike. Izračunavanje inverzne kinematike je v splošnem časovno zamuden računski problem z večkratnimi rešitvami pri redundantnih manipulatorjih. Kako blizu bo vrh robota sledil referenčno trajektorijo XR v prostem gibanju po prostoru je odvisno od impedančnih parametrov M, B in K, katere izbira uporabnik sam. Vodenje redundantnih manipulatorjev z impedančnim krmilnikom sta obdelala Mussa-Ivaldi in Hogan [10]. Z izboljševanjem lastnosti Hoganovega impedancnega krmiljenja osnovanega na dinamičnem modelu robota so se ukvarjali številni avtorji. Kelly s sodelavci [12], Lu in Meng [13] ter Singh [14] zaradi nikoli dovolj dobrega modela robota uvedejo v krmilni zakon dodatne adaptivne zakone. Adaptivno nastavljivi parametri v krmilnem algoritmu zmanjšujejo občutljivost sistema na nelinearnosti in netočnosti parametrov modela. Isti problem rešujejo Lu in Goldenberg [15] s pomočjo impedancnega regulatorja v drsečem načinu delovanja (sliding mode) ter Dawson s sodelavci [16] s pomočjo regulatorja načrtanega na osnovi teorije Ljapunova. Vsi omenjeni pristopi so računsko zahtevni, zaradi česar so lastnosti delovanja v večini primerov preizkušene le s simulacijskimi shemami. Anderson in Spong [17] razširita teorijo mehanske impedance robota na primere interakcij z različnimi oblikami okolij. Definirata tri modele okolja: vztrajnostnega, ki gaje možno prosto premikati po prostoru; upornostnega, ki ga je možno porivati vzdolž viskozne podlage ter kapacitivnega, ki je fiksen inje na njega možno opravljati silo. Predpostavita, da je možno z inverznim dinamičnim modelom, ki razgradi robota v linearne podsisteme po posameznih prostostnih stopnjah, uporabiti sistemsko teorijo linearnih sistemov. Glede na dualnost teoremov Nortona in Thevenina za vsak model okolja določita primerno impedanco manipulatorja. Idejo Hoganovega impedancnega krmilnika tako razširita na hibridni krmilnik po vzoru hibridnega krmiljenja sile in pozicije. Delovni prostor razstavita na pozicijsko krmiljen podprostor in podprostor krmiljen po sili. V vsakem podprostoru izvajata krmiljenje sile ali pozicije preko impedance, ki stajo predhodno določila glede na okolje. Pozicijsko krmiljen podprostor uporablja impedančno enačbo drugega reda (1.3), medtem ko v podprostoru krmiljemm po sili avtorja uvedeta referenčno silo FR in izvajata silo dotika preko dinamične zveze med pogreškom sile in gibanjem: 1 Uvod 6 (FR - F) = MX + B(X - Xf) (1.8) Hitrost Xf je dodaten kompenzacijski signal dobljen s filtriranjem hitrosti manipulator]a. Vsi dosedaj omenjeni primeri implementacije impedancnega krmiljenja so primeri osnovani na dinamičnem modelu robota. Krmilni zakon je načrtan tako, da s pomočjo modela robota, željene trajektorije gibanja in impedančne relacije sila/pozicija definira potrebne momente v sklepih. Zaradi težavnega določevanja parametrov dinamičnega modela, časovno zamudnega računanja momentov v realnem času in zahteve po neposrednem krmiljenju momentov v motorjih ta oblika impedancnega krmiljenja še ni zaživela v praktičnih aplikacijah. Današnji industrijski roboti so namreč večinoma pozicijsko vodeni manipulator)i, sposobni le zanesljivo slediti referenčni pozicijski trajektoriji v prostoru. Poleg tega zaprta arhitektura robotskih industrijskih krmilnikov ne dopušča poseganja v njihovo strojno opremo. Navedeno je narekovalo razvoj impedancnega krmiljenja osnovanega na pozicijskem vodenju. Impedančni krmilnik takšne vrste temelji na generiranju referenčne trajektorije originalnemu robotskemu pozicijskemu regulatorju. Referenčna trajektorija je generirana tako, da je izpolnjena relacija med merjeno silo F ter željeno in dejansko pozicijo vrha manipulatorja (XR in X) preko impedančne enačbe: F = M (XR - X) + B (XR - X) + K (XR - X) (1-9) Diagonalne matrike M, B in K, enako kot v prejšnjih primerih, vsebujejo parametre robotove navidezne vztrajnosti, dušenja in togosti po posameznih prostostnih stopnjah. Pozicijski impedančni krmilnik sestavljata dve povratni zanki, notranja in zunanja. Notranja pozicijska povratna zanka zagotavlja sledenje pozicije, ki jo definira zunanji regulacijski krog zaključen s povratno zanko po sili. Referenčna trajektorija pozicijskemu krmilniku je v prostem gibanju enaka željeni trajektoriji, ob dotiku pa se tej prišteva še sprememba pozicije zaradi sile dotika. Spreminjanje pozicije določa t.i. impedančni filter s prenosno funkcijo izpeljano iz enačbe (1.9). Ker so lastnosti impedancnega krmilnika osnovanega na pozicijskem vodenju močno odvisne od lastnosti podrejenega pozicijskega regulatorja potekajo raziskave na tem področju v smeri proučevanja impedančnih lastnosti v odvisnosti od različnih konfiguracij zunanje povratne zanke po sili. Pelletier in Doyon [18] predstavita tri variante impedancnega 1 Uvod 7 krmilnika z različnimi oblikami povratne zanke sile. Definirata mero napake in primerjata lastnosti krmilnikov glede na zadovoljitev impedancne enačbe. Za izboljšanje lastnosti vsakega krmilnika predlagata metodo z dodatnim korekcijskim signalom. Carignan [19] izvede primerjavo dveh pozicijskih impedančnih krmilnikov uporabljenih pri krmiljenju robota Adept in pri krmiljenju testnega manipulatorja vesoljskega plovila. Z uporabo norme impedancne napake predstavi lastnosti manipulatorjev v dotiku s podlago, ki vibrira z različnimi frekvencami. Izboljšanje lastnosti doseže z vnaprejšnjim prištevanjem dodatne komponente sile k merjeni sili (force feedforward). Raje kot z dodajanjem raznih kompenzacijskih shem v zunanjo zanko se Colbaugh s sodelavci v [20J ukvarja z izboljšanjem sledenja pozicije notranje zanke. Namesto klasičnega pozicijskega PD regulatorja uvede računanje momentov motorjev z direktno adaptivno shemo. Adaptivni regulator zasnuje na transponirani Jakobijevi matriki JT in se na ta način izogne računanju inverznih kinematičnih transformacij. Tako je njegov impedančni krmilnik primeren tudi za krmiljenje redundantnih robotov. Volpe in Khosla [21] opravita primerjavo med eksplicitnim krmiljenjem sile in impedančnim krmiljenjem. Rezultat njune teoretične in eksperimentalne analize je ugotovitev, da je eksplicitni krmilnik sile s proporcionalnim ojačenjem pravzaprav prisoten kot podsklop v impedančnem krmilniku drugega reda. Za primer interakcije s togim okoljem, ko je pozicijska povratna zveza skoraj konstantna, pa avtorja pokazeta, da se impedančni krmilnik zreducira na samo eksplicitni krmilnik sile. Takrat je referenčna hitrost manipulatorja enaka nič, zaradi česar se lahko impedančna enačba zapiše v skrčeni obliki: F=MX + BX + K(X-XR) (LIO) Prispevek KXR, ki je skalirana referenčna pozicija, lahko v tem primeru neposredno zamenjamo z vrednostjo referenčne sile. Volpe in Khosla, ki sta svoje ugotovitve glede prehoda impedančnega krmiljenja v eksplicitno krmiljenje pri togem okolju dognala s pomočjo impedančnega krmiljenja osnovanega na dinamičnem modelu, v delu [22] podata ekvivalentnost trditev tudi za krmilne sheme, ki so osnovane na pozicijskem vodenju. V pričujočem delu je podan razvoj in implementacija impedančnega krmilnika industrijskega robota ASEA IRb 6. Impedančni krmilnik je osnovan na pozicijskem vodenju v zunanjih koordinatah, zato je najprej v drugem poglavju predstavljena predelava obstoječega 1 Uvod 8 pozicijskega krmilnika robota v krmilnik primeren za eksperimentalne namene. Orisani so zasnova strojne in razvoj pogramske opreme novega krmilnika zgrajenega na bazi osebnega računalnika. Tretje poglavje podaja teoretičen pristop k zasnovi impedancnega krmilnika. Namen impedancnega krmiljenja robota ASEA je interakcija s togo podlago in togimi predmeti. Zato so uporabljene ugotovitve Volpeja in Khosle [21] ter adaptivna shema za zagotavljanje boljšega sledenja sile. Simulirano obnašanje adaptivne impedančne krmilne sheme za primer ene prostostne stopnje predstavlja poglavje štiri. Poglavje pet pa zaključuje delo z rezultati implementacije adaptivnega impedancnega krmilnika na realnem robotu. 2 Prilagoditev robota ASEA IRb ti za eksperimentalne namene 9 2 Prilagoditev robota ASEA IRb 6 za eksperimentalne namene Industrijski robot ASEA IRb 6 je robot antropomorfne konfiguracije s petimi prostostnimi stopnjami gibanja. Njegove sklepe poganjajo enosmerni motorji preko mehanskih paralelogramskih struktur v kombinaciji s polžastimi ali harmonic drive prenosi. Slika 2.1 prikazuje strukturo robota ASEA IRb 6. Največje dovoljeno breme, ki ga robot lahko prenaša v svojem delovnem prostoru je 6 kg. Kljub dobri mehanski strukturi je eksperimentalno delo z robotom oteženo zaradi neprimernega robotskega krmilnika. Originalen krmilnik robota, zgrajen na bazi procesorja Intel 8008, namreč omogoča samo pozicijsko vodenje robota v koordinatah sklepov. Računsko določevanje želenih pozicij in morebitna komunikacija z dodatnim računalnikom nista mogoči. Sklep 4 Sklep 5 Slika 2.1: Robot ASEA IRb 6 2 Prilagoditev robota ASEA IRb 6 za eksperimentalne namene 10 Zaradi navedenega je bil, kot prvi korak k razvoju krmiljenja sile, potreben razvoj novega pozicijskega krmilnika robota. Ta naj bi omogočal pozicijsko vodenje s točke na točko ter sledenje trajektorije v zunanjih in notranjih koordinatah. Zgradba krmilnika naj bi bila takšna, da dovoljuje priključevanje perifernih naprav, razvoj dodatnih programskih algoritmov in enostavno programiranje. Robotski krmilnik, ki izpolnjuje te zahteve smo zgradili na osnovi osebnega računalnika PC 486. 2.1 Robotski PC krmilnik Pozicijski krmilnik robota ASEA IRb 6 smo zasnovali na regulacijskih modulih ISREG-2, proizvod Inštituta Jožef Stefan v Ljubljani '. Regulacijski moduli regulirajo pozicijo motorjev in s tem preko prenosov in mehanskih paralelogramskih struktur opravljajo želeno pozicioniranje robotskih sklepov oz. pozicioniranje vrha robota. Slika 2.2 predstavlja konfiguracijo osebnega računalnika, ki predstavlja robotski krmilnik. Na njegovo vodilo so priključeni trije moduli ISREG-2 in vhodno-izhodni vmesnik firme Burr-Brown. Vhodno-izhodni vmesnik služi za zajemanje analognih in izmenjavo digitalnih signalov (8 A/D kanalov in 32 digitalnih I/O kanalov). Na procesorju PC računalnika, ki je omenjeni strojni opremi nadrejen, tečejo kinematični algoritmi vodenja robota v zunanjih koordinatah. Poleg tega opravlja osebni računalnik funkcijo razvojnega sistema programov vodenja ter shranjevanja in prikazovanja podatkov. Regulacijski modul ISREG-2 je zgrajen na tiskanem vezju Europa formata. Za komunikacijo z nadrejenim procesorjem uporablja osembitno PC XT vodilo. V regulacijski zanki deluje popolnoma samostojno, nadrejeni procesor mu le posreduje regulacijske parametre in želeno pozicijo ali hitrost servosistema. Modul temelji na dveh integriranih vezjih LM628 firme National Semiconductors, ki so bila razvita prav z namenom regulacije numerično krmiljenih pogonov. Vsak modul ISREG-2 omogoča spremljanje pozicije in regulacijo motorjev dveh servoregulacijskih stopenj preko dveh neodvisnih kanalov. Vsak Regulatorski vmesnik ISREG-2 - Tehnična dokumentacija, Inštitut "Jožef Stefan" Ljubljana, Junij 1993, Ljubljana. 2.1 Robotski PC krmilnik 11 kanal vsebuje 32-bitni števec, katerega stanje nosi informacijo o poziciji. Iz trenutne in referenčne vrednosti pozicije sam izračuna krmilni signal in ga preko 12 bitnega D/A pretvornika posreduje močnostnemu ojačevalniku motorja. Regulator LM628 omogoča štirikratno povečanje ločljivosti inkrementalnih dajalnikov pozicije, odkrivanje napak oz. izgubljenih impulzov inkrementalnih dajalnikov ter proženje strojnih prekinitev nadrejenemu računalniku. Pri pospeševanju ali ustavljanju uporablja vgrajeni generator trapeznega profila hitrosti. Možno je delovanje regulatorja v pozicijskem ali hitrostnem načinu, kar pomeni, da lahko deluje kot pozicijski ali hitrostni regulator. PC 486/66 MHZ U PC XT vodilo Digitalni vhodi-izhoól iSREG-2 inkr. kodimiki n A/D pretvornik motorji Slika 2.2: Strojna oprema osebnega računalnika - robotskega krmilnika Na sliki 2.3 je prikazana blokovna shema servoregulacije enega sklepa robota ASEA. Integrirano vezje LM628 opravlja funkcijo digitalnega pozicijskega regulatorja, ki na podlagi želenih vrednosti, povratne informacije o poziciji in notranjega generatorja hitrostnega trapeznega profila generira referenčni signal hitrostnemu regulatorju končne stopnje. Pozicijska zanka opravlja regulacijo pozicije s frekvenco 640 Hz. Na sliki označeni močnostni del, ki obsega hitrostni regulator, tokovni regulator, impulzno-širinski modulator ter mostični ojačevalnik, je izveden v analogni tehniki in je ostal nespremenjen v originalni izvedbi krmilnika. Informacijo o trenutni poziciji motorjev na robom ASEA zagotavljajo resolverji. Ker regulacijski moduli razpoznavajo samo signale inkrementalnih kodirnikov, je bilo zato potrebno izdelati ustrezne pretvornike. Pretvorba resolverskih signalov v signale inkrementalnih kodirnikov je na sliki 2.3 označena z blokom R/D pretvorba. 2.1 Robotski PC krmilnik 12 LM 628 Močnostni det réf. pozicija I M_ I digitalni [ pozicijska povratna zanka Slika 2.3: Blokovna shema pozicijske regulacije sklepa robota ASEA IRb 6 2.1 Robotski PC krmilnik 11 kanal vsebuje 32-bitni števec, katerega stanje nosi informacijo o poziciji. Iz trenutne in referenčne vrednosti pozicije sam izračuna krmilni signal in ga preko 12 bitnega D/A pretvornika posreduje močnostnemu ojačevalniku motorja. Regulator LM628 omogoča štirikratno povečanje ločljivosti inkrementalnih dajalnikov pozicije, odkrivanje napak oz. izgubljenih impulzov inkrementalnih dajalnikov ter proženje strojnih prekinitev nadrejenemu računalniku. Pri pospeševanju ali ustavljanju uporablja vgrajeni generator trapeznega profila hitrosti. Možno je delovanje regulatorja v pozicijskem ali hitrostnem načinu, kar pomeni, da lahko deluje kot pozicijski ali hitrostni regulator. PC 486/66 MHZ ? PC XT vodilo Digitalni vhodi-izhodi ISREG-2 A/D pretvornik inkr. kodimiki] | motorji Slika 2.2: Strojna oprema osebnega računalnika - robotskega krmilnika Na sliki 2.3 je prikazana blokovna shema servoregulacije enega sklepa robota ASEA. Integrirano vezje LM628 opravlja funkcijo digitalnega pozicijskega regulatorja, ki na podlagi želenih vrednosti, povratne informacije o poziciji in notranjega generatorja hitrostnega trapeznega profila generira referenčni signal hitrostnemu regulatorju končne stopnje. Pozicijska zanka opravlja regulacijo pozicije s frekvenco 640 Hz. Na sliki označeni močnostni del, ki obsega hitrostni regulator, tokovni regulator, impulzno-širinski modulator ter mostični ojačevalnik, je izveden v analogni tehniki in je ostal nespremenjen v originalni izvedbi krmilnika. Informacijo o trenutni poziciji motorjev na robom ASEA zagotavljajo resolverji. Ker regulacijski moduli razpoznavajo samo signale inkrementalnih kodirnikov, je bilo zato potrebno izdelati ustrezne pretvornike. Pretvorba resolverskih signalov v signale inkrementalnih kodirnikov je na sliki 2.3 označena z blokom R/D pretvorba. 2.1 Robotski PC krmilnik 12 LM 628 Močnostni del réf. pozicija (L^=® Slika 2.3: Blokovna shema pozicijske regulacije sklepa robota ASEA IRb 6 2.2 Pretvorba signalov rcsolverjev v signale inkrementalnih kodiruikov 13 2.2 Pretvorba signalov resolverjev v signale inkrementalnih kodirnikov Resolver je elektromehanska naprava sestavljena, podobno kot AC motor, iz statorja in rotorja. V osnovi predstavlja resolver vrtljiv transformator, ki spreminja induktivno sklopljenost primarnega in sekundarnih navitij v odvisnosti od kota zasuka svoje osi. Tako je na izhodu resolverja inducirana napetost, katere amplituda je direktno odvisna od kota zasuka osi. Konstrukcija resolverja obsega primarno navitje na rotorju in dve sekundarni navitji na statorju, ki sta medsebojno premaknjeni za 90°. V primeru da je rotorsko navitje vzbujano s sinusnim signalom konstantne amplitude in frekvence, se na statorskih navitjih inducirata signala, ki sta v fazi z vzbujalnim-referenčnim signalom, amplituda pa je modulirana s sinusom in kosinusom kota rotacije. Slika 2.4 skupaj z enačbama (2.1) in (2.2) ponazarja razmere pri delovanju resolverja. RESOLVER [> 50 100 150 200 250 30U 350 8 Slika 2.4: Shema in signali resolverja Kadar ima vzbujalna napetost obliko: Uri-r2 = A sinu/ , (2.1) so inducirane napetosti statorskih navitij enake: 2.2 Pretvorba signalov resolverjev v signale in kr e mentalnih kodirnikov 14 UslS3 = R Asmoit sino ,~ ~* US2_S4 = R Anmut coso Oznake v enačbah pomenijo: A - amplituda vzbujalne napetosti R - transformacijsko razmerje resolverja a) - frekvenca vzbujalne napetosti 0 - kot zasuka osi. Resolver je kot dajalnik pozicije v primerjavi z optičnimi kodirniki zanesljivejša naprava, neobčutljiva na temperaturo, vlago, vibracije in spremembe vzbujalne napetosti. Zagotavlja časovno stabilen signal z neskončno majhno ločljivostjo. Njegov princip delovanja omogoča absolutno določevanje položaja osi. Vzrok, daje resolver uporabljan v manjšem obsegu kot optični kodirniki, leži v bolj kompliciram pretvorbi analognega resolverskega signala v digitalno obliko. Integrirani pretvorniki resolverskih signalov v digitalno obliko rešujejo probleme zahtevne pretvorbe. R/D pretvorniki temeljijo na sledilni pretvorbi, ki se je izkazala najodpornejša na motnje superponiranega šuma. Osnovni princip sledilne pretvorbe je avtomatsko sledenje stanja digitalnega števca dejanskemu kotu. Stanje števca direktno predstavlja digitalizirano vrednost kota. Blokovna shema sledilnega R/D pretvornika je predstavljena na sliki 2.5. . Množenje opravljata sinusni in kosinusni množilnik, ki dajeta na izhodu produkte: Uc = USJS3 cos ,~ -^ Us = US2-s4 sm<^ = ^ v4sincor coso sin (sin (8 - ) = sin 8 cos -cos 8 sin ). Demodulator iz tega signala izloči enosmerno napetost. Kot demodulacijsko referenco uporablja resolverski vzbujalni signal. Dobljena napetost je proporcionalna sinusu razlike med kotoma 8 in . Z drugimi besedami, to je sinus napake med dejansko pozicijo resolverja in digitalno vrednostjo pozicije shranjene v števcu. Za majhne vrednosti napake je sinus napake kar približno enak napaki (sin(e) = e). Izhod integratola, ki integrira signal napake, predstavlja krmilni signal za kontrolo frekvence napetostno krmiljenega oscilatorja (VCO). Napetostno krmiljen oscilator generira impulze, ki jih šteje dvosmerni števec. Stanje digitalnega števca direktno opisuje digitalno vrednost kota rotacije. Večja kot je razlika med dejanskim kotom 8 in digitaliziranim kotom , večja je frekvenca oscilatorja in hitreje se stanje števca približuje dejanski vrednosti kota. Smer, v katero števec šteje navzgor ali navzdol, je določena glede na polariteto napake. Sledilni R/D pretvornik je v osnovi nizkopasovni filter drugega reda. Ima predvidljiv dinamični odziv in značilne frekvenčne lastnosti, ki so določene z elementi v povratni zanki [27]. Na točnost rezultata pretvorbe vplivajo amplitudna in fazna neenakost induciranih napetosti, inducirane višje harmonske komponente ter fazni zamik in popačenje referenčnega signala. Te nepravilnosti je možno zmanjšati z uporabo računskih metod [28, 29]. Največji pogrešek sledilnega pretvornika v digitalnem rezultatu se pojavlja med pospeševanjem in zaviranjem osi resolverja, ker se pretvornik ne more dovolj hitro odzivati na spremembe kotne hitrosti. Pri konstantni hitrosti pa je frekvenca oscilatorja nastavljena na stopnjo štetja (sledilno stopnjo), ki točno ustreza stopnji spremembe 8 na časovno enoto in bo zato 2.2 Pretvorba signalov resolverjev v signale i nkre mentalnih kod imi kov 16 digitalizirani kot sledil dejanskemu ( = 8). Informacija sledilnega pretvornika je vedno "sveža" in vedno dosegljiva kot izhod digitalnega števca. Za našo nalogo pretvarjanja resolverskih signalov smo izbrali R/D pretvornik firme Analog Devices AD2S90, ki poleg pretvorbe resolverskega signala v serijsko 12 bitno obliko in emulacije tahogeneratorja omogoča tudi emulacijo inkrementalnega optičnega kodimika. Izhod v obliki inkrementalnega kodimika obsega signal NM, ki se pojavi enkrat na obrat, ter signala A in B, ki sta vlaka impulzov 0 in 1, medsebojno premaknjena za 90 stopinj. Ločljivost pretvornika je 1024 impulzov na obrat. Prenosna funkcija med dejanskim kotom in digitalizirano vrednostjo kota za pretvornik AD2S90 znaša: tf> 1 + stt 1 " 2 TT (2.4) 1 + s ;, + -i— + -----2- /C .A, A, A2 kjer so: tj — 1,0 ms t2 = 90 ßs Kj = 364 s2 K2 = 200000 s2 Pasovna širina pretvornika je 1 KHz in maksimalna stopnja sledenja 375 obratov/sekundo. Regulacijski Čas znaša za majhne vhodne signale :t = 7 ms, za odziv na stopnico amplitude 179° pa je ts trikrat daljši. Meje pogreška pretvornika, podane od proizvajalca ob idealnih signalih resolverja, so ±10 kotnih minut. Zgrajenih je bilo pet pretvorniških modulov, ki obsegajo poleg R/D pretvornika še Wienov oscilator, tokovne ojačevalnike, napetostno stabilizacijo in dodatno zaščitno vezje. Slika 2.6 prikazuje blokovno shemo pretvomiškega vezja. Wienov oscilator generira sinusni vzbujevalni signal, ki je ojačevan z operacijskim ojačevalnikom. Vzbujevalni signal je frekvence 3.2 KHz in amplitude 2.4 V. Za razbremenitev izhodov pretvornika skrbijo tokovni ojačevalniki, za stabilizacijo napajalnih napetosti pa dva napetostna stabilizatorja. Dodatno zaščitno vezje je namenjeno za izključitev servosistemov robota, v primeru da pretvornik izgubi sled z merjenim kotom. V tem primem se pojavi velika razlika med merjenim in digitaliziranim kotom, zato frekvenca napetostno 2.2 Pretvorba signalov resolverjev v signale inkrementalnih kodirnikov 17 krmiljenega oscilatorja močno naraste. Izhodno napetost tega oscilatorja primerjamo z nastavljeno pragovno vrednostjo. Preklop komparatorskega vezja povzroči izklop servo ojačevalnikov motorjev. r cos m CDS LO SIH HI .___ SIH LO A V PRETVORNIKI MODUL < OSCILATOR AD2S90 T V V K.OMPAHATOR -C±ZH SIGHAU KOOtftftlta Slika 2.6: Blokovna shema pretvorniškega vezja signalov resolverja v signale kodirnika Fizično so pretvorniški moduli zgrajeni na tiskanih vezjih nacrtanih tako, da jih je bilo mogoče vgraditi v ohišje motorjev poleg resolverjev. Ob vgradnji so bile uporabljene obstoječe kabelske povezave z robotskim krmilnikom. Na ta način digitalni regulator položaja čuti dajalnike pozicije kot inkrementalne kodirnike. 2.3 Kine matični model robota 18 2.3 Kinematični model robota Naloga vodenja robota v zunanjih koordinatah zahteva poznavanje kinematičnega modela robota. Večino sklepov robota ASEA IRb 6 poganjajo motorji preko mehanskih vodil paralelogramske strukture. Zaradi tega kinematični model obsega dve zaporedni transformaciji: transformacijo med zasuki motorjev in zasuki sklepov ter transformacijo med zasuki sklepov in premikom vrha robota. Podpoglavje podaja izračun celotne kinematične preslikave v obeh smereh, z vrha robota v motorje in obratno. 2.3.1 Direktna kinematika Direktna kinematika izračunava velikost premika vrha robota, ki nastane zaradi vrtenja motorjev. Premik vrha je izražen glede na robotov bazni koordinatni sistem. Za izračun celotne preslikave je potrebno najprej izpeljati preslikave med zasuki motorjev in zasuki sklepov. Če označimo kote zasukov motorjev z M, in kote zasukov sklepov s qt, vse izražene v stopinjah, za posamezne sklepe zapišemo povezave: • Sklep 1: o, = -k.M. = - —Af. (2.5) Hi l ' 158 l k, je prenosno razmerje reduktorja v prvem sklepu. 2.3.1 Direktna ki nema tika 19 • Sklep 2: Slika 2.7: Mehanizem drugega sklepa Geometrijski prikaz mehanizma, ki prenaša vrtenje drugega motorja na vrtenje drugega sklepa, podaja slika 2.7. Vrednosti dolžin in kotov s slike, ki se ne spreminjajo so: a2 = fa + c22 = v/1552 + 188.32 = 243.89 mm d2 = \!e22 +fi = ^35.82 + 402 = 141.56 mm E) 135 8 QL = aretan^ = arctanü-^l = 73.59° t 40 », = aretan— = aretan-------- = 39.46° 2 & 188.3 (2.6) V primeru, ko je vrednost kota q2 enaka nič (glej položaj manipulatorja na sliki 2.7), znašata kot & in dolžina l2\ 2.3.1 Direktna kiiiematika 20 $m = 180" - Q2 - / % °y ay Py % O az P; 0 0 0 1 (2.27) 2.3.1 Direktna kineniatika 26 nx = cos#, cos(#2+43+g4)cosć/5 + sin#, sin#s ox = cos^sin^j -cos^j cos(^2+^3+^4) sin^5 ax = -cos^j sin(^3+^+^4) Px = u2cos^, cos#2 + o;icos<71cos(<72+#3) - d5cosq]sm(q2+q3+q4) ny = cos(q2+q3+qi)cosqssmql -cosq}smq5 oy = -cosq1cosq5~cos(q2+q3+q4)sinqisimj5 ^ ^ Lr? = -sin?, sinC^+^+c^ đ = ö2cos^sin^,+a3cos(<72+<73) sin?, -uf5sin^,sin(g2+^3+ç4) "z = -cos^5sin(ç2+^3+^4) oz = sin(q2+q3+q4) s'wq5 az = -cos(q^q^qA) Pt = dj -d5cos(q2+q^q4) -a2sinq2 - a3sin(?2+4>3) Parametri n„ o; in a{ določajo orientacijo, parametri pt pa pozicijo zadnjega koordinatnega sistema v prostoru. Orientacijski parametri so enotski vektorji vzdolž osi baznega koordinatnega sistema. Zapis orientacije zadnjega koordinatnega sistema s samo tremi parametri izvedemo z "Roll-Pitch-Yaw" {RPY) zapisom: RPY - RPYWz, ff 4) = Rot(z, tz)Rot(y, ^y)Rot(x, *J (2-29) Parametri RPY zapisa so koti zasukov okoli osi baznega koordinatnega sistema. Izračunam s štirikvadrantno arctan fukcijo so enaki: R = tpl = atan2{ny, nx) P = & = atan2{-nz,nxcos^z + nvs'm\}>z) (2.30) Y = ipx = atan2{-avcos\pz + a^sin^, slcos^ - oxsm\pz) . 2.3.2 Inverzna kinematika 27 2.3.2 Inverzna kinematika Rešitev inverznega kinematičnega problema podaja položaje motorjev glede na želen položaj vrha robota, ki ga predpišemo v baznem koordinatnem sistemu. Željena pozicija in orientacija vrha je določena s T5 matriko: Tc = n, °, «i h % °y ay Py ":: °z az h 0 0 0 1 (2.32) Orientacija vrha je lahko podana tudi z Roll-Pitch-Yaw zapisom. V tem primeru najprej preračunamo parametre RPYzapisa v orientacijske enotske vektorje nit oi in at matrike T5 po enačbi (2.32): nx = cosi/', c-os^ ny = sin^cos^ nt = -sin^ ox = cos\t sini/' sin^ - sirn^. cos\Lt 7, ki smo jih izračunali z izpeljavo Ts matrike (glej sklop enačb (2.28)), dobimo: bl = a2cosq2 + a3cos(q2 +q3) b2 = a2 sinq2 + a3 sin (q2 + q3) (2.47) Geometrijski pomen spremeljivk bs in b2 predstavlja slika 2.10. Parametra a2 in a3 na sliki sta dolžini drugega in tretjega segmenta. bi-Bzuosq, + a, cos ftb+1 J bs Slika 2.10: Geometrijski pomen spremenljivk b} in b2 Glede na kosinusni izrek lahko s slike 2.10 zapišemo: kjer je b2 = al +al - 2a,a3cos]T t2-63) Vektor hitrosti notranjih koordinat pa sestavljajo hitrosti vrtenja posameznih sklepov dq = [dq;] (2.64) Zveza med vektorjema hitrosti je določena preko Jacobijeve matrike J(q): du = J(q) dq <2-65) Algoritem izračuna Jacobijeve matrike temelji na odvajanju medsebojnih produktov transformacijskih matrik As [33]. Vsak element Jacobijeve matrike z indeksi ij opisuje doprinos hitrosti vrtenjay"-tega sklepa k hitrosti /-te zunanje koordinate: /<*) = Ufi = Jacobijeva matrika robota ASEA IRb 6 ima dimenzije 6x5. Njeno izpeljavo v simboličnem zapisu smo izvedli s programskim paketom MATHEMATICA-ROBOTICA [35]. Posamezne elemente matrike podaja sklop enačb (2.67): dus (2.66) 2.4 Sledenje trajektorije v prostoru 34 jn = -sin«, (a2 cos q2 + a3 cos (qz + q3)-d5 sin(q2 + q3 + qA)) jn = -cosqx (d5 cos (q2 + q3 + qA) + a2 sinq2 + a3 s'm(q2 + q3)) jl3 = -cosql(dscos(q2+q2+qA)+a3sm(q2+q3)) /«= ° y21 = cos«, (a2 cos?2 + aJ cos (g2 + $,) - d5 sin(q2 + q3 + q4)) fn = -smql (d5 cos (f2 + q3 + g4) + a2 sinç, + a5 sin(g2 + q3)) 4 = _sin?i (d5 cos (?2 + ?3 + tf«) + a3 sin^2 + 2" ¦¦" i-% j -2,.., (2'70) Inverzna matrika /T7!// "; dimenzije 5x5 se s pomočjo LU-razcepa izračuna kot: [ri]' -U-^L-i <2-71> Ker obsega izračun obrata trikotne matrike precej manj računskih korakov, kot v primeru kvadratne matrike smo s to metodo povečali hitrost izračuna vektorja hitrosti za približno dvakrat. Drugi del hitrostne transformacije iz kotov sklepov v kote motorjev smo izpeljali z odvajanjem enačb (2.58)-(2.62): dMl = -158 dfc, (2.72) 2.48 106 sin(q2 + 66.95°) dq2 dM2 = 2 2 (2.73) ^80377.94-69054 cos(tf2 + 66.95") 2.48 10s sin(a, + & + 50.54°) (da. + dq7) dM3 = W3 Hl ^ 2 (2.74) ^79504.58 -69054 cos(q1 + q2 + 66.95°) 2,4 Sledenje trajektorije v prostoru 35 dq-[rjYr du <2.69) Hitrostno krmiljenje v realnem času zahteva izračun vektorja hitrosti nekaj desetkrat na sekundo. Za pospešitev izračuna smo zato namesto klasičnega izračuna obrata matrike posegli po numerični metodi LU razcepa matrike [34]. Kvadratno matriko ßJ z elementi [a,-,] razcepimo na produkt dveh matrik, spodnje trikotne L in zgornje trikotne U. Algoritem za izračun elementov matrike L (/,¦,) in elementov matrike U (ui}) se glasi: uik = öu> k = 1,2,...« , ' (3-3) Predpostavka x — xc v enači (3.1) skupaj z enačbo (3.3) da enačbo dinamike pogreška sile: me + be + (k + kE) e = k(fR + kExE) - kkExR (3.4) iz katere je razvidno, da je možno tudi s primernim generiranjem referenčne trajektorije xR na vhodu vplivati na potek pogreška sile, Vpliv referenčne trajektorije xR na pogrešek sile e lahko preučimo z analizo sistema v stacionarnem stanju. Takrat je xR konstanta inLaplaceov transform enačbe (3.4) da enačbo: e(s) = —— + ^eX^ " ^^eXr (3.5) s (ms2 + bs + (k+kE)) S teoremom končne vrednosti je definiran pogrešek sile v stacionarnem stanju: ess = limese® - -j—j- [{fR + kExE) - kExR] (3.6) E ki je enak nič (ess = 0), le kadar izberemo za xR vrednost & R Ur E KE (3-7) Iz tega sklepamo, da je z vnaprejšnim zanesljivim poznavanjem položaja okolja jce in konstante elastičnosti okolja kE možno po enačbi (3.7) določiti referenčno pozicijsko trajektorijo xR, tako da je dosežena željena sila dotika. V praksi vrednosti xE in kE ponavadi nista poznani in ker je konstanta elastičnosti togih okolij kE velika, lahko pride do velikih odstopanj med želeno in dejansko silo. Zaradi tega uvedemo dodatni adaptivni krmilni algoritem, ki bo zagotavljal sledenje referenčne sile ob nepoznanih parametrih okolja. 3.2 Adaptivna krmilna shema 41 3.2 Adaptivna krmilna shema Zaradi nepoznavanja parametrov okolja uvedemo v impedančni krmilnik adaptivni algoritem računanja referenčne trajektorije xR. Uporabimo pristop modelno referenčne adaptivne regulacije (model reference adaptive control - MRAC). Ideja temelji na adaptivnem spreminjanju parametrov regulatorja v smislu prilagajanja odziva zaprtozančnega reguliranega procesa predpisanemu želenemu odzivu. Slika 3.3 opisuje osnovno strukturo modelno referenčnega adaptivnega krmilnika. Zaradi nezadostnega poznavanja procesa, ko nekateri sistemski parametri niso poznani, uvedemo dodaten regulator s spremenljivimi parametri. Parametri regulatorja se adaptirajo tako, da minimizirajo razliko e med dejanskim in želenim izhodom procesa. Adaptacija parametrov regulatorja je zagotovljena z adaptivnimi zakoni izpeljanimi s pomočjo stabilnostne teorije nelinearnih sistemov, ki so npr. optimizacija lokalnih parametrov ali Ljapunova teorija globalne stabilnosti [24]. Oblika želenega odziva zaprtozančnega procesa je definirana s prenosno funkcijo referenčnega modela. w u_ V *(/)------*• regulator referenčni model adaptivni mehanizem - ' r O sistem Slika 3.3: Struktura adaptivnega sistema vodenega s pomočjo modelno referenčne adaptivne regulacije 3.2 Adaptivna krmilna shema 42 V primeru robotskega krmiljenja sile dotika želimo vplivati na potek pogreška sile e. Zaradi tega je ta izbran za regulirano veličino oz. izhod procesa s slike 3.3. Za regulator z adaptivno nastavljani parametri, ki bo na svojem izhodu generiral pozicijsko referenčno trajektorijo xR izberemo regulator oblike: % *M * VO* +We . (3.8) Parametri f(t), kp(t) m kjt) so adaptivno nastavljivi parametri. kp(t) in kjt) sta proporcionalno in diferencialno ojačenje pogreška sile, f(t) pa pomožni signal. Z vpeljavo izraza (3.8), ki podaja izračun^ v enačbo (3.4) dobimo enačbo celotnega nastavljivega sistema v okviru modelno-referenčne adaptivne regulacije: (3.9) b+kkEkit) k+kc+kkck (t) k(fB+kcxc-kPf(t)) ë + (— ) e + (— ) e = mm m Parametre kp(î), kjt) 'mf(t) nastavljamo glede na razliko med dejanskim odzivom sistema in odzivom predpisanega referenčnega modela. Referenčni model zapišemo kot sistem drugega reda, ki daje na izhodu odziv na začetne pogoje: ë + 2tiae + u2e = 0 (3.10) kjer Je f predpisan faktor dušenja in w predpisana frekvenca nedušenega nihanja odziva pogreška v sili. Želen potek pogreška sile, ki ga določa izhod referenčnega modela em, je na ta način definiran tako, da ob dotiku pade z referenčne vrednosti sile /fl na vrednost nič po trajektoriji drugega reda določeni s parametri f in w. Zapis referenčnega modela v matrični obliki podaja enačba (3.11): K, = 0 1 -co2 -2Lti} = D e Če zapišemo posamezne koeficiente enačbe (3.9) z malimi grškimi črkami 3.2 Adaptivna krmilna shema 43 e + 2 Z odštevanjem diferencialne enačbe osnovne zanke (3.12) in diferencialne enačbe referenčnega modela (3.10) tvorimo enačbo (ë-ëj + otxe - 2faem + a2e - (3.20) (3.21) OJ Različna izbira pozitivnih konstant qu in q22 daje različne rešitve za elemente />,. Po Serajievem zgledu [26] izberemo: ?n = u2 Wn q22 = 2Çuw. - wd , (3.22) kar določi obliko matrike P: 3.2 Adaptivna krmilna shema 45 P = 21 cu w + a:2 w, 3 p d W_ w vv, (3.23) Uvedba enačbe (3.23) v enačbo (3.19) nam da funckijo Ljapunova: V = 2 füj xv e2 + &1 xv.e1 + 2xv e e + w.e2 * 3 p a pa + — [ab + yf0qf + — [-5a +y[q e]2 + — [-ôa ^y^qef To Yi T2 (3.24) Časovni odvod predlagane funkcije Ljapunova ima obliko V = 4Lwweé + 2u>2xv.te + 2xvne2 + 2weë + 2w,e'é + + l[ôb +y',q)[ob +y'oi(q)] * Tu Q P P + -[-«„, * y[qe][-K +y[±(qe)] + Ti Če v enačbi (3.25) zamenjamo i z izrazom, ki ga izpeljemo iz enačbe (3.16) (3.25) 2&0 e - ej2 e -ô e - Ô e + ô. , a. a, o„ " (3-26) ter prištejemo in odštejemo člene 2y{l'(q)2, 2yl'(qé)2, 2y1'(qe)2, dobimo: V= -2u2xve2 ~ 2y/Qq2 ~ 2y[(qe)2 - 2y'l(qe)2 + [2 w - 4^wje2 + 1 + 2(c\ + Yo?> { ft (Vr- A, A,p 72 m 72 m pW p if*.y m E i) qedt (3-37) Če konstante adaptivnega regulatorja zapišemo s Črkami a,-, &, in c„ dobimo končno obliko adaptivnih zakonov: /W=/(0) -a, \qdt-a2q 1 kp(t)=kp(0)+bl [qedt+b2qe (3-38) Konstanti wp in wrf sta pozitivna utežnostna faktorja, konstante alr blt c} in a2, b2, c2 pa pozitivna integralska in proporcionalna adaptivna ojačenja. Začetne vrednosti adaptivnih parametrov so izbrane tako, da zagotovijo primerno začetno vrednost xR v trenutku dotika s podlago. Vrednost f(0) ima ob prostem gibanju robota v prostoru (q = 0) vrednost želene, z okoljem neomejene, trajektorije gibanja. Slika 3.4 prikazuje kompletno krmilno shemo adaptivnega impedančnega krmilnika. Referenca trajektorija xR je v prostem gibanju po prostoru enaka želeni trajektoriji gibanja. Razlika med izhodom referenčnega modela em in dejanskim pogreškom e je tedaj enaka nič, ker sta oba pogreška enaka referenčni vrednosti sile. Adaptivna ojačenja zato držijo konstanto začetno vrednost. Ob dotiku izhod referenčnega modela izzveni na vrednost nič po trajektoriji drugega reda. Adaptivni krmilni zakoni (3.38) se na razliko med e in em odzovejo s spreminjanjem adaptivnih ojačenj regulatorja. Ojačenja so nastavljena tako, da sistem teži k izničenju razlike. Ker je izhod referenčnega modela takrat enak nič (em = 0), je rezultat adaptacije težnja sistema k pogrešku sile nič. 3.2 Adaptivna krmilna shema 48 ___________1 Y /~ -S X R impedančni xc pozicijsko X filter Krmiljen robot L i I > v, nu jm e adaptivni zakoni -J I i v •¦________________ i L k i 1 » m M----- t» J V ' *E 1 \- xe ~^« J w- Slika 3.4: Blokovna shema adaptivnega impedancnega regulatorja 4 Simulacija delovanja im pedane nega krmilnika 49 4 Simulacija delovanja impedančnega krmilnika Računalniška simulacija delovanja krmilnega algoritma, predstavljenega v poglavju 3, je bila opravljena s programskim paketom MATLAB-SIMULINK. Programski paket omogoča simuliranje odzivov nelinearnih zveznih in diskretnih sistemov. Delo s programskim paketom je uporabniško prijazno s preglednim sestavljanjem gradnikov sistema v grafičnem okolju. Simulacija je bila izvedena za eno prostostno stopnjo robota ASEA IRb 6. Zaradi robotove značilne mehanske konfiguracije povzroča vrtenje tretjega sklepa samo gibanje vrha vzdolž z osi Kartezijevega koordinatnega sistema z nespremenjeno orientacijo. Tako je možno preveriti delovanje krmilnika v eni prostostni stopnji samo s krmiljenjem motorja v tretjem sklepu. V shemo za simuliranje impedančnega krmiljenja po z osi Kartezijevega koordinatnega sistema so zato vključene kinematične preslikave ter realna prenosna funkcija tretjega robotskega sklepa, ki vključuje pozicijski in hitrostni regulator skupaj z motorjem. 4.1 Simulacijska shema Blokovna shema na sliki 4.1 predstavlja simulacijsko shemo adaptivno krmiljenega sistema robot-okolje za primera neoviranega in omejenega gibanja robota. Simulacijsko shemo sestavljajo bloki, ki s svojimi odzivi simulirajo odzive gradnikov impedančnega krmilnika. Bloki pravokotne oblike so funkcijski bloki z različnimi funkcijami delovanja, bloki trikotne oblike ponazarjajo ojačevanje signala s faktorjem navedenim v notranjosti bloka. 4 Si mul a cija delovanja impedančnega krmilnika 50 Slika 4.1: Simulacijska shema v okviru programskega paketa MATLAB-SIMTJLINK Signal referenčne trajektorije Xr je generiran s pomočjo proporcionalnih in integracijskih blokov v smislu adaptivnih zakonov (3.38). Ojačenja a}, b,, cl inu2, b2, c2 so pozitivna integralska in proporcionalna ojačenja adaptivnega regulatorja. Adaptacija parametrov Kp(t), Kd(t) mf(t) se izvaja na podlagi razlike q med dejanskim pogreškom sile in pogreškom referenčnega modela skupaj z razliko njunih odvodov (q =wf>(e-er!1)+wd(e-éj). Signal želene trajektorije prostega gibanja se k referenčni trajektoriji Xr prišteva v obliki signala f(0). Generator signala f(0) generira poljubno obliko trajektorije gibanja v prostoru, v dotiku robota z okoljem pa na izhodu drži položaj, v katerem se je nahajal vrh robota v trenutku dotika. Blok impedančnega filtra prevaja signal izračunane pozicije preko prenosne funkcije, 4.1 Simulacij ska shema 51 določene z impedančno enačbo (3.1). V postopku načrtovanja seje pokazalo, daje potrebno, zaradi zagotovitve enakih začetnih pogojev referenčnega modela (em = Fr in e = 0) in impedancnega filtra, ob dotiku stanje impedancnega filtra Xm postaviti na nič. Zato je blok impedancnega filtra v simulacijski shemi realiziran kot S funkcija. Uporaba te funkcije omogoča vključitev v simulacijsko shemo tudi sistemom, ki jih opišemo v tekstovnem formatu programskega paketa MATLAB. Izhod referenčnega modela določa želen potek dejanskega pogreška sile. Referenčni model je realiziran tako, da ob prostem gibanju na izhodu daje dejanski pogrešek sile, ki je takrat enak referenčni vrednosti sile. Rezultat enakih signalov e in em je ničelni signal q, zaradi česar adaptacija parametrov v tem trenutku ni aktivna. Ob dotiku model daje na izhodu odziv linearnega sistema drugega reda na začetno stanje. Takrat em izzveni z vrednosti referenčne sile na vrednost nič. Simuliranje delovanja referenčnega modela je izzvedeno z uporabo integratorjev, ki omogočajo preklapljanje stanj (glej sliko 4.2). Srednji vhod integratorja je prožilni signal, v odvisnosti od katerega integrator direktno prevaja signal s tretjega vhoda ali integrira signal s prvega vhoda. Ojačevalni bloki vsebujejo parametra linearnega sistema drugega reda, faktor dušenja L in frekvenco nedušenega nihanja w. ^^2f< ~ em out t e 1 ----------------- lnt2 em' i"-1 m Fcn1 L- —» 2 OUt_2 Fc " KUJ in_2 Fcn Slika 4.2: Simulacijska shema referenčnega modela 4.1 Simulacij ska shema 52 Pri prvem poskusu simulacije je predpostavljen idealni pozicijski regulator sklepa, kar pomeni, da je položaj mampulatorja kar enak krmilni trajektonji (Kg = XJ. V tem primeru je za prenosno funkcijo sklepa uporabljena enotska prenosna funkcija /. V nadaljni obravnavi so nato simulirane realne razmere z vpeljavo prenosne funkcije pozicijskega in hitrostnega regulatorja skupaj z motorjem. Prenosna funkcija za tretji robotski sklep je prikazana na sliki 4.3. Parametri bloka, ki simulira obnašanje hitrostnega regulatorja skupaj z motorjem, so bili identificirani z avtoregresivno metodo v okviru programskega paketa MATLAB-SIMULINK. Me Ini LM628 PD 878.6$+117779.3 s2+56.5s+796.6 1 — s Mm hI 3+ k» 2 r+f- w W out_2 Prenosna funkcija: hitrostni regulator* motor Pozicijski regulator Slika 4.3: Model tretjega sklepa robota Direktna in inverzna kinematična transformacija opravljata preračun med z koordinato Kartezijevega prostora in koordinato tretjega motorja (preko koordinate tretjega sklepa). V primeru, da so pomiki izraženi v milimetrih in zasuki v radianih, posamezne enačbe kinematičnih blokov na sliki 4.1 izgledajo takole: ¦i Xc a = arcsim—-) c 670 (4.1) Mc = ^-108994.3 cos( = 20 Hz). 5.1 Impedanč no krmiljenje po z osi 62 t [s] , [s] Slika 5.2: Oziv sile dotika ob različnih impedančnih parametrih Kvaliteto delovanja adaptivnega algoritma, ki se kaže tudi v sposobnosti sistema slediti odzivu referenčnega modela demonstrira slika 5.3. Prikazano je sledenje sile dotika odzivu referenčnega modela, ki je v gornjem primeru hitrejše v spodnjem pa počasnejše narave. t m Slika 5.3: Sledenje odzivu referenčnega modela 5.1 Im pedane no krmiljenje po z osi 63 Slika 5.4 je rezultat trka vrha robota s podlago ob podvojeni hitrosti približevanja. Robot se je približeval s hitrostjo 40 mm/s in zato povzročil občutno večji impulz sile v trenutku dotika. Namen slike je tudi pokazati sposobnost slediti referenčni sili na vhodu. Ko je bil dosežen stabilen dotik, se je referenčna sila spremenila na vrednost 5 N in nato na vrednost 12 N. i S 1 7 F [N) ........................-..... * .......................:..............i R-rM..... ......»ri............... / IV Fr-tft \ b - 6.32 i k'10 j t v j i-f......i.........................K^Ožšd.............i.........................j........................ ¦K = 10 Hz. 5.2 Im pedali ni o krmiljenje po oseh x, y in z 65 Prvi primer (slika 5.5) predstavlja nalogo robota priti v dotik z okoljem in nato pritiskati na podlago v smeri z s silo 40 N. Koje dosežen stabilen dotik in sila pritiska, vrh robota drsi po površini v smeri v. Diagrami na levi polovici slike opisujejo trajektorijo položaja vrha manipulatorja, diagrami na desni polovici pa potek sil v dotiku po posameznih koordinatah. Impedančni parametri za vsak regulator so navedeni v diagramih sil. VEKTOR POZICIJ! 750 t flTll "700 550 200 100 - i) [mm] o - -100 ........................1......................... 1------------------------------------------------T--------- \ '¦¦ 5 IO t [S] 5 10 t |Sl 1 5 i a 50 ftKTORSILE 5 IO t [S] m«/ : b~2D \ k-35 \ 15 650 Kiliran] eoo 50 40 J drsenja — referenca ' — dejanskajsfla m-1 ! b = 15 \ k=20 i 5 10 t Is] 15 Slika 5.5: Drsenje vrha robota v dotiku v y smeri Vrh robota po približevanju podlagi s hitrostjo 20 mm/s preide v dotik in nato drsi po podlagi s hitrostjo 100 mm/s. S slike je razviden pojav sile v smeri v med gibanjem, katerega vzrok je trenje med podlago in vrhom robota. 5.2 Impedančno krmiljenje po oseh x, y in z 66 Naslednja naloga robota je vzpostaviti vektor sile dotika s komponentami Fr = (10, 10, -40). Referenčni vektor sile s temi koordinatami je izbran tako, da še ne pride do drsenja v smereh x ali v, kajti v teh smereh gibanje robota ni omejeno. Rezultate prikazuje slika 5.6. VEKTOR POBOJE VEKTOR SILE 700 X* [mm] 650 35 Xy [mm] ¦35 5 IO Usi 5 10 t [S] 45 rti'1 b = 15 k=20 ------- referenca ------- dejanska sila ii [mm] 40 m-/ b*t$ k=20 ....... referenca 0 ------- dejanska sila 5 IO t [>] Slika 5.6: Vzpostavitev vektorja sile v podlago 5,2 Impedančno krmiljenje po oseh x, y in z 61 Namen slike 5.7 je pokazati, kako se impedančno krmiljeni robot prilagaja spremembam nagiba površine. Naloga robota je enaka kot v prvem primeru, le da je miza, po kateri vrh robota drsi, nagnjena pod kotom 3°. Hitrost gibanja v smeri v je 30 mm/s. S slike se vidi popravljanje položaja po z osi, vendar regulator med drsenjem, ko sila dotika linearno narašča ne zmore zagotoviti ničelnega pogreška. Referenčna sila 40 N je dosežena ob ustavitvi drsenja. 720 Xi [mm] 7QO 680 - TOO Ky[mni] — 100 VEKTOR POZIOIE -------------------!----------------~^---------- VEKTORSILB 50 m-1 b=20 0 k=35 5 10 t [S] m = 1 b~5 j---~ ~^~^-i_ ""* 5 10 t [S] Slika 5.7: Drsenje vrha robota v dotiku v y smeri po nagnjeni površini Slika na naslednji strani (slika 5.8) podaja odzive v primeru drsenja robota po trajektoriji, ki v ravnini xy opisuje krožnico. Površina, po kateri vrh robota drsi, je nagnjena pod kotom 3°. Najboljše odzive sistema pri tej nalogi smo dosegli z nastavitvijo adaptivnih parametrov: a} = 0.041, a2 = 0.0041, bs = 10~8, b2 = IO8, c} = IO10, c2 = 10'10, wp = 5, wd = 2 in z impedančnimi parametri navedenimi v diagramih sile. Na pojav sil v smereh x iny zaradi trenja se krmilni sistem, da bi zagotovil silo nič, odziva s spremembo pozicije tudi v teh smereh. Rezultat spreminjanja položaja je trajektorija gibanja v ravnini xy, ki izgleda, kot to prikazuje slika 5.9. 5.2 Impedančno krmiljenje po oseh x, y in z 68 VEKTOR posas VEKTOR SILE t [s] 100 - 100 - 70 R...........1......^....................- b-70 ; ...... referenca k-M : — dejanska sila 5 t lil 10 Slika 5.8: Opisovanje krožnice v dotiku na nagnjeni površini 5» 520 WO MO SSO 300 (2U S40 «SO 680 Slika 5.9: Trajektorija gibanja vrha v dotiku v ravnini xy 5.2 Impedančno krmiljenje po oseh x, y in z 69 Prikazani primeri obnašanja sistema krmiljenega z adaptivnim impedančim krmilnikom so bili vsi izvedeni na trdi podlagi, kot primer najzahtevnejšega krmiljenja sile z uporabo pozicijskega vodenja. Na trdi podlagi namreč zelo majhni pozicijski odkloni povzročijo velika nihanja sile dotika. Izvajanje sile dotika na mehkejših okoljih je manj problematično in z večjimi vrednostmi parametrov adaptivnega regulatorja se sistem lahko adaptira tudi na večje spremembe v položaju okolja. V primeru trde podlage pa povečanje parametrov v želji povečanja adaptivnosti na spremembe okolja lahko povzroči oscilatoren dotik. Za ocenitev kvalitete delovanja adaptivnega impedančnega regulatorja lahko pokažemo obnašanje robota v dotiku, kadar je ta krmiljen z navadnim PID regulatorjem sile. Takšno krmiljenje robota v dotiku je bilo realizirano na robotu ASEA glede na objavo avtorjev Degoulangeja in Daucheza [43]. PID regulator zadovoljivo opravlja regulacijo sile na mehkejših podlagah in tudi na trdi podlagi v primeru majhnih referenčnih sil (do 10 N). Neustrezen odziv sile za primer dotika s trdo podlago ob referenčni sili 40 N prikazuje slika 5.10. Sila dotika, ki ob dotiku močno preseže referenčno vrednost, tudi ob vdrževanju dotika niha okoli referenčne vrednosti. tac -Fr [N] na H _: ¦4-n SO O Slika 5.10: Oziv sile dotika robota krmiljenega s PID regulatorjem sile ti /uključi'k 70 6 Zaključek V delu je obravnavano vodenje industrijskih robotskih mehanizmov v dotiku z okoljem. Pri obravnavi smo se omejili na delo z roboti poganjanimi z električnimi motorji preko mehanskih prenosov. Preizkus lastnosti predlaganega krmilnega algoritma je bil izveden na industrijskem robotu ASEA IRB 6. Specifične lastnosti krmilnikov industrijskih robotov, ki ne omogočajo dostopa do neposrednega krmiljenja momentov motorjev, nepoznavanje parametrov dinamičnega modela robota in časovno zamudno računanje momentov, narekujejo izvedbo krmiljenja sile dotika preko pozicijskega vodenja robota. Krmilnik sile, ki je osnovan na pozicijskem vodenju je zgrajen tako, da s povratno zanko sile obkroža pozicijski regulator, kateremu glede na sile v dotiku generira referenčno pozicijo. Na ta način zaradi krmiljenja sile ni potrebno poseganje v strojno opremo obstoječega pozicijskega krmilnika, kar je zelo primerno za industrijske aplikacije vodenja po sili. Sodobni robotski krmilniki izvajajo pozicijsko vodenje robota v zunanjih koordinatah. Za sledenje trajektorije v prostoru uporabljajo algoritem hitrostnega krmiljenja. Krmilnik robota ASEA IRb 6 v originalni izvedbi omogoča samo vodenje v koordinatah sklepov, zaradi česar je bila opravljena predelava krmilnika. Predelava je obsegala prilagoditev strojne opreme in določitev kinematicnega modela robota. Nov krmilnik je fizično zgrajen na osnovi zmogljivega osebnega računalnika z dodatnimi samostojnimi moduli pozicijske regulacije motorjev. Poleg izvajanja algoritma sledenja trajektorije je procesor osebnega računalnika sposoben izvajati tudi druge algoritme. S tem je zgrajen sistem, ki omogoča eksperimentalno delo pri razvoju algoritmov krmiljenja sile dotika. Za zunanjo regulacijsko zanko sile smo predlagali krmilno shemo impedančnega krmiljenja. Omejili smo se na dotik s togimi predmeti, ki največkrat pride v poštev pri industrijskih aplikacijah. Impedančni krmilnik sile se v takšnem primeru obnaša kot eksplicitni krmilnik sile, kar omogoča uvedbo referenčnega signala po sili. Za zagotavljanje ničelnega 6 Zaključek 71 pogreška v sili ob neznanih parametrih okolja uvedemo adaptivni regulator, ki na podlagi adaptivnih zakonov spreminja parametre v smislu prilagajanja odziva sistema referenčnemu odzivu. Uporabljena je teorija modelno referenčne adaptivne regulacije naslanjajoč se na Ljapunovo teorijo. Na ta način je zagotovljena asimptoticna stabilnost sistema. Adaptivni zakoni so izpeljani ob predpostavki zanemarljive dinamike robota. Delovanje predlagane krmilne sheme smo najprej preverili s pomočjo simuliranega krmiljenja ene prostostne stopnje. Namesto zanemarjene robotske dinamike smo v simulacijsko shemo uvedli približen model prenosne funkcije tretjega sklepa robota. Implementacija impedančnega krmilnika na robom je bila izvedena v dveh korakih. Najprej je bil implementiran impendančni krmilnik za eno stopnjo prostosto. Krmilili smo tretji sklep robota z uporabo pozicijskega vodenja v pozicijskem načinu delovanja. V tem primeru je bila hitrost odzivov sistema omejena z notranjim generatorjem trapeznega profila hitrosti pozicijskih regulatorjev. Z realizacijo treh impedancnih krmilnikov po posameznih oseh Kartezijevega koordinatnega sistema smo preverili obnašanje sistema v prostoru. Sledenje trajektorije v prostoru je bilo izvedeno s hitrostnim krmiljenjem na osnovi inverzne Jacobijeve transformacije. Rezultati testiranja krmilnega algoritma kažejo, da smo dosegli zadovoljivo obnašanje robota v dotiku z okolico. Robot je sposoben izvajati referenčno silo na podlago in se istočasno gibati. V primerjavi s PID regulatorjem sile v primeru kontakta s togimi predmeti naš impedančni krmilnik deluje neprimerno boljše. Kljub zanemaritvi dinamike robota, upogibanja robotskih segmentov, elastičnosti sklepov ter mrtvih hodov reduktorjev v modelu sistema je adaptivnost sistema sposobna odpraviti naštete nelinearnosti pri reguliranju sile. Mehanske lastnosti vrha robota, vztrajnost, dušenje in togost, so programsko nastavljivi parametri in jih je možno spreminjati tudi med gibanjem v odvisnosti od zadane naloge. Ugotovili smo, da je obnašanje sistema močno odvisno od lastnosti podrejenega pozicijskega regulatorja. Parametri tega regulatorja ne smejo vsebovati integralnega člena. Integralni člen namreč integrira pogrešek pozicije, zaradi katerega se sploh izvaja sila dotika. Na obnašanje sistema vplivajo tudi nastavitve ojačenj adaptivnega regulatorja. Nastavitev ojačenj ni enkratna ampak jo je potrebno spreminjati z zahtevami naloge v dotiku. Naloga drsenja po nagnjeni togi površini npr. zahteva drugačno nastavitev adaptivnega regulatorja, kot naloga prilagajanja manj togi ali ravni podlagi. Realizacija referenčnega modela na način, da ob dotiku njegov odziv izzveni z 6 Zaključek 72 referenčne vrednosti sile na vrednost nič sicer vnaša neželjeno preklapljanje med načini delovanja. Vendar smo se na ta način približali tudi reševanju problema prehodnega pojava ob dotiku. Drugi avtorji ta problem običajno rešujejo s preklapljanjem parametrov regulatorja. Ker je problem trka obsežen, ga nismo rešili v celoti in smo zato omejeni pri hitrosti približevanja proti podlagi. Hitrost približevanja mora biti nizka, kar pa ni problem zagotoviti tudi v dejanskih aplikacijah. V nadaljnem razvoju impedančnega krmiljenja nameravamo uporabiti izkušnje iz tega dela pri konkretnih nalogah vodenja robota v dotiku z okoljem. Z impedančno krmiljenim robotom ASEA nameravamo izvajati brušenje mehanskih delov ter privijanje lesnih vijakov. Pri konkretnejših nalogah bo tudi mogoče narediti podrobnejšo analizo izbire primernih impedančnih parametrov za posamezne faze naloge [42]. Za izboljšanje odziva pri trku robota s podlago, ko adaptivni regulator zaradi impulza sile močno reagira tako, da vrh robota izgubi dotik, predlagamo uvedbo dodatnega signala v povratno zanko sile. Dodatni signal, ki bi predstavljal identificirani impulz sile ob dotiku, bi odštevali od signala dejanske sile in na ta način zagotovili, da adaptivni regulator ne bi reagiral na prehodni pojav trka. 7 Literatura 73 7 Literatura [I] D.E. Whitney. Historical Perspective and State of the Art in Robot Force Control. The International Journal of Robotics Research, Vol. 6, No. 1, pp. 3-14, 1987. [2] Y.H. Chen, S. Pandey. Robust Hybrid Control of Robot Manipulators. Proceedings 1989 IEEE International Conference on Robotics and Automation, Vol. 1, pp. 236-241, Scottsdale, 1989. [3] O. Khatib. The Operational Space Framework. JSME International Journal, Series C, Vol. 36, No. 3, pp. 277-287, 1993. [4] M.T. Mason. Compliance and Force Control for Computer Controlled Manipulators. IEEE Transactions on Systems, Man, and Cybernetics, Vol. 11, No. 6, 1981. [5] A. Sharon, N. Hogan, D.E. Hardt. Controller Design in the Physical Domain (Application to Robot Impedance Control). Proceedings 1989 IEEE International Conference on Robotics and Automation, Vol. 1, pp. 552-559, Scottsdale, 1989. [6] H. Asada, J.J.E. Slotine. Robot analysis and control. John Wiley and sons, New York, 1986. [7] N. Hogan. Impedance Control: An Approach to Manipulation, Parts I-III. ASME Journal of Dynamic Systems, Measurement and Control, Vol. 107, No. 1, pp. 1-24, 1985. [8] T. Bajd, A. Kralj. Robotika. Fakulteta za elektrotehniko in računalništvo Ljubljana, Ljubljana, 1991. [9] N. Hogan. Stable Execution of Contact Tasks Using Impedance Control. Proceedings 1987 IEEE International Conference on Robotics and Automation, pp. 1047-1054, Raleigh, 1987. [10] F.A. Mussa-Ivaldi, N. Hogan. Integrable Solutions of Kinematic Redundancy via Impedance Control. The International Journal of Robotics Research, Vol. 10, No. 5, October 1991. [II] S. Tachi, T. Sakaki, H. Arai, S. Nishizava, J.F. Pelaez-Polo. Impedance control of a direct-drive manipulator without using force sensors. Advanced Robotics, Vol. 5, No. 2, pp. 183-205, 1991. 7 Literatura 74 [12] R. Kelly, R. Carelli, M. Amestegui, R. Ortega. On Adaptive Control of Robot Manipulators. Proceedings 1989 IEEE International Conference on Robotics and Automation, Vol. 1, pp. 572-577, Scottsdale, 1989. [13] W.S. Lu, Q.H. Meng. Impedance control with adaptation for robotic manipulations. IEEE Transaction on Robot Automation, Vol.7, No.3, pp. 408-415, 1991. [14] S.K. Singh. Adaptive Control of Manipulator Interaction With Environment: Theory and Experiments. Proceedings 1993 IEEE International Conference on Robotics and Automation, Vol. 3, pp. 1001-1006, Atlanta, 1993. [15] Z. Lu, A.A. Goldenberg. Implementation of robust impedance and force control. Journal of Intelligent and Robotic Systems, Vol. 6, No. 2-3, pp. 145-163, 1992. [16] D.M. Dawson, F.L. Lewis, J.F. Dorsey. Robust Force Control of a Robot Manipulator. The International Journal of Robotics Research, Vol. 11, No. 4, pp. 312-319, 1992. [17] R.J. Anderson, M.W. Spong. Hybrid impedance control of robotic manipulators. IEEE Transactions on Robotics and Automation, Vol. 4, No. 5, pp. 549-556, 1988. [18] M. Palletier, M. Doyon. On the Implementation and Performance of Impedance Control on Position Controlled Robots. Proceedings 1994 IEEE International Conference on Robotics and Automation, Vol. 2, pp. 1228-1233, San Diego, 1994. [19] C. R. Carignan. Manipulator Impedance Accuracy in Position-Based Impedance Control Implementations. Proceedings 1994 IEEE International Conference on Robotics and Automation, Vol. 2, pp. 1216-1221, San Diego, 1994. [20] R. Colbaugh, H. Seraji, K. Glass. Direct Adaptive Impedance Control of Robot Manipulators. Journal of Robotic Systems, Vol. 10, No. 2, pp. 217-248, 1993. [21] R. Volpe, P. Khosla. The Equivalence of Second Order Impedance Control and Proportional Gain Explicit Force Control: Theory and Experiments. Proceedings of The Second International Symposium on Experimental Robotics, Toulouse, 1991. [22] R. Volpe, P. Khosla. A Theoretical and Experimental Investigation of Explicit Force Control Strategies for Manipulators. IEEE Transactions on Automatic Control, Vol. 38, No. 11, pp. 1634-1649, 1988. [23] H. Seraji, R. Colbaugh. Force tracking in impedance control. Proceedings 1993 IEEE International Conference on Robotics and Automation, Vol. 2, pp. 499-506, Atlanta, 1993. [24] R. Isennann, K.H. Lachmann, D. Matko, Adaptive control systems. Prentice Hall, New York, 1992. 7 Literatura 75 [25] L. Gyergyek. Teorija vezij in sistemov. Fakulteta za elektrotehniko in računalništvo Ljubljana, Ljubljana, 1987. [26] H. Seraji. Decentralized Adaptive Control of Manipulators: Theory, Simulation, and Experimentation. IEEE Transactions on Robotics and Automation, Vol. 5, No. 2, pp. 183-201, 1989. [27] M. Thomas. Dynamic characteristics of tracking converters. Powerconvers. Intell. Motion, vol. 14, no. 8, pp. 40-42, August 1988. [28] D.C. Hanselman. Resolver signal requirements for high accuracy resolver-to-digital conversion. IEEE Transactions on Industrial Electronics, vol. 37, no. 6, pp. 556-561, December 1990. [29] DC. Hanselman. Techniques for improving resolver-to-digital conversion accuracy. IEEE Transactions on Industrial Electronics, vol. 38, no. 6, pp. 501-504, December 1991. [30] J. Spetzer. A sinchro/resolver tutorial. Powerconvers. Intell. Motion, vol. 15, no. 11, pp. 24-29, November 1989. [31] S.D. Eppinger, W.P. Seering. Three Dynamic Problems in Robot Force Control. IEEE Transactions on Robotics and Automation, Vol. 8, No. 6, pp. 751-758, 1992. [32] K.S. Fu, R.C. Gonzales, C.S.G. Lee. Robotics: Control, Sensing, Vision, and Intelligence. McGraw-Hill Book Company, New York, 1987. [33] R.J. Schilling. Fundamentals of Robotics: Analysis and Control. Prentice-Hall International, Inc., Englewood Cliffs, 1990. [34] G. Tomsic. Izbrana poglavja iz matematike. Fakulteta za elektrotehniko in računalništvo Ljubljana, Ljubljana, 1994. [35] J.F. Nethery, M.W. Spong. Robotica: A Mathematica Package for Robot Analysis. IEEE Robotics & Automation Magazine, Vol. 1, No. 1, pp. 13-20, March 1994. [36] R. Volpe, P. Khosla. A Theoretical and Experimental Investigation of Impact Control for Manipulators. The International Journal of Robotics Research, Vol. 12, No. 4, pp. 351-365, 1993. [37] J.M. Hyde, M.R. Cutkosky. Controlling Contact Transition. IEEE Control Systems, Vol. 14, No. 1, February 1994. [38] D.Guickin, J. Melcher, R. Wimmel. Active Impedance Control in Mechanical Structures. Acustica, Vol. 69, No. 2, pp. 39-52, 1989. 7 Literatura 76 [39] H. Kazerooni, Automated Robotic Deburnng Using Impedance Control. IEEE Control Systems Magazine, Vol. 8, No. 1, pp. 21-25, 1988. [40] R. Vossoughi, M. Donath. Using Impedance Controlled Robots for Simulating Manipulation Tasks Occurring in a Gravityless Environment. Proceedings 1990 IEEE International Conference on Robotics and Automation, Vol. 1, pp. 62-67, Cincinnati, 1990. [41] S.A. Scheider, R.H. Cannon. Object Impedance Control for Cooperative Manipulation: Theory and Experimental Results. IEEE Transactions on Robotics and Automation, Vol. 8, No. 3, pp. 383-394, 1992. [42] M. Pelletier, L.K. Daneshmend. Synthesis of Robust Compliant Motions Based od Impedance Models. Proceedings 1994 IEEE International Conference on Robotics and Automation, Vol. 4, pp. 2713-2718, San Diego, 1994. [43] E. Dégoulange, P. Dauchez. External Force Control of an Industrial PUMA 560 Robot. Journal of Robotic Systems, Vol. 11, No. 6, pp. 523-540, 1994. [44] D. Matko, B. Zupančič, R. Karba. Simulation and Modelling of Continuous Systems: A Case Study Approach. Prentice Hall International, Hertfordshire, 1992. [45J N. Hogan. On the Stability of Manipulators Performing Contact Tasks. IEEE Journal of Robotics and Automation, Vol. 4, No. 6, pp. 677-685, 1988. [46] F.L. Lewis, CT. Abdallah, D.M. Dawson. Control of Robot Manipulators. Macmillan Publishing Company, New York, 1993. [47] H. Seraji. Adaptive Admittance Control: An Approach to Explicit Force Control in Compliant Motion. Proceedings 1994 IEEE International Conference on Robotics and Automation, Vol. 4, pp. 2705-2712, San Diego, 1994. [48] R. Kamnik, D. Matko, T. Bajd. Robotski adaptivni impedančni regulator. Zbornik tretje Elektrotehniške in računalniške konference ERK'94, Vol. B, pp. 217-220, Portorož, 1994. [49] R. Kamnik, D. Matko, T. Bajd. Adaptive Impedance Control of an Industrial ASEA IRb 6 Robot. Sprejeto za predstavitev na 26th International Symposium on Industrial Robots, Singapore, October 1995. Izjavljam, da sem magistrsko delo samostojno izdelal pod vodstvom mentorja prof.dr. Tadeja Bajda in komentorja prof.dr. Draga Matka. Izkazano pomoč drugih sodelavcev sem v celoti navedel v zahvali.