技术文章—电路笔记:电池的电化学阻抗谱(EIS)
ztj100 2024-10-27 18:31 24 浏览 0 评论
电路评估板
电池测量板(EVAL-AD5941BATZ)
Arduino尺寸超低功耗Arm? Cortex-M3开发平台(EVAL-ADICUP3029)
设计和集成文件
原理图、布局文件、物料清单、软件
电路功能与优势
图1所示的电路是电化学阻抗谱(EIS)测量系统,用于表征锂离子(Li-Ion)和其他类型的电池。EIS是一种用于检测电化学系统内部发生的过程的安全扰动技术。该系统测量电池在一定频率范围内的阻抗。这些数据可以确定电池的运行状态(SOH)和充电状态(SOC)。该系统采用超低功耗模拟前端(AFE),旨在激励和测量电池的电流、电压或阻抗响应。
老化会导致电池性能下降和电池化学成分发生不可逆变化。阻抗随容量的下降而呈线性增加。使用EIS监视电池阻抗的增加可以确定SOH以及电池是否需要更换,从而减少系统停机时间和维护成本。
电池需要激励电流,而不是电压,而且阻抗值在毫欧姆范围内很小。该系统包括向电池注入电流的必要电路,并允许校准和检测电池中的小阻抗。
图1.简化电路功能框图
电路描述
电池EIS理论
电池是非线性系统;因此,检测电池I-V曲线的一个小样本,使系统呈现伪线性行为。在伪线性系统中,正弦输入产生的正弦输出频率完全相同,但相位和振幅发生了偏移。在EIS中,向电池应用交流激励信号以获得数据。
EIS中的信息常用奈奎斯特图表示,但也可以使用波特图显示(本电路笔记侧重常见格式)。在奈奎斯特图中,使用阻抗的负虚分量(y轴)与阻抗的实分量(x轴)作图。奈奎斯特图的不同区域对应于电池中发生的各种化学和物理过程(见图2)。
图2:电池的奈奎斯特图显示与电化学过程相对应的不同区域
这些过程使用电阻、电容和一种称为Warburg电阻的元件来建模,Warburg电阻用字母W表示(在等效电路模型(ECM)部分有更详细的描述)。没有简单的电子元件来表示Warburg扩散电阻。
等效电路模型(ECM)
等效电路模型(ECM)使用简单的电子电路(电阻和电容)来模拟电化学过程。该模型用一个简单的电路来表示一个复杂的过程,以帮助分析和简化计算。这些模型基于从测试电池中收集的数据。对电池的奈奎斯特图进行表征后,可以开发一种ECM。大多数商业EIS软件都包含一个选项,用于创建一个特定的、独特的等效电路模型,以更接近由任何特定电池生成的奈奎斯特图的形状。在创建电池模型时,有四个常见参数表示电池的化学性质。
电解(欧姆)电阻—RS
RS的特性如下:
对应于电池中电解质的电阻
在进行测试时受电极和所用导线长度的影响
随电池的老化而增加
当频率>1 kHz时占主导
双层电容—CDL
CDL的特性如下:
发生在电极和电解质之间
由围绕电极的两层平行的相反电荷组成
在1 Hz至1 kHz频率范围内占主导
电荷转移电阻—RCT
电阻是在电子从一种状态转移到另一种状态,即从固体(电极)转移到液体(电解质)的过程中发生的
随电池的温度和充电状态而改变
在1 Hz至1 kHz频率范围内占主导
Warburg(扩散)电阻—W
表示对质量转移即扩散控制的阻力
典型地表现45°相移
当频率<1 Hz时占主导
表1提供了每个ECM组件的符号和表达式。
表1.ECM组件
构建电池ECM
建立等效电路模型(ECM)的过程通常以经验为基础,需要使用各种等效电路模型进行实验,直到模型与测量的奈奎斯特图匹配。
下面几节将介绍如何创建一个典型的电池模型。
Randel电路模型欧姆和电荷转移效应
Randel电路是最常见的ECM。Randel电路包括电解质电阻(RS)、双层电容(CDL)和电荷转移电阻(RCT)。双层电容与电荷转移电阻平行,形成半圆模拟形状。
简化的Randel电路不仅是一个有用的基本模型,而且是其他更复杂模型的起点。
图3.Randel电路
图4.产生奈奎斯特图的简化Randel电路图
简化Randel电路的奈奎斯特图始终是一个半圆。电解质电阻(RS)是通过读取电池特性的高频截点处的实轴值来确定的,即线穿过图左侧的x轴处就是高频区。在图4中,电解质电阻(RS)是接近奈奎斯特图起源的截点,为30Ω。另一(低频)截点的实轴值是电荷转移电阻(RCT)和电解质电阻(本例为270 Ω)的和。因此,半圆的直径等于电荷转移电阻(RCT)。
Warburg电路模型—扩散效应
对Warburg电阻建模时,将组件W与RCT串联添加(见图5)。Warburg电阻的增加产生了45°线,在图的低频区很明显。
图5.Warburg电路模型—扩散效应
图6.具有扩散效应的ECM
组合Randel和Warburg电路模型
有些电池描绘两个半圆形。第一个半圆对应固体电解质界面(SEI)。SEI的生长是由电解质的不可逆电化学分解引起的。如果是锂离子电池,SEI则随着电池的老化在负极处形成。这种分解的产物在电极表面形成一层固体。
形成初始SEI层后,电解质分子无法通过SEI到达活性材料表面,与锂离子和电子发生反应,从而抑制了SEI的进一步生长。
将两个Randel电路组合起来,为这种奈奎斯特图建模。电阻(RSEI)针对SEI的电阻建模。
图7.两个Randel电路
图8.修改的Randel电路模型;奈奎斯特图是一个具有明显SEI的锂离子电池
使用AD5941的电池阻抗解决方案
AD5941阻抗和电化学前端是EIS测量系统的核心。AD5941由一个低带宽环路、一个高带宽环路、一个高精度模数转换器(ADC)和一个可编程开关矩阵组成。
低带宽环路由低功耗、双输出数模转换器(DAC)和低功率跨阻抗放大器(TIA)组成,前者可产生VZERO和VBIAS,,后者可将输入电流转换为电压。
低带宽环路用于低带宽信号,其中激励信号的频率低于200 Hz,例如电池阻抗测量。
高带宽环路用于EIS测量。高带宽环路包括一个高速DAC,用于在进行阻抗测量时产生交流激励信号。高带宽环路有一个高速TIA,用于将高达200 kHz的高带宽电流信号转换为可由ADC测量的电压。
开关矩阵是一系列可编程开关,允许将外部引脚连接到高速DAC激励放大器和高速TIA反相输入端。开关矩阵提供了一个接口,用于将外部校准电阻连接到测量系统。开关矩阵还提供电极连接的灵活性。
电池的阻抗通常在毫欧姆范围内,需要一个类似值的校准电阻RCAL。此电路中的50 m? RCAL太小,AD5941无法直接测量。由于RCAL较小,外部增益级使用AD8694来放大接收信号。AD8694具有超低噪声性能以及低偏置和漏电流参数,这对EIS应用至关重要。此外,在RCAL和实际电池上共用一个放大器有助于补偿电缆、交流耦合电容和放大器产生的误差。
激励信号
AD5941使用其波形发生器、高速DAC(HSDAC)和激励放大器来产生正弦波激励信号。频率可编程,范围为0.015 mHz至200 kHz。信号通过CE0引脚和外部达林顿对晶体管配置应用于电池,如图9所示。需要电流放大器,因为激励缓冲器所能产生的电流上限为3 mA。典型电池需要高达50 mA。
图9.达林顿晶体管对
测量电压
有两个电压测量阶段。首先,测量RCAL上的压降。其次,测量电池电压。每个组件上的压降在微伏的范围内很小(μV)。因此,测得的电压通过一个外部增益级发送。增益放大器AD8694的输出通过引脚AIN2和引脚AIN3直接发送到至AD5941芯片上的ADC。通过利用离散傅里叶变换(DFT)硬件加速度计,对ADC数据执行DFT,其中实数和虚数计算并存储在数据FIFO中,用于RCAL电压测量和电池电压测量。ADG636对电池和RCAL进行多路复用,输出至AD8694增益级。
需要ADG636开关的超低电荷注入和小漏电流来消除AD5941输入引脚上的寄生电容。由于AIN2和AIN3引脚均用于RCAL测量和电池测量,阻抗测量的信号路径是成比例的。
计算未知阻抗(ZUNKNOWN)
EIS采用比例式测量法。为了测量未知阻抗(ZUNKNOWN),在已知电阻RCAL上施加交流电流信号,并测量响应电压VRCAL。然后在未知阻抗ZUNKNOWN上施加相同的信号,并测量响应电压VZUNKNOWN。对响应电压执行离散傅里叶变换,确定每次测量的实值和虚值。可使用下式计算未知阻抗:
图10.EIS测量图
电路评估与测试
下节概述CN-0510电路设计的测试程序和结果的收集。有关硬件和软件设置的完整详细信息,请参阅CN-0510用户指南。
设备要求
带USB端口和Windows? 7或更高版本的PC。
EVAL-AD5941BATZ电路板。
EVAL-ADICUP3029开发板。
CN-0510参考软件
USB A型转micro USB电缆
连接抓取器/鳄鱼夹的Bayonet Neill–Concelman (BNC)连接器
电池(待测器件,DUT)
图11.参考设计板
开始使用
通过Arduino接头将EVAL-AD5941BATZ连接到EVAL-ADICUP3029。
插入BNC,连接F+、F、S+、S上的电缆。
通过将micro USB电缆连接到EVAL-ADICUP3029上的P10为开发板供电,并将USB电缆的另一端插入您的电脑。
在连接电池之前,确保开发板通电,以避免短路。
从GitHub下载示例固件。
analog.com wiki网站上提供了下载说明。
将嵌入式软件配置为应用所需的参数。
使用AD5940BATStructInit(void)函数。(示例如下。)
图12.固件配置
使用建议的交互式开发环境(IDE)构建代码并将代码下载到EVAL-ADICUP3029目标板。有关安装详细信息,请参阅AD5940用户指南。
按照图13所示连接电池。将F+和S+引线连接到电池的正极,将S-和F-连接到电池的负极。
按EVAL-ADICUP3029上的3029-RESET按钮。
图13.完整EIS电池系统
电池测试和结果
使用程序(如RealTerm)打开串行终端。
将波特率配置为230,400。
选择EVAL-ADICUP3029连接到的COM端口。
测量结果通过UART流式传输,并可以保存到文件中进行分析。
请注意,在程序开始时执行一次校准功能。如果激励频率较低,则至少需要4个周期才能捕获波形。要测量0.1 Hz,需要40秒以上才能完成。
请注意,硬件针对1 Hz以上的频率进行优化。低于此值的测量值由于外部放大器的1/f噪声而更加嘈杂。
图14.显示在终端程序中的结果
图15显示使用EVAL-AD5941BATZ测量示例锂离子电池的奈奎斯特图。
图15.奈奎斯特图(扫描1.11 Hz至50 kHz)
相关推荐
- Python 操作excel的坑__真实的行和列
-
大佬给的建议__如何快速处理excelopenpyxl库操作excel的时候,单个表的数据量大一些处理速度还能接受,如果涉及多个表甚至多个excel文件的时候速度会很慢,还是建议用pandas来处理,...
- Python os.path模块使用指南:轻松处理文件路径
-
前言在Python编程中,文件和目录的操作是非常重要的一部分。为了方便用户进行文件和目录的操作,Python标准库提供了os模块。其中,os.path子模块提供了一些处理文件路径的函数和方法。本文主要...
- Python常用内置模块介绍——文件与系统操作详解
-
Python提供了多个强大的内置模块用于文件和系统操作,下面我将详细介绍最常用的几个模块及其核心功能。1.os模块-操作系统交互...
- Python Flask 建站框架实操教程(flask框架网页)
-
下面我将带您从零开始构建一个完整的Flask网站,包含用户认证、数据库操作和前端模板等核心功能。##第一部分:基础项目搭建###1.创建项目环境```bash...
- 为你的python程序上锁:软件序列号生成器
-
序列号很多同学可能开发了非常多的程序了,并且进行了...
- PO设计模式全攻略,在 UI 自动化中的实践总结(以企业微信为例)
-
一、什么是PO设计模式?PO(PageObject)设计模式将某个页面的所有元素对象定位和对元素对象的操作封装成一个Page类,即一个py文件,并以页面为单位来写测试用例,实现页面对象和测试用例的...
- 这种小工具居然也能在某鱼卖钱?我用Python一天能写...
-
前两天在某鱼闲逛,本来想找个二手机械键盘,结果刷着刷着突然看到有人在卖——Word批量转PDF小工具...
- python打包成exe,程序有图标,但是任务栏和窗口都没有显示图标
-
代码中指定图标信息#设置应用ID,确保任务栏图标正确显示ifsys.platform=="win32":importctypesapp_id=...
- 使用Python构建电影推荐系统(用python做推荐系统)
-
在日常数据挖掘工作中,除了会涉及到使用Python处理分类或预测任务,有时候还会涉及推荐系统相关任务。...
- python爬取并分析淘宝商品信息(python爬取淘宝商品数据)
-
python爬取并分析淘宝商品信息背景介绍一、模拟登陆二、爬取商品信息1.定义相关参数2.分析并定义正则3.数据爬取三、简单数据分析1.导入库2.中文显示3.读取数据4.分析价格分布5.分析销售...
- OpenCV入门学习基础教程(从小白变大神)
-
Opencv是用于快速处理图像处理、计算机视觉问题的工具,支持多种语言进行开发如c++、python、java等,下面这篇文章主要给大家介绍了关于openCV入门学习基础教程的相关资料,需要的朋友可以...
- python图像处理-一行代码实现灰度图抠图
-
抠图是ps的最基本技能,利用python可以实现用一行代码实现灰度图抠图。基础算法是...
- 从头开始学python:如何用Matplotlib绘图表
-
Matplotlib是一个用于绘制图表的库。如果你有用过python处理数据,那Matplotlib可以更直观的帮你把数据展示出来。直接上代码看例子:importmatplotlib.pyplot...
- Python爬取爱奇艺腾讯视频 250,000 条数据分析为什么李诞不值得了
-
在《Python爬取爱奇艺52432条数据分析谁才是《奇葩说》的焦点人物?》这篇文章中,我们从爱奇艺爬取了5万多条评论数据,并对一些关键数据进行了分析,由此总结出了一些明面上看不到的数据,并...
- Python Matplotlib 库使用基本指南
-
简介Matplotlib是一个广泛使用的Python数据可视化库,它可以创建各种类型的图表、图形和可视化效果。无论是简单的折线图还是复杂的热力图,Matplotlib提供了丰富的功能来满足我们...
你 发表评论:
欢迎- 一周热门
- 最近发表
-
- Python 操作excel的坑__真实的行和列
- Python os.path模块使用指南:轻松处理文件路径
- Python常用内置模块介绍——文件与系统操作详解
- Python Flask 建站框架实操教程(flask框架网页)
- 为你的python程序上锁:软件序列号生成器
- PO设计模式全攻略,在 UI 自动化中的实践总结(以企业微信为例)
- 这种小工具居然也能在某鱼卖钱?我用Python一天能写...
- python打包成exe,程序有图标,但是任务栏和窗口都没有显示图标
- 使用Python构建电影推荐系统(用python做推荐系统)
- python爬取并分析淘宝商品信息(python爬取淘宝商品数据)
- 标签列表
-
- idea eval reset (50)
- vue dispatch (70)
- update canceled (42)
- order by asc (53)
- spring gateway (67)
- 简单代码编程 贪吃蛇 (40)
- transforms.resize (33)
- redisson trylock (35)
- 卸载node (35)
- np.reshape (33)
- torch.arange (34)
- npm 源 (35)
- vue3 deep (35)
- win10 ssh (35)
- vue foreach (34)
- idea设置编码为utf8 (35)
- vue 数组添加元素 (34)
- std find (34)
- tablefield注解用途 (35)
- python str转json (34)
- java websocket客户端 (34)
- tensor.view (34)
- java jackson (34)
- vmware17pro最新密钥 (34)
- mysql单表最大数据量 (35)