CN105589407B - 工业用机器人的程序修正装置和程序修正方法 - Google Patents

工业用机器人的程序修正装置和程序修正方法 Download PDF

Info

Publication number
CN105589407B
CN105589407B CN201510745167.5A CN201510745167A CN105589407B CN 105589407 B CN105589407 B CN 105589407B CN 201510745167 A CN201510745167 A CN 201510745167A CN 105589407 B CN105589407 B CN 105589407B
Authority
CN
China
Prior art keywords
mentioned
speed
translational speed
time change
correcting mode
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
Application number
CN201510745167.5A
Other languages
English (en)
Other versions
CN105589407A (zh
Inventor
梁衍学
长塚嘉治
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of CN105589407A publication Critical patent/CN105589407A/zh
Application granted granted Critical
Publication of CN105589407B publication Critical patent/CN105589407B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/416Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control of velocity, acceleration or deceleration
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36087Edit, modify program for position errors, moving path, use conversion matrix
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/43Speed, acceleration, deceleration control ADC
    • G05B2219/43011Shorter time by adjusting corner speed, avoid zero speed when engage corner
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/43Speed, acceleration, deceleration control ADC
    • G05B2219/43129Speed as function of curvature, in curves, corners smaller than in straight line
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/02Arm motion controller

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)

Abstract

本发明的程序修正装置具备:执行部,其根据动作程序执行机器人的动作模拟;计算部,其根据动作模拟的结果,计算工具前端点的移动速度的时间变化;评价部,其在计算部计算出的时间变化的移动速度的最小值为预先确定的下限值以下的情况下,对计算部计算出的时间变化模式进行评价;选择部,其根据时间变化模式的评价结果,从预先确定的多个修正方式中选择使移动速度的最小值增加的动作程序的修正方式;修正部,其依照选择部选择出的修正方式修正动作程序。

Description

工业用机器人的程序修正装置和程序修正方法
技术领域
本发明涉及一种修正工业用机器人的动作程序的程序修正装置以及程序修正方法。
背景技术
近年来,垂直多关节机器人那样的工业用机器人被用于激光切断、电弧焊接以及去毛刺这样的各种用途。这些机器人的控制装置通过执行预先准备的动作程序,使安装在机器人上的工具(例如激光切断用的激光振荡器)以指定的速度移动。但是,在工具的移动路径包含转角的情况下,无法避免工具通过转角的期间的移动速度从指定速度降低的情况。特别在移动速度的降低量大的情况下,工具通过转角的期间的工件的加工质量有可能降低。例如,作为工具以比指定速度大幅下降的速度进行移动的结果,有可能引起工件的加工过多。
与之关联,在JP H11-39021A中提出了以下的机器人路径插补方法,其包含以下的情况,即如果从设定在工具前端的控制点到转角之间的距离比预定的基准距离小,则对手腕凸缘进行旋转驱动,使得手腕凸缘的驱动轴线和演示平面之间的交点在预定的圆弧上移动。根据JP H11-39021A的路径插补方法,通过平滑地对手腕凸缘进行旋转驱动,在演示平面上对控制点进行直线驱动,因此能够防止控制点通过转角期间的移动速度降低。但是,在采用HP H11-39021A的路径插补方法的情况下,需要使安装有工具的手腕凸缘的凸缘面针对演示平面平行地定向。为了这样对手腕凸缘进行定向,需要详细地变更机器人的硬件设定,但可以认为通常的用户难以进行这样的设定变更。
发明内容
寻求一种不变更机器人的硬件设定就能够减轻工具前端点的速度下降的装置和方法。
根据本发明的第一形式,提供一种程序修正装置,其修正用于使安装在机器人上的工具的前端点沿着预定的移动路径以指定速度进行移动的机器人的动作程序,该程序修正装置具备:执行部,其根据动作程序执行上述机器人的动作模拟;计算部,其根据动作模拟的结果,计算前端点通过上述移动路径期间的前端点的移动速度的时间变化;评价部,其在计算部计算出的时间变化的移动速度的最小值为预先确定的下限值以下的情况下,对计算部计算出的时间变化模式进行评价;选择部,其根据时间变化模式的评价结果,从预先确定的多个修正方式中选择使移动速度的最小值的动作程序的修正方式;以及修正部,其依照选择部选择出的修正方式修正动作程序。
根据本发明的第二形式,提供一种程序修正装置,其在第一形式中,修正部重复修正动作程序直到时间变化的移动速度的最小值大于下限值为止。
根据本发明的第三形式,提供一种程序修正装置,其在第一或第二形式中,动作程序由依次执行的多个动作指令构成,计算部依次计算分别执行上述多个动作指令期间的上述时间变化。
根据本发明的第四形式,提供一种程序修正装置,其在第三形式中,评价部根据第一区间和第二区间中各自的时间变化的单调性,评价时间变化模式,其中上述第一区间是指移动速度开始从指定速度减少的时间和移动速度达到最小值的时间之间的区间,上述第二区间是指移动速度开始从最小值增加的时间和移动速度收敛为指定速度的时间之间的区间。
根据本发明的第五形式,提供一种程序修正装置,其在第四形式中,多个修正方式中包括第一修正方式,该第一修正方式包含在多个动作指令中的移动速度开始从指定速度减少时的动作指令的下一个追加新的动作指令,选择部在第一区间的时间变化是单调递减,并且第二区间的时间变化是单调递增的情况下,选择第一修正方式。
根据本发明的第六形式,提供一种程序修正装置,其在第四或第五形式中,在多个修正方式中包括第二修正方式,该第二修正方式包含变更多个动作指令中的移动速度开始从指定速度减少时的动作指令的下一个动作指令,选择部在第一区间的时间变化是单调递减,并且第二区间的时间变化是非单调递增的情况下,选择第二修正方式。
根据本发明的第七形式,提供一种程序修正装置,其在第四~第六的任意一个形式中,在多个修正方式中包括第三修正方式,该第三修正方式包含删除多个动作指令中的移动速度达到最小值时的动作指令的上一个动作指令,选择部在第一区间中的时间变化是非单调递减的情况下,选择第三修正方式。
根据本发明的第八形式,提供一种程序修正方法,其用于使安装在机器人上的工具的前端点沿着预定的移动路径以指定速度移动的动作程序,该程序修正方法包括以下情况:根据动作程序执行机器人的动作模拟,根据动作模拟的结果,计算前端点通过移动路径期间的前端点的移动速度的时间变化,在计算出的时间变化的移动速度的最小值为预先确定的下限值以下的情况下,对计算出的时间变化模式进行评价,根据时间变化模式的评价结果,从预先确定的多个修正方式中选择使移动速度的最小值增加的动作程序的修正方式,依照选择出的修正方式修正动作程序。
根据本发明的第九形式,提供一种程序修正方法,其在第八形式中,还包括:重复修正动作程序直到时间变化的移动速度的最小值大于下限值为止。
根据本发明的第十形式,提供一种程序修正方法,其在第八或第九形式中,动作程序由依次执行的多个动作指令构成,依次计算分别执行多个动作指令期间的时间变化。
根据本发明的第十一形式,提供一种程序修正方法,其在第十形式中,
根据第一区间和第二区间中各自的时间变化的单调性,评价时间变化模式,其中上述第一区间是指移动速度开始从指定速度减少的时间和移动速度达到最小值的时间之间的区间,上述第二区间是指移动速度开始从最小值增加的时间和移动速度收敛为指定速度的时间之间的区间。
根据本发明的第十二形式,提供一种程序修正方法,其在第十一形式中,在多个修正方式中,包括第一修正方式,该第一修正方式包含在多个动作指令中的移动速度开始从指定速度减少时的动作指令的下一个追加新的动作指令,在第一区间中的时间变化是单调递减,并且第二区间中的时间变化是单调递增的情况下,选择第一修正方式。
根据本发明的第十三形式,提供一种程序修正方法,其在第十一或第十二形式中,在上述多个修正方式中,包括第二修正方式,该第二修正方式包含变更多个动作指令中的移动速度开始从指定速度减少时的动作指令的下一个动作指令,在第一区间中的时间变化是单调递减,并且第二区间中的时间变化是非单调递增的情况下,选择第二修正方式。
根据本发明的第十四形式,提供一种程序修正方法,其在第十一~第十三的任意一个形式中,在多个修正方式中,包括第三修正方式,该第三修正方式包含删除多个动作指令中的移动速度达到最小值时的动作指令的上一个动作指令,在第一区间的时间变化是非单调递减的情况下,选择第三修正方式。
参照附图所示的本发明示例的实施方式的详细说明,能够进一步了解这些以及其他本发明的目的、特征、以及优点。
附图说明
图1是表示包含本发明的一个实施方式的程序修正装置的机器人系统的结构的框图。
图2是表示图1中的程序修正装置的结构的框图。
图3是表示图1机器人的动作程序的第一例子的概要图。
图4是表示图3的基于动作程序的工具前端点的移动路径的一部分的概要图。
图5是表示图1的机器人的动作程序的第二例子的概要图。
图6是表示图1的机器人的动作程序的第三例子的概要图。
图7是表示图1的机器人的动作程序的第四例子的概要图。
图8是表示图1的机器人的动作程序的第五例子的概要图。
图9是表示与图3的动作程序对应的工具前端点移动速度的时间变化的图表。
图10是表示与图5的动作程序对应的工具前端点移动速度的时间变化的图表。
图11是表示与图6的动作程序对应的工具前端点移动速度的时间变化的图表。
图12是表示与图7的动作程序对应的工具前端点移动速度的时间变化的图表。
图13是表示与图8的动作程序对应的工具前端点移动速度的时间变化的图表。
图14是表示依照第一修正方式修正图3的动作程序的结果的概要图。
图15是表示依照第二修正方式修正图6的动作程序的结果的概要图。
图16是表示依照第三修正方式修正图7的动作程序的结果的概要图。
图17是表示依照第三修正方式修正图8的动作程序的结果的概要图。
图18是表示本实施方式的程序修正装置修正机器人的动作程序的步骤的流程图。
图19是表示通过本实施方式的程序修正装置修正后的动作程序所对应的工具前端点的移动速度V的时间变化的第一图表。
图20是表示通过本实施方式的程序修正装置修正后的动作程序所对应的工具前端点的移动速度V的时间变化的第二图表。
具体实施方式
以下,参照附图详细说明本发明的实施方式。在各个附图中,对相同的构成要素赋予相同的符号。此外,以下所记载的内容并不是要限定权利要求所记载的发明的技术范围、术语的含义等。
参照图1~图20说明本发明的一个实施方式的程序修正装置。图1是表示包含本实施方式的程序修正装置1的示例机器人系统的结构的框图。如图1那样,本例子的机器人系统包括各种工业用机器人2、控制机器人2的动作的控制装置3,程序修正装置1与控制装置3连接。控制装置3还与演示操作盘4连接。在详细说明本实施方式的程序修正装置1之前,分别简单地说明上述机器人2、控制装置3以及演示操作盘4。
如图1那样,本例子的机器人2是普通的垂直多关节机器人,具备安装各种工具TL的臂20。安装在臂20的手腕部21的工具TL例如包括激光切断用的激光振荡器、电弧焊接用的焊接枪或去毛刺用的主轴等。另外,本例子的控制装置3是具备CPU、存储装置、输入装置以及显示装置等的数字计算机,具有依照预先准备的动作程序控制机器人2的各部动作的功能。
另外,本例子的演示操作盘4是用于机器人2的演示操作的专用设备,具备向操作者显示各种信息的显示部41、从操作者接受演示操作的输入的输入部42。本例子的演示操作盘4具有与控制装置3协作地生成机器人2的动作程序的功能。更具体地说,如果操作者使用演示操作盘4执行机器人2的演示操作,则在控制装置3中生成用于重放该演示操作的机器人2的动作的动作程序。这样生成的动作程序被发送到程序修正装置1并存储在程序修正装置1的存储部1M中。
图2是表示图1中的程序修正装置1的结构的框图。本例子的程序修正装置1是与控制装置3相同的数字计算机,具有根据通过上述演示操作生成的动作程序执行机器人2的动作模拟的功能、根据动作模拟的结果修正动作程序的功能等。程序修正装置1也可以内置在控制装置3中。如图2那样,本例子的程序修正装置1除了具备存储各种数据的存储部1M以外,还具备执行部10、计算部11、设定部12、判定部13、评价部14、选择部15以及修正部16等。将在后面说明这些功能部的详细。如上述那样,在存储部1M中预先存储机器人2的动作程序。
图3是表示机器人2的动作程序的第一例子的概要图。如图3那样,本例子的动作程序由顺序地执行的多个动作指令构成。更具体地说,本例子的动作程序被用于使安装在机器人2上的工具TL的前端点沿着预定的移动路径MP以指定速度Vc进行移动。本例子的指定速度Vc是100mm/sec。图4是表示基于图3的动作程序的工具前端点的移动路径MP的一部分的概要图。如图4那样,本例子的移动路径MP包含工具前端点的前进方向变化的转角CN。图4的移动路径MP上的第一演示点P1是位于转角CN前面的演示点,第二演示点P2是工具前端点的前进方向变化的演示点。另外,图4的移动路径MP上的第三演示点P3是位于转角CN的对方的演示点,第四演示点P4是位于从第二演示点P2到第三演示点P3的路径延长线上的演示点。将在后面说明移动路径MP上的其他演示点。在此,如果参照图3,则本例子的动作程序第4行(4:直线一[1]100mm/sec平滑100)是用于通过线性插补使机器人2的工具前端点以速度100mm/sec移动到图4中的第一演示点P1为止的移动指令。
同样,图3的动作程序的第5行(5:直线一[2]100mm/sec平滑100)是用于通过线性插补使机器人2的工具前端点以速度100mm/sec移动到图4中的第二演示点P2为止的移动指令。另外,图3的动作程序的第6行(6:直线一[13100mm/sec平滑100)是用于通过线性插补使机器人2的工具前端点以速度100mm/sec移动到图4中的第三演示点P3为止的移动指令。另外,图3的动作程序的第7行(7:直线一[4]100mm/sec平滑100)是用于通过线性插补使机器人2的工具前端点以速度100mm/sec移动到图4中的第四演示点P4为止的移动指令。
此外,各个动作指令中的“平滑100”是用于使工具前端点不减速地定位到指令位置、并且在各个动作指令结束后马上开始下一个动作指令的指令。如图4那样,在工具前端点的移动路径MP上存在转角CN的情况下,在工具前端点通过转角CN期间,工具前端点的移动速度有可能从指定速度Vc大幅地降低。其结果是工件的加工精度有可能降低。因此,本实施方式的程序修正装置1具有以下功能,即修正动作程序,使得工具前端点通过转角CN期间的移动速度从指定速度Vc没有大幅地降低的功能。将在后面进一步说明该点。在图5~图8中表示机器人2的动作程序的另一个例子。
再次参照图2,则程序修正装置1的执行部10具有根据存储部1M内的动作程序执行机器人2的动作模拟的功能。另外,程序修正装置1的计算部11具有根据执行部10的动作模拟的结果计算工具前端点通过移动路径MP期间中的工具前端点的移动速度V的时间变化的功能。更具体地说,本例子的计算部11根据对机器人2的驱动电动机的速度指令,以预定的周期计算工具前端点的移动速度V。从基于动作程序的动作模拟的结果中抽出对机器人2的驱动电动机的速度指令。图9是表示通过本例子的计算部11计算出的工具前端点的移动速度V的时间变化的图表。图9的图表表示与图3的动作程序对应的移动速度V的时间变化。根据图9的图表可知,如果执行图3的动作程序,则工具前端点的移动速度V在时间t1开始从指定速度Vc减少,在时间t2达到最小值Vmi。在从时间t1到时间t2的期间,工具前端点的移动速度V单调递减。然后,工具前端点的移动速度V到在时间t3收敛为指定速度Vc为止单调递增。在此,移动速度V收敛为指定速度Vc表示以后的移动速度V以指定速度Vc保持为固定。
图5是表示机器人2的动作程序的第二例子的概要图。根据比较图3和图5可知,本例子的动作程序还包含用于使到达了第二演示点P2的工具前端点以速度200mm/sec移动到第五演示点P5为止的动作指令(参照图5中的第6行)。如从图4可知,第五演示点P5位于将第二演示点P2和第三演示点P3连接起来的线段上。图10是表示与图5的动作程序对应的工具前端点的移动速度V的时间变化的图表。如从图10的图表可知样,如果执行图5的动作程序,则工具前端点的移动速度V在时间t1开始从指定速度Vc减少,在时间t2达到最小值Mi。在从时间t1到时间t2期间,工具前端点的移动速度V单调递减。然后,工具前端点的移动速度V到在时间t3收敛为指定速度Vc为止非单调递增。更具体地说,工具前端点的移动速度V在时间t2和时间t3之间经由极大值和极小值收敛为指定速度Vc。上述的极大值比指定速度Vc大。另外,上述的极小值比指定速度Vc小。
图6是表示图1中的机器人2的动作程序的第三例子的概要图。通过比较图5和图6可知,本例子的动作程序只有第6行的动作指令中的速度指令的数值与图5的动作程序不同。更具体地说,针对图5中的第6行的速度指令的数值是200mm/sec,图6中的第6行的速度指令的数值是100mm/sec。图11是表示与图6的动作程序对应的工具前端点的移动速度V的时间变化的图表。如从图11的图表可知,如果执行图6的动作程序,则工具前端点的移动速度V在时间t1开始从指定速度Vc减少,在时间t2达到最小值Mi。在从时间t1到时间t2期间,工具前端点的移动速度V单调递减。
然后,工具前端点的移动速度V到在时间t3收敛为指定速度Vc为止非单调递增。更具体地说,工具前端点的移动速度V在时间t2和时间t3之间经由极大值和极小值收敛为指定速度Vc。但是,图11中的极大值比指定速度Vc小。另外,图11中的极小值比图10中的极小值小。根据图10和图11可知,介于移动速度V达到最小值Vmi时的动作指令和移动速度V收敛为指定速度Vc时的动作指令之间的动作指令(图5和图6的第6行)有可能成为移动速度V从最小值Vmi非单调递增到指定速度Vc为止的原因。
图7是表示机器人2的动作程序的第四例子的概要图。通过比较图3和图7可知,本例子的动作程序还包含用于使到达了第一演示点P1的工具前端点以速度100mm/sec移动到第六演示点P6为止的动作指令(参照图7中的第5行)。根据从图4可知,第六演示点P6位于将第一演示点P1和第二演示点P2连接起来的线段上。图12是表示与图7的动作程序对应的工具前端点的移动速度V的时间变化的图表。根据图12的图表可知,如果执行图7的动作程序,则工具前端点的移动速度V在时间t1开始从指定速度Vc减少,在时间t2达到最小值Mi。在从时间t1到时间t2期间,工具前端点的移动速度V非单调递减。更具体地说,工具前端点的移动速度V在时间t1和时间t2之间经由极小值和极大值达到最小值Vmi。之后,工具前端点的移动速度V到在时间t3收敛为指定速度Vc为止单调递增。
图8是表示机器人2的动作程序的第五例子的概要图。通过比较图7和图8可知,本例子的动作程序还包含用于使到达了第二演示点P2的工具前端点以速度100mm/sec移动到第五演示点P5为止的动作指令(参照图8中的第7行)。如上述那样,第五演示点P5位于将第二演示点P2和第三演示点P3连接起来的直线上。图13是表示与图8的动作程序对应的工具前端点的移动速度V的时间变化的图表。
根据图13的图表可知,如果执行图8的动作程序,则工具前端点的移动速度V在时间t1开始从指定速度Vc减少,在时间t2达到最小值Mi。在从时间t1到时间t2期间,工具前端点的移动速度V非单调递减。更具体地说,工具前端点的移动速度V在时间t1和时间t2之间经由极小值和极大值达到最小值Vmi。之后,工具前端点的移动速度V到在时间t3收敛为指定速度Vc为止非单调递增。更具体地说,工具前端点的移动速度V在时间t2和时间t3之间经由极大值和极小值收敛为指定速度Vc。根据图12和图13可知,配置在移动速度V达到最小值Vmi时的动作指令的上一个动作指令(图7和图8的第5行)有可能成为移动速度V从指定速度Vc非单调递减到最小值Vmi为止的原因。
如参照图9~图13说明的那样,表示工具前端点的移动速度V的时间变化的波形有可能根据机器人2的动作程序的内容进行各种变形。此外,本例子的计算部11计算出的移动速度V的时间变化可以以预定的形式存储在上述存储部1M中。例如,计算部计算出的移动速度V的时间变化可以通过与动作程序的行编号关联的时序数据的形式存储通过预定的周期计算出的移动速度V的数值。由此,能够确认多个动作指令的每一个和工具前端点的速度变化之间的对应关系。例如,能够确定工具前端点的移动速度V开始从指定速度Vc减少时的动作指令以及工具前端点的移动速度V达到最小值Vmi时的动作指令等。
再次参照图2,程序修正装置1的设定部12具有设定机器人2的工具前端点通过转角CN期间中的移动速度V的允许范围的功能。在此,工具前端点通过转角CN的期间是指工具前端点的移动速度V开始从指定速度Vc减少的时间(图9~图13中的时间t1)和移动速度V从最小值Vmi增加而收敛为指定速度Vc的时间(图9~图13中的时间t3)之间的期间。在图3和图5~图8中,对预定上述期间中的工具前端点的动作的动作指令画出下划线。特别在本例子的程序修正装置1中,由操作者预先指定划定上述允许范围的上限值U和下限值L,将这些上限值U和下限值L预先存储在存储部1M等中。在图9~图13的图表中表示出移动速度V的允许范围的上限值U和下限值L的例子。
接着,程序修正装置1的判定部13具有判定工具前端点通过转角CN的期间中的移动速度V的时间变化是否收敛为上述允许范围的功能。特别本例子的判定部13具有判定计算部11计算出的移动速度V的时间变化的最小值Vmi是否为上述下限值L以下的功能。在图9~图13的例子中,任意移动速度V的最小值Vmi都为下限值L以下。接着,程序修正装置1的评价部14具有在判定部13的判定结果是正的情况(即移动速度V的最小值Vmi为下限值L以下的情况)下评价移动速度V的时间变化模式的功能。在以下的说明中,有时将工具前端点的移动速度V的时间变化简称为“速度变化”。以下详细说明本例子的评价部14评价工具前端点的速度变化模式时的具体步骤。
首先,本例子的评价部14确定工具前端点通过转角CN期间中的速度变化的波形,接着将该速度变化的波形分割为从移动速度V开始减少的时间(图9~图13中的时间t1)到达到最小值Vmi的时间(图9~图13中的时间t2)为止的区间、从移动速度V开始增加的时间(图9~图13中的时间t2)到收敛为指定速度Vc的时间(图9~图13中的时间t3)为止的区间。以下,将前者的区间称为第一区间S1,将后者的区间称为第二区间S2。接着,本例子的评价部14判定时间变化的波形的第一区间S1和第二区间S2各自的单调性。即本例子的评价部14判定移动速度V在第一区间S1中是单调递减还是非单调递减,并且判定移动速度V在第二区间S2是单调递增还是非单调递增。然后,本例子的评价部14根据上述单调性的判定结果,评价将速度变化模式分类为预先确定的多个类型的哪类。
在此,在本例子的程序修正装置1中,将以下说明的第一~第四类型预先定义为表示工具前端点的速度变化模式的多个类型。第一类型表示速度变化的波形在第一区间S1单调递减,并且在第二区间S2单调递增的速度变化模式(参照图9)。第二类型表示速度变化的波形在第一区间S1单调递减,并且在第二区间S2非单调递增的速度变化模式(参照图10和图11)。第三类型表示速度变化的波形在第一区间S1非单调递减,并且在第二区间S2单调递增的模式(参照图12)。另外,第四类型表示速度变化的波形在第一区间S1非单调递减,并且在第二区间S2中非单调递加的模式(参照图13)。即,本例子的评价部14确定工具前端点的速度变化模式分类为上述第一~第四类型的哪类。将评价部14的模式评价的结果发送到后述的选择部15。
再次参照图2,程序修正装置1的选择部15具有根据评价部14的模式评价的结果来选择用于修正动作程序的修正方式的功能。在此,在本例子的程序修正装置1中,作为用于使移动速度V的最小值Vmi增加的多个修正方式,预先定义以下说明的第一~第三修正方式。第一修正方式是包含以下情况的修正方式,即确定动作程序中包含的多个动作指令中的移动速度V开始从指定速度Vc减少时的动作指令,向该动作指令的下一个追加新的动作指令。另外,第二修正方式是包含以下情况的修正方式,即确定在动作程序中包含的多个动作指令中的移动速度V开始从指定速度Vc减少时的动作指令,变更该动作指令的下一个动作指令的内容。
另外,第三修正方式是包含以下情况的修正方式,即确定动作程序中包含的多个动作指令中的移动速度V达到最小值Vmi时的动作指令,删除配置在该动作指令的上一个的动作指令。将上述第一~第三修正方式预先存储在程序修正装置1的存储部1M等中。特别与表示上述速度变化模式的多个类型的任意一个关联地存储第一~第三修正方式的每一个。例如,动作程序的第一修正方式与工具前端点的速度变化模式的第一类型关联,动作程序的第二修正方式与工具前端点的速度变化模式的第二类型关联。另外,动作程序的第三修正方式与工具前端点的速度变化模式的第三类型和第四类型分别关联。
即,本例子的选择部15选择与通过上述模式评价确定的类型关联的修正方式作为用于使移动速度V的最小值Vmi增加的动作程序的修正方式。例如,在将速度变化模式分类为第一类型的情况下(参照图9),选择与第一类型关联的第一修正方式。同样,在将速度变化模式分类为第二类型的情况下(参照图10和图11),选择与第二类型关联的第二修正方式。同样,在将速度变化模式分类为第三类型或第四类型的情况下(参照图12和图13),选择与这些类型关联的第三修正方式。
再次参照图2,程序修正装置1的修正部16具有依照选择部15选择出的修正方式修正动作程序的功能。例如,如果程序修正装置1的选择部选择了第一修正方式,则本例子的修正部16向移动速度V开始从指定速度Vc减少时的动作指令的下一个追加新的动作指令。图14是表示依照第一修正方式修正图3的动作程序的结果的概要图。如上述那样,图3的动作程序的工具前端点的时间变化模式被分类为第一类型(参照图9)。通常,在第一类型中移动速度V开始从指定速度Vc减少时的动作指令是用于使工具前端点移动到第二演示点P2的动作指令(例如参照图3中的第5行)。如比较图3和图4可知,依照第一修正方式,向动作程序追加用于使工具前端点从第二演示点P2移动到第五演示点P5为止的新的动作指令(参照图14中的第6行)。
新的动作指令中的速度指令值比指定速度Vc(Vc=100mm/sec)大。在图14的例子中,新的动作指令中的速度指令值为150mm/sec。在此,工具前端点从第二演示点P2移动到第五演示点P5为止的期间相当于上述的速度变化的第二区间S2的一部分。因此,如果依照第一修正方式修正动作程序,则速度变化的图表有可能变形,使得移动速度V在第二区间S2内接近比指定速度Vc大的速度指令值(例如150mm/sec)。由此,期待修正后的动作程序的移动速度V的最小值Vmi变得比修正前的动作程序的移动速度V的最小值Vmi大。
如果程序修正装置1的选择部15选择了上述第二修正方式,则本例子的修正部16变更在移动速度V开始从指定速度Vc减少时的动作指令的下一个进行配置的动作指令的内容。图15是表示依照第二修正方式修正图6的动作程序的结果的概要图。如上述那样,图6的动作程序的工具前端点的时间变化模式被分类为第二类型(参照图11)。通常,在第二类型中移动速度V开始从指定速度Vc减少时的动作指令是用于使工具前端点移动到上述第二演示点P2的动作指令(例如参照图6中的第5行)。通过比较图6和图15可知,依照第二修正方式,变更了用于使工具前端点从第二演示点P2移动到第五演示点P5为止的动作指令(第6行)中的速度指令值。更具体地说,在图15的例子中,将第6行的动作指令中的速度指令值从100mm/sec变更为150mm/sec。
这样,本例子的第二修正方式包含使工具前端点的移动速度V开始减少时的动作指令的下一个动作指令的速度指令值增加(参照图6和图15的第6行)的情况。特别在上述速度指令值为指定速度Vc以下的情况下,上述速度指令值比指定速度Vc大。在此,工具前端点从第二演示点P2移动到第五演示点P5为止的期间相当于上述速度变化的第二区间S2的一部分。因此,如果依照第二修正方式修正动作程序,则速度变化的图表有可能变形,使得工具前端点的移动速度V在第二区间S2内接近更大的速度指令值(例如150mm/sec)。由此,期待修正后的动作程序的移动速度V的最小值Vmi变得比修正前的动作程序的移动速度V的最小值Vmi大。此外,本例子的第二修正方式根据需要也可以还包含以下情况,即变更移动速度V开始减少时的动作指令的下一个动作指令的位置指令、加速度指令以及定位指令。
另外,如果程序修正装置1的选择部15选择了上述第三修正方式,则本例子的修正部16删除包含在动作程序中的多个动作指令中在移动速度V达到最小值Vmi时的动作指令的上一个进行配置的动作指令。图16是表示依照第三修正方式修正图7的动作程序的结果的概要图。如上述那样,图7的动作程序的工具前端点的时间变化模式被分类为第三类型(参照图12)。通常,在第三类型中移动速度V达到最小值Vmi时的动作指令是用于使工具前端点移动到上述第二演示点P2的动作指令(例如参照图7中的第6行)。通过比较图7和图16可知,根据本例子的第三修正方式,删除了在用于使工具前端点移动到第二演示点P2为止的动作指令(第6行)的上一个进行配置的动作指令(第5行)。更具体地说,在图16的例子中,删除了用于使工具前端点以速度100mm/sec从第一演示点P1移动到第六演示点P6为止的动作指令(第5行)。
如参照图12和图13进行说明的那样,配置在移动速度V达到最小值Vmi时的动作指令的上一个的动作指令(图7和图8中的第5行)有可能成为使上述第一区间S1中的工具前端点的速度成为非单调的原因。因此,如果依照第三修正方式删除上述动作指令,则工具前端点的速度变化的图表有可能变形,使得工具前端点的移动速度V在第一区间S1内单调递减。即,如果依照第三修正方式修正图7的动作程序,则工具前端点的速度变化模式从第三类型变更为第一类型。
图17是表示依照第三修正方式修正图8的动作程序的结果的概要图。如上述那样,图8的动作程序的工具前端点的时间变化模式被分类为第四类型(参照图13)。通常,在第四类型中移动速度V达到最小值Vmi时的动作指令是用于使工具前端点移动到上述第二演示点P2的动作指令(例如参照图8中的第6行)。通过比较图8和图17可知,依照本例子的第三修正方式,删除了在用于使工具前端点移动到第二演示点P2为止的动作指令(第6行)的上一个进行配置的动作指令(第5行)。更具体地说,在图17的例子中,删除了用于使工具前端点以速度100mm/sec从第一演示点P1移动到第六演示点P6为止的动作指令。与图16的例子同样,如果依照第三修正方式删除上述动作指令,则工具前端点的速度变化的图表有可能变形,使得工具前端点的移动速度V在第一区间S1内单调递减。即,如果依照第三修正方式修正图8的动作程序,则工具前端点的速度变化模式从第四类型变更为第二类型。
接着,说明本实施方式的程序修正装置1的动作的概要。图18是表示本实施方式的程序修正装置1修正机器人2的动作程序的步骤的流程图。如图18那样,在步骤S1,程序修正装置1的设定部12设定机器人2的工具前端点通过转角CN期间中的移动速度V的上限值U和下限值L。预先由操作者指定上述上限值U和下限值L并存储在存储部1M等中。在步骤S2,程序修正装置1的执行部10根据存储部1M内的动作程序执行机器人2的动作模拟。在步骤S3,程序修正装置1的计算部11计算工具前端点的移动速度V的时间变化。更具体地说,在步骤S3,计算部11根据在步骤S2执行的动作模拟的结果,以预定的周期计算工具前端点的移动速度V。在步骤S4,计算部11将以预定的周期计算出的工具前端点的移动速度V与动作程序的行编号关联地存储在存储部1M中。
在步骤S5,程序修正装置1的判定部13判定工具前端点的移动速度V的最小值Vmi是否为上述下限值L以下。在工具前端点的移动速度V的最小值Vmi比下限值L大的情况下(步骤S5为否),不需要修正动作程序,因此程序修正装置1结束流程。另一方面,在工具前端点的移动速度V的最小值Vmi为上述下限值L以下的情况下(步骤S5为是),程序修正装置1的评价部14评价工具前端点通过转角CN期间的工具前端点的速度变化模式(步骤S6)。更具体地说,在步骤S6,评价部14将工具前端点的速度变化模式分类为预先定义的多个类型(即上述第一~第四类型)中的任意一个。
在步骤S7,程序修正装置1的选择部15根据评价部14的模式评价的结果,选择用于使移动速度V的最小值Vmi增加的动作程序的修正方式。更具体地说,在步骤S7,选择部15根据评价部14的模式评价结果,选择预先定义的多个修正方式(即上述第一~第三修正方式)中的任意一个。如上述那样,在程序修正装置1的存储部1M中,与表示工具前端点的速度变化模式的多个类型的任意一个关联地存储动作程序的多个修正方式的每一个。即,在步骤S7,选择部15选择与通过上述模式评价确定的类型关联的修正方式作为用于使移动速度V的最小值Vmi增加的修正方式。例如,在工具前端点的速度变化模式是上述第一类型的情况下(参照图9),选择部15选择包含向移动速度V开始从指定速度Vc减少时的动作指令的下一个追加新的动作指令的第一修正方式。
另外,在工具前端点的速度变化模式是上述第二类型的情况下(参照图11),选择部15选择第二修正方式,该第二修正方式包含变更在移动速度V开始从指定速度Vc减少时的动作指令的下一个进行配置的动作指令的内容的情况。另外,在工具前端点的速度变化模式是上述第三类型的情况下(参照图12),选择部15选择第三修正方式,该第三修正方式包含删除移动速度V达到最小值Vmi时的动作指令的上一个动作指令的情况。在工具前端点的速度变化模式是上述第四类型的情况下(参照图13),选择部15选择第三修正方式,该第三修正方式包含删除移动速度V达到最小值Vmi时的动作指令的上一个动作指令的情况。
再次参照图18,在步骤S8,程序修正装置1的修正部16依照在步骤S7中选择出的修正方式修正动作程序。即,在步骤S8中,修正部16依照上述第一~第三修正方式中的任意一个修正动作程序。然后,针对修正后的动作程序再次执行上述的步骤S2~步骤S4。接着,程序修正装置1的判定部13再次判定基于修正后的动作程序的移动速度V的最小值Vmi是否为下限值L以下(步骤S5)。然后,在移动速度V的最小值Vmi比下限值L大的情况下(步骤S5为否),结束流程,另一方面,在移动速度V的最小值Vmi为下限值L以下的情况下(步骤S5为是),针对修正后的动作程序再次执行上述的步骤S6~S8。这样,本例子的程序修正装置1依照上述的第一~第三修正方式重复修正动作程序,直到工具前端点的移动速度V的最小值Vmi比下限值L大为止。
图19和图20是表示与通过本实施方式的程序修正装置1修正后的动作程序对应的工具前端点的移动速度V的时间变化的图表。图19和图20所示的速度变化模式都被分类为上述第二类型。但是,对于这2个模式,第二区间S2中的极大值的大小相互不同。这种极大值的差是由于用于使工具前端点从第二演示点P2移动到第五演示点P5为止的动作指令的速度指令值的差引起的。更具体地说,在图19的例子中,将上述动作指令的速度指令值设定为210mm/sec,与此相对,在图20的例子中,将上述动作指令的速度指令值设定为180mm/sec。
例如通过依次地对赋予图9那样的第一类型的速度变化模式的动作程序应用第一修正方式和第二修正方式,而能够达到图19和图20这样的速度变化。但是,应用第一修正方式的结果是在移动速度V的最小值Vmi大于下限值L的情况下,不需要进一步应用第二修正方式。另外,在应用第一修正方式后,也有时重复2次以上第二修正方式的应用。或者,通过对赋予图11那样的第二类型的速度变化模式的动作程序应用第二修正方式,能够达到图19和图20那样的速度变化。这时,也有时重复2次以上第二修正方式的应用。
或者,通过依次对赋予图12那样的第三类型的速度变化模式的动作程序应用第三修正方式、第一修正方式、第二修正方式,而能够达到图19和图20这样的速度变化。但是,应用第三修正方式以及此后的第一修正方式的结果是在移动速度V的最小值Vmi大于下限值L的情况下,不需要进一步应用第二修正方式。另外,在应用第三修正方式以及此后的第一修正方式后,也有时重复2次以上第二修正方式的应用。或者,通过依次对赋予图13那样的第四类型的速度变化模式的动作程序应用第三修正方式和第二修正方式,能够达到图19和图20那样的速度变化。但是,应用第三修正方式的结果是在移动速度V的最小值Vmi大于下限值L的情况下,不需要进一步应用第二修正方式。另外,在执行第三修正方式后,也有时重复2次以上第二修正方式的应用。
如以上那样,根据本例子的程序修正装置1,在工具前端点的移动速度V的最小值Vmi为下限值L以下的情况下,评价工具前端点的速度变化模式(参照上述步骤S6),并且选择与速度变化模式的评价结果对应的适当的动作程序的修正方式(参照上述步骤S7)。由此,根据本例子的程序修正装置1,能够不变更机器人2的硬件设定而只通过修正现有的动作程序,就能够减少工具前端点的速度降低。
另外,根据本例子的程序修正装置1,重复动作程序的修正直到工具前端点的移动速度V的最小值Vmi成为下限值L以下为止(参照上述步骤S5)。由此,根据本例子的程序修正装置1,能够确实地防止因工具前端点的移动速度V超过下限值L地下降而造成的加工精度的降低(例如加工过多)。
另外,根据本例子的程序修正装置1,依次地计算执行动作程序中的多个动作指令每一个的期间的工具前端点的速度变化,因此能够确认多个动作指令的每一个和工具前端点的速度变化之间的对应关系。由此,根据本例子的程序修正装置1,能够确定工具前端点的移动速度V开始从指定速度Vc减少时的动作指令、工具前端点的移动速度V达到最小值Vmi时的动作指令等。
另外,根据本例子的程序修正装置1,能够选择适合于通过典型的动作程序产生的工具前端点的速度变化模式的修正方式。特别根据本例子的程序修正装置1,能够选择适合于工具前端点的移动速度V在第一区间S1中单调递减、并且在第二区间S2中单调递增的速度变化模式(即第一类型)的第一修正方式。同样,根据本例子的程序修正装置1,能够选择适合于工具前端点的移动速度V在第一区间S1中单调递减、并且在第二区间S2中非单调递增的速度变化模式(即第二类型)的第二修正方式。同样,根据本例子的程序修正装置1,能够选择适合于工具前端点的移动速度V在第一区间S1中非单调递减的速度变化模式(即第三类型和第四类型)的第三修正方式。
发明效果
根据本发明的第一和第八形式,在工具前端点的移动速度的最小值为下限值以下的情况下,评价工具前端点的速度变化模式,并且选择与速度变化模式的评价结果对应的适当动作程序的修正方式。由此,根据第一和第八形式,能够不变更机器人的硬件设定而只通过修正现有的动作程序,就减轻工具前端点的速度降低。
根据本发明的第一和第九形式,重复进行动作程序的修正直到工具前端点的移动速度的最小值成为下限值以下为止。由此,根据本发明的第一和第九形式,能够确实地防止因工具前端点的移动速度超过下限值地下降而造成的加工精度的降低(例如加工过多)。
根据本发明的第三和第十形式,依次地计算执行动作程序中的多个动作指令的每一个期间的工具前端点的速度变化,因此能够确认多个动作指令的每一个和工具前端点的速度变化之间的对应关系。由此,根据第三和第十形式,能够确定工具前端点的移动速度开始从指定速度减少时的动作指令、工具前端点的移动速度达到最小值时的动作指令等。
根据本发明的第四~第七形式以及第十一~第十四形式,能够选择适合于通过典型的动作程序而赋予的工具前端点的速度变化模式的修正方式。特别根据第五和第十二形式,能够选择适合于工具前端点的移动速度在第一区间单调递减、并且在第二区间单调递增的速度变化模式的第一修正方式。同样,根据第六和第十三形式,能够选择适合于工具前端点的移动速度在第一区间单调递减、并且在第二区间非单调递增的速度变化模式的第二修正方式。同样,根据第七和第十四形式,能够选择适合于工具前端点的移动速度在第一区间非单调递减的速度变化模式的第三修正方式。
本发明并不只限于上述实施方式,在权利要求书所记载的范围内能够进行各种改变。例如,图3和图5~图8等所示的动作程序只不过是典型例子,本发明的机器人2的动作程序并不限定于它们。同样,上述第一~第四类型只不过是工具前端点的速度变化模式的典型例子,上述第一~第三修正方式只不过是动作程序的修正方式的典型例子。即,应该注意在本发明的范围内能够采用速度变化模式的其他类型以及动作程序的其他修正方式。进而,上述实施方式所记载的机器人系统的各装置的功能和结构只不过是一个例子,为了达到本发明的效果能够采用各种各样的功能和结构。

Claims (14)

1.一种程序修正装置,其修正用于使安装在机器人上的工具的前端点沿着预定的移动路径以指定速度移动的上述机器人的动作程序,该程序修正装置具备:执行部,其根据上述动作程序执行上述机器人的动作模拟;计算部,其根据上述动作模拟的结果,计算上述前端点通过上述移动路径期间的上述前端点的移动速度的时间变化;其特征在于,该程序修正装置还具备:
评价部,其在上述计算部计算出的上述时间变化的上述移动速度的最小值为预先确定的下限值以下的情况下,对上述计算部计算出的上述时间变化模式进行评价;
选择部,其根据上述时间变化模式的评价结果,从预先确定的多个修正方式中选择使上述移动速度的最小值增加的上述动作程序的修正方式;
修正部,其依照上述选择部选择出的修正方式修正上述动作程序。
2.根据权利要求1所述的程序修正装置,其特征在于,
上述修正部重复修正上述动作程序直到上述时间变化的上述移动速度的最小值大于上述下限值为止。
3.根据权利要求1或2所述的程序修正装置,其特征在于,
上述动作程序由依次执行的多个动作指令构成,
上述计算部依次计算分别执行上述多个动作指令期间的上述时间变化。
4.根据权利要求3所述的程序修正装置,其特征在于,
上述评价部根据第一区间和第二区间中各自的上述时间变化的单调性,评价上述时间变化模式,其中上述第一区间是指上述移动速度开始从上述指定速度减少的时间和上述移动速度达到最小值的时间之间的区间,上述第二区间是指上述移动速度开始从最小值增加的时间和上述移动速度收敛为上述指定速度的时间之间的区间。
5.根据权利要求4所述的程序修正装置,其特征在于,
在上述多个修正方式中包括第一修正方式,该第一修正方式包含在上述多个动作指令中的上述移动速度开始从上述指定速度减少时的动作指令的下一个追加新的动作指令,
上述选择部在上述第一区间的上述时间变化是单调递减,并且上述第二区间的上述时间变化是单调递增的情况下,选择上述第一修正方式。
6.根据权利要求4所述的程序修正装置,其特征在于,
在上述多个修正方式中包括第二修正方式,该第二修正方式包含变更上述多个动作指令中的上述移动速度开始从上述指定速度减少时的动作指令的下一个动作指令,
上述选择部在上述第一区间的上述时间变化是单调递减,并且上述第二区间的上述时间变化是非单调递增的情况下,选择上述第二修正方式。
7.根据权利要求4所述的程序修正装置,其特征在于,
在上述多个修正方式中包括第三修正方式,该第三修正方式包含删除上述多个动作指令中的上述移动速度达到最小值时的动作指令的上一个动作指令,
上述选择部在上述第一区间中的上述时间变化是非单调递减的情况下,选择上述第三修正方式。
8.一种程序修正方法,其修正用于使安装在机器人上的工具的前端点沿着预定的移动路径以指定速度移动的动作程序,该程序修正方法包括:根据上述动作程序执行上述机器人的动作模拟,根据上述动作模拟的结果,计算上述前端点通过上述移动路径期间的上述前端点的移动速度的时间变化,其特征在于,该程序修正方法还包括:
在计算出的上述时间变化的上述移动速度的最小值为预先确定的下限值以下的情况下,对计算出的上述时间变化模式进行评价,
根据上述时间变化模式的评价结果,从预先确定的多个修正方式中选择使上述移动速度的最小值增加的上述动作程序的修正方式,
依照选择出的修正方式修正上述动作程序。
9.根据权利要求8所述的程序修正方法,其特征在于,还包括:
重复修正上述动作程序直到上述时间变化的上述移动速度的最小值大于上述下限值为止。
10.根据权利要求8或9所述的程序修正方法,其特征在于,
上述动作程序由依次执行的多个动作指令构成,
依次计算分别执行上述多个动作指令期间的上述时间变化。
11.根据权利要求10所述的程序修正方法,其特征在于,
根据第一区间和第二区间中各自的上述时间变化的单调性,评价上述时间变化模式,其中上述第一区间是指上述移动速度开始从上述指定速度减少的时间和上述移动速度达到最小值的时间之间的区间,上述第二区间是指上述移动速度开始从最小值增加的时间和上述移动速度收敛为上述指定速度的时间之间的区间。
12.根据权利要求11所述的程序修正方法,其特征在于,
在上述多个修正方式中,包括第一修正方式,该第一修正方式包含在上述多个动作指令中的上述移动速度开始从上述指定速度减少时的动作指令的下一个追加新的动作指令,
在上述第一区间中的上述时间变化是单调递减,并且上述第二区间中的上述时间变化是单调递增的情况下,选择上述第一修正方式。
13.根据权利要求11所述的程序修正方法,其特征在于,
在上述多个修正方式中,包括第二修正方式,该第二修正方式包含变更上述多个动作指令中的上述移动速度开始从上述指定速度减少时的动作指令的下一个动作指令,
在上述第一区间中的上述时间变化是单调递减,并且上述第二区间中的上述时间变化是非单调递增的情况下,选择上述第二修正方式。
14.根据权利要求11所述的程序修正方法,其特征在于,
在上述多个修正方式中,包括第三修正方式,该第三修正方式包含删除上述多个动作指令中的上述移动速度达到最小值时的动作指令的上一个动作指令,
在上述第一区间的上述时间变化是非单调递减的情况下,选择上述第三修正方式。
CN201510745167.5A 2014-11-06 2015-11-05 工业用机器人的程序修正装置和程序修正方法 Active CN105589407B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014226498A JP6006277B2 (ja) 2014-11-06 2014-11-06 産業用ロボットのプログラム修正装置及びプログラム修正方法
JP2014-226498 2014-11-06

Publications (2)

Publication Number Publication Date
CN105589407A CN105589407A (zh) 2016-05-18
CN105589407B true CN105589407B (zh) 2018-02-13

Family

ID=55803391

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510745167.5A Active CN105589407B (zh) 2014-11-06 2015-11-05 工业用机器人的程序修正装置和程序修正方法

Country Status (4)

Country Link
US (1) US9891618B2 (zh)
JP (1) JP6006277B2 (zh)
CN (1) CN105589407B (zh)
DE (1) DE102015014236B4 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6006277B2 (ja) * 2014-11-06 2016-10-12 ファナック株式会社 産業用ロボットのプログラム修正装置及びプログラム修正方法
TWI666684B (zh) * 2015-11-16 2019-07-21 日商東京威力科創股份有限公司 塗佈膜形成方法、塗佈膜形成裝置及記憶媒體
US10493544B2 (en) * 2016-02-05 2019-12-03 Textron Innovations, Inc. System and method for cutting composite materials
US9882071B2 (en) * 2016-07-01 2018-01-30 Sunpower Corporation Laser techniques for foil-based metallization of solar cells
JP6400751B2 (ja) 2017-01-26 2018-10-03 ファナック株式会社 ロボットプログラム修正装置、ロボット制御装置、ロボットシミュレーション装置およびロボットプログラム修正方法
KR101980224B1 (ko) * 2017-03-09 2019-05-21 한국기계연구원 공압 기반 촉각센서
JP6705847B2 (ja) * 2018-02-14 2020-06-03 ファナック株式会社 加工結果に基づいた学習制御を行うロボットシステム及びその制御方法
TW202227244A (zh) * 2021-01-07 2022-07-16 日商發那科股份有限公司 機器人的動作模擬裝置、機器人的控制裝置、及機器人的動作模擬方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6134610A (ja) * 1984-07-27 1986-02-18 Kobe Steel Ltd ロボツトの制御装置
JP2668148B2 (ja) * 1990-04-26 1997-10-27 トヨタ自動車株式会社 シミュレータ
DE69739070D1 (de) * 1996-11-26 2008-12-11 Fanuc Ltd Vorrichtung zur robotersteuerung mit aufgabenrouten-simulationsfunktion
JP4085208B2 (ja) * 1997-07-24 2008-05-14 株式会社安川電機 ロボットの制御方法
DE10305384A1 (de) * 2003-02-11 2004-08-26 Kuka Roboter Gmbh Verfahren und Vorrichtung zur Visualisierung rechnergestützter Informationen
JP3946753B2 (ja) * 2005-07-25 2007-07-18 ファナック株式会社 ロボットプログラム評価・修正方法及びロボットプログラム評価・修正装置
JP2007094936A (ja) * 2005-09-30 2007-04-12 Fanuc Ltd 数値制御装置
JP4256440B2 (ja) * 2007-08-10 2009-04-22 ファナック株式会社 ロボットプログラム調整装置
JP4802170B2 (ja) * 2007-10-18 2011-10-26 株式会社ソディック 加工時間算出装置およびそのプログラム
CN102119072B (zh) * 2008-06-09 2013-09-11 Abb技术有限公司 有助于对离线编程机器人单元进行校准的方法和系统
JP5202735B2 (ja) * 2009-06-03 2013-06-05 三菱電機株式会社 数値制御装置
JP4980458B2 (ja) * 2010-10-27 2012-07-18 ファナック株式会社 数値制御工作機械の加工時間予測装置
JP5192578B2 (ja) * 2011-06-03 2013-05-08 ファナック株式会社 加工プログラムの移動経路を修正する機能を備えた数値制御装置
JP5426722B2 (ja) * 2012-05-24 2014-02-26 ファナック株式会社 ロボットプログラム変更装置
JP6006277B2 (ja) * 2014-11-06 2016-10-12 ファナック株式会社 産業用ロボットのプログラム修正装置及びプログラム修正方法
US10331105B2 (en) * 2015-08-07 2019-06-25 Spm Automation (Canada) Inc. Machine for self-adjusting its operation to compensate for part-to-part variations

Also Published As

Publication number Publication date
DE102015014236B4 (de) 2020-09-03
CN105589407A (zh) 2016-05-18
US9891618B2 (en) 2018-02-13
JP2016087755A (ja) 2016-05-23
DE102015014236A1 (de) 2016-05-12
US20160129589A1 (en) 2016-05-12
JP6006277B2 (ja) 2016-10-12

Similar Documents

Publication Publication Date Title
CN105589407B (zh) 工业用机器人的程序修正装置和程序修正方法
US11072070B2 (en) Trajectory planning apparatus, trajectory planning method, and production system
US7904207B2 (en) Method of evaluating and correcting robot program and device for evaluating and correcting robot program
US8126585B2 (en) Collision preventing device incorporated in numerical control apparatus
CN107150341A (zh) 一种基于离散粒子群算法的焊接机器人焊接路径规划方法
CN108073137B (zh) 数值控制装置
JP5374616B1 (ja) 工作機械の工具ベクトルを表示する工具軌跡表示装置
CN104889986A (zh) 机器人控制装置
JP2020062690A (ja) 制御装置、作業ロボット、プログラム、及び、制御方法
CN107850884A (zh) 用于非生产时间运动的轨迹确定方法
JP3853752B2 (ja) シミュレーション装置
JP2008046899A (ja) 数値制御装置
US20180361591A1 (en) Robot system that displays speed
KR102297735B1 (ko) 로봇 제어 장치, 로봇 제어 방법, 프로그램
KR102323069B1 (ko) 로봇 제어 장치, 로봇 제어 방법, 프로그램
JP4945191B2 (ja) 工作機械の数値制御装置
US20180203433A1 (en) Numerical controller
JP6560841B1 (ja) 制御装置、作業ロボット、プログラム、及び、制御方法
WO2013031492A1 (ja) プログラム生成装置及びその方法
CN114384908B (zh) 一种用于轨道机器人的智能导航路径规划系统及方法
US20230256600A1 (en) Trajectory generation device and automatic position control device
DE102010004477A1 (de) Entwicklungsumgebung und Verfahren zur Planung einer Roboterapplikation
JP6577686B1 (ja) 制御装置、作業ロボット、プログラム、及び、制御方法
JP6792184B1 (ja) シミュレーションシステム、シミュレーション方法、シミュレーションプログラム、ロボットの製造方法、およびロボットシステム
JPH07210223A (ja) ロボットの動作時間評価方法および装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant