-
光学成像系统的结构设计包括对激光发射器、镜头以及感光元件CCD进行合理的选型,同时对三者的位置关系进行合理布局[4],设置能满足测距指标的几何结构参量。
-
由三角测距法原理和光学知识,镜头视角决定了测距模块的测距范围。同时,为了满足远距离测距的要求,镜头要有足够大的焦距。而视角与焦距两个参量相互制约,因此,镜头摄入范围和拍摄距离是一对相互制约的两个因素[5-6]。所以在进行镜头选择的时候,要使镜头的视角和焦距两个参量既能保证镜头有较大测量距离又能保证有合理的测量范围,对于两个参量的确定要保持适中的原则。另一方面,镜头成像尺寸必须适配选定的CCD尺寸[7],本系统采用的CCD感光面长度为8.192mm,所以综合以上因素并经过实际调试,本文中选择成像面为1/2英寸、焦距为9mm、视场角为52°、接口为m12型号的镜头作为成像系统镜头,该镜头能够保证在本系统成像结构中连续采集到48mm~6311mm范围内的激光光斑。
-
本文中选用PANVISION公司的RPLIS-2048EX型号的CCD传感器,该传感器拥有2048个像素,单个像素尺寸为4μm×32μm,分辨率高于市面上绝大多数CCD传感器,线阵长度为8.192mm,最高工作频率可达2.5MHz。同时,该传感器具有先进滤波技术,可有效抑制噪声干扰,一定程度减小光斑中心位置的像移偏移量误差。同时内置二值化电路,3种阈值设置方法:可以外部输入参考电压作为阈值,通过内置数字模拟转换器(digital to analog converter, DAC)人为设置阈值或由内置自动动态阈值模块自动生成阈值,省去了后续人为设计信号处理电路的过程,方便了后期图像的处理。传统三角测距系统CCD传感器分辨率不高,不利于远距离精确测量,成像面尺寸过大,需要设计专门的透镜成像结构进行匹配[8],并且功能单一,需要人为设计后续滤波电路与信号处理电路,该CCD传感器充分克服了以上不足。传感器参量如表 1所示。
Table 1. Main parameters of CCD chip
model RPLIS-2048-EXB-LG array size 12 dark pixels+2048 video pixels pixel size 4μm×32μm image array size imaging area:8192μm×32μm output analog and digital maximum frequency 2.5MHz -
图 1所示为激光三角测距系统的成像结构。传统测距系统对成像结构进行精确设计,保证激光光斑在成像系统中能够时刻聚焦[9-10],所以结构参量的精确性直接关系到系统测量的误差,本系统的成像结构并不服从scheimpflug条件,但系统通过选用高分辨率CCD芯片及分段的距离标定算法,软硬件相结合,保证在不知道精确的结构参量的情况下依然能解算出光斑距离,并保持较高精度。采用这种方式无须专门设计透镜结构,采用符合参量的低成本工业镜头即可满足要求,有效简化和降低传统三角测距系统光学结构的设计负担和制作成本。
在确定了镜头类型及镜头结构参量之后,系统的已知量为镜头的有效焦距f=9mm,视场角θ=52°,以及CCD尺寸x≈8mm,自变量为成像系统的结构参量,包括镜头光轴与激光束方向所成夹角β,CCD中点与激光束方向的垂直距离d。为了简化分析计算的过程,同时为了满足系统几何尺寸的要求,这里将CCD中点与激光束方向的垂直距离d设为50mm,未知量为β,因变量为最终测量指标,包括测量的最远距离L1、最短距离L2、测量范围W和最大分辨度k。
由以上成像系统的结构参量并根据三角激光测距的几何知识来计算系统所要达到的各项指标,根据预期指标要求,选择确定最适合应用需求的结构参量β。
根据图 1,由三角几何知识可以得到如下关系式:
$ \frac{{{d}^{\prime }}}{d}=\frac{d/\text{cos}\beta -x/2}{d/\text{cos}\beta } $
(1) $ \frac{d}{{{d}^{\prime\prime }}}=\frac{d/\text{cos}\beta }{d/\text{cos}\beta +x/2}\text{ } $
(2) $ {{L}_{1}}=\frac{{{d}^{\prime }}}{\text{tan}(\alpha -\theta /2)}-\frac{x\text{sin}\beta }{2} $
(3) $ {{L}_{2}}=\frac{{{d}^{\prime\prime }}}{\text{tan}(\alpha +\theta /2)}+\frac{x\text{sin}\beta }{2} $
(4) $ \beta =\alpha ={{\alpha }^{\prime }}+\theta /2 $
(5) $ \text{sin}\beta =\frac{d}{f+{{f}^{\prime }}} $
(6) $ \frac{{{f}^{\prime }}}{f}~=\frac{{{x}^{\prime }}\text{sin}(\beta -\theta /2)}{x/2} $
(7) 联立(1)式~(5)式得到:
$ \left\{ \begin{matrix} {{L}_{1}}=\left( d-\frac{x\text{cos}\beta }{2} \right)\text{cot}\left( \beta -\frac{\theta }{2} \right)-\frac{x\text{sin}\beta }{2} \\ {{L}_{2}}=\left( d+\frac{x\text{cos}\beta }{2} \right)\text{cot}\left( \beta +\frac{\theta }{2} \right)+\frac{x\text{sin}\beta }{2} \\ \end{matrix} \right.\text{ } $
(8) 式中, L1为最长测量距离,L2为最短测量距离。
测量范围W为:
$ \begin{align} & ~[{{L}_{1}},{{L}_{2}}]=\left[ (d-{{x}^{\prime }}\text{cos}\beta )\text{cot}\left( \beta -\frac{\theta }{2} \right)-{{x}^{\prime }}\text{sin}\beta ,\text{ } \right. \\ & \left. (d+{{x}^{\prime }}\text{cos}\beta )\text{cot}\left( \beta +\frac{\theta }{2} \right)+{{x}^{\prime }}\text{sin}\beta \right]~ \\ \end{align} $
(9) 由(4)式、(5)式得到:
$ k=\frac{{{x}^{\prime }}}{x/2}=\frac{d-f\text{sin}\beta }{f\text{sin}\beta \text{sin}(\beta -\theta /2)} $
(10) 式中, k为系统最大分辨度,即目标最远处物像移动一个像素所对应的物体实际移动距离。
图 2显示的是测量指标随着镜头倾角β的变化情况。因为分辨度越大,测量误差越大,所以由图可看出,最大测量距离与精度是一对相互制约的因素,为了使系统能满足实际应用的需要,将β的范围控制在26°~27°之间。图 3所示为26° < β < 27°时测量指标的变化情况,β的精度为0.1°,图中标识max代表最大测量距离,min代表最小测量距离。为使误差不能太大,同时又能满足室内应用的需求,本系统选择镜头的倾角β=26.4°,此时测量的最大距离约为6648mm,最小距离约为41mm,系统最远距离分辨度约为6.6mm。
-
系统算法主要包括:CCD驱动信号的产生算法; CCD对采集信号的处理算法; 距离解算算法以及上位机接收显示算法。
-
CCD驱动信号的产生算法是系统设计的关键,因为CCD驱动算法直接决定了测距仪的测距频率,在单片机产生CCD驱动信号的同时,要保证单片机能在一个曝光工作周期内完成后续3个算法的执行,只有这样才能保证最大化发挥CCD的工作效能。因此对CCD驱动信号周期的准确控制就成为首要且关键的问题。
CCD工作时的主要信号分别为:(1)STRT:触发CCD曝光的开始信号;(2)CLK:保证CCD正常工作的时钟信号;(3)DVAL:指示CCD像素数据开始输出的标志信号,由CCD产生;(4)VOUT:像素电压输出信号。
RPLIS-2048-EX芯片共有两种曝光方式:短时曝光和正常曝光。图 5为CCD芯片正常曝光的工作波形。正常曝光工作方式为芯片的默认曝光方式,时钟信号CLK为占空比为50%的方波信号,起始信号STRT是触发芯片开始曝光的信号,时钟信号需要在CLK信号的上升沿到来之前即低电平期间开始触发,STRT信号触发后的第11个CLK时钟周期,芯片将结束上一轮曝光过程,紧接着芯片像素阵列将进入初始化阶段,初始化阶段将持续大约16个CLK时钟周期,在像素阵列初始化结束之后,DVAL信号会发生自动跳变,从低电平变为高电平,DVAL信号的上升沿预示着从暗像素开始像素阵列进行新一轮的曝光,在此期间可读取上一轮曝光之后的CCD像素的电压值VOUT信号,每个CLK周期输出一个像素电压,共2060个像素故需要2060个CLK时钟周期才能全部输出,在像素电压值通过VOUT信号输出完毕之后,DVAL信号将再次跳变,从高电平自动下降为低电平,DVAL信号的下降沿预示着像素电压输出阶段的结束。当下一个STRT信号到来时,一个工作周期结束。由上可知,一个工作周期的最小时间为初始化阶段与像素电压输出阶段所花的时间总和,即2060+16=2076个CLK时钟信号周期。
PTA8引脚接的是CCD的DVAL信号,复用FTM模块的输入捕捉功能,在后续的CCD采集信号处理算法中介绍,PTD6引脚复用GPIO功能,用来产生STRT周期性脉冲波形,触发CCD的周期性曝光工作。由于STRT和CLK时钟信号波形需满足一定的时序关系,因此在产生STRT开始信号和CLK时钟信号时,需利用算法对两者时序进行合理的安排设置。
图 6所示为一个曝光周期的数据处理流程。单片机在每两个STRT脉冲信号之间要经过以下几个过程:(1)line init像素初始化过程,等待DVAL信号上升沿; (2)DVAL信号上升沿到来之后,初始化对本次像素信号的DMA采集; (3)对上次曝光采集到的像素信号进行处理,解算出上次曝光采集到的距离信息; (4)启动UART模块,对上次采集的距离信息进行串口传输; (5)DVAL信号下降沿到来之后,利用数组变量对本次曝光采集到的像素信号进行存储,以便下一轮曝光时进行过程(3)的处理来解算得到本次采集到的距离信息。
经过实际实验的测算,过程(1)花费时长为16个CLK周期,即8μs; 过程(2)和过程(3)花费的时间平均约为170μs; 过程(4)花费时长约180μs; 过程(5)花费的时间为310μs。DVAL高电平持续时间为2060个CLK时钟周期即1.03ms,过程(1)~过程(4)的持续时间约为480μs。所以STRT最小周期为DVAL高电平持续时间与过程(5)持续时间之和,约为1.34ms,本系统设置STRT产生的周期为1.40ms,即在理论计算的理想情况下,测距频率可达到714Hz。STRT周期性信号由单片机的PIT定时中断产生。
本系统驱动算法充分利用32位单片机的内部资源,并考虑每个工作环节的时序与时间,设计的驱动算法使CCD传感器能够在最大工作频率下进行测量工作。保证了测距速率。
-
信号采集算法采用单片机的DMA模块进行数据采集,实现了数据运算与图像采集两个功能同步进行,保证了系统工作频率。
如图 6所示,FTM模块的输入捕获中断函数在DVAL信号上升和下降沿出现的时候被调用,在DVAL信号上升沿时,单片机执行以下几个处理动作:(1)单片机开启DMA数据采集,用以采集CCD输出的二值化数字信号,因为有2048个视频像素,所以传输2048次数据,每次传送一个8位二进制数据,8位数据由最高位到最低位分别传送至单片机的PTB7到PTB0引脚,PTB7接CCD的DOUT端口,接收CCD输出的像素二值化信号,单片机PTB6到PTB0引脚接地,所以当像素电压大于设定的阈值电压时,DOUT引脚输出为1,单片机通过DMA采集到的8位二进制数据为10000000,小于阈值电压时,DOUT引脚输出为0采集到的8位二进制数据为00000000;(2)调用距离解算函数对CCD上一次采集的像素信息Pixel_Prev[]进行处理,解算出被测物的实际距离; (3)调用UART串口相关函数将得到的实际距离信息通过串口传送至PC端的上位机。
在DVAL信号下降沿到来时,系统将把CCD传输出来的像素信息存储进Pixel_Prev[]数组,以便CCD在下一次曝光采集的过程中对本次采集的像素信息Pixel_Prev[]进行处理,解析出本次采集到的光斑偏移量x。
-
系统成像结构决定了被测目标点与仪器间的最小距离和最大距离。当目标点等间隔移动时其像点在CCD上并不是等间隔地均匀变化,因此这种测量是非线性的[13]。所以系统采用分段拟合的方法得到距离的标定曲线,再由标定曲线解算出目标距离。相对于传统三角测距由标定曲线确定结构参量不同[14],本系统将标定得到的数量关系存储进单片机,光学结构参量将不再影响距离解算过程,利用软件算法克服了硬件结构上的误差。
本系统理论上测量的最大距离约为6648mm,最小距离约为41mm,但在实际测试时,受结构参量、外部干扰、CCD感应灵敏度等客观因素的影响[15-16],实际测量的最小测量距离为48mm,最大测量距离为6311mm。系统标定步长设为1mm,在标定过程中记录激光光斑与仪器的实际距离y,单位为mm,成像光斑在CCD上距端点像素的像素偏移量x,单位为pixel。
在测量范围内经过3次完整标定并取平均,得到一组平均标定数据集,对平均标定数据集进行曲线拟合,经过实验,若对y和x的关系进行曲线拟合,所得曲线参量会超出单片机的运算处理能力,因此为适应单片机运算能力,此处将y与x的关系转换为1/y和1/x之间的关系,图 7所示为标定实验所得的点集(1/y,1/x)的图形。
经过实验测试,本系统将该点集分成5段,分别为48mm ≤ y < 240mm,240mm ≤ y < 740mm,750mm ≤ y < 2840mm,2840mm ≤ y < 4200mm,4200mm ≤ y < 6311mm,图 8依次为对各段点集进行曲线拟合的结果。图中反映了采样点的点集与拟合曲线的关系。
表 2所示为各段点集拟合曲线的函数。将这些公式编入距离解算函数,解算出与光斑中心偏移量相对应的被测物实际距离。
Table 2. Function of fitting curve of each set of points
48mm ≤ y < 240mm y=1/(-238884699.65/x3+530548.2274/x2-404.94/x+0.111213) 240mm ≤ y < 740mm y=1/(-7899795.464/x3+31495.48609/x2-46.1119/x+0.02521) 750mm ≤ y < 2840mm y=1/(-12825216.53/x3+56003.15446/x2-84.5048/x +0.04452) 2840mm ≤ y < 4200mm y=1/(9381971.246/x3-39260.8585/x2+51.8177/x -0.02055) 4200mm ≤ y < 6311mm y=1/(-431717687.9/x3+2064225.4742/x2-3291.774/x +1.7512) -
三角法激光测量系统由测距模块、PC上位机、被测物体和导轨组成,测距模块被放置在光学平台上,能有效避免震动造成的影响。在进行实验前,首先对光源稳定性进行测试, 保证光源稳定后由导轨带动被测物体单步移动,每移动一步上位机自动读取20帧测量数据并取平均,最后显示出平均后的测量结果。测量每隔10mm进行一次,实验共进行3次,每次采集625个样本点。此处分别只列出近距离和远距离范围的部分测量结果。表 3所示为50mm~950mm范围内的测量结果。表 4所示为5400mm~6300mm范围内的测量结果,步长为100mm。最终测量结果显示,系统平均测量误差为2.8mm,最大测量误差为11mm。
Table 3. Measurement results within the range of 50mm~950mm
distance/mm 50 150 250 350 450 550 650 750 850 950 No.1 50 150 250 350 451 550 650 749 849 950 No.2 50 150 250 350 450 550 650 750 850 950 No.3 50 150 250 350 450 550 650 749 850 951 Table 4. Measurement results within the range of 5400mm~6300mm
distance/mm 5400 5500 5600 5700 5800 5900 6000 6100 6200 6300 No.1 5397 5498 5607 5703 5802 5903 6002 6097 6194 6292 No.2 5396 5496 5611 5702 5799 5904 5999 6094 6192 6294 No.3 5399 5497 5606 5699 5797 5903 5997 6095 6194 6290
室内高速激光三角测距技术的设计与实现
Design and implementation of high speed indoor laser triangulation measurement
-
摘要: 为了实现室内大范围环境激光测距,采用三角测距原理设计了一套高速激光测距系统。该系统采用高分辨率线性CCD传感器采集环境信息并输出二值化信号,由32位单片机对二值化信号进行处理,利用分段拟合法得到的距离解算算法对二值化信号进行解算,从而得到激光光斑与测距模块镜头中心的距离;最后进行了实验验证。结果表明,测距仪具有714Hz的测量频率,最大测量距离为6311mm,最小测量距离为48mm,平均误差为2.8mm,最大测量误差为11mm。该测距系统可满足室内大范围环境测量的要求。Abstract: In order to realize wide range indoor environment laser ranging, a high speed laser ranging system was designed by the principle of trigonometric ranging. Environmental informations were collected with a high resolution linear CCD sensor, and the binary signal was output. The binary signal was processed by a 32-bit single chip microcomputer. The distance between laser spot and lens center of the ranging module was obtained according to the distance obtained by the piecewise fitting method. After the experimental verification, the results show that the rangefinder has the measurement frequency of 714Hz. The maximum measurement distance is 6311mm and the minimum measurement distance is 48mm. The average error is 2.8mm and the maximum measurement error is 11mm. The distance measurement system can meet the requirements of large-scale indoor environment measurement.
-
Key words:
- laser technique /
- ranging /
- laser triangulation /
- linear CCD /
- K60 microcontroller /
- system calibration
-
Table 1. Main parameters of CCD chip
model RPLIS-2048-EXB-LG array size 12 dark pixels+2048 video pixels pixel size 4μm×32μm image array size imaging area:8192μm×32μm output analog and digital maximum frequency 2.5MHz Table 2. Function of fitting curve of each set of points
48mm ≤ y < 240mm y=1/(-238884699.65/x3+530548.2274/x2-404.94/x+0.111213) 240mm ≤ y < 740mm y=1/(-7899795.464/x3+31495.48609/x2-46.1119/x+0.02521) 750mm ≤ y < 2840mm y=1/(-12825216.53/x3+56003.15446/x2-84.5048/x +0.04452) 2840mm ≤ y < 4200mm y=1/(9381971.246/x3-39260.8585/x2+51.8177/x -0.02055) 4200mm ≤ y < 6311mm y=1/(-431717687.9/x3+2064225.4742/x2-3291.774/x +1.7512) Table 3. Measurement results within the range of 50mm~950mm
distance/mm 50 150 250 350 450 550 650 750 850 950 No.1 50 150 250 350 451 550 650 749 849 950 No.2 50 150 250 350 450 550 650 750 850 950 No.3 50 150 250 350 450 550 650 749 850 951 Table 4. Measurement results within the range of 5400mm~6300mm
distance/mm 5400 5500 5600 5700 5800 5900 6000 6100 6200 6300 No.1 5397 5498 5607 5703 5802 5903 6002 6097 6194 6292 No.2 5396 5496 5611 5702 5799 5904 5999 6094 6192 6294 No.3 5399 5497 5606 5699 5797 5903 5997 6095 6194 6290 -
[1] WANG F. Laser ranging technology based on triangulation [D]. Tianjin: Nankai University, 2012: 45-77 (in Chinese). [2] CHEN J X, TAO W, YANG H W, et al. Laser triangulation displacement sensor localization algorithm[J]. Optimization Design of Sensor and Micro Systems, 2016, 35(9): 62-65 (in Chinese). [3] LIU K, CHEN F. Laser ranging method and the development of laser[J]. Science and Technology Information, 2008, 1(30):387-388. [4] MA S D.A serf-calibration technique for active vision system[J]. IEEE Transactions on Robot Automation, 1996, 12(1):114-120. doi: 10.1109/70.481755 [5] FU B Ch. Research on the hardware circuit of high precision laser range finder[D]. Nanjing: Nanjing Science and Engineering University, 2007: 17-34(in Chinese). [6] XIAO B. Study on laser ranging method[J]. Geo Spatial Information, 2010, 8(4): 162-164 (in Chinese). [7] YAN S, LI D G, YU Zh L. Design and analysis of parameter optimization of triangulation laser displacement sensor[J]. Electronic Measurement Technology, 2012, 35(10): 21-24 (in Chinese). [8] ZHENG D, YUE Y D. Simple three-dimensional laser radar measuring method and model reconstruction forhot heavy forgings[J]. Optical Engineering, 2012, 51(2):021118. doi: 10.1117/1.OE.51.2.021118 [9] XU J Ch. Study on new phase laser range finder[D]. Xi'an: Xi'an Electronic and Science University, 2008: 13-21 (in Chinese). [10] YU P Zh. Analysis and improvement of detection error shift of laser triangulation [D]. Changchun: Changchun University of Science and Technology, 2013: 88-93 (in Chinese). [11] JIA Q, XIE J S. Design and implementation of laser displacement sensor based on triangulation method[J]. Journal of Changchun University, 2014, 24 (10): 1035-1037 (in Chinese). [12] WANG G. Design and research of laser rangefinder receiving optical system field diaphragm[J]. Laser Technology, 2014, 38(5): 647-650 (in Chinese). [13] GAO Y Y, LI Y H, FENG Q L, et al. Design of optical system for laser ranging based on digital phase detection[J]. Laser Technology, 2013, 37(3): 353-356(in Chinese). [14] WANG X J, GAO J, WANG L. Overview of the laser triangulation[J]. Chinese Journal of Scientific Instrument, 2004, 25 (4): 601-604(in Chinese). [15] TAN H Y, ZHAO X J. Online measurement of surface roughness of parts based on laser triangulation method[J]. Machine Tool and Hydraulic Press, 2010, 38(6): 67-68(in Chinese). [16] LÜ P, HAN G H. Double wedge application in calibration of laser range finder optical axis[J]. Laser Technology, 2012, 36(2): 151-153(in Chinese).