AUTOSAR 開發(fā)流程

TOPS

更多原創(chuàng)文章,請收看公眾號!

思維導圖

AUTOSAR

內(nèi)容目錄

一、 AUTOSAR 方法論
二、 AUTOSAR 系統(tǒng)開發(fā)工具分類與介紹
三、 基于 AUTOSAR 的系統(tǒng)解決方案
四、 基于Matlab/Simulink的軟件組件例子

一、 AUTOSAR 方法論

AUTOSAR方法論(AUTOSAR Methodology)的開發(fā)涉及系統(tǒng)級、ECU級和軟件組件級。系統(tǒng)級主要考慮系統(tǒng)功能需求、硬件資源、系統(tǒng)約束,然后建立系統(tǒng)架構(gòu);ECU級根據(jù)抽象后的信息對ECU進行配置;系統(tǒng)級和ECU級設(shè)計的同時,伴隨著軟件組件級的開發(fā)。上述每個環(huán)節(jié)都有良好的通信接口,并使用統(tǒng)一的arxml(AUTOSAR Extensible Markup Language)描述文件,以此構(gòu)建了AUTOSAR方法論。其中各主要步驟如圖所示。

圖 1.1 AUTOSAR 方法論示意圖

系統(tǒng)級設(shè)計可進行整車級別的軟件架構(gòu)設(shè)計,其基礎(chǔ)是軟件組件,即功能模塊的定義; ECU 級則著重對單片機底層軟件進行開發(fā); 而軟件組件級是對各軟件組件的控制算法進行具體實施。各階段開發(fā)過程之間以規(guī)范化的 arxml 描述性文件進行配置信息交互, 從而便于 OEM 與各零部件供應(yīng)商間的溝通與合作。
在開發(fā)之前,需要先編寫系統(tǒng)配置輸入描述文件,其包含以下三部分內(nèi)容。
①軟件組件描述(SW-Component Description):包含系統(tǒng)中所涉及的軟件組件的接口信息,例如數(shù)據(jù)類型、端口接口、端口等。
②ECU資源描述(ECU Resource Description-HW only):包含系統(tǒng)中每個ECU所需要的處理器及其外設(shè)、傳感器、執(zhí)行器等信息。
③系統(tǒng)約束描述(System Constraint Description):包含總線信號、軟件組件間的拓撲結(jié)構(gòu)和一些映射關(guān)系等信息。
基于上述系統(tǒng)配置輸入描述文件,系統(tǒng)配置根據(jù)ECU資源和時序要求,將軟件組件映射到對應(yīng)的ECU上,生成系統(tǒng)配置描述文件(System Configuration Description)。系統(tǒng)配置描述文件中包含了設(shè)計過程中非常重要的一個描述——系統(tǒng)通信矩陣,其描述了網(wǎng)絡(luò)中所有運行的數(shù)據(jù)幀及其對應(yīng)的時序和內(nèi)容。從系統(tǒng)級到ECU級的過渡操作是指ECU信息抽?。‥CUExtract)。在系統(tǒng)配置階段已經(jīng)將每個ECU所包含的所有軟件組件、網(wǎng)絡(luò)通信等信息封裝好,ECU信息抽取階段只需將待配置ECU信息抽取出來即可,服務(wù)于之后的ECU配置。ECU配置過程主要是對RTE和BSW的配置。在RTE配置階段,需要將軟件組件的運行實體映射到相應(yīng)的操作系統(tǒng)任務(wù);在BSW配置階段,需要詳細配置BSW層中所需要用到的模塊,一般有操作系統(tǒng)、通信服務(wù)、ECU抽象層和微控制器抽象層等。依據(jù)ECU配置信息生成BSW和RTE代碼,再結(jié)合軟件組件級實現(xiàn)的應(yīng)用代碼,最終進行代碼集成,編譯鏈接,生成單片機可執(zhí)行文件。

二、 AUTOSAR 系統(tǒng)開發(fā)工具分類與介紹

在不使用相關(guān)配置工具的情況下完成符合AUTOSAR 分層架構(gòu)的汽車嵌入式系統(tǒng)軟件開發(fā)是非常困難的,并且后期需要進行一系列底層代碼的測試與驗證。經(jīng)過多年的發(fā)展, 國內(nèi)外工具供應(yīng)商已針對 AUTOSAR 方法論中的各階段開發(fā)了相關(guān)工具, 總體上按功能大致可以分為以下三類:
( 1) 系統(tǒng)級設(shè)計工具 主要完成軟件組件框架( 包括端口、端口接口、數(shù)據(jù)類型、運行實體、觸發(fā)事件等) 的設(shè)計定義及其框架代碼生成; 軟件組件間通信端口的連接; 硬件拓撲及網(wǎng)絡(luò)拓撲設(shè)計; 導入 DBC、LDF 和 FIBEX 等傳統(tǒng)網(wǎng)絡(luò)描述性文件進行軟件組件向 ECU 的映射以及數(shù)據(jù)至系統(tǒng)信號的映射; 實現(xiàn)待配置 ECU 信息抽取( ECUExtract) 等工作。
( 2) 軟件組件級設(shè)計工具 主要完成軟件組件內(nèi)部行為( internal behaviour, IB) , 即控制算法邏輯的設(shè)計建模, 以及符合 AUTOSAR 規(guī)范的代碼與軟件組件 arxml 描述性文件的生成工作。
( 3) ECU 級配置工具 主要完成 ECU 配置( 包括 BSW 各需求模塊、RTE) 及其代碼生成。
此外,還有編譯器、單片機調(diào)試工具等。

表 1 主要 AUTOSAR 系統(tǒng)開發(fā)工具分類


表 1 主要 AUTOSAR 系統(tǒng)開發(fā)工具分類

三、 基于 AUTOSAR 的系統(tǒng)解決方案

圖 3.1 AUTOSAR系統(tǒng)解決方案

首先,使用Matlab/Simulink來實現(xiàn)部分軟件組件級的開發(fā),并自動生成應(yīng)用層軟件組件代碼及arxml描述文件,其中軟件組件arxml描述文件作為AUTOSAR系統(tǒng)級開發(fā)的輸入文件之一。
其次,使用ETAS ISOLAR-A工具來進行AUTOSAR系統(tǒng)的設(shè)計與配置,過程中會利用
ISOLAR-A工具設(shè)計一些附加的SWC,以及I/O硬件抽象層SWC。系統(tǒng)級開發(fā)最后會抽取出待配置ECU的信息,進而可以進入ECU級開發(fā)階段。在ECU級開發(fā)階段,基于ETAS RTA系列工具(RTA-RTE、RTA-BSW、RTA-OS)來實現(xiàn)ECU級的開發(fā),即RTE及除MCAL以外的BSW模塊配置和代碼生成;使用NXP MCAL配置工具來實現(xiàn)MCAL模塊的配置及代碼生成。
最后,進行代碼集成,使用Wind River編譯器進行代碼編譯鏈接,生成單片機可執(zhí)行的文
件,并通過Lauterbach調(diào)試器將單片機可執(zhí)行的文件燒寫到MPC5744P開發(fā)板進行代碼調(diào)試。

四、 基于Matlab/Simulink的軟件組件例子

新版的MATLAB(2014b版本以上需要安裝插件,2019版本已經(jīng)已經(jīng)集成了) 中,已經(jīng)有基于 AUTOSAR 的<span style="font-size:1.3em;font-weight: bold;">軟件組件</span>的例子:

圖 4.1 Design AUTOSAR Components, Simulate, and Generate Code
圖4.2 Begin with Simulink Representation of AUTOSAR Components
圖 4.3 AUTOSAR Composition
圖 4.4 AUTOSAR System

微信公眾號:depthkernel
關(guān)注可了解更多 AUTOSAR 內(nèi)容。問題或建議,請公眾號留言;
如果你覺得對你有幫助,歡迎關(guān)注公眾號

微信公眾號
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容