控制设备、通信方法及通信程序与流程

文档序号:22627390发布日期:2020-10-23 19:36阅读:98来源:国知局
控制设备、通信方法及通信程序与流程

本发明涉及控制设备、通信方法及通信程序。



背景技术:

在专利文献1中提出如下方式,即,以削减多跳网络中的消息数量为目的,在由某节点对从其它节点接收到的消息进行中继时,将从其它节点接收到的消息、独自生成的消息结合为1个消息而发送至服务器。

专利文献1:日本特开2009-027460号公报



技术实现要素:

目前,存在下述动向,即,将至今为止在信息类网络中使用的发布/订阅(publish/subscribe)通信模型应用于控制系统的通信。在发布/订阅通信中,作为数据发送侧的发布者(publisher)将多个主题的数据配置于gds(globaldataspace,全局数据空间)。而且,在拉式传送的情况下,作为数据接收侧的订阅者(subscriber)去gds取得数据。在推式传送的情况下,gds将数据传送给订阅者。在这样的概念下,进行数据的收发。发布者和订阅者能够非同步地进行动作。各主题表示数据的类别。

发布/订阅通信适用于采用了线型网络的控制系统。其理由在于,数据被定期地发送至构成控制系统的控制设备,但控制设备的应用程序不需要以与发送周期同周期地取得数据,只要在任意的时刻取得数据即可。

但是,设想下述情况,即,如果将发布/订阅通信模型应用于采用了线型网络的控制系统,则各节点的数据经由网络而发送,因此网络中的消息数量增加。

具体而言,在现有的发布/订阅通信中,特别是在推式传送的情况下,gds在不考虑订阅者的位置的状态下将数据发送至网络上。因此,数据还会到达原本不需要该数据的节点。

在专利文献1所记载的方式中也不能够避免无用的数据到达节点这样的情况。

本发明的目的在于避免无用的数据到达节点这样的情况。

本发明的一个方式涉及的控制设备为串联连接且向末端的设备依次转发消息的大于或等于3台设备中的1台,连接于第1设备和与所述第1设备相比接近所述末端的设备的第2设备之间。

所述控制设备具有:

主题管理部,其对由从所述第2设备至所述末端的设备为止的设备组中的至少任意一者利用的数据的主题信息进行保存而作为表示数据的类别的主题信息;

接收部,其从所述第1设备接收消息;

无用数据删除部,其提取由所述接收部接收到的消息所包含的数据及该数据的主题信息,如果提取出的主题信息没有由所述主题管理部保存,则将提取出的数据删除;以及

发送部,如果从由所述接收部接收到的消息提取出的数据没有被所述无用数据删除部删除,则该发送部将包含提取出的数据及主题信息的消息发送至所述第2设备。

发明的效果

在本发明中,被识别为在从相当于下一个节点的设备至相当于末端节点的设备为止的设备组整体中均不被利用的数据没有被转发而是被删除。因此,根据本发明,能够避免无用的数据到达节点这样的情况。

附图说明

图1是表示实施方式1涉及的控制系统的结构的框图。

图2是表示实施方式1涉及的控制设备的结构的框图。

图3是表示由实施方式1涉及的控制设备进行的数据中继处理的流程的流程图。

图4是表示由实施方式1涉及的控制设备进行的无用数据删除处理的流程的流程图。

图5是表示实施方式1的变形例涉及的控制设备的结构的框图。

图6是表示实施方式2涉及的控制设备的结构的框图。

图7是表示由实施方式2涉及的控制设备进行的数据中继处理的流程的流程图。

图8是表示由实施方式2涉及的控制设备进行的无用数据删除处理的流程的流程图。

图9是表示由实施方式2涉及的控制设备进行的数据结合处理的流程的流程图。

具体实施方式

以下,使用附图对本发明的实施方式进行说明。在各图中,对相同或相当的部分标注相同标号。在实施方式的说明中,对相同或相当的部分适当省略或简化说明。此外,本发明并不限于下面说明的实施方式,可以根据需要进行各种变更。例如,也可以将下面说明的实施方式中的大于或等于2个实施方式组合而实施。或者,也可以部分地实施下面说明的实施方式中的1个实施方式或大于或等于2个实施方式的组合。

实施方式1.

使用图1至图4对本实施方式进行说明。

***结构的说明***

参照图1,对本实施方式涉及的控制系统的结构进行说明。

在该系统中,作为控制设备10,控制设备a1、控制设备a2、控制设备a3、…、控制设备an经由传送路径20连接为线型。各控制设备10以固定周期发送数据。各控制设备10将从其它控制设备10接收到的数据进一步向其它控制设备10进行中继、发送。例如,由控制设备a1发送的数据被控制设备a2及控制设备a3中继,到达控制设备an。但是,在本实施方式中,为了削减网络中的消息数量,使得数据不到达不需要接收该数据的控制设备10。此外,只要控制设备10的台数n大于或等于3,则可以是任意的整数。

参照图2,对本实施方式涉及的控制设备10的结构进行说明。

控制设备10为计算机。控制设备10具有处理器11,并且具有如存储器12及通信装置13这样的其它硬件。处理器11经由信号线与其它硬件连接,对这些其它硬件进行控制。

作为功能要素,控制设备10具有无用数据删除部14、主题管理部15、接收部16和发送部17。无用数据删除部14具有接收数据保存部21和中继数据保存部22。无用数据删除部14、主题管理部15、接收部16及发送部17的功能由软件实现。

处理器11是执行通信程序及应用程序的装置。通信程序是实现无用数据删除部14、主题管理部15、接收部16及发送部17的功能的程序。应用程序是利用由通信程序得到的数据而进行各种控制的程序。处理器11例如为cpu。“cpu”是centralprocessingunit的缩写。

存储器12是对通信程序及应用程序进行存储的装置。存储器12例如是ram、闪存或它们的组合。“ram”是randomaccessmemory的缩写。

通信装置13包含从其它控制设备10接收向通信程序输入的数据的接收器、以及将从通信程序输出的数据发送至其它控制设备10的发射器。通信装置13例如是通信芯片或nic。“nic”是networkinterfacecard的缩写。

通信程序及应用程序从存储器12被读入至处理器11,由处理器11执行。在存储器12中不仅存储有通信程序及应用程序,还存储有os。“os”是operatingsystem的缩写。处理器11一边执行os,一边执行通信程序及应用程序。此外,也可以将通信程序的一部分或全部嵌入至os。

通信程序、应用程序及os也可以存储于辅助存储装置。辅助存储装置例如是hdd、闪存或它们的组合。“hdd”是harddiskdrive的缩写。在通信程序、应用程序及os存储于辅助存储装置的情况下,被载入至存储器12,由处理器11执行。

控制设备10也可以具有代替处理器11的多个处理器。上述多个处理器分担地执行通信程序及应用程序。各个处理器例如为cpu。

由通信程序及应用程序利用、处理或输出的数据、信息、信号值及变量值存储于存储器12、辅助存储装置、或处理器11内的寄存器或缓存存储器。

通信程序是将由无用数据删除部14、主题管理部15、接收部16及发送部17进行的处理各自作为无用数据删除处理、主题管理处理、接收处理及发送处理而由计算机执行的程序。通信程序可以以记录于计算机可读取的介质的方式提供,也可以以储存于记录介质的方式提供,还可以作为程序产品来提供。

控制设备10可以由1台计算机构成,也可以由多台计算机构成。在控制设备10由多台计算机构成的情况下,也可以将无用数据删除部14、主题管理部15、接收部16及发送部17的功能分散于各计算机来实现。

在本实施方式中,在控制设备a1的应用程序中利用由控制设备a2及控制设备a3这样的其它控制设备10中继而到达控制设备a1的数据。控制设备a1的应用程序取得数据的时刻与其它控制设备10中继数据的时刻可以是非同步的时刻。因此,应用了发布/订阅通信模型。而且,控制设备a1的存储器12与发布/订阅通信模型的gds对应。

***动作的说明***

参照图2,对本实施方式涉及的控制设备10的动作进行说明。控制设备10的动作相当于本实施方式涉及的通信方法。

在本实施方式中,设为各控制设备10掌握了构成控制系统整体的设备的连接结构。

这里,作为一个例子,对控制设备a2的动作进行说明。此外,除了处于网络两端的控制设备a1及控制设备an之外的剩余的控制设备10的动作与控制设备a2的动作相同。

如图1所示,控制设备a2为串联连接且向末端的设备依次转发消息的n台设备中的1台,连接于第1设备和与第1设备相比接近末端的设备的第2设备之间。控制设备a1相当于第1设备。控制设备a3相当于第2设备。控制设备an相当于末端的设备。

主题管理部15在存储器12上对与控制设备a2连接的其它控制设备10中的需要接收的数据的主题进行管理。具体而言,主题管理部15对从控制设备a3至控制设备an为止的设备组中的至少任意一者所利用的数据的主题信息进行保存而作为表示数据的类别的主题信息。

接收部16取得由通信装置13接收到的数据。具体而言,接收部16从控制设备a1接收消息。在本实施方式中,接收部16从控制设备a1反复接收消息。

无用数据删除部14基于主题管理部15的信息,对是否是需要由后续的控制设备10接收的主题的数据进行解析。具体而言,无用数据删除部14提取由接收部16接收到的消息所包含的数据及该数据的主题信息。如果提取出的主题信息没有由主题管理部15保存,则无用数据删除部14将提取出的数据删除。在本实施方式中,无用数据删除部14在每次由接收部16接收消息时,提取接收到的消息所包含的数据及该数据的主题信息。如果提取出的主题信息没有由主题管理部15保存,则无用数据删除部14将提取出的数据删除。如果提取出的主题信息已被主题管理部15保存,则无用数据删除部14将提取出的数据及主题信息输出至发送部17。

发送部17将所发送的数据向通信装置13传送。具体而言,如果从由接收部16接收到的消息提取出的数据没有被无用数据删除部14删除,则发送部17将包含由无用数据删除部14提取出的数据及主题信息的消息发送至控制设备a3。

下面,对控制设备a2的动作的详情进行说明。

在数据收集开始前,控制设备a2将需要由控制设备a2接收的数据的主题的信息传送给控制设备a1。这里,需要由控制设备a2接收的数据是指与控制设备a2在控制设备a2的应用程序中利用的数据相关的信息。

接收到主题的信息的控制设备a1将需要由控制设备a2接收的主题的信息登记至主题管理部15。控制设备a1针对控制设备a2之外的后续的控制设备10,也将需要由后续的控制设备10接收的主题的信息登记至主题管理部15。该流程与普通的发布/订阅通信模型中的主题的登记流程相同。

在本实施方式中,控制设备a1之外的控制设备10也将需要由后续的控制设备10接收的主题的信息全部登记至主题管理部15。例如,控制设备a2将需要由从控制设备a3至控制设备an为止的各设备接收的主题的信息登记至主题管理部15。

因此,在主题管理部15中登记有与后续的控制设备10所利用的全部数据相关的主题的信息。关于在主题管理部15中没有登记主题的信息的数据,成为在接收到主题的信息的控制设备10之后中不利用的数据。

使用图3说明由控制设备a2进行的数据中继处理。

该数据中继处理是在步骤s101中,通信装置13接收数据,通信装置13向接收部16传送了数据时启动的。

在步骤s102中,接收部16将从通信装置13传送来的接收数据向无用数据删除部14传送。

在步骤s103中,无用数据删除部14参照登记于主题管理部15的信息,在接收数据为不需要由作为中继目标的控制设备a3接收的数据的情况下,进行无用数据删除处理,将接收数据删除。后面对该无用数据删除处理进行叙述。

在步骤s104中,无用数据删除部14在不进行无用数据删除处理的情况下,将接收数据向发送部17传送。发送部17将由无用数据删除部14传送来的数据向通信装置13传送,对数据进行发送。

使用图4说明由控制设备a2进行的无用数据删除处理。

在步骤s131中,无用数据删除部14的接收数据保存部21将数据储存于存储器12内的第1区域。具体而言,该数据是由接收部16接收到的数据。更具体而言,该数据是无用数据删除部14从由接收部16接收到的消息提取出的数据。

在步骤s132中,无用数据删除部14参照由接收数据保存部21储存的数据的主题、登记于主题管理部15的主题的信息。

在步骤s133中,在由接收数据保存部21储存的数据的主题已登记于主题管理部15的情况下,无用数据删除部14将由接收数据保存部21储存的数据向中继数据保存部22移动。即,中继数据保存部22取得在存储器12内的第1区域储存的数据。而且,中继数据保存部22将取得的数据储存于存储器12内的第2区域,并且从存储器12内的第1区域删除。

在步骤s134中,在由接收数据保存部21储存的数据的主题没有登记于主题管理部15的情况下,无用数据删除部14将数据删除。即,接收数据保存部21将在存储器12内的第1区域储存的数据删除。

通过以上处理,在进行从其它控制设备10接收到的数据的中继时,能够使得不需要接收的数据不到达控制设备10。

***实施方式的效果的说明***

在本实施方式中,被识别为在从相当于下一个节点的控制设备a3至相当于末端节点的控制设备an为止的设备组整体中均不被利用的数据没有被控制设备a2转发而是被删除。因此,根据本实施方式,能够避免无用数据到达从控制设备a3至控制设备an为止的各节点这样的情况。其结果,能够防止网络中的消息数量的增加。

在本实施方式中,在以线型连接方式构成的网络中,以固定周期通过发布/订阅通信进行数据的收发。各控制设备10对在与各控制设备10连接的其它控制设备10中需要接收的数据的主题进行管理。各控制设备10在进行从其它控制设备10接收到的数据的中继时,在包含不需要由作为中继目标的控制设备10接收的主题的数据的情况下,将该主题的数据删除。因此,根据本实施方式,能够使数据不到达不需要进行数据的接收的节点。

***其它结构***

在本实施方式中,无用数据删除部14、主题管理部15、接收部16及发送部17的功能由软件实现,但作为变形例,无用数据删除部14、主题管理部15、接收部16及发送部17的功能也可以由硬件实现。关于该变形例,主要对与本实施方式的差异进行说明。

参照图5,对本实施方式的变形例涉及的控制设备10的结构进行说明。

控制设备10具有电子电路18及通信装置13这样的硬件。

电子电路18是实现无用数据删除部14、主题管理部15、接收部16及发送部17的功能的专用硬件。电子电路18例如为单一电路、复合电路、被程序化后的处理器、被并行程序化后的处理器、逻辑ic、ga、fpgaasic、或它们中的若干者或全部的组合。“ic”是integratedcircuit的缩写。“ga”是gatearray的缩写。“fpga”是field-programmablegatearray的缩写。“asic”是applicationspecificintegratedcircuit的缩写。

控制设备10也可以具有代替电子电路18的多个电子电路。上述多个电子电路作为整体而实现无用数据删除部14、主题管理部15、接收部16及发送部17的功能。各个电子电路例如为单一电路、复合电路、被程序化后的处理器、被并行程序化后的处理器、逻辑ic、ga、fpga、asic、或它们中的若干者或全部的组合。

作为其它变形例,无用数据删除部14、主题管理部15、接收部16及发送部17的功能也可以由软件和硬件的组合实现。即,也可以是无用数据删除部14、主题管理部15、接收部16及发送部17的功能的一部分由专用硬件实现,剩余的部分由软件实现。

处理器11及电子电路18均为处理电路。即,即使控制设备10的结构为图2及图5的任意者所示的结构,无用数据删除部14、主题管理部15、接收部16及发送部17的动作也可以由处理电路进行。

实施方式2.

关于本实施方式,使用图6至图9主要对与实施方式1的差异进行说明。

***结构的说明***

参照图6,对本实施方式涉及的控制设备10的结构进行说明。

作为功能要素,控制设备10除了具有无用数据删除部14、主题管理部15、接收部16、发送部17之外,还具有取得部31、数据结合部32、数据结合周期计算部33和计时器34。数据结合部32具有结合数据保存部41。无用数据删除部14、主题管理部15、接收部16、发送部17、取得部31、数据结合部32、数据结合周期计算部33及计时器34的功能由软件实现。

在本实施方式中,通信程序是实现无用数据删除部14、主题管理部15、接收部16、发送部17、取得部31、数据结合部32、数据结合周期计算部33及计时器34的功能的程序。通信程序是将由无用数据删除部14、主题管理部15、接收部16、发送部17、取得部31、数据结合部32及数据结合周期计算部33进行的处理各自作为无用数据删除处理、主题管理处理、接收处理、发送处理、取得处理、数据结合处理及数据结合周期计算处理而由计算机执行的程序。

***动作的说明***

参照图6,对本实施方式涉及的控制设备10的动作进行说明。控制设备10的动作相当于本实施方式涉及的通信方法。

在实施方式1中,各控制设备10在从其它控制设备10接收到的数据为不需要由后续的控制设备10接收的主题的数据的情况下,将该数据删除。在本实施方式中,各控制设备10在进行从其它控制设备10接收到的数据的中继时,在将生成的数据向后续的控制设备10发送的时刻和对来自其它控制设备10的数据进行接收的时刻成为同时刻的情况下,将生成的数据和从其它控制设备10接收到的数据结合而发送至后续的控制设备10。

在本实施方式中,与实施方式1相同地,设为各控制设备10掌握了构成控制系统整体的设备的连接结构。

这里,作为一个例子,对控制设备a2的动作进行说明。此外,除了处于网络两端的控制设备a1及控制设备an之外的剩余的控制设备10的动作与控制设备a2的动作相同。

取得部31从与控制设备a1不同的取得源反复取得数据。取得部31将取得的数据储存于存储器12。在本实施方式中,取得部31反复取得由控制设备a2的应用程序生成的数据而储存于存储器12。

数据结合部32将由接收部16接收到的数据和由取得部31取得的数据结合为1个数据而向发送部17传送。具体而言,数据结合部32将从由接收部16接收到的消息提取出的数据及主题信息、由取得部31取得的数据及该数据的主题信息汇总而生成1个消息。

数据结合周期计算部33对成为控制设备a1的数据的发送周期和控制设备a2的数据的发送周期这2个周期的公倍数的周期进行计算,向计时器34设定。

计时器34对时刻进行测量,以由数据结合周期计算部33设定的每个周期为单位,向数据结合部32作出用于进行数据结合处理的通知。具体而言,计时器34将由接收部16接收消息的周期和由取得部31取得数据的周期的公倍数作为由数据结合部32生成消息的周期而进行通知。

关于无用数据删除部14、主题管理部15及接收部16的动作,由于与实施方式1相同,因此省略说明。

在本实施方式中,发送部17在每次由取得部31取得数据时,将包含取得的数据及该数据的主题信息的消息发送至控制设备a3。发送部17在由接收部16接收消息的时刻与由取得部31取得数据的时刻一致时,将由数据结合部32生成的消息发送至控制设备a3。

下面,对控制设备a2的动作的详情进行说明。

与实施方式1相同地,在数据收集开始前,各控制设备10将需要由后续的控制设备10接收的主题的信息全部登记至主题管理部15。

因此,在主题管理部15中登记有与在后续的控制设备10中利用的全部数据相关的主题的信息。关于在主题管理部15中没有登记主题的信息的数据,成为在接收到主题的信息的控制设备10之后中不利用的数据。

在本实施方式中,在数据收集开始前,控制设备a2将控制设备a2的数据的发送周期通知给后续的控制设备a3。

被通知了数据的发送周期的控制设备a3通过数据结合周期计算部33,基于被通知来的数据的发送周期和控制设备a3的数据的发送周期,对从控制设备a2接收数据的时刻和控制设备a3发送数据的时刻成为同时刻的周期进行计算,向计时器34设定。之后,设定了周期的计时器34以每个该周期为单位,对数据结合部32进行通知。

控制设备a3之外的控制设备10也通过数据结合周期计算部33,对从相邻的控制设备10接收数据的时刻与将数据向后续的控制设备10发送的时刻成为同时刻的周期进行计算,向计时器34设定。例如,控制设备a2通过数据结合周期计算部33,对从控制设备a1接收数据的时刻与将数据向控制设备a3发送的时刻成为同时刻的周期进行计算,向计时器34设定。

使用图7说明由控制设备a2进行的数据中继处理。

该数据中继处理是在步骤s201中,通信装置13接收数据,通信装置13向接收部16传送了数据时启动的。

在步骤s202中,接收部16将从通信装置13传送来的接收数据向无用数据删除部14传送。在该接收数据中也可以包含将多个主题的数据结合而成的数据。

在步骤s203中,无用数据删除部14参照登记于主题管理部15的信息,在接收数据为不需要由作为中继目标的控制设备a3接收的数据的情况下,进行无用数据删除处理,将接收数据删除。后面对该无用数据删除处理进行叙述。

在步骤s204中,无用数据删除部14在不进行无用数据删除处理的情况下,将接收数据向发送部17传送。发送部17将由无用数据删除部14传送来的数据向通信装置13传送,对数据进行发送。

在步骤s204中,数据结合部32确认有无来自计时器34的通知。

在步骤s205中,数据结合部32在存在来自计时器34的通知的情况下,从存储器12取得发送用数据。数据结合部32进行数据结合处理,将发送用数据和接收数据结合为1个。后面对该数据结合处理进行叙述。

在步骤s206中,无用数据删除部14在不进行无用数据删除处理的情况下,将接收数据向发送部17传送。数据结合部32在没有来自计时器34的通知,不进行数据结合处理的情况下,将接收数据向发送部17传送。数据结合部32在存在来自计时器34的通知,进行数据结合处理的情况下,传送结合数据。发送部17将由无用数据删除部14或数据结合部32传送来的数据向通信装置13传送,对数据进行发送。

使用图8对由控制设备a2进行的无用数据删除处理进行说明。

关于从步骤s231至步骤s234的处理,由于除了针对各个主题进行从步骤s232至步骤s234的处理这一点之外,与实施方式1中的从步骤s131至步骤s134的处理相同,因此省略说明。

在步骤s235中,无用数据删除部14对是否残留有由接收数据保存部21在存储器12内的第1区域内储存的数据进行确认。在残留有数据的情况下,反复进行从步骤s232至步骤s234的处理,直至将第1区域内的数据全部移动至第2区域或删除为止。关于并非以结合的方式包含多个主题的数据的接收数据,不反复进行从步骤s232至步骤s234的处理。

使用图9说明由控制设备a2进行的数据结合处理。

在步骤s251中,数据结合部32的结合数据保存部41将数据储存于存储器12内的第3区域。具体而言,该数据是由接收部16接收到的数据。更具体而言,该数据是无用数据删除部14从由接收部16接收到的消息提取而没有被无用数据删除部14删除的数据。

在步骤s252中,数据结合部32从存储器12内的第4区域将数据向第3区域复制。具体而言,该数据是由取得部31取得的数据。数据结合部32将复制出的数据和已经由结合数据保存部41储存的数据结合。

如上所述,通过将从其它控制设备10接收到的数据和自身生成的数据结合、发送,从而能够削减网络中的消息数量。

***实施方式的效果的说明***

在本实施方式中,各控制设备10根据各控制设备10的数据发送周期和相邻的控制设备10的数据发送周期,计算对数据进行结合的时刻。各控制设备10在进行从其它控制设备10接收到的数据的中继时,在发送数据的时刻与接收来自其它控制设备10的数据的时刻为同时刻的情况下,将各控制设备10的数据和从其它控制设备10接收到的数据结合。因此,根据本实施方式,能够维持发送数据量,并且削减网络中的消息数量。

***其它结构***

在本实施方式中,与实施方式1相同地,无用数据删除部14、主题管理部15、接收部16、发送部17、取得部31、数据结合部32、数据结合周期计算部33及计时器34的功能由软件实现,但也可以与实施方式1的变形例相同地,无用数据删除部14、主题管理部15、接收部16、发送部17、取得部31、数据结合部32、数据结合周期计算部33及计时器34的功能由硬件实现。或者,无用数据删除部14、主题管理部15、接收部16、发送部17、取得部31、数据结合部32、数据结合周期计算部33及计时器34的功能也可以由软件和硬件的组合实现。

标号的说明

10控制设备,11处理器,12存储器,13通信装置,14无用数据删除部,15主题管理部,16接收部,17发送部,18电子电路,20传送路径,21接收数据保存部,22中继数据保存部,31取得部,32数据结合部,33数据结合周期计算部,34计时器,41结合数据保存部。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1