基于PI控制方式的A开关电源-Psim仿真研究(完整资料).doc
上传人:天马****23 上传时间:2024-09-10 格式:DOC 页数:109 大小:20.5MB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

基于PI控制方式的A开关电源-Psim仿真研究(完整资料).doc

基于PI控制方式的A开关电源-Psim仿真研究(完整资料).doc

预览

免费试读已结束,剩余 99 页请下载文档后查看

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于PI控制方式的A开关电源Psim仿真研究(完整资料)(可以直接使用,可编辑优秀版资料,欢迎下载)基于PI控制方式的9A开关电源Psim仿真研究学院:电光学院专业:电气工程及其自动化班级:姓名:学号:一、引言Buck变换器最常用的变换器,工程上常用的拓扑如正激、半桥、全桥、推挽等也属于Buck族,现以Buck变换器为例,依据不同负载电流的要求,设计主功率电路,并采用单电压环、电流-电压双环设计控制环路。开关调节系统常见的控制对象,包括单极点型控制对象、双重点型控制对象等.为了使某个控制对象的输出电压保持恒定,需要引入一个负反馈.粗略的讲,只要使用一个高增益的反相放大器,就可以达到使控制对象输出电压稳定的目的。这次的课程设计,根据不同的负载电流、控制方式、仿真软件,每个人可以从中学到很多.二、实验目的(1)了解Buck变换器基本结构及工作原理;(2)掌握电路器件选择和参数的计算;(3)学会使用psim仿真软件对所设计的开环降压电路进行仿真;(4)学会使用psim仿真软件对控制环节的仿真技术;(5)学会分析系统的静态稳压精度和动态响应速度.三、技术指标输入直流电压(V):10V输出电压V:5V输出电流I:9A输出电压纹波V:50mV基准电压V:1。5V开关频率f:100KHZ主电路的功率设计(1)滤波电容参数计算输出纹波电压只与电容C的大小有关及Rc有关:(1)电解电容生产厂商很少给出ESR,而且ESR随着电容的容量和耐压变化很大,但是C与Rc的乘积趋于常数,约为。本例中取为。由式(1)可得Rc=27。78mΩ,C=2707μF。(2)滤波电感参数计算当开关管导通与截止时变换器的基尔霍夫电压方程分别如式(2)、(3)所示:(2)(3)假设二极管的通态压降VD=0。5V,电感中的电阻压降VL=0。1V,开关管的导通压降VON=0。5V。带入(2)(3)式可得T=5。6,T=4。4,L=13.7.2.1当L=10时,输出电压和电流波形以及输出电压和电流的纹波如图所示2。2当L=13.7时,输出电压和电流以及它们的纹波如下图:2.3当L=30时,输出电流电压以及它们的纹波如下图:五、原始系统的设计(1)采用小信号模型分析方法得Buck变换器原始回路增益函数GO(s)为:假设PWM锯齿波幅值为Vm=1。5V,采样电阻。采样网络的传递函数为:=根据原始系统的传递函数可以得到的波特图如图5所示,MATLAB的程序如下:num=[0.000152];den=[0.00000003710。00002451];g0=tf(num,den);bode(g0);Margin(g0);如图所得,该系统相位裕度为41。4度,穿越频率为1.54khz,所以该传递函数稳定性和快速性均不好.需要加入补偿网络使其增大穿越频率和相位裕度,使其快速性和稳定性增加。补偿网络的设计.(2)采用如图6所示的PI补偿网络。PI环节是将偏差的比例(P)、积分(I)环节经过线性组合构成控制量.称为PI调节器。这种调节器由于引入了积分环节(I)所以在调节过程中,当输入和负载变化迅速时,此环节基本没有作用,但由于积分环节的引入在经过足够长的时间可以将系统调节到无差状态。PI补偿网络传递函数为:系统总的传递函数为:设穿越频率为,则系统的对数幅频特性为:其中,振荡阻尼系数为了增加系统的快速性,需要提高穿越频率,一般穿越频率以小于1/5较为恰当。本次取=15khz,则穿越频率。将数据代入得相位裕度一般相位裕度为:则取,k=20.则PI传递函数为:(3)绘制PI传递函数伯德图如图7所示,程序如下:num=[40e—520];den=[2e—5,0];g=tf(num,den);margin(g)通过matlab绘制系统伯德图如图8所示,程序如下:num=[0。0001502];den=[0。00000003710。00002451];g0=tf(num,den);bode(g0);margin(g0);holdonnum=[40e-520];den=[2e-5,0];g=tf(num,den);margin(g);holdonnum=[0.000152];den=[0。0000000450.000031];f=tf(num,den);num1=[40e—520];den1=[2e-50];g=tf(num1,den1);num2=conv(num,num1);den2=conv