陳春 吳育華 熊亮



摘 要:討論了汽車超容模組的測試要求和方法,介紹了基于策略模式的自動化測試系統設計方案及各功能模塊的實現。采用了分層、分模塊的軟件設計思想,使用了面向對象的編程語言Java,在Eclipse RCP框架的基礎上快速搭建出了基于策略模式的自動化測試系統。將不同的測試功能封裝成不同的測試用例,并支持設置測試參數,保證了系統的靈活性和擴展性。硬件使用了多種上位機擴展板卡和測試設備,并根據A/D采樣擴展板的采樣頻率計算出了超容放電精確時間。系統操作簡單,測試效率高,具有較高正確性和穩定性,經受住了生產測試的反復驗證。
關鍵詞:超容模組;自動測試;面向對象;設計模式
1 引言
現階段使用超級電容啟動的燃油或混合動力汽車越來越多[1],它不僅可以延長汽車蓄電池使用壽命,降低汽車怠速油耗,而且可以很好的提升汽車駕駛體驗[2]。沃爾沃公司的某款混合動力汽車啟動時使用的就是稊米汽車公司為其量身定制的超容模組,它包含五個串聯超容單體和一個保護控制電路板,對外輸出12V電壓,啟動瞬間電流可達150A以上,一次充電可滿足汽車啟動四次的需要。超容模組串聯在汽車蓄電池和啟動電機之間,啟動時完全依賴超容供電,從而徹底避免了啟動放電對蓄電池造成的不利影響,接線方式如下圖所示:
汽車工業對電子零部件的質量有著極高的要求,超容模組的作用是為汽車啟動提供電能,一旦出現故障汽車就無法啟動,嚴重影響汽車出行安全。為保證每件超容模組穩定、可靠,出廠前的功能測試是必不可少的,測試涉及三項功能,即:充放電、靜態電流和反向支撐。充電測試用于驗證超容充滿電后電壓和放電后測量的電壓是否在預期范圍內;靜態電流測試用于驗證待機和休眠時輸出電流是否足夠小,避免存在漏電的可能性;反向支撐測試用于驗證超容工作電流大小和持續時間是否達到啟動電機工作要求。由于測試過程復雜,為滿足大批量生產制造需要,一套全自動的測試系統是必不可少的,下文將詳細闡述其設計和實現原理。
2 系統控制流程
本系統的上位機安裝了I/O擴展板卡和A/D采樣擴展板卡,前者用于繼電器斷開閉合狀態查詢和控制,后者用于超容模組A、B、Umeas三個端子和A端子外接導線上CT電壓值的實時監測。除工控機外,測試使用的儀器還包括:可編程直流電源、高精度數字萬用表、電子負載,具體連接關系如下圖所示:
所有繼電器初始狀態均為斷開,當繼電器K1、K2、S1閉合時超容模組開始充電執行充電測試,繼電器K2、K3閉合時超容模組進入休眠狀態執行靜態電流測試,繼電器S1、K1閉合時超容模組開始放電執行反向支撐測試。
3 軟件設計
3.1 總體設計方案
在自動測試系統中,軟件提供用戶與測試設備之間、測試程序與控制模型之間的操作接口,負責解釋執行與測試系統相關的控制模型,是整個測試系統的核心[3]。為了提高軟件的通用性、可移植性和擴展性,系統采用了分層、分模塊的設計思想,從上至下依次為:應用層、業務邏輯層、基礎組件層和數據存儲層,如下圖所示:
應用層提供完整的人機交互界面,輔助用戶完成測試控制和管理;業務邏輯層包含測試邏輯、用例數據、設備數據、測試數據、權限數據訪問接口;基礎組件層包含了儀器設備和數據庫訪問接口,其上層使用時無需了解儀器設備操作原理[3];數據存儲層MySQL數據庫存儲了設備信息、設備參數、測試用例庫、測試結果、用戶權限等信息,系統配置包括測試儀器通信和界面操作習慣參數。系統使用Java語言開發,采用Eclipse RCP框架作為快速實現人機界面的手段。
3.2 關鍵技術
3.2.1 儀器通信與擴展板控制
充電測試使用RJ45網口與GW INSTEK可編程直流電源通信,使用Socket通信接口向固定IP地址和端口發送命令字符串,例如:輸出15V電壓和30A電流的命令為“:APPL 15.0,30.0”。靜態電流的測量使用RS232串口與FLUKE高精度數字萬用表通信,使用Javax擴展的串口通信接口,例如:查詢電流為“MEAS:curr:dc?”。超容放電使用USB口與Chroma電子負載通信,使用JNA本地調用接口調用NIVISA函數庫[4]發送命令,例如:啟動命令為“LOAD ON”,停止命令為“LOAD 0”。研華I/O擴展板卡使用自帶的Java驅動程序庫對繼電器狀態進行查詢和控制。A/D采樣擴展板卡調用本地NIDAQmx函數庫設置采樣參數、執行和停止采樣。
3.2.2 測量與計算
系統中A/D采樣擴展板卡最大頻率為10000Hz,存在量測噪聲[3],下圖左側是在充電過程中每間隔1秒量測的UB瞬時值繪制的趨勢圖,上下波動十分明顯,而根據超容的物理特性可知在充滿之前電壓只會上升,不會下降,這顯然是受到了量測噪聲影響。為了避免噪聲帶來的影響,我們將量測瞬時值改成平均值,即每次采集10個點的數據,將它們的平均值作為量測值繪制出下圖右側趨勢線,結果和理論預期效果一致。
反向支撐測試中超容模組放電時間的統計是另外一個無法直接量測的值,模組的放電時間比電子負載設置的放電時間要小,而電子負載沒有統計實際放電的時間。因此我們嘗試使用A/D采樣擴展板卡采樣頻率穩定的特點來間接計算放電時間,即先根據頻率推算出兩次采樣時間間隔為100微秒,然后統計出放電過程中采樣點大于等于放電電流的點數N,即可算出總放電時間為N×100微秒。經多次實驗反復驗證,該方法的統計精度和穩定性均滿足測試要求。
3.2.3 設計模式
測試邏輯層采用面向對象的策略模式,即把這些測試方法都封裝成一個類,它們都實現相同的接口。其優點是可以靈活的添加新用例或對現有的用例進行升級替換,而不影響原有的功能,既滿足高內聚低耦合的設計原則,又可最大程度上復用現有代碼。
3.3 人機界面
執行測試時,用戶需在窗口左側掃描輸入產品條碼,條碼校驗通過后自動啟動測試。測試過程中“控制臺”界面會輸出繼電器動作信息和電流電壓測量值,一旦某個用例不通過立即彈出警告提示框終止測試,測試完可在下方“測試用例”表格中查看測試數據和結果。“查詢記錄”界面可查詢歷史記錄、導出測試報告。“用例配置”界面可為不同型號配置測試用例,如圖5所示。
4 結果
根據超容模組設計要求充電測試須在90秒內完成,且電壓在13.2±0.2V范圍內;待機和休眠電流分別小于0.1A和0.1mA;當放電電流分別為280A、200A、500A時反向支撐時間分別在[15, 25]毫秒、[30, 45]毫秒、小于500微秒范圍內。當某件產品三項測試全部通過時認定為合格,否則只要一項不通過就認定為不合格。本系統經受住了1000件以上產品測試的驗證,能夠100%發現超容模組的產品缺陷,為產品質量提供了強有力的技術支撐。
5 結論
本系統通過控制多種儀器設備實現了汽車超容模組功能的自動化測試,界面友好,操作簡單,系統穩定可靠,經受住了長時間生產運行的考驗。利用均值處理消除了A/D采樣噪聲,利用A/D采樣頻率精確計算了超容放電時間。系統設計靈活,擴展性好,可根據產品型號配置測試邏輯和判斷條件,最大程度上復用了原有功能代碼,對其它自動化測試系統的設計、開發有較高的參考價值。
參考文獻:
[1]趙旭哲.混合動力汽車用超級電容及其關鍵技術的探討[J].汽車實用技術,2014(10):82-87.
[2]王鑫.超級電容器在汽車啟動中的應用[J].國外電子元器件,2006(05):57-59.
[3]楊文,黃文濤.通用自動測試系統的軟件設計與實現[J].工業控制計算機,2012,25(01):79-83.
[4]王海霞,顏桂定,李寶輝,劉曉燕,王軼.直線電機運動控制系統的軟件設計與實現[J].電子測量與儀器學報,2013,27(03):264-269.
作者簡介:陳春(1980-),男,湖北孝感人,工程碩士,工程師中級,研究方向:軟件工程。