《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于GPRS的嵌入式系統(tǒng)遠程監(jiān)控和升級
基于GPRS的嵌入式系統(tǒng)遠程監(jiān)控和升級
來源:電子技術應用2010年第5期
羅 文, 王莉娜, 肖 鯤
北京航空航天大學 自動化科學與電氣工程學院, 北京100191
摘要: 針對工作于偏遠地區(qū)的數據采集嵌入式系統(tǒng)的監(jiān)測維護和軟件升級問題,提出了一種基于GPRS網絡的嵌入式系統(tǒng)遠程監(jiān)控和軟件升級方案。方案由ARM和DSP為核心組成嵌入式系統(tǒng),以電子郵件為載體,通過系統(tǒng)對郵件的讀取和發(fā)送,實現遠程監(jiān)控系統(tǒng)和升級DSP程序。實踐表明,該設計方案具有遠程監(jiān)控穩(wěn)定性高、可靠性強的特點。
中圖分類號: TP274 TP393
文獻標識碼: B
Remote monitoring and software upgrade of embedded system based on GPRS
LUO Wen, WANG Li Na, XIAO Kun
School of Automation Science and Electrical Engineering,Beijing University of Aeronautics and Astronautics, Beijing 100191,China
Abstract: To solve the issue of remote monitoring and software upgrades of the data acquisition embedded system which works in remote areas,a plan ,which is based on GPRS network,for the remote monitoring and software upgrades of embedded system has been proposed.The program whose embedded system is composed by ARM and DSP,depends on the embedded system for reading and sending the email in order to monitor the system and updating the program of DSP remotely.The practice proves that the design project has the characteristics of remote monitoring successfully with high stability and reliability.
Key words : GPRS; E-mail; embedded system; remote monitoring; software upgrade

   通用分組無線服務技術GPRS(General Packet Radio Service)是一種移動數據業(yè)務,該技術能滿足日常網絡行為,具有廣域覆蓋、高速傳輸等優(yōu)點。野外作業(yè)的數據采集嵌入式系統(tǒng)工作于偏遠無人地區(qū),通常這些采集系統(tǒng)基于GPRS無線網絡來傳輸遠程數據,但系統(tǒng)的維護和升級受到距離和環(huán)境的較大限制,不但成本高,而且周期長。
 為實現遠程監(jiān)測和升級野外作業(yè)嵌入式系統(tǒng),本文提出一種基于GPRS網絡、以電子郵件為載體的嵌入式系統(tǒng)遠程監(jiān)控和升級方案,達到遠程修改系統(tǒng)參數、索取系統(tǒng)自檢報告、索取指定數據文件和升級系統(tǒng)主控程序等目的,實現嵌入式系統(tǒng)的遠程監(jiān)控與升級。
   與目前大多數嵌入式系統(tǒng)遠程監(jiān)控和升級的途徑相比,這種以電子郵件為載體、系統(tǒng)定時收發(fā)郵件的方法,實現了系統(tǒng)的多功能性與靈活性,同時較好地滿足了野外作業(yè)嵌入式系統(tǒng)低功耗的要求。
1 系統(tǒng)結構及遠程監(jiān)控與升級
1.1 系統(tǒng)結構

 嵌入式系統(tǒng)中的控制部分由ARM芯片(采用基于三星S3C2440-30的ARM9)和DSP芯片(采用TI公司的TMS320VC5509)[1]組成。ARM和GPRS Modem模塊通過RS232串口進行連接,系統(tǒng)通過ARM利用GPRS Modem模塊上網并訪問網絡郵箱,從而進行相應的操作。系統(tǒng)結構如圖1所示。DSP作為主控單元完成數據采集和處理,ARM則負責數據后期處理和網絡訪問。

   ARM是DSP的從設備,兩者通過串口通信。其中,DSP端是多通道緩沖同步串行端口McBSP[2],而ARM端則是異步串口UART。為了在不增加外部復雜硬件的條件下實現兩者通信,必須統(tǒng)一兩端傳輸數據的格式[3]。
 遠程監(jiān)控與升級過程中,為保證DSP和ARM之間數據傳輸的可靠性與穩(wěn)定性,系統(tǒng)采用CRC8校驗的數據傳輸方式:數據發(fā)送端發(fā)送每組數據時都附帶發(fā)送此組數據的CRC校驗碼,數據接收端收到數據后重新計算數據的CRC校驗碼,對兩端得到的CRC校驗碼相比較,相等則請求發(fā)送端發(fā)送下一組數據,不相等則請求重發(fā)本組數據。
1.2 系統(tǒng)遠程監(jiān)控和升級的總體流程
 系統(tǒng)遠程監(jiān)控和升級的示意圖及整體工作流程分別如圖2、圖3所示。系統(tǒng)進行遠程監(jiān)控和升級時,首先登錄指定郵箱,分析后獲取命令列表并記錄各命令郵件的內容,然后對命令列表中的每1個命令進行分析,完成相應的任務,包括:修改系統(tǒng)參數、發(fā)送系統(tǒng)自檢報告、發(fā)送指定數據文件和升級DSP程序。任務完成后系統(tǒng)自動返回報告郵件,告知本次操作的情況。整個系統(tǒng)基于GPRS網絡,以電子郵件為載體,通過系統(tǒng)對郵件的讀取和發(fā)送,達到遠程監(jiān)控和升級系統(tǒng)的目的。

2 系統(tǒng)的遠程監(jiān)控
 系統(tǒng)的遠程監(jiān)控,是通過對系統(tǒng)中裝有嵌入式操作系統(tǒng)WinCE[4]的ARM進行網絡編程[5],基于GPRS無線網絡實現其對電子郵件的讀取與發(fā)送,其中涉及到了最常用的電子郵件收件協(xié)議POP3(Post Office Protocol 3)和發(fā)件協(xié)議SMTP[6](Simple Mail Transfer Protocol)。
2.1 系統(tǒng)遠程監(jiān)控原理
 如表1所示,系統(tǒng)接收遠程命令是基于對命令郵件的讀取。命令郵件由兩部分構成:主題命令和郵件內容。主題命令(即郵件的主題)為單個小寫英文字母,不同的字母代表著系統(tǒng)將要完成的功能;郵件內容則包括了系統(tǒng)的新參數、需反饋的數據文件名、新的DSP程序等具體數據信息。


 系統(tǒng)發(fā)送的郵件包括數據文件和報告文件,都以電子郵件附件的形式傳送。數據文件反映系統(tǒng)采集的物理數據或自身的狀態(tài)信息;報告文件則是對每次遠程監(jiān)控命令的回執(zhí),表明本次操作是否成功。
2.2 遠程監(jiān)控中郵件的讀取和發(fā)送
 系統(tǒng)遠程監(jiān)控時檢查郵箱中郵件的流程如圖4所示。所發(fā)送郵件的主題subject即代表了系統(tǒng)需要完成的任務,例如“修改系統(tǒng)參數”、“發(fā)送自檢報告”、“索取指定文件”和“更新DSP程序”的郵件主題分別是單個小寫字母a、b、c、d,而其余類型主題的郵件都被系統(tǒng)識別為無效郵件而濾掉。因此,系統(tǒng)在讀取郵件時,先選出符合系統(tǒng)要求的郵件加入命令列表,再根據其代表的命令實現相應的功能。其中,最后一步刪除郵件是為下次讀郵件做準備,保證了系統(tǒng)再次讀取的郵件都是最新的,避免了對已讀郵件的重復操作,提高了可靠性。

 系統(tǒng)以電子郵件附件的形式發(fā)送數據文件和報告文件。實驗中發(fā)現,當發(fā)送的郵件小于2 KB時偶而會出現發(fā)送“偽成功”的情況,即程序顯示郵件發(fā)送成功,但郵箱中卻沒有收到郵件。所以,在發(fā)送小于2 KB的郵件時,先用“空格”將其補足2 KB后再發(fā)送。實驗證明,在進行郵件大小補足后,沒有再出現過“偽成功”的現象。
3 系統(tǒng)的遠程升級
 系統(tǒng)基于GPRS網絡,完成對郵箱中DSP新程序代碼的讀取,然后利用串口通信和Bootloader技術實現DSP程序的遠程升級。系統(tǒng)內部的ARM和DSP采用串口通信,統(tǒng)一了兩端收發(fā)數據的格式并建立了可靠的數據傳輸機制,保證了通信的穩(wěn)定性。
3.1 遠程升級系統(tǒng)DSP程序原理
 系統(tǒng)采用TI公司的TMS320VC5509芯片作為主控單元。TMS320VC5509片內具有128 KB的高速靜態(tài)RAM,片內ROM中固化了引導加載程序Bootloader(簡稱“DSP5509”),其Bootloader設置為外部SPI串行啟動模式,外部儲存媒介為 Flash。系統(tǒng)上電后,DSP5509在Bootloader引導下自動加載儲存在片外Flash指定地址空間中的程序到片內的高速RAM中運行。
 遠程升級系統(tǒng)中,DSP程序是基于DSP5509的Bootloader技術[7]。將新的DSP5509程序按照一定的格式編碼后發(fā)送到系統(tǒng)指定的郵箱中,系統(tǒng)利用GPRS模塊訪問此郵箱并讀取出新程序,然后將新程序通過串口發(fā)送給DSP5509且保存到片外Flash的指定地址空間中。發(fā)送和保存結束后自動復位并重啟DSP5509,在Bootloader的引導下DSP5509從外部Flash中加載并運行新程序,從而完成DSP5509程序的更新升級。
3.2 系統(tǒng)遠程升級時的流程
 在系統(tǒng)進行遠程升級時,內部的DSP和ARM之間存在著較大數據量的傳送,必須建立可靠的數據傳輸機制才能保證通信的穩(wěn)定性。因此,系統(tǒng)將待發(fā)送的數據進行分割以分組形式傳輸,即將待發(fā)送的M字節(jié)數據分割成(x+1)組發(fā)送,前x組每次發(fā)送m=M/x個(M/x取整)字節(jié),最后一組發(fā)送剩下的s=(M-m×x)個字節(jié)(若M/x為整數,則只需發(fā)送x組數據)。同時,DSP或ARM每次發(fā)送的數據格式均為3in1模式,即:(第1個字節(jié)表示本次發(fā)送數據的字節(jié)數+中間部分為m或者s字節(jié)的數據+最后1個字節(jié)為數據的CRC校驗碼),如圖5所示。

    遠程升級DSP程序時,DSP端程序流程如圖6所示。ARM將從郵箱中讀取新程序代碼傳送給DSP,數據的傳送采用基于CRC8校驗的數據傳輸方式。其中,DSP先將ARM發(fā)送來的數據保存到Flash中(地址為70000h~7FFFFh的sector7中)。在確保DSP正確無誤地接收完所有從ARM發(fā)送來的程序代碼后,才將sector7中的數據轉存到地址為00000h~0FFFFh的sector0中。sector0是DSP指定外部儲存程序的地址空間,保證了遠程升級的可靠性。如果傳輸過程中重傳次數超過上限N,則說明此次傳輸可靠性降低,系統(tǒng)取消本次升級,保證系統(tǒng)的安全與穩(wěn)定。

  實驗中,系統(tǒng)準確識別和讀取了郵箱中的命令郵件,根據命令完成了相應任務;系統(tǒng)發(fā)送郵件時,成功地將數據文件和報告文件以電子郵件附件的形式發(fā)送到指定郵箱;測試遠程升級功能時,準確無誤地實現了系統(tǒng)的主控程序更新。整個遠程監(jiān)控和升級的過程穩(wěn)定、可靠。
    本系統(tǒng)基于GPRS網絡、SMTP協(xié)議、POP3協(xié)議、串口通信和DSP的Bootloader等技術實現了嵌入式系統(tǒng)的遠程監(jiān)控與升級,既能遠程修改系統(tǒng)的參數,又能獲取系統(tǒng)自檢報告、指定數據文件,并且實現主控程序的遠程更新升級。整個系統(tǒng)在網絡通信和串口通信的過程中都采用了嚴密的應答機制和數據校驗規(guī)則,充分地保證了通信的可靠性和快速性,從而實現了系統(tǒng)的穩(wěn)定性。實驗證明,該系統(tǒng)在保證穩(wěn)定性和可靠性的同時,降低了設計成本,縮短了維護周期,并且具有良好的擴展性。
參考文獻
[1]    Texas Instruments Incorporated著.TMS320VC55x系列DSP的CPU與外設[M].北京:清華大學出版社,2005.
[2]    Texas Instruments, Incorporated. TMS320V5501/5502/5503/5507/5509/5510 DSP(McBSP) reference guide[S]. 2004.
[3]     張坤,張冠勇,王樹勛.McBSP在DSP與PC機通信中的研究與設計[J].電子設計應用,2003,2(7):28-30.
[4]     何宗鍵.Windows CE嵌入式系統(tǒng)[M].北京:北京航空航天大學出版社,2006.
[5]     周立功.ARM&WinCE實驗與實踐——基于S3C2410[M]. 北京:北京航空航天大學出版社,2007.
[6]     付祝財,楊莘元,王陽.電子郵件SMTP/POP3收發(fā)協(xié)議的研究與實現[J].信息技術,2004,28(8):57-59.
[7]     徐勝,管慶.TMS320C5000的Bootloader技術[J].電子產品世界,2003,10(03A):41-44.

此內容為AET網站原創(chuàng),未經授權禁止轉載。