一種用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng)和方法
【專利摘要】本發(fā)明提出了用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng)和方法,系統(tǒng)包括:遠(yuǎn)程控制終端、遠(yuǎn)程控制服務(wù)器、控制服務(wù)器和整車控制器,遠(yuǎn)程控制終端接收來自遠(yuǎn)程控制服務(wù)器的升級文件和配置參數(shù),檢測整車控制器是否處于空閑狀態(tài)并向整車控制器發(fā)送更新控制指令,如果整車控制器處于空閑狀態(tài)時則響應(yīng)更新控制指令,控制整車控制器切換到遠(yuǎn)程燒寫或者參數(shù)配置模式;遠(yuǎn)程控制服務(wù)器在接收到遠(yuǎn)程控制終端的更新文件獲取指令后,獲取升級文件和配置參數(shù)并轉(zhuǎn)發(fā)至所述遠(yuǎn)程控制終端。本發(fā)明采用遠(yuǎn)程控制終端與整車控制器通過CAN總線進(jìn)行通訊實現(xiàn)遠(yuǎn)程更新升級,不需要大量的人員操作,相對簡化了整車控制器的工作。
【專利說明】一種用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng)和方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及車輛控制【技術(shù)領(lǐng)域】,特別涉及一種用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng)和方法。
【背景技術(shù)】
[0002]嵌入式設(shè)備大量的應(yīng)用在不同領(lǐng)域、不同的地域的工作中,安全性和便利性對于嵌入式設(shè)備而言是最重要的。其中,遠(yuǎn)程無干擾更新系統(tǒng)對于嵌入式系統(tǒng)在對于安全性和便利性要求極高的方面,十分重要。
[0003]但是目前針對整車控制器的遠(yuǎn)程更新升級系統(tǒng),常常需要大量的人員操作,同時還需要滿足特定的工作條件,這對于大面積多數(shù)量同時工作在不同環(huán)境和不同地點的嵌入式設(shè)備而言是非常繁雜的。并且,升級過程中,如果出現(xiàn)升級錯誤,很難進(jìn)行補(bǔ)救。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的旨在至少解決所述技術(shù)缺陷之一。
[0005]為此,本發(fā)明的一個目的在于提出一種用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng)。
[0006]為了實現(xiàn)上述目的,本發(fā)明一方面的實施例提供一種用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng),包括:遠(yuǎn)程控制終端、遠(yuǎn)程控制服務(wù)器、控制服務(wù)器和整車控制器,其中所述遠(yuǎn)程控制終端用于與所述遠(yuǎn)程控制服務(wù)器和整車控制器進(jìn)行握手應(yīng)答以建立通信,并向所述遠(yuǎn)程控制服務(wù)器發(fā)送更新文件獲取指令,接收來自所述遠(yuǎn)程控制服務(wù)器的升級文件和配置參數(shù),以及檢測所述整車控制器是否處于空閑狀態(tài)并向所述整車控制器發(fā)送更新控制指令;所述遠(yuǎn)程控制服務(wù)器與所述控制服務(wù)器相連,用于在接收到所述遠(yuǎn)程控制終端的更新文件獲取指令后,查詢所述控制服務(wù)器內(nèi)的更新文件數(shù)據(jù)庫并調(diào)取與所述更新文件獲取指令對應(yīng)的升級文件和配置參數(shù),轉(zhuǎn)發(fā)至所述遠(yuǎn)程控制終端;所述整車控制器用于檢測到處于空閑狀態(tài)時,則響應(yīng)所述更新控制指令,切換到遠(yuǎn)程燒寫或者參數(shù)配置模式以向所述整車控制器寫入升級文件和配置參數(shù)。
[0007]在本發(fā)明的一個實施例中,所述遠(yuǎn)程控制服務(wù)器還用于對接收到的所述升級文件和配置參數(shù)進(jìn)行安全校驗,在校驗通過后將所述升級文件和配置參數(shù)轉(zhuǎn)發(fā)給所述遠(yuǎn)程控制終端。
[0008]在本發(fā)明的又一個實施例中,如果所述整車控制器處于空閑狀態(tài)且滿足升級條件,則所述整車控制器響應(yīng)所述遠(yuǎn)程控制終端的更新控制指令,對內(nèi)置的存儲設(shè)備的對應(yīng)位置設(shè)置標(biāo)志幀,用于標(biāo)記下次啟動切換的工作模式,并進(jìn)行復(fù)位操作,所述整車控制器在下次啟動時,查詢所述存儲設(shè)備的對應(yīng)位置的標(biāo)志幀,所述整車控制器切換到遠(yuǎn)程燒寫或者參數(shù)配置模式,寫入升級文件和配置參數(shù)。
[0009]在本發(fā)明的另一個實施例中,如果所述整車控制器處于非空閑狀態(tài)或者不滿足升級條件時,則所述整車控制器不響應(yīng)所述遠(yuǎn)程控制終端的更新控制指令,對內(nèi)置的存儲設(shè)備的對應(yīng)位置設(shè)置標(biāo)志幀,用于標(biāo)記下次啟動切換的工作模式,并進(jìn)行復(fù)位操作,當(dāng)所述整車控制器被安全關(guān)閉后,再次啟動時,響應(yīng)所述更新控制指令,查詢所述存儲設(shè)備的對應(yīng)位置的標(biāo)志幀,所述整車控制器切換到遠(yuǎn)程燒寫或者參數(shù)配置模式,寫入升級文件和配置參數(shù)。
[0010]在本發(fā)明的又一個實施例中,所述整車控制器在寫入升級文件和配置參數(shù)后,將所述存儲設(shè)備對應(yīng)位置的標(biāo)志幀復(fù)位以保證所述整車控制器在下次啟動后進(jìn)入正常工作模式。
[0011]在本發(fā)明的一個實施例中,所述整車控制器內(nèi)置的存儲設(shè)備為電子抹除式可復(fù)寫只讀存儲器EEPROM或閃存設(shè)備Flash。
[0012]在本發(fā)明的再一個實施例中,所述遠(yuǎn)程控制終端與所述遠(yuǎn)程控制服務(wù)器采用GPRS通訊協(xié)議進(jìn)行通信,所述遠(yuǎn)程控制終端與所述整車控制器采用CAN通信協(xié)議進(jìn)行通信。
[0013]根據(jù)本發(fā)明實施例的用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng),適用于純電動車輛的整車管理系統(tǒng)的工作和未來升級系統(tǒng)的需要,提供易于維護(hù)和整體擴(kuò)展的遠(yuǎn)程控制終端及控制設(shè)備。本發(fā)明采用遠(yuǎn)程控制終端與整車控制器通過CAN總線進(jìn)行通訊實現(xiàn)遠(yuǎn)程更新升級,不需要大量的人員操作,即使是對于大面積多數(shù)量同時工作在不同環(huán)境和不同地點的整車控制器進(jìn)行配置,從而避免了人為和環(huán)境等因素的干擾,實現(xiàn)無干擾更新。此外,由于采用CAN總線通訊,自動實現(xiàn)更新,相對簡化了整車控制器的工作。并且,如果升級過程中出現(xiàn)升級錯誤,也可以通過將存儲設(shè)備的標(biāo)志幀復(fù)位的方式,使得整車控制器下次進(jìn)入正常模式,不影響整車控制器的正常工作。
[0014]本發(fā)明的另一個目的在于提出一種用于整車控制的遠(yuǎn)程無干擾更新方法。
[0015]為實現(xiàn)上述目的,本發(fā)明的實施例提出一種用于整車控制的遠(yuǎn)程無干擾更新方法,包括如下步驟:
[0016]遠(yuǎn)程控制終端與遠(yuǎn)程控制服務(wù)器進(jìn)行握手應(yīng)答以建立通信,并向所述遠(yuǎn)程控制服務(wù)器發(fā)送更新文件獲取指令;
[0017]所述遠(yuǎn)程控制服務(wù)器在接收到所述遠(yuǎn)程控制終端的更新文件獲取指令后,查詢控制服務(wù)器內(nèi)的更新文件數(shù)據(jù)庫并調(diào)取與所述更新文件獲取指令對應(yīng)的升級文件和配置參數(shù),轉(zhuǎn)發(fā)至所述遠(yuǎn)程控制終端;
[0018]所述遠(yuǎn)程控制終端接收來自所述遠(yuǎn)程控制服務(wù)器的升級文件和配置參數(shù),檢測整車控制器是否處于空閑狀態(tài)并向所述整車控制器發(fā)送更新控制指令;
[0019]如果所述整車控制器處于空閑狀態(tài)且滿足升級條件,則所述整車控制器響應(yīng)所述遠(yuǎn)程控制終端的更新控制指令,對內(nèi)置的存儲設(shè)備的對應(yīng)位置設(shè)置標(biāo)志幀以標(biāo)記下次啟動切換的工作模式并進(jìn)行復(fù)位操作,所述整車控制器在下次啟動時,查詢所述存儲設(shè)備的對應(yīng)位置的標(biāo)志幀,所述整車控制器切換到遠(yuǎn)程燒寫或者參數(shù)配置模式,寫入升級文件和配置參數(shù);
[0020]如果所述整車控制器處于非空閑狀態(tài)或者不滿足升級條件時,則所述整車控制器不響應(yīng)所述遠(yuǎn)程控制終端的更新控制指令,對內(nèi)置的存儲設(shè)備的對應(yīng)位置設(shè)置標(biāo)志幀以標(biāo)記下次啟動切換的工作模式,并進(jìn)行復(fù)位操作,當(dāng)所述整車控制器被安全關(guān)閉后,再次啟動時響應(yīng)所述更新控制指令,查詢所述存儲設(shè)備的對應(yīng)位置的標(biāo)志幀,所述整車控制器切換到遠(yuǎn)程燒寫或者參數(shù)配置模式,寫入升級文件和配置參數(shù)。
[0021 ] 在本發(fā)明的一個實施例中,所述遠(yuǎn)程控制服務(wù)器對接收到的所述升級文件和配置參數(shù)進(jìn)行安全校驗,在校驗通過后將所述升級文件和配置參數(shù)轉(zhuǎn)發(fā)給所述遠(yuǎn)程控制終端。
[0022]在本發(fā)明的又一個實施例中,所述整車控制器在寫入升級文件和配置參數(shù)后,將所述存儲設(shè)備對應(yīng)位置的標(biāo)志幀復(fù)位以保證所述整車控制器在下次啟動后進(jìn)入正常工作模式。
[0023]根據(jù)本發(fā)明實施例的用于整車控制的遠(yuǎn)程無干擾更新方法,適用于純電動車輛的整車管理系統(tǒng)的工作和未來升級系統(tǒng)的需要,提供易于維護(hù)和整體擴(kuò)展的遠(yuǎn)程控制終端及控制設(shè)備。本發(fā)明采用遠(yuǎn)程控制終端與整車控制器通過CAN總線進(jìn)行通訊實現(xiàn)遠(yuǎn)程更新升級,不需要大量的人員操作,即使是對于大面積多數(shù)量同時工作在不同環(huán)境和不同地點的整車控制器進(jìn)行配置,從而避免了人為和環(huán)境等因素的干擾,實現(xiàn)無干擾更新。此外,由于采用CAN總線通訊,自動實現(xiàn)更新,相對簡化了整車控制器的工作。并且,如果升級過程中出現(xiàn)升級錯誤,也可以通過將存儲設(shè)備的標(biāo)志幀復(fù)位的方式,使得整車控制器下次進(jìn)入正常模式,不影響整車控制器的正常工作。
[0024]本發(fā)明附加的方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實踐了解到。
【專利附圖】
【附圖說明】
[0025]本發(fā)明的上述和/或附加的方面和優(yōu)點從結(jié)合下面附圖對實施例的描述中將變得明顯和容易理解,其中:
[0026]圖1為根據(jù)本發(fā)明實施例的用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng)的結(jié)構(gòu)圖;
[0027]圖2為根據(jù)本發(fā)明實施例的用于整車控制的遠(yuǎn)程無干擾更新方法的流程圖;
[0028]圖3為根據(jù)本發(fā)明實施例的整車控制器空閑狀態(tài)下的遠(yuǎn)程無干擾更新方法的工作流程圖;
[0029]圖4為根據(jù)本發(fā)明實施例的整車控制器非空閑狀態(tài)下的遠(yuǎn)程無干擾更新方法的工作流程圖;
[0030]圖5為根據(jù)本發(fā)明實施例的遠(yuǎn)程升級文件邏輯示意圖;
[0031]圖6為根據(jù)本發(fā)明實施例的bootloader燒寫函數(shù)的運(yùn)行流程圖。
【具體實施方式】
[0032]下面詳細(xì)描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,旨在用于解釋本發(fā)明,而不能理解為對本發(fā)明的限制。
[0033]本發(fā)明提出一種用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng)和方法,對整車控制器的配置文件采用遠(yuǎn)程更新方式,實現(xiàn)遠(yuǎn)程向整車控制器發(fā)送更新版本信息和數(shù)據(jù)文件,對于更新文件進(jìn)行處理和當(dāng)前整車控制器的狀態(tài)進(jìn)行判斷,實現(xiàn)遠(yuǎn)程交互時進(jìn)行實時響應(yīng)和語義解析,保證遠(yuǎn)程操控的錯誤處理和嵌入式無干擾更新。本發(fā)明適用于純電動車輛的整車管理系統(tǒng)的遠(yuǎn)程更新。
[0034]本發(fā)明設(shè)計車輛控制領(lǐng)域,特別涉及一種具備GPRS和CAN功能的遠(yuǎn)程控制終端設(shè)備和整車控制器
[0035]如圖1所示,本發(fā)明實施例的用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng),包括:遠(yuǎn)程控制終端1、遠(yuǎn)程控制服務(wù)器2、控制服務(wù)器3和整車控制器4。其中,遠(yuǎn)程控制終端I與遠(yuǎn)程控制服務(wù)器2采用GPRS通訊協(xié)議進(jìn)行通信,遠(yuǎn)程控制終端I與整車控制器4采用CAN通信協(xié)議進(jìn)行通信。具體地,遠(yuǎn)程控制終端I通過CAN總線與整車控制器4連接。
[0036]具體地,遠(yuǎn)程控制終端I用于與遠(yuǎn)程控制服務(wù)器2和整車控制器4進(jìn)行握手應(yīng)答以建立通信,并向遠(yuǎn)程控制服務(wù)器2發(fā)送更新文件獲取指令,接收來自遠(yuǎn)程控制服務(wù)器2的升級文件和配置參數(shù)。
[0037]遠(yuǎn)程控制服務(wù)器2與控制服務(wù)器3相連,用于在接收到遠(yuǎn)程控制終端I的更新文件獲取指令后,查詢控制服務(wù)器3內(nèi)的更新文件數(shù)據(jù)庫并調(diào)取與更新文件獲取指令對應(yīng)的升級文件和配置參數(shù),轉(zhuǎn)發(fā)至遠(yuǎn)程控制終端I。
[0038]具體地,遠(yuǎn)程控制終端I通過通訊協(xié)議和遠(yuǎn)程控制服務(wù)器2交互,二者之間通過特定協(xié)議進(jìn)行通訊。根據(jù)通訊協(xié)議,遠(yuǎn)程控制服務(wù)器2可以發(fā)送相應(yīng)的升級文件和配置參數(shù)文件給遠(yuǎn)程控制終端I。需要說明的是,遠(yuǎn)程控制終端I和遠(yuǎn)程控制服務(wù)器2 二者之間的通訊根據(jù)一套之前既定的通訊協(xié)議進(jìn)行交互,該協(xié)議并非固定不變,可以通過遠(yuǎn)程更新進(jìn)行升級和擴(kuò)展。
[0039]在本發(fā)明的一個實施例中,為了保證文件傳輸?shù)恼_性,需要對文件進(jìn)行安全校驗,同時在傳送文件之前,進(jìn)行對應(yīng)的握手。具體地,遠(yuǎn)程控制服務(wù)器2對接收到的升級文件和配置參數(shù)進(jìn)行安全校驗,在校驗通過后將升級文件和配置參數(shù)轉(zhuǎn)發(fā)給遠(yuǎn)程控制終端I。
[0040]遠(yuǎn)程控制終端I包括一塊大容量外部存儲設(shè)備,如大容量SD卡或者外部Flash。該外部存儲設(shè)備至少擁有一個基礎(chǔ)的文件管理系統(tǒng),用于存儲多個外部控制升級文件和參數(shù)配置文件。
[0041]在遠(yuǎn)程控制終端I成功獲取升級文件和配置參數(shù)文件后,將查詢整車控制器4的狀態(tài)。期間會和整車控制器4進(jìn)行握手操作,并通知整車控制器4當(dāng)前出現(xiàn)了新的升級系統(tǒng)或者優(yōu)化配置文件。
[0042]遠(yuǎn)程控制終端I檢測整車控制器4是否處于空閑狀態(tài)并向整車控制器4發(fā)送更新控制指令。
[0043]整車控制器4根據(jù)處于空閑狀態(tài)或非空閑狀態(tài),分別采用不同的方式對配置進(jìn)行更新。其中,整車控制器4包括:MCU微控制器、外部存儲設(shè)備、用于和外部數(shù)據(jù)中心交互的GPRS通訊模塊、可選擇的SD卡或者其他大容量存儲設(shè)備。根據(jù)數(shù)據(jù)邏輯控制與車輛各個管理系統(tǒng)交互數(shù)據(jù)信息的CAN通訊模塊以及根據(jù)車輛交互數(shù)據(jù)和存儲控制邏輯來存儲的數(shù)據(jù)存儲庫。
[0044]具體地,整車控制器4涉及的外部調(diào)試軟件連接協(xié)議如下:
[0045]為了保證整車控制器4調(diào)試與VMS主程序互不干擾,外部調(diào)試軟件與整車控制器4的電路板通訊時,不運(yùn)行整車控制器程序,而是僅通過在整車控制器4上電啟動時EEPROM狀態(tài)判斷進(jìn)行跳轉(zhuǎn)到不同的通訊程序中完成相應(yīng)功能的模塊。連接協(xié)議時需要在整車控制器VMS程序運(yùn)行的時候進(jìn)行通訊,保證通訊完成后EEPROM的相應(yīng)的狀態(tài)位設(shè)置為對應(yīng)的模式狀態(tài)。模式狀態(tài)的設(shè)置值應(yīng)該有特殊的選擇判斷,當(dāng)EERPOM中的標(biāo)志位不是特殊的判斷值時,將直接進(jìn)入VMS程序,保證整車控制器4的運(yùn)行。
[0046]外部調(diào)試工具如下:
[0047](I)Bootloader 模塊:對應(yīng)的 EEPROM 標(biāo)定值為 0x424C(BL 的 ASCii 碼);
[0048](2) 1引腳查詢模塊:對應(yīng)的EEPROM標(biāo)定值為0x494F(10的ASCii碼)。
[0049]整車控制器4的連接過程是在VMS程序正常運(yùn)行的過程中進(jìn)行的,并且強(qiáng)制要求使用CAN3 口作為通訊接口。雖然CAN3 口在當(dāng)前環(huán)境下僅作為可選的CAN 口液晶屏狀態(tài)位,但是不能不考慮其在連接情況下CAN幀的干擾問題。因此連接過程至少需要3幀CAN連接信號來同時在正常情況下的握手,應(yīng)至多在1s內(nèi)完成。當(dāng)超過時間,將需要重新接收完整的3幀CAN信號。
[0050]在本發(fā)明的一個實施例中,MCU微控制器內(nèi)置或擴(kuò)展有至少I個或以上的CAN接口。其中,MCU微控制器為16位或32位單片機(jī)。
[0051]整車控制器4的底層控制模塊還包括CAN總線數(shù)據(jù)處理邏輯和數(shù)據(jù)庫存儲邏輯。通過此兩種邏輯,將CAN通訊模塊、數(shù)據(jù)庫存儲模塊交互起來,該處理邏輯根據(jù)GPRS交互通信及控制來進(jìn)行控制和更改并且根據(jù)GPRS實時通訊協(xié)議獲取數(shù)據(jù)庫的數(shù)據(jù),用于上層MCU微控制器根據(jù)其建立通訊的邏輯控制標(biāo)定聯(lián)絡(luò)單元和用于安排各個單元模塊的通訊時序和規(guī)則的建立通訊管理單元。進(jìn)一步,底層控制模塊中的CAN總線處理邏輯在包括標(biāo)定處理和數(shù)據(jù)過濾的基礎(chǔ)上,還包括遠(yuǎn)程握手、遠(yuǎn)程燒寫和遠(yuǎn)程控制中至少一種功能。
[0052]需要說明的是,整車控制器4的不同工作模式的切換是嚴(yán)格控制的,4會自行根據(jù)通訊命令和當(dāng)前狀態(tài)自行判斷,根據(jù)需要自動進(jìn)入不同模式。
[0053](I)空閑狀態(tài)
[0054]如果整車控制器4處于空閑狀態(tài)且滿足升級條件,則整車控制器4響應(yīng)遠(yuǎn)程控制終端I的更新控制指令,對內(nèi)置的存儲設(shè)備的對應(yīng)位置設(shè)置標(biāo)志幀,用于標(biāo)記下次啟動切換的工作模式,并進(jìn)行復(fù)位操作。整車控制器4在下次啟動時,查詢存儲設(shè)備對應(yīng)位置的標(biāo)志幀,整車控制器4切換到遠(yuǎn)程燒寫或者參數(shù)配置模式,寫入升級文件和配置參數(shù)。
[0055](2)非空閑狀態(tài)
[0056]如果整車控制器4處于非空閑狀態(tài)或者不滿足升級條件時,整車控制器4不響應(yīng)遠(yuǎn)程控制終端I的更新控制指令。這是由于整車控制器4擁有不同的工作模式,當(dāng)判斷出需要系統(tǒng)升級時,將以當(dāng)前工作任務(wù)為主,保持工作狀態(tài),直到下一次空閑時間到來,再進(jìn)行系統(tǒng)升級和遠(yuǎn)程參數(shù)刷寫。
[0057]整車控制器4對內(nèi)置的存儲設(shè)備的對應(yīng)位置設(shè)置標(biāo)志幀,用于標(biāo)記下次啟動切換的工作模式,并進(jìn)行復(fù)位操作。當(dāng)整車控制器4被安全關(guān)閉后,再次啟動時響應(yīng)更新控制指令,查詢存儲設(shè)備的對應(yīng)位置的標(biāo)志幀。整車控制器4切換到遠(yuǎn)程燒寫或者參數(shù)配置模式,寫入升級文件和配置參數(shù)。
[0058]在本發(fā)明的一個實施例中,空閑狀態(tài)下或非空閑狀態(tài)下,整車控制器4在寫入升級文件和配置參數(shù)后,將存儲設(shè)備對應(yīng)位置的標(biāo)志幀復(fù)位以保證整車控制器4在下次啟動后進(jìn)入正常工作模式。
[0059]在本發(fā)明的一個實施例中,整車控制器4內(nèi)置的存儲設(shè)備為EEPROM((ElectricalIy Erasable Programmable Read-Only Memory,電子抹除式可復(fù)寫只讀存儲器)或閃存設(shè)備Flash。其中,存儲設(shè)備的容量至少為8字節(jié),用于存儲下一次啟動時的狀態(tài)模式。
[0060]整車控制器4在正常運(yùn)行時,與遠(yuǎn)程控制終端I的通訊協(xié)議會檢測到遠(yuǎn)程控制終端I通知升級狀態(tài),而將升級系統(tǒng)文件和通訊命令存儲在上述大容量存儲設(shè)備中。
[0061]根據(jù)本發(fā)明實施例的用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng),適用于純電動車輛的整車管理系統(tǒng)的工作和未來升級系統(tǒng)的需要,提供易于維護(hù)和整體擴(kuò)展的遠(yuǎn)程控制終端及控制設(shè)備。本發(fā)明采用遠(yuǎn)程控制終端與整車控制器通過CAN總線進(jìn)行通訊實現(xiàn)遠(yuǎn)程更新升級,不需要大量的人員操作,即使是對于大面積多數(shù)量同時工作在不同環(huán)境和不同地點的整車控制器進(jìn)行配置,從而避免了人為和環(huán)境等因素的干擾,實現(xiàn)無干擾更新。此外,由于采用CAN總線通訊,自動實現(xiàn)更新,相對簡化了整車控制器的工作。并且,如果升級過程中出現(xiàn)升級錯誤,也可以通過將存儲設(shè)備的標(biāo)志幀復(fù)位的方式,使得整車控制器下次進(jìn)入正常模式,不影響整車控制器的正常工作。
[0062]如圖2所示,本發(fā)明實施例的用于整車控制的遠(yuǎn)程無干擾更新方法,包括如下步驟:
[0063]步驟S101,遠(yuǎn)程控制終端與遠(yuǎn)程控制服務(wù)器進(jìn)行握手應(yīng)答以建立通信,并向遠(yuǎn)程控制服務(wù)器發(fā)送更新文件獲取指令。
[0064]步驟S102,遠(yuǎn)程控制服務(wù)器在接收到遠(yuǎn)程控制終端的更新文件獲取指令后,查詢控制服務(wù)器內(nèi)的更新文件數(shù)據(jù)庫并調(diào)取與更新文件獲取指令對應(yīng)的升級文件和配置參數(shù),轉(zhuǎn)發(fā)至遠(yuǎn)程控制終端。
[0065]在本發(fā)明的一個實施例中,遠(yuǎn)程控制服務(wù)器對接收到的升級文件和配置參數(shù)進(jìn)行安全校驗,在校驗通過后將升級文件和配置參數(shù)轉(zhuǎn)發(fā)給遠(yuǎn)程控制終端。
[0066]步驟S103,遠(yuǎn)程控制終端接收來自遠(yuǎn)程控制服務(wù)器的升級文件和配置參數(shù),檢測整車控制器是否處于空閑狀態(tài)并向整車控制器發(fā)送更新控制指令。
[0067]圖3為根據(jù)本發(fā)明實施例的整車控制器空閑狀態(tài)下的遠(yuǎn)程無干擾更新方法的工作流程圖。
[0068]步驟S104,如果整車控制器處于空閑狀態(tài)且滿足升級條件,則整車控制器響應(yīng)遠(yuǎn)程控制終端的更新控制指令。
[0069]具體地,整車控制器如果當(dāng)前處在系統(tǒng)空閑時間,并且判斷當(dāng)前工作環(huán)境滿足升級條件時,將立刻響應(yīng)遠(yuǎn)程控制終端的命令,將當(dāng)前整車控制器程序掛起。
[0070]步驟S105,對內(nèi)置的存儲設(shè)備的對應(yīng)位置設(shè)置標(biāo)志巾貞以標(biāo)記下次啟動切換的工作模式并進(jìn)行復(fù)位操作。
[0071]整車控制器根據(jù)遠(yuǎn)程控制終端傳輸?shù)目刂泼?,對存儲設(shè)備EEPROM或者Flash的對應(yīng)位置打上相應(yīng)標(biāo)志巾貞,標(biāo)記下一次啟動時切換的工作模式,進(jìn)行復(fù)位操作。
[0072]步驟S106,整車控制器在下次啟動時,查詢存儲設(shè)備的對應(yīng)位置的標(biāo)志幀。
[0073]步驟S107,整車控制器切換到遠(yuǎn)程燒寫或者參數(shù)配置模式,寫入升級文件和配置參數(shù)。
[0074]整車控制器在啟動時,會查詢EEPROM或者Flash的對應(yīng)位置上的相應(yīng)標(biāo)志幀,如果該標(biāo)志幀滿足條件,則先進(jìn)入相應(yīng)的工作模式。具體地,整車控制器切換到遠(yuǎn)程燒寫或者參數(shù)配置模式,寫入升級文件和配置參數(shù)。
[0075]當(dāng)整車控制器完成的相應(yīng)的操作后,則將EEPROM或者Flash的對應(yīng)位置上的相應(yīng)標(biāo)志幀復(fù)位,保證下次啟動后能夠正常的進(jìn)入整車控制器工作模式。
[0076]圖4為根據(jù)本發(fā)明實施例的整車控制器非空閑狀態(tài)下的遠(yuǎn)程無干擾更新方法的工作流程圖。
[0077]步驟S108,如果整車控制器處于非空閑狀態(tài)或者不滿足升級條件時,則整車控制器不響應(yīng)遠(yuǎn)程控制終端的更新控制指令。
[0078]如果整車控制器處于非空閑時間,或者判斷出當(dāng)前工作環(huán)境不滿足升級條件,或者處于安全狀況的考慮,將暫緩升級命令,不對遠(yuǎn)程控制終端進(jìn)行響應(yīng)。
[0079]步驟S109,對內(nèi)置的存儲設(shè)備的對應(yīng)位置設(shè)置標(biāo)志巾貞以標(biāo)記下次啟動切換的工作模式,并進(jìn)行復(fù)位操作。
[0080]整車控制器僅將對EEPROM或者Flash的對應(yīng)位置打上相應(yīng)標(biāo)志幀,標(biāo)記下一次啟動時切換的工作模式。并且進(jìn)行復(fù)位操作。
[0081]步驟S110,當(dāng)整車控制器被安全關(guān)閉后,再次啟動時響應(yīng)更新控制指令,查詢存儲設(shè)備的對應(yīng)位置的標(biāo)志中貞。
[0082]步驟S111,整車控制器切換到遠(yuǎn)程燒寫或者參數(shù)配置模式,寫入升級文件和配置參數(shù)。
[0083]整車控制器將掛起系統(tǒng)升級響應(yīng),直到整車控制器被安全關(guān)閉。當(dāng)下一次程序啟動時,整車控制器將會查詢EEPROM或者Flash的對應(yīng)位置上的相應(yīng)標(biāo)志幀,如果該標(biāo)志幀滿足條件,則先進(jìn)入相應(yīng)的工作模式。具體地,整車控制器切換到遠(yuǎn)程燒寫或者參數(shù)配置模式,寫入升級文件和配置參數(shù)。當(dāng)完成的相應(yīng)的操作后,則將EEPROM或者Flash的對應(yīng)位置上的相應(yīng)標(biāo)志幀復(fù)位,保證下次啟動后能夠正常的進(jìn)入整車控制器工作模式。
[0084]圖5為根據(jù)本發(fā)明實施例的遠(yuǎn)程升級文件邏輯示意圖。
[0085]步驟S201,程序啟動。
[0086]步驟S202,判斷EEPROM狀態(tài),滿足條件進(jìn)入bootloader。
[0087]步驟S203,等待接收握手命令,如果握手失敗,則執(zhí)行步驟S204,如果握手成功,則改變當(dāng)前狀態(tài)為_STA_LINKED,執(zhí)行步驟S205。
[0088]步驟S204,跳轉(zhuǎn)到OxcOOO地址運(yùn)行。
[0089]步驟S205,運(yùn)行bootloader燒寫函數(shù)。
[0090]步驟S206,Bootloader的中斷函數(shù)接收S19文件,然后執(zhí)行步驟S207。
[0091]步驟S207,燒寫結(jié)束,切換CAN的中斷向量。跳轉(zhuǎn)到新程序的主函數(shù)運(yùn)行。
[0092]圖6為根據(jù)本發(fā)明實施例的bootloader燒寫函數(shù)的運(yùn)行流程圖。
[0093]步驟S2051,握手成功進(jìn)入bootloader。
[0094]步驟S2052,準(zhǔn)備工作:搬運(yùn)flash燒寫程序到ram,更改CAN中斷向量。
[0095]步驟S2053,檢測當(dāng)前狀態(tài)為UP_READY,并發(fā)送該狀態(tài)給上位機(jī)軟件完成通訊連接。
[0096]步驟S2054,讀取CAN數(shù)據(jù)并進(jìn)行分析。
[0097]步驟S2055,提取出相應(yīng)的S19文件,分析結(jié)構(gòu)。
[0098]步驟S2056,獲取有效數(shù)據(jù),并燒寫至相應(yīng)Flash段。
[0099]S卩,將升級文件和配置參數(shù)燒寫至整車控制器的存儲設(shè)備Flash段。
[0100]步驟S2057,判斷是否接收到文件,發(fā)送完畢幀D0WN_FILE_END,如果是,則執(zhí)行步驟S2058,否則返回步驟S2054。
[0101]步驟S2058,燒寫完畢,跳轉(zhuǎn)到設(shè)定好的主程序位置運(yùn)行,即跳轉(zhuǎn)到步驟S207。
[0102]根據(jù)本發(fā)明實施例的用于整車控制的遠(yuǎn)程無干擾更新方法,適用于純電動車輛的整車管理系統(tǒng)的工作和未來升級系統(tǒng)的需要,提供易于維護(hù)和整體擴(kuò)展的遠(yuǎn)程控制終端及控制設(shè)備。本發(fā)明采用遠(yuǎn)程控制終端與整車控制器通過CAN總線進(jìn)行通訊實現(xiàn)遠(yuǎn)程更新升級,不需要大量的人員操作,即使是對于大面積多數(shù)量同時工作在不同環(huán)境和不同地點的整車控制器進(jìn)行配置,從而避免了人為和環(huán)境等因素的干擾,實現(xiàn)無干擾更新。此外,由于采用CAN總線通訊,自動實現(xiàn)更新,相對簡化了整車控制器的工作。并且,如果升級過程中出現(xiàn)升級錯誤,也可以通過將存儲設(shè)備的標(biāo)志幀復(fù)位的方式,使得整車控制器下次進(jìn)入正常模式,不影響整車控制器的正常工作。
[0103]在本說明書的描述中,參考術(shù)語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點包含于本發(fā)明的至少一個實施例或示例中。在本說明書中,對上述術(shù)語的示意性表述不一定指的是相同的實施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點可以在任何的一個或多個實施例或示例中以合適的方式結(jié)合。
[0104]盡管上面已經(jīng)示出和描述了本發(fā)明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發(fā)明的限制,本領(lǐng)域的普通技術(shù)人員在不脫離本發(fā)明的原理和宗旨的情況下在本發(fā)明的范圍內(nèi)可以對上述實施例進(jìn)行變化、修改、替換和變型。本發(fā)明的范圍由所附權(quán)利要求極其等同限定。
【權(quán)利要求】
1.一種用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng),其特征在于,包括:遠(yuǎn)程控制終端、遠(yuǎn)程控制服務(wù)器、控制服務(wù)器和整車控制器,其中, 所述遠(yuǎn)程控制終端用于與所述遠(yuǎn)程控制服務(wù)器和整車控制器進(jìn)行握手應(yīng)答以建立通信,并向所述遠(yuǎn)程控制服務(wù)器發(fā)送更新文件獲取指令,接收來自所述遠(yuǎn)程控制服務(wù)器的升級文件和配置參數(shù),以及檢測所述整車控制器是否處于空閑狀態(tài)并向所述整車控制器發(fā)送更新控制指令; 所述遠(yuǎn)程控制服務(wù)器與所述控制服務(wù)器相連,用于在接收到所述遠(yuǎn)程控制終端的更新文件獲取指令后,查詢所述控制服務(wù)器內(nèi)的更新文件數(shù)據(jù)庫并調(diào)取與所述更新文件獲取指令對應(yīng)的升級文件和配置參數(shù),轉(zhuǎn)發(fā)至所述遠(yuǎn)程控制終端; 所述整車控制器用于檢測到處于空閑狀態(tài)時,則響應(yīng)所述更新控制指令,切換到遠(yuǎn)程燒寫或者參數(shù)配置模式以向所述整車控制器寫入升級文件和配置參數(shù)。
2.如權(quán)利要求1所述的用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng),其特征在于,所述遠(yuǎn)程控制服務(wù)器還用于對接收到的所述升級文件和配置參數(shù)進(jìn)行安全校驗,在校驗通過后將所述升級文件和配置參數(shù)轉(zhuǎn)發(fā)給所述遠(yuǎn)程控制終端。
3.如權(quán)利要求1所述的用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng),其特征在于,如果所述整車控制器處于空閑狀態(tài)且滿足升級條件,則所述整車控制器響應(yīng)所述遠(yuǎn)程控制終端的更新控制指令,對內(nèi)置的存儲設(shè)備的對應(yīng)位置設(shè)置標(biāo)志幀,用于標(biāo)記下次啟動切換的工作模式,并進(jìn)行復(fù)位操作,所述整車控制器在下次啟動時,查詢所述存儲設(shè)備的對應(yīng)位置的標(biāo)志幀,所述整車控制器切換到遠(yuǎn)程燒寫或者參數(shù)配置模式,寫入升級文件和配置參數(shù)。
4.如權(quán)利要求1所述的用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng),其特征在于,如果所述整車控制器處于非空閑狀態(tài)或者不滿足升級條件時,則所述整車控制器不響應(yīng)所述遠(yuǎn)程控制終端的更新控制指令,對內(nèi)置的存儲設(shè)備的對應(yīng)位置設(shè)置標(biāo)志幀,用于標(biāo)記下次啟動切換的工作模式,并進(jìn)行復(fù)位操作,當(dāng)所述整車控制器被安全關(guān)閉后,再次啟動時,響應(yīng)所述更新控制指令,查詢所述存儲設(shè)備的對應(yīng)位置的標(biāo)志幀,所述整車控制器切換到遠(yuǎn)程燒寫或者參數(shù)配置模式,寫入升級文件和配置參數(shù)。
5.如權(quán)利要求3或4所述的用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng),其特征在于,所述整車控制器在寫入升級文件和配置參數(shù)后,將所述存儲設(shè)備對應(yīng)位置的標(biāo)志幀復(fù)位以保證所述整車控制器在下次啟動后進(jìn)入正常工作模式。
6.如權(quán)利要求5所述的用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng),其特征在于,所述整車控制器內(nèi)置的存儲設(shè)備為電子抹除式可復(fù)寫只讀存儲器EEPROM或閃存設(shè)備Flash。
7.如權(quán)利要求1所述的用于整車控制的遠(yuǎn)程無干擾更新系統(tǒng),其特征在于,所述遠(yuǎn)程控制終端與所述遠(yuǎn)程控制服務(wù)器采用GPRS通訊協(xié)議進(jìn)行通信,所述遠(yuǎn)程控制終端與所述整車控制器采用CAN通信協(xié)議進(jìn)行通信。
8.一種用于整車控制的遠(yuǎn)程無干擾更新方法,其特征在于,包括如下步驟: 遠(yuǎn)程控制終端與遠(yuǎn)程控制服務(wù)器進(jìn)行握手應(yīng)答以建立通信,并向所述遠(yuǎn)程控制服務(wù)器發(fā)送更新文件獲取指令; 所述遠(yuǎn)程控制服務(wù)器在接收到所述遠(yuǎn)程控制終端的更新文件獲取指令后,查詢控制服務(wù)器內(nèi)的更新文件數(shù)據(jù)庫并調(diào)取與所述更新文件獲取指令對應(yīng)的升級文件和配置參數(shù),轉(zhuǎn)發(fā)至所述遠(yuǎn)程控制終端; 所述遠(yuǎn)程控制終端接收來自所述遠(yuǎn)程控制服務(wù)器的升級文件和配置參數(shù),檢測整車控制器是否處于空閑狀態(tài)并向所述整車控制器發(fā)送更新控制指令; 如果所述整車控制器處于空閑狀態(tài)且滿足升級條件,則所述整車控制器響應(yīng)所述遠(yuǎn)程控制終端的更新控制指令,對內(nèi)置的存儲設(shè)備的對應(yīng)位置設(shè)置標(biāo)志幀以標(biāo)記下次啟動切換的工作模式并進(jìn)行復(fù)位操作,所述整車控制器在下次啟動時,查詢所述存儲設(shè)備的對應(yīng)位置的標(biāo)志幀,所述整車控制器切換到遠(yuǎn)程燒寫或者參數(shù)配置模式,寫入升級文件和配置參數(shù); 如果所述整車控制器處于非空閑狀態(tài)或者不滿足升級條件時,則所述整車控制器不響應(yīng)所述遠(yuǎn)程控制終端的更新控制指令,對內(nèi)置的存儲設(shè)備的對應(yīng)位置設(shè)置標(biāo)志幀以標(biāo)記下次啟動切換的工作模式,并進(jìn)行復(fù)位操作,當(dāng)所述整車控制器被安全關(guān)閉后,再次啟動時響應(yīng)所述更新控制指令,查詢所述存儲設(shè)備的對應(yīng)位置的標(biāo)志幀,所述整車控制器切換到遠(yuǎn)程燒寫或者參數(shù)配置模式,寫入升級文件和配置參數(shù)。
9.如權(quán)利要求8所述的用于整車控制的遠(yuǎn)程無干擾更新方法,其特征在于,所述遠(yuǎn)程控制服務(wù)器對接收到的所述升級文件和配置參數(shù)進(jìn)行安全校驗,在校驗通過后將所述升級文件和配置參數(shù)轉(zhuǎn)發(fā)給所述遠(yuǎn)程控制終端。
10.如權(quán)利要求8所述的用于整車控制的遠(yuǎn)程無干擾更新方法,其特征在于,所述整車控制器在寫入升級文件和配置參數(shù)后,將所述存儲設(shè)備對應(yīng)位置的標(biāo)志幀復(fù)位以保證所述整車控制器在下次啟動后進(jìn)入正常工作模式。
【文檔編號】B60R16/02GK104149717SQ201410373476
【公開日】2014年11月19日 申請日期:2014年7月31日 優(yōu)先權(quán)日:2014年7月31日
【發(fā)明者】幺軼群, 李旭榮 申請人:北京中瑞藍(lán)科電動汽車技術(shù)有限公司