simulink产生PWM波-PWM Generator模块使用

本文详细介绍了脉冲宽度调制(PWM)的概念、参数,如频率、周期和占空比,以及如何通过STM32单片机的IO口实现模拟电压控制。此外,还讲解了PWMGenerator模块的工作原理和在LED灯控制中的应用,以及如何进行Simulink仿真实验。
摘要由CSDN通过智能技术生成

一、什么是PWM

脉冲宽度调制(PWM),简称脉宽调制,系指借助微处理器数字输出对模拟电路实施控制的一种高效方法,其在从测量、通信至功率控制与转换等多个领域具有广泛应用。

二、PWM的参数

PWM的频率与周期

PWM的频率是指在1秒钟内,信号从高电平到低电平再回到高电平的次数,即一秒钟内PWM的周期数,单位为赫兹(Hz)。
PWM的周期T与频率f之间的关系为:
T=1/f
若频率为50Hz,即一个周期为20毫秒,那么一秒钟内就有50个PWM周期。

占空比

占空比是指在一个脉冲周期内,高电平时间与整个周期时间的比例,单位为百分比(0%-100%)。如下图中所示,周期是脉冲信号的时间,一秒钟内的周期T次数等于频率f。脉宽时间是指高电平时间。
在这里插入图片描述

在上图中,脉宽时间占总周期时间的比例即为占空比。例如,若周期时间为10毫秒,脉宽时间为8毫秒,那么占空比为8/10=80%,这就构成了占空比为80%的脉冲信号。
PWM就是脉冲宽度调制,通过调节占空比就可以调节脉冲宽度。

三、PWM原理

以STM32单片机为例,其输入输出(IO)口能够输出高电平和低电平。假设高电平为5V,低电平为0V,若要输出不同范围的模拟电压,则需利用脉宽调制(PWM)技术。通过调整IO口输出方波的占空比,进而实现数字信号向模拟电压信号的转换。在此过程中,电压以脉冲序列形式加到模拟负载上。接通时,输出高电平1;断开时,输出低电平0。在接通状态下,直流供电输出;在断开状态下,直流供电中断。通过控制接通与断开时间,理论上可以输出任意不大于最大电压值5V的模拟电压。

举例来说,当占空比为50%时,高电平时间占一半,低电平时间占一半。在一定频率下,可得到2.5V的模拟输出电压。当占空比为75%时,得到的电压为3.75V。

总之,在一定频率下,通过调整不同的占空比,便可获得不同大小的输出模拟电压。脉宽调制(PWM)正是基于此原理实现数字信号与模拟信号的转换。

四、PWM Generator模块

从simulink模块库拖入一个PWM Generator模块,其参数配置如下所示:
在这里插入图片描述
PWM Generator模块通过比较载波和占空比来确定输出高波或低波。当占空比大于载波计数器值时,PWM发生器模块输出1,否则输出0。占空比作为模块外部输入,即DC端口。载波则通过模块内部参数Carrier counter设定。
PWM Generator模块支持三种载波计数器来改变PWM输出的初始输出或相位。
1. 上行计数器(Up counter)
PWM输出信号在周期开始时初始化。这张图显示了载波计数器信号和相应的PWM输出。
在这里插入图片描述
2. 下行计数器(Down counter)
PWM输出信号在周期末初始化。这张图显示了载波计数器信号和相应的PWM输出。
在这里插入图片描述
3. 上下行计数器(Up-down counter)
PWM输出信号在周期的中途初始化。这张图显示了载波计数器信号和相应的PWM输出。
在这里插入图片描述

模块其他参数解释

Timer period-定时器周期

当“载波计数器”选择“上行计数器”或“下行计数器”时,“定时器周期(秒)”参数设置为1/f

其中f为开关频率。
以控制LED灯为例,一般人眼睛对于80Hz以上刷新频率则完全没有闪烁感,那么我们平时见到的LED灯,当它的频率大于50Hz的时候,人眼就会产生视觉暂留效果,基本就看不到闪烁了,而是误以为是一个常亮的LED灯。假设f=50HZf的物理意义为LED灯每秒闪烁50次。那么Timer period=1/f=0.02s,即每0.02s闪烁一次。
如果选择“载波计数器”为“上下行计数器”,则“定时器周期(秒)”参数为1/2f
Timer period=1/2f=0.01s

Phase delay (s)-相位延迟(秒)

相位延迟,单位是秒。添加一个相位延迟来改变计数器的初始状态。
值默认为0,非负数。

Sample time-块采样时间

对于连续时间模拟,设置为零。对于离散时间仿真,为了保证生成的信号有足够的分辨率,指定一个小于或等于Tper/10的正值,其中Tper为Timer period(s)
若采用上面的设置Timer period=0.02s,则Sample time可设置为0.002
需要注意的是,模型中各个模块的采样步长必须为模型指定的固定步长的整数倍。
在这里插入图片描述

即这里的固定步长 *n(n=1,10,100)应等于Sample time

在这里插入图片描述

仿真

设定好模块参数后,根据输入占空比的变化就可以得到变化的PWM波。

假设使用PWM波控制LED灯在开关关闭后5秒内亮度逐渐变小最后熄灭。模型搭建如下:

在这里插入图片描述

通过一个倒计时模块,在5S内改变DC的值从1变为 0。
开关由1跳变为0时倒计时开始,每执行一次减法DC减少0.0004,这个值由仿真步长、采样时间Sample time和延时熄灭时间T=5s共同决定。仿真步长为0.002s,5s则需要2500步,Sample time与仿真步长相同,每一个步长执行一次采样,则DC从1到0需要执行2500步,每一步自减1/2500=0.0004。

结果如下:

在这里插入图片描述

五、 参考:

PWM原理及其应用

  • 35
    点赞
  • 73
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

橘蓝

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值