Matlab版本更新引起模块变动产生报错解决方案
在使用Simulink打开从网站上下载的的模型时,经常会遇到”Mux blocks used to create bus Signal”的错误,特别是用高版本打开低版本时,报错如下:
显示错误:使用总线信号或具有与总线对象相关的信号/参数。但是,“用于创建总线信号的多路复用器块”诊断未配置为“错误”。
此时,回到Matlab命令行窗口:
注意:一定要在simulink仿真文件所在的目录下!
在matlab命令窗口运行:upgradeadvisor('Current_reversible_chopper'),(注:印号内容为model的文件名)并回车。
弹出界面如下:
我们注意到报错出的建议如下:Run the 'Check Bus Usage'
因此,我们在Upgrade Advisor对话框左侧找到Check Bus Usage,并且点击右边的“Run This Check”。
随后放大对话窗口,并点击:“modify”按钮。
此时命令行窗口显示如下:
解决报错,运行正常。
若该问题未解决:
显示:由于以下原因,无法修改模型:模型有未保存的更改。请保存模型并重新运行slreplace_mux命令。
此时再点击Run This check,随后点击蓝色超链接处:
在Configuration Parameters 选项板选择如下:找到Diagnostics-Connectivity,并修改 Mux blocks used to created bus signals选项框。在拉框将“none”改为“error”,并点Apply。
总结:出现这个问题的原因是Matlab版本更新换代过程中,部分模块(此处是与“bus signals”相关模块)的功能变动引起的。
R2024a版本还可参阅:
https://ww2.mathworks.cn/help/simulink/slref/upgrade-simulink-models-using-a-simulink-project.html