本發(fā)明屬于工業(yè)大數(shù)據(jù)處理
技術(shù)領(lǐng)域:
,具體是一種開關(guān)設(shè)備故障特征提取方法,可應(yīng)用于對企業(yè)開關(guān)設(shè)備各種故障的特征提取。
背景技術(shù):
:開關(guān)設(shè)備作為電力系統(tǒng)終端設(shè)備之一,在電力系統(tǒng)中肩負著控制和保護雙重任務(wù),其可靠性和智能化水平對電力系統(tǒng)的穩(wěn)定和自動化程度將產(chǎn)生深遠的影響。開關(guān)設(shè)備事故的統(tǒng)計分析表明,造成高壓斷路器故障的原因主要有操動機構(gòu)異常、sf6泄漏、輔助部件損壞和主要部件劣化。開關(guān)設(shè)備故障的影響因素主要有開關(guān)設(shè)備的使用時間、年負載率、環(huán)境運行等級、溫度、操作次數(shù)和電流次數(shù)等。通過對開關(guān)設(shè)備提取故障特征參數(shù),為及時診斷和預(yù)判開關(guān)設(shè)備故障提供依據(jù),降低其運維成本。傳統(tǒng)的特征提取方法通常是在單機、串行模式下進行特征提取。傳統(tǒng)特征提取方法能處理的數(shù)據(jù)量較小,這對特征提取的準確性具有較大影響。當面對海量數(shù)據(jù)時,數(shù)據(jù)的存儲和處理會暴露出容錯性差、速度慢、效率低等問題。隨著開關(guān)設(shè)備故障的影響因素的不斷增多,設(shè)備故障數(shù)據(jù)規(guī)模的不斷擴大,單機串行模式下難以存儲海量數(shù)據(jù),也不能大幅度提高數(shù)據(jù)處理速度;同時在單機串行模式下,傳統(tǒng)特征提取方法只能處理小樣本量數(shù)據(jù),進而會降低特征提取的準確性。當故障影響因素不斷擴大時,傳統(tǒng)特征提取方法也難以處理多變量的數(shù)據(jù)集。綜上所述,傳統(tǒng)的特征提取方法通常只能處理小樣本量數(shù)據(jù)。當數(shù)據(jù)集的變量增多時,傳統(tǒng)的特征提取方法也漸漸難以處理多變量的數(shù)據(jù)集。開關(guān)設(shè)備每種故障的數(shù)據(jù)量不僅大,每種故障的影響因素也不止使用時間、負載率、環(huán)境運行等級、溫度、操作次數(shù)和開斷次數(shù)這六個因素,將來故障影響因素會不斷增多。因此,傳統(tǒng)的特征提取方法難以同時面對故障數(shù)據(jù)量的不斷擴大和影響因素不斷增多,進而對故障特征提取的速度和準確度造成影響。技術(shù)實現(xiàn)要素:本發(fā)明的目的在于針對上述現(xiàn)有技術(shù)的問題,提出一種基于大數(shù)據(jù)處理平臺的開關(guān)設(shè)備故障特征提取方法,以提高開關(guān)設(shè)備故障特征提取的準確度和提取速度。本發(fā)明的技術(shù)思路是:通過對大樣本數(shù)據(jù)量的處理,引入多變量多尺度熵mmse算法,以解決故障影響因素不斷增多的問題,間接提高開關(guān)設(shè)備故障特征提取的準確度;通過mmse算法在sparkr平臺上的分布式并行計算,提高開關(guān)設(shè)備故障特征提取的速度。其實現(xiàn)方案包括如下:本發(fā)明提出的基于大數(shù)據(jù)平臺的開關(guān)設(shè)備故障特征提取方法,步驟包括如下:(1)搭建sparkr大數(shù)據(jù)平臺:(1a)安裝linux系統(tǒng)、hadoop開源軟件和spark開源軟件;(1b)根據(jù)現(xiàn)有故障數(shù)據(jù)規(guī)模,確定平臺集群的節(jié)點個數(shù),并根據(jù)后續(xù)需要處理的故障數(shù)據(jù)規(guī)模,對該節(jié)點個數(shù)可以擴展或縮減;(1c)配置平臺集群各個節(jié)點,即從確定的節(jié)點數(shù)中將任意1個節(jié)點作為主節(jié)點master,其余作為從節(jié)點slave;(1d)在確定的主節(jié)點master和所有從節(jié)點slave上,配置服務(wù)器進程ssh(secureshell)并進行無密碼驗證,并安裝java軟件、配置java環(huán)境、配置hadoop核心文件和spark核心文件;(2)數(shù)據(jù)收集與存儲:主節(jié)點master從平臺外部,通過hadoop的sqoop組件技術(shù)采集關(guān)系型的故障數(shù)據(jù);通過flume組件技術(shù)采集文件型的故障數(shù)據(jù),并將采集的這些數(shù)據(jù)存儲到hadoop的分布式文件系統(tǒng)hdfs中,主節(jié)點master和所有從節(jié)點slave共享這些數(shù)據(jù);(3)數(shù)據(jù)預(yù)處理:對分布式文件系統(tǒng)hdfs中的故障數(shù)據(jù)依次進行轉(zhuǎn)換和歸一化的預(yù)處理,為后續(xù)數(shù)據(jù)分析提供高質(zhì)量數(shù)據(jù);(4)數(shù)據(jù)分布式計算:在本地主機上,利用r軟件將只能在單機上運行的多變量多尺度熵mmse改寫成能在大數(shù)據(jù)平臺sparkr上運行的分布式算法;主節(jié)點master通過大數(shù)據(jù)平臺sparkr的sparkrapi接口從本地主機調(diào)用mmse的分布式算法,將其部署到各個從節(jié)點slave,并以預(yù)處理后的數(shù)據(jù)作為該算法的輸入;從節(jié)點slave并行計算各故障的多變量樣本熵值,并將計算結(jié)果保存到hadoop的分布式文件系統(tǒng)hdfs中;(5)可視化展示:在單機環(huán)境下,本地主機從大數(shù)據(jù)平臺的分布式文件系統(tǒng)hdfs中下載結(jié)果數(shù)據(jù),然后利用開源r軟件的繪圖功能繪制開關(guān)設(shè)備各種故障的多變量樣本熵曲線;(6)特征提?。焊鶕?jù)各故障的多變量樣本熵曲線,選取各故障曲線都較平緩,且各故障對應(yīng)尺度因子的多變量樣本熵值彼此相差較大的尺度因子范圍,并將該尺度因子范圍的多變量樣本熵值作為各故障的特征參數(shù)。本發(fā)明與現(xiàn)有技術(shù)相比,具有以下優(yōu)點:1)本發(fā)明運用大數(shù)據(jù)平臺sparkr,將開源r軟件和開源spark軟件強強結(jié)合,可以在r軟件中無縫地使用spark的彈性分布式數(shù)據(jù)集rdd和dataframeapi,借助spark內(nèi)存計算、統(tǒng)一軟件棧上支持多種計算模型的優(yōu)勢,高效地進行分布式數(shù)據(jù)計算和分析,解決大規(guī)模數(shù)據(jù)集帶來的挑戰(zhàn)。2)現(xiàn)有多變量多尺度熵mmse雖已在物理、生理等學科領(lǐng)域中獲得應(yīng)用,但是在開關(guān)設(shè)備故障分析領(lǐng)域,mmse還沒有被應(yīng)用。本發(fā)明將多變量多尺度熵mmse算法應(yīng)用于開關(guān)設(shè)備故障分析領(lǐng)域,解決了故障影響因素增多的問題,間接提高了開關(guān)設(shè)備故障特征提取的準確度;實現(xiàn)了mmse算法在sparkr平臺上的分布式并行計算,提高了特征提取的速度。3)本發(fā)明由于在多變量多尺度熵mmse中引入了尺度因子,能夠更明顯、更直觀地區(qū)分開關(guān)設(shè)備的幾種故障狀態(tài)類型。附圖說明圖1是本發(fā)明的實現(xiàn)總流程圖;圖2是本發(fā)明中節(jié)點配置流程圖圖3是本發(fā)明中sparkr整體架構(gòu)圖圖4是本發(fā)明中特征提取算法mmse的流程圖圖5是4種故障的多變量樣本熵曲線圖具體實施方式下面結(jié)合附圖和具體實施方式對本發(fā)明作詳細說明。傳統(tǒng)的開關(guān)設(shè)備故障的特征提取方法面對海量故障影響因素數(shù)據(jù)時,不具備大規(guī)模數(shù)據(jù)存儲和處理能力,都是在單機、串行模式下進行特征提取,速度慢、效率低和安全性差,直接影響到故障特征提取的效率和準確性。hadoop大數(shù)據(jù)處理平臺,它的hdfs分布式文件系統(tǒng)和mapreduce編程模式比較好地解決了海量數(shù)據(jù)分布式存儲和處理的問題。和hadoop相比,spark提供了分布式數(shù)據(jù)集的抽象,編程模型更靈活和高效,能夠充分利用內(nèi)存來提升性能。spark能夠很好地解決迭代運算和交互式運算,它引入了彈性分布式數(shù)據(jù)集rdd,有一個容錯機制,數(shù)據(jù)集合可以被并行操作,能夠被緩存到內(nèi)存中,而不必像mapreduce那樣每次都從hdfs上重新加載數(shù)據(jù)。在數(shù)據(jù)計算過程,spark將預(yù)處理后的數(shù)據(jù)集創(chuàng)建成rdd,緩存到內(nèi)存,進而被多個并行執(zhí)行的任務(wù)重用。r軟件擁有強大的統(tǒng)計分析功能和豐富的第三方擴展包,但目前r軟件的核心運行環(huán)境是單線程的,能處理的數(shù)據(jù)量受限于單機的內(nèi)存容量,大數(shù)據(jù)時代的海量數(shù)據(jù)處理對r軟件構(gòu)成了挑戰(zhàn)。sparkr將開源r軟件和開源spark軟件強強結(jié)合,可以在r軟件中無縫地使用spark的rdd和dataframeapi,借助spark內(nèi)存計算、統(tǒng)一軟件棧上支持多種計算模型的優(yōu)勢,高效地進行分布式數(shù)據(jù)計算和分析,解決大規(guī)模數(shù)據(jù)集帶來的挑戰(zhàn)。因此,本發(fā)明引入sparkr平臺,通過對大樣本數(shù)據(jù)量的處理,引入多變量多尺度熵mmse算法,以解決故障影響因素不斷增多的問題,間接提高開關(guān)設(shè)備故障特征提取的準確度;通過mmse算法在sparkr平臺上的分布式并行計算,提高開關(guān)設(shè)備故障特征提取的速度。參照圖1,本發(fā)明的實現(xiàn)步驟如下:步驟1,搭建sparkr大數(shù)據(jù)平臺。(1a)在本地主機上安裝linux系統(tǒng)的centos-6.3版本,開源hadoop軟件的hadoop-2.6.0版本,開源spark軟件的spark-1.4.0版本。參照表1,安裝平臺sparkr的子平臺hadoop所需的相關(guān)技術(shù)組件,包括flume、sqoop。表1子平臺hadoop所需的技術(shù)組件其中:core:表示分布式文件系統(tǒng)和通用i/o組件和接口;avro:表示提供高效、跨語言rpc的數(shù)據(jù)序列系統(tǒng),持久化數(shù)據(jù)存儲;hdfs:表示分布式文件系統(tǒng),用于實現(xiàn)大規(guī)模數(shù)據(jù)的分塊存儲;mapreduce:表示分布式數(shù)據(jù)處理框架和執(zhí)行環(huán)境;zookeeper:表示高可用性的分布式協(xié)調(diào)服務(wù);pig:表示數(shù)據(jù)流語言和運行環(huán)境,用以檢索大規(guī)模數(shù)據(jù)集;chukwa:表示運行hdfs中存儲數(shù)據(jù)的收集器,使用mapreduce生成分析報告;mahout:表示機器學習算法庫;flume:表示日志收集系統(tǒng);sqoop:表示數(shù)據(jù)同步工具,用于傳統(tǒng)數(shù)據(jù)和hadoop之間傳輸數(shù)據(jù);(1b)根據(jù)現(xiàn)有故障數(shù)據(jù)規(guī)模,確定平臺集群的節(jié)點個數(shù)為4個;并根據(jù)后續(xù)需要處理的故障數(shù)據(jù)規(guī)模,對該節(jié)點個數(shù)可以擴展或縮減;(1c)參照表2,配置平臺集群各個節(jié)點,即從確定的節(jié)點數(shù)中將任意1個節(jié)點作為主節(jié)點master,其余作為從節(jié)點slave,節(jié)點之間局域網(wǎng)連接;該master節(jié)點主要配置名字管理器namenode和任務(wù)管理器jobtracker的角色,負責總管分布式數(shù)據(jù)和分解任務(wù)的執(zhí)行;主節(jié)點master的屬性是namenode,其作為主服務(wù)器,用于管理文件系統(tǒng)的命名空間和客戶端對文件系統(tǒng)的訪問操作;該3個從節(jié)點salve1、slave2和slave3配置數(shù)據(jù)存儲器datanode和任務(wù)運執(zhí)行器tasktracker,負責分布式數(shù)據(jù)存儲以及任務(wù)的執(zhí)行。從節(jié)點slave的屬性是datanode,其主要功能是管理存儲的數(shù)據(jù)。表2平臺集群節(jié)點結(jié)構(gòu)節(jié)點名字ip地址屬性master192.168.137.2namenodeslave1192.168.137.3datanodeslave2192.168.137.4datanodeslave3192.168.137.5datenode(1d)在主節(jié)點和三個從節(jié)點上安裝相關(guān)軟件并配置相關(guān)文件:參照圖2,在確定的主節(jié)點master和三個從節(jié)點lave1、slave2和slave3上,配置服務(wù)器進程ssh并進行無密碼驗證,并安裝java軟件、配置java環(huán)境、配置hadoop核心文件和spark核心文件;其中hadoop核心文件包括core-site.xml、hdfs-site.xml、mapred-site.xml和yarn-site.xml;spark核心文件包括spark-env.sh、slaves和profile。上述(1a)~(1d)步驟完成后,得到平臺sparkr整體架構(gòu),如參照圖3所示。參照圖3,本實例搭建的sparkr平臺,包括集群各節(jié)點和虛擬機jvm后端兩部分。sparkr為r軟件的運行提供了彈性分布式數(shù)據(jù)集rdd和數(shù)據(jù)框應(yīng)用程序接口dataframeapi。sparkrapi運行在r軟件中,而core運行在虛擬機jvm中。jvm后端是core中的一個組件,提供了r軟件和虛擬機jvm之間的橋接功能,能夠讓r軟件編寫的代碼創(chuàng)建java類的實例、調(diào)用java對象的實例方法或者java類的靜態(tài)方法。sparkr的dataframeapi不需要傳入,數(shù)據(jù)框dataframe中的數(shù)據(jù)全部是以jvm的數(shù)據(jù)類型存儲的。dataframeapi還包含了一部分rddapi。工作時,先將dataframe轉(zhuǎn)換成彈性分布式數(shù)據(jù)集rdd,然后調(diào)用彈性分布式數(shù)據(jù)集rdd的數(shù)據(jù)分組、聚合和重分區(qū)操作,啟動進程rworker來進行mmse的分布式計算。通過用戶自定義的簡單高效的二進制協(xié)議socket,將主節(jié)點rdd的分區(qū)數(shù)據(jù)、序列化后的r軟件編寫的算法程序以及其它信息傳給進程rworker,進程rworker反序列化接收到的分區(qū)數(shù)據(jù)和r軟件編寫的算法程序,將r軟件編寫的算法程序應(yīng)用到分區(qū)數(shù)據(jù)上,再把結(jié)果數(shù)據(jù)序列化成字節(jié)數(shù)組傳回jvm端。步驟2,數(shù)據(jù)收集與存儲。主節(jié)點master從平臺外部,通過hadoop的sqoop組件技術(shù)采集關(guān)系型的故障數(shù)據(jù);通過flume組件技術(shù)采集文件型的故障數(shù)據(jù),并將采集的這些數(shù)據(jù)存儲到hadoop的分布式文件系統(tǒng)hdfs中,主節(jié)點master和所有從節(jié)點slave共享這些數(shù)據(jù)。所述的sqoop組件技術(shù)和flume組件技術(shù)收集的故障數(shù)據(jù)各為5000條,如表3~表6所示。表3故障類別是“操動機構(gòu)異?!钡母黜椨绊懸蛩財?shù)據(jù)表4故障類別是“sf6泄漏”的各項影響因素數(shù)據(jù)表5故障類別是“輔助部件損壞”的各項影響因素數(shù)據(jù)表6故障類別是“主要部件劣化”的影響因素數(shù)據(jù)步驟3,對存儲在分布式文件系統(tǒng)hdfs中的故障數(shù)據(jù)依次進行轉(zhuǎn)換和歸一化的預(yù)處理。(3a)把數(shù)據(jù)集中用區(qū)間表示的數(shù)據(jù)轉(zhuǎn)換成對應(yīng)的單個數(shù)值:將影響因素“年平均負載率”中的“40%以下”轉(zhuǎn)換成0.25,“40%~60%”轉(zhuǎn)換成0.5,“60%~80%”轉(zhuǎn)換成0.75,“80%以上”轉(zhuǎn)換成0.9。(3b)將數(shù)據(jù)集中的屬性歸一化到[0,1]區(qū)間:其中,x為各故障的影響因素的真實值,xmax、xmin分別為真實值中的最大值和最小值,y為歸一化后的值。步驟4,數(shù)據(jù)分布式計算。在本地主機上,利用r軟件將只能在單機上運行的多變量多尺度熵mmse改寫成能在大數(shù)據(jù)平臺sparkr上運行的分布式算法;主節(jié)點master通過大數(shù)據(jù)平臺sparkr的sparkrapi接口從本地主機調(diào)用mmse的分布式算法,將其部署到各個從節(jié)點slave,并以預(yù)處理后的數(shù)據(jù)作為該算法的輸入;從節(jié)點slave并行計算各故障的多變量樣本熵值,并將計算結(jié)果保存到hadoop的分布式文件系統(tǒng)hdfs中。參照圖4,故障特征提取算法mmse的流程如下:(4a)確定嵌入維度m=(2,2,2,2,2,2),延遲向量τ=(1,1,1,1,1,1),閾值r=0.2*sd,sd是每個變量的標準偏差,尺度因子ε=1,2,...,20;根據(jù)故障的影響因素的個數(shù)確定第一變量p=6,根據(jù)故障數(shù)據(jù)條數(shù)條數(shù)確定第二變量n=5000;(4b)以預(yù)處理后的數(shù)據(jù)構(gòu)建長度為n且包含p個變量的數(shù)據(jù)集{xk,i},其中i=1,2,...,n;k=1,2,...,p;(4c)對多變量數(shù)據(jù)集以尺度因子ε為基礎(chǔ)進行粗-斷點處理,得到新的數(shù)據(jù)集為:對每個尺度因子ε=1,2,...,20,分別求長度為n且包含p個變量的多變量數(shù)據(jù)集的多變量樣本熵:(4d)構(gòu)建n-n個m維復(fù)合延遲向量xm(i)∈rm,i=1,2,...,n-n,n=max{m}×max(τ),其中m=[m1,m2,...,mp]∈rp,其中m1,m2,...,mp都是正整數(shù),嵌入維度向量延遲向量τ=[τ1,τ2,...,τp],其中τ1,τ2,...,τp都是正整數(shù),則混合延遲向量xm(i)可以表示為:(4e)定義向量xm(i)和xm(j)間的距離為其對應(yīng)元素差的最大值,即:(4f)對每個復(fù)合延遲向量xm(i),分別求其與其他向量距離,并統(tǒng)計距離小于給定閾值r的個數(shù)pi和pi出現(xiàn)的概率pi={d[xm(i),xm(j)]≤r,i≠j};(4g)計算概率的平均值bm(r):(4h)將(4d)中的復(fù)合延遲向量從m維擴展到m+1維,向量m包括p個元素,共有p種實現(xiàn)方法,即m=[m1,m2,...,mk+1,...,mp],k=1,2,...,p,構(gòu)造p×(n-n)個混合延遲向量xm+1(i)∈rm+1;(4i)定義兩個向量xm+1(i)和xm+1(j)間的距離為其對應(yīng)元素差的最大值,求向量組xm+1(i)中兩兩之間的距離,并統(tǒng)計距離小于給定閾值r的個數(shù)qi和qi出現(xiàn)的概率qi={d[xm+1(i),xm+1(j)]≤r,i≠j};(4j)計算在m+1維下的平均值bm+1(r):(4k)根據(jù)步驟(4f)計算結(jié)果和步驟(4j)的計算結(jié)果bm+1(r),計算多變量樣本熵msampen:計算結(jié)束后,得到4種故障在尺度因子ε=1,2,...,20上的多變量樣本熵值,并將結(jié)果保存到分布式文件存儲系統(tǒng)hdfs中。步驟5,可視化展示。在單機環(huán)境下,本地主機從大數(shù)據(jù)平臺的分布式文件系統(tǒng)hdfs中下載結(jié)果數(shù)據(jù),利用r軟件豐富的可視化包,繪制開關(guān)設(shè)備各故障在20個尺度因子上的多變量樣本熵曲線,如圖5所示。從圖5可見,4種故障的多變量樣本熵曲線,除了尺度因子1外,4種故障的多變量樣本熵曲線都沒有交叉,分類效果非常顯著。步驟6,特征提取。根據(jù)圖5所示的4種故障的多變量樣本熵曲線,4種故障的曲線在尺度因子10~20范圍內(nèi)都比較平緩,且4種故障對應(yīng)尺度因子的多變量樣本熵彼此相差較大,所以選取尺度因子10~20范圍的多變量樣本熵作為4種故障的特征參數(shù),為及時診斷和預(yù)判開關(guān)設(shè)備故障提供依據(jù)。以上描述僅是本發(fā)明的一個具體實例,不構(gòu)成對本發(fā)明的任何限制,顯然對于本領(lǐng)域的專業(yè)人員來說,在了解了本
發(fā)明內(nèi)容和原理后,都可能在不背離本發(fā)明原理結(jié)構(gòu)的情況下,進行形式和細節(jié)上的各種修改和改變,但是這些基于本發(fā)明思想的修正和改變?nèi)栽诒景l(fā)明的權(quán)利要求保護范圍之內(nèi)。當前第1頁12