30台冲床监控方案
冲压车间30台冲床设备状态监控、产量统计、报警管理,全栈开源方案,从设备采集到数据可视化完整落地
01 项目背景与需求
客户痛点
- 设备状态不透明:30台冲床分布在两个车间,哪台在运行、哪台故障、哪台待机,全靠人工巡检,效率低且不及时
- 产量统计靠人工:每班结束工人手工抄产量,容易出错,管理层第二天才能看到前一天产量,无法实时掌握生产进度
- 报警响应慢:设备故障了工人要打电话报修,维修人员不知道哪台设备什么故障,响应时间平均30分钟以上
- OEE无法计算:没有设备运行时间、停机时间、故障时间的准确数据,OEE(设备综合效率)只能靠估算,无法针对性改善
核心需求
02 系统架构
5层架构,从设备到看板全链路开源,每层职责清晰、可独立替换
- 应用与通讯解耦:ThingsGateway只负责采集,通过MQTT上报,应用层(Grafana/Node-RED)通过订阅MQTT或查询TDengine获取数据,加新设备不用改应用
- 消息队列削峰:EMQX在采集端和存储端之间加一层,采集端突发数据时缓存在Broker,TDengine慢慢消费,不会因为写入慢导致采集端阻塞
- 边缘端本地缓存:ThingsGateway开启SQLite本地缓存,网络中断期间数据本地存储,恢复后自动补传,不丢数据
- 降采样策略:原始2秒数据保留1年,1分钟降采样保留3年,1小时降采样永久保留,兼顾查询性能和存储成本
03 为什么选这些软件(选型理由)
不是随便选的,每款都对比过2-3个 alternatives,结合实际项目需求和团队技术栈做出的选择
04 部署要点(关键配置)
不是完整教程,只列最关键的配置和容易踩坑的地方,详细部署步骤参考各软件官方文档
服务器准备
阿里云ECS g7 2核4G,Ubuntu 22.04,Docker Compose一键部署全部服务(ThingsGateway/EMQX/TDengine/Grafana/Node-RED),数据目录挂载到数据盘
ThingsGateway配置
添加30台设备(三菱MC/西门子S7),每台配置20+点位,分组(状态组/产量组/报警组),设置采集频率2秒,开启本地缓存,配置MQTT上报到EMQX
TDengine建表
创建数据库(保留1年,副本1),每台设备一张表(时间戳+20个字段),创建连续查询(1分钟降采样、1小时降采样),创建数据保留策略
EMQX规则引擎
配置规则:MQTT消息 → 解码JSON → 写入TDengine(通过taosAdapter的REST API),配置死信队列(写入失败的消息存到文件,人工处理)
Grafana仪表盘
配置TDengine数据源,创建3个仪表盘:车间总览(OEE/产量/报警统计)、设备详情(单台实时数据+趋势)、报表(日/周/月产量+报警统计),配置告警规则
Node-RED流程
报警流程:订阅MQTT → 报警判断(阈值/状态变化)→ 防抖/分级 → 微信推送;日报流程:每天8点查询TDengine昨日数据 → 生成Excel报表 → 邮件发送;MES转发:关键数据转发到客户MES接口
05 踩过的坑(真实问题与解决方案)
这是最有价值的部分——AI写不出来的真实踩坑记录,每个问题都花了半天到两天才解决
06 实际效果
07 相关软件与工具
需要类似的设备监控方案?
丁丁有20年工业自动化经验,做过冲床监控、机器人上下料、能源管理等多个真实项目。可以帮你做方案设计、选型咨询、部署实施、二次开发。