【CoppeliaSim】远程 API 之 Python 控制,对比 V-rep 有些不同
关于与 Python 的连接请参考文章:【CoppeliaSim】远程 API 之 Matlab 控制,对比 V-rep 有些不同
文章目录
- 1. 新建工程文件夹
- 1.1 sim.py
- 1.2 simConst.py
- 1.3 remoteApi.dll
- 2. 配置 CoppeliaSim/V-Rep 工程
- 3. 配置 Python 脚本
- Mac
1. 新建工程文件夹
需要使用远程 Remote 时需要一些必备的文件,分别有 sim.py
(原vrep.py),simConst.py
(原vrepConst.py),以及 remoteApi.dll
这三个基本文件。下边分别记录一下它们的所在位置,开发新的工程时建议将这三个文件拷贝出来,统一放置在你的工程文件夹下。
我的 CoppeliaSim,也就是 V-rep,是默认路径安装,你们若是在安装时更改了路径,那就先找到安装文件夹,之后模仿着找到自己的文件。
1.1 sim.py
C:\Program Files\CoppeliaRobotics\CoppeliaSimEdu\programming\remoteApiBindings\python\python
1.2 simConst.py
C:\Program Files\CoppeliaRobotics\CoppeliaSimEdu\programming\remoteApiBindings\python\python
1.3 remoteApi.dll
C:\Program Files\CoppeliaRobotics\CoppeliaSimEdu\programming\remoteApiBindings\lib\lib\Windows
最后的文件夹结构如下:
2. 配置 CoppeliaSim/V-Rep 工程
-- The main script is not supposed to be modified, except in special cases.
require('defaultMainScript')
simRemoteApi.start(19999)
3. 配置 Python 脚本
import sim
sim.simxFinish(-1)
clientID = sim.simxStart('127.0.0.1', 19999, True, True, 5000, 5)
if clientID != -1:print("Connected to remote API server!")
else:print("Failed connecting to remote API server")
sim.simxGetPingTime(clientID)ret, targetObj = sim.simxGetObjectHandle(clientID, 'Quadcopter_target', sim.simx_opmode_blocking)
ret, arr = sim.simxGetObjectPosition(clientID, targetObj, -1, sim.simx_opmode_blocking)
if ret==sim.simx_return_ok:print(arr)
sim.simxSetObjectPosition(clientID, targetObj, -1, (arr[0], arr[1]+0.5, arr[2]), sim.simx_opmode_blocking)sim.simxFinish(clientID)
详细代码解释请参考CoppeliaSim(原V-REP)新手上路,毕竟人家都写的很详细了,我也是参考作者的文章。如果把文章内容直接复制过来太不地道了,所以想看的麻烦转到作者博客下吧。
最终效果如下。
Mac
Ref(倒序):
V-rep 教程
CoppeliaSim(原V-REP)新手上路
V-rep远程API控制之Python系列(1):位置控制模式
【CoppeliaSim】远程 API 之 Python 控制,对比 V-rep 有些不同相关推荐
- 【CoppeliaSim】远程 API 之 Matlab 控制,对比 V-rep 有些不同
关于与 Python 的连接请参考文章:[CoppeliaSim]远程 API 之 Python 控制,对比 V-rep 有些不同 文章目录 1. 新建工程文件夹 1.1 必备的 .m 文件 1.2 ...
- 使用Python控制1602液晶屏实时显示时间(附PyCharm远程调试)
前言 原创文章,转载引用务必注明链接.水平有限,如有疏漏,欢迎指正. 本文介绍一下UP板的GPIO资源使用,以及一个使用Python演示一个简单的demo. 本文使用Markdown写成,为获得更好的 ...
- python画锯齿波_用Python控制硬件35-自制二三十元成本的信号测量采集控制系统
如前篇所介绍,用Shell Lab测试台软件配合之前介绍的任意款实验板,都能方便地实现ADC电压测量,但遇到两个问题: 示例代码虽然众多,但大都默认ShellLab类型的控制器,需要手动改为Mcush ...
- 树莓派python控制gpio_树莓派的GPIO控制
陈拓chentuo@ms.xab.ac.cn 2018.06.09/2018.06.10 从网上下载了几张精美的图片,感谢图片的制作者! 0. 概述 本文介绍树莓派 Zero W的GPIO控制,并用L ...
- 用python控制硬件_用Python控制硬件35-自制二三十元成本的信号测量采集控制系统...
如前篇所介绍,用Shell Lab测试台软件配合之前介绍的任意款实验板,都能方便地实现ADC电压测量,但遇到两个问题:示例代码虽然众多,但大都默认ShellLab类型的控制器,需要手动改为Mcush. ...
- 使用python控制eTM-3020C程控电源
目录 基本参数 接口 串口参数 演示上位机串口通信连接步骤 电源地址码修改方法 通讯协议 MODBUS_RTU帧结构 地址域 功能域 数据域 CRC校验 注 MODBUS RTU 通讯协议 通讯信息传 ...
- Docker远程API未授权访问导致的Docker逃逸
Docker远程API未授权访问导致的Docker逃逸 前言 是给社团学弟学妹们一次讲课的一次md. 服务器 https://cloud.tencent.com/act/campus 当然想要复现学习 ...
- python用渐变色画圆_利用python控制Autocad:pyautocad方式
发现pyautocad模块:可以用python控制autocad的包.今天把文档中的重点内容摘录出来,以后绘图.计算大工程量.或者识别施工图的时候时候也许可以用到. 一.连接cad pyautocad ...
- jenkins_使用Jenkins / Hudson远程API检查作业状态
jenkins 在进行演讲时,我编写了一个Hudson / Jenkins插件(适用于EclipseCon NA 2014) ,但我想发表有关该演讲中提到的想法的博客文章. 在这篇文章中,我解释了如何 ...
最新文章
- 遇到 400、500 错误千万不要慌!
- BZOJ 3160 FFT+Manacher
- 010 Editor v8.0.1_x32分析以及注册机制作
- 浅谈APP的分享功能,有时候社交裂变形式比内容更“重要”
- 一定要牢牢掌握的技术!Spark+Flink+推荐系统+数据挖掘等
- leetcode 911. Online Election | 911. 在线选举(加强堆 + 二分查找)
- windows 开启防火墙策略允许ftp端口通过
- 在php中图片放大怎么实现,用PHP实现图片的缩放与裁剪
- 除非万不得已,否则绝不谈判
- 【转载】Docker镜像打包示例
- 组装自己的php框架,搭建自己的PHP框架
- Ionic2 分享(微信分享+QQ分享+复制到剪贴板+微博分享)
- 数据库连接html文件路径,Python+Flash+MySQL+HTML链接数据库查询,pythonflaskmysqlhtml,连库...
- 查找攻击者ip的方法
- 小米忙着营销,麻烦带上技术!
- 马云:我不为996辩护,我向奋斗者致敬
- 什么样的人适合当程序员?挺有意思的一篇文章
- Apache Doris数据模型详解及适用场景
- 华三MSR路由配置设备管理控制台DMC,实训室
- 独家专访阿里高级技术专家北纬:Dubbo开源重启半年来的快意江湖