您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 冶金工业 > 北航神经网络作业—神经网络在采煤机故障诊断中的应用
智能控制及应用作业二第1页目录1.题目分析............................................................................................22.学习算法............................................................................................23.单层感知器的VC++程序实现............................................................44.神经网络在采煤机故障诊断中的应用..............................................7参考文献:..................................................................................................9智能控制及应用作业二第2页1.题目分析本章主要讲诉的是主要是神经网络控制及其应用的相关内容,作业题目共有两题,题目要求如下:1、设计一个实现逻辑“与”的单计算层感知器,并写出其学习算法和程序。2、紧密结合自己的专业背景、科研方向或解决问题的经历,谈谈学习人工神经网络或神经网络控制的必要性。要求说明自己的科研或专业背景,拟关注的问题或研究方向,与人工神经网络有什么关联。单层感知器即三层(输入层、隐层和输出层,结点数分别为4、3和2)网络,其学习算法根据教材相关内容采用BP学习算法。2.学习算法根据教材中的相关介绍,神经网络算法主要步骤如下:1.初始化,分别对输入层到隐层和隐层到输出层的权值矩阵W,V赋随机数,将样本计数器p和训练次数计数器q置为1,误差E置为0,学习率设为0-1间的小数,网格训练精度Emin设为一正的小数。2.输入训练样本,计算各层输出。用当前样本pX、pd对向量数组X、d赋值,根据以下公式计算Y和O中各分量:ko=f(knet),k=1,2,3…ljy=f(jnet),j=1,2,3…m3.计算各节点的实际输出。()sgn(()),1,2,...,pTPjjotWtXjm;4.调整各层权值,按下式计算ok和jy:()(1)okkkkkdooo智能控制及应用作业二第3页1()(1)ljoykjkjjkyy5.检查是否对所有样本完成一次轮训。若完成,则进行下一步进行均方根误差计算;否则,返回步骤2。6.计算网络总误差,检查是否达到精度要求。若达到计算要求,训练结束;否则,E置0,p置1,并返回步骤2,继续计算,直到达到精度要求为止。具体的流程图如下:初始化:V,W赋随机数;样本计数器p和训练次数计数器q置1;误差E置为0,学习率η设为0-1间的小数;网格训练精度Emin设为一正的小数。输入样本,计算各层输出计算输出误差。计算各层误差信号。调整各层权值。pP?E总Emin?p增1,q增1E=0,p=1NYNY结束智能控制及应用作业二第4页3.单层感知器的VC++程序实现按照3.1章节的学习算法,即可对其进行计算机编程实现,编程环境采用MicrosoftVisualStudio2008,程序清单如下:#includestdafx.h#includestdlib.h#includestdio.h#includetime.hinti=0;intX1[4]={0,0,1,1},X2[4]={0,1,0,1};intd[4]={0,0,0,1};//样本X的期望输出值floatw[2],y,e[4];floatec=0.0001;//指定输出偏差值floatstep=0.5;//学习步长floatb=0.6;//阈值//定义激活函数floatf(floatx){if(x0)return1;elsereturn0;}//定义学习训练函数voidxx(inti){y=w[0]*X1[i]+w[1]*X2[i];智能控制及应用作业二第5页y=f(y-b);ec[i]=d[i]-y;}//权值调整函数voidrepower(inti){w[0]=w[0]+step*ec[i]*X1[i];w[1]=w[1]+step*ec[i]*X2[i];}int_tmain(intargc,_TCHAR*argv[]){intcount=0;//记录感知器训练次数//初始化W矩阵intj;for(j=0;j2;j++){srand((unsigned)time(NULL)+j*10);w[j]=(float)((rand()%10+1))/100;//随机生成较小的权值}do{count++;if(count100){printf(单层感知器学习训练次数过多,请重新调整初始权值\n);break;}if(i==4)智能控制及应用作业二第6页i=0;if(i4){xx(i);repower(i);i++;}}while(ec[0]EC&&ec[1]EC&&ec[2]EC&&ec[3]EC);if(count100){printf(权值矩阵w[0]=%f\n,w[0]);printf(权值矩阵w[1]=%f\n,w[1]);printf(\n经过学习训练%d次达到要交\n,count);printf(\n单层感知器学习完成\n);}return0;}智能控制及应用作业二第7页作业二:神经网络在采煤机故障诊断中的应用本人本科阶段就读于中国矿业大学机电工程学院,毕业设计时做的题目为采煤机截割部的相关设计。采煤机是煤矿生产中非常关键的设备,是一个集机械、电子、电气、液压传动于一体的复杂系统。因其工作环境十分恶劣,运行中经常出现故障影响生产,甚至造成整个煤矿生产系统的瘫痪。因此、对采煤机的在线监测和故障诊断是十分必要的。通过智能控制课程中关于神经网络控制部分的相关学习,我了解到人工神经网络是借鉴于生物神经网络而发展起来的新型智能信息处理系统,神经网络具有大规模并行,分布式存储和处理、联想记忆、自组织、自适应和自学习能力,特别适用于处理需要同时考虑许多因素和条件的、不精确的和模糊的信息问题。目前最广泛使用的采煤机由截割部、牵引部、电动机和附属装置四大部分组成。截割部采用齿轮传动,牵引部采用液压传动,采煤机的大多数故障出现在这两部分。考虑到采煤机结构复杂、故障现象多等特点,若输入层神经元数目太大,会影响到整个网络的学习速度和训练质量,应用模块分解技术将采煤机故障分为若干个学习模块,如电机模块、轴承模块、液压系统模块等,各模块独立进行训练和诊断,本文主要讨论采煤机截割部的故障诊断问题。截割部的传动部运动简图如图1:图1采煤机截割部传动简图由于截割部采用齿轮传动,因此截割部的主要故障发生在齿轮和轴承处。查阅相关文献发现可采用压电加速度传感器拾取各测点振动信号,如下图2所示,经数据采集系统,数据处理系统对采煤机截割头部的振动状态进行监测,就其齿轮、轴承振幅大小作为截割部传动系统故障与否的判据,共选取8个测试点作为检测对象。如图3所示,采用BP网络结构,具体结构为:输智能控制及应用作业二第8页入节点8个,输出节点4个,隐层数为一层,隐层节点数为9点,这种模型能较好地反映采煤机截割头部的故障程度。测点1测点2测点3测点4测点5测点6测点7测点8正常轻度故障故障重度故障输入层阴层输出层…………图2采煤机截割部故障诊断BP网络传感器在线监测电机电流信号,轴承的温度信号、振动信号、油温信号等,这些信号经数字滤波、特征值提取等预处理获得各种特征量。提取振动信号的时域特征:均值、方差、偏斜度、峭度为特征量,将这些特征量作为输入加载到神经网络用于故障分析。根据八个测试点的输入量诊断出确切部位的故障程度并提出故障处理的方案。查阅相关文献神经网络在采煤机故障诊断方面确实可行,但是还存在着以下的一些问题,主要有:①网络学习算法是一个非线性优化问题,不可避免地存在局部极小值问题。②尽管有许多改进算法,然而其学习收敛速度仍然很慢。③网络的隐含层数、隐含神经元的个数选取尚无理论上的依据,完全凭经验决策。④网络必须经过比较费时的离线训练,而且训练样本对数要全面而丰富。人工神经网络已成功的应用于一些行业的故障诊断,例如:航天飞机主发动机的实时诊断,汽轮机的诊断等。尽管人工神经网络真正十分成功的应用于各个领域还有许多问题亟待进一步解决,但人工神经网络为人们解决实际问题提供了一个崭新的手段,相信人工神经网络在采煤机故障诊断方面会有令人鼓舞的成果。智能控制及应用作业二第9页参考文献:[1]韩立群.智能控制理论及应用.北京:机械工业出版社.2007[2]张寒松,贾瑞清等.采煤机的故障分析与诊断及其发展趋势.矿冶.北京:中国矿业大学.2004年[3]樊淑趁,耿麦香.人工神经网络用于采煤机故障诊断系统初探.山西矿业学院学报.太原.1996年[4]贾凯,李浩,熊晓航等.PSO-BP神经网络采煤机截割系统故障诊断.辽宁工业大学学报.2007-9[5]付家才,李浩,郭勇等.神经网络在采煤机故障诊断专家系统中的应用.黑龙江科技学院学报.2007-9
本文标题:北航神经网络作业—神经网络在采煤机故障诊断中的应用
链接地址:https://www.777doc.com/doc-321918 .html