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