赞
踩
本文介绍采用PWM生成正弦波信号的简单方法。
采用PWM生成正弦波信号,本质上是用一个PWM周期对应的平均电压去等效生成正弦信号的电压。设输出的正弦波电压(单极性输出,有一个直流偏置电压)如下图。
公式推导如下:
其中,为PWM开启时间,为PWM周期,为供电电压,为输出正弦信号频率
令,m即调制度,
代入得:
进一步:
对进行离散化,采样频率为,一个周期采样点数,采样序号,则
至此,我们只要确定输出的大小及采样点数,就可以确定输出PWM开启时间。
在使用MCU/DSP进行PWM输出时,通常调整的是CCR(比较捕获寄存器)和ARR(自动重载寄存器),因此,上述等式也可写成:
注意:要想输出平滑的正弦信号,还需要在PWM输出接口加低通滤波器,截至频率即为输出模拟信号频率。
清楚原理,实现就比较简单了。
对于,可将其离散化,做成表格,输出时按表格内容输出即可,matlab代码如下:
- fm=100;
- fs=1000;
- N=fs/fm;
- k=0:1:N;
- y=sin(2*pi*k/N);
- plot(y);
实现过程中只需要将表格中数据按采用频率输出即可(可以用定时器实现),不要忘记在PWM输出端加低通滤波器以平滑输出。
总结,本文介绍了采用PWM生成正弦波信号的简单方法。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。