CN105209225B - 控制工业用机器人及外围设备的动作的控制系统及控制方法 - Google Patents
控制工业用机器人及外围设备的动作的控制系统及控制方法 Download PDFInfo
- Publication number
- CN105209225B CN105209225B CN201480028084.8A CN201480028084A CN105209225B CN 105209225 B CN105209225 B CN 105209225B CN 201480028084 A CN201480028084 A CN 201480028084A CN 105209225 B CN105209225 B CN 105209225B
- Authority
- CN
- China
- Prior art keywords
- order
- asynchronous
- ancillary equipment
- action
- mobile
- 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/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- 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
- B23K9/00—Arc welding or cutting
- B23K9/10—Other electric circuits therefor; Protective circuits; Remote controls
-
- 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/1602—Programme controls characterised by the control system, structure, architecture
-
- 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/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
- G05B19/41815—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34399—Switch between synchronous and asynchronous mode of controllers
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/35—Nc in input of data, input till input file format
- G05B2219/35374—First memory for independent axis, second memory for synchronized axis
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39101—Cooperation with one or more rotating workpiece holders, manipulators
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39102—Manipulator cooperating with conveyor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39143—One program in robot controller for both robot and machine, press, mold
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/45—Nc applications
- G05B2219/45104—Lasrobot, welding robot
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S901/00—Robots
- Y10S901/02—Arm motion controller
- Y10S901/03—Teaching system
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- General Physics & Mathematics (AREA)
- Plasma & Fusion (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
减轻程序的修正作业来实现作业所需要的合计时间的缩短。控制装置(30)具备:示教程序存储部(31),其保存示教程序;命令解释部(32),其将移动关联的命令送往移动关联命令分离部(33),并执行非移动关联的命令;移动关联命令分离部(33),其判定是同步区间的命令还是非同步区间的命令,并根据判定出的结果将移动关联命令按照每个装置进行分离;移动关联命令缓冲部(34),其基于装置的移动状态来选择是将移动关联命令送往子轨迹计算部(36)还是储存于内部;主轨迹计算部(35),其基于移动关联命令来针对进行同步控制的装置计算与移动相关的信息;子轨迹计算部(36),其基于移动关联命令来针对非同步控制对象的装置计算与移动相关的信息;和电动机驱动部(37),其执行各装置的动作。
Description
技术领域
本发明涉及对工业用机器人及外围设备的动作进行控制的控制系统及控制方法。
背景技术
进行焊接的焊接机器人等工业用机器人或其外围设备,通过给予示教数据,来执行动作以执行由该示教数据所设定的作业。示教数据例如由记述了使机器人或外围设备执行的动作的程序的集合构成。
例如,在专利文献1中,记载了在对由2轴以上构成的多个控制对象进行控制的作业机械的控制装置中,通过在对驱动各控制对象的各轴的电动机等的致动器进行控制时将致动器与控制对象建立关联,从而将给控制对象的动作指令分配至给定的致动器来输出。在作业程序中仅登记有所选择的控制对象的示教位置,且相互独立地执行作业程序。
此外,在专利文献2中,记载了在使多个控制对象进行移动的机器人控制装置中,在1个作业程序中设定作为控制对象的机械手以及定位器(positioner)被非同步控制的区间即非同步控制区间,对各控制对象并非同时同步地进行控制,而是进行控制使得各自到达移动目标。
在先技术文献
专利文献
专利文献1:JP特开2005-346740号公报
专利文献2:JP特开2009-26171号公报
发明内容
发明要解决的课题
在记述了使工业用机器人或其外围设备执行的动作的程序中,有时各装置的动作被控制为同步。在这种情况下,为了缩短作业所需要的合计时间,会考虑工业用机器人或外围设备的动作的关系来制作程序,但期望也缩短这种程序的制作所需要的时间。此外,若设定各装置不被同步控制的区间则有时程序的命令不按照所记述的顺序执行。
本发明的目的在于减轻程序的修正作业来实现作业所需要的合计时间的缩短。
解决课题的手段
在这样的目的下,本发明是一种控制系统,具备:存储部,其存储记述了使机器人以及外围设备执行的动作的示教程序;判定部,其在由所述存储部存储的所述示教程序中,识别所述外围设备的动作与所述机器人的动作不同步的非同步区间和并非该非同步区间的同步区间,针对该示教程序的命令中的与该机器人以及该外围设备的至少任意一方的移动相关的命令即移动关联命令,判定是该非同步区间的命令还是该同步区间的命令;分离部,其针对由所述判定部判定为所述非同步区间的命令的非同步命令,分离为所述机器人以及所述外围设备的每个装置的命令;第1控制部,其基于由所述判定部判定为所述同步区间的命令的同步命令,对所述机器人以及所述外围设备的动作同步地进行控制,此外,基于被所述分离部分离后的非同步命令中的与该机器人相关的命令,对该机器人的动作进行控制;和第2控制部,其基于被所述分离部分离后的非同步命令中的与所述外围设备相关的命令,与所述机器人的动作不同步地对该外围设备的动作进行控制。
此外,该控制系统的特征在于,还具备保存部,所述保存部针对被分离部分离后的非同步命令中的与外围设备相关的命令,将由第2控制部控制外围设备的动作的期间所取得的命令按照取得的顺序进行保存,第2控制部按照顺序来执行保存部所保存的命令。
进而,该控制系统的特征在于,除了所述外围设备之外还存在由1个或多个其他装置构成的外围设备群,该外围设备群的动作与所述机器人的动作同步地被控制,在设置了该外围设备的动作与该机器人的动作不同步地被控制的所述非同步区间的情况下,在该非同步区间,所述第1控制部基于被所述分离部分离后的非同步命令中的与所述机器人相关的命令以及与所述外围设备群相关的命令,对该机器人以及该外围设备群的动作同步地进行控制,所述第2控制部基于被所述分离部分离后的非同步命令中的与所述外围设备相关的命令,与所述机器人以及所述外围设备群的动作不同步地对该外围设备的动作进行控制。
此外,该控制系统的特征在于,除了所述外围设备之外,还存在设置了与所述机器人的动作不同步地被控制的非同步区间的1个或多个外围设备,在各外围设备的该非同步区间的至少一部分重复的情况下,在该非同步区间重复的区间,所述第2控制部对在该重复的区间设置了该非同步区间的各外围设备的动作与该机器人以及其他外围设备的动作不同步地进行控制。
进而,该控制系统的特征在于,所述移动关联命令记述在被所述示教程序中的主示教程序调用的子示教程序中。
此外,若从其他观点来掌握,则本发明是一种方法,包括如下步骤:针对存储于预先规定的存储部,且与使机器人以及外围设备执行的动作相关的命令群,识别所述外围设备的动作与所述机器人的动作不同步的非同步区间和并非该非同步区间的同步区间,针对所述命令群中的与该机器人以及该外围设备的至少任意一方的移动相关的命令即移动关联命令,判定是该非同步区间的命令还是该同步区间的命令的步骤;针对判定为所述非同步区间的命令的非同步命令,分离为所述机器人以及所述外围设备的每个装置的命令的步骤;基于判定为所述同步区间的命令的同步命令,对所述机器人以及所述外围设备的动作同步地进行控制,此外,基于分离后的非同步命令中的与该机器人相关的命令,对该机器人的动作进行控制的步骤;和基于分离后的非同步命令中的与所述外围设备相关的命令,与所述机器人的动作不同步地对该外围设备的动作进行控制的步骤。
发明效果
根据本发明,能够减轻程序的修正作业来实现作业所涉及的合计时间的缩短。
附图说明
图1是表示本实施方式所涉及的焊接机器人系统的简要构成的图。
图2是表示本实施方式所涉及的控制装置的硬件构成例的图。
图3是表示本实施方式所涉及的控制装置的功能构成例的框图。
图4是表示本实施方式所涉及的主示教程序的一例的图。
图5A是表示本实施方式所涉及的示教程序执行处理的流程的一例的流程图。
图5B是表示本实施方式所涉及的示教程序执行处理的流程的一例的流程图。
图5C是表示本实施方式所涉及的示教程序执行处理的流程的一例的流程图。
图5D是表示本实施方式所涉及的示教程序执行处理的流程的一例的流程图。
图6A是表示本实施方式所涉及的子示教程序的一例的图。
图6B是表示本实施方式所涉及的子示教程序的一例的图。
图6C是表示本实施方式所涉及的子示教程序的一例的图。
图7是表示本实施方式所涉及的移动关联命令缓冲部对移动关联命令进行储存的状态的一例的图。
图8是表示本实施方式所涉及的非同步区间重复的情况下的主示教程序的一例的图。
具体实施方式
以下,参照附图对本发明的实施方式进行详细说明。首先,对本实施方式的概要进行说明。
近年来,在焊接机器人系统中,与焊接机器人一起由控制装置(机器人控制器)来进行控制的外围设备正在大型化。作为外围设备,例如,决定成为焊接对象的工件的位置的装置即定位器、使焊接机器人移动的装置即滑动器等相当于外围设备。伴随这种外围设备的大型化,工件拆装时等的定位器所进行的工件的定位、用于使焊接机器人退避到不干扰定位器的动作的位置的滑动器所进行的动作等,在焊接开始前使外围设备执行动作的时间变长。因此,导致了对1个工件进行焊接所需的合计时间即周期时间的增加。此外,焊接机器人所进行的焊线切割、喷嘴更换等焊接外围作业也是周期时间增加的主要原因。
在此,使焊接机器人以及外围设备执行的动作被定义为示教程序,示教程序包含指示各装置的移动的移动命令、附随于移动命令对移动速度等移动条件进行指定的命令、使焊接机器人执行焊线切割的命令等。此外,移动命令中包含焊接机器人或外围设备的目标位置,有时通过移动命令的执行来进行控制使得各装置的动作同步。例如,有时通过1个移动命令来进行控制,使得各装置朝向按照每个装置而决定的目标位置同时开始移动并同时到达。在这种情况下,配合到目标位置的移动时间最长的装置,来调节其他装置的移动速度。
在这种状况下,为了缩短周期时间,例如,可以考虑分别独立地进行焊接机器人的移动和外围设备的移动、在外围设备的移动中并行地使焊接机器人执行焊线切割等其他动作等。但是,为了使各装置进行这种动作,操作者需要按照每个作业单独地制作考虑各装置的动作的关系对各装置的动作进行了混合的示教程序。例如,在定位器的工件定位中并行地使焊接机器人执行焊线切割的情况下,需要按照每个作业单独地制作配合针对定位器的每个移动命令还规定焊接机器人的动作使其执行焊线切割的程序。此外,在与定位器的定位并行地进行基于焊接机器人的焊线切割的情况和不并行地进行基于焊接机器人的焊线切割的情况下,需要单独地制作各自的程序。
因此,可以想到示教程序的制作时间会增加。此外,也能够想到所制作的示教程序的内容的确认变得更加困难、根据示教程序制作者的技能不同而不能实现周期时间的缩短。进而,虽然谋求示教程序的命令按照被记述的顺序执行,但仅是在示教程序中设定各装置被非同步控制的区间,有时命令不按照被记述的顺序执行。
因此,以下对减轻程序的修正作业来实现周期时间的缩短的步骤进行说明。
〔系统构成〕
图1是表示本实施方式所涉及的焊接机器人系统的简要构成的图。
如图1所示,焊接机器人系统具备:进行与焊接相关的各种作业的焊接机器人10;作为决定工件W的位置的外围设备的一例的定位器20;对焊接机器人系统的各装置进行控制的控制装置30;对焊线进行切割的剪钳40;和在用于焊接作业的设定或示教程序的制作中使用的示教器50。此外,虽然在图1所示的例子中没有记载,但本实施方式所涉及的焊接机器人系统例如也可以具备为了使焊接机器人10移动而配置在焊接机器人10下的滑动器(未图示)等其他外围设备。
焊接机器人10具备具有多个关节的臂(arm),进行与基于示教程序的焊接相关的各种作业。此外,在焊接机器人10的臂的前端,设置用于进行对工件W的焊接作业的焊炬11。
定位器20基于示教程序对工件W的位置进行调节。
关于控制装置30,详请在后面叙述,具备:存储预先示教的示教程序的存储装置(存储器);和读入示教程序对焊接机器人10、定位器20、剪钳40的动作进行控制的处理装置(CPU)。示教程序存在从示教器50发送的情况、或者通过示教程序制作装置(未图示)来制作并通过数据通信来发送的情况。此外,示教程序还存在例如经由存储卡等可移动的存储介质而传递给控制装置30的情况。
剪钳40对安装于焊接机器人10的焊线进行切割。
示教器50用于为了进行基于焊接机器人10的焊接作业而由操作者设定焊接路径、焊接作业条件等或者制作示教程序。示教器50具备由液晶显示器等构成的显示画面51、和输入按钮52。
〔控制装置的硬件构成〕
图2是表示本实施方式所涉及的控制装置的硬件构成例的图。
如图2所示,控制装置30具备作为运算单元的CPU(Central Processing Unit,中央处理器)61和作为主存储单元的存储器62。此外,控制装置30具备磁盘装置(HDD:HardDisk Drive)63和键盘、鼠标等输入设备64作为外部设备。而且,控制装置30具备与外部装置进行数据的收发的接口65和用于对存储介质进行数据的读写的驱动器66。另外,图2只不过是例示利用计算机系统来实现了控制装置30的情况下的硬件构成,控制装置30并不限定于图示的构成。
〔控制装置的功能构成〕
图3是表示本实施方式所涉及的控制装置30的功能构成例的框图。
如图3所示,控制装置30具备:示教程序存储部31,其保存示教程序;命令解释部32,其将移动关联的命令送往后述的移动关联命令分离部33,并执行非移动关联的命令;和移动关联命令分离部33,其判定是同步区间的命令还是非同步区间的命令,并根据判定出的结果将移动关联命令分离为每个装置的命令。此外,控制装置30具备:移动关联命令缓冲部34,其基于装置的移动状态来选择是将移动关联命令送往后述的子轨迹计算部36还是在内部进行储存;主轨迹计算部35,其基于移动关联命令来针对进行同步控制的装置计算与移动相关的信息;子轨迹计算部36,其基于移动关联命令来针对非同步控制对象的装置计算与移动相关的信息;和电动机驱动部37,其执行各装置的动作。
命令解释部32、移动关联命令分离部33、移动关联命令缓冲部34、主轨迹计算部35、子轨迹计算部36、电动机驱动部37例如通过图2所示的硬件构成中的CPU61来实现。更具体来说,通过将利用计算机来实现本实施方式的控制装置30的功能的程序经由驱动器66或接口65而保存到磁盘装置63中,并将该程序展开到存储器62中由CPU61来执行,从而实现上述的命令解释部32、移动关联命令分离部33、移动关联命令缓冲部34、主轨迹计算部35、子轨迹计算部36、电动机驱动部37的各功能。移动关联命令缓冲部34进一步通过例如图2所示的硬件构成中的存储器62或磁盘装置63等的存储部来实现。此外,示教程序存储部31也通过存储器62或磁盘装置63等的存储部来实现。
作为存储单元的一例的示教程序存储部31存储预先示教的示教程序。然后,根据来自命令解释部32的请求,将示教程序发送到命令解释部32。
命令解释部32受理来自外部的输入,并从示教程序存储部31取得与所受理的输入内容相应的示教程序。来自外部的输入存在例如从示教器50(参照图1)经由图2所示的接口65来进行的情况、由操作者操作图2所示的输入设备64来进行的情况等。然后,命令解释部32针对所取得的示教程序的命令,判定是移动关联命令还是非移动关联的命令。
在所取得的命令是移动关联命令的情况下,命令解释部32将该移动关联命令发送到移动关联命令分离部33。此外,在所取得的命令是非移动关联的命令的情况下,命令解释部32执行该非移动关联的命令。在此,如上所述,移动关联命令包含对各装置的移动进行指示的移动命令、附随于移动命令对装置的移动速度等移动条件进行指定的命令等。此外,非移动关联的命令包含用于使焊接机器人10执行焊线切割、喷嘴更换的IO输入输出命令等。
此外,命令解释部32在执行结束后述的非同步对象装置的非同步区间的命令的情况下,从主轨迹计算部35等待移动关联命令的请求,并且从移动关联命令缓冲部34等待非同步对象装置的移动完成的意思的通知。然后,若命令解释部32接收到命令请求以及移动完成通知这两者,则非同步对象装置的非同步区间结束,命令解释部32进行下一个命令的处理。
作为判定单元以及分离单元的一例的移动关联命令分离部33在示教程序中识别非同步区间和同步区间,并判定从命令解释部32取得的移动关联命令是非同步区间的命令还是同步区间的命令。在此,所谓同步区间,是指焊接机器人10的动作、和作为焊接机器人10的外围设备的定位器20等装置中的被设为同步控制对象的装置(以下将被设为同步控制对象的装置称作同步对象装置)的动作被同步控制的区间。所谓同步控制,是指针对多个装置,通过配合到目标位置为止的移动时间最长的装置来决定其他装置的移动速度来进行控制,以使得多个装置在当前位置同时出发且同时到达各装置的目标位置。
此外,所谓非同步区间,是指针对作为外围设备的定位器20等装置中的被设定为非同步控制对象的装置的装置(以下将被设定为非同步控制对象的装置的装置称作非同步对象装置),焊接机器人10以及同步对象装置的动作与非同步对象装置的动作不被同步控制的区间。在非同步区间中,非同步对象装置与其他装置的动作被独立地控制,且被控制为通过示教程序所指定的移动速度而到达目标位置。
此外,关于移动关联命令,在移动关联命令分离部33判定为同步区间的移动关联命令的情况下,移动关联命令分离部33将移动关联命令送往主轨迹计算部35。另一方面,在移动关联命令分离部33判定为非同步区间的移动关联命令的情况下,移动关联命令分离部33将移动关联命令分离为每个装置的命令,并将与焊接机器人10以及同步对象装置相关的移动关联命令送往主轨迹计算部35,将与非同步对象装置相关的移动关联命令送往移动关联命令缓冲部34。
作为保存单元的一例的移动关联命令缓冲部34基于非同步对象装置的移动状态,来选择是将从移动关联命令分离部33取得的移动关联命令送往子轨迹计算部36,还是对所取得的移动关联命令进行储存。在此,移动关联命令缓冲部34针对与所取得的移动关联命令相对应的非同步对象装置,从子轨迹计算部36取得移动状态。在所取得的非同步对象装置的移动状态是“移动中”的情况下,移动关联命令缓冲部34将该非同步对象装置的移动关联命令储存于内部。移动关联命令缓冲部34在储存移动关联命令的情况下,按照从移动关联命令分离部33取得移动关联命令的顺序不断进行储存。另一方面,在所取得的非同步对象装置的移动状态不是“移动中”的情况下,移动关联命令缓冲部34将移动关联命令发送到子轨迹计算部36。
此外,移动关联命令缓冲部34在从子轨迹计算部36接收到移动关联命令的请求的情况下,将所储存的非同步对象装置的移动关联命令按照储存的顺序发送到子轨迹计算部36。在此,若没有储存非同步对象装置的移动关联命令,则移动关联命令缓冲部34将该非同步对象装置的移动已完成的意思的移动完成通知发送到命令解释部32。
作为第1控制单元的一例的主轨迹计算部35基于被移动关联命令分离部33判定为同步区间的命令的移动关联命令、或者被移动关联命令分离部33分离出的非同步区间的移动关联命令中的与焊接机器人10以及同步对象装置相关的移动关联命令,来计算与焊接机器人10以及同步对象装置的移动相关的信息(以下将与移动相关的信息称作移动信息)。移动信息是各装置到指定的目标位置为止的移动时间、移动速度等信息,主轨迹计算部35将计算出的各装置的移动信息送往电动机驱动部37。此外,在焊接机器人10以及同步对象装置到达了目标位置的情况下,主轨迹计算部35向命令解释部32请求下一个移动关联命令。
作为第2控制单元的一例的子轨迹计算部36基于由移动关联命令分离部33分离得到的非同步区间的移动关联命令中的与非同步对象装置相关的移动关联命令,来计算非同步对象装置的移动信息。然后,子轨迹计算部36将计算出的各装置的移动信息送往电动机驱动部37。此外,子轨迹计算部36针对向电动机驱动部37发送了移动信息的非同步装置,将该装置的移动状态设为“移动中”。若非同步装置到达目标位置,则子轨迹计算部36将该装置的移动状态从“移动中”解除,并向移动关联命令缓冲部34请求下一个移动关联命令。
作为第1控制单元以及第2控制单元的一例的电动机驱动部37基于从主轨迹计算部35以及子轨迹计算部36取得的各装置的移动信息,例如经由图2所示的接口65来控制焊接机器人10以及外围设备的动作,使各装置移动到各装置各自的目标位置。
〔示教程序中的非同步区间的说明〕
图4是表示本实施方式所涉及的主示教程序的一例的图。
图4所示的示教程序(以下称作示教程序A)是调用子示教程序的主示教程序的一例。在图4所示的例子中,作为同步对象装置或非同步对象装置,对定位器20的动作进行控制。在示教程序A中,通过第1行的命令调用作为子示教程序的示教程序B来进行焊接机器人10的退避。关于示教程序B的调用是非同步区间外,若焊接机器人10的退避完成,则执行下一个命令。
接着,通过第2行的命令开始定位器20的非同步区间,定位器20成为非同步对象装置。因此,对于通过第3行的命令而调用的示教程序C、通过第4行的命令而调用的示教程序D而言,移动关联命令被分离为焊接机器人10的移动关联命令和定位器20的移动关联命令而被执行。然后,对焊接机器人10的动作和定位器20的动作不进行同步控制,焊接机器人10以及定位器20以各自的移动速度向目标位置移动。
然后,通过示教程序A的第5行的命令,进行焊接机器人10和定位器20的会合(待ち合わせ)。例如,在焊接机器人10和定位器20中焊接机器人10先到达了目标位置的情况下,焊接机器人10等待定位器20到达定位器20的目标位置。若定位器20到达目标位置,则定位器20的非同步区间结束,从下一个命令开始,进行焊接机器人10和定位器20的同步控制。
在此,在图4所示的例子中,说明了控制焊接机器人10以及定位器20的动作的情况,但也可以进一步控制由1个或多个其他装置构成的外围设备群。在此,在作为非同步区间而设定了定位器20的非同步区间的情况下,非同步区间的移动关联命令被分离为焊接机器人10、定位器20、外围设备群的每个装置的命令。然后,基于分离得到的焊接机器人10以及外围设备群的移动关联命令,对焊接机器人10以及外围设备群的各装置的动作同步地进行控制。此外,基于分离得到的定位器20的移动关联命令,与焊接机器人10以及外围设备群的动作不同步地对定位器20的动作进行控制。
此外,在图4所示的示教程序中,将非同步区间内的命令记载为“调用示教程序C”或“调用示教程序D”,但也可以像例如“调用非同步示教程序C”或“调用非同步示教程序D”那样,进行对是非同步区间内的命令这一情况进行明示的记载。而且,例如,也可以使得在非同步区间内的命令中开头未记载“非同步”的情况下在该命令执行时发生错误。通过采用这种构成,能够抑制操作者试图错误地将同步控制的命令记载在非同步区间内来制作示教程序。
〔示教程序执行处理步骤〕
图5A至图5D是表示本实施方式所涉及的示教程序执行处理的流程的一例的流程图。
图5A是表示命令解释部32以及移动关联命令分离部33的处理的流程的一例的流程图。
首先,命令解释部32受理来自外部的输入,并从示教程序存储部31取得与所受理的输入内容相应的示教程序的命令(步骤101)。在此,命令解释部32在取得移动命令的情况下,还一起取得跟在该移动命令之后的速度设定命令等其他移动关联命令。此外,命令解释部32在取得使剪钳40等驱动的非移动关联的命令的情况下,还一起取得跟在该命令之后的非移动关联的命令。
接着,命令解释部32针对所取得的示教程序的命令,判断是否为移动关联命令(步骤102)。在并非移动关联命令的情况下(步骤102为否),命令解释部32按照示教程序所记述的顺序依次执行所取得的命令。在此,若所取得的命令中不包含非同步区间结束的命令(步骤103为否),则命令解释部32执行全部所取得的命令(步骤104)。然后,命令解释部32判断是否已将处理对象的示教程序的命令全部执行(步骤105)。若示教程序的命令已全部执行(步骤105为是),则示教程序执行处理结束。另一方面,若在示教程序中存在尚未执行的命令(步骤105为否),则转移到步骤101。
另一方面,在所取得的命令中包含非同步区间结束的命令的情况下(步骤103为是),命令解释部32按照示教程序所记述的顺序依次执行所取得的命令,并在执行了非同步区间结束的命令之后,等待从主轨迹计算部35发送的移动关联命令的请求、和从移动关联命令缓冲部34发送的非同步对象装置的移动完成通知(步骤106)。若命令解释部32接收到移动关联命令的请求和移动完成通知这两者,则非同步对象装置的非同步区间结束。在此,命令解释部32也可以对移动关联命令分离部33通知由于非同步区间已结束因此对于以后的移动关联命令可以不按照每个装置来分离。此外,非同步区间结束后,若在步骤101中取得的命令中存在尚未执行的命令,则命令解释部32执行了尚未执行的命令之后,转移到步骤105。
此外,在步骤102中做出了肯定的判断(是)的情况下,即在示教程序的命令是移动关联命令的情况下,命令解释部32将移动关联命令发送到移动关联命令分离部33。在此,命令解释部32将与移动命令一起取得的速度设定命令等其他移动关联命令也发送到移动关联命令分离部33。然后,移动关联命令分离部33针对所取得的移动关联命令来判断是否为同步区间的命令(步骤107)。
在移动关联命令分离部33所取得的移动关联命令不是同步区间的命令的情况下(步骤107为否),即,若为非同步区间的命令,则移动关联命令分离部33将移动关联命令分离为每个装置的命令(步骤108)。然后,移动关联命令分离部33将分离得到的命令中的与焊接机器人10以及同步对象装置相关的命令发送到主轨迹计算部35,将与非同步对象装置相关的命令发送到移动关联命令缓冲部34(步骤109)。此外,在步骤107中做出了肯定的判断(是)的情况下,即在移动关联命令分离部33所取得的移动关联命令是同步区间的命令的情况下,转移到步骤109,移动关联命令分离部33将移动关联命令发送到主轨迹计算部35。
接着,命令解释部32从主轨迹计算部35等待命令请求(步骤110)。若焊接机器人10以及同步对象装置的移动完成,则命令解释部32从主轨迹计算部35接收命令请求,转移到步骤105。
如上这样,针对示教程序的命令,进行命令解释部32以及移动关联命令分离部33的处理。
图5B是表示主轨迹计算部35以及电动机驱动部37使焊接机器人10以及同步对象装置移动的处理的流程的一例的流程图。
主轨迹计算部35在图5A的步骤109中从移动关联命令分离部33取得移动关联命令(步骤201)。接着,主轨迹计算部35基于所取得的移动关联命令,针对焊接机器人10以及同步对象装置计算移动信息(步骤202)。然后,主轨迹计算部35将计算出的移动信息发送到电动机驱动部37。
接着,电动机驱动部37基于从主轨迹计算部35取得的移动信息,使焊接机器人10以及同步对象装置移动到各装置各自的目标位置(步骤203)。在此所使用的移动信息是基于同步控制的命令而计算出的移动信息,因此各装置被控制为同时到达各自的目标位置。若各装置的移动完成(步骤204),则主轨迹计算部35向命令解释部32请求接下来执行的移动关联命令(步骤205)。该移动关联命令的请求是在步骤106或110中命令解释部32所等待的请求。
如上这样,针对同步控制中的移动关联命令,进行主轨迹计算部35以及电动机驱动部37的处理。
图5C是表示移动关联命令缓冲部34对移动关联命令进行储存的处理的流程的一例的流程图。
移动关联命令缓冲部34在图5A的步骤109中从移动关联命令分离部33取得移动关联命令(步骤301)。接着,移动关联命令缓冲部34针对与所取得的移动关联命令相对应的非同步对象装置,从子轨迹计算部36取得移动状态,并判断非同步对象装置是否处于“移动中”(步骤302)。在非同步对象装置的移动状态为“移动中”的情况下(步骤302为是),移动关联命令缓冲部34将移动关联命令按照取得的顺序储存于内部(步骤303)。另一方面,在非同步对象装置的移动状态不是“移动中”的情况下(步骤302为否),移动关联命令缓冲部34将移动关联命令发送到子轨迹计算部36(步骤304)。
如上这样,通过移动关联命令缓冲部34来进行对移动关联命令进行储存的处理。
图5D是表示移动关联命令缓冲部34、子轨迹计算部36、电动机驱动部37使非同步对象装置进行移动的处理的流程的一例的流程图。
子轨迹计算部36在图5C的步骤304中从移动关联命令缓冲部34取得移动关联命令(步骤401)。接着,子轨迹计算部36基于所取得的移动关联命令,针对非同步对象装置计算移动信息(步骤402)。然后,子轨迹计算部36将计算出的移动信息发送到电动机驱动部37,并将非同步对象装置的移动状态设为“移动中”。
接着,电动机驱动部37基于从子轨迹计算部36取得的移动信息,使非同步对象装置移动到目标位置(步骤403)。若非同步对象装置的移动完成(步骤404),则子轨迹计算部36将非同步对象装置的移动状态从“移动中”解除,并向移动关联命令缓冲部34请求接下来执行的移动关联命令(步骤405)。
接着,移动关联命令缓冲部34判断是否储存有非同步对象装置的移动关联命令(步骤406)。在储存有移动关联命令的情况下(步骤406为是),转移到步骤401,移动关联命令缓冲部34将所储存的移动关联命令按照进行储存的顺序即从最初储存的移动关联命令起按顺序发送到子轨迹计算部36。在此,若存在附随于移动命令的速度设定命令等其他移动关联命令,则移动关联命令缓冲部34也将付随的移动关联命令与移动命令一起发送到子轨迹计算部36。这样,移动命令以及速度设定命令等移动关联命令按照每个装置来分离,将分离得到的非同步对象装置的移动关联命令进行储存并按顺序来执行,因此能够保证各装置按照示教程序所记述的顺序来执行命令。另一方面,在没有储存移动关联命令的情况下(步骤406为否),移动关联命令缓冲部34将非同步对象装置的移动完成通知发送到命令解释部32(步骤407)。
如上这样,针对非同步对象装置的移动关联命令,进行移动关联命令缓冲部34、子轨迹计算部36、电动机驱动部37的处理。
〔示教程序的执行处理的一例〕
图6A至图6C是表示本实施方式所涉及的子示教程序的一例的图。
图6A至图6C所示的各示教程序是从图4所示的示教程序A调用的子示教程序的一例。将图6A至图6C的各示教程序分别设为示教程序B、示教程序C、示教程序D。示教程序B是使焊接机器人10退避到即使定位器20进行旋转也不会干扰定位器20的动作的位置的程序。示教程序C是定位器20决定工件位置的程序。此外,示教程序D是焊接机器人10通过剪钳40进行焊线切割的程序。
以下,对执行了图4所示的示教程序A以及图6A至图6C所示的示教程序B~D的情况下的处理进行说明。与图4所示的例子同样,在图6A至图6C所示的例子中,作为同步对象装置或非同步对象装置,对定位器20的动作进行控制。此外,以下所示的步骤对应于图5A至图5D的各步骤。
首先,命令解释部32受理来自外部的输入,并从示教程序存储部31取得与所受理的输入内容相应的示教程序A的命令(步骤101)。在此所取得的命令是“调用示教程序B”,因此命令解释部32进一步取得示教程序B的命令“移动命令机器人位置A”。然后,由于“移动命令机器人位置A”是移动命令,因此命令解释部32将“移动命令机器人位置A”发送到移动关联命令分离部33(步骤102)。
接着,由于“移动命令机器人位置A”是同步区间的命令(步骤107),因此移动关联命令分离部33将该移动命令发送到主轨迹计算部35(步骤109)。然后,通过主轨迹计算部35来进行移动信息的计算(步骤201、202)。虽然“移动命令机器人位置A”是使焊接机器人10移动到位置A的移动命令,但也包含作为外围设备的定位器20的移动内容。因此,主轨迹计算部35对焊接机器人10以及定位器20的移动信息进行计算,并将计算出的移动信息发送到电动机驱动部37。然后,电动机驱动部37对焊接机器人10以及定位器20进行同步控制,使焊接机器人10移动到位置A,并且也使定位器20向定位器20的目标位置移动(步骤203)。
若焊接机器人10以及定位器20的移动完成(步骤204),则主轨迹计算部35请求下一个移动关联命令(步骤205)。命令解释部32若接收到来自主轨迹计算部35的命令请求(步骤110),则取得下一个命令“移动命令机器人位置B”(步骤105、101)。然后,与向位置A的移动同样地,对焊接机器人10以及定位器20进行同步控制,焊接机器人10移动到位置B。若焊接机器人10以及定位器20的移动完成,则示教程序B的执行结束。
接着,命令解释部32取得示教程序A的第2行的命令“非同步区间定位器开始”(步骤101)。“非同步区间定位器开始”是定位器的非同步区间开始的命令,由于既不是移动关联命令,也不是非同步区间结束的命令,因此命令解释部32执行“非同步区间定位器开始”从而定位器的非同步区间开始(步骤102~104)。因此,从示教程序A的第3行的命令“调用示教程序C”起,移动关联命令分离部33将移动关联命令分离为焊接机器人10的移动关联命令和定位器20的移动关联命令,将焊接机器人10的移动关联命令发送到主轨迹计算部35,将定位器20的移动关联命令发送到移动关联命令缓冲部34。
由于命令解释部32接下来取得的命令是示教程序A的“调用示教程序C”,因此命令解释部32进一步取得示教程序C的“移动命令定位器位置a”(步骤101)。由于“移动命令定位器位置a”是移动命令,并且是非同步区间的命令,因此移动关联命令分离部33分离为焊接机器人10的移动命令和定位器20的移动命令(步骤108)。然后,移动关联命令分离部33将分离得到的命令中的与焊接机器人10相关的命令发送到主轨迹计算部35,将与定位器20相关的命令发送到移动关联命令缓冲部34(步骤109)。
移动关联命令缓冲部34取得定位器20的移动命令,由于定位器20的移动状态不是“移动中”,因此将移动命令发送到子轨迹计算部36(步骤301、302、304)。然后,子轨迹计算部36取得移动命令,开始定位器20向位置a的移动(步骤401~403)。在此,在图4的例子中,将示教程序C的3个移动命令(第1行、第2行、第4行)中的焊接机器人10的目标位置进行固定。因此,基于分离得到的焊接机器人10的移动命令的移动立即完成,主轨迹计算部35请求下一个移动关联命令(步骤201~205)。
接着,命令解释部32取得下一个命令“移动命令定位器位置b”、和对定位器20的移动速度进行设定的命令即“移动速度设定定位器10%”。由于这些命令也是非同步区间的移动关联命令,因此移动关联命令分离部33分离为焊接机器人10的移动关联命令和定位器20的移动关联命令(步骤108)。不过,由于焊接机器人10的目标位置被固定,因此移动立即完成,主轨迹计算部35请求下一个移动关联命令(步骤201~205)。
另一方面,若定位器20处于向位置a移动中,则定位器20的移动状态为“移动中”,因此将“移动命令定位器位置b”中的定位器20部分的移动命令、以及定位器20的速度设定命令即“移动速度设定定位器10%”储存到移动关联命令缓冲部34中(步骤301~303)。这样一来,移动关联命令缓冲部34会将在定位器20移动到位置a的期间中取得的定位器20的移动关联命令进行储存。
命令解释部32若接收到来自主轨迹计算部35的命令请求,则与定位器20的移动并行地取得下一个命令(步骤110、105、101)。命令解释部32接下来取得的命令是示教程序C的“移动命令定位器位置c”“移动速度设定定位器100%”,移动关联命令分离部33将移动关联命令分离为每个装置的命令。然后,若定位器20处于向位置a移动中,则定位器20的移动关联命令被储存到移动关联命令缓冲部34中。另一方面,由于焊接机器人10的目标位置被固定,因此移动立即完成,主轨迹计算部35请求下一个移动命令(步骤201~205)。
图7是表示移动关联命令缓冲部34对移动关联命令进行储存的状态的一例的图。示出了在定位器20向位置a移动的期间中示教程序C的定位器20的移动关联命令(第2~5行的命令)被发送到移动关联命令缓冲部34并被储存的状态。首先,储存示教程序C的第2行的移动命令,然后,依次储存第3行的速度设定命令、第4行的移动命令、第5行的速度设定命令。此外,关于移动命令,由于分离为焊接机器人10的移动命令和定位器20的移动命令,因此储存在移动关联命令缓冲部34中的仅是定位器20部分的移动命令。
接着,命令解释部32若接收到来自主轨迹计算部35的命令请求,则取得示教程序A的下一个命令(步骤110、105、101)。命令解释部32接下来取得的命令是“调用示教程序D”,进而取得示教程序D的“不需要定位定位器”。“不需要定位定位器”是设定为在示教程序D中不使定位器20移动、在移动命令中不包含定位器部分的命令。“不需要定位定位器”既不是移动关联命令,也不是非同步区间结束的命令,因此由命令解释部执行(步骤102~104),接下来命令解释部32取得“移动命令机器人位置C”。
由于接下来的“移动命令机器人位置C”是移动命令,并且是非同步区间的命令,因此被发送到移动关联命令分离部33(步骤107)。不过,由于在示教程序D中定位器20不进行移动,因此定位器20的移动命令不发送到移动关联命令缓冲部34。然后,将焊接机器人10的移动命令发送到主轨迹计算部35(步骤109),焊接机器人10向位置C移动,移动完成后,主轨迹计算部35请求下一个移动关联命令(步骤201~205)。由于下一个示教程序D的命令是“移动命令机器人位置D”,因此与向位置C的移动同样地,焊接机器人10向位置D移动。
接着,示教程序D的第4~6行由于既不是移动关联的命令,也不是非同步区间结束的命令,因此由命令解释部32依次执行,进行焊线切割(步骤102~104)。通过第4行的“输出命令焊线切割信号有效(ON)”的执行,由焊接机器人10和剪钳40开始焊线切割,通过第5行的“时间等待命令1秒”的执行,执行1秒钟焊线切割。此外,通过第6行的“输入等待命令焊线切割完成有效”的执行,命令解释部32等待从剪钳40接收焊线切割完成的信号。然后,若焊线切割完成,则命令解释部32取得下一个命令(步骤105、101)。
接着,命令解释部32取得示教程序D的下一个命令“移动命令机器人位置E”。然后,焊接机器人10向位置E移动,移动完成后,主轨迹计算部35请求下一个移动关联命令。命令解释部32接下来取得的示教程序A的命令是“非同步区间定位器会合”,虽然不是移动关联命令,但是非同步区间结束的命令(步骤102、103)。因此,命令解释部32等待来自主轨迹计算部35的移动关联命令的请求和来自移动关联命令缓冲部34的移动完成通知(步骤106)。
在由命令解释部32、主轨迹计算部35进行示教程序D的处理的期间,定位器20的移动也在进行,若定位器20到达位置a,则子轨迹计算部36向移动关联命令缓冲部34请求下一个命令(步骤405)。下一个命令是“移动命令定位器位置b”,移动关联命令缓冲部34将移动命令和速度设定命令“移动速度设定定位器10%”一起发送到子轨迹计算部36。子轨迹计算部36执行所取得的命令,定位器20以变更后的移动速度向位置b进行移动(步骤401~404)。若定位器20到达位置b,则子轨迹计算部36向移动关联命令缓冲部34请求下一个命令(步骤405),移动关联命令缓冲部34将移动命令“移动命令定位器位置c”和速度设定命令“移动速度设定定位器100%”一起发送到子轨迹计算部36。然后,与向位置b的移动同样地,定位器20以变更后的移动速度向位置c进行移动(步骤401~404)。这样,由于以移动关联命令缓冲部34取得的顺序来执行非同步对象装置的移动关联命令,因此能够保证按照示教程序所记述的顺序来执行命令。
在图4所示的例子中,由于定位器20的移动较慢,因此焊接机器人10通过示教程序D的第7行的移动命令而到达了位置E之后,会等待定位器20到达位置c。焊接机器人10到达了位置E后,命令解释部32从主轨迹计算部35接收命令请求。此外,定位器20到达了位置c后,子轨迹计算部36向移动关联命令缓冲部34请求下一个命令(步骤405),但已没有命令储存在移动关联命令缓冲部34中(步骤406)。因此,移动关联命令缓冲部34向命令解释部32发送移动完成通知(步骤407)。若命令解释部32从移动关联命令缓冲部34接收到移动完成通知,则焊接机器人10和定位器20的会合完成,定位器20的非同步区间结束。然后,由于示教程序A的命令已全部执行,因此图4所示的示教程序A以及图6A至图6C所示的示教程序B~D的处理结束(步骤105)。
如上这样,通过设置非同步区间并将非同步区间的移动命令按照每个装置进行分离,从而焊接机器人10以及同步对象装置的动作与非同步对象装置的动作被独立地执行。通过这种构成,操作者无需新进行考虑各装置的动作的关系对各装置的动作进行了混合的示教程序的制作,能够减轻示教程序的修正作业从而实现周期时间的缩短。此外,由于将移动关联命令分离为每个装置的命令并依次执行,因此能够保证包含速度设定命令等移动命令以外的移动关联命令在内的示教程序的命令按照示教程序所记述的顺序来执行。
〔非同步区间的重复〕
在图4至图6C所示的例子中,针对设定非同步区间的外围设备为1台的情况进行了说明,但也可以针对多个外围设备设定非同步区间。而且,多个外围设备的非同步区间也可以重复。图8是表示非同步区间重复的情况下的主示教程序的一例的图。在图8所示的示教程序中,作为外围设备除了定位器20之外还对滑动器进行控制。
首先,通过第1行的命令“调用示教程序E”的执行,从而调用示教程序E并执行。接着,通过第2行的命令“非同步区间滑动器开始”的执行,从而滑动器的非同步区间开始。然后,通过第3行的命令“调用示教程序F”的执行,从而调用示教程序F并执行。在示教程序F中,对焊接机器人10和作为同步对象装置的定位器20进行同步控制,而作为非同步对象装置的滑动器不被同步控制地执行动作。接着,通过第4行的命令“非同步区间定位器开始”的执行,从而定位器20的非同步区间开始。然后,对于第5行的命令“调用示教程序G”、第6行的命令“调用示教程序H”而言,滑动器的动作不与焊接机器人10以及定位器20的动作同步地控制,定位器20的动作不与焊接机器人10以及滑动器的动作同步地控制。
然后,通过第7行的命令“非同步区间滑动器会合”以及第8行的命令“非同步区间定位器会合”的执行,从而焊接机器人10、滑动器、定位器20进行会合。若焊接机器人10、滑动器、定位器20这3个装置的移动全部完成,则滑动器以及定位器20的非同步区间结束。
如上这样,在非同步区间重复的情况下,各非同步对象装置不被同步控制地执行动作,在非同步区间结束时进行焊接机器人10和非同步对象装置的会合。此外,在非同步区间重复的情况下,移动关联命令缓冲部34针对从移动关联命令分离部33取得的移动关联命令,按照每个非同步对象装置分开进行储存。
此外,在本实施方式中,也可以设为若在主示教程序的非同步区间内直接记述移动命令来执行则发生错误的构成。这样,若设为不能将移动命令直接记述在主示教程序的非同步区间内而记述在子示教程序中的构成,则操作者能够指定为非同步区间的范围受到限定。因此,例如,为了同步控制而记述的移动命令由于非同步区间的结束的漏记而被作为非同步区间内的移动命令来处理等操作者对非同步区间的指定错误能够得到削减,能够抑制焊接机器人10或外围设备进行操作者意图之外的动作。
进而,在本实施方式中,也可以设为若在非同步区间记述与焊接机器人10的焊接作业相关的命令来执行则发生错误的构成。在焊接作业中,由于对焊接机器人10以及外围设备的动作进行同步控制,因而非同步对象装置不会独立地执行动作。因此,通过构成为若在非同步区间执行与焊接作业相关的命令则发生错误,从而能够抑制在焊接作业实施中外围设备进行操作者意图之外的动作。
此外,在本实施方式中,也可以设为若由不同的示教程序来执行非同步区间的开始命令以及结束命令程序则发生错误的构成。例如,在非同步区间跨越多个示教程序而记述的情况下,可以想到在操作者意图的定时非同步区间并不结束而导致用于同步控制的移动命令作为非同步区间的命令而被执行。因此,通过在同一示教程序内记述非同步区间的开始命令以及结束命令,从而能够抑制各装置进行操作者意图之外的动作。
符号说明
10…焊接机器人,20…定位器,30…控制装置,31…示教程序存储部,32…命令解释部,33…移动关联命令分离部,34…移动关联命令缓冲部,35…主轨迹计算部,36…子轨迹计算部,37…电动机驱动部,40…剪钳,50…示教器。
Claims (5)
1.一种控制系统,具备:
存储部,其存储记述了使机器人以及外围设备执行的动作的示教程序;
判定部,其在由所述存储部存储的所述示教程序中,识别所述外围设备的动作与所述机器人的动作不同步的非同步区间和不是该非同步区间的同步区间,针对该示教程序的命令中的与该机器人以及该外围设备的至少任意一方的移动相关的命令即移动关联命令,判定是该非同步区间的命令还是该同步区间的命令;
分离部,其针对由所述判定部判定为所述非同步区间的命令的非同步命令,分离为所述机器人以及所述外围设备的每个装置的命令;
第1控制部,其基于由所述判定部判定为所述同步区间的命令的同步命令,使所述机器人以及所述外围设备的动作同步地进行控制,此外,基于由所述分离部分离得到的非同步命令中的与该机器人相关的命令,对该机器人的动作进行控制;
第2控制部,其基于由所述分离部分离得到的非同步命令中的与所述外围设备相关的命令,与所述机器人的动作不同步地对该外围设备的动作进行控制;和
保存部,其针对由所述分离部分离得到的非同步命令中的与所述外围设备相关的命令,将在由所述第2控制部对该外围设备的动作进行控制的期间取得的该命令按照取得的顺序进行保存,
所述第2控制部按照所述顺序来执行所述保存部所保存的命令。
2.根据权利要求1所述的控制系统,其特征在于,
在除了所述外围设备之外还存在由1个或多个其他装置构成的外围设备群,并设置了该外围设备群的动作与所述机器人的动作被同步地控制而该外围设备的动作与该机器人的动作被不同步地控制的所述非同步区间的情况下,在该非同步区间中,
所述第1控制部基于由所述分离部分离得到的非同步命令中的与所述机器人相关的命令以及与所述外围设备群相关的命令,使该机器人以及该外围设备群的动作同步地进行控制,
所述第2控制部基于由所述分离部分离得到的非同步命令中的与所述外围设备相关的命令,与所述机器人以及所述外围设备群的动作不同步地对该外围设备的动作进行控制。
3.根据权利要求1所述的控制系统,其特征在于,
在除了所述外围设备之外还存在设置了与所述机器人的动作不同步地控制的非同步区间的1个或多个外围设备,并且各外围设备的该非同步区间的至少一部分重复的情况下,在该非同步区间重复的区间中,所述第2控制部对在该重复的区间设置了该非同步区间的各外围设备的动作与该机器人以及其他外围设备的动作不同步地进行控制。
4.根据权利要求1所述的控制系统,其特征在于,
所述移动关联命令记述在所述示教程序中的主示教程序所调用的子示教程序中。
5.一种方法,包括如下步骤:
针对存储于预先规定的存储部并与使机器人以及外围设备执行的动作相关的命令群,识别所述外围设备的动作与所述机器人的动作不同步的非同步区间和不是该非同步区间的同步区间,针对所述命令群中的与该机器人以及该外围设备的至少任意一方的移动相关的命令即移动关联命令,判定是该非同步区间的命令还是该同步区间的命令的判定步骤;
针对判定为所述非同步区间的命令的非同步命令,分离为所述机器人以及所述外围设备的每个装置的命令的分离步骤;
基于判定为所述同步区间的命令的同步命令,使所述机器人以及所述外围设备的动作同步地进行控制,此外,基于分离得到的非同步命令中的与该机器人相关的命令,对该机器人的动作进行控制的第1控制步骤;
基于分离得到的非同步命令中的与所述外围设备相关的命令,与所述机器人的动作不同步地对该外围设备的动作进行控制的第2控制步骤;和
针对由所述分离步骤分离得到的非同步命令中的与所述外围设备相关的命令,将在由所述第2控制步骤对该外围设备的动作进行控制的期间取得的该命令按照取得的顺序进行保存的保存步骤,
在所述第2控制步骤中,按照所述顺序来执行在所述保存步骤中保存的命令。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013103752A JP5970415B2 (ja) | 2013-05-16 | 2013-05-16 | 産業用ロボットおよび周辺装置の動作を制御する制御システムおよび制御方法 |
JP2013-103752 | 2013-05-16 | ||
PCT/JP2014/060964 WO2014185215A1 (ja) | 2013-05-16 | 2014-04-17 | 産業用ロボットおよび周辺装置の動作を制御する制御システムおよび制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105209225A CN105209225A (zh) | 2015-12-30 |
CN105209225B true CN105209225B (zh) | 2017-06-09 |
Family
ID=51898196
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480028084.8A Active CN105209225B (zh) | 2013-05-16 | 2014-04-17 | 控制工业用机器人及外围设备的动作的控制系统及控制方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9802313B2 (zh) |
EP (1) | EP2998082B1 (zh) |
JP (1) | JP5970415B2 (zh) |
KR (1) | KR101805283B1 (zh) |
CN (1) | CN105209225B (zh) |
WO (1) | WO2014185215A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9517556B2 (en) * | 2012-06-29 | 2016-12-13 | Mitsubishi Electric Corporation | Robot control apparatus and robot control method |
US20150129581A1 (en) * | 2013-11-12 | 2015-05-14 | Lincoln Global, Inc. | System and method for pendant component for a welding system |
TWI585559B (zh) * | 2015-04-22 | 2017-06-01 | 汪宏璋 | 多工同步無等待機器人控制程式控制方法 |
TWI579668B (zh) * | 2015-04-22 | 2017-04-21 | 汪宏璋 | 多工同步無等待機器人控制程式系統及其控制方法 |
CN106078753A (zh) * | 2016-06-30 | 2016-11-09 | 珠海格力智能装备有限公司 | 一种机器人示教器、及机器人示教器的信息处理方法 |
JP7124389B2 (ja) * | 2018-03-30 | 2022-08-24 | セイコーエプソン株式会社 | 制御装置、ロボット、およびロボットシステム |
CN109732618A (zh) * | 2019-01-23 | 2019-05-10 | 国家电网有限公司 | 一种用于抽水蓄能机组的检查机器人及其控制方法 |
JP7339113B2 (ja) * | 2019-10-09 | 2023-09-05 | ファナック株式会社 | ロボット制御装置及びロボット制御方法 |
JP7436796B2 (ja) * | 2019-12-16 | 2024-02-22 | 株式会社デンソーウェーブ | ロボットのプログラム作成支援装置 |
JP2021135881A (ja) * | 2020-02-28 | 2021-09-13 | セイコーエプソン株式会社 | ロボットの制御方法 |
CN113910234B (zh) * | 2021-10-27 | 2022-10-14 | 因格(苏州)智能技术有限公司 | 双机械手控制方法与存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1857877A (zh) * | 2005-05-06 | 2006-11-08 | 美国发那科机器人有限公司 | 机器人多臂控制系统 |
CN101498922A (zh) * | 2008-01-31 | 2009-08-05 | 发那科株式会社 | 具有生产管理装置的生产系统 |
CN102245349A (zh) * | 2008-12-09 | 2011-11-16 | 三菱电机株式会社 | 机械运动轨迹测定装置、数控机床及机械运动轨迹测定方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4486843A (en) * | 1982-03-03 | 1984-12-04 | Nordson Corporation | Transitional command position modification for a controller |
US4685067A (en) * | 1986-02-20 | 1987-08-04 | Cincinnati Milacron Inc. | Control system for program controlled manipulator having multiple triggered functions between programmed points |
JP2787207B2 (ja) * | 1988-05-09 | 1998-08-13 | 株式会社日立製作所 | 多軸位置サーボ装置 |
JPH0264713A (ja) * | 1988-08-31 | 1990-03-05 | Hitachi Ltd | 自動作業装置 |
DE69216167T2 (de) * | 1991-07-06 | 1997-07-10 | Daihen Corp | Gerät zur Steuerung eines Industrieroboters zur Durchführung koordinierter Arbeitsvorgänge unter Verwendung eines Playbackteachingverfahrens und dies-bezügliches Verfahren |
JP2001138275A (ja) * | 1999-11-09 | 2001-05-22 | Denso Corp | ロボットの制御装置 |
JP3504222B2 (ja) * | 2000-09-04 | 2004-03-08 | ファナック株式会社 | ロボット制御装置 |
JPWO2004048049A1 (ja) * | 2002-11-27 | 2006-03-23 | 株式会社安川電機 | 自動機械の制御装置及び制御方法 |
JP4878460B2 (ja) * | 2005-09-01 | 2012-02-15 | 株式会社安川電機 | 作業機械の制御装置および作業機械制御システム |
JP2009026171A (ja) * | 2007-07-23 | 2009-02-05 | Daihen Corp | ロボット制御装置 |
-
2013
- 2013-05-16 JP JP2013103752A patent/JP5970415B2/ja active Active
-
2014
- 2014-04-17 CN CN201480028084.8A patent/CN105209225B/zh active Active
- 2014-04-17 US US14/891,209 patent/US9802313B2/en active Active
- 2014-04-17 WO PCT/JP2014/060964 patent/WO2014185215A1/ja active Application Filing
- 2014-04-17 EP EP14797513.0A patent/EP2998082B1/en active Active
- 2014-04-17 KR KR1020157032466A patent/KR101805283B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1857877A (zh) * | 2005-05-06 | 2006-11-08 | 美国发那科机器人有限公司 | 机器人多臂控制系统 |
CN101498922A (zh) * | 2008-01-31 | 2009-08-05 | 发那科株式会社 | 具有生产管理装置的生产系统 |
CN102245349A (zh) * | 2008-12-09 | 2011-11-16 | 三菱电机株式会社 | 机械运动轨迹测定装置、数控机床及机械运动轨迹测定方法 |
Also Published As
Publication number | Publication date |
---|---|
US20160089784A1 (en) | 2016-03-31 |
KR101805283B1 (ko) | 2017-12-05 |
KR20150142047A (ko) | 2015-12-21 |
CN105209225A (zh) | 2015-12-30 |
EP2998082A1 (en) | 2016-03-23 |
EP2998082B1 (en) | 2019-08-28 |
EP2998082A4 (en) | 2017-06-28 |
JP5970415B2 (ja) | 2016-08-17 |
WO2014185215A1 (ja) | 2014-11-20 |
JP2014223693A (ja) | 2014-12-04 |
US9802313B2 (en) | 2017-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105209225B (zh) | 控制工业用机器人及外围设备的动作的控制系统及控制方法 | |
CN105073349B (zh) | 机器人系统的控制方法以及机器人系统 | |
US20230267690A1 (en) | Information processing apparatus and control method of display apparatus | |
US20200030979A1 (en) | Mixed Reality Assisted Spatial Programming of Robotic Systems | |
EP3578322A1 (en) | Robot path-generating device and robot system | |
CN104972468B (zh) | 示教系统、机器人系统和示教方法 | |
CN111046589A (zh) | 一种智能产线可试验数字孪生体建模方法 | |
CN104070265B (zh) | 焊缝信息设定装置、程序、自动示教系统以及焊缝信息设定方法 | |
CN105415387B (zh) | 设定机器人的动作监视区域的机器人系统 | |
US11839977B2 (en) | Control apparatus, work robot, non-transitory computer-readable medium, and control method | |
CN103901817A (zh) | 机床的负载显示装置 | |
CN110076751A (zh) | 机器人控制装置及机器人系统 | |
JP6665056B2 (ja) | 作業支援装置、作業支援方法およびプログラム | |
JP7087316B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
CN109960178A (zh) | 机器人及其关节运动控制方法、装置 | |
CN107081756A (zh) | 进行机器人程序的示教的机器人编程装置 | |
CN109454641B (zh) | 一种运动控制器多任务分工及数据交互方法 | |
US20210154831A1 (en) | Information processing method, robot system, article manufacturing method and information processing apparatus | |
US9511948B2 (en) | Control unit for centralizing control by grouping a plurality of paths | |
JP6560841B1 (ja) | 制御装置、作業ロボット、プログラム、及び、制御方法 | |
US20220281111A1 (en) | Interference check for robot operation | |
Cserteg et al. | Assisted assembly process by gesture controlled robots | |
CN115453969A (zh) | 用于三维激光切割的双切割头协同控制系统及方法 | |
JP6792184B1 (ja) | シミュレーションシステム、シミュレーション方法、シミュレーションプログラム、ロボットの製造方法、およびロボットシステム | |
JP6577686B1 (ja) | 制御装置、作業ロボット、プログラム、及び、制御方法 |
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 |