在物联网浪潮之下,智能硬件的火爆程度不断升温。将来十年,全球接入互联网的硬件设备将达到1万亿台。现在的智能硬件产品正成为下一个“台风口”,同时这对于终端市场也是一个机遇。然而从创新走向产品,做为开发者应该如何步步为营?面对传统硬件与智能硬件之间思惟理念及技术差别的“鸿沟”,开发者如何提高本身的技能,更加高效地开发?由此,咱们带着探索道路上的种种疑问,采访了机智云 CTO 刘琰,请他具体分享物联网与智能硬件开发的实践经验,但愿帮助开发者少走一些弯路。
<ignore_js_op>
机智云创始人兼 CTO 刘琰
刘琰,机智云创始人兼 CTO,互联网早期技术及管理人员,中山大学毕业,前网易创始团队成员,拥有近 20 年互联网系统研发和软件技术架构经验,曾前后就任于韩国三星、网易(163.com)、Webex China Lab 、IBM(中国)等国内外知名企业,目前全面负责机智云核心架构设计、平台化产品部署和项目研发技术指导工做。
团队背景
CSDN:请介绍下您我的的从业经历以及目前关注的技术领域?
刘琰:我是 90 年代末第一批互联网从业者。2005 年我与身在美国的黄灼共同创立机智云公司(前杰升信息科技有限公司),主要为美国一线高新技术企业提供技术支持服务,后凭借我的的互联网技术经验和业内知名度,受邀成为全球最先进入亚马逊云计算和移动互联网应用开发的团队,为欧美互联网企业提供云计算解决方案和技术支持。
2009 年开始带领团队对苹果 MFi 项目进行前瞻性研究,并陆续完成上百款移动应用 App 研发交付,2010 年受邀成为苹果公司受权的亚太地区首批 Apple MFi 物联网软件解决方案提供商,目前已带领团队连续 7 年保持苹果亚太地区优秀 MFi 方案商。在 2015 年 8 月,我与微软 IoT 资深专家共同完成基于物联网云服务的云计算系列著做《云就该这么玩儿》。
目前关注的技术领域有:边缘计算、云计算架构、物联网大数据、人工智能算法、无线联网技术、金融支付等。
CSDN:能否分享一下目前机智云整个技术团队的背景、规模和分工?
刘琰:机智云目前拥有完整的技术研发团队、安全运维团队、人工智能团队和技术服务团队,已造成了一支多学科有机互补、专业搭配合理的研发队伍。
各团队主持技术和管理工做的负责人和核心技术人员均来自运营商、芯片原厂、大型互联网公司的技术骨干,好比云平台负责人为前中国移动业务支撑系统 BOSS&CRM 项目技术负责人,具备超过 10 年运营商业务支撑系统规划及实施经验。人工智能负责人是前 Intel WPRD MC1 系统高级工程师,曾带领团队主导完成 Intel 基带芯片算法的研发。负责通讯协议开发的核心技术人员为原华为技术有限公司网络产品线底层开发部 BSP 项目团队 Project Leader,有超过 9 年嵌入式软件、网络通讯设计开发经验。
目前公司总人数接近 250 人,其中技术人员约占 80%。技术研发团队负责大型客户项目及标准化解决方案研发工做、安全运维团队负责云平台平常运营维护及安全、人工智能团队负责人工智能产品研发及商业化和技术服务团队负责客户支持。
CSDN:请谈一谈目前机智云正在作的事情?
刘琰: 机智云是目前国内最大的智能硬件自助开发(PaaS)及物联网云服务(SaaS)平台,为有志于进军物联网的开发者提供设备管理、网络链接管理、应用开发、数据挖掘、智能分析、金融计费与第三方系统互联等重要平台服务,同时帮助企业连通底层设备、企业业务需求、应用开发者和企业内其余 IT 系统(CRM、ERP 等),为厂家打造完整的物联网解决方案,已服务车联网、新能源、工业互联、医疗健康、消费类电子产品等众多行业,目前在家电领域市场份额第一。
· 在产品服务层面
机智云智能硬件自助开发 PaaS 平台是全球最先推出的,目前行业最健全的应用赋能 AEP 服务平台,拥有全球最大的物联网应用开发者社区。平台经过多元化的 API 支持,完善的 SDK,IDE 开发环境,全自动的嵌入式和移动应用代码生成器等完整的工具链,帮助开发者高效地实现方案的开发、测试、发布及商业运营。开发者能够经过邮箱即时注册使用机智云免费的在线开发工具。包括嵌入式开发的协议文档、智能手机应用的 SDK、云端的相关接口、用于演示产品功能的智能手机应用,以及运行在云端的虚拟设备等等。
机智云智能设备运用管理系统是在 PaaS 平台基础上为企业提供的相对标准的智能设备远程监控、设置调整、软件升级、系统升级、故障排查、生命周期管理等服务,可实时提供网关和应用状态监控告警反馈,为预先处理故障提供支撑,提升客户服务满意度;同时开放的API调用接口帮助客户轻松地进行二次系统集成和增值功能开发;全部设备的数据能够存储在云端。知足客户对应用支持、数据挖掘、金融计费等功能的需求。
机智云实时大数据分析应用平台则为客户提供物联网大数据能力,高效实现物联网复杂机器学习算法服务。对集合的各种相关数据后进行分类处理、分析并提供可视化数据分析结果;经过实时动态分析,监控设备状态并予以预警。经过对历史数据(结构化和非结构化数据)进行训练生成预测模型或者客户根据平台提供工具本身开发模型,知足预测性的、认知的或复杂的分析业务逻辑。
机智云智能设备一站式解决方案,帮助企业优化产品体验以及下降运营成本。好比提供智慧家居解决方案、智慧水家电解决方案、GRCS厨膳云、GALS商用租赁平台、充电桩平台解决方案、Zinn宅居智慧公寓方案等,知足垂直领域行业客户需求。
· 在平台技术层面
前瞻性的技术预研和战略布局促使机智云已经发展成为目前国内技术领先的综合物联网云服务平台,同时开放的跨平台技术对接及自身开发者生态建设的完善,成功打造了围绕机智云平台为核心的物联网生态系统。
2016年机智云平台完善了ECE雾计算(边缘计算)引擎、RTBD实时大数据平台、Giga ML吉咖机器学习和D3动态数据编排引擎,将云计算和雾计算结合,组成超大规模的物联网大数据和机器学习体系,配合应用赋能和傻瓜式操做界面,充分整合物联网、大数据和机器学习应用能力,进一步下降物联网产品和服务的研发和部署及维护难度。
2017年3月份,机智云推出了一系列人工智能产品,好比经过多维度感知(Sensor Fusion) 与深度学习 (Deep Learning) 技术的支撑实现的新一代智能家居服务平台-机智玛莉,使用图像识别引擎和语义识别引擎进行交互,拥有智能决策能力,具有类人感官和语音交互的人工智能管家。
此外机智云还在积极与原厂和其它平台对接,帮助开发者能够快速赋予产品更多能力和服务,好比连续七年保持苹果 MFi 认证亚太地区优秀物联网软件解决方案提供商,持续参与苹果 Homekit 研发及推动合做;微软、亚马逊、Intel 全球战略合做伙伴,协助微软完成 2015 年微软 DX 部门 IoT 开发工具研发及开发者夏令营,2015 年协助 Intel 完成爱迪生链接云端实现自助开发并完成第一届创客大赛,日前在 Amazon Alexa 平台发布 Smarthome 和Custom Skill,将 Echo 应用场景推向中国智能家电厂家,在硬件联网技术层面除已完成的 Lora 产品外,正在积极与高通进行 NB-IoT 项目研发、与 ST 合做进行全型号 MCU 代码自动生成工具开发等等。
智能化硬件平台开发
CSDN:相比其余同类物联网云服务平台,机智云平台的区别及技术优点是什么?
刘琰:机智云凭借在硬件接入、数据挖掘和分析应用上的技术优点及多年的行业实战经验,已发展为行业第一的综合物联网云服务平台,处于整个产业链的核心位置,经过对数据流的集中、处理和疏散中心,凭借“大平台+小前端”的结构,支撑和推进物联网在细分行业的商业模式创新,提高行业效率。经过多年来对产业深耕和上下游资源整合,造成完整的物联网开发服务生态,有效撮合供应商和用户下降交易成本,经过第三方接口释放共享经济的巨大价值,参与应用分红,达成生态双赢。
咱们从 2010 年就开始从事这个领域,因此在技术的迭代上咱们是有必定的优点的,而这些都是须要经验积累才能打造出来的,所以咱们的技术相对成熟。同时,除了技术上的领先,咱们在开发团队规模上也领先了不少,甚至比大型互联网公司之中专门作物联网的团队还要成熟得多。并且咱们的用户和开发者也很是多,这也是咱们在生态上的优点。这些优点也是咱们的核心竞争力,使得咱们在业内的领先地位可以巩固下去,只要咱们不放慢,就能一直保持。机智云是典型的复合型技术栈,技术只是工具,重要的是知足商业的目的,因此机智云是用最合适的工具来作最合适的事情。
CSDN:您与团队是如何看待“完整的物联网大数据和机器学习体系”这个概念的?
刘琰:物联网的数据是典型时间序列数据,具备量大、价值高的特色。传统的数据库没法很好地处理如此大量、实时的数据,传统的数据挖掘方法也没法从中挖掘出价值。所以须要引入复杂的机器学习算法来处理。好比2016 年机智云发布的机智云 4.0 平台就包括了 RTBD(Real Time Big Data)实时大数据平台和 Giga ML 吉咖机器学习,为客户提供了物联网大数据能力,高效实现物联网复杂机器学习算法服务。
RTBD(Real TimeBig Data)实时大数据平台,是一个专门为物联网应用而生的实时大数据分析、处理、输出平台。RTBD 特别适用于存储和计算物联网行业最多见的基于时间序列的数据(Time Series Data)。基于搜索引擎技术,RTBD 存储量大(可达EB级), 内置强大的实时运算能力,复杂的数据聚合结果能够在毫秒级输出。RTBD 还具备多种计算引擎的整合能力能够方便地经过与 Hadoop/Spark/Storm 等计算平台的整合完成复杂计算。人性化的管理界面让开发者能够方便地定义数据查询脚本,并即时生成对应的 API,使应用赋能在数据层面有质的提高。
Giga ML 吉咖机器学习,是专门为物联网设计的机器学习产品。基于机智云的云端+雾端计算架构,吉咖机器学习能够把数据采集和处理逻辑动态分配到设备和网关端,让海量的终端设备参与到机器学习的运算中,大大的增长了可采集和处理的数据量和全网络的运算资源,能够高效的实现复杂的的机器学习算法,极大的下降了机器学习在物联网领域的应用的开发和部署门槛。
CSDN:能否简单介绍一下如何经过机智云对接快速实现 Amazon 的 Echo 对接?
刘琰: Alexa 是 Echo 内置的语音助手,能够接收相应语音命令,经过它可以唤醒 Echo。Alexa 的优势在于它基于云端,所以能够随时对其进行改进。Alexa Skills Kit (ASK)是一个由自服务 API、工具、文件和实例代码的集合,可轻松构建你自定义的 Alexa skills,而后发布。
机智云开源套件
gokit 是一块标准的量产级嵌入式开发板,即表明了通用型智能设备。硬件集成了通用 MCU、通信模块、电机马达、温湿度传感器、红外传感器和可扩展接口等,搭载机智云 Gagent 链接协议和 App 开发测试工具、微信硬件客户端,以及完整的机智云云平台服务。免费发放给开发者进行物联网设备开发学习,可在官网申请。机智云发布生态认证计划。
<ignore_js_op>
做为 IoT 前沿技术领军企业,机智云在 Amazon Alexa 平台率先发布了 Smarthome Skill 和 Custom Skill,实现了亚马逊 Echo 直接控制机智云开源套件Gokit(包括 Gokit2.0 和 Gokit3.0)!这也就意味着:随着机智云和亚马逊帐号的打通,接入机智云的智能设备均可以轻松实现Amazon Echo控制功能。
CSDN:现在开发者对于云服务解决方案有哪些需求、痛点?机智云能为他们带来哪些变化?
刘琰:智能硬件开发云平台和传统的软件开发有很大区别,在传统的桌面软件开发领域,客户端的环境主要是 Windows 和 Mac,移动互联网有 Android 和 iOS,可是智能硬件的客户端平台则要庞大的多,单单芯片厂家就有几十家,若是算上作模块的那就更多了,客户端的多样化是物联网的一个独特之处。
另外,物联网应用结合了企业应用的业务复杂性,以及互联网应用在处理高并发、高访问量的技术难题,所以物联网应用开发是一个更有挑战的领域,好比,硬件领域的开发者相对比较传统,他们会采用比较成熟的技术,而不像互联网领域的开发者比较喜欢尝试新技术。
再有,大部分硬件由于受到成本和体积等因素的影响,在计算、存储等方面的能力是有限的,把硬件接入云端后,无形中扩展了硬件的能力。同时能够将硬件变得更加智能。原来一些设备的业务逻辑须要写在硬件里面,如今能够把这部分和智能决策的逻辑放到云端。可是对于一个硬件工程师来讲完成这些开发会很是难。
那机智云给他们带来哪些变化?咱们能够先看看目前智能硬件的基本架构,也就是咱们常说的黄金三角形,即云端、智能硬件、智能手机应用。云端的技术大可能是互联网的 技术,与硬件工程师所熟悉的领域不太同样,咱们须要有工具帮助开发者更好、更快地接入。出于这个考虑,机智云提供了一个叫 GAgent 的小固件程序,它运行在硬件平台里面,一般在 Wi-Fi 模块里,也能够在硬件的主控芯片里。GAgent 起到了一个承上启下的做用,对云端,它实现了全部的机智云接口,让硬件具备与云端链接的能力;对主控芯片,它又提供了一套对嵌入式开发很友好的封装,让硬件工程师能够面向业务编程,而不用去考虑云端通讯的细节。
<ignore_js_op>
智能硬件“黄金三角形”
GAgent 在云端所提供的各种型接口可以让整个链接过程变得更加简易,这些接口在传输层面支持多种协议,包括 MQTT,HTTP/S,还有 WebSocket等。MQTT 是由 IBM 最早倡导的一套专门用于物联网的协议,适用于互联网这样网络环境不可靠的场景;同时它又是基于二进制的数据格 式,特别适用于硬件上的嵌入式开发。而 HTTP/S 和 WebSocket 则用于一些应用的开发,如微信的应用或者是基于HTML5的应用。多样化的接口能 让开发者根据不一样的应用场景选择不一样的方式。
此外,机智云还在云端提供了一个开发者的自助服务界面,使得咱们能够经过一些简单的表单操做就能够完成对一款新的智能硬件的功能定义。咱们会帮开发者生成一系列包括嵌入式开发的协议文档、智能手机应用的 SDK、云端的相关接口、 还有一个用于演示产品功能的智能手机应用。另外,咱们还提供了一个运行在云端的虚拟设备,帮助开发者可以在一行代码都不用编写的状况下,测试本身产品的各项功能。
CSDN:可否介绍您在打造物联网和智能硬件平台过程当中,主要运用的技术?在平台开发过程当中,面临哪些技术难点?
刘琰:机智云在云服务方面主要用 Python、Ruby 等语言来开发。数据层是机智云核心,用到 MongoDB、MySQL、Redis 技术;大数据领域,用到流式大数据处理框架 Spark。在 IaaS 层面,尽可能作到服务供应商的中立型,也就是说机智云的整套架构部署能够无缝部署在阿里、腾讯、亚马逊、微软等 IaaS 平台。
对于平台打造过程当中的通用技术难点,主要就是如何从一个大的服务到微服务转化,这个过程花费了团队很大的精力,包括如今还在不断的去作。这个很好理解,刚开始的时候,一个平台刚刚起步,通常是一体化的服务,业务比较简单,可是随着后期的访问量的增长,业务愈来愈复杂,各类各样的需求会不断的叠加进来,因此有段时间,机智云平台自身增长新的业务很是困难。由于你要考虑的东西特别多,例如增长新的功能会不会影响旧功能的使用等等。
另外,公司人员的增长,如何让员工快速进入开发节奏,目前机智云参考 Facebook 的作法,就是将服务尽可能的切小,每个服务负责一个很是单一的功能目的,让新员工能够在一天以内为服务贡献代码。除此以外,机智云的 SDK、GAgent(WiFi 模块中的固件程序)或者 GPS、蓝牙通信模块里面的代码程序,须要有一个合理的发布节奏。目前机智云的云端服务如今基本上天天能够发布屡次,而客户端的 SDK/GAgent 等产品则是每个月发布一次,这样就平衡了功能的演进、缺陷的修复、质量的稳定等几个方面的关系。
CSDN:您认为目前物联网主要面临哪些安全性问题?从您的我的角度来看,有什么较好的解决方案?
刘琰:物联网安全是个重要话题。物联网产品跟手机/电脑不同,没有用户持续的去管理它的操做系统,一方面不太容易发现被随随便便安装的病毒软件,同时也正由于没有用户天天照看,若是设备的安全防线被成功击破,也很不容易被发现。受制于大部分企业没有完整的技术开发人员和完善的专业运维和安全团队,如今企业依托现有工程师自主研发的产品或多或少都存在一些安全隐患,攻击者利用这些产品因各类因素制约没有考虑到的安全漏洞,能够监控或接管这类设备的运做,甚至令其感染恶意程序等,为消费者和厂家带来不一样程度的困扰和损失。
对于物联网安全,我的认为有六大物联网安全的考虑点:
- 网络安全。本地网络和数据上云管道的安全,思科、华为这些硬件厂家比较擅长这个。
- 安全认证。用户和设备的身份和权限管理,咱们这样的互联网公司比较擅长。
- 数据加密算法。须要在端部和云端同时作,须要机智云这样的端到端技术平台支持。
- PKI。公钥基础设施,这个在互联网阶段就比较成熟,可是应用到智能硬件上,不少硬件还没用起来。
- 持续的安全数据分析。这个对大数据能力提出很高要求,也是机智云在投入端方向,能够经过数据分析防范还没有成功的攻击。
- 云端接口的安全保护。这个互联网公司比较擅长,咱们作云计算超过10年,保护服务接口是咱们的强项。
开发经验分享
CSDN:根据您的经验来看,目前物联网开发者面临的主要挑战是什么?开发者在面对这些困难时开发者容易陷入哪些误区?
刘琰:咱们开发过上千款硬件,发现了几个共性问题:
-
硬件链接手机、接入云端,就是这么简单的链接过程其实包含了从硬件跨到软件、跨到互联网的诸多问题。由于物联网产品所涉及到的技术领域跨度很大,建议不要从一开始就本身去完成全部的东西,而是要尽量地去利用外部的资源,找到合适的工具去解决一些通用的问题。如机智云将现有核心技术积累开放出来,让开发者更快的克服智能硬件开发门槛,实现智能硬件零成本开发。
-
硬件自己有千奇百怪的型号,网络环境也千差万别,更不论手机的型号、系统版本和平台了。所以咱们做为中间件就能够解决其中这些问题。好比你买一款设备,它并无键盘,所以没法输入,可是你应该如何告诉它哪一个是你的路由器以及密码?此外可能还会存在兼容性问题。想把产品作得稳定可靠,就要深刻学习,因此咱们通用的技术开放给你们使用。咱们也与一些芯片厂商合做,能够作到让手机 App 自动发现设备,而后将路由器信息发给它,实现联网。
-
作软件的人都了解,App 若是有 Bug,能够打补丁。可是硬件产品若是出现问题,初版硬件发出去了,但不能工做,只有两个选择,任由用户吐槽,或者发一个新产品给用户,但这样的成本很高。如今大部分的厂商都没有考虑到固件升级的问题。咱们海外的一些很是成熟的客户从初版就开始考虑后续的升级问题。固件升级能够是针对全部用户,也能够对指定地区或用户群进行升级。咱们的平台就能够帮助开发者快速实现 OTA 固件升级。
CSDN:对于从事物联行业的开发者,您有什么经验及建议分享?
刘琰:对于智能硬件领域的开发者来讲,从技术研发到产品销售,整个生态链条很是长。智能硬件的产品研发,只是它生态链里面的其中一个环节。并且不只仅要作出来,还可以交到消费者的手上,让消费者用得好,用得放心。
所以做为开发者,你们关注的并非技术自己,应该关注的是要解决什么问题。如今产业中存在这样的现象,发现别人作手环,我也作,别人作插座,我也一块儿作,都是有样学样,最后同质化很是严重。我认为开发者须要将眼光放远,能够从小的痛点深挖,围绕本身熟悉的垂直行业去作,这才是最健康的发展方式。
展望将来
CSDN:将来几年,机智云有哪些重点规划,会有一个怎样的战略布局?
刘琰:将来几年,机智云在保持技术领先位置、衔接产业链上下游的同时将加大市场营销投入,进一步完善和扩大围绕机智云平台为核心的物联网生态系统,提高技术成果转化速度,除继续保持在传统消费电子领域的优点位置,将投入更多力量开展新的行业应用,在冷链运输、商用服务、智能公寓、煤改电、工业物联网等方向发挥做用;积极开展公共服务平台建设,帮助更多有想法的团队和我的;继续增强产学研合做,帮助校企实现成果转化。机智云将以中国为发展基石辐射全球,帮助中国传统企业率先实现互联网化,保持行业领军地位,引领物联网产业向前发展。