一種蓄電池雙向電流檢測(cè)的設(shè)計(jì)方案-設(shè)計(jì)應(yīng)用_第1頁(yè)
一種蓄電池雙向電流檢測(cè)的設(shè)計(jì)方案-設(shè)計(jì)應(yīng)用_第2頁(yè)
一種蓄電池雙向電流檢測(cè)的設(shè)計(jì)方案-設(shè)計(jì)應(yīng)用_第3頁(yè)
一種蓄電池雙向電流檢測(cè)的設(shè)計(jì)方案-設(shè)計(jì)應(yīng)用_第4頁(yè)
一種蓄電池雙向電流檢測(cè)的設(shè)計(jì)方案-設(shè)計(jì)應(yīng)用_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

精品文檔-下載后可編輯一種蓄電池雙向電流檢測(cè)的設(shè)計(jì)方案-設(shè)計(jì)應(yīng)用摘要:介紹了裝備蓄電池組工作電壓和電流實(shí)現(xiàn)檢測(cè)的需求,利用運(yùn)算放大器構(gòu)建了正負(fù)雙向電流量累積求和及跟蹤反向的預(yù)處理電路,基于STM32F103控制器片內(nèi)AD實(shí)現(xiàn)了12位電壓和電流的信號(hào)采集轉(zhuǎn)換。給出了主要程序片段和如何提高ADC精度的一些措施。

0.引言

在某裝備的研制過(guò)程中,為保障裝備效能的正常發(fā)揮,需要實(shí)時(shí)掌握其內(nèi)部集成的鉛酸蓄電池組的工作狀態(tài),主要狀態(tài)參數(shù)包括電池組電壓和充放電電流,要求監(jiān)控系統(tǒng)做到精度高、可靠、簡(jiǎn)單。具體參數(shù)指標(biāo)是:蓄電池組標(biāo)稱值DC24V,充放電電流在5A以內(nèi)。電壓檢測(cè)精度要求0.01V,電流檢測(cè)精度要求0.01A,即小數(shù)點(diǎn)后保證兩位有效數(shù)字。據(jù)此本文設(shè)計(jì)了基于STM32F103VB嵌入式控制器為的信號(hào)處理、采樣和計(jì)算的軟硬件控制系統(tǒng)。

STM32F103系列控制器由意法半導(dǎo)體公司(ST)推出,使用高性能的ARMCortex-M332位的RISC內(nèi)核,工作頻率為72MHz,內(nèi)置高速存儲(chǔ)器(高達(dá)128K字節(jié)的閃存和20K字節(jié)的SRAM),豐富的增強(qiáng)I/O端口和聯(lián)接到兩條APB總線的外設(shè)。該器件包含3個(gè)通用16位定時(shí)器和一個(gè)PWM定時(shí)器,還包含標(biāo)準(zhǔn)和先進(jìn)的通信接口:多達(dá)2個(gè)I2C和SPI、3個(gè)USART、一個(gè)USB和一個(gè)CAN。STM32F103xx增強(qiáng)型系列工作于-40℃至+105℃的溫度范圍,供電電壓2.0V至3.6V,一系列的省電模式保證低功耗應(yīng)用的要求[1]。該設(shè)計(jì)選用STM32F103VB處理器主要考慮其高速可靠、資源豐富、工作溫度寬和供電電壓寬、功耗低、性價(jià)比高的特點(diǎn),尤其是其內(nèi)部集成雙路AD轉(zhuǎn)換器,16通道,12位精度,1μs轉(zhuǎn)換時(shí)間。

1.蓄電池組電壓和電流采樣處理過(guò)程

設(shè)計(jì)的蓄電池組工作狀態(tài)實(shí)時(shí)檢測(cè)系統(tǒng)如圖1所示,功能上包括獨(dú)立的兩部分:電壓檢測(cè)和電流檢測(cè)。其中電壓檢測(cè)實(shí)現(xiàn)較為簡(jiǎn)單。

該設(shè)計(jì)的基本思想是將雙向電流的電壓變化范圍均控制在0~Vref+范圍內(nèi)。這是以犧牲A/D轉(zhuǎn)換精度為代價(jià)的。詳細(xì)過(guò)程如下:

①串入電阻Rm=50Ω,獲得模擬量電壓輸出V1范圍為-1.25~+1.25V。

②利用兩門運(yùn)算放大器構(gòu)建求和電路,實(shí)現(xiàn)V1和+1.25V基準(zhǔn)電壓累加,將V1擴(kuò)展至0~-2.5V。再做反向跟隨放大,實(shí)現(xiàn)電壓反向功能,輸出電壓V2為0~+2.5V。

運(yùn)算放大器選用通用運(yùn)放LM324,供電電壓±15V,和電流傳感器LA28-NP采用同一供電電路。

取R3=R4=R5=10kΩ,Vmid=-(1.25+V1),故Vmid電壓范圍為0~-2.5V。

在第二級(jí)反相放大電路中可得:

取R3=R4=R5=10kΩ,Vmid=-(1.25+Vin),故Vmin電壓范圍取值:0~-2.5V。

在第二級(jí)的反相放大電路中

取R6=R7=10kΩ,則Vout=-Vmid,Vout取值范圍:0~+2.5V。

運(yùn)算放大器選用通用運(yùn)放LM324,供電電壓±15V,和電流傳感器LA28-NP采用同一供電電路。

③STM32F103的A/D轉(zhuǎn)換器精度為12位,理論上對(duì)應(yīng)數(shù)字量范圍0~4096。實(shí)際情況下,由于接插件、線纜、PCB和器件的綜合影響,充放電流計(jì)算公式為:y=kx-5.046,k=0.00244。在實(shí)際的程序編制中,k定義為float數(shù)據(jù)類型,至少取3位有效數(shù)字,才能保證O.01A的電流精度。x表示A/D轉(zhuǎn)換器得到的數(shù)字量。y表示實(shí)際電流值,負(fù)數(shù)表示充電電流,正數(shù)表示放電電流。充放電電流和A/D數(shù)字量的曲線關(guān)系如圖3所示。

圖3充放電電流和AD數(shù)字量的曲線關(guān)系

2軟件設(shè)計(jì)

2.1基本思路

監(jiān)控系統(tǒng)軟件的開(kāi)發(fā)采用ARM公司的RealViewMDK開(kāi)發(fā)工具,統(tǒng)一采用C語(yǔ)言編程。為提高開(kāi)發(fā)效率,ST公司推出了針對(duì)STM32控制器的固件函數(shù)庫(kù),目前的版本為STM32F10x_StdPeriph_Lib_V3.2.O。電壓和電流檢測(cè)A/D轉(zhuǎn)換的軟件設(shè)置如下:

①配置模擬量輸入的GPIO口。STM32控制器有個(gè)很大的優(yōu)點(diǎn),其A/D轉(zhuǎn)換輸入引腳可以是任意GPIO,只要GPIO配置為GPIO_Mode_AIN模式,即可以實(shí)現(xiàn)模擬量輸入。STM32F103共有16個(gè)外部通道,該設(shè)計(jì)中將PCA和PC6作為電壓量和電流量的ADC輸入端。

②將ADC設(shè)置為連續(xù)轉(zhuǎn)換模式、右對(duì)齊、非外部觸發(fā)。

③啟動(dòng)ADC,開(kāi)始采樣轉(zhuǎn)換和處理。

2.2主要程序片段

STM32的ADC主要程序片段如下:

/*配置GPIO口程序*/

voidGPIO_Configuration(void)

{

GPIO_InitTypeDefGPIO_InitStructure;

……

//配置PC4和PC6為模擬量輸入

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_6|GPIO_Pin_6;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AIN;

GPIO_Init(GPIOC,GPIO_InitStructure);

……

}

/*電壓電流配置、工作采樣主程序*/

intmain(void)

{

……

RCC_Configuration();

GPIO_Configuration();

DMA_Configuration();

……

//ADC1configuration

ADC_InitStructure.ADC_Mode=ADC_Mode_Independent;

ADC_InitStructure.ADC_ScanConvMode=ENABLE;

ADC_InitStructure.ADC_ContinuousConvMode=ENABLE;

ADC_InitStructure.ADC_ExternalTrigConv=ADC_ExternalTrigConv_None;

ADC_InitStructure.ADC_DataAlign=ADC_DataAlign_Right;

ADC_InitStructure.ADC_NbrOfChannel=1;

ADC_Init(ADC1,ADC_InitStructure);

//DC1regularchannel14configuration

ADC_RegularChannelConfig(ADC1,ADC_Channel_14,1,ADC_SampleTime_55Cycles5);

ADC_DMACmd(ADC1,ENABLE);//EnableADC1DMA

ADC_Cmd(ADC1,ENABLE);//EnableADC1

//EnableADC1resetcalibarationregister

ADC_ResetCalibration(ADC1);

//ChecktheendofADC1resetcalibrationregister

while(ADC_GetResetCalibrationStatus(ADC1));

//StartADC1calibaration

ADC_StartCalibration(ADC1);

//ChecktheendofADC1calibration

while(ADC_GetCalibrationStatus(ADC1));

//StartADC1SoftwareConversion

ADC_SoftwareStartConvCmd(ADC1,ENABLE);

while(1)

{

AD_value=ADC_GetConversionValue(ADC1);

}

}

2.3軟件濾波措施

該應(yīng)用中電壓量和電流量為變化較緩的信號(hào),故軟件采取防脈沖干擾平均濾波算法。連續(xù)采樣N個(gè)數(shù)據(jù),去掉一個(gè)值和一個(gè)值,然后計(jì)算N-2個(gè)數(shù)據(jù)的算術(shù)平均值。通過(guò)實(shí)驗(yàn)N取5時(shí)可達(dá)到滿意的效果。該算法能夠剔除偶然出現(xiàn)的脈沖性干擾,消除由于脈沖干擾所引起的采樣值偏差。

3提高信號(hào)檢測(cè)精度的措施

為提高ADC處理的精度和系統(tǒng)抗干擾能力,該設(shè)計(jì)從ADC的使用、電壓基準(zhǔn)和供電、濾波及元器件的選擇等方面采取了系列的措施。

3.1ADC的使用

使用STM32F103的ADC時(shí)考慮兩個(gè)方面:

①兩個(gè)模擬量輸入口臨近的引腳不安排數(shù)字量I/O。I/O腳之間存在耦合電容,因此I/O端口的翻轉(zhuǎn)可能對(duì)ADC的模擬輸入產(chǎn)生一些噪聲。這可能是因?yàn)镻CB走線過(guò)于靠近,或互相交叉而產(chǎn)生的。

②溫度會(huì)對(duì)ADC的精度產(chǎn)生較大的影響,主要包括偏移誤差和增益誤差。這些誤差可以通過(guò)微控制器的固件程序補(bǔ)償。一種方法是,根據(jù)不同的溫度范圍測(cè)量出完整的偏移和增益變化,再在存儲(chǔ)器中建立一個(gè)對(duì)照表,需要耗費(fèi)額外的費(fèi)用和時(shí)間。另一種方法是,當(dāng)溫度達(dá)到某個(gè)數(shù)值時(shí),使用內(nèi)部的溫度傳感器和ADC看門狗功能,重新校準(zhǔn)。

3.2電壓基準(zhǔn)芯片和獨(dú)立電源供電

在該設(shè)計(jì)中為保證信號(hào)的質(zhì)量,重要的電平信號(hào)采用專用芯片來(lái)實(shí)現(xiàn)。例如使用REF2912和REF2925電壓基準(zhǔn)芯片產(chǎn)生+1.25V和+2.5V兩個(gè)電壓基準(zhǔn)源,+1.25V基準(zhǔn)信號(hào)用于放大器累加電路,+2.5V基準(zhǔn)信號(hào)提供給SFM32F103的Vref+。另外,模擬電路、控制器模擬供電和數(shù)字電路供電采用獨(dú)立電源,由專用DC/DC提供±15V電源,為電流傳感器LA-28P及運(yùn)算放大器LM324供電,STM32F103的模擬部分VDDA和數(shù)字部分VDD使用獨(dú)立的+3.3V供電。三種獨(dú)立電源于一點(diǎn)共地,盡可能地減少電源間的互擾。這樣做的好處是,避免了很多的I/O端口翻轉(zhuǎn)操作在直流電源上產(chǎn)生的大量的噪聲干擾。

3.3其他抗干擾措施

該設(shè)計(jì)還采取了其他的一些抗干擾措施:STM32F103控制器的VDDA和Vref+引腳連接2個(gè)外部的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論