每次实验估计模型参数(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,不应进行估计;取消估计.
估计参数值
实验和估计的参数配置,我们准备运行估计。首先创建一个图来监视评估进程。点击添加图并选择参数轨迹.这将创建一个显示估计参数值在估计过程中如何变化的图。单击视图选项卡来布局图,以便实验和参数轨迹图都可见。
单击估计按钮,开始估算。属性可以修改估计选项成本函数组合框和单击更多的选择.
在运行评估时,绘图更新并出现显示评估进度的对话框。进度对话框显示了评估迭代,即模型被评估的次数(F-count),以及每次迭代的估计成本。
经过多次迭代后,估计收敛并终止。实验结果表明,实测数据与仿真数据吻合良好。的EstimatedParams
图显示V
,K
,损失
估计过程中参数的变化;的规模V
,K
,损失
是不同的,右键点击图和选择显示缩放值查看所有参数如何从原始值改变。
相关的例子
学习如何估计每个实验的参数sdo.optimize
命令,看到每次实验估计模型参数(代码).
关闭模型
bdclose (“sdoBattery”)