摘要:介紹了虛擬儀器技術的特點和構成,在此基礎上將現代信號處理新理論高階累積量(HOC)引入到虛擬儀器的信號分析之中,對傳動系統的故障進行了特征提取和分析,以VC++軟件開發平臺為基礎,并結合MATLAB語言研制和開發出了機械故障診斷虛擬儀器系統,設計了各種功能模塊,包括振動信號的分析、處理和系統故障診斷等。從而實現了故障診斷虛擬儀器系統應有的功能。
關鍵詞:虛擬儀器系統;故障診斷;高階累積量;VC++軟件
中圖分類號:TP309.1文獻標志碼:A
文章編號:1001-3695(2007)07-0173-03
虛擬儀器(Virtual Instrument,VI)技術是近年來發展迅速的儀器技術,是對測試儀器的一種革新,它具有功能強大、開發周期短、開發成本低廉等獨特的優點[1,2]。將虛擬儀器技術應用于工程實際也是測量儀器發展的趨勢。虛擬儀器是基于計算機的軟硬件測試平臺,是由計算機、應用軟件和儀器硬件組成。儀器硬件是由數據采集卡、接口、傳感器等組成;軟件是由信號處理算法分析程序、計算機語言、各種控件和軟件開發工具等組成。所以軟件的開發和設計是虛擬儀器的核心。
虛擬儀器的優點在于能夠與計算機技術結合,利用加在計算機上的一組軟件與儀器模塊相連接,以計算機為核心,充分利用計算機強大的圖形界面和數據處理能力提供對測量數據的分析和顯示,具有很大的靈活性。傳統儀器由數據采集與控制、數據分析與處理及結果表達與輸出三部分組成。傳統儀器的這些功能模塊都是以硬件(或固化的軟件)的形式存在的。而虛擬儀器系統是基于計算機的軟硬件測試平臺,由計算機、應用軟件和儀器硬件組成[3]。在虛擬儀器技術中,外部儀表包括具體的測試儀器或者傳感器,它們通過儀器接口與計算機連接。常用的接口包括通用接口總線(GPIB)、數據采集板(DAQ)、串口以及VXI 總線等。通用接口總線用來將獨立的儀器連接到計算機上實現計算機對儀器的控制和數據通信。數據采集板就是直接插到計算機總線上的I/O 卡。數據采集板與外部儀器或者傳感器連接,進行數據采集,并且即時地將數據存放到RAM。微處理器可以立即訪問這些數據。數據由微處理器和數據采集板共享。數據采集板技術極大地推動著虛擬儀器的發展,因為它把微處理器和總線技術的進步直接演變為I/O 設備的改進和系統能力的提高。
高階累積量(higher order cumulants,HOC)法[4,5]可從非平穩調制信號及非線性耦合信號中提取出耦合的高階次特征,同時剔除外加干擾影響,提高分析和辨識精度,從而為復雜的動態系統特性辨識、模式識別以及故障診斷提供一種嶄新方法。由于虛擬儀器的重點在于它的軟件部分,本文采用高階累積量這種新理論進行虛擬儀器軟件的構建,基于高階累積量的各種分析技術如三階譜、1.5維譜、雙相干譜等對故障信號進行分析和特征提取,將分析結果作為故障特征信息,并結合神經網絡進行了故障模式識別,從而完成了故障診斷的虛擬儀器系統。
1高階累積量及其分析技術
2故障診斷虛擬儀器系統構建與實現
虛擬儀器系統包括硬件和軟件兩大模塊,如圖1所示。
其硬件部分是由CRAS信號采集系統所攜帶的采集卡和QL-116R 16通道采集箱等組成, 系統使用CRAS隨機信號采集系統采集由加速度傳感器拾取的振動信號,可同時采集16路信號,最高采樣頻率可達51 200 Hz。這部分的作用就是負責采集振動信號。軟件部分實現對振動信號的分析處理,并對分析結果進行模式識別和完成故障診斷。系統的軟件部分使用VC++軟件開發平臺,通過與MATLAB語言接口編程,來充分發揮兩者的優勢。VC++是面向對象的編程環境,可以方便地編寫出基于窗口的可視化操作應用程序;MATLAB具有強大的數據運算和圖形處理能力,因此,兩者的結合可以開發出界面友好、擴展性強且運算能力強大的軟件系統,十分適用于開發故障診斷系統。
2.1接口編程的實現
在VC++下調用MATLAB,主要有三種方法:
(1)利用MATLAB引擎。MATLAB Engine庫是MathWorks公司提供的一組函數庫。它提供了一種在用戶程序進程中與獨立的MATLAB進程通信的方法,在Windows下使用ActiveX技術實現。 MATLAB Engine不僅可以調用MATLAB中的C\\C++函數,還可以調用工具箱中的函數,應用程序整體性能較好,同時,MATLAB Engine方式可利用MATLAB強大的圖形功能;但該種方式的致命缺陷是不能脫離MATLAB運行環境。
(2)利用MATLAB自帶編譯器。MCC可以將MATLAB的C/C++數學庫編譯為VC++編譯器能識別的代碼嵌入VC++環境。利用MCC編譯器,可以有效提高代碼的執行效率,而且可以脫離MATLAB運行環境;但待編譯的M文件不能涉及MATLAB的內部類,出現編譯文件嵌套時應改寫M文件,而且此種方式不支持圖形功能。
(3)MATCOM轉換法。MATCOM是MathWorks公司開發的為MATLAB中的M文件進行高效解釋和調試的集成開發環境。MATCOM編譯M文件,先將M文件按照與MATCOM的cpp庫的對應關系,翻譯為cpp源代碼,然后用C編譯器將cpp文件編譯成相應的exe或dll文件。用MATCOM方式,生成的代碼可讀性好,并支持圖形函數,可脫離MATLAB環境。
由上述分析可知,MATCOM轉換法最為簡便有效。本文采用MATCOM轉換法實現兩者的接口編程。信號分析處理部分用MATLAB語言編寫,用MATCOM轉換后由VC++程序調用實現相關信號處理功能。
2.2軟件系統構建
軟件部分構成如圖2所示。它由三大塊組成,即主界面、信號導入模塊,分析模塊和診斷模塊。其中信號導入模塊將CRAS隨機信號采集系統采集的振動信號進行格式轉換并導入和顯示波形;分析模塊可以對信號進行功率譜分析和高階累積量分析,并可視化顯示圖形分析結果;診斷模塊實現對不同故障的模式識別。本系統結合BP神經網絡進行識別,所以還包括網絡的訓練等子功能模塊。主界面如圖3所示。
主界面上完成待分析振動信號的導入,可實現信號的預覽。由于CRAS采集系統可實現不同通道數的信號采集,經格式轉換后的數據可能是由數個通道組成的,在導入數據時需要指明導入的是哪個通道的數據。在主界面上有ChannelNum和Channel兩個控件分別設置數據文件中的總通道數和要導入信號的通道號;DataLength為指示空間指示導入數據的總長度;Fs為要導入數據的采樣頻率,這是為了在分析時可以正確地在頻率軸上顯示頻率坐標值;InputData按鈕用于導入要分析的數據。在設置好上述三個參數后,點選它會彈出打開文件對話框,選擇轉換好的數據文件(*.txt)進行導入。正下方的圖形框為數據預覽顯示窗口,如圖3所示是故障實驗數據在成功導入數據后顯示的數據波形。
Analyse部分用于完成對導入數據進行高階累積量分析和分析結果的圖形顯示,有四種分析形式,分別是PowerSpectra為運算功率譜、HOS為高階累積量譜、3/2-Spectra為3/2維譜和Bicoherence為雙相干譜。圖4 所示為上述故障實驗數據的功率譜分析結果;圖5所示為它的累積量譜分析結果;圖6所示為維譜分析結果;圖7所示為1.5雙相干譜分析結果。
診斷部分分別由訓練樣本的制作、神經網絡的訓練和故障診斷三大塊組成,如圖8所示。界面的上半部分為訓練部分,完成樣本的制作和神經網絡訓練。由于實際采集的信號數據均比較長,全部用于訓練會花費很多時間,且也沒有必要,只需從中截取幾段作為訓練樣本。本軟件專門設計了樣本制作的相關功能。本軟件采用的是高階累積量方法,用于訓練的網絡輸入為分析處理后的1.5維譜值。在制作樣本前所需設置的參數有:StartPT為截取段的起始位置,SampLen為每段數據長度,SampNum為數據段數。下拉菜單中選擇訓練樣本的故障類型,設置有三種故障類型,即齒根裂紋、齒頂裂紋和輪齒磨損。制作新樣本文件需選New,在老樣本文件上加入樣本選Old;BlockNum和L同上;P為模型階數,Vanriance指示分析誤差。設置好上述所有參數后,就可以開始制作樣本。制作好的樣本以文本格式存放,便于查看和維護。訓練好的網絡的權值保存在格式為.wt文件中。該文件以二進制的方式存放,除了各神經網絡節點的權值外,包含有樣本的相關參數信息及網絡的輸入節點數、隱含層數和輸出節點數。圖8為樣本制作完成的提示。
下半部分為診斷功能部分,診斷時先導入訓練好的權值,通過指示性控件顯示該網絡的參數信息,StartTP設置被診斷信號的樣本起始點值,診斷結果以消息的方式彈出。圖9為成功診斷出齒根裂紋故障的顯示。
3結束語
本文采用虛擬儀器的概念,將HOC算法引入虛擬儀器的信號分析之中,利用VC++平臺和MATLAB語言各自的優點,通過使用MATCOM代碼轉換法完成兩者的接口編程,實現了用高階累積量方法分析振動信號和診斷故障的功能。本系統不依賴于MATLAB環境,經軟件打包后可獨立安裝運行,使用可視化風格,軟件易于操作,是理想的診斷系統。
參考文獻:
[1]楊樂平,等.虛擬儀器技術概論[M].北京:電子工業出版社,2003:20-65.
[2]劉君華.基于LabWindows/CVI的虛擬儀器設計[M].北京:電子工業出版社,2003:25-58.
[3]王秀芳,郝建勛.虛擬示波器的設計與實現[J].儀器儀表學報,2005,26(8): 253-254.
[4]LAI Wuxing, PETER W T,ZHANG Guicai,et al.Classification of gear faults using cumulants and the radial basis function network[J]. Mechanical Systems and Signal Processing,2004,18(2) :381-389.
[5]SHAO Renping,GUO Wanlin,LI Zongbin.A new method for identi-fying the gear transmission systembased on higher order cumulant:proc.of the 5th Int. Conf. on Vib. Eng.(ICVE’2002)[C].Nanjing, China: China Aviation Industry Press,2002:276-290.
[6]ZAZULA D.A common approach to the analysis of cumulant-based AR and ARMA identification[J]. Digital Signal Processing,2003,13(2) :233-251.
注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文”