起因:安装PreScan8.5.0后可以单独运行,但无法用MATLAB打开,故写下本文记录解决问题过程及最终解决方法。(2024.3.3 20:17更新一下,刚发现其他MATLAB版本也可以)
问题1:
PreScan8.5.0安装过程中,在“是否安装PreScan与MATLAB集成?”步骤时,选择
后,继续选择
(试过2023a和2020a版),均会弹出
,且后续联合仿真无法正常运行。
问题原因:
PreScan8.5.0可能与高版本MATLAB不兼容。
解决方法:
使用低版本MATLAB,本人在使用2017b之后不会出现版本不支持警告,推测2017b及更低版本可与PreScan8.5.0兼容。
更新:
后续有用MATLABR2020a试了一下,也可以成功,方法如下:忽视弹窗,继续安装。
(如已经安装,无需卸载PreScan8.5.0,只需在GUI里面的Settings-Preference-MATLAB & Simulink 里改一下MATLAB的根目录即可更换MATLAB版本)
注:换完记得先点击Apply应用一下再OK退出。
问题2:
PreScan8.5.0安装后,使用PreScan Process Manager 8.5.0
(TIPS:打开后不弹出窗口,可在桌面右下角隐藏的图标里右键打开)
,打开MATLAB,(如果出现
,是因为编译器版本不兼容,可参考PreScan 8.5 或 2019.02 环境配置 MATLAB C compiler、 || 和 &&、Error using mex_prescan requires c/c++ compilers to support this m-CSDN博客),
此时MATLAB上方打开地址为bin文件
并且命令窗口疯狂刷新各种编译信息导致无法运行。
问题原因:
命令窗口一直疯狂刷新各种编译信息可能是电脑在初始化环境等配置,需要等待。
更新:
如弹出编译器不受支持也没关系,不必着急安装MinGW或者Visual Studio,可以等待初始化结束能正常打开之后再装。当然提前安装上最好,否则后续安装好编译器后MATLAB需要重新初始化,此过程依电脑性能决定是否耗费大量时间。
解决方法:
等待,等待,等待!!!(依电脑性能决定等待时间)直到MATLAB上方打开地址从bin文件变为Experiments文件(即从PreScan Process Manager 8.5.0打开MATLAB后可以直接从打开的界面选择slx文件而不需要手动换地址)
即可,此时打开slx文件便一切显示正常。
问题3:
从MATLAB打开slx文件后显示
Error evaluating 'PreLoadFcn' callback of block_diagram 'test01_cs'. Callback string is 'mbxruntime.callbacks.PreLoadFcn(bdroot);' [8 similar]
Caused by:
- 未定义变量 "mbxruntime" 或类 "mbxruntime.callbacks.PreLoadFcn"。
Component:Simulink | Category:Block diagram warning
Could not evaluate MaskDisplay commands of block 'test01_cs/BMW_X5_SUV_1': 未定义函数或变量 'imagePath'。 [6 similar]
Component:Simulink | Category:Block warning
,且Simulink里面无法正常显示模块。
问题原因:
只单独打开了MATLAB而没有打开PreScan8.5.0,导致无法找到定义的变量。
解决方法:
使用PreScan Process Manager 8.5.0依次打开GUI和MATLAB,保持同时开启状态。