您好,歡迎來(lái)電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>電子百科>汽車電子>電動(dòng)汽車控制技術(shù)>

CAN總線系統(tǒng)測(cè)試技術(shù)簡(jiǎn)介

2010年03月11日 11:22 www.ttokpm.com 作者:佚名 用戶評(píng)論(0
關(guān)鍵字:CAN總線(129108)

CAN總線系統(tǒng)測(cè)試技術(shù)簡(jiǎn)介

【摘 要】 CAN總線作為現(xiàn)場(chǎng)總線的一種,在汽車、船舶、航天、工業(yè)測(cè)控與工業(yè)自動(dòng)化等領(lǐng)域已經(jīng)得到廣泛的應(yīng)用。CAN總線開(kāi)發(fā)流程中,需要對(duì)所開(kāi)發(fā)的CAN總線系統(tǒng)進(jìn)行節(jié)點(diǎn)以及總線系統(tǒng)的驗(yàn)證與確認(rèn),本文主要介紹了網(wǎng)絡(luò)測(cè)試驗(yàn)證的內(nèi)容,實(shí)現(xiàn)測(cè)試的工具與測(cè)試技術(shù)。
【關(guān)鍵字】 CAN總線 網(wǎng)絡(luò)測(cè)試 驗(yàn)證 確認(rèn)

CAN Bus Testing Technology
Wu Yanan
(Beijing Jingwei Hirain Technology Ltd. Beijing 100107)

Abstract: As one kind of fieldbus, the CAN bus is widely used in Automobile, Ship, Aerospace, industrial controlling and automatization. During the development processes of CAN bus, the verification and validation are the important steps for the CAN bus system. The testing specification is discussed here, and the testing tools and testing technology are introduced.
Keywords: CAN(Controller Area Networks) Testing Verification Validation


引 言[1].[2]

隨著汽車電子技術(shù)的發(fā)展,汽車上所用的電控單元不斷增多,電控單元之間信息交換的需求促進(jìn)了車用總線技術(shù)的發(fā)展。CAN總線即控制器局域網(wǎng)總線,由Bosch公司于1981年制定,主要目的為用作汽車的高速動(dòng)力總線、中速車身總線等。由于CAN總線具有可靠性高、實(shí)時(shí)性好、成本合理等優(yōu)點(diǎn),逐漸被廣泛應(yīng)用于其他領(lǐng)域中,例如船舶、航天、工業(yè)測(cè)控、工業(yè)自動(dòng)化、電力系統(tǒng)、樓宇監(jiān)控等,成為了廣泛使用的現(xiàn)場(chǎng)總線之一?;贑AN總線協(xié)議,還發(fā)展出CANopen、J1939、DeviceNet等多種上層總線協(xié)議。

CAN是一種開(kāi)放式多主站線性結(jié)構(gòu)的總線,使用雙絞線作為連接介質(zhì)連接所有節(jié)點(diǎn),最高傳輸速率為1Mbit/s。CAN總線使用載波偵聽(tīng)多路訪問(wèn)/沖突檢測(cè)(CSMA/CD)技術(shù)這種非破壞性的總線仲裁方式,避免多個(gè)節(jié)點(diǎn)同時(shí)開(kāi)始發(fā)送消息而造成總線沖突,保證優(yōu)先級(jí)高的報(bào)文能夠優(yōu)先發(fā)送而不需要額外的時(shí)間開(kāi)銷。CAN協(xié)議不對(duì)節(jié)點(diǎn)進(jìn)行地址規(guī)定,而是使用報(bào)文的標(biāo)識(shí)符來(lái)指定報(bào)文的優(yōu)先級(jí)以及報(bào)文的內(nèi)容。同時(shí),CAN總線協(xié)議提供了完善的錯(cuò)誤檢測(cè)與錯(cuò)誤處理機(jī)制,包括了CRC檢測(cè)、錯(cuò)誤報(bào)文自動(dòng)重發(fā)、錯(cuò)誤狀態(tài)判斷、臨時(shí)錯(cuò)誤自動(dòng)恢復(fù)、永久錯(cuò)誤自動(dòng)錯(cuò)誤節(jié)點(diǎn)等措施,從而很好的保證了系統(tǒng)數(shù)據(jù)一致性。


圖1 系統(tǒng)開(kāi)發(fā)流程

1 CAN總線開(kāi)發(fā)流程[3]

隨著CAN總線技術(shù)應(yīng)用在國(guó)內(nèi)各個(gè)行業(yè)中廣泛使用,CAN總線開(kāi)發(fā)流程及開(kāi)發(fā)方法也日益成為關(guān)注的重點(diǎn)。目前,基于開(kāi)發(fā)-驗(yàn)證思想的V型開(kāi)發(fā)流程被廣泛用于CAN總線的開(kāi)發(fā)過(guò)程中,如圖1所示。

OEM廠商首先定義CAN總線系統(tǒng)需求,并進(jìn)行系統(tǒng)構(gòu)架設(shè)計(jì),然后由供應(yīng)商根據(jù)OEM廠商提出的需求,分析節(jié)點(diǎn)ECU的需求并進(jìn)行節(jié)點(diǎn)設(shè)計(jì),再進(jìn)行軟硬件實(shí)現(xiàn)以及節(jié)點(diǎn)ECU集成,最后對(duì)ECU進(jìn)行測(cè)試驗(yàn)證。供應(yīng)商將所設(shè)計(jì)的節(jié)點(diǎn)ECU提供給OEM廠商,由OEM廠商進(jìn)行CAN總線系統(tǒng)的集成,并對(duì)系統(tǒng)進(jìn)行確認(rèn),才能形成最終的產(chǎn)品。

在V開(kāi)發(fā)流程中,測(cè)試始終貫徹著整個(gè)開(kāi)發(fā)流程,以在開(kāi)發(fā)過(guò)程中能盡早的發(fā)現(xiàn)設(shè)計(jì)問(wèn)題。供應(yīng)商在節(jié)點(diǎn)ECU開(kāi)發(fā)的最后階段,需要對(duì)所開(kāi)發(fā)的ECU進(jìn)行驗(yàn)證,檢查所開(kāi)發(fā)的產(chǎn)品是否符合所需的設(shè)計(jì)規(guī)范,即“是否正確的做了產(chǎn)品”。而OEM廠商在獲得供應(yīng)商提供的各個(gè)節(jié)點(diǎn)ECU后,進(jìn)行系統(tǒng)集成,需要對(duì)CAN總線系統(tǒng)進(jìn)行確認(rèn),檢查是否符合原始的需求,即“是否設(shè)計(jì)了正確的產(chǎn)品”。

因此,無(wú)論對(duì)于供應(yīng)商開(kāi)發(fā)單節(jié)點(diǎn)ECU還是OEM廠商對(duì)整個(gè)系統(tǒng)進(jìn)行集成,都需要對(duì)節(jié)點(diǎn)以及總線系統(tǒng)進(jìn)行CAN總線測(cè)試,以完成驗(yàn)證與確認(rèn)的工作。

2 CAN總線測(cè)試

CAN總線測(cè)試內(nèi)容可以分為單節(jié)點(diǎn)測(cè)試和總線系統(tǒng)集成測(cè)試兩部分。在每個(gè)節(jié)點(diǎn)連接到CAN總線網(wǎng)絡(luò)之前都需要進(jìn)行單節(jié)點(diǎn)測(cè)試,用以確定節(jié)點(diǎn)工作正確并且不會(huì)干擾總線的正常通訊??偩€系統(tǒng)集成測(cè)試則是將各個(gè)節(jié)點(diǎn)都連接形成完整的CAN總線系統(tǒng),對(duì)系統(tǒng)進(jìn)行測(cè)試以驗(yàn)證系統(tǒng)運(yùn)行的完整性及正確性、系統(tǒng)的通訊魯棒性、電器魯棒性以及系統(tǒng)的容錯(cuò)自恢復(fù)功能等。

進(jìn)行CAN總線測(cè)試過(guò)程,首先需要制定測(cè)試規(guī)范,然后根據(jù)該測(cè)試規(guī)范編寫測(cè)試案例,構(gòu)建測(cè)試環(huán)境,并進(jìn)行測(cè)試實(shí)現(xiàn),最終將測(cè)試所得的數(shù)據(jù)進(jìn)行分析,形成測(cè)試報(bào)告。

2.1 CAN總線測(cè)試規(guī)范

由于CAN總線基本協(xié)議的靈活性,目前并沒(méi)有一個(gè)統(tǒng)一的完整覆蓋CAN總線各個(gè)通訊層次的測(cè)試規(guī)范,而作為CAN總線技術(shù)使用最廣泛的汽車行業(yè),各個(gè)汽車廠商也只是自行定義其轎車CAN總線協(xié)議,并根據(jù)該協(xié)議制定各自的測(cè)試規(guī)范。

因此制定CAN總線的測(cè)試規(guī)范,必須從相關(guān)的設(shè)計(jì)需求和規(guī)范文檔中提取測(cè)試需求,這些文檔可以包括CAN協(xié)議、總線系統(tǒng)設(shè)計(jì)時(shí)所依據(jù)的標(biāo)準(zhǔn)或協(xié)議(例如ISO11898或J1939)、系統(tǒng)設(shè)計(jì)的需求、系統(tǒng)的診斷協(xié)議、以及其他行業(yè)性通訊規(guī)范。根據(jù)所提取的測(cè)試需要,將各個(gè)需求點(diǎn)對(duì)應(yīng)為測(cè)試案例組。

將每組測(cè)試案例組在各測(cè)試節(jié)點(diǎn)上的實(shí)施稱為測(cè)試案例。每個(gè)測(cè)試案例根據(jù)測(cè)試實(shí)現(xiàn)的過(guò)程,細(xì)分為一系列的測(cè)試步驟。對(duì)于每個(gè)測(cè)試案例,在測(cè)試結(jié)束時(shí),都會(huì)存在一個(gè)測(cè)試結(jié)果,用以確定測(cè)試案例所對(duì)應(yīng)的節(jié)點(diǎn)是否通過(guò)該測(cè)試需求點(diǎn)的測(cè)試。每個(gè)測(cè)試案例中,除了包含測(cè)試步驟的內(nèi)容外,還包括了測(cè)試條件和測(cè)試環(huán)境兩部分內(nèi)容。測(cè)試條件是測(cè)試案例實(shí)施之前,被測(cè)單元所需要具備的條件,例如系統(tǒng)已經(jīng)處于正常通訊等。而測(cè)試環(huán)境則是測(cè)試過(guò)程中,需要提供給被測(cè)單元的外部環(huán)境,例如供電電壓、信號(hào)線的連接情況等。

2.2 CAN總線測(cè)試內(nèi)容

CAN總線測(cè)試內(nèi)容可以按照通訊層次劃分為物理層測(cè)試、數(shù)據(jù)鏈路層測(cè)試、應(yīng)用層測(cè)試等內(nèi)容。

物理層測(cè)試主要目的是驗(yàn)證節(jié)點(diǎn)及系統(tǒng)在電路設(shè)計(jì)、物理電平特性等方面的性能,這是保證節(jié)點(diǎn)能夠正確連接入總線的基礎(chǔ)。測(cè)試主要包括了節(jié)點(diǎn)的電阻電容特性、節(jié)點(diǎn)差分電阻、總線終端電阻、CAN線上的物理電平特性等方面。

數(shù)據(jù)鏈路層測(cè)試則包括了位定時(shí)測(cè)試、采樣點(diǎn)測(cè)試、SJW測(cè)試等內(nèi)容,該測(cè)試內(nèi)容主要用以保證各個(gè)節(jié)點(diǎn)的通訊參數(shù)能夠保持一致性,所組成的網(wǎng)絡(luò)能夠正常有效的工作。

應(yīng)用層測(cè)試則包括了上層應(yīng)用層協(xié)議的測(cè)試、網(wǎng)絡(luò)管理功能的測(cè)試以及故障診斷測(cè)試等方面的內(nèi)容。其包括的內(nèi)容可以是:數(shù)據(jù)庫(kù)使用正確性測(cè)試、通訊周期準(zhǔn)確性測(cè)試、節(jié)點(diǎn)休眠喚醒功能測(cè)試、網(wǎng)絡(luò)管理功能測(cè)試、網(wǎng)關(guān)測(cè)試、錯(cuò)誤幀頻率測(cè)試、電壓影響測(cè)試、總線物理故障測(cè)試、節(jié)點(diǎn)故障自恢復(fù)能力測(cè)試、通訊失敗的故障診斷功能測(cè)試等內(nèi)容。由于CAN總線使用背景的不同,其應(yīng)用層的內(nèi)容也有很大差別,因此應(yīng)用層測(cè)試的內(nèi)容也存在較大差異,需要根據(jù)項(xiàng)目的設(shè)計(jì)需求以及設(shè)計(jì)文檔仔細(xì)制定應(yīng)用層測(cè)試的內(nèi)容。值得注意的是,對(duì)于CAN總線網(wǎng)絡(luò)測(cè)試,其應(yīng)用層測(cè)試一般不涉及功能測(cè)試的范圍,功能測(cè)試一般屬于ECU測(cè)試的范疇。

2.3 CAN總線測(cè)試方法

圖2所示為基于Vector公司提供的CAN總線測(cè)試工具所組建的CAN總線測(cè)試系統(tǒng)。

圖2 CAN總線測(cè)試系統(tǒng)

在系統(tǒng)中被測(cè)單元與模擬被測(cè)單元應(yīng)用背景的仿真器相連,通過(guò)仿真器可以模擬出被測(cè)單元在真實(shí)應(yīng)用中的運(yùn)行環(huán)境。而被測(cè)系統(tǒng)的CAN線則通過(guò)CAN硬件接口連接到測(cè)試軟件CANoe上,CANoe還可通過(guò)IO接口電纜IOcab獲取被測(cè)單元的IO信號(hào)。

被測(cè)單元的供電則由供電系統(tǒng)提供給仿真器,再由仿真器提供給被測(cè)系統(tǒng),與真實(shí)系統(tǒng)的供電模式相同。CANoe軟件可以通過(guò)其接口來(lái)控制供電系統(tǒng),從而可以方便的改變被測(cè)單元的供電電壓,實(shí)現(xiàn)CAN總線測(cè)試環(huán)境。

測(cè)試過(guò)程中,使用Vector公司提供的干擾儀CANstress,以制造出測(cè)試所需的干擾信號(hào)以及總線故障等測(cè)試環(huán)境。而系統(tǒng)中所連接的網(wǎng)絡(luò)示波器CANscope可以在物理層測(cè)試中捕捉CAN總線的物理信號(hào)。

在測(cè)試過(guò)程中,Vector提供的測(cè)試軟件CANoe可以觀測(cè)總線通訊的報(bào)文以及信號(hào),并檢測(cè)總線的錯(cuò)誤幀、總線負(fù)載率等信息。另外,CANoe還提供了測(cè)試軟件包,能夠使用擴(kuò)展的編程功能編寫測(cè)試流程,控制CANstresss、CANscope等工具,并支持XML編寫的測(cè)試腳本,實(shí)現(xiàn)自動(dòng)化測(cè)試流程,將測(cè)試結(jié)果自動(dòng)生成XML和HTML測(cè)試報(bào)告。

3 CAN網(wǎng)絡(luò)測(cè)試案例

根據(jù)上述的CAN網(wǎng)絡(luò)測(cè)試系統(tǒng),進(jìn)行了物理層的采樣點(diǎn)測(cè)試。測(cè)試結(jié)果如圖3所示。

圖3 (a)所示為被測(cè)單元正常通訊情況下,使用CANscope捕捉到數(shù)據(jù)場(chǎng)第一個(gè)隱性位。使用CANstress將該位75%后干擾為顯性電平,使用CANscope捕捉總線報(bào)文,沒(méi)有出現(xiàn)錯(cuò)誤幀,如圖3(b)所示。同樣條件下,將該位68.75%后的電平干擾為顯性位,使用CANscope捕捉總線報(bào)文,出現(xiàn)了錯(cuò)誤幀,如圖3(c)所示。由此可以得出結(jié)論,被測(cè)單元的采樣率為75%。

(a)無(wú)干擾情況下的位電平

(b)干擾電平在75%后-無(wú)錯(cuò)誤幀


(c)干擾電平在68.75%后-有錯(cuò)誤幀

圖3 采樣點(diǎn)測(cè)試

圖4所示為應(yīng)用層測(cè)試中,CAN-H線與電源短路測(cè)試的測(cè)試結(jié)果。圖4(a)所示為使用CANstress將CAN-H線設(shè)置為與電源短路。圖4(b)所示為CANoe在該測(cè)試過(guò)程中總線的通訊情況,在被測(cè)條件下總線沒(méi)有出現(xiàn)錯(cuò)誤幀。使用CANscope觀測(cè),由于CAN-H與電源短路,CAN-H電平表現(xiàn)為恒高,而差分電平信號(hào)仍足夠保證CAN總線的正常通訊,因此沒(méi)有出現(xiàn)錯(cuò)誤幀。

(a)CANstress設(shè)置CAN-H與電源斷路


(b)CANoe檢測(cè)網(wǎng)絡(luò)無(wú)錯(cuò)誤幀


(c)CANscope觀測(cè)總線電平情況

圖4 CAN-H與電源斷路情況下的系統(tǒng)通訊測(cè)試

4 總結(jié)

隨著CAN總線在國(guó)內(nèi)應(yīng)用的日益廣泛,CAN總線測(cè)試技術(shù)將越發(fā)重要。CAN總線測(cè)試規(guī)范是CAN總線測(cè)試的核心,需要根據(jù)相關(guān)的CAN協(xié)議規(guī)范以及CAN總線設(shè)計(jì)需求進(jìn)行制定。另外,在缺乏統(tǒng)一測(cè)試規(guī)范以及參考資料的條件下,還需要在CAN總線開(kāi)發(fā)過(guò)程中積累經(jīng)驗(yàn),逐步制定并完善CAN總線的測(cè)試規(guī)范。國(guó)外先進(jìn)的CAN總線設(shè)計(jì)及測(cè)試工具也可以促進(jìn)CAN總線測(cè)試能力迅速形成。

參考文獻(xiàn)

[1] 鮑官軍, 等. CAN總線技術(shù)、系統(tǒng)實(shí)現(xiàn)及發(fā)展趨勢(shì). 浙江工業(yè)大學(xué)學(xué)報(bào). 2003(1)
[2] Bosch. CAN Specification V2.0. 1991
[3] Siegfried Beeh. Testing with CANoe. Vector Congress. 2004

非常好我支持^.^

(24) 100%

不好我反對(duì)

(0) 0%

( 發(fā)表人:admin )

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?