李雨田
(西安航空職業(yè)技術學院,陜西 西安 710089)
軸承作為一種典型的機械零件,被廣泛應用在汽車、航空航天等多個領域。一旦軸承出現(xiàn)故障,將會給機械帶來極其嚴重的后果。因此,加強對軸承的在線故障監(jiān)測與診斷,對提高機械運行的安全性來講,具有非常重要的價值和意義。但是,傳統(tǒng)的軸承故障診斷來講,大部分都是基于PLC或PC機開發(fā)的,這種平臺在應用中存在很大的束縛,不僅體積大,同時成本也高,面對野外測試效率低下。因此,開發(fā)更為方便的軸承故障診斷系統(tǒng),對提高機械的安全性,以及故障診斷的便捷性,具有現(xiàn)實的價值和意義。但針對軸承故障的診斷中,目前大部分文獻都集中在對軸承故障特征信號的處理等方面。如雷文平[1]則提出一種基于采用SVM算法對小波信號進行識別,從而得出故障信號;李從志等的研究思路也主要集中在對故障信號進行識別[2]。但是,歸納上述的研究中發(fā)現(xiàn),目前對于軸承故障信號的實用型系統(tǒng)研究還很少。鮮有學者提出一個比較實用和便捷的軸承診斷系統(tǒng)?;谝陨媳尘埃疚牟捎卯斍白顬榱餍械腁ndroid體系架構對軸承故障診斷系統(tǒng)進行開發(fā),從而改變以往的有線故障診斷方法,實現(xiàn)更為便捷和靈活的軸承故障診斷。
本系統(tǒng)構建的目的是構建一個便捷型的軸承故障系統(tǒng),而結合軸承故障診斷問題,本系統(tǒng)主要從硬件和軟件兩方面對軸承故障診斷系統(tǒng)進行構建[3]。因此,按照上述的目的和設計思路,本文將該系統(tǒng)的整體方案設計為如圖1所示。本文所設計的軸承故障系統(tǒng)主要由四大部分構成,分別為數(shù)據(jù)感知終端、無線傳輸層、手機終端和虛擬儀器。
圖1 基于 Android 的軸承故障診斷系統(tǒng)總體結構
根據(jù)上述的架構看出,數(shù)據(jù)感知終端首先對傳感器信號進行調理與采集;在完成采集工作之后,借助無線模塊的藍牙、wifi、3G、4G等通信方式,將采集到的傳感器信號傳輸至手機終端中;最后,由手機虛擬儀器對接收數(shù)據(jù)開展分析與處理。虛擬儀器部分主要由四大功能模塊進行支持,分別為數(shù)據(jù)傳輸模塊、數(shù)據(jù)存儲模塊、數(shù)據(jù)呈現(xiàn)模塊以及數(shù)據(jù)分析模塊。
在本系統(tǒng)的構建中,硬件部分主要包括藍牙模塊、手持終端和信號采集部分。具體的硬件見表1。
表1 主要的硬件
軟件部分開發(fā),采用開源軟件eclipse4.3作為開發(fā)工具。開源軟件eclipse具備大量的開發(fā)插件,能夠對本次設計開發(fā)需求進行滿足。同時,開源軟件eclipse還能夠對眾多常用的開發(fā)語言進行支持,具體包括Java語言、C/C++語言等。在應用開源軟件eclipse開展基于 Android 的軸承故障診斷儀開發(fā)工作時,開發(fā)人員僅需通過在eclipse中配置相應的Android SDK,就能為系統(tǒng)開發(fā)構建起編譯環(huán)境。對軟件部分的開發(fā)中,采用模塊化設計思想,目的是使系統(tǒng)在后續(xù)使用過程中具備較強的擴展性。整體功能組成部分見圖2。
圖2 軟件系統(tǒng)結構設計
其中,數(shù)據(jù)采集主要是實現(xiàn)兩大功能:一是對Android 虛擬儀器設備傳送來的參數(shù)設置指令以及數(shù)據(jù)采集控制指令進行接收;二是向Android 虛擬儀器設備反饋傳感器采集數(shù)據(jù);
Android虛擬儀器設備主要實現(xiàn)三項功能:一是利用無線傳輸方式向數(shù)據(jù)采集功能模塊發(fā)送相應的指令;二是接收數(shù)據(jù)采集功能模塊反饋來的傳感器采集數(shù)據(jù);三是開展數(shù)據(jù)點在線顯示及數(shù)據(jù)信號處理分析工作。
因此,根據(jù)以上分析,將Android程序的開發(fā)分為四大模塊:數(shù)據(jù)傳輸模塊、數(shù)據(jù)存儲模塊、數(shù)據(jù)呈現(xiàn)模塊以及數(shù)據(jù)分析模塊。其中,數(shù)據(jù)傳輸模塊主要是對藍牙及wifi模塊讀寫操作進行實現(xiàn);數(shù)據(jù)存儲模塊則負責對數(shù)據(jù)采樣點信息進行存儲,保障后續(xù)數(shù)據(jù)回放及信號處理;數(shù)據(jù)呈現(xiàn)模塊主要是對處理后信號結果進行顯示,實現(xiàn)系統(tǒng)與用戶之間的交互;數(shù)據(jù)分析模塊是整個故障診斷系統(tǒng)的關鍵部分,主要是對數(shù)據(jù)點信號進行時域分析與頻域分析[4]。
3.2.1 數(shù)據(jù)采集模塊設計
在軸承故障診斷系統(tǒng)的數(shù)據(jù)采集功能模塊中,主要采用C語言作為采集器Arduino ADK編程語言,以Arduino IDE作為其開發(fā)平臺,并以此實現(xiàn)對串口、I/O口的封裝。同時,由于Arduino在全世界具備頗多的愛好者,使數(shù)據(jù)采集模塊的開發(fā)工作將極為簡便。通過此方式構建起的數(shù)據(jù)采集模塊開發(fā)環(huán)境,將實現(xiàn)對許多類的良好封裝,從而減少開發(fā)過程中不必要的開發(fā)工作量。數(shù)據(jù)采集模塊所需要的類主要包括Serial類、analogRead類以及Timer類。具體數(shù)據(jù)采集模塊工作流程如圖3所示。
圖3 數(shù)據(jù)采集模塊工作流程
3.2.2 數(shù)據(jù)傳輸功能模塊
數(shù)據(jù)傳輸功能模塊主要由藍牙無線通信模塊以及WiFi無線通信模塊構成。其中,藍牙無線通信模塊的開發(fā)主要需要Bluetooth Adapter類、Bluetooth Device類、Bluetooth Socke類以及Bluetooth Server Socke類。藍牙無線通信模塊開發(fā)步驟主要包括以下6步[5]:
(1)Android手機服務器端與客戶端發(fā)起藍牙無線通信模塊開發(fā)權限申請;
(2)對本地藍牙適配器進行獲取;
(3)開打藍牙設備;
(4)對藍牙串口模塊進行搜索;
(5)建立起服務器端與客戶端之間的連接;
(6)借助inputStream及outputStream獲取相應的數(shù)據(jù)流。
wifi無線通信模塊主要采用與Windows下socket通信流程所類似的HLK-RM04 wifi串口模塊[6]。在開發(fā)過程中主要借助socket.connect()方法構建起采集器與手機虛擬儀器的連接;利用socket.getInputStream()實現(xiàn)參數(shù)設置指令無線傳輸;以socket.getInputStream()獲取采集器反饋數(shù)據(jù)。具體數(shù)據(jù)傳輸功能模塊工作流程如圖4所示。
圖4 數(shù)據(jù)傳輸功能模塊工作流程
3.2.3 數(shù)據(jù)存儲功能模塊
數(shù)據(jù)存儲功能模塊主要作用于對數(shù)據(jù)采樣點進行存儲,便于用戶后續(xù)對采樣數(shù)據(jù)的試用及分析,實現(xiàn)數(shù)據(jù)回放功能。由于本文所設計的軸承故障診斷儀基于Android系統(tǒng),因此數(shù)據(jù)存儲功能模塊將具備多種數(shù)據(jù)存儲方式,具體包括Share Preferences、文件存儲、SQLite數(shù)據(jù)庫等。具體存儲功能模塊的數(shù)據(jù)回放功能的數(shù)據(jù)回放流程如圖5所示。
3.2.4 數(shù)據(jù)呈現(xiàn)功能模塊
在數(shù)據(jù)呈現(xiàn)功能模塊的設計過程中,為了避免該功能模塊出現(xiàn)屏幕閃爍現(xiàn)象,本文將采用圖像雙緩沖繪圖技術開展數(shù)據(jù)呈現(xiàn)功能模塊的設計工作。數(shù)據(jù)呈現(xiàn)功能模塊在開發(fā)過程中所需的類包括Paint類、Surface View類以及Canvas 類。同時,考慮到系統(tǒng)數(shù)據(jù)呈現(xiàn)功能模塊的師生顯示需求,本文將在數(shù)據(jù)呈現(xiàn)功能模塊中引入數(shù)據(jù)刷新機制。具體數(shù)據(jù)呈現(xiàn)功能模塊工作流程如圖6所示。
圖5 數(shù)據(jù)回放功能的數(shù)據(jù)回放流程
圖6 數(shù)據(jù)呈現(xiàn)功能模塊工作流程
3.2.5 數(shù)據(jù)分析功能模塊
數(shù)據(jù)分析功能模塊主要由三大模塊構成,分別為數(shù)據(jù)預處理模塊、時域特征分析模塊以及頻域特征分析模塊。具體數(shù)據(jù)分析功能模塊結構如圖7所示。
為驗證上述上述方案的可行性,搭建如圖8所示的試驗平臺對軸承故障進行現(xiàn)場模擬診斷平臺。
軸承選擇UC201,具體參數(shù)為:鋼球個數(shù)8,鋼球內直徑d=6.749 mm,外圓直徑D=28.5 mm;工作轉數(shù)為1 200 r/min,采樣頻率設定為20 480 Hz。依據(jù)對軸承故障特征頻率的特征,可以得到如圖9和圖10所示的軸承故障時域特征信號和頻域特征信號。
圖7 數(shù)據(jù)分析功能模塊結構
圖8 軸承故障診斷現(xiàn)場實驗圖
圖9 頻域特征信號
同時為驗證上述結果的正確性,將結果與傳統(tǒng)的通過Lab VIEW虛擬儀器檢測的結果進行比較,得到表2所示的結果。
通過上述的部分指標對比看出,兩者采集到的軸承故障特征值的結果基本一致,說明本文采用的這種Android診斷方法與傳統(tǒng)的Lab VIEW虛擬儀器測量結果一致,但本文構建的方法具有極大的便捷性。
圖10 頻域特征信號
表2 兩者特征值對比結果
通過上述的分析可知,本文構建的Android軸承診斷方法,在很大程度上改變了以往傳統(tǒng)的Lab VIEW虛擬診斷方法,為機械軸承的故障診斷采集提供了更為簡單的方法。