信号叠加处理

import numpy as np
import matplotlib.pyplot as plt
import csv

设置信号1的CSV文件路径

signal1_file = r’E:\AI诊断\bearing_fault_diagnosis-main\data\superposition signal.csv’

读取信号1的数据

signal1_data = []
with open(signal1_file, ‘r’) as file:
csv_reader = csv.reader(file)
for row in csv_reader:
signal1_data.extend([float(value) for value in row])

创建离散信号

n = np.arange(len(signal1_data)) # 离散时间轴
signal1 = np.array(signal1_data) # 第一个离散信号

信号1的离散单边谱

signal1_fft = np.fft.fft(signal1)
signal1_freq = np.abs(signal1_fft[:len(signal1) // 2])
freq = np.fft.fftfreq(len(signal1))[:len(signal1) // 2]

信号2的数据

signal2 = 0.1 * np.sin(2 * np.pi * 10 * n / len(signal1_data)) # 第二个离散信号,频率为10Hz

信号2的离散单边谱

signal2_fft = np.fft.fft(signal2)
signal2_freq = np.abs(signal2_fft[:len(signal2) // 2])

叠加信号

combined_signal = signal1 + signal2

叠加信号的离散单边谱

combined_signal_fft = np.fft.fft(combined_signal)
combined_signal_freq = np.abs(combined_signal_fft[:len(combined_signal) // 2])

绘制时域和离散单边谱

plt.figure(figsize=(12, 8))

信号1的时域和离散单边谱

plt.subplot(3, 2, 1)
plt.stem(n, signal1, linefmt=‘b-’, markerfmt=’ ‘)
plt.title(‘Signal 1 - Time Domain’)
plt.subplot(3, 2, 2)
plt.stem(freq, signal1_freq, linefmt=‘b-’, markerfmt=’ ')
plt.title(‘Signal 1 - Discrete Single-Sided Spectrum’)

信号2的时域和离散单边谱

plt.subplot(3, 2, 3)
plt.stem(n, signal2, linefmt=‘b-’, markerfmt=’ ‘)
plt.title(‘Signal 2 - Time Domain’)
plt.subplot(3, 2, 4)
plt.stem(freq, signal2_freq, linefmt=‘b-’, markerfmt=’ ')
plt.title(‘Signal 2 - Discrete Single-Sided Spectrum’)

叠加信号的时域和离散单边谱

plt.subplot(3, 2, 5)
plt.stem(n, combined_signal, linefmt=‘b-’, markerfmt=’ ‘)
plt.title(‘Combined Signal - Time Domain’)
plt.subplot(3, 2, 6)
plt.stem(freq, combined_signal_freq, linefmt=‘b-’, markerfmt=’ ')
plt.title(‘Combined Signal - DiscreteSingle-Sided Spectrum’)

plt.tight_layout()
plt.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值