尽管求出了Ue1、Ue2,但由于施加于合成电阻的电压或电流不定,所以并不能通过改变K值来消除误差。有效的办法是外接D/A转换器来抵消Ue1、Ue2,以彻底消除式(2)、(3)中的非线性项。作者采用了廉价的10位双D/A转换器TLC5617的两个通道分别对两运放进行补偿。

对于运放A1,接成非单位增益的同相放大电路时,可在反相输入端加入校零电路。为保持电压跟随器形式,设计了图2所示的自动失调调零电路。AD707K等运算放大电路提供了失调电压调节端,只要在两调零端接入电位器至电源端,改变两调节端的输入电流即可实现手动调零。作者为实现自动调零,根据调零原理改进了调零电路。

图中U4的基准电压选为2V,则U4的输出电压范围为0~4V。接入R3、R4、R5的目的是提供一个调节范围的中心位置,使电压能够双向调节。对D707K及图示的参数,失调电压与D/A转换器的输出电压间的关系是线性的。经过实际测试,其灵敏度为7.35μV/V,即0.028V/bit,总调节范围为±14.7μV。运算放大器A2采用与A1同样的调零方法。

由此可见,可以利用数/模转换器来消除Ue1及Ue2。由于运放失调漂移较小,可以间隔一定时间后再次自动校正。失调电压及1μV以上的热电势等误差电压均可得于校正。至于运放的增益误差等(如140dB增益时,1V的输出电压也会引起0.1μV的运放两输入端的误差),其性质与系数K相同,通过内置电阻测量电路的自校正即可消除。因此,合成电阻精度主要取决于电阻测量电路。合成电阻中,D/A转换器的控制、失调电压的计算及其自动校正均由内置的DSP320C32来实现。