【电能质量扰动】基于ML和DWT的电能质量扰动分类方法研究(Matlab实现)

news2024/12/24 21:43:31

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现


💥1 概述

近年来,随着可再生能源的并网以及非线性负载和固态开关器件的数量不断增加,导致了大量严重

的电能质量问题。同时,精密电子设备的广泛使用需要极高质量的电源。为合理有效地改善电能质量,电能质量扰动问题的准确分类也变得非常重要 [1]。目前电能质量扰动问题分类方法的过程主要包括特征提取和模式识别两个步骤 [1]。特征提取常用的信息处理技术有短时傅里叶变换 (STFT)[2]、经验模态分解 ( E M D )[3] 和 S 变换 [4] 等。这些方法拥有很好的扰动识别效果,但也存在一些固有的缺陷。其中短时傅里叶变换的使用缺少可变窗口,不利于分析非平稳信号 ;S 变换是小波变换和短时傅里叶变换的结合,但其难点在于如何确认窗函数的宽度[4] ;经验模态分解存在严重的模态混叠和端点效应问题。离散小波变换 (DWT) 可以优化分解频率子带内的信号并估计扰动幅度,是一种灵活的扰动识别方法 [5]。因此,将 DWT 算法应用于特征提取。

模式识别常采用的方法有人工神经网络 [6]、决策树 [7] 和专家系统 [8] 等。人工神经网络存在容易陷入局部最优、收敛性较差等缺点 ;决策树容易出现过拟合现象和局部最优问题 ;专家系统由于自身不具备学习能力,所有的知识和解决方案都是由领域内的专家提供,因此其容错能力差,易产生组合爆炸的问题。支持向量机 (SVM) 基于小样本统计学习理论和结构风险最小化原理,具有较好的泛化能力 [9]。

D W T 具有非常有效的算法和稀疏表示,尤其在处理非平稳信号方面,具有良好的时频特性,和傅

里叶变换不同,离散小波分析不是根据三角多项式而是通过母小波函数的扩张和平移特性生成 [10]。信号h(t) 的 DWT 表示为 :

📚2 运行结果

运行视频:

基于ML和DWT的电能质量扰动分类方法研究(Matlab实现)_哔哩哔哩_bilibili

 部分代码:

%% 暂态脉冲
%fn goes from 300 to 900

fn=500;
amp= rand(1,1)*range([4 7])+min([4 7]);
t1=0.151; 
t2=0.150; 
ty= (t1+t2)/2;
t=[0 :0.0001:0.4];
k=rand(1,1)*range([1 1.5])+min([1 1.5]);
y= k*(sin((2*pi*50)*t)+ amp*(heaviside(t-t2)-heaviside(t-t1)).*exp(-t/ty).*sin(2*pi*fn*t));

subplot(2,1,2);
plot(t,y)
title('Impulsive Transient');
xlabel ('Time (sec)');
ylabel ('Amplitude');
hold on
Impulsive_transient=[t,y]';

%% 振荡瞬态
%fn goes from 300 to 900

fn=rand(1,1)*range([300 500])+min([300 500]);
t=[0 :0.0001:0.4];
amp= 1;
t1=0.255;
t2=0.248; 
ty= (t1+t2)/2;
t=[0 :0.0001:0.4];
k=rand(1,1)*range([1 1.5])+min([1 1.5]);
y= k*(sin((2*pi*50)*t)+ amp*(heaviside(t-t2)-heaviside(t-t1)).*exp(-t/ty).*sin((2*pi*fn)*t));

figure(4)
subplot(2,1,1);
plot(t,y)
title('Oscillatory Transient');
xlabel ('Time (sec)');
ylabel ('Amplitude');
hold on
Oscillatory_transient=[t,y]';

%% SAG+HARMONIC 
t=[0 :0.0001:0.4];
alpha=rand(1,1)*range([0.1 0.8])+min([0.1 0.8]);
alpha3=rand(1,1)*range([0.05 0.15])+min([0.05 0.15]);
alpha5=rand(1,1)*range([0.05 0.15])+min([0.05 0.15]);
alpha7=rand(1,1)*range([0.05 0.15])+min([0.05 0.15]);
alpha1= sqrt(1- alpha3^2-alpha5^2-alpha7^2);
k=rand(1,1)*range([1 1.5])+min([1 1.5]);
y=k*((1-alpha*((heaviside(t-0.05)-heaviside(t-0.15)))).*(alpha1* sin(314*t)+ alpha3*sin(3*314*t)+ alpha5*sin(5*314*t)+ alpha7*sin(7*314*t)));

subplot(2,1,2);
plot(t,y);
title('Sag+Harmonics');
xlabel ('Time (sec)');
ylabel ('Amplitude');
hold on
Sag_harmonic=[t,y]';

%% SWELL+HARMONIC
t=[0 :0.0001:0.4];
alpha=rand(1,1)*range([0.1 0.8])+min([0.1 0.8]);
alpha3=rand(1,1)*range([0.05 0.15])+min([0.05 0.15]);
alpha5=rand(1,1)*range([0.05 0.15])+min([0.05 0.15]);
alpha7=rand(1,1)*range([0.05 0.15])+min([0.05 0.15]);
alpha1= sqrt(1-alpha3^2-alpha5^2-alpha7^2);
k=rand(1,1)*range([1 1.5])+min([1 1.5]);
y=k*((1+alpha*((heaviside(t-0.05)-heaviside(t-0.15)))).*(alpha1* sin(314*t)+ alpha3*sin(3*314*t)+ alpha5*sin(5*314*t)+ alpha7*sin(7*314*t)));

figure(5)
subplot(2,1,1);
plot(t,y)
title('Swell+Harmonics');
xlabel ('Time (sec)');
ylabel ('Amplitude');
hold on
Swell_harmonic=[t,y]';

%% FLICKER

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]李家俊,吴建军,陈武,钟建伟.基于DWT-PCA-LIBSVM的电能质量扰动分类方法[J].电工电气,2023(03):20-24.

[2]马嘉秀,徐玮浓,何复兴,邵诗韵,赵家乐,李宁.基于WT和SVM的电能质量分类识别方法[J].智慧电力,2019,47(03):16-22+37.

🌈4 Matlab代码实现

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/615132.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

团队管理之性能实施团队日志7

从具体技术问题看流程和管理的问题 今天上午9:38在微信群里看到团队内做脚本调试的同事小w和一个开发的对话。 是说发了一个报文,结果失败了。于是就问这个项目组A的开发小a,小a一看,这不是项目组B的错吗? 这时是10&a…

java4.5 掌握Spring Boot多环境配置

一、使用Profile文件进行多环境配置 (一)创建Spring Boot项目 (二)创建多环境配置文件 1、全局配置文件改名 2、模拟开发环境 在resources里创建配置文件 - application-dev.yaml 3、模拟测试环境 在resources里创建配置文件…

chatgpt赋能python:Python中的填充(Padding)

Python中的填充(Padding) 在Python编程中,填充(Padding)是一种常用的技术。填充通常用于将字符串、列表或其他类型的数据添加到另一个数据结构中,以达到特定的格式或长度。本文将介绍如何在Python中使用填…

leetcode652. 寻找重复的子树(java)

寻找重复的子树 leetcode652. 寻找重复的子树题目描述 解题思路代码演示二叉搜索树专题 leetcode652. 寻找重复的子树 来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/find-duplicate-subtrees 题目描述 给你一棵二叉树的…

关于nginx使用中的bug

一: 报错:nginx: [emerg] WSASocketW() failed (10022: An invalid argumentwas supplied) 像使用WinSCP一样进行项目部署,把自己的电脑当做服务器放前端压缩包dist,让内网-局域网内所有人可访问前端页面 首先把nginx的文件夹放…

【5种灵活有效方式】如何从死机手机中恢复内部数据?

我的手机掉在地上,现在无法开机。我丢失了所有联系人、图片和重要文件。无奈之下,我需要恢复数据。但是如何从死机中恢复内部数据呢? 我们使用移动设备的最重要原因之一是打电话和发送消息。但有时,我们使用相同的设备来保存记忆…

【剑指offer专项突破版】数组篇——‘‘C‘‘

文章目录 前言一 . 排序数组中两个数字的和题目分析思路分析法①代码——双指针法②代码——二分查找 二. 数组中和为 0 的三个数题目分析问题转换代码 三. 和大于等于 target 的最短子数组题目分析思路分析代码 四. 乘积小于 K 的子数组题目分析思路分析代码 五. 和为 k 的子数…

如何用知识星球年入50万

使用知识星球年入50万的话,那么你的社群收费必须超过60万,因为星球会有20%的手续费。 年入50万并不是一笔小数目,那么一定少不了优质的内容以及引流渠道,这二者缺一不可。 优质的内容和引流的渠道都需要题主自己去把控&#xff…

阿里云OpenSearch重磅推出LLM问答式搜索产品,助力企业高效构建对话式搜索服务

阿里云OpenSearch重磅推出LLM智能问答版,面向行业搜索场景,提供企业专属问答搜索服务。 智能问答版基于内置的LLM大模型提供问答能力,一站式快速搭建问答搜索系统。 目前OpenSearch LLM智能问答版已开始邀测(https://page.aliyu…

卡尔曼滤波与组合导航原理(六)信息Kalman滤波与信息融合

文章目录 一、信息滤波1、模型2、信息滤波公式改写3、IKF公式汇总4、KF与IKF的对偶关系 二、信息融合1、信息融合方法2、信息融合推导Kalman滤波 一、信息滤波 1、模型 函数模型 { X k Φ k / k − 1 X k − 1 Γ k − 1 W k − 1 Z k H k X k V k \left\{\begin{array}…

djangoo配置与运行

前言:相信看到这篇文章的小伙伴都或多或少有一些编程基础,懂得一些linux的基本命令了吧,本篇文章将带领大家服务器如何部署一个使用django框架开发的一个网站进行云服务器端的部署。 文章使用到的的工具 Python:一种编程语言&…

【UEFI】BIOS 阶段全局变量类型

BIOS的几个阶段需要不同阶段的数据传递,下面介绍4个全局变量。 1 固件存储介绍 本规范描述了应该如何在非易失性存储器中存储和访问文件。固件实现必须支持标准的PI固件卷和固件文件系统格式(下文所述),但可能支持其他存储格式。…

【网页布局形式----浮动】

网页布局形式----浮动 css浮动:一、常见的三种网页布局形式:1.1 网页布局两大准则: 二 、浮动:2.1 浮动语法:2.2 浮动特性(重难点):浮动元素通常与标准流的父级元素搭配使用&#xf…

Linux进程虚拟地址空间

文章目录 1. 进程地址空间1.1 存在1.2 初步了解1.2 虚拟地址空间的划分1.3 页表 2. 虚拟地址如何转化成物理地址2.1 二级页表2.2 总结 3. 写时拷贝3.1 原理3.2 解释为什么 pid_t ret fork() 中,ret 会有两个不同的值 4. 为何需要虚拟地址空间 1. 进程地址空间 1.1…

基于python的企业资产管理系统vue+django+flask

开发语言:Python 框架:django/flask Python版本:python3.7.7 数据库:mysql 数据库工具:Navicat 开发软件:PyCharm 文章介绍了企业资产管理系统的系统分析部分,包括可行性分析等,系…

基于SpringBoot的CRM客户管理销售团队管理系统(含源码+数据库)

1)环境准备 JDK 1.8 以上 MySql 5.7 以上 Tomcat 7.0 以上 maven 3.5.0 Idea 2)建立PowerTeam数据库 打开Mysql管理工具(推荐使用Navicat Premium) 执行db.sql脚本 可选操作执行demo_data.sql演示数据脚本 3)将项目导入Idea开发工具中 ​4)修…

UE5使用Advanced-VR-Framework开发VR介绍

插件地址:https://www.unrealengine.com/marketplace/zh-CN/product/advanced-vr-framework 一、UE5开发VR的优势: UE5在三维的表现力上非常优秀;有基于Twinmotion等三维工具支持,制作流程上比较顺畅;UE5场景素材也非…

W13电力线载波通信技术

CK_Label_W13 CK_Label_W13(外接供电版) 产品型号 CK_Label_W13 尺寸 70*34.7*13.6mm 屏幕尺寸 2.1 inch 分辨率 250*122 像素密度 130dpi 显示技术 电子墨水屏显示 显示颜色 黑/白 外观颜色 白色 按键 1 指示灯 1 RGB灯 灯光颜…

Vue.js 中的混入是什么?如何使用混入?

Vue.js 中的混入是什么?如何使用混入? 在 Vue.js 中,混入(Mixin)是一种可复用的对象,可以包含任意组件选项。通过混入,我们可以将一些相同的代码逻辑抽离出来,使组件更加简洁和可维…

录音如何转换成mp3格式

录音怎如何转换成mp3格式?因为我们知道录音的格式有很多种,其中常见的有WAV格式(Waveform Audio File Format):是一种无损音频文件格式,音质高保真,通常用于专业录音和音乐制作。WMA格式&#x…