CN116056841A - 机器人控制系统 - Google Patents

机器人控制系统 Download PDF

Info

Publication number
CN116056841A
CN116056841A CN202180056891.0A CN202180056891A CN116056841A CN 116056841 A CN116056841 A CN 116056841A CN 202180056891 A CN202180056891 A CN 202180056891A CN 116056841 A CN116056841 A CN 116056841A
Authority
CN
China
Prior art keywords
robot
program
command
robot control
position data
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.)
Pending
Application number
CN202180056891.0A
Other languages
English (en)
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 CN116056841A publication Critical patent/CN116056841A/zh
Pending legal-status Critical Current

Links

Images

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/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1658Programme controls characterised by programming, planning systems for manipulators characterised by programming language
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • 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/40393Learn natural high level command, associate its template with a plan, sequence

Abstract

本发明提供一种能够对用户来说容易理解上位控制器的程序与机器人控制装置的动作程序的对应的机器人控制系统。在具备上位控制器(20)和机器人控制装置(50)的机器人控制系统(100)中,上位控制器(20)具备:控制执行部(22),其基于用于控制机器人的控制程序,将表示针对机器人的动作命令的命令信息和附带于该动作命令的位置数据与表示该位置数据的名称的名称信息一起发送到机器人控制装置(50),机器人控制装置(50)具备:程序生成部(51),其基于接收到的命令信息和位置数据来生成针对机器人的动作程序;名称信息附加部(52),其对动作程序内的位置数据附加接收到的名称。

Description

机器人控制系统
技术领域
本发明涉及控制机器人的机器人控制系统。
背景技术
工业用机器人一般将使用示教操作盘或编程装置而生成的动作程序加载到机器人控制装置,并从机器人控制装置进行控制而进行动作。另一方面,近年来,通过PLC(可编程逻辑控制器)来控制工业机器人的系统也正在普及(例如,专利文献1)。
现有技术文献
专利文献
专利文献1:国际公开第2019/180916号
发明内容
发明所要解决的课题
近年来,由于PLCopen(注册商标)标准等的普及,用于工业用机器人的控制的PLC程序的开发环境的整备也在不断发展。在使用了PLC的机器人控制系统中,通常,通过PLC程序的执行从PLC向机器人控制装置发送针对机器人的动作命令,在机器人控制装置侧基于来自PLC的动作命令生成动作程序并控制机器人。在这样的机器人控制系统中,若设想进行使用了PLC程序的机器人的示教设定、PLC程序开发时的动作确认的场景,则PLC程序与机器人控制装置侧的动作程序是不同的程序规格,因此,PLC程序与机器人控制装置的动作程序的对应对于用户来说而言难以理解,在错误发生时的调查等中需要时间。
用于解决课题的手段
本公开的一个方式是一种具备上位控制器和与该上位控制器连接的机器人控制装置的机器人控制系统,其中,所述上位控制器具备:控制执行部,其基于用于控制机器人的控制程序,将表示针对所述机器人的动作命令的命令信息和附带于该动作命令的位置数据与表示该位置数据的名称的名称信息一起发送到所述机器人控制装置,所述机器人控制装置具备:程序生成部,其基于接收到的所述命令信息和所述位置数据,生成针对所述机器人的动作程序;名称信息附加部,其对所述动作程序内的所述位置数据附加接收到的所述名称信息表示的所述名称。
发明效果
根据上述结构,用户能够容易地掌握上位控制器的控制程序与机器人控制装置的动作程序如何对应。由此,能够高效地进行示教设定、编程时的错误调查和调试。
根据附图所示的本发明的典型实施方式的详细说明,本发明的这些目的、特征及优点以及其他目的、特征及优点将变得更加明确。
附图说明
图1是表示一实施方式所涉及的机器人控制系统的整体结构的图。
图2是表示使用PLC作为上位控制器的情况下的PLC程序的例子的图。
图3是表示在图2的结构中在机器人控制装置中生成的动作程序的图。
图4是表示使用CNC作为上位控制器的情况下的CNC程序的例子的图。
图5是表示在图4的结构中在机器人控制装置中生成的动作程序的图。
具体实施方式
接着,参照附图对本公开的实施方式进行说明。在参照的附图中,对相同的结构部分或功能部分标注相同的参照附图标记。为了容易理解,这些附图适当变更了比例尺。另外,附图所示的方式是用于实施本发明的一个例子,本发明并不限定于图示的方式。
图1是表示一个实施方式的机器人控制系统100的整体结构的图。机器人控制系统100具备上位控制器20、机器人控制装置50以及机器人10,成为控制机器人10的机器人控制装置50与上位控制器20可通信地连接的结构。机器人控制系统100是能够在上位控制器20上生成针对机器人10的控制程序的系统。上位控制器20按照在上位控制器20上构筑的机器人10的控制程序,对机器人控制装置50发送针对机器人10的动作命令。机器人控制装置50基于从上位控制器20发送来的动作命令来生成机器人10的动作程序并使机器人10动作。
上位控制器20也可以具有作为具有CPU、ROM、RAM、存储装置、操作部、显示部、输入输出接口、网络接口等的一般计算机的结构。上位控制器20例如是PLC(可编程逻辑控制器)或CNC(数值控制装置)。此外,作为上位控制器20,除了PLC、CNC以外,还能够使用PC等各种信息处理装置。机器人控制装置50也可以具有作为具备CPU、ROM、RAM、存储装置、操作部、显示部、输入输出接口、网络接口等的一般计算机的结构。此外,在上位控制器20与机器人控制装置50之间的连接中能够使用现场总线、有线或者无线LAN、其他各种网络。
如图1所示,上位控制器20在存储装置内保有在上位控制器20上的软件环境上构筑的用于控制机器人10的控制程序21。而且,上位控制器20具有控制执行部22和通信接口23。控制执行部22解释控制程序21,将表示针对机器人10的动作命令的命令信息经由通信接口23发送到机器人控制装置50。在控制程序21中的命令是伴随位置数据的动作命令的情况下,控制执行部22将表示针对机器人10的动作命令的命令信息和附带于该动作命令的位置数据与表示该位置数据的名称的名称信息一起发送到机器人控制装置50。
机器人控制装置50具有程序生成部51、名称信息附加部52、程序执行部53和通信接口54。在机器人控制装置50中,程序生成部51基于从上位控制器20发送来的命令信息来生成机器人10的动作命令并生成为动作程序56。此时,在附带于动作命令而发送了位置数据和与该位置数据相关联的名称信息的情况下,名称信息附加部52例如对位置数据附加位置数据的名称并作为注释文。程序执行部53执行由程序生成部51生成的动作程序56而使机器人10进行动作。
以下,说明上位控制器20是PLC的情况和是CNC的情况的两例的具体结构。
参照图2-图3,对上位控制器20为PLC20A的情况下的结构例进行说明。图2表示在PLC20A上生成的控制程序(以下,将在PLC上构建的控制程序也记载为PLC程序)的一例。PLC上的控制程序能够用梯形图语言、结构化文本语言来生成。在此,示出由结构化文本语言生成的控制程序的例子。图2的PLC程序包含变量定义24、PLC程序主体21A(以下,仅记载为PLC程序21A)和两个功能块(FB)25a、25b。
变量定义24包含2个结构体变量HOME.POSITION、PICK.POSITION,这些各个结构体变量由X、Y、Z位置这3个变量构成。这些变量的值分别被设定为HOME.POSITION.X=0、HOME.POSITION.Y=0、HOME.POSITION.Z=0以及PICK.POSITION.X=30、PICK.POSITION.Y=20、PICK.POSITION.Z=15。
PLC程序21A包含使机器人进行直线动作的命令即MoveLinear函数以及使机器人进行各轴动作的命令即MoveAxes函数。MoveLinear函数和MoveAxes函数的动作分别被定义为功能块(FB)25a、25b。MoveLinear函数向目标位置的自变量DestPos中输入机器人的位置数据的结构体HOME.POSITION。由此,针对机器人10,指令X=0、Y=0、Z=0作为MoveLinear命令(直线动作)的目标位置数据。在MoveLinear函数的功能块25a中,定义为设定数值1作为与MoveLinear函数对应的命令ID。在该情况下,控制执行部22解释功能块25a,将“命令ID=1”发送至机器人控制装置50来作为与动作命令MoveLinear对应的命令信息,并且将位置数据(Dest Pos)发送到机器人控制装置50。
控制执行部22还将附带于动作命令MoveLinear的位置数据的变量名即‘HOME.POSITION’包含在发送数据中。即,在该情况下,控制执行部22将以下的数据发送至机器人控制装置。
·命令ID=1
·位置数据(X,Y,Z)=(0,0,0)
·‘HOME.POSITION’
MoveAxes函数向目标位置的自变量DestPos输入机器人的位置数据的结构体PICK.POSITION。由此,针对机器人10,指令X=30、Y=20、Z=15来作为MoveAxes命令(直线动作)的目标位置数据。在MoveAxes函数的功能块25b中,定义为设定数值2作为与MoveAxes函数对应的命令ID。在该情况下,控制执行部22解释功能块25b的内容,将“命令ID=2”发送到机器人控制装置50来作为与动作命令MoveAxes对应的命令信息,并且将位置数据(DestPos)发送到机器人控制装置50。
控制执行部22还将作为附带于动作命令MoveAxes的位置数据的变量名即‘PICK.POSITION’包含在发送数据中。即,在该情况下,控制执行部22将以下的数据发送至机器人控制装置50。
·命令ID=2
·位置数据(X,Y,Z)=(30,20,15)
·‘PICK.POSITION’
从PLC20发送的数据被存储于机器人控制装置50的例如RAM内的一次存储区域55。程序生成部51基于从PLC20A发送的数据来生成机器人10的动作程序。作为一例,机器人控制装置50也可以保有下述表1那样的将命令ID与动作命令关联起来的表。在该情况下,程序生成部51通过参照该表,能够识别与从PLC20发送来的命令ID对应的动作命令。此外,在该情况下,PLC20A也保有与表1同样的表。在下述表1的表中,命令ID=1、2、3、4分别与直线动作、各轴动作、暂时停止、动作重新开始相关联。
[表1]
命令ID 命令内容
1 直线动作
2 各轴动作
3 暂时停止
4 动作重新开始
假设从PLC20A发送的数据为命令ID=1。在该情况下,程序生成部51根据命令ID=1,识别出动作命令是直线动作。然后,程序生成部51将与命令ID=1一起发送来的位置数据(0,0,0)存储在位置寄存器P[1]中,生成机器人10的直线动作的命令‘LP[1]’,并且将与位置数据(0,0,0)一起发送来的作为该位置数据的名称的文本HOME.POSITION作为注释文插入位置寄存器P[1]。由此,程序生成部51作为直线动作的命令语句,生成
‘LP[1:HOME.POSITION]’。
作为一例,程序执行部53构成为每当在动作程序56A内生成新的命令语句时执行动作命令,当所述‘LP[1:HOME.POSITION]’被插入动作程序56A时,程序执行部53使设定于机器人10的可动部的控制对象部位直线移动到被设定于位置寄存器P[1]的目标位置(原位)。
当从PLC20A进一步发送命令ID=2时,程序生成部51根据命令ID=2,识别出动作命令是各轴动作。然后,程序生成部51将与命令ID=2一起发送来的位置数据(30、20、15)存储于位置寄存器P[2],生成机器人10的各轴动作的命令‘JP[2]’,并且将与位置数据(30、20、15)一起发送来的作为该位置数据的名称的文本PICK.POSITION作为注释文插入位置寄存器P[2]。由此,程序生成部51生成‘JP[2:PICK.POSITION]’作为各轴动作的命令语句。
若上述命令‘JP[2:PICK.POSITION]’被插入动作程序56A,则程序执行部53使机器人10的控制对象部位移动至被设定于位置寄存器P[2]的目标位置(拾取位置)。
这样,在PLC程序中表示位置数据的变量名作为表示位置数据的注释文被插入机器人控制装置50侧的动作程序中。即,在PLC程序中分配给位置数据的文本信息在机器人控制装置50侧的动作程序中被反映为表示位置数据的文本信息。因此,用户能够容易地掌握PLC程序和动作程序如何对应。例如,假定从PLC输入到机器人控制装置的位置数据存在错误的状况。在该情况下,由于机器人停止在不希望的位置,用户注意到输入数据的错误,但若大量的命令从PLC输入到机器人控制装置,则难以找出动作程序内的哪个命令语句有错误。在这样的情况下,若对动作程序内的位置数据附加了与PLC程序内的变量名共通的名称,则能够检索并容易地找出存在错误的位置数据。即,能够高效地进行在机器人控制系统中进行示教设定、编程时的错误调查和调试。
接着,参照图4-图5,对上位控制器20为CNC(数值控制装置)20B的情况下的结构例进行说明。图4表示在CNC20B上生成的控制程序(以下,将在CNC上构建的控制程序也记载为CNC程序)的一例。基于图4的G代码的CNC程序21B包括以下的内容。
G90:绝对指令,指定为用绝对值指定坐标。
G01:指令直线动作。通过以下的位置、速度进行动作。
坐标位置:X_、Y_、Z_
姿势(绕X、Y、Z轴的旋转角):A_、B_、C_
速度:F_
D001:指定将位于存储器上的特定区域的位置编号‘001’的标签(字符信息)作为与位置X、Y、Z相关的名称信息发送到机器人控制装置50。
M30:表示主程序的结束。
当执行图4的CNC程序21B时,控制执行部22解释CNC程序21B,掌握命令G01指令了直线动作的情况。另外,CNC20B保有上述表1所示的表,通过参照该表,识别与动作命令对应的命令ID。然后,控制执行部22将表示直线动作的命令ID=1与被设定为X、Y、Z、A、B、C的位置姿势数据和速度数据一起发送。进而,控制执行部22将分配给由‘D001’指定的地址的标签作为位置数据的名称信息发送到机器人控制装置50。这里,假设在由‘D001’指定的地址中设定‘HOME.POSITION’作为标签。在该情况下,控制执行部22将‘HOME.POSITION’作为位置数据的名称信息发送给机器人控制装置50。命令ID、位置数据以及标签在机器人控制装置50中暂时存储于一次存储区域55。
机器人控制装置50的程序生成部51根据命令ID=1识别出动作命令是直线动作。然后,程序生成部51将与命令ID=1一起发送来的位置姿势数据(X、Y、Z、A、B、C)(10.0、20.0、30.0、40.0、50.0、60.0)存储在位置寄存器P[1]中,生成机器人10的直线动作的命令‘LP[1]’作为动作程序56B,并且将与位置姿势数据一起发送来的作为该位置数据的名称的文本HOME.POSITION作为注释文插入位置寄存器P[1]。由此,程序生成部51生成‘LP[1:HOME.POSITION]’作为直线动作的命令语句。此外,关于由CNC程序21B指定的速度,也可以作为指定速度倍率的数值而追加到所述命令语句中。
这样,在CNC程序21B中表示位置数据的标签被插入机器人控制装置50侧的动作程序56B作为表示位置数据的注释文。即,在CNC程序21B中分配给位置数据的文本信息在机器人控制装置50侧的动作程序56B中被反映为表示位置数据的文本信息。因此,用户能够容易地掌握CNC程序和动作程序如何对应。即,与关于PLC程序而所述的情况同样地,能够高效地进行示教设定、编程时的错误调查和调试。
另外,在CNC程序的情况下,能够将在由命令代码‘D001’指定的存储器区域中用户自由设定的标签反映为机器人控制装置侧的位置数据的名称,因此能够进一步提高用户的便利性。
如以上说明的那样,根据本实施方式,用户能够容易地掌握上位控制器的控制程序与机器人控制装置的动作程序如何对应。由此,能够高效地进行示教设定、编程时的错误调查和调试。
以上,使用典型的实施方式对本发明进行了说明,但只要是本领域技术人员,则能够理解在不脱离本发明的范围的情况下,能够进行所述各实施方式的变更以及各种其他变更、省略、追加。
在所述实施方式中,示出了从上位控制器对机器人控制装置发送文本信息(变量名、标签)本身作为名称信息的例子,但也可以代替这样的结构来发送表示名称的识别信息(ID)来作为名称信息。此外,在该情况下,上位控制器以及机器人控制装置分别构成为保有将识别信息与文字信息关联起来的表。
图1所示的上位控制器的功能(控制执行部)可以通过上位控制器的CPU执行各种软件来实现,或者也可以通过以ASIC(Application Specific Integrated Circuit:专用集成电路)等硬件为主体的结构来实现。另外,图1所示的机器人控制装置50的功能(程序生成部、名称信息附加部、程序执行部)可以通过机器人控制装置的CPU执行各种软件来实现,或者也可以通过以ASIC等硬件为主体的结构来实现。
附图标记的说明
10 机器人
20 上位控制器
21 控制程序
22 控制执行部
23 通信接口
24 变量定义
25a、25b 功能块
20A 可编程逻辑控制器
20B 数值控制装置
21A PLC 程序
21B CNC 程序
50 机器人控制装置
51 程序生成部
52 名称信息附加部
53 程序执行部
54 通信接口
55 一次存储区域
56、56A、56B 操作程序
100 机器人控制系统。

Claims (6)

1.一种机器人控制系统,具备上位控制器和与该上位控制器连接的机器人控制装置,其特征在于,
所述上位控制器具备:控制执行部,其基于用于控制机器人的控制程序,将表示针对所述机器人的动作命令的命令信息和附带于该动作命令的位置数据与表示该位置数据的名称的名称信息一起发送至所述机器人控制装置,
所述机器人控制装置具备:
程序生成部,其基于接收到的所述命令信息和所述位置数据来生成针对所述机器人的动作程序;
名称信息附加部,其对所述动作程序内的所述位置数据附加接收到的所述名称信息所表示的所述名称。
2.根据权利要求1所述的机器人控制系统,其特征在于,
所述控制执行部发送表示所述名称的文字信息作为所述名称信息。
3.根据权利要求1或2所述的机器人控制系统,其特征在于,
所述上位控制器是可编程逻辑控制器。
4.根据权利要求3所述的机器人控制系统,其特征在于,
所述控制执行部发送在所述控制程序中与所述位置数据相关联的变量名作为所述名称信息。
5.根据权利要求1或2所述的机器人控制系统,其特征在于,
所述上位控制器是数值控制装置。
6.根据权利要求5所述的机器人控制系统,其特征在于,
所述控制执行部发送在所述控制程序中与所述位置数据相关联的标签作为所述名称信息。
CN202180056891.0A 2020-08-20 2021-08-16 机器人控制系统 Pending CN116056841A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2020139400 2020-08-20
JP2020-139400 2020-08-20
PCT/JP2021/029930 WO2022039130A1 (ja) 2020-08-20 2021-08-16 ロボット制御システム

Publications (1)

Publication Number Publication Date
CN116056841A true CN116056841A (zh) 2023-05-02

Family

ID=80350332

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180056891.0A Pending CN116056841A (zh) 2020-08-20 2021-08-16 机器人控制系统

Country Status (5)

Country Link
US (1) US20230286149A1 (zh)
JP (1) JP7397208B2 (zh)
CN (1) CN116056841A (zh)
DE (1) DE112021004343T5 (zh)
WO (1) WO2022039130A1 (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3446256B2 (ja) * 1993-09-03 2003-09-16 株式会社日立製作所 Faシステムの制御方法及び装置
JP2004082216A (ja) * 2002-06-28 2004-03-18 Amada Eng Center Co Ltd 曲げ加工方法およびその装置
WO2013013686A1 (en) 2011-07-27 2013-01-31 Abb Technology Ag System for commanding a robot
JP6625266B1 (ja) 2018-03-23 2019-12-25 三菱電機株式会社 ロボット制御装置

Also Published As

Publication number Publication date
JPWO2022039130A1 (zh) 2022-02-24
DE112021004343T5 (de) 2023-05-25
US20230286149A1 (en) 2023-09-14
WO2022039130A1 (ja) 2022-02-24
JP7397208B2 (ja) 2023-12-12

Similar Documents

Publication Publication Date Title
US9063535B2 (en) Numerical control program execution by robot
US20180032055A1 (en) Translation module, processing module and control system
US11648670B2 (en) Machine tool system
CN108621152B (zh) 控制系统、控制器以及控制方法
US10747507B2 (en) Development support device, development support method, and non-transitory recording medium
US20230251630A1 (en) Numerical control system
EP3690642A1 (en) Method for coding robot control device, program, and robot control device
CN116056841A (zh) 机器人控制系统
CN115485110A (zh) 机器人控制装置以及机器人系统
CN114365048B (zh) 数控装置
CN116390835A (zh) 系统控制装置、机器人控制方法、终端装置、终端控制方法以及机器人控制系统
Rehbein et al. Collaborative control with industrial robots
Pacheco et al. Application of the step-NC standard in a computer numerical controlled machining device
CN112166409A (zh) 控制系统、控制系统的控制方法以及控制系统的程序
JP7276359B2 (ja) 動作指令生成装置、機構制御システム、コンピュータプログラム、動作指令生成方法及び機構制御方法
US20230249337A1 (en) Numerical control system
US20230244211A1 (en) Numerical control system
Wruetz et al. A wireless multi-robot network approach for industry 4.0 using RoBO2L
JP6053616B2 (ja) 表示部品制御システム
JPH08106320A (ja) 自動機械及び自動機械の制御方法
JP5445233B2 (ja) ロボットのコントローラ
WO2023210007A1 (ja) 情報処理装置、制御システム、情報処理方法、およびプログラム
Rosenstock et al. KUKA Robot Language Parser for Product Adaptive Manufacturing
JPH0224704A (ja) ロボットプログラム変換装置
JP2020175474A (ja) 動作計画装置及び動作計画方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination