EDA365电子论坛网

标题: 基于MATLAB的蓄电池充放电监测系统 [打印本页]

作者: relchhiclty    时间: 2018-11-16 10:01
标题: 基于MATLAB的蓄电池充放电监测系统
基于MATLAB的蓄电池充放电监测系统

内容摘要:为了更科学、直观的掌握电池的充放电特性,设计了基于MATLAB的蓄电池充放电监控系统、主要有包括蓄电池容量检测、蓄电池损坏度检测、蓄电池充电状态检测等。利用检测电路采样温度、电流、电压等性能指标,通过串口和CAN总线等方式上传到上位机。利用MATLAB编写上位机的分析软件,实时地反映了蓄电池充放电过程中的状态。

  关键词:充放电检测;多任务调度;时间片轮转;串口工具箱;句柄绘图

9 D+ y& `. J0 R) m! x' T
  n. ?; l2 h- s$ i1 V; z& D
( n) a0 D- X+ d5 @3 Q

& z  l+ |4 i! u# [! n, |" U

  随着石油价格的不断调高,人们承担了越来越多的燃料成本压力。多数人开始关注以其他能源为能量的交通工具,以电池为能量来源的出行工具越来越多。而电池的安全、寿命等性能也日益引起人们的关注。目前能够被电动自行车采用的有以下三种:铅酸蓄电池、镍氢蓄电池和锂离子蓄电池。因为铅酸蓄电池成本低,性价比高,现在的电动车上绝大多数装的是铅酸蓄电池。本文就针对单节铅酸蓄电池设计的充电特性监测系统。

  1 系统概述

  与电池充放电有关的参量包括:电池端电压、充电电流、电池温度等。因此,系统需要实现这三个参数的准确采集。系统框图如图1所示,系统南MCU、模拟采样电路、温度采集电路和上位机组成。MCU采集电池充放电时端电压、电流和温度信息,然后信息通过串行通信接口发送到上位机,再由MATLAB接收处理,并绘制曲线。电流和电压每秒采集10次,温度每秒采集1次。MCU每秒向上位机传递一组数据,MATLAB跟踪更新数据,达到动态显示电压、电流、温度的效果。

  2 硬件设计

  2.1 MCU选择

  本监测系统的MCU选用了STC12C5A60S2,芯片资源有:60K的flash,1280字节高速RAM,8通道10位A/D、2通道UART、2通道16位定时器、1通道内部看门狗定时器。晶振选择为11.0592MHz。

  2.2 温度采集芯片选择

  温度采集的电路芯片选用Dallas公司生产的DS18B20,它是DALLAS公司生产的线式数字温度传感器,采用3引脚T0-92型小体积封装;温度测量范围为-55℃~+125℃,可编程为9位~12位A/D转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字方式串行输出。具有直接输出数字信号,不存在信号传输过程干扰、扩展方便、不需要设计另外的信号调制电路等优点。

  为了使温度的采集更准确,本系统使用两片DS18B20,A/D转换精度选择为12位,贴在电池壁的不同位置。

  2.3 电流和电压检测电路设计

  电压检查使用电阻分压,经电压跟随电路到A/D转换接口。运放的作用是提高输入阻抗,减小检测电路对充电电路的影响,提高测量精度。

  电流检测有两种方法:高端检测和低端检测。低端检测实现起来比较容易,但是这种方案的坏处是负载会比实际地线抬高一个直流电压,测量不准确;另外,电源和负载具有不同的参考地,对EMI的控制不利。高端检测的难点在于输入端存在共模电压,测量电路复杂。本系统采用Maxim的MAX4173来测量差模电压,其内部包括一个差分放大器。选择两片MAX4173能够实现电流的双向采样,电流检测电路如图2所示。

  
5 E+ s  I0 Q8 s7 `5 V6 _1 P+ K5 j* z* M5 M4 b: \* T8 ^( X  T
, E+ O# Y. f/ a

, g; u* ^3 i6 q& e6 u
0 d8 n7 l7 a& N) q5 q: |


作者: fanichicl    时间: 2018-11-16 10:53
谢谢分享
作者: tj_cindy    时间: 2019-5-22 16:49
谢谢分享
( Q7 \! c1 F4 A' x8 h. a! C$ `




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2