CoppeliaSimEdu与Visual Studio2019 C++环境配置

近期接触了CoppeliaSim这款仿真软件,遇到了远程控制的问题。
参考了以下博主的博客,表示感谢:

  1. V-rep与VS2017
    C++通信环境配置,远程操控机械臂
  2. VS的包含目录、库目录、引用目录、可执行目录解释
  3. [连载 3]Vrep小车建模——matlab控制

为了日后查找方便,在此将过程总结备份。

查看CoppeliaSim官网资料

CoppeliaSimEdu与Visual Studio2019 C++环境配置_第1张图片
CoppeliaSimEdu与Visual Studio2019 C++环境配置_第2张图片
可以看到只要项目包含以上头文件,并且在预处理器加上黑体命令

NON_MATLAB_PARSING
MAX_EXT_API_CONNECTIONS=255
DO_NOT_USE_SHARED_MEMORY

即可。

于是开始动手。

  1. 首先创建一个c++空项目,并添加main.cpp源文件,配置项目管理器是x64的CoppeliaSimEdu与Visual Studio2019 C++环境配置_第3张图片
  2. 在属性框中添加预处理器命令(官网上的)CoppeliaSimEdu与Visual Studio2019 C++环境配置_第4张图片
  3. 将安装路径下包含头文件中的目录添加上。官网上说只要包含remoteApi文件就好,这样的话编译是可以的,但是会少一些常量什么的。所以最好把三个目录都加上。CoppeliaSimEdu与Visual Studio2019 C++环境配置_第5张图片
  4. 在此文件夹下找到.vcxproj文件,用VisualStudio打开,点击生成CoppeliaSimEdu与Visual Studio2019 C++环境配置_第6张图片
  5. 得到x64文件夹后,会看到里面有.dll 文件 和.lib文件,dll文件直接复制到该项目的输出文件夹下,lib文件的包含目录跟附加依赖项添加CoppeliaSimEdu与Visual Studio2019 C++环境配置_第7张图片CoppeliaSimEdu与Visual Studio2019 C++环境配置_第8张图片CoppeliaSimEdu与Visual Studio2019 C++环境配置_第9张图片

最后写代码测试

这里只有19997这个参数才能成功,否则就得在仿真软件里加上simExtRemoteApiStart(端口号)

#include
#include
#include
using namespace std;
int main() {
	int clientid = simxStart("127.0.0.1", 19997, true, true, 5000, 5);
	cout << clientid << endl;
	int ret = simxStartSimulation(clientid, simx_opmode_oneshot);
	cout << ret<< endl;
	system("pause");
	simxStopSimulation(clientid, simx_opmode_oneshot_wait);
	simxFinish(clientid);
}

CoppeliaSimEdu与Visual Studio2019 C++环境配置_第10张图片
可以看到远程调用成功。

你可能感兴趣的:(CoppeliaSim)