WSN 환경에서 NLOS 를고려한 RSSI 기반실내위치인식알고리즘 지도교수이승룡 이논문을공학석사학위논문으로제출함 경희대학교대학원 컴퓨터공학과 김성현 2008 년 8 월
목 차 1. 서론 1 1.1 연구배경및목적 1 1.2 주요연구결과 2 1.3 논문의구성 3 2. 관련연구 4 2.1 적외선을이용한실내위치인식 4 2.2 초음파를이용한실내위치인식 6 2.3 센서노드를활용한실내위치인식시스템 8 2.4 실내위치계산기법 11 3. 제안하는위치인식시스템 15 3.1 전체시스템개요 16 3.2 제안하는노이즈보정알고리즘 18 3.3 제안하는위치계산알고리즘 21 4. 구현및성능평가 22 4.1 구현환경 22 4.2 성능평가 36 5. 결론및향후연구방향 39 6. 참고문헌 40
표목차 [ 표 1] 하드웨어와소프트웨어구성 22 [ 표 2] Router Registration Packet 30 [ 표 3] Router Registration Packet의내용 30 [ 표 3] Tag Node Information List Packet 31 [ 표 3] Tag Node Information List Packet의내용 31 [ 표 3] Response Packet 32 [ 표 3] Response Packet의내용 32 [ 표 3] 결과분석 38
그림목차 [ 그림 1] Active Badge Location System의구성도 4 [ 그림 2] 초음파를이용한실내위치인식의구조 6 [ 그림 3] 환경적응형위치인식시스템 8 [ 그림 4] Vector Maching 기법 10 [ 그림 5] Finger Print의 Traing과 Positioning 11 [ 그림 6] Location Based System Architecture 13 [ 그림 7] 노이즈의보정 17 [ 그림 8] 노이즈판별알고리즘 18 [ 그림 9] 노이즈보정알고리즘 19 [ 그림 10] N개의노드를사용한위치계산알고리즘 20 [ 그림 11] 위치계산의단계 21 [ 그림 12] 실험환경 21 [ 그림 13] 태그노드플로우차트 22 [ 그림 14] 참조노드플로우차트 25 [ 그림 15] 코디네이터플로우차트 26 [ 그림 16] Sleep / Wakeup 순서도 27 [ 그림 17] 코디네이터플로우차트 29 [ 그림 18] 데이터의흐름 33 [ 그림 19] 1st Context Data 34 [ 그림 20] 2nd Context Data 34 [ 그림 21] 클래스다이어그램 35 [ 그림 22] Noise Filter를적용하지않은 RSSI값의평균 37 [ 그림 23] Noise Filter를적용한 RSSI값의평균 38-4 -
국문요약 WSN 환경에서 NLOS 를고려한 RSSI 기반실내위치인식알고리즘 경희대학교대학원 컴퓨터공학과 김성현 정보통신인프라의급격한발전으로유비쿼터스시대를앞당기고있으며그에따라실내위치인식에대한관심이증가되고있다. 하지만 WSN환경에서무선신호세기 (RSSI) 를활용한실내위치인식시스템은장애물에의한또는전파의반사와회절에의한특성때문에정확한위치인식이어렵다. 따라서, 본논문에서는전파의특성과환경적인요인을고려하여더정확한위치인지가가능하도록센서로부터들어오는신호정보로노이즈를판별하기위한알고리즘과판별된노이즈를보정하기위한알고리즘그리고정확한위치인지를위한위치계산알고리즘을제안한다.
제 1 장서론 1.1 연구배경및목적 컴퓨터화의새로운패러다임으로등장한유비쿼터스화는유비쿼터스컴퓨팅과유비쿼터스네트워크를기반으로물리공간을지능화함과동시에물리공간에펼쳐진각종사물들을네트워크로연결시키려는노력으로정의할수있다 [1]. 유비쿼터스컴퓨팅이란도로, 다리, 터널, 빌딩, 건물벽등모든물리공간과객체에컴퓨팅기능을추가하여모든사물과대상이지능화되고, 전자공간에연결되어서로정보를주고받는공간을만드는개념으로기존홈네트워크, 모바일컴퓨팅보다한단계발전된컴퓨팅환경을말하고유비쿼터스네트워크란누구든지언제, 어디서나통신속도등의제약없이이용할수있고, 모든정보나콘텐츠를유통시킬수있는정보통신네트워크를의미한다 [2]. 한편, 최근우리나라는몇년간 IT산업이눈부시게발전하여국가를이끌어가는중추산업으로자리잡아, 세계최고의네트워크인프라를갖추고많은연구인력을배출하고있다. 정부는계속된발전과세계시장을선도하기위해서지능화된네트워크를구상하고있으며지능화된네트워크의발전과첨단디지털장비가일상생활에서보편화되어감에따라서유비쿼터스시대를앞당기고있다.[2] 유비쿼터스의핵심기술로는객체인식, 상 - 1 -
황인지, 위치인식으로나눌수있는데객체인식은객체의특성을디지털화해서객체를판단하는기술이며상황인지기술은과거의행동과주변환경을디지털화해서사용자에게필요한서비스가무엇인지예측하는기술이며위의기술들에위치인식기술이더해짐으로서좀더정확한상황을인지하고사용자의요구사항을정확하게만족시킬수있는서비스를제공할수있게한다. 기존의위치인식서비스는 GPS를활용한실외환경을중심으로개발되어져왔으나유비쿼터스시대가도래함에따라서대부분의사용자의생활공간이실내라는점때문에실내에서의위치인식의관심과필요성이증가되고있다. 그러나 GPS와같은기존의위치추적서비스는실내환경에부적합한특성을가지고있으므로실내환경에적합한위치추적시스템에대한연구들이진행되고있다. 실내위치인식을위한기술로는적외선을이용한위치인식기술, 초음파를이용한위치인식기술, 센서노드의신호세기를이용한위치인식기술이있다. 하지만 WSN(Wireless Sensor Network) 환경에서가장적합한기술은센서노드를활용한위치인식기술이며센서노드는저전력으로동작하기때문에이동노드에적합하다고할수있다. 하지만센서노드의무선신호세기를활용한실내위치인식시스템은전파의특성과환경의영향을많이받으므로정확도를보증할수없다. 따라서본논문에서는이러한특성을반영하여정확도를높일수있는방법에대해서기술한다. - 2 -
1.2 주요연구결과 본논문에서는실내환경에서의전파의반사와회절, 분산에의한 NLOS(Non Line of Sight) 특성을고려하여정확한위치를파악할수있는위치인식알고리즘과위의알고리즘을적용한위치인식시스템을설계및구현함으로서센서장치의신호만으로도정확한위치인지가가능하다는것을증명한다. 1.3 논문의구성 본논문의구성은다음과같다. 2장의관련연구는기존의위치인식시스템및위치인식알고리즘에대해고찰하고, 3장에서정확한위치인식이가능한알고리즘을제안한다. 4장의성능평가에서는위치인식의정확도를평가하고마지막으로 5장에서결론및고찰을제시한다. - 3 -
제 2 장관련연구 본장에서는적외선을이용한위치인식기법과, 적외선을이용한위치인식 기법과센서노드의무선신호를이용한위치인식에관련한관련연구에대하 여기술한다. 2.1 적외선을이용한실내위치인식 [ 그림 1] Active Badge Location System 의구성도 초음파를이용한대표적인실내위치인식시스템으로는 Active Badge[] 를예로들수가있는데이는 AT&T 사에서 1989~1992 년에개발한적외선 을이용한위치인식시스템으로서 Xerox 사에서고객지원센터의직원들이다 - 4 -
른위치로잠시이동하였을경우고객들로부터오는전화를직원이위치한지점의전화로착신되게하기위해서개발되었다. 이는사무실같은실내공간에서일정영역에적외선센서들을천정에설치하고, 직원들에게는적외선발생기기를부착한다. 여러연구를통해서지금까지개선된결과로가장최근의시스템은 48비트를가지고있으며 10초를주기로데이터를전송하고있다. 저속의양방향통신을하고있으며시스템의구성은 [ 그림 1] 과같이간단한구조로구성되어있지만사용자가증가함에따라서충돌의발생률이높아질수있으며정밀한위치인식이어렵다는단점을가지고있다. - 5 -
2.2 초음파를이용한실내위치인식 [ 그림 2] 초음파를이용한실내위치인식의구조 초음파를이용한실내위치인식을위한대표적인시스템으로는 AT&T에서개발한 Active Bat와 MIT에서개발한 Cricket 그리고 UCLA에서개발한 Medusa등이대표적이며초음파는빛또는 RF(Radio Frequency) 에비해서상대적으로매우느린전송속도 ( 약 340m/sec) 로전송되기때문에거리측정시스템에많이사용되고있다. RF와초음파를사용하며, 기준시각동기화는 RF 신호또는별도의유선동기신호를사용하여초음파의전파지연시간을거리고환산하여인식하는방식으로서위치계산을위해서는 TOA(Time of Arrival) 또는 TDOA(Time Difference of Arrival) 등의방식을사용하고있다. 초음파를사용한위치인식은비교적으로정확하며간단한후처리에의해서도 10cm 정도의오차를보이고있으며노이즈제거필터등을사용하한결과 2cm까지인식하는것으로알려져있다. 그러나무선에비하여초음파는너무저속이기때문에효율성면에서떨어지며별 - 6 -
도의초음파송 / 수신장치를추가로구입해야하기때문에비교적으로많은비용이든다고할수있다. 또한초음파의특성인방향성때문에여러방향으로전송할수없으며전송을하기위해서는여러개의송신기가필요하다고할수단점을가지고있다. [ 그림 2] 은초음파시스템의일반적인구성도를나타낸그림이다. 수신기는천정에일정한간격으로배치가되치가되며이동노드와는무선으로연결이된다. 초음파의전파시간이후천정의수신기에서초음파를감지하여유선으로연결된 Server에게전달하는방식이다. 이는이동노드에서처리해야할계산량이많기때문에이동노드의충분한계산능력이요구된다는단점을가지고있다. - 7 -
2.3 센서노드를활용한실내위치인식시스템 2.3.1 환경적응형위치인식시스템 [ 그림 3] 환경적응형위치인식시스템 환경적응형위치인식시스템은 [ 그림 3] 과같은구조로구성되어있으며 Tracking System의하위계층으로이동객체와고정객체간의 TOA(Time of Arrival) 을측정하는 Ranging System이있으며 Ranging System은저전력, 저가격에가장적합한비동기방식의카오스통신시스템을활용하고있다. 전체시스템은총 5개의모듈로구성되어있으며전체프로세스의제어를담당하는 MM(Manager Module) 과시스템에서사용하는데이터를유지하는 LPSDB(LPS Database) 와 Ranging System으로부터입력받은데이터를활용하여삼각측량을담당하는 TRI(Triangulation - 8 -
Module), Finger Print를담당하는 DCM(DCM Module) 과위치데이터의보정을담당하는 LCM(LCM Module) 로구성된다. 작동방식은위치에대한정보를요청하게되면 MM은 Ranging System에게 SOI의현재위치를요청하고 Ranging System으로부터요청한 SOI의위치를리턴받는시스템이다. 동적으로환경의변화에대하여데이터베이스를구축함으로서초기의데이터베이스구축으로인한오버헤드를줄일수있다는장점이있지만급격한환경변화에는대응이미흡하다고할수있다. - 9 -
2.3.2 Vector Matching 을이용한방식 [ 그림 4] Vector Maching 기법 무선신호는전송거리가멀어질수록수신신호가감쇄되는 Path Loss 특성을가지는데, 사용주파수및주변환경에따라전달특성이달라지는데해당환경에서측정데이터의 Path Loss를분석하여 Friss 모델과 Multi-Path 모델을적용하여 RSSI값을벡터로인식하여위치를측정하는방식이다. - 10 -
2.4 실내위치계산기법 2.4.1 삼각측량법 (Trianglation) [ 그림 5] 삼각측량법 대표적인위치척도기법으로서신호원과수신기사이의전파도달시간인 TOA(Time of Arriaval) 을측정하여수신기와신호원간의거리를측정하는측위방식이다. 일반적으로분산된많은수신기들은신호원으로부터신호를받는데사용되며 TOA로정확한위치를측정한다. TOA 데이터를갖는위치결정알고리즘은위치서비스센터에서신호원의위치를추적하는데사용된다. TOA는수신기로부터최소 3개의신호원까지의절대적인시간을계산하여위치를추적하는알고리즘으로동기식, 또는비동기식으로계산될수있다. 수신 - 11 -
기는신호를받는즉시응답신호를보내어신호원에도달하도록한다. 신호원은수신기에서보내온신호의도착시간과기존에저장해놓은신호의시간차를이용하여거리를계산하게된다. 다음의 [ 그림 5] 는삼각측량법에서신호원과수신기를나타낸것이다. - 12 -
2.4.2 핑거프린트 (Finger Print) [ 그림 6] Finger Print 의 Traing 과 Positioning Fingerprint는휴리스틱정보를데이터베이스에저장한후이동객체 (SOI) 에서입력된위치데이터값과비교하여현재위치를리턴하는기법이다. 일반적으로 Fingerprint는 Fingerprint 데이터베이스를생성하는 Training 단계와 SOI의정확한위치를측정하는 Positioning 단계로구성된다. 이해를돕기위해 WLAN(Wireless Local Area Network) 환경에서구축된 Fingerprint 시스템을예를들어설명한다. WLAN 환경에서는 SOI의위치를측정하기위해각 AP로부터의위치정보 (SS: Signal Strength) 로 SOI의위치를측정한다. [ 그림 6] 에서보는것과같이 Fingerprint는데이터베이스를생성하는 Training 단계와 SOI가요구하는위치데이터값을측정하는 Positioning 단계로나누어진다. Training 단계는측정된위치를참조할 Fingerprint 데이터베이스를생성하기위해많은요청이발생할것이라판단되는지점또는사용자의이동이 - 13 -
나요청이빈번한위치를 RP(Reference Point) 로선택한다. 다음선택된 RP에 SOI를위치시킨후모든 Anchors로부터의 SS를측정한다. 그리고각 Anchors로부터의위치데이터를 Database에기록한다. 이프로세스는초기에선택된모든 RP를방문할때까지반복수행하여유지한다. Positioning 단계는 SOI의위치를측정하기위해요구하는위치에서 SS를측정한다. 그후 Training 단계에서유지된 Fingerprint 데이터베이스와비교한후요구한 SOI의위치와가장적합한위치데이터의정보를요청했던 SOI로리턴한다. 앞에서살펴본것처럼 Fingerprint의성능을높이기위해서는 Fingerprint 데이터베이스내에많은 RP를유지해야한다. 하지만데이터베이스에많은 RP를유지할경우시스템의오버헤드가커지는문제점을초래한다. 추가로 Fingerprint는데이터베이스내에시스템초기단계에서선택된모든 RP의위치를측정하여유지해야하기때문에시스템초기구축비용이높은단점이있으며, 측정환경이변화하게되면환경변화정보를반영할수없기때문에새롭게 Training 단계를수행하여데이터베이스를유지해야하는문제점이있다. 이처럼기존 Fingerprint 기법은 Fingerprint 데이터베이스의초기구축비용이매우높고, 실내환경과같은빈번한환경변화가발생할경우환경변화에능동적으로대처하기어려운문제점이있다. - 14 -
제 3 장제안하는위치인식시스템 본논문에서제안하는위치인식시스템은다음과같다. 1. 노이즈보정알고리즘을통한정확도보정 2. 개선된위치계산알고리즘 WSN(Wireless Sensor Network) 의실내위치추적을위해가장널리사용되는방법으로는수신신호세기 (RSSI) 기반의위치추적시스템으로서별도의전원장치가없는이동노드의특성상저전력으로운영이되어야하기때문에실내위치인식시스템으로서는 RSSI를기반으로하는시스템이적합하다고할수있다. 하지만 RSSI를기반으로하는실내위치인식시스템은장애물에의한전파의반사와회절, 분산에의한환경적인요인인 NLOS(Non Line of Sight) 의특성을많이받고있기때문에위치정확도가떨어진다. 따라서본논문에서는 NLOS적인특성으로생기는신호의노이즈감쇄하기위해서신호에서노이즈를판별하고노이즈를보정하는알고리즘을제안하며신호를소스 (Source) 로해서위치를계산하기위해서가장일반적으로쓰이는삼각측량알고리즘을개선함으로서위치의정확도를향상시킨다. - 15 -
3.1 전체시스템개요 기존의위치인식을위한시스템들은미리배치된참조노드와태그노드와의신호세기및반사된신호의도달시간에대한정보를서버의위치인식시스템에게전송을하게되면위치인식서버는전송된저수준의데이터를기준으로위치를계산하기위한알고리즘을통해서태그노드의위치를인식하는구조였다. 하지만이러한시스템은노드에의해생성된저수준의데이터의신뢰성에크게의존을하고있으며저수준의데이터는신호의세기및신호의도달시간이기때문에특성상장애물과간섭에큰영향을받는다. 따라서정확한위치를인지하기위해서는노이즈에대한피드백을가지고있어야한다. 따라서본논문에서제안하는위치인식시스템은노이즈가전체시스템의인식률에크게영향을미치고있다는점을고려하여전체시스템의구조는 [ 그림 7] 과같다. 전체구조는크게센서의위치를측정하기위한저수준의데이터를만들어내는센서시스템과저수준의데이터의가공및처리를담당하는서버시스템으로구성이된다. 센서시스템에서는저수준의데이터를서버시스템으로전송하기위해서모듈의특성에따르는통신모듈, 패킷에서노이즈를보정하기위한노이즈보정모듈, 위치를계산하기위한위치계산모듈, 패킷관리모듈로구성되며노이즈보정의룰이정의된경 - 16 -
량노이즈룰데이터베이스를포함하고있다. 서버시스템에서는센서시스템에의해전송받은저수준의데이터를상위모듈에서인식할수있는형태로변환하기위한파서모듈및데이터생성모듈로구성되어있으며변환되어생성된데이터는데이터의특성에따라서분류시키는분류모듈에의해서분류가되며본논문의목적을달성하기위한노이즈보정모듈에의해노이즈가보정된후에위치계산모듈에의해위치를판별할수있게된다. 각모듈의상세한명세에대해서는다음장부터설명하도록하겠다. [ 그림 7] Location Based System Architecture - 17 -
3.2 제안하는노이즈보정알고리즘 노이즈를보정하는단계는크게수신되는데이터로부터노이즈의여부를판별하는단계와노이즈로판별된신호에대한보정으로나뉠수있다. 노이즈의여부를판단하기위해서는노이즈의기준을위한데이터베이스가필요하다. [ 그림 8] 은노이즈를보정하기위한과정을도식화한것이다. 노이즈보정의 [ 그림 8] 노이즈의보정 과정은크게현재시간의신호를받아들여서 History DB로부터노이즈여부를판단하고노이즈를보정하며그과정중에보정된상태에대한정보가 History DB에저장된다. 현재의정보를누적시켜서저장시킴으로서노이즈의여부가고정적으로지정된것이아니라유동적으로변할수있음을알수있다. - 18 -
3.2.1 노이즈의판별 [ 그림 9] 노이즈판별알고리즘 [ 그림 9] 는노이즈판별을위한알고리즘이다. 동작순서는다음과같다. 현재의노드의아이디와신호세기 (RSSI) 를받게되면 DB에서현재의노드아이디와같은아이디의지난정보를얻게되며이정보에는신호세기의변화율정보가포함되어있다. 현재의변화율과기존의변화율을비교하여변화율을초과한다면노이즈로판별하는것이다. - 19 -
3.2.2 노이즈의보정 [ 그림 10] 은노이즈보정을위한알고리즘이다. 동작순서는다음과같다. 앞서말한노이즈판별알고리즘에의해노이즈로판별이된다면현재의아이디와같고시간순서로 10번째전에있던데이터들을 DB로부터얻어온다. 이데이터들과현재의신호세기의합의평균을구함으로서노이즈의보정이가능하다. [ 그림 10] 노이즈보정알고리즘 - 20 -
3.3 제안하는위치계산알고리즘 [ 그림 11] N 개의노드를사용한위치계산알고리즘 기존의위치를계산하기위한방식으로는삼각측량법이대표적이라할수있는데이는 3개의기준노드로부터의이동노드의위치를찾는다. 본논문에서제안하는알고리즘은 [ 그림 11] 에서보는것과같이 N개의기준노드를사용해서위치를감지함으로서환경에더적합한위치인식방식이라고할수있으며위치를계산하기위한단계는 [ 그림 12] 와같다. [ 그림 12] 위치계산의단계 - 21 -
제 4 장구현및성능평가 4.1 구현환경 [ 그림 13] 에서보는것과같이중앙의서버와데이터를취합해서서버로보내는역할을하는코디네이터노드 (Coordinator) 와기준노드인참조노드 (Reference Node) 와이동노드인태그노드 (Tag Node) 로구성된환경에서본알고리즘의성능을평가하였으며하드웨어의구성과소프트웨어의구성은 [ 표 1] 과같다. Hardware/Software Hardware Base Hardware Coordinator Refference Node Tag Node LBS Server Firmware Software JN5139 1 EA 5 EA 1 EA Windows XP Jennic Zigbee Stack [ 그림 13] 실험환경 [ 표 1] 하드웨어와소프트웨어구성 - 22 -
4.1.1 네트워크구조와프로토콜 센서네트워크에서센서노드는기능에따라서 FFD(Full Fuction Device), RFD(Reduced Function Device) 로나뉠수있는데이는센서하드웨어의부족한자원때문에목적에따라서모든기능을포함하는장치, 모든기능을포함할필요없는장치로구분해놓은것이다. 일반적으로 FFD는코디네이터노드 (Coordinator Node), 라우터노드 (Router Node) 로구성이되며 RFD는종단노드 (End Device) 가된다. 본논문에서각노드는참조노드, 태그노드, 베이스노드로구분되어있으며각각의노드는노드에목적에따라서구분된것이며참조노드와베이스노드는 FFD의특성을가지고있으며태그노드는 RFD의특성을가지고있다. 참조노드는데이터를목적지까지안전하게전송하기위해서라우팅 (Routing) 기능을기본적으로포함하고있으며태그노드로부터수신된데이터를최종목적지인베이스노드까지전송하거나위치인식시스템으로부터전송된데이터를태그노드로전송하는책임을가지고있다. 태그노드는실제로움직이는사물또는사람의몸에부착되는노드로서주기적으로참조노드와통신함으로서현재의태그노드가부착된사물 / 사람의위치를파악할수있도록한다. 베이스노드는참조노드들로부터수신된데이터를취합해서위치인식시스템이동작하고있는서버에게데이터를전송하는역할을담당하고있다. 데이터를목적지까지정확하게전송하기위해 - 23 -
서는네트워크의구조가안정적으로구성이되어있어야하며목적에해당 하는일을수행하기위해서는전송되는데이터또한잘정의되어있어야 한다. 4.1.1.1 네트워크토폴로지 센서네트워크의구조는일반적으로클러스터-트리구조로구성된다. 중앙관리방식의구조로서중앙의서버로데이터를집중할수있게한구조이며여러구역을효과적으로관리할수있는확장성을가지고있다.[4] 센서네트워크에서네트워크구조를구성하는방법은동적인방법과정적인방법으로네트워크구조를구성할수있으며정적인방법은새로운노드의추가및변경이적을경우사용하는구조이며데이터의전송경로가각노드에고정되어있는방법이며동적인방법은네트워크의구조에능동적으로구성이가능한방법이다. 본논문에서는동적인방법으로네트워크구조를구성하게된다면각센서노드들의부하를가중시킬수있으며전력관리측면에서도정적인방법보다는동적인방법이전력을많이소모한다고할수있기때문에제안할위치인식시스템은위치를인식하기위해서참조노드들은한번설치하게되면새롭게추가되거나변경되지않는특성을반영하여정적인방법으로네트워크구조를구성한다. 데이터의전송은태그노드-> 참조노드-> 베이스노드의방향으로이루 - 24 -
어진다. 위의구조는데이터를전송할시에어느센서노드로보낼지를결정할수있기때문에, 각각의노드에게데이터를받아들일수있는센서노드를결정해둔다음, 데이터를보낼수있는센서노드를결정해줌으로써이러한구조를만들수있다. 4.1.1.2 각노드별기능 1) 태그노드 [ 그림 14] 태그노드플로우차트 태그노드는 [ 그림 14] 와같이동작한다. 부팅시에한번참여했던네트워크에 조인하기위한검색과정을생략하기위해서플래쉬메모리에저장된네트워 - 25 -
크정보의네트워크에조인을시도한며네트워크에조인이된이후에는주변 의참조노드들에게데이터를브로드캐스팅 (BroadCasting) 한다. 2) 참조노드 [ 그림 15] 참조노드플로우차트 참조노드는최초구동시에플래쉬에저장된송신파워로설정되어구동이되며라우터로서동작하게되며주기적으로태그노드와의통신으로얻어진수신신호세기를주변노드를통해서최종코디네이터까지송신하는역할을담당한다. - 26 -
3) 코디네이터노드 [ 그림 16] 코디네이터플로우차트 코디네이터노드는참조노드들에게서받은데이터를취합해서시리얼통신 을통해서최종서버에전달하는기능을하고있다. - 27 -
4.1.1.3 통신프로토콜 일반적으로센서는일반 AC전원을사용해서전력이공급되는형태가아닌배터리로서운영되기때문에전원관리문제는상당히중요한문제라고할수있다. 태그노드는주기적으로참조노드에게브로드캐스팅 (Broadcasting) 함으로서참조노드들과태그노드간의거리측정의근거가될수있는수신신호의세기 (RSSI) 를알려줄수있게되는데각각의노드들은배터리로운영되기때문에주기적인브로드캐스팅으로인한전력소모에전력이관리되어야만한다. 그래서 [ 그림 17] 과같이노드들은외부의일정시간동안외부의 Interrupt가없게되면노드들은 Sleep() 상태로들어가며외부의 Interrupt( 데이터의수신 ) 발생시다시깨어나는형태로전력이관리되어야한다. 통신패킷은크게목적에따라서 3종류로나뉠수있다. 최초에참조노드가구동이되었을경우네트워크에조인 (Join) 하여필요한정보를베이스노드에게알려주기위한네트워크조인패킷 (Router Registration Packet) 과태그노드와참조노드간의주기적인통신을통해서위치측정을위한저수준테이터인위치정보패킷 (Tag Node Information List Packet) 그리고위치인식시스템이태그노드에게특정한이벤트를요청을하기위 - 28 -
한태그노드응답패킷 (Response Packet) 으로나뉠수있다. [ 그림 17 ] Sleep / Wakeup 순서도 - 29 -
1) 네트워크조인패킷 (Router Registration Packet) 위패킷은다음 [ 표 2] 와같이구성되어있으며새로운참조노드가네트워크에조인되었을경우자신의정보 ( 설치된곳의좌표및주소 ) 를베이스노드에게알려주기위한패킷이며패킷의내용은 [ 표 3] 에서보는것과같다. 2byte 1byte 2byte 1byte 1byte 2byte 0x2E2E 0x01 Short address X position Y position 0x7E7E Start Delimiter Packet Type Router short address Position End Delimiter [ 표 2] Router Registration Packet 항목 내용 Start Delimeter Packet Type Router Short Address Position End Delimeter 패킷의시작구분자 0x01 : Router Registration Packet 라우터의논리적인주소 Reference Node의설치된위치의좌표패킷의종료구분자 [ 표 3] Router Registration Packet 의내용 - 30 -
2) 위치정보패킷 (Tag Node Information List Packet) 위의패킷은 [ 표 4] 와같이구성되어있으며주기적으로태그노드가 Reference 노드와통신을하게되면 Reference Node위의패킷을만들어서최종적으로 Coordinator 노드에게전송하게되고 Coordinator는 [ 표 4] 와같은패킷의형태로만들어서위치인식시스템서버에게전달해주게된다. 각패킷의항목은 [ 표 5] 에설명되어있다. 2byte 1byte 4byte 4byte nbyte 1byte 1byte 2byte 1byte 2byte 1byte 2byte 1byte 2byte High Low Null Terminated Boolean Short RSSI Short RSSI Short RSSI 0x2E2E 0x02 n... 0x7E7E addr addr String Array data addr value addr value addr value Start Packet Delimiter Type MAC extended address Device Name ID Tag Call status RSSI list Count 1st RSSI List 2nd RSSI List Nth RSSI List [ 표 4] Tag Node Information List Packet End Delimiter 항목 내용 Start Delimeter Packet Type Mac Extended Address Device Name ID Tag Call Status RSSI List Count 1st RSSI List... n RSSI List End Delimeter 패킷의시작구분자 0x02 : Tag Node Information Packet 노드의물리적인주소네트워크의이름 NULL 참조노드로부터수신받은데이터의카운트측정된수신신호세기들의리스트패킷의종료구분자 [ 표 5] Tag Node Information List Packet 의내용 - 31 -
3) 태그노드응답패킷 (Response Packet) 위의패킷은 [ 표 6] 과같이구성되어있으며위치인식시스템에서태그 노드로특정이벤트를호출하기위해서쓰이는패킷이다. 패킷의내용은 [ 표 7] 에서보는것과같다. 2byte 4byte 4byte 1byte 2byte 0x2E2E X position Y position Status 0x7E7E Start Delimiter MAC extended address Event End Delimiter [ 표 6] Response Packet 항목 내용 Start Delimeter Mac Extened Address Event End Delimeter 0x2E2E 장치의물리주소이벤트코드 0x7E7E [ 표 7] Response Packet 의내용 - 32 -
4.1.1.4 위치데이터생성자 (Location Data Maker) [ 그림 18] 데이터의흐름 위치데이터생성자는저수준의데이터로부터상위모듈에서인식할수있는의미있는데이터로변환하는역할을수행한다. 센서장치의라우팅 (Routing) 에의해서생성된데이터는저수준의데이터로서실시간으로위치인식시스템 (LBS) 에전달이되기때문에데이터의손실을방지하기위해서 [ 그림 18] 에서보는것과같은구조로구성되어있으며데이터는상위모듈에서인식을하기위해서저수준의데이터로부터의미있는데이터로변환의과정이필요한데변환을하기위한과정은 [ 그림 18] 에서와같은과정을따른다. 위치인식시스템의가장하단에위치한데이터수신모듈에의해서바이너리형태의데이터를 1차저장소인저수준데이터큐 (Raw Data Queue) 에저장하며파서모듈 - 33 -
(Parser Module) 은저수준데이터큐로부터데이터를차례로꺼내어바이너리형태의데이터를상위의모듈에서인식할수있는형태의의미있는데이터로변환하여 2차저장소인컨텍스트데이터큐 (Context Data Queue) 에저장한다. 패킷생성자 (Packet Maker) 는 2차저장소에저장된데이터로부터상위모듈에서필요한정보를첨부하여위치데이터분류모듈 (Classfier Module) 에게분류를요청한다. 각단계에서의데이터는아래의 [ 그림 19][ 그림 20] 와같다. [ 그림 19] 1st Context Data [ 그림 20] 2nd Context Data - 34 -
4.1.2 클래스다이어그램 [ 그림 21] 클래스다이어그램 - 35 -
4.2 성능평가 4.2.1 시나리오 이성능평가에서는특정시나리오를가지고실험한다. 노이즈제거알고리즘을적용한상태의거리에따르는 RSSI값과노이즈제거알고리즘을적용하지않은상태의거리에따르는 RSSI값을실험하고위의실험을실제노이즈가발생할수있는상황을고려하기위해서사람들이실제로생활하는곳에서실험을하였으며 3일동안 1차, 2차, 3차로나누어서진행하였으며각각의차수에따라서 20시간이상을측정함으로서실험의신뢰도를높였다. - 36 -
4.2.1.1 Noise Filter 를적용하지않은 RSSI 값의평균 [ 그림 22] Noise Filter 를적용하지않은 RSSI 값의평균 노이즈필터를적용하지않은상태에서의실험결과이다. [ 그림 22] 에서보는것과같은각각의실험마다편차가심한것을알수있다. 이는앞서언급한 NLOS적인특성에의하여위와같은결과가나온것이로판단한다. 위치측정의근거가되는신호의세기가상황마다편차가심하다는것은곧, 위치의정확도를보증할수없다는것으로판단할수있다. - 37 -
4.2.1.1 Noise Filter 를적용한 RSSI 값의평균 [ 그림 23] Noise Filter 를적용한 RSSI 값의평균 거리 / 차수 1차 2차 3차 3m 100 95 93 4m 95 90 95 5m 100 98 103 [ 표 8] 분석결과 [ 그림 23] 에서보는것과같이 [ 그림 22] 에비해각차수에따르는편차가줄어들었다는걸알수있다. 즉노이즈필터에신호가보정됨으로서위치계산시신호의세기값을신뢰할수있게되었음을알수있다. [ 표 8] 은분석결과이다. 만약신호세기가 95일경우 3m~5m로판단할수있다. - 38 -
제 5 장결론및향후연구방향 정보통신인프라의발전은유비쿼터스시대를앞당기고있으며유비쿼터스환경에서사용자에게사용자맞춤형서비스를제공하기위해서는사용자 / 사물의위치에대한정보가필요하기때문에실내에서의위치추적시스템에대한관심이증가되고있다. 하지만아직까지실내위치추적시스템은다양한환경에대한변화에대해서능동적으로대처하지못하고있는것이현실이며장애물에의한 NLOS적인특성으로인하여정확한위치인식이어렵다고할수있다. 본연구에서는실내위치인식시스템의정확도를높이기위해서 NLOS적인특성에의해변화율이높은신호를노이즈로규정하고이를판별하고보정하는알고리즘을제안함으로서위치계산시의신호의신뢰도를높였으며위치계산시에많은참조노드를참여하게함으로서정확도를높였다. 향후연구방향으로서좀더다양하고변화가많은상황에서의노이즈를판별할수있는연구가필요하며노이즈의보정을위한알고리즘연구가필요하다. - 39 -
제 6 장참고문헌 [1] 박옥선, 정광렬, 김성희, " 유비쿼터스컴퓨팅을위한위치인식기술및시스템 ", ETRI주간기술동향 1098호, 2003년 6월 [2] 김재호, 김영섭, 박옥선, 김성희, " 유비쿼터스위치기반서비스및위치인식시스템연구동향 ", ETRI주간기술동향 1098호, 2003년 6월 [3] 남윤석, 최은창, 허재두, " 저속 WPAN에서수신신호세기의 Vector Matching 을이용한위치인식방식 ", Journal of Information Technology Applications & Management [4] 전현식, 우성현, 조상도, 나종인, 김기환, 박현주, "IEEE 802.15.4a 기 반의환경적응형위치추적시스템에관한연구 ", 한국통신학회논문지 '06-5 Vol31 No.5A [5] 공선우, 전태우, 김성진, 안우진, 현혜선, "Zigbee 센서네트워크를이용한실내위치추적시스템, 한국과학기술원 (KAIST) 전기및전자공학과 [6] Hari Balakrishnan and etc., "Lesson from Developing and Deploying the Cricket Indoor Location System, http://nms.lcs.mit.edu/cricket/ [7] Roy Want, Andy Hopper, Veronica Falcao and Jonathan Gibbons "The Active Badge Location System", Olivetti Research Ltd.(ORL) Cambridge, England - 40 -
[8] 이신형, 차호정, " 센서네트워크에서 IEEE 802.15.4a 및초음파기반위치추적기법 " 2006 한국컴퓨터종합학술대회논문집 Vol. 33, No. 1 1(B) [9] E. Haldat, "Fingerprinting Based-Technique for Positioning", http://www.telecomlab.oulu.fi, 2002 [10] 김학용, " 삼각측량법, http://hakyongkim.net [11] Paramvir Bahl and Venkata N. Padmanabhan "RADAR: An In-Building RF-based User Location and Tracking System" [12] Jonathan Bachrach, Christopher Taylor, "Localization in Sensor Networks", Computer Science and Artificial Intelligence Laboratory Massachusetts Institute of Technology [13] Roy Friedman, Gabriel Kliot, "Location Services in Wireless Ad Hoc and Hybrid Networks: A Survey", Department of Computer Science Technion - 41 -
Abstract RSSI Based Indoor Location Recognition Algorithm where considers NLOS in WSN Environment Kim Sung Hyun Dept. of Computer Engineering Gradute School of Kyung Hee Univ. The rapid growth of information and telecommunication infrastructure makes the ubiquitous computing society earlier. Hence indoor location recognition has turned into a research area nowadays. But it is difficult to recognize the indoor location using received signal strength indication(rssi) in WSN environment because of the reflection and diffraction of the signal. Therefore in this paper we propose two algorithms to recover thoes problems. One is noise distinction and correction algorithms using signal information from sensors considering signal characteristic and environmental factor. The other one is location computing algorithm to recognize the exact location. - 42 -