故障诊断分析基于matlab PNN概率神经网络柴油机故障诊断含Matlab源码 2343期
Posted 海神之光
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了故障诊断分析基于matlab PNN概率神经网络柴油机故障诊断含Matlab源码 2343期相关的知识,希望对你有一定的参考价值。
⛄一、PNN概率神经网络柴油机故障诊断
利用柴油机工作时产生的声信号进行故障诊断是一种非接触式测试方法,操作灵活简单,效率较高。通过分析5种工况在缸盖噪声所包含的特征,提出了分段提取特征参数的方法,提高了故障诊断的可靠性,并对概率神经网络和BP神经网络(NN)的分类效果进行了比较。
1 概率神经网络概述
概率神经网络(PNN)由径向基神经元和竞争神经元共同组建。其实质是基于贝叶斯最小风险准则发展而来的一种并行算法,经常用于解决分类问题,目前已经在雷达、心电图仪等电子设备中获得了广泛的应用。
1.1 PNN与BPNN的比较
二者都有学习、归纳和并行计算的能力,而PNN的优点在于:
· 能快速训练,其训练时间仅略大于读取数据的时间;
·只要有足够的训练数据,不管训练矢量与类别之间具有多么复杂的关系,PNN都能保证收敛到Bayes分类器,而BPNN却可能在一个局部最优解处中断,无法保证得到一个全局最优的满意解;
·PNN允许在训练集中添加或删除数据而不需重复训练,BPNN对训练集中的任何变动都需要对整个训练过程重复进行。
1.2 PNN原理
如图1 所示,概率神经网络共分为4层,分别为输入层、模式层、求和层及竞争层。待识别样本x由输入层进行规格化后直接送到模式层各个类别单元中,在模式单元中进行向量X与连接权值W的点积,完成非线性处理后,再送入求和层中;求和层将模式层中同一模式的输出求和并乘以代价因子;竞争层则选择求和层中输出最大者对应的故障模式为诊断结果。当故障样本的数量增加时,图1中模式层神经元将随之增加。而当故障模式多于两种时,则求和神经元将增加。所以,随着故障先验知识的积累,PNN可以不断横向扩展,故障诊断的能力不断提高。
图1 PNN网络结构
⛄二、部分源代码
% diagnose.m
% 柴油机故障诊断
%% 清空工作空间
clear,clc
close all
%% 定义训练样本和测试样本
% 故障1
pro1 = [1.97,9.5332,1.534,16.7413,12.741,8.3052;
1.234,9.8209,1.531,18.3907,13.988,9.1336]‘;
% 故障2
pro2 = [0.7682,9.5489,1.497,14.7612,11.497,7.68;
0.7053,9.5317,1.508,14.3161,11.094,7.3552]’;
% 故障3
pro3 = [0.8116,8.1302,1.482,14.3171,11.1105,7.4967;
0.816,9.0388,1.497,15.0079,11.6242,7.7604]‘;
% 故障4
pro4 = [1.4311,8.9071,1.521,15.746,12.0088,7.8909;
1.4136,8.6747,1.53,15.3114,11.6297,7.5984]’;
% 故障5
pro5 = [1.167,8.3504,1.51,12.8119,9.8258,6.506;
1.3392,9.0865,1.493,15.0798,11.6764,7.8209]‘;
% 正常运转
normal = [1.1803,10.4502,1.513,20.0887,15.465,10.2193;
1.2016,12.4476,1.555,20.6162,15.755,10.1285]’;
% 训练样本
trainx = [pro1, pro2, pro3, pro4, pro5, normal];
% 训练样本的标签
trlab = 1:6;
trlab = repmat(trlab, 2, 1);
trlab = trlab(😃';
%% 样本的归一化,s为归一化设置
[x0,s] = mapminmax(trainx);
%% 创建概率神经网络
tic;
spread = 1;
net = newpnn(x0, ind2vec(trlab), spread);
toc
%% 测试
% 测试样本
testx = [0.7854,8.7568,1.4915,14.4547,11.1971,7.5071;
1.1833,11.8189,1.5481,20.2626,15.5814,10.0646;
0.661,8.8735,1.508,13.598,10.5171,6.9744;
1.3111,7.9501,1.4915,14.9174,10.7511,7.7127;
1.2394,9.6018,1.5366,18.219,13.851,9.0142;
1.2448,8.3654,1.5413,15.2558,11.5643,7.503]';
⛄三、运行结果
⛄四、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1]程利军,张英堂,齐子元,范红波.基于概率神经网络和声压的柴油机故障诊断[J].车用发动机. 2008(01)
3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除
以上是关于故障诊断分析基于matlab PNN概率神经网络柴油机故障诊断含Matlab源码 2343期的主要内容,如果未能解决你的问题,请参考以下文章
故障诊断分析基于matlab BP神经网络三相逆变器故障诊断研究含Matlab源码 1736期
matlab --概率神经网PNN与广义回归神经网络GRNN
故障诊断分析基于matlab FFT轴承故障诊断含Matlab源码 2001期