ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

风光储并网协同运行Simulink建模与仿真调试全攻略

风光储并网协同运行Simulink建模与仿真调试全攻略 研究“永磁风机发电机光伏阵列储能系统的风光储并网协同运行Simulink模型”这个课题说白了就是把风电、光伏这两个“看天吃饭”的电源和一个能存能放的储能捆绑在一起让它们像一个训练有素的团队一样在电网这个大盘子里协同出力。这个方向不仅仅是毕业设计和横向课题的常客也是目前新能源消纳、微电网、智能配电网研究里最基础的验证平台。我前前后后搭过不少类似的模型从几百千瓦的实验室样机到兆瓦级并网示范踩过的坑远比看过的论文多。这篇就结合我自己的实操经验把这个模型的核心关键点、建模细节、控制策略以及那些仿真运行报错时让人抓狂的疑难杂症一次性和你讲清楚。1. 整体架构与选型思路为什么非要用这套组合1.1 先看懂这张系统拓扑图再动手设置任何仿真之前第一步不是急着去Simulink里拖模块而是要把系统的能量流和信号流在脑子里彻底过一遍。这个风光储联合系统我用下来最顺手的拓扑是直流母线耦合加交流并网的结构。简单来说永磁风机通过背靠背变流器光伏阵列通过Boost升压电路储能系统通过双向DC/DC变换器先把各自的电能汇到一条公共的直流母线上然后再由一个统一的并网逆变器把直流电逆变成交流电送到电网上。为什么要用直流母线耦合而不采用交流母线直接并联因为这种结构最大的优势在于风机、光伏和储能之间的功率调度和能量管理集中在一个直流节点上控制上更方便直流母线电压本身就反映了系统的功率平衡状态。当直流母线电压跌落时说明电源出力不足储能需要释放能量当直流母线电压升高时说明电源出力过剩储能需要吸收能量或者限制电源出力。这是整个协同运行逻辑的最底层物理基础。信号流方面最核心的反馈量包括风机转速、风机侧变流器直流母线电压、光伏阵列输出电压电流、储能电池的SOC荷电状态、并网点的三相电压电流。控制信号则包括风机的桨距角指令和机侧变流器d/q轴电流指令、光伏Boost的占空比、储能Buck/Boost的模式切换和占空比、并网逆变器的d/q轴电流指令。这一堆量在搭建模型前就要在纸上画清楚哪一路接到哪一个控制环否则做到后面信号线乱成一团麻排查起来欲哭无泪。1.2 为什么选永磁直驱而不是双馈或者异步机在风机选型上我几乎毫不犹豫地选择了永磁同步发电机PMSG主要是三个原因。第一永磁直驱风机不需要齿轮箱风轮直接拖动发电机转子减少了机械传动环节的故障率和损耗这也让仿真里的机械模型更简洁省掉了齿轮箱的转矩变换环节少一个环节就少一个出错的可能。第二永磁同步电机采用全功率变流器并网电网故障时对风机的冲击较小低电压穿越能力相对容易实现这个在并网仿真里非常重要因为你要观察的就是电网电压跌落时整个系统的响应。第三永磁同步电机的控制精度高转矩响应快配合最大功率追踪算法可以在更低的风速下就开始发电对充分利用风能资源很有帮助。相比之下双馈异步电机虽然变流器容量小、成本低但它的转子侧和电网侧的控制耦合度高模型复杂得多对于“协同运行”这个研究主题来说会把注意力从“风光储之间的功率博弈”转移到“电机本身的控制细节”上有点喧宾夺主。异步机就更不用说了它需要从电网吸收无功励磁并网控制不够灵活在微电网和分布式能源场景下已经逐渐不是主流。储能的部分我推荐首选磷酸铁锂电池模型。不要一上来就搭复杂的电化学模型用Simulink里现成的Battery模块设置好标称电压、额定容量、初始SOC这几个核心参数就够了。电池模型选“Lithium-Ion”初始SOC设置在50%-70%之间最合适这样既允许充电也允许放电动态范围大。储能系统的变流器用双向Buck-Boost能实现能量的双向流动这是储能参与调峰和平抑波动的核心。2. 永磁风机发电系统的Simulink建模要点2.1 空气动力学模型与MPPT的配合别让风能利用系数白设许多初学者在搭风机模型时最喜欢直接在Simulink库里面拖一个“Wind Turbine”标准模块。这个模块虽然方便但它是一个极度简化的模型本质上只实现了风能捕获公式即风力机从风中所捕获的机械功率等于二分之一空气密度乘以扫风面积乘以风速的三次方再乘以风能利用系数。真正要研究变桨距控制和最大功率追踪这个标准模块不够用你需要把风能利用系数的函数关系自己搭出来。风能利用系数的经典经验公式包含两个关键中间变量一个是叶尖速比即叶尖线速度与风速之比等于风机转速乘以风轮半径再除以风速另一个是桨距角。叶尖速比越大风能利用系数呈现先升后降的非单调变化这意味着在某个叶尖速比下风能利用系数达到最大值这个最大值对于典型的水平轴风机来说通常在0.4到0.48之间。在Simulink里实现的方式是风速作为外部输入转速从发电机模型反馈过来计算出叶尖速比查表得到风能利用系数再算出机械转矩作用到发电机的转轴上。MPPT控制的本质就一句话在风速变化时调整风机转速让叶尖速比始终保持在最优值附近从而捕获最大风能。功作里最简单有效的是“爬山法”实时检测输出功率与上一时刻的功率比较如果功率增加了就沿着原方向继续调整转速如果功率减小了就反向调整转速。在Simulink里可以用一个带延时的比较器加一个积分器来实现也可以用Stateflow写一个简单的有限状态机。对于大型风机更常见的是“最优转速控制法”根据当前风速计算出最优转速指令直接作为机侧变流器速度环的给定值。这种方法的响应速度比爬山法更快但需要知道风机的实时风速而这在实际中通常要用激光雷达或风速仪测量仿真中就不存在这个问题。2.2 背靠背变流器控制机侧管转速网侧管电压永磁风机通过背靠背变流器并网这“背靠背”指的就是两个变流器通过直流母线电容相连。DC/AC或AC/DC整流器和逆变器各有分工谁也不能越权。机侧变流器的任务是控制发电机的转速和转矩实现最大功率追踪网侧变流器的任务是维持直流母线电压稳定并向电网输送高质量的交流电能。机侧变流器采用“转速外环加电流内环”的双闭环控制。转速指令来自MPPT模块转速反馈来自发电机编码器模型。转速误差经过PI控制器输出一个转矩指令再折算成发电机定子电流分量的参考值。在永磁同步电机中通常采用最简单的“零直轴电流”控制策略也就是让直轴电流的参考值为零交轴电流与转矩成正比。为什么这么设置因为对于隐极式永磁同步电机而言直轴电感等于交轴电感电磁转矩只与交轴电流有关让直轴电流为零就能在同样的电流幅值条件下获得最大的转矩效率也就是所谓的最大转矩电流比。电流内环在同步旋转坐标系下对交直轴电流分别进行PI解耦控制输出电压指令经过SVPWM调制后得到整流器的开关信号。网侧变流器采用的是电网电压定向矢量控制。外环是直流母线电压环这个环的PI输出就是交轴电流的参考值也就是有功电流指令直轴电流的参考值则根据无功需求来设定单位功率因数运行时设置为零。电流内环在电网同步旋转坐标系下控制网侧电流实现有功和无功的解耦。这里有一个必须注意的细节直流母线电压环的PI参数如果不合理会在负载突变时产生很大的电压波动甚至导致系统失稳。我一般按照“内环带宽是外环带宽的5到10倍”这个原则来整定先把电流内环整定好再整定电压外环不要反过来。3. 光伏阵列与储能系统的建模与协同控制3.1 光伏阵列模型从等效电路到MPPT重点是那个导纳增量法光伏阵列在Simulink中有两种建模方式。一种是直接用SimPowerSystems库中的“PV Array”这个模块好处是内置了详细的单二极管模型支持设置串联数、并联数、开路电压、短路电流等关键参数省去自己推导的麻烦。另一种是自己根据光伏电池的单二极管等效电路搭建模型好处是完全透明可控改起来方便。对于并网协同运行研究直接推荐使用现成的PV Array模块因为在整体系统仿真里光伏组件本身的内部物理过程不是你研究的重点重点是它作为一个直流电源与整个系统的功率交互。但无论用哪种方式MPPT是绕不开的。光伏MPPT最常用的两种策略是“扰动观察法”和“电导增量法”。扰动观察法的核心是周期性地给输出电压一个微小扰动然后看输出功率是变大还是变小如果变大就保持扰动方向如果变小就改变扰动方向如此反复搜索最终在最大功率点附近振荡。这个方法实现简单只需要电压和电流传感器但缺点是稳态时会在最大功率点附近来回振荡造成一定的功率损失而且遇到光照突变时有可能发生误判朝错误方向扰动。电导增量法要更精细一些它基于“光伏阵列在最大功率点处的电导变化率等于负的输出电导”这个数学特征。即最大功率点满足电导的变化率等于负的电导。在算法实现上通过比较此刻与上一时刻的电导变化量来判断工作点处于最大功率点的左边还是右边然后决定占空比的调整方向。这个算法在Simulink里用离散子系统实现很简单采样时间设为光伏系统动态响应较快的时间尺度我一般设置在0.001到0.01秒之间。电导增量法的优势是光照突变时能快速追踪到新的最大功率点且稳态振荡更小代价就是计算量和实现复杂度略高。如果在做能耗对比或者精确的功率平抑效果分析推荐用电导增量法。3.2 储能系统模型双向变换器加SOC管理充放电逻辑是灵魂储能系统的建模相对直观但控制逻辑却考验功力。电池用Simulink中的Battery模块标称电压、额定容量和初始SOC按你设定的系统规模来定比如一个200kW/400kWh的储能单元初始SOC设为60%。双向DC/DC变换器实现升降压功能当电池放电时工作在Boost模式把电池电压升到直流母线电压当电池充电时工作在Buck模式把直流母线电压降到电池充电电压。储能控制的核心是充放电模式的切换和管理策略。我在做项目时通常用“直流母线电压信号”作为储能系统的控制指令源。具体逻辑是设定一个直流母线电压参考值比如800V。当直流母线电压高于参考值时说明系统内电源出力大于负荷需求储能进入充电模式吸收多余的能量当直流母线电压低于参考值时说明电源出力不足储能放电补充功率缺口。这个控制逻辑通过一个带滞环的状态机来实现防止在参考值附近频繁切换充放电模式。SOC的约束也必须写进控制逻辑里。SOC高于90%时停止充电低于20%时停止放电这个上下限不能省掉。否则仿真时间一长电池就容易出现过充过放模型计算结果就会偏离实际甚至导致仿真因为状态变量超限而报错。在Simulink中实现SOC限制非常简单用比较器和多开关的逻辑就能实现。对于SOC的计算在仿真中直接用Battery模块自带的SOC输出端口就行不需要自己写安时积分法那是做电池管理系统的硬件实现时才需要认真考虑的细节。4. 风光储协同并网从能量管理到功率平抑4.1 能量管理策略怎么设计三种运行模式一个决策树风光储系统的能量管理本质上是一个“什么时候让谁多出力、谁歇着、谁来充放电”的决策问题。整个系统的内部控制已经安排好了各个变流器的基础功能现在需要在这个基础之上叠加一个更高层级的能量管理模块这个模块负责与电网交互根据并网点的功率指令来决定各单元之间的功率分配。我常用的能量管理模式有三种。第一种是“最大功率跟踪模式”适用于电网需要最大新能源出力的场景。此时风机和光伏都运行在MPPT状态储能系统则根据系统的功率平衡自动补偿或吸收短时波动目标是让并网功率尽可能平滑。第二种是“限功率运行模式”适用于电网下发限电指令的场景。此时需要设置一个并网点输出功率的上限当风光总出力超过上限时储能先充电吸收多余功率如果储能已经满了就需要通过风机变桨矩限功率或者光伏的直流侧限功率控制来削减出力。第三种是“离网运行模式”此时系统需要维持本地负荷的供电储能作为主电源维持直流母线电压和频率稳定风机和光伏作为从电源跟随功率分配指令。不管是哪种模式都需要用到“功率平衡方程”来约束各单元的输出功率。即光伏输出功率、风机输出功率、储能充放电功率之和等于并网输出功率。在Simulink中可以用一个简单的代数运算模块来实现这个功率平衡约束由能量管理模块实时计算出储能需要承担的功率差额再把这个差值送给储能双向变换器的功率环控制器。4.2 平抑波动的效果怎么看仿真结果里读出的三个关键指标搭建完整个模型最终要看的就是协同运行的效果。我一般会在仿真里设置几组典型的工况来验证。第一组是“风速阶跃”初始风速设定在额定风速以下的一个恒定值在某时刻突变为更高风速观察风机响应和各单元功率变化。第二组是“光照突变”某时刻让光照强度从1000瓦每平方米突然降到600左右模拟云层遮挡。第三组是“负荷突变”在并网点接入一个大负荷或者甩掉一个负荷观察系统的动态恢复过程。观察结果时重点抓三个指标。第一是直流母线电压的波动范围在并网协同控制正常时直流母线电压应该始终维持在一个较为稳定的范围内比如额定800V的系统波动范围不超过正负20V。如果波动超出这个范围说明储能响应太慢或者充放电切换不及时。第二是并网点有功功率的平抑效果在没有储能的情况下光照突变会让并网功率跳变有了储能介入后并网功率的变化应该明显平滑呈阶梯式缓慢过渡。第三是储能系统SOC的变化曲线合理的SOC曲线应该像一个缓坡充放电交替平缓而不是剧烈振荡。如果SOC波动很剧烈说明能量管理策略里功率分配太激进需要增加滤波平滑环节或者调整充放电切换的滞环宽度。5. 仿真调试中的常见问题与排查技巧5.1 Bus Selector没有可选信号十个人有九个栽在这里用热词搜索那个“simulink bus selector 没有可选信号”的问题我可以很肯定地说这是Simulink使用者高频踩坑的典型场景尤其是在搭建复杂风电场和光伏并网模型时频繁出现。这个问题出现的根本原因不在于Bus Selector模块本身而在于信号线并没有形成一个真正意义上的“Bus信号”。很多人习惯把好几根普通信号线直接拖动插到Bus Selector的输入端期望它自动识别出里面有多少路信号却发现下拉菜单一片空白完全没有可供选择的选项。解决的方法非常简单但一定要记住必须先有一个“Bus Creator”模块把你的各路信号封装成一个总线信号然后把这个总线信号线上的分支用“Bus Selector”去选择。换句话说Bus Selector的输入信号必须来源于一个显式创建的总线而不能是普通的信号线。如果输入信号本身就是来自其他模块的Bus输出端口那么请检查总线里是否存在虚拟总线子层尤其是使用“非虚拟总线”的时候Bus Selector对信号路径非常敏感。另一个非常相似的高频报错是Bus Selector的选项出现了但和你预期的不一致缺少了某个信号。这种情况通常是因为Bus Creator的输入端没有正确连接你期望的那个信号或者信号名称在路径中发生了变化。我的习惯做法是在搭建任何模块之前先把关键的电源状态量电压、电流、功率、转速、SOC、光照、风速都分别先用几个Bus Creator封装起来形成标准的总线这样后续调试时只需要接一根总线到Bus Selector要什么信号拉什么信号排查起来一目了然避免信号线在模型里乱飞。5.2 求解器设置、代数环和初始化仿真发散时的三板斧Simulink仿真中电力电子变换器的模型里含有大量高频开关器件和高频分量如果求解器选择和参数设置不合理模型跑出来的结果就会发散。我一般遵循以下的原则使用变步长求解器并选择适合电力电子仿真的算法比较稳妥的是ode23tb处理刚性系统时效果不错收敛速度也比较快。对于包含大量状态变量的系统比如同时具备多个储能电池模型和多个变流器模型的场景ode15s也算合适的选择。固定步长求解器只在这些模型最终要生成嵌入式代码时才考虑。最大步长要设置成远小于开关周期的值比如开关频率是10kHz的话最大步长建议设置为1e-6左右否则PWM波形的采样点不够仿真结果会出现明显的毛刺。再一个就是“代数环”问题。代数环会在系统中出现瞬时计算循环时产生即输出直接反馈到输入而没有通过任何延时或积分环节没有状态变量来打破这个计算循环。代数环会导致求解器报错或者仿真速度极慢。定位代数环有一个非常简单的方法点击菜单里的“调试”选择“诊断”勾选“代数环”选项Simulink会在模型中标出代数环的位置。解决的通用办法是打断环在反馈路径中加入一个存储单元或者一个小的延时环节当然这需要避免对系统物理特性的影响。在风机和光伏并网模型中代数环最常出现在控制系统的电流内环里面因为电流指令的生成用到了瞬时值反馈而这个反馈路径上又没有经过任何积分或惯性环节。另外要注意初始化参数。Simulink的仿真启动需要先计算系统的初始工作点。如果初始状态设置不当比如电容初始电压和稳态工作点偏差太大仿真启动的瞬间会有一个巨大的暂态冲击。我建议在风机模型中初始风速设为常数让风机先在额定转速下稳态运行一段时间再开始施加风速变化光伏模型中初始光照设为标准测试条件待系统进入稳态后再进行突变。储能SOC的初始值尤其重要设定在主允许范围内避免启动时电池就因为SOC越限而进入保护状态。实操小结从搭建到调试的几点沉淀这套风光储协同并网模型做完并验证通过后能跑出相当漂亮的实验曲线也能支撑论文和课题的核心结论。但要说最重要的心得我觉得不是某一条控制策略怎么设计而是整个系统“先分后台”的搭建习惯。先把风机模型单独闭环调试到响应正确再把光伏模型单独验证MPPT效果再把储能模型单独测试充放循环最后再联调总线上的能量流和功率平衡。每增加一个组件就要完整跑一遍新增部分的验证工况。这种搭积木的方式能在模型规模变大时最大限度压缩问题排查的范围。过程中我遇到过很多次因参数设置不合理导致的仿真发散问题遇到这种情况时我通常会从控制回路的带宽匹配、直流母线电压环和电流环的响应速度是否适配、储能功率环的限幅是否丢失等方向入手排查。希望这篇内容对正要搭建这套模型的你有所启发。另外实际研究中永远要把“模型结果服务于物理认知”这个原则记在心里仿真模型是研究工具而不是研究对象本身。
返回列表