于 凱,劉斌彬,王振鎖
(聯(lián)合汽車電子有限公司 TC/EHW,上海 200120)
隨著汽車電子技術(shù)的高速發(fā)展,汽車控制器的集成度也越來越高。與普通零部件不同的是控制器的檢測與驗證一般需要借助專門的儀器設備進行。而如何為電子零部件提供一種高效便捷的檢測手段,則成為汽車行業(yè)測試人員所關心的重點之一。
目前汽車控制器的硬件測試需要經(jīng)歷設計驗證、生產(chǎn)驗證以及整車測試驗證。設計與生產(chǎn)階段由零部件廠家的技術(shù)保證產(chǎn)品的正常功能,而產(chǎn)品交付整車后其對汽車電子器件的功能測試則顯得力不從心。整車廠無法了解零部件的內(nèi)部設計原理與測試方法,同時也無法配備零部件廠商專業(yè)的測試設備與專業(yè)的測試人員,導致整車廠商的測試人員無法獨立地完成電子零部件的功能測試與驗證,而依賴于零部件廠商的專業(yè)設備,一般功能先進卻體積龐大,無法及時高效地滿足整車廠的功能驗證需求。
便攜式的控制器硬件測試設備可以幫助用戶便捷地鎖定整車測試中難以判斷的控制器故障問題。并且通過高效的測試系統(tǒng)快速地檢測故障,再通過用戶界面反饋給用戶,實現(xiàn)高效的故障檢測工作,有效減少整車測試時間。
在TCU的全生命周期中,硬件功能測試是其不可或缺的一環(huán)。硬件功能測試可以在設計研發(fā)階段用來驗證樣品設計合理性,在生產(chǎn)階段用來保證產(chǎn)品品質(zhì)符合設計標準,同樣在產(chǎn)品服役期間可以用來實現(xiàn)故障件檢查和狀態(tài)復原等。
為了滿足TCU硬件功能測試的軟硬件需求,結(jié)合控制器整車測試應用時的工況,對測試設備羅列如下基本要求。
1)滿足多平臺TCU的硬件功能測試需求,即具備必要的供電、通信、負載切換、信號測量等基本功能且滿足最大化的資源設計需求。
2)設備應包涵人機交互界面,具備故障提示、測試報告自動生成、測試數(shù)據(jù)本地存儲等功能。
3)設備可實現(xiàn)完全的自動化測試,可根據(jù)預先編寫的測試用例執(zhí)行測試操作,測試過程無需人為干預,可實現(xiàn)一鍵測試。
4)設備具備體積小而便攜的特點,功能上實現(xiàn)不依賴于外部PC而獨立運行。
本文的控制器硬件測試設備的開發(fā)將以上述的基本要求為根本出發(fā)點,滿足設備的功能、便攜、自動化等需求。
TCU硬件測試設備屬于自動化測試設備的一種。自動化測試設備一般由3個主要部分組成:測試設備硬件、測試軟件以及測試用例。其中,測試用例是基于被測控制器原理圖、測試方法以及通用測試系統(tǒng)而開發(fā)出來的測試程序,其中核心的內(nèi)容為測試邏輯與測試邊界值;測試軟件是連接測試設備硬件與測試人員的紐帶,其為用戶編寫測試用例提供標準的軟件環(huán)境,解釋測試程序并調(diào)用軟硬件資源來執(zhí)行測試程序;測試設備是通用測試系統(tǒng)的基礎,其基本組成包括:可調(diào)電源模塊、工控電腦、繼電器矩陣、負載板卡、激勵板卡、測量設備以及通信模塊等。
為滿足功能需求,本文的便攜式測試設備 (miniPAV)硬件設計為兩個部分:上位機硬件和下位控制器硬件。上位機選擇通用型的卡片電腦Raspberry Pi 3B+,其具有體積較小、功耗低、方便集成以及功能全面等優(yōu)點。下位控制器硬件為基于STM32的單片機控制系統(tǒng),其需要結(jié)合設備的測試資源需求和便攜性需求來進行定制化設計,該單片機系統(tǒng)集成控制繼電器矩陣、數(shù)字萬用表、通信模塊、頻率信號發(fā)生器、升壓模塊以及各類電阻負載、感性負載等資源[1-2]。
上位機硬件與下位機硬件之間通過串口線連接,設備整體供電為外部14 V電源供電,上位機預留PC接口用于數(shù)據(jù)拷貝等功能。下位控制器的外部接口用于連接待測控制器,可通過定制的線束將TCU的引腳連接到繼電器矩陣上[3]。miniPAV硬件系統(tǒng)結(jié)構(gòu)如圖1所示。
圖1 miniPAV硬件系統(tǒng)結(jié)構(gòu)圖
下位控制器的設計圍繞矩陣板卡進行,矩陣板卡作為測試資源與待測TCU進行物理連接的媒介是下位控制器的核心硬件部分。本文中矩陣板卡的設計采用橋式連接方式,通過繼電器閉合來實現(xiàn)資源加載與通道連接功能。根據(jù)最大化的控制器測試資源需求設計矩陣板卡規(guī)模為4×150。如圖2所示,定義4根橫線VABC為線橋,150根豎線為線枝。每個線枝都可以通過繼電器 (圖2中每一個點代表一個繼電器開關)與4根線橋相連通,當某線枝在應用場景中無需與某根線橋相連接時,則不配置對應的繼電器以減少設備體積。繼電器應為常開設計,通過下位控制器的mcu控制其單個或多個的閉合操作。圖2中TCU線束接口部分定義了120根線束,其對應了TCU的GPIO引腳、電源輸入輸出引腳、電機驅(qū)動引腳、電磁閥驅(qū)動引腳以及高低邊驅(qū)動引腳等。與TCU的接線則根據(jù)不同TCU平臺的資源需求進行合理分配。miniPAV內(nèi)部線枝則由硬件功能測試的測試需求進行定義,合計30根線枝,每個線枝連接不同的負載資源,其中包括電機負載、電磁閥負載、普通電阻負載、大功率電阻負載、頻率信號以及電源等。
圖2 下位控制器矩陣設計圖示
4路線橋中的V橋為數(shù)字萬用表的測量通道,每一個控制器線束對應一個繼電器開關,以此保證數(shù)字萬用表可以測量每一個控制器接口的電壓。線橋ABC為其他資源連接通道,一般的需要應用其中的兩路來實現(xiàn)兩個控制器接口之間的負載連接,還可以同時滿足三路控制器待測接口的負載連接需求。而電源和搭鐵線以及通信接口則通過其他單獨的幾路通道進行獨立的連接控制以滿足更加安全可靠的設計需求。
miniPAV采用文本化的編程語言提高開發(fā)效率。并通過上下位軟件的分層以及功能模塊化的設計方式,降低軟件的使用門檻和人為錯誤率。
上位軟件采用高級語言Python編寫文本化的測試用例[4],通過函數(shù)式編程順序執(zhí)行,運行環(huán)境為Linux操作系統(tǒng)。上位軟件通過總線通信的方式給下位控制器發(fā)送指令信息來實現(xiàn)對下位硬件資源的控制與測試數(shù)據(jù)的獲取。除了與下位控制軟件進行大量的通信交互,上位軟件還負責設置測試用例中邊界值的設置、錯誤警告、測試數(shù)據(jù)整理以及測試報告生成等。另外,上位軟件還會支持其他擴展功能,如觸摸顯示功能、數(shù)據(jù)上傳云端功能等。
下位控制軟件采用C語言編寫,運行在stm32單片機上,其軟件的功能根據(jù)硬件資源的內(nèi)容進行固化。由于測試用例為運行在上位軟件中并通過指令的形式發(fā)送給下位軟件,因此,下位軟件的首要功能是實現(xiàn)與上位軟件的通信以及對指令的識別功能。在下位軟件接收到上位軟件發(fā)送的指令后,根據(jù)指令的標志位將指令類型分為:硬件執(zhí)行器控制指令、硬件測試數(shù)據(jù)讀取指令以及與控制器信息交互指令。其中硬件執(zhí)行器控制主要控制繼電器矩陣進行指定繼電器的開合操作,以此將資源與控制器接口相連接,實現(xiàn)激勵的加載。硬件測試數(shù)據(jù)的讀取主要由數(shù)字萬用表以及控制器本身完成,測量控制器在不同資源加載的情況下其指定通道上電壓的數(shù)值??刂破餍畔⒔换ブ噶钪饕獙刂破鬟M行內(nèi)部主要芯片的參數(shù)配置、寄存器的讀寫以及常用port口操作等。信息交互的具體內(nèi)容則是根據(jù)控制器通信協(xié)議進行打包的數(shù)據(jù)。
如圖3所示,測試系統(tǒng)的軟件功能邏輯如下:①首先上位機軟件執(zhí)行一條測試用例并將測試用例的內(nèi)容編譯成指令發(fā)送給下位機軟件;②接著,下位機軟件接收到上位機指令后進行指令識別并執(zhí)行,其中有三類執(zhí)行內(nèi)容,一類是下位控制器的資源控制,二類是下位控制器的信息讀取,三類是控制器的信息交互,其中與控制器的信息交互,會得到控制器反饋的數(shù)據(jù);③然后下位軟件根據(jù)不同的執(zhí)行結(jié)果打包發(fā)送給上位軟件;④最后上位軟件接收下位軟件反饋的結(jié)果并作相應的處理并執(zhí)行下一條測試用例。測試用例執(zhí)行完成后,上位機軟件將測試數(shù)據(jù)打包并羅列其中測試結(jié)果錯誤項,提示用戶。
圖3 軟件系統(tǒng)功能框架示意圖
本文通過調(diào)研分析了汽車行業(yè)TCU產(chǎn)品對于便攜式硬件測試設備的業(yè)務需求,分析了現(xiàn)有的自動化測試設備的基本組成?;趯ψ詣踊瘻y試設備研究和總結(jié),提出了一種以橋式繼電器矩陣為核心硬件的控制系統(tǒng)方案,并采用上位機和下位控制器的結(jié)構(gòu)構(gòu)建一套便攜式的控制器硬件測試系統(tǒng)。該系統(tǒng)的應用有望幫助測試人員便捷而準確地完成控制器的故障排查與定位等工作,幫助提高整車測試開發(fā)效率。