车厢板焊接控制方法和装置与流程

文档序号:24072577发布日期:2021-02-26 15:59阅读:91来源:国知局
车厢板焊接控制方法和装置与流程

[0001]
本发明涉及自动化控制技术领域,尤其是涉及一种车厢板焊接控制方法和装置。


背景技术:

[0002]
当前的车厢板规格各异,每一种车厢板的格子(或称为单元格)数目和大小都不一致,因此在机器人工作站中每一次车厢板换型号都需要花费大量时间重新编程,编程繁琐,效率低,且易出错。此外,现有的车厢板焊接方法还存在定位精度低的缺陷。


技术实现要素:

[0003]
本发明的目的在于提供一种车厢板焊接控制方法和装置,以缓解现有技术中存在的机器人编程繁琐,效率低,易出错,定位精度低的技术问题。
[0004]
第一方面,本发明提供的一种车厢板焊接控制方法,其中,应用于机器人平台,包括:从参数化平台拷贝目标文件;其中,所述目标文件包含:所述参数化平台基于用户输入的车厢板信息生成的车厢板上所有单元格内各个寻位点的虚拟位置信息;基于预设坐标转换算法,将所述寻位点的虚拟位置信息转换为寻位点的实际位置信息;其中,所述寻位点的实际位置信息用于表示所述寻位点在用户坐标系下的位置信息;基于所述寻位点的实际位置信息,确定焊接起始点位置信息和焊接结束点位置信息;基于所述焊接起始点位置信息和所述焊接结束点位置信息,控制机器人末端的焊枪执行焊接指令。
[0005]
进一步的,所述基于所述寻位点的实际位置信息,确定焊接起始点位置信息和焊接结束点位置信息的步骤,包括:基于所述寻位点的实际位置信息,确定焊缝交点的位置信息;基于所述焊缝交点的位置信息和预设焊接长度,确定焊接起始点位置信息和焊接结束点位置信息。
[0006]
进一步的,所述基于所述寻位点的实际位置信息,确定焊缝交点的位置信息的步骤,包括:对所述寻位点进行分类,得到所述寻位点的分类信息;基于所述寻位点的分类信息,确定所述焊缝交点的位置定位方式;利用所述位置定位方式,确定所述焊缝交点的位置信息。
[0007]
进一步的,所述寻位点的数量为多个,所述对所述寻位点进行分类,得到所述寻位点的分类信息的步骤,包括:对所有的所述寻位点按照预设排列规则进行排序,并在排序后为每个所述寻位点分配对应的标识;基于所述对应的标识,确定所述寻位点的分类信息。
[0008]
进一步的,所述位置定位方式包括:利用激光焊缝跟踪器进行多点寻位的方式,和/或,通过直线方程进行求解的方式。
[0009]
进一步的,在从参数化平台拷贝目标文件之前,方法还包括:对所述机器人平台和所述参数化平台进行关联与标定,以建立所述预设坐标转换算法。
[0010]
进一步的,在基于所述焊接起始点位置信息和所述焊接结束点位置信息,控制机器人末端的焊枪执行焊接指令之前,方法还包括:将所述焊接起始点位置信息和所述焊接结束点位置信息按照顺序写入对应的位置寄存器中。
[0011]
第二方面,本发明提供的一种车厢板焊接控制装置,其中,应用于机器人平台,包括:拷贝单元,用于从参数化平台拷贝目标文件;其中,所述目标文件包含:所述参数化平台基于用户输入的车厢板信息生成的车厢板上所有单元格内各个寻位点的虚拟位置信息;转换单元,用于基于预设坐标转换算法,将所述寻位点的虚拟位置信息转换为寻位点的实际位置信息,其中,所述寻位点的实际位置信息用于表示所述寻位点在用户坐标系下的位置信息;确定单元,用于基于所述寻位点的实际位置信息,确定焊接起始点位置信息和焊接结束点位置信息;控制单元,用于基于所述焊接起始点位置信息和所述焊接结束点位置信息,控制机器人末端的焊枪执行焊接指令。
[0012]
第三方面,本发明还提供一种电子设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现的所述的车厢板焊接控制方法。
[0013]
第四方面,本发明还提供一种具有处理器可执行的非易失的程序代码的计算机可读介质,其中,所述程序代码使所述处理器执行所述的车厢板焊接控制方法。
[0014]
本发明提供的一种车厢板焊接控制方法和装置,应用于机器人平台,包括:先从参数化平台拷贝目标文件;其中,目标文件包含:参数化平台基于用户输入的车厢板信息生成的车厢板上所有单元格内各个寻位点的虚拟位置信息;然后基于预设坐标转换算法,将寻位点的虚拟位置信息转换为寻位点的实际位置信息;其中,寻位点的实际位置信息用于表示寻位点在用户坐标系下的位置信息;再基于寻位点的实际位置信息,确定焊接起始点位置信息和焊接结束点位置信息;最后基于焊接起始点位置信息和焊接结束点位置信息,控制机器人末端的焊枪执行焊接指令。本发明中的机器人平台无需编程,因此可以避免编程繁琐、效率低、易出错的缺陷,并且通过从参数化平台拷贝目标文件,确定寻位点的实际位置信息进而确定焊接起始点位置信息和焊接结束点位置信息的方式可以实现智能定位,具有定位精度高的优势。
[0015]
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
[0016]
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
[0017]
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018]
图1为本发明实施例提供的一种车厢板焊接控制方法的流程图;
[0019]
图2为本发明实施例提供的另一种车厢板焊接控制方法的流程图;
[0020]
图3为本发明实施例提供的再一种车厢板焊接控制方法的流程图;
[0021]
图4为机器人平台标定的一种方式;
[0022]
图5为机器人平台标定的另一种方式;
[0023]
图6为确定焊接起始点位置信息和焊接结束点位置信息的流程图;
[0024]
图7为实际工件的结构示意图;
[0025]
图8为本发明实施例提供的一种车厢板焊接控制装置的结构示意图。
[0026]
图标:
[0027]
11-拷贝单元;12-转换单元;13-确定单元;14-控制单元。
具体实施方式
[0028]
下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0029]
当前的车厢板规格各异,每一种车厢板的格子数目和大小都不一致,在机器人工作站中每一次车厢板换型号都需要花费大量时间重新编程,并且无法使用机器人的固定轨迹焊接。换句话说,目前车厢板焊接机器人工作站中,为了解决机器人编程慢,效率低,易出错等问题,同时也解决工件拼接误差、定位精度低等偏差,需要一种机器人程序的快速编程方法,使机器人实现智能寻位纠偏焊接。基于此,本发明的目的在于提供一种车厢板焊接控制方法和装置,可以避免编程繁琐、效率低、易出错的缺陷,还可以提高定位精度。
[0030]
为便于对本实施例进行理解,首先对本发明实施例所公开的一种车厢板焊接控制方法进行详细描述。
[0031]
实施例1:
[0032]
根据本发明实施例,提供了一种车厢板焊接控制方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0033]
图1为本发明实施例提供的一种车厢板焊接控制方法的流程图,应用于机器人平台,如图1所示,该方法包括如下步骤s101~步骤s104:
[0034]
步骤s101,从参数化平台拷贝目标文件;其中,目标文件包含:参数化平台基于用户输入的车厢板信息生成的车厢板上所有单元格内各个寻位点的虚拟位置信息。
[0035]
上述参数化平台可以指参数化软件所在的虚拟平台。上述车厢板信息包括但不限于以下信息:车厢板尺寸(即车厢板的长宽高)、车厢板厚度(即单元格高度)、单元格的数量、单元格的尺寸(即单元格的长宽),以及相邻两个单元格之间的间距。参数化软件基于自身内设的程序,只需要用户参照图纸输入上述车厢板信息即可快速生成所有单元格中寻位点的虚拟位置信息,而且所有寻位点的虚拟位置信息可以构成一个目标文件。本申请中的目标文件可以是brd类型的文件,也可以是其他类型的文件,因此本申请对目标文件的类型不作具体限定。此外,本实施例可以根据实际需求确定每个单元格内寻位点的数量,因此本实施例对每个单元格内寻位点的数量也不作具体限定。
[0036]
步骤s102,基于预设坐标转换算法,将寻位点的虚拟位置信息转换为寻位点的实际位置信息。
[0037]
上述寻位点的实际位置信息用于表示寻位点在用户坐标系下的位置信息。在执行
步骤s101之前,方法还包括:对机器人平台和参数化平台进行关联与标定,以建立上述预设坐标转换算法。
[0038]
步骤s103,基于寻位点的实际位置信息,确定焊接起始点位置信息和焊接结束点位置信息。
[0039]
在本实施例中,每个单元格内至少有一个焊缝,且每个焊缝上设置有至少一个焊接起始点和至少一个焊接结束点,焊接起始点在用户坐标系下的坐标记为上述焊接起始点位置信息,同样的,焊接结束点在用户坐标系下的坐标记为上述焊接结束点位置信息。由于单元格之间具有相似性,因此各个单元格内设置的焊缝数量、以及预设焊接长度都是相同的。
[0040]
步骤s104,基于焊接起始点位置信息和焊接结束点位置信息,控制机器人末端的焊枪执行焊接指令。
[0041]
本发明实施例提供的一种车厢板焊接控制方法,应用于机器人平台,包括:先从参数化平台拷贝目标文件;其中,目标文件包含:参数化平台基于用户输入的车厢板信息生成的车厢板上所有单元格内各个寻位点的虚拟位置信息;然后基于预设坐标转换算法,将寻位点的虚拟位置信息转换为寻位点的实际位置信息;其中,寻位点的实际位置信息用于表示寻位点在用户坐标系下的位置信息;再基于寻位点的实际位置信息,确定焊接起始点位置信息和焊接结束点位置信息;最后基于焊接起始点位置信息和焊接结束点位置信息,控制机器人末端的焊枪执行焊接指令。本发明实施例中的机器人平台无需编程,因此可以避免编程繁琐、效率低、易出错的缺陷,并且通过从参数化平台拷贝目标文件,确定寻位点的实际位置信息进而确定焊接起始点位置信息和焊接结束点位置信息的方式可以实现智能定位,具有定位精度高的优势。
[0042]
寻位点最终用于实现焊接起始点和焊接结束点的定位,定位的整个过程概述为上述步骤s103。在一个可选的实施例中,步骤s103,基于寻位点的实际位置信息,确定焊接起始点位置信息和焊接结束点位置信息的步骤,包括:
[0043]
步骤s201,基于寻位点的实际位置信息,确定焊缝交点的位置信息。步骤s201的具体流程见下述步骤s301~步骤s303,在此不再赘述。
[0044]
步骤s202,基于焊缝交点的位置信息和预设焊接长度,确定焊接起始点位置信息和焊接结束点位置信息。
[0045]
在确定焊接起始点位置信息和焊接结束点位置信息时,除了要确定焊缝交点的位置信息和预设焊接长度,还需要确定寻位算法以及焊接起始点和焊接结束点的数量,例如:一个焊缝上可能存在一个焊接起始点和一个焊接结束点,那么表明这个焊缝都要焊接上,一个焊缝上可能存在多个焊接起始点和多个焊接结束点,也就是说,一个焊缝上有多个不相连的焊接线,其中,每一个焊接线均有一个焊接起始点和一个焊接结束点,与虚线的形式类似。
[0046]
在一个可选的实施例中,步骤s201,基于寻位点的实际位置信息,确定焊缝交点的位置信息的步骤,包括:
[0047]
步骤s301,对寻位点进行分类,得到寻位点的分类信息;
[0048]
步骤s302,基于寻位点的分类信息,确定焊缝交点的位置定位方式。
[0049]
上述位置定位方式包括但不限于:利用激光焊缝跟踪器进行多点寻位的方式,以
及通过直线方程进行求解的方式。因此本申请对焊缝交点的位置定位方式不作具体限定。激光焊缝跟踪器,可以指线激光焊缝跟踪器。
[0050]
步骤s303,利用位置定位方式,确定焊缝交点的位置信息。
[0051]
在本实施例中,以单元格的形状为长方体进行如下解释:单元格内共设有21个寻位点,焊缝交点为长方体的8个顶点,焊缝的数量为8个,分别是4条底边,以及4条侧边。将21个寻位点进行分类,分成两大类,即位于底边的12个寻位点,以及位于非底边的9个寻位点,分类信息用于表示该寻位点是否位于底边上。针对第一类位于底边的12个寻位点,焊缝交点的位置定位方式为通过直线方程进行求解的方式。具体的:通过某4个寻位点的实际位置信息即可确定底部某一个焊缝交点的位置信息。具体分析如下:两个寻位点可以确定一条直线,若两个寻位点处于一个焊缝上,另两个寻位点处于另一焊缝上,且这两个焊缝处于同一平面时,则同一平面上这两个不平行的焊缝存在交点,该交点记为焊缝交点。也就是说,利用以上四个寻位点的实际位置信息,即可获取焊缝交点的位置信息。这种方式主要是对底部4个焊缝交点的位置信息的确定。针对第二类位于非底边的9个寻位点,焊缝交点的位置定位方式为利用激光焊缝跟踪器进行多点寻位的方式。由于激光焊缝跟踪器的原理是现有的,因此本实施例不作具体介绍。
[0052]
在一个可选的实施例中,寻位点的数量为多个,步骤s301,对寻位点进行分类,得到寻位点的分类信息的步骤,包括:
[0053]
步骤s401,对所有的寻位点按照预设排列规则进行排序,并在排序后为每个寻位点分配对应的标识;
[0054]
步骤s402,基于对应的标识,确定寻位点的分类信息。
[0055]
预设排列规则可以是高度。以上述21个寻位点为例,总的来说,可以将21个寻位点分成两大类,即位于底边的12个寻位点,以及位于非底边的9个寻位点。为了便于区分各个寻位点,本实施例可以先按照寻位点的高度进行排序,为每个寻位点分配对应的标识,该标识可以是数字,也可以是字母。
[0056]
在一个可选的实施例中,在步骤s104,控制机器人末端的焊枪执行焊接指令之前,方法还包括:将焊接起始点位置信息和焊接结束点位置信息按照顺序写入对应的位置寄存器中。
[0057]
在本实施例中,焊接起始点和焊接结束点可以统称为焊接点,焊接起始点位置信息和焊接结束点位置信息可以统称为焊接点的位置信息,或称为焊接点位置。机器人末端的焊枪执行焊接指令,相当于机器人执行寻位程序,通过该程序可以自动按照焊接轨迹实现焊接。该方法可以快速的解决车厢板换型过程中需要繁琐的编程程序,以及因工装,组对导致的工件误差等技术问题,还可以通过寻位算法直接计算出焊接点位置。
[0058]
由于车厢板上存在至少一个单元格,每个单元格内存在至少一个焊缝,且每个焊缝设有至少一个焊接起始点和一个焊接结束点,因此在焊接起始点和焊接结束点数量过多的情况下,为了防止出现位置信息与焊接点不匹配的情况,一般将焊接点的位置信息按照顺序写入对应的位置寄存器中。机器人末端的焊枪在执行焊接指令时,从指定的位置寄存器中获取对应焊接点的位置信息。使用该方法只需要输入车厢板信息,按照单元格的寻位点生成点云坐标(即上述寻位点的虚拟位置信息),在经过坐标变换之后,变换为机器人末端的焊枪在寻位点的实际位置信息,将所有的寻位点按照一定的规则进行计算,可以准确
地确定焊接点的位置信息,并且可以规划出实际的焊接轨迹。
[0059]
为了便于对上述快速编程的车厢焊接方法的理解,本申请给出一个具体的实施例,如图2所示,另一种车厢板焊接控制方法包括以下步骤11~步骤s18:
[0060]
步骤s11,参数化软件输入车厢板尺寸等信息。参数化编程软件(即上述参数化软件)只需要示教寻位和焊接时的焊枪姿态。参数化软件输入车厢板尺寸等信息,自动生成车厢板每个格子内寻位点的点云即可。在示教焊枪姿态时,可以采用两种方式,一种是人工移动焊枪,一种是通过无线软件对其控制。
[0061]
步骤s12,仅生成寻位点的点云数据。其中,该点云数据可以指上述点云坐标。
[0062]
步骤s13,点云数据下载到机器人中。机器人平台上有至少一个机器人,且机器人末端有一个焊枪。
[0063]
步骤s14,点云坐标转换成机器人坐标。即:将包含点云坐标的点云数据文件(即上述目标文件)加载到机器人中,通过坐标转换算法,转换成机器人坐标。机器人坐标是指机器人末端的焊枪在用户坐标系下的寻位点处的坐标,相当于上述寻位点的实际位置信息。
[0064]
步骤s15,根据寻位点的实际位置信息采集焊缝数据。其中,焊缝数据可以理解为:焊缝交点的位置信息。在该步骤中,一方面,可以基于机器人坐标,利用机器人末端带动的激光焊缝跟踪器进行多点寻位,采集线激光与焊缝交点的位置信息。在该步骤中,另一方面,寻位点可以按照不同的方向和作用进行分类,以单元格为长方体为例,确定底部的焊缝的4个焊缝交点。
[0065]
步骤s16,利用焊缝数据计算出焊接点。也就是说,按照焊缝要求和预设焊接长度确定焊接点坐标(即焊接点位置)。
[0066]
步骤s17,焊接点分配到对应的寄存器。具体的,将计算得到的焊接点位置按照顺序分配给对应的寄存器进行存储。
[0067]
步骤s18,机器人执行焊接程序。焊接点分配完成后,执行焊接部分的程序(即焊接程序),其中,空走点使用机器人自带的偏移指令进行运动即可。步骤s11~步骤s18即是完整的另一种车厢板焊接控制方法的流程。
[0068]
在实际应用时,为了执行上述另一种车厢板焊接控制方法,本申请还可以建立一种车厢板焊接控制系统,该系统包括机器人平台和参数化平台,机器人平台和参数化平台之间的交互,如图3所示:步骤s31,机器人工作站平台与参数化平台标定。其中,机器人工作站平台指上述机器人平台。上述机器人平台上设有机器人。步骤s32,参数化,生成brd类型的寻位点数据文件。这里是指对寻位点进行参数化。步骤s33,将brd类型的寻位点数据文件拷贝到机器人。步骤s34,机器人执行预设的pc程序,读取点云数据,并将寻位点的虚拟位置信息转换为机器人坐标;步骤s35,机器人调取单元格tp类型的执行程序。步骤s36,焊缝跟踪器寻位,并且与机器人交互信息。步骤s37,经过所有的寻位,得到焊缝数据。步骤s38,机器人执行算法程序,将焊接点坐标保存在对应的寄存器中。步骤s39,机器人执行焊接部分程序。
[0069]
首先,对机器人工作站平台与参数化软件的虚拟平台(即参数化平台)进行关联,标定。具体标定方法如下:
[0070]
参数化的寻位点云坐标(即上述寻位点的虚拟坐标)为(m_find.x,m_find.y,m_find.z,m_slider,m_find.w,m_find.p,m_find.r),其中m_find.x,m_find.y,m_find.z分
别表示寻位点在空间坐标系下对应轴方向上的坐标值,而m_find.w表示导轨与空间坐标系原点之间的距离,m_find.w,m_find.p,m_find.r分别表示焊枪姿态在空间坐标系下对应轴方向上的坐标值。
[0071]
在将寻位点云坐标进行转换时,根据机器人是否带外部轴可以分为两种情况进行分析:第一种情况,当机器人带外部轴时,带外部轴的机器人坐标为(pws7.x,pws7.y,pws7.z,pws7.ext1,pws7.w,pws7.p,pws7.r),其中:
[0072]
pws7.x=m_find.x+rb[1]
[0073]
pws7.y=rb[5]-(m_find.y+rb[2])
[0074]
pws7.z=m_find.z-rb[3]
[0075]
pws7.ext1=m_slider-rb[7]
[0076]
pws7.w=m_find.w
[0077]
pws7.p=m_find.p
[0078]
pws7.r=m_find.r
[0079]
式中:pws7.x,pws7.y,pws7.z分别表示带外部轴的机器人在用户坐标系下对应轴方向上的坐标值;pws7.ext1表示导轨与用户坐标系原点之间的距离;pws7.w,pws7.p,pws7.r分别表示焊枪姿态在用户坐标系下对应轴方向上的坐标值;rb[1]表示用户坐标系下零点到平台零点在x方向上的距离;rb[2]表示用户坐标系下零点到平台零点在y方向上的距离;rb[3]表示用户坐标系下零点到平台零点在z方向上的距离;rb[5]表示用户坐标零点到平台零点的距离;rb[7]表示滑台零点到平台零点的距离。上述7个公式可以指第一种坐标转换算法。
[0080]
第二种情况,当机器人不带外部轴时,不带外部轴的机器人坐标为(pws6.x,pws6.y,pws6.z,pws6.w,pws6.p,pws6.r),其中:
[0081]
pws6.x=m_find.x+rb[1]
[0082]
pws6.y=rb[5]-(m_find.y+rb[2])+[(m_slider-rb[7])-rb[4]]
[0083]
pws6.z=m_find.z+rb[3]
[0084]
pws6.w=m_find.w
[0085]
pws6.p=m_find.p
[0086]
pws6.r=m_find.r
[0087]
式中,pws6.x,pws6.y,pws6.z分别表示不带外部轴的机器人在用户坐标系下对应轴方向上的坐标值;pws6.w,pws6.p,pws6.r分别表示不带外部轴的机器人上的焊枪姿态在用户坐标系下对应轴方向上的坐标值;rb[4]表示标定用户坐标系时的滑台当前值(带方向)。这6个公式可以指第二种坐标转换算法。
[0088]
如图4和图5所示,可以看出机器人平台上有两个滑台和4个机器人,图中的δx、ext1、δ5、δ6、δ7分别相当于rb[1]、rb[4]、rb[5]、rb[6]、rb[7]。其中,δ6=rb[6],表示用户坐标点零点到滑台中心的距离。
[0089]
总的来说,本实施例先使用参数化软件,按照车厢板的尺寸图输入相关尺寸,该软件生成包含寻位点云坐标的.brd文件(即目标文件)。然后将以上.brd文件拷贝到机器人中,机器人调用.pc程序,该程序将寻位点坐标转化成机器人的运动坐标(即机器人坐标),并且分配给对应的寄存器中进行存储。在寻位点分配结束后,一方面,机器人调用固定的
.tp程序进行寻位,另一方面,机器人末端带动激光传感器在寻位的位置打开激光,采集信息并且和机器人交互,保存所有的焊缝交点的位置信息。在采集完所有焊缝交点的位置信息之后,再进行算法运算,进而计算出所有焊接点位置并且保存到机器人中,并且写入机器人相应的寄存器中。在运算结束后,机器人执行焊接部分程序,按照焊接指令对应的pr[n]寄存器的位置值进行焊接。
[0090]
确定焊接起始点位置信息和焊接结束点位置信息的流程图,如图6所示,包括以下步骤:
[0091]
步骤s61,确定所有寻位点的实际位置信息;步骤s62,对所有寻位点按照功能进行分类。具体的,寻位点的实际位置信息按照高度进行排序,使用冒泡排序法,输出对应的序号下标作为唯一的标识。此时寻位点实现了初步分类。步骤s63,确定底部4个角的交点坐标;如图7中的a、b、c、d;底部4个角的交点坐标可以理解为上述焊缝交点的位置信息。在该步骤中,位于底部的寻位点按照
±
x,
±
y的方向分成4个方向上的寻位点,根据每个方向上的两个寻位点即可得到该方向的直线,四个方向分别对应直线l1,l2,l3,l4。由于两点式直线方程为:
[0092][0093]
设-x个方向上的两个寻位点的坐标分别为p1(x1,y1,z1),p2(x2,y2,z2),因此根据上述两点式直线方程即可得到下述直线方程:
[0094][0095]
将p1(x1,y1,z1),p2(x2,y2,z2)构成的直线记为上述直线l1,设-y方向上的两个寻位点的坐标分别为p3(x3,y3,z3),p4(x4,y4,z4),将p3(x3,y3,z3),p4(x4,y4,z4)构成的直线记为上述直线l2,并将直线l1与直线l2的交点记为底部a角的交点坐标。已知交点坐标的计算过程如下:
[0096]
a1=x2-x1;b1=y2-y1;c1=z2-z1;
[0097]
a2=x4-x3;b2=y4-y3;c2=z4-z3;
[0098]
a3=x3-x1;b3=y3-y1;c3=z3-z1;
[0099]
f1_ab=a1*a1+b1*b1+c1*c1;
[0100]
f1_cd=a2*a2+b2*b2+c2*c2;
[0101]
f2=a1*a2+b1*b2+c1*c2;
[0102]
f3_ab=a1*a3+b1*b3+c1*c3;
[0103]
f3_cd=a2*a3+b2*b3+c2*c3;
[0104]
t1=(f3_ab*f1_cd-f3_cd*f2)/(f1_ab*f1_cd-f2*f2);
[0105]
t1=(f3_cd*f1_ab-f3_ab*f2)/(f2*f2-f1_ab*f1_cd);
[0106]
x=((t1*a1+x1)+(t2*a2+x3))/2;
[0107]
y=((t1*b1+y1)+(t2*b2+y3))/2;
[0108]
z=((t1*c1+z1)+(t2*c2+z3))/2
[0109]
根据上述公式,即可得出交点坐标pa(xa,ya,za),同理可得出底部的其它三个交点坐标pb,pc和pd。
[0110]
以已知的直线l1为例进行如下分析:通过已知的直线l1上的两个寻位点坐标p1(x1,y1,z1)、p2(x2,y2,z2),交点坐标pa(xa,ya,za)、pb(xb,yb,zb),以及预设焊接长度l这些数据,可以求出该直线l1上其它的焊接点坐标,以求取图7中的p10(x10,y10,z10)为例,y10=ya+1,将y10=ya+1代入上述直线方程,可以得到用于确定x10、z10的公式:
[0111][0112][0113]
同理,依据上述流程可以求出直线l2、l3、l4上的某些焊接点坐标。
[0114]
当焊缝上有多个焊接点坐标时,对于图7中的中间焊接线的起始点坐标(即上述焊接起始点的位置信息)以及结束点坐标(即上述焊接结束点的位置信息)的计算,过程如下:先执行下述步骤s64。
[0115]
步骤s64:分别确定焊缝a-b、b-c、c-d、d-a的中间位置;以焊缝a-b为例,求a-b中点的位置y值y=(ya+yb)/2。
[0116]
步骤s65:将距离a-b中间位置两侧40mm处的位置确定为焊接起始点15、焊接结束点16,将距离b-c中间位置两侧40mm处的位置确定为焊接起始点32、焊接结束点33,将距离c-d中间位置两侧40mm处的位置确定为焊接起始点49、焊接结束点50,将距离d-a中间位置两侧40mm处的位置确定为焊接起始点66、焊接结束点67。
[0117]
将焊接起始点15的坐标记为p15(x15,y15,z15),其中y15=(ya+yb-l)/2;将y15=(ya+yb-l)/2代入上述直线方程,可以得到用于确定x15、z15的公式:
[0118][0119][0120]
基于上述两个公式可以得到焊接起始点15的坐标p15(x15,y15,z15)。
[0121]
同理,将焊接结束点16的坐标记为p16(x16,y16,z16),其中y16=(ya+yb+l)/2;将y16=(ya+yb+l)/2代入上述直线方程,可以得到用于确定x16、z16的公式:
[0122][0123][0124]
基于这两个公式可以得到焊接结束点16的坐标p16(x16,y16,z16)。底部的其他焊接点都可以使用相同的方法求出对应的坐标值,进而写入对应的pr寄存器中。
[0125]
步骤s66,确定上部4个角的交点坐标,如图7中的a1、b1、c1、d1,上部4个角的交点坐标也可以理解为上述焊缝交点的位置信息。
[0126]
先将上部寻位点按照
±
x,
±
y的方向分成4个方向上的寻位点,然后将图7中的a1角附近的-x方向的寻位点(x1,y1,z1)和-y方向的寻位点(x2,y2,z2)的坐标进行拼接,得到a1角的坐标值为pa1(x1,y2,z2);同理,其它三个角的坐标值也是其附近寻位点坐标拼接而成。
[0127]
步骤s67,将a1、b1、c1、d1的坐标均作为侧棱上焊缝的焊接点坐标。
[0128]
通过以上寻位计算,可以将焊接点坐标分配到对应的pr寄存器中。如图4和图5所
示,机器人平台上可以有4个机器人,分别是1号机器人、2号机器人、3号机器人和4号机器人,每个机器人的焊接互不干扰,可以对各个机器人进行焊接运动轨迹的确定。每个机器人在执行焊接运动轨迹时,均能够自动行走并且能够保证焊接的是工件焊接点的真实位置。
[0129]
由于车厢板的每个单元格具有相似性,并且焊接轨迹具有规律性,参数化软件只需要用户参照图纸输入车厢板信息即可快速生成所有单元格中的寻位点。又因为机器人端加入了线激光焊缝跟踪器,通过寻位点的运算能够确定一个单元格所有焊缝的焊接点信息(即上述焊接点的位置信息),进而实现完整单元格内所有焊缝的焊接。
[0130]
实施例2:
[0131]
本发明实施例提供了一种车厢板焊接控制装置,该车厢板焊接控制装置主要用于执行实施例1上述内容所提供的车厢板焊接控制方法,以下对本发明实施例提供的车厢板焊接控制装置做具体介绍。
[0132]
图8为本发明实施例提供的一种车厢板焊接控制装置的结构示意图。如图8所示,该车厢板焊接控制装置,主要包括:拷贝单元11,转换单元12,确定单元13和控制单元14,其中:
[0133]
拷贝单元11,用于从参数化平台拷贝目标文件;其中,目标文件包含:参数化平台基于用户输入的车厢板信息生成的车厢板上所有单元格内各个寻位点的虚拟位置信息;
[0134]
转换单元12,用于基于预设坐标转换算法,将寻位点的虚拟位置信息转换为寻位点的实际位置信息,其中,寻位点的实际位置信息用于表示寻位点在用户坐标系下的位置信息;
[0135]
确定单元13,用于基于寻位点的实际位置信息,确定焊接起始点位置信息和焊接结束点位置信息;
[0136]
控制单元14,用于基于焊接起始点位置信息和焊接结束点位置信息,控制机器人末端的焊枪执行焊接指令。
[0137]
本发明实施例提供的一种车厢板焊接控制装置,应用于机器人平台,包括:先利用拷贝单元11从参数化平台拷贝目标文件;其中,目标文件包含:参数化平台基于用户输入的车厢板信息生成的车厢板上所有单元格内各个寻位点的虚拟位置信息;然后基于预设坐标转换算法,利用转换单元将寻位点的虚拟位置信息转换为寻位点的实际位置信息;其中,寻位点的实际位置信息用于表示寻位点在用户坐标系下的位置信息;再基于寻位点的实际位置信息,利用确定单元13确定焊接起始点位置信息和焊接结束点位置信息;最后基于焊接起始点位置信息和焊接结束点位置信息,利用控制单元14控制机器人末端的焊枪执行焊接指令。本发明实施例中的机器人平台无需编程,因此可以避免编程繁琐、效率低、易出错的缺陷,并且通过从参数化平台拷贝目标文件,确定寻位点的实际位置信息进而确定焊接起始点位置信息和焊接结束点位置信息的方式可以实现智能定位,具有定位精度高的优势。
[0138]
可选地,确定单元13包括第一确定模块和第二确定模块,其中:
[0139]
第一确定模块,用于基于寻位点的实际位置信息,确定焊缝交点的位置信息;
[0140]
第二确定模块,用于基于焊缝交点的位置信息和预设焊接长度,确定焊接起始点位置信息和焊接结束点位置信息。
[0141]
可选地,第一确定模块包括分类子模块、第一确定子模块和第二确定子模块,其中:
[0142]
分类子模块,用于对寻位点进行分类,得到寻位点的分类信息;
[0143]
第一确定子模块,用于基于寻位点的分类信息,确定焊缝交点的位置定位方式;
[0144]
第二确定子模块,用于利用位置定位方式,确定焊缝交点的位置信息。
[0145]
可选地,寻位点的数量为多个,分类子模块,还用于:对所有的寻位点按照预设排列规则进行排序,并在排序后为每个寻位点分配对应的标识;基于对应的标识,确定寻位点的分类信息。
[0146]
可选地,位置定位方式包括:利用激光焊缝跟踪器进行多点寻位的方式,和/或,通过直线方程进行求解的方式。
[0147]
可选地,该装置还包括:关联标定单元,用于对机器人平台和参数化平台进行关联与标定,以建立预设坐标转换算法。
[0148]
可选地,该装置还包括:写入单元,用于将焊接起始点位置信息和焊接结束点位置信息按照顺序写入对应的位置寄存器中。
[0149]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0150]
在一个可选的实施例中,本实施例还提供一种电子设备,包括存储器、处理器,存储器中存储有可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述方法实施例方法的步骤。
[0151]
在一个可选的实施例中,本实施例还提供了一种具有处理器可执行的非易失的程序代码的计算机可读介质,其中,所述程序代码使所述处理器执行上述方法实施例方法。
[0152]
在本实施例的描述中,需要说明的是,术语“中”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本实施例的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
[0153]
在本实施例所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0154]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0155]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0156]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软
件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0157]
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1