清华大学《信号与系统》电力系统同步相量计算【FFT/谐波/小波变换】

本文主要是介绍清华大学《信号与系统》电力系统同步相量计算【FFT/谐波/小波变换】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

主要内容   

该程序为清华大学《信号与系统》课程大作业的内容,内容研究深度和编程实现效果均较好,有详细的报告,是很好的参考资料,建议采用matlab高版本运行!

1.内容要求

(还有加分内容2和3,篇幅原因不再展示)

2.研究方法

同步相量是以标准时间信号作为采样过程的基准,通过对采样数据计算而得到的相量,同步相量测量信息包含每个测量量值的幅值和相角以及相应的时间标签。数据采集与监视控制系统(Supervisory Control And Data Acquisition,SCADA)是以计算机为基础的电力自动化监控系统,其运用领域涵盖了电力、冶金、石油、化工等,SCADA在过去的电力系统监视中应用最为广泛,技术发展最为成熟。

新一代电网通过以同步相量测量技术为基础的广域测量系统来检测和控制系统的状态。同步相量测量技术的核心是相量估计算法的设计,即算法的估计精度将直接影响到的应用效果。本次大作业旨在运用信号与系统课程所学知识,对所给电压信号进行频谱分析,并设计算法计算信号的同步向量,主要包含两个部分:幅值计算、相位计算。

需要指出的是,同步向量的幅值为有效值,相位为余弦函数表示下的相位。

2.1 快速傅里叶变换FFT

2.2 窗函数法

在分析信号基波及各次谐波时,由于采样不满足完整周期,会造成泄露误差。处理泄露误差的一种有效方法是为信号加窗。FFT本质上是DFS,对于采样得到的一段有限长离散信号,使用FFT计算得到的结果实际上是将这一段离散信号周期延拓后的周期离散信号的DFS的结果(实际上是主值区间)。当采样不满足完整周期时,将信号周期延拓时显然可能会在拼接处出现间断点,这些间断点将会在频谱中产生本不存在的频率分量,造成泄露误差。

加窗分析的思路是非常直观的,原本一段有限长的离散信号相当于一个矩形窗作用在原始信号上,在信号边缘处没有衰减,如果现在使用一个边缘衰减的窗口,则在这段信号的两端的采样点的幅值都将趋于0,此时再进行拼接,原本的间断点就会被大大削弱,它们在频谱中产生的额外频率分量就会变得很小,所以泄露误差会得到限制。

2.3 希尔伯特-黄变换

希尔伯特-黄变换用于对一个信号进行平稳化处理,分析信号的幅值、频率阶跃。它包括经验模态分解( Empirical Mode Decomposition,EMD)和Hilbert 谱分析( Hilbert Spectrum Analysis,HSA)两部分。首先将时间信号通过经验模态分解 (EMD),产生一系列具有不同特征尺度的数据序列,每个序列称为一个固有模态函数(IMF),再分别针对每个固有模态函数进行HHT变换,得到各自频率和幅值的瞬时值。由此构建信号的时间-频率-能量三位分布图,即Hilbert谱,无论在时间域还是频率域都具有良好的分辨率,并且能更好地反映出信号的本质特征。其变换框图如图所示。 

2.4 小波变换

小波变换能够对信号进行多分频率的频域分析。本次作业中主要利用小波变换去除信号中的白噪声。小波变换去噪方式有多种,本文选取的是非线性小波变换阈值法去噪。

  部分代码   

%双谱线插值初始版,用于求必做基波及谐波的平均频率、幅值、相位
clc;clear;close all;
​
wave = csvread('1_1.csv'); %load 数据
s=wave(1:3500,2);%由于在4800点前后会有幅值、频率阶跃,故不能直接对全部信号进行FFT,先截取前4500个点分析
fs=10000; %采样率
N=length(s);%采样点数
n=0:N-1;
M = 23;
w=0.5-0.5*cos(2*pi*(n)/N);%汉宁窗
r=s.*w';%对原信号加窗,信号乘以窗函数
v=fft(r,N);%进行FFT,返回N点的DFT
fuzhi=abs(v)/N*2*2;%求幅值并修正,修正系数为2
u=abs(v);
stem(fuzhi);%绘制出FFT后离散信号的茎状图,用于判断k0、k1、k2
A=zeros(1,30);%存储幅值
F=zeros(1,30);%存储频率
P=zeros(1,30);%存储相位
cishu=zeros(1,30);%存储次数
​
%以下为双峰谱线插值修正算法
for ii=0:29 %I+1对应谐波系数,题目说明只含有小于30次的谐波,故在29截止即可if(u(M - 1 + (M-1)*(ii)) > u(M + 1 + (M-1)*(ii)))k1 = M - 1 + (M-1)*(ii);k2 = M + (M-1)*(ii);else k1 = M + (M-1)*(ii);k2 = M + 1 + (M-1)*(ii);endy1 = u(k1);y2 = u(k2);b=(y2-y1)/(y2+y1);%相当于参考文献中的参数βa=1.5*b;%相当于参考文献中的参数αk0=k1+a+0.5-1;%峰值频率A(ii+1)=(y1+y2)*(2.35619403+1.15543628*a^2+0.32607873*a^4+0.07891461*a^6)/N;%修正后的幅值F(ii+1)=k0*fs/N; %频率不需要修正,P(ii+1)=(angle(v(M+1+6*ii))+pi/2-pi*(a-(-1)*0.5))/pi*180;
end

  部分结果一览   

下载链接

这篇关于清华大学《信号与系统》电力系统同步相量计算【FFT/谐波/小波变换】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/836415

相关文章

在C#中获取端口号与系统信息的高效实践

《在C#中获取端口号与系统信息的高效实践》在现代软件开发中,尤其是系统管理、运维、监控和性能优化等场景中,了解计算机硬件和网络的状态至关重要,C#作为一种广泛应用的编程语言,提供了丰富的API来帮助开... 目录引言1. 获取端口号信息1.1 获取活动的 TCP 和 UDP 连接说明:应用场景:2. 获取硬

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

2.1/5.1和7.1声道系统有什么区别? 音频声道的专业知识科普

《2.1/5.1和7.1声道系统有什么区别?音频声道的专业知识科普》当设置环绕声系统时,会遇到2.1、5.1、7.1、7.1.2、9.1等数字,当一遍又一遍地看到它们时,可能想知道它们是什... 想要把智能电视自带的音响升级成专业级的家庭影院系统吗?那么你将面临一个重要的选择——使用 2.1、5.1 还是

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用

Debian如何查看系统版本? 7种轻松查看Debian版本信息的实用方法

《Debian如何查看系统版本?7种轻松查看Debian版本信息的实用方法》Debian是一个广泛使用的Linux发行版,用户有时需要查看其版本信息以进行系统管理、故障排除或兼容性检查,在Debia... 作为最受欢迎的 linux 发行版之一,Debian 的版本信息在日常使用和系统维护中起着至关重要的作

详谈redis跟数据库的数据同步问题

《详谈redis跟数据库的数据同步问题》文章讨论了在Redis和数据库数据一致性问题上的解决方案,主要比较了先更新Redis缓存再更新数据库和先更新数据库再更新Redis缓存两种方案,文章指出,删除R... 目录一、Redis 数据库数据一致性的解决方案1.1、更新Redis缓存、删除Redis缓存的区别二

什么是cron? Linux系统下Cron定时任务使用指南

《什么是cron?Linux系统下Cron定时任务使用指南》在日常的Linux系统管理和维护中,定时执行任务是非常常见的需求,你可能需要每天执行备份任务、清理系统日志或运行特定的脚本,而不想每天... 在管理 linux 服务器的过程中,总有一些任务需要我们定期或重复执行。就比如备份任务,通常会选在服务器资

无线路由器哪个品牌好用信号强? 口碑最好的三个路由器大比拼

《无线路由器哪个品牌好用信号强?口碑最好的三个路由器大比拼》不同品牌在信号覆盖、稳定性和易用性等方面各有特色,如何在众多选择中找到最适合自己的那款无线路由器呢?今天推荐三款路由器让你的网速起飞... 今天我们来聊聊那些让网速飞起来的路由器。在这个信息爆炸的时代,一个好路由器简直就是家庭网编程络的心脏。无论你