在物联网 (IoT) 的演变过程中,可穿戴设备是发展最快的细分类别之一。可穿戴计算可能具有多种形式,比如手表、健康手环、眼镜,甚至是衣服。在我们生活的这个激动人心的时代里,可穿戴设备使技术能够以大型计算设备和智能电话以前无法做到的方式融入到生活中。
只有设计者的想象力才会限制可穿戴设备的潜在使用和应用。本教程介绍了将一个启用了蓝牙的可穿戴设备工具包连接到一个混合移动应用程序,并将传感器数据发送到 IBM Internet of Things Foundation (IoT Foundation) 云中的基本过程。在传感器数据到达 IoT Foundation 后,可以使用 IBM Bluemix 根据收集到的传感器数据来触发各种流程。
安全性是采用 IoT 技术时的一个关键问题,它是本系统和教程的设计的一个重要考虑因素。选择一个支持安全特性的开发和生产平台非常重要。
图 1 显示了一种可用于设计与云通信的可穿戴设备应用程序的典型架构方法。跟踪可穿戴设备有许多跟踪和报告个人行为的特性 — 一般通过与智能电话或平板电脑设备通信来显示状态和报告数据。随着可穿戴设备的技术和市场的不断增加,将此数据传输到其他服务的需求也在增长。此架构方法只是用于将来自可穿戴设备的传感器数据传输到云中来处理的多种方法之一。
图 1. 可穿戴设备与云的通信架构
回页首
如今的用户可穿戴设备市场正在蓬勃发展,存在不同类型的设备。通常,从可穿戴设备到智能设备(比如智能电话或平板电脑)的低功耗通信的方法,可以准确地检测用户每天可能参与的各种类型的活动。设备数据收集的质量和准确性高度依赖于设备内包含的传感器的数量和类型。这种依赖性为可穿戴设备开发人员带来了棘手的平衡工作,他们必需平衡形状规格、处理能力、电池寿命和有吸引力的用户界面。
从廉价和 DIY 角度看,来自 Broadcom 的 WICED Sense Development Kit 是不断扩张的 IoT 世界的一个价格合理的切入点。该工具包是一种适合工程师、创建小工具的人、喜欢 DIY 的人和设计可穿戴设备用例原型的企业家的设备选择。
WICED(发音为 wicked )表示 Wireless Internet Connectivity for Embedded Devices(嵌入式设备无线互联网连接),该工具包包含一个蓝牙低功耗 (BLE) 主板和 5 个传感器(电子罗盘、压力、湿度和温度、陀螺仪和加速计),使用了一个 2032 纽扣电池进行供电。主板、传感器和电池封装在一个坚固的塑料盒子中(参见图 2)。这些特征(与一种小形状规格相结合)使得 WICED Sense 工具包成为了一种有吸引力的试验选择。出于本教程的目的,我们使用 WICED Sense 工具包来充当您的 可穿戴设备 。接下来,查看如何将 WICED Sense 可穿戴设备连接到一个混合移动应用程序。
图 2. 来自 Broadcom 的 WICED Sense Development Kit
回页首
您需要准备一些东西,才能继续阅读本教程:
参见下载,获取本教程的源代码。
回页首
首先,为了读取从您的 WICED Sense 可穿戴设备上的传感器收集的数据,可以使用 Apache Cordova 创建一个混合应用程序。该混合应用程序在您启用了 BLE 的智能设备上运行,并与 WICED Sense 工具包相连接。完成连接后,您的混合应用程序可从 WICED Sense 工具包上的传感器读取所有读数,并将它们发送到 IoT Foundation 云。
下载混合应用程序源代码,并将这个压缩文件解压到您选择的一个文件夹中(例如 WICED-Sense-IoT)。您所需要的工件都已提供,除了两个文件: easy-ble.js 和 mqttws31.js ;现在,从这里提供的链接下载它们。将 easy-ble.js 和 mqttws31.js 放在应用程序的 lib 文件夹中。
这个混合应用程序组织为以下文件和文件夹:
在开始自定义混合应用程序之前,请转到 IBM Bluemix,以便可以注册新的 WICED Sense 可穿戴设备。通过这么做,WICED Sense 设备能够在连接到混合应用程序后将传感器数据发送到云。
访问 Bluemix ,如果还没有帐户,则应创建一个免费试用帐户。登录到 Bluemix。现在设置一个新的 Node-RED 应用程序,然后您就可以建立一个 IoT Foundation 服务:
developerWorks-App
)并单击 CREATE 。 您的应用程序仪表板现在类似于图 3。
图 3. Bluemix 仪表板
连接已注册的设备 包含针对 IoT Foundation 来改进您自己的设备的更多信息。
借助绑定到您的 Bluemix 应用程序的物联网服务,您可以轻松触发来自一个设备的数据流。但是,您首先必须注册自己的 WICED Sense 设备。截至撰写本文时,WICED Sense 设备不是 IoT Foundation 中正式的 “秘诀”,所以您需要 即兴表演 ,自行添加该设备:
WICED-Sense
。 8675309
)。以后会需要使用此标识符,所以一定要记下它。单击 Continue 。 回页首
目前为止,您已经:
现在,可以将注意力返回到您的混合应用程序。首先将一些您从 IoT Foundation 生成的值插入到混合应用程序中,以便它们可彼此通信:
CLIENT_ID
、 ORG_ID
、 IOT_URL
的第一部分和 IOT_PASS
。 读取和处理 WICED Sense 可穿戴设备传感器数据的最后一个任务是,构建您的混合应用程序,将它部署到智能设备上并进行测试。您可以使用 Apache Cordova 创建和实现许多东西。出于本教程的目的,我仅介绍如何构建该应用程序。
在安装 Apache Cordova 后,打开一个命令窗口并执行以下步骤:
cordova create project-folder app-identifier app-name
(例如: cordova create dw-project com.developerWorks.wiced WicedSenseApp
)。 cd dw-project
cordova plugin add com.evothings.ble
cordova platform add ios cordova build ios或
cordova platform add android Type: cordova build android
您现在有一个在具有 BLE 功能的智能设备上运行的混合应用程序了,而且可以将该应用程序绑定到您的 WICED Sense 工具包。在智能设备上运行该混合应用程序时,它看起来类似于图 4。
图 4. 混合应用程序
回页首
运行混合应用程序后,可以启动您的 WICED Sense 标签。在智能设备检测到 WICED Sense 标签后,就会看到应用程序的 Status 显示 Sensors online 。该混合应用程序还使用了智能设备的网络连接,打开了一个与 IBM IoT Foundation 的连接。最后,WICED Sense 传感器数据在屏幕上显示为一系列数字。在您移动 WICED Sense 标签时,这些数字也会发生改变。
随着新一代的可穿戴传感设备与智能设备的进一步结合,快速管理生成的大量传感器数据成为了一个设计考虑因素。处理和管理此数据,以便得到准确的、有意义的信息的模型,这些正在改变我们以前所认识的云计算。智能设备可在混合应用程序中获得更多智慧,有助于对各种类型的数据进行编组,最终过滤和组合数据,生成可传输到云来进一步处理的 “信息”。
该混合应用程序已被编码:在它感知到 WICED Sense 标签在移动时,就会向 IoT Foundation 发送一个 移动 事件。移动被定义为 WICED Sense 标签持续 6 秒以上的不断移动。作为测试,在您的 WICED Sense 标签中装上电池。当混合应用程序检测到它时,在您的手中移动 WICED Sense 标签六七秒。在该应用程序中,可以观察到 Are You Moving? 状态从 false 更改为 true 。
随着移动状态切换为 true,一个移动事件就会发送到 IoT Foundation Cloud。现在,拿着该 WICED Sense 标签在六七秒内尽可能保持静止,可以观察到 Are You Moving? 状态被还原回 false 。移动状态切换回 false 后,会向 IoT Foundation 云发送另一个事件。重复这些操作,以便继续向 IoT Foundation 发送事件。要查看这些事件,可以查看 IoT Foundation Devices 仪表板(如图 5 所示),从您的 IBM Bluemix 仪表板访问它。
图 5. IoT Foundation Devices 视图
回页首
现在您已拥有传递到 IoT Foundation 的传感器数据,您可轻松地创建一个 Node-RED 应用程序来处理传入的移动数据。例如,您可发送一个 SMS 提醒,将数据写入到数据库,或者发起任意多个其他操作。
此外,您可以更改该代码,以便在 WICED Sense 工具包中的不同传感器上运行。本教程使用了陀螺仪来检测移动。您还可以使用本教程的代码从其他传感器(比如温度或湿度传感器)获取读数,并根据这些读数来触发事件。
回页首
描述 | 名字 | 大小 |
---|---|---|
本教程的源代码 | WICED-Sense-dW.zip | 8KB |