唐艷榮,馮能蓮,郭靖
(1.安徽農(nóng)業(yè)大學 工學院,安徽合肥230036;2.北京工業(yè)大學,北京100022)
數(shù)據(jù)采集系統(tǒng)是指將溫度、壓力、電壓、電流、位移等模擬量采集、轉(zhuǎn)化為數(shù)字量后,由計算機存儲、處理、顯示或打印的系統(tǒng)[1]。而在實際應用中,往往由于煤田、礦井等惡劣環(huán)境的現(xiàn)場數(shù)據(jù)或大量分布廣泛的現(xiàn)場數(shù)據(jù)不方便進行現(xiàn)場采集[2],這就需要采用現(xiàn)代遠程采集技術來解決。
隨著移動通信技術的迅速發(fā)展[3],利用無線網(wǎng)絡實現(xiàn)遠程監(jiān)控和數(shù)據(jù)傳輸被廣泛應用于各個領域[4]。作為第2代移動通信向第3代過度的技術[5],GPRS網(wǎng)絡比現(xiàn)有的GSM網(wǎng)絡有以下優(yōu)點:實時在線、快速登錄、按流量計費、傳輸速率高、支持IP協(xié)議和X.25協(xié)議等[5-7]。本文介紹的系統(tǒng)是以GPRS網(wǎng)絡為傳輸網(wǎng)絡,飛思卡爾單片機為控制核心,通過各種傳感器采集混合動力試驗臺架的實驗數(shù)據(jù),經(jīng)A/D口轉(zhuǎn)化為數(shù)字量,再由單片機控制GPRS模塊將數(shù)據(jù)傳輸?shù)缴衔粰C——監(jiān)控中心。
基于GPRS技術的遠程數(shù)據(jù)采集系統(tǒng)的總體結構如圖1所示。按功能可分為3個部分:上位機、下位機和通信網(wǎng)絡。其中上位機是監(jiān)控中心,下位機用于現(xiàn)場采集數(shù)據(jù)及控制,而通信網(wǎng)絡則是把下位機的數(shù)據(jù)傳輸?shù)缴衔粰C。
圖1 系統(tǒng)總體結構圖
為了給用戶提供一個可視化的檢測界面,上位機采用面向?qū)ο蟮木幊誊浖B編寫的。監(jiān)測界面由控制模塊、實時繪制曲線模塊,數(shù)據(jù)接收顯示模塊、數(shù)據(jù)保存模塊和GPRS通信模塊5個部分組成。其工作原理是:創(chuàng)建一個服務器Socket類,設置其LocalPort屬性,使其作為偵聽端口;然后使用Listen方法進入偵聽狀態(tài),等待客戶機程序的連接請求,若有客戶機發(fā)出連接請求,服務器程序則產(chǎn)生ConnectionRequest事件;連接成功后,服務程序用Accept方法接受客戶機程序的requestID請求,這樣服務程序就可以用SendData方法發(fā)送數(shù)據(jù);當服務程序接收到數(shù)據(jù)時,產(chǎn)生DataArrival事件,用GetData方法接受數(shù)據(jù)。接收到的數(shù)據(jù)經(jīng)過TCP/IP包解析處理后用iplotx控件進行實時曲線繪制,使用Text控件顯示,List控件進行保存。用Socket控件實現(xiàn)GPRS網(wǎng)絡通信必須要將GPRS網(wǎng)絡與Internet網(wǎng)絡連接,其方法是上位機要在具有一個獨立公網(wǎng)IP地址的PC機環(huán)境下運行,且上下位機要使用同一種協(xié)議。
下位機即現(xiàn)場數(shù)據(jù)采集系統(tǒng),是由控制核心、傳感器模塊、AD轉(zhuǎn)化模塊、GPRS模塊、PWM波模塊組成。其中控制核心為飛思卡爾DG128單片機,本身帶有AD模塊、PWM模塊、232串口通信模塊等。AD模塊有8路,可以同時轉(zhuǎn)換8路信號,PWM模塊也可以同時產(chǎn)生8路PWM波信號。
由于本系統(tǒng)中同時采集2路信號,故有2路傳感器:一路采集電壓信號;另一路采集位移信號。傳感器模塊把采集到的模擬信號經(jīng)過處理后送到單片機的AD口,AD模塊把模擬信號經(jīng)采樣、量化等處理轉(zhuǎn)化成數(shù)字信號,然后由單片機處理并通過串口把信號傳送到GPRS模塊,再由GPRS模塊發(fā)送到上位機;GPRS模塊也可以收到上位機發(fā)送的控制信號,然后傳遞到單片機,單片機根據(jù)控制信號命令產(chǎn)生相應的PWM波,從而控制被控對象。
GPRS通信模塊負責在上位機與下位機之間建立無線數(shù)據(jù)傳輸通道。一方面把下位機采集的數(shù)據(jù)封裝成TCP/IP包通過網(wǎng)絡傳送到上位機;另一方面把從網(wǎng)絡中接收的來自上位機的TCP/IP包解析成相應的二進制數(shù)據(jù)傳送給下位機。本系統(tǒng)采用的是SIM300 GPRS模塊,支持TCP/IP協(xié)議,提供RS232串行接口,支持標準AT指令。其實現(xiàn)網(wǎng)絡傳輸數(shù)據(jù)的步驟如下:
1)AT 檢查GPRS模塊是否可用,若回應OK,則模塊可用,否則模塊不可用;
2)AT+CCID 檢測是否裝有SIM卡;
3)AT+CQMR 檢測軟件版本,5.0以上的才有GPRS功能支持;
4)AT+CSQ 檢測信號質(zhì)量,確定是否可登上網(wǎng)絡,若返回(10~31,0)的信號數(shù)字則繼續(xù),如果信號是(99,99)則應該考慮不停的讓模塊搜尋網(wǎng)絡;
5)AT+CGCLASS="B" 設置模塊工作類型;6)AT+CGATT=1 激活 PDP,獲得 IP;
7)AT+CIPSTART = "TCP","211.71.95.192","2000" 網(wǎng)絡連接,設置TCP協(xié)議,IP地址和端口;
8)AT+CIPSEND 若返回“>”,則輸入要傳輸?shù)臄?shù)據(jù),再發(fā)送“CTRL+Z”,即將所要發(fā)送的數(shù)據(jù)發(fā)送到指定IP的服務器上,否則不能發(fā)送數(shù)據(jù);
9)AT+CIPCLOSE 斷開網(wǎng)絡連接,此命令只有在TCP/UDP處于CONNECT OK的狀態(tài)下才返回OK,否則返回ERROR。
在運行GPRS網(wǎng)絡傳輸數(shù)據(jù)的過程中,以上AT指令必須設置,且相鄰指令間須有延時,否則GPRS模塊無法正常工作。
整個遠程數(shù)據(jù)采集系統(tǒng)的軟件實現(xiàn)主要包括上位機監(jiān)控中心和下位機單片機控制的數(shù)據(jù)采集設備的軟件設計。其中上位機監(jiān)控中心軟件設計主要是顯示客戶端IP地址、端口號、數(shù)據(jù)顯示、存儲、實時繪制曲線以及與下位機進行通信和遠程控制;下位機以飛思卡爾DG128單片機為核心,輔助外圍設備,主要負責各個功能模塊的調(diào)度。在軟件設計過程中,上位機和下位機的通信協(xié)議是TCP/IP協(xié)議,這是因為TCP/IP協(xié)議可以直接與Internet互通;其次TCP協(xié)議是基于連接的協(xié)議,在傳輸?shù)倪^程中一旦發(fā)現(xiàn)問題就會發(fā)出信號,要求重新傳輸,知道所有數(shù)據(jù)安全正確的傳輸?shù)侥康牡?;再次TCP協(xié)議的數(shù)據(jù)格式是“TCP頭部+實際數(shù)據(jù)”,TCP數(shù)據(jù)頭包括源和目標主機端口號、順序號、確認號、校驗字等,這樣可以提高數(shù)據(jù)傳輸?shù)男室约皽p少誤碼、丟失數(shù)據(jù)等的情況。主程序結構如圖2所示。主程序初始化后進入循環(huán)狀態(tài),有數(shù)據(jù)傳輸過來時執(zhí)行中斷,對數(shù)據(jù)進行處理,然后執(zhí)行相應的操作,否則一直處于等待狀態(tài),直到有新的數(shù)據(jù)要接收。
圖2 主程序結構圖
本次試驗以混合動力試驗臺架為被控對象,采集的主要參數(shù)是其臺架上電機的轉(zhuǎn)速和轉(zhuǎn)矩。圖3~4分別是試驗前、后上位機界面圖。
圖3 試驗前上位機界面
圖4 試驗中上位機界面
比較圖3與圖4可看出,當GPRS通信連接后,上位機和下位機便可通信,圖4中顯示的客戶端IP即下位機的IP地址。下位機有數(shù)據(jù)傳輸時,上位機便可以在文本框中顯示出傳輸數(shù)據(jù),且在列表框中也可顯示,還可保存,同時接收到的數(shù)據(jù)也可被實時繪制成曲線并加以保存。從圖4中曲線變化可看出轉(zhuǎn)速和轉(zhuǎn)矩的變化情況,當上位機一直操作加速這一動作,電機就會一直加速,當上位機不進行操作,電機則保持當前的速度勻速轉(zhuǎn)動。
本文主要以公共無線廣域網(wǎng)絡作為載體,將遠程環(huán)境采集到實時數(shù)據(jù),通過無線GPRS模塊傳送到控制中心,實現(xiàn)遠程監(jiān)控及實現(xiàn)數(shù)據(jù)管理。系統(tǒng)運行穩(wěn)定可靠,克服了傳統(tǒng)環(huán)境監(jiān)測系統(tǒng)存在的問題,滿足了對環(huán)境監(jiān)測的要求。這一系統(tǒng)只要稍作改動,就可應用于電力抄表、農(nóng)業(yè)生產(chǎn)監(jiān)測、交通狀況監(jiān)測、礦井監(jiān)測等領域,應用前景廣泛。
[1]薛家駒.基于GPRS的遠程數(shù)據(jù)采集系統(tǒng)[D].杭州:杭州電子科技大學,2006.
[2]吳葉蘭,廉小親,張曉力,等.一種基于GPRS的無線數(shù)據(jù)采集終端設計[J].微計算機信息,2010,(20):55-57.
[3]蔣學程,趙國良.單片機數(shù)據(jù)無線傳輸[J].應用科技,2005,(4):28-30.
[4]侯婷,楊洪業(yè),李俊芬,等.GPRS無線數(shù)據(jù)傳輸終端的設 計和實 現(xiàn)[J].微 計 算 機 信 息,2006(23):287-289,159.
[5]韓亞東.基于GPRS技術的無線遠程監(jiān)測系統(tǒng)的研究與設計[D].武漢:武漢理工大學,2009.
[6]郭啟軍.基于GPRS的無線數(shù)據(jù)傳輸系統(tǒng)的研究與設計[D].浙江:浙江師范大學,2009.
[7]逄棟.基于GPRS的無刷直流電機的遠程監(jiān)控系統(tǒng)[D].江蘇:江蘇大學,2010.