本期给大家介绍武汉大学转子数据,含不平衡、不对中、摩擦故障。
论文链接:通过点击最左下角的阅读原文进行在线阅读及下载。
论文基本信息
论文题目:Feature extraction of rotor fault based on EEMD and curve code
作者:Dong Liu a,b, Zhihuai Xiao a,b,*, Xiao Hu a,b, Congxin Zhangc,*, 0.P. Malik da Key Laboratory of Hydraulic Machinery Transients, Ministry of Education, Wuhan University, Wuhan 430072, Chinab School of Power and Mechanical Engineering, Wuhan University, Wuhan 430072, China c Ofice of Scientifc Research and Development, Wuhan University, Wuhan 430072, Chinad Department of Electrical and Computer Engineering, University of Calgary, Calgary, AB T2N 1N4, Canada注:上述链接若打不开,文末有百度网盘链接。
目录
1 实验台简介
1.1 实验台简介
实验台如图1所示,包括一个转子实验室台架、一个速度控制器、一个前端处理器和一台计算机。转子实验室台架由一个额定电流为1.95A、最大输出功率为148W的直流电机驱动,由DH5600速度控制器控制。
转子由位于两侧的轴承支架支撑,直径为10毫米,长度为850毫米,包括通过联轴器连接的两根轴和两个直径为75毫米的质量盘。台架上安装了一个用于接触摩擦实验和传感器安装的螺钉壳体。
数据采集装置采用GTS3-TG系列测试模拟器。频率测量输入输出通道的时间分辨率为8ns。频率输出通道在50 Hz附近的频率分辨率为0.0002 Hz,误差不超过±0.0005 Hz。信号由固定在传感器支架上的两个涡流传感器采集,并传输到前端处理器进行放大、滤波,最后传输到计算机进行分析和存储。
1.2 数据组成介绍
本文收集了包含四种转子状态(正常、不平衡、不对中、摩擦)的振动信号。
通过在质量盘边缘的螺纹孔中拧入2g质量块来模拟不平衡转子,
通过改变联轴器处两个轴的相对位置来实现不对中情况,
通过拧入摩擦螺钉并与旋转轴接触来实现接触摩擦故障。
在信号采集过程中,转子速度设置为1200 r/min(转频20Hz),采样频率设置为2048 Hz,采样时长为1s。在不同转子状态(正常、接触摩擦、不平衡和偏心)下进行了45组测试,然后获得了总共180个样本。

2 频谱分析
2.1 数据读取
数据文件只有1个,文件名为180data_new_select_denoised.mat,是个mat类型文件,需要用python里scipy包里的loadmat函数进行读取。
import numpy as np
import pandas as pd
from scipy.io import loadmat
import matplotlib.pyplot as plt
from matplotlib import rcParams
config = {
"font.family": 'serif',
"font.size": 15,
"font.serif": ['SimHei'],
"mathtext.fontset": 'stix',
'axes.unicode_minus': False
}
rcParams.update(config)
file_path = r'E:/03-公开数据集/武汉大学转子故障数据集/数据/180data_new_select_denoised.mat'
data_arr = loadmat(file_path)
print(data_arr)

读取得到是一个字典类型的数据,可以看到振动数据在关键词"Y_wavedeno"所对应的值里。这里只提供了Y轴的位移数据,没有提供X轴的位移数据,因此不能够通过轴心轨迹图来进行分析。data_arr = data_dict['Y_wavedeno']
print(data_arr.shape)
输出结果为:(180, 2048)
结合上述数据介绍,可知该数据数据结构为180×2048。其中每一行为1组数据,每组数据长度为2048,共180组数据。
数据共包含正常、接触摩擦、不平衡和偏心故障。每个故障类型有45个数据。各个故障类型的振动特性分析见:常见旋转机械故障及振动特性分析(上) | 转子不平衡、不对中、转轴弯曲、转轴横向裂纹
2.2 正常状态频谱分析
def plt_time_domain(arr, fs=1600, ylabel='Amp(mg)', title='原始数据时域图', img_save_path=None, x_vline=None, y_hline=None):
"""
:fun: 绘制时域图模板
:param arr: 输入一维数组数据
:param fs: 采样频率
:param ylabel: y轴标签
:param title: 图标题
:return: None
"""
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
font = {'family': 'Times New Roman', 'size': '20', 'color': '0.5', 'weight': 'bold'}
plt.figure(figsize=(12,4))
length = len(arr)
t = np.linspace(0, length/fs, length)
plt.plot(t, arr, c='g')
plt.xlabel('t(s)')
plt.ylabel(ylabel)
plt.title(title)
if x_vline:
plt.vlines(x=x_vline, ymin=np.min(arr), ymax=np.max(arr), linestyle='--', colors='r')
if y_hline:
plt.hlines(y=0.2, xmin=np.min(t), xmax=np.max(t), linestyle=':', colors='y')
if img_save_path:
plt.savefig(img_save_path, dpi=500, bbox_inches = 'tight')
plt.show()
def plt_fft_img(arr, fs, ylabel='Amp(mg)', title='频域图', img_save_path=None, vline=None, hline=None, xlim=None):
"""
:fun: 绘制频域图模板
:param arr: 输入一维时域数组数据
:param fs: 采样频率
:param ylabel: y轴标签
:param title: 图标题
:return: None
"""
length = len(arr)
t = np.linspace(0, length/fs, length)
fft_result = np.fft.fft(arr)
fft_freq= np.fft.fftfreq(len(arr), d=t[1]-t[0])
fft_amp= 2*np.abs(fft_result)/len(t)
plt.figure(figsize=(12,4))
plt.title(title)
plt.plot(fft_freq[0: int(len(t)/2)], fft_amp[0: int(len(t)/2)], label='Frequency Spectrum', color='b')
plt.xlabel('频率 (Hz)')
plt.ylabel('幅值')
plt.legend()
if vline:
plt.vlines(x=vline, ymin=np.min(fft_amp), ymax=np.max(fft_amp), linestyle='--', colors='r')
if hline:
plt.hlines(y=hline, xmin=np.min(fft_freq), xmax=np.max(fft_freq), linestyle=':', colors='y')
if img_save_path:
plt.savefig(img_save_path, dpi=500, bbox_inches = 'tight')
if xlim:
plt.xlim(0, xlim)
plt.tight_layout()
plt.show()
return fft_freq, fft_amp
data = data_arr[0,:]
plt_time_domain(data, fs=2048, title="正常")
plt_fft_img(data, fs=2048, title="正常", vline=[20, 40, 60, 80])
从频谱数据中,可知正常状态的转频基频及倍频非常明显且干净,倍频数量不多,边频的幅值非常小。2.3 接触摩擦频谱分析
data = data_arr[45,:]
plt_time_domain(data, fs=2048, title="摩擦")
plt_fft_img(data, fs=2048, title="摩擦", vline=[20, 40, 60, 80])


从频谱数据中,可知接触摩擦状态的转频基频占主要分量,倍频不明显,且存在很多毛刺的边频。
2.4 不平衡频谱分析


从频谱数据中,可知不平衡状态的转频基频占主要分量,倍频幅值很低,无明显的边频。
2.5 不对中频谱分析
data = data_arr[135,:]
plt_time_domain(data, fs=2048, title="不对中")
plt_fft_img(data, fs=2048, title="不对中", vline=[20, 40, 60, 80])


从频谱数据,可知不对中状态的转频及倍频都很明显,且倍频数量很多,甚至八倍频也很明显。有些许毛刺边频。
3 总结
正常状态:基频及倍频非常明显且干净,倍频数量不多,边频的幅值非常小;
摩擦故障:转频基频占主要分量,倍频不明显,且存在很多毛刺的边频;
不平衡故障:转频基频占主要分量,倍频幅值很低,无明显的边频;
不对中故障:转频及倍频都很明显,且倍频数量很多,甚至八倍频也很明显。有些许毛刺边频。
免费获取方法
数据集获取方法:后台回复“武汉大学转子数据集”
大家还想要什么数据集,欢迎在留言区评论,小编尽可能的满足。
编辑:李正平
校核:陈凯歌、赵栓栓、曹希铭、赵学功、白亮、任超、海洋、Tina、陈宇航
该文资料搜集自网络,仅用作学术分享,不做商业用途,若侵权,后台联系小编进行删除
点击左下角阅读原文,即可在线阅读论文。