一、数据集介绍
PU轴承试验台由电机、测矩轴、滚动轴承试验模块、飞轮和负载电机组成。所有测试轴承型号均为6203型号滚动轴承。
帕德伯恩轴承数据集下载地址:
- 人工损伤轴承型号及其故障类型:
- 加速寿命试验损伤的轴承型号及其故障类型:
- 健康轴承型号:
- 试验工况条件:
- 损伤程度:
二、PU数据可视化
选择部分数据文件的前2048个数据点进行可视化
import os
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd # 用于读取CSV文件
# 文件名和列名
csv_file = 'N15_M07_F10_7C.csv'
columns_name = ['KA01', 'KA05', 'KA07', 'KI01', 'KI05', 'KI07']
# 采样率和数据长度
sampling_rate = 12000 # 采样率为12000Hz
num_samples = 4096 # 取前2048个数据点
# 创建文件夹,如果不存在
output_dir = 'PU信号示意图'
if not os.path.exists(output_dir):
os.makedirs(output_dir)
# 设置字体为 Times New Roman 并加粗
plt.rcParams['font.family'] = 'Times New Roman' # 设置字体为 Times New Roman
plt.rcParams['font.weight'] = 'bold' # 设置字体加粗
plt.rcParams['axes.unicode_minus'] = False # 防止负号显示异常
plt.rcParams['axes.labelsize'] = 10 # 设置坐标轴标签的字体大小
plt.rcParams['axes.titlesize'] = 10 # 设置标题字体大小
plt.rcParams['axes.labelweight'] = 'bold' # 设置坐标轴标签字体加粗
plt.rcParams['axes.titleweight'] = 'bold' # 设置标题字体加粗
# 加载CSV文件
data = pd.read_csv(csv_file)
# 检查是否有足够的列数
if len(data.columns) < len(columns_name):
raise ValueError(f"The CSV file should have at least {len(columns_name)} columns, but it has {len(data.columns)}.")
# 绘制信号时域图
plt.figure(figsize=(8, 6)) # 设置画布大小
for i, column_name in enumerate(columns_name):
# 获取对应的信号数据
signal_data = data.iloc[:num_samples, i].values # 取每列的前2048个数据点
# 创建时间轴
time = np.arange(num_samples) / sampling_rate # 时间轴以秒为单位
# 绘制信号时域图
plt.subplot(3, 2, i + 1) # 将图表分成5行2列的网格,选择第i+1个位置
plt.plot(time, signal_data, color='#2632cd') # 设置信号的颜色为 #2632cd
plt.title(columns_name[i], fontsize=10) # 设置标题并加粗字体
plt.xlabel('Time (s)', fontsize=10) # 设置横坐标标签并加粗字体
plt.ylabel('Amplitude', fontsize=10) # 设置纵坐标标签并加粗字体
# 调整布局
plt.tight_layout()
plt.subplots_adjust(hspace=0.6) # 设置子图间的垂直间距为0.9
# 保存为 .png 格式(DPI 为 600)
plt.savefig(os.path.join(output_dir, 'PU_Time_domain_signals.png'), dpi=600)
# 保存为 .tif 格式(DPI 为 300)
plt.savefig(os.path.join(output_dir, 'PU_Time_domain_signals.tif'), dpi=300)
# 保存为 .svg 格式
plt.savefig(os.path.join(output_dir, 'PU_Time_domain_signals.svg'))
# 保存为 .pdf 格式
plt.savefig(os.path.join(output_dir, 'PU_Time_domain_signals.pdf'))
# 显示图形(如果需要查看)
plt.show() # 如果你希望查看图形,可以添加这个行