一种基于视觉定位的三维拧固顺序防呆控制方法及系统与流程
未命名
10-08
阅读:82
评论:0

1.本发明涉及螺丝拧固技术领域,尤其涉及一种基于视觉定位的三维拧固顺序防呆控制方法及系统。
背景技术:
2.复杂工件组装过程中,对螺丝拧固顺序有要求的场景需要进行实时管控。但由于复杂工件的拧固点位可能位于不同的平面和不同的角度,有些是相机视觉的盲区,使得现有的视觉系统无法通过视觉直视目标确定点位,进而导致在复杂工件组装过程中,现有的拧固工艺很难实施空间拧固顺序管控,容易造成潜在的质量隐患。
技术实现要素:
3.为此,本发明实施例提供了一种基于视觉定位的三维拧固顺序防呆控制方法及系统,用于解决现有技术中在复杂工件组装过程中,现有的拧固工艺很难实施空间拧固顺序管控,容易造成潜在的质量隐患的问题。
4.为了解决上述问题,本发明实施例提供一种基于视觉定位的三维拧固顺序防呆控制方法,所述方法包括:
5.s1:以工件和工具构建两个世界坐标系,分别为工件坐标系和工具坐标系;
6.s2:基于所述工件坐标系,确定工件上的特征点集a、特征点集a中所有特征点的三维坐标和所有螺丝在工件坐标系上三维坐标,根据螺丝的三维坐标自动生成螺丝编号,并对螺丝安装顺序进行编排;基于所述工具坐标系,确定工具上的特征点集b、特征点集b中所有特征点的三维坐标和工具执行末端在工具坐标系上的三维坐标;
7.s3:利用相机采集产品的图片,检测工件特征点集a和工具特征点集b的二维图像坐标;
8.s4:根据特征点集a的二维图像坐标、特征点集a在工件坐标系中的三维坐标、特征点集b的二维图像坐标以及特征点集b在工具坐标系中的三维坐标,得到从工具坐标系到工件坐标系的齐次变换矩阵t;
9.s5:根据工具执行末端顶点在工具坐标系中的三维坐标和从工具坐标系到工件坐标系的齐次变换矩阵t,计算得到工具执行末端顶点在工件坐标系中的三维坐标;
10.s6:在工件坐标系中计算工具执行末端顶点和所有螺丝的距离,得到当前工具执行末端顶点对应的螺丝编号,如果螺丝编号与规定安装顺序指定螺丝编号相符,则使能工具,并设置螺丝对应拧力,否则工具不使能,重复执行步骤s3-s6,直到所有螺丝拧固完成。
11.优选地,确定工件上的特征点集a或确定工具上的特征点集b的方法为:
12.如果特征点在同一个平面内,特征点数量不少于4个;如果特征点不在一个平面内,则特征点数量不少于6个。
13.利用相机采集产品的图片,检测工件特征点集a和工具特征点集b的二维图像坐标的方法为:
14.利用相机采集产品的图片,通过深度学习或传统视觉检测工件特征集a和工具特征集b在图片上的二维图像坐标。
15.优选地,通过相机标定得到相机内参矩阵和相机畸变系数:
[0016][0017]
distcoeffs=[k1,k2,p1,p2,k3]
[0018]
其中,cameramatrix表示相机内参矩阵,distcoeffs表示相机畸变系数,k1,k2,k3表示径向畸变系数,p1,p2表示切向畸变系数,焦距(f
x
,fy)和光学中心(c
x
,cy)。
[0019]
优选地,根据特征点集a的二维图像坐标、特征点集a在工件坐标系中的三维坐标、特征点集b的二维图像坐标以及特征点集b在工具坐标系中的三维坐标,得到从工具坐标系到工件坐标系的齐次变换矩阵t的方法为:
[0020]
根据特征点集a的二维图像坐标、特征点集a在工件坐标系中的三维坐标,得到相机坐标系相对于工件坐标系的齐次变换矩阵t1;根据特征点集b的二维图像坐标、特征点集b在工具坐标系中的三维坐标,得到相机坐标系相对于工具坐标系的齐次变换矩阵t2;通过上述两个齐次变换矩阵t1、t2,得到从工具坐标系到工件坐标系之间的齐次变换矩阵t。
[0021]
优选地,根据特征点集a的二维图像坐标、特征点集a在工件坐标系中的三维坐标、相机内参和相机畸变参数,得到相机坐标系相对于工件坐标系的齐次变换矩阵t1的方法为:
[0022]
根据特征点集a的二维图像坐标与特征点集a在工件坐标系中的三维坐标的对应关系,使用opencv中的solvepnp函数得到相机位姿的初始位姿估计,位姿的旋转向量和平移向量,从而得到相机坐标系相对于工件的齐次变换矩阵t1。
[0023]
优选地,将初始化的位姿估计作为初始值,使用非线性优化算法进行迭代优化,所述优化算法包括levenberg-marquardt、gauss-newton,通过最小化重投影误差迭代调整位姿参数,最小化重投影误差。
[0024]
优选地,根据工具执行末端顶点在工具坐标系中的三维坐标和从工具坐标系到工件坐标系的齐次变换矩阵t,计算得到工具执行末端顶点在工件坐标系中的三维坐标的方法为:
[0025]
p1=t*p2[0026]
其中,p2为齐次坐标形式[x,y,z,1],其中x,y,z为工具执行末端在工具坐标系下的三维坐标,,p1表示工具执行末端顶点在工件坐标系的齐次坐标[x’,y’,z’,w],将齐次坐标除最后一个元素,[x’/w,y’/w,z’/w]就是工具执行末端顶点在工具坐标系下的三维坐标。
[0027]
优选地,在工件坐标系中计算工具执行末端顶点和所有螺丝的距离,得到当前工具执行末端顶点对应的螺丝编号的方法为:
[0028]
在工件坐标系中,计算工具执行末端顶点和所有螺丝的距离,取距离最小值与设定阈值进行判断,如果距离最小值小于设定阈值,则判定当前工具执行末端顶点对应的螺丝编号为距离最小值对应螺丝编号;否则,则判定当前工具执行末端顶点不在任何螺丝位置。
[0029]
本发明实施例还提供了一种基于视觉定位的三维拧固顺序防呆控制系统,所述系统包括:
[0030]
坐标系构建模块,用于以工件和工具构建两个世界坐标系,分别为工件坐标系和工具坐标系;
[0031]
三维坐标获取模块,用于基于所述工件坐标系,确定工件上的特征点集a、特征点集a中所有特征点的三维坐标和所有螺丝在工件坐标系上三维坐标,根据螺丝的三维坐标自动生成螺丝编号,并对螺丝安装顺序进行编排;基于所述工具坐标系,确定工具上的特征点集b、特征点集b中所有特征点的三维坐标和工具执行末端在工具坐标系上的三维坐标;
[0032]
检测模块,用于利用相机采集产品的图片,检测工件特征点集a和工具特征点集b的二维图像坐标;
[0033]
变换矩阵获取模块,用于根据特征点集a的二维图像坐标、特征点集a在工件坐标系中的三维坐标、特征点集b的二维图像坐标以及特征点集b在工具坐标系中的三维坐标,得到从工具坐标系到工件坐标系的齐次变换矩阵t;
[0034]
变换模块,用于根据工具执行末端顶点在工具坐标系中的三维坐标和从工具坐标系到工件坐标系的齐次变换矩阵t,计算得到工具执行末端顶点在工件坐标系中的三维坐标;
[0035]
控制模块,用于在工件坐标系中计算工具执行末端顶点和所有螺丝的距离,得到当前工具执行末端顶点对应的螺丝编号,如果螺丝编号与规定安装顺序指定螺丝编号相符,则使能工具,并设置螺丝对应拧力,否则工具不使能,重复执行检测模块、变换矩阵获取模块、变换模块、控制模块,直到所有螺丝拧固完成。
[0036]
从以上技术方案可以看出,本发明申请具有以下优点:
[0037]
本发明提供一种基于视觉定位的三维拧固顺序防呆控制方法及系统,本发明根据螺丝的三维坐标自动生成螺丝编号,并对螺丝安装顺序进行编排;使用深度学习提高特征点集在二维图像中的检测准确性;通过工件坐标系与相机坐标系和工具坐标系与相机坐标系的齐次变换矩阵得到工具坐标系与工件坐标系的齐次变换矩阵,进而可以得到工具执行末端顶点在工件坐标系中的三维坐标;最后在工件坐标系中通过计算工具执行末端顶点和所有螺丝的距离,得到当前工具执行末端顶点对应的螺丝编号,进而控制螺丝拧固的顺序;本发明可以实现实时的mpi指导和安装顺序的管控。并能够辅助力传感器对每个螺丝进行扭力控制,更精准的拧固每一个螺丝。
附图说明
[0038]
为了更清楚地说明本发明实施案例或现有技术中的技术方案,下边将对实施例中所需要使用的附图做简单说明,通过参考附图会更清楚的理解本发明的特征和优点,附图是示意性的而不应该理解为对本发明进行任何限制,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,可以根据这些附图获得其他的附图。其中:
[0039]
图1为根据实施例中提供的一种基于视觉定位的三维拧固顺序防呆控制方法的流程图;
[0040]
图2为实施例中以工件建立工件坐标系的示意图;
[0041]
图3为实施例中以工具建立工具坐标系的示意图;
[0042]
图4为实施例中工件坐标系中特征点、螺丝坐标示意图;
[0043]
图5为实施例中工具坐标系中特征点、工具执行末端顶点坐标示意图;
[0044]
图6为根据实施例中提供的一种基于视觉定位的三维拧固顺序防呆控制系统的框图。
具体实施方式
[0045]
为使本发明实施例的目的、技术方案与优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0046]
实施例一
[0047]
如图1所示,本发明实施例提出一种基于视觉定位的三维拧固顺序防呆控制方法,该方法包括:
[0048]
s1:以工件和工具构建两个世界坐标系,分别为工件坐标系和工具坐标系;
[0049]
s2:基于所述工件坐标系,确定工件上的特征点集a、特征点集a中所有特征点的三维坐标和所有螺丝在工件坐标系上三维坐标,根据螺丝的三维坐标自动生成螺丝编号,并对螺丝安装顺序进行编排;基于所述工具坐标系,确定工具上的特征点集b、特征点集b中所有特征点的三维坐标和工具执行末端在工具坐标系上的三维坐标;
[0050]
s3:利用相机采集产品的图片,检测工件特征点集a和工具特征点集b的二维图像坐标;
[0051]
s4:根据特征点集a的二维图像坐标、特征点集a在工件坐标系中的三维坐标、特征点集b的二维图像坐标以及特征点集b在工具坐标系中的三维坐标,得到从工具坐标系到工件坐标系的齐次变换矩阵t;
[0052]
s5:根据工具执行末端顶点在工具坐标系中的三维坐标和从工具坐标系到工件坐标系的齐次变换矩阵t,计算得到工具执行末端顶点在工件坐标系中的三维坐标;
[0053]
s6:在工件坐标系中计算工具执行末端顶点和所有螺丝的距离,得到当前工具执行末端顶点对应的螺丝编号,如果螺丝编号与规定安装顺序指定螺丝编号相符,则使能工具,并设置螺丝对应拧力,否则工具不使能,重复执行步骤s3-s6,直到所有螺丝拧固完成。
[0054]
本发明提供了一种基于视觉定位的三维拧固顺序防呆控制方法,根据螺丝的三维坐标自动生成螺丝编号,并对螺丝安装顺序进行编排;使用深度学习提高特征点集在二维图像中的检测准确性;通过工件坐标系与相机坐标系和工具坐标系与相机坐标系的齐次变换矩阵得到工具坐标系与工件坐标系的齐次变换矩阵,进而可以得到工具执行末端顶点在工件坐标系中的三维坐标;最后在工件坐标系中通过计算工具执行末端顶点和所有螺丝的距离,得到当前工具执行末端顶点对应的螺丝编号,进而控制螺丝拧固的顺序;本发明可以实现实时的mpi指导和安装顺序的管控。并能够辅助力传感器对每个螺丝进行扭力控制,更精准的拧固每一个螺丝。
[0055]
进一步地,在步骤s1中,在工件上选定世界坐标系原点,并确定世界坐标系的x,y,z方向。将该坐标系称为工件坐标系。如图2所示,但坐标系不是必须取在工件的边缘,根据实际情况选取。在工具上选定世界坐标系,并确定该世界坐标系的x,y,z方向,将该坐标系
称为工具坐标系,如图3所示,同样坐标系不是必须取在工具边缘。工件坐标系和工具坐标系都使用右手坐标系。
[0056]
进一步地,在步骤s2中,确定工件上的特征点集a,特征点数量不少于4个,如果是4个点,这4个点在同一个平面内,如果特征点不在一个平面内,则需要至少6个特征点,特征点可以是角点、可以是任何可以识别的特殊点。如图4中的4个角点组成特征点集a。确定特征点集a中所有特征点和所有螺丝在工件坐标系上三维坐标。根据螺丝的三维坐标自动生成螺丝编号,例如图4中灰色点表示的6个螺丝编号1,2,3,4,5,6。并由mpi编排人员对螺丝安装顺序进行编排。自动螺丝编号,先根据z坐标分大组,再根据y坐标分小组,根据x坐标和前两个组号计算当前螺丝的具体编号。图4中各螺丝在工件坐标系上的三维坐标:[[x01,y01,z01],[x02,y02,z02],...]。
[0057]
图4中特征集a的四个特征点a1,a2,a3,a4在工件坐标系中的三维坐标分别为:[[x11,y11,z11],[x12,y12,z12],[x13,y13,z13],[x14,y14,z14]]。
[0058]
确定工具上的特征点集b,特征点数不少于4个,如果是4个点,这4个点在同一个平面内,如果特征点不在一个平面内,则需要至少6个特征点,特征点可以是角点、可以是任何可以识别的特殊点。如图5中红色圈内的4个角点组成特征点集b。确定特征点集b中所有特征点和工具执行末端在工具坐标系上的三维坐标。图5中,工具执行末端的端点的在工件坐标系中的三维坐标为:[x0,y0,z0]。
[0059]
图5中特征集b的四个特征点b1,b2,b3,b4在工件坐标系中的三维坐标分别为:[[x21,y21,z21],[x22,y22,z22],[x23,y23,z23],[x24,y24,z24]]。
[0060]
进一步地,在步骤s3中,利用相机采集产品的图片,通过相机标定得到相机内参矩阵和相机的畸变系数:
[0061][0062]
distcoeffs=[k1,k2,p1,p2,k3]
[0063]
其中,cameramatrix表示相机内参矩阵,distcoeffs表示相机畸变系数,k1,k2,k3表示径向畸变系数,p1,p2表示切向畸变系数,焦距(f
x
,fy)和光学中心(c
x
,cy)。
[0064]
通过深度学习或传统视觉检测工件特征集a和工具特征集b在图片上的二维图像坐标。其中,特征集a的四个特征点a1,a2,a3,a4在二维图像上的对应坐标为:[[x11’,y11’],[x12’,y12’],[x13’,y13’],[x14’,y14’]]
[0065]
特征集b的四个特征点b1,b2,b3,b4在二维图像上的对应坐标为:[[x21’,y21’],[x22’,y22’],[x23’,y23’],[x24’,y24’]]。
[0066]
进一步地,在步骤s4中,根据相机内参、相机畸变系数、特征点集a的二维图像坐标、特征点集a在工件坐标系中的三维坐标、特征点集b的二维图像坐标以及特征点集b在工具坐标系中的三维坐标,得到从工具坐标系到工件坐标系的齐次变换矩阵t。
[0067]
具体地,根据特征点集a的二维图像坐标与特征点集a在工件坐标系中的三维坐标的对应关系,使用opencv中的solvepnp函数得到相机位姿的初始位姿估计,位姿的旋转向量和平移向量进而得到相机坐标系相对于工件坐标系的齐次变换矩阵t1。
[0068]
将初始化的位姿估计作为初始值,使用非线性优化算法进行迭代优化,所述优化
算法包括levenberg-marquardt、gauss-newton,通过最小化重投影误差迭代调整位姿参数,最小化重投影误差。其中,重投影是将估计的位姿用于三维点,并将其投影到图像上。计算投影点与对应的图像之间的重投影误差,将重投影误差作为优化的目标函数,通过最小化重投影误差来调整位子参数,使得投影点与图像点更吻合。
[0069]
在此过程中,三维特征点和对应图像上的点组成点对,图像上特征点的检测准确性对于结果影响比较大,根据实际工件选择深度学习或传统工件视觉方式检测。另外特征点对的筛选非常重要,可以使用ransac(random sample consensus)算法来排除异常点和噪声,通过迭代的方式从所有的点对中选择合适的点对,过滤掉错误匹配的点对,提高位姿计算的准确性。
[0070]
根据实际工件情况,如果条件允许可以增加点对数,提供更多的约束条件,增加位姿计算的精度。此外点对在工件上的空间分布对结果也有一定的影响,尽量分布在整个空间,不是局促在工件的小范围内。
[0071]
具体地,此步骤可以得到相机在工件坐标系中的位姿,将得到工件坐标系到相机坐标系的旋转向量r1和平移向量t1,旋转向量可以得到旋转矩阵r1,即可根据r1和t1构建工件坐标系到相机坐标系的齐次变换矩阵t1。通过此步骤同样可以得到相机在工具坐标系中的位姿,得到工具坐标系到相机坐标系的旋转向量r2和平移向量t2,旋转向量可以得到旋转矩阵r2,即可根据r2和t2构建工具坐标系到相机坐标系的齐次变换矩阵t2。通过t1和t2可以得到工具坐标系到工件坐标系的齐次变换矩阵t。
[0072]
进一步地,在步骤s5中,根据工具执行末端顶点在工具坐标系中的三维坐标和从工具坐标系到工件坐标系的齐次变换矩阵t,计算得到工具执行末端顶点在工件坐标系中的三维坐标:
[0073]
p1=t*p2[0074]
其中,p2为齐次坐标形式[x,y,z,1],其中x,y,z为工具执行末端在工具坐标系下的三维坐标,,p1表示工具执行末端顶点在工件坐标系的齐次坐标[x’,y’,z’,w],将齐次坐标除最后一个元素,[x’/w,y’/w,z’/w]就是工具执行末端顶点在工具坐标系下的三维坐标。
[0075]
进一步地,在步骤s6中,在工件坐标系中,计算工具执行末端顶点和所有螺丝的距离,取距离最小值与设定阈值进行判断,如果距离最小值小于设定阈值,则判定当前工具执行末端顶点对应的螺丝编号为距离最小值对应螺丝编号;否则,则判定当前工具执行末端顶点不在任何螺丝位置。如果螺丝编号与规定安装顺序指定螺丝编号相符,则使能工具,并设置螺丝对应拧力,否则工具不使能。重复步骤s3-s6,直到所有螺丝按照顺序拧固完成。
[0076]
实施例二
[0077]
如图6所示,本发明提供一种基于视觉定位的三维拧固顺序防呆控制系统,所述系统包括:
[0078]
坐标系构建模块10,用于以工件和工具构建两个世界坐标系,分别为工件坐标系和工具坐标系;
[0079]
三维坐标获取模块20,用于基于所述工件坐标系,确定工件上的特征点集a、特征点集a中所有特征点的三维坐标和所有螺丝在工件坐标系上三维坐标,根据螺丝的三维坐标自动生成螺丝编号,并对螺丝安装顺序进行编排;基于所述工具坐标系,确定工具上的特
征点集b、特征点集b中所有特征点的三维坐标和工具执行末端在工具坐标系上的三维坐标;
[0080]
检测模块30,用于利用相机采集产品的图片,检测工件特征点集a和工具特征点集b的二维图像坐标;
[0081]
变换矩阵获取模块40,用于根据特征点集a的二维图像坐标、特征点集a在工件坐标系中的三维坐标、特征点集b的二维图像坐标以及特征点集b在工具坐标系中的三维坐标,得到从工具坐标系到工件坐标系的齐次变换矩阵t;
[0082]
变换模块50,用于根据工具执行末端顶点在工具坐标系中的三维坐标和从工具坐标系到工件坐标系的齐次变换矩阵t,计算得到工具执行末端顶点在工件坐标系中的三维坐标;
[0083]
控制模块60,用于在工件坐标系中计算工具执行末端顶点和所有螺丝的距离,得到当前工具执行末端顶点对应的螺丝编号,如果螺丝编号与规定安装顺序指定螺丝编号相符,则使能工具,并设置螺丝对应拧力,否则工具不使能,重复执行检测模块、变换矩阵获取模块、变换模块、控制模块,直到所有螺丝拧固完成。
[0084]
所述系统,用以实现上述所述的基于视觉定位的三维拧固顺序防呆控制方法,为了避免冗余,在此不再赘述。
[0085]
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
[0086]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0087]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0088]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0089]
显然,上述实施例仅仅是为清楚地说明所作的举例,并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
技术特征:
1.一种基于视觉定位的三维拧固顺序防呆控制方法,其特征在于,包括:s1:以工件和工具构建两个世界坐标系,分别为工件坐标系和工具坐标系;s2:基于所述工件坐标系,确定工件上的特征点集a、特征点集a中所有特征点的三维坐标和所有螺丝在工件坐标系上三维坐标,根据螺丝的三维坐标自动生成螺丝编号,并对螺丝安装顺序进行编排;基于所述工具坐标系,确定工具上的特征点集b、特征点集b中所有特征点的三维坐标和工具执行末端在工具坐标系上的三维坐标;s3:利用相机采集产品的图片,检测工件特征点集a和工具特征点集b的二维图像坐标;s4:根据特征点集a的二维图像坐标、特征点集a在工件坐标系中的三维坐标、特征点集b的二维图像坐标以及特征点集b在工具坐标系中的三维坐标,得到从工具坐标系到工件坐标系的齐次变换矩阵t;s5:根据工具执行末端顶点在工具坐标系中的三维坐标和从工具坐标系到工件坐标系的齐次变换矩阵t,计算得到工具执行末端顶点在工件坐标系中的三维坐标;s6:在工件坐标系中计算工具执行末端顶点和所有螺丝的距离,得到当前工具执行末端顶点对应的螺丝编号,如果螺丝编号与规定安装顺序指定螺丝编号相符,则使能工具,并设置螺丝对应拧力,否则工具不使能,重复执行步骤s3-s6,直到所有螺丝拧固完成。2.根据权利要求1所述的基于视觉定位的三维拧固顺序防呆控制方法,其特征在于,确定工件上的特征点集a或确定工具上的特征点集b的方法为:如果特征点在同一个平面内,特征点数量不少于4个;如果特征点不在一个平面内,则特征点数量不少于6个。3.根据权利要求1所述的基于视觉定位的三维拧固顺序防呆控制方法,其特征在于,利用相机采集产品的图片,检测工件特征点集a和工具特征点集b的二维图像坐标的方法为:利用相机采集产品的图片,通过深度学习或传统视觉检测工件特征集a和工具特征集b在图片上的二维图像坐标。4.根据权利要求3所述的基于视觉定位的三维拧固顺序防呆控制方法,其特征在于,通过相机标定得到相机内参矩阵和相机畸变系数:distcoeffs=[k1,k2,p1,p2,k3]其中,cameramatrix表示相机内参矩阵,distcoeffs表示相机畸变系数,k1,k2,k3表示径向畸变系数,p1,p2表示切向畸变系数,焦距(f
x
,f
y
)和光学中心(c
x
,c
y
)。5.根据权利要求1所述的基于视觉定位的三维拧固顺序防呆控制方法,其特征在于,根据特征点集a的二维图像坐标、特征点集a在工件坐标系中的三维坐标、特征点集b的二维图像坐标以及特征点集b在工具坐标系中的三维坐标,得到从工具坐标系到工件坐标系的齐次变换矩阵t的方法为:根据特征点集a的二维图像坐标、特征点集a在工件坐标系中的三维坐标、相机内参和相机畸变参数,得到相机坐标系相对于工件坐标系的齐次变换矩阵t1;根据特征点集b的二维图像坐标、特征点集b在工具坐标系中的三维坐标、相机内参和相机畸变参数,得到相机坐标系相对于工具坐标系的齐次变换矩阵t2;通过上述两个齐次变换矩阵t1、t2,得到从工
具坐标系到工件坐标系之间的齐次变换矩阵t。6.根据权利要求5所述的基于视觉定位的三维拧固顺序防呆控制方法,其特征在于,根据特征点集a的二维图像坐标、特征点集a在工件坐标系中的三维坐标、相机内参和相机畸变参数,得到相机坐标系相对于工件坐标系的齐次变换矩阵t1的方法为:根据特征点集a的二维图像坐标与特征点集a在工件坐标系中的三维坐标的对应关系,使用opencv中的solvepnp函数得到相机位姿的初始位姿估计,位姿的旋转向量和平移向量以及相机坐标系相对于工件坐标系的齐次变换矩阵t1。7.根据权利要求6所述的基于视觉定位的三维拧固顺序防呆控制方法,其特征在于,将初始化的位姿估计作为初始值,使用非线性优化算法进行迭代优化,所述优化算法包括levenberg-marquardt、gauss-newton,通过最小化重投影误差迭代调整位姿参数,最小化重投影误差。8.根据权利要求1所述的基于视觉定位的三维拧固顺序防呆控制方法,其特征在于,根据工具执行末端顶点在工具坐标系中的三维坐标和从工具坐标系到工件坐标系的齐次变换矩阵t,计算得到工具执行末端顶点在工件坐标系中的三维坐标的方法为:p1=t*p2其中,p2为齐次坐标形式[x,y,z,1],其中x,y,z为工具执行末端在工具坐标系下的三维坐标,,p1表示工具执行末端顶点在工件坐标系的齐次坐标[x’,y’,z’,w],将齐次坐标除最后一个元素,[x’/w,y’/w,z’/w]就是工具执行末端顶点在工具坐标系下的三维坐标。9.根据权利要求1所述的基于视觉定位的三维拧固顺序防呆控制方法,其特征在于,在工件坐标系中计算工具执行末端顶点和所有螺丝的距离,得到当前工具执行末端顶点对应的螺丝编号的方法为:在工件坐标系中,计算工具执行末端顶点和所有螺丝的距离,取距离最小值与设定阈值进行判断,如果距离最小值小于设定阈值,则判定当前工具执行末端顶点对应的螺丝编号为距离最小值对应螺丝编号;否则,则判定当前工具执行末端顶点不在任何螺丝位置。10.一种基于视觉定位的三维拧固顺序防呆控制系统,其特征在于,所述系统包括:坐标系构建模块,用于以工件和工具构建两个世界坐标系,分别为工件坐标系和工具坐标系;三维坐标获取模块,用于基于所述工件坐标系,确定工件上的特征点集a、特征点集a中所有特征点的三维坐标和所有螺丝在工件坐标系上三维坐标,根据螺丝的三维坐标自动生成螺丝编号,并对螺丝安装顺序进行编排;基于所述工具坐标系,确定工具上的特征点集b、特征点集b中所有特征点的三维坐标和工具执行末端在工具坐标系上的三维坐标;检测模块,用于利用相机采集产品的图片,检测工件特征点集a和工具特征点集b的二维图像坐标;变换矩阵获取模块,用于根据特征点集a的二维图像坐标、特征点集a在工件坐标系中的三维坐标、特征点集b的二维图像坐标以及特征点集b在工具坐标系中的三维坐标,得到从工具坐标系到工件坐标系的齐次变换矩阵t;变换模块,用于根据工具执行末端顶点在工具坐标系中的三维坐标和从工具坐标系到工件坐标系的齐次变换矩阵t,计算得到工具执行末端顶点在工件坐标系中的三维坐标;控制模块,用于在工件坐标系中计算工具执行末端顶点和所有螺丝的距离,得到当前
工具执行末端顶点对应的螺丝编号,如果螺丝编号与规定安装顺序指定螺丝编号相符,则使能工具,并设置螺丝对应拧力,否则工具不使能,重复执行检测模块、变换矩阵获取模块、变换模块、控制模块,直到所有螺丝拧固完成。
技术总结
本发明提供一种基于视觉定位的三维拧固顺序防呆控制方法及系统,涉及螺丝拧固技术领域,该方法包括以工件和工具构建两个世界坐标系;确定特征点集、特征点集中所有特征点的三维坐标、所有螺丝在工件坐标系上三维坐标以及工具执行末端在工具坐标系上的三维坐标;检测工件特征点集和工具特征点集的二维图像坐标;得到从工具坐标系到工件坐标系的齐次变换矩阵;计算得到工具执行末端顶点在工件坐标系中的三维坐标;得到当前工具执行末端顶点对应的螺丝编号,进而控制螺丝拧固的顺序。本发明解决了在复杂工件组装过程中,现有的拧固工艺很难实施空间拧固顺序管控,容易造成潜在的质量隐患的问题。隐患的问题。隐患的问题。
技术研发人员:鲁敏
受保护的技术使用者:苏州超集信息科技有限公司
技术研发日:2023.06.16
技术公布日:2023/10/5
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/