机器人操作系统是为机器人标准化设计而构造的软件平台,它使得每一位机器人设计师都可以使用同样的平台来进行机器人软件开发。标准的机器人操作系统包括硬件抽象、底层设备控制、常用功能实现、进程间消息以及数据包管理等功能,一般而言可分为低层操作系统层和用户群贡献的机器人实现不同功能的各种软件包。
可以毫不夸张地说,现有的机器人操作系统架构基本都是源自于linux,微软机器人开发团队2007年也曾推出过一款“Windows版”机器人OS;安卓是谷歌开发的一款开源软件平台,目前在全球智能手机领域以超80%的市占率傲视对手苹果封闭的iOS系统。然而如今业内公认的主流机器人操作系统无非只有以下几种,且都是依托于linux内核构建起来的。
Ubuntu操作系统
Ubuntu由全球化的专业开发团队CanonicalLtd打造,基于DebianGNU/Linux开发,同时也支持x86、amd64/x64和ppc架构。Ubuntu的初衷是作为Debian的一个测试平台,向其提供通过测试的稳定软件,并且希望Ubuntu中的软件可以很好地与Debian兼容。由于它的易用性,而且获得众多社区的支持,Ubuntu发展成了一款不错且流行的Linux发行版本。
Ubuntu拥有庞大的社区群支持它的开发,用户可以及时获得技术支持,软件更新快,系统运行稳定。Ubuntu所有系统相关的任务均需使用Sudo指令是它的一大特色,这种方式比传统的以系统管理员账号进行管理工作的方式更为安全,这也是Linux、Unix系统的基本思维之一。
随着物联网设备的风行,2015年Ubuntu首度推出了一个专门针对物联网设备设计的新SnappyUbuntuCore,整合了更多云端和虚拟技术,并宣称能够在无人机、机器人上更顺畅地运行。
在众多开源桌面操作系统中,无论是性能还是界面Ubuntu都被公认为是最优秀的。
Android操作系统
Android系统对于我们来说已经是相当熟悉的“玩伴”了,平常在手机上见得多,其实在机器人领域它也是主流的操作系统,软银的Pepper机器人便是使用的Android系统。由于Android在应用程序的审核上相对宽松,因此目前来说使用Android系统开发智能机器人的企业要占绝大比例。
ROS--专为机器人设计的操作系统
ROS为何物?ROS是Robot Operating System的缩写,是专门为机器人设计的一套开源操作系统,2007年斯坦福大学人工智能实验室与机器人技术公司WillowGarage针对其个人机器人项目开发了ROS的雏形。经过这几年的发展,ROS从最初的无人问津的小众操作系统,到现在已是主流的机器人操作系统之一。
ROS充当的是通信中间件的角色,即在已有操作系统的基础上搭建了一整套针对机器人系统的实现框架。ROS还提供一组实用工具和软件库,用于维护、构建、编写和执行可用于多个计算平台的软件代码。
值得一提的是,ROS的设计者考虑到各开发者使用的开发语言不同,因此ROS的开发语言独立,支持C,Python等多种开发语言。
根据市场调查,目前已经有很多机器人公司采用了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的系统结构设计也颇有特色,ROS运行时是由多个松耦合的进程组成,每个进程ROS称之为节点(Node),所有节点可以运行在一个处理器上,也可以分布式运行在多个处理器上。在实际使用时,这种松耦合的结构设计可以让开发者根据机器人所需功能灵活添加各个功能模块。
另外,ROS是一种分布式处理框架,开发者可以单独设计可执行文件。不同节点的进程能接收、发布各种信息(例如传感,控制,状态,规划等等)。
但是就目前来看,在业界公认的机器人三大操作系统——Ubuntu,Android和ROS中,使用Android操作系统的企业居多。
介绍完上述3家老牌的业界公认的机器人三大操作系统后,我们再来看看下面3家国内力捧的后起之秀,丝毫也不逊色:
在国内,做智能机器人产品的数不胜数,但敢做并且有实力做智能机器人操作系统的,屈指可数,小i是一家,图灵机器人则是另外一家,还有一家是不久前刚刚宣布获得高达1亿美元A轮融资(中国人工智能机器人领域最高的一笔A轮融资)的北京智能管家科技有限公司ROOBO。
(1) 图灵机器人操作系统TuringOS
机器人操作系统Turing OS于2015年11月正式面世,在这次发布会上,图灵机器人CEO俞志晨正式对外介绍了这一产品。作为首个人工智能级机器人操作系统,2015年11月,图灵机器人发布了他们的人工智能机器人专属操作系统TuringOS,基本上也是国内首个智能机器人操作系统。这款机器人操作系统不仅能模仿人类的感情和思维,更重要的是,可以实现自主学习升级,真正践行了“人工智能”四个字。目前,除了哆啦A梦和乐迪,还有7-8款机器人产品搭载了Turing OS,正在研发,也将会在逐渐面向市场。
以往提到机器人操作系统,很多人会想到ROS,但它并不适用于家庭服务类场景。而Turing OS机器人操作系统,可以说是为家庭场景而生。目前,升级后的Turing OS1.5版本,已搭载40余款围绕家庭场景的官方应用,并正式引入了多家第三方开发,这些应用覆盖了家庭场景的大部分需求。
Turing OS与windows、安卓的区别,创始人俞志晨认为有三方面:
第一,场景。windows主要用在桌面电脑、PC,安卓主要用在智能手机,Turing OS主要用在智能机器人上面。这是关于使用场景和硬件载体。
第二,交互模式。PC更多是通过键盘、鼠标的方式去跟人互动,安卓更多是通过多点触摸的方式跟智能手机互动。机器人有很大的不同,电脑、手机至少有一个屏幕,但是很多时候机器人都没有屏幕,机器人最主要的交互方式是以多模态方式去跟人互动,图灵在上一次发布会也提出了机器人多模态交互概念。
第三,应用场景。作为一个终端载体,通过不同的硬件、系统,以及交互方式,基于此产生的应用完全不一样,无论是PC还是手机都有自己的一套应用体系。
可以说,TuringOS基于对人类宏观思维模式及微观思维模式的研究,为机器人研发了一套强大的思维强化引擎,让机器人具备多种宏观及微观思维模式,从而获得人类思维能力。据悉,目前搭载TuringOS的机器人在思维强化引擎的作用下,思维能力已达到4~5岁儿童水平。
(2)小i机器人云操作系统iBotOS
小i机器人相信从事机器人行业的朋友都不陌生,这可是咱们国家力捧的“智能机器人客服中国第一品牌”,看看它的客户群体你就知道人家有多牛。
除了Nao和Ina这两个大家耳熟能详的智能机器人产品外,小i在操作系统上一样下了不少功夫:
iBot OS是由小i机器人自主研发的智能机器人云操作系统——iBotOS,采用离线和在线相结合的服务模式,是全球首款采用“云 端”的智能机器人操作系统。能够帮助普通机器人和硬件设备实现深度学习的智能人机交互能力,使其具备智能感知能力、智能认知能力、智能协作能力、逻辑分析能力、自主学习能力和情感表达能力。
iBot OS具备全面的跨平台性和强大的硬件适配能力,“Lite版本”为单片机等嵌入式系统提供支持功能,可运行于低成本低主频的嵌入式硬件内,为硬件增加智能处理能力,同时也兼容x86和Arm等主流硬件平台,能够桥接ROS、Linux、Windows和Android等各种操作系统。
(3)ROOBO人工智能机器人系统
9月21日,中国人工智能创业公司ROOBO一口气发布了ROOBO人工智能机器人系统,还有DOMGY智能宠物机器人等一大波令人眼花缭乱的机器人新品。
ROOBO的智能机器人系统主打交互最短路径、交互主动性,以及带有情感的交互,使得机器具备人的智能,能够与人进行有感情、有思想的交流。可以说是重新定义了机器人时代人机交互的方式。
那ROOBO的机器人操作系统与Turing OS有何区别?
在ROOBO总裁尹方鸣看来,ROOBO机器人系统专注于提供解决方案,偏向底层,这个机器人系统标准化了开发接口,从而帮助创业团队更好更快地将智能硬件从创意实现为产品。而图灵OS主要集中在APP层和UI层,同时加入场景化的东西,更贴近用户。
为了提供完整的底层解决方案,ROOBO还发布了一颗商业化量产的Asic DNN语音识别芯片,这颗芯片将会是第一个应用到机器人上的人工智能芯片。据介绍,这颗人工智能芯片能够为智能机器人补上“大脑”及音视频传感终端,采用本地的神经网络数据处理能够降低产品对于网络的依赖,提升机器人响应及控制速度,实现更优的产品效果。阅读原文
总结