ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

单相三相桥式逆变电路SPWM仿真与THD分析实战

单相三相桥式逆变电路SPWM仿真与THD分析实战 做逆变器相关项目或课程设计时很多人会卡在同一步教材上单相全桥逆变电路只有四个开关管拓扑结构看起来也很简单但一进入仿真软件就不知道模块怎么选、参数怎么设、波形怎么看。调SPWM参数时波形不是削顶就是凹陷做完FFT分析THD总谐波失真高得离谱又搞不清究竟是滤波参数不对还是控制策略本身选错了。这篇文章围绕 DC-AC 逆变中最基础也最常用的单相桥式逆变电路和三相桥式逆变电路展开从拓扑结构、SPWM 调制原理到 Simulink 建模仿真完整走一遍。内容比较适合电力电子初学者、准备相关课程设计的学生以及需要快速搭一个逆变器仿真原型来验证控制算法的开发人员。读完你至少能掌握三件事桥式逆变电路为什么这么接SPWM 脉冲是怎么生成的在 Simulink 中如何搭建单相和三相逆变模型并分析输出电压波形。1. 逆变电路是什么为什么需要 DC-AC 变换1.1 逆变电路的工程背景DC-AC 逆变电路是一种把直流电变换成交流电的电力电子变换电路。现实中使用场景非常多光伏组件输出的是直流电而家庭电器和电网侧需要的是交流电必须通过逆变器把直流电转成 220V/50Hz 交流电才能使用电动车的车载充电机、储能系统、不间断电源UPS、电机变频驱动等也全都离不开 DC-AC 变换。要理解逆变电路可以和整流电路放在一起对比整流AC-DC把交流电变成直流电常见于各种电源适配器逆变DC-AC把直流电变成交流电是整流的逆过程斩波/DC-DC直流电变成直流电常见于Boost、Buck电路。逆变器需要掌握的内容通常有三个层面第一是拓扑结构即开关管怎么连接成桥式电路第二是控制策略即 PWM 脉冲如何产生、如何控制开关管通断第三是工程实现包括死区时间、滤波器设计、保护电路等。本文重点放在前两个层面工程实现会在最后一节给出建议。1.2 单相全桥逆变电路拓扑与工作过程单相全桥逆变电路由四个开关管组成。开关管通常使用 IGBT 或 MOSFET并且每个开关管都反向并联一个二极管。直流侧接电压源 Vdc负载接在 A、B 两个输出点之间。四个开关管分成两组Q1、Q4 为一组Q2、Q3 为一组。两组开关管交替导通。当 Q1、Q4 导通Q2、Q3 关断时A 点接到正母线B 点接到负母线负载上的电压 Uab 等于 Vdc反过来当 Q2、Q3 导通Q1、Q4 关断时A 点接到负母线B 点接到正母线负载电压 Uab 等于 -Vdc。工作状态可以整理成下面的表工作状态导通开关管输出电压 Uab状态 1Q1、Q4Vdc状态 2Q2、Q3-Vdc禁止状态Q1、Q2 或 Q3、Q4桥臂直通不允许这里必须特别强调一点Q1 和 Q2 不能同时导通Q3 和 Q4 也不能同时导通。否则直流母线会通过同一桥臂的两个开关管形成短路这是电力电子实验中比较危险也最常见的错误。在实际控制中两条互补驱动信号之间必须留出死区时间也就是上下管都关断的一小段间隔防止开关管关断延迟造成直通。当负载是阻感性负载时电流不能突变。某个开关管关断后负载电流需要继续流通这时就要靠反并联的二极管续流。所以在仿真和实际电路中如果只有开关管而没有反并联二极管阻感性负载下的波形会出现很高的尖峰这一点在搭建模型时要注意。单相全桥逆变电路最基本的输出是方波。但方波含有大量低次谐波直接作为电源会带来严重的波形畸变和损耗所以工程上一般不会直接使用这种方波逆变而是采用 PWM 调制让输出电压的平均值按正弦规律变化再经过滤波得到正弦交流电。这就是下一节要讲的 SPWM 技术。1.3 三相桥式逆变电路拓扑与导电方式三相逆变器在电机驱动、三相并网、UPS 等场合非常常见。三相桥式逆变电路由六个开关管组成仍然分为上桥臂和下桥臂输出端为 U、V、W 三相。从结构上看可以把它理解为三个半桥电路共用同一条直流母线每个桥臂的上下两个开关管互补导通。三相桥式逆变电路有两种常见的导电方式120°导电方式每个开关管导通 120°任意时刻只有两个开关管导通180°导电方式每个开关管导通 180°任意时刻有三个开关管导通。180°导电方式的直流母线利用率更高因此工程中更常用。以 180°导电方式为例六个开关管的导通顺序如下区间导通开关管0°~60°Q1、Q5、Q660°~120°Q1、Q2、Q6120°~180°Q1、Q2、Q3180°~240°Q2、Q3、Q4240°~300°Q3、Q4、Q5300°~360°Q4、Q5、Q6按这个顺序循环导通就能在负载端得到相位互差 120°的三相交变电压。三相桥式电路输出的相电压和线电压都是阶梯状波形含有一定谐波。为了得到高质量正弦电压工程上同样采用 SPWM 或 SVPWM空间矢量调制控制方式而不是单纯按上表做方波控制。同样要注意的是三相逆变器中任意一个桥臂的上下两个开关管也不能同时导通。实际控制中需要在互补驱动信号中加入死区比如设置 3~5μs 的死区时间具体大小取决于开关管型号。2. SPWM 正弦脉宽调制原理2.1 为什么要用 PWM 而不是直接输出方波PWM 通过控制开关管在一个开关周期内导通时间的长短来改变输出电压的平均值。如果占空比按照正弦规律变化那么输出电压的基波分量就是正弦波较高的谐波分量主要集中分布在载波频率及其整数倍附近用低通滤波器比较容易滤除。这里有一个关键概念调制比 M也叫调制度公式为M 调制波幅值 / 载波幅值当 M ≤ 1 时输出电压基波幅值与 M 近似成正比当 M 1 时进入过调制区输出电压基波增长变慢但低次谐波明显增加波形畸变变大。所以工程调试时一般把 M 控制在 0.7~0.95 之间既保证足够的电压输出又避免过调制带来的谐波问题。2.2 单极性 SPWM 与双极性 SPWM 对比SPWM 按照输出电压的电平状态可以分成单极性调制和双极性调制两种。单极性 SPWM 的特点是在输出正半周输出端电压在 Vdc 和 0 之间切换在输出负半周输出电压在 0 和 -Vdc 之间切换。输出电压电平包含 Vdc、0、-Vdc 三种状态。由于输出电压在零附近有更多的低电平区间谐波含量相对较低部分开关管可以工作在较低的开关频率下。双极性 SPWM 的特点是在整个周期内输出电压始终在 Vdc 和 -Vdc 之间切换没有 0 电平状态。所有的开关管都始终处于高频动作状态控制逻辑相对简单但开关损耗和谐波会略高。两种方式的对比如下对比项单极性 SPWM双极性 SPWM输出电压电平Vdc、0、-VdcVdc、-Vdc开关管动作方式部分开关管高频动作部分低频全部开关管高频动作谐波含量较低略高控制复杂度中等简单典型应用单相逆变器单相和三相逆变器在 Simulink 中单相全桥逆变器的 PWM 模块可以直接生成双极性 SPWM也可以通过组合逻辑实现单极性 SPWM。对于入门仿真建议先用双极性 SPWM 跑通整体流程再对比单极性调制的波形差异。2.3 三相 SPWM 的特点三相 SPWM 的核心思想与单相 SPWM 相同区别在于需要三路互差 120° 的正弦调制波并且共用同一个三角载波。每路正弦调制波与三角载波比较生成对应桥臂上管的驱动信号下管的驱动信号则是上管信号的互补信号同时加入死区。在 Simulink 中三相 SPWM 可以使用专门的 PWM Generator 模块选择“Three-phase bridge (6 pulses)”模式内部直接生成三路调制波也可以把三路调制波从外部输入方便以后做闭环控制时动态调整调制度和相位。载波频率的选择对输出波形影响很大载波频率越高谐波频率越高滤波越容易但开关损耗也越大载波频率越低开关损耗小但低次谐波含量增加滤波器体积变大。仿真中一般先取 5kHz~20kHz 观察波形最终硬件实现时再根据开关器件类型和散热条件综合决定。3. 仿真环境与工具准备3.1 仿真工具如何选择做逆变电路仿真可选工具比较多简单做个对比工具特点适用场景MATLAB/Simulink自带 Simscape Electrical 电力电子库建模快适合控制系统联合仿真课程设计、研究生课题、算法验证Multisim电路级仿真直观适合小规模电路教学单管、半桥、全桥的入门演示PLECS面向电力电子专业仿真速度快支持热分析工业级电力电子设计PSIM电力电子和电机控制常用仿真速度快电机驱动、开关电源个人建议优先使用 MATLAB/Simulink。原因有二一是 Simscape Electrical 模块库中可以直接使用 Universal Bridge、PWM Generator 等封装模块不需要自己搭建开关管驱动电路二是后期做电压电流双闭环控制、SVPWM 调制、并网控制时Simulink 的生态最完整。本文后续的仿真步骤以 MATLAB/Simulink 为例。版本以你电脑上实际安装的为准不同版本的模块名称和参数位置可能会略有差异但总体操作思路一致。3.2 Simulink 中逆变器建模需要哪些模块在 Simulink 中搭建逆变电路主要用到下面这些模块模块名称在库中的位置作用DC Voltage SourceSimscape / Electrical / Specialized Power Systems / Sources提供直流母线电压Universal BridgeSimscape / Electrical / Specialized Power Systems / Power Electronics作为单相或三相桥式开关电路PWM Generator (2-level bridge)Simscape / Electrical / Specialized Power Systems / Control生成 SPWM 驱动脉冲Series RLC BranchSimscape / Electrical / Specialized Power Systems / Elements作为阻感负载或滤波器件powerguiSimscape / Electrical / Specialized Power Systems电力电子仿真必须的求解环境ScopeSimulink / Sinks观察波形这里特别提醒如果模型中包含任何 Simscape Electrical 的电气模块就必须在模型中放置 powergui 模块否则仿真无法运行。3.3 仿真前电路参数设计为了后续波形分析有明确目标这里给出一组仿真参数。这些参数不是唯一取值实际硬件电路还需要根据耐压、电流、散热重新计算。参数单相逆变三相逆变直流母线电压400V600V输出基波频率50Hz50Hz载波频率10kHz10kHz负载电阻10Ω每相 10Ω负载电感5mH每相 5mH调制度 M0.80.8单相 220V 交流电压的峰值约为 311V考虑开关管压降、滤波电感和调制度限制直流母线取 400V 是常见做法。三相 380V 交流系统母线电压一般取 500~600V 范围仿真中取 600V 比较方便分析。4. 单相全桥逆变电路 Simulink 仿真实操4.1 新建模型与添加模块打开 MATLAB在主页点击“Simulink”选择“Blank Model”新建一个模型保存为single_phase_inverter.slx。然后打开库浏览器按下面的顺序添加模块添加powergui模块添加DC Voltage Source参数设置为 400V添加Universal Bridge添加PWM Generator (2-level bridge)添加Series RLC Branch作为负载添加两个Scope一个观察 PWM 输出一个观察负载电压和电流。4.2 设置核心模块参数Universal Bridge 的参数设置是关键。双击模块打开参数窗口按下面的配置修改Number of bridge arms选择2 arms对应单相全桥的四个开关管Port configuration选择ABC或A B C输出方式Power switching device选择IGBT / DiodesSnubber resistance可以设置为inf即不添加吸收电路先看理想波形。PWM Generator 参数设置Generator mode选择Single-phase bridge (4 pulses)注意不同版本可能显示为Two bridge arms (4 pulses)Carrier frequency设置为10000Hz调制波生成方式可以先选择内部生成设置 Modulation index 0.8Frequency of output voltage 50HzDead time留空或设为 0先不加入死区验证基本逻辑。负载参数设置Series RLC Branch 的 Branch type 选择RLResistance10ΩInductance5mH。连接方式DC 电压源正极接 Universal Bridge 的正端负极接负端Universal Bridge 的交流输出端 A、B 分别接到负载两端。4.3 运行仿真与波形观察设置好参数后点击运行按钮。仿真默认时间可能是 10 秒这个时间对于 50Hz 波形来说太长建议把仿真停止时间改成 0.06s也就是三个工频周期左右。打开 Scope 观察波形预期看到PWM 输出端是一个宽度变化的高频矩形波脉冲宽度按正弦规律变化负载电流经过电感滤波后已经比较接近正弦波负载电压仍然是 PWM 波形但电压平均值按正弦规律变化。这里有一个初学者容易迷惑的点直接看桥臂输出电压时看到的是高频 PWM 方波而不是光滑正弦波。不要以为仿真错了这正是 SPWM 调制的特点。只有在加入 LC 或 LCL 滤波器之后负载端电压才会变成接近正弦的平滑波形。如果希望进一步验证“滤波后是正弦波”可以在负载前加入 LC 滤波器。初值可取 L 3mHC 10μF再观察负载电压波形应该能看到明显的正弦化效果。4.4 FFT 与 THD 谐波分析对于逆变器来说光看波形还不够通常还要分析 THD。Simulink 中可以用 powergui 模块自带的 FFT 分析工具。操作步骤双击powergui模块选择FFT Analysis在FFT window中设置开始时间和周期数选择要分析的信号比如负载电压点击 Display 查看频谱和 THD 数据。如果使用 SPWM 且调制度 M 0.8输出电压频谱中基波 50Hz 分量应该是最高的谐波主要分布在载波频率 10kHz 及其倍数附近。低频段如果出现明显谐波需要检查调制波频率和调制度设置是否正确。也可以写一段 MATLAB 脚本对保存到工作区的波形数据做 FFT下面是常见的分析思路% 对采样后的输出电压做 FFT 谐波分析 fsample 100e3; % 采样率需要大于 2 倍载波频率 L length(vout); % 信号长度 NFFT 2^nextpow2(L); % FFT 点数 Y fft(vout, NFFT); % FFT 计算 f fsample / 2 * linspace(0, 1, NFFT/2 1); % 单边幅值谱 mag 2 * abs(Y(1:NFFT/2 1)) / L; % 找到 50Hz 基波位置 [~, idx_fund] min(abs(f - 50)); fund_mag mag(idx_fund); % 计算前 40 次谐波的 THD h_idx find(mod(f(idx_fund:end), 50) 0 f(idx_fund:end) 50 * 40); harm_mag mag(idx_fund h_idx(2:end) - 1); THD sqrt(sum(harm_mag.^2)) / fund_mag * 100; fprintf(基波幅值: %.2f V, THD: %.2f %%\n, fund_mag, THD);这段脚本不是唯一写法需要根据信号长度和采样率做调整但可以作为分析 THD 的一个参考模板。5. 三相桥式逆变电路 Simulink 仿真实操5.1 三相模型搭建三相桥式逆变电路的仿真模型与单相类似但绕组数量和 PWM 通道数量不同。新建一个模型保存为three_phase_inverter.slx然后添加模块powergui;DC Voltage Source设为 600VUniversal Bridge桥臂数量选择3 armsPWM Generator (2-level bridge)模式选择Three-phase bridge (6 pulses)三相负载可以使用三个Series RLC Branch星形连接也可以使用 Simscape 库中的Three-Phase Series RL Branch两个Scope分别观察 PWM 脉冲和三相输出电压电流。Universal Bridge 的Power switching device仍然选IGBT / Diodes。PWM Generator 设置中载波频率取 10kHz调制指数取 0.8输出频率取 50Hz输出电压相位取 0°。三相负载采用星形连接时三个负载的一端分别接 U、V、W另一端接在一起形成中性点。5.2 用 MATLAB 脚本理解三相 SPWM 脉冲生成在 Simulink 中PWM Generator 模块已经帮你封装好了 SPWM 生成逻辑。为了更直观地理解三路脉冲是怎么来的可以用 MATLAB 脚本生成并绘制三相 SPWM 波形。脚本如下% 文件: three_phase_spwm_demo.m fs 20000; % 载波频率 20kHz f0 50; % 调制波频率 50Hz M 0.8; % 调制度 Tsim 0.06; % 仿真时长 dt 1/fs/20; % 仿真步长 t 0:dt:Tsim; % 幅值为 -1~1 的对称三角载波 carrier sawtooth(2*pi*fs*t, 0.5); % 三相对称正弦调制波相位互差 120° va M * sin(2*pi*f0*t); vb M * sin(2*pi*f0*t - 2*pi/3); vc M * sin(2*pi*f0*t 2*pi/3); % 比较生成上桥臂 PWM 脉冲 pa double(va carrier); pb double(vb carrier); pc double(vc carrier); % 绘制波形 subplot(4,1,1); plot(t, va, r, t, vb, b, t, vc, g, t, carrier, k); grid on; ylabel(调制波/载波); legend(Va,Vb,Vc,载波); subplot(4,1,2); plot(t, pa); ylim([-0.2 1.2]); ylabel(U相PWM); grid on; subplot(4,1,3); plot(t, pb); ylim([-0.2 1.2]); ylabel(V相PWM); grid on; subplot(4,1,4); plot(t, pc); ylim([-0.2 1.2]); ylabel(W相PWM); grid on;运行这段脚本后可以看到三路 PWM 脉冲宽度分别跟随三相互差 120° 的正弦波变化。实际工程中上管和下管需要互补信号并且要插入死区时间这里只展示上管脉冲的生成原理。5.3 三相仿真结果与线电压相电压分析三相模型搭好并运行后Scope 中预期观察到的现象是三路桥臂输出电压都是等幅高频 PWM 脉冲脉冲宽度按正弦规律变化U、V、W 三相的 PWM 脉冲形状相同但整体相位互差 120°阻感负载下的三相电流是比较平滑的正弦波相位互差 120°负载端线电压也是 PWM 波形它在任意时刻的电平值是开关状态决定的不再是简单两电平。对于三相桥式逆变器通常需要同时观察相电压和线电压相电压U 相与中性点之间的电压线电压U 相与 V 相之间的电压等于两相电压之差。在 SPWM 调制下线电压的 PWM 脉冲数会比相电压更密谐波分布也更复杂。分析三相输出质量时一般以相电流或经过滤波后的相电压作为 THD 分析对象。6. 仿真常见问题与排查思路仿真过程中遇到的问题很多下面整理了电力电子仿真中最常见的几类基本覆盖单相和三相逆变器仿真的大部分坑点。问题现象常见原因解决思路仿真速度极慢仿真步长过小、示波器存储点数过多、载波频率过高调大固定步长缩短仿真时间降低载波频率或减少数据点数输出电压波形削顶调制度 M 大于 1进入过调制区把 M 降到 0.9 以下输出电压幅值整体偏低直流母线电压不足或调制度设置太小适当提高 Vdc 或增大 M波形出现大量尖峰毛刺阻感负载没有续流二极管、步长太大检查 Universal Bridge 是否含有反并联二极管减小步长仿真报错提示缺少 powergui电气模型中必须含 powergui 模块从模块库拖入 powergui 到模型中上下桥臂直通烧毁PWM 互补信号没有死区时间在 PWM Generator 中设置死区硬件中加 RC 延时或专用驱动芯片仿真发散或不收敛初始条件不合理、步长过大、存在理想电压源直接并联电感设置合理初始值减小步长检查电路拓扑THD 过高滤波器参数不合适、载波频率过低、调制方式选择不当优化 LC/LCL 参数提高载波频率必要时换 SVPWM关于仿真速度很多初学者在 Multisim 或其他电路仿真软件中也会遇到。仿真速度慢不一定代表电脑性能差更多是因为仿真步长太小或者示波器保存了太多采样点。建议把仿真步长设置为固定步长比如 1μs 或更合理的时间不要追求过小的步长示波器的采样点数也可以通过 Decimation 参数降低。仿真波形趋势正确就足够了。如果遇到“PWM 波形看起来不对输出根本不是正弦包络”的问题可以按这样的顺序排查先确认 PWM Generator 的模式是不是对应桥臂数确认调制度 M 是否在 0~1 之间使用 Scope 同时观察调制波、载波和输出 PWM确认比较关系确认负载和直流电源参数是否合理把死区暂时设为 0排除死区设置造成的波形异常。7. 工程实践建议7.1 死区时间不是越小越好仿真中为了简化可以把死区设为 0但实际硬件中必须加入死区。死区时间过短开关管关断延迟可能导致桥臂直通死区时间过长输出电压会产生明显的低次谐波波形畸变加剧。一般来说IGBT 的死区时间取 2~5μsMOSFET 的死区时间取 0.1~1μs具体以数据手册中的关断延迟和下降时间为准。实际调试时可以在保证可靠性的前提下尽量减小死区。7.2 滤波器参数需要综合整定SPWM 逆变器要得到高质量正弦波滤波器设计很重要。常见结构有 LC 滤波器和 LCL 滤波器。LC 滤波器结构简单适合单相或小功率场合LCL 滤波器对高频谐波衰减更明显但存在谐振峰需要加阻尼电阻或有源阻尼。LC 滤波器的谐振频率一般选在基波频率的 10 倍以上、载波频率的 1/10 左右避免谐振点与主要谐波频率重合。仿真时可以先用 L 3mH、C 10μF 这样的初值跑通再用 FFT 分析频谱观察 THD 情况后继续调整。滤波电感越大滤波效果越好但电感上的压降和体积重量也会增加滤波电容越大无功损耗越大。所以滤波器参数需要在体积、损耗、THD 之间做取舍。7.3 从仿真到硬件要留足安全余量仿真中的 IGBT 或 MOSFET 是理想模型不考虑导通压降、开关时间、热阻等因素。实际硬件设计时至少要额外关注开关管的电压电流应力至少留 1.5~2 倍安全裕量直流母线需要大容量的母线电容吸收开关动作产生的高频纹波驱动电路要使用隔离电源驱动信号要加栅极电阻控制开关速度高压实验前先在小电压平台上验证控制逻辑和死区设置示波器探头和测量设备要满足电压隔离要求避免触电。此外如果仿真最终要转化为 DSP 或单片机代码建议在 Simulink 中把 PWM 信号生成部分与控制算法分开。先把控制算法仿真调通再用嵌入式 coder 或手写代码实现这样从仿真到硬件的迁移会顺畅很多。8. 总结与下一步学习建议本文从 DC-AC 逆变电路的基本概念出发介绍了单相桥式逆变电路和三相桥式逆变电路的拓扑结构、开关管工作状态以及 SPWM 正弦脉宽调制的核心思想并在 Simulink 中给出了完整的建模仿真思路和波形分析方法。掌握这些内容后你应该能够独立搭建一个单相或三相 SPWM 逆变器仿真模型并能用 FFT 工具分析输出电压的谐波质量。如果接下来想继续深入建议优先学习这几个方向SVPWM 空间矢量调制它是目前三相逆变器中应用最广的调制策略逆变器闭环控制包括电压单闭环和电压电流双闭环LC/LCL 滤波器参数设计方法从原理上理解 THD 为什么偏高并网逆变器的仿真了解逆变器与电网同步时需要考虑的问题。仿真做得再漂亮也要亲手在实验板上点亮第一盏灯。建议先用低压直流电源、四个 MOSFET 和一个简单的 SPWM 单片机程序搭一个最小系统实际感受一下死区、驱动和滤波的作用这个过程比单纯看波形收获更大。如果本文对你有帮助可以收藏备用后续再做三相逆变或闭环控制时可以直接参考。
返回列表