2022年全国职业院校技能大赛机器视觉系统应用——任务10 胶水识别与测量
注意事项
一、本任务书共 26 页,包括附录七项(分别为视觉硬件及参数列表,相机的接线定义,分辨率及焦距计算公式,光源控制的接线说明,光源控制器通讯协议,旋转轴的安装及接线说明,相机、镜头、光源的选型计算报告)。如出现缺页、字迹不清等问题,请及时向裁判示意,进行任务书的更换。
二、在比赛前务必对各机器视觉组件和图形化编程平台软件熟悉,掌握C#软件编程及OpenCV库的调用。
三、在完成工作任务的全过程中,严格遵守光学或电气组件相关的操作要求,接线前一定要看清楚相机的引脚定义和电压要求。
四、不得擅自更改设备固定位置的器件和线路。
五、竞赛过程中,参赛选手认定竞赛设备的器件有故障,可提出更换,更换下的器件将由裁判组进行现场测试。若器件经现场测试是功能齐全,且没有故障的情况下,每次扣参赛队 1 分。若因人为操作损坏器件,扣 5 分。
六、所编的机器视觉程序必须保存到本机的“C:\全国技能大赛\Product\场次号-赛位号”文件夹下,赛位号以现场抽签为准。
七、参赛选手在完成工作任务的过程中,不得在任何地方标注学校名称、选手姓名等信息。
八、比赛结束后,参赛选手需要将任务书以及现场发放的图纸、资料、草稿纸等材料一并上交,不得带离赛场。
请按要求在 8 个小时内完成以下工作任务:
一、根据本任务提供的视野大小要求、工作距离要求、被测物的检测要求,从设备提供的一组机器视觉相机、镜头和光源中选择型号,完成选型并在合理的位置完成安装和接线。完成选型设计报告,并记载安装结果。
二、根据大豆样品的尺寸和初始状态的区域要求完成视野调焦和镜头对焦。
三、在开始配置摆拼流程前,创建配置文件名称:“场次号-赛位号” 。
四、通过标定板,完成单幅视野的标定,并保存标定结果。
五、选择合理的手眼标定工具,完成图像坐标与运动坐标的统一,并保存在配置文件中。
六、将任务书实验要求用程序实现,通过图像化编程软件完成流程配置并对每个工具合理化设置参数。
七、大豆和异物为混合在一起的无序状态,要求分别识别出大豆和异物,分别统计数量,并找出它们的坐标,由机械手将异物分拣出来,并放置在指定的物料盒。
八、通过网口通讯,把每个小板定位出来的位置信息发送到客户端(另一台电脑),并在软件指定的位置进行显示。
九、在客户端完成C# 代码编程,实现图像边缘检测算法和图像直方图统计算法,并显示结果图像。
注1:本次工作任务请在机器视觉应用设备上完成,比赛前要熟悉设备使用说明书和软件用户手册。操作过程中,须遵守安全操作规程和职业素养要求的相关规定。
注2:考试过程中不允许带入U盘或其他可储存设备。
注3:程序复杂的情况下每完成部分编程需要记得先保存配置。
竞赛工作任务说明书
一、平台硬件、软件组成说明
竞赛任务平台的硬软件说明详见平台技术说明书及视觉软件使用手册。完成竞赛工作任务书所需的全部硬件,都包含在工作台所提供设备内,选手要使用的全部器件,只能在本工作台提供的设备内选择。
1、工控机
设备中包含一台工控机,另有一台用于接收通讯数据和视觉算法代码编程的客户端计算机由承办单位提供,比赛所需的软件和驱动均已经提前预装。
2、视觉硬件
1)相机
可选择相机共四个,编号分别为相机A, 相机B,相机C, 3D相机(3D相机工作距离要求大于350mm),具体参数见附录一。
依据被测件的实际大小、测量精度要求(在4、竞赛任务中给出)选择好相机。
2)镜头
可选择镜头共四个,分别为:定焦12mm镜头,定焦25mm镜头,定焦35mm镜头,放大倍率为0.3倍的远心镜头,具体参数见附录一。
依据被测物尺寸、相机安装位置,在满足工作距离,视野范围,分辨率的要求下选择镜头。
3)光源
可选择光源共五个,编号分别为:小号环形光源、中号环形光源、大号环形光源、同轴光源、背光光源。注意,三个环形可以组合成AOI光源。具体参数见附录一。
依据任务书的需要,在安装方式和安装空间位置允许的情况下,可根据实际需要,选择多个光源同时组合使用。
4)标定板
依据相机工作距离和视野大小选择合适尺寸的标定板,具体参数见附录一;
依据检测需求选择标定方式,选择标定板;
为满足检测要求,可以选择多种标定方式和标定板组合使用,完成系统的标定要求。
3、线缆
相机线缆:2D相机USB数据线一根、3D相机数据线一根、GigE电源线(含触发和输出信号)一根、千兆网相机通讯线一根(带锁)、网络通讯线一根(3米扁线)、光源延长线一根;(注意:RS232通讯线默认已经与PC连接)。
4、运动控制硬件
PLC:控制运动平台运动,控制光源亮灭;
运动平台:X轴、Y轴、Z轴、θ轴。(注意:旋转轴θ是扩展轴,放置在机器视觉工具箱中,需要选手按附录六:旋转轴的安装及接线说明完成平台的搭建)。
二、软件功能及编程说明
参赛选手将使用图形化编程软件,需根据检测要求,需提前完成软件流程设计。
图形化编程首先需要根据需求完成工具的选择,基本的流程如下图所示,为了使配置的流程相对简洁采用了子模块、工具组模块多模块组合的配置方法,具体流程配置方法详见《视觉软件使用手册》(说明:本流程示意图图1仅说明视觉软件的流程设计编程方式,与本任务书描述的具体任务无直接关系)。

主要的工具列表:
客户端电脑上提供以下编程工具和图像处理库:
1、Microsoft Visual Studio 2015编程软件,使用C#编程。
2、基于C#的OpenCV图像处理库OpenCvSharp。

3、客户端软件及二次开发工程框构,详细说明见《二次开发说明》文件。
三、标定说明及运动位置校准
选择合适的标定工具,利用图像标定板使用多点标定方式,对相机进行标定,把图像坐标转成设备坐标系统,并得出像素当量;选择合适的手眼标定工具,统一设备坐标系统与相机坐标系统。
四、竞赛任务描述——胶水识别与测量
本次竞赛完成胶水识别与测量,胶水轨迹材料及料盘数量1套,胶水轨迹材料规格:大小:180mm x 100mm,料盘规格: 大小:200mm x 120mm,具体如下图。要求分六次拍照检测,单个视野要求:70mm x 60mm,工作距离:230mm+20mm,光源距离产品表面安装不得超过110mm,同时遵循畸变最小、测量精度最高、胶水轨迹对比度最高的原则进行硬件选型。
(一)胶水轨迹提取任务
本任务主要完成提取胶水的真实轨迹,要求单视野内胶水轨迹的点集数量不少于100个。
(二)胶水轨迹测量任务
对胶水轨迹的宽度进行测量,要求不少于100个测量点,求取每个视野内胶水轨迹宽度的平均值,判断出每个视野内的胶水轨迹的好坏。
(三)数据统计及分析
对每个视野内胶水轨迹宽度的平均值的测量数据进行分析统计并生成数据报表,报表文件保存到:C:\全国职业院校技能大赛\场次号-赛位号\胶水测量数据.csv
(四)客户端电脑C#代码编程
1、在客户端电脑上打开客户端软件建立与主控电脑的TCP/IP通讯连接。
2、客户端与主控电脑实现控制指令、数据、图像传输功能。
3、使用Microsoft Visual Studio 2015软件打开对应工程文件,利用OpenCVSharp图像库的算法,在指定文件中的现有声明函数体内实现如下图像处理算法,具体需求如下:
(1)、在Function1()函数体内实现图像边缘检测算法,开放边缘检测的参数,可手动实时调试参数;显示边缘检测结果图像,结果图像可随调试参数的变化而实时动态变化。
(2)、在Function2()函数体内实现图像直方图统计算法,显示直方图图表。
4、工程编译成功后,系统生成新的测试工具,把生成的动态链接库文件拷贝到客户端软件所在目录的ToolGroup文件夹下面。
4、打开客户端软件,添加指定工具到流程图中,完成参数配置,实现图像边缘检测算法和图像直方图统计算法。
五、竞赛任务工作要求
1、硬件选型安装接线
完成相机、镜头、光源的选型,输出选型计算报告。
将相机、镜头、光源、治具等在合理位置安装(注意工作距离),保证安装稳固,镜头与相机连接螺纹圈须拧紧;镜头调试好之后,用顶丝锁紧对焦环及光圈环;记录硬件的安装参数等结果。
完成相机、光源、旋转轴、通讯网络等电路接线,完成气路的连接,走线正确规范、整洁、牢固;物理接口选择正确。
2、视觉软件的PLC控制工具运行测试
控制X,Y.Z轴移动料盘,设置合适的检测区拍照位置;
控制X,Y.Z轴移动料盘,示教摆放区胶水轨迹摆放位置,需要示教六个位置;
输出I/O电信号正常。
3、光源控制工具运行测试
连接光源控制器正常,能控制多个光源亮灭;
能设置各个光源不同的亮度值;
实现光源频闪功能正常。
4、相机工具运行测试
相机能正常连接,能正常采集图像;
图像对焦清晰,视野大小合适;
协同光源控制器的光源调节功能,设置合适的相机参数(包括曝光,增益等参数)。
5、相机标定工具运行测试
把标定板放置到合适位置,设置合适的标定参数,完成相机标定;
保存标定数据结果到配置文件;
6、模板匹配工具运行测试
设置合适的参数创建模板并保存模板;
设置合适的参数查找模板。
7、轮廓提取工具运行测试
选择合适的轮廓提取方法
设置合适的提取算法参数
8、测量类工具运行测试
设置找线工具参数并正确找到直线。
设置距离工具参数并正确计算两点距离。
设置点线工具参数并正确计算点到直线距离。
9、数据分析工具运行测试
设置数据分析工具参数,并生成数据分析结果。
10、数据处理类运行测试
设置数据表格工具参数,并生胶水测量报表;
保存报表文件到:C:\全国职业院校技能大赛\场次号-赛位号\胶水测量数据.csv。
11、界面布局及数据显示
界面主窗口显示当前相机采集图像;
测量标记标线和结果显示到图像上;
测试数据在界面左侧显示。
12、客户端显示要求
1)打客户端软件,与主控电脑建立通讯连接,添加“主控电脑取图”工具和指定工具。并做好参数配置设置。
2)点击界面上的“Function1”按钮,弹出如下窗口,窗口顶部可以看到“HighThr”和“LowThr”两个参数设置滑块,滑动滑块可设置对应参数,图像也会动态变化,其效果如图7所示意。
3)点击界面上的“Function2”按钮,弹出如下窗口,显示直方图统计图表,其效果如图8所示意。
4)数据通过网口通讯发送给另一台客户端电脑,客户端软件接收服务器发送的数据并实时显示,客户端配置的名称为“数据接收”。客户端数据显示在软件界面的下方的结果数据栏中。
六、工作流程参考
1、编写视觉程序流程前主要准备工作
相机镜头已安装调试完成,相机可以正常采集到图像,工作距离符合要求、相机视野合适,6个视野范围可完全覆盖整个胶水样品;图像清晰,曝光设置合理;
光源安装调试完成,光源开关,亮度调好;
X,Y,Z各轴可正常控制,速度合理,拍照检测区位置示教合理;
相机标定已完成。
2、胶水轨迹识别与测量流程
在主要准备工作完成后,开始胶水轨迹识别与测量流程,主要流程如下:
1)选手把胶水样品放置到治具内,正反摆放可由选手指定,但样品必须放入治具内,不得超出治具;
2)移动平台到示教的检测区的拍照位置;
3)PLC发送拍照信号,触发上光源点亮,同时触发相机拍照;
4)识别出胶水轨迹,测量胶水轨迹的宽度并求得宽度的平均值,再把平均值生成数据报表;
5)依次完成6个示教位置的识别与测量;
七、附件
附录一、视觉硬件及参数列表
附录二、相机的接线定义
附录三、分辨率及焦距计算公式
简单视觉系统的计算,主要包括视场(FOV)、分辨率(Resolution)、工作距离(WD)和景深(DOF)等。
分辨率我们通常指的是像素分辨率,(默认选用的镜头分辨率高于相机的分辨率)。因此
分辨率就等于视野FOV/相机的像素数,假如我们FOV尺寸是16mmx12mm,选用的相机是200万像素(1600×1200),那么像素分辨率就是16mm/1600 or 12mm/1200=0.01mm。
下表分别表示的是英制的芯片尺寸,真实的芯片大小和焦距的计算公式。
附录四、光源控制的接线说明
硬件触发:用户可以通过PLC、相机的输出外部触发信号来控制每一路输出的开关。需要外部触发功能时需将外部触发信号线连接到“REMO”端子上。触发信号高电平时打开,低电平时关闭。
软件触发:用户也可用软件实现触发功能,即使用串口对各输出通道进行控制,使各输出通道按照预先的设置打开或关闭其输出。
附录五、光源控制器通讯协议
硬件规范
波特率:9600 bps
每帧字节数:8字节
1字节 | 1字节 | 1字节 | 3字节 | 2字节 |
特征字 | 指令字 | 通道字 | 数据 | 异或和校验字 |
注: 所有通讯字节都采用ASCII码
- 特征字 = $
- 指令字 = 1,2,3,4,分别定义为:
1:打开对应通道电源
2:关闭对应通道电源
3:设置对应通道电源参数
4:读出对应通道电源参数
当指令字为1,2,3时,如控制器接收指令成功,则返回特征字$;如控制器接收指令失败,则返回&。
当指令字为4时,如控制器接收指令成功,则返回对应通道的电源设置参数(返回格式跟发送格式相同);如控制器接收指令失败,则返回&。
- 通道字 = 1,2,3,4。分别代表4个通道。
- 数据 = 0XX(XX为00~FF内的任一数值),对应通道电源的设置参数,高位在前,低位在后。
- 异或和校验字 = 除校验字外的字节(包括:特征字,指令字,通道字和数据)的异或校验和,校验和的高4位ASCII码在前,低4位ASCII码在后。
例:将第2通道亮度设为56,则以ASCII码向下写“$320381E”
附录六、旋转轴的安装及接线说明
θ轴如上图所示,共有四根线需要接入控制面板。
接线分别为A+ A- B+ B-,将对应接线端子接入到控制面板上。
附录七