周相青 韓軍良,2 宋會(huì) 馮長(zhǎng)虹 袁書(shū)豪
1. 河南省西峽汽車(chē)水泵股份有限公司 河南省南陽(yáng)市 474550 2. 南陽(yáng)理工學(xué)院機(jī)械與汽車(chē)工程學(xué)院 河南省南陽(yáng)市 473000;3. 美的集團(tuán)中央空調(diào)事業(yè)部 廣東省佛山市 528000
整車(chē)控制器(VCU)是電動(dòng)汽車(chē)的核心控制單元,負(fù)責(zé)與電機(jī)控制和驅(qū)動(dòng)系統(tǒng)、電池管理系統(tǒng)、車(chē)載充電機(jī)、DC/DC轉(zhuǎn)換系統(tǒng)、能量回收系統(tǒng)、車(chē)載空調(diào)系統(tǒng)、儀表顯示裝置等之間的協(xié)調(diào)控制和綜合管理,實(shí)現(xiàn)整車(chē)驅(qū)動(dòng)控制、能量?jī)?yōu)化管理、車(chē)內(nèi)環(huán)境溫度控制、整車(chē)網(wǎng)絡(luò)化管理、整車(chē)狀態(tài)監(jiān)測(cè)及故障診斷和處理等功能[1]。整車(chē)控制器需要具有很強(qiáng)的運(yùn)算能力,來(lái)保證系統(tǒng)運(yùn)行的實(shí)時(shí)性;要具有豐富的外圍端口,能夠采集檔位、加速踏板、制動(dòng)踏板、溫度、母線電壓、母線電流等各種信號(hào),能夠控制主繼電器、空調(diào)繼電器等;要具備CAN通訊接口,能夠與電機(jī)控制和驅(qū)動(dòng)系統(tǒng)、電池管理系統(tǒng)、儀表顯示系統(tǒng)等進(jìn)行通信[2]。本文針對(duì)電動(dòng)汽車(chē)高性能整車(chē)控制器的硬件設(shè)計(jì)、基于AUTOSAR軟件架構(gòu)的底層驅(qū)動(dòng)軟件設(shè)計(jì)、基于模型的應(yīng)用層軟件設(shè)計(jì)等方面展開(kāi)研究。
高性能整車(chē)控制器硬件架構(gòu)采用模塊化、隔離化的設(shè)計(jì)思想,包括電源模塊、微控制器(MCU)最小系統(tǒng)、模擬信號(hào)輸入調(diào)理模塊、開(kāi)關(guān)量信號(hào)輸入調(diào)理模塊、開(kāi)關(guān)量信號(hào)輸出驅(qū)動(dòng)模塊、CAN通訊模塊,其硬件架構(gòu)如圖1所示。電源模塊將DC-DC電源輸出的電壓轉(zhuǎn)化為+5V、+3.3V和+1.2V電壓。模擬信號(hào)輸入調(diào)理模塊用于采集油門(mén)踏板、制動(dòng)踏板、方向盤(pán)轉(zhuǎn)角等模擬信號(hào)。開(kāi)關(guān)量信號(hào)輸入調(diào)理模塊用于采集充電開(kāi)關(guān)、鑰匙開(kāi)關(guān)、檔位開(kāi)關(guān)、模式開(kāi)關(guān)等開(kāi)關(guān)量信息。開(kāi)關(guān)量信號(hào)輸出驅(qū)動(dòng)模塊用于驅(qū)動(dòng)主電源繼電器、充電機(jī)繼電器和空調(diào)繼電器等。CAN 通訊模塊用于整車(chē)控制器和充電機(jī)、電機(jī)控制器、電池管理系統(tǒng)、能量管理系統(tǒng)等之間的數(shù)據(jù)通信。
微控制器是整車(chē)控制器的核心,它負(fù)責(zé)所有系統(tǒng)數(shù)據(jù)的采集、處理、邏輯運(yùn)算以及控制指令的輸人輸出。高性能整車(chē)控制器的核心MCU采用TI公司的高性能32位Hercules TMS570LS3137 安全微控制器。TMS570LS3137是一款用于安全系統(tǒng)的高性能汽車(chē)級(jí)微控制器,集成了ARM Cortex-R4F浮點(diǎn)型CPU,具有高達(dá)180MHz的系統(tǒng)時(shí)鐘,支持單精度和雙精度浮點(diǎn)運(yùn)算,內(nèi)部集成了3MB閃存以及256KB的RAM。TMS570LS3137具有很強(qiáng)的運(yùn)算能力與數(shù)據(jù)存儲(chǔ)能力,能夠保證系統(tǒng)運(yùn)行的實(shí)時(shí)性。
本文依照AUTOSAR設(shè)計(jì)規(guī)范來(lái)設(shè)計(jì)整車(chē)控制器軟件架構(gòu)。AUTOSAR是由全球主要汽車(chē)生產(chǎn)商、汽車(chē)零部件供應(yīng)商、汽車(chē)電子軟件系統(tǒng)公司、電子器件供應(yīng)商聯(lián)合建立的一套開(kāi)放的、標(biāo)準(zhǔn)化的軟件架構(gòu)。AUTOSAR架構(gòu)通過(guò)引入模塊化的軟件開(kāi)發(fā)方法,規(guī)范不同結(jié)構(gòu)的電子控制單元的接口特征標(biāo)椎化,使得應(yīng)用軟件具備更強(qiáng)的可擴(kuò)展性以及可移植性,大大簡(jiǎn)化了軟件開(kāi)發(fā)流程,提升了軟件兼容性,從而能夠靈活應(yīng)對(duì)日益復(fù)雜的汽車(chē)電子軟件開(kāi)發(fā)需求,提升了汽車(chē)電子軟件的開(kāi)發(fā)效率[3]。

圖1 整車(chē)控制器硬件架構(gòu)設(shè)計(jì)
為了實(shí)現(xiàn)應(yīng)用程序和硬件模塊之間的分離,AUTOSAR架構(gòu)被抽象成四層,由上至下依次是:應(yīng)用層、實(shí)時(shí)運(yùn)行環(huán)境層(RTE)、基礎(chǔ)軟件層和微控制器層[4],其架構(gòu)如圖2所示。
應(yīng)用層即軟件組件層,是整個(gè)系統(tǒng)開(kāi)發(fā)的核心,它把汽車(chē)電子領(lǐng)域內(nèi)的一些典型的應(yīng)用劃分為若干個(gè)由一個(gè)或多個(gè)軟件組件組成的模塊,應(yīng)用層的軟件組件是通過(guò)實(shí)時(shí)運(yùn)行環(huán)境層進(jìn)行內(nèi)部通信及對(duì)VCU資源的訪問(wèn),從而可使軟件設(shè)計(jì)能夠獨(dú)立于底層硬件部分。
AUTOSAR架構(gòu)中各個(gè)組件之間無(wú)法直接進(jìn)行數(shù)據(jù)交換,實(shí)時(shí)運(yùn)行環(huán)境層為應(yīng)用層組件、基礎(chǔ)軟件層各組件之間提供通信服務(wù)。
基礎(chǔ)軟件層又分為系統(tǒng)服務(wù)層、VCU抽象層、復(fù)雜驅(qū)動(dòng)層、微控制器抽象層。系統(tǒng)服務(wù)層為應(yīng)用軟件和基礎(chǔ)軟件模塊提供基礎(chǔ)服務(wù),VCU抽象層將系統(tǒng)中VCU結(jié)構(gòu)抽象出來(lái)。復(fù)雜驅(qū)動(dòng)層主要任務(wù)是整合具有特殊目的且不能用微控制器抽象層進(jìn)行配置的非標(biāo)準(zhǔn)功能模塊。微控制器抽象層位于基礎(chǔ)軟件層的最底層,包含內(nèi)部驅(qū)動(dòng),可以直接訪問(wèn)微控制器和片內(nèi)外設(shè)。
在本文設(shè)計(jì)中,高性能整車(chē)控制器的軟件架構(gòu)設(shè)計(jì)遵循V模型開(kāi)發(fā)模式[5],應(yīng)用為上層的控制策略,基礎(chǔ)軟件層為底層的硬件驅(qū)動(dòng),實(shí)時(shí)運(yùn)行環(huán)境層為兩者提供通訊服務(wù)。以AUTOSAR架構(gòu)的層次模式為基礎(chǔ),提出了一種環(huán)形層次軟件架構(gòu),如圖3所示。圖中同心圓代表軟件系統(tǒng),周邊方形模塊是硬件資源,從內(nèi)至外,三層環(huán)形層次依次為核心層、調(diào)度層和驅(qū)動(dòng)層。核心層是整車(chē)控制器軟件系統(tǒng)的最頂層,處于架構(gòu)最核心的位置。調(diào)度層處在軟件系統(tǒng)的中層,既銜接驅(qū)動(dòng)層,又支撐核心層。驅(qū)動(dòng)層位于軟件系統(tǒng)的最外層,實(shí)現(xiàn)微控制器的初始化和與板載硬件資源的交互。根據(jù)上述設(shè)計(jì)思想,整車(chē)控制器主程序流程圖設(shè)計(jì)如圖4所示。

圖2 AUTOSAR架構(gòu)圖

圖3 整車(chē)控制器軟件架構(gòu)設(shè)計(jì)圖
本文采用基于模型的代碼自動(dòng)生成技術(shù)來(lái)實(shí)現(xiàn)上層控制代碼的自動(dòng)生成。首先在Matlab/ Simulink中建立控制算法的模型,然后利用Simulink的Real Time Workshop Embedded Coder工具完成自動(dòng)代碼生成[6]。在完成模型在環(huán)測(cè)試、軟件在環(huán)測(cè)試等測(cè)試工作,保證自動(dòng)生成代碼的質(zhì)量后,把自動(dòng)生成的代碼與基于整車(chē)控制器的底層驅(qū)動(dòng)代碼集成到TMS570LS3137的開(kāi)發(fā)環(huán)境CCS(Code Composer Studio)工程中,從而完成整車(chē)控制器軟件的集成。
本文以高性能整車(chē)控制器為研究目標(biāo),進(jìn)行了硬件架構(gòu)設(shè)計(jì)和基于AUTOSAR規(guī)范的軟件架構(gòu)設(shè)計(jì)。采用具有很強(qiáng)運(yùn)算能力與數(shù)據(jù)存儲(chǔ)能力的安全微控制器,保證了系統(tǒng)運(yùn)行的實(shí)時(shí)性。通過(guò)MATLAB軟件利對(duì)上層控制代碼進(jìn)行了自動(dòng)生成,然后將自動(dòng)生成的代碼與底層代碼集成。采用代碼自動(dòng)生成技術(shù)減少了軟件開(kāi)發(fā)過(guò)程中程序編寫(xiě)花費(fèi)的時(shí)間,減輕了應(yīng)用層軟件的開(kāi)發(fā)工作量,簡(jiǎn)化了軟件開(kāi)發(fā)流程,提升了軟件兼容性,提高了汽車(chē)電子軟件的開(kāi)發(fā)效率。

圖4 整車(chē)控制器主程序流程圖