PWM控制技术+Simulink仿真详解

本文深入探讨了SPWM控制技术的原理与应用,详细讲解了PWM控制的基本概念,包括单极性和双极性PWM调制法,以及如何通过调制信号生成期望的正弦波电压。同时,介绍了电流跟踪PWM控制的直接电流控制方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    想要理解SVPWM控制技术,首先要了解PWM控制技术。

    PWM控制技术就是对脉冲宽度进行调制的技术,通过对一系列脉冲宽度进行调制来等效获得所需要的波形(包括形状和幅值)。

    PWM控制的基本原理:冲量(窄脉冲的面积)相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果(输出响应波形)基本相同,即面积等效原理;用一系列幅值相等,宽度按一定规律变化的高频脉冲序列代替期望的输出波形,多用于逆变电路的控制;

    PWM信号生成的方法有:计算法、调制法、跟踪法,主要对调制法进行详解

调制法:把希望输出的波形作为调制波,把接收调制的信号作为载波,通过信号波的调制得到所期望的PWM波形。

如典型逆变电路:DC-AC,期望逆变后的电压波形为频率50Hz,幅值为直流电压Ud的正弦波,采用PWM控制技术,调制波选为频率为50Hz的正弦波,等腰三角形为载波,用正弦波和载波的交点控制逆变电路四个全控性器件(IGBT)的通断,实现用一系列幅值相等,宽度按所期望的正弦波规律变化的高频脉冲,来等效代替所期望逆变输出的正弦交流电压波形。

上图为典型的单相桥式PWM逆变电路(单极性PWM控制),调制信号为正弦波Ur,载波Uc选为在正弦波正半周为正极性的三角波,在正弦波负半周为负极性的三角波,用正弦波Ur和载波Uc的交点控制IGBT的通断。在正弦波Ur的正半周,VT1保持导通,VT2保持断态,当正弦波Ur大于载波Uc使VT4导通,VT3关断,输出电压为直流电压Uo=Ud(默认负载两端的电压自左向右为正)正弦波Ur小于载波Uc时,VT4关断,VT3导通,输出电压Uo=0;在正弦波Ur的负半周,VT1保持断态,VT2保持通态,当正弦波Ur小于载波Uc时,VT3导通,VT4关断,输出电压为Uo=-Ud;当正弦波Ur大于载波Uc时,VT3关断,VT4导通,输出电压Uo = 0。通过控制四个IGBT的通断,得到的输出电压为幅值为Ud,宽度按正弦波规律变化的脉冲序列,用这样的高频脉冲序列来代替我们期望输出的正弦波电压,就是SPWM控制技术。

调制波Ur和载波Uc的信号,用调制波Ur和载波Uc的交点控制IGBT的通断(调制法)

上图为单极性PWM调制法生成的四路IGBT驱动信号。 

上图为经过PWM控制后逆变电路输出的电压波形,用一系列宽度按我们期望输出的正弦波规律变化的脉冲序列,来等效代替期望输出的正弦波(幅值为100,频率50Hz),通过改变调制信号Ur的频率,就可以获得我们所期望输出正弦波电压的频率,达到变频的目的,例如期望输出的正弦波频率为100,则Ur的频率设为100,输出结果如下图所示:

与单极性PWM控制相对的就是双极性PWM控制,采用双极性PWM控制,在Ur的半个周期内,三角载波Uc不再是单极性的,而是有正有负,PWM波也是有正有负。仍然在调制信号Ur和载波信号Uc的交点控制器件的通断。在Ur的正负半周,对各器件的控制规律相同,当Ur>Uc,VTI,VT4导通,VT2,VT3关断,输出电压Uo=Ud;当Ur<Uc时,VTI,VT4关断,VT2,VT3导通,Uo=-Ud。

上图为双极性PWM控制图

上图为调制波Ur和载波Uc

上图为经过双极性PWM调制生成的四路IGBT驱动信号。

逆变电路输出的电压波形,来代替期望的正弦波,及所说的单相SPWM(正弦波脉宽调制)控制

上图为三相桥式PWM逆变电路

调制波Ur和载波Uc的信号

上图为经双极性PWM调制生成的六路IGBT驱动信号

输出三相电压波形,用一系列幅值相等,宽度按正弦波规律变化的高频脉冲序列来等效代替期望的三相正弦交流电,即所说的三相SPWM(正弦波脉宽调制)控制

电流跟踪PWM控制,以上控制都是期望输出电压为正弦波,未顾及电流的波形;电流跟踪PWM控制直接控制电流,使之在正弦波附近变化。

上图为单相电流跟踪PWM逆变电路

上图为期望输出电流与逆变电路输出电流

上图为电流跟踪控制PWM控制产生的两路IGBT驱动信号

上图为逆变电路输出的电压信号

上述PWM控制的逆变电路Matlab/Simulink仿真模型均已上传,如有需要自行下载:PWM逆变电路Simulink仿真.rar_simulink中控制pwm电压源怎么使用-专业指导文档类资源-CSDN下载

模型及代码工程获取:

 

 

### 实现12个PWM输出的Simulink配置 为了在Simulink中实现12个PWM输出,可以考虑采用多个PWM模块组合的方式或者利用支持多通道PWM功能的处理器。对于具体实现方式取决于所使用的硬件平台。 当使用特定控制器如F28335时,该器件提供了丰富的ePWM资源来满足需求。F28335内部集成有6个ePWM通道,每一路都具备独立控制两条PWM输出的能力(EPWMxA和EPWMxB)。如果仅需单向PWM,则可充分利用这些通道完成多达12路PWM信号的发生[^2]。 针对更通用的情况比如基于STM32系列MCU的应用场景下,可以通过适当扩展外部电路或选用具有更多定时器资源的型号来达成目标。例如STM32F103可通过其高级定时器TIM1/TIM8以及基本定时器产生多组互补型PWM波形,并借助Simulink工具链进行自动化代码部署[^3]。 另外需要注意的是,在构建仿真模型过程中要合理设定求解器参数以确保输出精度。通常建议使PWM载波频率显著高于系统采样率,从而减少因时间离散化带来的误差影响[^4]。 ```matlab % MATLAB/Simulink脚本示例:创建一个多通道PWM发生器子系统 function createMultiChannelPWMSubsystem(numChannels) % 创建一个新的空白模型 new_system('multi_channel_pwm'); % 添加必要的库链接 add_block('simulink/Signal Routing/Mux',... 'multi_channel_pwm/multiPwmOut',... 'Position',[70 90; 120 140]); for i=1:numChannels % 插入PWM模块实例并命名 pwmBlockPath = ['multi_channel_pwm/PWMB',num2str(i)]; add_block(['powerlib/powersystems/fundamentalblocks/sources/Pulse Generator'],... pwmBlockPath,... 'Position',[30 (i*20)+70; 80 (i*20)+120]); % 设置PWM属性 set_param(pwmBlockPath,'Frequency','1kHz',... 'DutyCycle','50%',... 'SampleTime','-1'); % 连接至Mux输入端口之一 line([pwmBlockPath '/1';'multi_channel_pwm/multiPwmOut/' num2str(i)]); end % 完成后保存项目文件 save_system; end ```
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值