据技术预测者预测,将日常事物连接到互联网的物联网技术,将掀起下一波的联网热潮。其涉及到的产品出货量非常巨大,是每年移动电话交货量的10至100倍。
何种应用会驱动物联网被大范围接受?这是整个行业目前需要考虑的一个重要问题。桌面(激光打印机)排版推动了早期的以太网市场;Wi-Fi出货量的猛增得益于Intel公司将802.11芯片做进了其笔记本电脑的参考设计中;而当手机价格下降到大众可负担的起时,移动电话的用量也开始呈指数式增长。
与低成本产品相连的智能手机和平板电脑,很有可能将驱动物联网从“发烧友”市场走向主流。事实上,智能手机已经能使消费者在任何时间、任何地点,连接到任何人或搜索到任何事物。
让智能手机和平板电脑消费者意识到他们的口袋里装着一个真正的万能遥控器,这只是个时间问题。到那个时候,他们可以在任何时间从任何地点监控制他们的“东西”。我们的生活方式正在悄然发生改变。Informa Telecoms & Media公司在2008年的一份报道中曾指出:供应商出货的智能手机数量已经远远超过了上网本数量。这些趋势正在为物联网的起飞创造条件。
应用驱动
截至目前,具有互联网连接功能的产品仅仅吸引着“发烧友”的目光,因为此类产品价格仍然居高不下、安装依旧太过复杂。当互联网功能所增加的成本跌破30美元,并且安装简化到即插即用的地步,那么这个市场就将迎来高速扩张的好机会。
现在有三种很有前途的目标应用:减少定制安装服务的用户支持成本;节省消费者费用;给消费者带来更多的舒适性和惬意感受。
例如,销售昂贵的家庭影院或园林灌溉方面产品的公司,一般通过定制安装服务网络销售产品。家庭影院的上门安装服务费用超过100美元,而园林服务每个月通常需要支付10,000美元的燃料费用。
借助互联网连接,产品品牌持有者可以在产品中增加远程监控功能,从而为其销售渠道增加另一种产品。销售渠道为新增收入感到高兴,而其消费者也会因此得到更佳更快捷的服务。
结果是更加愉快的用户和忠诚的销售渠道。Monster Cable公司的HTUPS 3700家庭影院电源就是这样一个例子。这种电源具有互联网连接功能,能够通过定制安装服务向其终端消费者提供远程诊断和问题纠错服务。HTUPS 3700曾赢得CES Innovations 2010设计与工程大奖。
能够减轻消费者荷包支出的产品极有前途。比如住户-智能自动调温器和天气-智能灌溉控制器,它们能帮助消费者节省10%-30%的能源和水费。还可以出售能向出租物业和闲置物业主人发送短消息或电子邮件的家用烟雾、一氧化碳、血样和结冰检测器。这些服务能以报警一次收费一次或针对报警传感器的智能手机应用来收取附加收益。
产品要求
消费类产品将最终推动物联网市场放量。由此可以得出结论,一个成功的互联网连接消费类产品必须满足三种产品要求:低成本、易于安装,而且可靠。低成本才能实现大批量。一位“发烧友”或出租物业管理者,可能会为连接互联网的自动调温器支付200美元或更多费用,但是我们都知道,主流消费者肯定不会愿意为家用自动调温器在平时60美元的基础上额外支付30美元。
其次,对于家用产品来说,使用和安装必须简单,因为如果产品太过复杂,很可能会被退回零售商那里。飞利浦电子的Elke den Ouden发现,所有被退回的电子产品中有一半工作正常,只是消费者不知道该如何使用这些产品。ABI research公司的报告也指出,2009年有30%的消费者非常想安装Wi-Fi产品,但这些产品却出现了11%的退还率。主流零售商只能容忍5%的退货,而不是11%。安装复杂性解释了为何Zigbee和Z-wave产品通常要通过用户自己的定制选择,而不是默认程序进行安装。
亚马逊的Kindle在商业上比索尼的e-book阅读器更成功的一个主要原因,是它通过3G技术与亚马逊的书店无缝融合。虽然3G比较昂贵,是实现低成本扩展的致命缺陷,但USB电缆和PC则会使事情复杂化。最后,互联网连接功能必须可靠。如果产品经常无法正常工作,那么消费者的“口水”也会扼杀产品的普及。
产品互操作性并不是阻碍其普及的真正因素,我们家里数量众多的遥控器和电池充电器就是很好的证明。零售商们知道,消费者光顾其商铺通常都肩负着某个“使命”,是为了解决某一个问题,例如替换坏了的自动调温器,或者是自动车库门。
他们不会带着家庭自动化的问题光顾商铺并进行很大的投资,因此成本的增加以及安装的便利性是消费者是否会采用互联网连接方案的关键点。
当然,产品的互操作性可以随时间逐渐达成,即使产品投入使用之后。这是因为,应用互操作性可以通过连接web服务轻松实现,方法是利用“揉合”在互联网云中且公开发布的API。
具有互联网连接功能的产品实现设计模式
下面以连接互联网的烟雾探测器(图1)为例进行说明。这种探测器在检测到烟雾时能够向户主发送短消息或电子邮件。
图1:具有代表性的互联网连接产品例子。
创建互联网连接时需要考虑三个设计要素。首先,烟雾探测器必须连接到LAN;其次,这个LAN必须通过网关或路由器连接到互联网;第三,必须有一个web应用服务器来接收烟雾告警,并向指定人员发送电子邮件或短消息。
这里有两种设计模式可供采用。第一种是web服务器位于产品内部,第二种是web应用服务器位于互联网云中(图2)。
图2:位于传感器中的web应用服务器会给用户带来安装问题(需要固定的IP地址,防火墙上需要开放端口)
将web服务器置于产品内部是当前最常用的方法。其优点是该产品的公司不必设置web服务器基础设施,但这种方法也有两个主要缺点。它增加了传感器的成本和复杂性,并且极大增加了安装过程所需的复杂度。web服务器软件需要一个运行Linux的32位CPU,以及支持它的存储器。
接近20万行的代码,Linux操作系统将传感器变成了一台计算机,并且很可能一个月需要重启数次。消费者能够容忍重启他们的计算机和家用路由器,但却无法接受烟雾探测器或自动调温器的重启。
烟雾探测器功能可以用非常低成本的8位MCU实现,因此32位CPU加上基于Linux的系统实在有点“杀鸡焉用牛刀”。最大的问题是,当烟雾探测器位于防火墙后面时,智能手机浏览器或应用程序如何能够得知烟雾探测器的IP地址?
解决方案要求用户给传感器指定一个固定的IP地址,并开放防火墙上的一个端口。发烧友(或IT部门)可能乐于支付高昂的产品费用,愿意去配置路由器端口,而且对一个月重启两次洪水检测Linux盒也没意见。但带来大批量出货潜力的主流消费者,肯定不乐意这样做。
对于大批量、价格敏感的消费市场来说,将“云中的”web应用服务器部署在专用服务器上(图3)是一个更易于实现的设计模式。
2
图3:web应用服务器位于互联网云中,可以实现简单的即插即用安装,因为服务器维护有一张服务器和传感器之间的NAT防火墙表项
将web应用服务器放置在云中有四个优势:降低端点成本、即插即用型安装、随时间有更好的产品可扩展性,以及体现连线用户的价值。在这种系统架构中,web服务器CPU和存储器实现的成本可以由多个用户分担,不会增加到端点的BOM中。
集成了RF无线电且成本不到两美元的8位MCU可以用在传感器中,来维持较低的BOM成本。固件代码堆栈要比运行TCP/IP的Linux小10倍,因而能降低板载存储器成本,而且更少的代码也意味着更少的潜在软件缺陷。
第二个优势是给消费者提供真正的即插即用安装体验。其设计挑战在于让消费者利用防火墙外的浏览器发起一个到传感器的对话。设计解决方案是让基于云的服务器维护一张服务器与端点之间的消费者防火墙网络地址转换(NAT)表项。
问题是,NAT防火墙没有互联网标准。你必须对大量消费型防火墙中的NAT算法进行分类。当克服这些挑战后,你会发现确保即插即用安装的努力是值得的。当产品安装变得非常容易,它就会被留在家庭或办公室,而不是退还给零售商。
第三个优势是通过给部署在云中的web应用增值,产品功能可以进行现场扩展。为了满足消费者提出的新要求,可以重现服务器软件,还能增加在原始产品设计时尚未预见的功能,并实现与其它web服务的连接(互操作)。
如果web服务器位于传感器中,那么在家中进行固件升级对大多数消费者来说太过复杂。如果软件升级可以向消费者提供真正的价值,它还能给运营商带来收入增长的机会。
第四个优势是拥有联网用户有很大的价值。Bain consulting公司发现,老客户的销售成本只有新客户销售成本的20%。因此,留住忠诚的用户显然是值得的。例如,向用户提供新产品和服务的一个完美机会,是从她的智能手机应用中了解到她的各种习惯。借助联网应用,可以对用户行为进行跟踪和分析,从而预测消费者的消费趋势,并提出更好的产品设计。
这种云服务器方法的缺点,是实现起来相当复杂,因为它必须支持物联网所包含的大量端点设备。早期的社交网站Friendster和苹果公司的MobileMe(只有2万个帐户)就是没有形成规模的两个例子。这两个案例都遭遇了灾难性的失败,花了巨大的代价才得以恢复。
两个瓶颈点分别是SQL事务处理和管理开放的TCP会话。首先,当端点数量超过2万个时,SQL事务处理和管理开放的TCP/IP连接就会迅速成为系统中的瓶颈点。SQL数据库架构不能很好的扩展,因为当前的服务器每秒只能处理100-1,000次SQL操作。SQL事务成为关键的瓶颈点,因为最常见的SQL事务是用户证书检查。当达到SQL操作极限时,系统性能会急剧下降。
其次,TCP/IP会出现问题,因为TCP/IP处理服务器可以处理1万-5万个TCP/IP连接。当服务器系统发展超过这个极限时,服务器必须以群的方式互连来共享数据。但群服务器的成本远高于单独服务器成本。总之,在由智能手机规模驱动的快速发展的技术市场中,根本没有时间为一个意外兴起的产品重新设计一个服务器。
商用解决方案
许多公司已经开始启动物联网业务。通过提供基于云的服务,这些公司已经生产了提供物联网的系统。我们经常提及的三家公司分别是:Arrayent、Pachube和Widetag。通过使用他们的产品,用户可以专注于其核心业务,而不用去搭建一个超出能力范围的服务器系统。这样可以节省用户的开发时间、成本,并降低风险。
如何建立一个具有互联网连接功能的产品原型
Arrayent公司最近发布了两款互联网连接开发套件,可以用来帮助嵌入式系统设计师建立带有互联网连接产品功能的产品原型,使用非常方便。Arrayent公司同时支持专有的低功耗RF(1GHz以下)和Wi-Fi RF LAN技术。
除了短消息和电子邮件功能外,还可以考虑给烟雾探测器增加一个声音警报。购买连接互联网的烟雾探测器的理由有很多,其中一个是在闲置房屋或出租物业起火时能发出警报,或者更实用的情况是,在电池电量较低时提前作出提醒,而不用等到凌晨两点钟发出恼人的噪音。幸运的是,利用DevKit硬件和web应用程序,这些警报功能不用一天时间就能很容易地建好原型。
DevKit包括硬件和内置的软件组件,可以帮助你监视和控制设备。由于这是一个电池供电的设备,我们要选择一个低功耗的RF实现。在硬件方面,低功耗RF套件提供了一个RF模块和一个低成本的以太网网关。RF模块的数字I/O端口、模拟输入和RS232串口可以用来方便地连接大多数嵌入式系统。RF模块参考设计使用了TI的CC1110,该芯片集成有一个可编程的不到1GHz的无线芯片和一个8051 MCU。
默认频率设在900MHz频段,使用星形拓扑时输出功率为10dBm。这个RF模块可以在整个4000-5000平方英尺的房屋内正常通信。CC1110还支持硬件方式的128位AES加密,对网上银行来说这是标准的安全级别。
低成本以太网网关的BOM成本不到5美元,可以插入消费者家用路由器的以太网端口,并提供与RF模块通信的RF链路。RF模块和以太网网关的组合,可以使位于消费者家庭防火墙后面的烟雾探测器原型穿透防火墙,连接到云中的web应用设备,这一过程无需消费者作任何配置(图4)。
图4:Arrayent公司用于低功耗射频的互联网连接开发套件包括了应用开发工具、射频模块、网关和互联网连接服务开发帐户。
DevKit还提供了配套的软件工具,可以让你从任何网络浏览器上定义、配置并控制被连接产品的原型。这些组件是互联网连接服务器帐户(Internet Connect Server Account)、配置器(Configurator)和实用工具(Utility Application)。服务器帐户提供对服务器和API的访问。配置器应用可以用来建立测试用户或演示帐户、定义设备属性以及定义要收集的数据。
你可以规定随着时间推移需要存储和跟踪的信息,以及在设备和互联网之间或者连接服务器和其它设备之间往来通信的信息。例如,服务器可以记住设备的位置,跟踪从设备那里收集到的起火和电池历史数据以及时间戳。当测试人员登录网站时,这些历史数据就可以按时间顺序显示出来,测试人员可以从这些数据中查看到设备的属性,以及设备在一段时间中的性能表现。
1 2 3 4 5产品设计的第一步,是确定什么样的信息对终端用户来说是重要的。对于烟雾探测器而言,当在房屋中的确切位置检测到烟雾时,我们希望其发出一条短消息进行警报。我们也需要在探测器半夜乱叫之前知道其电池电量是否足够。这个烟雾探测器的警报是一个数字信号,你可以将它连接到RF模块的通用I/O,再将电池电量信号连接到RF模块的模拟输入端(图5)。
图5:Arrayent公司的射频模块与烟雾探测器的告警信号和电池电压相连。
在完成烟雾探测器和RF模块之间的物理连接后,就可以着手准备web应用侧的工作了。首先,要为你的产品规定一个“设备类型”,并建立一个数据库用于存储有关产品特性的信息。你可以登录配置应用(Configuration Application)网站,对所连接的应用进行配置。在这里你可以“增加新类型(Add New Type)”——即烟雾探测器,并设置显示名称,如图6所示。
图6:使用Arrayent的DevKit配置器设定设备的类型。
然后,你要用“增加新属性(Add New Attribute)”窗口添加有关设备的基本信息,并设置你想要收集的数据种类。这些属性包括烟雾、电池电量、电池电量时间序列、位置和警报邮件地址(图7)。
图7:使用Arrayent的DevKit配置器设定设备的属性。
至此在服务器上连接和定义物理设备的工作就算完成了,马上就可以做测试了!无需开发你自己的web应用程序,Arrayent还提供了一个实用工具(Utility Application),用它来测试产品将如何工作。这个工具是由Arrayent公司预先创建好的,因此你不必从头开发web应用程序就能测试你的产品原型。这个实用工具是DevKit的用户界面,你可以从这里登录进去查看和控制烟雾探测器,就像实际产品的终端用户做的那样。
登录实用工具界面(图8),然后注册你的烟雾探测器。由于家里可能有不止一个烟雾探测器,因此你还需要增加一个描述,如客房,以方便你跟踪设备。
图8:Arrayent的实用工具用于实现最终用户的登录页
然后就可以使用你在配置应用中设置的属性,查看和控制你的烟雾探测器了(图9)。这里,我们看到的是客房的烟雾探测器,界面上有相应的域用于监视当前状态并控制烟雾探测器状态,还有电池电压和电池电压历史数据域。
图9:Arrayent公司查看烟雾探测器状态的实用工具窗口。
例如Arrayent公司的Internet-Connect System就是一个交钥匙的端到端互联网连接系统,可以帮助品牌持有者连接其零售的低成本产品。该系统的核心技术是一台高度可扩展(运行成本很低)的通信服务器,能为web应用开发人员提供虚拟的web服务接口。该系统还提供面向低成本RF端点模块和最低成本(BOM价格5美元)的以太网网关硬件参考设计, 能够将专有RF LAN连接到互联网。
英国伦敦的Pachube公司提供的是“物联网数据经纪平台”,可以从个人、机构和公司的角度管理数据点。该服务采用成熟的web协议和行业标准提供数据的存储和服务。可以用它收集和汇聚全球范围内的环境数据,再经分析后发送报警信息。
位于美国加州的WideTag公司则提供了一个可扩展且具有容错能力的云基础架构,可用于通信和数据存储。该公司还推出了一款“能量计”,可以提供对能耗的实时监视和管理;并提供一个基于社会网络的网站,用于收集环境噪声测量结果。
在实用工具窗口中,你还能改变某些属性值,如重新命名设备,或增加警报发送的邮件地址。你还可以设置你的烟雾探测器,使它在电池电量低时给你发送电子邮件或SMS信息。短消息,从而使你能在探测器半夜乱叫之前更换新的电池。
在这些工具背后,DevKit配置器和实用工具使用了Arrayent公司正在申请专利的虚拟化web服务技术,该技术有两大关键优势。第一个优势是降低产品的BOM成本。
如前所述,典型的互联网连接设计模式是将web应用服务器放在终端产品中。web应用服务器运行在Linux之上,需要32位处理器以及相应存储器的支持。这种硬件对大多数消费类设备来说过于昂贵,对烟雾探测器来说尤其如此。Arrayent公司的虚拟化web服务将产品的web应用服务器放在低成本的服务器互联网云中。终端产品可以使用内存小的低成本MCU。
第二大优势是大多数嵌入式系统设计师无需在web服务抽象层编程,而web应用开发者也不用在嵌入式系统抽象层编程。借助于Arrayent公司的虚拟化技术,web服务器应用程序开发人员可以在网络服务级(XML和HTTP)编写控制烟雾探测器的代码。由于无需额外的嵌入式系统开发人员,这种架构可以使web应用开发人员有更高的产能和效率。
如果想做进一步测试,你可以利用DevKit中包含的样例PHP代码创建自己的产品网站。代码中包含一个基本的消费者使用界面,因此你可以很快演示出产品网站的外观和功能(图10)。
图10:在通过修改DevKit样例 PHP代码创建的网络浏览器用户界面上看到的互联网连线烟雾探测器状态。
这种架构能够为未来升级提供保障,因为产品功能是作为一个web应用程序实现,该程序位于基于互联网云的服务器上,而不是位于设备本身。Arrayent的连接服务器是按需设计的,采用类似通信开关的架构,因此由于SQL调用和开放TCP会话引起的死机或服务器阻塞点限制的可能性极小。服务器本身在同一位置设有冗余,并且与地理上分开的服务器互作备份,可确保可靠工作。
本文小结
随着越来越多的智能手机和平板电脑走入我们的生活,消费者想要更多的控制能力和生活舒适性,互联网连线设备可以实现这一点。遥控功能可使用户安装服务以更低廉的价格提供更快的用户服务(即节省上门服务费用),或给人们带来舒适感觉(当下班回家时打开家里的交流电源)。
消费者想要舒适的生活对远程监视应用起着推动作用。消费者可以轻松回答“我的房子安全吗?”或“约翰在家吗?”。而高产品价格加上极具挑战性和高昂的产品安装服务一直是过去最大的发展障碍。随着低成本无线射频LAN和云计算技术的发明,这些障碍将被扫除。从业余爱好者市场腾飞的机会已经来临,大规模的消费市场普及就将实现。