李丹 鄭紅麗 回姝 顧瑩
(1.中國第一汽車股份有限公司智能網(wǎng)聯(lián)開發(fā)院,長春 130013;2.汽車振動噪聲與安全控制綜合技術(shù)國家重點實驗室,長春 130013)
主題詞:智能網(wǎng)聯(lián)汽車 智能座艙 操作系統(tǒng)
縮略語
ADAS Advanced Driving Assistance System
V2X Vehicleto Everything
HUD Head Up Display
DMS Driver Monitoring System
OMS Occupancy Monitoring System
OS Operating System
E/E Electric/Electronic
HAL Hardware Abstract Layer
BSP Board Support Package
API Application Programming Interface
HMI Human Machine Interface
IO Input Output
KVM Keyboard Video Mouse
TOF Time Of Fly
IVI In-Vehicle Infotainment
OTA Over The Air Technology
SOTA Software Over The Air Technology
AI Artificial Intelligence
當前隨著硬件、軟件技術(shù)的不斷創(chuàng)新發(fā)展,智能座艙從以功能需求出發(fā),向“客戶體驗”為核心的理念不斷演變,整體表現(xiàn)為更加安全、智能和舒適。主要體現(xiàn)為以下3方面:
(1)人機交互能力由功能性感知逐步向認知、主動式交互發(fā)展;
(2)多屏、大屏、3D和高清感官方面的創(chuàng)新正逐步成為座艙顯示的新趨勢;
(3)軟件的自定義編程實現(xiàn)場景個性化設定和自由組合。
在技術(shù)層面,隨著新一代E/E架構(gòu)的發(fā)展,座艙域正在進行深度的融合,整合部分ADAS功能和V2X系統(tǒng),例如在集成儀表中控、后排娛樂、HUD這些基礎功能上進一步融合環(huán)視、DMS、IMS和部分ADAS功能,由此座艙對算力的要求越來越高,推動芯片的制程工藝越來越先進,芯片的迭代速度越來越快,汽車產(chǎn)品的發(fā)布周期縮短,部分軟件平臺實現(xiàn)了標準化、可擴展、開放式的一體化基礎軟件平臺,以實現(xiàn)軟硬件解耦,達到軟件功能快速迭代、實現(xiàn)場景服務和變更開發(fā)的快速升級迭代,從而實現(xiàn)個性化和差異化的座艙產(chǎn)品體驗。
這些技術(shù)變化對底層軟件及操作系統(tǒng)提出了越來越高的要求。
本文通過對智能網(wǎng)聯(lián)時代汽車座艙操作系統(tǒng)發(fā)展帶來的挑戰(zhàn)進行闡述和分析,進而提出對座艙操作系統(tǒng)發(fā)展的對策以迎接操作系統(tǒng)發(fā)展的大趨勢。
操作系統(tǒng)(Operating System,OS)指控制和管理計算設備的硬件和軟件資源的計算機程序,操作系統(tǒng)需要管理和配置內(nèi)存,決定系統(tǒng)資源分配的優(yōu)先次序,同時控制輸入、輸出設備的基本功能,且操作系統(tǒng)需要提供一個讓用戶與系統(tǒng)交互的操作界面,需要合理地調(diào)動計算資源、組織計算機工作,以提供給用戶和其它應用統(tǒng)一的接口和統(tǒng)一環(huán)境的程序集合。
隨著人們生活水平的提高,電話、電腦、智能穿戴、以及車載設備發(fā)展到一定程度后,均需要制定專門的操作系統(tǒng),例如電腦對應的微軟Windows系統(tǒng),智能手機、平板對應的Android系統(tǒng)和iOS系統(tǒng)。智能座艙的OS是從傳統(tǒng)嵌入式汽車電子的基礎軟件不斷演變而來的,而傳統(tǒng)汽車電子可以分為2大類:
(1)汽車電子類控制設備:通過直接向控制器發(fā)送控制命令,用以實現(xiàn)控制發(fā)動機、DCDC、變速箱等協(xié)同工作的總成或部件。
(2)車載信息娛樂設備:如儀表、中控、抬頭顯示(HUD)、流媒體后視鏡(FDM)等。這類部件與用戶體驗強相關(guān),但是此類設備不直接參與汽車行駛的控制與決策,對車輛行駛性能和安全不起到?jīng)Q定作用。
汽車類的操作系統(tǒng)分為2大類型:注重開放性、兼容性、生態(tài)聯(lián)合的智能座艙域OS和注重安全、穩(wěn)定的自動駕駛域OS。
狹義上的OS即為操作系統(tǒng)的內(nèi)核(Kernel)。內(nèi)核提供給OS最基本的功能,內(nèi)核主要負責管理系統(tǒng)的進程、內(nèi)存、設備驅(qū)動程序和文件管理及網(wǎng)絡系統(tǒng),內(nèi)核的性能決定了系統(tǒng)的性能和穩(wěn)定性。
廣義的OS按照對底層操作系統(tǒng)改造程度的不同,主要可以分為以下4種:
(1)基礎型的汽車OS:是汽車底層的操作系統(tǒng),包括系統(tǒng)內(nèi)核、底層驅(qū)動層,一些OS還包括虛擬機,如QNX、Linux、WinCE、ALIOS等。
(2)定制型的汽車OS:在基礎型的OS之上進行深度定制化的開發(fā),定制內(nèi)容包括內(nèi)核定制、硬件驅(qū)動修改、運行時環(huán)境變更、應用程序框架適配。
(3)ROM型汽車OS:基于Linux、Android、ONX等基礎型操作系統(tǒng)的基礎上進行定制化開發(fā),但是并不涉及系統(tǒng)內(nèi)核的更改,一般只修改基礎型操作系統(tǒng)自帶的應用程序。
(4)超級APP:不是完整意義的汽車OS,指的是通過整合導航、多媒體、微信、語音功能為一體,來滿足不同車主需求的APP,也稱作手機互聯(lián),如CarPlay、Android Auto、CarLife、Hicar、FAW-VW-LINK等。智能座艙操作系統(tǒng)演變過程見智能座艙發(fā)展概要(圖1)。
圖1 智能座艙發(fā)展概要
廣義的OS由系統(tǒng)軟件和功能軟件2部分構(gòu)成。自上而下可劃分為APP算法軟件、功能軟件(庫文件+中間件)和系統(tǒng)軟件(HAL層+內(nèi)核+中間件)以及硬件平臺4個部分。
(1)硬件平臺:硬件架構(gòu)包括AI單元和驅(qū)動層,需支持芯片選型的靈活性、可配置拓展性、算力可堆砌性的優(yōu)點,例如H3平臺架構(gòu)(圖2)。
圖2 H3平臺架構(gòu)[2]
(2)系統(tǒng)軟件:針對智能座艙場景定制較為復雜的大規(guī)模嵌入式系統(tǒng)的運行環(huán)境,主要包含如下3層:
①硬件抽象層:包括Hypervisor(虛擬化技術(shù),用于提供虛擬平臺以便同時支持多操作系統(tǒng))、BSP(板卡支持包)等。BSP包括了Bootloader(引導程序)、驅(qū)動程序、配置文檔和HAL層。位于硬件電路與操作系統(tǒng)內(nèi)核間的接口層用于將硬件抽象化,為操作系統(tǒng)提供虛擬硬件平臺,使其與硬件解耦,并可以在多平臺上移植。
②系統(tǒng)內(nèi)核(Kernel):內(nèi)核是操作系統(tǒng)最基本的組成部分,主要用于管理系統(tǒng)的內(nèi)存、進程、設備的驅(qū)動程序、文件管理和網(wǎng)絡系統(tǒng),系統(tǒng)內(nèi)核決定著操作系統(tǒng)的性能和穩(wěn)定性。
③中間層:即應用程序服務器層,是處在應用和操作系統(tǒng)之間的軟件,可提供標準的接口和協(xié)議,提升程序的可移植性,如自適應AutoSAR運行時的環(huán)境(中間件API接口)和分布式實時通信中間件等。
(3)功能軟件:包含智能座艙的核心共性功能模塊,如相關(guān)功能模塊算法的編程框架。核心共性功能模塊包括智能座艙通用框架、網(wǎng)聯(lián)功能、云控平臺、多模交互,功能軟件結(jié)合系統(tǒng)軟件,共同構(gòu)成完整的智能座艙操作系統(tǒng),支撐座艙智能化技術(shù)實現(xiàn)。
(4)應用算法軟件:為實現(xiàn)具體座艙智能化功能、HMI交互、自動駕駛功能算法的軟件。
圖3 娛樂主機軟件架構(gòu)
從目前的發(fā)展方向上來看,由于單車軟件全生命周期價格越來越高,推動汽車主機廠(OEM)大力擴充內(nèi)部軟件研發(fā)團隊,降低外部軟件供應成本,而且隨著軟件定義汽車的不斷發(fā)展,行業(yè)的盈利模式也將隨之改變,由新車制造/銷售來獲取利潤向大規(guī)模軟件+保有量收費(如客戶端(C端)授權(quán)及流量收益等)的盈利模式轉(zhuǎn)變,因此多數(shù)OEM都試圖掌握未來智能汽車底層軟件和硬件的控制權(quán),同時掌握上層生態(tài)環(huán)境,在此階段多數(shù)OEM傾向于采用中立、免費的操作系統(tǒng),同時開展多方面的合作,利用豐富的開源軟件資源,實現(xiàn)開發(fā)周期和開發(fā)成本的優(yōu)化。
隨著智能座艙功能越來越復雜,多任務執(zhí)行需求量的增多,早期采用裸機程序的方式不得不引入大量的中斷,保證功能的自如切換,可中斷的引入使程序結(jié)構(gòu)變得復雜,導致程序可讀性變差,維護起來較難。
隨著娛樂主機內(nèi)應用和接口數(shù)量的增多,座艙軟件使用了更為復雜操作系統(tǒng)。其中Linux和QNX只集成了學術(shù)定義上的操作系統(tǒng)和通訊協(xié)議棧;而Ubuntu則在Linux的基礎上增加了中間件及桌面環(huán)境;Android系統(tǒng)則在Linux的基礎上集成了中間件及桌面環(huán)境和大量的應用軟件?,F(xiàn)階段娛樂主機的主流操作系統(tǒng)主要為QNX、Linux和Android。
4.1.1 QNX:非開源且安全實時
QNX系統(tǒng)是一款微內(nèi)核、非開源、嵌入式、安全實時的操作系統(tǒng)。其內(nèi)核內(nèi)存不大于30 kB,QNX系統(tǒng)的驅(qū)動程序、協(xié)議棧、文件系統(tǒng)、應用程序都是運行在內(nèi)核之外、并受內(nèi)存保護的空間內(nèi),這樣就可實現(xiàn)組件間的相互獨立,即避免了因為程序指針錯誤造成的內(nèi)核故障。QNX系統(tǒng)內(nèi)核小,運行速度快,是一種獨特的微內(nèi)核架構(gòu),其安全和穩(wěn)定性極高,不易受到病毒的破壞,也是全球首款通過ISO 26262 ASIL-D安全認證的實時操作系統(tǒng)。因此QNX系統(tǒng)通常用于對安全穩(wěn)定性要求較高的儀表總成中。
但QNX為非開源系統(tǒng),開發(fā)難度較大、應用生態(tài)較弱、商業(yè)收費高。由于QNX系統(tǒng)憑借現(xiàn)階段智能座艙操作系統(tǒng)對安全穩(wěn)定性、實時性的嚴苛要求,仍占據(jù)較大的使用率。
4.1.2 Linux:功能強大并開源
Linux系統(tǒng)是一款開源且功能強大的操作系統(tǒng),具有內(nèi)核緊湊且高效的特點,Linux系統(tǒng)可以充分發(fā)揮硬件的性能。Linux系統(tǒng)與QNX系統(tǒng)相比最大優(yōu)勢在于代碼開源,具有較強的定制、開發(fā)的靈活性?;贚inux開發(fā)的操作系統(tǒng)是在Linux Kernel內(nèi)核上集成了中間件、桌面環(huán)境和應用軟件。Linux的功能較QNX更為強大,組件構(gòu)成也更加復雜,因此Linux常用于支持更多應用和多接口的信息娛樂系統(tǒng)中。
4.1.3 Android:Linux的發(fā)行版本
Android是Linux的發(fā)行版本,其系統(tǒng)更加復雜,功能更加強大。Android是由Google公司和開放手機聯(lián)盟在Linux的基礎上開發(fā)的操作系統(tǒng)。Android一度被稱為基于Linux開發(fā)的、最成功的產(chǎn)品之一,應用生態(tài)開發(fā)最為豐富,其主要應用于移動互聯(lián)設備,因此,在國內(nèi)車載娛樂系統(tǒng)?;贏ndroid開發(fā)。Android系統(tǒng)具有開源、靈活、可以移植性強的優(yōu)點。
但Android系統(tǒng)安全穩(wěn)定性較差,系統(tǒng)漏洞可能給系統(tǒng)帶來較高的風險,技術(shù)維護成本相對較高,且過度依賴于Google。
Android系統(tǒng)憑借國內(nèi)豐富的應用生態(tài)切入汽車信息娛樂系統(tǒng)。雖然Android系統(tǒng)的安全穩(wěn)定性欠佳,但由于車載娛樂系統(tǒng)對安全性要求相對較低,Android仍然憑借其開源、靈活、可以移植性強的優(yōu)點在國內(nèi)車載娛樂系統(tǒng)領域占據(jù)主流地位。
Hypervisor是一種基于硬件虛擬化的軟件技術(shù),運行在物理硬件與虛擬客戶機之間。Hypervisor用于創(chuàng)建、運行和管理客戶操作系統(tǒng),虛擬操作系統(tǒng)可以訪問(獨占或共享)底層硬件資源,包括CPU、內(nèi)存和外圍設備。在每個虛擬客戶機用戶看來,所有已分配的硬件都可用于本機。Hypervisor還提供硬件設備共享功能,多個虛擬機可共享使用網(wǎng)絡、存儲和GPU外部設備。近年來,Hypervisor越來越多地應用在數(shù)據(jù)中心、復雜嵌入式系統(tǒng)領域,用于提高硬件系統(tǒng)的利用率、軟件安全性。Hypervisor是實現(xiàn)跨平臺應用、提高硬件利用率的重要途徑之一。
虛擬化的主要類型如下:
(1)應用程序的虛擬化:比如JAVA VM,其本質(zhì)是對二進制的轉(zhuǎn)換;
(2)操作系統(tǒng)的虛擬化:比如容器/Docker技術(shù),其本質(zhì)利用對特定進程可用的算力、存儲、IO資源的管理,幾乎沒有額外系統(tǒng)負擔,操作系統(tǒng)的虛擬化在云服務中使用較多;
(3)硬件虛擬化:比如直接在硬件基礎上運行的Xen、Opensynergy、QNX、ACRN等,在完整的OS上運行的KVM,對算力及IO的影響小,額外負擔成本少。實現(xiàn)硬件虛擬化可以采用全虛擬化(Full-Virtualized)、半 虛 擬 化(Para-Virtualized)或 透 傳(Pass through)的方式。
感知算法涉及語音、視覺、聲學、多模交互融合方面。其中語音涉及單模語音交互技術(shù),降噪、回聲消除、語音識別,視覺涉及基于圖像信息、ToF傳感器算法的技術(shù)實現(xiàn)人臉識別、手勢識別以實現(xiàn)駕駛員、乘客檢測,如抽煙、情緒管理等。
智能座艙是典型的多模交互場景,而視覺基礎技術(shù)是多模技術(shù)的基礎,隨著攝像頭數(shù)量的增加、分辨率的提升,視覺基礎技術(shù)由單幀感知走向時序感知、從平面感知變?yōu)榱Ⅲw建模、從單模態(tài)變?yōu)槎嗄B(tài)學習,從監(jiān)督學習走向自主學習。同時語音交互是多模態(tài)交互的重要部分,涉及多模、多音區(qū)定位、多模人聲分離、多模語音識別、多?;芈曄徒翟氲燃夹g(shù)。
與此同時,為實現(xiàn)人機共駕,對算法延遲的要求越來越高,快速、穩(wěn)定、準確、對網(wǎng)絡的低依賴是智能座艙未來的基本要求?;诖艘笙聞荼卦黾觽鞲衅鲾?shù)量及能力,例如攝像頭個數(shù)、分辨率、運行幀率、麥克風數(shù)量、AEC通道數(shù)量等,每一個因素都將對算法及上層應用產(chǎn)生影響,導致對算力的要求越來越高。
2020年量產(chǎn)的紅旗H9及E-HS9的座艙域是基于Renesas Rcar-H3的虛擬化座艙域控制器平臺,Rcar-H3是Renesas的汽車計算平臺的第三代解決方案,提供強大的CPU計算能力、圖像處理能力,適用于安全駕駛輔助系統(tǒng)和車載信息娛樂系統(tǒng)領域,Renesas提供穩(wěn)定的BSP支持。
一汽和業(yè)界領先的OpenSynergy一起基于H3定制開發(fā)了Type-1型虛擬機COQOSHypervisor(圖4),使其能夠在一個R-Car H3芯片上同時執(zhí)行多個操作系統(tǒng):基于Linux系統(tǒng)的信息系統(tǒng)(儀表)是與安全相關(guān)顯示組件以及基于Android系統(tǒng)的車載信息娛樂系統(tǒng)(IVI)。COQOSHypervisor與Android系統(tǒng)和Linux系統(tǒng)共享R-Car H3 GPU的處理能力,將應用呈現(xiàn)在多個顯示屏上,進而實現(xiàn)強大且靈活的智能座艙系統(tǒng)。
圖4 COQOSHypervisor軟件架構(gòu)
快節(jié)奏的現(xiàn)代生活,使人們更加重視高性能。啟動速度快、界面切換迅速都成為了智能座艙系統(tǒng)評價打分的關(guān)鍵要點。系統(tǒng)性能受限于硬件及軟件平臺,需要在軟件層面盡可能地優(yōu)化,以最大化發(fā)揮硬件性能。
車載系統(tǒng)的安全關(guān)系到乘員生命和車輛及承載的財產(chǎn),其重要性毋庸置疑。軟件行業(yè)、互聯(lián)網(wǎng)行業(yè)發(fā)展多年,各種新技術(shù)、新系統(tǒng)層出不窮,但與此同時,黑客技術(shù)也從未止步,如何保證安全性,是一個永恒的課題。
智能座艙系統(tǒng)的功能豐富多樣、種類繁多,有如駕乘輔助類、娛樂類、工作類等。隨著功能越來越豐富,系統(tǒng)越來越復雜,軟件問題也層出不窮。需要有效、快速地解決軟件問題,確保系統(tǒng)穩(wěn)定。
現(xiàn)代社會對知識產(chǎn)權(quán)的保護非常重視。避免被競爭對手借助專利設卡,重視知識產(chǎn)權(quán)并通過知識產(chǎn)權(quán)保護自研技術(shù)是一項很重要的內(nèi)容。
用戶群體復雜,有年輕人和中老年人,有男性、有女性,每個人群、每個人偏好是不一樣的。智能座艙操作系統(tǒng)需要注重考慮如何滿足個性化需求。
采用低耦合設計方案,讓軟件平臺化。系統(tǒng)軟件可以方便、快速地移植到新平臺。對于車企而言,能夠投入更多精力精雕細琢,既降低了研發(fā)成本,也提升了軟件質(zhì)量。同時,低耦合設計使得軟件的擴展和定制更為靈活,滿足了個性化的需要。
嚴格實行軟件規(guī)范化,制定一套軟件代碼規(guī)范。例如,采取可讀性強的命名規(guī)則,采用易擴展維護的功能設計,借助專業(yè)代碼質(zhì)量檢測工具(如SonarCube、LeakCanery等)進行代碼質(zhì)量檢測。以規(guī)范化手段確保軟件質(zhì)量,保證系統(tǒng)穩(wěn)定性。
支持OTA(系統(tǒng)升級)和SOTA(功能模塊升級)2種遠程升級方案。這2種方式給安全漏洞補丁、軟件漏洞補丁及新功能的導入提供了基礎性支持。
保持對新技術(shù)的關(guān)注,不斷創(chuàng)新,在5G和AI時代持續(xù)進行產(chǎn)品導入,取得先機。
隨著通信技術(shù)的不斷發(fā)展,智能座艙操作系統(tǒng)穩(wěn)步演變,通過對智能座艙系統(tǒng)演變進程的剖析,以及對一汽紅旗H9、E-HS9車型智能座艙系統(tǒng)搭載的分析,提出智能座艙發(fā)展面臨的挑戰(zhàn)和應對措施,進而支撐以用戶體驗為導向的智能座艙開發(fā)方式,應對未來市場的挑戰(zhàn)。
面向服務的架構(gòu)(Service Oriented Architecture,SOA)作為一種面向服務的架構(gòu)的組件模型。未來隨著SOA的廣泛應用,SOA可將不同的應用服務進行解耦,并通過預先定義好的接口進行調(diào)用,使得構(gòu)建在不同的系統(tǒng)中的服務可以以一種統(tǒng)一和通用的方式進行交互,進而推進實現(xiàn)軟件定義汽車。