《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于ARM處理器與GPRS技術(shù)的水廠監(jiān)控系統(tǒng)
基于ARM處理器與GPRS技術(shù)的水廠監(jiān)控系統(tǒng)
來源:微型機與應(yīng)用2010年第19期
郭榮祥,陳樹樹
(內(nèi)蒙古科技大學(xué),內(nèi)蒙古 包頭 014010)
摘要: 提出了基于ARM處理器LPC2103、GPRS技術(shù)、Visual Basic可視化編程軟件相結(jié)合的遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計。該系統(tǒng)改善了采用GPRS技術(shù)頻繁通信時存在的通信滯后、誤碼率較高的問題。簡化了GPRS模塊與PC機通信的軟件程序,降低了開發(fā)成本。
Abstract:
Key words :

摘  要: 提出了基于ARM處理器LPC2103、GPRS技術(shù)、Visual Basic可視化編程軟件相結(jié)合的遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計。該系統(tǒng)改善了采用GPRS技術(shù)頻繁通信時存在的通信滯后、誤碼率較高的問題。簡化了GPRS模塊與PC機通信的軟件程序,降低了開發(fā)成本。
關(guān)鍵詞: 遠(yuǎn)程監(jiān)控;LPC2103;GPRS技術(shù);MC55


    目前遠(yuǎn)程監(jiān)控主要有以下方式:短距離長線監(jiān)控、通過市話網(wǎng)、通過Internet網(wǎng)絡(luò)、通過自組網(wǎng)絡(luò)(CDPD網(wǎng))及通過數(shù)傳電臺監(jiān)控。
    短距離長線監(jiān)控和通過自組網(wǎng)絡(luò)自行建設(shè)通信網(wǎng)絡(luò),信號質(zhì)量得以保證,但建網(wǎng)初期投資巨大,運營期間維護(hù)耗費較高;通過市話網(wǎng)和Internet方式,通信效果好,信號量大,運營費用相對低廉,但接入網(wǎng)絡(luò)受到限制,且網(wǎng)絡(luò)運行效果取決于網(wǎng)絡(luò)運營商,難以達(dá)到工業(yè)現(xiàn)場覆蓋面;數(shù)傳電臺出現(xiàn)較早、應(yīng)用廣泛,信號傳輸實時性好、運行費用低,但建網(wǎng)初期投資巨大、傳輸范圍有限,易受空間無線信號干擾。
    通用分組無線業(yè)務(wù)GPRS(General Packet Radio Service)是在現(xiàn)有GSM系統(tǒng)上發(fā)展出來的一種新的承載業(yè)務(wù),目的是為GSM用戶提供分組形式的數(shù)據(jù)業(yè)務(wù)。
1 系統(tǒng)的總體結(jié)構(gòu)
    監(jiān)控系統(tǒng)由現(xiàn)場數(shù)字量和模擬量采集及處理、GPRS組網(wǎng)通信、監(jiān)測中心上位機軟件三部分構(gòu)成。其中,現(xiàn)場數(shù)據(jù)采集由系統(tǒng)監(jiān)控終端完成,終端同時具有分析、記錄采集數(shù)據(jù)供上位機查詢,并在現(xiàn)場出現(xiàn)異常事件時主動上傳報警信息的功能;GPRS通信網(wǎng)絡(luò)是監(jiān)測中心與現(xiàn)場監(jiān)控終端之間數(shù)據(jù)傳輸?shù)臉蛄?,使現(xiàn)場相關(guān)數(shù)據(jù)及時傳送到監(jiān)測中心計算機;監(jiān)測中心軟件一方面通過GPRS網(wǎng)絡(luò)與現(xiàn)場監(jiān)控終端進(jìn)行雙向通信,另一方面為用戶提供一個可視化界面。監(jiān)控系統(tǒng)的結(jié)構(gòu)如圖1所示。

    由于GPRS網(wǎng)絡(luò)的工作方式是以IP地址尋址為基礎(chǔ)的,所以上位機作為網(wǎng)絡(luò)的服務(wù)器端,指定固定的IP和端口號,而終端只需要簡單接入Internet,具備公網(wǎng)動態(tài)分配的IP地址即可。終端接入Internet具備IP之后,主動向上位機發(fā)送數(shù)據(jù)進(jìn)行連接。當(dāng)連接通道建立以后,上位機和終端即可以進(jìn)行雙工數(shù)據(jù)傳輸。
    上位機根據(jù)用戶要求,通過GPRS網(wǎng)絡(luò)向終端發(fā)送數(shù)據(jù)幀。終端接收到數(shù)據(jù)幀后,先分析內(nèi)容,再執(zhí)行相應(yīng)命令。
    系統(tǒng)的具體控制目的是在水廠監(jiān)控中心與水源地之間利用GPRS網(wǎng)絡(luò)實現(xiàn)遠(yuǎn)程監(jiān)控,在水源地處每口井都用繼電器模塊4060控制潛水泵的啟停,電量模塊采集電壓及電流等信號,控制器MCU通過GPRS模塊與控制中心進(jìn)行數(shù)據(jù)交換??刂葡到y(tǒng)分為三個單元:控制中心(一水廠)、水源地及二水廠。
2 系統(tǒng)硬件設(shè)計
2.1 控制器選型

    控制器MCU選用PHILIPS公司最新推出的基于32位ARM7TDMI-S、LQFP48封裝的LPC2103,其帶有32 KB嵌入的高速Flash存儲器,128位寬度的存儲器接口和獨特的加速結(jié)構(gòu)使32位代碼能夠在最大時鐘速率下運行。在完全掉電模式下,達(dá)到6 μA的低功耗水平,與高級51系列單片機相比,LPC2103具有極高的性價比優(yōu)勢,尤其是價格與單片機相差無幾。
    多個32位和16位定時器、一個改良的10位ADC、所有定時器上輸出匹配的PWM特性、以及具有多達(dá)13個邊沿或電平觸發(fā)的外部中斷管腳的32條高速GPIO線,使這些微控制器特別適用于工業(yè)控制和醫(yī)療系統(tǒng)中。2.2 EsayJTAG-H仿真器
    EasyJTAG-H仿真器是一款新型的仿真器,目前,可以支持LPC2103微控制器和部分ARM9芯片,支持ADS1.2集成開發(fā)環(huán)境,支持單步、全速及斷點等調(diào)試功能,支持下載程序到片內(nèi)Flash和特定型號的片外Flash,采用ARM公司提供的標(biāo)準(zhǔn)20引腳JTAG仿真調(diào)試接口。這款仿真器需要H-JTAG軟件(調(diào)試代理)的支持。
    H-JTAG是一款簡單易用的調(diào)試代理軟件,功能和流行的MULTI-ICE類似。H-JTAG包含兩個工具軟件:H-JTAG SERVER和H-FLASHER。其中,H-JTAG SERVER實現(xiàn)調(diào)試代理的功能,H-FLASHER則實現(xiàn)了Flash燒寫的功能。
    H-JTAG支持ARM公司的RDI接口。通過RDI接口,H-JTAG能夠支持大多數(shù)主流的ARM調(diào)試軟件。JTAG調(diào)試接口如圖2所示,調(diào)試結(jié)構(gòu)如圖3所示。

    調(diào)試軟件(AXD/RVDS/IAR/KEIL)通過RDI接口與H-JTAG SERVER進(jìn)行交互。H-JTAG SERVER通過與并口連接的JTAG調(diào)試板控制目標(biāo)板。H-JTAG提供了靈活的JTAG接口設(shè)置,通過設(shè)置H-JTAG可以支持不同類型的JTAG調(diào)試板,如WIGGLER、SDT-JTAG。
2.3 GPRS模塊選型
    電量模塊及繼電器模塊將采集到的數(shù)據(jù)通過RS232傳送到處理器,然后由GPRS模塊通過GPRS網(wǎng)絡(luò)將數(shù)據(jù)傳送到遠(yuǎn)端接在互聯(lián)網(wǎng)上的網(wǎng)路端控制中心。選用MC55外接SIM卡,即可通過串行協(xié)議與ARM處理器通信,將采集信息以資料包的形式,先通過PPP與運營商的Internet服務(wù)器連接,然后把資料包發(fā)送到Internet上。
    MC55包含了高性能GSM/GPRS應(yīng)用的所有解決方案:基帶處理器、供電電路、完整的無線電頻段電路(包括電源放大器和天線接口)、電源放大器是從供電電壓BATT+直接引出來的。MC55的軟件存儲在Flash中,靜態(tài)RAM為GPRS連接提供了額外的存儲空間。該單元應(yīng)用程序的物理接口是通過板對板的連接器來實現(xiàn)的。它是由50個針腳構(gòu)成,用來控制該單元、傳輸數(shù)據(jù)和聲音信號及供電。MC55包含ASC0、ASC1兩個串行接口,為綜合人機接口界面提供更大的適應(yīng)性。
2.3.1 啟動MC55
    通過ignition line/IGT(Power on)時,需要/IGT(Ignition)信號驅(qū)動到接地電壓至少100 ms,并且最少距離VDD的最后一個下降沿10 ms,可以通過使用一個開漏極/集極驅(qū)動電路避免電流流入該引腳。在電池供電應(yīng)用程序中,/IGT持續(xù)時間最少必須達(dá)到1 s,這段時間中連接充電器并且可以從Charge-only模式轉(zhuǎn)換到Normal模式。
2.3.2 關(guān)閉MC55
    (1)正常關(guān)閉程序——通過AT命令關(guān)閉
    最安全的方式就是通過發(fā)送AT ^ SMSO命令關(guān)閉。程序可以使MC55從網(wǎng)絡(luò)注銷,使軟件進(jìn)入安全模式并且在斷電之前保存數(shù)據(jù)。在這種模式下,只有RTC(實時時鐘)保持運行。關(guān)閉該裝置之前先發(fā)送
    ^SMSO:MS OFF
    OK
    ^SHUTDOWN
    發(fā)送AT^SMSO之后不要再發(fā)送其他的AT命令。這種方式為軟件關(guān)閉。
    (2)緊急情況關(guān)閉
    緊急情況關(guān)閉方法稱為硬件關(guān)閉,將板對板連接器的/EMERGOFF信號接地=直接關(guān)掉電源,軟件控制的應(yīng)用程序失效。
3 系統(tǒng)軟件設(shè)計
3.1 控制器LPC2103軟件設(shè)計

    控制器LPC2103的軟件功能主要分為三個方面:對現(xiàn)場采集量及繼電器I/O量的處理、預(yù)警功能及與GPRS模塊的通信?,F(xiàn)場電量模塊輸出的電量信號較復(fù)雜,主要表現(xiàn)在精度高、種類多,且含有大量冗余信息,LPC2103針對這些問題作出相應(yīng)處理,輸出具有校驗位、起始位、停止位的電壓、電流、功率等信號。當(dāng)采集量在允許范圍之外時,LPC2103做出預(yù)警響應(yīng),優(yōu)先上傳到監(jiān)控中心進(jìn)行報警。LPC2103與GPRS模塊通過串口發(fā)送AT指令實現(xiàn)通信。設(shè)計流程如圖4所示。

3.2 GPRS模塊設(shè)計
    在本系統(tǒng)中,GPRS模塊主要完成與LPC2103控制器之間的數(shù)據(jù)交換和通過移動公司的GPRS網(wǎng)絡(luò)與遠(yuǎn)端計算機進(jìn)行數(shù)據(jù)交換。模塊的串口發(fā)送AT命令實現(xiàn)對模塊的控制,該模塊的主要功能有:(1)內(nèi)嵌TCP/IP協(xié)議棧,能通過移動公司的GPRS網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)交換;(2)SMS短信息的發(fā)送與接收;(3)GPRS數(shù)據(jù)包最高可達(dá)1.5 KB;(4)GPRS模塊與ARM處理器器經(jīng)AT指令集通過串口進(jìn)行數(shù)據(jù)通信。GPRS模塊與ARM處理器完成數(shù)據(jù)收、發(fā)的程序流程圖分別如圖5、圖6所示。

3.3 上位機軟件的編寫
    上位機采用Visual Basic與組態(tài)王6.53進(jìn)行開發(fā),軟件設(shè)計主要包括通信程序的設(shè)計、數(shù)據(jù)管理程序的設(shè)計以及系統(tǒng)界面的設(shè)計。VB中提供了用于數(shù)據(jù)通信的MSCOMM通信控件,如何利用該控件提供的屬性、方法和事件是設(shè)計運行穩(wěn)定、數(shù)據(jù)傳輸正確的通信程序的關(guān)鍵。
    GPRS模塊通信過程的實現(xiàn):
    (1)查看SIM卡是否插入
    ①命令:AT+CPIN?
    ②響應(yīng):READY:正常
    ERROR:GPRS模塊未檢測到SIM卡
    (2)查詢是否附著GPRS網(wǎng)絡(luò)
    ①命令:AT+CGATT?
    ②響應(yīng):AT+CGATT=1:附著網(wǎng)絡(luò);AT+CGATT=0:未附著網(wǎng)絡(luò)
    (3)查詢是網(wǎng)絡(luò)信號強度
    ①命令:AT+CGREG?
    ②響應(yīng):0~31,0表示當(dāng)信號強度,>18時就可以進(jìn)行GPRS通信
    (4)撥號
    ①命令:ATD*99***1#
    ②響應(yīng):CONNNECT:撥號成功,可以進(jìn)行PPP交互
    NO CARRIER:撥號失敗
    本監(jiān)控系統(tǒng)使ARM處理器與GPRS模塊相結(jié)合,提高了系統(tǒng)的可靠性,解決了GPRS模塊頻繁通信出現(xiàn)的滯后性的問題,降低了數(shù)據(jù)的誤碼率。使用VB與組態(tài)王相結(jié)合設(shè)計的上位機程序,在保證了界面美觀性的同時,解決了PC機與GPRS模塊通信的問題,降低了開發(fā)成本。本系統(tǒng)已用于實際現(xiàn)場,效果良好。
參考文獻(xiàn)
[1] 廣州周立功單片機發(fā)展有限公司.PHILIPS LPC2103芯片使用手冊[M].2008.
[2] 范逸之.Visual Bsaic與RS232串行通信控制[M].北京:中國青年出版社,2005.
[3] 張新成,李慶亮.基于GPRS遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)的設(shè)計與實現(xiàn)[J].計算機工程與設(shè)計,2006,7(14):2561-2563.
[4] 廖勝.基于ARM嵌入式的遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計[J].科技信息,2007(1):44-46.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。