1. 课程导入

在工业设备监控、智能制造、能源管理与车联网等场景中,同一台设备往往同时产生两类性质完全不同的数据:一类是离散事件,例如“启动”“停机”“报警触发”“模式切换”“参数下发”;另一类是连续信号,例如温度、压力、转速、电流、振动幅值随时间连续变化的采样序列。传统做法通常把这两类数据分别存放在事件日志库与时序数据库中,用两套模型、两套查询语言、两套分析流程处理。结果是:当我们需要回答“这次报警发生前 30 秒主轴转速是如何变化的”这类问题时,必须跨系统人工对齐时间戳,既低效又容易出错。

本课程的核心目标,就是建立一套设备事件与连续信号统一建模的方法体系,让事件与信号在同一时间轴上被描述、存储、查询和分析。学完本课程后,你应当能够:

  • 说清事件、信号、状态、时间戳、采样周期、事件边界等核心概念及其相互关系;
  • 设计一套同时容纳离散事件与连续信号的数据模型,包括设备、通道、事件类型、信号量测点等实体;
  • 把真实设备行为抽象为“事件驱动状态变化 + 信号连续演化”的统一表达;
  • 实现事件与信号的时间对齐、窗口切片、关联查询与特征提取;
  • 判断在具体工程场景中,哪些信息应建模为事件、哪些应建模为信号,以及边界如何划分。
统一建模不是把两类数据强行塞进一张表,而是建立一套共享的时间语义与实体语义,使事件成为信号时间轴上的“锚点”,信号成为事件上下文的“证据”。

两类数据的本质差异与统一诉求

先看差异。连续信号的本质是函数采样:物理量 x(t) 在等间隔或不等间隔时刻 t₁, t₂, … 被采样为数值序列,其信息密度高、数据量大,关注的是趋势、幅值、频率与相关性。离散事件的本质是状态跃迁或动作记录:在某个时刻发生了某件事,带有类型、来源、严重级别和附加属性,数据量小但语义强,关注的是“何时、何地、发生了什么”。

再看统一诉求。设备诊断中真正有价值的判断,几乎都来自两者的交叉:报警事件需要前后信号窗口来确认是否误报;信号突变需要事件记录来解释是否由操作引起;维护工单需要同时引用故障事件与当时的温度、电流曲线。因此统一建模要解决三个具体问题:时间基准统一(同一时钟、同一时区、同一精度)、实体标识统一(同一设备、同一通道、同一测点编号)、查询语义统一(一次查询即可返回事件及其关联信号片段)。

设备事件与连续信号统一建模框架 物理设备层 电机 / 泵 / 阀门 传感器 / 变送器 PLC / 控制器 执行机构 产生事件与信号 采集与建模层 事件采集 类型 / 时间戳 / 属性 信号采集 通道 / 采样周期 / 量纲 统一时间基准 UTC + 单调时钟 统一实体标识 设备ID / 通道ID 统一模型层 事件实体 event_id, device_id, type, ts, severity, payload 信号实体 signal_id, channel_id, ts, value, unit, quality 关联关系 事件 ↔ 时间窗口 ↔ 信号片段 统一查询接口 按设备/时间/事件类型检索信号 t₀ t 启动 报警 停机 温度信号

整体框架:三层结构

上图给出了本课程贯穿始终的三层框架。物理设备层是数据来源,包含电机、泵、阀门、传感器、PLC 等真实对象;采集与建模层负责把物理行为转化为可计算的数据,关键是建立统一时间基准与统一实体标识;统一模型层定义事件实体、信号实体以及两者的关联关系,并对外提供统一查询接口。三层之间通过明确的接口传递数据,任何一层的变化都不会破坏其他层的语义。

需要特别强调的是“统一时间基准”。工程中常见的问题是:事件日志使用本地时间且精度到秒,信号采集使用 UTC 且精度到毫秒,两者相差 8 小时甚至更多。统一建模要求所有时间戳统一为 UTC,并保留单调时钟用于计算时间间隔,避免系统时间跳变导致窗口错位。实体标识同理:设备编号、通道编号、测点编号必须在全系统内唯一且稳定,不能因为设备改名或通道重排而改变。

工程意义与典型应用

统一建模的工程价值体现在四个具体方面。第一,故障回溯:给定一条报警事件,系统能自动返回该事件前后各 60 秒内所有相关信号通道的采样值,无需人工拼接。第二,误报抑制:结合事件上下文与信号趋势,可以区分“真实故障”与“传感器抖动导致的瞬时越限”。第三,预测性维护:把历史事件序列与信号退化趋势联合建模,可以提前识别轴承磨损、滤网堵塞等渐进性故障。第四,数据治理:统一模型减少了事件库与时序库之间的冗余与不一致,降低了存储与维护成本。

判断一条信息应建模为事件还是信号,可以问三个问题:它是瞬时发生的还是持续演化的?它需要保留完整数值序列还是只需记录发生时刻与属性?它是否需要与其它信号做时间对齐?前者的答案偏向事件,后者的答案偏向信号。

本课程的学习路径