中國汽車工業協會軟件分會(以下簡稱軟件分會)發布中國車用操作系統開源計劃(以下簡稱開源計劃)。普華基礎軟件聯合軟件分會成員單位一汽、東風、長安、中汽創智、中電科32所、西部智聯、地平線、芯馳、先進操作系統創新中心、電子科技大學等企業和高校,結成開源共建伙伴,實施開源計劃。此次開源計劃的發布,標志著中國汽車產業在智能網聯汽車發展模式上,走向更高水平開放。
前言:軟件定義汽車背景下,操作系統是汽車生態發展的靈魂。隨著汽車電動化、智能化、網聯化的發展,汽車操作系統已經成為車輛中重要的組成部分之一,一定程度上決定了車輛的安全性、舒適度、智能化水平和整體性能。
1、汽車操作系統簡介
汽車操作系統是運行在異構分布硬件架構上的實時安全平臺軟件,提供整車及部件感知、規劃、控制等功能框架并向上支撐智能網聯駕駛生態的軟件集合,是汽車智能計算基礎平臺安全、實時和高效運行的重要基礎和核心支撐。
汽車操作系統包括安全車載操作系統、智能駕駛操作系統和智能座艙操作系統。
① 安全車載操作系統
安全車載操作系統主要面向經典車輛控制領域,如動力系統、底盤系統和車身系統等,該類操作系統對實時性和安全性要求極高,生態發展已趨于成熟。
安全車載操作系統主要是實時操作系統RTOS,主要應用對象是 ECU。ECU對安全車載操作系統最基本的要求是高實時性,系統需要在規定時間內完成資源分配、任務同步等指定動作。嵌入式實時操作系統具有高可靠性、實時性、交互性以及多路性的優勢,系統響應極高,通常在毫秒或者微秒級別,滿足了高實時性的要求。
目前,主流的安全車載操作系統都兼容 OSEK/VDX 和 Classic AUTOSAR 這兩類汽車電子軟件標準。其中,Classic 平臺基于 OSEK/VDX 標準,定義了安全車載操作系統的技術規范。
② 智能駕駛操作系統
隨著智能化、網聯化技術的發展,智能汽車感知融合、決策規劃和控制執行功能帶來了更為復雜算法并產生大量的數據,需要更高的計算能力與數據通信能力。基于 OSEK/VDX 和 Classic AUTOSAR 軟件架構的安全車載操作系統已經不能滿足未來自動駕駛汽車的發展需求,AUTOSAR 組織為面向更復雜的域控制器和中央計算平臺的集中式電子電氣架構推出 Adaptive AUTOSAR 平臺。
Adaptive AUTOSAR 定義采用了基于 POSIX 標準的操作系統,可以為支持 POSIX 標準的操作系統及不同的應用需求提供標準化的平臺接口和應用服務,主要是為了適應汽車智能化的發展需求。Adaptive AUTOSAR 處于發展初期,其生態建設獲得 Tier1、主機廠的普遍認可尚需時日。
智能駕駛操作系統主要面向智能駕駛領域,應用于智能駕駛域控制器,該類操作系統對安全性和可靠性要求較高,同時對性能和運算能力的要求也較高。該類操作系統目前在全世界范圍內日趨成熟,但生態尚未完備。
③ 智能座艙操作系統
智能座艙操作系統主要為汽車信息娛樂服務以及車內人機交互提供控制平臺,是汽車實現座艙智能化與多源信息融合的運行環境,對操作系統的實時性與可靠性要求并不嚴苛。
主流車型的智能座艙操作主要包括QNX、Linux、Android等,傳統智能座艙操作系統中QNX占據了絕大部分份額,近年來,智能座艙的娛樂與信息服務屬性越發凸顯,開源的Linux以及在手機端擁有大量成熟信息服務資源的Android被眾多主機廠青睞,成為后起之秀。此外,國外少量車型還采用了Win CE等作為智能座艙操作系統。
隨著人們對車輛由單純交通工具向智能移動終端轉變的需求,智能座艙操作系統需要支持多樣化的應用與服務,并且具有豐富的生態資源。
2、國內外主流汽車操作系統方案簡介
隨著自動駕駛技術的快速發展,汽車對軟件特別是操作系統的變革需求越來越高,主機廠、Tier1供應商和自動駕駛軟硬件技術方案提供商紛紛投入大量的人力、物力和財力進行汽車操作系統的研發,希望在軟件定義汽車的時代能夠占據一席之地。下面對目前國內外主流汽車操作系統的開發和應用情況進行簡單介紹。
眾所周知,特斯拉是自動駕駛技術和產業化的領跑者,其優勢在于以計算平臺為核心,自研并領先芯片硬件、操作系統、平臺軟件等。特斯拉自動駕駛軟件架構如上圖所示,主要特點是其操作系統基于單一Linux內核,打造了整套自動駕駛的軟件方案,實現了感知、定位、融合、決策、規劃到控制的全流程。
從公開的信息可知,系統基于Ubuntu進行裁剪,對Linux內核進行了實時性改造,這個內核也開源在Github上,深度學習框架基于PyTorch,實時數據處理基于開源流處理平臺Kafka,擁有48個獨立的神經網絡進行多維度數據處理,并且具備強大的OTA升級能力。其FSD(Full Self-Driving)計算平臺硬件集成了智能座艙域和自動駕駛域,操作系統通過OTA軟件升級,充分利用數據、云計算生態,開創汽車產品價值和服務的新模式。
②?大眾中央集中式軟件架構
大眾汽車為了加速自動駕駛技術的應用,組建了龐大隊伍自主開發汽車操作系統vw.OS。vw.OS采用的是基于Adaptive AUTOSAR 面向服務的軟件架構,其中,中央集中式軟件架構如上圖所示。
大眾新一代EE架構的設計特點主要有:
??采用高性能處理器、高速網絡
??兼容POSIX的內核(Linux/QNX等)+Adaptive AUTOSAR
??應用軟件和I/O功能解耦,減少整個系統的復雜性和應用之間的依賴性
??高效、快速地開發用戶功能
??采用面向服務的通信
③ 華為MDC智能駕駛計算平臺架構
華為MDC(Mobile Data Center:移動數據中心)定位為智能駕駛的計算平臺。平臺集成了華為在ICT領域30多年的研發與生產制造經驗,基于CPU與AI處理器芯片,搭載智能駕駛OS,兼容AUTOSAR,支持L2~L5平滑演進,結合配套的完善工具鏈,客戶或生態合作伙伴可開發出針對不同應用場景的智能駕駛應用。
華為的MDC智能駕駛計算平臺架構主要特點有:
??提供軟硬件解決方案,且高度解耦,可獨立升級,硬件升級路線和軟件升級路線分別獨立;
??對主流傳感器的適配性好,支持主流GNSS、IMU、攝像頭、激光雷達和毫米波雷達等傳感器的數據接入,且支持攝像頭和激光雷達點云的前融合;
??對主流中間層軟件的適配性很好,可兼容ROS和AUTOSAR,支持Caffe和TensorFlow等常用深度學習框架核心組件(芯片、操作系統內核)自主可控;
??華為是業界唯一同時擁有CPU與AI芯片研發能力的廠家,MDC平臺硬件集成具有CPU與AI計算能力的強大SoC芯片,為智能駕駛提供可擴展的異構算力;
??功能軟件基于SOA架構,遵循AUTOSAR規范,定義了智能駕駛基本算法組件的調用框架與組件之間的軟件接口;上層場景應用可以靈活選擇不同的算法組件組合,實現具體的場景應用功能。
④?英偉達自動駕駛平臺架構
英偉達(NVIDIA)是全球領先的人工智能計算公司,利用其先進的硬件芯片開發優勢,以行業較領先的高性能安全芯片為核心,提供完整的硬件平臺和基礎軟件平臺,其架構如上圖所示。NVIDIA計算平臺硬件目前處在Xavier階段,下一代平臺Orin已發布但并未上市。Xavier是NVIDIA首次生產的車規級系統級芯片,該芯片采用了六種不同類型的處理器。
基于Xavier芯片,NVIDIA提供面向自動駕駛開發的DRIVE AGX Xavier,算力達到30 TOPS,面向L2+和L3級自動駕駛;提供的DRIVE AGX Pegasus使用兩塊Xavier系統級芯片和兩塊Turing GPU,算力達到320 TOPS,面向L4級和L5級自動駕駛。NVIDIA Drive系統軟件層融合了第三方RTOS+AUTOSAR,設有Hypervisor層,第三方量產RTOS方案通過了ASIL D認證。
⑤ 百度Apollo開放平臺架構
百度Apollo是一套軟件平臺,其依賴的計算平臺硬件需要采用第三方的IPC,Apollo開放平臺架構如上圖所示。百度自行研發了兩款輔助性硬件ASU(Apollo傳感器單元)和AXU(Apollo擴展單元)。其中,ASU用于收集各傳感器的數據,通過PCIe傳輸至IPC,此外,IPC對車輛的控制指令也需通過ASU向CAN發送;AXU用于滿足額外算力、存儲的需求,以GPU、FPGA形式接入已有硬件平臺。
百度Apollo的主要特點有:
??為網聯云控(V2X)進行軟硬件端到端的開發
??很好地融入了云服務,其中包括眾多百度自家的其他產品,如:基礎百度云服務、在線仿真產品、高精度地圖、小度助手(Duer OS),各產品間彼此受益
??由于開源,核心的算法模塊在Github進行長時間優化后已充分產品化
??主要側重系統軟件的開發,包含定制優化的操作系統、系統中間件及算法功能模塊,大部分硬件則采用第三方方案
??產品沒有涉及到AUTOSAR架構的額外開發適配,也無需對車輛現有的ECU/MCU進行改變。
3、汽車操作系統現狀
① 安全車載操作系統
安全車載操作系統國外發展較早,目前已經開展了一系列的標準化工作,國內目前主要處于跟隨狀態。
歐洲在 20 世紀 90 年代發展出用于汽車電子上分布式實時控制系統的開放式系統標準 OSEK/VDX,主要包括四部分標準:操作系統規范、通信規范、網絡管理規范、OSEK 實現語言。但隨著技術、產品、客戶需求等的升級,OSEK 標準逐漸不能支持新的硬件平臺。
2003年,寶馬、博世、大陸、戴姆勒、通用、福特、標志雪鐵龍、豐田、大眾9家企業作為核心成員,成立了一個汽車開放系統架構組織(簡稱AUTOSAR組織),致力于建立一個標準化平臺,獨立于硬件的分層軟件架構,制定各種車輛應用接口規范和集成標準。為應用開發提供方法論層面的指導,以減少汽車軟件設計的復雜度,提高汽車軟件的靈活性和開發效率,以及在不同汽車平臺的復用性。AUTOSAR以OSEK/VDX為基礎,但涉及的范圍更廣。
截至目前,AUTOSAR組織已發布Classic和Adaptive兩個平臺規范,分別對應安全控制類和自動駕駛的高性能類。Classic平臺基于OSEK/VDX標準,定義了安全車載操作系統的技術規范。Classic AUTOSAR的軟件架構如下圖所示,其主要特點是面向功能的架構(FOA),采用分層設計,實現應用層、基礎軟件層和硬件層的解耦。
Classic AUTOSAR分層軟件架構 (R20-11)
AUTOSAR標準平臺由于采用開放式架構和縱向分層、橫向模塊化架構,不僅提高了開發效率、降低開發成本,同時保障了車輛的安全性與一致性。AUTOSAR組織發展至今,得到了越來越多的行業認可,目前已有超過280家的整車、零部件、軟件、硬件等領域的成員。AUTOSAR目前已經成為國際主流的標準軟件架構,基于AUTOSAR 標準平臺,擁有完整的汽車軟件解決方案的企業主要有Vector、KPIT、ETAS、DS以及被大陸收購的Elektrobit和被西門子收購的MentorGraphics。此外,寶馬、沃爾沃等汽車廠商都相繼推出了基于AUTOSAR標準平臺的車型。
日本汽車軟件平臺架構組織JasPar(Japan Automotive Software Platform Architecture)成立于2004年,旨在聯合企業橫向定制兼顧汽車軟硬件的通信標準、實現汽車操作系統的通用化,提高基礎軟件的再利用率等。JasPar組織成員包括絕大多數的日系汽車及配套軟硬件產品廠商。
日本汽車軟件平臺架構組織JasPar
我國主機廠及零配件供應商目前主要使用Classic AUTOSAR標準進行軟件開發。一汽集團、長安集團等主機廠于2009年開始利用Classic AUTOSAR標準的工具進行ECU的設計、開發、驗證。2011年4月,上汽集團、一汽集團、長安集團、奇瑞集團等主機廠和部分高校成立了CASA聯盟,旨在中國推廣和發展AUTOSAR架構。目前江淮汽車也是主要基于Classic AUTOSAR標準進行軟件和產品開發。
在產品方面,普華軟件是中國電子科技集團的國產操作系統戰略平臺,并作為牽頭單位承擔了關于汽車電子操作系統的十一五、十二五核高基重大專項,所形成的汽車操作系統在車身控制模塊(BCM)、新能源整車控制器(VCU/HCU)、電子轉向系統(EPS)等關鍵零部件得到量產應用,并已被德國博世的先進輔助駕駛系統(ADAS)量產使用。
東軟睿馳發布了NeuSAR產品,其基于AUTOSAR研發制作,為自主研發自動駕駛系統的OEM整車企業及零部件供應商提供的面向下一代汽車通訊和計算架構的系統平臺,包含Classic AUTOSAR、Adaptive AUTOSAR及系列開發系統工具。
②?智能駕駛操作系統
智能駕駛操作系統將會成為自動駕駛汽車發展的核心競爭力之一。智能駕駛操作系統發展趨勢和特點是縱向分層,以實現層與層之間的解耦,方便快速開發和移植,如下圖所示。
智能駕駛操作系統縱向分層示意圖
各層之間各司其職,分工不同:
操作系統:負責對硬件提供線程創建等服務;
中間件/開發框架:負責和不同操作系統對接,并給上面應用提供通訊,資源管理等服務;
應用/功能軟件:剩下都是它的事。
目前行業普遍采用的智能駕駛操作系統主要是Linux、QNX和其他RTOS(如FreeRTOS、ThreadX、VxWorks等)。
三者之間的主要特點對比如下圖所示:
智能駕駛操作系統比較
Linux最初是作為通用操作系統而設計開發的,但提供了一些實時處理支持,這包括大部分POSIX標準中的實時功能,支持多任務、多線程,具有豐富的通信機制等。除此之外,Linux社區有實時性增強patch,在Linux內核原有RT功能上,增加了中斷線程化、優先級默認繼承等功能。Linux也提供了符合POSIX標準的調度策略,包括FIFO調度策略、時間片輪轉調度策略和靜態優先級搶占式調度策略。另外,Linux還提供了內存鎖定功能,以避免在實時處理中存儲頁面被換出,同時提供了符合POSIX標準的實時信號機制。
QNX是一種商用的遵從POSIX規范的類Unix實時操作系統,其主要特點是符合分布式、嵌入式、可規模擴展的硬實時操作系統。QNX遵循POSIX.1(程序接口)和POSIX.2(Shell和工具)、部分遵循POSIX.1b(實時擴展)。QNX的微內核結構是它區別于其它操作系統的顯著特點。QNX的微內核結構,內核獨立自處于一個被保護的地址空間;驅動程序、網絡協議和應用程序處于程序空間中。
在底層操作系統之上,軟件中間件在智能駕駛領域也備受關注。中間件的主要目標是為上層應用提供數據通信、協議對齊、計算調度、模塊化封裝等常用功能,為應用開發提供標準化、模塊化的開發框架,實現模塊解耦和代碼復用。
接下來介紹兩種自動駕駛的中間件方案:Adaptive AUTOSAR和ROS
Adaptive AUTOSAR
Adaptive AUTOSAR架構邏輯視圖(R20-11)
AUTOSAR組織為應對自動駕駛技術的發展推出了Adaptive AUTOSAR(AP)架構,如上圖所示。其主要特點是采用面向服務的架構(SOA),服務可根據應用需求動態加載,可通過配置文件動態加載配置,并可進行單獨更新。相對于Classic AUTOSAR(CP),可以滿足更強大的算力需求,更安全,兼容性好,可進行敏捷開發。
Adaptive AUTOSAR系統主要適應于新的集中式的高性能計算平臺,滿足車內部件之間的高速通信需求和智能駕駛的高計算能力需求。AP平臺采用了服務化的架構,系統由一系列的服務組成,應用和其他軟件模塊可以根據需求調用其中的一個或者多個服務,而服務可以是平臺提供的,也可以是遠程其他部件提供,OEM可以按照功能設計需求定義自己的服務組合。
AP平臺沒有設計新的操作系統內核,所有符合POSIX PSE51接口的操作系統內核都可以使用,AP平臺重點是在操作系統內核之上的系統服務中間層,主要分為平臺基礎功能和平臺服務功能兩部分。AP平臺主要的三個支撐和演進方向是:安全(包含信息安全和功能安全),連接(包括車內和車外各種新的通信機制),可升級(包含OTA,靈活的軟件設計和管理等)。AP平臺仍采用傳統的標準設計方式,每年一個版本集中進行新的功能發布。
ROS
ROS 架構
ROS作為最早開源的機器人軟件中間件,很早就被機器人行業使用。ROS的首要設計目標是在機器人研發領域提高代碼復用率。ROS是一個分布式的進程(也就是“節點”)框架,這些進程被封裝在易于被分享和發布的程序包和功能包中。整個智能駕駛系統和機器人系統有很強的相似度,ROS的開源特性,豐富的開源庫和工具鏈,特別在智能駕駛的研究領域有著較為廣泛的應用,很多自動駕駛的原型系統中都能夠看到ROS 的身影,例如AUTOWARE,百度Apollo 最初也是使用了ROS,直至Apollo 3.5 版本才切換至自研的車載中間件CyberRT。
ROS在發展過程中主要有兩個版本,ROS1和ROS2,ROS1的通信依賴中心節點的處理,無法解決單點失敗等可靠性問題。為了更好的符合工業級的運行標準,ROS2 最大的改變是,取消Master中央節點,實現節點的分布式發現,發布/訂閱,請求/響應;底層基于DDS (數據分發服務)這個工業級的通信中間件通信機制,支持多操作系統,包括Linux、windows、Mac、RTOS等。
雖然ROS2基于ROS1有了很大的改進,但是距離完全車規應用還有很大的距離,有些公司如APEX.AI也在對ROS進行車規級的改造嘗試。
③?智能座艙操作系統
在智能座艙操作系統領域,目前還沒有統一的國際標準,智能座艙操作系統主要掌握在幾家國外軟件企業手中,包括黑莓的QNX、諸多基于Linux的定制操作系統以及基于Android開源項目的操作系統(其本身也基于Linux)。
QNX CAR 應用平臺
QNX 是一種商用的遵從POSIX規范的類Unix實時操作系統,目標市場主要是面向嵌入式系統,具備高運行效率、高可靠性的特點,并在工控領域擁有近40年的使用經驗,被廣泛應用于汽車、軌道交通、航空航天等對安全性、實時性要求較高的領域。QNX是全球第一款通過ISO 26262 ASIL D安全認證的智能座艙操作系統,已匹配全球超過40個汽車品牌,并應用于6000多萬輛汽車,是目前市場占有率第一的智能座艙操作系統,全球市場份額超過75%。
AGL(Automotive Grade Linux)
Linux 功能較 QNX 更強大,組件也更為復雜,因此 Linux常用于支持更多應用和接口的信息娛樂系統中。協會或聯盟致力于將開源 Linux 操作系統推廣至汽車領域中,典型代表如 AGL、GENIVI。例如,特斯拉在Linux基礎上開發出了完全適配旗下車輛的操作系統;阿里的AliOS也是基于Linux開發,目前已經應用在上汽榮威、上汽名爵等多款車型上。2016年,由Linux基金會贊助的開源車載系統AGL(Automotive Grade Linux)項目發布2.0版本,致力于為汽車軟件行業提供全新的智能座艙系統支持。
Android 憑借國內豐富的應用生態切入汽車 IVI 系統。雖然安全性、穩定性不足,但由于車載信息娛樂系統對安全性要求相對較低,Android仍然憑借其上述優點在國內車載信息娛樂系統領域占據主流地位。尤其是各大互聯網巨頭、自主品牌、造車新勢力紛紛基于Android進行定制化改造,推出了自己的汽車操作系統,如阿里AliOS、百度小度車載OS、比亞迪DiLink、蔚來NIO OS、小鵬Xmart OS 等。
結束語
智能座艙和自動駕駛的發展,特斯拉的突飛猛進,讓各大主機廠越來越重視汽車操作系統。但車企現在所做的軟件定義汽車,大都是通過軟硬件解耦來降低造車成本、豐富新車功能,在操作系統層面大都還停留在市場調研和學習借鑒階段。
鑒于美國不斷封鎖打壓中國高科技企業,從國家層面來說,擁有自主可控的車載芯片和操作系統是一個必然的要求。但研發一個新的操作系統,有足夠的時間、人力、財力和技術能力嗎?研發失敗了怎么辦?開發出來之后只為了供給自己使用?怎么盈利?如果投入市場能有一席之地嗎?這些都是需要考慮的問題。
編輯:黃飛
?
評論
查看更多