高精度微小倾角检测技术研究

2015-10-27 02:14刘薇
电脑知识与技术 2015年21期

刘薇

摘要:给出了一种基于电容数字转换芯片AD7745和微处理器P89C668的微小倾角检测方法,设计了其硬件电路,编写了相应的测量软件。结果表明:该方法测量精度和分辨率高,量程宽,稳定性好,可广泛应用于各种平面水平度、倾斜角及平面度等的测量与调整。

关键词:微小倾角检测;AD7745;P89C668

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2015)21-0170-03

A Study of High-Accuracy Detection Technology of the Small Angle

LIU Wei

(Jiangxi Vocational College of Finance and Econamics,Jiujiang 332000,China)

Abstract: Proposed a small angle detection method based on CDC converter chip AD7745 and microprocessor P89C668,designed its hardware and software. The result shows that this design has advantages in high-accuracy,high-resolution,wide-range,and also is good in stability, so it can be widely used in the geometrical measurement and adjustment of flat level degrees,small angle and flatness.

Key words:small angle detection;AD7745;P89C668

微小倾角检测广泛应用于水平位置倾斜度、两部件相互平行度和垂直度、机床、仪器导轨的直线度、工作台面平面度以及平板的平面度等的测量与调整,在机械测量及光机电技术一体化技术应用中占有重要地位。目前对微小倾角的检测一般是利用电容传感器来感知被测平面或工作面相对于绝对水平位置的倾斜角度,在稳定的交流激励下,角度的倾斜引起相应的电容变化量,然后经过电容电压变换、交流滤波、交流放大、交直流转换、直流滤波、直流放大、模数转换和温度补偿等,最终把电容的变化转变为易于处理和显示的电压变化量,从而实现倾角的测量。上述整个测量是一个复杂的模拟电路处理过程,分立器件多,不但开发周期长、成本高,而且极易引入干扰,很多时候往往得不到pF级微小电容的变化,从而不能很好地实现高精度微小倾角的测量。而本文所使用的电容数字转换芯片AD7745[1]能把被测电容直接转换为24位数字量,无需任何外部转换电路,加上电源管理电路,微处理器外围电路等就可实现微小倾角的测量与显示,这是一种全新的检测方案。

1 总体方案

本文所述的微小倾角检测主要包括差动电容传感器、电容数字转换芯片AD7745、微处理器P89C668及其外围电路、电源管理电路、显示电路和测量软件等。电容传感器采用两静极片、一动极片的差动结构,外部金属屏蔽,三个极片通过三根屏蔽线引出直接接到AD7745的差动电容输入端,AD7745把电容的变化量直接转换成24位数字量送微处理器P89C668进行处理,最后送液晶显示器进行显示,电源管理电路则为各模块电路提供稳定电压,如图1所示。

2 硬件电路设计

硬件电路主要包括电源电路设计、电容测量电路设计、微处理器电路设计、显示电路设计等,如图2所示。

2.1 电源电路设计

电源电路负责为各模块如电容测量模块、微处理器处理模块等提供稳定的直流电压。由于微小倾角检测主要应用于水平仪、倾斜仪等便携式精密量具中,因而需考虑用电池供电。电容测量芯片AD7745和微处理器P89C668均是5V供电,一般的两节干电池只能达到3V电压,若采用4节干电池,则相应量仪的外形尺寸就要做得相对更大,而采用锂电池,虽然能达到5V电压,但成本太高。因而在设计电源电路时,就需考虑以下几下问题:采用一或两节普通干电池供电以降低成本;电源电路具有升压功能;输出电压稳定。基于以上考虑,本设计中电源采用MAX1797芯片[2],TSSOP超薄微小结构封装,电路如图2中MAX1797模块所示。电源输入采用一节1.5V普通干电池,经输入和输出电容滤波后,可从该芯片的OUT端输出5V的稳定直流电压,最大输出电流370mA。当输入端干电池电压降至0.8V时,MAX1797自动关断。

2.2 电容测量电路设计

电容测量电路的核心是电容数字转换芯片(CDC)AD7745,电容测量分辨力4aF,测量精度4fF,线性度0.01%,电容测量范围±4.096pF,内嵌分辨力0.1℃的温度传感器,典型功耗3.5mW,工作时,芯片内部温度基本不发生变化。电容测量有两种方式:单一电容测量和差动电容测量。本设计中采用差动电容测量方式,差动电容传感器的两电容静片通过屏蔽短引线接至AD7745的CIN1+和CIN1-端,动片通过屏蔽短引线或驱动屏蔽技术和EXCA端相连,如图2中AD7745模块所示。AD7745上电复位后,内部的时钟发生模块产生的高精度高稳定度的频率为32KHz激励信号通过EXCA端输出对电容进行不断地充放电,若电容传感器所在平面有一定倾斜,两电容的电容量就会发生变化。AD7745约在50mS内完成一次电容变化量到24位数字量的转换,转换结果存放在内部的三个8位寄存器中,若三个寄存器各位全是1,则所测电容为+4.096 pF;若三个寄存器各位全是0,则所测电容为-4.096 pF。AD7745每完成一次电容数字转换,RDY端就会输出低电平并维持至下次转换开始,同时转换结果从IIC接口的SDA输出。由于SDA和SCL是开漏输出,因而当其和微处理器等进行数据传输时,为保证数据的正确传输,需分别用10K的电阻对其进行上拉。这样,我们就可根据三个寄存器的值来计算得到所测电容的大小,最后通过标定即可得到倾斜角的大小。

2.3 微处理器和显示电路设计

本设计中微处理器的主要作用是数字滤波、对AD7745相关的寄存器进行设置、与AD7745进行通信并获取与电容相对应的数字量、电容数字量到倾斜角度值的转换、把结果送显示器进行显示等。本文选择P89C668微处理器[3],自带64K Flash存储器和IIC接口,可方便地与AD7745的IIC口进行通信,无需外部扩展存储器。在AD7745的IIC口线上拉情况下,可用AD7745的SDA和SCL端口分别与P89C668的SDA和SCL端口进行相连,AD7745的RDY数据准备口接至P89C668的中断输入口,如图2中P89C668模块所示。P89C668的P0口与液晶显示器OCM12232-3的数据口连接并用10K电阻上拉,控制线由微处理器的I/O口进行控制。程序下载电路及P89C668与上位机的通讯电路可采用MAX232芯片,只需外接5只电容即可。在下载程序时,只需把P89C668的PSEN口拉低,让微处理器进入Boot ROM引导程序下载即可。微处理器的晶振电路、复位电路、按键电路等在图2中已略。

3 软件设计

软件设计采用C语言,编程环境为Keil uVision 4。首先微处理器、AD7745和液晶显示器进行复位及初始化,其中对AD7745相关寄存器的设置很关键;微处理器一旦接收来自AD7745数据准备好RDY线的中断,便从AD7745的IIC口读取一次数据,然后对数据进行数字滤波,接着把滤波后的数据转换成相应的倾斜角度并送液晶模块进行显示,具体的程序流程如图3所示。

4 实验

在软硬件都设计好后,把差动电容传感器及电路密封于金属屏蔽壳内并安装在水平底座上,若水平底座所在的平面发生微小的角度倾斜,通过上述检测方案就能很容易地把相应的角度倾斜量检测出来。表1列出了利用本检测方案在±1000角秒(″)倾角范围内的测量误差数据,表2列出了在恒温和隔震条件下的读数稳定度数据。

由表1实验结果可知,当倾角变化在±600″范围内时,本文所述的倾角测量误差≤0.5″,分辨力可达0.1″,线性度接近1;当倾角在 ±1000″附近变化时,最大测量误差为1.4″,线性度变差,这是由于电容传感器本身的非线性引起的,这种非线性误差可多次实验后通过软件补偿进行修正。

由表2实验结果可知,本文所述的倾角检测方案在恒温和隔震条件下,在30分钟内的最大不稳定度为0.2″,这种微小的读数漂移基本不会对其在测量应用中产生影响。

5结束语

由以上设计及实验结果可知,本文给出的微小倾角检测方法测量精度高,在±600″量程范围内

精度可达0.5″(若经过线性修正,精度还能更高)分辨率小于0.1″,同时,由于采用了全数字电路的设计方法,使得检测电路简单,也提高了抗干扰性能,从而保证了检测的高稳定度。这种高精度、高分辨率、宽量程和高稳定度的微小倾角检测对工程测量中的各种平面水平度、倾斜角及平面度等的测量与调整具有重要应用价值,对微小角度的测量技术研究也有一定的参考意义。

参考文献:

[1] 24-Bit Capacitance-to-Digital Converter with Temperature Sensor [Z].Analog Devices,Inc., 2005.

[2] Low Supply Current, Step-Up DC-DC Converters with True-Shutdown [Z].Maxim,Inc., 2000.

[3] 80C51 8-bit Flash microcontroller family 64KB ISP FLASH with 8KB RAM [Z].Philips Semiconductors,Inc., 2001.