账号:
密码:
CTIMES / 文章 /   
多机器人的创新组合开发技术
使用UBOT开源框架

【作者: 高煥堂】2018年12月19日 星期三

浏览人次:【6025】
  

大家都知道,目前最流行的手机是基於 Android 作业系统的手机,市场占有率高达约80%;此外,Android采取Apache软体授权方式的开源软体,成为人人可以免费使用及自行修改的软体平台系统。UBOT的全名是:UBOTeam Unified Framework for Ro-bot Team)。它是高焕堂团队基於Android平台的扩充,而成为机器人的共用程式设计环境及整合运行平台,它逐渐发展成为AIoT的共用程式开发及整合执行平台。UBOT的上层是App(提供使用者介面);下层是外挂程式(Plugin)来促进机器人硬体设备的客制化特性;而UBOT则是位於中间层 的软体框架(Framework),它是开源的软体系统(图1)。



图1 : 开源开放的UBOT平台软体
图1 : 开源开放的UBOT平台软体

当协力厂商开发者基於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% 产品客客制化的部分程式码即可。因而,学生的学习效率提高、学习信心也提升了。


整合通信:以蓝牙技术为例

蓝牙设备能以固定的周期持续发送广播,手机端App扫瞄(接收)到广播後,解析广播包,然後可进行以设备的识别、配对,连线和资料读写等。


於是,使用者的手机就能扫瞄到周边的蓝牙设备所发出的蓝牙讯号。接下来,就能进一步与这些设备建立连线(Connection),才能对这些设备进行讯息传递,例如从BLE设备读取资讯或把资讯写到BLE设备里,这些资讯就包括了控制指令及相关的叁数等。


在Android手机里的软体结构里(图2),由myActivity模组提供 UI画面,例如让使用者随机地选取一个RGB颜色,并依据该设备所能接受的讯息格式,传递给myFa-cade去进行讯息传送的任务。此时,myFacade会透过Session来将讯息传送给BLEMessage,再转送给IronbotBLEMsg。



图2 : 开源开放的UBOT平台框架
图2 : 开源开放的UBOT平台框架

IronbotBLEMsg接到从myFacade传来的讯息之後,就将讯息存入伫列(Queue)里,然後依据先後顺序,逐一从伫列里取出讯息传送给Android的BLE模组,然後以无线方式传送给蓝牙设备,此时履带车上的LED灯的颜色就改变了。


AI赋能:运用语音AI的多机协同合作

藉助於UBOT/BLE框架的高度扩充能力,手机里的UBOT/BLE模组更能同步发送蓝牙讯息给多台机器人(如手臂和履带车),顺利指挥多机的协同合作,展开团队行动。


例如图3里,让 Zenbo 透过Wi-Fi来与 UBOT手机通讯,这样可以充分发挥 Zenbo的AI语音功能,担任迎宾服务者的角色。


从图3里,可以看人们透过语音AI来和Zenbo机器人(在此图的左上角)对话,然後Zenbo没有手,就拿Dobot手臂(右下角)来搭配起来,便能听从客人的指示而准确按下咖啡机(的按钮),泡出客人想喝的咖啡了。



图3 : 多机协同合作的情境
图3 : 多机协同合作的情境

图4 : Dobot机器人泡咖啡
图4 : Dobot机器人泡咖啡

此时,如果再搭配匠客Ironbot机器人(左下角)来端送咖啡给客人,将是更加体贴的服务了。也就是,经由同一支UBOT/Android手机来精准安排Dobot泡咖啡,并且把泡好的咖啡交给Ironbot机器人,然後端送到客人面前。


在这个咖啡馆的范例里,是以 Ironbot、Dobot和 Zenbo三种机器人为主角,来进行创新组合,搭配语音AI的软硬整合应用案例,其中阐述了AI机器人的软硬整合技术,包括AI机器人的平台(Platform)架构,并详细说明其开源的软体原始码。这非常有助於学习AI时代的科技知识和体验。随着AI(人工智慧)与机器学习能力的提升,与物联网(IoT)结合机器人的创新 应用,将会更上一层楼。而以Android开发环境来演练 Java和Python程式设计语言,将形成一个先进的智慧物联网(AIoT)的程式设计学习环境。


稳定结构:善用Android的多进程机制

最简单的情况是让两台机器人(例如,一台Dobot机 器手臂和一台Ironbot履带车)能随时做创新组合、协同合作。当然也能进一步扩充为三或更多台的机器人,并且让它们进行更多花样的创新组合、协同合作。



图5 : 兼具扩充性和稳定性的架构
图5 : 兼具扩充性和稳定性的架构

为了兼顾扩充性和稳定性,在Android手机里可以把数台机器人的相关软体模组,各自安排在不同的进程(Process)里,例如这三只机器人的相关类别,各载入到不同的进程里执行(图5)。在这个架构里,它们各自的相关类别都在各自的进程里执行,可以提升整个App的稳定性、安全性、扩充性和并行性等。


打造生态:基於UBOT的开放API

目前的手机市场中,Android平台的App数量已经超过4百万了。基於其庞大的客户群,我们巧妙地从An-droid平台延伸出UBOT共用平台,将可替各种机器人产品,招来庞大的App开发者和使用群。


同时,UBOT平台也来支撑众多的创客们来进行软硬 体产品的创新。因此,UBOT可带给App开发者许多帮助。就像Android平台一样迅速累积许多App开发者。这些App只要稍做调整,就能执行於新产品上,因而 UBOT迅速为新产品带来众多的App,非常有助於创客的新产品迅速进入市场而获利。


至於下层的机器人硬体厂商,为了能迅速获得更多 App,其机器人产品就会来支援这统一而开放的API。於是,上层累积愈多App,下层也会吸引愈多的机器人产品,上层和下层相互加乘,就形成一个蓬勃发展的「生态(Ecosystem)」了。


开放API:掌握API,才有话语权

在本文里,笔者拿UBOT机器人联合平台来做说明,并且拿Zenbo、Ironbot和Dobot三种机器人产品来组合创新,阐述最基础的机器人(Robot)软硬整合、共用平台、开放API、以及App的开发技术。


其中的核心要素就是:API。掌握平台API的制定权,就能成为生态的盟主。此外,还要大胆开源软体和开放API,就能促进生态蓬勃发展。


相关文章
确保轴承品质稳定 解决减振与温控难题
航太智慧制造有成 盼串起AI价值链
各式感测器已成为工具机设备的关键元件
落实智慧化愿景 台湾机器人与智慧自动化展精彩落幕
明基智能:MiBot智慧医疗输送机器人 有效提升效率
comments powered by Disqus
相关讨论
  相关新闻
» 最新ANSYS版本加速跨产业数位转型 强化设计、工程和制造间的数位设计流程
» 数位分身有术 掌握未来降低企业成本关键
» 串列设备、Modbus设备也能轻松上云 - Moxa推出
» 颖汉新机订单到手 将带动Q3营收恢复成长
» 时硕看好2019年营收成长 续扩充海内外产能
  相关产品
» 英飞凌推出首款适用於工业4.0的TPM 2.0
» Molex发布0.40毫米SlimStack B8系列板对板连接器
» igus的产品搜寻器整合了使用寿命计算器确保24小时後交货
» igus利用自制的高温3D列印机推进高温线材的开发
» 英飞凌推出TRENCHSTOP IGBT7与EC7二极体专为工业马达应用所设计

AD


刊登廣告 新聞信箱 读者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2019 远播信息股份有限公司版权所有 Powered by O3
地址:台北市中山北路三段29号11楼 / 电话 (02)2585-5526 / E-Mail: webmaster@ctimes.com.tw