你知道市面上的机器人都采用了哪些操作系统吗?

  估计大多数人给出的答案就是 Android 了。从市面上的产品来看,基于 Android 系统开发的机器人确实是主流,但是还有一种操作系统却鲜为人知,它叫 ROS(机器人操作系统,Robot Operating System),是专门为机器人设计的一套开源操作系统,时至今日已经诞生八年时间了。

  ROS 究竟为何物?

  ROS 的前身是斯坦福人工智能实验室为了支持 STAIR(斯坦福大学人工智能机器人项目)而建立的交换庭(Switchyard)项目。要了解 ROS 的发展历程,则要从 2007 年开始谈起。

  当时,Morgan Quigley,Eric Berger 和 Andrew Ng 发布了一纸有关 STAIR 的论文,该文件讲述的就是用 Switchyard 可以在各软件程序之间传递信息,进而帮助机器人有效的完成一些复杂的任务。起初,这个项目是斯坦福大学和机器人技术公司 Willow Garage 的个人机器人项目(Personal Robots Program)合作进行的,2008 年后完全由这家公司推广。到 2009 年,相关文件提到 Switchyard 可以让机器人编译模块化,而且不需要重新设计框架,ROS 操作系统也就随之问世了。

  2012 年,ROS 团队从 Willow Garage 独立出来,并且成立了一个非盈利组织(OSRF)。经过这几年的发展,ROS 从最初的无人问津的小众操作系统,到现在已是主流的机器人操作系统之一。

  根据市场调查,目前已经有很多机器人公司采用了 ROS 系统来开发一些应用于全新市场的产品,如 ClearPath,Rethink,Unbounded,Neurala,Blue River,最典型的就是 Willow Garage 的 PR2 机器人。还有数据显示,仅 2015 年,相关风险投资机构就在基于 ROS 操作系统的机器人公司投资了超过 1.5 亿美元。

  除此之外,还有不少大型公司开始注意到了这个操作系统,例如,Nvidia、博世、高通、英特尔、宝马以及大疆等。

  当然,ROS 要普及离不开开发者的支持。据不完全统计,今年 5 月全球共有 70000 多个独立 IP 下载了 900 万次 ROS 程序包。另外,在 ROS 开发者社区里面的 1840 位成员一共写出了 1000 万行代码。

  ROS 有何特点?

  事实上,ROS 和 Android 一样是开源的,功能上也是相差无几,它可以提供硬件抽象,底层设备控制,常用功能实现,进程间消息以及数据包管理。其独特之处在于,能够支持多种语言,如C++、Python、Octave 和 LISP,甚至支持多种语言混合使用,这可以简化开发者的工作。因为它是基于 Linux 的系统,其可靠性也会更高,体积可以做到更小,适合嵌入式设备。

  另外,ROS 是一种分布式处理框架,开发者可以单独设计可执行文件。不同节点的进程能接收、发布各种信息(例如传感,控制,状态,规划等等)。

  但是就目前来看,在业界公认的机器人三大操作系统——Ubuntu,Android 和 ROS 中 ,就目前来看,使用 Android 操作系统的企业居多。

http://news.cnblogs.com/n/534695/

机器人操作系统 除了Android还有一个ROS(转)的更多相关文章

  1. 机器人操作系统ROS | 简介篇

    同样,从个人微信公众号Nao(ID:qRobotics)搬运. 前言 先放一个ROS Industrial一周年剪辑视频. ROS已经发布八周年了,在国外科研机构中非常受欢迎.目前,以美国西南研究院为 ...

  2. 快速了解 Robot Operating System(ROS) 机器人操作系统

     http://www.ros.org/ 关于ROS About ROS http://www.ros.org/about-ros/ 机器人操作系统(ROS)是用于编写机器人软件的灵活框架.目的在简化 ...

  3. ROSCon 2016视频和幻灯片发布 ROS机器人操作系统重要参考资料

    ROSCon 2016视频和幻灯片发布 By Tully Foote on 十月19,2016 7:28 AM 全部PPT下载地址:http://pan.baidu.com/s/1gf2sn2F RO ...

  4. ROS(indigo)机器人操作系统学习有趣丰富的Gazebo仿真示例evarobot

    一直在寻找一个示例可以将ROS学习中常用的基础内容大部分都包含进去,最好还包括Gazebo仿真, 这样即使没有硬件设备,也可以很好的学习ROS相关内容,但又必须有对应的硬件,便于后续研究. 这里,介绍 ...

  5. ROS(indigo)机器人操作系统学习资料和常用功能包汇总整理(ubuntu14.04LTS)

    ROS(indigo)机器人操作系统学习资料和常用功能包汇总整理(ubuntu14.04LTS) 1. 网站资源: ROSwiki官网:http://wiki.ros.org/cn GitHub    ...

  6. 机器人操作系统——ROS,Robot Operating System

    Note:偶然看到的滴滴研究院的无人驾驶竞赛,了解一下. ROS:专为机器人软件开发所设计出来的一套电脑操作系统架构.是一个开源的元级操作系统(后操作系统),提供类似操作系统的服务,包括硬件抽象描述. ...

  7. ROS机器人操作系统相关书籍、资料和学习路径

    作者:Top Liu链接:https://zhuanlan.zhihu.com/p/30391098来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 本文是易科机器人实验 ...

  8. 机器人操作系统(ROS)教程4:ROS的框架【转】

    转自:http://www.arduino.cn/thread-11351-1-1.html 在进行ROS的代码开发前,有必要了解一些ROS的概念.首先,ROS的系统代码分为两部分:main和univ ...

  9. 【2017.10.13 ROS机器人操作系统】ROS系统常用术语及资源

    ROS机器人操作系统是一种后操作系统,提供了类似于软件开发中使用到的中间件的功能. ROS: Robot Operating System 机器人操作系统 Package: 功能包 Stack: 功能 ...

随机推荐

  1. listary文件查找程序下载和使用

    资源:PHP开发学习门户网站 地址:http://bbs.phpthinking.com/forum.php?mod=viewthread&tid=173 Listary 是一款有用的国产Wi ...

  2. 重新想象 Windows 8 Store Apps (5) - 控件之集合控件: ComboBox, ListBox, FlipView, ItemsControl, ItemsPresenter

    原文:重新想象 Windows 8 Store Apps (5) - 控件之集合控件: ComboBox, ListBox, FlipView, ItemsControl, ItemsPresente ...

  3. Java 并发专题 :闭锁 CountDownLatch 之一家人一起吃个饭

    最近一直整并发这块东西,顺便写点Java并发的例子,给大家做个分享,也强化下自己记忆. 每天起早贪黑的上班,父母每天也要上班,话说今天定了个饭店,一家人一起吃个饭,通知大家下班去饭店集合.假设:3个人 ...

  4. [cocos2dx笔记008]cocos2d 用luabridge手动绑定类

    基于cocos2dx 2.2.2版本号.这几天使用了cocostudio实现了,动画.骨骼动画.UI编辑.粒子效果,尽管有些不足,但已经算是很好了.今天尝试用lua.这个很easy.创建的时候.设置语 ...

  5. 记View跨界平局

    <?xml version="1.0" encoding="utf-8"? > <RelativeLayout xmlns:android=& ...

  6. 图解Http协议 (转)

    一.技术基石及概述 问:什么是HTTP? 答:HTTP是一个客户端和服务器端请求和响应的标准TCP.其实建立在TCP之上的. 当我们打开百度网页时,是这样的: https://www.baidu.co ...

  7. 【SICP读书笔记(四)】练习2.27 --- 表序列reverse的扩展:树结构的deep-reverse

    题目要求是,修改练习2.18所做的reverse过程,得到一个deep-reverse过程.它以一个表为参数,返回另一个表作为值,结果表中的元素反转过来,其中的子树也反转. 例如: (define x ...

  8. Copy-and-swap

    为了在自己定义类里重载一个异常安全(exception safe)的赋值操作符.创造了一个这种习惯用语.也叫:Create-Temporary-and-Swap. 要想写健壮的C++代码.异常安全很重 ...

  9. kernel 于ioctl申请书

    ioctl经营无纸装置频繁使用的类型.同时这是一个非常实用的方法进程调试. 这里正在进行wdt该文章继续 static long at91_wdt_ioctl(struct file *file, u ...

  10. 使用HTML5 Canvas做些什么

    百分比圆环进度条   // ----------------------------------------------------------- 柱状排行榜统计图   // ------------ ...