ePWM在电机控制、电源控制领域有较大优势。
1.1控制原理
PWM控制技术就是对脉冲宽度进行调制的技术,即通过一系列的脉冲的宽度进行调制,来等效地获得所需要的波形。
PWM是一种对模拟信号电平进行数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。电压或电流源是以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。只要带宽足够,任何模拟值都可以使用PWM进行编码。
图1 PWM波代替正弦半波
把正弦半波分成N等份,可以把正弦半波看成是由N个彼此相连的脉冲序列所组成的波形。这些脉冲宽度相等,但幅值不等,且脉冲顶部是曲线,各脉冲的幅值按正弦规律变化。把上述脉冲序列利用相同数量的等幅而不等宽的矩形脉冲代替,使矩形脉冲的中点和相应的正弦波部分的中点重合,且使矩形脉冲的正弦波部分面积相等,就得到PWM波形。
从图1中可以看到,上图 a 是一个正弦波即模拟信号,b 是一个数字脉冲波形即数字信号。我们知道在计算机系统中只能识别是1和0,对于F28335芯片,要么输出高电平(3.3V),要么输出低电平(0),假如要输出1.5V的电压,那么就必须通过相应的处理,只要保证数字信号脉宽足够就可以使用PWM进行编码,从而输出1.5V 的电压。
PWM控制一般包括两部分电路,一部分是功率开关管组成的功率电路,另一部分是由微控制器组成的驱动开关管的驱动电路。微控制器产生的单周期PWM驱动信号本身很简单,主要包括4个要素,周期、脉宽、脉冲相位、脉冲个数,但是每个周期的脉冲波形的宽度会变化,有时对脉冲的具体相位也有要求,脉冲宽度如何具体调制,这就要根据具体的控制场合以及功率电路进行算法研究。
1.2PWM结构及组成单元
F28335中每个ePWM模块都是一个独立的小模块,这样的体系结构更方便使用。每个ePWM模块由两路ePWM输出组成,分别为ePWMxA和ePWMxB。这一对PWM输出,可以配置成两路独立的输出,共有6对ePWM,因为每个模块可以单独使用,所以也可以认为有12路单路ePWM。除此之外还有6个APWM,这6个通过CAP模块扩展配置,可以独立使用。每一组ePWM模块都包含以下7个模块:时基模块TB、计数比较模块CC、动作模块AQ、死区产生模块DB、PWM斩波模块PC、错误联防模块TZ、时间触发模块ET。如图2所示
图2 PWM组成单元
每组PWM模块主要的输入输出信号如下,如图3所示:
图3 PWM模块结构图
①PWM输出信号(ePWMxA和ePWMxB);PWM输出引脚与GPIO引脚复用,具体配置时需参考GPIO引脚配置。(GPIO0~GPIO11)
②时间基础同步输入(ePWMxSYNCI)和输出(ePWMxSYNCO)信号;同步时钟信号将 ePWM 各个模块的所有单元联系在一起,每个 ePWM 模块都可以根据需要被配置为使用同步信号或忽略它的同步输入成为独立单元。时钟同步输入和输出信号仅由ePWM1引脚产生,ePWM1 的同步输出也与第一个捕获模块(eCAP1)的同步信号相连接。
③错误联防信号(TZ1~TZ6);当外部被控单元符合错误条件时,诸如GBT276等功率器件模块过电压、过电流或过热时,这些输入信号为ePWM模块发出错误警告。每个模块都可以被配置使用或忽略错误联防信号,同时TZ1~TZ6可以设置为GPIO外设的异步输入。
④ADC启动信号(ePWMSOCA 和 ePWMSOCB);每个ePWM模块都有两个ADC转换启动信号,任何一个ePWM模块都可以启动ADC。触发ADC的转换信号的事件由PWM模块中事件触发子模块来配置。
⑤外设总线;外设总线宽度为32位,允许16位和32位数据通过外设总线写入ePWM模块寄存器
每组 ePWM 模块支持以下特点:
1,专用16位时基计数器,控制输出的周期和频率。
2,两个互补对称 PWM 输出(ePWMxA 和 ePWMxB)可以配置如下方式:
--两个独立的单边沿操作的 PWM 输出。
--两个独立的双边沿操作对称的 PWM 输出。
--一个独立的双边沿操作非对称的 PWM 输出。
3,软件实现 PWM 信号异步控制。
4,可编程的相位控制以支持超前或滞后其余的PWM模块
5,逐周期硬件同步相位
6,双边沿延时死区控制。
7,可编程错误联防。
8,产生错误时可以强制PWM输出高电平、低电平或者高阻态。
9,所有的事件都可以触发CPU中断和ADC开始转换信号。
10,高频PWM斩波,用于基于脉冲变压器的门极驱动。
每组PWM模块的结构原理如图4所示:
图4 PWM模块的结构原理图
标签:输出,脉冲,信号,EPwm,模块,ePWM,脉冲调制,PWM From: https://blog.51cto.com/u_16192117/8587065