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