汽車電子嵌入式技術(shù)
1.車控電子產(chǎn)品的系統(tǒng)平臺(tái)-OSEK/VDX
OSEK/VDX 規(guī)范從實(shí)時(shí)操作系統(tǒng)(Real-Time Operating System, RTOS)、軟件接口、通訊和網(wǎng)絡(luò)管理等方面對(duì)汽車的電子控制軟件開發(fā)平臺(tái)作了較為全面的定義與規(guī)定。將Open Systems and the Corresponding Interfaces For Automotive Electronics規(guī)范簡(jiǎn)稱為OSEK規(guī)范。
兼容OSEK/VDX規(guī)范的操作系統(tǒng)應(yīng)用架構(gòu)
OSEK/VDX標(biāo)準(zhǔn)包括以下四部分:OSEK/VDX操作系統(tǒng)規(guī)范(OSEK Operating System,OSEK OS), OSEK/VDX 通訊規(guī)范(OSEK Communication,OSEK COM), OSEK/VDX 網(wǎng)絡(luò)管理規(guī)范(OSEK Network Management,OSEK NM)以及OSEK/VDX實(shí)現(xiàn)語(yǔ)言(OSEK Implementation Language,OSEK OIL)。采用符合OSEK/VDX標(biāo)準(zhǔn)的嵌入式實(shí)時(shí)操作系
統(tǒng)可以提高產(chǎn)品代碼的復(fù)用率、降低開發(fā)成本、縮短產(chǎn)品開發(fā)周期。使用兼容OSEK/VDX標(biāo)準(zhǔn)的嵌入式實(shí)時(shí)操作系統(tǒng)的應(yīng)用架構(gòu)如下圖所示。
2.OSEK/VDX任務(wù)管理
OSEK/VDX將任務(wù)分為基本任務(wù)和擴(kuò)展任務(wù)?;救蝿?wù)具有3種狀態(tài):運(yùn)行狀態(tài)、就緒狀態(tài)、掛起狀態(tài);擴(kuò)展任務(wù)比基本任務(wù)增加一個(gè)等待狀態(tài)?;救蝿?wù)只在開始和結(jié)束時(shí)才有同步點(diǎn)。擴(kuò)展任務(wù)運(yùn)行時(shí)可能進(jìn)入等待狀態(tài),因此不僅在開始和結(jié)束有同步點(diǎn),而且運(yùn)行過(guò)程中可能有多個(gè)同步點(diǎn)。下圖所示的是擴(kuò)展任務(wù)與基本任務(wù)的狀態(tài)轉(zhuǎn)化圖。
OSEK OS規(guī)范規(guī)定的任務(wù)類型
3。OSEK實(shí)現(xiàn)語(yǔ)言規(guī)范
為了達(dá)到軟件可移植的目標(biāo),OSEK OIL規(guī)范(OSEK Implementation Language Specification)定義了一種配置和使用OSEK應(yīng)用的方法。下圖表示了一個(gè)遵守OSEK規(guī)范的應(yīng)用開發(fā)過(guò)程。OIL文件可以是手寫的或者是系統(tǒng)配置工具產(chǎn)生。
基于OSEK規(guī)范的應(yīng)用開發(fā)過(guò)程
OIL提供一種在特定CPU中配置OSEK應(yīng)用的機(jī)制。每個(gè)CPU對(duì)應(yīng)一個(gè)OIL描述。所有的OSEK系統(tǒng)對(duì)象用OIL對(duì)象來(lái)描述。OSEK應(yīng)用的OIL描述是一組OIL對(duì)象的組合。CPU是這些OIL對(duì)象的容器。OIL明確地為每個(gè)OIL對(duì)象定義了所有標(biāo)準(zhǔn)屬性。每個(gè)OSEK應(yīng)用可以定義附加地特殊執(zhí)行屬性和引用。每個(gè)OSEK應(yīng)用可以限制每個(gè)屬性的取值范圍。
4.車控電子產(chǎn)品的開發(fā)流程
車控電子產(chǎn)品是軟硬件結(jié)合的嵌入式系統(tǒng)。為了節(jié)約資源,縮短產(chǎn)品開發(fā)周期,一般應(yīng)采取軟硬件同步開發(fā)的方案。車控電子產(chǎn)品的開發(fā)工具對(duì)軟硬件的同步開發(fā)、調(diào)試提供了很好的支持。車控電子產(chǎn)品的軟件開發(fā)分為功能描述、軟件設(shè)計(jì)、代碼生成、操作系統(tǒng)環(huán)境下高級(jí)調(diào)試等步驟。車控電子產(chǎn)品的硬件開發(fā)分為硬件描述、硬件設(shè)計(jì)、硬件調(diào)試等步驟。當(dāng)軟件設(shè)計(jì)完成后,通過(guò)使用相應(yīng)的工具,完成在虛擬ECU平臺(tái)上的驗(yàn)證。當(dāng)硬件設(shè)計(jì)完成后,與硬件一起進(jìn)行軟硬件集成調(diào)試。通過(guò)這種開發(fā)方式,縮短了產(chǎn)品上市的時(shí)間。
軟硬件并行的開發(fā)方案
5.車控電子產(chǎn)品軟件開發(fā)流程
汽車車控電子產(chǎn)品軟件開發(fā)流程是“V”形開發(fā)流程。“V”形開發(fā)流程分為五個(gè)階段,即功能設(shè)計(jì)、原型仿真、代碼生成、硬件在回路仿真-HIL、標(biāo)定。
在功能設(shè)計(jì)階段使用的主要工具是MATLAB。通過(guò)使用MATLAB提供的Simulink、Stateflow等工具,完成控制方案的設(shè)計(jì)、功能模塊的設(shè)計(jì)、控制算法的設(shè)計(jì)等任務(wù),并進(jìn)行初步的仿真模擬工作。在原型仿真階段使用的主要工具是dSPACE。使用dSPACE提供的快速控制原型-RCP工具完成離線的仿真工作。在開始該階段之前,需要使用Real Time Workshop、Targetlink等工具完成由Simulink、Stateflow等產(chǎn)生的代碼向標(biāo)準(zhǔn) C代碼的轉(zhuǎn)換工作。
6.車控電子產(chǎn)品代碼生成過(guò)程
在進(jìn)行向標(biāo)準(zhǔn) C代碼的轉(zhuǎn)換的過(guò)程中,可以根據(jù)需要加入符合OSEK規(guī)范的嵌入式實(shí)時(shí)操作系統(tǒng)。在代碼生產(chǎn)階段使用的主要工具是CodeWarrior。通過(guò)使用CodeWarrior提供的編譯器、調(diào)試器等工具,完成從標(biāo)準(zhǔn)C代碼向目標(biāo)硬件平臺(tái)上的產(chǎn)品代碼的轉(zhuǎn)換工作。下圖表示了車控電子產(chǎn)品的代碼生成過(guò)程。
7.汽車電子系統(tǒng)劃分
汽車電子產(chǎn)品可分為兩大類:1. 汽車電子控制裝置,包括動(dòng)力總成控制、底盤和車身電子控制、舒適和防盜系統(tǒng)。2. 車載汽車電子裝置,包括汽車信息系統(tǒng)(車載電腦)、導(dǎo)航系統(tǒng)、汽車視聽娛樂(lè)系統(tǒng)、車載通信系統(tǒng)、車載網(wǎng)絡(luò)等。
下圖所示為汽車電子系統(tǒng)的劃分示意圖。