三相w逆变电源文档格式.docx
《三相w逆变电源文档格式.docx》由会员分享,可在线阅读,更多相关《三相w逆变电源文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
2、根据输入输出的参数指标,计算功率电路中半导体器件电压电流等级,并给出所选器件的型号,设计变换器的脉冲变压器及滤波电容。
3、给出控制电路的设计方案,能够输出频率和占空比可调的脉冲源。
4、应用protel软件作出线路图,建立硬件电路并调试。
3.1.三相电压型逆变电路工作原理
逆变电路根据直流侧电源的性质的不同可分为两种:
直流侧是电压源的称为电压型逆变电路;
直流侧是电流源的称为电流型逆变电路。
在本文中,我们主要讨论三相电压型逆变电路的基本构成、工作原理和特性,图3.1为其电路。
3.1三相电压型逆变电路
下面,我们讨论一下三相全桥电压型逆变电路。
在图3.2所示电路中,电路的直流侧通常只有一个电容器就可以了,但为了方便
分析,画作串联的两个电容器并标出假想中点N。
和单相半桥、全桥逆变电路
相同,三相电压型桥式逆变电路的基本工作方式也是180°
导电方式,即每个桥
臂的导电角度为180°
,同一相(即同一半桥)上下两个臂交替导电,各相开始导电的角度以此相差120。
。
这样,在任一瞬间,将有三个桥臂同时导通。
可能是上面一个臂下面两个臂,也可能是上面两个臂下面一个臂同时导通。
因为每次
换流都是在同一相上下两个桥臂之间进行,因此也被称为纵向换流。
32控制电路的设计
3.2.1SPWM控制的基本原理
如图3.3(a)所示,我们将一个正弦波半波电压分成N等分,并把正弦曲
线每一等份所包围的面积都用一个与其面积相等的等幅矩形脉冲来代替,且矩形
脉冲的中点与相应正弦等份的中点重合,得到如图3.3(b)所示得脉冲列,这就
SPWM波形。
正弦波得另外半波可以用相同得办法来等效。
可以看出,该PWM
波形的脉冲宽度是按正弦规律变化,称为SPWM波形。
/图3.3SPWM波形
根据采样控制理论,脉冲频率越高,SPWM波形便越接近正弦波。
逆变器的输出电压为SPWM波形时,其低次谐波得到很好地抑制和消除,高次谐波又
能很容易滤去,从而可得到崎变率极低的正弦波输出电压
SPWM控制方式就是对逆变电路开关器件的通断进行控制,使输出端得到一系列幅值相等而宽度不相等的脉冲,用这些脉冲来代替正弦波或者其他所需要的波形。
从理论上讲,在给出了正弦半波频率、幅值和半个周期内的脉冲数后,脉冲波形的宽度和间隔便可以准确计算出来。
然后按照计算的结果控制电路中各开关器件的通断,就可以得到所需要的波形。
但在实际应用中,人们常采用正弦波与等腰三角波相交的办法来确定各矩形脉冲的宽度。
等腰三角波上下宽度与高度成线性关系且左右对称,当它与任何一个光滑曲
线相交时,即得到一组等幅而脉冲宽度正比该曲线函数值的矩形脉冲,这种方法
称为调制方法。
希望输出的信号为调制信号,把接受调制的三角波称为载波。
当调制信号是正弦波时,所得到的便是SPWM波形。
当调制信号不是正弦波时,也能得到与调制信号等效的PWM波形。
332单极性和双极性SPWM控制方式
单极性是指载波和调制波始终保持同极性的关系,在调制波信号的一个周期里,同一桥臂的上下两个功率管工作状态相互切换,分别工作在正弦调制波的半个周期。
单极性SPWM调制原理图如图3.4所示:
双极性SPWM的载波极性随时间而正负变化,和调制波的极性变化没有关系,载波信号的一个周期里,同一桥臂的上下两个功率管互相切换,在调制波的半个周期里始终处于按正弦脉宽调制规律互补开关的工作状态。
双极性SPWM调制原理图如图3.5所示:
图3.5双极性调至原理图
四•系统硬件设计
4.1系统总体介绍
本次设计的目的是研制一种输入为800V的直流稳定电压,输出为220V,
50Hz的交流稳定电压,输出功率较大的三相稳压电源。
考虑到所设计的系统为大功率电源,所以我们在这考虑使用SPWM逆变技术,下图为所设计的系统框
图。
直流输入■■■'
全桥逆变>
输出滤波交流输出
A
控制电路|'
■■■■-驱动电路
该系统的工作原理是输入800V的直流电压,然后经SPWM全桥逆变,变成220V的SPWM电压,再经输出滤波电路滤波为220V、50Hz正弦波交流电压输出,另外,系统中CPU根据输出采样电压值来控制SPWM波发生器输出的SPWM波形参数,SPWM发生器产生的SPWM波经四个驱动隔离电路去驱动逆变电路,从而把整流滤波后得到的直流电逆变成稳定交流电。
1一根据输入、输岀参数*确定直流母线电压一
IGBT电压为1.5x800=1200F/p=5J^
工输出JC滤波电路』
(l)iL<
20%/o・/广20灯
⑵
(3)OTn<
2o%y"
<
1%///
综上可得;
L>
LZ4mHC=WZ>
1,84^,,
4•控制电路原理图
SA4828与单片机接口的原理图如图3.11所示,采用ARM单片机编程具体程序如下:
#include"
stm32f10x.h"
pwm.h"
#include"
adc.h"
dma.h"
delay.h"
u32pin=1800;
floatzhan;
floatadcy;
floatadcx;
floattemp0;
floattemp1;
/*Privatetypedef*/
GPIO_lnitTypeDefGPIO」nitStructure;
TIM_TimeBaseInitTypeDefTIM_TimeBaseStructure;
TIM_OCInitTypeDefTIM_OCInitStructure;
TIM_BDTRInitTypeDefTIM_BDTRInitStructure;
NVIC_InitTypeDefNVIC_InitStructure;
/*Privatedefine*/
/*Privatemacro*/
/*Privatevariables*/
u16TimerPeriod=3600;
u16DutyFactor=50;
/*Privatefunctionprototypes*/
/*Privatefunctions*/
voidRCC_Configure(void);
voidGPIO_Configure(void);
voidPWM_Configure(void);
*@briefMainprogram.
*@paramNone
*@retvalNone
*/voidRCC_Configure()
{
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|
RCC_APB2Periph_GPIOB|RCC_APB2Periph_AFIO,ENABLE);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4|
RCC_APB1Periph_TIM3,ENABLE);
}
voidGPIO_Configure()
/*GPIOA配置:
通道PA.6和PA.7为输出引脚*/
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_6|GPIO_Pin_7;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(GPIOA,&
GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0|GPIO_Pin_1;
GPIO_Init(GPIOB,&
voidPWM_Configure()
/*通道1,2和3配置在PWM模式*/TIM_OCInitStructure.TIM_OCMode=TIM_OCMode_PWM1;
TIM_OCInitStructure.TIM_OutputState=TIM_OutputState_Enable;
//TIM_OCInitStructure.TIM_OutputNState=TIM_OutputNState_Enable;
互补输出使能,主要用于高级定时器
TIM_OCInitStructure.TIM_Pulse=DutyFactor*7200/100;
//设置占空比
TIM_OCInitStructure.TIM_OCPolarity=TIM_OCPolarity_High;
//这里的4行代码就是设置PWM的空闲电平、波形方式的!
一开始自己一不小心搞成了都高的死区,这里是都低电平的死区~
//TIM_OCInitStructure.TIM_OCNPolarity=TIM_OCNPolarity_High;
互补输出端
//TIM_OCInitStructure.TIM_OCIdleState=TIM_OCIdleState_Set;
//TIM_OCInitStructure.TIM_OCNIdleState=TIM_OCIdleState_Reset;
TIM_OC1Init(TIM3,&
TIM_OCInitStructure);
//初始化通道1
TIM_OC2Init(TIM3,&
//初始化通道2
TIM_OC3Init(TIM3,&
/*自动输出使能,中断,死区相关的设置*/
//初始化通道3
TIM_BDTRInitStructure.TIM_OSSRState=TIM_OSSRState_Enable;
TIM_BDTRInitStructure.TIM_OSSIState=TIM_OSSIState_Enable;
TIM_BDTRInitStructure.TIM_LOCKLevel=TIM_LOCKLevel_1;
TIM_BDTRInitStructure.TIM_DeadTime=12;
//死区时间为12/SYSTEMCLK(ns)
TIM_BDTRInitStructure.TIM_Break=TIM_Break_Disable;
//关闭
外部break功能,当然在产品中最好加入这个保护,蛮好用的。
TIM_BDTRInitStructure.TIM_BreakPolarity=TIM_BreakPolarity_High;
//中断时配置端口输出高电平
TIM_BDTRInitStructure.TIM_AutomaticOutput=TIM_AutomaticOutput_Enable;
//自动输出使能
TIM_BDTRConfig(TIM3,&
TIM_BDTRInitStructure);
TIM_CtrlPWMOutputs(TIM3,ENABLE);
/*主输出启用*///PWM输
出使能
intmain(void)
u32ad_zhigh=500;
u32ad_phigh=7200;
u32p_high=3600;
RCC_Configure();
delay_init(72);
GPIO_Configure();
TIM_Configure(3600);
PWM_Configure();
NVIC_Configure();
TIM_Cmd(TIM3,ENABLE);
/*TIM3的计数器使能*/
TIM_Cmd(TIM4,ENABLE);
/*TIM4的计数器使能*/
DMA_INIT();
ADC_INIT();
while
(1)
u32n;
u32Get_Adcx_Average,Get_Adcy_Average;
u32temp_val=0;
u32temp_val0=0;
u8t,i;
for(t=0;
t<
20;
t++)//占空比取平均值
temp_val+=ADC_ConvertedValue[0];
//delay_us
(1);
Get_Adcx_Average=temp_val/20;
temp_val=0;
for(i=0;
i<
i++)//采样频率取平均值
temp_val0+=ADC_ConvertedValue[1];
//delay_us(10);
Get_Adcy_Average=temp_val0/20;
temp_val0=0;
adcx=Get_Adcx_Average;
adcy=Get_Adcy_Average;
temp0=(adcx/4096.0);
temp1=(adcy/4096.0)*7200;
//if((ad_zhigh-10)<
temp0&
&
temp0<
(ad_zhigh+10))//限制频率波动范围
//{
//temp0=ad_zhigh;
//
//}
//ad_zhigh=temp0;
//zhan=temp0/1000;
if(temp1>
7200)//限制频率范围
temp1=7200;
n=temp1;
if(n<
900)//限制频率范围
temp1=900;
if((ad_phigh-150)<
temp1&
temp1<
(ad_phigh-150))//限制频率波动范围
temp1=ad_phigh;
ad_phigh=temp1;
pin=temp1;
if(pin<
(p_high-150)||(p_high+150)<
pin)//限制刷新动态范围
TIM_TimeBaseStructure.TIM_Period=1;
//自动重装载寄存器的值
TIM_TimeBaseStructure.TIM_Prescaler=pin-1;
//时钟预分频数
TIM_TimeBaseInit(TIM4,&
TIM_TimeBaseStructure);
p_high=pin;
delay_ms(100);
五.仿真波形分析
MATLAB软件语言系统是当今流行的第四代计算机语言,由于它在科学计算、数据分析、系统建模与仿真、图形图像处理等不同领域的广泛应用以及自身的独特优势,目前MATLAB受到个研究领域的推崇和关注。
本文也采用MATLAB软件对研究结果进行仿真,以验证结果是否正确
5.1建立仿真模型
建立仿真模型的步骤:
1)建立主电路的仿真模型
2)构造控制部分
3)完成波形观测及分析部分
最终完成仿真模型如下图所示:
hM■II
500W三相逆变器主电路
A相开环电路
二託mm耳d¥
li亠證p-£
0e岳睬JLi£
-r
此时对负载电压进行傅里叶函数分析,可见3次谐波,5次谐波等奇次波幅度较大。
上图为电路闭环输入时负载电压的波形,震荡较小
PeakMBgnriudeSpeckumcafedb^Silmilin^:
-O
3次谐波,5次谐波等奇次波幅
m™™KE-UEE^丄・4E!
・duFifia.6PH;
ulllnE5nM
此时对负载电压进行傅里叶函数分析,可见
度较小。
a
上图为正弦波与等腰三角波相交,取得脉冲波形六•实验波形
LHUS10QU
u18.27l&
kHz]
1IIH
f士点1心日*矿:
:
Uf-IT1?
1r
L亠——*一一--■■----■«
■
F»
H】B・06kH^
亠””■■__■~~n^_”Ji=--
上图为输出电压90V的IGBT管漏极、源极之间的脉冲波形
上图为频率28.6HZ的线电压的波形图
上图为频率为28.6HZ的相电压波形图
上图为输出电压100V的IG盯漏极、源极之间的脉冲波形
上图为输出电压100V频率28.6HZ线电压的波形图
上图为输出电压100V频率28.6HZ的相电压波形图
上图为输出电压"
0V的IGBT的漏极和源极之间的脉冲波形图
上图为输出电压110V频率28.6HZ的线电压波形图
上图为输出电压110V频率28.6HZ相电压的波形图
*■DtJKPCJ-*
上图为输出电压120V的IG盯的漏极和源极之间的脉冲波形图
上图为输出电压120V频率28.6HZ的线电压波形图
上图为输出电压120V频率28.6HZ的相电压波形图
七.实验总结
本次课程设计,主要是进行仿真,没有做实物,所以自己的提升主要体现在理论上。
在这次课程设计中,通过理论的理解和对模型的仿真,自己对逆变器有一定的认识,我相信在之后的学习工作中,会得到很好的应用。
虽然,这次
设计的结果不是很理想,主要体现在自己设计的逆变器输出电压THD有些大,
但是不得不说,自己从中学到了这种设计方法。
从主电路到控制电路,从输出的交流测到输入的直流测一步一步的设计,在主电路的设计中,我主要是采用课堂上老师教的方法设计,难点主要体现在变压器的设计,这是以前的学习中没有体会到的,不仅要有理论的计算还要有实际的器件选型,颇为复杂。
我想在这次课
程设计中,我学到的重要的就是这种设计方法和思想。