發(fā)明涉及通信技術(shù)領(lǐng)域,具體的說(shuō)是一種基于ZigBee網(wǎng)絡(luò)在超市環(huán)境下的定位方法。
背景技術(shù):
目前,在智能設(shè)施的普及下,定位的重要性愈發(fā)凸顯。無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的最為重要的一個(gè)應(yīng)用實(shí)例便是進(jìn)行終端節(jié)點(diǎn)(即無(wú)線(xiàn)傳感器)定位。學(xué)術(shù)上通常采用的方法有:到達(dá)時(shí)間TOA,到達(dá)時(shí)間差TDOA,到達(dá)角度AOA,接收信號(hào)強(qiáng)度指示RSSI。由于工程應(yīng)用中,考慮到終端節(jié)點(diǎn)低功耗的必要需求以及終端節(jié)點(diǎn)間難以精確同步。實(shí)際多采用RSSI信號(hào)強(qiáng)度判斷終端節(jié)點(diǎn)位置,如“ZigBee技術(shù)中基于RSSI測(cè)距的定位算法研究”,徐世武等,《單片機(jī)與嵌入式系統(tǒng)應(yīng)用》2012年08期。解決基于ZigBee的無(wú)線(xiàn)傳感器定位主要參考TI公司由信號(hào)傳播模型推演的得到的RSSI距離公式:RSSI=-(10×n×log10d+A),其中d為信號(hào)傳播的距離,n、A分別為傳播因子與環(huán)境參數(shù),均為可變參數(shù)。
但在超市環(huán)境下,由于障礙物多、電磁干擾強(qiáng)等不確定因素使得可變參數(shù)不能通過(guò)簡(jiǎn)單的推算來(lái)得到,實(shí)際數(shù)學(xué)模型會(huì)變得復(fù)雜的多,使得由此衍生出的定位算法(如質(zhì)心算法),如“基于ZigBee定位系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)”,曹凱,《管理科學(xué)》2014年04期,數(shù)據(jù)不可靠,定位效果差,難以在超市環(huán)境下實(shí)現(xiàn)定位。
另一種根據(jù)各節(jié)點(diǎn)的RSSI位置特征建立的位置指紋數(shù)據(jù)庫(kù)匹配定位的定位方法,如“基于WiFi的井下指紋模定位算法”,董建平等,《工礦自動(dòng)化》2014年10期,由于需要大量的采集點(diǎn)保證定位精度,導(dǎo)致離線(xiàn)數(shù)據(jù)量過(guò)大,匹配算法復(fù)雜,實(shí)際應(yīng)用也很困難。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明為克服上述現(xiàn)有技術(shù)存在的不足之處,提供一種基于ZigBee網(wǎng)絡(luò)在超市環(huán)境中的定位方法,以期能有效利用超市環(huán)境的障礙物也就是貨架的特征,提高離線(xiàn)采集階段的效用值,并利用匹配路徑點(diǎn)數(shù)據(jù)的冗余特征,提高在線(xiàn)定位階段的定位精度,從而開(kāi)拓在環(huán)境復(fù)雜定位要求高的室內(nèi)運(yùn)用無(wú)線(xiàn)技術(shù)定位的可能性。
為達(dá)到上述目的,本發(fā)明采用如下技術(shù)方案實(shí)現(xiàn)發(fā)明目的:
本發(fā)明一種基于ZigBee網(wǎng)絡(luò)在超市環(huán)境中的定位方法,所述超市環(huán)境是以貨架作為障礙物,其余空間為非障礙物區(qū)域,且在所述非障礙物區(qū)域中設(shè)置有帶有ZigBee的購(gòu)物車(chē)作為盲節(jié)點(diǎn);以所述超市環(huán)境的外接矩形的任意一點(diǎn)作為原點(diǎn)O,以所述原點(diǎn)O的相鄰邊分別作為X軸和Y軸,分別建立二維平面坐標(biāo)系XOY;其特點(diǎn)是,所述定位方法是按如下步驟進(jìn)行:
步驟1、將所述超市環(huán)境分割為N塊三角形定位子區(qū)域;在每塊三角形定位子區(qū)域的頂點(diǎn)上分別設(shè)置帶有ZigBee的參考節(jié)點(diǎn),記為Ri,i=1,2,3;以第i個(gè)參考節(jié)點(diǎn)Ri為源點(diǎn),向所述第i個(gè)參考節(jié)點(diǎn)Ri的對(duì)應(yīng)邊發(fā)散M條路徑,并在所述第i個(gè)參考節(jié)點(diǎn)Ri的對(duì)應(yīng)邊上相應(yīng)形成M個(gè)路徑終點(diǎn)Em,1≤m≤M;在所述源點(diǎn)與第m個(gè)路徑終點(diǎn)Em之間的路徑上設(shè)置有Km個(gè)采集點(diǎn);令第k個(gè)采集點(diǎn)與源點(diǎn)之間的距離記為dk,且所述第k個(gè)采集點(diǎn)dk位于所述非障礙物區(qū)域上,所述第i個(gè)參考節(jié)點(diǎn)Ri和所述盲節(jié)點(diǎn)的高度相同;
步驟2、離線(xiàn)階段
步驟2.1、利用盲節(jié)點(diǎn)獲取第m條路徑上所有采集點(diǎn)的無(wú)線(xiàn)信號(hào)并進(jìn)行濾波處理,得到Km個(gè)RSSI測(cè)量值;
步驟2.2、根據(jù)Km個(gè)RSSI測(cè)量值和Km個(gè)采集點(diǎn)的距離構(gòu)建第i個(gè)參考節(jié)點(diǎn)Ri的第m條路徑上的RSSI-d映射表;
步驟2.3、利用最小二乘法對(duì)第i個(gè)參考節(jié)點(diǎn)Ri的第m條路徑上的RSSI-d映射表進(jìn)行擬合,得到第i個(gè)參考節(jié)點(diǎn)Ri的第m條路徑上的RSSI-d分布曲線(xiàn);從而得到第i個(gè)參考節(jié)點(diǎn)Ri的M條路徑上的RSSI-d分布曲線(xiàn)所構(gòu)成的分布曲線(xiàn)簇;進(jìn)而得到每塊三角形定位子區(qū)域的每個(gè)參考節(jié)點(diǎn)所對(duì)應(yīng)的分布曲線(xiàn)簇;
步驟3、在線(xiàn)定位階段
步驟3.1、當(dāng)所述盲節(jié)點(diǎn)處于所述非障礙物區(qū)域內(nèi)的未知位置,則所述盲節(jié)點(diǎn)上的ZigBee向周?chē)膮⒖脊?jié)點(diǎn)發(fā)送無(wú)線(xiàn)信號(hào);
步驟3.2、假設(shè)有J個(gè)參考節(jié)點(diǎn)接收到相應(yīng)的無(wú)線(xiàn)信號(hào)并進(jìn)行濾波處理,得到所述盲節(jié)點(diǎn)的J個(gè)RSSI測(cè)量值;將所述盲節(jié)點(diǎn)的J個(gè)RSSI測(cè)量值分別與相應(yīng)參考節(jié)點(diǎn)所對(duì)應(yīng)的分布曲線(xiàn)簇進(jìn)行匹配,得到所匹配的U個(gè)參考節(jié)點(diǎn)及其匹配的路徑點(diǎn)集合;記第u個(gè)參考節(jié)點(diǎn)Ru所匹配的路徑點(diǎn)集合為Cu;
步驟3.3、在U個(gè)參考節(jié)點(diǎn)中第u個(gè)參考節(jié)點(diǎn)Ru向自身的三角形定位子區(qū)域內(nèi)其他參考節(jié)點(diǎn)發(fā)送無(wú)線(xiàn)信號(hào);
步驟3.4、在U個(gè)參考節(jié)點(diǎn)中,若存在一個(gè)參考節(jié)點(diǎn)Rs1同時(shí)收到其他兩個(gè)參考節(jié)點(diǎn)Rs2和Rs3發(fā)送的無(wú)線(xiàn)信號(hào),則表示所述盲節(jié)點(diǎn)處于由參考節(jié)點(diǎn)Rs1、Rs2和Rs3所組成的三角形定位子區(qū)域中;
步驟3.5、在由參考節(jié)點(diǎn)Rs1、Rs2和Rs3所組成的三角形定位子區(qū)域的路徑點(diǎn)集合Cs1、Cs2和Cs3中,獲取路徑點(diǎn)集合Cs1、Cs2和Cs3的中心點(diǎn)C;
步驟3.6、從所述路徑點(diǎn)集合Cs1中抽取任意一個(gè)路徑點(diǎn)cs1、路徑點(diǎn)集合Cs2中抽取任意一個(gè)路徑點(diǎn)cs2、路徑點(diǎn)集合Cs3中抽取任意一個(gè)路徑點(diǎn)cs3進(jìn)行組合為第f個(gè)匹配路徑組,從而得到F個(gè)匹配路徑組;
步驟3.7、利用式(1)計(jì)算第f個(gè)匹配路徑組的差異程度Qf,從而獲得F個(gè)匹配路徑組的差異程度:
式(1)中,表示路徑點(diǎn)cs1與路徑點(diǎn)cs2之間的距離;表示路徑點(diǎn)cs1與路徑點(diǎn)cs3之間的距離;表示路徑點(diǎn)cs2與路徑點(diǎn)cs3之間的距離;
步驟3.8、設(shè)置差異程度閾值為Δ,得到F個(gè)匹配路徑組的差異程度中小于閾值Δ所對(duì)應(yīng)的V個(gè)匹配路徑組;
步驟3.9、利用式(2)得到所述盲節(jié)點(diǎn)的定位結(jié)果E:
式(2)中,Qv表示第v個(gè)匹配路徑組的差異程度;1≤v≤V;ev表示第v個(gè)匹配路徑組的中心點(diǎn),表示第v個(gè)匹配路徑組的中心點(diǎn)ev對(duì)中心點(diǎn)C的矢量偏移。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:
1.本發(fā)明相對(duì)于傳統(tǒng)的室內(nèi)定位算法相比,有效利用超市環(huán)境下障礙物區(qū)域的特征,改進(jìn)離線(xiàn)階段數(shù)據(jù)采集的手段,以匹配路徑組的差異程度作為數(shù)據(jù)特征對(duì)估計(jì)位置進(jìn)行矢量偏移,提高了定位精度,開(kāi)拓了在環(huán)境復(fù)雜定位要求高的室內(nèi)運(yùn)用無(wú)線(xiàn)技術(shù)定位的可能性。
2.本發(fā)明利用超市環(huán)境的障礙物也就是貨架的特征,在劃分的三角形定位子區(qū)域中有效的設(shè)計(jì)離線(xiàn)階段采集點(diǎn),在滿(mǎn)足實(shí)際定位要求的情況下,與傳統(tǒng)的指紋匹配算法相比,可以明顯減少離線(xiàn)階段定位網(wǎng)絡(luò)的數(shù)據(jù)量。
3.本發(fā)明利用RSSI-d分布曲線(xiàn)所構(gòu)成的分布曲線(xiàn)簇,確定定位子區(qū)域,以利用較少的網(wǎng)絡(luò)資源,減少了定位網(wǎng)絡(luò)的工作量,并利用對(duì)差異程度設(shè)置閾值對(duì)數(shù)據(jù)進(jìn)行處理,在此基礎(chǔ)上進(jìn)行的基于差異程度加權(quán)的矢量偏移,能有效利用路徑點(diǎn)的冗余信息,獲得較高的定位精度。
附圖說(shuō)明
圖1是本發(fā)明建立的超市環(huán)境模型圖;
圖2是本發(fā)明的一種基本方法流程圖;
圖3是本發(fā)明建立的離線(xiàn)階段模型圖;
圖4是本發(fā)明在線(xiàn)定位階段基本流程圖;
圖5是本發(fā)明在線(xiàn)階段匹配定位示意圖。
具體實(shí)施方式
本實(shí)施例中,一種基于ZigBee網(wǎng)絡(luò)在超市環(huán)境中的定位方法,如圖1所示,超市環(huán)境是以貨架作為障礙物,其余空間為非障礙物區(qū)域,且在非障礙物區(qū)域中設(shè)置有帶有ZigBee的購(gòu)物車(chē)作為盲節(jié)點(diǎn);以超市環(huán)境的外接矩形的任意一點(diǎn)作為原點(diǎn)O,以原點(diǎn)O的相鄰邊分別作為X軸和Y軸,分別建立二維平面坐標(biāo)系XOY;如圖2所示,定位方法是按如下步驟進(jìn)行:
步驟1、將超市環(huán)境分割為N塊三角形定位子區(qū)域;如圖3所示,在每塊三角形定位子區(qū)域的頂點(diǎn)上分別設(shè)置帶有ZigBee的參考節(jié)點(diǎn),記為Ri,i=1,2,3;以第i個(gè)參考節(jié)點(diǎn)Ri為源點(diǎn),向第i個(gè)參考節(jié)點(diǎn)Ri的對(duì)應(yīng)邊發(fā)散M條路徑,路徑會(huì)穿過(guò)障礙物區(qū)域也就是貨架,并在第i個(gè)參考節(jié)點(diǎn)Ri的對(duì)應(yīng)邊上相應(yīng)形成M個(gè)路徑終點(diǎn)Em,1≤m≤M;在源點(diǎn)與第m個(gè)路徑終點(diǎn)Em之間的路徑上設(shè)置有Km個(gè)采集點(diǎn),采集點(diǎn)的設(shè)置需處在無(wú)障礙區(qū)域,由于各路徑的發(fā)散角度不同,使得每條路徑在無(wú)障礙區(qū)域的分段長(zhǎng)度不同,此時(shí)考慮離線(xiàn)采集點(diǎn)設(shè)置的合理性要求,需設(shè)置閾值β,假設(shè)閾值β為2m,當(dāng)分段長(zhǎng)度小于2m時(shí),則在該段中點(diǎn)上設(shè)置一個(gè)采集點(diǎn),當(dāng)分段長(zhǎng)度大于2m時(shí),則在該段三分點(diǎn)處設(shè)置兩個(gè)采集點(diǎn);令第k個(gè)采集點(diǎn)與源點(diǎn)之間的距離記為dk,且第k個(gè)采集點(diǎn)dk位于非障礙物區(qū)域上,為了保證采集數(shù)據(jù)與對(duì)應(yīng)路徑上距離的分布關(guān)系,第i個(gè)參考節(jié)點(diǎn)Ri和盲節(jié)點(diǎn)的高度相同;
步驟2、離線(xiàn)階段
步驟2.1、利用盲節(jié)點(diǎn)獲取第m條路徑上所有采集點(diǎn)的無(wú)線(xiàn)信號(hào)并進(jìn)行濾波處理,得到Km個(gè)RSSI測(cè)量值;
步驟2.2、根據(jù)Km個(gè)RSSI測(cè)量值和Km個(gè)采集點(diǎn)的距離構(gòu)建第i個(gè)參考節(jié)點(diǎn)Ri的第m條路徑上的RSSI-d映射表;
步驟2.3、利用最小二乘法對(duì)第i個(gè)參考節(jié)點(diǎn)Ri的第m條路徑上的RSSI-d映射表進(jìn)行擬合,得到第i個(gè)參考節(jié)點(diǎn)Ri的第m條路徑上的RSSI-d分布曲線(xiàn);從而得到第i個(gè)參考節(jié)點(diǎn)Ri的M條路徑上的RSSI-d分布曲線(xiàn)所構(gòu)成的分布曲線(xiàn)簇;進(jìn)而得到每塊三角形定位子區(qū)域的每個(gè)參考節(jié)點(diǎn)所對(duì)應(yīng)的分布曲線(xiàn)簇;
步驟3、如圖4所示,在線(xiàn)定位階段由以下步驟構(gòu)成
步驟3.1、當(dāng)盲節(jié)點(diǎn)處于非障礙物區(qū)域內(nèi)的未知位置,則盲節(jié)點(diǎn)上的ZigBee以廣播的形式向周?chē)膮⒖脊?jié)點(diǎn)發(fā)送無(wú)線(xiàn)信號(hào);
步驟3.2、假設(shè)有J個(gè)參考節(jié)點(diǎn)接收到相應(yīng)的無(wú)線(xiàn)信號(hào)并進(jìn)行濾波處理,得到盲節(jié)點(diǎn)的J個(gè)RSSI測(cè)量值;將盲節(jié)點(diǎn)的J個(gè)RSSI測(cè)量值分別與相應(yīng)參考節(jié)點(diǎn)所對(duì)應(yīng)的分布曲線(xiàn)簇進(jìn)行匹配,得到所匹配的U個(gè)參考節(jié)點(diǎn)及其匹配的路徑點(diǎn)集合,此時(shí)得到的路徑點(diǎn)可以分布在對(duì)應(yīng)參考節(jié)點(diǎn)所在的任意一個(gè)三角形定位子區(qū)域,而產(chǎn)生匹配成功的路徑點(diǎn)對(duì)應(yīng)的參考節(jié)點(diǎn),具備產(chǎn)生發(fā)散包含盲節(jié)點(diǎn)的路徑的可能性;記第u個(gè)參考節(jié)點(diǎn)Ru所匹配的路徑點(diǎn)集合為Cu;
步驟3.3、在U個(gè)參考節(jié)點(diǎn)中第u個(gè)參考節(jié)點(diǎn)Ru向自身的三角形定位子區(qū)域內(nèi)其他參考節(jié)點(diǎn)發(fā)送無(wú)線(xiàn)信號(hào);
步驟3.4、在U個(gè)參考節(jié)點(diǎn)中,若存在一個(gè)參考節(jié)點(diǎn)Rs1同時(shí)收到其他兩個(gè)參考節(jié)點(diǎn)Rs2和Rs3發(fā)送的無(wú)線(xiàn)信號(hào),則表示盲節(jié)點(diǎn)處于由參考節(jié)點(diǎn)Rs1、Rs2和Rs3所組成的三角形定位子區(qū)域中,利用RSSI-d分布曲線(xiàn)所構(gòu)成的分布曲線(xiàn)簇,確定定位子區(qū)域,以利用較少的網(wǎng)絡(luò)資源,減少了定位網(wǎng)絡(luò)的工作量;
步驟3.5、在由參考節(jié)點(diǎn)Rs1、Rs2和Rs3所組成的三角形定位子區(qū)域的路徑點(diǎn)集合Cs1、Cs2和Cs3中,獲取路徑點(diǎn)集合Cs1、Cs2和Cs3的中心點(diǎn)C;
步驟3.6、從路徑點(diǎn)集合Cs1中抽取任意一個(gè)路徑點(diǎn)cs1、路徑點(diǎn)集合Cs2中抽取任意一個(gè)路徑點(diǎn)cs2、路徑點(diǎn)集合Cs3中抽取任意一個(gè)路徑點(diǎn)cs3進(jìn)行組合為第f個(gè)匹配路徑組,從而得到F個(gè)匹配路徑組;
由步驟3.6所得到的F個(gè)匹配路徑組中可能會(huì)有某兩組的路徑點(diǎn)有一個(gè)或兩個(gè)是分別相同的,這種重合體現(xiàn)了路徑點(diǎn)數(shù)據(jù)的冗余特征;
步驟3.7、利用式(1)計(jì)算第f個(gè)匹配路徑組的差異程度Qf,從而獲得F個(gè)匹配路徑組的差異程度:
式(1)中,表示路徑點(diǎn)cs1與路徑點(diǎn)cs2之間的距離;表示路徑點(diǎn)cs1與路徑點(diǎn)cs3之間的距離;表示路徑點(diǎn)cs2與路徑點(diǎn)cs3之間的距離;
步驟3.8、設(shè)置差異程度閾值為Δ,得到F個(gè)匹配路徑組的差異程度中小于閾值Δ所對(duì)應(yīng)的V個(gè)匹配路徑組;
步驟3.9、利用式(2)得到盲節(jié)點(diǎn)的定位結(jié)果E:
式(2)中,Qv表示第v個(gè)匹配路徑組的差異程度;1≤v≤V;ev表示第v個(gè)匹配路徑組的中心點(diǎn),表示第v個(gè)匹配路徑組的中心點(diǎn)ev對(duì)中心點(diǎn)C的矢量偏移;
如圖5所示,假設(shè)設(shè)置差異程度閾值后得到三個(gè)匹配路徑組,且路徑點(diǎn)分別為且匹配路徑組的中心點(diǎn)分別e1、e2、e3,經(jīng)過(guò)相應(yīng)的差異程度權(quán)值進(jìn)行矢量偏移得到定位結(jié)果E,利用對(duì)差異程度設(shè)置閾值對(duì)數(shù)據(jù)進(jìn)行處理,在此基礎(chǔ)上進(jìn)行的基于差異程度加權(quán)的矢量偏移,能有效利用路徑點(diǎn)的冗余特征,獲得較高的定位精度。