无法更改模块块中运行时参数的大小

时间:2014-10-28 10:43:53

标签: matlab simulink

我有一个Simulink模型,我正在使用Model模块以避免重复某些功能。

当我尝试运行父模型时,出现以下错误:

  • 无法更改运行时参数的尺寸'增益'在 ' TranslationChannel / First-Order Filter1 / Model / Continuous / A'从 模型执行时[1x1]到[0x0]
  • 设置无效 ' TranslationChannel / Second-Order Filter / Model / Continuous / A * x / A11'对于 参数'增益'
    • 评估参数'增益'时出错在 ' TranslationChannel / Second-Order Filter / Model / Continuous / A * x / A11'
      • 参考不存在的字段' A11'。
  • 设置无效 ' TranslationChannel /倾斜/型号/连续/ A * X / A11'用于参数 '增益'
    • 评估参数'增益'时出错在 ' TranslationChannel /倾斜/型号/连续/ A * X / A11'
      • 参考 不存在的字段' A11'。

子模型如下: enter image description here

错误引用的块是First Order Fliter 1,参数是: enter image description here

如何解决此错误,或者,是否有更好的方法在模型中多次调用同一系列的块?

父模型如下: enter image description here

编辑: 在与Ander讨论之后,我尝试将步骤源直接连接到模型块以消除任何可能的空信号并得到相同的错误,这表明问题是由于调用第二个模型。如果有人可以进一步提供帮助,那就太棒了。

编辑2:我已确认数据正在传递到模型中。从子模型中删除过滤器使其工作正常。错误发生在过滤器的屏蔽部分。

1 个答案:

答案 0 :(得分:0)

我已经使用库而不是模型解决了这个问题,并将过滤器块放入库中的子系统中,然后将其拖到我的主模型中。

这允许我调整一次参数并让它一次更改所有块。