亚马逊AWS官方博客
使用 AWS IoT 服务进行资产状况监控
Original URL: https://aws.amazon.com/blogs/iot/using-aws-iot-services-for-asset-condition-monitoring/
工业物联网 (IIoT) 为每个行业提供了一个无与伦比的机会来应对核心业务挑战,例如减少停机时间、提高安全性、增加系统输出、降低运营成本,以及创建创新服务和业务模型。在本篇博文中,我将向您展示如何使用 AWS IoT 服务构建资产状况监控解决方案,捕获物理资产中的数据,以便您了解其状态和性能并采取相应措施。
为何要监控您的资产?
在监控机器、远程基础设施和车辆等工业资产的状态时,您可以使用所收集的数据快速响应不断变化的状况、识别运营趋势并改进预测,从而最大限度地提高大型系统的性能和效率。数据可以近乎实时地(亚秒)、按小时或按天进行收集,具体取决于您的业务要求、连接性和预算。您可以使用 AWS IoT Greengrass 在云中或者边缘侧处理、存储和分析这些数据。AWS IoT Greengrass 是一个可以更加接近物理设备的边缘侧软件。它在设备级别提供本地计算和机器学习推理功能。当您连接更多资产时,数据集会变得更丰富,从而提供具有高保真度的运行视图。这会给您带来更深入的见解以及发现数据驱动型决策的更大趋势的能力。
很多工业组织在展望未来时认为,分布式系统会使用机器学习 (ML) 模型连续分析资产数据,并自主调整输入和输出以确保最佳性能。第一步是连接资产并开始收集、处理和分析边缘和云中的数据。
定义业务目标和结果
我们建议您从小处着手。明确定义业务问题并确定可衡量的结果(例如,将设备正常运行时间提高 60% 或将冷链分销网络中的食品腐坏减少 85%)。您可能希望使用用户案例,即敏捷开发中的一项功能。例如,“作为机场运营经理,我希望看到行李输送系统的实时状态,以便我能够快速解决故障并确保系统在 99.9% 的时间内正常运行。” 您可以使用 AWS IoT 服务迭代并扩展解决方案。
案例研究:最大限度地提高风力发电机性能
以一个风力发电场为例:其涡轮机分布在数百平方英里的范围内。能源运营商必须通过最大限度地提高涡轮机性能来产生稳定、可盈利的电力输出。虽然例行的定期维护是连续运行的关键,但这并不能阻止涡轮机在下一个维护时段之前停机。能源运营商希望通过向运营人员提供近乎实时的涡轮机机械性能数据来最大限度地提高风力发电场输出。通过访问此实时数据,可以根据当前状况安排维护,并在检测到故障时立即采取措施。然后,可以通过移动设备自动给现场工程师发送警报。
构建解决方案
您可以将这些业务需求分解为以下解决方案目标:
- 在边缘从涡轮机获得连续的近乎实时的传感器数据。
- 安全地将数据传输和提取到 AWS 云中。
- 处理数据并自动触发有关异常值的移动警报(例如,如果振动 (Hz) 变得过高,则调查潜在的故障)。
- 以可视化方式向操作人员呈现涡轮机指标,并为机器学习模型的临时分析、研究和未来输入提供永久性历史数据集。
1.在边缘侧收集工业设备数据
数据可以通过传感器从工业设备(在该示例中,是风力涡轮机)收集。传感器数据从设备传输到在网关设备上运行的 AWS IoT Greengrass Core。AWS IoT Greengrass 提供使用 AWS Lambda 函数的本地计算、支持本地设备到设备和设备到云通信的本地消息代理、用于管理设备状态的设备影子,以及使用在 Amazon SageMaker 中训练的深度学习模型的机器学习推理。您可以使用 AWS 管理控制台或 AWS CLI 创建 Lambda 函数并配置 AWS IoT Greengrass,从而简化开发和部署过程。风力涡轮机可以使用 MQTT(一种轻量级的发布-订阅消息协议)将其状态传达给 AWS IoT Greengrass。消息由本地消息代理通过主题(用作设备、AWS IoT Greengrass 和 AWS IoT Core 之间的双向通信通道)在发布者和订阅者之间进行路由。
AWS IoT Greengrass 还使用预构建的连接器或 Lambda 函数为 OPC-UA 和本地协议转换提供支持。这使您可以与使用 Modbus RTU 等专有协议的设备交互,而无需部署新的传感覆盖。然而,添加更多传感器也是有利的。您可以创建与现有运营技术系统分开的新采集层,从而提高安全性并使您的开发团队能够更快地进行创新。如果您使用微控制器构建新的传感设备,您可以使用 Amazon FreeRTOS,该服务是一个支持很多硬件架构的开源实时操作系统 (RTOS) 并提供库以简化与 AWS IoT 的网络连接、管理安全性和执行空中 (OTA) 更新。Amazon FreeRTOS 可以使用 MIT 许可证免费下载,并且可以进行修改而无需 AWS 的许可。您可以在此处找到合格微控制器的列表。
2.安全地将数据传输和提取到 AWS
MQTT 消息从 AWS IoT Greengrass 安全地传输到 AWS IoT Core,即 AWS 云的入口点。AWS IoT Core 提供有几个关键功能:
- 用于身份验证和授权的身份服务。
- 用于连接设备的设备网关。
- 用于路由消息的消息代理。
- 用于触发操作的规则引擎。
- 使应用程序在设备离线时与其进行交互的设备影子。
- 支持自动设备注册的注册表。
您可以使用 AWS IoT Core 将涡轮机定义为一个事物,并生成 X.509 设备证书、私钥和根 CA 证书,以放置在设备上进行身份验证。然后,您可以使用 AWS IoT Device Management 定义事物组并为每个涡轮机添加元数据,例如型号、GPS 坐标、制造商。此元数据对于数据分析、远程设备管理以及未来预测性维护的实施非常有用。您还可以在 AWS IoT 规则引擎中配置规则,将从 MQTT 主题流中的 site1 (turbines/site1/#) 接收的所有消息路由到 AWS IoT Analytics 进行处理。
此图显示了将状态信息发布到主题的风力涡轮机。AWS IoT Greengrass 订阅了该主题,并会在连接可用时将其转发到 AWS IoT Core。即使与云的连接丢失,AWS IoT Greengrass 也可以在本地与涡轮机进行通信。为了减少延迟和数据传输成本,您还可以使用在 AWS IoT Greengrass 上运行的 Lambda 函数在边缘以本地方式处理和分析数据。
3.处理数据、检测异常和触发操作
现在,正在从涡轮机中提取一个稳定的数据流。在分析数据并将其提供给上游应用程序之前,您需要处理并“清理”此数据。AWS IoT Analytics 可用于收集、处理和存储非结构化数据,也可以使用 SQL 或 Jupyter 笔记本分析此数据。从 AWS IoT Core 收到的涡轮机数据按照如下方式分阶段处理:
- 通道从 AWS IoT Core 接收按 MQTT 主题 turbines/site1/# 过滤的数据
- 工作流处理来自此通道的消息。您可以通过过滤器和转换来丰富数据。在这里,您可以通过调用 Lambda 函数(包含向 Amazon PinPoint 发送消息的逻辑)来触发对传入数据的操作。如果振动读数超过 100 Hz,则表示即将发生故障,Amazon PinPoint 会为现场工程师生成 SMS 通知。您可以使用来自其他来源的数据(例如,天气数据)来丰富流的上下文,并清除任何可能妨碍分析的嘈杂或损坏的消息或错误读数。
- 最后,数据存储在时间序列数据集中,它可以在那里使用 SQL 和 Jupyter 笔记本进行可视化或分析。您还可以安排每 15 分钟进行一次自动查询刷新,确保上游应用程序可以使用最新数据。
4.分析和可视化数据以支持见解和操作
借助处理后的数据集,您可以使用商业智能 (BI) 服务 Amazon QuickSight 直接连接到 AWS IoT Analytics 中的数据集,并创建一个控制面板来显示特定涡轮机模型的涡轮速度、振动和当前电力输出。这使您可以分析资产性能随时间的变化、获得新的见解,然后确定提高效率和最大限度地提高风电场性能的措施。随着越来越多的设备通过对数据提供更高的保真度而连接起来,这些见解的价值也随之增加。例如,您可以覆盖天气、GPS 位置和振动数据,从而发现完全相同类型的涡轮机模型会因当地的天气条件或温度而具有完全不同的表现。然后,您可以使用这种见解来根据需要修改涡轮机机械属性,并且还可将其用作新涡轮机产品开发的连续反馈循环,从而实现最大限度地提高能源输出和整体涡轮机性能的目标。
您还可以使用 SQL 在 AWS IoT Analytics 数据存储上创建临时查询。例如,要查找具有潜在机械问题的涡轮机,您可以使用以下查询来搜索超过 100 Hz 的振动读数:
SELECT thingid, vibration, datetime FROM turbine_datastore WHERE vibration > 100
输出显示在 AWS IoT 控制台中,并以可下载的 CSV 文件形式提供。
对于更复杂的分析和预测,您还可以将集成的 Jupyter Notebook 与 ML 分析和 Python 结合使用。有几个示例 notebook 可在使用案例中使用。例如,Contextual Anomaly Detection notebook 可用于查找超出正常操作范围的传感器读数。您也可以在本地将 Jupyter Notebook 下载到您的系统上。
系统架构
以下是该解决方案的高级架构。它显示了 AWS 服务如何用于资产状况监控:
成本优化
在此解决方案中,数据不断地流式传输到 AWS 以进行处理和分析。由于来自远程位置的过多数据传输可能会增加成本,因此您可以使用部署在 AWS IoT Greengrass Core 上的 Lambda 函数,并仅将使用案例所需的数据发送到云。例如,在这种情况下,您可以在 Lambda 函数中实现逻辑,在本地(在边缘)分析来自涡轮机的数据流,并仅在检测到异常值时才向 AWS IoT Core 发送消息。
物联网项目合作伙伴的价值
物联网项目涉及很多设备和技术领域 – 从传感器和执行器到复杂的机器学习算法不等。AWS 网络咨询合作伙伴专门指导您完成生产规模物联网解决方案的开发。您的业务成果改进仅受限于您团队的想象力。要了解更多信息,请访问 AWS 合作伙伴网络。
后续步骤
在本博文中,我向您展示了如何使用 Amazon FreeRTOS 和 AWS IoT Greengrass 来在边缘感知物理属性,使用 AWS IoT Core 将数据传输到 AWS,以及使用 AWS IoT Analytics 来执行分析。资产状况监控是实现大型数字化转型战略的第一步。AWS IoT 服务通过与其他服务的集成来支持持续创新。既然现在可以收集设备数据,您可以修改此架构以使用机器学习并启用预测性维护。这有助于您最大限度地提高资产性能并提前预测故障。
了解更多
- 在我们的工业物联网解决方案网页上了解有关工业物联网使用案例的更多信息
- 访问 IoT Atlas,了解用于开发强大物联网生产系统的久经考验的设计模式
- 开始学习物联网基础系列
- 寻找一个 AWS 合作伙伴来指导您的组织制定物联网战略