CN113867274A - 工程设备、工程方法和信息存储介质 - Google Patents
工程设备、工程方法和信息存储介质 Download PDFInfo
- Publication number
- CN113867274A CN113867274A CN202110723414.7A CN202110723414A CN113867274A CN 113867274 A CN113867274 A CN 113867274A CN 202110723414 A CN202110723414 A CN 202110723414A CN 113867274 A CN113867274 A CN 113867274A
- Authority
- CN
- China
- Prior art keywords
- register
- control device
- control
- range
- module
- 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
Links
- 238000003860 storage Methods 0.000 title claims description 47
- 238000012407 engineering method Methods 0.000 title claims description 7
- 238000010276 construction Methods 0.000 claims abstract description 18
- 238000004891 communication Methods 0.000 claims description 62
- 238000013480 data collection Methods 0.000 claims description 21
- 238000012544 monitoring process Methods 0.000 claims description 17
- 230000000875 corresponding effect Effects 0.000 description 58
- 230000001276 controlling effect Effects 0.000 description 51
- 238000000034 method Methods 0.000 description 51
- 238000013500 data storage Methods 0.000 description 44
- 230000006870 function Effects 0.000 description 41
- 230000008569 process Effects 0.000 description 33
- 238000010586 diagram Methods 0.000 description 27
- 238000004519 manufacturing process Methods 0.000 description 26
- 238000012545 processing Methods 0.000 description 24
- 238000012986 modification Methods 0.000 description 19
- 230000004048 modification Effects 0.000 description 19
- 230000005540 biological transmission Effects 0.000 description 15
- 230000004044 response Effects 0.000 description 15
- 238000000547 structure data Methods 0.000 description 8
- 230000033001 locomotion Effects 0.000 description 7
- 238000012546 transfer Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000003754 machining Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- 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
- G05B15/00—Systems controlled by a computer
- G05B15/02—Systems controlled by a computer electric
-
- 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] or computer integrated manufacturing [CIM]
- G05B19/41845—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] or computer integrated manufacturing [CIM] characterised by system universality, reconfigurability, modularity
-
- 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/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/056—Programming the PLC
-
- 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/31—From computer integrated manufacturing till monitoring
- G05B2219/31094—Data exchange between modules, cells, devices, processors
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Programmable Controllers (AREA)
Abstract
工程设备(10)被配置为对能够控制一台或多台工业机器(40)的控制设备(30)的上级控制设备(20)进行设置。接收模块(102)被配置为接收对上级控制设备(20)的寄存器编号的指定。决策模块(103)被配置为基于所指定的寄存器编号,确定由上级控制设备(20)对控制设备(30)进行控制所要使用的寄存器范围。分配模块(106)被配置为将上级控制设备(20)的寄存器中所确定的寄存器范围分配以用于对控制设备(30)的控制。
Description
技术领域
本公开涉及工程设备、工程方法和信息存储介质。
背景技术
在JP 2012-194678 A1中,描述了一种技术,其中在梯形图中描述上级控制设备(例如可编程逻辑控制器(PLC))的操作以创建程序并且上级控制设备执行程序。
发明内容
本公开要实现的目的是分配例如能够控制一台或多台工业机器的控制设备的上级控制设备的寄存器中用户期望的自由选择的寄存器范围,以用于对控制设备进行控制。
根据本公开的一个方面,提供了一种工程设备,被配置为对上级控制设备进行设置,上级控制设备能够控制一台或多台工业机器的控制设备,工程设备包括:接收模块,被配置为接收对上级控制设备的寄存器编号的指定;决策模块,被配置为基于所指定的寄存器编号,确定由上级控制设备对控制设备进行控制所要使用的寄存器范围;以及分配模块,被配置为将上级控制设备的寄存器中所确定的寄存器范围分配以用于对控制设备的控制。
根据本公开的一个方面,提供了一种用于对上级控制设备进行设置的工程方法,上级控制设备能够控制一台或多台工业机器的控制设备,工程方法包括:接收对上级控制设备的寄存器编号的指定;基于所指定的寄存器编号,确定由上级控制设备对控制设备进行控制所要使用的寄存器范围;以及将上级控制设备的寄存器中所确定的寄存器范围分配以用于对控制设备的控制。
根据本公开的一个方面,提供了一种信息存储介质,该信息存储介质存储有程序,所述程序用于使被配置为对能够控制一台或多台工业机器的控制设备的上级控制设备进行设置的工程设备用作:接收模块,被配置为接收对上级控制设备的寄存器编号的指定;决策模块,被配置为基于所指定的寄存器编号,确定由上级控制设备对控制设备进行控制所要使用的寄存器范围;以及分配模块,被配置为将上级控制设备的寄存器中所确定的寄存器范围分配以用于对控制设备的控制。
根据本公开的一个方面,接收模块被配置为接收对起始寄存器编号的指定,并且决策模块被配置为基于所指定的起始寄存器编号,确定从起始寄存器编号到比起始寄存器编号靠后预定数的结束寄存器编号的范围,作为所述寄存器范围。
根据本公开的一个方面,决策模块被配置为基于所指定的寄存器编号和在控制设备与上级控制设备之间的通信配置文件中定义的数据结构来确定所述寄存器范围。
根据本公开的一个方面,工程设备还包括:确定模块,被配置为确定所确定的寄存器范围与要用于另一目的的另一寄存器范围是否彼此重叠;以及输出模块,被配置为当确定所确定的寄存器范围与另一寄存器范围彼此重叠时输出预定警报。
根据本公开的一个方面,上级控制设备被配置为控制多个控制设备中的每一个控制设备,接收模块被配置为针对多个控制设备中的每一个控制设备,接收对寄存器编号的指定,决策模块被配置为针对所述多个控制设备中的每一个控制设备,基于为多个控制设备中的每一个控制设备指定的寄存器编号,确定由上级控制设备对多个控制设备中的每一个控制设备进行控制所要使用的寄存器范围,并且分配模块被配置为针对多个控制设备中的每一个控制设备,将针对多个控制设备中的每一个控制设备所确定的寄存器范围分配以用于对多个控制设备中的每一个控制设备进行控制。
根据本公开的一个方面,控制设备被配置为存储用于执行预定操作的程序,寄存器范围包括用于命令区域的寄存器编号,该命令区域存储用于调用控制设备的程序并使控制设备执行程序的命令,并且分配模块被配置为将包括用于命令区域的寄存器编号的寄存器范围分配以用于对控制设备的控制。
根据本公开的一个方面,寄存器范围包括用于命令区域的寄存器编号和用于命令请求信息区域的寄存器编号,命令区域用于存储指向控制设备的命令;以及命令请求信息区域用于存储请求执行存储在命令区域中的命令的命令请求信息,并且分配模块被配置为将包括用于命令区域的寄存器编号和用于命令请求信息区域的寄存器编号的寄存器范围分配以用于对控制设备的控制。
根据本公开的一个方面,寄存器范围除了用于对控制设备的控制之外,还用于与控制设备的操作有关的监视和数据收集中的至少一者,并且分配模块被配置为将所确定的寄存器范围分配以用于对控制设备的行控制以及所述监视和数据收集中的至少一者。
根据本公开的一个方面,工程设备还包括:显示控制模块,被配置为显示使能使上级控制设备对控制设备的控制的控制程序的创建画面;以及创建模块,被配置为基于在创建画面上的操作来创建控制程序,其中,显示控制模块被配置为在创建画面上显示分别与包括在所分配的寄存器范围中的多个寄存器编号相对应的变量名。
根据本公开的一个方面,创建模块被配置为当创建画面上显示的变量名被指定时,创建控制程序,以控制与所指定的变量名相对应的寄存器编号处的寄存器。
根据本公开的一个方面,与包括在寄存器范围中的多个寄存器编号相对应的变量名具有层次结构,并且显示控制模块被配置为基于变量名的层次结构以树状方式在创建画面上显示这些变量名。
根据本公开的一个方面,上级控制设备包括多种类型的寄存器,接收模块被配置为接收对多种类型的寄存器的任一个寄存器编号的指定,决策模块被配置为基于所指定的寄存器编号,确定与所指定的寄存器编号相对应的类型的寄存器的寄存器范围,并且分配模块被配置为将多种类型的寄存器中与所指定的寄存器编号相对应的类型的寄存器的所确定的寄存器范围分配以用于对控制设备的控制。
根据本公开,可以分配例如能够控制一台或多台工业机器的控制设备的上级控制设备的寄存器中用户期望的自由选择的寄存器范围,以用于对控制设备进行控制。
附图说明
图1是用于示出包括工程设备的生产系统的整体配置的示例的图。
图2是用于示出详细定义画面的示例的图。
图3是用于示出显示窗口的详细定义画面的示例的图。
图4是用于示出指定系统配置时的详细定义画面的示例的图。
图5是用于示出指定开始寄存器编号时的详细定义画面的示例的图。
图6是用于示出已执行对所有机器人控制器的通信设置时的详细定义画面的示例的图。
图7是用于示出寄存器范围彼此重叠时的详细定义画面的示例的图。
图8是用于示出生产系统中实现的功能的功能框图。
图9是用于显示结构数据的数据存储示例的表。
图10是用于显示详细定义数据的数据存储示例的表。
图11是用于示出要在本公开的实施例中的生产系统中执行的处理的示例的流程图。
图12是本公开的变形例(1)中的功能框图。
图13是用于示出创建画面的示例的图。
具体实施方式
[1.生产系统的整体配置]
能够控制被配置为控制一台或多台工业机器的控制设备的上级控制设备被配置为基于存储在预先定义的寄存器范围中的变量来对控制设备进行控制。对此,相关技术中,上级控制设备的寄存器范围是固定的,用户不能随意指定。作为对分配上级控制设备的寄存器中用户期望的自由选择的寄存器范围以对控制设备进行控制的广泛研究和开发的结果,发明人构思了新颖的和独创的工程设备等。现在给出根据本公开的实施例的工程设备等的详细描述。
图1是用于示出生产系统(包括工程设备)的整体配置的示例的图。如图1所示,生产系统1包括工程设备10、上级控制设备20、机器人控制器30、机器人40和数据收集设备50。在图1中,每个设备被示为一个设备,但是可以提供为多个设备。
包括在生产系统1中的每个设备可以连接到任何网络。在本实施例中,描述了设备通过通用网络例如以太网(商标)相互连接的情况,但是设备可以通过用于工业机器的网络相互连接。例如,设备可以通过不同类型的网络相互连接,使得上级控制设备20、工程设备10和数据收集设备50通过通用网络相互连接,并且,上级控制设备20和机器人控制器30通过用于工业机器的网络相互连接。
工程设备10是被配置为对能够控制机器人控制器30的上级控制设备20进行设置的计算机,机器人控制器30被配置为控制一个或多个机器人40。例如,工程设备10是个人计算机、蜂窝电话(包括智能电话)或移动终端(包括平板终端)。工程设备10可以被配置为对除上级控制设备20之外的设备进行设置。
在工程设备10中,安装了用于支持用户设置工作的工程工具。例如,工程工具用于各种目的,例如程序的创建、参数设置、设备之间的通信设置、寄存器的定义和变量的定义。工程设备10包括CPU 11、存储装置12、通信器13、操作接口14和显示器15。
CPU 11包括至少一个处理器。CPU 11是一种电路。存储装置12包括RAM或硬盘驱动器,被配置为存储各种程序和数据。CPU 11被配置为基于这些程序和数据执行各种类型的处理。通信器13包括网卡和通信接口,例如各种类型的通信连接器,被配置为与其他设备进行通信。操作接口14为鼠标和键盘等输入设备。显示器15是液晶显示器、有机EL显示器等,并且被配置为根据来自CPU 11的指令显示各种类型的画面。
上级控制设备20是能够控制另一设备的计算机。上级控制设备20只需要具有控制另一设备的功能即可,并不总是需要控制另一设备。例如,上级控制设备20可以只从机器人控制器30收集数据而不控制机器人控制器30。整个生产系统1可以称为“小区(Cell)”,它是比线(line)更小的单位,并且在这种情况下,上级控制设备20可以被称为“小区控制器”。上级控制设备20可以对应于一种可编程逻辑控制器(PLC)。
在本实施例中,上级控制设备20可以控制机器人控制器30。例如,上级控制设备20可以控制多个机器人控制器30。此外,例如,上级控制设备20能够控制作为相互不同种类的设备的多个设备。上级控制设备20所控制的设备的数量和种类不限于本实施例的示例,可以将任意数量和任意种类的设备设置为要控制的设备。
上级控制设备20包括CPU 21、存储装置22、通信器23和IoT单元24。CPU 21、存储装置22和通信器23中的每一个的物理配置可以分别与CPU 11、存储装置12和通信器13的物理配置相同。IoT单元24是用于通过网络向另一台计算机传输数据的单元。例如,IoT单元24包括CPU、存储装置和通信器。包括在IoT单元24中的CPU、存储装置和通信器中的每一个的物理配置可以分别与CPU 11、存储装置12和通信器13中的每一个的物理配置相同。
CPU 21、存储装置22和通信器23可以被包括在上级控制设备20的第一箱(以下称为“CPU单元”)中,并且IoT单元24可以被包括在上级控制设备20的第二箱(以下称为“IoT单元”)中。在这种情况下,工程设备10可以连接到CPU单元和IoT单元中的每一个。用户可以将工程设备10连接到CPU单元,或者可以将工程设备10连接到IoT单元。
机器人控制器30是被配置为控制机器人40的计算机。机器人控制器30是控制设备的示例。因此,在本实施例中使用的术语“机器人控制器30”可以被理解为“控制设备”。控制设备可以是被配置为控制稍后描述的工业机器的任何种类的设备。例如,控制设备可以是PLC、运动控制器、电机控制器、逆变器、转换器、机床、输送设备或半导体制造装置。控制设备可以控制任意数量的工业机器。控制设备可以控制只一台工业机器,或者可以控制多台工业机器。控制设备对应于工业机器的上级设备。上级控制设备20可以控制控制设备,因此对应于比控制设备更高级别的设备。
机器人40是由机器人控制器30控制的工业机器人。例如,机器人40包括机械臂、机械手、电机和传感器。传感器是能够检测物理量的传感器即可,并且传感器例如可以是电机编码器、扭矩传感器、运动传感器、抓握传感器、视觉传感器或温度传感器。机器人40是工业机器的示例。因此,在该实施例中使用的术语“机器人40”可以被理解为“工业机器”。工业机器是被配置为辅助或替代人类工作的机器及其周边机器的统称。例如,工业机器人、伺服放大器或电机对应于工业机器。在更广泛的意义上,上级控制设备20、机器人控制器30和传感器同样各自是一种工业机器。一种设备,例如,上述PLC,也是一种工业机器。
数据收集设备50是被配置为收集生产系统1中的数据的计算机。数据收集设备50为个人计算机、服务器计算机、蜂窝电话(包括智能电话)或移动终端(包括平板终端)。数据收集设备50包括CPU 51、存储装置52、通信器53、操作接口54和显示器55。CPU 51、存储装置52、通信器53、操作接口54和显示器55中的每一个的物理配置可以分别与CPU 11、存储装置12、通信器13、操作界面14和显示器15中的每一个的物理配置相同。
可以通过网络提供被描述为存储在每一个设备中的程序和数据。此外,每个设备的硬件配置不限于上述示例,并且可以应用各种类型的硬件。例如,可以包括被配置为读取计算机可读信息存储介质的读取器(例如,光盘驱动器或存储卡插槽)和被配置为直接连接外部设备的输入/输出设备(例如,USB端子)。在这种情况下,可以通过读取器或输入/输出设备提供存储在信息存储介质中的程序和数据。
此外,例如,上级控制设备20可以连接到工业机器,例如由上级控制设备20直接控制的机器人。此外,例如,上级控制设备20和机器人控制器30可以各自包括称为“FPGA”或“ASIC”的电路。此外,例如,上级控制设备20和机器人控制器30可以各自连接到上述传感器、输入/输出设备等。
[2.生产系统概要]
本实施例中的上级控制设备20被配置为基于多个变量中的每一个变量来控制机器人控制器30。变量是用于控制机器人控制器30的控制程序参照的信息。控制程序也可以重写变量。例如,变量表示未完成计算的结果、有无警报、或传感器检测到的物理量(例如,扭矩传感器检测到的扭矩值或电机编码器检测到的电机转速)。
例如,当机器人控制器30以预定顺序执行多个处理时,在控制程序中描述处理的执行顺序。上级控制设备20基于控制程序向机器人控制器30发送指令。变量可以用作处理的执行条件。例如,机器人控制器30存储用于开始处理的变量、用于暂停处理的变量、或用于结束处理的变量。变量可以被称为“输入/输出变量”。
“处理(process)”是机器人控制器30执行的任务或操作。处理可以仅由一个任务组成,或者可以由多个任务的组合组成。根据机器人控制器30的用途,处理可以具有任何内容。例如,处理是工件的识别、工件的夹持、门的打开/关闭、工件的设置或使用机床的加工。机器人控制器30执行至少一个处理。机器人控制器30执行的处理的数量可以是任意数量。机器人控制器30可以仅执行一个处理,或者可以执行多个处理。机器人控制器30基于从上级控制设备20接收到的指令和存储在机器人控制器30自身中的设备程序来执行处理。
设备程序是定义机器人控制器30的操作的程序。在设备程序中,定义了每个处理的每个过程。设备程序可以根据机器人控制器30以任何语言创建,并且例如以梯形语言或机器人语言创建。控制程序也可以是以任何语言创建的。在本实施例中,为每个处理准备设备程序。因此,当某个机器人控制器30要执行“n”个处理(“n”是自然数)时,机器人控制器30存储至少“n”个设备程序。
变量的类型不限于上述示例。例如,可以存在表示从上级控制设备20向机器人控制器30发送的命令的变量。此外,例如可以存在表示由一个变量表示的命令的执行开始的另一变量。此外,例如,可以存在表示要由机器人控制器30执行的机器人程序的名称及其执行条件的变量。机器人程序是要由机器人控制器30执行的程序,并且例如,上述的设备程序是一种机器人程序。称为“作业”的程序也是一种机器人程序。此外,例如,可以存在表示从机器人控制器30发送到上级控制设备20的响应的变量。此外,例如,可以存在与机器人控制器30的控制不直接相关的变量。
用户操作工程设备10以对存储如上所述的这些变量的上级控制设备20进行设置。本实施例中使用的术语“用户”是指上级控制设备20的用户。上级控制设备20的用户可以与机器人控制器30的用户和数据收集设备50的用户相同,但在本实施例中,描述了这些用户不同的情况。
例如,用户使用安装在工程设备10中的工程工具,来分配上级控制设备20的寄存器。寄存器的分配作为上级控制设备20与机器人控制器30之间的通信设置的一部分而执行。当用户操作工程设备10以激活工程工具时,用于执行各种设置的菜单画面显示在显示器15上。当用户从菜单画面中选择用于执行通信设置的图标时,用于定义通信设置的细节的详细定义画面显示在显示器15上。
图2是用于示出详细定义画面的示例的图。如图2所示,在详细定义画面G1上,可以对与上级控制设备20进行通信的多个设备中的每一个执行通信设置。在本实施例中,描述了上级控制设备20最多可以与八个设备通信,但是能够与上级控制设备20通信的设备的上限数量可以是任意数量,并且不限于八个。在图2的例子中,还没有对任何设备执行通信设置,并且在详细定义画面G1上不显示关于通信设置的信息。
在图2的示例中,可以设置系统配置、传输类型、起始寄存器编号、结束寄存器编号、看门狗定时器设置和注释。系统配置是连接到设备的方法。系统配置也可以说是通信协议。例如,准备了多种连接方法,并且用户指定任意一种连接方法。传输类型是在指定系统配置中要使用的传输类型。例如,准备了多种类型,例如内置以太网(注册商标),并且用户指定类型中的任一种。
起始寄存器编号是分配用于对设备进行控制的寄存器范围中的第一寄存器编号。寄存器编号是用于识别每个个体寄存器的信息。寄存器编号是类似于地址的概念,但与严格意义上的地址有不同的含义。在该实施例中,变量被存储在CPU 21中包括的寄存器中,因此寄存器编号指示CPU21的每个个体寄存器。
寄存器范围是寄存器编号的带宽。寄存器范围包括多个寄存器编号。寄存器范围中包括的寄存器编号的数量可以是任意数量。在本实施例中,描述了寄存器范围中包括的寄存器编号为序号的情况,但寄存器范围中包括的寄存器编号不要求为序号。分配给给定设备的寄存器范围中包括的寄存器存储用于对该给定设备进行控制的变量,而不存储用于对另一设备进行控制的变量。
结束寄存器编号是分配用于对设备进行控制的寄存器范围中的最后一个寄存器编号。在本实施例中,寄存器范围由序号形成,因此给定设备的寄存器范围从为该给定设备指定的起始寄存器编号到结束寄存器编号。结束寄存器编号是通过将对应于在稍后描述的结构中定义的大小的偏移加到起始寄存器编号而获得的编号。
看门狗定时器设置是用于监控设备是否正常的定时器。在图2的示例中,默认值被设置为看门狗定时器设置的值。看门狗定时器设置可以具有与用户指定的系统配置对应的值,或者可以具有用户指定的值。注释是与设备的通信设置有关的补充描述,并且用户可以输入任意字符串。
在本实施例中,描述三个机器人控制器30与上级控制设备20连接并且执行这三个机器人控制器30的通信设置的情况作为示例。例如,为了执行第一机器人控制器30的通信设置,用户选择详细定义画面G1上显示的“编号1”的系统配置。当选择“编号1”的系统配置时,显示用于指定第一机器人控制器30的系统配置的窗口。
图3是用于示出显示窗口的详细定义画面G1的示例的图。如图3所示,预先准备的多个系统配置中的每一个都显示在窗口W10上。当用户从窗口W10中指定自由选择的系统配置时,显示用于执行与指定的系统配置相对应的详细设置的输入表单。传输类型可以基于用户指定的系统配置自动指定,或者可以由用户从多个传输类型中指定。
图4是用于示出指定系统配置时的详细定义画面G1的示例的图。如图4所示,在输入表单F10中显示连接号、本站端口、机器人控制器30的IP地址、机器人控制器30的端口、连接类型、协议类型和代码。
连接号是分配给与上级控制设备20进行通信的设备的编号。本站端口是通信器23中包括的多个端口中用于与机器人控制器30进行通信的端口。机器人控制器30的IP地址可以预先设置,但在本实施例中,由用户从输入表单F10中指定。
机器人控制器30的端口是通信器33中包括的多个端口中要用于与上级控制设备20进行通信的端口。连接类型和协议类型中的每一个是通信类型,例如,用户数据报协议(UDP)、传输控制协议(TCP)或Modbus。代码是要传输和接收的数据的格式,并且格式的示例包括二进制代码。在本实施例中,描述了机器人控制器30的端口、连接类型、协议类型和代码中的每一个具有固定值的情况,但是用户可以指定这些值。
例如,用户在输入表单F10中为本站端口和机器人控制器30的IP地址中的每一个指定自由选择的值。当与给定机器人控制器30对应的本站端口或IP地址中的至少一个和与另一机器人控制器30对应的本站端口或IP地址中的至少一个彼此重叠时,可能会显示错误消息。在用户完成对输入表单F10的输入后,用户指定自由选择的寄存器编号作为“编号1”的起始寄存器编号。用户可以在输入到输入表单F10之前指定起始寄存器编号。
图5是用于示出指定起始寄存器编号时的详细定义画面G1的示例的图。如图5所示,当用户指定起始寄存器编号时,自动指定结束寄存器编号。在图5的示例中,为用户指定的系统配置的结构准备了对应于4260个寄存器编号的大小,并且将比用户指定的“GW00000”靠后结构大小的“GW04259”指定为结束寄存器编号。在上级控制设备20的CPU 21中包括的寄存器中,分配了包括从“GW00000”到“GW04259”的4260个寄存器编号的寄存器范围用于对第一机器人控制器30的控制。
用户根据需要指定看门狗定时器设置和注释。因此,第一机器人控制器30的通信设置完成。用户随后对第二和第三机器人控制器30执行通信设置。在与第一机器人控制器30相同的流程中对第二和第三机器人控制器30执行通信设置。
图6是用于示出已执行所有机器人控制器30的通信设置时的详细定义画面G1的示例的图。如图6所示,用户指定寄存器范围、本站端口和IP地址以防止机器人控制器30之间的重叠。用于第二和第三机器人控制器30的通信设置被输入到例如输入表单F11和F12。当用户从详细定义画面G1执行预定操作时,每个机器人控制器30的通信设置被保存。
在本实施例中,当要保存通信设置时,确定用户指定的寄存器范围是否彼此重叠。例如,确定给定机器人控制器30的寄存器范围和另一机器人控制器30的寄存器范围是否彼此重叠。在另一示例中,确定用于给定机器人控制器30的寄存器范围和要用于对机器人控制器30的控制以外的目的的寄存器范围是否彼此重叠。
图7是用于示出寄存器范围彼此重叠时的详细定义画面G1的示例的图。如图7所示,当寄存器范围彼此重叠时,显示包括该效果的消息的窗口W11。当显示窗口W11时,用户再次指定机器人控制器30的起始寄存器编号以防止寄存器范围彼此重叠。在本实施例中,描述了仅当寄存器范围彼此重叠时才显示窗口W11的情况,但是可以显示包括提示用户防止寄存器范围彼此重叠的消息的窗口W11,而不管寄存器范围是否彼此重叠。
如上所述,在本实施例的工程工具中,当指定了给定机器人控制器30的起始寄存器编号时,结构中定义的寄存器范围被分配用于对该机器人控制器30的控制。因此,用户期望的自由选择的寄存器范围可以分配用于对机器人控制器30的控制。下面详细描述生产系统1。
[3.生产系统中实现的功能]
图8是用于示出生产系统1中实现的功能的功能框图。在本实施例中,描述了在工程设备10、上级控制设备20、机器人控制器30和数据收集设备50的每一个中实现的功能。
[3-1.工程设备实现的功能]
如图8所示,工程设备10包括数据存储装置100、显示控制模块101、接收模块102、决策模块103、确定模块104、输出模块105和分配模块106。数据存储装置100主要由存储装置12实现,并且显示控制模块101、接收模块102、决策模块103、确定模块104、输出模块105和分配模块106中的每一个主要由CPU 11实现。
[数据存储装置]
数据存储装置100被配置为存储对上级控制设备20进行设置所需的数据。在本实施例中,作为该数据的示例,描述了表示在通信配置文件(profile)中定义的结构的结构数据和表示在详细定义画面G1上定义的通信设置的详细定义数据。通信配置文件是配置为将上级控制设备20和机器人控制器30彼此连接的接口。通信配置文件可以与通信协议具有相同的含义,并且定义了通信过程和数据格式。在本实施例中,通过指定系统配置来指定通信配置文件。
图9是用于显示结构数据的数据存储示例的表。如图9所示,结构数据D1是其中定义了通信配置文件中的寄存器系统的数据。换句话说,结构数据D1是指示在通信配置文件中定义的通信中要传输和接收的数据的格式的数据。当准备多个通信配置文件时,为每个通信配置文件准备结构数据D1。在这种情况下,每个通信配置文件的偏移宽度(寄存器范围的长度)可能不同。结构数据D1表示包含在寄存器范围内的寄存器编号与存储在寄存器编号处的信息之间的关系。例如,结构数据D1存储偏移量、层和名称。
偏移是基于起始寄存器编号的寄存器编号。偏移也可以说是从起始寄存器编号起数时得到的寄存器编号或相对于起始寄存器编号的寄存器编号。在图9所示的数据存储示例中,用户指定的起始寄存器编号对应于作为偏移的第一个编号的“0000”。工程工具自动设置的结束寄存器编号对应于作为偏移的最后一个编号的“4259”。在本实施例中,包括从“0000”到“4259”的总共4260个寄存器编号的寄存器范围被分配给机器人控制器30。
层是表示存储在与偏移对应的寄存器中的变量的属性的信息。属性是表示变量的类别的信息。属性也可以说是表示变量的属性或特性的信息。当属性由层表示时,下层中的变量表示为具有更具体的类别。在图9所示的数据存储示例中,使用四层,但层数可以自由设置。属性不需要具有层的概念。此外,变量不需要按属性分类。
名称是存储在与偏移对应的寄存器中的变量的名称。在某些情况下,根据变量的数据大小,可能无法在与一个寄存器编号相对应的寄存器中存储变量,因此跨多个寄存器编号存储这样的变量。具有更大数据大小的变量需要更多的寄存器编号。在第一层到第四层中,每个变量的最低层中的名称(例如“编号2500”处的“CmdReqid”)也是一种变量名称。
在本实施例中,仅描述了结构数据D1中定义的变量中的主要变量。例如,从“0012”到“2041”的偏移的变量组是与由上级控制设备20从机器人控制器30接收的接收数据相同的数据。该变量组包括多个应答标头,包含“0413”处的命令请求ID、“0415”处的主命令、“0416”处的子命令、“0417”处的返回值、以及“0418”处的到附加数据的偏移。
命令请求ID是命令请求信息的示例。本实施例中对命令请求ID的描述可以理解为“命令请求信息”。命令请求信息是用于请求机器人控制器30执行命令的信息。例如,当命令请求信息更新时,执行命令。更新是指值的变化。此外,例如,当命令请求信息指示预定值时,执行命令。命令请求信息可以具有除ID之外的任何格式,并且可以通过除ID之外的名称来调用。本实施例中的命令请求ID用数值表示,每次执行命令时递增。
主命令是指示提供给机器人控制器30的多个功能中的机器人控制器30所请求的功能的信息。在本实施例中,准备了三个功能,包括控制机器人40的机器人控制功能、监视机器人40的动作的监视功能、以及收集与机器人40的动作有关的数据的收集功能,并且主命令具有指示这些功能中的任何一个的值。机器人控制器30可以不具有监视功能或收集功能,或者可以具有其他功能。机器人控制器30也可以仅具有单一功能。在这种情况下,可以省略主命令。
子命令是指示机器人控制器30可以执行的多个操作中机器人控制器30请求的操作的信息。在本实施例中,为由主命令指示的每个功能准备多个操作。子命令指示为主命令指示的功能准备的多个操作中的任何一个。即,在本实施例中,通过主命令和子命令的组合来指定机器人控制器30执行的具体操作。
例如,对于机器人控制功能的主命令,准备了如下子命令:例如报警或报错的重置、停止抓握、电源控制、HMI锁定、循环时段更改、模式切换、机器人程序的执行(启动)、机器人程序的选择、机器人朝向目标位置的动作、以及为每个轴指定脉冲的机器人动作。此外,例如,对于监视功能的主命令,准备了例如监视设置的读取、监视设置的写入、和机器人程序信息的读取的子命令。此外,例如,对于收集功能的主命令,准备了例如收集设置状态的读取、收集设置的写入、收集开始和收集结束的子命令。
返回值是表示机器人控制器30的操作结果的信息。例如,当返回值是第一值(例如,0)时意味着操作已经正常完成。此外,例如,返回值是第二值(例如,1)意味着在操作中发生了异常。附加数据的偏移是用于识别存储来自机器人控制器30的响应数据中包括的附加数据的寄存器编号的信息。仅当主命令和子命令处于预定组合时才添加附加数据。
此外,例如,从“0012”到“2041”的变量组除了包括上述应答标头之外还包括从“0504”到“1054”的应答数据区。包括附加数据的数据存储在应答数据区中。
此外,例如,从“2042”到“2499”的偏移的变量组是与由上级控制设备20传输到机器人控制器30的传输数据相同的数据。该变量组包括“2163”处的命令请求ID、“2165”处的主命令、“2166”处的子命令以及从“2167”到“2499”的命令数据区。命令请求ID、主命令和子命令的含义如上所述。
从上级控制设备20向机器人控制器30传输从“2163”到“2166”的命令请求ID、主命令和子命令。上述从“0413”到“0416”的命令请求ID、主命令和子命令是从机器人控制器30接收的。从“2163”到“2166”的命令请求ID、主命令和子命令的值与从“0413”到“0416”的命令请求ID、主命令和子命令的值之间的不匹配表示发生某种异常的风险很高。
在从“2167”到“2499”的命令数据区中存储与机器人控制器30请求的操作有关的数据。例如,在选择机器人程序的情况下,机器人程序名称和机器人程序的开始部分存储在命令数据区中。另外,命令数据区可以存储数据,例如执行机器人程序所需的参数,或者可以存储信息,例如用户注册的机器人程序组的标识信息。
从“2500”到“2950”的偏移的变量组对应于上级控制设备20从机器人控制器30接收的最新接收数据。结构数据D1还可以包括用于监视功能的寄存器范围和收集功能的寄存器范围。用于监视机器人40的操作的变量存储在监视功能的寄存器范围中。数据收集设备50要收集的变量存储在收集功能的寄存器范围中。
图10是用于显示详细定义数据D2的数据存储示例的表。如图10所示,详细定义数据D2是表示从详细定义画面G1指定的设置内容的数据。例如,详细定义数据D2存储设备编号、系统配置、传输类型、起始寄存器编号、结束寄存器编号、看门狗定时器设置值、注释、本站端口、机器人控制器30的IP地址、机器人控制器30的端口、连接类型、协议类型和代码。这些信息如上面参考图2-7所示的详细定义画面G1所描述的。当用户保存设置时,详细定义数据D2被更新。
存储在数据存储装置100中的数据不限于上述示例。例如,数据存储装置100存储工程工具。假定工程工具包括用于显示包括详细定义画面G1在内的各种画面的程序和用于基于起始寄存器编号计算结束寄存器编号的程序。此外,例如,数据存储装置100可以存储用户通过使用工程工具创建的程序和参数。
[显示控制模块]
显示控制模块101使显示器15显示工程工具的各种画面。例如,显示控制模块101显示详细定义画面G1。如参考图2至图7所描述的,显示控制模块101显示详细定义画面G1并基于用户的操作更新显示。
[接收模块]
接收模块102被配置为接收上级控制设备20对寄存器编号的指定。例如,接收模块102接收对起始寄存器编号的指定。可以通过任何方法指定寄存器编号。例如,对起始寄存器编号的指定可以通过在输入表单中输入数值来接收,或者可以通过选择下拉菜单或按钮来接收。其他值的指定也相同,可以通过可从操作接口14输入的操作执行指定。
接收模块102可以接收可以指定寄存器范围的对寄存器编号的指定。例如,接收模块102可以接收对结束寄存器编号的指定。在这种情况下,稍后描述的决策模块103可以获取比指定的结束寄存器编号早预定值的编号作为起始寄存器编号。在另一示例中,接收模块102可以接收对晚于起始寄存器编号且早于结束寄存器编号的中间寄存器编号的指定。在这种情况下,后述的决策模块103可以获取比指定寄存器编号早预定值的编号作为起始寄存器编号,以及获取比指定寄存器编号晚预定值的编号作为结束寄存器编号。
接收模块102可以接收对不包括在寄存器范围中的寄存器编号的指定以代替包括在寄存器范围中的寄存器编号。例如,接收模块102可以接收对紧接在起始寄存器编号之前的编号的指定。在这种情况下,后面描述的决策模块103可以获取紧接在指定寄存器编号之后的编号作为起始寄存器编号。在另一示例中,接收模块102可以接收紧接在结束寄存器编号之后的编号的指定。在这种情况下,后述的决策模块103可以获取紧接在指定寄存器编号之前的编号作为结束寄存器编号。
当寄存器范围的偏移不是如本实施例那样设置为固定值时,接收模块102可以接收对起始寄存器编号和结束寄存器编号两者的指定。在这种情况下,寄存器范围具有用户指定的自由选择长度。在这种情况下,也可以指定起始寄存器编号和结束寄存器编号以外的寄存器编号。此外,可以指定起始寄存器编号和寄存器范围的长度。也就是说,寄存器范围的长度可以根据用户的操作而变化。
在本实施例中,上级控制设备20控制多个机器人控制器30中的每一个机器人控制器30,因此接收模块102接收针对每个机器人控制器30而对寄存器编号的指定。接收模块102接收对与机器人控制器30的数量一样多的寄存器编号的指定。接收模块102接收对分别对应于“n”个机器人控制器30的至少“n”个寄存器编号的指定。
[决策模块]
决策模块103被配置为基于所所指定的寄存器编号,确定上级控制设备20对机器人控制器30的控制所使用的寄存器范围。该寄存器范围存储要经受通过用于控制相应机器人控制器30的控制程序的引用和重写中的至少一者的变量组。确定寄存器范围是指至少确定起始寄存器编号和结束寄存器编号。当寄存器范围不是由序号形成的并且跨越多个范围时(当寄存器范围包括多个范围时),至少确定每个单独范围的起始寄存器编号和结束寄存器编号对应于确定寄存器范围。
在本实施例中,用户指定起始寄存器编号,因此决策模块103确定从所指定的起始寄存器编号到该起始寄存器编号加上预定值得到的结束寄存器编号的范围作为寄存器范围。该预定值只要是预先定义的数值即可,在本实施方式中,假设为通信配置文件中的结构数据D1中定义的偏移的最后者“4259”。
决策模块103基于所指定的寄存器编号和在机器人控制器30和上级控制设备20之间的通信配置文件中定义的数据结构(结构数据D1中定义的结构)来确定寄存器范围。决策模块103确定通过将结构数据D1中定义的大小与所指定的起始寄存器编号相加而获得的数字作为结束寄存器编号。决策模块103将起始寄存器编号至结束寄存器编号的范围确定为寄存器范围。因此,当指定了相同的通信配置文件时,对于任何机器人控制器30而言,寄存器范围包括“4300”个寄存器编号。
在本实施例中,上级控制设备20能够控制多个机器人控制器30,因此针对每个机器人控制器30,决策模块103基于为每个机器人控制器30指定的寄存器编号来为每个机器人控制器30确定由上级控制设备20对该机器人控制器30进行控制要使用的寄存器范围。决策模块103确定与机器人控制器30的数量一样多的寄存器范围。即,决策模块103确定分别对应于“n”个机器人控制器30的“n”个寄存器范围。
[确定模块]
确定模块104被配置为确定决策模块103所确定的寄存器范围与用于另一目的的另一寄存器范围是否彼此重叠。另一目的是对相应机器人控制器30进行控制以外的目的。另一目的的示例包括对另一机器人控制器30的控制、对机器人控制器30以外的设备(例如,直接从属于上级控制设备20的设备)的控制、对要传输到数据收集设备50的数据的收集、数据分析、以及程序和参数的加载的目的。假定用于识别将用于另一目的的另一寄存器范围的信息预先存储在数据存储装置100中。
例如,当决策模块103所确定的寄存器范围与用于另一目的的另一寄存器范围在即使一个寄存器编号方面彼此重叠时,确定模块104确定这些寄存器范围彼此重叠。当决策模块103所确定的寄存器范围与用于另一目的的另一寄存器范围在等于或大于阈值的寄存器数量方面彼此重叠时,确定模块104也可以确定这些寄存器范围彼此重叠。另外,例如,当决策模块103所确定的寄存器范围与用于另一目的的另一寄存器范围彼此重叠但重叠部分是空闲寄存器时,确定模块104可以确定这些寄存器范围彼此不重叠。
[输出模块]
输出模块105被配置为在确定决策模块103所确定的寄存器范围与另一寄存器范围彼此重叠时,输出预定警报。在本实施例中,图7所示的窗口W11对应于警报。警报是视觉上可识别的图像就足够了,并且警报可以是除窗口W11之外的图像。例如,与窗口W11分开显示的消息、预定图标或使屏幕闪烁可以对应于警报。输出模块105在确定模块104未确定重叠时不输出警报,并且在确定模块104确定重叠时输出警报。警报可以通过扬声器发出的声音、振动器振动或LED灯闪烁等方式输出。此外,也可以通过另一方法输出警报,例如通过发送电子邮件。
[分配模块]
分配模块106被配置为在上级控制设备20的寄存器中分配决策模块103所确定的寄存器范围,用于对机器人控制器30进行控制。分配寄存器范围是指固定或预留给定机器人控制器30对应的寄存器范围所指示的寄存器编号,以用于对该机器人控制器30进行控制。分配模块106分配的寄存器范围变为对于对对应于该寄存器范围的机器人控制器30进行控制而专用的存储区域。
例如,分配模块106通过将详细定义数据D2写入上级控制设备20的数据存储装置200来分配寄存器范围。可以通过写入其他数据来分配寄存器范围。在要写入的数据中,至少用于识别机器人控制器30的信息(例如,IP地址或设备名称)和与其对应的寄存器范围相互关联就足够了。即,将定义存储用于对机器人控制器30进行控制的变量的寄存器的寄存器范围的数据写入上级控制设备20的数据存储装置200就足够了。上级控制设备20参考写入该上级控制设备20的用以识别哪个寄存器范围已分配给哪个机器人控制器30的数据。
在本实施例中,上级控制设备20能够控制多个机器人控制器30,因此针对每个机器人控制器30,分配模块106分配为每个机器人控制器30所确定的寄存器范围,以用于对每个机器人控制器30进行。分配模块106分配分别对应于“n”个机器人控制器30的“n”个寄存器范围。在图10所示的数据存储示例中,分配模块106为第一机器人控制器30的控制分配从“GW00000”到“GW04259”的寄存器范围。分配模块106为第二机器人控制器30的控制分配从“GW05000”到“GW09259”的寄存器范围。分配模块106为第三机器人控制器30的控制分配从“GW10000”到“GW14259”的寄存器范围。
例如,机器人控制器30存储用于执行预定操作的程序,并且寄存器范围包括针对用于存储用于调用机器人控制器30的程序并使机器人控制器30执行该程序的命令的命令区域的寄存器编号。分配模块106为机器人控制器30的控制分配包括针对该命令区域的寄存器编号的寄存器范围。程序是设备程序或机器人程序的程序。
在本实施例中,图9所示的从“2163”到“2499”的偏移的全部或部分的区域对应于命令区域。本实施例中的命令区域是可以存储至少一个命令的区域就足够了。例如,命令区域可以是用于存储单个命令的区域,而不是用于存储多个命令(例如,主命令和子命令)的区域。命令是用于调用设备程序或设备程序中包含的处理(例如机器人程序)的一部分的信息。
例如,寄存器范围包括:针对用于存储指向机器人控制器30的命令的命令区域的寄存器编号;以及针对用于存储请求执行存储在命令区域中的命令的命令请求ID区域的寄存器编号。分配模块106为机器人控制器30的控制分配包括用于命令区域的寄存器编号和用于命令请求ID区域的寄存器编号的寄存器范围。在本实施例中,存储命令请求ID的偏移“2163”对应于命令请求ID区域。存储主命令的偏移“2165”和存储子命令的偏移“2166”对应于命令区域。
此外,寄存器范围除了可用于对机器人控制器30的控制之外,还可以用于与机器人控制器30的操作有关的监视和数据收集中的至少一者。例如,分配模块106分配所确定的寄存器范围以用于对机器人控制器30进行控制以及监视和数据收集中的至少一者。在本实施例中,寄存器范围被分配给这两者,但是可以仅分配这些寄存器范围中的任何一个。表示通过传感器检测机器人40的动作的检测结果的变量存储在用于监视的寄存器范围中。表示机器人控制器30的操作结果和中心的检测结果的变量被存储在用于数据收集的寄存器范围中。
[3-2.上级控制设备实现的功能]
如图8所示,上级控制设备20包括数据存储装置200、寄存器模块201和操作控制模块202。数据存储装置200主要由存储装置22实现。寄存器模块201和操作控制模块202中的每一个主要由CPU 21实现。
[数据存储装置]
数据存储装置200被配置为存储用于对机器人控制器30进行控制的数据。例如,数据存储装置200存储控制程序和参数。此外,例如,数据存储装置200可以存储固件或另一程序,或者可以存储用于将数据传输到数据收集设备50的程序。稍后描述的操作控制模块202被配置为基于这些程序和参数来对机器人控制器30进行控制。
进一步地,例如,数据存储装置200存储工程设备10设置的设置内容。在本实施例中,寄存器由工程设备10的分配模块106分配,因此数据存储装置200存储详细定义数据D2。详细定义数据D2与工程设备10的数据存储装置100中存储的相同。数据存储装置200可以仅存储详细定义数据D2的一部分。
[寄存器模块]
寄存器模块201被配置为将多个变量中的每一个存储在工程设备10所分配的寄存器范围内。在本实施例中,描述了寄存器模块201为CPU 21中包含的多个寄存器的集合的情况,但是寄存器模块201可以是包括在存储装置22或另一信息存储介质中的多个寄存器的集合。寄存器模块201可以存储用于控制机器人控制器30的变量以外的变量。寄存器模块201将用于控制机器人控制器30的变量存储在分配模块106所分配的与每个机器人控制器30对应的寄存器范围内。
[操作控制模块]
操作控制模块202被配置为基于多个变量和控制程序来控制机器人控制器30的操作。例如,操作控制模块202将指向给定的机器人控制器30的命令写入包括在与给定的机器人控制器30对应的寄存器范围内的寄存器。操作控制模块202参考在数据存储装置200中记录的详细定义数据D2,以识别哪个机器人控制器30对应于哪个寄存器范围,并将命令写入所识别的寄存器范围中的寄存器。写入寄存器的命令由操作控制模块202传输到机器人控制器30。
在这种情况下,通过以当第一机器人控制器30执行机器人程序时要执行的处理作为示例,描述了操作控制模块202的处理。在该实施例中,描述了将机器人程序的选择和机器人程序的执行准备为单独的命令的情况,但是这些可以组合为一个命令。也就是说,可以在选择机器人程序之后立即执行机器人程序。
如图10所示,“GW00000”到“GW04259”被分配作为与第一机器人控制器30对应的寄存器范围。操作控制模块202将指示机器人控制功能的值(例如,1)写入“GW2165”处的寄存器作为主要命令。操作控制模块202将表示机器人程序选择的值(例如,3)写入“GW2166”处的寄存器作为子命令。
操作控制模块202将机器人程序名称和机器人程序的开始部分写入寄存器的从“GW2167”到“GW2499”的部分。机器人程序的开始部分是用于识别在与机器人程序对应的多个程序代码中要启动执行的程序代码的信息。当以梯形语创建机器人程序时,机器人程序的开始部分是行号。当要从机器人程序的开头而不是机器人程序的某中点开始机器人程序时,不需要写入此开始部分。当操作控制模块202完成上述写入时,操作控制模块202在“GW2163”处递增命令请求ID,以使机器人控制器30选择机器人程序。
因此,用于选择机器人程序的处理得以完成。当操作控制模块202完成上述写入时,操作控制模块202将与从“GW2042”到“GW2499”处的寄存器相对应的传输数据进行传输。机器人控制器30接收此传输数据,并将传输数据写入存储装置301以进行稍后描述的通信。机器人控制器30的执行模块302参考存储装置301以用于通信,以确定命令请求ID是否已递增。在这种情况下,命令请求ID被递增,因此执行模块302执行主命令和子命令,并读出由传输数据中包括的机器人程序名称指示的机器人程序。当指定了开始部分时,执行模块302从开始部分读出机器人程序。已经读出的机器人程序被加载到数据存储装置300或存储装置301中以用于通信。
机器人控制器30的执行模块302将指示执行主命令和子命令的结果的响应数据传输到上级控制设备20。该响应数据具有与图9的“0012”到“2041”处所示的格式相同的格式。例如,执行模块302传输响应数据,该响应数据包括:命令请求ID、对应于执行命令的主命令和子命令;和返回值,该返回值指示已正常执行命令。当命令尚未正常执行时,响应数据中包含对该效果的返回值。
当操作控制模块202接收到响应数据时,操作控制模块202将响应数据写入寄存器模块201。操作控制模块202确定传输数据中包括的命令请求ID、主命令和子命令是否匹配响应数据中包括的命令请求ID、主命令和子命令。操作控制模块202还确定响应数据中包括的返回值是否指示正常值。操作控制模块202在匹配的确定和正常值的确定均是肯定时前进到后续处理。当匹配的确定和正常值的确定中的至少一者是否定时,可以在不前进到后续处理的情况下返回错误。
操作控制模块202将指示机器人控制功能的值(例如,1)写入“GW2165”处的寄存器作为主命令。操作控制模块202将指示机器人程序执行的值(例如,5)写入“GW2166”处的寄存器作为子命令。操作控制模块202将命令请求ID在“GW2163”处递增。在执行机器人程序的情况下,假设没有内容被写入“GW2167”到“GW2499”处的寄存器。
因此,用于执行机器人程序的处理得以完成。操作控制模块202将与从“GW2042”到“GW2499”的寄存器相对应的传输数据进行传输。以与上述流程中的方式相同,机器人控制器30的执行模块302检测到命令请求ID已递增,并执行主命令和子命令。已经由先前的主命令和先前的子命令读取了机器人程序,因此执行模块302执行已经读出的机器人程序。当指定了机器人程序的开始部分时,执行模块302从指定的开始部分执行机器人程序。当执行机器人程序时,以与上述流程相同的方式传输响应数据,并且确定机器人程序是否正常执行。
上面已经描述了对第一机器人控制器30的控制,但是第二和后续机器人控制器30也以相同的方式控制。当操作控制模块202要控制给定的机器人控制器30时,操作控制模块202可以重写寄存器模块201中对应于给定的机器人控制器30的寄存器范围中的寄存器中的变量,从而控制给定的机器人控制器30。
机器人控制器30的控制方法不限于上述示例。操作控制模块202可以在不使用主命令和子命令的情况下控制机器人控制器30。例如,操作控制模块202可以通过将一个命令写入给定的机器人控制器30对应的寄存器范围中的寄存器来控制给定的机器人。在另一示例中,当作为启动给定的机器人控制器30的设备程序的条件的变量要存储在与给定的机器人控制器30对应的寄存器范围内的寄存器中时,操作控制模块202可以重写该变量的值,从而指示给定的机器人控制器30开始执行设备程序。
另外,可以有规律地实现存储在寄存器模块201中的部分或全部变量与存储在用于通信的存储装置301中的部分或全部变量之间的一致性。此外,上级控制设备20和机器人控制器30可以通过异步通信网络彼此连接,或者可以通过同步通信网络彼此连接。此外,例如,可以在上级控制设备20和机器人控制器30之间有规律地传输和接收数据。
[3-3.机器人控制器实现的功能]
如图8所示,机器人控制器30包括数据存储装置300、用于通信的存储装置301和执行模块302。数据存储装置300主要由存储装置32实现。用于通信的存储装置301和执行模块302主要由CPU 31实现。
[数据存储装置]
数据存储装置300被配置为存储机器人控制器30执行预定操作所需的数据。例如,数据存储装置300存储设备程序和参数。此外,例如,数据存储装置300存储不包括在设备程序中的机器人程序的程序。
[用于通信的存储单元]
用于通信的存储装置301被配置为存储从上级控制设备20接收的多个变量中的每一个。例如,用于通信的存储装置301存储包括在从上级控制设备20接收的接收数据中的变量。该变量具有与存储在寄存器模块201中的变量相同的值。用于通信的存储装置301可以存储其他变量。在该实施例中,描述了由CPU 31中的寄存器实现的用于通信的存储装置301的情况,但是数据存储装置300可以在不分别提供数据存储装置300和用于通信的存储装置301的情况下存储多个变量中的每一个。假设预先定义用于通信的存储装置301的寄存器系统。该寄存器系统原则上是固定的而无法改变,但寄存器系统可以是能由工程工具改变的。
[执行模块]
执行模块302被配置为基于存储在数据存储装置300中的程序和存储在用于通信的存储装置301中的变量执行预定处理。执行模块302执行命令的流程如上所述。也就是说,执行模块302确定是否已经递增了用于通信的存储装置301中记录的命令请求ID。当执行模块302确定命令请求ID已经递增时,执行模块302基于主命令和子命令的组合执行处理。假设预先定义主命令和子命令的组合与要执行的处理内容之间的关系。该定义可以在设备程序中定义,或者可以单独准备定义文件并存储在数据存储装置300中。执行模块302可以在执行模块302检测到作为用于启动给定的设备程序的条件的变量已成为预定值时执行给定的设备程序。
[3-4.数据收集设备实现的功能]
如图8所示,数据收集设备50包括数据存储装置500。数据存储装置500主要由存储装置52实现。数据存储装置500存储收集数据,该收集数据存储从上级控制设备20收集的变量。收集数据是存储指定为收集目标的变量的值的数据。收集数据可以在特定时间点存储变量的值,或者可以存储变量值的时间顺序变化。另外,收集数据可以仅存储一个变量的值,或者可以存储多个变量的值。在另一示例中,数据存储装置500可以存储用于收集数据的分析程序。
[4.要在实施例中的生产系统中执行的处理]
图11是用于示出要在实施例中的生产系统1中执行的处理的示例的流程图。在该实施例中,描述了在要在生产系统1中执行的处理过程中,用户通过使用工程工具来执行通信设置的处理。图11中所示的处理由执行存储在存储装置12中的工程工具的CPU 11执行。图11中所示的处理是由图8中所示的功能块执行的处理的示例。
如图11所示,工程设备10激活工程工具(步骤S1),并且当从菜单画面(未示出)中选择详细定义时,在显示器15上显示详细定义画面G1(步骤S2)。在这种情况下,描述了用户执行新通信设置的情况。因此,在步骤S2中显示的详细定义画面G1处于初始状态,如图2所示。
工程设备10基于操作接口14的检测信号识别用户在详细定义画面G1上的操作(步骤S3)。在该流程中,描述了执行用于指定系统配置的操作、用于指定传输类型的操作、用于指定起始寄存器编号的操作、用于指定本站端口的操作、用于指定机器人控制器30的IP地址的操作、或用于保存详细定义的操作的情况。当执行另一操作(例如,用于输入注释的操作)时,可以执行与另一操作对应的处理。
当执行用于指定系统配置的操作(步骤S3中的“系统配置”)时,工程设备10显示窗口W10,并在详细定义画面G1上显示用户指定的系统配置和对应于系统配置的输入表单F10(步骤S4)。当执行用于指定传输类型的操作(步骤S3中的“传输类型”)时,工程设备10在详细定义画面G1上显示用户指定的传输类型(步骤S5)。然后,工程设备10返回到步骤S3的处理。
当执行用于指定起始寄存器编号的操作(步骤S3中的“起始寄存器编号”)时,工程设备10在详细定义画面G1上显示用户指定的起始寄存器编号(步骤S6)。工程设备10基于存储在存储装置12中的结构数据D1在详细定义画面G1上显示结束寄存器编号(步骤S7),并返回到步骤S3的处理。在步骤S7中,工程设备10获取通过将与结构数据D1中所示的大小相对应的值加到起始寄存器编号而获得的值,作为结束寄存器编号。步骤S7的处理是用于确定寄存器范围的处理。
当执行用于指定本站端口的操作(步骤S3中的“本站端口”)时,工程设备10在详细定义画面G1上显示由用户指定的本站端口(步骤S8),并返回到步骤S3的处理。当执行用于指定机器人控制器30的IP地址的操作(步骤S3中的“IP地址”)时,工程设备10在详细定义画面G1上显示由用户指定的机器人控制器30的IP地址(步骤S9),并返回到步骤S3的处理。
当执行用于保存详细定义的操作(步骤S3中的“保存”)时,工程设备10确定寄存器范围是否彼此重叠(步骤S10)。在步骤S10中,工程设备10对于机器人控制器30的每个寄存器范围确定每个寄存器范围是否与另一机器人控制器30的寄存器范围以及用于另一目的的寄存器范围中的任何一个重叠。假设预先在存储装置12中记录哪个寄存器范围分配用于什么目的。
当工程设备10确定寄存器范围彼此重叠时(步骤S10中为是),工程设备10显示包括消息的窗口W11(步骤S11),并返回到步骤S3的处理。当工程设备10并未确定寄存器范围彼此重叠时(步骤S10中为否),工程设备10分配上级控制设备20的指定寄存器范围以用于对机器人控制器30进行控制(步骤S12),该处理结束。
利用上述生产系统1,可以分配上级控制设备20的寄存器中用户期望的自由选择的寄存器范围,用于控制机器人控制器30。当上级控制设备20的寄存器包括希望用于另一目的的预先确定的寄存器范围时,通过指定寄存器编号以避免该寄存器范围,可以允许使用预先确定的寄存器范围以用于其他目的。可以通过指定寄存器编号来有效地利用寄存器,以防止上级控制设备20的寄存器被浪费。寄存器的有效利用使得确保寄存器用于控制机器人控制器30,即使当上级控制设备20在存储容量方面较小也是如此。因此,可以减小上级控制设备20的成本。
此外,生产系统1使得要在寄存器范围内指定的起始寄存器编号能被分配以用于控制机器人控制器30,从而促进寄存器范围的指定,因此提高了用户的便利性。
此外,生产系统1基于用户指定的寄存器编号和在机器人控制器30与上级控制设备20之间的通信配置文件中定义的数据结构来分配寄存器范围,从而能够确保该寄存器范围用于机器人控制器30与上级控制设备20之间的准确通信。
此外,当确定要用于控制机器人控制器30的寄存器范围和要用于另一目的的另一寄存器范围彼此重叠时,生产系统1输出预定警报,从而能够防止这些寄存器范围彼此重叠。结果,可以防止上级控制设备20的操作和机器人控制器30的控制被阻碍。
此外,在生产系统1中,即使当上级控制设备20控制多个机器人控制器30时,也可以分配用于控制多个机器人控制器30中的每一个的自由选择的寄存器范围,从而改善用户的便利性。
此外,生产系统1分配包括命令区域的寄存器编号的寄存器范围,用于控制机器人控制器30,从而能够在命令区域中存储用于调用和执行存储在机器人控制器30中的程序的命令,并从上级控制设备20调用存储在机器人控制器30中的程序。
此外,生产系统1分配包括命令区域中的寄存器编号和命令请求ID区域中的寄存器编号的寄存器范围,用于控制机器人控制器30,从而能够使机器人控制器30在准确的定时执行命令。例如,即使当在命令区域中存储了命令(在执行该命令的定时之外的定时)时,也能够防止执行命令,除非在命令请求ID区域中存储了用于请求执行命令的信息,从而能够防止命令被错误地执行。
此外,生产系统1分配被配置为控制机器人控制器30的上级控制设备20的寄存器中自由选择的寄存器范围,以用于控制机器人控制器30以及监视和数据收集中的至少一者。
[5.变形例]
本公开不限于上述实施例,并且可以在不脱离本公开的精神的情况下进行适当修改。
(1)例如,提供给工程工具的功能不限于该实施例中描述的寄存器分配功能。工程工具可以具有创建由上级控制设备20执行的控制程序的功能。在该变形例中,描述了通过显示分配用于控制给定的机器人控制器30的寄存器范围中包括的变量名来支持控制程序的创建的功能。
图12是本公开的变形例(1)中的功能框图。如图12所示,在变形例(1)中,除了在该实施例中描述的功能之外,创建模块107在工程设备10中实现。创建模块107主要由CPU 11实现。
该变形例中的显示控制模块101显示用于控制程序的创建画面,该控制程序用于使上级控制设备20能够控制机器人控制器30。例如,当从工程工具的菜单画面指定用于创建控制程序的图标时,显示控制模块101在显示器15上显示创建画面。
图13是用于示出创建画面的示例的图。在该变形例中,描述了当用户通过使用梯形语言创建控制程序时要显示的创建画面作为示例。如图13中所示,创建画面G2包括:显示区域A1,用于描述给定的机器人控制器30的控制程序的梯形图;和显示区域A2,用于显示存储在与机器人控制器30对应的寄存器范围内的变量。
关于显示区域A1的基本操作可以与用于支持创建程序的已知软件的基本操作相同。显示控制模块101基于用户的操作在显示区域A1中显示梯形图。在该变形例中,在描述对存储在上级控制设备20中的变量的处理时,可以从显示区域A2指定变量的名称。
如图9所示,变量具有层次结构。例如,显示控制模块101基于结构数据D1,通过树型菜单在显示区域A2中显示每个变量的层名。在图13中,用于控制机器人控制器30的变量由“Address(地址)”名称表示。当分配用于三个机器人控制器30的寄存器范围时,包括在三个机器人控制器30的寄存器范围内的变量名以树状方式显示在“地址”下。在显示区域A2中,也显示除了用于控制机器人控制器30的变量之外的变量。
在图13的示例中,字符串“Data_RC1(GW00000)”在显示区域A2中显示为针对第一机器人控制器30的变量组的名称。在该变形例中,描述了将起始寄存器编号与变量组的名称一起写入的情况,但可以省略起始寄存器编号。变量组的名称可以存储在结构数据D1或详细定义数据D2中,或者可以存储在其他数据中。
如图13所示,当打开“Data_RC1(GW00000)”树时,第一机器人控制器30的变量以树状方式显示。例如,第一层中的名称在“Data_RC1(GW00000)”下直接显示。当打开第一层的名称时,显示与第一层对应的第二层中的名称。以相同的方式,以树状方式显示到底层(图9的示例中的第四层)的层中的名称。用户可以通过指定自由选择的层名打开树。
例如,当用户在第一层中打开“CommandData”树时,字符串“SyncCounter”和“CmdRequest”和其他字符串显示为与该层次结构相对应的第二层中的名称。当用户在第二层中打开“CmdRequest”树时,显示“CmdReqid”、“MainCmd”、“SubCmd”和“CmdArea”作为与此层次结构相对应的第三层中的名称。如图9所示,这个层次结构中没有第四层。第三层是该层次结构中最低的层,因此第三层中的名称对应于变量的名称。
虽然未显示在图13中,但当显示区域A2向下滚动时,显示针对第二机器人控制器30的变量组的名称“Data_RC2(GW05000)”和针对第三机器人控制器30的变量组的名称“Data_RC3(GW10000)”。在这种情况下,给出了用于创建与第一机器人控制器30对应的控制程序的过程作为示例,但是对应于第二和第三机器人控制器30的控制程序也可以通过相同的过程创建。
现在,给出了用于创建用于使第一机器人控制器30执行机器人程序的控制程序的过程作为示例。如该实施例中所述,为了使第一机器人控制器30执行机器人程序,需要在与第一机器人控制器30对应的寄存器范围中,在“GW02165”处将“1”写入主命令,在“GW02166”处将“5”写入子命令,然后在“GW02163”处递增命令请求ID。在显示区域A1中,需要描述梯形图,以便指示这些处理步骤。
例如,当用户指定显示区域A1中的预定行然后指定在显示区域A2中显示的“MainCmd”时,对应于第一机器人控制器30的主命令的变量名显示在显示区域A1中的指定行中。在图13的示例中,该变量名是通过将第零层中的“Data_RC1”、第一层中的“CommandData”、第二层中的“CmdRequest”、第三层中的“MainCmd”以点彼此连接来获得的字符串。对于显示区域A1,用户指定由该变量名指示的主命令要被设置为1。这完成了将“1”写入主命令的处理的描述。
此外,例如,当用户指定显示区域A1中的预定行然后指定在显示区域A2中显示的“SubCmd”时,在显示区域A1中的指定行中显示与第一机器人控制器30对应的子命令的变量名。在图13的示例中,该变量名是通过将第零层中的“Data_RC1”、第一层中的“CommandData”、第二层中的“CmdRequest”、第三层中的“SubCmd”以点彼此连接来获得的字符串。对于显示区域A1,用户指定由该变量名指示的子命令要被设置为5。这完成了将“5”写入子命令的处理的描述。
此外,例如,当用户指定显示区域A1中的预定行然后指定在显示区域A2中显示的“CmdReqid”时,在显示区域A1中的指定行中显示与第一机器人控制器30对应的命令请求ID的变量名。在图13的示例中,该变量名是通过将第零层中的“Data_RC1”、第一层中的“CommandData”、第二层中的“CmdRequest”、第三层中的“CmdReqid”以点彼此连接来获得的字符串。对于显示区域A1,用户指定由该变量名指示的命令请求ID要被递增。这完成了用于递增命令请求ID的处理的描述。
利用上述过程,完成了创建用于使第一机器人控制器30执行机器人程序的梯形图。如图13所示,用户还描述了用于开始执行控制程序的进入。例如,可以通过将与控制程序相关联的变量设置为预定值来启动控制程序的执行,或者可以通过另一方法启动。
创建模块107基于创建画面G2上的操作创建控制程序。例如,创建模块107基于显示区域A1中描述的梯形图来创建控制程序。作为从梯形图中创建控制程序的方法本身,可以采用已知方法。另外,创建模块107可以基于对应于程序语言的方法来创建控制程序。例如,当以机器人语言创建控制程序时,创建模块107可以通过对应于用户使用的机器人语言的方法创建控制程序。
如上所述,在该变形例中的显示控制模块101在创建画面G2上显示与包括在分配的寄存器范围内的多个寄存器编号相对应的变量名。在图13的示例中,最低层中的名称对应于变量名。在该变形例中,与寄存器范围内包括的多个寄存器编号对应的变量名具有层次结构,并且显示控制模块101基于变量名的层次结构以树状方式在创建画面上显示变量名。并不要求显示控制模块101以树状方式显示变量名。
当创建画面上显示的变量名被指定时,创建模块107创建控制程序,以便在与指定的变量名对应的寄存器编号处对寄存器进行。控制寄存器是指引用和重写存储在寄存器中的变量的至少一者。在上述示例中,重写命令请求ID、主命令和子命令中的每一个的值对应于对寄存器进行控制。
根据变形例(1),对应于分配用于控制机器人控制器30的寄存器范围内包括的多个寄存器编号的变量名显示在用于控制程序的创建画面G2上,从而允许用户在掌握变量名时创建控制程序,因此可以在创建控制程序时提高用户的便利性。
此外,创建控制程序以便在从创建画面G2指定的寄存器编号处控制寄存器,从而能够通过更简单的操作来创建控制程序,因此可以提高用户的便利性。
此外,以树状方式显示具有层次结构的变量名,从而能够实现更直观的用户界面。
(2)另外,例如,当上级控制设备20包括多种类型的寄存器时,接收模块102可以接收对多种类型寄存器的寄存器编号中的任何一个的指定。在该变形例中,描述了上级控制设备20包括被配置为当断开电源时保持数据的第一寄存器和被配置为当断开电源时避免保存数据的第二寄存器的情况。例如,第一寄存器是易失性存储装置或不支持电池备份的存储装置。同时,例如,第二寄存器是非易失性存储装置或支持电池备份的存储装置。
例如,接收模块102在详细定义画面G1上接收对第一寄存器或第二寄存器的指定。可以通过自由选择的操作来指定寄存器。例如,可以以可以在详细定义画面G1上指定寄存器的名称的方式显示寄存器的名称,或者可以基于用户输入的字符串指定寄存器。接收模块102接收对寄存器的指定和对寄存器编号的指定。例如,起始寄存器编号中的字符“GW”可能意味着寄存器的类型。在这种情况下,对寄存器的指定和对寄存器编号的指定被一起接收。
该变形例中的决策模块103基于所指定的寄存器编号来确定与寄存器编号对应的类型的寄存器的寄存器范围。决策模块103的处理与实施例的处理的不同在于用户指定的寄存器的寄存器范围是在上级控制设备20的多个寄存器中确定的,而确定寄存器范围的方法本身如该实施例中所述。
例如,当用户指定第一寄存器和寄存器编号时,决策模块103确定对应于用户在第一寄存器中指定的寄存器编号的寄存器范围,作为控制机器人控制器30的寄存器范围。同时,例如,当用户指定第二寄存器和寄存器编号时,决策模块103确定对应于用户在第二寄存器中指定的寄存器编号的寄存器范围,作为用于控制机器人控制器30的寄存器范围。
分配模块106分配对应于多个类型寄存器中的指定寄存器编号的类型的寄存器的所确定寄存器范围,用于控制机器人控制器30。分配模块106的处理与实施例的处理的不同在于,由用户指定的寄存器的寄存器范围是在上级控制设备20的多个寄存器中确定的,而分配寄存器范围的方法本身如实施例中所述。在该变形例中,用于识别寄存器的信息被写入上级控制设备20。上级控制设备20基于用于识别寄存器和寄存器范围的信息来识别对应于给定的机器人控制器30的寄存器和寄存器范围。
例如,当用户指定第一寄存器和寄存器编号时,分配模块106分配对应于用户在第一寄存器中指定的寄存器编号的寄存器范围,作为用于控制机器人控制器30的寄存器范围。同时,例如,当用户指定第二寄存器和寄存器编号时,分配模块106分配对应于用户在第二寄存器中指定的寄存器编号的寄存器范围,作为用于控制机器人控制器30的寄存器范围。
根据变形例(2),即使当上级控制设备20包括多个类型的寄存器时,也可以分配自由选择的寄存器的自由选择的寄存器范围,因此可以提高用户的便利性。
(3)此外,例如,可以组合上述变形例。
进一步地,例如,上述每个功能可以由生产系统1中包括的任何设备来实现。例如,描述为由数据收集设备50实现的功能可以由上级控制设备20或机器人控制器30来实现。进一步地,例如,描述为由上级控制设备20实现的功能可以由数据收集设备50或机器人控制器30来实现。进一步地,例如,每个功能可以由一个计算机来实现,而不是由多台计算机共享。
此外,上述实施例是作为具体示例给出的,并不将在此公开的发明限于具体示例的配置和数据存储示例。本领域技术人员可以在例如物理组件的形状和数量、数据结构和处理的执行顺序方面对所公开的实施例进行各种修改。应当理解,这里公开的本发明的技术范围包括这样的修改。
Claims (14)
1.一种工程设备,被配置为对上级控制设备进行设置,所述上级控制设备能够控制一台或多台工业机器的控制设备,所述工程设备包括:
接收模块,被配置为接收对所述上级控制设备的寄存器编号的指定;
决策模块,被配置为基于所指定的寄存器编号,确定由所述上级控制设备对所述控制设备进行控制所要使用的寄存器范围;以及
分配模块,被配置为将所述上级控制设备的寄存器中所确定的所述寄存器范围分配以用于对所述控制设备的控制。
2.根据权利要求1所述的工程设备,
其中,所述接收模块被配置为接收对起始寄存器编号的指定,并且
其中,所述决策模块被配置为:基于所指定的起始寄存器编号,确定从所述起始寄存器编号到比所述起始寄存器编号靠后预定数的结束寄存器编号的范围,作为所述寄存器范围。
3.根据权利要求1或2所述的工程设备,其中,所述决策模块被配置为基于所指定的寄存器编号和在所述控制设备与所述上级控制设备之间的通信配置文件中定义的数据结构来确定所述寄存器范围。
4.根据权利要求1或2所述的工程设备,还包括:
确定模块,被配置为确定所确定的所述寄存器范围与要用于另一目的的另一寄存器范围是否彼此重叠;以及
输出模块,被配置为当确定所确定的所述寄存器范围与所述另一寄存器范围彼此重叠时,输出预定警报。
5.根据权利要求1或2所述的工程设备,
其中,所述上级控制设备被配置为对多个控制设备中的每一个控制设备进行控制,
其中,所述接收模块被配置为:针对所述多个控制设备中的每一个控制设备,接收对所述寄存器编号的指定,
其中,所述决策模块被配置为:针对所述多个控制设备中的每一个控制设备,基于为所述多个控制设备中的每一个控制设备所指定的所述寄存器编号,确定要由所述上级控制设备对所述多个控制设备中的每一个控制设备进行控制所要使用的寄存器范围,以及
其中,所述分配模块被配置为:针对所述多个控制设备中的每一个控制设备,将针对所述多个控制设备中的每一个控制设备所确定的所述寄存器范围分配以用于对所述多个控制设备中的每一个控制设备进行控制。
6.根据权利要求1或2所述的工程设备,
其中,所述控制设备被配置为存储用于执行预定操作的程序,
其中,所述寄存器范围包括用于命令区域的寄存器编号,所述命令区域用于存储用于调用所述控制设备的程序并使所述控制设备执行所述程序的命令,并且
其中,所述分配模块被配置为将包括用于所述命令区域的寄存器编号的所述寄存器范围分配以用于对所述控制设备的控制。
7.根据权利要求1或2所述的工程设备,
其中,所述寄存器范围包括用于命令区域的寄存器编号和用于命令请求信息区域的寄存器编号,所述命令区域用于存储指向所述控制设备的命令,所述命令请求信息区域用于存储命令请求信息,所述命令请求信息用于请求执行存储在所述命令区域中的命令,并且
其中,所述分配模块被配置为将包括用于所述命令区域的寄存器编号和用于所述命令请求信息区域的寄存器编号的所述寄存器范围分配以用于对所述控制设备的控制。
8.根据权利要求1或2所述的工程设备,
其中,所述寄存器范围除了用于对所述控制设备的控制之外,还用于与所述控制设备的操作有关的监视和数据收集中的至少一者,以及
其中,所述分配模块被配置为将所确定的所述寄存器范围分配以用于对所述控制设备的控制以及所述监视和所述数据收集中的至少一者。
9.根据权利要求1或2所述的工程设备,还包括:
显示控制模块,被配置为显示用于使能所述上级控制设备对所述控制设备的控制的控制程序的创建画面;以及
创建模块,被配置为基于在所述创建画面上的操作来创建所述控制程序,
其中,所述显示控制模块被配置为在所述创建画面上显示分别与包括在所分配的所述寄存器范围中的多个寄存器编号相对应的变量名。
10.根据权利要求9所述的工程设备,其中,所述创建模块被配置为当所述创建画面上显示的变量名被指定时,创建所述控制程序,以控制与所指定的变量名相对应的寄存器编号处的寄存器。
11.根据权利要求9或10所述的工程设备,
其中,与包括在所述寄存器范围中的所述多个寄存器编号相对应的变量名具有层次结构,并且
其中,所述显示控制模块被配置为基于所述变量名的所述层次结构,以树状方式在所述创建画面上显示所述变量名。
12.根据权利要求1或2所述的工程设备,
其中,所述上级控制设备包括多种类型的寄存器,
其中,所述接收模块被配置为接收对所述多种类型的寄存器的任一个寄存器编号的指定,
其中,所述决策模块被配置为基于所指定的寄存器编号,确定与所指定的寄存器编号相对应的类型的寄存器的所述寄存器范围,并且
其中,所述分配模块被配置为将所述多种类型的寄存器中与所指定的寄存器编号相对应的类型的寄存器的所确定的所述寄存器范围分配以用于对所述控制设备的控制。
13.一种用于对上级控制设备进行设置的工程方法,所述上级控制设备能够控制一台或多台工业机器的控制设备,所述工程方法包括:
接收对所述上级控制设备的寄存器编号的指定;
基于所指定的寄存器编号,确定由所述上级控制设备对所述控制设备进行控制所要使用的寄存器范围;并且
将所述上级控制设备的寄存器中所确定的所述寄存器范围分配以用于对所述控制设备的控制。
14.一种信息存储介质,所述信息存储介质存储有程序,所述程序用于使被配置为对上级控制设备进行设置的工程设备用作以下模块,所述上级控制设备能够控制一台或多台工业机器的控制设备:
接收模块,被配置为接收对所述上级控制设备的寄存器编号的指定;
决策模块,被配置为基于所指定的寄存器编号,确定由所述上级控制设备对所述控制设备进行控制所要使用的寄存器范围;以及
分配模块,被配置为将所述上级控制设备的寄存器中所确定的所述寄存器范围分配以用于对所述控制设备的控制。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020113004A JP7147808B2 (ja) | 2020-06-30 | 2020-06-30 | エンジニアリング装置、エンジニアリング方法、及びプログラム |
JP2020-113004 | 2020-06-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113867274A true CN113867274A (zh) | 2021-12-31 |
Family
ID=76553589
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110723414.7A Pending CN113867274A (zh) | 2020-06-30 | 2021-06-28 | 工程设备、工程方法和信息存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210405597A1 (zh) |
EP (1) | EP3933523A1 (zh) |
JP (1) | JP7147808B2 (zh) |
CN (1) | CN113867274A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001022413A (ja) * | 1999-07-09 | 2001-01-26 | Toshiba Corp | プログラマブルコントローラ |
US20080189536A1 (en) * | 2006-09-29 | 2008-08-07 | Rockwell Automation Technologies, Inc. | Interoperably configurable HMI system and method |
US20150032936A1 (en) * | 2013-07-23 | 2015-01-29 | Jason K. Yu | Techniques for Identifying Read/Write Access Collisions for a Storage Medium |
CN104412233A (zh) * | 2013-05-30 | 2015-03-11 | 英特尔公司 | 流水线调度中混叠寄存器的分配 |
JP2016105330A (ja) * | 2016-03-04 | 2016-06-09 | 株式会社日立製作所 | 制御コントローラ及びそのプログラミング方法 |
US20180210414A1 (en) * | 2017-01-25 | 2018-07-26 | Fanuc Corporation | Programmable controller |
US20200125060A1 (en) * | 2018-10-23 | 2020-04-23 | Keyence Corporation | Programmable Logic Controller And Program Creation Supporting Apparatus |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11249715A (ja) * | 1998-02-26 | 1999-09-17 | Yaskawa Electric Corp | シーケンスプログラムの自動生成方法とモーションコントローラ |
US6952811B1 (en) * | 1998-07-30 | 2005-10-04 | Mitsubishi Denki Kabushiki Kaisha | Ladder circuit editing system |
JP5810563B2 (ja) | 2011-03-15 | 2015-11-11 | オムロン株式会社 | 制御プログラム開発支援装置、制御プログラム開発支援用プログラム及び記録媒体 |
JP5899805B2 (ja) * | 2011-10-28 | 2016-04-06 | 株式会社ジェイテクト | プログラマブルコントローラの周辺装置 |
JP2017027259A (ja) * | 2015-07-17 | 2017-02-02 | 株式会社安川電機 | 機械制御プログラム作成装置、コンピュータプログラム、機械制御プログラム中のレジスタへの参照の入れ替え方法及びコンピュータにより実行可能な電子データ作成装置 |
-
2020
- 2020-06-30 JP JP2020113004A patent/JP7147808B2/ja active Active
-
2021
- 2021-06-22 EP EP21180828.2A patent/EP3933523A1/en active Pending
- 2021-06-28 US US17/359,663 patent/US20210405597A1/en active Pending
- 2021-06-28 CN CN202110723414.7A patent/CN113867274A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001022413A (ja) * | 1999-07-09 | 2001-01-26 | Toshiba Corp | プログラマブルコントローラ |
US20080189536A1 (en) * | 2006-09-29 | 2008-08-07 | Rockwell Automation Technologies, Inc. | Interoperably configurable HMI system and method |
CN104412233A (zh) * | 2013-05-30 | 2015-03-11 | 英特尔公司 | 流水线调度中混叠寄存器的分配 |
US20150032936A1 (en) * | 2013-07-23 | 2015-01-29 | Jason K. Yu | Techniques for Identifying Read/Write Access Collisions for a Storage Medium |
JP2016105330A (ja) * | 2016-03-04 | 2016-06-09 | 株式会社日立製作所 | 制御コントローラ及びそのプログラミング方法 |
US20180210414A1 (en) * | 2017-01-25 | 2018-07-26 | Fanuc Corporation | Programmable controller |
US20200125060A1 (en) * | 2018-10-23 | 2020-04-23 | Keyence Corporation | Programmable Logic Controller And Program Creation Supporting Apparatus |
Also Published As
Publication number | Publication date |
---|---|
EP3933523A1 (en) | 2022-01-05 |
US20210405597A1 (en) | 2021-12-30 |
JP2022011696A (ja) | 2022-01-17 |
JP7147808B2 (ja) | 2022-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7275236B1 (en) | Method for programming a multiple device control system using object sharing | |
US7747718B2 (en) | Control system apparatus, method for setting control system and setting program | |
US6725288B2 (en) | System for transmitting data between a device data area and a variable data area of a memory according to a memory map based on an identifying data of a device detected | |
US6826432B2 (en) | Process for programming an automation application | |
EP3489776B1 (en) | Control device, control method, and program | |
US20160125037A1 (en) | Information processing apparatus, information processing method, information processing program, and storage medium | |
CN112313587B (zh) | 数控系统的数据处理方法、计算机设备和存储介质 | |
US11165745B2 (en) | Control system, controller, and control method | |
CN107465620B (zh) | 一种通用数据路由器及其通信方法 | |
US11199993B2 (en) | Control system, development assistance device, and development assistance program | |
CN113867271B (zh) | 生产系统、上级控制装置、控制装置、通信方法以及存储介质 | |
CN113867274A (zh) | 工程设备、工程方法和信息存储介质 | |
CN109416530B (zh) | 一种从设备的输入输出控制方法、主控设备以及数控系统 | |
JP3939518B2 (ja) | 入出力アドレス設定装置、入出力アドレス設定プログラムおよびそれを記録した記録媒体 | |
CN102193536A (zh) | 用于封装设备级嵌入逻辑的宏功能块 | |
US20190081864A1 (en) | Gateway and method of determining machines to be networked at gateway | |
CN107561950B (zh) | 楼宇中控制器的编程方法及提供控制器编程工具的服务器 | |
JP4282961B2 (ja) | 制御コントローラにおけるデータの入出力定義を行うシステム | |
CN116009465B (zh) | 分布式数据采集方法及相关装置 | |
JP4001458B2 (ja) | タグ名共有化装置、タグ名共有化方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
CN115599358A (zh) | 数据读取方法、装置、可读存储介质和控制系统 | |
CN115268379A (zh) | 制造控制系统、方法、装置及存储介质 |
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 |