目前,对物体的重量进行测量主要依据两种基本原理。一是利用力学中的杠杆平衡原理,二是利用各种传感器将物体的重量信息转化成电信号,再对此电信号进行分析处理提取该物体的重量信息。前者适用范围广,量程大,是一种经济的方法,但测量精度有限且需人工完成,因此,这种方法无法实现实时动态测量。后者采用了传感器,这就有利于用电子装置来对重量信息进行分析、计算,并显示结果,但是,很多传感器受动态范围的限制。本文则从光学技术角度结合力学原理利用CCD传感实现了对物体的动态实时测量。
2测量原理
CCD对物体进行测量的原理如图1所示。平面镜的转动支点为O,且垂线OW交透镜轴为W点。W点位于f′(焦距)与2f′之间。当没有测量物体时,平面镜与激光束的交角为θ。CCD放在透镜的右边,它和透镜中心的距离为f′,这样便于计算y′。下面分析其原理并导出测量公式。
被测物体在弹簧上产生形变。设物重为G,弹簧的弹性系数为k,形变为x,根据虎克定律,则
G=kx。(1)
将弹簧形变反映为平面镜的转角变化θ。
半导体激光器发出的连续平行激光,入射到平面反射镜上,平面镜不同位置对应不同反射光线。反射光线聚集到CCD上,如图1所示,利用副光轴的作图法,不难得出如式(2)所示的关系:
其中,y′代表CCD上的光点到光轴的距离。f′代表透镜的焦距,θ代表平面反射镜的转角。由此可见,如果能够通过CCD快速准确地获得y′,那么通过求反函数就可以求得θ。
下面推导测物体重量G的公式,也就是要导出G与y′的关系式。
图1中,l为弹簧原长,h为平面镜固定点距水平位置的高度,φ为平面镜处于平衡位置时与垂直方向的夹角,s为弹簧到平面镜固定点O水平方向上的距离。由图1可知,
3系统设计
图2所示是本系统的工作原理:CCD图像传感器把光信号转变为电信号。在A/D转换器中,将CCD产生的电信号转换为数字信号,并传输到图像存储单元。DSP通过对数字信号进行处理,最后输出结果。
物体使弹簧产生的形变,通过传动装置,使平面镜转动一个角度,激光器产生的激光照射在平面镜上不同的位置产生不同的反射光线,通过透镜聚集到CCD上。CCD产生的电信号是视频信号,需要对它进行预处理。由于信号比较小,首先要进行放大,然后还需要进行抗混叠滤波。
信号经过预处理后,还不能被DSP所接收。需要将信号进行A/D数据转换,在A/D转换时采用TI公司的A/D芯片TLC5510,这是一种高速A/D转换器。A/D转换是在DSP的控制下进行的。
TLC5510的工作特点是:当采样时钟为高电平时,A/D转换器处于跟踪状态;时钟下降沿时,输入信号被保持,A/D转换器进入转换状态,转换数据延迟2.5个时钟周期后在时钟上升沿输出。这样,对于A/D采样,每一个时钟到来时就会有采样数据输出。因此,TLC5510除了数据线外,还包含一个输出允许接口信号。
数据采样系统的关键是地址产生电路和采样时钟产生电路,传统采样大多借助逻辑芯片来分别实现这两部分电路。而这里引入软件采样的概念,即,利用软件编程的方法来分别产生A/D采样所需的时钟脉冲和地址信号。控制采样的指令如下:
LD起始地址,A
RPT每行采样点数
WRITA Smem
本系统采用以TMS320C5409为核心的数据处理系统。TMS320C5409是16bit定点DSP,它使用改进的哈佛结构,具有专用的硬件逻辑的CPU、片内存储器、片内外围设备以及一个高度专业化的指令集。在运算过程中,DSP以中断方式读取A/D采样结果。整个系统是CCD传感器光采样与A/D数据采集、DSP数据处理三级流水线结构。CCD是串行输出,DSP是成组使用数据,所以,要设置数据缓冲区存放AD采样数据。数据存储器中要划出两块缓冲区分别进行数据采样与处理,缓冲区的切换通过软件实现,即,当其中一块进行AD采样时,另一块同时对前一时刻的AD转换数据进行数据处理。
4数据处理
在数据处理中,CCD图像传感器分奇偶场输出电信号。首先,将未处理的电信号存到先入先出(FIFO)缓冲器,DSP从FIFO中取数字信号时,就可以实现数据的实时处理。一个目标通常覆盖了连续几行上的像元,每个目标在覆盖行上的起始位置和连续几个像元处的强度值已存在FIFO中。实时算法每次只需FIFO中连续两行的目标信号,比较当前行和前一行上目标起始位置和终止位置,即可确定一个目标的构成是刚开始还是在继续或是已完成,直到所有行数据处理完毕,这样,所有目标像点的坐标就计算出来了。算法流程图如图3所示。它们的重心坐标公式如下:
其中,Xc、Yc为二维重心坐标,Xi、Yi为第i个像元的序号,Vi为第i个像元对应的信号幅值。
DSP采用重心算法对目标位置y′进行计算时,AD采样选用8bit的AD芯片,系统检测精度可达到1μm以下。可见,系统误差非常小,测量很准确。
5结束语
本系统硬件简单,功能强大,接口方便。高速的A/D转换器的采样速率也很容易用软件来控制,DSP系统运行速度高、编程很灵活、稳定性好、可重复性好、集成也方便。特别是所采用的重心算法,具有算法简单,运算速度快等优点。本系统不仅可用于测量桥梁载重,而且可用于测量运动物体(煤车、火车等)是否超重,具有较高的测量精度和实时性。