馬榮華, 歐陽繕, 王魯豫, 張晨華
(桂林電子科技大學 信息與通信學院,廣西 桂林 541004)
隨著科學技術的進步,醫(yī)療水平和人民生活質量的提高,來自藥品、化妝品等感染病癥和不良反應的問題日益引起人們的關注。人們發(fā)現要確保藥品的質量,除了應遵照藥典規(guī)定的特定的要求、配方外,還應具有符合要求的生產環(huán)境[1]。因此,藥品生產廠房的環(huán)境因素對制藥行業(yè)有著至關重要的影響。目前,針對環(huán)境監(jiān)測系統(tǒng)的研究比較多,其中基于ZigBee的無線傳感器網絡在環(huán)境監(jiān)測系統(tǒng)的應用研究最為廣泛。沈益輝等[2]提出了基于無線傳感器網絡的室內環(huán)境監(jiān)測系統(tǒng),該系統(tǒng)設計了無線傳感器網絡節(jié)點,采用ZigBee協(xié)議組建無線傳感器網絡,通過Internet進行遠程傳輸。王文虎[3]在此基礎上對采集的數據進行濾波處理,但該方法會導致模塊在采集多個數據后只能返回一個數據的結果,影響系統(tǒng)實時性。薛冰心[4]針對不同的場景采用不同的濾波處理。對溫度、濕度和光照強度的傳感器的數據處理采用限幅平均濾波法,對于采樣變化幅度較大的顆粒物濃度的傳感器數據處理采用了一階滯后平均濾波法。項新建[5]對采集的數據進行數據融合處理,可靠性得到了增強,但融合算法較為復雜,實時性不強。此外,李安超等[6]改進了無線傳感器網絡路由協(xié)議算法,減少了節(jié)點的能量消耗。
在WSN中,節(jié)點的部署通常具有隨機性,隨機布局的WSN存在節(jié)點利用率低、網絡覆蓋率小等問題。由于虛擬力算法(virtual force algorithm,簡稱VFA)與網絡覆蓋問題的一致性,該算法在WSN中的應用日益廣泛。Zou等[7]將VFA應用于WSN覆蓋,但未考慮邊界的影響,節(jié)點會移動到區(qū)域外,從而造成浪費。Yi等[8]在有向傳感器模型的基礎上提出了基于虛擬力的增強算法。張玉堂等[9]考慮區(qū)域邊界條件,避免了節(jié)點超出邊界的無效移動,提高了網絡覆蓋率。
本研究設計了基于ZigBee的WSN環(huán)境監(jiān)測系統(tǒng),能夠很好地應用于潔凈廠房等各種環(huán)境監(jiān)測領域,是一種行之有效的解決方案。
基于ZigBee無線傳感器網絡的潔凈廠房環(huán)境監(jiān)測系統(tǒng)主要由傳感器模塊、ZigBee組網模塊和網關模塊3個部分組成。系統(tǒng)整體框圖如圖1所示。
圖1 系統(tǒng)整體框圖
傳感器模塊采集潔凈廠房內環(huán)境數據信息,并對其進行濾波處理后,通過串口傳輸至終端節(jié)點。采用ZigBee協(xié)議將多個組網模塊組建成無線網絡,實現對廠房多區(qū)域的環(huán)境監(jiān)測。采用改進的VFA[9]對節(jié)點布局進行優(yōu)化,得到較高的網絡覆蓋率,為實際的工程應用節(jié)點安放位置提供參考。網關模塊將數據透傳至外網并對設備運轉情況進行預警。
根據潔凈廠房設計規(guī)范,選取溫度、濕度、氣壓、PM2.5四個關鍵技術指標進行監(jiān)測,考慮到體積、成本等因素,選取的傳感器型號及其各項參數如表1所示。
表1 傳感器的型號及其參數
傳感器模塊硬件結構設計如圖2所示。
圖2 傳感器模塊硬件結構設計圖
數字輸出的傳感器與STM32微處理器直接相連,模擬輸出的傳感器與STM32微處理器相連。STM32微處理器通過串口與終端節(jié)點相連。
ZigBee組網模塊硬件結構設計如圖3所示。
圖3 ZigBee組網模塊硬件結構設計圖
ZigBee組網模塊由CC2530處理器、天線單元和電源模塊3個部分組成。ZigBee網絡中根據節(jié)點功能的不同分為終端節(jié)點、協(xié)調器節(jié)點,各節(jié)點硬件結構完全相同。終端節(jié)點通過串口與傳感器模塊相連。協(xié)調器節(jié)點通過串口與網關模塊相連。
網關模塊硬件結構設計如圖4所示。
圖4 網關模塊硬件結構設計圖
網關模塊包括STM32微處理器、串口、ESP8266串口轉WIFI模塊、電源模塊。該模塊通過串口與協(xié)調器節(jié)點相連。
系統(tǒng)軟件設計包括傳感器模塊軟件設計、ZigBee組網模塊軟件設計、網關模塊軟件設計。其中ZigBee組網模塊軟件設計包括協(xié)調器節(jié)點軟件設計和終端節(jié)點軟件設計。
傳感器模塊軟件設計流程如圖5所示。
圖5 數據采集軟件設計
首先采集環(huán)境中的溫濕度、粉塵濃度、氣壓信息并將其分別緩存在一個隊列里。為了有效地去除各種因素對采集數據的干擾,采用中值濾波和滑動均值濾波[10]算法相結合的方式對數據進行處理,濾波算法流程如圖6所示。
圖6 數字濾波算法軟件設計
在Z-Stack協(xié)議棧的基礎上實現組網模塊的軟件設計[10]。協(xié)調器節(jié)點主要進行網絡的組建和無線數據的接收并將數據通過串口傳送至網關模塊。終端節(jié)點查找是否有可加入的網絡,加入網絡。接收傳感器模塊通過串口傳來的數據進行數據的無線發(fā)送。為了減少網絡節(jié)點能量消耗,在無數據時,調用休眠函數使系統(tǒng)處于休眠狀態(tài),在有數據傳輸時,調用喚醒函數激活節(jié)點進行數據的傳輸。組網模塊的程序流程如圖7所示。
圖7 組網模塊程序流程圖
3.3.1 傳統(tǒng)的VFA
由于VFA與節(jié)點覆蓋技術的一致性,采用VFA來對節(jié)點布局進行優(yōu)化[11-12]。具體的虛擬力建模如下:
設任意2個節(jié)點si和sj,節(jié)點si受到節(jié)點sj的作用力滿足以下受力關系:
(1)
其中:k1、k2為增益系數;dij為節(jié)點si和sj之間的距離;dth為節(jié)點間距離閾值;rs為節(jié)點間最佳距離。
各傳感器節(jié)點會根據總的合力大小進行節(jié)點位置更新,更新公式為:
(2)
(3)
其中:dm為傳感器節(jié)點最大移動距離;Fxy為作用于節(jié)點的虛擬力的合力;Fx、Fy為Fxy在x軸和y軸分量。
3.3.2 VFA的改進
傳統(tǒng)的VFA只考慮了節(jié)點間的作用力。為減少節(jié)點在位置更新的過程中的時間損耗,加入網格格點對節(jié)點的作用力,其定義如式(4)所示。
(4)
其中:ω為增益系數;r為感知半徑;R為通信半徑;dig為節(jié)點與格點之間的距離。
實際環(huán)境監(jiān)測過程中,會有節(jié)點聚集在邊界上的情況,具體如圖8所示。
圖8 存在大量邊界節(jié)點的情況
在該情況下,按上述規(guī)則進行節(jié)點移動,必然有節(jié)點會排斥到邊界外,造成無線傳感器網絡節(jié)點覆蓋能力減弱。
設感興趣區(qū)域的邊界對節(jié)點也存在一個約束力Fb,使得節(jié)點不會被“排斥”到區(qū)域外,該力的表達式為:
(5)
其中:di為傳感器節(jié)點i到邊界的距離;φ為增益系數;dbth為邊界距離閾值。
WiFi模塊加載了機智云固件,在機智云平臺建立相應的數據點,實現網關模塊、機智云服務器、應用程序之間的數據交互。首先是網關模塊通過串口接收協(xié)調器節(jié)點傳來的數據,然后對潔凈設備運轉情況做出預警,最后將數據通過串口發(fā)送至WiFi模塊透傳至外網。網關模塊軟件流程圖如圖9所示。
圖9 網關模塊軟件設計流程圖
對該環(huán)境監(jiān)測系統(tǒng)中數據收發(fā)情況進行完整測試,數據接收界面如圖10所示。
系統(tǒng)能夠正常顯示所監(jiān)測的環(huán)境參數信息,且能對新風空調系統(tǒng)中各個組件的運轉狀況做出判斷,大大節(jié)省了人工排查消耗的時間,能夠在極短時間內排除故障,使設備正常運轉。
對傳感器模塊采集的數據進行濾波處理,將本算法與中值濾波、均值濾波相對比,算法濾波效果如圖11所示。
由圖11可看出,經過軟件濾波后,信號變得更平滑,更加穩(wěn)定,把一些嚴重的干擾濾掉了。本算法去除了信號中比較尖銳的成分,使數據更加平滑。
圖10 Android APP數據接收界面
仿真試驗在Matlab R2013b上進行,相關參數設置為:無線傳感器網絡監(jiān)測區(qū)域為800 m×700 m,網格大小設置為2 m×2 m,傳感器節(jié)點數N=36,感知半徑r=90 m,傳感器節(jié)點在格點作用下的最大步長dth=2.5 m,在傳感器節(jié)點作用下的最大步長dm=3.5 m。傳感器節(jié)點在初始狀態(tài)和優(yōu)化后分布情況如圖12所示。
無網格格點的作用力時,運行耗時15.310 472 s。加入網格格點對節(jié)點的作用力后,運行時間為12.368 850 s,算法運行效率明顯提高。改進的虛擬力算法優(yōu)化得到的節(jié)點覆蓋率提高了6.3%。從圖12可看出,與節(jié)點初始隨機分布圖相比,采用改進的虛擬力算法,節(jié)點分布較為均勻,“空洞”減少,很好地完成了對區(qū)域整體監(jiān)測的任務。
圖11 濾波效果圖
圖12 節(jié)點分布圖
為了研究算法對節(jié)點的作用有更加清晰地認識,設計了節(jié)點在整個運算過程中移動的路徑圖,如圖13所示。
圖13中的圓點表示節(jié)點的初始位置,曲線則表示節(jié)點移動的過程,從圖13可看出,前期節(jié)點的運動路徑比較流暢,后期出現震蕩,算法最終的收斂效果并不理想。
設計了基于ZigBee無線傳感器網絡的潔凈廠房環(huán)境監(jiān)測系統(tǒng)。設計了傳感器模塊,對環(huán)境數據進行采集,并對采集的數據進行濾波處理,提高了系統(tǒng)的穩(wěn)定性和準確性。設計了無線傳感器網絡節(jié)點,實現ZigBee協(xié)議下的自組網,無需布線,降低了系統(tǒng)成本。同時,采用改進的虛擬力算法實現無線傳感器網絡節(jié)點的布局優(yōu)化。仿真實驗證明,改進的虛擬力算法能夠有效地提高網絡覆蓋率,且收斂速度較快。實驗結果表明,該系統(tǒng)能夠實現環(huán)境數據的遠程監(jiān)測,可較好地應用于潔凈廠房等環(huán)境監(jiān)測領域,是一種切實可行的方法。
圖13 節(jié)點行徑路線圖