CN115437316A - 信息处理装置及方法 - Google Patents

信息处理装置及方法 Download PDF

Info

Publication number
CN115437316A
CN115437316A CN202210586940.8A CN202210586940A CN115437316A CN 115437316 A CN115437316 A CN 115437316A CN 202210586940 A CN202210586940 A CN 202210586940A CN 115437316 A CN115437316 A CN 115437316A
Authority
CN
China
Prior art keywords
data
priority
devices
virtual machine
unit
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
CN202210586940.8A
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor 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 Toyota Motor Corp filed Critical Toyota Motor Corp
Publication of CN115437316A publication Critical patent/CN115437316A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/41865Total 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 job scheduling, process planning, material flow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/32Operator till task planning
    • G05B2219/32252Scheduling production, machining, job shop

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

本发明提供一种信息处理装置及方法。设备控制部使用从多个设备中的至少一个设备即控制对象供给的输入数据来执行控制程序。设备控制部将得到的输出数据向控制对象供给。数据处理部对于从多个设备收集到的收集数据执行预先决定的数据处理。通信处理部控制多个设备、设备控制部及数据处理部之间的数据的收发。通信处理部从多个设备、设备控制部及数据处理部接收的数据包含表示数据的优先级的优先级信息。通信处理部将数据的优先级信息表示的优先级高的数据比优先级低的数据优先发送。

Description

信息处理装置及方法
技术领域
本公开涉及信息处理装置及方法。
背景技术
专利文献1记载了云服务器将构成控制设备的多个单元(设备)的控制所使用的参数一并管理的技术。参数例如是设定于网络单元的IP地址、设定于电源单元的容许电压。首先,控制设备的CPU单元将参数的取得要求向云服务器发送。参数的取得要求包含辨别单元的ID。云服务器当接收取得要求时,将关于根据取得要求包含的ID而确定的单元的参数向CPU单元发送。CPU单元设定从云服务器接收到的参数,按照设定的参数来执行控制程序。
【在先技术文献】
【专利文献】
【专利文献1】日本特开2018-77911号公报
发明内容
【发明的概要】
【发明要解决的课题】
在此,云服务器被推测为对于从多个设备受理的要求进行处理。在云服务器受理的要求中,可想到根据该要求的内容的不同而包含应优先地返回响应的要求和并非如此的要求。例如,控制设备在生产线中对控制对象设备进行控制的情况下,被要求在设定的时间内执行对于控制对象设备的处理。这是为了使生产线稳定运转。因此,云服务器不应推迟对于这样的控制设备的响应。然而,在专利文献1记载的结构的情况下,未设想考虑要求的优先级来处理要求的情况。因此,应即时响应的响应、例如对于控制设备的响应可能被推迟。
【用于解决课题的方案】
本公开可以作为以下的方式实现。
(1)根据本公开的方式,提供一种对多个设备进行控制的信息处理装置。该信息处理装置包括:设备控制部,对多个设备中的至少一个设备即控制对象进行控制,该设备控制部经由通信处理部接收从控制对象供给的输入数据,使用输入数据执行控制程序,将得到的输出数据向控制对象供给,从而控制控制对象;数据处理部,对从多个设备收集到的收集数据执行预先决定的数据处理;及通信处理部,控制多个设备、设备控制部及数据处理部之间的数据的收发。通信处理部将数据包含的表示优先级的信息表示优先级高的情况的数据比数据包含的表示优先级的信息表示优先级低的情况的数据优先发送。
根据这样的形态,通信处理部将优先级高的数据优先发送,由此应即时处理的响应不会被推迟。
(2)在上述方式的信息处理装置中,可以是,具备优先级数据存储部,该优先级数据存储部存储优先级定义数据,该优先级定义数据是将数据的目的地和数据的发送源与优先级建立对应而得到的数据。通信处理部参照保存于优先级数据存储部的优先级定义数据,根据目的地信息表示的目的地及发送源信息表示的发送源来判别优先级,所述目的地信息和所述发送源信息是接收到的数据分别包含的表示优先级的信息。
根据这样的形态,由于根据数据包含的目的地信息和发送源信息来判别优先级,因此能够利用简易的方法来判别优先级。
(3)在上述方式的信息处理装置中,可以是,数据处理部接收从多个设备供给的表示多个设备的运转状态的状态数据,对状态数据执行数据处理,将通过数据处理生成的结果数据向设备控制部供给。设备控制部使用从数据处理部供给的结果数据,变更控制对象的控制内容。
根据这样的形态,能够将多个设备的运转状态向对于控制对象的控制内容进行反馈。
(4)在上述方式的信息处理装置中,可以是,第一虚拟机、第二虚拟机及管理第一虚拟机及第二虚拟机的管理程序进行动作。设备控制部的功能由在第一虚拟机中的实时OS(实时操作系统)上动作的第一应用软件实现。数据处理部的功能由在第二虚拟机中的非实时OS(非实时操作系统)上动作的第二应用软件实现。通信处理部的功能由管理程序实现。
根据这样的形态,通过不同的虚拟机使设备控制部、数据处理部动作,而且,在实时OS上执行设备控制部,因此容易在设定的时间内对控制设备进行响应。
(5)根据本公开的另一方式,本公开也能够以在构建了虚拟环境的信息处理装置中由对虚拟机进行管理的管理程序执行的方法的方式实现。在该方式的信息处理装置中,第一虚拟机及第二虚拟机进行动作,所述第一虚拟机对多个设备中的至少一个设备即控制对象进行控制,所述第二虚拟机对从多个设备收集到的收集数据执行预先决定的数据处理。管理程序执行如下步骤:控制第一虚拟机、第二虚拟机及多个设备之间的数据的收发;判别从多个设备、第一虚拟机及第二虚拟机接收到的数据包含的表示数据的优先级的信息是否表示数据的优先级高的情况;及将优先级高的数据比优先级低的数据优先发送。
根据这样的形态,通过将优先级高的数据优先发送,应即时处理的响应不会被推迟。
(6)根据本公开的另一方式,本公开也能够以计算机执行的程序的方式实现。在该方式的计算机中,构成为,构建虚拟环境,第一虚拟机及第二虚拟机进行动作。在该方式的计算机中,第一虚拟机对多个设备中的至少一个设备即控制对象进行控制。而且,第二虚拟机对从多个设备收集到的收集数据执行预先决定的数据处理。该计算机执行的程序使该计算机实现如下功能:控制第一虚拟机、第二虚拟机及多个设备之间的数据的收发;判别从多个设备、第一虚拟机及第二虚拟机接收到的数据包含的表示数据的优先级的信息是否表示数据的优先级高的情况;及将优先级高的数据比优先级低的数据优先发送。
根据这样的形态,通过将优先级高的数据优先发送,应即时处理的响应不会被推迟。
附图说明
图1是表示实施方式的控制服务器的结构的概要的图。
图2是表示控制服务器的硬件结构的图。
图3是表示控制服务器的功能结构的图。
图4是表示参数存储部存储的数据的一例的图。
图5是表示优先级数据存储部存储的优先级定义数据的一例的图。
图6是表示优先发送数据包的情形的图。
图7是表示另一实施方式的控制服务器的功能结构的图。
图8是表示另一实施方式的控制服务器的其他的功能结构的图。
图9是表示另一实施方式的优先级数据存储部存储的组定义数据的一例的图。
图10是表示另一实施方式的优先级数据存储部存储的优先级定义数据的一例的图。
【附图标记说明】
1…处理器,2…主存储部,3…辅助存储部,4…接口,5…通信部,9…内部总线,10…管理程序,20、30、40、110、120,130…虚拟机,50…RTOS,60…非实时OS,71…第一应用,72…第二应用,73…第三应用,80…通信网络,91、92…控制对象设备,100…控制服务器,201、301、1201、1301…设备控制部,401…参数计算部,402…参数存储部,501…解析部,1001…通信处理部,1002…优先级数据存储部,1002a…组定义数据,1002b…优先级定义数据,1101…解析部,P1、P2、P3、P4…数据包
具体实施方式
A.实施方式
图1是表示实施方式的控制服务器100的结构的概要的图。控制服务器100是产业用的计算机。控制服务器100在生产现场作为对控制对象设备91、92进行控制的控制设备发挥功能。控制对象设备91、92是包含生产机械、传感器、驱动设备、远程IO设备等的FA(Factory Automation)设备。在实施方式中,控制对象设备91、92例如是具有多轴的加工机。更具体而言,控制对象设备91、92是对发动机体、齿轮这样的机动车的部件进行加工的机床。此外,控制服务器100执行由从控制对象设备91、92供给的数据决定的处理,算出控制对象设备91、92的控制所使用的参数的最优值。将控制服务器100也称为信息处理装置。
在控制服务器100中,在物理的计算机上构建出使多个虚拟的计算机动作的虚拟化环境。控制服务器100包括管理程序10、虚拟机20、30、40、RTOS(Real Time OperatingSystem)50、非实时OS(Operating System)60、第一应用71、第二应用72、第三应用73。
管理程序10是在硬件上动作而用于实现虚拟环境的软件。例如,管理程序10将控制服务器100的硬件资源分别分配给虚拟机20、30、40。
虚拟机20、30、40是由管理程序10构建的虚拟的计算机。虚拟机20、30、40在管理程序10上动作,由管理程序10管理。
RTOS50是能够以在预先确定的时间之前能够执行预先确定的处理的方式进行调度的OS。
非实时OS60是无法保证实时性的OS。非实时OS60例如是搭载有各种应用程序的通用OS。
第一应用71、第二应用72、第三应用73是使虚拟机20、30、40实现各种功能的应用软件。第一应用71是对控制对象设备91、92进行控制制的软件。第一应用71例如包括控制程序和控制程序的执行所使用的各种参数。控制程序是为了对控制对象设备91、92进行控制而通过梯形图、功能框图、顺序功能图等作成的程序。虚拟机20通过执行第一应用71而对控制对象设备91进行控制。虚拟机30通过执行第一应用71而对控制对象设备92进行控制。第二应用72是根据从控制对象设备91、92收集到的数据来算出控制对象设备91、92的控制所使用的参数的最优值的软件。第三应用73是由数据库管理系统所代表的、根据要求而保存并读出数据的软件。
控制服务器100例如配置于工厂内的服务器室。控制服务器100经由通信网络80与控制对象设备91、92通信。通信网络80是通过设置在工厂内的通信线实现的产业用的控制网络。
在实施方式中,在虚拟机20、30上分别执行RTOS50作为客人OS。在RTOS50上,执行对控制对象设备91、92进行控制用的第一应用71。通过具备这样的结构,虚拟机20、30作为PLC(Programable Logic Controller)这样的控制设备发挥功能。将虚拟机20、30也称为第一虚拟机。
在虚拟机40上,执行非实时OS60作为客人OS。在非实时OS60上,执行用于算出参数的最优值的第二应用72和作为数据库管理系统的第三应用73。通过具备这样的结构,虚拟机40作为执行信息处理的计算机发挥功能。将虚拟机40也称为第二虚拟机。
图2是表示控制服务器100的硬件结构的图。控制服务器100具备处理器1、主存储部2、辅助存储部3、接口4、通信部5。主存储部2、辅助存储部3、接口4、通信部5经由内部总线9连接于处理器1。
处理器1例如是CPU(Central Processing Unit)。处理器1通过将辅助存储部3存储的程序向主存储部2读入并执行而实现控制服务器100的各功能。
主存储部2例如是包含RAM(Random Access Memory)的主存储装置。从辅助存储部3将程序向主存储部2载入。而且,主存储部2被使用作为处理器1执行程序时的作业区域。
辅助存储部3例如是HDD(Hard Disk Drive)、SSD(Solid State Drive)、闪存器、EEPROM(Electrically Erasable Programmable Read-Only Memory)。辅助存储部3存储处理器1执行的程序、程序的执行所使用的各种数据。例如,在辅助存储部3保存有用于在控制服务器100构建虚拟化环境的程序。辅助存储部3通过处理器1的控制,将处理器1利用的数据向处理器1供给,并存储从处理器1供给的数据。
接口4例如是串行端口、USB(Universal Serial Bus)端口等I/O(Input/Output)端口。在接口4连接键盘、鼠标、触摸面板等输入装置。接口4将用户经由输入装置输入的信息向处理器1输出。而且,在接口4连接液晶显示器、有机EL(Electro Luminescence)显示器等显示装置。接口4将从处理器1供给的信息表示的图像向显示装置输出。
通信部5包括用于与外部的装置通信的网络接口电路。通信部5从外部接收信号,将通过该信号表示的数据向处理器1输出。而且,通信部5将表示从处理器1输出的数据的信号向外部的装置发送。
图3是表示控制服务器100的功能结构的图。控制服务器100具备设备控制部201、设备控制部301、参数计算部401、参数存储部402、通信处理部1001、优先级数据存储部1002。设备控制部201包含于虚拟机20。设备控制部301包含于虚拟机30。参数计算部401和参数存储部402包含于虚拟机40。通信处理部1001和优先级数据存储部1002包含于管理程序10。
设备控制部201作为对控制对象设备91进行控制的控制设备发挥功能。设备控制部201的功能通过图1所示的虚拟机20执行第一应用71来实现。将第一应用71也称为第一应用软件。
图3所示的设备控制部301作为对控制对象设备92进行控制的控制设备发挥功能。设备控制部301的功能通过图1所示的虚拟机30执行第一应用71来实现。
图3所示的设备控制部201、301例如分别进行以下那样的处理,对控制对象设备91、92分别进行控制。
设备控制部201使用从控制对象设备91供给的数据作为输入值而依次执行控制程序内的命令。设备控制部201经由通信处理部1001从控制对象设备91接收数据。设备控制部201当执行控制程序内的最后的命令时,将包含执行控制程序而得到的输出值的数据经由通信处理部1001向控制对象设备91发送。设备控制部201经由通信处理部1001从控制对象设备91新接收数据。设备控制部201使用新供给的数据作为输入值,再次依次执行控制程序内的命令。设备控制部201通过反复进行该循环而对控制对象设备91进行控制。设备控制部301对控制对象设备92进行控制的方法也同样。将控制对象设备91、92向设备控制部201、301供给的数据也称为输入数据。将设备控制部201、301向控制对象设备91、92供给的数据也称为输出数据。
在以下的说明中,以设备控制部201和控制对象设备91为例进行说明,但是设备控制部301和控制对象设备92也具备同样的结构。
控制对象设备91向设备控制部201供给的数据包括例如工件的定位的完成的通知、旋转轴的旋转的完成的通知等。设备控制部201向控制对象设备91供给的数据包括指定旋转轴、转速、进给速度等的信息。
例如,当从控制对象设备91接收到工件的定位的完成的通知时,设备控制部201执行控制程序,将表示接下来旋转的旋转轴、转速、进给速度的数据向控制对象设备91供给。当从控制对象设备91接收到旋转轴的旋转的完成的通知时,设备控制部201执行控制程序,将表示接下来旋转的旋转轴、转速、进给速度的数据向控制对象设备91供给。
这样,控制对象设备91、92按照设备控制部201、301输出的输出值进行动作。当输出值在设定的时间内未向控制对象设备91、92供给时,控制对象设备91、92的动作延迟。由此,设备控制部201、301需要在设定的时间内执行控制程序的1循环。
此外,设备控制部201、301经由通信处理部1001从参数计算部401接收控制对象设备91、92的控制所使用的参数的最优值。设备控制部201、301当接收到参数的最优值时,对控制程序的执行所使用的参数的值进行更新。由此,变更设备控制部201、301执行的控制对象设备91、92的控制内容。
参数计算部401经由通信处理部1001从控制对象设备91、92接收数据。将该数据也称为收集数据。参数计算部401蓄积从控制对象设备91、92收集到的数据。参数计算部401根据蓄积的收集数据,算出控制对象设备91、92的控制所使用的参数的最优值。将参数计算部401也称为数据处理部。
控制对象设备91、92向参数计算部401供给的数据包括表示控制对象设备的运转状态的信息。将该数据也称为状态数据。该数据包括例如关于各旋转轴的切削速度、转矩值、安装于旋转轴的工具的温度的信息。控制对象设备91、92例如可以在决定的时刻,向参数计算部401发送表示运转状态的数据。或者,控制对象设备91、92可以对来自参数计算部401的要求进行响应而向参数计算部401发送表示运转状态的数据。
另外,参数计算部401预先具有表示在控制对象设备91、92的各轴安装的工具的信息(工具的种类、工具的刀的材质等)的数据。参数计算部401基于该数据和从控制对象设备91、92供给的数据,算出工具的发热量,算出各温度的最优的切削速度。最优的切削速度是能够抑制工具的磨损那样的切削速度。在此,参数计算部401按照加工对象的各材料,算出最优的切削速度。参数计算部401生成包含最优的切削速度的数据,将生成的数据保存于参数存储部402。将该数据也称为结果数据。
参数计算部401将保存于参数存储部402的数据经由通信处理部1001向设备控制部201、301发送。具体而言,参数计算部401将保存于参数存储部402的参数中的、设备控制部201为了控制对象设备91的控制而使用的参数向设备控制部201发送。参数计算部401将保存于参数存储部402的参数中的、设备控制部301为了控制对象设备92的控制而使用的参数向设备控制部301发送。
参数计算部401例如对来自通信处理部1001的要求进行响应,或者成为决定的时刻时,将保存于参数存储部402的参数向设备控制部201、301发送。设备控制部201、301使用新供给的参数,执行控制程序。例如,在从参数计算部401供给了切削速度的最优值的情况下,设备控制部201、301通过控制程序的执行,根据切削速度的最优值和预先定义的工具的刀径,能够算出最优的转速。参数计算部401的功能通过图1所示的虚拟机40执行第二应用72来实现。将第二应用72也称为第二应用软件。
图3所示的参数存储部402存储参数计算部401算出的各种参数。
图4是表示参数存储部402存储的数据的一例的图。在图示的例子中,在参数存储部402,分别关于旋转轴,保存有分别关于设备的旋转轴的切削速度的最优值的数据。在此,将关于工具的温度和加工对象的材料分别算出的切削速度的最优值的数据保存于参数存储部402。参数存储部402的功能通过图1所示的虚拟机40执行第三应用73来实现。
图3所示的通信处理部1001遵照产业用的通信协议,与控制对象设备91、92通信。产业用的通信协议例如为EtherNet/IP(商标)。通信处理部1001与虚拟机20、30、40通信。在以下的说明中,通信以数据包单位进行。
通信处理部1001当接收到数据包时,从接收到的数据包包含的信息中辨别数据包的目的地和发送源。数据包包括表示目的地的设备或虚拟机的目的地IP(InternetProtocol)地址和表示发送源的设备或虚拟机的发送源IP地址。向在控制服务器100上动作的虚拟机20、30、40分别分配不同的IP地址。
此外,数据包包括表示目的地的应用的目的地端口的值和表示发送源的应用的发送源端口的值。将目的地端口的值也称为目的地信息。将发送源端口的值也称为发送源信息。目的地端口的值是表示目的地为设备控制部201、301、参数计算部401、控制对象设备91、92中的哪个的值。发送源端口的值是表示发送源为设备控制部201、301、参数计算部401、控制对象设备91、92中的哪个的值。由于控制对象设备91、92不是应用,因此向控制对象设备91、92分配预先决定的值。
设备控制部201、301、参数计算部401、控制对象设备91、92发送例如在发送的数据中附加了包含目的地IP地址和发送源地址的IP(Internet Protocol)标题、包含目的地端口和发送源端口的TCP(Transmission Control Protocol)标题的数据包。
通信处理部1001例如根据IP标题包含的目的地IP地址和发送源IP地址,判别目的地的设备或虚拟机、发送源的设备或虚拟机。通信处理部1001例如根据TCP标题的目的地端口和发送源端口,判别目的地和发送源是设备控制部201、301、参数计算部401、控制对象设备91、92中的哪个。
通信处理部1001从控制对象设备91、92、虚拟机20的设备控制部201、虚拟机30的设备控制部301、虚拟机40的参数计算部401接收数据包,向适当的目的地转送数据包。这样,通信处理部1001对控制对象设备91、92、设备控制部201、301、参数计算部401之间的数据的收发进行控制。即,对控制对象设备91、92、设备控制部201、301、参数计算部401之间的数据的收发进行控制的步骤由通信处理部1001执行。而且,通信处理部1001也可以说是发挥作为所谓开关的作用。
图5是表示优先级数据存储部1002存储的数据的一例的图。优先级数据存储部1002存储将数据的目的地和数据的发送源与优先级建立对应而得到的定义数据。将保存于优先级数据存储部1002的数据也称为优先级定义数据。例如,控制服务器100的管理者在优先级数据存储部1002中预先保存数据。在优先级数据存储部1002保存将目的地端口的值和发送端口的值与优先级建立对应而得到的数据。在实施方式中,使用目的地端口的值和发送端口的值作为表示优先级的信息。在实施方式中,对目的地端口或发送源端口设立如下那样的值。“P91”是作为表示控制对象设备91的值而对目的地端口或发送源端口设定的值。“P92”是表示控制对象设备92的值。“P201”是表示设备控制部201的值。“P301”是表示设备控制部301的值。“P401”是表示参数计算部401的值。
在实施方式中,经由通信处理部1001的数据包(数据)的推移存在四个模式。
(a)第一模式
在第一模式中,数据包的发送源为控制对象设备91、92,数据包的目的地为设备控制部201、301。控制对象设备91发送将虚拟机20的设备控制部201设为目的地的数据包。在该情况下,由于数据包的目的地IP地址指定虚拟机20,因此该数据包向控制服务器100发送。通信处理部1001当判别为接收到的数据包的目的地为虚拟机20的设备控制部201时,将数据包向虚拟机20发送。而且,控制对象设备92发送将虚拟机30的设备控制部301设为目的地的数据包。在该情况下,由于数据包的目的地IP地址指定虚拟机30,因此该数据包向控制服务器100发送。通信处理部1001当判别为接收到的数据包的目的地为虚拟机30的设备控制部301时,将数据包向虚拟机30发送。
(b)第二模式
在第二模式中,数据包的发送源为设备控制部201、301,数据包的目的地为控制对象设备91、92。设备控制部201发送将控制对象设备91设为目的地的数据包。该数据包向通信处理部1001交付。通信处理部1001当判别为数据包的目的地为控制对象设备91时,将数据包向控制对象设备91发送。而且,设备控制部301发送将控制对象设备92设为目的地的数据包。该数据包向通信处理部1001交付。通信处理部1001当判别为数据包的目的地为控制对象设备92时,将数据包向控制对象设备92发送。
(c)第三模式
在第三模式中,数据包的发送源为控制对象设备91、92,数据包的目的地为参数计算部401。控制对象设备91、92发送将参数计算部401设为目的地的数据包。在该情况下,由于数据包的目的地IP地址指定虚拟机40,因此该数据包向控制服务器100发送。通信处理部1001当判别为接收到的数据包的目的地为虚拟机40的参数计算部401时,将数据包向虚拟机40发送。
(d)第四模式
在第四模式中,数据包的发送目的地为参数计算部401,数据包的目的地为设备控制部201、301。参数计算部401发送将设备控制部201或设备控制部301设为目的地的数据包。该数据包向通信处理部1001交付。通信处理部1001当判别为数据包的目的地为虚拟机20的设备控制部201时,将数据包向虚拟机20发送。通信处理部1001当判别为数据包的目的地为虚拟机30的设备控制部301时,将数据包向虚拟机30发送。
关于上述的四个模式的数据包的推移中的、控制对象设备91、92与设备控制部201、301之间的数据包的收发(第一模式、第二模式),不希望延迟。如上所述,这是因为,从设备控制部201、301向控制对象设备91、92的输出值的供给的延迟会导致控制对象设备91、92的运转延迟。
另一方面,即使从控制对象设备91、92向参数计算部401的数据包的发送(第三模式)延迟,也不会对生产线的运转造成影响。即使从参数计算部401向设备控制部201、301的数据包的发送(第四模式)延迟,也不会对生产线的运转造成影响。
通信处理部1001具备以下那样的结构,由此关于第一模式、第二模式的数据包的收发,能防止延迟的发生。通信处理部1001在决定的期间接收到多个数据包的情况下,根据数据包包含的目的地端口的值和发送源端口的值、保存于优先级存储部1002的优先级定义数据,判别数据包的优先级是否高。通信处理部1001将接收到的多个数据包中的优先级高的数据包比优先级低的数据包优先发送。即,通过通信处理部1001执行判别数据包的优先级是否高的步骤和将优先级高的数据包比优先级低的数据包优先发送的步骤。
在实施方式中,通信处理部1001优先发送目的地为设备控制部201、301且发送源为控制对象设备91、92的数据包。而且,通信处理部1001优先发送目的地为控制对象设备91、92且发送源为设备控制部201、301的数据包。
具体而言,通信处理部1001在目的地端口的值为表示设备控制部201或设备控制部301的值且发送源端口的值为表示控制对象设备91或控制对象设备92的值时,判别为该数据包的优先级高。通信处理部1001在目的地端口的值为表示控制对象设备91或控制对象设备92的值且发送源端口的值为表示设备控制部201或设备控制部301的值时,判别为该数据包的优先级高。
通信处理部1001在目的地端口的值为表示参数计算部401的值且发送源端口的值为表示控制对象设备91或控制对象设备92的值时,判别为该数据包的优先级低。通信处理部1001在发送源端口的值为表示参数计算部401的值且目的地端口的值为表示设备控制部201或设备控制部301的值时,判别为该数据包的优先级低。通信处理部1001在决定的期间接收到多个数据包的情况下,无论数据包的到达顺序如何,都先发送优先级高的数据包,在优先级高的数据包之后发送优先级低的数据包。决定的期间可以设为与在通信网络80中设定的通信周期相同的期间。例如,在控制服务器100与控制对象设备91、92遵照EtherNet/IP的协议进行通信的情况下,可以将该期间设为与为了周期性的通信而设定的作为RPI(Request Packet Interval)设定的周期相同的期间。
图6是表示通信处理部1001优先发送数据包的情形的图。在通信处理部1001,在决定的期间内,四个数据包到达通信处理部1001。决定的期间是以决定时间轴的间隔划分的期间。需要说明的是,设备控制部201、301以毫秒级,对控制对象设备91、92进行控制。因此,决定的期间是极短的期间。在图示的例子中,数据包P1的目的地为参数计算部401,发送源为控制对象设备92。数据包P2的目的地为设备控制部201,发送源为控制对象设备91。数据包P3的目的地为设备控制部301,发送源为参数计算部401。数据包P4的目的地为设备控制部301,发送源为参数计算部401。
通信处理部1001参照保存于优先级数据存储部1002的数据,判别数据包的优先级是否高。如图5所示,在目的地为设备控制部201且发送源为控制对象设备91的情况下,定义为优先级高。通信处理部1001判别为数据包P2的优先级高。此外,通信处理部1001判别其他的数据包的优先级。通信处理部1001判别为数据包P1、P3、P4的优先级低。通信处理部1001无论数据包P1~P4到达的顺序如何,都优先发送数据包P2。在图示的例子中,通信处理部1001首先发送数据包P2。通信处理部1001在数据包P2之后,发送数据包P1、P3、P4。关于数据包P1、P3、P4,按照数据包到达通信处理部1001的顺序发送。接下来,通信处理部1001对新到达的多个数据包同样地进行处理。
通信处理部1001具备上述的结构,由此能够防止在控制对象设备91、92与设备控制部201、301之间收发的数据包的延迟。
在实施方式中,在控制服务器100中动作的虚拟机20、30中使所谓软件PLC动作,因此存在如下的优点。例如,在机动车关联的生产线中,生产线的布局的变更频发。即使在这样的情况下,也能够灵活地应对布局的变更。
例如,在生产线中,由于故障、老化等理由而有时更换控制对象设备91、92。在该情况下,从通信网络80拆下旧的控制对象设备91、92,将新的控制对象设备91、92连接于通信网络80。例如,在使用单独的装置作为控制设备的情况下,由于生产线的布局的变更而需要多个装置的置换、多个装置间的通信线的连接的变更等,作业比较烦杂。另一方面,在实施方式的结构中,与使用单独的装置作为控制设备的情况相比,能够削减与生产线的布局的变更相伴的作业。
在控制对象设备增加的情况下,通过在控制服务器100中追加进行动作的虚拟机,能够控制新的控制对象设备。在使用单独的设备作为控制设备的情况下,需要准备新的控制设备,费用高涨。然而,如实施方式那样使同一服务器上的多个虚拟机作为控制设备动作的情况下,能够抑制与生产线的布局的变更相伴的费用。
另外,虚拟机20、30、40相互独立地动作。因此,即使在任一虚拟机中存在执行的应用的变更、停止,其他的虚拟机也难以受到影响。例如,即使虚拟机20的第一应用71的执行停止,在虚拟机30中,也不需要停止第一应用71的执行。由此,在虚拟机30中,能够继续进行控制相关的处理。
B.其他的实施方式
(B1)在实施方式中,说明了虚拟机40的参数计算部401算出控制所使用的参数的最优值的例子,但是数据处理的例子并不局限于此。
图7是表示另一实施方式B1的控制服务器100a的功能结构的图。在以下的说明中,以与实施方式不同的点为中心进行说明。
在控制服务器100a中,虚拟机20、30、40、110这四个虚拟机动作。在虚拟机110上,非实时OS60作为客人OS进行动作。控制服务器100a除了实施方式的结构之外,还具备虚拟机110包含的解析部1101。解析部1101的功能通过虚拟机110执行用于解析数据的应用来实现。虚拟机110与其他的虚拟机同样地由管理程序10管理。
控制服务器100a能够经由通信网络80与测定器93通信。测定器93是测定被加工的工件的尺寸的设备。例如,作业者使用测定器93,测定工件的尺寸。测定器93例如当测定完成时,将测定值的数据向解析部1101发送。此时,测定器93将目的地设为虚拟机110的解析部1101,将发送源设为测定器93,发送包含测定值的数据的数据包。该数据包经由通信处理部1001向解析部1101发送。解析部1101对从测定器93供给的数据进行解析。解析部1101将包含解析结果的数据的数据包向参数计算部401发送。该数据包经由通信处理部1001向参数计算部401发送。参数计算部401在参数的最优值的算出中可以使用从解析部1101供给的解析结果。由此,能够提高参数的算出的精度。
通信处理部1001根据目的地端口和发送源端口,判别数据包的优先级。设在设备控制部201、301与控制对象设备91、92之间收发的数据包的优先级最高。将该优先级设为“等级1”。设目的地为参数计算部401且发送源为控制对象设备91、92的数据包的优先级第二高。将该优先级设为“等级2”。在目的地为解析部1101且发送源为测定器93的数据包的优先级也设为“等级2”。设目的地为参数计算部401且发送源为解析部1101的数据包的优先级最低。将该优先级设为“等级3”。目的地为设备控制部201、301且发送源为参数计算部401的数据包的优先级也设为“等级3”。
通信处理部1001判别在决定的期间接收到的多个数据包的优先级,首先,发送“等级1”的数据包。通信处理部1001在发送了“等级1”的数据包之后发送“等级2”的数据包。通信处理部1001在发送了“等级2”的数据包之后发送“等级3”的数据包。在相同等级的数据包存在多个的情况下,通信处理部1001对于相同等级的多个数据包,可以按照数据包的到达顺序发送数据包。在另一实施方式B1中,也与实施方式同样,能够防止应优先发送的数据包的延迟。
(B2)在另一实施方式B1中,说明了将解析部1101输出的解析结果在参数的最优值的算出中使用的例子,但是也可以将解析部1101的解析结果在其他的用途中使用。例如,从控制对象设备91、92向解析部1101供给表示控制对象设备91、92的运转状态的数据。解析部1101根据被供给的数据,可以预测控制对象设备91、92的异常、故障。
(B3)在实施方式中,关于在设备控制部201与控制对象设备91之间收发的数据、在设备控制部301与控制对象设备92之间收发的数据,都说明了优先级相同的例子。然而,可以将设备控制部201、301中的一方的优先级设定得比另一方的优先级高。例如,设在设备控制部201与控制对象设备91之间收发的数据的优先级最高。将该优先级设为“等级1”。设在设备控制部301与控制对象设备92之间收发的数据的优先级第二高。设将该优先级设为“等级2”。设其他的数据的优先级最低。将该优先级设为“等级3”。
通信处理部1001判别在决定的期间接收到的多个数据包的优先级,首先发送“等级1”的数据包。通信处理部1001在发送了“等级1”的数据包之后发送“等级2”的数据包。通信处理部1001在发送了“等级2”的数据包之后发送“等级3”的数据包。在相同等级的数据包存在多个的情况下,通信处理部1001可以对于相同等级的多个数据包,按照数据包的到达顺序来发送数据包。在另一实施方式B3中,也与实施方式同样,能够防止应优先发送的数据包的延迟。
(B4)在实施方式等中,说明了以设备单位来设定优先级的例子,但是优先级的设定可以通过组单位进行。在实施方式B4中,说明将多个设备分成若干的组,以组单位来设定优先级的例子。
图8是表示另一实施方式B4的控制服务器100b的功能结构的图。控制服务器100b具备图3所示的控制服务器100的结构追加了两个虚拟机的结构。以下,以与实施方式不同的结构为中心来说明。
如图8所示,在控制服务器100b,除了连接控制对象设备91、92之外,还连接有控制对象设备94、95。在控制服务器100b中,虚拟机20、30、40、120、130这五个虚拟机进行动作。在虚拟机120、130上,RTOS50作为客人OS进行动作。虚拟机120、130也与其他的虚拟机同样地由管理程序10管理。虚拟机120包含设备控制部1201。虚拟机130包含设备控制部1301。设备控制部1201、1301具备与实施方式的设备控制部201、301同样的结构。设备控制部1201对控制对象设备94进行控制。设备控制部1301对控制对象设备95进行控制。
图9是表示优先级数据存储部1002存储的组定义数据1002a的一例的图。图10是表示优先级数据存储部1002存储的优先级定义数据1002b的一例的图。例如,控制服务器100的管理者将这些数据预先保存于优先级数据存储部1002。
在组定义数据1002a保存有定义了通过目的地端口的值与发送端口的值的组合而决定的组的数据。在优先级定义数据1002b保存有将组与优先级建立对应而得到的数据。
在以下的说明中,对目的地端口或发送源端口设立如下那样的值。“P91”是作为表示控制对象设备91的值而对目的地端口或发送源端口设定的值。“P92”是表示控制对象设备92的值。“P94”是表示控制对象设备94的值。“P95”是表示控制对象设备95的值。“P201”是表示设备控制部201的值。“P301”是表示设备控制部301的值。“P401”是表示参数计算部401的值。“P1201”是表示设备控制部1201的值。“P1301”是表示设备控制部1301的值。
在图9所示的例子中,将控制对象设备91为目的地或发送源且设备控制部201为发送源或目的地的数据定义为组“G1”。控制对象设备92为目的地或发送源且设备控制部301为发送源或目的地的数据也定义为组“G1”。控制对象设备94为目的地或发送源且设备控制部1201为发送源或目的地的数据定义为组“G2”。控制对象设备95为目的地或发送源且设备控制部1301为发送源或目的地的数据也定义为组“G2”。此外,在控制对象设备91、92与参数计算部401之间收发的数据定义为组“G3”。
如图10所示,作为组的优先级,对组“G1”设定“等级1”,对组“G2”设定“等级2”,对组“G3”设定“等级3”。
通信处理部1001参照保存于优先级定义数据存储部1002的数据,判别在决定的期间接收到的多个数据包的优先级,首先发送“等级1”的数据包。通信处理部1001在发送了“等级1”的数据包之后发送“等级2”的数据包。通信处理部1001在发送了“等级2”的数据包之后发送“等级3”的数据包。通过这样以组单位来设定优先级,不需要按照目的地与发送源的各组合来设定优先级,能够简化优先级的设定的作业。
(B5)在实施方式中,通信处理部1001根据数据包的目的地端口的值和发送源端口的值,判别了数据包的优先级,但是通信处理部1001也可以利用其他的方法来判别数据包的优先级。例如,可以在数据包的TCP数据的最初决定的范围内设立表示优先级的值。通信处理部1001通过在数据包的TCP数据的最初决定的范围内设立的值,来判别数据包的优先级。
在实施方式中,作为控制对象设备91、92的例子,列举了生产机械、传感器、驱动设备,但是可以在控制服务器100上经由通信网络80连接对FA设备进行控制的PLC。
在实施方式中,说明了控制服务器100为了设备的控制而具备两个虚拟机的例子,但是控制服务器100可以具备设备的控制用的仅一个虚拟机。或者,控制服务器100可以具备设备的控制用的三个以上的虚拟机。
在实施方式中,说明了设备控制部201、301分别对控制对象设备91、92进行控制的例子,但是设备控制部201、301分别可以控制两个以上的设备。设备控制部201、301可以分别控制一个设备。即,设备控制部只要以多个设备中的至少一个设备为控制对象进行控制即可。
本公开并不局限于上述的实施方式,在不脱离其主旨的范围内能够以各种结构实现。例如,与发明内容一栏记载的各方式中的技术特征对应的实施方式中的技术特征为了解决上述的课题的一部分或全部,或者为了实现上述的效果的一部分或全部,可以适当进行更换、组合。而且,该技术特征在本说明书中只要不是作为必须的特征进行说明,就可以适当删除。

Claims (5)

1.一种信息处理装置,对多个设备进行控制,其中,
所述信息处理装置包括:
设备控制部,对所述多个设备中的至少一个设备即控制对象进行控制,该设备控制部接收从所述控制对象供给的输入数据,使用所述输入数据执行控制程序,将得到的输出数据向所述控制对象供给,从而控制所述控制对象;
数据处理部,对从所述多个设备收集到的收集数据执行预先决定的数据处理;及
通信处理部,控制所述多个设备、所述设备控制部及所述数据处理部之间的数据的收发,
所述通信处理部从所述多个设备、所述设备控制部及所述数据处理部接收的所述数据包含表示所述数据的优先级的信息,
所述通信处理部将所述数据包含的表示所述优先级的信息表示所述优先级高的情况的所述数据比所述数据包含的表示所述优先级的信息表示所述优先级低的情况的所述数据优先发送。
2.根据权利要求1所述的信息处理装置,其中,
所述信息处理装置具备优先级数据存储部,该优先级数据存储部存储优先级定义数据,该优先级定义数据是将所述数据的目的地及所述数据的发送源与所述优先级建立对应而得到的数据,
所述通信处理部参照保存于所述优先级数据存储部的所述优先级定义数据,根据目的地信息表示的所述目的地及发送源信息表示的所述发送源来判别所述优先级,所述目的地信息和所述发送源信息是接收到的所述数据分别包含的表示所述优先级的信息。
3.根据权利要求1或2所述的信息处理装置,其中,
所述数据处理部接收从所述多个设备供给的表示所述多个设备的运转状态的状态数据,对所述状态数据执行所述数据处理,将通过所述数据处理生成的结果数据向所述设备控制部供给,
所述设备控制部使用从所述数据处理部供给的所述结果数据,变更所述控制对象的控制内容。
4.根据权利要求1~3中任一项所述的信息处理装置,其中,
第一虚拟机、第二虚拟机及管理所述第一虚拟机及所述第二虚拟机的管理程序进行动作,
所述设备控制部的功能由在所述第一虚拟机中的实时操作系统上动作的第一应用软件实现,
所述数据处理部的功能由在所述第二虚拟机中的非实时操作系统上动作的第二应用软件实现,
所述通信处理部的功能由所述管理程序实现。
5.一种方法,是在构建了虚拟环境的信息处理装置中由对虚拟机进行管理的管理程序执行的方法,其中,
在所述信息处理装置中,第一虚拟机及第二虚拟机进行动作,所述第一虚拟机对多个设备中的至少一个设备即控制对象进行控制,所述第二虚拟机对从所述多个设备收集到的收集数据执行预先决定的数据处理,
所述管理程序执行如下步骤:
控制所述第一虚拟机、所述第二虚拟机及所述多个设备之间的数据的收发;
判别从所述多个设备、所述第一虚拟机及所述第二虚拟机接收到的所述数据包含的表示所述数据的优先级的信息是否表示所述数据的所述优先级高的情况;及
将所述优先级高的所述数据比所述优先级低的所述数据优先发送。
CN202210586940.8A 2021-06-01 2022-05-27 信息处理装置及方法 Pending CN115437316A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021091997A JP2022184262A (ja) 2021-06-01 2021-06-01 情報処理装置、方法、およびプログラム
JP2021-091997 2021-06-01

Publications (1)

Publication Number Publication Date
CN115437316A true CN115437316A (zh) 2022-12-06

Family

ID=84240700

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210586940.8A Pending CN115437316A (zh) 2021-06-01 2022-05-27 信息处理装置及方法

Country Status (2)

Country Link
JP (1) JP2022184262A (zh)
CN (1) CN115437316A (zh)

Also Published As

Publication number Publication date
JP2022184262A (ja) 2022-12-13

Similar Documents

Publication Publication Date Title
US10732601B2 (en) Integrated controller for motion control and motor control
EP2891020B1 (en) Control system for controlling operation of a numerically controlled machine tool, and back-end and front-end control devices for use in such system
US20100274385A1 (en) Control system for controlling an industrial robot
US20160091889A1 (en) Numerical control system
EP1705540B1 (en) Network opening method in manufacturing system
US20130018507A1 (en) Control System Of A Robot
JP2019053459A (ja) 制御装置および制御方法
US11340563B2 (en) Management system and management device for a plurality of industrial machines supplied with power from a power supply facility
CN115437316A (zh) 信息处理装置及方法
WO2021181799A1 (ja) ロボット制御システムおよび制御方法
CN109388102B (zh) 控制系统和上级服务器
JP2015215669A (ja) 数値制御装置および制御システム
CN213634179U (zh) 自动化装置
JP6686521B2 (ja) 制御システムおよび制御方法
EP3779622B1 (en) Control device
CN113867271A (zh) 生产系统、上级控制装置、控制装置、通信方法以及存储介质
US10708117B2 (en) Network system, control method, and control device
EP3865965A1 (en) Control system and control method
US20230384760A1 (en) Control device
JP7455239B2 (ja) 数値制御システム、タスク割り当て変更装置及び数値制御方法
JP2022020837A (ja) コントローラ、制御方法およびプログラム
JP7086297B2 (ja) 制御プログラム改良装置、制御プログラム改良方法及び制御プログラム改良システム
WO2022190560A1 (ja) 制御装置、制御システム、方法およびプログラム
JP2023173166A (ja) スレーブ装置、スレーブ装置の制御方法及びプログラム
JPH0895802A (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