吳劍鋒,李建清,王佚楠,于忠洲,毛志鵬
(東南大學(xué)儀器科學(xué)與工程學(xué)院,江蘇南京 210096)
傳感器網(wǎng)絡(luò)通??煞譃闊o(wú)線(xiàn)傳感器網(wǎng)絡(luò)(WSNs)和有線(xiàn)傳感器網(wǎng)絡(luò)[1~3]?,F(xiàn)有的總線(xiàn)型有線(xiàn)傳感器網(wǎng)絡(luò)如熱能抄表系統(tǒng)所采用的由歐盟開(kāi)發(fā)的MBUS總線(xiàn)系統(tǒng),應(yīng)用于遠(yuǎn)程傳感傳輸?shù)腍ART總線(xiàn)系統(tǒng)和MAXIM(美信)公司開(kāi)發(fā)的單總線(xiàn)傳感器網(wǎng)絡(luò)系統(tǒng)[4]等,具有超低功耗特點(diǎn),可對(duì)幾百米范圍內(nèi)的幾百個(gè)節(jié)點(diǎn)進(jìn)行低速遠(yuǎn)程通信和集中供電。單一傳感器節(jié)點(diǎn)只能收集處于其所處位置的傳感信息,而分布式的有線(xiàn)傳感器網(wǎng)絡(luò)、WSNs可以獲取分布在一定區(qū)域內(nèi)的信息,結(jié)合各個(gè)信息所對(duì)應(yīng)的位置可以推導(dǎo)出未分布傳感器位置的信息,因此,獲得各個(gè)傳感器節(jié)點(diǎn)的位置信息對(duì)節(jié)點(diǎn)間通信、基于傳感器的測(cè)量和計(jì)算非常重要。定位技術(shù)可用于估計(jì)傳感器節(jié)點(diǎn)的位置、一定范圍內(nèi)的移動(dòng)目標(biāo)跟蹤和定位。前人較多的WSNs定位技術(shù)研究已可實(shí)現(xiàn)WSNs節(jié)點(diǎn)間相對(duì)位置的確定;目前有線(xiàn)傳感器網(wǎng)絡(luò)定位技術(shù)的研究較少[5],相關(guān)測(cè)距技術(shù)的研究將使得有線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)間相對(duì)位置被確定成為可能。
本文針對(duì)二線(xiàn)制總線(xiàn)型有線(xiàn)傳感器網(wǎng)絡(luò),依據(jù)時(shí)域脈沖反射原理,對(duì)串聯(lián)在總線(xiàn)上的主機(jī)與多個(gè)傳感器節(jié)點(diǎn)間距離進(jìn)行了測(cè)定,為有線(xiàn)傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)定位提供了解決方法。
二線(xiàn)制總線(xiàn)型有線(xiàn)傳感器網(wǎng)絡(luò)系統(tǒng)通常由一個(gè)傳感主機(jī)和若干傳感器節(jié)點(diǎn)構(gòu)成。為保證系統(tǒng)通信性能,通常要求通信主機(jī)和傳感器節(jié)點(diǎn)間按手拉手方式連接,傳感測(cè)距主機(jī)與若干傳感器節(jié)點(diǎn)順序分布于總線(xiàn),如圖1所示。
圖1 總線(xiàn)型有線(xiàn)傳感器網(wǎng)絡(luò)Fig 1 Bus wired sensor networks
傳感測(cè)距主機(jī)以現(xiàn)場(chǎng)門(mén)級(jí)可控陣列EP3C10系列FPGA芯片為核心,外圍包括發(fā)射驅(qū)動(dòng)電路、高速比較器電路、信號(hào)調(diào)理電路、收發(fā)接口、通信接口和人機(jī)接口(圖2)。傳感測(cè)距主機(jī)通過(guò)通信接口可與遠(yuǎn)程計(jì)算機(jī)通信,通過(guò)人機(jī)接口可設(shè)定和調(diào)整相關(guān)控制參數(shù),通過(guò)收發(fā)接口與雙絞通信總線(xiàn)相連。傳感測(cè)距主機(jī)的FPGA芯片外接50 MHz有源晶振,因測(cè)距精度與計(jì)數(shù)頻率直接相關(guān),為保證測(cè)距精度,采用FPGA內(nèi)部鎖相環(huán)將50 MHz提高用于測(cè)距計(jì)數(shù)。因節(jié)點(diǎn)測(cè)距方法中的反射波為負(fù)電平波,需給高速比較器提供一個(gè)負(fù)參考電壓。
圖2 傳感測(cè)距主機(jī)Fig 2 Host with sensing and ranging function
傳感器節(jié)點(diǎn)由主控制器模塊和電源模塊組成。傳感器節(jié)點(diǎn)如圖3(a)所示,主控制器模塊連接于二線(xiàn)制總線(xiàn)之間,能夠響應(yīng)主機(jī)測(cè)距命令,控制主控制器內(nèi)部電子開(kāi)關(guān)的開(kāi)啟和閉合,使該傳感器節(jié)點(diǎn)處的總線(xiàn)短接阻抗失配,以配合主機(jī)的時(shí)域脈沖反射。
主控制器模塊由微處理器和可程控的電子開(kāi)關(guān)組成。微處理器用來(lái)接收和處理主機(jī)命令,如果接收到的命令是要求與本傳感器節(jié)點(diǎn)進(jìn)行通信時(shí),便立即做出相應(yīng)的應(yīng)答,響應(yīng)主機(jī)發(fā)送的命令。電子開(kāi)關(guān)是可程控的,可根據(jù)命令閉合開(kāi)關(guān),并能在一段時(shí)間后恢復(fù)斷開(kāi)。
對(duì)于已經(jīng)成型的普通傳感器節(jié)點(diǎn),其內(nèi)部不包括可程控的電子開(kāi)關(guān)模塊,可以通過(guò)增加可單獨(dú)控制的電子開(kāi)關(guān)模塊,如圖3(b)所示,只需改變相應(yīng)的軟件設(shè)置,也可實(shí)現(xiàn)所述的在線(xiàn)傳感測(cè)距方法。
圖3 傳感器節(jié)點(diǎn)Fig 3 Sensor node
根據(jù)傳輸線(xiàn)理論[6],一條均勻、質(zhì)量完好的電纜在每個(gè)點(diǎn)處的特性阻抗是相等的,當(dāng)電磁波在處處阻抗特性匹配的無(wú)限長(zhǎng)傳輸電纜傳播時(shí),電磁波會(huì)沿電纜一直傳輸下去,直到被電纜的特性阻抗完全吸收為止。在電磁波發(fā)射端不會(huì)發(fā)生反射現(xiàn)象,也不會(huì)有反射波出現(xiàn)。而當(dāng)傳輸線(xiàn)發(fā)生短路、斷路或其他原因故障導(dǎo)致傳輸線(xiàn)阻抗失配時(shí),電磁波會(huì)在該阻抗失配點(diǎn)發(fā)生反射。那么,在傳感器節(jié)點(diǎn)與總線(xiàn)連接處,人為有序地控制的傳輸線(xiàn)阻抗失配點(diǎn)產(chǎn)生和移除,就可利用電纜時(shí)域脈沖反射原理[7]測(cè)定傳感器節(jié)點(diǎn)到傳感主機(jī)的距離。
傳感器節(jié)點(diǎn)響應(yīng)主機(jī)端的測(cè)距命令并控制其電子開(kāi)關(guān)電路短路,造成在電子開(kāi)關(guān)連接總線(xiàn)處產(chǎn)生短路阻抗不匹配,其特征阻抗趨于0。此時(shí),傳感測(cè)距主機(jī)發(fā)一個(gè)高速脈沖,該脈沖沿總線(xiàn)電纜進(jìn)行傳輸。由于總線(xiàn)電纜短路阻抗失配,高速脈沖在該處發(fā)生反射如圖4(a),依據(jù)傳輸線(xiàn)理論反射信號(hào)電壓與發(fā)射信號(hào)電壓極性相反,幅度與失配系數(shù)相關(guān);反射信號(hào)電流與入射信號(hào)電流極性相同,幅度與失配系數(shù)相關(guān)[7]。該反射波沿原路返回,傳遞到測(cè)距主機(jī)接收電路被檢測(cè)。主機(jī)接收到的脈沖回波,先經(jīng)過(guò)高速比較器,然后將信號(hào)取反,再將取反后的信號(hào)與發(fā)射信號(hào)進(jìn)行異或處理,異或后的信號(hào)如圖4(b)作為輸入D觸發(fā)器,D觸發(fā)器的輸出持續(xù)高電平作為高速計(jì)數(shù)器的使能信號(hào)如圖4(c),由高速計(jì)數(shù)器測(cè)得發(fā)射脈沖和返回脈沖的時(shí)間間隔如圖4(d),從而計(jì)算短路點(diǎn)位置,即計(jì)算出傳感器節(jié)點(diǎn)的位置。參考電磁波在不同介質(zhì)中的傳播速度v,傳感測(cè)距主機(jī)測(cè)得高速脈沖在該傳輸電纜往返時(shí)間t,利用式(1)計(jì)算出阻抗失配點(diǎn)到主機(jī)的距離進(jìn)而確定相應(yīng)傳感器節(jié)點(diǎn)的位置
圖4 短路回波信號(hào)示意圖Fig 4 Short-circuit diagram of the echo signal
傳感測(cè)距主機(jī)和傳感器節(jié)點(diǎn)間采用串行碼流方式進(jìn)行低速數(shù)據(jù)通信,通信協(xié)議參照Dallas公司的單總線(xiàn)協(xié)議[4],每條命令字節(jié)包括8位數(shù)據(jù)位。保持?jǐn)?shù)據(jù)線(xiàn)480~960 μs低電平表示命令開(kāi)始,保持?jǐn)?shù)據(jù)線(xiàn)60~120 μs的低電平表示邏輯0,保持?jǐn)?shù)據(jù)線(xiàn)1~3 μs的低電平加后續(xù)60 μs高電平表示邏輯1。
數(shù)據(jù)通信時(shí)主機(jī)保持總線(xiàn)弱上拉,主機(jī)向總線(xiàn)寫(xiě)完8位的ID值后發(fā)出8位數(shù)據(jù)命令和校驗(yàn)字節(jié),傳感器節(jié)點(diǎn)將采樣到的8位ID值與該傳感器節(jié)點(diǎn)本身的ID值進(jìn)行比較,如果相同,則執(zhí)行后繼命令動(dòng)作,如果不同,則放棄此次通信等待主機(jī)再次發(fā)送初始化時(shí)序。主機(jī)發(fā)送完測(cè)距命令后進(jìn)入測(cè)距功能。傳感器節(jié)點(diǎn)接收到測(cè)距命令后將電子開(kāi)關(guān)短路并保持40 μs??偩€(xiàn)在傳感器節(jié)點(diǎn)處相當(dāng)于短路。進(jìn)入測(cè)距功能,主機(jī)先保持總線(xiàn)弱上拉15 μs,而后移除弱上拉并強(qiáng)制保持總線(xiàn)低電平20 μs,其后向總線(xiàn)發(fā)送測(cè)距脈沖,并釋放總線(xiàn),此時(shí)總線(xiàn)在主機(jī)接入點(diǎn)處等效為斷路。強(qiáng)制保持總線(xiàn)低電平可消除總線(xiàn)上噪聲,便于保證測(cè)量精度。傳感器節(jié)點(diǎn)在電子開(kāi)關(guān)短路時(shí)間到后將電子開(kāi)關(guān)斷開(kāi)釋放總線(xiàn)。
圖5是主機(jī)發(fā)送測(cè)距脈沖時(shí)序,虛線(xiàn)代表弱上拉將總線(xiàn)拉高,黑色粗實(shí)線(xiàn)表示總線(xiàn)低電平,細(xì)實(shí)線(xiàn)表示主機(jī)發(fā)送的測(cè)距脈沖。
圖5 主機(jī)發(fā)送測(cè)距脈沖時(shí)序Fig 5 Time sequence of ranging pulse sent by host
為驗(yàn)證該方法的可行性,以雙絞線(xiàn)為總線(xiàn)連接測(cè)距主機(jī)與傳感器節(jié)點(diǎn)進(jìn)行實(shí)驗(yàn)。
主機(jī)FPGA芯片外接晶振50 MHz,受芯片性能限制,內(nèi)部鎖相環(huán)能最高倍頻工作在350 MHz,因此,F(xiàn)PGA內(nèi)部邏輯能進(jìn)行高速計(jì)數(shù),每個(gè)計(jì)數(shù)時(shí)間約為2.86 ns。
采用最長(zhǎng)為9.25 m的雙絞線(xiàn)進(jìn)行測(cè)試,每次剪短0.1 m,每隔1 m重新校正一次雙絞線(xiàn)長(zhǎng)度。假定電磁波在聚乙烯類(lèi)絕緣材質(zhì)電纜中的傳播速度為200×106m/s,采用傳輸線(xiàn)時(shí)域脈沖單次回波方法進(jìn)行測(cè)定主機(jī)到傳感器節(jié)點(diǎn)之間的距離,線(xiàn)性度實(shí)驗(yàn)測(cè)試結(jié)果如圖6所示。
由圖6可見(jiàn),該測(cè)距方法具有良好的線(xiàn)性度,測(cè)量誤差小于0.25 m。實(shí)驗(yàn)中還發(fā)現(xiàn),在很短的連線(xiàn)(<0.85 m)時(shí)測(cè)量結(jié)果異常,這是該測(cè)距方法的盲區(qū)。
圖6 測(cè)距線(xiàn)性度實(shí)驗(yàn)結(jié)果Fig 6 Experimental results of ranging linearity
對(duì)不同連線(xiàn)進(jìn)行了測(cè)距實(shí)驗(yàn),大多數(shù)測(cè)試結(jié)果具有良好的重復(fù)性,但在測(cè)試臨界點(diǎn)計(jì)數(shù)值有較多的±1波動(dòng),如圖7為8.85 m長(zhǎng)的雙絞線(xiàn)重復(fù)性實(shí)驗(yàn)結(jié)果,這與空間噪聲和計(jì)數(shù)頻率都有關(guān)系。
圖7 8.85 m重復(fù)性測(cè)距實(shí)驗(yàn)結(jié)果Fig 7 Results of repeat ranging experiments on 8.85 m line
采用單次回波方法對(duì)傳感器節(jié)點(diǎn)測(cè)距誤差小于0.25 m,如果要達(dá)到更高的有線(xiàn)測(cè)距精度,可考慮采用多次回波或更換能工作在更高頻率的測(cè)距主機(jī)FPGA芯片,相關(guān)功能有待進(jìn)一步驗(yàn)證。
在有線(xiàn)傳感器網(wǎng)絡(luò)系統(tǒng)中,本文采用主機(jī)端的FPGA產(chǎn)生高速測(cè)距脈沖信號(hào),通過(guò)外圍電路驅(qū)動(dòng)后發(fā)射到二線(xiàn)制總線(xiàn)上,由被測(cè)距傳感器節(jié)點(diǎn)按照預(yù)定命令主動(dòng)設(shè)置傳輸線(xiàn)在連接點(diǎn)阻抗失配,高速測(cè)距脈沖信號(hào)在該處產(chǎn)生反射波反饋到總線(xiàn)上并被主機(jī)端通過(guò)高速比較器整形接收,通過(guò)測(cè)定發(fā)射脈沖和失配反射脈沖的時(shí)間差可實(shí)現(xiàn)總線(xiàn)主機(jī)到預(yù)定傳感器節(jié)點(diǎn)間距離的測(cè)定。實(shí)驗(yàn)結(jié)果表明:以基于FPGA的測(cè)距主機(jī)與有線(xiàn)連接的傳感器節(jié)點(diǎn)的測(cè)距方法簡(jiǎn)單便捷,速度快,測(cè)量結(jié)果準(zhǔn)確。
[1]曹 野,陳 伍,張 偉.混合傳感器網(wǎng)絡(luò)綜述[J].科協(xié)論壇,2010(5):42-43.
[2]Pon R,Kansal A.Networked infomechanical systems(NIMS):Next generation sensor networks for environmental monitoring[C]//Microwave Symposium Digest,2005 IEEE MTT-S International,2005:412-417.
[3]Kim Sukun,Pakzad S,Culler D,et al.Health monitoring of civil infrastructures using wireless sensor networks[C]//Proceedings of the 6th International Conference on Information Processing in Sensor Networks,Cambridge,MA,2007:254 -263.
[4]DS28EA00 1-wire digital thermometer with sequence detect and PIO[DB/OL].[2007—02—13].http:// www.axim-ic.com/datasheet/index.mvp/id/5355
[5]熊 金,簡(jiǎn) 毅.單總線(xiàn)器件ID自動(dòng)搜索和現(xiàn)場(chǎng)位置確定[J].自動(dòng)化技術(shù)與應(yīng)用,2009,28(12):90 -99.
[6]吳明英,毛秀華.微波技術(shù)[M].西安:西北電訊工程學(xué)院出版社,1985.
[7]張 舒,師奕兵,劉 科,等.時(shí)域反射測(cè)量技術(shù)在網(wǎng)絡(luò)故障檢測(cè)中的應(yīng)用[J].中國(guó)測(cè)試技術(shù)2005,31(5):40-41.
[8]徐 奕,吳劍鋒,李建清.新型多功能網(wǎng)絡(luò)電纜故障測(cè)試儀的研制[J].儀表技術(shù)與傳感器,2009,(4):118 -120.