电子说
其实关于PWM脉冲宽度调制讲的最详细的应该在电力电子里面,然而平时用的最多的就是在一些的程序控制里面。
1.PWM定义
脉冲宽度调制(PWM)是一种对模拟信号电平进行数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。电压或电流源是以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。只要带宽足够,任何模拟值都可以使用PWM进行编码。
2.PWM控制的基本原理
理论基础:冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同。冲量指窄脉冲的面积。效果基本相同,是指环节的输出响应波形基本相同。低频段非常接近,仅在高频段略有差异。
3.PWM相关概念
占空比:就是输出的PWM中,高电平保持的时间与该PWM的时钟周期的时间之比。
在很多的控制中,会经常用的占空比,也就是在一个周期内高电平的时间占整个周期的比例。
频率:假设一个PWM的频率是1KHz,那么它的周期就是1ms,如果它是方波的话,占空比就是50%,高电平的时间等于低电平的时间等于0.5ms。如果高电平的时间为200us,那么它的占空比就是20%。
分辨率:最小能达到的值,如8位的PWM,理论的分辨率就是1:255(单斜率), 16位的的PWM理论就是1:65535(单斜率)。
分辨率的意思就是把一个周期的时间分成了多少份。如果是10份,那么占空比的精度就为10%。如果分成1000分,那么占空比的精度就为0.1%。
4.使用单片机产生PWM
一般的单片机输出PWM都会在定时器这部分有介绍,它的基本原理是不变的,只是不同的单片机程序设计起来略有有不同的,但还是大同小异。
51单片机:
在51单片机中,使用一个定时器中断,在中断中设置一个变量,只需要求反就能得到一个方波,这里就不细说了,但很多时候在理论计算上是没有问题的,但是用示波器测试的时候发现与理论相差过大,这边必须要考虑下中断中的语句使用时间。如果定时器中断是10us,那么在51中,单条语句最少运行时间也得需要几us,中断语句过多的话就会出现特变大的误差。
stm32单片机:
32单片机有它固定的PWM输出配置,这里需要明白两个词:自动重装载值和预分频系数。F1单片机的系统频率是72MHz,如果需要的频率是10KHz,预分频系数设置成7199(7200-1);自动重装载值就是上面说的分辨率,最大值为65535(16位)。
占空比的大小是比较值和自动重装载值比值。
全部0条评论
快来发表一下你的评论吧 !