ROS, 55家以上世界级企业使用的机器人系统
ROS industrial consortium 成员
本篇文章将告诉大家,ROS到底是一个什么样的系统。
机器人的发展历史可回朔到 1950年代,美国人 George Devol 首先提出了工业机器人的概念。此后的 20 年,机器人的发展便进入了一个黄金时代。
1966-1972机器人 Shakey
上图的机器人为美国斯坦福国际研究所研制的机器人。它本身带有视觉传感器,并且能根据人类所下达的指令,发现并抓取积木。虽然当时控制它的计算机跟一间普通的房间一样大,却也是一台能够感知外部信息的机器人了。
会特别介绍 Shakey 的原因,是在这之后的数十年,机器人的研发就进入了一个相对冷淡时期,随后各国争相发表的机器人,其功能皆与 Shakey 机器人大同小异。
一直到了 2007 年,Willow Garage 公司组织有感于机器人的研发进度缓慢,推测主要原因在于每个公司或企业所研发的机器人,其系统皆为封闭式,说白一点便是每个公司研发的机器人系统与技术,皆无法与其他人共享。
世界机器人研发进度缓慢原因之一
因此 Willow Garage 公司便开发出了「机器人操作系统 (Robot Operating System)」 , 期盼让世界上的机器人开发者,都能够使用这套系统来开发机器人,以便加快世界整体的机器人研发进度。也因为怀抱这远大的梦想,因此 Willow Garage 便让 ROS系统成为一个开源的系统,让世界所有人都可以使用 ROS系统,进行研究、开发,甚至是商业的活动。
为了让世界所有人都可以使用 ROS 系统开发机器人,并且互相分享相关的技术与资源,Willow Garage 公司便让 ROS系统拥有以下的特点:
1. 可用于绝大部分的活动,如研究、开发、教育甚至是商业活动。因为ROS系统采用的是 BSD 授权条款。
2. 拥有众多的可视化工具协助,让开发者可以不必再只透过一长串的英文字母,去一一检查问题的发生原因。
3. 方便的通讯架构让不同机器间的通讯使用较为便利,使得一般民众也能够快速地上手远程传输与遥控等远程通信功能。ROS的通讯架构采用的是 TCP / IP 通讯架构( 也就是一般人常使用的 IP位置 )。
4. 可使用多种程序语言进行开发,让开发者能够使用自己熟悉的语言开发机器人。目前可支持的程序语言有:C++、Python、java、lisp ……等。
5. 统一的数据格式,让使用不同程序语言开发的人员,能够快速地分享彼此的技术与讯息。比如说 1号人员使用 C++ 来撰写影像辨识的程序代码,则2号人员可以利用 python ,直接使用 1 号人员的影像辨识成果。这加快了1号人员与2号人员之间的技术与信息交流。
经由上述几点的特性,让 ROS 系统快速地在世界各地发芽茁壮。根据 ROS指标报告 ,从2011 年统计开始,直到2018年7月为止,每年访问 ROS 官方网站的人数成长率,皆有21% 以上;其余如 ROS系统下载数、ROS问答数、ROS的 package 下载数,年增长率也都拥有15 % 以上的数据。
除此之外,在世界工业界领域里,也成立了使用 ROS 系统解决工业问题的组织: ROS industrial consortium 。
而微软也在 2018年时加入了 ROS industrial consortium,并且宣布 ROS 也将可在win 10 系统上使用 ,相信这将会让更多人开始使用 ROS系统。
由此可见,ROS系统在世界上,的确是越来越多人知道,并且开始使用来开发机器人!
ROS移动平台霹雳车