2023-08-17 13:44:04
simulink-CoppeliaSim联合仿真指南
为了成功实现Simulink与CoppeliaSim(原VREP)的联合仿真,需要按照以下步骤进行安装和配置。本指南将详细介绍CoppeliaSim的安装、QT与VS2019的安装、simExtSimulink的编译以及测试过程,并解答可能遇到的问题。
一、CoppeliaSim安装
下载与版本选择:
访问CoppeliaSim的官方网站下载页面,选择合适的版本。本指南以edu版本为例,选择了4_2_0版本。
下载链接中的图片展示了不同版本的下载选项,确保选择正确的版本进行下载。
解决闪退问题:
CoppeliaSim 4_2_0和4_1_0版本可能存在闪退问题。解决方法是在CoppeliaSim的安装目录下的system文件夹下找到usrset.txt文件,在文件末尾加入"allowOldEduRelease = 7775"(不需要加引号,4_1_0版本后续数字为7501)。
显示旧风格界面:
若希望使用CoppeliaSim的旧风格界面,同样在usrset.txt文件中,将"showOldDlgs"的数值改为true。
二、QT安装
从镜像网站或官网下载QT的在线安装器,安装QT 5.15.2版本(或兼容的5.15版本)。
安装过程中,选择MSVC2019-64/MSVC2019-32作为编译器,以便后续编译准备。
三、VS2019安装
由于QT编译需要MSVC编译器,若电脑未安装VS2019,需从历史版本软件中下载并安装VS2019的Build Tools。
安装时,选择“使用C++的桌面开发”选项,以确保MSVC工具的正确安装。
四、simExtSimulink编译
下载与解压:
从simExtSimulink的git库下载代码,并将其解压至CoppeliaSim的安装目录下的programming文件夹中。
QT编译:
使用QT打开解压后的“simExtSimulink.pro”工程。
选择与CoppeliaSim版本相匹配的MSVC编译器(MSVC2019-64/MSVC2019-32)进行release编译。
编译成功后,将生成的“simExtSimulink.dll”文件拷贝到CoppeliaSim的安装目录下。
MATLAB编译:
将MATLAB的运行目录改到simExtSimulink下。
在MATLAB中运行“mex gettable.cpp”和“mex settable.cpp”进行编译。
五、测试
打开场景:
在CoppeliaSim中打开example1.ttt场景并运行。
运行Simulink程序:
在MATLAB中打开Simulink程序“example1.slx”并运行。
通过Simulink中的滑块控制CoppeliaSim中的小车运动,并在Simulink中显示小车信息。
六、常见问题解答
CoppeliaSim中运行example1.ttt报错:
若出现“attempt to index a nil value (global 'simulinkTable')”错误,通常是由于simExtSimulink未正确放置到根目录、QT的kit未选择正确的MSVC编译器或QT版本与CoppeliaSim要求不匹配引起的。
检查并确认simExtSimulink.dll文件已正确放置在CoppeliaSim的安装目录下。
确认QT的kit选择了正确的MSVC编译器。
确认QT版本与CoppeliaSim要求相匹配。
MATLAB运行“mex gettable.cpp”不成功:
若MATLAB无法找到编译器,需要安装MinGW64 Compiler编译器。
按照相关教程安装MinGW64 Compiler后,重新运行“mex gettable.cpp”和“mex settable.cpp”。
通过以上步骤,您应该能够成功实现Simulink与CoppeliaSim的联合仿真。若遇到其他问题,可参考CoppeliaSim和simExtSimulink的官方文档或社区论坛寻求帮助。
