打印

物联网浪潮之下如何从 0 到 1开启智能化硬件开发?

[复制链接]
812|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
beam92|  楼主 | 2017-5-16 15:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在物联网浪潮之下,智能硬件的火爆程度不断升温。未来十年,全球接入互联网的硬件设备将达到1万亿台。如今的智能硬件产品正成为下一个“台风口”,同时这对于终端市场也是一个机遇。然而从创新走向产品,作为开发者应该如何步步为营?面对传统硬件与智能硬件之间思维理念及技术差异的“鸿沟”,开发者如何提升自己的技能,更加高效地开发?由此,我们带着探索道路上的种种疑问,采访了机智云 CTO 刘琰,请他具体分享物联网与智能硬件开发的实践经验,希望帮助开发者少走一些弯路。


机智云创始人兼 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、云端的相关接口、用于演示产品功能的智能手机应用,以及运行在云端的虚拟设备等等。


机智云智能设备一站式解决方案,帮助企业优化产品体验以及降低运营成本。比如提供智慧家居解决方案、智慧水家电解决方案、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:如今开发者对于云服务解决方案有哪些需求、痛点?机智云能为他们带来哪些变化?


刘琰:智能硬件开发云平台和传统的软件开发有很大区别,在传统的桌面软件开发领域,客户端的环境主要是 Windows 和 Mac,移动互联网有 Android 和 iOS,但是智能硬件的客户端平台则要庞大的多,单单芯片厂家就有几十家,如果算上做模块的那就更多了,客户端的多样化是物联网的一个独特之处。


另外,物联网应用结合了企业应用的业务复杂性,以及互联网应用在处理高并发、高访问量的技术难题,因此物联网应用开发是一个更有挑战的领域,比如,硬件领域的开发者相对比较传统,他们会采用比较成熟的技术,而不像互联网领域的开发者比较喜欢尝试新技术。

再有,大部分硬件因为受到成本和体积等因素的影响,在计算、存储等方面的能力是有限的,把硬件接入云端后,无形中扩展了硬件的能力。同时可以将硬件变得更加智能。原来一些设备的业务逻辑需要写在硬件里面,现在可以把这部分和智能决策的逻辑放到云端。但是对于一个硬件工程师来说完成这些开发会非常难。


那机智云给他们带来哪些变化?我们可以先看看目前智能硬件的基本架构,也就是我们常说的黄金三角形,即云端、智能硬件、智能手机应用。云端的技术大多是互联网的 技术,与硬件工程师所熟悉的领域不太一样,我们需要有工具帮助开发者更好、更快地接入。出于这个考虑,机智云提供了一个叫 GAgent 的小固件程序,它运行在硬件平台里面,通常在 Wi-Fi 模块里,也可以在硬件的主控芯片里。GAgent 起到了一个承上启下的作用,对云端,它实现了所有的机智云接口,让硬件具有与云端连接的能力;对主控芯片,它又提供了一套对嵌入式开发很友好的封装,让硬件工程师可以面向业务编程,而不用去考虑云端通信的细节。

智能硬件“黄金三角形”


GAgent 在云端所提供的各类型接口能够让整个连接过程变得更加简易,这些接口在传输层面支持多种协议,包括 MQTT,HTTP/S,还有 WebSocket等。MQTT 是由 IBM 最先倡导的一套专门用于物联网的协议,适用于互联网这样网络环境不可靠的场景;同时它又是基于二进制的数据格 式,特别适用于硬件上的嵌入式开发。而 HTTP/S 和 WebSocket 则用于一些应用的开发,如微信的应用或者是基于HTML5的应用。多样化的接口能 让开发者根据不同的应用场景选择不同的方式。


此外,机智云还在云端提供了一个开发者的自助服务界面,使得我们可以通过一些简单的表单操作就可以完成对一款新的智能硬件的功能定义。我们会帮开发者生成一系列包括嵌入式开发的协议文档、智能手机应用的 SDK、云端的相关接口、 还有一个用于演示产品功能的智能手机应用。另外,我们还提供了一个运行在云端的虚拟设备,帮助开发者能够在一行代码都不用编写的情况下,测试自己产品的各项功能。


CSDN:能否介绍您在打造物联网和智能硬件平台过程中,主要运用的技术?在平台开发过程中,面临哪些技术难点?


刘琰:机智云在云服务方面主要用 Python、Ruby 等语言来开发。数据层是机智云核心,用到 MongoDB、MySQL、Redis 技术;大数据领域,用到流式大数据处理框架 Spark。在 IaaS 层面,尽量做到服务供应商的中立型,也就是说机智云的整套架构部署可以无缝部署在阿里、腾讯、亚马逊、微软等 IaaS 平台。


对于平台打造过程中的通用技术难点,主要就是如何从一个大的服务到微服务转化,这个过程花费了团队很大的精力,包括现在还在不断的去做。这个很好理解,刚开始的时候,一个平台刚刚起步,一般是一体化的服务,业务比较简单,但是随着后期的访问量的增加,业务越来越复杂,各种各样的需求会不断的叠加进来,所以有段时间,机智云平台自身增加新的业务非常困难。因为你要考虑的东西特别多,例如增加新的功能会不会影响旧功能的使用等等。


CSDN:您认为目前物联网主要面临哪些安全性问题?从您的个人角度来看,有什么较好的解决方案?


刘琰:物联网安全是个重要话题。物联网产品跟手机/电脑不一样,没有用户持续的去管理它的操作系统,一方面不太容易发现被随随便便安装的病毒软件,同时也正因为没有用户每天照看,如果设备的安全防线被成功击破,也很不容易被发现。受制于大部分企业没有完整的技术开发人员和完善的专业运维和安全团队,现在企业依托现有工程师自主研发的产品或多或少都存在一些安全隐患,攻击者利用这些产品因各种因素制约没有考虑到的安全漏洞,可以监控或接管这类设备的运作,甚至令其感染恶意程序等,为消费者和厂家带来不同程度的困扰和损失。


对于物联网安全,个人认为有六大物联网安全的考虑点:
  • 网络安全。本地网络和数据上云管道的安全,思科、华为这些硬件厂家比较擅长这个。
  • 安全认证。用户和设备的身份和权限管理,我们这样的互联网公司比较擅长。
  • 数据加密算法。需要在端部和云端同时做,需要机智云这样的端到端技术平台支持。
  • PKI。公钥基础设施,这个在互联网阶段就比较成熟,但是应用到智能硬件上,很多硬件还没用起来。
  • 持续的安全数据分析。这个对大数据能力提出很高要求,也是机智云在投入端方向,可以通过数据分析防范尚未成功的攻击。
  • 云端接口的安全保护。这个互联网公司比较擅长,我们做云计算超过10年,保护服务接口是我们的强项。


开发经验分享


CSDN:根据您的经验来看,目前物联网开发者面临的主要挑战是什么?开发者在面对这些困难时开发者容易陷入哪些误区?


刘琰:我们开发过上千款硬件,发现了几个共性问题:

  • 硬件连接手机、接入云端,就是这么简单的连接过程其实包含了从硬件跨到软件、跨到互联网的诸多问题。因为物联网产品所涉及到的技术领域跨度很大,建议不要从一开始就自己去完成所有的东西,而是要尽可能地去利用外部的资源,找到合适的工具去解决一些通用的问题。如机智云将现有核心技术积累开放出来,让开发者更快的克服智能硬件开发门槛,实现智能硬件零成本开发。
  • 硬件本身有千奇百怪的型号,网络环境也千差万别,更不论手机的型号、系统版本和平台了。因此我们作为中间件就可以解决其中这些问题。比如你买一款设备,它并没有键盘,因此无法输入,但是你应该如何告诉它哪个是你的路由器以及密码?此外可能还会存在兼容性问题。想把产品做得稳定可靠,就要深入学习,所以我们通用的技术开放给大家使用。我们也与一些芯片厂商合作,可以做到让手机 App 自动发现设备,然后将路由器信息发给它,实现联网。
  • 做软件的人都了解,App 如果有 Bug,可以打补丁。但是硬件产品如果出现问题,第一版硬件发出去了,但不能工作,只有两个选择,任由用户吐槽,或者发一个新产品给用户,但这样的成本很高。现在大部分的厂商都没有考虑到固件升级的问题。我们海外的一些非常成熟的客户从第一版就开始考虑后续的升级问题。固件升级可以是针对所有用户,也可以对指定地区或用户群进行升级。我们的平台就可以帮助开发者快速实现 OTA 固件升级。






相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

192

主题

234

帖子

6

粉丝