使用PWM控制来实现电压的变化控制
Posted recca
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用PWM控制来实现电压的变化控制相关的知识,希望对你有一定的参考价值。
一、简介
PWM就是Pulse Width Modulation,脉冲宽度调制。
假设一个PWM信号,V = +5V,CLK = 13KHz,Duty = 50%,那么它输出的信号就可以看成是一个+2.5V的直流信号。
二、PWM的分辨率
假设(1)芯片自带的PWM模块分辨率为10bit
(2)PWM信号参数为:Voltage = +5V,CLK = 13KHz,Duty = 50%
分析:
(1)PWM模块的分辨率为10bit,那么它的可以分为1024个等级,所以一个周期可以分为1024个刻度。所以说,每一个刻度对应的电压可以是5V的1/1024,即4.88mV左右。所以可以在0-5V区间内,实现4.88mV的步进。
(2)若PWM的时钟为25MHz的话,其输出的PWM信号最高频率可达24.4KHz左右。
计算过程:分辨率为10bit,那么PWM内部的计数cnt最高就从0-1023,而每次计数的间隔周期是1/25MHz,所以得出PWM信号频率为24.4KHz左右。
(3)也就说,在同一个输入时钟情况下,若要到达同一个电压,分辨率越高,所需要的计数cnt就越多,波形就越精细
三、PWM信号转换成直流信号
PWM信号可以使用RC低通滤波器(如下图所示)来实现将PWM信号转换成等效的直流信号。
RC滤波器的截止频率计算公式为f = 1/(2π×RC),也就是-3dB,换算过来为0.707倍,即输入1V,输出0.707V。 衰减增益的计算公式为 X dB = 20×lg(Au)。其中Au为增益。若增益Au为10^(-3/20),换算过来分别就是0.707倍,-3dB。
原理:PWM信号的正周期会对RC滤波电路中的电容充电,而负周期则是电容对外放电。这样,电容随着PWM信号而充电、放电,从而使电容的电压在PWM信号等效的直流信号附近波动。
接下来,我们使用FilterLab软件来模拟一个特定滤波器的增益曲线:
该低通滤波器的截止频率为48.3Hz,对应的增益曲线如上图所示。当频率为13KHz时候,对应的增益为-46dB左右,也就是10^(-46/20) = 0.005倍左右。
也就是说,我们对一个13KHz的PWM信号滤波,使其成为直流信号,使用该参数的低通滤波器是可以的,其纹波信号会衰减到0.005倍。
四、电路模拟
我们用Multisim软件来进行仿真。需要注意的是时间常数τ=RC会影响电容的充电时间,也就是会影响到达稳点电压的时间。
那么,用LTspice软件进行模拟来得到更精细的波形,对滤波后的波形放大来看,可以发现其纹波是比较小的。之所以有纹波,是因为RC滤波器的截止频率不够低,滤不掉所有的噪声。
以上是关于使用PWM控制来实现电压的变化控制的主要内容,如果未能解决你的问题,请参考以下文章
怎样利用51单片机发生PWM,通过调节PWM的占空比控制可控硅调节电机转速,使转速平稳?