?

基于表格化參數輸入的隨機振動數據分析

2024-03-08 11:16張青虎高貴福龐勇
環境技術 2024年1期
關鍵詞:繪圖時域表格

張青虎,高貴福,龐勇

(北京機電工程研究所,北京 100074)

引言

在工程中經常使用MATLAB 進行隨機振動數據時域和頻域分析,利用MATLAB 繪圖功能將振動時域數據曲線、振動功率譜密度曲線等通過圖形窗口直觀顯示,并在圖形窗口顯示數據的測量工況、通道代號、通道名稱、數據說明等相關數據描述參數。

隨機振動數據本質上是數字信號的一種,可利用MATLAB 數字信號處理工具箱和函數,根據具體需要編制程序進行處理。MATLAB 軟件的幫助文檔對數字信號處理工具箱和函數有詳細的說明,可供工程技術人員參考;也有大量相關教材和書籍[1]可供參閱。各行業的工程技術人員已經總結了利用MATLAB 進行隨機振動數據分析的相關經驗和程序[2]。

對于少量數據、通道數不多的情況,可以直接在MATLAB 程序代碼中寫入需要顯示的數據描述參數。對于大量的、多通道振動數據,人工輸入這類數據描述參數的工作量很大,效率很低,而且程序代碼很臃腫、可讀性差、容易出錯。

本文介紹了一種方法,利用表格軟件快速高效的輸入編輯功能,將相關數據描述參數保存為表格文件,在MATLAB 數據分析程序中利用專用函數,自動讀取表格文件,獲取相關數據描述參數并在圖形窗口顯示,提高了隨機振動數據分析工作的效率。

該方法可廣泛應用于裝備環境工程、振動工程、測量與數據處理等專業領域的隨機振動數據及類似數據分析,提高數據分析及數據管理[5]的工作質量,減少大量數據處理過程中的人因錯誤率。

1 MATLAB 隨機振動數據分析基本過程

1.1 數據的整理與讀取

隨機振動原始數據,是隨機振動加速度隨時間變化過程的時域數據,由振動傳感器測量,經數據采集系統記錄和保存,其保存文件格式一般有mat、txt、dat、csv、xls(含xlsx)等。

在MATLAB 中可以通過Import Data 工具手動導入數據文件,也可以通過dlmread、xlsread 等函數自動讀取數據文件。

load(‘*.mat’)用于讀取mat 格式的數據文件。 mat格式是MATLAB 自身的數據文件存儲格式,可直接讀取使用。

data = dlmread(‘*.txt’,’’,1,0) 用于讀取基于ASCII 碼的txt、dat 格式的數據文件。需要設置參數跳過數據頭部的表頭、文字說明等非數據部分。

data = xlsread(‘*.xlsx’,1) 用于讀取csv、 xls(含xlsx)等表格格式的數據文件。需要設置讀取頁數和范圍。

dlmread、xlsread 讀取數據文件后,生成數據矩陣用于后續分析和繪圖,同時保存為mat 格式文件方便再次使用。

1.2 時域和頻域分析

對隨機振動數據的時域處理,主要是對數據進行預處理,包括數據有效性的確認、零漂處理、濾波、異常數據剔除等。

對隨機振動數據的頻域處理,選取一定時間段的時域數據,計算其功率譜密度(PSD)及總均方根值(RMS)??捎胮welch 函數計算功率譜密度,用通用公式計算總均方根值(RMS)。

計算其功率譜密度(PSD)一般用pwelch 函數,調用格式如下:

其中輸入參數: x-時域信號列向量,是前述數據data 經預處理后按時間范圍截取得到的數據;window-窗函數;noverlap-重疊率;nfft-FFT 變換點數;fs-采樣頻率;

輸出參數: Pxx -PSD 列向量,f-頻率列向量;

計算總均方根值(RMS)函數如下:

其中:pxxc 為Pxx 在給定頻率上下限范圍內的值。

將功率譜密度(PSD)及總均方根值(RMS)分析結果生成數據矩陣用于后續分析和繪圖,同時保存為mat格式文件方便再次使用。

根據環境數據信息化管理的要求,將原始數據和分析結果數據進行標準化存儲。

1.3 數據分析結果的圖形顯示

利用MATLAB 繪圖功能將時域數據曲線、功率譜密度曲線通過圖形窗口直觀顯示,并在圖形窗口顯示數據的測量工況、通道代號、通道名稱、數據說明等相關數據描述參數。

時域數據用線性坐標顯示,可用plot 函數繪圖;功率譜密度屬于頻域數據,需要用對數坐標顯示,可用loglog 函數繪圖。

通過MATLAB 的圖形控制函數在圖形窗口顯示數據描述參數。例如:

xlabel(‘頻率(Hz)')顯示繪圖橫軸名稱;

ylabel(‘PSD(g^2/Hz)’)顯示繪圖縱軸名稱;

title(‘Title’)繪制圖題;

legend(‘通道功率譜xxx','參考譜xxx')繪制數據曲線說明圖例;

xlim([5 500])設置橫軸坐標范圍;

ylim([1e-12 1e0])設置縱軸坐標范圍;

text(‘譜峰值1 xxxx’)在繪圖制定位置添加文字說明;

最終繪圖顯示效果如圖1 所示。

圖1 隨機振動PSD 圖和時域圖

為實現圖形窗口顯示數據描述參數的功能,可以編寫MATLAB 代碼利用圖形控制函數來實現,也可以在繪圖后手動編輯繪圖窗口來添加。對于少量數據、通道數不多的情況,這兩種方法具有簡單、靈活的優勢;而對于大量的、多通道振動數據的繪圖顯示,則需要尋求更加快速高效的方法。

2 基于表格化參數輸入的振動數據分析結果圖形顯示

2.1 振動數據描述參數圖形顯示的困難

對于少量數據、通道數不多的情況,可以直接在MATLAB 程序代碼中寫入需要顯示的數據描述參數,甚至可以可以在繪圖后手動編輯繪圖窗口來添加。對于大量的、多通道振動數據,手動添加肯定是不可取的,而直接將數據描述參數寫入程序代碼來實現輸入和顯示,則工作量很大,效率很低,而且程序代碼大量重復、臃腫低效、可讀性差、容易出錯。

如圖2 所示,需要同時繪制9 個(實際工程中可多達幾十個以上)測量通道的振動功率譜密度(PSD)曲線,以及一條振動參考譜曲線。不指定曲線名稱時,圖例中每條曲線被自動標識為data1、data2、data3……data9,可讀性差。

圖2 多通道匯總PSD 圖

工程中測量得到的振動數據,除了每條數據中通道數量多,數據條數也很多。通常會在多種工況、多次試驗中進行振動測量,每個工況、每次試驗中也可能進行多次測量,或者將測量數據分成多段分別處理??赡苄枰幚頂凳畻l甚至數百條振動數據,每條數據中的通道名稱和順序是一致的,但是為了方便區分不同工況、試驗、時段的數據,還需要在繪圖中標識出每條數據的相關描述參數。通常將圖2 中的圖題即Title 替換為數據的工況、試驗、時段等相關描述參數。

在繪圖中手動添加需要的通道名稱、工況、試驗、時段等信息,費時費力,效率很低;而直接將數據描述參數寫入程序代碼,將導致代碼臃腫、可讀性差;而且MATLAB 代碼編輯器并不擅長編輯大量字符串類型的數據描述參數,遠不如專業文字或表格編輯器軟件功能完善、方便高效。

因此,對于大量的、多通道振動數據的繪圖顯示,則需要尋求更加快速高效的方法。

經過大量振動數據分析的實踐嘗試和工程應用,形成了一種方法,利用表格軟件快速高效的輸入編輯功能,將相關數據描述參數保存為表格文件,在MATLAB 數據分析程序中利用專用函數,自動讀取表格文件,獲取相關數據描述參數并在圖形窗口顯示。

2.2 參數表格化處理

利用表格軟件快速高效的輸入編輯功能,將相關數據描述參數保存為表格文件。

Excel 是一種用于電子表格創建和編輯的專業軟件,功能豐富,應用廣泛,也可以方便地與MATLAB 軟件實現交互。因此采用Excel 將相關數據描述參數保存為表格文件。

圖3 為包含測量通道編號、分析通道編號、通達代號、通道名稱等數據描述參數的表格文件。圖4 為包含每條振動數據的工況、試驗、時段等數據描述參數的表格文件。Excel 中自動擴展、自動填充等豐富的功能,便于快速高效的生成和編輯數據描述參數表格文件。將生成的表格文件以文件名“chnname.xlsx” 保存,上述兩個表格分別為該文件中的Sheet1、Sheet2。

圖3 數據描述參數表格文件(通道)

圖4 數據描述參數表格文件(工況)

2.3 自動讀取表格文件

在MATLAB 數據分析程序中利用相關函數,自動讀取表格文件,獲取相關數據描述參數。

在振動數據分析程序中,使用xlsread 函數讀取excel表格內容,其調用格式如下:

其中輸入參數:filename-表格文件名稱,sheet-表格文件中的頁號(sheet);

輸出參數:num-表格文件中的數字,txt-表格文件中的文字內容,raw-表格文件中的所有內容。

分別讀取之前創建的表格文件 “chnname.xlsx” 中的Sheet1、Sheet2,從表格中約定的列讀取信息,并按照通道序號生成通道名稱數組CHNNAME,按照工況序號生成工況名稱數組CASENAME 等,供下一步繪圖顯示使用。

2.4 參數圖形顯示

將相關數據描述參數在圖形窗口顯示。

在振動分析和繪圖程序中,按照通道序號讀取通道名稱數組CHNNAME 中對應的通道名稱變量chnname,按照工況序號讀取工況名稱數組中的CASENAME 中對應的工況名稱變量CaseName,調用title、legend、text 等圖形控制函數在圖形窗口的相應位置顯示。

顯示數據描述參數的多通道匯總時域圖顯示效果見圖5,多通道匯總PSD 圖顯示效果見圖6。

圖5 顯示數據描述參數的多通道匯總時域圖

圖6 顯示數據描述參數的多通道匯總PSD 圖

3 結論與改進

本文利用表格軟件快速高效的輸入編輯功能,將相關數據描述參數保存為表格文件,在MATLAB 數據分析程序中利用專用函數,自動讀取表格文件,獲取相關數據描述參數并在圖形窗口顯示,提高了隨機振動數據分析工作的效率。

該方法可廣泛應用于裝備環境工程、振動工程、測量與數據處理等專業領域的隨機振動數據及類似數據分析,提高數據分析及數據管理[5]的工作質量,減少大量數據處理過程中的人因錯誤率。

猜你喜歡
繪圖時域表格
來自河流的你
“禾下乘涼圖”繪圖人
《現代臨床醫學》來稿表格要求
《現代臨床醫學》來稿表格要求
統計表格的要求
基于時域信號的三電平逆變器復合故障診斷
基于HTML5 Canvas繪圖技術應用
基于極大似然準則與滾動時域估計的自適應UKF算法
基于時域逆濾波的寬帶脈沖聲生成技術
Surfer和ArcView結合在氣象繪圖中的應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合