變電站或電廠等操作電源中,直流電源是核心,而電池組在直流電源中有著重要的地位,因此,設置專門的電池管理系統(BMS) 是非常必要的。其基本作用是監控電池的工作狀態、管理電池的工作情況,以便最大限度地利用電池的存儲能力和延長循環使用壽命。
依靠在線監測蓄電池的電壓和電流,合適的蓄電池管理裝置使BMS 具有防止蓄電池過電流放電(放電電流大于最大允許放電電流) 、欠電壓放電(放電過程中蓄電池電壓低于截止電壓) 、過電流充電(充電電流高于允許的最大充電電流)和過電壓充電(充電過程中蓄電池電壓高于發泡電壓) 的功能。這些限定值一般隨著蓄電池類型、蓄電池樣式、充放電電流、工作溫度和蓄電池老化程度不同而有所變化。
本硬件系統主要是通過軟件來實現對電池組或電池單體的電量、電壓、溫度等進行監測,并將檢測到的數據顯示出來及出現異常情況能及時報警。
電池管理系統的總體結構
為了便于測量,首先分別對單體電池電壓進行測量,然后用電流互感器和電壓互感器測量總電流和總電壓,并可根據需要任意選點測量電池溫度,再將測量到的數據輸入到單片機里,最后與CAN BUS 通信。系統的硬件設計框圖如圖1 所示。
測量電路設計
電池單體電壓測量電路設計
本系統采用HCNR200 光電耦合器作為隔離和數據采集系統之間的信號傳遞采樣器件。電池單體的電壓測量電路如圖2 所示。
因此,輸入電壓和輸出電壓之間的關系是線性的,與數碼管的光輸出特性無關。可通過調節R2 和R1的比值來調節基本隔離放大電路的增益。
溫度測量電路設計
溫度測量中,系統選用Dallas 半導體公司的數字化溫度傳感器DS1820。它具有微型化、低功耗、高性能、抗干擾能力強及易配微處理器等特點,因而特別適合于構成多點溫度測控系統。DS1820 能提供九位溫度讀數,它無須任何外圍硬件即可方便的構成溫度檢測系統。
系統的溫度實際測量電路如圖3 所示。這里可采用任意只DS1820 同時測控多路路溫度,可視實際需要任意選定通道數。系統采用C8051F041 單片機,其P2.2 口接單線總線。DS18B20采用寄生電源供電方式,采用寄生電源供電方式時VDD 必須接地。為保證在有效的DS1820 時鐘周期內能提供足夠的電流,圖3 中采用一個MOSFET管和C8051F041 的P2.1 口來完成對DS1820 的總線上拉。由于單線制只有一根線,因此發送接收口必須是三態的,為了操作方便我們用C8051F200 的P2.2 口作發送口Tx ,P2.3 口作接收口Rx。由于DS1820 是單線數字溫度傳感器,只須用它輸出線上的序列號就可以決定要讀取哪一個點上的溫度值,而且它的輸出量本來就是數字量,所以無須經過A/ D 轉換,就可以直接連到單片機上。需要注意的是,在系統安裝及工作之前應將主機逐個與DS1820 掛接,以讀出其序列號。其工作過程為:主機發出一個脈沖,待“0”電平大于480μs 后,復位DS1820 ,在DS1820 所發響應脈沖由主機接收后,主機再發讀取ROM的命令代碼33H ,然后再發一個脈沖(15μs) ,并接著讀取DS1820 序列號的一位。用同樣方法讀取序列號的56 位。另外,由于DS1820 單線通信功能是分時完成的,遵循嚴格的時隙概念,因此,系統對DS1820 和各種操作必須按協議進行,即:初始化DS1820 (發復位脈沖) →發ROM 功能命令→發存儲器操作命令→處理數據。由于DS1820 輸出量就是數字量,所以它的輸出可直接連接到單片機上。
單片機及通信接口
C8051Fxxx 系列單片機
C8051Fxxx 系列單片機成是完全集成的混合信號系統級芯片,具有與8051 兼容的微控制器內核,與MCS - 51 指令集完全兼容。除了具有標準8052 的數字外設部件之外,片內還集成了數據采集和控制系統中常用的模擬部件和其它數字外設及功能部件。它有優于51 系列單片機的性能,而且成本也不高,C8051Fxxx 單片機是真正能獨立工作的片上系統(SOC) 。每個MCU 都能有效地管理模擬和數字外設,可以關閉單個或全部外設以節省功耗。所以本系統選用C8051Fxxx 系列中的C8051F041 作為控制中心。
C8051F041 單片機的MCU 中的外設或功能部件包括模擬多路選擇器、可編程增益放大器、ADC、DAC、電壓比較器、電壓基準、溫度傳感器、SMBus/ I2C、UART、SPI、CAN 總線210B、可編程計數器/ 定時器陣列、數字I/ O 端口、電源監示器、看門狗定時器(WDT) 和時鐘振蕩器。
CAN 通信接口電路
CAN ,全稱為“Controller Area Network”,即控制器局域網,是國際上應用最廣泛的現場總線之一。CAN是一種多主方式的串行通訊總線,基本設計規范要求有高的位速率,高抗電磁干擾性,而且能夠檢測出產生的任何錯誤。在信號傳輸距離達到10Km 時,CAN 仍可提供高達5Kbit/ s 的數據傳輸速率。
基于C8051F041單片機的直流電源設計 直流電源
單片機C8051F041 自身帶有CAN 總線2.0B 接口,在收發器與單片機接口之間采用高速光耦來實現它們之間的電氣隔離,以保護單片機,最后收發器和CAN 協議控制器連接,這樣就實現了C8051F041 與CAN總線的通信。
軟件設計
該系統軟件是一個功能較強的監控軟件,它具有實時多任務處理的能力,能及時有效地響應突發事件。它完成顯示,A/ D 轉換,數據處理,聲光報警,通信等任務。實踐證明,本系統軟件工作圓滿,完全符合系統設計的要求。系統軟件由五個模塊組成。
主程序模塊主要完成系統的初始化,設定各種常數,進行預處理,顯示電池各種狀態參數。
采樣程序模塊完成對電池的電壓、電流、溫度等參數的測量,其中包含A/ D 轉換程序。
CAN 通信程序模塊主要完成本系統同上位機之間的CAN 通信功能。
電池電量計算程序模塊主要完成對采樣得到的電池電壓、電流來計算電池電量。
電池狀態分析程序模塊完成對采樣及計算得到的各種電池參數進行分析,并發出聲光報警信號。
結論
本文基于C8031F041 單片機直流電源電池監控系統的設計與實現。通過實驗證明,系統的硬件和軟件完全符合系統設計的各種性能要求,能圓滿完成對電池組的工作狀態進行監控。