焊缝跟踪点的滤波处理方法、装置、电子设备及存储介质转让专利

申请号 : CN202110188786.4

文献号 : CN112562002B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 赵天光曹文波易京亚岑洎涛马章宇

申请人 : 季华实验室

摘要 :

本发明提供了一种焊缝跟踪点的滤波处理方法、装置、电子设备及存储介质,通过获取实时焊缝跟踪点的初步位置数据;根据所述初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的偏差,判断所述初步位置数据是否为有效数据;若所述初步位置数据为有效数据,则把所述初步位置数据写入所述数据容器的最后位置,并对所述数据容器中的焊缝跟踪点位置数据进行滤波处理;提取滤波处理后的所述数据容器中最后一个焊缝跟踪点位置数据作为所述实时焊缝跟踪点的最终位置数据;从而可避免因为抖动而导致焊缝跟踪位置与真实的焊缝位置偏离过大,保证自动化焊接过程的准确性和平稳性。

权利要求 :

1.一种焊缝跟踪点的滤波处理方法,应用于实时焊缝跟踪系统,其特征在于,包括步骤:

A1.获取实时焊缝跟踪点的初步位置数据;

A2.根据所述初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的偏差,判断所述初步位置数据是否为有效数据;

A3.若所述初步位置数据为有效数据,则把所述初步位置数据写入所述数据容器的最后位置,并对所述数据容器中的焊缝跟踪点位置数据进行滤波处理;

A4.提取滤波处理后的所述数据容器中最后一个焊缝跟踪点位置数据作为所述实时焊缝跟踪点的最终位置数据;

若所述初步位置数据为无效数据,则重新获取所述实时焊缝跟踪点的初步位置数据;

步骤A2之后,还包括:

A5.若初步位置数据为无效数据,则超阈值计数累加1;

A6.判断所述超阈值计数是否大于预设计数阈值;

A7.若是,则把所述数据容器置空,并把所述超阈值计数置零;

每往数据容器中写入一次初步数据,则把超阈值计数置零一次。

2.根据权利要求1所述的焊缝跟踪点的滤波处理方法,其特征在于,焊缝跟踪点的位置数据包括二维坐标系的两个坐标数据,或者焊缝跟踪点的位置数据包括三维坐标系的三个坐标数据。

3.根据权利要求1所述的焊缝跟踪点的滤波处理方法,其特征在于,步骤A2包括:计算所述初步位置数据与所述数据容器中的最后一个焊缝跟踪点位置数据之间的距离数据;

若所述距离数据大于预设的第一偏差阈值,则判定所述初步位置数据为无效数据,否则,判定所述初步位置数据为有效数据。

4.根据权利要求1所述的焊缝跟踪点的滤波处理方法,其特征在于,步骤A2包括:分别计算所述初步位置数据的各个坐标与所述数据容器中最后一个焊缝跟踪点位置数据的各个坐标之间的差值绝对值;

若至少一个坐标的差值绝对值大于预设的第二偏差阈值,则判定所述初步位置数据为无效数据,否则,判定所述初步位置数据为有效数据。

5.根据权利要求1所述的焊缝跟踪点的滤波处理方法,其特征在于,所述滤波处理的滤波窗口大小与所述数据容器的大小相等;

步骤A3包括:

把所述初步位置数据写入所述数据容器的最后位置之后,判断所述数据容器是否装满;

若是,才对所述数据容器中的焊缝跟踪点位置数据进行滤波处理。

6.根据权利要求5所述的焊缝跟踪点的滤波处理方法,其特征在于,步骤A3包括:判断所述数据容器是否装满;

若否,则直接把所述初步位置数据写入所述数据容器的最后;

若是,则先擦除所述数据容器中的第一个焊缝跟踪点位置数据,再把所述初步位置数据写入所述数据容器的最后。

7.一种焊缝跟踪点的滤波处理装置,应用于实时焊缝跟踪系统,其特征在于,包括:第一获取模块,获取实时焊缝跟踪点的初步位置数据;

第一判断模块,用于根据所述初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的偏差,判断所述初步位置数据是否为有效数据;

第一处理模块,用于在所述初步位置数据为有效数据时,把所述初步位置数据写入所述数据容器的最后位置,并对所述数据容器中的焊缝跟踪点位置数据进行滤波处理;

提取模块,用于提取滤波处理后的所述数据容器中最后一个焊缝跟踪点位置数据作为所述实时焊缝跟踪点的最终位置数据;

若所述初步位置数据为无效数据,则第一获取模块重新获取所述实时焊缝跟踪点的初步位置数据;

所述焊缝跟踪点的滤波处理装置,还包括:累加模块,用于在初步位置数据为无效数据时,使超阈值计数累加1;

第四判断模块,用于判断所述超阈值计数是否大于预设计数阈值;

复位模块,用于在超阈值计数大于预设计数阈值时,把所述数据容器置空,并把所述超阈值计数置零;

复位模块还用于在每往数据容器中写入一次初步数据时,把超阈值计数置零一次。

8.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如权利要求1‑6任一项所述的焊缝跟踪点的滤波处理方法的步骤。

9.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时运行如权利要求1‑6任一项所述的焊缝跟踪点的滤波处理方法的步骤。

说明书 :

焊缝跟踪点的滤波处理方法、装置、电子设备及存储介质

技术领域

[0001] 本发明涉及焊接技术领域,尤其涉及一种焊缝跟踪点的滤波处理方法、装置、电子设备及存储介质。

背景技术

[0002] 焊接技术是一种重要的技术。如今,焊接技术已被广泛应用于建筑、航天航空、汽车、船舶等工业机械制造行业中。随着工业技术的发展,避免人员在恶劣环境下进行工作的
需求变得越来越迫切。焊接作业时通常处于恶劣的环境中,因而急需要自动化的焊接技术
实现自动化焊接。
[0003] 在自动化焊接工作中,通常需要对焊缝进行实时跟踪,进而指导焊枪沿着焊缝进行准确焊接作业。随着技术的发展,焊接跟踪的自动化及智能化已成为必然趋势。其中,实
时焊缝跟踪、检测、纠偏是实现焊接自动化的关键。目前,为实现自动化焊接,会在焊枪前端
安装焊缝跟踪传感器,通过传感器和控制结构实现焊缝跟踪控制。
[0004] 目前,由于视觉传感器(如激光视觉传感器)具有非接触的传感方式,能够有效提高焊缝跟踪的灵敏度和检测精度,因此常常会使用视觉传感器作为焊缝跟踪传感器。然而,
在实际的焊接过程中,可能存在不同因素的抖动,如工件本身的缺陷及瑕疵、飞溅、送丝抖
动、机械臂及传感器的突然抖动等系统抖动因素,这些抖动不仅会影响焊接的精度和稳定
性,甚至会使得实时跟踪系统输出的焊缝跟踪位置信号与真实的焊缝位置偏离过大而无法
实现焊缝跟踪。
[0005] 因此,需要寻求一种能够避免因为抖动而导致焊缝跟踪位置与真实的焊缝位置偏离过大的焊缝跟踪点的滤波处理方法,以保证自动化焊接过程的准确性和平稳性。

发明内容

[0006] 鉴于上述现有技术的不足之处,本申请实施例的目的在于提供一种能够避免因为抖动而导致焊缝跟踪位置与真实的焊缝位置偏离过大的焊缝跟踪点的滤波处理方法,以保
证自动化焊接过程的准确性和平稳性。
[0007] 第一方面,本申请实施例提供一种焊缝跟踪点的滤波处理方法,应用于实时焊缝跟踪系统,包括步骤:
[0008] A1.获取实时焊缝跟踪点的初步位置数据;
[0009] A2.根据所述初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的偏差,判断所述初步位置数据是否为有效数据;
[0010] A3.若所述初步位置数据为有效数据,则把所述初步位置数据写入所述数据容器的最后位置,并对所述数据容器中的焊缝跟踪点位置数据进行滤波处理;
[0011] A4.提取滤波处理后的所述数据容器中最后一个焊缝跟踪点位置数据作为所述实时焊缝跟踪点的最终位置数据。
[0012] 所述的焊缝跟踪点的滤波处理方法中,焊缝跟踪点的位置数据包括二维坐标系的两个坐标数据,或者焊缝跟踪点的位置数据包括三维坐标系的三个坐标数据。
[0013] 一些实施方式中,步骤A2包括:
[0014] 计算所述初步位置数据与所述数据容器中的最后一个焊缝跟踪点位置数据之间的距离数据;
[0015] 若所述距离数据大于预设的第一偏差阈值,则判定所述初步位置数据为无效数据,否则,判定所述初步位置数据为有效数据。
[0016] 一些实施方式中,步骤A2包括:
[0017] 分别计算所述初步位置数据的各个坐标与所述数据容器中最后一个焊缝跟踪点位置数据的各个坐标之间的差值绝对值;
[0018] 若至少一个坐标的差值绝对值大于预设的第二偏差阈值,则判定所述初步位置数据为无效数据,否则,判定所述初步位置数据为有效数据。
[0019] 所述的焊缝跟踪点的滤波处理方法中,所述滤波处理的滤波窗口大小与所述数据容器的大小相等;
[0020] 步骤A3包括:
[0021] 把所述初步位置数据写入所述数据容器的最后位置之后,判断所述数据容器是否装满;
[0022] 若是,才对所述数据容器中的焊缝跟踪点位置数据进行滤波处理。
[0023] 进一步的,步骤A3包括:
[0024] 判断所述数据容器是否装满;
[0025] 若否,则直接把所述初步位置数据写入所述数据容器的最后;
[0026] 若是,则先擦除所述数据容器中的第一个焊缝跟踪点位置数据,再把所述初步位置数据写入所述数据容器的最后。
[0027] 所述的焊缝跟踪点的滤波处理方法中,步骤A2之后,还包括:
[0028] A5.若初步位置数据为无效数据,则超阈值计数累加1;
[0029] A6.判断所述超阈值计数是否大于预设计数阈值;
[0030] A7.若是,则把所述数据容器置空,并把所述超阈值计数置零。
[0031] 第二方面,本申请实施例提供一种焊缝跟踪点的滤波处理装置,应用于实时焊缝跟踪系统,包括:
[0032] 第一获取模块,获取实时焊缝跟踪点的初步位置数据;
[0033] 第一判断模块,用于根据所述初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的偏差,判断所述初步位置数据是否为有效数据;
[0034] 第一处理模块,用于在所述初步位置数据为有效数据时,把所述初步位置数据写入所述数据容器的最后位置,并对所述数据容器中的焊缝跟踪点位置数据进行滤波处理;
[0035] 提取模块,用于提取滤波处理后的所述数据容器中最后一个焊缝跟踪点位置数据作为所述实时焊缝跟踪点的最终位置数据。
[0036] 第三方面,本申请实施例提供一种电子设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行
如所述的焊缝跟踪点的滤波处理方法的步骤。
[0037] 第四方面,本申请实施例提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如所述的焊缝跟踪点的滤波处理方法的步骤。
[0038] 有益效果:
[0039] 本申请实施例提供的一种焊缝跟踪点的滤波处理方法、装置、电子设备及存储介质,通过获取实时焊缝跟踪点的初步位置数据;根据所述初步位置数据与预设的数据容器
中的最后一个焊缝跟踪点位置数据之间的偏差,判断所述初步位置数据是否为有效数据;
若所述初步位置数据为有效数据,则把所述初步位置数据写入所述数据容器的最后位置,
并对所述数据容器中的焊缝跟踪点位置数据进行滤波处理;提取滤波处理后的所述数据容
器中最后一个焊缝跟踪点位置数据作为所述实时焊缝跟踪点的最终位置数据;从而可避免
因为抖动而导致焊缝跟踪位置与真实的焊缝位置偏离过大,保证自动化焊接过程的准确性
和平稳性。

附图说明

[0040] 图1为本申请实施例提供的焊缝跟踪点的滤波处理方法的流程图。
[0041] 图2为本申请实施例提供的焊缝跟踪点的滤波处理装置的模块图。
[0042] 图3为本申请实施例提供的电子设备的结构示意图。
[0043] 图4为实施例中,没有采用本申请实施例提供的焊缝跟踪点的滤波处理方法时的焊缝跟踪点的Z轴位置分布图。
[0044] 图5为实施例中,采用本申请实施例提供的焊缝跟踪点的滤波处理方法时的焊缝跟踪点的Z轴位置分布图。

具体实施方式

[0045] 下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在
此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因
此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的
范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做
出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0046] 应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的
描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0047] 请参阅图1,本申请实施例提供一种焊缝跟踪点的滤波处理方法,应用于实时焊缝跟踪系统,包括步骤:
[0048] A1.获取实时焊缝跟踪点的初步位置数据;
[0049] A2.根据初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据(即数据容器中排在最后的焊缝跟踪点的位置数据)之间的偏差,判断该初步位置数据是否为
有效数据;
[0050] A3.若该初步位置数据为有效数据,则把初步位置数据写入数据容器的最后位置,并对数据容器中的焊缝跟踪点位置数据进行滤波处理;
[0051] A4.提取滤波处理后的数据容器中最后一个焊缝跟踪点位置数据作为该实时焊缝跟踪点的最终位置数据。
[0052] 其中,上述的实时焊缝跟踪系统在焊枪前端安装焊缝跟踪传感器,用以获取实时焊缝跟踪点的初步位置数据,其中的实时焊缝跟踪点是指焊枪前方还未进行焊接的坡口位
置点。
[0053] 从而,步骤A1中,通过焊缝跟踪传感器获取实时焊缝跟踪点的初步位置数据。例如,在一些实施方式中,焊缝跟踪传感器为视觉传感器(如激光3D相机),则步骤A1包括:获
取焊缝跟踪传感器实时采集的原始帧数据;通过图像分析的方法对该原始帧数据进行分析
计算,得到实时焊缝跟踪点的初步位置数据。
[0054] 在实际应用中,在刚开始进行焊接时(或开始另一段焊缝的焊接时),数据容器为空,从而此时无法执行步骤A2,此时,可以把步骤A1中获取的初步位置数据直接判定为有效
数据,从而,在一些实施方式中,步骤A1之后,还包括:
[0055] A8.判断预设的数据容器是否为空;
[0056] A9.若是,则判定所述初步位置数据为有效数据并以所述初步位置数据作为所述实时焊缝跟踪点的最终位置数据;否则,执行步骤A2。
[0057] 在刚开始进行焊接时(或开始另一段焊缝的焊接时),数据容器为空,从而此时无法执行步骤A2,此时,也可以先重复获取所述实时焊缝跟踪点的多个初步位置数据,再根据
该多个初步位置数据确定最终有效的初步位置数据,从而避免由于第一个焊缝跟踪点的位
置数据不准确而导致后续焊缝跟踪点的初步位置数据有效性的判断不准确;从而,在一些
实施方式中,步骤A1之后,还包括:
[0058] A10.判断预设的数据容器是否为空;
[0059] A11.若是,则再获取所述实时焊缝跟踪点的多个初步位置数据,并根据所有初步位置数据计算最终有效的初步位置数据,并判定所述最终有效的初步位置数据为有效数
据,且以所述最终有效的初步位置数据作为所述实时焊缝跟踪点的最终位置数据;否则,执
行步骤A2。
[0060] 其中,根据所有初步位置数据计算最终有效的初步位置数据的方法可以是:计算所有初步位置数据的平均位置数据作为所述实时焊缝跟踪点的最终有效的初步位置数据
(当位置数据包括多个坐标值时,分别计算各坐标的平均值作为最终有效的初步位置数据
的各坐标值)。也可以在计算得到所有初步位置数据的平均位置数据后,以离该平均位置数
据最近的初步位置数据作为所述实时焊缝跟踪点的最终有效的初步位置数据。其中,在获
取所述实时焊缝跟踪点的多个初步位置数据时,保持焊缝跟踪传感器的位置不移动,从而
在同一位置多次采集初步位置数据,从而保证多次获取的初步位置数据均是对应“同一实
时焊缝跟踪点”的集初步位置数据。
[0061] 一般地,若初步位置数据与数据容器中的最后一个焊缝跟踪点位置数据之间的偏差过大,通常是由于系统抖动而导致获取的跟踪点位置错误,从而引起偏差过大,因此,可
以把该焊缝跟踪点的位置数据舍弃并重新获取其初步位置数据(即保持焊缝跟踪传感器的
位置不移动,并重新获取实时焊缝跟踪点的初步位置数据),从而避免无效跟踪点造成对滤
波处理时的影响,大大提高了可靠性,且实时地防止因系统抖动造成跟踪系统输出的焊缝
跟踪位置信号与真实的焊缝位置偏离过大而使得无法实现正确焊接的问题。
[0062] 在一些实施方式中,焊缝只在水平面内延伸,在高度方向上的位置没有变化(例如焊件为平板),此时,焊缝跟踪传感器可以是2D传感器(例如2D相机),从而,焊缝跟踪点的位
置数据可包括二维坐标系(包括相互垂直的X轴和Y轴)的两个坐标数据(X坐标、Y坐标);焊
缝跟踪传感器也可以是3D传感器(例如3D相机),从而,焊缝跟踪点的位置数据可包括三维
坐标系(包括相互垂直的X轴、Y轴和Z轴)的三个坐标数据(X坐标、Y坐标和Z坐标)。
[0063] 在另一些实施方式中,焊缝在高度方向上的位置有变化(例如焊件为非平板状工件),此时,焊缝跟踪传感器应该为3D传感器(例如3D相机),从而,焊缝跟踪点的位置数据包
括三维坐标系(包括相互垂直的X轴、Y轴和Z轴)的三个坐标数据(X坐标、Y坐标和Z坐标)。
[0064] 步骤A2中,进行实时焊缝跟踪点的有效性判断的方法有很多。
[0065] 例如,在一些实施方式中,步骤A2包括:
[0066] A201.计算初步位置数据与数据容器中的最后一个焊缝跟踪点位置数据之间的距离数据;
[0067] A202.若距离数据大于预设的第一偏差阈值,则判定初步位置数据为无效数据,否则,判定初步位置数据为有效数据。
[0068] 即,在该实施方式中,初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的偏差,是指两者之间的距离。
[0069] 若焊缝跟踪点的位置数据只包括X坐标、Y坐标,则步骤A201中可根据以下公式计算该距离数据:
[0070]
[0071] 其中,d为距离数据,X0为初步位置数据的X坐标值,Y0为初步位置数据的Y坐标值,X1为数据容器中的最后一个焊缝跟踪点位置数据的X坐标值,Y1为数据容器中的最后一个
焊缝跟踪点位置数据的Y坐标值。
[0072] 若焊缝跟踪点的位置数据包括X坐标、Y坐标、Z坐标,则步骤A201中可根据以下公式计算该距离数据:
[0073]
[0074] 其中,d为距离数据,X0为初步位置数据的X坐标值,Y0为初步位置数据的Y坐标值,Z0为初步位置数据的Z坐标值,X1为数据容器中的最后一个焊缝跟踪点位置数据的X坐标
值,Y1为数据容器中的最后一个焊缝跟踪点位置数据的Y坐标值,Z1为数据容器中的最后一
个焊缝跟踪点位置数据的Z坐标值。
[0075] 其中,第一偏差阈值可根据实际需要进行设置。
[0076] 例如,在另一些实施方式中,步骤A2包括:
[0077] A203.分别计算初步位置数据的各个坐标与数据容器中最后一个焊缝跟踪点位置数据的各个坐标之间的差值绝对值;
[0078] A204.若至少一个坐标的差值绝对值大于预设的第二偏差阈值,则判定初步位置数据为无效数据,否则,判定初步位置数据为有效数据。
[0079] 即,在该实施方式中,初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的偏差,包括初步位置数据的各坐标值与数据容器中的最后一个焊缝跟踪点
位置数据的各坐标值之间的差值的绝对值。
[0080] 若焊缝跟踪点的位置数据只包括X坐标、Y坐标,则步骤A203中计算X坐标的差值绝对值△X=|X‑X1|,和Y坐标的差值绝对值△Y=|Y‑Y1|,步骤A204中只要△X、△Y中至少有一
个大于第二偏差阈值,则判定初步位置数据为无效数据。若焊缝跟踪点的位置数据还包括Z
坐标,则步骤A203中还计算Z坐标的差值绝对值△Z=|Z‑Z1|,步骤A204中只要△X、△Y、△Z
中至少有一个大于第二偏差阈值,则判定初步位置数据为无效数据。
[0081] 在实际应用中,可单独采用上述两种方式之一来判断实时焊缝跟踪点的有效性。也可结合上述两种方式进行判断,此时,步骤A2包括:计算初步位置数据与数据容器中的最
后一个焊缝跟踪点位置数据之间的距离数据;分别计算初步位置数据的各个坐标与数据容
器中最后一个焊缝跟踪点位置数据的各个坐标之间的差值绝对值;若距离数据大于预设的
第一偏差阈值或者至少一个坐标的差值绝对值大于预设的第二偏差阈值,则判定初步位置
数据为无效数据,否则,判定初步位置数据为有效数据。采用这种方式,与单独采用一种方
式相比,能够更加有效地避免无效跟踪点影响滤波处理。
[0082] 其中,数据容器是具有固定存储空间的虚拟容器,最多可放入N个焊缝跟踪点的位置数据,其中N是预设的正整数。
[0083] 在本实施例中,步骤A3中的滤波处理的滤波窗口大小与数据容器的大小相等,即滤波窗口大小D=N。其中,具体滤波方法可根据实际需要进行选取,其滤波窗口的大小可以
根据实际需要进行设置,当确定好滤波方法滤波窗口的大小后,数据容器的大小设置为相
同大小即可。例如,滤波方法为均值滤波,滤波窗口的大小为7‑10,相应地,数据容器的大小
为7‑10;但不限于此。
[0084] 从而,步骤A3包括:
[0085] 把初步位置数据写入数据容器的最后位置之后,判断数据容器是否装满;
[0086] 若是,才对数据容器中的焊缝跟踪点位置数据进行滤波处理。
[0087] 一般地,只有在焊接刚开始时(或刚开始另一段焊缝的焊接时),才会存在数据容器没装满的情况,此时,由于数据容器中的位置数据数量不足够进行滤波处理,因此不进行
滤波处理,从而步骤A4得到的实时焊缝跟踪点的最终位置数据等于初步位置数据。
[0088] 进一步的,由于数据容器的大小是固定的,当数据容器已经装满后,再往数据容器中写入数据时,需要把在先的数据擦除,才能写入,从而,步骤A3还包括:
[0089] 判断数据容器是否装满;
[0090] 若否,则直接把初步位置数据写入数据容器的最后;
[0091] 若是,则先擦除数据容器中的第一个焊缝跟踪点位置数据(即数据容器中位置排在第一的焊缝跟踪点的位置数据),再把初步位置数据写入数据容器的最后。
[0092] 实际上,由于滤波处理的具体方法可根据实际需要进行选择,也可预设多个具有不同滤波窗口长度的滤波处理方法,在数据容器没有装满时,可根据数据容器中的焊缝跟
踪点位置数据的实际数量选用对应滤波窗口长度的滤波处理方法进行滤波处理,从而有利
于进一步提高焊缝跟踪位置的准确性。此时,步骤A3包括:获取数据容器的焊缝跟踪点位置
数据的数量,选取多个预设的滤波处理方法中的滤波窗口长度与该数量相等的滤波处理方
法对数据容器中的焊缝跟踪点位置数据进行滤波处理。
[0093] 有时候,焊缝本实是分为多段的,段与段之间实际存在阶跃抖动(即段与段之间在至少一个坐标方向上存在跳跃的情况,例如,某一段焊缝的高度比前一段焊缝的高度大),
在段与段的交替位置处,也会存在初步位置数据与数据容器中的最后一个焊缝跟踪点位置
数据之间的偏差过大的情况,但与由于系统抖动而导致偏差过大的情况相比,阶跃抖动必
然会引起连续多次重新获取的实时焊缝跟踪点的初步位置数据均与数据容器中的最后一
个焊缝跟踪点位置数据之间的偏差过大;因此,在一些优选实施方式中,步骤A2之后,还包
括:
[0094] A5.若初步位置数据为无效数据,则超阈值计数累加1;
[0095] A6.判断超阈值计数是否大于预设计数阈值;
[0096] A7.若是,则把数据容器置空,并把超阈值计数置零。
[0097] 其中,计数阈值可根据实际需要进行设置。一旦超阈值计数大于预设计数阈值,则表示存在阶跃抖动,且此时的实时焊缝跟踪点为另一段焊缝上的焊缝跟踪点,把数据容器
置空后,下一次获取的实时焊缝跟踪点的初步位置数据将直接放入数据容器中。从而避免
了一直把有效的初步位置数据当作无效数据而使焊接过程中断。
[0098] 需要说明的是,每往数据容器中写入一次初步数据,则把超阈值计数置零一次,从而避免由于系统抖动导致断续地出现多次无效数据而使超阈值计数积累至大于预设计数
阈值,从而误判为阶跃抖动而影响焊接的精度的情况。
[0099] 本领域技术人员应当理解的是,在一个完整的焊接过程中,会循环执行上述的步骤,以此遍历整个焊接作业过程。因此,数据容器中的位置数据从写入数据容器到被擦除的
时间段内,会经过多次滤波处理,每次滤波处理后其数值均会发生变化,经过试验发现,与
“直接用在先确定的焊缝跟踪点位置数据和本次获取的初步位置数据进行滤波以确定实时
焊缝跟踪点的最终位置数据”的处理方法相比,这种“用数据容器中的焊缝跟踪点位置数据
进行滤波处理以确定实时焊缝跟踪点的最终位置数据”的处理方法最终得到的焊缝跟踪位
置更加准确,自动化焊接过程更加平稳。
[0100] 在一个具体实施例中,实时焊缝跟踪系统包括视觉传感器,6轴焊接机器人、焊机、焊枪和工控机,其中,由工控机执行上述的焊缝跟踪点的滤波处理方法。其中,视觉传感器
为激光3D相机,该激光3D相机能够直接获焊接工件的焊缝轮廓。采用的焊接工件的坡口为
普通坡口类型。采用前述的步骤A203‑A204来判断实时焊缝跟踪点的有效性,且第二偏差阈
值为3mm。预设计数阈值为2。选用的滤波处理方法为均值滤波且滤波窗口大小为9(数据容
器的大小为9)。实际焊缝分为三段,其中第一段和第二段之间、第二段与第三段之间均存在
阶跃抖动。焊接时,令焊枪沿着工件表面Y轴以固定的速度移动,激光3D相机实时采集坡口
数据,并输出各焊缝跟踪点的最终位置数据,其中Z坐标的输出结果如图5所示,与之相比,
图4为不采用该焊缝跟踪点的滤波处理方法时得到的Z坐标的输出结果。
[0101] 从图中可以看出,当不采用该焊缝跟踪点的滤波处理方法时,焊缝跟踪点的位置数据滤波效果较差,焊缝跟踪点的位置抖动比较明显,且出现很多由于系统抖动而输出的
错误跟踪点,无法保证实际所需焊接区的焊枪平稳地运行;此外,在第一段和第二段之间、
第二段与第三段之间由于阶跃抖动而出现大量错误跟踪点,会导致焊接错误。与之相比,当
采用该焊缝跟踪点的滤波处理方法时,焊缝跟踪点的位置数据滤波效果好,焊缝跟踪点的
位置抖动不明显,且没有出现由于系统抖动而输出的错误跟踪点,可保证实际所需焊接区
的焊枪平稳地运行;此外,在第一段和第二段之间、第二段与第三段之间不会由于阶跃抖动
而出现大量错误跟踪点,从而避免因为阶跃抖动而引起的焊接错误。
[0102] 由上可知,该焊缝跟踪点的滤波处理方法,通过获取实时焊缝跟踪点的初步位置数据;根据所述初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的
偏差,判断所述初步位置数据是否为有效数据;若所述初步位置数据为有效数据,则把所述
初步位置数据写入所述数据容器的最后位置,并对所述数据容器中的焊缝跟踪点位置数据
进行滤波处理;提取滤波处理后的所述数据容器中最后一个焊缝跟踪点位置数据作为所述
实时焊缝跟踪点的最终位置数据;从而可避免因为抖动而导致焊缝跟踪位置与真实的焊缝
位置偏离过大,保证自动化焊接过程的准确性和平稳性。具体来说,通过预先构建的一个有
效的更新容器,从而能过够实时地防止因系统抖动造成跟踪系统输出的焊缝跟踪位置信号
与真实的焊缝位置偏离过大而使得无法实现正确焊接的问题;对得到的坡口位置坐标进行
滤波处理,提高了数据的平稳性和可靠性;该方法涵盖了焊缝跟踪点实时判断检查纠偏,避
免因获得无效跟踪点而造成对滤波处理时的影响,大大提高了可靠性;该方法能满足焊缝
跟踪系统的要求,与所采用的滤波类型无关,可兼容不同的滤波类型,能根据实时的焊缝跟
踪点信号进行各种滤波类型进行滤波。
[0103] 请参阅图2,本申请实施例还提供一种焊缝跟踪点的滤波处理装置,应用于实时焊缝跟踪系统,包括第一获取模块1、第一判断模块2、第一处理模块3、提取模块4;
[0104] 其中,第一获取模块1,获取实时焊缝跟踪点的初步位置数据;
[0105] 其中,第一判断模块2,用于根据初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的偏差,判断初步位置数据是否为有效数据;
[0106] 其中,第一处理模块3,用于在初步位置数据为有效数据时,把初步位置数据写入数据容器的最后位置,并对数据容器中的焊缝跟踪点位置数据进行滤波处理;
[0107] 其中,提取模块4,用于提取滤波处理后的数据容器中最后一个焊缝跟踪点位置数据作为实时焊缝跟踪点的最终位置数据。
[0108] 其中,上述的实时焊缝跟踪系统在焊枪前端安装焊缝跟踪传感器,用以获取实时焊缝跟踪点的初步位置数据,其中的实时焊缝跟踪点是指焊枪前方还未进行焊接的坡口位
置点。
[0109] 从而,第一获取模块1通过焊缝跟踪传感器获取实时焊缝跟踪点的初步位置数据。例如,在一些实施方式中,焊缝跟踪传感器为视觉传感器(如激光3D相机),则第一获取模块
1在获取实时焊缝跟踪点的初步位置数据时:获取焊缝跟踪传感器实时采集的原始帧数据;
通过图像分析的方法对该原始帧数据进行分析计算,得到实时焊缝跟踪点的初步位置数
据。
[0110] 在实际应用中,在刚开始进行焊接时(或开始另一段焊缝的焊接时),数据容器为空,此时,可以把第一获取模块1获取的初步位置数据直接判定为有效数据,从而,在一些实
施方式中,该焊缝跟踪点的滤波处理装置还包括:
[0111] 第二判断模块,用于判断预设的数据容器是否为空;
[0112] 第一执行模块,用于在数据容器为空时,判定所述初步位置数据为有效数据,并以所述初步位置数据作为所述实时焊缝跟踪点的最终位置数据;
[0113] 且,只有在数据容器不为空时,第一判断模块2才执行:根据初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的偏差,判断初步位置数据是否为有效
数据。
[0114] 在刚开始进行焊接时(或开始另一段焊缝的焊接时),数据容器为空,此时,也可以先重复获取所述实时焊缝跟踪点的多个初步位置数据,再根据该多个初步位置数据确定最
终有效的初步位置数据,从而避免由于第一个焊缝跟踪点的位置数据不准确而导致后续焊
缝跟踪点的初步位置数据有效性的判断不准确;从而,在一些实施方式中,该焊缝跟踪点的
滤波处理装置还包括:
[0115] 第三判断模块,用于判断预设的数据容器是否为空;
[0116] 第二执行模块,用于在数据容器为空时,再获取所述实时焊缝跟踪点的多个初步位置数据,并根据所有初步位置数据计算最终有效的初步位置数据,并判定所述最终有效
的初步位置数据为有效数据,且以所述最终有效的初步位置数据作为所述实时焊缝跟踪点
的最终位置数据;
[0117] 且,只有在数据容器不为空时,第一判断模块2才执行:根据初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的偏差,判断初步位置数据是否为有效
数据。
[0118] 其中,根据所有初步位置数据计算最终有效的初步位置数据的方法可以是:计算所有初步位置数据的平均位置数据作为所述实时焊缝跟踪点的最终有效的初步位置数据
(当位置数据包括多个坐标值时,分别计算各坐标的平均值作为最终有效的初步位置数据
的各坐标值)。也可以在计算得到所有初步位置数据的平均位置数据后,以离该平均位置数
据最近的初步位置数据作为所述实时焊缝跟踪点的最终有效的初步位置数据。其中,在获
取所述实时焊缝跟踪点的多个初步位置数据时,保持焊缝跟踪传感器的位置不移动,从而
在同一位置多次采集初步位置数据,从而保证多次获取的初步位置数据均是对应“同一实
时焊缝跟踪点”的集初步位置数据。
[0119] 一般地,若初步位置数据与数据容器中的最后一个焊缝跟踪点位置数据之间的偏差过大,通常是由于系统抖动而导致获取的跟踪点位置错误,从而引起偏差过大,因此,可
以把该焊缝跟踪点的位置数据舍弃并重新获取其初步位置数据(即保持焊缝跟踪传感器的
位置不移动,第一获取模块1重新获取实时焊缝跟踪点的初步位置数据),从而避免无效跟
踪点造成对滤波处理时的影响,大大提高了可靠性,且实时地防止因系统抖动造成跟踪系
统输出的焊缝跟踪位置信号与真实的焊缝位置偏离过大而使得无法实现正确焊接的问题。
[0120] 在一些实施方式中,焊缝只在水平面内延伸,在高度方向上的位置没有变化(例如焊件为平板),此时,焊缝跟踪传感器可以是2D传感器(例如2D相机),从而,焊缝跟踪点的位
置数据可包括二维坐标系(包括相互垂直的X轴和Y轴)的两个坐标数据(X坐标、Y坐标);焊
缝跟踪传感器也可以是3D传感器(例如3D相机),从而,焊缝跟踪点的位置数据可包括三维
坐标系(包括相互垂直的X轴、Y轴和Z轴)的三个坐标数据(X坐标、Y坐标和Z坐标)。
[0121] 在另一些实施方式中,焊缝在高度方向上的位置有变化(例如焊件为非平板状工件),此时,焊缝跟踪传感器应该为3D传感器(例如3D相机),从而,焊缝跟踪点的位置数据包
括三维坐标系(包括相互垂直的X轴、Y轴和Z轴)的三个坐标数据(X坐标、Y坐标和Z坐标)。
[0122] 第一判断模块2进行实时焊缝跟踪点的有效性判断的方法有很多。
[0123] 例如,在一些实施方式中,第一判断模块2在根据初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的偏差,判断初步位置数据是否为有效数据时,
[0124] 计算初步位置数据与数据容器中的最后一个焊缝跟踪点位置数据之间的距离数据;
[0125] 若距离数据大于预设的第一偏差阈值,则判定初步位置数据为无效数据,否则,判定初步位置数据为有效数据。
[0126] 例如,在另一些实施方式中,第一判断模块2在根据初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的偏差,判断初步位置数据是否为有效数据时,
[0127] 分别计算初步位置数据的各个坐标与数据容器中最后一个焊缝跟踪点位置数据的各个坐标之间的差值绝对值;
[0128] 若至少一个坐标的差值绝对值大于预设的第二偏差阈值,则判定初步位置数据为无效数据,否则,判定初步位置数据为有效数据。
[0129] 在实际应用中,可单独采用上述两种方式之一来判断实时焊缝跟踪点的有效性。也可结合上述两种方式进行判断,此时,第一判断模块2在根据初步位置数据与预设的数据
容器中的最后一个焊缝跟踪点位置数据之间的偏差,判断初步位置数据是否为有效数据
时:计算初步位置数据与数据容器中的最后一个焊缝跟踪点位置数据之间的距离数据;分
别计算初步位置数据的各个坐标与数据容器中最后一个焊缝跟踪点位置数据的各个坐标
之间的差值绝对值;若距离数据大于预设的第一偏差阈值或者至少一个坐标的差值绝对值
大于预设的第二偏差阈值,则判定初步位置数据为无效数据,否则,判定初步位置数据为有
效数据。
[0130] 其中,数据容器是具有固定存储空间的虚拟容器,最多可放入N个焊缝跟踪点的位置数据,其中N是预设的正整数。
[0131] 在本实施例中,第一处理模块3的滤波处理的滤波窗口大小与数据容器的大小相等,即滤波窗口大小D=N。其中,具体滤波方法可根据实际需要进行选取,其滤波窗口的大小
可以根据实际需要进行设置,当确定好滤波方法滤波窗口的大小后,数据容器的大小设置
为相同大小即可。例如,滤波方法为均值滤波,滤波窗口的大小为7‑10,相应地,数据容器的
大小为7‑10;但不限于此。
[0132] 从而,第一处理模块3,用于在初步位置数据为有效数据时,把初步位置数据写入数据容器的最后位置,并对数据容器中的焊缝跟踪点位置数据进行滤波处理时,
[0133] 把初步位置数据写入数据容器的最后位置之后,判断数据容器是否装满;
[0134] 若是,才对数据容器中的焊缝跟踪点位置数据进行滤波处理。
[0135] 进一步的,由于数据容器的大小是固定的,当数据容器已经装满后,再往数据容器中写入数据时,需要把在先的数据擦除,才能写入,从而,第一处理模块3,用于在初步位置
数据为有效数据时,把初步位置数据写入数据容器的最后位置,并对数据容器中的焊缝跟
踪点位置数据进行滤波处理时,
[0136] 判断数据容器是否装满;
[0137] 若否,则直接把初步位置数据写入数据容器的最后;
[0138] 若是,则先擦除数据容器中的第一个焊缝跟踪点位置数据(即数据容器中位置排在第一的焊缝跟踪点的位置数据),再把初步位置数据写入数据容器的最后。
[0139] 实际上,由于滤波处理的具体方法可根据实际需要进行选择,也可预设多个具有不同滤波窗口长度的滤波处理方法,在数据容器没有装满时,可根据数据容器中的焊缝跟
踪点位置数据的实际数量选用对应滤波窗口长度的滤波处理方法进行滤波处理,从而有利
于进一步提高焊缝跟踪位置的准确性。此时,第一处理模块3,用于在初步位置数据为有效
数据时,把初步位置数据写入数据容器的最后位置,并对数据容器中的焊缝跟踪点位置数
据进行滤波处理时:获取数据容器的焊缝跟踪点位置数据的数量,选取多个预设的滤波处
理方法中的滤波窗口长度与该数量相等的滤波处理方法对数据容器中的焊缝跟踪点位置
数据进行滤波处理。
[0140] 有时候,焊缝本实是分为多段的,段与段之间实际存在阶跃抖动(即段与段之间在至少一个坐标方向上存在跳跃的情况,例如,某一段焊缝的高度比前一段焊缝的高度大),
在段与段的交替位置处,也会存在初步位置数据与数据容器中的最后一个焊缝跟踪点位置
数据之间的偏差过大的情况,但与由于系统抖动而导致偏差过大的情况相比,阶跃抖动必
然会引起连续多次重新获取的实时焊缝跟踪点的初步位置数据均与数据容器中的最后一
个焊缝跟踪点位置数据之间的偏差过大;因此,在一些优选实施方式中,该焊缝跟踪点的滤
波处理装置还包括:
[0141] 累加模块,用于在初步位置数据为无效数据时,使超阈值计数累加1;
[0142] 第四判断模块,用于判断超阈值计数是否大于预设计数阈值;
[0143] 复位模块,用于在超阈值计数大于预设计数阈值时,把数据容器置空,并把超阈值计数置零。
[0144] 其中,计数阈值可根据实际需要进行设置。一旦超阈值计数大于预设计数阈值,则表示存在阶跃抖动,且此时的实时焊缝跟踪点为另一段焊缝上的焊缝跟踪点,把数据容器
置空后,下一次获取的实时焊缝跟踪点的初步位置数据将直接放入数据容器中。从而避免
了一直把有效的初步位置数据当作无效数据而使焊接过程中断。
[0145] 需要说明的是,复位模块还用于在每往数据容器中写入一次初步数据时,把超阈值计数置零一次;从而避免由于系统抖动导致断续地出现多次无效数据而使超阈值计数积
累至大于预设计数阈值,从而误判为阶跃抖动而影响焊接的精度的情况。
[0146] 由上可知,该焊缝跟踪点的滤波处理装置,通过获取实时焊缝跟踪点的初步位置数据;根据所述初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的
偏差,判断所述初步位置数据是否为有效数据;若所述初步位置数据为有效数据,则把所述
初步位置数据写入所述数据容器的最后位置,并对所述数据容器中的焊缝跟踪点位置数据
进行滤波处理;提取滤波处理后的所述数据容器中最后一个焊缝跟踪点位置数据作为所述
实时焊缝跟踪点的最终位置数据;从而可避免因为抖动而导致焊缝跟踪位置与真实的焊缝
位置偏离过大,保证自动化焊接过程的准确性和平稳性。
[0147] 请参阅图3,本申请实施例还提供一种电子设备100,包括处理器101和存储器102,存储器102中存储有计算机程序,处理器101通过调用存储器102中存储的计算机程序,用于
执行如上述的焊缝跟踪点的滤波处理方法的步骤。
[0148] 其中,处理器101与存储器102电性连接。处理器101是电子设备100的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或调用存储在存储器102内的
计算机程序,以及调用存储在存储器102内的数据,执行电子设备的各种功能和处理数据,
从而对电子设备进行整体监控。
[0149] 存储器102可用于存储计算机程序和数据。存储器102存储的计算机程序中包含有可在处理器中执行的指令。计算机程序可以组成各种功能模块。处理器101通过调用存储在
存储器102的计算机程序,从而执行各种功能应用以及数据处理。
[0150] 在本实施例中,电子设备100中的处理器101会按照如下的步骤,将一个或一个以上的计算机程序的进程对应的指令加载到存储器102中,并由处理器101来运行存储在存储
器102中的计算机程序,从而实现各种功能:获取实时焊缝跟踪点的初步位置数据;根据所
述初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的偏差,判断所
述初步位置数据是否为有效数据;若所述初步位置数据为有效数据,则把所述初步位置数
据写入所述数据容器的最后位置,并对所述数据容器中的焊缝跟踪点位置数据进行滤波处
理;提取滤波处理后的所述数据容器中最后一个焊缝跟踪点位置数据作为所述实时焊缝跟
踪点的最终位置数据。
[0151] 由上可知,该电子设备,通过获取实时焊缝跟踪点的初步位置数据;根据所述初步位置数据与预设的数据容器中的最后一个焊缝跟踪点位置数据之间的偏差,判断所述初步
位置数据是否为有效数据;若所述初步位置数据为有效数据,则把所述初步位置数据写入
所述数据容器的最后位置,并对所述数据容器中的焊缝跟踪点位置数据进行滤波处理;提
取滤波处理后的所述数据容器中最后一个焊缝跟踪点位置数据作为所述实时焊缝跟踪点
的最终位置数据;从而可避免因为抖动而导致焊缝跟踪位置与真实的焊缝位置偏离过大,
保证自动化焊接过程的准确性和平稳性。
[0152] 本申请实施例还提供一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时运行如上述的焊缝跟踪点的滤波处理方法的步骤,以实现以下功能:获取实时
焊缝跟踪点的初步位置数据;根据所述初步位置数据与预设的数据容器中的最后一个焊缝
跟踪点位置数据之间的偏差,判断所述初步位置数据是否为有效数据;若所述初步位置数
据为有效数据,则把所述初步位置数据写入所述数据容器的最后位置,并对所述数据容器
中的焊缝跟踪点位置数据进行滤波处理;提取滤波处理后的所述数据容器中最后一个焊缝
跟踪点位置数据作为所述实时焊缝跟踪点的最终位置数据。
[0153] 其中,存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory, 简称SRAM),电可擦除可编程
只读存储器(Electrically Erasable Programmable Read‑Only Memory, 简称EEPROM),
可擦除可编程只读存储器(Erasable Programmable Read Only Memory, 简称EPROM),可
编程只读存储器(Programmable Red‑Only Memory, 简称PROM),只读存储器(Read‑Only 
Memory, 简称ROM),磁存储器,快闪存储器,磁盘或光盘。
[0154] 综上所述,虽然本发明已以优选实施例揭露如上,但上述优选实施例并非用以限制本发明,本领域的普通技术人员,在不脱离本发明的精神和范围内,均可作各种更动与润
饰,其方案与本发明实质上相同。