专利名称:视觉机器人离线编程方法和系统的制作方法
技术领域:
本发明涉及一种机器人技术领域,属于半导体自动化加工领域的设备,尤其涉及一种能实现离线生成机器人运动轨迹的作业程序的视觉机器人离线编程方法和视觉机器人离线编程系统。
背景技术:
人类进入21世纪,科技高速发展,已经开始积极的向地球外的领域开拓,开发太空和利用空间的能力已经成为衡量一个国家综合实力和大国地位的重要特征。机器人正逐渐成为未来开发太空的一种重要手段。遥控操作时机器人的一种重要控制方式,用遥控操作机器人进行作业能提高作业的安全性以及经济性。目前,几乎所有的机器人操作平台都具有视觉系统,视觉系统也是实际操作过程中取得机器人运作信息的重要途径。但现有机器人的操作平台采用的视觉系统缺乏主动视觉功能,从而还需要人工的调整,重新搜索目标物,效果还不好,不能最大限度的发挥视觉系统的作用。此外,现有的视觉系统仅具有单目视觉,其视野有限,不能精确定位,从而限制了视觉系统的应用,不利于操作任务的顺利完成。在专利号为CN101152717A的名称为“一种用于离线生成机器人切割作业程序的方法”中,该专利利用相配套开发的离线编程软件读取待加工工件的图形文件,自动编程直接生成切割机器人的控制程序。该技术方案利用已有的成熟的三维制图软件CAD构造工件的几何图形,并在图形中利用给线着色的方式对待加工部位进行标识,运行离线编程软件读取图形的IGS文件生成机器人的控制程序,传送至机器人后完成切割作业。该方法应用读取含有加工信息的工件的CAD图形的方法来直接生成完整的可用于生成加工的机器人的作业程序。但是,该技术方案中,根据生成的CAD图,需要被机器人加工的部位要用颜色线标识出,而且需用约定好的不同的颜色标识出来,这样明显增加了工作量,而且精确度不够闻。在专利号为CN101698299A名称为“一种用于气浮机械臂遥操作的三目视觉装置”的专利中,本专利根据三目视觉摄像头中三个摄像头的相对位置关系和目标物体在三个摄像头图像界面中的位置坐标,计算出目标物体到三目视觉摄像头重主摄像头得深度信息,从而提供给遥操作人员进行辅助决策。本技术方案,不对目标物体进行精确定位。集成电路(IC)是电子信息产业的核心,是推动国民经济和社会信息化发展的最主要的高新技术之一,一个国家半导体行业的先进程度显示了这个国家高新技术的先进程度。洁净机器人是用于半导体生产中负责在不同的生产工序中搬运晶圆的任务,像日本、韩国和台湾等半导体工业发达的国家和地区已经在20世纪八九十年代研发了自己的IC机器人。国家在十五“863”计划中,将集成电路制造装备列入了重大专项计划,实现我国集成电路制造装备的局部突破和IC装备产业的跨越式发展。在晶圆自动化生产线上,晶圆托盘一般放置在机器人机械手臂的末端,由机器人去完成晶圆的传输。传统的机器人作业程序的生成是车间现场由操作人员一边操纵机器人在工件表面示教特征点,一边在示教编程器上编制程序的方法完成。传统的示教方法由于需要较多的人的参与,即使操作者有较高的技能也会有不同程度的误差存在。如选点是否合理、示教点的准确与否、工具与工件的夹角是否准确等问题都可能导致实际工件加工时产生较大的误差。另外,工件越复杂,需要示教点就越多,往往在示教程序时就需要投入较多的时间,导致机器人的使用效率不够高。总之,这种示教方式存在诸多的缺点:1、机器人在示教过程中不能工作,影响工作效率;2、示教过程中需要工作人员在机器人附近进行引导,而洁净机器人是需要工作在一定洁净度等级的洁净环境中,工作人员的进入会在一定程度上给洁净室带来污染;3、工作人员在对机器人示教的过程中,若出现失误会导致机器人手臂与人发生碰撞,给机器人结构和工作人员带来伤害。
发明内容
本发明主要解决的技术问题是提供一种实现对机器人运动轨迹进行离线编程的方法,通过该机器人,自动完成晶圆传输等工作,减少了人工的介入,避免了工作人员给洁净室等带来一定程度的污染等。为解决上述技术问题,本发明采用的一个技术方案是提供一种视觉机器人离线编程方法,包括以下步骤:SlOO:设定机器人各轴的旋转角度作为运动的约束条件;S200:应用摄像机采集目标图像;S300:应用采集的图像,提取目标的边缘和顶点信息;S400:应用目标的边缘和顶点信息构建目标的三维模型;S500:应用目标的三维模型生成目标模型的点云数据;S600:机器人获取晶圆片的存放位置的坐标信息;S700:依据存放位置的坐标信息以及点云数据计算机器人电机相关运动参数,并存储运动参数。具体的,步骤S300中,提取目标的边缘信息的方法包括:S311:制作横向差分模板;S312:对差分模板滤波;S313:检测图像中各像素点的八邻域点的值是否满足角点条件,若满足角点条件,则保留;若不满足,则剔除掉;S314:计算角点响应函数值;S315:应用角点响应函数值对保留下的角点值再次进行检测,剔除掉非角点像素点,从而取得目标的边缘信息。在一改进的方案中,提取边缘信息采用的是Priwitt边缘检测算法。具体的,步骤S300中,提取目标的顶点信息的方法包括:S321:对图像的角点进行检测;S322:对图像像素坐标和世界坐标做归一化处理;S323:获取摄像机内参数以及外参数值;S324:优化摄像机内参数以及外参数值,从而取得目标的顶点信息。在一改进的方案中,提取目标的顶点信息采用的是Harris角点检测方法。
具体的,所述运动目标的运动轨迹文件包括运动目标的位移以及运动目标的方向。为了解决上述技术问题,本发明采用的另一个技术方案是提供一种视觉机器人离线编程系统,包括操作单元、摄像单元、转换单元、图像编辑单元、图像处理单元、数据转换单元、位移分析单元以及运动分析单元;所述操作单元用于设定机器人各轴的旋转角度作为运动的约束条件,即;所述摄像单元用于采集目标的图像;所述转换单元将采集的目标图像转为数字图像,并提取目标的边缘和顶点信息;所述图像处理单元用于应用目标的边缘和顶点信息构建目标的三维模型;所述数据转换单元用于生成目标模型的点云数据;所述位移分析单元用于获取晶圆片的存放位置的坐标信息;所述运动分析单元用于依据存放位置的坐标信息以及点云数据计算机器人电机相关运动参数,并存储运动参数。其中,所述摄像单元包括多个摄像机、相机固定座、旋转轴以及底座;所述摄像机固定于相机固定座上;相机固定座通过旋转轴与底座相连,通过底座安装于机器人本体上。其中,所述摄像机为三个,三个摄像机在相机固定座上位于同一水平线上。其中,固定于相机固定座上的摄像机位置根据特定参数设定,所述参数包括:基线距离、坐标变换矩阵以及每个摄像机的单应性矩阵。本发明的有益效果是:通过视觉机器人的摄像单元获取目标的图像信息,提取目标的边缘以及顶点信息后,确定目标的三维坐标,最后通过目标的三维坐标信息对机器人的运动轨迹进行规划,从而得到机器人相关部件如手臂以及腿部等的运动轨迹。该技术方案中的机器人能针对目标的图像信息,自动离线编程生成机器人的运动轨迹,无需工作人员的控制,从而使工作人员远离工作车间,避免给工作车间带来污染。该机器人自动化程度高,机器人运动轨迹完全由计算机计算出。
图1是本发明技术方案的视觉机器人离线编程方法的流程图。图2是本发明技术方案的提取目标的边缘信息的流程图。图3是本发明技术方案的提取目标的顶点信息的流程图。图4是本发明技术方案的八领域点的位置图。图5是本发明技术方案的摄像单元的正面视图。图6是本发明技术方案的摄像单元的俯视图。标注说明:I摄像机;2相机固定座;3旋转轴;4底座。
具体实施例方式为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。请参阅图1,本发明提供的一种视觉机器人离线编程方法,包括以下步骤:SlOO:设定机器人各轴的旋转角度作为运动的约束条件;S200:应用摄像机采集目标图像;S300:应用采集的图像,提取目标的边缘和顶点信息;
S400:应用目标的边缘和顶点信息构建目标的三维模型;S500:应用目标的三维模型生成目标模型的点云数据;S600:机器人获取晶圆片的存放位置的坐标信息;S700:依据存放位置的坐标信息以及点云数据计算机器人电机相关运动参数,并存储运动参数。本技术方案经过步骤S500至S700生成机器人的运动轨迹文件以及机器人电机相关运动参数,从而使机器人的机械手臂以及相关部件向特定的方向做预定的动作,实现了离线自动编程,满足了用户的需求。具体的,步骤S300中,应用现有的角点检测算法以及边缘检测算法的原理取得目标的边缘信息以及顶点信息。常见的基于模板的角点检测算法有Kitchen-Rosenfeld角点检测算法、Harris角点检测算法、KLT角点检测算法及SUSAN角点检测算法。角点作为图像上的特征点包含有重要的信息,在图像融合和目标跟踪以及三维重建中具有重要的应用价值,但是基于实际应用需求,从角点检测的快速性、准确性、鲁棒性等要求出发,可以看出以上的基于模板的角点检测算法各有弊益,至极基于图像的角点检测基本上是全局搜索,基于边缘轮廓的角点检测数据量较少,可以采用多分辨分析并行处理,从灰度图像得到边缘轮廓曲线要经过两次以上的全局搜索,速度并不是很快,但对角点的误检和漏检要比直接基于图像的方法好很多。如果在得到轮廓曲线的过程中应用一些其他的变换方法,就计算的速度而言,下降不少,所以一般速度较快、较准确的角点检测使用直接基于图像模板的方法就完全可以满足需要,但是如果对角点的完备性要求较高,那么使用基于轮廓线的多角度分析方法应该给予考虑。由于目标顶点的位置信息是机器人准确操作晶圆片的关键因素,所以本技术方案中提取目标的顶点信息采用的是Harris角点检测方法,该方法具有准确的定位性能、很高的重复检测率、具有对噪声的鲁棒性和具有较高的计算效率,参考图3所示,其在本技术方案中的应用具体包括以下步骤:S321:对图像的角点进行检测;S322:对图像像素坐标和世界坐标做归一化处理,以方便做矩阵运算;S323:获取摄像机内参数和外参数值;该内参数具体为相机的畸变,外参数具体为摄像机的旋转和平移值;S324:优化摄像机内参数以及外参数值,从而取得目标的顶点信息。Harris角点检测方法具有准确的定位性能、很高的重复检测率、对噪声鲁棒性好以及计算效率较高等优点。该技术方案,应用Harris角点检测方法确定角点后,再对图像的像素坐标以及世界坐标做归一化处理,获取摄像机的内参数以及外参数。具体的,应用了单应性矩阵获取内参数以及外参数。在视觉信息计算中,单应性矩阵的求解在摄像机标定的过程中具有重要的意义,单应性矩阵中包含着摄像机的内参数矩阵、旋转向量和平移向量。假设三维空间有一点Q= [X Y Z1]T,到成像仪上的q[x y I] T映射,设单应性矩阵以Hs为比例系数。则Q和q之间的关系可表示为q = ShQ0在点映射过程中,点要经过旋转和平移的物理变换,所以设物理变换坐标W= [R T],R为旋转向量,T为平移向量。然后再投射过程中,根据得到的摄像机的内参矩阵M,所以q= sMWQ,从而推算出H= s丽。通过单应性矩阵,把源图像平面上的点击位置与目标图像平面的点击位置联系了起来。本技术方案中,在张正友标定方法中,将目标三维坐标和图像坐标之间的由内外参数构成的矩阵称为单应性矩阵H,具体的,张正友标定方法需要拍摄若干张标定模板的图像,为了提高最后非线性优化求解的精度,需要从不同角度拍摄图片。具体的,该摄像机标定方法采用张正友标定方法的步骤如下:1、先将三目相机固定在机器人上,并将机器人手臂停留在初始化位置上;2、打印一张模板并贴在一个平面上;3、变换模板的位置和角度,使得相机从不同角度拍摄若干张模板图象;4、检测出图象中的特征点,本实施例中,特征点具体的为数字图像的黑白格的交
占.
5、求出摄像机的内参数和外参数;6、求出畸变系数;7、优化求精。在该标定方法中,由于图像坐标系为一个3*1阶矩阵,目标坐标系为一个4*1阶矩阵,则H为3*4阶矩阵,但张正友标定方法事先约定标定模板所在平面在目标坐标系中z=O处,这样H为3*3阶矩阵,通过图像坐标和目标坐标可求出H。假设H = Qi1 h2 h3]=XAlir1 r2 t],其中A为摄像机内参数,Lr1 r2 t]为摄像机外参数,λ为尺度因子。由坐标正交的关系和坐标系矢量模为I的两个约束条件可以得到下面两个方程式:
权利要求
1.一种视觉机器人离线编程方法,其特征在于,包括以下步骤: SlOO:设定机器人各轴的旋转角度作为运动的约束条件; S200:应用摄像机采集目标图像; S300:应用采集的图像,提取目标的边缘和顶点信息; S400:应用目标的边缘和顶点信息构建目标的三维模型; S500:应用目标的三维模型生成目标模型的点云数据; S600:机器人获取晶圆片的存放位置的坐标信息; S700:依据存放位置的坐标信息以及点云数据计算机器人电机相关运动参数,并存储运动参数。
2.根据权利要求1所述的视觉机器人离线编程方法,其特征在于,步骤S300中,提取目标的边缘信息的方法包括: 5311:制作横向差分模板; 5312:对差分模板滤波; 5313:检测图像中各像素点的八邻域点的值是否满足角点条件,若满足角点条件,则保留;若不满足,则剔除掉; 5314:计算角点响应函数值; 5315:应用角点响应函数值对保留下的角点值再次进行检测,剔除掉非角点像素点,从而取得目标的边缘信息。
3.根据权利要求2中所述的视觉机器人离线编程方法,其特征在于,提取边缘信息采用的是Priwitt边缘检测算法。
4.根据权利要求1所述的视觉机器人离线编程方法,其特征在于, 步骤S300中,提取目标的顶点信息的方法包括: 5321:对图像的角点进行检测; 5322:对图像像素坐标和世界坐标做归一化处理; 5323:获取摄像机内参数和外参数值; 5324:优化摄像机内参数以及外参数值,从而取得目标的顶点信息。
5.根据权利要求4所述的视觉机器人离线编程方法,其特征在于,提取目标的顶点信息采用的是Harris特征点检测方法。
6.根据权利要求1所述的视觉机器人离线编程方法,其特征在于,所述运动目标的运动轨迹文件包括运动目标的位移以及运动目标的方向。
7.—种视觉机器人离线编程系统,其特征在于:包括操作单元、摄像单元、转换单元、图像编辑单元、图像处理单元、数据转换单元、位移分析单元以及运动分析单元; 所述操作单元用于设定各轴的旋转角度作为机器人运动的约束条件; 所述摄像单元用于采集目标的图像; 所述转换单元将采集的目标图像转为数字图像,并提取目标的边缘和顶点信息;所述图像处理单元用于应用目标的边缘和顶点信息构建目标的三维模型; 所述数据转换单元用于生成目标模型的点云数据; 所述位移分析单元用于获取晶圆片的存放位置的坐标信息; 所述运动分析单元用于依据存放位置的坐标信息以及点云数据计算机器人电机相关运动参数,并存储运动参数。
8.根据权利要求7所述的视觉机器人离线编程系统,其特征在于:所述摄像单元包括多个摄像机、相机固定座、旋转轴以及底座; 所述摄像机固定于相机固定座上;相机固定座通过旋转轴与底座相连,通过底座安装于机器人本体上。
9.根据权利要求7或8所述的视觉机器人离线编程系统,其特征在于:所述摄像机为三个,三个摄像机在相机固定座上位于同一水平线上。
10.根据权利要求9所述的视觉机 器人离线编程系统,其特征在于:固定于相机固定座上的摄像机位置根据特定参数设定,所述参数包括:基线距离、坐标变换矩阵以及每个摄像机的单应性矩阵。
全文摘要
本发明公开了一种视觉机器人离线编程方法,包括以下步骤S100设定机器人各轴的旋转角度作为运动的约束条件;S200应用摄像机采集目标图像;S300应用采集的图像,提取目标的边缘和顶点信息;S400应用目标的边缘和顶点信息构建目标的三维模型;S500应用目标的三维模型生成目标模型的点云数据;S600机器人获取晶圆片的存放位置的坐标信息;S700依据存放位置的坐标信息以及点云数据计算机器人电机相关运动参数,并存储运动参数。本技术方案中的机器人能针对目标的图像信息,自动离线编程生成机器人的运动轨迹,无需工作人员的控制,从而使工作人员远离工作车间,避免给工作车间带来污染。
文档编号B25J13/08GK103192397SQ20121000532
公开日2013年7月10日 申请日期2012年1月9日 优先权日2012年1月9日
发明者刘晓帆, 徐方, 曲道奎, 邹风山, 李崇, 郑春晖, 董状, 王金涛 申请人:沈阳新松机器人自动化股份有限公司