英语原文共 5 页,剩余内容已隐藏,支付完成后下载完整资料
二维视觉系统在提高工业机器人智能化中的应用研究
Frank S.Cheng and Andrew Denman
Department of Engineering and Technology
Central Michigan University
Mount Pleasant,Michigan 48859,USA
摘要:最近在工业机器人领域的研究和开发旨在提高工业机器人应用的稳定性,灵活性和智能性。本文介绍了应用二维视觉技术提高工业机器人抓取智能化的方法。该方法解决了二维视觉系统设置、机器人系统设置和机器人编程相关的问题。结果表明,该方法能有效提高视觉引导机器人操作的准确性,灵活性和智能性。
关键词:二维视觉,工业机器人
1 引言
工业机器人的零件进给是工业机器人抓取应用中的关键过程。 随机零件进给降低了硬件设置的成本并增加了机器人工作单元的适应性。 然而,该过程要求工业机器人能够识别未知部件的位置和方向,以及工件单元中的部件特征。
工业机器人应用表明,良好的传感能力能够提高工业机器人的灵活性和智能性。机器视觉技术是使机器人能够看到并识别他们所看到的东西。该技术涉及理论知识及计算机视觉,图像处理,视觉/机器人校准和实时通信技术的应用。良好的视觉系统允许工业机器人获得零件信息,如位置,形状,尺寸等,并以最短的循环时间成功抓取零件。
基本的二维视觉系统使用单个摄像机和二维图像进行物体识别。 由于其图像处理比较简单,该技术通常用于工业机器人应用中。然而,二维图像不能提供场景深度的信息,这经常导致识别三维部件在表面上的真实位置的问题。 例如,图1(b)示出了由Pulnix摄像机拍摄到插入桌子上的孔中的高尔夫球座的二维图像,如图1(a)所示。由于高尔夫球座的高度和高尔夫球座上的相机位置,二维图像显示高尔夫球座帽的中心点可能与球洞中的底座不完全对齐。在这种情况下,直接使用来自图像的高尔夫球座帽的中心点的测量可导致对检测到的高尔夫球座的机器人操作不准确甚至失败。
(a) (b)
图1(a)机器人安装的相机和(b)插入表面孔上的高尔夫球座二维图像
解决此问题的基本思想是将摄像机安装在机器人手臂上并将摄像机移动到不同的视图位置,以便识别三维对象表面的真实位置。为此,该研究是在机器人工作单元中进行的,机器人工作单元由FANUC M6i机器人和FANUC VisLOC视觉系统组成,如图1(a)所示。 本文介绍了该研究的方法和结果。 在第2节中,描述了二维视觉系统的操作原理,包括相机校准,视觉测量和与机器人的视觉通信的方法。 第3节讨论了工业机器人执行视觉引导操作所需的设置。介绍了建立机器人用户工具框架和校准框架的方法。 在第4节中,介绍了开发视觉引导机器人运动的程序的方法。第5节给出了该研究的结论。
2二维视觉系统操作原理
使用FANUC VisLOC视觉系统开发二维视觉项目首先要创建一个视觉系统,包括标定摄像机,摄像机视图和测量工具,如图2所示。视觉处理使用校准的相机拍摄二维图像,并使用一个或多个测量工具从图像中查找对象特征。必须在不同的视觉系统设置屏幕中建立和测试所需的视觉功能。这包括摄像机校准,定位器规格和与机器人的视觉通信。 然后,FANUC M6i机器人控制器能够通过在机器人程序中执行机器人视觉的命令来启动特定的操作。 在进行成功操作后,视觉系统将测量结果实时发送到机器人寄存器。
图2 FANUC VisLOC视觉系统的视觉过程
2.1相机校准
视觉系统中使用的相机将图像分成许多方块,称为像素。 当相机用于引导机器人运动时,每个像素都会查看机器人的某个部分。 摄像机视图区域的大小以及摄像机在机器人中的位置和方向会影响机器人应如何利用视觉信息。
在二维视觉系统中,相机校准建立称为相机校准帧VFc的笛卡尔坐标系,以定义相机视图中像素的X和Y值。 在该研究中,视觉系统通过在相机校准位置Pc处拍摄特殊校准网格片并在图像上建立帧VFc来进行相机校准,如图3所示。摄像机校准框架的原点是网格板中心的大圆的中心,三个大圆和两个大圆分别定义框架的X和Y轴。 利用已建立的框架,视觉系统能够在图像上找到,计算和显示小网格圆的中心。
用于二维视觉应用的相机可以相对于机器人的基座处于固定位置,或者安装在机器人臂上,其位置相对于机器人的最后轴固定。对于固定摄像机视觉应用,校准摄像机始终在摄像机校准位置Pc处拍摄视图。 然而,对于使用机器人安装的摄像机的视觉应用,校准的摄像机将在机器人信封内的不同摄像机视图位置Pv [n] {n = 1,2,...,k}处拍摄照片。在这种情况下,只要摄像机视图位置Pv [n]位于与校准网格板平行且摄像机镜头距离相同的摄像机视图平面上,校准摄像机就能够精确地测量图像像素。 到摄像机校准位置的网格表。 如果摄像机相对于摄像机视图平面的距离或角度发生变化,则视觉测量结果不正确。从这个意义上说,被测部件与摄像机的距离应该与网格板相距相同,摄像机只能沿着摄像机视平面的标准旋转。
为了使机器人理解视觉测量,机器人系统必须在建立视觉校准框架的相同位置处建立机器人校准框架UFc。 通过机器人工作单元中的帧和UFc的叠加,以标定帧测量的视觉偏移值也是在UFc中测量的相同偏移值。这是固定摄像机总是在视觉应用中的摄像机校准位置拍摄照片的情况。 然而,对于在工作单元中的不同视图位置拍摄照片的机器人安装的相机,必须将在网格校准框VFc中测量的视觉偏移值转换为在机器人的工具中心点框架FTCP中测量的偏移值。在VisLOC中,可以在“帧转换设置”屏幕中完成所需的帧转换。 首先,在“校准网格框架”选项卡中,选择指示已建立的机器人校准框架UFc的用户框架编号,并将框架值UFc =(x,y,z,偏航,俯仰,滚动)上载到视觉系统。然后,在“应用程序用户框架”选项卡中,选择“当前机器人位置(世界)”选项(即机器人世界坐标系中的机器人中心点),并在摄像机处于摄像机校准位置时上载机器人中心点值。通过指定的帧转换设置,当机器人将机器人安装的摄像机移动到摄像机视图平面上的视点Pv [n]时,视觉系统能够计算机器人TCP帧FTCP中的视觉偏移值。
图3 校准网格表和框架
2.2几何定位器设置
对于零件寻找应用,视觉过程中的测量工具是几何定位器,具有训练的零件图案和指定的搜索窗口,如图4所示。训练的图案定义了要在图像上检测到部分的形状,大小和中心点。搜索窗口允许视觉系统从图像的指定区域搜索部件。 在这项研究中,视觉过程使用两个几何定位器来找到随机插入表面的高尔夫球座的位置。 定位器1和定位器2具有与图4a中所示的高尔夫球座帽相同的训练模式。 然而,定位器1具有用于检测多个高尔夫球座的大搜索窗口,如图4(b)所示,并且定位器2具有用于检测单个高尔夫球座的小搜索窗口。视觉应用首先使用定位器1中的大窗口粗略地检测表面上的多个高尔夫球座,然后使用定位器2中的小窗口来定位定位器1检测到的一个高尔夫球座,以便更准确地识别特征。
通过手动启动视觉操作“Snap”和“Find”,可以在Locator Setup屏幕中测试定位器的检测效果。 通过良好的训练模式,视觉“查找”操作能够在捕捉的图像上找到与训练模式匹配的所有部分,并计算检测到的部分的偏移值(X,Y,0,0,0,Roll) 在视觉校准框架VFc中。偏移值XY和Roll分别测量检测到的部分的中心点的位置和方向。 图4(b)示出了视觉系统能够使用定位器1中的训练模式来检测图像上的所有高尔夫球座。
2.3与机器的视觉传送
VisLOC视觉系统使用以太网与FANUC M6i机器人控制器进行通信。 视觉系统被指定使用许多专用机器人寄存器来将视觉操作的视觉结果发送到机器人系统。 例如,当执行诸如“移动”或“寻找”的视觉操作时,生成代码并将其发送到默认机器人的视觉状态寄存器R [1]。如果操作成功,视觉系统将该寄存器设置为1,否则,将向该寄存器返回错误代码。 利用R [1]中的状态代码,可以建立机器人程序执行和视觉操作之间的通信握手。 视觉“查找”操作还将视觉偏移值发送到默认机器人位置寄存器PR [1]。
- 高尔夫球座的训练图像
- 定位器1中的高尔夫球座检测
图4视觉过程中的几何定位器
3机器系统的设计
工业机器人是一种多功能,可重新编程的机器,能够将称为的手臂末端移动到其工作范围内的某个点。 在工业机器人中,默认工具中心点表示为称为中心数据帧FTCP的笛卡尔坐标系,其原点位于腕部面板上。中心点位置通过中心数据帧相对于机器人世界帧的位置(x,y,z,)和方向(偏航,俯仰,滚动)来测量。 工业机器人系统还支持在称为机器人用户框架的用户定义框架中表示机器人中心点位置。在这种情况下,机器人系统在机器人世界框架和建立的用户框架之间进行框架转换。 此外,机器人系统允许通过教授用户工具框架来调整面板上的默认中心点。
为工业机器人应用程序生成所需的机器人机器人中心点位置是主要的机器人编程任务之一,可以通过使用真实机器人在线记录实际机器人中心点的值,或使用机器人仿真模型离线生成中心值来完成。无论使用哪种方式,都必须在可用的机器人框架(即机器人世界框架或机器人用户框架)和机器人工具框架(即默认的中心面板框架或用户工具框架)中定义机器人中心位置。当机器人程序执行运动命令以将机器人中心点移动到先前教导的机器人中心点位置时,机器人系统将检查程序中当前活动的机器人框架和用户工具框架是否与机器人中心点位置的机器人框架和工具框架匹配。 如果位置具有不匹配的用户框架和用户工具框架,则机器人系统将返回“不匹配的框架”错误代码。
3.1用户工具框架设置
机器人用户工具框架设置对于工业机器人应用非常重要,因为它定义了连接到机器人手腕的工具上的实际TCP点。 在这项研究中,有三个用户工具框架要教。第一个用户工具框架Utool [1]定义连接到机器人面板的指针的尖端; 它用于教授机器人用户框架。 第二个用户工具框架Utool [2]定义了夹具的实际端点; 机器人程序用它来操纵实际的高尔夫球座。 第三个用户工具框架Utool [3]定义安装在机器人手腕上的相机镜头的中心点; 机器人程序使用它将摄像机移动到检测到的高尔夫球座的正上方。
机器人系统可以使用六点方法来教导用户工具框架。 程序是根据其定义将连接到机器人手腕的实际工具移动到每个点,并用机器人示教器记录位置。通过这些特别教导的六点,机器人系统能够计算出最小化的最佳TCP值。 由于实际工具的方向,位置不准确。
3.2机器人校准框架设置
在视觉应用中必须将机器人校准到视觉校准网格框架。 这是通过教导机器人用户框架来完成的,该机器人用户框架具有在校准摄像机时处于准确位置的相同网格板。 对于工业机器人,可以使用四点法在机器人包络内的位置处教授机器人用户框架。该方法需要手动将由指针工具框架(例如,Utool [1])定义的机器人TCP移动到四个不同的位置并将它们记录在机器人世界框架Fw中。 图3显示了本研究中用于教授机器人校准用户框架UFc的校准网格片的四个点。第一点是由网格板左下角的小圆圈定义的定向系统原点。 第二和第三点是定义用户框架的X和Y轴的X和Y方向点。 第四点是用户帧的系统原点。 利用这四个教导点,机器人系统能够确定相对于机器人世界框架的用户框架值。
4开发机器程序的方法
机器人安装的摄像机视觉应用中的机器人程序是视觉和机器人系统提供的帧,帧转换,视觉测量和机器人指令的应用。 图5显示了与机器人程序相关的已建立帧,帧转换,机器人TCP位置和TCP运动的关系。在图5中,点表示机器人TCP位置; 带箭头的线表示两个TCP位置之间的机器人TCP运动;连接两个没有箭头的帧的线表示帧转换。
图5 机器人程序中的框架和位置
在这个视觉引导的机器人应用中需要标明中心点位置。 摄像机校准位置Pc定义摄像机进行视觉校准的位置; 它的中心值被视觉系统用于进行帧转换设置而不是机器人程序。摄像机视野位置Pv [n]和机器人动作位置Pg [n]是机器人程序中使用的机器人中心点位置。 必须通过将实际开发的程序运行到具有示教器的实际部件来教授这些要点。 在线教学过程允许用户为应用程序生成准确且一致的机器人中心点数据(即机器人中心点值和帧编号)。在该应用中,有两个示教的摄像机视图位置和一些示教的抓爪动作位置。 相机初始视图位置Pv [1]是相机能够在表面看到可用的高尔夫球座的地方; 第二摄像机视图位置Pv [2]是摄像机能够看到由摄像机初始视图识别的高尔夫球座帽的中心点的位置。摄像机视图位置Pv [n]的机器人中心点值还定义了视点处的相应机器人用户框架UF [n]。 抓手动作位置Pg [n],{n = 1,2,...,k}是机器人能够操纵由第二摄像机视图识别的高尔夫球座的地方。应用程序中的帧转换包括机器人系统将帧从其世界帧Fw转换为校准用户帧UFc,并且视觉系统将帧从网格校准帧VFc转换为相机处的当前TCP帧UF [n] 查看位置Pv [n]。 通过在当前用户帧UF [n]中应用视觉偏移值并执行机器人OFFSET运动命令来实现两个连续机器人中心点之间的中心点运动。
在机器人安装的视觉应用程序中,机器人程序首先为所有摄像机视图移动选择摄像机用户工具框架Utool [2]。 然后,机器人将相机移动到机器人校准用户框UFc中的初始相机视图位置Pv [1]。 在初始视点,程序首先激活机器人世界框架并将TCP值分配给临时机器人位置寄存器PR [9]。然后,它创建一个具有PR
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[20655],资料为PDF文档或Word文档,PDF文档可免费转换为Word
课题毕业论文、外文翻译、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。