改进BA 的汽车发动机DCS 故障检测优化

2020-10-21 07:52陈凯镔陶沙沙向峻伯
机械设计与制造 2020年10期
关键词:观测器蝙蝠残差

陈凯镔,陶沙沙,向峻伯,徐 俊

(1.成都工业职业技术学院,汽车工程学院,四川 成都 610000;2.西安交通大学,机械工程学院,陕西 西安 710038)

1 引言

汽车发动机分布式控制系统由于其独特的优越性得到了广泛的关注与应用[1]。分布式控制系统本质上还是属于一种典型的网络总线控制系统,网络控制系统与传统的点对点控制系统相比最大的不同在于其相关数据是通过总线进行传输,但是也正是由于总线的存在导致其诱导时延以及数据丢包等问题,使得在进行故障诊断时必须将总线带来的不利因素考虑进去。王越男设计了一种针对离散时滞系统的鲁棒故障检测观测器,使得检测残差能够对噪声信号具有较好的鲁棒性能[2]。文献[3-4]均利用H∞理论针对不确定系统,时延网络控制系统鲁棒故障检测,使得系统在强噪声条件下依旧能够保证良好的故障检测性能。但是上述文献均只考虑如何提高检测系统对噪声干扰信号的鲁棒性,未考虑对故障信号的影响。

为同时提升检测系统对噪声信号的鲁棒性以及故障信号的敏感性,针对双通道多包传输的短时变时延汽车发动机分布式控制系统,提出了一种基于改进蝙蝠算法(Bat Algorithm,BA)的故障检测观测器优化设计方法。首先对原系统建立故障观测器,将双通道多包传输转换为切换系统,将短时变时延建模为一种系统不确定性。然后将残差信号分别对噪声信号和故障信号的传递函数比值建立为优化的目标函数,为使得残差信号对故障信号敏感,对噪声鲁棒,利用改进BA 在保证观测器残差系统稳定的条件下使得目标函数最小,从而求得最优故障观测器增益矩阵。

2 系统建模

针对研究的双通道多包传输的短时变时延汽车发动机分布式控制系统,进行如下合理假设:

(1)传感器节点为时间驱动,而控制器与执行机构节点均为事件驱动,采样周期为常数T。(2)传感器到控制器与控制器到执行机构之间均存在网络诱导时延,分别为τsc和τca,且满足τsc+τca≤T,由于计算时延很小,故忽略不计。(3)传感器到控制器与控制器到执行机构之间均为多包传输,且采用静态调度的方式。(4)存在未知扰动,但不考虑数据丢包以及数据包时序错乱。

假设连续时间汽车发动机模型为:

式中:x(t)∈Rn—状态变量;u(t)∈Rn—被控输入;y(t)∈Rn—对象输出;ω(t)∈Rn—未知干扰;f(t)∈Rn—智能传感器或者智能执行机构的故障向量。当智能传感器与智能执行机构均为正常状态时,f(t)为零向量。A∈Rn×n为系统矩阵,B∈Rn×m是输入矩阵,C∈Rl×n是输出矩阵,矩阵D,D″与D′分别为系统的干扰系数矩阵与故障增益矩阵。考虑到系统的时延满足τsc+τca≤T:

进一步得到该系统的离散时间模型:

式中:B1,B2,E,H1,H2—常数矩阵;F(τk)—与 τk有关的时变矩阵,且满足F(τk)TF(τk)≤I,求取方法参考文献[5]。令 ΔB1=EF(τk)H1,ΔB2=EF(τk)H2,模型为:

再考虑系统的双通道多包传输,假设从传感器传输到控制器的状态量x(k)被封装在m 个数据包中,从控制器传输到执行机构的控制量u′(k)被封装在n 个数据包中,令控制器与执行机构收到的状态量与控制量分别为x′(k)与u(k)。

系统用静态传输方式传输状态量以及控制量的数据包,可以将多包传输转化为一个具有两个开关的切换系统。假设在第k时刻,开关K1与Si(i=1,2,…,m)相连,开关K2与S′j(j=1,2,…,n)相连,表示在第k 时刻,传输状态量的xi(k)与控制量的ui(k),此时,未传输的数据包被视为丢包,取k-1 时刻的数据作为第k 时刻的状态。故状态变量各个数据包之间有如下关系:

同理,控制量的各个数据包之间有如下关系:

其中,φj=diag(0,…,0,βii,0,…,0),βii=1,φi=I-i。

状态反馈控制器为:

式中:K—状态反馈控制器增益矩阵。将状态反馈控制律式(9)与式(8)和式(4)联立可得:

然后定义增广向量z(k)=[xT(k)x′T(k-1)uT(k-1)]T,可以得到等价模型:

3 改进BA 算法

蝙蝠优化算法的原理为:在飞行过程中,蝙蝠不断发射并接受频率变化的声波脉冲,并且根据从周围反射回来的声波确定猎物位置并躲避障碍物[6-7]。蝙蝠种群发出的超声波由谐波类宽频带的调频信号组成,频率范围:(25~100)kHz,假设空气的速度为340m/s,波长 λ 与频率f 的关系为:

BA 在通过模拟蝙蝠群体利用超声波遍历空间、探测目标、捕获目标、避免障碍物的生物学过程,多次迭代更新蝙蝠种群的速度、位置、最佳适应度函数值,最终得到寻优问题的全局最优解或近似全局最优解[8]。

每一只蝙蝠在搜索空间的位置对应解空间的一个解,具有相应的速度和适应度函数值,蝙蝠种群通过更新发出频率、脉冲发射速率和声波响度产生新的解集,并逐渐进化到包含全局最优解或近似全局最优解的状态[9]。迭代过程的数学表达式如下:

式(13)至式(15)中:Fi为第i 只蝙蝠的频率;Fmin与Fmax分别表示蝙蝠种群发出频率的最小值与最大值;RN 为在[0,1]区间均匀分布的随机变量分别表示在第l 次迭代中,第i 只蝙蝠在搜索空间的运动速度与位置,i=1,2,…,N;Xbest为当前全局位置的最优解。

在算法收敛至最优解区域时,对种群的位置进行微扰动,从而达到局部搜索的目的,确保最优解的遍历性,更新公式如下:

式中:α—在[-1,1]区间的随机数;A—第l 代蝙蝠种群的声波响度平均值。

在式(16)的基础上,蝙蝠种群个体的脉冲发射率Ri与脉冲声波响度Ai随着迭代的进行而更新,更新公式如下:

式中:β,ω—常数,β>0,0<ω<1。

BA 在寻优过程中具有良好的收敛性和较大的搜索范围,但其位置的更新仅依赖蝙蝠种群的速度参数,且缺乏一定的多样性,导致算法后期种群聚集的现象较为严重[9]。为弥补这一缺点,对基本BA 进行变异操作,具体步骤如下:

(1)设置蝙蝠种群的交叉比例和交叉方法,例如选取适应度值排名前50%的个体进行两两配对,对该50%的个体组成的种群分别进行两次交叉运算,将产生的数量相同的个体并替换为下一代的后50%个体,位置的交叉公式,如式(19)所示。

(2)引入变异激活函数,对更新后的xi(t+1)进行变异操作,变异激活函数是蝙蝠个体是否进行变异操作关键,变异激活函数为:

式中:α∈[0.5,0.6],β∈[0.1,0.3],k—种群内第k 个蝙蝠个体,n—问题的维度,N—种群数目,rand—[0,1]之间的随机数,当Activate(k)<1 时,即对当前的蝙蝠个体进行变异操作;(3)对满足(2)中激活函数条件的蝙蝠个体进行变异操作—均匀变换或高斯变换,均匀变换通过对位置的更新将使得部分个体表现为以更快的速度向最优解区域进行收敛,高斯变换则主要解决算法在迭代后期易陷入局部极值的情况,由于蝙蝠种群在迭代后期将在最优解区域附近以微扰动的方式重新生成,此时的搜索已无法扩展至更大的范围,而高斯变换将在条件满足的情况下,将变异个体脱离最优解的限制,均匀变换与高斯变换的实现方法如下:

式中:σ—高斯分布的标准差,由式(19)与式(20)可看出,变异操作的引入使得BA 种群内部的生物多样性得到了提高,加快了全局搜索速度,同时,在局部寻优过程中,能够避免最优解位置对种群整体的影响,避免陷入局部极值点。

在BA 中,脉冲发射率的更新迭代,如式(17)~式(18)所示。即,算法局部搜索的遍历性与的初值选取直接相关,初值选取具有一定的随机性和不确定性,不利于算法的优化过程。为了解决该问题,对脉冲发射率进行改进:

式中:A0,R0—初始声波响度和脉冲响度值—混沌脉冲发射率。

正弦反曲映射可将Ri的变化范围控制在0.5 到1 之间,从而具有混沌遍历性,式(22)使得脉冲发射率兼具对初始值的敏感性和混沌变化范围的确定性,避免陷入局部最优值,同时对初始值敏感性可提高算法的全局搜索能力,Rl+1i 的变化范围,如图1 所示。

图1 混沌BA 与基本BA 脉冲发射率Fig.1 Chaotic BA and BA Pulse Emissivity

综上所述,改进BA 的实现步骤如下:

(1)设置种群规模和最大迭代次数,并随机初始化蝙蝠种群的参数:初始位置最大值Pop_Max、最小值Pop_Min 并由此生成相应的种群位置Xi和速度Vi、初始脉冲发射率R0i=0.7、初始声波响度A0i=0.9,设置初始脉冲发射率参数τ=2.3、初始化种群频率的最大值、最小值,并由式(13)生成蝙蝠个体的频率值,按照上述初始化参数计算适应度函数的函数值,保留最优值个体;

(2)根据式(19)及适应度值排名对蝙蝠种群进行交叉运算,并根据式(20)确定蝙蝠个体是否触发变异操作,若Activate(k)<1,则按照式(21)进行均匀变换或高斯变换;

(3)对蝙蝠种群的每个个体生成一个随机数rand 和ω,若,即按照式(16)对当前的种群位置进行更新,更新后的种群以ω 的微扰动量在当前最优解附近重新;

(4)计算蝙蝠种群新位置的适应度函数值,对蝙蝠种群的每个个体生成均匀分布的随机数randi,若随机数randi<A0i 且f(Xi)<f(Xbest),则接受微扰动后产生的全局最优解,并按照式(17)、式(22)分别对声波响度、混沌脉冲发射率进行更新;

(5)找出当前种群内所有蝙蝠个体目标函数的最优值,并记录最优值的位置;

(6)重复(2)~(5)直至满足设定的最优解条件或算法达到最大迭代次数,并输出全局最优值;

4 改进BA 的故障检测观测器设计

设观测器为:

式中:Ll(l=1,2,…,m×n)—需要求的观测器增益矩阵,令观测器误差为:e(k)=z(k)-z^(k),ε(k)为观测器输出,那么观测器误差的状态方程与输出方程为:

观测器误差的状态方程与输出方程,如式(24)所示。对式(24)进行Z 变换,则可残差信号ε 分别到扰动信号ω 和故障信号f 的传递函数矩阵:

式中:Gf—残差信号ε 到故障信号f 的传递函数矩阵;Gω—残差信号ε 到扰动信号ω 的传递函数矩阵。

本节利用改进BA 对故障检测观测器的增益矩阵Ll进行优化必须遵循下列几点要求:

(1)稳定性。即在系统扰动为0 时,残差信号能够收敛。

(2)灵敏性。残差信号对故障信号要相当敏感,即残差对故障的增益要大。

(3)鲁棒性。指残差信号对扰动信号的鲁棒性要强。即残差对扰动的增益小。

首先必须要满足稳定性要求,这是实现故障检测的基础。由文献[3]可得要到稳定性的条件为:

将式(27)代入式(26)中,根据文献[6]可知该式等价于:存在ηl>0(l=1,2,…,m×n)。

保证稳定性的条件:所取的故障观测器增益矩阵Ll必须满足存在对称正定矩阵P 以及 ηl>0(l=1,2,…,m×n),使得式(29)成立。

为了增强误差观测器的鲁棒性与灵敏性,设适应度函数为

式中:J1—误差系统对噪声在整个噪声频率中的传递函数增益;ωr—噪声信号的频率点,为了减小噪声对系统的影响,J1要尽量的小。J2—误差系统对故障在整个故障信号频率中的传递函数增益,由于传感器或者执行机构故障信号大多集中在低频段[10],故令z=1。为了增大系统对故障信号的敏感性,故必须使得J2尽可能大,所以优化的目标为求取适应度函数的最小值。

综上所述,基于改进BA 算法的故障检测可以总结为以下优化问题:

具体的优化步骤为:

(1)改进BA 的参数初始化。(2)稳定性判定。将初始坐标代入式(31),若使得该矩阵不等式存在可行解,进入下一步;否则,返回(2)。(3)以改进BA 进行优化,每次寻找得到的最优位置均带入式(31)中的线性矩阵不等式,若存在可行解,则继续优化,否则重新进行位置寻找。(4)判断是否达到最大迭代次数Iterate_times,若满足,则停止算法并输出适应度函数的极值以及对应的最优位置,即可得到最优的故障观测器增益矩阵Ll;否则返回(3),再进行下一次迭代寻优。

5 仿真算例及结果分析

5.1 控制系统半物理仿真平台

仿真验证利用发动机分布式控制系统半物理仿真平台来进行,该系统结构图,如图2 所示。由发动机模拟计算机、控制计算机、智能执行机构、智能传感器五部分组成,其中发动机模拟计算机运行发动机数学模型,智能传感器通过接收模型计算机中解算出的各个传感器模拟量,进行数据转换,并通过串口上传至CAN 总线,与发动机控制计算机进行实时通讯。控制计算机中接收CAN 总线上的数字量,运行控制算法,输出控制信号至CAN 总线,控制面板中实时显示发动机运行数据和曲线,并能够在控制面板中进行控制器参数调整、故障模拟、通讯检测等操作。智能执行机构从CAN 总线中接收控制信号,以模拟量信号输出至发动机模拟计算机中进行发动机转速控制。具体的实物图,如图3 所示。

图2 系统半物理平台结构图Fig.2 The Structure of Distributed Control System

图3 网络控制系统仿真平台实物图Fig.3 The Real Figure of Distributed Control System

5.2 基于半物理平台的仿真

给定无人机发动机某一稳态连续状态空间模型,以T=20ms为采样周期离散化可得:

在求解过程中,设置寻优解空间为[-10,10]6,采样步长为τ=20ms,最大迭代次数gmax=1000,种群规模sizepop=100,协同子种群m=5,α0=β0=0.7。

分别以基本BA 和改进BA 对故障观测器增益矩阵Ll(l=1,2,3,4)进行优化,其中Ll的优化结果,如图4、表1 所示。从图4和表1 中可以看出改进的BA 的极值较小,且收敛速度比较基本BA 少了9 个迭代周期,且从图中可以看出,改进的BA 收敛曲线更加平滑,说明该方法更容易跳出局部极值,说明改进BA 对在故障观测器矩阵优化上相对于基本BA 在收敛速度、收敛性能以及收敛精度上具有较大的提高,验证了改进BA 的优越性。

图4 优化结果对比图Fig.4 The Comparison Figure of Optimization Method

表1 优化结果数据对比表Tab.1 The Comparison Table of Optimization Method

从表1 中可以得到最优适应度函数所对应的故障观测器矩阵为L1=[0.3552 -0.9901 1.3021 0 -0.5797 0]T,同理可得其他三种情况的观测器增益矩阵为:

L2=[0.9175 -0.1125 0 -0.0087 0.0341 0]T

L3=[1.1274 -0.3678 -0.1341 0 0.1124 0]T

L4=[0.8963 -0.0142 0 -0.0112 0 0.3124]T

为在半物理平台上模拟出双通道多包传输,由于系统传输数据量较小,数据包的数据区只需要三位,故将CAN 总线中传输数据包的第四个数据位设置为数据包标志位。设置的数据包随机传输序列,如图5 所示。

图5 数据包随机传输序列图Fig.5 The Time Sequence Diagram of Packet Transmission

系统控制器根据传输的数据包来自动切换故障观测器增益矩阵,从而实现对整个系统的故障检测。为模拟系统的传感器短路故障,对系统施加一个幅值较小的阶跃型故障,同时添加一个幅值为0.8 的噪声信号,检测结果,如图6、图7 所示。分别代表文献[3]介绍的传统鲁棒故障观测器与改进BA 优化的故障观测器检测残差结果,可以看出传统方法的残差信号振动幅值为0.1,而优化方法的残差振动幅值仅为0.075,这说明噪声信号对传统检测方法的影响较大,另外,传统检测方法的残差与正常状态无法完全通过设定阈值来区分,而图7 显示的优化故障观测器方法对故障信号有明显的放大作用,且噪声分量明显减少,阈值设定范围从传统的0.1 到0.155 扩展为0.075 到0.193,范围扩大了2.14倍,说明该方法跟有利于区分故障状态与正常状态。另外,令传感器漂移模拟故障为f=0.15*(t-20)*δ(t-20),给定幅值为0.05 噪声信号,分别利用文献[3]的故障观测器方法与改进BA 优化方法所得到的残差变化对比图,如图6 所示。从图8 中可以看出传统的故障观测器方法噪声较大,而优化的故障观测器方法噪声分量明显减少,故障信号有明显的放大作用,残差能够更快的增大到阈值,从而更快速的检测出系统的漂移故障。

图6 传统鲁棒观测器检测残差图Fig.6 The Residual of Traditional Robust Observer

图7 改进BA 观测器检测残差图Fig.7 The Residual of Improved BA Observer

图8 斜坡故障监测残差对比图Fig.8 The Drift Fault Residual Comparison

进一步给定一个传感器的非线性故障:

此时同样给定一个幅值为0.05 的噪声信号,检测残差对比结果,如图9 所示。

图9 非线性故障检测残差对比图Fig.9 The Nonlinear Fault Residual Comparison

传统方法的残差振动约为0.0038,而优化方法的残差幅值为0.0018,这说明噪声信号对传统检测方法影响更大,另外,传统方法的阈值选择范围为0.0038 到0.012,而优化方法的阈值选择范围为0.0018 到0.021,范围增大了2.34 倍。进一步说明该优化方法对故障状态与正常状态具有更好的区分度。综上所述,利用改进BA 优化的观测器增益矩阵能够使得残差信号放大故障信号而减弱噪声的影响,能够有效的减少故障的漏报率,提升故障预警的准确性。

6 结语

为了更加贴近实际的网络控制系统,考虑了双通道多包传输的短时变时延汽车分布式控制系统,利用改进BA 对同时兼具故障敏感性与噪声鲁棒性的适应度函数进行优化从而得到最优观测器增益矩阵。仿真结果表明:(1)该观测器能够保证切换条件下的残差渐进稳定。(2)改进BA 在保证一定收敛速度的条件下,相对于基本BA 来说具有更好的收敛精度。(3)提出的传感器故障检测优化方法不仅能够抑制噪声信号对残差幅值的影响,还能够有效提升故障状态与正常状态的区分度,进一步扩大阈值的选择范围,能够有效的提升了传感器各类故障的检测率,减少了误报率,并且能够增大人工设定阈值的容错率,进一步说明该方法的有效性。

猜你喜欢
观测器蝙蝠残差
基于双向GRU与残差拟合的车辆跟驰建模
基于滑模观测器的PMSM无位置传感器控制策略
基于非线性干扰观测器的航天器相对姿轨耦合控制
基于残差学习的自适应无人机目标跟踪算法
基于递归残差网络的图像超分辨率重建
基于滑模观测器的机翼颤振主动抑制设计
蝙蝠
基于观测器的列车网络控制
综合电离层残差和超宽巷探测和修复北斗周跳
蝙蝠女