1.本发明涉及控制
机器人的控制
装置以及机器人系统。
背景技术:
2.一般,在工厂内使用与机器人控制装置连接的示教操作盘来进行机器人的示教,即生成动作程序。另外,专利文献1记载了为了使机器人等的示教作业高效化而使用作业对象工件的cad
数据来自动生成示教数据的程序自动生成装置(专利文献1,段落0005-0007)。
3.另外,专利文献2记载了以下的数值控制方法:“关于nc加工机械的nc程序的生成,由高速数据处理部300经由lan等通信线路接受从cam200送出的按照每个加工工序进行分割后的工具补偿形状数据,并将其暂时保存在缓冲存储器301中,执行工具路径数据生成以及从指定的切削条件向nc程序的转换处理,将该得到的nc程序通过数值控制部401向机床402送出(专利文献2,说明书摘要)。
4.现有技术文献
5.专利文献
6.专利文献1:日本特开平9-167007号公报
7.专利文献2:日本特开平5-274020号公报
技术实现要素:
8.发明所要解决的课题
9.在包含机器人或周边设备的生产设备中,机器人根据示教的动作程序来执行作业,周边设备由外部装置(plc(programmable logic controller,可编程逻辑控制器)、pc(personal computer:个人计算机)等)控制。存在想要从外部装置也可进行机器人的高级操作的要求。
10.用于解决课题的手段
11.本公开的一个方式是一种控制机器人的机器人控制装置,其具备:数字输入输出接口,其用于与外部装置之间发送接收数字数据;程序生成部,其按照经由所述数字输入输出接口输入的所述数字数据中包含的
命令识别数据,生成针对所述机器人的动作命令;以及程序执行部,其执行所生成的所述动作命令。
12.本公开的另一方式是一种机器人系统,其具备:机器人;所述机器人控制装置;以及外部装置,其构成为能够与所述机器人控制装置之间发送接收所述数字数据。
13.发明效果
14.根据所述结构,能够从外部装置进行机器人的高级控制。
15.根据附图所示的本发明的典型实施方式的详细说明,本发明的这些目的、特征、优点以及其他的目的、特征及优点将变得更加明确。
附图说明
16.图1表示一实施方式的机器人控制装置与外部装置的网络连接的结构例。
17.图2表示机器人控制装置的功能块,并且表示机器人控制装置与外部装置的连接状态。
18.图3用于说明数字输入输出接口中的数据整形的功能。
19.图4用于说明机器人控制装置中的机器人控制的执行例。
20.图5是在外部装置上生成的向机器人的di区域写入数据的程序例。
具体实施方式
21.接着,参照附图对本公开的实施方式进行说明。在参照的附图中,对相同的构成部分或功能部分标注相同的参照符号。为了容易理解,这些附图适当变更了比例尺。另外,附图所示的方式是用于实施本发明的一个例子,本发明并不限于图示的方式。
22.图1表示一实施方式的机器人控制装置50与外部装置70的网络连接的结构例。图1所示的各装置配置在工厂内,构成生产设备。机器人控制装置50控制机器人10。外部装置70是对周边装置91、92进行控制的控制设备(plc(programmable logic controller,可编程逻辑控制器)、pc(personal computer,个人计算机)等)。以下,设外部装置70为plc。周边装置91、92包含工件输送装置、传感器、测量器、电动机等各种设备。
23.作为网络6,能够使用各种网络,但在此,作为一个例子,网络6是基于现场总线(现场网络)标准的网络。现场总线是以工厂内的控制设备与周边装置之间的数字数据的通信为主要目的的网络,另外,具有更高的实时性。作为现场总线,有devicenet(注册商标)、profibus(注册商标)等。在图1的网络结构例中,对于外部装置70,作为与周边装置91、92同样的节点连接机器人控制装置50。
24.此外,作为用于外部装置70与机器人控制装置50的连接的网络6,现场总线是一个例子,也可以使用用于发送接收数字数据的其他网络(例如gpio(general-purpose input/output通用输入/输出))。或者,也可以使用lan(local area network:局域网)作为网络6。在图1中,图示了外部装置70与各设备的连接成为总线型的连接,但这只是例示,配线方式不限于此。外部装置70以及机器人控制装置50可以分别具有作为一般的计算机的硬件结构,一般的计算机具有cpu、rom、ram、存储装置、操作部、显示部、输入输出接口、网络接口等。
25.图2表示机器人控制装置50的功能块,并且表示机器人控制装置50与外部装置70的连接状态。如图2所示,机器人控制装置50经由数字输入输出接口51与外部装置70连接,其中,数字输入输出接口51具有基于现场总线规格的通信接口的功能。另外,外部装置70也具有基于现场总线规格的接口72。如以下详细说明的那样,外部装置70通过与机器人控制装置50之间交换表示命令id的数值数据等来进行机器人10的高级的控制。机器人控制装置50还可以连接示教操作盘(未图示)。机器人10是垂直多关节机器人、水平多关节机器人等工业用机器人。
26.即,外部装置70、机器人控制装置50、机器人10、周边装置91、92(在图2中未图示)构成机器人系统100。在机器人系统100中,也可以包含经由lan与外部装置70连接的机器人模拟装置80。
27.如图2所示,机器人控制装置50具备数字输入输出接口51、程序生成部52以及程序执行部53。数字输入输出接口51具有将从外部装置70接收到的数字数据(位串)整形为能够由机器人控制装置50处理的数据的功能,并且具有将响应命令等作为数字数据向网络6输出的功能。程序生成部52按照由数字输入输出接口51整形后的数据(命令识别数据),生成机器人10的控制命令(即,机器人动作程序55)。程序执行部53执行由程序生成部52生成的控制命令(机器人动作程序55)。
28.位置数据存储部56存储通过对机器人10进行示教而预先准备的示教位置(位置数据)。图2所示的机器人控制装置50的功能块既可以通过由机器人控制装置50的cpu执行存储在存储装置的各种软件来实现,或者也可以通过以asic(application specific integrated circuit:专用集成电路)等硬件为主体的结构来实现。
29.外部装置70(接口72)在现场总线中作为主设备进行动作。机器人控制装置50与周边装置91、92同样地作为从设备进行动作。外部装置70经由在外部装置70的cpu的存储映射图上映射的特定的存储区域(存储映射图i/o)与各从设备之间进行数字数据的发送接收。在现场总线中,这样特定的存储区域被称为di区域或者do区域。以下,将这样特定的存储区域中的对机器人控制装置50输入的数字数据的存储区域称为“机器人的di区域”(或者简称为di区域),将从机器人控制装置50输出并输入到外部装置70的数字数据的存储区域称为“机器人的do区域”(或者简称为do区域)。在外部装置70中,作为一个例子,通过基于梯形图语言的控制程序来访问机器人的di/do区域。
30.对于通过外部装置70与机器人控制装置50之间的数字数据的发送接收而进行的机器人控制的流程进行说明。
31.(步骤1)在外部装置70中,使用梯形图程序将指定的命令、机器人的位置数据、动作速度等数据复制到机器人的di区域。
32.(步骤2)机器人控制装置50的数字输入输出接口51将来自外部装置70的数据整形为机器人控制装置50能够处理的数据。
33.(步骤3)机器人控制装置50的程序生成部52使用整形后的数据来生成机器人10的动作程序。
34.(步骤4)程序执行部53执行由程序生成部52生成的动作程序。
35.在图2中,符号31a通过外部装置70的梯形图程序复制到存储映射图上的机器人的di区域,从而表示从外部装置70(接口72)输出的数字数据。符号31b表示从机器人控制装置50(数字输入输出接口51)输出并写入到外部装置70的存储映射图上的机器人的do区域中的数字数据。
36.图3用于说明数字输入输出接口51的数据整形的功能。作为一例,设为从外部装置70向机器人控制装置50发送的数字数据31a(机器人的di区域的数据)的从索引编号i1开始的8比特的位串(索引编号i8-i1)表示命令id(命令识别数据)。在接收到的数字数据31a的索引编号i8-i1的位串为“00000011”的情况下,数字输入输出接口51提取作为接收命令id的数值“3”并交给程序生成部52。
37.对于机器人控制装置50向外部装置70发送例如id:7来作为响应命令的情况进行说明。程序生成部52将响应命令id:7(数值7)交给数字输入输出接口51。数字输入输出接口51将与该id对应的数值“00000111”包含在数字数据31b的索引编号i8-i1的位置,作为机器
人的do区域的数据发送到外部装置70。在外部装置70侧(梯形图程序)中,通过读取被复制到机器人的do区域中的数字数据31b的索引i8-i1位串来掌握来自机器人(机器人控制装置50)的响应命令是id:7。
38.程序生成部52也可以具有将命令id与命令对应起来的对应表(表)。在该情况下,程序生成部52通过参照该对应表,能够掌握与接收命令id对应的命令文。下述表1表示对应表的一个例子。另外,外部装置70侧也可以具有将来自机器人控制装置50的响应命令id与指示内容对应起来的对应表。
39.[表1]
[0040]
命令id命令内容1程序生成2直线动作3各轴动作4暂时停止5动作重新开始9请求机器人的状态11请求位置数据
[0041]
接下来,参照图4对于通过与外部装置70的数据收发而进行的机器人控制装置50的机器人控制的执行例进行说明。在此,例示了程序生成部52按照命令id:1、命令id:2、命令id:3、命令id:9、命令id:4的顺序经由数字输入输出接口51从外部装置70接收这些命令时的动作。首先,程序生成部52当接收到命令id:1时,通过参照对应表(表1)而掌握命令id:1是程序生成命令,生成内容为空的状态的机器人动作程序55a。
[0042]
接着,程序生成部52当接收到命令id:2时,通过参照对应表而掌握命令id:2是直线动作的命令,进而接收位置数据(位置数据[1])。当接收到位置数据[1]时,程序生成部52生成用于使机器人10的臂前端向位置数据[1]的位置进行移动的命令“直线位置[1]”并将其写入机器人动作程序55a中。当对机器人动作程序55a写入了命令“直线位置[1]”时,程序执行部53执行所写入的命令“直线位置[1]”。在该情况下,程序执行部53按照命令“直线位置[1]”,使机器人10的臂前端部直线移动到位置数据[1]的位置。此外,来自外部装置70的移动命令还可以包含动作速度的指定。
[0043]
与直线动作命令或各轴动作命令一起发送来的位置数据例如是遵照浮点格式(ieee754)的32位的位串。在该情况下,数字输入输出接口51将接收到的32位的位串按照ieee754变换为浮点数值。
[0044]
接着,程序生成部52当接收到命令id:3时,通过参照对应表而掌握该命令id:3是各轴动作的命令,进而接收位置数据(位置数据[2])。当接收到位置数据[2]时,程序生成部52生成用于使机器人10的臂前端以各轴动作进行移动的命令“各轴位置[2]”并将其写入到机器人动作程序55a中。当对机器人动作程序55a写入了该命令时,程序执行部53执行所写入的命令。在该情况下,程序执行部53使机器人10的臂前端部以各轴动作移动到位置[2]的位置。
[0045]
程序生成部52当接收到请求与机器人以及程序执行相关的状态的命令id:9时,将机器人动作程序的执行状态(执行中、暂时停止等)以及机器人10的状态(当前位置、动作速
度等)发送至外部装置70。此外,在该情况下,程序生成部52也可以将这些数据与响应命令id:7一起发送。
[0046]
程序生成部52在接收到表示使机器人暂时停止的命令的命令id:4时,将该命令id交给程序执行部53,使执行中的动作命令停止。
[0047]
如此,根据本实施方式,能够从plc等外部装置70进行机器人10的高级控制。
[0048]
图5是在外部装置70(plc)上生成的在机器人的di区域中写入数据的程序例。在该程序71中,在变量“cmd.id”设定数值2(直线动作命令)来作为命令id,在变量“pos.pos[0]﹣[5]”设定3维坐标值(1500.5,0.0,1585.0)以及姿势(﹣180.2,﹣90.3,0.001)来作为位置数据。通过函数ublkmov将上述变量的数据复制到机器人di区域。在外部装置70的梯形图程序中,例如,通过设为在预定的输入条件成立时执行上述函数(即,在预定的条件成立时使机器人移动到预定的位置)的内容,实现机器人的控制。
[0049]
如图2所示,外部装置70也可以构成为能够取得存储在机器人控制装置50的示教位置(位置数据)。例如,外部装置70在要取得位置数据时,将位置请求命令id:11(参照表1)发送到机器人控制装置50。机器人控制装置50将位置数据作为针对位置请求命令id:11的响应而发送给外部装置70。通过这样的步骤,外部装置70能够取得存储在机器人控制装置50侧的示教位置(位置数据)。该位置请求命令中也可以附带表示请求第几个示教位置的编号。
[0050]
或者,外部装置70也可以通过机器人模拟装置80进行动作确认,取得存储在位置数据存储部81的示教位置(位置数据)来用于控制机器人10。或者,外部装置70也可以构成为能够经由外部装置70的操作部输入位置数据。
[0051]
如以上说明的那样,在本实施方式中,在以将plc等控制设备与周边设备进行连接来收发数字数据为主要目的的现场总线(现场网络)中,将机器人控制装置50作为与周边设备同样的节点来与外部装置70连接。并且,构成为从外部装置70发送机器人的动作命令来作为命令id(数字数据),并且关于位置数据的请求或状态的请求,也能够作为命令id从外部装置70侧进行请求。由此,也能够从外部装置70进行与机器人的状态(动作速度、当前位置目标位置、是否正在动作等)相对应的控制。
[0052]
以上使用典型的实施方式对本发明进行了说明,但本领域人员能够理解在不脱离本发明的范围的情况下,能够进行上述各实施方式的变更以及各种其他变更、省略、追加。
[0053]
在上述实施方式中说明的由外部装置或机器人控制装置的cpu执行的各种处理能够作为程序记录在计算机可读取的各种记录介质(例如rom、eeprom、闪存等半导体存储器、磁记录介质、cd-rom、dvd-rom等光盘)中。
[0054]
附图标记的说明
[0055]
10 机器人
[0056]
50 机器人控制装置
[0057]
51 数字输入输出接口
[0058]
52 程序生成部
[0059]
53 程序执行部
[0060]
55、55a 机器人动作程序
[0061]
56 位置数据存储部
[0062]
70 外部装置
[0063]
72 接口
[0064]
80 机器人模拟装置
[0065]
81 位置数据存储部
[0066]
91、92 周边装置
[0067]
100 机器人系统。
技术特征:
1.一种控制机器人的机器人控制装置,其特征在于,具备:数字输入输出接口,其用于与外部装置之间发送接收数字数据;程序生成部,其按照经由所述数字输入输出接口而输入的所述数字数据中包含的命令识别数据来生成针对所述机器人的动作命令;以及程序执行部,其执行所生成的所述动作命令。2.根据权利要求1所述的机器人控制装置,其特征在于,所述数字输入输出接口从接收到的所述数字数据中的位于预定的索引编号的位置的位串中提取所述命令识别数据。3.根据权利要求1或2所述的机器人控制装置,其特征在于,所述程序生成部具有将所述命令识别数据与所述动作命令对应起来的表,使用该表生成所述动作命令。4.根据权利要求1至3中的任意一项所述的机器人控制装置,其特征在于,所述数字输入输出接口具有作为基于现场总线规格的通信接口的功能。5.根据权利要求1至4中的任意一项所述的机器人控制装置,其特征在于,所述机器人控制装置还具备存储所述机器人的示教位置数据的位置数据存储部,在所述命令识别数据是表示请求所述示教位置数据的命令的情况下,所述程序生成部将存储在所述位置数据存储部的所述示教位置数据经由所述数字输入输出接口发送到所述外部装置。6.一种机器人系统,其特征在于,具备:机器人;权利要求1至5中的任意一项所述的机器人控制装置;以及外部装置,其构成为能够与所述机器人控制装置之间发送接收所述数字数据。7.根据权利要求6所述的机器人系统,其特征在于,所述外部装置从与该外部装置网络连接的机器人模拟装置取得用于使所述机器人移动的动作命令的示教位置数据,将包含使所述机器人移动的所述动作命令所对应的所述命令识别数据和所述示教位置数据的所述数字数据发送到所述机器人控制装置。
技术总结
提供一种能够从外部装置进行机器人的高级操作的机器人控制装置。机器人控制装置(50)控制机器人,其具备:数字输入输出接口(51),其用于与外部装置(70)之间发送接收数字数据;程序生成部(52),其按照经由数字输入输出接口(51)输入的数字数据中包含的命令识别数据来生成针对机器人的动作命令;以及程序执行部(53),其执行所生成的动作命令。其执行所生成的动作命令。其执行所生成的动作命令。
技术研发人员:
加藤友树
受保护的技术使用者:
发那科株式会社
技术研发日:
2021.05.13
技术公布日:
2022/12/16