文獻標識碼: A
文章編號: 0258-7998(2011)12-0033-04
目前,典型的水情測報系統一般由傳感器、遙測站和數據中心(上位機)構成。其中遙測站常常被放置于遠離城市的偏遠地方甚至野外,因其環境惡劣,為系統的建設、維護、檢修等帶來了很大的困難[1]。水情測報系統復雜而龐大,而如何實現現場遙測站與數據中心的通信也是水情測報系統中必須要解決的問題。本文提出了一種基于GPRS的水情測報系統,通過采用GPRS無線通信技術實現了現場遙測站與數據中心之間的透明傳輸。通過實際應用,該系統具有可靠性高、可擴展、檢測精確、維護方便等優點。
通用分組無線業務GPRS(General Packet Radio Service),是在現有GSM系統上發展出來的一種新的承載業務,目的是為GSM用戶提供分組形式的數據業務。GPRS允許用戶在分組交換模式下發送和接收數據,從而提供了一種高效、低成本的無線分組數據業務[2-3]。在有線不普及和布線困難的地方,借助于無線手段,使整個系統具有工程造價和資源成本低、傳輸數據受地域的影響小、可靠性高、維護率低的特點。GPRS技術大幅提高了網絡資源的利用率,是目前無線數據傳輸應用中最廣泛的技術之一[4]。本文采用GPRS技術作為遙測站與數據中心之間數據傳輸的通道,成功實現了對水情的實時在線檢測。
1 系統總體結構
基于GPRS的水情無線采集系統的總體結構如圖1所示,系統主要由現場遙測站、數據采集傳輸網絡(GPRS和Internet)及數據中心構成。
遙測站安裝在水庫、大壩、海口等現場,主要實現對水情的各種參數的實時采集、處理、存儲等功能,并將測量到的信息(如雨量、水位等)通過GPRS模塊發送給無線傳輸網絡,同時將GPRS模塊作為接收數據中心相關命令的有效途徑。遙測站既可以通過數據中心的命令控制其工作,也可脫離數據中心單獨工作。單獨工作時,其相關參數及命令通過遙測站面板上的按鍵輸入。
數據中心安裝在水利部門的辦公樓內,通過Internet網絡完成對遙測站發送過來數據的接收、處理、存儲、信息查詢和編制水文圖表等功能。另外,還能通過Internet網絡實現向現場遙測站發送相關參數和命令的功能。
數據采集傳輸網絡由GPRS無線模塊和Internet網絡構成,它是現場遙測站與數據中心之間的無線數據傳輸通道,其傳輸過程是:遙測站將現場采集到的數據,傳至微處理器,利用GPRS模塊對數據打包封裝后發送到GPRS網絡,GRPS網絡又將數據通過移動網關發送到Internet網絡,最后利用Internet將采集到的數據發送到連接互聯網的數據中心主機。數據中心向現場遙測站發送運行參數和命令的過程正好與上述相反。在遙測站的GPRS模塊上安裝一個SIM卡,將數據中心開通網絡服務,實現同互聯網的連接。這樣就可以通過GPRS和Internet網絡實現現場遙測站與數據中心主機之間的無線透明傳輸。
2 遙測站硬件設計
遙測站的硬件即數據采集終端,以AT91SAM9260ARM處理器為核心,包括一個高精度的MH-GA 超聲波物位儀、電源模塊、GPRS通信模塊(MC55)等。AT91SAM9260ARM處理器由A/D通道采集MH-GA超聲波物位儀的信號,經過分析處理保存,再通過RS232串口將水位數據發送給MC55無線模塊,并通過GPRS網絡將數據發送給數據中心。系統硬件框圖如圖2所示。
AT91SAM9260是愛特梅爾公司集成最新的ARM926-EJ-S[TM]ARM Thumb內核的工業級處理器,擁有8 KB數據緩存、18 KB指令緩存、MMU單元、在180 MHz頻率時有200 MIPS指令運行速度,內嵌1個32 KB ROM、2個4 KB RAM,集成有EBI、USB、DMA等外設[5];通過VDDCORE管腳提供內核電源(包括處理器、內嵌存儲器和外設),額定電壓為1.8 V,相應的接地引腳為GND;VDDANA管腳提供ADC額定電壓3.3 V的電源,接地引腳為GNDANA。數據采集過程充分利用內部ADC來完成,以降低功耗、減少芯片數量、提高可靠性。而且A/D接口在不用時還可作為GPIO使用。為給系統提供一個永久的低速時鐘,配有實時時鐘芯片PCF8563。為了方便數字語音、圖像、程序代碼和各種數據的存儲應用,處理器外圍電路還配有運行速度快,方便讀、修改和寫操作的DATA Flash芯片AT45DB161D。
2.1 采集模塊
由于現場情況特殊,選用的傳感器要具有抗干擾能力強,耐潮濕、耐高溫和耐腐蝕氣體及可靠性高、性能穩定等特點。本系統選用了MH-GA 超聲波物位儀。該儀器具有完善的物位測控功能、數據傳輸功能和人機交流功能。主芯片采用進口工業級單片機,數字溫度補償和寬電壓輸入穩壓等,擁有模擬量及RS485/232輸出,可方便與主機連接。
AT91SAM9260芯片內部帶有4路模擬信號輸入,是基于逐次逼近寄存器(SAR)的10 bit模/數轉換器(ADC)。本系統采用ARM9處理器內部的10 bit A/D實現數據的轉換。由于MH-GA超聲波物位儀輸出的是4 mA~20 mA的電流,而A/D接收的必須是電壓信號,因此需要電流取樣,在MH-GA和A/D之間加一個高精度電阻,讓電流經過150 Ω的采樣電阻轉換之后,通過RC濾波電路進行濾波,最后引出采樣電壓信號連接到A/D轉換器。傳感器輸出與A/D轉換器之間的連接如圖3所示。
通過設置休眠模式為0來選擇普通模式,設置控制寄存器ADC_CR的開始位為1 bit,寫入1觸發軟件觸發器,開始進行A/D轉換。ADC使用ADC時鐘來執行轉換,因此,設定單一的模擬值轉換為10 bit數據值時的取樣和保持時鐘周期為8 s。當一個轉換完成后,所產生的10 bit數字值被存儲在ADC_CDR和ADC_LCDR寄存器中,一直保持到一個新的轉換完成。當讀取一個ADC_CDR寄存器時,就會清除相應的EOC位,讀ADC_LCDR時清除DRDY位,并且EOC位與最后轉換的通道一致。
2.2 GPRS通信模塊
GPRS通信模塊是現場遙測站接入無線網絡的接口,同時也是實現遙測站與數據中心無線雙向通信的重要部件,其性能的好壞直接關系到水情測量系統是否能正常、穩定、準確地運行。為減少成本、縮短開發時間,本文選用MC55無線模塊。MC55為SIEMENS公司推出的被譽為當今世上最具價值、尺寸最小的三頻GSM/GPRS模塊,除具有普通GSM模塊的通話、短信、電話簿管理、電路交換數據(CSD)傳輸等功能和無線MODEM的GPRS連接功能外,內置完整的TCP/IP協議棧,不僅支持SOCKET 連接下的TCP/UDP數據傳輸,還支持HTTP、FTP、SMTP、POP3等上層應用協議[6]。MC55的使用說明如下:
(1)MC55的電源由單一電壓源VBATT+3.3 V~4.8 V供電。由于VDD引腳在電源掉電模式下無法工作,因此,VDD引腳用來判斷MC55是否處在電源掉電模式。
(2)MC55提供6個專用引腳與SIM卡連接;將MC55的CCVCC引腳與SIM卡的CCVCC引腳相連,作為SIM卡的電源,必須使用SIM卡的CCGND作為電源地。
(3)MC55的軟件存儲在快速閃存器的一個緊湊型的“疊層閃存/SRAM”設備中,靜態隨機存儲器為GPRS的連接提供了額外的存儲空間。
(4)MC55包含ASC0和ASC1兩個串行接口,為綜合人機界面提供最大的適應。
(5)關閉MC55模塊,必須使用指令“AT^SMSO”,確認MC55關閉后才能切斷電源。如果系統時常斷電,一定要有備用電池,以保證無線模塊的正常工作。
3 數據中心
數據中心主要由監控主機、數據庫服務器和打印機構成。其中監控主機通過固定IP接入Internet,然后再通過移動網接入GPRS網絡。這種連接方式相對于其他方式具有接人帶寬大、數據傳輸安全性高、實時性好及運行成本低等優點[7]。數據中心是水情測報系統采集信息的最終接收中心,具有雙重功能:(1)通過GPRS網絡和Internet網絡接收現場遙測站發送過來的數據采集信息,并對接收的信息進行檢查、存儲、顯示和打印等處理,從而實現對現場水情的實時在線監測功能;(2)將相關設置參數和控制命令一起打包通過Internet網絡、GPRS網絡、GPRS模塊(MC55)發送給現場遙測站控制單元,從而實現對遙測站的實時在線控制功能。
4 軟件設計
該數據采集終端選用目前較為流行的ARM處理器和Linux實時嵌入式操作系統。由于Linux具有開放源代碼、支持多種類型硬件驅動、內核更新速度快、網絡功能強、免費下載等優點,是嵌入式操作系統中完整廉價的開發工具[8]。
4.1 遙測站軟件設計
系統通過AT91SAM9260不斷檢測GPRS模塊是否有傳輸命令,如果有,則直接建立連接,將數據打包后發送給數據中心;如果沒有,則定時啟動A/D采集數據。本系統設定時時間為1 h,采集完成后先將數據保存,然后將存儲的數據根據傳輸協議打包封裝后,經串口發送給GPRS通信模塊,再利用AT指令控制GPRS通信模塊將數據發送到Internet網絡,最后數據就可以發送到數據中心。數據傳輸流程圖如圖4所示。
4.2 GPRS模塊與Internet的連接
由于GPRS(MC55)沒有在線模式和命令模式,所以對它的控制均通過AT指令[9]實現。AT指令是一個標準接口,指令和響應格式都很固定。MC55中內嵌了TCP/IP協議,其與Internet的連接需要用到如下指令:
(1)通過at^sics指令建立連接配置
at^sics=0,conType,GPRS0 /*配置連接類型為GPRS0,
連接ID為0*/
at^sics=0,user,liaocheng /*用戶名為liaocheng*/
at^sics=0,passwd,liaocheng /*密碼為liaocheng*/
at^sics=0,apn,cmnet /*GPRS接入點APN
選用公網默認值cmnet*/
(2)通過at^siss指令建立服務配置
at^siss=0,srvType,socket /*設置0號服務配置,
服務類型為SOCKET TCP客戶端*/
at^siss=0,conId,0 /*按0號配置連接*/
at^siss=0,address,socktcp://192.168.0.243;5000/*ip地址
也可以改為相應的主機域名,端口號設為5 000*/
(3)使用at^siso指令啟動連接
at^siso=0 /*開啟SOCKET連接*/
at^sisw=0,<ByteNum>/*請求0號服務器,
發送ByteNum個數據*/
at^sisr=0,<ByteNum>/*請求從Internet上
接收ByteNum個數據*/
請求發送的字節在TCP方式下不允許超過1 500個。
發送數據或者接收數據完成后,通過如下命令關閉Internet服務:
at^sisc=0
4.3 數據中心軟件設計
數據中心軟件同樣采用模塊化程序設計思想,主要實現水情測報系統的系統化、自動化,從而減少工作量,提高效率。數據中心軟件的主要模塊有:
(1)系統管理模塊:包括系統登錄,密碼修改、添加或者刪除系統信息等操作。
(2)數據通信模塊:用于顯示遙測站與數據中心的連接情況,并完成數據信息的接收及相關命令的發送。
(3)顯示查詢模塊:實現數據的存儲、查詢、刪除和打印、系統運行狀況、測站和系統的特征參數等;并且通過下拉菜單可以選擇特定的測報點和指定的日期進行查詢。
(4)用戶設置模塊:實現用戶信息的設置和修改。
(5)幫助模塊:為用戶提供方便快捷的在線式聯機幫助。
系統數據中心軟件選用VB6.0工具開發。VB6.0簡單易學、功能強、效率高。數據庫軟件有兩種選擇,一種是桌面數據庫Access,它是一種小型的數據庫;另一種是基于服務器端的數據庫SQL Server,無論在功能上還是容量上都比Access強大。但由于水情信息數據量小,且Access簡單好用、創建和配置都比較方便,因此,本設計選擇了Access作為數據庫。
本文利用GPRS技術實現水情測報系統中現場遙測站與數據中心之間的數據信號傳輸,在充分發揮GPRS網絡技術優勢的基礎上,同時借助現代計算機技術和嵌入式技術,設計了一種新型水情測報系統,成功實現了對現場水情的實時無線測報。應用結果表明,系統運行穩定可靠,能夠滿足防災減災的水情報汛的要求。而且該系統具有成本低、可靠性高、性能穩定等優點,對水情測報系統的建設具有重要的推動作用,有推廣價值。
參考文獻
[1] 崔藝馨.基于CDMA網絡的水情測報系統研究[D].山西:太原理工大學,2010.
[2] 劉有珠,李舒亮,朱杰斌.基于GPRS的低壓配電網實時管理系統[J].電力自動化設備,2009(4):131-134.
[3] 李昌盛,金甌.基于GPRS網絡的自動售貨機監控系統的設計與實現[J].計算機測量與控制,2008,16(3):327-329.
[4] 劉有珠,李舒亮,李杰斌.基于GPRS的低壓配電網實時管理系統[J].電力自動化設備,2009,29(4):131-134.
[5] AT91 ARM Thumb microcontrollers AT91SAM 9260 preliminary.pdf[EB/OL].http://www.atmel.com/dyn/resources/prod_documents/6221s.pdf.2007-09-05.
[6] SIEMENS Co.MC55/MC56 hardware interface description & MC55 AT command set & MC55 release notes[M].[S.1.]. 2005.
[7] 陳志武,楊學清,丁莉芬,等.基于GPRS的混凝土配料無線控制系統[J].計算機測量與控制,2010,18(11).
[8] 王蕾,陳功新,陸玲,等.基于ARM-Linux的嵌入式系統GUI開發研究[J].微計算機信息,2007(29):122-124.
[9] 王典洪,梁娟,熊月華,等.基于MC55和LPC2136的GPRS用電監測終端的實現[J].數據采集與處理,2006,21:258-261.