JP2018142077A - 冗長化システム及び冗長化方法 - Google Patents
冗長化システム及び冗長化方法 Download PDFInfo
- Publication number
- JP2018142077A JP2018142077A JP2017034783A JP2017034783A JP2018142077A JP 2018142077 A JP2018142077 A JP 2018142077A JP 2017034783 A JP2017034783 A JP 2017034783A JP 2017034783 A JP2017034783 A JP 2017034783A JP 2018142077 A JP2018142077 A JP 2018142077A
- Authority
- JP
- Japan
- Prior art keywords
- data
- block data
- unit
- arithmetic
- output
- 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
Images
Landscapes
- Hardware Redundancy (AREA)
- Safety Devices In Control Systems (AREA)
Abstract
Description
また、分散型サーバシステムでは、分散サーバによるリソースの有効活用、信頼性向上のためにアプリケーションの配置管理が行われることがある。その場合、個々の分散サーバの稼働状態を監視するための中央サーバを必要とする。中央サーバの障害は、分散型サーバシステム全体の稼働に影響を及ぼしうるという課題があった。
以下、本発明の第一実施形態に係る冗長化システムについて、図1〜図4を参照して説明する。
図1は、本実施形態に係る冗長化システム1の一構成例を示すブロック図である。
冗長化システム1は、複数の演算装置10を含んで構成される。複数の演算装置10は、互いに共通の構成を備える。演算装置10a等のa等の符号は、個々の演算装置を区別するための符号である。演算装置10a−10dは、それぞれ情報ネットワークNWで通信可能に接続され、相互に各種のデータを送受信できる。図1に示す例では、演算装置10の台数は、4個であるが、3個以上であればよい。また、台数の上限は特に設けられない。本実施形態では、演算装置10は、例えば、サーバ装置として実現されるが、これには限られない。演算装置10は、後述する制御装置、出力装置として実現されてもよい。
演算装置10は、制御演算部(実行部)11、検出部12、機能制御部13、ブロックデータ処理部14、通信部16及び記憶部18を備える。演算装置10は、例えば、CPU(Central Processing Unit)、ASIC(Application Specific integrated Circuit)等の演算処理を実行する演算デバイスから構成される。演算デバイスは、記憶部18に記憶された所定の制御プログラムを読み出し、読み出した制御プログラムに記述された命令が示す処理を実行する。プログラムに記述された命令が示す処理を実行することを、単に「プログラムを実行する」と呼ぶことがある。また、プログラムには、アプリケーションプログラムが含まれる。以下の説明では、アプリケーションプログラムを単に「アプリケーション」又は「アプリ」と呼ぶことがある。また、機能部間でその処理を実行する演算デバイスが共通であってもよいし、異なっていてもよい。
また、制御演算部11にアプリケーションの起動を指示した後、他の演算装置10の機能制御部13がアプリケーションを起動したとき、自装置の制御演算部11に起動を指示したアプリケーションの実行を停止させる。その場合には、機能制御部13は、そのアプリケーションの実行の停止を示す起動情報を示す起動情報を記憶部18に記憶する。そのため、複数の演算装置10間でのアプリケーションの二重起動が防止される。
記憶部18は、自装置の各部が取得した各種のデータ、自装置の各部の処理に用いるデータを記憶する。記憶部18、ブロックデータ保存部141は、例えば、RAM(Random Access Memory)などの記憶媒体を含んで構成される。
次に、本実施形態に係るブロックデータの例について説明する。
図3は、本実施形態に係るブロックデータの例を示す図である。
BD01、BD02、BD03は、ある時点におけるブロックデータ、その次の時点におけるブロックデータ、さらに次の時点におけるブロックデータをそれぞれ示す。
ブロックデータは、ブロックヘッダとその時点における履歴情報とを含んで構成される。ブロックヘッダには、前ブロックデータの検証値(図3に示す例では、前ブロックのハッシュ値)、装置ID、演算回数、検証用データ及び履歴情報の検証値(図3に示す例では、全障害アプリデータのハッシュ値)が含まれる。図3に示す例では、履歴情報として開始時点から現時点までの障害アプリケーション情報が時刻順に累積されて構成される情報が用いられる。但し、開始時点のブロックデータでは、前ブロックデータの検証値に代えて所定の初期値(例えば、0)が設定される。
演算回数は、演算装置10が実行する演算処理を示す番号である。つまり、演算回数は、演算処理がどの段階まで進行したかを示す稼働タイミングを示す情報である。
検証用データは、演算装置10間で稼働タイミングを調整するために任意に設定されるデータである。他の演算装置10よりも稼働タイミングが先行している演算装置10は、その検証用データを用いて他の機能に影響を及ぼさない所定の処理を行う。その処理が行われる時間は、他の演算装置10よりも稼働タイミングが先行している時間差に相当する。所定の処理は、継続的な演算を含むことで一定の時間を要するアルゴリズムに基づく処理、例えば、円周率の計算、マイニング用ハッシュ値の計算である。検証用データには、例えば、処理開始時刻、カウンタタイマー値などが含まれる。検証用データには、その他、実行する処理の初期値、処理により得られる中間値などが含まれてもよい。
履歴情報の検証値は、現時点までの履歴情報の一方向関数として算出される検証値である。この検証値はブロックヘッダに含まれ、次の時点における前ブロックデータの検証値の導出に用いられる。従って、前ブロックデータが正当ではないと判定されるとき、現ブロックデータも正当ではないと判定される。
次に、本実施形態に係る稼働管理処理について説明する。
図4は、本実施形態に係る稼働管理処理の一例を示すフローチャートである。
(ステップS102)ある演算装置10の検出部12は、制御演算部11が実行するアプリケーションに基づく処理について障害を検出する。その後、ステップS104の処理に進む。
(ステップS104)検出部12は、そのアプリケーションに基づく処理について障害の発生を示す障害発生情報を記憶部18に記憶する。送信データ生成部143は、記憶部18に新たに記憶された障害発生状態に基づいて現時点の障害アプリケーション情報を生成する。送信データ生成部143は、生成した障害アプリケーション情報を前時点のブロックデータに含まれる履歴情報に追加して現時点の履歴情報を生成する。そして、送信データ生成部143は、生成した履歴情報と、その履歴情報の検証値をブロックヘッダに含む現時点のブロックデータとしてブロックデータ1を生成する。その後、ステップS106の処理に進む。
(ステップS108)他の演算装置10のブロックデータ保存部141は、他の演算装置10から通信部16を介して受信したブロックデータ1を記憶する。その後、ステップS110の処理に進む。
(ステップS114)検出部12は、制御演算部11におけるアプリケーションの実行状態として、そのアプリケーションが正常に起動したか否かを判定する。正常に起動したと判定するとき(ステップS114 YES)、ステップS116の処理に進む。正常に起動していないと判定するとき(ステップS114 NO)、ステップS112の処理に戻る。
(ステップS116)機能制御部13は、起動指示したアプリケーションの起動を示す起動情報を記憶部18に記憶する。その後、ステップS118の処理に進む。
(ステップS122)受信データ解析部142は、ブロックデータ2に含まれる履歴情報に基づいて、他の演算装置10の機能制御部13がそのアプリケーションを起動させたか否かを判定する。起動したと判定するとき(ステップS122 YES)、ステップS124の処理に進む。起動していないと判定するとき(ステップS122 NO)、図4に示す処理を終了する。
(ステップS124)機能制御部13は、自装置の制御演算部11にそのアプリケーションの実行を停止させる。図4に示す処理を終了する。
以下、本発明の第二実施形態に係る冗長化システムについて、図5〜図9を参照して説明する。以下の説明では、本実施形態に係る演算装置24が主に図5に示す制御装置(LS:Logic Solver;制御演算装置)である場合を例にするが、これには限られない。演算装置24は、サーバ装置として実現されてもよい。複数の演算装置24は、互いに共通の構成を有し、共通の処理を行う。図5に示す例では、演算装置24の台数は、4個であるが、3個以上であればよい。
冗長化システム2は、OPS(Operator Station;監視装置)21、EMS(Engineering and Maintenance Station;管理装置)22、NA(Network Adaptor;ネットワークアダプタ)23、複数の演算装置24a〜24d、IO(Input Output;入出力)スキャナ25、IOネットワーク26、IOアダプタ27a、27b、及びIOモジュール28aa〜28aI、28ba〜28bJを含んで構成される制御システムである。
演算装置24a〜24dには、それぞれIOモジュール28aa〜28aI、28ba〜28bJのいずれか又はその所定の組み合わせからIOアダプタ27a、27bのいずれか、IOネットワーク26及びIOスキャナ25を介して入力データが入力される。
演算装置24a〜24dは、それぞれ入力データに基づいて所定の演算処理を行って出力データを算出し、算出した出力データをIOスキャナ25、IOネットワーク26、及びIOアダプタ27a、27bのいずれかを介してIOモジュール28aa〜28aI、28ba〜28bJのいずれか又はその所定の組み合わせに出力する。
IOアダプタ27aは、IOネットワーク26とIOモジュール28aa〜28aIに通信可能に接続する。IOアダプタ27aは、IOモジュール28aa〜28aIから受信する入力データをIOネットワーク26に送信し、IOネットワーク26から受信する出力データをIOモジュール28aa〜28aIに出力する。
IOアダプタ27bは、IOネットワーク26とIOモジュール28ba〜28bJに通信可能に接続する。IOアダプタ27bは、IOモジュール28ba〜28bJから受信する入力データをIOネットワーク26に送信し、IOネットワーク26から受信する出力データをIOモジュール28ba〜28bJに出力する。
演算装置24は、制御演算部241、データ選定部(機能制御部)243、ブロックデータ処理部244、第1通信部246、記憶部248、及び第2通信部249を備える。
以下の説明では、主に第一実施形態との差異点を主とする。また、演算装置24aに注目し、その処理において扱われる各種のデータの符号にその子番号である符号aを付し、他の演算装置で扱われるデータと区別する。
所定の演算により出力データYaを得る過程の途中段階で得られる結果のデータを中間値データとし、入力データDaに基づいて出力データYaを得るまでの単一又は一連の複数の中間値データを中間値データ群Caとする。中間値データ群Caには、例えば、過去のデータを累積して使用する積分値、又は移動平均値等が含まれる。
データ選定部243は、第2通信部249を介して受信した自装置宛の入力データ、第1通信部246を介して受信した他の演算装置から送信されたブロックデータに含まれる入力データのうち、少なくとも1つが一致していない場合、最も出現頻度の高い値を変更後の入力データとして選定する。具体的には、データ選定部243は、記憶部248に格納されている入力データDa,Db,Dc及びDdを読み出して比較し、これら値の出現頻度によって正しい入力データを選定する。
ブロックデータ処理部244は、ブロックデータ保存部2441、受信データ解析部2442、及び送信データ生成部2443を含んで構成される。
受信データ解析部2442は、ブロックデータ保存部2441から他の演算装置24から受信した入力ブロックデータを読み出す。受信データ解析部2442は、各演算装置24の入力ブロックデータに記述された最新の時点の入力データDb,Dc,Ddを抽出し、記憶部248に記憶する。
受信データ解析部2442は、ブロックデータ保存部2441から、他の演算装置24のから受信した中間値ブロックデータと自装置の送信データ生成部2443が生成した入力ブロックデータを読み出す。受信データ解析部2442は、各演算装置24のブロックデータに記述された最新の時点の中間値データ群Cb,Cc,Cdを抽出し、記憶部248に記憶する。
次に、本実施形態に係るブロックデータの例について説明する。
図7は、本実施形態に係るブロックデータの例を示す図である。
BD11、BD12、BD13は、それぞれ、ある時点における入力ブロックデータ、その次の時点における入力ブロックデータ、さらに次の時点における入力ブロックデータを示す。
図7に示す例では、入力ブロックデータには、履歴情報として、開始時点から現時点までの入力データが累積されて構成される履歴情報が含まれる。ブロックヘッダに含まれる検証値として、履歴情報を構成する全入力データのCRC値と、前時点までのブロックデータのCRC加算値とが含まれる。このCRC加算値は、各時点のブロックデータに含まれるブロックヘッダについて算出されるCRC値の開始時点から前時点までの総和である。CRC値ならびにCRC加算値によれば、データの改ざん検知の効果はハッシュ値よりも低いが、制御装置の処理負荷を低下させ、処理時間を低減させることができる。かかる構成により、伝送路上のノイズ、その他の原因によるブロックデータの改変を検知することができる。但し、開始時点のブロックデータでは、前時点のブロックデータのブロックヘッダのCRC加算値に代えて所定の初期値(例えば、0)が設定される。
BD31、BD32、BD33は、それぞれ、ある時点における中間値ブロックデータ、その次の時点における中間値ブロックデータ、さらに次の時点における中間値ブロックデータを示す。
図8に示す例では、中間値ブロックデータには、履歴情報として、開始時点から現時点までの中間値データ群が累積されて構成される履歴情報が含まれる。ブロックヘッダに含まれる検証値として、履歴情報を構成する全中間値データ群のCRC値と、前時点までのブロックデータのブロックヘッダのCRC加算値とが含まれる。但し、開始時点のブロックデータでは、前時点までのブロックデータのブロックヘッダのCRC加算値に代えて所定の初期値(例えば、0)が設定される。
なお、全中間値データ群のCRC値と、前時点までのブロックデータに含まれるブロックヘッダのCRC加算値に代えて、それぞれのハッシュ値が用いられてもよい。
次に、本実施形態に係る入力データ、中間値データ群の比較採用処理について説明する。
図9は、本実施形態に係る入力データ、中間値データ群の比較採用処理の一例を示すフローチャートである。
(ステップS202)制御対象に取り付けられたセンサによって計測された計測値が入力値としてIOモジュール28の入力装置に入力される。その後、ステップS204の処理に進む。
(ステップS204)IOモジュール28の入力装置は、入力値を示す入力データを、各演算装置24a,24b,24c,及び24dのそれぞれの第2通信部249に送信する。その後、ステップS206の処理に進む。
(ステップS206)各演算装置24の第2通信部249は、IOモジュール28の入力装置から入力データを受信し、受信した入力データDaを記憶部248に格納する。
そして、送信データ生成部2443は、記憶部248に記憶された現時点の入力データを読み出し、ブロックデータ保存部2441に保存された前時点の入力ブロックデータを読み出す。送信データ生成部2443は、読み出した入力ブロックデータと、現時点の入力データに基づいて現時点の入力ブロックデータを生成する。その後、ステップS208の処理に進む。
(ステップS210)各演算装置24のブロックデータ保存部2441は、第1通信部246を介して他の演算装置24から受信した入力ブロックデータを保存する。受信データ解析部2442は、ブロックデータ保存部2441に保存された他の演算装置24のそれぞれからの入力ブロックデータから現時点の入力データ抽出し、記憶部248に格納する。その後、ステップS212の処理に進む。
(ステップS214)各演算装置24のデータ選定部243は、正しい値として選定した入力データが、第2通信部249を介して取得した入力データと一致するか否かを判定する。一致すると判定するとき(ステップS214 YES)、ステップS218の処理に進む。一致しないと判定するとき(ステップS214 NO)、ステップS216の処理に進む。
(ステップS216)データ選定部243は、記憶部248に格納されている入力データを正しい入力データに置き換える。従って、全ての入力データDa,Db,Dc,Ddが一致していた場合には、入力データの置き換えは行われない。その後、ステップS218の処理に進む。
(ステップS220)各演算装置24の送信データ生成部2443は、記憶部248に記憶された現時点の中間値データ群を読み出し、ブロックデータ保存部2441に保存された前時点の中間値ブロックデータを読み出す。送信データ生成部2443は、読み出した中間値ブロックデータと、現時点の中間値データ群に基づいて現時点の中間値ブロックデータを生成する。送信データ生成部2443は、生成した中間値ブロックデータを記憶部248に記憶し、第1通信部246を介して他の演算装置24に送信する。その後、ステップS222の処理に進む。
(ステップS222)各演算装置24のブロックデータ保存部2441は、第1通信部246を介して他の演算装置24から受信した中間値ブロックデータを保存する。受信データ解析部2442は、ブロックデータ保存部2441に保存された他の演算装置24のそれぞれからの中間値ブロックデータから現時点の中間値データ群を抽出し、記憶部248に格納する。その後、ステップS224の処理に進む。
(ステップS226)各演算装置24のデータ選定部243は、正しい値として選定した中間値データ群が、自装置の制御演算部241が算出した中間値データ群と一致するか否かを判定する。一致すると判定するとき(ステップS226 YES)、ステップS228の処理に進む。一致しないと判定するとき(ステップS226 NO)、ステップS232の処理に進む。
(ステップS230)データ選定部243は、記憶部248に格納されている中間値データ群を正しい中間値データ群に置き換える。従って、全ての中間値データ群Ca,Cb,Cc,Cdが一致していた場合には、中間値データ群の置き換えは行われない。その後、ステップS232の処理に進む。
(ステップS232)第2通信部249は、記憶部248に格納されている中間値データ群のうち出力データを読み出し、読み出した出力データをIOモジュール28の出力装置に送信する。出力装置は、各演算装置24から受信した出力データのいずれかを採用し、採用した出力データが示す出力値を接続されたアクチュエータに出力する。なお、出力装置は、通知情報を受信した直後に受信した出力データを採用しなくてもよい。その後、図9に示す処理を終了する。
以下、本発明の第三実施形態に係る冗長化システムについて、図10〜図13を参照して説明する。
図10は、本実施形態に係る冗長化システム3の一構成例を示すブロック図である。
本実施形態に係る冗長化システム3は、複数系統のサブシステムを含んで構成される。図10に示す例では、サブシステムの数は、2個である。以下の2個のサブシステムを、それぞれサブシステム3s、3s’と呼んで両者を区別する。サブシステム3s、3s’間で、装置構成は共通である。各サブシステムの装置構成は、図5に示す冗長化システム2と同様の構成を含む。サブシステム3s’の構成要素となる機器は、それぞれ対応する機器と同一の構成を備える。例えば、演算装置34a’〜34d’は、それぞれ演算装置34a〜34dと同一の構成を備える。但し、サブシステム3sは、演算装置24a〜24dに代え、演算装置34a〜34dを備える。また、互いに同一の構成を備える演算装置34a〜34d、演算装置34a’〜34d’を演算装置34と総称する。その他の同一の構成を備える機器についても、同様に総称する。なお、第二実施形態と同一の構成については、同一の符号を付してその説明を援用する。以下の説明では、主に第二実施形態との差異点について説明する。
演算装置34は、制御演算部241、検出部342、データ選定部243、ブロックデータ処理部244、第1通信部246、機能制御部345、記憶部248、及び第2通信部249を備える。
制御演算部241、ブロックデータ処理部244、第1通信部246及び記憶部248は、それぞれ演算装置10の制御演算部11、ブロックデータ処理部14、通信部16及び記憶部18と共通の構成を備えるため、それらの説明を援用する。
機能制御部345は、補うことができると判定するとき、出力電力の目標値として、その時点における出力電力よりも大きく、出力電力の上限以下となる値に定める。機能制御部345は、出力電力の増加量と制御対象の発電システムを示す障害対応データを記憶部248に記憶する。出力電力の増加量は、出力電力の目標値からその時点における出力電力の差分である。この出力電力の増加量は、不足電力を補うために用いられる。
受信データ解析部2442は、ブロックデータ保存部2441から他の演算装置24から受信した障害対応ブロックデータを読み出す。受信データ解析部2442は、各演算装置24の障害対応ブロックデータに記述された最新の時点の障害発生データ又は障害対応データを抽出し、記憶部248に記憶する。
記憶部248に記憶された最新の障害発生データと障害対応データのうち、障害発生データの方が新しい場合には、送信データ生成部2443は、その障害発生データを現時点の障害発生データとして読み出し、ブロックデータ保存部2441に保存された障害対応ブロックデータのうち最新の障害対応ブロックデータを前時点の障害対応ブロックデータとして読み出す。送信データ生成部2443は、読み出した障害対応ブロックデータと、現時点の障害発生データに基づいて現時点の障害対応ブロックデータを生成する。現時点の障害対応ブロックデータは、前時点の障害対応ブロックデータに基づく検証値と、その履歴情報に新たに読み出した障害発生データを追加して構成される現時点の履歴情報とを含むデータである。送信データ生成部2443は、第1通信部246を介して生成した障害対応ブロックデータを他の演算装置34に送信し、自装置のブロックデータ保存部2441に保存する。
次に、本実施形態に係るブロックデータの例について説明する。
図12は、本実施形態に係るブロックデータの例を示す図である。
BD31、BD32、BD33は、それぞれ、ある時点における障害対応ブロックデータ、その次の時点における障害対応ブロックデータ、さらに次の時点における障害対応ブロックデータを示す。
なお、全障害発生データ又は障害対応データのCRC値と、前時点までのブロックデータに含まれるブロックヘッダのCRC加算値に代えて、それぞれのハッシュ値が用いられてもよい。
上述した例では、発電機の障害対応を例にしたが、ガスタービンの燃焼器のマッピングにも適用できるように変形することができる。
燃焼器のマッピングとは、個々のガスタービンエンジンについて、個々のガスタービンエンジンについての作動限界を計測し、計測により得られるデータを当該ガスタービンエンジンのコントローラとなる演算装置がそれらの動作を制御するための制御スケジュールに変換する方法である。制御スケジュールは、燃焼による音圧とエミッションレベルが所定の範囲内に収まり、かつリング火炎温度に他の作動境界(例えば、希薄失火及びガスタービンエンジンが備えるライナもしくはドームの金属温度)に対して所定の範囲以上のマージンが与えられるように制御するために用いられる。制御スケジュールは、バーナ・モードと抽気設定の組み合わせに対応する。バーナ・モードとは、燃焼器の動作モードである。抽気設定とは、圧縮器により燃焼器に吸入される空気の流量(吸入空気流量)に係る設定である。
(S1)バルクリング火炎温度をエミッション及び音響の必要条件に適合させる。
(S2)ドームリング火炎温度を調節し、最高及び最低リング火炎境界温度を求める。
(S3)(S1)、(S2)の双方において、エミッションレベルと音圧が所定の仕様限界内にあるか否かを判定する。仕様限界外にあると判定する場合には、仕様限界内に収まるようにバルクリング火炎温度を調節する。これらの処理を、抽気設定及びバーナ・モードの各組み合わせについて繰り返す。
仕様限界内にあると判定する場合には、異なる抽気設定及びバーナ・モードについて、パワーを増大させ、上記の処理を繰り返す。これらの各過程において得られるマッピングデータを記憶部248に記憶する。
マッピングデータには、例えば、最高及び最低リング火炎境界温度のいずれかを制御するための入力データとして、例えば、エミッションレベルと音圧が記録される。エミッションレベルとは、窒素酸化物、一酸化炭素などの有害ガスの排出量である。また、目標値として、バルクリング火炎温度と、最高及び最低リング火炎境界温度が用いられる。
そこで、本変形例では、ブロックデータ処理部244は、障害対応ブロックデータに代えて、燃焼器データを累積して構成される履歴情報を含むブロックデータである、燃焼器ブロックデータを処理する。
受信データ解析部2442は、ブロックデータ保存部2441から他の演算装置24から受信した燃焼器ブロックデータを読み出す。受信データ解析部2442は、各演算装置24の燃焼器ブロックデータに記述された最新の時点の燃焼器データを抽出し、記憶部248に記憶する。
次に、本変形例に係るブロックデータの例について説明する。
図13は、本変形例に係るブロックデータの例を示す図である。
BD41、BD42、BD43は、それぞれ、ある時点における燃焼器ブロックデータ、その次の時点における燃焼器ブロックデータ、さらに次の時点における燃焼器ブロックデータを示す。
燃焼器ブロックデータのブロックヘッダに含まれる検証値として、上述の入力ブロックデータ、中間値ブロックデータ、障害対応ブロックデータと同様に、履歴情報を構成する全燃焼器データのCRC値と、前時点までのブロックデータのCRC加算値とが含まれる。
なお、全燃焼器データのCRC値と、前時点までのブロックデータに含まれるブロックヘッダのCRC加算値に代えて、それぞれのハッシュ値が用いられてもよい。
以下、本発明の第四実施形態に係る冗長化システムについて、図14〜図16を参照して説明する。
図14は、本実施形態に係る冗長化システム4の一構成例を示すブロック図である。
本実施形態に係る冗長化システム4は、図5に示す冗長化システム2と同様の構成を含む。第二実施形態と同一の構成については、同一の符号を付してその説明を援用する。以下の説明では、主に第二実施形態との差異点について説明する。
冗長化システム4は、IOモジュール28aa〜28aI、28ba〜28bJに代え、IOモジュール48aa〜48aI、48ba〜48bJを備える。IOモジュール48aa〜48aI、48ba〜48bJは、互いに同一の構成を備え、これらをIOモジュール48と総称する。IOモジュール48を構成する出力装置48o(図15)は、各演算装置34から受信した出力データについて選定処理を行い、その処理結果で更新された出力データを含むブロックデータをIOネットワーク26に送出する。
出力装置48oは、データ選定部483、ブロックデータ処理部484、通信部486、出力部487、記憶部488及び検出部489を備える。
データ選定部483は、正しい出力データは複数存在するので、その複数の出力データのいずれか1つを選択する。データ選定部483は、選択した出力データとその出力元である演算装置24の情報を含む選定データを記憶部488に記憶し、その出力データを出力部487に出力する。
ブロックデータ保存部4841は、送信データ生成部4843が生成した出力ブロックデータを保存する。
通信部486は、各演算装置24a,24b,24c及び24dからそれぞれ出力データYa,Yb,Yc及びYdを取得するとともに、これら出力データYa,Yb,Yc及びYdを記憶部488に格納する。記憶部488には、通信部486から出力された出力データYa,Yb,Yc及びYdが格納される。
通信部486は、送信データ生成部4843から入力された出力ブロックデータをIOネットワーク26に送出する。従って、OPS21、各演算装置24は、IOネットワーク26を介して、出力装置48oから送出される出力ブロックデータを取得することができる。
記憶部488は、各部で取得された各種のデータ、各部における処理に用いられる各種のデータを記憶する。
検出部489は、出力部487から出力される出力値が、出力部487に出力される出力データに相当する正しい出力値であるか否かを判定する自己チェック回路を含んで構成される。検出部489は、その判定結果を示す障害情報を、判定対象の出力データと対応付けて記憶部488に記憶する。記憶部488に記憶される選定データには、演算装置24の情報と出力データに、さらに障害情報が含まれてもよい。
次に、本変形例に係るブロックデータの例について説明する。
図16は、本実施形態に係るブロックデータの例を示す図である。
BD51、BD52、BD53は、それぞれ、ある時点における出力ブロックデータ、その次の時点における出力ブロックデータ、さらに次の時点における出力ブロックデータを示す。
出力ブロックデータのブロックヘッダに含まれる検証値として、上述の入力ブロックデータ、中間値ブロックデータ、障害対応ブロックデータ、出力ブロックデータと同様に、履歴情報を構成する全選定データのCRC値と、前時点までのブロックデータのCRC加算値とが含まれる。
なお、全選定データのCRC値と、前時点までのブロックデータに含まれるブロックヘッダのCRC加算値に代えて、それぞれのハッシュ値が用いられてもよい。
従来は、出力装置からフィールド機器に出力された電圧値、電流値などの出力値をモニタするために、出力装置が出力値を演算装置にフィードバックし、演算装置24がOPS21にその出力値の情報を送信する処理を行っていた。もしくは、出力装置が出力された出力値を入力装置に還流するための計装を備えていた。本実施形態では、その処理や計装を要しないため、出力装置において処理負荷が低減し、ハードウェア規模の増加を抑えることができる。また、処理負荷を低減したことに応じて、出力装置の出力にかかる処理能力を向上することができる。
第四実施形態に示す出力装置48oは、第三実施形態に示すIOモジュール28に備えられてもよい。
また、ブロックデータ処理部14、244、484は、自部で扱われる最新のブロックデータに含まれる履歴情報の情報量が、所定の情報量を超えたか否かを判定してもよい。所定の情報量を超えたと判定するとき、ブロックデータ処理部14、244、484は、その履歴情報を記憶部18、248、488に記憶し、新たに開始時点におけるブロックデータを生成してもよい。
また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
21…OPS、22…EMS、23…NA、24…演算装置、25…IOスキャナ、26…IOネットワーク、27…IOアダプタ、28…IOモジュール、
141、2441、4841…ブロックデータ保存部、142、2442…受信データ解析部、143、2443、4843…送信データ生成部、243、483…データ選定部、246…第1通信部、248…記憶部、249…第2通信部、487…出力部
Claims (6)
- 複数の演算装置を備える冗長化システムであって、
前記複数の演算装置のそれぞれは、
前時点のブロックデータに基づく検証値と、前時点の履歴情報に現時点の所定の検出対象の稼働状態の情報を追加してなる現時点の履歴情報と、を含む現時点のブロックデータを生成するデータ生成部と、
前記現時点のブロックデータを前記複数の演算装置間で同報する通信部と、
を備え、
前記複数の演算装置の少なくとも1台は、
前記検出対象の障害が検出されるとき、前記検出対象の機能を補うための機能制御部、
を備える
冗長化システム。 - 前記複数の演算装置のそれぞれは、
入力装置から入力データを取得する第2通信部と、
前記検出対象として、現時点の入力データに基づいて所定の演算を行って出力データを算出する制御演算部と、
前記出力データを算出する過程で得られる中間値データを記憶する記憶部と、
を備え、
前記データ生成部は、
前記検証値と、前記履歴情報に現時点の入力データ又は中間値データを追加してなる現時点の履歴情報と、を含むブロックデータを生成し、
前記機能制御部は、現時点の前記入力データの前記複数の演算装置間の出現頻度に基づいて前記通信部が取得した入力データの正誤を判定し、誤りと判定された入力データを正しいと判定された入力データに更新し、
前記中間値データの前記複数の演算装置間の出現頻度に基づいて前記制御演算部から得られた中間値データの正誤を判定し、誤りと判定された中間値データを正しいと判定された演算データに更新する
請求項1に記載の冗長化システム。 - 前記複数の制御装置のそれぞれと入出力ネットワークを介して接続される通信部と、
前記出力データの前記複数の演算装置間の出現頻度に基づいて前記出力データの正誤を判定し、正しいと判定された出力データを選定するデータ選定部と、
前記検証値と、前時点までの出力データからなる出力履歴情報に現時点の前記出力データの選択結果を示す情報を追加した現時点の出力履歴情報と、を含む出力ブロックデータを生成するデータ生成部と、
を有する出力装置を備え、
前記通信部は、前記出力ブロックデータを前記入出力ネットワークに送出する
請求項2に記載の冗長化システム。 - 前記複数の演算装置のそれぞれは、
前記検出対象として、所定のアプリケーションプログラムに基づく処理を実行する実行部、
を備え、
前記複数の演算装置のうち前記実行部が前記処理を実行する第1演算装置において、
前記処理の障害が検出されるとき、前記データ生成部は、前記検証値と、現時点の稼働状態の情報として前記障害に関する情報に基づいて第1ブロックデータを生成し、
前記通信部は、前記第1ブロックデータを前記複数の演算装置のうち前記第1演算装置とは異なる他の演算装置に送信し、
前記複数の演算装置のうち前記第1ブロックデータを取得した第2演算装置において、
前記機能制御部は、前記アプリケーションプログラムに基づく処理を起動し、
前記データ生成部は、前記第1ブロックデータに基づく検証値と、現時点の稼働状態の情報として前記起動に関する情報に基づいて第2ブロックデータを生成し、
前記通信部は、前記第2ブロックデータを前記複数の演算装置のうち前記第2演算装置とは異なる他の演算装置に送信する、
請求項1に記載の冗長化システム。 - 前記複数の演算装置の少なくとも1台は、
検出対象の障害を検出する検出部を備え、
前記障害が検出されるとき、前記データ生成部は、前記検証値と、現時点の稼働状態の情報として前記障害に関する情報に基づいて第1ブロックデータを生成し、
前記通信部は、前記第1ブロックデータを前記複数の演算装置のうち前記少なくとも1台の演算装置とは異なる他の演算装置に送信し、
前記複数の演算装置のうち前記第1ブロックデータを取得した第2演算装置において、
前記検出対象の機能が補われるとき、前記データ生成部は、前記第1ブロックデータに基づく検証値と、前記現時点の稼働状態の情報として前記機能への対応に関する情報に基づいて第2ブロックデータを生成し、
前記通信部は、前記第2ブロックデータを前記複数の演算装置のうち前記第2演算装置とは異なる他の演算装置に送信する
請求項1から請求項4のいずれか一項に記載の冗長化システム。 - 複数の演算装置を備える冗長化システムにおける冗長化方法であって、
前記複数の演算装置のそれぞれは、
前時点のブロックデータに基づく検証値と、前時点の履歴情報に現時点の所定の検出対象の稼働状態の情報を追加してなる現時点の履歴情報と、を含む現時点のブロックデータを生成するデータ生成過程と、
前記現時点のブロックデータを前記複数の演算装置間で同報する通信過程と、
前記複数の演算装置の少なくとも1台は、
前記検出対象の障害が検出されるとき、前記検出対象の機能を補うための機能制御過程と、
を有する
冗長化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017034783A JP6843650B2 (ja) | 2017-02-27 | 2017-02-27 | 冗長化システム及び冗長化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017034783A JP6843650B2 (ja) | 2017-02-27 | 2017-02-27 | 冗長化システム及び冗長化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018142077A true JP2018142077A (ja) | 2018-09-13 |
JP6843650B2 JP6843650B2 (ja) | 2021-03-17 |
Family
ID=63528040
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017034783A Active JP6843650B2 (ja) | 2017-02-27 | 2017-02-27 | 冗長化システム及び冗長化方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6843650B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113672377A (zh) * | 2020-05-13 | 2021-11-19 | 株式会社日立制作所 | 程序生成装置、并行运算设备以及计算机可读记录介质 |
JP7077644B2 (ja) | 2018-02-09 | 2022-05-31 | 横河電機株式会社 | 制御システム、診断装置、診断方法、および診断プログラム |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002344450A (ja) * | 2001-05-15 | 2002-11-29 | Hitachi Ltd | 高可用性処理方法及びその実施システム並びにその処理プログラム |
JP2009192208A (ja) * | 2008-01-18 | 2009-08-27 | Sanyo Electric Co Ltd | 冷却システム、制御装置及び制御プログラム |
JP2010287127A (ja) * | 2009-06-12 | 2010-12-24 | Mitsubishi Heavy Ind Ltd | 冗長化システム |
WO2011135628A1 (ja) * | 2010-04-28 | 2011-11-03 | 株式会社日立製作所 | クラスタ再構築方法、クラスタ再構築装置及びクラスタ再構築プログラム |
JP2012159988A (ja) * | 2011-01-31 | 2012-08-23 | Japan Agengy For Marine-Earth Science & Technology | ノード |
-
2017
- 2017-02-27 JP JP2017034783A patent/JP6843650B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002344450A (ja) * | 2001-05-15 | 2002-11-29 | Hitachi Ltd | 高可用性処理方法及びその実施システム並びにその処理プログラム |
JP2009192208A (ja) * | 2008-01-18 | 2009-08-27 | Sanyo Electric Co Ltd | 冷却システム、制御装置及び制御プログラム |
JP2010287127A (ja) * | 2009-06-12 | 2010-12-24 | Mitsubishi Heavy Ind Ltd | 冗長化システム |
WO2011135628A1 (ja) * | 2010-04-28 | 2011-11-03 | 株式会社日立製作所 | クラスタ再構築方法、クラスタ再構築装置及びクラスタ再構築プログラム |
JP2012159988A (ja) * | 2011-01-31 | 2012-08-23 | Japan Agengy For Marine-Earth Science & Technology | ノード |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7077644B2 (ja) | 2018-02-09 | 2022-05-31 | 横河電機株式会社 | 制御システム、診断装置、診断方法、および診断プログラム |
CN113672377A (zh) * | 2020-05-13 | 2021-11-19 | 株式会社日立制作所 | 程序生成装置、并行运算设备以及计算机可读记录介质 |
Also Published As
Publication number | Publication date |
---|---|
JP6843650B2 (ja) | 2021-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102205392B1 (ko) | 기술 시스템의 동작을 제어하기 위한 시스템, 방법 및 제어 유닛 | |
EP2660668A2 (en) | Systems and methods for controlling file execution for industrial control systems | |
US9374194B2 (en) | Transmission system error detection and correction system and method | |
EP2924578B1 (en) | Monitor processor authentication key for critical data | |
JP6843650B2 (ja) | 冗長化システム及び冗長化方法 | |
JP2020042705A (ja) | 故障予測装置、故障予測方法及びプログラム | |
WO2016157278A1 (ja) | 故障予兆診断システム、及びその方法 | |
US20130007516A1 (en) | Adaptive voltage scaling based on the results of forward error correction processing | |
US20110191634A1 (en) | Test-operation control apparatus, system, and method | |
CN115695150B (zh) | 一种基于分布式异构融合组网设备检测方法及装置 | |
WO2021027294A1 (zh) | 提高风电系统数据质量的方法及装置 | |
JP2020021341A (ja) | 冗長化システム | |
JP2006228115A (ja) | 負荷分散予測装置及び負荷分散制御方法並びにそのプログラム、負荷分散制御システムおよび当該システムにおける負荷分散制御方法 | |
CN110620800B (zh) | 电力二次系统跨安全区的配置数据同步处理方法和装置 | |
US11322014B2 (en) | Notification device, notification method, and program | |
JP2011175513A (ja) | 障害管理システム及び方法 | |
US8799707B2 (en) | Redundant system | |
JP2017078987A (ja) | プラント設計支援装置 | |
WO2019186796A1 (ja) | 更新計画作成支援装置、更新計画作成支援システム及び更新計画作成支援方法 | |
US8776071B2 (en) | Microprocessor operation monitoring system | |
CN110134000B (zh) | 控制系统、诊断装置、诊断方法、以及存储有诊断程序的计算机可读介质 | |
CN114624989A (zh) | 预防性控制器切换 | |
JP2010047102A (ja) | 多重系電子連動装置 | |
JPH11345003A (ja) | プラント制御システム | |
JP7396526B1 (ja) | プラント制御システム及びプラント制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20170228 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20181109 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191217 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201019 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201124 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201228 |
|
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: 20210209 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210224 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6843650 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |