能電池均衡方案:MP2642GR-Z與STM32F469II實(shí)戰(zhàn))
1. 儲(chǔ)能電池均衡的底層邏輯與方案選型1.1 為什么串聯(lián)電池組必須做均衡兩節(jié)電芯出廠時(shí)容量、內(nèi)阻、自放電率就不可能完全一致串聯(lián)之后流過的是同一個(gè)電流充電時(shí)容量小的那顆先到截止電壓放電時(shí)它又先到欠壓保護(hù)點(diǎn)。木桶效應(yīng)在電池組里體現(xiàn)得特別直接整組可用容量由最弱的那顆決定而且隨著循環(huán)次數(shù)增加不一致性會(huì)被放大最終演變成某顆電芯長(zhǎng)期過充、另一顆長(zhǎng)期充不滿壽命斷崖式下跌。儲(chǔ)能和備用電源系統(tǒng)跟消費(fèi)電子不一樣它們往往要求7×24小時(shí)在線、循環(huán)壽命動(dòng)輒三五千次均衡做不好整組電池提前報(bào)廢是常態(tài)。所以均衡不是錦上添花而是BMS里必須有的一個(gè)功能模塊。1.2 被動(dòng)均衡與主動(dòng)均衡的取舍被動(dòng)均衡就是給每顆電芯并一個(gè)電阻加開關(guān)電壓高的那顆通過電阻放電把多余的能量以熱量形式消耗掉。優(yōu)點(diǎn)是電路簡(jiǎn)單、成本低、可靠性高缺點(diǎn)是能量白白浪費(fèi)均衡電流一般只有幾十到一兩百毫安大容量?jī)?chǔ)能電池上均衡速度很慢。主動(dòng)均衡則是把高電壓電芯的能量搬到低電壓電芯去常見的有電容式、電感式、變壓器式。效率高、均衡電流可以做到安培級(jí)但拓?fù)鋸?fù)雜、成本高、EMI難處理。在儲(chǔ)能和備用電源這類場(chǎng)景里如果電芯容量不算特別大比如幾安時(shí)到幾十安時(shí)且系統(tǒng)對(duì)成本敏感被動(dòng)均衡配合一顆專用均衡芯片是性價(jià)比最高的選擇。MP2642GR-Z 就是這類專用芯片里比較典型的一顆它把均衡開關(guān)、驅(qū)動(dòng)、保護(hù)邏輯都集成進(jìn)去MCU只需要通過通信接口下發(fā)指令、讀取狀態(tài)即可。1.3 為什么選 MP2642GR-Z 搭配 STM32F469IIMP2642GR-Z 是一顆面向多節(jié)串聯(lián)電池的均衡管理芯片內(nèi)部集成了均衡MOSFET和限流電阻通路支持通過串行接口配置均衡通道、均衡電流和均衡時(shí)長(zhǎng)還帶過溫、過流保護(hù)。用它做兩串均衡外圍只需要少量阻容和一顆采樣電阻PCB面積極小。STM32F469II 是ST的Cortex-M4高性能MCU主頻180MHz帶FPU和DSP指令Flash 2MB、RAM 384KB外設(shè)資源豐富尤其適合需要跑LCD顯示、數(shù)據(jù)記錄、多路通信的儲(chǔ)能BMS主控。它有多路UART、SPI、I2C跟MP2642GR-Z對(duì)接非常方便而且算力冗余足夠跑均衡算法和SOC估算。兩者搭配的邏輯是MP2642GR-Z 干臟活累活——直接驅(qū)動(dòng)均衡通路、做硬件級(jí)保護(hù)STM32F469II 干腦力活——采集電壓、判斷哪顆需要均衡、決定均衡時(shí)長(zhǎng)、記錄均衡日志、跟上位機(jī)通信。分工明確各司其職。注意選型時(shí)一定要確認(rèn) MP2642GR-Z 的均衡電流上限是否滿足你的電芯容量。均衡電流太小均衡一次要幾個(gè)小時(shí)甚至幾天實(shí)際使用中根本來不及。2. 硬件設(shè)計(jì)與關(guān)鍵參數(shù)計(jì)算2.1 兩串電池均衡的電路拓?fù)鋬纱姵鼐獾挠布Y(jié)構(gòu)其實(shí)不復(fù)雜核心是給每顆電芯配一條獨(dú)立的放電通路。MP2642GR-Z 內(nèi)部已經(jīng)集成了兩路均衡開關(guān)外部只需要在每顆電芯正負(fù)極之間接上均衡電阻或者用芯片內(nèi)部限流再通過通信線與MCU連接。典型連接方式電池組正極BAT接芯片VIN兩顆電芯中間的節(jié)點(diǎn)BAT_MID接芯片對(duì)應(yīng)通道電池組負(fù)極BAT-接GND芯片的通信引腳SCL/SDA或SPI的SCK/MOSI/MISO/CS接STM32F469II對(duì)應(yīng)外設(shè)芯片的ALERT/FAULT引腳接MCU的外部中斷用于快速響應(yīng)異常這里有個(gè)容易踩的坑兩串電池的中間節(jié)點(diǎn)既是第一顆電芯的負(fù)極又是第二顆電芯的正極布線時(shí)一定要保證這個(gè)節(jié)點(diǎn)的采樣和均衡回路是開爾文連接否則均衡電流會(huì)在走線電阻上產(chǎn)生壓降導(dǎo)致電壓采樣偏差越均衡越不準(zhǔn)。2.2 均衡電阻與均衡電流的計(jì)算假設(shè)電芯容量為 CAh希望在最壞情況下 T 小時(shí)內(nèi)把兩顆電芯的電壓差拉到可接受范圍比如10mV以內(nèi)均衡電流 I_bal 的估算公式是I_bal ≈ (ΔQ) / T其中 ΔQ 是兩顆電芯的容量差A(yù)hT 是允許的均衡時(shí)間h。舉個(gè)例子兩顆標(biāo)稱5Ah的電芯實(shí)際容量差0.5Ah希望8小時(shí)內(nèi)均衡到位那么 I_bal ≈ 0.5 / 8 62.5mA??紤]到均衡不是全程滿電流電壓差小的時(shí)候電流會(huì)下降實(shí)際取值要留1.5到2倍余量也就是100mA左右。如果 MP2642GR-Z 內(nèi)部限流不夠就需要外接均衡電阻。均衡電阻 R_bal 的計(jì)算R_bal V_cell / I_bal以單節(jié)3.7V、目標(biāo)100mA為例R_bal 3.7 / 0.1 37Ω取標(biāo)準(zhǔn)值36Ω或39Ω。電阻功率 P V_cell × I_bal 3.7 × 0.1 0.37W實(shí)際選1W以上的封裝留足降額。提示均衡電阻的功率降額至少50%因?yàn)閮?chǔ)能系統(tǒng)可能長(zhǎng)期處于高溫環(huán)境電阻溫升會(huì)疊加環(huán)境溫度降額不夠容易燒電阻。2.3 采樣精度與抗干擾設(shè)計(jì)均衡功能的前提是電壓采樣要準(zhǔn)。兩串電池的電壓采樣有兩種做法一種是直接用MCU的ADC分壓采樣另一種是用專用AFE。MP2642GR-Z 本身帶電壓采樣功能的話優(yōu)先用芯片內(nèi)部采樣精度和一致性比MCU分壓好。如果必須用MCU的ADC注意幾點(diǎn)分壓電阻用0.1%精度溫漂25ppm/℃以內(nèi)分壓點(diǎn)加0.1μF陶瓷電容濾波截止頻率設(shè)在10Hz左右ADC參考電壓用外部基準(zhǔn)不要用MCU的VDDAVDDA噪聲大采樣走線遠(yuǎn)離均衡電阻和功率回路最好用地線隔離STM32F469II 的ADC是12位參考電壓3.3V時(shí)理論分辨率0.8mV但實(shí)際有效位數(shù)可能只有10位左右也就是3mV左右的分辨率。對(duì)于均衡判斷來說3mV勉強(qiáng)夠用但如果要做到10mV以內(nèi)的均衡精度建議用外部16位ADC或者芯片內(nèi)部更高精度的采樣。2.4 通信接口與隔離儲(chǔ)能系統(tǒng)里電池組和主控之間往往有距離通信線容易引入干擾。MP2642GR-Z 和 STM32F469II 之間如果距離超過10cm建議用SPI而不是I2CSPI抗干擾能力更強(qiáng)速率也更高。如果電池組和MCU不在同一塊板上通信線要做隔離。數(shù)字隔離器選電容隔離或磁隔離都行關(guān)鍵是隔離耐壓要滿足系統(tǒng)要求儲(chǔ)能系統(tǒng)一般要求1500V以上。隔離之后SPI的CS、SCK、MOSI、MISO四根線都要隔離電源也要用隔離DC-DC。注意隔離器件的傳播延遲會(huì)影響SPI時(shí)序選型時(shí)確認(rèn)延遲小于SPI時(shí)鐘周期的1/4否則通信會(huì)出錯(cuò)。3. 軟件架構(gòu)與均衡算法實(shí)現(xiàn)3.1 整體軟件框架STM32F469II 上的軟件可以分成四層底層驅(qū)動(dòng)層SPI/I2C驅(qū)動(dòng)、GPIO驅(qū)動(dòng)、定時(shí)器驅(qū)動(dòng)、ADC驅(qū)動(dòng)芯片抽象層MP2642GR-Z的寄存器讀寫、均衡通道控制、狀態(tài)讀取均衡策略層電壓采集、均衡判斷、均衡時(shí)長(zhǎng)計(jì)算、均衡調(diào)度應(yīng)用層數(shù)據(jù)記錄、通信上報(bào)、異常處理、人機(jī)交互這種分層的好處是如果以后換均衡芯片只需要改芯片抽象層上層策略不用動(dòng)。儲(chǔ)能項(xiàng)目生命周期長(zhǎng)硬件迭代是常事分層設(shè)計(jì)能省很多重復(fù)工作。3.2 電壓采集與濾波電壓采集用定時(shí)器觸發(fā)比如每100ms采一次連續(xù)采8次做滑動(dòng)平均?;瑒?dòng)平均能濾掉大部分隨機(jī)噪聲但會(huì)引入滯后對(duì)于均衡這種慢過程來說100ms的滯后完全可以接受。如果電壓波動(dòng)比較大可以在滑動(dòng)平均之前先做中值濾波去掉明顯的野值。中值濾波窗口取5能濾掉單個(gè)尖峰干擾。代碼上可以用一個(gè)環(huán)形緩沖區(qū)存最近8次采樣值每次新數(shù)據(jù)進(jìn)來就替換最老的然后求平均。STM32F469II 的RAM足夠大開幾個(gè)這樣的緩沖區(qū)毫無壓力。#define FILTER_WIN 8 static uint16_t v_buf[2][FILTER_WIN]; static uint8_t v_idx 0; uint16_t get_filtered_voltage(uint8_t cell) { uint32_t sum 0; for (int i 0; i FILTER_WIN; i) { sum v_buf[cell][i]; } return sum / FILTER_WIN; } void update_voltage(uint8_t cell, uint16_t mv) { v_buf[cell][v_idx] mv; if (cell 1) v_idx (v_idx 1) % FILTER_WIN; }3.3 均衡啟動(dòng)條件與閾值設(shè)定均衡不是隨時(shí)都能開的要滿足幾個(gè)條件電池組處于靜置或充電狀態(tài)放電過程中一般不均衡放電時(shí)電壓被負(fù)載拉低判斷不準(zhǔn)兩顆電芯電壓差超過啟動(dòng)閾值比如30mV電芯電壓在均衡允許窗口內(nèi)比如3.0V到4.2V之間溫度在0℃到45℃之間沒有過溫、過流、通信故障等異常啟動(dòng)閾值設(shè)30mV是個(gè)經(jīng)驗(yàn)值。設(shè)太小均衡頻繁啟動(dòng)浪費(fèi)能量還增加發(fā)熱設(shè)太大電芯長(zhǎng)期處于不一致狀態(tài)壽命受影響。30mV對(duì)應(yīng)大概5%到10%的容量差是多數(shù)儲(chǔ)能系統(tǒng)的折中值。停止閾值一般設(shè)啟動(dòng)閾值的1/3到1/2比如10mV到15mV。這樣有回差避免在閾值附近反復(fù)啟停。3.4 均衡時(shí)長(zhǎng)計(jì)算與調(diào)度均衡時(shí)長(zhǎng)有兩種算法固定時(shí)長(zhǎng)和自適應(yīng)時(shí)長(zhǎng)。固定時(shí)長(zhǎng)就是每次均衡開一個(gè)固定時(shí)間比如30分鐘然后重新判斷。簡(jiǎn)單但效率低電壓差小的時(shí)候浪費(fèi)時(shí)間。自適應(yīng)時(shí)長(zhǎng)根據(jù)電壓差和均衡電流算T_bal (ΔV × C) / (I_bal × V_cell)其中 ΔV 是電壓差C 是電芯容量I_bal 是均衡電流V_cell 是電芯電壓。這個(gè)公式假設(shè)電壓差完全由容量差引起實(shí)際還有內(nèi)阻差的影響所以算出來的時(shí)長(zhǎng)要打個(gè)折比如乘0.7。調(diào)度上每次只均衡電壓高的那顆電芯均衡完重新采樣判斷。如果兩顆電壓差不大但都偏離目標(biāo)值那就先均衡高的等它降下來再看。實(shí)操心得均衡過程中要定期比如每5分鐘重新采樣電壓如果電壓差已經(jīng)小于停止閾值提前結(jié)束均衡不用死等算出來的時(shí)長(zhǎng)。這樣能省不少能量。3.5 與MP2642GR-Z的寄存器交互MP2642GR-Z 的寄存器操作通過SPI進(jìn)行典型流程拉低CS發(fā)送寄存器地址讀操作最高位置1讀取或?qū)懭霐?shù)據(jù)拉高CS寫寄存器時(shí)要注意有些配置寄存器有寫保護(hù)需要先解鎖。解鎖序列一般是往特定地址寫特定值具體看數(shù)據(jù)手冊(cè)。讀取狀態(tài)寄存器可以知道當(dāng)前均衡通道是否開啟、有沒有過溫過流。建議每1秒讀一次狀態(tài)發(fā)現(xiàn)異常立即關(guān)閉均衡并上報(bào)。uint8_t mp2642_read_reg(uint8_t addr) { uint8_t tx[2] {addr | 0x80, 0x00}; uint8_t rx[2]; HAL_GPIO_WritePin(CS_PORT, CS_PIN, GPIO_PIN_RESET); HAL_SPI_TransmitReceive(hspi1, tx, rx, 2, 100); HAL_GPIO_WritePin(CS_PORT, CS_PIN, GPIO_PIN_SET); return rx[1]; } void mp2642_write_reg(uint8_t addr, uint8_t val) { uint8_t tx[2] {addr 0x7F, val}; HAL_GPIO_WritePin(CS_PORT, CS_PIN, GPIO_PIN_RESET); HAL_SPI_Transmit(hspi1, tx, 2, 100); HAL_GPIO_WritePin(CS_PORT, CS_PIN, GPIO_PIN_SET); }4. 實(shí)操調(diào)試與問題排查4.1 上電調(diào)試步驟第一次上電不要直接接電池先用可調(diào)電源模擬兩顆電芯。把電源1設(shè)3.7V、電源2設(shè)3.8V中間節(jié)點(diǎn)連在一起模擬電壓差100mV的情況。上電后先讀MP2642GR-Z的ID寄存器確認(rèn)通信正常。然后讀電壓寄存器看讀數(shù)是否跟電源設(shè)定值一致誤差在±5mV以內(nèi)算正常。確認(rèn)采樣正常后手動(dòng)開啟均衡通道1對(duì)應(yīng)電壓高的那顆用萬用表測(cè)均衡電阻兩端電壓應(yīng)該等于電芯電壓。測(cè)均衡電流應(yīng)該跟設(shè)計(jì)值接近。如果一切正常再切換到真實(shí)電池測(cè)試。真實(shí)電池測(cè)試時(shí)先用小電流充放電幾次讓電芯電壓有差異然后觀察均衡功能是否自動(dòng)啟動(dòng)。4.2 常見問題速查表現(xiàn)象可能原因排查方法解決措施通信失敗SPI時(shí)序不對(duì)示波器看SCK/CS波形調(diào)整SPI時(shí)鐘極性相位降低速率電壓采樣偏差大分壓電阻精度不夠萬用表測(cè)分壓點(diǎn)電壓換0.1%電阻加濾波電容均衡不啟動(dòng)閾值設(shè)置過高打印電壓差和閾值降低啟動(dòng)閾值到30mV均衡電流偏小均衡電阻過大測(cè)電阻實(shí)際阻值換小阻值電阻確認(rèn)功率芯片發(fā)熱嚴(yán)重均衡電流超限測(cè)均衡電流降低均衡電流或加散熱均衡反復(fù)啟?;夭钐∮^察電壓差曲線增大停止閾值回差過溫保護(hù)誤觸發(fā)溫度采樣不準(zhǔn)對(duì)比環(huán)境溫度校準(zhǔn)溫度傳感器檢查NTC4.3 均衡效果評(píng)估方法均衡做完了怎么知道效果好不好最直接的方法是記錄均衡前后的電壓差。如果均衡前100mV均衡后10mV以內(nèi)說明有效。更嚴(yán)謹(jǐn)?shù)姆椒ㄊ亲鋈萘繙y(cè)試把電池組充滿記錄充電容量再放空記錄放電容量。均衡好的電池組充放電容量應(yīng)該接近兩顆電芯中較小的那顆的容量。如果充放電容量明顯小于較小電芯容量說明均衡沒做好或者電芯已經(jīng)嚴(yán)重不一致。長(zhǎng)期跟蹤的話可以每個(gè)月做一次容量測(cè)試畫容量衰減曲線。如果衰減速度明顯快于單顆電芯的衰減速度說明均衡策略需要優(yōu)化。4.4 避坑經(jīng)驗(yàn)分享第一個(gè)坑均衡電阻的走線太細(xì)。均衡電流雖然只有100mA但如果走線只有0.2mm寬走線電阻可能有幾十毫歐均衡時(shí)走線發(fā)熱長(zhǎng)期下來PCB會(huì)變色。均衡走線至少0.5mm寬最好鋪銅。第二個(gè)坑忽略均衡時(shí)的電壓采樣。均衡電流流過電芯內(nèi)阻和走線電阻會(huì)產(chǎn)生額外壓降這時(shí)候采到的電壓不是電芯的真實(shí)開路電壓。所以均衡判斷要基于靜置電壓均衡過程中采的電壓只能用來判斷是否提前結(jié)束不能用來判斷電壓差。第三個(gè)坑溫度保護(hù)沒做。均衡電阻發(fā)熱如果環(huán)境溫度又高電阻溫度可能超過150℃。MP2642GR-Z 內(nèi)部有過溫保護(hù)但那是芯片自己的溫度不是電阻的溫度。最好在均衡電阻附近放一顆NTCMCU定期讀溫度超過85℃就關(guān)閉均衡。第四個(gè)坑均衡日志沒記錄。儲(chǔ)能系統(tǒng)出問題的時(shí)候運(yùn)維人員最想知道的是均衡什么時(shí)候開的、開了多久、效果怎么樣。如果MCU里沒記錄這些排查問題只能靠猜。建議在Flash里開一塊區(qū)域循環(huán)記錄均衡事件每條記錄包含時(shí)間戳、均衡通道、均衡時(shí)長(zhǎng)、前后電壓差。5. 系統(tǒng)集成與長(zhǎng)期運(yùn)行考量5.1 與BMS其他模塊的協(xié)同均衡只是BMS的一個(gè)功能它還要跟SOC估算、保護(hù)、通信等模塊協(xié)同。比如SOC估算需要知道電芯的真實(shí)容量而均衡會(huì)影響電芯的電壓曲線所以SOC算法要能識(shí)別均衡狀態(tài)在均衡時(shí)對(duì)電壓做補(bǔ)償。保護(hù)模塊和均衡模塊要有互鎖過壓保護(hù)觸發(fā)時(shí)均衡必須立即關(guān)閉過溫保護(hù)觸發(fā)時(shí)均衡也要關(guān)閉。這些互鎖邏輯最好在硬件上做一層比如用保護(hù)芯片的FAULT信號(hào)直接拉低均衡使能軟件上再做一層雙保險(xiǎn)。通信模塊要把均衡狀態(tài)上報(bào)給上位機(jī)包括當(dāng)前是否在均衡、均衡了多久、累計(jì)均衡次數(shù)、均衡前后電壓差。這些數(shù)據(jù)對(duì)運(yùn)維很有價(jià)值能幫助判斷電池組健康狀態(tài)。5.2 低功耗設(shè)計(jì)備用電源系統(tǒng)有時(shí)候會(huì)長(zhǎng)期處于待機(jī)狀態(tài)這時(shí)候均衡功能要能進(jìn)入低功耗模式。MP2642GR-Z 一般有休眠模式通過SPI發(fā)指令進(jìn)入休眠電流可以降到微安級(jí)。STM32F469II 也可以進(jìn)Stop模式用RTC定時(shí)喚醒每隔一段時(shí)間比如1小時(shí)醒來做一次電壓采集和均衡判斷。喚醒后如果發(fā)現(xiàn)電壓差不大直接回去休眠如果電壓差大開啟均衡均衡完再休眠。這樣平均功耗可以做到毫安級(jí)以下對(duì)備用電源系統(tǒng)很友好。提示進(jìn)低功耗前一定要確認(rèn)均衡已經(jīng)關(guān)閉否則均衡電阻會(huì)持續(xù)耗電低功耗就白做了。5.3 數(shù)據(jù)記錄與壽命預(yù)測(cè)STM32F469II 的Flash有2MB可以劃出128KB做數(shù)據(jù)記錄區(qū)按每條記錄32字節(jié)算能存4096條。每條記錄包含時(shí)間戳、兩顆電芯電壓、溫度、均衡狀態(tài)、均衡時(shí)長(zhǎng)。按每天記錄10條算能存一年多。有了這些數(shù)據(jù)可以做電芯壽命預(yù)測(cè)。比如用電壓差的變化趨勢(shì)判斷電芯不一致性的發(fā)展速度如果電壓差增長(zhǎng)越來越快說明電芯正在加速老化提前預(yù)警更換。也可以做均衡效果統(tǒng)計(jì)統(tǒng)計(jì)每次均衡的平均時(shí)長(zhǎng)、平均能量消耗、均衡后電壓差分布。如果發(fā)現(xiàn)均衡越來越頻繁、時(shí)長(zhǎng)越來越長(zhǎng)說明電芯一致性在惡化。5.4 電磁兼容與安規(guī)考量?jī)?chǔ)能系統(tǒng)的EMC要求比消費(fèi)電子嚴(yán)均衡電路雖然是低速開關(guān)但均衡電流的di/dt也不小可能產(chǎn)生傳導(dǎo)和輻射干擾。PCB布局時(shí)均衡回路的面積要盡量小均衡電阻靠近芯片放置走線短而粗。安規(guī)方面兩串電池的電壓雖然不高7.4V左右但如果系統(tǒng)是高壓儲(chǔ)能堆的一部分均衡電路和通信電路之間要有足夠的爬電距離和電氣間隙。隔離器件的選型要滿足系統(tǒng)絕緣等級(jí)要求。注意做安規(guī)認(rèn)證時(shí)均衡電路的故障模式也要考慮。比如均衡MOSFET短路失效會(huì)導(dǎo)致電芯持續(xù)放電必須有硬件保護(hù)在電壓過低時(shí)切斷。MP2642GR-Z 內(nèi)部有欠壓保護(hù)但要確認(rèn)保護(hù)閾值和恢復(fù)機(jī)制符合系統(tǒng)要求。6. 方案擴(kuò)展與進(jìn)階優(yōu)化6.1 從兩串?dāng)U展到多串兩串均衡做通了擴(kuò)展到多串的思路是一樣的只是MP2642GR-Z 的通道數(shù)可能不夠需要用多顆芯片級(jí)聯(lián)。級(jí)聯(lián)時(shí)要注意通信地址分配和隔離每顆芯片的通信要獨(dú)立不能共用CS。多串均衡的策略也更復(fù)雜不能只比較相鄰電芯要比較所有電芯的電壓找出最高和最低的然后決定均衡哪些。這時(shí)候可以用最高電壓電芯優(yōu)先均衡的策略每次只均衡電壓最高的那顆直到它降到平均電壓附近。6.2 均衡與主動(dòng)均衡的混合方案如果被動(dòng)均衡速度不夠可以考慮混合方案平時(shí)用被動(dòng)均衡做微調(diào)電壓差大的時(shí)候啟動(dòng)主動(dòng)均衡快速拉平。主動(dòng)均衡可以用電感式或電容式把高電壓電芯的能量搬到低電壓電芯?;旌戏桨傅目刂七壿嫺鼜?fù)雜需要MCU有更強(qiáng)的算力。STM32F469II 的180MHz主頻和FPU這時(shí)候就派上用場(chǎng)了可以跑更復(fù)雜的均衡算法比如模型預(yù)測(cè)控制。6.3 基于機(jī)器學(xué)習(xí)的均衡策略如果系統(tǒng)有足夠的歷史數(shù)據(jù)可以訓(xùn)練一個(gè)簡(jiǎn)單的模型來預(yù)測(cè)均衡需求。比如用電壓差、溫度、循環(huán)次數(shù)、歷史均衡時(shí)長(zhǎng)作為輸入預(yù)測(cè)下次均衡的最佳時(shí)機(jī)和時(shí)長(zhǎng)。模型不用很復(fù)雜一個(gè)三層的神經(jīng)網(wǎng)絡(luò)就夠了。STM32F469II 帶DSP指令跑小模型沒問題。訓(xùn)練可以在上位機(jī)做推理在MCU上做。這種做法的好處是均衡更精準(zhǔn)能量浪費(fèi)更少。但要注意模型不能完全替代規(guī)則安全相關(guān)的判斷還是要用硬規(guī)則兜底。6.4 均衡功能的測(cè)試與驗(yàn)證均衡功能做完要做完整的測(cè)試功能測(cè)試模擬不同電壓差驗(yàn)證均衡啟動(dòng)、停止、時(shí)長(zhǎng)計(jì)算是否正確邊界測(cè)試電壓差剛好在閾值附近驗(yàn)證回差是否有效異常測(cè)試模擬過溫、過流、通信中斷驗(yàn)證保護(hù)是否及時(shí)長(zhǎng)期測(cè)試連續(xù)運(yùn)行72小時(shí)觀察均衡效果和溫升EMC測(cè)試按系統(tǒng)要求做傳導(dǎo)和輻射測(cè)試測(cè)試記錄要保存作為設(shè)計(jì)驗(yàn)證的一部分。儲(chǔ)能系統(tǒng)認(rèn)證時(shí)這些記錄是必須的。我個(gè)人在實(shí)際操作中的體會(huì)是均衡功能看起來簡(jiǎn)單但要做好做穩(wěn)細(xì)節(jié)特別多。尤其是采樣精度和溫度保護(hù)這兩個(gè)做不好均衡要么不準(zhǔn)要么不安全。另外均衡日志一定要記不然出了問題根本沒法排查。這個(gè)方案后續(xù)還可以擴(kuò)展比如加上無線通信模塊把均衡數(shù)據(jù)傳到云端做長(zhǎng)期分析或者加上主動(dòng)均衡做混合方案適應(yīng)更大容量的電池組。