如何在Simulink中使用方波信号和可变步长的速率限制器?

时间:2014-08-05 17:32:30

标签: matlab simulink

如何在Simulink中使用方波信号和可变步长的速率限制器?

以下是我想要设置的模型的屏幕截图:

modelenter image description here

我将定制的矩形信号馈送到速率限制器以避免垂直斜率。

不幸的是,这似乎不起作用。我正在使用 ode15s ,这是一项要求。这是Simulink抛出的错误消息:

  

错误:输入信号到速率限制器'... /速率限制器'都不是   离散的或连续的采样时间信号。只有离散或   支持连续输入信号

相当令人惊讶的是,我通过添加一个直接跟随衍生物的积分器找到了一个工作区。这有效:

workaroud

enter image description here

但它很难看,而且在某些情况下我会遇到一些非常烦人的稳定性问题。我非常怀疑它被认为是“良好做法”。

那么在这种情况下如何使用这个速率限制块呢?

约翰

2 个答案:

答案 0 :(得分:1)

谢谢你们的回答。 我忘了说我已经用彩色显示器检查了采样时间。它是“固定在次要步骤”。

实际上这很简单。如果我做对了,我的子系统中没有以错误的方式指定或指定采样时间。在速率限制器对话框中指定连续解决了问题!

thewaywewalk,我会记住你的建议。由于我正在使用很多步骤,所以它可能很有用。

答案 1 :(得分:0)

在模型中尝试displaying the sample time colours以检查信号使用的采样时间。

引入积分器块将强制信号变为连续,因此它的工作原理。也许使用Signal Specification块或Rate Transition块,采样时间为[0, 0](对于连续信号,请参阅文档中的Specify Sample Time)将实现同样的效果并略微更优雅(使用衍生块不被认为是好习惯)。