一种基于机器人视觉的板件纠偏方法和系统

专利类型 发明授权 法律事件 公开; 实质审查; 授权;
专利有效性 有效专利 当前状态 授权
申请号 CN202410777181.2 申请日 2024-06-17
公开(公告)号 CN118875824B 公开(公告)日 2025-04-01
申请人 广州宁基智能系统有限公司; 申请人类型 企业
发明人 王兵; 江思源; 黎剑晖; 周赞; 林韩柱; 第一发明人 王兵
权利人 广州宁基智能系统有限公司 权利人类型 企业
当前权利人 广州宁基智能系统有限公司 当前权利人类型 企业
省份 当前专利权人所在省份:广东省 城市 当前专利权人所在城市:广东省广州市
具体地址 当前专利权人所在详细地址:广东省广州市增城区新塘镇宁西工业园 邮编 当前专利权人邮编:511300
主IPC国际分类 B23Q17/24 所有IPC国际分类 B23Q17/24B23Q7/14B23Q7/00B23Q15/22B25J9/16G05B19/404
专利引用数量 1 专利被引用数量 0
专利权利要求数量 9 专利文献类型 B
专利代理机构 广州嘉权专利商标事务所有限公司 专利代理人 任宇杭;
摘要 本 申请 公开了一种基于 机器人 视觉的板件纠偏方法和系统,包括:视觉纠偏系统对目标板件拍照得到标签图片,机器人系统将板件理论信息发给视觉纠偏系统;视觉纠偏系统根据标签图片上条码的目标特征信息计算目标条码坐标信息;根据转换关系矩阵、标定图片在机器人 坐标系 的基准点坐标及目标条码坐标信息计算标签在机器人坐标系的实际坐标;根据标定图片在机器人坐标系的基准点坐标、标签在机器人坐标系的实际坐标、板件理论坐标及标签理论坐标计算 定位 偏移量;根据定位偏移量计算目标板件中心坐标,将目标板件中心坐标发给机器人系统,以使机器人系统控制机器人 吸附 目标板件,能够提高自动化操作的精确度和生产效率,可广泛应用于自动化控制技术领域。
权利要求

1.一种基于机器人视觉的板件纠偏方法,其特征在于,所述方法包括:
通过机器人系统控制机器人向视觉纠偏系统发送拍摄指令,以使所述视觉纠偏系统对目标板件的标签进行拍照,得到目标标签图片,并通过所述机器人系统将所述目标板件的板件理论信息发送给所述视觉纠偏系统;所述板件理论信息包含板件理论坐标和标签理论坐标;
通过所述视觉纠偏系统根据所述目标标签图片上目标条码的目标特征信息,计算所述目标条码的目标条码坐标信息;
通过所述视觉纠偏系统根据目标转换关系矩阵、目标标定图片在机器人坐标系下的基准点坐标以及所述目标条码坐标信息计算所述标签在所述机器人坐标系下的实际坐标;
通过所述视觉纠偏系统根据所述目标标定图片在所述机器人坐标系下的基准点坐标、所述标签在所述机器人坐标系下的实际坐标、所述板件理论坐标以及所述标签理论坐标计算所述机器人的定位偏移量;
通过所述视觉纠偏系统根据所述定位偏移量计算所述目标板件的目标板件中心坐标,并将所述目标板件中心坐标发送给所述机器人系统,以使所述机器人系统控制所述机器人吸附起在所述目标板件中心坐标的所述目标板件;所述目标条码坐标信息中的目标条码度为所述机器人吸附所述目标板件的旋转角度;
所述定位偏移量包括平移偏移量和旋转偏移量,所述通过所述视觉纠偏系统根据所述目标标定图片在所述机器人坐标系下的基准点坐标、所述标签在所述机器人坐标系下的实际坐标、所述板件理论坐标以及所述标签理论坐标计算所述机器人的定位偏移量,包括:
通过所述视觉纠偏系统根据所述目标标定图片在所述机器人坐标系下的基准点坐标和所述标签在所述机器人坐标系下的实际坐标计算所述机器人的平移偏移量;
通过所述视觉纠偏系统根据所述板件理论坐标和所述标签理论坐标计算所述机器人的旋转偏移量;
所述旋转偏移量的计算公式为:
xrotate=(xpanel‑xcapture)*cosroffset+(ypanel‑ycapture)*sinroffsetyrotate=(xpanel‑xcapture)*sinroffset+(ypanel‑ycapture)*cosroffset其中,xrotate表示为所述旋转偏移量的横坐标,yrotate表示为所述旋转偏移量的纵坐标,xpanel表示为所述板件理论坐标的横坐标,ypanel表示为所述板件理论坐标的纵坐标,xcapture表示为所述标签理论坐标的横坐标,ycapture表示为所述标签理论坐标的纵坐标,roffset表示为旋转角偏移量;
所述目标板件中心坐标的计算公式为:
x=xcapture+xoffset+xrotate
y=ycapture+yoffset+yrotate
其中,x表示为所述目标板件中心坐标的横坐标,y表示为所述目标板件中心坐标的纵坐标,xoffset表示为所述平移偏移量的横坐标,yoffset表示为所述平移偏移量的纵坐标。
2.根据权利要求1所述的方法,其特征在于,在所述通过机器人系统控制机器人向视觉纠偏系统发送拍摄指令,以使所述视觉纠偏系统对目标板件的标签进行拍照,得到目标标签图片,并通过所述机器人系统将所述目标板件的板件理论信息发送给所述视觉纠偏系统之前,所述方法还包括:
通过软件控制系统获取目标板件的板件理论信息,并将所述板件理论信息发送给所述机器人系统。
3.根据权利要求1所述的方法,其特征在于,所述通过机器人系统控制机器人向视觉纠偏系统发送拍摄指令,以使所述视觉纠偏系统对目标板件的标签进行拍照,得到目标标签图片,并通过所述机器人系统将所述目标板件的板件理论信息发送给所述视觉纠偏系统,包括:
通过所述机器人系统控制所述机器人移动至所述标签理论坐标,并控制所述机器人向所述视觉纠偏系统发出拍摄指令,以使所述视觉纠偏系统对在所述标签理论坐标上的所述目标板件的标签进行拍照,得到所述目标标签图片,并通过所述机器人系统将所述目标板件的板件理论信息发送给所述视觉纠偏系统。
4.根据权利要求1所述的方法,其特征在于,所述板件理论信息还包含原始条码信息,所述目标条码坐标信息包含目标条码中心点坐标和目标条码角度;所述通过所述视觉纠偏系统根据所述目标标签图片上目标条码的目标特征信息,计算所述目标条码的目标条码坐标信息,包括:
通过所述视觉纠偏系统对所述目标标签图片上的目标条码进行识别,得到目标条码信息;
通过所述视觉纠偏系统根据所述目标条码信息计算所述目标条码的目标条码中心点坐标;
通过所述视觉纠偏系统将所述目标条码信息与所述原始条码信息进行匹配,得到目标匹配结果;
通过所述视觉纠偏系统根据所述目标匹配结果获取所述目标条码的目标边缘信息;
通过所述视觉纠偏系统根据所述目标边缘信息计算所述目标条码的目标条码角度。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
通过所述视觉纠偏系统将所述目标条码信息与所述原始条码信息进行匹配,得到异常匹配结果;
通过所述视觉纠偏系统将所述异常匹配结果发送给所述机器人系统。
6.根据权利要求1所述的方法,其特征在于,所述通过所述视觉纠偏系统根据所述定位偏移量计算所述目标板件的目标板件中心坐标,并将所述目标板件中心坐标发送给所述机器人系统,以使所述机器人系统控制所述机器人吸附起在所述目标板件中心坐标的所述目标板件,包括:
通过所述视觉纠偏系统根据所述定位偏移量计算所述目标板件的目标板件中心坐标,并将所述目标板件中心坐标发送给所述机器人系统;
通过所述机器人系统控制所述机器人将机器人吸盘移动至所述目标板件中心坐标,并通过所述机器人系统控制所述机器人将所述机器人吸盘旋转至所述目标条码角度;
通过所述机器人系统控制所述机器人采用所述机器人吸盘吸附起在所述目标板件中心坐标的所述目标板件。
7.一种基于机器人视觉的板件纠偏系统,其特征在于,所述系统包括:
图片获取模,用于通过机器人系统控制机器人向视觉纠偏系统发送拍摄指令,以使所述视觉纠偏系统对目标板件的标签进行拍照,得到目标标签图片,并通过所述机器人系统将所述目标板件的板件理论信息发送给所述视觉纠偏系统;所述板件理论信息包含板件理论坐标和标签理论坐标;
条码坐标信息获取模块,用于通过所述视觉纠偏系统根据所述目标标签图片上目标条码的目标特征信息,计算所述目标条码的目标条码坐标信息;
标签坐标计算模块,用于通过所述视觉纠偏系统根据目标转换关系矩阵、目标标定图片在机器人坐标系下的基准点坐标以及所述目标条码坐标信息计算所述标签在所述机器人坐标系下的实际坐标;
定位偏移量计算模块,用于通过所述视觉纠偏系统根据所述目标标定图片在所述机器人坐标系下的基准点坐标、所述标签在所述机器人坐标系下的实际坐标、所述板件理论坐标以及所述标签理论坐标计算所述机器人的定位偏移量;
目标板件中心计算模块,用于通过所述视觉纠偏系统根据所述定位偏移量计算所述目标板件的目标板件中心坐标,并将所述目标板件中心坐标发送给所述机器人系统,以使所述机器人系统控制所述机器人吸附起在所述目标板件中心坐标的所述目标板件;所述目标条码坐标信息中的目标条码角度为所述机器人吸附所述目标板件的旋转角度;
所述定位偏移量包括平移偏移量和旋转偏移量,所述定位偏移量计算模块具体用于:
通过所述视觉纠偏系统根据所述目标标定图片在所述机器人坐标系下的基准点坐标和所述标签在所述机器人坐标系下的实际坐标计算所述机器人的平移偏移量;
通过所述视觉纠偏系统根据所述板件理论坐标和所述标签理论坐标计算所述机器人的旋转偏移量;
所述旋转偏移量的计算公式为:
xrotate=(xpanel‑xcapture)*cosroffset+(ypanel‑ycapture)*sinroffsetyrotate=(xpanel‑xcapture)*sinroffset+(ypanel‑ycapture)*cosroffset其中,xrotate表示为所述旋转偏移量的横坐标,yrotate表示为所述旋转偏移量的纵坐标,xpanel表示为所述板件理论坐标的横坐标,ypanel表示为所述板件理论坐标的纵坐标,xcapture表示为所述标签理论坐标的横坐标,ycapture表示为所述标签理论坐标的纵坐标,roffset表示为旋转角偏移量;
所述目标板件中心坐标的计算公式为:
x=xcapture+xoffset+xrotate
y=ycapture+yoffset+yrotate
其中,x表示为所述目标板件中心坐标的横坐标,y表示为所述目标板件中心坐标的纵坐标,xoffset表示为所述平移偏移量的横坐标,yoffset表示为所述平移偏移量的纵坐标。
8.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现权利要求1至6任一项所述的方法。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法。

说明书全文

一种基于机器人视觉的板件纠偏方法和系统

技术领域

[0001] 本申请涉及自动化控制技术领域,尤其涉及一种基于机器人视觉的板件纠偏方法和系统。

背景技术

[0002] 目前,在智能家居的生产过程中,套铣加工中心因其板材优化利用率高,能同时实现开料和铣型,已成为近年来家居制造业深受欢迎的加工设备之一。但在板材加工完成后推料至下料区时,由于板件加工缝隙被挤压,部分板件受不均可能导致出现旋转度,以及下料位置出现不可预知的偏差的问题。
[0003] 综上,相关技术中存在的技术问题有待得到改善。发明内容
[0004] 本申请实施例旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本申请实施例的主要目的在于提出一种基于机器人视觉的板件纠偏方法和系统,能够提高自动化操作的精确度和生产效率。
[0005] 为实现上述目的,本申请实施例的一方面提出了一种基于机器人视觉的板件纠偏方法,所述方法包括:
[0006] 通过机器人系统控制机器人向视觉纠偏系统发送拍摄指令,以使所述视觉纠偏系统对目标板件的标签进行拍照,得到目标标签图片,并通过所述机器人系统将所述目标板件的板件理论信息发送给所述视觉纠偏系统;所述板件理论信息包含板件理论坐标和标签理论坐标;
[0007] 通过所述视觉纠偏系统根据所述目标标签图片上目标条码的目标特征信息,计算所述目标条码的目标条码坐标信息;
[0008] 通过所述视觉纠偏系统根据目标转换关系矩阵、目标标定图片在机器人坐标系下的基准点坐标以及所述目标条码坐标信息计算所述标签在所述机器人坐标系下的实际坐标;
[0009] 通过所述视觉纠偏系统根据所述目标标定图片在所述机器人坐标系下的基准点坐标、所述标签在所述机器人坐标系下的实际坐标、所述板件理论坐标以及所述标签理论坐标计算所述机器人的定位偏移量;
[0010] 通过所述视觉纠偏系统根据所述定位偏移量计算所述目标板件的目标板件中心坐标,并将所述目标板件中心坐标发送给所述机器人系统,以使所述机器人系统控制所述机器人吸附起在所述目标板件中心坐标的所述目标板件。
[0011] 在一些实施例中,在所述通过机器人系统控制机器人向视觉纠偏系统发送拍摄指令,以使所述视觉纠偏系统对目标板件的标签进行拍照,得到目标标签图片,并通过所述机器人系统将所述目标板件的板件理论信息发送给所述视觉纠偏系统之前,所述方法还包括:
[0012] 通过软件控制系统获取目标板件的板件理论信息,并将所述板件理论信息发送给所述机器人系统。
[0013] 在一些实施例中,所述通过机器人系统控制机器人向视觉纠偏系统发送拍摄指令,以使所述视觉纠偏系统对目标板件的标签进行拍照,得到目标标签图片,并通过所述机器人系统将所述目标板件的板件理论信息发送给所述视觉纠偏系统,包括:
[0014] 通过所述机器人系统控制所述机器人移动至所述标签理论坐标,并控制所述机器人向所述视觉纠偏系统发出拍摄指令,以使所述视觉纠偏系统对在所述标签理论坐标上的所述目标板件的标签进行拍照,得到所述目标标签图片,并通过所述机器人系统将所述目标板件的板件理论信息发送给所述视觉纠偏系统。
[0015] 在一些实施例中,所述板件理论信息还包含原始条码信息,所述目标条码坐标信息包含目标条码中心点坐标和目标条码角度;所述通过所述视觉纠偏系统根据所述目标标签图片上目标条码的目标特征信息,计算所述目标条码的目标条码坐标信息,包括:
[0016] 通过所述视觉纠偏系统对所述目标标签图片上的目标条码进行识别,得到目标条码信息;
[0017] 通过所述视觉纠偏系统根据所述目标条码信息计算所述目标条码的目标条码中心点坐标;
[0018] 通过所述视觉纠偏系统将所述目标条码信息与所述原始条码信息进行匹配,得到目标匹配结果;
[0019] 通过所述视觉纠偏系统根据所述目标匹配结果获取所述目标条码的目标边缘信息;
[0020] 通过所述视觉纠偏系统根据所述目标边缘信息计算所述目标条码的目标条码角度。
[0021] 在一些实施例中,所述方法还包括:
[0022] 通过所述视觉纠偏系统将所述目标条码信息与所述原始条码信息进行匹配,得到异常匹配结果;
[0023] 通过所述视觉纠偏系统将所述异常匹配结果发送给所述机器人系统。
[0024] 在一些实施例中,所述定位偏移量包括平移偏移量和旋转偏移量,所述通过所述视觉纠偏系统根据所述目标标定图片在所述机器人坐标系下的基准点坐标、所述标签在所述机器人坐标系下的实际坐标、所述板件理论坐标以及所述标签理论坐标计算所述机器人的定位偏移量,包括:
[0025] 通过所述视觉纠偏系统根据所述目标标定图片在所述机器人坐标系下的基准点坐标和所述标签在所述机器人坐标系下的实际坐标计算所述机器人的平移偏移量;
[0026] 通过所述视觉纠偏系统根据所述板件理论坐标和所述标签理论坐标计算所述机器人的旋转偏移量。
[0027] 在一些实施例中,所述目标条码坐标信息中的目标条码角度为所述机器人吸附所述目标板件的旋转角度;所述通过所述视觉纠偏系统根据所述定位偏移量计算所述目标板件的目标板件中心坐标,并将所述目标板件中心坐标发送给所述机器人系统,以使所述机器人系统控制所述机器人吸附起在所述目标板件中心坐标的所述目标板件,包括:
[0028] 通过所述视觉纠偏系统根据所述定位偏移量计算所述目标板件的目标板件中心坐标,并将所述目标板件中心坐标发送给所述机器人系统;
[0029] 通过所述机器人系统控制所述机器人将机器人吸盘移动至所述目标板件中心坐标,并通过所述机器人系统控制所述机器人将所述机器人吸盘旋转至所述目标条码角度;
[0030] 通过所述机器人系统控制所述机器人采用所述机器人吸盘吸附起在所述目标板件中心坐标的所述目标板件。
[0031] 为实现上述目的,本申请实施例的另一方面提出了一种基于机器人视觉的板件纠偏系统,所述系统包括:
[0032] 图片获取模,用于通过机器人系统控制机器人向视觉纠偏系统发送拍摄指令,以使所述视觉纠偏系统对目标板件的标签进行拍照,得到目标标签图片,并通过所述机器人系统将所述目标板件的板件理论信息发送给所述视觉纠偏系统;所述板件理论信息包含板件理论坐标和标签理论坐标;
[0033] 条码坐标信息获取模块,用于通过所述视觉纠偏系统根据所述目标标签图片上目标条码的目标特征信息,计算所述目标条码的目标条码坐标信息;
[0034] 标签坐标计算模块,用于通过所述视觉纠偏系统根据目标转换关系矩阵、目标标定图片在机器人坐标系下的基准点坐标以及所述目标条码坐标信息计算所述标签在所述机器人坐标系下的实际坐标;
[0035] 定位偏移量计算模块,用于通过所述视觉纠偏系统根据所述目标标定图片在所述机器人坐标系下的基准点坐标、所述标签在所述机器人坐标系下的实际坐标、所述板件理论坐标以及所述标签理论坐标计算所述机器人的定位偏移量;
[0036] 目标板件中心计算模块,用于通过所述视觉纠偏系统根据所述定位偏移量计算所述目标板件的目标板件中心坐标,并将所述目标板件中心坐标发送给所述机器人系统,以使所述机器人系统控制所述机器人吸附起在所述目标板件中心坐标的所述目标板件。
[0037] 为实现上述目的,本申请实施例的另一方面提出了一种电子设备,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现前面所述的方法。
[0038] 为实现上述目的,本申请实施例的另一方面提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现前面所述的方法。
[0039] 本申请实施例至少包括以下有益效果:本申请提供一种基于机器人视觉的板件纠偏方法和系统,该方案通过机器人系统控制机器人向视觉纠偏系统发送拍摄指令,以使视觉纠偏系统对目标板件的标签进行拍照,得到目标标签图片,并通过机器人系统将目标板件的板件理论信息发送给视觉纠偏系统;板件理论信息包含板件理论坐标和标签理论坐标;通过视觉纠偏系统根据目标标签图片上目标条码的目标特征信息,计算目标条码的目标条码坐标信息;通过视觉纠偏系统根据目标转换关系矩阵、目标标定图片在机器人坐标系下的基准点坐标以及目标条码坐标信息计算标签在机器人坐标系下的实际坐标;通过视觉纠偏系统根据目标标定图片在机器人坐标系下的基准点坐标、标签在机器人坐标系下的实际坐标、板件理论坐标以及标签理论坐标计算机器人的定位偏移量;通过视觉纠偏系统根据定位偏移量计算目标板件的目标板件中心坐标,并将目标板件中心坐标发送给机器人系统,以使机器人系统控制机器人吸附起在目标板件中心坐标的目标板件。本申请实施例基于视觉纠偏系统计算机器人的定位偏移量,为后续的纠偏提供数据支持;通过视觉纠偏系统根据定位偏移量计算目标板件的目标板件中心坐标,并将目标板件中心坐标发送给机器人系统,即可以通过纠偏后的坐标信息指导机器人执行动作,使得机器人能够准确找到并吸附目标板件的中心位置后进行下料操作,以提高自动化操作的精确度和生产效率,同时降低员工劳动强度。
附图说明
[0040] 图1是本申请实施例提供的一种基于机器人视觉的板件纠偏方法的步骤流程图
[0041] 图2是本申请实施例提供的一种条码示意图;
[0042] 图3是本申请实施例提供的一种视觉标定方法的流程示意图;
[0043] 图4是本申请实施例提供的一种视觉标定方法的步骤流程图;
[0044] 图5是本申请实施例提供的一种基于机器人视觉的板件纠偏方法的流程框图
[0045] 图6是本申请实施例提供的一种基于机器人视觉的板件纠偏方法流程示意图;
[0046] 图7是本申请实施例提供的一种基于机器人视觉的板件纠偏系统的结构示意图;
[0047] 图8是本申请实施例提供的电子设备的硬件结构示意图。

具体实施方式

[0048] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请实施例相一致的所有实施方式,它们仅是与如所附权利要求书中所详述的、本申请实施例的一些方面相一致的系统和方法的例子。
[0049] 可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种概念,但除非特别说明,这些概念不受这些术语限制。这些术语仅用于将一个概念与另一个概念区分。例如,在不脱离本申请实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“若”、“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
[0050] 本申请所使用的术语“至少一个”、“多个”、“每个”、“任一”等,至少一个包括一个、两个或两个以上,多个包括两个或两个以上,每个是指对应的多个中的每一个,任一是指多个中的任意一个。
[0051] 除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
[0052] 在对本申请实施例进行详细说明之前,首先对本申请实施例中涉及的部分名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
[0053] 目前,在智能家居的生产过程中,套铣加工中心因其板材优化利用率高,能同时实现开料和铣型,已成为近年来家居制造业深受欢迎的加工设备之一。但在板材加工完成后推料至下料区时,由于板件加工缝隙被挤压,部分板件受力不均可能导致出现旋转角度,以及下料位置出现不可预知的偏差的问题。
[0054] 有鉴于此,本申请实施例中提供一种基于机器人视觉的板件纠偏方法和系统,该方案通过机器人系统控制机器人向视觉纠偏系统发送拍摄指令,以使视觉纠偏系统对目标板件的标签进行拍照,得到目标标签图片,并通过机器人系统将目标板件的板件理论信息发送给视觉纠偏系统;板件理论信息包含板件理论坐标和标签理论坐标;通过视觉纠偏系统根据目标标签图片上目标条码的目标特征信息,计算目标条码的目标条码坐标信息;通过视觉纠偏系统根据目标转换关系矩阵、目标标定图片在机器人坐标系下的基准点坐标以及目标条码坐标信息计算标签在机器人坐标系下的实际坐标;通过视觉纠偏系统根据目标标定图片在机器人坐标系下的基准点坐标、标签在机器人坐标系下的实际坐标、板件理论坐标以及标签理论坐标计算机器人的定位偏移量;通过视觉纠偏系统根据定位偏移量计算目标板件的目标板件中心坐标,并将目标板件中心坐标发送给机器人系统,以使机器人系统控制机器人吸附起在目标板件中心坐标的目标板件。本申请实施例基于视觉纠偏系统计算机器人的定位偏移量,为后续的纠偏提供数据支持;通过视觉纠偏系统根据定位偏移量计算目标板件的目标板件中心坐标,并将目标板件中心坐标发送给机器人系统,即可以通过纠偏后的坐标信息指导机器人执行动作,使得机器人能够准确找到并吸附目标板件的中心位置后进行下料操作,以提高自动化操作的精确度和生产效率,同时降低员工劳动强度。
[0055] 本申请实施例提供的基于机器人视觉的板件纠偏方法,涉及自动化控制技术领域。本申请实施例提供的基于机器人视觉的板件纠偏方法可应用于终端中,也可应用于服务器中,还可以是运行于终端或服务器中的软件。在一些实施例中,终端可以是智能手机、平板电脑笔记本电脑、台式计算机、智能音箱、智能手表以及车载终端等,但并不局限于此;服务器端可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network内容分发网络)以及大数据人工智能平台等基础云计算服务的云服务器,服务器还可以是区块链网络中的一个节点服务器;软件可以是实现基于机器人视觉的板件纠偏方法的应用等,但并不局限于以上形式。
[0056] 本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC(personal computer个人计算机)、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0057] 请参阅图1,图1是本申请实施例提供的一种基于机器人视觉的板件纠偏方法的一个可选的步骤流程图,图1中的方法可以包括但不限于包括步骤S101至步骤S105。
[0058] 步骤S101,通过机器人系统控制机器人向视觉纠偏系统发送拍摄指令,以使所述视觉纠偏系统对目标板件的标签进行拍照,得到目标标签图片,并通过所述机器人系统将所述目标板件的板件理论信息发送给所述视觉纠偏系统;所述板件理论信息包含板件理论坐标和标签理论坐标;
[0059] 对于机器人系统,其为用于控制机器人进行相关性动作的系统,机器人系统主要由PLC(Programmable Logic Controller可编程逻辑控制器)构成,在机器人控制系统中,PLC通常用于处理来自传感器的数据,并根据这些数据控制机器人的运动和操作。例如,PLC可以接收来自位置传感器信号,然后根据这些信号控制机器人的电机,使机器人移动到指定的位置。
[0060] 对于目标板件,其为待进行下料码垛的板件。具体地,定制家居在自动化生产和码垛的过程中,上料指的是将原材料或半成品加载到生产线的起始位置,为加工做好准备;加工指的是对原材料或半成品进行所需的加工操作,如切割、打磨、成型等;推料指的是加工完成后,将成品或下一轮加工所需的原材料从加工区域推移到下一个处理步骤的位置;下料指的是将加工好的成品从生产设备上取下,并放置到指定的位置,如码垛区域,以便于存储或进一步的物流操作;码垛指的是将成品有序地堆叠或放置在指定的区域,通常是为了便于储存、运输或进一步的加工。需要说明的是,上述示例仅为定制家居在自动化生产和码垛的过程中的简单示例,在实际的应用中,可能存在更为复杂的处理流程,本申请实施例在此不作赘述。
[0061] 在一些实施例中,在步骤S101之前,还可以包括:通过软件控制系统获取目标板件的板件理论信息,并将板件理论信息发送给机器人系统。
[0062] 其中,软件控制系统又可以称为总控系统或上游控制系统,其主要用于为机器人系统提供数据源,后续用于视觉纠偏系统的纠偏计算,数据源主要为目标板件的数据理论值,即板件理论信息。
[0063] 其中,软件控制系统中的板件理论信息(PLC传入视觉纠偏系统的数据)可以包含但不限于以下示例:
[0064] Trigger:触发逻辑算法,以上升沿信号作为触发。视觉纠偏系统会一直读取PLC的信号值,当监控到PLC的Trigger值从0变化成1时(即上升沿信号。0表示机器人处于待机状态,1表示机器人已到达视觉拍照位置),则触发获取图片步骤。
[0065] Barcode:拍照条码,上游控制系统所提供的数据。在具体实现中,相机视野区域可能会捕捉到多个DataMatrix(二维条码)信息,通过PLC传入的拍照条码,在视野范围内找到与上游控制系统所提供的拍照条码一致的条码数据进行视觉纠偏计算,如果没有匹配的条码,则返回异常状态。
[0066] CaptureX:拍照时机器人的X坐标,即标签X坐标的理论值(标签理论坐标),上游控制系统所提供的数据。
[0067] CaptureY:拍照时机器人的Y坐标,即标签Y坐标的理论值(标签理论坐标),上游控制系统所提供的数据。
[0068] CaptureR:拍照时机器人的姿态R角度,在生产过程中,由于贴标机构的限制,标签只能平行于板件的长边(0°)或者短边(90°)进行粘贴。为了减少计算误差,标定时建立两个不同角度下的坐标,即机器人与视觉的标定关系,在实际生产过程中,上游控制系统提供贴标的角度以控制机器人的拍照姿态,并调取对应角度的标定结果。
[0069] PanelCenterX:板件中心X坐标的理论值(板件理论坐标),上游控制系统所提供的数据。
[0070] PanelCenterY:板件中心Y坐标的理论值(板件理论坐标),上游控制系统所提供的数据。
[0071] 在一些实施例中,步骤S101可以包括:通过机器人系统控制机器人移动至标签理论坐标,并控制机器人向视觉纠偏系统发出拍摄指令,以使视觉纠偏系统对在标签理论坐标上的目标板件的标签进行拍照,得到目标标签图片,并通过机器人系统将目标板件的板件理论信息发送给视觉纠偏系统。
[0072] 其中,板件上的标签贴于板件表面,可以使用设备自动贴标,上游系统(软件控制系统)一般会设定参数控制标签贴标位置,例如标签设置在板件的左上/右上/左下/右下角或居中(居中即与板件中心点重叠)。
[0073] 随着技术的不断发展和应用的推广,机器视觉为家居制造带来更多的智能化和自动化解决方案,从而提高生产效率、质量和客户满意度。近年来,采用视觉引导机器人是图像识别的一个热方向,也是传统生产车间作业进行智能化、自动化改造的一个有效实现方法。零部件的定位与对齐,则是板式家居制造业中应用视觉引导机器人的一个场景。但是,目前市面上存在不同应用场景的2D(Two Dimensions二维)或3D(Three Dimensions三维)视觉引导系统,相比3D视觉引导系统,2D视觉更为经济,并且处理速度更快。
[0074] 在本申请实施例中,采用2D面阵相机,标签尺寸设置为100*40mm,预留200mm的推料误差,相机视野范围仅需300*250mm。需要说明的是,在具体实现中,各尺寸范围或相机视野范围的设置可以根据实际情况进行调整,本申请实施例对此不作限制。
[0075] 在具体实现中,使用2D黑白面阵相机采集标签图像。在标定过程中保持标定板件位置不动,手动移动机器人,做12点平移旋转标定,并采集出对应的图像。在纠偏过程中,拍照位置由机器人接收上游控制系统经PLC传入的理论值x、y坐标(标签理论坐标)移动到对应位置进行图像采集。可以理解的是,在本申请实施例中,存在两次图片的采集,第一次采集图片是在设备投产前执行的,为了确定图像坐标与机器人坐标的关系,即为了确定机器人的坐标系与视觉系统图像坐标系之间的关系矩阵。第二次采集图片是实际生产过程中执行的,每块板件都需要执行,借助机器人的坐标和目标标签图片的坐标之间的关系矩阵和相关的参数经过运算进行位置纠偏。
[0076] 其中,目标标签图片仅为目标板件上的标签部分的图片,由于板件尺寸不固定,标签大小固定,而且相机的覆盖范围有限,因此在本申请实施例中主要为对于获取的标签图片进行后续的纠偏计算。
[0077] 其中,视觉纠偏系统可以用于将板件理论吸附点位置的理论值纠偏为真实值,机器人负责将板件从吸附点运输至码垛点。
[0078] 在本申请实施例中,通过机器人系统控制机器人移动至标签理论坐标,并控制机器人向视觉纠偏系统发出拍摄指令,以使视觉纠偏系统对在标签理论坐标上的目标板件的标签进行拍照,得到目标标签图片,并通过机器人系统将目标板件的板件理论信息发送给视觉纠偏系统。通过高清摄像头捕获目标标签的图像,可以提高后续处理的识别精度;获取实际图片信息和理论数据,为后续的视觉处理提供基础数据,可以帮助视觉纠偏系统校正实际操作中的误差。
[0079] 步骤S102,通过所述视觉纠偏系统根据所述目标标签图片上目标条码的目标特征信息,计算所述目标条码的目标条码坐标信息;
[0080] 在一些实施例中,步骤S102可以包括:通过视觉纠偏系统对目标标签图片上的目标条码进行识别,得到目标条码信息;通过视觉纠偏系统根据目标条码信息计算目标条码的目标条码中心点坐标;通过视觉纠偏系统将目标条码信息与原始条码信息进行匹配,得到目标匹配结果;通过视觉纠偏系统根据目标匹配结果获取目标条码的目标边缘信息;通过视觉纠偏系统根据目标边缘信息计算目标条码的目标条码角度。
[0081] 在本申请实施例中,目标条码采用的是DataMatrix条码。目标特征信息可以理解为板件标签上的DataMatrix条码特点,DataMatrix条码上外框存在L型实线框。请参阅图2,图2是本申请实施例提供的一种条码示意图。
[0082] 其中,板件理论信息还包含原始条码信息,即上述软件控制系统提供的拍照条码数据,用于与后续识别DataMatrix条码所得到的二维码字符串内容进行匹配处理。
[0083] 对于目标条码坐标信息,其包含目标条码中心点坐标和目标条码角度,目标条码中心点坐标为板件标签上的DataMatrix条码的中心位置,目标条码角度指的是DataMatrix条码图像中DataMatrix条码的倾斜角度,即DataMatrix条码在图像中的旋转角度,在DataMatrix条码中,其为L型特征角点的两条边缘直线的倾斜角度。
[0084] 其中,目标条码信息可以为DataMatrix条码的二维码字符串内容,可以包括DataMatrix条码的L型特征边缘的角点坐标,以及该角点与DataMatrix条码斜对角顶点所组成矩形的宽度和高度信息。
[0085] 示例性地,识别DataMatrix条码的过程为:借助libdmtx工具库,对DataMatrix条码进行识别并返回识别结果,识别结果即二维码字符串内容,如图2所示,识别结果可以包括如DataMatrix的L型特征边缘的角点坐标P1(xdm,ydm),以及该角点与DataMatrix条码斜对角顶点所组成矩形的宽度Wdm和高度ham信息,根据角点坐标P1(xdm,ydm)、角点与DataMatrix条码斜对角顶点所组成矩形的宽度Wdm和高度hdm信息,可以计算得到DataMatrix的斜对角顶点坐标为P3(xdm+Wdm,ydm+hdm),DataMatrix条码的中心点坐标为若有多个DataMatrix二维码,该工具库函数可以返回多个
条码对应的信息。
[0086] 其中,libdmtx是一个开源的库,用于解码DMTX(DataMatrix)码,一种用于数据存储的二维条码标准,对于libdmtx的定义和技术原理,可以参考相关技术内容,本申请实施例在此不做赘述。
[0087] 对于目标匹配结果,此处的定义为匹配成功的结果,即借助libdmtx工具库对DataMatrix条码进行识别,可以返回二维码字符串内容的识别结果,根据PLc(机器人系统)传入视觉纠偏系统的Barcode(拍照条码)数据,若匹配出二维码字符串内容一致的
DataMatrix条码,则标记为目标匹配结果。
[0088] 在一些实施例中,步骤S102还可以包括:通过视觉纠偏系统将目标条码信息与原始条码信息进行匹配,得到异常匹配结果;通过视觉纠偏系统将异常匹配结果发送给机器人系统。
[0089] 其中,异常匹配结果为匹配失败的结果,即借助l.bdmtx工具库对DataMatrix条码进行识别,可以返回二维码字符串内容的识别结果,根据PLc(机器人系统)传入视觉纠偏系统的Barcode(拍照条码)数据,若无法匹配出与二维码字符串内容一致的DataMatrix条码,则标记为异常匹配结果。最后通过视觉纠偏系统将异常匹配结果发送给机器人系统。
[0090] 其中,目标边缘信息可以为DataMatrix条码的L型边缘直线的两个端点x、y坐标值。
[0091] 在具体实现中,通过视觉纠偏系统根据目标标签图片上目标条码的目标特征信息,计算目标条码的目标条码坐标信息的过程可以为:
[0092] 首先,借助libdmtx工具库,对DataMatrix条码进行识别,并返回二维码字符串内容的识别结果,二维码字符串内容可以包含DataMatrix条码的L型特征边缘的角点坐标P1(xdm,yam),以及该角点与DataMatrix条码斜对角顶点所组成矩形的宽度Wdm和高度hdm信息,基于获取的角点坐标与矩形的宽度和高度信息,可以计算得到DataMatrix条码的斜对角顶点坐标为P3(xdm+Wdm,ydm+hdm),DataMatrix条码的中心点坐标为如果有多个DataMatrix条码,该工具库函数可返回多个条
码对应的信息。
[0093] 其次,在二维码识别的步骤中目标标签图片内可能会识别多个DataMatrix条码信息,根据机器人系统(PLC)传入视觉纠偏系统的原始拍照条码数据,匹配出与二维码字符串内容一致的DataMatrix条码,如果无法匹配出一致的结果,即反馈为异常状态(State输出参数)至机器人系统(PLC);如果存在匹配一致的结果,根据上述得到的DataMatrix条码特征边缘的角点坐标P1、矩形宽度Wdm和高度hdm,在目标标签图像上使用矩形框标记出匹配的DataMatrix条码。
[0094] 最后,借助Hough直线检测算子,以DataMatrix条码的中心点向四周发散,找出经过DataMatrix条码的L型特征角点P1的两条直线,即DataMatrix条码的L型边缘直线,Hough算子返回每条直线两个端点的x、y坐标值。示例性地,假设直线1返回两个端点坐标为P11(x11,y11),P12(x12,y12),直线2返回两个端点坐标为P21(x21,y21),P22(x22,y22),则两条直线的倾斜角分别由以下公式计算得出:
[0095]
[0096]
[0097] 其中,θ1为直线1的倾斜角,θ2为直线2的倾斜角。
[0098] 两条直线(直线1和直线2)在DataMatrix条码的L型的位置关系可以根据向量叉乘右手定则进行求解,经过L型特征角点P1的两条直线向量分别为:
[0099]
[0100]
[0101] 其中,两条直线(直线1和直线2)在DataMatrix条码的L型的位置关系根据向量叉乘右手定则进行求解的计算公式如下:
[0102]
[0103] 当 时,直线P21P22(直线2)在直线P11P12(直线1)右侧,则P21P22为DataMatrix条码的L型下端直线,取θ2作为DataMatrix条码角度;当
时,直线P21P22在直线P11P12左侧,则P21P22为DataMatrix条码的L型左端直线,取θ1作为DataMatrix条码角度;当 时,两直线平行,不存在此情况。
[0104] 其中,Hough直线检测算子是一种在图像处理中用于检测图像中直线结构的算法,其基本思想是将图像中的每条直线转换为参数空间中的一个点。向量叉乘(也称为向量积、外积或叉积)右手定则是用于确定两个三维向量叉乘结果向量的一种规则,其描述了如何通过两个向量的右手规则来判断生成的结果向量的方向。对于Hough直线检测算子和向量叉乘右手定则的具体实现原理,可以参照相关技术方案的内容,本申请实施例在此不作赘述。
[0105] 在本申请实施例中,通过视觉纠偏系统根据目标标签图片上目标条码的目标特征信息,计算目标条码的目标条码坐标信息;通过特征识别准确获取目标条码坐标信息,为后续的坐标转换和定位提供重要依据。
[0106] 步骤S103,通过所述视觉纠偏系统根据目标转换关系矩阵、目标标定图片在机器人坐标系下的基准点坐标以及所述目标条码坐标信息计算所述标签在所述机器人坐标系下的实际坐标;
[0107] 其中,目标转换关系矩阵和目标标定图片在机器人坐标系下的基准点坐标均为设备投产前基于目标标定方法获取的,目标标定方法(即视觉标定方法)为采用了平面12点平移旋转(9点平移+3点旋转)进行机器人手眼标定的方法。
[0108] 其中,由步骤S101中的内容可知,存在两次图片的采集,第一次采集图片是在设备投产前执行的,为了确定图像坐标与机器人坐标的关系,即为了确定机器人的坐标系与视觉系统图像坐标系之间的关系矩阵。第二次采集图片是实际生产过程中执行的,每块板件都需要执行,借助机器人的坐标和目标标签图片的坐标之间的关系矩阵和相关的参数经过运算进行位置纠偏。
[0109] 其中,目标转换关系矩阵反映了机器人坐标系与视觉系统图像坐标系之间的转换关系。目标标定图片为在进行视觉标定时所获取的图片,具体地,基于视觉标定方法获取目标标定图片的过程为使用固定的一个标签(并非实际生产时产生的标签)采用多点进行手眼标定,进而形成多个图像,形成的多个图像即目标标定图片。
[0110] 具体地,转换关系矩阵用于表示图像坐标系与机器人坐标系之间的转换关系,而目标标定图片在机器人坐标系下的基准点坐标则是取图像上的一个特定点匹配机器人坐标作为基准。示例性地,假设机器人坐标沿着X/Y方向移动了n毫米,对于同一个物体点则在图像上沿着X/Y轴移动了n像素,转换关系矩阵则记录了该图像坐标系与机器人坐标系之间转换关系。根据图像和机器人的基准点关系以及转换关系矩阵,则可以根据图像像素点换算到机器人坐标点。
[0111] 可以理解的是,在进行设备投产前,采用视觉标定的方法可以分别获取到转换关系矩阵和图像在机器人坐标系下的基准点坐标,转换关系矩阵记录的是图像在X轴或者Y轴方向平移的n个像素对应机器人在X轴或者Y轴方向平移了n毫米,而基准点则是记录图像上的某个坐标点(xi,yi)对应在机器人世界坐标系上的坐标点(xr,yr)。在进行设备投产时,假设得到的标签图像的像素点是(x1,y1),则可以得出该像素点相对于图像基准点在X轴和Y轴方向的移动量,进而可以根据转换关系矩阵得出机器人世界坐标系上在X轴和Y轴方向的移动量,最后将转换关系矩阵得出的机器人世界坐标系上在X轴和Y轴方向的移动量叠加到机器人基准点坐标(xr,yr),则可以得出该标签图像点对应的机器人实际坐标点(xr1,yr1)。
[0112] 在具体实现中,目标转换关系矩阵的获取过程具体为:视觉标定采用了平面12点平移旋转(9点平移+3点旋转)进行机器人手眼标定,相机固定在机器人手臂,随着机械手臂移动而移动。请参阅图3,图3是本申请实施例提供的一种视觉标定方法的流程示意图。视觉与机器人标定的过程可以为:首先,旋转角R保持不变,机器人沿着X轴或Y轴方向平移9次,并以第5点作为基准,保持机械手臂的X坐标值和Y坐标值不变,旋转角R加减一定角度获取旋转后的第10/12点,分别记录12个点下机器人的X坐标信息xrl,xr2,...,xr12,Y坐标信息yr1,yr2,...,yr12和旋转角rr1,rr2,...,rr12,以及上述DataMatrix条码在图像上的中心点X坐标xc1,xc2,...,xc12,Y坐标yc1,yc2,...,yc12和旋转角rcl,rc2,...,rc12,其中1~9是平移坐标点信息,10~12是旋转坐标点信息。然后借助OpenCV的calibrateHandEye()函数,以及视觉标定获取的机器人坐标点信息和图像坐标点信息,由函数求解出机器人坐标和图像坐标的转换关系矩阵,即标定方案数据矩阵。示例性地,假设机器人坐标矩阵为A,图像坐标矩阵为B,则可以求解出AX=XB间的关系矩阵X。
[0113] 在本申请实施例中,首先绑定机器人和图像的基准点,手动调整机器人的X坐标、Y坐标和旋转角R,使得DataMatrix条码中心点与图像中心点重叠,角度接近与图像底部平行或垂直,那么图像的基准点近似于 其中w表示图像宽,h表示图像高,并记录此时的机器人坐标Pref(xrr,yrr)作为目标标定图片在机器人坐标系下的基准点坐标。
[0114] 需要说明的是,视觉标定是为了确定图像坐标与机器人坐标的关系,即为了确定机器人的坐标系与视觉系统图像坐标系之间的关系矩阵,标定过程是人工移动机器人得出12点坐标的,并且得出AX=XB的关系矩阵X。在纠偏过程时,即实际生产操作时,是全自动操作,无需人工干预,视觉纠偏系统可以依据X关系矩阵换算机器人真实坐标,无需重复做标定动作。并且,基于视觉标定还可以得到图像在机器人坐标系下的基准点坐标。
[0115] 其中,OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习软件库,提供了一系列用于图像处理、计算机视觉和机器学习的函数和工具。
calibrateHandEye()是OpenCV(开源计算机视觉库)中的一个函数,用于机器人与相机间
的手眼标定,允许估算机器人和相机间的相对变换。对于OpenCV及其函数的实现原理,可以参考相关技术方案的内容,本申请实施例在此不作赘述。
[0116] 请参阅图4,图4是本申请实施例提供的一种视觉标定方法的步骤流程图,如图4所示,视觉标定可以用于确定图像坐标系与机器人世界坐标系的转换关系,具体地:首先获取目标板件上标签对应的目标标签图片,采用借助libdmtx工具库对目标标签图片上的DataMatrix条码进行识别,并返回二维码字符串内容的识别结果,然后根据识别结果与原始条码信息进行匹配,基于匹配成功的结果和识别结果捕获DataMatrix条码的边缘信息,并基于DataMatrix条码的边缘信息确定DataMatrix条码的条码角度,最后基于上述获取的二维码字符串内容的识别结果、DataMatrix条码的边缘信息和DataMatrix条码的条码角度进行视觉与机器人标定,即基于目标转换关系矩阵和目标标定图片在机器人坐标系下的基准点坐标可以换算得到标签在机器人坐标系下的实际坐标。
[0117] 具体地,在设备投产时,假设获取到了目标标签图片上目标条码的目标条码坐标信息,则可以将目标条码坐标信息输入至目标转换关系矩阵,由目标转换关系矩阵输出该目标标签图片在机器人坐标系X轴或Y轴方向的移动量,最后将目标转换关系矩阵转换出的目标标签图片在机器人坐标系X轴或Y轴方向的移动量和设备投产前获取到的目标标定图片在机器人坐标系下的基准点坐标进行叠加,则可以得到标签在机器人坐标系下的实际坐标。
[0118] 在具体实现中,通过视觉纠偏系统基于目标标定方法获取目标标定图片在机器人坐标系下的基准点坐标,能够在得到图像坐标系与机器人世界坐标系两者关系后,在实际生产过程中调用此关系进行运算以实现位置纠正,同时,获取目标标定图片在机器人坐标系下的基准点坐标有利于校正由于机器人或其他因素引起的系统偏差,为后续的实际坐标计算和偏移量计算提供数据基础。
[0119] 在具体实现中,基于机器人视觉采集真实图像后,假设匹配DataMatrix条码的中心点坐标为Pc(xc,yc),角度rc,经过AX=XB可以求解出标签在机器人坐标系下的实际坐标Pr(xr,yr)。由于板件标签的长边与板件的长边平行,则DataMatrix条码的角度rc为机器人吸板点的角度,即机器人最终吸附板件时吸盘的旋转角度。
[0120] 在本申请实施例中,通过视觉纠偏系统根据目标转换关系矩阵、目标标定图片在机器人坐标系下的基准点坐标以及目标条码坐标信息计算标签在机器人坐标系下的实际坐标,实现图像空间到机器人空间的映射,准确的标签在机器人坐标系下的实际坐标有利于优化机器人的运动路径,提高自动化操作效率。
[0121] 步骤S104,通过所述视觉纠偏系统根据所述目标标定图片在所述机器人坐标系下的基准点坐标、所述标签在所述机器人坐标系下的实际坐标、所述板件理论坐标以及所述标签理论坐标计算所述机器人的定位偏移量;
[0122] 由于机器人吸盘的旋转中心与相机中心不共轴,当板件角度出现变化时,若机器人旋转一定角度后,相机中心或者吸盘中心则无法对准板件中心,导致定位失败,因此在本申请实施例中将机器人定位偏移量拆分成平移偏移量和旋转偏移量两种,便于计算和分析。
[0123] 在一些实施例中,步骤S104可以包括:通过视觉纠偏系统根据目标标定图片在机器人坐标系下的基准点坐标和标签在机器人坐标系下的实际坐标计算机器人的平移偏移量;通过视觉纠偏系统根据板件理论坐标和标签理论坐标计算机器人的旋转偏移量。
[0124] 在具体实现中,平移偏移量(xoffset,yoffset)由标签在机器人坐标系下的实际坐标Pr(xr,yr)和目标标定图片在机器人坐标系下的基准点坐标Pref(xrr,yrr)计算得出,计算公式如下:
[0125] xoffset=xr‑xrr
[0126] yoffset=yr‑yrr
[0127] 其中,在计算旋转偏移量时,还需要加入旋转角偏移量进行计算,旋转角偏移量的计算公式为roffset=rc‑rcapture,其中,rcapture为上游控制系统提供的贴标角度理论值,即拍照时机器人的姿态R角度。
[0128] 旋转偏移量(xrotate,yrotate)由拍照机器人坐标(标签理论坐标)Pcapture(xcapture,ycapture)和板件中心点坐标(板件理论坐标)Ppanel(xpanel,ypanel)以及旋转角偏移量roffset计算得出,计算公式如下:
[0129] xrotate=(xpanel‑xcapture)*COs roffset+(ypanel‑ycaptute)*sinroffset
[0130] yrotate=(xpanel‑xcapture)*Sin roffset+(ypanel‑ycapture)*cos roffset[0131] 在本申请实施例中,通过视觉纠偏系统根据目标标定图片在机器人坐标系下的基准点坐标、标签在机器人坐标系下的实际坐标、板件理论坐标以及标签理论坐标计算机器人的定位偏移量,根据实际坐标与理论坐标之间的偏差,为后续的纠偏提供数据支持。
[0132] 步骤S105,通过所述视觉纠偏系统根据所述定位偏移量计算所述目标板件的目标板件中心坐标,并将所述目标板件中心坐标发送给所述机器人系统,以使所述机器人系统控制所述机器人吸附起在所述目标板件中心坐标的所述目标板件。
[0133] 其中,目标板件中心坐标为机器人最终吸附板件的中心位置。目标条码坐标信息中的目标条码角度为机器人吸附目标板件时的旋转角度。
[0134] 在一些实施例中,步骤S105可以包括:通过视觉纠偏系统根据定位偏移量计算目标板件的目标板件中心坐标,并将目标板件中心坐标发送给机器人系统;通过机器人系统控制机器人将机器人吸盘移动至目标板件中心坐标,并通过机器人系统控制机器人将机器人吸盘旋转至目标条码角度;通过机器人系统控制机器人采用机器人吸盘吸附起在目标板件中心坐标的目标板件。
[0135] 其中,机器人吸盘为机器人用于吸附板件的部件。
[0136] 在具体实现中,视觉纠偏系统需要向机器人系统(PLC)写入数据,视觉纠偏系统向机器人系统(PLC)写入的数据可以包括但不限于:
[0137] ActualX:视觉纠偏后的数据,即板件X坐标的实际值。
[0138] ActualY:视觉纠偏后的数据,即板件Y坐标的实际值。
[0139] ActualR:视觉纠偏后的数据,即板件旋转角的实际值。
[0140] State:视觉纠偏计算状态,能匹配出条码数据并计算出结果的反馈为正常状态,反之反馈为异常状态。
[0141] 在视觉纠偏返回结果给机器人系统后,机器人接收到对应的数据,并移动吸盘机构,将吸盘机构中心点移动到坐标ActualX和ActualY,并旋转至角度ActualR,以实施吸附板件的动作。
[0142] 具体地,机器人最终的吸板点坐标(x,y)计算公式如下:
[0143] x=xcapture+xoffset+xrotate
[0144] y=ycapture+yoffset+yrotate
[0145] 在计算出机器人最终的吸板点坐标后,视觉纠偏系统将计算出的x作为PLC输入参数ActualX,y作为ActualY,rc作为ActualR写入数据至机器人系统中,机器人经过机器人系统接收到数据后,控制机器人吸盘移动对应的坐标(x,y),并旋转吸盘至对应角度rc,最后执行吸板动作即完成整体流程。
[0146] 在本申请实施例中,通过视觉纠偏系统根据定位偏移量计算目标板件的目标板件中心坐标,并将目标板件中心坐标发送给机器人系统,以使机器人系统控制机器人吸附起在目标板件中心坐标的目标板件。通过纠偏后的坐标信息指导机器人动作,使得机器人能够准确找到并吸附目标板件的中心位置,从而快速准确地吸附板件,提高自动化操作的精确度和效率。
[0147] 为详细解释本发明技术方案的原理,下面结合一些具体实施例对本发明的整体流程进行说明,容易理解的是,下述为对本发明技术原理的解释,不能看作对本发明的限制。
[0148] 请参阅图5,图5是本申请实施例提供的一种基于机器人视觉的板件纠偏方法的流程框图;如图5所示,套铣加工中心视觉引导下料系统工作流程主要可以分为套铣加工中心开料,相机采集图像,视觉纠偏和机器人下料码垛这四个模块,具体地,首先将板件放置在套铣加工中心开料,在套铣加工中心加工板件后,进行设备推料和下料,在设备推料和下料过程中,板件位置可能会出现位移,接着利用2D面阵相机采集板件图像数据,通过图像识别技术,计算板件实际位移大小和旋转角度,实现视觉位置纠偏,最后根据纠偏后的数据引导机器人移动吸盘至板件中心点进行吸附下料,提高了下料的稳定性和板件堆垛位置的准确性。
[0149] 具体地,请参阅图6,图6是本申请实施例提供的一种基于机器人视觉的板件纠偏方法流程示意图;如图6所示,基于机器人视觉的板件纠偏的方法流程可以为:首先,视觉纠偏系统会一直读取PLC的触发拍照信号值,当视觉纠偏系统监控到PLC的Trigger值从0变化成1时(即上升沿信号,0表示机器人处于待机状态,1表示机器人已到达视觉拍照位置),则触发获取图片步骤;反之则继续读取PLC的触发拍照信号值直至PLC的Trigger值从0变化成1。然后,利用2D面阵相机采集板件图像数据,借助libdmtx工具库,对板件图像数据中的DataMatrix条码进行识别,并返回二维码字符串内容的识别结果。接着,在二维码识别的步骤中目标标签图片内可能会识别多个DataMatrix条码信息,根据机器人系统传入视觉纠偏系统的原始拍照条码数据,匹配出与二维码字符串内容一致的DataMatrix条码,如果无法匹配出一致的结果,即反馈为异常状态(State输出参数)至机器人系统,如果存在匹配一致的结果,根据上述得到的二维码字符串内容,在目标标签图像上使用矩形框标记出匹配的DataMatrix二维码。再者,借助Hough直线检测算子,以DataMatrix条码的中心点向四周发散,找出经过DataMatrix条码的L型特征角点的两条直线,即DataMatrix条码的L型边缘直线,Hough算子返回每条直线两个端点的坐标值,根据两条直线两个端点的坐标值和二维码字符串内容计算DataMatrix条码角度。然后基于上述获取的二维码字符串内容的识别结
果、DataMatrix条码的边缘信息和DataMatrix条码的条码角度进行视觉与机器人标定,即可以基于标定方案预先获取的目标标定图片在机器人坐标系下的基准点坐标、预先获取的转换关系矩阵以及上述获取的条码坐标信息计算标签在机器人坐标系下的实际坐标。再通过视觉纠偏系统根据目标标定图片在机器人坐标系下的基准点坐标、标签在机器人坐标系下的实际坐标、板件理论坐标以及标签理论坐标计算机器人的定位偏移量。最后通过视觉纠偏系统根据定位偏移量计算板件的板件中心坐标,并将板件中心坐标发送给机器人系
统,以使机器人系统控制机器人吸附起在板件中心坐标的板件,并将上述计算得到的
DataMatr ix条码角度作为机器人吸附板件时的旋转角度。在计算出机器人最终的吸板点坐标和旋转角度后,视觉纠偏系统将计算出的板件中心坐标和旋转角度作为输入数据写入至机器人系统(PLC)中,机器人经过机器人系统接收到数据后,控制机器人吸盘移动对应的板件中心坐标,并旋转吸盘至对应的旋转角度,最后执行吸板动作进行下料即完成整体流程。在执行完整体流程后,需要统计整体流程的执行耗时,并存储日志。
[0150] 在具体实现中,首先将板件放置在套铣加工中心开料,在套铣加工中心加工板件后,进行设备推料和下料,在设备推料和下料过程中,板件位置可能会出现位移,接着利用2D面阵相机采集板件图像数据,通过图像识别技术,计算板件实际位移大小和旋转角度,实现视觉位置纠偏,最后根据纠偏后的数据引导机器人移动吸盘至板件中心点进行吸附下
料,以实现套铣加工中心的自动化、智能化板材下料,同时减少员工劳动强度;提高了下料的稳定性和板件堆垛位置的准确性。
[0151] 具体地,上游控制系统提供板件标签的理论值坐标给PLC,机器人经PLC接收板件标签的理论值后,移动视觉相机到达板件标签的理论值坐标位置,并触发视觉拍照;通过视觉纠偏系统板件标签上的DataMatr ix条码特点,结合上游控制系统提供的板件坐标理论值和标签坐标理论值,求解出标签偏移位置和纠偏后的板件吸板坐标,以及板件旋转角,并将这些数据传入PLC,PLC接收结果后,调整机器人吸盘姿态,将吸盘中心点对准板件中心点,吸盘的长边与板件长边平行,指导机器人移动到真实位置进行下料。以实现对板件的准确吸附,并使得下料码垛时垛型保持稳定。
[0152] 需要指出的是,本实施例仅以基于机器人视觉的板件纠偏方法的大体流程进行简要的示意性说明,各步骤的详细描述可参照前述实施例中相关内容,此处不作赘述,可以理解的是,本发明对此不作限制。
[0153] 本申请实施例通过机器人系统控制机器人向视觉纠偏系统发送拍摄指令,以使视觉纠偏系统对目标板件的标签进行拍照,得到目标标签图片,并通过机器人系统将目标板件的板件理论信息发送给视觉纠偏系统;板件理论信息包含板件理论坐标和标签理论坐标;通过视觉纠偏系统根据目标标签图片上目标条码的目标特征信息,计算目标条码的目标条码坐标信息;通过视觉纠偏系统根据目标转换关系矩阵、目标标定图片在机器人坐标系下的基准点坐标以及目标条码坐标信息计算标签在机器人坐标系下的实际坐标;通过视觉纠偏系统根据目标标定图片在机器人坐标系下的基准点坐标、标签在机器人坐标系下的实际坐标、板件理论坐标以及标签理论坐标计算机器人的定位偏移量;通过视觉纠偏系统根据定位偏移量计算目标板件的目标板件中心坐标,并将目标板件中心坐标发送给机器人系统,以使机器人系统控制机器人吸附起在目标板件中心坐标的目标板件。本申请实施例基于视觉纠偏系统计算机器人的定位偏移量,为后续的纠偏提供数据支持;通过视觉纠偏系统根据定位偏移量计算目标板件的目标板件中心坐标,并将目标板件中心坐标发送给机器人系统,即可以通过纠偏后的坐标信息指导机器人执行动作,使得机器人能够准确找到并吸附目标板件的中心位置后进行下料操作,以提高自动化操作的精确度和生产效率,同时降低员工劳动强度。
[0154] 请参阅图7,本申请实施例还提供一种基于机器人视觉的板件纠偏系统700,可以实现上述基于机器人视觉的板件纠偏方法,该系统700包括:
[0155] 图片获取模块701,用于通过机器人系统控制机器人向视觉纠偏系统发送拍摄指令,以使所述视觉纠偏系统对目标板件的标签进行拍照,得到目标标签图片,并通过所述机器人系统将所述目标板件的板件理论信息发送给所述视觉纠偏系统;所述板件理论信息包含板件理论坐标和标签理论坐标;
[0156] 条码坐标信息获取模块702,用于通过所述视觉纠偏系统根据所述目标标签图片上目标条码的目标特征信息,计算所述目标条码的目标条码坐标信息;
[0157] 标签坐标计算模块703,用于通过所述视觉纠偏系统根据目标转换关系矩阵、目标标定图片在机器人坐标系下的基准点坐标以及所述目标条码坐标信息计算所述标签在所述机器人坐标系下的实际坐标;
[0158] 定位偏移量计算模块704,用于通过所述视觉纠偏系统根据所述目标标定图片在所述机器人坐标系下的基准点坐标、所述标签在所述机器人坐标系下的实际坐标、所述板件理论坐标以及所述标签理论坐标计算所述机器人的定位偏移量;
[0159] 目标板件中心计算模块705,用于通过所述视觉纠偏系统根据所述定位偏移量计算所述目标板件的目标板件中心坐标,并将所述目标板件中心坐标发送给所述机器人系
统,以使所述机器人系统控制所述机器人吸附起在所述目标板件中心坐标的所述目标板
件。
[0160] 可以理解的是,上述方法实施例中的内容均适用于本系统实施例中,本系统实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
[0161] 本申请实施例还提供了一种电子设备,电子设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述基于机器人视觉的板件纠偏方法。该电子设备可以为包括平板电脑、车载电脑等任意智能终端。
[0162] 可以理解的是,上述方法实施例中的内容均适用于本设备实施例中,本设备实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
[0163] 请参阅图8,图8示意了另一实施例的电子设备的硬件结构,电子设备包括:
[0164] 处理器801,可以采用通用的CPU(CentralProcessingUnit,中央处理器)、微处理器、应用专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请实施例所提供的技术方案;
[0165] 存储器802,可以采用只读存储器(ReadOnlyMemory,ROM)、静态存储设备、动态存储设备或者随机存取存储器(RandomAccessMemory,RAM)等形式实现。存储器802可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器802中,并由处理器801来调用执行本申请实施例的基于机器人视觉的板件纠偏方法;
[0166] 输入/输出接口803,用于实现信息输入及输出;
[0167] 通信接口804,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;
[0168] 总线805,在设备的各个组件(例如处理器801、存储器802、输入/输出接口803和通信接口804)之间传输信息;
[0169] 其中处理器801、存储器802、输入/输出接口803和通信接口804通过总线805实现彼此之间在设备内部的通信连接。
[0170] 本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述基于机器人视觉的板件纠偏方法。
[0171] 可以理解的是,上述方法实施例中的内容均适用于本存储介质实施例中,本存储介质实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
[0172] 存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0173] 本申请实施例提供的基于机器人视觉的板件纠偏方法、基于机器人视觉的板件纠偏系统、电子设备及存储介质,其通过机器人系统控制机器人向视觉纠偏系统发送拍摄指令,以使视觉纠偏系统对目标板件的标签进行拍照,得到目标标签图片,并通过机器人系统将目标板件的板件理论信息发送给视觉纠偏系统;板件理论信息包含板件理论坐标和标签理论坐标;通过视觉纠偏系统根据目标标签图片上目标条码的目标特征信息,计算目标条码的目标条码坐标信息;通过视觉纠偏系统根据目标转换关系矩阵、目标标定图片在机器人坐标系下的基准点坐标以及目标条码坐标信息计算标签在机器人坐标系下的实际坐标;通过视觉纠偏系统根据目标标定图片在机器人坐标系下的基准点坐标、标签在机器人坐标系下的实际坐标、板件理论坐标以及标签理论坐标计算机器人的定位偏移量;通过视觉纠偏系统根据定位偏移量计算目标板件的目标板件中心坐标,并将目标板件中心坐标发送给机器人系统,以使机器人系统控制机器人吸附起在目标板件中心坐标的目标板件。本申请实施例基于视觉纠偏系统计算机器人的定位偏移量,为后续的纠偏提供数据支持;通过视觉纠偏系统根据定位偏移量计算目标板件的目标板件中心坐标,并将目标板件中心坐标发送给机器人系统,即可以通过纠偏后的坐标信息指导机器人执行动作,使得机器人能够准确找到并吸附目标板件的中心位置后进行下料操作,以提高自动化操作的精确度和生产效率,同时降低员工劳动强度。
[0174] 本申请实施例描述的实施例是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
[0175] 本领域技术人员可以理解的是,图中示出的技术方案并不构成对本申请实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
[0176] 以上所描述的系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0177] 本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
[0178] 本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0179] 应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
[0180] 在本申请所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0181] 上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0182] 另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0183] 集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例的方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read‑On ly Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序的介质。
[0184] 以上参照附图说明了本申请实施例的优选实施例,并非因此局限本申请实施例的权利范围。本领域技术人员不脱离本申请实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本申请实施例的权利范围之内。
QQ群二维码
意见反馈