




全文預(yù)覽已結(jié)束
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
基于STM32F103控制器的蓄電池雙向電流檢測設(shè)計(jì) 高兵權(quán) 肖學(xué)福 劉金彪 張揚(yáng)奇 摘要:介紹了裝備蓄電池組工作電壓和電流實(shí)現(xiàn)檢測的需求,利用運(yùn)算放大器構(gòu)建了正負(fù)雙向電流量累積求和及跟蹤反向的預(yù)處理電路,基于STM32F103控制器片內(nèi)AD實(shí)現(xiàn)了12位電壓和電流的信號采集轉(zhuǎn)換。最后給出了主要程序片段和如何提高ADC精度的一些措施。關(guān)鍵詞:STM32,控制器,雙向,電流,檢測中圖分類號:TB51 文獻(xiàn)標(biāo)識碼:AThe Design of Bidirectional Battery Current Detection With STM32F103 Controller Gao Bing-quan, Xiao Xue-fu, Liu Jin-biao Zhang Yang-qi(Institute of Military Transportation ,Tianjin,300161)Abstract:The need of equipment battery voltage and current real-time detection is introduced. Build the bidirectional current sum, trace and reverse pre-process circuit with operational amplifier. achieve the 12 bit voltage and current signal collection and conversion based on STM32F103 internal AD.At last the main program segment and the methods of How to get the best ADC accuracy are given.Keywords: STM32,Controller,Bidirectional,Current,Detection1.引言在某裝備的研制過程中,為保障裝備效能的正常發(fā)揮,需要實(shí)時(shí)掌握其內(nèi)部集成的鉛酸蓄電池組的工作狀態(tài),主要狀態(tài)參數(shù)包括電池組電壓和充放電電流,要求監(jiān)控系統(tǒng)做到精度高、可靠、簡單。具體參數(shù)指標(biāo)是:蓄電池組標(biāo)稱值DC24V,充放電電流在5A以內(nèi)。電壓檢測精度要求0.01V,電流檢測精度要求0.01A,即小數(shù)點(diǎn)后保證兩位有效數(shù)字。據(jù)此本文設(shè)計(jì)了基于STM32F103VB嵌入式控制器為核心的信號處理、采樣和計(jì)算的軟硬件控制系統(tǒng)。STM32F103系列控制器由意法半導(dǎo)體公司(ST)推出,使用高性能的ARM Cortex-M3 32位的RISC內(nèi)核,工作頻率為72MHz,內(nèi)置高速存儲器(高達(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位精度,1s轉(zhuǎn)換時(shí)間。2.蓄電池組電壓和電流采樣處理過程設(shè)計(jì)的蓄電池組工作狀態(tài)實(shí)時(shí)檢測系統(tǒng)如圖1所示,功能上包括獨(dú)立的兩部分:電壓檢測和電流檢測。其中電壓檢測實(shí)現(xiàn)較為簡單。圖1 信號采集和處理的工作原理圖2.1電壓檢測電壓信號量的檢測采用雙電阻分壓模式,取兩個(gè)合適阻值的電阻串聯(lián)分壓,分壓后的電壓信號送入STM32F103處理器的AD轉(zhuǎn)換引腳。本設(shè)計(jì)中,控制器基準(zhǔn)電壓采用+2.5V,故電壓信號輸入范圍須小于等于2.5V。而分壓電阻R1和R2的關(guān)系有公式(1)開確定,即VbatR1+R2 R2 2.5V (1)其中Vbat為蓄電池組電壓值,實(shí)際變化范圍:20V28V,取Vbat最大值28V,R1=102k,R2=10,均選用精度為1的金屬膜電阻。R1和R2的串聯(lián)電阻達(dá)到112 k,消耗的電量對裝備工作不會產(chǎn)生過大的影響。2.2充放電電流雙向采樣與處理系統(tǒng)充放電電流的實(shí)時(shí)檢測選用瑞士LEM公司LA28-NP電流傳感器,該傳感器是利用霍爾原理的閉環(huán)(補(bǔ)償)電流傳感器,原邊回路和副邊回路之間絕緣,可用于測量直交流脈沖和混合型電流,供電電壓15V。系統(tǒng)中采用1000:5的匝比,原邊充放電5A電流對應(yīng)副邊額定電流Is有效值為25mA。在應(yīng)用中,感應(yīng)電流Is串聯(lián)精密電阻Rm,取得電壓量V1,電阻Rm的取值取決于AD轉(zhuǎn)換器對于V2的要求。電流傳感器輸出電流為雙向,即25mA的電流信號,在實(shí)際工況中,放電時(shí)輸出最大+25mA電流,而充電時(shí),輸出為-25mA電流,由此而取得的電壓信號V1相對于地電平也為相應(yīng)的正負(fù)電壓。STM32F103控制器ADC輸入范圍為:Vref-VinVref+,應(yīng)用中Vref-接模擬地,Vref+接2.5V電壓基準(zhǔn),故ADC輸入范圍:02.5V。目前存在的問題是:STM32F103控制器采用單3.3V工作,模擬量輸入無法處理方向電壓。在傳統(tǒng)的方式下,如果電阻Rm基準(zhǔn)電平端接入地,當(dāng)充電工況下,感應(yīng)電流V1為負(fù)電壓,控制器無能為力。針對這個(gè)問題,本文設(shè)計(jì)了如圖2所示的累加升壓、跟隨方向信號預(yù)處理電路,解決了雙向電流的AD采樣問題。圖2 電壓累加升壓、跟隨反向轉(zhuǎn)換電路該設(shè)計(jì)的基本思想是將雙向電流的電壓變化范圍均控制在0Vref+范圍,是以犧牲AD轉(zhuǎn)換的精度為代價(jià)的,詳細(xì)過程如下:(1)串入電阻Rm=50,取得模擬量電壓輸出V1范圍:-1.25V+1.25V;(2)利用兩門運(yùn)算放大器構(gòu)建求和電路,實(shí)現(xiàn)V1和+1.25V電壓基準(zhǔn)累加,將V1升壓至0-2.5V。在做一次反向跟隨放大,實(shí)現(xiàn)電壓反向功能,輸出電壓V2范圍0+2.5V。圖2中電壓Vmid = -R5R31.25 + R5R4Vin。取R3=R4=R5=10k,Vmid = -(1.25+Vin),故Vmin電壓范圍取值:0-2.5V。在第二級的反相放大電路中Vout=-R7R6Vmid。取R6=R7=10k,則Vout = -Vmid,Vout取值范圍:0+2.5V。運(yùn)算放大器選用通用運(yùn)放LM324,供電電壓15V,和電流傳感器LA28-NP采用同一供電電路。(3)STM32F103控制器AD轉(zhuǎn)換為12位精度,理論上對應(yīng)數(shù)字量范圍04096。實(shí)際情況下,由于接插件、線纜、PCB和器件的綜合影響,求得放充電流計(jì)算公式為:y=kx-5.046,k=0.00244,在實(shí)際的程序編制中,k定義為float數(shù)據(jù)類型,至少取3位有效數(shù)字,才能保證0.01A的電流精度。x表示控制器AD轉(zhuǎn)換得到的數(shù)字量,y表示實(shí)際電流值,負(fù)數(shù)表示充電電流,正數(shù)表示放電電流。圖3 充放電電流和AD數(shù)字量的曲線關(guān)系3.軟件編制3.1軟件設(shè)計(jì)基本思路監(jiān)控系統(tǒng)軟件的開發(fā)采用ARM公司的RealView MDK開發(fā)工具,統(tǒng)一采用C語言編程。為提高開發(fā)效率,ST公司推出了針對STM32控制器的固件函數(shù)庫,目前可用的最新版本為STM32F10x_StdPeriph_Lib_V3.2.0。電壓和電流檢測AD轉(zhuǎn)換軟件設(shè)置及工作過程較為簡單。(1)配置模擬量輸入的GPIO口,STM32控制器有個(gè)很大的優(yōu)點(diǎn),在于其ADC轉(zhuǎn)換輸入引腳可以是任意GPIO,只要GPIO配置為GPIO_Mode_AIN模式,即可以實(shí)現(xiàn)模擬量輸入,STM32F103共有16個(gè)外部通道,該設(shè)計(jì)中將PC4好PC6作為電壓量和電流量的ADC輸入端;(2)設(shè)置ADC,將ADC設(shè)置為連續(xù)轉(zhuǎn)換模式、右對齊、非外部觸發(fā);(3)啟動ADC,開始采樣轉(zhuǎn)換和處理。3.2主要程序片段STM32的ADC主要程序片段如下:/*配置GPIO口程序*/void GPIO_Configuration(void) GPIO_InitTypeDef GPIO_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); /*電壓電流配置、工作采樣主程序*/int main(void) RCC_Configuration(); GPIO_Configuration(); DMA_Configuration(); /ADC1 configuration 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); /DC1 regular channel14 configuration ADC_RegularChannelConfig(ADC1, ADC_Channel_14, 1, ADC_SampleTime_55Cycles5); ADC_DMACmd(ADC1, ENABLE); /Enable ADC1 DMA ADC_Cmd(ADC1, ENABLE); / Enable ADC1 / Enable ADC1 reset calibaration register ADC_ResetCalibration(ADC1); / Check the end of ADC1 reset calibration register while(ADC_GetResetCalibrationStatus(ADC1); / Start ADC1 calibaration ADC_StartCalibration(ADC1); / Check the end of ADC1 calibration while(ADC_GetCalibrationStatus(ADC1); / Start ADC1 Software Conversion ADC_SoftwareStartConvCmd(ADC1, ENABLE); while(1) AD_value=ADC_GetConversionValue(ADC1); 3.3軟件濾波措施該應(yīng)用中考慮電壓量和電流量為變化較緩的信號,故軟件采取防脈沖干擾平均濾波算法。連續(xù)采樣N個(gè)數(shù)據(jù),去掉一個(gè)最大值和一個(gè)最小值,然后計(jì)算N-2個(gè)數(shù)據(jù)的算術(shù)平均值。通過實(shí)驗(yàn)N取值5,即可達(dá)到滿意的效果。該算法能夠剔除偶然出現(xiàn)的脈沖性干擾,消除由于脈沖干擾所引起的采樣值偏差。4.提高信號檢測精度的措施為提高ADC處理的精度和系統(tǒng)抗干擾能力,該設(shè)計(jì)從控制器ADC使用、電壓基準(zhǔn)和供電、濾波及元器件的選擇等方面采取了系列的措施。4.1控制器ADC使用在STM32F103控制器的ADC使用中,考慮了兩個(gè)方面,一是兩個(gè)模擬量輸入口臨近的管腳不安排數(shù)字量IO,因?yàn)镮/O腳之間的耦合電容,I/O端口的翻轉(zhuǎn)可能對ADC的模擬輸入產(chǎn)生一些噪聲??赡軙?yàn)镻CB走線過于靠近,或互相交叉而產(chǎn)生這樣的串?dāng)_影響。內(nèi)部數(shù)字信號和I/O腳的翻轉(zhuǎn)會產(chǎn)生高頻的噪聲;二是溫度會對ADC的精度產(chǎn)生較大的影響,主要有2項(xiàng)誤差:偏移誤差和增益誤差。這些誤差可以通過微控制器的固件程序補(bǔ)償。一個(gè)方法是根據(jù)不同的溫度范圍,測量出完整的偏移和增益變化,再在存儲器中建立一個(gè)對照表。這樣的方式需要額外的費(fèi)用和時(shí)間。另一個(gè)方式是當(dāng)溫度達(dá)到某個(gè)數(shù)值時(shí),使用內(nèi)部的溫度傳感器和ADC看門狗功能,重新校準(zhǔn)。4.2電壓基準(zhǔn)芯片和獨(dú)立電源供電在該設(shè)計(jì)中為保證信號的質(zhì)量,重要的電平信號采用專用芯片來實(shí)現(xiàn),如使用REF2912和REF2925電壓基準(zhǔn)芯片產(chǎn)生+1.25V和+2.5V兩個(gè)電壓基準(zhǔn)源,+1.25V基準(zhǔn)信號用于放大器累加電路,+2.5V基準(zhǔn)信號提供給STM32F103控制器Vref+;其次,模擬電路、控制器模擬供電和數(shù)字電路供電采用獨(dú)立電源,由專用DC/DC提供15V電源,為LA-28P電流傳感器及LM324運(yùn)算放大器供電,STM32控制器模擬部分VDDA和數(shù)字部分VDD使用獨(dú)立的+3.3V供電。最后三種獨(dú)立電源于一點(diǎn)共地,盡可能地減少電源間的互擾。這樣做的好處是避免了很多的I/O端口翻轉(zhuǎn)操作在直流電源上產(chǎn)生的大量噪聲干擾。4.3其它抗干擾措施另外,該設(shè)計(jì)還采取了其它的一些抗干擾措施,如在STM32F103控制器的VDDA和Vref+管腳連接到2個(gè)外部的去藕電容器(10nF瓷介電容+1F的鉭電容);模擬電路中的所有電阻采用1%精度的金屬膜電阻;在PCB的布置中,模擬電路部分遠(yuǎn)離數(shù)字部分,避免了在模擬
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 苗木報(bào)廢處置方案(3篇)
- 自建酒店預(yù)算方案(3篇)
- 工廠采購作業(yè)管理制度
- 出租絲印車間管理制度
- 古城旅游景區(qū)管理制度
- 公司文化小組管理制度
- 工會采購經(jīng)費(fèi)管理制度
- 別墅修復(fù)計(jì)劃方案(3篇)
- 兒科科室崗位管理制度
- DB62T 4393-2021 城鎮(zhèn)生活污泥治理風(fēng)蝕沙地技術(shù)規(guī)程
- 展覽館室內(nèi)布展施工方案
- 濟(jì)南大學(xué)《工程倫理與項(xiàng)目管理》2021-2022學(xué)年第一學(xué)期期末試卷
- 氣壓傳動課件 項(xiàng)目八任務(wù)二 鉆床自動化流水線氣動系統(tǒng)
- 正規(guī)個(gè)人租車合同模板
- 《地方導(dǎo)游基礎(chǔ)知識》8.1 港澳臺 地方導(dǎo)游基礎(chǔ)知識-題庫及答案
- 2022年版信息科技新課標(biāo)《義務(wù)教育信息科技課程標(biāo)準(zhǔn)(2022年版)》解讀課件
- 財(cái)務(wù)崗位招聘面試題及回答建議(某大型國企)2025年
- VDA6.3 2023 過程審核檢查表-參考表單
- 大象版小學(xué)科學(xué)三年級下冊科學(xué)全冊教案
- 水電站水庫蓄水安全鑒定工程施工自檢報(bào)告
- 2024版土石方工程居間合同協(xié)議書范本
評論
0/150
提交評論