鋰離子電池組監(jiān)控系統(tǒng)研究與實(shí)現(xiàn) ― 下位機(jī)軟件設(shè)計(jì)
4.1開發(fā)平臺
本文引用地址:http://butianyuan.cn/article/201808/387859.htm由于本系統(tǒng)采用的是TI公司的MSP430系列的單片機(jī),因此開發(fā)平臺選用IAR Embedded Workbench for Msp430 3.42A這個(gè)版本。該軟件是一種增強(qiáng)型一體化嵌入式集成開發(fā)環(huán)境,其中完全集成了開發(fā)嵌入式所需的文件編輯、項(xiàng)目管理、編譯、鏈接和調(diào)試工具。該軟件除了可以進(jìn)行純軟件仿真,也可以結(jié)合仿真器實(shí)現(xiàn)在線仿真調(diào)試。
4.2軟件模塊劃分
下位機(jī)軟件系統(tǒng)主要由定時(shí)中斷數(shù)據(jù)采集處理模塊、外部中斷短路保護(hù)模塊、充放電保護(hù)模塊和均衡保護(hù)模塊等構(gòu)成。軟件主程序流程圖如圖4.1所示。
4.3數(shù)據(jù)采集模塊
數(shù)據(jù)采集處理模塊是整個(gè)檢測系統(tǒng)的核心,通過在主程序中設(shè)置定時(shí)器1的定時(shí)時(shí)間,使其產(chǎn)生中斷,在中斷程序里完成對電壓、電流和溫度等參數(shù)的采集和處理。該模塊包括電壓,電流及溫度的采集以及處理。這些數(shù)據(jù)的精確度對系統(tǒng)的性能有著決定性的作用。
4.3.1電壓采集模塊系統(tǒng)需要對16節(jié)鋰電池模組的單節(jié)電池電壓進(jìn)行采集,由于MSP430F233只有8路A/D,同時(shí)還要對4路溫度及1路電流采樣,因此,系統(tǒng)采用分時(shí)復(fù)用的方式用一路A/D實(shí)現(xiàn)對16節(jié)鋰電池進(jìn)行電壓采集,復(fù)用方式采用4片CD4052實(shí)現(xiàn)。程序中建立兩個(gè)枚舉類型的數(shù)據(jù)來對CD4052進(jìn)行選通,每次選通時(shí),利用CD4052的差分功能可得到單節(jié)的電池電壓。這兩個(gè)枚舉類型為:
enum ADD_STATA{S0,S1,S2,S3}
enum CS_STATA{CS1,CS2,CS3,CS4}
其中ADD_STATA用于對單片的CD4052的四路通路進(jìn)行選擇,CS_STATA對CD4052進(jìn)行片選,在程序中對應(yīng)這兩種枚舉數(shù)據(jù)類型的變量分別為ADD_A_B和CS_SEL,電壓的采樣利用定時(shí)器1中斷。定時(shí)器每計(jì)數(shù)200下采樣一次,每路信號采樣10次。
系統(tǒng)晶振頻率為32K,因此,每次采樣的采樣周期為:t=200/32k=0.006s
4.3.2電流及溫度采集模塊
系統(tǒng)電流的采集通過檢測高端電流檢測芯片MAX4081上RS-和RS+兩端的電壓獲得。溫度的采集通過檢測熱敏電阻兩端的電壓獲得。電流和溫度信號的采集共占用5路A/D通道。
4.4充放電管理模塊
4.4.1充電管理模塊
鋰電池模組在正常情況下充電回路要保持一旦接通就充電,但在充電過程中如果單體電壓的最大值大于4.2V時(shí),啟動定時(shí)器2,定時(shí)一段時(shí)間后進(jìn)入中斷,在中斷內(nèi)再次對該過充信號進(jìn)行檢測,如果仍然超過設(shè)定值,就需要啟動充電保護(hù),斷開充電回路。但由于某種原因(比如放電)而使最大值下降到4.0V且持續(xù)一定時(shí)間要接通充電回路,以方便下次充電。為實(shí)現(xiàn)此功能定義了幾個(gè)標(biāo)志位:charge_guard, chage_f_guard, charge_guarded,分別代表單體電池電壓最大值大于4.2V標(biāo)志,單體電池電壓最大值小于4.0V標(biāo)志和進(jìn)入充電保護(hù)標(biāo)志。具體實(shí)現(xiàn)方式為先根據(jù)電池最大值決定是否啟動定時(shí)器中斷,流程圖如4.2所示:
評論