





【摘" 要】在汽車研發逐漸進入到軟件比重占主導的時代,軟件定義汽車便成為了一種時尚。為了更好實現軟件定義汽車,文章介紹一種基于功能架構的設計方法,將一個功能轉化成多個不同層級和領域軟件模塊,然后分別部署在不同的實體控制器(ECU)中,以此來完成功能的應用,從而讓“軟件定義汽車”變得切實可行。
【關鍵詞】功能架構;全局功能定義;功能拆解;功能設計;軟件模塊部署;軟件集成;OTA
中圖分類號:U463.6" " 文獻標識碼:A" " 文章編號:1003-8639( 2023 )11-0035-03
Research on the Design Process of Software Defined Automotive Functional Architecture
PANG Renyong,CHEN Wenqing,YAO Ang,WU Fan,HUANG Lifang,XU Wei
(Automotive Engineering Research Institute of Guangzhou Automobile Group Co.,Ltd.,Guangzhou 511434,China)
【Abstract】As automotive research and development gradually enters an era where software dominates,defining cars with software has become a fashion trend. In order to better implement software defined cars,this article introduces a design method based on functional architecture,which converts a function into multiple software modules of different levels and domains,and then deploys them in different entity controllers(ECUs)to complete the application of the function,making“software defined vehicles”practical and feasible.
【Key words】function architecture;global function definition;function dismantling;function design;software module deployment;software integration;OTA
1" 前言
軟件定義汽車(Software Defined Vehicles,SDV),其本質是通過汽車控制器內的軟件快速迭代,實現對汽車功能的快速加持或更新,從而滿足用戶對期待的功能在愛車中快速實現的渴求。要實現軟件的快速迭代,首先必須要有辦法將新功能或功能的更新快速轉化成軟件,這其中的核心就在功能架構。
功能架構,是將汽車功能置于架構的高度,采用全局化的思維進行功能的定義、拆解、設計,然后分解成一個個可獨立實現的功能模塊(類似于樂高中的積木),并通過標準化的接口連接,形成一個功能網絡的過程。在每輛汽車中,這個功能網絡是一個相對穩定的存在,當有新的功能或功能更新時,只需要將新增或更新的功能模塊嵌入到網絡中合適的位置,實現功能網絡的局部更新即可。最后再把這些功能模塊轉化成軟件,通過OTA刷新到車上對應控制器的特定軟件存儲區,就最終實現了軟件的迭代更新。
2" 功能架構的設計流程
功能架構的設計流程主要包含全局功能定義、功能拆解、功能設計和接口定義、功能網絡構建和更新、功能模塊的軟件轉化、軟件模塊部署與軟件集成以及OTA刷新等過程。
2.1" 全局功能定義
全局功能定義是指基于場景的用戶需求挖掘以及非用戶需求分析,全部轉化成一個個的功能,然后將功能按照一定的類別進行排列,在一個汽車公司內形成一份統一的功能清單,如圖1所示。該清單是一個全局化的功能清單,需要工程師針對該清單進行分門別類的描述和必要但簡單的邏輯關系映射約束,同時轉化為工程語言,讓所有從事工程開發的人員都能讀懂。也正因為如此,全局功能定義成為所有設計的起點。
2.2" 功能拆解
功能定義完成后,交由特定的功能架構設計工程師進行專業的功能拆解。功能拆解是指將每一個功能按照一定的層級定義,將功能拆成一個個獨立功能模塊,如圖2所示。
功能拆解的層級,按照類似于軟件開發層級的定義方法來劃分,一般分為驅動層、抽象層和應用層等3個層次。驅動層實現物理信號(如傳感器、開關的電平信號采集或負載電平信號驅動)和邏輯信號(如底層驅動代碼)之間的相互轉化。抽象層實現邏輯信號的軟件抽象,并轉化成可供上層軟件調用的軟件信號,同時進行同類項合并,然后進行軟件模塊化和接口標準化,形成一個個帶標準接口的功能軟件模塊。應用層是專門用來實現功能的邏輯轉化的層級,每一個功能都可以轉化成一個或多個有相互關聯關系的模塊,通過本層級接口和下層級的標準化接口,連接成一個完整的功能體。
功能拆解打破了嵌入式開發中以獨立功能為中心的開發模式,將一個功能拆成了多個獨立功能模塊,并且使得每一個模塊都可以和其他模塊發生邏輯關聯——不但可以引用別的模塊來加強自身功能邏輯的豐富性,還可以實現自身功能模塊的邏輯為別的模塊提供服務,從而為功能的設計開啟了全新的思路。
2.3" 功能設計和接口定義
功能設計,是指對拆解出來的功能模塊,按照其層級關系和相互的邏輯關系進行重構,同時通過接口定義和連接,形成相應的鏈路,以重新體現功能定義的完整性。由于一個功能在實現上需要別的功能來做必要的支持,因此它也可以通過和別的功能模塊建立單點連接或鏈路連接以實現功能的相互依賴關系,而其內部的邏輯,則可完全獨立出來設計,僅僅通過接口和外部關聯。功能設計示意如圖3所示。
功能設計過程中,各個功能模塊需要和外界發生關聯關系,因此需要對接口進行定義。接口定義可以實現一個功能模塊的內向獨立和外向關聯,為設計帶來簡化。一般情況下,驅動層和抽象層的模塊接口,變化頻率較低,可以標準化,而應用層的模塊接口,在設計之初變化/更新較快,難以標準化,但其最終的目標都是要實現接口標準化。
2.4" 功能網絡構建和更新
功能模塊,針對一個功能建立了鏈路,就實現一個功能工程化體現,而將一輛車內所有功能模塊間的邏輯關系連接完整,就構成了一張巨大的網絡,稱之為功能網絡,如圖4所示。
以此類推,如果將一家公司內所有車型的功能模塊都納入,就構成了功能網絡平臺。在這個平臺中,每一個功能模塊都可以通過其接口調用其它模塊來為自身功能設計服務,同時也可以為其他模塊的設計提供服務,由此實現了功能模塊設計在邏輯上的網絡化。如果有一個新的功能加進來,除了其核心的功能模塊加入以外,其他的外在支持直接尋找相應的模塊,通過接口建立起關聯,即實現了功能網絡平臺的擴容。如果有一個功能需要更新,只需要將其特定的模塊更新,同時更新必要的支持模塊的連接關系即可實現,也實現了功能網絡平臺的更新。
2.5" 功能模塊軟件的轉化、部署與集成
在功能網絡平臺構建后,每個功能模塊都可以進行內部邏輯設計,既可以進行簡單的邏輯設計,也可以實現復雜的算法設計,其核心在它的獨立性上。設計完成后,可以交由軟件開發團隊設計出軟件代碼,當然也可以交由工具自動生成。當所有必要軟件模塊都開發出來后,就可以進行軟件模塊部署,如圖5所示。
軟件模塊部署是指軟件模塊布置在哪個實體的控制器中。在一個架構平臺設計中,其實體的控制器是通過物理架構設計來實現的,其設計的邊界是需要涵蓋未來N年的功能架構設計需求,即設計師需要預見到未來N年的功能模塊增加,以及架構平臺中的控制器算力、存儲、通信帶寬等。軟件模塊部署涉及具體的某款車型,當這個車型的功能定義選定后,其部署的軟件模塊也就確定下來了。由于每個車型的需求不同,其軟件模塊部署的數量和位置也不盡相同,其一般原則是:每個控制器中部署的軟件模塊代碼總量,不能超過其容量的60%,以滿足未來N年的軟件迭代需求。
當軟件模塊部署完成后,需要對每一個控制器內的軟件進行軟件集成,如圖6所示。軟件集成后的控制器,將是一個擁有代碼的可以安裝在車上的控制器。當一款車型上所有的控制器集成、裝配和聯調后,就實現了該車型上的功能設計實現。
2.6" OTA刷新
當這款車型到達每個用戶手中后,該車就形成了一個可以運行在大街小巷中的獨立終端。也許有一天,某個用戶發現一個新功能或者某個功能想更新到最新狀態時,就可以向賣家提出更新愛車的要求。當這個要求轉化成需求,根據功能設計的運行流程,新的軟件可以通過OTA,將其車中控制器的某個模塊進行添加,或者一個/多個軟件模塊進行更新,就實現了軟件迭代。
經此過程,也就從現實角度實現了“軟件定義汽車”,或者說用戶定義汽車的概念。經過一段時間,當有大量的車不斷地實現軟件迭代,也就實現了每個用戶對汽車進行個性化定義,完成了汽車的千人千面,常用常新。
3" 結論
如今,智能汽車已成為全球汽車產業的戰略發展方向,汽車技術與工程核心逐漸從傳統硬件層面轉移到軟件層面,軟件定義汽車成為未來汽車發展的重要趨勢。本文基于功能架構的設計方法,通過對功能架構的設計過程進行拆解分析,從現實角度實現了汽車設計軟件化,從而讓“軟件定義汽車”變得切實可行,使汽車變成有生命力的產品,最終滿足用戶對汽車的個性化定制需要。
參考文獻:
[1] 陳敏. 基于EA的電子電氣架構功能設計探討[J]. 汽車電器,2022(6):38-41,45.
[2] 付朝輝,王華陽. 功能架構在電子電氣架構開發中的應用和實踐[J]. 汽車工程,2021,43(12):1871-1879.
[3] 楊子. 淺析汽車功能域的關鍵技術[J]. 電子產品世界,2022,29(11):55-58,64.
[4] 崔明陽,黃荷葉,許慶,等. 智能網聯汽車架構、功能與應用關鍵技術[J]. 清華大學學報(自然科學版),2022,62(3):493-508.
[5] 孟天闖,李佳幸,黃晉,等. 軟件定義汽車技術體系的研究[J]. 汽車工程,2021,43(4):459-468.
[6] 張可可. 基于“可自動配置的底層軟件”的開發式汽車電子軟件架構研究[D]. 合肥:合肥工業大學,2020.
[7] 童菲,李吉宗. MBSE在汽車電子架構領域的應用研究[J]. 機電一體化,2018,24(2):25-30.
(編輯" 凌" 波)
作者簡介
龐仁勇(1981—),男,工程師,碩士,從事整車電子電氣架構設計開發工作。