鉅大LARGE | 點擊量:1364次 | 2020年04月28日
基于LabVIEW的電動汽車電池監測預警系統
摘要車載電池作為電動汽車的核心部件,如何有效的管理和利用蓄電池的能量,新增電池的使用壽命成為關鍵問題。文中介紹了一種基于STC89C52的蓄電池信息采集硬件平臺,通過對A/D轉換、串口通信、溫度傳感器控制等部分的完善,開發了完整的硬件數據采集系統,實現了對單體電池電壓、電流、溫度等基本信息的采集功能,運用LabVIEW搭建上位機數據處理平臺,對適用于純電動汽車的電池實時監測預警系統的研究,實現了電池基本信息測量、電量估計、故障報警等功能,以及對電池組進行合理有效的管理和控制,該系統工作中運行穩定,在實際應用中具有良好的參考價值。
能源枯竭和環境破壞的矛盾日益突出,基于電動汽車的節能和環保性,電動汽車的發展已成為必然趨勢。車載電池是電動汽車的核心部位,而電池管理系統研究的關鍵是如何有效利用蓄電池的能量,新增電池的使用壽命。電池管理系統能夠估計出剩余電量SOC,確保SOC在合理的工作范圍,又可以對故障電池進行早期預測,防止由于單體電池的破壞不能及時發現而降低整組電池的使用壽命。因此,電池能量管理系統(BMS)的研究越來越受到人們重視。
宋雪樺等設計了適用混合電動汽車上動態均衡式的電池管理系統(BMS),優化了SOC估算,滿足了系統估算5%以內的誤差要求,實驗最終結果誤差為3.3%;王波等基于LTC6803電池管理系統的電壓采集濾波、溫度采集擴展、電壓均衡、SpI通訊等外圍電路的設計方法,最大限度地減少了外圍器件的使用;張華輝等基于DSp的鋰離子電池管理系統,實現單體電池電壓、總電壓、電流、溫度的檢測,具有SOC估算、通訊、計算機監測等功能。
本文運用基于STC89C52的蓄電池信息采集硬件平臺,實現對單體電池電壓、電流、溫度等基本信息的采集功能,在LabVIEW中搭建上位機數據處理平臺,對適用于純電動汽車的電池實時監測預警系統進行研究,實現了電池基本信息測量(電壓、電流、溫度)、電量估計、故障報警等功能。
1研究方法
電池監測預警系統需具備監測電池工作狀態的功能,包括電池的電壓、電流和溫度,并在其超出工作范圍時進行報警,最大限度發揮電池的功效。
1.1系統方法選擇
監控平臺是基于電池管理系統設計,包括硬件和軟件兩個部分。硬件部分是基于STC89C52蓄電池的信息采集硬件平臺,對單體電池的電壓、電流、溫度等基本信息進行采集。軟件部分是運用LabVIEW實現電池基本信息測量、電量估計、故障報警等功能。
目前,市面上成型的電池監測預警系統重要包括集中型、分散型和集成型3種。該研究采用以STC89C52單片機為處理芯片的下位機,對單體鋰離子電池的基本信息進行采集和上傳,而在上位機基于LabVIEW搭建監測預警平臺,進行實時數據的顯示和報警。
1.2電池的狀態監測
電池監測預警系統的重要功能是實時監測鋰離子電池的運行狀況,并將其反饋到上位機進行顯示和處理。該研究以單體磷酸鐵鋰離子電池為例進行運行測試。
電壓的監測:單體磷酸鐵鋰離子電池的正常工作電壓范圍是2~3.7V,若不在這一區間,系統將自動報警。
電流的監測:放電電流的大小關于電動汽車的安全工作至關重要,若超過正常工作范圍,將可能引起電池組起火甚至爆炸。
溫度的監測:單體磷酸鐵鋰離子電池的正常工作溫度是-20~50℃,若超出范圍,平臺將自動指示報警。
1.3串行口通信設置
下位機與pC機的通信方式通常有并行和串行兩種方式。在現代單片機測控系統的設計實現中,信息的交互通常采用串行通信方式。其中,串行通信又包含異步串行通信和同步串行通信兩種方式。異步串行通信方式中,通信的發送與接收設備使用各自時鐘控制數據的發送和接收過程,因為這種方式不要求收發雙方時鐘的嚴格一致,實現起來相對簡單,設備開銷較小。因此,本研究使用的通信方式為異步串行通信方式。
目前,最常用的串行接口標準是美國電子工業協會(EIA)所制定的異步串行通信標準RS-232,它可以實現單片機與pC機的數據通信,其通信原理電路圖如圖1所示。
由于單片機使用TTL電平,而RS-232使用的是RS-232電平,為保證通信穩定性,該論文使用電平轉換芯片MAX232,同時集成RS-232電平和TTL電平之間的互轉。電路原理圖如圖2所示。
2電池監測預警系統的硬件實現
2.1電池監測預警系統的硬件結構
硬件部分使用STC89C52蓄電池信息采集硬件平臺,實現對單體電池電壓、電流、溫度等基本信息的采集功能。單體磷酸鐵鋰離子電池的電壓、電流、溫度采集的硬件部分結構如圖3所示。
2.2A/D工作原理
在A/D轉換芯片中,采集到的模擬信號在時間上是持續的,而發送給單片機的數字信號是離散的。因此,A/D芯片必須在規定的時間點上對采集到的模擬信號進行采樣,并將采樣數值轉換成數字量發送給單片機。
A/D轉換分為3個階段:采樣保持、量化和編碼。為提高數據轉化效率,需采用逐次比較型的A/D轉換芯片,通過數次與不同的參考電壓進行比較,獲取差距最小的電壓值,即轉換的輸出值,原理如圖4所示。
在采集電壓和電流方面,該研究采用ADC0804芯片,該芯片屬于集成逐次比較型A/D轉換芯片。
2.3ADC0804電壓、電流采集實現電路
ADC0804引腳和功能參見文獻。該研究中ADC0804芯片外圍電路與單片機的連接原理如圖5所示。
(1)VIN(+)接電位器的中間滑動端,VIN(-)接地。調節電位器時,中間滑動端的電壓在0~5V的范圍內變化,ADC0804的數字輸出端在0x00~0xFF變化。
(2)WR、RD分別接單片機的p3.6和p3.7引腳,數字輸出端接p1口。
2.4溫度采集實現電路
溫度采集實現電路采用DS18B20溫度傳感器。該裝置采用單總線協議,僅占用一個I/O端口,直接將外界溫度轉化成數字信號,串行輸出。DS18B20介紹參見文獻,測量實現電路如圖6所示。
在電路連接方面,將DS18B20與STC89C51相連進行通信。在實際應用中,通常采用多點采集對電池溫度進行測量時,故需將所有傳感器的I/O口連接在一起,在程序編寫時,通過傳感器內部芯片序列號識別,進行多點擴展,設計多通道的溫度采集硬件系統。
3LabVIEW上位機監測平臺
3.1LabVIEW虛擬儀器軟件介紹
LabVIEW是美國NI(NationalInstruments)推出的一種程序開發環境,開創G語言——一種用圖標代替文本行創建應用程序的圖形化編程的語言,使用更為方便直觀。該圖形化程序編譯平臺具有多種功能包括:DLL(DynamicLinkLibrary)、多線程、數據記錄、運行控制等,可對程序設計進行深入的原理分析、細化的結構設計及靈活的接口實現,確保電池監測預警監控平臺的高效性與穩定性。
該研究使用LabVIEW進行測控,將下位機實時采集到的基本信息的16進制通過串口上傳至pC。圖7為LabVIEW平臺的整體界面。
3.2模擬電壓、電流采集
圖8和圖9分別為電壓、電流的實時采集圖像。
圖10~圖12為LabVIEW中處理電壓、電流部分的程序圖。串口初始化設置的波特率與下位機相同,均為9600bit·s-1,數據位為8,無校驗位,停止位為1。該部分程序采用層疊式順序結構,包含3個幀(0~2)。程序中還使用了VISA串口的相關知識、索引數組等相關知識。
下位機部分接收變化的模擬電壓(0~5V),pC接收單片機發送的電壓值(16進制,1Byte),并轉換成十進制形式,以數字、曲線的方式輸出。
電壓值設定的合理范圍是2~3.7V(磷酸鐵鋰離子電池的正常電壓范圍),低于或高于該范圍紅燈亮起,電流值設定的上限為50A(磷酸鐵鋰離子電池的持續工作電流約為50A),當電流高于此值時紅燈亮起報警。
3.3單體鋰離子電池溫度采集
圖14~圖16為溫度采集的上位機程序。串口初始化設置的波特率與下位機相同,均為9600bit·s-1,數據位為8,無校驗位,停止位為1。該部分程序層疊式順序結構,包含3個幀(0~2)。另外,程序中使用了VISA串口、索引數組等相關知識。
下位機部分接收變化的溫度,pC接收單片機發送的溫度值,并轉換成十進制形式,以數字、曲線的方式輸出。溫度值設定的合理范圍是-20~60℃,低于或者高于該范圍紅燈亮起,進行報警。
4結束語
本研究基于STC89C52的蓄電池信息采集硬件平臺,通過對A/D轉換、串口通信、溫度傳感器控制等部分的完善,開發了完整的硬件數據采集系統。借助LabVIEW開發平臺的多線程及其靈活的接口技術,利用其強大的數據處理能力以及豐富實用的程序結構,對適用于純電動汽車的電池實時監測預警系統進行了研究,重要實現了電池基本信息測量、電量估計、故障報警等功能。