用于激光加工的示教系统以及示教方法与流程

文档序号:32752773发布日期:2022-12-31 01:52阅读:100来源:国知局
用于激光加工的示教系统以及示教方法与流程

1.本公开涉及用于激光加工的示教系统以及示教方法。


背景技术:

2.已知如下示教装置:在机器人的臂前端搭载具备电扫描器的加工头而对工件进行焊接等加工的激光加工系统中,自动生成示教数据的示教装置(例如,参照专利文献1。)。
3.现有技术文献
4.专利文献
5.专利文献1:日本特开2020-035404号公报


技术实现要素:

6.发明要解决的问题
7.如果激光的照射角度相对于加工点过小,即,对加工面以接近于垂直的角度照射激光,则由于加工点处的激光的正反射,存在激光的高强度的反射光入射到加工头的情况。在这种情况下,加工动作可能会停止或者加工头受到损伤,因此优选限制照射角度的最小值,以尽可能地避免该情况。
8.另一方面,反射光的强度会根据加工面的状态或者材质而变动,因此,一律限制照射角度的最小值会过度地限制激光的照射范围,难以创建用于达成所期望的循环时间的示教数据。因此,期望在不过度限制激光的照射范围的情况下创建示教数据。
9.用于解决问题的方案
10.本公开的一方面是一种示教系统,所述示教系统用于激光加工,示教安装有射出激光的加工头的机器人的动作以及上述加工头的动作,所述示教系统具备:传感器,其检测从加工对象物表面返回到所述加工头的所述激光的反射光的强度;以及至少一个处理器,该处理器提供由各加工点处的所述加工对象物表面的法线与从所述加工头射出的所述激光所成的角度构成的照射角度的最小值和最大值、以及所述加工点的坐标;通过所述最小值以上且小于所述最大值的所述照射角度的所述激光,生成能够对所有的所述加工点进行激光加工的示教数据;在使用被设定为使所述照射角度为所述最小值时的所述反射光的强度为允许值以下的强度的所述激光,使所述机器人的控制装置执行了包含所述示教数据的动作程序时,判定在所有的所述加工点由所述传感器检测出的所述反射光的强度中是否存在超过规定的阈值的强度;在判定为存在超过所述阈值的强度的所述反射光的情况下,以使相应的所述加工点的所述最小值增大规定的增量的方式进行调整;重复使用最近的调整后的所述最小值而进行的所述示教数据的生成、判定以及所述最小值的调整,直到判定为不存在超过所述阈值的强度的所述反射光为止。
附图说明
11.图1是示出本公开的一个实施方式的示教系统的整体结构图。
12.图2是包含光传感器的加工头的构成图。
13.图3是对使用了图1的示教系统的示教方法进行说明的流程图。
14.图4是对图3的流程图的动作程序创建处理进行说明的流程图。
15.图5是对图4的流程图的打点组确定处理进行说明的流程图。
16.图6是对图4的流程图的动作速度确定处理进行说明的流程图。
17.图7是用于说明打点群的分组的图。
18.图8是表示定义打点组的平面的例子的图。
19.图9是用于说明分组的优化的图。
20.图10是示出焊接时间的疏密程度的例子的图。
21.图11是用于说明焊接时间的疏密程度的图。
22.图12是用于说明组间的移动顺序的优化的图。
23.图13是用于说明可焊接期间的确定的图。
24.图14是用于说明可焊接期间和照射角度的最小值的图。
25.图15是用于说明打点顺序的确定的图。
具体实施方式
26.以下参照附图,对本公开的一个实施方式的用于激光加工的示教系统100以及示教方法进行说明。
27.如图1所示,本实施方式的示教系统100是如下系统:从安装于机器人10的前端的加工头50对工件(加工对象物)照射激光,并生成用于实施激光焊接(激光加工)的、机器人10的动作以及加工头50的动作的示教数据。
28.机器人10例如是垂直多关节型机器人。加工头50具备电扫描器(以下简称为扫描器。)51,能够以规定的角度范围内的期望角度射出激光。
29.扫描器51具有以下功能:通过半透半反射镜52的驱动使从激光振荡器30经由光纤发送来的激光沿与光轴正交的二维方向扫描的功能、以及沿光轴方向驱动聚光透镜53而使焦点位置沿光轴方向移动的功能。
30.另外,如图1所示,示教系统100具备设置于加工头50的光传感器(传感器)54、以及至少一个处理器40。
31.如图2所示,光传感器54在与加工头50连接的激光振荡器30与扫描器51之间的光路上,检测从工件w表面经由扫描器51返回的途中被半反射镜52分支的反射光的强度。
32.在本实施方式的示教方法中,如图3所示,处理器40生成动作程序(示教数据)(步骤s1),使控制装置20执行生成的动作程序(步骤s2)。当执行动作程序时,打点p被重置为p=1(步骤s3)。
33.另外,在动作程序的执行过程中,通过光传感器54检测反射光的强度ir(步骤s4),通过处理器40判定检测出的反射光的强度ir是否超过规定的阈值th(步骤s5)。然后,处理器40基于判定结果,针对每个打点调整照射角度的最小值θ
min,p
(步骤s6)。
34.在由处理器40生成动作程序(步骤s1)中,输入各打点处的激光的照射角度的最小值θ
min,p
、最大值θ
max,p
、以及打点(加工点)的位置(坐标)。接着,通过最小值θ
min,p
以上且小于最大值θ
max,p
的照射角度的激光,生成能够焊接所有的打点的示教数据。在此,照射角度是各
打点处的工件w表面的法线与从加工头50射出的激光所成的角度。
35.激光的照射角度的最小值θ
min,p
的初始值例如被设定为在所有的打点pθ
min
=0。
36.激光的照射角度的最大值θ
max,p
被设定为能够在所有的打点p适当实施焊接的角度。
37.具体地说,根据图4所示的流程图来实施由处理器40所进行的动作程序的生成。
38.首先,在处理器40中,除了上述照射角度以及打点位置之外,还读入机器人10、夹具、工件w的模型数据、以及各打点的焊接时间以及焊接图案等动作程序创建处理所需的各种数据(步骤s11)。
39.各种数据可以预先储存于存储器等存储装置,也可以通过操作部输入。或者,也可以通过网络从外部装置输入各种数据。
40.接着,进行确定打点组的处理(步骤s12)。分组满足以下标准(1)(2)。
41.(1)经过打点组内的机器人10的路径与各打点之间的距离为加工头50的动作范围(扫描范围)。
42.(2)当在从各打点向机器人10的路径引出的垂线的垂足的位置沿路径定义了长度与焊接时间相当的线段时,与该焊接时间相当的线段在路径上的密集程度要均匀。
43.图5是表示在图4的步骤s12中进行的打点组的确定处理的详细内容的流程图。作为一个例子,对图7的左侧示出的打点群g0进行分组的情况进行说明。
44.首先,将打点群g0分组为临时的打点组(步骤s21)。在此,一个组规定机器人10按照一个动作命令动作期间进行焊接的多个打点。在一个组内,机器人10按照一个动作命令进行动作,在此期间加工头50进行扫描动作,从而焊接属于组的各打点。
45.在一个动作命令中,机器人10沿直线匀速动作。在此,作为一个例子,将打点群g0分成图7的右侧所示的三个打点组g1~g3。
46.接着,针对各打点组g1~g3,确定经过打点组的中心的机器人10的路径(步骤s22)。经过打点组的中心的直线例如通过最小二乘法求出。
47.作为一个例子,对打点组g1进行说明,路径r1被求出为从各打点101~105到路径r1为止的距离的平方和为最小的直线。此外,由于打点位置是三维空间上的位置,因此各打点101~105实际上分布于三维空间中,但通过定义经过各打点位置的平均位置的平面,并假设各打点101~105存在于将各打点101~105投影到该平面的位置,来进行上述路径的确定。
48.经过各打点位置的平均位置的平面例如可以使用最小二乘法(或者使用newell算法)求得。通过步骤s22的处理,将路径r1、r2、r3分别确定为打点组g1、g2、g3的路径。也可以将路径r1、r2、r3确定为从激光的照射位置向定义打点组g1、g2、g3的平面引出的垂线的垂足在平面上移动的路径。
49.另外,也可以将打点组r1、r2、r3的打点101~105所投影的平面根据打点101~105的分布状态(焊接面的形状)定义为相对于水平方向倾斜的平面。例如,如图8所示,定义打点组g1的平面h1优选定义为相对于定义打点组g2的平面h2倾斜的平面。
50.通过以这种方式确定平面,能够设定与打点组的分布匹配的平面。此外,图8也示出了设定于激光的照射位置d1、d2的、加工头50的动作范围的例子。在机器人10处于与打点组g2对应的路径期间,通过控制机器人10的姿态,能够使加工头50朝向平面h2。
51.接着,针对各打点组r1、r2、r3,确认各打点101~105是否位于加工头50的动作范围内(步骤s23)。例如,对打点组g1进行说明,根据从各打点101~105到路径r1为止的距离是否位于加工头50的动作范围内,能够进行该步骤s23中的确认。当发现了处于加工头50的动作范围外的打点时,从步骤s21的工序开始重新进行分组。
52.接着,基于打点组内的打点的分布和各打点的焊接时间对分组进行优化(步骤s24~s26)。假设图9所示的打点组,对分组的优化进行说明。
53.在图9的例子中,在一个打点组g10内分布有打点131~138。路径p10是针对该打点组g10通过步骤s22的处理设定的路径。
54.如上所述,在与一个动作命令对应的动作中,机器人10匀速动作。因此,在打点密集的部分140为了使机器人10能够完成所有的打点131~135的焊接而将机器人10的动作速度设定得较低的情况下,在打点稀疏的部分141机器人10会以不必要的低速进行动作。
55.因此,在这种情况下,将打点组g10分为部分140的打点组和部分141的打点组更能够提高机器人10的平均速度。即,可以说优选以在一个打点组内的打点的分布均匀的方式进行分组。
56.但是,也需要考虑每个打点的焊接时间不同。
57.因此,如10图所示,在路径p10上设定以从各打点131~138引出到路径上的垂线的垂足的位置为中心的、长度与打点131~138的焊接时间对应的线段。该线段相当于机器人10在路径p10的移动时间中的一个打点的焊接时间,因此,以下称为焊接时间。
58.作为一个例子,在图10中,设定有以从打点132引出到路径p10的垂线的垂足的位置132c为中心的焊接时间132s。图10中,为了方便,各焊接时间由粗的双箭头线表示。
59.首先,计算焊接时间在路径p10上所占的密度(疏密程度)(步骤s24)。在这种情况下,焊接时间的密度也能够表示为焊接时间的集中程度。
60.例如,如图11的上段所示,设定于路径p10上的焊接时间sg1、sg2、sg3之间的间隔d1、d2宽的状态相当于焊接时间的密度低的状态(疏的状态)。
61.与此相反,如图11的下段所示,焊接时间sg10、sg11、sg12之间的间隔d11、d12窄的状态相当于焊接时间密度高的状态(密的状态)。相邻的焊接时间之间的间隔宽的状态表示在与其焊接时间对应的路径p10上的部分能够提高机器人10的速度。与此相对,相邻的焊接时间之间的间隔窄的状态表示在与其焊接时间对应的路径p10上的部分不能提高机器人10的速度。
62.因此,评价设定于某个打点组的路径上的焊接时间的密度的不均(疏密状态的不均),并在密度不均较高时进行再分组。由此,通过缩小各打点组的焊接时间的密度不均,能够提高整体的焊接动作的速度。
63.即,针对设定于某个打点组的路径上的焊接时间之间的间隔,计算表示密度不均的值(步骤s24)。作为一个例子,焊接时间的密度不均也可以通过求出路径上的每个固定长度的小区间的焊接时间的密度,并基于该密度的偏差进行计算。接着,以密度不均越小得分越高的方式计算评价值(步骤s25)。
64.接着,判定各打点组的评价值是否在规定的阈值以上(步骤s26)。在存在评价值小于规定的阈值的组的情况下,对组再次进行分组,以使评价值变高,重复自步骤s21的处理。
65.另外,在所有的打点组的评价值变为阈值以上的情况下,进入步骤s27。通过这种
循环处理,能够对打点分组进行优化。在这种优化的循环处理中,例如也可以使用遗传算法。
66.在步骤s27中,对打点组间的移动顺序以及打点组内的打点顺序进行优化。在此,通过到步骤s26为止的处理,如图12的左侧所示进行分组以及路径的确定。
67.在图12的左侧的例子中,焊接对象的打点群被分组为三个打点组g201~g203,在各打点组g201~g203中设定有路径p201~p203。对设定于打点组g201~g203的路径p201~p203的移动方向、打点组g201~g203间的移动顺序进行优化(步骤s27)。在图12中在左侧示出优化前的状态,在右侧示出优化后的状态。在优化前的状态下,打点组g201~g203间的顺序为打点组g201

打点组g203

打点组g202的顺序。
68.另外,打点组g201被确定为从图中下向上的打点顺序,打点组g203被确定为从图中下向上的打点顺序,打点组g202被确定为从图中左向右的打点顺序。可以理解,在优化前的状态下,打点组g201~g203间的总移动距离较长,有改善的余地。
69.在图12的右侧的优化后的状态下,打点组g201~g203间的移动顺序为打点组g201

打点组g202

打点组g203的顺序。另外,打点组g201被确定为从下向上的打点顺序,打点组g202被确定为从左向右的打点顺序,打点组g203被确定为从上向下的打点顺序。
70.可以理解,在优化后的状态下,打点组间的移动的总距离最小。作为确定使打点组间的总移动距离为最小的移动顺序的方法,可以使用用于解决所谓的巡回推销员问题的本领域已知的各种方法。通过以上的处理,完成图4的流程图中的打点组的确定处理(步骤s12)。
71.接着,在图4的流程图的步骤s13中,确定每个打点组的机器人10的动作速度。图6是表示该动作速度确定处理的详细内容的流程图。首先,设定各打点组的临时动作速度(步骤s31)。
72.针对所有的打点组,临时动作速度可以一律设定被认为能够顺利焊接各打点组的打点的低速度。或者,也可以对各打点组一律设定基于经验值的代表性的速度。
73.接着,使用图4的流程图的步骤s12中确定的机器人10的路径以及在步骤s31中确定的各打点组的动作速度来生成机器人10的动作程序,执行机器人10的动作模拟(步骤s32)。通过执行动作模拟,获取机器人10的每个插补周期的位置数据(以下也称为动作路径))。
74.接下来,使用通过机器人10的动作模拟获得的机器人10的动作路径,计算与在机器人10的动作路径上能够焊接各打点的范围对应的期间(以下,称为可焊接期间)(步骤s33)。如图13所示,关于机器人10的动作路径l1,以求出打点151的能够焊接的可焊接期间的情况为例,对此处的处理进行说明。
75.首先,基于机器人10的动作路径l1上的位置求出安装于机器人10的臂前端的加工头50的位置(具体地,例如加工头50内的聚光透镜53的位置),并求出连结加工头50的位置与打点151的位置的激光的路径。
76.此时,当满足以下条件(1)(2)(3)时,判定为该激光的路径能够焊接。
77.(1)激光的路径与工件w、夹具不干扰;
78.(2)激光的路径是加工头50的动作范围;
79.(3)作为在各打点位置处的工件w的法线方向与激光所成的角度的照射角度在规
定的允许范围内。
80.此外,应用上述条件(3)是为了避免激光对工件w的照射强度产生不均,保持焊接质量,并防止由反射光导致的不良影响。与判定为在动作路径l1上激光的路径能够连续焊接的范围对应的期间是在步骤s33中求出的各打点的可焊接期间。
81.在图13的例子中,附图标记l101表示可焊接期间。也可以在动作路径l1上的多个位置确定可焊接期间。此外,由于可焊接期间l101需要为对象打点的焊接时间以上,因此废弃不满足该时间的范围。
82.在这种情况下,由于针对每个打点输入照射角度的最小值θ
min,p
和最大值θ
max,p
,因此,在照射角度不满足最小值θ
min,p
以上且小于最大值θ
max,p
的条件的情况下,将其从可焊接期间l101去除。即,如图14所示,不对照射角度的最小值θ
min,p
以下的斜线所示的区域(中空区域)照射激光。
83.因此,在机器人10沿着动作路径l1移动期间,如图14中虚线所示,在经过中空区域的路径ll1上照射激光的情况下,可焊接期间中断。但是,如图14中实线所示,通过以沿着避开中空区域的路径ll2照射激光的方式控制加工头50,能够使可焊接期间连续,并能够确保满足焊接时间的可焊接期间。
84.接着,使用在步骤s33中确定的关于各打点的可焊接期间,确定焊接各打点的位置、时间(步骤s34)。在此,作为第一条件,考虑各打点的焊接时间,不依赖于各打点的可焊接期间的开始时间的先后,以可靠地满足各打点的焊接时间的方式确定焊接的时间。
85.例如,假设存在焊接时间相同的为1秒的两个打点a、b,打点a的可焊接期间为从动作开始第1秒到第4秒,打点b的可焊接期间为从动作开始第1.1秒到第2.1秒的情况。在这种情况下,首先可以焊接的是打点a,但如果将打点a从第1秒焊接到第2秒,则不能焊接打点b。在这种情况下,在步骤s34中,将打点b从第1.1秒焊接到第2.1秒,将打点b从第2.1秒焊接到第3.1秒。
86.另外,在步骤s34中,作为第二条件,如果存在不依赖打点的排列顺序而根据动作路径与工件w、夹具的位置关系能够先焊接的打点,则优先焊接该打点。例如,如图15所示,沿着动作路径l2的打点的排列是打点161、162的顺序。但是,在从动作路径l2上观察打点方向的情况下,打点161隐藏在工件w的突起部180的背后,存在打点162能够先焊接的情况。在这种情况下,首先在动作路径l2上的位置202进行打点161的焊接,打点162的焊接在之后的位置203进行。
87.然后,调整并优化动作速度,以能够焊接所有的打点并且缩短循环时间(步骤s35)。例如,可以考虑如下方法:对于所有的打点组,将机器人10的动作速度设为相同的值,降低动作速度直到能够对所有的打点进行焊接为止,然后,对每个打点组提高动作速度。通过上述处理而进行了优化的情况下,结束图4的流程图的动作速度确定处理(步骤s13)。另外,在未优化的情况下,重复从步骤s31开始的工序。
88.接着,使用通过以上的步骤s11~s13的处理而得到的结果,生成机器人10及加工头50的动作程序(步骤s14)。创建机器人10的动作程序,以使机器人10沿着通过步骤s2的处理在所有的打点组内设定的路径,以在步骤s13中确定的动作速度进行动作。
89.加工头50的动作程序被创建为规定加工头50的位置及姿态的动作指令组,以在机器人10按照该动作程序在动作路径上移动时,在针对各打点设定的整个焊接时间内将激光
照射到打点上。
90.这样,能够自动地确定机器人10的最佳动作路径以及焊接各打点的最佳时机。
91.接着,处理器40将以这种方式生成的动作程序发送到控制装置20,并且将从加工头50射出的激光的强度it设定为允许值i
r0
以下,使控制装置20执行动作程序(步骤s2)。在此,允许值i
r0
例如被设定为如下强度:即使对工件w表面照射激光工件w也不会被焊接,且即使工件w表面的正反射光入射到加工头50,也不会对加工头50造成不良影响。
92.在动作程序的执行过程中,通过加工头50所具备的光传感器监控反射光的强度ir(步骤s4),在处理器中判定反射光的强度ir是否超过规定的阈值th(步骤s5)。
93.阈值th例如通过下式(1)计算。
94.th≤i
r0
×it
/is(1)
95.在此,is为实际的激光加工中所使用的激光的强度,i
t
为示教时从加工头50射出的激光的强度。
96.即,阈值th被设定为,在示教时反射光的强度ir相对于从加工头50射出的激光的强度i
t
的比率小于等于允许反射光强度i
ro
相对于实际的激光加工中所使用的激光的强度is的比率。
97.在反射光的强度ir超过阈值th的情况下,使相应的打点的照射角度的最小值θmin,p增大规定的增量δθ(步骤s6),停止反射光的检测,待机至相应的打点p的焊接时间结束为止(步骤s7)。在打点p的焊接时间结束后,针对下一打点p+1(步骤s8),重复从步骤s4开始的工序直到动作程序结束(步骤s9)。
98.如果反射光的强度在阈值th以内,则重复从步骤s4开始的工序直到动作程序结束(步骤s9)。动作程序结束后,判定在所有的打点反射光的强度ir是否在规定的阈值th以下(步骤s10),在任意一个打点反射光的强度ir超过阈值th的情况下,重复从步骤s1开始的工序。如果在步骤s10中在所有的打点反射光的强度ir为阈值th以下,则输出最终的动作程序(步骤s10a)。
99.这样,根据本实施方式,具有如下优点:工件w表面处的激光的反射光不会对加工头50造成不良影响,并且以焊接对象的所有的打点均能够焊接且循环时间最短的方式确定动作速度。
100.即,由于工件w的材料或工件w的表面状态不同,即使照射的激光的强度is恒定,返回到加工头50的反射光的强度ir也会变动。根据本实施方式,在整个动作程序中针对每个打点,自动求出将反射光的强度ir抑制在强度i
r0
以下的照射角度的最小值θ
min,p
,因此具有作业者不需要手动调整动作程序的优点。
101.另外,与预先将各打点p的照射角度的最小值θ
min,p
的初始值θ
min
设定得较大来抑制整个动作程序中的反射光的强度ir的方法不同,能够得到将反射光的强度ir抑制到允许反射光强度i
r0
的最小的最小值θ
min,p
,可以不必过度限制照射角度范围。由此,具有能够容易地实现激光加工所期望的循环时间的优点。
102.此外,在本实施方式中,将激光照射角度的最小值θ
min,p
的初始值θ
min
设定为零,但取而代之,也可以设定为零以外的值。例如,在对表面接近于镜面的工件w进行焊接的情况下等,在照射角度的最小值θ
min,p
为零时,明显存在超过允许反射光强度i
r0
的反射光入射到加工头50的情况。在这种情况下,通过使用最小值θ
min,p
的零以外的初始值θ
min
,能够消除最
初的一次以上的无用处理,缩短搜索适当的最小值的时间。
103.另外,在本实施方式中,作为机器人10例示了垂直多关节型机器人,但并不限定于此,也可以使用其他类型的机器人。另外,也可以使用电扫描器51以外的激光扫描装置。
104.另外,在本实施方式中,例示了激光焊接作为激光加工,但取而代之,也可以适用于其他任意的激光加工。
105.附图标记说明:
106.10 机器人
107.20 控制装置
108.40 处理器
109.50 加工头
110.54 光传感器(传感器)
111.100 示教系统
112.w 工件(加工对象物)
113.th 阈值
114.θ
min 最小值
115.θ
max 最大值
116.ir 反射光的强度
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1