【问题标题】:Dymola-Simulink interfaceDymola-Simulink 接口
【发布时间】:2019-01-28 10:51:15
【问题描述】:

我正在尝试创建一个 Matlab 和 Dymola 的复合模型。因此我遵循了这个教程:Claytex tutorial

我自己制作了一个简单的模型,而不是 DrivenPendulum 模型。我可以很好地在 Dymola 中翻译模型,并且在 Matlab 中编译 Dymola 模型的工作方式与教程中的一样。但是,一旦我尝试在 Simulink 中进行模拟,我就会收到以下错误消息:

评估子系统块(掩码)“test/DymolaBlock/compmodel”的“InitFcn”回调时出错。块测试/DymolaBlock 不是最新的。请重新编译!

重新编译显然不行,我一次又一次地收到这个消息。

我正在使用 Dymola 2019 Matlab R2018b 和 MinGW GCCx64 编译器。

但也许你们中的某个人已经有了一个想法,甚至已经遇到过这个问题?

提前致谢!

【问题讨论】:

    标签: matlab simulink dymola


    【解决方案1】:

    您必须使用 Visual Studio C 编译器。

    这是 Dymola 用户手册第 2 卷第 6.2 章中有关 Matlab/Simulink 接口的内容:

    Dymola 2019 的 Dymola – Simulink 接口支持 Matlab 从 R2013a(8.1 版)到 R2017b(9.3 版)的版本。仅有的 支持 Visual Studio C++ 编译器生成 DymolaBlock Windows 上的 S 函数。对于 Linux,支持 gcc 编译器。这 不支持 LCC 编译器,Windows 和 Linux 都不支持。

    【讨论】:

    • 感谢帮助,我安装了 Visual Studio C 编译器(Visual Studio 2017/Visual C++ Express 版)并使用新编译器在 Simulink 中重新编译 Dymola 块,但错误没有改变。有什么建议吗?
    • 你是否也在 Matlab 中选择了这个编译器?来自 Claytex 教程:“要在 Matlab 命令行中输入 mex -setup 并选择 Microsoft Visual C++ 编译器”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多