吾買爾·吐爾遜 穆哈西 夏慶成


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