本發(fā)明涉及一種通過(guò)一個(gè)升級(jí)文件包實(shí)現(xiàn)多項(xiàng)升級(jí)任務(wù)的方法,屬于車輛技術(shù)領(lǐng)域。
背景技術(shù):
目前生產(chǎn)部門批量生產(chǎn)車輛以及車輛售后部門對(duì)用于與車輛對(duì)接的遠(yuǎn)程監(jiān)控終端進(jìn)行系統(tǒng)升級(jí),通常采用手動(dòng)升級(jí),需要工人在遠(yuǎn)程監(jiān)控終端上逐一選擇任務(wù)、載入任務(wù)和分別進(jìn)行升級(jí),甚至不同任務(wù)文件需要多次載入遠(yuǎn)程監(jiān)控終端再進(jìn)行后續(xù)升級(jí)工作,操作繁瑣,并且由于人工干預(yù)過(guò)多,容易發(fā)生錯(cuò)誤。
隨著人們對(duì)車輛的需求量越來(lái)越大,不論是生產(chǎn)車輛結(jié)束或者車輛返廠維修升級(jí),目前的升級(jí)方式已經(jīng)無(wú)法滿足大批量終端升級(jí)的需求,急需一種新的升級(jí)方式。
技術(shù)實(shí)現(xiàn)要素:
為了解決現(xiàn)有技術(shù)的不足,本發(fā)明提供了一種通過(guò)一個(gè)升級(jí)文件包實(shí)現(xiàn)多項(xiàng)升級(jí)任務(wù)的方法及系統(tǒng),能夠?qū)崿F(xiàn)多任務(wù)一鍵升級(jí),十分適合車輛生產(chǎn)部門和車輛售后維修部門使用。
本發(fā)明為解決其技術(shù)問(wèn)題所采用的技術(shù)方案是:提供了一種通過(guò)一個(gè)升級(jí)文件包實(shí)現(xiàn)多項(xiàng)升級(jí)任務(wù)的方法,包括以下步驟:
(1)根據(jù)待升級(jí)任務(wù)的場(chǎng)景,在本地端將升級(jí)文件打包合成一個(gè)pkg文件;所述升級(jí)文件包括shell命令、配置命令文件、app更新文件和bootloader更新文件中的一種或兩種以上;
(2)利用sd卡將pkg文件拷貝至待更新遠(yuǎn)程監(jiān)控終端,或者通過(guò)遠(yuǎn)程監(jiān)控平臺(tái),將pkg文件分配和發(fā)送至待更新遠(yuǎn)程監(jiān)控終端;
(3)遠(yuǎn)程監(jiān)控終端識(shí)別到pkg文件后,通過(guò)md5校驗(yàn)檢查pkg文件的正確性,接著識(shí)別pkg文件中的不同類型的升級(jí)文件,若包含配置命令文件、app更新文件和bootloader更新文件,則將其中涉及的產(chǎn)品型號(hào)與內(nèi)置在遠(yuǎn)程監(jiān)控終端的eeprom中的產(chǎn)品型號(hào)進(jìn)行比對(duì),比對(duì)一致后進(jìn)入步驟(4);
(4)遠(yuǎn)程監(jiān)控終端對(duì)pkg文件進(jìn)行解壓,然后逐行執(zhí)行各升級(jí)命令,完成對(duì)遠(yuǎn)程監(jiān)控終端的原始系統(tǒng)的升級(jí)。
步驟(2)中,若通過(guò)遠(yuǎn)程監(jiān)控平臺(tái)分配和發(fā)送,則預(yù)先建立遠(yuǎn)程監(jiān)控平臺(tái)與本地端和遠(yuǎn)程監(jiān)控終端的連接,本地端將pkg文件發(fā)送至遠(yuǎn)程監(jiān)控平臺(tái),遠(yuǎn)程監(jiān)控平臺(tái)分配和發(fā)送至遠(yuǎn)程監(jiān)控終端。
步驟(4)中,若pkg文件中包括app更新文件和bootloader更新文件,則遠(yuǎn)程監(jiān)控終端利用app更新文件的命令對(duì)原始系統(tǒng)中的引導(dǎo)程序進(jìn)行更新,并利用bootloader更新文件的命令對(duì)原始系統(tǒng)中的應(yīng)用程序進(jìn)行更新。
所述pkg文件包括文件頭、命令總數(shù)、命令索引、命令、校驗(yàn)位以及文件尾。
所述pkg文件中的命令采用bin文件命令格式。
所述shell命令包括以下命令:設(shè)置終端地址、設(shè)置域名、設(shè)置端口號(hào)、恢復(fù)出廠設(shè)置以及設(shè)置總線協(xié)議文件路徑。
所述配置文件采用dbc文件或key文件。
所述本地端采用pc機(jī)。
所述遠(yuǎn)程監(jiān)控平臺(tái)采用服務(wù)器。
本發(fā)明基于其技術(shù)方案所具有的有益效果在于:
(1)本發(fā)明的通過(guò)一個(gè)升級(jí)文件包實(shí)現(xiàn)多項(xiàng)升級(jí)任務(wù)的方法利用本地端將多個(gè)任務(wù)合成為一個(gè)升級(jí)文件包,然后通過(guò)sd卡拷貝或者通過(guò)遠(yuǎn)程監(jiān)控平臺(tái)下發(fā)至遠(yuǎn)程監(jiān)控終端進(jìn)行升級(jí),能夠?qū)崿F(xiàn)一鍵解壓執(zhí)行升級(jí),大幅減少人工干預(yù),人工升級(jí)一臺(tái)遠(yuǎn)程監(jiān)控終端需要5分鐘時(shí)間,利用本發(fā)明的通過(guò)一個(gè)升級(jí)文件包實(shí)現(xiàn)多項(xiàng)升級(jí)任務(wù)的方法則可降低為1分鐘以內(nèi)升級(jí)完畢,自動(dòng)化程度高,提高了防錯(cuò)能力;
(2)本發(fā)明的通過(guò)一個(gè)升級(jí)文件包實(shí)現(xiàn)多項(xiàng)升級(jí)任務(wù)的方法,若通過(guò)遠(yuǎn)程監(jiān)控平臺(tái)下發(fā)至遠(yuǎn)程監(jiān)控終端進(jìn)行升級(jí),可以同時(shí)讓遠(yuǎn)程平臺(tái)服務(wù)器與多個(gè)遠(yuǎn)程監(jiān)控終端連接,遠(yuǎn)程平臺(tái)服務(wù)器接收來(lái)自不同工程師的本地端的pkg文件,由遠(yuǎn)程平臺(tái)服務(wù)器識(shí)別升級(jí)文件類型并匹配相應(yīng)遠(yuǎn)程監(jiān)控終端,從而實(shí)現(xiàn)分布式連接和車輛批量升級(jí),實(shí)現(xiàn)升級(jí)過(guò)程全自動(dòng)化;
(3)本發(fā)明的通過(guò)一個(gè)升級(jí)文件包實(shí)現(xiàn)多項(xiàng)升級(jí)任務(wù)的方法,將不同命令文件中的命令以同一種通用格式寫進(jìn)pkg文件中,便于遠(yuǎn)程監(jiān)控終端壓縮更新,提高更新效率;
(4)本發(fā)明的通過(guò)一個(gè)升級(jí)文件包實(shí)現(xiàn)多項(xiàng)升級(jí)任務(wù)的方法在升級(jí)前采用md5校驗(yàn),極大避免了出錯(cuò)可能性;
(5)本發(fā)明的通過(guò)一個(gè)升級(jí)文件包實(shí)現(xiàn)多項(xiàng)升級(jí)任務(wù)的方法可根據(jù)不同升級(jí)場(chǎng)景和需求選擇不同升級(jí)文件打包為pkg文件,而總的硬件設(shè)備和系統(tǒng)不需改變,均能實(shí)現(xiàn)一鍵式打包升級(jí),應(yīng)用場(chǎng)景廣,適用于多種遠(yuǎn)程監(jiān)控終端升級(jí),操作簡(jiǎn)單,自動(dòng)化程度高,大幅降低了生產(chǎn)成本。
附圖說(shuō)明
圖1是本發(fā)明實(shí)施例中本地端將升級(jí)文件打包合成一個(gè)pkg文件的界面示意圖。
圖2是本發(fā)明實(shí)施例中pkg包的格式示意圖。
圖3是本發(fā)明實(shí)施例中并文件命令格式示意圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明。
本發(fā)明提供了一種通過(guò)一個(gè)升級(jí)文件包實(shí)現(xiàn)多項(xiàng)升級(jí)任務(wù)的方法,包括以下步驟:
(1)根據(jù)待升級(jí)任務(wù)的場(chǎng)景,在本地端將升級(jí)文件打包合成一個(gè)pkg文件;所述升級(jí)文件包括shell命令、配置命令文件、app更新文件和bootloader更新文件中的一種或兩種以上;參照?qǐng)D1,可采用該pkg生成工具選擇相應(yīng)升級(jí)文件中的一種或多種,其中shell命令、配置命令、bootbin和appbin分別表示shell命令、配置命令文件、bootloader更新文件和app更新文件,其中各升級(jí)文件可選擇數(shù)據(jù)是否壓縮;
(2)利用sd卡將pkg文件拷貝至待更新遠(yuǎn)程監(jiān)控終端,或者通過(guò)遠(yuǎn)程監(jiān)控平臺(tái),將pkg文件分配和發(fā)送至待更新遠(yuǎn)程監(jiān)控終端;
(3)遠(yuǎn)程監(jiān)控終端識(shí)別到pkg文件后,通過(guò)md5校驗(yàn)檢查pkg文件的正確性,接著識(shí)別pkg文件中的不同類型的升級(jí)文件,若包含配置命令文件、app更新文件和bootloader更新文件,則將其中涉及的產(chǎn)品型號(hào)與內(nèi)置在遠(yuǎn)程監(jiān)控終端的eeprom中的產(chǎn)品型號(hào)進(jìn)行比對(duì),比對(duì)一致后進(jìn)入步驟(4);
(4)遠(yuǎn)程監(jiān)控終端對(duì)pkg文件進(jìn)行解壓,然后逐行執(zhí)行各升級(jí)命令,完成對(duì)遠(yuǎn)程監(jiān)控終端的原始系統(tǒng)的升級(jí)。
步驟(2)中,若通過(guò)遠(yuǎn)程監(jiān)控平臺(tái)分配和發(fā)送,則預(yù)先建立遠(yuǎn)程監(jiān)控平臺(tái)與本地端和遠(yuǎn)程監(jiān)控終端的連接,本地端將pkg文件發(fā)送至遠(yuǎn)程監(jiān)控平臺(tái),遠(yuǎn)程監(jiān)控平臺(tái)分配和發(fā)送至遠(yuǎn)程監(jiān)控終端。
步驟(4)中,若pkg文件中包括app更新文件和bootloader更新文件,則遠(yuǎn)程監(jiān)控終端利用app更新文件的命令對(duì)原始系統(tǒng)中的引導(dǎo)程序進(jìn)行更新,并利用bootloader更新文件的命令對(duì)原始系統(tǒng)中的應(yīng)用程序進(jìn)行更新。
參照?qǐng)D2,所述pkg文件包括文件頭、命令總數(shù)、命令索引、命令、校驗(yàn)位以及文件尾。
參照?qǐng)D3,所述pkg文件中的命令可采用bin文件命令格式,也可采用其他通用格式類型。
所述shell命令包括以下命令:設(shè)置終端地址、設(shè)置域名、設(shè)置端口號(hào)、恢復(fù)出廠設(shè)置以及設(shè)置總線協(xié)議文件路徑。
所述配置文件采用dbc文件或key文件,也可采用其他自定義通用格式文件。
所述本地端采用pc機(jī)。
所述遠(yuǎn)程監(jiān)控平臺(tái)采用服務(wù)器。
本發(fā)明提供了一個(gè)升級(jí)文件包實(shí)現(xiàn)多項(xiàng)升級(jí)任務(wù)的方法,利用本地端將多個(gè)任務(wù)合成為一個(gè)升級(jí)文件包,然后通過(guò)sd卡拷貝或者通過(guò)遠(yuǎn)程監(jiān)控平臺(tái)下發(fā)至遠(yuǎn)程監(jiān)控終端進(jìn)行升級(jí),能夠?qū)崿F(xiàn)一鍵解壓執(zhí)行升級(jí),大幅減少人工干預(yù),人工升級(jí)一臺(tái)遠(yuǎn)程監(jiān)控終端需要5分鐘時(shí)間,利用本發(fā)明的通過(guò)一個(gè)升級(jí)文件包實(shí)現(xiàn)多項(xiàng)升級(jí)任務(wù)的方法則可降低為1分鐘以內(nèi)升級(jí)完畢,自動(dòng)化程度高,提高了防錯(cuò)能力。