易特馳全棧中間件助力從概念到量產(chǎn)
如何在這些既要又要的需求中,選擇一個(gè)合適的技術(shù)路徑一直是各家車企的的核心能力。完成一個(gè)車輛應(yīng)用的開(kāi)發(fā)就像寫(xiě)一個(gè)手機(jī)應(yīng)用一樣簡(jiǎn)單成為了理想中的終極目標(biāo)。
在這個(gè)目標(biāo)的驅(qū)使下,選擇一款功能強(qiáng)大的中間件至關(guān)重要。
總的來(lái)說(shuō)中間件要解決以下主要問(wèn)題:
1.為應(yīng)用層提供穩(wěn)定的SOA架構(gòu)API
應(yīng)用層開(kāi)發(fā)者能像手機(jī)APP一樣調(diào)用標(biāo)準(zhǔn)的API和服務(wù)框架接口,即使產(chǎn)品換代了也不需要關(guān)心他們是否立馬不能用。這就是SOA的能力,為實(shí)現(xiàn)跨域融合等中央計(jì)算平臺(tái)的發(fā)展,高性能SoC產(chǎn)品和中央集中式E/E架構(gòu)是實(shí)現(xiàn)跨域融合的硬件基礎(chǔ),而面向服務(wù)的軟件架構(gòu)(SOA)則是實(shí)現(xiàn)跨域融合的軟件基礎(chǔ)。
在汽車軟件的領(lǐng)域,最佳實(shí)現(xiàn)跨域融合的方式是面向服務(wù)的架構(gòu)(Service-oriented Architecture, SOA)。SOA是一種軟件設(shè)計(jì)方法,其中軟件組件被設(shè)計(jì)為獨(dú)立的服務(wù),可以通過(guò)網(wǎng)絡(luò)進(jìn)行通信和交互。在汽車軟件中,SOA的應(yīng)用可以將各種車輛系統(tǒng),如發(fā)動(dòng)機(jī)管理系統(tǒng)、制動(dòng)系統(tǒng)和娛樂(lè)系統(tǒng)等,分解為獨(dú)立的服務(wù)組件,使得這些組件可以更加靈活地進(jìn)行組合和配置,以滿足不同車型和市場(chǎng)的需求。SOA可以提高汽車軟件的可靠性、可維護(hù)性和可擴(kuò)展性,使得汽車制造商可以更加容易地開(kāi)發(fā)和維護(hù)各種汽車系統(tǒng)。
SOA有助于提高汽車軟件的開(kāi)發(fā)效率和質(zhì)量,通過(guò)整合已有的軟件模塊,可以避免重復(fù)開(kāi)發(fā)和測(cè)試,同時(shí)可以減少軟件集成帶來(lái)的問(wèn)題和風(fēng)險(xiǎn),提高軟件的可靠性和安全性。
值得注意的是,傳統(tǒng)汽車軟件開(kāi)發(fā)的中間性工具鏈并不會(huì)被取代,剎車、轉(zhuǎn)向、防爆、車身穩(wěn)定控制等傳統(tǒng)車控軟件是由單一ECU控制,并不適用于SOA架構(gòu),未來(lái)仍會(huì)通過(guò)基于模型仿真和嵌入式的傳統(tǒng)汽車軟件開(kāi)發(fā)方式進(jìn)行開(kāi)發(fā)。但是由于未來(lái)新型的車用軟件需具備跨域能力,因此無(wú)法按照傳統(tǒng)單一ECU的開(kāi)發(fā)方式去開(kāi)發(fā),必須采用SOA架構(gòu)。
2.高效的調(diào)用下層車輛信號(hào)
目前大部分車型還是使用CAN的協(xié)議,怎么把中間件框架與CAN協(xié)議連起來(lái)也會(huì)遇到復(fù)雜的問(wèn)題,也就是DBC信號(hào)映射的難題。
DBC信號(hào)示意圖
DBC信號(hào)映射生成的痛點(diǎn)分析:
1. 編寫(xiě)DBC與API映射關(guān)系低效繁瑣
在現(xiàn)代汽車工程領(lǐng)域,數(shù)據(jù)總線通信(DBC)文件扮演著至關(guān)重要的角色。這些文件定義了車載網(wǎng)絡(luò)中各種信號(hào)的屬性,為整個(gè)系統(tǒng)的正常運(yùn)行提供了基礎(chǔ)支撐,行業(yè)內(nèi)已經(jīng)有成熟的工具來(lái)編輯生成DBC。然而,對(duì)于大多數(shù)工程師來(lái)說(shuō),編寫(xiě)與上層API的映射關(guān)系無(wú)疑是一項(xiàng)繁瑣且令人頭疼的任務(wù),因?yàn)樯蠈覣PI的定義是基于車企內(nèi)部的要求定制的,用到的相關(guān)工具鏈也是內(nèi)部自研的。
編寫(xiě)映射關(guān)系無(wú)疑是一個(gè)痛苦的過(guò)程。工程師需要仔細(xì)推敲每個(gè)信號(hào)定義的格式和內(nèi)容,如同在茫茫大海中尋找一根針般感到無(wú)助和挫敗。即使完成了這項(xiàng)艱巨的任務(wù),接下來(lái)還需要小心翼翼地檢查每一個(gè)細(xì)節(jié),生怕犯一些低級(jí)錯(cuò)誤。這就像是一個(gè)永無(wú)止境的噩夢(mèng),讓人感覺(jué)自己就像是一名專業(yè)的"MS文員"。不僅浪費(fèi)了寶貴的工程師時(shí)間和精力,也大大增加了項(xiàng)目的開(kāi)發(fā)成本。每個(gè)細(xì)微的失誤都可能造成嚴(yán)重的后果,使整個(gè)車載網(wǎng)絡(luò)系統(tǒng)陷入癱瘓。因此,迫切需要一種更加高效和可靠的映射關(guān)系生成方式,以減輕工程師的負(fù)擔(dān),提高整個(gè)車載網(wǎng)絡(luò)系統(tǒng)的開(kāi)發(fā)效率。
自動(dòng)化工具,算法以及校驗(yàn)正確性功能無(wú)疑是一個(gè)很好的解決方案。通過(guò)采用這種方式,工程師可以擺脫半人工編寫(xiě)映射關(guān)系的痛苦,專注于更有價(jià)值的工程任務(wù)。只有這樣,我們才能真正提升車載網(wǎng)絡(luò)系統(tǒng)的開(kāi)發(fā)效率,推動(dòng)汽車工程技術(shù)的不斷進(jìn)步。
2. DBC信號(hào)映射關(guān)系缺乏可視化
雖然DBC自身的工具鏈已經(jīng)很成熟,但業(yè)界普遍缺乏可視化的DBC映射關(guān)系分析工具。開(kāi)發(fā)者只能依靠文字描述來(lái)推測(cè)理解各個(gè)信號(hào)和API的定義,就好比讓一個(gè)連螞蟻都捉不住的人去抓野兔一樣,完全是癡人說(shuō)夢(mèng)。筆者曾經(jīng)花費(fèi)大量時(shí)間才搞清楚一個(gè)DBC文件和對(duì)應(yīng)的上層API接口,結(jié)果第二天就又忘記了大部分內(nèi)容,效率之低下令人發(fā)指。
然而,對(duì)于汽車電子領(lǐng)域的開(kāi)發(fā)者來(lái)說(shuō),能否迅速理解和操作DBC以及API,往往直接決定著項(xiàng)目的進(jìn)度和質(zhì)量。若能借助可視化工具,將這些繁瑣的配置信息直觀地呈現(xiàn)出來(lái),必將大大提升開(kāi)發(fā)人員的工作效率。比如,運(yùn)用漂亮的圖表展示各個(gè)信號(hào)的數(shù)據(jù)特性以及對(duì)應(yīng)API的變化,或者提供一個(gè)直觀的關(guān)系編輯器,讓開(kāi)發(fā)者可以輕松地修改和調(diào)試這些關(guān)系,無(wú)疑會(huì)大幅緩解當(dāng)前映射關(guān)系操作的困境。
3. DBC信號(hào)映射關(guān)系的版本管理困難
在實(shí)際應(yīng)用中,映射關(guān)系的版本管理存在諸多問(wèn)題,需要知道最終生成的文件是由哪個(gè)版本的DBC,API版本,映射規(guī)則版本以及最終三者經(jīng)過(guò)處理后的產(chǎn)出物的版本等。由于缺乏統(tǒng)一的版本控制機(jī)制,當(dāng)需要追溯之前的文件變更情況時(shí),常常會(huì)陷入"大海撈針"般的困境,難以找到準(zhǔn)確的歷史記錄。這無(wú)疑給后續(xù)的系統(tǒng)集成和故障診斷帶來(lái)了很多不便。
當(dāng)前,汽車行業(yè)正處于一個(gè)關(guān)鍵的轉(zhuǎn)折點(diǎn)。隨著電動(dòng)化、自動(dòng)駕駛和連接服務(wù)的發(fā)展,車載軟件正變得愈發(fā)復(fù)雜和關(guān)鍵。傳統(tǒng)的軟件開(kāi)發(fā)模式已經(jīng)難以滿足日新月異的市場(chǎng)需求,迫切需要尋找全新的解決方案。ETAS公司正是對(duì)這一趨勢(shì)高度重視,并在不同領(lǐng)域進(jìn)行了積極的探索與實(shí)踐。值得關(guān)注的是,他們?cè)贓clipse開(kāi)源社區(qū)推出了幾個(gè)重要的項(xiàng)目,試圖從根本上改變汽車軟件開(kāi)發(fā)的范式。
首先是Velocitas項(xiàng)目,這是一款基于高級(jí)語(yǔ)言的應(yīng)用層開(kāi)發(fā)框架。它旨在簡(jiǎn)化復(fù)雜的軟件構(gòu)建過(guò)程,使開(kāi)發(fā)人員能夠更加高效地創(chuàng)建車載應(yīng)用程序。通過(guò)Velocitas,工程師可以擺脫底層硬件和操作系統(tǒng)的限制,專注于業(yè)務(wù)邏輯的實(shí)現(xiàn),大大提高了開(kāi)發(fā)效率。
其次是Kuksa項(xiàng)目,這是一個(gè)符合VSS國(guó)際標(biāo)準(zhǔn)的車輛模型描述規(guī)則。Kuksa建立了一套完整的車輛數(shù)據(jù)模型,涵蓋了從底層硬件到高層應(yīng)用的各個(gè)方面。利用這個(gè)統(tǒng)一的數(shù)據(jù)模型,不同的軟件組件可以更好地進(jìn)行集成和協(xié)作,極大地減少了系統(tǒng)復(fù)雜性。
最后,Leda項(xiàng)目更是令人興奮。這是一個(gè)能夠?qū)崿F(xiàn)"一鍵部署"的解決方案,可以將開(kāi)發(fā)好的軟件快速部署到真實(shí)車輛和仿真平臺(tái)上。有了Leda,工程師再也不必為復(fù)雜的交叉編譯、打包等問(wèn)題而煩惱,大大提高了軟件驗(yàn)證的效率。而且,Leda項(xiàng)目團(tuán)隊(duì)還在不斷升級(jí)完善,相信不久后就會(huì)有更多令人期待的新功能。
ETAS公司在Eclipse開(kāi)源社區(qū)推出的這些項(xiàng)目,無(wú)疑為未來(lái)汽車軟件開(kāi)發(fā)帶來(lái)了新的希望。Velocitas、Kuksa和Leda三大項(xiàng)目分別從應(yīng)用開(kāi)發(fā)、數(shù)據(jù)建模和自動(dòng)化部署等關(guān)鍵環(huán)節(jié)進(jìn)行了創(chuàng)新,為解決行業(yè)痛點(diǎn)提供了有力的支撐。
-
中間件
+關(guān)注
關(guān)注
0文章
65瀏覽量
18376 -
SOA
+關(guān)注
關(guān)注
1文章
299瀏覽量
27937 -
汽車軟件
+關(guān)注
關(guān)注
1文章
115瀏覽量
3386
原文標(biāo)題:易特馳全棧中間件助力從概念到量產(chǎn)
文章出處:【微信號(hào):ETASChina,微信公眾號(hào):ETAS易特馳】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
中間件思想在嵌入式GIS設(shè)計(jì)中的應(yīng)用
中間件思想在嵌入式GIS 設(shè)計(jì)中的應(yīng)用
支持多服務(wù)的消息中間件設(shè)計(jì)與實(shí)現(xiàn)
基于JMS的RFID中間件設(shè)計(jì)與實(shí)現(xiàn)
NGB中間件標(biāo)準(zhǔn)考慮因素

基于ARM平臺(tái)的RFID中間件系統(tǒng)設(shè)計(jì)
常見(jiàn)的中間件有哪些?匯總解析
RFID系統(tǒng)中間件平臺(tái)架構(gòu)研究
物聯(lián)網(wǎng)軟件系統(tǒng)中的RFID中間件介紹

RFID中間件是什么東西
基于SOA的RFID中間件如何來(lái)設(shè)計(jì)

UM1713_如何應(yīng)用stm32cube的中間件LwIP_TCP、IP協(xié)議棧

評(píng)論