郭前崗,周德祥,周西峰
(南京郵電大學(xué) 自動(dòng)化學(xué)院,江蘇 南京 210046)
無線傳感器網(wǎng)絡(luò)是由大量傳感器節(jié)點(diǎn)以自組織的方式構(gòu)成的無線網(wǎng)絡(luò),其目的是協(xié)作地感知、采集和處理區(qū)域中感知對(duì)象的信息,并發(fā)布給觀察者[1]。由于傳感器節(jié)點(diǎn)的計(jì)算、通信能力及能量都十分有限,因此,如何有效地使用能量均衡能量的消耗并延長網(wǎng)絡(luò)生存時(shí)間成為無線傳感器網(wǎng)絡(luò)研究的重點(diǎn)之一[2]。
本文研究了低功耗自適應(yīng)集群分層型路由協(xié)議LEACH。在簇頭數(shù)選取時(shí),如果簇頭數(shù)過多,簇頭要與遠(yuǎn)距離的基站通信,其消耗的能量將遠(yuǎn)遠(yuǎn)大于其他的成員節(jié)點(diǎn),同時(shí)采集到的數(shù)據(jù)有冗余,浪費(fèi)了較多的能量。如果簇頭數(shù)太少,也就失去了LEACH協(xié)議分層的意義,同時(shí)簇頭節(jié)點(diǎn)接收的信息量大,會(huì)增加簇頭的工作量,導(dǎo)致簇頭節(jié)點(diǎn)能量過快地消耗完而死亡[3]。因此,簇頭數(shù)量的多少直接影響網(wǎng)絡(luò)的能量消耗,選擇一個(gè)合適的簇頭數(shù)能夠使網(wǎng)絡(luò)的能量消耗平均到每一個(gè)節(jié)點(diǎn),延長網(wǎng)絡(luò)的壽命。
[4]針對(duì)最優(yōu)簇頭數(shù)的計(jì)算進(jìn)行了研究,但是其只考慮了穩(wěn)定傳輸階段的能量消耗,而沒有考慮建立階段節(jié)點(diǎn)的能量消耗,本文在其基礎(chǔ)上進(jìn)行改進(jìn)。本文方法能夠在每輪選擇一個(gè)合適的簇頭數(shù),均衡整個(gè)網(wǎng)絡(luò)的能量消耗,達(dá)到延長網(wǎng)絡(luò)使用時(shí)間的目的。
LEACH是由MIT的HEINZELMAN等人提出的分簇路由協(xié)議,使用循環(huán)的簇頭輪換技術(shù)使得每個(gè)傳感器節(jié)點(diǎn)都能成為簇頭,這樣整個(gè)網(wǎng)絡(luò)的能量消耗分布相對(duì)均衡,從而延長了網(wǎng)絡(luò)的生存周期[5]。此外,簇頭節(jié)點(diǎn)能夠?qū)Υ貎?nèi)節(jié)點(diǎn)的信息進(jìn)行融合。由于數(shù)據(jù)通信消耗的能量遠(yuǎn)遠(yuǎn)大于數(shù)據(jù)計(jì)算所消耗的能量,因此可以有效地節(jié)約能量。與一般的平面多跳路由協(xié)議和靜態(tài)分簇協(xié)議相比,LEACH協(xié)議可以將網(wǎng)絡(luò)生命周期延長15%[6]。
LEACH協(xié)議被分為很多輪,每一輪包括建立階段和穩(wěn)定傳輸階段,為了減少網(wǎng)絡(luò)的開銷,穩(wěn)定傳輸階段的時(shí)間比建立階段要長。在建立階段,每個(gè)傳感器節(jié)點(diǎn)產(chǎn)生一個(gè)0~1之間的隨機(jī)數(shù),如果這個(gè)數(shù)小于閾值T(n),則該節(jié)點(diǎn)被選為簇頭節(jié)點(diǎn),向其他節(jié)點(diǎn)發(fā)布自己是簇首的消息。 T(n)[7]的計(jì)算公式為:
其中,p是簇頭占所有傳感器節(jié)點(diǎn)的百分比,r是當(dāng)前的輪數(shù),G為未被當(dāng)選過簇頭節(jié)點(diǎn)的集合。在第0輪的時(shí)候,每個(gè)節(jié)點(diǎn)當(dāng)選為簇頭的概率為p,被選為簇頭的節(jié)點(diǎn)在后面的幾輪中將不能再次當(dāng)選為簇頭節(jié)點(diǎn)。隨著每一輪的進(jìn)行,剩下可以當(dāng)選為簇頭的節(jié)點(diǎn)數(shù)量在不斷地變小,但是T(n)在不斷地變大,且能夠保持每輪當(dāng)選的簇頭個(gè)數(shù)是一樣的。經(jīng)過了若干輪后,T(n)=1,所有未當(dāng)選為簇頭的節(jié)點(diǎn)都當(dāng)選為簇頭節(jié)點(diǎn),接下來的一輪,所有節(jié)點(diǎn)又可以重新當(dāng)選為簇頭節(jié)點(diǎn)。
簇頭節(jié)點(diǎn)當(dāng)選后,會(huì)發(fā)送一個(gè)廣播包廣播自己是簇頭的消息,并且所有簇頭節(jié)點(diǎn)發(fā)送廣播消息的發(fā)射功率都是一樣的。這個(gè)過程中,其他節(jié)點(diǎn)都處于等待接收廣播消息的狀態(tài),每個(gè)節(jié)點(diǎn)可能收到不同簇頭節(jié)點(diǎn)的廣播信息,根據(jù)接收信號(hào)的強(qiáng)弱,向信號(hào)最強(qiáng)的簇頭結(jié)點(diǎn)發(fā)送申請(qǐng)加入的消息,簇頭節(jié)點(diǎn)收到成員節(jié)點(diǎn)的加入信息會(huì)完成簇的建立。最后,簇頭節(jié)點(diǎn)會(huì)向所屬簇的節(jié)點(diǎn)發(fā)送TDMA時(shí)刻表[8],通知每個(gè)節(jié)點(diǎn)何時(shí)向其發(fā)送數(shù)據(jù)。
在穩(wěn)定傳輸階段,傳感器節(jié)點(diǎn)根據(jù)TDMA時(shí)刻表所確定的時(shí)隙,將信息發(fā)送給簇頭節(jié)點(diǎn)。簇頭節(jié)點(diǎn)將采集到的信息經(jīng)過數(shù)據(jù)融合之后發(fā)送給基站。經(jīng)歷一段穩(wěn)定的傳輸階段之后,進(jìn)入下一輪工作周期,不斷循環(huán)[9]。
LEACH路由協(xié)議中使用的能量消耗模型是一階無線通信模式(First Order Radio Model),如圖 1所示。
圖1 一階無線通信模式
該模型假設(shè)無線傳感器網(wǎng)絡(luò)中所有節(jié)點(diǎn)完全相同、能量有限、基站的位置固定,并且離傳感器網(wǎng)絡(luò)中節(jié)點(diǎn)較遠(yuǎn)、無線電信號(hào)在各個(gè)方向上耗能相同[10]。在這種模式下,每個(gè)節(jié)點(diǎn)發(fā)送1位數(shù)據(jù)消耗的能量為:
每個(gè)節(jié)點(diǎn)接收1位數(shù)據(jù)消耗的能量為:
其中,l為數(shù)據(jù)發(fā)送和接收的比特?cái)?shù);Eelec為發(fā)送或接收1比特?cái)?shù)據(jù)消耗的能量;εmp為多路衰減模型的功率放大系數(shù);εfs為自由空間模型的功率放大系數(shù)。當(dāng)發(fā)送距離d≥d0時(shí),采用多路衰減模型,能量消耗與距離的4次方成正比;當(dāng)d<d0時(shí),采用自由空間模型,能量消耗與距離的 2次方成正比,其中,d0=
假設(shè)節(jié)點(diǎn)總數(shù)為 N,隨機(jī)分布在M×M的區(qū)域內(nèi),簇頭個(gè)數(shù)為K,則平均每個(gè)簇中非簇頭成員節(jié)點(diǎn)數(shù)為N/K-1,簇頭建立的過程如圖2所示。
圖2 簇頭建立流程圖
簇頭節(jié)點(diǎn)根據(jù)式(1)選定以后,會(huì)向非簇頭節(jié)點(diǎn)廣播自己成為簇頭的消息,假設(shè)廣播的距離為d,則消耗的 能 量 為 l×Eelec+l×εmp×d4, 這 里 采 用 多 路 衰 減 模 型 , 能 量消耗與距離的4次方成正比。因?yàn)樗x取的距離d>d0,所以保證了簇頭的廣播信息能夠覆蓋網(wǎng)絡(luò)中的大部分節(jié)點(diǎn)。沒有被選為簇頭的節(jié)點(diǎn)根據(jù)收到廣播消息的信號(hào)的強(qiáng)弱來決定加入哪個(gè)簇,簇頭會(huì)收到節(jié)點(diǎn)的加入請(qǐng)求信息。因?yàn)槠骄總€(gè)簇中非簇頭成員節(jié)點(diǎn)為N/K-1個(gè),所以每個(gè)簇頭消耗的平均能量為 l×Eelec×(N/K-1)。 簇頭節(jié)點(diǎn)會(huì)創(chuàng)建TDMA時(shí)刻表并發(fā)送給簇成員,簇頭到非簇頭節(jié)點(diǎn)的距離用 dtoch表示, 消耗的 能量 為 l×Eelec+l×εmp×,所以簇建立階段每個(gè)簇頭節(jié)點(diǎn)消耗的能量為:
而每個(gè)非簇頭節(jié)點(diǎn)接收簇頭廣播信息消耗的能量為 l×Eelec,向所加入簇的簇頭節(jié)點(diǎn)發(fā)送消息的能量為 l×Eelec+l×εfs×, 接收簇頭節(jié)點(diǎn)的 TDMA 時(shí)刻表消耗的能量為l×Eelec,因此,簇建立階段每個(gè)非簇頭節(jié)點(diǎn)消耗的能量為:
綜上所述,簇建立階段的總能量為:
在簇穩(wěn)定傳輸階段,簇頭節(jié)點(diǎn)接收非簇頭節(jié)點(diǎn)發(fā)送的消息,消耗的能 量為 l×Eelec×(N/K-1),將 簇中所有的頻率,而虛擬儀器是通過采集波形數(shù)據(jù),然后對(duì)數(shù)據(jù)進(jìn)行分析,可以得到準(zhǔn)確頻率。當(dāng)電子變壓器輸出頻率低于設(shè)定范圍,會(huì)造成燈的閃爍、延時(shí)點(diǎn)亮等現(xiàn)象;而輸出頻率高于設(shè)定范圍時(shí),產(chǎn)品產(chǎn)生的干擾量值超標(biāo)。這里用到LabVIEW的提取單頻信息VI[5]。當(dāng)頻率測(cè)試在限值內(nèi),繼續(xù)進(jìn)行其他項(xiàng)目測(cè)試,否則跳出采集過程,提示產(chǎn)品頻率不良。
理想的電子變壓器輸出波形是上下對(duì)稱,即波形的峰值等于波形谷值的絕對(duì)值。然而由于電子元器件的參數(shù)差異,導(dǎo)致輸出波形存在非對(duì)稱。這里用到LabVIEW的幅值和電平VI,測(cè)試原理:峰值與谷值相加得到差值,如果差值不小于零,用差值除以峰值,得到的商不大于12.5%,判定為合格,否則判定為不合格。若差值小于零,用差值除以谷值,得到的商不大于12.5%,判定為合格,否則判定為不合格。測(cè)試程序如圖6所示。
圖6 輸出波形非對(duì)稱性測(cè)試程序
短路恢復(fù)啟動(dòng)時(shí)間,是指短路狀態(tài)消除到電子變壓器可以正常工作的時(shí)間。要求產(chǎn)品在規(guī)定的時(shí)間內(nèi)完成啟動(dòng)狀態(tài)轉(zhuǎn)換。采用LabVIEW的For循環(huán)檢測(cè)電子變壓器輸出電壓,并與設(shè)定值進(jìn)行比較。這里設(shè)定值為額定輸出電壓的90%。在規(guī)定的循環(huán)次數(shù) (對(duì)應(yīng)規(guī)定的時(shí)間)內(nèi)達(dá)到或超過設(shè)定值測(cè)試合格,否則測(cè)試失敗。
將生成的ET TEST獨(dú)立應(yīng)用程序及安裝程序復(fù)制到目標(biāo)機(jī),運(yùn)行安裝程序,產(chǎn)生Measurement&Automation Explorer、NI-DMM 設(shè)備驅(qū)動(dòng)、NI-DAQmx 設(shè)備驅(qū)動(dòng)、LabVEIW運(yùn)行引擎。建立被測(cè)產(chǎn)品的數(shù)據(jù)存放文件夾,用于測(cè)試數(shù)據(jù)的存放。
應(yīng)用LabVIEW軟件技術(shù),可成功完成電子變壓器動(dòng)態(tài)性能的測(cè)試。本采集系統(tǒng)自動(dòng)化程度較高,易于操控,通過選擇被測(cè)產(chǎn)品型號(hào),系統(tǒng)自動(dòng)匹配負(fù)載電阻,自動(dòng)