基于DSP的SPWM控制法

合集下载

基于DSP的SPWM变频调速系统的实现

基于DSP的SPWM变频调速系统的实现

基于DSP的SPWM变频调速系统的实现
翟红存;薛重德;魏昌洲
【期刊名称】《机械与电子》
【年(卷),期】2005(000)011
【摘要】介绍一种基于TMS320F240 DSP芯片实现交流异步电动机变频调速系统的设计方案.用不对称规则采样法产生的SPWM波来控制逆变器,从而实现交流电机的变频调速.
【总页数】3页(P20-22)
【作者】翟红存;薛重德;魏昌洲
【作者单位】南京航空航天大学,江苏,南京,210016;南京航空航天大学,江苏,南京,210016;南京航空航天大学,江苏,南京,210016
【正文语种】中文
【中图分类】TM921.51
【相关文献】
1.基于DSP控制变频调速系统SPWM波形产生方法 [J], 陈芳靖;汪涛
2.基于DSPs的SPWM波调制方法的实现 [J], 王成;叶天晓;张峰
3.基于单片机实现SPWM变频调速系统设计 [J], 黄灿胜;杨秀增
4.基于DSP的交流异步电机SPWM变频调速系统设计 [J], 宋店波;王永生
5.基于DSP的SPWM变频调速系统的分析与设计 [J], 张宏飞;张忠;姜伟东
因版权原因,仅展示原文概要,查看原文内容请购买。

基于DSP的SPWM直接面积等效算法分析

基于DSP的SPWM直接面积等效算法分析

基于DSP的SPWM直接面积等效算法分析
开始的SPWM 生成技术是采用模拟电路构成三角波和正弦波发生电路,用比较器来确定他们的交点。

这种方法电路复杂,精度较差,早已淘汰。

后来人们采用单片机和微机生成SPWM 波,但受硬件计算速度和算法计算量的影响,往往无法兼顾计算的精度和速度。

再后来随着具有强大运算能力的DSP 和一些新算法的出现,这一问题得到了较好地解决。

1 算法的原理
一般SPWM 波形的产生有以下几种方法:自然采样法、规则采样法、低次谐波消去法直接面积等效法等。

其中自然采样法的精度很高,但他求解导通关断点需要解一个超越方程,计算量很大,一般不被采用。

低次谐波消去法计算复杂,只能用查表法,而且这种方法的波形频率和幅值是不可以连续变化的。

因此将主要分析规则采样法,直接面积等效法这两种方法的原理。

规则采样法是从自然采样法演变而来的,他由经过采样的正弦波(实际上是阶梯波)与三角波相交,由交点得出脉冲宽度。

这种方法只在三角波的顶点或底点位置对正弦波采样而形成阶梯波。

其原理如其中:
Tz: 三角载波周期
M: 调制深度(正弦波与三角波幅值比)
t:某采样时刻?
直接面积等效法的基本原理如在
tips:感谢大家的阅读,本文由我司收集整编。

仅供参阅!。

基于DSP的SPWM控制波形生成的一种方法

基于DSP的SPWM控制波形生成的一种方法

基于DSP的SPWM控制波形生成的一种方法
卢慧芬
【期刊名称】《机电工程》
【年(卷),期】2002(019)005
【摘要】介绍利用数字信号处理器TMS320F243产生SPWM波形的方法.该方法的特点是采用查表和在线计算相结合,既能满足一定控制精度要求,又能满足实时控制要求.
【总页数】5页(P30-34)
【作者】卢慧芬
【作者单位】浙江大学,电气工程学院,浙江,杭州,310027
【正文语种】中文
【中图分类】TN911.72;TM787+.2
【相关文献】
1.一种基于CPLD的SPWM控制波形生成方法 [J], 梁中华;肖丹;杨霞
2.制冷机驱动控制器中基于dsPIC的SPWM 高效生成方法 [J], 肖南;刘文其;周皖生;左涛;李令言;陆勤龙;陈宇鹏;陈新民
3.DSP生成SPWM波的一种设计方法 [J], 任小洪;贺映光;方刚
4.一种基于FPGA的SPWM波的实时生成方法 [J], 丁卫东;郭前岗;周西峰
5.一种基于DSP的SPWM波形生成新方法 [J], 胡玉祥;田红芳
因版权原因,仅展示原文概要,查看原文内容请购买。

dspSPWM

dspSPWM

dspSPWM#include "DSP281x_Device.h" // DSP281x Headerfile Include File#include "DSP281x_Examples.h" // DSP281x Examples Include File#include "IQmathLib.h"// Prototype statements for functions found within this file.interrupt void Eva_PDINTA_ISR();interrupt void Evb_PDINTB_ISR();void PWM_Update();void Gpio_select();_iq1 F_Carry,F_Modul;_iq28 PITC; _iq4 T_QUA;_iq F_M,M;Uint32 N,k;struct{Uint32 mHalfPeriod; //载波周期为50us_iq mDuty1;_iq mDuty2;_iq mDuty3;}pwma={271,0,0,0};void main(void){// Step 3. Clear all interrupts and initialize PIE vector table: // Disable CPU interruptsDINT;IER=0x0000;IFR=0x0000;// Step 1. Initialize System Control:// PLL, WatchDog, enable Peripheral Clocks// This example function is found in the DSP281x_SysCtrl.c file.InitSysCtrl();//初始PIE控制寄存器(关闭所有的PIE中断,并清除相应的中断标志)InitPieCtrl();// Initialize the PIE vector table with pointers to the shell Interrupt// Service Routines (ISR).// This will populate the entire table, even if the interrupt// is not used in this example. This is useful for debug purposes.// The shell ISR routines are found in DSP281x_DefaultIsr.c.// This function is found in DSP281x_PieVect.c.InitPieVectTable();// Interrupts that are used in this example are re-mapped to // ISR functions found within this file.EALLOW; // This is needed to write to EALLOW protected registersPieVectTable.PDPINTA=&Eva_PDINTA_ISR;//(功率保护中断)PieVectTable.PDPINTB=&Evb_PDINTB_ISR;EDIS; // This is needed to disable write to EALLOW protected registersPieCtrlRegs.PIEIER1.all |=(M_INT1|M_INT2);//开功率保护中断IER |=M_INT1; //开cpu级中断1// Enable global Interrupts and higher priority real-time debug events:EINT; // Enable Global interrupt INTMERTM; // Enable Global realtime interrupt DBGMwhile (1){//变量初始化k=0;F_Carry=0x40000;//载波频率 Q1格式F_Modul=50; //调制波频率 Q1格式PITC=42166; // Q28格式T_QUA=3750; //T_Carry/4的定时器计数脉冲个数 Q4格式N=F_Carry/ F_Modul; //计算每个调制周期的载波脉冲数Q0格式F_M=188744; //调制度对调制波的比例系数(0.9/50)*2^24=301000 Q24格式M=_IQ24mpyIQX(F_Modul,1,F_M,24);PWM_Update(); //更新PWM占空比函数}}//PWM初始化函数void PWMA_Init(){EvaRegs.EVAIMRA.all=0x0001; //使能PDPINTA功率保护中断EvaRegs.EVAIFRA.all=0xffff; //清除中断悬挂/doc/2a5506827.html,CONA.all=0x8200; //使能PWM,禁止空间矢量状态机//定时器下溢时重装CMPRx和ACTRx寄存器//使能比较操作EvaRegs.GPTCONA.all=0x0000;EvaRegs.ACTRA.all=0x0fff; //极性设置:强迫高EvaRegs.DBTCONA.all=0x09fc; //死去时间 3.84usEvaRegs.T1PR=pwma.mHalfPeriod; //初始化定时器1的周期寄存器EvaRegs.CMPR1=pwma.mHalfPeriod/2;EvaRegs.CMPR2=pwma.mHalfPeriod/2;EvaRegs.CMPR3=pwma.mHalfPeriod/2;EvaRegs.T1CNT=0; //计数器清零EvaRegs.T1CON.all=0x0840; //对称PWM预定标系数为x/1,连续增减计数模式//打开定时器,禁止定时器比较操作}//I/O功能配置void Gpio_select(void){EALLOW;GpioMuxRegs.GPAMUX.all=0x073f; // Configure MUXs as digital I/Os orGpioMuxRegs.GPBMUX.all=0x0000; // peripheral I/OsGpioMuxRegs.GPDMUX.all=0x0001;GpioMuxRegs.GPFMUX.all=0x0000;GpioMuxRegs.GPEMUX.all=0x0000;GpioMuxRegs.GPGMUX.all=0x0000;GpioMuxRegs.GPADIR.all=0xf8ff; // GPIO PORTs as output GpioMuxRegs.GPBDIR.all=0xffff; // GPIO DIR select GPIOs as outputGpioMuxRegs.GPDDIR.all=0x0002;GpioMuxRegs.GPEDIR.all=0xffff;GpioMuxRegs.GPFDIR.all=0xffff;GpioMuxRegs.GPGDIR.all=0x0010;GpioMuxRegs.GPAQUAL.all=0x0000; // Set GPIO input qualifier valuesGpioMuxRegs.GPBQUAL.all=0x0000;GpioMuxRegs.GPDQUAL.all=0x0000;GpioMuxRegs.GPEQUAL.all=0x0000;//GpioMuxRegs.GPFQUAL.all=0x0000;//GpioMuxRegs.GPGQUAL.all=0x0000;GpioDataRegs.GPADAT.all=0x0000; //配置Gpio数据寄存器1为高,0为低GpioDataRegs.GPBDAT.all=0xffff;GpioDataRegs.GPDDAT.all=0xffff;GpioDataRegs.GPEDAT.all=0xffff;GpioDataRegs.GPFDAT.all=0xffff;GpioDataRegs.GPGDAT.all=0xffff;EDIS;}//定时器下溢子函数interrupt void T1UFINT(void){_iq28 Theta1,Theta2,Theta3,Theta4,Theta5,Theta6;_iqTAon1,TAon2,TBon1,TBon2,TCon1,TCon2,TAon,TBon,TCon;_iq Temp1,Temp2,T emp3,Temp4,Temp5,Temp6;Theta1=_IQ28mpyI32(PITC,k);Theta1=_IQ28toIQ(Theta1);Theta1=_IQ24mpyIQX(F_Modul,1,Theta1,24);Theta2=Theta1+_IQ(2.0944); //Theta2=Theta1+2Pi/3 if(Theta2>_IQ(6.28312))Theta2=Theta2-_IQ(6.28312); //减一个周期值Theta3=Theta2+_IQ(2.0944);if(Theta3>_IQ(6.28312))Theta3=Theta3-_IQ(6.28312);Temp1=_IQ(1)+_IQmpy(M,_IQsin(Theta1));TAon1=_IQmpy(_IQ(0.5),Temp1);//TAon1=0.5(1+Msin(Temp1))Temp2=_IQ(1)+_IQmpy(M,_IQsin(Theta2));TBon1=_IQmpy(_IQ(0.5),Temp2);Temp3=_IQ(1)+_IQmpy(M,_IQsin(Theta3));TCon1=_IQmpy(_IQ(0.5),Temp3);k++;if(k>2*N)k=0;else{Theta4=_IQ28mpyI32(PITC,k);Theta4=_IQ28toIQ(Theta1);Theta4=_IQ24mpyIQX(F_Modul,1,Theta1,24);Theta5=Theta1+_IQ(2.0944); //Theta2=Theta1+2Pi/3 if(Theta5>_IQ(6.28312))Theta5=Theta5-_IQ(6.28312); //减一个周期值Theta6=Theta5+_IQ(2.0944);if(Theta6>_IQ(6.28312))Theta6=Theta6-_IQ(6.28312);Temp4=_IQ(1)+_IQmpy(M,_IQsin(Theta4));TAon2=_IQmpy(_IQ(0.5),Temp4);//TAon1=0.5(1+Msin(Temp1))Temp5=_IQ(1)+_IQmpy(M,_IQsin(Theta5));TBon2=_IQmpy(_IQ(0.5),Temp5);Temp6=_IQ(1)+_IQmpy(M,_IQsin(Theta6));TCon2=_IQmpy(_IQ(0.5),Temp6);}TAon=TAon1+TAon2;TBon=TBon1+TBon2;TCon=TCon1+TCon2;pwma.mDuty1=_IQ(1)-TAon;if(pwma.mDuty1>_IQ(1))pwma.mDuty1=_IQ(1);else if(pwma.mDuty1<0)pwma.mDuty1=0;pwma.mDuty2=_IQ(1)-TBon;if(pwma.mDuty2>_IQ(1))pwma.mDuty2=_IQ(1);else if(pwma.mDuty2<0)pwma.mDuty2=0;pwma.mDuty3=_IQ(1)-TAon;if(pwma.mDuty3>_IQ(1))pwma.mDuty3=_IQ(1);else if(pwma.mDuty3<0)pwma.mDuty3=0;EvaRegs.EVAIFRA.all=0x0200; //清除中断标志位PieCtrlRegs.PIEACK.all=PIEACK_GROUP2; //清除应答}//更新PWMA数据void PWM_Update(){volatile Uint32 halfPeriod;volatile int32 temp;halfPeriod=pwma.mHalfPeriod;EvaRegs.T1PR=(Uint16)halfPeriod;temp=_IQmpy((_iq)halfPeriod,pwma.mDuty1); EvaRegs.CMPR1=(Uint16)temp;temp=_IQmpy((_iq)halfPeriod,pwma.mDuty2); EvaRegs.CMPR2=(Uint16)temp;temp=_IQmpy((_iq)halfPeriod,pwma.mDuty3);EvaRegs.CMPR3=(Uint16)temp;}//功率保护中断函数interrupt void Eva_PDINTA_ISR(){}interrupt void Evb_PDINTB_ISR(){}//===================================== ====================================== // No more.//===================================== ===。

基于DSP的二相混合式步进电动机SPWM细分驱动

基于DSP的二相混合式步进电动机SPWM细分驱动

(c)
(d) 图 5 实测绕组电流及反馈电压波形 图 6 为转速 1.5 转/分钟,给定峰值电 流 1A 情况下 A、B 相绕组闭环电流相位对 照波形,可见两路电流是正交的。
图 6 实测 A、B 绕组电流相位波形
7 结论
本文给出了基于 DSP 的二相混合式步 进电动机 SPWM 细分驱动系统的硬件及软 件设计方案。试验表明,电机运行平稳、噪 声低,驱动、控制、保护均可由软件实现。 其硬件电路设计简单、 可靠性高、 通用性强,
mini-step drive in fact. This paper realizes the SPWM drive of two-phase hybrid stepping motor both in hardware and software based on DSP, besides, stator-winding current experimental curves are given out, result has practical significance and practicability. Keywords: hybrid stepping motor; mini-step drive; SPWM
电流闭环采用瞬时电流跟踪控制策略, 即当前周期的控制信号总是要当前电流趋 向参考电流。 如果当前周期的参考电流与采 样电流的偏差小于零, 则立即关断相应的相 主开关, 反之, 则立即开通相应的相主开关, 故又叫 Bang — Bang 控制。它与常用的电 流滞环斩波控制是异曲同工, 从控制效果上 来说, 显然电流跟踪控制更能准确的实现电 流目标值,斩波频率更高,有利于电机的高 效与低噪,是一种较好的解决方案[6]。系统 中 PWM 斩波频率设定为 20kHz 以减少噪 声。

基于DSP的三相SPWM逆变系统的设计

基于DSP的三相SPWM逆变系统的设计
Ab t c :T i p p rd s r e h a i tu t r ft e c i MS 2 F 8 2 o Ia d t e S W M r d c in me o , r d c st r e s r t hs a e e c b s t eb s sr c u e o h p T 3 0 2 1 fT n h P a i c h p o u t t d p o u e h e — o h
交 点 时 刻 控 制 功 率 开 关 器 件 的 通 断 . 种 生 成 S WM 波 这 P 形 的 方 法 称 为 自然 采 样 法 。 这 种 方 法 求 解 复 杂 难 以 在 但 实 时 控 制 中 在 线 计 算 , 而 在 工 程 中 实 际 应 用 不 多 。 本 因
C HEN Xi ,MA Ja g Hu ,YANG h n Xi g I o Hu in a Z e n ,L U Gu i (c olo l tcla dA t a o ,H biU i ri fTc nl y i j 0 10C ia Sh o fEe r a n uo t n ee n esy o eh o g ,Ta i 3 0 3 , h ) c i m i v t o nn n
E a pe o p ia in x m l fAp l t c o
基 于 D P的三相 S WM 逆 变系统 的设计 S P
陈 曦 , 江 华 , 振 兴 , 国 辉 马 杨 柳
( 北 工 业 大 学 电 气 与 自动 化 学 院 , 津 30 3 ) 河 天 0 10
摘 要 : 述 了 T 芯 片 T S 2 F 8 2的 P 描 I M 30 2 1 WM 工作 模 块 及 S WM 的产 生 方 法 , 用事件 管理 器 的全 P 利

基于DSP控制变频调速系统SPWM波形产生方法

基于DSP控制变频调速系统SPWM波形产生方法

基于DSP控制变频调速系统SPWM波形产生方法
陈芳靖;汪涛
【期刊名称】《机电工程技术》
【年(卷),期】2005(034)004
【摘要】本文介绍了数字信号处理器TMS320LF2407的性能特点以及它在变频调速系统中的特殊应用.讨论了用规则采样法产生SPWM波形的原理和方法,用这种方法可以大大扩展电机的调速范围,并给出了详细程序设计的控制框图.
【总页数】4页(P27-29,81)
【作者】陈芳靖;汪涛
【作者单位】河南理工大学,河南,焦作,451400;漯河职业技术学院机电工程系,河南,漯河,462000;漯河职业技术学院机电工程系,河南,漯河,462000
【正文语种】中文
【中图分类】TP274
【相关文献】
1.基于DSP控制的SPWM波形发生器的优化算法 [J], 吴新开;李勇成;蔡翔
2.基于DSP的SPWM控制波形生成的一种方法 [J], 卢慧芬
3.基于DSP产生SPWM波形的软件设计 [J], 薛一哲;马子飞
4.基于DSP的SPWM波形产生算法研究 [J], 叶程; 黄梓瑜; 白琳; 赵松柏; 曾萍; 高文刚
5.基于DSP的SPWM波形产生算法研究 [J], 叶程; 黄梓瑜; 白琳; 赵松柏; 曾萍; 高文刚
因版权原因,仅展示原文概要,查看原文内容请购买。

SPWM算法

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. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第二节正弦波脉宽调制SPWM控制法
1.2.1 正弦波脉宽调制SPWM
逆变器结构
典型的交流-直流-交流逆变器的结构如图2-1-3所示。

图2-1-3:变压变频器主电路结构图
图2-1-3中,单相交流或三相交流供电经非控全波整流,变成单极性直流电压;该直流电压经有源或无源功率因素校正电路PFC(Power Factor Correct)得到直流母线电压 Udc,某些情况下功率因素校正电路可以省略。

逆变器的核心电路是由六个功率开关器件Q1-Q6构成的三相逆变桥,每个桥有上下两个桥臂;上桥臂上端接直流母线电压正端(DC+),下桥臂下端接直流母线参考端(DC-);对于交流异步电机的驱动,为防止直通,上、下桥臂通常设置为互补工作方式:上桥臂导通时,下桥臂截止;下桥臂导通时,上桥臂截止。

三桥臂中间输出接至负载:三相感应电机的UVW输入端。

功率开关器件Q1-Q6可以是晶闸管GTO,双极性功率晶体管BJT,金属氧化膜功率场效应管MOSFET,绝缘栅型双极性功率晶体管IGBT。

IGBT具有开关速度快、承载电流大、耐压高、管耗小等特点,在电源逆变器中得到最为广泛的应用。

对于感性负载(电机),为了保护IGBT,常需加续流二极管D1-D6,用以在开关管关断时形成电流回路。

IGBT通常已与续流二极管封装在一起。

电容C用于能量缓冲,可保持直流母线电压Udc相对稳定。

为了在电机的UVW端线上输入三相平衡的交流电,通常做法是依一定规则用PWM信号PWM1L-PWM3H去控制逆变器的六个开关管的开关状态。

所谓的正弦波SPWM(Sinusoidally PWM)技术,就是用正弦波去调制PWM信号的脉宽,即:功率管的输出为一系列等幅不等宽的矩形脉冲波形,其宽度依正弦波规律变化;对交流输出波形的幅度对称性及相位要求不是非常苛刻的应用来说,PWM信号的频率通常保持不变。

这种控制策略也叫异步控制法,即载波信号的频率独立于调制波频率。

见图2-1-4。

SPWM也叫SWPWM(Sinusoidally Weighted PWM)。

图2-1-4 SPWM波形
图中:Udc --直溜母线电压;
Um -- 正弦波基波的峰值,一般情况下,随t2比例变化;
T,通常为一固定值;
t1 -- PWM信号的周期
pwm
t2 --正弦波基波的周期。

SPWM控制法的实现
SPWM控制法实现起来相对较为简单。

先产生一个在时间与幅度上都离散的单位正弦序列,也叫正弦表,90°,180°,360°皆可,并存储在程序空间里。

这部分工作可借助于其他工具来完成,如Office Excel。

正弦表的角度分辨率由实际应用确定;对于一个完整的电周期(360°), 1024个点能满足大部分应用的需求。

正弦波生成时,有效样本点越多,电压电流谐波越小,效果越好。

确定正弦表长度时,还需考虑的因素有:程序空间的大小,功率开关管的速度(PWM 信号频率/载波频率),PWM 的有效分辨率,调速比等。

正弦波频率f ,PWM 信号频率pwm f ,有效样本点数N 之间的关系如下:
f f N pwm =
式(2-2-1) 应用中,对应正弦波最高频率max f ,如有可能,N 应不小于60。

考虑到连续变频,正弦表长度L 可由下式计算得到:
N L *10>
即: max *10f f L pwm
> 式(2-2-2)
例2-2-1:
一给定SPWM 调速系统,载波频率为10KHz ,最高运行频率为120Hz ,试确定正弦表的长度。

直接代入式(2-2-2)得:
==>120
10*10*10*103max f f L pwm
833 同时由式(2-2-1)得: 83120
10*103===f F N pwm
符合要求。

取L =1024,即正弦表的长度为1024个点。

由于正弦值的范围是-1-1,实际存储的通常是正弦值经比例放大后的数据,对于DSPIC ,可以放大16384(14
2)倍(最高位用于表示极性)。

产生SPWM 正弦波的基本方法是用一组虚拟的三角形波与一个正弦波进行比较(斩波) 。

受制于PWM 的输出方式(边沿对齐),早期的斩波方案较多是采用锯齿形的三角形波。

随着中心对齐的PWM 的输出方式的出现,现在应用较多的是利用虚拟的等腰三角形波与一个正弦波进行比较,如图2-1-5 所示。

其相交的时刻(即交点)来作为开关管“ 开 ”或“ 关 ”
的时刻。

图2-1-5:SPWM波生成方法
图中: t1 –开关管导通;
t2 –开关管截止。

设定图2-1-5表示的是U相电压,结合图 2-1-3,t1 对应开关管Q1导通区间,t2 对应开关管Q1截止区间。

当PWM工作在中间对齐模式(又称连续增减计数模式)时,可产生图2-1-5中的虚拟等腰三角形波。

对应于每一次PWM中断,更新t1。

综前所述,对于任一给定的正弦波频率,正弦波输出大致经以下几个步骤:步骤1:依据V/F曲线,确定调制系数m;
步骤2:依据载波频率确定相位步进值;
步骤3:每一次PWM中断,依据相位步进值,确定正弦表步进值;
步骤4:查正弦表,取正弦值,计算时间t1;
步骤5:更新PWM占空比。

以上我们讨论的是一相正弦波的生成方法。

其他两相正弦波的产生方法相同,只是相位上彼此相差120º,即所谓的三相平衡电。

有效/无效窄脉冲对输出谐波电流有较大的影响,实际应用中应注意窄脉冲的处理(通
常是消除)。

SPWM 正弦波的输出特性
由于施加在电机上的信号是三相平衡的交流电:幅度相同,频率相同,相位相差120º。

在任何时刻,电流总是从两个绕组流进来,经一个绕组流出去,或者从一个绕组流进来,经两个绕组流出去。

显而易见,电机中性点N 电压总为直流母线电压Udc 的一半。

U 相的相电压可表示为: t m U u dc UN ωsin 2= 式(2-2-3)
式中: 目标相电压的角频率为ω;
m 为调制度(0~1); V 相的相电压为:
)32sin(2πω+=
t m U v dc VN 式(2-2-4)
U 、V 间的线电压为:
))32sin(((sin *2πωω+-=-=t t m U v u u dc VN UN UV
不难得到:
))61sin(**23πω+=t m U u dc UV
在满调制(m=1)的情况下,线电压的峰-峰值为: DC u P P UV 23)(=-
也就是说,SPWM 技术的电压利用率只有 86.6 %。

这就降低了系统的效率。

实际应用中,为了提高电压利用率,SPWM 技术通常辅助以三次谐波叠加法,或称为三次谐波注入法。

不管是谐波叠加还是谐波注入法,首先要遵循的一个原则是没有过调制:线电压不失真。

式(2-2-3)、(2-2-4)同乘以 32
,并在相电压上引入三次谐波e (t ),
令 t t e ω3sin 6
1)(=。

我们得到
)3sin 61(sin 3t t U u dc UN ωω+= 式(2-2-5) ))32(3sin 61)32(sin(3
πωπω+++=t t U v dc VN 得到:
)3sin 61)32(sin(3
t t U v dc VN ωπω++= 则 ))6
1sin(**πω+=t m U u dc UV 在满调制(m=1)的情况下,线电压的峰-峰值为:
dc U V U u =
显然,电压利用率变为100%,系统效率得到提高。

这种情况下,虽然得到了提升,并保持不失真。

但由式(2-2-5)看到,相电压由于叠加了三次谐波,出现明显失真。

见图2-1-6。

图2-1-6:三次谐波叠加后的相电压与线电压波形
1.2.2 正弦波脉宽调制SPWM 在DSPIC 上的实现。

相关文档
最新文档