基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法及装置
文献发布时间:2023-06-19 18:27:32
技术领域
本发明涉及机器人视觉定位技术领域,尤其涉及基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法及装置。
背景技术
焊接技术在企业生产中被广泛应用,焊接完成后的焊缝为满足板件在尺寸、平整度以及美观性方面的要求,有时需要进行打磨处理。由于焊缝打磨过程中所需的控制因素要求较多,场景复杂多变而,利用机器人打磨很难实现精度要求,所以现如今焊缝打磨过程基本都是通过人力解决。
通过人力解决的话一方面打磨过程中产生的噪音、粉尘、有害气体、火花等会影响到作业人员的身心健康。打磨过程通常比较消耗体力,使用的工具一般都在高速运转,如果使用过程中不小心,会对身体造成一定程度的物理伤害;另一方面成本相对也较高,且标准化程度难以统一。
发明内容
本发明的目的是为了至少解决现有技术的不足之一,提供基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法及装置。
为了实现上述目的,本发明采用以下的技术方案,
具体的,提出基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法,包括以下:
获取待加工工件位置的第一点云信息;
对所述第一点云信息进行预处理得到降噪后的目标工件点云信息;
对降噪后的目标工件点云信息进行拟合并提取焊缝信息,对所述焊缝信息进行拟合得到空间圆;
对所述空间圆进行拟合,得到初始的打磨轨迹;
基于初始的打磨轨迹求取最优机器人反解,并于关节空间下固定第六轴,得到最终打磨轨迹点。
进一步,具体的,降噪后的所述目标工件点云信息通过以下方式获取,
通过直通滤波的方式去除所述第一点云信息中的环境信息;
利用高斯滤波进行降噪处理;
对降噪后的点云信息识别并去除其中的工作台平面所对应的点云信息,则剩余的点云即为降噪后的目标工件点云信息。
进一步,具体的,对降噪后的目标工件点云信息进行拟合并提取焊缝信息,对所述焊缝信息进行拟合得到空间圆,包括以下,
对降噪后的目标工件点云信息进行拟合得到由部分点云形成的空间圆柱体以及其他点云,去除落在空间圆柱体上的所有点云,则剩下的点云即为焊缝点簇circle_P,再通过最小二乘的原理对所述焊缝点簇circle_P进行拟合得到空间圆,获得空间圆参数:半径circle_r、圆心circle_c、垂直圆弧所在平面单位向量circle_n。
进一步,具体的,对所述空间圆进行拟合,得到初始的打磨轨迹,包括以下,
S410、空间圆的参数方程可以表如下,
p=c+r*cos(θ)*a+r*sin(θ)*b(θ∈(-π,π])
其中,a为空间圆所在平面上的一单位向量,b为单位向量b=N×a,p为空间圆上的点,r为空间圆半径,θ为cp和a所成角度,N为与圆所在平面垂直的单位向量;
S420、排序焊缝点簇circle_P中的点,确定弧度θ取值:
基于点簇circle_P拟合直线line1,直线方向向量为line1_N,取线上一超远点line1_p作为基点,分别计算circle_P中所有点与line1_p的距离,并基于距离对点排序,得到排序后的距离最远的两个点,分别为第一个点一级最后一个点这里计为p_start、p_end,计算θ:
S430、确定单位向量a,b:
记p1=p_start-circle_c,p2=p_start-p_end,p_direction=p2×p1,
若|p_direction.norm()+circle_n|>1,则a=p1.norm(),b=circle_n×a,a=b×circle_n,
否则a=(p_end-circle_c).norm(),b=circle_n×a,a=b×circle_n,
其中n.norm()作用为返回向量n的单位向量,
基于以上能够确定a、b,进而得到焊缝所对应的空间圆的数学表示为:
p=circle_c+circle_r*cos(θ)*a+circle_r*sin(θ)*b(θ∈[0,θc])
S440、基于空间圆的数学表示以π/180的步长获取焊缝打磨轨迹点,记为轨迹点簇p_tr,计算轨迹点簇p_tr中每个点对应的法向量信息:p_tr_n[i]=p_tr[i]-circle_c,基于此得到初始的打磨轨迹。
进一步,具体的,基于初始的打磨轨迹求取最优机器人反解,并于关节空间下固定第六轴,得到最终打磨轨迹点,包括以下,
基于轴角形式分别求解每对点法向量对应无数解中的一个,最终得到初步的打磨轨迹,然后通过运动学反解求出关节空间下对应的最优关节状态,然后使每组解中第六个轴关节值固定为0,即可求出最终的圆弧焊缝打磨轨迹。
本发明还提出基于三维视觉的柱面圆弧焊缝打磨轨迹生成装置,包括:
点云信息获取模块,拥有获取待加工工件位置的第一点云信息;
预处理模块,用于对所述第一点云信息进行预处理得到降噪后的目标工件点云信息;
焊缝信息提取模块,用于对降噪后的目标工件点云信息进行拟合并提取焊缝信息,对所述焊缝信息进行拟合得到空间圆;
初始打磨轨迹确定模块,用于对所述空间圆进行拟合,得到初始的打磨轨迹;
最终打磨轨迹确定模块,用于基于初始的打磨轨迹求取最优机器人反解,并于关节空间下固定第六轴,得到最终打磨轨迹点。
本发明还提出面向大型铸件打磨的高效三维视觉平台,应用了上述基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法,包括,
机器人;
三维相机,用于获取待加工工件位置的第一点云信息;
平台,用于固定待加工工件;
基于ROS机器人控制系统的工控机,用于接收所述三维相机传输的第一点云信息,并进行打磨轨迹规划与执行。
进一步,具体的,
所述机器人为搭载3.5KW电主轴的安川HP20D机器人,所述三维相机为kinectV2三维相机。
本发明还提出一种计算机可读存储的介质,所述计算机可读存储的介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现以上中任一项所述基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法的步骤。
本发明的有益效果为:
本发明通过获取三维点云图;去除环境和工作台信息,提取目标工件点云信息,并进行降噪处理;拟合圆柱面并对圆柱面点进行去除,拿到焊缝信息;基于焊缝信息拟合空间圆弧;基于空间圆弧获得等间隔的打磨轨迹点位信息和对应的空间姿态法相信息,得到初始的打磨轨迹;基于初始打磨轨迹求取最优机器人反解,关节空间下固定第六轴,得到最终打磨轨迹点。本发明能够实现高精度高效率的机器人智能打磨焊缝,能够避免因为人工打磨而产生的一系列问题。
附图说明
通过对结合附图所示出的实施方式进行详细说明,本公开的上述以及其他特征将更加明显,本公开附图中相同的参考标号表示相同或相似的元素,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,在附图中:
图1所示为本发明基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法的流程图;
图2所示为本发明基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法的方法实施流程图;
图3所示为本发明基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法的一个实施方式中的待打磨工件模型;
图4所示为本发明基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法的一个实施方式中的待打磨工件表面点云;
图5所示为本发明基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法的一个实施方式中的获取的圆弧焊缝点云图;
图6所示为本发明基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法的一个实施方式中的空间圆参数方程;
图7所示为本发明基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法的一个实施方式中的初步获取的空间圆弧焊缝轨迹点点法信息;
图8所示为本发明基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法的一个实施方式中的法向量确定的坐标系状态。
具体实施方式
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。附图中各处使用的相同的附图标记指示相同或相似的部分。
参照图1、图2以及图3,实施例1,本发明提出基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法,包括以下:
步骤110、获取待加工工件位置的第一点云信息;
步骤120、对所述第一点云信息进行预处理得到降噪后的目标工件点云信息;
步骤130、对降噪后的目标工件点云信息进行拟合并提取焊缝信息,对所述焊缝信息进行拟合得到空间圆;
步骤140、对所述空间圆进行拟合,得到初始的打磨轨迹;
步骤150、基于初始的打磨轨迹求取最优机器人反解,并于关节空间下固定第六轴,得到最终打磨轨迹点。
在本优选实施方式中,通过获取三维点云图;去除环境和工作台信息,提取目标工件点云信息,并进行降噪处理;拟合圆柱面并对圆柱面点进行去除,拿到焊缝信息;基于焊缝信息拟合空间圆弧;基于空间圆弧获得等间隔的打磨轨迹点位信息和对应的空间姿态法相信息,得到初始的打磨轨迹;基于初始打磨轨迹求取最优机器人反解,关节空间下固定第六轴,得到最终打磨轨迹点。本发明能够实现高精度高效率的机器人智能打磨焊缝,能够避免因为人工打磨而产生的一系列问题。
参照图4以及图5,作为本发明的优选实施方式,具体的,降噪后的所述目标工件点云信息通过以下方式获取,
通过直通滤波的方式去除所述第一点云信息中的环境信息;
利用高斯滤波进行降噪处理;
对降噪后的点云信息识别并去除其中的工作台平面所对应的点云信息,则剩余的点云即为降噪后的目标工件点云信息。
作为本发明的优选实施方式,具体的,对降噪后的目标工件点云信息进行拟合并提取焊缝信息,对所述焊缝信息进行拟合得到空间圆,包括以下,
对降噪后的目标工件点云信息进行拟合得到由部分点云形成的空间圆柱体以及其他点云,去除落在空间圆柱体上的所有点云,则剩下的点云即为焊缝点簇circle_P,再通过最小二乘的原理对所述焊缝点簇circle_P进行拟合得到空间圆,获得空间圆参数:半径circle_r、圆心circle_c、垂直圆弧所在平面单位向量circle_n。
参照图6以及图7,作为本发明的优选实施方式,具体的,对所述空间圆进行拟合,得到初始的打磨轨迹,包括以下,
S410、空间圆的参数方程可以表如下,
p=c+r*cos(θ)*a+r*sin(θ)*b(θ∈(-π,π])
其中,a为空间圆所在平面上的一单位向量,b为单位向量b=N×a,p为空间圆上的点,r为空间圆半径,θ为cp和a所成角度,N为与圆所在平面垂直的单位向量;
S420、排序焊缝点簇circle_P中的点,确定弧度θ取值:
我们现在只拿到了拟合的空间圆和无序空间点簇,想要确定θ范围,我们就要找到焊缝点簇circle_P中空间距离最远的两个点即可(这里拟合的是劣弧)。为了提高计算速度,基于点簇circle_P拟合直线line1,直线方向向量为line1_N,取线上一超远点line1_p作为基点,分别计算circle_P中所有点与line1_p的距离,并基于距离对点排序,得到排序后的距离最远的两个点,分别为第一个点一级最后一个点这里计为p_start、p_end,计算θ:
S430、确定单位向量a,b:
记p1=p_start-circle_c,p2=p_start-p_end,p_direction=p2×p1,
若|p_direction.norm()+circle_n|>1,则a=p1.norm(),b=circle_n×a,a=b×circle_n,
否则a=(p_end-circle_c).norm(),b=circle_n×a,a=b×circle_n,
其中n.norm()作用为返回向量n的单位向量,
下面是与之对应的伪代码:
If(|p_direction.norm()+circle_n|>1)//注:n.norm()作用:返回向量n的单位向量。
{
a=p1.norm();
b=circle_n×a;
a=b×circle_n;//注:这一行是为了确保单位向量a、b、circle_n两两正交。
}else
{
a=(p_end-circle_o).norm();
b=circle_n×a;
a=b×circle_n;
}
基于以上能够确定a、b,进而得到焊缝所对应的空间圆的数学表示为:
p=circle_c+circle_r*cos(θ)*a+circle_r*sin(θ)*b(θ∈[0,θc])
S440、基于空间圆的数学表示以π/180的步长获取焊缝打磨轨迹点,记为轨迹点簇p_tr,计算轨迹点簇p_tr中每个点对应的法向量信息:p_tr_n[i]=p_tr[i]-circle_c,基于此得到初始的打磨轨迹。
参照图8,作为本发明的优选实施方式,具体的,基于初始的打磨轨迹求取最优机器人反解,并于关节空间下固定第六轴,得到最终打磨轨迹点,包括以下,
基于轴角形式分别求解每对点法向量对应无数解中的一个,最终得到初步的打磨轨迹,然后通过运动学反解求出关节空间下对应的最优关节状态,然后使每组解中第六个轴关节值固定为0,即可求出最终的圆弧焊缝打磨轨迹。
初始打磨轨迹中有多对点和法向量信息,每个点对应位置唯一,而法向量对应无穷多个机器人末端姿态,所以每对点法向量对应机器人无数反解状态,这里要唯一确定一个最优反解出来出来:
机器人末端姿态信息,即工具坐标系相对于极坐标系的空间旋转变换关系,为了方便求解,这里用轴角angel-aix形式表示。基坐标系下Z轴单位向量(0,0,1)和轨迹中的法向量分别叉乘,求得对应的旋转轴aix,Z轴单位向量和每个法向量都丢应一个夹角,即为旋转角angel。轴角可以唯一确定出空间旋转变换关系,但是我们要求打磨过程中机器人第六轴固定在零位,此时的打磨轨迹姿态信息还不满足应用条件。
该打磨系统基于ROS-I建立,机器人运动学求解库trakIK可以利用ROS中机器人的DH参数信息求解出机器人的反解,并且可以设定机器人的一组当前关节空间姿态,基当前关节空间姿态反解出最优关节空间下的目标姿态,单次求解速度在0.5ms以内,完全满足使用条件。
基于初始的打磨轨迹反解求出对应关节空间下的轨迹信息,设定第六个关节值为0后,利用KDL正运动学求解库求解出笛卡尔空间下对应的最终打磨轨迹点。最后基于最终轨迹点,利用ROS中的Moveit进行笛卡尔空间路径规划,执行打磨任务。
本发明还提出基于三维视觉的柱面圆弧焊缝打磨轨迹生成装置,包括:
点云信息获取模块,拥有获取待加工工件位置的第一点云信息;
预处理模块,用于对所述第一点云信息进行预处理得到降噪后的目标工件点云信息;
焊缝信息提取模块,用于对降噪后的目标工件点云信息进行拟合并提取焊缝信息,对所述焊缝信息进行拟合得到空间圆;
初始打磨轨迹确定模块,用于对所述空间圆进行拟合,得到初始的打磨轨迹;
最终打磨轨迹确定模块,用于基于初始的打磨轨迹求取最优机器人反解,并于关节空间下固定第六轴,得到最终打磨轨迹点。
本发明还提出面向大型铸件打磨的高效三维视觉平台,应用了上述基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法,包括,
机器人;
三维相机,用于获取待加工工件位置的第一点云信息;
平台,用于固定待加工工件;
基于ROS机器人控制系统的工控机,用于接收所述三维相机传输的第一点云信息,并进行打磨轨迹规划与执行。
作为本发明的优选实施方式,具体的,
所述机器人为搭载3.5KW电主轴的安川HP20D机器人,所述三维相机为kinectV2三维相机。
本发明还提出一种计算机可读存储的介质,所述计算机可读存储的介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现以上中任一项所述基于三维视觉的柱面圆弧焊缝打磨轨迹生成方法的步骤。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例中的方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储的介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或系统、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包括的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
尽管本发明的描述已经相当详尽且特别对几个所述实施例进行了描述,但其并非旨在局限于任何这些细节或实施例或任何特殊实施例,而是应当将其视作是通过参考所附权利要求考虑到现有技术为这些权利要求提供广义的可能性解释,从而有效地涵盖本发明的预定范围。此外,上文以发明人可预见的实施例对本发明进行描述,其目的是为了提供有用的描述,而那些目前尚未预见的对本发明的非实质性改动仍可代表本发明的等效改动。
以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,都应属于本发明的保护范围。在本发明的保护范围内其技术方案和/或实施方式可以有各种不同的修改和变化。
- 焊接变形量自适应的直线焊缝打磨轨迹生成方法及装置
- 一种扳焊类零部件环焊缝余高测量及打磨轨迹的生成方法