优化、估计和扫描模块参数值
当扫描一个或多个参数时,您可以在各次仿真运行之间更改参数值,并比较和分析每次运行的输出信号数据。通过参数扫描并将真实系统中的不确定性纳入考虑范围来调整控制参数,估计未知模型参数并测试控制算法的稳定性。
您可以扫描模块参数值或用于设置参数值的工作区变量的值。使用模型数据编辑器(在 Modeling 选项卡上,点击 Model Data Editor)上的 Parameters 选项卡、Property Inspector(在 Modeling 选项卡上的 Design 下,点击 Property Inspector)、命令提示符或脚本在各次仿真运行之间更改参数值。
如果要反复更改某模块参数的值,请考虑在工作区中创建一个变量。您可以使用模型资源管理器或编程命令来更改该变量的值,而不是在模型中定位或标识相应模块。此外,有助于参数优化、估计和扫描的一些功能和产品要求您通过创建工作区变量来设置模块参数值。
要了解如何在创建模型的迭代过程中操作参数值,请参阅使用模块参数值进行调优和实验。
有关在设计模型时访问和设置模块参数值的基本信息,请参阅设置模块参数值。有关以编程方式仿真模型的基本信息,例如使用脚本,请参阅以编程方式运行仿真。扫描参数值并检查仿真结果
此示例说明如何在多次编程仿真运行之间更改模块参数值。可以使用此方法比较每次运行的输出信号数据来确定最佳参数值。
示例模型 sldemo_absbrake 使用 Constant 模块为防抱死制动系统指定滑动设定值。用两个不同的滑动设定值(0.24 和 0.25)仿真模型,并比较每次仿真运行的输出车轮速度。
要存储设定值,请在基础工作区中创建变量。此方法允许您为该值指定有意义的名称。
打开示例模型。
open_system('sldemo_absbrake