西储大学(CWRU)数据集

西储大学(CWRU)数据集简介



前言

在机器学习、信号处理和故障诊断领域,西储大学(Case Western Reserve University,简称CWRU)提供了一个非常重要的振动信号数据集——CWRU数据集。该数据集主要用于旋转机械的轴承故障检测,并且已经成为了该领域广泛使用的标准数据集之一。


一、数据集背景介绍

西储大学工程学院开发的轴承数据集源于其机械工程实验室,旨在通过采集机械振动信号进行轴承故障的检测和诊断。机械设备中的轴承是最常见且关键的组件之一,而轴承的故障会导致设备损坏、性能降低,甚至造成重大安全事故。因此,如何有效地检测轴承故障是工程领域中一个重要的研究课题。

CWRU数据集是通过安装在电机轴承附近的加速度传感器采集的,用于模拟各种轴承故障情况。数据集记录了正常运行状态以及不同类型的轴承故障状态,包括轴承内圈、外圈和滚动体(球)损坏。每种故障情况还区分了不同的故障尺寸和不同的负载条件。数据集为研究人员提供了丰富的故障信号数据,使得他们能够开发和验证各种数据分析、特征提取和机器学习算法。

二、数据集结构

西储大学提供的轴承数据集,包含了正常工况和故障工况下的振动信号数据。数据采集速率为12,000 Hz和48,000 Hz。该数据主要通过加速度计采集,针对轴承不同部分的振动信号,提供了用于故障诊断和预测的实验数据。

CRWU 数据集中的故障类型包含了以下几种:
滚动体(Ball)故障:滚动体是轴承中的球,滚动体故障会影响整个轴承的运转,并且在振动信号中通常表现为较高的频率分量。
内圈(Inner Race)故障:内圈是轴承的一个重要部件,内圈故障的振动信号往往具有较低的频率特征,但随着故障的加剧,信号的强度和频率会发生显著变化。
外圈(Outer Race)故障:外圈故障会导致设备运转时产生不规则的振动,表现为在振动信号的频域分析中出现一些特定的频率成分。
正常工况(Normal):正常工况的数据可用于与故障工况进行对比分析,研究在无故障情况下的设备运行状态。

数据集结构目录包含:
正常基线数据(Normal Baseline Data)
12k 驱动端轴承故障数据(12k Drive End Bearing Fault Data)
48k 驱动端轴承故障数据(48k Drive End Bearing Fault Data)
12k 风扇端轴承故障数据(12k Fan End Bearing Fault Data)
请添加图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1. 正常基线数据(Normal Baseline Data)

正常基线数据(Normal Baseline Data)记录了轴承在正常工作状态下的振动数据,不同的文件对应于不同的负载条件(HP),并且电机的转速也随着负载的不同发生变化。
请添加图片描述
数据内容:
负载条件:0, 1, 2, 3 马力(HP)
对应的电机转速:
0 HP: 1797 rpm
1 HP: 1772 rpm
2 HP: 1750 rpm
3 HP: 1730 rpm
每个文件以Normal_x命名(其中x为负载条件,如Normal_0为0马力的基线数据)。这些数据作为参考基准,用于对比故障状态下的振动信号。

2. 12k驱动端轴承故障数据(12k Drive End Bearing Fault Data)

这个部分的数据是在12,000 Hz的采样频率下记录的驱动端轴承故障数据。数据根据不同的故障直径(0.007", 0.014", 0.021", 0.028")以及故障类型(内圈故障、外圈故障、滚动体故障)进行分类。每个文件对应特定的工况,包括故障位置、直径和电机负载等信息。
请添加图片描述

数据内容:
故障直径:0.007", 0.014", 0.021", 0.028"
负载条件:0, 1, 2, 3 马力
故障位置:
内圈故障(Inner race)
滚动体故障(Ball)
外圈故障(Outer race),并进一步细分为三个位置:
6:00方向(Centered @6:00)
3:00方向(Orthogonal @3:00)
12:00方向(Opposite @12:00)
文件命名示例:
IR007_0: 内圈故障,故障直径为0.007",电机负载为0马力
OR007@6_0: 外圈故障,故障直径为0.007",位于6:00方向,电机负载为0马力

3. 48k 驱动端轴承故障数据(48k Drive End Bearing Fault Data)

这个部分的数据是在48,000 Hz采样频率下采集的驱动端轴承故障数据,结构与12k采样频率的数据类似,故障直径和位置的分类保持一致,主要区别在于采样频率不同,使得数据的时间分辨率更高,适用于对信号进行更精细的分析。
请添加图片描述

数据内容与命名结构同12k数据:
故障直径:0.007", 0.014", 0.021"
负载条件:0, 1, 2, 3 马力
故障位置:内圈故障、滚动体故障、外圈故障(6:00, 3:00, 12:00)
文件命名示例:
IR007_0: 内圈故障,故障直径为0.007",电机负载为0马力,采样频率为48k
OR007@6_0: 外圈故障,故障直径为0.007",位于6:00方向,电机负载为0马力,采样频率为48k

4. 12k 风扇端轴承故障数据(12k Fan End Bearing Fault Data)

该部分数据是在12,000 Hz采样频率下记录的风扇端轴承故障数据,故障类型、直径和负载条件的划分同驱动端数据一致,主要区别在于故障发生在风扇端。
请添加图片描述

数据内容:
故障直径:0.007", 0.014", 0.021"
负载条件:0, 1, 2, 3 马力
故障位置:
内圈故障(Inner race)
滚动体故障(Ball)
外圈故障(Outer race),并细分为三个位置:6:00, 3:00, 12:00
文件命名示例:
IR007_0: 内圈故障,故障直径为0.007",风扇端,电机负载为0马力
OR007@6_0: 外圈故障,故障直径为0.007",风扇端,位于6:00方向,电机负载为0马力

三、数据集应用案例

1. 故障分类

CRWU 数据集非常适合用于滚动轴承故障分类任务。研究者可以提取时域、频域或者时频域的特征,通过机器学习或深度学习模型(如SVM、随机森林、CNN、LSTM等)对故障类型进行分类。

例如,研究者可以基于时间序列数据提取统计特征(如均值、方差、峰值等),也可以通过傅里叶变换获取频域特征,进而使用这些特征作为分类器的输入来进行故障诊断。

2. 健康状态预测

通过对不同工况下的数据进行分析,CRWU 数据集还可以用于设备的健康状态预测。研究者可以使用该数据集训练预测模型,以提前检测潜在故障,并进行预防性维护。常见的方法包括使用LSTM、GRU等时序预测模型来预测设备的剩余使用寿命(RUL)。

3. 信号处理与特征提取

CRWU 数据集为信号处理研究提供了丰富的振动数据。通过对振动信号进行时频分析(如短时傅里叶变换、小波变换等),可以提取出与轴承故障相关的特征。研究者可以进一步结合这些特征进行故障检测和分类。

四、总结

CRWU 数据集因其结构清晰、实验设置丰富,被广泛用于滚动轴承故障诊断、健康监测和机器学习模型的评估。其目录结构遵循清晰的命名规则,研究者可以根据故障类型、采集位置和工况轻松找到所需的数据。通过灵活运用该数据集,研究者可以开发出高效、准确的故障诊断系统,并为设备的健康监测和故障预测提供支持。

数据集链接: https://pan.baidu.com/s/1u1dHEAnLTyp0rIlorpOWig?pwd=1234 提取码: 1234

### 使用MATLAB读取西大学(CWRU)数据集 为了使用MATLAB读取并处理CWRU轴承数据集,可以按照以下方法操作: #### 设置工作路径和参数 设置工作目录到存数据集的位置,并定义采样频率和其他必要的变量。 ```matlab addpath('G:\精简西数据集\1730'); % 添加数据文件夹路径至搜索路径 fs = 12000; % 定义采样频率为12kHz N = 1024; % 设定每个样本长度为1024点 t = (0:N-1)/fs; % 将横坐标转换成时间轴表示 ``` #### 创建文件索引列表 创建一个包含不同工况下.mat文件编号的数组,以便后续循环读取这些文件中的数据。 ```matlab file_indices_1730 = [100, 108, 121, 133, 172, 188, 200, 212, 225, 237]; % 对于其他实验条件下的文件,可以根据实际情况调整上述序列 ``` #### 批量加载MAT文件内容 通过`for`循环遍历之前准备好的文件索引列表,依次调用`load()`函数来导入对应的`.mat`文件内的矩阵或向量形式的数据。 ```matlab data_cell_array = cell(length(file_indices_1730), 1); % 初始化用于保存各组数据的单元格阵列 for i = 1:length(file_indices_1730) file_name = sprintf('%d', file_indices_1730(i)); % 构造完整的文件名称字符串 full_file_path = fullfile(pwd(), strcat(num2str(file_indices_1730(i)), '.mat')); % 获取当前文件绝对路径 try loaded_data = load(full_file_path); data_cell_array{i} = struct2cell(loaded_data); % 如果.mat文件内含结构体,则需先转换单元格再存入总表 catch ME warning(['Failed loading ', full_file_path]); end end ``` 以上代码片段展示了如何利用MATLAB脚本自动化地完成对多个指定编号的.CWRU 数据集中 .mat 文件 的批量读取过程[^1]。需要注意的是,在实际应用过程中可能还需要进一步解析所获得的数据结构以及执行预处理步骤以适应特定分析需求。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值