当前位置: 首页 > news >正文

电能质量扰动信号信号通过hilbert变换得到瞬时频率


利用Hilbert变换从电能质量扰动信号中提取瞬时频率、瞬时幅值、Hilbert谱和边际谱的详细步骤及MATLAB代码实现。该流程适用于电压暂降、暂升、谐波、闪变等扰动分析。

1. Hilbert变换与特征提取流程

1.1 基本步骤
  1. 信号预处理:滤波去噪(如小波去噪)或经验模态分解(EMD)提取主成分。
  2. Hilbert变换:计算解析信号,得到瞬时幅值和相位。
  3. 瞬时频率计算:对相位求导得到瞬时频率。
  4. Hilbert谱与边际谱:时频能量分布及频率能量累积。
1.2 数学公式
  • 解析信号
    [
    z(t) = x(t) + j \mathcal{H}[x(t)]
    ]
    其中 (\mathcal{H}) 为Hilbert变换。
  • 瞬时幅值
    [
    A(t) = |z(t)|
    ]
  • 瞬时相位
    [
    \phi(t) = \arctan\left(\frac{\mathcal{H}[x(t)]}{x(t)}\right)
    ]
  • 瞬时频率
    [
    f(t) = \frac{1}{2\pi} \frac{d\phi(t)}{dt}
    ]
  • Hilbert谱:时频平面上的幅值分布 (H(f, t))。
  • 边际谱
    [
    h(f) = \int_{0}^{T} H(f, t) dt
    ]

2. MATLAB代码实现

2.1 信号生成(示例为含暂降的电压信号)
fs = 10e3;                  % 采样率10 kHz
t = 0:1/fs:0.1;             % 时间序列(0.1秒)
f0 = 50;                    % 基频50 Hz
A_normal = 1;               % 正常幅值
A_sag = 0.5;                % 暂降幅值% 生成含暂降的电压信号(暂降发生在0.03s-0.07s)
x = A_normal * sin(2*pi*f0*t);
x(t >= 0.03 & t <= 0.07) = A_sag * sin(2*pi*f0*t(t >= 0.03 & t <= 0.07));% 添加噪声(SNR=30dB)
x = awgn(x, 30, 'measured');% 绘制原始信号
figure;
plot(t, x);
xlabel('Time (s)');
ylabel('Voltage (pu)');
title('含暂降的电压信号(加噪)');
2.2 预处理(EMD分解去噪)
% 经验模态分解(需安装Signal Processing Toolbox)
imf = emd(x, 'Interpolation', 'pchip');% 选择前2个IMF作为主成分(假设噪声主要在高频IMF)
x_denoised = sum(imf(:,1:2), 2);% 绘制去噪后信号
figure;
plot(t, x_denoised);
title('去噪后的电压信号(EMD)');
2.3 Hilbert变换与瞬时特征提取
% 计算解析信号
z = hilbert(x_denoised);% 提取瞬时幅值和相位
A = abs(z);                 % 瞬时幅值
phi = unwrap(angle(z));     % 瞬时相位(解卷绕)% 计算瞬时频率
f_inst = diff(phi) / (2*pi) * fs;
f_inst = [f_inst(1), f_inst]; % 保持长度一致% 绘制瞬时特征
figure;
subplot(3,1,1);
plot(t, A);
title('瞬时幅值');
subplot(3,1,2);
plot(t, phi);
title('瞬时相位');
subplot(3,1,3);
plot(t, f_inst);
ylabel('Frequency (Hz)');
title('瞬时频率');
2.4 Hilbert谱与边际谱计算
% 时频分析参数
nfft = 1024;                % FFT点数
window = hann(256);         % 窗函数
noverlap = 128;             % 重叠点数% 计算Hilbert谱(基于短时傅里叶变换STFT)
[S, f, t_spec] = spectrogram(A, window, noverlap, nfft, fs);% 绘制Hilbert谱
figure;
imagesc(t_spec, f, 20*log10(abs(S)));
axis xy;
colorbar;
xlabel('Time (s)');
ylabel('Frequency (Hz)');
title('Hilbert能量谱');% 计算边际谱(频率能量累积)
h = sum(abs(S), 2);% 绘制边际谱
figure;
plot(f, h);
xlabel('Frequency (Hz)');
ylabel('Energy');
title('边际谱');

3. 关键特征解释

3.1 瞬时幅值
  • 正常状态:幅值稳定在标称值(如1 pu)。
  • 暂降期间:幅值显著降低(如0.5 pu),直接反映扰动强度。
3.2 瞬时频率
  • 正常状态:频率围绕基频(50/60 Hz)小幅波动。
  • 扰动期间:频率可能出现突变(如电压暂降伴随频率偏移)。
3.3 Hilbert谱
  • 时频分布:显示不同时间点各频率成分的能量强度。
  • 暂降特征:在扰动时段(0.03s-0.07s),基频能量降低,可能伴随高频噪声。
3.4 边际谱
  • 能量累积:反映信号在整个时间段内的频率能量分布。
  • 暂降分析:基频能量减少,高频成分可能增加(噪声或谐波)。

4. 改进与扩展

4.1 多扰动类型特征提取

针对不同扰动类型(如谐波、闪变),可设计专用特征:

  • 谐波畸变:边际谱中基频倍频处出现峰值。
  • 电压闪变:瞬时幅值呈现周期性波动。
% 谐波检测示例:检查边际谱中2f0、3f0处能量
harmonics = [2*f0, 3*f0];
[~, idx] = min(abs(f - harmonics), [], 2);
harmonic_energy = h(idx);
4.2 结合机器学习分类

将Hilbert特征输入分类模型(如SVM、LSTM):

% 构造特征向量(示例)
features = [max(A), min(A), mean(f_inst), std(f_inst), max(h)];% 使用SVM分类(需Statistics and Machine Learning Toolbox)
load('fault_data.mat'); % 假设已标记数据集
model = fitcsvm(X_train, y_train);
y_pred = predict(model, X_test);
4.3 实时监测实现

使用滑动窗口处理实时数据流:

window_length = 0.02 * fs; % 20ms窗口
for i = 1:length(x)-window_lengthx_window = x(i:i+window_length-1);% 执行Hilbert变换和特征提取...
end

5. 注意事项

  1. 端点效应:Hilbert变换在信号两端易产生畸变,可通过镜像延拓缓解。
  2. 模态混叠:EMD分解时若出现模态混叠,可改用EEMD或CEEMDAN。
  3. 噪声敏感:强噪声环境下需结合小波阈值去噪或变分模态分解(VMD)。
  4. 计算效率:实时应用时需优化STFT窗口长度和重叠率。

matlab实现代码

通过上述代码和分析,可有效提取电能质量扰动信号的Hilbert时频特征,为故障诊断、分类和定位提供关键信息。实际应用中需根据具体扰动类型调整参数并验证特征有效性。

相关文章:

  • 第五部分:第一节 - Node.js 简介与环境:让 JavaScript 走进厨房
  • 如何优化MCU中断响应时间
  • 【AI面试秘籍】| 第7期:多轮对话如何实现长期记忆?高频考点解析+代码实战
  • 使用腾讯会议远程控制电脑进行操作电脑
  • C语言中的assert
  • 一种基于光源评估并加权平均的自动白平衡方法(二)
  • OpenCV中的光流估计方法详解
  • Kaamel隐私合规洞察:Facebook美容定向广告事件分析
  • 不用联网不用编程,PLC通过智能网关快速实现HTTP协议JSON格式与MES等系统平台双向数据通讯
  • 使用WebStorm打断点调试Vue项目
  • 2025-05-13 学习记录--Python-数据类型转换 + 运算符
  • 乙酰基六肽-39/Silusyne 新型减肥活性肽,减少脂肪堆积
  • 开源免费无广告专注PDF编辑、修复和管理工具 办公学术 救星工具
  • 【完全平方数包含相同数】2021-11-30
  • INFINI Console 纳管 Elasticsearch 9(一):指标监控、数据管理、DSL 语句执行
  • css iconfont图标样式修改,js 点击后更改样式
  • servlet-api
  • C++中的各式类型转换
  • vr视频制作攻略(VR视频制作基础知识)
  • PNG图片转icon图标Python脚本(简易版) - 随笔
  • 袁思达已任中国科学院办公厅主任
  • 上海145家博物馆、73家美术馆将减免费开放
  • “11+2”复式票,宝山购彩者领走大乐透1170万头奖
  • 迪奥部分客户数据遭泄露,公司称正持续展开调查
  • 中国工程院院士、国医大师石学敏逝世
  • 数说母亲节|全球11亿女性进入更年期,“不是忍忍就好”