汽車CAN網(wǎng)絡(luò)測(cè)試開發(fā)方法
掃描二維碼
隨時(shí)隨地手機(jī)看文章
一、前言
隨著汽車電子技術(shù)的發(fā)展和對(duì)汽車性能要求的提高,汽車上電控單元(ECU, Electronic Control Unit)數(shù)量越來越多,各個(gè)電控單元之間的交互信息通過CAN、LIN、MOST總線組成的網(wǎng)絡(luò)來實(shí)現(xiàn)。因而對(duì)整車網(wǎng)絡(luò)的開發(fā)顯得尤為必要。當(dāng)前整車網(wǎng)絡(luò)的開發(fā)流程一般都是基于國際上通用的V模式開發(fā)流程。
整車網(wǎng)絡(luò)開發(fā)V模式流程包括以下幾個(gè)主要方面:網(wǎng)絡(luò)需求定義、網(wǎng)絡(luò)規(guī)范制定、網(wǎng)絡(luò)測(cè)試驗(yàn)證。當(dāng)前期的網(wǎng)絡(luò)需求定義以及網(wǎng)絡(luò)規(guī)范制定完成后,就進(jìn)入后期的網(wǎng)絡(luò)設(shè)計(jì)與測(cè)試驗(yàn)證階段,網(wǎng)絡(luò)測(cè)試驗(yàn)證階段主要是對(duì)已經(jīng)設(shè)計(jì)出來的樣品或產(chǎn)品進(jìn)行網(wǎng)絡(luò)測(cè)試驗(yàn)證,以確保樣品或產(chǎn)品的功能與前期的需求一致。
網(wǎng)絡(luò)測(cè)試驗(yàn)證階段主要從事網(wǎng)絡(luò)測(cè)試需求分析、網(wǎng)絡(luò)測(cè)試規(guī)范制定、網(wǎng)絡(luò)測(cè)試系統(tǒng)的開發(fā)以及網(wǎng)絡(luò)測(cè)試實(shí)施、對(duì)測(cè)試過程中出現(xiàn)問題進(jìn)行分析等。
二、CAN網(wǎng)絡(luò)測(cè)試開發(fā)流程
整車CAN網(wǎng)絡(luò)測(cè)試開發(fā)流程主要包括以下幾個(gè)方面:測(cè)試計(jì)劃制訂、規(guī)范制定、自動(dòng)化測(cè)試系統(tǒng)開發(fā)、測(cè)試實(shí)施以及測(cè)試報(bào)告總結(jié)。
測(cè)試計(jì)劃制訂主要考慮網(wǎng)絡(luò)測(cè)試工作所需要的資源需求(工具需求以及人力需求等)、任務(wù)劃分、時(shí)間需求等,以確保后續(xù)的工作能順利地、有效地開展。
測(cè)試規(guī)范的制定主要是確定網(wǎng)絡(luò)需測(cè)試內(nèi)容。在整個(gè)網(wǎng)絡(luò)開發(fā)過程當(dāng)中,網(wǎng)絡(luò)測(cè)試規(guī)范應(yīng)在網(wǎng)絡(luò)需求規(guī)范完成后開展。網(wǎng)絡(luò)測(cè)試的目的是確認(rèn)供應(yīng)商提供的 ECU產(chǎn)品是否符合網(wǎng)絡(luò)需求規(guī)范的要求。正因?yàn)槿绱?,CAN網(wǎng)絡(luò)測(cè)試規(guī)范的制定必須依據(jù)CAN網(wǎng)絡(luò)需求規(guī)范。測(cè)試規(guī)范里需要包含所有的測(cè)試項(xiàng)內(nèi)容以及對(duì)每一測(cè)試項(xiàng)測(cè)試所需要的測(cè)試環(huán)境需求、測(cè)試步驟、測(cè)試工具需求的描述。
測(cè)試系統(tǒng)開發(fā)包括軟件系統(tǒng)開發(fā)、硬件系統(tǒng)開發(fā)、軟硬件系統(tǒng)集成。軟件系統(tǒng)開發(fā)主要包括:
軟件架構(gòu)的劃分;
基于測(cè)試內(nèi)容的測(cè)試程序開發(fā);
基于網(wǎng)絡(luò)通信報(bào)文的庫文件開發(fā);
用來控制測(cè)試執(zhí)行等方面的測(cè)試面板開發(fā);
用來控制不同的測(cè)試系統(tǒng)使之有效工作的相關(guān)控制程序開發(fā)。
硬件系統(tǒng)開發(fā)主要包括:
網(wǎng)絡(luò)測(cè)試輔助控制器開發(fā);
測(cè)試工具的選型(如程控電源、CAN網(wǎng)絡(luò)通信設(shè)備、CAN網(wǎng)絡(luò)干擾設(shè)備、CAN網(wǎng)絡(luò)波形采集設(shè)備等)。
軟硬件系統(tǒng)集成其目的是對(duì)軟件開發(fā)系統(tǒng)與硬件開發(fā)系統(tǒng)進(jìn)行調(diào)試使之無縫集成在一起并有效的工作。
測(cè)試實(shí)施是CAN網(wǎng)絡(luò)測(cè)試的具體的實(shí)施環(huán)節(jié),主要包括:
測(cè)試環(huán)境的搭建(測(cè)試臺(tái)架的搭建等);
對(duì)被測(cè)ECU網(wǎng)絡(luò)測(cè)試的執(zhí)行;
記錄測(cè)試結(jié)果并保存測(cè)試記錄。
測(cè)試報(bào)告總結(jié)主要是根據(jù)測(cè)試結(jié)果對(duì)被測(cè)ECU進(jìn)行分析,確定被測(cè)ECU是否符合CAN網(wǎng)絡(luò)需求規(guī)范的要求。
圖1 CAN網(wǎng)絡(luò)測(cè)試流程圖
三、CAN網(wǎng)絡(luò)測(cè)試開發(fā)工具
CAN網(wǎng)絡(luò)測(cè)試開發(fā)需要以下主要的開發(fā)工具:DOORS、Visual C++、Matlab/Simulink、CANoe.Matlab Interface、CANoe、CANdela、CANoe.DiVa、CANcard、CANdb++、CANscope、CANstress、 Code Warrior、Protel等。
DOORS為需求管理工具,可以利用該工具整理網(wǎng)絡(luò)測(cè)試內(nèi)容并對(duì)后續(xù)開發(fā)工具提供測(cè)試需求的輸入。Visual C++主要用于開發(fā)硬件系統(tǒng)之間協(xié)調(diào)工作的控制程序和人機(jī)交互操作界面的控制程序。Matlab/Simulink和CANoe.Matlab Interface主要用于基于模型的測(cè)試內(nèi)容的建模,用來實(shí)現(xiàn)測(cè)試代碼的自動(dòng)生成。CANoe為網(wǎng)絡(luò)仿真、測(cè)試工具,在CANoe下開發(fā)網(wǎng)絡(luò)通信相關(guān)的測(cè)試程序,同時(shí)利用CANoe生成網(wǎng)絡(luò)測(cè)試報(bào)告。CANscope用于CAN信號(hào)物理特性的測(cè)量與分析,具有多種采樣觸發(fā)方式,在網(wǎng)絡(luò)自動(dòng)化測(cè)試系統(tǒng)中用于采集被測(cè)ECU的波形。CANstress用于干擾CAN網(wǎng)絡(luò)通信以測(cè)試ECU及網(wǎng)絡(luò)系統(tǒng)的容錯(cuò)能力,在網(wǎng)絡(luò)自動(dòng)化測(cè)試系統(tǒng)中用于干擾被測(cè)網(wǎng)絡(luò), CANdela用于編輯基于KWP2000和UDS的診斷數(shù)據(jù)庫,CANoe.DiVa用于生成診斷相關(guān)的測(cè)試程序,其輸入文件為CANdela編輯的庫文件,輸出文件為CANoe的診斷相關(guān)的測(cè)試程序,CANdb++用于編輯CAN通信報(bào)文的數(shù)據(jù)庫。
四、一種CAN網(wǎng)絡(luò)自動(dòng)化測(cè)試系統(tǒng)的實(shí)現(xiàn)
根據(jù)第二節(jié)介紹的測(cè)試流程,采用第三節(jié)介紹的相應(yīng)開發(fā)工具來開發(fā)出一種CAN網(wǎng)絡(luò)自動(dòng)化測(cè)試系統(tǒng)。該CAN自動(dòng)化測(cè)試系統(tǒng)的功能包括:測(cè)試流程的控制、測(cè)試用例的自動(dòng)執(zhí)行、數(shù)據(jù)采集以及處理、自動(dòng)生成測(cè)試報(bào)告。
1)測(cè)試規(guī)范的制定:采用DOORS需求管理工具,根據(jù)網(wǎng)絡(luò)需求規(guī)范和診斷需求規(guī)范,制定出CAN網(wǎng)絡(luò)單元測(cè)試規(guī)范、系統(tǒng)測(cè)試規(guī)范和診斷測(cè)試規(guī)范;
2)利用CANdb++進(jìn)行CAN報(bào)文數(shù)據(jù)庫方面的軟件開發(fā),CANdela進(jìn)行診斷數(shù)據(jù)庫方面的開發(fā);
3)根據(jù)1)制定的網(wǎng)絡(luò)單元測(cè)試規(guī)范和系統(tǒng)測(cè)試規(guī)范,利用Matlab/Simulink和CANoe.Matlab Interface生成相應(yīng)的測(cè)試程序,并在CANoe環(huán)境下進(jìn)行集成;
4)根據(jù)2)完成的診斷數(shù)據(jù)庫,利用CANoe.DiVa生成診斷測(cè)試程序,并在CANoe環(huán)境下進(jìn)行集成;
5)利用CANoe、Matlab/Simulink和Visual C++進(jìn)行控制面板方面的軟件開發(fā);
6)根據(jù)測(cè)試規(guī)范的測(cè)試需求,利用Visual C++、Code Warrior和Protel進(jìn)行網(wǎng)絡(luò)輔助控制器以及其他諸如故障植入等方面的軟硬件開發(fā);
7)利用Visual C++開發(fā)CANstress、CANscope和程控電源等測(cè)試工具的控制程序;
8)利用Visual C++進(jìn)行系統(tǒng)集成。
網(wǎng)絡(luò)自動(dòng)化測(cè)試系統(tǒng)架構(gòu)和示意圖如圖2、圖3所示。
圖2 CAN網(wǎng)絡(luò)自動(dòng)測(cè)試系統(tǒng)
圖3 CAN網(wǎng)絡(luò)自動(dòng)化測(cè)試系統(tǒng)示意圖
五、結(jié)論
本文首先詳細(xì)介紹了CAN網(wǎng)絡(luò)測(cè)試流程;其次,介紹了CAN網(wǎng)絡(luò)測(cè)試開發(fā)所需要使用的開發(fā)工具并介紹了這些開發(fā)工具的具體功能;最后,基于該流程并利用這些開發(fā)工具,詳細(xì)的介紹了開發(fā)流程中自動(dòng)化測(cè)試系統(tǒng)的開發(fā)細(xì)節(jié)。