常用的LM2596芯片可以方便地搭成各种降压式开关稳压电源,但要用单片机来控制它的输出电压就稍微有点麻烦了——主要的思路有两种,一种是使用传统的电位器控制方式,用单片机控制数字电位器来代替模拟电位器;另一种则是利用单片机的PWM或DAC输出一个控制电压,引入到LM2596的反馈环路中。这次试验的是后一种思路。
如图,设输出电压为Vout,控制电压为Vctrl,LM2596的反馈端电压为Vfb,根据运放的基本性质可得:
Vctrl * R3/(R3+R8) + Vfb * R8/(R3+R8) = Vout * R9 / (R2+R9)
按上图的参数,可以写为Vctrl * 10/11 + Vfb * 1/11 = Vout * 1/4
对于LM2596-ADJ,其Vfb = 1.23V,于是有Vout = 4/11 * (10 * Vctrl + 1.23 )
于是,当Vctrl = 0V时,输出电压为1.23V;当Vctrl = 3V时,输出电压为11.3V左右。实际上由于LM358运放输入共模电压的限制,当供电电压为12V时,本电路最高输出电压为10V左右。在R2和R9的分压端引出一路信号到单片机的ADC来测量输出电压。
怎么测量输出电流呢?在输出地端串联小电阻检测电流虽然较简单,但是造成输入、输出不共地,许多情况下反倒更麻烦,因此这里选择了由R4、R1、R6、U3和Q1等元件构成的高端电流检测电路。如图,R4上的压降被U3放大15倍后,得到一个对地的电压,单片机测出此电压,除以15,再除以R4的阻值50毫欧即可得到输出电流。用12V 15W灯泡作为负载,实测工作状况如下:
PWM duty | Vctrl/V | Vout/V | Iout/A |
14.6% | 0.74 | 3.1 | 0.45 |
24.4% | 1.22 | 4.9 | 0.56 |
34.2% | 1.70 | 6.6 | 0.65 |
43.9% | 2.17 | 8.4 | 0.74 |
53.7% | 2.61 | 10.2 | 0.82 |
后记:用同样原理实现了APW7120+2SK3919*2的可调同步整流降压电路,实测最大稳定输出电流达到11A。
Super!
回复删除How calculated the ammeter circuit?
What a MOSFET transistor is used?