文/陳亮
水是被譽為萬物生命的源泉,魚塘水質(zhì)監(jiān)測關系到魚塘生物的生命和健康。如何高效率、精準地監(jiān)測水質(zhì),一直是人們重點研究的課題。目前水質(zhì)監(jiān)測的主要方式有兩種:一種是通過設置便攜式的池塘水質(zhì)監(jiān)測以及實驗室,采用手動方式來進行取樣,從而對水質(zhì)進行監(jiān)測和分析;另一種是根據(jù)遠程監(jiān)控中心以及監(jiān)視變電站來監(jiān)測水質(zhì)。雖然這些監(jiān)測系統(tǒng)的布置較為密集,但是數(shù)據(jù)采集和傳輸速度也較為緩慢,不能實時反饋魚塘水質(zhì)的情況。第二種雖然可以反應出一定的水質(zhì)變化,但是該方式采用了有線監(jiān)控,需要投入的成本較高,并且在對數(shù)據(jù)進行傳輸?shù)倪^程中,容易受到其他因素的干擾。因此,本文研究的基于Zigbee的無線傳感器網(wǎng)絡不但能夠通過雙向通信來提高對數(shù)據(jù)的傳輸效率,而且大大降低了系統(tǒng)成本和整體功率,對于水環(huán)境的監(jiān)測工作具有明顯的優(yōu)勢。
圖1:系統(tǒng)總體框圖
Zigbee技術經(jīng)常被稱為“HomeRFLite”技術、“FireFly”技術,演變到如今,技術領域習慣稱之為Zigbee技術。Zigbee技術主要用于對一些具有周期性和間歇性的數(shù)據(jù),其數(shù)據(jù)傳輸方式具有低功率、低速、短程的特點。
ZigBee技術屬于一種無線通信,可工作在2.4GHz、915MHz、868兆赫三個頻段。傳輸范圍在10米到75米,并且可以擴展。ZigBee的主要有以下特點:
圖2:傳感器節(jié)點結構圖
1.2.1 低功耗
當ZigBee技術的處于睡眠模式時,其傳輸功率和速率較低,功耗低至1mW,只需2塊AA電池,待機時間最長可以持續(xù)0.5-2年。
1.2.2 低成本
ZigBee的協(xié)議不需要支付版費,單芯片成本可以控制在1.5到2.5美元范圍內(nèi)。
1.2.3 短時延
通信延遲、睡眠延遲都很短,其中搜索設備延遲只有30毫秒,睡眠延遲只需15毫秒,進一步節(jié)省了電能。
1.2.4 容量大
對于Star Zigbee網(wǎng)絡來說,最大容量包括1個主節(jié)點以及254個從節(jié)點,可以同時容納100個ZigBee網(wǎng)絡。
1.2.5 安全性
其通過CRC校驗(基于循環(huán)完整性的校驗)來檢查報文的完整性。通過AES-128算法來對報文進行認證和加密。從而保證傳輸數(shù)據(jù)的安全。
圖1是基于Zigbee的魚塘水質(zhì)監(jiān)測系統(tǒng)的總體框圖。系統(tǒng)的硬件結構主要由中心節(jié)點以及傳感器節(jié)點、CDMA通信網(wǎng)絡、監(jiān)控中心三部分組成。其中傳感器節(jié)點主要位于魚塘水質(zhì)監(jiān)控范圍內(nèi),各個節(jié)點的排列較為隨機,但是以中心節(jié)點為中心,共同組成了Zigbee通信網(wǎng)絡,從而通過CDMA通信網(wǎng)絡來和監(jiān)控中心進行通信。當傳感器節(jié)點在監(jiān)控區(qū)域采集到相關數(shù)據(jù)后,通過中心節(jié)點對數(shù)據(jù)進行整合后,通過CDMA直接將數(shù)據(jù)傳輸?shù)竭h程監(jiān)控中心。
Zigbee通信網(wǎng)絡主要由傳感器節(jié)點和中心節(jié)點組成,而傳感器節(jié)點主要包括傳感器和基準ZigBee RF收發(fā)器模塊,這樣的設計不但簡單靈活,還能保證具有較高的精密性,可以快速、實時地反應魚塘水質(zhì)的變化。傳感器節(jié)點的結構圖如圖2所示。其中Zigbee RF收發(fā)器模塊的芯片版本為CC2530。
CC2530芯片和前幾個版本相比,在節(jié)點設計上有了一定的提升,非常適用于TI的IEEE 802.15.4標準的2.4G RF收發(fā)器,其頻率可以控制在2400-2483.6 MHz區(qū)間內(nèi),速率最高可以達到250Kb/s。
對系統(tǒng)的硬件部分進行設計時,重點對ZigBee無線通信模塊進行設計,ZigBee無線通信模塊主要包含Zigbee RF收發(fā)器模塊、數(shù)據(jù)結構單元、傳輸構成等,其中Zigbee RF收發(fā)器模塊主要采用了TI系列的CC2530 芯片,ZigBee的CPU采用的是標準型號8051 CPU,該型號的選用,極大地保證了系統(tǒng)數(shù)據(jù)存儲時的性能,并且穩(wěn)定性較高。
ZigBee無線通信模塊的設計,保證了魚塘水質(zhì)監(jiān)測數(shù)據(jù)傳輸?shù)陌踩?、穩(wěn)定性和精確性,基于網(wǎng)關設備,采用CC2530 芯片來完成傳感器對數(shù)據(jù)的采集和處理,讓設備之間的通信能夠順利執(zhí)行下去。系統(tǒng)終端設備(如顯示器)主要通過USB接口來對主機進行了連接和通信,進而從主機中獲取魚塘水質(zhì)監(jiān)測數(shù)據(jù)。這樣的傳輸方式可以保證數(shù)據(jù)傳輸?shù)陌踩头€(wěn)定。終端數(shù)據(jù)還需要通過處理單元來對水質(zhì)參數(shù)進行整理并將該部分數(shù)據(jù)傳輸?shù)絽f(xié)調(diào)器。這些數(shù)據(jù)內(nèi)容主要包括魚塘水質(zhì)的溫度、濕度、PM2.5氣體、有毒氣體的具體數(shù)值。在設置了正常參數(shù)和邏輯判斷的情況下,通過對這些監(jiān)測數(shù)值進行采集并對比,很快便能實時反映出魚塘水質(zhì)的問題。通過對數(shù)據(jù)進行收集和整理,可以幫助系統(tǒng)更加直觀地將分析結果最終顯示出來。
基于Zigbee的魚塘水質(zhì)監(jiān)測系統(tǒng)的網(wǎng)絡拓撲構建,需要根據(jù)系統(tǒng)的具體需求選擇最合適的組網(wǎng)方式,常見的網(wǎng)絡拓撲形式主要包括網(wǎng)格、星形、樹形等。由于ZigBee網(wǎng)絡僅有1個協(xié)調(diào)器,路由器和終端節(jié)點較多,協(xié)調(diào)器在整個系統(tǒng)中起到了管理員的作用,需要對頻段設置固定的數(shù)值,進而方便系統(tǒng)終端能夠快速顯示檢測結果。協(xié)調(diào)器還可以對各類傳感器終端節(jié)點進行管理,通過對節(jié)點進行新增、刪除的操作,來對設備進行擴展、精簡。當檢測到魚塘水質(zhì)的有效信息后,主要通過檢測終端節(jié)點來對這些有效信息進行接收和發(fā)送。在系統(tǒng)的組網(wǎng)結構中,其包含的路由器、傳感器終端節(jié)點都屬于系統(tǒng)的網(wǎng)絡層的組成部分。終端數(shù)據(jù)主要根據(jù)具體的應用設置而進行顯示,并發(fā)生變化。
在對基于Zigbee的魚塘水質(zhì)監(jiān)測系統(tǒng)進行軟件設計時,其主要設計內(nèi)容就是對傳感器節(jié)點和中心節(jié)點的設計,因此,系統(tǒng)軟件部分的設計流程如圖3所示。其中傳感器節(jié)點主要負責通過傳感器來采集魚塘水質(zhì)的有效信息,并且以20秒為采集周期,將采集到的信息發(fā)送至中心節(jié)點。中心節(jié)點的主要作用就是接受傳感器節(jié)點傳輸過來的數(shù)據(jù)并進行預處理,再通過CDMA模塊將數(shù)據(jù)傳輸?shù)奖O(jiān)控中心,在對監(jiān)控中心傳輸數(shù)據(jù)的過程中,中心節(jié)點需要通過監(jiān)控網(wǎng)絡來對傳感器節(jié)點的網(wǎng)絡分配和地址進行查看。監(jiān)控中心主要由傳感器網(wǎng)絡管理和監(jiān)控模塊組成,其中監(jiān)控中心的界面主要通過VB語言開發(fā)而成,在對傳感器網(wǎng)絡進行管理的過程中,實際上就是TCP/IP協(xié)議和中心節(jié)點的通信,從而管理服務器外部網(wǎng)絡的IP地址。
圖3:系統(tǒng)軟件流程圖
圖4:CDMA數(shù)據(jù)傳輸串口調(diào)試狀態(tài)圖
本課題主要采用了IARSystems、IAREmbeddedWorkbench技術來對系統(tǒng)的軟件部分進行設計,其中IAREmbeddedWorkbench實際上是一個集成化的開發(fā)環(huán)境,可以支持不同類型芯片的嵌入式開發(fā),并且方便開發(fā)人員對程序進行編譯和走讀。
對于系統(tǒng)的網(wǎng)絡架構來說,最核心的設備就是協(xié)調(diào)器,協(xié)調(diào)器在系統(tǒng)的網(wǎng)絡結構中起到了非常重要的作用,主要負責對系統(tǒng)網(wǎng)絡的構建和管理,管理員用戶進入系統(tǒng)后,第一步就是對硬件進行初始化,然后就是對協(xié)議棧進行初始化。完成初始化之后,就可以直接啟動網(wǎng)絡,網(wǎng)絡成功啟動后,協(xié)調(diào)器可以對系統(tǒng)的終端設備進行通信,接收來自傳感器的采集數(shù)據(jù),并由USB接口將數(shù)據(jù)傳輸?shù)较到y(tǒng)終端界面。
終端節(jié)點的主要作用就是對傳感器數(shù)據(jù)進行接收、整理并進行顯示。當系統(tǒng)的硬件設備和協(xié)議棧初始化成功后,即可在終端開始對協(xié)調(diào)器進行搜索,并通過參與網(wǎng)絡,將傳感器采集并發(fā)送過來的數(shù)據(jù)傳送到協(xié)調(diào)器。終端的工作流程如圖3所示。
本課題通過對傳感器、協(xié)調(diào)器以及其他設備的設計和應用,以某魚塘為例,設計并實現(xiàn)了基于Zigbee的魚塘水質(zhì)監(jiān)測系統(tǒng)。系統(tǒng)通過1個中心節(jié)點和若干個傳感器節(jié)點,完成對水質(zhì)問題參數(shù)的設置后,通過對某魚塘水質(zhì)的溫度、電導率、pH值、濁度、溶解氧等進行實時檢測,檢測到的實際數(shù)據(jù)由傳感器節(jié)點發(fā)送到中心節(jié)點,通過CDMA模塊將數(shù)據(jù)傳輸?shù)奖O(jiān)控中心,在最終顯示到PC端,終端具體的顯示界面如圖4所示。
本課題研究的基于ZigBee技術的魚塘水質(zhì)環(huán)境監(jiān)測系統(tǒng)的設計與實現(xiàn),主要采用CC2530 芯片來系統(tǒng)的硬件部分進行設計。系統(tǒng)的最后的測試結果表明,系統(tǒng)終端能夠?qū)崟r接收到傳感器節(jié)點采集的魚塘水質(zhì)監(jiān)測數(shù)值,并且顯示出來。很好地解決了目前水質(zhì)監(jiān)測面臨的不能實時監(jiān)測并顯示數(shù)據(jù)、投入成功較高、傳輸過程容易受到其他因素的干擾等問題。系統(tǒng)具有較高的安全性、可靠性、精確性和實用性。