matlab在故障诊断中的应用,Matlab在发动机故障诊断中的应用研究

本文探讨了Matlab小波分析在电控发动机断缸故障诊断中的实用性,通过实验研究了转速信号处理和异常检测,展示了小波除噪和连续小波变换在信号特征提取中的关键作用。案例以Volvo B230F发动机为平台,通过'dmey'小波和'haar'小波进行信号处理,以验证小波分析技术在汽车故障诊断中的潜力。
摘要由CSDN通过智能技术生成

计算机与信息技术的发展使得汽车故障诊断技术发生了实质性的变革,现代汽车的检测、诊断与维修已不再是传统意义上的仅凭经验和手工操作就能完成的工作了,如何从机械、电子等全方位的角度对汽车进行故障诊断是目前热门的研究方向。而在汽车故障诊断技术中,小波分析是一项非常热门的技术,它具有良好的时频局部化特性,处理时变信号具有独特的优越性,在机械设备的故障诊断,尤其是在瞬变信号的处理中得到了日益广泛的重视和应用[1-2]。本文以电控发动机断缸故障为例,探讨Matlab小波分析在发动机故障诊断中应用的可行性。1试验用发动机本实验主要是采集和记录转速传感器正常和异常信号,然后利用小波分析技术分析判断转速传感器是否正常工作对发动机性能的影响。实验在VolvoB230F型电控汽油喷射式发动机上进行。排量2.32L,缸径96mm,行程80mm,额定功率85kW(5400r/min)。2转速波形信号的小波分析2.1小波除噪由于各状态下的转速波形具有明显的干扰现象,而干扰对故障特征参数的提取有影响,所以应除去干扰信号。利用小波变换优良的波滤性能除去干扰信号,获取不同状态时的特征信息。小波的多尺度分解能提供有效的除噪工具[3-5]。图1是小波变换的一层滤波原理图,原始转速信号S通过两个互补对称滤波器后,得到高、低频率的两路信号。图1信号的滤波过程Fig.1Wavefilteringcourseofsignal利用“dmey”小波,对发动机转速正常和异常信号进行三层除噪,结果如图2和图3所示。图中S是原始正常和异常信号,d1、d2、d3是正常和异常转速信号的高频率部分(噪声),a3是正常和异常转信号的低频率部分或滤波后的信号。2.2利用连续小波变换分析正常和异常怠速转速信号2.2.1转速信号小波变换从图2和图3可以看出,转速信号除噪后,由于发动机飞轮系统的惯性稳速作用,转速传感器的信号灵敏度低,所以滤波后必须进行处理。本文利用Matlab6.5软件的一维连续小波变换工具,通过“haar”小波计算出正常和异常信号的小波变换系数,信号处理结果如表1、图4和图5所示。图4为滤波后转速正常信号(上面)和其一维连续小波变换系数线(下面)。从图中可以看出,在发动机正常工况下,曲轴每转两转(720),表1正常和异常信号的小波系数的最大值Table1Maximalsmallwavecoefficientofnormalandabnormalsignal第一段(1和3缸)第二段(4和2缸)飞轮上的孔号小波系数最大值正常异常飞轮上的孔号小波系数最大值正常异常飞轮上的孔号小波系数最大值正常异常飞轮上的孔号小波系数最大值正常异常空-4.59-4.89292.582.28空-4.89-4.76292.281.77空-4.59-4.89302.912.50空-4.89-4.76302.721.7716.495.98312.742.5017.726.82312.721.7722.421.41321.932.5022.722.74323.371.7732.61.20332.262.5032.072.74332.501.7742.091.63342.582.7242.502.42342.501.7752.581.41352.422.5052.092.09352.071.7762.091.41362.422.5062.092.09362.521.6072.091.41372.422.7272.722.09372.481.6081.281.41382.422.7282.502.09382.521.6092.421.6

现有训练集数据,1000 × 7,如下: xxxxxxxxxxxxxxxxxxxx 有测试集数据,100 × 7,如下: xxxxxxxxxxxxxxxxxxxx 以上数据分别是从某系统采集的数据,  训练数据集,分别是采集的数据和标注结果,其1、2分别表示该系统有无故障;  测试数据集,分别是采集的数据和真实结果,其1、2分别表示该系统有无故障; 现在需要使用训练数据集训练BP神经网络,然后用训练好的神经网络对测试数据集进行测试,并与真实结果进行对比,最终分析出神经网络的性能。 % --- Executes on button press in pushbutton6. function pushbutton6_Callback(hObject, eventdata, handles) % hObject handle to pushbutton6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global output_test inputn_train outputn_train inputn_test ... outputps BPoutput_test xunlian_num Error input_train output_train %创建网络 %获得gui_set值 num_yinhan=str2num(get(findobj('tag','edit_yinhan'),'string')); TF=get(findobj('tag','transfer'),'string'); %传递函数 valueTF=get(findobj('tag','transfer'),'value'); TF=TF{valueTF}; BTF=get(findobj('tag','train'),'string'); %训练函数 valueBTF=get(findobj('tag','train'),'value'); BTF=BTF{valueBTF}; BLF=get(findobj('tag','learn'),'string'); %学习函数 valueBLF=get(findobj('tag','learn'),'value'); BLF=BLF{valueBLF}; tic;%启动一个定时器 net=newff(inputn_train,outputn_train,num_yinhan,{TF},BTF,BLF); net.trainParam.epochs=str2num(get(findobj('tag','cishu'),'string')); net.trainParam.goal=str2num(get(findobj('tag','goal'),'string')); net.trainParam.lr=str2num(get(findobj('tag','rate'),'string')); net=train(net,inputn_train,outputn_train); an=sim(net,inputn_test); t=toc;%关闭定时器,获取程序运行时间 %网络输出反归一化
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值