【連載二】基於PREEvision的智能網聯EE架構開發
在上一篇中我們聊到基於PREEvision強大的電子電氣架構開發和評估功能,為整車廠搭建強大的架構開發和評估平台,實現邊開發邊模擬的理想開發方式。接下來和大家分享下基於Ethernet的SOA設計。
智能網聯汽車,其核心是車輛的環境感知、決策控制、人機交互和車聯網等功能域,同時也包含了傳統汽車的功能如信息娛樂域、車身域和動力域。智能網聯汽車需要強大的環境感知能力、信息處理能力和實時決策與控制能力把智能交通、地圖、定位、通訊、雲、大數據等進行系統集成,故車輛與雲端、車輛與車輛之間、車輛內部的各個ECU之間通信的速率和數據量都將比傳統汽車高出幾個數量級。這些需要由多種複雜的硬體、軟體和高速通信匯流排共同實現,並將在很大程度上決定智能車輛的功能實現的可擴展性和性能的可靠性。
車載Ethernet能夠很好的解決大數據量的信息交互,而基於AVB的下一代協議TSN(時間敏感網路)也將提供非常優秀的實時性。因此未來的智能網聯汽車上的主幹網路將會被Ethernet完全替代。
乙太網的架構設計過程中,採用面向服務的架構設計(service-oriented architecture),簡稱為SOA架構設計。
1.1.1 SOA架構設計理念
區別於傳統CAN匯流排面向信號的設計思路,在乙太網設計過程中,開發人員需要在邏輯層面將功能抽象為服務(service)的方式進行架構設計。
乙太網SOA設計,需要開發人員明確4個問題:
Who (Provider) provides What (Service) to Whom(Consumer) and How(Service Interface)
通常情況下,可以使用UML進行需求分析,確認
SOA架構開發的優勢:
- 減少了服務使用的複雜性
- 服務的高度可重用性和靈活性
- 降低了軟體開發成本
1.1.2 SOA架構開發流程
SOA架構開發採用典型的EEA架構開發的流程進行,如下圖:
主要分為6部分內容:
- 服務定義:定義服務及相關屬性
- 軟體設計:基於AUTOSAR標準設計實現服務的軟體模塊和連接關係
- 硬體設計:設計實現服務的硬體模塊和連接關係
- 服務部署:服務分配,將軟體模塊分配到對應的硬體模塊
- 信號路由:定義乙太網通信關係及參數
- 參數詳細定義:VLAN Definition、MAC地址、IP地址、UDP/TCP
區別於傳統匯流排(CAN/LIN),在軟體架構設計過程中,開發人員需要設計具體的服務類型、服務ID、服務使用的數據類型、服務的角色等。定義實現不同的服務角色時對應的不同軟體類型,定義相應的軟體類型包括其介面以及介面分配的Interface。
1.1.3 SOA設計模擬
SOA架構設計完成後可以通過一些現有的開發工具如PREEvision,將其生成ARXML文件。區別於傳統CAN/CANFD/LIN匯流排的DBC和LDF等數據文件,ARXML包含了SOA架構設計所有相關的服務及相關屬性以及服務的軟硬體實現方式,必將是未來乙太網匯流排開發的通用標準數據介面。該文件可以載入到模擬工具如CANoe,進行乙太網通信的模擬。如下示例所示:
通過系統模擬,開發者可以在乙太網架構設計前期階段就對網路進行評估,確認定義的服務是否能夠滿足當前功能的要求。
那麼如何更高效,更便捷的進行電子電氣架構開發將是擺在所有架構工程師面前的重要課題,如何更好的利用PREEvision進行電子電氣架構設計,我們將在後續的文章中針對實際項目開發過程中的難點和要點展開說明,敬請期待!
推薦閱讀: