我們總說(shuō)汽車(chē)軟件(jiàn)不(bù€≈←)同于互聯網軟件(jiàn),要(yào)區(qū)别對(duì)待,也(yě)有(yǒu)很(hěn)多(duō)說(shuō)法,比如(rú):
- 汽車(chē)軟件(jiàn)的(de)實時(shí γ)性要(yào)求更高(gāo)
- 汽車(chē)軟€¥•♥件(jiàn)的(de)安全性要(yào)求更高(gāo)
- 汽車(chē)軟件(jiàn)與硬件(jiànββσ)耦合度更高(gāo)
- 汽車(chē)軟γ≤∏♥件(jiàn)所用(yòng)編程語言不(bù)同
- 汽車(chē)軟件(jiàn)操作(zuò)系<$統不(bù)同
- 汽車(chē)☆∏✔軟件(jiàn)的(de)開(kāi)發環境與工(gōng)具鏈不(bù)同☆₽
......
這(zhè)些(xi©®"λē)都(dōu)沒錯(cuò),但(dàn)又(yòu)不(bù)'≈→₹怎麽對(duì)。
一(yī)£≥≈•來(lái)是(shì),在座艙、智駕、後台軟件(jiàn)大(dà)舉進入以及電(diàn)子(zǐ)電≤$λ(diàn)氣架構不(bù)斷演化(huà)後,汽車(chē)軟件(jiàn)的 ✔≥ (de)內(nèi)涵已經有(yǒu)了(le)比較大(dà)的(de)擴展。™Ω
二來(lái)呢(ne),這(zhè)些(xiē)ε£都(dōu)屬于技(jì)術(shù)特性,技(jì)術(shù)差異點♠σ♣隻能(néng)說(shuō)明(míng)汽車(chē)的(de)“軟↓λ件(jiàn)”和(hé)互聯網的(de)“軟件(jiàn)”,而非“汽ε™ 車(chē)軟件(jiàn)”與“互聯網軟件(jiàn)”。
λ$我們希望能(néng)從(cóng)整體(tǐ)的(de)角度 ☆∞來(lái)看(kàn)汽車(chē)軟件(jiàn),這(zhè)就(j₩'♥≈iù)引出了(le)今天的(de)話(huà)題——集成,它也(yě)是(shì)汽車(chē)軟件(jiàn)獨特性的(de)核心體(tǐ)現(xiàn)。
具體(tǐ)來(lái)看(kàn),集成可(kě)以分(f∞ ēn)為(wèi)以下(xià)5個(gè)層次:
-÷★ 将軟件(jiàn)單元集成到(dào)一(y↓©ī)起
- 将軟件(jiàn€∏₩)集成到(dào)硬件(jiàn)上(shàng)
- 将硬件(jiànβ∑σ")集成到(dào)機(jī)械殼體(tǐ)上(s$↓hàng)
- 将ECU集成到(dào)子(zǐ±"φ)系統中
- 将子(zǐ)系統集成到(dào)整車(ch±π↔ē)上(shàng)
1 第一(yī)層:将軟件(jiàn)單元集成到(dào)一(yī)起
當我們講軟件(j€₹iàn)集成時(shí),軟件(jiàn)自(zì)身(&¶♥shēn)的(de)集成是(shì)其最典型和(hé)最狹義的(de)含→→♥義。
簡單說(shuō),軟件(jiàn)集成就(jiù)是(shì)将經過驗證的(de)軟件(jiàn)單元集成為(wèi)完¶↓★整軟件(jiàn),操作(zuò)層面的(de)表現(xiàn)為(wè≤♦♣i)将不(bù)同的(de).c或.h文(wén)件(jiàn)以及一(yī)些∏≈↓(xiē)config文(wén)件(jiàn)通(tōng)過集成工(gōng)具集成構建成軟件(jiàn)包。
當然,由于實€÷≥際項目的(de)複雜(zá)性,集成會(huì)作(zuò)為(wèi)整個(gè)軟件(jiàn )項目管理(lǐ)鏈條的(de)一(yī)個(gè)環節。
第一(yī),開(kāi)發工(gōng)程師(shī)接受ALM工(gōng)作(zuò)流工(gōng)具上(shàng∏¶)的(de)缺陷、變更或任務等的(de)驅動,進行(xíng)本地(dì)代碼的(de)修改,之後将代碼push到(dào)代碼倉庫,把代碼備好(hǎo)。
第二,集成工(gōng)程師(shī)也(yě)最好(hǎo)通(tōng₩±)過工(gōng)作(zuò)流工(gōn↑©g)具接受集成任務,任務中要(yào)明(míng)确集成的(de)分(fēn) ♦ε支策略、交付目的(de)、時(shí)間(jiān)計(jì)劃、各單元信息等,而後基于£∑這(zhè)些(xiē)輸入要(yào)完成軟件(jiàn)的(de)構建。
第三,集成工(gōng)程師(shī)自(zì)然也(yě)需要(yào)對(duì)&自(zì)身(shēn)工(gōng)作(zuò)質量做(≠♣ ↑zuò)一(yī)個(gè)确認,所以要(yào)完成靜(jìng)态或動态集成測試,相(xiàng)關結果可(kě)能(néng)會(huì)包括編譯器(qì)的(de)警告信息、代碼掃描結果、∞®資源消耗數(shù)據、堆棧分(fēn)析£α×β內(nèi)容、代碼評審及冒煙(yān)測試情況等。
第四,集成工(gōng)程師(shī)将包括可(kě)執行(x₽✘íng)文(wén)件(jiàn)、測試報(bào)告、配置信息、問(w↓ èn)題清單、releasenotes 等一(yπγī)系列必要(yào)材料打包對(duì)外(wài)發布。
2 第二層:将軟件(jiàn)集成到(dào)硬件(& &₩jiàn)上(shàng)
↑• 當完整的(de)軟件(jiàn)包就(jiù)緒後,我們需要(yà ♥o)将軟件(jiàn)集成到(dào)硬件(jiàn)上(shàng),準确來(lái)說(shuō)是(shì)将軟件(jiàn)刷寫到(dào)MCUδ"等芯片裡(lǐ)。
理(lǐ)論上(shàng)講,集成都(dōu)是(shì)通(tōng)過接口來(lái)完成♠的(de),軟硬件(jiàn)集成也(yě)就(jiù)是(shì)通(tōng)過軟硬件(jiàn)接口來(lái)進行(xíng),具體(tǐ)表現(xiàn)就(jiù)是(s∞ε hì)物(wù)理(lǐ)的(de)芯片引腳和(hé)邏輯的(de)傳輸數(shù)據的(de)軟件(jiàn)接口,具體(tǐ)方法如(rú)下(xià):
- 常規的(de)産線或打樣室刷新的(de)方式基本是(shì)通(tōng)過芯片引腳直接燒錄
- 如(rú)果硬件(jiàn)已經裝在車(chē)上(shàng♥₹)了(le),就(jiù)可(kě)以通(tōng)過OBD或USB口刷新
&÷€nbsp;- 非現(xiàn)場(chǎng)則可(kě)以通(tōng'£)過遠(yuǎn)程OTA刷新
另外(wài∞πα),如(rú)果開(kāi)發過程比較理(lǐ)想,這(zhè)些(xiē)接口應該在系統架構的(de)部✘↑分(fēn)進行(xíng)過定義。
3 第三層:将硬件(jiàn)集成到(dào)機(jī ×∑)械殼體(tǐ)上(shàng)
γ•∑ 到(dào)這(zhè)裡(lǐ),我們會(h×←uì)得(de)到(dào)一(yī)塊有(yǒu)軟件(jiàn)λ"的(de)電(diàn)路(lù)闆。
進一÷$(yī)步地(dì),還(hái)需要(yào)電(diàn)路(lù)闆與機(jī)械外(wài)殼、接插件(§$↕jiàn)、屏幕等的(de)集成,隻不(bù)過這(zhè)步集成更多(duō)有(yǒu)著(zhe)機(jī§©©)械裝配的(de)意味,落在現(xiàn)實工(gōng)作(zuò)裡δ↓≤(lǐ)就(jiù)是(shì)打一(yī)批樣件(jiàn)了(le),結♣•果就(jiù)是(shì)形成我們所說(shuō)的(de)ECU或者控制(zhì)模塊。
由于汽車(chē)電(diàn)®∏→β子(zǐ)需要(yào)面臨各類複雜(zá)嚴苛的(de)駕駛環境,所以這(zhè)部分★•(fēn)仍然對(duì)軟件(jiàn)功能(néng)的(de)發揮有(yǒu)很(hěn)大∏≠(dà)影(yǐng)響,很(hěn)典型的(de)例子(zǐ)™↔↓是(shì)內(nèi)部傳感器(qì)對(duì)安裝₹←環境有(yǒu)模态和(hé)尺寸要(yào)求。
4 第四層:将ECU集成到(dào)子(zǐ)系統中
ECU至少(shǎo)需要(yào)和(h£©é)一(yī)套傳感器(qì)及一(yī)套執行(xíng)器(qì)一(yī)起構成一÷₹(yī)套具備特定功能(néng)的(de)系統,我們姑且稱之為Ω'↕(wèi)子(zǐ)系統,比如(rú),驅動系統、刹車(chē)£≥系統、轉向系統、被動安全系統、照(zhào)明(mínλσg)系統、輔助駕駛系統等。
對±₩$φ(duì)于這(zhè)個(gè)層級的(de)集成,操★"φ作(zuò)上(shàng)就(jiù)是(shì)通(tōng)過線束連接ECU、傳感器(qì<™)、執行(xíng)器(qì)這(zhè)三者★,并且将ECU固定在整車(chē)上(shàng)。後兩者通(tōng)常來♣× (lái)源于不(bù)同組織,所以特定集成的(de)意義就(jiù)更明(mín"λ≥₹g)确。
至于集成效果,是(shì)需要( <♦©yào)通(tōng)過在整車(chē)環境中完成布置确認、模态分(fēn)析、傳感信号校(xiàε o)驗、電(diàn)子(zǐ)對(duì)手件(jiàn)聯調、子(zǐ)₹≥系統功能(néng)确認、産線确認以及EMC、振動、沖擊、水(shuǐ)淋、鹽霧、高(gāo)低 ✘∞★(dī)溫等一(yī)系列的(de)考驗的(de) '®∞。
&n÷♦≤bsp;對(duì)于軟件(jiàn)來(lái)說(shuō)©™★¶,尤其要(yào)考慮對(duì)手件(jiàn)聯調,越來(lái)越多(du•↕ō)的(de)電(diàn)子(zǐ)功能(néng)♠¥ 需要(yào)多(duō)模塊協同,最常見(j$≈♦↕iàn)的(de)診斷、通(tōng)信問(wèn)題就(jiù)是(shì>λ)該環節頻(pín)繁識别出來(lái)<•↓的(de)。
另外(wài),很(hěn)多ε♣α(duō)在子(zǐ)系統性能(néng)也(yě)是(shì)需要(yào)在整車(ch$βΩ✘ē)環境下(xià)進行(xíng)軟件(jiàn)标定匹配的(de)。
5 第五層:将子(zǐ)系統集成到(dào)整車(chē)上(shàng)
傳統汽車(chē)的(de)各個(δ¥gè)子(zǐ)系統或者域通(tōng)常是(shì)分 ♣(fēn)離(lí)的(de),相(xiàng)互之間(jiān)大(dà)體(tǐ)隔絕,所以涉π↑"€及到(dào)的(de)是(shì)裝配,而非集成這(zhè)個(gè)概念。
但(dàn)是(shì),電(diàn)子(zǐ)電(diàn)氣架構在不(bù)斷走向跨子(zǐ)系統、≤♣≠♠跨域、域融合、中央集中,現(xiàn)在車(chē≈®)輛(liàng)子(zǐ)系統之間(jiān)的(de)邊界越來(lái)越模糊,越來(lái)§π↔✔越多(duō)的(de)功能(néng)特性需要(yào✔✔)聚焦在更整車(chē)、更終端才能(néng)得(de)到(dào)驗證與确認±≤λ↑。
6 寫在最後
整體(tǐ)來(lái)說(shuō),在汽車(chē)行(xíng)業(yè)裡(lǐ)做(zuò)軟件••>(jiàn),要(yào)意識到(dào),所有(yǒu)的(d↕♣e)代碼其實都(dōu)是(shì)最終服務于整車(chē)&™ 裡(lǐ)的(de)表現(xiàn)。
另外δ•&↔(wài)一(yī)點,汽車(chē)的(de)多(duō)層次集成其實是(shì)有(yǒu)曆©×↕史原因的(de),主要(yào)是(shì)來(lá±≈i)源于汽車(chē)零部件(jiàn)全球模塊化(huà)分(fēn)工(g←♣δōng)及采購(gòu)這(zhè)種模式。
這(zhè)種分(fēn)工≠☆(gōng)與标準化(huà)的(de)好(hǎo)處不(bù)言自(✔←zì)明(míng),但(dàn)也(yě)增加了(le)很(hěn)多(duō)集成<<點,集成點多(duō)了(le)就(jiù)會(huì)造成溝通 '€(tōng)協調複雜(zá)或者解決方案整合困難等弊端,而這(zhè)也(yě)是(shì)我₩γ™們做(zuò)汽車(chē)軟件(jiàn)要(yào)充分(f÷↓←ēn)考量的(de)。
往長(chán β↕©g)遠(yuǎn)看(kàn),我們現(xiàn'λ)在從(cóng)架構層面追求的(de)中央化(≤$huà)正在不(bù)斷地(dì)減少(shǎo)集÷₩成點,同樣也(yě)就(jiù)會(huì)弱化ε↔(huà)集成的(de)價值與必要(yào)性。
轉自(zì)汽車(chē)電(diàn)子(zǐ)與軟件(jiàn)