ARTICLE DETAIL

资讯详情

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

Simulink单相桥式有源逆变电路仿真:器件选型、参数整定与波形分析实战

Simulink单相桥式有源逆变电路仿真:器件选型、参数整定与波形分析实战 做电力电子仿真的人十有八九都会在Simulink里折腾过整流和逆变。今天这篇我就拿MATLAB 2018a实战一把完整拆解一个单相桥式有源逆变电路仿真项目——从最开始逆变电路的器件选型到晶闸管触发角怎么整定再到主电路搭建、波形分析以及那些百度不到的报错和发散问题怎么排出。适合刚接触Simulink电力电子仿真、或者是正在学《电力电子技术》但对着教材波形一头雾水的同学参考工程师朋友也可以直接拿来当建模查错清单用。有源逆变和整流看起来是同一套桥但仿过的人都知道一个符号、一个极性、一个触发脉冲设置不对出来的波形就是“群魔乱舞”。所以我这篇不会只丢一个跑通的模型截图而是把为什么这么接、为什么要用这个参数、波形要怎么读都讲清楚保证你能在2018a里从头建出一个真正物理合理的单相桥式有源逆变模型。1. 项目核心思路先搞懂有源逆变在“逆”什么1.1 有源逆变的工作条件与能量流向单相桥式有源逆变电路本质上就是单相全控桥整流电路的反向能量输送。大白话说整流是把交流电变成直流电逆变是把直流电变成交流电“有源”的意思是交流侧接的不是一个纯电阻负载而是直接接到交流电网逆变出来的交流电要回馈给电网。这个“电网”就是“有源”的来源——它既有电压又有频率像一块稳定的大磁铁牢牢吸住逆变器的输出电压波形。那么晶闸管桥路能不能直接当逆变器用当然不能想当然地直接反接。晶闸管是半控器件它只能正向导通不能自己关断所以逆变时要满足几个硬条件直流侧必须存在一个直流电动势源E而且E的极性和晶闸管导通方向一致保证能量能从直流侧“顶”出去晶闸管的触发角α必须大于90度这时整流输出电压的平均值Ud是负的也就是桥路直流侧端口电压是“负电压”电源E才有足够条件把电流推出去交流侧要接交流电源而不是纯电阻或LC负载否则能量无处可去为了维持电流连续且平缓直流侧一般要串联一个大电感L它就是所谓平波电抗器。在单相全桥里整流时晶闸管触发角α在0~90度之间Ud 0.9 × U2 × cosα输出为正。一旦α超过90度cosα变成负值Ud就变成负值。此时如果直流侧再有一个朝正确方向连接的电动势E且E的数值大于|Ud|那么桥路电流方向会保持不变但功率方向反转——能量从直流侧经晶闸管桥“灌”回交流电网。这就是有源逆变的基本过程。用一句好记的话总结整流是交流电往直流侧灌功率逆变是直流侧往电网灌功率中间那套桥还是那套桥变的只是触发角和直流源的极性。1.2 仿真前置准备MATLAB 2018a的模块环境这个项目我全程基于MATLAB 2018a操作。2018a里的电力电子仿真模块已经统一收到Simscape Electrical的Specialized Power Systems库下面了老玩家口中的SimPowerSystems其实就是它前身。我们建模时不用记一大串菜单路径直接在Simulink库浏览器搜索框敲模块名最快常用的几个模块如下AC Voltage Source交流电网电源Simscape Electrical Specialized Power Systems Fundamental Blocks Electrical SourcesDC Voltage Source直流电动势源路径同上Thyristor晶闸管Fundamental Blocks Power ElectronicsSeries RLC Branch平波电抗器或交流侧阻抗Fundamental Blocks ElementsCurrent Measurement、Voltage Measurement电流/电压测量Fundamental Blocks MeasurementsPowergui仿真心跳模块必须拖进模型里才能做FFT分析和求解器配置很多新手问2018a能不能用Universal Bridge通用桥模块做这个模型。能用但我强烈建议第一次做的时候老老实实用四个独立的Thyristor模块搭桥。原因有两个第一Universal Bridge的触发信号接口在实际版本里容易让人迷糊尤其是桥臂数和门极信号维度的对应关系出错后难排查第二用四个晶闸管搭桥每个管子触发脉冲都是显式的示波器里一抓一个准非常适合理解单相全桥的工作时序。2. 器件选型与参数整定每个参数背后都有讲究2.1 真实器件选型思路虽说是仿真但器件选型这一步不能跳。Simulink里随便填几个电阻、电感数字很容易可一旦你想把模型跑出来的波形对应到实际电路的电流电压应力选型就是第一道坎。真实晶闸管的选型主要看三个指标。第一是额定电压。晶闸管在电路中承受的最大反向电压对单相全桥来说就是交流侧线电压的峰值。假设交流电网有效值U2 220V峰值就是311V左右。考虑电网波动和换相过冲工程上一般留2倍裕量所以额定电压至少要选622V以上实际直接用800V或1000V等级的管子比较稳妥。仿真里晶闸管模块虽然没有“电压等级”参数但你在看波形时如果发现晶闸管两端电压尖峰超过了实际耐压就要明白真实设备已经炸了。第二是额定电流。先估算直流侧电流有效值比如负载功率5kW、直流电压200V直流电流大概25A再考虑晶闸管导通占空比和散热条件选型时至少留1.5~2倍裕量。仿真模型里体现为晶闸管的通态电阻Ron和管压降Vf一般Ron给0.001Ω量级、Vf给0.8~1V就能比较真实地模拟损耗。第三是触发条件。晶闸管门极需要足够的触发电流和触发功率仿真里对应门极脉冲的幅值。我的习惯是给5V~10V的脉冲信号宽度5%周期保证可靠触发又不至于长期损耗门极。2.2 关键参数计算触发角、直流电动势和平波电抗器的配合参数整定是整个仿真里最核心的一步。我直接给一组我当时实际跑通的参数然后解释每个数字怎么来的。设交流侧电源有效值U2 220V频率50Hz电网相位初始为0。取触发角α 120度。则桥路直流侧电压平均值Ud 0.9 × U2 × cosα 0.9 × 220 × cos120° -99V负号说明直流侧端口电压极性反了这就是逆变状态。接下来直流电动势E必须大于|Ud|假设回路总电阻R 0.5Ω包括电抗器电阻和晶闸管通态等效电阻直流电流Id取10A则E |Ud| Id × R 99 5 104V为了留裕量直流电压源直接取E 120V。注意这个120V不是随便拍的它是通过电流、电阻和Ud的闭环关系反推出来的。平波电抗器L是决定电流连续性的关键。如果L太小直流电流会在每个工频周期内跌到零波形断续逆变失败。理论上临界电感量计算比较复杂和最小电流、触发角都有关系但工程上我们直接用经验试凑从0.1H开始加观察直流电流波形直到在最低电流处没有凹到底就算合格。我在这组参数下用L 0.5H电流波形已经非常平滑而且动态响应还不会太拖沓。2.3 晶闸管桥搭法与缓冲电路细节单相全桥需要四只晶闸管编号和连接关系如下VT1左上臂阳极接直流母线正端阴极接交流节点AVT2右上臂阳极接交流节点A阴极接直流母线负端VT3左下臂阳极接直流母线正端阴极接交流节点BVT4右下臂阳极接交流节点B阴极接直流母线负端交流节点A和B之间接交流电压源工作时正半周由VT1、VT4导通负半周由VT2、VT3导通。Simulink里每个Thyristor模块的g端口就是门极触发输入端可以直接接Simulink的Pulse Generator信号不需要额外转换。这里有个容易犯的错很多人把晶闸管的阳极和阴极接反导致脉冲怎么给都不导通波形出来一条直线。接完模型后一定先检查每个管子的A、K极性尤其是VT3和VT4这两个下桥臂非常容易搞混。关于缓冲电路Simulink的Thyristor模块默认带有RC缓冲snubber默认值一般是Rs500Ω、Cs250nF。仿真时我建议保留默认或者把缓冲电容略微加大到1e-6F可以有效降低开关瞬间的数值振荡。如果你手痒把缓冲去掉仿着仿着很容易出现高频毛刺甚至发散这一点后面排错章节还会提到。3. 仿真模型搭建从空白模型到跑出完整波形3.1 第一步搭建主电路拓扑打开MATLAB 2018a新建Simulink模型先把Powergui拖进去。Powergui就是Specialized Power Systems库里的那个灰色方块双击它可以配置仿真类型和求解器。我在这套模型里选择Continuous连续仿真求解器用ode23tb因为晶闸管是强非线性开关器件ode23tb在刚性系统上比ode45稳定得多不易发散。主电路的搭建从交流电源开始。双击AC Voltage Source把Peak Amplitude填311.13V也就是220V有效值的峰值频率50HzPhase填0。然后放四个Thyristor模块按上面的拓扑连接。连接时注意导线要经过节点千万不要悬空。直流侧串联一个Series RLC BranchBranch type选RLR0.1ΩL0.5H然后在电抗器后端放一个DC Voltage Source电压填120V。这里必须重点强调直流电压源的极性方向。标准整流模型中直流源是上正下负但在有源逆变模型里直流源的方向要反过来接直流电压源的正极接到桥路直流母线的下端负极母线负极通过电抗器接到桥路直流母线的上端。我从第一次做这个项目起就被这个问题坑过——极性正了仿出来电路根本不在逆变状态直流电流全部倒灌波形直接发散或跑飞。简单记忆让直流电流从电压源正极流出后流入桥路然后从桥路另一端回到电压源负极形成能量输出的闭环。3.2 第二步设计触发脉冲电路晶闸管触发脉冲是整个模型里最“考研”的部分。单相全桥四只管子VT1和VT4同组、VT2和VT3同组所以实际只需要两路互补的脉冲每路同时带两只管子。Pulse Generator的参数设置如下Pulse type选Time basedTime (t0) 选择 Use simulation timePeriod 0.02s50Hz工频周期Pulse Width 5% 周期也就是0.001s约18度宽度足够可靠触发Amplitude 10V关键在Phase Delay这一项。我们已经设定了电网相位初始为0那么电网电压在t0时刻过零进入正半周。对VT1和VT4这一组需要在正半周过零后延迟α对应的时刻给脉冲。α120度对应的时间是delay1 (α / 360) × T (120 / 360) × 0.02 0.006667s所以VT1/VT4对应的Pulse Generator的Phase Delay填0.006667。VT2和VT3这一组在负半周工作负半周从10ms开始所以它的延迟要再加半个周期10msdelay2 0.006667 0.01 0.016667s然后两个Pulse Generator分别接到对应晶闸管的g端口。注意连接时不要用Mux合并直接一对二连线即可Simulink里一个信号源拉两根线是允许的逻辑上也完全正确。这里必须提醒一个简化处理的局限上述做法的同步基准是“仿真零时刻电网相位为0”。如果交流电压源初始相位改成非零值或仿真中电感初始电流造成系统起始暂态脉冲和过零点就会错位。要做得更严谨可以引入过零检测电路或用PLL锁相环生成同步脉冲但作为基础仿真练习这种理想同步完全可以接受。3.3 第三步接入测量与示波器波形分析离不开测量环节。在交流电压源旁边串一个Current Measurement用来测交流侧电流在桥路直流端并一个Voltage Measurement用来测直流侧电压Ud再在直流电流路径上串一个Current Measurement测直流电流Id。把这些测量信号全部引到一个Scope里可以一次看四路波形。我会建议再加一个Multimeter模块Fundamental Blocks Measurements它可以汇总很多内部信号比如晶闸管的电流电压。用Multimeter配合Scope做历史数据记录后面做FFT分析时更方便。Scope显示设置里Recommend sample time可以留默认-1代表继承信号步长如果波形太密可以把Scope的采样率设成离散步长比如1e-6s这样既不会漏数据也不会让波形糊成一团。3.4 第四步运行前的参数核对清单在点“Run”之前我强烈建议按下面的清单把每个环节过一遍四个晶闸管的A/K极性和桥臂位置是否与拓扑一致直流电压源是否反接正极接桥路下端触发脉冲的Phase Delay是否分别为6.667ms和16.667ms脉冲宽度是否在1%到10%之间太窄可能触发失败太宽会影响换流Powergui是否拖入模型求解器是否选ode23tb交流电源Phase是否为0频率是否为50Hz平波电抗器L是否为0.5H别误设成0.005H这种极小值仿真停止时间设置在0.2s或0.4s确保能看到至少10个工频周期。全部确认无误后再运行。第一次跑通后把仿真停止时间再拉长一点让系统进入稳态这时候抓到的波形才具备分析价值。4. 波形分析与结果解读如何判断仿真对还是错4.1 关键波形定位Ud、Id和交流侧电压电流仿真跑完后把示波器调出来最先看的几个关键量是第一个是直流侧电压Ud波形。理想情况下Ud是一条在负值附近带纹波的曲线其平均值应该接近-99V。碰到连续导通的稳定状态纹波幅度取决于平波电抗器大小和开关频率。如果你看到Ud的平均值是正的或接近0V那大概率是直流电压源极性接反或者触发角设错了。第二个是直流电流Id波形。有源逆变时Id应该基本恒定有一个负值或正值的偏移取决于测量参考方向更重要的是不能跌到零。我建议在Scope里加上一个Constant参考直线比如10A观察电流纹波是否触碰零线。一旦触零说明电抗值不够或触发角太靠后电流断续系统已经处于不稳定边缘。第三个是交流侧电压和电流的相位关系。把AC Voltage Source的输出电压波形和交流侧电流波形放一起比较你会看到它们几乎反相——电压正半周时电流是负半周波形相位差接近180度。这就是判断能量反向流动的重要依据。电网电压为正时电流为负意味着功率方向是从变流器流向电网正是有源逆变的核心特征。4.2 FFT分析与谐波表现只看时域波形还不算完整好戏在后头。双击Powergui选FFT Analysis可以对波形做傅里叶分析。操作方法在FFT窗口里选择你要分析的信号比如交流侧电流Iac设置Fundamental frequency为50HzStart time和Number of cycles选后段稳态数据比如从0.1s开始分析5个周期显示最大频率设到500Hz或1000Hz方便观察主要低次谐波。正常情况下你会看到基波50Hz占绝对主导THD总谐波畸变率不会特别夸张随着电感增大高次谐波明显下降。如果电流波形出现严重断续FFT频谱上3次、5次、7次这些奇次谐波幅度会明显抬升THD可能到30%以上这时候就说明电路参数已经偏离理想工作区了。对单相全桥逆变来说谐波主要以奇次为主偶次谐波理论上很小。如果频谱里出现了明显的2次或4次偶次谐波我第一反应是模型不对称——某个晶闸管触发脉冲丢失、脉宽不一致或者交流电源本身不对称。这种不对称在时域波形上不一定一眼看得出来但谐波频谱会老实交代。4.3 触发角变化对波形的直接影响把触发角从120度改成135度甚至150度看波形怎么变这是一个非常值得做的敏感性测试也是检验你对理论公式理解的最好方式。α增大时cosα更负|Ud|变大。比如α135度时Ud 0.9 × 220 × cos135° ≈ -140V。这时如果直流电动势E仍然是120V就会发现E小于|Ud|系统无法维持电流输出直流电流会逐渐减小甚至断续严重时逆变失败。要让系统继续稳定工作就必须同步调高E。所以在做触发角扫描时最好把E也按公式重新计算一遍。这个小实验会让你彻底理解为什么有源逆变电路不能单独调一个触发角就算完所有参数都是牵一发动全身的。实操中我常用一个MATLAB脚本循环改α和E然后把Ud平均值、THD、Id纹波记录下来画成曲线看趋势非常直观。4.4 晶闸管电压应力的观察除了关注整体波形晶闸管自身的电压应力也值得一看。用Multimeter或直接给每个晶闸管并一个Voltage Measurement可以看到晶闸管阻断期间承受的反向电压峰值大约接近电网峰值电压的2倍换流瞬间出现的电压尖峰如果缓冲电路参数不合适尖峰会特别吓人。这个波形对实际选型有直接指导意义。在仿真里看到2倍峰值电压尖峰你就知道为什么真实晶闸管要留那么多电压裕量了。5. 常见问题与排查技巧实录5.1 仿真发散怎么办Simulink电力电子仿真里的“发散”是最让人头疼的问题之一。现象通常有两种一是计算步长越走越小仿真进度条像卡住一样最终报错“Solver unable to reduce step size”二是波形直接飞出天际数值出现NaN或无穷大。排查顺序我建议这样检查Powergui的求解器设置。连续仿真务必用ode23tb不要默认ode45Coupled物理信号模型尤其适合ode23tb它对刚性系统更友好检查晶闸管缓冲电路。把所有晶闸管的Snubber resistance和Snubber capacitance恢复默认值Rs500ΩCs250e-9F不要轻易归零。有些教程喜欢把缓冲去掉但仿真稳定性会大幅下降检查回路是否存在纯电感理想电压源的短路组合。比如直流电压源直接并联大电容、或者交流源直接接纯电感没有电阻容易导致数值刚性。给电抗器串一个0.1Ω~1Ω的小电阻能极大改善检查初始状态。Powergui里可以设置稳态初始值如果系统初始状态偏离严重第一拍就发散。简单办法是把仿真停止时间设短一点试跑0.01s看前几个步长是否稳定。5.2 波形出不来或是一条直线这个问题的原因通常比发散好查。先确认四个晶闸管是否真的触发了。把触发脉冲信号也引到Scope里和晶闸管阳极-阴极电压放一起观察。如果脉冲信号存在但晶闸管始终处于阻断状态两端电压为正却不导通注意检查脉冲幅值是否够Simulink里Pulse Generator振幅默认是1V对应实际门极触发可能不够可靠改成5V或10V。再查晶闸管阳极阴极是不是接反了。这是一个很隐蔽的错误因为你接反后仿真不报错就是波形出不来或方向反常。用鼠标点每个晶闸管看它连向直流母线正端的是不是阳极A连向母线负端的是不是阴极K。还有一种情况触发脉冲的时间延迟算错了。比如α120度时VT1的延迟算成了16.667ms管子只能在负半周收到脉冲而负半周它根本不承受正压必然没法导通。核对两个延迟是否分别落在正半周和负半周的窗口内。5.3 电流断续与换相失败排查如果你看到直流电流或交流电流波形出现“断崖”一个周期内电流跌到零保持一段时间后又被电压“吹”起来这说明平波电抗器不够大。加大L就能看到断续现象逐渐消失。但还有一类问题是原理性的当E小于|Ud|电网会反灌电流电流波形可能震荡加剧换相失败。此时先检查E和Ud的大小关系不要急着加电感。我遇到过几次为调电流连续猛加电感结果模型瞬间发散的案例——电感太大导致数值求解刚性增加反而是治标不治本。正确顺序是先算准E再调L平滑波形。我把这些常见问题整理成一个速查表方便你对照现象可能原因优先排查项仿真发散求解器不合适 / 缓冲缺失 / 纯电感回路改ode23tb恢复缓冲串小电阻波形直线脉冲没触发 / 晶闸管极性接反查稳态幅值与延迟检查A/K电流断续L偏小 / E小于|Ud|加大L同时核算EUd平均值为正直流源极性错 / α小于90度反接直流源把α调到120度附近谐波异常含偶次脉冲不对称 / 模型不对称检查VT1~VT4触发脉冲是否一致电压尖峰过大缓冲电容太小将Cs增大到1e-6F级别6. 模型扩展方向与个人实操体会这个模型跑通只是第一步后面可以做的扩展非常多。最自然的一个方向是把四只晶闸管换成IGBT或MOSFET加上PWM调制就变成单相PWM逆变器可以做并网逆变控制、PID闭环调压调流这是很多毕业设计和项目开发直接用得上的版本。另一个方向是把单相桥升级成三相桥触发脉冲从两路变成六路再学习三相有源逆变和PWM整流很多关于“能量回馈”的实际工程场景都会用到。从软件使用角度看我建议你把连续仿真和离散仿真都试一遍。2018a里在Powergui中把Simulation type切到Discrete设置一个合适的固定采样时间比如1e-5s会发现仿真速度快很多而且和嵌入式控制代码的离散化计算逻辑更接近。但要注意离散仿真对步长选择很敏感步长太大波形失真步长太小又失去离散仿真的速度优势。最后分享一个我自己的小习惯每次调参之前先把当前模型另存为一个带版本号的副本比如inv_alpha120_v1.slx。仿真这件事参数一改很容易把原来好好的一组结果冲掉有副本在手才敢大胆试。另外示波器里的波形尽量导出到工作区用MATLAB脚本做后处理绘图比直接截图清晰得多也方便放进论文或报告里。掐指一算从第一次在Simulink里被这个有源逆变模型虐到彻底跑通我前前后后花了差不多两天。最大的收获倒不是学会拖模块而是真正想明白了一件事晶闸管桥路本身只是一堆开关到底是整流还是逆变决定权全在触发角和直流侧电动势的手里。你把这个因果关系看透了后面的三相桥、PWM整流、并网逆变全都是一通百通的事情。
返回列表