基于控制感知域对抗网络的变工况故障诊断:从控制系统与运行状态协同的角度建立模型

发表于学术期刊 Transactions of the Institute of Measurement and Control 的论文《Fault diagnosis of marine diesel engine via control-aware domain-adversarial network: A control-diagnosis collaboration perspective》(基于控制感知域对抗网络的船用柴油机故障诊断:控制-诊断协同视角)提出了一种面向船用柴油机燃油喷射系统的故障诊断建模方法。该研究针对传统数据驱动诊断方法大多仅依赖被动监测的状态信号、未能充分利用控制信号物理先验的问题,构建了控制感知域对抗网络(CA-DANN),从控制系统动作与设备运行状态协同的角度,处理机动工况变化与喷油器物理故障在响应特征上的混淆问题。


1. 物理机理与诊断难点

在船用柴油机实际运行中,控制系统发出的调速控制指令主动改变发动机的运行工况,而状态传感器测量到的则是系统对控制输入与物理结构状态的综合响应。以喷油器燃油质量流量这一关键状态信号为例,转速变化(操纵机动工况)与喷孔积碳堵塞(故障状态)对其波形形态的影响呈现出相似的物理趋势。

从图1可以看出:无论是转速下降还是喷孔堵塞程度加剧,喷油质量流量的波形峰值均出现降低,且喷射拖尾均有不同程度的延长。若模型仅输入被动状态信号,不同工况下的特征分布与不同故障程度下的特征分布极易重叠,从而导致工况漂移与设备故障的误判。因此,将主动控制变量与被动响应状态进行解耦与联合建模,是消除混淆的关键基础。


2. 仿真系统与数据采集建模

论文以高压直列式喷油系统的分层耦合热力学模型作为试验数据源,模拟四冲程四缸船用柴油机燃油供给系统的动态过程。

在数据采集阶段,系统布设了16个监测测点(统一记为 MP i - j \text{MP}i\text{-}j MPi-j,其中 i ∈ { 1 , 2 , 3 , 4 } i \in \{1,2,3,4\} i∈{1,2,3,4} 为气缸索引, j j j 为信号类型):

  • 控制信号分支(凸轮轴子系统,12个测点): 分别采集4个凸轮轴子系统的轴角速度( j = 1 j=1 j=1)、凸轮线速度( j = 2 j=2 j=2)和凸轮位置位移( j = 3 j=3 j=3)。
  • 状态信号分支(喷油器子系统,4个测点): 分别采集4个气缸喷油器的燃油喷射质量流量( j = 4 j=4 j=4)。

数据涵盖7种操纵工况(包括1种定速工况A与6种包含加速、减速、交替加减速的变速机动工况 B~G)以及5种不同喷孔孔径退化程度(F0正常孔径0.40 mm,F1~F4依次递减至0.35 mm、0.30 mm、0.25 mm 和 0.20 mm)。原始连续时域序列采用滑动窗口进行切片,时间窗长度设为50(时间跨度5 ms),滑动步长设为10(时间跨度1 ms)。


3. CA-DANN架构设计

为建立控制变量对状态特征的动态调制关系,CA-DANN构建了双支路特征提取器,并配合故障严重度分类器与工况域鉴别器。

网络主要包含三部分:

  1. 控制感知特征提取器: 由独立的控制信号特征提取支路与状态信号特征提取支路构成,输出端通过逐元素相乘完成加权融合。
  2. 堵塞程度分类器: 接收融合特征,预测具体的喷油器故障等级。
  3. 机动工况分类器(细粒度域判别器): 在特征层后引入梯度反转层(Gradient Reversal Layer, GRL),执行多类别工况对抗学习,使提取的融合特征对机动工况变化具有不变性。

4. 关键技术实现步骤

特征提取与对抗训练的具体数据流与超参数配置如图4所示。

步骤一:控制支路的多视角注意力与通道加权

  1. 多头自注意力处理(MHA): 输入控制张量 x c o n t r o l x_{control} xcontrol(尺寸为 Batch × 50 × ( n × 3 ) \text{Batch} \times 50 \times (n \times 3) Batch×50×(n×3),其中 n n n 为采集凸轮轴通道数)。采用多头自注意力机制( h = 4 h=4 h=4 个注意力头,头维度 d k = d v = 3 d_k=d_v=3 dk=dv=3),令查询、键、值矩阵均满足 Q = K = V = x c o n t r o l Q=K=V=x_{control} Q=K=V=xcontrol。抽取时间序列最后一个时间步的隐层向量以整合全局时序关系:
    h 1 = MHA ( x c o n t r o l ) T h_1 = \text{MHA}(x_{control})_T h1=MHA(xcontrol)T
  2. 线性升维与通道注意力(SE-Net): 将 h 1 h_1 h1 输入全连接层映射至128维,得到特征向量 h 2 h_2 h2。输入压缩与激励模块(SE-Net,缩减率降维系数为 4),通过全局池化与通道重校准输出通道权重特征 h 3 h_3 h3。
  3. 残差连接与门控权重压缩: 将 h 3 h_3 h3 与线性映射特征 h 2 h_2 h2 进行残差相加,并经过Sigmoid函数压缩至 ( 0 , 1 ) (0, 1) (0,1) 区间,生成对状态特征维度的控制权值向量 z c o n t r o l z_{control} zcontrol:
    z c o n t r o l = σ ( h 2 + h 3 ) ∈ ( 0 , 1 ) 128 z_{control} = \sigma(h_2 + h_3) \in (0, 1)^{128} zcontrol=σ(h2+h3)∈(0,1)128
    式中 σ ( x ) = 1 1 + e − x \sigma(x) = \frac{1}{1 + e^{-x}} σ(x)=1+e−x1。

步骤二:状态支路的时序演化建模

状态信号 x s t a t e x_{state} xstate 为4个喷油器的质量流量时间序列(尺寸为 Batch × 50 × 4 \text{Batch} \times 50 \times 4 Batch×50×4)。将其输入长短期记忆网络(LSTM,隐藏单元维度设置为 128)。提取最后一个时间步的隐层输出作为状态特征表达:

z s t a t e = LSTM ( x s t a t e ) T ∈ R 128 z_{state} = \text{LSTM}(x_{state})_T \in \mathbb{R}^{128} zstate=LSTM(xstate)T∈R128

步骤三:控制-状态加权融合

不同于直接在特征维度进行拼接(Concatenation),CA-DANN 采用逐元素哈达玛积(Element-wise multiplication)进行调制:

z = z c o n t r o l ⊙ z s t a t e z = z_{control} \odot z_{state} z=zcontrol⊙zstate

其中 z c o n t r o l z_{control} zcontrol 充当每个状态特征维度的软门控权重,依据当前的控制动作对状态响应维度进行自适应放大或抑制。

步骤四:故障等级分类前向传播

融合特征向量 z z z 送入堵塞程度分类器。分类器由两层全连接网络构成,中间层使用ReLU激活函数:

y c l o g = W c l o g 2   ReLU ( W c l o g 1 z + b c l o g 1 ) + b c l o g 2 y_{clog} = W_{clog2} \, \text{ReLU}(W_{clog1} z + b_{clog1}) + b_{clog2} yclog=Wclog2ReLU(Wclog1z+bclog1)+bclog2

输出经过 Argmax 运算获得预测类别。损失函数采用多分类交叉熵损失:

L c l o g = − 1 N s ∑ n = 1 N s log ⁡ ( e ( y c l o g ( n ) ) c ( n ) ∑ c = 1 C e ( y c l o g ( n ) ) c ) \mathcal{L}{clog} = - \frac{1}{N_s} \sum{n=1}^{N_s} \log \left( \frac{e^{(y_{clog}^{(n)}){c^{(n)}}}}{\sum{c=1}^C e^{(y_{clog}^{(n)})_c}} \right) Lclog=−Ns1n=1∑Nslog(∑c=1Ce(yclog(n))ce(yclog(n))c(n))

其中 N s N_s Ns 为源域样本数, C = 5 C=5 C=5 为故障等级总数。

步骤五:细粒度多类别域对抗适应

传统DANN采用二分类判别器(仅区分源域与目标域)。本模型针对源域包含定速工况(工况A)、目标域包含多种变动工况(工况B~G)的多模态分布特点,将工况判别器扩展为 K K K 分类(此处 K = 7 K=7 K=7):

  1. 梯度反转: 特征 z z z 先输入梯度反转层(GRL)。在前向传播时保持特征不变,反向传播时将后续回传的梯度乘以反转因子 − λ -\lambda −λ。
  2. 工况 logits 输出: 经过包含ReLU激活的两层全连接网络:
    y r e g i m e = W r e g i m e 2   ReLU ( W r e g i m e 1 z + b r e g i m e 1 ) + b r e g i m e 2 y_{regime} = W_{regime2} \, \text{ReLU}(W_{regime1} z + b_{regime1}) + b_{regime2} yregime=Wregime2ReLU(Wregime1z+bregime1)+bregime2
  3. 域分类损失计算:
    L r e g i m e = − 1 N ∑ n = 1 N log ⁡ ( e ( y r e g i m e ( n ) ) k ( n ) ∑ k = 1 K e ( y r e g i m e ( n ) ) k ) \mathcal{L}{regime} = - \frac{1}{N} \sum{n=1}^{N} \log \left( \frac{e^{(y_{regime}^{(n)}){k^{(n)}}}}{\sum{k=1}^K e^{(y_{regime}^{(n)})_k}} \right) Lregime=−N1n=1∑Nlog(∑k=1Ke(yregime(n))ke(yregime(n))k(n))
    其中 N = N s + N t N = N_s + N_t N=Ns+Nt 为参与对抗训练的全部样本总数。

步骤六:端到端联合优化

系统的总目标损失函数定义为故障分类损失与域对抗损失的加权和:

L t o t a l = L c l o g + λ L r e g i m e \mathcal{L}{total} = \mathcal{L}{clog} + \lambda \mathcal{L}_{regime} Ltotal=Lclog+λLregime

训练过程中设定域正则化权重 λ = 1 \lambda = 1 λ=1,使用 Adam 优化器,学习率设为 0.001,批处理大小(Batch size)设为 32,通过最小化总损失完成网络权重端到端迭代更新。


5. 建模逻辑

从模型构建的技术路径来看,CA-DANN的核心在于两套约束的协同:

  1. 控制先验的门控调制: 控制系统信息不直接作为分类判据输入下游,而是先提取多头时序依赖并压缩至 ( 0 , 1 ) (0, 1) (0,1) 区间,以相乘的形式对状态特征进行通道级别的重加权,保留了状态特征的主体物理意义,同时注入了工况背景;
  2. 多类工况空间的对抗对齐: 将域判别从传统"源-目标"二分类调整为多类工况判别,迫使特征提取网络在对抗梯度反转的作用下,剥离不同加减速规律对应的特定模式,使融合特征聚集在仅与结构故障相关的子空间内。

参考文献

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.

https://journals.sagepub.com/doi/10.1177/01423312261487500

相关推荐
Bode_200244 分钟前
数据智能层集成流程挖掘与自主智能体的架构与机制
人工智能·数据智能
企智汇-项目管理软件1 小时前
离散制造管理系统怎么选?一套系统管住从研发到交付的全周期
java·人工智能·制造·项目经理·项目管理软件·项目管理系统·项目管理软件工程
Imagination官方博客1 小时前
PowerVR 上的 LLM 性能与加速
人工智能·架构·llama·gpu算力
知几蜗牛1 小时前
Python 处理 Responses SSE 流:超时、取消和增量渲染
人工智能
2601_968900771 小时前
面向Agent的视频编译链路:从语义标记到分层渲染
人工智能
王中阳Go1 小时前
做了 8 年前端,简历改漂亮后面一个挂一个:差的不是前端,是这 3 块底子
人工智能·后端·面试
南方者1 小时前
AI卡在授权?ToDesk手机点一下,不用跑回电脑
人工智能·智能手机·远程工作·远程控制
翻山越岭的少年1 小时前
用控制信号理解状态变化:基于控制感知域对抗网络的变工况故障诊断
算法
坐吃山猪1 小时前
从 Prompt 到 Harness:AI 能力边界扩展的完整脉络
人工智能·prompt