基于FPGA的多角度周转箱图像采集系统设计

2019-10-25 04:44王永超刘洪亮邢玉东黄大荣
自动化仪表 2019年10期
关键词:框图多角度总线

王永超,刘 超,王 健,罗 晨,刘洪亮,邢玉东,黄大荣

(1.国网新疆电力有限公司电力科学研究院,新疆 乌鲁木齐 830011; 2.北京南瑞捷鸿科技有限公司,北京 100093;3.重庆交通大学信息科学与工程学院,重庆 400074)

0 引言

近年来,电表自动化检定系统在全国各省全面建成并投入运作,从根本上改变了传统的人工作业方式,大幅降低了人工成本,全面提升了检定效率及质量。同时,如何有效发现和排除自动生产线的故障、维护自动化生产线的正常工作,已成为目前电网企业安全生产及管理者特别关心和亟待解决的问题[1-2]。

在电能表整个生产线上,周转箱作为自动化生产系统中的组成部分[3],不仅是运输装载环节的基础,还是中转、自动检定和出入库等环节的关键。然而,随着周转箱在生产流水线上的长期使用,箱身的条码会逐渐出现褪色、破损、浸渍等情况,使流水线上的条形码扫描器无法识别。这会影响流水线的正常运作。此外,随着周转箱的重复使用,老化、腐蚀等因素使得周转箱产生形变。这会造成自动生产线上的机械臂在抓取电表时,由于周转箱形变而产生电表相对位移,导致电表抓取不稳而掉表。一旦出现这种情况,必须人为干预才能恢复正常工作。因此,提前筛选出有问题的周转箱,是减少自动生产线人工干预、进一步提高生产效率的有效途径。

采用人工方式筛选周转箱,不仅成本高、工作量大,而且准确率低。针对自动生产线对产品质量或者缺陷检测的实时性和效率的要求,基于机器视觉的检测技术是近年来的研究和应用热点[4-10]。

通过对生产现场的分析,在生产线起始位置搭建一个多角度的周转箱采集系统,用于采集箱身条形码和箱身形变的图像,并使用图像识别的方法来筛选出存在问题的周转箱。周转箱图像采集是周转箱识别筛选的基础,周转箱图像的质量以及采集速度直接影响识别的准确度与效率。因此,设计一个高效的周转箱采集系统对整个识别系统具有重大意义。

本文针对周转箱箱身有效信息的获取需求,设计出一套高效的多角度图像采集系统,实现了在现场可编程门阵列(field programmable gate array,FPGA)开发平台上进行多路图像采集控制和高效传输的功能。

1 系统设计

1.1 系统设计方案

系统结构如图1所示。

图1 系统结构框图

由于系统需要采集周转箱的前、后侧条码图像,以及能表征周转箱形变信息的图像,设计了一个多角度周转箱采集系统,以获取图像识别需要的图像信息。系统设计三个检测点,在周转箱达到检测点时,分别触发图像采集器1~3,以采集不同角度的周转箱图像,并在缓存后发送给计算机作识别处理。

1.2 系统结构设计

多角度周转箱图像采集系统设计框图如图2所示。

图2 多角度周转箱图像采集系统设计框图

系统采用FPGA作为硬件开发设计平台。相较于其他控制器,FPGA不仅能以灵活的现场可编程特性实现系统定制,而且其内部模块的并行执行功能可提高系统的运行速度。此外,FPGA还支持多种接口类型,开发人员可以根据需求实现不同接口的通信协议,把外围电路的接口模块集成在FPGA内部,以提高整个系统的集成度和稳定性。本系统的所有控制部分都在FPGA上实现。FPGA接收到检测点的周转箱到达信息后,通过集成电路(inter-integrated circuit,IIC)接口对对应的图像采集器进行拍照控制。双口随机存取存储器(random access memory,RAM)实现对采集图像的缓存和传输速度匹配,再经端口物理层(physical,PHY)控制模块,将图象数据通过以太网与远端计算机实现用户数据报协议(user datagram protocol,UDP)的高速通信。

1.2.1 检测控制模块

本系统设置三个周转箱检测点。检测点采用漫反射光电开关传感器E3Z-LS61-TB来检测周转箱位置。该传感器感应距离为30 cm内可调。检测控制模块在接收到传感器信号后,产生两位输出,对IIC控制模块中的多路信号进行使能操作。

1.2.2 IIC控制模块设计

系统的图像传感器采用的是三个OV5640摄像头模块。该CMOS图像传感器图像阵列大小为2 592×1 944,帧率为15 fps。OV5640支持多种清晰度视频和图像采集,支持多种图像数据输出格式,包括RGB565/555/444、YUV422/420、YCbCr422以及JPEG格式。OV5640模块由于内置微处理器,可实现自动曝光控制、自动白平衡等功能,也可对图像亮度、色彩饱和度、gamma曲线等进行调节。这些功能大大提高了获取图像的质量。在外部接口方面,OV5640数据接口采用数字视频端口(digital video port,DVP)总线,使用IIC总线实现对其内部的寄存器的访问。

设计中,IIC总线需要控制三路OV5640分别进行工作。根据OminVision公司给出的OV5640用户手册显示,该设备地址都是0x78。故采用多路IIC总线设计,以检测控制模块的输出来控制三路IIC总线的使能端。IIC控制模块设计框图如图3所示。

图3 IIC控制模块设计框图

OV5640图像传感器的初始化模块上电时序如图4所示。

图4 初始化模块上电时序图

IIC控制模块中的总线使能控制模块,用于控制三路总线与IIC模块的连接。根据检测结果,每次上电均初始化一个图像传感器。

首先拉低Reset引脚,复位OV5640,20 ms后拉高Reset引脚,初始化传感器内部寄存器设置,设置工作模式为2 592×1 944压缩格式拍照。三路图像采集器共享DVP总线输出图像。

OV6540初始化设置为拍照模式后处于节电状态。每次拍照前,图像传感器要从节电模式唤醒,并在拍照完成后回到节电模式。图像采集器拍照流程如图5所示。

图5 图像采集器拍照流程图

1.2.3 双口RAM模块

为了解决FPGA内部异步时钟域之间的数据传输的问题,并考虑到后续系统的扩展,本系统采用双口RAM来解决模块之间数据传输速度匹配和图像数据缓存共享的问题。双口RAM有两套独立的数据线、地址线和读写控制线,允许两个不同的模块同时对RAM内的数据进行访问[11]。本系统中的双口RAM,一个端口用于缓存图像数据,另一个端口用于图像传输。

1.2.4 介质访问控制模块

采用千兆以太网来进行数据传输,不仅保证了本系统的高清图像的传输,还为下一步系统扩展做好高速数据传输的准备。千兆以太网数据传输采用的TCP/IP协议,不仅会消耗大量的FPGA资源,同时会增加设计难度。考虑到系统对数据传输的高效和实时性要求,设计时采用传输效率的非面向连接的UDP/IP协议,以提供点对点的数据传输服务[12-14]。

介质访问控制(media access control,MAC)模块设计框图如图6所示。在帧发送时,MAC模块从RAM中读取数据,并对数据进行封装;添加UDP信息封装成UDP数据包,并添加以太帧信息,同时,将封装成MAC帧的数据通过GMII总线口发送至物理层PHY芯片。物理层的实现采用Realtek公司的RTL8211EG芯片,支持10 Mbit/s、100 Mbit/s、1 000 Mbit/s三种速率,与MAC层接口有GMII、RGMII、MII三种类型。

图6 MAC模块设计框图

发送图像数据时,由MAC模块读取双口RAM中缓存的图像数据,MAC帧内数据长度不能超过1 500 B。俞鹏炜等[15]经过试验证明,当传输数据长度为1 400 B时,传输平均速率可达最大,且带宽利用率最高。所以设置每次MAC模块从RAM中读取1 382 B的数据,并进行发送。

2 系统测试

本文以国网新疆电力有限公司电力科学研究院计量生产自动化系统现场工作环境为例,进行系统有效性的测试。在电表自动生产传输线上,生产线的条形码识别器和机械臂会在多个生产环节中对周转箱进行条形码识别和箱内电表抓取。根据现场实际情况,周转箱在长期使用过程中,存在周转箱箱身条形码残缺、不平整、污损和周转箱变形等现象。为完成多角度采集图像,本系统在设计过程中使用QuartusII12.0软件进行设计,使用Verilog语言在FPGA硬件开发平台上进行代码设计和仿真验证,并对整个系统的硬件和软件模块进行了整体调试。最后,FPGA通过以太网发送的图像数据,由计算机安装的第三方软件进行接收和显示。

经验证,本系统可根据光电传感器感应周转箱位置,由FPGA控制相应图像传感器工作,并将获得的图像数据缓存后经千兆以太网上传到计算机,以实现多角度实时采集周转箱图像的目标。

目前,该系统已在新疆电力科学研究院计量自动化生产现场搭建完成,并运用到国网安徽电力公司计量中心、国网郑州电力公司计量中心等实际场景中。实际使用证明,系统能持续稳定地采集图像并上传到上位机。

3 结束语

本文论述了基于FPGA的多角度周转箱图像采集系统设计,详细介绍了系统设计方案、硬件模块架构及其实现以及外围器件的选择。试验证明:本系统能采用分时控制的方法,从多个角度采集2 592×1 944的高质量周转箱图像,并能以510 Mbit/s的速度将图像数据传输到计算机,用于计算机对图像的识别处理。

猜你喜欢
框图多角度总线
一道三角函数问题的多角度思考
对一道三角函数题的多角度思考
一道数列题的多角度思考
捷豹I-PACE纯电动汽车高压蓄电池充电系统(三)
一种基于CAN总线的误码测试方法
多角度写好读后感
电路图2017年凯迪拉克XT5
算法框图的补全
CAN总线并发通信时下位机应用软件设计
基于CAN总线的水下通信系统设计