2016-08-20 95 views
0

我在simulink中设计了一个模型。通常,我通过在模型中设置块(eg.gain)的值并模拟模型并打开范围块来生成一个图。但是我需要生成与块的不同值相对应的不同grpah(eg.gain)。基本上,对于增益值的不同值,我需要不同的图表,但都在同一个图表中。我给予我的收益的不同值应该来自一个数组。这是我的型号 enter image description here如何迭代Simulink Matlab中的模型值?

我第一次使用MATLAB。请初学者的方法

+1

对于一个简单的模型,您只需将整个向量值放入增益模块。 Simulink将模拟模型,就好像您在并行模拟n模型(假设n元素向量)并在相同范围内显示所有n模型的结果。然而,随着你的模型变得越来越复杂,这是不可能的,你应该遵循@Tom Youngs的回答。 –

回答

1

设置增益值回答这个

增益块的值可以将其设置为变量,而不是常量,即你可以给一个增益单元K中的价值设置面板。

然后,您可以创建一个脚本,给K一个值,例如;

%script to set gain and run model 
K=2; 
sim('Model Name Here'); 

这将设置增益块的值并运行模型。

将输出保存

汇Simulink的库浏览器的部分是称为到工作区块,这可以让你的任何输出值发送到MATLAB工作区以多种格式与你定义的名称。

Simulink 'To workspace' block

你的Simulink模型现在这个样子;现在

Simulink Model with output block

您可以创建一个脚本,设置增益值模型,运行模式和输出保存到您的工作空间。使用几个for循环,您可以为系统生成一组输入和输出。

从这里您应该能够使用记录良好的绘图函数在同一图表上绘制输入和输出。