專利名稱:線性環(huán)境下活動節(jié)點(diǎn)定位跟蹤系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種移動節(jié)點(diǎn)定位跟蹤方法,尤其涉及一種WIFI無線網(wǎng)絡(luò)基于接收信號強(qiáng)度(Received Signal Strength Indicator,RSSI)的線性環(huán)境下的節(jié)點(diǎn)定位跟蹤方法,屬于電通信技術(shù)領(lǐng)域。
背景技術(shù):
在WIFI無線網(wǎng)絡(luò)中,通常包含一定數(shù)量的WIFI接入點(diǎn)(Access Point,AP節(jié)點(diǎn)), 由于這些AP節(jié)點(diǎn)是不可移動的,因此一般把這些AP節(jié)點(diǎn)視為已知自身物理位置信息的固定位置的錨節(jié)點(diǎn)(固定節(jié)點(diǎn))。為了實(shí)現(xiàn)對人員的定位,要求每個人員攜帶一個定位標(biāo)簽, 由于人員的移動所以可以把每個定位標(biāo)簽視為移動節(jié)點(diǎn)。一般為了考慮成本因素,采用的定位標(biāo)簽只具有周期發(fā)送探測幀的能力,而不具有發(fā)送自定義數(shù)據(jù)幀的功能。現(xiàn)實(shí)中有很多環(huán)境都可近似為線性環(huán)境,例如公路系統(tǒng),礦井下的巷道。在線性環(huán)境下對定位標(biāo)簽進(jìn)行定位只需要把定位標(biāo)簽定位到具體的線段上的某個位置,而不需要定位到非線段外的位置。例如
圖1中的線性環(huán)境,定位標(biāo)簽只會在線段AB,AC和AD上活動, 并不會在這三條線段之外的其他區(qū)域活動,因此可以確定定位標(biāo)簽的位置定位在線段AB, AC和AD上,而不用考慮定位在三條線段之外的地方。這樣具有預(yù)定線段的環(huán)境稱為線性環(huán)境,這些線段稱為線性環(huán)境的線性區(qū)域。現(xiàn)實(shí)中有很多實(shí)際的應(yīng)用場景可以抽象為線性環(huán)境,例如公路系統(tǒng)、礦井下的巷道、大樓內(nèi)的樓道等等。現(xiàn)有技術(shù)中缺少這種線性環(huán)境下對活動節(jié)點(diǎn)的精確定位系統(tǒng)及其定位方法。
發(fā)明內(nèi)容本發(fā)明的目的就是為了線性環(huán)境下的定位跟蹤問題,設(shè)計(jì)了一個針對移動物體在多個線性區(qū)域之間運(yùn)動時有效的定位跟蹤方法。一種線性環(huán)境下活動節(jié)點(diǎn)定位跟蹤系統(tǒng),其特征在于所述系統(tǒng)包括無線接入點(diǎn)、 定位標(biāo)簽和與無線接入點(diǎn)通訊的服務(wù)器,所述定位標(biāo)簽作為活動節(jié)點(diǎn)在線性環(huán)境的線性區(qū)域內(nèi)活動,用于周期性的發(fā)送探測幀數(shù)據(jù);所述無線接入點(diǎn)作為錨節(jié)點(diǎn)布控在線性環(huán)境內(nèi)固定位置,用于捕獲定位標(biāo)簽發(fā)出的探測幀數(shù)據(jù),根據(jù)捕獲到的探測幀數(shù)據(jù)來計(jì)算定位標(biāo)簽的RSSI信息,并將定位標(biāo)簽的RSSI信息組裝成數(shù)據(jù)包通過多跳無線路由或有線網(wǎng)絡(luò)直接發(fā)送至服務(wù)器;服務(wù)器用于整合所有定位標(biāo)簽的RSSI信息,并根據(jù)所有定位標(biāo)簽的 RSSI信息獲得每個定位標(biāo)簽的實(shí)時位置。優(yōu)選的,所述無線接入點(diǎn)的發(fā)包周期大于定位標(biāo)簽的發(fā)包周期;所述服務(wù)器的定位周期大于無線接入點(diǎn)的發(fā)包周期。優(yōu)選的,所述服務(wù)器包括接受模塊、存儲模塊、定位模塊、穩(wěn)定模塊,所述接受模塊用于接收無線接入點(diǎn)發(fā)來的數(shù)據(jù)包信息,并提供給存儲模塊存儲;所述定位模塊讀取無線接入點(diǎn)發(fā)來的數(shù)據(jù)包信息進(jìn)行解析、確定定位標(biāo)簽的線性區(qū)域和定位標(biāo)簽在線性區(qū)域的精確位置;所述穩(wěn)定模塊用于當(dāng)定位模塊確定后定位標(biāo)簽在線性區(qū)域的位置產(chǎn)生跳躍現(xiàn)象時進(jìn)行穩(wěn)定處理。本發(fā)明還提供了一種線性環(huán)境下活動節(jié)點(diǎn)定位跟蹤方法,其特征在于所述方法包括以下步驟(1)作為活動節(jié)點(diǎn)的定位標(biāo)簽周期性的發(fā)送探測幀數(shù)據(jù);(2)作為錨節(jié)點(diǎn)的無線接入點(diǎn)接受定位標(biāo)簽發(fā)出的探測幀數(shù)據(jù),根據(jù)接收到的探測幀數(shù)據(jù)來計(jì)算定位標(biāo)簽的RSSI信息,并將定位標(biāo)簽的RSSI信息組裝成數(shù)據(jù)包通過多跳無線路由或有線網(wǎng)絡(luò)直接發(fā)送至服務(wù)器; (3)服務(wù)器整合處理所有定位標(biāo)簽的RSSI信息,并根據(jù)所有定位標(biāo)簽的RSSI信息獲得每個定位標(biāo)簽的實(shí)時位置。優(yōu)選的,所述方法步驟(2)中無線接入點(diǎn)預(yù)先構(gòu)造二維數(shù)組AP[Size][2]用于存儲定位標(biāo)簽發(fā)出的探測幀數(shù)據(jù),其中Size表示無線接入點(diǎn)收到的定位標(biāo)簽的個數(shù), APtSize]存儲定位標(biāo)簽的MAC地址,AP[Size] [1]存儲無線接入點(diǎn)根據(jù)捕獲到的探測幀數(shù)據(jù)而獲得的相應(yīng)定位標(biāo)簽的RSSI信息。優(yōu)選的,所述方法步驟(3)中服務(wù)器預(yù)先構(gòu)造定位標(biāo)簽的二維數(shù)組Mobile [nAP] [2]來存儲對于相同定位標(biāo)簽不同無線接入點(diǎn)計(jì)算得到的RSSI值,其中nAP代表具有該定位標(biāo)簽RSSI值信息的無線接入點(diǎn)的個數(shù),Mobile[nAP]存儲無線接入點(diǎn)的邏輯地址, Mobile [nAP] [2]存儲無線接入點(diǎn)存儲的相應(yīng)定位標(biāo)簽的RSSI值。優(yōu)選的,所述方法步驟C3)中服務(wù)器定位模塊根據(jù)定位標(biāo)簽的Mobile [nAP] [2]中的RSSI值進(jìn)行線性環(huán)境內(nèi)的線性區(qū)域判斷。優(yōu)選的,所述線性區(qū)域判斷步驟包括A)當(dāng)最大RSSI值的無線接入點(diǎn)大于等于預(yù)設(shè)常數(shù)MR時,定位標(biāo)簽的位置定位在該無線接入點(diǎn)的位置;否則構(gòu)造集合LR存儲具有兩個有效無線接入點(diǎn)的RSSI值的線性區(qū)域,計(jì)算線性區(qū)域的平均RSSI值,進(jìn)行B)步驟判斷;B)當(dāng)集合LR只存在一個線性區(qū)域,則該線性區(qū)域?yàn)樾枰ㄎ坏亩ㄎ粯?biāo)簽所在的線性區(qū)域;否則尋找平均RSSI值最大的線性區(qū)域FMRegion和平均RSSI值第二大的線性區(qū)域SMRegion,進(jìn)行C)步驟判斷;C)若兩個區(qū)域的平均RSSI大于預(yù)設(shè)閾值,則平均RSSI值最大的線性區(qū)域 FMRegion為需要定位的定位標(biāo)簽所在的線性區(qū)域;否則舍棄這次定位(即這次定位沒有結(jié)果)。優(yōu)選的,所述服務(wù)器定位模塊獲得定位標(biāo)簽所在的線性區(qū)域后進(jìn)行線性區(qū)域內(nèi)定位的步驟;所述線性區(qū)域內(nèi)定位包括以下步驟1)對定位標(biāo)簽所在的線性區(qū)域內(nèi)的相鄰無線接入點(diǎn)間進(jìn)行劃分形成定位線段;2)通過相鄰無線接入點(diǎn)的RSSI值的差值以及定位線段內(nèi)固定節(jié)點(diǎn)差值的閾值進(jìn)行精確確定定位標(biāo)簽所在的相鄰無線接入點(diǎn)間的精確位置。優(yōu)選的,所述服務(wù)器還包括定位模塊進(jìn)行精確定位后通過穩(wěn)定模塊來平滑顯示精確定位的結(jié)果,所述穩(wěn)定模塊為每一個定位標(biāo)簽維持一個定位結(jié)果隊(duì)列,當(dāng)產(chǎn)生對一個特定標(biāo)簽的定位結(jié)果時,首先判斷是否是第一次對該定位標(biāo)簽定位,若是,則返回該定位結(jié)果;否則將該定位結(jié)果壓入隊(duì)列,并判斷一下該隊(duì)列的元素?cái)?shù)是否為3,若不是,則定位標(biāo)簽不移動;而若已經(jīng)有三個元素,則判斷這三次定位結(jié)果是否有一個沒有定出位置的結(jié)果或存在一個定位結(jié)果跟當(dāng)前定位標(biāo)簽所在位置相同,若是,則當(dāng)前定位位置不變;否則把定位標(biāo)簽的位置定位在最后一次定位結(jié)果的位置。本發(fā)明的定位系統(tǒng)可以應(yīng)用于線性環(huán)境如公路、巷道、樓道等。定位標(biāo)簽在線性環(huán)境的各個線段上運(yùn)動時,將周期性的發(fā)送探測包信息,而位于該定位標(biāo)簽附近的無線接入點(diǎn)(即AP節(jié)點(diǎn))則能夠接收到這些探測包,從而根據(jù)接收到的探測包來計(jì)算相應(yīng)RSSI信息,并將收到的多個相對于各移動標(biāo)簽的RSSI信息組裝成一個數(shù)據(jù)包通過多跳無線路由或有線網(wǎng)絡(luò)直接發(fā)送至服務(wù)器,由服務(wù)器來整合相對于每個移動標(biāo)簽的各AP數(shù)據(jù)包中相關(guān)RSSI信息,并根據(jù)這些信息來計(jì)算每個定位標(biāo)簽的實(shí)時位置。由于在實(shí)際環(huán)境下,RSSI值是極其不穩(wěn)定的,即RSSI值波動(Fluctuate)較大。若直接用于移動目標(biāo)的定位跟蹤,所得的跟蹤誤差較大。針對線性環(huán)境的固有特點(diǎn),本發(fā)明采用先通過RSSI信息確定移動節(jié)點(diǎn)所處的線性區(qū)域,再利用線性區(qū)域兩端的錨節(jié)點(diǎn)的RSSI 信息實(shí)現(xiàn)對移動節(jié)點(diǎn)的精確定位。由于RSSI值的極其不穩(wěn)定性,針對在同一個位置的定位標(biāo)簽的先后兩組RSSI值的定位結(jié)果可能會不一樣(但是都滿足定位精度),如果把前后兩次的結(jié)果都直接顯示到界面上,則會發(fā)生跳躍現(xiàn)象,因此本發(fā)明還提供了一種簡單的穩(wěn)定方法來平滑掉這些跳躍現(xiàn)象。此外本發(fā)明在顯示模塊中連續(xù)移動定位標(biāo)簽,從而使客戶認(rèn)為定位標(biāo)簽是連續(xù)移動的,而并不是突然從一點(diǎn)移動到另一點(diǎn);并利用坐標(biāo)變換將最終的結(jié)果精確的顯示在屏幕上。此外,為了唯一的標(biāo)記區(qū)分各個AP節(jié)點(diǎn)和定位標(biāo)簽,本發(fā)明選擇了定位標(biāo)簽和AP 的MAC地址作為物理標(biāo)記符。為了區(qū)分布置的AP節(jié)點(diǎn)和定位標(biāo)簽,本發(fā)明在服務(wù)器端創(chuàng)建了一些配置文件,來存儲該系統(tǒng)已有的AP節(jié)點(diǎn)和定位標(biāo)簽的相關(guān)信息,并且把他們的MAC 地址都映射為一個邏輯整形ID來達(dá)到表示的簡單性。同時,配置文件中還存放了一些定位算法所用到的一些閾值以及系統(tǒng)所用到的系統(tǒng)參數(shù)。在實(shí)際系統(tǒng)中,本發(fā)明設(shè)計(jì)了一個配置軟件來完成大部分配置文件的生成,從而極大的提高了客戶書寫配置文件的簡便性。本發(fā)明基于RSSI的WIFI無線網(wǎng)絡(luò)定位跟蹤方法,其中由定位標(biāo)簽(移動節(jié)點(diǎn)) 發(fā)射探測幀信息,然后由AP節(jié)點(diǎn)(錨節(jié)點(diǎn))依據(jù)接收到的相應(yīng)探測幀計(jì)算出對應(yīng)的RSSI 信息并以固定周期將這些RSSI信息上傳到服務(wù)器,隨后由服務(wù)器來根據(jù)這些RSSI值對移動標(biāo)簽進(jìn)行定位并顯示。并且針對于特殊的線性環(huán)境,本發(fā)明提出了一個線性區(qū)域判定和線性區(qū)域內(nèi)定位方法,并移植了一個節(jié)點(diǎn)的穩(wěn)定方法來平滑掉顯示中的跳躍現(xiàn)象。具體的,先進(jìn)行預(yù)處理,應(yīng)用配置文件創(chuàng)造屬于該系統(tǒng)的AP節(jié)點(diǎn),地圖上線性區(qū)域的相關(guān)信息的配置文件,測試一些固定的閾值;然后按照如下步驟進(jìn)行定位步驟一、為了滿足定位的實(shí)時性要求,由定位標(biāo)簽以固定的周期廣播探測信息;步驟二、構(gòu)造定位標(biāo)簽與AP的對應(yīng)動態(tài)增廣RSSI值數(shù)組AP[Size] [2],其中 Size表示該AP節(jié)點(diǎn)收到的定位標(biāo)簽的個數(shù),AP[Size]存儲定位標(biāo)簽的MAC地址, AP[Size] [1]存儲相應(yīng)的RSSI信息。每個AP節(jié)點(diǎn)收集到探測幀,就計(jì)算相應(yīng)的RSSI值,并把該值更新到數(shù)組AP [Size] [2]中。注意每個AP都只保存最大的Max個RSSI信息所對應(yīng)的定位標(biāo)簽,即滿足Size < = M ax,而對于之外的較小的RSSI信息,將會舍棄。AP節(jié)點(diǎn)也以一定的周期(要大于定位標(biāo)簽的發(fā)包周期)將自己的MAC地址和對應(yīng)的AP [Size] [2]數(shù)組打包發(fā)送給服務(wù)器;步驟三、服務(wù)器解析收到的每個AP的數(shù)據(jù)包,并整合相對于每個移動標(biāo)簽的各AP數(shù)據(jù)包中的RSSI信息,也就是更新每個定位標(biāo)簽的特有數(shù)組Mobile [nAP] [2],其中nAP代表具有該定位標(biāo)簽RSSI值信息的AP節(jié)點(diǎn)的個數(shù),MobilefcAP]存儲相應(yīng)AP節(jié)點(diǎn)的邏輯地址,Mobile [nAP] [2]存儲相應(yīng)的RSSI值。注意每個定位標(biāo)簽都只保存最大的nAPMAX 個RSSI信息所對應(yīng)的AP節(jié)點(diǎn),既要滿足nAP < = nAPMAX,而對于之外的較小的RSSI信息將會舍棄。服務(wù)器每隔一個固定的周期(該周期要大于AP節(jié)點(diǎn)的發(fā)包周期)將把每個定位標(biāo)簽的特有數(shù)組Mobile [nAP] [ 2]信息發(fā)送給服務(wù)器定位模塊,隨后清空掉每個定位標(biāo)簽的特有數(shù)組信息;步驟四、服務(wù)器定位模塊依據(jù)每個定位標(biāo)簽的特有數(shù)組MobilefcAP] [2]對該標(biāo)簽進(jìn)行定位。假設(shè)擁有最大RSSI值的AP節(jié)點(diǎn)為API。首先將判斷API的RSSI值是否大于等于常數(shù)MR,若是,則定位模塊把該定位標(biāo)簽定位在擁有最大RSSI值的AP節(jié)點(diǎn)處。否則,利用該數(shù)組內(nèi)其他的信息來判定區(qū)域,首先創(chuàng)造一個集合LR來存儲具有兩個有效AP的RSSI 值的線性區(qū)域,并同時計(jì)算該線性區(qū)域的平均RSSI值,若LR只包含一個線性區(qū)域,則返回該線性區(qū)域;否則查找擁有最大平均RSSI值的區(qū)域FMRegion和第二大平均RSSI值的區(qū)域 SMRegion,若兩個區(qū)域的平均RSSI大于閾值δ (系統(tǒng)中δ為2),則返回區(qū)域FMRegion,否則的話認(rèn)為該數(shù)組信息存在錯誤,舍棄這次定位,這個部分稱為對定位標(biāo)簽的線性區(qū)域判定。假設(shè)最終判斷出定位標(biāo)簽在APl和AP2之間的線性區(qū)域上,隨后將判斷該定位標(biāo)簽具體在線段的那個具體位置上,這個部分稱為線性區(qū)域內(nèi)定位。在線性區(qū)域內(nèi)定位過程中,本發(fā)明把該線段分為固定的幾段,然后劃分出一些具體的區(qū),隨后將該定位標(biāo)簽定位在該區(qū)的中間(AP所在端點(diǎn)的區(qū)域除外)。假設(shè)該線段的定位段數(shù)是3,可分為如圖2所示的三段,其中APl-A是一段,A到B是一段,B到AP2是另一段。然后,本發(fā)明把這個線性區(qū)域劃分為四個區(qū)。隨后本發(fā)明計(jì)算APl對應(yīng)的RSSI值于AP2對應(yīng)的RSSI之間的差值d,并通過與已知1,2,3點(diǎn)所在點(diǎn)差值的閾值(分別為dl,d2和d3)進(jìn)行對比判斷節(jié)點(diǎn)所處的區(qū)域, 若d > = dl,則節(jié)點(diǎn)在定位的過程中落到了 O區(qū)的范圍內(nèi),理論上會將定位節(jié)點(diǎn)定位在APl 所在的位置;如果dl > d > = d2,則節(jié)點(diǎn)在定位的過程中落到了 1區(qū)的范圍內(nèi),理論上會定位在A點(diǎn)的位置;如果d2>d>=d3,則節(jié)點(diǎn)在定位的過程中落到了 2區(qū)的范圍內(nèi),理論上會定位在B點(diǎn)的位置;若d < d3,則節(jié)點(diǎn)在定位的過程中落到了 3區(qū)的范圍內(nèi),理論上會將定位節(jié)點(diǎn)定位在AP2所在的位置。這樣可以看出如果當(dāng)定位段數(shù)提升的時候,定位最大誤差會減小,但是定位后的跳躍現(xiàn)象會更嚴(yán)重,這個要視實(shí)際的情況來覺得定位段數(shù)的數(shù)值, 主要的參考因素是每兩個AP之間的距離以及定位的具體環(huán)境對RSSI值的影響。步驟五、在實(shí)際中本發(fā)明發(fā)現(xiàn),跳躍現(xiàn)象只會在附近的幾個定位點(diǎn)之間進(jìn)行。例如在圖2中,若移動標(biāo)簽固定放在2點(diǎn)處,絕大多數(shù)情況下會把該定位標(biāo)簽定位在A處,但由于RSSI值的極不穩(wěn)定,偶爾也會把該定位標(biāo)簽定位在B處,這樣就會產(chǎn)生顯示中的跳躍現(xiàn)象。因此本發(fā)明將移植以往面向無線傳感網(wǎng)絡(luò)的穩(wěn)定機(jī)制成果來解決這類問題,就是采用盡量不動的方法來平滑跳躍。每一個定位標(biāo)簽維持一個定位結(jié)果隊(duì)列。當(dāng)產(chǎn)生對一個特定標(biāo)簽的定位結(jié)果時,首先判斷是否是第一次對這個標(biāo)簽定位,若是,則返回該定位結(jié)果;否則將該定位結(jié)果壓入隊(duì)列,并判斷一下該隊(duì)列的元素?cái)?shù)是否為3若不是,返回null,也就是指定位標(biāo)簽不移動。而若已經(jīng)有三個元素,則判斷這三次定位結(jié)果是否有一個沒有定出位置的結(jié)果或存在一個定位結(jié)果跟當(dāng)前定位標(biāo)簽所在位置相同,若是,則當(dāng)前定位位置不變; 否則把定位標(biāo)簽的位置定位在最后一次定位結(jié)果的位置。[0033]步驟六將相關(guān)信息存入數(shù)據(jù)庫。相對于 現(xiàn)有技術(shù)中的方案,本發(fā)明的優(yōu)點(diǎn)是發(fā)包模式由定位標(biāo)簽(移動節(jié)點(diǎn))以固定的周期廣播探測信息,改變傳統(tǒng)的AP 節(jié)點(diǎn)(錨節(jié)點(diǎn))發(fā)探測幀的模式,這樣只需要使用可周期發(fā)設(shè)探測包的定位標(biāo)簽即可,不需要標(biāo)簽的可編程性及發(fā)送自定義數(shù)據(jù)包的功能,從而大大降低了系統(tǒng)的成本。線性區(qū)域判定只先考慮定位標(biāo)簽是否距離某個AP節(jié)點(diǎn)很近,即最大的RSSI值是否大于某個閾值;隨后根據(jù)各區(qū)域平均RSSI值來判定最終的線性區(qū)域。最終區(qū)域判定結(jié)果的出錯概率很小。線性區(qū)域內(nèi)定位把整個線段分成了幾個小區(qū),同過采用該區(qū)域內(nèi)兩AP端點(diǎn)RSSI 值的差值同各段閾值的比較來確定節(jié)點(diǎn)所處的具體小區(qū),從而將最終的位置定位在各小區(qū)的中點(diǎn)(兩端的區(qū)域定位在AP節(jié)點(diǎn)處)。這樣就減少了線段上可定位點(diǎn)的個數(shù),從而使最終的定位結(jié)果更加穩(wěn)定。綜上所述,本發(fā)明特別適合于移動目標(biāo)在線性環(huán)境下的定位與跟蹤應(yīng)用,如礦井下的巷道系統(tǒng),公路系統(tǒng),辦公樓的樓道系統(tǒng)等。由此可見,本發(fā)明為本領(lǐng)域的技術(shù)進(jìn)步拓展了空間,實(shí)施效果好。
以下結(jié)合附圖及實(shí)施例對本發(fā)明作進(jìn)一步描述圖1為線性環(huán)境的示意圖;圖2為線性區(qū)域內(nèi)定位的原理圖;圖3為本發(fā)明線性環(huán)境下活動節(jié)點(diǎn)定位跟蹤系統(tǒng)的系統(tǒng)架構(gòu)圖;圖4為本發(fā)明實(shí)施例線性區(qū)域內(nèi)定位段劃分圖示;圖5為本發(fā)明實(shí)施例實(shí)施實(shí)例中定位結(jié)果展示。
具體實(shí)施方式
以下結(jié)合具體實(shí)施例對上述方案做進(jìn)一步說明。應(yīng)理解,這些實(shí)施例是用于說明本發(fā)明而不限于限制本發(fā)明的范圍。實(shí)施例中采用的實(shí)施條件可以根據(jù)具體廠家的條件做進(jìn)一步調(diào)整,未注明的實(shí)施條件通常為常規(guī)實(shí)驗(yàn)中的條件。實(shí)施例如圖3所示,該實(shí)施例提供了一種WIFI無線網(wǎng)絡(luò)線性環(huán)境下移動人員定位跟蹤系統(tǒng),首先由定位標(biāo)簽以較快的周期(系統(tǒng)中設(shè)置為300ms)發(fā)送探測包。然后,AP節(jié)點(diǎn)收集到該探測幀時,就計(jì)算相應(yīng)的RSSI值,并把該定位標(biāo)簽的MAC地址和對應(yīng)的RSSI值更新到動態(tài)增廣數(shù)組AP [Size] [2]中。注意每個AP都只保存最大的Max個RSSI信息所對應(yīng)的定位標(biāo)簽,即滿足Size <= Max,而對于之外的較小的RSSI信息,將會舍棄。AP節(jié)點(diǎn)也以一定的周期(要大于定位標(biāo)簽的發(fā)包周期,系統(tǒng)中設(shè)置為500ms)將自己的MAC地址和對應(yīng)的AP[Size] [2]數(shù)組打包發(fā)送給服務(wù)器。AP服務(wù)器解析收到的每個AP的數(shù)據(jù)包,并整合相對于每個移動標(biāo)簽的各AP數(shù)據(jù)包中的RSSI信息,也就是更新每個定位標(biāo)簽的特有數(shù)組Mobile [nAP] [2],其中nAP代表具有該定位標(biāo)簽RSSI值信息的AP節(jié)點(diǎn)的個數(shù),MobilefcAP]存儲相應(yīng)AP節(jié)點(diǎn)的邏輯地址,Mobile[nAP] [2]存儲相應(yīng)的RSSI值。注意每個定位標(biāo)簽都只保存最大的nAPMAX個 RSSI信息所對應(yīng)的AP節(jié)點(diǎn),既要滿足nAP < = nAPMAX,而對于之外的較小的RSSI信息將會舍棄。服務(wù)器每隔一個固定的周期(該周期要大于AP節(jié)點(diǎn)的發(fā)包周期,系統(tǒng)中設(shè)置為 800ms)將把每個定位標(biāo)簽的特有數(shù)組Mobile [nAP] [2]按RSSI值從大到小排序并把排序后的拷貝信息發(fā)送給定位模塊,隨后清空掉每個定位標(biāo)簽的特有數(shù)組信息。定位模塊每收到一個Mobile [nAP] [2]信息,首先利用線性區(qū)域判定來確定該定位標(biāo)簽所處的線性區(qū)域(線段)。在兩個節(jié)點(diǎn)距離很近的情況下,接收信號較強(qiáng),其RSSI值也較大。因此對于那些比較特殊的極強(qiáng)信號強(qiáng)度值,即若Mobile W] [1]是否大于等于常數(shù) MR(系統(tǒng)中設(shè)置為-45),若是,則把該定位標(biāo)簽定位在擁有最大RSSI值的API (Mobile)節(jié)點(diǎn)所在的線性區(qū)域。然而多數(shù)情況下,收集的RSSI信息并不滿足極強(qiáng)信號強(qiáng)度判斷條件,因此本發(fā)明要分析Mobile [nAP] [2]數(shù)組中其他的AP節(jié)點(diǎn)的RSSI值來確定最終的線性區(qū)域。首先創(chuàng)造一個集合LR來存儲具有兩個有效AP的RSSI值的線性區(qū)域,并同時計(jì)算該線性區(qū)域的平均RSSI值,若LR只包含一個線性區(qū)域,則返回該線性區(qū)域;否則查找擁有最大平均RSSI值的區(qū)域FMRegion和第二大平均RSSI值的區(qū)域SMRegion,若兩個區(qū)域的平均RSSI大于閾值S (系統(tǒng)中S為2),則返回區(qū)域FMRegion,否則的話認(rèn)為該數(shù)組信息存在錯誤,舍棄這
次定位,這個部分稱為對定位標(biāo)簽的線性區(qū)域判定。 IfMobile[0][l] > MR, then
Return Mobile[0][0]所在的一個線性區(qū)域; Fori=OtonAP-I
Forj=i+ltonAP-l If MobileHCO]和 Mobile[j][0]在同一個線性區(qū)域民 then do R.avg = (Mobile[i][l] + Mobile[j][l])/2; LR = LRUR; If ILRI == 1, then return LR.first; For each R G LR do
IfFMRegion.avg >R.avg, then do FMRegion = R; For each R E LR do
If SMRegion.avg >R.avg and SMRegion^FMRegion, then do SMRegion = R; IfFMRegion.avg - SMRegion.avg > <5 then do
Return FMRegion; Else return null;經(jīng)過線性區(qū)域判定以后,本發(fā)明已經(jīng)知道該定位標(biāo)簽位于那一個線性區(qū)域(線段)上,假設(shè)為APl和AP2所在的線性區(qū)域,隨后本發(fā)明將采用線性區(qū)域內(nèi)定位機(jī)制在該線性區(qū)域內(nèi)確定定位標(biāo)簽的精確位置。在該機(jī)制中,本發(fā)明首先把該線段分為固定的幾段,然后劃分出一些區(qū),隨后判斷該定位標(biāo)簽所在的具體區(qū),并將該定位標(biāo)簽定位在該區(qū)的中間 (AP所在端點(diǎn)的區(qū)域除外)。假如從配置文件中讀入要把APl和AP2之間的線性區(qū)域劃分為k段,則共需要定圍在k+Ι個點(diǎn),即APl和AP2,以及Ll到Lk-I ;而且該線性區(qū)域可以劃分為k個區(qū)。隨后本發(fā)明計(jì)算APl對應(yīng)的RSSI值于AP2對應(yīng)的RSSI之間的差值d,并通過與已知1,2,…,k點(diǎn)所在點(diǎn)差值的閾值(d[i],l <= i <=k)進(jìn)行對比判斷節(jié)點(diǎn)所處的區(qū)域(如圖4所述), 在具體系統(tǒng)實(shí)現(xiàn)時,本發(fā)明給 數(shù)組d[i]兩個哨兵信息,即d[0] = + c 和d[k+l]=-⑴。For i=0 to k, do
Ii d > d[i + l] and d < d[‘],then do
Location =( (k-i)xAPl .Location + ixAP2 .Location)/k; Return Location;隨后,本發(fā)明移植了一個面向無線傳感網(wǎng)絡(luò)的穩(wěn)定機(jī)制來解決顯示中出現(xiàn)的跳躍問題,該機(jī)制的本質(zhì)就是采用盡量不動的方法來平滑跳躍。在該機(jī)制中,每一個定位標(biāo)簽維持一個定位結(jié)果S。當(dāng)產(chǎn)生對一個特定標(biāo)簽的定位結(jié)果時,首先判斷是否是第一次對這個標(biāo)簽定位,若是,則返回該定位結(jié)果;否則將該定位結(jié)果加入該集合,并判斷一下該集合的元素?cái)?shù)是否為3若不是,返回null,也就是指定位標(biāo)簽不移動。而若已經(jīng)有三個元素,則判斷這三次定位結(jié)果是否有一個沒有定出位置的結(jié)果或存在一個定位結(jié)果跟當(dāng)前定位標(biāo)簽所在位置相同(假設(shè)當(dāng)前的位置為PreLocation),若是,則當(dāng)前定位位置不變;否則把定位標(biāo)
簽的位置定位在最后一次定位結(jié)果的位置。
If得到一個定位結(jié)果Loeationj then do Q .push(Location) If Q.Count = 3,then do While !Q.empiyO, do
L=QpopO;
IfL==null or L-Location = PreLocation, then do Return null; Return Location;
Else return null;最后將相關(guān)信息存入數(shù)據(jù)庫。具體應(yīng)用是,AP節(jié)點(diǎn)可以采用蘇州市漢明科技公司的AP,定位標(biāo)簽同樣采用蘇州市漢明科技公司的定位標(biāo)簽。鑒于目前客戶端大都是Windows系統(tǒng)和Windows系統(tǒng)對.NET 開發(fā)環(huán)境的支持,本軟件的開發(fā)平臺選擇Windows系統(tǒng),開發(fā)環(huán)境如下所述操作系統(tǒng)選擇高于windows 2000版本的windows操作系統(tǒng);數(shù)據(jù)庫MS SQL 2005 作為Microsoft公司的下一代數(shù)據(jù)管理與分析軟件,SQL Server 2005有助于簡化企業(yè)數(shù)據(jù)與分析應(yīng)用的創(chuàng)建、部署和管理,并在解決方案伸縮性、 可用性和安全性方面實(shí)現(xiàn)重大改進(jìn)。Visual Studio 2005 =Visual Studio 2005是微軟新開發(fā)的一種全方位的工具平臺,它能夠有效地減少開發(fā)的復(fù)雜度,確保用戶輕松的發(fā)布Framework的解決方案,不論你是否是一個資深的編程人員還是 一位編程初學(xué)者,都能為您提供高效的服務(wù)。實(shí)驗(yàn)是在中國科學(xué)技術(shù)大學(xué)蘇州研究院行政樓4樓進(jìn)行,本發(fā)明在該層樓的樓道上布置了 3個AP節(jié)點(diǎn),每兩個AP之間相距30米,且分成3段來定位,故理論最大誤差為 30/(2 * 3) = 5米。使用一個定位標(biāo)簽在該系統(tǒng)中移動。如圖5所示,本發(fā)明設(shè)置dll_dl3,d21-d23的閾值如表1所示。當(dāng)定位標(biāo)簽位于位置A,B, C,D處時,收集的RSSI結(jié)果見表2-5所示,定位的最終結(jié)果分別為Lll,AP2,L22 和AP3處,可知最終的定位結(jié)果很精確,且定位最大誤差在5米之內(nèi)。表1閾值設(shè)置
權(quán)利要求1. 一種線性環(huán)境下活動節(jié)點(diǎn)定位跟蹤系統(tǒng),其特征在于所述系統(tǒng)包括無線接入點(diǎn)、定位標(biāo)簽和與無線接入點(diǎn)通訊的服務(wù)器,所述定位標(biāo)簽作為活動節(jié)點(diǎn)在線性環(huán)境的線性區(qū)域內(nèi)活動,用于周期性的發(fā)送探測幀數(shù)據(jù);所述無線接入點(diǎn)作為錨節(jié)點(diǎn)布控在線性環(huán)境內(nèi)固定位置,用于捕獲定位標(biāo)簽發(fā)出的探測幀數(shù)據(jù),根據(jù)捕獲到的探測幀數(shù)據(jù)來計(jì)算定位標(biāo)簽的RSSI信息,并將定位標(biāo)簽的RSSI信息組裝成數(shù)據(jù)包通過多跳無線路由或有線網(wǎng)絡(luò)直接發(fā)送至服務(wù)器;服務(wù)器用于整合所有定位標(biāo)簽的RSSI信息,并根據(jù)所有定位標(biāo)簽的RSSI信息獲得每個定位標(biāo)簽的實(shí)時位置。
專利摘要本實(shí)用新型公開了一種線性環(huán)境下活動節(jié)點(diǎn)定位跟蹤系統(tǒng),包括無線接入點(diǎn)、定位標(biāo)簽和與無線接入點(diǎn)通訊的服務(wù)器,所述定位標(biāo)簽作為活動節(jié)點(diǎn)在線性環(huán)境的線性區(qū)域內(nèi)活動,并周期性的發(fā)送探測幀數(shù)據(jù);所述無線接入點(diǎn)作為錨節(jié)點(diǎn)布控在線性環(huán)境內(nèi)固定位置,用于捕獲定位標(biāo)簽發(fā)出的探測幀數(shù)據(jù),根據(jù)捕獲到的探測幀數(shù)據(jù)來計(jì)算定位標(biāo)簽的RSSI信息,并將定位標(biāo)簽的RSSI信息組裝成數(shù)據(jù)包通過多跳無線路由或有線網(wǎng)絡(luò)直接發(fā)送至服務(wù)器;服務(wù)器整合處理所有定位標(biāo)簽的RSSI信息,并根據(jù)所有定位標(biāo)簽的RSSI信息獲得每個定位標(biāo)簽的實(shí)時位置。該定位系統(tǒng)定位位置精確可靠、定位位置穩(wěn)定。
文檔編號H04L29/08GK202121780SQ20102069255
公開日2012年1月18日 申請日期2010年12月31日 優(yōu)先權(quán)日2010年12月31日
發(fā)明者劉剛, 張銀東, 徐宏力, 杜丙堅(jiān), 汪煬, 蔣勝龍, 黃劉生 申請人:中國科學(xué)技術(shù)大學(xué)蘇州研究院