张立学
摘要:介绍了一种基于线阵CCD的智能位微小位移测量系统。该系统以CCD器件TCD132D为核心,利用8051单片机组成高速数据采集与处理系统,实现了微小位移的非接触测量,并叙述了系统的硬件和软件设计方法。该系统测量准确,电路实现容易、扩展性好,具有广阔的应用前景。
关键词:CCD;非接触测量;微小位移;单片机;时序驱动
中图分类号:TN36 文献标识码:A 文章编号:1009-3044(2015)26-0161-03
Based on the Intelligence of Linear CCD Tiny Displacement Measurement System Design
ZHANG Li-xue
(The Research of Information and Communication Engineering,Shijiazhuang Non-commissioned Officer Academy of CAPF,Shijiazhuang 050061,China)
Abstract: Introduces a kind of intelligent tiny displacement based on linear CCD measuring system.CCD TCD132D device as the core, the system uses 8051 single chip high-speed data acquisition and processing system, realized the non-contact measurement of tiny displacement, and describes the design method of hardware and software of the system.The system measuring accuracy, easy circuit implementation, good extensibility, has broad application prospects.
Key words: CCD; non-contact measurement; tiny displacement; singlechip; time sequence driving
近年来,随着新型光电器件的不断涌现和计算机技术的广泛应用,光电非接触测量位移技术得到了长足的发展,智能化的光电测量系统逐渐取代了传统的测量系统,尤其在一些要求测量精度高、实时化、非接触测量领域中,传统测量方法已经不能与之适应。基于线阵CCD的非接触位移测量系统,由于其精度高,动态性好,已经被广泛应用于各种工件的在线检测及高精确度、高速度的检测技术领域,而且便于同计算机组成高性能测控系统[1]。
CCD(Charge Coupled Devices)电荷耦合器是一种集光电转换、电荷存储、电荷转移为一体的传感器件。把入射到传感器光敏面上按空间分布的光强信息,转换为按时序串行输出的视频信号[2]。要达到高精确度、高速度测量要求,CCD测量系统必须具有优良的信息处理功能。提出一种利用单片机组成高速数据采集与处理系统,该系统在驱动电路、二值化电路、计数电路等硬件和软件上进行了精心设计,确保了测量数据的精确性。
1 测量原理及系统组成
1.1测量原理
图1示出了线阵CCD平行光法进行非接触位移测量的原理。
将线阵CCD置于平行光路前方,被测物放置于平行光路与CCD之间,被测物移动前射向被测物的光一部分挡住,沿边缘部分投向CCD,此部分光与被测物位置有一一对应关系,当物体发生轻微移动,射向CCD的光发生变化,也就代表了被测物位置发生了变化,利用此原理可以测量出被测物的位移。
1.2系统组成
该系统主要由光源模块、线阵CCD、二值化电路、单片机、显示模块组成。通过CCD对光的感应作用,将光信号转换为电信号后进行二值化处理,然后对位移信号进行接收与处理并显示,实现对位移的测量,如图2所示。
光源模块由半导体激光器及棱镜组成,主要产生平行光,采用数块小角度棱镜,直接将激光扩束成任意尺寸的线状平行光源。CCD是一种完成光电转换的图像传感器,广泛应用于几何测量、图像传感、机器视觉等领域。在应用CCD时主要解决的两个问题是CCD驱动时序的产生和CCD输出信号的采集处理[3],本文选用的线阵CCD是东芝公司的TCD132D,负责把光信号转化为电信号。CCD输出信号为模拟信号,采用二值化电路对信号进行处理,将CCD视频信号中背景与图像信息分离成二值电平信息,二值化电路采用硬件电路实现。单片机选用Intel 公司生产的8051单片机,通过和外围电路配合为CCD提供时序和驱动。8051单片机和8253计数器组成信号采集处理电路,对二值信号进行计数,位移传感器所测量到的位移信号转换成了单片机的计数值,然后通过软件处理,送到显示模块进行位移数值显示,从而完成了对位移量的测量与显示。
2 系统硬件电路设计
2.1 CCD驱动电路
51系列单片机具有低功耗、扩展灵活、控制稳定等特点[4],采用一种基于8051单片机的新型驱动电路,如图3。单片机采用12M的晶振,ALE信号的频率是2MHz,对ALE信号4分频作CCD主时钟ΦM,因此ΦM的频率是0.5MHz,用RD、WR信号相与后取反,用于弥补进行外部数据读写时ALE信号的缺少。CCD数据输出速率为0.25M,时钟脉冲ΦCCD的频率是0.125MHz。脉冲信号由计数器计数通道之一提供。在计数器装入计数初值N后,将计数器设为自动填入计数初值的工作模式。利用ALE产生CCD驱动时序具有硬件结构简单,调试编程容易和智能化的特点,实现单片机的数据采集与CCD输出信号速率严格同步,不占用CPU的时间,为了获得精确的CCD驱动时序,程序设计中尽量不使用转移指令[5]。
2.2 二值化电路
CCD输出信号二值化处理方法采用浮动阀值法[6],此电路由电压比较器构成,如图4。在固定阀值法的基础上,使电压比较器的阀值电平随CCD输出视频信号的幅值变化而浮动,当测量系统中光源强度的变化引起CCD输出信号变化时就可以通过电路将CCD输出视频信号幅值的变化关联到阀值电平上,使阀值电平跟着变化,从而抵消CCD输出视频信号因光源不稳定而造成的误差。
2.3 测量计数电路
由线阵CCD的工作原理可知,CCD器件被光照射部位将产生一段光信号,而这光信号则包含了该位移传感器所要测量的位置信息。在CCD得到驱动脉冲后,由SH端口输出一段序列脉冲,这一列脉冲就反映了所要测量的位移信息。因为该列脉冲的个数对应着被测量点相对于零点即基准点的像素的个数,根据所用的CCD的数据手册可以计算出被测的位移量。要对由SH口输出的脉冲计数,那么就必须确定计数的开始时间与终止时间。根据CCD的工作原理,可知道当光照射到测量物体的边缘时,线阵CCD上对应于测量物体边缘的像素将会产生一个突变,如会突然产生一正脉冲,这个突变脉冲将和其他像素产生的正常光电信号从Sout端口来。Sout输出的信号经二值化处理后,将会得到一个规则的、有确定边界的信号。因此用经过二值化处理后的信号中的突变脉冲来产生中断来控制单片机终止对SH端口输出脉冲的计数,当CCD得到驱动脉冲时就开始计。由SH端口输出的信号包含了所要测的位移信息,用单片机对这一有序脉冲进行前后边沿提取,即用单片机的计数器对这一外部脉冲进行计数,这样就将本位移传感器所测量到的位移信号转换成了单片机的计数值。
如图5,单片机8051的P1口来与8253来通信,即传输控制信息和传送计数初值等,用单片机的P0.7作为片选地址线来选取8253,用P0.5和P0.6来与A0和A1连接,用P0.4与P0.3来连接WD与RD,这样就以通过单片机来对计数器和控制器进行读/写,以便控制8253工作。CCD的Sout端口输出的信号经过一个由电压比较器组成的二值化电路接入到单片机的P3.2(即外部中断引入口),而SH端口输出的移位脉冲则接入到单片机的P3.4(单片机计数器T0的外部脉冲引入口)。利用二值化后的信号产生中断来对SH口输出的信号进行计数,将计数值存入到单片机的片内存储器中。
2.4 显示模块
单片机从8253读取到的计数值(所测量的位移信息)进行相应的处理,并通过串口将数据[7]送到显示模块即可以显示测量位移数值,显示模块选用液晶显示器。
3 系统软件设计
系统软件设计采用模块化程序设计,主要是系统初始化模块、单片机的计数和中断处理模块、8253的初始化和计数定时模块和显示模块等。根据系统程序流程图(如图6)分别写出各个模块的程序代码。系统初始化模块包括串口初始化、中断初始化、数据取出与保存、地址分配、计数器初始化、显示初始化等。8253控制模块主要是与单片机的接口通信以及控制字的确定。单片机控制程序主要是计数、中断及根据CCD参数对测量数据的接收与处理。
4 结论
该系统可以实现0.01毫米的测量精度,并且电路和程序实现简单、成本低,可以广泛应用于微小位移的非接触测量环境中。目前CCD器件和单片机发展速度非常快 ,在此系统基础上可以选用高性能的器件,以实现更高精度的测量。
参考文献:
[1] 苗世迪,乔佩利,林克正,等.基于线阵CCD的精确测量方法研究[J].哈尔滨理工大学学报, 2006,11(2):1-3.
[2] 王松,韩军,邬晶.基于线阵CCD测径系统检测电路设计[J].科技信息, 2009(3):104-105.
[3] 田小超,李忠科,基于双单片机的线阵CCD驱动及信号处理系统[J].现代电子技术,2014(20):59-61.
[4] 唐亚军,郭喜庆,杨敬娴,等.基于51单片机的线阵CCD驱动设计[J].微型机与应用2013,32 (12):73-76.
[5] 孟继科.基于单片机的线阵CCD驱动设计[J].太原科技大学学报,2007,28(6):483-486.
[6] 周维龙.基于80c51单片机控制的CCD视频信号二值化电路[J].湖南冶金职业技术学院学报2007,7(1):75-77.
[7] 张伟征,赵书俊,张大伟,等.基于单片机的切纸机位移测量系统[J].现代电子技术2006(11):96-97.