物联网(IoT)中连接设备(“Things”)的关键技术

发表时间: 2017-05-02 08:06

IoT(物联网)技术正在让连接到互联网的多样设备呈现出爆炸式的增长。 我们看到熟悉的物体获得了连接性,增加了计算能力,以及只能存在于网络中的新类别设备。 传感器和执行器为桥接现实世界和数字世界中的信息和行动创造了新的可能性。 但是,许多这类设备必须仔细设计所使用的能源和计算能力。 这些技术限制是UX(用户体验)设计人员在设计连接设备时所遇到的一些挑战的根本原因。

连接设备的类型

连接设备可以采用多种形式,通常是以下形式之一:

  • ••多功能电脑

  • ••专用嵌入式设备

  • ••连接的传感器

  • ••被动跟踪的物体

大多数系统将由多种类型的设备所组成; 例如,连接的家庭系统可以具有:

  • ••在智能手机上的控制界面(多用途计算机)

  • ••加热/通风/空调(HVAC:Heating/ventilation/air conditioning)控制器,远程控制的门锁和盲控制器(专用嵌入式设备)

  • ••安全传感器,如运动和接触传感器(互连的传感器)

表1总结了这些之设备间的关键差异

表1、 连接设备的类型总结

多功能电脑

这些是强大的计算机,旨在执行各种计算任务。 它们不再仅仅是台式机,还有智能手机,平板电脑,现在可以连接电视,机顶盒和游戏机。 他们通过屏幕,音频,触摸输入,键盘,鼠标以及有时还用语音和手势等交互,因此具有丰富的互动功能。 它们包含强大的微处理器,以及具有用于存储器和外围接口(如联网功能)的外部芯片。 虽然它们不属于IoT(物联网)设备的类别,但它们通常用于处理IoT(物联网)服务的用户交互(或者有时作为不具有内置Internet连接的设备的Internet网关)。

嵌入式设备

技术成本下降意味着计算机现在是最便宜,最简单的方法来实现甚至微不足道的任务,比如定时刷牙。因此,我们周围的更多的物体开始具有板载计算和连接功能。这种趋势创造了物联网最新颖和标志性的设备:如恒温器,浴室秤,甚至塑料兔子。这些都是嵌入式设备。

由于专门执行特定任务,嵌入式设备具有广泛的外形尺寸以适应各种任务需要,并且可能具有其他机械部件(如洗衣机)或者甚至具有其他嵌入式系统(如汽车)。

由于嵌入式设备是专门从事特定工作的,所以尽管能力比通用的计算机低,但它们可以比通用计算机系统更可靠,更有效地完成这些任务。例如,控制汽车制动器的嵌入式计算机可以保证它能够按照正确的间隔释放并激活制动器,以防止失去控制(这是实时系统的一个例子)。运行通用操作系统的通用计算机可以执行相同的功能,但不能保证需要多长时间来控制制动器。事实上,你可以用它来观看视频,但是在冰冷的道路上行驶时它却无济于事。

手机历来被认为是嵌入式设备,因为它们是高度专业化的设备。现代智能手机在可以为用户做的事情方面更像通用计算机,因为有许多方式可以通过应用程序来扩展其功能。

嵌入式系统可能需要满足比通用计算机更严格的操作准则,特别是如果它们位于无法访问的地方或者需要控制安全关键的系统时。他们可能需要在恶劣的环境条件下工作(例如油井下),可以需要节省电力以用一个微小的电池(如环境传感器)来运行多年,可以运行多年而无故障(如防锁死的汽车制动器或者核反应堆),并且可能在不可能进行人为干预时(如在海底电缆中)从故障中恢复过来。它们通常也是我们希望建立并且很大程度上忘记的设备,例如家用锅炉/熔炉,我们不想要定期维护或者重新启动这些设备。图2,图3和图4全部展示了嵌入式设备的示例。

图2、 Nest的恒温器

图2、 Nest的恒温器了解家庭居民如何手动设置加热,使用运动和光传感器来检测家庭何时被占用,并使用此数据优化加热计划和设置; 可以在设备上或者通过智能手机应用程序和Web网络服务进行控制(图片来源:Nest(https://nest.com/))

图3、Withings的智能身体分析仪浴室秤

图3、Withings的智能身体分析仪浴室秤通过WiFi将重量读数传输到互联网服务器中,供用户使用智能手机应用程序跟踪自己的体重(图片来源:Withings(
https://www.withings.com/us/en/products/home));

图4、 Nabaztag

图4、 Nabaztag - 最早的消费者IoT设备之一 - 是一种兔形环境设备,可以从Internet服务中读取电子邮件和信息(图片来源:Rama(http://nabaztag.com/))

在物联网环境中,嵌入式设备如连接的门锁或者灯开关通常是与物理世界交互的系统的一部分,通过传感器(如运动检测器)收集数据和/或产生物理动作。

嵌入式设备可能具有板载用户交互功能,例如Nest的温控器具有屏幕和可以旋转以选择/滚动并按下以选择的按钮。用户可以对设备进行温度调节,甚至设置调度计划。但用户交互通常至少部分地由系统中的其他设备来处理。 Tado加热控制器(见图5)具有非常有限的板载用户输入/输出功能:大多数互动由智能手机应用程序处理。 请注意,没有输入/输出功能的嵌入式设备在出现问题时除了停止工作外将无法提供反馈。如果是这种情况,您需要确保系统可以使用其他设备(如网络或者智能手机应用程序或者短信)来告诉用户有问题,并指导他们进行修复。

嵌入式设备可以直接连接到互联网中(正如Nest控制器通过WiFi)。它们也可以通过智能手机间接连接(像许多可穿戴设备所做的那样,见图6)或者Hub/网关设备(许多家庭自动化系统都是这样做的,如图7所示)。

图5、Tado加热控制器具有有限的设备上的用户交互功能;

图5、Tado加热控制器具有有限的设备上的用户交互功能:用户通过智能手机应用程序控制设备(图片来源:Tado(https://www.tado.com/en/));

图6、Pebble的 Smartwatch连接到智能手机

图6、Pebble的 Smartwatch连接到智能手机以在手腕上显示应用程序app的通知;它还可以运行自己的应用程序,如显示Evernote笔记(图片来源:Pebble(https://www.pebble.com/ 或者
https://www.britishgas.co.uk/smart-home/hive.html))

图7、Hive的恒温器

图7、Hive的恒温器可以通过移动和web网络应用程序进行远程控制;它通过专用网关设备连接到互联网(图中心的小设备;图片来源:British Gas(https://www.hivehome.com/))

嵌入式硬件

嵌入式系统(嵌入式设备的计算部分)具有与通用计算机一些相同的基本类型的硬件组件,例如中央处理器,存储器和外围设备(尽管这些组件可以集成到称为微控制器(microcontroller)的单个芯片上,而在多功能计算机中它们往往是分离的部件)。

微控制器的计算能力远低于多用途计算机的计算能力(通常只有几KB的存储器和几MHz范围内的处理器时钟速度),但是它们被优化以执行特定的任务,例如控制汽车上的防抱死制动器或实现 缝纫机的功能,并以非常有限的成本预算,功耗和空间来实现这一点。

在一些物联网论坛中,您可能会经常听到用来设计原型和构建IoT设备时所使用的一些常见的微控制器/系统的名称,如Arduino(见图8,https://www.arduino.cc/),Beaglebone(
http://beagleboard.org/bone),Electric Imp(https://electricimp.com/), Raspberry Pi(
https://www.raspberrypi.org/),以及ARM mBed(
https://www.mbed.com/zh-cn/)等。

图8、Arduino

图8、Arduino是IoT原型设计中所使用的广受欢迎的微控制器,它旨在为新手提供硬件原型设计;本图片显示了用于创建混色灯光的Arduino Uno系统(图片来源:https://www.arduino.cc/)

其中有一些嵌入式硬件系统被设计为“开放”的系统:使用开源软件和硬件。您将获得工作示例来帮助您走出困境,但如果需要的话,您也可以将其修改为裸机。而有些嵌入式硬件系统(例如Electric Imp)是“封闭的” - 它们支持开箱即用,但不允许您访问其内部的工作区。它们可能更方便使用,但是您却不能修改它们。

嵌入式软件

用于嵌入式系统中的软件旨在有效地利用有限的资源。一个简单的设备可能只有一个小的固定功能的程序(即固件(firmware))就足以使系统工作。这些软件存储在非易失性存储器(即当设备断电后不会丢失信息的存储器)如Flash或ROM等中。如果要更改设备的工作方式,则需要重写固件(参见图9)。 (Flash可以被重写,但ROM却不能,所以有些设备可能会有无法升级的固件)。

图9、一些惠而浦的洗衣机设备具有USB端口

图9、一些惠而浦的洗衣机设备具有USB端口,这使得用户能够升级固件并添加新的洗涤程序(图片来源:Whirlpool(
https://www.whirlpool.com/))

更复杂的设备可能具有专业的嵌入式操作系统并且能够运行多个程序,就像台式机操作系统可以用来运行应用程序一样。例如,如果不同的应用程序可能同时需要系统资源如处理器或网络,则操作系统可以管理它们对系统资源的访问。操作系统还提供了更改设备功能的灵活性,而无需重新安装所有软件。使用VxWorks,QNX和RTLinux等实时操作系统用来进行时间敏感的处理。许多类型的系统可能需要实时的操作系统,从航天器到机器人再到WiFi接入点等(见图10)。甚至有一些专门用于嵌入式设备的通用操作系统的特别版本,如Windows Embedded和各种各样的Linux。操作系统通常需要更多的CPU和功耗来运行固件。

图10、美国宇航局的Curiosity Rover和苹果公司的Airport Extreme

图10、美国宇航局的火星科学实验室Curiosity Rover和苹果公司的Airport Extreme一样使用的都是VxWorks实时操作系统(参见:
https://www.nasa.gov/mission_pages/msl/msl5things20100916.html;和
https://www.apple.com/airport-extreme/);

互连传感器

互连传感器是用于从物理世界捕获数据并将其传送到网络服务中的小型嵌入式设备。虽然技术上是一类嵌入式设备,但它们往往以物联网的一部分以不同的方式来使用和体验。他们通常没有板载用户输入或输出功能。所以没有旋钮或按钮,知道他们在做什么的唯一的方式是通过另外一个设备如智能手机上的显示屏。传感器往往相当小,因此设备本身通常不太可见,对用户的体验不太突出。 对于这类设备的UX(用户体验)的重点不在设备上,而是在捕获的数据和数据所支持的服务上(参见图11)。

图11、NetAtmo气象台传感器

图11、NetAtmo气象台传感器测量温度,湿度,空气质量和大气压力;这类传感器上没有板载用户交互功能,但可以通过智能手机或网络应用程序来查看数据(图片来源:NetAtmo(
https://weathermap.netatmo.com/))

它们通常部署在具有多个传感器的网络中(其中它们自己可以称为“传感器节点”)。诸如大规模空气质量传感器网络的例子可以具有数百个或者数千个节点;较小规模的示例可能是一组家庭报警用的运动/接触传感器。在某些情况下,单个传感器也可能已经是实用的,例如Proteus体内药物传感器,它可用于检测患者是否服用了药物。

互连传感器通常包含足够的板载计算来收集数据并通过网络传输数据。这可能意味着它们的非常基本的处理单元具有非常有限的存储器和计算能力,通信收发器和电池或者其它能源(例如,来自环境的能量收集,例如太阳能或者风能)。通信可以是到网关的低功率无线局域网(WLAN)连接,或者经由蜂窝网络到Internet的高功率连接。它通常没有设备上的用户界面(家庭报警传感器可能有一个LED来指示它何时运行和/或连接到了网络)。可能通过网络将简单的指令传递给传感器(例如,发送控制读取频率的指令),或者传感器只能将数据推送到网络,并且可能无法接收指令(参见图12)。

图12、Proteus的智能药丸包含一个微小的传感器

图12、Proteus的智能药丸包含一个微小的传感器 - 它没有电池,但是可以通过与胃酸接触来激活,将一个小的传输发送到支持蓝牙的皮肤贴片上,反过来又连接到手机上,并通过互联网服务来亲自通知亲戚或者医生药片是否已经服用(图片来源:Proteus Health(http://www.proteus.com/))

能量是大多数传感器节点特别宝贵的资源,必须尽可能的保守使用。

在网络中部署传感器的地方,网络被设计即使个体节点出现故障或丢失连接,尽管数据可能会丢失但整个网络将继续运行。任何IoT(物联网)系统的UX(用户体验)设计必须能够应对丢失数据点。例如,使用传感器来监视道路上的交通流动的系统不需要每个数据点的数据来计算交通流动的速度。

被动跟踪的对象(objects)

“事物(Thing)”可以在互联网(Internet)上有一个简单的存在,而实际上没有Internet连接。被动跟踪的对象具有与在线的信息相关联的唯一身份,但它们本身并不连接到Internet。

被动跟踪技术:

RFID和NFC

可以通过射频识别(RFID)或快速响应(QR:quick response)编码来识别简单的对象(objects),根本不需要任何板载计算。此唯一ID允许用户在线访问有关对象(objects)的信息。

在数据存储方面,RFID有两种类型:

只读RFID标签

这些标签只有足够的存储空间用于存储唯一识别的代码(unique identifying number),它与可能在Internet上的数据库中更详细的产品信息相关联。如果要更改任何的产品信息,则必须在数据库中执行此操作,因为您无法重写标签上的数据(参见图13)。

可读/写标签

这些标签可以用更改的信息来重写,因此您不一定需要访问Internet来从标签中检索到有意义的信息。

RFID标签可以在不同的射频频率上工作。较高频率的标签能够在较远的范围内传输,较低频标签可在较短的范围内传输。作为有明确的用户交互的结果,例如刷卡智能卡或扫描产品标签(见图14),此时标签的读取范围更短可能会合适些。因为不希望重复读取相同的标签,或者意外地读取另一个附近的标签。更长的范围可能更适合于在更大的区域跟踪一些对象。

RFID通常用于库存管理,以跟踪商店和供应商的库存水平。例如,英国百货公司马克斯和斯潘塞(Marks and Spencer)是采用RFID来跟踪库存的早期先驱,用于跟踪每个商店中每个商品的数量,目的是将供应与客户的需求匹配起来。

图13、在宠物ID芯片中应用的只读RFID标签;

图14、伦敦的Oyster(牡蛎)旅行卡使用短程读/写RFID来存储存储在卡上的现金或者票据的本地信息;

RFID也常用于非接触式票务和付款,例如借记卡和信用卡。迪斯尼主题公园发行RFID门票和腕带,游客可以刷卡进入景点(参见图15)。门票可以存储有关预订景点的数据,并跟踪公园周围游客的动态,帮助迪士尼更好地了解游客行为。

图15、迪士尼的MagicBand腕带,可以当作检票进入景点,也可用于支付在公园的购买活动,可以帮助迪斯尼更好地了解游客的行为(参见:
https://disneyworld.disney.go.com/plan/my-disney-experience/bands-cards/);

近场通信(NFC)使用与一些较短距离的RFID标签相同的标准,但是它的标准在演变。支持NFC的设备(例如智能电话)既可以像RFID标签(可以由读取器读取)也可以表现得像读取器一样。 RFID使用许多不同的数据格式,因此不同的RFID设备不一定能够互操作。 NFC的一个主要优点是它提供了一种单一的通用数据格式,即NFC数据交换格式(即NDEF:NFC Data Exchange Format),可以允许各种支持NFC的设备和标签共享数据。

支持NFC的智能手机通常用于来自移动设备的非接触式付款。 NFC允许设备之间进行双向通信,并且IoT(物联网)的一个潜在的有趣的应用是使得与其他设备之间更容易地建立起网络连接。 Android Beam使用NFC简化在两台设备之间设置临时蓝牙连接的过程,以便共享照片或者联系人的数据(参见图16)。

图16、三星S Beam使用NFC在智能手机之间建立WiFi连接(图片来源:Samsung(
http://www.samsung.com/cn/support/skp/faq/1069423)

QR码是给物理设备提供一种数字身份的非常基本的方式。它们是些二维条形码,可以由能够提取图像中的编码数据的任何成像设备如智能手机所读取。就像只读RFID标签一样,QR码依赖于被映射到数据库中更广泛的产品信息的代码。

在消费者环境中使用的QR码的例子是由英国代理商Evrythng为Diageo饮料公司创建的+More平台(见图17)。他们为每瓶饮料分配一个唯一的标识符,可以通过扫描打印在标签上QR码来访问。

图17、帝亚吉欧(Diageo)的威士忌( whisky)赠品活动允许消费者每瓶发送一条个人视频信息; 每个瓶子都标有唯一的QR码,扫描代码后播放视频(图片来源:EVRYRYTHING(
https://evrythng.com/platform/))

信标(Beacons)

信标(如Apple iBeacons)是另一种被动跟踪对象。它们用于提供非常精确的位置信息。信标使用蓝牙低能量广播可以由附近的蓝牙设备(如智能手机)接收的唯一ID。手机在在线数据库中查找信标的ID,该数据库提供相应的产品信息,例如信标的拥有人,以及它的位置在哪里。信标和手机之间的无线电信号的强弱程度有助于确定手机距信标的距离。手机上支持信标功能的应用程序可以使用该信息来提供上下文环境相关的功能。例如,进入你喜欢的百货商店可能会触发您的手机上的忠诚度应用程序来通知您有特别优惠或折扣券(见图18)。穿过杂货店的清洁产品通道中的信标时可能会触发购物清单应用程序,提醒您购买洗碗机洗涤剂。或者安装您的车上的信标(Beacons)可能会触发您的手机提出解锁汽车的选项。

图18、触发智能手机应用程序以显示特价的Estimote信标(图片来源:Estimote(http://estimote.com/))

信标(Beacons)概念的一个变体是Google的物理网络项目(Physical Web project)。由设计师斯科特·詹森(Scott Jenson)领衔的这个实验项目旨在将需求上的互动交给物理世界,而不需要用户在他们的移动设备上安装特定的应用程序;该项目不是广播一个必须查找的简单ID,或需要触发一个应用程序,物理Web信标广播的是一个网址。用户不需要下载专门的应用程序,只需要走到任何设备跟前,并通过手机的浏览器进行交互。正如该项目网页引用的例子所说巴士汽车站可以分享到达的信息,停车场和自动售货机都可以按照相同的方式支付(见图19),租车公司可以广播注册页面,允许用户注册并快速开车走人。

图19、物理网络(Physical Web)设备广播的是用户可以访问其信息或者控件的网址

参考书目:《Designing Connected Products: UX for the Consumer Internet of Things》,下载地址:
http://www.cloudioe.com/resources_details.aspx?id=7140

(完)