







【摘 "要】隨著商用車電動化、智能化、網聯化和共享化的發展,電子電氣架構的設計變得愈發重要,傳統的E/E架構從軟件迭代能力、架構復雜度、算力和數據傳輸等方面已無法滿足商用車的發展。本文基于域控架構和SOA架構,結合商用車自動駕駛的應用場景,提出商用車域控架構下SOA的實現方案,從而精簡車輛控制器的布局,減輕車輛的電器零部件總質量,擴充整車數據交互容量,降低各個模塊間的耦合度,并且使得功能的擴展更容易。
【關鍵詞】商用車;域控架構;SOA架構
中圖分類號:463.6 " " " " 文獻標志碼:A " " " " "文章編號:1003-8639(2023)
Initial Analysis on SOA Implementation Solution of Commercial Vehicle Domain Control Architecture
Xie Xiang-dong,Zhang Jian-feng,Du Xiao-bo,Xu Wei,Liu Da-wei,Li Chun-li
(Shaanxi Automobile Group Co.,Ltd.,Xi’an 710005,China)
【Abstract】With the development of electrification,intelligence,networking and public sharing of commercial vehicles,the design of electronic and electrical architecture (EEA)becomes increasingly important. The traditional EEA has been unable to meet the development of commercial vehicles in terms of software iteration capability,architecture complexity,computing power and data transmission. Based on the domain control architecture and SOA architecture,combined with the application scenario of commercial vehicle autonomous driving,this paper proposes an implementation scheme of SOA under the commercial vehicle domain control architecture,so as to simplify the layout of vehicle controllers,reduce the total weight of electrical components of vehicles,expand the vehicle data interaction capacity,reduce the coupling between various modules,and make the expansion of functions easier.
【Key words】Commercial Vehicle; Domain Control Architecture; SOA Architecture
作者簡介:謝祥東,男,工程師,主要從事整車電子電器EE架構工作。
收稿日期:2022-10-21
1 "前言
隨著乘用車自動駕駛技術研究以及應用的深入,商用車領域也掀起了自動駕駛技術應用浪潮。得益于商用車在港口、礦山、機場等封閉場景廣泛應用,自動駕駛技術也快速地在商用車上使用。由于自動駕駛所需要的算力及數據量的爆發式增長,傳統的E/E架構已經很難滿足需求,而域控架構方案可以很好地滿足控制器算力及數據量的巨大需求。同時,隨著軟硬件技術的發展,面向服務的體系架構(Service-Oriented Architecture,簡稱SOA)為商用車E/E架構開發指明了新的方向。 基于此技術,車輛通過搭載基于SOA設計的通用域控制器,使得車輛具有更好的可擴展性、良好的平臺化功能、靈活的功能配置和更高的智能化水平。本文基于域控架構和SOA架構,結合商用車的應用場景,提出商用車的域控架構下SOA的實現方案。
2 "SOA架構及域控架構
2.1 "SOA架構
SOA的核心概念是服務,每個服務組件具備獨立的功能。服務組件之間的接口遵循統一的標準,可互相訪問,可組合擴展,其最大的優點是松耦合和跨平臺[1]。SOA架構下,軟件系統通過定義了利用服務接口復用的軟件組件的方法,通過通用通信標準應用到新的應用程序中。
2.1.1 "參與者
SOA架構中包含3種參與者,分別是:服務提供者、服務消費者、服務注冊中心,如圖1所示。
1)服務消費者:使用服務消費者提供的一組或者多組服務的組件。
2)服務提供者:是一個可提供通過網絡尋址的實體,接受和執行來自使用者的請求。
3)服務注冊中心:儲備服務描述,服務提供者注冊其服務,服務消費者訪問其中已經發現的所提供的服務。
圖1 "SOA架構圖
2.1.2 "基本操作
SOA架構中的消費者和服務提供者要交互,需通過3種基本操作來完成。
1)發布:為了使服務可訪問,需要服務提供者發布服務描述以使服務消費者可以發現它。
2)查找:服務消費者定位服務,方法是查詢服務注冊中心里所注冊的服務,找到滿足其要求的服務。
3)綁定:在服務消費者查找到服務描述之后,服務使用者根據服務描述中的信息來調用服務[2]。
2.2 "域控架構
域控架構是將整車電器系統根據功能劃分為若干個大的功能塊,如圖2所示,每個功能塊的屬性統一,且與其他功能塊功能耦合度低。功能塊采用一個算力強大的多核中央計算機代替以往的多個分布式ECU,主要處理邏輯運算及指令下發。域系統內部的傳感器、執行器、節點等采用硬線、CAN、LIN總線連接。而不同域之間的通信,由更高傳輸性能和更大容量的以太網作為主干網絡承擔信息交換任務。目前較為經典的功能域可以劃分為5個主要域:動力、底盤、車身、座艙和駕駛輔助[3]。
圖2 "域控架構示意圖
3 "商用車域控架構下SOA的分析
3.1 "傳統EEA與基于SOA的域控EEA對比
商用車傳統的E/E架構中大量的功能需要ECU、信號間的協調來實現,所以整車中ECU間基于信號的通信會變得龐大而復雜,且不具低耦合性,微小的功能變動都會引起整車通信矩陣的變化。傳統E/E架構中消息發送者不關心接收節點,只負責將信號發送出去,這種技術適用于有限大小控制數據的應用場景。
SOA代碼靈活性強,支持請求/響應模式,支持復雜的數據模型,可擴展性強,能夠滿足自動駕駛等應用場景下,大量數據的動態交互,可以對系統進行部分更新。
如圖3所示,當多媒體控制需要增加一項控制空調的功能時,需要同時變更控制對象(多媒體屏)、網關、被控對象(空調)整個邏輯鏈路上的所有節點。
圖3 "基于CAN信號通信的功能變更
SOA引入到商用車軟件設計中后,整車功能被設計為各種不同的服務組件,每個服務都有自身唯一的標識,可以完成自身發布以及訂閱其他服務并進行通信。由此可以很好地解決上面整個邏輯鏈上的接點都要變更的問題。
如圖4所示,當多媒體控制需要增加一項控制空調的功能時,只需要變更服務消費端的節點,邏輯鏈上的其他節點不需用變更。
圖4 "基于SOA通信的功能變更
3.2 "整車功能服務設計流程
根據商用車域控架構的特點,結合軟件SOA思想,將域控制器的軟件按照重用性和自主性面向服務原則進行設計,對整車功能軟件開發設計。良好的服務設計,使得整車功能增加,或原有功能發生變更時,保證了較少的軟件變更,從而實現更快速高效的功能迭代和清晰明確的版本管理。
EEA工程師根據整車需求清單先提取出整車功能清單和整車配置,然后設計出整車子系統需求規范和整車子系統設計方案。根據零部件和功能分配完成整車域控架構設計,當域控架構設計完成后,根據域控制器、總線節點、執行器、傳感器等對功能進行服務化設計。服務設計時,必須基于整車規劃和發展考慮,將整車基本功能、選配功能、未來可能搭載的功能、容易更新的功能等整車需求納入服務設計中,按照車載以太網協議要求對各個服務的相關參數進行定義。最后軟件工程師按照功能邏輯、服務結構、通信參數等對域控器、總線節點、傳感器等電器件進行軟硬件設計,完成整車功能的實現,如圖5所示。
圖5 "整車功能實現流程
3.3 "商用車域控架構下SOA的設計
得益于域控架構的優勢,許多功能的邏輯實現都可以由單一域控制器實現,使得不同域之間的功能耦合度降低,這使得SOA思想可以更好地與其貼合。其次,SOA是面向服務的架構,通過標準的服務接口,使得單個功能的實現可以通過一個固定的服務接口暴露給其余需用的組件。最后,結合以算力強大的“域控制器”為中心的集中化物理架構,使得需要通過通信交互的控制器得到有效控制。簡化了整車物理結構的同時也簡化了整車通信結構,使得車輛功能的擴展性更強,、靈活性更高。例如,某個功能已經設計為服務后,該功能的實現只在自身所在的域控制器里實現。當該服務需要更新時,只需服務接口不變,其余調用該服務的域控制器均不會受到影響。如圖6所示。
圖6 "基于域控架構下SOA的設計
3.4 "商用車域控架構下SOA的實現
運用SOA思想后,將整車功能基于信號交互的方式優化為基于服務交互。從整車功能和域控制器功能出發,將其分解或者合并為單個服務,單個服務只注重實現單一功能,并保證各個服務之間相互獨立,耦合度最低。域控制器平臺可搭載 AP中間件,可以直接使用AUTOSAR 組織提供的公共標準的接口,軟件不再需要為不同操作系統的不同接口做適配和變更。不同域控制器之間的通信以車載以太網進行數據傳輸,對每個服務的類型、功能、數據結構等信息按照車載以太網的協議要求設計,高帶寬的通信能力,讓 SOA 軟件的跨域合作成為可能。功能的服務化使得各個域之間的信息交互及功能調用更加簡單和直接。服務設計和部署完成后,通過對不同服務的調用來實現整車設計的功能。如圖7所示。
圖7 "整車域控架構
例如,按照整車功能開發流程,提取出車身域控制器所要開發的服務。如圖8所示,車身域控制器分別提供了空調服務、門鎖服務。其中空調服務由自動空調開啟關閉控制、空調狀態反饋等基礎服務組成;門鎖服務由車門解閉鎖控制等服務組成。同時這些服務的消費者分別分布在中央網關、座艙域控制器、云端等主體。服務中間件解耦了服務接收方和發送方,并與服務接收、發送方一起,實現服務的注冊,、訂閱,、提供和查找功能。AP 提供了基于 ARXML 的標準接口描述規范,服務提供者與服務消費者共同標準約定的描述文檔進行服務內容的交互。
圖8 "車身域控制器服務布置架構
車身域控制器提供的所有服務應按照SOME/IP協議將服務消息進行設定。完成后會進行服務接口的開發,服務接口的開發和部署是SOA軟件的第一步并且是關鍵的一步,主要包括:服務的類型定義、端口設置、進程綁定。接口開發完成就是邏輯開發、邏輯和服務集成、代碼編譯。
車輛上電后,各個域控制器會分別向注冊中心提供自身所提供的所有服務,其他域控制器會將自己所需要的服務進行標記。服務消費者通過對注冊中心的查詢,提取出該服務的所有通信信息,并根據服務特性及自身需求,調用服務或者周期性建立交互。
從這個簡單的例子可以窺探出商用車域控架構下SOA的設計實現過程,體現出軟件SOA架構與域控架構結合后的優勢。
4 "結束語
在本文中,提出了一個靈活、動態、面向服務的商用車域控架構方案。該方法的目的是提供一個具有良好可擴展和動態的框架,為商用車電器架構開發、軟件開發、功能開發等提供一定借鑒意義。
參考文獻:
[1]劉佳熙,施思明,徐振敏,等. 面向服務架構汽車軟件的開發方法和實踐[J]. 中國集成電路,2021(1):82-88.
[2]朱平. 基于SOA的應用系統的設計與實現[D]. 北京:北京交通大學,2006.
[3]趙光輝,丁萬興. 淺析域控制器開發在商用車架構中的設置與應用[J]. 電子世界,2020(22):2.
(編輯 "楊凱麟)