高精度电压比测量方法
在许多测量系统中,经常要进行电压比的测量, 即V1/V2,如非线性系数的测量,通常的测量方法是模拟量经多路A/D转换后经单片机进行高精度浮点计算,这样既要求A/D转换要有较高的精度,又要求单片机要进行高精度的浮点运算。我们采用了MAX7135芯片即实现了高精度的A/D转换,又进行了电压比的计算,单片机仅需要简单的浮点运算就可直接得到V1/V2的比值。
本文引用地址://m.amcfsurvey.com/article/2869.htmMAXIM ICL7135是CMOS单片位(十进制)双积分型高精度A/D转换器,除基准电压、显示驱动器和时钟之外,它包括双积分式转换器所需的全部有源器件,具有自动校零和自动极性转换功能。MAXIM ICL7135的封装形式为DIP28,ICL7135每个测量周期包括三个阶段:从启动A/D转换开始为“自动校零(A/Z)”阶段,时间长度固定为10001TCL,TCL为外加时钟周期;其后为对被测电压信号积分(INT)阶段,持续时间10000TCL;最后为对基准电压反向积分(DE)阶段,持续的时间与被测电压信号大小有关,最大为20001 TCL。一个完整的转换周期需要40002个时钟脉冲,如图1所示。
直流电压比通常的测量方法是将两模拟量V1、V2分别经A/D转换后,再进行浮点除运算,这样做不仅实现电路复杂,速度慢,而且两次测量后再进行数据处理将会产生积累误差,影响精度。我们采用一片MAXIM ICL7135芯片,经一个测量周期后可直接得到V1/V2的值。
根据双积分ADC的原理:调零阶段后,首先对被测模拟信号V1积分(采样阶段),即对积分电容CINT充电,经过时间t1后,有
(1)式中NTCL即为t1,TCL为时钟脉冲的振荡周期,对于MAXIM ICL7135,N为10000;然后对基准电压进行反积分(测量阶段),因为基准电压VREF与被测电压V1极性相反,于是使CINT放电,经过t2时间后,有
(2)式中NX TCL即为t2,TCL为时钟脉冲的振荡周期,NX为时钟脉冲的计数值。由式(1)(2)可得:
(3)根据式(3),若我们把被测模拟电压V2作为基准电压(VREF)输入,则可得V1/V2即为采样阶段和测量阶段所需的振荡脉冲个数之比。由图1可知,当被测电压V1积分阶段一开始,BUSY端即输出高电平,并一直维持到积分器过零后的第一个振荡脉冲(在过量程时,其高电平保持到转换周期结束)。所以只要测出BUSY信号维持为高电平期间振荡脉冲的个数,而N=10000,则可得NX。
直流电压比的实用测量电路如图2,由单片机AT89C2051、A/D转换器MAXIM ICL7135和显示电路(图中未画出)组成。将R/H与P1.0连接,实现程序启动A/D转换。BUSY信号与时钟信号CLK经过与非门连到P3.4(T0)引脚,使AT89C2051内部定时器T0对时钟信号CLK与BUSY信号向与后进行计数,则可得NX,也就可得V1/V2。STB信号连到P3。2作为单片机对A/D转换器转换结束的判断。
若单片机的fOSC=12MHz,则ALE引脚输出的2MHz信号经74LS161构成的8分频电路,得到频率为250KHz的信号作为MAXIM ICL7135的时钟。本电路测量范围:V1/V2<2(0.0000~1.9999)。
主程序完成初始化、启动A/D转换、数据显示,AT89C2051的定时器T0工作在方式1,对外部事件计数,外中断0工作在边沿触发方式。外中断0的中断服务程序完成转换数据读出、处理工作。以下分别给出主程序和中断服务程序框图(图3,图4)及初始化程序段:
本文介绍的测量方法,具有结构简单、价格低廉、精度高、抗干扰能力强等特点,该测量电路和程序已实际应用于压敏电阻测试仪中非线性指数(=1/log(V1/V2))的测量,精度可达20000分之一,但应注意电压比范围V1/V2应在0.0000~1.9999之间。■
参考文献
1何立民,MCS-51系列单片机应用系统设计[M],北京航空航天大学出版社,1996。
2王福瑞,单片微机测控系统设计大全[M],北京航空航天大学出版社,1999。
评论