SPWM算法
SPWM

PWM的全称是Pulse Width Modulation(脉冲宽度调制),它是通过改变输出方波的占空比来改变等效的 输出电压。广泛地用于电动机调速和阀门控制,比如电动车电机调速就是使用这种方式。
所谓SPWM,就是在PWM的基础上改变了调制脉冲方式,脉冲宽度时间占空比按正弦规律排列,这样输出 波形经过适当的滤波可以做到正弦波输出。它广泛地用于直流交流逆变器等,比如高级一些的UPS就是一个例子。 三相SPWM是使用SPWM模拟市电的三相输出,在变频器领域被广泛的采用。
谢谢观看
2.
(1)调制波和载波:曲线①是正弦调制波,其周期决定于需要的调频比kf,振幅值决定于ku,曲线②是采用等 腰三角波的载波,其周期决定于载波频率,振幅不变,等于ku=1时正弦调制波的振幅值,每半周期内所有三角波 的极性均相同(即单极性)。
调制波和载波的交点,决定了SPWM脉冲系列的宽度和脉冲音的间隔宽度,每半周期内的脉冲系列也是单极 性的。
在通用变频器采用的交-直-交变频装置中,前级整流器是不可控的,给逆变器供电的是直流电源,其幅值恒 定。从这点出发,设想把上述一系列等宽不等幅的矩形波用一系列等幅不等宽的矩形脉冲波来替代,只要每个脉 冲波的面积都相等,也应该能实现与正弦波等效的功能,称作正弦脉宽调制(spwm)波形。例如,把正弦半波分作 n等分(n=9),把每一等分的正弦曲线与横轴所包围的面积都用一个与此面积相等的矩形脉冲来代替,矩形脉冲的 幅值不变,各脉冲的中点与正弦波每一等分的中点相重合,这样就形成spwm波形。同样,正弦波的负半周也可 用相同的方法与一系列负脉冲波等效。这种正弦波正、负半周分别用正、负脉冲等效的spwm波形称作单极式 spwm。
SPWM算法的分析与实现

SPWM算法的分析与实现SPWM算法的基本原理是通过对比参考波形和三角波形来生成PWM信号。
参考波形是所需输出的交流电信号的波形,而三角波形是由频率为基准频率的三角波信号生成的。
通过比较两者的幅值,可以确定开关器件的导通和关断时间,从而控制输出电压的波形。
SPWM算法的核心是调制信号的生成。
调制信号是一个频率和幅值可调的信号,用于控制开关器件的导通和关断时间。
常见的调制信号有正弦波、三角波和锯齿波等。
在SPWM算法中,使用三角波作为调制信号,因为三角波信号的频率很容易调节。
1.生成三角波信号:通过计数器和查表法生成频率可调的三角波信号。
计数器的计数范围根据所需输出的频率进行设置。
2.生成参考波形:参考波形是输出交流电信号的理想波形。
可以根据所需输出的波形进行选择,常见的有正弦波、方波等。
参考波形可以通过查表法或者数学函数计算生成。
3.比较参考波形和三角波形:将参考波形和三角波形进行比较,确定开关器件的导通和关断时间。
如果参考波形的幅值大于三角波形的幅值,则开关器件导通;反之,则关断。
4.控制开关器件的导通和关断时间:根据比较结果,控制开关器件导通和关断时间的长度。
导通时间越长,输出电压的幅值越大;导通时间越短,输出电压的幅值越小。
5.输出PWM信号:根据开关器件导通和关断的时间长度,生成PWM信号。
PWM信号控制开关器件的导通和关断,进而控制输出电压的幅值和频率。
在实际的应用中,SPWM算法还需要考虑一些问题。
例如,如何解决开关器件的导通和关断的过渡问题,以及如何进行电流和电压保护等。
此外,为了提高系统的稳定性和抗干扰性,还需要添加滤波器和反馈控制等。
总结起来,SPWM算法是一种常用的电力调制技术,通过调整电压的幅值和频率来控制输出的交流电波形。
它主要通过参考波形和三角波形的比较来生成PWM信号,控制开关器件的导通和关断时间。
在实际应用中,还需要解决过渡问题和进行保护措施,以提高系统的性能和稳定性。
SPWM控制算法原理

谐波、直流电压利用率、开关损耗、跟踪(响应)速度、 不同应用场合的特殊问题
7
2.1 SPWM基本原理
• PWM控制的思想源于通信技术,全控型器件的发 展使得实现PWM控制变得十分容易
• PWM技术的应用十分广泛,它使电力电子装置的 性能大大提高,因此它在电力电子技术的发展史 上占有十分重要的地位
f (t)
f (t)
f (t)
f (t)
d (t)
O
tO
tO
tO
t
a)矩形脉冲
b)三角形脉冲 c)正弦半波脉冲 d)单位脉冲函数
形状不同而冲量相同的各种窄脉冲
9
2.1 SPWM基本原理
具体的实例说明 “面积等效原理”
a)
b)
冲量相等的各种窄脉 冲的响应波形
u (t)-电压窄脉
冲,是电路的输入
i (t)-输出电流,
V1
降低输出交流幅值
V1* V4
V4*
21
2.2 SPWM逆变及其控制方法
• 特定谐波消去法(计算法)
Selected Harmonic Elimination PWM—SHEPWM
这是计算法中一种较有 uo
代表性的方法
Ud
输出电压半周期内,器 件通、断各3次(不包括
O a1
a2 a3
Ud
O
wt
-U d
根据面积等效原理,正弦波还可等效为下图中的PWM 波,而且这种方式在实际应用中更为广泛。
Ud
O -U d
wt
12
2.1 SPWM基本原理
目前中小功率的逆变电路几乎都采用PWM技术 逆变电路是PWM控制技术最为重要的应用场合 PWM逆变电路也可分为电压型和电流型两种,目 前实用的PWM逆变电路几乎都是电压型电路
光伏逆变器几种常用SPWM波形生成算法与数字调制方式

前言:光伏逆变器与普通逆变器的最大区别,直流源的不同。
直流源由原来的蓄电池,或其它直流源换成了PV组件(太阳能电池)。
因PV组件特殊性,与普通逆变器不同的是,光伏逆变器多了一级MPPT(最大功率控制),其它基本相同。
光伏逆变器也可以叫太阳能逆变器,主要种类有,离网的光伏逆变器、并网的光伏逆变器、离并网的光伏逆变器并机的光伏逆变器等等,注意并网与并机逆变器是在控制上是有很大区别的。
当然无论是那一种光伏逆变器。
它的核心技术就是普通逆变器的技术。
整个逆变器控制技术它主要包含了电力电子技术、自动化控制原理、数字控制技术等等,这里数字控制技术是重点。
而SPWM波形生成算法和数字调制方式又是逆变器数字控制的核心点。
不同波形生成算法与调制算法决定了不同的电路和不同的THD(总谐波失真)比如说,单极性调制算法,肯定是用于全桥电路,不能用于半桥。
双极性的调制算法的谐波失真肯定是要高于单极性等等。
本文主要阐述了SPWM的几种常用的波形生产算法与数字调制方式●SPWM的几种常用的波形生产算法SPWM(正弦波脉宽调制)波的产生的常用算法有对称规则算法、不对称规则算法、等面积算法、SVPWM算法。
这四种算法分别有着自己不同的特点。
实验表明采用对称规则采样法产生的SPWM 波形,具有速度快、变频方便等优点。
不对称规则采样法是对称规则的优化版,相对对称规则采样法,采样误差减小,精度有所提高。
等面积法产生的SPWM 波形相对于前两种具有精度更高、输出波形谐波小,对称性好等优点。
SVPWM(电压空间矢量算法),具有直流电压利用率高的优点,在大功率三相逆变器应用较多。
由于本人对此算法还没有深入理解本文暂时省略。
(同时也请教论坛中的师傅们讲一下此算法的原理)▲对称规则采样法如图1所示。
它固定在三角波每一周期的负峰值时找到正弦波上的对应点E ,并用此电压值对三角波进行采样,确定SPWM波形中脉冲的生成时刻。
如图2所示可求得SPWM脉冲宽度t2 和间隙时间t1和t3 。
SPWM与SVPWM的原理、算法以及两者的区别

SPWM与SVPWM的原理、算法以及两者的区别所谓SPWM,就是在PWM的基础上改变了调制脉冲方式,脉冲宽度时间占空比按正弦规律排列,这样输出波形经过适当的滤波可以做到正弦波输出。
它广泛地用于直流交流逆变器等,比如高级一些的UPS就是一个例子。
三相SPWM是使用SPWM模拟市电的三相输出,在变频器领域被广泛的采用。
SPWM(Sinusoidal PWM)法是一种比较成熟的,目前使用较广泛的PWM法。
前面提到的采样控制理论中的一个重要结论:冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同。
SPWM法就是以该结论为理论基础,用脉冲宽度按正弦规律变化而和正弦波等效的PWM波形即SPWM波形控制逆变电路中开关器件的通断,使其输出的脉冲电压的面积与所希望输出的正弦波在相应区间内的面积相等,通过改变调制波的频率和幅值则可调节逆变电路输出电压的频率和幅值。
SVPWM的主要思想是以三相对称正弦波电压供电时三相对称电动机定子理想磁链圆为参考标准,以三相逆变器不同开关模式作适当的切换,从而形成PWM波,以所形成的实际磁链矢量来追踪其准确磁链圆。
传统的SPWM方法从电源的角度出发,以生成一个可调频调压的正弦波电源,而SVPWM方法将逆变系统和异步电机看作一个整体来考虑,模型比较简单,也便于微处理器的实时控制。
spwm与svpwm的原理SPWM原理正弦PWM的信号波为正弦波,就是正弦波等效成一系列等幅不等宽的矩形脉冲波形,其脉冲宽度是由正弦波和三角波自然相交生成的。
正弦波波形产生的方法有很多种,但较典型的主要有:对称规则采样法、不对称规则采样法和平均对称规则采样法三种。
第一种方法由于生成的PWM脉宽偏小,所以变频器的输出电压达不到直流侧电压的倍;第二种方法在一个载波周期里要采样两次正弦波,显然输出电压高于前者,但对于微处理器来说,增加了数据处理量当载波频率较高时,对微机的要求较高;第三种方法应用最为广泛的,它兼顾了前两种方法的优点。
SPWM与SVPWM之比较 (2)

一、 原理比较
(1)、SPWM 正弦 PWM 的信号波为正弦波,就是正弦波等效成一系列等幅不等宽的矩形脉 冲波形,其脉冲宽度是由正弦波和三角波自然相交生成的 .正弦波波形产生的方 法有很多种,但较典型的主要有:对称规则采样法、 不对称规则采样法和平均对称 规则采样法三种.第一种方法由于生成的 PWM 脉宽偏小,所以变频器的输出电压 达不到直流侧电压的倍;第二种方法在一个载波周期里要采样两次正弦波 ,显然 输出电压高于前者,但对于微处理器来说,增加了数据处理量当载波频率较高时, 对微机的要求较高 ; 第三种方法应用最为广泛的 , 它兼顾了前两种方法的优点 . SPWM 虽然可以得到三相正弦电压 ,但直流侧的电压利用率较低 , 最大是直流侧 电压的倍,这是此方法的最大的缺点. (2)SVPWM 电压空间矢量 PWM(SVPWM)的出发点与 SPWM 不同,SPWM 调制是从三相交流电 源出发,其着眼点是如何生成一个可以调压调频的三相对称正弦电源 .而 SVPWM 是将逆变器和电动机看成一个整体 ,用八个基本电压矢量合成期望的电压矢量 , 建立逆变器功率器件的开关状态 ,并依据电机磁链和电压的关系 ,从而实现对电 动机恒磁通变压变频调速 .若忽略定子电阻压降,当定子绕组施加理想的正弦电 压时,由于电压空间矢量为等幅的旋转矢量,故气隙磁通以恒定的角速度旋转,轨 迹为圆形. SVPWM 比 SPWM 的电压利用率高 15%,这是两者最大的区别,但两者并不 是孤立的调制方式,典型的 SVPWM 是一种在 SPWM 的相调制波中加入了零序分量后 进行规则采样得到的结果,因此 SVPWM 有对应 SPWM 的形式.反之,一些性能优越的 SPWM 方式也可以找到对应的 SVPWM 算法,所以两者在谐波的大致方向上是一致的, 只不过 SPWM 易于硬件电路实现,而 SVPWM 更适合于数字化控制系统.
三种SPWM算法源码

三种SPWM算法源码.txt再过几十年,我们来相会,送到火葬场,全部烧成灰,你一堆,我一堆,谁也不认识谁,全部送到农村做化肥。
头文件 spwm.h/***************普通SPWM程序************************/#ifndef _NORMAL_SPWM_H#define _NORMAL_SPWM_H//SPWM 表结构体三项公用一个表typedef struct _SPWM_table{Uint16 TableSize; //表大小即表中所有数据Uint16 SpwmSize; //SPWM表大小volatile Uint16 *p_SPWM_A; //A相指针volatile Uint16 *p_SPWM_B; //B相指针volatile Uint16 *p_SPWM_C; //C相指针Uint16 *p_HeadTable; //表头指针指向SPWM表}SPWM_TABLE;extern SPWM_TABLE g_SPWM_Table; //全局SPWM表void InitSpwm(void);void StartSpwm(void);interrupt void ISR_T1UFINT_NORMAL_FUNC(void);void CalcSpwmWithSym(float32 a/*调制比*/,float32 w_Hz/*调制频率*/,float32 z_Hz/*载波频率*/);void CalcSpwmWithImSym(float32 a/*调制比*/,Uint16 w_Hz/*调制频率*/,Uint32 z_Hz/*载波频率*/);void CalcSpwmWithArea(float32 a/*调制比*/,Uint16 w_Hz/*调制频率*/,Uint32 z_Hz/*载波频率*/);#endif源文件#include "DSP281x.h"#include "SPWM.h"#include "float.h"#include "math.h"#define MAX_BUF 400#define PI 3.1415926Uint16 g_spwm_data[MAX_BUF]; //表的数据存储SPWM_TABLE g_SPWM_Table; //全局SPWM表//SPWM初始化程序void InitSpwm(void){g_SPWM_Table.p_HeadTable = g_spwm_data ; //指向数据表g_SPWM_Table.TableSize = MAX_BUF; //存储表的大小EALLOW;PieVectTable.T1UFINT=&ISR_T1UFINT_NORMAL_FUNC;EDIS;IER|=M_INT2; //开中断2PieCtrlRegs.PIEIER2.bit.INTx6=1; //开下益中断EvaRegs.EVAIFRA.bit.T1UFINT=1; //清楚中断标志PieCtrlRegs.PIEACK.bit.ACK2 = 1; //响应同组中断}void StartSpwm(void){EvaRegs.EVAIMRA.bit.T1UFINT = 1; //打开下益中断}//对称规则采样法void CalcSpwmWithSym(float32 a/*调制比*/,float32 w_Hz/*调制频率*/,float32 z_Hz/*载波频率*/){Uint16 tmp_PR; //T1周期值volatile Uint16 i,n,*p;float32 m;m = z_Hz/w_Hz ; //求出载波比g_SPWM_Table.SpwmSize =(Uint16)m;tmp_PR = g_T1_Clk /(2*z_Hz); //计算出其周期值p=g_SPWM_Table.p_HeadTable; //得到数据表头指针for(i=0;i<(Uint16)m;i++){n=tmp_PR*(0.5-0.5*a*sin((i+0.75)*2*PI/m));*p=n;p++;}}//不对称规则采样法void CalcSpwmWithImSym(float32 a/*调制比*/,Uint16 w_Hz/*调制频率*/,Uint32 z_Hz/*载波频率*/){Uint16 tmp_PR; //T1周期值volatile Uint16 i,n,*p;float32 m;m = z_Hz/w_Hz ; //求出载波比g_SPWM_Table.SpwmSize =(Uint16)m;tmp_PR = g_T1_Clk /(2*z_Hz); //计算出其周期值p=g_SPWM_Table.p_HeadTable; //得到数据表头指针for(i=0;i<(Uint16)m;i++){n=tmp_PR*(0.5-0.25*a*(sin((i+0.25)*2*PI/m)+sin((i+0.75)*2*PI/m)));*p=n;p++;}}//面积法void CalcSpwmWithArea(float32 a/*调制比*/,Uint16 w_Hz/*调制频率*/,Uint32 z_Hz/*载波频率*/){//Uint16 tmp_PR; //T1周期值volatile Uint16 i,n,*p;float32 m,n1,n2;m = z_Hz/w_Hz ; //求出载波比g_SPWM_Table.SpwmSize =(Uint16)m;//tmp_PR = g_T1_Clk /(2*z_Hz); //计算出其周期值p=g_SPWM_Table.p_HeadTable; //得到数据表头指针n=m;m/=2; //除去一半计算半波n1=(float32)g_T1_Clk/(8.0*m*w_Hz); // 计算首相n2=(float32)g_T2_Clk/(8.0*PI*w_Hz)*a;for(i=0;i<n;i++){*p=n1-n2*(cos(i*PI/m)-cos((i+1)*PI/m));p++;}}//中断程序interrupt void ISR_T1UFINT_NORMAL_FUNC(void) {static Uint16 cnt=0 ; //计数EvaRegs.CMPR1 = g_spwm_data[cnt];cnt++;if(cnt>=g_SPWM_Table.SpwmSize)cnt = 0;EvaRegs.EVAIFRA.bit.T1UFINT=1;PieCtrlRegs.PIEACK.bit.ACK2 = 1;EINT;}。
SPWM算法

基于DSP的SPWM不对称规则采样算法的分析与实现摘要:本文以高性能数字信号处理芯片TMS320F2812为核心,设计生成了基于不对称规则采样算法的SPWM波形,键盘输入参数设定调制波频率。
本文首先分析了不对称规则算法的原理,接着设计了基于TMS320F2812芯片的软件设计流程,最后在数字示波器上显示了实验波形,验证了设计的有效性和可行性。
1 引言在三相逆变器中,SPWM(Sinusoidal Pulse Width Modulation)技术是最为先进的控制算法之一,SPWM 波用于控制逆变器功率器件的开关时刻。
SPWM 技术最初是用模拟电路构成三角波和正弦波发生电路,接着用比较器来确定他们的交点,这种实现方法电路复杂,精度较差。
后来人们采用单片机来实现,但由于单片机在硬件计算速度和算法计算量方面的局限,往往无法兼顾计算的精度和速度。
由于DSP 具有强大的运算能力,能够完全兼顾控制的精度和速度,越来越多的应用选择使用DSP。
用DSP 产生多相正弦波有多种方法,如采用D/A 转换器,使用DSP 外接D/A 转换器可以输出频率较高的正弦波,但是这种方法浪费硬件资源,因为需要几相正弦波就需要几个D/A 转换器,而且在每次计算每个D/A 采样点的正弦值时都需要占用CPU,不利于系统整体性能的提高。
TMS320F2812是TI 公司推出的用于工业控制的新型32 位定点DSP,最高主频150MHz,拥有丰富的外设,利用其内部硬件电路---事件管理器模块中的全比较单元,采用SPWM 算法,可以非常方便的产生高精度的、实时性强、可在线调节、带死区控制的三相正弦SPWM 波形,从而实现三相逆变器的SPWM 控制[2]。
2. SPWM 算法原理[3]PWM 技术利用全控型器件的导通和关断把电压变成一定形状的电压脉冲序列,实现变压、变频控制并且消除谐波,而SPWM 算法是以获得正弦电压输出为目标的一种脉宽调制技术。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于DSP的SPWM不对称规则采样算法的分析与实现
摘要:本文以高性能数字信号处理芯片TMS320F2812为核心,设计生成了基于不对称规则采样算法的SPWM波形,键盘输入参数设定调制波频率。
本文首先分析了不对称规则算法的原理,接着设计了基于TMS320F2812芯片的软件设计流程,最后在数字示波器上显示了实验波形,验证了设计的有效性和可行性。
1 引言
在三相逆变器中,SPWM(Sinusoidal Pulse Width Modulation)技术是最为先进的控制算法之一,SPWM 波用于控制逆变器功率器件的开关时刻。
SPWM 技术最初是用模拟电路构成三角波和正弦波发生电路,接着用比较器来确定他们的交点,这种实现方法电路复杂,精度较差。
后来人们采用单片机来实现,但由于单片机在硬件计算速度和算法计算量方面的局限,往往无法兼顾计算的精度和速度。
由于DSP 具有强大的运算能力,能够完全兼顾控制的精度和速度,越来越多的应用选择使用DSP。
用DSP 产生多相正弦波有多种方法,如采用D/A 转换器,使用DSP 外接D/A 转换器可以输出频率较高的正弦波,但是这种方法浪费硬件资源,因为需要几相正弦波就需要几个D/A 转换器,而且在每次计算每个D/A 采样点的正弦值时都需要占用CPU,不利于系统整体性能的提高。
TMS320F2812是TI 公司推出的用于工业控制的新型32 位定点DSP,最高主频150MHz,拥有丰富的外设,利用其内部硬件电路---事件管理器模块中的全比较单元,采用SPWM 算法,可以非常方便的产生高精度的、实时性强、可在线调节、带死区控制的三相正弦SPWM 波形,从而实现三相逆变器的SPWM 控制[2]。
2. SPWM 算法原理[3]
PWM 技术利用全控型器件的导通和关断把电压变成一定形状的电压脉冲序列,实现变压、变频控制并且消除谐波,而SPWM 算法是以获得正弦电压输出为目标的一种脉宽调制技术。
为了得到正弦波,需要输出一组连续的幅值相等而宽度不相等的矩形波,实现过程为:正弦调制波与三角载波相交,交点产生控制功率开关器件的信号,经相应驱动电路来控制功率开关器件的通断,从而得到一系列等幅而且脉冲宽度正比于对应区间正弦波曲线函数值的矩形脉冲,即SPWM 波形。
用软件方式实现SPWM 的算法包括:自然采样法,规则采样法(对称规则采样法,不对称规则采样法)。
自然采样法在计算SPWM 波的脉宽时要解超越方程,不适合用于实时控制。
在实际控制应用中,为减少谐波分量,多采用不对称规则采样法(如图1 所示)。
实践证明,不对称规则采样法所形成的阶梯波比对称规则采样法更接近于正弦波,特别是当载波比N=3或3 的倍数时,前者的输出电压中不存在偶次谐波分量,其它高次谐振波分量的幅值也较小,并且当逐渐增大调制率,使脉宽调制向输出方波过渡时,采用不对称规则采样,不会像自然采样那样产生基波幅值跳跃的现象。
所谓不对称规则采样法,是指既在三角波的顶点位置又在底点位置对正弦波进行采样,此阶梯波与三角波的交点所确定的脉宽,在一个三角波的周期内的位置是不对称的,如图1 所示。
在这里,采样周期Ts 是三角波周期Tt 的1/2,即Ts=Tt/2。
k1 为偶数时是顶点采样,k2 为奇数时是底点采样。
而非对称规则采样法在一个载波周期里采样两次正弦波数值,该采样值更真实地反映了实际的正弦波数值。
这是单相SPWM 波形生成的数学模型,三相正弦电压彼此相位差2π / 3 ,要用三条相位相差2π / 3的正弦调制波与同一三角形载波来生成三相SPWM 波形,可以推得以下公式:
对于触发时间的求解公式,根据输入调制频率可计算载波比N。
为了增强系统的运行速度,当选定载波比N 后,正弦函数sin(kπ / N)在三角载波各顶点和底点时刻的采样值可先计算制成表格,放入ROM 中,供程序在线运算时调用。
可以根据负载压频U/f 曲线实时计算调制比M值。
由于三相交流输入相位相差2π/ 3,从正弦函数表中查询某一时刻k 值的函数值sin(kπ/ N) ,赋给U 相后,查表指针向前移动2π / 3 ,查得sink(1π /N+2π /3),得到V相,指针再向前移动2π / 3 ,查得sin(k1π / N + 4π / 3) ,得到W 相。
3.DSP 实现不对称规则采样算法的原理
在本文中我们通过TI 公司32 bit 控制器TMS320F2812来实现SPWM 算法。
TMS320F2812的波形发生器属于DSP 芯片的外部事件管理模块,占用CPU 的时间很少,可以方便地生成6路带编程死区和输出极性的PWM 波[2]。
通过对比较单元的寄存器进行适当的设置可以方便地生成所需的SPWM 波。
TMS320F2812有两个事件管理器模块(EVA 或EVB),每个EV 都内含2 个通用定时器,三个全比较单元,死区单元及输出逻辑,事实上一个事件管理器模块就可以生成三相六路SPWM 脉冲波形。
为了产生PWM 输出,通过设定通用定时器T1(我们使用EVA 中的T1)的周期寄存器T1PR,并选择通用定时器T1 处于连续增/减计数模式,以产生SPWM 算法中的对称三角波载波信号。
定时器计数器T1CNT 从0 递增到T1PR,然后再从T1PR 递减到0,循环计数,同时比较寄存器(CMPRx ,x=1、2、3)的值不断地与定时器计数器的值进行比较,当两个值发生匹配后,比较单元的输出信号送入PWM 电路中的对称/非对称波行形发生器,由它产生一路PWM 脉冲信号,再经过死区单元以及输出逻辑后,产生一对具有可编程死区的可以驱动同一桥臂IGBT 的互补信号PWMy,y+1。
当两个功率器件串连放在主电路中组成一个桥臂时,上下两个器件绝对不能同时导通,否则会发生短路。
因此导通上一桥臂的PWM 须互不重叠,这就要求一个器件导通前,另一个器件要完全关闭,所以需要一个延迟的死区时间。
如图2 示,比较单元1、2、3 的对称/非对称波形发生器提供的输入信号PHn(n=1,2,3)作为死区单元的输入,对于每一个输入信号PHn ,死区单元产生两路输出: PHx 和PHx_。
如果死区单元未被使能,那这两路输出的信号是完全相同的;当死区单元使能时,两路输出信号的跳变沿被一段死区时间间隔开。
4.DSP 软件设计
整个程序分为主程序和中断子程序两大部分。
主程序任务是:初始化启动系统后,扫描键盘输入,更新调制波频率fm,根据调制波频率fm计算载波比N 和定时器T1 周期寄存器的值,由负载压频U/f 曲线计算调制比M,并将N 值,M 值等信息显示液晶显示屏上;除主程序外一共开放了三个中断,分别是:
①定时器T1 中断子程序:完成三个比较寄存器(CMPRx ,x=1、2、3)的计算、赋值,用于更新PWM1~PWM6 的占空比。
②定时器T2 周期中断,用于扫描按键,更新调制波频率fm。
③PDPA 中断,用于保护功率模块,一旦PDPA 脚为低便封锁PWM1~PWM6。
主程序流程图与中断子程序流程是程序的主要组成部分,详细见图(3)、图(4)。
5.实验波形及结论
通过键盘设定调制波频率,我们设定为25Hz,用数字示波器测量PWM1/CMP1 引脚,所得实验波形如图5 所示。
从图中可知,PWM 波形的占空比是按正弦规律实时变化的,所得正弦调制波频率也期望值一致,系统同时实现了死区功能。
实践证明,以TMS320F2812为核心基于不对称规则采样算法的SPWM 波的设计是成功的。
该系统具有很好的控制精度和较强的实时响应,实时控制能力。