新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于STM32和CAN總線的電動車電池管理系統(tǒng)設(shè)計

基于STM32和CAN總線的電動車電池管理系統(tǒng)設(shè)計

作者: 時間:2014-05-15 來源:網(wǎng)絡(luò) 收藏

摘要 根據(jù)當今電池管理系統(tǒng)的現(xiàn)狀,結(jié)合目前ARM、單片機、總線技術(shù)等的發(fā)展,針對一種鋰離子動力電池組的監(jiān)測管理提出了具體方案,設(shè)計主控板以F107為核心,子控版以C8051F500單片機為核心,通過網(wǎng)絡(luò)進行通信管理,實現(xiàn)了電池充放電保護、抑制電池間的不一致性、記錄歷史數(shù)據(jù)等功能。系統(tǒng)兼顧成本,穩(wěn)定性,精確度,實時性,具有良好的發(fā)展前景。

本文引用地址:http://butianyuan.cn/article/246894.htm

隨著電池能源的廣泛應(yīng)用,石油資源的枯竭和環(huán)境污染,電動汽車以其節(jié)能環(huán)保的優(yōu)勢引起越來越多的重視,在電動汽車的研究和發(fā)展上,車載電池及其管理系統(tǒng)的研究與制造占據(jù)著重要位置。電動汽車動力電池在應(yīng)用中的主要問題表現(xiàn)在:生產(chǎn)過程中,電池的工藝,技術(shù)以及成組技術(shù)還不能保證其初始性能具有良好的一致性;使用過程中,對過充電、過放電、過溫度、過電流等非常敏感,這類情況的發(fā)生會明顯縮短電池壽命,甚至會導致電池報廢。電池組是幾十個甚至上百個單體電池串聯(lián),單體電池之間存在不一致性,隨著連續(xù)的充放電循環(huán),電池間的不一致性加劇,電池組的可用容量受容量最小的單體電池制約。對于這些情況,電池的初始性能必須要依靠企業(yè)生產(chǎn)工藝的優(yōu)化,生產(chǎn)過程關(guān)鍵參數(shù)的控制來改善,而使用過程中出現(xiàn)的問題則需要電池管理系統(tǒng)來解決。本設(shè)計是以F107為核心的主控制器通過通信網(wǎng)絡(luò)控制以C8051F500單片機為核心的電池組信息采集和基本控制模塊工作及獲取數(shù)據(jù)。主要實現(xiàn)了單體電池的過壓放電均衡,過流保護、過溫保護、過放電保護以及通過上級控制器匯報并存儲整體電池組的工作狀態(tài)。

1 硬件設(shè)計

1.1 系統(tǒng)總體架構(gòu)

系統(tǒng)所監(jiān)控管理的電池包組成結(jié)構(gòu)為:先將一定數(shù)目的鋰離子電池串聯(lián),將若干電池串并聯(lián)成一電池組,最后將若干電池組串聯(lián)構(gòu)成整體的電池包,這種串并聯(lián)復(fù)用的組織形式有利于進行單串電池的充放電起停操作,降低使用過程中產(chǎn)生的電池容量不一致性。管理系統(tǒng)的構(gòu)成如圖所示,每個電池串配置一個二級控制器監(jiān)測管理,采集電流、電壓、溫度等數(shù)據(jù)并上傳,控制電池串起停與均衡操作,一級控制器為雙控制器結(jié)構(gòu),CAN1控制器與二級控制器組成電池組的CAN網(wǎng)絡(luò),CAN2控制器與主控板電池包組成內(nèi)部一級CAN總線網(wǎng)絡(luò),負責向主控板匯報該電池組工作情況及向下屬二級控制器傳達指令,主控制板的CAN2控制器則接入整車CAN總線。由于各電池組為串聯(lián)結(jié)構(gòu),電壓的遞增關(guān)系影響到二級控制器,故而供電時需經(jīng)DC/DC轉(zhuǎn)換。

 

 

1.2 主控制器、一級控制器架構(gòu)

主控制器,一級控制器的核心控制由意法半導體的STFM32F107完成,F107是一款高性能、低成本、低功耗的32位RISC微處理器,采用ARMCortex-M3的內(nèi)核,內(nèi)部含有256 kB的Flash和64 kB的SRAM,有著充足的編程空間,主頻為72 MHz,足以承擔對下級控制器的實時管理。所包含外設(shè)有:基本的電源電路、復(fù)位電路、標準JTAG調(diào)試口、雙CAN物理層電路、EEPROM存儲器,對于本系統(tǒng)設(shè)計來說是最佳方案。

1.3 二級控制器架構(gòu)

由于鋰離子電池單體電壓較小,一般約為4 V,而整體電池包電壓則高達數(shù)百伏,單串電池長度也在15個以上,而目前常用的電池測量芯片成本較高且只能監(jiān)測6節(jié)或12節(jié)電池電壓,綜合考慮決定以C8051F500為核心設(shè)計二級控制器,這種設(shè)計相較于專用電池測量芯片而言,缺點是精度較低,優(yōu)點是可以對所測量的數(shù)據(jù)先進行計算處理,不完全依賴上級控制器的指令。

C8051FS00處理器按AEC-Q100測試標準設(shè)計,具有寬工作電壓、寬工作溫度范圍、抗干擾能力強并內(nèi)置CAN及LIN總線控制器,適合汽車電子及工業(yè)控制方面的應(yīng)用。該芯片具有32路I/O口,接口數(shù)滿足監(jiān)控電池串工作的需要,具有12 bit的ADC,每個通道的最小建立時間<50μs即巡檢一個循環(huán)的總時間<1 ms,足以支持對于電池串的實時監(jiān)控,控制器架構(gòu)如圖2所示。

 

 

其中帶隔離驅(qū)動的CAN總線物理層電路如圖3所示,此外還有DC/DC電源,C2在線調(diào)試接口等外部設(shè)備。

 

 

2 軟件設(shè)計

2.1 二級控制器軟件流程

(1)系數(shù)修正程序。因為電池總數(shù)極多,為降低系統(tǒng)的成產(chǎn)成本和占用空間,電壓測量采用較為簡單的電阻分壓,電流測量則采用電阻采樣法,為彌補電阻造成的誤差,預(yù)置了修正系數(shù)的程序,每塊電路板投入使用前,可先在所有電壓測量端口接5 V標準電壓,采樣電阻兩端通10 A標準電流。程序可自動根據(jù)所測值修改系數(shù),提高工作精確度。

(2)軟件流程。如圖4所示,程序開始運行時,首先對C8051FS00內(nèi)部的系統(tǒng)時鐘以及一些變量進行初始化,然后對各I/O口、定時器、中斷、ADC工作方式及CAN總線工作方式初始化,接著根據(jù)測量電流的兩個I/O數(shù)據(jù)判斷電池組目前是充電還是放電,以選取不同的控制方案,繼而檢測是否有一級控制器發(fā)出的指令,若有則執(zhí)行指令,否則ADC將巡檢各I/O的輸入電壓,程序通過預(yù)存的系數(shù)將其還原為各電池的端電壓,電池串的電流和溫度。最后計算各電池的SOC,考慮C8051F500的運算能力,采用精確度和運算復(fù)雜度都較為中等的安時積分法,并根據(jù)溫度,電壓,電壓-時間梯度等量加以修正。與此同時,實時上報總電壓、電流、溫度和總SOC共4個參數(shù)給一級控制器,充電時如果有單節(jié)電池電壓過高,則開啟相對應(yīng)的MOS管,以均衡充電。出現(xiàn)過溫,過流或達到放電終點時,斷開該串電池,并將斷開時的所有數(shù)據(jù)均上報一級控制器,否則主程序繼續(xù)判斷是否有指令,循環(huán)上述過程。

 

離子色譜儀相關(guān)文章:離子色譜儀原理

上一頁 1 2 下一頁

關(guān)鍵詞: STM32 CAN

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉