CN109074298A - 数据处理装置、数据处理方法和数据处理程序 - Google Patents
数据处理装置、数据处理方法和数据处理程序 Download PDFInfo
- Publication number
- CN109074298A CN109074298A CN201680085473.3A CN201680085473A CN109074298A CN 109074298 A CN109074298 A CN 109074298A CN 201680085473 A CN201680085473 A CN 201680085473A CN 109074298 A CN109074298 A CN 109074298A
- Authority
- CN
- China
- Prior art keywords
- network
- controller
- tracking data
- data
- sequence number
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40169—Flexible bus arrangements
- H04L12/40176—Flexible bus arrangements involving redundancy
- H04L12/40182—Flexible bus arrangements involving redundancy by using a plurality of communication lines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2097—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1658—Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2002—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
- G06F11/2005—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication controllers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2025—Failover techniques using centralised failover control functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2038—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2048—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share neither address space nor persistent storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40169—Flexible bus arrangements
- H04L12/40176—Flexible bus arrangements involving redundancy
- H04L12/40195—Flexible bus arrangements involving redundancy by using a plurality of nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/4026—Bus for use in automation systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Safety Devices In Control Systems (AREA)
- Hardware Redundancy (AREA)
Abstract
过程数据管理部(304)从PIO单元(106)接收由PIO单元(106)反复发送的设定了序列号的被运算数据,对接收到的被运算数据进行运算,向PIO单元(106)发送运算结果。序列号管理部(306)在过程数据管理部(304)每次进行运算时,计算过程数据管理部(304)下一次进行运算的被运算数据的序列号作为后续序列号,经由控制网络(101)向待机控制器(11)通知计算出的后续序列号。跟踪数据管理部(307)在现用控制器(11)暂时被赋予了跟踪数据的发送权的情况下,经由控制网络(101)向待机控制器(11)发送跟踪数据。
Description
技术领域
本发明涉及数据处理装置、数据处理方法和数据处理程序。
背景技术
在发电厂或化学工厂等的被控对象(plant)中,阀的开闭等控制通过控制器实现自动化。为了进行被控对象的持续运转,对控制器要求较高的可靠性。因此,在这些被控对象中,通过对控制器进行双重化来维持可靠性。
首先,使用图7说明对控制器进行双重化的系统的结构和动作。
在图7所示的系统中,控制器100a和控制器100b与控制网络101连接。下面,在不需要区分控制器100a和控制器100b时,将控制器100a和控制器100b统称为控制器100。
在控制网络101上连接有HMI(Human Machine Interface)102。
并且,控制器100经由I/O(Input/Output)网络103而与过程输入输出单元106a、106b、106c(下面称为PIO单元106a、106b、106c)连接。
在不需要区分PIO单元106a、106b、106c时,将PIO单元106a、106b、106c统称为PIO单元106。
PIO单元106a周期地向控制器100发送由输入输出端104a取得的表示被控对象109的状态的数据。
PIO单元106b周期地向控制器100发送由输入输出端104b取得的表示被控对象109的状态的数据。
PIO单元106c周期地向控制器100发送由输入输出端104c取得的表示被控对象109的状态的数据。
控制器100a和控制器100b分别从PIO单元106a、106b、106c接收数据。
HMI102针对作业员显示被控对象109的控制状态,根据作业员的输入,向控制器100a和控制器100b发送被控对象109的控制用的指令。HIM102例如是面板计算机。
控制器100a根据从PIO单元106接收到的数据(被控对象109的状态)和从HMI102接收到的指令进行运算,周期地向PIO单元106发送表示运算结果的数据。并且,控制器100a向HMI102发送被控对象109的状态。控制器100b在控制器100a正常动作的期间内待机,在控制器100a产生异常的情况下代替控制器100a。还将控制器100a称为现用控制器100,将控制器100b称为待机控制器100。并且,在附图上,有时将控制器100a记载为“现用”,将控制器100b记载为“待机”。
PIO单元106a从输入输出端104a向被控对象109发送来自控制器100a的运算结果。
PIO单元106b从输入输出端104b向被控对象109发送来自控制器100a的运算结果。
PIO单元106c从输入输出端104c向被控对象109发送来自控制器100a的运算结果。
另外,将在控制器100与PIO单元106之间发送接收的数据称为过程数据。
并且,控制器100a和控制器100b经由跟踪总线105连接。控制器100a发送控制器100a的内部的数据,以使得在产生异常时控制器100b能够立即继续进行控制。
在图7所示的系统中,上述控制器100的对与多个PIO单元106的组合存在多个。控制器100的对经由控制网络101而与HMI102连接。并且,控制器100的对经由跟踪总线105连接。
接着,使用图8对图7的系统的动作的详细情况进行说明。
PIO单元106按照过程数据周期tp周期地向控制器100发送过程数据。下面,还将过程数据记载为PD#n。PD#n中的“n”是表示第几次发送的过程数据的序列号。即,n=1、2…。
控制器100按照控制周期tc周期地进行过程数据取得处理、运算处理、过程数据发送处理、跟踪数据发送处理。
PIO单元106在过程数据发送1中向控制器100发送PD#1。
控制器100a和控制器100b接收PD#1(图8的PD#1的气泡)。然后,控制器100a和控制器100b分别将接收到的PD#1存储在内部的存储器中。
在时刻t0,控制器100a进行过程数据取得处理。过程数据取得处理是控制器100内的处理器从控制器100内的存储器读出过程数据的处理。在时刻t0,作为过程数据取得处理,控制器100a内的处理器从存储器读出最近最新接收到的过程数据即PD#1,将读出的PD#1保存在处理器内的缓存中。
接着,控制器100a内的处理器使用PD#1进行运算。另外,设运算结果仅由从HMI102接收到的指令(目标值)、此前向PIO单元106发送的数据的序列(运算中使用的序列的大小根据系统而不同)、以及运算中使用的PIO数据确定。
进而,控制器100a在过程数据发送处理中向PIO单元106发送运算结果(省略发送的箭头的图示)。
最后,控制器100a进行跟踪数据发送处理。在跟踪数据发送处理中,控制器100a向控制器100b发送跟踪数据。跟踪数据是通知运算结果和控制器100a的内部状态的数据。在图8中,省略图示,但是,控制器100b接收跟踪数据,将接收到的跟踪数据存储在内部的存储器中。
接着,在时刻t1,控制器100b使用最近最新接收到的过程数据即PD#2进行运算。但是,控制器100b不向PIO单元106发送运算结果。即,在控制器100b中,虽然存在过程数据发送处理的时间,但是,实际上不发送运算结果。
接着,在时刻t2,控制器100b进行跟踪数据取得处理。在跟踪数据取得处理中,控制器100b内的处理器从存储器读出跟踪数据,将读出的跟踪数据保存在处理器内的缓存中。然后,控制器100b内的处理器根据跟踪数据对以下内容进行更新。
·针对PIO单元106的输出值(运算结果)
·内部状态
假设在控制器100b未进行使用跟踪数据的上述更新的情况下,控制器100a和控制器100b使用不同的过程数据的序列进行运算。这种状况下,在控制器100a故障、控制器100b接着进行控制的情况下,产生从控制器100b向PIO单元106发送的值急剧变化的现象(称为扰乱),是不良情况。
在图7的系统中,控制器100a和控制器100b通过与控制网络101不同的跟踪总线105一对一连接。因此,结构复杂。
在专利文献1中,在图7所示的系统中,为了简化结构,公开了与控制网络101共用跟踪总线105的方法。
现有技术文献
专利文献
专利文献1:日本特开2007-323457号公报
发明内容
发明要解决的课题
在专利文献1中,提出了与其他网络统合跟踪总线的方法,但是,在控制器100a每次进行运算时,控制器100a向控制器100b发送跟踪数据。因此,存在由于发送跟踪数据而压迫网络带宽这样的课题。
本发明的主要目的之一在于解决这种课题。更具体而言,本发明的主要目的在于避免由于发送跟踪数据而压迫网络带宽的情况。
用于解决课题的手段
本发明的数据处理装置经由与上位装置连接的第1网络而与备份装置连接,经由与所述第1网络不同的第2网络而与设备连接,其中,所述数据处理装置具有:运算管理部,其经由所述第2网络从所述设备接收由所述设备反复发送的设定了序列号的被运算数据,对接收到的所述被运算数据进行运算,经由所述第2网络向所述设备发送运算结果;序列号管理部,其在所述运算管理部每次进行运算时,计算所述运算管理部下一次进行运算的被运算数据的序列号作为后续序列号,经由所述第1网络向所述备份装置通知计算出的所述后续序列号;以及跟踪数据管理部,其在所述数据处理装置暂时被赋予了跟踪数据的发送权的情况下,经由所述第1网络向所述备份装置发送所述跟踪数据,其中,该跟踪数据通知所述运算管理部的运算结果和所述数据处理装置的内部状态。
发明效果
根据本发明,抑制了跟踪数据的发送,能够避免由于发送跟踪数据而压迫网络带宽的情况。
附图说明
图1是示出实施方式1的系统结构例的图。
图2是示出实施方式1的控制器11的硬件结构例的图。
图3是示出实施方式1的控制器11的功能结构例的图。
图4是示出实施方式1的动作例的数据流程图。
图5是示出实施方式1的控制器11a的动作例的流程图。
图6是示出实施方式1的控制器11b的动作例的流程图。
图7是示出现有的系统结构例的图。
图8是示出现有的动作例的数据流程图。
具体实施方式
实施方式1
***结构的说明***
图1示出本实施方式的系统结构例。
控制网络101、HMI102、I/O网络103、输入输出端104a、输入输出端104b、输入输出端104c、PIO单元106a、PIO单元106b、PIO单元106c、被控对象109与图7所示的结构相同。在本实施方式中,在不需要区分PIO单元106a、106b、106c时,也将PIO单元106a、106b、106c统称为PIO单元106。
控制器11a和控制器11b经由控制网络101而与HMI102连接。HMI102相当于上位装置。控制网络101相当于第1网络。
并且,控制器11a和控制器11b经由I/O网络103而与PIO单元106a、106b、106c连接。PIO单元106a、106b、106c分别相当于设备。并且,I/O网络103相当于第2网络。
控制器11a根据从PIO单元106接收到的数据(被控对象109的状态)和从HMI102接收到的指令进行运算,周期地向PIO单元106发送表示运算结果的数据。并且,控制器11a向HMI102发送被控对象109的状态。控制器11b在控制器11a正常工作的期间内待机,在控制器11a产生异常的情况下代替控制器11a。将控制器11a称为现用控制器11,将控制器11b称为待机控制器11。并且,在附图上,有时将控制器11a记载为“现用”,将控制器11b记载为“待机”。
控制器11a相当于数据处理装置。并且,由控制器11a进行的动作相当于数据处理方法。
控制器11b对控制器11a进行备份,相当于备份装置。
下面,在不需要区分控制器11a和控制器11b时,将控制器11a和控制器11b统称为控制器11。
图2示出控制器11的硬件结构例。
控制器11是计算机。
作为硬件,控制器11具有处理器201、存储器202、ROM(Read Only Memory)203、PIO接口204和控制网络接口205。
在ROM203中存储有实现后述控制部303的功能的程序。
而且,实现控制部303的功能的程序从ROM203载入到存储器202中,由处理器201执行。
PIO接口204是与I/O网络103连接的接口。PIO接口204接收来自PIO单元106的过程数据,并且,向PIO单元106发送针对PIO单元106的过程数据。
控制网络接口205是与控制网络101连接的接口。控制器11a的控制网络接口205向控制器11b发送通知过程数据的序列号的消息,并且,发送跟踪数据。并且,控制器11b的控制网络接口205从控制器11a接收通知序列号的消息,并且,接收跟踪数据。
图3示出控制器11的功能结构例。
接收部301从控制网络101或I/O网络103接收数据。
发送部302向控制网络101或I/O网络103发送数据。
更具体而言,现用控制器11的接收部301经由I/O网络103从PIO单元106接收过程数据。并且,控制器11a的接收部301经由控制网络101从HMI102接收指令。并且,控制器11a的发送部302经由控制网络101向控制器11b发送通知序列号的消息和跟踪数据。
并且,控制器11b的接收部301经由I/O网络103从PIO单元106接收过程数据。控制器11b的接收部301经由控制网络101从HMI102接收指令。并且,控制器11b的接收部301经由控制网络101从控制器11a接收通知序列号的消息和跟踪数据。
接收部301和发送部302由PIO接口204和控制网络接口205实现。
控制部303对控制器11的动作进行控制。
控制部303由过程数据管理部304、时间计测部305、序列号管理部306、跟踪数据管理部307构成。
在现用控制器11中,过程数据管理部304经由I/O网络103和接收部301,从PIO单元106接收由PIO单元106反复发送的设定了序列号的过程数据(被运算数据的例子)。然后,过程数据管理部304对接收到的过程数据进行运算,经由发送部302和I/O网络103向PIO单元106发送运算结果。
在待机控制器11中,过程数据管理部304根据从现用控制器11通知的后续序列号(后述)选择运算中使用的过程数据。然后,对选择出的过程数据进行运算。在待机控制器11中,过程数据管理部304不发送运算结果。
现用控制器11的过程数据管理部304相当于运算管理部。并且,由现用控制器11的过程数据管理部304进行的处理相当于运算管理处理。
在现用控制器11中,时间计测部305计测后述时间td。
在现用控制器11中,序列号管理部306在过程数据管理部304每次进行运算时,计算过程数据管理部304下一次进行运算的过程数据的序列号作为后续序列号。然后,序列号管理部306经由发送部302和控制网络101向待机控制器11通知计算出的后续序列号。
并且,在待机控制器11中,序列号管理部306将从现用控制器11通知的后续序列号存储在存储部308中。
由现用控制器11的序列号管理部306进行的处理相当于序列号管理处理。
在现用控制器11中,跟踪数据管理部307在现用控制器11暂时被赋予了跟踪数据的发送权的情况下,经由发送部302和控制网络101向待机控制器11发送跟踪数据。跟踪数据是通知过程数据管理部304的运算结果和现用控制器11的内部状态的数据。
更具体而言,现用控制器11的跟踪数据管理部307在现用控制器11暂时被赋予了发送权的情况下,判定过去是否向待机控制器11发送过跟踪数据。然后,在没有向待机控制器11发送过跟踪数据的情况下,向待机控制器11发送用于通知过程数据管理部304的最新的运算结果和现用控制器11的当前的内部状态的跟踪数据。
在待机控制器11中,跟踪数据管理部307经由控制网络101和接收部301接收跟踪数据,将接收到的跟踪数据存储在存储部308中。并且,在待机控制器11中,跟踪数据管理部307根据跟踪数据进行运算结果的更新和待机控制器11的内部状态的更新。
由现用控制器11的跟踪数据管理部307进行的处理相当于跟踪数据管理处理。
过程数据管理部304、时间计测部305、序列号管理部306和跟踪数据管理部307的功能例如由程序实现。实现过程数据管理部304、时间计测部305、序列号管理部306和跟踪数据管理部307的功能的程序由处理器201执行。实现过程数据管理部304、时间计测部305、序列号管理部306和跟踪数据管理部307的功能的程序相当于数据处理程序。
存储部308存储接收到的过程数据、过程数据管理部304的运算结果、时间计测部305的计测时间、后续序列号、跟踪数据等。
存储部308由存储器202实现。
***动作的说明***
接着,使用图4对本实施方式的动作进行说明。
在本实施方式中,导入跟踪数据的发送权这样的概念。
对现用控制器11暂时赋予跟踪数据的发送权。现用控制器11仅在被赋予跟踪数据的发送权的期间内能够发送跟踪数据。在未被赋予跟踪数据的发送权时,现用控制器11无法发送跟踪数据。即,现用控制器11跳过跟踪数据发送处理。
在控制网络101上,同时仅存在一个发送权。设预先任意确定的一个节点在系统中最初具有发送权。下面,设HMI102最初具有发送权。
在系统起动后,HMI102从多个现用控制器11中选择一个现用控制器11,向选择出的现用控制器11发送跟踪数据的发送权。
在图4中,HMI102向控制器11a发送发送权。
然后,在时刻t400,控制器11a的接收部301接收PD#1。
在控制器11a中,时间计测部305计测从在时刻t400接收PD#1到实际在时刻t401使用为止的时间td。
在时刻t401,控制器11a的过程数据管理部304与图8所示的现有的控制器100a同样进行过程数据的取得处理。进而,过程数据管理部304与图8所示的现有的控制器100a同样进行运算,在时刻t412,发送部302向PIO单元106发送通知运算结果的过程数据。
并且,在控制器11a中,在过程数据发送后的时刻t413,序列号管理部306计算后续序列号Pnext。如上所述,后续序列号Pnext是过程数据管理部304下次进行运算的过程数据的序列号。
具体而言,序列号管理部306根据式1计算后续序列号Pnext。在式1中,Plast表示最后的运算中使用的过程数据的序列号。并且,tc是控制周期,tp是过程数据周期,td是时间计测部305计测出的时间。
然后,序列号管理部306经由发送部302和控制网络101向控制器11b通知后续序列号Pnext。
【数学式1】
在图4的例子中,控制器11a向控制器11b通知序列号4(PD#4)。进而,此时,控制器11a的跟踪数据管理部307判定是否满足以下2个条件。在满足以下2个条件的情况下,控制器11a的跟踪数据管理部307对控制器11b发送跟踪数据。
·系统起动后,一次也没有对控制器11b发送跟踪数据。
·控制器11a具有跟踪数据的发送权。
控制器11a发送跟踪数据后,向HMI102返还跟踪数据的发送权。
在时刻t403,控制器11b接收PD#5,但是,PD#5大于从控制器11a通知的后续序列号即PD#4,因此,控制器11b丢弃PD#5。
根据上述动作,以后在运算中使用的过程数据在控制器11a和控制器11b中一致,因此,不需要进行跟踪数据的通信。
接着,参照图5的流程图对控制器11a的动作例进行说明。
在步骤S100中,接收部301从I/O网络103接收从PIO单元106发送的过程数据。然后,过程数据管理部304将过程数据存储在存储部308中。
另外,在步骤S100的同时,时间计测部305开始计测时间td。
接着,在步骤S110中,过程数据管理部304从存储部308取得过程数据,使用过程数据进行运算。
并且,在步骤S110的同时,时间计测部305停止计测时间td。
接着,在步骤S120中,发送部302从I/O网络103向PIO单元106发送通知运算结果的过程数据。
接着,在步骤S130中,序列号管理部306根据上述式1计算后续序列号Pnext,发送部302从控制网络101向控制器11b通知后续序列号Pnext。
接着,在步骤S140中,跟踪数据管理部307判定是否对控制器11a赋予了跟踪数据的发送权。
在对控制器11a赋予了跟踪数据的发送权的情况下,跟踪数据管理部307判定在系统起动后是否向控制器11b发送过跟踪数据。
在未向控制器11b发送跟踪数据的情况下,发送部302从控制网络101向控制器11b发送跟踪数据。
最后,在步骤S170中,发送部302向HMI102返还跟踪数据的发送权。
接着,参照图6的流程图对控制器11b的动作例进行说明。
在步骤S200中接收部301接收到跟踪数据后,在步骤S210中,跟踪数据管理部307根据跟踪数据对控制器11b的内部状态和运算结果进行更新。并且,跟踪数据管理部307将更新后的内部状态和运算结果存储在存储部308中。
并且,在步骤S220中从控制器11a通知了后续序列号Pnext的情况下,在步骤S230中,序列号管理部306将后续序列号Pnext存储在存储部308中。
并且,在步骤S240中接收部301接收到过程数据后,在步骤S250中,过程数据管理部304将过程数据存储在存储部308中。
接着,在步骤S260中,过程数据管理部304判定步骤S240中接收到的过程数据的序列号是否与后续序列号Pnext一致。
在步骤S240中接收到的过程数据的序列号与后续序列号Pnext不一致的情况下,在步骤S270中,过程数据管理部304丢弃过程数据。
另一方面,在步骤S240中接收到的过程数据的序列号与后续序列号Pnext一致的情况下,过程数据管理部304使用过程数据进行运算。然后,过程数据管理部304将运算结果存储在存储部308中。
***实施方式的效果的说明***
这样,在本实施方式中,现用控制器11仅在被赋予了跟踪数据的发送权的情况下,向待机控制器11发送跟踪数据。因此,能够避免由于发送跟踪数据而压迫网络带宽的情况。
在未使用本实施方式中说明的方法的情况下,按照每个控制周期tc,从现用控制器向待机控制器发送跟踪数据。因此,在未使用本实施方式中说明的方法的情况下,1组现用控制器与待机控制器之间的跟踪数据的通信所需要的带宽是对控制周期tc的重复数np和跟踪数据的数据大小dt进行相乘而得到的值。例如当设np=50(次)、数据大小dt=240Mbps时,跟踪数据的通信所需要的带宽为12Gbps。用于实现超过1Gbp的通信的方式(10GBASE-T等)虽然正在普及,但是依然高价,因此,在未使用本实施方式中说明的方法的情况下,控制网络101的成本较高。
在本实施方式中,在1组现用控制器与待机控制器之间仅发送一次跟踪数据。因此,1组现用控制器与待机控制器11之间的跟踪数据的通信所需要的带宽仅为跟踪数据的数据大小dt(240Mbps)。
因此,根据本实施方式,能够利用广泛普及且低价的1000BASE-T构成控制网络101。
并且,在本实施方式中,在通过现用控制器11的过程数据管理部304每次使用过程数据进行运算时,向待机控制器11通知后续序列号。因此,即使跟踪数据的发送次数减少,在待机控制器11中,也能够使用与现用控制器11相同的过程数据继续进行运算。
并且,根据本实施方式,通过将跟踪总线与控制网络进行统合,能够对1台现用控制器11连接多台待机控制器11。因此,能够构筑可靠性更高的系统。
***硬件结构的说明***
最后,进行控制器11的硬件结构的补充说明。
图2所示的处理器201是进行处理的IC(Integrated Circuit)。
处理器201是CPU(Central Processing Unit)、DSP(Digital Signal Processor)等。
图2所示的存储器202是RAM(Random Access Memory)。
并且,也可以代替ROM23而使用闪存、HDD(Hard Disk Drive)。
图2所示的PIO接口204和控制网络接口205包含接收数据的接收机和发送数据的发送机。
PIO接口204和控制网络接口205分别例如为通信芯片或NIC(Network InterfaceCard)。
并且,在ROM203中还存储有OS(Operating System)。
而且,OS的至少一部分由处理器201执行。
处理器201执行OS的至少一部分,并且执行实现过程数据管理部304、时间计测部305、序列号管理部306和跟踪数据管理部307(下面将这些统称为“部”)的功能的程序。
处理器201执行OS,由此进行任务管理、存储管理、文件管理、通信控制等。
并且,控制器11也可以具有代替处理器201的多个处理器。这些多个处理器分担执行实现“部”的功能的程序。各个处理器与处理器201同样是进行处理的IC。
并且,表示“部”的处理结果的信息、数据、信号值、变量值存储在存储器202、处理器201内的寄存器和高速缓冲存储器中的至少任意一方中。
并且,实现“部”的功能的程序可以存储在磁盘、软盘、光盘、高密度盘、蓝光(注册商标)盘、DVD等移动存储介质中。
并且,可以将“部”改写为“电路”或“工序”或“步骤”或“处理”。
并且,控制器11可以由逻辑IC(Integrated Circuit)、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)这样的电子电路实现。
该情况下,“部”分别作为电子电路的一部分实现。
另外,将处理器和上述电子电路统称为处理线路。
标号说明
11:控制器;100:控制器;101:控制网络;102:HMI;103:I/O网络;104:输入输出端;105:跟踪总线;106:PIO单元;109:被控对象;201:处理器;202:存储器;203:ROM;204:PIO接口;205:控制网络接口;301:接收部;302:发送部;303:控制部;304:过程数据管理部;305:时间计测部;306:序列号管理部;307:跟踪数据管理部;308:存储部。
Claims (5)
1.一种数据处理装置,其经由与上位装置连接的第1网络而与备份装置连接,经由与所述第1网络不同的第2网络而与设备连接,其中,所述数据处理装置具有:
运算管理部,其经由所述第2网络从所述设备接收由所述设备反复发送的设定了序列号的被运算数据,对接收到的所述被运算数据进行运算,经由所述第2网络向所述设备发送运算结果;
序列号管理部,其在所述运算管理部每次进行运算时,计算所述运算管理部下一次进行运算的被运算数据的序列号作为后续序列号,经由所述第1网络向所述备份装置通知计算出的所述后续序列号;以及
跟踪数据管理部,其在所述数据处理装置暂时被赋予了跟踪数据的发送权的情况下,经由所述第1网络向所述备份装置发送所述跟踪数据,其中,该跟踪数据通知所述运算管理部的运算结果和所述数据处理装置的内部状态。
2.根据权利要求1所述的数据处理装置,其中,
所述跟踪数据管理部在所述数据处理装置暂时被赋予了所述发送权的情况下,判定过去是否向所述备份装置发送过所述跟踪数据,在没有向所述备份装置发送过所述跟踪数据的情况下,经由所述第1网络向所述备份装置发送所述跟踪数据。
3.根据权利要求1所述的数据处理装置,其中,
所述跟踪数据管理部在所述数据处理装置暂时被赋予了所述发送权的情况下,经由所述第1网络向所述备份装置发送通知所述运算管理部的最新的运算结果和所述数据处理装置的当前的内部状态的跟踪数据。
4.一种由计算机进行的数据处理方法,该计算机经由与上位装置连接的第1网络而与备份装置连接,经由与所述第1网络不同的第2网络而与设备连接,所述数据处理方法包括以下步骤:
经由所述第2网络从所述设备接收由所述设备反复发送的设定了序列号的被运算数据,对接收到的所述被运算数据进行运算,经由所述第2网络向所述设备发送运算结果;
在每次进行运算时,计算下一次进行运算的被运算数据的序列号作为后续序列号,经由所述第1网络向所述备份装置通知计算出的所述后续序列号;以及
在所述计算机暂时被赋予了跟踪数据的发送权的情况下,经由所述第1网络向所述备份装置发送所述跟踪数据,其中,该跟踪数据通知运算结果和所述计算机的内部状态。
5.一种数据处理程序,其使计算机执行以下处理,该计算机经由与上位装置连接的第1网络而与备份装置连接,经由与所述第1网络不同的第2网络而与设备连接,所述处理为:
运算管理处理,经由所述第2网络从所述设备接收由所述设备反复发送的设定了序列号的被运算数据,对接收到的所述被运算数据进行运算,经由所述第2网络向所述设备发送运算结果;
序列号管理处理,在每次通过所述运算管理处理进行运算时,计算通过所述运算管理处理下一次进行运算的被运算数据的序列号作为后续序列号,经由所述第1网络向所述备份装置通知计算出的所述后续序列号;以及
跟踪数据管理处理,在所述计算机暂时被赋予了跟踪数据的发送权的情况下,经由所述第1网络向所述备份装置发送所述跟踪数据,其中,该跟踪数据通知所述运算管理处理的运算结果和所述计算机的内部状态。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2016/064317 WO2017195356A1 (ja) | 2016-05-13 | 2016-05-13 | データ処理装置、データ処理方法及びデータ処理プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109074298A true CN109074298A (zh) | 2018-12-21 |
Family
ID=60267254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680085473.3A Withdrawn CN109074298A (zh) | 2016-05-13 | 2016-05-13 | 数据处理装置、数据处理方法和数据处理程序 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20200235958A1 (zh) |
EP (1) | EP3447643A4 (zh) |
JP (1) | JP6433623B2 (zh) |
CN (1) | CN109074298A (zh) |
WO (1) | WO2017195356A1 (zh) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8359112B2 (en) * | 2006-01-13 | 2013-01-22 | Emerson Process Management Power & Water Solutions, Inc. | Method for redundant controller synchronization for bump-less failover during normal and program mismatch conditions |
JP4645839B2 (ja) * | 2006-01-18 | 2011-03-09 | 日本電気株式会社 | セキュリティ通信装置およびシーケンスナンバー管理方法 |
JP2007323457A (ja) | 2006-06-02 | 2007-12-13 | Toshiba Corp | 二重化コントローラのデータ伝送方法 |
JP5187249B2 (ja) * | 2008-07-17 | 2013-04-24 | 富士通株式会社 | 冗長化システム用コネクションリカバリ装置,方法および処理プログラム |
JP2010152591A (ja) * | 2008-12-25 | 2010-07-08 | Nec Corp | データベースシステム、データ処理方法及びデータ処理プログラム |
JP2011198205A (ja) * | 2010-03-23 | 2011-10-06 | Railway Technical Research Institute | 二重系制御システム |
WO2012176337A1 (ja) * | 2011-06-24 | 2012-12-27 | 富士通株式会社 | 情報処理システム、情報処理システムの制御方法、管理装置および系切替プログラム |
US9983958B2 (en) * | 2014-07-25 | 2018-05-29 | Netapp, Inc. | Techniques for dynamically controlling resources based on service level objectives |
-
2016
- 2016-05-13 JP JP2018516316A patent/JP6433623B2/ja not_active Expired - Fee Related
- 2016-05-13 WO PCT/JP2016/064317 patent/WO2017195356A1/ja active Application Filing
- 2016-05-13 EP EP16901704.3A patent/EP3447643A4/en not_active Withdrawn
- 2016-05-13 CN CN201680085473.3A patent/CN109074298A/zh not_active Withdrawn
- 2016-05-13 US US16/088,216 patent/US20200235958A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
EP3447643A4 (en) | 2019-06-05 |
JPWO2017195356A1 (ja) | 2018-09-13 |
WO2017195356A1 (ja) | 2017-11-16 |
EP3447643A1 (en) | 2019-02-27 |
JP6433623B2 (ja) | 2018-12-05 |
US20200235958A1 (en) | 2020-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101012744B1 (ko) | 향상된 컴퓨팅 아키텍쳐를 위한 파이프라인 가속기 및 관련시스템 및 방법 | |
US7546393B2 (en) | System for asynchronous DMA command completion notification wherein the DMA command comprising a tag belongs to a plurality of tag groups | |
WO2019002004A1 (en) | ORDERING TRANSACTION COMMITMENT BY BLOCK CHAIN | |
US20180089117A1 (en) | Reconfigurable fabric accessing external memory | |
TWI727361B (zh) | 用於實現智慧處理運算結構的方法 | |
CN101273338A (zh) | 数据集及数据集“异或”的dma传送 | |
US8990451B2 (en) | Controller for direct access to a memory for the direct transfer of data between memories of several peripheral devices, method and computer program enabling the implementation of such a controller | |
JP2005182754A (ja) | プロセス間伝達機構 | |
US20190140888A1 (en) | Computer readable media, methods, and computer apparatuses for network service continuity management | |
CN109814917A (zh) | 微服务发布方法、装置、计算机设备和存储介质 | |
CN111767995B (zh) | 运算方法、装置及相关产品 | |
CN111752887A (zh) | 人工智能芯片和基于人工智能芯片的数据处理方法 | |
US9053092B2 (en) | System authorizing direct data transfers between memories of several components of that system | |
US12061895B2 (en) | Predictive recycling of computer systems in a cloud environment | |
CN107291641B (zh) | 用于计算单元的存储器直接访问控制装置及其运行方法 | |
US20140082228A1 (en) | Remotely located timing method and device for a processing unit in an information processing system | |
CN113746763A (zh) | 一种数据处理的方法、装置和设备 | |
CN109074298A (zh) | 数据处理装置、数据处理方法和数据处理程序 | |
CN118036776A (zh) | 一种模型训练方法及相关装置 | |
JP6717184B2 (ja) | 車載制御装置 | |
CN113010285B (zh) | 用于处理数据的方法、装置、设备、介质和产品 | |
CN112860616B (zh) | 一种芯片、片间通信方法、电子设备和存储介质 | |
US11435715B2 (en) | System and method for detecting change over in manufacturing field | |
CN102859514B (zh) | 处理器之间的管理数据传输 | |
US8677103B1 (en) | Asynchronous pipelined data path with data transition |
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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20181221 |