ˇ ´ VYSOKE ´ UCEN ˇ ´I TECHNICKE ´ V PRAZE CESK E
Fakulta elektrotechnick´a
Diplomov´ a pr´ ace
Jan Kubeˇs Vyuˇ zit´ı 6 os´ eho silov´ eho senzoru pro ˇ r´ızen´ı pr˚ umyslov´ eho manipul´ atoru
Katedra kybernetiky Vedouc´ı projektu: Ing. Vladim´ır Smutn´ y
České vysoké učení technické v Praze Fakulta elektrotechnická Katedra kybernetiky
ZADÁNÍ DIPLOMOVÉ PRÁCE Student:
Bc. Jan K u b e š
Studijní program:
Kybernetika a robotika (magisterský)
Obor:
Robotika
Název tématu:
Využití šestiosého silového senzoru pro řízení průmyslového manipulátoru
Pokyny pro vypracování: 1. Seznamte se s šestiosým snímačem síly firmy ATI Industrial Automation typu Mini 45 a s robotem Clopema. 2. Identifikujte parametry snímače, začleňte ho do celého systém tak, aby bylo možno měřit externí síly působící na chapadlo robota. 3. V rámci možností daných vlastnostmi senzoru a robotu implementujte následující funkčnosti: a. detekce kontaktu chapadla robotu s okolím, např. pracovním stolem, b. detekce zdvižení oděvu z podložky, c. napnutí oděvu drženého oběma chapadly robotu Clopema. 4. S implementovanými algoritmy proveďte experimenty a výsledky vyhodnoťte. Seznam odborné literatury: [1] Whitney, D. E., "Historical perspective and state of the art in robot force control," Robotics and Automation. Proceedings. 1985 IEEE International Conference on , vol.2, pp.262-68, Mar 1985. [2] Hoyt, H.; Marchese, A.: Force Sensing and Haptic Feedback for Robotic Telesurgery. WPI, April 29th, 2010. [3] Mack, I.; Ferguson, S.; McMenemy, K.; Potts, S.; Dick, A., "Interactive force sensing feedback system for remote robotic laparoscopic surgery," Haptic Audio visual Environments and Games, 2009. HAVE 2009. IEEE International Workshop on , pp.58-63, 7-8 Nov. 2009. Vedoucí diplomové práce: Ing. Vladimír Smutný Platnost zadání: do konce letního semestru 2014/2015
L.S. doc. Dr. Ing. Jan Kybic vedoucí katedry
prof. Ing. Pavel Ripka, CSc. děkan V Praze dne 10. 1. 2014
Prohl´ aˇ sen´ı Prohlaˇsuji, ˇze jsem pˇredloˇzenou pr´ aci vypracoval samostatnˇe a ˇze jsem uvedl veˇsker´e pouˇzit´e informaˇcn´ı zdroje v souladu s Metodick´ ym pokynem o dodrˇzov´an´ı etick´ ych princip˚ u pˇri pˇr´ıpravˇe vysokoˇskolsk´ ych z´ avˇereˇcn´ ych prac´ı.
V Praze dne.............................
...............................................
Podˇ ekov´ an´ı Chtˇel bych podˇekovat sv´emu vedouc´ımu pr´ace Ing. Vladim´ıru Smutn´emu za odborn´e veden´ı projektu a za pomoc pˇri ˇreˇsen´ı probl´em˚ u. D´ale bych chtˇel podˇekovat cel´emu t´ ymu projektu Clopema a to hlavnˇe Vladimirovi Petrikovi a Liborovi W´agnerovi, za pˇr´ıleˇzitost participovat na projektu. Pˇredevˇs´ım vˇsak dˇekuji sv´ ym rodiˇc˚ um, kteˇr´ı mne neust´ale podporovali ve studiu.
Abstrakt Tato pr´ ace se zab´ yva vyuˇzit´ım silov´eho senzoru pro pr´aci pr˚ umyslov´eho manipul´atoru. D´ale pojedn´ av´ a o nalezen´ı a odstranˇen´ı zdroj˚ u chyb, pˇr´ıpadnˇe jejich filtraci. V´ ysledky byly ovˇeˇreny aplikacemi s manipulac´ı s odˇevy. Na z´ akladˇe zjiˇstˇen´ ych u ´daj˚ u je moˇzn´e silov´ y senzor vyuˇz´ıt i pˇri manipulaci s obleˇcen´ım a pouˇz´ıv´ a se v projektu Clopema.
Abstract This thesis is dealt with usage of force sensor for industrial manipulator work. It’s also dealt with finding and eliminating sources of errors, or their filtration. The results were validated by applications with the handling of garments. Based on the results it is possible to use force sensors for handling clothes and is used in the project Clopema.
Obsah ´ 1 Uvod
1
2 Technick´ e prostˇ redky
2
2.1
Robot Clopema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
2.2
Robot Operating System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
2.3
Silov´ y senzor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
3 Zdroje ruˇ siv´ ych sign´ al˚ u, jejich odstranˇ en´ı a filtrace
8
3.1
Elektrick´e ruˇsen´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
3.2
Mechanick´e kmity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
3.3
´ cinky svˇetla na silov´ Uˇ y senzor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
3.4
Teplota . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
3.5
Eliminace vlivu t´ıhy chapadla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
3.5.1
V´ ypoˇcet parametr˚ u chapadla . . . . . . . . . . . . . . . . . . . . . . . . . .
24
3.5.2
Experimenty s re´ aln´ ym senzorem . . . . . . . . . . . . . . . . . . . . . . . .
28
4 Aplikace senzoru
34
4.1
N´ araz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
4.2
Nataˇzen´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
4.3
Zdvih . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
4.4
Veden´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
5 Z´ avˇ er
40
6 Literatura
41
1
´ Uvod
Pr˚ umyslov´ a robotika pouˇz´ıvala doned´ avna pouze m´alo senzor˚ u, kter´e by robotu poskytovaly informaci o jeho p˚ usoben´ı. Vˇetˇsina mont´aˇzn´ıch linek ke sv´e ˇcinnosti vyuˇz´ıv´a jen svoji pamˇet’, kde cyklicky vykon´ avaj´ı pouze jednu u ´lohu. Ke sv´e pr´aci potˇrebuj´ı hlavnˇe senzory, kter´e ud´avaj´ı, kdy mohou zaˇc´ıt s prac´ı, napˇr´ıklad kdyˇz pˇrijede dalˇs´ı v´ yrobek a je pˇripraven na opracov´an´ı. Pomˇernˇe novinkou v robotice je vyuˇzit´ı silov´eho senzoru. Tyto senzory se pouˇz´ıvaj´ı v robotice tehdy, je-li tˇreba informace o manipulaci robota s prostˇred´ım. Napˇr´ıklad se ˇcasto pouˇz´ıv´a v nˇekter´ ych odvˇetv´ıch pr˚ umyslu u obr´ abˇec´ıch stroj˚ u ˇci kompletovac´ıch stroj˚ u, ale i v l´ekaˇrstv´ı, kde jsou pouˇz´ıv´ any pro d´ alkov´e ˇr´ızen´ı robot˚ u, vyuˇz´ıvaj´ıc´ıch haptick´e zpˇetn´e vazby [2]. Clopema, aneb Clothes Perception and Manipulation (CloPeMa), je tˇr´ılet´ y EU-FP7 projekt zab´ yvaj´ıc´ı se vn´ım´ an´ım a manipulac´ı se vˇsemi druhy obleˇcen´ı. V projektu je pouˇzit robotick´ y manipul´ ator, kter´ y vyuˇz´ıv´ a ˇsestios´eho silov´eho senzoru ATI Mini45 od firmy ATI Industrial Automation, jenˇz vyv´ıj´ı pˇredevˇs´ım doplˇ nky pro robotick´a chapadla. Pro pouˇzit´ı senzoru je nejprve tˇreba promˇeˇrit jeho vlastnosti, aby se dal co nejl´epe pouˇz´ıt pro zlepˇsen´ı efektivnosti robotu. C´ılem pr´ ace je zjiˇstˇen´ı a odstranˇen´ı ruˇsiv´ ych sign´al˚ u, aby mohl b´ yt senzor pouˇzit pro pr´ aci v projektu Clopema.
1
2
Technick´ e prostˇ redky
V t´eto kapitole se bl´ıˇze sezn´ am´ıme s robotick´ ym manipul´atorem projektu Clopema a s jeho c´ıli. Dalˇs´ı ˇc´ ast se zab´ yv´ a robotick´ ym operaˇcn´ım syst´emem, j´ımˇz je robot ovl´ad´an. Pˇredevˇs´ım je zde pops´ an silov´ y senzor ATI Mini 45 a jeho vnitˇrn´ı struktury.
2.1
Robot Clopema
K manipulaci s obleˇcen´ım je pouˇzito dvou manipul´ator˚ u MA1400 od firmy YASKAWA Motoman, kter´e jsou zakonˇceny dvojic´ı chapadel, jeˇz mohou uchopit l´atku a skl´adat ji podobnˇe, jako ˇclovˇek. Jeho souˇc´ ast´ı je robotick´ a hlava, kter´ a je tvoˇrena dvojic´ı digit´aln´ıch kamer (Nikon D5100). Robotick´ a hlava umoˇzn ˇuje tvoˇrit 3D point cloud1 o velk´em rozliˇsen´ı. D´ale je robot vybaven trojic´ı RBG-D kamer, kter´e zajiˇst’uj´ı vidˇen´ı a slouˇz´ı k urˇcen´ı d˚ uleˇzit´ ych bod˚ u pro uchopen´ı. V p˚ uvodn´ım projektu Clopema se neuvaˇzovalo o pouˇzit´ı silov´eho senzoru k manipulaci s odˇevy. Pˇri natahov´ an´ı obleˇcen´ı je obt´ıˇzn´e urˇcit, kdy je jiˇz dostateˇcnˇe napl´e a to pouze s pomoc´ı kamer. Tuto ˇcinnost ted’ obstar´ av´ a silov´ y senzor, kter´ y je upevnˇen na pˇr´ırubˇe manipul´atoru a je na nˇej namontov´ ano chapadlo. Jeho zeˇclenˇen´ım do syst´emu z´ısk´av´ame nov´a data, kter´a usnadˇ nuj´ı u ´lohy typu zdvihnut´ı obleˇcen´ı, jeho nataˇzen´ı, detekov´an´ı nepˇredpokl´adan´emu n´arazu robota nebo manu´ aln´ımu nav´ adˇen´ı robotu.
2.2
Robot Operating System
Jedn´ a se o Open Source Framework (middleware), kter´ y slouˇz´ı pro pr´aci s r˚ uzn´ ymi druhy robot˚ u. Jeho souˇc´ ast´ı je ˇrada n´ astroj˚ u, knihoven a pravidel, kter´e jsou potˇreba pro r˚ uzn´e aplikace v odvˇetv´ıch robotiky [10]. ROS pracuje s mnoha programovac´ımi jazyky, avˇsak cel´e jeho j´adro se rozdˇeluje na n´asleduj´ıc´ı komponenty. • Uzely (nodes)- jednotka, kter´ a obhospodaˇruje v´ ypoˇcty. Kaˇzd´ y uzel m´a na starost jednu vˇec, napˇr´ıklad jeden uzel ˇr´ıd´ı laserov´ y paprsek a jin´ y ovl´ad´a motory kol robotu [10]. • Zpr´ avy (messages) - datov´ a strukt˚ ura pro komunikaci uzl˚ u [10]. • Topiky (topics)- pojmenovan´e kan´aly, pˇres kter´e si uzly vymˇen ˇuj´ı zpr´avy, napˇr´ıklad silov´ y senzor neust´ ale vys´ıl´ a zmˇeˇren´ a data, ke kter´ ym m´a robot pˇr´ıstup a m˚ uˇze se jimi ˇr´ıdit pˇri pl´ anov´ an´ı nov´e akce [10]. 1 Point
cloud je mnoˇ zina datov´ ych bod˚ u v urˇ cit´ em souˇradnicov´ em syst´ emu. 3D point cloud pˇriˇrad´ı kaˇ zd´ emu bodu
souˇradnice v prostoru a celek tvoˇr´ı povrch pˇredmˇ etu
2
• Sluˇ zby (Services) - pojmenovan´a synchronizovan´a komunikace, m˚ uˇze b´ yt pouze jedin´a komunikace s urˇcit´ ym jm´enem [10].
Obr´ azek 1: Robot CloPeMa ve v´ ychoz´ı pozici [4]
2.3
Silov´ y senzor
Hlavn´ım t´ematem t´eto pr´ ace je pr´ avˇe silov´ y senzor, kter´ y poskytuje robotu dalˇs´ı informaci o objektech drˇzen´ ych chapadlem. Tato podkapitola se vˇenuje podrobnˇe pr´avˇe silov´emu senzoru ATI Miny 45 (obr´ azek 2) od firmy ATI Industrial Automation. Jedn´a se o v´ıceos´ y silov´ y a momentov´ y sn´ımaˇc, kter´ y souˇcasnˇe mˇeˇr´ı s´ıly FX , FY , FZ a momenty TX , TY , TZ . Ze senzoru samotn´eho vede pˇrevodn´ıkov´ y kabel, kter´ y je u typu Mini 45 pevnˇe pˇripojen k senzorov´ ym pˇrevodn´ık˚ um. Zajiˇst’uje nap´ajen´ı senzoru a pˇren´aˇsen´ı sign´alu, kter´ y pˇrev´ad´ı s´ılu a moment do elektrick´eho sign´ alu. Pˇrevodn´ıkov´ ym kabelem je senzor spojen s NetBoxem. Jedn´a se o hl´ın´ıkovou krabiˇcku, ve kter´e je zaˇr´ızen´ı zajiˇst’uj´ıc´ı nap´ajen´ı, ovl´ad´an´ı a komunikaci senzoru s 3
poˇc´ıtaˇcem. V projektu Clopema se vyuˇz´ıv´a komunikace poˇc´ıtaˇce s NetBoxem po Ethernetu. Samotn´ y senzor m˚ uˇze b´ yt nap´ ajen dvˇema zp˚ usoby. Prvn´ı je nap´ajen´ı PoE (Power over Ethernet), ale v naˇsem pˇr´ıpadˇe je vyuˇzit extern´ı stejnosmˇern´ y zdroj, konkretnˇe zdroj BKE (JS-150-120/DIN2), kter´ y nap´ aj´ı i switch propojuj´ıc´ı komunikaci mezi poˇc´ıtaˇcem, robotem a senzorem. Celkov´e zapojen´ı je zobrazeno na obr´ azku 3. Zdroj dod´av´a 12V-10A a je upevnˇen v podstavci robotu. Parametry senzoru lze nastavit ve webov´em prostˇred´ı, jde urˇcit napˇr´ıklad IP adresa, pod kterou bude senzor s poˇc´ıtaˇcem komunikovat, frekvence pos´ıl´an´ı sign´alu, ale i jednotky, v kter´ ych bude senzor mˇeˇrit.
Obr´ azek 2: Silov´ y senzor ATI Mini45 [5]
Obr´ azek 3: Zapojen´ı silov´eho senzoru
Sn´ım´ an´ı sil a moment˚ u je zajiˇstˇeno tenzometry. Princip mˇeˇren´ı sil funguje v z´avislosti tˇret´ıho Newtonova z´ akona (z´ akon akce a reakce) a Hookova z´akona 4
σ = εE ,
(1)
kde ε je pomˇern´e d´elkov´e prodlouˇzen´ı, E je Young˚ uv modul pruˇznosti v tahu a σ je mechanick´e napˇet´ı. Polovodiˇcov´e tenzometry jsou pˇripevnˇeny k nosn´ık˚ um a jsou povaˇzov´any za odpory citliv´e na mechanick´e napˇet´ı. Odpor tenzometru se mˇen´ı v n´asleduj´ıc´ı z´avislosti
∆R = Sa R0 ε ,
(2)
kde ∆R je zmˇena odporu polovodiˇcov´eho tenzometru, Sa je mˇeˇr´ıc´ı ˇcinitel tenzometru, R0 je odpor nezat´ıˇzen´eho tenzometru a ε je pomˇern´e d´elkov´e prodlouˇzen´ı [5]. Cel´ y senzor je tvoˇren ˇsesti polom˚ ustky, kde kaˇzd´ y polom˚ ustek obsahuje dvojici tranzistor˚ u, kter´e mˇeˇr´ı z´ ateˇz [6]. P´ ary tenzometr˚ u funguj´ı jako napˇet’ov´ y dˇeliˇc produkuj´ıc´ı elektrick´ y sign´al odpov´ıdaj´ıc´ı zat´ıˇzen´ı p´ aru. Sch´ematick´e zapojen´ı je zobrazeno na obr´azku 4.
Obr´ azek 4: Vnitˇrn´ı zapojen´ı tenzometrick´ ych polom˚ ustku [6]
D˚ uleˇzitou souˇc´ ast´ı NetBoxu je i ˇrada kalibrac´ı a filtr˚ u doln´ı propusti, kter´e jdou pomoc´ı webov´eho prostˇred´ı nastavovat a t´ım ovlivˇ nuj´ı citlivost senzoru. Moˇzn´e kalibrace senzoru jsou zobrazeny v tabulce 1, kde je vidˇet, jak kalibrace ovlivˇ nuje rozsah mˇeˇren´e s´ıly i citlivost [5].
5
Obr´ azek 5: Zn´azornˇen´ı mˇeˇr´ıc´ıch os senzoru [6]
Sn´ımac´ı rozsah
Rozliˇsen´ı
Fx,Fy
Fz
Tx,Ty
Tz
Fx,Fy
Fz
Tx,Ty
Tz
Kalibrace
[N]
[N]
[Nm]
[Nm]
[N]
[N]
[Nm]
[Nm]
SI-145-5
145
290
5
5
1/16
1/16
1/752
1/1504
SI-290-10
290
580
10
10
1/8
1/8
1/376
1/752
SI-580-20
580
1160
20
20
1/4
1/4
1/188
1/376
Tabulka 1: Kalibrace silov´eho senzoru [5]
V´ yrobce ud´ av´ a hodnoty u ´tlum˚ u a zpoˇzden´ı dat ze senzoru, pokud jsou pouˇzity filtry doln´ı propusti, kter´e lze nastavit ve webov´em prostˇred´ı. Z´avislost u ´tlum˚ u na pouˇzit´ ych filtrech je zn´azornˇena v obr´ azku 6 a z´ avislost zpoˇzdˇen´ ych dat, v z´avislosti na pouˇzit´ ych filtrech, je zobrazena v obr´azku 7.
6
Obr´ azek 6: Z´ avislost u ´tlumu dat na frekvenci s pouˇzit´ım dolnopropustn´ıho filtru [5]
Obr´ azek 7: Z´ avislost zpoˇzden´ı dat na frekvenci s pouˇzit´ım dolnopropustn´ıho filtru [5]
7
3
Zdroje ruˇ siv´ ych sign´ al˚ u, jejich odstranˇ en´ı a filtrace
V t´eto kapitole jsou pops´ any pokusy a pr´ace se samotn´ ym silov´ ym senzorem. Jsou zde uvedeny probl´emy, kter´e se pˇri pr´ aci se senzorem objevily a jejich ˇreˇsen´ı. Vˇsechny pokusy byly uskuteˇcnˇeny za u ´ˇcelem zlepˇsen´ı stability dat senzoru, omezen´ı vliv˚ u prostˇred´ı, zvyˇsuj´ıc´ıch jeho chybovost. Hlavn´ım c´ılem vˇsak byla eliminace vlivu t´ıhy chapadla, nebot’ nechceme silov´ ym senzorem mˇeˇrit s´ıly a momenty p˚ usob´ıc´ı v senzoru (v z´apˇest´ı robotu), ale v prstech chapadla.
3.1
Elektrick´ e ruˇ sen´ı
Prvn´ımi pokusy se silov´ ym senzorem byly pokusy s vlivem r˚ uzn´ ych zdroj˚ u a zapojen´ı senzoru a prov´ az´ an´ı komunikace s poˇc´ıtaˇcem. Tyto pokusy byly prov´adˇeny se senzorem poloˇzen´ ym na stole. Testoval se vliv spoleˇcn´eho uzemˇen´ı NetBoxu, switche a zdroje. Testy provedl student Matej Murgaˇs [8]. Z r˚ uzn´ ych pouˇzit´ ych zdroj˚ u pro nap´ajen´ı senzoru vyˇsel nejl´epe laboratorn´ı zdroj Mesit 40V-10A. Pro nap´ ajen´ı senzoru se vˇsak pouˇz´ıv´a zdroj BKE (JS-150-120/DIN2), kter´ y se nach´az´ı v podstavci robotu a nap´ aj´ı senzor napˇet´ım 12V. Dalˇs´ım v´ ystupem t´eto pr´ ace byl vliv motor˚ u na senzor. Murgaˇs ve sv´e zpr´avˇe uv´ad´ı, ˇze vnitˇrn´ı obvody robotu maj´ı zanedbateln´ y vliv na silov´ y senzor. D´ ale byl vyzkouˇsen vliv pouˇzit´ı s´ıt’ov´eho odruˇsovac´ıho filtru X31-1 na v´ ystup nap´ajec´ıho zdroje. Pˇri experimentech byl zjiˇstˇen i vliv teploty na silov´ y senzor. V´ıce o t´eto problematice je pops´ano v jin´e kapitole. Senzor je tedy chr´ anˇen proti elektrick´emu ruˇsen´ım pouˇzit´ım odruˇsovac´ıho filtru X31-1, kter´ y je zapojen u vstupu do NetBoxu. T´ım se odstranil vliv pˇr´ıpadn´ ych elektrick´ ych ruˇsen´ı a mohlo se p´ atrat po dalˇs´ıch zdroj´ıch ruˇsiv´ ych sign´al˚ u.
3.2
Mechanick´ e kmity
Silov´ y senzor dok´ aˇze mˇeˇrit data s maxim´aln´ı vzorkovac´ı frekvenci 7000 vzork˚ u za vteˇrinu. Pˇri takto velk´em kmitoˇctu dok´ aˇze senzor zaznamen´avat i mechanick´e kmity vyskytuj´ıc´ı se v okol´ı robotu. Prvn´ı experiment byl jiˇz prov´ adˇen se senzorem pˇridˇelan´ ym k robotu. Do souboru se ukl´adala silov´ a data ze senzoru a k nim odpov´ıdaj´ıc´ı ˇcasov´e znaˇcky, data se ukl´adala po dobu pˇeti minut. Data byla d´ ale zpracov´ ana v programu Matlab [11]. Z mˇeˇren´ı bylo zjiˇstˇeno, ˇze senzor je ruˇsen mechanick´ ymi vzruchy. Na ob´azku 8 jsou data, kter´a byla zmˇeˇrena pˇri frekvenci 7 kHz a robot se nach´azel ve v´ ychoz´ı pozici, kter´a odpov´ıd´a natoˇcen´ım vˇsech motor˚ u na nulovou hodnotu. Jedn´a se pouze o s´ılu FX . Senzor je souˇc´ast´ı robotu, mus´ı se tedy jednat o mechanick´e kmity p˚ usob´ıc´ı na samotn´ y robot z okol´ı.
8
Original data −6 −6.2
Force X [N] −>
−6.4 −6.6 −6.8 −7 −7.2 −7.4 −7.6 0
50
100
150
200
250
Time [s] −>
Obr´ azek 8: Data ze senzoru pˇri frekvenci 7 kHz, osa X. Robot se nach´azel ve v´ ychoz´ı pozici.
Jelikoˇz se cel´ y robot nach´ az´ı ve sklepˇe, nach´azej´ıc´ım se v bl´ızkosti velk´e kˇriˇzovatky na Karlovˇe n´ amˇest´ı v Praze, byla vznesena hypot´eza, ˇze otˇresy z proj´ıˇzdˇej´ıc´ıch tramvaj´ı pˇres kˇriˇzovatku ovlivˇ nuj´ı silov´ y senzor, kter´ y je detekuje jako impulzy z obr´azku 8. Bylo tedy tˇreba zjistit, kdy pˇres kˇriˇzovatku proj´ıˇzd´ı tramvaj a tuto informaci ukl´adat spolu s mˇeˇren´ ymi daty. Do mˇeˇr´ıc´ıho programu byla pˇrid´ana funkce, kter´a oznaˇcuje proj´ıˇzdˇej´ıc´ı tramvaj (stlaˇcen´ım jak´ekoliv kl´ avesy se do souboru tento parametr zap´ıˇse). N´aslednˇe si oper´ator u poˇc´ıtaˇce zaznamenal ˇc´ıslo a smˇer hl´ aˇsen´e tramvaje. Tento experiment se prov´ adˇel pˇri frekvenci 100 Hz, robot byl opˇet ve v´ ychoz´ı pozici. Pr˚ ujezd tramvaj´ı byl hl´ aˇsen pozorovatelem, kter´ y st´al u kˇriˇzovatky, pomoc´ı vys´ılaˇcky. Data ze senzor˚ u jsou zn´ azornˇena na obr´ azc´ıch 9, 10. Svisl´e svˇetle modr´e ˇc´ary indikuj´ı okamˇzik, kdy byl hl´aˇsen pr˚ ujezd tramvaje. Poˇrad´ı, smˇer a ˇc´ıslo proj´ıˇzdˇej´ıc´ıch tramvaj´ı je v tabulce 2.
9
Force X [N] −>
18 16 0
100
200
300
400
500
600
700
800
900
600
700
800
900
600
700
800
900
Time [s] −> Trams effect on Fy
−16 −18 0
Force Z [N] −>
Force Y [N] −>
Trams effect on Fx
100
200
300
400
500
Time [s] −> Trams effect on Fz 36 35 34 0
100
200
300
400
500
Time [s] −>
Obr´ azek 9: Experiment s vlivem tramvaj´ı na s´ıly ramena 1. Data sn´ım´ana na frekvenci 100 Hz.
Trams effect on Fx −12 −13 −14 0
100
200
300
400
500
600
700
800
900
600
700
800
900
600
700
800
900
Time [s] −> Trams effect on Fy −18 −19 −20
Force Z [N] −>
Force Y [N] −>
Force X [N] −>
Svˇetle modr´e ˇc´ ary indikuj´ı doby hlaˇsen´ ych tramvaj´ı.
0
100
200
300
400
500
Time [s] −> Trams effect on Fz 10 8 0
100
200
300
400
500
Time [s] −>
Obr´ azek 10: Experiment s vlivem tramvaj´ı na s´ıly ramena 2. Data sn´ım´ana na frekvenci 100 Hz. Svˇetle modr´e ˇc´ ary indikuj´ı doby hlaˇsen´ ych tramvaj´ı.
10
ID
No. - Smˇer
ID
No. - Smˇer
1
3 - Mor´ an ˇ
16
22 - I.P.Pavlova, 22 - Muzeum
2
4 - I.P.Pavlova, 7 - Mor´an ˇ
17
10 - Mor´an ˇ
3
6, 10 - Mor´ an ˇ
18
22 - I.P.Pavlova
4
3 - Mor´ an ˇ
19
3 - Mor´an ˇ
5
22 - Muzeum
20
3 - Muzeum, 3 Mor´an ˇ
6
3 - Muzeum
21
4 - I.P.Pavlova
7
10 - I.P.Pavlova, 18 - Muzeum
22
18 - Muzeum
8
24 - Mor´ an ˇ, 24 - Muzeum
23
6 - Muzeum
9
4 - I.P.Pavlova
24
22 - Muzeum
10
22 - Muzeum
25
18 - Mor´an ˇ
11
3 - Mor´ an ˇ, 16 - I.P.Pavlova
26
22 - I.P.Pavlova
12
3 - Muzeum
27
24 - Mor´an ˇ
13
6, 16 - Mor´ an ˇ
28
3 - Muzeum
14
6,22 - Muzeum, 18 - Mor´an ˇ
29
18 - Mor´an ˇ
15
10 - I.P.Pavlova Tabulka 2: Tabulka provozu tramvaji
Z porovn´ an´ı ˇcar indikuj´ıc´ı pr˚ ujezd tramvaj´ı a oscilac´ı silov´eho senzoru lze usoudit, ˇze pr˚ ujezd tramvaj´ı pˇres kˇriˇzovatku m´ a vliv na pr´aci senzoru. Nˇekter´e z ˇcar neodpov´ıdaj´ı pˇresnˇe oscilac´ım, nebot’ ˇcas ohl´ aˇsen´ı pr˚ ujezdu tramvaje oper´atorem neodpov´ıdal m´ıstu, ve kter´em ji senzor zaznamen´ av´ a. Moˇzn´ y vliv mohou m´ıt i n´ akladn´ı automobily, kter´a pˇres kˇriˇzovatku proj´ıˇzdˇej´ı. Napˇr´ıklad oscilace z 800 vteˇriny neodpov´ıd´ a ˇza´dn´e z hl´aˇsen´ ych tramvaj´ı, dle pozorovatele se jednalo o proj´ıˇzdˇej´ıc´ı n´ akladn´ı v˚ uz. Dalˇs´ı z hypot´ez byla, zda na silov´ y senzor m´a vliv provoz metra na Karlovˇe n´amˇest´ı. Bylo potˇreba hl´ asit jak pr˚ ujezdy tramvaj´ı, tak i provoz metra. Senzor opˇet sn´ımal data pˇri frekvenci 100 Hz a robot byl nastaven do v´ ychoz´ı pozice. Prvn´ı pozorovatel hl´asil vys´ılaˇckou provoz tramvaj´ı, druh´ y pozorovatel hl´ asil provoz metra mobiln´ım telefonem. Na obr´azc´ıch 11, 12 jsou zobrazena data ze silov´eho senzoru s indikac´ı pr˚ ujezdu tramvaj´ı (svˇetle modr´e vertik´aln´ı ˇc´ary) a metra (ˇcern´e vertik´ aln´ı ˇc´ ary). Poˇrad´ı pr˚ ujezd˚ u tramvaj´ı a vlak˚ u je zobrazeno v tabulce 3.
11
Force X [N] −>
14 13 12 0
50
100
150
200
250
300
350
400
300
350
400
300
350
400
Time [s] −> Trams effect on Fy
−28 −29 −30 0
Force Z [N] −>
Force Y [N] −>
Trams effect on Fx
50
100
150
200
250
Time [s] −> Trams effect on Fz 35 34 0
50
100
150
200
250
Time [s] −>
Obr´ azek 11: Experiment s vlivem tramvaj´ı a metra na s´ıly ramena 1. Data sn´ım´ana na frekvenci ˇ 100 Hz. Svˇetle modr´e ˇc´ ary indikuj´ı doby hlaˇsen´ ych tramvaj´ı. Cern´ e ˇc´ary indikuj´ı doby hl´aˇsen´ ych
Trams effect on Fx 8 6 0
50
100
150
200
250
300
350
400
300
350
400
300
350
400
Time [s] −> Trams effect on Fy
−12 −14 0
Force Z [N] −>
Force Y [N] −>
Force X [N] −>
vlak˚ u.
50
100
150
200
250
Time [s] −> Trams effect on Fz 8 6 0
50
100
150
200
250
Time [s] −>
Obr´ azek 12: Experiment s vlivem tramvaj´ı a metra na s´ıly ramena 1. Data sn´ım´ana na frekvenci ˇ 100 Hz. Svˇetle modr´e ˇc´ ary indikuj´ı doby hlaˇsen´ ych tramvaj´ı. Cern´ e ˇc´ary indikuj´ı doby hl´aˇsen´ ych vlak˚ u.
12
ID
No. - Smˇer
ID
No. - Smˇer
1
10 - I.P.Pavlova
8
Pˇr´ıjezd metra
2
7 - Mor´ an ˇ
9
Odjezd metra
3
22,3 - Muzeum
10
4 - Mor´an ˇ
4
3 - Mor´ an ˇ, 22 Muzeum
11
3 - Mor´an ˇ
5
22 - I.P.Pavlova
12
3 - Muzeum
6
4 - I.P.Pavlova
13
Pˇr´ıjezd Metra
7
18 - Muzeum
14
Odjezd metra
Tabulka 3: Tabulka provozu tramvaji a metra
Z podobn´e u ´vahy jako u samotn´ ych tramvaj´ı je vidˇet, ˇze vliv metra nem´a na senzor takov´ y vliv, jako vliv samotn´e tramvaje. Vliv je n´azorn´ y pˇredevˇs´ım na sil´ach v ose X a Y, avˇsak oproti vliv˚ um tramvaj´ı jsou zanedbateln´e. Moˇzn´e vysvˇetlen´ı je v pˇr´ıliˇs velk´e vzd´alenosti a hloubce (stˇred stanice se nach´ az´ı v hloubce 40 metr˚ u [12]) vlakov´ ych kolej´ı od pozice robotu. Pˇri tˇechto mˇeˇren´ıch byla pozorov´ana zmˇena pr˚ umˇern´ ych dat za urˇcit´ y ˇcas. To jest dobˇre viditeln´e z pohybuj´ıc´ıho se pr˚ umˇeru. Data s pohybuj´ıc´ım se pr˚ umˇerem jsou zobrazena v obr´azku 13, jedn´ a se o rameno robotu 2, konkr´etnˇe o s´ılu FZ . Z dat je vidˇet, ˇze se pr˚ umˇern´a data zmˇenila o 1 N za patn´ act minut.
Force Z [N] −>
Moving Average (50 Samples) 10 9 8 7 0
100
200
300
400
500
600
700
800
900
700
800
900
Force Z [N] −>
Time [s] −> Original data at frequency100 Hz 10 9 8 7 0
100
200
300
400
500
600
Time [s] −>
Obr´ azek 13: Zmˇena pohybujc´ıho se pr˚ umˇeru ze silov´eho senzoru. S´ıla v ose Z z obr´azku 10. Nahoˇre je pohybujc´ı se pr˚ umˇer. Dole jsou p˚ uvodn´ı data ze senzoru.
Jelikoˇz jsme zjistili ovlivnˇen´ı senzoru otˇresy tramvaj´ı, bylo nutn´e zjistit vliv pohybu v samotn´e m´ıstnosti, kde se robot nach´ az´ı. Pˇri tomto experimentu bylo dup´ano v r˚ uzn´ ych ˇc´astech m´ıstnosti s robotem. Prvn´ı pozice byla pˇr´ımo vedle z´akladny robotu na betonov´e podlaze, kde se pˇredpokl´adal
13
nejvˇetˇs´ı vliv na silov´ y senzor. Druh´ a pozice byla pˇred robotem, kde se nach´az´ı dˇrevˇen´a podlaha. Tˇret´ı pozice byla opˇet na betonov´e podlaze, ale tentokr´at u bezpeˇcnostn´ıch dveˇr´ı, zabezpeˇcuj´ıc´ıch operaˇcn´ı prostor robotu. Na kaˇzd´e pozici byli provedeny tˇri po sobˇe jdouc´ı dupy a do dat se pomoc´ı vstupu z kl´ avesnice opˇet zapsaly znaˇcky indikuj´ıc´ı otˇresy. Senzor byl nastaven na sn´ım´an´ı pˇri frekvenci 7 kHz a robot byl nastaven do v´ ychoz´ı polohy. Data z experimentu jsou zobrazena v
Stamps effect on Fx 18 16 14 12 10 8 0
5
10
15
20
25
30
35
40
45
30
35
40
45
30
35
40
45
Time [s] −> Stamps effect on Fy −8
−10 0
Force Z [N] −>
Force Y [N] −>
Force X [N] −>
obr´ azc´ıch 14, 15.
5
10
15
20
25
Time [s] −> Stamps effect on Fz 42 40 38 0
5
10
15
20
25
Time [s] −>
Obr´ azek 14: Experiment s vlivem dup´ an´ı v bl´ızkosti robotu na rameno 1. Sn´ım´an´ı na frekvenci 7
Stamps effect on Fx −15 −20 0
5
10
15
20
25
30
35
40
45
30
35
40
45
30
35
40
45
Time [s] −> Stamps effect on Fy −11 −12 −13 −14 −15 0
Force Z [N] −>
Force Y [N] −>
Force X [N] −>
kHz. Svisl´e svˇetle modr´e ˇc´ ary indikuj´ı ˇcasy vyvolan´ ych otˇres˚ u.
5
10
15
20
25
Time [s] −> Stamps effect on Fz 16 14 12 0
5
10
15
20
25
Time [s] −>
Obr´ azek 15: Experiment s vlivem dup´ an´ı v bl´ızkosti robotu na rameno 2. Sn´ım´an´ı na frekvenci 7 kHz. Svisl´e svˇetle modr´e ˇc´ ary indikuj´ı ˇcasy vyvolan´ ych otˇres˚ u.
14
Z experimentu vypl´ yv´ a, ˇze dup´ an´ı v bl´ızkosti robotu m´a znaˇcn´ y vliv na mˇeˇren´a data ze silov´eho senzoru. Podle oˇcek´ av´ an´ı se chyba zmenˇsuje se vzd´alenost´ı. Nepˇredpokl´ad´a se, ˇze by pˇri pr´aci robotu byl v jeho operaˇcn´ım prostoru pˇr´ıtomen ˇclovˇek. Mimo operaˇcn´ı prostor jiˇz nemaj´ı vzruchy vyvolan´e dupnut´ım takov´ yu ´ˇcinek a proto se s t´ımto pˇr´ıpadem chyb d´ale pˇrestalo zab´ yvat. Chybu vnesenou vlivem pr˚ ujezdu tramvaj´ı bylo potˇreba odstranit. Proto byly vyzkouˇseny r˚ uzn´e kombinace vlastn´ıch kalibrac´ı a filtr˚ u silov´eho senzoru, kter´e lze nastavit ve webov´em prostˇred´ı. Senzor mˇeˇril na frekvenci 7 kHz a robot byl nastaven do v´ ychoz´ı polohy. Kalibrace a pouˇzit´e filtry jsou zobrazeny v tabulce 4. ID
Filtr [Hz]
Kalibrace
Zmˇeˇren´a data
1
18
SI-145-5
exp1r1, exp1r2
2
35
SI-145-5
exp2r1, exp2r2
3
35
SI-580-20
exp3r1, exp3r2
4
18
SI-580-20
exp4r1, exp4r2
Tabulka 4: Pouˇzit´e filtry a kalibrace pro pr´aci se silov´ ym senzorem
Pˇri pˇredch´ azej´ıc´ıch experimentech, kde se data odeˇc´ıtala ze senzoru pˇri frekvenc´ıch 100 Hz aˇz 7 kHz, bylo podezˇren´ı, ˇze senzor mˇeˇr´ı vˇzdy na maxim´aln´ı moˇzn´e frekvenci (7 kHz) a podle nastaven´e frekvence ve webov´em prostˇred´ı pos´ıl´a vˇzdy pouze aktu´aln´ı mˇeˇren´ı poˇzadovan´e v urˇcit´ y ˇcas. Napˇr´ıklad, pokud nastav´ıme senzor na frekvenci 1 kHz, bude n´am senzor bude pos´ılat kaˇzd´ y sedm´ y vzorek a zbyl´ a mˇeˇren´ı nebere v u ´vahu. T´ım vˇsak pˇrich´az´ıme o ostatn´ı mˇeˇren´a data, kter´a bychom mohli zpr˚ umˇerovat a pos´ılat v poˇzadovan´em ˇcase. Proto jsme zmˇeˇrili v´ ystup ze senzoru na maxim´aln´ı frekvenci a r˚ uzn´ ymi pr˚ umˇerov´an´ımi sledovali filtrovan´ a data. Napˇr´ıklad pr˚ umˇerov´an´ım kaˇzd´ ych sedmdes´ati vzork˚ u z´ısk´ame data na frekvenci odpov´ıdaj´ıc´ı 100 Hz. Jednoduch´ ym pr˚ umˇerov´an´ım dvou po sobˇe jdouc´ıch pˇrevzorkovan´ ych dat z´ısk´ ame frekvenci poloviˇcn´ı. Tato konstrukce pˇripom´ınaj´ıc´ı pyramidu n´am umoˇzn ˇuje zjistit, pˇri jak´e frekvenci vymiz´ı vliv tramvaj´ı, pˇr´ıpadnˇe i jin´e chyby. Jedny z v´ ysledk˚ u filtrov´an´ı a pr˚ umˇerov´ an´ı jsou zobrazeny v obr´ azku 16.
15
Force Z [N] −>
8.5 8 0.5
1
1.5
Samples [n] −> Resampling at :50 Hz
2
8 5000
10000
Samples [n] −> Resampling at :12.5 Hz 8.5 8 7.5 0
1000
2000
8.5 8 7.5 0
3000
Samples [n] −>
0.5
1
1.5
2
2.5
Samples [n] −> Resampling at :25 Hz
x 10
8.5
7.5 0
Resampling at :100 Hz
6
Force Z [N] −>
7.5 0
Force Z [N] −>
Force Z [N] −> Force Z [N] −> Force Z [N] −>
Original data
4
x 10
8.5 8 7.5 0
2000
4000
6000
Samples [n] −> Resampling at :6.25 Hz 8.5 8 7.5 0
500
1000
1500
Samples [n] −>
Obr´ azek 16: Pˇrevzorkovan´a data z exp1r2, osa Z
Jelikoˇz byla tato data zpracov´ av´ ana offline, bylo moˇzn´e odstranit pohybuj´ıc´ı se pr˚ umˇer pomoc´ı spojen´ı trend˚ u pr˚ umˇern´ ych hodnot. Byla identifikovan´a pˇr´ımka pr˚ umˇern´ ych hodnot, kter´a se odˇc´ıtala od dat skuteˇcn´ ych a t´ım se z´ıskala data bez mˇen´ıc´ıho se pr˚ umˇeru. Na obr´azku 16 je zobrazen extr´emn´ı pˇr´ıklad dat, ze senzoru v rameni 2 osy Z, kter´a je extr´emnˇe zaˇsumˇel´a. Je vˇsak vidˇet, ˇze pˇri pr˚ umˇerov´ an´ı na frekvenci 50 Hz ˇsum vymiz´ı. Vliv samotn´ ych tramvaj´ı odezn´ıv´a pˇri frekvenci 25 Hz a pˇri frekvenci 12,5 Hz jsou data jiˇz bez jak´ ychkoliv znateln´ ych chyb. Pro data byla z vybran´e oblasti zhotovena i FFT2 (obr´azek 17), kde je vidˇet, ˇze se na frekvenci 50 Hz a na frekvenci 25 Hz uplatˇ nuje jist´ y ˇsum a mechanick´a ruˇsen´ı. 2 FFT
- Fast Fourier Transformation, je efektivn´ı algoritmus pro spoˇ c´ıt´ an´ı diskr´ etn´ı Fourierovy transformace.
16
Original data 8.5 8 7.5 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
Samples [n] −> Selected area from original data
2 6
x 10
8.5 8 7.5 0
1
2
3
4
5
6
7
|Y(f)|
Samples [n] −> FFT
4
x 10
0.05
0 0
10
20
30
40
50
60
Frequency (Hz)
Obr´ azek 17: Rychl´ a Fourierova transformace pro data z exp1r2, osa Z
To, ˇze se na frekvenci 25 Hz nach´ az´ı pr´avˇe mechanick´e kmity, vyvolan´e pr˚ ujezdy tramvaj´ı je vidˇet z nezaˇsumˇel´ ych dat, napˇr´ıklad data z t´ehoˇz experimentu, ale z osy X (obr´azek 18). Original data −6 −7 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
Samples [n] −> Selected area from original data
2 6
x 10
−6 −7 0
1
2
3
4
5
6
|Y(f)|
Samples [n] −> FFT
7 4
x 10
0.05
0 0
10
20
30
40
50
60
Frequency (Hz)
Obr´ azek 18: Rychl´ a Fourierova transformace pro data z exp1r2 pro vyznaˇcenou oblast, osa X
V z´ avislosti na tˇechto experimentech byl vytvoˇren program filter force.cpp, kter´ y filtruje data, aby ruˇsen´ı tramvaj´ı nemˇelo vliv na silov´ y senzor. Senzor se spouˇst´ı z prostˇred´ı Ros pomoc´ı launch pˇr´ıkazu force sensor.launch, kter´ y pos´ıla na jednom topiku nezpracovan´a data ze senzoru na frekvenci 7 kHz (/r1 force data, /r2 force data). Souˇcasnˇe s t´ım se spust´ı i program , kter´ y odeb´ır´a data na frekvenci 7 kHz a pr˚ umˇeruje je na frekvenci 12,5 Hz, takto filtrovan´a data publikuje nov´em topiku (/r1 force data downsample, /r2 force data downsample). S takto vyfiltrovan´ ymi daty senzor pracuje pˇri plnˇen´ı u ´loh.
17
3.3
´ cinky svˇ Uˇ etla na silov´ y senzor
Pˇri pr´ aci se senzorem se uk´ azalo, ˇze v nˇekter´ ych konfigurac´ıch manipul´atoru a chapadla se data ze senzoru chovaj´ı ˇspatnˇe. P´ atr´ an´ım po pˇr´ıˇcin´ach se uk´azalo, ˇze jist´ y vliv na silov´ y senzor m´a i osvˇetlen´ı m´ıstnosti. V´ yrobce senzoru nezamezil pˇr´ıstupu svˇetla do tˇela senzoru a je moˇzn´e, ˇze pˇri nˇekter´ ych konfigurac´ıch robotu bude senzor ovlivnˇen svˇetlem. Prvn´ı z pokus˚ u byl proveden jiˇz s vyfiltrovan´ ymi daty na frekvenci 12,5 Hz. Robot se nach´azel ve v´ ychoz´ı poloze. Experiment spoˇc´ıval v zap´ın´an´ı a vyp´ın´an´ı svˇetel v m´ıstnosti kaˇzd´ ych 10 vteˇrin. V´ ysledky z experimentu jsou zobrazeny v obr´azku 19.
Force −> [N]
Force X 13.68 13.67 13.66 13.65 0
20
40
60
80
100
120
80
100
120
80
100
120
Force −> [N]
Time [s] −> Force Y −13.7 −13.71 −13.72 −13.73 0
20
40
60
Force −> [N]
Time [s] −> Force Z 26.64 26.63 26.62 26.61 0
20
40
60
Time [s] −>
Obr´ azek 19: Experiment s vlivem svˇetla na rameno 1. Filtrovan´a data ze senzoru na frekvenci 12,5 Hz. Zmˇena stavu svˇetla kaˇzd´ ych 10 vteˇrin. Robot se nach´azel ve v´ ychoz´ı pozici.
Z graf˚ u vych´ az´ı z´ avˇer, ˇze pro robot ve v´ ychoz´ı pozici nem´a svˇetlo v m´ıstnosti na senzor vliv. Je vˇsak moˇzn´e, ˇze v jin´ ych konfigurac´ıch robotu bude m´ıt svˇetlo nezanedbateln´ y vliv. Pro tento u ´ˇcel jsme pouˇzili svˇetla z ruˇcn´ı baterky k pˇr´ım´emu osvˇetlen´ı sp´ar senzoru. Experiment prob´ıhal v zhasnut´e m´ıstnost a jeho v´ ysledky jsou zobrazeny na obr´azc´ıch 20, 21.
18
Force −> [N]
Force X 8 7.9 7.8 7.7 0
5
10
15
20
25
30
35
40
45
30
35
40
45
30
35
40
45
Force −> [N]
Time [s] −> Force Y −15.6 −15.7 −15.8 −15.9
0
5
10
15
20
25
Force −> [N]
Time [s] −> Force Z 26.9 26.8 26.7 26.6 0
5
10
15
20
25
Time [s] −>
Obr´ azek 20: Experiment s vlivem svˇetla z baterky na rameno 1. Filtrovan´a data ze senzoru na frekvenci 12,5 Hz.
Force −> [N]
Force X −14.56 −14.57 −14.58 −14.59 0
5
10
15
20
25
30
35
40
45
30
35
40
45
30
35
40
45
Force −> [N]
Time [s] −> Force Y −18.25 −18.26 −18.27 −18.28 −18.29 0
5
10
15
20
25
Force −> [N]
Time [s] −> Force Z 10.95 10.9 10.85 10.8 10.75 0
5
10
15
20
25
Time [s] −>
Obr´ azek 21: Experiment s vlivem svˇetla z baterky na rameno 2. Filtrovan´a data ze senzoru na frekvenci 12,5 Hz.
Vliv pˇr´ım´eho svˇetl´ a m´ a tedy vliv na pr´aci silov´eho senzoru. Je nutn´e senzor chr´anit pˇred pˇr´ıstupem svˇetla do tˇela senzoru. Ochrana byla vytvoˇrena pomoc´ı ˇcern´e ˇctvrtky pˇrichycen´e oboustrannou lepenkou kolem senzoru. 19
Vu ´chytu, kter´ ym je senzor pˇripevnˇen k pˇr´ırubˇe robotu se nach´az´ı otvory pro veden´ı kabel˚ u. Tˇemito otvory m´ a svˇetlo pˇr´ıstup k horn´ı ˇc´asti senzoru, kde se v jeho ose nach´az´ı otvor do tˇela senzoru. Bylo tedy tˇreba zast´ınit i tento otvor. Pr˚ uˇrez cel´eho senzoru a zaslepen´ı otvor˚ u je zobrazeno na obr´ azku 22. Bylo d˚ uleˇzit´e, aby se pruh ˇctvrtky nedot´ ykal uchycen´ı chapadla, nebo spodn´ı ˇc´asti senzoru. Proto se pomoc´ı oboustrann´e lepenky vytvoˇrila mezera, kter´a dotyku zabraˇ nuje. Fin´aln´ı ochrana senzoru je zobrazena na obr´ azku 23. T´ım bylo zabr´anˇeno pˇr´ıstupu svˇetla do senzoru a mohlo se pˇrej´ıt k identifikaci dalˇs´ıch parametr˚ u senzoru.
Obr´ azek 22: Pr˚ uˇrez silov´eho senzoru a zaslepen´ı otvor˚ u
Obr´ azek 23: Detail ochrany senzoru pˇred pˇr´ıstupem svˇetla do tˇela senzoru
20
3.4
Teplota
Jiˇz pˇri experimentech s elektrick´ ym ruˇsen´ım, tak i u mechanick´ ych kmit˚ u, se hledala pˇr´ıˇcina kol´ıs´an´ı pr˚ umˇern´e hodnoty sign´ alu. Tenzometr, kter´ y mˇeˇr´ı u ´ˇcinky s´ıly a moment˚ u, pracuje na principu zmˇeny vnitˇrn´ıho odporu, vyvolan´eho zmˇenou s´ıly p˚ usob´ıc´ı. Dalˇs´ı parametr, kter´ y ovlivˇ nuje zmˇenu odporu je teplota. Sice se pˇredpokl´ ad´ a, ˇze senzor bude mˇeˇrit s´ılu v kr´atk´em ˇcasov´em horizontu a tedy i zmˇena teploty bude mal´ a, i pˇresto je vˇsak nutn´e tento probl´em promˇeˇrit. Ke sn´ım´ an´ı teploty se pouˇzil TME ethernetov´ y teplomˇer (Obr´azek 24) od firmy Papouch [13]. V´ yhodou vyuˇzit´ı ethernetov´eho teplomˇeru je moˇznost sn´ım´an´ı dat ze silov´eho senzoru a z teplomˇeru nar´ az. T´ım m´ ame data odpov´ıdaj´ıc´ı sil´am pˇriˇrazena k pˇr´ısluˇsn´e teplotˇe.
Obr´ azek 24: Ethernetov´ y teplomˇer TME od firmy Papouch [13]
Pro zjiˇstˇen´ı vlivu teploty na silov´ y senzor byl uskuteˇcnˇen experiment, kdy se kaˇzd´ ych 10 vteˇrin odeˇcetla data ze silov´eho senzoru a z´ arovˇen se odebrala data z teplomˇeru. Sn´ım´an´ım dat z delˇs´ıho intervalu se dostane pˇredstava o vlivu teploty na nasn´ıman´a data ze silov´eho senzoru. Sn´ım´an´ı prob´ıhalo pˇres cel´ y v´ıkend. Program byl spuˇstˇen v p´atek veˇcer a ukonˇcen v pondˇel´ı r´ano. Na obr´ azc´ıch 25, 26 jsou zobrazena namˇeˇren´a data. Z dat vypl´ yv´a znateln´a korelace mezi teplotou a silami senzoru.
21
Forces X Force X −> [N]
temperature −> [°C]
Temperature 23 22.5 22 21.5 1418
0
6
12 18
0
6
12 18
0
−7 −7.5 −8 −8.5
6
1418
0
6
Force Z −> [N]
Force Y −> [N]
8 7.5 7 6.5 1418
0
6
12 18
0
6
12 18
0
6
12 18
0
6
12 18
0
6
12 18
0
6
12 18
0
6
Time −> [h] Forces Z
time −> [h] Forces Y
12 18
0
6
5.5 5 4.5 4 3.5 3 1418
0
6
Time −> [h]
12 18
0
6
Time −> [h]
Obr´ azek 25: Teplotn´ı z´avislost sil pro rameno 1
Forces X Force X −> [N]
temperature −> [°C]
Temperature 23 22.5 22 21.5 1418
0
6
12 18
0
6
12 18
0
6
1.5 1 0.5 0 −0.5 1418
0
6
−37.5 −38 −38.5 −39 1418
0
6
12 18
0
6
12 18
0
6
Time −> [h] Forces Z Force Z −> [N]
Force Y −> [N]
time −> [h] Forces Y
12 18
0
−8 −10 −12 −14 −16 −18 1418
6
Time −> [h]
0
6
12 18
0
6
Time −> [h]
Obr´ azek 26: Teplotn´ı z´avislost sil pro rameno 2
V´ yrobce senzoru pouze uv´ ad´ı, pˇri kter´ ych teplot´ach se m˚ uˇze senzor bezpeˇcnˇe pouˇz´ıt bez moˇzn´ ych ˇskod. Operaˇcn´ı rozsah senzoru je od -20°C do 70°C [5]. V dalˇs´ım dokumentu v´ yrobce uv´ ad´ı, ˇze zmˇeny mˇeˇren´ ych dat v z´ avislosti na teplotˇe nejsou kompenzovan´e a mˇen´ı se pro kaˇzd´ y pˇrevodn´ık zvl´ aˇst’ [7]. Teplotn´ı zmˇeny vˇsech ˇsesti p´ ar˚ u tenzometr˚ u v polom˚ ustc´ıch by mˇela odpov´ıdat stejn´e teplotn´ı 22
z´ avislosti. Na obr´ azku 27 jsou zobrazeny informace z webov´eho prostˇred´ı senzoru o tenzometrech. V ˇcerven´em obdeln´ıku jsou vyznaˇceny data, kter´a NetBox dost´av´a ze senzoru. Tyto hodnoty by mˇela teplota ovlivˇ novat stejnˇe. Pr˚ uchodem pˇres modˇre vyznaˇcenou matici se dost´avaj´ı hodnoty pro s´ıly a momenty. Tato matice ovlivˇ nuje d˚ usledek teplotn´ıch zmˇen na v´ ychoz´ı data, a proto m´a r˚ uzn´ y vliv na jednotliv´e pˇrevodn´ıky.
Obr´ azek 27: Syst´emov´e informace o tenzometrech ve webov´em prostˇred´ı senzoru [5]
Abychom vliv teploty mohli odstranit, museli bychom to ˇreˇsit jiˇz v principu vnitˇrn´ıho zapojen´ı senzoru. Napˇr´ıklad jin´ y v´ yrobce tenzometrick´ ych senzoru Kulite [15] se touto z´aleˇzitost´ı zab´ yv´a a popisuje moˇzn´ a ˇreˇsen´ı eliminace vlivu teploty. Tato firma ve sv´ ych tenzometrech pouˇz´ıv´a span kompenzaci. Span kompenzace je technika pro pouˇzit´ı bud’ pˇredˇradn´ıku pro udrˇzen´ı konstantn´ıho bud´ıc´ıho napˇet´ı tenzometru, nebo boˇcn´ıku pro udrˇzen´ı konstantn´ıho bud´ıc´ıho proudu tenzometru. Firma Kulite pouˇz´ıv´ a tenzometry zapojen´e do Wheatstone˚ uva m˚ ustku a pˇredˇradn´ıky, popˇr´ıpadˇe s boˇcn´ıky, udrˇzuj´ı konstantn´ı napˇet´ı, popˇr´ıpadˇe proudu. V´ıce o t´eto problematice je pops´an´e v pˇr´ıruˇcce od firmy Kulite [15]. V naˇsem pˇr´ıpadˇe se do u ´trob senzoru nem´ame ˇsanci dostat k upraven´ı jeho vnitˇrn´ıho zapojen´ı. Mus´ıme se tedy omezit na doˇcasn´e pouˇz´ıv´an´ı senzoru po kr´atkou dobu, kde vliv teploty je pro naˇsi ˇcinnost stejn´ y. Pˇr´ıpadnˇe bl´ıˇze zjistit teplotn´ı z´avislost v´ ystupu senzoru na jeho vnitˇrn´ıch 23
parametrech (zvyraznˇen´ a data v obr´ azku 27).
3.5
Eliminace vlivu t´ıhy chapadla
Senzor se nach´ az´ı v podstatˇe v z´ apˇest´ı robotu. Mˇeˇr´ı s´ıly a momenty vˇseho, co je na senzor zavˇeˇseno a tedy se mˇeˇr´ı i vliv t´ıhy chapadla. Jelikoˇz potˇrebujeme mˇeˇrit s´ıly a momenty v prstech chapadla, potˇrebujeme zjistit v´ ahu a polohu teˇzistˇe chapadla. 3.5.1
V´ ypoˇ cet parametr˚ u chapadla
Na obr´ azku 28 je zn´ azornˇen zp˚ usob pˇrepoˇctu svˇetov´ ych souˇradnic WCS (World Coordinating System) do souˇradnic odpov´ıdaj´ıc´ım chapadlu HCS (Hand Coordinating System). Vektor g znaˇc´ı vliv gravitaˇcn´ı s´ıly, vektor rg je vektor vych´azej´ıc´ı z HCS a smˇeˇruj´ıc´ım do tˇeˇziˇstˇe chapadla. R(q) je transformace z WCS do HCS a q znaˇc´ı natoˇcen´ı motor˚ u robotu.
Obr´ azek 28: Princip mˇeˇren´ı sil senzoru v chapadlu [9]
S´ıla p˚ usob´ıc´ı na chapadlo odpov´ıda: F x F = mg = Fy , Fz
(3)
kde F znaˇc´ı s´ılu p˚ usob´ıc´ı na chapadlo, m odpov´ıd´a nezn´am´e hmotnosti a g je vektor gravitace. Podobnˇe moment setrvaˇcnosti odpov´ıd´a:
24
M x M = mr × g = My , Mz
(4)
M je hledan´ y moment, r je nezn´ am´ y vektor z HCS do tˇeˇziˇstˇe chapadla. Rovnice 3 a 4 v maticov´em tvaru odpov´ıda:
1
0 0 F = m 0 M rz −ry
0 1 0 −rz 0 rx
0
0 1 g = mQg . ry −rx 0
(5)
Orientace chapadla v prostoru WCS je tvoˇrena pomoc´ı rotaˇcn´ı matice: r 11 R(q) = r21 r31
r12 r22 r32
r13
r23 . r33
(6)
Pron´ asoben´ım vektoru ve WCS a transponovan´e rotaˇcn´ı matic´ı R(q)’ z´ısk´ame vektor v HCS a tedy napˇr´ıklad gravitaˇcn´ı vektor se pˇrevede n´asledovnˇe:
0
gG = R0 (q)gW = R0 (q) 0 . −g
(7)
Vektor rG , kter´ y smˇeˇruje ze silov´eho senzoru do tˇeˇziˇstˇe chapadla m´a tvar: r x rG = ry , rz
(8)
tento vektor je konstant´ı v HCS. Z pˇredchoz´ıch experiment˚ u vypl´ yv´a, ˇze na senzor p˚ usob´ı r˚ uzn´e efekty, kter´e ovlivˇ nuj´ı jeho mˇeˇren´ı. Jedn´a se o chyby, kter´e jdou v kr´atkodob´em uˇzit´ı senzoru zredukovat pomoc´ı offset˚ u:
F = Fm − Fo ,
(9)
M = Mm − Mo ,
(10)
25
kde M, F jsou skuteˇcn´e hodnoty p˚ usob´ıc´ı na chapadlo, Mm , Fm jsou hodnoty zmˇeˇren´e silov´ ym senzorem a Mo , Fo jsou pomalu se mˇen´ıc´ı offsety. Kombinac´ı rovnic (5), (7), (9) a (10) z´ısk´ame:
0
F F F = m − o = mQR0 (q) 0 . M Mm Mo −g
(11)
Tato rovnice obsahuje celkem 10 nezn´ am´ ych, tˇri od silov´ ych i momentov´ ych offset˚ u, polohy tˇeˇziˇstˇe chapadla rx , ry , rz v matici Q a v´ ahu chapadla m. Osamocen´ım sil a moment˚ u z´ısk´av´ame:
0
F = Fm − Fo = mR0 (q) 0 , −g 0 0 −rz ry 0 M = Mm − Mo = m rz 0 −rx R (q) 0 . −g −ry rx 0
(12)
(13)
Pˇreps´ an´ım rovnice (12) dost´ av´ ame v´ ysledek:
AF xF = bF ,
(14)
kde nezn´ am´ a xF reprezentuje n´ asleduj´ıc´ı matici obsahuj´ıc´ı silov´e offsety a v´ahu chapadla: Fxo Fyo . xF = Fzo m
(15)
AF reprezentuje: 1 AF = 0 0
0
0
1
0
0
1
−r13 g
−r23 g −r33 g
(16)
a mˇeˇren´ a matice bF reprezentuje: F x bF = Fy . Fz
(17)
AM xM = bM ,
(18)
Obdobnˇe pro rovnici (13) z´ısk´ ame:
26
kde nezn´ am´ a xM reprezentuje n´ asleduj´ıc´ı matici obsahuj´ıc´ı offsety moment˚ u a polohu tˇeˇziˇstˇe chapadla:
xM
Mx o Myo Mzo . = rx ry rz
(19)
AM reprezentuje: AM
1 0 0 = 0 1 0 0 0 1
0
−mr33 g
mr33 g
0
−mr23 g
mr13 g
mr23 g
−mr13 g 0
(20)
a mˇeˇren´ a matice bM reprezentuje: bM
M x = My . Mz
(21)
Jelikoˇz matice AM obsahuje kromˇe moment˚ u i hmotnost m, mus´ı se nejprve vypoˇc´ıtat rovnice ˇ sen´ı se d´ s´ıly AF xF = bF . Reˇ a z´ıskat vyuˇzit´ım SVD rozkladu (Singular Value Decomposition. ˇ sen´ı pˇredch´azej´ıc´ı rovnice m´a tvar: Uˇzit´ım SVD na matici AF z´ısk´ ame tˇri matice UF , SF , VF . Reˇ Fxo F yo T . xF = VF S+ U b = F F F Fzo m
(22)
Ze znalosti hodnoty hmotnosti m m˚ uˇzeme spoˇc´ıtat i rovnici pro momenty AM xM = bM . Obdobnˇe jako u sil je vyuˇzito SVD rozkladu a ˇreˇsen´ı m´a tvar:
T xM = VM S+ M UM bM
Mx o Myo Mzo . = rx ry rz
(23)
Po nalezen´ı offset˚ u sil, moment˚ u, polohy tˇeˇziˇstˇe chapadla a jeho v´ahy lze vypoˇc´ıtat skuteˇcn´e s´ıly a momenty mˇeˇren´e silov´ ym senzorem. Z rotaˇcn´ı matice robotu zn´ame polohu senzoru v prostoru a tedy i vektory odpov´ıdaj´ıc´ı mˇeˇr´ıc´ım os´am [9].
27
3.5.2
Experimenty s re´ aln´ ym senzorem
Prvn´ı pokusy s v´ ypoˇctem ofset˚ u senzoru byly provedeny jeˇstˇe v dobˇe, kdy nebyl senzor chr´anˇen pˇred svˇetlem a nebyl eliminov´ an vliv tramvaj´ı. Pr´avˇe d´ıky potˇrebˇe z´ısk´avat pˇresn´a data a tedy odstranit pˇr´ıspˇevek chapadla, bylo p´ atr´ano po zdroj´ıch nepˇresnost´ı. Algoritmus pro v´ ypoˇcet offset˚ u potˇrebuje zn´at rotaˇcn´ı matice a data ze senzoru v r˚ uzn´ ych pozic´ıch. Rotaˇcn´ı matice lze z´ıskat z ros. Prvn´ı pokus byl proveden z 20 pozic robotu, popsan´ ych v tabulce 5, kter´ a ud´ av´ a natoˇcen´ı posledn´ıch 3 kloub˚ u robotu (R,B,T). V kaˇzd´e pozici robot setrval 8 vteˇrin, z toho v posledn´ıch 5-ti vteˇrin´ach sn´ımal s´ıly a momenty, kter´e zpr˚ umˇeroval. T´ım se vyˇreˇsil vliv tramvaj´ı a moˇzn´e pˇrechodov´e jevy z pohybu robotu z jedn´e pozice do druh´e. ID
Pozice
R
B
T
1:3
Dole
-58:45:32
48
0
4:15
Uprostˇred
-13
93
-180:30:180
16:18
Nahoˇre
-58:45:32
138
0
19
ˇ e dol˚ Cistˇ u
-13
0
0
20
ˇ e nahoru Cistˇ
-13
180
0
Tabulka 5: Pozice pro prvn´ı pokus s offsety
Po pouˇzit´ı algoritmu pro v´ ypoˇcet offset˚ u jsme dostaly v´ ysledky pro pouˇzit´e pozice: 0.17 −0.66 FO = −13.39 N, MO = 0.28 N m, r = −0.3 cm, m = 2.86kg. 0.14 8.7 −6.24
−6.13
Pˇresnost v´ ysledk˚ u v jednotliv´ ych pozic´ıch se zjist´ı z rovnic 14, 18, ze kter´ ych plyne vztah:
AF xF − bF = 0,
(24)
AM xM − bM = 0.
(25)
Pokud si ovˇsem vyneseme jednotliv´e rozd´ıly z´ıskan´ ych offset˚ u a k nim odpov´ıdaj´ıc´ım matic´ım AF , bf , AM , bM , tak nez´ısk´ ame nulovou matici, ale jist´e chybn´e s´ıly, jeˇz budu v n´asleduj´ıc´ım textu naz´ yvat residua. Zb´ yvaj´ı residua, kter´ a znaˇc´ı chybu mˇeˇren´ı silov´ ych a momentov´ ych vektor˚ u pro jednotliv´e pozice. Tato residua jsou zobrazena na obr´azku 29. Chyba v sil´ach se pohybuje v rozmez´ı ±7, 5N a chyba moment˚ u se pohybuje v rozmez´ı ±0, 65N m, coˇz je pro naˇse u ´ˇcely pˇr´ıliˇs mnoho. Proto se p´ atralo po moˇzn´ ych vysvˇetlen´ıch tˇechto chyb. Senzor byl ochr´anˇen pˇred svˇetlem a byla kontrolov´ ana teplota v m´ıstnosti, zda se pˇri pr´aci s robotem pˇr´ıliˇs nezmˇenila.
28
Errors of Force
Errors of Torque
8
0.8 Fx Fy Fz
6
0.6
0.4
Error Torque [Nm] −>
4
Error Force [N] −>
Tx Ty Tz
2
0
−2
0.2
0
−0.2
−4
−0.4
−6
−0.6
−8 0
5
10
15
−0.8 0
20
Positions [n] −>
5
10
15
20
Positions [n] −>
Obr´ azek 29: Residua sil a moment˚ u z 20 pozic pro rameno 2
Abychom dostali pˇresnˇejˇs´ı v´ ysledky pro cel´ y konfiguraˇcn´ı prostor robotu, mus´ıme vybudit v´ıce odliˇsn´ ych pozic pro silov´ y senzor, proto v dalˇs´ım pokusu bylo generov´ano 140 pozic. Pozice byly odliˇsn´e v posledn´ıch tˇrech motorech. Vˇzdy se vzal maxim´aln´ı a minim´aln´ı rozsah motoru, kter´ y se rozdˇelil na stejnˇe velk´e d´ıly. Rozsah motoru R se rozdˇelil na 7 d´ıl˚ u, jeho vliv na koncov´ y bod je nejvˇetˇs´ı. Rozsah motoru B se rozdˇelil na 5 d´ıl˚ u a rozsah motoru T se rozdˇelil na 4 d´ıly. T´ım se pro kaˇzdou pozici vygenerovanou motory R a B odeˇctou v´ ysledky ze senzoru, kter´ y se ot´aˇc´ı kolem sv´e osy Z. V´ ysledn´e s´ıly, momenty, poloha tˇeˇziˇstˇe a v´aha chapadla z tohoto experimentu jsou:
−0.63 0.03 FO = −11, 28 N, MO = 0.14 N m, r = −0.03 cm, m = 2.71kg. −15.01 0.15 9.34 −6.11
29
Errors of Force
Errors of Torque
1.5
0.03 Fx Fy Fz
Tx Ty Tz 0.02
Error Torque [Nm] −>
Error Force [N] −>
1
0.5
0
−0.5
−1
−1.5 0
0.01
0
−0.01
−0.02
50
100
−0.03 0
150
Positions [n] −>
50
100
150
Positions [n] −>
Obr´ azek 30: Residua sil a moment˚ u ze 140 pozic pro rameno 2
Z obr´ azku 30 je vidˇet zlepˇsen´ı oproti pokusu s 20 pozicemi. Nejvˇetˇs´ı chyba v silov´e sloˇzce je v ose Z a jedn´ a se pˇribliˇznˇe o 1,4 N. V ose Y senzor vykazuje maxim´aln´ı chybu 0,85 N a v ose X pouze 0,3 N. Pˇresnost moment˚ u se zlepˇsila o ˇr´ad. V´ıce podrobnost´ı je zobrazeno v tabulce 6. S´ıly
Maxim´ aln´ı absolutn´ı chyba [N]
Smˇerodatn´a odchylka [N]
FX
0.3035
0.1203
FY
0.8477
0.4753
FZ
1.4277
0.7155
Momenty
Maxim´ aln´ı absolutn´ı chyba [Nm]
Smˇerodatn´a odchylka [Nm]
MX
0.0208
0.0103
MY
0.0284
0.0133
MZ
0.0053
0.0027
Tabulka 6: Chyby a smˇerodatn´e odchylky senzoru pro pokus se 140 pozicemi
Nev´ yhodou tˇechto pozic je pˇr´ıliˇsn´ a komplikovanost. Chyby sil a moment˚ u se sice sn´ıˇzily, ale dalˇs´ı identifikace pˇr´ıˇcin chyb je obt´ıˇzn´a. U chyb sil a moment˚ u se zd´a b´ yt jist´a symetrie, proto byla mˇeˇrena data v dalˇs´ım experimentu. Zde bylo robotem vygenerov´ano 100 pozic a to pouze s pˇrispˇen´ım ˇctvrt´eho a ˇsest´eho kloubu (odpov´ıdaj´ıc´ı motor˚ um R a T). Kaˇzd´ y z rozsah˚ u se rozdˇelil na desetiny. Pro algoritmus poˇc´ıtaj´ıc´ı offsety se nyn´ı pouˇzila optimalizaˇcn´ı funkce lsqcurvefit, kter´a optimalizuje nezn´ am´e (v´ aha chapadla a pozice jeho tˇeˇziˇstˇe, offsety sil a moment˚ u) pomoc´ı nejmenˇs´ıch ˇctverc˚ u tak, aby neline´ arn´ı funkce odpov´ıdala zmˇeˇren´ ym dat˚ um (zmˇeˇren´e s´ıly, momenty a rotaˇcn´ı matice). V´ ysledky residu´ı jsou v obr´ azku 31 a hodnoty sil, moment˚ u, v´ahy a polohy tˇeˇziˇstˇe vych´az´ı:
30
−0.04 −0.827 FO = −11, 87 N, MO = 0.14 N m, r = −0.07 cm, m = 2.46kg 9.59 0.16 −5.63
−8.44
Errors of Force
Errors of Torque
2
0.15 Fx Fy Fz
1.5
Tx Ty Tz
0.1
Error Torque [Nm] −>
Error Force [N] −>
1
0.5
0
−0.5
0.05
0
−0.05
−0.1 −1 −0.15
−1.5
−2 0
20
40
60
80
−0.2 0
100
Positions [n] −>
20
40
60
80
100
Positions [n] −>
Obr´ azek 31: Residua sil a moment˚ u ze 100 pozic pro rameno 2
S´ıly
Maxim´ aln´ı absolutn´ı chyba [N]
Smˇerodatn´a odchylka [N]
FX
1.3251
0.7419
FY
1.7849
0.9097
FZ
1.519
0.7718
Momenty
Maxim´ aln´ı absolutn´ı chyba [Nm]
Smˇerodatn´a odchylka [Nm]
MX
0.1223
0.0708
MY
0.1301
0.0685
MZ
0.0067
0.0033
Tabulka 7: Chyby a smˇerodatn´e odchylky senzoru pro pokus se 100 pozicemi
Hlavn´ı myˇslenka tohoto pokusu byla ve vynesen´ı residu´ı v z´avislosti na poloh´ach motor˚ u R a T. T´ım z´ısk´ ame 3D graf, kde v z´ avislosti na motorech (mˇr´ıˇzka) vyn´aˇs´ıme velikost residua. V´ ysledky pro jednotliv´e osy jsou v obr´ azc´ıch 32, 33, 34.
31
1.5
Error of Force X
1 0.5 0 −0.5 −1 −1.5 4 3
2 0 0
−2 −4
q6
−2
1
2
−1
−3
q4
Obr´ azek 32: Vynesen´ı residu´ı pro osu X pro rameno 2
2
Error of Force Y
1.5 1 0.5 0 −0.5 −1 −1.5 4 3
2 0 0
−2 −4
q6
−2
−1
−3
q4
Obr´ azek 33: Vynesen´ı residu´ı pro osu Y pro rameno 2
32
1
2
1.5
Error of Force Z
1 0.5 0 −0.5 −1 −1.5 −2 4 3
2 0 0
−2 −4
q6
−2
1
2
−1
−3
q4
Obr´ azek 34: Vynesen´ı residu´ı pro osu Z pro rameno 2
Mˇr´ıˇzky pˇripom´ınaj´ı prostorovou sinusoidu a tedy je vidˇet, ˇze residua odpov´ıdaj´ıc´ım jednotliv´ ym poloh´ am maj´ı jistou z´ avislost. Pro interpretaci tˇechto chyb n´am m˚ uˇze pomoci Fourierova transformace, ze kter´e by se dal zjistit model tˇechto chyb a po nalezen´ı modelu p´atrat po pˇr´ıˇcinˇe. Nalezen´ım a odstranˇen´ım pˇr´ıˇciny by jsme mohli z´ıskat menˇs´ı residu´aln´ı s´ıly a t´ım jeˇstˇe v´ıce zpˇresnit mˇeˇren´ı sil a moment˚ u. Bohuˇzel se n´ am jiˇz nepodaˇrilo v´ıce zpˇresnit data mˇeˇren´a senzorem a pˇrikroˇcili jsme k aplikac´ım senzoru. Pˇri spuˇstˇen´ı silov´eho senzoru z prostˇred´ı Ros se kromˇe topik˚ u s origin´aln´ımi a filtrovan´ ymi daty ze senzoru spust´ı i program, kter´ y od filtrovan´eho sign´alu odˇc´ıt´a vliv chapadla a publikuje ho na nov´em topiku (/r1 force data filtered,/r2 force data filtered ).
33
4
Aplikace senzoru
V minul´e kapitole se prob´ıral vliv okol´ı na samotn´a data silov´eho senzoru. C´ılem bylo zefektivnit jeho ˇcinnost, aby se dal co nejl´epe pouˇz´ıt pro aplikace potˇrebn´e pro pr´aci robotu. V t´eto kapitole jsou pops´ any ˇctyˇri moˇzn´ a vyuˇzit´ı senzoru v pr´aci s odˇevy. Z experiment˚ u vlivu t´ıhy chapadla na silov´ y senzor se zjistilo, ˇze v r˚ uzn´ ych konfigurac´ıch senzor nedok´ aˇze odstranit vliv orientace chapadla ve svˇetov´ ych souˇradnic´ıch. To zp˚ usobuje residua, neboli silov´e chyby pro urˇcitou konfiguraci. V tomto obecn´em smyslu je tˇeˇzk´e vyuˇz´ıt senzor pro manipulaci s textilem. Jsou vˇsak pˇr´ıpady, kdy n´am zbytkov´e s´ıly nevad´ı a to napˇr´ıklad tehdy, budeme-li udrˇzovat jedno natoˇcen´ı chapadla pˇri vykon´av´an´ı r˚ uzn´ ych u ´kol˚ u. Pro efektivn´ı funkˇcnost robotu je velmi d˚ uleˇzit´a rychlost ˇr´ıd´ıc´ı smyˇcky, kter´a je ovlivnˇena hardwarem a komunikac´ı robotu s poˇc´ıtaˇcem. Podrobnˇejˇs´ı popis jednotliv´ ych u ´loh je pops´an v n´ asleduj´ıc´ıch podkapitol´ ach. S vyv´ıjen´ım program˚ u jsem spolupracoval s kolegy z projektu Clopema Vladimirem Petrikem a Liborem W´ agnerem. Jejich zkuˇsenost a orientace v ˇr´ızen´ı robotu mi byla oporou.
4.1
N´ araz
Data ze senzoru n´ am umoˇzn ˇuj´ı detekovat napˇr´ıklad nepˇredpokl´adan´ y n´araz robotu do pˇrek´aˇzky. Tohoto principu se vyuˇz´ıv´ a pˇri uchycen´ı obleˇcen´ı ze stolu, kde robot s otevˇren´ ym chapadlem kles´a do doby, neˇz se dotkne stolu. Zmˇena s´ıly detekovan´a robotem zp˚ usob´ı zastaven´ı pohybu smˇerem dol˚ u a robot zaˇcne pohyb vodorovnˇe k obleˇcen´ı, t´ım se dostane pod nˇej a m˚ uˇze ho uchopit. Program pro samotnou detekci je jednoduchou smyˇckou, kde robot vykon´av´a urˇcit´ y pohyb, pˇri nemˇz asynchronnˇe kontroluje s´ılu ze senzoru. Pokud je s´ıla vyvolan´a n´arazem robotu na pˇrek´ aˇzku vetˇs´ı neˇz stanoven´ y pr´ ah, pohyb robotu se zastav´ı. Zjednoduˇsen´a funkce programu stop on edge.cpp je pops´ ana v algoritmu 1.
34
Data: S´ıla Result: Zastaven´ı robotu n´ arazem zmˇeˇren´ı aktu´ aln´ı s´ıly Fm ; resetov´ an´ı offset˚ u Fo = Fm ; spuˇstˇen´ı pohybu; while robot se pohybuje do zmˇeˇr s´ılu Fm ; if Fm − Fo > pr´ ah then zastav pohyb robotu else pokraˇcuj v pohybu end end Algoritmus 1: Detekce n´arazu robotu Pro odzkouˇsen´ı programu byl pouˇzit st˚ ul, ke kter´emu klesal robot po u ´seˇcce. Po n´arazu do stolu se robot zastavil. Na poˇc´ atku programu doch´az´ı k inicializaci robotu, kde robot prov´ad´ı pˇresun do poˇc´ ateˇcn´ı polohy a nastav´ı komunikaci se silov´ ym senzorem. V dalˇs´ım kroku se generuje trajektorie zadan´ a robotu, v naˇsem pˇr´ıpadˇe smˇerem dol˚ u proti stolu. D˚ uleˇzit´a ˇc´ast pro pr´aci robotu je resetov´ an´ı offsetu silov´eho senzoru. T´ım odstran´ıme residu´aln´ı s´ıly senzoru pro aktu´aln´ı konfiguraci. Asynchronnˇe se kaˇzd´ ych 50 milisekund kontroluje, zda-li nedoˇslo ke kolizi, pokud ne, robot pokraˇcuje v pohybu. Prahov´ a hodnota pro detekci n´arazu byla stanovena na 2.5 N.
4.2
Nataˇ zen´ı
Myˇslenka tohoto u ´kolu je doc´ılit dostateˇcn´eho nataˇzen´ı odˇevu. Nataˇzen´ı je nutn´e ke spr´avn´emu sloˇzen´ı obleˇcen´ı, aby nevznikaly z´ ahyby na l´atce. I kdyˇz robot pracuje s obrazem z RBG-D kamer a robotick´e hlavy, je sloˇzit´e rozeznat, zdali je odˇev dostateˇcnˇe napnut. Tuto aplikaci m˚ uˇze vyˇreˇsit pr´ avˇe pouˇzit´ı silov´eho senzoru. K probl´emu se pˇristupovalo obdobnˇe, jako u pˇredch´azej´ıc´ıho programu. Struˇcn´ y popis programu stop on force.cpp v algoritmu 2.
35
Data: S´ıla Result: Nataˇzen´ı textiln´ıho materi´alu uchopen´ı odˇevu; zmˇeˇren´ı aktu´ aln´ı s´ıly Fm ; resetov´ an´ı offset˚ u Fo = Fm ; spuˇstˇen´ı roztahov´ an´ı odˇevu; while robot se pohybuje do zmˇeˇr s´ılu Fm ; if Fm − Fo > pr´ ah pro nataˇzen´ı then zastav pohyb robotu else pokraˇcuj v pohybu end end Algoritmus 2: Nataˇzen´ı materi´alu Oproti kontrole n´ arazu se zde pracuje jiˇz s obleˇcen´ım. Hlavn´ı rozd´ıl mezi obˇema programy je v pouˇzit´ı obou ramen robotu, kter´ a se od sebe vzdaluj´ı po pˇr´ımce. D˚ uleˇzitou ˇc´ast´ı programu je nutnost vloˇzit do chapadel l´ atku, kterou chceme napnout. Po vloˇzen´ı odˇevu do chapadel se resetuj´ı offsety vyvolan´e jak vahou odˇevu, tak i residui pro pˇr´ısluˇsnou konfiguraci a zaˇcne se s nap´ın´an´ım. Opˇet se asynchronnˇe kontroluje, zdali s´ıla nepˇrekroˇcila mez, kter´a byla nastavena na 1 N. Prahov´a hodnota mus´ı odpov´ıdat pouˇzit´e l´ atce.
4.3
Zdvih
Myˇslenka pouˇzit´ı projektu Clopema v praxi je takov´a, ˇze pˇrijde hromada vypran´eho obleˇcen´ı z praˇcky a suˇsiˇcky, robot n´ aslednˇe dok´ aˇze pr´adlo roztˇr´ıdit a sloˇzit. Pro splnˇen´ı tohoto u ´ˇcelu je nutn´e, aby robot vˇedˇel, kdy nˇejak´e obleˇcen´ı jiˇz drˇz´ı cel´e ve vzduchu. Pot´e jiˇz m˚ uˇze zkouˇset obleˇcen´ı pomoc´ı pˇrechyt´ av´ an´ı a urovn´ av´ an´ı identifikovat a n´aslednˇe sloˇzit. Po vyˇreˇsen´ı pˇredch´ azej´ıc´ıch u ´loh se k tomuto u ´kolu pˇristupuje obdobnˇe. Probl´em s residu´aln´ımi silami se ˇreˇs´ı resetov´ an´ım. Funkˇcnost programu rise up.cpp je pops´ana v algoritmu 3.
36
Data: S´ıla Result: Nataˇzen´ı textiln´ıho materi´alu uchopen´ı textilu; zmˇeˇren´ı aktu´ aln´ı s´ıly Fm ; resetov´ an´ı offset˚ u Fo = Fm ; spuˇstˇen´ı zdvihnut´ı; while robot se pohybuje do odeˇcti s´ılu Fm ; if Fm − Fo < pr´ ah pro zdvih then zastav pohyb robotu else resetov´ an´ı offset˚ u Fo = Fm ; pokraˇcuj v pohybu end end Algoritmus 3: Zdvih textilu V´ ysledn´ y k´ od je v podstatˇe totoˇzn´ y jako u pˇredchoz´ıch program˚ u. V programu je nastaven zdvih o 40 centimetr˚ u, aby robot nenarazil do stropu m´ıstnosti, ve kter´e se nach´az´ı. V´ yrazn´ y rozd´ıl mezi pˇredchoz´ımi programy je v pr´ aci s daty silov´eho senzoru. U pˇredchoz´ıch aplikac´ı se hl´ıdalo, kdy s´ıla pˇrekroˇc´ı jistou mez, v t´eto aplikaci se mus´ı kontrolovat pˇr´ıspˇevky sil mezi jednotliv´ ymi f´azemi pˇri zdvih´ an´ı. Myˇslenka je ta, ˇze pˇri zved´an´ı roste u ´ˇcinek v´ahy obleˇcen´ı, kter´e jiˇz neleˇz´ı na podloˇzce. Pokud tento rozd´ıl bude menˇs´ı neˇz hranice, povaˇzuje se obleˇcen´ı za plnˇe zdvihnut´e a zastav´ı se pohyb robotu, n´ aslednˇe program konˇc´ı. Tato podm´ınka se asynchronnˇe kontroluje kaˇzd´ ych 0.33 vteˇriny. Bohuˇzel tento program nefunguje tak, jak by mˇel. Je to zp˚ usobeno zmˇenami sil, vyvolan´e pohybem robotu. K probl´emu nelze pˇristupovat pouze t´ım, ˇze kontrolujeme rozd´ıl sil mezi dvˇemi po sobˇe jdouc´ımi kontrolami, protoˇze tyto zmˇeny jsou velmi ovlivnˇeny kol´ıs´an´ım mˇeˇren´ ych sil. V obr´ azku 35 nahoˇre je zobrazen pr˚ ubˇeh mˇeˇren´e absolutn´ı zmˇeny s´ıly v pr˚ ubˇehu zdvihnut´ı. Z poˇc´ atku je zmˇena s´ıly velmi v´ yrazn´ a, ale po velk´e zmˇenˇe je jej´ı n´arust jiˇz menˇs´ı z poh´ ych zmˇen mezi mˇeˇren´ım je ˇspatnˇe viditeln´e, kdy je jiˇz odˇev u ´plnˇe zvednut. Posledn´ıch 30 vzork˚ u odpov´ıda jiˇz okamˇziku, kde je odˇev jiˇz cel´ y ve vzduchu. V obr´azku 35 dole je pr˚ ubˇeh smˇerodatn´e odchylky pro 25 po sobˇe jdouc´ıch namˇeˇren´ ych sil. Jedna z moˇznosti detekce zvednut´eho odˇevu by mohla b´ yt pr´avˇe v mˇeˇren´ı smˇerodatn´e odchylky urˇcit´eho mnoˇzstv´ı po sobˇe jdouc´ıch mˇeˇren´ı. Dalˇs´ı moˇznost je v pˇredˇel´an´ı programu tak, aby se podm´ınka nekontrolovala asynchronnˇe. Vˇzdy po urˇcit´em pohybu by se robot zastavil a zmˇeˇrila by se s´ıla. Takto z´ıskan´ a data by nemˇela b´ yt zat´ıˇzen´a chybou vyvolanou pohybem robotu.
37
Standard deviations −> [N] Magnitude of Force −> [N]
Z d˚ uvodu nedostatku ˇcasu je proto tento program zat´ım nefunkcn´ı. Force every 0.33s 2 1.5 1 0.5 0 0
50
100
150
Samples −> [n] Moveing standard deviations of every 25 forces 0.8 0.6 0.4 0.2 0 0
20
40
60
80
100
120
140
Samples −> [n]
Obr´ azek 35: Pr˚ ubˇeh mˇeˇren´e s´ıly pˇri zved´an´ı obleˇcen´ı (nahoˇre) a pr˚ ubˇeh smˇerodatn´e odchylky pro 25 pohybuj´ıc´ıch se mˇeˇren´ı (dole)
4.4
Veden´ı
Mnoho pr˚ umyslov´ ych robot˚ u v praxi vykon´av´a st´ale stejn´ y pohyb. K nauˇcen´ı pohybu se pouˇz´ıvaj´ı napˇr´ıklad d´ alkov´e ovladaˇce, kter´e dok´aˇzou ovl´adat natoˇcen´ı jednotliv´ ych kloub˚ u. S vyuˇzit´ım silov´eho senzoru lze naprogramovat i u ´lohu, v n´ıˇz je koncov´e chapadlo robotu ˇr´ızeno pˇr´ımo ˇclovˇekem. T´ım se m˚ uˇze robot nauˇcit trajektorie potˇrebn´e k r˚ uzn´ ym u ´loh´am. Jedn´ a se o zopakov´ an´ı experimentu firmy Weis Robotics [14], kde se sv´ ym v´ yrobkem demonstrovali jedno z moˇzn´ ych pouˇzit´ı. V jejich pˇr´ıpadˇe vˇsak nebylo na silov´em senzoru pˇripevnˇeno chapadlo a pravdˇepodobnˇe nemuseli ani filtrovat vliv tramvaj´ı. T´ım z´ıskali ovl´ad´an´ı na frekvenci 500 Hz. Hlavn´ı rozd´ıl v t´eto u ´loze je v pouˇzit´ı dat ze senzoru bez resetov´an´ı offset˚ u. Jelikoˇz m˚ uˇzeme robotem nat´ aˇcet podle vˇsech tˇr´ı os, mus´ıme br´at data ze senzoru takov´a, jak´a jsme je z´ıskali z kapitoly Eliminace vlivu t´ıhy chapadla. Mus´ıme tedy br´at v u ´vahu velikost maxim´aln´ıch offset˚ ua v tomto p´ asmu necitlivosti neh´ ybat s robotem.
38
Data: S´ıla Result: Veden´ı chapadla robotu rukou inicializace robotu; while ros je v poˇr´ adku do z´ıskej smˇer silov´eho a momentov´eho vektoru; if s´ıla je vˇetˇs´ı neˇz pr´ ah pro veden´ı then spoˇc´ıtej vektor smˇeru silov´eho vektoru; end if moment je vˇetˇs´ı neˇz pr´ ah pro veden´ı then spoˇc´ıtej orientaci natoˇcen´ı silov´eho senzoru; end if s´ıla ani moment nejsou vˇetˇs´ı neˇz pr´ ah pro veden´ı then ˇcekej 0.01s, continue; end Zjisti souˇcasnou polohu a napl´ anuj trajektorii podle vektoru s´ıly a orientaci natoˇcen´ı; Proved’ pohyb; end Algoritmus 4: Veden´ı chapadla robotu Algoritmus 4 popisuje princip programu compliant motion.cpp. V inicializaci se robot nastav´ı do v´ ychoz´ı pozice, nav´ aˇze se spojen´ı s filtrovan´ ym silov´ ym senzorem. V nekoneˇcn´e smyˇcce se neust´ ale odeb´ıraj´ı data ze senzoru a kontroluje se, zda-li jsou vˇetˇs´ı neˇz nastaven´e prahy. Pr´ah pro s´ılu je kv˚ uli nenulov´ ym offset˚ um nastaven na velikost 5N, pr´ah pro moment je nastaven na 1Nm. Pokud je s´ıla nebo moment vˇetˇs´ı neˇz pr´ah, spoˇcte se velikost a smˇer posuvu, pˇr´ıpadnˇe i zmˇena natoˇcen´ı. Velikost a smˇer posuvu a natoˇcen´ı se z´ıskaj´ı ze zmˇen sil nebo moment˚ u namˇeˇren´e senzorem a pˇren´ asoben´e konstantou, jeˇz byla experiment´alnˇe stanovena. V pˇr´ıpadˇe, ˇze ani jeden z parametr˚ u nepˇrekroˇcil pr´ ah, se pokraˇcuje ve sn´ım´an´ı. Ze souˇcasn´e polohy a spoˇcten´eho smˇeru s natoˇcen´ım se napl´ anuje potˇrebn´ a trajektorie. Rychlost pohybu spoˇc´ıv´a ve vnitˇrn´ı ˇr´ıd´ıc´ı struktuˇre robotu, kde se poˇc´ıtaj´ı pˇr´ım´e i inversn´ı kinematick´e u ´lohy, kontroluje se kolize obou ramen a zprostˇredkov´ avaj´ı se datov´e pˇrenosy s poˇc´ıtaˇcem a robotem. Zjistilo se, ˇze p˚ uvodn´ı ˇreˇsen´ı pohyb zpomalovalo a t´ım i zhorˇsovalo funkˇcnost programu. Zp˚ usoboval to z´asobn´ık s body trajektorie. Po vykon´ an´ı jak´ekoliv trajektorie se cel´ y program uspal na 0.3 vteˇriny a t´ım se robot pohyboval trhanˇe. Doˇslo ke zmˇenˇe v syst´emu a robot se d´ıky tomu pohybuje v´ıce plynule.
39
5
Z´ avˇ er
Tato pr´ ace se zab´ yv´ a pouˇzit´ım senzoru ATI Mini 45 v projektu Clopema. Pro jeho efektivn´ı vyuˇzit´ı byla provedena ˇrada experiment˚ u, pˇri kter´ ych se zjistilo, ˇze je senzor ovlivˇ nov´an r˚ uzn´ ymi ruˇsiv´ ymi vlivy. Nˇekter´e z tˇechto vliv˚ u byly odstranˇeny, jin´e se podaˇrilo zredukovat a s nˇekter´ ymi je tˇreba poˇc´ıtat. Bylo zjiˇstˇeno, ˇze na senzor namontovan´ y na robotu maj´ı vliv otˇresy zp˚ usoben´e proj´ıˇzdˇej´ıc´ımi tramvajemi, kter´ y se ˇreˇs´ı pˇrevzorkov´ an´ım. Dalˇs´ı pˇrekvapiv´ y vliv na senzor mˇelo svˇetlo, kter´e vnikalo do tˇela senzoru. Zast´ınˇen´ım otevˇren´ ych ˇc´ast´ı se tento vliv vyˇreˇsil. Z experiment˚ u proveden´ ych se silov´ ym senzorem vypl´ yv´ a, ˇze znaˇcn´ y vliv m´a i teplota, kter´a ovlivˇ nuje vnitˇrn´ı odpor mˇeˇr´ıc´ıch tenzometr˚ u. Vliv teploty se nepodaˇrilo odstranit a je to moˇzn´ y dalˇs´ı krok potˇrebn´ y pro zlepˇsen´ı efektivnosti. Hlavn´ı c´ıl je mˇeˇrit skuteˇcnou s´ılu v prstech chapadla, k tomu potˇrebujeme eliminovat vliv t´ıhy chapadla, kter´e je na senzor pˇrimontov´ano. Algoritmus pouˇzit´ y k tomuto u ´ˇcelu st´ale vykazuje nepˇresnosti, se kter´ ymi se mus´ı pˇri pouˇzit´ı poˇc´ıtat. Aplikace senzoru byla uk´ az´ ana na nˇekter´ ych u ´loh´ach. Ze zad´an´ı se povedly implementovat dvˇe ´ ze tˇr´ı u ´loh, napnut´ı odˇevu drˇzen´eho obˇema chapadly a detekce kontaktu chapadla s okol´ım. Uloha detekce zdviˇzen´ı se z ˇcasov´eho nedostatku nepodaˇrila dokonˇcit. Nav´ıc vˇsak byla implementov´ana manu´ aln´ı navigace chapadla. Pro pˇr´ıpadn´e budouc´ı zlepˇsen´ı funkˇcnosti senzoru je tedy nutn´e vyˇreˇsit vliv teploty a identifikace dalˇs´ıch ruˇsiv´ ych vliv˚ u, kter´e ovlivˇ nuj´ı odeˇc´ıtan´ı vlivu t´ıhy chapdala.
40
6
Literatura
Reference [1]
Daniel E. Whitney: ”Historical perspective and state of the art in robot force control”Proceedings. 1985 IEEE International Conference on , vol.2, no., pp.262,268, Mar 1985.
[2]
Hubbard Hoyt, Andrew Marchese: FORCE SENSING AND HAPTIC FEEDBACK FOR ROBOTIC TELESURGERY. TELESURGERY, : April 29th 2010
[3]
Mack, I.; Ferguson, S.; McMenemy, K.; Potts, S.; Dick, A., Interactive force sensing feedback system for remote robotic laparoscopic surgery. Haptic Audio visual Environments and Games, 2009. HAVE 2009. IEEE International Workshop on , vol., no., pp.58,63, 7-8 Nov. 2009
[4]
CloPeMa: Clothes Perception and Manipulation. (2012). http://clopemaweb.felk.cvut.cz/clothes-perception-and-manipulation-clopema-home/
[5]
ATI Industrial Automation: Network ForceTorque Sensor System.Installation and Operation Manual,Document #: 9620-05-Net FT, February 2013
[6]
ATI Industrial Automation: Network ForceTorque Sensor System.Installation and Operation Manual,Document #: 9620-05-TWE, February 2013
[7]
ATI Industrial Automation: Network ForceTorque Sensor System.Installation and Operation Manual,Document # 9620-05-Transducer Section, February 2013
[8]
M. Murgaˇs, Vplyv rˆ oznych nap´ ajan´ı a rˆ oznych zapojen´ı silov´eho senzoru ATI Mini45 na ˇ jeho chovanie . CVUT Praha, 18.7.2013
[9]
J. Mrˇ na, M. Murgaˇs, V. Smutn´ y Calculation of Robot Gripper Centroid, Mass, and Force ˇ Sensor Offsets. CVUT Praha, 30.9.2013
[10]
Robotic Operating System. (8.5.2014). http://wiki.ros.org
[11]
MathWorks: Matlab. (8.5.2014). http://www.mathworks.com/products/matlab/
[12]
ˇ y Most. (26.5.2005). Metroweb: Linka B: Zliˇc´ın - Cern´ http://www.metroweb.cz/metro/stanice/linka_b.htm
41
[13]
Papouch: Teplomˇery s pˇrenosem dat po Ethernetu. (26.5.2005). http://www.papouch.com/cz/shop/product/tme-ethernetovy-teplomer/#productDownload
[14]
Weiss Robotics: Force-Torque Sensor KMS 40.
http://www.weiss-robotics.de/en/force-capture/6-axes-force/torque-sensors/force-torque-sen [15]
Kulite Semiconductor Products, Inc.: Strain Gage Manual. http://www.kulite.com/docs/products_overview/StrainGageManualDigital.pdf
42
Pˇ r´ıloha A: Obsah CD Zde je seznam soubor˚ u a sloˇzek nach´ azej´ıc´ıch se na pˇriloˇzen´em CD. Z´ apis
Popis
Data/
Sloˇzka s daty z jednotliv´ ych experiment˚ u
Data/Centroid/
Sloˇzka s daty z experiment˚ u eliminace vlivu t´ıhy chapadla
Data/Lights/
Sloˇzka s daty z experimentu s vlivem svˇetla
Data/Temperature/
Sloˇzka s daty z experimentu s vlivem tepla
Data/Vibrations/
Sloˇzka s daty z experimentu s mechanick´ ymi kmity
Programy/
Sloˇzka s programy, skripty a launch soubory
Programy/launch/
Sloˇzka se spouˇstˇec´ım programem pro silov´ y senzor
Programy/scripts/
Sloˇzka s programy pro mˇeˇren´ı sil a momentu v jazyku Python
Programy/src/
Sloˇzka s programy aplikac´ı senzoru v jazyku C++
DP Jan Kubeˇs.pdf
Dokument diplomov´e pr´ace ve form´atu PDF Tabulka 8: Obsah pˇriloˇzen´eho CD
43
Pˇ r´ıloha B: Popis namˇ eˇ ren´ ych dat Tato pˇr´ıloha slouˇz´ı k orientaci, kter´ a data odpov´ıdaj´ı vykonan´ ym experiment˚ um a jakou maj´ı formu.
Data k experiment˚ um s mechanick´ ymi kmity Ve sloˇzce Data/Vibrations/ se nach´ az´ı namˇeˇren´a data pro experimenty s mechanick´ ymi kmity. V jednotliv´ ych sloˇzk´ ach jsou soubory dat exportovateln´ ych do programu Matlab odpov´ıdaj´ıc´ım urˇcit´ ym experiment˚ um. V souboru Experiments filters.mat se nach´az´ı data z experiment˚ u uveden´ ych v tabulce 4. Jednotliv´ a mˇeˇren´ı odpov´ıdaj´ı ˇr´ adk˚ um matice odpov´ıdaj´ıc´ı jednotliv´ ym experiment˚ um. V prvn´ım sloupci se nach´ az´ı unixov´ y ˇcas, sloupce 2 aˇz 4 odpov´ıdaj´ı sil´am FX , FY , FZ . Data byla mˇeˇrena na frekvenci 7000 Hz. V souboru Experiment stamp.mat se nach´az´ı data z experimentu s vlivem dup´an´ı v okol´ı robotu. Forma uspoˇr´ ad´ an´ı dat je stejn´ a jako u pokusu s filtry, ale v p´atem sloupci je indikace dupnut´ı. Parametr ”1”znaˇc´ı okamˇzik dupnut´ı, parametr ”0”znaˇc´ı klidov´ y stav. Data byla mˇeˇrena na frekvenci 7000 Hz. u vlivu tramvaj´ı a proVsouboru Experiment trams metro.mat se nach´az´ı data z experiment˚ vozu metra. Data z experimentu maj´ı stejn´ y form´at jako data z experimentu s vlivem dup´an´ı v okol´ı robotu.
Data k experiment˚ um s vlivem svˇ etla Ve sloˇzce Data/Lights/ se nach´ az´ı namˇeˇren´a data pro experimenty s u ´ˇcinky svˇetla na silov´ y senzor. V jednotliv´ ych sloˇzk´ ach jsou soubory dat odpov´ıdaj´ıc´ım urˇcit´ ym experiment˚ um (Flashlight a Light). Oba experimenty maj´ı stejnou formu uloˇzen´ı. Ve sloˇzce .../forces/ jsou v souborech typu .csv data ze silov´eho senzoru oddˇelen´ ych ˇc´arkou. V prvn´ım sloupci je identifikaˇcn´ı ˇc´ıslo jednotliv´ ych mˇeˇren´ı. Sloupce 2 aˇz 4 odpov´ıdaj´ı sil´am FX , FY , FZ a sloupce 5 aˇz 7 odpov´ıdaj´ı moment˚ um TX , TY , TZ . Ve sloˇzce .../links/ jsou v souborech typu .csv data reprezentuj´ıc´ı rotaˇcn´ı matice odpov´ıdaj´ıc´ı silov´ ym senzor˚ um. V prvn´ım sloupci je identifikaˇcn´ı ˇc´ıslo odpov´ıdaj´ıc´ı jednotliv´ ym mˇeˇren´ım. Ve sloupc´ıch 2 aˇz 17 je ˇr´ adkov´e vyj´ adˇren´ı rotaˇcn´ı matice 4x4. V souboru joints.csv jsou uloˇzeny informace o natoˇcen´ı jednotliv´ ych kloub˚ u manipul´atoru odpov´ıdaj´ıc´ı jednotliv´ ym mˇeˇren´ım. V souborech temp.csv a time.csv jsou uloˇzeny teploty mˇeˇren´e v m´ıstnosti s robotem a odpov´ıdaj´ıc´ı unixov´ y ˇcas.
44
Data k experimentu s teplotou Ve sloˇzce Data/Temperature/ se nach´ az´ı namˇeˇren´a data pro experiment s vlivem teploty na silov´ y senzor. Maj´ı stejnou formu jako data k experiment˚ um s vlivem svˇetla.
Data k experiment˚ um vlivu t´ıhy chapadla Ve sloˇzce Data/Centroid/ se nach´ az´ı namˇeˇren´a data pro experimenty eliminac´ı vlivu t´ıhy chapadla. ˇ rice experiment˚ Ctveˇ u maj´ı stejnou formu jako data k experiment˚ um s vlivem svˇetla a teploty. P´at´ y experiment obsahuje pouze soubor Experiment1 offsets.mat, kter´ y obsahuje matice sil a moment˚ u odpov´ıdaj´ıc´ım jednotliv´ ym poloh´ am.
45