机器人转让专利

申请号 : CN201510266458.6

文献号 : CN106201815B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 比留间健一郎

申请人 : 蛇目缝纫机工业株式会社

摘要 :

本发明提供一种机器人,其使控制程序的调试效率化,该控制程序参照记录有点主体句法的控制数据。机器人(1)在各加工点反复进行一连串作业。控制器(3)使控制数据预先存储在存储部件中,该控制数据是将囊括每个加工点的一连串作业的结构化点块(7)排列而成。在结构化点块(7)中,排列有表示一连串作业的内容的点语句(8)。调试器执行步越,该步越是以结构化点块(7)为单位来连续执行控制数据(6)后暂时停止。在各加工点的每一连串作业中,机器人连续动作后暂时停止,因此调试的效率性提高。

权利要求 :

1.一种机器人,其在各加工点重复进行一连串作业,所述机器人的特征在于包括:作业工具,在所述一连串作业中对各加工点执行正式作业;

移动部件,在所述一连串作业中使所述作业工具移动;

控制器,控制所述作业工具与所述移动部件;

存储部件,存储控制数据,所述控制数据是将具有表示针对1处加工点的一连串作业的所有点语句、且囊括每个所述加工点的所述一连串作业的多个结构化点块排列而成;以及调试器,构成为:将所述控制数据定界为所述结构化点块,并执行各结构化点块的所有点语句,每当一个结构化点块的所有点语句的执行结束时暂时停止所述控制数据的执行,而间断地执行所述多个结构化点块且针对每个加工点使所述移动部件与所述作业工具间断动作。

2.根据权利要求1所述的机器人,其特征在于,所述一连串作业包括由所述作业工具进行的正式作业、所述正式作业前后的事前作业与事后作业、及向用于所述正式作业的多个点的定位,所述结构化点块记录有表示所述一连串作业中所含的作业与移动内容的数据。

3.根据权利要求2所述的机器人,其特征在于,所述结构化点块是将各点语句排列而成,所述各点语句是表示在一个所述一连串作业的过程中定位的所有点以及向所述点移动前、移动中或移动后的作业内容的数据,所述调试器连续执行一个所述结构化点块中所含的所有点语句后,暂时停止所述控制数据的连续执行。

4.根据权利要求2所述的机器人,其特征在于,所述结构化点块是将各点语句与各作业语句排列而成,所述各点语句是表示在一个所述一连串作业的过程中定位的所有点的数据,所述各作业语句是表示一个所述一连串作业的过程中的在移动前、移动中或移动后进行的所有作业的数据,所述调试器连续执行一个所述结构化点块中所含的所有点语句及作业语句后,暂时停止所述控制数据的连续执行。

5.根据权利要求1至4中任一项所述的机器人,其特征在于,所述结构化点块是记录断点信息而成,

所述调试器连续执行所有的所述结构化点块直至具有所述断点信息的所述结构化点块的跟前为止,然后暂时停止。

6.根据权利要求1至4中任一项所述的机器人,其特征在于,所述存储部件存储记录有断点信息的表,所述断点信息表示特定的所述结构化点块,所述调试器连续执行所有的所述结构化点块直至所述断点信息所表示的所述结构化点块的跟前为止,然后暂时停止。

7.根据权利要求1至4中任一项所述的机器人,其特征在于包括:操作部件,接受用户的操作,

所述调试器包括:

步越执行部件,根据使用所述操作部件对步越执行的选择,以所述结构化点块为单位来连续执行所述控制数据后暂时停止;以及步入执行部件,根据使用所述操作部件对步入执行的选择,将执行位置对准所述结构化点块的内部最前端后暂时停止,每当由所述操作部件发出再次开始的指示时,逐一语句地间断执行后暂时停止。

8.根据权利要求7所述的机器人,其特征在于,所述调试器包括:

步出执行部件,根据使用所述操作部件在所述步入执行的选择后对步出执行的选择,连续执行所述结构化点块的所有剩余语句,从所述结构化点块步出后暂时停止。

9.根据权利要求1至4中任一项所述的机器人,其特征在于,所述控制数据是将所述结构化点块设为嵌套来记录而成,所述调试器包括:

嵌套步越执行部件,在设为嵌套的所有所述结构化点块内连续执行;以及嵌套步入执行部件,在设为嵌套的所述结构化点块的内部逐一语句地间断执行。

10.根据权利要求9所述的机器人,其特征在于,所述调试器包括:

嵌套步出执行部件,连续执行嵌套的所述结构化点块的所有剩余语句,从所述嵌套的结构化点块步出后暂时停止。

11.根据权利要求1至4中任一项所述的机器人,其特征在于还包括:显示部件,树形显示所述控制数据的结构。

12.根据权利要求1至4中任一项所述的机器人,其特征在于,所述调试器在参照所述结构化点块的所述点语句之前执行最初处理,并且在参照所述结构化点块的所述点语句之后执行最后处理,所有所述结构化点块记录:

单行或多行的最初语句,包含表示所述最初处理的内容的命令群或其调用命令;以及单行或多行的最后语句,包含表示所述最后处理的内容的命令群或其调用命令,所述控制器忽略所述最初语句与所述最后语句,所述调试器执行所述最初语句与所述最后语句。

说明书 :

机器人

技术领域

[0001] 本发明涉及一种机器人,尤其涉及机器人(robot)的控制数据(data)的调试(debug)。

背景技术

[0002] 针对工件(work)的螺丝紧固、熔接、涂装、工件的搬送、零件往工件上的安装、焊接等的各种产业用机器人例如具有垂直多关节型的移动部件,通过计算机(computer)对控制程序(program)的执行,使装配在移动部件上的作业工具(tool)移动到规定点(point),驱动作业工具。
[0003] 控制程序是通过工业机器人标准语言(Standard Language for Industrial Manipulators,SLIM)或超级SEL语言等机器人语言来描述,这些机器人语言具有以控制语句、手续、功能之类的命令为主体的句法。而且,还提供有一种点主体的机器人语言,其参照如下所述的控制数据来控制机器人,该控制数据是以点编号作为定界符,在点编号之下附加有与使作业工具所处的点相关的信息(例如参照专利文献1至专利文献3)。
[0004] 在点主体的机器人语言中,对使作业工具发挥原本功能的正式作业的开始点、正式作业的结束点、用于使作业工具位于开始点的经由点、及从开始点到结束点的经由点分别分配点编号,并将与这些点相关的信息预先记录到控制数据中。
[0005] 与点相关的信息表示点的种类、朝向点的移动方法、点的坐标、移动到点之前的作业内容、向点移动过程中的作业内容、点处的作业内容等,计算机参照这些信息来执行预先存储的命令群。即,在点主体的机器人语言中,各个点成为所谓的子程序(subroutine),排列在控制数据中。
[0006] 控制程序若要以哪种语言来描述,则须并用使用键盘或图形用户界面(Graphical User Interfaces,GUI)的代码(code)输入或者借助示教(teaching)而实现的点或姿势的记录来制作。在编程(programing)的过程中,包含调试作业,该调试作业是一边将控制程序定界而间断地执行,一边在每个定界符处确认机器人的动作,针对每个定界符进行控制数据的错误(bug)调查与修正。
[0007] 该调试作业中,已知有逐步(step)执行的单步执行。通过逐行确认命令,能够详尽地确定错误。还已知有在被称作功能块(function block)的子程序内连续执行的步越(step over)执行(例如参照专利文献2)。这是因为,功能块多已完成,因而在功能块内进行单步执行且每当停止时由用户发出再次开始的指示的做法极为繁琐而无效率。
[0008] 功能块是在IEC-61131-3中规定的程序的构成要素之一,是能够利用一个命令来调用通过多个功能的组合而实现的控制的子程序。对于功能块,当形成为一块时的功能的种类并无规定,一般而言,基于程序的开发效率或易懂性的观点,功能块是以能够沿用使用频率高的代码的方式,而且为了通过函数化来简化复杂的程序而利用。
[0009] 现有技术文献
[0010] 专利文献
[0011] 专利文献1:日本专利4222828号公报
[0012] 专利文献2:日本特开平07-64619号公报
[0013] 专利文献3:日本特开平05-257522号公报
[0014] 专利文献4:日本特开2007-102385号公报
[0015] 理想的是,调试作业尽可能有效率。若着眼于机器人,则作业工具多会改变加工点来反复进行正式作业。因此,对于调试作业中的机器人的动作确认而言,有时有效率的做法是以一连串作业为单位来进行,所述一连串作业是一边经过经由点而避开物理接触一边移动到开始点位置,从开始点开始一边进行正式作业一边朝向结束点移动,直至在结束点进行事后处理为止。
[0016] 但是,在参照记录有点主体句法的控制数据的控制形式的情况下,在以往的调试动作中,在多个各经由点暂时停止动作,在位于开始点时暂时停止动作,在位于结束点时暂时停止动作,在各停止期间内,等待用户发出再次开始的指示。总之,针对1处加工点的一连串作业变得零碎。
[0017] 为了使机器人连续进行一连串作业,考虑在用户侧对控制数据设置断点(break point)。但是,在编程中预先考虑调试来设定断点的做法耗费工夫,不能说有效率。而且,在大致的编程结束后对控制数据设定断点不现实。

发明内容

[0018] 本发明是为了解决如上所述的现有技术的问题而提出,其目的在于提供一种机器人,其使控制程序的调试效率化,该控制程序参照记录有点主体句法的控制数据。
[0019] 为了达成所述目的,本发明的机器人在各加工点重复进行一连串作业,其中包括:作业工具,在所述一连串作业中对各加工点执行正式作业;移动部件,在所述一连串作业中使所述作业工具移动;控制器,控制所述作业工具与所述移动部件;存储部件,存储控制数据,所述控制数据是将囊括每个所述加工点的所述一连串作业的结构化点块排列而成;以及调试器,执行步越,所述步越是以所述结构化点块为单位来连续执行所述控制数据后暂时停止。
[0020] 可设为:所述一连串作业包括由所述作业工具进行的正式作业、该正式作业前后的事前作业与事后作业、及向用于所述正式作业的多个点的定位,所述结构化点块记录有表示所述一连串作业中所含的作业与移动的内容的数据。
[0021] 可设为:所述结构化点块是将各点语句排列而成,所述各点语句是表示在一个所述一连串作业的过程中定位的所有点以及向所述点移动前、移动中或移动后的作业内容的数据,所述调试器连续执行一个所述结构化点块中所含的所有点语句后,暂时停止所述控制数据的连续执行。
[0022] 可设为:所述结构化点块是将各点语句与各作业语句排列而成,所述各点语句是表示在一个所述一连串作业的过程中定位的所有点的数据,所述各作业语句是表示一个所述一连串作业的过程中的在移动前、移动中或移动后进行的所有作业的数据,所述调试器连续执行一个所述结构化点块中所含的所有点语句及作业语句后,暂时停止所述控制数据的连续执行。
[0023] 可设为:所述结构化点块是记录断点信息而成,所述调试器连续执行所有的所述结构化点块直至具有所述断点信息的所述结构化点块的跟前为止,然后暂时停止。
[0024] 可设为:所述存储部件存储记录有断点信息的表,所述断点信息表示特定的所述结构化点块,所述调试器连续执行所有的所述结构化点块直至所述断点信息所表示的所述结构化点块的跟前为止,然后暂时停止。
[0025] 本发明的机器人也可包括接受用户操作的操作部件,所述调试器也可包括:步越执行部件,根据使用所述操作部件对步越执行的选择,以所述结构化点块为单位来连续执行所述控制数据后暂时停止;以及步入(step in)执行部件,根据使用所述操作部件对步入执行的选择,将执行位置对准所述结构化点块的内部最前端后暂时停止,每当由所述操作部件发出再次开始的指示时,逐一语句地间断执行后暂时停止。
[0026] 所述调试器也可包括:步出(step out)执行部件,根据使用所述操作部件在所述步入执行的选择后对步出执行的选择,连续执行所述结构化点块的所有剩余语句,从所述结构化点块步出后暂时停止。
[0027] 可设为:所述控制数据是将所述结构化点块设为嵌套来记录而成,所述调试器包括:嵌套步越执行部件,在设为嵌套的所有所述结构化点块内连续执行;以及嵌套步入执行部件,在设为嵌套的所述结构化点块的内部逐一语句地间断执行。
[0028] 所述调试器也可包括:嵌套步出执行部件,连续执行嵌套的所述结构化点块的所有剩余语句,从所述嵌套的结构化点块步出后暂时停止。
[0029] 本发明的机器人也可还包括:显示部件,树形显示所述控制数据的结构。
[0030] 可设为:所述控制器在参照所述结构化点块的列之前执行最初处理,并且在参照所述结构化点块的列之后执行最后处理,所有所述结构化点块记录:单行或多行的最初语句,包含表示所述最初处理的内容的命令群或其调用命令;以及单行或多行的最后语句,包含表示所述最后处理的内容的命令群或其调用命令,所述控制器忽略所述最初语句与所述最后语句,所述调试器执行所述最初语句与所述最后语句。
[0031] 根据本发明,在各加工点的每一连串作业中,机器人连续动作后暂时停止,因此调试的效率性提高。

附图说明

[0032] 图1是表示机器人的整体结构的示意图。
[0033] 图2是表示控制器的结构的框图。
[0034] 图3是表示对加工点的一连串作业的示意图。
[0035] 图4是表示第1实施方式的控制数据的示意图。
[0036] 图5是表示编程模式下的控制器的结构的框图。
[0037] 图6是表示第1实施方式的调试器的控制动作的流程图。
[0038] 图7是表示控制数据的第1变形例的示意图。
[0039] 图8是表示控制数据的第2变形例的示意图。
[0040] 图9是表示基于第2变形例的控制数据的调试器的控制动作的流程图。
[0041] 图10是表示控制数据的第3变形例的示意图。
[0042] 图11是表示第2实施方式的控制数据的示意图。
[0043] 图12是表示第2实施方式的调试器的结构的框图。
[0044] 图13是表示第2实施方式的调试器的控制动作的流程图。
[0045] 图14是表示第3实施方式的调试器显示在显示部上的操作画面的示意图。
[0046] 图15是关于第3实施方式,表示步入执行按钮被按下时的调试器的控制动作的流程图。
[0047] 图16是关于第3实施方式,表示步越执行按钮被按下时的调试器的控制动作的流程图。
[0048] 图17是关于第3实施方式,表示步出执行按钮被按下时的调试器的控制动作的流程图。
[0049] 图18是表示控制数据的第4变形例的示意图。
[0050] 图19是关于第4实施方式,表示调试器显示在显示部上的操作画面的示意图。
[0051] 图20是表示第5实施方式的控制数据的结构化点块的示意图。
[0052] 图21是表示第5实施方式的调试器的控制动作的流程图。
[0053] [符号的说明]
[0054] 1:机器人
[0055] 2:移动部件
[0056] 3:控制器
[0057] 4:作业工具
[0058] 6:控制数据
[0059] 7:结构化点块
[0060] 8:点语句
[0061] 9:作业语句
[0062] 9a:调试再次开始时执行的作业语句
[0063] 9b:调试停止时执行的作业语句
[0064] 21:X线性滑块
[0065] 22:Y线性滑块
[0066] 23:Z线性滑块
[0067] 31:CPU
[0068] 32:存贮器
[0069] 33:存储器
[0070] 34:马达驱动器
[0071] 35:操作部件
[0072] 51:控制数据生成部件
[0073] 52:调试器
[0074] 52a:定界点信息存储部
[0075] 53:操作画面
[0076] 71:断点信息
[0077] 72:断点表
[0078] 81:点编号
[0079] 82:点种类选项
[0080] 83:点坐标
[0081] 84:点速度
[0082] 85:作业种类选项
[0083] 86:作业编号
[0084] 91:作业种类选项
[0085] 92:作业编号
[0086] 351:示教板
[0087] 352:显示部
[0088] 531:结构制作栏
[0089] 532:代码描述栏
[0090] 533:步入执行按钮
[0091] 534:步越执行按钮
[0092] 535:步出执行按钮
[0093] S01~S18、S21~S27、S31~S34、S41~S43、S51~S53、S61~S68:步骤[0094] X、Y、Z:轴

具体实施方式

[0095] (第1实施方式)
[0096] (机器人结构)
[0097] 以下,参照图式来详细说明本发明的机器人1的第1实施方式。图1是本实施方式的机器人1的整体结构图。如图1所示,机器人1具备移动部件2与控制器3。在移动部件2上安装有作业工具4。该机器人1控制移动部件2及作业工具4,使作业工具4位于所需位置来进行作业。作业工具4例如为电动的螺丝紧固起子、熔接机、涂装枪(gun)、处理机(handler)等。
[0098] 移动部件2使作业工具4沿X轴方向、Y轴方向及Z轴方向移动,使作业工具4位于指定的点。X轴方向是与水平面平行的轴方向。Y轴方向是与水平面平行且与X轴正交的另一轴方向。Z轴方向是高度方向。该移动部件2具备使作业工具4沿X轴方向移动的X线性滑块(linear slider)21、使作业工具4沿Y轴方向移动的Y线性滑块22、及使作业工具4沿Z轴方向移动的Z线性滑块23。
[0099] X线性滑块21是在沿X轴方向延伸设置的轨道(rail)上滑动设置Y线性滑块22,并使Y线性滑块22正交地固定在沿X轴方向移行的环形带(belt),利用X轴马达(motor)来使环形带移行,使Y线性滑块22沿X轴移动。
[0100] Y线性滑块22是在沿Y轴方向延伸设置的轨道上滑动设置Z线性滑块23,并将Z线性滑块23固定在沿Y轴方向移行的环形带上,利用Y轴马达来使环形带移行,使Z线性滑块23沿Y轴移动。作为X线性滑块21及Y线性滑块22的传动机构,除了环形带以外,还可列举气缸(cylinder)、导螺杆(lead screw)等各种致动器(actuator)。
[0101] Z线性滑块23包括具有沿着Z轴的轴的臂(arm),在该臂的前端安装有作业工具4。该Z线性滑块23例如具有齿条和小齿轮(rack and pinion)机构,是沿Z轴方向延伸设置齿条,并将臂固定于该齿条而构成。通过利用Z轴马达来使小齿轮旋转,从而使臂沿Z轴方向移动。借助该Z线性滑块23,作业工具4在Z轴方向上移动。
[0102] 控制器3如图2所示,是所谓的计算机(computer),包含:中央处理器(Central Processing Unit,CPU)31,按照所谓的控制程序的构成要素即控制数据6来进行运算处理及向周边设备输出指令信号;硬盘驱动器(Hard Disk Driver,HDD)等存贮器(storage)32,存储程序;存储器33,展开程序,并临时存储CPU 31的运算结果;以及周边设备。周边设备是按照CPU31送出的指令信号来对各马达供给电力脉冲(pulse)的马达驱动器34、液晶显示器(display)等显示部352、以及鼠标(mouse)、键盘(keyboard)及示教板(teaching pendant)351等操作部件35。
[0103] 作为参照存贮器32的控制数据6的程序处理结果,该控制器3控制移动部件2与作业工具4。如图3所示,控制器3的控制结果例如为,机器人1一边经过3处经由点,一边向开始点移动。在该移动之前进行移动前作业,在移动中也进行移动中作业。当移动到开始点时,进行开始点处的开始点作业。当开始点作业结束时,一边开始正式作业一边从开始点向结束点移动。当移动到结束点时,进行结束点处的结束点作业。
[0104] 如本例所示,控制器3的控制结果为,机器人1进行针对加工点的一连串作业,并改变加工点而重新反复进行一连串作业。加工点是实施正式作业的加工点。一连串作业包含针对加工点的正式作业与用于完成该正式作业的附带作业。附带作业包含朝向正式作业的开始点的移动、正式作业前后的事前作业及事后作业。
[0105] 正式作业是发挥作业工具4的原本功能的螺丝紧固或熔接等。事前作业是朝向开始点的移动前的作业与移动中的作业、及开始点处的正式作业前的作业。移动是一边经过用于避开物理障碍的经由点一边朝向开始点的移动、及从开始点朝向正式作业的结束点的移动。事后作业是正式作业结束后的结束点处的作业。
[0106] (控制数据结构)
[0107] 图4是表示控制数据6的整体结构的示意图。控制数据6记录有针对各加工点的一连串作业。该控制数据6是将多个结构化点块7排列而成。结构化点块7是将针对1处加工点的一连串作业设为一块而记录。
[0108] 一连串作业是以点主体的句法而记录。即,结构化点块7是将表示针对1处加工点的一连串作业的所有点语句8排列而成。各点语句8是针对为了在加工点完成正式作业而必须定位的每个点所准备的信息。该点语句8是在点编号81之下排列点种类选项(option)82、点坐标83与点速度84而成。进而,点语句8是在点编号81之下排列作业种类选项85与作业编号86而成。
[0109] 点编号81明示为点主体句法的说明及定界符,以划分各点语句8。点种类选项82表示点的种类与移动方法的组合。点的种类是经由点、正式作业的开始点、及正式作业的结束点等。移动方法为点到点(Point To Point,PTP)移动、直线插值移动、借助辅助点指定的圆弧插值等。对于表示经由点的点种类选项82的记录,允许表示经由点的多个点坐标83的记录。
[0110] 作业编号86是表示描述有作业工具4的作业内容的命令群的识别符。命令群是通过SLIM(Standard Language for Industrial Manipulators)或超级SEL语言等机器人语言来描述,预先存储在存贮器32中。作业种类选项85表示作业编号86所示的作业的实施时期。该作业种类选项85表示移动前作业、移动中作业、开始点作业、结束点作业或正式作业。
[0111] 例如,点语句8为“#1 CP开始点X=ο ο,Y=ΔΔ,Z=××速度40移动中作业作业编号1”。控制器3根据#1来识别点语句8的定界符,参照#1以下来控制移动部件2,通过如下所述的移动方法来使作业工具4的位置移动,即,使作业工具4朝向由“X=ο ο,y=ΔΔ,Z=××”的点坐标83所获得的坐标,以由“速度40”的点速度84所获得的速度,描绘由“CP开始点”的点种类选项82所获得的圆滑的圆弧。
[0112] 而且,控制器3在由“移动中作业”的作业种类选项85所获得的移动过程中,执行“作业编号1”的作业编号86所识别的命令群,使机器人1进行作业编号1的作业。
[0113] 这样,在该控制数据6中,点语句8是针对为了完成对加工点的正式作业而定位的每个点所记录,并非直接指示加工点。另一方面,表示一连串作业的所有点语句8是由结构化点块7所囊括,加工点由结构化点块7而明示。
[0114] 控制器3具备:运转模式,按照该控制数据6来控制移动部件2及作业工具4;以及编程模式,编辑控制数据6。编程模式具备实机调试模式,该实机调试模式进行遵循控制数据6的机器人1的动作确认。
[0115] 在运转模式中,控制器3连续执行控制数据6的所有点语句8,而控制移动部件2及作业工具4。即,控制器3从最前端开始逐个连续地参照结构化点块7。在结构化点块7的参照中,控制器3从最前端开始依序参照结构化点块7内的各点语句8。并且,执行点语句8所表示的控制,通过所有点语句8所表示的控制的执行结束,返回主程序(main routine)。当返回主程序时,继续参照下个结构化点块7。
[0116] (调试结构)
[0117] 如图5所示,在编程模式的情况下,控制器3包含控制数据生成部件51与调试器52。控制数据生成部件51按照对示教板351、鼠标或键盘等操作部件35的输入,对控制数据6内的各数据进行追加、删除或修正等,以编辑控制数据6。
[0118] 调试器52是对控制数据6定界来间断执行控制数据6,使移动部件2与作业工具4间断动作的程序间断执行部件。调试器52将结构化点块7作为定界符的基准,针对每个结构化点块7而步越执行。
[0119] 图6是表示调试器52的控制动作的流程图。如图6所示,调试器52从控制数据6中参照下个结构化点块7(步骤S01)。当参照结构化点块7时,从所参照的结构化点块7内的最前端开始依序执行点语句8(步骤S02)。若仍存在未执行的点语句8(步骤S03,“否(No)”),则返回步骤S02,执行下个点语句8(步骤S02)。
[0120] 当所参照的结构化点块7内的所有点语句8的执行结束时(步骤S03,“是(Yes)”),返回控制数据6的主程序(步骤S04)。并且,若仍存在下个结构化点块7(步骤S05,“否”),则调试器52暂时停止控制数据6的执行(步骤S06)。
[0121] 当用户使用操作部件35来指示执行再次开始时(步骤S07,“是”),调试器52返回步骤S01,参照未执行的下个结构化点块7(步骤S01)。当对所有结构化点块7的参照结束时(步骤S05,“是”),调试器52结束对参照控制数据6的动作确认的执行。
[0122] (作用效果)
[0123] 这样,通过将结构化点块7作为定界符的基准而间断地执行控制数据的调试器52,机器人1在每一连串作业中进行动作,在每一连串作业结束时暂时停止,待用户使用操作部件35发出再次开始的指示后开始下一连串作业。即,机器人1的控制数据6将构成针对1处加工点的一连串作业的所有点语句8汇总在一个结构化点块7中。
[0124] 因而,通过步越执行语句块的调试器52,机器人1以针对1处加工点的一连串作业为单位而动作,由用户的调试器52的效率性提高。
[0125] 而且,在控制数据6中,排列有针对每个加工点的结构化点块7。若为点主体的句法,则是将不直接指示加工点的经由点、开始点、结束点予以排列,难以把握这些点是与哪个加工点相关的点。
[0126] 但是,通过由针对每个加工点的结构化点块7的排列来构成控制数据6,从而控制数据6能够以加工点作为主体来进行判读,由用户所进行的调试的效率性提高。
[0127] (控制数据变形例1)
[0128] 图7是表示排列在控制数据6中的结构化点块7的示意图。该控制数据6中,从点语句8中导出作业种类选项85与作业编号86,形成一句作业语句9。该作业语句9包含作业种类选项91与作业编号92。作业语句9与点语句8依照执行的顺序而排列。构成移动中的作业的命令群在移动过程中由系统明示或暗中地反复。
[0129] 如此,即使结构化点块7内并非仅由点语句8构成而混合存在有作业语句9,但只要囊括在结构化点块7内,则在调试时便能够以与1处加工点对应的一连串作业为单位来连续执行。
[0130] (控制数据变形例2)
[0131] 图8是表示第2变形例的控制数据6的示意图。如图8所示,在结构化点块7中可附加有断点信息71。断点信息71是通过在编程模式中使用操作部件35来制作及编辑操作控制数据6而写入,在调试模式下有效。
[0132] 遵循该控制数据6的调试模式的动作如下。即,如图9所示,调试器52从控制数据6中参照未执行的结构化点块中的最前端的结构化点块7(步骤S11)。若在所参照的结构化点块7中存在断点信息71(步骤S12,“是”),则暂时停止控制数据6的执行(步骤S13)。
[0133] 另一方面,若无断点信息71(步骤S12,“否”),则从所参照的结构化点块7中执行未执行语句中的最前端的点语句8或作业语句9(步骤S14)。若仍存在未执行的点语句8或作业语句9(步骤S15,“否”),则返回步骤S14,执行下个未执行语句中的最前端的点语句8或作业语句9。
[0134] 当所参照的结构化点块7中所含的所有点语句8或作业语句9的执行结束时(步骤S15,“是”),返回主程序(步骤S16)。并且,若仍存在未执行的结构化点块7(步骤S17,“否”),则调试器52返回步骤S11,参照该结构化点块7(步骤S11),若存在断点信息71(步骤S12,“是”),则暂时停止(步骤S13)。
[0135] 在步骤S13的暂时停止过程中,当用户使用操作部件35来指示执行再次开始时(步骤S18,“是”),调试器52返回步骤S14,执行所参照的结构化点块7。当所有结构化点块7的执行结束时(步骤S17,“是”),调试器52结束控制数据6的执行。
[0136] 依存于该断点信息71而暂时停止的方法与依存于结构化点块7而暂时停止的方法是在实机调试模式下使用操作部件35来选择。
[0137] 如此,在调试作业中,通过选择以结构化点块7为单位的执行或直至所设定的断点为止的连续动作,从而可配合调试作业的阶段来采取适当的执行方法,调试作业进一步效率化。
[0138] (控制数据变形例3)
[0139] 如图10所示,控制数据6具有断点表72。该断点表72存储有断点信息71,该断点信息71表示在执行前暂时停止的结构化点块7。该断点信息71例如是以结构化点块7的名称来表示。
[0140] 调试器52在参照结构化点块7之前,参照断点表72,判定所参照的结构化点块7与存储在断点表72中的断点信息71是否一致。若一致,则在执行所参照的结构化点块7之前暂时停止,待操作部件35发出再次开始的指示后开始执行结构化点块7。
[0141] 如此,通过将断点信息71预先记录在与控制数据6的本体独立的表中,从而断点信息71的设置、替换及删除变得容易,调试作业的效率进一步提高。即,不再需要为了设置断点信息71等而判读控制数据6的内容。
[0142] (第2实施方式)
[0143] 接下来,参照图式来详细说明第2实施方式的机器人。对于与第1实施方式相同的结构及相同的功能,标注相同的标号并省略说明。
[0144] (控制数据结构)
[0145] 图11是第2实施方式的控制数据6的示意图。该控制数据6是将点语句8排列而成,该点语句8构成针对各加工点的一连串作业。该控制数据6并非以利用结构化点块7来囊括点语句8的方式,对针对每一连串作业的点语句8的列进行定界。
[0146] 例如,对以坐标(X,Y,Z)=(100,120,50)为开始点的第1一连串作业的各点语句8与以坐标(X,Y,Z)=(100,240,50)为开始点的第2一连串作业的各点语句8标注点编号81而连续排列。
[0147] 第1一连串作业为点编号1~点编号6,若依照该控制数据6,则作业工具4通过2处回避点,且呈直线地移动到开始点,一边从开始点通过2处通过点,一边呈圆弧状地向结束点移动,进行以“作业编号4”所示的正式作业,直至移动到该结束点为止。
[0148] 第2一连串作业为点编号7~点编号13,若依照该控制数据6,则作业工具4从第1一连串作业的结束点通过2处回避点,且呈直线地移动到开始点,一边从开始点通过3处通过点,一边呈圆弧状地向结束点移动,进行以“作业编号4”所示的正式作业,直至移动到该结束点为止。
[0149] (调试器)
[0150] 如图12所示,调试器52具有主要包含存贮器32的定界点信息存储部52a,预先存储有最前端定界点信息与末尾定界点信息。最前端定界点信息与末尾定界点信息表示一连串作业的最初与最后的点语句8的种类。例如,最初的点语句8是关于经由点列,最后的点语句8是关于结束点。
[0151] 如图13所示,调试器52在结束下个点语句8的执行时(步骤S21),调试器52参照定界点信息存储部52a中存储的末尾定界点信息,判断再下个点语句8是否为最后的点语句8(步骤S22)。
[0152] 若是末尾定界点信息所表示的点语句8(步骤S22,“是”),则调试器52执行该点语句8(步骤S23)后暂时停止(步骤S24)。另一方面,若非末尾定界点信息所表示的点语句8(步骤S22,“否”),则返回步骤S21,依序继续连续执行点语句8。
[0153] 在暂时停止后(步骤S24),待使用操作部件35发出再次开始的指示后(步骤S25),调试器52参照定界点信息存储部52a中存储的最前端定界点信息,判断再下个点语句8是否为最初的点语句8(步骤S26)。
[0154] 若是最前端定界点信息所表示的点语句8(步骤S26,“是”),则调试器52返回步骤S21,依序继续连续执行点语句8。另一方面,若非最前端定界点信息所表示的点语句8(步骤S26,“否”),则调试器52切换为逐行地间断执行点语句8(步骤S27)。
[0155] 如此,结构化点块7尽管并非以用户可判读的方式囊括点语句8,但能够暗中地构成该点语句8,从而能够在调试作业中以一连串作业为单位而连续执行。因此,编程的容许度提高。
[0156] (第3实施方式)
[0157] 接下来,参照图式来详细说明第3实施方式的机器人。对于与第1实施方式相同的结构及相同的功能,标注相同的标号并省略说明。
[0158] (调试器)
[0159] 该调试器52对应于使用操作部件35的操作,对控制数据6进行步入执行、步越执行或步出执行。图14是进行第3实施方式的机器人的动作确认的操作画面的示意图。该操作画面上,显示有步入执行按钮533、步越执行按钮534与步出执行按钮535。
[0160] 调试器52如图15所示,当步入执行按钮533被按下时(步骤S31,“是”),若执行位置为主程序(步骤S32,“是”),则步入结构化点块7(步骤S33)。即,在结构化点块7的最前端暂时停止控制数据6的执行。
[0161] 另一方面,若在步入执行按钮533按下时执行位置为结构化点块7内(步骤S32,“否”),则从结构化点块7步入点语句8(步骤S34)。即,对执行位置的点语句8进行执行,并在点语句8的执行结束时暂时停止。在点语句8包含命令群的情况下,逐步地执行后暂时停止。
[0162] 而且,调试器52如图16所示,当步越执行按钮534被按下时(步骤S41,“是”),连续执行结构化点块7直至结束为止(步骤S42),在下个结构化点块7中暂时停止执行(步骤S43)。即,进行与第1实施方式的调试器52相同的控制动作。
[0163] 而且,调试器52如图17所示,当步出执行按钮535被按下时(步骤S51,“是”),连续执行结构化点块7内的剩余部分(步骤S52),在结构化点块7的连续执行结束时返回主程序而暂时停止执行(步骤S53)。
[0164] 如此,调试器52通过步入执行按钮533被按下,逐步地间断执行控制数据6。而且,调试器52通过步越执行按钮534被按下,对每个结构化点块7连续执行控制数据6。而且,调试器52通过步出执行按钮535被按下,从步入执行转变为结构化点块7的步越执行。
[0165] 因而,用户能够根据调试作业的阶段来进行适当的调试动作,调试操作的效率性进一步提高。
[0166] (控制数据变形例4)
[0167] 图18是表示第4变形例的控制数据6的示意图。该控制数据6是在主程序中明示地排列结构化点块7,在结构化点块7的内部,进而呈嵌套地配置有结构化点块7。该呈嵌套的结构化点块7例如以“Call Points”这一结构化点块7的调用命令而记录在上位层的结构化点块7内。
[0168] 在具有该结构的控制数据6的情况下,当步入执行按钮533被按下时,调试器52逐个执行呈嵌套的结构化点块7的点语句8,每次执行后均暂时停止。当步越执行按钮534被按下时,连续执行呈嵌套的结构化点块7内的所有点语句8后,返回上位层的结构化点块7内并暂时停止。而且,当在步入执行的中途,步出执行按钮535被按下时,执行呈嵌套的结构化点块7的所有剩余部分后,返回上位层的结构化点块7内并暂时停止。
[0169] (第4实施方式)
[0170] 接下来,参照图式来详细说明第4实施方式的机器人。对于与第1实施方式或变形例相同的结构及相同的功能标注相同的标号并省略说明。
[0171] (调试器)
[0172] 图19表示在编程模式下显示在显示部352上的操作画面53。如图19所示,控制器3使显示部352显示操作画面53的画面。操作画面53被分成结构制作栏(column)531与代码描述栏532。结构制作栏531树形显示控制数据6的结构。
[0173] 在该结构制作栏531中,在上位的阶层展开主程序。在主程序中排列有结构化点块7。通过该结构化点块7的排列,每个加工点的程序的定界符变得能够识别。当展开结构化点块7时,点语句8进行排列。通过该点语句8的排列,每一处加工点的作业内容能够以使作业工具4移动的点为主体而识别。
[0174] 通过结构制作栏531内的操作部件35的操作,控制数据生成部件51对控制数据6追加结构化点块7。而且,通过结构制作栏531内的操作部件35,控制数据生成部件51对结构化点块7追加点语句8。进而,在代码描述栏中,对应于使用操作部件35的键入或示教,来编辑点语句8,描述以作业编号86所示的命令群的代码。
[0175] 调试器52在该结构制作栏531内显示控制数据6的执行位置。展开执行中的结构化点块7,强调执行中的点语句8的图标(icon)。若是在作业语句9的执行中,则展开作业语句9中所含的作业编号92的命令群,强调执行中的命令。而且,调试器52通过结构制作栏531内的操作部件35的操作,将断点信息71附加至所指示的结构化点块7。
[0176] 由此,用户能够在视觉上掌握控制数据6的结构化点块7的排列。即,能够以每个加工点的一连串作业为单位来判读控制程序。因而,调试作业的效率进一步提高。
[0177] (第5实施方式)
[0178] 接下来,参照图式来详细说明第5实施方式的机器人。对于与第1实施方式的变形例1相同的结构及相同的功能标注相同的标号并省略说明。
[0179] (控制数据)
[0180] 图20是表示排列在控制数据6中的结构化点块7的示意图。各结构化点块7是将点语句8与作业语句9排列而成。在该结构化点块7中,排列有调试再次开始时执行的作业语句9a与调试停止时执行的作业语句9b。
[0181] 调试再次开始时执行的作业语句9a的处理内容是在运转模式时通过各结构化点块7而连续执行时,在控制数据6的初期预先执行的作业内容。例如,是连结多个加工点而进行激光切割(laser cut)时的激光照射。调试停止时执行的作业语句9b的处理内容是在运转模式时通过所描述的结构化点块7而连续执行时,在控制数据6的最后执行的作业内容。例如,是连结多个加工点而进行激光切割时的激光照射停止。
[0182] (调试器)
[0183] 该调试再次开始时执行的作业语句9a与调试停止时执行的作业语句9b在运转模式下被忽略,在实机调试模式下,在满足特定条件的情况下由调试器52执行。特定条件在调试再次开始时执行的作业语句9a的情况下为步越执行的最初,在调试停止时执行的作业语句9b的情况下为步越执行或步出执行的最后。
[0184] 图21是表示调试器52的控制动作的流程图。如图21所示,调试器52在之前的结构化点块7的执行结束时(步骤S61),暂时停止(步骤S62)。并且,根据用户使用操作部件35发出的再次开始的指示(步骤S63,“是”),参照下个结构化点块7内的调试再次开始时执行的作业语句9a(步骤S64),执行调试再次开始时的作业(步骤S65)。在调试再次开始时的作业参与机器人1的动作的情况下,调试器52控制移动部件2及作业工具4。
[0185] 当调试再次开始时执行的作业语句9a的执行结束时(步骤S65),调试器52连续执行参照中的结构化点块7内的剩余的点语句8或作业语句9(步骤S66)。
[0186] 当剩余的点语句8等的连续执行结束时(步骤S66),调试器52参照结构化点块7内的调试停止时执行的作业语句9b(步骤S67),执行调试停止时的作业(步骤S68)。在调试结束时的作业参与机器人1的动作的情况下,调试器52控制移动部件2及作业工具4。
[0187] 并且,当包括调试再次开始时执行的作业语句9a及调试停止时执行的作业语句9b在内,参照中的结构化点块7内的所有语句的连续执行结束时(步骤S61),返回步骤S62而暂时停止(步骤S62)。
[0188] 当在调试作业中停止程序的执行时,有时在系统上,也欲使在控制数据的执行过程中连续地持续动作的内容暂时停止。例如,在激光加工中,有时为了重新观察实机的状态而欲暂时停止激光输出。
[0189] 该机器人1中,通过调试停止时执行的作业语句9b,欲与机器人1的暂时停止一同中止的作业也能够自动停止。
[0190] 另一方面,若使欲与机器人1的暂时停止一同中止的作业停止,则在执行下个结构化点块7时,有时会因不使已中止的作业再次开始而引起问题。例如,在激光加工中,无激光输出而无法进行下个加工点的动作确认。
[0191] 因此,该机器人1中,通过调试再次开始时执行的作业语句9a,可在下个结构化点块7的执行开始时预先执行已暂时停止的作业。
[0192] 由此,可消除调试作业中的失误(miss)或繁琐性,调试作业的效率性也提高。
[0193] (其他实施方式)
[0194] 如上所述那样说明了本发明的实施方式,但在不脱离发明的主旨的范围内可进行各种省略、替换、变更。并且,该实施方式及其变形包含在发明的范围或主旨内,并且包含在权利要求书所记载的发明及其均等的范围内。
[0195] 例如,表示了直接对机器人1进行针对机器人1的编程的示例,但并不限于此,也可利用机器人1以外的计算机等的编程工具来进行,并将控制数据6加载(load)至机器人1中。