在第1部分中,我们简要介绍了文氏电桥振荡器,然后确定了双二阶滤波器是能够产生<0.0001%/-120dB失真的振荡器的最佳候选,并展示了其完整电路。将其视为一个模块,即可以线性限幅器的形式添加无失真反馈。
尝试使用JFET进行限制的结果令人失望。即使对电路进行了优化,将其固有的非线性降到最低,它也会给反馈信号增加约-92dB/0.0025%的三次谐波。如第1部分所述,从输入到低通输出的三次谐波衰减约为22dB,因此我们最终在输出端得到0.0002%或-114dB的失真。接近,但还不够。
让我们回到光电导光隔离器,我们在第1部分中用它来稳定文氏电桥电路。它的LDR或光敏电阻部分当然是线性的,但LED就需要小心驱动,以防止出现明显的纹波馈通,因为纹波会调制反馈,从而增加失真。图1显示了添加到基本双二阶模块的控制回路,它采用了一种巧妙的方法,可以在保持合理回路动态的同时最大限度地减少纹波。(该模块在第1部分的图4中有完整显示。)
图1:使用合适的控制回路进行反馈可以稳定振荡水平,而不会增加明显的失真。
由于双二阶电路具有两个反相输出(HP和LP),因此我们可以轻松实现全波整流,但我们可以做得更好。BP输出与这两个输出成90°/270°,因此我们还可以同时使用它及其逆输出来实现4相整流,将纹波削减至单相值的四分之一。该纹波也将是基频的四倍,因此我们比使用文氏电桥的效果好(大约)十六倍。
在双二阶中,时间常数精确匹配时,所有三个输出在谐振时具有相同的信号电平,但任何偏移或不匹配都会引入纹波,作为4×分量的次谐波(如果有意义的话)。二极管必须匹配良好,运算放大器需要具有较低的电压偏移,或至少低于二极管失配。需要在调谐电位器部分之间进行良好的跟踪,通常情况下,一个额外的电阻与较高阻值的一半并联,使各部分均衡,就能得到足够的结果。
R16、C3和C4组成稳定运行所需的回路滤波器,而R17和C5则对4×分量进行额外滤波。这些值是折衷的,回路有些欠阻尼,但在整个调谐范围内性能不错,并且稳定时间不到500毫秒。A5将滤波后的电压转换为电流来驱动LED,从而控制LDR的电阻。使用的光隔离器是Silonex NSL-32SR3,用(回收的)NSL-19M51、透明白色T-1 LED和厚黑色热缩管自制的设备效果很好,尽管灵敏度只有一半左右。R18是唯一需要调整的部分,用于设置LED驱动,从而设置AF输出电平。
反馈回路通过R10、R11和LDR的网络闭合。启动时,LDR的阻值较高,但有足够的反馈来启动振荡,之后它逐渐短路R11以提供所需的信号电平。
LDR的响应时间相当缓慢。在我们的驱动电平下,这款LDR的电阻约为1.7k,对亮光的响应时间约为6毫秒,对暗光的响应时间约为30毫秒(测量值为63%)。这为我们提供了一些有用的额外纹波过滤,同时也影响了控制回路的动态。
所有关键运算放大器均显示为LM4562,这是我目前最喜欢的通用音频工作放大器,因为它们兼顾了低噪声、低失真和低偏移量,而且DIP-8也很容易买到。它们标称的THD+N为0.00003%/-130dB,这将为我们的性能设定极限:是时候看看一些结果了(图2)。
图2:经过单位增益缓冲后的低通输出频谱。
不是很令人印象深刻!但请记住第1部分的内容:如果输入动态范围>~90+dB,我就不相信我的FFT,因此请先尝试去除大部分基波。(96dB≈216 :1,这是巧合吗?)将信号通过现在更深的陷波滤波器,如图3所示:
图3:去除大部分基波后的频谱,谐波显示得更加清晰。
这更好!请注意,这些频谱的运行时间非常长,需要对数万个样本的信号进行平均处理。这是避免丢失有效峰值或消除杂散峰值所必需的,同时也能让我们看到那些被噪声掩盖的信号。所有测试均使用12V蓄电池供电,没有市电的嗡嗡声或其他杂音,使用运算放大器作为分路器,并放在接地的法拉第笼中。
我选择使用20dBV的工作电平,因为这是在失真和可用性之间的良好折衷。我的最终设备具有额外的输出增益,由虚拟接地/伪对数电位器级(当然是LM4562)来提供。图4显示了从该设备测得的频谱,测量值为+6dBu(~+4dBV,或~1.54VRMS,或~4.4Vpk-pk),THD接近-120dB或1ppm,其中大部分是二次谐波(来源尚未确定)。
我认为就失真而言,我们已经成功了。
图4:放大至+6dBu后的频谱。请注意改变的比例。
因为我使用了A1-A4的插座,而这是对一个已停用设备的重新组装,所以尝试其他运算放大器很容易。图5显示了KA5532(以前在音频工作中备受推崇)、TL072/TL082(或TL0n4四组)、LM358(在输出端附加额外的10k电阻到Vs-)以及备受推崇的MC1458(本质上是双741)的结果。每次运行都对频率和输出电平进行了微调,以便进行适当的比较。LM358让我感到惊讶,我不得不再检查一下。我一直不喜欢它们的声音,现在我知道为什么了。
图5:其他各种设备的失真频谱。
所有这些工作都是在标称1kHz(实际上是1003.4Hz)下进行的。由于缺乏合适的陷波滤波器,我无法说明其他频率的情况,不过在按比例调整频率后,它们的无陷波频谱看起来与1kHz的频谱大致相同。如图所示,振荡器将在单个范围内从<500Hz调谐到>5kHz,这使其成为一个非常有用的工具。对于其他范围,需要更改回路滤波器以保持足够的回路稳定性,同时保持良好的滤波效果。
这些结果可能显示THD水平低于-140dBc或0.00001%,或100ppb,但它们仍将被噪声淹没,而迄今为止一直被忽略的THD+N数字看起来比简单的THD数字要糟糕得多。在我们的条件下使用LM4562数据表数字进行计算意味着输出缓冲器(反相、单位增益)的噪声在20kHz带宽内约为-114dBV或-112dBu,其中(电阻)热噪声占主导地位,因此我们可能"只"得到约92dB或0.0025%,或25ppm的THD+N。将交流微伏表(BW=10kHz)连接到输出,双四极管中的R5/6断开连接,C2短路,测量值为-113dBu,与计算结果一致。
使用不同的运算放大器可能会对电流噪声略有帮助,但我们永远无法降低电阻器的噪声,除非我们大幅降低它们的阻值。Analog Devices发布了一篇关于运算放大器噪声的优秀基础教程,以及几篇更为详细的分析。该教程来自他们出色的《运算放大器应用手册》,其中H章(历史)展示了从昔日的发光瓶子到我们今天使用的“精制沙粒”的有趣变迁。
显然,当使用它作为测量音频链THD的信号源时,需要进行平均处理,以便从噪声中提取谐波,就像我们在整个DI中所使用的那样,但请确保您的FFT值得信赖,或者使用陷波滤波器来降低基波。
现在我们就获得了我们想要的正弦波振荡器。
(原文刊登于EDN美国版,参考链接:Ultra-low distortion oscillator, part 2: the real deal,由Ricardo Xie编译)