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