主要内容

离合器摩擦系数估算

这个例子展示了如何使用Simulink®Design Optimization™来估计使用Simscape™Driveline™库块创建的离合器模型的参数。

需要Simscape Driveline。

离合器型号说明

离合器系统的Simulink®模型,simple_clutch,如下所示。

该模型由两个惯量由一个离合器耦合而成。最初,施加在离合器板上的压力为零,惯性2的速度为零。惯量1也施加恒定力矩。一旦离合器压力开始增加,惯性2开始旋转。然而,离合器片之间的摩擦导致滑动,使两个惯量以不同的速率加速,具有不同的速度。

离合器系统由两个转动惯量和一个离合器组成。压力被应用到离合器板,然后耦两个惯量。一个Simscape动力传动系统块用来建模离合器,它有一个速度相关的摩擦系数线性变化从C1在0 rad/s到C2在10 rad/s。

摩擦系数(C1, C2)可控摩擦离合器块是未知的,并使用实验数据估计的输出速度的惯性1和惯性2。

open_system (“simple_clutch”set(find_system(gcs))“FindAll”“上”“BlockType”“范围”),“开放”“关闭”

利用Simulink进行优化设计

应用程序选项卡上,单击参数估计量控制系统推出参数估计量应用程序。

启动的参数估计UI由我们存储实验数据集和估计结果的项目组成。这些项目可以保存并在以后重用。

或者,您可以双击Simulink图左下角的橙色块。这将重新加载已经保存的项目。

一般来说,模型参数估计主要包括三个步骤:将实验数据集导入项目中,选择模型参数进行估计,运行估计并分析结果。

估计实验数据

我们在这个离合器系统上有两组输出数据。第一个,EstimationData,将用于参数估计,另一个,ValidationData,用估计的参数验证Simulink模型的响应。

在第一个实验中,离合器压力遵循信号1离合器压在Simulink模型中。这个信号应用在离合器板上的斜坡上升和斜坡下降的压力。点击添加图在参数估计界面中,选择EstimationData为了查看响应此输入的惯性输出速度。这些数据集也可以从各种来源导入,包括MATLAB®变量,MAT文件,Excel®文件,或逗号分隔值文件。

摩擦系数的参数值还不准确。点击Plot模型响应给出了该系统的响应,并表明它与实验数据不匹配,因此需要估计参数以更好地拟合。

建立和运行评估

我们将使用实验数据集EstimationData估算离合器系统的摩擦参数。

第一步是定义要估计的变量。这将确定模拟的哪些参数可以调整,以及控制它们值的任何规则。点击选择参数指定要估计的参数。在这里我们希望估计摩擦系数C1而且C2可控摩擦离合器块的Simulink模型。在预加载参数估计示例中,已经为估计指定了这些参数。如果参数值上有已知的界限,则可以在最小和最大字段中设置它们。

接下来,单击选择实验指定哪些实验将用于估计。在给定的估计中,一次使用一个或多个数据集是可能的。对于我们的示例,我们将使用名为EstimationData

现在您已经准备好运行评估了。点击估计以启动估计过程。我们提供了许多估计方法,包括非线性最小二乘最小化,梯度下降,模式搜索,或单纯形搜索。运行估计将改变模型参数,以减少仿真输出与实验数据之间的误差。在估计过程中,显示测量数据和模拟响应的实验图将更新。随着参数值的提高,仿真曲线与实验数据曲线越接近。此外,轨迹图将显示每次迭代的参数值。当参数值接近其物理值时,这些曲线应达到稳态。

此外,评估进度报告中的表格将显示有关评估过程的数据,如迭代次数、模拟次数和成本函数。代价函数值表示模拟响应与估计数据之间的拟合程度。这个值将在每次迭代中减少,表明在拟合方面的改进量。

验证

一旦我们完成了估计,很重要的一点是对照其他数据集验证结果。一个成功的估计不仅应该能够与我们用于估计的实验数据相匹配,还应该能够与我们在实验中收集的其他数据集相匹配。

在第二组实验数据中,我们有离合器系统,离合器压力遵循的轮廓信号2离合器压在Simulink模型中。这个信号对离合器板施加周期性的压力。要用这个,首先双击手动开关块更改输入信号为用于验证数据(信号2).然后在参数估计UI中,单击验证选项卡上,单击选择实验然后选择实验ValidationData进行验证。它包含与的输入相对应的输出数据信号2.最后,点击验证进行验证。一个试验田将模拟响应与实验数据进行比较。我们看到这个匹配非常好。

综上所述,我们通过指定一个实验,用测量的输出数据,并指定一些参数进行估计来进行估计。然后,我们通过使用不同的数据集进行验证来检查参数值,从而获得参数值的置信度。

关闭模型

bdclose (“simple_clutch”
Baidu
map