文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.180466
中文引用格式: 高金輝,,劉宏杰,,吳雪冰. 基于RSSI的差分定位模型在糧庫測溫中的應(yīng)用[J].電子技術(shù)應(yīng)用,2018,,44(5):9-12.
英文引用格式: Gao Jinhui,,Liu Hongjie,Wu Xuebing. Application of RSSI-based differential location model of temperature mea-
surement in grain depot[J]. Application of Electronic Technique,,2018,,44(5):9-12.
0 引言
糧食安全問題是國家長遠(yuǎn)發(fā)展戰(zhàn)略,而糧食儲(chǔ)存是糧食安全的關(guān)鍵因素之一,。安全儲(chǔ)糧主要通過監(jiān)測糧庫內(nèi)部糧堆的溫度和濕度,,當(dāng)監(jiān)測到某區(qū)域溫度升高時(shí)采取相應(yīng)降低措施[1-2]。目前糧庫測溫設(shè)備在每次糧食入庫后人工手動(dòng)編號(hào)來識(shí)別位置,,需要大量人力,、物力,且可靠性較低,。
近些年隨著無線傳感器網(wǎng)絡(luò)技術(shù)的快速發(fā)展,,越來越多的研究者開始關(guān)注室內(nèi)定位的研究。室內(nèi)定位主要分為兩類,,一類為基于測距的定位模型:例如到達(dá)時(shí)間,,到達(dá)時(shí)間差,到達(dá)角度,,RSSI等;另一類為非測距定位模型,,例如DV-Hop,質(zhì)心算法等模型[3-6],。其中測距定位模型的定位精度要高于非測距定位模型,在測距定位模型中除RSSI外大多數(shù)測距定位模型都需要額外的硬件,。
根據(jù)糧庫測溫節(jié)點(diǎn)的低功耗、低成本和高定位精度的要求,,本文采用RSSI的定位模型,。在無線傳感網(wǎng)絡(luò)硬件基礎(chǔ)上,對(duì)RSSI的距離衰減曲線分析,,通過動(dòng)態(tài)信標(biāo)節(jié)點(diǎn)來提高測距模型的精度,,采用差分定位模型降低環(huán)境誤差。通過對(duì)比實(shí)驗(yàn)驗(yàn)證了在實(shí)驗(yàn)環(huán)境下差分定位算法僅需一個(gè)輔助信標(biāo)節(jié)點(diǎn)就可以達(dá)到傳統(tǒng)測距定位模型在13個(gè)信標(biāo)節(jié)點(diǎn)時(shí)的精度[7],。
1 糧庫無線測溫節(jié)點(diǎn)設(shè)計(jì)
糧庫滿倉時(shí)糧食的厚度為5~7 m,,在糧食上平面每隔4~5 m等間距放置節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)采集上下4個(gè)位置的溫度,。本文采用CC1101微功耗無線收發(fā)模塊,,在通信過程中直接讀取RSSI值。測溫采用DS18b20單總線數(shù)字溫度傳感器,,每個(gè)節(jié)點(diǎn)配置4個(gè)DS18b20,,上下等間距分布。所有測溫節(jié)點(diǎn)采用鋰電池供電,,可獨(dú)立移動(dòng),,相互替換,。
2 算法模型
2.1 無線電傳播路徑損耗模型
基于RSSI測距的模型主要通過發(fā)射和接收信號(hào)強(qiáng)度來計(jì)算信號(hào)傳播損耗而定位,,信號(hào)傳波損耗值在相同傳播環(huán)境下隨傳播距離增大而增大,,通過信號(hào)傳播路徑損耗模型可以將信號(hào)傳播損耗值轉(zhuǎn)換成距離值。RSSI衰減模型通常采用的常態(tài)分布模型:
從式(5)可知,,RSSI值與A,、n、d和Xδ有關(guān),,其中A和n受環(huán)境因素影響較大,,傳統(tǒng)方法采用固定A和n來建立求距離d的模型的方式與實(shí)際環(huán)境不符合,因此造成的距離模型誤差較大,,同時(shí)受高斯隨機(jī)誤差Xδ的干擾,。為了減少以上因素帶來的誤差,對(duì)得到的RSSI值進(jìn)行卡爾曼濾波,,然后采用差分定位的方式減少環(huán)境因素的干擾,,得到目標(biāo)節(jié)點(diǎn)的精確位置。
2.2 RSSI的處理
RSSI是接收信號(hào)強(qiáng)度指示根據(jù)無線電在自由空間中傳播的路徑損耗而建立的模型,,其值大小與電波傳播距離成反比,。本文實(shí)驗(yàn)節(jié)點(diǎn)采用TI公司的CC1101微功耗模塊搭建,從模塊內(nèi)部寄存器可直接讀取通信過程中的rssidev值,,其取值范圍是0-255,,從參考文獻(xiàn)[8]可知rssidbm與rssidev有如下關(guān)系:
其中rssidev為CC1101內(nèi)部寄存器讀取的16進(jìn)制數(shù),rssidbm為轉(zhuǎn)換后的十進(jìn)制信號(hào)接收強(qiáng)度值,,rssioff取值為74,。為了方便模型的建立及求解,將rssidbm做以下處理:
通過以上處理得到RSSI值,,其取值范圍是0-255具有比RSSI更高的分辨率,。
2.3 差分定位模型
由于RSSI值受到環(huán)境的溫度、濕度,、多徑效應(yīng)等因素影響,,因此即很難建立一個(gè)適用于所有情況下的基于RSSI測距定位模型。根據(jù)糧庫測溫節(jié)點(diǎn)布置的情況,,本文在傳統(tǒng)測距定位模型的基礎(chǔ)上,,提出一種基于RSSI的差分定位模型。
如圖1所示,,糧庫內(nèi)測溫節(jié)點(diǎn)按照等間距排列,,且糧庫測控分機(jī)和輔助信標(biāo)節(jié)點(diǎn)的位置已知,分別作為信標(biāo)節(jié)點(diǎn)S1和S2,,只需要依次確定出距離信標(biāo)節(jié)點(diǎn)最近的位置節(jié)點(diǎn),,令其作為新的信標(biāo)節(jié)點(diǎn),依次循環(huán)下去即可確定出糧庫內(nèi)所有測溫節(jié)點(diǎn)的位置坐標(biāo),。
假設(shè)節(jié)點(diǎn)2和節(jié)點(diǎn)4距信標(biāo)節(jié)點(diǎn)S1的距離分別為d1和d2,,根據(jù)式(1)可得:
對(duì)比式(5)和式(10)可知節(jié)點(diǎn)2和節(jié)點(diǎn)4與信標(biāo)節(jié)點(diǎn)S1間RSSI值之差僅與它們的距離d1,、d2和n有關(guān),而處于同一時(shí)刻環(huán)境下的n可認(rèn)為某一定值,,因此采用RSSI差分定位算法可以有效抑制式(5)中Xδ的干擾,。
由式(10),根據(jù)?駐RSSI的大小可以得知d1和d2的相對(duì)大小,。同理信標(biāo)節(jié)點(diǎn)可以通過與所有未知節(jié)點(diǎn)間的RSSI值的比較,,搜索到距離自己最近的未知節(jié)點(diǎn)。它們不依賴于傳統(tǒng)的測距方法,,同時(shí)能夠適應(yīng)各種變化的定位環(huán)境,。
如圖1所示節(jié)點(diǎn)1~節(jié)點(diǎn)9被等間距布置在糧庫中,糧庫測控分機(jī)和輔助信標(biāo)節(jié)點(diǎn)被布置在已知的位置,,本文提出的差分定位模型及動(dòng)態(tài)信標(biāo)節(jié)點(diǎn)選取方案如下:
(1)選取已知位置的糧庫測控分機(jī)和輔助信標(biāo)節(jié)點(diǎn)作為動(dòng)態(tài)信標(biāo)節(jié)點(diǎn)S1和S2,。通過式(10)分別搜索與S1,S2距離最近的未知節(jié)點(diǎn),,即RSSI值最大的節(jié)點(diǎn),。因?yàn)楣?jié)點(diǎn)1與S1通信時(shí)RSSI值最大,節(jié)點(diǎn)3與S2通信時(shí)RSSI值最大,,因此節(jié)點(diǎn)1和節(jié)點(diǎn)3的位置可以被確定,。
(2)令節(jié)點(diǎn)1和節(jié)點(diǎn)3分別作為信標(biāo)節(jié)點(diǎn)S1和S2,在未知節(jié)點(diǎn)中分別搜索距離它們最近的節(jié)點(diǎn),。
(3)搜索結(jié)果中距離S1最近的節(jié)點(diǎn)有節(jié)點(diǎn)2和節(jié)點(diǎn)4,,距離S2最近的節(jié)點(diǎn)有節(jié)點(diǎn)2和節(jié)點(diǎn)3。比較后發(fā)現(xiàn)節(jié)點(diǎn)2距離S1和S2距離相等,,可以確定出節(jié)點(diǎn)2在S1和S2的中點(diǎn),,進(jìn)而確定x軸方向排列有3個(gè)測溫節(jié)點(diǎn),則節(jié)點(diǎn)2的位置可以確定,。進(jìn)而節(jié)點(diǎn)4和節(jié)點(diǎn)6的位置也被確定,,并將它們確定為新的信標(biāo)節(jié)點(diǎn)S1和S2。
(4)循環(huán)以上步驟2和3的直至所有節(jié)點(diǎn)定位完成,。
3 實(shí)驗(yàn)驗(yàn)證與分析
實(shí)驗(yàn)采用TI公司的CC1101芯片在433 MHz開放頻段測試,,通過該芯片內(nèi)部自帶8位的RSSI寄存器獲取RSSI值。為了降低通信信道受空間電波干擾而影響測試數(shù)據(jù),,通過凈信道評(píng)估機(jī)制,,確保每次測試前信道處于空閑狀態(tài)。
如圖2為本實(shí)驗(yàn)用的測溫節(jié)點(diǎn),,硬件采用CC1101通信模塊和STM8L101單片機(jī)及18650鋰電池供電,。
3.1 數(shù)據(jù)處理
實(shí)驗(yàn)選擇每隔0.5 m測一組RSSI數(shù)據(jù),其中每組測100次數(shù)值,對(duì)每組采集到的數(shù)據(jù)進(jìn)行處理,,通常處理的方法有均值法和次大值法,。
為了選擇更加適合RSSI值處理方法,分別采用均值法,、次大值法和最小二乘法3次擬合值得到圖3曲線。
由圖3明顯可知次大值法比均值法的衰減曲線波動(dòng)更小,,而且和最小二乘法擬合得到曲線更加吻合,。因此本文采用次大值法,對(duì)每組100個(gè)數(shù)據(jù)進(jìn)行排序取次大值作為該組測試結(jié)果,。
為進(jìn)一步降低隨機(jī)誤差,,對(duì)次大值法得到的結(jié)果進(jìn)行卡爾曼濾波,實(shí)驗(yàn)結(jié)果如圖4所示,。通過圖4可知經(jīng)過卡爾曼濾波后的衰減曲線更加平滑,,更趨近于擬合值。為了衡量卡爾曼濾波效果,,通常采用均方誤差(Mean-Square Error,,MSE)來衡量。
卡爾曼濾波前:MSE=9.7109
卡爾曼濾波后:MSE=3.6797
通過MSE計(jì)算結(jié)果可知,,卡爾曼濾波前的MSE值大于卡爾曼濾波后的值,,因此可以證明卡爾曼濾波明顯提高了RSSI值的可信度。
通過觀察圖4的RSSI距離衰減曲線可知,,通信距離越近信號(hào)衰減越大,,其中在0~10 m的范圍內(nèi)通信距離占總測試距離的50%,但是信號(hào)衰減值占總測試衰減值的80%,,由此可得出結(jié)論,,信標(biāo)節(jié)點(diǎn)距離被定位節(jié)點(diǎn)越近其定位精度越高。為提高定位精度采用動(dòng)態(tài)信標(biāo)節(jié)點(diǎn),,盡量選取距離被定位節(jié)點(diǎn)最近的節(jié)點(diǎn)作為信標(biāo)節(jié)點(diǎn),,本文差分定位的模型中采用動(dòng)態(tài)信標(biāo)節(jié)點(diǎn)方案即選取距離待定位節(jié)點(diǎn)最近的已知節(jié)點(diǎn)作為信標(biāo)節(jié)點(diǎn)提高定位精度。
3.2 差分定位實(shí)驗(yàn)
如圖1在一個(gè)16 m×16 m的糧庫內(nèi)布置9個(gè)測溫節(jié)點(diǎn),,糧庫測控分機(jī)和輔助信標(biāo)節(jié)點(diǎn),,將糧庫測控分機(jī)所在位置定義為坐標(biāo)原點(diǎn),通過2.3節(jié)提出的差分定位模型進(jìn)行定位,。
差分定位模型通過比較不同未知節(jié)點(diǎn)與信標(biāo)節(jié)點(diǎn)間通信時(shí)RSSI值的相對(duì)大小計(jì)算它們與信標(biāo)節(jié)點(diǎn)間的相對(duì)距離大小,,從而避免了將RSSI值轉(zhuǎn)換為距離時(shí)帶來的較大誤差。由表1差分定位模型測試結(jié)果可以得出結(jié)論:(1)差分定位方案采用已知位置的節(jié)點(diǎn)輪流作為信標(biāo)節(jié)點(diǎn),,保證在10 m內(nèi)的通信距離,,為定位精度提升提供了保障;(2)差分定位模型在定位過程中不需要人工干預(yù),且精度不依賴于布置的信標(biāo)節(jié),。
3.3 差分定位與傳統(tǒng)測距定位結(jié)果對(duì)比
在3.2節(jié)的實(shí)驗(yàn)環(huán)境下采用傳統(tǒng)測距定位方式,,研究所布置信標(biāo)節(jié)點(diǎn)個(gè)數(shù)對(duì)定位精度的影響。糧庫測溫節(jié)點(diǎn)是等間距分布,,因此傳統(tǒng)測距定位模型的定位結(jié)果只要落在以被測節(jié)點(diǎn)實(shí)際坐標(biāo)為中心半徑為1 m的范圍內(nèi)即認(rèn)為定位準(zhǔn)確,。表2為布置信標(biāo)節(jié)點(diǎn)個(gè)數(shù)與節(jié)點(diǎn)定位結(jié)果錯(cuò)誤個(gè)數(shù)的統(tǒng)計(jì)情況。
由表2數(shù)據(jù)對(duì)比可知,,在相同環(huán)境下,,傳統(tǒng)測距定位模型精度隨著信標(biāo)節(jié)點(diǎn)個(gè)數(shù)增加而提高,當(dāng)信標(biāo)節(jié)點(diǎn)個(gè)數(shù)大于13個(gè)之后節(jié)點(diǎn)定位錯(cuò)誤率降低為0,。差分定位模型僅需要一個(gè)輔助定位節(jié)點(diǎn)和糧庫測控分機(jī),,在定位的過程中自動(dòng)采用距離被定位節(jié)點(diǎn)最近的已知位置的節(jié)點(diǎn)作為信標(biāo)節(jié)點(diǎn),最終節(jié)點(diǎn)定位錯(cuò)誤率為0,。
4 結(jié)論
為解決糧庫測溫節(jié)點(diǎn)定位問題,,提出了基于RSSI的糧庫測溫節(jié)點(diǎn)差分定位算法,通過對(duì)比選取對(duì)數(shù)據(jù)處理的效果更好次大值法,,為降低高斯誤差的干擾采用卡爾曼濾波對(duì)數(shù)據(jù)進(jìn)行處理,,最后采用RSSI差分的方法降低環(huán)境的干擾,通過實(shí)驗(yàn)證明差分定位算法的有效性,,在不增加大量信標(biāo)節(jié)點(diǎn)的前提下采用動(dòng)態(tài)信標(biāo)節(jié)點(diǎn)的方案解決了糧庫測溫等各種等間距分布的無線節(jié)點(diǎn)的定位問題,。
參考文獻(xiàn)
[1] 蘭波,喬長福,,程人俊,,等.基于無線傳感器網(wǎng)絡(luò)的糧庫溫度監(jiān)測節(jié)點(diǎn)設(shè)計(jì)[J].糧食儲(chǔ)藏,2016,,45(4):16-18,,42.
[2] 李建勇,李洋,,劉雪梅.基于ZigBee的糧庫環(huán)境監(jiān)控系統(tǒng)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,,2016,42(1):65-67.
[3] 黃海輝,,李龍連.WSN中一種基于RSSI的移動(dòng)節(jié)點(diǎn)改進(jìn)定位算法[J].電子技術(shù)應(yīng)用,,2015,41(1):86-89.
[4] ADAPTATION P.RSSI-based distributed self-localization for wireless sensor networks used in precision agriculture[J].IEEE Transactions on Wireless Communications,,2016,,15(10):6638-6650.
[5] SANTANA J A,MACAAS E,,SUAREZ A,,et al.Adaptive estimation of WiFi RSSI and its impact over advanced wireless services[J].Mobile Networks & Applications,,2017,22(6):1100-1112.
[6] 裴凌,,劉東輝,,錢久超.室內(nèi)定位技術(shù)與應(yīng)用綜述[J].導(dǎo)航定位與授時(shí),2017,,4(3):1-10.
[7] 花超,,吉小軍,蔡萍,,等.基于RSSI差分修正的加權(quán)質(zhì)心定位算法[J].傳感器與微系統(tǒng),,2012,31(5):139-141.
[8] Texas Instruments.CC1101 Datasheet [EB/OL].(2007-04-16)[2018-01-30]. http://www.ti.com.
作者信息:
高金輝,,劉宏杰,,吳雪冰
(河南師范大學(xué) 電子與電氣工程學(xué)院,,河南 新鄉(xiāng)453007)