400-821-6015
行(xíng)業(yè)資訊
您當前的(de)位置:首頁 » 行(xíng)業(yè)資訊 » 行(xíng)業(yè)資訊
內(nèi)部資訊行(xíng)業(yè)資訊

談談CP AUTOSAR軟件(jiàn)開(kāi)發的(de)3種工(gōng)作(zuò)¶β♦流

發布日(rì)期:2024-10-11

作(zuò)者 | 不(bù)可(kě)說(shuō)

出品 | 汽車(chē)電(diàn)子(zǐ)與軟件(​↑$§jiàn)


#01 前  言

      随著(zhe)汽車(chē)技(jì)術(↑≤♦→shù)的(de)飛(fēi)速進步,尤其是(shì)電(diàn)氣化(huà)、自(zì)動€¶化(huà)及互聯化(huà)的(de)深度融合,汽車(chē)行(xíng)業(yè)正經曆著(← ≤zhe)一(yī)場(chǎng)前所未有(yǒu)的(de)變革。在這←↑≈©(zhè)場(chǎng)變革中,汽車(chē)不(bù)φ α 再僅僅是(shì)機(jī)械與金(jīn)屬的(de)簡單堆砌,而是(shì)轉變為(wèi)集→∑≥ 成了(le)高(gāo)度複雜(zá)電(diànδ≤)子(zǐ)系統、先進算(suàn)法與智能(nén ≤g)互聯技(jì)術(shù)的(de)移動空(k‌™ōng)間(jiān)。這(zhè)一(yī)轉變的(de)核心驅動力之一(y≠γ'→ī),便是(shì)軟件(jiàn)在汽車(chē)設計(jì)與功能♠♣₽(néng)實現(xiàn)中日(rì)益凸顯的(de)主導地(dì)位,标志(zhì)‌‍₹♥著(zhe)汽車(chē)正式步入了(le∏± ±)“軟件(jiàn)定義汽車(chē)”<≠←×(Software-Defined Vehicle, SDV)的(de)新時(shí)代。

      在這(zhè)樣的(de)背景下(xià),AUT↓αOSAR(AUTomotive Open System ARchitecδ ✘♦ture)作(zuò)為(wèi)汽車(c  hē)行(xíng)業(yè)廣泛采用(yòng)的(de)軟件(jiàn)架構标準α✘βπ,其經典平台(Classic Platform, CP)軟件(jiàn)£α應運而生(shēng)并持續演進,以更好(hǎo)地(dì)适應和(hé)推動這‍÷♥(zhè)一(yī)變革。AUTOSAR ☆<CP軟件(jiàn)通(tōng)過提供一(yī)套标準化(huà)、模塊化(huà)的(de)•§軟件(jiàn)組件(jiàn)和(hé)中間‌→β§(jiān)件(jiàn),旨在解決當前汽車(chē)開(kāi)發中面臨的(de£& )諸多(duō)挑戰,包括但(dàn)不(bù)限于:

      1. 複雜(zá)性管理(lǐ):面對(duì)汽車(chē)中日(rì)益增長(cháng✘↑±)的(de)ECU(電(diàn)子(zǐ)控制(zhì)單元)數(shù)量和(h♣&¶αé)錯(cuò)綜複雜(zá)的(de)軟件(jiàn)φΩ交互,AUTOSAR CP通(tōng)過清晰‍§的(de)層次結構和(hé)标準化(huà)的(de)接口定義,有(yǒu←¶± )效降低(dī)了(le)系統的(de)整體(tǐ)複雜(zá)度,提高(gāo)了(l↑¶e)開(kāi)發效率和(hé)可(kě)維護性。

      2. 軟件(jiàn)重用(yòng)與模塊化(h¶γuà):鼓勵并促進軟件(jiàn)組件(jiàn≥$‌)的(de)跨車(chē)型、跨品牌重用(yòng∏∏),加速産品上(shàng)市(shì)時(shí)間(j$✔±iān),同時(shí)降低(dī)開(kāi)發成本。AUTOSAR CP的(de)模塊化(huà)設計(jì)使得(de)汽車(chēα♦)制(zhì)造商(OEM)和(hé)一(yī)級供應商(Tier 1)能(nén÷±→g)夠靈活組合和(hé)定制(zhì)功能(néng),快(kuài)速響應市(shπ↔ì)場(chǎng)變化(huà)。

      3. 安全性與可(kě)靠性:随著(zhe)自(zì)動駕駛等高(gāo)級‌©功能(néng)的(de)引入,汽車(chē)軟件(jiàn)的(de)安全性φ‍→≤變得(de)尤為(wèi)重要(yào)。AUTOSAR CP通(tōng)過提供安全相(xiàng)關的(de)軟件(jiàn)架£αδβ構、開(kāi)發流程和(hé)驗證工(g&≠•&ōng)具,幫助确保汽車(chē)軟件(jià♣★∏n)的(de)高(gāo)可(kě)靠性和(₽π♠hé)安全性,符合ISO 26262等國(guó)際 ∏¥标準。

      4. 互聯與數(shù)據管理(lǐ):支持車(chē)輛(liàng)與雲端、基礎設施及其他(tā)車 Ω→(chē)輛(liàng)的(de)互聯互通(tōng),AUTOSAR<÷ CP通(tōng)過集成通(tōng)信協©↑↑議(yì)棧和(hé)數(shù)據管理(lǐ)功能(néng),為(wèi)車(chē)輛(•≤liàng)提供強大(dà)的(de)信息交換能(néng)力,促進新服務和(hé   ©)新商業(yè)模式的(de)創新。  

      為(wèi)了(le)充分(fēn)利用•₹₩(yòng)AUTOSAR CP的(de)優勢,各家(jiā)OEM和(hé)Ti>λσ​er 1紛紛建立了(le)基于AUTOSAR的(de)軟件(jiàn)開(kāi)發流程與方法論↑∞←。這(zhè)些(xiē)流程通(tōng)常包括需求分(β$∑±fēn)析、系統設計(jì)、軟件(jiàn)φ☆™編碼、集成測試、驗證與認證等多(duō)個(gè)階段,并強調跨職能(néng)團隊的(de)合作•®(zuò),以确保軟件(jiàn)質量、滿足✔​≥‌法規要(yào)求并快(kuài)速響應市(shì)場(chǎng)變化(huà₹Ω)。同時(shí),許多(duō)企業(yè)還(hái)積極參與AUTO‍★SAR的(de)開(kāi)放(fàng)合作(zuò),共同推動AUT αOSAR标準的(de)持續演進,以适應汽車(chē)行(xíng)業(yè)$>←®不(bù)斷變化(huà)的(de)需求。

圖片        &nbs∞÷∏λp; 

      所以本文(wén)将探討(tǎo)下(x ≥ià)基于模型化(huà)(Model-Based Desig$↑n, MBD)開(kāi)發AUTOSAR軟件(jiàn)架構與軟件(j×♥iàn)的(de)工(gōng)作(zuò)流區(qū)≈‍↑☆别、特點等。



#02 CP AUTOSAR工(gōng)作(zuò)流說(shuō)明(míng) 

   

      CP AUTOSAR開(kāi)發的(de™≤§ε)工(gōng)作(zuò)流一(yī)般分(fēn)為(wèi)自(zì)上(shànε≥g)而下(xià)、自(zì)下(xià)而上(shàng)與混合模式三種$δσ↕工(gōng)作(zuò)流,這(zhè)三種工(gōnδβg)作(zuò)流算(suàn)是(shì)三種‌∑種不(bù)同的(de)開(kāi)發方法,它們在項目開φ↓(kāi)發和(hé)集成過程中有(yǒu)著(zhe)顯著的(de)€★區(qū)别。下(xià)面将詳細闡述這(zhλ↕è)兩種工(gōng)作(zuò)流的(de)具體(tǐ)步驟和(hé)特點。 &≈ε≤₹nbsp; 

      A、自(zì♥✔©←)上(shàng)而下(xià)(Top-Down)工(g>€ōng)作(zuò)流  


圖片
自(zì)上(shàng)而下(xià)的(de)工(gōng)作(zuò)∞ ✔流示意

1. 定義和(hé)架構設計(jì)

     - 應用(yòng)架構設計(jì):首先,在AUTOSAR編輯工(gōng)具(如(rú←¶♥§)Davinci Developer、AutoSAR Builder、ISOLAR-Aδ♥ 等(MATLAB新版工(gōng)具箱也(yě)支持))中設計(jì)應用(yòng)∑€≤‌架構。這(zhè)包括定義軟件(jiàn)組件(jiàn)(SWC)、可(kě)運行(xíng)★Ω‌實體(tǐ)(Runnable)、接口(Interface)、端口(Port)等元素。         

      -&nb¥≥sp;導出SWC描述文(wén)件(jiàn):設計(jì)完成後,将架構SWC信息導出為(wèi)ARXML→≥∑§文(wén)件(jiàn)。ARXML文(wén)件(jiàn)是(shì)AUTOSA♣πσ‍R标準的(de)數(shù)據交換格式,包 ↔含了(le)類型、接口、端口、可(kě)運行(xíng)實體(tǐ)、事(shì)件(jβ∑iàn)等詳細信息。

2. 算(suàn)法實現(xiàn)與模型搭建

      - 建模工(gōng)具實現(xiàn)算(suàn)法:使用(yòng)MBD建模工(gōng)具(如(rú)Simulink)根據ARXML文(wéπ♦πφn)件(jiàn)中的(de)描述搭建模型,實現(xiàn)算(s™§σ♣uàn)法等應用(yòng)功能(néng)。

     ₹≈>← - 生(shēng)成代碼:在建模工(gōng)具中完成算(suàn↕♥≈≠)法實現(xiàn)後,生(shēng)成符合"Ωλ•AUTOSAR标準的(de)代碼。

3. 集成與調試

      - 準備基礎軟件(jiàn)層(BSW):首先,确保基礎軟件(jiàn)層(如(rú)操作(zuò)系統、服務層、ECU抽象層等)™£已經根據AUTOSAR标準正确實現(xiàn)并經過驗證。這(zhè)包括檢查BSW的(d★‌e)版本兼容性、配置正确性以及必要(yào)的(de)π÷¥驅動和(hé)中間(jiān)件(jiàn)♥∞↔★的(de)支持。

      -&$¥nbsp;代碼生(shēng)成與适配:将應用(yòng)層或中間(jiān)件(j>εiàn)層通(tōng)過模型或手動編碼生(shēng)成的(d♦>↕e)代碼,根據BSW的(de)接口規範進行(xíng)适配。這(zhè)包括修改數(shù)據類γ ✔型的(de)映射、調整接口函數(shù)的(de)調用(yòng)方式以及配置必要(yào)γ§↕的(de)資源(如(rú)內(nèi)存、中斷等)。

      - 集成構建:使用(yòng)AUTOSAR構建系統(如(rú)AR Builder)将應用(yòng)層代→ αγ碼、中間(jiān)件(jiàn)代碼和(hé)基礎λε>↔軟件(jiàn)層代碼集成在一(yī)起,生​÷☆(shēng)成完整的(de)軟件(jiàn)鏡像。此過程涉及$₹♦鏈接庫的(de)選擇、依賴關系的(de)解析以及優化(huà)選項的÷<§γ(de)配置。      ↔↔ 

      - ¶  運行(xíng)時(shí)環境(RTE)生(shēn✔¶β↕g)成:在集成構建過程中,RTE生(shēng)成器(qì)會(huì)根據軟件(jiàn)組件™‍(jiàn)之間(jiān)的(de)交互關系自(z•¶ì)動生(shēng)成運行(xíng)時(shí)環境代碼。RTE負責處理$πδ↕(lǐ)組件(jiàn)之間(jiān)的(de)通(tōng)信、數(s≥→©hù)據同步以及資源調度等任務,确保軟件(jiàn)能(nén♦ <$g)夠按照(zhào)設計(jì)預期運行(xíng)。

      - 靜(jìng)态分(fēn)析:在代碼集成後,首先進行(xíng)靜(jìng)态代碼分(fēn)析σλ™,以檢查潛在的(de)編程錯(cuò)誤、邏輯錯(cuò)誤以及安全漏洞。靜(jìng)态分(f✔→ēn)析工(gōng)具可(kě)以幫助開(kāi)發人(rén)員(yuán)快(kuài)速定₹≈≥≠位問(wèn)題,提高(gāo)代碼質量。

      - 單元測試:對(duì)軟件(jiàn)中的(de)每個(gè)模塊或組件(j↓€iàn)進行(xíng)單元測試,驗證其功能(néng)是(→$∞shì)否符合設計(jì)要(yào)求。單元測試可(kě)以獨立運行(xíng),無需®♣依賴其他(tā)模塊,有(yǒu)助于快(kuài)速發現(xiàn♣↓©)和(hé)修複問(wèn)題。

      - 集成測試:在完成單元測試後,進行(xíng)集成測試以驗證各個(gè)模塊之間(jiān)的(deγΩ≥)交互是(shì)否正确。集成測試關注于軟件(jiàn)的(de)整體(tǐ)功✔±≈δ能(néng),确保各模塊在集成後能(nén​↑∞¶g)夠協同工(gōng)作(zuò)。

      - π₩系統測試:将集成後的(de)軟件(jiàn)部署到(dào)目标ECU上(shàng),進行(xí>÷δng)實際環境下(xià)的(de)系統測試。系統測試涵蓋功能(néng₩₹₩↔)測試、性能(néng)測試、可(kě)靠性測試等多(duō)個(gè)方面,☆÷π以驗證軟件(jiàn)在實際應用(yòng)中的(de)表現(xiàn)。 

      - 調試與優化(huà):在測試過程中發現(xiàn)的(de)問(wè‍&n)題需要(yào)進行(xíng)詳細♦₽的(de)調試。開(kāi)發人(rén)員(yuán)使用(yònπ£✔₩g)調試工(gōng)具(如(rú)MAT¥≈ ♥LAB的(de)Simulink window、GDB等©₹↕)來(lái)跟蹤程序執行(xíng)流程、查看(kàn"→↕)變量值以及設置斷點等。根據調試結果對(duì)代碼進行(xí​£‌ng)優化(huà),以提高(gāo)軟件(≈> jiàn)的(de)性能(néng)和(hé)穩定性。

      -&≠∏>nbsp;文(wén)檔記錄:在整個(gè)集成與調試過程中,詳細記錄測試步驟、測試結果以及問(wèn™‌)題解決方案。這(zhè)些(xiē)文(wén)檔對(duì)于後續的(de®∞ ★)維護工(gōng)作(zuò)具有(yǒu)重要(yào→☆λλ)意義,也(yě)有(yǒu)助于團隊成員(yuán)之間(jiān)的®≈®(de)知(zhī)識共享和(hé)協作(zuò)。


4. 下(xià)載與測試

     - 下(xià)載代碼:将調試完成的(de)代碼下(xià)載到(dào)目标ECU中。

     - ¶→;測試:在目标ECU上(shàng)進行(xíng)全面的(de)測試,包括功≤←∑能(néng)測試、性能(néng)測試、可€​γ✔(kě)靠性測試等。

      &nbs→σp;   

B、自(zì)下(xià)而上(shàng)(Bottom-Up)工(gōng)作(zuò)流 ☆‌ 


圖片
自(zì)下(xià)而上(shàng)的(de)工(gōng)作(zuò)‍φ↔流示意

1. 算(suàn)法實現(xiàn)與模型搭建

    - 建模工(gōng)具實現(xiàn)算(suàn)法:首先,在建模工(gōng)具(如(rú)Si ​₽mulink)中搭建模型,實現(xiàn)算(su÷∏àn)法等應用(yòng)功能(néng),或者直接應用(yòng)其他(tā)已經有£"(yǒu)的(de)、可(kě)以在該項目上(shàng)複用(yòng)的(de™¥₹)模型。

    - 導出ARXML文(wén)件(jiàn):将模型中的(de)元素(如(rú)類型、接口、端口等)導出為(wèi)AR  ★♠XML文(wén)件(jiàn),這(zhè)一(yī)®←過程也(yě)是(shì)将SIMULINK元素轉換為(wèi)AUTOSAR元素。  &≤™£nbsp;

2. 定義和(hé)架構設計(jì)

    - 根據ARXML文(wén)件(jiàn)設計(jì)應用(yòng)§>ε架構:在AUTOSAR編輯工(gōng)具中,根據ARXML文(wén)件(jiàn)中的(de)描述α$€設計(jì)應用(yòng)架構。這(z☆≈♠♦hè)包括創建軟件(jiàn)組件(jià ♠ n)、定義可(kě)運行(xíng)實體(tǐ)、接口和(hé)端口✔<等元素。

3. 後續步驟與自(zì)上(shàng)而下(x&♦ià)相(xiàng)同

    - 與BSW層集成:将生(shēng)成的(de)代碼與基礎軟件(jià∏¶±£n)層(BSW)集成,生(shēng)成≥λ‍運行(xíng)時(shí)環境(RTE)。

    - 調試:對(duì)集成後的(de)代碼進行(xí§$✘ng)調試。

    - 下(xià)載與測試:将調試完成的(de)代碼下(xià)載到(dào•δγδ)目标ECU中,并進行(xíng)全面的(de)測試。

          

C、混合工(gōng)作(zuò)流(Round-trip)↓β  


圖片
混合工(gōng)作(zuò)流示意

      混合工(gōng)作(zuò)流是(shì)一§ ‌(yī)種高(gāo)效且靈活的(de)軟件(jiàn)開(kāi)發策略,它巧✘≈≤÷妙地(dì)将自(zì)上(shàng)而下(Ω↔'xià)的(de)系統級規劃與自(zì)下(xià)而上(shàng)的(de)詳細設計(♥φ←♦jì)與實現(xiàn)相(xiàng)結合。這(zhè)種方法首先強調對(du •φì)系統架構的(de)整體(tǐ)規劃,确保系統的(de)高(gā®φ←≥o)層次目标和(hé)需求得(de)到(dào)明(αδ↓míng)确和(hé)滿足。同時(shí),它也×'↕(yě)注重在具體(tǐ)實現(xiàn)層面的(d↑☆e)靈活性和(hé)創新性,允許開(kāi)發團隊根據實際需求和(hé)技(jì)術(sh‍₩★ù)可(kě)行(xíng)性,靈活地(dì)進行(xíng)模塊或算(suàn)法δσ☆≤的(de)設計(jì)、實現(xiàn)與集成。通(tōng)過這(zhè)種方式,混合工(gōnΩ g)作(zuò)流不(bù)僅保證了(le)系統的(de)整體(tǐ)一(yī)緻性和(hé)穩定↔Ω←性,還(hái)促進了(le)技(jì)術(shù)創新和♥€ (hé)快(kuài)速響應市(shì)場(chǎng)變化(huà)的(d₹≤‌e)能(néng)力。           &n ♦πbsp; 

1. 系統架構規劃與設計(jì)

     - 使用(yòng)AUTOSAR編輯工(gōng)具進行(xíng)系統的(de)頂層架構設≈ε 計(jì),包括定義軟件(jiàn)組件(jiàn)、通(tōng)信接口、資↔ 源分(fēn)配等。

    - 确立系統的(de)主要(y±<←ào)功能(néng)需求、性能(néng)指标及非功能(♠ ‍€néng)需求(如(rú)安全性、可(kě)靠性、實時(s≥÷hí)性等),為(wèi)後續開(kāi)發提供明✔✔±(míng)确指導。

2. 并行(xíng)開(kāi)發與實現(xiàn)

    - 在系統架構規劃的(de)同時(shí),利用(yòng)建模工(gōng)具(如(rú)SimulΩ& ®ink、Stateflow)進行(xíng)算(suàn)法和(hé)應δ¶₽用(yòng)功能(néng)的(de)詳細設計(jì)與實現(xiàn)。這(zhè)些(xiē★←↓↓)工(gōng)具支持快(kuài)速原型設計≤↔≤≥(jì)和(hé)仿真驗證,加速開(kāi)發進程。

    - 開(kāi)發人(rén)員(yuán)根據系統架構的(de)劃分"​(fēn),并行(xíng)開(kāi)發各個(λλ↓σgè)模塊或子(zǐ)系統,提高(gāo)開(kāi)發效率。

    - ARXML文(wén)$≈φ↑件(jiàn)交換與叠代。

    - 架構設計(jì)和(hé)各個(gè)模塊σ∞開(kāi)發之間(jiān)通(tōng)過ARXML(AUTOSARλ  XML)文(wén)件(jiàn)進行(xíng)→§信息的(de)導出和(hé)導入。ARXM ←>L文(wén)件(jiàn)作(zuò)為(wèi)中間(jiān)媒介,确保了(le)不(‌÷bù)同開(kāi)發工(gōng)具之間(jiān)的(de)數(shù)據一(yī)緻性和(↑€©hé)互操作(zuò)性。

    - 通(tōng)過不(bù)斷¥←✔✔的(de)導出/導入和(hé)修改,形成₹±±δ一(yī)個(gè)閉環的(de)叠代過程,使系統架構和(hé)具體(tǐ)實現(xi☆←×àn)之間(jiān)能(néng)夠相(xiàε♣<ng)互完善、相(xiàng)互驗證。

3. 與基礎軟件(jiàn)層(BSW)集成

    - BSW集成,生(shēng)成RTE。

4. 算(suàn)法代碼集成與調試

    - 将建模工(gōng)具中驗證通(tōng)過的(de)算(suàn)法代碼轉  ÷π換為(wèi)C/C++代碼,并集成到(dào)應用(yòng)層Ωβ中。

    - 将集成并調試完成的(de≤Ω)軟件(jiàn)鏡像下(xià)載到(dào)目™​π标ECU中,進行(xíng)實車(chē)或模拟環境下(xià)的(d♠≠φe)測試。

    - 根據測試結果進行(xíng)必要(yàλ"o)的(de)調整和(hé)優化(huà),直至軟件(jiàn)滿足所有(yǒu)設計(jì)要(≤λyào)求和(hé)性能(néng)指标。

       

#0總  結

      自(zì)上(shàng)而下(xià)和(hé)自(z→γì)下(xià)而上(shàng)的(de)工(gōng)作(zuò)流在AUTO β±SAR開(kāi)發中各有(yǒu)優缺點。          

      自(zì)上(shàng)而≥↔‍下(xià)方法強調系統架構的(de)清晰性和(hé)模塊間(jiān)的(de)接口定£¶‍™義,适用(yòng)于對(duì)系統整體(tǐ)功能(néng)有(δ↕δ​yǒu)清晰規劃的(de)項目;從(cóng)架構♠₩設計(jì)開(kāi)始,有(yǒu)利于整體(tǐ)規劃和(hé)标準化(huà),但ε★(dàn)可(kě)能(néng)在後續實現(xiàn)中遇到(dào)與'→預期不(bù)符的(de)問(wèn)題。      &σ₩nbsp;   

      自(zì)下(xià)而上(shàng)方法強調模塊或算>π(suàn)法的(de)具體(tǐ)實現(xiàn)和(hé)快(ku™α★®ài)速原型開(kāi)發,适用(yòng)于對(duì)系統整體(tǐ)架構尚不(bù)明(mβ÷÷ íng)确的(de)初期探索階段;從(cóng)具體(tǐ)實現(xiàn)開(kāi)始,更加​↓靈活,但(dàn)可(kě)能(néng)需要(yàoε↕←↑)在後期進行(xíng)大(dà)量的(de)架構調整和(hé)優化(huà)。          

      混合工(gōng)作(zuò)流則強調系統架構與具體(t₩‍™λǐ)實現(xiàn)的(de)有(yǒu)機(j₩₽ī)結合,适用(yòng)于需要(yào)平衡系統架構規劃與快(kuài∏Ωπ↓)速原型開(kāi)發的(de)項目。        &n§σbsp; 

      在實際$ ¥¥項目中,可(kě)以根據項目需求、開(kāi)發周期©∑≠♠和(hé)團隊經驗等因素選擇合适的(de)工(gōng)作(zu↕∏↔ò)流。同時(shí),也(yě)可(kě)以采用(yòn∞←g)混合式方法,将自(zì)上(shàng)而下(xià)和(hé)自(zì)下(↓★♥<xià)而上(shàng)的(de)優點結合起來(lái),∏₽以提高(gāo)開(kāi)發效率和(hé)軟件(jiàn)質✔​÷π量。

北京德智尚車聯科技有限公司版權所有(yǒu) 京ICP證000000号   技(jì)術(shù)支持:網站(zhàn)建設