这篇文章主要是结合国外IBM Bluemix大牛Mike Spisak的物联网样例来和大家一起学习如果快速建立一个可穿戴设备应用, 笔者也准备在熟悉了样例之后自己做个手环的应用:)
Bluemix的样例中包含了将一个启用了蓝牙的可穿戴设备工具包连接到一个混合移动应用程序,并将传感器数据发送到 IBM Internet of Things Foundation (IoT Foundation) 云中的基本过程。在传感器数据到达 IoT Foundation 后,可以使用 IBM Bluemix 根据收集到的传感器数据来触发各种流程。
基本方法
下图展示了一种可用于设计与云通信的可穿戴设备应用程序的典型架构方法。跟踪可穿戴设备有许多跟踪和报告个人行为的特性 — 一般通过与智能电话或平板电脑设备通信来显示状态和报告数据。随着可穿戴设备的技术和市场的不断增加,将此数据传输到其他服务的需求也在增长。此架构方法只是用于将来自可穿戴设备的传感器数据传输到云中来处理的多种方法之一。
可穿戴设备硬件选择
今的用户可穿戴设备市场正在蓬勃发展,存在不同类型的设备。通常,从可穿戴设备到智能设备(比如智能电话或平板电脑)的低功耗通信的方法,可以准确地检测用户每天可能参与的各种类型的活动。设备数据收集的质量和准确性高度依赖于设备内包含的传感器的数量和类型。这种依赖性为可穿戴设备开发人员带来了棘手的平衡工作,他们必需平衡形状规格、处理能力、电池寿命和有吸引力的用户界面。
WICED Sense Development Kit 简介
从廉价和 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 可穿戴设备连接到一个混合移动应用程序。
准备工作
您需要准备一些东西,才能继续开展的工作:
1. 一个 Broadcom WICED Sense Development Kit。可使用其他传感器标记工具包,但本教程主要使用 WICED Sense。
2. Apache Cordova 3.6.3 或更高版本。
3. 一个具有 BLE 功能的智能设备(智能电话或平板电脑)。本教程使用了一个运行 Android 4.4 的 4. Android 平板电脑(拥有 BLE 功能)。
4.一个 IBM Bluemix 帐户,以便您可使用 IBM IoT Foundation 和 Node-Red。您可以使用免费的 Bluemix 试用版。
将您的可穿戴设备与一个混合应用程序相连接在一起
首先,为了读取从您的 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 文件夹中。
这个混合应用程序组织为以下文件和文件夹:
index.html:主要应用程序 HTML 文件。它控制了其他 JavaScript 库文件的加载并提供 UI。
common.css:包含应用程序需要的所有级联样式表 (CSS) 标记。
lib/easy-ble.js:用于简化与 BLE 设备的连接的 JavaScript 库。由 Evothings 提供。
lib/mqttws31.js:该 JavaScript 库使客户端能够使用 MQTT V3.1 协议连接到一个支持 MQTT 的消息服务器。您可以使用它连接到 IBM IoT Foundation。
lib/WICED-Sense.js:用于与 WICED Sense 工具包连接的 JavaScript 库。
lib/iotFoundation.js:该 JavaScript 库简化了与 MQTT 协议的交互和与 IBM IoT Foundation 的连接。
在开始自定义混合应用程序之前,请转到 IBM Bluemix,以便可以注册新的 WICED Sense 可穿戴设备。通过这么做,WICED Sense 设备能够在连接到混合应用程序后将传感器数据发送到云。
一步一步学习, 梦想着自己的小产品, 下一篇 Bluemix云平台实践:构建可穿戴应用(2)中我们继续