物联网(IoT)的新鲜感过了之后,该市场的现实是一群快速投入其中的投资者、市场营销人员以及设计工程师…
不过被设计来支持难以捉摸的物联网市场之底层技术与生态系统仍然太不成熟,让大多数企业以及投资人无法回收利润;事实上,坊间传闻显示,想要在物联网领域创业的人,开始面临来自投资社群的直觉怀疑。简而言之,物联网的后座力开始显现。
在这样的背景下,一家总部在伦敦的4岁新创公司Resin.io,日前宣布该公司获得了来自DFJ、GE Ventures、Ericsson与Aspect Ventures等大企业、总额担保为900万美元的资金。Resin.io可提供的技术反映了目前很少被讨论、但正威胁物联网建立者与设计者的挑战。
要让嵌入式设备链接到互联网是微不足道的小事,不过一旦那些设备被部署,就会有更不容易解决的问题浮现──也就是如何管理并远程监测那些数以百万计的已布署物联网设备。
物联网设备需要能无线下载(over-the-air)的固件以及软件更新,而且:“还需要能快速并安全完成;”Resin.io总经理Bryan Hale接受EE Times编辑采访时表示,设备的安全漏洞必须要在几个小时而非几星期内被修补,在客户无论何时何地需要的时候提供新功能,此外还要能针对大规模数量连网设备提供一致性与可靠性。
Hale表示,Resin.io的任务就是让远程设备上的程序代码容易布署、更新与维护;该公司基本上是采用Linux软件容器(container)以及其他开放性技术,来简化开发工程师们建立、布署以及管理物联网软件的工作。
Resin.io创办人暨首席执行官Alexandros Marinos认为,来自GE Ventures、Ericsson等大企业的资金,反映了目前工业物联网市场缺少的东西,而该公司的技术正可以填补这些空缺。
“要推动工业物联网,需要具备在远程环境布署并管理软件的能力;”General Electric 旗下投资部门GE Ventures总监Sam Cates在一份声明中表示:“Resin.io扮演了独特的角色,能为工业物联网带来速度与安全性。”
Ericsson副总裁暨技术与软件解决方案部门主管Diomedes Kastanis则认为,传统的无线下载(over-the-air,OTA)软件更新方式,因为数以亿计的连网设备负担的任务越来越复杂,明显已经不够用:“我们很高兴能支持Resin.io,协助让整个产业界能拥有随时随地安全布署新软件容器的必要能力。”
Hale表示,综观今日的物联网市场:“已经有很多DIY形式的物联网设备,它们不会更新固件或软件,而我们看到了很多可怕的情景。”
工业物联网市场无法承担忽略连网设备弱点的风险;例如在一个小型工厂,制造商需要处理大量资料以及因应日常营运中的各种不可预测状况,他们可以在需要的时候,尽快为物联网设备进行必要的程序更新吗?毕竟,能实时监控厂房状况是让连网工厂智能化的关键。
同样的考虑适用于像是数字广告牌、销售终端系统以及互动性查询机(interactive kiosk)等设备;事实上,Resin.io还知道一些关于英国伦敦为了2012年奥运推出的“智能垃圾桶(smart trash bins)”的事情。
曾经出现在伦敦街头的智能垃圾桶
这种垃圾桶每一面都嵌入了LCD显示器,并有Wi-Fi功能;其原始构想是让那些屏幕能持续显示不同的信息,从天气预报到股票价格,不过因为隐私权顾虑(一旦任何附近的手机或是其他设备开启Wi-Fi,垃圾桶就会记录其MAC地址),这种智能垃圾桶最终被束之高阁。
虽然智能垃圾桶阵亡,但催生了Resin.io这家公司──他们原本是个由具备博士学历的菁英组成之团队,因为智能垃圾桶这个项目而亲身体验到更新或改变嵌入式系统中的软件有多困难;特别是智能垃圾桶这样一个嵌入式系统,没有明显的用户接口,处理性能也很有限。
*尝试修复智能垃圾桶软件的博士工程师
(来源: Resin.io)*
Resin.io的团队发现,撰写物联网应用程序并非简单任务;Marinos表示:“跟撰写网络应用程序不一样。”物联网采用的是内存容量与处理性能都很有限的嵌入式设备,可能是内建特制的微处理器或微控制器,而且各种物联网设备的CPU架构迥异。
物联网应用程序开发者必须一直担心,如何让物联网硬件设备在运作同时,又能保持应用程序更新;若这牵涉到工业物联网,程序包括设定操作系统、建立安全性局域网络、配置一些纪录并检视登入的方法,以及提供一些为设备现场安装新版程序的方法…等等。
*Resin.io 在嵌入式应用程序维护所扮演的角色
(来源: Resin.io)*
但Resin.io想:“为何不把云端的直观感受带到嵌入式世界呢?”而这家公司已透过来自网络与嵌入式两个世界的最佳实践找到答案。
Resin.io将Linux软件容器延展到新处理器架构,包括i386、ARMv6与ARMv7;Linux软件容器是一种操作系统层级的虚拟化方法,用以在使用单一Linux核心(kernel)的控制主机上,执行多个隔离的Linux系统。
该公司采用的是一种名为Git的分布式修改版系统,能推进更新、执行设备与整合测试;在此期间,该系统能维持与Docker──即一种能自动化布署软件容器内应用程序的开放性项目──的兼容性。
Marinos解释:“我们将网络开发与布署流程带到硬件领域;”采用Git与Docker等工具,Resin.io赋予软件开发者无缝更新所有嵌入式Linux设备的能力。在此同时,Resin.io能处理交叉编译(cross-compilation)、设备监测、VPN以及日志集中(log collection),因此应用程序开发者能专注于产品,不用顾虑基础建设。
编译:Judith Cheng
本文授权编译自EE Times,版权所有,谢绝转载
关注最前沿的电子设计资讯,请关注“电子工程专辑微信公众号”。