基于机器视觉的字符串识别及通信实现

2021-03-27 11:10朱志伟
中文信息 2021年6期
关键词:字符串以太网串口

朱志伟

(武汉铁路职业技术学院,湖北 武汉 430205)

一、基于工业机器视觉的控制系统的集成开发简述

随着工业智能化升级改造,机器视觉技术应用于工业控制系统日益广泛。本文所述的基于机器视觉的控制系统集成开发基本要求,包括图像采集、图像识别、信息上传、控制与显示输出等。具体如下:图像采集,用工业相机采集对象上的字符串信息,并把图像传送给PC机;图像处理,用视觉处理软件相关算法程序识别图像上的字符串,并把识别结果保存;信息上传,PC机通过以太网接口把识别的字符串信息传送给远程PLC控制器,同时PC机通过RS232串口传送给单片机;控制输出,PLC控制器依据接收字符串信息输出相应的控制信号给执行机构,以完成对应的控制任务;信息显示,单片机依据接收字符串信息,完成相应的信息显示。

二、基于工业机器视觉的控制系统的主要组成

基于工业机器视觉的控制系统有硬件和软件两个部分构成。其主要配置及功能如下:Basler工业相机及Myutron工业相机镜头,帧率60帧/秒、分辨率1280*1024、千兆网口,可变光圈,作用为图像采集;高性能计算机一台,运行字符串识别算法,支持以太网和RS232串口通信,作用为图像识别和信息上传;一台S7-1500 PLC主控制器,带2个PN口支持TCP协议,接收计算机上传的字符串信息,作用为控制器通信、控制算法和控制输出;单片微型计算机一个,带RS232串口,接收来自计算机上传的字符串信息,作用为信息显示等。

三、机器视觉识别字符串程序开发

HALCON软件是MVtec公司开发的应用广泛的机器视觉集成开发环境,拥有一套完善标准机器视觉算法包。所以,本项目使用HALCON机器视觉处理软件,开发设计图像采集和字符串识别算法。字符串识别算法主要有2个任务:图像采集和图像识别。图像采集算法:打开工业相机并采集对象上的字符串信息,并把采集到的图像信息通过以太网传送给计算机,用到HALCON算子open_framegrabber、grab_image_start、grab_image_async、close_framegrabber。图像识别算法:把采集到的彩色图片Image,用rgb1_to_gray算子变换成单通道灰度图GrayImage;用threshold算子阈值分割图像,得到面域Region;用填充算子fill_up_shape把洞补上,得到填充域RegionFillUp;用connection算子使连通域断开,得到ConnectedRegions;用select_shape算子根据特征值选择区域,得到DestRegions,字符串中的每一个字符为一个目标区域;用sort_region算子根据区域的相对位置对DestRegions进行排序,得到SortedRegions;用count_obj算子得到SortedRegions中字符的数量;用read_ocr_class_mlp和do_ocr_multi_class_mlp算子,识别Sorted Regions中的字符串,并保存在Class数组中。因为HALCON软件算法丰富且使用灵活,故本项目所采用算法并非唯一,程序也可以继续优化改进。

四、用HALCON算子实现与PLC控制器的以太网通信

用HALCON算子完成图像处理后,识别字符串信息存放在Class数组中,需要上传给PLC控制器,供PLC的控制程序使用。用HALCON算子实现与PLC控制器的以太网通信,主要过程如下:在计算机端,用HALCON算子open_socket_connect连接远程PLC,采用TCP4协议通信,再用send_data算子把识别后的字符串数据发送给PLC;在远程PLC端,用开放式用户通信TRCV_C程序模块建立网络连接并接收来自计算机端的字符串数据。PLC以太网通信TRCV_C模块的CONNECT参数设置:数据类型TCON_IP_v4,硬件标识符InterfaceId=64(据实),ID=1,协议ConnectionType=11(TCP/IP),主动建立ActiveEstablished=false,远程IP地址及端口不填,本地端口LocalPort=502。

五、用HALCON算子实现与单片机的串口通信

用HALCON算子完成图像处理后,同时将Class数组识别字符串信息发送给单片机,供单片机完成信息显示使用。用HALCON算子实现与单片机的串口通信,具体过程如下:在计算机端,用HALCON算子open_serial打开一个串口,再用算子set_serial_param设置串口参数,使用算子write_serial把识别后的字符串数据发送给单片机,最后用算子close_serial关闭串口;在单片机端,用户可自行编写串口数据接收程序,接收来自计算机端的字符串数据。本项目串口通信参数为:波特率9600,数据位8,无奇偶效验,停止位1等。如果某些智能设备支持MODBUS RTU协议,计算机端HALCON算子write_seria可以按照协议数据格式发送数据,智能设备就可以接收到需要的数据。

六、总结和展望

HALCON软件包含了各类滤波、数学转换、型态学计算分析、校正、分类辨识、形状搜寻等基本图像计算功能,只要用到图像处理的地方,就可以使用HALCON软件强大的计算分析能力来完成。本文基于机器视觉的字符串识别及通信实现项目,重点阐述了HALCON软件的字符串识别、以太网通信和串口通信等相关算法在实际项目中的运用,是一次把机器视觉技术应用于工业控制的探索与实践。

猜你喜欢
字符串以太网串口
浅谈AB PLC串口跟RFID传感器的通讯应用
基于1500以太网养猪场的智能饲喂控制系统的设计与实现
谈实时以太网EtherCAT技术在变电站自动化中的应用
USB接口的多串口数据并行接收方法探索
基于蓝牙串口适配器的GPS接收机与AutoCAD的实时无线通信
一种90W高功率以太网供电系统的设计
浅谈EPON与工业以太网在贵遵高速公路中的应用
一种新的基于对称性的字符串相似性处理算法
基于并行控制的FPGA多串口拓展实现
依据字符串匹配的中文分词模型研究