数值控制装置以及数值控制系统的制作方法
未命名
08-27
阅读:77
评论:0

1.本公开关于数值控制装置及数值控制系统。
背景技术:
2.近年来为了促进加工现场的自动化,期望一种数值控制系统,对加工工件的机床的动作与设置在该机床附近的机器人的动作进行联动控制(参照例如专利文献1)。
3.一般而言,用于控制机床的数值控制程序与用于控制机器人的机器人程序的程序语言不同。因此,为了使机床的动作与机器人的动作联动,操作者必须熟练掌握数值控制程序与机器人程序双方。
4.在专利文献1中,示出了由数值控制程序控制机床与机器人双方的数值控制装置。更具体而言,在专利文献1所示的数值控制系统中,在数值控制装置中按照数值控制程序,生成在机器人控制装置中能够识别的机器人指令,在机器人控制装置中根据上述机器人指令生成机器人程序,按照该机器人程序来控制机器人的动作。根据由专利文献1所示的数值控制系统,只要是熟悉数值控制程序的用户,无须熟练掌握机器人程序也可以控制机器人。
5.然而,根据g代码或m代码等程序语言的数值控制程序基本上是以程序块为单位进行描述,另外数值控制装置是以指令程序块为单位执行数值控制程序。因此,在现有的数值控制系统中,在数值控制装置侧,以指令程序块为单位逐次生成机器人指令,并将该机器人指令发送到机器人控制装置,在机器人控制装置侧,根据以指令程序块为单位发送的机器人指令,逐次生成机器人程序,根据该机器人程序,以指令程序块为单位控制机器人的动作。由此,在数值控制装置和机器人控制装置中,能够使分别执行的程序的执行程序块同步。
6.专利文献
7.专利文献1:日本专利第6647472号
技术实现要素:
8.发明想要解决的课题
9.然而,在现有的数值控制系统中,每当在机器人控制装置侧,以指令程序块为单位完成机器人的动作的控制时,在数值控制装置侧需要执行下一指令程序块的读入处理、从已读入的指令程序块向机器人指令的转换处理、和机器人指令的发送处理中的至少3个处理。因此,在现有的数值控制系统中,与数值控制程序的程序尺寸(即,构成数值控制程序的指令程序块数)成比例,转换处理的执行次数也增加。因此,在现有的数值控制系统中,由于程序尺寸越大,转换处理所耗费的时间也变得越长,因此有可能机器人控制的循环时间也将随之增加该转换处理所耗费的时间。
10.本公开的目的在于,提供能够在数值控制装置与机器人控制装置之间实现程序的执行程序块的同步,并且缩短机器人控制的循环时间的数值控制装置以及数值控制系统。
11.用于解决课题的手段
12.本公开的一方式提供一种数值控制装置,其根据数值控制程序控制机床的动作,并且生成针对控制机器人的动作的机器人控制装置的机器人指令,所述数值控制装置具备:程序预处理部,其根据所述数值控制程序的每个程序块的解析结果,生成在所述机器人控制装置中能够识别的程序块机器人指令和与该程序块机器人指令关联起来的程序块信息;机器人指令存储部,其存储由所述程序预处理部生成的程序块机器人指令和程序块信息;程序执行管理部,其从所述机器人指令存储部读入与由规定的程序执行指令所指定的程序块信息关联起来的程序块机器人指令;通信部,其将由所述程序执行管理部读入的程序块机器人指令发送到所述机器人控制装置。
13.本公开的一方式提供一种数值控制系统,其具备:数值控制装置,其根据数值控制程序控制机床的动作,并且生成针对控制机器人的动作的机器人控制装置的机器人指令;机器人控制装置,其能够与所述数值控制装置通信,并根据从所述数值控制装置发送的机器人指令来控制所述机器人的动作,所述数值控制装置具备:程序预处理部,其根据所述数值控制程序的每个程序块的解析结果,生成在所述机器人控制装置中能够识别的程序块机器人指令和与该程序块机器人指令关联起来的程序块信息;机器人指令存储部,其存储由所述程序预处理部生成的程序块机器人指令和程序块信息;程序执行管理部,其从所述机器人指令存储部读入与由规定的程序执行指令所指定的程序块信息关联起来的程序块机器人指令;第一通信部,其将由所述程序执行管理部读入的程序块机器人指令发送到所述机器人控制装置,所述机器人控制装置具备:第二通信部,其接收从所述第一通信部发送的程序块机器人指令;机器人程序生成部,其根据由所述第二通信部接收到的程序块机器人指令来生成机器人程序;动作控制部,其根据由所述机器人程序生成部生成的机器人程序来控制所述机器人的动作。
14.发明效果
15.在本公开的一方式中,数值控制装置的程序预处理部根据数值控制程序的每个程序块的解析结果,生成在机器人控制装置中能够识别的程序块机器人指令和与该程序块机器人指令关联起来的程序块信息,数值控制装置的机器人指令存储部存储已生成的程序块机器人指令和程序块信息。另外,数值控制装置的程序执行管理部从机器人指令存储部读入与由程序执行指令所指定的程序块信息关联起来的程序块机器人指令,数值控制装置的通信部将由程序执行管理部读入的程序块机器人指令发送到机器人控制装置。如上所述,根据本公开的一方式,在将程序执行指令输入程序执行管理部之前,预先由程序预处理部生成针对数值控制程序中所包含的全部程序块的程序块机器人指令和程序块信息,并存储于机器人指令存储部,由此在将程序块机器人指令从数值控制装置发送到机器人控制装置时,无须从数值控制程序执行生成程序块机器人指令的处理。因此,根据本公开的一方式,可以在数值控制装置与机器人控制装置之间实现程序的执行程序块的同步,并且相较于现有的数值控制系统,将使机器人控制的循环时间缩短程序块机器人指令的生成处理所耗费的时间。
附图说明
16.图1是本公开的第一实施方式的数值控制系统的概略图。
17.图2是数值控制装置以及机器人控制装置的功能框图。。
18.图3是示意地表示由程序预处理部的预处理所生成的多个程序块机器人指令的图。
19.图4是表示数值控制装置与机器人控制装置之间的信号以及信息的流程、在数值控制装置中执行的处理、以及在机器人控制装置中执行的处理的时序图。
20.图5是表示机器人用数值控制程序、以及针对该数值控制程序实施预处理而由此生成的多个程序块机器人指令的一例的图。
21.图6是表示在本公开的第二实施方式的数值控制系统中,数值控制装置与机器人控制装置之间的信号以及信息的流程、在数值控制装置中执行的处理、以及在机器人控制装置中执行的处理的时序图。
具体实施方式
22.《第一实施方式》
23.以下参考图式来说明本公开的第一实施方式的数值控制系统。
24.图1是本实施方式的数值控制系统1的概略图。
25.数值控制系统1具备:机床2;数值控制装置(cnc)5,其控制该机床2的动作;机器人3,其被设置于机床2附近;机器人控制装置6,其与数值控制装置5可通信地连接。数值控制装置5根据规定的数值控制程序来控制机床2的动作,并且生成针对机器人控制装置6的指令,并发送到机器人控制装置6。机器人控制装置6根据从数值控制装置5发送的指令,来控制机器人3的动作。
26.机床2根据从数值控制装置5发送的机床控制信号,来加工未图标的工件。这里,机床2是例如车床、钻床、铣床、磨床、激光加工机及射出成型机等,但不限于此。
27.机器人3在机器人控制装置6的控制下进行动作,例如针对由机床2加工的工件进行规定作业。机器人3例如是多关节机器人,在其臂前端部31安装有用于握持、加工或检查工件的工具32。以下说明机器人3采用6轴多关节机器人的情况,但不限于此。另外,在以下说明机器人3采用6轴多关节机器人的情况,但轴数不限于此。
28.数值控制装置5以及机器人控制装置6是分别由cpu(central processing unit,中央处理器)等运算处理单元、储存了各种程序的hdd(hard disk drive,硬盘驱动器)或ssd(solid state drive,固态硬盘驱动器)等辅助存储单元、用于储存在运算处理单元执行程序的基础上暂时所需的数据的ram(random access memory,随机存取存储器))等主存储单元、操作者进行各种操作的键盘等操作单元、以及对操作者显示各种信息的显示器等显示单元等硬件构成的计算机。这些机器人控制装置6以及数值控制装置5可以通过例如以太网(注册商标)相互收发各种信号。
29.图2是数值控制装置5以及机器人控制装置6的功能框图。
30.数值控制装置5按照以下说明的程序,生成用于控制机器人3或工具32的动作的各种指令,并将生成的指令发送到机器人控制装置6。机器人控制装置6根据从数值控制装置5发送的指令,按照以下说明的程序,生成用于控制机器人3的动作的机器人控制信号,或生成用于控制工具32的动作的i/o信号,并将生成的机器人控制信号或i/o信号输入机器人3。由此机器人控制装置6控制机器人3及工具32的动作。
31.首先,说明数值控制装置5的详细结构。如图2所示,在数值控制装置5中,通过上述
硬件结构实现作为机床2的控制系统的机床控制模块50、作为机器人3的控制系统的机器人控制模块51、存储在机床控制模块50或机器人控制模块51中执行的数值控制程序等的存储部52、以及根据操作者的操作来制作、选择或编辑数值控制程序的程序编辑部53等各种功能。
32.存储部52具备:机床用程序存储部521,其存储机床用数值控制程序,所述机床用数值控制程序是用于在机床控制模块50中生成针对机床2的机床控制信号的数值控制程序;机器人用程序存储部522,其存储机器人用数值控制程序,所述机器人用数值控制程序是用于在机器人控制模块51中生成针对机器人3的机器人指令的数值控制程序;机器人指令存储部523,其存储后述的程序块机器人指令和程序块信息等。
33.存储于机床用程序存储部521的机床用数值控制程序、存储于机器人用程序存储部522的机器人用数值控制程序是由以共同的程序语言(例如g代码或m代码等)描述的多个指令程序块来构成。在这些程序存储部521、522中,分别存储有多个数值控制程序。另外,对存储于该等程序存储部521、522的多个数值控制程序,分别分派了固有的程序编号。
34.程序编辑部53根据操作者对未图示的操作面板进行的操作,重新生成新的数值控制程序并存储于程序存储部521、522,或者选择或编辑存储于程序存储部521、522的数值控制程序。
35.机床用数值控制程序是根据作为第一坐标系的机床坐标系来描述,所述第一坐标系是以被决定于机床2上或机床2附近的基准点作为原点。即,在机床用数值控制程序中,机床2的控制点的位置及姿势是由机床坐标系的坐标值来描述。
36.机器人用数值控制程序是根据与机床坐标系不同的作为第二坐标系的机器人坐标系来描述。即,在机器人用数值控制程序中,机器人3的控制点(例如机器人3的臂前端部31)的位置及姿势是由与机床坐标系不同的机器人坐标系的坐标值来描述。该机器人坐标系是以被决定于机器人3上或机器人3附近的基准点作为原点的坐标系。此外,以下虽然说明了机器人坐标系与机床坐标系不同的情况,但本公开不限于此。也可以使机器人坐标系与机床坐标系一致。换句话说,可以使机器人坐标系的原点和坐标轴方向与机床坐标系的原点和坐标轴方向一致。
37.另外,在该机器人用数值控制程序中,机器人坐标系可以在控制轴不同的2种以上的坐标形式之间切换。更具体而言,在机器人用数值控制程序中,机器人3的控制点的位置及姿势可以由正交坐标形式或各轴坐标形式来指定。
38.在各轴坐标形式中,机器人3的控制点的位置及姿势是由以机器人3的6个关节的旋转角度值(j1,j2,j3,j4,j5,j6)作为成分的合计6个实数的坐标值来指定。
39.在正交坐标形式中,机器人3的控制点的位置及姿势是由以沿着3个正交坐标轴的3个坐标值(x,y,z)、以及绕各正交坐标轴的3个旋转角度值(a,b,c)作为成分的合计6个实数的坐标值来指定。
40.这里,在各轴坐标形式下,由于直接指定机器人3的各关节的旋转角度,因此机器人3的各臂或腕部的轴配置、能够360度以上旋转的关节的旋转数(以下将该等统称为「机器人3的形态」)也被唯一地决定。相对于此,在正交坐标形式下,由于由6个坐标值(x,y,z,a,b,c)指定机器人3的控制点的位置及姿势,因此无法唯一地决定机器人3的形态。因此,在机器人用数值控制程序中,能够通过规定位数的整数值即形态值p来指定机器人3的形态。因
此,机器人3的控制点的位置和姿势以及机器人3的形态在各轴坐标形式下通过6个坐标值(j1,j2,j3,j4,j5,j6)来表示,在正交坐标形式下通过6个坐标值及1个形态值(x,y,z,a,b,c,p)来表示。
41.在机器人用数值控制程序中,可以由g代码“g68.8”及“g68.9”来设定坐标形式。更具体而言,通过输入g代码“g68.8”,坐标形式被设定为各轴坐标形式,通过输入g代码“g68.9”,坐标形式被设定为正交坐标形式。用于设定这些坐标形式的g代码“g68.8”及“g68.9”是模态。因此,在通过这些g代码将坐标形式设定为各轴坐标形式或正交坐标形式之后,直至再次通过这些g代码变更坐标形式为止,维持坐标形式。此外,在本实施方式中,在机器人用数值控制程序中未记载有用于设定该等坐标形式的g代码时,坐标形式采用自动设定为正交坐标形式,但不限于此。
42.机床控制模块50按照存储于机床用程序存储部521的机床用数值控制程序,生成用于控制机床2的动作的机床控制信号,并输入机床2的未图示的致动器。更具体而言,机床控制模块50从存储于机床用程序存储部521的多个机床用数值控制程序的中读入由规定的程序执行指令所指定的程序编号的数值控制程序,通过解析根据该数值控制程序的指令类别,来生成机床控制信号。机床2根据从机床控制模块50发送的机床控制信号来进行动作,加工未图示的工件。
43.机器人控制模块51根据存储于机器人用程序存储部522的机器人用数值控制程序,生成用于控制机器人3及工具32的动作的各种指令,并发送到机器人控制装置6。更具体而言,机器人控制模块51具备程序预处理部54、程序执行指令部57、程序执行管理部58、以及第一通信部59。
44.程序预处理部54是从机器人用程序存储部522读入由多个指令程序块构成的机器人用数值控制程序,并且针对已读入的机器人用数值控制程序实施由以下步骤所示的预处理,由此对于每个构成机器人用数值控制程序的指令程序块生成以在机器人控制装置6能够识别的形式来描述的机器人指令即程序块机器人指令,并使机器人指令存储部523存储已生成的多个程序块机器人指令。
45.更具体而言,程序预处理部54具备程序输入部541、输入解析部542以及机器人指令生成部543,通过使用这些来对于机器人用数值控制程序实施预处理。
46.以下说明了程序预处理部54与例如程序编辑部53已完成生成、选择或编辑机器人用数值控制程序相对应地开始以下说明的预处理的情况,但开始预处理的定时不限于此。程序预处理部54最迟在后述的程序执行指令部57将后述的程序执行指令输入程序执行管理部58之前,开始以下说明的预处理即可。
47.首先,程序输入部541从存储于机器人用程序存储部522的多个机器人用数值控制程序中读入未实施预处理的机器人用数值控制程序,具体而言,是读入程序编辑部53已完成生成、选择或编辑的机器人用数值控制程序,并将其按照每个指令程序块逐次输入输入解析部542。
48.输入解析部542按照每个指令程序块,解析根据从程序输入部541输入的机器人用数值控制程序的指令类别,将其解析结果按照每个指令程序块发送到机器人指令生成部543。
49.机器人指令生成部543根据按照每个指令程序块从输入解析部542发送的解析结
果,按照每个指令程序块,生成在机器人控制装置6中能够识别的机器人指令即程序块机器人指令、和与该程序块机器人指令关联起来的程序块信息,并使机器人指令存储部523存储已生成的程序块机器人指令或程序块信息。更具体而言,机器人指令生成部543通过将已读入的机器人用数值控制程序的语言转换成在机器人控制装置6中能够识别的语言,由此生成在机器人控制装置6中能够识别的程序块机器人指令。这里,在将机器人用数值控制程序的语言转换成在机器人控制装置6中能够识别的语言的处理中,也包含将机器人用数值控制程序的字符码转换成在机器人控制装置6中能够识别的字符码的处理、将机器人用数值控制程序转换成在机器人控制装置6中能够识别的信号的处理等。另外,在程序块信息中,包含在生成程序块机器人指令时读入的机器人用数值控制程序的程序编号、机器人用数值控制程序中的程序块编号等。
50.图3是示意地表示由如上的程序预处理部54所生成的程序块机器人指令的图。
51.如图3所示,程序预处理部54针对存储于机器人用程序存储部522的n组(“n”为任意整数)程序编号1的数值控制程序p1、程序编号2的数值控制程序p2、
…
程序编号n的数值控制程序pn中的每一个实施如上所述的预处理,由此生成多个程序块机器人指令ci_j、以及与各程序块机器人指令ci_j关联起来的多个程序块信息(i-j)。机器人指令存储部523对由程序预处理部54生成的多个程序块机器人指令ci_j,在如图3所示与程序块信息(i-j)关联起来的状态下进行存储。这里,“i”相当于程序编号,是1到n之间的任意整数。另外,“j”相当于程序块编号,是1到各数值控制程序的指令程序块数之间的任意整数。此外,以下虽然说明了对于存储于机器人用程序存储部522的n组数值控制程序p1,
…
,pn全部,由程序预处理部54实施预处理的情况,但本公开不限于此。程序预处理部54也可以仅针对存储于机器人用程序存储部522的多个数值控制程序中的由未图示的选择处理所选择的数值控制程序,实施预处理。
52.更具体而言,程序预处理部54针对由b1个指令程序块构成的数值控制程序p1实施预处理,由此生成合计b1个程序块机器人指令c1_1,c1_2,
…
,c1_b1,并通过针对由b2个指令程序块构成的数值控制程序p2实施预处理,来生成合计b2个程序块机器人指令c2_1,c2_2,
…
,c2_b2,通过针对由bn个指令程序块构成的数值控制程序pn实施预处理,来生成合计bn个程序块机器人指令cn_1,cn_2,
…
,cn_bn。
53.返回图2,程序执行指令部57针对存储于机器人用程序存储部522的多个机器人用数值控制程序中的、根据例如操作者的操作所指定的程序编号的数值控制程序,生成程序执行指令,并输入程序执行管理部58。
54.程序执行管理部58以从程序执行指令部57输入了程序执行指令作为契机,从机器人指令存储部523读入由该程序执行指令所指定的多个程序块机器人指令,将已读入的多个程序块机器人指令写入第一通信部59。更具体而言,程序执行管理部58以基于程序执行指令的指定顺序(例如从程序块编号从小到大)读入属于由程序执行指令所指定的程序编号i的多个程序块机器人指令ci_1,ci_2,
…
,ci_bi,并且以基于程序执行指令的指定顺序将已读入的多个程序块机器人指令ci_1,ci_2,
…
,ci_bi写入第一通信部59。
55.第一通信部59将已在程序执行管理部58中读入的多个程序块机器人指令ci_1,ci_2,
…
,ci_bi,以程序执行管理部58的写入顺序(即,与程序执行管理部58的读入顺序相同,与根据程序执行指令的指令顺序也相同),逐个发送到机器人控制装置6的后述的第二
通信部69。更具体而言,第一通信部59每当接收从第二通信部69发送的后述的动作完成通知时,将已在程序执行管理部58中读入的多个程序块机器人指令ci_1,ci_2,
…
,ci_bi,以程序执行管理部58的写入顺序,逐个发送到第二通信部69。
56.接着,详细说明机器人控制装置6的结构。如图2所示,在机器人控制装置6中,通过上述硬件构成,实现输入解析部60、机器人程序生成部61、动作控制部65、以及第二通信部69等各种功能。
57.第二通信部69是与数值控制装置5的第一通信部59相互收发各种指令、通知。更具体而言,第二通信部69在接收从第一通信部59发送的程序块机器人指令时,将该程序块机器人指令逐次输入输入解析部60。另外,当按照后续说明的程序,由程序管理部613写入动作完成通知时,第二通信部69将该动作完成通知发送到第一通信部59。
58.输入解析部60解析从数值控制装置5经由第二通信部69发送的程序块机器人指令,并将解析结果发送到机器人程序生成部61以及动作控制部65。
59.机器人程序生成部61具备机器人命令生成部612、程序管理部613、以及存储部614,通过使用这些,来生成与从输入解析部60发送的程序块机器人指令相对应的机器人程序。
60.在从输入解析部60输入了程序块机器人指令时,机器人命令生成部612将与已输入的程序块机器人指令对应的机器人命令通知到程序管理部613。
61.在从机器人命令生成部612输入了机器人命令时,程序管理部613对储存在存储部614的机器人程序,追加已输入的机器人命令。由此,在存储部614中,生成与从数值控制装置5发送的程序块机器人指令相对应的机器人程序。
62.动作控制部65具备程序启动部651、轨迹控制部652、运动学控制部653、以及伺服控制部654,通过使用这些来控制机器人3的动作。
63.从输入解析部60输入了程序块机器人指令之后,程序启动部651与在上述机器人程序生成部61已完成根据程序块机器人指令的机器人程序的生成相对应地,为了启动该机器人程序,将程序启动通知发送到程序管理部613。程序管理部613与接收到该程序启动通知相对应地,启动储存于存储部614的机器人程序。程序管理部613通过逐次执行在已启动的机器人程序内描述的机器人命令,来制作与程序块机器人指令相对应的机器人3的动作计划或工具32的动作计划。另外,程序管理部613将已生成的机器人3的动作计划发送到轨迹控制部652,将已生成的工具32的动作计划发送到伺服控制部654。
64.轨迹控制部652在从程序管理部613接收机器人3的动作计划时,通过根据该动作计划执行内插处理,由此计算机器人3的控制点的动作轨迹,并输入运动学控制部653。运动学控制部653通过根据由轨迹控制部652计算出的动作轨迹,进行运动学运算,来计算机器人3的各关节的角度作为目标角度,并将该等目标角度发送到伺服控制部654。
65.伺服控制部654为了使从运动学控制部653发送的各关节的目标角度实现,而对机器人3的各伺服马达进行反馈控制,由此生成针对机器人3的机器人控制信号,并输入机器人3的伺服马达。另外,伺服控制部654在接收从程序管理部613发送的工具32的动作计划时,按照该动作计划,生成用于驱动工具32的i/o信号,并输入工具32。
66.另外,程序管理部613在通过以上程序完成根据1个程序块机器人指令的机器人3及工具32的动作控制时,将动作完成通知写入第二通信部69。在由程序管理部613写入了动
作完成通知时,第二通信部69将该动作完成通知发送到数值控制装置5的第一通信部59。另外,第一通信部59与接收到从第二通信部69发送的动作完成通知相对应地,如上所述以程序执行管理部58的写入顺序,将下一程序块机器人指令发送到第二通信部69。
67.如上所述,在机器人控制装置6中,在接收从数值控制装置5发送的程序块机器人指令时,机器人程序生成部61根据这些程序块机器人指令生成机器人程序,进而由执行该机器人程序来控制机器人3或工具32的动作。
68.接着,一边参照图4及图5,一边说明如以上构成的数值控制系统1中的各种信号或信息的流程。
69.图4是表示数值控制装置5与机器人控制装置6之间的信号及信息的流程、在数值控制装置5中执行的处理、以及在机器人控制装置6中执行的处理的时序图。
70.首先,数值控制装置5的程序预处理部54与程序编辑部53已完成机器人用数值控制程序的编辑相对应地,通过针对该数值控制程序实施预处理,来生成多个程序块机器人指令,并存储于机器人指令存储部523。
71.图5是表示机器人用数值控制程序、以及通过针对该数值控制程序实施预处理而生成的多个程序块机器人指令的一例的图。
72.在图5的左侧,表示将程序编号设为“i”,并指令程序块数设为“bi”的数值控制程序的一例。图5的数值控制程序的程序块编号“1”的指令程序块是由用于使机器人3的控制点通过快进的方式移动到在各轴坐标形式下指定的坐标值(0,0,0,0,-90,0)的命令来构成,程序块编号“2”的指令程序块是由用于使机器人3的控制点通过直线内插的方式移动到在正交坐标形式下指定的坐标值(200.,0,150.,0,0,0,_)的命令来构成,程序块编号“bi”的指令程序块是由用于使机器人3的控制点通过快进的方式移动到在各轴坐标形式下指定的坐标值(0,0,0,0,-90,0)的命令来构成。
73.程序预处理部54通过针对这种数值控制程序实施预处理,由此如图5中右侧所示,生成合计“bi”个程序块机器人指令、以及与各程序块机器人指令关联起来的程序块信息,并存储于机器人指令存储部523。在图5中,示出了针对数值控制程序实施将其语言转换成在机器人控制装置6中能够识别的语言的预处理的情况。与程序块信息(i-1)关联起来的程序块机器人指令为“move deg(0,0,0,0,-90.,0)”,与程序块信息(i-2)关联起来的程序块机器人指令为“move abs(200.,0,150,0,0,0)”,与程序块信息(i-bi)关联起来的程序块机器人指令为“move deg(0,0,0,0,-90.,0)”。
74.返回图4,然后数值控制装置5的程序执行指令部57针对根据操作者的操作而如上述完成了预处理的程序编号“i”的数值控制程序,生成程序执行指令,并输入程序执行管理部58。
75.然后,数值控制装置5的程序执行管理部58与输入了程序执行指令相对应地,从程序块编号较小者按顺序从机器人指令存储部523读入与程序块信息(i-j)(“j”为程序块编号,是1到bi之间的整数)关联起来的程序块机器人指令,并且按顺序将已读入的多个程序块机器人指令写入第一通信部59。
76.然后,数值控制装置5的第一通信部59首先将与程序块信息(i-1)关联起来的程序块机器人指令,发送到机器人控制装置6。
77.然后,机器人控制装置6与接收到与程序块信息(i-1)关联起来的程序块机器人指
令相对应地,根据该程序块机器人指令生成、执行机器人程序,由此使机器人3的控制点通过快进的方式移动到在各轴坐标形式下指定的坐标值(0,0,0,0,-90,0)。另外,当机器人3的动作控制完成时,机器人控制装置6将动作完成通知发送到数值控制装置5。
78.然后,数值控制装置5的第一通信部59与接收到动作完成通知相对应地,将与下一程序块信息(i-2)关联起来的程序块机器人指令,发送到机器人控制装置。
79.然后,机器人控制装置6与接收到与程序块信息(i-2)关联起来的程序块机器人指令,根据该程序块机器人指令生成、执行机器人程序,由此使机器人3的控制点通过直线内插的方式移动到正交坐标形式下指定的坐标值(200.,0,150.,0,0,0,_)。另外,当机器人3的动作控制完成时,机器人控制装置6将动作完成通知发送到数值控制装置5。
80.在此以后,在数值控制装置5与机器人控制装置6之间,重复收发程序块机器人指令及动作完成通知,直到完成根据与程序块信息(i-bi)关联起来的程序块机器人指令的机器人3的动作控制。
81.根据本实施方式将实现以下效果。
82.在本实施方式中,数值控制装置5的程序预处理部54根据数值控制程序的每个程序块的解析结果,生成在机器人控制装置6中能够识别的程序块机器人指令、以及与该程序块机器人指令关联起来的程序块信息,数值控制装置5的机器人指令存储部523存储已生成的程序块机器人指令以及程序块信息。另外,数值控制装置5的程序执行管理部58从机器人指令存储部523读入与由程序执行指令所指定的程序块信息关联起来的程序块机器人指令,数值控制装置5的第一通信部59将通过程序执行管理部58读入的程序块机器人指令发送到机器人控制装置6。如上所述,根据本实施方式,在将程序执行指令输入程序执行管理部58之前,预先由程序预处理部54生成针对包含于数值控制程序的全部程序块的程序块机器人指令以及程序块信息,并存储于机器人指令存储部523,由此在将程序块机器人指令从数值控制装置5发送到机器人控制装置6时,不需要从数值控制程序执行生成程序块机器人指令的处理。因此,根据本实施方式,可以在数值控制装置5与机器人控制装置6之间实现程序的执行程序块的同步,并且相较于现有的数值控制系统,使机器人控制的循环时间缩短程序块机器人指令的生成处理所耗费的时间。
83.在本实施方式中,程序预处理部54在将程序执行指令从程序执行指令部57输入程序执行管理部58之前,开始机器人用数值控制程序的解析、以及程序块机器人指令和程序块信息的生成。由此,相较于现有的数值控制系统,可以使机器人控制的循环时间缩短程序块机器人指令的生成处理所耗费的时间。
84.在本实施方式中,程序预处理部54与程序编辑部53已完成制作、选择或编辑机器人用数值控制程序相对应地,开始该机器人用数值控制程序的解析、以及程序块机器人指令和程序块信息的生成。由此,可以尽可能快速开始根据已完成制作、选择或编辑的机器人用数值控制程序的机器人的动作控制。
85.在本实施方式中,程序预处理部54通过将数值控制程序的语言转换成在机器人控制装置6中能够识别的语言,来生成程序块机器人指令。另外,程序预处理部54通过将数值控制程序的字符码转换成在机器人控制装置6中能够识别的字符码,来生成程序块机器人指令。由此,可以生成即使在既有的机器人控制装置6中也能够识别的程序块机器人指令。
86.在本实施方式中,程序执行管理部58以基于程序执行指令的指定顺序读入与由程
序执行指令所指定的多个程序块信息分别关联起来的多个程序块机器人指令,第一通信部59每当接收从第二通信部69发送的动作完成通知时,将多个程序块机器人指令以程序执行管理部58的读入顺序逐个发送到第二通信部69。由此,可以更确实地在数值控制装置5与机器人控制装置6之间,实现程序的执行程序块的同步。
87.《第二实施方式》
88.以下参考图式来说明本公开的第二实施方式的数值控制系统。本实施方式的数值控制系统主要是程序块机器人指令的发送步骤与第一实施方式的数值控制系统1不同。
89.图6是表示在本实施方式的数值控制装置与机器人控制装置之间的信号及信息的流程、在数值控制装置中执行的处理、以及在机器人控制装置中执行的处理的时序图。由于在本实施方式的数值控制系统中,程序编辑部制作、选择或编辑数值控制程序的步骤、程序预处理部生成多个程序块机器人指令和程序块信息并存储于机器人指令存储部的步骤、程序执行指令部生成针对数值控制程序的程序执行指令并输入程序执行管理部的步骤、程序执行管理部从机器人指令存储部读入多个程序块机器人指令的步骤、以及机器人控制装置根据程序块机器人指令控制机器人的动作的步骤等与第一实施方式的数值控制系统相同,因此以下省略详细说明。此外,以下对执行与图5相同的数值控制程序的情况来举例说明。
90.如图6所示,数值控制装置的程序执行管理部与输入了程序执行指令相对应地,与第一实施方式同样,开始从机器人指令存储部读入程序块机器人指令,以及开始将已读入的程序块指令写入设在第一通信部的缓冲区。此外,设在第一通信部的缓冲区是以写入的顺序输出程序块机器人指令的所谓fifo缓冲区。此外,以下虽然说明了在第一通信部设有缓冲区的情况,但本公开不限于此。同样的缓冲区也可以设于第二通信部。即使是在第二通信部设有缓冲区的情况下,也可以通过微小的修正来实现同样的动作。
91.如图6所示,程序执行管理部首先将与程序块信息(i-1)关联起来的程序块机器人指令写入第一通信部的缓冲区,并且生成针对该与程序块信息(i-1)关联起来的程序块机器人指令的执行指令。由此,第一通信部将与程序块信息(i-1)关联起来的程序块机器人指令,与针对该程序块机器人指令的执行指令一起发送到机器人控制装置6。
92.然后,机器人控制装置的机器人程序生成部读取所接收到的程序块机器人指令,并生成机器人程序。另外,机器人控制装置的动作控制部与从数值控制装置接收到执行指令相对应地,启动已生成的机器人程序,由此开始根据与程序块信息(i-1)关联起来的程序块机器人指令的机器人的动作控制。
93.如上所述,在控制机器人的动作的期间,机器人控制装置的第二通信部与机器人程序生成部已完成读取先前接收到的程序块机器人指令相对应地,将读取完成通知发送到第一通信部。
94.然后,数值控制装置的第一通信部与接收到从第二通信部发送的读取完成通知相对应地,以程序执行管理部的写入顺序,将接着写入缓冲区的程序块机器人指令、即、与程序块信息(i-2)关联起来的程序块机器人指令发送到第二通信部。
95.然后,机器人控制装置的机器人程序生成部读取接收到的程序块机器人指令,生成根据与程序块信息(i-2)关联起来的程序块机器人指令的机器人程序。
96.然后,机器人控制装置的第二通信部与已完成基于与程序块信息(i-1)关联起来的程序块机器人指令的机器人的动作控制相对应地,将动作完成通知发送到第一通信部。
97.然后,数值控制装置的程序执行管理部与接收到从第二通信部发送的动作完成通知相对应地,为了转移到下一指令程序块的执行,以程序执行管理部的读入顺序,将针对下一程序块机器人指令的执行指令、即与程序块信息(i-2)关联起来的程序块机器人指令的执行指令,经由第一通信部发送到机器人控制装置。
98.然后,机器人控制装置的动作控制部与从数值控制装置接收到执行指令相对应地,通过启动先前已生成的机器人程序,开始根据与程序块信息(i-2)关联起来的程序块机器人指令的机器人的动作控制。
99.在此以后,数值控制装置的程序执行管理部以程序执行指令的指定顺序(例如从程序块编号从小到大的顺序)读入与由程序执行指令所指定的多个程序块信息分别关联起来的多个程序块机器人指令,并且以该指定顺序将已读入的多个程序块机器人指令写入第一通信部的缓冲区。另外,每当1个程序块机器人指令的读取完成时,机器人控制装置的第二通信部将读取完成通知发送到第一通信部。另外,第一通信部每当从第二通信部接收读取完成通知时,将写入缓冲区的程序块机器人指令以程序执行管理部的写入顺序逐个发送到第二通信部。由此,能够以适当的顺序,将多个程序块机器人指令从数值控制装置发送到机器人控制装置,并在机器人控制装置中生成与各程序块机器人指令相应的机器人程序。
100.另外,通过以上步骤,从数值控制装置将多个程序块机器人指令发送到机器人控制装置的期间,每当完成根据1个程序块机器人指令的机器人的动作控制时,第二通信部将与已完成执行的程序块机器人指令关联起来的动作完成通知发送到第一通信部。另外,程序执行管理部与在第一通信部接收到上述动作完成通知相对应地,针对在上述指定顺序中与动作完成通知关联起来的程序块机器人指令的下一程序块机器人指令,生成执行指令,第一通信部与程序执行管理部生成了执行指令相对应地,将该执行指令发送到第二通信部。另外,动作控制部与在第二通信部接收到执行指令相对应地,执行与该执行指令关联起来的机器人程序,控制机器人的动作。在本实施方式的数值控制系统中,由于通过这样的步骤,将针对各程序块机器人指令的执行指令从数值控制装置发送到机器人控制装置,由此可以与根据多个程序块机器人指令的机器人程序的生成并行地启动生成完毕的机器人程序,因此相较于第一实施方式的数值控制系统1,可以进一步缩短循环时间。
101.根据本实施方式,能够实现与第一实施方式同样的效果。另外,本公开不限定于上述实施方式,可以进行各种变更以及变形。
102.附图标记说明
[0103]1…
数值控制系统
[0104]2…
机床
[0105]3…
机器人
[0106]5…
数值控制装置
[0107]
50
…
机床控制模块
[0108]
51
…
机器人控制模块
[0109]
52
…
存储部
[0110]
521
…
机床用程序存储部
[0111]
522
…
机器人用程序存储部(程序存储部)
[0112]
523
…
机床用指令存储部
[0113]
53
…
程序编辑部
[0114]
54
…
程序预处理部
[0115]
57
…
程序执行指令部
[0116]
58
…
程序执行管理部
[0117]
59
…
第一通信部
[0118]6…
机器人控制装置
[0119]
60
…
输入解析部
[0120]
61
…
机器人程序生成部
[0121]
65
…
动作控制部
[0122]
69
…
第二通信部。
技术特征:
1.一种数值控制装置,其根据数值控制程序控制机床的动作,并且生成针对控制机器人的动作的机器人控制装置的机器人指令,其特征在于,所述数值控制装置具备:程序预处理部,其根据所述数值控制程序的每个程序块的解析结果,生成在所述机器人控制装置中能够识别的程序块机器人指令和与该程序块机器人指令关联起来的程序块信息;机器人指令存储部,其存储由所述程序预处理部生成的程序块机器人指令和程序块信息;程序执行管理部,其从所述机器人指令存储部读入与由规定的程序执行指令所指定的程序块信息关联起来的程序块机器人指令;通信部,其将由所述程序执行管理部读入的程序块机器人指令发送到所述机器人控制装置。2.根据权利要求1所述的数值控制装置,其特征在于,所述数值控制装置还具备:程序存储部,其存储用于生成机器人指令的数值控制程序即机器人用数值控制程序;程序执行指令部,其生成针对所述机器人用数值控制程序的程序执行指令,并输入至所述程序执行管理部,在将所述程序执行指令输入至所述程序执行管理部之前,所述程序预处理部开始所述机器人用数值控制程序的解析、以及所述程序块机器人指令和所述程序块信息的生成。3.根据权利要求2所述的数值控制装置,其特征在于,所述数值控制装置还具备:程序编辑部,其制作、选择或编辑所述机器人用数值控制程序,与所述程序编辑部已完成制作、选择或编辑所述机器人用数值控制程序相对应地,所述程序预处理部开始所述机器人用数值控制程序的解析、以及所述程序块机器人指令和所述程序块信息的生成。4.根据权利要求1至3中任一项所述的数值控制装置,其特征在于,所述程序预处理部通过将所述数值控制程序的语言转换成在所述机器人控制装置中能够识别的语言,由此生成所述程序块机器人指令。5.一种数值控制系统,具备:数值控制装置,其根据数值控制程序来控制机床的动作,并且生成针对控制机器人的动作的机器人控制装置的机器人指令;机器人控制装置,其能够与所述数值控制装置通信,并根据从所述数值控制装置发送的机器人指令来控制所述机器人的动作,其特征在于,所述数值控制装置具备:程序预处理部,其根据所述数值控制程序的每个程序块的解析结果,生成在所述机器人控制装置中能够识别的程序块机器人指令和与该程序块机器人指令关联起来的程序块信息;机器人指令存储部,其存储由所述程序预处理部生成的程序块机器人指令和程序块信息;程序执行管理部,其从所述机器人指令存储部读入与由规定的程序执行指令所指定的程序块信息关联起来的程序块机器人指令;
第一通信部,其将由所述程序执行管理部读入的程序块机器人指令发送到所述机器人控制装置,所述机器人控制装置具备:第二通信部,其接收从所述第一通信部发送的程序块机器人指令;机器人程序生成部,其根据由所述第二通信部接收到的程序块机器人指令生成机器人程序;动作控制部,其根据由所述机器人程序生成部生成的机器人程序控制所述机器人的动作。6.根据权利要求5所述的数值控制系统,其特征在于,所述数值控制装置还具备:程序存储部,其存储用于生成机器人指令的数值控制程序即机器人用数值控制程序;程序执行指令部,其生成针对所述机器人用数值控制程序的程序执行指令,并输入所述程序执行管理部;在将所述程序执行指令输入所述程序执行管理部之前,所述程序预处理部开始所述机器人用数值控制程序的解析、以及所述程序块机器人指令和所述程序块信息的生成。7.根据权利要求6所述的数值控制系统,其特征在于,所述数值控制装置还具备:程序编辑部,其制作、选择或编辑所述机器人用数值控制程序,与所述程序编辑部已完成制作、选择或编辑所述机器人用数值控制程序相对应地,所述程序预处理部开始所述机器人用数值控制程序的解析、以及所述程序块机器人指令和所述程序块信息的生成。8.根据权利要求5至7中任一项所述的数值控制系统,其特征在于,所述程序预处理部通过将所述数值控制程序的语言转换成在所述机器人控制装置中能够识别的语言,由此生成所述程序块机器人指令。9.根据权利要求5至8中任一项所述的数值控制系统,其特征在于,所述程序执行管理部以基于所述程序执行指令的指定顺序读入与由所述程序执行指令所指定的多个程序块信息分别关联起来的多个程序块机器人指令,每当完成基于1个程序块机器人指令的所述机器人的动作控制时,所述第二通信部将动作完成通知发送到所述第一通信部,所述第一通信部每当接收所述动作完成通知时,将多个程序块机器人指令以所述程序执行管理部的读入顺序逐个发送到所述第二通信部。10.根据权利要求5至8中任一项所述的数值控制系统,其特征在于,所述程序执行管理部以基于所述程序执行指令的指定顺序读入与由所述程序执行指令所指定的多个程序块信息分别关联起来的多个程序块机器人指令,并且写入所述第一通信部的存储区域,每当完成1个程序块机器人指令的读取时,所述第二通信部将读取完成通知发送到所述第一通信部,所述第一通信部每当接收所述读取完成通知时,将写入所述存储区域的程序块机器人指令以所述程序执行管理部的写入顺序逐个发送到所述第二通信部。
11.根据权利要求10所述的数值控制系统,其特征在于,每当根据1个程序块机器人指令的所述机器人的动作控制完成时,所述第二通信部将与执行完成后的程序块机器人指令关联起来的动作完成通知发送到所述第一通信部,与在所述第一通信部中接收到所述动作完成通知相对应地,所述程序执行管理部生成针对在所述指定顺序中与该动作完成通知关联起来的程序块机器人指令的下一程序块机器人指令的执行指令,与由所述程序执行管理部已生成执行指令相对应地,所述第一通信部将该执行指令发送到所述第二通信部,与在所述第二通信部中接收到所述执行指令相对应地,所述动作控制部执行与该执行指令关联起来的机器人程序,控制所述机器人的动作。
技术总结
数值控制装置(5)具备:程序预处理部(54),其根据数值控制程序的每个程序块的解析结果,生成在机器人控制装置(6)中能够识别的程序块机器人指令和与该程序块机器人指令关联起来的程序块信息;机器人指令存储部(523),其存储由程序预处理部(54)生成的程序块机器人指令和程序块信息;程序执行管理部(58),其从机器人指令存储部(523)读入与由程序执行指令所指定的程序块信息关联起来的程序块机器人指令;第一通信部(59),其将由程序执行管理部(58)读入的程序块机器人指令发送到机器人控制装置(6)。(6)。(6)。
技术研发人员:仲村瞭
受保护的技术使用者:发那科株式会社
技术研发日:2021.12.16
技术公布日:2023/8/24
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/