主流机器人软件开发平台评测
时间:02-23
来源:互联网
点击:
前言:当前方兴未艾的机器人市场上流行的有10种软件开发平台,其中9款支持Linux。这篇文章评测了其中的7款。不过这不是对它们的市场走向预测,而是向大家展示机器人软件的未来前景。 请慢用!
(译者注:在ROBOTDIY上看到这篇文章[英文原版]很不错,但是是英文的,觉得这样的文章应该给更多的爱好者分享,所以就给译了。本人非外语专业,机器人专业知识又浅薄,所以大家权且凑合着看。希望多多指正,分享交流。)
作者:Michael Somby 译者:韦文潮
导言
本文对目前现役实用机器人的软件开发平台进行整体的评测。其中的主要内容是根据本人对这些平台的实际使用经验编写的。
什么是机器人软件开发平台?
所谓的“机器人软件开发平台”我们指的是用来给多种机器人设备开发程序的软件包。它一般包括下列内容:
* 统一的编程环境
* 统一的编译执行环境
* 可重用的组建库
* 完备的调试/仿真环境
* 对多种机器人硬件设备的“驱动”程序支持
* 通用的常用功能控制组件,例如计算机视觉技术、导航技术和机械手臂控制等。
大家可以看到,一个机器人软件开发平台需要包含很多东西。就我本人的观点,现在还没有一个现有的产品能满足所有的要求。它们总是或多或少的缺了什么东西。
机器人软件平台
为什么要使用机器人软件开发平台?
机器人控制软件的花费在整个机器人应用系统预算中占据了很大比例。比如,一个自动控制项目的80%工作量都集中在系统集成方面,包括软件的发开和定制。所以机器人开发平台的作用就是减少软件工程师的工作量,同时减少项目开支。
除了软件工程的问题外,在一个真正的机器人项目中还要涉及大量的人工智能。一个集成了许多现成的、可靠的组件库的统一软件开发平台,在应付各种机器人工程时能帮上大忙。
最后的问题是“行为协作”。许多文献中都有对行为协作的讨论。正因为这是一个普遍存在的问题,所以一些平台提供了统一的解决方案。
应用功能测评
Evolution Robotics's ERSP
Evolution Robotics是一个集设计和销售机器人软硬件的开发平台,简称ERSP。整个软件非常成熟。它集成了视觉识别系统(VIRP)和视觉导航绘图系统(VSLAM)。它所用的视觉系统是基于David Lowe开发的算法(已注册专利)。
平台提供了可视化的编程环境工具,通过搭建图标来构建程序。
可视化编程界面
系统通过运行时的“任务”程序来激活或停止“行为”组件。系统不支持仿真。它在Windows 和Linux下运行.
Microsoft Robotics Studio
微软最近成立了专门的团队开发机器人软件平台,产品叫做Microsoft Robotics Studio(MSRS)。它能在Windows和Windows CE下运行。分布运行的开发环境承担了大部分的信息传递和线程管理任务。它的行为协作基于“服务优先级”的概念。它提供了完备的仿真和图形化开发环境。
可视化编程界面
仿真环境
在微软大旗的感召下,越来越多的机器人设备厂商宣布支持MSRS。(不知道在这个领域会不会出现WINDOWS的局面?不过我想应该不会,根据我的经验,在涉及程序开发这个领域微软的感召力仅局限与WINDOWS平台,根据他们公司的一贯作风来看,应该是不会做包打天下的产品的。译者注)
OROCOS
OROCOS是一个开源的控件库。这些控件主要用于高级运动控制和机器人控制。它自己带有一个针对实时运行环境优化了的开发平台。该环境使用“锁无关缓冲区”技术,满足应用程序对实时性严格的要求。
OROCOS体系
OROCOS提供一系列可重用组件和硬件驱动。独立的运动学与动力学开发框架能让用户进行物理运动学的建模和计算。应用的领域有机器人、人体工程、计算机动画、工业机械建模等。
该系统没有统一的图形化编程环境或者仿真环境。
(译者注:在ROBOTDIY上看到这篇文章[英文原版]很不错,但是是英文的,觉得这样的文章应该给更多的爱好者分享,所以就给译了。本人非外语专业,机器人专业知识又浅薄,所以大家权且凑合着看。希望多多指正,分享交流。)
作者:Michael Somby 译者:韦文潮
导言
本文对目前现役实用机器人的软件开发平台进行整体的评测。其中的主要内容是根据本人对这些平台的实际使用经验编写的。
什么是机器人软件开发平台?
所谓的“机器人软件开发平台”我们指的是用来给多种机器人设备开发程序的软件包。它一般包括下列内容:
* 统一的编程环境
* 统一的编译执行环境
* 可重用的组建库
* 完备的调试/仿真环境
* 对多种机器人硬件设备的“驱动”程序支持
* 通用的常用功能控制组件,例如计算机视觉技术、导航技术和机械手臂控制等。
大家可以看到,一个机器人软件开发平台需要包含很多东西。就我本人的观点,现在还没有一个现有的产品能满足所有的要求。它们总是或多或少的缺了什么东西。
机器人软件平台
平台名称 | 所属类型 | |
Evolution Robotics ERSP | 平台 | 商用 |
Microsoft Robotics Studio | 平台 | 非商业用途免费 |
OROCOS | 控件库 | 开源且免费 |
Skilligent | 机器学习插件 | 商用 |
URBI | 平台 | 商用 |
Webots | 仿真环境 | 商用 |
Player, Stage, Gazebo | 平台 | 开源且免费 |
iRobot AWARE | 平台 | 商用 |
OpenJAUS | 平台 | 开源 |
CLARAty | 平台 | 开源 |
为什么要使用机器人软件开发平台?
机器人控制软件的花费在整个机器人应用系统预算中占据了很大比例。比如,一个自动控制项目的80%工作量都集中在系统集成方面,包括软件的发开和定制。所以机器人开发平台的作用就是减少软件工程师的工作量,同时减少项目开支。
除了软件工程的问题外,在一个真正的机器人项目中还要涉及大量的人工智能。一个集成了许多现成的、可靠的组件库的统一软件开发平台,在应付各种机器人工程时能帮上大忙。
最后的问题是“行为协作”。许多文献中都有对行为协作的讨论。正因为这是一个普遍存在的问题,所以一些平台提供了统一的解决方案。
应用功能测评
Evolution | Microsoft | OROCOS | Skilligent | URBI | Webots | Player, Stage, Gazebo | |
开源 | 否 | 否 | 是 | 否 | 否 | 否 | 是 |
免费 | 否 | 非商业用途 | 是 | 否 | 否 | 否 | 是 |
支持Windows | 是 | 是 | 否 | 是 | 是 | 是 | 是(仿真) |
支持Linux | 是 | 否 | 是 | 是 | 是 | 是 | 是 |
分布式环境 | 否 | 是 | 否 | 是 | 是 | | 是(有限的) |
行为协作 | 是 | 是 | 否 | 是 | 是 | 否 | 否 |
内置机械手臂控制模块 | 否 | 否 | 是 | 是 | 否 | 否 | 否 |
内置物体识别模块 | 是 | 否 | 否 | 是 | 否 | 否 | 否 |
内置导航模块 | 是 | 否 | 否 | 是 | 否 | 否 | 否 |
学习工具 | 否 | 否 | 否 | 是 | 否 | 否 | 否 |
仿真环境 | 否 | 是 | 否 | 否 | 是 (Webots) | 是 | 是 |
硬件支持范围 | 小 | 大 | 中 | 中 | 大 | 大 | 中 |
可重用自定义组件 | 是 | 是 | 是 | Not applcbl | 是 | 否 | 否 |
实时系统 | 否 | 否 | 是 | 否 | 否 | 否 | 否 |
Evolution Robotics's ERSP
Evolution Robotics是一个集设计和销售机器人软硬件的开发平台,简称ERSP。整个软件非常成熟。它集成了视觉识别系统(VIRP)和视觉导航绘图系统(VSLAM)。它所用的视觉系统是基于David Lowe开发的算法(已注册专利)。
平台提供了可视化的编程环境工具,通过搭建图标来构建程序。
可视化编程界面
系统通过运行时的“任务”程序来激活或停止“行为”组件。系统不支持仿真。它在Windows 和Linux下运行.
Microsoft Robotics Studio
微软最近成立了专门的团队开发机器人软件平台,产品叫做Microsoft Robotics Studio(MSRS)。它能在Windows和Windows CE下运行。分布运行的开发环境承担了大部分的信息传递和线程管理任务。它的行为协作基于“服务优先级”的概念。它提供了完备的仿真和图形化开发环境。
可视化编程界面
仿真环境
在微软大旗的感召下,越来越多的机器人设备厂商宣布支持MSRS。(不知道在这个领域会不会出现WINDOWS的局面?不过我想应该不会,根据我的经验,在涉及程序开发这个领域微软的感召力仅局限与WINDOWS平台,根据他们公司的一贯作风来看,应该是不会做包打天下的产品的。译者注)
OROCOS
OROCOS是一个开源的控件库。这些控件主要用于高级运动控制和机器人控制。它自己带有一个针对实时运行环境优化了的开发平台。该环境使用“锁无关缓冲区”技术,满足应用程序对实时性严格的要求。
OROCOS体系
OROCOS提供一系列可重用组件和硬件驱动。独立的运动学与动力学开发框架能让用户进行物理运动学的建模和计算。应用的领域有机器人、人体工程、计算机动画、工业机械建模等。
该系统没有统一的图形化编程环境或者仿真环境。
- 基于MSP430的自主式移动机器人设计与实现(06-12)
- 如何制作一个最简单的机器人(02-23)
- 机器人技术的新进展(02-23)
- CAN总线技术在工业码垛机器人控制系统中的应用研究(06-27)
- 制作机器人常用传感器盘点(02-23)
- 基于LabVIEW构建智能的移动机器人及无人驾驶车(10-27)