夏江濤
(南京信息工程大學物理與光電工程學院,江蘇 南京210044)
近年來,全球氣候異常現象越來越顯著,其引起的經濟損失日益嚴重。地面氣象觀測的氣象參數的實時性對人類生產生活有著重要的影響。同時,為了準確掌握一定區域內的氣象參數分布特征,則需要在監控區域內布置許多監控節點。傳統的自動氣象站節點采用的是多傳感器連接在同一采集板上的體系結構,大量的信號線不僅帶來信號的衰減和干擾,也限制了數據采集點布置的靈活性。尤其是在許多環境復雜多樣的野外區域內,不適合架設通信線路,這樣就限制了傳統自動氣象站的使用[1-3]。因此,利用ZigBee技術和GPRS/GSM 技術,構建了分布式無線監測網絡系統,解決了傳統氣象站有線傳輸的相關問題。
系統主要由監控中心、協調器節點、現場路由節點和終端節點等組成。所有的節點組成一個網狀的監測系統,其中,終端節點控制其上的相應傳感器對環境參數進行數據采集,通過ZigBee PRO協議傳輸數據到現場路由節點,路由節點負責將各個終端節點傳送來的數據傳輸到協調器節點,而協調器節點負責向遠程的監控中心傳送數據信息,同時也可以獲得監控中心發送來的指令信息并傳送給路由節點和終端節點。監控中心位于整個系統的最上層,負責與各個遠程現場的協調器節點進行數據通信,接收處理數據信息或發布控制指令。系統網絡拓撲結構如圖1所示。

圖1 系統網絡拓撲結構
JN5148是高性能的無線SOC表面貼裝模塊,對IEEE802.15.4與ZigBee PRO的應用具有針對性。JN5148自帶ZigBee PRO軟件構架,可以在現有的平臺上定義各自的應用方式,減少開發難度。ZigBee PRO協議棧的每一層初始化后,系統就進入低功耗模式,等待中斷到來喚醒系統而進入處理機制,適合于現場測量系統節點的應用需求。
JN5148模塊提供了大存儲、高性能CPU、超低功耗和優異無線RF包括在內的全面解決方案。模塊集成設備豐富,包括3個定時/計數器、4路12位ADC、2路12位DAC、21個通用I/O口等硬件資源,足夠滿足大部分網絡節點的硬件需求[4-6]。
系統采用JN5148模塊作為終端節點、路由節點及協調器節點的核心硬件,其中,協調器節點包括GPRS/GSM傳輸模塊,而終端節點包括傳感器電路模塊,如圖2所示。

圖2 終端測量節點結構
系統終端測量節點中的傳感器電路,包括溫度、濕度、雨量、風速、風向、氣壓和光照等7個氣象參數的檢測電路。其中,雨量和風向分別是通過雨量計和風向傳感器輸出的電壓信號來確定,可由JN5148的內置ADC直接采集信號強度即可。但是需要注意的是,傳感器的輸出電壓必須滿足ADC的輸入范圍要求,否則必須增加電壓調節電路來線性調節到3.6 V以內。風速的大小是由傳統杯式風速傳感器輸出的頻率信號來確定,可以直接由計數器來獲得測量值。因此,僅重點介紹其他4個氣象參數的傳感器電路。
考慮到測量準確度和系統集成小型化,采用瑞士Sensirion公司的SHT75數字溫濕度傳感器來測量溫度和濕度。SHT75具有高可靠性和長期穩定性,采用全量程標定,兩線數字接口,可與單片機直接相連,大大縮短研發時間、簡化外圍電路,而且體積小、響應迅速和低能耗,能夠適于野外多種場合的應用。SHT75的供電電壓選用3.3 V,在電源引腳之間集成有一個100 nF的濾波電容,而電源VDD與數據線DATA之間需要一個10 kΩ的上拉電阻。SHT75僅需要兩根線與處理器的Two Wire Serial Port端口相連,SCK為通信同步時鐘,DATA為三態結構,用于讀取傳感器數據。電路如圖3所示。當處理器向傳感器發送命令時,DATA在SCK的上升沿有效且在SCK高電平時必須保持穩定,DATA在SCK下降沿之后改變[7-8]。

圖3 溫濕度傳感器電路
大氣壓檢測電路的傳感器采用MS5803數字式氣壓傳感器。MS5803備有I2C和SPI接口,內部集成A/D轉換器,可輸出24位壓力和溫度數字信號,轉換時間最快1 ms,可氣密封裝,尤其適合戶外氣壓及高度測量。MS5803的內部結構由惠斯頓電橋組成傳感器,可檢測絕對壓力,電橋的差模信號經放大后由ADC轉換成數字量,經數字濾波后保存在數字接口的D1和D2中,供主機讀取。系統選用SPI總線與MS5803相連。電路如圖4所示。

圖4 氣壓傳感器電路
光照強度是氣象環保、環境監測中的重要參數,系統為了實現對光強的監測,選用了TAOS公司生產的光強數字轉換芯片TSL2561。TSL2561具有高速、低功耗、寬量程和配置靈活等優點,具有直接I2C接口,用于將光照強度轉換成數字信號輸出。TSL2561內部通道0的光敏二極管對可見光和紅外線都敏感,積分式A/D轉換器對流過光敏二極管的電流進行積分,并轉換為數字量存入芯片內部的寄存器中。TSL2561的硬件接口電路很簡單,可以直接使用控制器的I/O端口連接TSL2561的SCL和SDA,利用程序來模擬I2C總線的時序來訪問TSL2561。硬件連接如圖5所示[9-10]。

圖5 光強度傳感器電路
協調器節點、現場路由節點及終端節點之間的數據通信采用ZigBee無線技術實現,但是協調器節點與遠程監控中心的數據通信必須采用遠程數據傳輸方式來實現。綜合考慮到氣象監測系統分布靈活的特點,同時保證系統的工作可靠性要求,選用了GPRS/GSM的混合通訊方式來實現遠程通信,能夠提供端到端的、廣域的無線IP連接。協調器節點的電路結構如圖6所示[11]。

圖6 協調器節點結構
圖6中,JN5148內置的UART口與GPRS無線模塊MC55i連接。系統上電后,自動搜索GPRS網絡,進行注冊并連接。當協調器節點接收到監測網絡中傳輸過來的數據后,即可將協議封裝的打包數據通過GPRS網絡發送到遠程的監控中心。為保證系統的可靠性,選用GSM作為備用數據通道,一旦GPRS網絡出現故障或數據堵塞,可以立即啟動GSM短信通道和監控中心進行通信。

圖7 監控中心下位機結構
監控中心部分采用上位機和下位機的構成方式,其中,上位機為PC機,下位機由JN5148模塊和MC55i無線模塊構成,如圖7所示。JN5148模塊為下位機核心,負責處理數據流的傳輸控制,通過2個UART串口分別連接MC55i模塊和上位PC機,MC55i接收到遠程的數據后,經過JN5148的預處理,通過UART串口傳輸到上位機進行最后的數據處理。
考慮到氣象監測系統的監測點一般分布在野外,同時考慮到布點的靈活性,系統采用方便移動的太陽能供電系統。自然光強度足夠的時候,利用太陽能電板給系統供電,同時給電池充電。光照不足的時候,則利用電池維持系統的正常工作。系統采用的單晶硅太陽能電池板可以提供10 V以上的供電電壓,利用XC6202P系列高穩定性電壓轉換芯片實現3.3 V電壓供電。同時需要注意的是,在系統模塊處于不工作的時候,可以轉入低功耗的工作模式,以達到降低系統功耗的目的。
系統的軟件部分主要包括傳感器模塊程序、協議程序和上位機程序。其中,傳感器模塊程序和協議程序實現了控制器對傳感器的控制、數據采集、數據傳輸和節點網絡管理等任務。上位機程序工作于監控中心的PC機上,實現對整個網絡的監控、數據處理、數據顯示和數據存儲等任務。
基于JN5148的各監控網絡節點的開發環境采用Jennic CodeBlocks平臺。這個軟件是Jennic所提供的代碼編輯和編譯環境,和基于Cygwin的gcc編譯器進行連接完成代碼的編譯工作。Jennic Flash Programmer程序是用來將編譯好的二進制代碼文件下載到控制器板中的工具。802.15.4 Stack組件是ZigBee底層的協議棧,必須要安裝這個協議棧。ZigBee Stack協議棧是Jennic公司的ZigBee協議棧,如果是從802.15.4協議棧進行開發的話,可以不用裝該組件。如果是從ZigBee協議棧進行開發,那么就必須安裝這2個協議棧。
上位機監控軟件程序使用Lab VIEW 2012軟件環境開發。Lab VIEW使用的是圖形化編輯語言G來編寫程序,產生的程序是框圖的形式,其特殊的圖形程序簡單易懂,有利于提高開發效率及日后的軟件維護。Lab VIEW有一個龐大的函數庫,包括數據采集、串口控制、數據分析、數據顯示及數據存儲等。Lab VIEW提供很多外觀與傳統儀器類似的控件,可用來方便地創建人機交互界面,其引入的虛擬儀表的概念可以使得用戶能夠通過人機界面直接控制儀器[12-13]。
監測網絡的終端節點在上電后自動尋找網絡并加入,其主要任務是獲得傳感器采集的監測數據和數據的打包發送。在非工作狀態下,終端節點處于休眠模式,以節省能耗。終端節點主要軟件流程如圖8所示。協調器節點的主要任務是創建管理網絡,在網絡節點與監控中心之間傳輸數據,其主要軟件流程如圖9所示。

圖8 終端節點軟件流程

圖9 協調器節點軟件流程
設計了無線分布式氣象參數監測系統,各氣象參數的采集模塊能夠獨立工作,減少了信號的相互干擾。模塊化的設計使得系統組網靈活,各參數的測量節點可任意增減,終端節點經過簡單的配置即可加入網絡,實現無線數據傳輸,避免了有線傳輸方式安裝維護困難等問題。系統采用JN5148模塊作為核心,使用芯片自帶的ZigBee PRO協議棧作為監測網絡各節點間的通信協議,利用串行接口實現部分功能模塊、下位機和上位機之間的互聯,維護使用方便。在上位機中,采用Lab VIEW軟件開發人機界面,實時顯示各測點的監測數據。系統將Zig-Bee無線通信技術和測量技術緊密聯系起來,應用于氣象監測領域,實時監測各種氣象參數的變化,工作效果達到預期要求。系統可方便地移植到環境監測、水利監測等領域,具有廣泛的應用前景。
[1] 邸永強,夏江峰,高 宇.基于GSM短信的自動氣象站資料傳輸監控系統設計與實現[J].陜西氣象,2013,(3):33-35.
[2] 宋海濱.CAWS600型自動氣象站的開發和利用[J].空中交通,2012,(12):45-46.
[3] 牛 濤.基于CAN總線的船舶自動氣象站的研究[J].武漢船舶職業技術學院學報,2011,(6):22-23.
[4] 童 健.ZigBee模塊在高壓電機測溫系統中的應用[J].冶金動力,2013,(5):64-67.
[5] 王文釗,李 斌.基于ZigBee的智能家庭照明系統的設計[J].電腦與電信,2012,(6):40-42.
[6] 楊維國,殳國華.基于ZigBee模塊JN5139無線數據采集系統的設計與實現[J].電氣自動化,2010,32(1):54-56.
[7] 王 歡,黃 晨.高精度無線環境溫濕度測量系統設計研究[J].電子測量與儀器學報,2013,27(3):211-216.
[8] 張繼光,姜宗元,張 敏,等.HMP45D型溫濕度傳感器的測量原理與誤差分析[J].電子世界,2013,(7):113-114.
[9] 何安科.基于STM32與光強傳感器BH1750的無線路燈控制系統[J].企業科技與發展,2011,(20):15-17.
[10] 姜連祥,汪小燕.基于光強傳感器TSL256x的感測系統設計[J].單片機與嵌入式系統應用,2006,(12):43-45.
[11] 王 晶,陶維靑.MC55模塊在電力負荷管理終端中的應用[J].合肥工業大學學報(自然科學版),2010,33(9):1329-1332.
[12] 周紅標,劉 艷,殷榮華,等.基于STM32和 Lab-VIEW的光伏發電監測系統的設計[J].微型機與應用,2013,(10):23-25.
[13] 郭鳳雨,張 磊.基于Lab VIEW的多路液罐溫度與液位測控系統的設計[J].電子技術應用,2013,39(5):76-78.