练习 - 创建 Azure IoT Central 应用程序

已完成

创建 Azure IoT Central 应用程序,以便 IoT Edge 设备连接到该应用程序并从中进行管理。

回想一下,你计划在每个商店部署一个 IoT Edge 设备,以管理本地传感器并筛选发送到 Azure IoT Central 的数据。

这里将使用 Azure CLI 从“自定义应用程序”模板创建 Azure IoT Central 应用程序。 在 Azure 沙盒中运行 CLI 命令,然后转到应用程序的 Web UI。 在 Web UI 中,为 IoT Edge 设备添加设备模板来完成设置。

注意

本练习为选做练习。 若要完成本练习,需要在开始之前创建 Azure 订阅。 如果没有 Azure 帐户,或者现在不想创建帐户,则可以通读说明,以便了解所提供的信息。

下载部署清单

为 IoT Edge 设备创建设备模板时,需要在本地计算机上下载部署清单和接口定义。 若要下载这些文件,请右键单击这些链接并选择“另存为”

请记住这些文件的保存位置,因此稍后需要这些文件。

创建和配置 Azure IoT Central 应用程序

以下步骤将创建 Azure IoT Central 应用程序并生成 API 令牌,以供稍后在本模块中使用。

  1. 在 Azure Cloud Shell 中运行以下命令以生成 Azure IoT Central 应用程序的唯一名称,并将其保存在环境变量中以供稍后使用:

    APP_NAME="store-manager-$RANDOM"
    echo "Your application name is: $APP_NAME"
    

    请记下应用程序名称,以防 shell 超时和丢失环境变量。

  2. 若要在沙盒中创建 Azure IoT Central 应用程序,请在 Cloud Shell 中运行以下命令:

    az iot central app create \
    --resource-group <rgn>[sandbox resource group name]</rgn> \
    --name $APP_NAME --sku ST2 --location centralus \
    --subdomain $APP_NAME --template iotc-pnp-preview \
    --display-name 'Store Management'
    echo "You can now navigate to: https://$APP_NAME.azureiotcentral.com/edge-manifests"
    
    

    预计运行此命令需要一两分钟的时间。

  3. 在另一个浏览器标签页或窗口中,转到上一命令的输出中显示的 URL。 此 Web UI 页面用于上传 IoT Edge 部署清单:

    显示部署清单页面的屏幕截图,可在其中管理 Azure IoT Central 应用程序中的 IoT Edge 部署清单。

  4. 选择“创建 Edge 清单”,输入名称“环境传感器”,选择“上传文件”,然后浏览并选择之前下载的 EnvironmentalSensorManifest-1-4.json 文件。

  5. 选择“下一步”,然后选择“创建”以上传清单。 清单配置了三个 IoT Edge 模块:edgeAgent、edgeHub 和 SimulatedTemperatureSensor。

  6. 接下来,选择“设备模板”。 此 Web UI 页面用于创建设备模板:

    显示用于管理 Azure IoT Central 应用程序中模板的设备模板页面的屏幕截图。

  7. 依次选择“创建设备模板”、“Azure IoT Edge”磁贴和“下一页: 自定义”。

  8. 输入“环境传感器边缘设备”作为设备模板名称。 然后选择“下一步:查看”。

  9. 选择“创建”以创建设备模板。 然后,选择“自定义模型”,从空白模型着手。

上传的部署清单具有名为 SimulatedTemperatureSensor 的模块,该模块具有名为 management 的接口。 Management 接口包括 SendData 和 SendInterval 两个可写属性。 若要将此信息添加到新的设备模板,请执行以下步骤:

  1. 在设备模板页面中的“型号”部分,选择“模块”。

  2. 选择“从清单导入模块”:

    显示设备模板页面的屏幕截图,可在其中从部署清单导入模块定义。

  3. 选择“环境传感器”部署清单以导入模块。

你的设备模板现在包括带有“管理”接口的 SimulatedTemperatureSensor 模块。 该接口定义 SendData 和 SendInterval 可写属性。

部署清单不包括有关设备模块发送的遥测数据的信息。 若要启用 Azure IoT Central 为遥测数据创建可视化效果,需要添加具有所需定义的接口:

  1. 选择 SimulatedTemperatureSensor 模块,然后选择“+ 添加继承接口”。 可能需要选择省略号按钮 (...) 才能看到此选项

  2. 选择“导入接口”磁贴,然后选择之前下载的“TelemetryInterface.json”文件

    “遥测”接口将“machine”和“ambient”遥测类型定义为对象。 Machine 对象包括温度和压力遥测。 Ambient 对象包括温度和湿度遥测。 该接口还包含 timeCreated 作为“日期/时间”遥测类型。

    显示设备模板中的“遥测”接口的屏幕截图。

若要使操作员能够记录有关每个 IoT Edge 设备的信息,请向“环境传感器 Edge 设备”模型添加以下云属性:

显示名称 名称 功能类型 架构
商店名称 StoreName properties 字符串
服务日期 ServiceDate properties 日期

显示设备模板中的云属性的屏幕截图。

提示

需要展开云属性才能查看架构设置。

选择“保存”,保存更改。

若要使操作员能够查看店铺的环境数据,请向设备模板添加以下视图:

  1. 添加新视图时,请在设备模板中选择“视图”。 然后选择“直观显示设备”磁贴。

    显示设备模板中“可视化设备”磁贴的屏幕截图。

  2. 将视图的名称更改为“查看 IoT Edge 设备遥测”。

  3. 选择“开始使用设备”。

  4. 添加“环境/温度”、“湿度”、“机器/温度”和“压力”遥测类型,然后选择“添加磁贴”。

  5. 选择“保存”。

    显示遥测视图定义的屏幕截图。

若要使操作员能够记录有关每个店铺的信息并管理设备,请向设备模板添加以下视图:

  1. 添加新视图时,请在设备模板中选择“视图”。 然后选择“编辑设备和云数据”磁贴。

  2. 将窗体名称更改为“店铺信息”。

  3. 选择“店铺名称”和“服务日期”云属性。 然后选择“添加部分”。

  4. 选择“保存”。

    显示云属性窗体定义的屏幕截图。

现在可以发布模板并添加设备:

  1. 在页面顶部附近选择“发布”,然后在“将此设备模板发布到应用程序”对话框中,选择“发布”

  2. 转到 Azure IoT Central 应用程序中的“设备”页面。

  3. 选择“环境传感器 Edge”设备模板,然后选择“+ 新建”。

  4. 在“创建新设备”对话框中,输入“store-001”作为设备 ID。 确保设备模板为“环境传感器边缘设备”,并且“Azure IoT Edge 设备?”已设置为“是”。 然后选择“环境传感器”作为边缘清单。 选择“创建”。

Store-001 设备在设备列表中的显示状态为“已注册”。

显示设备列表中已注册设备的屏幕截图。

检查你的工作

  1. 在设备列表中,选择设备名称“环境传感器边缘设备 - store-001”。 可以查看设备的可用视图,包括“店铺信息”和“查看 IoT Edge 设备遥测”。

  2. 在页面顶部,选择“连接”。 记下 ID 范围和主密钥。 稍后你将使用这些值来配置 IoT Edge 设备以连接到应用程序。

    在 Web 浏览器中将此页面保持打开状态。 稍后你将返回到此 Azure IoT Central 应用程序。

你创建了一个用于管理店铺的应用程序。 你创建了一个设备模板,其中包含你要在店铺中安装的设备的 IoT Edge 部署清单。 该模板还包含视图,使操作员能够监视店铺的环境状况并远程管理设备。