1 系統網絡架構設計
無線ZigBee網絡實現的數據采集系統由多采集節點組成,采用SNAP對等網絡協議實現ZigBee組網方案。節點功能包括溫度采集、壓力采集。在一個ZigBee數傳網絡中的采集節點,通過程序設置,節點與節點之間、節點與計算機之間可交互通信,設置帶數據包轉發功能或者不帶數據包轉發功能。主節點通過ZigBee數傳網絡對其余各節采用一種遠程函數調用手段實現數據采集,采集數據通過串口上傳到計算機。通過ZigBee OPC服務軟件,為力控組態軟件提供OPC服務,實現數據保存、備份、查詢等功能。ZigBee網絡由協調器、路由器和采集終端組成,如圖1所示。

圖1 ZigBee系統網絡柘樸圖
2 硬件設計
系統硬件設計主要包括三大部分,中央控制單元、溫度傳感器電路、壓力傳感器電路。控制單元核心采用具有射頻功能的ZIC2410單片機進行ZigBee數據采集處理與組建ZigBee數傳模塊網絡,傳感器處理電路采用儀表放大芯片OP07。溫度測量電路采用PTl00與20K電阻搭電橋組成。壓力測量采用電阻式壓力傳感器組成。
2.1中央控制單元設計
控制核心采用CEL公司生產的ZICM2410 ZigBee無線模塊,該模塊采用ZIC2410單片機,ZIC2410單片機是一個真正的單芯片解決方案,是一款真正意義上的ZigBee片上系統:集成了ZigBee無線收發器和一個單指令內嵌Flash空間的51CPU內核。它由一個含有基帶Modem的射頻收發器、硬連線的MAC和內嵌8051內核的微控制器(帶有內部Flash存儲器)組成。包括多個通用I/O引腳、定時器、UART、SPI等,以及硬件語音編解碼器,獨有的IIS/SPI/UART音頻輸入輸出接口,結合其擴展的500kbps或1Mbps的無線傳輸數率,可以滿足各測控領域的應用。其內部功能模塊如圖2所示。

圖2 ZIC2410內部功能模塊方框圖
2.2傳感放大電路設計
溫度、壓力采集采用三個OP07運算放大芯片,電路前級放大采用差分方式輸入,引入共模抑制電路,采用同相并聯差值比例輸入級和差分放大輸出級,其中U6和U8為兩個性能一致的的儀表放大芯片,U7工作于差動放大方式,用來抑制U6和U8的共模信號。R4與R11、R8組成負反饋網絡,使得整個電路增益穩定,降低噪聲、輸出阻抗,同時也使輸入阻抗增大。能有效提高共模抑制比。在放大電路前端采用差分輸入方式,能有效提高整個電路的共模抑制效果。設計中為提高其共模抑制能力,還增加了R18、R4的調零電路。

圖3 OP07設計的傳感器放大電路圖
2.3負電壓產生電路
由于現場無法安裝交流供電,數據采集模塊采用了蓄電池6V供電,但OP07需要負電壓供電,使其正常工作。負壓產生的方法比較多,本裝置采取了ICL7660變極性芯片。ICL7660是美國哈里斯公司生產的變極性DC—DC變換器,該芯片可以將正電壓輸入變為負電壓輸出,該芯片電壓范圍為1.5—10.5V,具有靜態電流小、轉換效率高、外圍電路簡單等優點。ICL 7660負電壓產生電路如圖4所示:

圖4 ICL7660負電壓產生電路
3 軟件設計
無線ZigBee數據采集系統由ZigBee數據采集節點以及負責和計算機進行通信的主節點(協調器),OPC服務器、力控組態軟件組成。為了縮短開發周期,降低開發風險,ZigBee數據采集節點采用了SNAP網絡協議棧開發,SNAP為內嵌Python虛擬機的ZigBee協議棧,可以編寫應用層腳本,編譯并空中下載腳本文件。為復雜的ZigBee數傳模塊網絡提供一個簡單、可靠、智能的完整組網方案,同時,因為使用“對等網絡”概念,功耗優化明顯,冗余性能優異。開發平臺采用Synapse公司的Porlal,該軟件集SNAP代碼編譯、SNAP節點管理等多種功能的綜合集成開發環境。
3.1主節點軟件設計
開發語言采用類似VB事件驅動的SNAP腳本,所有程序都由事件驅動。包括的事件有:啟動事件、GPIO電平變化事件、定時器事件、輸入輸出事件、遠程調用事件。SNAP協議棧底層封裝有大量庫函數以及SNAPpy虛擬機,腳本運行于SNAPpy虛擬機上,執行相應的硬件操作,或者調用網絡層發送數據包。
在SNAP協議棧里邊,節點之間通信采用遠程函數調用機調實現。主節點采用RPC遠程調用函數實現數據采集。
遠程過程調函數RPC(Remote Procedure Call),RPC函數基本格式如下:rpc(address,function,args),其中address表示單點傳輸地址,function表示遠程所要調用函數名稱,args表示傳遞參數。在終端節點數據采集函數名稱為Adresult(),所以在主節點中編寫的遠程調用語句為:rpc(” \xce\x00\x02",'ADresult,)'表示從IP地址為'%\ce\x00\x02"的終端節讀取溫度壓力數據。
3.2終端節點程序設計
終端節點的功能是ZigBee數據采集以及數據發送。在SNAP網絡協議棧中,數據傳送是通過遠程函數調用來實現。在終端節點,設計一個Adresult()的函數,實現數據采集,采集到的數據要傳遞回主節點,是采用遠程函數調用機調實現。在主節點編寫showresult()函數,這個函數用于被遠程終端節點調用,并且把遠程傳輸函數參數通過串口送往計算機。Adresult()函數被調用以后,開始進行溫度、壓力采集,調用showresult()函數,然后把自身的lP地址、溫度、壓力數據作為showresult()函數參數傳輸到主節點,完成一次節點數據采集。SNAP支持函數嵌套調用,Adresult()的代碼如下:rpc(',\xce\x00\x01",'showresult 7,myself,readadc(0),readadc(1),readadc(7)),這是RPC遠程調用函數,第一個參數是主節點,說明被調用的是主節點函數,第二個參數是被調用函數名稱showresult(),第三個參數是調用節點自身IP地址,第四個參數是溫度數據,第五個是壓力數據,第六個是電量。

圖5 主節點讀遠程節點過程
3.3上位機監測與報警系統軟件設計
上位機監測與報警系統采用力控組態軟件作為開發平臺,力控組態軟件是面向對象的設計思路,具有友好的開發環境、高效的數據處理能力、完善的用戶安全管理、良好的開放性等特點。可利用其靈活多樣的組態方式,進行系統硬件、軟件、網絡的組態集成,實現界面顯示,報警與事件,管理報表,信號處理,打印系統,設備管理。下面兩種是基于力控軟件與終端節點數據的交互采集方案。
3.3.1基于VB的DDE服務機制
利用VB開發和通過其串行通信控件進行數據采集,然后,根據力控支持Windows平臺下軟件之間的的數據通信、數據交換,組建DDE異構環境下不同系統之間的通信。DDE(DynamicData Exchange)技術是實現Windows下的應用程序之
間的數據交換,通訊時一應用程序作為客戶端(Client),另一應用程序作為服務端(Server)。在工程對時效要求較低時,此方案非常方便。
3.3.2 OPC
OPC是一套在基于Windows操作平臺的工業應用程序之間提供高效的信息集成和多功能的組件對象模型接I=I標準,它以微軟的組件對象模型COM/DCOM/COM+技術為技術基礎采用客戶/服務器模式。OPC標準優點是:①高速的數據傳輸性能;②節省多種采用服務器、硬件驅動的昂貴開銷,降低了開發成本;③具有開放性,互聯性。總之,OPC最主要的目標就是實現靈活、高效、方便地獲取數據,易于掌握和實施即插即用。ZigBee無線模塊網絡OPC技術測控系統的基本結構如圖6所示。

圖6 0PC客戶/服務器關系圖
4 結束語
本文ZigBee數據采集系統應用ZigBee無線模塊實現了溫度、壓力的ZigBee數據采集,已成功應用于湖南、海南省等某檳榔食品生產企業的發酵罐溫度、壓力的測控系統的終端。由于現場沒法使用交流供電,而且發酵罐是低速旋轉的,采用本系統方案進行現場數據的測量,很好地解決了實際現場中綜合布線不方便和旋轉對象測控等實際問題。