專利名稱:基于Internet網的鍋爐傳感器故障診斷和容錯一體化方法及裝置的制作方法
技術領域:
本發明屬于網絡環境故障診斷和容錯技術領域。特別提供一種基于Internet網的鍋爐傳感器故障診斷和容錯一體化的控制方法和裝置,即提供一種提高鍋爐運行可靠性的控制方法。
背景技術:
隨著工業過程越來越趨向于網絡化和復雜化,以及大規模高水平的鍋爐綜合自動化系統的出現,對鍋爐系統控制質量的要求日趨突出。在對鍋爐系統的控制過程中一旦發生事故就可能造成人員和財產的巨大損失,因此,對生產過程中運行狀態、產品質量的在線監測、診斷及容錯已成為衡量生產水平和控制水平高低的重要方面,同時也是進一步提高產品質量和生產效率的關鍵技術。切實保障現代復雜過程的可靠性與安全性,具有十分重要的意義,已得到國內外廣泛的高度重視。
目前,鍋爐系統(如圖1所示)傳感器故障診斷和容錯的控制實際能夠應用的主要有以下幾種常見的方法(1)基于專家系統的方法知識庫中存放的一般知識是系統的工作環境,系統知識反映了系統的工作原理以及系統的結構知識。規則集是一組規則,反映系統的因果關系。人機接口可以為數據庫增添系統故障前和故障發生時觀測到的一些特征量。專家系統的診斷程序在知識庫和數據庫的支持下,綜合運用各種規則,進行一系列的推理,必要時還可以隨時調用各種應用程序。它在運行中向用戶索取必要的信息后,就可快速地直接找到最終故障或是最有可能的故障,再由用戶來證實系統判斷故障的準確性。
(2)基于故障樹的診斷方法這是一個在實際系統中常用的故障診斷方法,所需要的前提是有關故障與原因的先驗知識和故障率的知識。診斷過程是從系統的最終故障開始并逐級構造成一棵倒立的故障樹。通過對此故障樹的啟發式搜索會查到故障的最終原因。在提問過程中合理地使用系統的實時動態數據將有助于診斷過程的進行。目前這種方法的新發展是由計算機自動或輔助生成故障樹,并自動生成故障樹的搜索工程。
(3)基于模式識別的診斷方法這種方法的實現步驟是①故障密室向量的形成,也即選擇出能表達系統故障狀態的向量集。
②特征向量的提取。由于故障模式向量中的各參數的重要性不同,他們也不一定相互獨立,因此從中選擇出對故障狀態最敏感的特征參數,構成特征向量集,也即構成了故障的基準模式集。
③判別函數的形成。它是由特征向量以一定的方式構成的,用于識別目前狀態屬于哪一個基準模式,也即系統屬于哪種故障狀態。
對Internet網絡環境下的時間延遲和數據包丟失這些新穎故障,以上方法并不適用,目前還沒有很好的實用方法,因此必須尋求新的方法,本發明提供一種新的方法。
發明內容
本發明提供一種基于Internet網的鍋爐傳感器故障診斷和容錯一體化的方法及裝置,通過故障診斷和容錯一體化方法,判斷是否有故障發生,并在故障發生的同時進行容錯。
本發明裝置包括遠程故障診斷容錯系統、Internet網、上位機、下位機、現場傳感變送部分和控制部分,其中現場傳感變送部分包括溫度、液位、流量、壓力等檢測儀表,控制部分包括變頻器、晶閘管、調節閥等。在鍋爐現場安裝檢測儀表,檢測儀表將采集的信號送到下位機,下位機定時將采集信號傳送到上位機,上位機把接受的數據通過Internet網傳到遠程故障診斷容錯控制系統,進行故障診斷及容錯分析,然后把控制信號通過Internet網發送回上位機,上位機再把信號發送給下位機,由下位機給控制部分發送控制信號完成控制。
本發明裝置的各部分功能(1)現場傳感變送部分包括溫度、液位、流量、壓力等檢測儀表由傳感器組成,負責將參數采集并傳送;(2)下位機負責把采集的信號A/D轉換,并把信號傳送給上位機;把控制信號D/A轉換,控制鍋爐系統;
(3)上位機收集本地下位機數據,并通過Internet網傳送給遠程故障診斷和容錯控制系統,通過Internet網接收遠程故障診斷和容錯控制系統發出的控制信號,傳送給下位機;(4)Internet網遠程故障診斷和容錯控制系統通過Internet網接收和發送信號;(5)控制部分接收由下位機傳送的容錯控制信號,對現場實現控制;本發明采用神經網絡作為處理冗余傳感器輸出數據的狀態估計器。
在很多情況下,當輸入-輸出數據是與一個不可知的系統相聯系時,或者系統的模型過于復雜時,系統的模型不能建立起來,對于Internet網絡環境下的各種大型動力裝置,這些問題就很突出,這種情況下基于模型的各種分析冗余法也就無法應用。這時,神經網絡結構的映射性能就顯得特別有用。
本發明中采用的神經網絡結構為如圖2所示的BP(Back-Propagation)網,是一種具有三層的神經元網絡,它的左、右各層之間各個神經元實現全連接,即左層的每一個神經元與右層的每個神經元都有連接,而上下層各神經元之間無連接。BP網絡按有教師學習方式進行訓練,當一對學習模式提供給網絡后,其神經元的激活值將從輸入層經各中間層向輸出層傳播,輸出層的各神經元輸出對應于輸入模式的網絡響應。然后,根據減少希望輸出與實際輸出誤差的原則,從輸出層經各中間層最后回到輸入層逐層修正各連接權。由于這種修正過程是從輸出到輸入逐層進行的,所以稱它為“誤差逆傳播算法”。隨著這種誤差逆傳播訓練的不斷進行,網絡對輸入模式響應的正確率也不斷提高。
由于BP網絡有處于中間位置的隱含層,具有相應的學習規則可循,可訓練這種網絡,使其具有對非線性模式的識別能力。特別是它的數學意義明確、步驟分明的學習算法,更使其具有廣泛的應用前景。
BP網的學習過程主要由四部分組成(1)輸入模式順傳播-輸入模式由輸入層經中間層向輸出層傳播計算,(2)輸出誤差逆傳播-輸出的誤差由輸出層經中間層傳向輸入層,(3)循環記憶訓練-模式順傳播與誤差逆傳播的計算過程反復交替循環進行,(4)學習結果判別-判定全局誤差是否趨向極小值。
下面分別介紹和分析這四個過程(1)輸入模式順傳播這一過程主要是利用輸入模式求出它所對應的實際輸出。
設輸入模式向量為Ak=[a1k,a2k,...,ank]]]>(k=1,2,…,m;m-學習模式對數;n-輸入層單元個數)與輸入模式相對應的希望輸出為Yk=[y1k,y2k,...,yqk]]]>(q-輸出層單元數)根據BP神經元模型原理,計算中間層神經元j的激活值sj=Σi=1nWij·ai-θj(j=1,2,...,p)---(1)]]>式中 Wij—輸入層第i單元至中間層第j單元的連接權;θj—中間層神經元j的閾值;p—中間層單元數。
激活函數采用S型函數,即f(x)=11+exp(-x)---(2)]]>這里之所以選S型函數作為BP網神經元的激活函數是因為它是連續可微分的,而且更接近于生物神經元的信號輸出形式。
將上面的激活值帶入激活函數中可得中間層j單元的輸出值為bj=f(sj)=11+exp(-Σi=1nWij·ai+θj)(j=1,2,...,p)---(3)]]>閾值θj在學習過程中和權值一樣也不斷地被修正。閾值的作用反映在S函數的輸出曲線上。
同理,可求得輸出端的激活值和輸出值設輸出層第t單元的激活值為lt,則lt=Σj=1pVjt·bj-γt---(4)]]>
設輸出層第t單元的實際輸出值為ct,則ct=f(lt)=11+exp(-Σj=1pVjt·bj+γt)(t=1,2,...,q)---(5)]]>式中 Vjt—中間層第j單元至輸出層第t單元連接權;γt—輸出層第t單元閾值;f—S型激活函數。
利用以上各式就可計算出一個輸入模式的順傳播過程。
(2)輸出誤差逆傳播在第一步的模式順傳播計算中得到了網絡的實際輸出值,當這些實際的輸出值與期望的輸出值不一樣時或者說其誤差大于所限定的數值時,就要對網絡進行校正。
這里的校正是從后向前進行的,所以叫做誤差逆傳播,計算時是從輸出層到中間層,再從中間層到輸入層。
輸出層的校正誤差為dtk=(ytk-ctk)·f′(ltk)=(ytk-ctk)·ctk(1-ctk)t=1,2,...,qk=1,2,...(6)]]>式中 ytk—期望輸出;ctk—實際輸出;f′—對輸出層函數的導數。
這里采用的是一種delta學習規則。
中間層第j單元的校正誤差為ejk=(Σt=1qVjt·dtk)·f′(sjk)=(Σt=1qVjt·dtk)·bj·(1-bj)(j=1,2,...pk=1,2,...,m)---(7)]]>在這里,每一個中間層單元的校正誤差都是由q個輸出層單元校正誤差傳遞而產生的。當校正誤差求得后,則可利用dtk和ejk沿逆方向逐層調整輸出層至中間層、中間層至輸入層的連接權。
對于輸出層至中間層連接權的校正量和輸出層閾值的校正量分別為Vjt(N+1)=Vjt(N)+α·dtk·bj⇒ΔVjt=α·dtk·bjk---(8)]]>
γt(N+1)=γt(N)+α·dtk⇒Δγt=α·dtk---(9)]]>式中 bjk—中間層第j單元的輸出;dtk—輸出層的校正誤差。
j=1,2,…,p t=1,2,…,q k=1,2,…,m 0<α<1(學習系數)中間層至輸入層的校正量為Wij(N+1)=Wij(N)+ΔWij=Wij(N)+β·ejk·aik⇒ΔWij=β·ejk·aik---(10)]]>θj(N+1)=θj(N)+Δθj=θj(N)+β·ejk⇒Δθj=β·ejk---(11)]]>式中 ejk—中間層第j單元的校正誤差。
i=1,2,…,n 0<β<1(學習系數)。
這里可以看出a)校正量與誤差成正比,即誤差越大,調整的幅度就越大,這一物理意義是顯而易見的。
b)校正量與輸入值的大小成正比,這里由于輸入值越大,在這次學習過程中就顯得越活躍,所以與其相連的權值的調整幅度就應該越大。
c)校正量與學習系數成正比。通常學習系數在0.1-0.8之間,為使整個學習過程加快,又不引起震蕩,可采用變學習率的方法,即在學習初期取較大的學習系數,隨著學習過程的進行逐漸減小其值。
(3)循環記憶訓練為使網絡的輸出誤差趨于極小值。對于BP網輸入的每一組訓練模式,一般要經過數百次甚至上萬次的循環記憶訓練,才能使網絡記住這一模式。
這種循環記憶訓練實際上就是反復重復上面介紹的輸入模式順傳播和輸出誤差逆傳播過程。
(4)學習結果的判別當每次循環記憶訓練結束后,都要進行學習結果的判別。判別的目的主要是檢查輸出誤差是否已經小到允許的程度。如果小到了允許的程度,就可以結束整個學習過程,否則還要進行循環訓練。學習或者說訓練的過程是網絡全局誤差趨向極小值的過程。
根據上面的分析,可以得到BP網絡的整個學習過程的具體步驟(1)初始化給各連接權Wij、Vjt及閾值θj、γt,并賦予[-1,+1]之間的隨機值。
(2)隨機選取一模式對Ak=[a1k,a2k,...,ank],Yk=[y1k,y2k,...,yqk],]]>提供給網絡。用輸入模式Ak=[a1k,a2k,...,ank],]]>連接權Wij和閾值θj計算中間層各神經元的輸入sj(激活值),然后用sj通過激活函數獲得中間層的輸出bj,即公式(3);(3)用中間層的輸出bj、連接權Vjt和閾值γt計算輸出層各單元的輸入lt(激活值),然后用lt通過激活函數計算輸出層各單元的輸出ct,即公式(5);(4)用希望輸出模式Yk=[y1k,y2k,...,yqk],]]>網絡實際輸出ct計算輸出層各單元的校正誤差dtk,即公式(6);(5)用Vjt,dt,bj計算中間層的校正誤差ejk,即公式(7);用dtk,bj,Vjt和γt計算下一次的中間層和輸出層之間的新連接權,即公式(8)和(9);(6)由ejk,aik,Wij和θj計算下一次的輸入層和中間層之間的新連接權,即公式(10)和(11);(7)選取下一個學習模式對提供給網絡,返回到第三步,直至全部m個模式對訓練完。
(8)重新從m個學習模式對中隨機選取一個模式對,返回到第三步,直至網絡全局誤差函數E小于預先設定的限制值(網絡收斂)。
在以上的步驟中,(3)-(6)為輸入模式的“順傳播過程”,(7)為網絡誤差的“逆傳播過程”,(8)則完成訓練和收斂過程。
基于Internet網的鍋爐傳感器故障診斷和容錯一體化的控制方法具體控制過程依如下步驟進行步驟一、采集數據采集傳感器測量的數據對應的電壓值x(1),x(2),…,x(n);步驟二、數據分組,確定輸入輸出模式對(1)確定m值,m為每一個輸入輸出模式對中輸入數據的數量,即觀測值的數量,m值根據多次試驗獲得的實驗數據及測量結果比較確定;(2)對于單傳感器,將所采集的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個輸入輸出模式對;將分組的數據用于離線訓練單個神經網絡,如圖3所示,此時p=m,q=1,訓練得到各個權值;對于多傳感器,設定傳感器的數量為N,那么神經網絡的個數也為N,即N個神經網絡并聯,每個傳感器采集n個數據,同樣將所采集的n個數據分成k組,k=n-(m-1),每組有m+1個值,其中前m個值作為各個神經網絡輸入節點的輸入值,第m+1個值作為每個神經網絡的輸出,這樣,輸入數據總共為N×m個,輸出數據總共為N個;步驟三、將分組的數據用于離線訓練神經網絡,通過神經網絡訓練方法得到各個權值;步驟四、故障診斷(假定任一時刻最多只有一個傳感器發生故障)對于單傳感器情況,即任意K時刻,神經網絡輸入值為前K-m時刻采集傳感器測量的數據,為x(K-m),x(K-m+1),…,x(K-1),神經網絡輸出值即預測值為(K),當預測值(K)與傳感器的實測值之差大于設定閾值時,或由于網絡的時間延遲、數據包丟失而未能得到傳感器的實測值時,則判斷故障發生;對于多傳感器情況,傳感器的個數為N,神經網絡輸入數據為[x1(K-m),x1(K-m+1),…,x1(K-1)]為第一個分組數據、[x2(K-m),x2(K-m+1),…,x2(K-1)]為第二個分組數據、……、[xN(K-m),xN(K-m+1),…,xN(K-1)]為第N個分組數據,神經網絡輸出值即第K時刻的預測值為i(K),i=1,2,…,N。第i個神經網絡輸出與第i個傳感器的實測值之差大于設定閾值時,或由于網絡的時間延遲、數據包丟失而未能得到第i個傳感器的實測值時,則判斷故障發生;步驟五、容錯對于單傳感器情況,用(K)代替傳感器的輸出;對于多傳感器情況,第i個神經網絡輸出i(K)代替第i個傳感器的輸出。
在上述故障診斷和容錯一體化控制中,對于多傳感器,假定任一時刻最多只有一個傳感器發生故障,由于采樣間隔很短,所以該假定能夠符合實際情況。
本發明的控制過程具有以下優勢1、本發明通過對Internet網絡環境下的傳感器故障診斷及智能容錯控制一體化這一關鍵技術的研究,實現對復雜過程進行監測。
2、本發明的控制方法既考慮了傳感器可能應用的場合,又考慮了一些實際過程中眾多傳感器信息的冗余性,因而本發明的研究成果還可以應用到基于Internet網的水下機器人、化工等工業領域。
圖1為本發明裝置的結構示意圖;圖2為神經網絡結構示意圖;圖3為傳感器故障診斷和容錯一體化控制原理圖;圖4為本發明裝置結構示意圖;圖5為本發明方法的控制流程圖;圖6為鍋爐液位傳感器發生故障時的預測圖;圖7為鍋爐水溫傳感器發生故障時的預測圖;圖8為鍋爐液位傳感器發生故障時的預測圖(多傳感器);其中,VD1、VD2-電磁調節閥,T1-VT-移向調控,LT-3-鍋爐液位傳感器,LT-4-高位水箱液位傳感器,TIT-1-鍋爐水溫傳感器,TIT-2-鍋爐夾套水溫傳感器。
具體實施例方式
下面結合附圖對本發明裝置的具體實施方式
進行詳細描述。
如圖4所示,本發明裝置包括遠程故障診斷容錯系統、Internet網、上位機、下位機、現場傳感變送部分和控制部分,鍋爐過程控制系統主要由二部分構成(1)變頻水泵,高位恒壓水塔和蓄水池構成的供排水系統。在這一系統中,包括德國格蘭富公司原裝不銹鋼體水泵一臺,德國西門子公司原裝多控制方式矢量型交流變頻器一臺。
(2)分布在三個不同層面上的五個單元組成的被控過程,這五個單元分別是a)有冷卻水夾套的熱水鍋爐單元。熱水鍋爐單元是整個被控過程的核心,在熱水鍋爐上面帶有一個液位檢測及變送儀表,一個夾套冷卻水溫和一個鍋爐水溫溫度檢測傳感器以及鍋爐水加熱執行器。
b)2組流量檢測與調節執行組合單元。每一組都有一臺電磁式流量計和一臺德國寶得公司活塞式氣動調節閥和一個二位式電磁閥構成,它也是整個被控過程又一重要的過程檢測與調節執行機構。
c)一個回路的壓力檢測單元。
d)一個并聯雙容單元。在這一單元上又分別裝有2個反壓式液位檢測與變送裝置。
這兩部分以及被控過程中的五個單元,彼此之間均相對獨立,用戶可根據具體情況自由選取,具有較大的靈活性。
鍋爐過程控制系統中的鍋爐水溫信號、鍋爐夾套水溫信號是通過鉑電阻溫度計來檢測的。鉑電阻溫度計是利用電氣參數隨溫度變化的特性來檢測溫度的。在本系統中測鍋爐水溫的鉑電阻溫度計,其τ0.5=15秒,測夾套水溫的鉑電阻溫度計,其τ0.5=5秒。(根據制造廠商定義,τ0.5是指被測溫度階躍擾動后,鉑電阻溫度計測到該階躍溫度50%這點所需時間。)液位的測量采用的是合肥天神電器有限公司生產的輸出為標準信號4-20mA,量程為6Kpa的HM型號壓力式傳感器測量的。
流量傳感器采用的是由上海光華儀表廠生產的LDZ型號的電磁流量計。電磁流量傳感器輸出的信號為標準的電壓、電流信號,人們無法直觀的讀出流量的大小,為此該系統還采用了電磁流量轉換器。該轉換器可與各種規格的電磁流量傳感器配套使用,能將來自傳感器的低電平毫伏信號轉換成與流量成比例0-10mA DC或4-20mA DC標準信號輸出,供顯示、記錄、調節控制和流量計算等之用。本系統采用的是上海光華儀表廠生產的LDZ-4B型號的電磁流量轉換器。
該鍋爐過程控制系統的控制過程(1)該鍋爐過程控制系統可以對進水流量和出水流量進行控制,是通過進水調節閥和出水調節閥來實現的。進水調節閥和出水調節閥是QSVP系列智能電動單座調節閥,它由QSL奇勝智能型電動執行器與優質的國產閥門相結合而成,是一種高性能的調節閥,適用于各種不同壓力和溫度的流體和對泄漏要求高的場合。電動執行機構接受0-10mA/4-20mA/0-5V/1-5V等控制信號,改變閥門的開度,同時將閥門開度的隔離信號反饋給鍋爐控制系統,實現對壓力、溫度、流量、液位等參數的調節。該鍋爐過程控制系統液位的調節就是通過進水調節閥和出水調節閥來實現的。
(2)對溫度進行控制,是通過改變電加熱用晶閘管VT的導通角來改變電加熱器的電壓來實現的。
(3)變頻器控制。在本系統中有兩種方法來驅動水泵馬達運行,一種是市電50Hz三項電源,當選擇此方法時,水泵在其額定轉速下運行;另一種方法是交流變頻驅動,選擇此方法時,變頻器接收4-20mA的標準給定信號,輸出0-50Hz的三項變頻電源去控制水泵電機的轉速。但不管選取哪一種方法來運行水泵,其馬達都不會立即運轉,必須等到“使能”開關變成“ON”以后,水泵電機方可運行。
(4)還有一種控制流量的裝置,二位式電磁閥。電磁閥的開與關可以改變進水和出水流量。
上位機和故障診斷與容錯系統選用PENTIUM 4 DELL計算機,采用WINDOW XP操作系統。
故障診斷與容錯系統運行在PENTIUM 4 DELL計算機上,采用VB7.0編程軟件。
上位機與故障診斷與容錯系統的信號傳送軟件是采用VC++7.0編程軟件。
在鍋爐現場安裝檢測儀表,檢測儀表將采集的信號送到下位機,下位機定時將采集信號傳送到上位機,上位機把接受的數據通過Internet網傳到遠程故障診斷容錯控制系統,進行故障診斷及容錯分析,然后把控制信號通過Internet網發送回上位機,上位機再把信號發送給下位機,完成控制。
經各傳感器檢測的信號都是模擬量,各執行機構需要的驅動信號也是模擬量,因此,需要模擬/數字轉換和數字/模擬轉換。這里下位機采用的是臺灣研華公司生產的A/D、D/A板卡。模擬量到數字量的轉換由PCL-812PG型號的板卡來完成,該板卡具有16個A/D轉換通道,2個D/A轉換通道,16位數字量輸入,16位數字量輸出。本發明裝置用到8個A/D轉換通道,采用是電壓輸入,范圍是±5V。數字量到模擬量的轉換由PCL-726型號的板卡來完成,該板卡有6個D/A轉換通道,16位數字輸入,16位數字輸出,本發明裝置用到4個D/A轉換通道,采用的是電流輸出,范圍是4-20mA。
圖5為本發明方法的控制流程圖,下面結合附圖具體描述本發明方法對鍋爐傳感器故障的診斷和容錯一體化的控制過程。
例1、首先把鍋爐從Internet網絡中斷開,以測量鍋爐液位的傳感器為研究對象,將水從儲水池抽到高位水箱后,由高位水箱向鍋爐供水。中間經由電磁閥和電動閥,通過控制電動閥的開度來控制水的流量。鍋爐液位從起始值零開始,設定鍋爐液位為300毫米。采用簡單控制,即當液位達到290毫米時,關閉電動閥。在控制過程中進行采樣,采樣時間間隔為3秒。采樣信號是與鍋爐液位對應的電壓值,在采樣過程中并沒有將采樣值轉換成液位,而是直接將電壓值作為神經網絡的輸入信號。在診斷和容錯過程中,各信號都是以電壓信號的形式采集到計算機內的,為1-5V。在采集信號的過程中,信號存在波動,這里首先采用均值濾波方法進行濾波,即在每個采樣點連續采樣10次后,把10個采樣值相加,再取其平均值作為本次采樣值,通過均值濾波方法,基本上避免了信號的波動。
采集的數據存放到數據庫中。采集數據如下式所示,式中數據為與鍋爐液位對應的電壓值,單位是伏特。
V=[1.0388 1.0401 1.0416 1.0498 1.0602 1.0602 1.0788 1.0788 1.11721.1215 1.1401 1.1542 1.1676 1.1902 1.1975 1.2192 1.2347 1.24821.2592 1.2802 1.3062 1.3156 1.3284 1.3528 1.3730 1.3831 1.38951.4017 1.4291 1.4447 1.4664 1.4819 1.5024 1.5070 1.5256 1.53261.5540 1.5793 1.5897 1.6077 1.6324 1.6516 1.6568 1.6760 1.6919
1.7020 1.7270 1.7380 1.7441 1.7728 1.7908 1.8066 1.8170 1.83291.8506 1.8591 1.8741 1.8890 1.9122 1.9226 1.9226 1.9522 1.96321.9882 1.9897 2.0081 2.0300 2.0517 2.0642 2.0691 2.0923 2.09322.1173 2.1353 2.1411 2.1631 2.1793 2.1899 2.2134 2.2229 2.24612.2546 2.2696 2.2803 2.2986 2.3203 2.3285 2.3444 2.3587 2.37432.3843 2.4005 2.4152 2.4283 2.4481 2.4677 2.4768 2.4924 2.50702.5189 2.5345 2.5470 2.5650 2.5851 2.5943 2.6062 2.6279 2.64502.6456 2.6666 2.6773 2.6953 2.7145 2.7261 2.7417 2.7560 2.77282.7789 2.8036 2.8162 2.8296 2.8384 2.8598 2.8830 2.8906 2.89892.9187 2.9248 2.9443 2.9562 2.9745 2.9843 2.9877 2.9944 2.99502.9950 2.9973 2.9976 2.9975 2.9976 2.9977 2.9974 2.9976 2.99862.9988 2.9990 2.9990 2.9988 2.9990 2.9989 2.9990 3.0017 3.0035]已經得到的液位傳感器輸出序列x(1),x(2),…,x(153)如上所示的153個數據,在離線訓練時,m確定為5后,從第1個數據開始,用傳感器輸出的前5個數據x(1),x(2),…,x(5)作為神經網絡的輸入,用傳感器輸出的第6個數據x(6)作為神經網絡的輸出形成第1組樣本;從第2個數據開始,以5個數據x(2),x(3),…,x(6)作為神經網絡的輸入,以x(7)作為神經網絡的輸出形成第2組樣本;依此類推,可將傳感器輸出序列分成149組,每組6個數據,形成149個輸入輸出模式對,然后用這149個輸入輸出模式對對網絡進行離線訓練。工作時,用傳感器輸出第149組的5個數據x(149),x(150),…,x(153)作為神經網絡的輸入,網絡輸出即為傳感器輸出的預測數據(154)。把鍋爐接入Internet網,將傳感器輸出的預測數據(154)與傳感器的實際輸出之差與閾值相比較,判斷此傳感器是否發生故障,當傳感器輸出的預測數據(154)與傳感器的實際輸出之差大于無故障實測值的5%時,則液位傳感器發生故障。如發生故障,則用預測值(154)代替傳感器輸出值。
當傳感器發生故障時,用神經網絡預測值代替實際檢測值的效果圖,如圖6所示。在鍋爐液位達到150毫米時,測量鍋爐液位的傳感器發生故障,且輸出值一直為150毫米。
如果檢測液位的傳感器在鍋爐液位達到150毫米時發生故障,如圖6所示,此時,只是傳感器發生了故障,如果系統中對鍋爐液位的控制仍按照發生故障傳感器的反饋值來進行的話,則會出現不良后果,所以必須找到傳感器數據的代替值。在這里,用神經網絡預測值來代替檢測鍋爐液位傳感器的輸出,從而繼續對系統進行控制。具體實現如下程序運行時,即對鍋爐液位傳感器進行監測,所以當鍋爐液位達到150毫米,通過預測值與實測值的比較,檢測到鍋爐液位傳感器發生故障,對應的電壓值為2.9880伏特,這樣可由神經網絡預測值代替鍋爐液位傳感器的輸出,使之作為反饋值,系統能夠正常運行,同樣,神經網絡輸入中包含的此時刻鍋爐液位傳感器的值也由該預測值來代替,從而,可以盡可能準確的預測以后時刻鍋爐液位傳感器的輸出,從圖中可以看出,預測值和理想值之差不超過3毫米。
例2、首先把鍋爐從Internet網絡中斷開,以測量鍋爐水溫的傳感器為研究對象,在對鍋爐內的水進行加熱之前要檢查鍋爐液位是否在140毫米以上,而且為了人身安全,加熱水溫最好不要超過80度。控制過程是通過控制加在晶閘管兩端的電壓來控制溫度的。鍋爐水溫從30度開始加熱,設定鍋爐水溫升高到60度截止。
在控制過程中進行采樣,采樣時間間隔為5秒。采樣信號是與鍋爐水溫對應的電壓值,采樣過程中并沒有將采樣值轉換成水溫,而是直接將電壓值作為神經網絡的輸入信號。
溫度信號也存在波動,用均值方法進行濾波,取得了較好的效果。
得到的鍋爐水溫傳感器輸出序列如下所示,式中數據為與鍋爐溫度對應的電壓值,單位是伏特。
V=[2.20582.20792.21132.21982.22052.23482.23052.24462.24122.24822.25402.26502.26262.25592.25012.26102.24582.25522.25042.20122.20892.20252.21282.21892.22232.24582.26012.28912.30012.32122.34862.37212.38982.39992.41302.41242.43962.46002.47102.48842.50982.51622.55222.55952.57452.58302.59802.60682.62572.63462.65812.66662.69712.72002.72342.74022.73772.77072.78112.79512.81252.82042.81952.84732.86502.85982.89462.90102.92452.91262.92692.94922.96302.98192.98222.98803.01153.03043.03253.03863.04843.06923.07223.09023.08903.10823.12593.12233.13933.15733.14123.17263.19093.20433.20773.20103.22393.22753.24803.23913.27183.28063.28093.29073.31823.31123.31943.33133.35273.36183.36333.37593.38473.38783.38473.39233.39973.40483.41743.42803.42863.42833.42623.44213.43293.43443.43023.43413.43603.43693.43873.42803.43383.43663.41743.43693.43413.42933.43053.42383.42593.43023.42043.42713.41643.40153.40613.41523.39603.40793.41033.4055]
得到溫度傳感器輸出序列如上所示的152組數據,取m=5,所以可將其分成148組,同例1,每組6個數據中的前5個作為神經網絡的輸入數據,第6個數據作為神經網絡的輸出數據,用這148組輸入輸出模式對對神經網絡進行訓練。工作時,用傳感器輸出的前5個數據作為神經網絡的輸入,網絡輸出即為傳感器下一時刻的預測數據。
在傳感器不發生故障時,訓練過的神經網絡用于實際系統進行預測時效果很理想,在每一個采樣點,神經網絡預測值與理想值的基本重合,達到要求的效果。
把鍋爐接入Internet網,當鍋爐水溫傳感器發生故障時,可以用神經網絡預測值代替發生故障傳感器的輸出。如圖7所示,在鍋爐水溫達到50度時,測量鍋爐水溫的傳感器發生故障,且輸出值一直為50度,對應的電壓值為2.9880伏特。
鍋爐水溫傳感器發生故障后,如果仍按照當前檢測值進行控制,則會出現不可想象的后果。在程序中,將傳感器實測值與神經網絡預測值進行比較,如果大于設定值,則認為傳感器出現故障。此后傳感器的實測值由神經網絡預測值來代替,程序根據這個預測值對系統進行控制。現在測量鍋爐水溫的傳感器在50度時發生了故障,由于神經網絡預測值本身存在著誤差,所以在以后的時刻誤差逐漸增大,當達到穩態時,與理想值誤差大約在1度左右。
例3、首先把鍋爐從Internet網絡中斷開,以3個傳感器為研究對象,包括測量1號容器液位的傳感器,測量2號容器液位的傳感器,測量鍋爐液位的傳感器。在實際測量過程中,注意選取的傳感器的個數為不存在冗余的個數,即所選取的傳感器不重復測量同一參數。所選取的傳感器采集的數據對應的電壓值如下,其單位為伏特(1)鍋爐液位V=[1.03091.03181.03181.04131.04311.04311.05961.08371.10201.10201.12641.13711.15661.16791.18651.19171.19871.22311.23961.24571.26531.29091.30101.30801.32971.34031.35621.37021.38611.39771.40351.42761.43401.45721.46851.48741.49781.51311.52801.54391.55241.57291.59001.60061.61191.62541.64731.65861.67021.68371.69591.71051.72611.72971.74621.76031.78161.79171.80631.81491.81671.85031.85791.86611.87651.89451.90771.92291.93511.95101.96111.9711
1.97941.99492.00622.01692.02582.04352.05842.07002.07642.09722.10302.12222.12252.14512.16062.16432.17932.19022.19242.21412.22602.24062.25072.26962.26992.28762.30192.30652.31962.33802.35292.36212.37212.38832.39292.41062.41062.42802.44542.46062.46402.46732.48412.50032.50642.51652.53422.54702.55742.56992.57872.58612.60252.61382.61992.63702.64622.66022.66692.67912.69712.69712.71062.72002.73132.74352.75332.77622.77622.78562.79912.80852.81682.83662.83662.85102.86322.87872.88972.89762.90072.91262.92362.93092.94922.95502.96572.97122.98372.99292.99292.99292.9929](2)1#容器液位V=[3.99113.99113.99113.99083.98473.97953.97643.96883.90723.90723.90723.90723.90723.90723.90723.89223.88153.87213.85803.85533.84433.82663.82113.80043.80043.79093.77413.76803.75703.74363.73173.72773.71463.70613.69113.68233.67613.65573.65023.63863.63313.62153.61023.59683.58643.57453.55323.55223.54373.53523.52693.51933.50193.49273.48513.47383.46343.45183.44393.43663.42503.40973.40483.39423.37223.37223.36063.35083.33773.33653.31703.30353.29593.29133.28163.27333.25593.24923.23673.23273.22543.21723.20403.19953.18303.17783.16743.15343.14123.13813.12043.12043.10853.09783.09543.07313.06613.06003.05603.04263.02863.02863.01613.00322.99382.98582.97642.97422.96482.94982.94072.92882.91932.91602.90532.90102.88732.87322.86042.85712.85282.84032.82902.82652.81562.80882.80462.78722.78382.76522.76522.75122.74932.74142.73322.71032.71002.70082.68102.68102.67642.66882.66142.65112.64502.63612.61572.61412.60502.60472.59702.58762.57512.57352.55862.55712.54242.53912.53692.52042.50922.49852.48692.48692.4869](3)2#容器液位V=[3.94103.94103.94073.92403.90963.89533.87513.86993.83153.83153.82873.82353.80773.78943.77993.77083.76313.7537
3.73933.72993.72193.70943.69603.68593.67313.66493.65333.64073.63403.62553.61243.59953.59953.58313.57793.56483.55383.54253.53523.52083.51723.50193.48573.48303.47783.45923.43843.43843.42993.42223.40853.40613.39783.39113.38173.36703.35483.35053.33443.32953.31393.30473.29473.28613.28003.26393.26393.25743.24433.23523.21663.21263.20503.19953.18793.16893.16623.16043.15163.13693.13693.12743.11463.10643.09203.07833.07283.06373.05763.05023.03893.02983.02673.00873.00292.99322.97582.97582.97212.95562.95292.94592.93852.92242.92082.90072.89762.88822.87722.87112.86712.85282.84242.84242.82712.81432.81432.80852.79942.79022.77802.77132.76122.75702.74572.73652.72312.72252.71212.70262.69592.68552.68042.67642.66302.65662.64622.63732.62732.62422.61322.60312.60312.59552.58792.58032.56532.56132.55282.54492.52752.52752.51862.51772.50122.49882.47502.47312.47312.47072.46892.46892.46892.46892.4689]首先需要確定神經網絡的輸入輸出模式對,用來訓練神經網絡。以判斷1號容器液位傳感器是否出現故障為例,則它對應1號神經網絡,1號神經網絡第K時刻的輸入是從2號容器液位傳感器和鍋爐液位傳感器采集到的前m時刻的值,1號神經網絡第K時刻的輸出是1號容器液位傳感器的預測值。通過實驗,根據m取不同值時的實驗結果,本文取m=2。先用2號容器液位傳感器輸出的前2個時刻數據x2號(1),x2號(2),鍋爐液位傳感器前兩2時刻的數據x鍋爐(1),x鍋爐(2)作為神經網絡的輸入,用1號容器液位傳感器下一時刻的值x1號(3)作為神經網絡的輸出形成第一組樣本;以數據x2號(2),x2號(3),x鍋爐(2),x鍋爐(3)作為神經網絡的輸入,以x1號(4)作為神經網絡的輸出形成第二組樣本,依此類推。因為共有165組數據,所以共可形成163個輸入輸出模式對。這里要注意的是,1號神經網絡的輸入參數不能包括1號容器液位傳感器的輸入。同理,可以建立2號容器液位傳感器和鍋爐液位傳感器對應的2號和3號神經網絡。所以本發明采用神經網絡,將訓練過的神經網絡應用到該鍋爐過程系統中,對鍋爐液位傳感器、1號容器液位傳感器、2號容器液位傳感器進行監測。
鍋爐液位從0毫米到300毫米變化,在鍋爐液位傳感器不發生故障時,訓練過的神經網絡用于實際系統進行預測時效果很理想,從顯示的數據可以看到,在每一個采樣點,神經網絡預測值與理想值的誤差在1毫米之內,達到要求的效果。
當傳感器發生故障時,用神經網絡預測值代替實測值的效果圖,如圖8所示。圖中表示在鍋爐液位達到150毫米時,測量鍋爐液位的傳感器發生故障。
在任一時刻最多只有一個傳感器發生故障,由于采樣間隔很短,整個故障檢測過程可描述如下以1號傳感器為例,當該傳感器發生故障時,本發明方法會根據1號傳感器的實測值與預測值之差的絕對值是否超過給定的值來判斷,這個過程就是故障診斷的檢測與分離。如果確定是1號傳感器發生了故障,則1號傳感器送往后續網絡的數據就由1號傳感器的預測值來代替,這是因為1號神經網絡的輸入是除1號傳感器之外的其它傳感器數據,它們是沒有故障的,所以1號網絡的輸出是正常的,用它替代發生故障的傳感器的輸出是可以的。圖8是當鍋爐液位傳感器在150mm時發生故障后的效果圖。用訓練過的神經網絡預測值進行控制時的實際鍋爐液位與檢測值之差小于1毫米。
權利要求
1.一種基于Internet網的鍋爐傳感器故障診斷和容錯一體化方法,其特征在于該方法的具體控制過程如下步驟一、采集數據采集傳感器測量的數據對應的電壓值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個;步驟三、將分組的數據用于離線訓練神經網絡,通過神經網絡訓練方法得到各個權值;步驟四、故障診斷對于單傳感器情況,即任意K時刻,神經網絡輸入值為前K-m時刻采集傳感器測量的數據,為x(K-m),x(K-m+1),…,x(K-1),神經網絡輸出值即預測值為(K),當預測值(K)與傳感器的實測值之差大于設定閾值時,或由于網絡的時間延遲、數據包丟失而未能得到傳感器的實測值時,則判斷故障發生;對于多傳感器情況,傳感器的個數為N,神經網絡輸入數據為[x1(K-m),x1(K-m+1),…,x1(K-1)]為第一個分組數據、[x2(K-m),x2(K-m+1),…,x2(K-1)]為第二個分組數據、……、[xN(K-m),xN(K-m+1),…,xN(K-1)]為第N個分組數據,神經網絡輸出值即第K時刻的預測值為1(K),i=1,2,…,N,第i個神經網絡輸出與第i個傳感器的實測值之差大于設定閾值時,或由于網絡的時間延遲、數據包丟失而未能得到第i個傳感器的實測值時,則判斷故障發生;步驟五、容錯對于單傳感器情況,用(K)代替傳感器的輸出;對于多傳感器情況,第i個神經網絡輸出i(K)代替第i個傳感器的輸出。
2.如權利要求1所述的基于Internet網的鍋爐傳感器故障診斷和容錯一體化方法,其特征在于所述步驟三的學習過程的具體步驟如下(1)初始化給各連接權Wij、Vjt及閾值θj、γt,并賦予[-1,+1]之間的隨機值;(2)隨機選取一模式對Ak=[a1k,a2k,···,ank],Yk=[y1k,y2k,···,yqk],]]>提供給網絡;用輸入模式Ak=[a1k,a2k,···,ank],]]>連接權Wij和閾值θj計算中間層各神經元的輸入sj(激活值),然后用sj通過激活函數獲得中間層的輸出bj,即公式(3)bj=f(sj)=11+exp(-Σi=1nWij·ai+θj),(j=1,2,···,p)---(3)]]>(3)用中間層的輸出bj、連接權Vjt和閾值γt計算輸出層各單元的輸入lt(激活值),然后用lt通過激活函數計算輸出層各單元的輸出ct,即公式(5)ct=f(lt)=11+exp(-Σi=1pVjt·bt+γt),(t=1,2,···,1)---(5)]]>式中Vjt-中間層第j單元至輸出層第t單元連接權;γt-輸出層第t單元閾值;f-S型激活函數;(4)用希望輸出模式Yk=[y1k,y2k,···,yqk],]]>網絡實際輸出ct計算輸出層各單元的校正誤差dtk,即公式(6)dtk=(ytk-ctk)·f′(ltk)=(ytk-ctk)·ctk(1-ctk),t=1,2,···,1,k=1,2,···,---(6)]]>式中ytk-期望輸出;ctk-實際輸出;f′-對輸出層函數的導數;(5)用Vjt,dt,bj計算中間層的校正誤差ejk,即公式(7);ejk=(Σt=1qVjt·dtk)·f′(sjk)=(Σt=1qVjt·dtk)·bj·(1-bj),(j=1,2,···p,k=1,2,···,m)---(7)]]>用dtk,bj,Vjt和γt計算下一次的中間層和輸出層之間的新連接權,即公式(8)和(9)Vjt(N+1)=Vjt(N)+α·dtk·bj⇒ΔVjt=α·dtk·bjk---(8)]]>γt(N+1)=γt(N)+α·dtk⇒Δγt=α·dtk---(9)]]>式中bjk-中間層第j單元的輸出;dtk-輸出層的校正誤差;j=1,2,…,pt=1,2,…,qk=1,2,…,m0<α<1(學習系數);(6)由ejk,aik,wij和θj計算下一次的輸入層和中間層之間的新連接權,即公式(10)和(11)Wij(N+1)=Wij(N)+ΔWij=Wij(N)+β·ejk·aik⇒ΔWij=β·ejk·aik---(10)]]>θj(N+1)=θj(N)+Δθj=θj(N)+β·ejk⇒Δθj=β·ejk---(11)]]>式中ejk-中間層第j單元的校正誤差;i=1,2,…,n0<β<1(學習系數);(7)選取下一個學習模式對提供給網絡,返回到第三步,直至全部m個模式對訓練完;(8)重新從m個學習模式對中隨機選取一個模式對,返回到第三步,直至網絡全局誤差函數E小于預先設定的限制值。
3.如權利要求1所述的基于Internet網的鍋爐傳感器故障診斷和容錯一體化方法,其特征在于該方法中對于多傳感器,假定任一時刻最多只有一個傳感器發生故障。
4.實現如權利要求1所述的基于Internet網的鍋爐傳感器故障診斷和容錯一體化方法的裝置,其特征在于該裝置包括遠程故障診斷容錯系統、Internet網、上位機、下位機、現場傳感變送部分和控制部分,其中現場傳感變送部分包括溫度、液位、流量、壓力檢測儀表,負責將參數采集并傳送;下位機負責把采集的信號A/D轉換,并把信號傳送給上位機;把控制信號D/A轉換,控制鍋爐系統;上位機收集本地下位機數據,并通過Internet網傳送給遠程故障診斷和容錯控制系統,通過Internet網接收遠程故障診斷和容錯控制系統發出的控制信號,傳送給下位機;Internet網遠程故障診斷和容錯控制系統通過Internet網接收和發送信號;控制部分接收由下位機傳送的容錯控制信號,對現場實現控制;其工作過程為在鍋爐現場安裝檢測儀表,檢測儀表將采集的信號送到下位機,下位機定時將采集信號傳送到上位機,上位機把接受的數據通過Internet網傳到遠程故障診斷容錯控制系統,進行故障診斷及容錯分析,然后把控制信號通過Internet網發回上位機,上位機再把信號發送給下位機,由下位機給控制部分發送控制信號完成控制。
全文摘要
一種基于Internet網的鍋爐傳感器故障診斷和容錯一體化方法及裝置,該控制方法應用三層的神經元網絡。通過采集傳感器測量的數據對應的電壓值,并對數據分組,確定輸入輸出模式對,將分組的數據用于訓練模糊小腦模型關節控制器神經網絡,進行故障診斷和容錯處理。為實現該方法本發明還對應提供一種控制裝置。本發明通過對Internet網絡環境下的傳感器故障診斷及智能容錯控制一體化這一關鍵技術的研究,實現對復雜過程進行實時監測。既考慮了傳感器可能應用的場合,又考慮了一些實際過程中眾多傳感器信息的冗余性,因而本發明還可以應用到基于Internet網的水下機器人、化工等工業領域。
文檔編號G06N3/00GK1737423SQ200510047030
公開日2006年2月22日 申請日期2005年8月10日 優先權日2005年8月10日
發明者張穎偉, 劉建昌, 姜斌, 袁平, 周偉, 王小剛, 孫得維 申請人:東北大學