歡迎來到培訓(xùn)無憂網(wǎng)!
咨詢熱線 400-001-5729
2022-01-09 10:18:19|已瀏覽:99次
Aspice作為車載軟件過程中,關(guān)注于功能場(chǎng)景定義(function definition)、架構(gòu)定義(System Architecture)、系統(tǒng)設(shè)計(jì)(System Design)、產(chǎn)品設(shè)計(jì)(Product Design)幾個(gè)大的方面。而下一代智能駕駛系統(tǒng)需要面向服務(wù)進(jìn)行相應(yīng)的功能設(shè)計(jì)和開發(fā),實(shí)現(xiàn)軟硬件解耦。這種開發(fā)方式將對(duì)整個(gè)智能駕駛來說產(chǎn)生顛覆性的影響,比如高性能計(jì)算平臺(tái)HPC包含多核異構(gòu)處理模式,通過Hypervisor技術(shù)實(shí)現(xiàn)對(duì)硬件抽象,Inter-Core通信技術(shù)使多篇和單片多核實(shí)現(xiàn)信息互通,計(jì)算單元趨于“云計(jì)算+中央計(jì)算+邊緣計(jì)算結(jié)合等多個(gè)方面的變革。如上這些設(shè)計(jì)原則更多的是基于SOA的架構(gòu)進(jìn)行的,這就大大增強(qiáng)了平臺(tái)的可拓展性,可移植性。
當(dāng)前更多的主機(jī)廠選擇在智能駕駛中采用SOA的開發(fā)模式,這可以更加快速的實(shí)現(xiàn)從底層、中間層到應(yīng)用層的軟件開發(fā),且相對(duì)較多的軟件只要接口定義得當(dāng),就可以實(shí)現(xiàn)軟件本體和功能的遷移,同時(shí)可以大大的降低開發(fā)周期和成本。
對(duì)于SOA的設(shè)計(jì)過程來講,其服務(wù)設(shè)計(jì)原則包括重用、抽象、封裝、協(xié)調(diào)在內(nèi)的多個(gè)層面。比如對(duì)于智能駕駛功能開發(fā)而言,如果需要多次用到某一邏輯元素比如車道線等環(huán)境信息,則應(yīng)該將車道線檢測(cè)模塊創(chuàng)建為重用(比如封裝到Building Block中),則對(duì)該車道線檢測(cè)源(如不同方位的攝像頭)進(jìn)行調(diào)整,則由此對(duì)車道線檢測(cè)產(chǎn)生的任何更新改變都會(huì)對(duì)后續(xù)級(jí)聯(lián)的應(yīng)用實(shí)例產(chǎn)生影響。而上層應(yīng)用軟件端對(duì)于底層的如何獲取車道線,如何處理的細(xì)節(jié)也不需要深究,這就是實(shí)現(xiàn)模塊抽象的整個(gè)過程。抽象后的邏輯功能需要保證其體系相類似的功能需要集成到一起,比如自動(dòng)換道功能的控制邏輯可以在自動(dòng)激活后調(diào)用觸發(fā)換道相關(guān)的規(guī)劃控制模塊進(jìn)行車控。因此,觸發(fā)換道的規(guī)劃決策控制邏輯單元可以完全應(yīng)用于自動(dòng)換道模塊。系統(tǒng)工程師只需要保證定義的接口適用于觸發(fā)換道已經(jīng)發(fā)布或預(yù)定的數(shù)據(jù)流即可。對(duì)于自動(dòng)駕駛域控單元負(fù)責(zé)人而言,應(yīng)該保持邏輯系統(tǒng)結(jié)構(gòu)之間的協(xié)調(diào)和重用,包含對(duì)公共池中的元素排布,對(duì)局部域單元中的邏輯構(gòu)造,跨域之間的資源或模塊調(diào)度等。
本文將以智能駕駛系統(tǒng)開發(fā)設(shè)計(jì)實(shí)例來講解和分析相應(yīng)的SOA為基礎(chǔ)下的架構(gòu)設(shè)計(jì)和軟件開發(fā)。
面向ASPICE流程的SOA軟件架構(gòu)流程
適用于SOA架構(gòu)的ASPICE軟件開發(fā)過程也是在敏捷開發(fā)的模式下進(jìn)行的系統(tǒng)開發(fā)流程。從智能駕駛功能開發(fā)層面上講,基于SOA架構(gòu)開發(fā)模式包括了系統(tǒng)功能、系統(tǒng)架構(gòu)、軟件功能、軟件架構(gòu)幾個(gè)方面。其中分別由分別稱之為產(chǎn)品負(fù)責(zé)人Product Owner、功能負(fù)責(zé)人Function Owner、架構(gòu)負(fù)責(zé)人Architect Owner、子模塊負(fù)責(zé)人Module Owner的幾個(gè)角色共同承擔(dān)。功能設(shè)計(jì)是搭建功能架構(gòu)圖和依據(jù)產(chǎn)品工程師輸入的產(chǎn)品需求定義進(jìn)行功能分解定義,架構(gòu)負(fù)責(zé)人則根據(jù)整車架構(gòu)及功能負(fù)責(zé)人輸入的要素信息制定合適的軟硬件架構(gòu)。這里需要說明的是很多情況下,功能負(fù)責(zé)人和架構(gòu)負(fù)責(zé)人往往是同一個(gè)人。模塊負(fù)責(zé)人則是根據(jù)功能定義編制相應(yīng)的系統(tǒng)軟硬件模塊、零部件軟硬件模塊以實(shí)現(xiàn)上層定義的功能需求。各負(fù)責(zé)人之間的角色定位將在如下分層流程圖中進(jìn)行詳細(xì)說明。這里我們僅關(guān)注V模型中的與SOA相關(guān)度較高的設(shè)計(jì)開發(fā)部分,測(cè)試驗(yàn)證部分不在本文中進(jìn)行詳述。其中,各階段的開發(fā)輸出功能過程如下:
1、項(xiàng)目功能定義
項(xiàng)目功能元素(function element)包含與頂層設(shè)計(jì)相關(guān)的不同屬性,例如車輛類型、預(yù)期市場(chǎng)、項(xiàng)目功能以及功能發(fā)布計(jì)劃等。在實(shí)際開發(fā)中,這類輸出一般是產(chǎn)品策劃部門或市場(chǎng)部輸出的整車功能開發(fā)需求或整車裝備需求。本文將以開發(fā)智能駕駛系統(tǒng)功能中的點(diǎn)對(duì)點(diǎn)自動(dòng)駕駛NOP為例進(jìn)行詳細(xì)的分析說明基于SOA的架構(gòu)設(shè)計(jì)是如何應(yīng)用于自動(dòng)駕駛系統(tǒng)開發(fā)的。基于SOA架構(gòu)模型設(shè)計(jì)分工
基于SOA軟件模型架構(gòu)的設(shè)計(jì)過程實(shí)際是在研究如何在開發(fā)流程中進(jìn)行軟硬件解耦。包括構(gòu)建不同的分層來隔離硬件與軟件功能和服務(wù)。例如,將自動(dòng)駕駛相關(guān)的傳感器和執(zhí)行器邏輯與應(yīng)用程序邏輯分開,則能夠在中央系統(tǒng)中分配應(yīng)用程序,同時(shí)保持傳感器/執(zhí)行器盡可能的具體。程序之間可以利用SOA的服務(wù)模式實(shí)現(xiàn)軟件包的調(diào)用,傳感器和執(zhí)行器也可以作為組件或模組來進(jìn)行邊緣采購(gòu),性能則是集中管控,中央系統(tǒng)可以將戰(zhàn)略軟件進(jìn)行分開,這就更容易進(jìn)行軟件模塊移植和處理。這一過程實(shí)際就是在提高上層應(yīng)用層軟件關(guān)鍵功能的復(fù)用性,瞄準(zhǔn)軟硬件功能與邏輯控制分離。這里需要說明的是,軟硬件之間的協(xié)調(diào)和調(diào)度是通過中間件來實(shí)現(xiàn)。SOA服務(wù)實(shí)現(xiàn)過程
隨著車載以太網(wǎng)技術(shù)的日益成熟,國(guó)內(nèi)大部分OEM都已經(jīng)著手SOA的設(shè)計(jì)工作,并將以太網(wǎng)通信矩陣生成ARXML文件,用于項(xiàng)目前期的網(wǎng)絡(luò)行為仿真和后期測(cè)試驗(yàn)證。對(duì)于已經(jīng)完成架構(gòu)搭建的SOA來講,需要將其建模后的成品導(dǎo)入到軟件團(tuán)隊(duì)進(jìn)行服務(wù)實(shí)現(xiàn)。其過程包含:以Some/Ip協(xié)議導(dǎo)入Service ARXML,導(dǎo)入后新增ETH、TCP/IP、Some/IP模塊(BSW工程),建立與Service Handler SWC(應(yīng)用層)中Port Interface連接,為所有Service Handler SWC增加可運(yùn)行時(shí)間,定義Windows Service Handler SWC 和Feature SWC到Simulink/Stateflow。通過符合Autosar的ARXML和Simulink進(jìn)行交互,將由軟件開發(fā)工程師繼續(xù)進(jìn)行算法設(shè)計(jì)并自動(dòng)生成代碼。總 結(jié)
本文從SOA軟件架構(gòu)模型的構(gòu)建角度出發(fā)講解了相應(yīng)實(shí)現(xiàn)過程原理,利用了基于模型、集成式的可視化開發(fā)工具PREEvision進(jìn)行了智能汽車行業(yè)及相關(guān)領(lǐng)域E/E架構(gòu)開發(fā)并支持以太網(wǎng)SOA的架構(gòu)開發(fā)設(shè)計(jì),本文以介紹SOA架構(gòu)設(shè)計(jì)模型為基礎(chǔ)展示了如何在Enterprise Architect中進(jìn)行SOA建模。同時(shí),以系統(tǒng)工程師的角度說明如何利用Enterprise Architect構(gòu)建SOA系統(tǒng)及軟件架構(gòu)設(shè)計(jì)、功能設(shè)計(jì)Function Design 和模塊設(shè)計(jì)Module Design。對(duì)于SOA在整個(gè)智能駕駛系統(tǒng)設(shè)計(jì)原理有個(gè)清晰的把控。
本文由培訓(xùn)無憂網(wǎng)長(zhǎng)沙牛耳教育課程顧問老師整理發(fā)布,希望能夠?qū)ο朐陂L(zhǎng)沙參加影視動(dòng)漫培訓(xùn)的學(xué)生有所幫助。更多課程信息可關(guān)注培訓(xùn)無憂網(wǎng)電腦IT培訓(xùn)頻道或添加老師微信:15033336050
注:尊重原創(chuàng)文章,轉(zhuǎn)載請(qǐng)注明出處和鏈接 http://m.universityresearchassociates.com/news-id-13950.html 違者必究!部分文章來源于網(wǎng)絡(luò)由培訓(xùn)無憂網(wǎng)編輯部人員整理發(fā)布,內(nèi)容真實(shí)性請(qǐng)自行核實(shí)或聯(lián)系我們,了解更多相關(guān)資訊請(qǐng)關(guān)注程序開發(fā)頻道查看更多,了解相關(guān)專業(yè)課程信息您可在線咨詢也可免費(fèi)申請(qǐng)?jiān)囌n。關(guān)注官方微信了解更多:150 3333 6050