計與軟件實現(xiàn))
1. 儲能電池均衡的工程背景與核心需求1.1 為什么串聯(lián)電池組必須做均衡做儲能和備用電源的兄弟都清楚單節(jié)鋰電池的標稱電壓一般在3.6V到3.8V之間磷酸鐵鋰大概在3.2V左右。但實際系統(tǒng)里母線電壓動輒12V、24V、48V甚至更高單節(jié)電池根本撐不起來所以必須串聯(lián)。問題就出在這個“串聯(lián)”上——串聯(lián)回路里電流處處相等但每節(jié)電池的容量、內(nèi)阻、自放電率、老化程度不可能完全一致。充電時容量小的那節(jié)先到截止電壓如果繼續(xù)充它就會過充放電時容量小的那節(jié)先到欠壓保護點如果繼續(xù)放它就會過放。過充過放對鋰電池來說都是折壽甚至要命的事。我見過太多備用電源項目前期為了省成本不做均衡結(jié)果跑了半年整組電池的有效容量直接掉到初始值的60%都不到。拆開一測兩節(jié)電池的壓差能到300mV以上一節(jié)已經(jīng)鼓包另一節(jié)還跟新的差不多。這就是典型的“木桶效應”——整組電池的可用容量由最弱的那節(jié)決定而均衡電路的作用就是把這個短板盡量補上來讓每節(jié)電池都工作在相近的荷電狀態(tài)。1.2 被動均衡與主動均衡的取舍邏輯均衡方案分兩大流派被動均衡和主動均衡。被動均衡說白了就是給每節(jié)電池并一個耗散電阻誰電壓高就讓誰多放一點電把能量以熱的形式浪費掉。優(yōu)點是電路簡單、成本低、可靠性高缺點是效率低、發(fā)熱大、均衡電流一般只能做到幾十到幾百毫安。主動均衡則是把高電壓電池的能量搬到低電壓電池去效率高、均衡電流可以做到安培級但拓撲復雜、成本高、故障點也多。在儲能和備用電源場景里我個人的經(jīng)驗是如果電池組容量不大比如10Ah以內(nèi)且對成本敏感被動均衡完全夠用如果是大容量儲能柜或者對循環(huán)壽命要求極高的備用電源主動均衡更合適。這次項目標題里用的是MP2642GR-Z加TM4C129XNCZAD的組合從器件選型來看MP2642GR-Z是一顆雙向同步升降壓充電管理芯片支持I2C編程本身就具備雙向能量流動的能力所以這套方案更偏向主動均衡的思路——通過控制芯片在相鄰電池之間轉(zhuǎn)移能量而不是單純耗散。1.3 兩節(jié)串聯(lián)電池均衡的特殊性兩節(jié)串聯(lián)是最基礎(chǔ)的串聯(lián)結(jié)構(gòu)但恰恰因為只有兩節(jié)均衡策略反而有講究。如果是三節(jié)以上通常需要從最高電壓電池向最低電壓電池轉(zhuǎn)移能量路徑可能跨越多節(jié)。但兩節(jié)的話能量轉(zhuǎn)移路徑只有一條從高電壓那節(jié)到低電壓那節(jié)或者反過來。這意味著均衡電路可以做得非常簡潔不需要復雜的多路開關(guān)矩陣。但兩節(jié)也有兩節(jié)的坑。第一兩節(jié)電池的電壓差如果太大均衡電流會很大這時候要限制最大均衡電流否則發(fā)熱和EMI都是問題。第二兩節(jié)電池的公共節(jié)點電壓是浮動的采樣和驅(qū)動電路需要處理好共模電壓范圍。第三如果兩節(jié)電池容量差異很大均衡只能緩解壓差不能從根本上解決容量不匹配的問題該換電池還是得換。2. 核心器件選型與硬件設(shè)計要點2.1 MP2642GR-Z的關(guān)鍵特性與工作模式MP2642GR-Z是一顆面向雙節(jié)串聯(lián)電池管理的升降壓充電控制器支持雙向工作。所謂雙向就是它既能從輸入電源給電池充電也能從電池向負載放電而且在這兩個方向上都能做電壓和電流的調(diào)節(jié)。對于均衡應用來說這個雙向能力非常關(guān)鍵——當檢測到兩節(jié)電池壓差超過閾值時可以讓電壓高的那節(jié)通過芯片向電壓低的那節(jié)轉(zhuǎn)移能量而不是簡單地把高電壓那節(jié)的能量耗散掉。這顆芯片的開關(guān)頻率可以通過外部電阻編程典型值在300kHz到1MHz之間。頻率越高電感可以越小但開關(guān)損耗會增大頻率越低電感越大但效率會好一些。我在實際項目里一般選500kHz左右兼顧體積和效率。芯片還集成了I2C接口可以實時讀取每節(jié)電池的電壓、電流、溫度等參數(shù)這給MCU做均衡決策提供了數(shù)據(jù)基礎(chǔ)。2.2 TM4C129XNCZAD作為主控的優(yōu)勢TM4C129XNCZAD是TI的ARM Cortex-M4F內(nèi)核MCU主頻120MHz帶浮點單元Flash 1MBRAM 256KB。選它做電池均衡主控主要看中三點第一它有多路12位ADC可以同時采樣兩節(jié)電池的電壓和均衡電流采樣率足夠做實時控制第二它有多路PWM輸出可以獨立控制兩路升降壓的開關(guān)管第三它帶CAN和以太網(wǎng)接口方便接入儲能系統(tǒng)的通信總線。不過要注意TM4C129XNCZAD的ADC參考電壓需要外部提供高精度基準否則采樣精度不夠。我一般用一顆2.5V或3.0V的基準芯片比如REF5025溫漂控制在10ppm/°C以內(nèi)。另外ADC輸入端的RC濾波要設(shè)計好截止頻率建議在1kHz左右既能濾掉開關(guān)噪聲又不會引入太大延遲。2.3 功率級拓撲與關(guān)鍵參數(shù)計算兩節(jié)串聯(lián)電池的主動均衡功率級本質(zhì)上是一個雙向Buck-Boost電路。假設(shè)兩節(jié)電池分別為BAT1和BAT2BAT1的正極接系統(tǒng)正極BAT2的負極接系統(tǒng)負極BAT1的負極和BAT2的正極相連形成中間節(jié)點。均衡電路連接在BAT1正極和BAT2正極之間或者連接在中間節(jié)點和某一端之間。以連接在BAT1正極和BAT2正極之間的方案為例當BAT1電壓高于BAT2時電路工作在Buck模式把BAT1的能量降到BAT2的電壓等級當BAT2電壓高于BAT1時電路工作在Boost模式把BAT2的能量升到BAT1的電壓等級。電感的選擇很關(guān)鍵假設(shè)最大均衡電流為2A開關(guān)頻率500kHz輸入輸出電壓差最大為1V那么電感紋波電流取額定電流的30%即0.6A根據(jù)公式L(Vin-Vout)×D/(f×ΔI)其中DVout/Vin代入計算可得電感值大約在1.5μH到2.2μH之間。我一般選2.2μH的一體成型電感飽和電流至少3A直流電阻小于20mΩ。MOSFET的選擇也要注意。上管和下管都要選低導通電阻的N溝道MOS耐壓至少30V導通電阻在10mΩ以下。柵極驅(qū)動電壓要足夠TM4C129XNCZAD的PWM輸出是3.3V邏輯需要加一級柵極驅(qū)動芯片比如UCC27524把驅(qū)動電壓提到10V左右才能讓MOS完全導通降低導通損耗。3. 均衡控制策略與軟件實現(xiàn)3.1 電壓采樣與濾波算法均衡控制的第一步是準確采樣兩節(jié)電池的電壓。TM4C129XNCZAD的ADC是12位的參考電壓3.0V時最小分辨率為3.0V/4096≈0.73mV。但實際電路中會有噪聲所以需要做濾波。我一般用滑動平均濾波加一階低通濾波的組合先連續(xù)采樣16次去掉最大最小值后取平均再經(jīng)過一個截止頻率10Hz的一階低通濾波器。這樣既能抑制開關(guān)噪聲又能保證動態(tài)響應速度。采樣時機也很重要。要在PWM開關(guān)管的死區(qū)時間內(nèi)采樣避開開關(guān)瞬間的尖峰。具體來說可以在PWM周期計數(shù)器達到峰值時觸發(fā)ADC采樣這時候電感電流紋波最小電壓最穩(wěn)定。TM4C129XNCZAD的ADC支持PWM觸發(fā)配置起來很方便。3.2 均衡閾值與滯回策略均衡不是一有壓差就啟動那樣會導致頻繁切換增加損耗。我一般設(shè)置一個啟動閾值和一個停止閾值形成滯回。比如壓差超過30mV時啟動均衡壓差降到10mV以下時停止。這樣既能保證均衡效果又能避免震蕩。均衡電流的大小也要根據(jù)壓差動態(tài)調(diào)整。壓差大時可以適當增大均衡電流加快均衡速度壓差小時減小均衡電流避免過沖。具體實現(xiàn)上可以用一個比例系數(shù)把壓差乘以系數(shù)后作為電流參考值再通過PI調(diào)節(jié)器控制PWM占空比。PI參數(shù)需要根據(jù)實際電路調(diào)試我一般先設(shè)Kp0.1Ki0.01然后根據(jù)階躍響應微調(diào)。3.3 狀態(tài)機設(shè)計與故障保護均衡控制的狀態(tài)機一般包括待機、采樣、判斷、均衡、故障、恢復這幾個狀態(tài)。待機狀態(tài)下MCU定期喚醒采樣電壓如果壓差超過閾值進入判斷狀態(tài)確認不是采樣噪聲后進入均衡狀態(tài)均衡過程中持續(xù)監(jiān)測電壓和電流如果出現(xiàn)異常比如過流、過溫、電壓突變立即進入故障狀態(tài)關(guān)閉PWM輸出并記錄故障碼。故障保護要做得全面。過流保護可以通過比較器硬件實現(xiàn)響應時間在微秒級過溫保護可以用NTC熱敏電阻貼在MOSFET和電感附近MCU的ADC讀取溫度值超過85°C就降額超過100°C就關(guān)斷。另外還要監(jiān)測兩節(jié)電池的總電壓如果總電壓超過安全上限也要停止均衡。4. 實操調(diào)試與常見問題排查4.1 上電調(diào)試步驟與關(guān)鍵波形觀測第一次上電千萬別直接接電池先用直流電源模擬兩節(jié)電池電壓分別設(shè)為3.7V和3.6V限流設(shè)小一點比如100mA。然后按以下步驟調(diào)試檢查MCU供電和基準電壓是否正常用萬用表測ADC參考端應該是精確的3.0V。用示波器看PWM輸出確認頻率和死區(qū)時間符合設(shè)計。死區(qū)時間一般設(shè)100ns到200ns太小會直通太大會降低效率。慢慢增大直流電源的限流值觀察電感電流波形。正常的電感電流應該是三角波如果出現(xiàn)尖刺或者振蕩說明環(huán)路不穩(wěn)定需要調(diào)整PI參數(shù)或者增加RC吸收電路。用電子負載在電池端拉載測試雙向切換是否平滑。切換瞬間電壓跌落應該在100mV以內(nèi)。我踩過的一個坑是一開始沒注意ADC采樣時機采到的電壓總是偏高導致均衡誤啟動。后來用示波器同時看PWM和ADC觸發(fā)信號發(fā)現(xiàn)采樣點正好落在開關(guān)管關(guān)斷的振鈴上。把采樣點往后移了1μs問題就解決了。4.2 常見問題速查表現(xiàn)象可能原因排查方法解決方案均衡電流上不去電感飽和電流不夠用電流探頭看電感電流波形換更大飽和電流的電感壓差反復震蕩滯回閾值太小觀察電壓波形增大滯回窗口加長判斷時間芯片發(fā)熱嚴重開關(guān)損耗大測開關(guān)管漏源電壓和電流降低開關(guān)頻率換低Qg的MOSADC采樣跳動大參考電壓不穩(wěn)測基準芯片輸出加濾波電容換低溫漂基準通信中斷I2C上拉電阻不對測SCL/SDA波形調(diào)整上拉電阻縮短走線4.3 獨家避坑經(jīng)驗分享第一個坑MP2642GR-Z的I2C地址是固定的如果系統(tǒng)里有多顆芯片需要加I2C多路復用器否則地址沖突。我一般用TCA9548A8通道夠用了。第二個坑均衡電感的布局很關(guān)鍵。電感要盡量靠近芯片的SW引腳走線要短而粗否則寄生電感會導致電壓尖峰容易打穿MOS。我一般把電感放在芯片背面用大面積鋪銅連接。第三個坑電池連接器的接觸電阻要小。如果接觸電阻大了采樣電壓會偏低導致均衡判斷錯誤。我一般用鍍金端子插拔力要足夠而且定期檢查。第四個坑軟件上一定要做電壓校準。每塊板子的ADC增益和偏移都有差異出廠前要用高精度電源校準把校準系數(shù)存在Flash里。我一般取3個點校準3.0V、3.6V、4.2V用最小二乘法擬合直線。5. 系統(tǒng)集成與性能評估5.1 與儲能系統(tǒng)的通信接口設(shè)計均衡模塊不是孤立的它要跟儲能系統(tǒng)的BMS主控通信。TM4C129XNCZAD帶CAN控制器可以直接掛到CAN總線上波特率設(shè)250kbps或者500kbps。通信協(xié)議我一般自定義一套簡單的幀格式幀ID表示均衡模塊地址數(shù)據(jù)區(qū)放兩節(jié)電池電壓、均衡電流、溫度、狀態(tài)字。主控每隔100ms輪詢一次如果發(fā)現(xiàn)某節(jié)電池電壓異常可以下發(fā)指令強制均衡或者關(guān)閉均衡。如果系統(tǒng)要求更高的實時性可以用以太網(wǎng)接口TM4C129XNCZAD內(nèi)置MACPHY跑Modbus TCP或者自定義UDP協(xié)議。不過以太網(wǎng)功耗大備用電源場景里一般還是用CAN。5.2 效率測試與熱設(shè)計驗證均衡效率是衡量方案好壞的重要指標。我一般用功率分析儀測輸入功率和輸出功率算出效率。在2A均衡電流下如果效率低于90%就要檢查開關(guān)損耗和導通損耗。開關(guān)損耗跟頻率成正比導通損耗跟電流平方成正比。如果效率不達標可以先降頻試試如果還不行就換更低導通電阻的MOS。熱設(shè)計方面MOSFET和電感的溫升要控制在40°C以內(nèi)。我一般用紅外熱像儀看溫度分布熱點通常在MOSFET和電感上。如果溫升過高可以加散熱片或者導熱墊把熱量導到外殼上。備用電源的機箱一般是密封的所以外殼散熱面積要足夠。5.3 長期可靠性測試方案均衡模塊的長期可靠性我一般做三項測試高溫老化、溫度循環(huán)、振動測試。高溫老化是在85°C環(huán)境下連續(xù)跑72小時監(jiān)測電壓和電流是否漂移溫度循環(huán)是-40°C到85°C每個溫度點保持30分鐘循環(huán)100次看焊點和器件有沒有開裂振動測試是按GB/T 2423標準掃頻10Hz到500Hz每個軸向振動2小時看連接器有沒有松動。這三項測試下來如果都沒問題基本可以放心出貨了。我做過一個項目高溫老化到第48小時的時候發(fā)現(xiàn)均衡電流開始下降拆開一看電感磁芯有裂紋換了更高溫度等級的電感就沒事了。所以器件的溫度等級一定要留余量別卡著規(guī)格書的上限用。6. 方案擴展與個人實操體會6.1 從兩節(jié)擴展到多節(jié)的思路兩節(jié)均衡做通了擴展到多節(jié)其實不難。硬件上每兩節(jié)之間放一個均衡模塊形成菊花鏈結(jié)構(gòu)軟件上主控輪詢每個模塊優(yōu)先均衡壓差最大的那一對。不過多節(jié)系統(tǒng)里能量轉(zhuǎn)移路徑變長效率會下降所以一般只在相鄰電池之間做均衡跨節(jié)的能量轉(zhuǎn)移通過多次相鄰均衡來實現(xiàn)。另外多節(jié)系統(tǒng)里共模電壓范圍更寬采樣電路要用差分放大器比如INA240共模抑制比至少80dB。通信上菊花鏈可以用隔離CAN或者隔離SPI防止地環(huán)路干擾。6.2 個人在實際操作中的幾點體會第一均衡電流不是越大越好。我試過把均衡電流做到5A結(jié)果電感體積大了三倍發(fā)熱也嚴重實際均衡時間只縮短了20%得不償失。后來我把均衡電流定在1A到2A之間綜合性價比最高。第二軟件濾波比硬件濾波更靈活。一開始我在ADC前端加了復雜的RC濾波結(jié)果動態(tài)響應變慢壓差突變時均衡跟不上。后來改成軟件滑動平均參數(shù)隨時可調(diào)效果更好。第三測試工裝很重要。批量生產(chǎn)時每塊板子都要校準和測試我設(shè)計了一個工裝用繼電器切換模擬電池電壓MCU自動跑校準和功能測試一塊板子30秒測完效率很高。第四別忽視連接器的可靠性。我遇到過現(xiàn)場返回的模塊均衡功能失效拆開發(fā)現(xiàn)電池連接器氧化了接觸電阻變大。后來換了鍍金連接器并在軟件里加了接觸電阻檢測——如果采樣電壓在均衡電流開啟和關(guān)閉時差異過大就報連接器故障。這個方案后續(xù)還可以這樣擴展把均衡模塊和BMS主控集成到一塊板子上減少連接器和線束提高可靠性或者加入無線通信模塊把均衡數(shù)據(jù)傳到云端做遠程監(jiān)控和預警。不過那是另一個話題了有機會再聊。