嵌入式技術(shù)與整車(chē)網(wǎng)絡(luò)系統(tǒng)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
一、引言
隨著市場(chǎng)需求和電子技術(shù)的發(fā)展,整車(chē)電氣系統(tǒng)經(jīng)歷著電器化、電子化和網(wǎng)絡(luò)化三個(gè)階段性發(fā)展。嵌入式技術(shù)影響在電子化階段開(kāi)始體現(xiàn),并在網(wǎng)絡(luò)化階段進(jìn)一步凸現(xiàn)。作為自主產(chǎn)業(yè),直接面對(duì)電子化、網(wǎng)絡(luò)化發(fā)展階段重疊的局面,一方面存在缺乏積累、基礎(chǔ)薄弱等挑戰(zhàn),另一方面也存在輕裝上陣、少走彎路的后發(fā)優(yōu)勢(shì)。因此,如何更好地將嵌入式技術(shù)與整車(chē)電氣系統(tǒng)開(kāi)發(fā)相融合,已經(jīng)成為自主產(chǎn)業(yè)技術(shù)路線的關(guān)鍵問(wèn)題。
二、概述
整車(chē)網(wǎng)絡(luò)是指將多個(gè)具有一定獨(dú)立工作能力的汽車(chē)電子系統(tǒng)通過(guò)總線實(shí)現(xiàn)資源共享和數(shù)據(jù)通信的分布式實(shí)時(shí)嵌入系統(tǒng)。由此定義可見(jiàn),整車(chē)網(wǎng)絡(luò)以總線整合汽車(chē)電子系統(tǒng)的形式存在,但本質(zhì)仍然是由軟硬件構(gòu)成的嵌入式系統(tǒng)。隨著軟件在系統(tǒng)實(shí)現(xiàn)中占據(jù)日益主導(dǎo)的地位,整車(chē)網(wǎng)絡(luò)的開(kāi)發(fā)過(guò)程也來(lái)越接近典型的V模式軟件開(kāi)發(fā)過(guò)程,如圖1所示。
整個(gè)開(kāi)發(fā)過(guò)程可被分為系統(tǒng)開(kāi)發(fā)和零部件實(shí)施兩個(gè)應(yīng)用層面,其中貫穿著算法設(shè)計(jì)、軟件工程等基礎(chǔ)技術(shù)。由于種種原因,自主汽車(chē)電子產(chǎn)業(yè)存在著重零部件輕系統(tǒng)、重應(yīng)用輕基礎(chǔ)的問(wèn)題。需要指出的,基礎(chǔ)技術(shù)涉及的建模、仿真、軟件構(gòu)架等均來(lái)源于主流的嵌入式技術(shù)體系,并不固定從屬于系統(tǒng)開(kāi)發(fā)或零部件實(shí)施的具體領(lǐng)域。因此,基礎(chǔ)技術(shù)也是系統(tǒng)開(kāi)發(fā)的必要前提。在系統(tǒng)開(kāi)發(fā)過(guò)程中,應(yīng)用相應(yīng)的基礎(chǔ)技術(shù),結(jié)合上游用戶(hù)需求與下游零部件實(shí)施約束,才能完成嵌入式系統(tǒng)的集成設(shè)計(jì)與驗(yàn)證。其中,工作內(nèi)容可分為架構(gòu)、總線和診斷的設(shè)計(jì)及驗(yàn)證。
三、架構(gòu)開(kāi)發(fā)
架構(gòu)設(shè)計(jì)是借助工程方法,通過(guò)工程需求的捕捉,合理分配系統(tǒng)功能,最終完成網(wǎng)絡(luò)系統(tǒng)的結(jié)構(gòu)設(shè)計(jì)。需要指出的是,工程方法是每個(gè)整車(chē)企業(yè)根據(jù)自身產(chǎn)品電氣系統(tǒng)的競(jìng)爭(zhēng)策略,基于相符合的理論方法,結(jié)合自身的開(kāi)發(fā)配套體系,經(jīng)過(guò)長(zhǎng)期工程實(shí)踐建立的。不同整車(chē)企業(yè)甚至同一企業(yè)不同平臺(tái)的工程方法是不同的,作為結(jié)果的架構(gòu)更是千差萬(wàn)別。因此,照搬系統(tǒng)架構(gòu)甚至工程方法的做法是無(wú)法獲得合格架構(gòu)的。
架構(gòu)開(kāi)發(fā)容易與總線開(kāi)發(fā)混淆。雖然同屬系統(tǒng)層面開(kāi)發(fā),前者基于而高于后者。在架構(gòu)設(shè)計(jì)中,總線僅是最主要的信息交互方式,其特點(diǎn)必須在設(shè)計(jì)過(guò)程中合理運(yùn)用。反之,高性能、高質(zhì)量的總線也有效增加了架構(gòu)的靈活性、復(fù)雜性。
3.1工程需求捕捉(圖2)
從用戶(hù)角度,工程需求不同于常見(jiàn)的市場(chǎng)需求:后者主要從市場(chǎng)用戶(hù)出發(fā),關(guān)注的是網(wǎng)絡(luò)系統(tǒng)的外在使用價(jià)值而不是具體的構(gòu)架、技術(shù)和零部件;除此之外,整車(chē)壽命周期內(nèi)還有開(kāi)發(fā)工程師、制造工程師、售后工程師等內(nèi)部用戶(hù)的需求。上述諸多用戶(hù)的需求同時(shí)也包含約束,例如法規(guī)、標(biāo)準(zhǔn)、成本、質(zhì)量、工程策略等等。從時(shí)間角度上。上述需求在項(xiàng)目周期中不同程度地動(dòng)態(tài)變化。因此,將所面臨的諸多用戶(hù)提出的變化的需求轉(zhuǎn)化為統(tǒng)一的工程需求,是架構(gòu)開(kāi)發(fā)的起點(diǎn),也體現(xiàn)了面向需求的設(shè)計(jì)理念。
工程功能(圖3)作為工程需求的基本載體,貫穿著整個(gè)開(kāi)發(fā)過(guò)程。由于不同整車(chē)的需求差異,對(duì)工程功能的具體劃分不盡相同。一般而言,工程功能被分為用戶(hù)工程功能和非用戶(hù)工程功能:前者會(huì)被用戶(hù)直接感受到,例如燈光;后者不會(huì)被用戶(hù)直接感受到,一般是前者的支撐,例如總線喚醒,通常也被稱(chēng)為系統(tǒng)功能。對(duì)于每個(gè)工程功能的需求,也分為功能性需求和非功能性需求:前者主要定義不同狀態(tài)下輸入輸出等外在行為邏輯,通常是可復(fù)用在不同車(chē)型上,即實(shí)現(xiàn)功能性DNA,又減少了需求風(fēng)險(xiǎn),也為相關(guān)應(yīng)用軟件復(fù)用提供了前提;后者包含了其他非功能性需求,如關(guān)鍵資源要求、成本,往往因車(chē)型而異。
對(duì)需求的捕捉中,需求的驗(yàn)證是重要環(huán)節(jié)之一。上述需求數(shù)量浩大甚至相互矛盾,產(chǎn)生的需求風(fēng)險(xiǎn)將嚴(yán)重影響下游的開(kāi)發(fā)。建立系統(tǒng)層面的功能性需求模型,不僅可以解決需求沖突問(wèn)題,也是對(duì)下游功能分配的必要約束。
3.2功能分配(圖4)
對(duì)于嵌入式軟硬件實(shí)現(xiàn)的工程功能,往往需要分布到多個(gè)零部件實(shí)現(xiàn)以滿(mǎn)足工程需求,因此合理的功能分配設(shè)計(jì)尤為關(guān)鍵。從實(shí)現(xiàn)角度而言,需要從邏輯、物理和機(jī)械布置層面進(jìn)行平衡。傳統(tǒng)的做法中功能分配僅被關(guān)注在機(jī)械布置和物理層面,簡(jiǎn)單地進(jìn)行基于物料成本的硬件分配。這種源自電器化階段的做法簡(jiǎn)單直觀,但是忽視邏輯分配會(huì)帶來(lái)響應(yīng)性差、可靠性低等一些列原理問(wèn)題。
邏輯層面的分配,需要在保證關(guān)鍵資源、延遲、供電狀態(tài)、安全等非功能性需求前提下進(jìn)行。例如:某功能的子功能被分配到某控制器,除了需要傳感器/執(zhí)行器等硬件外,控制器能否提供足夠的存儲(chǔ)空間、運(yùn)算能力、供電狀態(tài)也同樣重要;子功能之間可通過(guò)總線、硬線進(jìn)行交連,但是連接方式必須確保功能本身的實(shí)時(shí)性、可靠性。[!--empirenews.page--]3.3架構(gòu)整合
功能分配僅針對(duì)單個(gè)工程功能,而功能與功能、系統(tǒng)與零部件存在的關(guān)聯(lián)和由此產(chǎn)生的沖突。因此,系統(tǒng)層面上針對(duì)功能、零部件的平衡是架構(gòu)整合的基本內(nèi)容。同時(shí)。合格的架構(gòu)不僅必須滿(mǎn)足成本要求,還需要與開(kāi)發(fā)人力、可靠性、技術(shù)風(fēng)險(xiǎn)和可配置性進(jìn)行折中。鑒于架構(gòu)設(shè)計(jì)的復(fù)雜性和平臺(tái)化戰(zhàn)略考慮,通常以架構(gòu)平臺(tái)的形式出現(xiàn)。
作為分布式嵌入式系統(tǒng),網(wǎng)絡(luò)系統(tǒng)的架構(gòu)(圖5)存在著更分布還是更集中的爭(zhēng)議。在更分布式的系統(tǒng)中,諸多功能盡可能按功能分布在不同的控制系統(tǒng)實(shí)現(xiàn),系統(tǒng)的可配置性好、可靠性高但物料成本較高;在更集中的系統(tǒng)中,諸多功能盡可能按區(qū)域分布在同一的控制系統(tǒng)實(shí)現(xiàn),系統(tǒng)的物料成本較低但可配置性差、可靠性低。在實(shí)際工程應(yīng)用中,由于不同整車(chē)系統(tǒng)、不同功能領(lǐng)域的需求差異,更分布和更集中架構(gòu)往往是折中的。架構(gòu)開(kāi)發(fā)常見(jiàn)的輸出是輸出文檔是電氣原理圖、功能分配規(guī)范,并直接作為線束、控制系統(tǒng)和總線開(kāi)發(fā)的設(shè)計(jì)輸入。
四、總線開(kāi)發(fā)
總線是指連接控制器的數(shù)字、雙向傳輸、多分支結(jié)構(gòu)的通信系統(tǒng),通常一條或多條總線和網(wǎng)關(guān)構(gòu)成整車(chē)網(wǎng)絡(luò)。常見(jiàn)的總線如CAN、LIN,以及MOST、FlexRay。
總線可被視為滿(mǎn)足分布式功能需要的用于數(shù)據(jù)交換的非用戶(hù)工程功能,依托節(jié)點(diǎn)的嵌入式軟硬件分布式實(shí)現(xiàn)的。因此,運(yùn)用總線時(shí)必須考慮其資源占用、時(shí)延、可靠性、線束布局等需求;反之,這些也是總線技術(shù)升級(jí)換代的驅(qū)動(dòng)力。通常,總線開(kāi)發(fā)包括物理層、通信層、網(wǎng)絡(luò)管理和網(wǎng)關(guān)四部分內(nèi)容。
4.1物理層(圖6)
物理層指構(gòu)成總線硬件的線束、接插件及板級(jí)收發(fā)電路。作為硬件部分,主要的難點(diǎn)在于設(shè)計(jì)偏差認(rèn)可和一致性保證。前者主要是存在于沿用其他總線設(shè)計(jì)的控制系統(tǒng),硬件的設(shè)計(jì)偏差認(rèn)可與否很大程度上影響了方案最終確定;后者是指批量情況下全壽命周期的性能一致性保證,為避免散差、老化造成的質(zhì)量問(wèn)題,必須在設(shè)計(jì)階段對(duì)性能指標(biāo)進(jìn)行相應(yīng)分配,并通過(guò)耐久試驗(yàn)進(jìn)行測(cè)試與改進(jìn)。
4.2通信層(圖7)
通信層介于物理層和應(yīng)用軟件之間,是通信協(xié)議的主體,主要包含通信策略和信號(hào)配置。
通信策略定義了通信機(jī)制的傳輸模型和時(shí)延模型,本質(zhì)上服務(wù)于功能內(nèi)部的數(shù)據(jù)交換需求,并屬于后者的抽象。例如人機(jī)類(lèi)功能一般屬于開(kāi)環(huán)控制類(lèi),事件觸發(fā)的傳輸模式即可滿(mǎn)足數(shù)據(jù)交換需要,總體時(shí)延要求在200毫秒以上。通信策略不僅可以直接作為通信層軟件開(kāi)發(fā)需求,也是通過(guò)總線進(jìn)行功能分配的重要參考依據(jù)。忽視通信策略的設(shè)計(jì)和驗(yàn)證。容易造成總線負(fù)載高、時(shí)延超差等問(wèn)題,由此引發(fā)的功能失效的代價(jià)極大。一般而言,采用含有成熟通信策略的嵌入式軟件是較保險(xiǎn)的解決方案。
信號(hào)配置是與架構(gòu)設(shè)計(jì)直接相關(guān),也是總線設(shè)計(jì)中最直觀的部分。信號(hào)配置本質(zhì)上是把信號(hào)根據(jù)協(xié)議特性和架構(gòu)需求進(jìn)行組幀的過(guò)程。從邏輯角度,信號(hào)配置必須滿(mǎn)足架構(gòu)中的流向關(guān)系、幀裝載字長(zhǎng)和帶寬等限制;從時(shí)序角度,分配后信號(hào)的傳輸時(shí)延應(yīng)確保滿(mǎn)足功能的總體時(shí)延分配。
4.3網(wǎng)絡(luò)管理
網(wǎng)絡(luò)管理主要完成啟動(dòng)/停止、休眠/喚醒、錯(cuò)誤處理和版本控制等功能。網(wǎng)絡(luò)管理通常包含節(jié)點(diǎn)管理和系統(tǒng)管理(狹義網(wǎng)絡(luò)管理),前者限于節(jié)點(diǎn)本地的通訊管理,后者協(xié)調(diào)節(jié)點(diǎn)間的系統(tǒng)級(jí)行為。
作為解決方案,可以直接引入包含網(wǎng)絡(luò)管理算法的嵌入式軟件,進(jìn)一步定義網(wǎng)絡(luò)管理策略的時(shí)間參數(shù)設(shè)定、網(wǎng)絡(luò)管理底層策略與應(yīng)用層的接口和應(yīng)用層對(duì)網(wǎng)絡(luò)管理的具體需求。需要指出的是,網(wǎng)絡(luò)管理的失效易導(dǎo)致意外的休眠/喚醒,輕者導(dǎo)致相關(guān)功能失效,重者將影響蓄電池電置。
4.4網(wǎng)關(guān)
網(wǎng)關(guān)實(shí)現(xiàn)不同總線的不同類(lèi)型的數(shù)據(jù)交換,不僅包括常見(jiàn)的信號(hào)數(shù)據(jù),還包含喚醒/休眠、啟動(dòng)/停止等管理指令。對(duì)于信號(hào)數(shù)據(jù)的路由組織,基于信號(hào)的方式利于時(shí)延的評(píng)估,而基于幀的方式便于配置的標(biāo)準(zhǔn)化,分別體現(xiàn)了不同的架構(gòu)設(shè)計(jì)理念。
網(wǎng)關(guān)的功能性需求來(lái)源于架構(gòu)設(shè)計(jì),越復(fù)雜越分布,系統(tǒng)的網(wǎng)關(guān)復(fù)雜度越大。從實(shí)現(xiàn)角度,網(wǎng)關(guān)功能增加了系統(tǒng)的可配置性但降低了可靠性,需要在架構(gòu)設(shè)計(jì)中進(jìn)行合理平衡。
五、診斷開(kāi)發(fā)
診斷系統(tǒng)能實(shí)時(shí)監(jiān)控功能運(yùn)行,并通過(guò)總線接口與外部用戶(hù)設(shè)備實(shí)現(xiàn)數(shù)據(jù)交換,滿(mǎn)足法規(guī)、開(kāi)發(fā)、制造、售后甚至信息服務(wù)的需求。從法規(guī)角度,通常排放相關(guān)的診斷內(nèi)容是強(qiáng)制性標(biāo)準(zhǔn)化的.如常見(jiàn)的在線診斷(OBD)。診斷開(kāi)發(fā)的基本內(nèi)容主要包括功能自診斷、診斷管理、通信協(xié)議和配置系統(tǒng)四部分開(kāi)發(fā)內(nèi)容。
5.1功能自診斷(圖9)
任何嵌入式方式實(shí)現(xiàn)均存在軟硬件失效的可能,因此實(shí)時(shí)在線的功能自診斷是必要的保障手段。功能診斷包括面向應(yīng)用功能的自診斷和面向系統(tǒng)功能的自診斷,后者通常是指操作系統(tǒng)、總線等基礎(chǔ)或者內(nèi)核部分。功能自診斷通常針對(duì)對(duì)物理輸入輸出和邏輯輸入輸出,前者通過(guò)相關(guān)電路特性判斷是否存在物理失效,后者對(duì)邏輯信號(hào)的數(shù)值、變化特性進(jìn)行可信度判斷。一經(jīng)判斷出失效,系統(tǒng)將采取缺省值甚至降級(jí)運(yùn)行等處理策略。需要指出的是,功能自診斷的初衷是針對(duì)潛在失效,因此相關(guān)的失效模式分析是其設(shè)計(jì)來(lái)源
[!--empirenews.page--]5.2診斷管理
診斷管理的主要內(nèi)容是故障管理。系統(tǒng)運(yùn)行期間,功能自診斷因?yàn)殡S機(jī)失效會(huì)產(chǎn)生相當(dāng)數(shù)量的故障指示,不加處理容易造成虛警;對(duì)于正常的故障診斷,故障信息存儲(chǔ)也容易受到非易失性存儲(chǔ)資源的限制。故障管理將處理本地所有功能自診斷的故障指示,根據(jù)故障特性進(jìn)行“識(shí)別-確認(rèn)-退出”的過(guò)程管理;存在多個(gè)故障時(shí)進(jìn)行類(lèi)似堆棧的處理,保證高優(yōu)先級(jí)故障信息的存儲(chǔ);根據(jù)診斷協(xié)議的指令輸出或清空故障信息。
5.3診斷通信
區(qū)別于總線的在線通信,診斷通信被稱(chēng)為離線通信,蓋因其非常在線特點(diǎn)。其服務(wù)層為診斷功能提供國(guó)際通用和自定義兩種診斷服務(wù)支持。診斷服務(wù)層為上層屏蔽具體通信特征,使其只考慮功能應(yīng)用方面。每條診斷服務(wù)作為控制器功能的觸發(fā)條件或入口點(diǎn)。診斷服務(wù)層提供診斷服務(wù)(service)的軟件實(shí)施效率是保證控制器能夠及時(shí)響應(yīng)外部診斷診斷請(qǐng)求的重要因素之一。其會(huì)話層控制器與診斷工具之間的通信使能,打開(kāi)或斷開(kāi)雙方的通信。當(dāng)診斷工具與控制器間的應(yīng)用服務(wù)無(wú)法維持時(shí)關(guān)閉這些服務(wù)。將所有服務(wù)功能分布到合適session中,滿(mǎn)足診斷功能分級(jí)是該設(shè)計(jì)目的。其傳輸層設(shè)計(jì)實(shí)現(xiàn)塊數(shù)據(jù)的傳遞功能,為大數(shù)據(jù)量的傳遞提供通信通道。此外還需定義傳輸層與上、下層之間的軟件接口,優(yōu)化匹配參數(shù)。除診斷數(shù)據(jù)外,應(yīng)用功能也存在塊數(shù)據(jù)傳輸需求(例如曲目名稱(chēng)),因此傳輸層也面向應(yīng)用軟件。其物理層將定義其相應(yīng)的具體總線協(xié)議的初始化,如診斷數(shù)據(jù)幀標(biāo)識(shí)符ID分配,還包括一些特殊硬件操作,如診斷工具接入步驟。
5.4 配置系統(tǒng)(圖10)
基于市場(chǎng)、工程等多方面需要,整車(chē)網(wǎng)絡(luò)存在大量的通過(guò)診斷進(jìn)行的信息配置。以中級(jí)車(chē)為例,整車(chē)配置信息多達(dá)上百條、數(shù)十千比特。在項(xiàng)目的不同階段,對(duì)上述配置進(jìn)行正確無(wú)誤的快速處理是配置系統(tǒng)的主要功能。
六、集成測(cè)試(圖11)
不同于零部件實(shí)施的測(cè)試,集成測(cè)試關(guān)注的是系統(tǒng)層面的測(cè)試驗(yàn)證。
6.1基礎(chǔ)測(cè)試
基礎(chǔ)測(cè)試針對(duì)系統(tǒng)中總線、診斷等系統(tǒng)功能:控制器是否能夠及時(shí)地通過(guò)總線將采集到的傳感器信號(hào)傳遞給其他控制器,是否能夠及時(shí)響應(yīng)其他控制器通過(guò)總線傳遞的指令并驅(qū)動(dòng)執(zhí)行機(jī)構(gòu);網(wǎng)關(guān)實(shí)現(xiàn)的功能是否正確(滿(mǎn)足設(shè)計(jì)要求);所有控制器是否能按規(guī)定進(jìn)入/退出睡眠模式(網(wǎng)絡(luò)管理策略是否滿(mǎn)足設(shè)計(jì)規(guī)范);控制器網(wǎng)絡(luò)的電流消耗是否在規(guī)定的范圍之內(nèi);總線負(fù)載是否符合設(shè)計(jì)要求;在線診斷功能是否符合設(shè)計(jì)要求。
6.2功能測(cè)試
根據(jù)系統(tǒng)架構(gòu)、功能需求等設(shè)計(jì)規(guī)范,結(jié)合測(cè)試平臺(tái)結(jié)構(gòu)和測(cè)試環(huán)境特點(diǎn)生成測(cè)試規(guī)范。測(cè)試規(guī)范詳細(xì)定義了測(cè)試要求和步驟,包括點(diǎn)火開(kāi)關(guān)狀態(tài)、功能實(shí)現(xiàn)的條件、功能結(jié)果、具體描述及注意事項(xiàng)等。同時(shí)對(duì)誤用濫用也要進(jìn)行詳盡分析,生成相應(yīng)的測(cè)試文檔。
根據(jù)上述測(cè)試規(guī)范進(jìn)行詳細(xì)的功能測(cè)試,以確認(rèn)集成效果是否滿(mǎn)足設(shè)計(jì)規(guī)范。測(cè)試解決方案建立在標(biāo)準(zhǔn)系統(tǒng)框架基礎(chǔ)上,通過(guò)開(kāi)放式接口提供完整的模型設(shè)計(jì)、測(cè)試設(shè)計(jì)、診斷和標(biāo)定設(shè)計(jì),虛擬試驗(yàn)環(huán)境、實(shí)時(shí)仿真模型、試驗(yàn)和試驗(yàn)參數(shù)可在不同設(shè)計(jì)階段和項(xiàng)目中得以復(fù)用。
七、總結(jié)
本文對(duì)整車(chē)網(wǎng)絡(luò)開(kāi)發(fā)和系統(tǒng)開(kāi)發(fā)工作進(jìn)行了詳細(xì)描述,結(jié)合嵌入式理論介紹了基于功能面向需求的架構(gòu)設(shè)計(jì)方法以及總線、診斷、集成測(cè)試的工作重點(diǎn)。