吾買爾·吐爾遜 穆哈西 夏慶成
摘要:故障診斷技術(shù)是水輪發(fā)電機(jī)組安全穩(wěn)定運(yùn)行的關(guān)鍵技術(shù)之一。針對水輪發(fā)電機(jī)組傳統(tǒng)故障診斷方法診斷效率較低的問題,提出了一種基于免疫算法(Immune Algorithm,IA)的水輪發(fā)電機(jī)組故障診斷方法。對已采集好的水輪發(fā)電機(jī)組故障樣本數(shù)據(jù)進(jìn)行預(yù)處理構(gòu)成故障類型編碼,并設(shè)置算法的相關(guān)參數(shù),在此基礎(chǔ)上運(yùn)用MATLAB開發(fā)的免疫算法程序進(jìn)行故障預(yù)測。結(jié)果表明:采用模塊化編程技術(shù)來開發(fā)程序,具有操作簡單、便于擴(kuò)容等優(yōu)點;程序的計算結(jié)果比較接近實際的故障類型。
關(guān) 鍵 詞:
機(jī)組振動; 故障檢測; 免疫算法; 水輪發(fā)電機(jī)組
中圖法分類號: TV7
文獻(xiàn)標(biāo)志碼: A
DOI:10.16232/j.cnki.1001-4179.2021.05.033
水能是世界上最早開發(fā)的可再生能源,也是人類最早使用的機(jī)械能“生產(chǎn)機(jī)”[1]。水力發(fā)電在20世紀(jì)初期得到迅速發(fā)展,目前它仍然是主要的生產(chǎn)電能的可再生能源之一。國際能源署(International Energy Agency,IEA)2019年初發(fā)布的相關(guān)數(shù)據(jù)顯示,2018年,全球水力發(fā)電量已達(dá)42 392億kW·h,其中中國以11 027.5億kW·h的發(fā)電量位居首榜[2]。改革開放40多年來,中國水力發(fā)電行業(yè)取得了突出的成績,水電技術(shù)不斷成熟,水電政策不斷完善,水電設(shè)備制造國產(chǎn)化水平不斷提升,為全球的綠色能源發(fā)展貢獻(xiàn)著正能量[3]。
水輪發(fā)電機(jī)組是水力發(fā)電的核心部件,它的故障不僅能導(dǎo)致巨大的經(jīng)濟(jì)損失,還可能會帶來災(zāi)難性事故。2009年8月17日,俄羅斯舒申斯克水電站由于水輪發(fā)電機(jī)組振動幅值超標(biāo)卻沒有按照規(guī)程減少負(fù)荷亦沒有停機(jī),導(dǎo)致了嚴(yán)重事故,造成直接經(jīng)濟(jì)損失約130億美元[4]。因此,通過研究水電站水輪發(fā)電機(jī)組設(shè)備狀態(tài)監(jiān)測與故障診斷技術(shù),能及時掌握機(jī)組的運(yùn)行狀態(tài),預(yù)測故障,有效降低設(shè)備損壞率,減少維護(hù)成本,提高水輪發(fā)電機(jī)組運(yùn)行的安全可靠性[5-6]。
水輪發(fā)電機(jī)組是結(jié)構(gòu)復(fù)雜的大型設(shè)備之一,工作環(huán)境復(fù)雜,故障表現(xiàn)形式也千變?nèi)f化。其中振動對水輪發(fā)電機(jī)組的影響很大,大約80%的水輪發(fā)電機(jī)組故障都反映于振動信號中[7],水輪發(fā)電機(jī)組在運(yùn)轉(zhuǎn)過程中往往產(chǎn)生交變載荷,振動不斷受到機(jī)械、電磁、水力等因素的聯(lián)合影響。在故障出現(xiàn)初期,在振動擺度幅值上很難表現(xiàn)出來,通過常規(guī)的在線監(jiān)測系統(tǒng)根本無法及時發(fā)現(xiàn)故障。本文介紹了基于人工免疫算法的故障檢測方法的步驟,并針對國內(nèi)托海水電站由水力振動引起的水輪機(jī)故障開展檢測。
1 人工免疫算法
免疫算法(Immune Algorithm,IA)是人工免疫算法的簡稱,它是模仿生物學(xué)的免疫系統(tǒng)機(jī)制,利用免疫系統(tǒng)原理及其模型啟發(fā)而提出一種智能搜索算法[8]。它不僅可以解決性能優(yōu)化問題,還可用于解決復(fù)雜的非線性優(yōu)化問題。在免疫算法中,需要解決目標(biāo)函數(shù)及其約束條件代替生物學(xué)免疫系統(tǒng)的抗原問題,而對于用函數(shù)的解來代替免疫系統(tǒng)的抗體,并沒有統(tǒng)一的模型和算法結(jié)構(gòu),目前常用的有免疫遺傳算法、免疫規(guī)劃算法、免疫策略算法、免疫克隆算法等[9]。
1.1 免疫算法的基本原理
免疫算法的工作原理和計算流程如圖1所示。
(1) 抗原識別及參數(shù)設(shè)定。將需要解決的問題變成符合免疫系統(tǒng)處理的抗原形式,輸入目標(biāo)函數(shù)及其約束條件;設(shè)定群規(guī)模、迭代次數(shù)、交叉概率及變異概率等相關(guān)參數(shù)。
(2) 產(chǎn)生初始化抗體群。將抗體的群體定義為問題解的集,程序運(yùn)行時先檢查記憶庫,如果記憶庫為空,則隨機(jī)產(chǎn)生初始抗體群體;否則,從記憶庫中選擇初始抗體群體,不足部分會隨機(jī)生成。
(3) 計算親和力。按給定的條件,計算抗體和抗原之間的親和力。親和力越高,說明問題的解越好,親和力計算也稱為適應(yīng)度評價。
2 實例分析
水輪發(fā)電機(jī)組運(yùn)轉(zhuǎn)過程中,所發(fā)生的故障會在對應(yīng)的振動信號中體現(xiàn)出來[11]。本文將采用MATLAB開發(fā)的免疫算法程序,對拓海水電站其中一臺水輪發(fā)電機(jī)組在一定的水頭和負(fù)荷條件下發(fā)生的故障進(jìn)行診斷。
2.1 樣本數(shù)據(jù)和參數(shù)設(shè)計
首先對已經(jīng)采集好的故障數(shù)據(jù)進(jìn)行預(yù)處理,通過去噪、篩選得到故障樣本的數(shù)據(jù),具體數(shù)據(jù)如表1所列。
程序運(yùn)行之前,先對免疫算法的群體大小、迭代次數(shù)、交叉概率、變異概率等參數(shù)進(jìn)行初始化,如表2所列。
2.2 部分代碼
采用函數(shù)式編程方法來開發(fā)此免疫算法程序,用二進(jìn)制編碼方式來表達(dá)目標(biāo)函數(shù)和它的解。
根據(jù)給定的條件,先構(gòu)成故障樣本數(shù)據(jù)矩陣并對算法的相關(guān)參數(shù)進(jìn)行初始化,再進(jìn)行相關(guān)計算,主要的計算函數(shù)如下。
(1) 親和力計算函數(shù)calqinheli():主要功能是用二進(jìn)制編碼方式對群體中每個個體的親和力進(jìn)行相關(guān)計算。
(2) 交叉計算函數(shù)jiaocha():主要功能是對抗體群里選中的成對個體,以交叉概率替換它們之間的部分染色體,生成新的個體,通過它可以有效提高免疫算法的全局搜索能力。
(3) 變異計算函數(shù)bianyi():主要功能是對群體中的所有個體按事先設(shè)定的變異概率判斷是否進(jìn)行變異,若需要對個體進(jìn)行二進(jìn)制變異。通過變異函數(shù)促進(jìn)免疫算法的局部搜索能力。
程序的部分計算代碼如下:
……
globalqunti
global length
……
globalyangben;
N=10; ?%每個染色體段數(shù)
M=100;%迭代次數(shù)
qunti=20;%群體大小
pc=0.8;%設(shè)置交叉概率,pm=0.1; %設(shè)置變異概率
……
%故障類型編碼
yangben =[1.912,9.533,1.534,16.742,12.731,8.332;0.767,9.551,1.498,14.759,11.501,7.691;0.817,9.041,1.486,14.321,11.112,7.497;1.432,8.911,1.519,15.748,12.009,7.901];
%待檢測的故障數(shù)據(jù)編碼
Ceshi=[0.661,8.874,1.509,13.002,10.517,6.981];
……
for i=1:4
%判斷每種模式適應(yīng)值
for k=1:M
%用二進(jìn)制編碼方式計算目標(biāo)函數(shù)
[qinheli]=calqinheli(pop,i); fitvalue=calfitvalue(qinheli);
%計算群體中每個個體的親和力
avg(k)=sum(fitvalue)/qunti; newpop=selection(pop,fitvalue);
……
qinheli=calqinheli(newpop,i);
newpop=jiaocha(newpop,pc,k);
%交叉
qinheli=calqinheli(newpop,i);
newpop=bianyi(newpop,pm);
%變異
qinheli=calqinheli(newpop,i);
……
程序運(yùn)行結(jié)果如圖2所示。從圖2可以看出:待診斷的故障屬于故障1的概率為0,屬于故障2的概率為70%,屬于故障3的概率為95%,屬于故障4的概率為53%。
3 結(jié) 論
故障診斷技術(shù)是提高水輪發(fā)電機(jī)組運(yùn)行效率、進(jìn)行預(yù)知維修及科學(xué)管理的重要基礎(chǔ)。本文提出了一種基于免疫算法的水輪發(fā)電機(jī)組故障診斷方法,針對托海水電站其中一臺機(jī)組在一定水頭和負(fù)荷條件下發(fā)生的故障運(yùn)用該方法進(jìn)行實際診斷,可以得出如下結(jié)論。
(1) 在人工免疫算法的理論基礎(chǔ)上,講述了水輪發(fā)電機(jī)組故障分類的計算步驟,計算時要適當(dāng)?shù)卦O(shè)置群體大小、迭代次數(shù)、交叉概率、變異概率等參數(shù)的初始值。
(2) 利用MATLAB開發(fā)了水輪發(fā)電機(jī)組故障分類程序,它主要包括樣本數(shù)據(jù)的預(yù)處理、免疫算法相關(guān)參數(shù)的設(shè)置和人工免疫計算等部分。只要按要求輸入樣本數(shù)據(jù),合理設(shè)置相關(guān)參數(shù),能得到滿意的結(jié)果。
(3) 利用該程序?qū)λ姍C(jī)組的典型故障進(jìn)行預(yù)測時能得到滿意的結(jié)果,但是對復(fù)雜的故障還是存在一些故障難以區(qū)分的情況,這主要是程序難以區(qū)分復(fù)雜故障所對應(yīng)的特征量,這也是下一步開展深入研究的方向。
參考文獻(xiàn):
[1] PAUL BREEZE.Hydropower[M].Berlin:Elsevier Academic Press,2018:1-12.
[2] International Energy Agency.Global Energy & CO2 Status Report 2018[EB/OL].https:∥www.iea.org/geco /,2019.3.26.
[3] 肖新建.改革開放40年能源發(fā)展成就報告[EB/OL].http:∥www.jyteg.com/zixun/5142.html,2018.9.2.
[4] 李運(yùn)輝,楊立信.俄羅斯薩楊舒申斯克水電站事故原因分析[M].鄭州:黃河水利出版社,2010:1-10.
[5] 陳珊珊,楊耿杰.水輪發(fā)電機(jī)組振動故障診斷方法綜述[J].電氣技術(shù),2019,20(6):1-5.
[6] 王富超.水輪發(fā)電機(jī)組振動監(jiān)測與故障診斷系統(tǒng)的設(shè)計與實現(xiàn)[J].中國設(shè)備工程,2018(14):98-99.
[7] 羅萌.水輪發(fā)電機(jī)組振動故障診斷與趨勢預(yù)測研究[D].武漢:華中科技大學(xué),2017.
[8] 劉韜著.人工免疫系統(tǒng)及其數(shù)據(jù)挖掘應(yīng)用研究[M].徐州:中國礦業(yè)大學(xué)出版社,2010:1-20.
[9] 馬佳,石剛.人工免疫算法理論及應(yīng)用[M].沈陽:東北大學(xué)出版社,2014:32-60.
[10] 田玉玲,段富.免疫優(yōu)化算法、模型及應(yīng)用[M].北京:國防工業(yè)出版社,2013:51-76.
[11] 王峰,白轉(zhuǎn)偉,董增壽,等.基于人工免疫算法的齒輪故障診斷研究[J].太原科技大學(xué)學(xué)報,2017,38(4):278-282.
(編輯:趙秋云)