張德俊 段明海
摘 要:為了實(shí)現(xiàn)對(duì)汽車雙電池系統(tǒng)隔離器(BSR)出廠測(cè)試功能,設(shè)計(jì)了隔離器測(cè)試系統(tǒng)上位機(jī)控制控制平臺(tái)。該平臺(tái)基于MFC設(shè)計(jì)界面,采用多線程技術(shù)。通過CAN總線和USB通信實(shí)現(xiàn)數(shù)據(jù)交互功能,并通過圖形化方式表現(xiàn)測(cè)試過程。下位機(jī)單片機(jī)以英飛凌XC2234芯片為核心,將采集到的繼電器技術(shù)參數(shù)通過CAN報(bào)文發(fā)送到上位機(jī)。實(shí)現(xiàn)對(duì)繼電器的吸合電壓、斷開電壓、延時(shí)時(shí)間等主要技術(shù)參數(shù)的檢測(cè)。經(jīng)工廠實(shí)際運(yùn)行調(diào)試,人機(jī)交互體驗(yàn)良好,測(cè)量數(shù)據(jù)精準(zhǔn),能很好滿足隔離器的測(cè)試要求。
關(guān)鍵詞: 隔離器;CAN總線;參數(shù)測(cè)試;界面交互
文章編號(hào): 2095-2163(2019)03-0137-05 中圖分類號(hào): TM933 文獻(xiàn)標(biāo)志碼: A
0 引 言
雙電池隔離器設(shè)計(jì)用于雙電池系統(tǒng),用以保護(hù)車輛電池充電放電。 雙電瓶隔離器有2種基本的操控特性: 輔助發(fā)動(dòng)機(jī)啟動(dòng),當(dāng)啟動(dòng)開關(guān)打開時(shí),優(yōu)先采用主電瓶啟動(dòng)。如果主電池電壓低于輔助電池電壓,電瓶隔離器將接通輔電瓶以輔助發(fā)動(dòng)機(jī)啟動(dòng)。主電瓶滿電電壓達(dá)到13~13.5 V時(shí),電瓶隔離器會(huì)接通2個(gè)電瓶給副電瓶充電。如果主電瓶從接通的電瓶系統(tǒng)中取電致使系統(tǒng)電壓降至低于12.4~12.9 V時(shí),雙電池分離器將斷開2個(gè)電瓶間的通聯(lián),可以保護(hù)另一個(gè)電瓶的電不被耗盡。在控制電路中整合了延遲功能,可避免電瓶隔離器對(duì)瞬間的電壓波動(dòng)做出響應(yīng)。該隔離器廣泛應(yīng)用于汽車供電系統(tǒng)中。測(cè)試系統(tǒng)模擬實(shí)際工況,上位機(jī)測(cè)試軟件控制程控電源的輸出,在一個(gè)測(cè)試周期內(nèi)根據(jù)繼電器的型號(hào),電壓有一個(gè)相應(yīng)范圍上升階段和下降階段。電壓上升階段由下位機(jī)采集硬件檢測(cè)到繼電器吸合,捕捉對(duì)應(yīng)的吸合電壓。轉(zhuǎn)而進(jìn)入電壓下降階段,同理捕捉斷開電壓。測(cè)試完畢后顯示出吸合電壓(Pick Up Voltage)、斷開電壓(Drop Out Voltage)和時(shí)間延遲(Time Delay)等結(jié)果,并通過和設(shè)定的吸合電壓范圍、斷開電壓范圍比較來判斷產(chǎn)品是否合格。
1 測(cè)試系統(tǒng)總體設(shè)計(jì)
測(cè)試系統(tǒng)工作原理圖如圖1所示。上位機(jī)軟件、程控電源、BSR測(cè)試對(duì)象、下位機(jī)等組成一個(gè)完整的雙電池系統(tǒng)分離器測(cè)試系統(tǒng)。上位機(jī)與程控電源采用USB通信(支持SCPI命令),下位機(jī)與BSR之間采用CAN通信。整個(gè)測(cè)試系統(tǒng)合理排布在測(cè)試臺(tái)架上。
1.1 程控電源
可編程任意電源就是某些功能或參數(shù)可以通過計(jì)算機(jī)軟件編程控制的電源。例如,當(dāng)超過最大輸出電壓的時(shí)候?yàn)楹懔鬏敵?,?dāng)超過最大輸出電流的時(shí)候,電源就變成了穩(wěn)壓源等等?!翱删幊獭奔匆庵鸽娫磧?nèi)部主要功能通過上位機(jī)設(shè)定狀態(tài)字實(shí)現(xiàn)可控,大部分的電源是通過串口連接的。可通過通訊規(guī)約,設(shè)定“最大電流、最大電壓、最大功率、實(shí)際電壓”等等??删幊倘我怆娫吹闹饕笜?biāo)是編程時(shí)間、編程精度、編程分辨率等等。在普通模式下,電壓通過導(dǎo)線直接加載在負(fù)載上,從而保持負(fù)載電壓的穩(wěn)定。由于負(fù)載電流會(huì)在連接導(dǎo)線上產(chǎn)生壓降,因而實(shí)際負(fù)載電壓應(yīng)等于電源輸出電壓減去該壓降。
在一些輸出為低電壓、大電流的場(chǎng)合,電源的輸出連接導(dǎo)線上形成的壓降已不能忽略。如電源設(shè)定輸出為3.3 V/1 A,假設(shè)輸出線的電阻是0.3 Ω,就會(huì)在導(dǎo)線上形成0.3 V的壓降,那么實(shí)際到達(dá)的電壓變?yōu)?.0 V,這足以導(dǎo)致輸出到隔離器的電壓不精確。類似于萬用表測(cè)電阻時(shí)的四線測(cè)量法,研究需要對(duì)導(dǎo)線壓降進(jìn)行補(bǔ)償。為此,可使用SENSE端子直接測(cè)量負(fù)載兩端電壓。由于SENSE導(dǎo)線中的電流很小,因而產(chǎn)生的電壓降可以忽略,即電源設(shè)備感應(yīng)的電壓實(shí)際上就是真正的負(fù)載電壓,這樣電源設(shè)備將提高自己的輸出,使其等于導(dǎo)線壓降和所需負(fù)載電壓之和,從而實(shí)現(xiàn)對(duì)于導(dǎo)線壓降的補(bǔ)償,使負(fù)載真正獲得所設(shè)定電壓值。有以下優(yōu)點(diǎn):
(1)DH1766系列直流電源可提供優(yōu)異的輸出精度及置信度,在特定應(yīng)用場(chǎng)合可替代電壓表、電流表和基礎(chǔ)供電電源的組合,一臺(tái)電源完成全部測(cè)試;并且擁有超低的紋波噪聲,紋波有效值低于1 mV,峰值小于6 mV。
(2)DH1766系列直流電源具有超快的瞬態(tài)響應(yīng),響應(yīng)時(shí)間小于50 uS,可為動(dòng)態(tài)負(fù)載提供穩(wěn)定的輸出電壓。當(dāng)負(fù)載快速變化引起輸出跌落或過沖時(shí),DH1766系列電源可快速恢復(fù)到穩(wěn)定狀態(tài),滿足動(dòng)態(tài)負(fù)載的正常測(cè)試。
1.2 雙電池隔離器
本文測(cè)試對(duì)象為一種新型雙電池隔離器,其輸出端分別與主電池和輔助電池的正極連接,雙電池隔離器包括微控制器以及分別與微控制器連接的信號(hào)輸出電路、電壓監(jiān)測(cè)電路以及機(jī)械開關(guān)電路,機(jī)械開關(guān)電路分別與主電池和輔助電池的正極連接。使得駕駛員能夠獲得更多關(guān)于汽車電池的信息,讓整個(gè)電池管理系統(tǒng)更易于管理與控制。
2 下位機(jī)硬件設(shè)計(jì)
數(shù)據(jù)的采集與處理,通信模塊的接收與發(fā)送是基于英飛凌公司XC2234控制器設(shè)計(jì)的。XC2234是一款16/32位單芯片微控制器,該控制器片上有MultiCAN接口,帶有2個(gè)可同步的A/D轉(zhuǎn)換器,可以提供多達(dá)16個(gè)通道,16路捕獲/比較通道。完全能夠滿足本系統(tǒng)的要求。
2.1 A/D采集電路與狀態(tài)檢測(cè)電路
A/D采集電路如同圖2所示,模擬最大輸入設(shè)計(jì)電壓為36 V,精密電阻分壓R46/R70=6.2,R70=1 K,R46=6.2 K。模擬量電壓經(jīng)分壓和跟隨電路輸入到12位A/D,A/D模擬電壓輸入范圍0~5 V,狀態(tài)檢測(cè)電路如圖3所示,同時(shí)采集繼電器狀態(tài)量高位為12 V,單片機(jī)不能直接檢測(cè),故用肖特基二極管BAT54S鉗位在0~5 V。
MCU將采集的信號(hào)通過CAN總線傳入上位機(jī)。狀態(tài)檢測(cè)電路如圖4所示。實(shí)時(shí)采集繼電器輸入端(Point a)和輸出端(Point b)的電壓繼電器狀態(tài)捕捉:繼電器設(shè)計(jì)有狀態(tài)測(cè)點(diǎn),測(cè)點(diǎn)出現(xiàn)上升沿,繼電器吸合;測(cè)點(diǎn)出現(xiàn)下降沿,繼電器斷開。下位機(jī)捕捉2種測(cè)試點(diǎn)對(duì)應(yīng)時(shí)刻的輸入點(diǎn)的電壓、即為動(dòng)作電壓,上升沿對(duì)應(yīng)吸合電壓,下降沿對(duì)應(yīng)斷開電壓。下位機(jī)采集與處理的數(shù)據(jù)打包通過CAN總線,實(shí)現(xiàn)與上位機(jī)的實(shí)時(shí)通信。
2.2 電源電路
電源電路如圖5所示,在電源輸入端加了一個(gè)二極管,如若電源正負(fù)極接反,就可以使得電路不會(huì)導(dǎo)通,從而保護(hù)后級(jí)電路。由于本系統(tǒng)中傳感器最低驅(qū)動(dòng)電壓為9 V,因此選用了電壓可調(diào)的開關(guān)型降壓穩(wěn)壓器LM2576-5,固定輸出5 V電壓。給主芯片和和CAN收發(fā)器等IC供電。
2.3 CAN通信電路
CAN通訊節(jié)點(diǎn)由CAN控制器、CAN收發(fā)器、終端電阻、防靜電(Electro-Static Discharge, ESD)保護(hù)電路組成。微控制器Infineon XC2234集成了MultiCAN模塊 CAN總線收發(fā)模塊選用英飛凌公司TLE6250GV33,該器件可為總線和 CAN 控制器分別提供差分發(fā)射能力和差分接收能力,信號(hào)傳輸速率高達(dá) 1 兆位每秒 (Mbps)。 CAN通信電路如圖6所示。圖6中,CAN0-TxD和CAN0-RxD分別對(duì)應(yīng)CAN控制器的發(fā)送與接收。在CANL和CANH接入阻值為120 Ω的終端保護(hù)電阻即為圖6中R17,并增強(qiáng)CAN總線通訊的可靠性與抗干擾能力。
3 下位機(jī)軟件設(shè)計(jì)
3.1 通信協(xié)議設(shè)計(jì)
數(shù)據(jù)有線傳輸時(shí),主控制器等待CAN進(jìn)入中斷。進(jìn)入中斷后,通過CAN收發(fā)器CAN高和CAN低進(jìn)行數(shù)據(jù)的發(fā)送與接收。采集的數(shù)據(jù)以CAN報(bào)文的形式發(fā)送到上位機(jī),報(bào)文格式見表1。下位機(jī)接收到上位機(jī)發(fā)送的Stop/Start后,下位機(jī)回復(fù)相應(yīng)Stop/Star。如果接收到Start命令后則發(fā)送相應(yīng)的數(shù)據(jù)報(bào)文,數(shù)據(jù)幀類型采用標(biāo)準(zhǔn)幀,幀ID為11位二進(jìn)制。不同ID代表不同的參數(shù)。CAN通信的流程圖如圖7所示。
3.2 數(shù)據(jù)采集電路軟件設(shè)計(jì)
采集端軟件設(shè)計(jì)主要任務(wù)可分述如下:
(1)配置好驅(qū)動(dòng)底層電路,實(shí)現(xiàn)對(duì)電壓信號(hào)進(jìn)行A/D轉(zhuǎn)換處理。
(2)對(duì)采集到的數(shù)據(jù),采用中位值平均濾波法進(jìn)行濾波處理,消除因脈沖干擾引起的采樣偏差。
(3)將濾波處理過的數(shù)據(jù)進(jìn)行數(shù)據(jù)打包處理,然后通過CAN將數(shù)據(jù)傳輸至上位機(jī)。
A/D轉(zhuǎn)換請(qǐng)求模式采用掃描的轉(zhuǎn)換啟動(dòng)模式,掃描請(qǐng)求源可以處理多路的轉(zhuǎn)換信號(hào),本次設(shè)計(jì)用到CH0和CH1兩個(gè)通道。利用ADC0_vStartParReq ChNum()開啟對(duì)應(yīng)的通道,ADC0_vSetLoadEvent()產(chǎn)生加載事件。2個(gè)通道的轉(zhuǎn)換結(jié)果保存在對(duì)應(yīng)結(jié)果寄存器。但在模擬量采集時(shí),信號(hào)存在誤差與干擾,軟件設(shè)計(jì)時(shí)必須去除這些因素,即軟件濾波處理。構(gòu)造數(shù)組,依次采集5個(gè)A/D值存入數(shù)組,采用中值濾波函數(shù),去掉最大和最小值后求得A/D值的平均值,有CAN報(bào)文轉(zhuǎn)發(fā)到上位機(jī)。其設(shè)計(jì)流程如圖8所示。
4 上位機(jī)軟件設(shè)計(jì)
上位機(jī)是基于MFC開發(fā)的,MFC是微軟公司推出的類庫,以C++類的形式封裝。這些類庫封裝了豐富的Windows應(yīng)用程序編程接口(API)、ODBC數(shù)據(jù)訪問的功能。因此選用MFC作為GUI界面的界面工具。
4.1 用戶測(cè)試界面交互設(shè)計(jì)
如圖9所示。友好的人機(jī)交互界面可以使操作人員對(duì)不同的產(chǎn)品參數(shù)進(jìn)行方便配置,在測(cè)試中動(dòng)態(tài)地監(jiān)測(cè)系統(tǒng)的運(yùn)行狀態(tài)。同時(shí),對(duì)研發(fā)得到的功能設(shè)計(jì)可闡釋解析如下。
(1)界面圖像顯示功能:輸入端(Point a)和輸出端(Point b)的電壓,和繼電器測(cè)試點(diǎn)電壓圖像實(shí)時(shí)顯示功能,操作人員觀察電壓走勢(shì)就可大致判斷隔離器合格性。
(2)繼電器狀態(tài)示意功能:?jiǎn)蔚秵螖S模擬繼電器的開合。直觀觀察繼電器在測(cè)試周期的狀態(tài)。在配置頁面根據(jù)不同的產(chǎn)品型號(hào),可設(shè)置程控電源輸出電壓上升和下降的范圍。測(cè)試結(jié)果判定的吸合電壓范圍、斷開電壓范圍和延時(shí)時(shí)間。一個(gè)測(cè)試周期結(jié)束后,繼電器的相關(guān)的測(cè)試參數(shù)(吸合電壓,斷開電壓,延時(shí)時(shí)間),測(cè)試通過性(PASS和FAIL)在結(jié)果區(qū)顯示。
4.2 文件管理
文件管理主要是繼電器參數(shù)數(shù)據(jù)輸出功能。
每次測(cè)試的結(jié)果自動(dòng)記錄到按照日期為文件名的Excel表格,做到產(chǎn)品檢測(cè)結(jié)果記錄與可追溯。使用技術(shù)ODBC是基于Windows環(huán)境的一種數(shù)據(jù)庫訪問的接口標(biāo)準(zhǔn)。也可以訪問Excel表這類非數(shù)據(jù)庫對(duì)象。
4.3 上位機(jī)軟件結(jié)構(gòu)設(shè)計(jì)
上位機(jī)軟件基于 VS C++語言開發(fā)的用戶界面程序,由于需要處理大量的IO操作(CAN通信和USB),提高程序的運(yùn)行效率,故采用多線程編程。對(duì)此可做探討論述如下。
(1)主線程:主線程的核心功能是一些通信配置,主要包括與下位機(jī)CAN轉(zhuǎn)USB通信和與程控電源USB通信。界面相關(guān)參數(shù)的初始化。MFC的應(yīng)用程序都是基于事件驅(qū)動(dòng)而工作的,消息映射是一種把消息映射到相應(yīng)的消息函數(shù)的機(jī)制。例如,處理不同按鈕消息(Config,list等)對(duì)應(yīng)不同消息響應(yīng)函數(shù)。利用TeeChart控件實(shí)現(xiàn)繪圖功能。
(2)第二線程:為了進(jìn)行CAN報(bào)文的實(shí)時(shí)接收與解析,USBCAN卡采用ZLG的USB接口CAN卡,并且提供了封裝好的CAN相關(guān)的二次開發(fā)函數(shù)庫,如:VCI_StartCAN()用來啟動(dòng)USB-CAN,VCI_Receive()用來接收CAN數(shù)據(jù),VCI_Transmit()用來發(fā)送CAN數(shù)據(jù)。
(3)第三線程:?jiǎn)为?dú)開辟一個(gè)線程,控制程控電源的電壓輸出,電壓輸出的設(shè)計(jì)流程如圖10所示。
首先在初始化中選擇BSR的型號(hào)。根據(jù)上、下限和步長(zhǎng),會(huì)生成一個(gè)電壓上升數(shù)組Array_VolDataRise和電壓下降數(shù)組Array_VolDataFall,并通過數(shù)組指針Num_ArrayPoint調(diào)用,一旦檢測(cè)到按時(shí)按鈕按下,上位機(jī)通過USB通信向程控電源發(fā)送電壓輸出命令,每隔500 ms調(diào)用一次。在電壓上升階段,會(huì)持續(xù)判斷來自下位機(jī)發(fā)送的測(cè)試點(diǎn)狀態(tài)量,一旦接收到上升沿。記錄對(duì)應(yīng)的電壓值、即為吸合電壓,并立即轉(zhuǎn)向電壓下降階段,同理發(fā)送下降電壓,接收到下降沿的時(shí)刻所對(duì)應(yīng)的電壓、即為斷開電壓。由于
BSR有延時(shí)功能,計(jì)時(shí)器開始計(jì)時(shí),記為TimeEnd1,直到繼電器完全斷開時(shí)刻,記為TimeEnd2。則該產(chǎn)品的延時(shí)時(shí)間為:
Gauge_DelayTime=TimeEnd2-TimeEnd1
5 結(jié)束語
本文通過分析汽車雙電池系統(tǒng)隔離器的工況,提出了一種利用上位機(jī)控制程控電源輸出到測(cè)試對(duì)象(BSR),下位機(jī)采集相關(guān)技術(shù)參數(shù)的測(cè)試方案。與采用傳統(tǒng)手動(dòng)控制電源相比,操作更加方便,測(cè)量更加準(zhǔn)確,極大地提高了生產(chǎn)率。
參考文獻(xiàn)
[1]杜華程, 許同樂, 黃湘俊, 等. 基于CAN總線的智能傳感器節(jié)點(diǎn)設(shè)計(jì)與應(yīng)用[J]. 傳感器與微系統(tǒng),2015,34(2):82-84.
[2] 董佳星,劉妹琴, 董臻,等. 基于Qt的電子提花機(jī)控制器上位機(jī)控制系統(tǒng)軟件設(shè)計(jì)[J]. 輕工機(jī)械,2018,36(1):58-61,70.
[3] 楊備備,張文超,楊波,等. 基于ARM的電磁繼電器參數(shù)檢測(cè)儀[J]. 物聯(lián)網(wǎng)技術(shù) 2013(12):16-18.
[4] 黃奕,戴旭涵,苗曉丹,等. 基于LabView的繼電器電阻連續(xù)自動(dòng)測(cè)試系統(tǒng)[J]. 電子測(cè)量技術(shù),2012,35(12):94-98.
[5] 張強(qiáng),于中偉,劉宏達(dá). 電壓繼電器電參數(shù)自動(dòng)測(cè)試裝置[J]. 低壓電器,2010 (10) :30-34.