1 西楚大学轴承数据中心

参考轴承数据介绍

1.1 平台组成


西楚大学轴承试验台
一个1.5KW(2马力)的电动机(图左侧)。
一个扭矩传感器/ 译码器(图中间连接处)。
一个功率测试计(图右侧)。
电子控制器(图中没显示) 。

1马力=735.49875瓦
(1)待测轴承
待检测的轴承支撑着电动机的转轴。
驱动端轴承为SKF6205 ,采样频率为12Khz和48Khz。
风扇端轴承为SKF6203 ,采样频率为12Khz。

(2)故障设置
轴承的损伤是用电火花加工的单点损伤。
SKF轴承用来检测直径为0.1778、0.3556、0.5334毫米的损伤。
NTN轴承则是用来检测直径是0.7112、1.016毫米的损伤。

(3)信号采集

由于外圈损伤的位置是相对固定的,因此损伤点相对于轴承负荷区的不同位置对电动机/轴承系统的振动响应有直接的影响。

为了量化这种影响,驱动端和风扇端轴承外圈的损伤点分别放置在3点钟、6点钟、12点钟三个不同位置。

电动机风扇端和驱动端的轴承座上方各放置一个加速度传感器用来采集故障轴承的振动加速度信号。

振动信号由16 通道数据记录仪采集得到。

功率和转速通过扭矩传感器/ 译码器测得。

将加工过的故障轴承重新装入测试电机中,分别在0、1、2和3马力的电机负载工况工作条件下记录振动加速度信号数据。

利用该实验台获取的正常样本8 个、外圈损伤样本53 个、内圈损伤样本23 个及滚动体损伤样本11 个。

(4)轴承数据格式

数据文件为Matlab格式。
每个文件包含风扇和驱动端振动数据,以及电机转速。
对于所有文件,在变量名显示下列项目:
DE - drive end accelerometer data 驱动端加速度数据。
FE - fan end accelerometer data 风扇端加速度数据。
BA - base accelerometer data 基座加速度数据(正常)。
time - time series data 时间序列数据。
RPM- rpm during testing 转每分钟,除以60为旋转频率。

1.2 轴承规格和故障频率

1.2.1 理论故障特征频率计算

(1)滚动轴承几何参数

(2)滚动轴承特征频率

(3)故障频率的经验公式

1.2.2 驱动端轴承

1.2.3 风扇端轴承

1.2.4 故障规格

1.3 轴承数据下载及说明

参考下载轴承数据
正常基座数据
12K采样频率下的驱动端轴承故障数据
48K采样频率下的驱动端轴承故障数据
12K采样频率下的风扇端轴承故障数据

2 python读取mat文件

mat数据格式是Matlab的数据存储的标准格式。
在Matlab中主要使用load()函数导入一个mat文件,使用save()函数保存一个mat文件。

在python中可以使用scipy.io中的函数loadmat()读取mat文件,函数savemat保存文件。
注意,读取出来的data是字典格式,可以通过函数type(data)查看。

import scipy.io as scio
filepath = "97.mat"
data = scio.loadmat(filepath)print(type(data))
print(data.keys())
print(data["__header__"])
print(data["__version__"])
print(data["__globals__"])#<class 'dict'>
#dict_keys(['__header__', '__version__', '__globals__', 'X097_DE_time', 'X097_FE_time', 'X097RPM'])
#b'MATLAB 5.0 MAT-file, Platform: PCWIN, Created on: Mon Jan 31 15:28:20 2000'
#1.0
#[]

2.1 正常信号97.mat

进行FFT变换。

import scipy.io as scio
filepath = "97.mat"
data = scio.loadmat(filepath)
print(data.keys())
a = data["X097_DE_time"]
print(type(a))
print(a.shape)
print(len(a))import numpy as np
import pandas as pd
b = a.reshape(1,len(a))
# (1)获取数据
data_np = b[0]
sample_rate = 12000
# (2)去除平均值
data_np = data_np - np.mean(data_np)
N = len(data_np)
windows = np.hanning(N)
data_np = 2*windows*data_np
data_length = len(data_np)
fft_rate = data_length / sample_rate
# (3)使用numpy.fft.fft(x, n = 10) 进行变换
# (3)第一个参数x表示输入的序列,
# (3)第二个参数n制定FFT的点数,n默认为输入序列的个数为FFT的点数
fft_data = np.fft.fft(data_np)
len_data = len(fft_data)
# (4)获取一半数据即可,然后计算幅值-纵坐标
fft_data = fft_data[range(int(len_data / 2.56))]
fft_data = np.abs(fft_data) / len_data * 2
# (5)通过pandas索引,然后计算频率-横坐标
fft_data = pd.Series(fft_data)
fft_data.index = fft_data.index / fft_rate
# (6)结果转化为列表
x = list(fft_data.index)
y = list(fft_data.values)import matplotlib.pyplot as plt
plt.figure(figsize=(20,10))
plt.plot(x,y)
plt.show()

2.2 内圈故障105.mat

2.2.1 FFT

import scipy.io as scio
filepath = "105.mat"
data = scio.loadmat(filepath)
print(data.keys())
a = data["X105_DE_time"]
print(type(a))
print(a.shape)
print(len(a))import numpy as np
import pandas as pd
b = a.reshape(1,len(a))
# (1)获取数据
data_np = b[0]sample_rate = 12000
# (2)去除平均值
data_np = data_np - np.mean(data_np)
N = len(data_np)
windows = np.hanning(N)
data_np = 2*windows*data_np
data_length = len(data_np)
fft_rate = data_length / sample_rate
# (3)使用numpy.fft.fft(x, n = 10) 进行变换
# (3)第一个参数x表示输入的序列,
# (3)第二个参数n制定FFT的点数,n默认为输入序列的个数为FFT的点数
fft_data = np.fft.fft(data_np)
len_data = len(fft_data)
# (4)获取一半数据即可,然后计算幅值-纵坐标
fft_data = fft_data[range(int(len_data / 2.56))]
fft_data = np.abs(fft_data) / len_data * 2
# (5)通过pandas索引,然后计算频率-横坐标
fft_data = pd.Series(fft_data)
fft_data.index = fft_data.index / fft_rate
# (6)结果转化为列表
x = list(fft_data.index)
y = list(fft_data.values)import matplotlib.pyplot as plt
plt.figure(figsize=(20,10))
plt.plot(x,y)
plt.show()

2.2.2 包络

from scipy import fftpack
from scipy import signal
import scipy.io as scio
filepath = "105.mat"
data = scio.loadmat(filepath)
print(data.keys())
a = data["X105_DE_time"]
print(type(a))
print(a.shape)
print(len(a))import numpy as np
import pandas as pd
b = a.reshape(1,len(a))data_np = b[0]
sample_rate = 12000
# (2)进行Hilbert变换
# (2)scipy.fftpack.hilbert()与scipy.signal.hilbert()结果不同
# (2)选用scipy.fftpack.hilbert()
lowCut = 1
highCut = 1000
# butterworth 滤波
wn = [2 * lowCut / (2 * sample_rate / 2.56), 2 * highCut / (2 * sample_rate / 2.56)]
b, a = signal.butter(3, Wn=wn, btype='bandpass')
filter_data = signal.filtfilt(b, a, data_np)  # data为要过滤的信号
data_h = fftpack.hilbert(filter_data)# (3)计算包络
# (3)H(t)为Hilbert变换后的时域信号,f(t)为原始时域信号。
# (3)那么其包络为:Envelop = sqrt(H^2(t)+f^2(t))
data_en = np.sqrt(data_h * data_h + data_np * data_np)
data_length = len(data_en)
data_rate = data_length / sample_rate
data_en =  data_en - np.mean(data_en)  # 暂定
fft_data = np.fft.fft(data_en)
len_data = len(fft_data)
fft_data = fft_data[range(int(len_data / 2.56))]
fft_data = np.abs(fft_data) / len_data * 2# (4)np.array转化为pd.Series
# (4)RangeIndex(start=0, stop=len_data/2取整, step=1)
# (4)横坐标作为频率序列
fft_data = pd.Series(fft_data)
fft_data.index = (fft_data.index / data_rate)x = fft_data.index.tolist()
y = fft_data.values.tolist()import matplotlib.pyplot as plt
plt.figure(figsize=(20,10))
plt.plot(x,y)
plt.show()

诊断分析-5-西楚大学轴承数据库相关推荐

  1. 凯斯西储大学轴承数据介绍及处理

    轴承故障诊断一般使用美国凯斯西储大学的数据集进行标准化检测算法的优劣.以下几种实验数据提取和使用方法为我在论文中所看到的.进行以下陈述 一.基于 RA-LSTM 的轴承故障诊断方法 实验数据采用美国凯 ...

  2. 2020-11-03Paderborn大学轴承数据集

    个人学习记录 德国Paderborn大学轴承数据集解释 数据集下载:Paderborns轴承数据集 简单描述:提供了基于振动和电动机电流信号的状态监测(CM)实验轴承数据集. 测试台和测量设备介绍 测 ...

  3. 凯斯西储大学轴承故障诊断数据集详解

    目录 前言 一.凯斯西储大学数据集的来源与历史 二.凯斯西储大学数据集的结构与特点 三.凯斯西储大学数据集的实验环境 四.凯斯西储大学数据集在轴承故障诊断研究中的应用 五.凯斯西储大学数据集的局限性 ...

  4. 网站诊断分析-网站诊断分析软件-网站SEO诊断分析软件

    网站诊断分析,要做好一个网站是离不开网站数据的,每一个SEO工程师必备的技能就是网站诊断分析,只有了解自己的网站,清楚自己网站的状况才能对症下药让网站快速收录以及关键词排名. 怎么做好网站所有的数据分 ...

  5. Smartbi智分析一网打尽50种主流数据库:本地+SQL+NoSQL +多维

    Smartbi智分析是新一代云端SaaS数据分析平台,在数据分析领域有着无与伦比的天然优势,除了拥有EXCEL融合分析.ETL.透视分析等众多王牌的功能外,最主要的优势还是在于数据源的支持上.Smar ...

  6. tensorflow自编码器+softmax对凯斯西储大学轴承数据进行故障分类

    先放参考链接,感谢大神们带来的启发: 凯斯西储大学轴承数据故障分类(使用卷积神经网络) TensorFlow实现MNIST识别(softmax) 前情回顾: tensorflow 自编码器+softm ...

  7. JAVA计算机毕业设计成绩分析系统Mybatis+源码+数据库+lw文档+系统+调试部署

    JAVA计算机毕业设计成绩分析系统Mybatis+源码+数据库+lw文档+系统+调试部署 JAVA计算机毕业设计成绩分析系统Mybatis+源码+数据库+lw文档+系统+调试部署 本源码技术栈: 项目 ...

  8. 美团王庆:当老板对指标进行灵魂拷问时,该如何诊断分析?

    分享嘉宾:王庆 美团 数据分析专家 编辑整理:刘学 字节跳动 出品平台:DataFunTalk 导读:指标为什么升?为什么降?为什么不升也不降?相信这是数据从业者经常面对的灵魂三问!在竞争激烈的市场环 ...

  9. 2018--20179215--《文献管理与信息分析》第三讲 英文数据库资源的发展趋势和利用...

    <文献管理与信息分析>第三讲 英文数据库资源的发展趋势和利用 一.科研相关的文献资源有以下十大来源: 专利.会议论文.期刊.学位论文.科技报告.科技档案.产品资料.政府出版物.标准文献.图 ...

最新文章

  1. 【EventBus】发布-订阅模式 ( Android 中使用 发布-订阅模式 进行通信 )
  2. 2012_02_07
  3. 每天学一点儿shell:vi和vim命令使用
  4. objective-C Blocks 讲解
  5. h5 video全屏播放
  6. 数据挖掘基础数学知识博客
  7. python bokeh_浅谈python可视化包Bokeh
  8. mysql获取多张表中的数据_mysql之多表查询
  9. UnicodeDecodeError: 'ascii' codec can't decode byte 0xe4 in position 31: ordinal not in range(128)
  10. 第一章 引论 -- 项目管理知识体系指南(PMBOK指南)(第五版)
  11. 极值点、驻点、拐点、关系点
  12. mac日历显示国家节假日及补班日期
  13. 部分蓝牙耳机 电脑 连接 不畅 的处理办法
  14. 笔记本ghostwin10系统后只有C盘了别的盘的数据怎样找到
  15. cPanel WHM 安装教程
  16. idea之自定义注释模板
  17. 什么是MVC设计模式???
  18. D3D初学入门一(配置开发环境及绘制D3D窗口)
  19. Poading Analysis
  20. pythonn说句心里话_《说句心里话》笑力满格 “战神”常远颠覆自我

热门文章

  1. 目前软件测试工作前景怎么样?
  2. cnc加工中心保养表_CNC保养检查记录表
  3. 如何理解最大似然估计?
  4. Java中的finalize方法
  5. 中国平安增持华夏幸福5.69%股权 看好长期战略协同
  6. 目标跟踪评估绘图(3):ubuntu18.04在MATLAB2016b下的vot-toolkit配置,绘制VOT数据集的EAO评估图,与其他算法进行比较
  7. 计算机科学与技术博士论文,计算机科学与技术一级学科博士研究生发表学术论文量化标准.pdf...
  8. Linux下文件(文件夹)的压缩和解压
  9. ping命令使用什么协议
  10. 【声卡宿主】ProTools 2021.7.0使用安装教程