作者:
沙 文瀚 -
劉 琳 -
一、引言
隨著汽車電子化快速發(fā)展,汽車電子產(chǎn)品的可靠性驗(yàn)證成了重要的課題被一再的優(yōu)化和推進(jìn),電子產(chǎn)品的測(cè)試平臺(tái)也成了加速電子產(chǎn)品研發(fā)進(jìn)度的重要工具和載體。本文通過搭建測(cè)試平臺(tái),針對(duì)不同的車載電子模塊進(jìn)行測(cè)試,提高車載電子產(chǎn)品的開發(fā)進(jìn)度。
二、背景
傳統(tǒng)的測(cè)試儀器是采用單片機(jī)作為控制電路,以 LED 作為指示燈,以各種按鈕作為開關(guān)量輸入的形式,以汽車車身電子控制系統(tǒng)為例,該系統(tǒng)主要包括:燈光控制、電動(dòng)車窗控制、中央門鎖控制、防盜報(bào)警控制、安全氣囊控制、雨刮器控制等,并擁有CAN總線及診斷功能。
如圖一所示,汽車車身電子控制系統(tǒng)需要進(jìn)行功能測(cè)試以保證產(chǎn)品質(zhì)量,測(cè)試人員需要按照模塊的各種功能通過手動(dòng)方式一步一步進(jìn)行測(cè)試,測(cè)試效率低,可靠性差。

圖一 傳統(tǒng)汽車電子產(chǎn)品測(cè)試儀
三、趨勢(shì)
自動(dòng)測(cè)試系統(tǒng)(ATS, Automatic Test System)是指以計(jì)算機(jī)為控制核心,在程序控制下完成某種測(cè)試任務(wù)而組合起來的測(cè)試儀器和其他設(shè)備的有機(jī)整體的總稱。目前的第三代自動(dòng)測(cè)試系統(tǒng)是以虛擬儀器技術(shù)的出現(xiàn)為標(biāo)志。20 世紀(jì) 80 年代 NI 公司首先提出這一概念。虛擬儀器技術(shù)的出現(xiàn)使得軟件在整個(gè)測(cè)試系統(tǒng)中成為重點(diǎn),虛擬儀器技術(shù)在自動(dòng)測(cè)試領(lǐng)域的應(yīng)用使得測(cè)試系統(tǒng)的通用性問題得以解決。
虛擬儀器通常由硬件設(shè)備與應(yīng)用軟件兩大部分構(gòu)成,其結(jié)構(gòu)體系框圖如圖二所示:

圖二 基于虛擬儀器的結(jié)構(gòu)體系
四、構(gòu)成及特點(diǎn)
- 虛擬儀器基本由三大部分構(gòu)成,每部分在其中都起到必不可少的作用,互相關(guān)聯(lián)、互相支持,組成一個(gè)完整的系統(tǒng):
1.1 模塊化的I/O 硬件:分析測(cè)試系統(tǒng)的要求和系統(tǒng)的功能,根據(jù)系統(tǒng)功能的要求,在軟件和硬件之間進(jìn)行優(yōu)化選擇,從而確定儀器所必需的硬件模塊,以便用最少的模塊實(shí)現(xiàn)儀器的最佳功能。根據(jù)應(yīng)用情況與實(shí)際的條件,選擇基于計(jì)算機(jī)的虛擬儀器的儀器模塊以及傳感器、信號(hào)調(diào)理電路、DAQ 數(shù)據(jù)采集、信號(hào)源等模塊;
1.2 高效的軟件:硬件確定以后,主要確定軟件功能模塊,哪些儀器功能由軟件實(shí)現(xiàn),將軟件功能劃分為相對(duì)獨(dú)立的模塊。然后選擇易于編寫的圖形化的軟件平臺(tái)。LabVIEW 平臺(tái)是一種圖形化編程環(huán)境,提供了虛擬儀器的控件、豐富的數(shù)據(jù)處理分析函數(shù)、儀器驅(qū)動(dòng)程序及數(shù)據(jù)庫工具軟件包,LabVIEW 提供的SQL、DataSocket 軟件都是容易建立網(wǎng)絡(luò)化測(cè)試環(huán)境的軟件包。采用LabVIEW 編寫虛擬儀器軟件簡(jiǎn)化了程序設(shè)計(jì),提高了效率。我們利用LabVIEW 和NI 的數(shù)據(jù)采集卡實(shí)現(xiàn)了數(shù)據(jù)采集、虛擬示波器、虛擬信號(hào)發(fā)生器;
1.3 用于集成的軟硬件平臺(tái):NI 首先提出的專為測(cè)試任務(wù)設(shè)計(jì)的PXI 硬件平臺(tái),已經(jīng)成為當(dāng)今測(cè)試、測(cè)量和自動(dòng)化應(yīng)用的標(biāo)準(zhǔn)平臺(tái),它的開放式構(gòu)架、靈活性和PC 技術(shù)的成本優(yōu)勢(shì)為測(cè)量和自動(dòng)化行業(yè)帶來了一場(chǎng)翻天覆地的改革。PXI 作為一種專為工業(yè)數(shù)據(jù)采集與自動(dòng)化應(yīng)用度身定制的模塊化儀器平臺(tái),內(nèi)建有高端的定時(shí)和觸發(fā)總線,再配以各類模塊化的I/O 硬件和相應(yīng)的測(cè)試測(cè)量開發(fā)軟件,就可以建立完全自定義的測(cè)試測(cè)量解決方案。
2. 系統(tǒng)特點(diǎn)如下:
2.1 電壓可調(diào):可自動(dòng)進(jìn)行9~16V電壓輸出遍歷測(cè)試,高、低電壓模擬(0~30V)測(cè)試及發(fā)動(dòng)機(jī)啟動(dòng)電壓模擬測(cè)試;
2.2 可進(jìn)行手動(dòng)、自動(dòng)功能測(cè)試?赏ㄟ^手工操作按鍵模擬各種開關(guān)和變量進(jìn)行測(cè)試;也可通過計(jì)算機(jī)控制各采集卡模擬各種開關(guān)和變量進(jìn)行自動(dòng)測(cè)試,不需人為干預(yù);
2.3 加載模擬負(fù)載、實(shí)際負(fù)載進(jìn)行測(cè)試;一般狀態(tài)下為加載模擬負(fù)載進(jìn)行測(cè)試,并可模擬大電流、過壓保護(hù)測(cè)試等;也可通過變更接線加載實(shí)車負(fù)載進(jìn)行測(cè)試;
2.4 每一個(gè)子功能測(cè)試項(xiàng)均可在各點(diǎn)火狀態(tài)(OFF、ACC、ON、START)下進(jìn)行測(cè)試,增加遍歷性,減少測(cè)試盲點(diǎn);
2.5 測(cè)試過程中,可通過CAN與被測(cè)模塊進(jìn)行通訊,檢測(cè)對(duì)被測(cè)模塊的診斷、刷新數(shù)據(jù)(Boot loader)等功能;
2.6 進(jìn)行測(cè)試數(shù)據(jù)記錄、處理、存儲(chǔ)并自動(dòng)生成測(cè)試報(bào)表,包括測(cè)試電壓、時(shí)間、各測(cè)試項(xiàng)測(cè)試狀態(tài)、故障狀態(tài)等;
五、測(cè)試平臺(tái)總體設(shè)計(jì)
系統(tǒng)目的及目標(biāo):
在項(xiàng)目不同階段需要進(jìn)行不同眾多的測(cè)試內(nèi)容,針對(duì)不同的測(cè)試目的,采取不同的測(cè)試、觀察、 記錄方法,如果針對(duì)每種情況編寫一個(gè)獨(dú)立的測(cè)試程序,則提高程序代碼量,降低程序的通用性,移植性,更不方便整個(gè)測(cè)試系統(tǒng)的管理與測(cè)試用戶選擇應(yīng)用,不利于提高工作效率。為了滿足更多的要求,更方便的應(yīng)用,更人性化的人機(jī)交互界面,建立此系統(tǒng)測(cè)試平臺(tái)。系統(tǒng)結(jié)構(gòu)圖,如圖三所示。

圖三 系統(tǒng)結(jié)構(gòu)圖
六、測(cè)試界面及方法
測(cè)試配置:通過相應(yīng)的配置界面,進(jìn)行測(cè)試模式、測(cè)試層面和測(cè)試單元的配置選擇;圖四、圖五為測(cè)試配置圖。

圖四 測(cè)試配置圖

圖五 測(cè)試配置圖
手動(dòng)測(cè)試:根據(jù)圖形界面完全采取人工控制的方法輸入數(shù)據(jù)?梢葬槍(duì)特定的輸入輸出反復(fù)測(cè)試,觀察分析特定的測(cè)試結(jié)果,方便發(fā)現(xiàn)細(xì)節(jié)問題;但是時(shí)間難以控制,對(duì)有精確時(shí)序要求的測(cè)試基本無能為力,結(jié)果完全靠人工自己判斷是否符合要求,而且測(cè)試速度慢,工作效率低。這種方法基本用于測(cè)試早期,針對(duì)特定要求的測(cè)試,或者在自動(dòng)測(cè)試過程中發(fā)現(xiàn)的問題,而不方便觀察分析的情況。
半自動(dòng)測(cè)試:指由測(cè)試程序讀取一定格式的文件、數(shù)據(jù)庫等測(cè)試輸入數(shù)據(jù)的方式自動(dòng)讀取測(cè)試輸入信號(hào),通過界面顯示一些過程中信號(hào)的變化情況,與結(jié)果輸出信號(hào),并將結(jié)果存放在特定的文件或數(shù)據(jù)庫中,以便觀察分析。此種方法在測(cè)試過程中基本不需要人為干預(yù),測(cè)試的激勵(lì)信號(hào)由程序自動(dòng)產(chǎn)生,但是不能判斷測(cè)試結(jié)果的正確性,只是記錄下測(cè)試結(jié)果的詳細(xì)數(shù)據(jù),需要用戶對(duì)數(shù)據(jù)進(jìn)行分析判別,所以稱之為半自動(dòng)測(cè)試。
全自動(dòng)測(cè)試:系統(tǒng)中測(cè)試的最高階段,整個(gè)測(cè)試過程不需要測(cè)試人員干預(yù),自動(dòng)讀取一定格式的文件、數(shù)據(jù)庫等測(cè)試輸入數(shù)據(jù),自動(dòng)測(cè)試、自動(dòng)與標(biāo)準(zhǔn)結(jié)果相比較智能判斷測(cè)試的通過性,并記錄于特定文件中。用戶開始測(cè)試后只需在測(cè)試完成后檢查結(jié)果文件,就可以很方便的了解測(cè)試的結(jié)果通過性。測(cè)試效率高,結(jié)果簡(jiǎn)潔有效,能快速反應(yīng)問題。測(cè)試軟件本身編寫難度大,以及輸入數(shù)據(jù)文件的編寫。整個(gè)測(cè)試系統(tǒng)提供不同的測(cè)試方法,便于不同階段,不同問題,不同目的,不同速度的測(cè)試,方便用戶根據(jù)實(shí)際情況靈活選擇應(yīng)用,做到一個(gè)測(cè)試系統(tǒng)滿足測(cè)試人員的所有測(cè)試要求。
測(cè)試執(zhí)行如圖六、圖七所示:

圖六 測(cè)試執(zhí)行圖

圖七 測(cè)試執(zhí)行圖
按照前述選擇的手動(dòng)測(cè)試、半自動(dòng)或者全自動(dòng)測(cè)試,選擇測(cè)試配置,通過點(diǎn)選開關(guān)組合或者讀取輸入信號(hào)文件等方式,開始功能測(cè)試,并給出測(cè)試結(jié)論。
七、測(cè)試輸入信號(hào)的產(chǎn)生
數(shù)字系統(tǒng)得測(cè)試一般比較復(fù)雜,需要復(fù)雜的測(cè)試信號(hào),信號(hào)由多位不同的邏輯值組成,成為測(cè)試圖形,它必須覆蓋所有測(cè)試要求中可能出現(xiàn)的情況,產(chǎn)生較復(fù)雜的測(cè)試圖形的一種重要方法就是存儲(chǔ)響應(yīng)(Stored Response)法,它把需要的標(biāo)準(zhǔn)圖形存入大容量的存儲(chǔ)器中,測(cè)試時(shí)先調(diào)入告訴緩沖存儲(chǔ)器,然后按要求的條件取出以供測(cè)試。
針對(duì)該系統(tǒng),源信號(hào)設(shè)定為每10ms一組信號(hào),每個(gè)測(cè)試文件的測(cè)試信號(hào)序列是依照一條或多條需求分析,在方便觀察的基礎(chǔ)上編寫而成,信號(hào)序列沒有必然的聯(lián)系,必須采取存儲(chǔ)響應(yīng)法產(chǎn)生激勵(lì)信號(hào),但是對(duì)每10ms一組數(shù)據(jù),則源信號(hào)數(shù)據(jù)文件龐大,而且人為編寫麻煩、耗時(shí)、效率低、容易出錯(cuò),并讀進(jìn)高速緩沖時(shí)占用空間大影響程序運(yùn)行速度。為了解決這種問題,結(jié)合信號(hào)的特點(diǎn):為了驗(yàn)證功能而且讓人工測(cè)試能看清,并且程序有一些時(shí)間參數(shù),每組信號(hào)一般持續(xù)一段時(shí)間,采用以下方法處理,如圖八所示:

圖八 信號(hào)處理
程序首先讀取數(shù)據(jù)文件進(jìn)內(nèi)存,分開時(shí)間序號(hào)與信號(hào)數(shù)據(jù),利用時(shí)間序號(hào)數(shù)組實(shí)現(xiàn)對(duì)產(chǎn)生激勵(lì)信號(hào)的控制:后一個(gè)時(shí)間序號(hào)值減去前一個(gè)值即為前面信號(hào)保持的時(shí)間跨度,為了保證結(jié)束信號(hào)的正確產(chǎn)生并值產(chǎn)生一次,利用結(jié)束信號(hào)序列值加1相減可得。
利用兩個(gè)循環(huán)實(shí)現(xiàn)自動(dòng)產(chǎn)生的功能,外部循環(huán)是信號(hào)變化的情況,每變化一次循環(huán)加一,只有在此條件下,才會(huì)更改送進(jìn)循環(huán)的信號(hào)值——array2;內(nèi)部循環(huán)即為在信號(hào)保持時(shí)間內(nèi),利用序列差值控制產(chǎn)生相同信號(hào)的次數(shù),即控制持續(xù)時(shí)間?梢岳脜(shù)millseconds to wait控制每組信號(hào)的間隔時(shí)間,在本系統(tǒng)中設(shè)默認(rèn)值為10(ms)。通過此程序即可以實(shí)現(xiàn)每10ms產(chǎn)生一組信號(hào)給array3,利用此信號(hào)序列時(shí),即可從array3引出。
程序通過軟件的方法在保證產(chǎn)生正確激勵(lì)信號(hào)的基礎(chǔ)上,讓程序員從龐大的數(shù)據(jù)文件中解放出來,并且比原來數(shù)據(jù)更容易觀察、理解;提高了文檔的可讀性;大大減少了存取空間的利用,提高了程序運(yùn)行速度,提高工作效率。
八、測(cè)試輸出結(jié)果的處理
測(cè)試結(jié)果的要求分析:測(cè)試的基礎(chǔ)是需求分析,為了驗(yàn)證程序的正確性,必須達(dá)到需求分析的功能要求與精度要求;測(cè)試數(shù)據(jù)的設(shè)計(jì)基礎(chǔ)是需求分析文檔,達(dá)到的效果為智能判斷需求的通過性顯示給用戶并存檔以供查詢分析。
測(cè)試結(jié)果的記錄方式:在實(shí)際的結(jié)果數(shù)據(jù)產(chǎn)生并記錄過程中,由于是循環(huán)的測(cè)試,會(huì)產(chǎn)生大量的相同的測(cè)試結(jié)果數(shù)據(jù),在測(cè)試的結(jié)果中,需要自動(dòng)處理相應(yīng)的結(jié)果數(shù)據(jù),并標(biāo)記重復(fù)出現(xiàn)和偶爾出現(xiàn)的結(jié)果。在前述中(測(cè)試界面及方法:半自動(dòng)測(cè)試與自動(dòng)測(cè)試),輸入信號(hào)是測(cè)試程序讀取一定格式的文件、數(shù)據(jù)庫等方式自動(dòng)讀取,測(cè)試輸出數(shù)據(jù)是由每周期產(chǎn)生的一組的詳細(xì)結(jié)果數(shù)據(jù)轉(zhuǎn)化為輸入信號(hào)同樣格式的數(shù)據(jù),主要是對(duì)輸出數(shù)據(jù)不發(fā)生變化的時(shí)間段內(nèi)進(jìn)行簡(jiǎn)化。如圖九所示。

圖九 數(shù)據(jù)簡(jiǎn)化過程圖
程序采用順序結(jié)構(gòu),保證程序運(yùn)行的時(shí)序性,避免結(jié)果混亂。程序采用有效數(shù)組追加方式組建轉(zhuǎn)換后的結(jié)果數(shù)組testresult,先初始化一個(gè)空的二維數(shù)字?jǐn)?shù)組,將原數(shù)組2ddata的起始數(shù)據(jù)第一個(gè)加到數(shù)組中,在中間階段采取循環(huán)處理原數(shù)組中的每組數(shù)據(jù)。由于中間階段只記錄改變的信號(hào),所以結(jié)果數(shù)組只能記錄到信號(hào)最后一次變化時(shí)的時(shí)刻與信號(hào)。但不能明確知道最后信號(hào)的持續(xù)時(shí)間、整個(gè)信號(hào)的結(jié)束時(shí)刻。當(dāng)信號(hào)發(fā)生突變,此處即為信號(hào)改變點(diǎn)。此時(shí)記錄的信號(hào)就已經(jīng)完整,但這種情況比較少。通過對(duì)中間階段最后記錄的信號(hào)序號(hào)與原數(shù)組2ddata的最大序號(hào)相比較即可判斷中間階段的數(shù)據(jù)是否完整。不完整的情況下,直接通過原數(shù)組獲得最后時(shí)刻的數(shù)據(jù)與序號(hào)加入到新的結(jié)果數(shù)組中。
至此完成了對(duì)每10ms一組數(shù)據(jù)的龐大數(shù)據(jù)量轉(zhuǎn)化為以時(shí)序表征的結(jié)果數(shù)組。達(dá)到與輸入數(shù)組的格式統(tǒng)一,方便后期的智能化處理以及節(jié)約存取空間的效果。圖十為數(shù)據(jù)處理后存取空間圖。

圖十 數(shù)據(jù)簡(jiǎn)化及存取圖
根據(jù)測(cè)試的結(jié)果,可以看出以下規(guī)律,即結(jié)果數(shù)據(jù)程序處理方式為:
- 記錄開始信號(hào)以及相對(duì)時(shí)間零點(diǎn);
- 過程中信號(hào)每次變化的時(shí)間與變化后的信號(hào);
- 結(jié)束信號(hào)的時(shí)間及信號(hào)值。
- 、總結(jié)
通過該測(cè)試平臺(tái),可以方便地修改配置程序及信號(hào)輸入文件,針對(duì)不同的車載電子模塊進(jìn)行手動(dòng)、半自動(dòng)乃至全自動(dòng)測(cè)試,且通過內(nèi)置的算法,將龐大的測(cè)試結(jié)果加以處理及簡(jiǎn)化,便于測(cè)試人員實(shí)際使用,能大大提升車載電子產(chǎn)品的開發(fā)進(jìn)度,滿足電子技術(shù)在汽車領(lǐng)域特殊的時(shí)效性、可靠性要求,有著較強(qiáng)的通用性和使用性。
|