移动机器人在自动化生产线上下料中的定位方法
2023-11-13余杰先张中华陈凌玲李久林温舒然
余杰先,张中华,陈凌玲,李久林,温舒然
(珠海格力智能装备有限公司,广东珠海 519000)
0 引言
随着工业自动化技术的不断发展,产业也不断升级换代,传统生产线上的人工上下料作业方式已经逐渐被机器人自动上下料的方式所取代[1-3]。伴随着人们的物质需求多样化,产品的样式和生产方式也变得多样化,这样就对自动化生产线的柔性提出了更高的要求[4-8]。柔性自动化生产线是一个复杂的多组成大系统,由多个工序环节,多种设备组成。
自动化生产线中的上下料工序,是一道非常重要的工序,实现生产线和外界的交互,同时也起到衔接各个工序之间产品移动的作用[9-13]。在自动化生产线的工序之间以及多条生产线之间的高效并协作的自动上下料技术,已然成为自动化生产线中的关键技术之一[14-17]。所以,研究生产线自动上下料技术,升级换代传统人工上下料工序,对改善劳动环境、提高生产效率、解决企业生产过程中的不足具有极大的现实价值。然而,在自动化生产线实际应用中,对产品以及夹具的定位成为提高上下料工序效率、准确度、稳定性的瓶颈。特别是采用视觉定位的方法,上述问题尤为提出,因此亟须解决自动上下料工序中计算机视觉定位的问题[18-21]。
针对上述情况,本文提出一种采用移动机器人(AGV+协作机器人)配合视觉识别和深度学习等策略的方法,该方法应用在自动化生产线上下料工序中可以有效改善上述问题。经实践证明,该方法可以显著提升产品质量稳定性以及生产效率。
1 生产线的组成和工作流程
生产线系统的整体组成包括以下5 个部分:(1) 多条自动化生产线是主要的生产设备,负责进行产品加工操作;(2)AGV(自动导引小车)在产品线的不同上下料工位之间以及不同生产线运输零件,协助生产流程的进行;(3)协作机器人可以单独或与工作人员一起工作,执行一些特定的任务,提高生产效率;(4)产品检测台负责产品的质量检查,确保产品质量符合要求;(5)自动化仓库负责存储原材料、半成品和成品,提高存储和检索的效率和精度。此系统通过自动化和智能化技术提高了生产效率和质量,降低了人工成本,是现代制造业自动化的重要组成部分。
1.1 核心设备
核心设备由3 部分组成,如图1 所示,分别为:(1)生产线,这是系统的核心部分,负责进行主要的生产工作,这些生产线可以独立运行,也可以多条生产线进行协同运行;(2)AGV(自动导引小车),AGV 用于在同一产线不同工位之间或不同产线之间进行运输工件,以及从仓库中提取和送回原材料和工具(图2),能够自主导航,减少人为干预,提高生产效率;(3)协作机器人,安装在AGV 上面,可以与工作人员一起在生产环境中工作,可以执行一些重复、危险或繁琐的任务,例如装载和卸载物件、进行质量检测等。
图1 协作机器人及AGV
图2 夹具在生产线作业位置
1.2 辅助设备
辅助设备由两部分组成,分别是:(1)产品检测台,用于对生产出的产品进行质量检查,可能包括一系列传感器和测试设备,用于检查产品的尺寸、形状、材料等特性;(2)自动化仓库,用于存储原材料、半成品和成品,如图3 所示。自动化仓库使得物品的存取更加高效和精确,其通过自动化的机械系统和计算机管理系统,可以快速地存储和检索物品。
图3 夹具在自动化仓库出入口工位
1.3 工作流程
下面主要介绍生产线上下料工位的取放流程和整体的工作流程,本文的重点在于生产线上下料工序流程的坐标变换方法,上下料工位的取放流程和整体的工作流程是生产线操作中的重要环节,了解这些流程可以帮助更好地掌握上下料操作技巧和操作流程,提高上下料操作效率和质量。
上下料工位的取放流程如下:(1)根据工件的尺寸和位置,确定工件在机床坐标系中的位置(图2);(2)根据工件的形状和尺寸,选择适当的夹具和工具进行工件的装夹和取放;(3)根据生产线的型号和规格,确定生产线的坐标系,并将工件坐标系与生产线坐标系进行转换;(4)根据工件的加工要求和生产线的操作规程,编写加工程序,并将程序输入到数控系统中;(5)根据程序的要求,对生产线进行调试,确保程序的正确性和可靠性;(6)根据程序的要求,运行程序,控制生产线的运行,完成产品的加工;(7)对加工完成的工件进行检验,确保工件的精度和质量符合要求(图3)。
生产线上下料整体的工作流程如下:(1)打开数控系统,启动程序,控制生产线的运行;(2)将工件放置在夹具上,调整夹具的位置和姿态,确保工件的位置和姿态正确;(3)根据程序的要求,控制生产线的运行,完成工件的加工;(4)对加工完成的工件进行检验,确保工件的精度和质量符合要求;(5)清理工位和工作场所的杂物,确保生产线和工作环境的安全和卫生;(6)对生产线各组成设备进行维护保养,确保生产线的性能和可靠性。
在自动上下料操作中,坐标变换方法是非常重要的。坐标变换方法包括平移变换和旋转变换两种方法。平移变换是将坐标原点从一个位置移动到另一个位置,而旋转变换则是将坐标轴绕原点旋转一定的角度。在自动上下料操作中,通常使用的是平移变换方法。
1.3.1 总体工作流程
总体工作流程涉及到自动化控制系统和机器人。如图4 所示。总控系统是整个流程的核心,它负责发出任务指令。这些指令可能包括对机器人的动作指令,例如移动到特定的工位,执行特定的操作等。系统控制的IO(输入∕输出)设备是连接总控系统和机器人的桥梁。机器人通过读取这些IO 来判断下一步的工作任务。机器人根据系统控制的IO 来判断需要前往的工位和工作任务。然后,它会按照指令移动到指定的工位,执行相应的操作。具体步骤如下:(1)总控制系统生成并发送任务指令,这些指令可能包括工位的编号,需要执行的任务等;(2)系统控制IO 接收这些指令,并将其传输给机器人;(3)机器人读取系统控制的IO,根据其中的指令来判断下一步的工作任务;(4)机器人根据判断结果,移动到对应的工位,这个过程可能涉及到机器人的路径规划,导航等复杂技术;(5)到达工位后,机器人执行总控系统发出的任务指令;(6)任务完成后,机器人返回原位或进行下一步的操作,等待新的任务指令。以上就是一个基本的自动化工作流程。
图4 总体工作流程
1.3.2 上下料位置的取放流程
上下料位置的取放流程如图5 所示。首先,需要确定要取放的物品在生产线的哪个位置。这通常会要求对生产线的内部结构和物品的特性有一定的了解。根据要取放的物品的特性和位置,选择适当的工具,这些工具可能包括机械臂、抓取器、滑块或者其他专门的设备。在确定了工具之后,需要确定最佳的路径来达到目标位置,这可能涉及到对生产线的空间使用、安全限制和其他因素的理解。使用所选的工具,按照确定的最佳路径进行取放操作,这个过程可能需要高度精确的控制和协调,以确保物品的安全和准确放置。在完成取放操作后,需要确认操作是否成功,这可能涉及到检查物品是否被正确放置,工具是否已经返回安全位置,以及是否有任何异常情况发生。其他位置的流程与其类似,虽然不同位置的生产线可能会有其特定的挑战和需求,但是基本的取放流程大致相同,确定物品的位置、选择适当的工具、确定最佳路径、执行操作和确认操作完成是通用的步骤。校准流程通常会涉及到一些特殊的步骤,例如设置基准点、进行测量、比较数据和进行修正等,这些步骤可以从取放流程中提取出来,因为它们都涉及到对工具和操作的高精度控制。在某些情况下,校准流程可能会在每次取放操作之前或之后进行,以确保工具的精确度和安全性。
图5 取放流程
综上所述,工作流程如下。
(1)确定目标和任务。明确工作的目标和任务,以便确定工作流程和优先级。
(2)规划工作步骤。根据目标和任务,规划完成工作所需的具体步骤。
(3)制定时间表。根据每个步骤所需的时间和优先级,制定一个详细的时间表。
(4)准备工具和材料。根据工作需要,准备必要的工具和材料。
(5)执行工作步骤。按照时间表和规划的步骤执行工作。
(6)监控进度。根据时间表和实际进展,监控工作的进度和质量。
(7)调整和优化。根据实际情况和进展,对工作流程进行必要的调整和优化。
(8)完成和评估。完成工作后,对工作的结果进行评估,并根据评估结果进行必要的反馈和改进。
2 算法解析及实现
2.1 算法实现的基本步骤
(1)图像处理和识别。首先,需要使用图像处理算法识别十字标签。这可能涉及到使用边缘检测、阈值处理、二值化、形态学操作(如膨胀和腐蚀)等技术来增强和提取标签的轮廓。然后,可以使用诸如OpenCV或机器学习算法(如支持向量机或深度学习)来识别十字标签。
(2)坐标提取。一旦成功识别出十字标签,需要从图像中提取其坐标。这通常涉及到计算轮廓的质心或找到轮廓的角点,然后将这些点转换为坐标。
(3)坐标转换。现在有了十字标签在图像坐标系中的坐标,需要将其转换到生产线上下料工位坐标系。这需要知道摄像头与生产线上下料工位之间的几何关系,包括摄像头内参(如焦距、光学中心、畸变系数等)和摄像头外参(如旋转矩阵和平移矩阵)。通常,这些参数可以通过标定过程获得。具体算法可能根据应用场景和具体需求进行调整和优化。例如,可能需要考虑如何处理摄像头视角的变化、如何处理摄像头移动或震动带来的误差等问题。
机器视觉、立体视觉等等方向常常涉及到4个坐标系:世界坐标系、相机坐标系、图像坐标系、像素坐标系。
2.2 世界坐标系和相机坐标系
世界坐标系,也称为测量坐标系,它是一个三维直角坐标系(Xw,Yw,Zw)。在世界坐标系中可以描述相机和待测物体的空间位置。世界坐标系的位置根据实际情况自行确定。
相机坐标系也是一个三维直角坐标系(xc,yc,zc)。相机坐标系的原点是镜头的光心,x、y轴分别与相面的两边平行,z轴为镜头的光轴,与像平面垂直。
世界坐标系到相机坐标系的变换是刚体变换,也就是只改变物体的空间位姿,而不改变物体的形状。用旋转矩阵R和平移向量t可以表示这种变换。
在齐次坐标下,式(1)中旋转矩阵R是正交矩阵,可通过Rodrigues 变换转换为只有3 个独立变量的旋转向量。因此刚体变换用6个参数就可以表示(3个旋转向量,3个平移向量),式(2)中6个参数就是相机的外参。相机外参决定了空间点从世界坐标系到相机坐标系的变换。
齐次坐标下可表示为:
2.3 相机坐标系和图像坐标系
从相机坐标系到图像坐标系,属于透视投影关系,从3D 转换到2D。图像坐标系也叫平面坐标系,用物理单位表示像素的位置,单位是mm。坐标原点为摄像机光轴与图像坐标系的交点位置。相机坐标系如图6所示。
图6 相机坐标系
图7 像素坐标系
根据相似三角原理可得:
在齐次坐标下表示为式(4):
2.4 图像坐标系与像素坐标系
像素坐标系和图像坐标系都在成像平面上,只是各自的原点和度量单位不一样。图像坐标系的原点为相机光轴与成像平面的交点,通常情况下是成像平面的中点或者叫principal point,如图7 所示。图像坐标系的单位是mm,属于物理单位,而像素坐标系的单位是pixel,平常描述一个像素点都是几行几列。所以这两者之间的转换如下:其中dx和dy表示每一列和每一行分别代表多少mm,即1pixel=dxmm。
结合到一起如下:
3 实验结果
p代表从不同的操作点,5 条生产线分别为p=1 到p=5,检测点pi=6,立体库出入点p=7,本文仅关注生产线的上下料,故序号为1~5。该值由视觉相机从标签的条形码中读取。
Δx1=px-p[0]
px为经过坐标变换后的上下料工位的位置的x坐标,p[0]为在校准的时候示教的上下料工位的位置x坐标,故Δx1为每次在该生产线的时候,程序打印出来校准指和实际值的偏差:
Δy1=py-p[1]
py为经过坐标变换后的上下料工位的位置的y坐标,p[1]为在校准的时候示教的上下料工位的位置y坐标,故Δy1为每次在该生产线时候,程序打印出来校准指和实际值的偏差:
Δx2=tx-markp.x[p]
tx为校准时候从视觉相机读取的标签十字位置的坐标x,markp.x[p]为本次相机读取的标签十字位置的坐标x。代表每次AGV移动的偏差。
Δy2=ty-markp.y[p]
ty为校准时候从视觉相机读取的标签十字位置的坐标y,markp.y[p]为本次相机读取的标签十字位置的坐标y。代表每次AGV移动的偏差。
Δθ=trot-markp.c[p]
trot为校准时候从视觉相机读取的标签十字位置在z向即竖直方向上的旋转角度,markp.c[p]为本次相机读取的标签十字位置在z向即竖直方向上的旋转角度。代表每次AGV移动的偏差。
校准后第1~4轮偏差值如表1~4所示。
经过多次的测试发现,偏差在8.3 mm 以内可以正常抓取,当角度和x、y偏差超过8.3 mm 或6.4°以后,需要进行重新校准才能正常工作。
表1 校准后第1轮偏差值
表2 校准后第2轮偏差值
表3 校准后第3轮偏差值
表4 校准后第4轮偏差值
4 结束语
随着中国人口数量的拐点以及人口老龄化问题到来,劳动力数量会有持续下降趋势,势必会增加劳动力成本。这就要求企业提高生产自动化水平,降低劳动力成本,同时提高产品品质,提高成产效率,在制造业企业,这种需求尤为明显。自动化生产线极大地解放了劳动力,减轻工人劳动强度,改善了作业环境。上下料工序是自动化生产线中关键的工序之一,是提高生产线效率和稳定性的瓶颈。
本文成功地提出了一种基于计算机视觉的生产线上下料位置坐标转换的方法,有效地解决了自动化生产线上下料自动定位的问题。通过在上下料工位附近设置十字标定图标,可以将生产线的实际坐标转换为对应的坐标系,为后续的加工操作提供准确的坐标信息。此外,本文还对该方法进行了理论分析和实验验证,结果表明该方法对生产线上下料的自动化、智能化具有较高的实用价值和参考性。