0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于模型設計和產品代碼實現(xiàn)汽車線控駕駛系統(tǒng)的應用方案

電子設計 ? 來源:中國電子網(wǎng) ? 作者:中國電子網(wǎng) ? 2021-04-02 11:26 ? 次閱讀

由于有了基于模型的設計,使得開發(fā)大量的汽車嵌入式系統(tǒng)時,可以由模型自動生成最終編譯的軟件。不過,這項工作需要一個軟件工程框架的支持。本文使用線控駕駛系統(tǒng)(steer-by-wire system)作為實例,給出了設計汽車嵌入式系統(tǒng)的過程、方法和測試工具的一個框架。

近來,有報道稱包括Denso、Motorola和Toyota在內的不同行業(yè)的多家公司都在產品代碼方面取得了成功。這項技術正日益成為軟件下一波演進發(fā)展中的一個重要組成部分。雖然總體而言,它對軟件工程化過程的影響已為業(yè)界所了解,但卻并沒有十分清楚地確立起來。對于早前類似演進發(fā)展(包括從機器代碼發(fā)展到匯編代碼,再發(fā)展到源代碼)的參與者而言,這一點尤為明顯。

隨著抽象與自動化程度的日益提高,新的過程、方法和工具接踵而來。瀑布式過程已讓位于螺旋式方法和迭代方法。實時方法已經(jīng)出現(xiàn)并正在取代靜態(tài)流程設計。新的工具也出現(xiàn)了,如包含有調試器、優(yōu)化編譯器和自動測試工具的IDE(集成開發(fā)環(huán)境)。

不過,由于難以使用、缺乏了解或是工具支持不足的原因,并非每一種好的思想都能開花結果。有跡象表明,這些方法和工具對于主流產品應用并非總是實用。例如,用驗證來確保軟件正確性的正規(guī)方法是使用一種全世界只有極少數(shù)專家才真正懂得的語言編寫的。此外,1980年代的實時用例工具可以輔助設計,但并未提供一條產生最終代碼的簡便途徑。

在早期應用階段,產品代碼生成的效果相當不錯,這主要是由于其實用性。不過,其進一步的發(fā)展還需要依靠集成過程、方法和工具的支持。一種新的過程只有在具備了所需支持方法和工具的條件下才會成功。如果這些條件有所欠缺,那么對一個公司成熟的嵌入式系統(tǒng)進行重新設計的努力就不會是可行和實用的。

本文給出了主要面向產品代碼生成的這樣一個框架:

基于模型的設計

建模、仿真、快速原型、產品代碼生成、模型測試和覆蓋、在環(huán)測試

開發(fā)工具、驗證與生效(V&V)工具、集成工具

模型的設計過程

通過提供一個共同的圖形規(guī)范和分析環(huán)境,基于模型的設計可以支持控制/DSP系統(tǒng)工程師和軟件開發(fā)人員的需要。

在這個過程中,模型被創(chuàng)建并用來規(guī)定系統(tǒng)數(shù)據(jù)、接口、反饋控制邏輯、離散/狀態(tài)邏輯和實時行為。

基于模型的設計被應用在幾乎每個需要嵌入式控制系統(tǒng)的行業(yè)之中。而在大型汽車電子控制單元(ECU)等嵌入式應用的開發(fā)過程中,其應用更為廣泛。DSP和通信應用也采用這種方法,但它們更強調建模和原型,而不是產品代碼生成。

為了滿足這些不同的應用,基于模型的設計過程必須解決線控駕駛系統(tǒng)等安全關鍵系統(tǒng)的需求。它還必須產生最終的、可執(zhí)行的代碼,而且必須特別緊湊、快速和能夠追蹤。這是由于在大批量生產的ECU中,必須使用低成本的定點微控制器部件和DSP。

基于模型的設計適合任何過程框架環(huán)境,包括那些在IEEE軟件工程化標準中描述過的過程框架。

IEEE Std. 730適用于任何通用軟件項目。為了很好地理解它的過程框架,有必要回顧一下它對“關鍵性”項目文檔所列出的需求。

IEEE Std. 730需求包括:

軟件需求規(guī)范(SRS

軟件設計描述(SDD)

軟件驗證與生效計劃(SVVP)

軟件驗證與生效報告(SVVR

用戶文檔

軟件配置管理計劃(SCMP)

包括軟件項目管理計劃(SPMP)在內的其他文檔

查看一個軟件過程的普通方法是借助于圖1所示的V形圖。這個圖對應著大部分工程化過程,不過在開發(fā)生命周期中,這個過程是迭代性的,有許多反復的步驟。圖中的軟件過程包括以下幾個組成部分:

開發(fā) (需求、設計、編碼和集成)

驗證和生效(V&V)

集成 (軟件配置管理、需求可追蹤性和文檔)

基于模型設計和產品代碼實現(xiàn)汽車線控駕駛系統(tǒng)的應用方案

圖1:查看一個軟件過程的普通方法是借助于V形圖。

基于模型的設計非常注重過程迭代、早期測試和開發(fā)過程中的重用,這使得它既獨特而又功能強大。這一過程的內在實用性體現(xiàn)在V形圖的底部,產品代碼生成是來自設計的一種自動過渡。

在基于模型的設計中,方框圖或狀態(tài)圖模型可以用作系統(tǒng)和軟件需求、軟件設計,或者在稍作假設變換之后,用作源代碼。這個過程的另外一個獨特之處是,它在最終編譯之前要進行廣泛的驗證和生效操作。早期驗證和生效的好處很明顯:它將大大減少在最終系統(tǒng)集成和測試期間發(fā)現(xiàn)的bug數(shù)目,返工次數(shù)也會更少。

開發(fā)方法與工具

在軟件工程化過程中,采用了基于模型的設計方法。

開發(fā)方法包括:1. 行為建模;2. 詳細軟件設計;3. 分布式結構設計;4. 產品代碼生成;5. 嵌入式目標集成。驗證與生效方法包括:1. 仿真與分析;2. 快速原型;3. 模型測試與覆蓋;4. 代碼追蹤與檢查;5. 硬件在環(huán)(HIL,Hardware-In-the-Loop)測試。集成方法包括:1. 源控制接口;2. 需求管理接口;3. 報告生成。

下面給出了對各種開發(fā)方法的簡潔描述,并提供有例子和工具支持信息。注意這里給出的所有工具都是商業(yè)上可以獲得的。其后的部分討論了開發(fā)行為,并包含有關鍵的驗證與生效方法。最后,本文將通過集成組件來進行總結。

1. 行為建模

模型用來為單個子系統(tǒng)(如線控駕駛)的各個方面規(guī)定需求和設計。

一個典型的系統(tǒng)包括:

輸入(如方向盤傳感器

控制器或DSP模型

設備模型(直流馬達、齒條和小齒輪、車輪)

輸出(方向的改變)

在圖2和圖3中,通過使用控制系統(tǒng)方框圖來表示反饋控制、使用狀態(tài)圖來表示離散事件和條件邏輯,以及使用DSP模塊來表示濾波器,可以創(chuàng)建一個系統(tǒng)模型來表示所需的行為特性。

圖2:用控制系統(tǒng)方框圖來表示反饋控制。

圖3:創(chuàng)建一個系統(tǒng)模型來表示所需的行為特性。

2. 仿真與分析

然后,通過使用基于時間或基于事件的仿真以及頻域分析等方法,可以執(zhí)行和分析模型,以確保其滿足需求。例如,一個線控駕駛系統(tǒng)必須對傳感器故障進行響應,并“將高頻響應衰減到3db以下,同時指令傳輸速率不能低于1.5Mbps”。

圖4A和B*中對線控駕駛系統(tǒng)的建模與仿真,可以確定這些需求是相互沖突的還是有效的。仿真是一個核心驗證行為,它確??梢詫崿F(xiàn)一個系統(tǒng)來滿足這些需求。

圖4:線控駕駛系統(tǒng)。

圖4B:對線控駕駛系統(tǒng)的建模與仿真。

3. 快速原型

要在產品的芯片上實現(xiàn)一個可以工作的解決方案,設備模型還不夠精確,處理能力也不滿足要求,因此建模本身并不能提供完整的解決方案。

快速原型對于克服這些缺陷非常有用,因為它用物理設備來代替設備模型。在線控駕駛的例子中,設備有可能是一輛汽車,這時就使用一輛實際的汽車。不過,因為系統(tǒng)并未建立起來,一個實時或嵌入式平臺將負責運行控制器軟件并與設備進行交互作用。

有兩種形式的快速原型:功能性快速原型和目標性快速原型。功能性原型使用一臺功能強大的實時計算機,如多處理器浮點PowerPC或DSP系統(tǒng),目的在于確定系統(tǒng)對物理汽車的控制是否如對模型汽車的控制一樣好。如果真的是這樣,則設備模型的不精確性就顯得無關緊要,并且控制策略也得到了驗證。

目標性快速原型在相同或相似的產品MCU或DSP,而不是高端PowerPC內核或其他專用高端快速原型硬件中執(zhí)行軟件。目的是將代碼下載到實際產品目標之中,以便用物理設備進行快速測試。如果執(zhí)行良好,則控制器不僅看似有效,而且可以在產品中加以實現(xiàn)。

軟件設計行為包括定點數(shù)據(jù)規(guī)范、實時任務、數(shù)據(jù)輸入、內建測試和診斷。通過基于模型的設計,用于算法規(guī)范和驗證的同一模型被軟件工程師加以改進和約束,作為產品代碼生成過程的一部分。

4. 模型測試

與將模型部署到硬件上去編譯和集成相比,在桌面計算機上測試模型具有更大的優(yōu)勢?;谠创a的測試已經(jīng)存在許多年了,但是最近的方法允許進行模型測試和結構覆蓋。使用的場景假定是開發(fā)人員對控制器施加滿負荷壓力,以便用仿真和覆蓋來驗證其設計完備性。另一種測試類型是故障模式效應分析(Failure Mode Effect Analysis),用來確保故障情況下線控駕駛的救生操作,參見圖5。

圖5:故障模式效應分析用來確保線控駕駛的救生操作。

設計完備性不佳的例子是數(shù)值溢出和死碼(dead code)。使用最小或最大數(shù)值的模型壓力測試可以確保不發(fā)生溢出情況。使用仿真很容易進行這種測試,但死碼就沒有這么容易檢測出來了,因為檢測需要結構覆蓋。死碼與失效代碼不同,其區(qū)別在于后者是開發(fā)人員已知,并且出于某種原因而使其失效的。實際情況中的死碼意味著在確定規(guī)范期間遺漏了什么。

模型覆蓋用來評估一個測試件的累積結果,以確定哪些功能模塊未被執(zhí)行,或者哪些狀態(tài)未被到達。源代碼語言(如C和C++)中建立了某些類型的覆蓋,但現(xiàn)在模型也可以進行覆蓋了。這項工作要求C語言所不需要(或不可能有)的新理論和新工具,因為這些語言沒有功能模塊或狀態(tài)這樣的構造。

修改條件/決策覆蓋(MC/DC)被FAA(美國聯(lián)邦航空管理局)認為是滿足安全關鍵系統(tǒng)所必需的最嚴格的覆蓋水平?,F(xiàn)在,這種覆蓋在一種基于模型的設計框架和許多需要線控設計的場合中已經(jīng)得到了實現(xiàn)。

5. 分布式結構設計

現(xiàn)代嵌入式系統(tǒng)包含一些分布式ECU,它們相互間通過一個象FlexRay這樣的容錯通信系統(tǒng)進行實時通信。寶馬(BMW)最新的DSC(動態(tài)穩(wěn)定性控制) 包含ABS作為其15個子功能之一。通過從DECOMSYS向單個子系統(tǒng)增加主機、任務和信號網(wǎng)絡部件,嵌入式功能可以連接和映射到一個ECU結構之上。此外,它方便了OSEKtime/OS等時間觸發(fā)操作系統(tǒng)的任務激活時間行為的仿真。集群、主機、任務和連接是在MATLAB/Simulink環(huán)境下進行設計和仿真的。最后,整個設計與DECOMSYS::DESIGNER產品實現(xiàn)了無縫集成,可以與FlexRay xCDEF設計數(shù)據(jù)倉庫進行互動。

Vector 公司和Cadence公司提供的分布式網(wǎng)絡設計解決方案(分別為DaVinci和SysDesign)集成了Simulink/Stateflow的 Real-Time Workshop/Real-Time Workshop Embedded Coder,由子系統(tǒng)產生代碼,并將它們映射到結構上進行驗證。

產品代碼生成

模型經(jīng)過驗證并且生效之后,就該產生代碼了。使用編譯器時,這個過程是簡單的。這里存在著各種不同的優(yōu)化設置和用戶配置選項。關鍵之處在于保持代碼的高效、精確并與原有的代碼或其他工具進行集成。另一個要點是保持代碼相對框圖的可追蹤性,以便進行檢查和驗證。

1. 代碼追蹤和檢查

圖7顯示了一個自動鏈接的HTML報告。當開發(fā)人員選擇代碼中的求和模塊時,它將把該模塊在框圖中進行高亮顯示。

2. 嵌入式目標集成

圖6中的應用使用了速率轉換模塊。不過,它與商用RTOS之間也存在著直接的聯(lián)系,包括VxWorks 和各種OSEK產品。如圖7所示,還需要集成設備驅動程序。

圖6:圖3中電源管理設計的測試覆蓋。

圖7:代碼回放。

3. 硬件在環(huán)測試

控制器建立起來之后,就可以在環(huán)路中使用實時設備模型來執(zhí)行一系列開環(huán)和閉環(huán)測試了。有一種測試僅涉及處理器,稱作“處理器在環(huán)”測試。另一種測試使用實際建立的ECU硬件,叫做“硬件在環(huán)”測試。在這兩種測試中,都使用設備模型來對物理控制器進行測試。通過這一系列測試(或許與需求驗證中所用的是同種測試),控制器必須看來對于消費者是可以接受的。

4. 集成組件

在開發(fā)過程中,大部分軟件標準都要求需求追蹤能力,這或許源于其他需求工具。此外,還需要軟件配置管理(SCM)來對開發(fā)過程中的各種工件(artifact)進行存儲、版本維護和查找。由報告生成工具產生的文檔將確保管理者、消費者和供應商能夠看到模型。SCM的接口如圖8所示。

本文小結

當整個軟件工程化過程行為得到支持時,將會推動軟件的進步。但是,僅僅進行局部的、支離破碎的改進是不足夠。本文介紹了基于模型的設計和產品代碼生成的一個完整的軟件工程化框架,并且還給出了具體的方法和工具,意在表明它并非僅僅是一種理論,而是既實用又有效。

責任編輯:gt

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • dsp
    dsp
    +關注

    關注

    551

    文章

    7823

    瀏覽量

    346816
  • 嵌入式
    +關注

    關注

    5045

    文章

    18816

    瀏覽量

    298453
  • 汽車電子
    +關注

    關注

    3012

    文章

    7739

    瀏覽量

    164802
收藏 人收藏

    評論

    相關推薦

    基于OpenGL 的汽車轉向三維模型設計

    汽車模型,虛擬駕駛系統(tǒng)汽車3D 虛擬系統(tǒng)需要建立汽車模型和運動軌跡
    發(fā)表于 05-17 11:53

    汽車駕駛員操作特性考核仿真系統(tǒng)的研究

    仿真系統(tǒng)本文根據(jù)發(fā)動機特性數(shù)學模型汽車運動模型駕駛員離合器操作模型
    發(fā)表于 12-02 12:46

    汽車駕駛模擬器實時仿真虛擬系統(tǒng)開發(fā)

    分布式仿真支撐系統(tǒng)它有兩大突出特點 一是建立了仿真實驗框架二是實現(xiàn)了高效的網(wǎng)絡實時傳輸它能應用于汽車駕駛模擬器實時仿真 能應用于其它實時仿真與離散仿真還能應用于汽車性能CAE 實用仿真
    發(fā)表于 12-02 12:48

    谷歌的自動駕駛汽車是醬紫實現(xiàn)的嗎?

    實現(xiàn)基于單芯片的3D監(jiān)視系統(tǒng),實時合成和轉換來自安裝在汽車前、后、左、右四個攝像機的汽車周圍場景的照片),會后與富士通的專家聊了聊,目前基于這套方案
    發(fā)表于 06-14 16:15

    我想做汽車輔助駕駛ADAS系統(tǒng),求方案

    我想做汽車輔助駕駛ADAS系統(tǒng),求方案
    發(fā)表于 09-12 14:24

    激光雷達-無人駕駛汽車的必爭之地

    ,企業(yè)研發(fā)活動以及人工智能和出行領域的風險投資都有所增長,這些都為新的出行解決方案提供了非常優(yōu)越的發(fā)展條件,推動行業(yè)朝無人駕駛出行加速邁進。連羅蘭貝格合伙人康伯涵都表示:“無人駕駛技術勢必將成為
    發(fā)表于 10-20 15:49

    智能感知方案怎么幫助實現(xiàn)安全的自動駕駛?

    、超聲波雷達、毫米波雷達、激光雷達(LiDAR)以及傳感器融合方案,并擁有最豐富的符合車規(guī)的產品,在功能安全方面有深厚的經(jīng)驗,還提供全球首個含網(wǎng)絡安全的圖像傳感器,致力于實現(xiàn)安全的自動駕駛
    發(fā)表于 07-31 07:11

    汽車產品的那些黑科技

    已經(jīng)成為關注的焦點。無論是車廠或者是汽車設計的方案公司,再或者是半導體芯片的廠家等等都是熱門的追逐方向。此時小編想打個廣告,如全球頂尖NXP半導體,在智能駕駛艙就有完整的解決方案,從C
    發(fā)表于 09-23 09:05

    無人駕駛汽車-電力系統(tǒng)能勝任嗎?

    IC 32引LQFN封裝。結論即使在目前,在未來的自動駕駛汽車(和卡車)中必不可少的汽車系統(tǒng)的普及仍在繼續(xù)增長。當然,電壓和電流水平會改
    發(fā)表于 06-16 19:01

    智能駕駛和物聯(lián)網(wǎng)產品及解決方案

    2018年國際消費電子展CES? 2018上,展示其在廣闊的物聯(lián)網(wǎng)市場和汽車平臺及服務領域為下一代應用開發(fā)的硅技術和解決方案。 很多企業(yè)將在CES上展示其最新的消費類產品,然而,將這些終端
    發(fā)表于 10-23 09:27

    如何實現(xiàn)無縫駕駛的智能系統(tǒng)?

    互聯(lián)汽車帶來更智能的駕駛體驗自主駕駛的互聯(lián)汽車實現(xiàn)無縫駕駛的智能
    發(fā)表于 03-09 06:20

    怎么實現(xiàn)汽車駕駛模擬器單片機系統(tǒng)的設計?

    汽車駕駛模擬器單片機系統(tǒng)的設計思路是什么?怎么實現(xiàn)汽車駕駛模擬器單片機系統(tǒng)的設計?
    發(fā)表于 05-12 07:07

    自動駕駛控底盤VCU功能介紹

    與自駕儀、電機控制器MCU、電池管理系統(tǒng)BMS、控轉向、控制動、控燈光等系統(tǒng)進行信息交互,通過對接收到的信息的處理,判斷各個子控制單元
    發(fā)表于 09-07 06:30

    高級駕駛員輔助系統(tǒng)(ADAS)解決方案

    高級駕駛員輔助系統(tǒng)(ADAS)解決方案是增長最快的汽車行業(yè)之一;根據(jù)Strategy Analytics的預測,該領域預計在五年間(2015-2020)增長了10%。即使是入門級
    發(fā)表于 11-14 07:11

    無人駕駛汽車模型預測控制相關源代碼

    無人駕駛汽車模型預測控制相關源代碼
    發(fā)表于 03-12 15:56 ?29次下載
    無人<b class='flag-5'>駕駛</b><b class='flag-5'>汽車模型</b>預測控制相關源<b class='flag-5'>代碼</b>