詳解AUTOSAR:AUTOSAR方法論(理論篇—3)
AUTOSAR方法論是指AUTOSAR為汽車電子軟件系統(tǒng)開發(fā)過程定義的一套通用技術(shù)方法。該方法論描述了從系統(tǒng)層配置到ECU可執(zhí)行代碼產(chǎn)生過程的設(shè)計步驟,如下圖所示:
AUTOSAR設(shè)計和開發(fā)流程分為三個階段:系統(tǒng)配置階段、ECU設(shè)計與配置階段、代碼生成階段。
系統(tǒng)配置階段:是系統(tǒng)設(shè)計者或架構(gòu)師的任務(wù)。包括選擇硬件和軟件組件,定義整個系統(tǒng)的約束條件。AUTOSAR通過使用信息交換格式和模板描述文件來減少初始系統(tǒng)設(shè)計時的工作量。系統(tǒng)配置的輸入是XML類型的文件,輸出是系統(tǒng)配置描述文件,系統(tǒng)配置的主要作用是把軟件組件的需求映射到ECU上。
ECU設(shè)計與配置階段:根據(jù)系統(tǒng)配置描述文件提取單個ECU資源相關(guān)的信息,提取出來的信息生成ECU提取文件。根據(jù)這個提取文件對ECU進行配置,例如操作系統(tǒng)任務(wù)調(diào)度,必要的BSW模塊及其配置,運行實體到任務(wù)的分配等,從而生成ECU配置描述文件。該描述文件包含了特定ECU的所有信息。
代碼生成階段:基于ECU配置描述文件指定的配置來產(chǎn)生代碼、編譯代碼,并把相關(guān)的代碼鏈接起來形成可執(zhí)行文件。
1
編寫系統(tǒng)配置輸入描述文件
在AUTOSAR中,所有的描述文件都是XML類型的文件。系統(tǒng)配置輸入文件包含三部分內(nèi)容:
軟件組件描述:定義了每個涉及的軟件組件的接口內(nèi)容,如數(shù)據(jù)類型、端口、接口等。
ECU資源描述:定義了每個ECU的資源需求,如處理器、存儲器、外圍設(shè)備、傳感器和執(zhí)行器等。
系統(tǒng)約束描述:定義了總線信號,軟件組件間的拓撲結(jié)構(gòu)和映射關(guān)系。
2
系統(tǒng)配置
系統(tǒng)配置的功能主要是在資源和時序關(guān)系的前提下,把軟件組件映射到各個ECU上,然后借助系統(tǒng)配置生成器生成系統(tǒng)配置描述文件。這個描述文件包括總線映射之類的所有系統(tǒng)信息以及軟件組件與某個ECU的映射關(guān)系。
3
提取特定ECU的描述
從系統(tǒng)配置描述文件中提取出與各個ECU相關(guān)的系統(tǒng)配置描述信息,提取的信息包括ECU通信矩陣、拓撲結(jié)構(gòu)、映射到該ECU上的所有軟件組件,并將這些信息放在各個ECU的提取文件中。
4
ECU配置
ECU 配置主要是為該ECU添加必要的信息和數(shù)據(jù),如任務(wù)調(diào)度、必要的基礎(chǔ)軟件模塊及其配置、運行實體及任務(wù)分配等,并將結(jié)果保存在ECU配置描述文件中,該文件包含了屬于特定 ECU的所有信息,換言之,ECU上運行的軟件可根據(jù)這些信息構(gòu)造出來。
5
生成可執(zhí)行文件
根據(jù)ECU配置描述文件中的配置信息,生成RTE和基礎(chǔ)軟件配置的代碼,完成基礎(chǔ)軟件和軟件組件的集成,最終生成ECU的可執(zhí)行代碼。
AUTOSAR 的各個設(shè)計階段都會產(chǎn)生一定的數(shù)據(jù)輸出,因此整個開發(fā)流程工作量較大且復雜性高。如果沒有一套完整工具鏈的支持,軟件開發(fā)周期和可靠性將難以得到保證。
Vector公司在AUTOSAR的開發(fā)過程中為用戶提供了一套完整的工具鏈,方便用戶高效地開發(fā)基于AUTOSAR的應(yīng)用軟件,并最終生成符合AUTOSAR 規(guī)范的嵌入式代碼。下圖顯示了Vector公司在每個開發(fā)環(huán)節(jié)所提供的相關(guān)工具。
Vector 公司提供的整套工具鏈可以讓客戶更加高效可靠地開發(fā)基于AUTOSAR的ECU 軟件。在系統(tǒng)級設(shè)計階段,Vector公司提供的 PREEvision 軟件用于架構(gòu)設(shè)計,CANdela Studio 用于診斷文件的設(shè)計。在 ECU設(shè)計階段,Vector公司提供的Davinci工具可以方便客戶完成SWC和BSW的設(shè)計并生成相應(yīng)的代碼。
本公眾號技術(shù)輸出的核心點就是:物聯(lián)網(wǎng):全面感知(感知層)、可靠傳輸(網(wǎng)絡(luò)層)、智能處理(應(yīng)用層),這個體系是非常龐大繁雜的,可以說目前所有的技術(shù)都離不開物聯(lián)網(wǎng)三層架構(gòu)。
我們所分享的內(nèi)容也只是在工作和學習過程中所擅長的某一領(lǐng)域,體系內(nèi)容如下圖所示:
創(chuàng)作者:關(guān)關(guān)長語,主要分享:.Net Core 實現(xiàn)對后端的服務(wù)化、工程化以及容器化、WPF PC端應(yīng)用技術(shù)開發(fā)等領(lǐng)域的技術(shù)。
創(chuàng)作者:愛吃土豆絲的打工人,主要分享:移動應(yīng)用Android開發(fā)、鴻蒙(Harmony OS)移動開發(fā)、微信小程序、跨平臺移動開發(fā)Web JS和大疆無人機MSDK等領(lǐng)域的技術(shù)。
創(chuàng)作者:不脫發(fā)的程序猿,主要分享:嵌入式軟、硬件、數(shù)據(jù)分析、數(shù)據(jù)可視化、計算機視覺、創(chuàng)客開發(fā)、智能硬件、物聯(lián)網(wǎng)感知和通信等領(lǐng)域的技術(shù)。
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。
傳感器相關(guān)文章:傳感器工作原理
風速傳感器相關(guān)文章:風速傳感器原理