(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2023-11-20
(45)【発行日】2023-11-29
(54)【発明の名称】情報処理装置、情報処理方法、情報処理プログラム及び分散制御システム
(51)【国際特許分類】
G06F 9/50 20060101AFI20231121BHJP
【FI】
G06F9/50 150D
(21)【出願番号】P 2023043524
(22)【出願日】2023-03-17
【審査請求日】2023-03-17
【早期審査対象出願】
(73)【特許権者】
【識別番号】000006507
【氏名又は名称】横河電機株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】村田 秀樹
(72)【発明者】
【氏名】吉田 善貴
(72)【発明者】
【氏名】戸井永 剛
【審査官】三坂 敏夫
(56)【参考文献】
【文献】特開2015-135559(JP,A)
【文献】特開2014-235624(JP,A)
【文献】特開2006-202182(JP,A)
【文献】特開2015-207256(JP,A)
【文献】特開2013-208043(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/455-9/54
11/30
(57)【特許請求の範囲】
【請求項1】
複数の制御ノードのそれぞれに対するデータアクセスの状況を示す情報を基に、前記複数の制御ノードのそれぞれの負荷を算出し、算出した負荷と、管理機能によって示される前記複数の制御ノードのそれぞれの負荷と、の差を基に、又は、前記算出した負荷に対する、前記管理機能によって示される前記複数の制御ノードのそれぞれの負荷の割合を基に、前記算出した負荷を補正する算出部と、
前記複数の制御ノードのいずれかの前記算出部によって補正された負荷が閾値を超えた場合、
HMI装置
にアラートを出力する通知部と、
を有することを特徴とする情報処理装置。
【請求項2】
前記算出部は、前記複数の制御ノードのそれぞれに対するデータアクセスの数に基づいて負荷を算出することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
複数の制御ノードのそれぞれに対するデータアクセスの状況を示す情報を基に、前記複数の制御ノードのそれぞれの負荷を算出し、算出した負荷と、管理機能によって示される前記複数の制御ノードのそれぞれの負荷と、の差を基に、又は、前記算出した負荷に対する、前記管理機能によって示される前記複数の制御ノードのそれぞれの負荷の割合を基に、前記算出した負荷を補正し、
前記複数の制御ノードのいずれかの補正された負荷が閾値を超えた場合、
HMI装置
にアラートを出力する
処理をコンピュータが実行することを特徴とする情報処理方法。
【請求項4】
複数の制御ノードのそれぞれに対するデータアクセスの状況を示す情報を基に、前記複数の制御ノードのそれぞれの負荷を算出し、算出した負荷と、管理機能によって示される前記複数の制御ノードのそれぞれの負荷と、の差を基に、又は、前記算出した負荷に対する、前記管理機能によって示される前記複数の制御ノードのそれぞれの負荷の割合を基に、前記算出した負荷を補正し、
前記複数の制御ノードのいずれかの補正された負荷が閾値を超えた場合、
HMI装置
にアラートを出力する
処理を、前記複数の制御ノードと接続されるサーバに実行させることを特徴とする情報処理プログラム。
【請求項5】
問い合わせに応じてデータアクセス先を通知する管理サーバと、複数の制御ノードと、監視サーバと、
を有する分散制御システムであって、
前記複数の制御ノードは、
前記管理サーバに問い合わせを行い、前記管理サーバからの通知に応じて互いにデータアクセスを行い、
前記監視サーバは、
前記管理サーバに問い合わせを行い、前記管理サーバからの通知に応じて前記複数の制御ノードのいずれかに対してデータアクセスを行い、
前記管理サーバは、
複数の制御ノードのそれぞれに対するデータアクセスの状況を示す情報を基に、前記複数の制御ノードのそれぞれの負荷を算出し、算出した負荷と、管理機能によって示される前記複数の制御ノードのそれぞれの負荷と、の差を基に、又は、前記算出した負荷に対する、前記管理機能によって示される前記複数の制御ノードのそれぞれの負荷の割合を基に、前記算出した負荷を補正する算出部と、
前記複数の制御ノードのいずれかの前記算出部によって補正された負荷が閾値を超えた場合、
前記監視サーバにアラートを出力する通知部と、
を有することを特徴とする分散制御システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、情報処理プログラム及び分散制御システムに関する。
【背景技術】
【0002】
従来、互いにネットワークで接続された複数の制御ノードがプラントの制御を行う分散制御システム(DCS:Distributed Control System)が知られている(例えば、特許文献1を参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来のDCSには、制御ノードが過負荷になることを抑止できない場合があるという問題がある。
【0005】
制御ノード間の通信にOPC-UAが使用される場合、GDS(Global Discovery Server)への問い合わせが行われる。例えば、GDSへの問い合わせは、制御ノード間の認証、及びHMI(Human Machine Interface)サーバがアクセスしたいデータを持っている制御ノードを知ることを目的として行われる。
【0006】
GDSへの問い合わせが1回だけであるのに対し、プロセス制御の特性から、制御ノードには定常的にデータアクセスが行われ、同じ負荷がかかり続ける。データアクセスは、HMIサーバによる監視データの取得、制御ノードによるプロセスノードの取得、制御ノード間の通信等である。
【0007】
一つの側面では、DCSの制御ノードが過負荷になることを抑止することを目的とする。
【課題を解決するための手段】
【0008】
一側面にかかる情報処理装置は、複数の制御ノードのそれぞれに対するデータアクセスの状況を示す情報を基に、前記複数の制御ノードのそれぞれの負荷を算出する算出部と、前記複数の制御ノードのいずれかの負荷が閾値を超えた場合、通知を行う通知部と、を有することを特徴とする。
【0009】
一側面にかかる情報処理方法は、複数の制御ノードのそれぞれに対するデータアクセスの状況を示す情報を基に、前記複数の制御ノードのそれぞれの負荷を算出し、前記複数の制御ノードのいずれかの負荷が閾値を超えた場合、通知を行う処理をコンピュータが実行することを特徴とする。
【0010】
一側面にかかる情報処理プログラムは、複数の制御ノードのそれぞれに対するデータアクセスの状況を示す情報を基に、前記複数の制御ノードのそれぞれの負荷を算出し、前記複数の制御ノードのいずれかの負荷が閾値を超えた場合、通知を行う処理をコンピュータに実行させることを特徴とする。
【0011】
一側面にかかる分散制御システムは、問い合わせに応じてデータアクセス先を通知する管理サーバと、複数の制御ノードと、監視サーバと、を有する分散制御システムであって、前記複数の制御ノードは、前記管理サーバに問い合わせを行い、前記管理サーバからの通知に応じて互いにデータアクセスを行い、前記監視サーバは、前記管理サーバに問い合わせを行い、前記管理サーバからの通知に応じて前記複数の制御ノードのいずれかに対してデータアクセスを行い、前記管理サーバは、複数の制御ノードのそれぞれに対するデータアクセスの状況を示す情報を基に、前記複数の制御ノードのそれぞれの負荷を算出する算出部と、前記複数の制御ノードのいずれかの負荷が閾値を超えた場合、通知を行う通知部と、を有することを特徴とする。
【発明の効果】
【0012】
一実施形態によれば、DCSの制御ノードが過負荷になることを抑止することができる。
【図面の簡単な説明】
【0013】
【
図1】第1の実施形態に係る分散制御システムの構成例を示す図である。
【
図2】第1の実施形態に係る管理サーバの構成例を示す図である。
【
図6】管理サーバの処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0014】
以下に、本願の開示する情報処理装置、情報処理方法、情報処理プログラム及び分散制御システムの実施形態を図面に基づいて詳細に説明する。なお、ここで説明する実施形態により本願の発明が限定されるものではない。また、同一の要素には同一の符号を付し、重複する説明は適宜省略する。また、各実施形態は、矛盾のない範囲内で適宜組み合わせることができる。また、管理サーバは、情報処理装置の一例である。
【0015】
図1を用いて、第1の実施形態の分散制御システムの構成を説明する。
図1は、第1の実施形態に係る分散制御システムの構成例を示す図である。
【0016】
図1に示すように、分散制御システム1は、制御ノード10a、制御ノード10b、制御ノード10、フィールド機器21a、フィールド機器22a、管理サーバ30、HMIクライアント40及びHMIサーバ50を有する。
【0017】
以降の説明では、各制御ノードを区別せずに制御ノード10と呼ぶ場合がある。また、以降の説明では、各フィールド機器を区別せずにフィールド機器20と呼ぶ場合がある。
【0018】
分散制御システム1に含まれる制御ノード10及びフィールド機器20の数は、
図1に示すものに限られない。また、制御ノード10のそれぞれには、1つ又は複数のフィールド機器20が接続されていてもよいし、フィールド機器20が接続されていなくてもよい。
【0019】
フィールド機器20は、プラントに備えられる。プラントは、例えば石油プラント、石油化学プラント、化学プラント、又はガスプラントである。プラントが稼働することで、LNG(液化天然ガス)、樹脂(プラスチック、ナイロン等)、化学製品といった生成物が得られる。
【0020】
また、プラントは、工場施設、機械施設、生産施設、発電施設、貯蔵施設、石油、天然ガス等を採掘する井戸元における施設等を有する。また、プラント内には、生成物を生成するための設備機器が備えられる。
【0021】
フィールド機器20は、プラントの状態に関する情報を取得する。例えば、フィールド機器20は、温度センサ、pHセンサ、速度センサ、加速度センサ、気圧センサ、ガス濃度センサ、バルブの開度を検知する機器、スイッチの状態(オン又はオフ)を検知する機器等である。
【0022】
フィールド機器20は、センサ値又は検知結果を示すデータを、あらかめ決められた通信プロトコルにより制御ノード10に送信する。
【0023】
制御ノード10は、割り当てられたタスクを実行する。タスクは、アプリケーションの実行にともなって生じる演算の一部又は全部である。例えば、タスクは、アプリケーションに含まれる関数、ファンクションブロック(FB:Function Block)、機能モジュール等である。なお、タスクは、フィールド機器20から受信したデータを用いるものであってもよい。
【0024】
なお、
図1に示す制御APP(制御アプリケーション)は、タスクを実行するためのアプリケーションである。
【0025】
また、制御ノード10a、制御ノード10b及び制御ノード10cは、それぞれデータ110a、データ110b及びデータ110cを記憶する。データ110a、データ110b及びデータ110cは、フィールド機器20から得られたデータであってもよいし、タスクの実行により得られたデータであってもよい。
【0026】
管理サーバ30は、制御ノード10とネットワークを介して接続される。管理サーバ30は、GDS(参考URL:https://jp.opcfoundation.org/wp-content/uploads/sites/2/2018/12/4_Endo_OPCUA_GDS.pdf)として機能する。GDSは、OPC-UAアプリケーションのリスト、及びアプリケーションで使用される証明書を管理する。
【0027】
また、管理サーバ30は、Aliasとして機能する。Aliasは、IPネットワークにおけるDNS(Domain Name System)の名前解決機能に相当し、ノード名又はタグ名とIPアドレスとの対応関係を管理する。
【0028】
HMIクライアント40は、HMIサーバ50と接続される。また、HMIサーバ50は、フィールド機器20を監視するための情報を取得し、取得した情報をHMIクライアント40に提供する。
【0029】
ここで、分散制御システム1は、プロセス制御システムの一例である。プロセス制御システムでは、リアルタイム処理と非リアルタイム処理が実行される。また、制御ノード10が実行するタスクは、リアルタイム処理と非リアルタイム処理を含む。
【0030】
リアルタイム処理は、制御アプリケーションの実行、制御ノード間のデータ送受信等である。例えば、リアルタイム処理は、制御ノード10が、フィールド機器20から取得した情報を基に、フィールド機器20を制御する処理(例えば、PID制御)である。
【0031】
非リアルタイム処理は、システム監視、フィールド機器管理、品質管理、高度制御等に関する処理である。例えば、非リアルタイム処理は、複数の制御ノード10から一定の期間にわたって収集されたデータを用いて行われる処理である。なお、この場合、制御ノード10は、フィールド機器20から取得したデータを、後段の処理に合わせて形式を変換した上で出力する。
【0032】
また、非リアルタイム処理には、一定の高さの演算能力が要求される処理、GPU(Graphics Processing Unit)等の特殊な装置が要求される処理が含まれる。
【0033】
従来のDCSでは、リアルタイム処理は、コントローラ(例えば、制御ノード10に相当)で実行されていた。また、従来のDCSでは、非リアルタイム処理は、PC及びサーバ等のコントローラとは異なる装置で実行されていた。
【0034】
これに対し、昨今、OPAF(Open Process Automation Forum)が提唱するOPA(Open Process Automation)システム(参考文献:https://www.yokogawa.com/us/solutions/featured-topics/open-process-automation/)等のオープンなプロセス制御システムが提案されている。OPAシステムでは処理の階層がフラットになり、サーバ等のコントローラとは異なる装置でもリアルタイム処理が要求される。一方、制御ノード上で非リアルタイム処理を実行するケースも出てくる。
【0035】
OPAシステムにおける制御ノードは、DCN(Distributed Control Node)と呼ばれる場合がある。また、本実施形態の制御ノードは、例えばOPAシステムにおけるDCN(Distributed Control Node)である。
【0036】
制御ノード10は、これまで説明したようなタスクを実行しつつ、定常的なデータアクセスを受ける。その結果、制御ノード10が過負荷になる場合がある。これに対し、本実施形態の管理機能によれば、制御ノード10が過負荷になることを抑止できる。
【0037】
図2を用いて、管理サーバ30の構成を説明する。
図2は、第1の実施形態に係る管理サーバの構成例を示す図である。
図2に示すように、管理サーバ30は、通信部31、記憶部32及び制御部33を有する。
【0038】
通信部31は、他の装置との間でデータの通信を行う。例えば、通信部31は、通信インタフェースである。通信部31は、制御ノード10及びHMIサーバ50との間で通信を行う。
【0039】
記憶部32は、各種データ、及び制御部33が実行する各種プログラム等を記憶する。例えば、記憶部32は、メモリ及びハードディスク等の記憶装置である。この記憶部32は、制御部33が各種処理を実行する際の過程で得られるデータ、及び各種処理を実行したことで得られる処理結果等、管理サーバ30が実行する処理で発生する各種データを記憶する。
【0040】
記憶部32は、管理テーブル321を記憶する。
【0041】
管理テーブル321は、制御ノード10のそれぞれの接続数を管理するテーブルである。接続数は、制御ノード10に対してデータアクセスを行っている装置の数である。
【0042】
ここで、制御ノード10a、制御ノード10b及び制御ノード10cのノードIDを、それぞれ「N101」、「N102」及び「N103」とする。例えば、
図3には、ノードIDが「N101」である制御ノード10aの接続数が0であることが示されている。
【0043】
制御部33は、管理サーバ30全体を司る処理部である。制御部33は、例えばプロセッサ等により実現される。制御部33は、更新部331、算出部332及び通知部333を有する。
【0044】
更新部331は、制御ノード10の接続数が変化した際に、管理テーブル321を更新する。以下、更新部331が管理テーブル321を更新するケースを説明する。
【0045】
[ケース1:システム監視]
更新部331は、システム監視のため、HMIサーバ50が制御ノード10からのデータの取得を開始した際に管理テーブル321を更新する。
【0046】
例えば、
図4に示すように、HMIサーバ50は、データ110b及びデータ110cを取得するために、管理サーバ30に問い合わせ(アクセス問い合わせ)を行う。
図4は、データアクセスの例を示す図である。
【0047】
複数の制御ノード10は、管理サーバ30に問い合わせを行い、管理サーバ30からの通知に応じて互いにデータアクセスを行う。また、HMIサーバ50は、管理サーバ30に問い合わせを行い、管理サーバ30からの通知に応じて複数の制御ノード10のいずれかに対してデータアクセスを行う。なお、HMIサーバ50は監視サーバの一例である。
【0048】
管理サーバ30は、GDSとしての機能を実行し、データ110bが制御ノード10b(ノードID「N102」)にあり、データ110cが制御ノード10c(ノードID「N103」)にあることをHMIサーバ50に通知する。
【0049】
HMIサーバ50は通知を受けた後、定期的に、制御ノード10bからデータ110bを取得し、制御ノード10cからデータ110cを取得する。
【0050】
この場合、更新部331は、制御ノード10b(ノードID「N102」)と制御ノード10c(ノードID「N103」)の管理テーブル321における接続数を1ずつ増加させる。
【0051】
[ケース2:制御演算のための制御ノード間通信]
更新部331は、制御演算のために制御ノード間通信が開始された際に、管理テーブル321を更新する。
【0052】
例えば、
図5に示すように、制御ノード10bは、データ110a及びデータ110cを取得するために、管理サーバ30に問い合わせ(アクセス問い合わせ)を行う。
図5は、データアクセスの例を示す図である。
【0053】
管理サーバ30は、GDSとしての機能を実行し、データ110aが制御ノード10a(ノードID「N101」)にあり、データ110cが制御ノード10c(ノードID「N103」)にあることを制御ノード10bに通知する。
【0054】
制御ノード10bは通知を受けた後、定期的に、制御ノード10aからデータ110aを取得し、制御ノード10cからデータ110cを取得する。
【0055】
この場合、更新部331は、制御ノード10a(ノードID「N101」)と制御ノード10c(ノードID「N103」)の管理テーブル321における接続数を1ずつ増加させる。
【0056】
管理サーバ30は、アクセス問い合わせを受けた制御ノード10について、管理テーブル321を更新するとともに、パケットキャプチャを開始する。これにより、管理サーバ30は、データアクセスにより制御ノード10から取得されるデータのサイズ及びデータが取得される周期を得ることができる。
【0057】
制御ノード10に対するデータアクセスが解除された場合、管理サーバ30は、当該制御ノード10の管理テーブル321の接続数を減じるとともに、パケットキャプチャを終了する。
【0058】
算出部332は、複数の制御ノード10のそれぞれに対するデータアクセスの状況を示す情報(例えば、管理テーブル321)を基に、複数の制御ノード10のそれぞれの負荷を算出する。
【0059】
算出部332は、複数の制御ノード10のそれぞれに対するデータアクセスの数に基づいて負荷を算出することができる。例えば、算出部332は、管理テーブル321に記録された接続数が多いほど、負荷を大きく算出する。
【0060】
なお、算出部332が負荷を算出するアルゴリズムは、Jscript、python(登録商標)又はC言語等の言語により記述され、あらかじめ組み込まれたプログラムにより実現される。
【0061】
さらに、算出部332は、データアクセスにおいて取得されるデータのサイズ、及びデータが取得される周期を考慮して負荷を算出してもよい。その場合、管理テーブル321は、データアクセスのアクセス元(例えば、制御ノード10又はHMIサーバ50)ごとの、取得するデータサイズとデータの取得周期を記憶しておく。
【0062】
また、算出部332は、算出した負荷を、既知の管理機能(Redfish等)によって示される複数の制御ノード10のそれぞれの負荷を基に補正してもよい。
【0063】
例えば、算出部332は、管理機能によって示される負荷と、算出部332が算出した負荷との差の平均値αを算出する。そして、算出部332は、算出部332が算出した負荷にαを足した値を負荷の補正値として算出する。なお、αは正であってもよいし負であってもよい。
【0064】
このように、算出部332は、算出した負荷と、管理機能によって示される負荷と、の差を基に、算出した負荷を補正することができる。
【0065】
また、例えば、算出部332は、管理機能によって示される負荷の、算出部332が算出した負荷に対する割合(比)βを算出する。そして、算出部332は、算出部332が算出した負荷にβを掛けた値を負荷の補正値として算出する。なお、βは1以上であってもよいし1未満であってもよい。
【0066】
このように、算出部332は、算出した負荷に対する、管理機能によって示される負荷の割合を基に、算出した負荷を補正することができる。
【0067】
算出部332は、α及びβを、制御ノードごとに算出してもよいし、全ての制御ノードについて算出してもよい。
【0068】
通知部333は、複数の制御ノード10のいずれかの負荷が閾値を超えた場合、通知を行う。なお、複数の制御ノード10のそれぞれに対して、性能に応じて互いに異なる閾値が設定されていてもよい。
【0069】
例えば、通知部333は、算出部332が算出した負荷(又は補正値)が閾値を超えた場合、HMIサーバ50又はHMIクライアント40を介して、オペレータに対してアラートを出力する。
【0070】
図6を用いて、管理サーバ30の処理の流れを説明する。
図6は、管理サーバの処理の流れを示すフローチャートである。
【0071】
図6に示すように、まず、管理サーバ30は、データを取得可能な制御ノードに関する問い合わせを受け付ける(ステップS101)。問い合わせは、制御ノード10又はHMIサーバ50によって行われる。
【0072】
管理サーバ30は、問い合わせに応じて、データを取得可能な制御ノードを通知する(ステップS102)。この後、データを取得可能であることが通知された制御ノードに対するデータアクセスが開始される。
【0073】
例えば、管理サーバ30は、名前解決機能により、問い合わせにより指定されたデータ名をIPアドレスに変換する。例えば、管理サーバ30は、データ110bが指定された場合、制御ノード10bのIPアドレスを問い合わせ元に通知する。
【0074】
管理サーバ30は、データを取得可能であると通知した制御ノードについて、管理テーブル321を更新する(ステップS103)。例えば、管理サーバ30は、管理テーブル321における制御ノードの接続数を増加させる。
【0075】
そして、管理サーバ30は、管理テーブル321を基に、各制御ノードの負荷を算出し、負荷が正常であるか否かを判定する(ステップS104)。例えば、管理サーバ30は、算出した負荷が閾値を超えているか否かを判定する。
【0076】
いずれかの制御ノードの負荷が正常でない場合(例えば、負荷が閾値を超えている場合)(ステップS104、No)、管理サーバ30は、アラートを出力する(ステップS105)。
【0077】
制御ノードの負荷が正常である場合(例えば、負荷が閾値を超えていない場合)(ステップS104、Yes)、管理サーバ30は、アラートを出力せずに処理を終了する。
【0078】
オペレータは、管理サーバ30の通知に応じて、負荷状況に応じた調整を手動で行うことができる。
【0079】
また、管理サーバ30は、自動的に制御ノード10の負荷分散を行う機能を実行してもよい。例えば、管理サーバ30は、制御ノード10の負荷が閾値を超えた場合、当該制御ノード10のタスクを、他の制御ノード10又はサーバ等に割り当てる。
【0080】
また、制御ノード10の負荷を実測することができる場合、実測された負荷が管理サーバ30にフィードバックされてもよい。その場合、管理サーバ30は、フィードバックを受けて、負荷を算出するアルゴリズムを最適化することができる。例えば、管理サーバ30は、前述のα、βと同様の定数を、管理機能とは無関係に保持しておき、フィードバックに応じて当該定数を補正する。
【0081】
[効果]
これまで説明してきたように、管理サーバ30は、算出部332と、通知部333と、を有する。算出部332は、複数の制御ノード10のそれぞれに対するデータアクセスの状況を示す情報を基に、複数の制御ノード10のそれぞれの負荷を算出する。通知部333は、複数の制御ノード10のいずれかの負荷が閾値を超えた場合、通知を行う。
【0082】
例えば、算出部332は、複数の制御ノード10のそれぞれに対するデータアクセスの数に基づいて負荷を算出する。
【0083】
オペレータは、通知に応じて負荷を低減させるための対応を取ることができる。このように、管理サーバ30によれば、DCS(分散制御システム1)の制御ノードが過負荷になることを抑止することができる。
【0084】
また、制御ノード10の負荷が許容量を下回っていれば(例えば、許容量の90%程度)であれば、制御ノード10が自身の負荷を正確に外部に伝えることができる。一方、制御ノード10の負荷が許容量を上回った場合(例えば、許容量の120%程度)、制御ノード10が自身の負荷を正確に外部に伝えることが困難になることがあり得る。そのような場合であっても、管理サーバ30は、制御ノード10の負荷を算出することができる。
【0085】
管理サーバ30は、制御ノード10自体からはいかなる情報をも取得することなく、負荷を算出できる。このため、管理サーバ30は、制御ノード10のベンダ及び仕様の違いにかかわらず負荷を算出できる。
【0086】
また、算出部332は、算出した負荷を、管理機能によって示される複数の制御ノード10のそれぞれの負荷を基に補正する。例えば、算出部332は、算出した負荷と、管理機能によって示される負荷と、の差を基に、算出した負荷を補正する。例えば、算出部332は、算出した負荷に対する、管理機能によって示される負荷の割合を基に、算出した負荷を補正する。通知部333は、補正された負荷が閾値を超えた場合、通知を行う。これにより、管理サーバ30は、負荷の算出精度を向上させることができる。
【0087】
[システム]
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【0088】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
【0089】
さらに、各装置にて行なわれる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【0090】
[ハードウェア]
次に、管理サーバ30のハードウェア構成例を説明する。
図7は、ハードウェア構成例を説明する図である。
図7に示すように、管理サーバ30は、通信装置300a、HDD(Hard Disk Drive)300b、メモリ300c、プロセッサ300dを有する。また、
図7に示した各部は、バス等で相互に接続される。
【0091】
通信装置300aは、ネットワークインタフェースカード等であり、他の装置との通信を行う。HDD300bは、
図2に示した機能を動作させるプログラム及びDBを記憶する。
【0092】
プロセッサ300dは、
図2に示した各処理部と同様の処理を実行するプログラムをHDD300b等から読み出してメモリ300cに展開することで、
図2等で説明した各機能を実行するプロセスを動作させる。例えば、このプロセスは、管理サーバ30が有する各処理部と同様の機能を実行する。具体的には、プロセッサ300dは、更新部331、算出部332及び通知部333と同様の機能を有するプログラムをHDD300b等から読み出す。そして、プロセッサ300dは、更新部331、算出部332及び通知部333と同様の処理を実行するプロセスを実行する。
【0093】
このように、管理サーバ30は、プログラムを読み出して実行することで情報処理方法を実行する情報処理装置として動作する。また、管理サーバ30は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、管理サーバ30によって実行されることに限定されるものではない。例えば、他のコンピュータ又はサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【0094】
このプログラムは、インターネット等のネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD-ROM、MO(Magneto-Optical disk)、DVD(Digital Versatile Disc)等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。
【0095】
開示される技術的特徴の組合せのいくつかの例を以下に記載する。
【0096】
(1)
複数の制御ノードのそれぞれに対するデータアクセスの状況を示す情報を基に、前記複数の制御ノードのそれぞれの負荷を算出する算出部と、
前記複数の制御ノードのいずれかの負荷が閾値を超えた場合、通知を行う通知部と、
を有することを特徴とする情報処理装置。
(2)
前記算出部は、前記複数の制御ノードのそれぞれに対するデータアクセスの数に基づいて負荷を算出することを特徴とする(1)に記載の情報処理装置。
(3)
前記算出部は、算出した負荷を、管理機能によって示される前記複数の制御ノードのそれぞれの負荷を基に補正し、前記通知部は、補正された前記負荷が前記閾値を超えた場合、通知を行うことを特徴とする(1)又は(2)に記載の情報処理装置。
(4)
前記算出部は、算出した負荷と、前記管理機能によって示される負荷と、の差を基に、前記算出した負荷を補正し、前記通知部は、補正された前記負荷が前記閾値を超えた場合、通知を行うことを特徴とする(1)から(3)のいずれか1つに記載の情報処理装置。
(5)
前記算出部は、算出した負荷に対する、前記管理機能によって示される負荷の割合を基に、前記算出した負荷を補正し、前記通知部は、補正された前記負荷が前記閾値を超えた場合、通知を行うことを特徴とする(1)から(3)のいずれか1つに記載の情報処理装置。
(6)
問い合わせに応じてデータアクセス先を通知する管理サーバと、複数の制御ノードと、監視サーバと、
を有する分散制御システムであって、
前記複数の制御ノードは、
前記管理サーバに問い合わせを行い、前記管理サーバからの通知に応じて互いにデータアクセスを行い、
前記監視サーバは、
(1)から(5)のいずれか1つに記載の情報処理装置と同等の処理を行うことを特徴とする分散制御システム。
【符号の説明】
【0097】
1 分散制御システム
10、10a、10b、10c 制御ノード
20、21a、22a フィールド機器
30 管理サーバ
31 通信部
32 記憶部
33 制御部
40 HMIクライアント
50 HMIサーバ
110a、110b、110c データ
321 管理テーブル
331 更新部
332 算出部
333 通知部
【要約】
【課題】DCSの制御ノードが過負荷になることを抑止すること。
【解決手段】実施形態の管理サーバ30は、算出部332と、通知部333と、を有する。算出部332は、複数の制御ノード10のそれぞれに対するデータアクセスの状況を示す情報を基に、複数の制御ノード10のそれぞれの負荷を算出する。通知部333は、複数の制御ノード10のいずれかの負荷が閾値を超えた場合、通知を行う。
【選択図】
図2