• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于GB/T32960的車聯(lián)網(wǎng)終端固件自更新系統(tǒng)設(shè)計*

      2018-07-13 00:47:36余楚禮夏鵬齊同啟馬敬德
      汽車工程師 2018年1期
      關(guān)鍵詞:版本號校驗碼固件

      余楚禮 夏鵬 齊同啟 馬敬德

      (天津清源電動車輛有限責(zé)任公司)

      根據(jù)GB/T 32960—2016《電動汽車遠(yuǎn)程服務(wù)與管理系統(tǒng)技術(shù)規(guī)范》[1]要求,電動汽車需要配備車聯(lián)網(wǎng)終端,用于監(jiān)控車輛的運行狀態(tài)、故障狀態(tài)、電池狀態(tài)、電機狀態(tài)及運行里程等信息。由于監(jiān)控需求的變化,車聯(lián)網(wǎng)終端的軟件和配置文件的更新是必須的。傳統(tǒng)的車載電控單元的更新方法是使用串口或者CAN卡逐臺更新[2],效率低下,會消耗大量的人力物力。車聯(lián)網(wǎng)終端本身是可以和服務(wù)器進(jìn)行通信的,因此讓車聯(lián)網(wǎng)直接聯(lián)網(wǎng)更新自身軟件程序和配置文件是完全可行的。車聯(lián)網(wǎng)終端設(shè)計和平臺設(shè)計相關(guān)的研究很多[3-7],但是車聯(lián)網(wǎng)終端的遠(yuǎn)程更新相關(guān)的研究很少。文章設(shè)計了一種更新系統(tǒng),讓車聯(lián)網(wǎng)終端能借助4G網(wǎng)絡(luò)對自身固件進(jìn)行更新。由于網(wǎng)絡(luò)傳輸和數(shù)據(jù)存儲過程中的不可靠性,數(shù)據(jù)的每一步確認(rèn)都使用了md5校驗,來確保刷寫到終端程序的完整性。

      1 系統(tǒng)設(shè)計

      系統(tǒng)由車載終端、服務(wù)器及PC客戶端3個部分組成,這3個部分完成固件更新的整體進(jìn)程如下。

      1)PC客戶端將開發(fā)人員持續(xù)完善的新固件程序傳輸?shù)椒?wù)器,同時發(fā)送固件程序數(shù)據(jù)的md5校驗碼和版本號。服務(wù)器接收PC客戶端的新固件程序數(shù)據(jù)和md5校驗碼,并計算接收到的新固件程序數(shù)據(jù)的md5校驗碼,核對無誤后將固件程序數(shù)據(jù)、md5校驗碼及版本號存入到數(shù)據(jù)庫。

      2)服務(wù)器接收終端的登錄請求和終端的版本信息,比較版本號,如果版本號不一致,發(fā)送更新的指令。

      3)終端接收服務(wù)器發(fā)送的固件程序數(shù)據(jù)存入到閃存中,接收md5校驗碼和版本號存入到閃存中,計算固件程序數(shù)據(jù)的md5校驗碼,核對無誤后設(shè)置更新標(biāo)志。

      4)終端重啟,讀取更新標(biāo)志,如果需要更新,計算閃存中新固件程序數(shù)據(jù)的md5校驗碼,核對無誤后刷寫終端的程序閃存更新固件,并更新版本號,清除更新標(biāo)志。

      2 md5校驗

      由于固件更新過程中要進(jìn)行多次的傳輸和寫入,因此為了確保數(shù)據(jù)的完整性,采用了md5校驗的方法保證數(shù)據(jù)的完整性。

      md5是計算機安全領(lǐng)域廣泛使用的一種散列函數(shù),用以提供消息的完整性保護。md5算法具有4個特點:1)壓縮性。任意長度的數(shù)據(jù),算出的md5值長度都是固定的。2)容易計算。從原數(shù)據(jù)計算出md5值很容易。3)抗修改性。對原數(shù)據(jù)進(jìn)行任何改動,哪怕只修改1個字節(jié),所得到的md5值都有很大區(qū)別。4)強抗碰撞。已知原數(shù)據(jù)和其md5值,想找到一個具有相同md5值的數(shù)據(jù)(即偽造數(shù)據(jù))是非常困難的。

      基于以上原因,md5能夠保證數(shù)據(jù)的完整性。

      3 車聯(lián)網(wǎng)終端程序

      現(xiàn)代的汽車電控單元一般都會設(shè)計Boot Loader程序,Boot Loader程序的作用是用來更新固件程序和引導(dǎo)進(jìn)入固件程序。

      車聯(lián)網(wǎng)終端的程序由Boot Loader程序和固件程序兩部分組成,啟動過程如下。

      1)Boot Loader程序首先從閃存讀取固件升級標(biāo)志位。如果沒有更新要求,直接跳轉(zhuǎn)到步驟3)。

      2)讀取存儲在閃存上的固件,計算md5,并和存儲在閃存上的md5進(jìn)行比較,如果相同,進(jìn)行固件更新,在固件程序更新完成后,清除固件程序更新標(biāo)志位;如果md5校驗失敗,不進(jìn)行固件更新,直接清除固件更新標(biāo)志位,跳轉(zhuǎn)到固件程序。

      3)固件程序開啟CAN卡、GPS模塊及4G模塊。通過4G模塊連接服務(wù)器,連接成功后發(fā)送Sim卡的iccid卡號進(jìn)行登錄。登錄成功后,發(fā)送當(dāng)前固件版本信息,接收服務(wù)器端的反饋信息。如果服務(wù)器不要求更新固件,按照文獻(xiàn)[1]的要求周期發(fā)送相關(guān)信息。如果服務(wù)器要求更新固件,則固件程序接收數(shù)據(jù)和md5校驗碼,寫入到閃存中,核對無誤后設(shè)置更新標(biāo)志。待下次上電后,Boot Loader程序檢查更新標(biāo)志,如果更新標(biāo)志被設(shè)置了,則刷寫程序Fl ash更新固件程序。

      車聯(lián)網(wǎng)終端程序的流程,如圖1所示。

      圖1 車聯(lián)網(wǎng)終端啟動流程圖

      4 PC客戶端設(shè)計

      PC客戶端負(fù)責(zé)將新版固件程序傳送到服務(wù)器。PC客戶端的程序流程如下:

      1)載入包含新固件程序的文件,計算md5校驗碼;

      2)請求服務(wù)器接收新固件;

      3)發(fā)送新固件程序的數(shù)據(jù)、md5校驗碼及版本號到服務(wù)器;

      4)接收服務(wù)器的反饋,完成更新過程。

      PC客戶端運行流程,如圖2所示;PC客戶端操作顯示界面,如圖3所示。

      圖2 PC客戶端運行流程圖

      圖3 PC客戶端操作顯示界面

      客戶端選擇Load File載入數(shù)據(jù)后,填入新的版本號,選擇Update后即可以將新固件程序?qū)懭氲椒?wù)器數(shù)據(jù)庫,當(dāng)終端連接服務(wù)器時完成更新。

      5 服務(wù)器端

      服務(wù)器端相關(guān)程序分為兩部分。

      第1部分是響應(yīng)PC客戶端的固件更新命令,具體流程:1)接收到PC客戶端固件程序更新請求,命令PC客戶端發(fā)送相關(guān)數(shù)據(jù);2)接收PC客戶端發(fā)送的新固件程序數(shù)據(jù)、md5校驗碼及版本號;3)計算新固件程序數(shù)據(jù)的md5,核對無誤后寫入到數(shù)據(jù)庫;4)通知PC客戶端新固件程序更新成功。

      服務(wù)器端響應(yīng)PC客戶端的運行流程,如圖4所示。

      圖4 服務(wù)器端響應(yīng)PC客戶端的運行流程圖

      第2部分程序是響應(yīng)車聯(lián)網(wǎng)終端的,具體流程:1)響應(yīng)車聯(lián)網(wǎng)終端的登錄請求,如果身份驗證合格,接收連接;2)接收車聯(lián)網(wǎng)終端的版本信息數(shù)據(jù),并與服務(wù)器端數(shù)據(jù)庫內(nèi)的版本數(shù)據(jù)進(jìn)行比對,告知車聯(lián)網(wǎng)終端是否需要更新;3)如果無需更新,直接按照GB/T 32960的要求執(zhí)行;4)如果需要更新,發(fā)送新固件程序數(shù)據(jù)、md5校驗碼及版本號到車聯(lián)網(wǎng)終端。

      服務(wù)器端響應(yīng)車聯(lián)網(wǎng)終端的運行流程,如圖5所示。

      圖5 服務(wù)器端響應(yīng)車聯(lián)網(wǎng)終端的運行流程圖

      6 結(jié)論

      文章基于GB/T 32960設(shè)計了車聯(lián)網(wǎng)終端的固件自更新系統(tǒng),實際測試顯示固件程序更新系統(tǒng)運行穩(wěn)定可靠。由于使用4G模塊進(jìn)行聯(lián)網(wǎng)下載,徹底擺脫了人力干預(yù),無需車主去售后服務(wù)站進(jìn)行固件更新,減輕了售后服務(wù)站的工作難度;同時固件程序的更新能夠做到更及時以便修復(fù)潛在的bug。因為固件程序的安全要求很高,整個更新的過程中進(jìn)行了4次md5計算校驗,確保寫入到車聯(lián)網(wǎng)終端上的固件程序的完整性。

      猜你喜歡
      版本號校驗碼固件
      認(rèn)識vSphere安裝程序
      基于Excel實現(xiàn)書號校驗碼的驗證
      基于固件的遠(yuǎn)程身份認(rèn)證
      深入淺出 全面獲知系統(tǒng)版本號
      基于FPGA的循環(huán)冗余校驗碼設(shè)計
      電子世界(2015年14期)2015-11-07 05:32:29
      身份證號碼中的數(shù)學(xué)
      提取ROM固件中的APP
      電腦愛好者(2015年7期)2015-04-09 08:54:02
      多種方法查看系統(tǒng)版本號
      電腦迷(2014年8期)2014-04-29 08:53:03
      一種通過USB接口的可靠固件升級技術(shù)
      奧林巴斯XZ—2新固件升級
      中國攝影(2014年1期)2014-02-24 01:50:23
      府谷县| 龙海市| 舒兰市| 武义县| 凤冈县| 曲松县| 安康市| 星座| 辽宁省| 闽清县| 汉川市| 通榆县| 萝北县| 孙吴县| 宝山区| 海门市| 武义县| 陆川县| 元阳县| 依安县| 安义县| 龙门县| 成武县| 义马市| 甘德县| 上犹县| 延长县| 金溪县| 南华县| 肃宁县| 惠州市| 盱眙县| 四川省| 苏州市| 邛崃市| 酒泉市| 朝阳市| 商水县| 皋兰县| 大名县| 洞头县|