APP下载

基于结构光的嵌入式图像采集系统

2021-09-07白玮本曹慧峰刘欣宜

仪表技术与传感器 2021年8期
关键词:振镜光栅上位

白玮本,曹慧峰,刘欣宜

(天津理工大学电气电子工程学院,天津市复杂系统控制理论及应用重点实验室,天津 300384)

0 引言

随着智能控制、图像处理等相关技术的快速发展,辅助驾驶、智能驾驶等改善现阶段驾驶安全隐患控制系统产生,而如何提高系统在道路感知过程中的感知效率与感知准确性就显得尤为重要[1-2]。驾驶系统的意义在于对驾驶环境信息进行扫描、行驶路线进行预定义,对面突发情况进行安全决策,其中驾驶环境信息扫描作为整个驾驶系统的基础和前提,驾驶环境扫描的准确性及效率直接反映出驾驶系统的可靠性及工作效率[3]。

现阶段汽车驾驶安全环境扫描主要是通过立体视觉、激光雷达、毫米波雷达等,考虑到系统实现的速度、精度及成本因素,以及综合考虑在雨、雪、雾等恶劣环境中的实现效果,可选取基于视觉的车辆环境感知技术进行研究[4]。这种以相机作为感知工具,在复杂的交通环境及气候条件下,单一感知方式存在极大的干扰因素。排除或者降低环境干扰因素,提升系统的准确性及感知速率,是智能车辆驾驶系统环境信息扫描领域的起点,对未来驾驶系统的研究和实现方式具有重要作用。

文中主要通过结构光与嵌入式系统的联合设计,加强系统在采集过程中对外界的抗干扰能力,提高图像处理过程中对应点匹配速度。最后通过实验与分析,系统满足图像采集设计需求。

1 系统设计

本系统主要是针对基于结构光和嵌入式操作系统的图像采集所展开,在进行系统的总体设计之前,首先需要对系统实现的功能进行分析,通过功能实现的具体需求对其进行系统设计[5],系统实现的主要功能有光栅发生器模块化设计,可以产生一条频率可控的条形扫描光栅;CCD相机模块化设计,对被测物及扫描光栅条纹信息进行采集;中央控制单元模块化设计,FPGA单元产生3条脉冲信号来控制光栅发生器模块与CCD相机模块保持同步工作、STM32单元则负责整个系统的控制与人机交互功能。系统总体设计框架见图1。

图1 系统总体设计框架

1.1 系统硬件设计

1.1.1 光栅发生器模块设计

作为整个光栅发生器中激光光路的组成部分,二维扫描振镜主要功能是对激光光路通过振镜的偏转进行调控,实现被测物体区域的光栅扫描功能。光栅发生器模块对二维振镜的要求一般包括精度高、速度快、偏转角大、稳定性高等。系统采用波长650 nm、功率100 mW、工作电压3~5 V、工作电流180 mA、发散角度为10°~120°的半导体激光器。二维扫描振镜工作的关键参数是最大旋转角度±30°、线性度99%、镜片反射率99%、镜片覆盖波长380~700 nm。

在光栅发生器工作过程中,二维扫描振镜示意图见图2,一束脉冲激光发出后到达振镜X,通过平面反射原理反射到振镜Y,依次到达视觉检测区域。振镜X和振镜Y在规定的检测范围内同时旋转,便能对检测区域进行激光细节纹理的补充[6]。

图2 二维扫描振镜示意图

1.1.2 CCD相机图像采集模块设计

CCD相机图像采集模块设计中,工业相机通过以太网口直接外接PC机以及FPGA对其发送驱动时序信号,图像采集的整个链路构建完成。待检测区域的特征信息在光学镜头的作用下传递给图像采集相机图像数据可直接通过千兆以太网传输至PC端进行显示[7]。

1.1.3 中央控制单元模块设计

1.1.3.1 中央控制单元

在FPGA内部产生CCD驱动时序以及光栅发生器驱动时序。通过对图像传感器和光栅发生器模块施加正确的驱动时序,光栅发生器模块可以正常对指定工作区域进行固定频率线扫描,CCD相机则与光栅扫描器保持同步频率进行数据采集,通过以太网络直接将采集图像数据传输至PC端。单片机与上位机控制端以及单片机与现场可编程门阵列单元都需要进行数据发送与数据回传。中央控制单元接收到控制端的运行指令后,经STM32进行解析执行后传送到FPGA模块,实现对脉冲输出信号的控制[8],从而控制光栅发生器模块和CCD相机同步工作。整个系统的数据传输示意图见图3。

图3 系统数据传输示意图

1.1.3.2 ARM+FPGA通信接口设计

SPI(serial peripheral interface)串行外设接口通信,因其快速的传输特性,可作为通信协议或者作为外设成为微处理器的标配[9]。

在ARM+FPGA的电路架构设计中,SPI以其简单高速的优点而被广泛应用。通常SPI串行总线外设接口由串行时钟线、主机向从机输出数据线、从机向主机输出数据线、从机片选信号线以及使能线组成。系统设计中采用的通信方式为四线链路,使能线可省略[10],主要针对四线SPI通信连接方式进行简单介绍,连接方式见图4。

图4 SPI四线连接方式

当ARM作为主机时,串行时钟信号传递给从机,通过主机输出数据,从机接收数据。当将数据写入到串行数据寄存器中,数据通过串行方式按顺序从主机发送口发出,同时在从机接收口按发送顺序接收所需数据位。时钟信号在整个通信过程中与主机和从机的数据交换是一一对应的。通信的片选信号在非工作状态保持高电平,通信数据被移入串行数据寄存器时片选信号被拉低,当通信数据移送成功后片选信号电平保持拉高状态[11],通信数据传输示意图见图5。

图5 通信数据传输示意图

选择主机发送数据从机接收数据或者从机发送数据主机接收数据两种模式,发生在时钟信号的上升沿还是下降沿主要由时钟极性与时钟相位寄存器来进行设置。当时钟极性与时钟相位都保持在0状态时,主机发送数据从机接收数据的过程在时钟上升沿完成,从机发送数据主机接收数据的过程在时钟下降沿完成,此状态实际接口信号时序见图6。

图6 信号时序图

单片机与现场可编程门阵列之间的SPI通信配置如下:单片机为主机模式;主从机接线方式采用图4所示连接方式;时钟模式为POLARITY=0,PHASE=0。接口设计采用VerilogHDL语言实现。

当设备从机发送端在时钟信号保持拉升状态时进行通信数据的传送时,当状态被拉高就将现场可编程门阵列待发送数据采用移位的形式传给主机输入端,为保证主机数据的及时锁存,通常选择片选信号低电平状态传输数据,高电平状态进行下一数据传输的准备工作[12]。

1.2 系统软件设计

根据系统采集过程功能要求对硬件进行电路设计与机械加工,通过硬件的控制需求对软件进行设计。依据系统的组成,可以分为功能模块和数据传送模块,功能模块主要由上位机、单片机、现场可编程门阵列构成,数据传送模块主要指上位机与单片机之间数据传输、单片机与现场可编程门阵列之间数据传输。

1.2.1 功能模块

1.2.1.1 上位机模块

在PC端对上位机进行前期开发;上位机界面可以实现相机模式的选择、各个参数的设置;在上位机控制端可以实时显示相机采集的具体参数;可以根据采集到的实时图像质量对采集参数进行调整。

1.2.1.2 单片机模块

将上位机发送的关于CCD相机和光栅发生器的相应参数转换处理,并发送给FPGA;将PC端所要执行的控制命令发送给STM32进行处理,再传送至下一执行机构FPGA。

1.2.1.3 现场可编程门阵列模块

对系统的基准频率予以分频,得到系统所需的脉冲信号。实例化FPGA,接受STM32发送来的控制命令,实现对CCD图像采集与光栅发声器输出脉冲的控制。

1.2.2 数据传输模块

在系统数据传送过程中,单片机与上位机控制软件通过485通信协议实现数据发送与接收,现场可编程门阵列与单片机使用SPI串行总线实现数据信息的交换。

2 系统调试与实验分析

2.1 系统功能模块调试

对系统实现功能进行分析,针对功能要求,编写上位机软件,软件功能包括相机的开启与关闭、软硬件触发方式的选择、单拍连拍模式的设定、驱动信号的发送及其他相关参数设置等。

在编译软件中完成对单片机测试。图像采集系统要求单片机实现的功能有:将PC端发出的设置参数以及控制命令进行处理并传给下一级执行机构FPGA。对于单片机功能单元的编译要求有:单片机模块初始化、运行函数的调用与设定以及引脚关联,还需对系统的通信方式进行验证,如485通讯与SPI串行外设接口通讯等。

通过QuartusII软件对FPGA开发板进行调试。将FPGA开发板针对CCD相机与光栅发生器的输出脉冲信号先外接在示波器上进行显示,检测输出频率,从而检验信号是否符合要求。

2.2 系统同步性调试

基于结构光的嵌入式图像采集系统的重点是实现对2台CCD相机与光栅发声器的同步控制,因此要通过上位机对系统的同步驱动脉冲信号进行验证。将控制系统开发板对结构光栅和相机驱动的3条同步脉冲信号外接在示波器上,对3条输出信号比对,以此判断系统的同步性是否符合要求。

2.3 实验结果分析

在系统上位机软件中对基于结构光的嵌入式图像采集系统进行验证,包括相机的开启与关闭、软硬件触发方式的选择、单拍连拍模式的设定以及其他相关参数设定等,系统界面见图7。

图7 系统上位机示意图

待所有测试工作准备就绪以后,打开光栅发生器、CCD相机、中央控制系统的电源开关,由上位机进行系统参数设定以及控制命令的发出。系统经过运行测试,可以按照指令要求采集待测物及其光栅发生器在不同时刻的光条纹图像信息,在a时刻、b时刻采集的数据图像见图8、图9。

(a)左相机(b)右相机图8 a时刻图像数据

(a)左相机(b)右相机图9 b时刻图像数据

由图7~图9可知,设计的基于结构光的嵌入式图像系统采用上位机+嵌入式操作系统的设计方式,不仅操作简便直观,系统的实时性也得到了保障。试验结果表明:通过STM32+FPGA的硬件控制方式,可以实现CCD图像采集模块与光栅发生器模块以同一基准频率下进行图像采集,采集的图像信息可通过以太网口直接传输至PC端,且系统运行稳定可靠,实时性较好,满足设计需求。

3 结束语

针对在三维重建过程中立体视觉对应点的快速匹配问题,设计了基于结构光的嵌入式图像采集系统,借助光栅发生器对待测物进行连续扫描,CCD相机实时抓取扫描后的图像信息,通过以太网直接传输至PC端。为了满足系统在图像采集过程中的效率与同步性,设计了基于ARM+FPGA的硬件控制方式,利用FPGA的并行处理能力和丰富的内部逻辑功能来控制触发光栅发生器和CCD相机的3条脉冲信号,STM32则作为整个系统的控制核心,负责系统的通讯传输及人机交互控制。经实验验证,该系统可以稳定、实时对待检测区域物体及其光条纹信息进行采集并通过以太网直接传输至PC端。

猜你喜欢

振镜光栅上位
振镜系统自适应离散滑模控制器设计与仿真
基于FPGA的共聚焦显微镜振镜扫描控制系统设计
特斯拉 风云之老阿姨上位
前聚焦式3轴振镜的调焦原理与应用
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
CDIO教学模式在超声光栅实验教学中的实践
基于LabView的光栅衍射虚拟实验研究
基于二维扫描振镜的静脉扫描投影装置
以新思路促推现代农业上位