结构光投影三维测量控制系统开发

   2023-12-16 互联网1440
核心提示:  摘要:为解决结构光投影三维测量中控制问题,开发了基于 PLC 的测量控制系统。此系统采用 Visual C++ 6.0 提供的串行通信控

  摘要:为解决结构光投影三维测量中控制问题,开发了基于 PLC 的测量控制系统。此系统采用 Visual C++ 6.0 提供的串行通信控件 MSComm 完成 PLC 与 PC 机之间的通信,实现了对测量过程中光源投影、光栅切换、CCD 拍摄,以及测距激光器、散热风扇、限位开关等部件动作的协调控制。实验表明,采用该控制系统的三维测量设备性能良好、稳定性强、可靠性高,满足工业应用的要求。

  光学三维测量由于其非接触、速度快、高分辨率、高精度等优点,目前已经受到广泛重视。在基于格雷码[1]和相移[2]技术的面结构光投影三维测量设备中,控制系统是其主要组成部分。本研究所开发的测量设备采用特定的物理光栅投影方式,对传动部分的精度和速度有较高要求。所以,有必要开发一套针对此类测量设备的稳定可靠的控制系统。

  可编程逻辑控制器PLC作为新一代的工业控制器,有着编程方便、体积小巧、可靠性高、抗干扰能力强等优点。本文就采用 PC 机作为上位机,PLC作为下位机,在基于 Visual C + + 6.0 的串口通信方式下,完成对结构光投影三维测量设备控制系统的开发。

  1 测量原理与硬件组成

  1.1 测量原理

  如图 1 所示,结构光三维测量原理基于三角方法[1]。OC和 OP分别指 CCD 和投影仪的光心,两光心的距离为 d。OCOP称为基线,与参考平面 R 平行,R 即参考坐标系统(X,Y,Z)的 X-Y 平面,OP到 R的距离为L。参考坐标系统的Z轴与投影仪光轴OPO平行,表征了被测物的高度信息。当被测物置于参考坐标系统时,投影射线 OPA 经被测物上一点 H 沿HO方向成像于 CCD 相机的像素 E(i,j)。没有被测物体时,投影射线 OPB 经参考平面上的 B 点沿BOC方向亦成像于 E(i,j)。由于三角形 AHB 与三角形 OPHOC相似,设 z(x,y)表示 H(x,y)点的高度 HH’,则有

  式中 d=OCOP,L 是基线 OCOP到参考面 R 的距离,SR=AB 表示投影射线在参考面上的偏移量。当SR 可求时,即可得到 H 点的高度值。具体方法是对投影光线进行编码,这样就可以跟踪射线 OPA 和OPB,从而获得偏移量 SR的值。本研究采用的是格雷码和相位相结合的编码方法,具有分辨率高,能同时获得突变信息和细节信息的优点。

  格雷码是一种二进制编码,其相邻的码词间只有一位不同。测量时 n 幅光栅图像 r0, ... ,rn-1依序由摄像机记录下来,像素灰度再根据适当的阈值二值化为逻辑值 0 或 1,所有 r0, ... ,rn-1的采集最终形成一个 n 比特的格雷码矩阵(GCM)。格雷码的每个码词可确定一个投影方向,n幅不同频率投影条纹可编码 2n个投影方向。这样,每个投影方向就和测量表面上的点建立了一一对应的关系。相位编码一般是投影 4 幅正弦光栅到被测物体上,每幅偏移 1/4 周期。每个像素得到一个光强值( , )( 0,1,2,3)iI j k i = , 则 该 像 素 的 原 理 相 位 值 Φ ( j ,k)通过下式计算得到

  当格雷码的阶次与相移周期一致时,可实现投影光线的空间连续编码,其编码的绝对相位值由下式得到:

  1.2 硬件组成

  图 3 所示为测量设备硬件布局,主要是由光栅投影单元和 CCD 拍摄单元组成。光栅投影单元采用物理光栅投影技术将结构光条纹投影到被测物体表面。CCD 拍摄单元负责拍摄图像,并传输数据。

  由测量原理可知,实现测量设备控制系统的关键是要把频率与相位不同的光栅条纹投影到被测物体上,然后控制 CCD 进行拍摄,再将数据传送至PC 机进行处理,从而获得三维测量结果。本文采用的是幻灯投影方式,利用步进电机带动滚轴丝杆平移,切换不同的光栅图案,从而实现对物体表面的编码调制。为提高测量精度,平移过程中应充分保证光栅的平行度和位置精度。同时,考虑到测量效率,应尽量提高光栅平移速度,这对控制系统提出了较高要求。

  2 通信方案与系统应用

  2.1 串口通信方案

  控制系统流程如图 4 所示,本文采用的 PLC 为松下 FP0 C16。要完成的主要动作有散热风扇启停、测距激光器的开闭、光栅移动及返回、CCD 拍摄和数据传输等,其中关键是实现 PLC 与 PC 机之间的通信。

  用 Visual C + + 6.0 开发串口通信有四种方案:

  (1)使用 Visual C + + 6.0 提供的串行通信控件MSComm;(2)用单线程的方法实现自定义串口通信类(封装 windowsAPI);(3)用多线程的方法实现自定义串行通信类(封装 WindowsAPI);(4)直接读写串口(自己编写 RS232 类、Win32Port 类)。为了编程方便,本文采用第一种方案。

  利 用 Microsoft ActiveX 通 信 控 件MSComm.OCX 可实现串口通信。通信控件以类似中断的方式工作,当有通信事件发生时或错误发生时触发 OnComm()事件,在该事件的处理函数中调用 GetCommEvent()函数获得当前通信事件或错误的属性值,根据属性值作相应处理。

  2.2 通信协议

  松下 FP 系列可编程控制器,与 PC 机通信有其专门的通信协议 MEWTOCOL,表 1~表 3 是其基本指令格式。

  %为起始码,CR 为终止符。AD 表示目标站号。指令代码包括 RCS(读取单个触点信息)、WCS(写入单个触点信息)等。发送指令中的文本代码包括触点编号和触点数据。应答信息的错误代码可以指明错误的类型。

  2.3 系统应用

  所开发的测量设备已应用于鞋楦的三维外形测量,图 5 为测量结果。其单视角测量速度小于 6 秒,测量点间距为 0.35 mm,测量误差约为 0.03 mm。

  3 结束语

  针对光学三维测量设备中整体控制问题,本文提出了基于 PLC 与 PC 机相结合的控制系统。该控制系统充分发挥了 PLC 可靠、高效的优点和 PC 机操作简单、界面友好的特点,较好地实现了所开发的三维测量设备的各项功能。利用步进电机带动高精密丝杆进行平移实现光栅切换,同时完成 CCD 相机拍摄等相关协调动作。实验证明,基于该控制系统的三维测量设备性能良好、稳定可靠,已应用于工业领域及相关教学机构。

  参考文献:

  [1] SANSONI G,CORINI S,LAZZARI S,et al. Three-dimensionalimaging based on Gray-CODe light projection: characterization of themeasuring algorithm and development of a measuring system forindustrial applications [J]. Applied Optics,1997,36(19):4463-4472.

  [2] SANSONI Giovanna , CAROCCI Matteo , RODELLA Roberto.Three-dimensional vision based on a combination of gray-code andphase-shift light projection:analysis and compensation of the systematicerrors [J]. Applied Optics,1999,38(31):6565-6573.

  作者简介:王建兵(1980-),男,硕士生,主要从事光学三维测量技术的研究。


 
举报收藏 0打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  隐私政策  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  RSS订阅