PWM和ADC模块是数字控制电源最重要的两个外设模块,这两个模块是相互配合工作的方式,本文重点讨论一下,两个外设模块相互配合的典型问题,电源输出精度及占空比限制的问题。
一.数字电源主要外设模块及分辨率介绍
在数字电源设计中,功率电路是和模拟电源一样的设计方式,主要的区别是环路控制变到了数字域中了,那么,数字控制首要的是需要把模拟世界的物理量,如输出电压,电流等通过ADC转化到数字域反馈给控制芯片,这些反馈信号就会被芯片的数字补偿器所处理,最简单的情况,如电压模式控制,通过数字补偿器的计算结果去调整PWM模块的占空比,进而控制得到期望的输出电压。
PWM首要的一个功能,就是需要能够产生高频PWM信号,并且具有较高的分辨率,并且能够动态地调整占空比。
图1 PWM模块的时钟系统
图2 边沿对齐模式的PWM周期计算
根据图1和图2,我们很容易理解PGxPER周期寄存器的计算,这个数字对应着PWM周期可以由多少个PWM时钟组成,这里的PWM时钟对应图1中时钟系统的输出信号PGx_clk.PWM分辨率代表着PWM信号宽度的最小改变量。在dsPIC33C中,PWM的分辨率最高可达250ps.
图3 dsPIC33C中的ADC模块结构
从图3中,我们可以看出,dsPIC33C的ADC模块中,包含独立内核的ADC模块,和共享内核的ADC模块,这两种模块在工作方式上有所不同,一般来说,对采样时间延时来说最重要的一些量,如电源反馈信号,会连接到独立内核的ADC模块,而非关键信号可以连接到共享内核ADC模块。
同时,可以看到ADC模块包含相应的参考电压选择电路,及配置ADC内核的时钟的分频电路选择,ADC输出的结果可以送到数字比较器,及过采样滤波器进行处理。
图4 dsPIC33C的独立内核ADC结构
由于开关电源需要反馈的量都是模拟信号,所以需要ADC进行采样转换处理才能使用,如图4是dsPIC33C中的独立转换内核的ADC模块,这些ADC通道可以连接独立的一个采样信号。
图5 dsPIC33C的共享内核ADC结构
共享内核的ADC模块,如图5所示,其输入电压通道可以是多个模拟信号通道,然后按优先级顺序或者指定的顺序去采样及转换。
在数字电源应用中,较高的分辨率,和较高的运行速度是选择ADC的主要角度,ADC的分辨率表示在对应的模拟参考电压范围内,可以产生的离散数字值的个数,可以以ADC的位数表示,也可以由此得到ADC的每一个tick表示的电压变化。在dsPIC33C中,如ADC的位数为12bit,供电参考电压为3.3V,则有4096个离散数字值表示这个模拟电压范围,每一个tick也可以计算出是806uV。
ADC另一个重要的参数,就是采样和转换时间,就是将一个模拟量进行采样并且转换为一个数字值所需要的时间,通常这个速度是以每秒钟可以采样转换的次数来表示,如Msps,在dsPIC33C中,ADC的采样转换时间参数如下图6表示,对于独立内核来说,它的Throughput Rate参数是3.5Msps,那么因此可以计算得到单次转换时间是285ns。
图6 ADC的转换速率参数
ADC的采样速率对正确的复现采样信号非常重要,根据奈奎斯特定律,采样频率必须要大于2倍的输入信号的带宽或者频率,在开关电源领域,一般以10倍以上的信号频率去作为采样频率,以便得到较准确的采样信号。
二.数字控制中PWM和ADC的配合
一般来说,模拟控制对控制量如输出电压可以提供一个较高的控制精度,理论上,输出电压可以调整为任意值,仅仅受限于环路增益,及噪声相关的因素。
在数字控制中,由于受到PWM,ADC等的数字量化影响,其产生一系列有限数目的离散值,正是因为这一点,PWM和ADC的量化对数字控制的稳态性能和动态性能都非常重要。
一般来说,对ADC的要求是,需要它至少满足ADC的分辨率在输出产生的电压变换小于输出电压的允许变化范围,这样才能达到期望的输出电压调整率。
图7 ADC的分辨率需求计算
图8 ADC所需分辨率计算示例
如果希望根据所需要的输出电压精度,去求取一个合适的ADC分辨率位数,可以由图7得到,注意VREF为ADC稳态工作点设定输入电压,根据如图8中的示例,我们可以得到,当希望的输出电压精度为1%时,工作点设为2.6V,理论上需要7位分辨率的ADC即可(此过程大家可以自己思考,此处不详述)。从另一个层面,也可以根据ADC的LSB去判断是否满足输出电压的精度需求。在dsPIC33C中,ADC的LSB是806uV。在如图所示的条件下,VREF稳态工作点为2.6V,输出电压控制精度为1%,输出为12V时,则最大的ADC LSB为26mV, 这显然是足够的。
对于PWM来说,在数字控制中,它产生一系列的离散量占空比输出,对应离散的输出电压值。假设我们期望控制的输出电压不属于这些离散值的任何一个值,那么数字控制器只能让输出离散值占空比在两个或者更多个不同的点之间来回切换,而不是向一个方向调整,如图9所示,在数字控制中,这称之为限制占空比,这是不建议出现的一个现象。那么,怎么避免呢?
图9 限制占空比说明
在实际应用中,一般来说,只要让PWM模块产生的占空比LSB对应的输出电压变化,小于由于ADC模块的LSB电压对应的输出电压变化即可。
另一个方面,随着典型应用及宽禁带器件的应用,开关电源的频率越来越高,甚至达到上MHz,所以在PWM的分辨率一定的情况下,高频下其可调整步数会减小,从这个意义上来说,有必要在高频应用中提高PWM的分辨率,如在dsPIC33C中,高分辨率模式PWM精度为250ps,而PWM普通分辨率为2ns。
当我们采用芯片dsPIC33C时,基于如下图条件,输入电压400V,输出电压48V,频率250k时的情况,
图10 PWM分辨率250ps时的输出精度计算
此时可以计算出反馈输入电压(等效在输出端电压)每一个tick为20.1mV,则输出的精度可以计算得到, -20m/48V=0.083%,而输出PWM对应的每一个tick对应的电压为6.25mV,所以是满足上述分析过程,可以避免限制占空比的问题。
图11 数字支持的模拟反馈方式
最后,再补充一种情况,当PWM的时基及上升沿由数字芯片的PWM模块产生,而PWM脉冲的下降沿由模拟比较器来决定时,而此时参考电压由DAC设定,则这种架构下可以认为PWM的分辨率是无限大的,因为它不取决于PWM模块的数字步长,而取决于模拟比较器的特性。
总结,本文简要探讨了数字控制中两个重要的外设模块,PWM和ADC,主要讨论了其分辨率方面的特性,同时讨论了一种称之为限制占空比的现象及如何根据PWM和ADC的分辨率设定来避免这种现象。