zoukankan      html  css  js  c++  java
  • 3.VREP简介

    1. VREP简介

    VREP已改名为CoppeliaSim,但是功能并没有变化。CoppeliaSim有三种证书CoppeliaSim Player、CoppeliaSim Edu、CoppeliaSim Pro。

    VREP是一款支持机器人运动学及动力学仿真的软件。该软件采用分布式控制架构,场景中每个对象都可以通过嵌入式脚本、插件、ROS节点、BluezZero节点、API客户端控制。所以它不仅可以用于机器人原型机的开发及算法验证,也可以应用于多机器人协作场景。VREP还可以用于硬件控制,让仿真场景与实物相互交互。

    VREP支持的API客户端包含C/C++、Python、MATLAB、Java、Octave或者Urbi。VREP场景中的对象的嵌入式脚本采用Lua编写。VREP还支持在Windows、MasOS、Linux中使用。

    VREP官网中给出的所有支持的功能。

    ·  跨平台 (Windows、MacOS、Linux)

    ·  六种编程方法 (嵌入式脚本插件附加组件ROS节点远程客户端应用编程接口BlueZero节点)

    ·  6种编程语言 (C/C++PythonJavaLuaMatlab、和Octave)

    ·  超过400种不同的应用编程接口函数

    ·  4个物理引擎 (ODEBulletVortexNewton)

    ·  Integrated ray-tracer (POV-Ray)

    ·  完整的运动学解算器 (对于任何机构的逆运动学和正运动学)

    ·  Mesh, OC tree, point cloud-网孔干扰检测

    ·  Mesh, OC tree, point cloud-网孔最短距离计算

    ·  路径规划 (在2到6维中的完整约束、对于车式车辆的非完整约束)

    ·  嵌入图像处理的视觉传感器 (完全可拓展)

    ·  现实的接近传感器 (在检测区域中的最短距离计算)

    ·  嵌入式的定制用户接口、包括编辑器

    ·  完全集成的第四类Reflexxes运动库 + RRS-1 interface specifications

    ·  数据记录与可视化 (时距图、X/Y图或三维曲线)

    ·  整合图形编辑模式

    ·  支持水/气体喷射的动态颗粒仿真

    ·  带有拖放功能的模型浏览器 (在仿真中依旧可行)

    ·  多层 取消/重做、影像记录、油漆的仿真、详尽的文档等

    关键词: 机器人机器人学、仿真器、仿真、运动学、动力学、路径规划、最短距离计算、碰撞检测、视觉传感器图像处理接近传感器、油漆分散仿真.

       

      1. 基本元素

    VREP中的场景是机器人仿真时所在的环境,一切仿真过程都在场景中发生。采用不同的物理引擎时,场景中的重力、摩擦力、空气等都会发生变化。对象包含相机、光线、几何体、关节、图像、各类传感器、路径、OC树以及点云。由这些对象就能够组合出所需的机器人外形,若是对机器人的外形不满意,还可以采用三维建模软件绘制再将其存为STL文件,之后再导入至VREP中使用。

    1.1.1 场景(scene)

    场景如下图两部分组成。标1部分作为场景中的资源管理窗口,添加一个对象至标2中,同样会在左侧添加对象的名称类型等信息,供后续操作。右侧标2部分作为仿真时的视觉场景,可供研究人员操作和观察。

    图1   VREP场景

                                                                                 

           场景中的UR5机械臂资源树如下图。根据各对象的依附关系,可整理成树形结构。UR5资源树中可以看到存在关节、几何体、dummy和传感器。这些资源放置的位置存在约束。关节和关节不能直接相连,需要在两者之间加入一个几何体,一般为了外形好看会加入两个几何体,其中一个作为连接体,将其动力学属性激活;另外一个仅仅作为外观显示,将其动力学属性关闭。在对象的可以添加嵌入式脚本<分为线程和非线程:多机器人协作时采用多线程运行>。

    图2  UR5资源树

     

    1.1.2 对象(object)

    对象包含相机、光线、几何体、关节、图像、各类传感器、路径、OC树以及点云。采用这些对象可以组合出符合预期的机器人。例如六足机器人。

    其资源树如下图所示。

     

    图4  六足机器人资源树

     

    在资源树中可以看到,六个腿分别采用六个子资源树构成。一条腿包含三个旋转关节,每一条腿的结构一样,区别在放置的位置不同。图中六条箭头红线表示IK group的连接位置。每条腿的逆运动学求解采用VREP自带的逆运动学解算器完成。当然,也可以自己编写代码求解单条腿逆运动学。

     

    图5  六足机器人俯视图

     

    在六足机器人的上平台上添加如视觉传感器,可为机器人的路径规划于路径导航提供相关数据。

     

    图6  六足机器人视觉图

     

     

    图7  六足机器人目标追踪场景
  • 相关阅读:
    字节序列高低端问题
    简单的进制转换
    网页中如何调用WIN本地程序
    获取CAN报文并解析
    异步通信服务选型
    PostgreSQL 更新JSON,JSONB字段
    js,Date的toJSON方法时间和当地时间不一致如何处理
    js中字符串的替换 replace方法
    百度富文本编辑器umeditor,ueditor字体修改无效的问题
    python 3 基础之类和对象的创建、面向对象的三大特性
  • 原文地址:https://www.cnblogs.com/deciduousmap/p/14159830.html
Copyright © 2011-2022 走看看