魏忠鑫
【摘要】 環境檢測系統主要由傳感檢測網絡、網關、服務器以及終端應用組成。傳感檢測網絡基于ZigBee協議,由分布于各個待檢測區域的環境檢測節點組成。傳感器節點分為父節點和子節點,上電后父節點建立的網絡,子節點加入網絡。經測試,子節點可向父節點周期性地上傳環境數據。用戶通過手機或平板電腦接入移動網絡隨時掌握被測網絡的環境信息,本文通過ZigBee環境檢測系統在實際工作的應用進行探討,提出解決方式。
【關鍵詞】 環境檢測 傳感器網絡 ZigBee
一、引言
隨著社會與經濟的發展,我國工業化程度逐漸提高,使得環境檢測與控制的應用需求越來越大。比如,農業生產、工業制造、環境保護、室內居住等等。科學技術的發展,也不斷地改變著環境檢測的技術,使環境檢測變得數字化、系統化、智能化。目前的環境檢測技術,運用高精度,低誤差的傳感器網絡,將環境參數變為數字信號,再送入主控器分析和處理,然后智能化控制進行進一步的操作,比如報警、降溫、開窗、語音播報等操作。
本文提出一種基于MSP430F5418和CC1120的嵌入式遠程環境檢測系統的方案,實時檢測當前傳感器網絡節點下的溫度、濕度、光強度信息,并可進行語音播報。該設計可應用于大棚種植的環境監控、室內居住環境的檢測、森林火災預警、城市環境動態監控等。
二、系統結構
智能環境檢測系統結構如圖1所示,主要由傳感檢測網絡、網關、服務器和終端應用組成。傳感檢測網絡基于ZigBee協議,由分布于各個待檢測區域的環境檢測節點組成。每個檢測儀節點由信息采集模塊、MSP430F5418控制模塊、語音播報模塊、人機交互模塊,CC1120無線模塊組成。網關完成ZigBee網絡與互聯網的對接。而服務器則負責接收來自于傳感檢測網絡發送的環境數據,并進行分析,存儲,處理指令等操作,終端應用設計為手機安卓程序,可以查詢權限范圍內節點的環境信息和遠程發送升溫,除濕等指令。
2.1 傳感器節點設計
傳感器網絡節點系統框圖如圖2所示,主控芯片MSP430F5418分別與信息采集模塊、按鍵液晶模塊、語音模塊、CC1120模塊連接。每個節點都具有人機交互和語音播報功能。MSP430F5418上電后在不工作時處于低功耗模式,僅通過中斷喚醒芯片處理事務,以達到節能目的。傳感器節點由父節點和子節點組成,父節點建立網絡,子節點通過掃描網絡加入父節點建立的網絡。子節點在網內時將周期性地向父節點上傳溫度,光強度以及濕度數據。子節點與父節點都具有掉網重連功能。
2.1.1 信息采集模塊
信息采集模塊如圖3所示,由溫度采集電路,濕度采集電路和光強度采集電路組成,完成環境參數采集的功能。在溫度采集電路中,選用DS18B20數字式溫度傳感器測量溫度,該傳感器精度高,反應靈敏,且與MSP430F5418連接簡單。MSP430F5418通過時序讀寫控制,讀出DS18B20當前采集的溫度。濕度與光強度采集均選用電阻式傳感器,傳感器將濕度與光照信號轉化為電壓信號,通過模數轉換及運算后變為數字信號。在濕度采集電路中,電阻式濕度傳感器型號為CHR_01。
2.1.2 信息顯示與語音播報
信息顯示與語音播報模塊由按鍵液晶模塊與ISD4004語音模塊構成。液晶屏顯示環境信息和按鍵的操作提示,操作者通過按鍵控制語音播報等功能。語音芯片通過SPI接口與主控單片機MSP430F5418通信,由于芯片的通信協議SS管腳并未完全符合標準四線SPI協議,因此,程序設計時采用三線SPI模式同時模擬控制SS管腳的電平變化。該語音芯片可錄放8至16分鐘語音,3V 單電源工作,采用CMOS 技術,內含振蕩器、防混淆濾波器、平滑濾波器、音頻放大器、自動靜噪及高密度多電平閃爍存貯陳列。
2.2 通信設計
本系統通信包括傳感器節點之間的通信、ZigBee網絡與服務器的通信、服務器和終端應用間的通信。網關完成ZigBee網絡與互聯網間的轉換,使父節點和子節點的環境數據上傳至服務器。服務器和終端應用通過互聯網進行數據傳輸。傳感器節點間的無線通信模塊選用TI公司生產的CC1120 ,其與MSP430F5418的通信方式和語音芯片ISD4004相同,均用三線SPI并模擬CSn管進行通信。經過該通信過程 服務器由一臺遠程電腦擔任,不僅需要負責記錄從傳感器網絡傳回的數據,還需要回應應用端的數據請求。終端應用設計為Android程序,用戶通過手機或平板電腦接入移動網絡隨時掌握被測網絡的環境信息。
三、軟件設計
環境檢測系統軟件介紹傳感器網絡節點的程序設計。傳感器節點主程序流程圖如圖5所示,MSP430F5418上電后初始化射頻、語音芯片和顯示屏等模塊。接著開啟傳感器獲取環境信息的中斷,再運行ZigBee網絡的相關程序,通過ZigBee網絡和網關轉換將環境信息上傳至服務器上。
3.1 數據采集處理
傳感器采集的溫度,濕度和光強度信息存在一定的波動,對采集到的數據進行再處理使環境信息變得更穩定,提高其可讀性。傳感器溫度處理程序流程圖,在定時器中斷中,通過DS18B20讀取一次溫度數據,選取最近讀取的20次溫度數據,首先溫度數據進行去噪濾波,再對剩余的溫度數據求平均值。所得的均值即視為當前溫度值。
濕度信息在濕度AD中斷函數中處理。濕敏電阻將環境的濕度信息轉換為電壓信號,由MSP430F5418通過AD采樣讀取該值。每一次AD采樣后,先判斷與前一次處理后的濕度數據的差異,若差異高于一個門限值,則判定為出錯數據,舍棄。若判定為正確濕度信息,則對最近5次判斷的濕度信息求平均,該平均值被認定為當前環境的濕度值。
光強度的采集和濕度采集相似,通過光敏電阻將光強信號轉變為電信號,再由MSP430F5418經AD采樣并處理后得出光強信息。不同的是,光強信息的變化率比溫度和濕度大,采樣所得的信息不超過最大光強閾值都被判定為當前光強度值,提高了反應靈敏度,但減小了穩定度。
3.2 傳感器網絡設計
傳感器網絡采用ZigBee網絡技術,將節點分為父節點和子節點。如果傳感器節點接收到父節點發送的連接成功信息,則會發送一個成功傳輸響應信息以確認接收,然后傳感器節點MAC層將通過MLME_ASSOCIATE.confirm原語通知網絡層,父節點接收到傳感器節點的成功傳輸響應信息后,將通過MLME_COMM_STATUS.indication原語將傳輸成功的響應狀態發送給網絡層。
通過已經組建好的ZigBee網絡,父節點便能很方便地與傳感器節點進行無線通信,通過指令可控制子節點向父節點周期性地上傳數據,通過父節點可控制傳感器節點,如停止采集數據,發送數據等。
3.3 人機交互設計
本系統人機交互設計由終端手機Android程序和傳感器節點處的人機交互模塊組成。Android程序實現終端信息的顯示和命令的交互,傳感器節點處的人機交互通過簡單的矩陣按鍵、LCD和語音模塊組成。LCD屏顯示按鍵的操作提示,通過按鍵可以控制語音播報的內容。語音播報是將所需要的語音數據先導入語音芯片,并記錄每一語音數據的地址。當需要播報該語音數據的時候,通過查表法導出語音數據,通過功放電路播放語音。
四、總結與展望
在誤差在允許的范圍內,我們已完成環境信息的采集與顯示,并可進行語音播報。現階段已加入ZigBee網絡對傳感器網絡進行管理,且通過該網絡可將各個節點的環境信息周期性地上傳至服務器。我們正致力于開發遠程應用端Android程序,在實時顯示傳感器目前的環境信息的基礎上增加更多的功能。
參 考 文 獻
[1] ZigBee Alliance. ZigBee specification 2008[DB/OL]. [2012-8-10].
[2] 沈建華,楊艷琴,瞿驍. MSP430系列16位超低功耗單片機原理與應用 [M]. 北京:清華大學出版社,2004
[3] 趙廣林. 新型語音芯片應用手冊[M]. 北京:電子工業出版社,2008
[4] 樊尚春. 傳感器技術及應用[M]. 第2版. 北京:北京航天航空大學出版社,2010
[5] 韓九強,周杏鵬. 傳感器與檢測技術[M]. 北京:清華大學出版社,2010