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、客户端软件及二次开发工程框构,详细说明见《二次开发说明》文件。
三、标定说明及运动位置校准
选择合适的标定工具,利用图像标定板使用多点标定方式,对相机进行标定,把图像坐标转成设备坐标系统,并得出像素当量;选择合适的手眼标定工具,统一设备坐标系统与相机坐标系统。
四、竞赛任务描述——智能仓库
(一)样品规格说明
仓库及物料说明:提供的待搬运物料有三种规格,分别为5个小型物料(尺寸为:20mmx10mmx3mm),2个中型物料(尺寸为:20mmx10mmx9mm),2个大型物料(尺寸为:20mmx10mmx18mm),中型与大型物料侧面箭头方向指向上方,如下图所示。其中,小型物料表面贴有字符及数字信息标签,中型和大型物料上表面没有贴标,侧面贴有指示箭头(指示信息是为告知物料摆放姿态,不要求做识别)。
仓库的布局如下图所示,分为A、B、C三个区,A区有1-5号物料仓位,用于放置小型物料;B区有B1和B2两个物料仓位,用于放置中型物料,C区有C1和C2两个物料仓位,用于放置大型物料,每种类型的物料必须搬运进入对应区域的物料放置仓位
(二)智能仓库任务
仓库的初始状态为:5个小型物料、2个中型物料、以及2个大型物料随机摆放在检测区。通过程序识别、定位和判断后,5个小型物料分别放入A区物料仓位中(摆放顺序无要求,物料与物料之间互相不得堆叠,堆叠则判定堆叠区所有物料分拣任务失败),2个中型物料分别放入B区物料仓位B1和B2中,2个大型物料分别放入C区物料仓位C1和C2中。
(三)各个拍照位的硬件选型要求
1、要求用3D测量模块,测量出中型、大型物料的高度信息;
2、2D相机要求像素精度为0.1mm,视野大小要求:230mm*192mm,工作距离要求:370mm(工作距离范围允许一定偏差,最大不得超过+/-25mm),检测区必须在光源范围内;
(四)警示、显示和保存的要求
1、要求在搬运A、B、C型物料的过程中,点亮红色报警灯,搬运流程完成后,熄灭红色报警灯;
2、界面分三个窗口显示:
第一个窗口显示2D相机的初始拍照位图像(物料搬运前);
第二个窗口显示初始状态(搬运前)检测区中所有所有A型物料的中心坐标,B型和C型物料的高度值、中心坐标;
第三个窗口显示物料分拣完成后的仓库2D图像。
3、数据保存:识别出A型物料的标签信息、B型物料的高度信息、C型物料的高度信息,并将信息保存到文件:“物料信息.csv”中;文件保存路径:“C:\全国职业院校技能大赛\场次号-赛位号\物料信息.csv”。
(五)客户端电脑C#代码编程
1、在客户端电脑上打开客户端软件建立与主控电脑的TCP/IP通讯连接。
2、客户端与主控电脑实现控制指令、数据、图像传输功能。
3、使用Microsoft Visual Studio 2015软件打开对应工程文件,利用OpenCVSharp图像库的算法,在指定文件中的现有声明函数体内实现如下图像处理算法,具体需求如下:
(1)在Function1()函数体内实现图像边缘检测算法,开放边缘检测的参数,可手动实时调试参数;显示边缘检测结果图像,结果图像可随调试参数的变化而实时动态变化。
(2)在Function2()函数体内实现图像直方图统计算法,显示直方图图表。
4、工程编译成功后,系统生成新的测试工具,把生成的动态链接库文件拷贝到客户端软件所在目录的ToolGroup文件夹下面。
5、打开客户端软件,添加指定工具到流程图中,完成参数配置,实现图像边缘检测算法和图像直方图统计算法。
五、竞赛任务工作要求
1、硬件选型安装接线
完成相机、镜头、光源的选型,输出选型计算报告,选型计算报告的答案请写在附录七。
将相机、镜头、光源、治具等在合理位置安装,保证安装稳固,镜头与相机连接螺纹圈须拧紧;镜头调试好之后,用顶丝锁紧对焦环及光圈环;记录硬件的安装参数等结果。
完成相机、光源、旋转轴、通讯网络等电路接线,完成气路的连接,走线正确规范、整洁、牢固;物理接口选择正确。
2、视觉软件的PLC控制工具运行测试
控制X,Y.Z轴移动料盘,设置拍照位;
输出I/O电信号正常。
3、光源控制工具运行测试
光源与其控制器正常,能控制所有光源亮灭,且能设置各光源亮度值;
4、相机工具运行测试
测试相机,保证相机正常工作;
确定各个拍照位的图像对焦清楚,视野大小合适;
协同光源控制器的光源调节功能,设置合适的相机参数。
5、相机标定工具运行测试
放置标定板,在图像中观察标定板大小位置是否合理,确定合理后,设置标定参数,完成相机标定;
保存标定数据结果到配置文件;
正确移动及摆放标定板,完成手眼标定过程,保存标定数据到配置文件。
6、检测工具运行测试
设置检测工具参数,识别小型物料标签信息。
7、模板匹配工具运行测试
设置合适的参数创建模板并保存模板;
设置合适的参数查找模板。
8、OCR工具运行测试
设置ORC工具并测试是否能识别到字母及数字信息。
9、数据分析工具运行测试
设置数据分析工具参数,并生成数据分析结果。
10、数据处理类运行测试
设置数据保存表格工具参数,设置文件名、保存路径;
添加需要保存的数据,生成报表;
11、界面布局及数据显示
设置好三个窗口,软件界面各窗口分别显示以下信息:窗口一显示2D相机的初始拍照位图像(物料搬运前);窗口二显示初始状态(搬运前)检测区中所有所有A型物料的中心坐标,B型和C型物料的高度值、中心坐标;窗口三显示物料分拣完成后的仓库2D图像。
12、客户端显示要求
1)打客户端软件,与主控电脑建立通讯连接,添加“主控电脑取图”工具和指定工具。并做好参数配置设置。
2)点击界面上的“Function1”按钮,弹出如下窗口,窗口顶部可以看到“HighThr”和“LowThr”两个参数设置滑块,滑动滑块可设置对应参数,图像也会动态变化,其效果如图7所示
3)点击界面上的“Function2”按钮,弹出如下窗口,显示直方图统计图表,其效果如图8所示。
4)数据通过网口通讯发送给另一台客户端电脑,客户端软件接收服务器发送的数据并实时显示,客户端配置的名称为“数据接收”。客户端数据显示在软件界面的下方的结果数据栏中。
六、工作流程参考
1、硬件选型安装接线
完成相机、镜头、光源的选型,输出选型计算报告,选型计算报告的答案请写在附录七。
将相机、镜头、光源、治具等在合理位置安装,保证安装稳固,镜头与相机连接螺纹圈须拧紧;镜头调试好之后,用顶丝锁紧对焦环及光圈环。
完成相机、光源、旋转轴、客户端等电路接线,完成气路的连接,要求走线正确规范、整洁、牢固。
2、PLC控制工具设置
全轴应从零位开始运动,设置好拍照位,并根据任务描述,完成运动控制以及警报灯控制,完成搬运入库任务后,应将全轴回零。
3、光源控制工具设置
合理设置光源亮度,拍照前点亮光源,完成拍照后熄灭。
4、相机工具设置
合理设置相机参数,确定拍照位的图像对焦清楚,视野大小合适。
5、相机标定
根据需要选择标定板,并安装好,在图像中观察标定板大小位置是否合理,确定合理后,设置标定参数,完成相机标定。
6、数据保存
按照任务要求,保存识别及测量出的数据信息。
7、界面布局及数据显示
设置好窗口个数,软件界面各窗口显示各相机采集的图像;根据要求把结果、数据显示到各窗口上;
七、附件
附录一、视觉硬件及参数列表
附录二、相机的接线定义
附录三、分辨率及焦距计算公式
简单视觉系统的计算,主要包括视场(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-,将对应接线端子接入到控制面板上。
附录七