亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于STM32的鉛酸蓄電池充放電監(jiān)測系統(tǒng)設(shè)計(jì)

        2018-02-01 11:23:58王超秦會斌
        軟件導(dǎo)刊 2018年1期

        王超+秦會斌

        摘要:設(shè)計(jì)了一種鉛酸蓄電池充放電監(jiān)測系統(tǒng),實(shí)現(xiàn)對4節(jié)12V/20AH串聯(lián)鉛酸電池組充放電參數(shù)的監(jiān)測。系統(tǒng)硬件設(shè)計(jì)以STM32單片機(jī)為核心,完成溫度檢測、電壓檢測、電流檢測、顯示、聲光報(bào)警等電路設(shè)計(jì);軟件設(shè)計(jì)由單總線讀取4個DS18B20溫度傳感器數(shù)據(jù)實(shí)現(xiàn)溫度檢測,并通過STM32多通道連續(xù)AD轉(zhuǎn)換和DMA(Direct Memory Access,直接內(nèi)存存?。┘夹g(shù)實(shí)現(xiàn)電壓、電流的快速檢測。

        關(guān)鍵詞:鉛酸蓄電池;STM32;充放電監(jiān)測系統(tǒng)

        DOIDOI:10.11907/rjdk.172001

        中圖分類號:TP319

        文獻(xiàn)標(biāo)識碼:A文章編號文章編號:1672-7800(2018)001-0122-04

        Abstract:A charge and discharge monitoring system for the lead-acid battery was designed. It could monitor the charge and discharge parameters of the serial lead-acid battery pack that consists of four 12V/20AH lead-acid batteries. The temperature detection, voltage detection, current detection, display, sound and light alarm circuit design was completed in the hardware design of the system based on the STM32 microcontroller as the core. In the software design of the system, the temperature detection was realized through a single bus and it could read the data of four DS18B20 temperature sensors, the rapid voltage and current detection was achieved throug the STM32 multi-channel continuous AD conversion and DMA technology.

        Key Words:lead-acid battery; STM32; charge and discharge monitoring system

        0引言

        鉛酸蓄電池廣泛應(yīng)用于電力、交通、通信等各個領(lǐng)域,不合理的充放電使其實(shí)際使用壽命和設(shè)計(jì)使用壽命相差很多,造成極大的資源浪費(fèi),并對由其構(gòu)成的供電系統(tǒng)安全性產(chǎn)生嚴(yán)重威脅[1]。為延長鉛酸蓄電池使用壽命,及時(shí)發(fā)現(xiàn)充放電過程中的過充電、過放電、超溫等異常問題,設(shè)計(jì)了一種鉛酸蓄電池充放電監(jiān)測系統(tǒng),該系統(tǒng)可對4節(jié)12V/20AH串聯(lián)鉛酸電池組充放電時(shí)的電流以及電壓和溫度進(jìn)行監(jiān)測,并在充放電參數(shù)出現(xiàn)異常時(shí)進(jìn)行報(bào)警提示。

        1系統(tǒng)硬件設(shè)計(jì)

        系統(tǒng)硬件設(shè)計(jì)以SMT32單片機(jī)為核心,整體結(jié)構(gòu)如圖1所示,由含溫度檢測模塊、電壓檢測模塊、電流檢測模塊、顯示和通信模塊、聲光報(bào)警模塊組成。溫度、電壓、電流檢測模塊用于檢測充放電時(shí)電池組的電流,以及電池組中每個單體蓄電池的電壓和溫度;顯示和通信模塊用于顯示檢測到的充放電參數(shù),并將其發(fā)送給計(jì)算機(jī);聲光報(bào)警模塊在充放電參數(shù)出現(xiàn)異常時(shí)進(jìn)行報(bào)警。

        1.1主控芯片簡介

        設(shè)計(jì)采用STM32F103RCT6單片機(jī)作為主控芯片,該芯片有以下特點(diǎn):①接口豐富、性能穩(wěn)定、功耗低、價(jià)格便宜;②工作電壓2.0V~3.6V,工作溫度-40℃~85℃;③使用ARM 32位Cortex-M3高性能內(nèi)核,內(nèi)置高速存儲器(48KB SRAM, 256KB FLASH),工作頻率最高可達(dá)72MHz;④外部有64引腳,其中51個為通用IO口,IO引腳資源豐富;⑤含有3個12位ADC,支持多通道ADC;⑥擁有2個DMA控制器(共12個通道),可用于存儲器到存儲器、④外設(shè)到存儲器和存儲器到外設(shè)的數(shù)據(jù)傳輸;⑦支持I2C、USART、SPI、CAN、USB等通信[2]。

        1.2溫度檢測模塊設(shè)計(jì)

        溫度檢測模塊實(shí)現(xiàn)對鉛酸蓄電池溫度的檢測。設(shè)計(jì)使用單總線溫度傳感器DS18B20進(jìn)行溫度檢測,其提供9位溫度讀數(shù),溫度測量范圍為-55℃~125℃,精度±0.5℃,每個DS18B20的內(nèi)部光刻ROM中均有唯一的64位序列號。為節(jié)約IO資源,設(shè)計(jì)采用單根總線掛載4個DS18B20對4節(jié)鉛酸蓄電池溫度進(jìn)行檢測,通過64位序列號對DS18B20進(jìn)行匹配后,逐個讀取溫度檢測數(shù)據(jù)[3-4]。溫度檢測模塊電路設(shè)計(jì)如圖2所示。

        1.3電壓檢測模塊設(shè)計(jì)

        電壓檢測模塊完成對每節(jié)單體鉛酸蓄電池電壓的檢測。設(shè)計(jì)采用電阻分壓法實(shí)現(xiàn)電壓檢測,電路設(shè)計(jì)如圖3所示。串聯(lián)鉛酸電池組電壓V1-V4經(jīng)過分壓電阻RF1-RF4和采樣電阻RF01-RF04分壓后,接入STM32的PA0-PA3引腳進(jìn)行AD轉(zhuǎn)換。設(shè)計(jì)采用的12V/20AH鉛酸蓄電池最高充電電壓為15V左右。為保證分壓后的電壓信號不超過STM32 AD轉(zhuǎn)換最高輸入電壓3.3V,要進(jìn)行阻值選取,如圖3所示。電池組電壓最高時(shí),分壓后輸出電壓和分壓放大倍數(shù)如表1所示,其中60V-15V分別對應(yīng)圖3中V1-V4的電壓。STM32通過PA0-PA3引腳對分壓后的電壓進(jìn)行AD轉(zhuǎn)換,轉(zhuǎn)換結(jié)果乘以相應(yīng)的分壓放大倍數(shù)即可求得V1-V4電壓值,對V1-V4進(jìn)行減法運(yùn)算即可求得各節(jié)電池充放電時(shí)的電壓。為提高電壓endprint

        檢測精度,電壓檢測電路中電阻使用溫漂為10ppm、精度為0.1%的低溫漂精密電阻。

        1.4電流檢測模塊設(shè)計(jì)

        電流檢測模塊實(shí)現(xiàn)對鉛酸電池組充放電電流的檢測。

        設(shè)計(jì)采用量程為20A的ACS712ELCTR-20A霍爾電流傳感器進(jìn)行電流檢測,電路設(shè)計(jì)如圖4所示,鉛酸電池組充放電電流通過1、2引腳和3、4引腳流經(jīng)ACS712時(shí),其7引腳會輸出一個與流經(jīng)電流IP線性相關(guān)的電壓VIOUT,VIOUT=2.5+0.1IP[5]。設(shè)計(jì)中充放電電流最大10A,ACS712輸出電壓可能超過最高輸入電壓3.3V,VIOUT需要分壓后才能接入STM32 AD轉(zhuǎn)換引腳。STM32 AD轉(zhuǎn)換引腳輸入電阻較小,將VIOUT分壓后電壓信號直接接入STM32 AD轉(zhuǎn)換引腳會對VIOUT的分壓電路產(chǎn)生影響,進(jìn)而影響電流檢測精度。如圖4所示,設(shè)計(jì)中先通過低溫漂精密電阻Rc1(30kΩ)和Rc2(20kΩ)對VIOUT進(jìn)行分壓,分壓后的電壓信號通過由運(yùn)放OPA180構(gòu)成的電壓跟隨器,再接入STM32的PA4引腳,理想狀態(tài)運(yùn)放輸入電阻無窮大,對VIOUT的分壓電路的影響可忽略。OPA180輸出電壓VPA4等于VIOUT分壓后的電壓,VPA4=1.5+0.06IP,鉛酸電池組充放電電流IP計(jì)算如式(1)所示。當(dāng)IP為正時(shí)表示電池組處于充電狀態(tài),當(dāng)IP為負(fù)時(shí)表示電池組處于放電狀態(tài)。

        1.5聲光報(bào)警模塊設(shè)計(jì)

        聲光報(bào)警模塊在充放電參數(shù)出現(xiàn)異常時(shí)進(jìn)行報(bào)警,電路設(shè)計(jì)如圖5所示。源蜂鳴器BEEP驅(qū)動電流為30mA左右,為減少STM32負(fù)載,使用三極管S8050對STM32輸出的電流擴(kuò)流后再驅(qū)動蜂鳴器,STM32 IO口只需提供不到1mA的驅(qū)動電流。當(dāng)充放電參數(shù)正常時(shí)LED0為低電平,GRE(綠色LED)燈亮;當(dāng)充放電參數(shù)出現(xiàn)異常時(shí)LED1為低電平,BEEP為高電平,RED(紅色LED)燈亮,蜂鳴器響,進(jìn)行報(bào)警。

        1.6顯示和通信模塊設(shè)計(jì)

        顯示模塊用來顯示檢測到的鉛酸蓄電池充放電參數(shù),通信模塊用來將檢測到的充放電參數(shù)發(fā)送給計(jì)算機(jī)。顯示模塊使用2.8寸TFT LCD液晶進(jìn)行數(shù)據(jù)顯示,電路設(shè)計(jì)如圖6所示。通信模塊采用電平轉(zhuǎn)換芯片CH340G實(shí)現(xiàn)計(jì)算機(jī)和STM32間的RS232串口通信。

        2系統(tǒng)軟件設(shè)計(jì)

        2.1溫度檢測程序設(shè)計(jì)

        在STM32的一個IO口上設(shè)計(jì)掛載4個DS18B20,需先讀取DS18B20的64位光刻ROM以對其進(jìn)行匹配,實(shí)現(xiàn)單總線讀取4個溫度數(shù)據(jù)。DS18B20的64位光刻ROM數(shù)據(jù)結(jié)構(gòu)如圖7所示。為保證讀取到的光刻ROM數(shù)據(jù)無誤,需要根據(jù)最高8位CRC編號對低56位數(shù)據(jù)進(jìn)行校驗(yàn),DS18B20的64位光刻ROM讀取程序流程見圖8。

        根據(jù)光刻ROM數(shù)據(jù)對DS18B20進(jìn)行匹配并逐個讀取溫度檢測數(shù)據(jù),實(shí)現(xiàn)對4節(jié)鉛酸蓄電池的溫度檢測,單總線讀取4個DS18B20數(shù)據(jù)程序流程如圖9所示[6]。

        2.2電壓和電流檢測程序設(shè)計(jì)

        電壓信號和電流檢測被轉(zhuǎn)換成5路電壓信號進(jìn)行檢測,STM32需要對PA0-PA4引腳電壓信號進(jìn)行檢測。STM32 AD轉(zhuǎn)換支持單通道單次轉(zhuǎn)換、單通道多次轉(zhuǎn)換、多通道單次轉(zhuǎn)換、多通道連續(xù)轉(zhuǎn)換等多種轉(zhuǎn)換模式,為提高轉(zhuǎn)換速度,減少誤差,設(shè)計(jì)采用多通道連續(xù)轉(zhuǎn)換模式對PA0-PA4引腳的5路電壓信號進(jìn)行連續(xù)多次AD轉(zhuǎn)換。STM32 AD轉(zhuǎn)換支持DMA技術(shù),AD轉(zhuǎn)換結(jié)果可不經(jīng)CPU和中斷,由DMA控制器直接傳輸?shù)皆O(shè)定的目標(biāo)地址中。為提高AD轉(zhuǎn)換的效率,使用DMA技術(shù)對多通道連續(xù)AD轉(zhuǎn)換的結(jié)果進(jìn)行保存[7]。電壓和電流檢測程序流程如圖10所示。對每個通道進(jìn)行12次AD轉(zhuǎn)換,在數(shù)據(jù)處理部分,去除12次轉(zhuǎn)換結(jié)果中兩個最大值和兩個最小值后求平均值以減少誤差。將PA0-PA4 AD轉(zhuǎn)換配置為5通道連續(xù)轉(zhuǎn)換模式并開啟DMA,核心代碼如下:

        ADC_DeInit(ADC1);//復(fù)位ADC1

        ADC_InitStructure.ADC_Mode=ADC_Mode_Independent;//獨(dú)立模式

        ADC_InitStructure.ADC_ScanConvMode=ENABLE;//多通道掃描模式

        ADC_InitStructure.ADC_ContinuousConvMode=ENABLE;//連續(xù)轉(zhuǎn)換模式

        ADC_InitStructure.ADC_ExternalTrigConv=ADC_ExternalTrigConv_None;//軟件觸發(fā)轉(zhuǎn)換

        ADC_InitStructure.ADC_DataAlign=ADC_DataAlign_Right;//ADC數(shù)據(jù)右對齊

        ADC_InitStructure.ADC_NbrOfChannel=5;//順序進(jìn)行規(guī)則轉(zhuǎn)換的ADC通道的數(shù)目

        ADC_Init(ADC1,&ADC_InitStructure);//初始化外設(shè)ADCx的寄存器

        //設(shè)置指定ADC的規(guī)則組通道,設(shè)置它們的轉(zhuǎn)化順序和采樣時(shí)間

        ADC_RegularChannelConfig(ADC1,ADC_Channel_0,0,ADC_SampleTime_55Cycles5);

        ADC_RegularChannelConfig(ADC1,ADC_Channel_1,1,ADC_SampleTime_55Cycles5);

        ADC_RegularChannelConfig(ADC1,ADC_Channel_2,2,ADC_SampleTime_55Cycles5);

        ADC_RegularChannelConfig(ADC1,ADC_Channel_3,3,ADC_SampleTime_55Cycles5);endprint

        ADC_RegularChannelConfig(ADC1,ADC_Channel_4,4,ADC_SampleTime_55Cycles5);

        ADC_DMACmd(ADC1,ENABLE);//開啟ADC的DMA

        ADC_Cmd(ADC1,ENABLE);//使能ADC1

        3系統(tǒng)整體程序設(shè)計(jì)

        系統(tǒng)整體程序流程見圖11,系統(tǒng)對鉛酸蓄電池充放電溫度、電壓、電流參數(shù)進(jìn)行循環(huán)檢測,將檢測到的充放電參數(shù)顯示在LCD液晶上,并通過RS232串口將充放電參數(shù)發(fā)送給計(jì)算機(jī),在充放電參數(shù)出現(xiàn)異常時(shí)進(jìn)行聲光報(bào)警。

        4測試結(jié)果與分析

        根據(jù)系統(tǒng)軟硬件設(shè)計(jì),完成電路焊接和各模塊編程調(diào)試后,對系統(tǒng)整體進(jìn)行測試。與標(biāo)準(zhǔn)溫度對比,表明系統(tǒng)DS18B20溫度傳感器工作正常,檢測精度達(dá)到±0.5℃;充放電電壓檢測數(shù)據(jù)如表2所示,表中BAT1-BAT4為圖3中鉛酸蓄電池編號,電壓檢測精度達(dá)到±50mV;充放電電流檢測數(shù)據(jù)如表3所示,充放電電流較小時(shí)電流檢測誤差相對較大,可能是由于小電流時(shí)ACS712輸出電壓電路中電磁干擾造成,電流檢測整體誤差低于2%;系統(tǒng)能根據(jù)設(shè)定的報(bào)警參數(shù)在充放電參數(shù)異常時(shí)進(jìn)行聲光報(bào)警。

        5結(jié)語

        本文基于STM32單片機(jī)設(shè)計(jì)了一種鉛酸蓄電池充放電監(jiān)測系統(tǒng),該系統(tǒng)能實(shí)現(xiàn)對4節(jié)12V/20AH串聯(lián)鉛酸電池組充放電電流及每個單體鉛酸蓄電池的電壓和溫度的檢測,并能在充放電參數(shù)出現(xiàn)異常時(shí)及時(shí)報(bào)警。該系統(tǒng)溫度檢測精度±0.5℃,電壓檢測精度±50mV,電流檢測誤差低于2%,能對鉛酸蓄電池充放電參數(shù)進(jìn)行有效監(jiān)測。下一步研究將對系統(tǒng)功能進(jìn)行擴(kuò)展,實(shí)現(xiàn)遠(yuǎn)程監(jiān)測、充放電控制等功能。

        參考文獻(xiàn):

        [1]常維靜.一款動力電池充電管理芯片的研究與設(shè)計(jì)[D].合肥:合肥工業(yè)大學(xué),2016.

        [2]孫書鷹,陳志佳,寇超.新一代嵌入式微處理器STM32F103開發(fā)與應(yīng)用[J].微計(jì)算機(jī)應(yīng)用,2010(12):59-63.

        [3]湯鍇杰,栗燦,王迪,等.基于DS18B20的數(shù)字式溫度采集報(bào)警系統(tǒng)設(shè)計(jì)[J].傳感器與微系統(tǒng),2014(3):99-102.

        [4]孫明利,鮑健,張鑠.單總線技術(shù)及DS18B20的溫度測量實(shí)現(xiàn)[J].大氣與環(huán)境光學(xué)學(xué)報(bào),2010(4):322-326.

        [5]王慧.基于ACS712的直流電機(jī)電流監(jiān)測系統(tǒng)的設(shè)計(jì)[J].自動化技術(shù)與應(yīng)用,2014(9):103-105.

        [6]朱麗麗,王長友.基于AVR單片機(jī)與溫度傳感器DS18B20的多點(diǎn)溫度測量[J].電工電氣,2010(12):47-51.

        [7]張?zhí)?基于STM32單片機(jī)DMA機(jī)制的多通道數(shù)據(jù)采集[J].黑龍江科技信息,2013(30):27-28.

        (責(zé)任編輯:杜能鋼)endprint

        精品久久久中文字幕人妻| 日本一区二区三区区视频| 狠狠综合亚洲综合亚洲色| 男人激烈吮乳吃奶视频免费 | 99国产小视频| 日韩精品中文字幕免费人妻| 激情文学婷婷六月开心久久| 野外亲子乱子伦视频丶| 无遮挡亲胸捏胸免费视频| 人妻爽综合网| 日本精品一区二区三区在线观看 | 精品亚洲国产亚洲国产| 日本真人添下面视频免费| 男女啪啪永久免费观看网站| 一本大道久久东京热无码av| 日韩精品人妻一区二区三区蜜桃臀 | 日韩精品视频av在线观看| 精品亚洲成a人在线观看| 亚洲国产精品久久亚洲精品| 久久熟女五十路| 国产天堂av在线播放资源| 国产老熟女网站| 欧美人与动人物牲交免费观看| 亚洲中文字幕无线乱码va| 国产免费二区三区视频| 挺进朋友人妻雪白的身体韩国电影| 日韩精品区欧美在线一区| 91国内偷拍一区二区三区| 狠狠综合亚洲综合亚洲色| 欧美日韩亚洲国产精品| 亚洲国产精品无码久久九九大片健 | 国产男女猛烈无遮挡免费视频| 在线视频一区二区观看| 日本在线观看一区二区三| 亚洲日韩欧洲无码av夜夜摸| 久久婷婷国产精品香蕉| 一本之道日本熟妇人妻| 国自产精品手机在线观看视频| 欧美人与动zozo| 成人性生交大片免费看激情玛丽莎 | 国产综合色在线视频区|