ZINĀTNISKĀ PĒTĪJUMA PROGRESU APLIECINOŠA DOKUMENTĀCIJA
Prioritāte: 1.1. Augstākā izglītība un zinātne
Pasākums: 1.1.1. Zinātnes un pētniecības potenciāla attīstība Aktivitāte: 1.1.1.2. Cilvēkresursu piesaiste zinātnei
Projekta nosaukums: ”Viedo sensoru un tīklotu iegulto sistēmu pētījumu un attīstības centrs” (VieSenTIS)
Līguma noslēgšanas datums: 27.11.2009. Projekta sākuma datums: 01.01.2010.g. Projekta beigu datums: 31.12.2012.g.
Vienošanās Nr.2009/0219/1DP/1.1.1.2.0/09/APIA/VIAA/020
Eiropas Savienības fonda finansējuma saņēmējs: Elektronikas un datorzinātņu institūts (EDI)
ZINĀTNISKĀ PĒTĪJUMA PROGRESU APLIECINOŠA DOKUMENTĀCIJA
Pārskata numurs Nr.4. par periodu no 01.10.2010.g līdz 31.12.2010.g.
Projekta zinātniskais vadītājs: Xxx Xxxxxx, Ph.D. datorzinātnēs.
Pētījuma projekta izpildītāju saraksts: Xxxxxx Xxxxxxxx, Dr.sc.comp.
Xxxxx Xxxxxx, topošais zinātnieks, Mg. fizikā. Xxxxx Xxxxxx, doktorants.
Xxxx Xxxxx, doktorants. Xxxxxxx Xxxxxxx, doktorants. Xxxxx Xxxxxxxx, doktorants.
Xxxxx Xxxxxx, Mg. Elektronikā. Xxxxxxx Xxxxxxx, Mg. Elektronikā.
Xxxxxx Xxxxxxxxx, Mg. Elektronikā. Xxxxx Xxxxxxx, Mg. Elektronikā.
Xxxxx Xxxxxx, Dr.phys.
Xxxxxxx Xxxxxxx, Mg. Elektronikā. Xxxxxxx Xxxxxx, Mg. Elektronikā. Xxxxxxx Xxxxx, Mg. Elektronikā.
Xxxxxx Xxxxxxxxxx, Mg. Elektronikā.
ELEKTRONIKAS UN DATORZINĀTŅU INSTITŪTS
Rīga, Latvija 2010.gads
Saturs
Ievads 3
VieSenTIS 3
1 BioSen grupas atskaite 4
1.1 Ievads 4
1.2 Saistītie risinājumi 5
1.2.1 Sejas biometrija 5
1.2.2 Plaukstas biometrija 6
1.3 Risinājums 7
1.3.1 Sejas biometrija 7
1.3.2 Plaukstas biometrija 9
1.4 Eksperimenti un-vai testi 12
1.4.1 Sejas biometrija 12
1.4.2 Plaukstas biometrija 13
1.5 Rezultāti 13
1.5.1 Sejas biometrija 13
1.5.2 Plaukstas biometrija 14
1.6 Kopsavilkums un secinājumi 15
1.7 Nākotnes perspektīvas 15
Literatūra 15
2 CarMote grupas atskaite 17
2.1 Ievads 17
2.2 Saistītie risinājumi 18
2.3 Risinājums 18
2.4 Eksperimenti 20
2.5 Rezultāti 21
2.6 Kopsavilkums un secinājumi 22
2.7 Nākotnes perspektīvas 22
Literatūra 22
3 EdiMote grupas atskaite 24
3.1 Ievads 24
3.2 Risinājums 25
3.3 Eksperimenti un testi 27
3.4 Rezultāti 28
3.5 Kopsavilkums un secinājumi 29
3.6 Nākotnes perspektīvas 30
Literatūra 31
4 MansOS grupas atskaite 32
4.1 Ievads 32
4.1.1 MansOS 32
4.1.2 LynxNet 33
4.2 Saistītie risinājumi 33
4.2.1 MansOS 33
4.2.2 LynxNet 34
4.3 Risinājums 35
4.3.1 MansOS 35
4.3.2 LynxNet 37
4.4 Kopsavilkums un secinājumi 40
4.4.1 MansOS 40
4.4.2 LynxNet 40
4.5 Nākotnes perspektīvas 40
4.5.1 MansOS 40
4.5.2 LynxNet 40
Literatūra 41
5 SAntArray grupas atskaite 43
5.1 Ievads 43
5.2 Saistītie risinājumi 44
5.3 Risinājums 44
5.4 Kopsavilkums un secinājumi 48
5.5 Nākotnes perspektīvas 48
Literatūra 48
6 SenSigA grupas atskaite 50
6.1 Ievads 50
6.2 Adaptīva līmeņu-šķērsojumu diskretizācija 50
6.3 Notikumu pārraide un detektēšana 52
6.4 Rezultāti 53
6.5 Kopsavilkums un secinājumi 54
6.6 Nākotnes perspektīvas 54
Literatūra 54
Ievads
Anotācija
VieSenTIS ir ESF atbalstīts projekts zinātnisko grupu veidošanai. Šis projekts nodarbojas ar bezvadu sensoru un tīklotu iegulto sistēmu pētniecību. Projekta ietvaros ir sekojošas apakšgrupas: BioSen – sensoru sistēmu pielietojumi biometrijā, CarMote – viedās transporta sensoru sistēmas, EdiMote – jaunas arhitektūras bezvadu sensoru aparatūrai, MansOS – operētājsistēma un programmatūras rīki bezvadu sensoru un iegulto sistēmu atbalstam, SAntArray – antenu masīvu pielietojumi tīklotas iegultas sistēmās, un SenSigA – sensoru signālu apstrādes metodes. Šajā dokumentā izklāstītas zinātniskās pētniecības aktivitātes un rezultāti augšminētajās grupās. Pielikumā ir iekļautas šajā periodā iesniegtās un apstiprinātas zinātniskās publikācijas. Projektu atbalsta Eiropas Savienības fondi, līguma Nr. 2009/0219/1DP/1.1.1.2.0/09/APIA/VIAA/020.
VieSenTIS– Viedo sensoru un tīklotu iegulto sistēmu pētījumu un attīstības centrs
VieSenTIS grupas galvenais pētniecības virziens ir tīklotu iegulto sistēmu un viedu sensoru risinājumi un pielietojumi cilvēku dzīves kvalitātes uzlabošanai, industrijā un citās nozarēs. Miniatūras iegultās sistēmas ir ar ierobežotiem resursiem, piemēram, enerģijas avots bieži vien ir neliela baterija. Tāpēc ir aktuāli pētīt kā šos resursus pēc iespējas efektīvi izmantot, kā arī radīt rīkus jaunas aparatūras un programmatūras izstrādei. Bez tam, bezvadu sensoriem rodami pielietojumi arvien jaunas dzīves sfērās, kas prasa gan specifisku signāla apstrādi gan pielietojuma metožu pētniecību.
VieSenTIS projektā ir sekojošas apakšgrupas saskaņā ar pētnieku individuālo pieredzi un interesēm:
• BioSen – sensoru sistēmu pielietojumi biometrijā;
• CarMote – viedās transporta sensoru sistēmas;
• EdiMote – jaunas arhitektūras bezvadu sensoru aparatūrai;
• MansOS – operētājsistēma un programmatūra bezvadu sensoru un iegulto sistēmu atbalstam;
• SAntArray – antenu masīvu pielietojumi tīklotas iegultas sistēmās;
• SenSigA – sensoru signālu apstrādes metodes.
Turpmākajās nodaļās ir apkopoti galvenie sasniegumi minētajos virzienos.
Nodaļa 1
BioSen grupas atskaite
Anotācija
BioSen pētniecības grupa nodarbojas ar biometrijas datu iegūšanu un apstrādi. Galvenie darbības virzieni ir 3 dimensiju (3D) sejas atpazīšana, kā arī plaukstas asinsvadu un rievojuma struktūras atpazīšana. Konkrētie biometrijas parametri tika izvēlēti, jo tie ir unikāli, droši un grūti viltojami, tādā veidā paaugstinot drošību pret cilvēka identitātes zādzību. Grupas mērķis ir izveidot multimodālu biometrijas sistēmu, kas ir balstīta uz 3D sejas un plaukstas biometrisko parametru kopīgu izmantošanu. Šajā pētniecības posmā galvenokārt tika strādāts pie algoritmu attīstīšanas, kas efektīvi izdalītu nepieciešamos objektus no attēliem, aprakstītu tos un veiktu to salīdzināšanu. Algoritmi tiek veidoti un to darbība pārbaudīta Matlab vidē, taču mērķis ir izveidot iegultu sistēmu ar tai pielāgotiem attēlu apstrādes un glabāšanas algoritmiem.
1.1 Ievads
Ikdienā cilvēki tiek identificēti pēc trīs galvenajiem parametriem: pēc tā, kas viņiem ir (pases, apliecības), pēc tā, ko viņi zina (dažādas paroles un PIN kodi) un pēc tā, kas viņi ir (viņu ķermenis). Drošākais no šie parametriem ir cilvēka ķermenis, jo dokumentus ir iespējams nozagt un viltot, bet paroles uzlauzt. Tieši šī iemesla BioSen grupa nodarbojas un pēta dažādus cilvēka ķermeņa biometriskos parametrus. Nosacījumi, kas jāņem vērā izmantojot bioloģiskos datus, pirmkārt, lai tos būtu viegli iegūt, jo, piemēram, acs varavīksni ar vienkāršām metodēm ir sarežģīti iegūt. Otrs nosacījums ir, lai šos datus būtu grūti viltot – 2D sejas attēlus var vienkārši viltot ar parastu personas fotogrāfiju, bet pirkstu nospiedumus cilvēks nekontrolēti atstāj uz dažādām virsmām. Trešais un ne mazsvarīgākais ir – lai nevar nozagt, jo 2D sejas attēlu var iegūt vienkārši personu nofotografējot, bet pirkstu nospiedumus no virsmām, kur cilvēks pieskāries. Šo nosacījumu dēļ, mēs nonācām pie slēdziena, ka tuvāk jāapskata 2 parametri – 3D sejas atpazīšana un plaukstas asinsvadu atpazīšana. Biosen apakšgrupas, kas nodarbojas ar 3D sejas atpazīšanu, pēdējā ceturksnī uzstādītais mērķis bija sejas atpazīšanas algoritma izveide, kas tiks balstīts uz „Local Binary Patterns” [1]. Šī pieeja sejas atpazīšanas jomā ir salīdzinoši jauna un ir daudzsološāka precizitātes un ātrdarbības ziņā. Tomēr šīs pieejas
Att. 1.1: Objektu atpazišanas sistemas blokshēma
precizitāte ir ļoti atkarīga no precīzas sejas lokalizācijas attēlā, tāpēc mērķa sasniegšanai ir nepieciešams izveidot sekojošus algoritmus:
• sejas detektēšanu attēlos;
• sejas lokalizāciju - precīza sejas atrašanās vietas noteikšana;
• sejas atpazīšanu, kas balstīta uz ”Local Binary Patterns”.
Biosen apakšgrupas, kas nodarbojas ar plaukstas biometrisko parametru atpazīšanu, pēdējā ceturkšņa mērķis bija esošo algoritmu attīstīšana, efektīvākai asinsvadu un rievu izdalīšanai no attēliem, kā arī to pārbaudīšana, veidojot vienotu plaukstas asinsvadu un rievojuma sturktūru attēlu datubāzi.
Tipiskā objekta (x.xx. arī plaukstas) atpazīšanas sistēmas blokshēma ir parādīta att.1.1. Darbs tika veikts sekojošos pamatvirzienos:
• attēlu apstrādes paņēmienu attīstīšana;
• datubāzes izveidošana;
• divu attēlu salīdzināšanas paņēmienu attīstīšana;
• vairāku pazīmju pielietošanas (multimodalitātes) priekšrocību pētīšana, un lēmuma pieņemšanas algoritma ieviešana;
• objektu atpazīšanas algoritma pielāgošana iegultās sistēmās.
Attēlu apstrādes posma galvenais uzdevums ir: ar filtrācijas un segmentācijas palīdzību pikseļu masīvā (attēlā) selektīvi pavājināt (vai iznīcināt) noteikta veida informāciju, atstājot tikai interesējošās objekta pazīmes. Šajā gadījumā objekts ir plauksta, bet pazīmes – asinsvadu un rievu tīklojumi, kas ir aprakstīti ar vektoru kopām. Mērķis ir izveidot ātru un precīzu algoritmu, kas veic minētās funkcijas.
1.2 Saistītie risinājumi
1.2.1 Sejas biometrija
Viens no risinājumiem, kuru sākotnēji apskatījām bija Eigenface [2], kas balstīts uz 2D sejas attēlu izmantošanu. Eksperimenti pierādīja, ka, lai gan
Att. 1.2: Segmentācijas procedūra
algoritms diezgan labi atrod noteikto personu datubāzē, tomēr šo algoritmu ir vienkārši apiet, izmantojot personas fotogrāfiju. Vairākas reizes atkārtojot eksperimentus, nonācām pie secinājuma, ka sejas atpazīšanā jāizmanto 3D sejas attēlus.
1.2.2 Plaukstas biometrija
Attēlos asinsvadi un rievas ir reprezentēti ar nedaudz tumšākām par fonu līnijām. Šajos gadījumos attēla kvalitātes uzlabošanai parasti veic attēla filtrāciju. Izplatītākie risinājumi ir: 1) kontūru detektori (Edge Detection) [3],
2) Laplasian of Gaussian (LoG) [4] un 3) salāgotā filtrācija (Matched Filtering) [5]. Katrai no minētām metodēm ir savi trūkumi: nepietiekama rezultāta kvalitāte (1, 2), vai samazināta ātrdarbība (2, 3). Visām minētām metodēm rezultāts ir skalāro lielumu masīvs, kuram nākamā procedūra (segmentācija) ir apgrūtināta. Minēto trūkumu izlabo attēla apstrādes metodes, kurām rezultātā tiek iegūts vektoru masīvs – līniju “izsekošana” pēc vektoriem ir ievērojami ātrākā. Par piemēru var kalpot Hessian Matricas īpašvektori [6], taču minētā metode arī cieš no iepriekš minētiem kvalitātes un ātrdarbības trūkumiem. Pievilcīgākā šajā ziņā ir kompleksās salāgotās filtrācijas (Complex Matched Filtering, CMF) metode [7]: tā saglabā salāgotās filtrācijas detaļu izdalīšanas spēju, bet ir rotācijas invarianta – spēj ar vienu filtrāciju izdalīt līnijas, kas ir orientētas jebkurā virzienā. Kvalitatīvā minēto attēlu apstrādes paņēmienu analīze tiek piedāvāta [8].
Lai novērtētu biometrijas sistēmas darbības efektivitāti ir nepieciešams izmantot attēlu paraugu datubāzi. Iepriekš tika izveidota plaukstas asinsvadu attēlu datubāze, lai novērtētu asinsvadu izdalīšanas un salīdzināšanas algoritmu darbību. Taču, lai pārbaudītu gan plaukstas asinsvadu, gan plaukstas rievojumu izmantojamību biometrijas sistēmās ir nepieciešamība veidot jaunu datubāzi, kurā katram cilvēkam būtu atbilstošie plaukstas asinsvadu un plaukstas rievojuma struktūras attēli.
Segmentācijas procesā no vektoru masīva (kas ir CMF darbības rezultāts) tiek atlasīti 64 intensīvākie vektori (lokālie maksimumi), att.1.2. Šī procedūra samazina datu apjomu par kārtām, bez nozīmīgiem informācijas zudumiem [8]. Attēlu sliktās kvalitātes dēļ pat vienam un tam pašam objektam dažādos attēlos atrasto vektoru pozīcijas mainās noteiktajās robežās. Šīs īpašības dēļ, lai viena
un tā paša objekta bildes būtu līdzīgas, vektoru kopas salīdzināšanas algoritmā tiek ieviest references attāluma σ jēdziens. Divu, pat vienādi orientētu vektoru salīdzināšanas procesā references attālums nosaka vai uzskatīt šos vektorus par dažādiem. Taču references attāluma izvēle notiek ”balansējot” starp lielāko atteikumu procentu (mazs σ), vai lielāko kļūdaini pozitīvo rezultātu procentu (liels σ).
Viens plaukstas parametrs nesniedz tādu atpazīšanas precizitāti, kas būtu pietiekama pielietojumiem drošības sistēmās. Kā minēts [8], asinsvadu izmantošana nodrošina EER = 0.17%, taču praksē bieži interesē kļūdu lielumi ap 0.01% un mazāk.
Attēlu datubāzes veidošanai, izmantojot USB Video Ierakstīšanas moduli ir sekojoši trūkumi: 1) neērta procedūra - viena attēla iegūšanai nepieciešams veikt daudz manuālo operāciju, 2) slikta iegūto attēlu kvalitāte - krāsu izšķirtspēja ir 8 biti, kaut gan attēlu sensors spēj nodrošināt 12 bitus, 3) trokšņi, kas summējas klāt analogam signālam vados.
1.3 Risinājums
1.3.1 Sejas biometrija
Lai panāktu BioSen sejas atpazīšanas apakšgrupas uzstādīto mērķi tiek piedāvāti sekojoši risinājumi sejas detektēšanas un lokalizācijas jomā: 1. Sejas detektēšana. Eksistē daudz sejas detektēšanas algoritmu, tomēr tiem ir dažādi trūkumi, tāpēc tiek pieņemts lēmums izveidot uz ”Local Binary Patterns” balstīto sejas detektēšanas algoritmu ar optimizēta attēla skenēšanas pieeju, kas ļaus detektēt objektu attēlā reālajā laikā. Klasiskās detektēšanās metodes balstās uz ieejas attēla ”skenēšanu” ar meklējamā objekta modeli un līdzības aprēķināšanu katrā punktā, tomēr šī pieeja ir ļoti neefektīva, tāpēc tiek izveidota cita skenēšanas pieeja. Šīs pieejas būtību var raksturot sekojoši: meklēt objektu (seju) tikai tās ieejas attēla reģionos, kur meklējamais objekts potenciāli var atrasties. Šī ideja tiek parādīta 1.3. attēlā, kur skenēšanas loga sākumpunkts (sarkanā kvadrāta kreisais, augšējais stūris) pārvietojas gar objekta kreiso malu virzienā no augšas uz leju. Katrā pozīcija (1.3.attēls) tiek meklēta līdzība starp sejas modeli un ieejas attēla daļu. Sejas modelis mūsu gadījumā ir vidējā histogramma, kas tika aprēķināta no 20 „Local Binary” sejas attēliem. Xxxxxx attēls arī tiek pārveidots histogrammā pēc „Local Binary Patterns” algoritma. Eksperimentāli tika pārbaudīts, ka vispiemērotākā metode histogrammu salīdzināšanai ir kvadrātiskais Eiklīda attālums. 1.3. attēlā redzamajam piemēram Eiklīda attāluma vērtības ir parādītas 1.4. (a) attēlā, kur minimālā vērtība nosaka sejas pozīciju vertikālās (Y) ass virzienā (zaļš kvadrāts 1.5.attēlā). Kad sejas pozīcija vertikālās ass virzienā tiek atrasta, līdzīgs princips sejas meklēšanai tiek pielietots arī horizontālā ass virzienā. Kvadrātiskā Eiklīda attāluma vērtības, pārvietojot sejas modeli horizontālā
(X) ass virzienā, paradītas 1.4. (b) attēlā, kur minimālā vērtība nosaka sejas pozīciju. Algoritma darbības rezultāts tiek paradīts 4.attēlā, kur nodetektētais sejas apgabals atzīmēts ar zilu kvadrātu. Šis algoritms ļauj salīdzinoši ātri nodetektēt seju attēlā, jo izmanto inovatīvu skenēšanas principu, tomēr precīzāka sejas lokalizācija ir vajadzīga, lai iegūtu labu atpazīšanas rezultātu.
Att. 1.3: Attēla skenēšanas procedūra
(a) (b)
Att. 1.4: Kvadrātiskā Eiklīda attāluma vērtības, pārvietojot sejas modeli X (b) un Y (a) ass virzienos
Att. 1.5: Sejas detektēšanas algoritma darbības rezultāts
Att. 1.6: Acs zīlīšu detektēšanas algoritma darbības rezultāts
Sejas lokalizācija
Sejas lokalizācijas princips mūsu gadījumā tiek balstīts uz acs zīlīšu detektēšanu. Tika izveidots algoritms, kas detektē acs zīlīšu centrus un šie centri tika uzskatīti par atskaites punktiem, lai no ieejas attēla izgrieztu seju vajadzīgajās proporcijās.
Acu detektēšanas algoritma darbība tiek balstīta uz PCA (Principal Component Analysis) principa, bet darbība tika paātrināta pielietojot ”RANDOM” ieejas attēla skenēšanas principu. Acs zīlīšu centri tiek detektēti kā intensitātes minimumi acs attēlā. Algoritma darbības rezultāts ir paradīts 1.6.attēlā, kur ar sarkaniem aplīšiem tiek atzīmēti zīlīšu centri. Pēdējā sejas atpazīšanas algoritma stadija, kas tiks balstīta uz ”Local Binary Patterns” vēl ir izstrādes procesa.
1.3.2 Plaukstas biometrija
Attēlu apstrāde
Attēlu apstrādes uzlabošanas darbi galvenokārt saistīti ar CMF metodes attīstīšanu:
1. Komplekso salāgoto filtru vispārināšana (Generalized CMF (GCMF) jēdziena ieviešana). Tika izpētīta un teorētiski pamatota CMF procedūra. GCMF spēj izdalīt attēlā ne tikai taisnas līnijas, bet arī dažādus līniju krustpunktus.
2. Filtrācijas kvalitātes uzlabošana (Non-Halo CMF (NH–CMF) jēdziena ieviešana). Tika izpētīts un novērsts nevēlamais Halo artifakts.
Par šiem attēlu apstrādes paņēmieniem ir sagatavotas publikācijas (skat. pielikumus), kuras patreiz ir nodotas recenzēšanai.
Attēlu datubāzes veidošana
Tika izveidota institūta darbinieku (50 personu) plaukstas rievojuma attēlu datubāze (5 attēli katrai personai, kopā 250 attēli), kas atbilst iepriekš uzņemto cilvēku plaukstas asinsvadu datubāzei.
Vektoru kopu salīdzināšanas algoritma attīstīšana
Pēc [8] metodikas, salīdzinot divus attēlus, kas ir aprakstīti ar vektoru kopām
1
2
1
2
i
(A) (A) (B) (B) (A)
A ≡ {v , v . . . } un B ≡ {v , v . . . } katrs pirmās kopas vektors v
Att. 1.7: Atrasto vektoru pozīciju nenoteiktības intervāli
j
tiek salīdzināts ar katru otrās kopas vektoru v(B). Šī līdzība tiek novērtēta ar
i,j
pozitīvo lielumu s(A,B). Vēlāk visas šīs vērtības tiek summētas pēc ((1.2)), lai iegūtu kopējo vektoru kopas līdzības novērtējumu s(A, B).
i,j
s(A,B) = Magnitudesi,x · Xxxxxxx,j · Distancei,j (1.1)
i,j
s(A, B) = ∑ ∑ s(A,B)
(1.2)
i j
Modifikācija vērtības Distancei,j aprēķināšanai balstās uz pamanītām vektoru atrašanās vietu īpašībām: dažādos attēlos lokālo maksimumu, kas pieder vienai un tai pašai detaļai (asinsvadam / rievai), pozīcijas biežāk svārstās tieši šīs detaļas virzienā, bet mazāk – perpendikulārajā virzienā.
⊥
|| ⊥
Tāpēc references attālums σ tika sadalīts divās komponentēs – paralēlais references attālums σ , un perpendikulārais references attālums σ . Xxxxxxxxxxx, ka pieļaujamā nenoteiktība σ > σ . Attālumu novērtējums: Distancei,j tiek aprēķināts sekojoši:
( d2 ) ( d2 )
−
Distancei,j = exp
− σ2
· exp
⊥ , (1.3)
σ2
⊥
i j
i
kur d un d⊥ ir attālumi starp vektoriem v(A) un v(B) projekcijas uz v(A)
un tam perpendikulāro vektoru.
Šāds jaunievedums paaugstināja vektoru kopu salīdzināšanas precizitāti.
Multimodalitātes priekšrocību pētīšana
Tika piedāvāts izmantot personu identifikācijai 2 parametrus vienlaicīgi: plaukstas asinsvadus un rievas. Katru personu datubāzēs pārstāv abu
Att. 1.8: Multimodālās biometrijas vienkāršotā blokshēma
parametru paraugi; uzrādītās plaukstas salīdzināšana notiek pēc abiem parametriem paralēli, bet rezultāti apvienoti kopējā lēmumā.
Multimodālās autentifikācijas, kuras uzdevums ir salīdzināt uzrādīto objektu ar datubāzē aprakstīto paraugu, vienkāršota blokshēma ir sekojoša:
Katrs no diviem paralēliem signāla ceļiem att. 1.8 reprezentē monomodālo biometrijas sistēmu, kas vērtē uzrādītās plaukstas līdzību paraugam pēc sava parametra. Rezultātā tiek iegūti divi novērtējumi:
• S1 norāda cik līdzīgi ir salīdzināmo plaukstu asinsvadu tīklojumi, bet
• S2 norāda cik līdzīgi ir rievu zīmējumi.
Tika apkopotas šo lielumu vērtības diviem gadījumiem (attēloti att. 1.9 divdimensiju telpā (S1, S2)):
1. sakritības gadījumā, kad sistēmai ir jāatpazīst objekts (att. 1.9 reprezentēti ar “o”);
2. nesakritības gadījumā (att. 1.9 reprezentēti ar “x”);
Attēlā 1.9 ir parādīts sliekšņa līmenis (taisne), kas atdala šos gadījumus lēmuma pieņemšanai. Kā redzams, multimodālās sistēmas gadījumā var panākt daudz precīzāku atdalīšanu, nekā izmantojot katru parametru atsevišķi kā, piemēram, pēc S1 (att. 1.9a).
Sistēmas realizācija FPGA
Tika izstrādātā blokshēma FPGA sistēmai, kas ir paredzēta ērtākai augstākās izšķirtspējas datubāzes attēlu iegūšanai.
Tika izstrādāti attēlu sensora un komunikācijas kontrolieri. Nodrošināta komunikācija ar datoru ātrumā 4.8Kbaud, taču pagaidām šo bloku izmantošanas
a) b)
Att. 1.9: Attēlu līdzības vērtēšanas rezultāti
Att. 1.10: Izstrādātā blokshēma attēlu ieguvei
iespējas ir ierobežotas, piemēram, RS-232 porta kontrolierim ir jānodrošina datu pārraides ātrumi vairāk par 0.5Mbaud. Tāpēc tiek veikta apmācība par pareizo FPGA sistēmu laicisko signālu salāgošanu TimeQuest Timing Analyzer vidē. Tiek arī strādāts pie SDRAM kešatmiņas atkļūdošanas ar TimeQuest programmatūru.
1.4 Eksperimenti un-vai testi
1.4.1 Sejas biometrija
Lai varētu testēt algoritmus tika veidota jauna datubāze. Šīs datubāzes tapšanā piedalījās 51 persona (kopumā 169 attēli), katrai personai tika uzņemtas 3 – 4 bildes (ar/bez brillēm (ja tādas persona nēsā), ar/bez smaida).
Izmantojot darbinieku datu bāzi tika notestēts sejas detektēšanas algoritms. Korekts sejas detektēšanas rezultāts tiek paradīts 4. attēlā, kļūdains detektēšanas rezultāts parādīts 1.11 attēlā.
Daļēji bija notestēts arī sejas lokalizācijas algoritms, kas balstās uz acs zīlīšu detektēšanu, tomēr pirms tā pielietošanas vajag pilnveidot sejas detektēšanas algoritmu, tāpēc uz doto brīdi grūti novērtēt lokalizācijas metodikas precizitāti.
Att. 1.11: Nekorekts sejas detektēšanas rezultāts
1.4.2 Plaukstas biometrija
Eksperimentu mērķis ir novērtēt multimodālās pieejas priekšrocības pret monomodālo pieeju. Šim nolūkam abām plaukstu datubāzēm tika novērtētas nepareizās atpazīšanas/neatpazīšanas kļūdas, salīdzinot biometriskos parametrus atsevišķi, vai kombinēti (pēc iepriekš aprakstītās metodikas).
Lēmuma pieņemšanas bloks salīdzina attēlu līdzības vērtējumu ar iepriekš izvēlēto sliekšņa vērtību. Ja līdzības lielums ir augstāks par sliekšņa vērtību, tad attēli tiek uzskatīti par vienai un tai pašai personai piederošiem. Taču sliekšņa vērtības izvēle notiek ”balansējot” starp nepareizās atpazīšanas (False Accept Rate, FAR) un nepareizās neatpazīšanas (False Reject Rate, FRR) kļūdām. Jo lielāka ir sliekšņa vērtība, jo mazāka kļūst attēlu atpazīšanas varbūtība, mazāks ir FAR, kas ir pozitīvi, bet lielāks FRR; un otrādi. Attēlā 1.12 ir parādītas FAR-FRR raksturlīknes abām datubāzēm.
Par vērtējamiem kritērijiem tika izvēlēti sekojošie parametri:
• EER (Equal Error Rate) – tipiskais objektu atpazīšanas sistēmu vērtēšanas kritērijs, kad visu kļūdu vērtības ir vienādas, jeb FAR = FRR = EER.
• FRRF AR 0.01% – atteikumu kļūda FRR pie nepareizās atpazīšanas kļūdas FAR lieluma zem 0.01%. Šim parametram ir lielāka praktiskā nozīme, jo drošības sistēmās bieži interesē tieši FAR vērtība, kurai ir jābūt daudz zemākai par FRR.
1.5 Rezultāti
1.5.1 Sejas biometrija
Testējot sejas detektēšanas algoritmu, izmantojot institūta darbinieku datubāzi, tiek konstatētas tikai divas detektēšanas kļūdas, kas nozīme, ka detektēšanas
102
FAR, FRR for both databases, 100% vectors used
EER=2.82%
EER=0.32%
Palm print
Palm veins
FRR
FAR≤0.01%
=16.3%
FRR
FAR≤0.01%
=4.1%
101
FAR [%]
100
10−1
10−2
10−3
10−1 100 101 102
FRR [%]
Att. 1.12: FAR-FRR raksturlīknes, analizējot attēlus no izveidotām datubāzēm
Att. 1.13: Eksperimentu rezultāti
precizitāte ir 98.8% (167 attēlos no 169 seja tika nodetektēta pareizi).
1.5.2 Plaukstas biometrija
Eksperimentu rezultātus var apkopot grafikā att. 1.13, kurā ir konstatējams ievērojams rezultātu uzlabojums. Rezultāti rāda, ka izmantojot dažādu biometrisko parametru līdzības apvienošanas paņēmienus (Fusion) ir iespējams izveidot multimodālo biometrisko sistēmu ar EER zem 0.1%, vai FRRF AR 0.01% = 0.3%.
1.6 Kopsavilkums un secinājumi
Biosen apakšgrupas, kas nodarbojas ar 3D sejas atpazīšanu, pēdējā ceturksnī uzstādītais mērķis daļēji tika sasniegts, jo tika veikta sejas detektēšana attēlā ar augstu precizitāti (98.8% bija korekti), izstrādes procesā ir arī sejas lokalizācija. Kad tiks uzlabots sejas detektēšanas algoritms, tad varēs veikt vairāk eksperimentus arī sejas lokalizācijai un noskaidrot šīs metodikas precizitāti. Līdz ar to trešais izvirzītais mērķis – sejas atpazīšanas algoritms, kas balstās uz ”Local Binary Patterns” ir sākotnējā izstrādes stadijā un turpmākā pētniecība tiek saistīta tieši ar šo algoritmu. Arī izveidotā datubāze nepieciešamajiem eksperimentiem ir pietiekoši liela, bet nākotnē plānots to papildināt.
Izveidotā plaukstas biometrijas sistēma var tikt izmantota drošības sistēmās objektos ar mazu apmeklētāju skaitu (zem 50). Piedāvātai sistēmai ir vairākas priekšrocības:
1. vieglāk izgatavot (nepieciešams tikai viens attēlu sensors),
2. viegli uzņemt biometriskus parametrus (personai ir jāuzrāda tikai sava plauksta),
3. samazināts datubāzē esošu paraugu datu apjoms (64 vektoru kopa, jeb 256 baiti).
Par aprakstītiem eksperimentiem ir sagatavots, iesniegts, un akceptēts publicēšanai raksts: ”Processing of palm print and blood vessel images for multimodal biometrics” konferencei BioID2011, Vācijā, Brandenburgā.
1.7 Nākotnes perspektīvas
Turpmākie plāni ir pabeigt sejas atpazīšanas algoritmu, kas balstīts uz ”Local Binary Patterns”. Veikt eksperimentus un pārbaudīt algoritma darbību un precizitāti. Uzlabot algoritmu, lai tas strādātu kvalitatīvāk. Vēlamies apskatīt vēl arī citus jaunākos risinājumus 3D sejas attēla iegūšanā, lai varētu uzlabot esošo.
Literatūra
[1] Xxxx Xxxxxx, Xxxxxxxx Xxxxx, and Xxxxx Xxxxxxxxxxx. Face recognition with local binary patterns. In Lecture Notes in Computer Science, Volume 3021, pages 469–481, 2004.
[2] H.J. Xxxx and P.J. Phillips. Computational and performance aspects of pca-based face recognition algorithms. Perception, 30(3):303–321, 2001.
[3] Xxxxxx X. Xxxxxxxx and Xxxxxxx X. Xxxxx. Digital image processing. Xxxxxxxx Xxxx, third edition, 2007.
[4] L. Xxxxxxx, X. Uyyanonvara, S.A. Xxxxxx, and X. Jareanjit. Automated vessels detection on infant retinal images. In International Conference on Control, Automation and Systems (ICCAS2004), pages 25–27, August 2004.
[5] Xxxxxxxx Xxxxxxxxx, Xxxxxxx Xxxxxxxxxx, Xxxxxx Xxxx, Xxxx Xxxxxx, and Xxxxxxx Xxxxxxxx. Detection of blood vessels in retinal images using two- dimensional matched filters. In IEEE transactions on medical imaging, Vol.8, Issue:3, pages 263–269. IEEE, 1989.
[6] N.M. Salem, S.A. Xxxxx, and A.K. Nandi. Segmentation of retinal blood vessels based on analysis of the hessian matrix and clustering algorithm. In Proc. of the 15th European Signal Processing Conference EUSIPCO, pages 428–432, August 2007.
[7] Xxxxxx Xxxxxxxx, Xxxxxxx Xxxxx, and Xxxxxxx Xxxxxx. Object analysis in images using complex 2d matched filters. In EUROCON 2009: Proceedings of IEEE Region 8 conference, pages 1392–1397. IEEE, 2009.
[8] Xxxxxx Xxxxxxxx, Xxxxxxx Xxxxx, and Xxxxxxx Xxxxxx. Palm vein biometrics based on infrared imaging and complex matched filtering. In MM&Sec ’10: Proceedings of the 12th ACM workshop on Multimedia and security, pages 101–106, New York, NY, USA, 2010. ACM.
Nodaļa 2
CarMote grupas atskaite
Anotācija
Līdz ar dažādu transporta veidu attīstību, aizvien lielāka nozīme ir viedajām transporta sistēmām, kuras tiek veidotas, izmantojot aparatūras un programmatūras risinājumus. Šie risinājumi ietver gan transporta plūsmu un apkārtējo vidi raksturojošu datu ieguvi, gan arī to apstrādi un koplietošanu. CarMote grupas darbība ir vērsta uz multimodālu datu ieguves un apstrādes problēmu risināšanu transporta nozarē, izmantojot gan dažādu konvenciālu mobilu datortehniku, gan arī speciāli izstrādātas iegultas iekārtas. Šajā darbā ir aprakstītas aktivitātes, kas saistītas ar CarMote iegultās iekārtas izstrādi, kā arī eksperimenti ar GPS uztvērējiem un inerciālajām mērījumu iekārtām.
2.1 Ievads
Lai veiktu transporta plūsmu optimizāciju, kā arī nodrošinātu racionālu dabas resursu izmantošanu, ir nepieciešams veikt šo plūsmu kontroli un vadību. Savukārt kontroles un vadības lēmumu pieņemšanu iespējams veikt, balstoties uz datiem, kas raksturo atsevišķus iepriekš minētā procesa aspektus. Līdz ar to pieņemto lēmumu kvalitāti tiešā veidā ietekmē pieejamo datu daudzums un kvalitāte.
Esošie risinājumi pamatā ir balstīti uz datu ieguvi no stacionāri izvietotiem sensoriem, kā arī to apstrādi centralizētā veidā. Eksistē atsevišķi risinājumi, kas paredz datu koplietošanu, x.xx. tiešsaistes režīmā, tomēr tie pamatā izmanto konvenciālus vadu un bezvadu datu pārraides tīklus, kas nav speciāli piemēroti mobilu transporta mezglu vajadzībām un īpatnībām.
Jaunu risinājumu nepieciešamību nosaka arī esošo transporta plūsmu un apkārtējās vides kvantitatīvās un kvalitatīvās izmaiņas, kas rada esošo risinājumu efektivitātes samazināšanos. Turklāt zinātnes un tehnikas progresa rezultātā tiek radītas jaunas metodikas un tehnoloģijas, kuru prasmīga izmantošana transporta nozarē var būtiski uzlabot transporta plūsmas, kā arī veicināt dabas resursu racionālu izmantošanu.
Mūsu piedāvātais risinājums ietver gan datu ieguvi, izmantojot auto kā mobilu bezvadu sensoru tīkla mezglu, gan iegūto datu apstrādi, analīzi
un koplietošanu, izmantojot atbilstošus aparatūras un programmatūras risinājumus.
2.2 Saistītie risinājumi
CarMote grupas aktivitātēm tuvākie saistītie risinājumi ir Pothole Patrol [1] un Nericell [6], kuru tematika ir dažādu ceļa īpatnību detektēšana, izmantojot sensoru datus un to apstrādi. Atšķirībā no minētajiem risinājumiem, mūsu pieeju raksturo mobilas konvenciālas datortehnikas izmantošana pētījumu sākotnējā posmā [5], vēlāk veidojot speciālas iegultas iekārtas, kas implementē pētījumu sākotnējā posmā izstrādātās datu ieguves un apstrādes metodikas.
2.3 Risinājums
Turpinot darbu pie CarMote iegultās iekārtas prototipa aparatūras izstrādes, tika implementēti vairāki komunikācijai paredzēti moduļi - WiFi saskarne, Bluetooth saskarne, kā arī USB host saskarne.
WiFi saskarnes modulis ir paredzēts CarMote iegultās iekārtas komunikācijai, izmantojot IEEE 802.11b/g standarta bezvadu sakaru tīklus. Tas implementēts, izmantojot Roving Networks komponentu RN-131C [2]. Savienojumam ar iegulto iekārtu tiek izmantota RS232 saskarne.
Att. 2.1: WiFi saskarnes modulis
Bluetooth saskarnes modulis ir paredzēts CarMote iegultās iekārtas bezvadu komunikācijai īsās distancēs. Tas implementēts, izmantojot Rayson Class 1 komponentu BT-220A2 [4]. Savienojumam ar iegulto iekārtu tiek izmantota RS232 saskarne.
USB host saskarnes modulis ir paredzēts CarMote iegultās iekārtas komunikācijai ar ārējām USB iekārtām vadošās (master) iekārtas režīmā. Tas implementēts, izmantojot Future Technology Devices International komponentu VNC1L [3]. Savienojumam ar iegulto iekārtu tiek izmantota RS232 saskarne.
Lai nodrošinātu iespēju veikt pieslēgšanos auto elektroniskajai sistēmai un sekojošu datu ieguvi, tika veikta OBDII saskarnes moduļa implementācija, par pamatu ņemot Xxxxx Xxxxxxx izstrādāto konstrukciju [7]. Modulis nodrošina datu pieslēgumu, izmantojot K-line un L-line kopnes. Savienojumam ar datoru vai iegulto iekārtu tiek izmantota RS232 saskarne. Nepieciešamības
Att. 2.2: Bluetooth saskarnes modulis
Att. 2.3: USB host saskarnes modulis
gadījumā var tikt veikta arī konvertēšana uz USB saskarni, izmantojot atbilstošu aparatūras risinājumu.
Att. 2.4: OBDII saskarnes modulis
Sadarbībā ar MansOS grupu, ir uzsākta augstāk minētos saskarnes moduļus atbalstošās iegultās iekārtas programmatūras izstrāde. Programmatūra sastāv no četriem paralēliem servisiem:
1. Laika serviss, kas uztur reālā laika skaitītāju
2. GPS serviss, kas komuncē ar GPS servisu un apstrādā saņemto atrašanās pozīciju
3. Sensoru serviss, kas periodiski lasa visus nepieciešamos servisus un saglabā vērtības buferī
4. Krātuves serviss, kas ieraksta visus buferos uzkrātos datus (sensoru lasījumus un GPS pozīcijas) SD kartē.
2.4 Eksperimenti
Uzsākot darbu pie GCDC [8] sacensību auto pozicionēšanas sistēmas izveides, tika pieņemts lēmums veidot multimodālu risinājumu, kas balstīts uz kombinētu GPS uztvērēju un inerciālo mērījumu iekārtu izmantošanu. Līdz ar to bija nepieciešams veikt noteiktu eksperimentu apjomu, lai pārbaudītu pieņēmumu par šāda risinājuma potenciālo atbilstību sacensību tehniskajiem noteikumiem. Vispirms tika veikts eksperiments, lai noskaidrotu, kāds ir tipisks pozīcijas dreifs uztvērējam, kurš atrodas novietots nekustīgi vienā punktā. Šim nolūkam tika izmantots Magellan uztvērējs eXplorist XL, kurš tika novietots uz stāvoša auto jumta. Veicot 1h ilga datu ieraksta analīzi, tika noskaidrots, ka 2.5 attēlā (pa kreisi) redzamais uztvērēja pozīcijas dreifs ir 1,51m rietumu-austrumu
virzienā (LON) un 1,81m ziemeļu-dienvidu virzienā (LAT).
Lai noskaidrotu, vai vairāku GPS uztvērēju izmantošana un no tiem iegūto datu apvienošana ļautu samazināt sistēmas kopējo pozīcijas dreifu, tika veikts nākošais eksperiments, kura laikā tika izmantoti divi Magellan uztvērēji - eXplorist XL un eXplorist 210. Veicot 1h ilga datu ieraksta analīzi, tika noskaidrots, ka 2.5 attēlā (pa labi) redzamais divu uztvērēju sistēmas pozīcijas dreifs ir 1,31m rietumu-austrumu virzienā (LON) un 0,74m ziemeļu-dienvidu virzienā (LAT).
Att. 2.5: Statiskie GPS testi. Pa kreisi - viena GPS uztvērēja pozīcijas dreifs 1 h laikā, pa labi - divu GPS uztvērēju sistēmas pozīcijas dreifs 1 h laikā.
Lai pārbaudītu izveidotās divu uztvērēju sistēmas darbību dinamiskā režīmā, kā arī veiktu datu ieguvi no inerciālajām mērījumu iekārtām, tika veikts eksperiments, kura laikā auto, aprīkots ar kombinētu datu ieguves sistēmu, 1h
laikā veica 67 km garu ceļu. Datu ieguve no GPS uztvērējiem tika veikta 1x sekundē, bet datu ieguve no inerciālajām mērījumu iekārtām (3D akselerometra un 2D žiroskopa) 10x sekundē.
Vispirms tika veikta abu uztvērēju pozīcijas datu apvienošana ar granularitāti vienas sekundes robežās, iegūstot 2.6 attēlā (augšā) redzamo sistēmas pozīcijas dreifu 9,79m rietumu-austrumu virzienā (LON) un 6,50m ziemeļu-dienvidu virzienā (LAT). Ņemot vērā GCDC sacensību tehniskajos noteikumos minēto prasību par pozīcijas datu noteikšanu 10x sekundē, tika veikta abu uztvērēju datu apvienošana ar granularitāti 1/10 sekundes robežās. Šim nolūkam viena uztvērēja dati tika izmantoti nemainītā veidā, bet otra uztvērēja datiem tika veikts transformācijas process, ar nolūku iegūt pozīcijas datus vienam un tam pašam laika momentam. Rezultātā tika iegūts 2.6 attēlā (apakšā) redzamais sistēmas pozīcijas dreifs 2,42m rietumu-austrumu virzienā (LON) un 3,71m ziemeļu-dienvidu virzienā (LAT).
Att. 2.6: Dinamiskais GPS tests. Augšā - datu apvienošana ar granularitāti 1 sekunde, apakšā - datu apvienošana ar granularitāti 1/10 sekunde.
Nākošo eksperimentu mērķis ir noskaidrot, kā sistēmas pozīcijas dreifa vērtību ietekmē lielāka GPS uztvērēju skaita izmantošana. Tāpat paredzēts veikt pozīcijas vērtības aprēķina metodikas uzlabošanu, izmantojot šim nolūkam datus no inerciālajām mērījumu iekārtām.
2.5 Rezultāti
Eksperimentu rezultāti ļauj izdarīt secinājumu par izvēlētā multimodālā pozicionēšanas sistēmas risinājuma, kas balstīts uz kombinētu GPS uztvērēju un inerciālo mērījumu iekārtu izmantošanu, potenciālu piemērotību GCDC sacensību tehniskajiem noteikumiem. Vairāku datu avotu izmantošana
un no tiem iegūto datu apvienošana ļauj veidot pozicionēšanas sistēmas, kuru precizitāte ir augstāka, nekā atsevišķiem to sastāvā ietilpstošajiem komponentiem.
2.6 Kopsavilkums un secinājumi
Ir paveikts kārtējais darbu apjoms saistībā ar CarMote iegultās iekārtas prototipa izstrādi, kā arī eksperimentāli pārbaudīta izvēlētā pozicionēšanas sistēmas multimodālā risinājuma precizitāte. Grupas darbības rezultāti ir prezentēti Viedo sensoru un biofotonikas seminārā LU Atomfizikas un spektroskopijas institūtā. Atbilstoši GCDC sacensību tehniskajiem noteikumiem, ir sagatavots un iesniegts publikācijas abstrakts [9], kā arī video par aktivitātēm GCDC sacensību kontekstā.
2.7 Nākotnes perspektīvas
Turpinot aktivitātes viedo transporta sistēmu jomā, ir paredzēts pabeigt CarMote iegultās iekārtas prototipa aparatūras un programmatūras izstrādi, kā arī veikt tā testus reālos, praktiskam pielietojumam pietuvinātos apstākļos. Turpinot eksperimentus ar GPS uztvērējiem un inerciālajām mērījumu iekārtām, sadarbībā ar projektu ”Inovatīvas signālapstrādes tehnoloģijas viedu un efektīvu elektronisko sistēmu radīšanai” ir paredzēts izveidot pozicionēšanas sistēmu, kuru būtu iespējams izmantot GCDC sacensību auto aprīkojuma sastāvā. Veicot praktiskus eksperimentus ar OBDII saskarnes moduli, ir paredzēts veikt auto elektroniskās sistēmas datu ieguvi un izmantošanu, kas ir būtiska gan GCDC sacensību, gan arī viedo transporta sistēmu kontekstā. Savukārt uzsāktā ceļa meteo datu ieguve, izmantojot mobilus sensorus, ļaus veidot sinerģiju ar projektu ”Multifunkcionāla inteliģenta transporta sistēmas punkta tehnoloģija”.
Literatūra
[1] X. Xxxxxxxx, X. Xxxxx, B. Xxxx, X. Xxxxxx, X. Xxxxxx, and H. Balakrishnan. The Pothole Patrol: Using a Mobile Sensor Network for Road Surface Monitoring. In MobiSys ’08, pages 29–39, New York, NY, USA, 2008. ACM.
[2] R. N. Inc. RN-131G & RN-131C WiFly GSX 802.11 b/g Wireless LAN Module, December 2010.
[3] F. T. D. I. Ltd. Vinculum VNC1L Embedded USB Host Controller I.C., September 2006.
[4] R. T. C. Ltd. Class1 BC04-ext Module BTM-220, June 2006.
[5] X. Xxxxxx, X. Xxxxxxxxx, X. Xxxxxxx, X. Xxxxxxxxxx, and X. Xxxxxx. Roadmic: Road surface monitoring using vehicular sensor networks with microphones. In F. Xxxxxxx, X. Yaghob, P. Pichappan, and E. El-Qawasmeh, editors, NDT (2), volume 88 of Communications in Computer and Information Science, pages 417–429. Springer, 2010.
[6] P. Xxxxx, V. N. Xxxxxxxxxxx, and X. Xxxxxx. Nericell: Rich Monitoring of Road and Traffic Conditions using Mobile Smartphones. In SenSys ’08, pages 357–358, New York, NY, USA, 2008. ACM.
[7] J. Noxon. Opendiag OBD-II Schematics & PCB Layout. xxxx://xxx.xxxxxxxxxx.xxx/xxx/xxxxxxx/ opendiag-obd-ii-schematics-pcb-layout, July 2000. [Online; accessed 07.01.2011.].
[8] G. organization. GCDC 2011 Rules & Technology Document Final version, March 2010.
[9] X. Xxxxxxxxx, X. Xxxxxxxxxx, X. Xxxxxxxx, X. Xxxxxx, X. Xxxxxx,
X. Xxxxxxxx, and X. Xxxxxx. Team ”University of Latvia” GCDC 2011 Technical Paper. Technical report, University of Latvia and Institute of Electronics and Computer Science, 2010.
Nodaļa 3
EdiMote grupas atskaite
Anotācija
EdiMote - universāls rīks bezvadu sensoru mezglu prototipēšanai. Atskaitē ir pieminēts trīs mēnešos paveiktais EdiMotes apakšgrupas ietvaros, mērķi, uzdevumi, problēmas to iespējamie risinājumi. Ir izveidota vadības mikrokontroliera un CPLD algoritmu kopa, kas nodrošina iespēju EdiMotei komunicēt ar datoru un pārkonfigurēt EdiMotes periferiālās ierīces. Veikti vairāki praktiskie eksperimenti ar jaudas mērītājiem, analogo matricu, iekārtas protoripēšanu izmantojot EdiMotes rīku.
3.1 Ievads
Iepriekšējos mēnēšos tika veidota EdiMotes
• Arhitektūras blokshēma
• Prototips
• Moduļi
– Mikrokontoliera MSP430F1611 modulis
– Radio CC2420 modulis
Šajos trīs mēnešos mērķis bija sapludināt līdz šim veikto darbu EdiMotes apakšgrupas ietvaros. Tas ir, lai ar EdiMotes rīku varētu nosimulēt vai arī izveidot jaunu bezvadu sensoru mezglu. Par pirmo simulēšanas objektu tika izvēlēts populārs [3] sensoru mezgls – TelosB. Lai šādu rīku nosimulētu ar EdiMoti ir nepieciešams attīstīt algoritmus vadības mikrokontrolierī un CPLD, kas nodrošinātu
• Izstrādes rīka (EdiMotes) un datora savstarpējo iespēju apmainīties ar datiem
• Rīka periferiālo ierīču konfigurēšanu, piemēram, jaudas mērītāji
3.2 Risinājums
Izveidot komunikāciju ar datoru, EdiMotes periferiālo ierīču kontroli, kas ļautu kontrolēt EdiMoti no datora, attēlot iegūtos datus personālajā datorā. Lai to izdarītu vadības bloka mikrokontrolieriem (MCU) un CPLD blokam tika sastādīts saraksts ar veicamajām funkcijām
• Vadības mikrokontrolieris MSP430F437
– Barošanas spriegumu kontrole
– Komunikācija ar datoru
– Jaudas mērītāju kontrole
– Analogās matricas kontrole
• CPLD – Altera EPM1207T144C5N [1]
– Komunikācija ar datoru
– Ciparu signālu konfigurēšana
– Ciparu signālu atkļūdošana
Barošanas spriegumu kontrole – galvenais uzdevums „vērot” barošanas spriegumus, ja kāds no tiem ir ārpus normas (katrai ierīcei var būt atšķirīgs barošanas spriegums), tad vadības MCU atslēdz barošanu. Kontrole tiek veikta izmantojot vadības MCU iekšējos analogos ciparu pārveidotājus (ADC).
Komunikācija ar datoru – ir realizēta izmantojot FT4232HL [2] integrālo mikroshēmu (IC), kas spēj emulēt dažādus (UART, SPI, JTAG, I2C utt.) virknes protokolus. Ir iespējams realizēt četrus atsevišķus kanālus. Komunikācijai ar datoru tika izvēlēts UART (RS232) protokols.
Jaudas mērītāju kontrole. 4 jaudas mērītāji, kas spēj funkcionēt neatkarīgi viens no otra. Vadības MCU ir vairāki apakšuzdevumi. Viens no tiem ir mērītāju ieslēgšana un izslēgšana. Otrs ir datu apstrāde, kas nāk no mērītājiem. Izstrādājot šo daļu, saskārāmies ar problēmu, ka MCU nespēj vienlaicīgi apstrādāt četrus mērītājus, viens no risinājumiem bija samazināt references frekvenci (jaudas mērītāji strādā pēc pārveidošanas principa spriegums U → F frekvence) vai arī šo funkcionalitāti implementēt citā blokā, piemēram, CPLD. Tika izvēlēts otrais variants.
Viens no jaudas mērītājiem ir galvenais, kurš mēra visu moduļu kopējo patēriņu, tam mērīšanas diapazons ir 116mA ar izšķirtspēju 70uA, pārējie 3 mērītāji attiecīgi nosaka atsevišķi pieslēgto moduļu(sensoru) patēriņu, to mērāmās strāvas diapazons ir līdz 30mA ar izšķirtspēju 17uA. Mērījumu rezultāti tiek nosūtīti uz datoru caur FTDI, savukārt FTDI izmanto SPI protokolu, lai savāktu datus no CPLD. FTDI konfigurāciju un datu savākšanu veic izveidotā LabView grafiskā lietotāja vide.
Analogās matricas kontrole – analogo signālu komutācija, konfigurēšanai tiek izmantots SPI virknes protokols. Analogas matricas konfigurācijas datu pakete ir 256 bitu gara. Matricas konfigurāciju veic vadības mikrokontrolieris. Uz doto brīdi konfigurācijas dati netiek sūtīti no datora, bet atrodas jau uz vadības mikrokontroliera. Ir realizēta programma uz datora izmantojot LabView , kura nosūtīs konfigurācijas datus uz vadības mikrokontrolieri caur
Att. 3.1: EdiMotes pagaidu datu apstrades un lietotāja grafiskā saskarne EdiMote
Att. 3.2: blokshema, kas jaimplemente CPLD EdiMote
UART. LabView grafiskā lietotāju vide ļauj lietotājam grafiski savienot izvēlētos AMAT izvadus.
Veidojot algoritmus vadības mikrokontrolierim, izrādījās, ka tas nespēj apstradāt 4 jaudas mērītājus, tāpēc jaudas mērītāju kontroli pārcēlām uz CPLD bloku. Nākošajā attēlā ir redzama blokshēma, kas jāimplementē CPLD IC.
Komunikācija ar datoru – tiek izmantota FT4232HL IC, kas ir identiska izmantotajam vadības MCU, tikai protokols ir izvēlēts SPI. Komunikācijas nodrošināšana ir sarežģītāka nekā vadības MCU, jo CPLD IC protokola kontrolieris jāveido pašam, bet MCU tas jau ir iebūvēts. Kontrolieris tika realizēts VHDL valodā, tas spēj sūtīt un saņemt datus. Ņemot vērā to, ka ir nepieciešams kontrolēt EdiMotes periferiālās ierīces, tad jāizveido arī savas komandas un bloks, kas spēs atkodēt no datora sutītās komandas. Attēlā redzamie bloki – „SPI kontrolieris”, „Komandu dekodēšana”.
Jaudas mērītāju kontrole. Bloks, kas ir konfigurējams no datora, paredzēts jaudas mērītāju kontrolei, datu apstrādāšanai un masīvu formēšnai. Moduli ir iespējams konfigurēt, kāda laika intervālā tiek rēķināta patērētā jauda, praktiskie rezultāti jaudas mērītājiem ir veikti ar 4096 ciklu atstarpi (1MHz references frekvence un cikls 4096, kas kopsummā dod 4096 us laika intervālu). Šis bloks arī formē iegūtos datus 24 bitu paralēlā vektorā, pirmie 8 biti jeb viens baits ir jaudas mērītāja identifikācijas numurs (katrai periferiālai ierīcei unikāls), pārējie 2 baiti reprezentē datus. Šis bloks arī rūpējas par kontroles signālu ģenerēšanu, kas nepieciešama, lai saformētos datus ierakstītu Atmiņas (cache) modulī, kur dati tiek īslaicīgi glabāti. Kad datoram ir iespēja, tad šos datus pārsūta un saglabā savā atmiņā, kā arī vizuāli attēlo.
3.3 Eksperimenti un testi
Lai noskaņotu jaudas mērītājus uz attiecīgo nepieciešamo diapazonu, katram atsevišķi tika veikta kalibrēšana. Galvenais mērītājs uz 116mA diapazonu, izšķirtspēja 70uA, pārējie mērītāji 30mA, izšķirtspēja 17uA. Šie lielumi izvēlēti vadoties no pieslēdzamo testa moduļu un sensoru strāvas patēriņa. Lai notestētu EdiMotes komunikāciju starp datoru tikai izveidota LabView aplikācija komandu nosūtīšanai un datu savākšanai un attēlošanai. Ar LabView tika realizēts jaudas mērījumu apstrādes bloks. Vadības mikrokontrolierim tika izveidota testa programma pieslēgto moduļu pārbaudei(AMAT, sākotnēji arī jaudas mērtāji). Notestēta analogā matricas darbība, izveidojot dažādus komutācijas stāvokļus.
Izstrādājot CPLD konfigurāciju tika veikti vairāka līmeņa testi
• koda simulācijas
• koda pārbaude uz EdiMotes prototipa
Simulācijas tika veiktas izmantojot Altera Modelsim Sarter Edition programmatūru, kas ļauj nosimulēt esošo kodu kopu. Lai nosimulētu izveidoto HDL kodu, ir jāuzraksta testbench kods, kas simulē ārējo ierīci, piemēram, takts ģeneratoru. CPLD konfigurācija tika testēta šādā secībā
• Pārbaude simulēšanas līmenī
• Katrs bloks tika pārbaudīts atsevišķi
• Vairāku bloku pārbaude vienlaicīgi. Kā piemērs ir SPI kontroliera un komandu dekodēšanas bloku vienlaicīga pārbaude.
• Kopējās sistēmas pārbaude, tika veikti arī iespējamie uzlabojumi.
Att. 3.3: TelosB mote izmantojot EdiMote
• Pārbaude ieprogrammējot izveidoto CPLD konfigurāciju EdiMotē
EdiMotes rīka pielietošana veidojot bezvadu sensoru mezglus (Motes). Sākuma stadijā tika simulēti jau esoši bezvadu sensoru mezgli (BSM), kas ir sastopami pārdošanā. Pirmā simulējamā mote tika izvēlēta TelosB, jo to plaši pielieto bezvadu sensoru tīklu izveidē [3]. Lai sekmīgi nosimulētu moti, tā ir jāsadala pa funkcionālajiem moduļiem.
• Mikrokontrolieris (MCU)
• Radio
• Sensori
• Atmiņas
• Citi specifiski moduļi
Lai nosimulētu TelosB ir nepieciešami trīs moduļi.
• MCU - MSP430F1611
• Radio - CC2420
• Sensori
Izveidotie moduļi tiek izvietoti uz EdiMotes. Mote ir pilnībā simulējama, kad ir veikta ciparu signālu komutācija (tiek nodrošināta ar CPLD).
3.4 Rezultāti
CPLD konfigurācijas testēšana simulāciju līmenī nodrošināja efektīvāku atkļūdošanu nekā testējot uz reāliem dzelžiem. Ieprogrammējot izveidoto konfigurāciju CPLD un veicot testus, atklājās nekonsekventas kļūdas algoritmu izpildē, pēc vairākiem testiem tika saprasts, ka jāveic loģisko elementu laiku salāgošana ar TimeQuest Analyzer Quartus papildrīku.
Sekmīgi nosimulēta Telosb mote, tika uzrakstīta aplikācija, kura sazinājās ar TelosB moti, tika veikta jaudas mērīšana gan radio modulim un testa mikrokontrolierim atsevišķi, gan kopējā jauda.
Att. 3.4: Moduļu izvietojums uz EdiMote
Saistībā ar paveikto darbu ir iesniegts un akceptēts raksts REALWSN’10 konferencē [4]. Rezultāti tika demonstrēti REALWSN’10 konferencē, kas norisinājās no 16. - 17. decembrim. Konferencei tika sagatavots raksts, praktiskās demonstrācijas
• jaudas mērītāju demonstrācija
• TelosB motes simulācija izmantojot EdiMoti
3.5 Kopsavilkums un secinājumi
Trīs mēnešu laikā ir nosimulēts TelosB bezvadu sensoru mezgls. Tas bija šo trīs mēnešu galvenais mērķis, lai to sasniegtu bija jāapvieno iepriekšējos mēnešos paveiktais, kā arī bija jāizveido algoritmu kopa. Būtiskākie secinājumi
• Pirms testēt CPLD uz reāliem prototipiem jāveic loģisko elementu laika salāgošana, lai pārliecinātos, ka izvēlētā ierīce (CPLD) spēj implementēt izveidoto konfigurāciju
• CPLD vietā jāizmanto FPGA. Lielāks loģisko elementu (LE) skaits, ātrāka iekšējā frekvence salīdzinot ar CPLD
• Izveidot universālāku komandu dekodēšnas sistēmu (izmantot reģistru failu)
3.6 Nākotnes perspektīvas
Uzlabot mērītājus
• Precizitāti līdz 10us
• Iespēju mainīt laiku kadā tiek rēķināta jauda
Nomainīt CPLD uz FPGA
• Uzlabot Atmiņas moduli
• Ciparu signālu matricas attīstīšana
• Attīstīt signālu atkļūdošanu
• Iespēju konfigurēt divvirziena signālus (bidirectional)
Izveidot dažādu veidu moduļu plates
• AVR, MSP, ARM, FPGA
• Radio moduļi (RF) – nordic, bluetooth
• Sensori
Turpināt testēt esošās sensoru motes. Nokonfigurēt FTDI
• Tā, lai atpazītu TinyOS programmatūru, ja programmē MSP MCU BSL režīmā
• Dažādu arhitektūru programmēšana caur JTAG
Lietotāju programmatūras izveide (datoram)
• Grafiskas vides izveidošana
• Atbilstošu signālu atkļūdošanas attēlošana (sasinhronizēts ar nolasēm vai arī ar laika izšķirtspēju)
• Iespēja grafiski pārkonfigurēt komutējamos ciparu un analogos signālus.
Izveidot programmatūru, kas caur vadības MCU ciparu analogo pārveidotāju (DAC) spēj emulēt sensoru darbību.
Literatūra
[1] Altera max ii epm1207t144c5n datasheet. xxxx://xxx.xxxxxx.xxx/ literature/hb/max2/max2_mii5v1_01.pdf.
[2] Ftdi manual. xxxx://xxx.xxxxxxxx.xxx/Xxxxxxx/Xxxxxxxxx/ DataSheets/ICs/DS_FT4232H.pdf.
[3] D. C. Xxxxxx Xxxxxxxx, Xxxxxx Xxxxxxxx. Telos: enabling ultra-low power wireless research. In Proceeding IPSN ’05 Proceedings of the 4th international symposium on Information processing in sensor networks. IPSN, 2005.
[4] X. Xxxxxxx and X. Xxxxxx. EdiMote: A Flexible Sensor Node Prototyping and Profiling Tool. In Real-World Wireless Sensor Networks 4th International Workshop, REALWSN 2010 Colombo, Xxx Xxxxx, December 2010 Proceedings, pages 194–197. ACM, 2010.
Nodaļa 4
MansOS grupas atskaite
Anotācija
MansOS grupas mērķis ir izstrādāt operētājsistēmu bezvadu sensoru tīkliem (BST), kā arī strādāt pie šīs operētājsistēmas praktiskajiem pielietojumiem. Lai gan jau eksistē vairākas BST specifiskas operētājsistēmas, tām ir tādi trūkumi kā krauja apmācības līkne vai slikta portējamība. MansOS izvairās no šīm problēmām, sekojot savas arhitektūras vadlīnijām – strādāt mērķauditorijai ar UNIX un C programmēšanas pieredzi, būt lietotājdraudzīgiem, un piedāvāt vieglu portējamību uz jaunām aparatūras platformām. Viens no MansOS praktiskajiem pielietojumiem ir LynxNet projekts savvaļas dzīvnieku izsekošanai to dabiskajos apstākļos. LynxNet projekta arhitektūra veidota tā, lai tas izvairītos no šādiem projektiem raksturīgajiem trūkumiem (lielas uzstādīšanas un ekspluatācijas izmaksas, īss sistēmas darba laiks, mazs piedāvāto iespēju klāsts), būtu piemērots Latvijas apstākļiem un piedāvātu iespējas (piemēram, dzīvnieka aktivitātes detektēšana), kādas šādā sistēmā online režīmā tādā precizitātē nekad vēl nav tikušas piedāvātas.
4.1 Ievads
Darbs MansOS grupā 2010. gada pēdējā ceturksnī noritēja pie diviem apakšprojektiem. Pirmkārt, tā bija pašas operētājsistēmas MansOS programmēšana. Otrkārt, tas bija darbs pie viena no MansOS lietojumiem: LynxNet sistēmas savvaļas dzīvnieku novērošanai.
4.1.1 MansOS
Šobrīd bezvadu sensoru tīklu pētniecības vidē ir pazīstamas un plaši lietotas vairākas operētājsistēmas, radītas specifiski bezvadu sensoru tīklu aparatūrai. Taču šīm operētājsistēmam bieži ir raksturīgi vairāki trūkumi un nepilnības
– piemēram, krauja apmācības līkne (specifisku programmēšans valodu un paradigmu izmantošanas dēļ), kas var sagādat grutības jauniem lietotājiem, vai arī ierobežots aparatūras platformu atbalsts un slikta portējamība. MansOS mērķis ir piedāvāt operētājsistēmu bezvadu sensoru tīkliem, kas būtu gan viegli pieejama tai plašajai programmētāju grupai, kura ir C programmēšanas
zināšanas un UNIX līdzīgu sistēmu pieredze, gan arī atbalstītu plašu aparatūras platformu klāstu.
Virzoties uz šo mērķu sasniegšanu, konkrētajā laika periodā darbs notika sekojošajās jomās:
• jaunu platformu atbalsta pievienošana, lai demonstrētu, ka MansOS ir viegli portējama un paplašinātu tās lietojumu klāstu;
• jaunas aparatūras atbalsta pievienošana, lai paplašinātu MansOS potenciālo lietojumu klāstu, sadarbojoties ar ar citām grupām (CarMote, EdiMote) institūta iekšienē;
• MansOS apmācības procesa padarīšana vieglāka, tās lietošanas procesa labāka dokumentēšana;
• UNIX veidīgas un ar Desktop datoros pazīstamajām paradigmām savietojamas abstrakcijas, kā piemēram FAT failu sistēma uz SD kartēm;
• programmatūras koda uzturēšana un citi administratīvie uzdevumi.
4.1.2 LynxNet
LynxNet projekts radās pateicoties konkrētai un skaidri definētai bioloģijas zinātnieku vēlmei pētīt lūšus (Lynx lynx), bet nākotnē arī citus savvaļas dzīvniekus to dabiskajos apstākļos, kā piemēram mežā.
Eksistē daudzas dzīvnieku novērošanas sistēmas, bet tās ir vai nu dārgas, vai ar pārāk ierobežotu sistemās dzīves laiku, vai arī ierobežotas piedāvāto iespēju ziņā; reizēm vairāki vai pat visi no šiem trūkumiem kopā.
Mūsu mērķis ir piedāvāt sistēmu, kuras izmaksas būtu nelielas, kura būtu spējīga uz ilglaicīgu (t.i. vairāku gadu) ilgu darbu un piedāvātu plašu iespēju klāstu, tai skaitā tādas iespējas, kādas vēl nekad šī konkrētā veida dzīvnieku novērošanas sistemām nav tikušas realizētas – piemēram, dzīvnieka aktivitātes noteikšana online režīmā ar tik lielu precizitāti.
Prognozējamās (vēlamās) sistēmas īpašības, precizētas saskaņā ar biologu ieteikumiem:
• dzīvnieku izsekošana ar precizitāti ≤ 100m;
• datu savākšana ar relatīvi zemu latenci (nedēļas, nevis gadi);
• dzīvnieka aktivitātes veida detektēšana;
• sistēmas darbības biežuma un precizitātes pieskaņošana atkarībā no pētnieka norādītiem vai automātiski noteiktiem parametriem.
LynxNet projektā aktīvi piedalījās arī Xxxxx Xxxxxx un Xxxxxxxxx Xxxxxxxx.
4.2 Saistītie risinājumi
4.2.1 MansOS
Starp nozīmīgākajām bezvadu sensoru tīklu operētājsistēmām minamas TinyOS[10], LiteOS [6], Mantis[5], kā arī Contiki[8] operētājsistēmas. Starp
šīm TinyOS var uzskatīt par pašu populārāko; tajā pašā laikā tās apmācība nav triviāla, jo šī operētājsistēma spiež lietotājus izmantot specifisku programmēšanas valodu nesC kopā ar ne visiem labi pazīstamu programmēšanas paradigmu – uz notikumiem bāzētu programmēšanu. XxxxXX savukārt balstās uz konceptiem, kas labi zināmi ikvienam, kurš pazīstams ar C un UNIX programmēšanu.
MansOS aizsākās kā LiteOS atzarojums. LiteOS ir operētājsistēma, kas dala ar MansOS iepriekš minēto pieeju bezvadu sensoru tīklu programmēšanai, cenšoties to padarīt līdzīgāku UNIX sistēmam, taču tā darbojas tikai uz vienas aparatūras arhitektūras (AVR-MCU) un tās kods nav viegli portējams.
MansOS izstrādi ir ietekmējušas arī citas pieminētās BST operētājsistēmas. Līdzīgi kā TinyOS, bet kontrastā ar Contiki, MansOS ir licencēta zem atvērtā pirmkoda licences, kas pieļauj arī tās modificēšanu komerciālas
izmantošanas nolūkiem. Tādējādi tiek paplašināta MansOS mērķauditorija.
Vismaz populārākas no šeit minētajām operētājsistēmam ir labi dokumentētas un piedāvā iespēju uzinstalēt savu izejas kodu un tā būvēšanai un lietošanai nepieciešamos rīkos vairākos ērtos veidos, tai skaitā izmantojot dažāda veida (.deb, .rpm) programmatūras pakotnes. Pakotņu sistēmas atbalsts ir viens no pēdējā laika perioda jaunievedumiem arī MansOS.
TinyOS ir viena no operētājsistēma, kas atbalsta EPIC motes [9], bet citādi šīs platformas atbalsts nav pārāk izplatīts.
4.2.2 LynxNet
Eksistē vairāki veidi, kādos iespējams attālināti izsekot un novērot savvaļas dzīvniekus.
Pirmkārt, tā ir radio telemetrija, parasti izmantojot VHF frekvenču raidītāju. Šī metode ir labi pazīstama, labi izpētīta un joprojām pasaulē tiek plaši lietota, taču tai piemīt acīmredzami trūkumi salīdzinot ar jaunākām, viedākām sistēmām – galvenokārt saistīti ar radio telemetrijas sistēmu piedāvāto ierobežoto iespēju klāstu un zemo lokalizācijas precizitāti.
Otrkārt, tā ir satelīttelemetrija, kuru piedāvā tādi projekti kā ARGOS [1]. Galvenā problēma, kas padara šo sistēmu nepiemērotu Latvijas zinātniekiem, ir to izmantošanas izmaksas, kas sasniedz vairākus simtus dolāru mēnesī. Tāpat arī sistēma ir labāk piemērota tādu dzīvnieku izsekošanai, kuru apdzīvotā teritorija ir ļoti liela, vai arī tai ir grūti piekļūt (piemēram, okeāna vai polāro apvidu dzīvniekiem), jo tur izsekošana ar citām metodēm ir apgrūtināta.
Treškārt, tā ir GPS bāzēta attālinātā izsekošana. Te var pieminēt vairākas pēdējā dekādē izveidotas sistēmas, kā piemēram ZebraNet [14][11] dzīvnieku izsekošanas kaklasiksna, citi projekti [13][3][4]. Ir pieejami arī komerciāli produkti, tādi kā Tellus kaklasisksnas [2]. Pie šīs grupas piederēs arī LynxNet risinājums. Atšķirībā no iepriekšminētajiem tam būtu jābūt ilgi darboties spējīgam arī bez saules bateriju palīdzības un jāspēj piedāvāt aparatūra ar mazākām izmaksām.
Att. 4.1: MansOS atbalstītās aparatūras platformas
Att. 4.2: MansOS arhitektūra
4.3 Risinājums
4.3.1 MansOS
Jaunu platformu pievienošana
• EPIC mote atbalsta pievienošana (4.1 zīmējums);
Jaunas aparatūras atbalsta pievienošana
• I2C atbalsta pievienošana;
• LCD (HD4478 čipa) draivera pievienošana;
• Elementāra watchdog taimera kontroles API pievienošana. Ir pievienota, piemēram, programmatiska motes pārstartēšanas funkcija;
• Pīkstuļa API pievienošana.
MansOS arhitektūras shematisks attēlojums kopā ar tās atbalstītās aparatūras moduļiem uz 01.11.2010. redzams 4.2 zīmējumā.
Darbs vērsts uz lietošanas un apmācības ērtumu
• Uzbūvētas un publicētas .deb pakotnes ar MansOS kodu, un tā lietošanai nepieciešamajiem rīkiem. Rezultātā iegūtā MansOS integrācija dažādos Linux distributīvos plaši izmantotais .deb pakotņu pārvaldības sistēmā padarīs to vieglāk pieejamu un ērtāk uzstādāmu plašam lietotāju skaitam;
• Sastādīta un publicēta uzlabota MansOS instalācijas dokumentācija, papildināta cita veida MansOS dokumentācija;
• Pievienota iespēja globāli norādīt un ērti pārkonfigurēt motes CPU frekvenci (uz vairākām platformām).
Administratīvie uzdevumi
• Jaunas licences piešķiršana MansOS (New BSD license), licences informācijas izvietošana visos zem tās publicētajos MansOS pirmkoda failos, licencei neatbilstošā koda pārrakstīšana (darbs izpildes stadijā);
• MansOS koda inventarizācija, problemātisko koda vietu apzināšana, problemātisko failu saraksta sastādīšana.
Savu rezultātu prezentēšana
• Plakāta (stenda referāta) sagatavošana un prezentēšana ACM SenSys 2010 konferencē Cīrihē, Šveicē [12]: X.Xxxxxxxxx, X.Xxxxx, and X.Xxxxxx, “MansOS: Easy to Use, Portable and Resource Efficient Operating System for Networked Embedded Devices”. Publicēts SenSys ’10 Proceedings of the 8th ACM Conference on Embedded Networked Sensor Systems, pieejams tiešsaistē xxxx://xxxxxx.xxx.xxx/xx_xxxxxxx.xxx?xxx0000000&xxxxxxxx.
Citi uzdevumi
• FAT failu sistēmas, SD kartes draivera, un TRM-433 radio transcīvera čipa draivera koda uzlabošana un atkļūdošana.
4.3.2 LynxNet
Paveiktie darbi:
• tikšanās ar institūta “Silava” pārstāvi;
• UHF un VHF radio čipu izpēte, dažādu radio transcīveru čipu salīdzinošā saraksta izveide;
• sistēmas arhitektūras konkretizēšana un papildināšana;
• sistēmas sagaidāmās atrašanās teritorijas (Ķemeru Nacionālā parka) teorētiska izpēte, paaugstinājuma punktu, torņu apzināšana šajā teritorijā. Tika noskaidrots, kur atrodas torņi, kur ir potenciālās bāzes staciju atrašanās vietas;
• radio signāla izplatīšanas teorētiska modelēšana sistēmas izvietošanas rajonā, izmantojot RadioMobile programmatūru [7];
• vēsturiski savākto lūšu GPS datu izpēte un vizualizācija, lai saprastu, cik ātri lūši parasti pārvietojas un kādi ir viņu kustības paterni;
• piedalīšanas plakāta
(stenda referāta) sagatavošanā [15] X.Xxxxxxxx, X.Xxxxx, X.Xxxxxxxxx, X.Xxxxxx, and X.Xxxxxx, “LynxNet: Wild Animal Monitoring Using Sensor Networks”. Publicēts In Proceedings of REALWSN 2010 published by Springer in Lecture Notes in Computer Science, pieejams tiešsaistē xxxx://xxx.xxxxxxxxxxxx.xxx/xxxxxxx/000000x0xx0x0000. Xxxxxxxxx Xxxxxxxx bija šī plakāta galvenais autors un to prezentēja REALWSN’10 konferencē Šrilankā.
Tikšanās ar Aivaru Ornicānu no Silavas rezultātā nonācām pie secinājuma, ka vajag izmainīt, papildināt sistēmas arhitektūru. Jaunā ideja ir sistēmas prototipiem izmantot plati, kas atbalsta divu veidu radio komunikāciju:
• tālas distances komunikācija ar maziem datu pārraides apjomiem;
• komunikācija bāzes staciju tuvumā.
Vēlāk var izvēlēties no šiem diviem variantiem efektīvāko, vai arī saglabāt abus, ja tas izrādītos izdevīgi.
Paredzams, ka kaklasiksnās būs arī vēl šādu veidu radio:
• CC2420, strādājošs 2.4 GHz frekvencē, jo tas ietilpst Tmote Mini sastāvā;
• VHF frekvencē strādājoša radio bāka, neatkarīga no visiem pārējiem komponentiem un izmantojama radio siksnas atrašanai (ar triangulācijas metodi) pārējās sistēmas daļas atteikuma gadījumā.
Vienojāmies, ka jāvāc šādi sensoru dati (to savākšanas un nosūtīšanas prioritātē):
1. Koordinātes (GPS, triangulācija). Maksimālā pieļaujamā kļūda 100m, vēlams ne lielāka par 10m. Var vākt reizi divās, trijās stundās;
2. Aktivitāte (klasifikators, akselerometrs, žiroskops) reizi 5 min. Var būt mērāmās dienas un taupības (nemērāmās) dienas;
Att. 4.3: LynxNet radio pārklājuma modelēšana Ķemeru nacionālajā parkā 152MHz frekvencē
3. Apgaismojums: reizi 5 min;
4. Temperatūra: reizi 5 min (nav īpaši svarīgi).
Vēlams, lai sistēma automātiski ieslēgtos brīdi, kad ”notiek kaut kas interesants”, piemēram, lūsis sāk aktīvi kustēties. Iespējams, ka risinājums ir lietot dzīvsudraba slēdzi.
Iespējams, lokalizēt lūšu atrašanas vietu var arī ar inerciālās sistēmas palīdzību (akselerometra un žiroskopa dati), lai samazinātu nepieciešamās GPS ieslēgšanas reižu biežumu.
Tālas distances komunikācijai būtu izdevīgi lietot VHF, nevis UHF frekvences. Sagaidāms, ka pirmās no tām meža apstākļos izplatīsies labāk. Biologiem ir pieejamas licencētas VHF frekvences 152MHz joslā, līdz ar to publiski brīvi pieejamo UHF 433MHz frekvenču izmantošana nav obligāta. Balstoties uz šiem apsvērumiem, tika veikta potenciāli lietojamo radio transcīveru čipu izpēte un salīdzināšana. Tika izdarīti secinājumi, ka piemērots VHF komunikācijai varētu būt Analog Devices ADF7021, kā arī Radiometrix BiM1 (pēdējo nepieciešams speciāli pasūtīt LynxNet projektam derīgā frekvences izpildījumā, un nav izslēgts, ka viena vai dažu eksemplāru liels pasūtījums var būt pārāk mazs, lai varētu vienoties par tā izgatavošanu ar ražotājiem). Citiem Radiometrix čipiem raidīšanas jauda būtiski pārsniedz atļaujās minēto, kā arī ir identiska problēma ar frekvencēm. Friendcom čipi, vadoties pēc dokumentācijas, ir paredzēti darbam citā (230MHz) frekvenču diapazonā, kā arī būtiski pārsniedz atļaujās minēto jaudu.
Tālas distances komunikācija notiek no torņiem (mobilo sakaru vai arī ugunsdzēsības). Sagaidāms, ka tā sniegsies vairāku kilometru attālumā (tika minēti pat 10). Visticamāk, tā nespēs piedāvāt pietiekoši lielu datu kanāla
Att. 4.4: LynxNet radio pārklājuma modelēšana Ķemeru nacionālajā parkā 433MHz frekvencē
apjomus, lai ar tiem pietiktu pilnai datu pārraidei. Bet tai varētu būt arī tāda papildfunkcija kā izmantošana triangulācijai (lūšu lokalizācijai). Vēlamā lokalizācijas precizitāte tādā gadījumā būtu 1̃00m (200m jau būtu par maz, pēc
A. Ornicāna vārdiem). Pilnībā noklāt lūšu apdzīvoto platību ar mūsu resursiem būs grūti līdz neiespējami, jo tā ir vismaz 200-300km2, bet var būt pat līdz 700km2. Salīdzinājumam – staltbriežiem, kuru novērošana Latvijā jau ir tikusi realizēta pilnībā pārklājot atsevišķu indivīdu apdzīvoto teritoriju, tā ir tikai 30km2. Bāzes stacijas ir paredzētas efektīvai datu pārraidei nelielā (daži simti metru) attālumā. Tās ieteicams izvietot purva malās un meža ”šaurajās vietās”. Būtu vēlams izvietot vairākas bāzes stacijas; nekādu šķēršļu tam nav, vienīgi mūsu pašu līdzekļi (to trūkums). Var cerēt, ka lūsis tām ies garām reizi nedēļā. Sistēmas pirmo versiju plānots izvietot Ķemeru Nacionālajā parkā. Tās attālums no Rīgas tad būtu aptuveni 40km. Xxxxxx Xxxxxxxx dzīvo netālu un var tur esošās iekārtas apraudzīt diezgan bieži. Vēl līdzīgas vietas Latvijā ir Neretas apkaimē (netālu, Lietuvā, ir Biržu meža masīvs) un pie Madonas (uz ziemeļiem no tās, kaut kur trijstūrī Madona–Cesvaine–Vecpiebalga). Kopumā
Latvijā ir no 700 līdz 1000 lūšiem.
Var sagaidīt, ka sezonā Ķemeru Nacionālajā parkā tiks noķerts viens, maksimāli divi lūši. Kopumā Ķemeros pastāvīgi dzīvo trīs – četri. Atkārtoti noķert lūsi ir grūti, kaut arī tas ir iespējams un iepriekš jau ir ticis darīts. Sliktākajā gadījumā to var arī nomedīt.
Lūsis ir krēslas dzīvnieks. Parasti guļ no 12:00 līdz 15:00/16:00 dienā un no 2:00 līdz 3:00/4:00 naktī. Aktīvāks pilnmēnesī, pie augstāka atmosfēras spiediena. Pievilināšanai (pie bāzes stacijas) var izmantot smakas: cita lūša smaka (piemēram, ņemta no zoodārza; dzimumam nav nozīmes), bebru dziedzeri, kaķumētras. Aromātvielas gan būtu vēlams periodiski atjaunot.
4.4 Kopsavilkums un secinājumi
4.4.1 MansOS
MansOS noritēja darbs skojošās jomās: jaunu platformu pievienošana, jaunas aparatūras atbalsta pievienošana, darbs vērsts uz lietošanas un apmācības ērtumu, administratīvie uzdevumi un citi uzdevumi.
Notika arī savu rezultātu prezentēšana starptautiskā konferencē ACM SenSys 2010 Šveicē, Cīrihē no 3. līdz 5. novembrim.
4.4.2 LynxNet
Noritēja darbs pie sistēmas arhitektūras projektēšanas, radio čipu izpētes un salīdzināšanas. Notika tikšanās ar biologu – institūta Silava pārstāvi, potenciālo sistēmas lietotāju.
Xxxxxxxxx Xxxxxxxx prezentēja savus un mūsu pētniecības rezultātus starptautiskā konferencē REALWSN’10 Šrilankā 16. un 17. decembrī.
4.5 Nākotnes perspektīvas
4.5.1 MansOS
Darbs pie MansOS turpināsies visās tās mērķu apakškaterogijās:
• jaunu platformu atbalsta pievienošana – piemēram, Texas Instruments Chrono Watch kā MansOS platforma;
• jaunas aparatūras atbalsta pievienošana – vadoties no LynxNet, CarMote, EdiMote un citu iekšējo projektu vajadzībām;
• MansOS padarīšana lietotājiem pieejamāka – dokumentācijas un apmācības rakstīšana;
• UNIX-veidīgu abstrakciju pievienošana – Internet Protocol atbalsta pievienošana, specifiski 6lowPAN, perspektīvā arī RPL;
• programmatūras koda uzturēšana – problemātisko licencei neatbilstošo koda daļu pārrakstīšanas pabeigšana.
4.5.2 LynxNet
Apzinātie darbi:
1. Radio čipa izvēle;
2. LynxNet prototipa ierīces aparatūras izveidošana un programmēšana;
3. Ķemeru meža izpēte dabā;
4. Suns kā testu objekts.
1. Radio čipa izvēle tālas distances komunikācijai ar maziem datu pārraides apjomiem. LINX-TRM433 čips te maz der, jo zemu simbolu pārraides tempu sasniegt digitālā veidā ir gandrīz neiespējami (izmantotās modulācijas dēļ: OOK nespēj ilgi ”noturēt” ne nulli, ne vieninieku), bet pseido-analogā veidā (ar RSSI) – visticamāk, ļoti sarežģīti. Komunikācijai ar bāzes staciju varētu izmantot to pašu LINX-TRM433, taču ideāli būtu lietot čipu, kas atbalsta abus režīmus. Efektīvāk mežā būtu izmantot biologiem pieejamās 150MHz un 152MHz frekvences, salīdzinot ar brīvi pieejamajām 433MHz un 868MHz.
2. Jānoved LynxNet prototipa ierīce līdz tādam stāvoklim, ka tā ir nododama lietošanai biologiem: uzstādīšanai meža dzīvniekiem. Tiek plānots, ka prototipa ierīce būs gatava uz 2011. gada martu, kad tā arī varētu būt vajadzīga biologiem. Paralēli jāizprojektē un jārealizē arī bāzes staciju infrastuktūra.
3. Meža izpēte – noskaidrot, kā dabā izskatās torņi, potenciālās bāzes staciju atrašanās vietas, lūšu takas. Izmērīt radio signāla slāpēšanos reālajos meža apstākļos.
4. Dažādi testi ar suņiem:
• Aktivitāšu detektēšana (datu vākšana ar vēlāku offline apstrādi) sunim ar paralēlu tā filmēšanu. Šajā testā tiek pārbaudīta sensoru savākto datu kvalitāte, tas palīdz izvērtēt, cik daudz no tiem ir iespējams izsecināt un cik bieži tos vajadzētu ieslēgt;
• Siksnas uzlikšana sunim, un tā novērošana dažādos apsākļos, tai skaitā mežā. Šajā testā tiek pārbaudītas tādas lietas – GPS datu ieguves mežā tests; radio darbošanās mežā tests; vairāku dienu, nedēļu nepārtrauktas darboties spējas tests;
• Lūsim fiziski līdzīga suņa kaklasiksnas antenas 360 grādu radio izstarojuma izmērīšana, vēlams dažādās pozās (guļot, sēdot, stāvot).
Literatūra
[1] Argos - worldwide tracking and environmental monitoring by satellite.
xxxx://xxx.xxxxx-xxxxxx.xxx. [Online; accessed 24.11.2010.].
[2] Followit wildlife. xxxx://xxx.xxxxxxxx.xx/xxxxxxxx/. [Online; accessed 1.7.2010.].
[3] Gps gsm lynx tracking in the bavarian forest national park. http:
//xxx.xxxxxxxxxxxxx-xxxxxxx.xx/xxxxxxxx/00/XXX-xxxx-xxxxxxxx/ gps-lynx-tracking.html. [Online; accessed 11.2.2010.].
[4] Post - pacific ocean shelf tracking project. xxxx://xxxxxxxx.xxx/. [Online; accessed 06.01.2011.].
[5] X. Xxxxxx, X. Xxxxxxx, X. Xxx, X. Xxxx, X. Xxxx, X. Xxxxx, X. Shucker,
C. Xxxxxxxxx, X. Xxxxxxxxx, and X. Han. MANTIS OS: An Embedded Multithreaded Operating System for Wireless Micro Sensor Platforms. Mobile Networks and Applications, 10(4):563–579, 2005.
[6] Q. Xxx, X. Xxxxxxxxxx, X. Xxxxxxxxx, and T. He. The liteos operating system: Towards unix-like abstractions for wireless sensor networks. In IPSN ’08: Proceedings of the 7th international conference on Information processing in sensor networks, pages 233–244, Washington, DC, USA, 2008. IEEE Computer Society.
[7] R. Coudé. Radio mobile. xxxx://xxx.xxxxx.xxx/xxx/xxxxxxx0.xxxx. [Online; accessed 24.11.2010.].
[8] X. Xxxxxxx, X. Xxxxxxxx, and X. Xxxxx. Contiki - a lightweight and flexible operating system for tiny networked sensors. Local Computer Networks, Annual IEEE Conference on, 0:455–462, 2004.
[9] P. Xxxxx, X. Xxxxxx, X. Xxxxx, X. Xxxxx, and D. Culler. A Building Block Approach to Sensornet Systems. In SenSys ’08: Proceedings of the 6th ACM conference on Embedded network sensor systems, pages 267–280, New York, NY, USA, 2008. ACM.
[10] P. Xxxxx, X. Xxxxxx, X. Xxxxxxxx, X. Xxxxxxxx, X. Xxxxxxxxxx, X. Woo,
D. Xxx, X. Xxxx, X. Xxxxx, X. Xxxxxx, and D. Culler. Tinyos: An operating system for sensor networks. In in Ambient Intelligence. Springer Verlag, 2004.
[11] X. Xxx, X. Xxxxxx, X. Xxxxx, and X. Martonosi. Implementing software on resource-constrained mobile sensors: experiences with impala and zebranet. In Proc. MobySys’04, pages 256–269, 2004.
[12] X. Xxxxxxxxx, X. Xxxxx, and X. Xxxxxx. Mansos: easy to use, portable and resource efficient operating system for networked embedded devices. In Proceedings of the 8th ACM Conference on Embedded Networked Sensor Systems, SenSys ’10, pages 427–428, New York, NY, USA, 2010. ACM.
[13] X. Xxxx, X. Xxxxxxxx, X. Xx, et al. The design and evaluation of a mobile sensor/actuator network for autonomous animal control. In Proc. IPSN’07, pages 206–215, 2007.
[14] X. Xxxxx, X. Xxxxxx, X. Xxxx, and M. Martonosi. Hardware design experiences in ZebraNet. In Proc. SenSys’04, pages 227–238, 2004.
[15] X. Xxxxxxxx, X. Xxxxx, X. Xxxxxxxxx, X. Xxxxxx, and X. Xxxxxx. Lynxnet: Wild animal monitoring using sensor networks. In P. Xxxxxx, X. Xxxxx,
P. Corke, and X. Xxxxxxx, editors, Real-World Wireless Sensor Networks, volume 6511 of Lecture Notes in Computer Science, pages 170–173. Springer Berlin / Heidelberg, 2010. 10.1007/978-3-642-17520-6_18.
Nodaļa 5
SAntArray grupas atskaite
Anotācija
XXxxXxxxx grupas mērķis ir izveidot vienkāršu antenu ar elektroniski vadāmu virziendarbību. Šajā atskaitē aprakstīta ESPAR antenas optimizācijas procedūra, kas nodrošina šīs antenas noskaņošanu rezonansē.
5.1 Ievads
Lai nodrošinātu bezvadu sensora darbību tam nepieciešams enerģijas avots. Bieži bezvadu sensoru pielietojumos nepieciešams ilgs datu ievākšanas laiks
– sekojoši arī ilga bezvadu sensora darbība. Tādējādi var teikt, ka enerģijas taupīšana un racionāla izlietošana ir svarīgs uzdevums sensoru mezgla ilgas darbības nodrošināšanai. SAntArray darba grupā apskatām iespēju ieaupīt enerģiju samazinot raidīšanas jaudu izmantojot Elektroniski vadāma parazītisko (pasīvo) elementu masīva (ESPAR) tipa virziena darbības antenu.
Mūsuprāt perspektīvākā ESPAR tipa antenas konstrukcija ir piedavāta [6], kur aprakstīts 7 elementu antenas dizains un raidīšanas virziena regulēšanas princips, teorētiskais virziena darbības aprēķins un tā salīdzinājums ar prototipa testu rezultātiem. Lai noteiktu optimālos antenas ģeometriskos un vadības parametrus, autori izmanto ģenētiskos algoritmus, maksimizējot antenas reālo pastiprinajumu izvēlētajā virzienā tādējādi ņemot vērā arī salāgošanas zudumus. Aprēķini veikti ar galīgo elementu metodi izmantojot komerciāli pieejamo programmatūru. Rezultatā atrastie parametri neatbilst antenas rezonansei, kas izpaužās kā relatīvi liela ieejas pretetības imaginārā daļa, kas savukārt ir nevēlami.
Mēs piedavajam citu antenas ģeometrisko un vadības parametru notiekšanas stratēģiju vispirms veicot antenas īpašību parametriskas studijas, pēc tam veicot šo rezultātu pēcapstrādi lai notiektu antenas rezonanses parametrus. Apreķinus mēc veicam vienkāršotam antenas modelim izmantojot atvērtā pirmkoda programmatūru [4, 1], kas izmanto momentu metodi.
hp
X4
rp
X
ha
3
X5
Zin
X0
X1
X2
Att. 5.1: Septiņu elementu ESPAR antena [5] un tās modelis
5.2 Saistītie risinājumi
Lai antenas ģeometrisko un vadības parametru notiekšanas procedūrā apvienotu resursuietilpīgās galīgo elementu metodes precizitāti ar ne tik precīzi aprakstošās momentu metodes ātrdarbību, tiek piedāvāts eksperimentāli nomērīt antenas komponenšu starojuma diagrammas un savstarpējās impedances un tad lietot ģenētiskos algoritmus optimālo parametru noteikšanai [3]. Diemžēl arī šajā gadījumā iegūta antena ar relatīvi lielu ieejas pretestības reaktīvo komponenti. Mūsuprāt būtu interesanti pielietot šeit aprakstīto “divpakāpju” parametru noteikšanas stratēģiju.
5.3 Risinājums
Septiņu elementu ESPAR antena un tās vienkāršotais modelis attēloti
5.1 zīmējumā. Antenas ģeometriu raksturo sekojoši parametri ha - antenas centrālā, t.i. aktīvā elementa garums, hp - antenas pasīvo elementu garumi un rp - antenas pasīvo elementu attalums no centrālā elementa. Antenas pamatne tiek modelēta kā bezgalīga ideāli vadoša materiāla plakne. Arī antenas aktīvais un pasīvie elementi tiek uzskatīti par ideali vadošiem. Antenas vadību šajā modelī nodrošina reaktīvās pretestības X0, . . . , X5, kas ieslēgtas virknē ar pasīvo elementu to apakšējā daļā. Savukārt ierosina uzdodot spriegumu antenas aktīvā elementa apakšējā daļā. Aprēķinu rezultātā tiek atrasta gan antenas starojuma diagramma gan arī strāva antenas ieejā. Pēdējais lielums ļauj notekt antenas ieejas pretestību Zin.
Lai veiksmīgi veiktu antenas īpašību parametriskās studijas, ir jāizprot katra tās parametra ietekme. Vispirms jau skaidrs, ka antenas virziendarbības īpašības nosaka X0, . . . , X5, izjaucot konstrukcijas aksiālo simetriju. Pēc analoģijas ar vienkāršo monopola antenu, centralā aktīvā elementa garums nosaka gan antenas ieejas pretestību gan arī ietekmē tās pastiprinājumu. Šeit japiebilst, ka monopola antenas rezonanses garums ir nedaudz mazāks par λ/4 un šo lielumu ietekmē gan stieņa diametrs gan arī tā materiāla vadītspēja. Savukārt pasīvo elementu garums ietekmē to, kā tas “vada” uz to krītošo elektromagnetisko vilni. Klasiskajām Yagi antenām par rezonanses garumu garāks elements atstaro atpakaļ, bet īsāks staro viļņa kustības virzienā. ESPAR antenai šo vadību nodrošina X0, . . . , X5, tapēc pasīvo elementu garumam nav
50
40
30
X3 , Ω
rp , λ
20
10
0
−10
−20
−100 −80 −60 −40 −20 0 20
X0 , Ω
0.45
0.45
hp = 0. 9ha hp = 1. 0ha hp = 1. 1ha
0.40
0.35
0.30
0.25
0.20
0.15
9.4 9.6 9.8 10.0 10.2 10.4 10.6 10.8
Gain, dBi
0.45
0.40 0.40
0.35 0.35
rp , λ
rp , λ
0.30 0.30
0.25 0.25
0.20
0.15
0 20 40 60 80 100
Re(Zin), Ω
0.20
0.15
0 10 20 30 40 50 60
Im(Zin), Ω
×
Att. 5.2: ESPAR antenas parametru atkarība no rp dažadām pasīvo elementu garuma vērtībām hp = (0.9, 1.0, 1.1) hm un fiksētam aktīvā elementa garumam ha = hm. Antenas ieejas pretestības aktīvā un reaktīvā komponentes apakšējā rindā. Antenas pastriprinājums virziendarbības maksimuma virzienā augšā pa labi un divu no vadības impedancēm vērtības augšā pa kreisi.
būtiskas nozīmes - tas nosaka tikai nepieciešamās X0, . . . , X5 maiņas robežas.
×
Iepriekš teiktais ilustrēts aprēķinu rezultātos, kas doti 5.2 zīmējumā, kur attēloti ESPAR antenas parametru atkarība no pasīvo elementu attaluma līdz centrālajam elementam rp trijiem dažadiem pasīvo elementu garumiem: hp = (0.9, 1.0, 1.1) hm, kur hm ir monopola antenas rezonanses garums. Centrālā elementa garums ha = hm visos trīs gadījumos. Visos gadījumos katrai no rp vērtībām ir atrastas tādas reaktīvo pretestību X0, . . . , X5 vērtības, lai antenai būtu maksimālais pastiprinājums reaktīvas pretestības X0 virzienā. Kā var redzēt, ieejas pretestība nav atkarīga no hp, savukārt hp būtiski ietekmē vadības impedanču vērtību diapazonu. Šeit un talāk visi aprēķini veikti frekvencei
2.44 GHz.
Tātad antenas optimālo parametru notiekšanas pirmais posms ir antenas pastiprinājuma maksimalās virziendarbības virzienā un ieejas pretestības aprēķināšana atkarībā no attaluma starp aktīvo un pasīvo elementiem rp kā arī no aktīvā elementa garuma ha. Atbilstoši iepriekš teiktajam, pasīvo elementu garumus var izvēlēties vienādu ar aktīvā elementa garumu. Savukārt katram rp un ha vērtību pārim atrod tādas reaktīvo pretestību X0, . . . , X5 vērtības, lai antenai būtu maksimālais pastiprinājums reaktīvas pretestības X0 virzienā.
ha = 0. 8hm ha = 0. 9hm ha = 1. 0hm ha = 1. 1hm
80 0.45
60 0.40
X3 , Ω
40 0.35
rp , λ
20 0.30
0 0.25
−20 0.20
−40
−100 −80 −60 −40 −20 0 20 40 60
X0 , Ω
0.45
0.40
0.35
rp , λ
rp , λ
0.30
0.25
0.20
0.15
9.4 9.6 9.8 10.0 10.2 10.4 10.6 10.8
Gain, dBi
0.45
0.40
0.35
0.30
0.25
0.20
0.15
0 20 40 60 80 100 120 140
Re(Zin), Ω
0.15
−60 −40 −20 0 20 40 60 80 100
Im(Zin), Ω
×
Att. 5.3: ESPAR antenas parametru atkarība no rp dažadām aktīvo elementu garuma vērtībām ha = (0.8, 0.9, 1.0, 1.1) hm. Pasīva elementa garums vienmēr vienāds ar aktīvā elementu garumu. Antenas ieejas pretestības aktīvā un reaktīvā komponentes apakšējā rindā. Antenas pastriprinājums virziendarbības maksimuma virzienā augšā pa labi un divu no vadības impedancēm vērtības augšā pa kreisi.
Veikto aprēķinu rezultāti ir apkopoti 5.3 zīmējumā. Galvenā atķirība no
5.2 zīmējumā dotajiem rezultatiem ir tāda, ka esam ieguvuši antenas ieejas pretestības atkarību no ha vērtības.
Antenu rezonansē noskaņojam mainot aktīvā elementa garumu fiksētam attālumam starp aktīvo un pasīvo elementiem. Tātad katrai rp vērtībai atrod atbilstošās ha un X0, . . . , X5 vērtības izmantojot sekojošu algoritmu
1. Antenas ieejas pretestības reaktīvās komponentes vērtību atkarībā no aktīvā elementa garuma ha interpolē ar kvadrātisku polinomu izmantojot vērības trijos punktus: ha = 0.8hm, ha = 0.9hm un ha = hm.
a
Im(Zin(ha)) = Ah2 + Bha + C
Punkti izvēlēti šādi, jo Im(Zin(0.8hm)) < 0 un Im(Zin(hm)) > 0 visām apskatītajām rp vērtībām.
2. Atrod rezonansei atbilstošo aktīvā elementa garumu h atrisinot kvadrātvienādojumu
Ah2 + Bh + C = 0
46
44
42
40
X3 , Ω
rp , λ
38
36
34
32
30
28
−5 0 5 10 15
X0 , Ω
0.45
0.45
0.40
0.35
0.30
0.25
0.20
0.15
9.4 9.6 9.8 10.0 10.2 10.4 10.6
Gain, dBi
0.45
0.40 0.40
0.35 0.35
rp , λ
rp , λ
0.30 0.30
0.25 0.25
0.20 0.20
0.15
0 10 20 30 40 50 60 70 re(Z), Ω
0.15
0.195 0.200 0.205 0.210 0.215 0.22
ha , λ
Att. 5.4: Aprēķinātie ESPAR antenas rezonanses parametri. Antenas aktīvā elementa garums apakšā pa labi, ieejas pretestības aktīvā komponentes apakšējā rindā pa kriesi. Antenas pastriprinājums virziendarbības maksimuma virzienā augšā pa labi un divu no vadības impedancēm vērtības augšā pa kreisi.
3. Atrod rezonansei atbilstošo vērtību katrai no reaktīvajām vadības pretestībām
(a) Reaktīvās vadības pretestības vērtību Xi interpolē ar kvadrātisku polinomu izmantojot vērības trijos punktus: ha = 0.8hm, ha = 0.9hm un ha = hm.
a
Xi(ha) = Aih2 + Biha + Ci
(b) Rezonansei atbilstošo vērtību atrod kā interpolācijas polinoma vērtību atbilstošu aktīvā elementa rezonanses garumam h
Xi = Aih2 + Bih + Ci
ESPAR antenas optimālo parametru notiekšanas otrā posma rezultāti doti
5.4 zīmējumā. Vislabakais pastiprinājums maksimālās virziendarbības virzienā atbilst attālumam starp aktīvo un pasīvo elementiem rp = 0.271 λ, aktīvā un pasīvo elementu garumam ha = hp = 0.209 λ kā arī reaktīvo vadības pretestību vērtībām X = [7.5, −11.0, 35.8, 36.6] Ω. Virziendarbības optimizācija tika veikta X0 virzienā frekvencei 2.44 GHz. Aprēķinātais maksimālais pastiprinājums ir
10.5 dBi un ieejas pretestība Zin = 8.98 + 0.15j Ω. Antenas virziendarbības diagramma attēlota 5.5 zīmējumā.
120°
60°
120°
60°
180°
0 dB
4 dB
8 dB
0°180°
0 dB 0°
4 dB
8 dB
240° 300° 240° 300°
Att. 5.5: Rezonansē noskaņotas ESPAR antenas virziendarbības diagrammas horizontalais (pa kriesi) un vertikālais (pa kriesi) šķēlumi
Kā redzams, vēlamais ir sasniegts, antena ir noskaņota praktiski rezonansē. Nedaudz mulsina relatīvi zemā antenas ieejas pretestība. Diemžēl pagaidam šo rezultātu nevaram komentēt.
5.4 Kopsavilkums un secinājumi
Izveidota metode ESPAR antenas optimālo parametru atrašanai noskaņojot to rezonansē. Kā piemērs atrasti antenas ģeometriskie un vadības parametri darba frekvencei 2.44 GHz.
5.5 Nākotnes perspektīvas
Antenas, it sevišķi tās pamatnes izmēri ir lieli salīdzinājumā ar standarta sensoru mezglu, tapēc ļoti vēlams to samazināt. Risinājums būtu antenu aizpildīt ar materiālu kam ir liela relatīvā dielektriskā caurlaidība εr. Tad antenas izmēri
samazinās apmēram √εr reizes. Šāds risinājums apskatīts [2], taču netiek
norādīts kāds konkrēti materiāls lietots.
Literatūra
[1] G. J. Xxxxx and A. J. Poggio. Numerical Electromagnetic Code (NEC)
- Method of Moments. Technical report, Xxxxxxxx Xxxxxxxxx Laboratory, 1981.
[2] J. Xx, X. Ireland, and R. Schlub. Dielectric embedded ESPAR (DE-ESPAR) antenna array for wireless communications. IEEE Trans. Antennas Propag., 53:2437, 2005.
[3] S. A. Mitilineos, K. S. Xxxxxxxxx, and S. Xxxxxxxxxxx. Design and optimization of espar antennas via impedance measurements and a genetic algorithm. IEEE Antennas Propagat. Mag., 51:118–123, 2009.
[4] T. Molteno. NEC2++: Numerical Electromagnetics Code, August 2007.
[5] X. Xxxxxxxxx, X. Xxxxxx, and X. Xxxxxx. Passive elements array antena for wireless sensor networks. In ACM SenSys 2010, Zurich, 2010.
[6] R. Xxxxxx, X. Lu, and T. Ohira. Seven-element ground skirt monopole espar antenna design from a genetic algorithm and the finite element method. IEEE Trans. Antennas Propag., 51:3033, 2003.
Nodaļa 6
SenSigA grupas atskaite
Anotācija
Energoefektīva datu ieguve un pārraide ir aktuāla problēma bezvadu sensoru tīklos. Datu ieguvei ar samazinātu enerģijas patēriņu tiek piedāvāts notikumu- vadīts analogs-ciparu pārveidojums pēc līmeņu-šķērsojuma (LC) principa, bet pārraidei – ultraplatjoslas (UWB) impulsa radio tehnoloģija. Nodaļā aprakstīta LC datu ieguve ar adaptīviem līmeņiem, iegūto notikumu pārraide ar atšķirīgiem UWB impulsiem un to apstrāde signāla atjaunošanai.
6.1 Ievads
Bezvadu sensoru tīklos informācijas ieguvei, apstrādei un sūtīšanai izmanto sensorus, kuru darbību nodrošina galīgas enerģijas avoti (baterijas). Bieži vien līdz ar enerģijas izsīkšanu beidzas arī sensora kalpošanas laiks, jo enerģijas avota nomaiņa nav iespējama, tāpēc svarīgi ir samazināt sensoru enerģijas patēriņu [4].
Viens no risinājumiem ir samazināt pārraidāmo bitu skaitu un attiecīgi enerģijas daudzumu, kas nepieciešams viena bita pārraidei.
Pielietojot notikumu-vadītu, signālatkarīgu diskretizāciju, ir iespējama signāla kodēšana ar samazinātu bitu skaitu. Piemēram, līmeņu-šķērsojumu (LC) diskretizācijas gadījumā iespējami divu veidu notikumi (līmenis tiek šķērsots signālam pieaugot vai samazinoties), kas attiecīgi tiek kodēti ar vienu bitu (0 vai 1). Zinot bitu secību, var atjaunot signāla nolašu vērtības.
Energoefektīva datu pārraide iespējama, izmantojot ultraplatjoslas (UWB) impulsa radio tehnoloģiju, kad ģenerētie notikumi (līmeņu šķērsojumi) palaiž UWB impulsu formētāju notikumam atbilstoša impulsa veidošanai un sūtīšanai uztvērējam. Uztvērēja daļā impulsi tiek atpazīti, lai veiktu signāla nolašu vērtību atjaunošanu.
6.2 Adaptīva līmeņu-šķērsojumu diskretizācija
Klasiskas LC diskretizācijas gadījumā līmeņi ir izvietoti noteiktās nemainīgās pozīcijās. Signālam šķērsojot jebkuru no līmeņiem, tiek fiksēts šķērsojuma laika
a) b)
Att. 6.1: Klasisks LC pārveidojums pēc delta-izmaiņu principa (a) un adaptīvs LC pārveidojums ar mainīgiem līmeņiem (b)
moments un nolases vērtība, kas sakrīt ar šķērsotā līmeņa vērtību [1]. Realizējot LC diskretizāciju pēc delta-izmaiņu principa, katra nākamā nolase tiek ņemta, signālam izmainoties par ∆u vērtību (6.1a attēls).
Ja līmeņi viens no otra būs izvietoti ar lielu soli, tad informācija par signāla izmaiņām (lokāliem maksimumiem, minimumiem) starp līmeņiem netiks fiksēta, pasliktinot signāla atjaunošanas kvalitāti. Savukārt pārlieku mazs līmeņu izvietojuma solis radīs nevajadzīgi lielu nolašu blīvumu vietās, kur signālam ir lineāri mainīgas funkcijas raksturs.
Lai līmeņus vienu no otra izvietotu ar lielu soli un vienlaikus nezaudētu informāciju par signāla izmaiņām (maksimumiem, minimumiem), tiek piedāvāts adaptīvs LC risinājums (blokshēma 6.2a attēlā). Tas ņem vērā signāla atvasinājuma vērtības, lai lemtu par nepieciešamību mainīt atbilstošos līmeņus Ud un Uu, starp kuriem signāls izvietots. Piemēram, 6.1b attēlā signālam sasniedzot lokālo maksimumu vai minimumu (nulles atvasinājuma vērtību), tiek formēts ”trigger” impulss, kas iniciē apakšējā līmeņa Ud pieaugšanu un augšējā līmeņa Uu samazināšanos, līdz vienu no līmeņiem šķērso signāls. Atkarībā, kurš no līmeņiem tiek šķērsots, veidojas impulsi ”down” vai ”up”, un līmeņi atgriežas to sākuma pozīcijās Ud un Uu. Šādā veidā iegūst signāla nolases, kas atrodas tuvu tā lokāliem maksimumiem un minimumiem.
Zinot visu triju impulsu secību, iespējama signāla nolašu vērtību atjaunošana saskaņā ar 6.2b attēlā parādīto blokshēmu. Zinot sākuma līmeņus Uu un Ud (signāls ir izvietots starp šiem līmeņiem), iespējamas trīs reakcijas atkarībā no pienākušā impulsa veida:
1) Ja pienāk ”trigger” impulss, tad apakšējais līmenis sāk palielināties, bet augšējais – samazināties pēc uzdotas funkcijas. Nākamais impulss, kas pienāk, ir vai nu ”down”, vai ”up” impulss, un attiecīgi nolases vērtība, kas sakrīt ar līmeņa vērtību, tiek fiksēta. Pēc tam abi līmeņi atgriežas to sākotnējās pozīcijās Ud un Uu.
2) Ja pienāk ”down” impulss un iepriekšējais bijis ”down” vai ”up” impulss,
tad fiksēta tiek nolases vērtība Ud, un līmeņi Ud un Uu samazinās par soli ∆u.
3) Līdzīgi, ja pienāk ”up” impulss un iepriekšējais bijis ”down” vai ”up”
a) b)
Att. 6.2: Adaptīva LC pārveidojuma (a) un signāla nolašu atjaunošanas (b) blokshēmas
impulss, tad fiksēta tiek nolases vērtība Uu, un līmeņi Uu un Ud palielinās par soli ∆u.
Ja Ud < s(t) < Uu visām t vērtībām, tad iegūtais rezultāts līdzinās minimax diskretizācijai, kad nolases tiek ņemtas signāla lokālos maksimumos un minimumos. Minimax pieejas priekšrocība ir tā, ka nolašu blīvums ir atkarīgs tikai no paša signāla (LC gadījumā to nosaka arī līmeņu izvietojums), bet trūkums ir lielāks bitu skaits, kas nepieciešams katras nolases kodēšanai, jo informāciju par nolasi šajā gadījumā satur gan laiks, gan amplitūda. Piedāvātajam adaptīvam LC risinājumam šāds trūkums nepiemīt, jo informāciju par signālu satur tikai laika vērtības.
6.3 Notikumu pārraide un detektēšana
Laika informāciju par notikumiem ”up”, ”down” and ”trigger”, kas radušies datu ieguves laikā, var efektīvi pārraidīt ar UWB impulsiem. Tā kā iespējami trīs veidu notikumi, tad to pārraidei nepieciešami trīs atšķirīgi impulsi.
Praksē dažādas formas UWB impulsu ģenerēšana nav vienkāršs uzdevums. Attēlā 6.3a parādīti impulsi, kas iegūti ar lādiņuzkrājošo diodi un tauriņveida antenu. Impulsi ir līdzīgi Gausa impulsu 2. kārtas atvasinājuma impulsiem un var tikt izmantoti aprakstīto notikumu pārraidei. Pirmais impulss (nepārtraukta līnija) ir pamatimpulss. Otrais impulss iegūstams no pirmā, to invertējot, un trešais impulss (punktotā līnija) iegūstams, nedaudz pamainot UWB antenas konfigurāciju. No 6.3a attēla seko, ka laika apgabalā impulsi ir atšķirami pēc to virsotņu vērtībām un formējošo vāļu platuma. Attēlā 6.3b parādīti impulsu jaudu spektrālie blīvumi.
−−
Uztvērēja daļā uzdevums ir noteikt impulsa tipu, lai spētu atjaunot signāla nolašu vērtības. Tā kā UWB impulsi aizņem plašu frekvenču joslu, tad ir grūti nodrošināt atbilstošu signāla diskretizāciju tā ciparu apstrādei. Ņemot vērā, ka impulsu secību var uzskatīt par signālu ar galīgu inovāciju skaitli (parametru skaitu sekundē, kas raksturo doto signālu) [5, 3], tad izmanto sekojošu signālapstrādes pieeju. Sākumā UWB signāls tiek filtrēts ar zemfrekvenču vai xxxxxx xxxxxx, ierobežojot tā joslas platumu. Tālāk filtra izejas signāls tiek diskretizēts saskaņā ar nolašu teorēmu un iegūtās nolases tiek izmantotas UWB signāla spektra koeficientu XM aprēķināšanai filtra caurlaides joslā. Šie koeficienti tiek tālāk izmantoti UWB signāla atjaunošanai laika momentos t0, t(1), ..., tN 1, kas vienmērīgi izvietoti ar pietiekami smalku soli, lai spētu atšķirt atjaunotos impulsus. Atjaunošanai pamatā ir filtrētā signāla spektra ekstrapolācija ar iteratīvu algoritmu [2].
−40
−50
Power spectral density (dB)
0.05
−60
Magnitude (V)
0 −70
−0.05
−80
−90
a)
0 2 4 6
Time (ns)
−100
b)
0 1 2 3 4 5
Frequency (GHz)
Att. 6.3: Notikumu pārraidei izmantotie UWB impulsi laika (a) un frekvenču
(b) apgabalos
Magnitude (V)
Magnitude (V)
0 0
a)
0 10 20 30
Time (ns)
0 10 20 30
b)
Time (ns)
Att. 6.4: Ar zemfrekvenču filtru nofiltrētie UWB impulsi (a) un no tiem aprēķinātie sākotnējie impulsi (b)
Kā piemērs, 6.4a attēlā parādītas iepriekš minēto trīs impulsu zemfrekvenču filtrētās versijas, kur filtra josla ir 1 GHz. Filtrētie impulsi tiek diskretizēti ar frekvenci 2 GHz, un iegūtās nolases tiek lietotas sākotnējo UWB impulsu atjaunošanai. Iegūtais rezultāts parādīts 6.4b attēlā, kur pārtrauktās līnijas atbilst sākotnējiem impulsiem, bet nepārtrauktās – to atjaunotajām versijām. Kā redzams, tad atšķirība starp pirmo un trešo impulsu ir pamanāma tikai pēc iteratīvās apstrādes.
6.4 Rezultāti
Aprakstītais datu ieguves paņēmiens tika pielietots runas signālam, kas ņemts no TIMIT datubāzes (diskretizācijas frekvence 16 kHz). Signāls tika filtrēts ar 4 kHz zemfrekvenču filtru un interpolēts ar sinc funkcijām tā adaptīvai LC diskretizācijai. Solis ∆u tika izvēlēts 0.05V, kamēr starpība starp signāla maksimālo un minimālo vērtību bija 0.18V. Signāla 1.3 sekunžu laikā tika iegūti 5909 ”trigger” notikumi, bet kopējais ”up” un ”down” notikumu skaits bija 6067. Signāla fragments parādīts 6.5a attēlā, kur punktotā līnija atbilst līmeņiem Uu and Ud, melnie punkti atbilst signāla nolasēm, un notikumu ”up”, ”down” and ”trigger” secība parādīta zem signāla. Ar nolašu interpolāciju iegūtais
0.1
0.05
Magnitude (V)
0
−0.05
−0.1
a)
0.3526 0.3542 0.3559
Time (s)
0.1
Magnitude (V)
0.05
0
−0.05
b)
0.3526 0.3542 0.3559
Time (s)
Att. 6.5: Runas signāla diskretizācija (a) un atjaunošana (b)
atjaunotais signāls parādīts 6.5b attēlā ar nepārtrauktu līniju, bet pārtrauktā līnija atbilst sākotnējam signālam.
6.5 Kopsavilkums un secinājumi
Piedāvātais adaptīvais LC diskretizācijas paņēmiens salīdzinājumā ar klasisko LC metodi samazina to nolašu skaitu, kas būtiski neuzlabo signāla atjaunošanas kvalitāti. Vienlaicīgi tiek nodrošināta signāla lokāliem maksimumiem un minimumiem tuvu izvietotu nolašu ieguve, kas paaugstina signāla atjaunošanas precizitāti. Diskretizācijas rezultātā iegūst trīs atšķirīgu notikumu virkni, kuru energoefektīvai pārraidei tiek izmantoti trīs dažādi UWB impulsi. Uztvērēja daļā, veicot UWB signāla ciparu apstrādi spektra ekstrapolācijai, tiek atjaunota saņemto impulsu formu pēc to zemfrekvenču filtrācijas. Rezultātā impulsi un tiem atbilstošie notikumi tiek atšķirti, kas nepieciešams signāla nolašu vērtību atjaunošanai. Laikā nepārtraukta signāla iegūšanai atrastās nolases tiek interpolētas, kas runas signāla gadījumā dod pietiekami labu rezultātu, lai to audiāli skaidri saprastu.
Nodaļā aprakstītie rezultāti sagatavoti un iesniegti publicēšanai (X.Xxxxxxxx and X.Xxxxxxxx, ”Data acquisition by adaptive level crossing and transmission by UWB pulses”) konferencei ICASSP 2011.
6.6 Nākotnes perspektīvas
Pie turpmākajiem darbiem var minēt aprakstīto datu ieguves un pārraides metožu testa plašu izstrādi, kā arī turpināt jaunu datu ieguves paņēmienu meklēšanu, kas adaptējas signāla frekvenču īpašībām un ir vienkārši realizējamas gan pie signāla diskretizācijas, gan atjaunošanas daļas.
Literatūra
[1] E. Allier and X. Xxxxxx. A new class of asynchronous a/d converters based on time quantization. In Proc. of ASYNC, pages 196–205, 2003.
[2] X. Xxxxxxxx and X. Xxxxxxxx. Reconstruction of sequences of arbitrary- shaped pulses from its low-pass or band-pass approximations using spectrum extrapolation. In Proc. of EUSIPCO, pages 1607–1611, 2010.
[3] J. Xxxxxx, X. Xxxxxxx, and M. Vetterli. Sampling of communications systems with bandwidth expansion. In Proc. of ICC, volume 3, pages 1601–1605, 2002.
[4] C. S. Xxxxxxxxxxx, X. X. Sivalingam, and T. Znati. Wireless sensor networks. Springer, 2006.
[5] M. Xxxxxxxx, X. Xxxxxxxxxx, and T. Blu. Sampling signals with finite rate of innovation. IEEE Transactions on Signal Processing, 50:1417–1428, June 2002.