CN106271281B - 一种复杂异型工件自动焊接轨迹生成系统及方法 - Google Patents
一种复杂异型工件自动焊接轨迹生成系统及方法 Download PDFInfo
- Publication number
- CN106271281B CN106271281B CN201610859096.6A CN201610859096A CN106271281B CN 106271281 B CN106271281 B CN 106271281B CN 201610859096 A CN201610859096 A CN 201610859096A CN 106271281 B CN106271281 B CN 106271281B
- Authority
- CN
- China
- Prior art keywords
- mrow
- msub
- munderover
- mover
- workpiece
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/1653—Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23K—SOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
- B23K37/00—Auxiliary devices or processes, not specially adapted to a procedure covered by only one of the preceding main groups
- B23K37/02—Carriages for supporting the welding or cutting element
- B23K37/0252—Steering means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1671—Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
Abstract
本发明公开了一种复杂异型工件自动焊接轨迹生成系统,包括工作台、用于固定工件的工件支撑回转台、实现工件三轴移动的工件装夹系统、机器视觉测量系统、触控显示屏,运动控制系统,所述的工件支撑回转台和工件装夹系统设置在工作台上;所述触控显示屏与运动控制系统电路连接,并通过安装手臂固定在工作台一侧,所述机器视觉测量系统通过机器视觉测量系统支撑台固定在工作台上用于根据获取的工件图像获得焊接轨迹;所述的运动控制系统包括运动控制器,用于驱动焊接机械手进行相应的轮廓焊接。本发明还公开了一种复杂异型工件自动焊接轨迹生成方法。本发明具有适应工件种类多、生成轨迹快、焊接质量高等优点。
Description
技术领域
本发明涉及自动焊接技术,尤其涉及一种复杂异型工件自动焊接轨迹生成的系统及方法。
背景技术
自动焊接技术在工业及制造领域均得到广泛的应用和提高,焊接技术的发展越来越受到工业生产及制造企业的关注;如今,市场上已经出现了很多针对某一特定产品自动焊接装置,例如焊接大型集装箱门板长焊缝的自动焊接装置和点焊车架外形轮廓的焊接装置。这种自动焊接装置生产效率高、工作稳定、焊接质量好、能适用各种复杂的环境。但大部分的自动焊接装置采用的是示教再现的方法,缺乏对焊接过程中出现的参数改变和不确定扰动的自适应能力。
复杂异型薄壁工件焊接过程中出现大的应力变形,需要在前工序中采用人工点焊完成工件的定位,这将引起定位误差和薄壁工件外形轮廓的变形,传统的示教再现的焊接方式已经不再适用。针对该问题,提出了一种基于机器视觉的复杂异型薄壁工件焊接轨迹在线生成方法。
发明内容
本发明的目的在于克服现有技术的不足,提出一种具有适应工件种类多、生成轨迹快、焊接质量高等优点的自动焊接轨迹生成系统及方法。
上述优点是通过以下技术方案实现的:
一种复杂异型工件自动焊接轨迹生成系统,包括工作台、用于固定工件的工件支撑回转台、实现工件三轴移动的工件装夹系统、机器视觉测量系统、触控显示屏,运动控制系统,
所述的工件支撑回转台和工件装夹系统设置在工作台上,所述的工件支撑回转台包括竖直设置在工作台上的旋转伺服电机、连接所述旋转伺服电机输出轴的旋转夹具;所述触控显示屏与运动控制系统电路连接,并通过安装手臂固定在工作台一侧,所述机器视觉测量系统通过机器视觉测量系统支撑台固定在工作台上,并通过以太网口与工控机通信,用于根据获取的工件图像获得焊接轨迹;
所述的运动控制系统包括运动控制器,通过通信线与工控机进行数据的传输与读取,用于结合生成的焊接轨迹发送运动脉冲到各伺服电机,驱动焊接机械手进行相应的轮廓焊接。
进一步地,所述的工件装夹系统由下至上依次包括固定在工作台上的X向驱动气缸、通过气缸安装架竖直设置在X向驱动气缸移动部上的Z向驱动气缸、设置在所述Z向驱动气缸移动部上的Y向驱动气缸,所述Y向驱动气缸的前端设置有机械手。
进一步地,所述的Z向驱动气缸包括相互平行设置的第一Z向驱动气缸和第二Z向驱动气缸,所述的所述Y向驱动气缸包括相互平行设置的第一Y向驱动气缸和第二Y向驱动气缸,所述第一Y向驱动气缸的前端设置有第二机械手,后端设置在第一Z向驱动气缸上,所述第二Y向驱动气缸前端设置有第一机械手,后端设置在第二Z向驱动气缸上。
进一步地,所述工件支撑回转台的两侧分别设置有用于放置工件的预装工位和冷却工位,所述的预装工位、冷却工位与工件支撑回转台的间距与第一Z向驱动气缸和第二Z向驱动气缸的间距相同。
进一步地,所述的机器视觉测量系统包括固定在机器视觉测量系统支撑台上的相机驱动气缸、相机组件,所述相机组件由上至下包括相机、镜头、光源,所述相机组件通过相机固定件与相机驱动气缸的活动端相连接。
一种基于所述系统的复杂异型工件自动焊接轨迹生成方法,包括步骤:
(1)相机组件获取工件图像,并对所获取的图像进行预处理后提取外形轮廓得到数据点;
(2)将获得的数据点进行NURBS拟合,从而获得焊接轨迹;
(3)运动控制系统结合生成的焊接轨迹发送相应运动脉冲到各伺服电机,驱动焊接机械手进行相应的轮廓焊接。
进一步地,所述的步骤(1)具体包括:
(11)获取工件图像,运用Halcon对图像进行分离、腐蚀、提取骨架处理;
(12)将与焊接轨迹无关的图像噪声区域剔除;
(13)获得亚像素进度下的图像轮廓;
(14)获取图像轮廓的数据点。
进一步地,所述的步骤(12)具体包括:
(121)设定面积上下阈值;
(122)计算联通区域的阈值;
(123)将面积阈值之外的面积灰度值设为0;
(124)设定宽度上下阈值;
(125)计算剩余连通区域的宽度;
(126)将宽度阈值之外的区域灰度值设为0;
(127)设定高度上下阈值;
(128)将高度阈值之外的区域灰度值设为0。
进一步地,所述的步骤(2)具体包括:
(21)NURBS拟合:用最小二乘全局逼近的方法对提取出来的数据点进行拟合:
设定一条K次NURBS曲线可以表示如下:
其中基函数
其中Pi(i=0,1,…n)为第i个控制顶点;ωi=(i=0,1,…,n)为Pi的权因子,由两者可知,当给定一条参数曲线的Pi、ωi、K和U后,就可以确定一条K次NURBS曲线,选择K=3;
(22)NURBS曲线参数化:根据提取出来的数据点{Qk},k=0,1,…,n,采用弦长参数化,得到各数据点的参数值:
令d为总弦长,则
则
(23)数据点权值的设定:权因子ωi只影响定义在参数区间[ui,ui+k)上的曲线形状,ωi可以看成控制顶点Pi对NURBS曲线的引力系数,ωi增大时,曲线被拉伸向控制点Pi,ωi减小时,曲线则远离控制点,为了避免非线性问题,设定权值为1;
(24)最小二乘曲线逼近:根据计算好的数据点的参数值和节点矢量;建立并求解线性最小二乘问题求解未知控制点:
由于不是曲线上与Qk最接近的点,令
然后令
Px,Py f是关于n-1个变量P1,…,Pn-1的标量值函数[18],现应用标准的线性最小二乘拟合技术,为使目标函数f关于n-1个未知控制点Pl的偏导都等于零,它的第l个偏导为
这意味着
于是
上式是一个控制点P1,…,Pn-1为未知量的线性方程,令l=1,2,…,n-1,则得到n-1个含未知量和n-1个方程的线性方程组:
(NTN)P=R,
所述线性方程组中,有一个系数矩阵,两个右端项:由R中各元素的x,y坐标组成的列向量Rx,Ry;分别对应于两组未知量:由P中各控制点的x,y坐标组成的列向量Px,Py;解该线性方程组,即可得到各控制点的坐标;
(25)将求解全局逼近所需要的条件Pi、ωi、K和U代入到步骤(21),即可拟合出NURBS曲线。
进一步地,所述的步骤(3)具体包括:在运动控制器中,进行曲线插补,生成一系列曲线插补点,再通过给伺服电机每个伺服周期发送脉冲的方式,驱动焊机进行相应的焊接轨迹焊接,完成轮廓焊接过程。
相比现有技术,本发明的优点:满足了在线条件下对图像处理效率的要求,且视觉系统与焊枪不同步工作,因此能够有效避免弧光、焊渣、高温、粉尘等恶劣环境对图像质量的干扰,而且对不同外形轮廓的复杂异型薄壁工件都能快速、准确的生成平滑的焊接轨迹,保证薄壁工件的焊接质量。全局逼近拟合算法能够拟合出效果较好的NURBS曲线,能够避免图像轮廓的坏点和尖点,从而使焊接轨迹平滑,避免了焊接过程中的抖动问题,具有适应工件种类多、生成轨迹快、焊接质量高等优点。
附图说明
图1为本发明实施例的焊接轨迹生成系统立体结构示意图。
图2为本发明实施例的焊接轨迹生成系统另一视角立体结构示意图。
图3是本发明实施例的抓取系统结构示意图。
图4为本发明实施例的图像处理方法流程示意图。
图中所示为:1-工作台;2-触控显示屏;3-预装工位;4-相机驱动气缸;5-机器视觉测量系统支撑台;6-下压气缸;7-相机;8-镜头;9-相机固定件;10-第一Y向驱动气缸;11-第一Z向驱动气缸;12-第二Y向驱动气缸;13-第二Z向驱动气缸;14-气缸安装架;15-X向驱动气缸;16-冷却工位;17-第一机械手;18-旋转伺服电机;19-旋转夹具;20-第二机械手;21-光源。
具体实施方式
下面结合附图及实施例对本发明作进一步的详细说明。
实施例一
如图1至图3所示,一种复杂异型工件自动焊接轨迹生成系统,包括工作台、用于固定工件的工件支撑回转台、实现工件三轴移动的工件装夹系统、机器视觉测量系统、触控显示屏,运动控制系统,
所述的工件支撑回转台和工件装夹系统设置在工作台上,所述的工件支撑回转台包括竖直设置在工作台1上的旋转伺服电机18、连接所述旋转伺服电机18输出轴的旋转夹具19;所述触控显示屏与运动控制系统电路连接,并通过安装手臂固定在工作台一侧,所述机器视觉测量系统通过机器视觉测量系统支撑台固定在工作台上,并通过以太网口与工控机通信,用于根据获取的工件图像获得焊接轨迹;
所述的运动控制系统包括运动控制器,通过通信线与工控机进行数据的传输与读取,用于结合生成的焊接轨迹发送运动脉冲到各伺服电机,驱动焊接机械手进行相应的轮廓焊接,本实施例采用固高运动控制器。
具体而言,所述的工件装夹系统由下至上依次包括固定在工作台1上的X向驱动气缸15、通过气缸安装架14竖直设置在X向驱动气缸15移动部上的Z向驱动气缸、设置在所述Z向驱动气缸移动部上的Y向驱动气缸,所述Y向驱动气缸的前端设置有机械手。
具体而言,如图3所示,所述的Z向驱动气缸包括相互平行设置的第一Z向驱动气缸11和第二Z向驱动气缸13,所述的所述Y向驱动气缸包括相互平行设置的第一Y向驱动气缸10和第二Y向驱动气缸12,所述第一Y向驱动气缸10的前端设置有第二机械手20,后端设置在第一Z向驱动气缸11上,所述第二Y向驱动气缸12前端设置有第一机械手17,后端设置在第二Z向驱动气缸13上。
具体而言,所述工件支撑回转台的两侧分别设置有用于放置工件的预装工位3和冷却工位16,所述的预装工位3、冷却工位16与工件支撑回转台的间距与第一Z向驱动气缸11和第二Z向驱动气缸13的间距相同,这样,当X向驱动气缸15驱动第一Z向驱动气缸11、第二Z向驱动气缸13、第一Y向驱动气缸10、第二Y向驱动气缸12同步移动时,下压气缸6上抬,第一机械手17将位于工件支撑回转台上已经焊接好的工件夹持并放置到冷却工位16上,同时,第二机械手20将待焊接的工件从预装工位3夹持并放置到工件支撑回转台的旋转夹具19上,接着下压气缸6压紧工件,进行焊接,有效提高作业效率,提高产量。
具体而言,所述的机器视觉测量系统包括固定在机器视觉测量系统支撑台上的相机驱动气缸4、相机组件,所述相机组件由上至下包括相机7、镜头8、光源21,所述相机组件通过相机固定件9与相机驱动气缸4的活动端相连接。
实施例二
一种基于所述系统的复杂异型工件自动焊接轨迹生成方法,包括步骤:
(1)相机组件获取工件图像,并对所获取的图像进行预处理后提取外形轮廓得到数据点;
(2)将获得的数据点进行NURBS拟合,从而获得焊接轨迹;
(3)运动控制系统结合生成的焊接轨迹发送相应运动脉冲到各伺服电机,驱动焊接机械手进行相应的轮廓焊接。
具体而言,所述的步骤(1)具体包括:
(11)获取工件图像,运用Halcon对图像进行分离、腐蚀、提取骨架处理;
(12)将与焊接轨迹无关的图像噪声区域剔除;
(13)获得亚像素进度下的图像轮廓;
(14)获取图像轮廓的数据点。
相机获取的图像包含了很多非加工工件的信息,包括工件安装装置、焊接转台等,本实施例运用Halcon对图像进行分离、腐蚀、提取骨架处理,将与焊接轨迹无关的上述噪声区域剔除,从而提取出焊接工件的外形轮廓,并为NURBS曲线拟合提供数据点。
具体而言,如图4所示,所述的步骤(12)具体包括:
(121)设定面积上下阈值;
(122)计算联通区域的阈值;
(123)将面积阈值之外的面积灰度值设为0;
(124)设定宽度上下阈值;
(125)计算剩余连通区域的宽度;
(126)将宽度阈值之外的区域灰度值设为0;
(127)设定高度上下阈值;
(128)将高度阈值之外的区域灰度值设为0。
具体而言,所述的步骤(2)具体包括:
(21)NURBS拟合:用最小二乘全局逼近的方法对提取出来的数据点进行拟合:
设定一条K次NURBS曲线可以表示如下:
其中基函数
其中Pi(i=0,1,…n)为第i个控制顶点;ωi=(i=0,1,…,n)为Pi的权因子,由两者可知,当给定一条参数曲线的Pi、ωi、K和U后,就可以确定一条K次NURBS曲线,选择K=3;
(22)NURBS曲线参数化:根据提取出来的数据点{Qk},k=0,1,…,n,采用弦长参数化,得到各数据点的参数值:
令d为总弦长,则
则
(23)数据点权值的设定:权因子ωi只影响定义在参数区间[ui,ui+k)上的曲线形状,ωi可以看成控制顶点Pi对NURBS曲线的引力系数,ωi增大时,曲线被拉伸向控制点Pi,ωi减小时,曲线则远离控制点,为了避免非线性问题,设定权值为1;
(24)最小二乘曲线逼近:最小二乘曲线逼近是全局逼近中比较合理的一种方法,它能够剔除一些远离目标曲线的数据点的影响,因此根据计算好的数据点的参数值和节点矢量;建立并求解线性最小二乘问题求解未知控制点:
由于不是曲线上与Qk最接近的点,令
然后令
Px,Py f是关于n-1个变量P1,…,Pn-1的标量值函数[18],现应用标准的线性最小二乘拟合技术,为使目标函数f关于n-1个未知控制点Pl的偏导都等于零,它的第l个偏导为
这意味着
于是
上式是一个控制点P1,…,Pn-1为未知量的线性方程,令l=1,2,…,n-1,则得到n-1个含未知量和n-1个方程的线性方程组:
(NTN)P=R,
所述线性方程组中,有一个系数矩阵,两个右端项:由R中各元素的x,y坐标组成的列向量Rx,Ry;分别对应于两组未知量:由P中各控制点的x,y坐标组成的列向量Px,Py;解该线性方程组,即可得到各控制点的坐标;
(25)将求解全局逼近所需要的条件Pi、ωi、K和U代入到步骤(21),即可拟合出NURBS曲线。
具体而言,所述的步骤(3)具体包括:在运动控制器中,进行曲线插补,生成一系列曲线插补点。再通过给伺服电机每个伺服周期发送脉冲的方式,驱动焊机进行相应的焊接轨迹焊接,完成轮廓焊接过程。
本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (4)
1.一种复杂异型工件自动焊接轨迹生成方法,基于复杂异型工件自动焊接轨迹生成系统,所述复杂异型工件自动焊接轨迹生成系统包括工作台、用于固定工件的工件支撑回转台、实现工件三轴移动的工件装夹系统、机器视觉测量系统、触控显示屏,运动控制系统,所述的工件支撑回转台和工件装夹系统设置在工作台上,所述的工件支撑回转台包括竖直设置在工作台(1)上的旋转伺服电机(18)、连接所述旋转伺服电机(18)输出轴的旋转夹具(19);所述触控显示屏与运动控制系统电路连接,并通过安装手臂固定在工作台一侧,所述机器视觉测量系统通过机器视觉测量系统支撑台固定在工作台(1)上,并通过以太网口与工控机通信,用于根据获取的工件图像获得焊接轨迹;所述的运动控制系统包括运动控制器,通过通信线与工控机进行数据的传输与读取,用于结合生成的焊接轨迹发送运动脉冲到各伺服电机,驱动焊接机械手进行相应的轮廓焊接;所述的工件装夹系统由下至上依次包括固定在工作台(1)上的X向驱动气缸(15)、通过气缸安装架(14)竖直设置在X向驱动气缸(15)移动部上的Z向驱动气缸、设置在所述Z向驱动气缸移动部上的Y向驱动气缸,所述Y向驱动气缸的前端设置有机械手;所述的Z向驱动气缸包括相互平行设置的第一Z向驱动气缸(11)和第二Z向驱动气缸(13),所述的所述Y向驱动气缸包括相互平行设置的第一Y向驱动气缸(10)和第二Y向驱动气缸(12),所述第一Y向驱动气缸(10)的前端设置有第二机械手(20),后端设置在第一Z向驱动气缸(11)上,所述第二Y向驱动气缸(12)前端设置有第一机械手(17),后端设置在第二Z向驱动气缸(13)上;所述工件支撑回转台的两侧分别设置有用于放置工件的预装工位(3)和冷却工位(16),所述的预装工位(3)、冷却工位(16)与工件支撑回转台的间距与第一Z向驱动气缸(11)和第二Z向驱动气缸(13)的间距相同;所述的机器视觉测量系统包括固定在机器视觉测量系统支撑台上的相机驱动气缸(4)、相机组件,所述相机组件由上至下包括相机(7)、镜头(8)、光源(21),所述相机组件通过相机固定件(9)与相机驱动气缸(4)的活动端相连接,其特征在于,该方法包括步骤:
(1)相机组件获取工件图像,并对所获取的图像进行预处理后提取外形轮廓得到数据点;
(2)将获得的数据点进行NURBS拟合,从而获得焊接轨迹;
(3)运动控制系统结合生成的焊接轨迹发送相应运动脉冲到各伺服电机,驱动焊接机械手进行相应的轮廓焊接,具体包括:在运动控制器中,进行曲线插补,生成一系列曲线插补点,再通过给伺服电机每个伺服周期发送脉冲的方式,驱动焊机进行相应的焊接轨迹焊接,完成轮廓焊接过程。
2.根据权利要求1所述的方法,其特征在于:所述的步骤(1)具体包括:
(11)获取工件图像,运用Halcon对图像进行分离、腐蚀、提取骨架处理;
(12)将与焊接轨迹无关的图像噪声区域剔除;
(13)获得亚像素进度下的图像轮廓;
(14)获取图像轮廓的数据点。
3.根据权利要求2所述的方法,其特征在于:所述的步骤(12)具体包括:
(121)设定面积上下阈值;
(122)计算联通区域的阈值;
(123)将面积阈值之外的面积灰度值设为0;
(124)设定宽度上下阈值;
(125)计算剩余连通区域的宽度;
(126)将宽度阈值之外的区域灰度值设为0;
(127)设定高度上下阈值;
(128)将高度阈值之外的区域灰度值设为0。
4.根据权利要求1所述的方法,其特征在于:所述的步骤(2)具体包括:
(21)NURBS拟合:用最小二乘全局逼近的方法对提取出来的数据点进行拟合:
设定一条K次NURBS曲线可以表示如下:
<mrow>
<mi>C</mi>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfrac>
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>0</mn>
</mrow>
<mi>n</mi>
</munderover>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>k</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>)</mo>
</mrow>
<msub>
<mi>&omega;</mi>
<mi>i</mi>
</msub>
<msub>
<mi>P</mi>
<mi>i</mi>
</msub>
</mrow>
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>0</mn>
</mrow>
<mi>n</mi>
</munderover>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>k</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>)</mo>
</mrow>
<msub>
<mi>&omega;</mi>
<mi>i</mi>
</msub>
</mrow>
</mfrac>
<mo>,</mo>
<mn>0</mn>
<mo>&le;</mo>
<mi>u</mi>
<mo>&le;</mo>
<mn>1</mn>
<mo>,</mo>
</mrow>
其中基函数
其中Pi(i=0,1,…n)为第i个控制顶点;ωi=(i=0,1,…,n)为Pi的权因子,由两者可知,当给定一条参数曲线的Pi、ωi、K和U后,就可以确定一条K次NURBS曲线,选择K=3;
(22)NURBS曲线参数化:根据提取出来的数据点{Qk},k=0,1,…,n,采用弦长参数化,得到各数据点的参数值:
令d为总弦长,则
则
(23)数据点权值的设定:权因子ωi只影响定义在参数区间[ui,ui+k)上的曲线形状,ωi可以看成控制顶点Pi对NURBS曲线的引力系数,ωi增大时,曲线被拉伸向控制点Pi,ωi减小时,曲线则远离控制点,为了避免非线性问题,设定权值为1;
(24)最小二乘曲线逼近:根据计算好的数据点的参数值和节点矢量;建立并求解线性最小二乘问题求解未知控制点:
由于不是曲线上与Qk最接近的点,令
<mrow>
<msub>
<mi>R</mi>
<mi>k</mi>
</msub>
<mo>=</mo>
<msub>
<mi>Q</mi>
<mi>k</mi>
</msub>
<mo>-</mo>
<msub>
<mi>N</mi>
<mrow>
<mn>0</mn>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
</mrow>
<msub>
<mi>Q</mi>
<mn>0</mn>
</msub>
<mo>-</mo>
<msub>
<mi>N</mi>
<mrow>
<mi>n</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
</mrow>
<msub>
<mi>Q</mi>
<mi>m</mi>
</msub>
<mo>,</mo>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mo>...</mo>
<mo>,</mo>
<mi>m</mi>
<mo>-</mo>
<mn>1</mn>
<mo>,</mo>
</mrow>
然后令
<mrow>
<mtable>
<mtr>
<mtd>
<mrow>
<mi>f</mi>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>m</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msup>
<mrow>
<mo>|</mo>
<msub>
<mi>Q</mi>
<mi>K</mi>
</msub>
<mo>-</mo>
<mi>c</mi>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>|</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>m</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msup>
<mrow>
<mo>|</mo>
<msub>
<mi>R</mi>
<mi>K</mi>
</msub>
<mo>-</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
</mrow>
<msub>
<mi>P</mi>
<mi>i</mi>
</msub>
<mo>|</mo>
</mrow>
<mn>2</mn>
</msup>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>m</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<mrow>
<mo>(</mo>
<msub>
<mi>R</mi>
<mi>K</mi>
</msub>
<mo>-</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
<msub>
<mi>P</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mrow>
<mo>(</mo>
<msub>
<mi>R</mi>
<mi>K</mi>
</msub>
<mo>-</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
<msub>
<mi>P</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>m</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<mo>&lsqb;</mo>
<msub>
<mi>R</mi>
<mi>K</mi>
</msub>
<msub>
<mi>R</mi>
<mi>K</mi>
</msub>
<mo>-</mo>
<mn>2</mn>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
</mrow>
<mrow>
<mo>(</mo>
<msub>
<mi>R</mi>
<mi>K</mi>
</msub>
<msub>
<mi>P</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>+</mo>
<mrow>
<mo>(</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
<msub>
<mi>P</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mrow>
<mo>(</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
<msub>
<mi>P</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>&rsqb;</mo>
</mrow>
</mtd>
</mtr>
</mtable>
<mo>,</mo>
</mrow>
Px,Py f是关于n-1个变量P1,…,Pn-1的标量值函数[18],现应用标准的线性最小二乘拟合技术,为使目标函数f关于n-1个未知控制点Pl的偏导都等于零,它的第l个偏导为
<mrow>
<mfrac>
<mrow>
<mo>&part;</mo>
<mi>f</mi>
</mrow>
<mrow>
<mo>&part;</mo>
<msub>
<mi>P</mi>
<mi>l</mi>
</msub>
</mrow>
</mfrac>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>m</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<mrow>
<mo>(</mo>
<mo>-</mo>
<mn>2</mn>
<msub>
<mi>N</mi>
<mrow>
<mi>l</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
<msub>
<mi>R</mi>
<mi>k</mi>
</msub>
<mo>+</mo>
<mn>2</mn>
<msub>
<mi>N</mi>
<mrow>
<mi>l</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
<msub>
<mi>P</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>,</mo>
</mrow>
这意味着
<mrow>
<mo>-</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>m</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>N</mi>
<mrow>
<mi>l</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
</mrow>
<msub>
<mi>R</mi>
<mi>k</mi>
</msub>
<mo>+</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>m</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>N</mi>
<mrow>
<mi>l</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
</mrow>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
</mrow>
<msub>
<mi>P</mi>
<mi>i</mi>
</msub>
<mo>=</mo>
<mn>0</mn>
<mo>,</mo>
</mrow>
于是
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<mrow>
<mo>(</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>m</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>N</mi>
<mrow>
<mi>l</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
<mo>)</mo>
</mrow>
<msub>
<mi>P</mi>
<mi>i</mi>
</msub>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>m</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>N</mi>
<mrow>
<mi>l</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&OverBar;</mo>
</mover>
<mi>k</mi>
</msub>
<mo>)</mo>
</mrow>
<msub>
<mi>R</mi>
<mi>k</mi>
</msub>
<mo>,</mo>
</mrow>
上式是一个控制点P1,…,Pn-1为未知量的线性方程,令l=1,2,…,n-1,则得到n-1个含未知量和n-1个方程的线性方程组:
(NTN)P=R,
所述线性方程组中,有一个系数矩阵,两个右端项:由R中各元素的x,y坐标组成的列向量Rx,Ry;分别对应于两组未知量:由P中各控制点的x,y坐标组成的列向量Px,Py;解该线性方程组,即可得到各控制点的坐标;
(25)将求解全局逼近所需要的条件Pi、ωi、K和U代入到步骤(21),即可拟合出NURBS曲线。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610859096.6A CN106271281B (zh) | 2016-09-27 | 2016-09-27 | 一种复杂异型工件自动焊接轨迹生成系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610859096.6A CN106271281B (zh) | 2016-09-27 | 2016-09-27 | 一种复杂异型工件自动焊接轨迹生成系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106271281A CN106271281A (zh) | 2017-01-04 |
CN106271281B true CN106271281B (zh) | 2018-04-13 |
Family
ID=57715859
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610859096.6A Active CN106271281B (zh) | 2016-09-27 | 2016-09-27 | 一种复杂异型工件自动焊接轨迹生成系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106271281B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106843304A (zh) * | 2017-03-31 | 2017-06-13 | 深圳诺欧博智能科技有限公司 | 电机通用控制系统及方法 |
CN107038733B (zh) * | 2017-05-03 | 2021-02-05 | 浙江精工钢结构集团有限公司 | Nurbs曲线的多段圆弧拟合方法 |
CN107378324B (zh) * | 2017-08-18 | 2023-06-16 | 华南理工大学 | 一种基于视觉提取的异型工件的焊接系统及方法 |
CN108646667B (zh) * | 2018-03-05 | 2019-11-05 | 北京华航唯实机器人科技股份有限公司 | 轨迹生成方法及装置、终端 |
CN108972547B (zh) * | 2018-06-22 | 2021-07-16 | 华南理工大学 | 一种八自由度焊接轨迹在线生成系统协调运动控制方法 |
CN110871439A (zh) * | 2018-09-03 | 2020-03-10 | 苏州睿牛机器人技术有限公司 | 一种爬行弧焊机器人及爬行弧焊机器人的控制方法、装置 |
CN109159127B (zh) * | 2018-11-20 | 2021-11-30 | 广东工业大学 | 一种基于蚁群算法的双焊接机器人智能路径规划方法 |
CN109732027A (zh) * | 2019-02-27 | 2019-05-10 | 温州大学 | 一种多工位冷墩机自动换模装置 |
CN113211433B (zh) * | 2021-04-21 | 2022-09-20 | 山东科技大学 | 一种基于复合特征的分离式视觉伺服控制方法 |
CN113759824B (zh) * | 2021-09-29 | 2023-03-14 | 苏州谷夫道自动化科技有限公司 | 基于误差约束的轨迹优化方法及系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4292492B2 (ja) * | 1999-12-10 | 2009-07-08 | 株式会社安川電機 | 溶接評価装置 |
CN201432161Y (zh) * | 2009-06-08 | 2010-03-31 | 广州粤研液压机电有限公司 | 双枪自动环缝焊接机 |
CN102699534B (zh) * | 2012-06-26 | 2014-10-15 | 哈尔滨工业大学 | 基于扫描式激光视觉传感的厚板窄间隙深坡口激光自动化多层焊焊接方法 |
CN203817698U (zh) * | 2014-03-28 | 2014-09-10 | 东莞市鸿宝锂电科技有限公司 | 一种锂电池自动焊接设备 |
CN105772943B (zh) * | 2016-05-11 | 2018-02-13 | 温州职业技术学院 | 多工位激光焊接自动化成套装备 |
CN206065732U (zh) * | 2016-09-27 | 2017-04-05 | 华南理工大学 | 一种复杂异型工件自动焊接轨迹生成系统 |
-
2016
- 2016-09-27 CN CN201610859096.6A patent/CN106271281B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106271281A (zh) | 2017-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106271281B (zh) | 一种复杂异型工件自动焊接轨迹生成系统及方法 | |
CN110524582B (zh) | 一种柔性组对焊接机器人工作站 | |
CN103846606B (zh) | 基于机器视觉的焊接轨迹校正专用测试装置及方法 | |
CN107175406B (zh) | 焊接轨迹的控制方法和系统 | |
CN104801869B (zh) | 一种汽车轮罩自动化焊接生产线及其生产方法 | |
CN105364266B (zh) | 一种机械臂运动轨迹调整系统及方法 | |
CN103753061B (zh) | 一种叉车货叉架的加工方法 | |
CN101690994A (zh) | 一种数控激光加工装置 | |
CN106003066B (zh) | 一种机器人程序控制系统 | |
CN106965417B (zh) | 一种用于智能电子产品嵌线3d打印的系统及打印方法 | |
CN107677688A (zh) | 笔记本电脑外观检测装置 | |
CN107498152A (zh) | 一种分级定位的大面积钣金工装结构自动焊接装置 | |
CN105108274B (zh) | 一种液压支架焊接系统及其焊接方法 | |
CN110534334A (zh) | 一种变压器铁芯自动叠片机器人 | |
CN112122841A (zh) | 一种基于视觉和三维模型识别的龙门式智能焊接机器人 | |
CN204724990U (zh) | 一种集成四轴全自动智能氩弧焊机 | |
CN106425178B (zh) | 一种复杂异型工件自动焊接系统及方法 | |
CN206065732U (zh) | 一种复杂异型工件自动焊接轨迹生成系统 | |
CN117415520A (zh) | 一种动触点软铜线焊接生产线 | |
CN210689546U (zh) | 一种汽车玻璃曲率激光检测装置 | |
CN113399820A (zh) | 一种大幅面板材的激光拼焊方法及装置 | |
CN111151602A (zh) | 一种具有容错功能的机器人折弯系统及方法 | |
CN206105195U (zh) | 一种复杂异型工件自动焊接系统 | |
CN116197914A (zh) | 一种机器人上下料用轨迹规划方法 | |
CN207264177U (zh) | 一种基于伺服系统的高频焊管成型设备自动控制装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |