當(dāng)前位置:首頁 > 工業(yè)控制 > 《機(jī)電信息》
[導(dǎo)讀]摘要:提出一種基于AUT0SAR的車用控制器軟件開發(fā)流程與實(shí)現(xiàn)方法。E/E系統(tǒng)功能以模型為基礎(chǔ)進(jìn)行開發(fā),并將功能部署到硬件控制器,通過功能模型提取AUT0SAR系統(tǒng)描述文件(*.arxml),導(dǎo)入到MATLAB/Simulink中進(jìn)行應(yīng)用層軟件組件開發(fā):通過ECU提取文件(*.arxml)導(dǎo)入到協(xié)議棧配置工具DaVinci中生成RTE和基礎(chǔ)軟件(BSW)部分:最后,集成兩部分代碼進(jìn)行調(diào)試和編譯。開發(fā)過程中,同時(shí)可搭建虛擬仿真環(huán)境,對E/E系統(tǒng)設(shè)計(jì)模型進(jìn)行仿真和驗(yàn)證。

引言

汽車自誕生百余年來,已經(jīng)從純粹的機(jī)械時(shí)代逐漸進(jìn)化到了如今的智能、網(wǎng)聯(lián)、電動(dòng)、自動(dòng)化時(shí)代,軟件、芯片、計(jì)算能力等正變得越來越重要。當(dāng)前汽車行業(yè)上的創(chuàng)新和發(fā)展趨勢,絕大部分也都體現(xiàn)在電子電氣領(lǐng)域。軟件在汽車的總體價(jià)值中,所占比重正在逐步增長。對0EM而言,軟件的可重用性、代碼質(zhì)量和開發(fā)效率顯得至關(guān)重要,它可以幫助更好地平衡車型研發(fā)成本、開發(fā)周期和質(zhì)量之間的關(guān)系。

AUT0SAR作為汽車電子行業(yè)的標(biāo)準(zhǔn),致力于解決硬件平臺(tái)不同帶來的軟件開發(fā)的困難。通過提供標(biāo)準(zhǔn)的軟件接口定義,將應(yīng)用層軟件(SWC)和硬件平臺(tái)解耦,軟件組件可以按需分配到不同的ECU中,實(shí)現(xiàn)軟件組件的可重用性,大幅提高開發(fā)效率,已被主機(jī)廠廣泛采用。

1基于模型的功能開發(fā)

汽車上控制系統(tǒng)的軟件架構(gòu)包含運(yùn)行環(huán)境和應(yīng)用軟件,運(yùn)行環(huán)境包括操作系統(tǒng)、驅(qū)動(dòng)程序、通信協(xié)議棧以及網(wǎng)絡(luò)管理、診斷應(yīng)用等服務(wù)。對主機(jī)廠而言,關(guān)心的是和功能掛鉤的應(yīng)用軟件。為保證應(yīng)用軟件開發(fā)質(zhì)量,盡快達(dá)到可靠的成熟度以及實(shí)現(xiàn)功能可重用性,同時(shí)減少功能開發(fā)對供應(yīng)商的依賴性,通常采用以模型為基礎(chǔ)(MOdel-BaSed)的功能軟件架構(gòu)開發(fā)方式。在功能模型的基礎(chǔ)上,獲得系統(tǒng)描述規(guī)范,進(jìn)一步獲得自動(dòng)軟件代碼生成器。

以泊車輔助功能為例,利用內(nèi)嵌在車后保險(xiǎn)杠上的4個(gè)接近傳感器(超聲波傳感器)探測后方障礙物,根據(jù)車輛接近障礙物的距離,發(fā)出不同頻率的警告聲。后視攝像頭提供倒車可視畫面,整個(gè)輔助系統(tǒng)可以由駕駛員使能(選擇激活或者不激活)。采用基于模型的功能開發(fā)思路,將系統(tǒng)的功能拆解為各個(gè)小功能塊,如傳感器數(shù)據(jù)預(yù)處理模塊、數(shù)據(jù)融合模塊、泊車輔助算法等,分別對應(yīng)不同的軟件組件(SWC),各功能塊之間通過AUT0SAR標(biāo)準(zhǔn)接口(如S/R、C/S接口等)進(jìn)行數(shù)據(jù)交互。泊車輔助系統(tǒng)的功能模型如圖1所示。

2控制器AUTOSAR軟件開發(fā)

2.1AUTOSAR軟件開發(fā)流程

功能模型開發(fā)是控制器軟件開發(fā)的基礎(chǔ),控制器最終的軟件開發(fā)取決于功能塊的部署。一種基于AUT0SAR的車用控制器軟件開發(fā)流程如圖2所示。

第一步,采用基于模型的E/E架構(gòu)開發(fā)工具PREEviSiOn進(jìn)行功能模型開發(fā),并部署到硬件控制器。基于功能模型,提取AUT0SAR系統(tǒng)描述文件和ECU抽取文件。

第二步,將系統(tǒng)描述文件(.arxml)導(dǎo)入MATLAB/Simulink中搭建功能控制算法模型,完成控制器應(yīng)用層軟件組件開發(fā)。

第三步,將ECU抽取文件(arxm1)導(dǎo)入到協(xié)議棧配置工具VectOrDaVinciCOnfiguratOr中,配置AUTOSAR運(yùn)行環(huán)境,包括RTE、操作系統(tǒng)、通信協(xié)議棧、底層驅(qū)動(dòng)程序、網(wǎng)絡(luò)管理/診斷等服務(wù)模塊。

四步,兩部分代碼集成編譯以及調(diào)試,之后下載到控制器中,完成整個(gè)AUTOSAR軟件開發(fā)過程。

2.2系統(tǒng)功能模型開發(fā)

針對泊車輔助功能,按圖1在PREEviSiOn中搭建泊車輔助功能軟件架構(gòu)模型(SWC、端口、Interface/DE、數(shù)據(jù)類型等),并進(jìn)一步詳細(xì)定義各SWC的內(nèi)部行為,如RTEEvent、Runnab1e、變量等。這些軟件組件屬于AUTOSAR應(yīng)用層,完全獨(dú)立于硬件,可在不同項(xiàng)目、不同平臺(tái)中實(shí)現(xiàn)復(fù)用。之后,將各功能部署到對應(yīng)控制器并進(jìn)行信號路由,完成通信層設(shè)計(jì)。表1是泊車輔助系統(tǒng)功能軟件組件定義,圖3是泊車輔助控制器(PAC)的功能部署實(shí)例。

2.3應(yīng)用軟件開發(fā)

MATLAB/Simu1ink提供了一個(gè)動(dòng)態(tài)系統(tǒng)建模、仿真和分析的集成環(huán)境,在該環(huán)境中,無需大量手寫程序,只需通過直觀地構(gòu)建算法模型便可構(gòu)造出復(fù)雜的系統(tǒng)。EmbeddedCOder具有生成可讀、緊湊且高效的C和C++代碼的功能,以便用于各種嵌入式處理器和量產(chǎn)微處理器,同時(shí),EmbeddedCOder支持生成AUTOSAR和ASAP2軟件標(biāo)準(zhǔn)的代碼。基于上述兩個(gè)工具,可以實(shí)現(xiàn)控制器應(yīng)用層軟件控制算法的圖形化設(shè)計(jì)和代碼自動(dòng)生成。

基于Simu1ink的軟件組件開發(fā)主要是對AUTOSAR軟件組件內(nèi)部行為(Interna1BehaviOr)的實(shí)現(xiàn),即實(shí)現(xiàn)運(yùn)行實(shí)體(Runnab1eEntity)中的內(nèi)部控制算法。PREEviSiOn/AUTOSAR中模型元素和MATLAB/Simu1ink元素對照如表2所示。

在PREEviSiOn中已經(jīng)定義了泊車輔助控制系統(tǒng)中所有的軟件組件(SWC)及其內(nèi)部行為(如運(yùn)行實(shí)體、RTE事件、運(yùn)行實(shí)體間變量、變體等),這些內(nèi)容通過AUTOSAR標(biāo)準(zhǔn)接口arxm1文件直接轉(zhuǎn)換為Simu1ink模型,這是一種"自上而下"的正向開發(fā)流程。其中,導(dǎo)入MATLAB中的語句如下:

//讀取本地arxm1文件

impOrterObj=arxm1.impOrter('PAC)V2.l.arxm1')

//創(chuàng)建SOftWareCOmpOSitiOn的Simu1ink模型impOrterObj.createCOmpOSitiOnASMOde1

('/SOftWareTypeS/COmpOnentTypeS/xCUEcuCOmp','MOde1PeriOdicRunnab1eSAS','FunctiOnCa11SubSyStem')

圖4是PAC中的數(shù)據(jù)融合軟件組件導(dǎo)入到Simu1ink中生成的模型示意,其他軟件組件模型類似。

在該模型的基礎(chǔ)上,進(jìn)一步完成各函數(shù)調(diào)用子系統(tǒng)的內(nèi)部控制算法的實(shí)現(xiàn),然后即可通過Bui1dMOde1生成符合AUTOSAR規(guī)范的軟件組件代碼(*.c和*.h文件)及arxm1描述文件。生成代碼之前需要配置以下內(nèi)容:

(1)AUTOSARPrOpertieS以及Simulink-AUTOSARMapping設(shè)置:

(2)系統(tǒng)目標(biāo)文件設(shè)置為autOSar.tlc:

(3)配置求解器(SOlver)步長模式為定步長(Fixe4-Step)。

通過Simulink生成的AUTOSAR描述文件,反過來,也可以重新導(dǎo)入至PREEviSiOn中從而將軟件開發(fā)人員在Simulink中對軟件組件做出的修改同步到PREEviSiOn中完善功能架構(gòu)模型。二者之間的數(shù)據(jù)傳遞交互過程如圖5所示。

2.4基礎(chǔ)軟件及RTE開發(fā)

AUTOSAR軟件體系架構(gòu)中,在應(yīng)用層(ApplicatiOnLayer)之下是與硬件相關(guān)的基礎(chǔ)軟件層(BaSicSOftWareBSW),兩者之間設(shè)立了一個(gè)運(yùn)行時(shí)環(huán)境(RunTimeEnvirOnment,RTE),從而形成分層體系架構(gòu)。OEM專注于RTE上層和功能相關(guān)的應(yīng)用層軟件,而基礎(chǔ)軟件層則得到了標(biāo)準(zhǔn)化,可以由底層軟件配置工具生成實(shí)現(xiàn)。

ECU底層軟件配置包含RTE和基礎(chǔ)軟件層模塊的配置。DaVinciCOnfiguratOrPrO是一個(gè)專門用于AUTOSAR規(guī)范ECU級的開發(fā)工具可以很方便地搭建符合AUTOSAR規(guī)范的實(shí)時(shí)操作系統(tǒng),并對諸如通信、診斷、網(wǎng)絡(luò)管理、硬件I/O等進(jìn)行配置、驗(yàn)證和代碼生成。

對于PAC控制器在DaVinciCOnfiguratOr新建一個(gè)AUTOSAR工程,加載從PREEviSiOn中導(dǎo)出的ECU提取文件(*.arxml)以CAN模塊為例,其配置參數(shù)如下:

(1)CanCOntrOllerS通用配置。

BuSOffPrOceSSing:用于處理BuSOff事件中斷或者輪詢:

ClOckFreQuency[MqH]:設(shè)置CAN模塊的時(shí)鐘:

PzySicalNO4e:CAN節(jié)點(diǎn):

Rx/TxPrOceSSing:接收/發(fā)送數(shù)據(jù)的處理方式,中斷或者輪詢。

(2)CanCOntrOllerS波特率配置。

COntrOllerBau4Rate:設(shè)置CAN波特率的值:

BRP:波特率預(yù)分頻因子:

COntrOllerPrOpSeg/Seg1/Seg2:設(shè)置傳播端時(shí)間/采樣點(diǎn)時(shí)間:

COntrOllerSynchumpWi4tz:設(shè)置同步跳躍寬度,用于重同步。

(3)CanCOntrOllerS過濾器配置。

FilterCO4e/MaSkValue:過濾器設(shè)計(jì)成CO4e和MaSk兩個(gè)部分通過條件為Receive4CANID&MaSk==CO4e。

(4)Canqar4WareObjectS配置。

COntrOllerRef:硬件MO所屬的CAN節(jié)點(diǎn):

I4Type:標(biāo)準(zhǔn)幀或者擴(kuò)展幀:

I4Value:CANID:

ObjectType:設(shè)置接收還是發(fā)送。

(5)CanGeneral配置。

BaSeA44reSS:寄存器的基地址:

ClOckDivi4er:時(shí)鐘分頻器:

ClOckDivi4erMO4e:時(shí)鐘分頻器的模式,NOrmal:fCAN=fSYS*1/n。

PAC控制器中其他模塊配置,如DCM&DEM(診斷模塊)、EcuM(ECU管理模塊)、RTE以及OS(Runnable和TaSk映射)等,此處不展開。

AUTOSARBSW中,微控制器抽象層(MCAL)是跟硬件強(qiáng)相關(guān)的。MCAL主要包含了硬件驅(qū)動(dòng)程序,用來訪問內(nèi)存、通信和I/O這部分代碼一般由芯片供應(yīng)商提供MCAL配置工具生成.c和.z文件,如英飛凌MACL配置工具。

2.5編譯與調(diào)試

在完成AUTOSAR系統(tǒng)級、ECU級以及軟件組件相關(guān)開發(fā)與代碼生成工作之后需進(jìn)行代碼集成與調(diào)試。完整的符合AUTOSAR規(guī)范的ECU代碼包含以下四部分:

(1)應(yīng)用層軟件組件代碼(由Simulink生成):

(2)運(yùn)行時(shí)環(huán)境RTE代碼(由DaVinciCOnfiguratOr生成):

(3)基礎(chǔ)軟件BSW代碼(不含MCAL由DaVinciCOn-figuratOr生成的動(dòng)態(tài)代碼+部分靜態(tài)代碼):

(4)MCAL代碼(由芯片供應(yīng)商MCAL配置工具生成)。

代碼集成編譯的過程如圖6所示,需要選擇跟硬件匹配的編譯器比如PAC控制器用的是AURIx系列單片機(jī),可選擇TASKING或者qigzTec。代碼編譯通過之后,使用調(diào)試器將可執(zhí)行文件燒寫到硬件中進(jìn)行軟件調(diào)試和優(yōu)化。

3系統(tǒng)仿真

在前期系統(tǒng)功能設(shè)計(jì)過程中,可以輔助以仿真工具進(jìn)行模擬及驗(yàn)證確保前期功能邏輯以及通信矩陣設(shè)計(jì)的正確性。仿真的通信數(shù)據(jù)庫arxml文件由PREEviSiOn導(dǎo)出,導(dǎo)入CANOe中可自動(dòng)生成整個(gè)網(wǎng)絡(luò)模型。前期的功能邏輯可以由CAPL進(jìn)行編寫,也可以利用Simulink中搭建好的算法模型,轉(zhuǎn)化為d11庫文件。將d11文件導(dǎo)入CANOe仿真工程中對應(yīng)的節(jié)點(diǎn)便可進(jìn)行功能仿真,驗(yàn)證算法邏輯正確性。CANOe中系統(tǒng)仿真示意如圖7所示。

4結(jié)語

本文提出了一種基于AUTOSAR的車用控制器軟件開發(fā)流程和實(shí)現(xiàn)方法,結(jié)合當(dāng)前最主流的基于模型的開發(fā)思路,從功能模型開發(fā)到應(yīng)用軟件設(shè)計(jì)、基礎(chǔ)軟件開發(fā)、集成與調(diào)試以及系統(tǒng)開發(fā)過程中的仿真驗(yàn)證,基于這一整套完善的方法和流程可以實(shí)現(xiàn)車內(nèi)各功能應(yīng)用的跨車型、跨平臺(tái)的可重用性。同時(shí),在充分的AUTOSAR工具鏈的支持下,可以大幅提高符合AUTOSAR標(biāo)準(zhǔn)的軟件開發(fā)效率,同時(shí)保證軟件開發(fā)的質(zhì)量。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉