基于DSP和OZ890 的電池管理系統設計
摘要:本文從設計要求和功能出發,設計了一種用于混合動力汽車的電池管理系統。其中硬件系統包括:電源模塊、基于OZ890 的單體電壓采集電路和I2C 通信電路、基于DSP 的RS232
串口通信和CAN 通信等硬件系統的設計;軟件系統包括:利用周期中斷和下溢中斷實現數據采集處理、SOC 估算和各種通信程序。
關鍵詞:電池管理系統;OZ890;I2C 雙向隔離;下溢中斷
Design of battery management system based on DSP and OZ890 WANG Tao, QI Bo-jin, WU Hong-jie, LI Wei (School of Mechanical Engineering & Automation, Beihang University, Beijing 100191, China) Abstract: A battery management system for Hybrid Electrical Vehicle is designed according to its design requirements and functions. The design of BMS contains two parts: hardware system and software system. The hardware system comprises power module, data acquisition and communication circuit, I2C bus circuit, CAN bus circuit, RS232 circuit and so on. The software comprises data acquisition and processing program based on periodic interrupt and underflow interrupt, evaluation of SOC and communication programs.
Key words: battery management system; OZ890; Dual I2C Isolator; underflow interrupt
電池管理系統(BMS, Battery Management System)是電動汽車的關鍵零部件之一。高
性能、高可靠性的電池管理系統能使電池在各種工作條件下獲得最佳的性能。電池管理系統
可以實時監測電池狀態,如電池電壓、充放電電流、使用溫度等;預測電池荷電狀態(SOC,
State of Charge),防止電池過充過放,從而達到提升電池使用性能和壽命,提高混合動力汽
車的可靠性和安全性的目的。
本設計主要實現數據采集、電池狀態計算、均衡控制、熱管理、各種通信以及故障診斷
等功能。
1 電池管理系統硬件組成
電池管理系統電路由電源模塊、DSP 芯片TMS320LF2407A[1](簡稱為“LF2407”)、基
于多個OZ890[2]的數據采集模塊、I2C[3]通信模塊、SCI 通信模塊、CAN 通信模塊組成。系
統硬件框圖如圖1 所示。
1.1 電源模塊
整車提供的電源為+12V,管理系統需要的電壓包括:+3.3V(DSP,隔離電路用)、+5V(總
線驅動等芯片用)、±15V(電流傳感器),可以通過DC-DC 轉換得到,這樣不但可以滿足各
個芯片的供電要求而且可以起到隔離抗干擾的作用。
1.2 數據采集模塊
由DSP 完成總電壓、電流及溫度的采集。電池單體電壓的采集和均衡由OZ890 芯片完
成,并利用I2C 總線發給DSP,本模塊電路主要包括前端采集處理和均衡電路。
1.3 I2C 通信模塊
OZ890 采樣模塊將采集處理后的數據通過I2C 總線發送到LF2407,由于LF2407 自身不
帶I2C 接口,本設計利用PCA9564[4]擴展其I2C 接口。為了防止電磁干擾影響I2C 總線上數
據的傳輸,必須對總線信號進行隔離,考慮到I2C 總線是雙向傳輸的,使用ADuM1250[5]
雙向隔離芯片進行隔離。PCA9564 及雙向隔離電路如圖2 所示。
圖2 PCA9564 及雙向隔離電路
PCA9564 是I2C 總線擴展器,與LF2407 的GPIO 口相連,它支持主從模式的數據收發,
在BMS 中設定LF2407 為主器件,OZ890 位從器件。LF2407 通過讀寫PCA9564 內部四個
寄存器的內容來與OZ890 通信。
ADuM1250 是熱插拔數字隔離器,包含與I2C 接口兼容的非閂鎖、雙向通信通道。這樣
就不需要將I2C 信號分成發送信號與接收信號供單獨的光電耦合器使用。
1.4 串口通信模塊
電池管理系統將采集處理后的數據通過串口發送到PC 機界面上,實現人機交互。通過
串口界面,可以觀察到電池的總電壓、單體電壓、電流、SOC、故障狀態、充放電功率等參
數,還可以通過串口發送實現管理系統的在線標定。其硬件電路主要基于MAX232 芯片,如圖3a)所示。
圖3 串口通信接口電路
MAX232 是+5V 電源的收發器,與計算機串口連接,實現RS-232 接口信號和TTL 信號
的電平轉換,使BMS 和PC 機能夠進行異步串行通訊。
為了防止電磁干擾影響串口上數據的傳輸,必須對總線信號進行隔離。串口是單向傳輸,
所以利用6N137 光電耦合較為方便,圖3b)所示為232TXD 信號光耦隔離電路。
1.5 CAN 通信模塊
CAN 通信是架接電池管理系統(BMS)與整車HCU 之間的信息橋梁,BMS 將電池的狀
態參數通過CAN 總線發給HCU,HCU 通過判斷當前的電池狀態來做出決策,分配電機和
發動機之間的功率,控制電池的充放電。同時BMS 還可以接收HCU 發來的相關命令,做
出相應的處理。其硬件方面主要是通過PCA82C250 通用CAN 收發器來提供對總線數據的
差動發送能力和對通信總線數據的差動接收能力。通過類似于圖3b)的光耦隔離電路來加
強CAN 總線上的抗干擾能力。其硬件電路由圖4 所示。
圖4 CAN 通信接口電路
在電路中可根據整車要求,是否接入120Ω 的終端電阻,當JP201 跳線接1 腳和2 腳時,
不接入電阻,當接2 腳和3 腳時,電阻接入。
2 電池管理系統的軟件設計
電池管理系統軟件[6]系統包括6 個任務和5 個中斷。6 個任務包括:AD 轉換處理任務
(包括讀取OZ890 中的數據)、CAN 接收任務、CAN 發送任務、SOC 計算任務、系統監視
故障診斷任務和串口發送任務。5 個中斷包括:AD 采集中斷服務子程序、Timer1 下溢中斷
服務子程序、周期中斷子程序、CAN 總線接收中斷服務子程序和串口接收中斷服務子程序,
如下面的中斷向量表所示:
.ref _c_int0
.ref _ADC, _INT2, _INT5
.sect ".vectors"
rset: B _c_int0;00h reset
int1: B ADC ;02h ADC
int2: B _INT2 ;04h 周期、下溢中斷
int3: B int3 ;06h INT3
int4: B int4 ;08h INT4
int5: B _INT5 ;0Ah CAN, SCI
int6: B int6 ;0Ch INT6
根據整車控制策略,CAN 上電池狀態數據每幀的刷新周期為10ms,故設置周期中斷的
時鐘節拍為10ms;相應地設置以上幾個任務的執行周期均為10ms。
圖5 周期時鐘節拍圖
從圖5 中可以看出,系統初始化完成以后,Time1 開始計時,當達到5ms 時,在A 點
發生周期中斷,然后進入周期中斷子程序,啟動AD 轉換,通過I2C 總線讀取OZ890 中的
數據。AD 轉換完畢后,軟件觸發ADC 中斷保存數據并進行相應的處理,清除周期中斷標
志。當達到10ms 時,發生下溢中斷,進入下溢中斷服務子程序,執行CAN 發送任務、SOC
計算任務、系統監視故障診斷任務、串口發送任務。另外,CAN 接收和串口接收執行采用
中斷觸發方式。利用周期中斷和下溢中斷來劃分任務執行時間區域不僅能夠滿足整車10ms
每幀數據的CAN 發送要求,而且每一個任務時間也都能通過計數器和標志位的狀態來計算
任務的執行時間,以便更好的分配任務的執行時間段。
3 結論
電池管理系統采用了DSP+OZ890 的結構,加之相應的抗干擾措施,具有高性能、低成
本等特點。由于采用了專門的電池采樣芯片OZ890,提高了采樣精度、解決了電池單體電
壓不均衡造成的過充問題。同時使硬件的開發周期大大縮短,增強了系統的可靠性和可維護
性,在實際應用中取得了良好的效果。
本文作者創新點:使用OZ890 電池采樣芯片測量電池數據,同時使用PCA9564 擴展
LF2407 的I2C 接口,實現了LF2407 與OZ890 之間的通信。
參考文獻
[1] Texas Instrument TMS320LF2407A DSP Controller data sheet [Z].2001.
[2] O2Micro technology company OZ890 datasheet [Z].2007.
[3] 劉濱,姜廣欣,楊占錄.I2C 串行總線技術在DSP 系統中的虛擬實現[J].
[4] Philips Semiconductors PCA9564 Parallel bus to I2C-bus controller data sheet [Z].2003.
[5] Analog Devices Hot Swappable Dual I2C Isolators ADuM1250/ADuM1251 data sheet [Z]. 2006.
[6] 劉和平,王維俊,江渝,鄧力等.TMS320LF2407x DSP C 語言開發應用[M].北京航空航天大學出版社,2003.
評論
查看更多