首页 文章

每次没有进行任何更改时,Simulink模型都会重建

提问于
浏览
2

自从我开始使用这个Simulink模型以来,我一直有这个问题 . 无论我尝试什么,Simulink每次运行时都会重建模型 . 我使用以下过程查看了校验和:

>> [cs1, cs1det] = Simulink.BlockDiagram.getChecksum(<model name>);
>> (Here I hit run on the model without changing anything)
>> [cs2, cs2det] = Simulink.BlockDiagram.getChecksum(<model name>);
>> cs1 == cs2
    1
    1
    1
    1

如果校验和相同,为什么Simulink会重建模型?我确实创建了另一个模型,其中包含一些简单的逻辑,编译完成后,我可以多次运行它而不需要Simulink重新编译它 .

此外,当我在Rapid Accelerator模式下运行时,我注意到 Headers 中的模型名称旁边会弹出一个星号 . 由于这意味着模型有未保存的更改,因此可以运行它会导致进行任何更改吗?我已经检查了回调方法,并且在sims启动时没有运行(实际上在任何回调方法中都没有) .

是否存在Simulink在每次运行之前运行的某种基本编译/初始化/构建?我试图在Rapid Accelerator模式下运行我的模型而不重新编译,因为每次编译大约需要45分钟 .

我是否忽略了模型的一些配置参数?是否需要更改一些全局MATLAB / Simulink变量?

1 回答

  • 1

    它正在建设还是正在更新?

    通常,当您点击“运行”按钮时,MATLAB必须传播信号,检查模型是否存在错误,初始化变量 . . .

    它可能看起来像构建,但要实际确认它正在构建,请检查文件夹中是否有yourmodelname.c文件 .

    同时检查“文件菜单”首选项,然后查看其中的功能,看看是否有人调用了某些内容 .

相关问题