matlab carsim联合仿真报错
Error reported by S-function 'vs_sf' in 'Radar_Acc_ExtSen_CS2018/CarSim S-Function':
Error: Unable to find solver DLL path from sim file.
这样该如何解决
1.尝试将输入输出的界面都点一下右上角的Refresh;或者回到carsim中去,再进入输入输出端口,把需要的输入变量以及输出变量删掉重新输入一遍。
如图所示:
2.Error: Unable to find solver DLL path from sim file.
并非一定要在 Carsim 中可以顺利地 send to simulink,才算是将 Carsim 和 Matlab 关联上了,其实并不需要,即使 send to simulink 的时候报上面的第1个错,也是可以联合仿真的,仿真的时候可能会报错:
Error reported by S-function 'vs_sf' in 'Compare_DK4TT_big_square_2020b/CarSim
S-Function':
Error: Unable to find solver DLL path from sim file.
这种情况是 Matlab 的目录没设置对,有两个操作都可以:
将Matlab 的当前目录改到 Carsim 的database 的目录,你可能有多个 database,但是要是你打开的 Carsim对应的那个,其名称一般是 CarSimXXX_Data,其中 XXX 为版本号,该目录下 有: Aerodynamics、Animator、Batch 等目录
如果你可以send to simulink,那你就直接 send 一下就可以了,matlab 的目录会自动给你进入到那个目录,即使不能成功 send to simulink也可以联合仿真;
最后还是不行的话,请添加一下环境变量,如:
将要对应MATLAB 版本安装目录下(以2020b为例)的三个目录添加到环境变量:
R2020a\runtime\win64
R2020a\bin
R2020a\polyspace\bin
打开MATLAB ,将Carsim中的solvers路径及子路径添加到MATLAB 的路径中:
主页-> 设置路径-> 添加并包含子文件夹:
CarSimXXX_Prog\Programs\solvers
这时候再去打开Carsim,重新 send to simulink,如果还不行,关闭Carsim,右键 matlab 快捷方式-> 属性-> [在目标框中最后面加入 -regserver ],再管理员身份打开一下matlab ,再把这个去掉,这时候去 Carsim 中 重新send to simulink,应该就可以了。