easynet.run · 全部问题场景

让 AI 看设备状态,不把停机按钮也交出去

设备报警后,工程师希望助手整理过去一小时的温度和振动变化。这项工作需要看历史数据,不需要重启设备。若为了查询方便就给助手一套完整运维账号,分析入口也会带上停机能力。

已有历史数据库、只读监控面板或数据镜像时,应先用这些来源。工程师能在面板直接看清的问题,不必让助手介入。需要多个分析工具复用同一种数据读取时,再把查询操作单独接出来。

提供方在获准的网关或历史库侧维护只读函数,接受设备编号、时间段和采样要求,返回带时间戳的读数及缺测标记。EasyNet 让获准助手调用这一操作,控制指令和主机终端不放进这个入口。

设备范围从调用身份和现场授权确定,查询窗口与频率也要限制。凭证留在提供方,返回数据是否允许进入外部模型由工厂另行确认;函数在现场运行,不代表后续分析一定留在现场。

网关适配、网络分区和查询负载仍由工业系统负责人检查。助手可以指出读数变化,不能仅凭相关性宣布设备安全或建议自动停机。时间不同步、传感器缺测等情况,要跟着数据一起显示。

从历史或合成数据开始,验证未知设备、过大时间窗和高频请求会被拒绝,再安排获批的非关键现场试验。工程师应能从总结回到原始读数核查,而不是只得到一段无法追溯的故障判断。

  1. 01

    工程师选时间窗

    指定设备与采样上限

  2. 02

    读取历史库

    只有只读账号与操作

  3. 03

    返回缺测标记

    从总结回查真实读数

历史读数进入分析,控制动作留在原系统。

缺测不能当作零温度

合成历史样本的本地整理,不连接工厂设备,也不作安全判断。

本地示例 · python
samples = [{"minute": 0, "temperature": 42},
           {"minute": 1, "temperature": None},
           {"minute": 2, "temperature": 45}]
valid = [s["temperature"] for s in samples if s["temperature"] is not None]
missing = [s["minute"] for s in samples if s["temperature"] is None]
assert missing == [1]
print({"observed_range": [min(valid), max(valid)], "missing_minutes": missing})

预期结果:返回范围42–45及缺失分钟1;没有把缺测填零或判断设备安全。

接入时的检查项
  • 接口及服务账号都无法执行停机、复位或修改参数。
  • 超长窗口、未知设备与高频请求被限制,不拖慢生产监控。
  • 缺失和陈旧样本有明确标记,助手不能用它们宣称现场安全。
源码与接入资料