金属锭¶
本节提供金属锭工程的使用指导,该工程概览如下。
工件 |
有序码放的金属锭 |
工作距离 |
1200~3000mm |
技术指标 |
识别定位精度:±5mm |
识别成功率:大于 99% |
|
视觉系统耗时:4~5s |
工程介绍¶
下文将从适用场景、技术指标方面介绍该工程。
适用场景¶
本节将从工件、载具方面介绍该工程的适用场景。
工件¶
该工程对金属锭的适用情况如下表所示。
工件特征 |
适用/不适用情况 |
图示 |
工件类型 |
适用于整齐排列的类长方体金属工件,抓取点为工件中心 |
|
不适用于形状不规则、无对称性的工件。当抓取点不为工件中心时,有特殊抓取要求 |
||
形状尺寸 |
适用于类长方体,如矩形锭、华夫锭、四棱台等 |
|
不适用于异形件 |
||
工件材质 |
镁、锌、铝等金属 |
|
反光性/点云质量 |
适用于低反光、点云完整的工件 |
|
不适用于高反光、点云缺失严重的工件 |
||
码放方式 |
适用于有序码放的工件 |
|
不适用于无序堆叠的工件 |
||
层叠方式 |
工件多层码放 |
载具¶
该工程对载具的适用情况如下表所示。
载具特征 |
适用/不适用情况 |
图示 |
载具类别 |
推荐使用塑料或木制托盘,且无隔板 |
|
不推荐将金属锭单独装配于载具中,如限位槽等。限位槽(右图 1 处)将遮挡部分工件(右图 2 处),使工件图像不完整,引起识别误差 |
项目方案¶
项目布局¶
工作站布局¶
工作站布局如下图所示。机器人位于工作站中央,机器人左右两侧为工件上料位和输送线,工件上料位上方为相机支架。
该工作站内的工作流程如下:
金属锭由机器人或人工叉车运送至上料位置,并告知上位系统上料完成。
上位系统将金属锭来料信息发送至机器人。
机器人向视觉系统发送拍照指令,触发相机拍照。
视觉系统拍照后,将金属锭的位置信息发送至机器人。
机器人根据视觉系统发送的位置信息抓取金属锭,并放置在后续工位。
重复上述流程,直至整垛金属锭抓取完成。
视觉系统硬件组成¶
推荐型号 |
说明 |
|
相机 |
LSR L |
推荐安装方式:Eye-to-Hand;工作距离:1200~3000mm |
工控机 |
标准机型,无 GPU |
处理器:CPU Intel i5-12400 |
内存:16G |
||
硬盘:SSD 256G |
||
系统:Windows 10 系统 x64 |
||
WIFI 模块 |
||
网口:4 个千兆网口 |
||
视频接口:默认为 HDMI 或 DP |
机器人夹具¶
金属锭工程的夹具通常为真空吸盘或夹爪。
真空吸盘¶
真空吸盘夹具如下图所示。
夹具说明:
该夹具可通过吸盘吸附工件上表面进行抓取。
夹具优点:
可适应不同形状的工件,且不会对工件表面产生划伤。
机械结构简单。
夹具缺点:
夹具载重有限,难以抓取较重的工件。
吸盘抓取工件时存在定位误差,不适用于较高精度定位的场景。
夹爪¶
夹爪夹具如下图所示。
夹具说明:
该夹具可通过夹爪夹紧工件两端抓取工件。
夹具优点:
夹爪可稳定夹取工件,定位精度较高,可用于定位精度要求较高的场景。
夹具缺点:
兼容性较低,工件形状差异较大时需更换夹具。
夹爪可能对工件表面造成划伤。
夹具推荐¶
工件重量较小,后续工位定位精度要求不高时,建议采用真空吸盘。
工件重量较大,后续工位定位精度要求较高时,建议采用夹爪。
视觉方案¶
通信方式¶
推荐使用标准接口通信方式。
一、切换 Mech-Vision 配方 |
|||
机器人 -> 工控机 |
请求指令 |
Mech-Vision 工程编号 |
配方编号 |
103 |
Mech-Vision 工程列表中工程名左侧的数字 |
1~99 |
|
示例 |
103, 1, 2 |
||
工控机 -> 机器人 |
返回指令 |
状态码 |
|
103 |
1107:配方切换成功 1012:Mech-Vision 配方编号不存在 |
||
示例 |
103, 1107 |
二、启动 Mech-Viz 工程 |
|||
机器人 -> 工控机 |
请求指令 |
位姿类型 |
机器人位姿 |
201 |
0:不发送位姿 1:传入 Mech-Viz 的位姿为关节角及法兰位姿形式 2:机器人端自定义的关节角 |
机器人当前关节角及法兰位姿(若“位姿类型”为 1) |
|
示例 |
201, 1, 0, -20.632, -107.812, 0, -92.818, 0.003 |
||
工控机 -> 机器人 |
返回指令 |
状态码 |
|
201 |
2103:执行正常 2008:工程运行错误 …… |
||
示例 |
201, 2103 |
三、选择 Mech-Viz 分支 |
|||
机器人 -> 工控机 |
请求指令 |
分支步骤编号 |
出口号 |
203 |
该参数应为正整数,用于指定分支选择将在哪个步骤上进行 |
该参数为正整数,该参数用于指定工程将沿消息分支步骤的哪个出口运行。 |
|
示例 |
203, 1, 1 |
||
工控机 -> 机器人 |
返回指令 |
状态码 |
|
203 |
2105:执行正常 2018:无效的分支出口号 …… |
||
示例 |
203, 2105 |
四、获取规划路径(推荐) |
||||||
机器人 -> 工控机 |
请求指令 |
路径点类型 |
||||
205 |
1:路径点将以机器人关节角形式返回 2:路径点将以机器人工具位姿形式返回 |
|||||
示例 |
205, 1 |
|||||
工控机 -> 机器人 |
返回指令 |
状态码 |
是否发送完成 |
路径点数量 |
“视觉移动”位置 |
路径点 |
205 |
2100:执行正常 2007:路径规划失败 …… |
0:未发送完路径中的全部路径点 1:已发送完路径中的全部路径点 |
默认范围:0~20 若路径中含有 20 个以上个路径点,请多次执行该指令。 |
“视觉移动”步骤路径点在整个路径中的位置 |
物体位姿 标签 速度 |
|
示例 |
205, 2100, 1, 2, 2, 8.307, 15.163, -142.177, -2.775, -31.440, -96.949, 0, 64 |
五、获取视觉目标点(无 Mech-Viz 时使用,不推荐) |
||||||
机器人 -> 工控机 |
请求指令 |
Mech-Vision 工程编号 |
||||
102 |
Mech-Vision 工程列表中工程名左侧的数字 |
|||||
示例 |
102, 1 |
|||||
工控机 -> 机器人 |
返回指令 |
状态码 |
是否发送完成 |
TCP 数量 |
保留字段 |
视觉目标点 |
102 |
1100:执行正常 1102:无视觉结果 …… |
0:未完全发送 1:已完全发送 |
默认范围:0~20 |
该字段未使用,默认值为 0 |
物体位姿 标签 速度 |
|
示例 |
102, 1100, 1, 1, 0, 95.780, 644.567, 401.101, 91.120, -171.130, 180.0, 0, 0 |
关于标准接口通信的详细内容,可参考 标准接口通信 。
工程说明¶
采集图像: 用于获取金属锭的彩色图、深度图。
点云预处理: 用于对金属锭的原始点云进行预处理。
使用深度学习提取掩膜: 使用深度学习方法提取最高层金属锭的掩膜图像。
提取掩膜中对应的点云: 提取金属锭掩膜中对应的点云,并滤除不合格的点云。
3D 匹配: 利用金属锭点云的面模板进行面模板匹配,并生成抓取点。
调整位姿: 用于将金属锭的抓取点从物体坐标系变换至相机坐标系,并排序。
路径规划: 规划机器人的抓取路径。
输出结果: 将当前工程的结果发送给后台服务。
点云模板和抓取点设置方式¶
金属锭通常为铸件,一般使用相机拍照生成的工件点云来制作点云模板,然后将点云模板的几何中心点,作为工件抓取点。
提示
当金属锭上下表面的形状尺寸不一致时,需分别获取上下表面的点云,然后生成点云模板。
当金属锭上下表面的形状尺寸一致时,可直接根据点云生成点云模板。
方案部署¶
参数调节建议¶
获取最上层图像¶
该步骤组合是为了提高深度学习的准确性和稳定性,尽量去除干扰,有利于深度学习识别工件图像。
将深度图 3D ROI 外的区域置为无效 :需根据现场工件垛型尺寸,调整 3D ROI 的大小,确保已去除影响深度学习识别的干扰因素。
深度图分割 :需根据现场工件垛型尺寸,调整 2D ROI 的大小,确保已去除影响深度学习识别的干扰因素。