机器人系统常用仿真软件工具介绍、效果与评价指标(2018年更新)

机器人系统常用仿真软件介绍和效果

2018 ROS Melodic的迷失与救赎::https://blog.csdn.net/column/details/28058.html

2018 GitChat::沉迷机器人操作系统的一个理由和四种修仙秘籍

ROS机器人操作系统在线练习课程正在逐步完善中,目前以ROS官网中文资料制作,

补充参考链接:

1. Robotics simulator::机器人仿真器

https://en.wikipedia.org/wiki/Robotics_simulator

2. Most Advanced Robotics Simulation Software Overview::最先进的机器人仿真软件概述

https://www.smashingrobotics.com/most-advanced-and-used-robotics-simulation-software/

3. Robotics Simulation Softwares With 3D Modeling and Programming Support::支持三维建模和编程的机器人仿真软件

https://www.intorobotics.com/robotics-simulation-softwares-with-3d-modeling-and-programming-support/

通过网页快速了解Linux(Ubuntu)和ROS机器人操作系统,请参考实验楼在线系统如下:

初级教程可参考:https://www.shiyanlou.com/courses/854 邀请码:U23ERF8H

中级教程可参考:https://www.shiyanlou.com/courses/938 邀请码:U9SVZMKH

欢迎补充到留言我会及时更新。ROS机器人操作系统定制版纯净镜像:http://blog.csdn.net/zhangrelay/article/details/54632130

网盘分享全部资料:http://pan.baidu.com/share/home?uk=3171396548

1 主要介绍以下七种仿真平台(侧重移动机器人仿真而非机械臂等工业机器人仿真): 

1.1 USARSim-Unified System for Automation and Robot Simulation 

USARSim是一个基于虚拟竞技场引擎设计高保真多机器人环境仿真平台。主要针对地面机器人,可以被用于研究和教学,除此之外,USARSim是RoboCup救援虚拟机器人竞赛和虚拟制造自动化竞赛的基础平台。使用开放动力学引擎ODE(Open Dynamics Engine),支持三维的渲染和物理模拟,较高可配置性和可扩展性,与Player兼容,采用分层控制系统,开放接口结构模拟功能和工具框架模块。机器人控制可以通过虚拟脚本编程或网络连接使用UDP协议实现。被广泛应用于机器人仿真、训练军队新兵、消防及搜寻和营救任务的研究。机器人和环境可以通过第三方软件进行生成。软件遵循免费GPL条款,多平台支持可以安装并运行在Linux、Windows和MacOS操作系统上。 

"http://sourceforge.net/projects/usarsim/"  

1.2  Simbad

Simbad是基于Java3D的用于科研和教育目的多机器人仿真平台。主要专注于研究人员和编程人员热衷的多机器人系统中人工智能、机器学习和更多通用的人工智能算法一些简单的基本问题。它拥有可编程机器人控制器,可定制环境和自定义配置传感器模块等功能,采用3D虚拟传感技术,支持单或多机器人仿真,提供神经网络和进化算法等工具箱。软件开发容易,开源,基于GNU协议,不支持物理计算,可以运行在任何支持包含Java3D库的Java客户端系统上。 

"http://simbad.sourceforge.net/"  

1.3 Webots

Webots是一个具备建模、编程和仿真移动机器人开发平台,主要用于地面机器人仿真。用户可以在一个共享的环境中设计多种复杂的异构机器人,可以自定义环境大小,环境中所有物体的属性包括形状、颜色、文字、质量、功能等也都可由用户来进行自由配置,它使用ODE检测物体碰撞和模拟刚性结构的动力学特性,可以精确的模拟物体速度、惯性和摩擦力等物理属性。每个机器人可以装配大量可供选择的仿真传感器和驱动器,机器人的控制器可以通过内部集成化开发环境或者第三方开发环境进行编程,控制器程序可以用C,C++等编写,机器人每个行为都可以在真实世界中测试。支持大量机器人模型如khepera、pioneer2、aibo等,也可以导入自己定义的机器人。全球有超过750个高校和研究中心使用该仿真软件,但需要付费,支持各主流操作系统包括Linux, Windows和MacOS。 

"http://www.cyberbotics.com/"  

1.4 MRDS-Microsoft Robotics Developer Studio

MRDS是微软开发的一款基于Windows环境、网络化、基于服务框架结构的机器人控制仿真平台,使用PhysX物理引擎,是目前保真度最高的仿真引擎之一,主要针对学术、爱好者和商业开发,支持大量的机器人软硬件。MRDS是基于实时并发协调同步CCR(Concurrency and Coordination Runtime)和分布式软件服务DSS(Decentralized Software Services),进行异步并行任务管理并允许多种服务协调管理获得复杂的行为,提供可视化编程语言(VPL)和可视化仿真环境(VSE)[28,29]。支持主流的商业机器人,主要编程语言为C#,非商业应用免费,但只支持在Windows操作系统下进行开发。

"http://msdn.microsoft.com/zh-tw/library/bb648760.aspx"   

"http://msdn.microsoft.com/library/bb648760"   

"http://www.microsoft.com/en-us/download/details.aspx?id=29081"    

1.5 PSG-Player/Stage/Gazebo

PSG是由美国南加州大学 (USC)开发的一套针对机器人和传感器系统研究的免费平台,包含网络服务部分Player和机器人平台仿真部分Stage与Gazebo。Player定义了机器人和传感器与Stage和Gazebo通信接口,Stage是2D环境,提供基本碰撞检测和距离传感器模型但不支持物理仿真,Gazebo是3D环境使用ODE物理引擎。PSG提供声纳、激光扫描测距仪、碰撞检测和执行器等虚拟机器人设备,支持进行多机器人仿真。它是目前在研究和教学方面最流行的开源机器人仿真软件,开发的程序通过简单的修改甚至无需修改即可应用于实体机器人的控制,因此可以大大降低研究成本、缩减研究周期。大量的主要智能机器人期刊和会议发表的文章都使用PSG作为真实和模拟的仿真实验平台。免费软件,基于GNU协议,这款软件是在Unix系统上开发,只支持Linux和Mac OS。

"http://playerstage.sourceforge.net/"  

"http://www.gazebosim.org/"  

1.6  MissionLab

MissionLab是佐治亚理工学院 (Gatech)开发的一组功能强大的平台用于开发和测试单个或一组机器人行为。通过Missionlab生成的代码可以直接控制主流商用机器人,包括ARTV-Jr、iRobot、AmigoBot、Pioneer AT和MRV-2等。Missionlab最主要的优点在于它支持仿真和真实机器人同时实验。MissionLab是分布式体系结构,主要有六个核心组件:mlab、CfgEdit、cdl、cnl、HServer和CBRServer。使用CMDL和ODL作为开发配置语言。它起初是为DARPA开发用于研究在敌对环境多智能体机器人系统灵活反应控制,现已开源,仅支持Linux操作系统。

"http://www.cc.gatech.edu/aimosaic/robot-lab/research/MissionLab/"

1.7 MORSE-Modular OpenRobots Simulation Engine

MORSE是一款通用的多机器人仿真平台,主要特点是能控制实际仿真的自由度,可以自由设计符合自己需求的组件模型,运用Blender实时游戏引擎进行原始渲染,设计适合的体系结构,支持通用的网络接口。它提供了大量可配置的传感器和执行器模块,高度的可扩展性,提供人与机器人的交互仿真,使用Python编程,有丰富的文档并且易于安装但无法进行精确的动力学仿真,时钟同步能力性能较差,多机器人仿真时可能出现不同步情况。目前有5所学校和科研机构使用,开源软件,仅限于Linux和MacOSX操作系统。

"https://www.openrobots.org/wiki/morse/"

1.8 其他常用机器人仿真软件

ROS----"http://www.ros.org/"

V-Rep----"http://www.v-rep.eu/"

MRPT----"http://www.mrpt.org/"

空中机器人仿真模拟软件

Orbiter----"http://orbit.medphys.ucl.ac.uk/"

Flighntgear----"http://www.flightgear.org.cn/forum.php"

2 评价指标

为了从机器人研究者的角度去客观地评价这些仿真软件,需要制定统一的标准。本文的基于Alexander、Craighead、Michael等学者前期工作,确定了评估机器人仿真平台的通常标准:逼真度、可扩展性、开发简易性和成本,这四个标准可以用来判断任何一款虚拟机器人仿真软件,但对于多机器人系统而言,由于其分布式等特点,对网络化的要求也越来越高,因此网络功能也是一个不可缺少的重要指标。仿真软件按照这些标准被分为高中低三个层次。

2.1  逼真度

2.1.1 物理逼真度

物理逼真度是指物理环境的相貌、声音和感受逼近真实操作环境的程度。当一个仿真软件不能模拟操作环境的感受,它可以模拟环境视觉和听觉部分。Alexander证明研究效果可以被更高逼真度的仿真软件加强。以机器人操作为例,操作者一般是远离操作环境的,一个高逼真度的视觉和听觉仿真软件与操作真实机器人相比相差不大。通过每个仿真软件的视觉渲染和音频性能确定它们物理逼真度的等级。一个高物理逼真度的仿真软件可以渲染高分辨率纹理、材质、灯光、反射和凹凸贴图等。模型使用大量多边形,而不是使用纹理贴图作为几何建模主要部分。机器人的运动特性必须被正确显示。一个高物理逼真度的仿真软件还包括机器人和环境感觉的高度融合。一个中物理逼真度的仿真软件能够通过3D渲染环境,对于物体细节则没有要求。一个低物理逼真度的仿真软件只能通过2D渲染环境并没有声音。

2.1.2 功能逼真度

功能逼真度是指仿真中机器人行为逼近真实机器人执行任务操作环境和装备反应的程度。功能逼真度的首要目的就是指仿真软件使用者期望得到与真实装备相比相似的行为。通过比较物理特性仿真性能确定功能逼真度等级。高功能逼真度定位为仿真大部分作用在机器人和驱动器的力学特性包括重力、牵引力、电机或与其他物体机器人等碰撞产生的加速度都能精确显示,并能详细测量和记录状态信息用于分析。中功能逼真度包括机器人整体的动力学仿真,但无法对单个关节进行仿真。低功能逼真度是指软件不能仿真在机器人上的力学行为只能仿真速度和位置等运动学特性。

2.2 可扩展性

可扩展性是指仿真软件适应多种应用的能力。主要表现为仿真实验算法开发实现不能受限于仿真软件功能。包括是否可以较容易地增加和减少机器人,定制传感器和驱动器模块种类的多少,能否提供模块化的标准接口支持第三方软件开发,仿真程序应用与真实机器人的可移植性的好坏。

2.3 开发简易性

开发简易性是指使用仿真软件开发适用机器人的难易程度。包括环境与机器人配置的复杂程度,软件配置新装备的复杂程度,支持编程语言的种类,软件的开发文档的丰富性,通信接口配置的通用性。

2.4 成本

成本包括费用花费和时间花费。主要为初次安装和开发过程中必须消耗的时间、软件的价格等。如果软件是开源免费的并且安装使用简易则为低成本,软件免费但是安装使用复杂或软件付费但是安装使用简单定为中,软件购买昂贵并且安装使用需要一定经验定位为高。

2.5 网络功能

网络功能是分布式多机器人系统的一个重要组成部分,包括是否支持远程操作真实机器人,是否有完备的仿真机器人的网络接口和大型复杂场景的多终端联合调试仿真等。

3 仿真效果

可以参考视频录像

"http://i.youku.com/zhangrelay"

附:ROS入门资料书籍如下:

http://blog.csdn.net/ZhangRelay/article/category/6506865

 ubiquity-frontend-debconf,ubiquity-frontend-gtk,ubiquity-ubuntu-artwork,ubiquity

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏量子位

当一盆植物在MIT成了精,不,它只是成了机器人

这些伶俐的反应,被MIT和Parsons设计学院的研究人员地利用起来,才有了机器人 x 植物这样优雅的存在。

12640
来自专栏ATYUN订阅号

谷歌教机器人通过与环境的交互来识别物体

谷歌希望使AI系统至少在对象识别和感知方面,能像儿童那样思考。在论文“Grasp2Vec: Learning Object Representations fr...

10720
来自专栏大数据文摘

学界 | 伯克利最新:基于视觉模型强化学习的通用机器人

有时候,只要看一眼,有些天分的人就能进行模仿。用学术一点的话说就是:只需少量的明确监督和反馈,人类就可以通过简单的交互和对世界的生理感知,来学习各种运动技能。

16720
来自专栏大数据文摘

业界 | 大乌龙,俄罗斯最先进的机器人里头竟然是个小伙子

动动退,扭扭腰~~~你看现在的机器人多么自然,是不是边上的主持人和它比起来更像机器人。

9230
来自专栏钱塘大数据

2018年智能机器人研究报告发布(附PDF)

近二十年来,互联网的发展带动了一系列网络延展科技的发展,给人们的生活带来了翻天覆地的变化。未来互联网将向物联网发展,而在物联网的时代,RT(Robotics T...

24710
来自专栏AI研习社

明晚20点大讲堂 | 面向实际应用的欠驱动机械手设计

机械手作为机器人的末端执行器,对机器人实际的操作和抓取性能有着决定性作用。实际上,集成在机器人上承担真实环境操作任务的机械手和实验室环境的机械手在设计和功能上的...

14140
来自专栏华章科技

机器人行走背后的机械原理动画,一文看透

导读:波士顿动力机器人Atlas如今已经能跑能跳,还能躲避障碍。人形机器人一直是AI行业的研发热点,如果想让人形机器人动起来,就得先了解一下动作背后的机械原理。

23430
来自专栏大数据文摘

快讯 | 日本这家全是机器人的咖啡馆,给残疾人创造了新岗位

机器将大规模抢走人类工作岗位的言论在日常生活中并不少见。所以目前来说,人与机器平等的相处的想法似乎只存在于科幻小说中。毕竟,这个时代,人与自然都不能和谐的相处,...

10730
来自专栏量子位

亚马逊自动化仓库事故,机器人失手戳破有毒喷雾,24名工人被送医院

昨晚(12月5日),亚马逊自动化仓库发生机器人事故,造成24名员工直接受伤被送医院,1名员工进重症监护室,50多名员工受影响。

9830
来自专栏AI科技评论

大讲堂 | 面向实际应用的欠驱动机械手设计

机械手作为机器人的末端执行器,对机器人实际的操作和抓取性能有着决定性作用。实际上,集成在机器人上承担真实环境操作任务的机械手和实验室环境的机械手在设计和功能上的...

10130

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励