JP2024093915A - Control system, control method for control system, and network switch - Google Patents
Control system, control method for control system, and network switch Download PDFInfo
- Publication number
- JP2024093915A JP2024093915A JP2022210564A JP2022210564A JP2024093915A JP 2024093915 A JP2024093915 A JP 2024093915A JP 2022210564 A JP2022210564 A JP 2022210564A JP 2022210564 A JP2022210564 A JP 2022210564A JP 2024093915 A JP2024093915 A JP 2024093915A
- Authority
- JP
- Japan
- Prior art keywords
- measurement data
- cache server
- node
- controller
- network switch
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 22
- 238000005259 measurement Methods 0.000 claims abstract description 237
- 238000004364 calculation method Methods 0.000 claims description 95
- 230000004044 response Effects 0.000 claims description 11
- 238000004891 communication Methods 0.000 description 47
- 238000007726 management method Methods 0.000 description 39
- 238000010586 diagram Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 17
- 238000012545 processing Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 11
- 230000005856 abnormality Effects 0.000 description 4
- 230000000052 comparative effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 102100023116 Sodium/nucleoside cotransporter 1 Human genes 0.000 description 3
- 101710123675 Sodium/nucleoside cotransporter 1 Proteins 0.000 description 3
- 102100021541 Sodium/nucleoside cotransporter 2 Human genes 0.000 description 3
- 101710123669 Sodium/nucleoside cotransporter 2 Proteins 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Programmable Controllers (AREA)
Abstract
Description
本開示は、制御システム、制御システムの制御方法、及び、ネットワークスイッチに関する。 The present disclosure relates to a control system, a control method for a control system, and a network switch.
特許文献1には、フィールド機器が接続された装置であるIOノードを経由して、コントローラからフィールド機器の動作を制御する制御システムが記載されている。
上記のような制御システムにおいて、複数のコントローラを設け、各コントローラがフィールド機器の入出力について同一の処理を行い、各コントローラの処理結果を比較することにより、コントローラの動作の信頼性を向上させることが考えられる。このようなコントローラの冗長化を行う場合において、従来の構成においては、複数のコントローラが高い精度で時間的に同期して動作する必要があり、処理及び構成が複雑になっていた。 In the above-mentioned control system, it is possible to improve the reliability of the controller's operation by providing multiple controllers, each of which performs the same processing on the input and output of the field devices and comparing the processing results of each controller. When making the controllers redundant in this way, in the conventional configuration, multiple controllers must operate in time synchronization with high precision, which makes the processing and configuration complicated.
本開示は、フィールド機器の制御システムにおいて、より簡易な構成でコントローラの冗長化を実現可能とすることを目的とする。 The purpose of this disclosure is to make it possible to achieve controller redundancy with a simpler configuration in a field device control system.
幾つかの実施形態に係る制御システムは、
(1)測定データを取得するフィールド機器が接続されたIOノードと、
前記フィールド機器が取得した前記測定データに基づき演算を行う複数のコントローラと、
ネットワークスイッチと、
キャッシュサーバと、
を備え、
前記複数のコントローラの各々は、予め一定の周期で定められた一定期間である制御タイミングごとに、前記フィールド機器が取得した前記測定データに対する要求を前記ネットワークスイッチへ送信し、
前記ネットワークスイッチは、
前記キャッシュサーバが前記測定データを保持していない場合、前記IOノードに、前記ネットワークスイッチを介して、当該IOノードに接続された前記フィールド機器が取得した前記測定データを前記コントローラへ送信させ、
前記キャッシュサーバが前記測定データを保持している場合、当該キャッシュサーバに、前記ネットワークスイッチを介して、前記フィールド機器が取得した前記測定データを前記コントローラへ送信させ、
前記複数のコントローラの各々は、前記IOノード又は前記キャッシュサーバから受信した前記測定データに基づき、予め定められた演算を行う。
In some embodiments, the control system includes:
(1) an IO node to which a field device for acquiring measurement data is connected;
a plurality of controllers that perform calculations based on the measurement data acquired by the field devices;
A network switch;
A cache server;
Equipped with
each of the plurality of controllers transmits a request for the measurement data acquired by the field device to the network switch at each control timing, which is a fixed period determined in a predetermined cycle;
The network switch includes:
If the cache server does not hold the measurement data, the IO node transmits the measurement data acquired by the field device connected to the IO node to the controller via the network switch;
When the cache server holds the measurement data, the cache server transmits the measurement data acquired by the field device to the controller via the network switch;
Each of the plurality of controllers performs a predetermined calculation based on the measurement data received from the IO node or the cache server.
このように、各コントローラは、非同期に動作する場合であっても、ネットワークスイッチを介して、IOノード又はキャッシュサーバから、制御タイミングにおける同一の測定データを取得することができる。すなわち、コントローラ30から見ると、同一の装置にアクセスしているように見えながら、実際は、キャッシュの有無に応じて、IOノード20、又は、キャッシュサーバ40から、全コントローラ30へ共通の測定データを取得させることができる。したがって、フィールド機器の制御システムにおいて、より簡易な構成でコントローラの冗長化を実現することが可能である。
In this way, even when each controller operates asynchronously, it can obtain the same measurement data at the control timing from the IO node or cache server via the network switch. In other words, from the perspective of the
(2)(1)の制御システムにおいて、
前記ネットワークスイッチは、
前記キャッシュサーバが前記測定データを保持していない場合、前記IOノードに対して前記測定データを要求し、
前記要求に基づき前記IOノードから前記測定データを受信したことに応じて、当該測定データを、前記コントローラへ送信するとともに、前記測定データを前記キャッシュサーバへ送信して前記測定データのキャッシュとして記憶させてもよい。
(2) In the control system of (1),
The network switch includes:
If the cache server does not hold the measurement data, the cache server requests the measurement data from the IO node;
In response to receiving the measurement data from the IO node based on the request, the measurement data may be transmitted to the controller, and the measurement data may also be transmitted to the cache server to be stored as a cache of the measurement data.
このように、ネットワークスイッチは、キャッシュサーバが測定データを保持していない場合に、IOノードから測定データを受信し、コントローラ及びキャッシュサーバへ送信する。このように、最初に測定データを要求したコントローラに対して送信された測定データがキャッシュサーバに記憶されるため、他のコントローラも、キャッシュサーバから同一の測定データを取得して、共通の測定データに基づき演算を行うことが可能である。 In this way, when the cache server does not hold the measurement data, the network switch receives the measurement data from the IO node and transmits it to the controller and cache server. In this way, the measurement data transmitted to the controller that first requested the measurement data is stored in the cache server, so other controllers can also obtain the same measurement data from the cache server and perform calculations based on the common measurement data.
(3)(1)又は(2)の制御システムにおいて、
前記ネットワークスイッチは、
前記キャッシュサーバが前記測定データを保持している場合、前記キャッシュサーバに対して前記測定データのキャッシュを要求し、
前記要求に基づき前記キャッシュサーバから前記測定データのキャッシュを受信したことに応じて、当該測定データのキャッシュを前記コントローラへ送信してもよい。
(3) In the control system according to (1) or (2),
The network switch includes:
If the cache server holds the measurement data, a request is made to the cache server to cache the measurement data;
In response to receiving the cached measurement data from the cache server upon the request, the cached measurement data may be transmitted to the controller.
このように、ネットワークスイッチは、キャッシュサーバが測定データを保持している場合に、キャッシュサーバから測定データのキャッシュを受信して、コントローラへ送信する。したがって、他のコントローラも、ネットワークスイッチを介してキャッシュサーバから測定データを取得して、共通の測定データに基づき演算を行うことが可能である。 In this way, when the cache server holds measurement data, the network switch receives a cache of the measurement data from the cache server and transmits it to the controller. Therefore, other controllers can also obtain measurement data from the cache server via the network switch and perform calculations based on the common measurement data.
(4)(1)から(3)のいずれかの制御システムにおいて、
前記ネットワークスイッチは、
前記制御タイミングごとに前記キャッシュサーバが前記測定データを保持しているか否かを示す情報を含む管理テーブルを保持し、
前記複数のコントローラのいずれかから前記測定データに対する前記要求を受けたことに応じて、前記管理テーブルを参照して、前記キャッシュサーバが前記測定データを保持しているか否かを判定してもよい。
(4) In any one of the control systems (1) to (3),
The network switch includes:
A management table including information indicating whether the cache server holds the measurement data for each of the control timings is held;
In response to receiving the request for the measured data from any one of the plurality of controllers, the management table may be referenced to determine whether or not the cache server holds the measured data.
このように、ネットワークスイッチは、制御タイミングごとにキャッシュサーバが測定データを保持しているか否かを示す情報を含む管理テーブルを保持するため、制御タイミングにキャッシュサーバに問い合わせなくても、キャッシュサーバが測定データを保持しているか否かを判定することができる。 In this way, the network switch holds a management table that contains information indicating whether or not the cache server holds measurement data for each control timing, so it can determine whether or not the cache server holds measurement data without having to query the cache server at the control timing.
(5)(4)の制御システムにおいて、
前記ネットワークスイッチは、前記制御タイミングごとに、前記測定データを受信した前記コントローラの識別情報を含む情報を前記管理テーブルとして保持してもよい。
(5) In the control system of (4),
The network switch may hold, for each of the control timings, information including identification information of the controller that received the measurement data as the management table.
このように、ネットワークスイッチが測定データのキャッシュを送信したコントローラの識別情報を記録することで、記録を参照してキャッシュデータを送信したコントローラを特定することが可能になる。 In this way, the network switch records the identification information of the controller that sent the cached measurement data, making it possible to identify the controller that sent the cached data by referring to the record.
(6)(1)から(5)のいずれかの制御システムにおいて、
前記複数のコントローラの各々は、前記制御タイミングごとに、前記ネットワークスイッチを介して受信した前記測定データに基づき、前記演算を行った結果である演算結果を前記IOノードへ送信し、
前記IOノードは、
前記制御タイミングごとに、前記複数のコントローラの各々から受信した前記演算結果を比較して、前記複数のコントローラの動作が正常であるか否かを判定し、
前記複数のコントローラの動作が正常であるか否かの判定結果を出力してもよい。
(6) In any one of the control systems (1) to (5),
each of the plurality of controllers transmits, at each control timing, a calculation result that is a result of performing the calculation based on the measurement data received via the network switch to the IO node;
The IO node includes:
comparing the calculation results received from each of the plurality of controllers at each of the control timings to determine whether or not the operations of the plurality of controllers are normal;
A result of the determination as to whether the operations of the plurality of controllers are normal or not may be output.
このように、ネットワークスイッチは、制御システムは、複数のコントローラの演算結果を比較することで、コントローラの異常を検出することができる。また、制御タイミング内に受信した演算結果に基づきコントローラの動作が正常であるか否かを判定するため、制御タイミング内に演算結果を送信できなかったコントローラの演算結果については、動作が異常であるか否かの判定に使用しないようにすることができる。 In this way, the network switch and control system can detect controller abnormalities by comparing the calculation results of multiple controllers. In addition, because it determines whether the operation of a controller is normal or not based on the calculation results received within the control timing, it is possible to avoid using the calculation results of a controller that was unable to transmit its calculation results within the control timing when determining whether the operation is abnormal or not.
幾つかの実施形態に係るネットワークスイッチは、
(7)フィールド機器の制御システムに用いられるネットワークスイッチであって、
前記フィールド機器が取得した測定データに対する要求をコントローラから受信したことに応じて、前記測定データをキャッシュサーバが保持しているか否かの情報を前記キャッシュサーバから取得し、
前記キャッシュサーバが前記測定データを保持していない場合、前記フィールド機器が接続されたIOノードへ、前記測定データに対する要求を送信し、
前記キャッシュサーバが前記測定データを保持している場合、当該キャッシュサーバへ、前記測定データ対する要求を送信する。
In some embodiments, the network switch comprises:
(7) A network switch for use in a control system for a field device, comprising:
acquiring, from the cache server, information as to whether or not the cache server holds the measurement data in response to receiving a request for the measurement data acquired by the field device from the controller;
If the cache server does not store the measurement data, a request for the measurement data is sent to an IO node to which the field device is connected;
If the cache server holds the measurement data, a request for the measurement data is sent to the cache server.
このように、ネットワークスイッチは、コントローラから測定データに対する要求を受信したことに応じて、キャッシュサーバが測定データを保持しているか否かに応じて、測定データに対する要求をIOノード又はキャッシュサーバに振り分けて送信する。そのため、各コントローラは、同一のネットワーク装置に問い合わせて、全てのコントローラに共通の測定データを取得することができる。 In this way, when the network switch receives a request for measurement data from a controller, it distributes and sends the request for measurement data to an IO node or a cache server depending on whether the cache server holds the measurement data. Therefore, each controller can query the same network device and obtain measurement data that is common to all controllers.
幾つかの実施形態に係る制御システムの制御方法は、
(8)測定データを取得するフィールド機器が接続されたIOノードと、
前記フィールド機器が取得した前記測定データに基づき演算を行う複数のコントローラと、
ネットワークスイッチと、
キャッシュサーバと、
を備える制御システムの制御方法であって、
前記複数のコントローラの各々が、予め一定の周期で定められた一定期間である制御タイミングごとに、前記フィールド機器が取得した前記測定データに対する要求を前記ネットワークスイッチへ送信する工程と、
前記ネットワークスイッチが、前記キャッシュサーバが前記測定データを保持していない場合、前記IOノードに、前記ネットワークスイッチを介して、当該IOノードに接続された前記フィールド機器が取得した前記測定データを前記コントローラへ送信させ、前記キャッシュサーバが前記測定データを保持している場合、当該キャッシュサーバに、前記ネットワークスイッチを介して、前記フィールド機器が取得した前記測定データを前記コントローラへ送信させる、工程と、
前記複数のコントローラの各々が、前記IOノード又は前記キャッシュサーバから受信した前記測定データに基づき、予め定められた演算を行う工程と、
を含む。
A control method for a control system according to some embodiments includes:
(8) an IO node to which a field device that acquires measurement data is connected;
a plurality of controllers that perform calculations based on the measurement data acquired by the field devices;
A network switch;
A cache server;
A control method for a control system comprising:
each of the plurality of controllers transmitting a request for the measurement data acquired by the field device to the network switch at each control timing, which is a fixed period determined in a predetermined cycle;
a step of causing the IO node to transmit the measurement data acquired by the field device connected to the IO node to the controller via the network switch when the cache server does not hold the measurement data, and causing the cache server to transmit the measurement data acquired by the field device to the controller via the network switch when the cache server holds the measurement data;
Each of the plurality of controllers performs a predetermined calculation based on the measurement data received from the IO node or the cache server;
including.
このように、各コントローラは、非同期に動作する場合であっても、ネットワークスイッチを介して、IOノード又はキャッシュサーバから、制御タイミングにおける同一の測定データを取得することができる。すなわち、コントローラ30から見ると、同一の装置にアクセスしているように見えながら、実際は、キャッシュの有無に応じて、IOノード20、又は、キャッシュサーバ40から、全コントローラ30へ共通の測定データを取得させることができる。したがって、フィールド機器の制御システムにおいて、より簡易な構成でコントローラの冗長化を実現することが可能である。
In this way, even when each controller operates asynchronously, it can obtain the same measurement data at the control timing from the IO node or cache server via the network switch. In other words, from the perspective of the
本開示の一実施形態によれば、フィールド機器の制御システムにおいて、より簡易な構成でコントローラの冗長化を実現することができる。 According to one embodiment of the present disclosure, controller redundancy can be achieved with a simpler configuration in a field device control system.
<比較例>
図1は、比較例に係る制御システム9の構成を示す図である。制御システム9は、フィールド機器91(91a,91b)、IO(Input/Output)ノード92、及び、コントローラ93(93a,93b)を備える。IOノード92及びコントローラ93(93a,93b)は、ネットワーク95を介して互いに通信可能に接続される。
Comparative Example
1 is a diagram showing a configuration of a
フィールド機器91(91a,91b)は、プラントの制御のための測定データの取得、及び、プラントの操作の少なくとも一方を行う装置である。IOノード92は、フィールド機器91(91a,91b)が接続され、コントローラ93(93a,93b)とのインタフェースとして機能する装置である。コントローラ93(93a,93b)は、フィールド機器91(91a,91b)の測定データに対して演算を行い、演算結果に基づきフィールド機器91(91a,91b)を制御する装置である。
The field devices 91 (91a, 91b) are devices that acquire measurement data for controlling the plant and/or operate the plant. The
制御システム9において、IOノード92は、一定周期(例えば、1秒ごと)でフィールド機器91(91a,91b)から測定データを収集する。コントローラ93a,93bの各々は、一定周期(例えば、1秒ごと)でIOノード92からフィールド機器91(91a,91b)の測定データを取得する。コントローラ93(93a,93b)は、取得した測定データに基づき演算を行い、IOノード92へ演算結果を送信する。IOノードは、コントローラ93(93a,93b)から演算結果を受信すると、受信した演算結果をフィールド機器へ出力する。
In the
図1の例では、コントローラ93(93a,93b)の演算の信頼性向上のため、制御システム9は、複数のコントローラ93a,93bを備え、コントローラ93a,93bの演算結果を比較する。具体的には、コントローラ93a,93bの各々は、フィールド機器91(91a,91b)の同一の測定データに対して同一の演算を行い、演算結果をIOノード92へ出力する。IOノード92は、コントローラ93a,93bから受信した演算結果を比較する。IOノード92は、複数のコントローラ93a,93bから受信した演算結果が一致した場合は正常と判定し、一致しなかった場合はコントローラ93a,93bの故障等により正しく演算できなかったと判定する。このようなコントローラ93(93a,93b)の冗長化により演算の信頼性を向上させるためには、コントローラ93(93a,93b)がIOノード92から同一のタイミングの測定データを取得し、同一の演算を行うことが必要である。
In the example of FIG. 1, in order to improve the reliability of the calculations of the controllers 93 (93a, 93b), the
一般に、IOノード92がフィールド機器91(91a,91b)から測定データを収集するタイミングと、コントローラ93(93a,93b)がIOノード92から測定データを収集するタイミングとは同期していない。そのため、コントローラ93aとコントローラ93bとでIOノード92から測定データを取得するタイミングがずれると、同一の測定データを取得することができない場合がある。しかし、コントローラ93a,93bの演算動作タイミングを一致させるには、高精度な時刻同期が必要となり、処理及び構成が複雑になる。IOノード92と、コントローラ93a,93bのデータ取得タイミングを同期させるためにも、コントローラ93(93a,93b)において、高精度な時刻同期が必要となる。
In general, the timing at which the
このように、比較例に係る制御システム9においては、複数のコントローラ93(93a,93b)が高い精度で時間的に同期して動作する必要があり、処理及び構成が複雑になる。本開示は、高精度な時刻同期を伴わずに、複数のコントローラが同一のタイミングの測定データを取得可能にすることを目的とする。
As such, in the
<実施形態1>
以下、本開示の一実施形態について、図面を参照して説明する。各図面中、同一の構成又は機能を有する部分には、同一の符号を付している。本実施形態の説明において、同一の部分については、重複する説明を適宜省略又は簡略化する場合がある。
<
Hereinafter, an embodiment of the present disclosure will be described with reference to the drawings. In each drawing, parts having the same configuration or function are denoted by the same reference numerals. In the description of this embodiment, duplicated descriptions of the same parts may be omitted or simplified as appropriate.
(制御システム)
図2は、一実施形態に係る制御システム1aの概略構成例を示す図である。制御システム1aは、フィールド機器10(10a,10b)、IOノード20、コントローラ30(30a,30b)、キャッシュサーバ40、及び、ネットワーク50を備える。
(Control System)
2 is a diagram showing an example of a schematic configuration of a
フィールド機器10(10a,10b)は、プラントの制御のための測定データの取得、及び、プラントの操作の少なくとも一方を行う装置である。フィールド機器10(10a,10b)は、例えば、温度センサ又は流量計等のセンサ10a、及び、バルブ機器、ファン又はモータ等のアクチュエータ10bでもよい。以下、フィールド機器10a,10bをまとめて「フィールド機器10」と称する場合がある。フィールド機器10は、測定データをIOノード20へ出力するとともに、IOノード20から受信した制御信号に基づき動作を制御する。図2の例において、制御システム1aは2つのフィールド機器10a,10bを備えるが、フィールド機器10の個数は任意である。
The field devices 10 (10a, 10b) are devices that acquire measurement data for controlling the plant and/or operate the plant. The field devices 10 (10a, 10b) may be, for example,
IOノード20は、フィールド機器10が接続され、フィールド機器10とコントローラ30(30a,30b)とのインタフェースとして機能する装置である。IOノード20はネットワーク50に接続され、ネットワーク50を介して、コントローラ30(30a,30b)と通信可能である。図2の例において、制御システム1aは1つのIOノード20を備えるが、IOノード20の個数は任意である。また、各IOノード20に接続されるフィールド機器10の個数は任意である。
The
コントローラ30(30a,30b)は、フィールド機器10の測定データに対して演算を行い、演算結果に基づきフィールド機器10を制御する装置である。以下、コントローラ30a,30bをまとめて「コントローラ30」と称する場合がある。コントローラ30は、ネットワーク50を経由して、IOノード20及びキャッシュサーバ40と通信可能に構成される。コントローラ30は、IOノード20を経由して、フィールド機器10にアクセスすることができる。制御システム1aは、2つのコントローラ30a,30bを備えているが、コントローラ30の個数は任意の複数個である。
The controller 30 (30a, 30b) is a device that performs calculations on the measurement data of the
キャッシュサーバ40は、コントローラ30a,30bのうち先にこのキャッシュサーバ40にアクセスした方がIOノード20から取得した測定データをキャッシュとして保持する装置である。制御システム1aは、1つのキャッシュサーバ40を備えているが、キャッシュサーバ40の個数は任意である。
The
ネットワーク50は、プラント内のIOノード20、コントローラ30、及び、キャッシュサーバ40等の情報機器を接続可能な専用の通信ネットワークである。ネットワーク50は、有線又は無線の構内通信網(LAN:Local Area Network)を含んでよい。有線の構内通信網は、例えば、イーサネットを含む。無線の構内通信網は、例えばWi-Fi(登録商標)及びWiMAX(登録商標)等の無線通信規格に準拠した無線ネットワークを含む。さらにOPC UA又はPROFINETのような標準化されたプロトコルを使用する通信ネットワークを用いてもよい。さらには、ネットワークは、ネットワーク50は、例えばインターネット、イントラネット、及び移動体通信網等を含んでもよい。
The
制御システム1aにおいて、IOノード20は、一定周期(例えば、1秒ごと)でフィールド機器10から測定データを収集する。IOノード20は、収集した測定データを記憶部202(図6参照)に記憶させる。コントローラ30a,30bの各々は、一定周期(例えば、1秒ごと)でキャッシュサーバ40にアクセスし、フィールド機器91(91a,91b)の測定データを取得するための処理を行う。ここで、IOノード20及びコントローラ30a,30bの動作は完全に時間的に同期しているわけではなく、それぞれ別個に一定周期で動作している。
In the
このような構成において、複数のコントローラ30(30a,30b)の内、最初にキャッシュサーバ40にアクセスした方のみIOノード20にアクセスして測定データを取得する。例えば、コントローラ30aが最初にキャッシュサーバ40にアクセスした場合、コントローラ30aは、IOノード20にアクセスし、IOノード20からフィールド機器10の測定データを取得する。コントローラ30aは、取得した測定データをキャッシュサーバ40に送信し、キャッシュサーバ40に測定データのキャッシュを保持させる。一方、遅れてキャッシュサーバ40にアクセスしたコントローラ30bは、キャッシュサーバ40から、測定データのキャッシュを取得する。このように、制御システム1aにおいては、最初にキャッシュサーバ40にアクセスしたコントローラ30(例えば、コントローラ30a)のみがIOノード20からフィールド機器10の測定データを取得する。それ以外のコントローラ30(例えば、コントローラ30b)は、キャッシュサーバ40から測定データのキャッシュを取得する。したがって、制御システム1aは、各コントローラの動作が高い精度で同期して動作していなくても、複数のコントローラ30(30a,30b)が同一の測定データを取得することを保証することが可能である。
In such a configuration, only the controller 30 (30a, 30b) that first accesses the
コントローラ30(30a,30b)の各々は、取得した測定データに基づき演算を行い、IOノード20へ演算結果を送信する。IOノード20は、各コントローラ30(30a,30b)から演算結果を受信すると、受信した演算結果を比較して、各コントローラ30(30a,30b)の動作が正常であるか否かを判定する。IOノード20は、判定結果をログ情報として記憶部302(図5参照)又は表示装置(ディスプレイ)等へ出力する。IOノード20は、判定結果をコントローラ30又はキャッシュサーバ40等の他の装置へ送信してもよい。
Each of the controllers 30 (30a, 30b) performs calculations based on the acquired measurement data and transmits the calculation results to the
図3は、図2の制御システム1aの機能構成例を示すブロック図である。IOノード20は、制御アプリケーション部21、アクセス経路制御部22、及び、通信制御部23を備える。
Figure 3 is a block diagram showing an example of the functional configuration of the
制御アプリケーション部21は、IOノード20に接続されたフィールド機器10を制御する。制御アプリケーション部21は、オペレーティングシステム上で動作してよい。制御アプリケーション部21は、プロセス制御を行う上で必要なフィールド機器10の制御を行う。例えば、制御アプリケーション部21は、フィールド機器10からの測定データの収集、及び、フィールド機器10に対する制御データの送信等を行う。
The
アクセス経路制御部22は、制御アプリケーション部21に対して抽象化されたIOアクセス方法を提供する。アクセス経路制御部22は、アクセス経路制御部22が搭載されたIOノード20とフィールド機器10との物理的な関係に合わせてアクセス方法を適応的に変更する。ハードウェアを抽象化するため、アクセス経路制御部22は、IOノード20内の仮想化部24に含まれてよい。仮想化部24は、IOノード20のハードウェア上でハードウェアの代わりとして仮想的に動作する。仮想化部24は、制御アプリケーション部21を変更することなくIOノード20のハードウェアの交換を可能にするために設けられる。しかし、アクセス経路制御部22の機能を提供するために、仮想化部24は必須ではない。仮想化部24が無くとも、アクセス経路制御部22を実装することは可能である。
The access path control
通信制御部23は、IOノード20に接続されたフィールド機器10、及び、ネットワーク50に接続されたコントローラ30との間で通信を行う。通信制御部23は、フィールド機器10との接続形態、及び、ネットワーク50の種類等に応じて必要な通信処理を行う。
The
コントローラ30(30a,30b)は、制御アプリケーション部31(31a,31b)、アクセス経路制御部32(32a,32b)、及び、通信制御部33(33a,33b)を備える。コントローラ30(30a,30b)は、IOノード20と同様に、仮想化部34(34a,34b)を備えてもよい。コントローラ30aの制御アプリケーション部31a、アクセス経路制御部32a、通信制御部33a、及び、仮想化部34aは、コントローラ30bの制御アプリケーション部31b、アクセス経路制御部32b、通信制御部33b、及び、仮想化部34bと同一である。そこで、以下、制御アプリケーション部31a,31b、アクセス経路制御部32a,32b、通信制御部33a,33b、仮想化部34a,34bを、まとめて「制御アプリケーション部31」、「アクセス経路制御部32」、「通信制御部33」、「仮想化部34」と称する場合がある。コントローラ30の制御アプリケーション部31、アクセス経路制御部32、通信制御部33、仮想化部34は、IOノード20の制御アプリケーション部21、アクセス経路制御部22、通信制御部23、仮想化部24と同一又は類似の機能を有するので、詳細な説明を省略する。
The controller 30 (30a, 30b) includes a control application unit 31 (31a, 31b), an access path control unit 32 (32a, 32b), and a communication control unit 33 (33a, 33b). The controller 30 (30a, 30b) may include a virtualization unit 34 (34a, 34b) like the
キャッシュサーバ40は、管理テーブル41、アクセス経路制御部42、通信制御部43、及びキャッシュデータベース45を備える。
The
管理テーブル41は、コントローラ30のキャッシュサーバ40へのアクセスの状況を管理するためのテーブルである。図4及び図5は、図3の管理テーブルの一例を示す図である。キャッシュサーバ40は、一定周期(例えば、1秒ごと)で、最初にキャッシュサーバ40にアクセスしたコントローラ30の識別情報を保持する。初期状態において、管理テーブル41は、空白、「0」、又は、「-」等の値(図4及び図5の例では「-」)を保持する。図4及び図5の例において、制御タイミングは、コントローラ30が周期的に測定データを取得するための、予め一定の周期で定められた一定期間を示す。制御タイミングT001は、例えば、時刻0時0分0秒~0時0分1秒の期間に対応する。制御タイミングT002は、例えば、時刻0時0分1秒~0時0分2秒の期間に対応する。制御タイミングT003は、例えば、時刻0時0分2秒~0時0分3秒の期間に対応する。これらの例において、制御タイミングT001~T003は、1秒の周期で定められた長さが1秒の期間に相当する。なお、制御タイミングの周期と長さとは異なってもよく、例えば、制御タイミングは、10秒周期で定められた長さ1秒の期間としてもよい。制御タイミングは、キャッシュサーバ40の計時部により測定された時刻に基づき決定されるが、NTP(Network Time Protocol)サーバ等の時刻サーバ又はコントローラ30等の他の装置により測定された時刻に基づき決定されてもよい。制御タイミングを時刻サーバにより測定された時刻に基づき決定する場合、正確な時刻を反映した制御タイミングを取得することができ、制御タイミングの信頼性を保つことができる。制御タイミングを各コントローラ30により測定された時刻に基づき決定する場合、各コントローラ30は、時刻サーバ等の他の装置にアクセスすることなく制御タイミングを決定することができ、可用性を保つことができる。
The management table 41 is a table for managing the status of the
図2の例においてIOノード20の個数は1つだが、図4の管理テーブル41は、3つのIOノード20(IO-1,IO-2,IO-3)を備えた制御システム1aにおいて、最初にキャッシュサーバ40にアクセスしたコントローラ30の識別情報を保持している。図5の管理テーブル41は、2つのIOノード20(IO-5,IO-6)を備えた制御システム1aにおいて、最初にキャッシュサーバ40にアクセスしたコントローラ30の識別情報を保持している。
In the example of FIG. 2, there is one
例えば、図4において、制御タイミング「T001」では、識別情報「IO-1」「IO-2」のIOノード20については、識別情報「CNT-1」のコントローラ30(例えば、コントローラ30a)が最初にキャッシュサーバ40にアクセスしている。「IO-3」のIOノード20については、識別情報「CNT-2」のコントローラ30(例えば、コントローラ30b)が最初にキャッシュサーバ40にアクセスしている。制御タイミング「T002」では、識別情報「IO-1」「IO-2」「IO-3」の各IOノード20について、識別情報「CNT-1」のコントローラ30(例えば、コントローラ30a)が最初にキャッシュサーバ40にアクセスしている。制御タイミング「T003」では、識別情報「IO-1」「IO-2」のIOノード20について、識別情報「CNT-2」のコントローラ30(例えば、コントローラ30b)が最初にキャッシュサーバ40にアクセスしている。識別情報「IO-3」のIOノード20については、まだいずれのコントローラ30もキャッシュサーバ40にアクセスしていない。図5の例では、いずれの制御タイミングにおいても、いずれのIOノード20についても、まだコントローラ30はキャッシュサーバ40にアクセスしていない。
For example, in FIG. 4, at control timing "T001", for the
キャッシュサーバ40は、複数のコントローラ30の複数のIOノード20に対するアクセスを管理する場合、コントローラ30及びIOノード20を複数の制御グループに分類し、制御グループごとに管理テーブル41を保持してもよい。例えば、冗長化の対象とする複数のコントローラ30に対して、「C001」等の制御グループを設定してもよい。例えば、キャッシュサーバ40は、どのコントローラ30がどのIOノード20に接続されたフィールド機器10の測定データの演算を行うかに応じて、コントローラ30及びIOノード20を複数の制御グループに分類してもよい。例えば、図4の管理テーブル41は、識別情報「CNT-1」「CNT-2」のコントローラ30が識別情報「IO-1」「IO-2」「IO-3」のIOノード20の制御を行う制御グループ1のアクセス管理を示してもよい。例えば、図5の管理テーブル41は、識別情報「CNT-X」「CNT-Y」のコントローラ30が識別情報「IO-5」「IO-6」のIOノード20の制御を行う制御グループ2のアクセス管理を示してもよい。同一の制御グループに含まれるコントローラ30は、同一の制御演算を行う。
When managing access to
図3の説明に戻る。キャッシュサーバ40のアクセス経路制御部42、通信制御部43、及び、仮想化部44は、IOノード20のアクセス経路制御部22、通信制御部23、及び、仮想化部24と同一又は類似の機能を有するので、詳細な説明を省略する。
Returning to the explanation of FIG. 3, the access path control
キャッシュデータベース45は、各制御タイミングにおいて、もっとも早くキャッシュサーバ40にアクセスしたコントローラ30がIOノード20から取得した測定データをキャッシュとして記憶する。図1のように、IOノード20に複数のフィールド機器10a,10bが接続されている場合、キャッシュデータベース45は、各フィールド機器10の測定データを記憶してもよい。前述のように、制御システム1aが複数のIOノード20を含む場合、キャッシュデータベース45は、IOノード20毎に、各IOノード20から取得した測定データを記憶してもよい。前述のように、制御システム1aが複数の制御グループに分類された数のコントローラ30の複数のIOノード20に対するアクセスを管理する場合、キャッシュデータベース45は、制御グループ毎に、各IOノード20から取得した測定データを記憶してもよい。
At each control timing, the
(IOノード)
図6は、図2のIOノード20のハードウェア構成例を示すブロック図である。IOノード20は、1つ又は互いに通信可能な複数のコンピュータ装置である。IOノード20は、例えば、PC(Personal Computer)又はWS(Workstation)等の汎用のコンピュータにより実現されるが、FPGA(Field Programmable Gate Array)又はプラント等の制御用に設計された専用コンピュータ等により実現されてもよい。図6に示すように、IOノード20は、制御部201、記憶部202、及び、通信部203を備える。
(IO node)
Fig. 6 is a block diagram showing an example of a hardware configuration of the
制御部201は、1つ以上のプロセッサを含む。一実施形態において「プロセッサ」は、汎用のプロセッサ、又は特定の処理に特化した専用のプロセッサであるが、これらに限定されない。制御部201は、IOノード20を構成する各構成部と通信可能に接続され、IOノード20全体の動作を制御する。
The
記憶部202は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、ROM(Read-Only Memory)、及びRAM(Random Access Memory)等の任意の記憶モジュールを含む。記憶部202は、例えば、主記憶装置、補助記憶装置、又はキャッシュメモリとして機能してもよい。記憶部202は、IOノード20の動作に用いられる任意の情報を記憶する。例えば、記憶部202は、システムプログラム(オペレーティングシステム)、アプリケーションプログラム、及び通信部203によって受信された各種情報等を記憶してもよい。記憶部202は、IOノード20に内蔵されているものに限定されず、外付けのデータベース又は外付け型の記憶モジュールであってもよい。
The
通信部203は、任意の通信技術によってフィールド機器10及びコントローラ30等の他の装置と通信接続可能な、任意の通信モジュールを含む。通信部203は、さらに、他の装置との通信を制御するための通信制御モジュール、及び他の装置との通信に必要となる識別情報等の通信用データを記憶する記憶モジュールを含んでもよい。
The
IOノード20の機能は、本実施形態に係るコンピュータプログラム(プログラム)を、制御部201に含まれるプロセッサで実行することにより実現されうる。すなわち、IOノード20の機能は、ソフトウェアにより実現されうる。コンピュータプログラムは、IOノード20の動作に含まれるステップの処理をコンピュータに実行させることで、各ステップの処理に対応する機能をコンピュータに実現させる。すなわち、コンピュータプログラムは、コンピュータを本実施形態に係るIOノード20として機能させるためのプログラムである。コンピュータプログラムは、コンピュータで読み取り可能な記録媒体に記録してもよい。プログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるものが含まれる。例えば、コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータは、「プログラムに準ずるもの」に該当する。
The functions of the
IOノード20の一部又は全ての機能が、制御部201に含まれる専用回路により実現されてもよい。すなわち、IOノード20の一部又は全ての機能が、ハードウェアにより実現されてもよい。また、IOノード20は単一のコンピュータ装置により実現されてもよいし、複数のコンピュータ装置の協働により実現されてもよい。
Some or all of the functions of the
(コントローラ)
図7は、図2のコントローラ30のハードウェア構成例を示すブロック図である。コントローラ30は、1つ又は互いに通信可能な複数のコンピュータ装置である。コントローラ30は、例えば、PC又はWS等の汎用のコンピュータにより実現されるが、FPGA又はプラント等の制御用に設計された専用コンピュータ等により実現されてもよい。図7に示すように、コントローラ30は、制御部301、記憶部302、及び、通信部303を備える。コントローラ30の制御部301、記憶部302、及び、通信部303は、IOノード20の制御部201、記憶部202、及び、通信部203と同様に実現されるため、詳細な説明を省略する。また、IOノード20と同様に、コントローラ30の機能は、本実施形態に係るプログラムを、制御部301に含まれるプロセッサで実行することにより実現されうる。
(controller)
7 is a block diagram showing an example of a hardware configuration of the
(キャッシュサーバ)
図8は、図2のキャッシュサーバ40のハードウェア構成例を示すブロック図である。キャッシュサーバ40は、1つ又は互いに通信可能な複数のコンピュータ装置である。キャッシュサーバ40は、例えば、PC又はWS等の汎用のコンピュータにより実現されるが、FPGA又はプラント等の制御用に設計された専用コンピュータ等により実現されてもよい。図8に示すように、キャッシュサーバ40は、制御部401、記憶部402、及び、通信部403を備える。キャッシュサーバ40の制御部401、記憶部402、及び、通信部403は、IOノード20の制御部201、記憶部202、及び、通信部203と同様に実現されるため、詳細な説明を省略する。また、IOノード20と同様に、キャッシュサーバ40の機能は、本実施形態に係るプログラムを、制御部401に含まれるプロセッサで実行することにより実現されうる。
(cache server)
FIG. 8 is a block diagram showing an example of a hardware configuration of the
(制御システムの動作)
図9及び図10は、一実施形態に係る制御システム1aの動作例を示すシーケンスチャートである。図9及び図10を参照して説明する制御システム1aの動作は、制御システム1aの制御方法の一つに相当してもよい。図9及び図10の各ステップの動作は、IOノード20の制御部201、コントローラ30の制御部301、又は、キャッシュサーバ40の制御部401による制御に基づき実行されてもよい。図9及び図10の処理は、制御タイミングごと、例えば、1秒ごとに実行される。図9及び図10は、ある制御タイミングにおいて、まずコントローラ30aがキャッシュサーバ40にアクセスし、その後、コントローラ30bがキャッシュサーバ40にアクセスしている例を示している。図9は、コントローラ30aが測定データを取得して演算を行う処理を示している。図10は、コントローラ30bが測定データを取得して演算を行う処理を示している。以下、図2のように、制御システム1aは1つのIOノード20を備える例を説明する。
(Control system operation)
9 and 10 are sequence charts showing an example of the operation of the
図9のステップS1において、コントローラ30aの制御部301は、キャッシュサーバ40に対し、IOノード20に接続されているフィールド機器10の測定データのキャッシュがキャッシュデータベース45に記憶されているか否かを問い合わせる。例えば、コントローラ30aのアクセス経路制御部32aが問い合わせを行ってもよい。
In step S1 of FIG. 9, the
ステップS2において、キャッシュサーバ40の制御部401は、ステップS1で問い合わせを受けた測定データのキャッシュが記憶されているか否かを判定する。例えば、制御部401は、管理テーブル41を参照し、該当する制御タイミング及びIOノード20について、コントローラ30のアクセスが記録されているか否かを判定して、キャッシュの有無を判定してもよい。図9の例は、ある制御タイミングにおいてコントローラ30aが初めてアクセスした場合を示しているため、制御部401は、キャッシュなしと判定する。
In step S2, the
ステップS3において、キャッシュサーバ40の制御部401は、コントローラ30aに対し、キャッシュなしを通知する。
In step S3, the
キャッシュサーバ40からキャッシュなしの通知を受けると、ステップS4において、コントローラ30aの制御部301は、IOノード20に対して、フィールド機器10の測定データを要求する。例えば、コントローラ30aの制御アプリケーション部31aがデータ取得を要求してもよい。
When a notification of no cache is received from the
コントローラ30aから測定データの要求を受信すると、ステップS5において、IOノード20の制御部201は、フィールド機器10の測定データを取得する。前述のように、IOノード20は、一定周期(例えば、1秒ごと)でフィールド機器10から測定データを収集し、収集した測定データを記憶部202に記憶させる。そこで、制御部201は、記憶部202から測定データを読み出して、測定データを取得する。なお、制御部201は、コントローラ30から測定データの要求を受信したことに応じて、フィールド機器10から測定データを取得してもよい。
When a request for measurement data is received from the
ステップS6において、IOノード20の制御部201は、ステップS5で取得したフィールド機器10の測定データをコントローラ30aへ送信する。
In step S6, the
フィールド機器10の測定データをIOノード20から受信すると、ステップS7において、コントローラ30aの制御部301は、受信した測定データを記憶部302に記憶させるとともに、キャッシュサーバ40へ測定データを送信する。
When the measurement data of the
フィールド機器10の測定データをコントローラ30aから受信すると、ステップS8において、キャッシュサーバ40の制御部401は、受信した測定データをキャッシュデータベース45に記憶させるとともに、管理テーブル41を更新する。例えば、制御部401は、対応する制御グループの管理テーブル41において、該当する制御タイミングのIOノード20に対応する項目を、コントローラ30aの識別情報により更新してもよい。
When the measurement data of the
一方、ステップS9において、コントローラ30aの制御部301は、ステップS7で取得した測定データに基づき、予め定められた演算を行う。例えば、コントローラ30aの制御アプリケーション部21aが演算を行ってもよい。演算内容は、フィールド機器10の種類等に応じて、予め設定されている。
Meanwhile, in step S9, the
ステップS10において、コントローラ30aの制御部301は、ステップS9の処理による演算結果をIOノード20へ送信する。なお、制御システム1aは、ステップS7,S8の前に、ステップS9,S10の処理を実行してもよい。
In step S10, the
コントローラ30aから演算結果を受信すると、ステップS11において、IOノード20の制御部201は、コントローラ30aから受信した演算結果を記憶部202に記憶させて保持する。
When the calculation result is received from the
次に、図10のステップS21において、コントローラ30bの制御部301は、キャッシュサーバ40に対し、IOノード20に接続されているフィールド機器10の測定データのキャッシュがキャッシュデータベース45に記憶されているか否かを問い合わせる。例えば、コントローラ30bの仮想化部34bが問い合わせを行ってもよい。
Next, in step S21 of FIG. 10, the
ステップS22において、キャッシュサーバ40の制御部401は、キャッシュサーバ40の制御部401は、ステップS21で問い合わせを受けた測定データのキャッシュが記憶されているか否かを判定する。例えば、制御部401は、管理テーブル41を参照し、該当する制御タイミング及びIOノード20について、コントローラ30のアクセスが記録されているか否かを判定して、キャッシュの有無を判定してもよい。図10の例は、該当する制御タイミングにおいて既にコントローラ30aがアクセスした場合を示しているため、制御部401は、キャッシュありと判定する。
In step S22, the
そこで、ステップS23において、キャッシュサーバ40の制御部401は、図9のステップS8でキャッシュデータベース45に保持した測定データのキャッシュを読み出して取得する。具体的には、制御部401は、該当する制御グループのIOノード20の識別情報に対応づけて記憶された、該当する制御タイミングの測定データを取得してもよい。
Therefore, in step S23, the
ステップS24において、キャッシュサーバ40の制御部401は、ステップS23で取得した測定データのキャッシュをコントローラ30bへ送信する。
In step S24, the
測定データのキャッシュをキャッシュサーバ40から受信すると、ステップS25において、コントローラ30bの制御部301は、取得した測定データのキャッシュに基づき、予め定められた演算を行う。例えば、コントローラ30bの制御アプリケーション部21bが演算を行ってもよい。演算内容は、コントローラ30aが実行する演算と同一である。
When the cache of the measurement data is received from the
ステップS26において、コントローラ30bの制御部301は、ステップS25の処理による演算結果をIOノード20へ送信する。
In step S26, the
コントローラ30bから演算結果を受信すると、ステップS27において、IOノード20の制御部201は、図9のステップS11で保持したコントローラ30aによる演算結果と比較し、コントローラ30a,30bが正常に動作しているか否かを判定する。例えば、制御部201は、コントローラ30a,30bによる演算結果が一致した場合、各コントローラ30a,30bは正常に動作しており、そうでない場合は正常に動作していないと判定してもよい。制御システム1aが3つ以上のコントローラ30を備えている場合も同様に、制御部201は、全てのコントローラ30による演算結果が一致した場合、各コントローラ30は正常に動作しており、そうでない場合は正常に動作していないと判定してもよい。
When the calculation result is received from
ステップS28において、IOノード20の制御部201は、ステップS27で判定した結果を出力する。例えば、制御部201は、判定結果をログファイルとして、記憶部202に出力してもよい。あるいは、制御部201は、判定結果を表示装置(ディスプレイ)等に表示させたり、コントローラ30又はキャッシュサーバ40等の他の装置へ送信したりしてもよい。制御部201は、ステップS27において正常でないと判定された場合に、このような出力を行うようにしてもよい。
In step S28, the
以上のように、制御システム1aは、測定データを取得するフィールド機器10が接続されたIOノード20、フィールド機器10が取得した測定データに基づき演算を行う複数のコントローラ30a,30b、及び、キャッシュサーバ40を備える。複数のコントローラ30a,30bの各々の制御部301は、予め一定の周期で定められた一定期間である制御タイミングごとに、フィールド機器10が取得した測定データを保持しているか否かをキャッシュサーバ40に問い合わせるなどして判定する。制御部301は、キャッシュサーバ40が測定データを保持していない場合、IOノード20から、IOノード20に接続されたフィールド機器10が取得した測定データを取得する。制御部301は、キャッシュサーバ40が測定データを保持している場合、キャッシュサーバ40から、フィールド機器10が取得した測定データを取得する。制御部301は、IOノード20又はキャッシュサーバ40から受信した測定データに基づき、予め定められた演算を行う。したがって、仮にコントローラ30の動作タイミングがずれたとしても、全てのコントローラ30は、制御タイミングにおける同一の測定データに基づき演算を行うことが可能である。
As described above, the
なお、複数のコントローラ30a,30bの各々の制御部301は、制御タイミングごとに、IOノード20又はキャッシュサーバ40から受信した測定データに基づき、演算を行った結果である演算結果をIOノード20へ送信してもよい。IOノード20の制御部201は、制御タイミングごとに、複数のコントローラ30a,30bの各々から受信した演算結果を比較して、複数のコントローラ30a,30bの動作が正常であるか否かを判定してもよい。制御部201は、複数のコントローラ30a,30bの動作が正常であるか否かの判定結果を出力してもよい。このように、制御システム1aは、複数のコントローラ30a,30bの演算結果を比較することで、コントローラ30の異常を検出することができる。また、制御システム1aは、制御タイミング内に演算結果を送信できなかったコントローラ30a,30bの演算結果については、動作が異常であるか否かの判定に使用しないようにすることができる。
The
また、複数のコントローラ30a,30bの各々の制御部301は、IOノード20から、IOノード20に接続されたフィールド機器10が取得した測定データを取得した場合、取得した測定データをキャッシュサーバ40へ送信してもよい。キャッシュサーバ40の制御部401は、複数のコントローラ30a,30bに含まれるコントローラ30から測定データを受信した場合、その受信した測定データを記憶部402に保持させてもよい。したがって、制御システム1aは、最初にキャッシュサーバ40にアクセスしたコントローラ30の測定データをキャッシュして保持させることで、他のコントローラ30がこの測定データに基づき演算を行うことを可能にする。
In addition, when the
また、キャッシュサーバ40の制御部401は、制御タイミングごとに、測定データを受信したコントローラ30の識別情報を管理テーブル41に記録してもよい。このように、測定データのキャッシュを送信したコントローラ30の識別情報を記録することで、キャッシュデータを送信したコントローラ30を特定することができる。
The
また、キャッシュサーバ40の制御部401は、制御タイミングごとに、複数のコントローラ30a,30bに含まれるいずれかのコントローラ30(例えば、コントローラ30a)から、フィールド機器10が取得した測定データを保持しているか否かの問合せを初めて受けてからそのコントローラ30aから測定データを受信するまで、他のコントローラ30(例えば、コントローラ30b)からの問合せに対する回答を保留してもよい。具体的には、例えば、図9のステップS1でコントローラ30aから問い合わせを受けてから、ステップS8で測定データをキャッシュに保持するまで、コントローラ30bから問い合わせを受けても(S21)、すぐに回答しないようにしてもよい。これにより、あるコントローラ30aがIOノード20から測定データを取得している間に他のコントローラ30bから問い合わせがあった場合に、他のコントローラ30bもIOノード20にアクセスすることなく、全てのコントローラが同一の測定データを取得することを保証することができる。
The
なお、以上の実施形態例においては、キャッシュサーバ40が管理テーブル41を保持している例を説明したが、コントローラ30の各々も、キャッシュサーバ40の管理テーブル41(第1の管理テーブル)と同期して管理された管理テーブル(第2の管理テーブル)を保持するようにしてもよい。このような構成によれば、コントローラ30は、キャッシュサーバ40に問い合わせることなく、測定データの取得先がIOノード20とキャッシュサーバ40のいずれであるかを判定することができる。また、IOノード20が定期的にフィールド機器10から測定データを取得する例を説明したが、このような処理に限られない。例えば、フィールド機器10a,10bがそれぞれ独立に測定データをIOノード20に送信するようにしてもよい。
In the above embodiment, the
<実施形態2>
実施形態1では、コントローラ30の仮想化部34において測定データの取得先を制御する例を説明したが、ネットワーク(NW)スイッチ等の他の装置が測定データの取得先を制御するようにしてもよい。
<
In the first embodiment, an example has been described in which the virtualization unit 34 of the
(制御システム)
図11は、実施形態2に係る制御システム1bの概略構成例を示す図である。制御システム1bは、フィールド機器10(10a,10b)、IOノード20、コントローラ30(30a,30b)、キャッシュサーバ40、ネットワーク50、及び、ネットワークスイッチ60を備える。フィールド機器10(10a,10b)、IOノード20、コントローラ30(30a,30b)、キャッシュサーバ40、及び、ネットワーク50の機能及び構成は、図2の制御システム1aと同様であるため、実施形態1の構成と相違する内容についてのみ説明する。
(Control System)
Fig. 11 is a diagram showing a schematic configuration example of a
制御システム1bにおいては、キャッシュサーバ40に代えて、又は、キャッシュサーバ40とともに、ネットワークスイッチ60は管理テーブル61を保持する。ネットワークスイッチ60の管理テーブル61は、キャッシュサーバ40の管理テーブル41と同様であり、例えば、図4及び図5に例示した内容と同一の情報を含んでもよい。制御システム1bにおいて、複数のコントローラ30a,30bは、制御タイミングごとに、フィールド機器10が取得した測定データのIOノード20に対する要求をネットワークスイッチ60へ送信する。ネットワークスイッチ60は、管理テーブル61を参照して、キャッシュサーバ40が測定データを保持しているか否かを判定する。ネットワークスイッチ60は、キャッシュサーバ40が測定データを保持していない場合、IOノード20に、IOノード20に接続されたフィールド機器10が取得した測定データを、ネットワークスイッチ60を介してコントローラ30へ送信させる。ネットワークスイッチ60は、IOノード20から受信した測定データをキャッシュサーバ40に送信して保持させる。一方、ネットワークスイッチ60は、キャッシュサーバ40が測定データを保持している場合、キャッシュサーバ40に、フィールド機器10が取得した測定データをコントローラ30へ送信させる。複数のコントローラ30の各々は、IOノード20又はキャッシュサーバ40から受信した測定データに基づき、予め定められた演算を行う。具体的には、ネットワークスイッチ60は、例えば、コントローラ30、IOノード20、及び、キャッシュサーバ40から受信したパケットのIPアドレス等を書き換えることで通信先を切り替えるようにしてもよい。
In the
このような構成によれば、コントローラ30から見ると、同一の装置にアクセスしているように見えながら、実際は、キャッシュの有無に応じて、IOノード20、又は、キャッシュサーバ40から、全コントローラ30へ共通の測定データを取得させることができる。なお、ネットワークスイッチ60を備えた構成においても、アクセス先の切り替えを、ネットワークスイッチ60ではなく、各コントローラ30のアクセス経路制御部32が実行するようにしてもよい。
With this configuration, from the perspective of the
(ネットワークスイッチ)
図12は、図11のネットワークスイッチ60のハードウェア構成例を示すブロック図である。ネットワークスイッチ60は、1つ又は互いに通信可能な複数のコンピュータ装置である。ネットワークスイッチ60は、例えば、FPGA又はプラント等の制御用に設計された専用コンピュータ等により実現されるが、PC等の汎用の装置により実現されてもよい。図12に示すように、ネットワークスイッチ60は、制御部601、記憶部602、及び、通信部603を備える。ネットワークスイッチ60の制御部601、記憶部602、及び、通信部603は、IOノード20の制御部201、記憶部202、及び、通信部203と同様に実現されるため、詳細な説明を省略する。また、IOノード20と同様に、ネットワークスイッチ60の機能は、本実施形態に係るプログラムを、制御部601に含まれるプロセッサで実行することにより実現されうる。
(Network Switch)
FIG. 12 is a block diagram showing an example of a hardware configuration of the
(制御システムの動作)
図13及び図14は、一実施形態に係る制御システム1bの動作例を示すシーケンスチャートである。図13及び図14を参照して説明する制御システム11bの動作は、制御システム1bの制御方法の一つに相当してもよい。図13及び図14の各ステップの動作は、IOノード20の制御部201、コントローラ30の制御部301、キャッシュサーバ40の制御部401、又は、ネットワークスイッチ60の制御部601による制御に基づき実行されてもよい。図13及び図14の処理は、制御タイミングごと、例えば、1秒ごとに実行される。図13及び図14は、ある制御タイミングにおいて、まずコントローラ30aがネットワークスイッチ60にアクセスし、その後、コントローラ30bがネットワークスイッチ60にアクセスしている例を示している。図13は、コントローラ30aが測定データを取得して演算を行う処理を示している。図14は、コントローラ30bが測定データを取得して演算を行う処理を示している。以下、図11のように、制御システム1bは1つのIOノード20を備える例を説明する。
(Control system operation)
13 and 14 are sequence charts showing an example of the operation of the
図13のステップS31において、コントローラ30aの制御部301は、ネットワークスイッチ60に対し、IOノード20に接続されているフィールド機器10の測定データを要求する。例えば、コントローラ30aのアクセス経路制御部32aが要求を行ってもよい。
In step S31 of FIG. 13, the
ステップS32において、ネットワークスイッチ60の制御部601は、ステップS31で要求を受けた測定データのキャッシュがキャッシュサーバ40に記憶されているか否かを判定する。例えば、制御部601は、自装置が保持する管理テーブル61を参照し、該当する制御タイミング及びIOノード20について、コントローラ30のアクセスが記録されているか否かを判定して、キャッシュの有無を判定してもよい。図13の例は、ある制御タイミングにおいてコントローラ30aが初めてアクセスした場合を示しているため、制御部601は、キャッシュなしと判定する(ステップS33)。
In step S32, the
ステップS34において、ネットワークスイッチ60の制御部601は、IOノード20に対して、フィールド機器10の測定データを要求する。例えば、制御部601は、ステップS31でコントローラ30aから受信したパケットのIPアドレス等を書き換えて、測定データの要求をIOノード20へ送信してもよい。
In step S34, the
ネットワークスイッチ60から測定データの要求を受信すると、ステップS35において、IOノード20の制御部201は、フィールド機器10の測定データを取得する。前述のように、IOノード20は、一定周期(例えば、1秒ごと)でフィールド機器10から測定データを収集し、収集した測定データを記憶部202に記憶させる。そこで、制御部201は、記憶部202から測定データを読み出して、測定データを取得する。なお、制御部201は、ネットワークスイッチ60から測定データの要求を受信したことに応じて、フィールド機器10から測定データを取得してもよい。
When a request for measurement data is received from the
ステップS36において、IOノード20の制御部201は、ステップS35で取得したフィールド機器10の測定データをネットワークスイッチ60へ送信する。
In step S36, the
ステップS37において、ネットワークスイッチ60の制御部601は、フィールド機器10の測定データをIOノード20から受信して取得する。
In step S37, the
ステップS38において、ネットワークスイッチ60の制御部601は、ステップS37で取得した測定データをコントローラ30aへ送信する。例えば、制御部601は、ステップS36でIOノード20から受信したパケットのIPアドレス等を書き換えて、測定データをコントローラ30aへ送信してもよい。
In step S38, the
ステップS39において、ネットワークスイッチ60の制御部601は、ステップS37で取得した測定データをキャッシュサーバ40へ送信する。
In step S39, the
ステップS40において、ネットワークスイッチ60の制御部601は、管理テーブル61を更新する。例えば、制御部401は、対応する制御グループの管理テーブル61において、該当する制御タイミングのIOノード20に対応する項目を、コントローラ30aの識別情報により更新してもよい。
In step S40, the
一方、ステップS41において、コントローラ30aの制御部301は、ステップS38で取得した測定データに基づき、予め定められた演算を行う。例えば、コントローラ30aの制御アプリケーション部21aが演算を行ってもよい。演算内容は、フィールド機器10の種類等に応じて、予め設定されている。
Meanwhile, in step S41, the
ステップS42において、コントローラ30aの制御部301は、ステップS41の処理による演算結果をIOノード20へ送信する。なお、制御システム1bは、ステップS39,S40の前に、ステップS41,S42の処理を実行してもよい。
In step S42, the
コントローラ30aから演算結果を受信すると、ステップS43において、IOノード20の制御部201は、コントローラ30aから受信した演算結果を記憶部202に記憶させて保持する。
When the calculation result is received from the
一方、キャッシュサーバ40の制御部401は、フィールド機器10の測定データをネットワークスイッチ60から受信すると、ステップS44において、受信した測定データをキャッシュデータベース45に記憶させるとともに、管理テーブル41を更新する。例えば、制御部401は、対応する制御グループの管理テーブル41において、該当する制御タイミングのIOノード20に対応する項目を、コントローラ30aの識別情報により更新してもよい。
On the other hand, when the
次に、図14のステップS51において、コントローラ30bの制御部301は、ネットワークスイッチ60に対し、IOノード20に接続されているフィールド機器10の測定データを要求する。例えば、コントローラ30bの仮想化部34bが要求を行ってもよい。
Next, in step S51 of FIG. 14, the
ステップS52において、ネットワークスイッチ60の制御部601は、ステップS51で要求を受けた測定データのキャッシュがキャッシュサーバ40に記憶されているか否かを判定する。例えば、制御部601は、管理テーブル61を参照し、該当する制御タイミング及びIOノード20について、コントローラ30のアクセスが記録されているか否かを判定して、キャッシュの有無を判定してもよい。図14の例は、該当する制御タイミングにおいて既にコントローラ30aがアクセスした場合を示しているため、制御部601は、キャッシュありと判定する(ステップS53)。
In step S52, the
そこで、ステップS54において、ネットワークスイッチ60の制御部601は、キャッシュサーバ40に対し、図13のステップS44でキャッシュデータベース45に保持した測定データのキャッシュを要求する。例えば、制御部601は、ステップS51でコントローラ30bから受信したパケットのIPアドレス等を書き換えて、測定データの要求をキャッシュサーバ40へ送信してもよい。具体的には、制御部601は、該当する制御グループのIOノード20の識別情報に対応づけて記憶された、該当する制御タイミングの測定データのキャッシュを要求してもよい。
Therefore, in step S54, the
ステップS55において、キャッシュサーバ40の制御部401は、ネットワークスイッチ60により要求された測定データのキャッシュをキャッシュデータベース45から取得する。
In step S55, the
ステップS56において、キャッシュサーバ40の制御部401は、ステップS55で取得した測定データのキャッシュをネットワークスイッチ60へ送信する。
In step S56, the
ステップS57において、ネットワークスイッチ60の制御部601は、フィールド機器10の測定データのキャッシュをキャッシュサーバ40から受信して取得する。
In step S57, the
ステップS58において、ネットワークスイッチ60の制御部601は、ステップS57で取得した測定データのキャッシュをコントローラ30bへ送信する。例えば、制御部601は、ステップS56でキャッシュサーバ40から受信したパケットのIPアドレス等を書き換えて、測定データのキャッシュをコントローラ30bへ送信してもよい。
In step S58, the
測定データのキャッシュを取得すると、ステップS59において、コントローラ30bの制御部301は、取得した測定データのキャッシュに基づき、予め定められた演算を行う。例えば、コントローラ30bの制御アプリケーション部21bが演算を行ってもよい。演算内容は、コントローラ30aが実行する演算と同一である。
When the cache of measurement data is acquired, in step S59, the
ステップS60において、コントローラ30bの制御部301は、ステップS59の処理による演算結果をIOノード20へ送信する。
In step S60, the
コントローラ30bから演算結果を受信すると、ステップS61において、IOノード20の制御部201は、図13のステップS43で保持したコントローラ30aによる演算結果と比較し、コントローラ30a,30bが正常に動作しているか否かを判定する。例えば、制御部201は、コントローラ30a,30bによる演算結果が一致した場合、各コントローラ30a,30bは正常に動作しており、そうでない場合は正常に動作していないと判定してもよい。制御システム1bが3つ以上のコントローラ30を備えている場合も同様に、制御部201は、全てのコントローラ30による演算結果が一致した場合、各コントローラ30は正常に動作しており、そうでない場合は正常に動作していないと判定してもよい。
When the calculation result is received from
ステップS62において、IOノード20の制御部201は、ステップS61で判定した結果を出力する。例えば、制御部201は、判定結果をログファイルとして、記憶部202に出力してもよい。あるいは、制御部201は、判定結果を表示装置(ディスプレイ)等に表示させたり、コントローラ30、キャッシュサーバ40、又は、ネットワークスイッチ60等の他の装置へ送信したりしてもよい。制御部201は、ステップS61において正常でないと判定された場合に、このような出力を行うようにしてもよい。
In step S62, the
以上のように、本開示に係る制御システム1a,1bによれば、非同期に動作する複数のコントローラ30間で同じタイミングのデータを取得することができる。したがって、各コントローラ30の動作が高精度に同期していなくても、各コントローラ30の演算結果を比較して、コントローラ30の異常を検出することが可能である。
As described above, according to the
また、制御システム1a,1bの手法は、マルチキャスト又はブロードキャスト等におけるpub/sub通信でのパケットの到達保証に応用してもよい。マルチキャスト又はブロードキャストを利用してpub/sub通信を行う場合、通信プロトコルにはUDP(User Datagram Protocol)を使用する。UDPはTCP(Transmission Control Protocol)と異なり送達確認の仕組みがなく、送信されたデータを確実に受信できる保証がない。そのため受信できなかった場合の処理が必要になる。
The techniques of the
例えば、図2の制御システム1aにおいて、IOノード20が、任意のタイミングでフィールド機器10から測定データを取得し、コントローラ30及びキャッシュサーバ40を含む各ノードへ制御タイミング情報(T001)及び測定データを配布(publish)する場合を考える。この場合、各ノード(コントローラ30a,30b、及び、キャッシュサーバ40)はIOノード20からのデータを待ち受け、受信(subscribe)する。コントローラ30は、制御タイミングT001で使用するノードの測定データを受信できた場合、そのデータを使用して演算を行う。また、コントローラ30は、受信した測定データをキャッシュサーバ40に保持させる。コントローラ30a,30bは、使用する測定データが受信できなかった場合、キャッシュサーバ40にデータ取得要求を送信し、データを取得する。
For example, in the
このように、コントローラ30は、制御タイミングにおける測定データを受信できた場合はその測定データに基づき演算を行うとともに、測定データをキャッシュサーバ40に保持させる。コントローラ30は、制御タイミングにおける測定データを受信できなかった場合は、キャッシュサーバ40にアクセスして必要な測定データを取得し、所定の演算を行う。したがって、コントローラ30からIOノード20へアクセスするのではなく、IOノード20からフィールド機器10の測定データをマルチキャスト又はブロードキャストする場合においても、各コントローラ30は、同一の測定データに基づき演算できる。よって、各コントローラ30の演算結果を比較して、コントローラ30の異常を検知することが可能である。
In this way, if the
本開示は上述の実施形態に限定されるものではない。例えば、ブロック図に記載の複数のブロックは統合されてもよいし、又は1つのブロックは分割されてもよい。フローチャートに記載の複数のステップは、記述に従って時系列に実行する代わりに、各ステップを実行する装置の処理能力に応じて、又は必要に応じて、並列的に又は異なる順序で実行されてもよい。その他、本開示の趣旨を逸脱しない範囲での変更が可能である。 The present disclosure is not limited to the above-described embodiments. For example, multiple blocks shown in the block diagram may be integrated, or one block may be divided. Multiple steps shown in the flowchart may be executed in parallel or in a different order depending on the processing capacity of the device executing each step, or as needed, instead of being executed chronologically as described. Other modifications are possible without departing from the spirit of the present disclosure.
1,1a 制御システム
10 フィールド機器
20 IOノード
21 制御アプリケーション部
22 仮想化部
23 通信制御部
24 アクセス経路制御部
201 制御部
202 記憶部
203 通信部
30 コントローラ
31 制御アプリケーション部
32 仮想化部
33 通信制御部
34 アクセス経路制御部
301 制御部
302 記憶部
303 通信部
40 キャッシュサーバ
41 管理テーブル
42 仮想化部
43 通信制御部
44 アクセス経路制御部
45 キャッシュデータベース
401 制御部
402 記憶部
403 通信部
50 ネットワーク
60 ネットワークスイッチ
61 管理テーブル
601 制御部
602 記憶部
603 通信部
1,
Claims (8)
前記フィールド機器が取得した前記測定データに基づき演算を行う複数のコントローラと、
ネットワークスイッチと、
キャッシュサーバと、
を備え、
前記複数のコントローラの各々は、予め一定の周期で定められた一定期間である制御タイミングごとに、前記フィールド機器が取得した前記測定データに対する要求を前記ネットワークスイッチへ送信し、
前記ネットワークスイッチは、
前記キャッシュサーバが前記測定データを保持していない場合、前記IOノードに、前記ネットワークスイッチを介して、当該IOノードに接続された前記フィールド機器が取得した前記測定データを前記コントローラへ送信させ、
前記キャッシュサーバが前記測定データを保持している場合、当該キャッシュサーバに、前記ネットワークスイッチを介して、前記フィールド機器が取得した前記測定データを前記コントローラへ送信させ、
前記複数のコントローラの各々は、前記IOノード又は前記キャッシュサーバから受信した前記測定データに基づき、予め定められた演算を行う、
制御システム。 an IO node to which a field device for acquiring measurement data is connected;
a plurality of controllers that perform calculations based on the measurement data acquired by the field devices;
A network switch;
A cache server;
Equipped with
each of the plurality of controllers transmits a request for the measurement data acquired by the field device to the network switch at each control timing, which is a fixed period determined in a predetermined cycle;
The network switch includes:
If the cache server does not hold the measurement data, the IO node transmits the measurement data acquired by the field device connected to the IO node to the controller via the network switch;
When the cache server holds the measurement data, the cache server transmits the measurement data acquired by the field device to the controller via the network switch;
Each of the plurality of controllers performs a predetermined calculation based on the measurement data received from the IO node or the cache server.
Control system.
前記キャッシュサーバが前記測定データを保持していない場合、前記IOノードに対して前記測定データを要求し、
前記要求に基づき前記IOノードから前記測定データを受信したことに応じて、当該測定データを、前記コントローラへ送信するとともに、前記測定データを前記キャッシュサーバへ送信して前記測定データのキャッシュとして記憶させる、
請求項1に記載の制御システム。 The network switch includes:
If the cache server does not hold the measurement data, the cache server requests the measurement data from the IO node;
In response to receiving the sensed data from the IO node based on the request, transmit the sensed data to the controller, and also transmit the sensed data to the cache server to store the sensed data as a cache.
The control system of claim 1 .
前記キャッシュサーバが前記測定データを保持している場合、前記キャッシュサーバに対して前記測定データのキャッシュを要求し、
前記要求に基づき前記キャッシュサーバから前記測定データのキャッシュを受信したことに応じて、当該測定データのキャッシュを前記コントローラへ送信する、
請求項1に記載の制御システム。 The network switch includes:
If the cache server holds the measurement data, a request is made to the cache server to cache the measurement data;
In response to receiving the cached measurement data from the cache server based on the request, transmitting the cached measurement data to the controller.
The control system of claim 1 .
前記制御タイミングごとに前記キャッシュサーバが前記測定データを保持しているか否かを示す情報を含む管理テーブルを保持し、
前記複数のコントローラのいずれかから前記測定データに対する前記要求を受けたことに応じて、前記管理テーブルを参照して、前記キャッシュサーバが前記測定データを保持しているか否かを判定する、
請求項1に記載の制御システム。 The network switch includes:
A management table including information indicating whether the cache server holds the measurement data for each of the control timings is held;
in response to receiving the request for the measured data from any one of the plurality of controllers, referring to the management table to determine whether the cache server holds the measured data;
The control system of claim 1 .
前記IOノードは、
前記制御タイミングごとに、前記複数のコントローラの各々から受信した前記演算結果を比較して、前記複数のコントローラの動作が正常であるか否かを判定し、
前記複数のコントローラの動作が正常であるか否かの判定結果を出力する、
請求項1に記載の制御システム。 each of the plurality of controllers transmits, at each control timing, a calculation result that is a result of performing the calculation based on the measurement data received via the network switch to the IO node;
The IO node includes:
comparing the calculation results received from each of the plurality of controllers at each of the control timings to determine whether or not the operations of the plurality of controllers are normal;
outputting a determination result as to whether the operation of the plurality of controllers is normal;
The control system of claim 1 .
前記フィールド機器が取得した測定データに対する要求をコントローラから受信したことに応じて、前記測定データをキャッシュサーバが保持しているか否かの情報を前記キャッシュサーバから取得し、
前記キャッシュサーバが前記測定データを保持していない場合、前記フィールド機器が接続されたIOノードへ、前記測定データに対する要求を送信し、
前記キャッシュサーバが前記測定データを保持している場合、当該キャッシュサーバへ、前記測定データ対する要求を送信する、
ネットワークスイッチ。 A network switch for use in a control system for a field device, comprising:
acquiring, from the cache server, information as to whether or not the cache server holds the measurement data in response to receiving a request for the measurement data acquired by the field device from the controller;
If the cache server does not store the measurement data, a request for the measurement data is sent to an IO node to which the field device is connected;
If the cache server holds the measurement data, a request for the measurement data is sent to the cache server.
Network switch.
前記フィールド機器が取得した前記測定データに基づき演算を行う複数のコントローラと、
ネットワークスイッチと、
キャッシュサーバと、
を備える制御システムの制御方法であって、
前記複数のコントローラの各々が、予め一定の周期で定められた一定期間である制御タイミングごとに、前記フィールド機器が取得した前記測定データに対する要求を前記ネットワークスイッチへ送信する工程と、
前記ネットワークスイッチが、前記キャッシュサーバが前記測定データを保持していない場合、前記IOノードに、前記ネットワークスイッチを介して、当該IOノードに接続された前記フィールド機器が取得した前記測定データを前記コントローラへ送信させ、前記キャッシュサーバが前記測定データを保持している場合、当該キャッシュサーバに、前記ネットワークスイッチを介して、前記フィールド機器が取得した前記測定データを前記コントローラへ送信させる、工程と、
前記複数のコントローラの各々が、前記IOノード又は前記キャッシュサーバから受信した前記測定データに基づき、予め定められた演算を行う工程と、
を含む、制御システムの制御方法。
an IO node to which a field device for acquiring measurement data is connected;
a plurality of controllers that perform calculations based on the measurement data acquired by the field devices;
A network switch;
A cache server;
A control method for a control system comprising:
each of the plurality of controllers transmitting a request for the measurement data acquired by the field device to the network switch at each control timing, which is a fixed period determined in a predetermined cycle;
a step of causing the IO node to transmit the measurement data acquired by the field device connected to the IO node to the controller via the network switch when the cache server does not hold the measurement data, and causing the cache server to transmit the measurement data acquired by the field device to the controller via the network switch when the cache server holds the measurement data;
Each of the plurality of controllers performs a predetermined calculation based on the measurement data received from the IO node or the cache server;
A control method for a control system comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022210564A JP7294517B1 (en) | 2022-12-27 | 2022-12-27 | CONTROL SYSTEM, CONTROL METHOD OF CONTROL SYSTEM, AND NETWORK SWITCH |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022210564A JP7294517B1 (en) | 2022-12-27 | 2022-12-27 | CONTROL SYSTEM, CONTROL METHOD OF CONTROL SYSTEM, AND NETWORK SWITCH |
Publications (2)
Publication Number | Publication Date |
---|---|
JP7294517B1 JP7294517B1 (en) | 2023-06-20 |
JP2024093915A true JP2024093915A (en) | 2024-07-09 |
Family
ID=86772706
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022210564A Active JP7294517B1 (en) | 2022-12-27 | 2022-12-27 | CONTROL SYSTEM, CONTROL METHOD OF CONTROL SYSTEM, AND NETWORK SWITCH |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7294517B1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011186903A (en) * | 2010-03-10 | 2011-09-22 | Fuji Electric Co Ltd | Remote monitoring device and data access method in the device |
JP2013152557A (en) * | 2012-01-24 | 2013-08-08 | Nippon Telegr & Teleph Corp <Ntt> | Metadata attachment apparatus, metadata attachment method and metadata attachment program |
JP2013167922A (en) * | 2012-02-14 | 2013-08-29 | Yokogawa Electric Corp | Redundant communication system and redundant communication method |
JP2021157392A (en) * | 2020-03-26 | 2021-10-07 | 横河電機株式会社 | Control system |
-
2022
- 2022-12-27 JP JP2022210564A patent/JP7294517B1/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011186903A (en) * | 2010-03-10 | 2011-09-22 | Fuji Electric Co Ltd | Remote monitoring device and data access method in the device |
JP2013152557A (en) * | 2012-01-24 | 2013-08-08 | Nippon Telegr & Teleph Corp <Ntt> | Metadata attachment apparatus, metadata attachment method and metadata attachment program |
JP2013167922A (en) * | 2012-02-14 | 2013-08-29 | Yokogawa Electric Corp | Redundant communication system and redundant communication method |
JP2021157392A (en) * | 2020-03-26 | 2021-10-07 | 横河電機株式会社 | Control system |
Also Published As
Publication number | Publication date |
---|---|
JP7294517B1 (en) | 2023-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9825818B2 (en) | Device hierarchy building for a remote terminal unit | |
US10372095B2 (en) | Method for the fail-safe operation of a process control system with redundant control devices | |
US9367261B2 (en) | Computer system, data management method and data management program | |
US9128902B2 (en) | Systems and methods for managing disaster recovery in a storage system | |
CN104980307A (en) | Processing method of data access requests, processing device of data access requests and database server | |
JP2016512373A (en) | Providing local cache coherency in a shared storage environment | |
JP6233403B2 (en) | Storage system, storage device, storage device control method and control program, management device, management device control method and control program | |
US20190229885A1 (en) | Computing device and control system | |
US11003631B2 (en) | Apparatus and method for implementing process control redundancy using operating system (OS) file system support | |
WO2024142593A1 (en) | Control system, control method for control system, and controller | |
JP2024093915A (en) | Control system, control method for control system, and network switch | |
US10203890B1 (en) | Multi-tier mechanism to achieve high availability in a multi-controller system | |
CN116506404A (en) | Domain name resolution method, device, computer equipment and storage medium | |
KR101696911B1 (en) | Distributed Database Apparatus and Method for Processing Stream Data Thereof | |
JP2016058835A (en) | Relay system and switch device | |
US11609809B1 (en) | Method and apparatus for the enhanced diagnostic coverage of a secondary device of a redundant controller pair | |
US12007991B2 (en) | Automation device and method for optimized access to a variable | |
US11316710B2 (en) | Control system and control method | |
CN112882771A (en) | Server switching method and device of application system, storage medium and electronic equipment | |
US20230058281A1 (en) | Control System and Method for Fine-Grained Reconciliation of Local Archives in Master/Master Scenarios of Servers of a Technical Installation | |
JP4722724B2 (en) | Supervisory control system | |
CN117319276A (en) | Equipment monitoring method, device, equipment and storage medium | |
JP2006155398A (en) | Method and device for mediating data | |
JP2023545095A (en) | Failover mechanism for IoT gateways | |
CN119149341A (en) | A monitoring method and device for MongoDB database cluster instance |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230105 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20230105 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230228 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230405 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230509 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230522 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7294517 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |