2014-10-28 68 views
2

我有一个Simulink模型和一个我正在使用的模型块以避免重复某些功能。无法更改模型块中运行时参数的尺寸

当我尝试运行父模型,我收到以下错误:

  • 在 “TranslationChannel /一阶过滤器1 /模式不能改变运行时参数“增益”的尺寸/连续“而模型正在执行
  • 设置无效在 从 [1x1的]至[为0x0] 'TranslationChannel /二阶滤波器/型号/连续/ A * X/A11' 的 参数 '增益'
      /A
    • 错误评估参数 'TranslationChannel /二阶滤波器/型号/连续/ A * X/A11' 收益'
      • 引用不存在的字段 'A11'。
  • 设置无效在 'TranslationChannel /倾斜/型号/连续/ A * X/A11' 的参数 '增益'
    • 错误评估参数中 '增益'“TranslationChannel /倾斜/型号/连续/ A * x/A11'
      • 参考 不存在的字段'A11'。

子模型是如下: enter image description here

该块的误差指的是一阶郝晓红1,参数是它们是: enter image description here

如何我是否可以解决这个错误,或者,在模型中多次调用相同系列的块有更好的方法吗?

父模型为下面: enter image description here

编辑: 在我与安德讨论,我试图直接连接步骤源到模型块以消除空信号的任何可能性,并得到了同样的错误,这表明问题是由于调用第二个模型。如果任何人都可以进一步提供帮助,那会很棒。

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

+0

好吧,你看起来有3块的错误。我的猜测是:error1:信号在任何时候都不存在?输入是否成为非现实?看起来你的信号在某个点从标量[1x1]变成了不是信号[0x0]。错误2:打开“二阶过滤器”并检查参数A11,其未命中。为什么你有一个未定义的参数?同样的错误3.什么是A11,为什么未被发现? – 2014-10-28 10:55:14

+0

很难回答这个问题,因为我们不知道是什么导致了错误。真正的问题是什么导致参数在运行时将大小从1x1更改为0x0?块的输入是什么样的?如果您可以将导致问题的块和输入信号隔离开来以重现问题,那么您可以站在更好的位置找出解决方案。 – am304 2014-10-28 10:55:55

+0

@AnderBiguri这些参数是用户没有直接访问的屏蔽参数(一阶过滤器是一个被屏蔽的子系统)。事实上,史蒂夫,你可以在First-Order Filter块的掩码下查找出错的地方。其他块的其他错误是我认为的第一个错误的后果。 – am304 2014-10-28 10:59:04

回答

0

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

这允许我调整参数一次,让它一次改变所有的块。