《電子技術應用》
您所在的位置:首頁 > 嵌入式技术 > 设计应用 > 工程机械车载监测终端软件远程升级的实现
工程机械车载监测终端软件远程升级的实现
2015年电子技术应用第5期
林晓松1,2,陈惠滨1,林少芬2,江小霞2
1.集美大学 信息工程学院,福建 厦门361021; 2.集美大学 轮机工程学院,福建 厦门361021
摘要: 针对工程机械车载监测终端软件远程升级和维护不方便的问题,提出一种基于LabVIEW和CDMA网络的无线远程升级方法。基于LabVIEW设计的应用程序升级平台可通过以太网将嵌入式单片机应用程序按照制定的协议标准分包,并发送到远程车载监测终端,终端通过CDMA无线网络获取并解析数据。在IAP软件升级过程中,采用CRC16校验方式降低通信过程的误码率,保证应用程序远程升级的准确性,提高了工程机械车载监测终端的可维护性。
中圖分類號: TP393
文獻標識碼: A
文章編號: 0258-7998(2015)05-0156-03
Implementation of remote upgrade of monitoring terminal software in construction vehicle
Lin Xiaosong1,2,Chen Huibin1,Lin Shaofen2,Jiang Xiaoxia2
1.Information Engineering Institute,Jimei University,Xiamen 361021,China; 2.Marine Engineering Institute,Jimei University,Xiamen 361021,China
Abstract: Aiming at the problems of remote software upgrading and maintenance of monitoring terminal for construction vehicle,a method of wireless remote upgrade based on LabVIEW,CDMA network and ATMEGA128 is put forward. The designed software of upgrade platform based on LabVIEW allows application program to be sent to the remote monitoring terminal of construction vehicle according to the designed protocol standards, and the terminals obtains and analyses the data via CDMA wireless network. During the update, the CRC16 is used to reduce the BER(Bit Error Rate) in communication, which guarantees the accuracy of remote software upgrade and improves the maintainability of monitoring terminal for construction vehicle.
Key words : remote upgrade;IAP;CDMA;communication protocol

   

0 引言

    長期以來,工程機械安全作業形式嚴峻,開發面向工程機械的車載監測終端可有效地監測工程機械的施工狀態、預警故障等,為故障診斷提供方便[1]。然而,若車載監測終端軟件出現故障或需要增加程序功能,技術人員需要到現場下載程序,這使車載監測終端的升級和維護受到了距離和環境的限制[2,3]。因此,需要建立一套行之有效的遠程升級方案,提高車載監測終端的可維護性[4]

    本文以文獻[5]中的工程機械車載測試終端為軟件升級對象,將STC89LE516RD主控制器換成具有IAP(In Application Programming)功能的ATMEGA128單片機,提出一種基于LabVIEW、CDMA網絡的工程機械車載監測終端的遠程升級方案,實現穩定可靠、掉電可恢復的軟件遠程升級目的。此方法還可用于其他具有IAP功能的監測終端中[6-8], 具有廣闊的應用前景。

1 遠程升級系統總體結構 

    遠程升級系統整體結構如圖1所示,由應用程序升級平臺、以太網及CDMA運營商無線通信網絡和工程機械車載監測終端三部分組成。

jsj4-t1.gif

    應用程序升級平臺由LabVIEW軟件設計而成,主要實現讀取并解析ATMEGA128單片機的HEX、BIN等格式的機器碼文件,通過網絡運營商獲取Internet的IP地址,由用戶選擇指定的客戶端IAP終端平臺進行更新,或客戶端平臺主動請求更新,并根據制訂的通信協議應用程序以網絡數據包的形式傳輸到遠程工程機械車載監測終端。運行于車載監測終端的BootLoader程序通過CDMA無線網絡接收并解析應用程序升級平臺發送的數據,經CRC校驗碼校驗無誤后,完成對應用程序Flash存儲區域更新寫入的操作。最后由BootLoader程序跳轉到應用程序Flash存儲區復位地址開始處運行更新后的應用程序。

2 電源電路設計

    由于ATMEGA128單片機需要3.3 V電壓供電,而其他外圍芯片需要5 V電壓供電,因此電源模塊需提供3.3 V和5 V電壓。電源模塊的原理圖如圖2所示。

jsj4-t2.gif

    外部9 V直流變壓器接入J1,通過5 V穩壓芯片LM7805產生5 V電壓,再經過電壓轉換芯片AS1117(5 V~

3.3 V的轉換)的轉換,產生3.3 V的穩壓電源。圖中二極管VD1起電源保護作用,防止外界電源反向時燒壞電路板;極性電容C101、C103、C203和無極性電容C102、C201、C202分別兩兩并聯,對電源進行濾波,使輸出電壓更加穩定。

3 系統軟件設計

3.1 升級平臺軟件設計

    圖3表示升級平臺程序流程。升級平臺首先完成對ATMEGA128單片機的HEX、BIN等格式的機器碼文件的讀取和解析;然后偵聽端口上是否有終端接入,如果有,則按照通信協議規定的客戶端一次性接收數據量大小,將文件分解成多個128 B小數據包,直到數據索引結束,最后一包的數據若不滿128 B,按照實際的數據量大小封裝,每個小數據包尾部加入CRC16校驗值;最后,利用LabVIEW平臺提供的以太網傳輸層TCP協議,將各個小數據包按照順序依次發送到遠程的工程機械車載監測終端。

jsj4-t3.gif

3.2 車載監測終端程序遠程升級設計

3.2.1 程序遠程升級原理

    ATmega128的Flash程序存儲器分為兩個區:應用代碼區和Boot加載區。應用代碼區是Flash用來存儲應用代碼的區域。由于對Flash ROM寫操作SPM(Store Program Memory)指令在應用區執行時是無效的,應用區不能用來存儲Boot代碼。Boot加載區用來存儲Boot加載軟件, SPM指令只有在Boot加載區中執行時才能夠完成對Flash ROM的寫操作。ATmega128 中的Boot加載程序可以利用任何可用的數據接口和相關的協議來讀取代碼并且將其寫入(編程)Flash ROM,或者從程序存儲器中讀取代碼[9]。

3.2.2 車載監測終端程序遠程升級

    圖4表示車載監測終端程序遠程升級流程,主要包括CDMA網絡的通信、協議解析和應用程序更新3個功能。

jsj4-t4.gif

    當串口接收中斷發生時,ATmega128調用接收中斷子程序讀取新程序代碼,并計算CRC16值,驗證接收到的數據是否正確。只有確保接收到的數據完全正確,ATmega128才調用IAP子程序,將代碼寫入Flash程序存儲器。其中IAP子程序詳見文獻[9]。為了提高數據通信可靠性,數據傳輸過程中,傳輸的有效數據位數為128 B,但IAP程序對Flash寫操作時,一次只能寫一頁,即256 B的數據,因此在校驗正確的情況下,需要兩次傳輸過程才能完成一個完整頁的數據傳輸,并執行應用程序區Flash頁寫入功能。如果寫入出錯,且超過5次,則向服務器返回出錯命令;反之則向服務器發送正確指令。為了解決程序下載時終端斷電造成的故障,在應用程序區段,用第一條語句跳轉至Boot區段,讀取寫碼操作開始標志位(此標志位被寫入EEPROM 中),若該標志位被置位,則跳轉至應用程序區段繼續運行程序,否則繼續守候在Boot區段直到升級完成[10]。

3.2.3 通信協議制定

    為保證升級平臺端進行效率高、可靠性強的數據通信,本文制定了雙方通信的協議及規則。通信協議對數據格式、同步方式、傳送速度、傳送步驟、檢錯方式以及控制字符定義等問題做出統一規定,通信雙方必須共同遵守。

    表1為升級平臺端命令格式,表2為監測終端命令格式。起始位和結束位用于標示數據串的起止范圍;數據長度為除了起始位和結束位外的數據總字節;校驗位采用CRC16校驗。

jsj4-b1.gif

jsj4-b2.gif

    根據升級平臺端和監測終端的通信協議,建立如圖5所示的通信握手過程。

jsj4-t5.gifjsj4-t5.gif

    車載監測終端監測是否有特定的電話號碼撥入,如果匹配電話號碼成功,則終端通過CDMA Modern撥號接入電信服務器獲取IP,向升級平臺發送終端就緒命令;升級平臺獲得當前終端的IP地址,采用TCP協議向終端下載程序代碼,終端發送確認回執后,進行下一輪的數據交互,直到數據傳輸結束。兩者之間的通信采用阻塞式通信,確保數據正確完整地下載到終端。中間引入超時機制,防止通信過程的死鎖。

4 系統測試

    在進行升級平臺軟件調試時,采用“網絡調試助手”作為監測終端,進行數據交互測試。以HEX格式文件為例,運行升級平臺測試程序,設置偵聽端口號為“6341”,選擇com.hex文件;打開“網絡調試助手”,選擇協議類型為“TCP客戶端”,輸入升級平臺IP和偵聽端口號,建立終端和升級平臺的網絡通信。圖6表示LabVIEW分包發送數據的界面。

jsj4-t6.gif

    當終端接收到最后一包數據時,若數據出錯,則向升級平臺發送“通信出錯”的代碼,升級平臺重新發送該數據包;若數據正確,則向升級平臺發送“通信正確”的代碼,升級平臺斷開與終端的連接。

    在進行車載監測終端遠程升級調試時,采用黑盒調試法。首先,利用Jtag開發器將Bootloader調試程序下載到開發板(Bootloader主程序如下所示);其次,運行“網絡調試助手”,設置相應參數和終端建立以太網通信,并依次向TCP網絡發送由升級平臺調試得到的正確數據包。當最后一包數據傳輸完畢,開發板進入休眠狀態,使用AVR studio讀取開發板應用程序區的Flash數據,檢驗是否寫入數據。通過原始數據包和Flash數據對比可看出,數據完全相同,終端已實現軟件遠程升級。

Bootloader調試程序:

void main(void) 

{

    unsigned char seviseip[]=

{"61.152.124.198"};

    unsigned char  seviseport[]={"6341"};

    MCUCR|=0X02;//轉移中斷向量表至boot程序區

    SystemInit();//初始化

    OpenPort(3,1);//開串口

    SREG=0X80;//打開全局中斷

    ATTCP(seviseip,seviseport);//連入TCP網絡

    pagewrite();//執行IAP功能的函數

}

5 結論

    本文將ATMEGA128 IAP技術應用于工程機械車載監測終端軟件遠程升級,提高了車載監測終端的可維護性;采用LabVIEW Socket網絡套接字構建了TCP服務器應用程序,程序具有對HEX、BIN等格式的機器碼文件的解析和分包功能;規范了升級平臺和工程機械車載監測終端之間阻塞式通信交互過程,采取了 IAP 軟件升級過程的可靠性和掉電保護措施。

參考文獻

[1] 金敏,羅恩澤,周翔.面向工程機械遠程智能監控的無線通信協議[J].中國機械工程,2011,22(19):2316-2324.

[2] 成強,周月英,周慶民,等.程序可遠程升級的數據采集終端的設計[J].河南大學學報:自然科學版,2010,40(4):353-356.

[3] 羅文,王莉娜,肖鯤.基于GPRS的嵌入式系統遠程監控和升級[J].電子技術應用,2010,36(5):159-162.

[4] 朱偉斌,張濤,顧海濤,等.基于CDMA網絡的嵌入式設備遠程升級系統[J].電子技術應用,2014,40(2):135-138.

[5] 江小霞,林建輝,周永征.工程機械車載測試系統的研發[J].電子測量與儀器學報,2009,23(4):107-111.

[6] 李衛紅,張凌云,陳天喜,等.基于IAP程序遠程更新設計在車載乘客信息顯示器中的應用[J].機車電傳動,2012,5(2):79-81.

[7] 張雙鑼,郎沁爭,肖鐵軍.供暖節能監控系統的無線遠傳協調器設計[J].計算機測量與控制,2012,20(5):1251-1254.

[8] 諸德宏,張介環.具有遠程升級功能的小區電能監測系統[J].電子器件,2014,37(4):733-736.

[9] 陳惠濱,黃海.ATMega128 IAP技術在移動數據采集器中的應用[J].電子器件,2005,28(1):101-104.

[10] 田日才,王國鵬,梁學東.ATMEGA128單片機的軟件遠程升級[J].電子技術應用,2003,29(11):23-25.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 99精品在线直播| zzijzzij亚洲日本成熟少妇| 精品国产依人香蕉在线精品| 日韩中文字幕精品| 精品国模在线视频| 久久99亚洲热视| 日韩在线免费观看视频| 99久久综合狠狠综合久久止| 91精品在线国产| 亚洲一区在线直播| 久久网站免费视频| 久久久久久久免费| 日本一区二区三区视频在线播放| 国产人妻互换一区二区 | 深夜福利一区二区| 欧美,日韩,国产在线| 91精品视频专区| 国产日韩亚洲精品| 国产日韩精品在线观看| 奇米影视亚洲狠狠色| 日韩视频免费观看| 国模无码视频一区二区三区| 国产欧美日韩在线播放| 欧美精品在线观看91 | 蜜桃av噜噜一区二区三区| 人妻无码一区二区三区四区| 99视频免费观看蜜桃视频| 国产日韩在线视频| 亚洲综合一区二区不卡| 热久久这里只有| 国产精品福利久久久| 欧美日韩精品在线一区二区| 久久免费视频观看| 国产精品久久久久久久久婷婷| 欧美一级免费看| 国产欧美欧洲| av观看久久| 日韩av免费一区| 不卡av日日日| 亚洲精品免费网站| 国产日韩亚洲精品|