This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LM5175: boost模式启动时电感电流大

Part Number: LM5175

因上传不了图片我描述下测试的情况.设计参数VIN=9~36V VOUT=12V Iout=5A  FSW=300khz hicup&ccm模式 ,软启动电容100nF,斜率补偿电容 220pf,抖频功能关闭。1.boost下启动时电感电流很大,有15A,触发了输入电源的电流保护。引起这个问题的原因有哪些,解决措施有哪些?2.buck-boost时有大小周的问题

  • 您好

    原因‌:

    1. Boost电路特性‌:Boost电路升压时,输出电压的升高主要依赖电抗器(电感)中的感应电压。由于输出电压相对于输入电压有所升高,根据公式UL = Ldi/dt,电感值越小,电流变化就越剧烈,从而导致电感电流在启动时较大。
    2. 大电容充电冲击‌:在电路上电时,输出端的电解电容需要充电,这个充电过程不受开关管控制,因此电流会从小变大。如果电感量不是很大,电流很快就能变得很大。

    解决措施‌:

    1. 优化电感设计‌:虽然增大电感感值在某些情况下可能无法明显改善电流过大的问题,但选择适当的电感值并确保其不会饱和是非常重要的。你可以尝试更换不同规格的电感,看看是否能减小启动时的电流峰值。
    2. 加缓冲电路‌:为了减小大电容充电时的冲击电流,可以在电路中增加缓冲电路。这样可以有效减缓电流的上升速度,降低电感电流峰值。
    3. 调整输入电容‌:适当增加输入电容的容量也有助于减小启动时的电流冲击。同时,注意输入电容的布局和走线,确保电容能够充分发挥其作用。

    对于buck-boost时的大小周问题,这可能是由于电源控制器的选择、输出电压控制方案的误差以及硬件补偿电路的优化不足等原因造成的。以下是一些可能的改进方案:

    1. 优化电源控制器设置‌:检查LM5175的电源控制器设置,确保所有参数都符合设计要求。特别是要关注振荡器、栅极驱动器以及逐周期电流限制等功能的设置。
    2. 改进输出电压控制方案‌:如果初步设计的输出电压控制方案存在误差,可以进一步优化。例如,通过调整补偿电路的电阻值来实现更精确的电压控制。

    以上的相关方法,官方有辅助工具:

    1、https://www.ti.com.cn/tool/LM5175QUICKSTART-CALC     官方LM5175辅助计算器便于您匹配电感电容的参考工具

    2、https://www.ti.com.cn/cn/lit/zip/snvm731                              官方LM5175的仿真模型用于理论验证您的参数匹配和逻辑

    3、https://www.ti.com.cn/product/cn/LM5175#design-tools-simulation

    官方WEBENCH 您可以将您的要求输入,这个工具给您推荐参考设计以及它的测试报告。

  • 您好

    感谢您的回复!

    请按照第一个回复逐步优化您的设计来解决您的问题。

  • 你好 ,用ltspice仿真时出现这些错误信息,是什么原因?应该怎么解决?

            Questionable use of curly braces in "b_current_limit_abm55 current_limit_128_cycles 0 v={if(v(current_limit_n16760479)>72.73m,1,0)} "
    Error: undefined symbol in: "if([v](current_limit_n16760479)>72.73m,1,0)"
    Questionable use of curly braces in "b_current_limit_abmii2 0 current_limit_n16760479 i={if(v(current_limit_n16760513)>0.5,v(vfsw),0)} "
    Error: undefined symbol in: "if([v](current_limit_n16760513)>0.5,v(vfsw),0)"
    Questionable use of curly braces in "b_current_limit_abm56 current_limit_3968_cycles 0 v={if(v(current_limit_n16760479)>2.254,1,0)} "
    Error: undefined symbol in: "if([v](current_limit_n16760479)>2.254,1,0)"
    Questionable use of curly braces in "b_current_limit_abm57 current_limit_count 0 v={if(v(current_limit_128_cycles)>0.5&v(current_limit_n16764480)<0.5,1,0)} "
    Error: undefined symbol in: "if([v](current_limit_128_cycles)>0.5&v(current_limit_n16764480)<0.5,1,0)"
    Questionable use of curly braces in "b_cs_amp_abm4 cs_amp_clv 0 v={if(v(comp)>2,0,1)} "
    Error: undefined symbol in: "if([v](comp)>2,0,1)"
    Questionable use of curly braces in "b_cs_amp_abm1 cs_amp_vcomp_sl 0 v={if(v(mode_out)<0.5,v(cs_amp_n16754025)+v(slope),v(cs_amp_n16754025)-v(slope))} "
    Error: undefined symbol in: "if([v](mode_out)<0.5,v(cs_amp_n16754025)+v(slope),v(cs_amp_n16754025)-v(slope))"
    Questionable use of curly braces in "b_cs_amp_abm2 cs_amp_vcl_sl 0 v={if(v(mode_out)<0.5,if(v(slope)-v(vslpk)<-0.4,v(slope)-v(vslpk),v(slope)-v(vslpk)+0.4),v(cs_amp_cl_limit)-v(slope)+v(vslpk))} "
    Error: undefined symbol in: "if([v](mode_out)<0.5,if(v(slope)-v(vslpk)<-0.4,v(slope)-v(vslpk),v(slope)-v(vslpk)+0.4),v(cs_amp_cl_limit)-v(slope)+v(vslpk))"
    Questionable use of curly braces in "b_cs_amp_abm3 cs_amp_n16774427 0 v={if(v(cs_amp_vcomp_sl)<0&v(ss)<0.8,1,v(cs_amp_n16829651))} "
    Error: undefined symbol in: "if([v](cs_amp_vcomp_sl)<0&v(ss)<0.8,1,v(cs_amp_n16829651))"
    Questionable use of curly braces in "b_cs_amp_abm5 cs_amp_cl_limit 0 v={if(v(buck_boost_mode)>0.5,0.4,0.8)} "
    Error: undefined symbol in: "if([v](buck_boost_mode)>0.5,0.4,0.8)"
    Questionable use of curly braces in "b_vcc_reg_abmi4 vcc_reg_n16764709 en_uvlo i={if(v(en_uvlo)<0.7,0,if(v(en_uvlo)<1.22,1.5u,4.5u))} "
    Error: undefined symbol in: "if([v](en_uvlo)<0.7,0,if(v(en_uvlo)<1.22,1.5u,4.5u))"
    Questionable use of curly braces in "b_osc_abmi3 osc_n16673585 osc_n16673143 i={-(i(v_osc_v47))} "
    Error: undefined symbol in: "-([i](v_osc_v47))"
    Questionable use of curly braces in "b_ea_ss_ccloop_abmii1 ea_ss_ccloop_n16151810 ss i={if(v(en)>0.5,5u,0)} "
    Error: undefined symbol in: "if([v](en)>0.5,5u,0)"
    Questionable use of curly braces in "b_ea_ss_ccloop_abm2i1 ea_ss_ccloop_n16737187 comp i={limit((v(buck_ss)-v(fb))*1.1m,-300u,300u)} "
    Error: undefined symbol in: "limit(([v](buck_ss)-v(fb))*1.1m,-300u,300u)"
    Questionable use of curly braces in "b_sample_hold_abm2 sample_hold_n16771557 0 v={if(v(pwm)<0.9&v(slope_reset)>0.2,1,0)} "

  • 您好

    根据您报错说明是有多个未被定义的符号。您加入相关原理中是不是存在多个不被软件理解的符号,您使用的不是官方仿真软件。您可以从ltspice软件方要相关配套软件包解决您的问题。

  • 你好!请教下1.在buck boost buck-boost三种模式都使用时,在fsw=300khz时,穿越频率应该设定为多少合适?2.slope电容选择需要考虑哪些因素?怎么判断是过补偿或者欠补偿了,结合电流测试波形

  • 您好

    1. 穿越频率设定

      • 穿越频率设定‌:在LM5175的buck、boost、buck-boost三种模式都使用时,若开关频率fsw=300kHz,穿越频率的设定需根据具体电路设计和系统稳定性要求来确定。通常,穿越频率设定为开关频率的1/5到1/10之间,但具体数值需通过实际调试和测试来确定。
    2. slope电容选择及补偿判断

      • slope电容选择因素‌:选择slope电容时,需考虑输入电压范围、输出电压、负载电流以及开关频率等因素。
      • 补偿判断‌:通过观察电流测试波形,若波形稳定无震荡,则补偿合适;若波形出现震荡,可能是过补偿或欠补偿。具体判断可通过调整Cslope电容值,观察波形变化来确定