这是我很久以前用CoppeliaSim(原名V-REP)这个仿真软件整理的一些操作的步骤,由于这款软件出的比较久,然而改名后网上有些教程的内容已经过时,造成我使用过程中踩了不少坑,所以写一下这软件相关的一些使用说明帮助后面用这款软件的人。
这系列的文章不会涉及到ros和CoppeliaSim的接口使用(当时用的时候还不会ros),只涉及python和该软件接口的使用,如果后面再次用到这款软件可能会更新相关的操作。
简介:
具有集成开发环境的机器人仿真器CoppeliaSim(原名V-REP)基于分布式控制体系结构:每个对象/模型可以通过嵌入式脚本、插件、ROS或BlueZero节点、远程API客户端或定制解决方案进行单独控制。这使得CoppeliaSim非常通用,是多机器人应用的理想选择。控制器可以用C/C++、Python、java、Lua、MATLAB来编写。
CoppeliaSim用于快速算法开发、工厂自动化仿真、快速原型和验证、机器人相关教育、远程监控、安全双重检查、数字孪生等等。
这是官网的地址:
Robot simulator CoppeliaSim: create, compose, simulate, any robot - Coppelia Robotics

在官网上,你可以查看到该仿真软件的功能,在官网上方点击Features:

在video页面上,你可以查看到该仿真软件可以适用在哪些场景上(作者我主要做的是群体机器人仿真这块),不过查看这些视频需要翻墙(你懂得):

在网页上方点击Resources,进入资源页面:

在这个页面上,官方提供了CoppeliaSim的用户手册(十分重要!!),因为目前网上的教程还比较少,所以大部分的时候我们都要查阅用户手册的。
V-rep官方英文手册:CoppeliaSim User Manual
网上也有人发了汉化的版本:
CoppeliaSim用户手册中文翻译版(一)_汤姆与贝塔的博客-优快云博客_coppliasim
CoppeliaSim用户手册中文翻译版(二)_汤姆与贝塔的博客-优快云博客

还有一个常用的是官方提供的论坛,在这个论坛里,虽然用的人还不是很多,但是里面还是有很多资源的,如果在仿真过程中有什么问题,也可以在论坛中提问,会有其它人和官方人员来帮你解决。

如何下载:
下载的方法十分简单,在网页上方点击Downloads,即可进入下载页面:

在这里有三个版本提供下载,分别是player(不推荐,没啥功能)、edu(推荐,免费的)以及pro(没用过,收费的),这里我用的是edu版本的,感觉大部分功能都有了。
安装也十分简单,这里就不多赘述了。
API的查询:
如简介所述,CoppeliaSim支持很多编程语言,在进行仿真的时候我们会用到很多其内置的函数,接下来讲一下怎么查询API:
为了方便查询API,我们需要如下步骤:
Regular API:
这些是CoppeliaSim自己提供的功能,可以看作是主要功能。其中的Lua版本可以直接用在仿真器里机器人自带的脚本上,这个后续的教程会说。
进入用户手册,在左侧处点击Writing code in and around CoppeliaSim并打开CoppeliaSim API framework:


点击the regular API,再随便点进去一个函数,例如sim.getObjectHandle(这是用的最多的一个函数,用来获取物体的handle,后续很多函数都要用到handle作为函数的输入):

在这里我们可以看到函数的描述,输入参数以及返回值,方便我们后续的操作。
Remote API:
好像在官方的用户手册上找不到类似的页面了,贴一张以前的截图,总之,这个API扩展了之前Regular API的功能,并且能够在不同的编程语言,不同的机子上一起仿真,功能很强大:

官方现在有两种Remote API的框架:The B0-based remote API和The legacy remote API。前者更新,功能更强大,不过现有的教程少得可怜,当年换成这个踩了很多坑,后者相关的教程比较多,容易入门。
现在好像找不到Remote API的function list,不过我们可以从Regular API的函数介绍中进去,请看上上张图的最下方,点击其中一个链接,即可进入相关的function list,在最下方可以查看不同编程语言的function list:

最后
这部分的内容就到这里,后面会先讲The legacy remote API,然后再讲The B0-based remote API,还有其它功能的使用。
本文详细介绍了CoppeliaSim(原V-REP)这款机器人仿真软件的使用,包括其主要功能、应用场景、资源获取途径以及用户手册的重要性。重点讲解了如何查询和使用CoppeliaSim的API,特别是RegularAPI和RemoteAPI,为Python编程与软件接口的结合提供了指导。此外,还提到了官方论坛作为解决问题的资源库。文章计划后续分享关于RemoteAPI的使用,特别是ThelegacyremoteAPI和TheB0-basedremoteAPI的应用。
4457

被折叠的 条评论
为什么被折叠?



