APP下载

机器视觉仿真设计

2021-05-19陈卫国

科技资讯 2021年4期
关键词:电子表格机器视觉

陈卫国

摘  要:机器视觉技术在工业自动化领域应用广泛,但机器视觉硬件成本较高,高校机器视觉实验室存在设备台套数不够的问题,同时要找到一种开发模式,使得机械类学生在现有基础知识储备的基础上,能够开发机器视觉项目。为解决这些问题,该文以物体形状识别和尺寸测量两个案例,详细介绍了康耐视智能相机In-Sight视觉开发软件中Easybuilder和电子表格两种仿真设计方法。使用该方法可以在没有智能相机的情况下对视觉算法进行研究,缓解了硬件不足的问题,该设计方法不需大量编程,效果直观、可视,应用步骤简明,适合机械类学生应用。应用该方法在SKARB-12型工业机器人工作站中完成视觉导引,效果良好。

关键词:机器视觉  智能相机  Easybuilder  电子表格

中图分类号:TP18          文献标识码:A              文章编号:1672-3791(2021)02(a)-0021-04

Design of Machine Vision Simulation

CHEN Weiguo*

(Hunan University of Arts and Sciences, Changde, Hunan Province, 415000 China)

Abstract: Machine vision technology is widely used in the field of industrial automation, but the cost of machine vision hardware is relatively high. The machine vision laboratory of colleges and universities has the problem of insufficient equipment sets. At the same time, it is necessary to find a development mode that enable mechanical students to develop machine vision projects on the basis of existing basic knowledge reserves. To solve these problems, this paper uses two cases of object shape recognition and size measurement to introduce in detail the Easybuilder and spreadsheet simulation design methods in the In-Sight vision development software for Cognex smart cameras. Using this method, the visual algorithm can be researched without a smart camera, and the problem of insufficient hardware is alleviated. The design method does not require a lot of programming, the effect is intuitive and visible, the application steps are simple and it is suitable for mechanical students. This method is used to complete the visual guidance in the SKARB-12 industrial robot workstation with good results.

Key Words:Machine vision;Smart camera;Easybuilder;Spread sheet

机器视觉在工业自动化生产中得到广泛应用[1],特别是在工业机器人应用领域[2]。机器视觉系统成本较高,高校实验室机器视觉实验设备台套数不够。同时,对于机械电子工程专业学生,特别是纯机械类的学生来说,无论是使用halcon进行开发[3],还是采用MATLAB开发[4],知识储备均不够。本文介绍基于康耐视智能相机和In-Sight视觉软件的机器视觉仿真系统的结构,研究在Easybuilder和電子表格两种编程方式下,形状识别、定位及视觉系统与上位机通信的仿真设计方法。

1  机器视觉总体方案设计

机器视觉的解决方案较多[5-6],考虑到机械类学生知识体系的情况,我们选择的机器视觉总体方案是:系统由康耐视ISM1403C工业智能相机,6mm镜头,LED白色环形光源及光源控制器构成,完成形状识别、给出物体的中心点坐标、以太网通信传给ABB120机器人信息等功能,相机触发信号和任务切换命令由ABB工业机器人发出,相机通过以太网接收指令。

机器视觉仿真系统不需要硬件,工业智能相机采用In-Sight 8402仿真相机,目的是可以验算更多的算法,使用TCP/UDP SOCKET调试工具模拟ABB机器人接收数据和发送指令。

仿真编程使用COGNEX的In-Sight Explorer开发环境。下面分别介绍Easybuilder和电子表格两种仿真设计方法。

2  Easybuilder形状识别仿真设计

使用虚拟相机进行仿真时,图像可以使用工业相机抓拍的图像,也可用画图软件绘制图片,更具普遍性,我们先绘制800×600,256色图片,圆形、三角形、长方形、六边形各画一张,文件保存在同一文件夹下。Easybuilder设计时按照连接、设置图像、定位部件、检查部件、运行作业等步骤进行。

2.1 选择相机及加载图像

2.1.1 选择相机

在In-Sight中“系统”—“选项”—“仿真”,勾选仿真器,选择In-Sight 8402相机模型,注意第一次使用,需完成注册。

2.1.2 加载图像

在应用程序步骤中选择“设置图像”—“从PC加载图像”,选择“回放”,设置“回放文件夹”,加载后界面如图1所示。为调试方便,设置触发器触发方式“手动”,其他参数不变。

2.2 相机标定

相机标定的目的是建立相机坐标系和机器人坐标系的对应关系,按相机校准和手眼标定两步进行。

2.2.1 相机校准

相机校准的目的是让相机输出的单位从像素(pixel)变为实际尺寸(mm),具体步骤如下,实物相机校准使用棋盘格,可用9点标定法标定。

(1)将标定的图拖入到EasyBuilder的图像显示区,这里使用康耐视提供的CalibrationImage.bmp;

(2)选择“校准类型”—“网格”;

(3)点击校准;

(4)“设置”中,“网格类型”选择“方格图案带基准”,“网格间距”10,“网格单位”mm;

(5)依次完成“姿势”“结果”,如图2所示。

2.2.2 手眼标定

手眼标定目的是建立相机坐标和机器人坐标的关系,由于只考虑平面坐标,因此,在使用“三点法”定义工业机器人工件坐标系时,选择棋盘格的坐标原点为工件坐标系坐标原点,机器人工件坐标系x、y轴的方向保持与相机坐标系x、y轴的方向一致,这样相机坐标系与工业机器人工件坐标系重合。在视觉仿真时,这步可以不考虑。

2.3 定位部件

在Easybuilder中用模板匹配识别方形、六边形、三角形和圆等不同形状物体,在“定位部件”中,选择“位置工具”的“PatMax图案”算法,选择“模型”和“搜索”,在算法的“编辑工具”中修改“工具名称”,在算法的“设置”中,修改“合格阈值”为50,在算法的“训练图像”中点击“模型区域”,在图像中设置好搜索范围后,点击“训练”。

方形、六边形、三角形和圆要分别进行模板匹配,如图3所示。

2.4 检查部件

形状识别后,需要将识别结果发送给机器人。这里我们定义发送字符串,方形物体发送“方形”,以此类推。

在“检查部件”中,添加“数学逻辑工具”中的“数学”,表达式为:

Choose(MaxI(If(三角形.通过,三角形.定位器.得分,0),If(方形.通过,方形.定位器.得分,0),If(六边形.通过,六边形.定位器.得分,0),If(圆形.通过,圆形.定位器.得分,0)),”三角形”,”方形”,”六边形”,”圆形”)

2.5 通信

智能相机与机器人通过以太网通信,采用TCP/IP协议,通信时要求智能相机和机器人的IP地址在同一网段上。

智能相机发送数据,选择“通信”,选择“添加设备”,“设备”选其他,协议选择“TCP/IP”,点击“确定”,设置“端口”为3000,设置“结束符”为字符串加回车、换行。

点击“格式化输出字符串”,点击“格式字符串”,“开头文本”编辑为“当前的形状是:”,点击“添加”,选择输出数据为“数学.结果”,“输出字符串”对话框中可以看到输出信息。

仿真时,用TCP/UDP SOCKET调试工具模拟机器人接受智能相机的输出结果,SOCKET需要创建TCP Client,端口号为3000。智能相机联机、运行作业后,SOCKET数据接受及提示窗口可以看到物体识别输出信息。

2.6 子作业的建立与调用

智能相机可以建立子作业,子作业建立与新建作业过程相同,文件名保存格式为1-***.job。

子作业调用过程是:admin(起始用户名)、空(起始用户密码)、So0(脱机)、Sj1(调用子作业1)、So1(联机)、Sw8(触发信号),命令依次通过SOCKET的TCP客户端发出,端口号为23。

通过以上8个步骤,完成了机器视觉物体形状识别功能,从仿真的结果看,物体形状识别正确,通信可靠,至此完成了智能相机Easybuilder设计。

3  机器视觉电子表格仿真设计

设计案例:测量不同区域内、不同大小的圆的半径,测量结果通过以太网传输。通过圆半径测量的设计,介绍SpreadSheet的设计方法。在电子表格设计中,将使用到DetectBlobs函數、FindCircle函数、FormatString函数、TCPDevice函数、WriteDevice函数。

3.1 初始化

SpreadSheet设计初始化部分包含智能相机选取、图像导入、新建作业等,这些与Easybuilder设计基本相同,这里不再重复。

3.2 斑点匹配

在“选择板”中选取“视觉工具”中的“斑点”,将DetectBlobs函数拖入电子表格中,点击“重叠”按钮,显示图像,双击“区域”,设置物体的寻找范围,选择“颜色:斑点”为黑,选择“颜色:背景”为白,设置“区域大小:最小值”为10,点击确定。

3.3 圆直径测量

在“选择板”中选取“视觉工具”中“边”,将“FindCircle”函数拖入电子表格,在FindCircle属性页中,选择“固定”,点击“插入绝对引用”,“行”“列”“角度”选取“DetectBlobs函数”的“行”“col”“角度”单元格,“极性”选择黑到白,双击“圆环”,调整搜索圆和斑点圆的大小,FindCircle属性页设置如图4所示。

FindCircle函数设置完成后,可以看到电子表格中圆的圆心坐标。

3.4 通信

通信的目的是将智能相机测量的半径数据通过以太网传送出去。

3.4.1 格式化字符串

在“选择板”中选取“视觉工具”中“文本”,将“字符串”中的“FormatString”函数拖入电子表格,在FormatString属性页中,编辑“开通文本”为圆的半径,编辑“结尾文本”为pixel,点击“添加”,选择电子表格中变量半径所在的单元格,输出结果在输出字符串对话框中可见。

3.4.2 添加设备

在“选择板”中选取“输入/输出”中“网络”,将“TCPDevice”函数拖入电子表格,属性默认。

3.4.3 写设备

在“选择板”中选取“输入/输出”中“网络”,将“WriteDevice”函数拖入电子表格其函数形式为:

WriteDevice ( EVENT , Device , Data1 , [Data2])

其中,各参数引用的绝对地址为:

(1)EVENT:@image;

(2)Device:@device;

(3)Data1:格式化字符串。

设置结果如图5所示

3.4.4 通信测试

至此,智能相机电子表格设计已完成,Socket在每次图像切换时,接收信息,在数据接收及提示窗口可以看到“圆的半径xxx pixel”信息。从仿真结果看,测量结果正确,通信可靠。注意仿真时,相机的触发方式设为手动。

4  结语

采用Easybuilder和SpreadSheet设计方法使用In-Sight智能相机进行机器视觉开发,可解决了《机器视觉》课程实验设备不足的问题,采用该方法,使得机械类学生robcon机器人大赛、机械创新大赛、电子设计大赛中完成识别、定位、跟踪、测量等功能。从SKARB-12型工业机器人工作站视觉实际开发使用情况看,该方法符合工业级项目开发需要,提高了机械类学生的核心竞争力。该机器视觉仿真设计方法在国内高校机械类教学中,有一定的推广价值。

参考文献

[1] 张卫芬,汤文成.基于机器视觉的物料自动分拣系统研究[J].组合机床与自动化加工技术,2019(6):34-37.

[2] 黄晶晶,陶卫军,胡洋洋,等.一种基于视觉识别的按钮自主操作机械手[J].南京理工大学学报, 2017,41(5):616-622.

[3] 田昊,黄海龙,赵宝水.一种基于HALCON的机器视觉系统的标定方法[J].辽宁工业大学学报:自然科学版,2020,40(4):211-215,235.

[4] 董靖川,张成君,王一成,等.面向机器人智能抓取任务的视觉定位实验[J].实验技术与管理, 2020,37(3):56-59.

[5] 马建.基于机器视觉的工件识别与定位系统的设计与实现[D].中国科学院大学(中国科学院沈阳计算技术研究所),2020.

[6] 李硕.六自由度工業机器人视觉定位技术研究[D].吉林化工学院,2020.

猜你喜欢

电子表格机器视觉
电子表格的自动化检测
电子表格的自动化检测
浅谈教学中的电教应用
电子表格音乐合成器
全自动模拟目标搜救系统的设计与实现
基于机器视觉的自动浇注机控制系统的研究
大场景三维激光扫描仪在研究生实践教学培养中的应用
基于机器视觉的工件锯片缺陷检测系统设计
基于机器视觉技术的动态“白带”常规检测系统的开发
机器视觉技术在烟支钢印检测中的应用