Eksperimentalni haptični vmesnik za visoko kvalitetno upodabljanje haptičnih kod Mitja Golob, Aleš Hace Fakulteta za elektrotehniko, računalništvo in informatiko, Univerza v Mariboru, Slovenija E-pošta: mitja.golob@um.si, ales.hace@um.si The Experimental Haptic Interface for High Quality Rendering of Haptic Codes This paper describes the design of a novel, highperformance experimental linear haptic interface. The paper shortly presents the whole system. The main purpose of this paper is to show a comparison between conventional Proportional Integral (PI) force control and Sliding Mode Control (SMC) for the haptic interface. The experimental results confirm the validity of the proposed haptic interface design with the advanced SMC algorithm. 1 Uvod Haptični vmesnik je naprava, ki človeku omogoča interakcijo z navideznimi ali fizično oddaljenimi okolji. V splošnem so lahko haptični vmesniki vodeni kot impedančno ali admitančno. V admitančnem modelu haptične interakcije haptični vmesnik generira premike kot odziv na izmerjeno interakcijsko silo. V impedančnem modelu haptične interakcije haptični vmesnik generira sile kot odziv na vsiljen položaj oz. hitrost. Impedančna regulacijska shema, ki je pogosto uporabljena za vodenje vmesnikov človek-stroj zahteva poznavanje mehanske dinamike vmesnika vključno s trenjem. Slednje je velikokrat zelo težko točno modelirati, čeprav ga je po drugi strani treba za kvalitetno realizacijo želenega obnašanja popolnoma kompenzirati, kar moramo zagotoviti z ustrezno načrtovano regulacijsko shemo. Najbolj preprost pristop za zagotovitev ustreznega odziva haptičnega vmesnika je primer odprtozančnega vodenja. V tem primeru v regulacijsko shemo vodenja ne vključujemo povratne informacije o interakcijski sili. Natančnost vodenja sile je odvisna predvsem od dinamike haptičnega vmesnika, ki mora biti zanemarljiva v primerjavi z dinamiko modeliranega okolja. V tem primeru se trenje, gravitacija, vztrajnostne sile, modelne netočnosti in napake na pogonih neposredno prištevajo k silam, ki jih človek zaznava. Prednost takšnega pristopa je, da ni potreben senzor sile. Drugi pristop za zagotovitev ustrezne povratne sile je primer zaprtozančnega vodenja. V tem primeru v regulacijsko shemo vodenja vodi povratna informacija o sili. Bistvena prednost pri tem je možnost odprave sistemskih motenj, kar pomeni boljšo upodobitev povratne haptične informacije [1]. Poleg vodenja pa ima pomembno vlogo na kvaliteto haptičnega prikaza tudi strojna oprema. Treba je upoštevati, da lastna dinamika haptičnega vmesnika povzroča popačenje, kar občuti tudi uporabnik. To pomeni, da je treba zagotoviti haptični vmesnik z minimalno lastno impedanco, ob tem pa je treba zagotoviti še čim večjo pasovno širino, togost, ločljivost in ne nazadnje tudi sposobnost generiranja sil, ki odločilno vplivajo na kvaliteto haptičnega prikaza [2] [3]. V nadaljevanju članka bomo tako predstavili eksperimentalni linearni haptični vmesnik, ki omogoča zelo kakovostno upodabljanje različnih haptičnih kod. Predstavili bomo posamezne gradnike kot celotno arhitekturo sistema vključno z vodenjem sistema. Na koncu bodo še predstavljeni eksperimentalni rezultati. 2 Opis haptičnega vmesnika Haptični vmesnik v splošnem omogoča komunikacijo človek-stroj oz. navidezno okolje. Sistem lahko predstavimo s sliko 1, pri čemer pomenijo in f.) položaj in silo človeka, haptičnega mehanizma in navideznega okolja. Haptični vmesnik torej z velikostjo in obliko povratne sile pri premikanju ročice uporabniku sporoča različne informacije v obliki t. i. haptičnih kod. Sistem linearnega haptičnega vmesnika sestavljajo: krmilnik, mehanizem s servo pogonom in ročica. Haptični vmesnik f Človek Mehanizem s pogonom fm Krmilnik _ f Navidezno okolje V J Slika 1: Sistem haptičnega vmesnika. 2.1 Haptični mehanizem Haptični mehanizem z linearnim motorjem je prikazan na sliki 2. Linearni motor je vgrajen v modul, ki se sestoji iz kompaktnega ohišja, palice iz trajnih magnetov, ki je vpeta v ohišje modula, ter iz gibalnega dela linearnega motorja, tj. ohišje z navitjem, ki je povezano na voziček linearnega vodila. Vodilo slednjega pa je povezano na ohišje linearnega pogonskega modula. Na ohišje motorja je pritrjena ročica, s katero lahko uporabnik opravlja premike, pri čemer se generirajo predprogramirane haptične kode. Ročica Senzor Palica Iz trajnlh m magnetov \ ^ l Ohišje Digitalni modula dajalnik Vodilo in voziček Linearni motor Slika 2: Zgradba linearnega haptičnega vmesnika. Vezna palica, Pospeškometers Gibalni del ERK'2018, Portorož, 147-327 324 Na linearnem pogonu haptičnega vmesnika so nameščeni senzorji za položaj (digitalni dajalnik), pospeškometer in senzor sile. Vgradnja senzorja sile predstavlja precejšen izziv, saj je treba poskrbeti za ustrezno mehansko zaščito pred preobremenjevanjem (slika 3). Apliciranih sil uporabnika namreč ni mogoče omejevati. Mehanska Ročica Senzor Vezna 7™ \ "V pa\ca U _ ► VlLO ;i Voziček / Vodilo Podatkovni zbiralnik | Uporabniški vmesnik Pospeškometer [""Dajalnik položaja | Senzor sile | >| ' |- SPIA | SCIB I PSU _ DSP |PWMA i^J F28335 E^EP I Procesor ADC ' 1 JTAG I DIO Haptični krmilnik X Napajalna enota AC/DC Servo Motor „ gonilnik O- i i Tipke, J' ' Končna stikala 3 Vodenje in zajem podatkov 3.1 Impedančni vmesnik Slika 5 prikazuje shemo vodenja haptičnega vmesnika. V našem primeru enoprostostni linearni haptični vmesnik načrtujemo tako, da izkazuje impedančno obnašanje. To pomeni, da mora zagotavljati želeno impedanco, ki jo človek zaznava, ko premika ročico haptičnega vmesnika. ^^^ Vodenje 77777777777777777777777777777777777777777777777777777777777777777 Motor Slika 3: Vgradnja in izvedba mehanske zaščite senzorja sile. Senzor sile je na eni strani togo povezan na ohišje motorja, medtem ko je na drugi strani z vezno palico, preko katere se prenaša aplicirana sila uporabnika, povezan na ročico. Ročica pa je togo povezana na precizno linearno vodilo oz. voziček. Precizno linearno vodilo je namenjeno zgolj kompenzaciji vpliva tistih sil in navorov, ki ne delujejo v delovni smeri. V delovni smeri je senzor sile zaščiten z mehansko zaporo, ki nudi obojestransko mehansko zaščito senzorja sile pred preobremenitvijo. Mehanska zapora namreč omejuje pomik vozička in s tem tudi odmik senzorja sile (odmik senzorja sile je proporcionalen pomiku vozička). Največji dovoljen odmik senzorja sile znaša 0.16 mm. 2.2 Haptični krmilnik Haptični mehanizem X Človek Navidezno okolje Haptični krmilnik sestavljajo digitalni signalni procesor TMS320F28335 družine Delfino, vhodno-izhodni in komunikacijski vmesniki ter napajalna enota [4]. Haptični krmilnik omogoča priklop digitalnih dajalnikov položaja, analognih in logičnih signalov, ter vključuje komunikacijske vmesnike USB, UART (RS232) in CAN, ki omogočajo povezavo z zunanjimi napravami. Logični signali, vključno z izhodi PWM, dopuščajo široko območje priključenih napetosti. Funkcionalna razširitev krmilnika je možna z notranjimi kom. vmesniki po protokolih I2C, SPI ali SCI. Slika 4: Blokovna shema haptičnega krmilnika s priključenimi zunanjimi enotami. Blokovna shema na sliki 4 predstavlja haptični krmilnik s priključenimi zunanjimi enotami. Strojno opremo za zajem podatkov sestavljajo digitalni dajalnik položaja, digitalni pospeškometer in senzor sile z uporovnimi merilnimi lističi, medtem ko za sprotni prikaz oz. shranjevanje podatkov služita uporabniški vmesnik oz. podatkovni zbiralnik. Na PWM izhodno enoto je priključen servo gonilnik z linearnim motorjem. Slika 5: Blokovna shema vodenja haptičnega vmesnika. V primeru, ko človek izvaja premik haptičnega vmesnika, na ta način posledično tudi aplicira določeno silo na ročico haptičnega vmesnika. Tipični vhodi v impedančna navidezna okolja so položaj x, hitrost x in pospešek .v haptičnega vmesnika ter izmerjena sila fh. Silafe, kot izhod navideznega okolja predstavlja referenčno silo za izbran algoritem vodenja, ki mora zagotoviti realizacijo želene impedance haptičnega vmesnika. V tem članku bomo podali primerjavo dveh zaprtozančnih sistemov vodenja, in sicer: a.) klasična PI regulacije sile [5], b.) regulacijska shema izpeljana po postopku vodenja v drsnem režimu (SMC) [6]. Za takšno (robustno) vodenje je značilna visoka robustnost na motnje sistema (kompenzira nemodelirano dinamiko, kot je trenje, modelne netočnosti, dinamike višjega reda itd.). Pri uporabi klasične PI regulacije sile pogrešek sil fe in fh predstavlja vhod v regulator sile. V primeru uporabe robustne sheme vodenja pa je za estimacijo in kompenzacijo motnje potrebna še informacija o dejanski hitrosti x. Izhod iz algoritma vodenja pa je regulacijska silafc, ki jo mora realizirati linearni pogon. 3.2 Zajem podatkov Blokovna shema na sliki 6 predstavlja strukturo krmilja linearnega haptičnega vmesnika. Pri tem strojno opremo predstavljajo haptični mehanizem, haptični krmilnik, servo gonilnik, uporabniški vmesnik (osebni računalnik) ter podatkovni zbiralnik (ang. Data Logger). Algoritem vodenja je v celoti implementiran na haptičnem krmilniku z DSP kontrolno enoto. Sprotno spremljanje in nadzor delovanja haptičnega vmesnika pa poteka v celoti preko uporabniškega vmesnika, ki se izvaja na osebnem računalniku (PC). Zaradi dokaj počasne komunikacije z uporabniškim vmesnikom (100 ms) in omejene količine pomnilnika RAM (68 kB) na haptičnem krmilniku oz. DSP kontrolni enoti smo dodali še enoto za zbiranje podatkov (Nexys 2 Digilent s FPGA vezjem). Slednja ima na razpolago 16 MB pomnilnika RAM, v katerega lahko shranjujemo podatke. Te podatke lahko nato na zahtevo prenesemo na osebni računalnik preko vmesnika USB. + 148 Inkr. dajalnik Pospeškometer Senzor sile Haptični mehanizem Linearni servo motor Uporabniški vmesnik (PC) Podatkovni zbiralnik Položaj, pospešek, sila r Algoritem gonilnik CRef. tok vodenja ^-' Haptične kode Haptični krmilnik Slika 6: Struktura krmilja linearnega haptičnega vmesnika. Merilni sistem se sestoji iz naslednjih sklopov: - Digitalni inkrementalni dajalnik omogoča natančno meritev položaja ročice haptičnega vmesnika. Optični dajalnik omogoča ločljivost 0.1 fim. Za estimacijo hitrosti je uporabljena MT metoda, ki omogoča natančno merjenje tudi nizkih hitrosti v razredu nižjem, kot je en pulz na tipalni interval. - Digitalni MEMS 3-osni senzor pospeška omogoča meritev pospeška ročice haptičnega vmesnika. Merimo pospeške v območju ±2 g z 10-bitno natančnostjo in frekvenco zajemanja 1600 Hz. - Senzor sile z uporovnimi merilnimi lističi omogoča meritev tako tlačnih kot nateznih sil v območju ±55 N. Izhodni napetostni signal je ojačan in nato pretvorjen v digitalno obliko z 12-bitnim A/D pretvornikom. 4 Haptično prikazovanje V predhodnih poglavjih smo pokazali tako posamezne gradnike kot celotno arhitekturo sistema haptičnega vmesnika. Pomemben preizkus haptičnega vmesnika in algoritmov vodenja pa predstavlja, kako realistično lahko prikažemo različne haptične kode. Treba vedeti, da pasovna širina, togost, ločljivost in generirana sila skupaj odločilno vplivajo na kvaliteto haptičnega prikaza. V nadaljevanju bomo zato, predhodno predstavljen sistem ovrednotili s pomočjo namensko izbranih modelov haptičnih kod: masa-dušilnik-vzmet in trenje. a) b) hAAA/H -dx Drsenje dx Drsenje Viskozno trenje impedančno kavzalnost, slednje zasnovati tako, da je sila trenja aktivna zgolj v fazi premika haptičnega vmesnika [7]. Slednje lahko dosežemo z uporabo navidezne vzmeti v modelu trenja. V primeru majhnih pomikov od območja lepenja xi, se generira sila trenja Ft ~ -kt (x-x), ki je proporcionalna dejanskemu odmiku x. 5 Eksperimentalni sistem Linearni motor, ki je vgrajen v haptični vmesnik omogoča visoko dinamiko in nima samodržne sile (ang. Cogging Force). Poganja ga zanj prirejen servo gonilnik, ki deluje v tokovnem načinu. Programska oprema haptičnega krmilnika s frekvenco izvajanja regulacijske zanke 10 kHz je bila zasnovana v MATLAB/Simulinku. 5.1 Eksperimentalni rezultati Izvedeni eksperimenti so razdeljeni v dva sklopa. Prvi sklop rezultatov predstavlja emulacijo navideznega dušenja in togosti (slika 8 in 9) ter emulacijo navidezne mase (slika 10 in 11). Drugi sklop rezultatov pa predstavlja emulacijo trenja (slika 12 in 13). Pri vsakem eksperimentu so podani rezultati za primer uporabe tako klasičnega PI vodenja (slika 8-13a), kot za primer uporabe naprednega robustnega vodenja (slika 8-13b). Na slikah 8-13 so prikazane: dejanska hitrost (rdeča krivulja) in dejanski pospešek (zelena krivulja) na zgornjem grafu, referenčna sila (rdeča krivulja) in dejanska sila (zelena krivulja) na sredinskem grafu ter razlika med referenčno in dejansko silo - pogrešek sile (rdeča krivulja) na spodnjem grafu. Striebeckov efekt^^iepenje Slika 7: Modeli haptičnih kod: a) model masa-dušilnik-vzmet in b) Karnoppov model trenja. - Model masa-dušilnik-vzmet na sliki 7a predstavlja pogost način preizkusa kvalitete haptičnega prikaza. Model je podan s F = mx + bx + kx, pri čemer so m, b, k, x masa, koef. viskoznega trenja in togosti ter položaj [3]. - Model trenja. Različni modeli trenja se razlikujejo po načinu opisa, kompleksnosti, natančnosti, itd. V našem primeru smo uporabili Karnoppov model trenja, ki je prikazan na sliki 7b in vključuje tako statično trenje Fs kot dinamično trenje Fc, odvisno od hitrosti i-. Prednost uporabe Karnoppovega modela trenja je v vpeljavi umetno vsiljenega intervala drsne hitrosti .t = 0 pri absolutni vrednosti drsne hitrosti manjše od dx (na ta način obidemo težavo nezveznosti in singularnosti). V praksi pa je potrebno v zahtevi, da trenje izkazuje Slika 8: Emulacija dušenja in togosti -(haptični parametri: m = 0 kg, b = 10 Ns/m a) IS b) J primer 1 k = 50 N/m). i Slika 9: Emulacija dušenja in togosti - primer 2 (haptični parametri: m = 0 kg, b = 10 Ns/m, k = 300 N/m). Motor U Hall U> F. F F m -F 149 Slika 10: Emulacija mase - primer 1 (haptični parametri: m = 1 kg, b = 0 Ns/m, k = 0 N/m). Slika 11: Emulacija mase - primer 2 (haptični parametri: m = 5 kg, b = 0 Ns/m, k = 0 N/m). a) Z0123466789 10 Slika 12: Emulacija trenja - primer 1 (haptični parametri: Fs= 5 N,Fc = 3 N,B = 5 Ns/m, dx = 5 mm/s). Slika 13: Emulacija trenja - primer 2 (haptični parametri: Fs = 10N,Fc = 8N,B = 5Ns/m. dx = 5 mm/s). 150 Pri emulaciji dušenja in togosti lahko vidimo, da je pogrešek sile pri obeh strategijah vodenja v primeru enakomernega pomika majhen. Večji pogrešek sile pa se pojavi pri PI algoritmu vodenja (slika 8a in 9a) v primeru spremembe smeri gibanja, takrat namreč dejanska sila (zelena krivulja) ne uspe slediti referenčni sili (rdeča krivulja). V primeru izbranega robustnega algoritma vodenja (slika 8b in 9b) pa slednji zelo dobro kompenzira vpliv trenja, zato je tudi pogrešek sile manjši. Podobno je tudi v primeru emulacije mase, kjer PI algoritem vodenja (slika 10a in 11a) v primeru spremembe smeri gibanja ne zmore dovolj dobro kompenzirati vpliva trenja, zato se pojavi določen pogrešek sile v trenutku spremembe smeri gibanja. V primeru izbranega robustnega algoritma vodenja (slika 10b in 11b) pa je pogrešek sile manjši. V primeru emulacije trenja je razvidno, da sta tako PI algoritem vodenja (slika 12a in 13a), kot robustni algoritem vodenja (slika 12b in 13b) zagotavljala dobro sledenje referenčni sili v primeru aktivnega dinamičnega trenja, medtem ko v trenutku nastopa statičnega trenja boljše sledenje ref. sili zagotavlja robustno vodenje. 6 Zaključek V članku smo predstavili eksperimentalni sistem linearnega haptičnega vmesnika. Pokazali smo tako posamezne gradnike kot celotno arhitekturo sistema haptičnega vmesnika. Na kratko je bilo predstavljeno tudi vodenje in zajem vseh potrebnih podatkov. Eksperimentalni rezultati so pokazali, da je možno z ustrezno strojno implementacijo na eni strani in na drugi strani z vključitvijo robustnega vodenja doseči bolj kvalitetno upodobitev različnih haptičnih kod. 7 Literatura [1] Ueberle, M.W.: Design, Control, and Evaluation of a Family of Kinesthetic Haptic Interfaces. PhD thesis, Technische Universität München (2006). [2] T.A. Kern (ed.): Engineering Haptic Devices, Springer -Verlag Berlin Heidelberg (2009). [3] M. Mihelj, J. Podobnik: Haptics for Virtual Reality and Teleoperation. Intelligent Systems, Control and Automation: Science and Engineering, vol. 64, Springer (2012). [4] M. Čurkovič, R. Pučko, M. Golob, A. Hace: Dvoosni krmilnik za hitro eksperimentiranje v robotskih aplikacijah, UM-FERI, AIG'17, Maribor, Slovenija (6. - 7. april 2017). [5] T. Sirithanapipat: Haptic Interface Control Design for Performance and Stability Robustness. PhD thesis, Nashville, Tennessee (May, 2006). [6] A. Hace, M. Golob: Chattering-Free Sliding Mode Control Algorithm for a Haptic Throttle Lever, IECON 2016 -42nd Annual Conference of the IEEE Industrial Electronics Society, Florence, Italy (23-26 Oct. 2016). [7] C. Richard: On the Identification and Haptic Display of Friction. PhD thesis (August 2000).