摘要
一般而言,主動均衡演算法的設計取決於所支援的硬體架構。因此,在簡化均衡硬體設計的同時降低演算法設計的複雜度,仍然是一個必須解決的關鍵挑戰。本文將深入剖析電池管理系統(BMS)高效主動均衡設計背後的演算法。需要注意的是,由於均衡演算法與硬體架構通常深度整合且需協同優化,本文所討論的演算法主要針對本系列文章中介紹的架構。即便如此,文中提出的許多設計原則、權衡考量及實現思路,仍可為工程師開發其他主動均衡架構的均衡演算法提供靈感。
引言
在本系列文章的前幾篇中,主要討論重點主要集中在如何選擇合適的積體電路(IC)與元件,以建構主動均衡電路或架構。由於均衡演算法在主動均衡系統中舉足輕重,因此有必要對其進行深入探討。
因此,本文目的在嘗試開發一種專門針對本系列所介紹的均衡架構的演算法。目標是提供一套高效、簡潔且易於部署和評估的主動均衡演算法參考設計,以協助工程師及從業者快速實現、測試,並直接觀察ADI解決方案在電池包中的實際均衡性能。
話雖如此,有一點值得反覆強調:儘管本文所提出的均衡演算法強調簡潔性與高效性,但在實際應用中,不存在任何一種單一演算法能一勞永逸地因應所有電芯不一致場景。任何均衡策略在投入實際電池系統使用前,都必須經過全面的評估與驗證。
主動均衡圖形化使用者介面軟體
基於本系列之前文章中介紹的主動均衡概念,主動均衡系統的控制代碼主要部署在兩個位置:嵌入式微控制器(MCU)和基於個人電腦(PC)的主動均衡圖形化使用者介面(GUI)。MCU的作用與功能已在之前的文章中討論過,本部分將重點介紹PC端評估軟體,即主動均衡GUI。
圖1和圖2展示了本設計架構中所用GUI介面的截圖。為避免視覺混亂,僅對功能不直覺的部分進行了標註,以確保清晰明瞭。
該GUI既是MCU與電腦之間的通訊橋樑,也提供即時資料視覺化功能,可顯示電芯電壓、指示每個電芯的均衡狀態,並擷取和記錄系統故障或異常運作情況。最重要的是,該GUI整合了自動化主動均衡演算法,因而不僅是一款監控工具,更是執行均衡過程的關鍵驅動程式。
圖1.主動均衡GUI:顯示電芯電壓、均衡狀態和錯誤警報的圖形介面。
圖2.主動均衡GUI:除錯期間用於監控MCU與GUI資料互動的日誌視窗。
主動均衡演算法下的性能表現
本設計架構支援主動均衡過程的兩種控制模式:手動均衡控制和全自動演算法控制。
1. 手動均衡控制
在手動模式下,使用者可直接發送指令,對單個電芯進行充電、放電或禁用均衡操作。該模式適用於診斷測試,或針對特定電芯執行定向均衡干預與微調。
2. 自動化主動均衡演算法
在自動模式下,操作流程經過簡化以提升易用性:將電池包連接至系統、啟動GUI軟體、建立與MCU的串列通訊,然後點擊AUTO_ENABLE按鈕。此後,系統將自動使所有 16個電芯達到相同電壓水準,無需使用者進一步干預。
圖3至圖5展示了在啟用自動化均衡功能的情況下,三種不同運作狀態(充電、放電、空閒)下電芯電壓的收斂過程。測試所用的電池包中包含16個鎳錳鈷(NMC)鋰離子電芯,每個電芯的額定容量為40 Ah。
• 4.1 V.
• 充電狀態:使用最大電流為10 A的充電器為電池包充電,電芯電壓從約3.65 V升至接近 4.1 V。
• 放電狀態:將電池組連接至10 Ω的大功率電阻負載,電芯電壓從約3.85 V降至約3.65 V。
• 空閒狀態:電池包處於空閒狀態,未連接充電器或負載。
在這三種情況下,測試開始時均有意使電芯電壓處於不均衡狀態,以便完整地展示主動均衡電路的收斂效果。當所有電芯的電壓偏差收斂到閾值範圍內(定義為與平均電壓的差值在±3 mV以內)時,自動均衡停止條件被觸發,實驗隨即終止。
如圖3至圖5所示,啟用自動化演算法後,16個電芯的電壓收斂到了較窄的容差範圍內。由此證明,所提出的架構與演算法不僅在空閒狀態下,在充電和放電階段均能實現穩定且有效的均衡。
圖3.電池包以最大電流10 A充電,啟用自動化主動均衡演算法。
圖4.電池包透過10 Ω大功率電阻放電,啟用自動化主動均衡演算法。
圖5.電池包處於空閒狀態,啟用自動化主動均衡演算法。
自動化均衡演算法的執行邏輯
自動化均衡演算法以迴圈、順序的方式運作:依次對16個電芯進行均衡,之後則重複該過程。它不會嘗試在一次迴圈中完全平衡單個電芯,而是採用輪詢策略,執行多次短時間的均衡週期。這種方式可避免單個電芯的均衡停留時間過長,因為停留過長會降低整體均衡效率,還可能影響電池包安全性。持續聚焦單個電芯的均衡,還可能導致其他長時間空閒的電芯面臨過充或過放風險。透過在所有電芯間分配均衡任務,電芯電壓偏差能高效收斂至預設的停止閾值。
演算法根據電芯分組,採用兩種互補的均衡方法:
1. 緩衝區均衡(2-9號電芯)——相對均衡
• 計算緩衝區組(2-9號電芯)的平均電壓,記為Avg(2-9)。
• 每個緩衝區電芯(2-9號)均以Avg(2-9)為基準進行均衡,而非以電池包整體平均電壓(AvgALL)為基準。
2. 獨立電芯均衡(1號、10-16號電芯)——絕對均衡
• 計算全部16個電芯的電池包整體平均電壓,記為AvgALL。
• 每個獨立電芯(1號、10-16號)均以AvgALL為基準進行均衡,向該電壓值靠攏。
無論是緩衝區電芯還是獨立電芯,其均衡方向(充電或放電)與均衡時間,均由各個電芯電壓偏差的正負符號和偏差幅度決定。儘管均衡時長大致與偏差幅度成正比,但不會出現單個電芯主導整個均衡過程的情況。演算法透過短時間、反覆運算式的迴圈遍歷所有電芯,確保電壓偏差快速、穩定地收斂。
均衡過程的最終目標是讓電池包內所有電芯的電壓盡可能接近AvgALL。將演算法劃分為「緩衝區組相對均衡」與「獨立電芯絕對均衡」,原因是為了提升效率:如果緩衝區電芯直接以AvgALL為基準均衡,它們在作為其他電芯的能量儲備庫時,會反覆經歷充放電迴圈,導致均衡收斂效率低下。透過相對均衡,先讓緩衝區電芯電壓與Avg(2-9)對齊,再以緩衝區整體為獨立電芯充放電,系統能實現更快的整體收斂。在一個完整均衡週期結束時,Avg(2-9)與AvgALL可能並非完全一致,但會非常接近,進而確保整個電池包達到良好的均衡狀態。
為進一步提升效率與可靠性,倘若某一電芯的電壓偏差已在容差範圍內,或檢測到異常情況,演算法會跳過這一電芯,繼續處理下一個符合條件的電芯。
架構設計原理與基於緩衝區的均衡機制
細心的您或許會發現,上述均衡策略與理想的全雙向電芯間均衡拓撲存在差異。原因一目了然:若不增加極高的架構複雜度,要在電池包內任意兩個電芯之間實現真正的直接雙向能量傳輸,在實際應用中並不可行。
為解決此一難題,該演算法藉由中間充電緩衝區實現間接均衡。具體而言,電池包內n個相鄰的電芯被指定為緩衝區。此一配置在均衡架構圖(圖6)中也有體現,圖中緩衝區被描繪為由這n個連續電芯組成的模組。
傳統設計依賴獨立的外部電源(如大容量12 V或24 V電池)作為緩衝區,而本架構則完全利用電池包內部已儲存的能量運作。這種方式不僅提升系統整體效率,並降低了軟硬體的設計複雜度。
本架構與演算法中的均衡過程透過兩階段能量傳輸實現。
1. 電芯到緩衝區放電:將過充電芯的能量轉移至緩衝區電芯中。
2. 緩衝區到電池充電:而後將緩衝區的能量重新分配給欠充電芯。
這種兩階段流程,在功能上等效於實現了雙向電芯間均衡,同時避開了直接一對一傳輸拓撲的工程複雜度。這種拓撲雖被視為理想的均衡形式,但因其電路複雜度高、成本高,在大型電池包中往往難以落地。在這種方法中,當某個電芯需要充電時,所需能量會從緩衝區電芯中統一獲取;反之,當某個電芯需要放電時,其多餘能量會被均勻重新分配回緩衝區電芯。
圖6.基於LT8306、LT8309、ADP1612、MAX7312、ADBMS6830和MAX32670的主動均衡電路架構圖。
臨時暫停和重新啟動自動均衡的條件
當2到9號電芯相對Avg(2-9)的電壓偏差降至設定閾值(例如±3 mV)以下,且1號、10到16號電芯相對AvgALL的電壓偏差也處於同一閾值內時,自動化均衡過程會臨時暫停。此時,Avg(2-9)與AvgALL可能並非完全一致,但會十分接近。滿足這些條件後,演算法將轉入待機狀態,等待下一次均衡觸發。
自動化均衡演算法在啟動狀態下,會持續輪詢電池系統,判斷是否需要啟動均衡。觸發條件可由使用者配置,預設觸發邏輯為:當16個電芯中最高電芯電壓與最低電芯電壓的差值超過10 mV時,啟動均衡。
演算法啟動後,會持續運作直至滿足暫停條件,隨後停止並等待下一次觸發事件。如前所述,暫停條件保持不變,此處不再贅述。
為避免均衡過程過度迴圈及不必要的能量損耗,在觸發閾值 (10 mV)與暫停閾值(±3 mV)之間設置了「滯回帶」。這可確保僅當電芯出現顯著電壓偏差時,均衡才會重新啟動,進而同時提升系統效率與使用壽命。
特殊注意事項
由於電芯電壓採樣線束與主動均衡線束共用同一佈線,且受本系列之前文章提及的線路電阻(Rroute)及大均衡電流的共同影響,主動均衡過程中會出現電壓降。如圖7至10所示,該電壓降會影響電芯電壓測量的準確性。因此,必須定期暫停主動均衡,以獲取準確的電壓讀數。
• 如果暫停過於頻繁,會降低均衡效率。
• 如果暫停間隔過長,可能導致過度均衡。
在本架構中,演算法會根據觀測到的電壓偏差估算所需均衡時間,例如每5 mV偏差對應約1分鐘均衡時間。達到計算出的時間後,均衡會自動暫停以進行準確的電壓測量,隨後演算法將決定下一步操作。
這種自我調整時序策略相較於固定間隔方式提升了效率,但它依賴於「充放電電流接近恆定」此一前提。在本設計中,電流穩定性透過直接從電池包獲得緩衝區電壓而非依賴外部電源來實現,即便電芯電壓在3.0 V至4.2 V之間變化,也能確保電流接近恆定。
儘管組合使用取樣線束與均衡線束會在均衡期間引入測量誤差,但也帶來了顯著優勢:
• 減少線束數量,簡化佈線,節省印刷電路板(PCB)空間。
• 均衡期間觀測到的電壓降可作為運作狀態指示器,協助確認主動均衡電路是否正常工作。
圖7.主動均衡功能未啟動時,電芯電壓測量值保持穩定。
圖8.主動均衡運作期間,為特定電芯充電時對電壓測量的影響。
圖9.主動均衡運作期間,為特定電芯放電時對電壓測量的影響。
圖10.主動均衡運作期間,均衡電流對電芯電壓測量的影響:左側為電芯充電,右側為電芯放電。
結論
至此,本系列關於主動均衡的文章已全數完整介紹。顯然,即便我們力求詳盡解析,但要在有限篇幅內將這類系統性設計的所有細節囊括無遺,仍是不小的挑戰。許多錯綜複雜的設計要素,尤其是本主動均衡方案中涉及的完整軟體程式設計內容,終究無法在此一一鋪陳。
本系列文章的核心目標,在於點燃對電池主動均衡技術感興趣的工程師及電子愛好者的探索熱情與創新靈感。我們誠摯鼓勵您,無論直接採納文中介紹的設計方案,或是以此為基石進一步深耕拓展,只要透過持續創新,都將打造出兼具簡潔性與高效性的主動均衡解決方案。