SDV的核心是SOA,沒有SOA服務(wù)導(dǎo)向架構(gòu),車輛OS是沒有意義的,充其量就是個大號的API,就像奔馳的MB.OS。軟件的開發(fā)周期和開發(fā)成本與信號導(dǎo)向架構(gòu)下相比沒有什么改變,還是很高很長。
圖片來源:梅賽德斯-奔馳
奔馳的MB.OS,實際就是MBUX座艙的基于安卓的二次開發(fā),核心的基礎(chǔ)軟件還是黑莓和Vector做的。
圖片來源:Vector
上圖是Vector對車輛OS的定義,是真正的OS,也是SOA的核心。
圖片來源:Vector
上圖是Vector對車輛軟件系統(tǒng)的描述。
圖片來源:懌星科技
SOA設(shè)計流程
圖片來源:懌星科技
圖片來源:懌星科技
最終會落實為網(wǎng)絡(luò)拓?fù)?/a>和線束設(shè)計,當(dāng)然電源、供電、診斷也會一起解決。
圖片來源:懌星科技
進(jìn)入到SOA時代,中間件是關(guān)鍵,即自適應(yīng)AUTOSAR,簡稱AP。AP采用經(jīng)典的代理(Proxy)-框架(Skeleton)模式來完成SOA模型的描述。這種模式將直接交互的客戶端(Client)和服務(wù)端(Server)分離,也可理解為應(yīng)用軟件和底層硬件脫離,由代理負(fù)責(zé)傳遞信息來完成服務(wù)調(diào)用,客戶端和服務(wù)端不需要處理通信層詳細(xì)信息。服務(wù)組件由服務(wù)單元提供的“業(yè)務(wù)邏輯”和適配目標(biāo)系統(tǒng)環(huán)境相關(guān)的“基礎(chǔ)設(shè)施邏輯”兩部分組成。
在開發(fā)過程中,這兩部分是解耦的,可同時進(jìn)行的,且軟件形態(tài)是靈活的。有些新興造車如特斯拉,對AUTOSAR不屑一顧,完全按照消費類電子軟件開發(fā)方式開發(fā),結(jié)果就是無法重復(fù)利用研發(fā)成果,重復(fù)開發(fā)工作明顯。AP不是一個中間件的名稱,它是一系列中間件的集合,此外AUTOSAR只是定義了方法論,具體還要廠家二次開發(fā)。
在服務(wù)組件中,服務(wù)單元的邏輯可以是源碼或被封裝為SDK形式,且不關(guān)心具體的編程語言;基礎(chǔ)設(shè)施邏輯 (Interface和Message) 則以C++的形態(tài)編碼,與服務(wù)管理中間件一起確保服務(wù)的動態(tài)響應(yīng)性和服務(wù)自身的可擴展性,其軟件形態(tài)同樣可以是源碼或SDK形式提供。
中間件最核心的功能是通信,AP最核心的部分是SOME/IP或DDS,DDS目標(biāo)是自動駕駛領(lǐng)域,SOME/IP是目前的主流。SOME/IP(Scalable Service-Oriented MiddlewarE Over IP) ,即“運行于IP之上的可伸縮的面向服務(wù)的中間件”,由寶馬最早發(fā)明,也是最早使用以太網(wǎng)的車廠。SOME/IP屬于應(yīng)用層協(xié)議,它提供面向服務(wù)的通訊接口。SOME/IP定義的服務(wù)接口包含方法(Methods),事件(Events),字段(Fields)和事件組(Eventgroups),可以支持請求/響應(yīng)模式的遠(yuǎn)程服務(wù)調(diào)用,也可以支持訂閱/發(fā)布模式的消息通知。SOME/IP的訪問方式分為事件通知(Notification)、遠(yuǎn)程過程調(diào)用(Remote Procedure Call,RPC)和訪問進(jìn)程數(shù)據(jù)(Getter、Setter)3種。其中,事件通知與傳統(tǒng)CAN通信消息類似,服務(wù)端周期性或者事件變化時向客戶端發(fā)送特定消息;遠(yuǎn)程過程調(diào)用是當(dāng)客戶端有請求的時候,向服務(wù)端發(fā)送一個請求消息,服務(wù)端根據(jù)情況返回響應(yīng);訪問進(jìn)程數(shù)據(jù)可以使客戶向服務(wù)器端寫入(Setter)或者讀?。℅etter)數(shù)據(jù)。
目前主流的面向服務(wù)的中間件有數(shù)據(jù)分發(fā)服務(wù)(Data Distribution Service, DDS)、基于IP的可擴展面向服務(wù)的中間件(Scalable service-Oriented MiddlewarE over IP, SOME/IP)、消息隊列遙測傳輸協(xié)議(Message Queuing Telemetry Transport, MQTT)。DDS是由對象管理組織(Object Management Group, OMG)制定的一種面向服務(wù)的通信中間件協(xié)議。采用發(fā)布訂閱模型,強調(diào)以數(shù)據(jù)為中心,提供多種服務(wù)質(zhì)量策略(Quality of Service, QoS),以保障數(shù)據(jù)實時、高效、靈活地分發(fā),可滿足各種分布式實時通信的應(yīng)用需求。
DDS在國防、航天、電網(wǎng)、醫(yī)療、能源等領(lǐng)域取得大量成功的應(yīng)用,其優(yōu)良的性能經(jīng)過了長期的驗證。在汽車領(lǐng)域,早在2018年,AUTOSAR AP在通信管理模塊中加入了DDS技術(shù);ROS2、Apollo CyberRT的底層也是基于DDS協(xié)議;Orin、Xavier等面向自動駕駛的系統(tǒng)級芯片SoC上也都預(yù)留了DDS的接口。DDS已被奧迪、大眾等多家汽車廠商應(yīng)用于智能駕駛、泊車充電、仿真測試平臺等場景;據(jù)悉國內(nèi)的造車新勢力小鵬汽車等也已將DDS技術(shù)應(yīng)用到量產(chǎn)車型上。
DDS能夠?qū)崿F(xiàn)低延遲、高可靠、高實時性的數(shù)據(jù)融合服務(wù),能夠從根本上降低軟件的耦合性、復(fù)雜性,提高軟件的模塊化特性,數(shù)據(jù)分發(fā)DDS 是OMG提供的用于以數(shù)據(jù)為中心的連接的中間件協(xié)議、連接框架和應(yīng)用, 應(yīng)用程序接口(API)標(biāo)準(zhǔn)。它繼承了分布式系統(tǒng)的組件,提供了低延時的數(shù)據(jù)連接、極高的可靠性和可擴展的體系結(jié)構(gòu),滿足業(yè)務(wù)和任務(wù)關(guān)鍵型應(yīng)用程序的需求。與SOME/ IP、MQTT相比,DDS具有以下特點:
1)SOME/IP 是針對汽車領(lǐng)域的中間件,在車載領(lǐng)域已經(jīng)應(yīng)用了較長的時間。MQTT適用于低帶寬及不穩(wěn)定的網(wǎng)絡(luò),但它依賴于一個中央代理。DDS本身是一個工業(yè)級別的通信標(biāo)準(zhǔn),適用于多種應(yīng)用場景,但用在汽車領(lǐng)域時可能需要做專門的裁剪。
2)相比于SOME/IP,DDS引入大量標(biāo)準(zhǔn)內(nèi)置特性,在靈活性、可伸縮性等方便更具優(yōu)勢。
3)SOME/IP主要采用遠(yuǎn)程過程調(diào)用(Remote Procedure Call, RPC)的通信方式,服務(wù)器(server)和客戶機(client)之間仍有一定的耦合性。而DDS采用發(fā)布/訂閱機制,實現(xiàn)了通信雙方在時間、空間和數(shù)據(jù)通信上的多維松耦合。
4)SOME/IP沒有定義QoS機制,只能保證數(shù)據(jù)可靠,不能保證延遲。MQTT也具有保證穩(wěn)定傳輸?shù)臋C制的,但其僅支持QoS0、QoS1、QoS2的QoS策略。DDS具有豐富的QoS策略,能夠滿足高復(fù)雜性、高靈活性的數(shù)據(jù)流要求。
5)SOME/IP基于傳輸控制協(xié)議(Transmission Control Protocol, TCP)或用戶數(shù)據(jù)包協(xié)議(User Datagram Protocol, UDP),只能在基于網(wǎng)絡(luò)層為IP類型的網(wǎng)絡(luò)環(huán)境中使用。而DDS基于實時發(fā)布訂閱協(xié)議(Real-Time Publish-Subscribe, RTPS)可以有多種實現(xiàn),且DDS獨有的DDS Security、DDS Web功能可以為用戶提供車-云-移動端一站式的解決方案。
國內(nèi)百度的自動駕駛使用了DDS。
用DDS比較容易取得ASIL-D級認(rèn)證。
圖片來源:大陸
汽車行業(yè)會有大量的中間件加入進(jìn)來,占用越來越多的CPU資源,CPU資源遠(yuǎn)比AI重要。SOA架構(gòu)至少需要200K DMIPS的CPU算力。
不僅消耗CPU算力,通信帶寬也是大量消耗,2025年就會有量產(chǎn)車使用萬兆以太網(wǎng),博通已經(jīng)有對應(yīng)50G的車載以太網(wǎng)交換機。要實現(xiàn)SOA,骨干網(wǎng)至少是萬兆以上。
免責(zé)說明:本文觀點和數(shù)據(jù)僅供參考,和實際情況可能存在偏差。本文不構(gòu)成投資建議,文中所有觀點、數(shù)據(jù)僅代表筆者立場,不具有任何指導(dǎo)、投資和決策意見。