MQTT 发布到 Microsoft Azure
本教程将引导您完成在 Microsoft Azure* 中设置设备,直到查看您的数据(通过 MQTT 发送)。
编程语言 | C++ (Arduino*) |
技能水平 | 中级 |
完成时间 | 5 分钟 |
所需硬件 | UP Squared* Grove* IoT 开发套件 |
目标操作系统 | Ubuntu 16.04 |
本教程将引导您完成在 Microsoft Azure* 中设置设备,直到查看您的数据(通过 MQTT 发送)。该草图设置为从 Grove* 旋转角度传感器(按给定间隔)读取数据并将其发送到 Microsoft Azure* 云平台。查看数据的最后一步是在 Microsoft* 提供的 Device Explorer* 工具中完成。 它仅在 Windows* 上受支持,有关如何在其他平台上使用 iot-hubexplorer node.js 命令行工具的说明,请参见 https://github.com/Azure/iothub-explorer。
您将学到什么
- 如何设置 IoT 中心
- 如何获取设备的凭据并将其输入到 Arduino Create* 的“Secrets”选项卡中
- 如何使用 Device Explorer 工具查看您的数据
收集您的材料
- UP Squared* 开发板
- GrovePi+* 开发板
- Grove* 旋转角度传感器
软件依赖项
- libcrypto
- libssl
如果您使用的是 UP Squared* Grove* IoT 开发套件附带的操作系统,则这些库将已安装。 否则,您需要通过 apt-get 安装它们。
$sudo apt-get install libssl-dev
检查它们是否已安装
$ldconfig –p | grep libssl
$ldd $(which ssh) | grep libcrypto
插入您的传感器
将 Grove 旋转角度传感器连接到 Grove Pi+ 上的引脚 A0
创建帐户
如果您没有 Microsoft Azure 帐户,请注册免费试用版 https://azure.microsoft.com/en-us/free/
创建 IoT Hub
您需要一个 IoT 中心来启用 Microsoft Azure 和您的设备之间的通信。 创建 IoT 中心最简单的方法是通过 Microsoft Azure 门户。 按照 https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-create-through-portal 中的步骤进行操作。
该门户位于 https://portal.azure.com
- 单击“新建”并搜索“iot”
- 为您的中心命名一个唯一的名称,例如 my-iot-hub###,其中 ### 是某个数字。 建议使用 IoT 中心创建的默认设置。
创建完成后,您应该会在仪表板中看到它。
创建共享访问策略
- 打开您的中心,然后在设置下选择共享访问策略。
- 点击添加。
- 选择读取、服务连接和设备连接权限。给它一个名称,例如“my-policy”。
- 您创建的策略现在应该出现在策略下。
- 单击您的策略并复制连接字符串 - 主密钥(也称为中心连接字符串)。您稍后将需要它。
设置设备资源管理器
使用 Device Explorer 工具或 iot-hubexplorer node.js 命令行工具(在 Windows、macOS 和 Linux* 上受支持)查看您的数据。
本教程将引导您完成在 Windows 上使用 Device Explorer GUI。 有关如何使用 iot-hubexplorer node.js 命令行工具的说明,请参见 https://github.com/Azure/iothub-explorer。
-
从 https://github.com/Azure/azure-iot-sdk-csharp/releases 下载并安装 SetupDeviceExplorer.msi。
-
将您从上面第 5 步复制的连接字符串 - 主密钥输入到应用程序配置选项卡中的 IoT 中心连接字符串字段中。 然后单击更新。您应该会看到一个弹出窗口,确认它已成功。
- 右键单击您刚刚创建的设备,然后选择复制所选设备的连接字符串
获取代码
- 打开示例 Libraries>AZURE IOT DEVICE SDK>Examples>ClientMqtt
- 将上面第 7 步中的连接字符串复制到草图的 Secret 选项卡中。
- 构建并上传草图。
查看数据
转到数据选项卡,然后单击监视。 您应该看到一条消息说“正在接收事件”或类似内容。 这是您在目标上运行应用程序后将看到消息的地方。