发明名称 基于Internet网的锅炉传感器故障诊断和容错一体化方法及装置
摘要 一种基于Internet网的锅炉传感器故障诊断和容错一体化方法及装置,该控制方法应用三层的神经元网络。通过采集传感器测量的数据对应的电压值,并对数据分组,确定输入输出模式对,将分组的数据用于训练模糊小脑模型关节控制器神经网络,进行故障诊断和容错处理。为实现该方法本发明还对应提供一种控制装置。本发明通过对Internet网络环境下的传感器故障诊断及智能容错控制一体化这一关键技术的研究,实现对复杂过程进行实时监测。既考虑了传感器可能应用的场合,又考虑了一些实际过程中众多传感器信息的冗余性,因而本发明还可以应用到基于Internet网的水下机器人、化工等工业领域。
申请公布号 CN100387901C 申请公布日期 2008.05.14
申请号 CN200510047030.9 申请日期 2005.08.10
申请人 东北大学 发明人 张颖伟;刘建昌;姜斌;袁平;周伟;王小刚;孙得维
分类号 F22B35/18(2006.01);G06N3/02(2006.01);G01D18/00(2006.01);G05B15/00(2006.01) 主分类号 F22B35/18(2006.01)
代理机构 沈阳东大专利代理有限公司 代理人 梁焱
主权项 1.一种基于Intrnmet网的锅炉传感器故障诊断和容错一体化方法,其特征在于该方法的具体控制过程如下:步骤一、采集数据:采集传感器测量的数据对应的电压值x(1),x(2),...,x(n);步骤二、数据分组,确定输入输出模式对:I.确定每一个输入输出模式对中输入数据的数量m,即观测值的数量,m值根据多次试验获得的实验数据及测量结果比较确定;II.对于单传感器,将所采集的n个数据分成k组,k=n-(m-1),每组有m+1个值,其中前m个值作为神经网络输入节点的输入值,第m+1个值作为训练后的神经网络输出形成样本,即从第1个数据开始,用传感器输出的前m个数据x(1),x(2),...,x(m)作为神经网络的输入,用传感器输出的第m+1个数据x(m+1)作为神经网络的输出形成第1组样本;从第2个数据开始,以m个数据x(2),x(3),...,x(m+1)作为神经网络的输入,以x(m+2)作为神经网络的输出形成第2组样本;依此类推,可将传感器输出序列分成k组,每组m+1个数据,形成k个输入输出模式对;将分组的数据用于离线训练单个神经网络,此时p=m,q=1,训练得到各个权值;对于多传感器,设定传感器的数量为N,那么神经网络的个数也为N,即N个神经网络并联,每个传感器采集n个数据,同样将所采集的n个数据分成k组,k=n-(m-1),每组有m+1个值,其中前m个值作为各个神经网络输入节点的输入值,第m+1个值作为每个神经网络的输出,这样,输入数据总共为N×m个,输出数据总共为N个;步骤三、将分组的数据用于离线训练神经网络,通过BP网络学习过程得到各个权值;BP网络学习过程的具体步骤如下:(1)初始化给各连接权W<sub>ij</sub>、V<sub>jt</sub>及阈值牟θ<sub>j</sub>、γ<sub>t</sub>,并赋予[-1,+1]之间的随机值;(2)随机选取一模式对<maths num="0001"><![CDATA[<math><mrow><msub><mi>A</mi><mi>k</mi></msub><mo>=</mo><mo>[</mo><msubsup><mi>a</mi><mn>1</mn><mi>k</mi></msubsup><mo>,</mo><msubsup><mi>a</mi><mn>2</mn><mi>k</mi></msubsup><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msubsup><mi>a</mi><mi>n</mi><mi>k</mi></msubsup><mo>]</mo><mo>,</mo></mrow></math>]]></maths><maths num="0002"><![CDATA[<math><mrow><msub><mi>Y</mi><mi>k</mi></msub><mo>=</mo><mo>[</mo><msubsup><mi>y</mi><mn>1</mn><mi>k</mi></msubsup><mo>,</mo><msubsup><mi>y</mi><mn>2</mn><mi>k</mi></msubsup><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msubsup><mi>y</mi><mi>q</mi><mi>k</mi></msubsup><mo>]</mo><mo>,</mo></mrow></math>]]></maths>提供给网络;用输入模式<maths num="0003"><![CDATA[<math><mrow><msub><mi>A</mi><mi>k</mi></msub><mo>=</mo><mo>[</mo><msubsup><mi>a</mi><mn>1</mn><mi>k</mi></msubsup><mo>,</mo><msubsup><mi>a</mi><mn>2</mn><mi>k</mi></msubsup><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msubsup><mi>a</mi><mi>n</mi><mi>k</mi></msubsup><mo>]</mo><mo>,</mo></mrow></math>]]></maths>连接权W<sub>ij</sub>和阈值θ<sub>j</sub>计算中间层各神经元的输入s<sub>j</sub>(激活值),然后用s<sub>j</sub>通过激活函数获得中间层的输出b<sub>j</sub>,即公式(3):<maths num="0004"><![CDATA[<math><mrow><msub><mi>b</mi><mi>j</mi></msub><mo>=</mo><mi>f</mi><mrow><mo>(</mo><msub><mi>s</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>=</mo><mfrac><mn>1</mn><mrow><mn>1</mn><mo>+</mo><mi>exp</mi><mrow><mo>(</mo><mo>-</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msub><mi>W</mi><mi>ij</mi></msub><mo>&CenterDot;</mo><msub><mi>a</mi><mi>i</mi></msub><mo>+</mo><msub><mi>&theta;</mi><mi>j</mi></msub><mo>)</mo></mrow></mrow></mfrac><mo>,</mo><mrow><mo>(</mo><mi>j</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>p</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow></math>]]></maths>(3)用中间层的输出b<sub>j</sub>、连接权W<sub>jt</sub>和阈值γ<sub>t</sub>计算输出层各单元的输入l<sub>t</sub>(激活值),然后用l<sub>t</sub>通过激活函数计算输出层各单元的输出c<sub>t</sub>,即公式(5):<maths num="0005"><![CDATA[<math><mrow><msub><mi>c</mi><mi>t</mi></msub><mo>=</mo><mi>f</mi><mrow><mo>(</mo><msub><mi>l</mi><mi>t</mi></msub><mo>)</mo></mrow><mo>=</mo><mfrac><mn>1</mn><mrow><mn>1</mn><mo>+</mo><mi>exp</mi><mrow><mo>(</mo><mo>-</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>p</mi></munderover><msub><mi>V</mi><mi>jt</mi></msub><mo>&CenterDot;</mo><msub><mi>b</mi><mi>j</mi></msub><mo>+</mo><msub><mi>&gamma;</mi><mi>t</mi></msub><mo>)</mo></mrow></mrow></mfrac><mo>,</mo><mrow><mo>(</mo><mi>t</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>q</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow></math>]]></maths>式中V<sub>jt</sub>-中间层第j单元至输出层第t单元连接权;γ<sub>t</sub>-输出层第t单元阈值;f-S型激活函数;(4)用希望输出模式<maths num="0006"><![CDATA[<math><mrow><msub><mi>Y</mi><mi>k</mi></msub><mo>=</mo><mo>[</mo><msubsup><mi>y</mi><mn>1</mn><mi>k</mi></msubsup><mo>,</mo><msubsup><mi>y</mi><mn>2</mn><mi>k</mi></msubsup><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msubsup><mi>y</mi><mi>q</mi><mi>k</mi></msubsup><mo>]</mo><mo>,</mo></mrow></math>]]></maths>网络实际输出c<sub>t</sub>计算输出层各单元的校正误差d<sub>t</sub><sup>k</sup>,即公式(6):<maths num="0007"><![CDATA[<math><mrow><msubsup><mi>d</mi><mi>t</mi><mi>k</mi></msubsup><mo>=</mo><mrow><mo>(</mo><msubsup><mi>y</mi><mi>t</mi><mi>k</mi></msubsup><mo>-</mo><msubsup><mi>c</mi><mi>t</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mo>&CenterDot;</mo><msup><mi>f</mi><mo>&prime;</mo></msup><mrow><mo>(</mo><msubsup><mi>l</mi><mi>t</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mo>=</mo><mrow><mo>(</mo><msubsup><mi>y</mi><mi>t</mi><mi>k</mi></msubsup><mo>-</mo><msubsup><mi>c</mi><mi>t</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mo>&CenterDot;</mo><msubsup><mi>c</mi><mi>t</mi><mi>k</mi></msubsup><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msubsup><mi>c</mi><mi>t</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mo>,</mo><mi>t</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>q</mi><mo>,</mo><mi>k</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow></mrow></math>]]></maths>式中y<sub>t</sub><sup>k</sup>-期望输出;c<sub>t</sub><sup>k</sup>-实际输出;f′-对输出层函数的导数;(5)用V<sub>jt</sub>,d<sub>t</sub>,b<sub>j</sub>计算中间层的校正误差e<sub>j</sub><sup>k</sup>,即公式(7);<maths num="0008"><![CDATA[<math><mrow><msubsup><mi>e</mi><mi>j</mi><mi>k</mi></msubsup><mo>=</mo><mrow><mo>(</mo><munderover><mi>&Sigma;</mi><mrow><mi>t</mi><mo>=</mo><mn>1</mn></mrow><mi>q</mi></munderover><msub><mi>V</mi><mi>jt</mi></msub><mo>&CenterDot;</mo><msubsup><mi>d</mi><mi>t</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mo>&CenterDot;</mo><msup><mi>f</mi><mo>&prime;</mo></msup><mrow><mo>(</mo><msubsup><mi>s</mi><mi>j</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mo>=</mo><mrow><mo>(</mo><munderover><mi>&Sigma;</mi><mrow><mi>t</mi><mo>=</mo><mn>1</mn></mrow><mi>q</mi></munderover><msub><mi>V</mi><mi>jt</mi></msub><mo>&CenterDot;</mo><msubsup><mi>d</mi><mi>t</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mo>&CenterDot;</mo><msub><mi>b</mi><mi>j</mi></msub><mo>&CenterDot;</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msub><mi>b</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>,</mo><mrow><mo>(</mo><mi>j</mi><mo>=</mo><mn>1,2</mn><mo>.</mo><mo>.</mo><mo>.</mo><mi>p</mi><mo>,</mo><mi>k</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>m</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow></math>]]></maths>用d<sub>t</sub><sup>k</sup>,b<sub>j</sub>,V<sub>jt</sub>和γ<sub>t</sub>计算下一次的中间层和输出层之间的新连接权,即公式(8)和(9):<maths num="0009"><![CDATA[<math><mrow><msub><mi>V</mi><mi>jt</mi></msub><mrow><mo>(</mo><mi>N</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msub><mi>V</mi><mi>jt</mi></msub><mrow><mo>(</mo><mi>N</mi><mo>)</mo></mrow><mo>+</mo><mi>&alpha;</mi><mo>&CenterDot;</mo><msubsup><mi>d</mi><mi>t</mi><mi>k</mi></msubsup><mo>&CenterDot;</mo><msub><mi>b</mi><mi>j</mi></msub><mo>&DoubleRightArrow;</mo><mi>&Delta;</mi><msub><mi>V</mi><mi>jt</mi></msub><mo>=</mo><mi>&alpha;</mi><mo>&CenterDot;</mo><msubsup><mi>d</mi><mi>t</mi><mi>k</mi></msubsup><mo>&CenterDot;</mo><msubsup><mi>b</mi><mi>j</mi><mi>k</mi></msubsup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>8</mn><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0010"><![CDATA[<math><mrow><msub><mi>&gamma;</mi><mi>t</mi></msub><mrow><mo>(</mo><mi>N</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msub><mi>&gamma;</mi><mi>t</mi></msub><mrow><mo>(</mo><mi>N</mi><mo>)</mo></mrow><mo>+</mo><mi>&alpha;</mi><mo>&CenterDot;</mo><msubsup><mi>d</mi><mi>t</mi><mi>k</mi></msubsup><mo>&DoubleRightArrow;</mo><mi>&Delta;</mi><msub><mi>&gamma;</mi><mi>t</mi></msub><mo>=</mo><mi>&alpha;</mi><mo>&CenterDot;</mo><msubsup><mi>d</mi><mi>t</mi><mi>k</mi></msubsup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mrow></math>]]></maths>式中b<sub>j</sub><sup>k</sup>-中间层第j单元的输出;d<sub>t</sub><sup>k</sup>-输出层的校正误差;j=1,2,...,p t=1,2,...,q k=1,2,...,m 0<α<1(学习系数);(6)由e<sub>j</sub><sup>k</sup>,a<sub>i</sub><sup>k</sup>,W<sub>ij</sub>和θ<sub>j</sub>计算下一次的输入层和中间层之间的新连接权,即公式(10)和(11):<maths num="0011"><![CDATA[<math><mrow><msub><mi>W</mi><mi>ij</mi></msub><mrow><mo>(</mo><mi>N</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msub><mi>W</mi><mi>ij</mi></msub><mrow><mo>(</mo><mi>N</mi><mo>)</mo></mrow><mo>+</mo><mi>&Delta;</mi><msub><mi>W</mi><mi>ij</mi></msub><mo>=</mo><msub><mi>W</mi><mi>ij</mi></msub><mrow><mo>(</mo><mi>N</mi><mo>)</mo></mrow><mo>+</mo><mi>&beta;</mi><mo>&CenterDot;</mo><msubsup><mi>e</mi><mi>j</mi><mi>k</mi></msubsup><mo>&CenterDot;</mo><msubsup><mi>a</mi><mi>i</mi><mi>k</mi></msubsup><mo>&DoubleRightArrow;</mo><mi>&Delta;</mi><msub><mi>W</mi><mi>ij</mi></msub><mo>=</mo><mi>&beta;</mi><mo>&CenterDot;</mo><msubsup><mi>e</mi><mi>j</mi><mi>k</mi></msubsup><mo>&CenterDot;</mo><msubsup><mi>a</mi><mi>i</mi><mi>k</mi></msubsup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>10</mn><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0012"><![CDATA[<math><mrow><msub><mi>&theta;</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>N</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msub><mi>&theta;</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>N</mi><mo>)</mo></mrow><mo>+</mo><mi>&Delta;</mi><msub><mi>&theta;</mi><mi>j</mi></msub><mo>=</mo><msub><mi>&theta;</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>N</mi><mo>)</mo></mrow><mo>+</mo><mi>&beta;</mi><mo>&CenterDot;</mo><msubsup><mi>e</mi><mi>j</mi><mi>k</mi></msubsup><mo>&DoubleRightArrow;</mo><mi>&Delta;</mi><msub><mi>&theta;</mi><mi>j</mi></msub><mo>=</mo><mi>&beta;</mi><mo>&CenterDot;</mo><msubsup><mi>e</mi><mi>j</mi><mi>k</mi></msubsup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>11</mn><mo>)</mo></mrow></mrow></math>]]></maths>式中e<sub>j</sub><sup>k</sup>-中间层第j单元的校正误差;i=1,2,...,n<0<β<1(学习系数);(7)选取下一个学习模式对提供给网络,返回到第三步,直至全部m个模式对训练完;(8)重新从m个学习模式对中随机选取一个模式对,返回到第三步,直至网络全局误差函数E小于预先设定的限制值;步骤四、故障诊断:对于单传感器情况,即任意K时刻,神经网络输入值为前K-m时刻采集传感器测量的数据,为x(K-m),x(K-m+1),...,x(K-1),神经网络输出值即预测值为<img file="C2005100470300004C3.GIF" wi="124" he="60" />当预测值<img file="C2005100470300004C4.GIF" wi="108" he="60" />与传感器的实测值之差大于设定阈值时,或由于网络的时间延迟、数据包丢失而未能得到传感器的实测值时,则判断故障发生;对于多传感器情况,假定任一时刻最多只有一个传感器发生故障,传感器的个数为N,神经网络输入数据为:[x<sub>1</sub>(K-m),x<sub>1</sub>(K-m+1),...,x<sub>1</sub>(K-1)]为第一个分组数据、[X<sub>2</sub>(K-m),x<sub>2</sub>(K-m+1),...,x<sub>2</sub>(K-1)]为第二个分组数据、......、[X<sub>N</sub>(K-m),x<sub>N</sub>(K-m+1),...,x<sub>N</sub>(K-1)]为第N个分组数据,神经网络输出值即第K时刻的预测值为<img file="C2005100470300004C5.GIF" wi="144" he="63" />i=1,2,...,N,第i个神经网络输出与第i个传感器的实测值之差大于设定阈值时,或由于网络的时间延迟、数据包丢失而未能得到第i个传感器的实测值时,则判断故障发生;步骤五、容错:对于单传感器情况,用<img file="C2005100470300004C6.GIF" wi="108" he="59" />代替传感器的输出;对于多传感器情况,第i个神经网络输出<img file="C2005100470300004C7.GIF" wi="121" he="60" />代替第i个传感器的输出。
地址 110004辽宁省沈阳市和平区文化路3号巷11号