你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
教程:创建和部署店内分析应用程序模板
若要构建端到端解决方案,可以使用 IoT Central 店内分析结帐应用程序模板。 通过此模板,你可以利用各种传感器设备以数字方式连接和监视商店的环境。 这些设备会生成遥测数据,零售商可以将其转换为业务见解,以帮助降低运营成本,为其客户创造良好的体验。
在本教程中,你将了解如何执行以下操作:
- 使用 Azure IoT Central“店内分析 - 结帐”模板来创建零售商店应用程序
- 自定义应用程序设置
- 创建和自定义 IoT 设备模板
- 将设备连接到应用程序
- 添加规则和操作来监视条件
如果没有 Azure 订阅,请在开始之前创建一个免费帐户。
先决条件
若要完成本教程,需在本地计算机上安装 dmr-client 命令行工具:
dotnet tool install --global Microsoft.IoT.ModelsRepository.CommandLine --version 1.0.0-beta.9
应用程序体系结构
对于许多零售商来说,环境状况是使他们的商店与竞争对手的商店区别开来的关键途径。 最成功的零售商会尽一切努力在他们的商店内保持舒适的环境,让顾客感到舒适。
应用程序模板附带了一组设备模板,并使用一组模拟设备来填充该仪表板:
如前面的应用程序体系结构图所示,可以使用应用程序模板来执行以下操作:
(1) 将各种 IoT 传感器连接到 IoT Central 应用程序实例。
IoT 解决方案的基础是从零售商店环境内捕获有意义信号的一组传感器。 体系结构关系图最左侧的各个图标表示传感器。
(2) 监视并管理环境中的传感器网络和任何网关设备的运行状况。
许多 IoT 传感器可将原始信号直接送到云或位于其附近的网关设备。 网关设备先在边缘聚合数据,然后将摘要见解发送到 IoT Central 应用程序。 网关设备还负责将命令和控制操作中继到传感器设备(如果适用)。
(3) 创建使用店内环境状况的自定义规则,以针对商店管理人员触发警报。
Azure IoT Central 应用程序从各种 IoT 传感器和零售商店环境中的网关设备引入数据,然后生成一组有意义的见解。
Azure IoT Central 还为商店运营商提供定制的体验,使他们能够远程监视和管理基础结构设备。
(4) 将店内的环境状况转换为见解,供零售店团队用来改进客户体验。
可以在解决方案中配置 Azure IoT Central 应用程序,将原始或聚合的见解导出到一组 Azure 平台即服务 (PaaS) 服务。 PaaS 服务可以执行数据操作并扩充这些见解,然后再将其引入到业务应用程序中。
(5) 将聚合的见解导出到现有或新的业务应用程序,为零售员工提供有用及时的信息。
IoT 数据可为零售环境中部署的各种业务应用程序提供支持。 零售店经理或员工可以使用这些应用程序将业务见解可视化,并实时采取有意义的行动。 通过从 Azure IoT Central 导出数据并在 Power BI 中直观显示教程,了解如何构建实时 Power BI 仪表板。
创建存储内分析应用程序
若要创建 IoT Central 应用程序,请执行以下操作:
导航到 Azure 门户中的“创建 IoT Central 应用程序”页。 如果出现系统提示,请使用 Azure 帐户登录。
输入以下信息:
字段 说明 订阅 你想要使用的 Azure 订阅。 资源组 你想要使用的资源组。 可创建新的资源组或使用现有资源组。 资源名称 有效的 Azure 资源名称。 应用程序 URL 应用程序的 URL 子域。 IoT Central 应用程序的 URL 类似于 https://yoursubdomain.azureiotcentral.com
。模板 店内分析 - 结帐 区域 要使用的 Azure 区域。 定价计划 你想要使用的定价计划。 选择“查看 + 创建”。 然后选择“创建”。
当应用准备就绪后,可以从 Azure 门户导航到它:
若要了解详细信息,请参阅创建 Azure IoT Central 应用程序。
演练应用程序
以下部分介绍应用程序的主要功能。
自定义应用程序设置
你可以更改多个设置来自定义应用程序中的用户体验。 使用自定义主题可以设置刊头中显示的应用程序浏览器颜色、浏览器图标和应用程序徽标。
若要创建自定义主题,请使用示例图像来自定义应用程序。 从 GitHub 下载四个 Contoso 示例映像。
若要创建自定义主题,请执行以下操作:
在左窗格中,依次选择“自定义”“外观>”。
若要更改 masthead 徽标,请选择“更改”,然后选择要上传的 contoso_wht_mast.png 图像。 (可选)为“徽标替换文字”输入值。
若要更改浏览器图标,请选择“更改”,然后选择要显示在浏览器选项卡上的 contoso_favicon.png 图像。
可添加 HTML 十六进制颜色代码来替换默认“浏览器颜色”:
- 对于“标题”,输入 #008575。
- 对于“个性色”,输入 #A1F3EA。
选择“保存” 。 保存所做的更改后,应用程序将更新浏览器颜色、刊头中的徽标以及浏览器图标。
若要更新显示在 Azure IoT Central 我的应用站点的“我的应用”页上的应用程序磁贴上的应用程序图像:
选择“应用程序”>“管理”。
选择“更改”,然后选择要作为应用程序图像上传的 contoso_main_lg.png 图像。
选择“保存”。
创建设备模板
使用设备模板可以配置和管理设备。 你可以构建自定义模板、导入现有模板文件,或从特别推荐的设备模板列表中导入模板。 创建并自定义设备模板后,使用该模板将实际设备连接到应用程序。
(可选)你可以使用设备模板生成用于测试的模拟设备。
“店内分析 - 结帐”应用程序模板包含多个预安装的设备模板。 RuuviTag 设备模板不包含在“店内分析 - 结帐”应用程序模板中 。
在本部分中,你将 RuuviTag 传感器的设备模板添加到应用程序。 为此,请执行以下操作:
若要从模型存储库下载 RuuviTag 设备模板的副本,请运行以下命令:
dmr-client export --dtmi "dtmi:rigado:RuuviTag;2" --repo https://raw.githubusercontent.com/Azure/iot-plugandplay-models/main > ruuvitag.json
在左窗格中选择“设备模板”。
选择“+ 新建”以创建新的设备模板 。
选择“IoT 设备”磁贴,然后选择“下一步: 自定义”。
在“自定义”页上,输入“RuuviTag”作为设备模板名称。
在完成时选择“下一步: 查看”。
选择创建。
选择“导入模型”磁贴。 然后浏览并导入你之前下载的 ruuvitag.json 文件。
在导入完成后,选择“发布”以发布设备模板。
在左窗格中选择“设备模板”。
页面将显示应用程序模板中的所有设备模板以及刚刚添加的 RuuviTag 设备模板。
自定义设备模板
可以通过三种方式自定义应用程序中的设备模板:
通过更改设备功能来自定义设备中的本机内置界面。
例如,使用温度传感器,可以更改详细信息,例如显示名称和度量单位。
通过添加云属性来自定义设备模板。
云属性是 Azure IoT Central 应用程序创建、存储并与设备关联的自定义数据。 云属性的示例有:
- 计算的值。
- 元数据,例如要与一组设备关联的位置。
通过构建自定义视图来自定义设备模板。
视图为操作员提供一种可视化设备的遥测和元数据(如设备指标和运行状况)的方法。
在此部分中,你将使用前两种方法来自定义 RuuviTag 传感器的设备模板。
若要自定义 RuuviTag 设备模板的内置界面,请执行以下操作:
在左窗格中选择“设备模板”。
选择“RuuviTag”。
隐藏左窗格。 模板的摘要视图将显示设备功能。
在 RuuviTag 设备模板菜单中选择“RuuviTag”模型。
在功能列表中,滚动查看 RelativeHumidity 遥测类型。 它是可编辑“显示名称”值为 RelativeHumidity 的行项。
在以下步骤中,你将为 RuuviTag 传感器自定义 RelativeHumidity 遥测类型。 (可选)可以自定义一些其他遥测类型。
对于 RelativeHumidity 遥测类型,进行以下更改:
将“显示名称”值从 RelativeHumidity 更新为自定义值,例如 Humidity。
将“语义类型”选项从“相对湿度”更改为“湿度”。
(可选)在展开的架构视图中设置湿度遥测类型的架构值。 通过设置架构值,你可以为传感器跟踪的数据创建详细的验证要求。例如,可以为指定界面设置最小和最大工作范围值。
选择“保存”以保存更改。
若要将云属性添加到应用程序中的设备模板,请执行以下操作:
选择“添加功能”。
对于“显示名称”,请输入“位置”。
此值是属性的友好名称,会自动复制到“名称”。 可以使用复制的值或对其进行更改。
对于“功能类型”,请选择“云属性”。
选择“展开”。
在“架构”下拉列表中,选择“字符串”。
使用此选项,可以根据模板将位置名称与任何设备相关联。 例如,可以将商店中的命名区域与每个设备相关联。
将“最小长度”设置为“2” 。
将“修整空白”设置为“打开” 。
选择“保存” 以保存自定义云属性。
选择发布。
发布设备模板使更新对应用程序操作员可见。 发布模板后,可以使用它来生成用于测试的模拟设备,或者将实际设备连接到应用程序。 如果已将设备连接到应用程序,则发布自定义模板会将更改推送到设备。
添加设备
创建和自定义设备模板后,便可以添加设备。 对于本教程,请使用以下一组实际和模拟设备来生成应用程序:
- 一个 Rigado C500 网关。
- 两个 RuuviTag 传感器。
- 一个占用传感器。 模拟传感器包含在应用程序模板中,因此不需要创建它。
若要将模拟的 Rigado Cascade 500 网关设备添加到应用程序,请执行以下操作:
在左窗格中,选择“设备”。
在可用设备模板列表中选择 C500,然后选择“新建”。
输入 C500 网关作为设备名称和网关-001 作为设备 ID。
确保 C500 是所选设备模板,然后将“模拟此设备”设置为“是”。
选择创建。 应用程序现在包含模拟的 Rigado Cascade 500 网关设备。
若要将模拟的 RuuviTag 传感器设备添加到应用程序,请执行以下操作:
在左窗格中,选择“设备”。
在可用设备模板列表中选择 RuuviTag,然后选择“新建”。
输入 RuuviTag 001 作为设备名称和 ruuvitag-001 作为设备 ID。
请确保 RuuviTag 是所选设备模板,然后将“模拟此设备”设置为“是”。
选择创建。 应用程序现在包含模拟的 RuuviTag 传感器设备。
重复上述步骤,将第二个模拟的 RuuviTag 传感器设备添加到应用程序。 输入 RuuviTag 002 作为设备名称,以及 ruuvitag-002 作为设备 ID。
若要将两个 RuuviTag 传感器和占用设备连接到网关设备,请执行以下操作:
在左窗格中,选择“设备”。
在设备列表中,选择“RuuviTag 001”“RuuviTag 002”和“占用”。 然后在命令栏中,选择“附加到网关”。
在“附加到网关”窗格中,选择“C500”作为设备模板, 选择“C500 - 网关”作为设备。 然后选择“附加”。
如果导航到 C500 - 网关设备并选择“下游设备”选项卡,现在会看到已附加到网关的三台设备。
添加规则和操作
使用 Azure IoT Central 应用程序中的传感器监视条件时,可以创建规则以在满足某些条件时运行操作。
规则与设备模板和一个或多个设备关联,并且包含必须根据设备遥测或事件满足的条件。 规则也有一个或多个关联的操作。 操作可能包括发送电子邮件通知,或触发 Webhook 操作以向其他服务发送数据。 “店内分析 - 结帐”应用程序模板包括应用程序中设备的一些预定义规则。
在本部分中,你将创建一个新规则,用于根据 RuuviTag 传感器遥测检查最大相对湿度级别。 可向该规则添加操作,以便在湿度超过最大值时,应用程序发送电子邮件通知。
若要创建规则,请执行以下操作:
在左窗格中,选择“规则”。
选择“新建”。
输入“湿度级别” 作为规则的名称。
对于“设备模板”,选择 RuuviTag 设备模板。
你定义的规则将基于该模板应用于所有传感器。 或者,你可以创建一个筛选器来将规则仅应用于定义的一小部分传感器。
对于“遥测”,请选择“RelativeHumidity”。 这是在上一步中自定义的设备功能。
对于“运算符”,请选择“大于”。
对于“值”,请输入环境的典型室内湿度上限(例如 65)。
当任何 RuuviTag 传感器中的相对湿度超过该值时,系统会应用此条件。 可能需要根据环境中的正常湿度范围向上或向下调整值。
若要向规则添加操作,请执行以下操作:
选择“电子邮件”。
对于操作的友好“显示名称”,请输入“高湿度通知”。
在“收件人”中输入与您的帐户关联的电子邮件地址。
如果使用其他电子邮件,则所使用的地址必须是已添加到应用程序的用户的地址。 该用户还需要至少进行一次登录和注销。
(可选)输入要包含在电子邮件文本中的注释。
选择“完成” ,完成操作。
选择“保存” 以保存并激活新规则。
几分钟后,指定的电子邮件帐户应开始收到邮件。 每当传感器指示湿度级别超出条件中的值时,应用程序都会发送电子邮件。
清理资源
如果不打算完成更多 IoT Central 快速入门或教程,则可删除 IoT Central 应用程序:
- 在 IoT Central 应用程序中,导航到“应用程序”“管理”。
- 选择“删除”,然后确认操作。