用控制信号理解状态变化:基于控制感知域对抗网络的变工况故障诊断

论文《Fault diagnosis of marine diesel engine via control-aware domain-adversarial network: A control-diagnosis collaboration perspective》发表于期刊《Transactions of the Institute of Measurement and Control》。该研究针对船用柴油机燃油喷射系统在变工况机动运行下的故障诊断问题,提出了一种控制感知域对抗网络(Control-Aware Domain-Adversarial Network, CA-DANN)。本文将从系统物理机理、网络结构设计与域适应对齐流程切入,详细解析该方法的技术实现步骤。


一、机动工况与喷孔堵塞的状态混淆机理

在传统的船用柴油机数据驱动故障诊断中,模型通常仅依赖状态监测信号(如喷油质量流量、排气温度等)。然而,柴油机作为闭环控制系统,控制输入信号(如转速调节指令、凸轮运动参数)与受控状态信号之间存在紧密的物理耦合。

从图1可以看出,机动操作引起的转速降低与喷孔堵塞程度加剧对喷油质量流量的影响趋势高度相似:二者均会导致峰值喷油量下降,并伴随喷射拖尾现象的延长。如果模型仅分析状态信号,不同机动工况下的正常状态变化与恒定工况下的故障征兆极易在低维空间发生重叠,从而导致误判。因此,该研究的技术切入点在于显式引入控制信号,借助控制侧的先验信息消除状态响应中的歧义性。


二、层次化仿真系统建模与信号采集流程

为了获取不同机动工况及不同故障程度下的多通道时间序列数据,该研究建立了船用柴油机直列式喷射系统的层次耦合热力学仿真模型。

数据生成的具体技术设置如下:

  1. 物理模型构建:模型由凸轮轴子系统、输油泵、4组直列喷油泵、4组喷油器以及管路、弹簧蓄能器与减压阀等流体模块组成(图2(a))。凸轮轴驱动各缸喷油泵柱塞运动,调速器控制向各缸的供油量。
  2. 测点与信号配置 :
    • 控制信号( xcontrol x_{\text{control}} xcontrol) :在凸轮轴子系统(图2(b))中,采集各缸对应的轴角速度( j=1j=1 j=1)、凸轮速度( j=2j=2 j=2)和凸轮位置( j=3j=3 j=3),共计12个控制通道。
    • 状态信号( xstate x_{\text{state}} xstate) :在喷油器子系统(图2(c))中,采集各缸喷油嘴的燃油质量流量( j=4j=4 j=4),共计4个状态通道。
  3. 工况与故障模拟 :
    • 设定7类机动运行工况:工况 A 为恒速稳态运行;工况 B~G 分别为加速、减速、先加后减、先减后加等6种变转速机动过程。
    • 设定5类喷油嘴堵塞状态:喷孔孔径分别为 0.40 mm(F0,无故障标称状态)、0.35 mm(F1)、0.30 mm(F2)、0.25 mm(F3)和 0.20 mm(F4)。

三、CA-DANN网络架构与控制-状态加权融合

CA-DANN整体由控制感知特征提取器、喷孔堵塞程度分类器以及机动工况判别器三部分构成。

1. 控制信号特征提取分支

控制信号输入序列 xcontrol x_{\text{control}} xcontrol 首先送入多头注意力模块(Multi-Head Attention, MHA)。设注意力头数 h=4h=4 h=4,查询、键、值矩阵( Q,K,VQ, K, V Q,K,V)均由控制信号投影得到。为捕获序列的时序依赖,提取 MHA 在最后时间步 TT T 的输出: h1=MHA(xcontrol)T h_1 = \text{MHA}(x_{\text{control}})_T h1=MHA(xcontrol)T

h1 h_1 h1 经线性层映射至 128 维特征 h2 h_2 h2,再输入挤压-激励模块(SE-Net)。SE-Net 通过全局池化与两层全连接计算通道间相关性,生成通道重加权特征 h3 h_3 h3。最后通过残差连接与 Sigmoid 函数计算得到归一化控制权重向量 zcontrol z_{\text{control}} zcontrol: zcontrol=σ(h2+h3) z_{\text{control}} = \sigma(h_2 + h_3) zcontrol=σ(h2+h3) 其中 σ(x)= 11+e−x \sigma(x) = \frac{1}{1 + e^{-x}} σ(x)=1+e−x1,确保输出权重的每个维度均严格约束在 (0,1)(0, 1) (0,1) 区间内。

2. 状态信号特征提取分支

状态信号输入序列 xstate x_{\text{state}} xstate 包含各缸瞬时喷油质量流量。由于流量波形具有高度的时序相关性并包含高频扰动,该分支采用长短期记忆网络(LSTM)提取时序特征,并取其最后一个时间步的隐状态: zstate=LSTM(xstate)T z_{\text{state}} = \text{LSTM}(x_{\text{state}})_T zstate=LSTM(xstate)T

3. 控制感知加权融合机制

不同于直接拼接(Concatenation)向量的做法,CA-DANN采用逐元素乘法(Hadamard积)将状态特征与控制权重融合: z=zcontrol⊙zstate z = z_{\text{control}} \odot z_{\text{state}} z=zcontrol⊙zstate 在该机制下,由控制信号生成的权重向量直接对状态特征的各个维度执行自适应缩放(抑制或放大),以控制信息动态调制状态表征。

从图4的超参数流图可以看出,滑动窗口长度设为50(步长为10),LSTM隐层维度设为128,SE-Net的压缩比(reduction ratio)设为4,最终融合特征 zz z 的维度统一保持为128维。


四、细粒度域对抗机制与联合损失函数

为了解决机动工况变化导致的数据分布漂移问题,CA-DANN在特征提取器后接入了故障分类器与工况判别器两个分支。

1.喷油嘴堵塞程度分类器

融合特征 zz z 依次通过线性层、ReLU激活函数及输出线性层,输出故障分类Logits: yclog= Wclog2 ReLU⁡( Wclog1 z+ bclog1 )+ bclog2 y_{\text{clog}} = W_{\text{clog}2} \operatorname{ReLU}(W_{\text{clog}1} z + b_{\text{clog}1}) + b_{\text{clog}2} yclog=Wclog2ReLU(Wclog1z+bclog1)+bclog2 故障分类损失定义在源域标记样本(恒速工况 A)上的多分类交叉熵: Lclog=− 1Ns ∑n=1Ns log⁡ e ( yclog(n) )c(n) ∑c=1C e ( yclog(n) )c \mathcal{L}{\text{clog}} = - \frac{1}{N_s} \sum{n=1}^{N_s} \log \frac{e^{(y_{\text{clog}}^{(n)}){c^{(n)}}}}{\sum{c=1}^C e^{(y_{\text{clog}}^{(n)})_c}} Lclog=−Ns1∑n=1Nslog∑c=1Ce(yclog(n))ce(yclog(n))c(n) 其中 Ns N_s Ns 为源域样本数, C=5C=5 C=5 为故障类别总数, c(n)c^{(n)} c(n) 为样本 nn n 的实际故障标签。

2.细粒度机动工况判别器

传统DANN仅使用二分类判别器区分样本属于源域还是目标域。CA-DANN针对目标域包含多种变转速机动工况的特点,构建了细粒度多分类判别器。

融合特征 zz z 首先经过梯度反转层(Gradient Reversal Layer, GRL)。在前向传播阶段,GRL保持特征不变;在反向传播阶段,GRL将反向梯度乘以负系数 −λ-\lambda −λ: yregime= Wregime2 ReLU⁡( Wregime1 z+ bregime1 )+ bregime2 y_{\text{regime}} = W_{\text{regime}2} \operatorname{ReLU}(W_{\text{regime}1} z + b_{\text{regime}1}) + b_{\text{regime}2} yregime=Wregime2ReLU(Wregime1z+bregime1)+bregime2 判别器将包含源域与目标域在内的全部样本划分为 KK K 类工况(本研究中 K=7K=7 K=7,即工况 A 至 G): Lregime=−1N ∑n=1N log⁡ e ( yregime(n) )k(n) ∑k=1K e ( yregime(n) )k \mathcal{L}{\text{regime}} = - \frac{1}{N} \sum{n=1}^{N} \log \frac{e^{(y_{\text{regime}}^{(n)}){k^{(n)}}}}{\sum{k=1}^K e^{(y_{\text{regime}}^{(n)})_k}} Lregime=−N1∑n=1Nlog∑k=1Ke(yregime(n))ke(yregime(n))k(n) 其中 N=Ns+Nt N = N_s + N_t N=Ns+Nt 为源域与目标域样本总量, k(n)k^{(n)} k(n) 为工况真实类别。

3.联合优化目标

整个网络的端到端优化目标定义为: Ltotal=Lclog+λLregime \mathcal{L}{\text{total}} = \mathcal{L}{\text{clog}} + \lambda \mathcal{L}_{\text{regime}} Ltotal=Lclog+λLregime 通过GRL的反向梯度对抗,特征提取器在最小化故障分类误差的同时,最大化细粒度工况判别器的分类损失,使得融合特征 zz z 逐步消除来自特定机动过程的操作模式信息,最终提取到对变工况具备不变性、对堵塞故障具备敏感性的表征。


五、方法总结

CA-DANN的整体流程可归纳为以下步骤:

  1. 时序切片与输入构建:利用固定长度的滑动窗口对多通道控制信号与状态信号进行同步切分并做归一化处理。
  2. 双流特征变换 :控制流经MHA提取全局依赖,由SE-Net捕获通道响应,并经Sigmoid输出 0,10, 1 0,1 范围的权重;状态流经LSTM捕获喷油过程的时序动态。
  3. 权重调制融合:通过逐元素乘法完成控制对状态特征的加权,生成低维融合特征。
  4. 多任务对抗反传:源域样本计算故障分类交叉熵损失,全域样本经GRL计算细粒度机动工况分类交叉熵损失,利用Adam优化算法更新网络参数直至收敛。

参考文献

Fault diagnosis of marine diesel engine via control-aware domain-adversarial network: A control-diagnosis collaboration perspectiveJ. Transactions of the Institute of Measurement and Control, 2026.

journals.sagepub.com/doi/10.1177...

相关推荐
longlongzihan1 小时前
从LeetCode 19. 删除链表的倒数第 N 个结点深入理解“哨兵节点”
c++·算法·leetcode·链表
DeroZan1 小时前
# jieba 分词 & 文本语料分析 & Python 内置函数笔记
算法
Gigavision1 小时前
CAS(ME)²数据集 感知图卷积网络算法 CAS(ME)²数据集下载
网络·算法
杜 硕2 小时前
快速排序02
算法·排序算法
careathers2 小时前
【数据结构】二叉树拓展
数据结构·算法
java_nnnn2 小时前
LeetCode刷题滑动窗口(长度最小的子数组)
算法·leetcode·职场和发展
@atweiwei2 小时前
训练 AI 大模型系列之 LoRA:不动模型本体,靠一条低秩旁路改专长(附完整手算算例)
人工智能·算法·ai·语言模型·rag
yi0112 小时前
DAY27: LeetCode 110. 平衡二叉树 | 在递归中判断是否平衡
人工智能·笔记·python·算法·leetcode·二叉树·递归
9624562 小时前
餐饮 SaaS 优惠券系统架构演进(七)营销定价引擎设计:活动、会员价、优惠券、买赠如何在同一 PriceQuote 中可解释地组合
java·运维·算法