案例:设计一个Buck电路,满足如下性能指标要求:
一、性能指标要求
??1、输入电压
??2、输出电压
??3、输出电压纹波
??4、电流纹波
??5、开关频率
??
二、需要计算的参数
??
三、BUCK电路拓扑
??
四、BUCK电路工作原理
??
五、参数计算的假设前提条件
??
六、BUCK电路参数计算所需要的理论知识
??
七、导通时的占空比D的计算
??
八、电感L的计算
??
九、电容C的计算
??
十、案例中各个元器件的参数计算
一、性能指标要求
??1、输入电压
??????标准直流电压48V
??2、输出电压
??????直流电压24V,5A
??3、输出电压纹波
??????100mV
??4、电流纹波
??????0.25A
??5、开关频率
??????fs = 250kHz
??
二、需要计算的参数
???1、占空比D1
???2、电感L
???3、电容C
???4、开关元件Q的选取
??
三、BUCK电路拓扑
???* D:续流二极管
???* L和C组成LPF
??
四、BUCK电路工作原理
???1、当t=[0,Ton]时,控制信号是的MOS管导通,续流二极管D截止,向电感L充磁,向电容C充电;
???2、当t=[Ton,T]时,MOS管截止,续流二极管D导通续流,电容C放电和电感L中电流下降维持;
??
五、参数计算的假设前提条件
???1、开关管和二极管均为理想型器件;
???2、电感L较大,使得在一个周期内电流连续,且无内阻;
???3、直流输出电压Uo恒定;
???4、整个电路无功耗;
???5、电路已达到稳态;
??
六、BUCK电路参数计算所需要的理论知识
???1、基尔霍夫电压/电流定律;
?????(1)基尔霍夫电压定律:
???????在一个回路中,电压代数和为0。
?????(2)基尔霍夫电流定律:
???????在一节点,流进该节点的电流代数和等于流出该节点的代数和。
???2、法拉第定律;
?????????UL / L = ΔIL / Δt
???3、当电路达到稳态时:电感L上的电压满足“伏秒值相等的原则”,即:
?????????Von·Ton + Voff·Toff = 0
???4、电容的定义式:
?????????C = ΔQ/ΔUc
??
七、导通时的占空比D的计算
???1、开关管导通时,由基尔霍夫电压定律得:
?????????UL = Ui - Uo
???2、开关管断开时,由基尔霍夫电压定律得:
?????????UL = - Uo
???3、针对电感L应用“伏秒值相等的原则”得:
?????????(Ui - Uo)·D·Ts - Uo(1 - D)Ts = 0
???4、求的D为:
?????????D = Uo / Ui
??
八、电感L的计算
???1、开关管导通时,由基尔霍夫电压定律得:
?????????UL = Ui - Uo
???2、由法拉第定律:
?????????UL / L = ΔIL / D·Ts
???3、电感L为:
?????????L = UL·D·Ts/ΔIL
??
九、电容C的计算
???1、电容C充电的电荷为:
?????????ΔQ = ΔIL·Ts / 8
???2、电容定义式:
?????????C = ΔQ/ΔUc
???3、将1中的式子带入2中:
?????????C = (ΔIL·Ts) / (8ΔUc)
public void test() throws Exception { DefaultBeanDefinition bd = new DefaultBeanDefinition(); bd.setClazz(User.class); bd.setSingleton(true); bd.setBeanFactoryName(www.ysyl157.com "TestFactory"); bd.setCreateBeanMethodName("createMethod"); bd.setStaticCreateBeanMethodName("staticCreateMethod"); factory.register(bd, "user"www.michenggw.com); bd = new DefaultBeanDefinition(); bd.setClazz(BeforeAdvice.class); factory.register(bd, "myBeforeAdvice"www.thd178.com/); AopProxyCreator aapc = new AopProxyCreator(); aapc.setBeanFactory(factory)www.gouyiflb.cn ; factory.registerBeanPostProcessor(aapc); // 向AdvisorAutoProxyCreator注册Advisor aapc.register(new RegexMatchAdvisor("myBeforeAdvice", "execution(* bean.User.*())", new RegexExpressionPointCutResolver())); User user = (User) factory.doGetBean("user"); user.sayHello();
??
十、案例中各个元器件的参数计算
???1、占空比D
??????D = Uo / Ui = 0.5
???2、电感量L
??????L = UL·D·Ts / ΔIL = (48-24)*0.5*(1/250*10^-3)/0.25 = 0.000192H
???3、电容量C
??????C = (ΔIL·Ts) / (8ΔUc) = (0.25A / 250kHz)/ (8 * 0.1V) = 0.00000125F
原文地址:https://www.cnblogs.com/qwangxiao/p/10187381.html