隨著商用車電動化、智能化、網(wǎng)聯(lián)化和共享化的發(fā)展,電子電氣架構(gòu)的設(shè)計變得愈發(fā)重要,傳統(tǒng)的E/E 架構(gòu)從軟件迭代能力、架構(gòu)復(fù)雜度、算力和數(shù)據(jù)傳輸?shù)确矫嬉褵o法滿足商用車的發(fā)展。本文基于域控架構(gòu)和SOA架構(gòu),結(jié)合商用車自動駕駛的應(yīng)用場景,提出商用車域控架構(gòu)下SOA的實現(xiàn)方案,從而精簡車輛控制器的布局,減輕車輛的電器零部件總質(zhì)量,擴(kuò)充整車數(shù)據(jù)交互容量,降低各個模塊間的耦合度,并且使得功能的擴(kuò)展更容易。
1 前言
隨著乘用車自動駕駛技術(shù)研究以及應(yīng)用的深入,商用車領(lǐng)域也掀起了自動駕駛技術(shù)應(yīng)用浪潮。得益于商用車在港口、礦山、機(jī)場等封閉場景廣泛應(yīng)用,自動駕駛技術(shù)也快速地在商用車上使用。由于自動駕駛所需要的算力及數(shù)據(jù)量的爆發(fā)式增長,傳統(tǒng)的E/E架構(gòu)已經(jīng)很難滿足需求,而域控架構(gòu)方案可以很好地滿足控制器算力及數(shù)據(jù)量的巨大需求。同時,隨著軟硬件技術(shù)的發(fā)展,面向服務(wù)的體系架構(gòu)(Service-Oriented Architecture,簡稱SOA) 為商用車E/E架構(gòu)開發(fā)指明了新的方向。基于此技術(shù),車輛通過搭載基于SOA設(shè)計的通用域控制器,使得車輛具有更好的可擴(kuò)展性、良好的平臺化功能、靈活的功能配置和更高的智能化水平。本文基于域控架構(gòu)和SOA架構(gòu),結(jié)合商用車的應(yīng)用場景,提出商用車的域控架構(gòu)下SOA的實現(xiàn)方案。
2 SOA架構(gòu)及域控架構(gòu)
2.1 SOA架構(gòu)
SOA的核心概念是服務(wù),每個服務(wù)組件具備獨立的功能。服務(wù)組件之間的接口遵循統(tǒng)一的標(biāo)準(zhǔn),可互相訪問,可組合擴(kuò)展,其最大的優(yōu)點是松耦合和跨平臺。SOA架構(gòu)下,軟件系統(tǒng)通過定義了利用服務(wù)接口復(fù)用的軟件組件的方法,通過通用通信標(biāo)準(zhǔn)應(yīng)用到新的應(yīng)用程序中。
2.1.1 參與者
SOA架構(gòu)中包含3種參與者,分別是:服務(wù)提供者、服務(wù)消費者、服務(wù)注冊中心,如圖1所示。

圖1 SOA架構(gòu)圖
1) 服務(wù)消費者:使用服務(wù)消費者提供的一組或者多組服務(wù)的組件。
2) 服務(wù)提供者:是一個可提供通過網(wǎng)絡(luò)尋址的實體,接受和執(zhí)行來自使用者的請求。
3) 服務(wù)注冊中心:儲備服務(wù)描述,服務(wù)提供者注冊其服務(wù),服務(wù)消費者訪問其中已經(jīng)發(fā)現(xiàn)的所提供的服務(wù)。
2.1.2 基本操作
SOA架構(gòu)中的消費者和服務(wù)提供者要交互,需通過3種基本操作來完成。
1) 發(fā)布:為了使服務(wù)可訪問,需要服務(wù)提供者發(fā)布服務(wù)描述以使服務(wù)消費者可以發(fā)現(xiàn)它。
2) 查找:服務(wù)消費者定位服務(wù),方法是查詢服務(wù)注冊中心里所注冊的服務(wù),找到滿足其要求的服務(wù)。
3) 綁定:在服務(wù)消費者查找到服務(wù)描述之后,服務(wù)使用者根據(jù)服務(wù)描述中的信息來調(diào)用服務(wù)。
2.2 域控架構(gòu)
域控架構(gòu)是將整車電器系統(tǒng)根據(jù)功能劃分為若干個大的功能塊,如圖2所示,每個功能塊的屬性統(tǒng)一,且與其他功能塊功能耦合度低。功能塊采用一個算力強(qiáng)大的多核中央計算機(jī)代替以往的多個分布式ECU,主要處理邏輯運(yùn)算及指令下發(fā)。域系統(tǒng)內(nèi)部的傳感器、執(zhí)行器、節(jié)點等采用硬線、CAN、LIN總線連接。而不同域之間的通信,由更高傳輸性能和更大容量的以太網(wǎng)作為主干網(wǎng)絡(luò)承擔(dān)信息交換任務(wù)。目前較為經(jīng)典的功能域可以劃分為5個主要域:動力、底盤、車身、座艙和駕駛輔助。

圖2 域控架構(gòu)示意圖
3 商用車域控架構(gòu)下SOA的分析
3.1 傳統(tǒng)EEA與基于SOA的域控EEA對比
商用車傳統(tǒng)的E/E架構(gòu)中大量的功能需要ECU、信號間的協(xié)調(diào)來實現(xiàn),所以整車中ECU間基于信號的通信會變得龐大而復(fù)雜,且不具低耦合性,微小的功能變動都會引起整車通信矩陣的變化。傳統(tǒng)E/E架構(gòu)中消息發(fā)送者不關(guān)心接收節(jié)點,只負(fù)責(zé)將信號發(fā)送出去,這種技術(shù)適用于有限大小控制數(shù)據(jù)的應(yīng)用場景。
SOA代碼靈活性強(qiáng),支持請求/響應(yīng)模式,支持復(fù)雜的數(shù)據(jù)模型,可擴(kuò)展性強(qiáng),能夠滿足自動駕駛等應(yīng)用場景下,大量數(shù)據(jù)的動態(tài)交互,可以對系統(tǒng)進(jìn)行部分更新。
如圖3所示,當(dāng)多媒體控制需要增加一項控制空調(diào)的功能時,需要同時變更控制對象(多媒體屏)、網(wǎng)關(guān)、被控對象(空調(diào))?整個邏輯鏈路上的所有節(jié)點。

圖3 基于CAN信號通信的功能變更
SOA引入到商用車軟件設(shè)計中后,整車功能被設(shè)計為各種不同的服務(wù)組件,每個服務(wù)都有自身唯一的標(biāo)識,可以完成自身發(fā)布以及訂閱其他服務(wù)并進(jìn)行通信。由此可以很好地解決上面整個邏輯鏈上的接點都要變更的問題。
如圖4所示,當(dāng)多媒體控制需要增加一項控制空調(diào)的功能時,只需要變更服務(wù)消費端的節(jié)點,邏輯鏈上的其他節(jié)點不需用變更。

圖4 基于SOA通信的功能變更
3.2 整車功能服務(wù)設(shè)計流程
根據(jù)商用車域控架構(gòu)的特點,結(jié)合軟件SOA思想,將域控制器的軟件按照重用性和自主性面向服務(wù)原則進(jìn)行設(shè)計,對整車功能軟件開發(fā)設(shè)計。良好的服務(wù)設(shè)計,使得整車功能增加,或原有功能發(fā)生變更時,保證了較少的軟件變更,從而實現(xiàn)更快速高效的功能迭代和清晰明確的版本管理。
EEA工程師根據(jù)整車需求清單先提取出整車功能清單和整車配置,然后設(shè)計出整車子系統(tǒng)需求規(guī)范和整車子系統(tǒng)設(shè)計方案。根據(jù)零部件和功能分配完成整車域控架構(gòu)設(shè)計,當(dāng)域控架構(gòu)設(shè)計完成后,根據(jù)域控制器、總線節(jié)點、執(zhí)行器、傳感器等對功能進(jìn)行服務(wù)化設(shè)計。服務(wù)設(shè)計時,必須基于整車規(guī)劃和發(fā)展考慮,將整車基本功能、選配功能、未來可能搭載的功能、容易更新的功能等整車需求納入服務(wù)設(shè)計中,按照車載以太網(wǎng)協(xié)議要求對各個服務(wù)的相關(guān)參數(shù)進(jìn)行定義。最后軟件工程師按照功能邏輯、服務(wù)結(jié)構(gòu)、通信參數(shù)等對域控器、總線節(jié)點、傳感器等電器件進(jìn)行軟硬件設(shè)計,完成整車功能的實現(xiàn),如圖5所示。

圖5 整車功能實現(xiàn)流程
3.3 商用車域控架構(gòu)下SOA的設(shè)計
得益于域控架構(gòu)的優(yōu)勢,許多功能的邏輯實現(xiàn)都可以由單一域控制器實現(xiàn),使得不同域之間的功能耦合度降低,這使得SOA思想可以更好地與其貼合。其次,SOA是面向服務(wù)的架構(gòu),通過標(biāo)準(zhǔn)的服務(wù)接口,使得單個功能的實現(xiàn)可以通過一個固定的服務(wù)接口暴露給其余需用的組件。最后,結(jié)合以算力強(qiáng)大的“域控制器”為中心的集中化物理架構(gòu),使得需要通過通信交互的控制器得到有效的控制。簡化了整車物理結(jié)構(gòu)的同時也簡化了整車通信結(jié)構(gòu),使得車輛功能的擴(kuò)展性更強(qiáng)、靈活性更高。例如,某個功能已經(jīng)設(shè)計為服務(wù)后,該功能的實現(xiàn)只在自身所在的域控制器里實現(xiàn)。當(dāng)該服務(wù)需要更新時,只需服務(wù)接口不變,其余調(diào)用該服務(wù)的域控制器均不會受到影響。如圖6所示。

圖6 基于域控架構(gòu)下SOA的設(shè)計
3.4 商用車域控架構(gòu)下SOA的實現(xiàn)
運(yùn)用SOA思想后,將整車功能基于信號交互的方式優(yōu)化為基于服務(wù)交互。從整車功能和域控制器功能出發(fā),將其分解或者合并為單個服務(wù),單個服務(wù)只注重實現(xiàn)單一功能,并保證各個服務(wù)之間相互獨立,耦合度最低。域控制器平臺可搭載AP中間件,可以直接使用AUTOSAR組織提供的公共標(biāo)準(zhǔn)的接口,軟件不再需要為不同操作系統(tǒng)的不同接口做適配和變更。不同域控制器之間的通信以車載以太網(wǎng)進(jìn)行數(shù)據(jù)傳輸,對每個服務(wù)的類型、功能、數(shù)據(jù)結(jié)構(gòu)等信息按照車載以太網(wǎng)的協(xié)議要求設(shè)計,高帶寬的通信能力,讓SOA軟件的跨域合作成為可能。功能的服務(wù)化使得各個域之間的信息交互及功能調(diào)用更加簡單和直接。
服務(wù)設(shè)計和部署完成后,通過對不同服務(wù)的調(diào)用來實現(xiàn)整車設(shè)計的功能。如圖7所示。例如,按照整車功能開發(fā)流程,提取出車身域控制器所要開發(fā)的服務(wù)。如圖8所示,車身域控制器分別提供了空調(diào)服務(wù)、門鎖服務(wù)。其中空調(diào)服務(wù)由自動空調(diào)開啟關(guān)閉控制、空調(diào)狀態(tài)反饋等基礎(chǔ)服務(wù)組成;門鎖服務(wù)由車門解閉鎖控制等服務(wù)組成。同時這些服務(wù)的消費者分別分布在中央網(wǎng)關(guān)、座艙域控制器、云端等主體。服務(wù)中間件解耦了服務(wù)接收方和發(fā)送方,并與服務(wù)接收、發(fā)送方一起,實現(xiàn)服務(wù)的注冊、訂閱、提供和查找功能。AP提供了基于ARXML的標(biāo)準(zhǔn)接口描述規(guī)范,服務(wù)提供者與服務(wù)消費者共同標(biāo)準(zhǔn)約定的描述文檔進(jìn)行服務(wù)內(nèi)容的交互。

圖7 整車域控架構(gòu)

圖8 車身域控制器服務(wù)布置架構(gòu)
車身域控制器提供的所有服務(wù)應(yīng)按照SOME/IP協(xié)議將服務(wù)消息進(jìn)行設(shè)定。完成后會進(jìn)行服務(wù)接口的開發(fā),服務(wù)接口的開發(fā)和部署是SOA軟件的第一步并且是關(guān)鍵的一步,主要包括:服務(wù)的類型定義、端口設(shè)置、進(jìn)程綁定。接口開發(fā)完成就是邏輯開發(fā)、邏輯和服務(wù)集成、代碼編譯。
車輛上電后,各個域控制器會分別向注冊中心提供自身所提供的所有服務(wù),其他域控制器會將自己所需要的服務(wù)進(jìn)行標(biāo)記。服務(wù)消費者通過對注冊中心的查詢,提取出該服務(wù)的所有通信信息,并根據(jù)服務(wù)特性及自身需求,調(diào)用服務(wù)或者周期性建立交互。
從這個簡單的例子可以窺探出商用車域控架構(gòu)下SOA的設(shè)計實現(xiàn)過程,體現(xiàn)出軟件SOA架構(gòu)與域控架構(gòu)結(jié)合后的優(yōu)勢。
4 結(jié)束語
在本文中,提出了一個靈活、動態(tài)、面向服務(wù)的商用車域控架構(gòu)方案。該方法的目的是提供一個具有良好可擴(kuò)展和動態(tài)的框架,為商用車電器架構(gòu)開發(fā)、軟件開發(fā)、功能開發(fā)等提供一定借鑒意義。
編輯:黃飛
?
電子發(fā)燒友App





























評論