[摘 要] 針對自研的車規(guī)級電池管理芯片GMD1002,設(shè)計了以STM32為主控芯片的電池電壓采集系統(tǒng)以及數(shù)字濾波器。并采用精密電源和模擬電芯對系統(tǒng)的固定電壓采集、斜坡電壓采集及電壓均衡性管理等性能進(jìn)行了相關(guān)測試。結(jié)果表明:數(shù)字濾波器能有效降低瞬態(tài)脈沖的影響,固定電壓讀取誤差在1 mV之內(nèi);在0~3.2768 V范圍內(nèi),斜坡電壓讀取誤差在2 mV以內(nèi)。芯片內(nèi)部的電池均衡控制性能正常,具有良好的電池管理功能。
[關(guān)鍵詞] 電池管理芯片; 數(shù)字濾波器; 電池均衡控制; 電壓采集
[中圖分類號] TN711, TP311" [文獻(xiàn)標(biāo)識碼] A
隨著當(dāng)前全球環(huán)境污染日漸嚴(yán)重和能源危機等問題的加劇,以電池驅(qū)動的新能源汽車開始逐漸替代以汽油驅(qū)動的傳統(tǒng)汽車。因此新能源汽車的電池和電池相關(guān)配套設(shè)施的研發(fā)成為當(dāng)前的熱點。目前,車規(guī)級電池管理芯片[1]屬于新能源汽車的核心部件之一,工作過程中時刻采集汽車電池的電壓,并通過控制電路為汽車充電時提供均衡優(yōu)化。這些性能提高了電池的工作效率,增加了電池的使用壽命,同時也為汽車的安全運行提供了重要保障[2]。
石建文等(2020)[3]使用電池管理芯片LTC6804-1和主控芯片MC9S12XET256設(shè)計電池管理系統(tǒng)來采集電池電壓,其采集電壓誤差的大小在5~10 mV。上述系統(tǒng)僅通過手動測量電池電壓來定義標(biāo)準(zhǔn)電壓。該方法難以避免操作上出現(xiàn)問題,并且容易受到瞬態(tài)電壓的影響。查曉銳等(2020)[4]使用電池管理芯片LTC6811和主控芯片MC9S12XEPl00MAL設(shè)計電池電壓采集系統(tǒng)。系統(tǒng)通過電池剩余電量估算法定義電池的標(biāo)準(zhǔn)電壓,其采集電壓的誤差在2 mV以內(nèi),在一定程度上降低了采集電壓的誤差。但系統(tǒng)算法的計算時間較長且高度依賴電池模型。因此精準(zhǔn)定義標(biāo)準(zhǔn)電壓,降低瞬態(tài)脈沖對電壓采集系統(tǒng)的影響,簡化電壓采集流程對電壓采集系統(tǒng)的檢測和優(yōu)化有著重要意義。
本文基于自研的電池管理芯片GMD1002 設(shè)計了電壓采集系統(tǒng),利用電壓輸入更精準(zhǔn)和穩(wěn)定的模擬電芯替代電池對系統(tǒng)進(jìn)行實驗測試,測試精度有明顯的提高。
1 電壓采集系統(tǒng)設(shè)計
1.1 GMD1002芯片引腳功能
GMD1002芯片(格威半導(dǎo)體自研芯片)是一款用于新能源汽車的車規(guī)級多節(jié)電池電池組監(jiān)控芯片,可同時測量16節(jié)串電池電壓。芯片支持SPI通信以及菊花鏈通信方式,最大支持2 M的速率。圖1為該芯片的引腳頂視圖。
引腳CINlt;0gt;-CINlt;16gt;是16節(jié)電池正負(fù)極的采集輸入口,芯片通過監(jiān)測每個CIN引腳的電位和兩個相鄰CIN引腳間的電位差來監(jiān)測電池的電壓。SDI、SDO、CSN、SCK引腳可用于與STM32芯片建立SPI通信。引腳DISlt;0gt;-DISlt;16gt;是芯片的16個電池均衡口[5],引腳之間有MOS開關(guān),在電池充電時可用于調(diào)節(jié)電池電壓。在充電狀態(tài)下芯片內(nèi)部的均衡開關(guān)會在相鄰電池采集的電壓相差過大時開啟。均衡開關(guān)開啟時高電壓電池內(nèi)部的電子會逐漸流向低電壓電池。圖2是芯片GMD1002內(nèi)部的電壓均衡電路。
其電壓計算公式為:
VCell[i]=VCIN[i]-VCIN[i-1](1)
VDischarge[i]=VDIS[i]-VDIS[i-1](2)
式(1)中:VCIN[i]是芯片引腳CINlt;igt;的電壓值,VCell[i]第i節(jié)電池的電壓大小,式(2)中,VDIS[i]是芯片引腳DISlt;igt;的電壓值,VDischarge[i]指相鄰DIS引腳之間的電壓差(i=1-16)。
1.2 MCU設(shè)計
MCU用于接收并執(zhí)行上位機所發(fā)送的指令,采集并傳輸被測芯片的數(shù)據(jù)發(fā)送給上位機。本文采用意法半導(dǎo)體公司的STM32系列芯片STM32F429IGBT6[6],其與GMD1002的SPI連接如圖3所示[7]。GMD1002的SPI引腳SCK、CSN、SDO、SDI分別連接STM32芯片的SCK、NSS、MISO、MOSI。
STM32芯片自舉模式[8]選用的是主Flash模式,該模式是將數(shù)據(jù)先存儲至STM32芯片的寄存器內(nèi),當(dāng)數(shù)據(jù)傳輸至上位機后STM32會自動抹除寄存器數(shù)據(jù),可用于存儲新數(shù)據(jù)。MCU的外部高速時鐘源(HSE)和外部低速時鐘源(LSE)分別由頻率為25Mhz和32.765Mhz的晶振來提供。MCU的調(diào)試口采用SWD。圖4為STM32芯片的相關(guān)引腳配置。
1.3 CAN通信構(gòu)建
CAN總線(Controller Area Network)常用于汽車計算機的通信系統(tǒng)[9-10]??紤]到GMD1002屬于車規(guī)級芯片,使用CAN總線作為MCU和PC上位機之間的通信總線可以更準(zhǔn)確地模擬芯片真實的工作環(huán)境。
STM32芯片內(nèi)部已有CAN總線控制器模塊,只需在對應(yīng)的引腳外配置一個型號為TJA1050CAN的CAN總線收發(fā)器即可完成CAN總線通信,如圖5所示。
由于PC計算機內(nèi)部沒有CAN總線接口,本系統(tǒng)采用USBCANFD-200U分析儀實現(xiàn)CAN總線報文的發(fā)送與解析[11]。為了濾除引腳CAN_H和CAN_L上信號之間的電磁干擾,采用共模電感(ZJY51R5)實現(xiàn)TJA1050CAN和USBCANFD-200U的連接。圖6為實驗中MCU和CAN分析儀的實物圖。
2 系統(tǒng)程序設(shè)計
圖7是該系統(tǒng)數(shù)據(jù)采集與傳輸?shù)牧鞒虉D。系統(tǒng)的軟件部分由PC上位機軟件和下位機(MCU)軟件組成。其中上位機控制面板和程序在Visual Studio 2017中的.NET平臺編寫[12]。下位機系統(tǒng)采用Keil uvision5軟件編寫,并通過SWD調(diào)試口燒錄至STM32芯片內(nèi)。
通過上位機向MCU發(fā)送一個采集信號,MCU會通過SPI引腳向GMD1002芯片發(fā)送對應(yīng)的數(shù)據(jù)讀取指令。GMD1002芯片的每個CIN、DIS和GPIO引腳均有對應(yīng)的讀取指令碼,當(dāng)MCU把指令碼輸入至GMD1002芯片內(nèi)部時,GMD1002會通過SPI引腳將這些指令碼傳輸至MCU的寄存器,最后數(shù)據(jù)會傳輸回PC上位機。對比兩個電壓的差值大小來計算芯片的電壓采集誤差。
由于受瞬態(tài)脈沖、熱噪聲和芯片工藝缺陷等因素影響,所采集到的實際電壓與標(biāo)準(zhǔn)電壓差值的方差較大。為了降低這些因素的影響,設(shè)計了數(shù)字濾波器,其流程如圖8所示。
濾波后的采樣電壓值
Vout=Vtotal-Smax-Smin-Fmin-Fmaxa-4(3)
式中:Vtotal是采樣數(shù)據(jù)累加的總和,Smax、Smin、Fmax、Fmin分別是第二大的采樣數(shù)據(jù),第二小的采樣數(shù)據(jù),最大的采樣數(shù)據(jù)和最小的采樣數(shù)據(jù)。a是每一組數(shù)據(jù)的采集次數(shù)。
3 測試實驗
3.1 固定電壓測試
使用可編程式精密電源GS200分別產(chǎn)生1400 mV、1800 mV、2400 mV、2800 mV的標(biāo)準(zhǔn)電壓。將其施加給GMD1002的某個GPIO引腳,采集1000次GPIO引腳電壓值VR,其結(jié)果如圖9所示。
圖9中,圖9a和圖9c是直接采集的結(jié)果,圖9b和圖9d是以20個采集電壓為一組,經(jīng)過數(shù)字濾波后的結(jié)果。以誤差在0.5 mV內(nèi)為標(biāo)準(zhǔn)判定采集電壓為合格,圖10為濾波前后合格的采集電壓數(shù)占比。
通過圖10中數(shù)據(jù)可知,在不使用濾波器的情況下,采集電壓合格率在85%以下,在使用濾波器后,合格率均高于95%。表明使用數(shù)字濾波器可以提升采集電壓的準(zhǔn)確性。
3.2 斜坡電壓測試
通過GS200向芯片的GPIO引腳發(fā)射0-3.2768 V的斜坡電壓,步進(jìn)電壓為200 uV。采集電壓的絕對誤差
Verror[i]=|Vout[i]-Vin[i]|(4)
式中:Vout[i]指采集到的電壓值,Vin[i]指標(biāo)準(zhǔn)電壓,i為步進(jìn)次數(shù)(i = 0-16384)。
圖11是濾波前后斜坡電壓測試的實驗結(jié)果??梢钥闯?,芯片的采集電壓誤差在量程范圍內(nèi)變化都較穩(wěn)定。濾波后采集電壓的最大誤差為0.6 mV,而濾波前的最大誤差為1.4 mV。
3.3 芯片應(yīng)用測試
該芯片在實際應(yīng)用中需要將16節(jié)電池的正負(fù)極依次連接在芯片的CINlt;0gt;-CINlt;16gt;引腳上,同時讀取芯片所有的CIN引腳和DIS引腳的電壓。為了模擬其實際應(yīng)用場景,采用模擬電芯的16個電壓通道同時向芯片的CIN引腳輸送電壓,驗證電壓采集系統(tǒng)在多電壓采集時的精確性以及均衡通道開關(guān)是否正常。
分別采集三組數(shù)據(jù),第一組為模擬電芯的16個通道,均輸出2 V標(biāo)準(zhǔn)電壓;第二組為第7通道的輸出電壓1 V,其他通道的輸出電壓為2 V;第三組實驗中第7通道的輸出電壓關(guān)閉,其他通道電壓為2 V。表1為三組實驗中,經(jīng)數(shù)字濾波后采集的VCell[i]和VDischarge[i]的數(shù)據(jù)。
通過三組實驗數(shù)據(jù)可知電壓VCell[i]的誤差基本上都在1 mV以內(nèi)。第三組的讀取電壓VCell[7]誤差為1.8 mV,當(dāng)模擬電芯的第7通道關(guān)閉時CINlt;6gt;和CINlt;7gt;引腳間的壓差會受到相鄰?fù)ǖ赖碾妷河绊?,?dǎo)致誤差偏大。當(dāng)模擬電芯的第7通道的輸入電壓是1 V和0時,芯片的均衡通道開啟使DISlt;6gt;和DISlt;7gt;之間的電壓差變?yōu)? V。該芯片實際應(yīng)用于新能源汽車時可以通過VCell[i]來觀察電池電壓,而VDischarge[i]電壓可用于判斷芯片內(nèi)部的均衡通道開關(guān)的狀態(tài)。
4 結(jié)束語
本文根據(jù)自研的電池管理芯片GMD1002設(shè)計了一種基于STM32的電壓采集系統(tǒng)。該系統(tǒng)可同時采集16節(jié)電池電壓。實驗使用精密電源GS200對系統(tǒng)進(jìn)行固定電壓測試和斜坡電壓測試,實驗結(jié)果證明數(shù)字濾波器可以降低采集電壓的誤差,提高采集電壓的準(zhǔn)確性,且芯片在量程范圍內(nèi)的采集電壓誤差變化范圍在2 mV以內(nèi)。實驗使用模擬電芯來模擬系統(tǒng)同時采集16節(jié)電池的電壓。實驗結(jié)果表明:系統(tǒng)在使用數(shù)字濾波器的情況下,采集電壓的誤差基本上在1 mV以內(nèi),只有少數(shù)極端情況誤差會超過1 mV,并且實驗證明該芯片的均衡通道的功能正常。本文設(shè)計的電壓采集系統(tǒng)對于其他相似的電池管理芯片測試具有一定的參考價值,系統(tǒng)測試的結(jié)果穩(wěn)定,數(shù)據(jù)可靠且成本低廉,便于普及。
[ 參 考 文 獻(xiàn) ]
[1] SUN B X,ZHAO X Z,HE X T,et al. Virtual battery pack-based battery management system testing framework[J]. Energies,2023,16(02):680.
[2] 曲行行,楊亭亭,鄒娟,等.BQ76PL536A的分布式動力電池管理系統(tǒng)設(shè)計[J].單片機與嵌入式系統(tǒng)應(yīng)用,2018,18(12):33-36.
[3] 石建文,陳海峰,杜玉環(huán).基于LabVIEW的電池管理系統(tǒng)設(shè)計[J].制造業(yè)自動化,2020,42(07):118-122.
[4] 查曉銳,晉成鳳,趙謙,等. 基于MC9S12與LTC6811的儲能電站電池管理系統(tǒng)設(shè)計[J].電機與控制應(yīng)用,2020,47(07):58-61.
[5] KUTKUT N H , WIEGMAN H L N . Design considerations for charge equalization of an electric vehicle battery system[J]. IEEE Transactions on Industry Applications,1999,35(01):28-35.
[6] ZHANG T S, LI Y M. Data acquisition design based on the STM32[J]. Advanced Materials Research,2012,2076(591-593):1527-1530.
[7] ZHANG Q D, YANG Y T, CHAI C C. A high EMS daisy-chain SPI interface for battery monitor system[J]. Journal of Semiconductors,2017,38(03):124-128.
[8] 殷廣輝.基于STM32的CAN總線通信節(jié)點設(shè)計[D].長春:吉林大學(xué),2017.
[9] 劉大鵬. 基于 STM32 單片機的 CAN-USB 轉(zhuǎn)換器設(shè)計[J].工業(yè)技術(shù)創(chuàng)新,2014,01(05):589-593.
[10] 王廣勝,張若兮.基于stm32的CAN通信[J].電腦知識與技術(shù),2017,13(09):30-31.
[11] 邢洋,李立偉,張洪偉.基于STM32單片機的CAN總線分析儀的設(shè)計[J]. 青島大學(xué)學(xué)報(工程技術(shù)版),2013,28(01):19-21.
[12] JEFFREY R. NET[J]. MSDN magazine,2001,16(08):119-122.
Design and Optimization of Voltage AcquisitionSystem Based on GMD1002
ZHANG Ze1,YAO Yucheng1,BAO Di2,LI Mincheng1, DENG Xiaoyue1
(1 School of Science, Hubei Univ. of Tech., Wuhan 430068, China;2 Geo Micro Devices (Xiamen) Co., Ltd., Shanghai 201203, China)
Abstract: The battery management chip monitors the health of battery by collecting battery voltage. It is able to provide battery protection and voltage equalization optimization. The accuracy of voltage acquisition is one of the main performance parameters of the battery management chip. Based on the self-developed vehicle-gauge battery management chip GMD1002, a battery voltage acquisition system with STM32 as the main control chip is designed. The digital filter is designed to match the voltage acquisition characteristics of the GMD1002 chip. High precision voltage source and battery simulator are used to test the performance of fixed voltage acquisition, ramp voltage acquisition and battery voltage equalization control of the system. The results show that the digital filter can effectively reduce the influence of transientpulses, the fixed voltage reading error is within 1 mV; and the ramp voltage reading error is within 2 mV in the range of 0~3.2768 V.T he battery equalization control function inside the chip is normal, and the system has a good battery management function.
Keywords: battery management chip; digital filter; battery equalization control; voltage acquisition
[責(zé)任編校: 閆 品]