在这一章中,来给大家介绍一下,如何使用仿真软件来进行得到系统稳定性分析,经常浏览TI文档的朋友肯定在TI的文档中看到过这种方法,但是考虑会有新朋友没有实际操作过这种方法,而且,一些文档中只会写这样使用,而并没有讲为什么,以及一些重要的注意事项,所以,这里还是花几章来给大家介绍一下如何利用仿真软件进行分析,否则,在后续的实际电路分析中,一些朋友可能会看的一头雾水。
这里我常用两种仿真软件分别是TI的Tina-TI(免费版)和ADI的LTspice,这两个软件也是平常很多人入门电子时使用的,在工作中,一般ADI的器件,我就会用LTspice仿真,TI的器件,则用Tina-Ti仿真,由于我平常使用更多的是TI的器件,所以LTspice的仿真使用方法可能会存在一些冗余的地方,如果大家发现了还请指出,我好修正。
注意:本篇章只是描述如何使用仿真软件的方法,没有进行模型修正,在此基础上的仿真结果会与实际电路存在偏差,在后续的章节中,会给大家讲如何对仿真模型进行修正,从而达到贴近实际的效果。
根据上一章,我们知道了,在实际的电路中,实际的电阻电容与理想值存在差异,实际的阻抗曲线使用公式表达的话,手动计算会变得异常的复杂,在这种情况下,想要使用闭合速度法进行计算分析,就需要舍掉某个频率外的阻抗曲线,但是这样又会使得整体误差分析的偏差变大,同时,伴随着我们考虑的因素越来越多,包含杂散电容,过孔的串联电感等等,系统的零点和极点也会越来越多,对于新手来说,区别哪些零点和极点可以忽略,哪些零点和极点不可忽略,是一件十分困难的事。
图1 理想的电容和实际电容阻抗曲线
图2 理想的运放开环输出阻抗曲线(左)和实际的运放开环输出阻抗曲线(右,参考OPA376-TI)
所以,使用仿真软件来分析,只要模型正确,并且尽可能的按照实际电路板搭建电路模型,可以大大的降低我们分析电路的难度,在电路模型建立好后,再根据实际的电路调试,对于不太复杂的电路,也可以很快的完成电路调试。
同时,使用闭合速度法不好直观解释的的补偿措施,我也会再接下来的章节中一并写出。
1、如何在仿真软件中得到伯德图
根据前几章的内容,可以知道,我们判断运放电路的稳定性,是在频域上进行判断,我们得到的伯德图也是系统的输出相对于系统的输入,在频域上幅值和相位的变化。以一个低通滤波器为例,RI=1kΩ,CI=1uF,这个滤波器的输入在RI的左端,输出在RI的右端,测得这个系统在1Hz到1MHz的伯德图,包含幅频特性曲线和相频特性曲线。
图3 低通滤波器系统
在Tina-TI中,先放置好电阻和电容,我们想要测得这个系统的伯德图,就得为这个系统放置“输入端”和“输出端”,对于这个滤波器,想观察到的是电压信号的曲线图,所以,“输入端”选择发生源中的电压发生器,“输出端”选择仪表中的电压指针。
图4 Tina-TI搭建电路图
这样,系统的输入和输出我们就构建好了,这时,只需要执行交流分析中的交流传输特性分析就可以得到这个系统的伯德图了。
图5 Tina-TI交流分析操作
图6 Tina-TI伯德图操作
在LTspice中呢,大体相同,不过LTspice的显示更灵活一点,输入端不需要加标签,直接点击,就能够看到某一个点相对于输出的伯德图。
图6 LTspice伯德图操作
由于Tina-TI有中文,考虑到这系列的文章是给新手用的,而且大部分的新手使用的也是Tina-TI,所以后续的章节,就都使用Tina-TI来仿真,等后面我们用到了ADI的运放,我们再来使用LTspice,当然还是推荐大家使用一下LTspice,个人觉得比Tina-TI好用,更舒服和灵活一点。
2、获取系统环路增益的伯德图
在前面的章节,我们知道了,我们判断运放电路的方法就是这个系统的输入信号经过运放的开环放大(Aol),反馈电路(F)后,相对于输入信号的幅度和相位变化,而这一路上的所有的增益相乘,就是环路增益(LOOP GAIN)。
图8 系统环路增益
我们以一个同向放大电路为例,运放选择经典的OP07,放大倍数为1,构成一个跟随器,输入信号是一个100mV的直流电压。按照上面的思路,系统的反馈系数为1,那么,我们只需要判断运放的开环放大倍数(Aol)就可以了。
图9 跟随器系统框图
把输出端放置在运放的负端,“输入端”放置在运放的正端。执行交流传输特性分析,但是发现,所得到的伯德图与运放的开环放大曲线怎么不一样呢,这是因为系统已经闭环了,他是个跟随器,输入的信号自然等于输出的信号。
图10环路闭合执行交流分析
那么,如果我们把环路断开呢,运放的负端直接接地,“输出端”放置到运放的输出,在来执行交流传输特性分析,发现,还是不对劲,增益直接变成负的了。
图11 断开环路执行交流分析
这是由于电路开环了,运放的工作状态就不正常,输出饱和了。
那么电路既不能开环又不能闭环,那该怎么办呢?实际上,我们在分析时,需要系统闭环运行,这个闭环是只在直流状态下闭环,让整个电路正常工作;而在交流分析时让,让系统开环,来测得系统的环路增益。
方法很简单,在环路上插入一个大电感,电感嘛,我们都知道,他的特性,通直流阻交流嘛,将整个大电感放到环路中,由于是仿真软件,可以取得很大,我们直接取1T,这样看来,在直流视角上,电路没有任何变化,但是在交流视角上,系统的环路可以当作断开。
图12 环路中设置大电感下,DC/AC等效电路
我们再来执行一下交流分析,但是的出来的伯德图还是不对劲,增益太低,虽然有一点运放开环放大曲线的感觉了。
图13 放置电感后执行交流分析
这是由于运放的负端存在输入阻抗,一般的分析中,由于输入阻抗比较大,所以一般都忽略,但是,我们在环路上加上了一个1T的电感,在交流上看来,这个电感的阻抗是远远比负端的输入阻抗大的,所以,若是考虑了运放的输入阻抗,那么,实际上的等效图是这样的。
图14 AC视角下加入电感后的等效阻抗图
所以,在这个时候,会在负端在加上一个大电容,为的就是将运放的输入阻抗短路掉,这样,系统在交流上的等效电路图就会变成下面这个样子。
图15 电感接大电容到地的等效阻抗图
在进行交流分析,这样得到的结果就差不多了,很多人很奇怪为什么非得在负端加上这么一个电容,但是文档中对此又没有介绍,不加的话,得到的曲线又明显不对。
图16 加入大电容后执行交流分析
3、输入端的放置
根据运放的特性,Vo=Aol*(正端输入-负端输入)。我们也可以将输入端,放置在运放的负端输入,这样,得到的相位图就是180-相位移动量的,在得到的相频特性曲线上,纵坐标从180°开始,刚好就等于相位裕度,所以,我一般会把输入端放在运放的负端,看起来方便一点。
图17 输入端放置在负端
4、获取环路增益
上面的例子是一个简单的跟随器电路,环路增益就是运放的开环放大倍数,接下来,我们搭建一个同向放大电路来进行说明,按照上面的思路放置输入端,断点和电容,配置好直流状态,放置好N1,N2,N3这三个标签,在进行交流分析前,先看一下直流电位,直流电位正常时。
进行交流分析,在得到的伯德图上会存在3根曲线,分别是N1,N2和N3,那么这三根曲线代表什么意义呢?
图18 电路各个点上的曲线
先看信号的流向,根据信号的流向,可以得到N1,N2和N3的关系。
图19 N1,N2和N3关系图
接着,我们在进行数据的加工,在Tina-Ti中,可以将不同的曲线进行各种组合运算,按照上面的关系等式,得到环路增益曲线。
图20 处理曲线数据
在显示中隐藏掉不必要的曲线,就可以得到我们想要的曲线了。
图21 各个增益的曲线
备注:F1是指1/F,由于函数名不能带符号,LOOP=AOl*F,代表环路增益。
这个时候,可以直接观察环路增益曲线LOOP,以上面的例子为例,环路增益LOOP在增益0dB时的频率是59.88kHz,相位裕度88.92°,系统稳定。
图22 相位裕度
5、断点的设置
上面的例子是一个跟随器电路,在放置电感的时候,直接放置在反馈回路上就可以了,但是在环路增益组成复杂的电路上,电感的放置就需要注意了,不同位置的断点会给仿真结果带来不同的偏差。在跟随器电路上,反馈回路串入一个电阻RF和电容CF,输出端接上电阻RL和电容CL构成的负载,这样,电路有三个地方可以放置断点(电感),分别是1,2,3。
图23 系统断点放置位置
我们来一步一步分析不同断点放置位置,首先1,将断点放置到1,可以得到交流状态下的等效模型,注意,CIN是运放引脚的输入电容,包含芯片引脚本身的和PCB上的杂散电容,
图24 断点1的交流等效模型
这样,根据KCL和KVL可以写出传递函数,
转换一下,得到传递函数:
可以看到,零点和极点完全由RO,RL和CL组成,这表明,如果断点放置到这个地方,那么能够影响到环路分析的器件就只有运放的输出阻抗RO和负载RL,CL,反馈电阻电容,以及运放的内部阻抗,杂散电容等,都不会产生任何影响。这对我们的仿真分析是非常不利的。
接下来,我们来看一下2号位置怎么样。
图25 断点2的交流等效模型
转换一下,得到传递函数:
这次,可以看到,零极点包含的参数就多了,但是负载RL和CL却被排除了。
我们再来看3号断点,
图26 断点3的交流等效模型
转换一下,得到传递函数:
做个总结:
图27 各个断点的参数
在,3号位的时候,我们可以看到,这次的零极点把我们图上所有的元件都包含进去了,因此,使用3号位得到的仿真结果应该是最准确的。
我们来实际验证一下,我们把输出负载(RL和CL去掉),来看一下在3个断点处的结果如何,下图可以看到,3个位置的结果都是相同的。
图28 无负载时各个断点的相位裕度
我们在把RL和CL加上,看看有没有变化,断点1和断点3得到相位裕度相同,但是断点2的相位裕度更大一点,根据上面的分析我们可以得到,断点2的仿真中,排除掉了负载RL和CL,所以断点2的仿真结果相位裕度更大,并且没有变化。
图29 带负载时各个断点的相位裕度
接着,我们在运放负端放置一个C2来模拟实际PCB上运放引脚对地的杂散电容,在实际电路参数中,100pF已经算比较大的杂散电容了,在这个参数的电路中会给系统稳定性带来不小的影响的。
图30 带杂散电容时各个断点的相位裕度
经过仿真,可以看到,断点1就没有受到杂散电容C2的影响,相位裕度没有变化,断点3的影响是最大的,这个结果也与我们上面的分析相同。
所以,大家在实际仿真的时候,断点的位置选择十分的重要,我看到过一些前辈的实际分析中,没有选定好合适的断点,从而错过了一些非常重要的零极点,导致在实际的PCB上遇见了与分析不同的现象。
以上,就是使用仿真软件分析电路稳定性的方法,但是,在这里再次提醒大家,上面的步骤模型没有经过模型修正,他与实际的电路会有不小的差距。
结语:这是我的第5篇帖子,也是在2024年的最后一天完成,本来应该在这个月中旬就应该发出来的,工作上的各种事都堆过来了,我的文笔也不太好,前面的几个帖子,看的人有,回复的却寥寥无几,不过也确实,排版呀,整体的思路呀,都比较跳跃。我也在学习别人的技术博客,尽可能的给大家一个好的阅读体验,希望我的文章能对你的工作有所帮助。
在这里也祝愿大家,在新的一年里,万事如意,工作顺利。
听风织云 2024.12.31