资讯动态

单相PWM整流器直接电流与间接电流控制仿真对比

发布时间:2026/9/9 12:24:28 来源:尧图企业网站定制
做电力电子仿真这些年单相PWM整流器是我觉得最适合拿来练手、也最能讲清楚“控制策略差异”的一个对象。从交流220V整流到直流350V表面看只是一个“升压整流”的过程但真正让这个系统有灵魂的是网侧电流的波形质量、功率因数、直流电压的动态特性。这次我把两种经典控制策略——直接电流控制和间接电流控制——在Simulink里完整搭了一遍从主电路参数计算、控制环路搭建、仿真结果对比到调试踩坑全部记录下来。文章里没有玄学只有可复现的步骤和波形。我要先明确这个项目的边界输入是单相交流220V/50Hz输出直流350V额定功率按3kW设计开关频率取10kHz控制策略对比目标是解决“用什么方式让网侧电流正弦化、并且稳定住直流母线电压”的问题。如果你正在做课程设计、毕业设计或者刚接触PWM整流器想找个能跑的模型参考这篇内容应该能帮你省下不少走弯路的时间。1. 两种控制策略的选型思路1.1 为什么这个场景必须用PWM整流器先回答一个很多人会忽略的问题交流220V整流到直流350V为什么不能用二极管整流堆交流220V的有效值是220V峰值是311V二极管不控整流出来最多就是311V上下浮动的直流而且电流波形是脉冲状的谐波很大、功率因数很低。如果需要350V直流本质上是一个“升压整流”的过程得先通过Boost或者全桥结构把电压抬上去。单相PWM整流器的H桥拓扑天然就是一个Boost型变流器它在交流侧串联电感通过控制四个开关管的通断让电感储存和释放能量既能把直流电压抬到比交流峰值更高的水平又能同时控制交流侧电流波形接近正弦、相位与电网电压一致实现单位功率因数。工程上选择单相PWM整流器的另一个重要理由是能量双向流动能力。虽然这个项目只做整流方向但H桥结构天生具备四象限运行能力只要控制策略改一下就能回馈能量。相比“不控整流Boost”的组合PWM整流器用一套拓扑同时完成了升压、正弦电流、功率因数校正三件事代价就是控制复杂度上去了。这个复杂度正是本文要拆解的核心。1.2 直接电流控制和间接电流控制的核心差异这两种策略的分水岭在于交流电流是不是被“直接闭环控制”。直接电流控制顾名思义是在控制回路里引入网侧电流反馈电流内环直接决定开关管的动作。典型的实现有滞环电流控制和三角波比较SPWM电流控制。这样做的好处是动态响应快、对参数不敏感、电流波形质量高缺点是必须使用电流传感器控制结构相对复杂。间接电流控制又叫幅相控制它不检测交流电流而是根据PWM整流器的稳态相量关系通过控制整流器交流侧电压基波的幅值m和相位δ间接地控制网侧电流。好处是结构简单、省掉电流传感器缺点是动态响应慢而且控制精度依赖主电路参数的准确性一旦电感值、电网电压与设计值偏离功率因数和电流波形就会变差。我习惯用开车来类比直接电流控制是“眼睛盯着方向盘随时修正方向”间接电流控制是“估算好弯道角度把方向盘打到固定位置”。前者稳、快但费传感器后者省钱、简单但路况一变就容易偏。两种策略没有绝对的好坏取决于项目的成本预算和动态性能要求。2. 主电路参数设计不能拍脑袋2.1 系统指标与拓扑选择做仿真之前先把指标定死否则后面调参根本没有基准。我这次按以下指标来设计参数数值交流输入电压220V RMS / 50Hz峰值311V直流输出电压350V额定功率3kW开关频率10kHz直流电压纹波≤ 2%约7V网侧电流纹波≤ 15%峰值电流主电路拓扑选择单相全桥四个IGBT或MOSFET带反并联二极管交流侧串联电感L直流侧并联电容C和负载电阻R。之所以直流电压定在350V是因为它必须高于交流峰值311V——只有直流侧电压高于交流峰值Boost型PWM整流器才能通过电感储能把电压抬上去同时留出足够调制空间。350V大约是311V的1.125倍这个裕量既保证单位功率因数运行又不至于让开关管承受过高的电压应力。2.2 交流侧电感L的计算方法电感是PWM整流器最关键的元件它决定了电流纹波大小和动态响应能力。先看电流纹波怎么来的在一个开关周期内电感电流上升阶段满足 L·Δi us·Ton其中Ton D·TsD是占空比Ts是开关周期。单相PWM整流器工作在手Boost状态占空比近似为 D (Udc - |us|) / Udc代入可得Δi |us|(Udc - |us|) / (Udc · L · fs)由这个式子可以看出当 |us| Udc/2 时|us|(Udc-|us|) 取最大值 Udc²/4所以最大电流纹波为Δimax Udc / (4 · L · fs)额定功率3kW网侧电流有效值 I P/U 3000/220 ≈ 13.6A峰值约19.3A。取纹波为峰值的15%Δimax ≈ 2.9A。代入计算L 350 / (4 × 10000 × 2.9) ≈ 3mH我仿真里电感取3mH串联0.1Ω电阻模拟线路损耗。这里要特别提醒电感不是越大越好。电感太大电流响应变慢交流侧压降增大为了维持输出需要更高的调制比反而压缩了控制裕量电感太小纹波大、谐波大网侧电流很难达标。3mH在10kHz开关频率和3kW功率下是一个工程上很合理的折中值。实际中你可以用参数计算脚本快速复核% 单相PWM整流器主电路参数计算 U_rms 220; U_peak U_rms*sqrt(2); % 峰值311V Udc 350; P 3000; fs 10e3; I_rms P / U_rms; % 13.6A I_peak I_rms * sqrt(2); % 19.3A delta_imax 0.15 * I_peak; % 2.9A L Udc / (4 * fs * delta_imax); % 约3mH2.3 直流母线电容C怎么选直流电容的作用是平衡瞬时功率脉动。单相系统有个天然特点瞬时功率以2倍工频脉动也就是100Hz。直流电压纹波主要集中在这个频点上电容容值必须能吸收这部分脉动能量。按电压纹波要求计算直流母线纹波主频是100HzC ≈ P / (2π · 2f · Udc · ΔUdc)取ΔUdc 2% × 350 7V代入C ≈ 3000 / (2π × 100 × 350 × 7) ≈ 1950μF实际取2200μF。我还习惯从动态响应角度复核一下负载等效电阻 R Udc²/P 350²/3000 ≈ 40.8Ω电容时间常数 τ R·C ≈ 40.8 × 2200e-6 ≈ 90ms这个时间常数与电压环带宽是匹配的说明电容不会小到让负载突变时母线电压跌穿。电容也不是越大越好。容值太大启动充电时间变长动态响应变慢成本也高。这个项目取2200μF是合理的。2.4 负载电阻和系统参数总表最终参数汇总如下仿真模型和后面所有调试都基于这组数据参数符号数值电网电压有效值Us220V / 50Hz直流电压给定Udc*350V额定功率P3kW交流侧电感L3mH串联0.1Ω直流母线电容C2200μF负载电阻R40Ω开关频率fs10kHz仿真步长Ts1μs3. Simulink仿真模型搭建3.1 主电路搭建顺序与模块配置Simulink模型的核心是“主电路 控制电路 测量反馈”三层结构。主电路搭建顺序建议从上到下、从左到右方便后续对信号命名和整体检查。主电路模块交流电源Simscape / Electrical / Specialized Power Systems / Sources / AC Voltage SourcePeak amplitude填311V也可以用220*sqrt(2)Phase填0Frequency填50Hz。交流电感用Series RLC BranchR设0.1ΩL设3e-3HC设inf。H桥用Universal BridgePower Electronics device选IGBT/Diode桥臂数4。这里要注意snubber电路先保留默认值仿真跑稳定之后再考虑去掉初学者一上来就去掉snubber很容易发散。直流电容Series RLC BranchR设infL设0C设2200e-6F勾选初始电压Set initial condition可设为300V以减少启动冲击。负载Series RLC BranchR设40ΩL设0C设inf并联在电容两端。仿真求解器设置也提一句这种带PWM开关的系统建议用discrete离散求解器固定步长1e-6ode4。开关频率10kHz意味着载波周期100μs步长至少要比载波周期小一个数量级1μs才是稳妥的。如果步长太大PWM边缘采样会失真波形上会出现很多毛刺。3.2 直接电流控制滞环实现细节直接电流控制的典型实现是滞环电流控制控制结构是电压外环加电流内环采样直流母线电压Udc与给定350V比较误差进电压PI调节器输出电流幅值指令Im。用PLL我这里直接用理想sin(2π·50·t)与Im相乘得到网侧电流指令 i_ref。采样交流侧电流iL与i_ref比较误差进滞环比较器。滞环比较器输出开关信号驱动H桥。滞环比较器的参数设定是关键。Simulink里用Relay模块实现我设定Switch on point 0.5Switch off point -0.5即滞环带宽度h1A左右。滞环带宽与开关频率是直接矛盾带宽越小电流跟踪精度越高但开关频率会飙升仿真步长不够器就会出现锯齿状的高频毛刺带宽太大电流波形失真THD变大。3kW系统额定峰值电流约19.3A取1A带宽大约对应5%额定电流实际仿真下来开关频率分布在中高频段波形质量还比较理想。开关逻辑上滞环比较器输出S1时导通S1和S4S0时导通S2和S3也就是双极性调制。这么做简单直接但缺点是四个管子开关频率相等、损耗大。工程上也可以做单极性调制用一个滞环比较器控制两个桥臂另一个桥臂用互补方波但仿真对比控制策略时双极性更直观。电压外环PI参数初值我直接给Kp0.3、Ki20。这个参数按3kW和2200μF电容调出来的响应比较稳大约0.3秒左右建立到350V超调在10%以内。注意Im输出必须限幅我限在0~25A防止启动瞬间电流指令过大。3.3 间接电流控制幅相控制实现细节间接电流控制的思路是通过控制整流器交流侧电压基波的幅值m和相位δ间接控制网侧电流。稳态相量关系很简单电网电压Us整流器交流侧基波电压Uc电感压降jωLI三者满足 Uc Us - jωLI。如果希望网侧电流与电网电压同相位单位功率因数那么Uc必然滞后Us一个角度δ arctan(ωLI / Us)调制比 m |Uc| / Udc √(Us² (ωLI)²) / Udc在实际控制里负载功率P可以通过Udc和负载电阻R估算出来P Udc²/R然后 I P/Us代入上式算出δ。这样不需要电流传感器只要电压环维持Udc稳定网侧电流就自动接近正弦且单位功率因数。我搭的控制结构如下采样Udc与350V比较经电压PI输出调制比m限幅0.85~1.0。根据Udc和R估算负载电流 I_est Udc/R注意这里是近似认为Udc≈Us×m且忽略谐波即可。计算 δ arctan(ωL·I_est / Us)ω2π·50。生成调制波 v_ref m·sin(θ - δ)。v_ref与10kHz三角载波比较生成双极性PWM信号驱动H桥。电压PI参数我取Kp0.2、Ki10比直接电流控制慢一些因为整个环路是建立在稳态估算之上的PI太快容易振荡。这里有一个容易踩坑的点调制比m在额定工况下大约等于 Us/Udc 220/350 ≈ 0.63不对这里要区分“调制比”的定义。如果调制波 v_ref m·sin(θ-δ)H桥输出交流电压基波幅值是 m·Udc双极性SPWM线性区要满足基波电压幅值等于|Uc|≈220V需要 m ≈ 220/350 ≈ 0.63。所以m的限幅范围应是0~0.9左右给一点裕量到0.95。很多人在这里直接把m限幅到1导致启动瞬间过调、直流侧过压严重。3.4 两种控制策略的PWM生成对比直接电流控制滞环和间接电流控制SPWM在PWM生成层面有本质区别项目直接电流控制滞环间接电流控制幅相电流反馈需要不需要开关频率不固定随电压/电流变化固定10kHz调制方式滞环比较三角载波比较动态响应快慢谐波频谱分散、宽带集中在开关频率附近对参数依赖低反馈自动修正高依赖L和负载估算从表格能直观看出间接电流控制省了电流传感器但代价是动态性能和鲁棒性。4. 仿真结果对比与波形复盘4.1 启动过程对比先说直接电流控制。给定350V启动瞬间因为电容初始电压设为300V如果设0冲击电流会非常夸张电压约0.25s建立到350V超调约8%随后稳定。网侧电流在启动阶段被限幅在25A以内约60ms后进入正弦稳态。整体波形干净像样的“教科书曲线”。间接电流控制启动就要“挣扎”很多。因为m由电压环缓慢调节而δ是实时根据估算功率算的启动初期Udc较低时估算电流偏小δ偏小电流建立慢电压环需要更长时间把m推上去。实测下来建立时间约0.5~0.6s超调约15%。如果想改善启动性能可以给Udc给定加一个0.2s的斜坡从300V斜坡上升到350V冲击电流和超调都会显著变小。这是我反复试验后觉得最有效的办法。4.2 稳态波形与THD分析稳态下用Simulink的Powergui / FFT Analysis分析网侧电流THD直接电流控制滞环的THD通常在3%~4%左右电流波形正弦度很好但因为开关频率不固定谐波频谱比较分散从几kHz到几十kHz都有分布如果想做EMI滤波器会比较头疼。间接电流控制的THD一般在4%~6%谐波主要集中在10kHz及边带滤波设计更容易。但间接控制对电网频率和电感参数比较敏感如果我把电感从3mH改成4mH不重新调δ的计算系数功率因数会从接近1掉到0.97左右。直流侧电压纹波方面两种策略都工作在100Hz主频纹波实测纹波幅度大约4~5V优于2%的设计指标。4.3 负载突变动态响应对比动态对比我做了两次负载切换实验t0.5s时把负载从40Ω切换到20Ω功率从3kW跳到6kW观察直流电压恢复情况。直接电流控制的表现负载加重的瞬间直流电压跌落约12V然后在大约80ms内恢复到350V。这是因为电流内环快速响应网侧电流迅速上升补充功率。整个过程电流波形始终正弦没有出现明显的振荡。间接电流控制的表现电压跌落约25V恢复时间超过250ms期间还伴随一点低频振荡。原因在于它的功率估算依赖Udc和R负载突变瞬间Udc没来得及变化估算功率跟不上实际功率导致δ偏小、电流建立慢。如果负载不是突变的而是缓慢变化的间接控制的性能会好很多。这个对比很有说服力直接电流控制适合负载频繁突变的场合比如电机驱动、UPS间接电流控制更适合负载基本恒定的场合比如固定电压的直流电源可以用低成本换性能。4.4 直接电流控制变体三角波比较法既然做了直接电流控制我顺便把三角波比较法也跑了一遍因为它同属直接电流控制家族但开关频率固定兼有滞环控制的动态性能和SPWM的定频特性。三角波比较法不需要滞环比较器而是把电流误差送入电流PI调节器输出调制波再与三角载波比较。控制结构电压外环PI输出电流幅值指令Im与滞环法一致。i_ref Im·sin(θ)采样网侧电流iL做差。电流误差进PI我取Kp15、Ki500输出调制波v_m。v_m与10kHz三角波比较生成PWM。实测效果THD约3.5%开关频率固定动态响应比滞环略慢但远快于间接控制。如果你后面要做LCL滤波器设计我更推荐用三角波比较法因为固定开关频率对滤波器调谐友好得多。这种方法本质上是在滞环控制和间接控制之间取了一个平衡点。5. 调试踩坑与常见问题实录5.1 PI参数到底怎么调我见过太多人一上来就纠结PI参数仿真发散就觉得是参数问题其实是顺序搞反了。调参有个铁律先内环后外环先粗调后细调。对于直接电流控制滞环电流内环不需要PI滞环比较器就是“电流控制器”所以只需要调电压外环。电压外环的带宽必须远低于100Hz纹波频率否则电压环会把直流纹波放大成电流指令的畸变。我调的Kp0.3、Ki20在实际操作中可以先给Kp一个试探值比如0.5看Udc是否超调过大如果超调超过20%就降Kp如果稳态误差一直消不掉就加Ki。Ki加太快的表现是Udc出现明显的低频振荡这时候要回退。对于三角波比较法电流内环PI也遵循类似逻辑Kp大了电流环跟得快但容易振荡Ki大了低频增益高但也会带来振荡。初值Kp10~30、Ki100~500都是合理的探索范围。先固定电压环不动手动给一个固定幅值的i_ref信号看电流跟踪波形调好了再接入电压环。5.2 仿真不收敛、波形发散怎么办Simulink里PWM整流器仿真发散八成是下面几个原因第一步长太大。固定步长超过10μs时PWM开关边沿无法准确采样电流环容易跑飞。建议固定步长设为1μs最多不超过2μs。第二代数环。控制回路里如果把采样信号直接和PI输出相乘容易形成代数环。解决办法是在反馈信号处加一个Memory或Unit Delay模块打断代数环。第三Universal Bridge的snubber设置。默认的snubber电阻1e5Ω、电容inf通常没问题如果发散可以先检查snubber是不是被改成了0或inf等极端值。第四电感电容初始条件冲突。电容初始电压为0时启动瞬间电感电流冲击很大可能直接让仿真发散。先把电容初始电压设为300V等模型稳定了再尝试从0启动并且配合软启动。5.3 启动冲击电流怎么压下来说到启动冲击这是PWM整流器很典型的问题。电容初始电压为0时上电瞬间电容相当于短路母线电压环发现电压远低于给定输出饱和电流指令冲到限幅上限网侧电流一个工频周期内可能达到额定电流的十几倍。我的处理顺序是仿真模型中给Udc给定加斜坡0.2s内从300V斜坡到350V。电流指令Im的输出限幅从25A临时降到15A启动完成后再放宽。如果还嫌冲击大可以在直流侧串一个预充电电阻启动后旁路掉——但这会让模型复杂化仿真阶段用斜坡给定就够了。实际工程中软启动是标配因为真实电网不允许这么大的冲击电流但仿真阶段主要抓控制策略对比用斜坡给定可以快速绕开这个与主题无关的麻烦。5.4 滞环控制开关频率不固定的处理滞环控制的“随机频率”特性仿真的时候最明显看开关管的脉冲信号间隔忽长忽短。这是滞环控制的固有特性因为误差在滞环带内摆动的时间取决于电路参数和电压瞬时值。如果你发现开关频率高到离谱几十kHz甚至上百kHz说明滞环带宽设得太小了。把带宽从0.5A加大到1A开关频率会明显下降。反过来如果带宽太大电流波形会出现“台阶感”THD明显恶化。在仿真中找一个折中带宽的快速方法跑一段稳态打开Powergui/FFT Analysis看电流THD和平均开关频率调到THD和频率都能接受即可。5.5 单相系统相位同步的隐患我在仿真里直接用了sin(2π·50·t)作为电流指令的相位参考这在理想情况下没问题但实际系统电网频率会波动、电压会畸变必须用PLL锁相。单相PLL不像三相那么容易常见方案是延时90°构造虚拟正交信号或者用SOGI二阶广义积分器。如果你后面要把模型移植到硬件这一块是绕不开的千万别用理想正弦源偷懒。仿真阶段如果电网电压本身设置的是纯净50Hz正弦直接用sin源没问题可以快速验证控制逻辑。但注意不要让这种简化掩盖了真实系统的复杂度我做硬件在环测试时就因为PLL带宽没调好导致启动时电流指令相位突变整机过流保护动作了好几次。6. 控制策略评估与扩展方向6.1 怎么评估两种策略适不适合你的项目做“控制策略评估”不能只看波形好不好看要回到项目实际约束评估维度直接电流控制滞环间接电流控制幅相三角波比较法电流传感器需要1个不需要需要1个动态响应最快最慢中等开关频率不固定固定固定实现复杂度低低但调参耗时中等抗参数漂移能力强弱强适用场景高性能电源、电机驱动成本敏感、负载恒定场合兼顾性能与EMI设计场合如果项目预算能接受一个电流传感器我优先推荐直接电流控制尤其是三角波比较法因为它在固定开关频率的前提下保留了电流闭环的动态优势后级滤波器和EMI设计都更容易做。如果目标是把成本压到极致、负载又基本恒定间接电流控制值得考虑但要有心理准备把它调稳定所花的时间可能比省一个电流传感器省下的成本还要多。6.2 从单相到三相的思路迁移做完单相PWM整流器你会发现核心控制思想完全可以迁移到三相系统。三相PWM整流器的主流控制策略是电压定向控制VOC本质上是把本文的“直接电流控制”放到dq旋转坐标系里用两个PI调节器分别控制有功电流和无功电流。而单相系统因为没有天然的正交分量需要额外构造虚拟正交信号这让单相dq控制比三相繁琐。反过来间接电流控制的思路在三相里对应的是“基于电网电压定向的幅相控制”实际工程中已经很少用了因为三相VOC的控制效果和鲁棒性全面碾压它。所以我的建议是如果你想在三相系统中做选择直接上VOC单相项目里再体验体验幅相控制的局限即可。6.3 后续可以扩展的仿真方向如果你把这个基础模型跑通之后还想继续深挖我建议以下三个方向第一加LCL滤波器。把单纯的电感L换成LCL在高频段有更好的衰减特性电流谐波进一步下降但LCL的谐振峰需要设计阻尼常见的有无源阻尼和有源阻尼。第二做电网电压畸变/跌落工况。给交流源叠加上5%的5次谐波或者电压骤降50%对比两种控制策略的应对能力。你会发现直接电流控制依然能保持较好的电流质量而间接电流控制的电流波形会明显恶化。第三把控制策略换成dq旋转坐标系下的单相VOC。这需要加入SOGI或延时构造正交分量更适合作为进阶学习内容也能直接对接三相VOC的学习路径。写在最后的一点心得如果让我给第一次做这个仿真的朋友一句忠告我会说先不要急着让两种控制策略在同一台电脑上同时跑出漂亮波形而是先把直接电流控制的电压环PI调到一个你能解释清楚的响应状态再去搭间接电流控制的模型。我在实际调仿真的过程中最大的体会是间接电流控制看起来最省器件调起来反而最费劲因为你把电流控制的“眼睛”蒙上了全靠模型估算精度在撑着。两种方案各有取舍没有绝对优劣关键看你的项目到底要动态性能、成本结构还是简化实现。做完这个对比你对“反馈”和“前馈”这两种控制哲学的理解会比看十篇论文都深刻。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价