1、提升車輛研發質量與效能的實踐與思考提升車輛研發質量與效能的實踐與思考孟寧孟寧夢寧軟件創始人中國科學技術大學系統軟件研究中心主任孟寧孟寧夢寧軟件創始人中國科學技術大學系統軟件研究中心 主任著作有代碼中的軟件工程和庖丁解牛Linux操作系統分析等致力于為軟件研發團隊賦能提效,打造軟件開發具產品和基礎設施軟件解決案。曾榮獲華為歐拉開源貢獻領英教師獎,曾獲評國家精品在線開放課程和國家一流本科課程、入選華為“智能基座”精品慕課、被中國高校計算機教育MOOC聯盟評為優秀課程、榮獲安徽省教學成果獎二等獎,等等。在線課程累計學員20余萬人。與華為、OPPO、龍芯中科等多家國內外企業和創業公司有技術合作。嘉賓照
2、片對智能汽車軟件研發的暢想對智能汽車軟件研發的暢想多年來我們一直在朝著軟件定義汽車SDV的方向發展,其中越來越多的特性和功能都主要通過OTA升級軟件來實現。當前千萬行量級的軟件代碼也只是解決了初步問題。隨之而來的汽車網聯化、智能化和用戶體驗提升都需要更復雜的軟件來實現。確保為開發人員提供卓越的工具、流程和架構,以有效地創建、測試和OTA升級軟件是整個汽車行業所面臨的首要任務。持續集成和持續部署(CI/CD)就是解決這個問題的答案,這要求我們必須提供足夠強大的云原生環境編排能力和軟硬件仿真基礎設施,以實現大規模的團隊協作,并執行嚴格而廣泛的測試/回歸測試。目錄目錄CONTENTS對智能汽車軟件研
3、發的暢想對智能汽車軟件研發的暢想00 汽車研發的趨勢、現狀與面臨的挑戰汽車研發的趨勢、現狀與面臨的挑戰01 整車系統級驗證是最理想的方案整車系統級驗證是最理想的方案02 DevOpsDevOps和和CI/CDCI/CD促進汽車軟件研發的變革促進汽車軟件研發的變革03 展望未來展望未來04 1.11.1智能汽車智能汽車EEEE架構架構的演化大趨勢的演化大趨勢1.21.2傳統的車輛研發傳統的車輛研發過程大過程大V V模型模型傳統的車輛研發過程大傳統的車輛研發過程大V V模型模型圖中1和2均為失效分析回路,以1為例,當整車驗證發生失效,就會回到系統設計層面找原因,再回到系統驗證,通過后再進行整車驗證
4、。傳統的車輛研發過程大傳統的車輛研發過程大V V模型的問題分析模型的問題分析當整車驗證發生失效,就會回到系統設計層面找原因,再回到系統驗證,通過后再進行整車驗證。MIL和HIL的Bug不應在真實測試中被發現,但是多ECU之間復雜的協同工作往往很多Bug只有在整車系統驗證時才能發現。1.31.3日趨激烈的競爭日趨激烈的競爭面臨的挑戰面臨的挑戰日趨激烈的行業競爭面臨的挑戰日趨激烈的行業競爭面臨的挑戰 零件零件 系統系統 整車,驗證流程串行時間長整車,驗證流程串行時間長 零部件與系統(整車)驗證相對獨立,缺少交互驗證零部件與系統(整車)驗證相對獨立,缺少交互驗證 變量車型開發,需要跑整套路試,缺少回
5、歸測試支撐變量車型開發,需要跑整套路試,缺少回歸測試支撐 缺少整車系統級的新產品導入快速試錯的方法缺少整車系統級的新產品導入快速試錯的方法 缺少缺少ECUECU軟件仿真和軟件仿真和RDERDE路況仿真的工具支撐路況仿真的工具支撐0202整車系統級驗證整車系統級驗證 柔性驗證平臺 虛擬ECU仿真平臺為什么不在車輛研發過程中始終采用整車系統級驗證呢?為什么不在車輛研發過程中始終采用整車系統級驗證呢?零部件、系統、整車等始終在整車系統級環境下進行交互式實測驗證是最理想的方案,是終局思維。研發進展可見功能效果可用驗證結果可靠改裝車輛成本高有安全風險對研發支撐人員能力要求高整車系統級環境準備時間長優 勢
6、優 勢劣 勢劣 勢2.12.1柔性驗證平臺柔性驗證平臺柔性驗證平臺的研發背景柔性驗證平臺的研發背景一般的HIL測試臺架很難仿真出整車系統級驗證環境。改裝車的方式在成本、周期和風險上都難以推廣到研發階段全生命周期。HIL測試示意圖整車系統級驗證環境六軸動態駕駛艙臺架ECU機柜/控制箱傳統傳統的制動系統的制動系統測試方法測試方法1.需要駕駛員在安全的道路條件下,進行動態路試以測試制動系統在實際駕駛情況下的性能,這將包括測試制動力量的平穩性、制動踏板的響應和制動距離等方面。2.在進行功能測試時,使用測試設備記錄關鍵數據,例如制動力量、制動距離、制動響應時間以及傳感器和執行器的數據。這些數據將用于后續
7、的標定過程。3.在完成參數調整后,進行最終的功能測試,以確保系統的性能滿足要求。驗證制動性能、響應時間和其他功能是否按照預期工作。案例:線控制動案例:線控制動測試臺架測試臺架基于馭迪柔性驗證平臺的制動系統測試方法:1.駕駛員在柔性臺架上,通過場景模擬的道路連接IPB系統測試臺架在實際駕駛情況下測試IPB的性能,這將包括測試制動力量的平穩性、制動踏板的響應和制動距離等方面。2.在進行功能測試時,使用測試設備記錄關鍵數據,例如制動力量、制動距離、制動響應時間以及傳感器和執行器的數據。這些數據都可以實時顯示在電腦前端。3.基于馭迪柔性驗證平臺的測試場景可以根據客戶需求自定義。雪天,雨天,高速等場景,
8、可以根據NEDC、WLTC等標準測試路況下進行測試,馭迪柔性驗證平臺可以縮短測試時間,節約研發成本。案例:與自動駕駛測試環境聯合仿真案例:與自動駕駛測試環境聯合仿真方便對接Carla等自動駕駛simulator,和自動駕駛域控制器/測試環境進行聯合仿真。馭迪車輛柔性驗證平臺整車系統級驗證的價值馭迪車輛柔性驗證平臺整車系統級驗證的價值馭迪車輛柔性驗證平臺采用軟硬件仿真的方式為研發人員提供了靈活搭建的整車系統級驗證環境??s短開發周期降低路試/研發費用提升/保障研發質量降低項目風險虛擬/實車測試等效靈活搭建應對各種需求整車系統級整車系統級驗證驗證馭迪車輛柔性驗證平臺的使用場景馭迪車輛柔性驗證平臺的使
9、用場景馭迪車輛柔性驗證平臺可以替代傳統的MIL、SIL、HIL、VIL、DIL等部分場景,從而提升整車系統級驗證的有效性,其中典型的使用場景可以總結為如下5種:系統集成和EE架構的測試系統的集成測試故障注入測試概念驗證和算法開發新產品和新技術體驗推廣車輛柔性驗證平臺在沒有車輛的情況下可以用于新產品的介紹推廣自己客戶體驗;軟件和硬件并行開發甚至只是開發軟件時,用于驗證算法和控制策略;用于Fail Safe和功能安全的故障注入測試;產品開發和項目應用中,用于系統的集成測試;整車企業車型開發中用于系統集成和電子電氣EE架構的測試2.22.2虛擬虛擬ECUECU仿真平臺仿真平臺虛擬虛擬ECUECU技術
10、概述技術概述傳統傳統ECUECU開發開發 vs.vs.虛擬虛擬ECUECU開發開發手工作坊式的傳統ECU開發模式軟件依賴定制化的硬件,沒有硬件無法開發和測試軟件;軟件和硬件的碎片化,依賴工程師知識經驗;無法實踐測試驅動開發TDD,代碼質量難以保證;開發周期長,難以軟硬件協同,測試工作繁重。案例:某汽車發動機控制器仿真項目案例:某汽車發動機控制器仿真項目真實場景中,使用標定上位機軟件(比如INCA)對硬件做標定存在實驗環境受限、實驗成本高昂和難以覆蓋所有測試等問題。SimuLink生成的模型與真實的ECU軟件(運行在虛擬ECU上)建立連接。這種模式可滿足汽車領域各類半閉環仿真的需求。案例:某汽車
11、電池管理系統案例:某汽車電池管理系統BMSBMS控制器仿真控制器仿真虛擬ECU和CANApe集成起來的優勢包括:在仿真平臺上精細調試;進行CAN總線通信仿真;增加測試覆蓋率;案例:基于虛擬案例:基于虛擬ECUECU的的FuzzFuzz模糊測試項目模糊測試項目基于虛擬ECU的Fuzz模糊測試的優勢:通過硬件故障注入查找和分析硬件驅動上的安全漏洞;結合模糊測試技術查找和分析軟件層面的安全漏洞;以AFL模糊測試器為例,如圖所示。相比真實硬件上的軟件安全測試分析的優勢:目標程序的可觀測性強;統計覆蓋率高;不受硬件數量限制,可在云端大規模部署虛擬ECU實現大規模并行運行測試。0303DevOpsDevO
12、ps和和CI/CDCI/CD汽車軟件研發的變革汽車軟件研發的變革汽車軟件開發需要更現代、更強大的軟件開發環境汽車軟件開發需要更現代、更強大的軟件開發環境傳統的汽車軟件開發過程遵循僵化、遲鈍的瀑布模型和V模型,并使用高度離散的工具鏈。開發過程被分割為不同的階段,只有前一個階段結束,后一個階段才會開始。許多開發過程都需要手動完成。從工具鏈的一個部分切換到下一個部分也是如此。采用這種方法,推出新的軟件版本需要耗時六到八個月。持續集成和持續部署持續集成和持續部署(CI/CD)(CI/CD)就是解決這個問題的答案就是解決這個問題的答案如今汽車行業力推的軟硬分離的EE架構,可以使用現代化的敏捷方法和Dev
13、Ops,按自己的時間表更新軟件,速度更快且不受硬件迭代或其它物理更新的影響。這種方法對迭代速度、可擴展性、質量和安全性方面的提升前所未有。CI/CD 及自動化回歸測試等方法,現在都可以在汽車上實現,但在汽車行業,測試新應用有其獨特的難題,比如測試需要在實體車輛上或者在測試臺架上的復雜模擬環境中進行。理想的方法是通過基于云原生的集成開發環境在模擬仿真環境上進行開發,方便大型團隊協同完成SIL、HIL、VIL/DIL等,從而消除開發和測試過程中的瓶頸?;谠圃闹悄芗砷_發環境基于云原生的智能集成開發環境Super IDESuper IDESuper IDE for 萬物智聯下一代集成開發環境展望0404展望未來展望未來展望未來展望未來隨著汽車軟硬件的解耦和EE架構的演進,未來的汽車操作系統會變成什么樣?萬物智聯的機器人社會我們該如何開發軟件?感謝聆聽感謝聆聽關注QECon公眾號部分圖片來源于互聯網版權歸原作者所有