作者 高焕堂 台湾地区VR工业联盟主席、厦门VR/AR协会荣誉会长兼总参谋
除了制作机器人产品之外,发明多台机器人的协同协作,也是很风趣的、具有商业价值的。就好像花卉,咱们纷歧定要自己当农民种花卉,其实开花店、插花、卖捧花或花束等,或许更画中有诗、美不胜收呢。
1 立异组合:多机器人的协同开发
咱们都知道,现在最盛行的手机是根据Android操作体系的手机。现在商场占有率大约高达 80%了。此外,Android是采纳Apache软件授权方法的开源软件,成为人人能够免费运用及自行修正的软件渠道体系。
UBOT的全名是:UBOTeam(Unified Framework for Robot Team)。它是高焕堂团队根据Android渠道的扩大,而成为机器人的同享编程环境及整合运转渠道。它逐步开展成为AIoT的同享程序开发及整合履行渠道。UBOT的上层是App(供给用户接口),而UBOT的基层是插件(Plugin)来促进机器人硬设备的客制化特性。而UBOT则是坐落中间层的软件结构(Framework),它是开源的软件体系(图1)。
当第三方开发者根据UBOT而开宣布上层App时,开发者能够自行决定其App是否开源或闭源,亦即该App能够不开源。同样地,当开发者根据UBOT而开宣布连接到硬设备的客制化插件(Plugin)时,仍由其开发者自行决定该插件程序是否开源或闭源,亦即该插件程序能够不开源。
如上所述,在UBOT里,其运用结构(App Framework)层是开源的,开发者能够将它汇入到Android Studio开发环境里运用,所以就能够运用您现已了解的Android SDK来开发多机器人的立异整合运用了,而不用花费心力于各机器人厂家的不同SDK,无论是学习或开发都会愈加事半功倍了。
因为在开发多机器人的整合运用时,各机器人产品往往来自不同的厂商,各厂商也常推出针对自己产品的SDK(即 App开发环境)。此刻,开发者面对多个SDK,各自独立、不能兼容,就会遭受开发作业的复杂性,变得困难重重了。
其化解之道是:咱们选用同一种SDK。在本文里,笔者主张选用Android SDK,让咱们都能运用多数人现已了解的Android Studio来进行App的开发作业,就能够省去学习各厂商SDK的时刻和担负了。
例如,一旦您运用Android Studio + UBOT(如蓝牙模块)开宣布来一支针对Ironbot机器人的App,若想继续整合另一厂牌的Dobot机器人时,就不用再花时刻学习Android Studio和UBOT了,直接着手开发约20%产品定制化的部分程序代码即可了,例如不同厂牌(或类型)的机器人,其传递信息的格局(Format)大多不相同,这就所谓的定制化部分。
以此类推,假如想继续整合更多个(不同厂牌)的机器人时,相同的不用花时刻学习新的SDK,而敏捷着手开发约20%产品定制化的部分程序代码即可。因此,学生的学习功率提高了,学习决心也提高了。
2 整合通讯:以蓝牙技能为例
蓝牙设备能以固定的周期继续发送播送,手机端App扫描(接纳)到播送后,解析播送包,然后可进行对设备的辨认、配对、联机和数据读写等。所以,您的手机就能扫描到周边的蓝牙设备所宣布的蓝牙信号了。接下来,就能进一步与这些设备树立联机(Connection),才能对这些设备进行信息传递,例如从BLE设备读取信息或把信息写到BLE设备里,这些信息就包含了控制指令及相关的参数等。
在Android手机里的软件结构里(图2),由myActivity模块供给UI画面,例如让用户随机选取一个RGB色彩,并根据该设备所能承受的信息格局,传递给myFacade去进行信息传送的使命。此刻,myFacade会经过Session来将信息传送给BLEMessage,再转送给IronbotBLEMsg。
这IronbotBLEMsg接到从myFacade传来的消息之后,就存入行列(Queue)里,然后根据先后顺序,逐个从行列里取出消息传送给Android的BLE模块,然后以无线方法传送给蓝牙设备,此刻履带车上的LED灯的色彩就改变了。
3 AI赋能:运用语音AI的多机协同协作
借助于UBOT/BLE结构的高度扩大才能,手机里的UBOT/BLE模块更能同步发送蓝牙消息给多台机器人(如手臂和履带车),顺畅指挥多机的协同协作,打开团队举动。
例如下图里(如图3),让Zenbo透过WiFi来与UBOT手机通讯。这样能够充分发挥Zenbo的AI语音功用,担任迎宾服务者的人物。
从图3里,能够看到人们经过语音AI来和Zenbo机器人(图3左上角)对话,然后Zenbo没有手,就拿Dobot手臂(图3右下角)来调配起来,便能遵从客人的指示而精确按下咖啡机(的按钮),泡出客人想喝的咖啡了。
此刻,假如再调配匠客Ironbot机器人(图3左下角)来端送咖啡给客人,将是愈加关心的服务了。也便是,经由同一支UBOT/Android手机来精准组织Dobot泡咖啡,而且把泡好的咖啡交给Ironbot机器人,然后端送到客人面前。
在这个咖啡馆的典范里,是以Ironbot、Dobot和Zenbo三种机器人为主角,来进行立异组合,调配语音AI的软硬整合运用事例,其间论述了AI机器人的软硬整合技能,包含AI机器人的渠道(Platform)架构,并具体阐明其开源的软件原始码。这十分有助于学习AI年代的科技知识和体会。跟着AI(人工智能)与机器学习才能的提高,与物联网(IoT)结合机器人的立异运用,将会更上一层楼。而以Android开发环境来演练Java和Python程序设计语言,将构成一个先进的智能物联网(AIoT)的程序设计学习环境。
4 安稳结构:善用Android的多进程机制
最简略的状况是让两台机器人(例如一台Dobot机器手臂和一台Ironbot履带车)能随时做立异组合、协同协作。当然也能进一步扩大为三或更多台的机器人,而且让它们进行更多把戏的立异组合、协同协作(图5)。
为了统筹扩大性和安稳性,在Android手机里能够把机器人的相关软件模块,各自组织在不同的进程(Process)里,例如这三只机器人的相关类别,各加载到不同的进程里履行(图6)。
在这个架构里,它们各自的相关类别都在各自的进程里履行,能够提高整个App的安稳性、安全性、扩大性和并行性等。
5 打造生态:根据UBOT的敞开API
现在的手机商场中,Android渠道的App数量现已超越400万了。根据其巨大的客户群,咱们奇妙地从Android渠道延伸出UBOT同享渠道,将可替各种机器人产品,招来巨大的App开发者和运用群。一起,UBOT渠道也来支撑很多的创客们来进行软硬件产品的立异。
因此,UBOT可带给App开发者许多协助。就像Android渠道相同敏捷累积许多App开发者。这些App只需稍做调整,就能履行于新产品上,因此UBOT敏捷为新产品带来很多的App,十分有助于创客的新产品敏捷进入商场而获利。
至于基层的机器人硬件厂商,为了能敏捷取得更多App,其机器人产品就会来支撑这一致而敞开的API。所以,上层累积愈多App,基层也会招引愈多的机器人产品,上层和基层相互加乘,就构成一个蓬勃开展的生态(Ecosystem)了。
6 敞开API:把握API,才有话语权
在本文里,笔者拿UBOT机器人联合渠道来做阐明。而且拿Zenbo、Ironbot和Dobot三种机器人产品来组合立异,论述最根底的机器人(Robot)软硬整合、同享渠道、敞开API、以及App的开发技能。其间的中心要素便是:API。把握渠道API的拟定权,就能成为生态的盟主。此外,还要斗胆开源软件和敞开API,就能促进生态蓬勃开展。最终,也欢迎您参看笔者的新书:《AI机器人、蓝牙与Android整合开发技能》。
本文来源于《电子产品世界》2018年第11期第81页,欢迎您写论文时引证,并注明出处。