Intel® IoT 代码示例教程:居家摔倒追踪器
这款居家跌倒追踪器应用程序是使用 Intel® 物联网 (IoT) 开发人员套件、Intel® Edison 开发平台、云平台、API 及其他技术创建的一系列 Intel® 物联网 (IoT) 操作指南代码示例练习的一部分。
获取新的 Intel® 物联网 (IoT) 开发人员套件,这是一个完整的软硬件解决方案,使开发人员能够使用 Intel® Galileo 和 Intel® Edison 主板创建令人兴奋的新解决方案。请访问 Intel® 物联网 (IoT) 开发人员中心。
引言
这款居家跌倒追踪器应用程序是使用 Intel® 物联网 (IoT) 开发人员套件、Intel® Edison 开发平台、云平台、API 及其他技术创建的一系列 Intel® 物联网 (IoT) 操作指南代码示例练习的一部分。
通过此练习,开发人员将学习如何:
- 连接英特尔® Edison 开发平台,这是一种专为原型设计和生产物联网和可穿戴计算产品而设计的计算平台。
- 使用 Intel® IoT Developer Kit 中的 MRAA 和 UPM 与 Intel® Edison 平台 IO 和传感器存储库进行交互,Intel® IoT Developer Kit 是一个完整的硬件和软件解决方案,可帮助开发者探索物联网并实施创新项目。
- 在 Intel® XDK IoT Edition 中运行此代码示例,这是一个用于创建与传感器和执行器交互的应用程序的 IDE,可帮助快速开始为 Intel® Edison 主板或 Intel® Galileo 主板开发软件。
- 设置一个 Web 应用程序服务器,使用 Microsoft 的 Azure* Redis Cache 来存储跌倒数据,以及用于连接物联网解决方案的云服务,包括数据分析、机器学习和各种生产力工具,以简化将传感器连接到云并快速启动您的物联网项目。
- 调用 Twilio* API 的服务以发送短信。
它是什么
使用 Intel® Edison 主板,此项目可让您创建一个居家跌倒追踪手环,该手环可以
- 使用加速度计监测可能的跌倒。
- 检测到可能的跌倒时发送短信警报。
- 使用 OLED 显示屏显示已派人前来的信息。
- 使用基于云的数据存储跟踪检测到的设备。
工作原理
居家跌倒追踪手环通过加速度计检测潜在跌倒。如果检测到可能的跌倒,它将通过 Twilio* 发送短信警报,并告知用户其护理人员已收到通知,且援助正在途中。
或者,可以使用您自己的 Microsoft Azure* 帐户中运行的 Intel® IoT 示例 Data.store 来存储所有数据。
硬件要求
包含 Xadow* 入门套件
- Intel® Edison 主板,带 Xadow 扩展板
- Xadow - OLED 显示屏
- Xadow - 三轴加速度计
软件要求
- 英特尔® XDK 物联网版
- Microsoft Azure* 帐户
- Twilio* 帐户
如何设置
首先,使用 Git* 将 Intel 物联网 (IoT) 操作指南代码示例 存储库克隆到您的计算机,如下所示:
$ git clone https://github.com/intel-iot-devkit/how-to-code-samples.git
要下载 .zip 文件,请在您的 Web 浏览器中访问 https://github.com/intel-iot-devkit/how-to-code-samples,然后在右侧单击下载 ZIP 按钮。下载 .zip 文件后,将其解压缩,并使用此示例目录中的文件。
将程序添加到 Intel® XDK IoT Edition
在 Intel® XDK IoT Edition 中,选择 导入您的 Node.js 项目
然后,导航到示例项目所在的目录,并选择它
您需要从计算机连接到您的 Intel® Edison 板才能将其代码发送到板上。
单击左下角的 IoT 设备 菜单。如果您的 Intel® Edison 板被自动识别,请选择它。
否则,请选择 手动添加连接。在 地址 字段中,键入 192.168.2.15
。在 端口 字段中,键入 58888
。单击 连接 以保存您的连接。
在 Intel® Edison 板上手动安装程序
或者,您可以手动设置 Intel® Edison 板上的代码。
在建立到该板的 SSH 连接后,克隆 Intel 物联网代码示例教程存储库到您的 Intel® Edison 板,如下所示
$ git clone https://github.com/intel-iot-devkit/how-to-code-samples.git
然后导航到包含此示例的目录。
如果您尚未在 Intel® Edison 主板上安装 Git*,请建立到该主板的 SSH 连接并运行以下命令:
$ opkg install git
连接 Xadow* 传感器
您需要将 Xadow* 扩展板连接到 Intel® Edison 才能插入所有 Xadow 设备。
- 将 Xadow 连接器的一端插入 Xadow - OLED 显示屏,然后将另一端连接到 Xadow 扩展板的其中一个侧面连接器。
- 将 Xadow 连接器的一端插入 Xadow - 三轴加速度计,然后将另一端连接到 Xadow 扩展板的其中一个侧面连接器。
手动设置 Intel® Edison 板
如果您手动在 Intel® Edison 板上运行此代码,则需要安装一些依赖项。
要获取此示例在 Intel® Edison 板上执行所需的 Node.js* 模块,请运行以下命令
npm install
Twilio* API 密钥
要选择性地发送短信,您需要注册一个账户并从 Twilio* 网站获取 API 密钥
如果没有首先获得 Twilio* API 密钥,您将无法发送短信。您仍然可以运行该示例,但没有短信功能。
通过修改 config.json
文件中的 TWILIO_ACCT_SID
和 TWILIO_AUTH_TOKEN
键,将您的 Twilio* API 密钥和身份验证令牌传递给示例程序,如下所示:
{ "TWILIO_ACCT_SID": "YOURAPIKEY", "TWILIO_AUTH_TOKEN": "YOURTOKEN" }
Microsoft Azure* 服务器设置
您还可以选择将此示例程序生成的数据存储在 Microsoft Azure*、Node.js* 和 Redis* 数据存储中部署的后端数据库中。
有关如何设置自己的云数据服务器的信息,请访问:
https://github.com/intel-iot-devkit/intel-iot-examples-datastore
配置示例
要配置该示例以发送可选短信,请从 Twilio* 网站获取 API 密钥(如上所述),然后修改 config.json
文件中的 TWILIO_ACCT_SID
和 TWILIO_AUTH_TOKEN
键,如下所示:
{ "TWILIO_ACCT_SID": "YOURAPIKEY", "TWILIO_AUTH_TOKEN": "YOURTOKEN" }
要配置该示例以使用可选的 Microsoft Azure* 数据存储,请修改 config.json
文件中的 SERVER
和 AUTH_TOKEN
键,如下所示:
{ "SERVER": "http://intel-examples.azurewebsites.net/logger/fall-detector", "AUTH_TOKEN": "s3cr3t" }
要同时配置短信和 Microsoft Azure* 数据存储,请修改 config.json
文件中的 TWILIO_ACCT_SID
、TWILIO_AUTH_TOKEN
、SERVER
和 AUTH_TOKEN
键,如下所示:
{ "TWILIO_ACCT_SID": "YOURAPIKEY", "TWILIO_AUTH_TOKEN": "YOURTOKEN", "SERVER": "http://intel-examples.azurewebsites.net/logger/fall-detector", "AUTH_TOKEN": "s3cr3t" }
使用 Intel® XDK IoT Edition 运行程序
当您准备好运行示例时,请确保已保存所有文件。
单击 上传 图标将文件上传到 Intel® Edison 板。
单击 Intel® XDK IoT Edition 底部的 运行 图标。这将会在 Intel® Edison 板上运行代码。
如果您对代码进行了更改,请单击 上传并运行。这将在 Intel® Edison 板上运行您所做的最新更改。
程序运行时,您将看到与上面类似的输出。
手动运行程序
要在 Intel® Edison 板上手动运行示例,请建立与该板的 SSH 连接并执行以下命令
node index.js
确定 Intel® Edison 板的 IP 地址
您可以通过运行以下命令来确定 Intel® Edison 板连接到的 IP 地址
ip addr show | grep wlan
您将看到类似以下的输出
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000 inet 192.168.1.13/24 brd 192.168.1.255 scope global wlan0
IP 地址显示在 inet
旁边。在上例中,IP 地址为 192.168.1.13
。
如需 Intel® 物联网 (IoT) 操作指南代码示例的完整列表,请访问 Intel® 开发人员中心。
有关此代码示例的更多详细信息,请访问 GitHub*。