如何在Simulink中更改Workspace中的标量变量?

时间:2015-07-23 18:53:23

标签: matlab simulink

我在Simulink / SimMechanics中创建了Body,其中CS1位于CG的[0,length,0]。在模拟开始之前,我设置变量length = 1,但我需要在模拟期间将其更改为length = 0.8。是的,我真的想要动态改变对象的大小。 由于StateFlow中的某些事件,我正在更改它。 我尝试通过Simulink块length将这个新To Workspace写入Workspace,但它无法保存标量变量。

有人知道如何将标量变量从Simulink保存到Matlab Workspace吗?

1 个答案:

答案 0 :(得分:2)

如果我理解正确你只需要从Simulink中保存Matlab中的一些标量。我遇到了同样的问题,可以给你一个例子:

Look at this 所以我使用Matlab中的变量MySeed。我在Timeseries阻止中使用ToWorkspace选项的所有秘密,但Inherit: auto使用FromWorkspace。这意味着我可以在Matlab中定义MySeed,就像这种类型的Array[0 78]。第一列用于Simulink中的计时,所以我不使用它。但其次只是一个数据,您可以像标量值一样使用它。 Simulink加载它并使用SECOND列(我的数据)。 我有时间模拟的问题= 6000.所以在这种情况下,我会得到如此大的数组,我真的不使用。所以你可以在Decimation块中使用ToWorkspace选项!我将它设置为6000,现在它在Workspace中创建时间序列,只有2个元素 - 对于t = 0和t = 6000.我用我的值制作它们,所以我可以在我的程序中使用它们。 我希望这可以帮到你!