使用基于 ML 模型的 ESP32-DevKitC 监控冰箱温度
中国,上海
2021年2月26日
Edge Impulse 是领先的嵌入式机器学习 (ML) 开发平台,已服务支持超 1,000 家全球企业和 10,000 个机器学习项目。Edge Impulse 提供了一个易于使用的端到端平台,能够实现以下功能:
- 轻松地将传感器数据输入到嵌入式机器学习模型中;
- 高效创建基于内存大小和功耗优化的嵌入式机器学习模型;
- 使用 Edge Impulse SDK 和自选的开发环境轻松地在目标传感器上部署模型。
软件应用工程师 Zin Thein Kyaw 在最近的一篇博客中,以冷链监控应用为例,介绍了如何使用 Edge Impulse 进行嵌入式机器学习开发。他使用一个基于 ESP32-DevKitC 开发板、MAX31855 板和 K 型热电偶探针的异常检测模型,构建了一台冰箱温度监测器。
冰箱的温度监测对于确保在合适的温度下,对易腐食品进行冷藏存放十分重要。Zin Thein Kyaw 在此项目中使用了以下组件进行概念验证 (PoC) 演示:
- ESP32-DevKitC 开发板
- Adafruit MAX31855 热电偶板
- K 型工业热电偶探针
- 使用 Arduino IDE 编译的嵌入式固件,包含 Edge Impulse SDK
用户可以轻松地将这个 PoC 演示的配置迁移至其他嵌入式设备上使用,也可以在 Edge Impuose Studio 上查看 Edge Impulse 项目的数据集,以及异常检测模型的训练方法。此项目已在 GitHub 上开放。
在打开或关闭冰箱门几分钟后,Edge Impulse 会基于传感器的温度变化曲线,创建异常检测嵌入式机器学习模型,从而检测出冰箱门的开关状态。同时,它也可以通过“异常评分”获取该状态持续的时间。
训练异常检测模型过程中,可以使用 “data forwarder” 工具来收集数据。“data forwarder” 是 Edge Impulse 命令行界面(或 CLI)的一部分,能够在主机 PC、传感器和 Edge Impulse 平台之间建立安全的网络连接,收集实时传感器数据,并将其用于训练嵌入式机器学习模型。
Edge Impulse Studio 中实现了“温度异常区域”临界温度范围的可视化。将其用于 Zin Thein Kyaw 的项目中,能够检测数据中的异常值并将其标记为“异常”,为采用 K 均值聚类算法的嵌入式机器学习模型提供了重要参考。
冰箱温度异常检测器(图片由 Zin Thein Kyaw 提供)
总而言之,Zin Thein Kyaw 的博客通过嵌入式机器学习在冷链监控中的应用示例,向我们展示了如何使用 Edge Impulse 轻松地部署温控应用中的异常检测器。同时,ESP32-DevKitC 强大的计算能力、紧凑的设计和高性价比,也为构建创新应用、简化系统复杂度提供了思路和平台。