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

不平衡电网条件下基于变频器DG操作的多目标优化研究(Matlab代码Simulink实现)

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码&Simulink实现&文章讲解


💥1 概述

文献来源:

最近,利用并网转换器(GCC)克服电网故障并支撑电网电压已成为电网规范中反映的主要要求。本文提出了一种新颖的参考电流产生方案,该方案通过使用四个控制参数注入一组适当的正/负有功/无功电流来支持电网电压。提出了解析表达式以获得这些参数在任何电网电压条件下的最优值。通过实现以下目标,可以获得最佳性能:第一,符合相电压限制,第二,最大化有功和无功功率输出,第三,最小化故障电流,第四,减少有功和无功功率的振荡。这些最佳行为为新兴的GCC带来了显著的优势,例如提高效率,降低直流母线纹波,提高交流系统稳定性以及避免设备跳闸。仿真和实验结果验证了分析结果和所提表达式的有效性。 

可再生能源和分布式发电(DG)机组在电力中的渗透率越来越高 系统造成了严重的稳定性问题。因此,系统规划人员一直在制定严格的 异常电网条件下并网转换器 (GCC) 运行的要求 [1]–[3]。因此,海湾合作委员会 不仅应承受此类干扰并继续为电网供电,还应提供电压/频率支持。 GCC是否符合这些新要求已在文献中进行了广泛的研究,例如, 在[1]–[20]中。在此 关于GCCs的许多控制策略已经在[13]-[20]中提出。

本文使用最先进的参考电流发生器(RCG)策略(在[3]中介绍),可以灵活地包含正/负和有功/无功 电流。该RCG通过两个控制参数提供有价值的电压支持服务,kp和kq ,在相应有源和 无功电流。同样,有功和无功功率(PQ)的参考值可以被视为其他两个参考值。**

  

📚2 运行结果

 

 

 

 

 

 

 

 

  所有模型和讲解见第4部分。

set(0,'DefaultAxesFontSize',24,'DefaultAxesFontName','Helvetica','DefaultAxesFontWeight','bold','DefaultLineLineWidth',2,'DefaultAxesLineWidth',1)
plot(k1,Imax,'--','color',[0 .45 .74],'LineWidth',6)
grid on
hold on
plot(k1,sqrt(Ia),'color',[0.75 0 .75])
plot(k1,sqrt(Ib),'color',[.85 .33 .1])
plot(k1,sqrt(Ic),'color',[0 .5 0])

legend('Imax','Ia','Ib','Ic')
hold on
plot(k1_opt(O),min(Imax_opt),'s','color',[0 .45 .74],'MarkerSize',25,'MarkerFaceColor',[0 .45 .74])

plot(k1(J),min(Imax),'o','color',[.85 .33 .1],'LineWidth',2,'MarkerSize',15)

                    title(['P=', num2str(P(p)), '  pu    Q=', num2str(Q(q)), '  pu    Vp=', num2str(Vp(vp)), '  pu    Vn=', num2str(Vn(vn)), '  pu      k_q=', num2str(k2(k)),'   pu      k_p_,_o_p_t=  ', num2str(k1_opt(O(1))), '         I_m_a_x_,_o_p_t=  ', num2str(min(Imax_opt)), '   pu'])
                    
                    xlabel('k_p');
                    ylabel('I_m_a_x (pu)');
 
%% 
                    A=3*P(p)^2*n; B=-3*P(p)^2*n+sqrt(3)*P(p)*Q(q)*n*(2*k2(k)-1); C=3*n*k2(k)*Q(q)^2*(1-k2(k))-sqrt(3)*P(p)*Q(q)*n*k2(k);
                    delta=B^2-4*A*C;
                    if delta>=0
                        k1_intsec_IaIb=(-B+sqrt(delta))/2/A;
                        o_num=4;
                        k1_opt(o_num)=k1_intsec_IaIb;
                        
                        
                        if k1_intsec_IaIb<1 && k1_intsec_IaIb>0
                           
                        K1_intsec=P(p)/Vn(vn)*((n+1)*k1_intsec_IaIb-1);
                        K2_intsec=Q(q)/Vn(vn)*((n-1)*k2(k)+1);
                        K3_intsec=P(p)/Vn(vn)*((n-1)*k1_intsec_IaIb+1);
                        K4_intsec=Q(q)/Vn(vn)*((n+1)*k2(k)-1);
                        
                        Ia_intsec=K1_intsec^2+K2_intsec^2;
                        Ic_intsec=(-.5*K1_intsec-sqrt(3)/2*K4_intsec)^2+(.5*K2_intsec-sqrt(3)/2*K3_intsec)^2;
                        
                        plot(k1_intsec_IaIb,sqrt(Ia_intsec),'s','color',[0 .45 .74],'MarkerSize',25)

                        Imax_intsec=sqrt(max(Ia_intsec,Ic_intsec));
                        end
                    end
                    
                    
                    
                  %%
                    A=3*P(p)^2*n; B=-3*P(p)^2*n-sqrt(3)*P(p)*Q(q)*n*(2*k2(k)-1); C=3*n*k2(k)*Q(q)^2*(1-k2(k))+sqrt(3)*P(p)*Q(q)*n*k2(k);
                    delta_IaIc=B^2-4*A*C;
                    if delta_IaIc>=0
                        k1_intsec_IaIc=(-B+sqrt(delta_IaIc))/2/A;
                                     
                        if k1_intsec_IaIc<1 && k1_intsec_IaIc>0
                           
                        K1_intsec=P(p)/Vn(vn)*((n+1)*k1_intsec_IaIc-1);
                        K2_intsec=Q(q)/Vn(vn)*((n-1)*k2(k)+1);
                        K3_intsec=P(p)/Vn(vn)*((n-1)*k1_intsec_IaIc+1);
                        K4_intsec=Q(q)/Vn(vn)*((n+1)*k2(k)-1);
                        
                        Ia_intsec=K1_intsec^2+K2_intsec^2;
                        Ib_intsec=(-.5*K1_intsec+sqrt(3)/2*K4_intsec)^2+(.5*K2_intsec+sqrt(3)/2*K3_intsec)^2;

                        plot(k1_intsec_IaIc,sqrt(Ia_intsec),'s','color',[0 .45 .74],'MarkerSize',25)

                        end
                        

                        end
                    end
                    
                        i=i+1;
                    
                end
            end
        end
    end
% end

🎉3 参考文献

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

[1]M. M. Shabestary and Y. A. -R. I. Mohamed, "Analytical Expressions for Multiobjective Optimization of Converter-Based DG Operation Under Unbalanced Grid Conditions," in IEEE Transactions on Power Electronics, vol. 32, no. 9, pp. 7284-7296, Sept. 2017, doi: 10.1109/TPEL.2016.2628405.

[2]谭畅舒,李艳,田杰,明威宇,李妍,王少荣.计及分布式能源的主动配电网恢复力综合评估[J].电力科学与技术学报,2023,38(01):108-113.DOI:10.19781/j.issn.1673-9140.2023.01.012.

[3]葛钦. 电网故障下电力电子变压器故障穿越机理与控制策略研究[D].湖南大学,2020.DOI:10.27135/d.cnki.ghudu.2020.000151.

[4]庞永恒. 基于故障失配度的含新能源配电网接地故障定位方法研究[D].东北大学,2017.

🌈4 Matlab代码&Simulink实现&文章讲解

相关文章:

不平衡电网条件下基于变频器DG操作的多目标优化研究(Matlab代码Simulink实现)

目录 &#x1f4a5;1 概述 &#x1f4da;2 运行结果 &#x1f389;3 参考文献 &#x1f308;4 Matlab代码&Simulink实现&文章讲解 &#x1f4a5;1 概述 文献来源&#xff1a; 最近&#xff0c;利用并网转换器&#xff08;GCC&#xff09;克服电网故障并支撑电网电压已…...

【Leetcode】(自食用)简单题||单词数

step by step. 题目&#xff1a; 统计字符串中的单词个数&#xff0c;这里的单词指的是连续的不是空格的字符。 请注意&#xff0c;你可以假定字符串里不包括任何不可打印的字符。 示例: 输入: "Hello, my name is John" 输出: 5 解释: 这里的单词是指连续的不是空格…...

C语言代码的x86-64汇编指令分析过程记录

先通过Xcode创建一个terminal APP&#xff0c;语言选择C。代码如下&#xff1a; #include <stdio.h>int main(int argc, const char * argv[]) {int a[7]{1,2,3,4,5,6,7};int *ptr (int*)(&a1);printf("%d\n",*(ptr));return 0; } 在return 0处打上断点&…...

基于springboot+vue的房屋租赁系统(前后端分离)

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…...

Python文件读写操作详解:从基础到高级

摘要&#xff1a;文件读写是Python编程中常见的操作之一。本文将介绍Python中文件读写的基础知识&#xff0c;包括打开文件、读取文件内容、写入文件、关闭文件等基本操作。此外&#xff0c;还将探讨一些高级文件读写技术&#xff0c;如使用上下文管理器、处理异常、使用with语…...

ThreadLocal基本介绍

文章目录 什么是ThreadLocalThreadLocal解决了什么问题ThreadLocal的作用 ThreadLocal的使用场景ThreadLocal的代码示例ThreadLocal的优点ThreadLocal的缺点与volatile、synchronized、ThreadLocal比较 总结 什么是ThreadLocal ThreadLocal是Java中的一个线程本地变量&#xf…...

ffmpeg源码编译成功,但是引用生成的静态库(.a)报错,报错位置在xxx_list.c,报错信息为某变量未定义

背景&#xff1a;本文是对上一个文章的补充&#xff0c;在源码编译之前&#xff0c;项目是有完整的ffmpeg编译脚本的&#xff0c;只不过新增了断点调试ffmpeg&#xff0c;所以产生的上面的文章&#xff0c;也就是说&#xff0c;我在用make编译成功后&#xff0c;再去做的源码编…...

2023爱分析·信创云市场厂商评估报告:中国电子云

01 研究范围定义 信创2.0时代开启&#xff0c;信创进程正在从局部到全面、从细分到所有领域延展。在这个过程中&#xff0c;传统的系统集成,也在逐步向信创化、数字化及智能化转变。随着信创产业的发展&#xff0c;企业需要更多的技术支持和服务&#xff0c;而传统的系统集成已…...

网络安全学习笔记——XFF攻击流程

手工注入 手动报错注入&#xff0c;填写格式如&#xff1a;X-Forwarded-For: and updatexml(1,concat(0x7e,(select database()),0x7e),1) or 11 库名 1 and updatexml(1,concat(0x7e,database(),0x7e),1), 表名 1 and updatexml(1,concat(0x7e,(select table_name from…...

微信小程序阻止用户返回上一页,并弹窗给用户确定是否要返回上一页

在onload中调用微信的enableAlertBeforeUnload方法&#xff0c;在首次进入会自动监听当前的页面&#xff0c;在返回的时候会自动弹出弹窗阻止用户返回上一页&#xff0c;点击确定则返回上一页&#xff0c;取消则停留在当前页 onLoad: function(){wx.enableAlertBeforeUnload({…...

LangChain+ChatGLM整合LLaMa模型(二)

开源大模型语言LLaMa LLaMa模型GitHub地址添加LLaMa模型配置启用LLaMa模型 LangChainChatGLM大模型应用落地实践&#xff08;一&#xff09; LLaMa模型GitHub地址 git lfs clone https://huggingface.co/huggyllama/llama-7b添加LLaMa模型配置 在Langchain-ChatGLM/configs/m…...

【NLP】训练chatglm2的评价指标BLEU,ROUGE

当进行一定程度的微调后&#xff0c;要评价模型输出的语句的准确性。由于衡量的对象是一个个的自然语言文本&#xff0c;所以通常会选择自然语言处理领域的相关评价指标。这些指标原先都是用来度量机器翻译结果质量的&#xff0c;并且被证明可以很好的反映待评测语句的准确性&a…...

java+springboot+mysql员工工资管理系统

项目介绍&#xff1a; 使用javaspringbootmysql开发的员工工资管理系统&#xff0c;系统包含超级管理员&#xff0c;系统管理员、员工角色&#xff0c;功能如下&#xff1a; 超级管理员&#xff1a;管理员管理&#xff1b;部门管理&#xff1b;员工管理&#xff1b;奖惩管理&…...

FL Studio Producer Edition 21 v21.0.3 Build 3517 Windows/mac官方中文版

FL Studio Producer Edition 21 v21.0.3 Build 3517 Windows FL Studio Producer Edition 21 v21.0.3 Build 3517 Windows/mac官方中文版是一个完整的软件音乐制作环境或数字音频工作站&#xff08;DAW&#xff09;。它代表了 25 多年的创新发展&#xff0c;将您创作、编曲、录…...

探索Python数据容器之乐趣:列表与元组的奇妙旅程!

文章目录 零 数据容器入门一 数据容器&#xff1a;list(列表)1.1 列表的定义1.2 列表的下表索引1.3 列表的常用操作1.3.1 列表的查询功能1.3.2 列表的修改功能1.3.3 列表常用方法总结 1.4 补充&#xff1a;append与extend对比1.5 list&#xff08;列表&#xff09;的遍历1.6 补…...

Python自动化实战之使用Pytest进行API测试详解

概要 每次手动测试API都需要重复输入相同的数据&#xff0c;而且还需要跑多个测试用例&#xff0c;十分繁琐和无聊。那么&#xff0c;有没有一种方法可以让你更高效地测试API呢&#xff1f;Pytest自动化测试&#xff01;今天&#xff0c;小编将向你介绍如何使用Pytest进行API自…...

TCP的三次握手以及四次断开

TCP的三次握手和四次断开&#xff0c;就是TCP通信建立连接以及断开的过程 目录 【1】TCP的三次握手过程 ---- TCP建立连接的过程 【2】TCP的四次挥手 ---- TCP会话的断开 注意&#xff1a; 【1】TCP的三次握手过程 ---- TCP建立连接的过程 三次握手的过程&#xff1a…...

目标检测YOLO实战应用案例100讲-基于视觉与激光雷达信息融合的智能车辆目标检测研究

目录 前言 传感器选型及同步 2.1 各传感器工作原理及性能对比 2.1.1 视觉传感器...

Day 22 C++ STL常用容器——string容器

string容器 概念本质string和char 区别&#xff1a;特点string构造函数构造函数原型 string赋值操作赋值的函数原型示例 string字符串拼接函数原型&#xff1a;示例 string查找和替换函数原型示例 string字符串比较比较方式 字符串比较是按字符的ASCII码进行对比函数原型示例 s…...

使用Socket实现UDP版的回显服务器

文章目录 1. Socket简介2. DatagramSocket3. DatagramPacket4. InetSocketAddress5. 实现UDP版的回显服务器 1. Socket简介 Socket&#xff08;Java套接字&#xff09;是Java编程语言提供的一组类和接口&#xff0c;用于实现网络通信。它基于Socket编程接口&#xff0c;提供了…...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中&#xff0c;iftop是网络管理的得力助手&#xff0c;能实时监控网络流量、连接情况等&#xff0c;帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

利用ngx_stream_return_module构建简易 TCP/UDP 响应网关

一、模块概述 ngx_stream_return_module 提供了一个极简的指令&#xff1a; return <value>;在收到客户端连接后&#xff0c;立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量&#xff08;如 $time_iso8601、$remote_addr 等&#xff09;&a…...

【JavaEE】-- HTTP

1. HTTP是什么&#xff1f; HTTP&#xff08;全称为"超文本传输协议"&#xff09;是一种应用非常广泛的应用层协议&#xff0c;HTTP是基于TCP协议的一种应用层协议。 应用层协议&#xff1a;是计算机网络协议栈中最高层的协议&#xff0c;它定义了运行在不同主机上…...

Docker 运行 Kafka 带 SASL 认证教程

Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明&#xff1a;server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...

Leetcode 3577. Count the Number of Computer Unlocking Permutations

Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接&#xff1a;3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯&#xff0c;要想要能够将所有的电脑解锁&#x…...

CentOS下的分布式内存计算Spark环境部署

一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架&#xff0c;相比 MapReduce 具有以下核心优势&#xff1a; 内存计算&#xff1a;数据可常驻内存&#xff0c;迭代计算性能提升 10-100 倍&#xff08;文档段落&#xff1a;3-79…...

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...

[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?

论文网址&#xff1a;pdf 英文是纯手打的&#xff01;论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误&#xff0c;若有发现欢迎评论指正&#xff01;文章偏向于笔记&#xff0c;谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...

python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)

更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...

论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)

笔记整理&#xff1a;刘治强&#xff0c;浙江大学硕士生&#xff0c;研究方向为知识图谱表示学习&#xff0c;大语言模型 论文链接&#xff1a;http://arxiv.org/abs/2407.16127 发表会议&#xff1a;ISWC 2024 1. 动机 传统的知识图谱补全&#xff08;KGC&#xff09;模型通过…...