程靖淇
(英國德比市雷普頓中學,英國DE65 6FH)
住宅環境是除了辦公環境外的一個最重要的場所[1],據統計人們大約有超過90%的時間都是在室內度過[2]。隨著室外環境的惡化,以及室內裝修質量良莠不齊帶來室內污染問題越來越嚴重,給居民的身心健康帶來不利的影響。導致室內污染的因素有多種,如室外污染的侵入、室內建筑材料的散發、室內人員的行為活動等。室外空氣中的污染物會隨著室外通風和圍護結構的縫隙滲透作用侵入室內。住宅烹飪、吸煙等活動又同時會成為較大的室內污染散發源。為降低室外污染的影響,利用新風機的過濾作用去除室外的污染物;針對室內源,采用空氣凈化器消除室內污染物。但對于室內空氣品質改善效果的檢驗不夠,不能對住宅房間內各個房間的空氣品質進行實時的掌握。因此如何讓住宅用戶能夠實時了解住宅各個房間內的空氣質量狀況,以便于對采取的策略效果進行評估,成為首要解決的問題。
采用無線傳輸技術布置監控系統成為最佳選擇。目前廣泛使用的無線傳輸技術有藍牙(Bluetooth)、超寬帶(UWB:Ultra Wide Band)以及ZigBee等無線通信技術,這些技術在智能家居等產品中得到廣泛的應用。從使用過程的便利性以及技術的先進性角度來看,產品在實際應用中還是存在一些缺陷。基于此,本文提出了一種將互聯網、移動通信自動控制及傳感器網絡等多項技術融為一體的設計方案,并將該方案用于住宅內空氣品質監測系統中。
本文提出的ZigBee無線傳感器網絡監測系統方案,其結構布局如圖1所示。對于每一個節點就是一個設備,并且每一個設備都具有一個射頻端,具有唯一的IEEE地址(64位)和網絡地址(16位)。目前設備主要有兩種類型:FFD(Full Function Device)和 RFD(Reduced Function Device)。方案中的協調器采用FFD承 擔 組 建 個 域 網 絡 (Private Area Network,PAN),負責對其他節點進行協調等任務;ZigBee路由器和ZigBee終端,使用FFD或RFD均可,其主要功能是采集與其連接的傳感器傳輸來的數據,并匯集到協調器。協調器通過串口通信與MCU模塊建立聯系。MCU模塊與GSM模塊進行連接,可以通過公共移動網絡及時地將需要的數據信息發送給用戶手機上,MCU模塊同樣與PC連接,將數據顯示在PC屏幕上,以便于用戶實時觀察測試數據的變化。
按照監控系統結構分布來看,整個系統設計內容可以分為無線傳感器網絡、ZigBee/MCU和 MCU/GSM接口以及PC監控等部分,對于無線傳感網絡主要是個域網絡的組建,包括ZigBee終端節點、ZigBee路由以及協調器之間的無線通信;ZigBee/MCU和MCU/GSM接口部分主要是對協調器采集數據的處理,并實現手機與無線網絡的通信;PC監控主要對監測的對象進行監視,用戶可以通過PC監控發送指令控制設備的運行。
圖1 監控系統結構
無 線 通 信 模 塊 采 用 射 頻 芯 片 CC2530[16]。CC2530結合目前領先的RF收發器的優良性能,增強型8051CPU等其他強大的功能,并具有不同的運行模式,使得其適應于超低功耗要求的系統。搭載強大的集成開發環境,通過編寫的數據傳輸通信程序,實現ZigBee終端、ZigBee路由器和協調器之間的無線通信。
2.1.1 節點的硬件設計
ZigBee終端及ZigBee路由器采用CC2530射頻芯片,每個節點由CC2530模塊、一系列傳感器模塊以及電源模塊組成。為更加直觀地理解終端與傳感器之間連接關系,圖2顯示了終端設備硬件結構連接圖,同時展示了傳感器數據采集的類型,PM2.5傳感器以及二氧化碳傳感器與終端ZigBee通過串口數字信號進行通信,而溫濕度傳感器通過模擬電壓信號傳輸。
圖2 設備硬件結構
2.1.2 節點的軟件設計
利用傳感器網絡將終端設備采集到的傳感器數據傳輸到協調器,協調器將匯總的傳感器終端數據通過串口傳輸到MCU模塊。通信設計采用ZStack協議棧,ZStack協議棧是一個多任務輪詢的簡單操作系統,由于涉及的任務較多,復雜程度較高,在這里將終端節點、路由節點和協調器流程圖進行了簡化,簡化后的流程如圖3所示。從圖中可以看出,對于協調器主要任務是建立一個個域ZigBee網格,并等著終端節點和路由節點加入網絡,搜集終端節點或路由節點發送的數據;對于終端節點和路由節點主要是采集傳感器數據,通過不斷地嘗試加入ZigBee網絡,在成功加入后將數據包信息傳輸到協調器中。由于具體的代碼較長,在此不再列出。
圖3 任務流程圖
ZigBee/MCU和 MCU/GSM 接口模 塊 主 要 有ZigBee串口通訊模塊和GSM監視模塊,ZigBee串口通訊模塊負責將數據傳輸到MCU中進行處理;GSM監視模塊負責按照MCU的指令將數據信息傳輸到手機中,或者控制GSM模塊發送信息到手機。
2.2.1 接口的硬件設計
MCU選擇STM32F103RCT6單片機,在本系統中主要的作用是通過串口接收協調器發送的數據,并對數據進行處理后發送給GSM。對于GSM模塊,目前市場上成熟產品都具有數據引出口,并基本上都支持GSM相關的AT控制指令,在硬件連接方面,只要在數據口中找到RXD、TXD和GND三個引腳與單片機上相對于的引腳連接即可。
2.2.2 接口的軟件設計
在設計MCU與GSM模塊接口程序時,首先要進行串口配置,GSM模塊數據接口配置為8位數據位、1位停止位、無校驗位,因此需要首先按此設置單片機工作模式。單片機通過向GSM模塊發送AT指令控制GSM模塊,在執行每一個指令過程中都需要單片機與GSM模塊進行一次交互應答,對于每一次發送或者接收的字節數都有嚴格規定,必須按照這些規定進行數據的交互,否則將會導致通信失敗。圖4(a)描述了單片機在通信過程中系統的運行框架。在給系統供電后,首先完成系統的初始化,主要包括對串口的配置以及啟動串口。進而單片機向GSM模塊發送入網檢測指令,嘗試接入網絡。在成功接入網絡后,進入發送信息子程序。發送信息子程序是整個單片機程序中最核心的部分,圖4(b)展示的是發送信息的子程序流程圖,單片機通過執行程序指令控制GSM模塊發送信息到手機,具體的程序在此處省略。
為了測試本文設計的系統性能,在一家庭住宅內進行了實地測試。在四個主要功能房間內分別布置了一個ZigBee終端節點,ZigBee協調器節點放置在書房內。在組網過程中,先打開協調器節點,再打開各個終端節點。終端節點加入網絡后,開始對傳感器測試數據進行采集,設置數據保存間隔為1 min,并以文本格式保存在本地存儲卡內。
圖4 檢測系統圖
圖5 PM2.5濃度變化曲線
利用該系統進行了為期一個月的實地測試,以室內PM2.5濃度為例,圖5展示了在測試階段客廳內濃度的變化。實驗結果驗證,該系統能夠實時穩定監控室內空氣品質的變化,為住宅用戶了解室內環境提供有效的數據支撐。
本文設計了基于ZigBee無線傳感器網絡的住宅室內空氣品質監控系統,實現了對住宅室內各個功能房間內空氣品質的實時監測目的。通過系統聯調證明,無線傳感器網絡間數據傳輸穩定,能夠通過網絡和終端實時對各個監測點進行監視,并將監測數據通過GSM模塊傳輸到用戶手機上,在監控點出現異常時通過發送短信通知用戶。系統在住宅房間內使用性強,具有較好的應用前景。