input - dymola 模型的导出需要其输入的导数

标签 input modelica derivative dymola openmodelica

我想将 Dymola 模型导出到 Simulink。该模型由一个导数块 (der)、一个 RealInput、一个 RealOutput 和它们的连接组成。

当我翻译这个模型时,出现以下错误:

“该模型需要一些输入的导数,如下所示:
1 u"

我认为为什么需要导数是合乎逻辑的,但为什么导出获得导数很重要,为什么会导致错误?出现此错误,我无法继续导出。我知道simulink里面有导数块,但是实际的模型比较复杂,会出现同样类型的错误。有避免的可能吗?
我的 dymola 版本是 2014(64 位)。我使用“Visual Studio 2010/Visual C++ 2010 Express”作为编译器。

最佳答案

通常,当输入信号直接输入一个必须连续的量时(例如,不连续会导致脉冲),就会发生这种情况。

我处理这种情况的方法是在输入端放置一个高增益一阶滤波器。这确保了实际信号是连续的,但这意味着它可以非常快速地响应输入的任何变化。然后允许该输入是不连续的。

当然,高增益值会使系统的时间常数变得非常小,从而导致一些性能问题。但在实践中,我认为它们不需要那么高。

关于input - dymola 模型的导出需要其输入的导数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27964705/

相关文章:

differential-equations - 如何访问modelica中的时间变量

ruby - 在 Ruby 中计算导数 ([i] - [i - 1])

javascript - 通过自动完成功能输入相互依赖的文本

python - 为什么我的输入错误陷阱不能按我预期的方式工作?

conditional-statements - 通过 Dymola 在 PedanticMode 中的连接进行条件声明和反馈

具有未指定维度的 Modelica 数组

fft - 使用 fft 进行二阶导数

r - 如何获得函数的导数?

c - 如何忽略c中以 '#'开头的输入字符串?

javascript - 输入为空时如何停止发送