· Zen HuiFer · 案例 · 3 min read
流水线设备状态监控
本文介绍了流水线设备状态监控的关键指标、统计方案、应用场景以及信号内容设计。通过监控设备运行状态,及时发现设备故障,保证流水线的正常运行。
流水线设备状态监控
- 监控指标
设备运行状态
- 待机 1
- 运行 2
- 停止 3
- 维修 4
- 非正常停机 5
统计方案
- 时间维度设备的工作情况
应用场景
- 监控流水线设备状态,及时发现设备故障,保证流水线的正常运行
通配符订阅模式
- 为了避免因为传感器本身的故障而导致丢失运行状态信息,安装多个传感器使用通配符来监听
- 按需配置监听方式
- 最耗资源,一个客户端通配监听,其余主题一个主题配置一个客户端
- 最省资源,只需要一个客户端通配监听
- 其他配置,通配+具体需要单独监听的方式,可以方便排查传感器的故障
信号内容设计
因为状态值比较简单只有 1-5,所以进制准换暂时没有必要,消息内容为四位固定设备id+设备状态
例: 00012 ,前四位表示0001编号的设备,2表示当前设备为运行
配置示例(这里只展示一台通配)
首先添加客户端
解析脚本如下
function main(nc) { const deviceStatus = nc.substring(4,5) var dataRows = [ { "Name": "deviceStatus", "Value": deviceStatus } ]; var result = { "Time": Math.floor(Date.now() / 1000), "DataRows": dataRows, "IdentificationCode": parseInt(nc.substring(0,4)), "DeviceUid": "5", "Nc": nc }; return [result]; }
添加信号配置
发送数据模拟数据后查看图表
模拟数据发送的主题为 tp/随机
IdentificationCode: 5 数据情况如下
IdentificationCode: 1 数据情况如下
配置一个脚本报警
假如我们需要配置流水线上对应标识码为5的机器的状态来告警,我们编写的脚本如下
脚本中指定了参数信息中的名为
device_bj
的数据的第一条function main(map){ return map.device_bj && parseInt(map.device_bj[0].Value) === 5 }
配置告警的信号
模拟发送数据后查看报警情况