单相桥式PWM逆变电路设计讲解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
指导教师评定成绩:
审定成绩:
重庆邮电大学
自动化学院
综合设计报告
设计题目:单相桥式PWM逆变电路设计
单位(二级学院):自动化学院
学生姓名:梁勇
专业:电气工程与自动化
班级:0830702
学号:07350225
指导教师:罗萍
设计时间:2010年10月
重庆邮电大学自动化学院制
目录
一、课程设计任务 (2)
二、SPWM逆变器的工作原理 (2)
1.工作原理 (3)
2.控制方式 (4)
3.单片机电源与程序下载模块 (7)
4.正弦脉宽调制的调制算法 (8)
5.基于STC系列单片机的SPWM波形实现 (11)
三、总结 (14)
四、心得体会 (15)
五、附录: (17)
1.程序 (17)
2.模拟电路图 (19)
3.电路图 (22)
摘要:
单片机控制逆变电路,以逆变器为主要元件,稳压、稳频输出的电源保护设备。
采用面积等效的SPWM波,又单片机为主导,输出三角波和正弦波再由这两个波相叠加输出spwm波来控制逆变电路的触发,使其把直流编程频率可变的交流电
关键字:单片机逆变电源正弦波脉冲触发
单相桥式PWM逆变电路设计
一、课程设计任务
对单相桥式pwm逆变电路的主电路及控制电路进行设计,参数要求如下:直流电压为12 V,L=1mH,要求频率可调,输出为5V的正弦交流电。
设计要求:1.理论设计:了解掌握单相桥式PWM逆变电路的工作原理,设计单相桥式PWM逆变电路的主电路和控制电路。
包括:
IGBT电流,电压额定的选择
驱动电路的设计
画出完整的主电路原理图和控制原理图
列出主电路所用元器件的明细表
二、SPWM逆变器的工作原理
由于期望的逆变器输出是一个正弦电压波形,可以把一个正弦半波分作N 等分。
然后把每一等分的正弦曲线与横轴所包围的面积都用个与此面积相等的等高矩形脉冲来代替,矩形脉冲的中点与正弦波每一等分的中点重合。
这样,由N 个等幅不等宽的矩形脉冲所组成的波形为正弦的半周等效。
同样,正弦波的负半周也可用相同的方法来等效。
这一系列脉冲波形就是所期望的逆变器输出SPWM波形。
由于各脉冲的幅值相等,所以逆变器可由恒定的直流电源供电,逆变器输出脉冲的幅值就是整流器的输出电压。
当逆变器各开关器件都是在理想状态下工作时,驱动相应开关器件的信号也应为与形状相似的一系列脉冲波形,这是很容易推断出来的。
从理论上讲,这一系列脉冲波形的宽度可以严格地用计算方法求得,作为控制逆变器中各开关器件通断的依据。
但较为实用的办法是引用通信技术中的“调制”这一概念,以所期望的波形(在这里是正弦波)作为调制波(ModulationWave ),而受它调制的信号称为载波(Carrier Wave )。
在SPWM中
常用等腰三角波作为载波,因为等腰三角波是上下宽度线性对称变化的波形,当它与任何一个光滑的曲线相交时,在交点的时刻控制开关器件的通断,即可得到一组等幅而脉冲宽度正比于该曲线函数值的矩形脉冲,这正是SPWM 所需要的结果。
1.工作原理
图2-4是SPWM 变频器的主电路,图中VTl~VT6是逆变器的六个功率开关器件(在这里画的是IGBT),各由一个续流二极管反并联,整个逆变器由恒值直流电压U 供电。
图2-5是它的控制电路,一组三相对称的正弦参考电压信号由参考信号发生器提供,其频率决定逆变器输出的基波频率,应在所要求的输出频率范围内可调。
参考信号的幅值也可在一定范围内变化,决定输出电压的大小。
三角载波信号C U 是共用的,分别与每相参考电压比较后,给出“正”或“零”的饱和输出,产生SPWM 脉冲序列波
,,da db dc U U U 作为逆变器功率开关器件的
驱动控制信号。
主电路
当rU U '/2UN d u U =-时,给V4导通信号,给V1关断信号'/2UN d u U =-给V1(V4)加导通信号时,可能是V1(V4)导通,也可能是VD1(VD4)导通。
d U 和
'WN u 的PWM 波形只有±Ud/2两种电平。
当urU>uc 时,给V1导通信号,给V4关断信号,'/2UN d u U =-。
UV u 波形可由''UN VN u u -得出,当1和6通时,
UV u =d U ,当3和4通时,UV u =-d U ,当1和3或4和6通时,UV u =0。
输出
线电压PWM 波由±Ud 和0三种电平构成负载相电压PWM 波由(±2/3)
d U 、(±1/3) d U 和0共5种电平组成。
防直通的死区时间同一相上下两臂的驱动信号互补,为防止上下臂直通而造成短路,留一小段上下臂都施加关断信号的死区时间。
死区时间的长短主要由开关器件的关断时间决定。
死区时间会给输出的PWM 波带来影响,使其稍稍偏离正弦波。
控制电路
2.控制方式
脉宽调制的控制方式从调制脉冲的极性上看,可分为单极性和双极性之分:参加调制的载波和参考信号的极性不变,称为单极性调制;相反,三角载波信号和正弦波信号具有正负极性,则称为双极性调制。
(1)单极性正弦脉宽调制
单极性正弦脉宽调制用幅值为r U 的参考信号波r U 与幅值为o f ,频率为o f 的三角波c U 比较,产生功率开关信号。
其原理波形如图2-6所示。
图2-6是用单
相正弦波全波整流电压信号与单向三角形载波交截,再通过倒相产生功率开关驱动信号。
参考波频率fr决定了输出频率fo,每半周期的脉冲数P决定于载波频率fc。
即:
P=错误!未找到引用源。
(2-1)
用参考电压信号的幅值Ur,与三角形载波信号的幅值Uc的比值,即调制度m = Ur/Uc,来控制输出电压变化。
当调制度由0~1变化时,脉宽由0~π/p变化,输出电压由0~ E变化。
如果每个脉冲宽度为θ,则输出电压的傅里叶级数展开式为:
(2-2)系数An和Bn由每个脉宽为θ,起始角为α的正脉冲来决定和对应的负脉冲起始角π+α来决定。
如果第j个脉冲的起始角为αj则有
(2-3a)
(2-3b)由式(2-3a)、式(2-3b)可计算输出电压的傅里叶级数的系数
(2-4a)
(2-4b)
单极性正选脉宽调制SPWM原理波形
(2)双极性正弦脉宽调制
双极性正弦脉宽调制原理波形如图2-7所示。
输出电压u0(t)波形在0~2π区间关于中心对称、在0~π区间关于轴对称,其傅里叶级数展开式为
式(2-5)中
输出电压u0(t )可看成是幅值为E ,频率为fo 的方波与幅值为2E 、频率为fc 的负脉冲序列(起点和终点分别为123212,,,...,,p p ααααα-的叠加。
因此
则输出电压为
输出电压基波分量错误!未找到引用源。
为
需要注意的是,从主回路上看,对于双极性调制,由于同一桥臂上的两个开关元件始终轮流交替通断,因此容易引起电源短路,造成环流。
为防止环流,就必须增设延时触发环节,设置死区。
3.单片机电源与程序下载模块
程序下载模块
电源模块
MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的单电源电平转换芯片,使用+5v单电源供电。
主要特点有:符合所有的RS-232C技术标准、只需要单一 +5V电源供电;片载电荷泵具有升压、电压极性反转能力,能够产生+10V 和-10V电压V+、V- ;功耗低,典型供电电流5mA ;内部集成2个RS-232C驱动器;内部集成两个RS-232C接收器。
用78/79系列三端稳压IC来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜。
该系列集成稳压IC型号中的78或79后面的数字代表该三端集成稳压电路的输出电压,如7806表示输出电压为正6V,7909表示输出电压为负9V。
4. 正弦脉宽调制的调制算法
三角波变化一个周期,它与正弦波有两个交点,控制逆变器中开关元件导通和关断各一次。
要准确的生成SPWM波形,就要精确的计算出这两个点的时间。
开关元件导通时间是脉冲宽度,关断时间是脉冲间隙。
正弦波的频率和幅值不同
时,这些时间也不同,但对计算机来说,时间由软件实现,时间的控制由定时器完成,是很方便的,关键在于调制算法。
调制算法主要有自然采样法、规则采样法、等面积法等。
1.自然采样法
按照SPWM控制的基本原理,在正弦波与三角波的交点进行脉冲宽度和间隙的采样,去生成SPWM波形,成为自然采样法。
如图2-8所示
图2-8 自然采样法原理图
2.规则采样法
为使采样法的效果既接近自然采样法,没有过多的复杂运算,又提出了规则采样法。
其出发点是设法使SPWM波形的每个脉冲都与三角波中心线对称。
这样,图2-9中的法。
计算就大大简化了。
图2-9 规则采样法原理图
3.双极性正弦波等面积法
H 正弦波等面积算法的基本原理为:将一个正弦波等分成H,个区段,区段数t
一定是6的整数倍,因为三相正弦波,各项相位互差120 ,要从一相正弦波方便
H越大,地得到其他两相,必须把一个周期分成6的整数倍。
由图2-10可见,t
输出波形越接近正弦波。
在每一个区段,等分成若干个等宽脉冲(N),使这N个等宽脉冲面积等于这一区段正弦波面积。
采用这种方法既可以提高开关频率,改善波形,又可以减少计算新脉冲的数量,节省计算机计算时间。
如图2-10所示
其正弦波面积为
图为SPWM 面积等效法原理示意图
假设所需的输出正弦电压为U0=Umsinωt,式中:Um 为正弦波幅值。
利用面
积等效法正弦波小块面积S1与对应脉冲面积S2相等的原则,将正弦波的正半周
分为N 等分,则每一等分的宽度为兀/N ,计算出半个周期内N 个不同的脉宽值。
相关公式如下:
正弦波S1面积为: 11sin [cos cos ]k m N k m N U k k U tdt N N ωππω--=-⎰
逆变器输入直流电压为UD ,脉冲面积S2与S1相等,即有:
1[cos cos ]m
k D U k k U N N
δππω-=-
所以第k 个区间的脉冲宽度δk
11[cos cos ][cos cos ]m k D U k k M k k U N N N N
δππππωω--=-=- 式中:M 为调制度。
N 为半个周期内的脉冲个数。
综合考虑载波比、输出谐
波等因素,在此N 取60。
由上式计算出的SPWM 脉宽表是一个由窄到宽、再由宽
到窄的60个值的正弦表,将其存入STC 单片机的ROM 中以供调用。
5.基于STC 系列单片机的SPWM 波形实现
由单片机实现SPWM 控制,根据其软件化方法的不同,有如下几种方法:自
然采样法、对称规则法、不对称规则法和面积等效法等。
理论分析发现面积等效
法相对于其它方法而言,谐波较小,对谐波的抑制能力较强。
而且实时控制简单,
利于软件实现。
因此本文采用面积等效法实现SPWM 控制。
STC系列单片机生成SPWM波原理
5.1.STC系列单片机简介
STCl2系列单片机是美国STC公司在8051单片机标准的内核基础上改进推出的一个增强型功能的8051的单片机,从引脚到指令上完全与8051单片机兼容。
最突出的特点就是其具有可编程计数器阵列PCA。
以STCl2C5608AD为例,有四路可编程计数器阵列PCA/PWM。
PCA含有一个特殊的16位定时器,有4个16
位的捕获/比较模块与之相连。
四个模块的公共时间基准由PCA定时器决定,可以通过PCA模式寄存器CMOD SFR的CPSl和CPS0位确定。
每个模块可编程工作在4种模式下:上升/下降沿捕获、软件定时器、高速输出或PWM脉冲输出。
文中SPWM生成功能主要靠PWM脉冲输出模式完成。
图2即为PCA模块脉宽调节PWM 输出模式框图。
在PCA PWM输出模式中,当CLSFR的值小于{EPCnL,CCAPnL}时,输出为低,当PCA CL SFR的值等于或大于{EPCnH,CCAPnH}时,输出为高。
当CL的值由FF 变为00溢出时,{EPCnH,CCAPnH}的内容装载到{EPCnL,CCAPnL}中。
这样就实现了无干扰的更新PWM。
要使能PWM模式,模块CCAPMn寄存器的PWMn和ECOMn 位必须置位。
本文中,SPWM波形是综合使用了模块O的脉宽调节(PWM)模式和模块1的16位软件定时器模式,通过软件中断的形式实现的。
与此同时,STCl2C54lO单片机还具有快速A/D转换功能。
有一个lO位精度、8路通道的A/D转换器。
可以方便的对输入、输出的电压、电流进行监控和显示。
5.2.SPWM波生成方法
利用STC系列单片机产生SPWM波的基本原理是:将载波周期数值赋给PCA 模块l的16位捕获/比较模块寄存器CCAPlH(高8位)和CCAPlL(低8位),PCA 定时器的值CH(高八位)、CL(低八位)与模块捕获寄存器的值相比较,当两者相等时,产生PCA中断。
在中断中,调用模块0的PWM脉宽调节模式,将下一个SPWM波的脉宽通过CCAP0H装载到CCAPOL中,这样就可以实现无干扰的更新PWM。
上图中即为由软件实时计算好的一路单极性SPWM波形的脉宽示意图。
在每个固定的载波周期内,不同脉宽数值组成一个正弦表格的形式。
若选用模块O(P3.7)输出此路SPWM,首先将模块0的PCA模块工作模式寄存器定义为8位PWM模式,将16位计数器定时器CH、CL清零,PCA PWM模式辅助寄存器O清零(保证捕获寄存器EPCOH(高八位)、EPC0L(低八位)固定为零,PWM波比较的数值只与PCA模块0的捕获寄存器CCAPOH(高八位)、CC2APOL(低八位)有关),模块l的捕获寄存器CCAPlH(高八位)、CCAPlL(低八位)送入载波周期的高八位和第八位数值,PCA比较/捕获模块寄存器1(CCAPMl)定义为使能比较功能,允许匹配产生中断。
将第一个脉宽值sin[0]装入CCAP0H,开PCA模块中断及低压检测中断,开总中断,启动PCA计数。
当16位计数器/定时器的数值与模块1中捕获/比较寄存器的数值相等时,产生一个CCF中断;在中断程序中,清中断标志位,重新给模块1的捕获寄存器CCAPlH(高八位)、CCAPlL(低八位)送入载波周期的高八位和第八位数值,将16位计数器定时器CH、CL清零,中断次数i加1,将下一个脉宽数值sin[i]装入CCAPOH以备比较。
同时判断是否到达最大数值N,若是,中断次数i清零,同时将脉宽数sin[i]值送入CCAP0H,完成一个循环。
这样,周而复始,在P3.7引脚上将不断产生随着正弦规律变化的脉宽,从而得到准确的SPWM波。
5.3.软件设计
程序编写采用KeilC51编程语言进行,整个程序由主程序和键盘中断子程序以及PCA中断子程序组成。
主程序在系统初始化后进入SPwM脉宽计算程序,计算相应的脉冲宽度,形成正弦表格,等待中断标志位以响应不同的中断。
由于SPWM波是不断输出的,必须将PCA中断级别设置为最高。
一旦有PCA中断标志位,即转入执行其中断子程序。
图4为PCA中断子程序流程图。
在中断服务程序中,注意CCF1位和CF标志位均由硬件置位,但不能自动清零,必须在中断程序中由软件清零。
与此同时,系统可以响应键盘中断子程序,由键盘控制通过液晶显示屏监控输出电压、电流的变化情况等。
四、实验总结
通过这两个星期的学习,发现了自己的很多不足,自己知识的很多漏洞,看到了自己的实践经验还是比较缺乏,把理论应用到实际物体上的能力还很不足,课程设计开始的时候我们都不知道敢怎么做,从哪里下手,对于理论知识学习不够扎实的我们深感可用的东西太少了,便重拾教材与实验手册,对知识系统而全面进行了梳理,终于熟练掌握了基本理论知识,再在大家的讨论下终于把设计定下来。
过了几个星期的时间,课程设计基本告成,才切身领悟理论和事件是分不开的。
课本上很简单的东西在实际运用中可能就会成为一个比较困难的拦路虎,尽管课程设计是在本学期开始,我们的教材学习完毕,掌握许多知识,但是还有很
多地方理解领悟不到位,由于SPWM控制信号的产生比较复杂,我们查阅很多资料,尝试过用不同方法设计产生,这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在努力下终于迎刃而解。
同时发现了还有很多工具及理论以后亟待学习。
它培养了我们严谨科学的思维,通过它架起理论与实践桥梁。
五、心得体会
通过这次的课程设计,我也深刻的体会到。
好好学习对我们以后做东西重要性,本来很简单的一件事,当我们理解不到位的情况下就会变成一件不小的困难,在这次课程设计里我主要是协助电路的设计和模拟电路的设计,在我们大家共同的努力下我们完成了这次课程设计。
在模拟电路时遇到了一些问题,比如信号不能放大,不能逆变成功,在我们多次实验下我们克服了这些困难,模拟出来了电路图。
参考文献:
【1】《电力电子技术》王兆安黄俊西安机械工业出版社
【2】《Protel2004》神龙工作室北京人民邮电出版社
【3】《Protel DXP 电路设计制版入门与提高》雪茗斋电脑教育研究室人民邮电出版社
【4】《Altium Designer6 电路图设计百例》姜艳波化学工业出版社【5】《电路设计与制板 Protel DXP 典型实例》老虎工作室倪泽峰江中华人民邮电出版社
【6】田健,郭会军,王华民,等大功率IGBT瞬态保护研究
附录:
1.程序
#include <stc12c5620ad.H>
#include <intrins.H>
sbit P10=P1^0;
sbit P11=P1^1;
sbit P12=P1^2;
sbit P32=P3^2; //外中断0
sbit P35=P3^5; //PCA模块1输出口
sbit P37=P3^7; //PCA模块0输出口
int i,j,k=1,a=0;
bit zf=0; //前后半周期标志
unsigned int xdata zkb[60]={252,244,236,229,221,213,206,198,191,184,
177,171,164,158,152,147,141,136,132,127,
123,120,117,114,111,109,108,106,106,105,
105,106,106,108,109,111,114,117,120,123,
127,132,126,141,147,152,158,164,171,177,
184,191,198,206,213,221,229,236,244,252
}; //占空比数组
void int0_routine(void) interrupt 0 //键盘扫描中断,更改频率
{
for(i=0;i<50;i++) //延时扫描键盘
for(j=i;j<50;j++);
if(P32==0)
{
TR0=0; //关闭T0,停止计时
k++; //频率标记
if(k==4)k=1;
switch(k)
{
case 1:{TL0=178;TH0=178;P12=1;P10=0;}break; // 10hz
case 2:{TL0=240;TH0=240;P10=1;P11=0;}break; // 50hz
case 3:{TL0=248;TH0=248;P11=1;P12=0;}break; // 100hz }
TR0=1;
}
}
void pca_lvd_routine(void) interrupt 6 //
{
CF=0; //清PCA中断标志
a++; //记录中断次数
if(a==60) //半周期转换,每半周期分为60份
{
CR=0; //关PCA计数
a=0;
zf=~zf; //半周期标志,zf=0,前半周期,zf=1,后半周期
if(zf) //设置后半周期
{
P35=0; P37=0; //四管都截止,P37始终为0
//CEX0=0; // 等效P37=0;
CCAPM0=0X00; //关闭模块0
CCAPM1=0X42; //设置模块1工作方式
}
else //设置前半周期
{
P37=0; P35=0; //四管都截止,P35始终为0
//CEX1=0; //等效P35=0;
CCAPM1=0X00; //关闭模块1
CCAPM0=0X42; //设置模块0工作方式
}
CR=1; //开PCA计数
}
if(zf==0) //将下一小格的占空比赋给相应值
{
CCAP0H=zkb[a+1];
}
else
{
CCAP1H=zkb[a+1];
}
if(a==59) //将下半周期第一小格的占空比赋给相应值{
CCAP0H=zkb[0];
CCAP1H=zkb[0];
}
}
void main(void)
{
IE=0X01; //允许INT0中断
TCON=0X01; //INT0设为低电平触发
AUXR=0XC0; //1T方式
TMOD=0X02; //设置T0工作方式及初始值
TH0=0X178; //默认为10hz
TL0=0X178;
CMOD=0X05; //pca工作方式
CL=0X00;
CH=0X00;
CCAPM0=0X42; //设置模块0工作方式
CCAP0L=zkb[0]; //初始占空比
CCAP0H=zkb[1];
CCAP1L=zkb[0];
CCAP1H=zkb[1];
PCA_PWM0 = 0x00; //最后两位分别与CCAP0L和CCAP0H组成9位二进制数PCA_PWM1 = 0x00; //最后两位分别与CCAP1L和CCAP1H组成9位二进制数CEX1=0; //等效P35=0,模块1输出口
EPCA_LVD=1; //PCA中断和LVD(低压检测)中断共享的总中断控制位EA=1; //开总中断
CR=1; //启动pca计数
TR0=1; //启动计时器
P10=0; //指示现在为10hz
while(1)
{ };
}
附件二、模拟仿真
1、模拟仿真电路
图4—1 2、模拟控制电路
3、模拟仿真所得波形
交流电信号
信号波
载波信号
IGBT1和IGBT4脉冲信号IGBT2和IGBT4脉冲信号
在输出端所得到的波形f=30HZ时输出的波形
f=50HZ时输出的信号附件三、电路图
2.电路原理图
99se\0830702.DDB。