鉅大LARGE | 點擊量:1407次 | 2020年05月28日
電動自行車用電池性能檢測裝置
引言
根據不完全統計,我國電動自行車從1998年的5.4萬輛新增到2001年的58萬輛,每年都在以翻一番的速率上升。電動自行車數量以如此速度在不斷新增的同時,市場上電動自行車用電池與充電器的種類也越來越多。由于電池和充電器的匹配性關系到電動自行車的一次續駛里程和整車的可靠性,因此,關于給定的電池,用何種充電器來充電可以達到最佳匹配效果不僅僅是廠家,更是用戶關心的重要問題。從電池和充電器性能入手,我們利用VB強大的圖形功能和友好的界面,成功地開發出了一套能用上位機直接控制電池充放電,并且還能直觀顯示電池充放電時的特點數據,以及進行必要的處理和曲線分析電池與充電器匹配性能的檢測系統。
1匹配性檢測原理
所謂匹配性,就是指用不同的充電器對同一種電池進行若干次充放電試驗,根據試驗中的電池性能狀態和充電器的充電曲線判斷哪種充電器更適合給此種電池充電。在匹配性檢測中,不僅要考慮電池的性能,同時還要考慮到充電器的性能。衡量電池的性能重要包括電池容量、壽命、充放電時的電流電壓等參數。而充電器的性能重要體現在充電電流電壓曲線、最高充電電壓以及浮充電流電壓等方面。
電池容量的一般計算公式是:
容量=放電電流放電到截止下限電壓所經歷的時間(單位:mAh或Ah)(1)
根據式(1),如采用5A恒流放電[1],只須記錄每次電池放電到截止下限電壓所經歷的時間,即可得出該電池的容量,同時,還可以記錄電池的實時電壓電流值,以上均是在電池放電時完成的。在給電池充電時,要同時記錄充電器類型號,電池兩端的電流電壓值以及采樣點數等參數,以便用VB描繪實時電流電壓變化曲線,用來與標準的三段式充電曲線[2](如圖1所示)相比較。根據此曲線,還可以觀察電池充電時的最高電壓值,浮充電壓、電流值。關于充放電過程的不斷切換是通過多功能數據采集卡的數字輸出端口(DigitalOutput)輸出的數字信號來控制的。2硬件組成
該套系統是硬件和軟件結合設計出來的。其硬件重要包括多功能數據采集卡(pCL818),接線端子板(pCLD-8115),直流開關穩壓電源,直流電流、電壓隔離傳感器,充放電繼電器以及驅動電路板等。系統原理框圖如圖2所示。
2.1模擬量采集
采集的重要對象是電池充放電時的電壓和電流值。其核心部分包括多功能數據采集板卡及電流、電壓傳感器。數據采集卡通過ISA接口與pC機通訊,它由裝在pC機內的數據采集卡和外部接線端子板以及連接板卡的電纜組成,重要功能包括:
1)可實現40k/s的最大采樣速率;
2)通過設定可實現16路的單端(SE)模擬信號輸入,也可實現8路的差分(Diff)模擬信號輸入,同時還可作為1路12位的模擬量輸出;
3)可實現16路數字量的輸入和輸出;
4)通道/增益可自動掃描;
5)可作為1路16位的計數器使用。由于板卡的模擬量輸入范圍在0~5V,所以,不僅要求電流電壓傳感器的輸入在所需范圍內,還要保證其輸出在0~5V。我們所選用的電流電壓傳感器的精度均可達到1%,輸入最大值分別為25A和50V,輸出均為5V,完全滿足系統的要求。
2.2數字量控制
控制的重要對象是接在充電和放電電路的充電繼電器和放電繼電器。前面已提到此采集卡具有16位的數字量輸出功能[3](引腳如圖3所示)。其控制方法是只要將腳1~16(D/O0-D/O15)的某一腳或多腳與腳17或腳18接入電路,就可以通過編程給該電路引入高低電平。在此我們引用D/O0(腳1)和D/O2(腳3),循環地使此兩腳接高電平,即循環地使充放電繼電器工作,進而使電池循環地進入充放電狀態,以達到用戶自動檢測電池的目的。其控制方式在后面的軟件部分介紹。
但是,數字信號的高電平驅動能力一般都比較弱,無法直接驅動繼電器,為此,必須通過功率驅動電路(如圖4所示)來增強從數字輸出端出來的數字信號的驅動能力。
3軟件實現
研華公司的采集卡都配有許多例程,只要在VB中加載該采集卡的驅動程序driver.bas模塊及系統的動態鏈接庫文件(如adsapi32.dll等)[4][5],就可以根據例程建立基于VB和pC機的虛擬平臺,來對電池充放電進行實時監控。
3.1數據的采集與記錄
在此程序中,采用的是多通道模擬輸入模式(MAI),通過pT_MAIVoltageIn獲得外部數據。當然,在讀入外部電壓電流數據之前,要預先設置好它的讀入通道號(NumChan--總通道數,StartChan--采集開始通道),通道增益(Gain)以及觸發模式(TrigMode),同時還要將VB與將要存放實時電流和電壓的數據庫相鏈接。在VB里數據庫的鏈接方式有多種:使用datalink文件、使用ODBC數據資源文件、使用連接字符串等。使用連接字符串的方法很輕松地就可以實現與外部數據庫的鏈接。剩下的就是如何將實時數據記錄到數據庫里。在tmrRead_Timer事件里運用下面的語句即可以實現。WithAdodc1.Recordset
.AddNew
.Fields(0)=i'記錄ID號
.Fields(1)=Val(ComNum.Text)'記錄充電器號
.Fields(2)=Time'記錄系統時間
.Fields(3)=10*fVoltage(0)'記錄采集電壓值
.Fields(4)=5*fVoltage(1)'記錄采集電流值
每進行一次Timer事件,都會添加一次新紀錄,而且其發生的時間間隔可以通過它的屬性Interval來含義,這樣一來,所要的數據都會隨時間的不斷變化記錄到數據庫里。3.2數據的分析與處理
通常來說,每做一次充放電試驗獲得數據達幾千個,通過觀察數據庫里的數據還是不容易發現總的變化趨勢,只有把這些數據在坐標系里描成曲線才是最直觀的。具體的做法是先讀出數據庫中的各點的值,并在建立好的坐標系中描出來(pset),然后利用Line函數把各點連起來。對采集回來的電流電壓如此處理,對每次放電的時間記錄亦如此處理,以便觀察電池的放電特性。在實際試驗中,利用某一種型號的充電器所得到的充電時電池的電壓和電流曲線如圖5所示。
3.3數字量的控制方式
數字信號輸出端口的高低電平是通過軟件控制的。在軟件中,高低電平通道選通信號是由二進制數(1和0)轉換成十進制數而得到的。例如,假如要求將前8腳都輸出高電平即用二進制數表示為#00FF,換算成十進制數即為255,在具體編程中,只要給lpDioWriteport.state分別賦1(#0001)和4(#0004)即可使腳1和腳3輸出高電平。程序的設置如下:
lpDioWriteport.port=lpDioportMode.port;所用端口號(由硬件決定)
lpDioWriteport.Mask=255;允許輸出的默認端口設置
lpDioWriteport.state=DoValue;操作端口設置(置1和4)
3.4程序流程圖本系統軟件流程圖如圖6所示。
4結語
基于VB開發的檢測系統現已成功地在某電動自行車廠投入運行,以其直觀的顯示和自動化控制,節省了大量的人力和時間,同時防止了不合格充電器和電池進入市場,對公司出現了明顯的經濟效益。同時,pC機操作界面直觀,操作方便,適合不同層次的工作人員使用。
上一篇:電池與數字負載