CN106181964B - 机器人程序生成装置 - Google Patents

机器人程序生成装置 Download PDF

Info

Publication number
CN106181964B
CN106181964B CN201510441689.6A CN201510441689A CN106181964B CN 106181964 B CN106181964 B CN 106181964B CN 201510441689 A CN201510441689 A CN 201510441689A CN 106181964 B CN106181964 B CN 106181964B
Authority
CN
China
Prior art keywords
mentioned
robot
jerk
robot program
drive shaft
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
CN201510441689.6A
Other languages
English (en)
Other versions
CN106181964A (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 CN106181964A publication Critical patent/CN106181964A/zh
Application granted granted Critical
Publication of CN106181964B publication Critical patent/CN106181964B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40053Pick 3-D object from pile of objects
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40454Max velocity, acceleration limit for workpiece and arm jerk rate as constraints
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40517Constraint motion planning, variational dynamic programming
    • 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
    • Y10S901/03Teaching system
    • 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/27Arm part
    • Y10S901/28Joint

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

本发明涉及一种机器人程序生成装置,具备:容许值设定部,其对机器人的驱动轴设定冲击跃度的容许值;轴信息计算部,其在虚拟空间内模拟机器人程序的执行,与时间关联起来地计算驱动轴的位置和冲击跃度;冲击跃度判定部,其判定所计算的冲击跃度是否是超过了容许值的过量冲击跃度;轴信息确定部,其确定产生了过量冲击跃度的驱动轴和驱动轴的位置;机器人程序调整部,其通过变更产生了过量冲击跃度的驱动轴的位置附近的示教点而调整机器人程序,使得所确定的驱动轴的冲击跃度在容许值以下。

Description

机器人程序生成装置
技术领域
本发明涉及一种生成用于使机器人动作的机器人程序的机器人程序生成装置。
背景技术
在用于通过机器人输送对象物的机器人系统中,为了提高处理效率而希望使机器人高速地动作。但是,当简单地使机器人高速化时,在机器人保持或释放对象物时有可能损伤对象物。另外,在输送途中有可能机器人会使对象物掉落。因此,在发生对象物的损伤甚至掉落的情况下,有时需要操作者变更机器人程序。
例如,公知一种工业用机器人的路径计划方法(参照JP2003-241811A和JPH11-249724A),即在对速度特性等进行插值处理时,通过经由低通滤波器而使输入特性平滑化,从而使冲击跃度(jerk)的变化缓慢并使机器人的动作平滑化。
但是,即使调整插值路径而使机器人的动作平滑化,在使机器人高速动作时也不一定限定始终抑制机器人的振动。因此,实际需要操作者一边进行反复试验一边变更机器人程序。因此,要求更容易且可靠地降低振动发生的原因之一的驱动轴的冲击跃度的技术。
发明内容
本申请的第一个发明,提供一种机器人程序生成装置,生成使具有多个关节的机器人动作的机器人程序,该机器人程序生成装置具备:容许值设定部,其对上述机器人的各个关节的驱动轴设定冲击跃度的容许值;轴信息计算部,其在虚拟空间内模拟机器人程序的执行,与时间关联地计算上述驱动轴的位置和冲击跃度;冲击跃度判定部,其判定通过上述轴信息计算部计算的上述冲击跃度是否是超过了上述容许值的过量冲击跃度;轴信息确定部,其确定产生了上述过量冲击跃度的驱动轴和驱动轴的位置;机器人程序调整部,其通过变更产生了上述过量冲击跃度的上述驱动轴的位置附近的示教点来调整上述机器人程序,使得通过上述轴信息确定部确定的上述驱动轴的冲击跃度在上述容许值以下。
本申请的第二个发明,在第一个发明的机器人程序生成装置中,上述机器人程序调整部变更上述示教点,使得与网格点中冲击跃度达到最小的网格点一致,上述网格点是将产生了上述过量冲击跃度的上述驱动轴的位置附近的空间分割为网格状后而形成的网格点。
本申请的第三个发明,在第一个发明的机器人程序生成装置中,上述机器人程序调整部变更上述示教点,使得在产生了上述过量冲击跃度的上述驱动轴中与时间有关的冲击跃度的变化量降低。
本申请的第四个发明,在第一个到第三个任意一个发明的机器人程序生成装置中,还具备干扰判定部,其在将上述机器人和存在于上述机器人周围的物体的三维模型分别配置在上述虚拟空间内,进行上述模拟时,判定上述机器人与上述物体之间有无干扰,上述机器人程序调整部变更上述示教点,使得上述机器人与上述物体之间不产生干扰。
本申请的第五个发明,在第一个到第四个任意一个发明的机器人程序生成装置中,还具备动作时间计算部,其计算执行上述机器人程序所需要的动作时间,上述机器人程序调整部变更上述示教点,使得上述动作时间缩短。
本申请的第六个发明,在第一个到第五个任意一个发明的机器人程序生成装置中,还具备判定在上述机器人中是否能够更新机器人程序的更新判定部和将通过该机器人程序生成装置生成的机器人程序发送给机器人的程序发送部,其中,上述程序发送部在通过上述更新判定部判定为能够更新机器人程序时,将上述机器人程序发送给上述机器人。
附图说明
通过参照附图所示的本发明例示的实施方式的详细说明,这些以及其他的本发明的目的、特征以及优点将会变得更加明确。
图1是表示包括机器人程序生成装置的机器人系统的结构的图。
图2是配置在虚拟空间内的机器人模型的显示例。
图3是一个实施方式的机器人程序生成装置的功能框图。
图4是表示通过一个实施方式的机器人程序生成装置执行的工序的流程图。
图5是表示示教点和根据示教点而形成的动作路径以及过量冲击跃度的发生区间的图。
图6是表示示教点的变更范围的图。
图7是表示将图6的筒状空间分割为网格状后的状态的图。
图8是表示变更前的示教点和变更后的示教点的图。
图9是其他实施方式的机器人程序生成装置的功能框图。
图10是表示机器人模型和干扰物模型相互重叠的状态的图。但是,为了简单地说明,用长方形表示各自的模型。
图11是其他实施方式的机器人程序生成装置的功能框图。
图12是表示在图11的机器人程序生成装置中的第二变更示教点和第三变更示教点的例子的图。
图13是其他实施方式的机器人程序生成装置的功能框图。
图14是表示更新在图12的机器人程序生成装置中执行的机器人程序的工序的流程图。
具体实施方式
以下参照附图对本发明的实施方式进行说明。为了帮助理解本发明,适当地变更图示的结构要素的比例尺。另外,对于相同或对应的结构要素使用相同的参照符号。
图1表示机器人系统1的结构例。机器人系统1用于例如使用机器人2将多个对象物3(例如工件)依次输送到预定的位置。机器人2是例如在臂的前端具备机械手7的垂直多关节机器人。对象物3例如被分散在容器4内,通过机器人2的机械手7保持而依次从容器4中取出。机器人系统1还具备对驱动机器人2的各关节的驱动轴的伺服电动机进行控制的计算机5。
计算机5,若在线,则与用于检测对象物3的位置和姿势的视觉传感器(未图示)协作,作为控制机器人2的控制装置发挥作用。计算机5可以具有作为视觉传感器的控制装置的功能以及作为处理由摄像机进行摄影的图像的图像处理装置的功能。另外,计算机5若离线则作为机器人程序生成装置10发挥功能,该机器人程序生成装置10在虚拟空间内模拟机器人2的动作并生成机器人程序。计算机5是具备相互间由总线连接的CPU、ROM、RAM、与外部装置进行接收发送数据和信号的接口等的数字计算机。计算机5例如与液晶显示器等监视器、鼠标和键盘等输入设备等其他外部装置连接。以下对按照本发明的一个实施方式而生成机器人程序的机器人程序生成装置10进行说明。
如上所述,机器人程序生成装置10具有在虚拟空间内模拟机器人2的动作的功能。执行模拟时,机器人程序生成装置10将分别通过三维空间表现关联的结构要素的形状模型配置在虚拟空间内。图2表示与机器人程序生成装置10连接的监视器6所显示的虚拟空间8的例子。虚拟空间8上配置有通过三维模型分别表现机器人2、对象物3、容器4的机器人模型2M、对象物模型3M、容器模型4。操作者通过操作输入设备来变更视点,能够在三维空间中确认各自的模型的位置关系。
用于模拟的模型是关于动力学、振动得到所需的精度的近似模型。近似模型可以是只考虑机构的刚体模型,或者也可以是除了机构还考虑了手前端的负荷、机构的挠性以及重力的作用的弹性模型。另外,近似模型能够对应两种机器人系统,一种是根据赋予给伺服电动机的从角度传感器得到的驱动轴的位置求出机器人的手前端的位置的机器人系统,另一个是反过来根据机器人的手前端位置求出驱动轴的位置的机器人系统。
图3表示机器人程序生成装置10的功能框图。机器人程序生成装置10具有如下功能:通过变更对于驱动轴的示教点来调整机器人程序,使得在机器人2根据预定的机器人程序进行动作时,设置在各关节的驱动轴的冲击跃度(每个单位时间的加速度的变化量)在预定的容许值以下。机器人程序生成装置10如图所示,具备作为功能结构的容许值设定部11、轴信息计算部12、冲击跃度判定部13、轴信息确定部14以及机器人程序调整部15。
容许值设定部11对机器人2的每个驱动轴设定冲击跃度的容许值。冲击跃度的容许值是例如由机器人2的厂商指定的值,例如是机器人2的规格书所记载的值。或者,可以使机器人按照试验用的动作程序动作,根据当时所测定的冲击跃度求出容许值。另外,根据通过安装在驱动各个驱动轴的伺服电动机上的角度传感器检测出的驱动轴的位置数据来计算冲击跃度。通过角度传感器检测出的驱动轴的位置与该取得时间关联后被输出。通过对驱动轴的位置进行与时间相关的3阶微分来求出冲击跃度。
冲击跃度可以是使实际的机器人2动作后得到的实际测量值,或者也可以利用在图2所示的虚拟空间8所执行的模拟而取得。在通过试验用的机器人程序指定的机器人2的动作中包括设想了输送工序的预定机器人2的动作。另外,也可以设定设想了实际动作的各种条件。另外,试验用的机器人程序需要是在机器人2中不会产生成为对象物损伤乃至掉落的原因的振动的程序。容许值设定部11将作为执行了试验用的机器人程序的结果而取得的冲击跃度的最大值设定为容许值。
轴信息计算部12在虚拟空间内模拟机器人2的动作时,与时间关联地计算各个驱动轴的位置和冲击跃度。通过与时间关联地将位置数据进行3阶微分来计算冲击跃度。
冲击跃度判定部13判定通过轴信息计算部12计算的各个驱动轴的冲击跃度是否超过了通过容许值设定部11设定的容许值。将基于冲击跃度判定部13的判定结果输出给轴信息确定部14。以下有时为了方便将超过了容许值的冲击跃度称为“过量冲击跃度”。
轴信息确定部14在通过冲击跃度判定部13判定为产生了过量冲击跃度时,确定产生了过量冲击跃度的驱动轴和驱动轴的位置。有时会在多个驱动轴中产生过量冲击跃度。另外,有时会在相同的驱动轴中多次产生过量冲击跃度。轴信息确定部14确定与所有的过量冲击跃度对应的驱动轴和驱动轴的位置。
机器人程序调整部15调整机器人程序,使得降低驱动轴的冲击跃度且驱动轴的冲击跃度成为容许值以下。具体地说,机器人程序调整部15变更与通过轴信息确定部14确定的过量冲击跃度对应的驱动轴的位置附近的示教点。
参照图4所示的流程图,说明通过机器人程序生成装置10执行的工序。首先,在步骤S401中,容许值设定部11设定冲击跃度的容许值。
在步骤S402中,机器人程序生成装置10执行机器人程序的模拟。将预先准备的机器人系统1的结构要素的三维模型,例如机器人模型2M和对象物模型3M配置在虚拟空间8中执行模拟。
在步骤S403,根据动作程序的模拟的结果,轴信息计算部12与时间关联地计算机器人2的各个驱动轴的位置,并且根据这些驱动轴的位置和时间来计算冲击跃度的时间序列数据。
在步骤S404,通过冲击跃度判定部13判定在步骤S403取得的驱动轴的冲击跃度是否超过了在步骤S401设定的容许值。在对于所有的驱动轴的冲击跃度,在步骤S404的判定为否定的情况下,冲击跃度十分小,视为在机器人2中没有发生显著的振动,结束处理。
另一方面,当步骤S404的判定为肯定时,即至少检测出一个发生了过量冲击跃度的区间时,进入步骤S405,通过轴信息确定部14确定产生了过量冲击跃度的驱动轴以及驱动轴的位置。
图5表示位于产生过量冲击跃度的区间附近的示教点PA、PB、PC以及根据这些示教点PA、PB、PC生成的动作路径Q。图5中,2个黑圆点表示产生过量冲击跃度的区间的始点Q(t1)和终点Q(t2)。Q(t1)表示所有驱动轴中至少一个驱动轴的冲击跃度超过了容许值的状态开始。Q(t2)表示所有驱动轴的冲击跃度在容许值的范围内的状态开始。在上述区间某个驱动轴的冲击跃度没有必要连续超过容许值。即,在上述区间中途,即使某个驱动轴的冲击跃度在容许值的范围内,至少有一个别的冲击跃度超过了容许值时,为发生了过量冲击跃度。“t1”、“t2”是分别对应于过量冲击跃度发生区间的始点和终点的时刻。白色的四方形表示对于通过机器人程序指定的机器人的示教点中的位于过量冲击跃度发生区间附近的位置的示教点。由机器人程序指定的示教点是包括P1、P2、P3、……PA、PB、PC、……Pn的点的集合(n:自然数)。在执行了机器人程序时,对于这些示教点执行预定的插值处理,求出动作路径Q。
在步骤S406,通过机器人程序调整部15变更产生了过量冲击跃度的驱动轴位置附近的示教点。例如,在图5所示的例子中,分别变更位于由始点Q(t1)和终点Q(t2)决定的过量冲击跃度发生区间附近的示教点PB、PC。变更示教点PB、P的具体方式将在后面描述。
如果机器人程序的修正结束,则返回步骤S403,根据包括在步骤S406中变更的示教点的调整后的机器人程序来模拟机器人2的动作。
接着,参照图6~图8来说明在步骤S406中机器人程序调整部15变更机器人程序的示教点的方式。
如上所述,机器人程序调整部15变更产生了过量冲击跃度的区间附近的示教点。在一个实施方式中,在将动作路径Q作为中心轴线的筒状空间范围内变更示教点。例如,在图6所示的例子中,筒状空间TS将动作路径Q作为中心轴线,并且具有与沿着发生了过量冲击跃度的区间的动作路径Q,即动作路径的始点Q(t1)和终点(t2)之间的距离相等的半径。
机器人程序调整部15决定在这样的筒状空间TS的范围内变更后的示教点PB’、PC’(参照图6)。此时,通过机器人程序生成装置10生成的机器人程序的示教点为P1、P2、P3、……PA、PB’、PC’、……Pn,根据这些变更后的示教点形成图6由虚线表示的动作路径Q’。
在一个实施方式中,如图7所示,可以将筒状空间TS分割为网格状后求出示教点的候补。这时,从设定在筒状空间TS内的有限个数的网格点中分别选择示教点PB、PC的变更后的示教点PB’、PC’。
在一个实施方式中,机器人程序调整部15根据以下的工序取得变更后的示教点。首先,根据在图4的步骤S403取得的冲击跃度的时间序列数据来确定与产生过量冲击跃度的区间对应的冲击跃度时间序列数据。根据所确定的冲击跃度的时间序列数据,生成新的冲击跃度的时间序列数据,使得与时间有关的冲击跃度的变化量减小。这时,根据新的冲击跃度的时间序列数据求出的驱动轴的旋转量与根据原来的冲击跃度的时间序列数据求出的驱动轴的旋转量大概一致。在本实施方式中,机器人程序调整部15根据使冲击跃度的时间变化量减小了的新的冲击跃度的时间序列数据来变更示教点。
图8表示变更示教点之前的动作路径Q和根据新的冲击跃度的时间序列数据而形成的动作路径Q’。Q’(t1)表示在变更前的机器人程序中与过量冲击跃度发生区间的始点Q(t1)对应的时刻t1的动作路径Q’上的位置。另外Q’(t2)表示与过量冲击跃度发生区间的终点Q(t2)对应的时刻t2的动作路径Q’上的位置。根据图8所示的例子,机器人程序调整部15将始点Q(t1)和终点Q(t2)的附近的机器人程序的示教点PB、PC变更为与动作路径Q’上的Q(t1)和Q’(t2)分别一致的示教点PB’、PC’。根据包括变更后的示教点PB’、PC’的示教点而形成的动作路径依存于机器人所固有的伺服控制和插值处理,因此有时会与图示的动作路径Q’不一致。但是,根据变更后的示教点而形成的动作路径与减小了冲击跃度的时间变化量而得的动作路径Q’近似,所以能够得到降低冲击跃度的效果。
在一个实施方式中,机器人程序生成装置10,即使在将基于机器人程序调整部15的示教点的变更重复执行预定的次数,依然发生过量冲击跃度的情况下,结束机器人程序的调整。在即使重复示教点的变更也没有消除过量冲击跃度时,有时操纵者重新考虑示教点以外的设定内容来达到降低过量冲击跃度的情况是合理的。
另外,在检测出多个过量冲击跃度发生区间的情况下,执行变更机器人程序的示教点的处理,使得降低各个过量冲击跃度发生区间的冲击跃度。
上述的实施方式的机器人程序生成装置10具有以下的优点。
(1)通过机器人程序调整部15调整对于机器人的示教点,使得冲击跃度成为容许值以下。由此,能够防止当驱动轴的冲击跃度大时所产生的机器人的振动。
(2)根据机器人程序生成装置10,在预测发生过量冲击跃度的情况时,能够自动调整机器人程序。由此,不会给操作者强加反复试验的负担,能够降低冲击跃度。
(3)根据机器人程序生成装置10,能够通过变更使机器人动作的针对机器人的示教点实现冲击跃度的降低。即,能够提供一种不依赖机器人规格的降低冲击跃度的方法。关于参数或插值处理例如由于根据机器人的厂商而按照不同的规格来决定,因此在具备了生产源不同的多个机器人的机器人系统中,即使通过相同的方法调整参数或插值处理也不能得到充分的冲击跃度降低的效果。对此,机器人程序生成装置10变更对于机器人的示教点,因此能够得到不依赖机器人的规格的冲击跃度降低的效果。
(4)如果在沿着动作路径Q而形成的筒状空间TS内选择变更后的示教点,则能够有效地执行示教点的变更。
(5)如果从将筒状空间TS分割为网格状后形成的网格点中选择变更后的示教点,则能够从有限个数的候补中选择示教点,因此能够有效地执行示教点的变更。
图9是其他实施方式的机器人程序生成装置10的功能框图。本实施方式的机器人程序生成装置10除了参照图3所说明的结构外,还具备干扰判定部16。
干扰判定部16当在虚拟空间8内模拟机器人2的动作时,判定机器人模型2M是否干扰周围的物体(例如对象物模型3M、容器模型4M)。
在本实施方式的机器人程序生成装置10中,机器人程序调整部15变更机器人程序的示教点,使得机器人不干扰周围的物体。因此,本实施方式的机器人程序生成装置10,能够生成使驱动轴的冲击跃度成为容许值以下,并且不会使机器人系统1产生干扰的机器人程序。
参照图10说明在机器人系统1中产生了干扰时的示教点的变更方法的一例。当在虚拟空间8内产生了干扰时,机器人模型2M和干扰物模型9M至少通过一个点进行接触,或者机器人模型2M和干扰物模型9M在三维空间相互重叠。图10表示机器人模型2M和干扰物模型9M相互重叠的状态。如图10所示,将机器人模型2M和干扰物模型9M相互重叠部分的质心的位置设为K1。另外,在机器人模型2M和干扰物模型通过点而接触的情况下,将这些接触点的位置设定为K1即可。
将机器人模型2M(机器人2的手前端的三维模型)的质心的位置设为K2,将干扰物的质心设为K3。将从K1面向K2的方向的单位向量设为V1,将从K3面向K2的方向的单位向量设为V2。将向量V1、V2的平均设为V3。机器人程序调整部15在通过干扰判定部16判定为产生了干扰的情况下,将产生了干扰的示教点Pm变更为在向量V3的方向离开预定距离的位置的变更示教点Pm’。这样,机器人程序装置10能够生成为了机器人2不干扰周围物体而进行了调整的机器人程序。
图11是其他实施方式的机器人程序生成装置10的功能框图。本实施方式的机器人程序生成装置10除了参照图3所说明的结构以外,还具备动作时间计算部17。动作时间计算部17分别计算执行机器人程序所需要的时间。本实施方式的机器人程序生成装置10生成在任意数量的机器人程序中进行执行所需要的时间最短的机器人程序。
例如根据包括为了按照上述实施方式降低冲击跃度而变更的示教点(为了方便,称为“第一变更示教点”)的机器人程序(为了方便,称为“第一机器人程序”),生成与第一机器人程序不同的任意数量,例如2个机器人程序。即,暂时生成示教点相互不同的3种机器人程序。并且,机器人程序生成装置10根据动作时间计算部17的计算结果,选择并生成3种机器人程序中需要时间最短的机器人程序。
参照图12说明根据图1的机器人程序的示教点求出第二机器人程序以及第三机器人程序的示教点的方法的例子。如图12所示,设从变更示教点之前的过量冲击跃度发生区间的始点Q(t1)延伸到根据第一机器人程序而形成的动作路径的时刻t1的位置Q’(t1)的向量为V1。将使向量V1在垂直于变更前的动作路径Q的平面PL上绕始点Q(t1)旋转角度α的向量设为V2,将旋转了角度-α的向量设为V3。
在第二机器人程序中,将示教点PB(参照图5)变更为位于从始点Q(t1)移动了向量V2的位置的示教点PB2。另外,将示教点PC(参照图5)变更为位于从过量冲击跃度的发生区间的终点Q(t2)(参照图5)移动了向量V2的位置的示教点PC2。由此,通过第二机器人程序指定的示教点成为P1、P2、P3、……PA、PB2、PC2、……Pn。
在第三机器人程序中,将示教点PB(参照图5)变更为位于从始点Q(t1)移动了向量V3的位置的示教点PB3。另外,将示教点PC(参照图5)变更为位于从过量冲击跃度的发生区间的终点Q(t2)(参照图5)移动了向量V3的位置的示教点PC3。这样,通过第三机器人程序指定的示教点成为P1、P2、P3、……PA、PB3、PC3、……Pn。
在当执行第一~第三机器人程序时发生的冲击跃度都低于容许值的情况下,本实施方式的机器人程序生成装置10选择地生成在第一机器人程序、第二机器人程序以及第三机器人程序中执行所需要的时间为最短的机器人程序。
图13是其他实施方式的机器人程序生成装置10的功能框图。本实施方式的机器人程序生成装置10除了参照图3进行了说明的结构以外,还具备更新判定部18和程序发送部19。更新判定部18判定机器人2(参照图1)是否是能够更新机器人程序的状态。程序发送部19例如响应示教操作盘的操作,将通过机器人程序生成装置10生成的机器人程序发送给机器人2。
图14是表示根据本实施方式来更新机器人程序的工序的流程图。在通过机器人程序生成装置10生成机器人程序时开始该工序。在步骤S1401中,机器人程序生成装置10(计算机5)将生成了机器人程序的情况通知给机器人2。
在步骤S1402中,通过更新判定部18判定机器人2是否许可机器人程序的更新。例如当机器人2进行与通过机器人程序生成装置10生成的机器人程序无关的动作时,能够更新对于机器人2的机器人程序。如果在步骤S1402的判定为否定,则不进入步骤S1403,而通过预定的控制周期执行步骤S1402的判定。
如果步骤S1402的判定为肯定,则进入步骤S1403,程序发送部19将通过机器人程序生成装置10生成的机器人程序发送给机器人2。这样,机器人2能够按照为了降低冲击跃度而变更了示教点的机器人程序执行预定的动作。
本实施方式的机器人程序生成装置10即使不暂时停止机器人2的动作,也能够根据情况更新机器人程序。这样,能够提高工作效率。
根据本发明的机器人程序生成装置,当发生了超过容许值的过量冲击跃度时,通过机器人程序调整部变更针对发生了过量冲击跃度的驱动轴的示教点,从而降低冲击跃度。这样,降低成为在机器人动作时所产生的振动的原因的冲击跃度,因此能够使机器人高速且安全地进行动作。
以上,说明了本发明的各种实施方式,但是如果是本领域技术人员,会认识到即使通过其它实施方式也能够实现本发明要达到的作用效果。特别是能够不脱离本发明的范围,删除或置换上述实施方式的结构要素,或者进一步附加公知的单元。另外,本领域技术人员也了解,通过任意地组合本说明书中明示或暗示公开的多个实施方式的特征也能够实施本发明。

Claims (6)

1.一种机器人程序生成装置,生成使具有多个关节的机器人动作的机器人程序,该机器人程序生成装置的特征在于,具备:
容许值设定部,其对上述机器人的各个关节的驱动轴设定冲击跃度的容许值;
轴信息计算部,其在虚拟空间内模拟机器人程序的执行,与时间关联起来地计算上述驱动轴的位置和冲击跃度;
冲击跃度判定部,其判定通过上述轴信息计算部计算的上述冲击跃度是否是超过了上述容许值的过量冲击跃度;
轴信息确定部,其确定产生了上述过量冲击跃度的驱动轴和驱动轴的位置;
机器人程序调整部,其通过变更产生了上述过量冲击跃度的上述驱动轴的位置附近的示教点来调整上述机器人程序,使得通过上述轴信息确定部确定的上述驱动轴的冲击跃度在上述容许值以下。
2.根据权利要求1所述的机器人程序生成装置,其特征在于,
上述机器人程序调整部变更上述示教点,使得与网格点中冲击跃度达到最小的网格点一致,上述网格点是将产生了上述过量冲击跃度的上述驱动轴的位置附近的空间分割为网格状而形成的网格点。
3.根据权利要求1所述的机器人程序生成装置,其特征在于,
上述机器人程序调整部变更上述示教点,使得在产生了上述过量冲击跃度的上述驱动轴中与时间有关的冲击跃度的变化量降低。
4.根据权利要求1~3中任意一项所述的机器人程序生成装置,其特征在于,
还具备:干扰判定部,其在将上述机器人和存在于上述机器人周围的物体的三维模型分别配置在上述虚拟空间内,进行上述模拟时,判定上述机器人与上述物体之间有无干扰,
上述机器人程序调整部变更上述示教点,使得上述机器人与上述物体之间不产生干扰。
5.根据权利要求1~3中任意一项所述的机器人程序生成装置,其特征在于,
还具备:动作时间计算部,其计算用于执行上述机器人程序所需要的动作时间,
上述机器人程序调整部变更上述示教点,使得上述动作时间缩短。
6.根据权利要求1~3中任意一项所述的机器人程序生成装置,其特征在于,
还具备:判定在上述机器人中是否能够更新机器人程序的更新判定部;和将通过该机器人程序生成装置生成的机器人程序发送给机器人的程序发送部,
上述程序发送部在通过上述更新判定部判定为能够更新机器人程序时,将上述机器人程序发送给上述机器人。
CN201510441689.6A 2014-08-11 2015-07-24 机器人程序生成装置 Active CN106181964B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014163796A JP5908544B2 (ja) 2014-08-11 2014-08-11 駆動軸のジャークを低下させるロボットプログラムを生成するロボットプログラム生成装置
JP2014-163796 2014-08-11

Publications (2)

Publication Number Publication Date
CN106181964A CN106181964A (zh) 2016-12-07
CN106181964B true CN106181964B (zh) 2017-09-22

Family

ID=55134929

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510441689.6A Active CN106181964B (zh) 2014-08-11 2015-07-24 机器人程序生成装置

Country Status (4)

Country Link
US (1) US9610688B2 (zh)
JP (1) JP5908544B2 (zh)
CN (1) CN106181964B (zh)
DE (1) DE102015010124B4 (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6632208B2 (ja) * 2015-03-24 2020-01-22 キヤノン株式会社 情報処理装置、情報処理方法、プログラム
JP6898779B2 (ja) * 2016-08-18 2021-07-07 株式会社ユーシン精機 成形品取出機
JP6514171B2 (ja) * 2016-09-27 2019-05-15 ファナック株式会社 最適な物品把持経路を学習する機械学習装置、及び機械学習方法
EP3367185A1 (de) * 2017-02-28 2018-08-29 Siemens Aktiengesellschaft Antriebssystem und dessen beurteilung
DE102017104335A1 (de) * 2017-03-02 2018-09-06 Physik Instrumente (Pi) Gmbh & Co. Kg Vorrichtung zur Bewegungsanalyse und Antriebsvorrichtung
JP7237447B2 (ja) * 2017-09-29 2023-03-13 キヤノン株式会社 情報処理方法、プログラム、記録媒体、情報処理装置、ロボットシステム、および物品の製造方法
MX2018014250A (es) 2017-11-21 2019-08-16 Tti Macao Commercial Offshore Ltd Nebulizador en frio.
JP7080649B2 (ja) * 2018-01-17 2022-06-06 キヤノン株式会社 制御方法、物品の製造方法、制御プログラム、記録媒体、ロボットシステム、制御装置
JP7158862B2 (ja) * 2018-02-05 2022-10-24 キヤノン株式会社 情報処理方法及び情報処理装置
US11458626B2 (en) 2018-02-05 2022-10-04 Canon Kabushiki Kaisha Trajectory generating method, and trajectory generating apparatus
JP6879238B2 (ja) * 2018-03-13 2021-06-02 オムロン株式会社 ワークピッキング装置及びワークピッキング方法
US11235467B2 (en) * 2018-04-23 2022-02-01 University Of Southern California System and method for trajectory planning for manipulators in robotic finishing applications
US11325263B2 (en) * 2018-06-29 2022-05-10 Teradyne, Inc. System and method for real-time robotic control
JP6895128B2 (ja) * 2018-11-09 2021-06-30 オムロン株式会社 ロボット制御装置、シミュレーション方法、及びシミュレーションプログラム
JP7444588B2 (ja) 2019-11-25 2024-03-06 ファナック株式会社 軌道生成装置、自動位置制御装置および軌道生成方法
JP6792184B1 (ja) * 2019-11-27 2020-11-25 株式会社安川電機 シミュレーションシステム、シミュレーション方法、シミュレーションプログラム、ロボットの製造方法、およびロボットシステム
WO2024075200A1 (ja) * 2022-10-05 2024-04-11 ファナック株式会社 オフラインシミュレーション装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1399762A (zh) * 1999-05-28 2003-02-26 布鲁克斯自动化公司 基于预先规定的时间上最优的轨迹形状的机器人操纵器
CN1903523A (zh) * 2005-07-25 2007-01-31 发那科株式会社 机器人程序评价、修正方法及机器人程序评价、修正装置
JP2008178934A (ja) * 2007-01-24 2008-08-07 Daihen Corp ロボット制御装置
JP2010137292A (ja) * 2008-12-09 2010-06-24 Seiko Epson Corp ロボット、ロボットの駆動制御方法
CN103568008A (zh) * 2012-07-27 2014-02-12 精工爱普生株式会社 机器人系统以及机器人控制装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2664476B2 (ja) * 1989-05-19 1997-10-15 トキコ株式会社 工業用ロボット
US5655060A (en) 1995-03-31 1997-08-05 Brooks Automation Time optimal trajectory for cluster tool robots
KR100242447B1 (ko) 1997-12-31 2000-04-01 윤종용 로봇 제어를 위한 경로 계획 장치 및 경로 계획 방법
US6782306B2 (en) 1999-12-16 2004-08-24 Siemens Energy & Automation Motion control system and method utilizing spline interpolation
JP3900789B2 (ja) * 2000-04-14 2007-04-04 セイコーエプソン株式会社 モータの速度・加速度決定方法、加減速生成方法、加減速制御方法、加減速制御装置及びモータ制御装置
JP3955217B2 (ja) 2002-02-15 2007-08-08 株式会社不二越 産業用ロボットの制御方法及び制御装置
JP2004314137A (ja) * 2003-04-17 2004-11-11 Fanuc Ltd レーザ加工ロボット
JP4829151B2 (ja) * 2005-07-25 2011-12-07 ファナック株式会社 ロボットプログラム評価・修正方法及びロボットプログラム評価・修正装置
JP4256440B2 (ja) 2007-08-10 2009-04-22 ファナック株式会社 ロボットプログラム調整装置
US7919940B2 (en) * 2007-10-21 2011-04-05 Ge Intelligent Platforms, Inc. System and method for jerk limited trajectory planning for a path planner
JP5146512B2 (ja) 2010-10-13 2013-02-20 オムロン株式会社 制御装置、制御システムおよび制御方法
JP5896789B2 (ja) 2012-03-07 2016-03-30 キヤノン株式会社 ロボット制御装置、ロボット装置、ロボット制御方法、プログラム及び記録媒体
JP6128767B2 (ja) * 2012-07-05 2017-05-17 キヤノン株式会社 ロボット制御装置、及びロボット制御方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1399762A (zh) * 1999-05-28 2003-02-26 布鲁克斯自动化公司 基于预先规定的时间上最优的轨迹形状的机器人操纵器
CN1903523A (zh) * 2005-07-25 2007-01-31 发那科株式会社 机器人程序评价、修正方法及机器人程序评价、修正装置
JP2008178934A (ja) * 2007-01-24 2008-08-07 Daihen Corp ロボット制御装置
JP2010137292A (ja) * 2008-12-09 2010-06-24 Seiko Epson Corp ロボット、ロボットの駆動制御方法
CN103568008A (zh) * 2012-07-27 2014-02-12 精工爱普生株式会社 机器人系统以及机器人控制装置

Also Published As

Publication number Publication date
US20160039090A1 (en) 2016-02-11
DE102015010124A8 (de) 2016-03-24
CN106181964A (zh) 2016-12-07
DE102015010124A1 (de) 2016-02-11
JP5908544B2 (ja) 2016-04-26
JP2016036895A (ja) 2016-03-22
US9610688B2 (en) 2017-04-04
DE102015010124B4 (de) 2018-06-14

Similar Documents

Publication Publication Date Title
CN106181964B (zh) 机器人程序生成装置
US11007646B2 (en) Programming assistance apparatus, robot system, and method for generating program
US9569568B2 (en) Robot simulation system which simulates takeout process of workpiece
US20180036882A1 (en) Layout setting method and layout setting apparatus
JP6669715B2 (ja) 振動抑制装置
US9610690B2 (en) Robot system for setting motion monitoring range of robot
CN104858876A (zh) 机器人任务的可视调试
CN101587329A (zh) 机器人预测的方法和系统
US11886174B2 (en) Virtualized cable modeling for manufacturing resource simulation
CN111819507B (zh) 信息处理系统、信息处理方法及计算机可读取记录媒体
EP4082707A1 (en) Welding control device, welding robot system, and welding control method
CN112000026A (zh) 一种基于信息物理融合的火星车gnc系统物理模型构建方法
JP7556283B2 (ja) シミュレーション装置およびシミュレーションプログラム
DE102016212911A1 (de) Verfahren und Vorrichtung zum Steuern einer Roboterbewegung eines Roboters anhand einer zweiten Trajektorie
JP2021142596A (ja) シミュレーション装置およびプログラム
CN114800523B (zh) 机械臂轨迹修正方法、系统、计算机及可读存储介质
Tang et al. Development of a laboratory HILs testbed system for small UAV helicopters
WO2021149419A1 (ja) シミュレーション装置およびシミュレーションプログラム
US20220101477A1 (en) Visual Interface And Communications Techniques For Use With Robots
WO2022259418A1 (ja) パラメータ調整装置、工作機械システムおよびパラメータ調整方法
CN110991020A (zh) 一种基于PLC和Soildworks软件的模拟仿真方法
US20240001542A1 (en) Motion learning system and method for programming at least one robotic device
JP7232704B2 (ja) ロボットプログラム評価装置、ロボットプログラム評価方法及びロボットプログラム評価プログラム
JP6155570B2 (ja) データ表示装置、方法、プログラム
WO2021181804A1 (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