林盈洪 楊意 鄭奮立 鐘嘉誠
摘 要:該文通過對比幾種常用室內(nèi)定位(In-location)方法,設(shè)計并實現(xiàn)了基于射頻和超聲波技術(shù)相結(jié)合的室內(nèi)二維定位系統(tǒng)。系統(tǒng)采用C51系列單片機為主控芯片,nRF24L01芯片作為射頻通訊芯片,結(jié)合超聲波發(fā)射與接收電路,融合射頻和超聲技術(shù)對二維平面上一點的位置信息進行獲取,并通過LCD12864進行測量結(jié)果的顯示。文章詳細的分析了系統(tǒng)的工作原理并進行了測量電路的設(shè)計,由實際測量的數(shù)據(jù)對結(jié)果進行誤差分析可知,測量數(shù)據(jù)誤差在2%以內(nèi)。
關(guān)鍵詞:射頻 超聲波 參考節(jié)點 室內(nèi)定位
中圖分類號:G642.0 文獻標(biāo)識碼:A 文章編號:1672-3791(2014)09(c)-0002-03
眾所周知,對于室外定位系統(tǒng),全球定位系統(tǒng)(GPS)[1]已經(jīng)應(yīng)用的成熟可靠,目前常用的車用導(dǎo)航、物流定位等大多數(shù)都利用的是此原理。但是對于室內(nèi)定位,例如機場大廳、礦井內(nèi)部、大型展廳內(nèi)部、大型室內(nèi)停車場以及大型購物商場,由于室內(nèi)環(huán)境復(fù)雜多變,建筑物的結(jié)構(gòu),內(nèi)部布局,以及人為因素等影響,所以實現(xiàn)精確定位的難度較大。目前諾基亞、谷歌、博通甚至一些知名大學(xué)比如美國杜克大學(xué)(Duke University)和芬蘭奧盧大學(xué)(University of Oulu)都有專門研究室內(nèi)定位的小組。美國研究機構(gòu)ABI稱:“室內(nèi)定位技術(shù)(In-location)是下一波熱門定位技術(shù),該技術(shù)將在2015年-2017年間得到大量部署和實施,是今后移動互聯(lián)網(wǎng)領(lǐng)域的一個關(guān)鍵環(huán)節(jié)。” 目前室內(nèi)定位常用的方法有紅外線室內(nèi)定位技術(shù)、超聲波定位技術(shù)、藍牙定位技術(shù)、射頻識別定位技術(shù)和超寬帶定位技術(shù)等。表1[2]分析了幾種常見無線定位系統(tǒng)的性能表,參照表1,該文設(shè)計了基于51單片機使用超聲波和無線射頻相結(jié)合進行室內(nèi)定位的測量系統(tǒng),可以有效結(jié)合兩種方法的優(yōu)點,設(shè)計思路清晰,成本較低。根據(jù)實際測量結(jié)果分析,系統(tǒng)采樣穩(wěn)定,數(shù)據(jù)誤差較小,具有一定的現(xiàn)實意義。
1 系統(tǒng)的設(shè)計思想及原理
由于射頻信號傳輸速率接近光速,遠高于超聲波傳播速率,因此可以利用射頻信號先激活待測節(jié)點,之后使其接收超聲波信號,利用時間差的方法進行測距。這種技術(shù)成本低,功耗小,精度高[3]。該文便是采用此種方法實現(xiàn)在二維平面內(nèi)對一待測節(jié)點位置信息的獲取。
1.1 系統(tǒng)設(shè)計原理
如圖1所示。在一個二維平面中,要確定某未知點的位置信息,其實質(zhì)便是求得其在平面坐標(biāo)中的坐標(biāo)值。由數(shù)學(xué)知識可以知道,確定平面上某一未知點(x,y)的坐標(biāo)值只需要知道該點到平面坐標(biāo)中已知的兩個參考點(x1,y1),(x2,y2)的距離d1及d2,再利用兩點間的距離公式(1)式,求解方程組即可求得未知點的坐標(biāo)信息。
(1)
系統(tǒng)的關(guān)鍵就是通過超聲波測出圖1中的距離d1及d2,現(xiàn)在假設(shè)系統(tǒng)某一節(jié)點A具備射頻發(fā)射模塊和超聲波發(fā)射電路,系統(tǒng)另一節(jié)點B具備射頻接收模塊及超聲波接收電路。A節(jié)點同時發(fā)射超聲波與射頻信號,即發(fā)射電磁波。由于電磁波的速度接近光速遠遠大于超聲波在介質(zhì)中的傳播速度,射頻信號傳播到節(jié)點B的時間忽略不計,當(dāng)節(jié)點B接收到射頻信號時,啟動計時,當(dāng)接收到超聲波信號時停止計時。時間間隔t即是超聲波由A傳播到B所用時間。設(shè)聲速為V,則A,B間距離為:。
1.2 系統(tǒng)整體設(shè)計
該文系統(tǒng)采用C51系列單片機作為控制芯片,nRF24L01作為射頻通信芯片,利用LCD12864液晶屏進行坐標(biāo)顯示。如圖2所示。系統(tǒng)主要包括三個節(jié)點,分別為1號總控制主節(jié)點,2號參考節(jié)點,以及3號待測節(jié)點。硬件設(shè)計上,各個節(jié)點都包括51單片機最小系統(tǒng)及上電指示電路,射頻收發(fā)模塊(nRF24L01)電路;另外總控制節(jié)點和參考節(jié)點具備超聲波接收電路,待測節(jié)點處安裝超聲波發(fā)射電路。
系統(tǒng)整體通信流程簡述如下:1號總控制主節(jié)發(fā)出射頻觸發(fā)信號,3號待測節(jié)點接收到射頻信號之后報警指示燈亮。同時發(fā)射出射頻同步信號及發(fā)射超聲波。射頻同步信號很快到達1號總控制節(jié)點及2號參考節(jié)點,兩個節(jié)點啟動計時器,待3號節(jié)點發(fā)射的超聲波分別到達1號節(jié)點和2號節(jié)點后,接收到超聲波信號,停止計時。分別獲得超聲波由3號節(jié)點到1號節(jié)點及2號節(jié)點的傳播時間。1號節(jié)點總控制節(jié)點計算出節(jié)點1,3距離。2號節(jié)點參考節(jié)點計算出節(jié)點2,3距離,再利用射頻模塊將數(shù)據(jù)無線傳送給1號總控制節(jié)點??偪刂乒?jié)點再依據(jù)兩個距離數(shù)據(jù),已知的節(jié)點1,2的坐標(biāo)計算出3號待測節(jié)點的位置坐標(biāo)。至此,完成系統(tǒng)一個單程通信,如此反復(fù)通信10次,求得位置坐標(biāo)平均值通過1號節(jié)點處的液晶顯示模塊LCD12864顯示待測節(jié)點位置信息。所有的通信流程由1號總控制節(jié)點控制。
2 系統(tǒng)電路設(shè)計
2.1 硬件設(shè)計
硬件設(shè)計上,文中系統(tǒng)主要涉及單片機小系統(tǒng),射頻收發(fā)電路,超聲波發(fā)射與接收電路,LCD顯示電路,射頻收發(fā)模塊供電電路。這里主要介紹系統(tǒng)的射頻收發(fā)電路,超聲波發(fā)射與接收電路。
系統(tǒng)無線通信模塊的發(fā)射與接收主要采用nRF24L01芯片作為主控核心。nRF 24L01是一款新型單片射頻收發(fā)器件,工作于2.4~2.5 GHz ISM頻段。內(nèi)置頻率合成器、功率放大器、晶體振蕩器、調(diào)制器等功能模塊,并融合了增強型ShockBurst技術(shù),其中輸出功率和通信頻道可通過程序進行配置[4]。由于采用SOC方法設(shè)計因此只需要少量外圍元件便可組成射頻收發(fā)電路,再配合簡單的通信協(xié)議,就可以實現(xiàn)無線數(shù)據(jù)傳輸[5]。將nRF24L01相應(yīng)的控制引腳連接到單片機的P1口上,利用串行通信方式與單片機進行通訊,可以設(shè)置為增強型模式(ShockBurst)下的接收或是發(fā)射狀態(tài),啟動自動應(yīng)答及自動重發(fā)功能。采用nRF24L01增強型模式時內(nèi)部芯片堆棧區(qū)先入先出,數(shù)據(jù)可從低速微控制器送入,高速發(fā)射出去,地址和校驗碼由硬件自動添加和去除[6],可以提高系統(tǒng)整體的性能和效率[7]。
系統(tǒng)超聲波發(fā)射電路框圖如圖3所示。系統(tǒng)利用定時器由單片機的I/O端口輸出40 kHz左右的方波脈沖信號,信號送給推挽式功放電路進行功率放大,用以驅(qū)動型號為TCT40-16T的超聲波換能器,發(fā)射出超聲波信號。
系統(tǒng)超聲波接收電路框圖如圖4所示。接收電路的核心是紅外線檢波接收專用芯片CX20106。由于紅外遙控常用的載波頻率38 kHz與測距的超聲波頻率40 kHz比較接近,可通過外接電阻微調(diào)芯片內(nèi)部濾波器的中心頻率。當(dāng)超聲波探頭未接收到40 kHz信號時,芯片信號輸出引腳為高電平;當(dāng)接收到與CX20106中心頻率(40 kHz)相符的超聲波信號時,信號輸出引腳輸出下降沿脈沖,將此信號連接到單片機外部中斷引腳上,可觸發(fā)中斷,從而停止超聲波傳播計時。
2.2 軟件設(shè)計
系統(tǒng)軟件設(shè)計流程圖可以參考圖2。系統(tǒng)軟件按功能劃分可以分為LCD顯示,超聲波發(fā)射,射頻通訊,坐標(biāo)計算幾大部分。其中,LCD顯示部分主要是通過時序?qū)σ壕吝M行相應(yīng)的讀寫操作,超聲波發(fā)射部分采用定時器中斷產(chǎn)生40 K方波信號,坐標(biāo)位置計算算法依據(jù)的公式(1)進行計算。下文主要針對射頻通訊部分所進行的軟件配置進行簡述說明。
在圖2的“3射頻同步信號&超聲波信號”過程中,系統(tǒng)各節(jié)點射頻收發(fā)配置如圖5所示。由于nRF24L01在每個通訊頻道上具有6個不同的數(shù)據(jù)通道,因此在設(shè)計上,3號節(jié)點與1號節(jié)點通過數(shù)據(jù)通道0傳輸信號,與2號節(jié)點通過數(shù)據(jù)通道1傳輸信號。3號節(jié)點發(fā)出具有發(fā)送地址編碼的射頻信號被1,2號節(jié)點接收后,1,2號節(jié)點分別啟動定時器計時并通過各自的數(shù)據(jù)通道返回應(yīng)答信號給3號節(jié)點,表示通訊成功3號節(jié)點可以發(fā)出超聲波信號。值得注意的是,3號節(jié)點若是啟動自動重發(fā)功能,則每次重發(fā)等待時間為250 us,這將導(dǎo)致系統(tǒng)測量誤差過大,因此該系統(tǒng)禁止自動重發(fā),而是由軟件編程重發(fā)3次,判斷是否次數(shù)溢出或是接收到應(yīng)答信號,這樣可以將每次重發(fā)產(chǎn)生的誤差控制在15 us左右。同時,圖2在“1發(fā)出射頻觸發(fā)信號”及“4傳輸距離數(shù)據(jù)”兩個過程中,射頻通信均采用數(shù)據(jù)通道0進行數(shù)據(jù)通信,并且開啟相應(yīng)的自動重發(fā)功能2次,經(jīng)測試系統(tǒng)射頻通訊流程性能穩(wěn)定。
3 實測數(shù)據(jù)分析
系統(tǒng)測試實驗環(huán)境為室內(nèi)地面,其中主控制節(jié)點(1號節(jié)點)坐標(biāo)安裝在原點(0,0)上,參考節(jié)點(2號節(jié)點)坐標(biāo)安裝在y軸點(0,100)上,單位為cm。測量工具為卷尺,精度精確達0.1 cm。對于測試平面上10個不同位置點分別測量10次,得到100個數(shù)據(jù),結(jié)果見表2。
通過分析圖中數(shù)據(jù),可以得出以下實驗結(jié)論。
(1)定位范圍。
經(jīng)過測試表明,該系統(tǒng)基本可以實現(xiàn)對于在地面上200 cm×200 cm的二維直角坐標(biāo)系中移動節(jié)點的定位。
(2)系統(tǒng)的平均定位誤差。
X軸的平均定位誤差為3.01(cm)
Y軸的平均定位誤差為3.14(cm)
(3)系統(tǒng)的平均定位精度。
X軸平均定位精度:(200.0-3.01)/200.0×100%=98.50%
Y軸平均定位精度:(200.0-3.14)/200.0×100%=98.43%
(4)誤差分析。
通過實驗測得數(shù)據(jù)并分析,系統(tǒng)測量誤差主要來自以下幾個方面:
①超聲波信號的衰減問題。從表1及表2可以看到,雖然系統(tǒng)測量平均誤差不算太高,但是針對不同的測量區(qū)域其測量誤差明顯不同,隨著各節(jié)點之間距離的不同,超聲波信號的衰減程度會不同導(dǎo)致接收到超聲波信號的時間點不同,引入測量誤差。
②超聲波發(fā)射角問題。從表中數(shù)據(jù)可以看出,在區(qū)域邊緣地帶數(shù)據(jù)的測量誤差偏高,由于超聲波存在發(fā)射角度局限問題,導(dǎo)致超聲波信號接收時間點不同引入測量誤差。
③系統(tǒng)軟件設(shè)計時,在3號節(jié)點發(fā)射同步射頻信號和超聲波過程中,禁止自動重發(fā)次數(shù)而采用軟件編程發(fā)送次數(shù)溢出的方法在每次重發(fā)數(shù)據(jù)過程中需要等待15 us,總共軟件設(shè)計為重發(fā)3次溢出,所以此處可能會引入50us左右的測量誤差。
④數(shù)據(jù)算法計算。系統(tǒng)數(shù)值計算的精度也會引入測量誤差。綜合考慮系統(tǒng)測量要求,51系列單片機的運算能力及速度,以及軟件整體的效率和整潔度。該次系統(tǒng)軟件計算精度都采用16位無符號位整數(shù)數(shù)據(jù)類型,而未引入浮點數(shù)據(jù)類型計算,所以對最終顯示結(jié)果會造成測量誤差。
⑤溫度引起誤差。聲速隨溫度變化關(guān)系可以表示為:V=(331.45+0.61t/℃)m·s-1。但是該系統(tǒng)中沒有考慮溫度補償,而是以聲速標(biāo)準(zhǔn)值340 m/s進行數(shù)據(jù)計算,因此會引入一定測量誤差。
4 結(jié)語
該文設(shè)計了基于射頻和超聲波技術(shù)的室內(nèi)二維定位系統(tǒng),并通過設(shè)計得系統(tǒng)進行實際數(shù)據(jù)的測量,分析實驗數(shù)據(jù)可以得出系統(tǒng)的誤差較小。對于存在的誤差提出了可能產(chǎn)生的原因以及后續(xù)的解決方法,期望通過后續(xù)的改進可以使實驗誤差進一步減少,測量范圍也相應(yīng)的增大。
參考文獻
[1] 許國昌.GPS理論、算法和應(yīng)用[M].北京:清華大學(xué)出版社,2011:2-5.
[2] 張凡,陳典鋮,楊杰.室內(nèi)定位技術(shù)及系統(tǒng)比較研究[J].廣東通信技術(shù),2012(11):73-79.
[3] 汪苑,林錦國.幾種常用室內(nèi)定位技術(shù)的探討[J].中國儀器儀表,2011(2):54-57.
[4] 趙軒,馬建,曹仁磊.基于nRF24L01的無線式模型車運動狀態(tài)監(jiān)控系統(tǒng)[J]. 科技導(dǎo)報,2010,28(2):63-66.
[5] 江武志,許娜芬,普清民.基于nRF24 L01的小車自動識別紅綠燈的設(shè)計[J].研究與開發(fā),2011(10):82-84.
[6] 劉志平,趙國良.基于nRF24L01的近距離無線數(shù)據(jù)傳輸[J].應(yīng)用科技,2008(3): 55-58.
[7] 陳麗娟,常丹華.基于nRF2401芯片的無線數(shù)據(jù)通信[J].電子器件,2006(12):48-250.