Azure IoT工具介绍
分类: Azure物联网 ◆ 标签: #Azure # #IoT Hub ◆ 发布于: 2023-06-13 20:30:54

前面的一些文章主要是学习了Azure IoT Hub
中的基本概念,那么从这一节开始我们会持续的学习Azure IoT
的各种工具和以.Net
为工具的开发教程以及一些思想以及架构。本节来学习基本的工具使用,可以快速的帮助用户检验和判断问题。
Azure IoT Hub
官方除了Azure IoT Hub Portal
之外还提供两类工具:
Azure CLi IoT
扩展(以及PowerShell的模块,不过推荐使用Azure CLi的扩展)Azure IoT Explorer
Azure Cli
IoT 扩展
Azure Cli
能够跨平台使用,安装Azure Cli
以及设置Azure Cli
, 您可以参考文档:
- 安装和更新
Azure Cli
: https://docs.azure.cn/zh-cn/cli/install-azure-cli?view=azure-cli-latest - 设置
Azure Cli
: https://www.azuredeveloper.cn/article/azure-tutorial-azure-cli-introduction
基本的设置Azure Cli
的步骤如下:
az cloud list -o table # 显示cli支持的云环境 az cloud set --name AzureChinaCloud # 切换到默认中国的Azure 云环境 az login # 登录云环境 az account set --subscription [Your Subscrpiton id] # 设置默认的订阅, 之后查询和创建的资源都在这个订阅里了。
至此就已经设置好了Azure Cli
的环境了,如果需要操作IoT
我们还需要安装Azure Cli
的扩展。
az extension list-available --output table # 列出目前支持的所有扩展
需要注意的是目前新版本的iot扩展名是: azure-iot
, 如果有老版本的iot扩展还在,先移除老版本的iot扩展:
az extension list # 列出已安装的扩展 az extension remove --name azure-cli-iot-ext #移除老版本的IoT 扩展
使用如下的命令安装新版的IoT 扩展:
az extension add --name azure-iot
支持Azure Cli
的ioT 扩展安装成功了。
Azure Cli IoT
扩展的基本使用方法
首先该工具可以用来创建IoT
的资源,我们使用如下的步骤来创建:
az group create --name MyIoTGroupByCli --location chinaeast2 # 创建一个资源组 az iot hub create --resource-group MyIoTGroupByCli --name MyIoTHubByCli # 创建一个IoT Hub的资源
创建设备以及监控设备
在IoT Hub创建成功之后,我们可以使用如下的命令创建一个IoT
设备:
az iot hub device-identity create --device-id simDevice --hub-name MyIoTHubByCli
创建好设备之后,我们可以直接使用Azure Cli
IoT 扩展来模拟一个设备,并向IoT Hub
发送遥测数据。
az iot device simulate -d simDevice -n MyIoTHubByCli
然后你可以看到输出如下:
C:\Users\test>az iot device simulate -d simDevice -n MyIoTHubByCli This command is experimental and under development. Reference and support levels: https://aka.ms/CLI_refstatus Device simulation in progress: 10%|######## | 10/100 [00:30<04:33, 3.04s/it]
这个时候如果要检测一下该设备,可以打开另外一个控制台,并运行下面的命令:
az iot hub monitor-events --output table --hub-name MyIoTHubByCli
然后你可以看到如下的输出:
C:\Users\test>az iot hub monitor-events --output table --hub-name MyIoTHubByCli Dependency update (uamqp 1.2) required for IoT extension version: 0.11.0. Continue? (y/n) -> y Updating required dependency... Update complete. Executing command... Starting event monitor, use ctrl-c to stop... event: component: '' interface: '' module: '' origin: simDevice payload: data: 'Ping from Az CLI IoT Extension #46' id: f54c1e7b-e83f-4c0d-a0b2-35ea14af1bbc timestamp: '2021-11-14 04:12:50.281040' event: component: '' interface: '' module: '' origin: simDevice payload: data: 'Ping from Az CLI IoT Extension #47' id: d61e6dca-bbcf-4469-a3ae-43d05fe829a8 timestamp: '2021-11-14 04:12:53.312907'
至此我们已经使用了Azure Cli
的IoT 扩展尝试了设备的链接,向IoT Hub发送了遥测数据,同时使用该扩展监控了IoT Hub的事件。同时我们可以使用该扩展工具向设备发送消息,从而用于测试链路的连通性。
使用Azure IoT扩展向设备发送消息:
我们使用一个控制台,用IoT扩展启动用一个模拟器:
az iot device simulate -d simDevice -n MyIoTHubByCli
然后在另外一个控制台,使用扩展向该设备发送消息:
az iot device c2d-message send -d simDevice --data "Hello World" --props "key0=value0;key1=value1" --hub-name MyIoTHubByCli
回到之前的控制台可以观察到:
C:\Users\test>az iot device simulate -d simDevice -n MyIoTHubByCli This command is experimental and under development. Reference and support levels: https://aka.ms/CLI_refstatus Device simulation in progress: 28%|####################### | 28/100 [01:25<03:38, 3.04s/it] C2D Message Handler [Received C2D message]: { 'Message Properties': { 'content_encoding': 'utf-8', 'key0': 'value0', 'key1': 'value1', 'message_id': '33a94cfd-ed7b-41bc-a482-88b9d6db8b46'}, 'Payload': 'Hello World', 'Topic': '/devices/simDevice/messages/devicebound'} Device simulation in progress: 36%|############################# | 36/100 [01:49<03:14, 3.05s/it]
至此,对于Azure Cli
的IoT 扩展就介绍到这里,您可以通过文档详细的学习IoT的扩展:https://docs.microsoft.com/en-us/cli/azure/azure-cli-reference-for-IoT
Azure IoT Explorer
Azure IoT Explorer
是Azure IoT
的图形化工具,关于该工具的安装您可以查看文档:https://docs.microsoft.com/zh-cn/azure/iot-fundamentals/howto-use-iot-explorer, 其实也就是下载回来安装,然后使用链接字符串链接就可以了,其他的图行化工具,照着用就好了。例如可以模拟发送遥测数据,调用直接方法,发送C2D消息,更改Device Twin
的属性等等。