tag 标签: lm2677

相关博文
  • 热度 33
    2016-6-1 18:18
    1651 次阅读|
    1 个评论
    由第一张图能够看出来,当负载电流在 200mA 时, +2V~+24V 都能获得不错的波形。虽然指令值切换瞬间,有超调的存在,但是不严重,可以接受。 当负载在 500mA 时,虽然可以在 +2V~+24V 全量程调节,但是在 +12V~+16V 这一段上会出现噪声极大,电感啸叫的情况。在当负载超过 1A 时, +14V 以上的电压就调不上去了。所以,能够在 40mA~3A 的负载电流下,进行数字调控,性能还能可接受的,就只有 +3V~+10V 这一段。 (好吧 ~ 理想很丰满,现实很骨感 ~~~~~ 当负载电流从小到大变化时,其中出现的一段噪声极大,电感啸叫的区间,应该和电感 / 电容 / 负载构成的电路谐振频率有关,因为更小与更大的负载电流下都能够获得良好的波形。至此,剩下的工作就只有 MCU 的其他功能实现了,比如 RS485 和 RS232 的编程,电位器手动控制,以及 MCU 温度反馈等等 ~ ) 总结,使用 LM2677 制作的这个恒压源,比起使用运放的方案,硬件成本更低,噪声稍大,调节速度稍逊,适用于不方便使用 PWM 调制的电阻性负载。
  • 热度 23
    2016-6-1 17:58
    1481 次阅读|
    0 个评论
    如何达到最大负载电流 开关稳压芯片的最大负载电流,实际使用的时候往往达不到技术手册上的标称值。比如 LM2677 的标称最大负载电流是 5A ,但是实际上往往到不了 4A ,再增大负载时,输出电压会被拉下来。这是为什么呢?难道是芯片买到假货了吗? 并联输出电容,能够稍微的增大负载能力,因为并联降低了输出电容的 ESR ,也减轻了在电容上的损耗。可是,这个措施能带来的改进,实在是很小。 LM2677 的输出电容,即使并联了 5 个,能够提高的负载能力也不过不到 0.2A 而已。其实 switch regular 能否到达标称负载能力的关键,在于它的 thermal management 。散热有那么重要么?散热就是有那么重要! 在 http://www.eevblog.com/forum/reviews/lm2596-dc-dc-step-down-modules-load-testing/ 这个论坛中也提到类似的问题:使用 3A 的 regular LM2596 时,当负载电流为 2.5A 时,不到一分钟,输出电压就会被拉下来。下面这段话来自名为 ptricks 的跟帖: “I use quite a few of these switchers (the chip itself not the boards) every month and they are solid performers if you follow the data sheet.There is a lot of those for sale on ebay and I never buy them because of the way they implement the heat sink is only good for low current loads, the recommended size is 2oz copper and at least 2 square inches. The inductor used also isn't ideal , at high currents a torroid is best. They also do not include the filtering of the output to remove switching noise.” 下面这段话来自名为 sleemanj 的跟帖: “I believe those converters are "rated" to handle 10 Watts Power Output, not 10 Watts of heat dissipation. If you add a (large)  heatsink  you can take that to 20 Watts Output I believe. You are pumping 30 watts out of that poor wee board, without any heatsink at all, not even a itty bitty one. I'm surprised it lasted as long as it did .” 以下内容来自 TI 公司的 Application Report  Therma l  Design   By   Insight,   Not   Hindsight : “ With only natural convection (i.e. No airflow), and no heat sink, a typical two sided PCB with solid copper fills on both sides, needs at least 15.29cm2(2.37in2) of area to dissipate 1 watt of power for a 40 ° C rise in temperature. Adding airflow can typically reduce this size requirement by up to half. To reduce board area further a heat sink will be required. ” “ A typical 12 mil diameter thru hole via with 0.5 oz copper sidewalls has a thermal resistance of 261 ° C/Watt. Place as many thermal vias as will fit underneath the exposed pad to form an array, with 1mm spacing. Connect the vias to as many layers of copper as possible to spread the heat away from the package and to the PCB surface where it can transfer to the ambient air. For many DC-DC converters the exposed pad is electrically connected to ground and thus, the internal ground layer and the bottom ground layer are usually the most convenient copper planes for heat transfer. The thermal resistance is significantly lowered by having as solid a bottom layer ground as possible. ” LM2677 输入 +28V 电流 4A 时,输入功率 112W ,热功率 112W*8%=8.96W ,因此需要 15.29cm 2 *6.72=137 cm 2 的面积。 LM2677 的 TO263 背板过孔不用太大( 12mil ),但是要很多。 “ Maintain a copper ground plane on either the top or bottom copper layer with as few breaks as possible to create a heat spreader on the PCB. Spreading the heat across the PCB provides a low impedance path to the surface of the PCB and improves convective heat transfer. Traces perpendicular to the heat flow will create high impedances(speed bumps) for the heat and create hot spots(traffic jams). If traces through the copper heat spreader are unavoidable try to make them run parallel to the heat transfer, which flows radially from the heat source. ” 如果用于散热的地平面,一定要被切割,那么就平行于热力线发散的方向来走线。 “ The thermal resistance to the top of the package is considerably higher because of the plastic interface. ” “ A heat sink on top of the package is connected in series with the high thermal impedance of the plastic making the heat sink less effective. A heat sink on the bottom of the board is connected in series with the low thermal impedance of the exposed pad and the relatively low thermal impedance of the vias making the heat sink more effective. ” 散热片加在 LM2677 的 bottom 比加在 top 要好。从图上来看,散热片的面积不用很大,覆盖 exposed pad 即可。 (要达到标称的 5A 负载,在器件的选择和散热的处理上,都要狠下功夫。目前这块电路板,调整过输出电容、输出电感、钳位二极管,修改过散热措置,但是能达到的最大负载电流只有 3.8A (输出电压 5V 情况下),而且随着输入输出压差的减小,最大负载电流也会减小 ~~ 更深的研究,就留给各位感兴趣的童鞋吧 ~~ )
  • 热度 25
    2016-6-1 17:58
    1209 次阅读|
    0 个评论
    数字PID方案(一) 使用数字控制来实现LM2677的模拟控制,最简单的程序实现方案莫过于,使用ADC的值乘以相应的比例,给出DAC的值。这种方案里,没有算法,没有数字PID,ADC采到什么,DAC就给出什么。简单,直接,有效。 程序需要实现以下步骤: 在定时器中断服务程序中,采集10次voltageOut的值,做平均值滤波; 使用voltageOut,计算实际比例的LM2677输出(mV); 按照指令中的理想输出,计算理想的等效反馈电阻resFeed; 根据反馈电压,计算并给出对应的DAC值; 启动下一次ADC; 指定值 voltageSet 采样间隔 采样时间 采样与操作 时延 负载 采样次数 备注 18V 1ms ≈80us ≈1ms 1k 14 有R11 反馈引脚有PVCC上拉电阻的MCU复位输出波形; 复位MCU时,输出电容放电,电压缓慢下降,此时voltageFeed先变成了+1.5V(+3.9V分压); voltageFeed下降为0,再进入工作阶段; 不为+3.3V是因为钳位二极管本身还有压降; 去掉反馈引脚有PVCC上拉电阻后,voltageFeed引脚不再被上拉到+1.5V(+3.9V分压);   18V 1ms ≈80us ≈1ms 1k 14 无R11 正常工作时的波形; 几乎为锯齿波,周期为40ms; 取前n毫秒的voltageOut做平均,锯齿波幅值会变大; n越大,幅值越大; 取平均值其实是一种滞后的调节,输出已经变化了,但是给定值以没有变化的情况作为参考; 18V 100us ≈40us ≈100us 0.015A 10   波形已经相当平稳了; 说明100us的调节时间优于1ms; 输出约+15V; 18V 100us ≈40us ≈100us 0.92A 10   噪声非常大; 输出约+15V; 18V 100us ≈40us ≈100us 2.5A 10   2.5A负载电流,波形很平稳; 输出约+14V; 取200us的调节时间,波形和100us差不多; MCU知道voltageOut为+14V,但是电阻确定之后,反馈的比例也就确定了,误差并不能自动消除;
  • 热度 25
    2016-6-1 17:57
    1328 次阅读|
    0 个评论
    数字PID方案(二) 数字控制方案(一)算法简单,实现直观,而且在 100us 的调节周期下,已经能够获得很平稳的输出了。可是现在还是想让调节更智能一些。因为使用方案(一),即使 MCU 知道当前采集到的输出值并不正确,但是它没有途径去更改,因为它走的是一条单行道。指令给的是多少,反馈引脚加的就是多少,执行方案(一)的 MCU 会想,反正我按照指令去执行了,即使结果不正确,也不关我的事了。 如果要根据输出来调整输入,就需要引入数字 PID 方案。这就引出了数字控制方案(二),它采用了增量式的数字 PID 算法。增量式数字 PID 算法的用途非常广泛,几乎能想到的控制,都可以用它来实现,最常见的如直流电机的速度闭环。 对于 LM2677 的电路来说,设定值就是用户输入的理想输出电压,输出值就是 LM2677 的实际输出电压,控制量就是加在 LM2677 反馈引脚上的 DAC 输出值。 LM2677 的 MCU 程序需要实现的功能就是,采集 LM2677 的实际输出电压,和用户输入的理想输出电压比较,根据比较出来的偏差,调整 LM2677 反馈引脚上的 DAC 输出值,直到使实际输出电压等于理想输出电压。 100us 的调节时间,用定时器 TIM2 的溢出中断来实现,但是 PID 调节的计算并不在中断服务程序中。 TIM2_IRQHandler 仅仅做了一件事情,就是启动一次 ADC 扫描。扫描完成之后, ADC 的数据会经由 DMA 通道传输到指定地址的数组中, DMA1_Channel1_IRQHandler 是 DMA 中断,当需要扫描的 ADC 通道都转换完成之后, DMA 中断被触发,在这里进行 PID 运算。 void TIM2_IRQHandler(void) { if(TIM_GetITStatus(TIM2,TIM_IT_Update) != RESET) { TIM_ClearITPendingBit(TIM2, TIM_IT_Update); auu.dmaFlag = TRUE; adc_startScan(); } }   void DMA1_Channel1_IRQHandler(void) { if(DMA_GetITStatus(DMA1_IT_TC1) != RESET) { DMA_ClearITPendingBit(DMA1_IT_TC1); if (auu.dmaFlag == TRUE) { auu.dmaFlag = FALSE; regular_pid(); } } } PID 为数字增量式, buu.vol_set 是用户给定的输出电压值, buu.vol_out 为实际采回来的输出电压值, auu.voltageOut 为 ADC 的运算结果, auu.voltageFeed 为 DAC 的给定结果。 struct __pid { int32_t vol_set; int32_t vol_out; int32_t vol_feed; int32_t vol_preError; int32_t vol_preDError; int32_t vol_P; int32_t vol_I; int32_t vol_D; int32_t deadline; }; struct __pid buu;   uint8_t regular_pid(void) { int32_t i = 0; int32_t error_t, derror_t, dderror_t;   for (auu.voltageOut = 0, i = 2; i  ADC_NUM; i++)  auu.voltageOut += adcResult ; auu.voltageOut /= (ADC_NUM - 2); auu.voltageOut = (auu.voltageOut * (VOUT_RES_H + VOUT_RES_L) / VOUT_RES_L) * (3300 / 4) / (4096 / 4);     buu.vol_set = auu.voltageSet; buu.vol_out = auu.voltageOut;   error_t = buu.vol_set - buu.vol_out; derror_t = error_t - buu.vol_preError; dderror_t = derror_t - buu.vol_preDError;   buu.vol_preError = error_t; buu.vol_preDError = derror_t;   if (!((error_t  buu.deadline)  (error_t  -buu.deadline))) buu.vol_feed += buu.vol_P * derror_t + buu.vol_I * error_t / 100  + buu.vol_D * dderror_t / 100; auu.voltageFeed = buu.vol_feed / 1000;   auu.voltageFeed = 3114 - auu.voltageFeed;   if (auu.voltageFeed  3114 + 980) auu.voltageFeed = 3114 + 980; if (auu.voltageFeed  3114 - 980) auu.voltageFeed = 3114 - 980;   DAC_SetChannel1(auu.voltageFeed); return 0; } 这是一个很典型的增量式数字PID算法,error_t是误差,derror_t是误差之差,dderror_t是误差之差的差。通过PID运算buu.vol_feed之后,乘以相应的比例,给出DAC的值。正常的情况下,输出电压会以一个缓慢的趋势到达指令值。实际情况是,这“一个缓慢的趋势”与负载大小有关系,负载大,则趋势快;负载小,则趋势慢。所以在不同的负载电流下,需要不一样的PID参数值。 (调节PID参数,是一件吃力不讨好的事情,枯燥无趣,而且很难掌握一个绝对的规律。所以才会有那么多人去研究更高级的PID算法,比如神经网络、模糊数学、马尔可夫算法等等~~~尼玛用好控制理论真是一门很不简单的工作~~~~) 三个PID参数分别为buu.vol_P、buu.vol_I、buu.vol_D。不同的参数会获得不同特性的输出。经过调试,发现如果使用下面的参数表,会获得相当不错的波形。 这几张张表中都没有0A负载电流的情况,是因为负载太小时PID失去了调节能力。不论指令电压给了多少,输出电压都几乎等于输入电压。而加大负载之后,输出电压会调节到指令电压位置。
  • 热度 25
    2016-6-1 17:38
    1516 次阅读|
    0 个评论
    “ 电源设计中使用 NTC 热敏电阻型浪涌抑制器,其抑制浪涌电流的能力与普通电阻相当,而在电阻上的功耗则可降低几十到上百倍。对于需要频繁开关的应用场合,电路中必须增加继电器旁路电路以保证 NTC 热敏电阻能完全冷却恢复到初始状态下的电阻。在产品选型上,要根据最大额定电压和滤波电容值选定产品系列,根据产品允许的最大启动电流值和长时间加载在 NTC 热敏电阻上的工作电流来选择 NTC 热敏电阻的阻值,同时要考虑工作环境的温度,适当进行降额设计。  ” l  最大工作电流    电源回路工作电流 l  标称电阻值 R   ≥   1.414   *   E   /   Im ; E 为线路电压 , Im 为浪涌电流 l  材料常数 B 值越大,残余电阻越小,温升越小 l  时间常数与耗散系数的乘积越大,热容量越大,抑制浪涌电流的能力也越强 能否不加 pre-charge 电路,而通过缓慢升高电源电压来避免 inrush current 呢?当然可以。如果使用直流电源,那缓慢的拧动输出旋钮就行。如果是使用开关电源,那还是算了吧。下图是 5V10A 的开关电源的输出波形(空载),它可是在 10ms 内就从 0V 升到了 +5V 。 理论分析很麻烦,但是结论通常都很简单。通常确定最大工作电流和标称阻值之后,就能选定 NTC 的型号。在 LM2677 的应用中,最大工作电流需要 5A ,标称电阻值需要 R  ≥  (1.414 * 28 / 7) = 5.656 Ω。 NTC6D-20 、 NTC8D-20 、 NTC10D-20 都是不错的选择,使用时串在电源线正极上即可。 并联输出电容 以下内容来自 http://www.radio-electronics.com/info/formulae/capacitance/esr-df-loss-tangent-q-tutorial-basics.php : “ ESR - Equivalent Series Resistance, DF - Dissipation Factor, and Q or Quality factor are three important factors in the specification of any capacitor. ” “ESR, DF and Q are all aspects of the performance of a capacitor that will affect its performance in areas such as RF operation. . However ESR, and DF are also particularly important for capacitors operating in power supplies where a high ESR and dissipation factor, DF will result in large amount of power being dissipated in the capacitor. ” ESR 、 DR 、 Q 是电容的三个重要参数。 ESR/DF/Q 在射频 RF 的应用中很重要, ESR 和 DF 在电源的设计中也非常重要,因为它们导致了电容的功率损耗。 “The equivalent series resistance or ESR of a capacitor is particularly important in many applications. One particular area where it is of paramount importance is within power supply design for both switching and linear power supplies.In view of the high levels of current that need to be passed in these applications, the equivalent series resistance, ESR plays a major part in the performance of the circuit as a whole.” “The ESR of the capacitor is responsible for the energy dissipated as heat and it is directly proportional to the DF. When  analyzing  a circuit fully, a capacitor should be depicted as its equivalent circuit including the ideal capacitor, but also with its series ESR.” 在 switching 和 linear 电源的设计中,尤其在大电流的应用中, ESR 是非常重要的参数。 ESR 导致了电容上面的热损耗, ESR 和 DF 是成比例的。 “Capacitors with high values of ESR will naturally need to dissipate power as heat. For some circuits with only low values of current, this may not be a problem, however in many circuits such as power supply smoothing circuits where current levels are high, the power levels dissipated by the ESR may result in a significant temperature rise.” “It is found that when the temperature of a capacitor rises, then generally the ESR increases, although in a non-linear fashion. Increasing frequency also has a similar effect.” 小电流的时候, ESR 导致的热损耗并不是问题;大电流时,设计就必须考虑 ESR 的影响。当温度升高时, ESR 会升高;当频率升高时, ESR 也会升高。 “Although the ESR figure of a capacitor is mentioned more often, dissipation factor and loss tangent are also widely used and closely associated with the capacitor ESR.” “Although dissipation factor and loss tangent are effectively the same, they take slightly different views which are useful when designing different types of circuit. Normally the dissipation factor is used at lower frequencies, whereas the loss tangent is more applicable for high frequency applications.” 除了 ESR 之外, DF( dissipation factor ) 和 loss tangent 也是非常重要的参考。 dissipation factor 一般使用在低频分析时, loss tangent 使用在高频分析时。 “The dissipation factor can be defined as: the value of the tendency of dielectric materials to absorb some of the energy when an AC signal is applied.” “The loss tangent is defined as: the tangent of the difference of the phase angle between capacitor voltage and capacitor current with respect to the theoretical 90 degree value anticipated, this difference being caused by the dielectric losses within the capacitor. The value δ (Greek letter delta) is also known as the loss angle.” dissipation factor 定义为:当加载 AC 信号时,电介质材料吸收能量的 tendency 。而 loss tangent 的定义为: *** (请童鞋们自己翻译 ~~~~~~ ) Xc 为 reactance of the capacitor in ohms. It is convenient to define the Q or Quality Factor of a capacitor. It is a fundamental expression of the energy losses in a resonant system. Essentially for a capacitor it is the ratio of the energy stored to that dissipated per cycle. It can further be deduced that the Q can be expressed as the ratio of the capacitive reactance to the ESR at the frequency of interest: As Q can be measured quite easily, and it provides repeatable measurements, it is an ideal method for quantifying the loss in low loss components. 定义电容的 Q 参数是很方便的。在共振系统中,它就是能量损耗的代名词,是电容存储能量和损耗能量的比例,也就是 ESR 在不同频率**现的阻抗。 Q 参数很容易测量,它是衡量器件品质的理想参数。通过并联输出电容,能够增大输出电容值,并减小电容的 ESR 。 虽然 BUCK 电路的输出电容的 RMS 电流比输入电容要小很多, 220uF 的输出电容够用了,但是不管如何,并联多个电容并没有坏处。 当选择固定的数字 PID 参数时,使用一个 220uF 的输出电容,比使用并联的 5 个 220uF 输出电容,纹波比要大很多。当修改数字 PID 参数后,又能获得相当不错的波形,说明电容的容值与数字 PID 参数一起,影响了 LM2677 反馈网络的零极点。