每实验估计模型参数(GUI)
这个例子展示了如何使用多个实验来估计模型参数值的组合;有些是通过所有的实验估计出来的有些是通过单独的实验估计出来的。该示例还展示了如何配置与实验相关的参数值的估计实验。
你可以根据在电池放电和充电的实验中收集到的数据来估计可充电电池的参数。
打开模型,获取实验数据
这个例子估计了一个简单的可充电电池模型的参数,sdoBattery
.模型输入是电池电流,模型输出是电池终端电压,由电池充电状态计算。
open_system (“sdoBattery”)
这个模型是以这个方程为基础的
在方程:
为电池端电压,单位为伏特。
为电池恒压,单位为伏特。
为电池极化电阻,单位为欧姆。
为电池最大容量,单位为安培小时。
为电池充电状态,1充满,0放电。电池的充电状态是由电池电流的积分计算,正电流表示放电,负电流表示充电。电池的初始充电状态由 在安时。
是充电时的电压降,表示为电池恒定电压的一部分。当电池放电时,该值为零。
V
,K
,Qmax
,Q0处
,损失
是模型工作区中定义的变量。
评估实验数据
对一块1.2V (6500mAh)电池进行了放电和充电实验。该实验数据已加载到预配置的评估会话中。
使用以下命令加载预配置的评估会话。
负载sdoBattery_spesessionspetool (SDOSessionData)
对实测的充放电实验数据进行了加载和绘制。单击视图选项卡来布局图形,以便实验场景:Charge_Exp
而且实验场景:DCharge_Exp
都是可见的。点击图模型反应观察模型模拟与实测实验数据的吻合程度。
图中显示了电池的初始电量Q0处
没有正确设置Charge_Exp
实验和模型V
,K
,损失
需要估计参数。
设置实验参数
前面的图表明Charge_Exp
电池的初始,Q0处
,设置不正确。把初始电荷加到两个实验中。右击Charge_Exp
并选择编辑.打开一个编辑实验的对话框。
点击选择参数打开一个对话框,向实验中添加模型参数。选择损失
而且Q0处
加入到实验中。选择损失
因为我们只需要使用Charge_Exp
实验。点击好吧添加Q0处
而且损失
实验参数。
设置电池初始电量Q0处
在Charge_Exp
到0,即没有初始电荷。
同样,添加电池初始电量Q0处
到DCharge_Exp
实验并将初始电荷设置为6.5。,i.e. for this experiment there is an initial charge.
现在,实验更新与正确的初始电池充电点击图模型反应模拟模型,比较实测和模拟数据。
实验结果表明,实验初始条件匹配,但电池响应不匹配。下一步是估计K
而且V
模型参数。
选择估计参数
前面的图显示模型响应与测量数据不匹配,我们需要对模型进行估计V
而且K
参数。
点击选择参数打开一个对话框以选择模型参数。
选择参数对话框的上部有一个部分,用于使用所有实验调优的参数。点击选择参数并添加V
而且K
将参数建模为估计的参数。设置V
最小值为0,最大值为2,类似地设置K
最小到1e-6,最大到0.1。
对话框的下半部分有一个部分用于使用个别实验调优的初始状态和参数。
为Charge_Exp
我们调优损失
参数并将其最小值设置为0,最大值设置为0.5。电池初始电量Q0处
固定为0,不应该被估计;取消估计.
选择DCharge_Exp
从实验控件的参数设置DCharge_Exp
实验。电池初始电量Q0处
固定为6.5,不应该估算;取消估计.
估计参数值
实验和估计的参数已经配置好,我们准备运行估计。首先创建一个图来监视估计的进展。点击添加图并选择参数轨迹.这将创建一个图,显示估计的参数值在估计期间如何变化。单击视图TAB来布局图,使实验和参数轨迹图都可见。
单击估计按钮以开始估算。属性可以修改估算选项成本函数组合框并点击更多的选择.
当评估运行时,图会更新,并出现一个显示评估进度的对话框。进度对话框显示了评估迭代,模型被评估的次数(F-count),以及每次迭代的估计成本。
经过多次迭代之后,估计收敛并终止。实验结果表明,实测数据与仿真数据吻合较好。的EstimatedParams
图显示了V
,K
,损失
估计过程中参数的变化;的规模V
,K
,损失
是不同的,右键单击情节并选择显示比例值查看所有参数是如何从它们的原始值变化的。
相关的例子
学习如何估计每个实验的参数使用sdo.optimize
命令,看到每次实验估计模型参数(代码).
关闭模式
bdclose (“sdoBattery”)