高精度电阻校准
AD5933将同相分量Uo1,正交分量Uo2作为结果输出,在理想情况下,不考虑放大器等电路引起的幅值和相位的变化,利用解调后同相和正交分量Uo1,Uo2结合激励信号的幅值,参比电阻的值就可以计算出阻抗的幅值和相位信息,如下式所示。
但是实际情况下,由于放大器等电路引起的幅值B和相位a的变化,测量得到的同相和正交分量为
,
,利用这两个结果通过计算得到的幅值和相位分别为
,
,显然存在系统误差。为了消除系统误差,本文通过测量精密电阻来校准被测电阻。假设测量精密电阻得到输出值分别为
,其中CX为校准电阻的电导值,精密电阻为纯电阻不引起相位变化。同理计算校准电阻的幅值和相位得到的计算值为,
。由此利用测量计算值进行比较可得被测电阻的准确值,
。
由此可见,只要合理的选择校准点和校准点之间的间隔,通过校准可以去除由于放大器等电路引起的幅值和相位系统误差,得到一个高精度的测量结果,这种计算的方法,由于测量条件完全相同,使得系统误差完全抵消,相比之下比基于AD8302的生物阻抗频谱测量仪的研制[3]一文和基于虚参考点的生物阻抗测量方法一文提出的方法,对校准电阻和待测电阻采用两路电路分别测量,将很难保证两路的对称性,对精度的提高有限。
非线性补偿 如上所述,使用本系统对一组不同阻值的标准电阻进行测量,得到测量模块输出的解调结果,建立解调结果与实际阻值的对应关系,利用此对应关系可以通过查表或差值的办法,通过解调结果计算待测电阻的阻值,进一步补偿误差提高精度,这就是对系统的非线性补偿。对于控制器而言查表方法占用存储空间,而复杂的插值影响速度。本系统利用单片机作为控制器,在有限的存储空间和运算速度的条件下,采用分段线性插值的方法实现非线性补偿。
实施方法为:首先将系统测量一组标准电阻,得到的一组输出值,将输出值转换成幅值并与实际阻值一一对应的存入一组表格。当系统进行实际测量时,将实测阻抗值换算成实测幅值,即DX,查表找到DX对应的幅值所在表格的区间,在这个区间上做线性拟合,计算出实测阻抗的幅值,并返回输出。
在某个激励频率下,测量纯电阻网络时,目标内部的容性成分可以被忽略,此时,系统测量到的相角,主要由系统相移构成。将对应检测到的相角作为相位补偿值,即可通过加减运算对实测相位进行补偿。
在不同放大倍数、不同激励频率下执行上述表格生成和相位补偿的测量,就可以得到一系列表格和相位补偿值。实际测量过程中,根据放大倍数和激励频率选择相应的表格和相位补偿值,进行电阻抗值的计算和补偿,即可进一步提高系统的精度。
结果
笔者利用现有系统测量了一组由变阻箱产生的纯电阻,实测结果和电阻理论值以及相对误差列在表1中。测量条件为:测量电阻在1k到10k之间,激励频率50kHz,激励幅值1V。
表1 实测数据
结论
本文采用的阻抗测量芯片AD5933,是一款具有很高的集成度的片上系统,片上集成了DDS、12位的ADC和实现DFT算法的DSP,作为一个片上系统本身就具有抗外界噪声干扰和简化测量电路的优点。而且这款芯片从测量原理、解调原理、添加校准点等方面提高了精度,芯片本身的设计符合了设计高精度测量系统的基本要求。最后笔者通过分段线性差值的方法,利用单片机控制器的有限资源,进一步提高了系统的精度。并且通过本文所述四个部分的有机结合,有效降低了对电流源和参比电阻精度的要求,提高了系统的工艺性。最终实现了一种高精度,工艺性好,电路简单的高性能阻抗测量的方法。