运放振荡器:通过 Phase Shift 将负反馈变成正反馈
前言
运放的开环增益极高,负反馈迫使输入与反馈的误差信号极小,以此稳定工作;而正反馈则会让运放振荡,当满足特定条件(如 Barkhausen Criterion)时,电路能够自我起振和维持。
文中素材来自于书籍《 Operational Amplifiers & Linear Integrated Circuits: Theory and Application 》第 9 章内容,该书还提供开源版本,详见参考链接 [1]、[2]、[3] 。
我只做了一些要点的梳理,详情请看原文。
移相振荡器(Phase Shift Oscillator)
基于 Phase Shift 的运放振荡器,工作原理如下:
左图为经典反相放大器,输出与输入反相 180°,反馈信号与输入叠加以减小误差,构成负反馈。
右图在反相放大器的输出上增设 180° 相移网络,结果就是相对原输入总相移了 360°(等效同相),从而构成正反馈。该电路仍然具有原来的负反馈,所以仍然可以套用反相放大器的增益公式。
将正反馈作为输入 —— 解决了信号源问题,如果参数设置得当,无需外部激励,仅靠自身噪声即可工作,并且只有满足条件的噪声(特定频率信号)可以起振和维持,其余的噪声因相移不符而逐渐衰减。
文中针对三阶 RC Ladder Network 展开分析:
图中,每级设计为 60° 相移,三级累计相移 180°。文中推导了 60° 相移对应的频率,通过阻抗关系证明单级衰减为 0.5,三级总衰减为 0.125 。因此,与之配合的反相放大器需提供 8 倍增益,使环路增益为 1,以满足振荡维持的条件。
文中举了一个例子如下:
图中计算了振荡频率,反相放大器设置为 8 倍增益。另外,为避免 Loading Effect,RC Ladder Network 中的电阻逐级增大,电容逐级减小。
仿真案例
(1)一阶 RC 网络
在 LTspice 中构建 “一阶 RC 网络”,R、C 的数值设置为与图 3 中第一阶一样:
在频谱图上,可以看到 919Hz 对应的相移是 60° 。
然后将 919Hz 作为信号源输入,看下波形:
如果量测的话,可以看到:
- 输出电压(红线)超前于输入电压(绿线) 60° 。
- 电容两端电压(黄线)滞后于输出电压 90° 。
- 电容两端电压 + 输出电压 = 输入电压 。
(2)三阶 RC 网络
在 LTspice 中构建 “三阶 RC 网络”,R、C 的数值设置为与图 3 中一样:
在频谱图上,可以看到 919Hz 对应的相移是 180° (图中 177.5°)。超过 180° 后,LTspice 会做相位翻转。
然后将 919Hz 作为信号源输入,看下波形:
可以看到:输出信号与输入信号相位相反。我也测量了输出信号幅度为 116mV,与输入信号相比约为 1/8 的增益。
(3)移相振荡器
在 LTspice 中构建图 3 中的例子,仿真结果如下:
放大波形查看效果如下:
可见,Vin 与 Vout 正好相位相反。
所以,放大器饱和了吗?
如果运放的增益设置更大,又会怎么样?
总结
本文介绍一种基于“移相”(Phase Shift)原理的振荡器,它让我们对 RC 网络与运放有更深了解。
案例代码
本文 LTspice 案例上传至 Gitee (LTspice 案例 15),可下载运行:
参考资料
欢迎关注我的微信公众号“疯狂的运放”,及时收到最新的推文。