初洪超,周紅英,龔存昊
(安徽江淮汽車股份有限公司技術(shù)中心,安徽 合肥 230601)
?
汽車電子
VNA在汽車CAN總線數(shù)據(jù)庫開發(fā)的應(yīng)用
初洪超,周紅英,龔存昊
(安徽江淮汽車股份有限公司技術(shù)中心,安徽 合肥 230601)
摘 要:車載網(wǎng)絡(luò)已經(jīng)廣泛應(yīng)用于現(xiàn)代汽車電氣系統(tǒng)中,傳統(tǒng)的網(wǎng)絡(luò)設(shè)計(jì)測(cè)試方法是在初期設(shè)計(jì),后期經(jīng)過測(cè)試進(jìn)行整改,協(xié)議修改方面存在著諸多不便,平臺(tái)的復(fù)用性也不夠好,設(shè)計(jì)時(shí)主要是經(jīng)驗(yàn)起主導(dǎo)作用,很少有理論支持。而采用VNA進(jìn)行網(wǎng)絡(luò)設(shè)計(jì)則能很好的解決上述問題,不僅可以根據(jù)經(jīng)驗(yàn)進(jìn)行設(shè)計(jì),還在設(shè)計(jì)之初就對(duì)網(wǎng)絡(luò)做了時(shí)序分析,這樣不僅提高了設(shè)計(jì)的準(zhǔn)確性,還可以減少后期網(wǎng)絡(luò)測(cè)試的工作量,縮短網(wǎng)絡(luò)開發(fā)周期,對(duì)平臺(tái)的建設(shè)也會(huì)起到很好的推動(dòng)作用。
關(guān)鍵詞:車載網(wǎng)絡(luò);VNA;問時(shí)序分析;網(wǎng)絡(luò)設(shè)計(jì);最大功能時(shí)間
10.16638/j.cnki.1671-7988.2016.04.029
CLC NO.: U463.6Document Code: AArticle ID: 1671-7988(2016)04-85-04
隨著現(xiàn)代汽車電子控制技術(shù)的發(fā)展,汽車發(fā)動(dòng)機(jī)、底盤和車身等電控系統(tǒng)中的控制單元數(shù)量不斷增加,汽車整車的電氣系統(tǒng)變得越來越復(fù)雜,對(duì)實(shí)時(shí)信號(hào)傳輸?shù)囊笤絹碓礁撸囕dCAN網(wǎng)絡(luò)已經(jīng)成為汽車電氣電器工程師的首選。
汽車CAN網(wǎng)絡(luò)化不僅能減輕整車的質(zhì)量,而且保證了各個(gè)控制模塊之間交互信息及時(shí)準(zhǔn)確的傳達(dá),從而提高了整車的安全性和舒適性。而如何進(jìn)行CAN網(wǎng)絡(luò)設(shè)計(jì),則成為整車網(wǎng)絡(luò)化的關(guān)鍵。
目前,自主品牌的汽車對(duì)車載網(wǎng)絡(luò)應(yīng)用起步較晚,所以網(wǎng)絡(luò)設(shè)計(jì)方面比較薄弱,處于摸索階段??偨Y(jié)現(xiàn)有的總線網(wǎng)絡(luò)設(shè)計(jì)方法,主要有兩種:一是以傳輸信息為主,通過大量仿真和測(cè)試驗(yàn)證的傳統(tǒng)設(shè)計(jì)方法;另一種是通過專業(yè)設(shè)計(jì)平臺(tái),以協(xié)議設(shè)計(jì)為主的方法。
整車網(wǎng)絡(luò)的開發(fā)一般分為:整車功能需求建立、網(wǎng)絡(luò)系統(tǒng)架構(gòu)設(shè)計(jì)、網(wǎng)絡(luò)子系統(tǒng)設(shè)計(jì)、節(jié)點(diǎn)零部件的需求定義、節(jié)點(diǎn)零部件ECU的功能開發(fā)、軟硬件的集成、網(wǎng)絡(luò)單元測(cè)試、網(wǎng)絡(luò)系統(tǒng)集成測(cè)試、功能測(cè)試、整體確認(rèn)等階段,如圖1所示。
在開發(fā)的過程中,參與網(wǎng)絡(luò)的各節(jié)點(diǎn)模塊通過CAN總線將各功能構(gòu)建起來,形成整車功能架構(gòu);整車廠從系統(tǒng)需求到部件需求,完成系統(tǒng)需求規(guī)范和部件需求規(guī)范的制定,并將部件需求規(guī)范下達(dá)給供應(yīng)商;供應(yīng)商完成部件開發(fā)后,整車廠再?gòu)牟考y(cè)試到系統(tǒng)測(cè)試,在多輪樣件和樣車上完成集成和驗(yàn)證。
CAN網(wǎng)絡(luò)架構(gòu)的合理性一定程度上決定了模塊開發(fā)的難易程度、時(shí)間周期、可靠性及成本,同時(shí)也決定了整車開發(fā)的時(shí)間進(jìn)程、整車通訊穩(wěn)定性。因此好的設(shè)計(jì)方法及工具可以為整車廠創(chuàng)造巨大的經(jīng)濟(jì)效益。Mentor的工具正好滿足整車廠的需求,開發(fā)階段我們可以用VNA進(jìn)行設(shè)計(jì)。
圖1 網(wǎng)絡(luò)開發(fā)的V 型流程
2.1 傳統(tǒng)的網(wǎng)絡(luò)設(shè)計(jì)介紹
傳統(tǒng)的網(wǎng)絡(luò)設(shè)計(jì)是根據(jù)整車功能需求,電器工程師和供應(yīng)商討論之后確定各模塊硬件規(guī)范,網(wǎng)絡(luò)管理規(guī)范,信號(hào)列表等信息,供應(yīng)商根據(jù)這些規(guī)范和產(chǎn)品功能定義進(jìn)行產(chǎn)品設(shè)計(jì)。然后搭建臺(tái)架來做系統(tǒng)集成方面的測(cè)試,當(dāng)發(fā)現(xiàn)問題后由供應(yīng)商整改,再進(jìn)行新一輪的測(cè)試。這種設(shè)計(jì)方式對(duì)制定規(guī)范、進(jìn)行網(wǎng)絡(luò)開發(fā)的工程師要求極高,協(xié)議正確與否依賴于工程師的開發(fā)經(jīng)驗(yàn)和設(shè)計(jì)水平。前期規(guī)范制定是否合理,參數(shù)的制定是否合理,會(huì)對(duì)后期系統(tǒng)的集成帶來非常大的影響。一旦設(shè)計(jì)出現(xiàn)問題,則整改將會(huì)不可避免地給供需雙方帶來比較大的工作量,有可能會(huì)因此提高研發(fā)成本,耽誤項(xiàng)目進(jìn)度。
可見,傳統(tǒng)的設(shè)計(jì)方法是憑借經(jīng)驗(yàn)來搭建一個(gè)平臺(tái),將每個(gè)節(jié)點(diǎn)對(duì)協(xié)議的要求拼湊起來,通過仿真、測(cè)試的方法檢驗(yàn)協(xié)議的正確性,最終得到通訊協(xié)議,在反復(fù)修改過程中,耗費(fèi)了大量的時(shí)間,網(wǎng)絡(luò)的正確性也很難去把握。
VNA(Volcano Network Architect)是Mentor公司推出的一款網(wǎng)絡(luò)設(shè)計(jì)軟件,是對(duì)整車網(wǎng)絡(luò)進(jìn)行自動(dòng)化設(shè)計(jì)的一種工具,它采用自上而下的設(shè)計(jì)技術(shù),以設(shè)計(jì)為核心;是專業(yè)的信息與定時(shí)信號(hào)捕獲和處理工具,允許根據(jù)網(wǎng)絡(luò)需求設(shè)計(jì)網(wǎng)絡(luò)并進(jìn)行驗(yàn)證。
2.2 VNA介紹
用VNA進(jìn)行網(wǎng)絡(luò)設(shè)計(jì)可以對(duì)每個(gè)功能過程的實(shí)際時(shí)間進(jìn)行計(jì)算。根據(jù)功能實(shí)現(xiàn)的條件,對(duì)每個(gè)傳輸?shù)男盘?hào)分配出最佳的周期和ID,防止異常情況引起的網(wǎng)絡(luò)通訊故障,保證了通訊的可靠性。
2.2.1 VNA設(shè)計(jì)特點(diǎn)
VNA進(jìn)行網(wǎng)絡(luò)設(shè)計(jì)具有以下特點(diǎn):
(1)設(shè)計(jì)特征
1)基于信號(hào)定時(shí)要求,自動(dòng)或手動(dòng)創(chuàng)建通信矩陣;
2)自動(dòng)或手動(dòng)定義網(wǎng)關(guān);對(duì)于LIN線通訊可自動(dòng)或手動(dòng)定義調(diào)度表;
3)定義“固定”節(jié)點(diǎn),便于控制沿用不可更改的電子控制器的設(shè)計(jì)。
適用與多種開發(fā)過程,從傳統(tǒng)的以信息為基礎(chǔ)的通信設(shè)計(jì)模式,到現(xiàn)代的以基于功能劃分需求的設(shè)計(jì)模式,或者兩者混合的設(shè)計(jì)模式。
(2)分析特征
1)通過時(shí)序分析VNA可驗(yàn)證網(wǎng)絡(luò)設(shè)計(jì)是否滿足單個(gè)信號(hào)或所有時(shí)間結(jié)構(gòu)的定時(shí)要求;
2)已有ECU是基于“消息幀”定時(shí)要求的設(shè)計(jì),VNA設(shè)計(jì)的主要是一種基于“信號(hào)”定時(shí)要求的設(shè)計(jì),為了方便集成已ECU,VNA還特別支持基于“消息幀”定時(shí)要求的設(shè)計(jì);
3)對(duì)通過單個(gè)或多個(gè)網(wǎng)關(guān)傳輸?shù)臄?shù)據(jù)進(jìn)行端一端時(shí)間分析;
4)數(shù)據(jù)丟失檢測(cè),比如檢測(cè)消息在發(fā)送節(jié)點(diǎn)或在接收節(jié)點(diǎn)處的改寫;
5)實(shí)時(shí)檢測(cè)功能,每做一步都可對(duì)設(shè)計(jì)數(shù)據(jù)進(jìn)行檢測(cè)。
2.2.2 VNA設(shè)計(jì)優(yōu)勢(shì)
由于采用了自上而下的設(shè)計(jì)方式,相較傳統(tǒng)設(shè)計(jì)方式,使用VNA軟件設(shè)計(jì)有以下明顯優(yōu)勢(shì):
(1)在設(shè)計(jì)階段,在產(chǎn)品開發(fā)前找到并解決通訊問題。在開發(fā)階段早期發(fā)現(xiàn)并解決問題,能夠有效提高汽車開發(fā)過程中的生產(chǎn)力;
(2)自動(dòng)化通訊設(shè)計(jì)可以在系統(tǒng)設(shè)計(jì)初期就確保設(shè)計(jì)的正確性,這樣就可以允許使用者集中精力確保技術(shù)規(guī)范的準(zhǔn)確性,這更勝于花費(fèi)時(shí)間在創(chuàng)建例如通過試驗(yàn)和錯(cuò)誤方法的通訊矩陣;
(3)用VNA設(shè)計(jì)的系統(tǒng)具有明確清晰的通訊參數(shù),從而可以實(shí)現(xiàn)自動(dòng)測(cè)試,最大限度的將測(cè)試過程中人力的耗費(fèi)減少到最低,有效地提高了測(cè)試的效率;
(4)VNA的劃分允許用戶在它的數(shù)據(jù)庫中儲(chǔ)存并且管理所有的通訊數(shù)據(jù), 或有利于用戶使用VNA對(duì)于設(shè)計(jì)和/或分析,方便用戶導(dǎo)人和導(dǎo)出其他來源數(shù)據(jù)。
綜上所述,以上幾點(diǎn)實(shí)現(xiàn)了一個(gè)更加完善的通訊系統(tǒng)的設(shè)計(jì),VNA可以對(duì)同一節(jié)點(diǎn)的不同供應(yīng)商。可以分開管理編輯,還可以對(duì)不同的平臺(tái)進(jìn)行復(fù)用,因此給主機(jī)廠數(shù)據(jù)庫的建設(shè)減少了很多工作量,提高工作效率。
目前,某汽車在S平臺(tái)上完全應(yīng)用VNA進(jìn)行CAN網(wǎng)絡(luò)設(shè)計(jì),具體設(shè)計(jì)過程如下:
3.1.1 編碼類型定義
編碼是為了描述不同信號(hào)值之間是如何被被表示的,主要設(shè)計(jì)內(nèi)容包括信號(hào)值、邏輯范圍、物理范圍等。在物理范圍定義過程中涉及到參數(shù)比例因數(shù)和偏移量,它們與信號(hào)值的關(guān)系為:
F(x)=比例因數(shù)x+偏移量編碼類型是供信號(hào)選擇的,具有相同信號(hào)特征的則可選擇同一編碼類型。
圖2
3.1.2 信號(hào)定義
在信號(hào)創(chuàng)建時(shí),必須定義信號(hào)大小、信號(hào)類型、信號(hào)產(chǎn)生類型、信息類型、編碼類型。信號(hào)創(chuàng)建完成后,不同車型都可對(duì)其進(jìn)行復(fù)用,為后期其他項(xiàng)目創(chuàng)建數(shù)據(jù)庫工作帶來便利。
圖3
3.1.3 節(jié)點(diǎn)接口定義
節(jié)點(diǎn)接口定義中除了定義節(jié)點(diǎn)信息和接口控制器外,還將各個(gè)信號(hào)分別導(dǎo)入節(jié)點(diǎn)中,并定義每個(gè)信號(hào)的收發(fā)關(guān)系。定義發(fā)送信號(hào)中,最重要的是設(shè)置發(fā)送延遲時(shí)間和寫入間隔。發(fā)送延遲是當(dāng)信號(hào)值在Volcano中可用時(shí)從概念生成到第一個(gè)V_output()命令的時(shí)間,發(fā)送延遲的有效范圍為0~10000ms,一般設(shè)為10ms。對(duì)于周期型信號(hào),幀周期應(yīng)該小于寫入間隔,這樣可確保能夠傳輸所有信號(hào)值。同樣,定義接收信號(hào)時(shí),應(yīng)設(shè)置接收延遲時(shí)間、最大時(shí)效。最大時(shí)效是在信號(hào)生成與信號(hào)應(yīng)用之間所要求的最大時(shí)間。對(duì)于狀態(tài)可變的信號(hào)還需設(shè)置最大讀間隔,對(duì)于固態(tài)信號(hào)而言,其值為0。
節(jié)點(diǎn)接口定義時(shí),可對(duì)其供應(yīng)商及樣件版本信息進(jìn)行定義,如對(duì)于EMS而言,它可以分為德爾福和大陸系統(tǒng),對(duì)于同一樣件又可分為A樣件、B樣件等。這樣項(xiàng)目的配置信息就很明確,有利于數(shù)據(jù)庫的完整性和復(fù)用性,對(duì)下一個(gè)項(xiàng)目的網(wǎng)絡(luò)設(shè)計(jì)帶來便利,可減少開發(fā)時(shí)間。
圖4
3.1.4 網(wǎng)絡(luò)配置
在進(jìn)行網(wǎng)絡(luò)配置時(shí),需將已經(jīng)創(chuàng)建的節(jié)點(diǎn)導(dǎo)入網(wǎng)絡(luò)中,如應(yīng)將EMS節(jié)點(diǎn)導(dǎo)入到高速CAN網(wǎng)絡(luò)中,SJB節(jié)點(diǎn)導(dǎo)入車身CAN網(wǎng)絡(luò)中。在網(wǎng)絡(luò)CAN特性設(shè)置中應(yīng)設(shè)置好采樣點(diǎn)、再同步跳轉(zhuǎn)寬度、采樣模式、優(yōu)先級(jí)位、濾波位等參數(shù)。這些參數(shù)是之前設(shè)計(jì)分析之后的一個(gè)計(jì)算值,可以根據(jù)項(xiàng)目要求及設(shè)計(jì)經(jīng)驗(yàn)來判斷這些參數(shù)是否符合,若不符合則進(jìn)行相應(yīng)的修改和調(diào)整。
圖5
3.1.5 節(jié)點(diǎn)配置
圖6 節(jié)點(diǎn)配置參數(shù)
節(jié)點(diǎn)配置主要是對(duì)節(jié)點(diǎn)控制器硬件參數(shù)的設(shè)計(jì)確認(rèn),包括輸入時(shí)鐘頻率、傳輸速率、采樣點(diǎn)、再同步跳轉(zhuǎn)寬度、采樣模式、預(yù)分頻因子等。按下計(jì)算按鈕,可自動(dòng)根據(jù)之前的設(shè)計(jì)進(jìn)行計(jì)算,得出上述參數(shù)值,如圖所示。如果計(jì)算所得值不正確,系統(tǒng)會(huì)自動(dòng)提示。根據(jù)提示,對(duì)之前的設(shè)計(jì)進(jìn)行修改完善。
3.1.6 幀打包方式
幀的打包方式有兩種,如果對(duì)于各信號(hào)沒有特別要求,則運(yùn)用VNA自帶的自動(dòng)打包功能,它可以根據(jù)內(nèi)部機(jī)制進(jìn)行相關(guān)信號(hào)打包及周期、ID自動(dòng)分配。大部分車型的幀ID都是確定的,所以目前我們用得較多的是手動(dòng)打包方式,在各個(gè)信號(hào)都會(huì)根據(jù)功能分別定義在不同幀中,進(jìn)行手工分配ID。打包時(shí),要對(duì)幀的周期和偏移進(jìn)行設(shè)置,如圖所示:
圖7 幀的ID及周期
在進(jìn)行信號(hào)打包時(shí),每一幀報(bào)文的信號(hào)都要求有一個(gè)單獨(dú)的信號(hào)與它對(duì)應(yīng),不允許多幀消息共用同一個(gè)信號(hào),即需保證每一個(gè)信號(hào)的發(fā)送節(jié)點(diǎn)是唯一的。
3.1.7 時(shí)序分析
在整個(gè)設(shè)計(jì)過程中設(shè)計(jì)到輸出/輸入抖動(dòng)的概念。抖動(dòng)是任務(wù)函數(shù)調(diào)用在“滿期”之后可以延遲的量,而“滿期”取決于調(diào)用的起點(diǎn)。輸出抖動(dòng)指定了接口輸出調(diào)用滿期的時(shí)間和實(shí)際完成的時(shí)間之間差值的最大值。輸入抖動(dòng)指定了接口輸入調(diào)用滿期的時(shí)間和實(shí)際完成的時(shí)間之間差值的最大值.輸入抖動(dòng)和輸出抖動(dòng)是時(shí)變的,用來完成v_input()和v_output()的調(diào)用的,相對(duì)于周期事件的發(fā)生并根據(jù)Volcano進(jìn)程的完成來測(cè)量。下面的圖表顯示了如何測(cè)量輸出抖動(dòng):
圖8 輸入/輸出抖動(dòng)
E表示最早的v_output() 調(diào)用完成時(shí)間,L表示相對(duì)于循環(huán)開始的最晚的完成時(shí)間。因此輸出抖動(dòng)就是L減去E。輸入抖動(dòng)根據(jù)相同原則來測(cè)量。
在信號(hào)、節(jié)點(diǎn)、網(wǎng)絡(luò)等定義時(shí)都有時(shí)間設(shè)置,當(dāng)所有設(shè)計(jì)輸入完成后,需要進(jìn)行一個(gè)時(shí)序分析,檢查整個(gè)網(wǎng)絡(luò)系統(tǒng)的時(shí)間設(shè)置是否有問題。當(dāng)出現(xiàn)錯(cuò)誤或警告時(shí),必須進(jìn)行相應(yīng)的檢查然后進(jìn)行參數(shù)調(diào)整,直到無錯(cuò)誤出現(xiàn)為止。
時(shí)序分析后可生成接收信號(hào)的時(shí)序報(bào)告,顯示了關(guān)于信號(hào)路徑和發(fā)送信號(hào)的可用總線時(shí)間的信息。如圖所示:
總線可用時(shí)間(信號(hào))=最大時(shí)限(信號(hào))-發(fā)送延遲(信號(hào))-接收延遲(信號(hào))-輸入抖動(dòng)(接收端)-輸出抖動(dòng)(發(fā)送端)-幀處理周期(接收端)
圖9 總線可用時(shí)間
3.1.8 項(xiàng)目
和對(duì)節(jié)點(diǎn)接口定義一樣,為了更好的管理各個(gè)項(xiàng)目,建立主機(jī)廠自己的電子數(shù)據(jù)庫,在對(duì)項(xiàng)目進(jìn)行定義時(shí),也可以按照上述方法來定義,如圖3,寫明項(xiàng)目平臺(tái)和項(xiàng)目代號(hào)。并且根據(jù)對(duì)話框要求將項(xiàng)目詳細(xì)信息填寫清楚,有助于進(jìn)行產(chǎn)品和設(shè)計(jì)的追溯。在項(xiàng)目改型設(shè)計(jì)中,這種管理尤其體現(xiàn)出其優(yōu)勢(shì)。
圖10 項(xiàng)目管理
隨著汽車使用的電器設(shè)備越來越多,其網(wǎng)絡(luò)功能的也將復(fù)雜化,VNA軟件對(duì)于時(shí)序分析功能的強(qiáng)化更加能凸顯它的作用,為網(wǎng)絡(luò)設(shè)計(jì)帶來便利。隨著項(xiàng)目的增加,數(shù)據(jù)庫的管理工作也會(huì)越來越繁雜,VNA具有強(qiáng)大的數(shù)據(jù)庫管理功能,數(shù)據(jù)庫具有復(fù)用性,有利于平臺(tái)化的建設(shè)??傮w來說,VNA使用方便,功能強(qiáng)大,對(duì)汽車網(wǎng)絡(luò)工程師的設(shè)計(jì)工作有較大的幫助,在車載網(wǎng)絡(luò)設(shè)計(jì)中具有很好的應(yīng)用前景。
參考文獻(xiàn)
[1] CAN specitication 2.0.
[2] 楊寧.汽車車載網(wǎng)絡(luò)技術(shù)的應(yīng)用探討[J].信息技術(shù),2012,(8).
[3] ISO 11898—1,Controller area network (CAN) —Part 1: Data link layer and physical signaling [S].
[4] http://www.mentor.com.
[5] 張晉格等. 計(jì)算機(jī)控制原理與應(yīng)用. 北京:電子工業(yè)出版社1995.
中圖分類號(hào):U463.6
文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1671-7988(2016)04-85-04
作者簡(jiǎn)介:初洪超,就職于安徽江淮汽車股份有限公司技術(shù)中心。
The Application of VNA in the JAC Vehicle Network Design
Chu Hongchao, Zhou Hongying, Gong Cunhao
(AnHui JiangHuai Automobile Co., Ltd. Technical Center, Anhui Hefei 230601)
Abstract:Vehicle network has been widely used in modern automotive electrical systems.the traditional test methods of network design isdesign in the initial, the late rectification after testing. While there are a lot of inconvenience.the reusability of the platform is not good enough.And experience plays a dominant role. there is little theoretical support. Network design using VNA can resolve the above problems.the design can not only be based on experience, but also timing analysis can be done at the beginning of the network design .so that not only improves the accuracy of the design, but also can reduce the workload of the network testing, shorten development cycle of the network, will also play a good role in promoting the construction of the platform.
Keywords:Vehicle network; VNA; timing analysis; network design; max_age