项目中使用TL431作为电流采样放大电路的基准源,然而之后调试过程中发现,采样电流有很大噪声,会影响控制效果。进一步分析表明,这是因为TL431输出的基准电压不稳造成的,输出纹波有几百毫伏,初步猜测是发生了自激振荡。下面对此问题进行下总结。
TL431部分电路原理图如下:
TL431作为基准源使用,输出2.5V基准电压,RL
为后级等效负载,CL
则是一个负载电容,设计电路时增加此电容是为了起到滤波作用,期望使得基准电压更平稳。
系统供电是反激开关电源产生的+5V
,实际使用示波器测试过,+5V
的纹波和毛刺都很小,50mV不到,所以可以排除是电源导致的输出振荡。再来看一下TL431的内部原理框图:
TL431内部有一个误差比较器,用于比较REF
管脚的电压与内部2.5VVref
间的差异,进而控制后级晶体管的基极电流,这个三极管应该是工作在放大区的,通过调整其基极电流,可以控制ICE
,对于后级负载来说,这就相当于一个分流器,进而实现了对Cathode
阴极输出电压的控制。这只是对其基本工作原理的一个定性理解,若对其内部电路实现有兴趣,可以进一步参考此分析文章:
TL431应用电路极为广泛,不同的外电路接法可以实现不同的功能,就像数据手册中说的这样:
This standard device has proven ubiquity and versatility across a wide range of applications, ranging from power to signal path. This is due to it’s key components containing an accurate voltage reference & opamp, which are very fundamental analog building blocks. TL43xx is used in conjunction with it’s key components to behave as a single voltage reference, error amplifier, voltage clamp or comparator with integrated reference.
当用作电压基准源时,从上面的工作原理分析中很容易想到,此时该引入负反馈闭环使得阴极输出电压稳定,这就是最经典的所谓的“Shunt Regulator”电路:
输出电压可以由电阻分压很简单的求出来,在我们的应用电路中,省去了反馈的两个分压电阻,直接将阴极输出与反馈端连接了起来,这样输出电压期望就是2.5V。RSup
电阻用于提供直流偏置,保证整个系统在开环时就工作于合适的线性放大区,这个偏置电流在数据手册中用IKA
表示,其范围很宽,1mA~100mA均可保证TL431正常工作,典型值是10mA。不过较大的驱动电流可以获得更好的响应特性及稳定性,所以在我们的电路中,IKA
设置为了100mA。
分析了电路的内部原理就会发现,这其实就是一个运放负反馈电路,自然就存在系统稳定性问题,关于这个问题,TL431的数据手册中是这样说的:
Unlike many linear regulators, TL43xx is internally compensated to be stable without an output capacitor between the cathode and anode. However, if it is desired to use an output capacitor Figure 24 can be used as a guide to assist in choosing the correct capacitor to maintain stability.
Figure 24是TL431内部晶体管的详细原理图,我的水平并不能从中分析出稳定区域来……不过仔细阅读数据手册后发现,其中给了这么一张稳定性区域图:
仔细看这张图,当IKA
为100mA时,A曲线的不稳定区域对应的负载电容在0.3uF~4uF之间,而我们选择的2.2uF正好在这个区域中,所以此时整个闭环系统是处于不稳定区域的,发生自激振荡也就很正常了。这张图是通过实际实验测试得到的,考虑到元器件参数的离散性,特别是电容公差较大,我们选择的2.2uF离临界值相差不远,所以其实可以理解成,这个设计其实是处于临界稳定状态的。这也就进一步解释了,实际调试时,为何大部分板子都会振荡,但是也有几块板子不振荡。
TI文档SLVA482A
对此问题做了进一步的分析:
Understanding stability boundary conditions charts in TL431, TL432 Data sheet
其中指出,负载电容的加入相当于为系统引入了一个极点,当此极点位于S平面右半边时,系统即会发生振荡。数据手册中给出的稳定性区域图是临界条件,也就是相位裕度为0的情况,实际设计时还要预留30度以上的相位裕度,以保证系统的可靠性。粗略来看,可以使用左右两侧临界区域1/10或10倍的值作为设计参考。文档中还给出了一张30度相位裕度参考图:
至此问题已经明确了,将板子上的2.2uF的电容改为1nF的,自激振荡即消失,电机控制效果好了很多。
最后还要补充一点,除了调整负载电容容量外,TI文档中还给出了另一种解决方法,在电容上人为串联一个电阻,相当于增加电容的ESR。此方法的原理是为系统增加一个零点,用这个零点来抵消相位延迟:
The output capacitor pole greatly limits the capacitors that can be used. However, any capacitor could be used if a series resistor was added that created an output zero at a low enough frequency. The zero can cancel most of phase lag of the output pole at the unity gain bandwidth frequency of the loop.
不过我没有能很好的理解此方法的内在原理,最后列在这里,之后可以再思考一下。
参考资料:
TL431 Datasheet