电池电池平衡和荷电状态(SOC)估计
从系列:混合动力电动汽车
探索电池组电热建模和仿真。在本视频中,你将学习:
- 列出电池管理系统的任务。
- 确定如何仿真软件®可以为电池组及其平衡电路建模物理装置和控制器,并提供电学和热行为方面的结果。
- 使用来自控件库的一个非线性观测器块来跟踪电池的充电状态。
你好,每个人。我叫Javier Gazzarri,是MathWorks的一名应用工程师,专门从事电池系统的设计和分析,使用建模和仿真。我是一名机械工程师,在布宜诺斯艾利斯大学获得学士学位,在不列颠哥伦比亚大学获得硕士和博士学位。
在七年前加入MathWorks之前,我曾在加拿大政府公司工作多年,在位于BC省温哥华的国家研究委员会的燃料电池神经研究所研究低温燃料电池。现代电池系统,特别是基于锂离子化学的电池系统,需要仔细监测和控制每个单体电池的状态,以确保操作的安全性、良好的性能和可接受的耐久性。
这项任务委托给电池管理系统,该系统测量每个电池的电流、电压和温度,控制电池组的冷却、平衡和电源元件,以及操作启动和关机的断开断路器。
本视频展示了典型电池管理系统任务的例子,如平衡、热分析和SOC估计。我们将从一个简单的三年1P电池组架构的模型开始,从低SOC和自动平衡开始。我们将展示Simulink如何为电池组和它的平衡电路建模物理设备和控制器,并提供电和热行为方面的结果。
其次,我们将展示一个非线性观察者如何跟踪电池的电荷状态。在前面的例子中使用的相同的单元格,在这个例子中用于创建真实植物的模型。
在之前的视频中,我们展示了如何创建一个电池等效电路,以及如何使用控制温度的实验数据参数化它。我们看到,每个估计过程的结果是一个等效电路参数的向量。不同的SOC等级有不同的值。
在不同的温度下重复估计过程会产生一个查找类型的矩阵,输出元素的OCV、电阻和电容作为电荷状态和温度的函数。用这种方法创建的电池块现在可以成为系统的一部分,就像一个模型,其体系结构反映了我们的设计需求和规格。
我们今天将与您分享的第一个示例反映了BAMS的一个重要任务,即单元平衡。循环使用一个电池组最终会导致单个电池失去平衡。不同细胞的不同热量效率这是这个问题的一个典型原因,这表现为不同细胞的SOC水平的差异。
这种情况是不可取的,因为它限制了进入或退出电池组的总能量,因为最弱的电池限制了从整个系统中提取的电量。最强的电池会限制系统的充电能力。
通常情况下,平衡是通过两种方式之一实现的。使用一种欺骗的方法,通常被称为被动平衡,在这种方法中,从电池顶部的多余电荷通过连接的电阻流出
与每个细胞并行。使用耗散法,通常称为主动平衡法,在这种方法中,来自一些电池的多余电荷被重新分配到其他需要速率的电池中。
今天我们来看一个被动平衡的例子。平衡系统的设计者决定什么时候平衡,充电期间,放电期间,或两者都平衡,以及在什么SOC范围内进行平衡。在这种情况下,我们将在整个SOC范围内进行充电。
让我们看看模型结构。这个Simulink模型使用Simscape组件来表示一个3S 1P拓扑结构的小型电池组,3个电池组串联在一起,一个并联串。中间的电池组从左边的任何一个电源充电。
我们在这里展示的充电曲线被称为CCCV充电,恒流恒压。在恒流控制下,初始充电阶段通常以C / 2的速率进行。一旦跨终端测量的电压达到标称全充电OCV,系统将以该电压值为设定值进行电压控制。
持续充电,直到电流达到预定的低阈值。从电流控制到电压控制的变化是通过左下方的开关完成的。进入电池单元,我们可以看到三个电池系列连接。在右边,我们看到的是平衡电路,其中包括放电电阻和晶体管,它们根据电池电池的相对SOC选择性地开关旁路分支。
在适当的时候,电阻器转移部分充电电流,从而减慢它们所连接的电池的充电速率,使下面的电池赶上来。控制信号,在MOSFET门的命令从右边的逻辑块到达,我们稍后会返回。
细胞左侧的橙色块表示相邻细胞之间的对流换热。这些块连接到每个单元的热部分,该热部分通向等效电路的热部分。热的产生被认为仅仅是双重作用的结果。
热连接是不对称的,因为底部的电池是保温的,而顶部的电池是通过对流换热块连接到大气。再往下潜一步,在电池块,我们看到3 RC电路的参数,我们发现使用Mollica关系技术解释在我们之前的视频。
每个元件都有用于温度和电荷状态的输入端口。在这些输入上,是块内部二维查找磁带孔的入口点。来自内部电阻的输出板对应于每个电阻内部的参与。
这种功率被转换为热块内部的热流源,该热流源又与热质量热连接。让我们运行这个模型,看看它是如何工作的。左上角的图显示了总电压和电流,在这里我们可以识别恒定电流和恒定电压周期。右上方是SOC级别。
初始值很低,彼此之间相差10%,随着它们的增加,它们慢慢接近彼此,直到它们的值足够接近,充电可以在不平衡的情况下进行。左下方的图表显示了细胞的温度变化。温度的积累是不均匀的,因为流经每个电阻的电流在每个时刻都不相同,正如可以在右边的范围中观察到的那样。也因为之前描述的不对称热拓扑。
观察他们的结果,我们可以看到,虽然从安全的角度来看,最高温度并不重要,但温度的差异很可能会导致温度最高的电池比温度较低的电池降解得更快,加剧不平衡。
这表明需要积极的热管理,以保持温差尽可能低。最后,让我们探索控制平衡过程的逻辑。Stateflow是在Simulink之上添加的一个库,专门设计用于建模状态逻辑算法。
这里的每个块表示一些变量被赋给特定值的状态。在这种情况下,输出信号馈送MOSFET栅。基于每个电池对应的OCV值,MATLAB函数源它们,并基于它们的相对SOC状态流决定激活哪个MOSFET以减缓该电池的充电。
需要注意的是,这里的OCV很容易获得,因为模拟了植物。在实际应用中,OCV的估计应基于通过内阻的估计压降校正的终端电压测量。
一旦在仿真中实现了状态流逻辑,我们就可以使用c核自动生成来在硬件中实现算法,而不需要在c中重写算法。在我们的第二个示例中,我们将看到单元单元块的另一个应用,这一次是模拟电池中的循环充放电剖面和基于卡尔曼滤波器的非线性SOC估计方法。
由于各种原因,准确估计荷电状态对宝马汽车至关重要。其中,药物范围焦虑症。如果你开着你的电动汽车,你需要知道给电池充电需要多长时间。与可以直接测量的传统汽车油箱不同,电池的SOC不能用间接的方法测量。例如,OCV估计、库仑计数或两者的结合。
这些方法都有缺点,有时不能有效地应用。例如,对于放电曲线非常平坦的电池。估计电荷状态的一种更先进的方法是使用观测器。通常是卡尔曼滤波器,它接收来自电池的输入和输出信号,并使用电池模型和递归算法计算内部状态。
在这个例子中,我们使用无气味卡尔曼滤波器,一种来自控制系统工具箱的非线性估计器。由于OCV和SOC之间的关系,我们需要一个非线性观测器。UKF要求至少有两个函数作为参数。一个状态转换和一个测量函数。
前者描述了状态和输入之间的关系,而阶梯生成了作为状态和输入的函数的系统输出。这些函数可以是MATLAB或Simulink函数块,本例使用梯形。状态转移函数根据当前输入计算状态的演化。
这个计算需要之前的等效电路参数的计算,使用温度和电流信号,通过非线性查找表来描述电池,我们在之前的视频中估计过。在这个块内部,有一个故障,有四个状态的状态更新方程,即SOC和RC组件上的三个电压。
测量函数将终端电压计算为OCV与其他等效电路元件的个别电压降之和之间的差值。在这种情况下不需要额外的功能,因为测量功能和没有内存。
运行该模型,我们观察到电池单体处于交替充放电电流循环中。SOC估算初始值为60%,但实际值为50%。经过大约两小时的模拟时间,算法收敛到真实值。
最后,我们来谈谈控制算法的硬件实现。在硬件上实现Simulink算法的必要步骤是生成可嵌入的C代码。我们可以自动完成
从控制器块使用构建的命令。这将把框图转换为C,为双向导航的代码添加注释。
在本视频中,我们展示了如何创建一个电池系统模型,该模型具有信任给电池管理系统的典型任务。小区平衡和SOC估计。在之前的视频中创建的单元电池现在被用于不同的设计案例。Simulink中的物理建模库元素提供了一种直观的方法,以灵活的方式创建电池电路,并在单一环境中组合设备和控制器。
在第一个例子中,一个简单的3S 1P电池组,启动时SOC很低,失去平衡。Simulink、状态流和Simscape支持充电和平衡策略的设计,包括为嵌入式实现自动生成核心。
最后,我们展示了一种非线性卡尔曼滤波应用程序,用于从前面的例子中重用的单体电池的充电状态估计。感谢收看。
下载代码及文件
了解更多
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。