JP2010287127A - 冗長化システム - Google Patents

冗長化システム Download PDF

Info

Publication number
JP2010287127A
JP2010287127A JP2009141567A JP2009141567A JP2010287127A JP 2010287127 A JP2010287127 A JP 2010287127A JP 2009141567 A JP2009141567 A JP 2009141567A JP 2009141567 A JP2009141567 A JP 2009141567A JP 2010287127 A JP2010287127 A JP 2010287127A
Authority
JP
Japan
Prior art keywords
intermediate value
code
data
value data
data group
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
Application number
JP2009141567A
Other languages
English (en)
Other versions
JP5574627B2 (ja
Inventor
Yasuhiro Takatsudo
康弘 高津戸
Kei Ishii
圭 石井
Kenichi Morimoto
賢一 森本
Fumiyoshi Anzai
史圭 安西
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Heavy Industries Ltd
Original Assignee
Mitsubishi Heavy Industries Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Heavy Industries Ltd filed Critical Mitsubishi Heavy Industries Ltd
Priority to JP2009141567A priority Critical patent/JP5574627B2/ja
Publication of JP2010287127A publication Critical patent/JP2010287127A/ja
Application granted granted Critical
Publication of JP5574627B2 publication Critical patent/JP5574627B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Safety Devices In Control Systems (AREA)

Abstract

【課題】出力データの信頼性を向上させ、演算装置の停止回数を低減すること。
【解決手段】入力装置3と入力装置3から入力データを受信する複数の演算装置5a,5b,5c,及び5dと演算装置5a,5b,5c,及び5dから出力された出力データを受信する出力装置4とを具備し、演算装置5a,5b,5c,及び5dの各々に同じ処理を実行させる冗長化システム100であって、各演算装置5a,5b,5c,及び5dは、入力装置3から入力データを取得する第1通信部6と、第1通信部6により取得された入力データを他の演算装置に送信し、かつ、他の演算装置から、他の演算装置が取得した入力データを受信する第2通信部7とを具備する。
【選択図】図1

Description

本発明は、冗長化システムに関するものである。
従来、例えば、プラントプロセスを制御するための演算装置を冗長構成とし、演算装置の一部に故障が発生しても、プラント機能を喪失することがないように制御を行なう冗長化システムが提案されている。
特許文献1には、3つの演算装置を冗長化した3重化の制御システムにおいて、3つの演算結果が不一致となったときは、各演算装置から出力される演算結果の中間値を制御量として決定し、また、3つのうち1つの演算装置が停止し、2重化システムに切り替わったときには、高値選択または低値選択を行うことによって制御量を決定する方法が開示されている。
特開2003−157102号公報
しかしながら、上記特許文献1の発明では、複数の演算装置における演算結果が異なる場合には、全ての演算結果が一致する場合と比較して誤差が大きくなるため、データの信頼性が低くなるという問題があった。
また、従来は、演算装置の異常に限らず、入出力データの経路である通信媒体の一時的な不具合に起因した入出力データの欠落や破損が生じた場合であっても、演算装置自体に問題が生じているとみなしてその演算装置を停止させてしまうので、演算装置の稼働率が低下してしまうという問題があった。
本発明は、上記問題を解決するためになされたもので、出力データの信頼性を向上させ、演算装置の停止回数を低減することのできる冗長化システムを提供することを目的とする。
上記課題を解決するために、本発明は以下の手段を採用する。
本発明は、入力装置と、前記入力装置から入力データを受信する複数の演算装置と、前記演算装置から出力された出力データを受信する出力装置とを具備し、前記演算装置の各々に同じ処理を実行させる冗長化システムであって、各前記演算装置は、前記入力装置から入力データを取得する第1通信手段と、該第1通信手段により取得された前記入力データを他の前記演算装置に送信し、かつ、他の前記演算装置から、他の前記演算装置が取得した前記入力データを受信する第2通信手段とを具備する冗長化システムを提供する。
このような構成によれば、各演算装置において、第1通信手段を介して取得された入力データは、第2通信手段を介して相互に送受信される。これにより、各演算装置は、他の演算装置に送信された入力データを取得することができる。これにより、例えば、入力装置と第1通信手段との間で通信障害が生じ、入力装置からの入力データが取得できなかった場合であっても、第2通信手段を介して他の演算装置によって取得された入力データを得ることができ、確実に入力データを取得することが可能となる。
上記の冗長化システムは、少なくとも3台の前記演算装置を備え、各前記演算装置は、前記第1通信手段及び前記第2通信手段を介して取得した前記入力データのうち、少なくとも1つが一致していない場合、少なくも3つの前記入力データのうち、最も出現頻度の高い値を変更後の前記入力データとして選定するデータ選定手段を具備することとしてもよい。
例えば、演算装置を3台備える場合に、一の演算装置において、第1通信手段から入力された入力データに誤りが含まれ、第2通信手段から入力された2つの入力データが正しい(誤りがない)場合に、3つの入力データのうち、出現頻度の高い値である正しい(誤りがない)入力データが変更後の入力データとして選定される。このように、入力データの一致数に応じて入力データを変更するので、従来のように平均値や低値選択等によって入力データを得る場合と比較して、入力データの信頼性を保つことができる。
上記の冗長化システムの各前記演算装置は、前記入力データに基づいて所定の演算を行うことにより出力データを算出する制御演算手段と、前記出力データを算出する過程で得られる複数のデータである中間値データ群を格納する記憶手段と、を備え、前記第2通信手段は、前記記憶手段に格納される前記中間値データ群を他の前記演算装置に送信するとともに、他の前記演算装置から送信された前記中間値データ群を受信し、前記記憶手段には、他の前記演算装置から受信された前記中間値データが前記入力データと対応付けられて格納されることとしてもよい。
このような構成によれば、中間値データ群が演算装置間で送受信され、各演算装置において発生した中間値データ群がそれぞれの演算装置の記憶手段に格納される。これにより、自身の中間値データ群と他の演算装置の中間値データ群とを比較することが可能となり、例えば、中間値データに異なるものがある場合には、中間値データ群の相違に基づいて出力データの相違を把握することが可能となる。
上記の冗長化システムの前記データ選定手段は、前記記憶手段に格納される複数の前記中間値データ群のうち、少なくとも1つが一致していない場合に、前記中間値データ群の最も出現頻度の高い値を変更後の前記中間値データ群として選定し、該選定された前記中間値データ群が、前記第1通信手段を介して取得された前記入力データに基づく前記中間値データ群と異なる場合には、前記第1通信手段を介して取得した前記入力データから算出される前記出力データは正しくないと判定し、最も出現頻度の高い前記中間値データ群を変更後の前記中間値データ群とすることとしてもよい。
このように、記憶手段に格納される中間値データ群の出現頻度に基づいて出力データが正しいか否かを判定し、最も出現頻度の高い値を変更後の中間値データ群として選定するので、中間値データ群の信頼性を保つことができる。更に、自身において算出された中間値データ群が、更新後の中間値データ群として選定された中間値データ群と異なっていた場合には、自身の中間値データ群を書き換えるので、次回の処理において中間値データ群が再度必要とされるような場合に、正しい中間値データを用いて処理を実行することが可能となる。
上記の冗長化システムの各前記演算装置は、前記入力データに基づいて所定の演算を行うことにより出力データを算出する制御演算手段と、前記出力データを算出する過程で得られる複数のデータである中間値データ群を記憶する記憶手段と、前記記憶手段に格納されている中間値データ群から1つのコードを生成するコード生成手段と、を備え、前記コード生成手段は、同一の前記中間値データ群である場合に同一の前記コードを生成し、前記記憶手段は、該コードと前記入力データとを対応付けて格納し、前記第2通信手段は、前記記憶手段に格納される前記コードを他の前記演算装置に送信し、他の前記演算装置から前記コードを取得して、他の前記演算装置から取得した前記入力データと対応付けて前記記憶手段に格納させることとしてもよい。
このように、複数のデータを含む中間値データ群から算出される1つのコードが演算装置間で送受信されるので、演算装置の各中間値データ群に対応したコードが取得され、記憶手段に格納される。
これにより、演算装置間において中間値データ群を送受信する場合と比較して、送受信するデータ量を低減することができ、通信路にかかるデータ量の負担を低減することができる。また、演算装置間の中間値データ群の相違を比較する場合に、単一のコードを比較するだけで中間値データ群が相違するか否かを判定することができるので、複数のデータを含む中間値データ群を比較する場合に比べて処理の負担を低減することができる。
上記の冗長化システムの前記データ選定手段は、前記記憶手段に格納される前記コードのうち、少なくとも1つが一致していなければ、前記コードの最も出現頻度の高い値を正しい前記コードと判定し、正しいと判定した前記コードが自身のコードと異なっていた場合に、自身が算出した前記出力データは正しくないと判定し、この場合に、前記第2通信手段が、正しいと判定された該コードの送信元である他の前記演算装置から前記中間値データ群を受信し、記憶手段に格納されている自身の中間値データ群が前記第2通信手段によって受信された前記中間値データ群に更新されることとしてもよい。
このように、記憶手段に格納される中間値データ群に基づいて算出されるコードを比較することにより、自身の中間値データ群が誤りであるか否かを容易に判断することができる。また、中間値データ群が誤りであると判定された場合には、他の演算装置から正しい中間値データ群を取得し、記憶手段に格納されている誤りの中間値データ群を正しい中間値データ群に更新するので、次回の処理において中間値データ群が再度必要とされるような場合に、正しい中間値データを用いて処理を実行することが可能となる。
上記の冗長化システムの各前記演算装置は、前記入力データに基づいて所定の演算を行うことにより出力データを算出する制御演算手段と、前記出力データを算出する過程で得られる複数のデータである中間値データ群を記憶する記憶手段と、前記記憶手段に格納されている中間値データ群から1つのコードを生成するコード生成手段と、を備え、前記コード生成手段は、同一の前記中間値データ群である場合に同一の前記コードを生成し、前記記憶手段は、該コードと前記入力データとを対応付けて格納し、前記第2通信手段は、前記記憶手段に格納される前記コード及び前記中間値データ群を他の前記演算装置に送信し、他の前記演算装置から前記コード及び前記中間値データ群を取得して、他の前記演算装置から取得した前記入力データと対応付けて前記記憶手段に格納させることとしてもよい。
このように、複数のデータを含む中間値データ群から算出される1つのコード及び中間値データ群が演算装置間で送受信されるので、演算装置の各中間値データ群及びコードが取得され、記憶手段に格納される。
例えば、コードのみを送受信する場合、自身のコードと正しいと判定されたコードとが不一致であると判定されたときには、正しいと判定されたコードの送信元である他の演算装置から中間値データ群を取得する処理が行われる。したがって、中間値データ群を取得するまでに時間を要し、コードが一致する場合と不一致である場合とで処理時間に変動が生じることとなる。これに対し、中間値データ群とコードとが共に送受信される場合には、自身のコードが正しいと判定されたコードと不一致であるときであっても、コードと共に受信した中間値データ群をそのまま使用できる。したがって、演算装置の処理時間の変動を抑制することができる。
また、例えば、中間値データ群のみを送受信する場合、自身の中間値データ群と正しいと判定された中間値データ群とが一致するか否かを判定するときには、複数のデータを比較するために時間がかかる。これに対し、中間値データ群とコードとが共に送受信される場合には、中間値データ群に対応して生成される1つのコードによって、中間値データ群が一致するか否か判定される。これにより、判定にかかる時間を低減することができる。
これらのことから、中間値データ群とコードとが送受信されることは、リアルタイム性が要求される演算装置に好適である。
上記の冗長化システムの前記データ選定手段は、前記記憶手段に格納される前記コードのうち、少なくとも1つが一致していなければ、前記コードの最も出現頻度の高い値を正しい前記コードと判定し、正しいと判定した前記コードが自身のコードと異なっていた場合に、自身が算出した前記出力データは正しくないと判定し、この場合に、正しいと判定された該コードの送信元と同一の送信元の前記中間値データ群が前記記憶手段から読み出され、記憶手段に格納されている自身の中間値データ群が前記記憶手段から読み出された前記中間値データ群に更新されることとしてもよい。
このように、記憶手段に格納される中間値データ群に基づいて算出されるコードを比較することにより、自身の中間値データ群が誤りであるか否かを容易に判断することができる。また、中間値データ群が誤りであると判定された場合には、他の演算装置から取得し、記憶手段に格納されている正しい中間値データ群を読み出し、誤りの中間値データ群を正しい中間値データ群に更新するので、次回の処理において中間値データ群が再度必要とされるような場合に、正しい中間値データを用いて処理を実行することが可能となる。
本発明によれば、出力データの信頼性を向上させ、演算装置の停止回数を低減することができるという効果を奏する。
本発明の第1の実施形態に係る冗長化システムの概略構成を示す図である。 第1の実施形態の演算装置の機能ブロック図である。 第1の実施形態に係る冗長化システムの動作フローである。 第1の実施形態に係る冗長化システムの動作フローの図3の続きである。 第2の実施形態の演算装置の機能ブロック図である。 第2の実施形態に係る冗長化システムの動作フローである。
以下に、本発明に係る冗長化システムの実施形態について、図面を参照して説明する。
〔第1の実施形態〕
図1は、本実施形態に係る冗長化システム100の概略構成を示したブロック図である。
図1に示されるように、冗長化システム100は、入力装置3、出力装置4、及び4台の演算装置5a,5b,5c,及び5dを備えている。各演算装置5a,5b,5c,及び5dは、第1通信部(第1通信手段)6を介して、それぞれ入力装置3と出力装置4と通信可能に接続されている。また、各演算装置5a,5b,5c,及び5dは、第2通信部(第2通信手段)7を介して互いに通信可能に接続されている。ここで、演算装置は4つ備えることとしているが、特に台数は限定されず、複数あればよいこととする。また、台数の上限は特に設けられない。
また、本実施形態においては、入力装置3と出力装置4とは1つずつ別の装置を設けているが、この構成に限られない。例えば、入力装置3と出力装置4とはそれぞれの機能を有していれば、1つの装置によって入出力装置とされていてもよい。或いは、入力装置3、または出力装置4を複数備え、制御対象に応じて使用する入力装置、または出力装置を使い分けることとしてもよい。また、本実施形態においては、制御対象は、プラント制御を行うために操作される対象となる操作端2であることとして説明するが、制御対象はこれに限定されない。
入力装置3は、データ取得部31と第3通信部32とを備えている。
データ取得部31は、制御対象に設けられたセンサ1から取得された入力データを取得する。データ取得部31で取得された入力データは、第3通信部32に出力される。第3通信部32は、入力データを各演算装置5a,5b,5c,及び5dに送信する。
出力装置4は、第4通信部41、出力データ記憶部42、出力データ選択部43、及びデータ出力部44を備えている。
第4通信部41は、各演算装置5a,5b,5c,及び5dからそれぞれ出力データYa,Yb,Yc,及びYdを取得するとともに、これら出力データYa,Yb,Yc,及びYdを出力データ記憶部42に格納する。これにより、出力データ記憶部42には、第4通信部41から出力された出力データYa,Yb,Yc,及びYdが格納される。
出力データ選択部43は、出力データ記憶部42に格納されている出力データYa,Yb,Yc,及びYdを読み出し、これら出力データYa,Yb,Yc,及びYdに基づいて規定の方法により正しい出力データを決定し、データ出力部44に出力する。データ出力部44は、取得した正しい出力データを制御対象である操作端2に出力する。
図2は、演算装置5aが備える機能を展開して示した機能ブロック図である。また、本実施形態においては、他の演算装置5b,5c,及び5dにおいても同様の機能を備えているため、ここでは一例として、演算装置5aの動作に着目して説明する。
図2に示されるように、演算装置5aは、第1通信部6、第2通信部7、記憶部8、データ選定部(データ選定手段)9、及び制御演算部(制御演算手段)10を備えている。
第1通信部6は、入力装置3から入力データを受信し、記憶部8に格納する。また、第1通信部6は、記憶部8から取り出した出力データを出力装置4に送信する。このように、第1通信部6は、入力装置4と演算装置5aとの間、及び演算装置5aと出力装置4との間における通信処理を行う。また、例えば、第1通信部6を介して入力された入力データをDaとし、同様に演算装置5bに入力された入力データをDb、演算装置5cに入力された入力データをDc、及び演算装置5dに入力された入力データをDdとする。
また、後述する処理によって、演算装置5aの記憶部8(詳細は後述する。)に格納されている出力データYa(ここでは、演算装置5x(x=a,b,c,d)の出力データをYxとする。)が正しいと判定された場合には、第1通信部6は、出力データYaを出力装置4に出力する。また、記憶部8に格納されている出力データYaが正しくないと判定された場合には、第1通信部6は、出力装置4に対して異常を通知する異常情報を送信する。
第2通信部7は、記憶部8に格納されている入力データ及び中間値データ群(詳細は後述する。)を他の演算装置5b,5c,及び5dに送信する。また、他の演算装置5b,5c,及び5dの第2通信部7から送信されてきた他の演算装置の入力データ及び中間値データ群を受信して、記憶部8に格納する。このように、第2通信部7は、演算装置5aと他の演算装置5b,5c,及び5dとの間における通信処理を行う。
具体的には、第2通信部7は、入力データDaを他の演算装置5b,5c,及び5dのそれぞれに送信し、他の演算装置5b,5c,及び5dからそれぞれ送出される入力データDb,Dc,及びDdを受信する。また、第2通信部7は、受信した入力データDb,Dc,及びDdを記憶部8に格納する。
記憶部8は、第1通信部6及び第2通信部7を介して演算装置5aが取得した入力データDa,Db,Dc,及びDdを格納する。また、記憶部8は、後述する第1通信部6及び第2通信部7を介して演算装置5aが取得した中間値データ群Ca,Cb,Cc,及びCdを格納する。
制御演算部10は、記憶部8から入力データDaと前回の演算時に格納された中間値データ群Caとを読み出し、読み出した入力データDaと中間値データ群Caとに基づいて所定の演算を行い、演算結果から得られる出力データYaと今回の演算によって更新された中間値データ群Caを記憶部8に格納する。
本実施形態では、所定の演算により出力データYaを得る過程の途中段階で得られる結果のデータを中間値データとし、入力データDaに基づいて出力データYaを得るまでの一連の複数の中間値データを中間値データ群Caとする。中間値データ群Caには、例えば、過去のデータを累積して使用する積分値、または移動平均値等が含まれる。
データ選定部9は、第1通信部6を介して受信した自身宛の入力データ及び第2通信部7を介して受信した他の演算装置から送信されてきた入力データのうち、少なくとも1つが一致していない場合、最も出現頻度の高い値を変更後の入力データとして選定する。具体的には、データ選定部9は、記憶部8に格納されている入力データDa,Db,Dc,及びDdを読み出して比較し、これら値の出現頻度によって正しい入力データを選定する。
例えば、入力データDa,Db,Dcが等しい値であり、入力データDdが異なる値である場合には、出現頻度の高い入力データDa,Db,及びDcが正しい入力データであると選定される。また、例えば、演算装置5aにおいて、第2通信部7から入力された入力データDb,Dc,及びDdが等しい値であり、入力データDaが他の入力データと異なる値である場合には、入力データDb,Dc,及びDdが正しい入力データであると選定し、誤りである入力データDaの値を、入力データDb(等しい値であることから、Dc又はDdであってもよい。)と置き換える。
このように、演算装置5aの第1通信部6及び第2通信部7によって取得される入力データのうち、出現頻度の高いものが正しい値として選定される。また、第1通信部6を介して入力された入力データDaが、正しい値として選定されなかった場合には、入力データDaは正しい入力データに置き換えられる。これにより、例えば、入力装置3と第1通信部6との通信路において不具合等が生じ、第1通信部6から取得される入力データDaが正しくなかった場合であっても、入力データDaは、他の演算装置5b,5c,及び5dから取得した入力データDb,Dc,及びDdに基づいて、正しい入力データに置き換えられる。なお、第1通信部6を介して入力された入力データDaが、正しい値として選定されていた場合には、そのままの値を入力データDaとして記憶部8に格納させる。
また、データ選定部9は、記憶部8に格納される中間値データ群Ca,Cb,Cc,及びCdのうち、少なくとも1つが一致していない場合に、最も出現頻度の高い値を選定し、選定した値を正しい中間値データ群とする。さらに、データ選定部9は、正しいとされた中間値データ群と入力データDaに基づく中間値データ群Caとを比較し、比較の結果、一致しない場合には、入力データDaに基づいて算出された出力データYaが正しくないと判定する。これは、中間値データCaが誤っていれば、その中間値データを用いて求められる出力データは誤りであるといえるからである。また、この場合、データ選定部9は、中間値データ群Caを正しい中間値データ群に変更し、変更後の中間値データ群を記憶部8に記憶させる。このように、中間値データ群Caが他の演算装置から受信した正しい中間値データ群に書き換えられることで、以降の処理によりこの中間値データが使用されるような場合に、正しい中間値データを使用して処理を実行することが可能となる。
なお、本実施形態においては、中間値データ群の各中間値データのそれぞれを比較し、対応するそれぞれの中間値データが全て一致する場合を、「中間値データ群が一致した」と判定することとしている。
次に、本実施形態に係る冗長化システム100の作用について図3及び図4を用いて説明する。なお、上述のように、各演算装置5a,5b,5c,及び5dの機能は同様であるため、以下の説明では、演算装置5aの動作に着目して説明する。
各制御対象に取り付けられたセンサ1によって計測された計測値が入力データとして入力装置2に入力される(図3のステップSA1)。入力データは、入力装置2のデータ取得部31に取得されると第3通信部32に出力され、第3通信部32から各演算装置5a,5b,5c,及び5dのそれぞれの第1通信部6に送信される(図3のステップSA2)。
入力装置3から送信された入力データは、演算装置5aの第1通信部6に受信され、記憶部8に格納される(図3のステップSA3)。このとき、演算装置5aの第1通信部6が受信した入力データをDaとし、同様に、各演算装置5b,5c,及び5dの第1通信部6が受信した入力データを、それぞれDb,Dc,及びDdとする。記憶部8に格納された入力データDaは、第2通信部7によって通信媒体を介して他の演算装置5b,5c,及び5dに送信される(図3のステップSA4)。
また、他の演算装置5b,5c,及び5dの記憶部8に格納されている入力データDb,Dc,及びDdは、それぞれの第2通信部7から通信媒体を介して演算装置5aへ送信され、演算装置5aの第2通信部7によって受信される。第2通信部7によって受信された各演算装置の入力データDb,Dc,及びDdは、演算装置5aの記憶部8に格納される(図3のステップSA5)。これにより、演算装置5aの記憶部8には、各演算装置5a,5b,5c,及び5dによってそれぞれ受信された入力データDa,Db,Dc,及びDdが格納される。
記憶部8に格納された入力データDa,Db,Dc,及びDdは、データ選定部9により読み出され、入力データDa,Db,Dc,及びDdの値がそれぞれ比較される。この結果、入力データDa,Db,Dc,及びDdのうち、一つでも異なる値があった場合には、データ選定部9において、出現頻度の高い値が正しい入力データとして選定される(図3のステップSA6)。例えば、入力データDa,Db,及びDcが等しい値であり、入力データDdが他の3つの入力データDa,Db,Dcと異なる場合には、入力データDa,Db,Dcが正しい値として選定される。
続いて、データ選定部9において、正しい値として選定された入力データが、第1通信部6を介して取得した入力データDaと一致するか否かが判定される(図3のステップSA7)。判定の結果、一致していない場合には、記憶部8に格納されている入力データDaが正しい入力データに書き換えられる(図3のステップSA8)。なお、全ての入力データDa,Db,Dc,Ddが一致していた場合には、上記書き換え操作は行われない。
このようにして、入力データDaが正しい値であることが確認されると、或いは、正しい値に書き換えられると、続いて、この入力データDaを使用して制御演算部10による所定の演算が行われ、出力データYaが求められる。また、この出力データYaを算出する過程において算出された演算途中の段階での一連の値及び出力データYaは、中間値データ群Caとして、記憶部8に格納される(図3のステップSA9)。
上記出力データYaが算出されると、記憶部8に格納された中間値データ群Caが第2通信部7を介して他の演算装置5b,5c,及び5dに送信される(図4のステップSA10)。また、他の演算装置5b,5c,及び5dの第2通信部7から送信された中間値データ群Cb,Cc,及びCdが、演算装置5aの第2通信部7により受信され、記憶部8に格納される(図4のステップSA11)。
続いて、記憶部8に格納された中間値データ群Ca,Cb,Cc,及びCdがデータ選定部9によって読み出され、それぞれ比較され、出現頻度の高い中間値データ群が正しい中間値データ群であると選定される(図4のステップSA12)。続いて、データ選定部9において選定された正しい中間値データ群と、出力データYaを得る過程で算出されて格納されていた中間値データ群Caとが比較され、一致しているか否かが判定される(図4のステップSA13)。
上記判定の結果、一致している場合には、先に制御演算部10によって算出されて記憶部8に格納されている出力データYaが、正しい出力データであると判定され、第1通信部6を介して出力装置4に出力される(図4のステップSA14)。
一方、一致していない場合には、記憶部8に格納されている中間値データ群Caが正しい中間値データ群に書き換えられる(図4のステップSA16)とともに、正しい出力データYaが得られなかった旨を示す情報が第1通信部6を介して出力装置4に送信される(図4のステップSA15)。
このようにして、出力データYa,Yb,Yc,及びYd又は正しい出力データが得られなかった旨を示す情報が各演算装置5a,5b,5c,及び5dの第1通信部6から出力装置4へ送信されると、出力装置4において、操作端2に出力させる出力データが選択され、操作端2に出力される。
以上説明してきたように、本発明に係る冗長化システム100によれば、各演算装置5a,5b,5c,及び5dにおいて、第1通信部6を介して取得された入力データは、第2通信7を介して相互に送受信される。これにより、各演算装置5a,5b,5c,及び5dは、他の演算装置に送信された入力データを取得することができる。これにより、例えば、入力装置3と第1通信部6との間で通信障害が生じ、入力装置からの入力データが取得できなかった場合であっても、第2通信部7を介して他の演算装置によって取得された入力データを得ることができ、確実に入力データを取得することが可能となる。
また、送受信された入力データのうち、出現頻度の高い入力データを正しい(誤りがない)入力データとして選定し、更に、第1通信部6から入力された入力データ(つまり、自身の入力データ)が正しい入力データと異なっていた場合には、その入力データが正しいデータに書き換えられる。このように、入力データの出現頻度に基づいて正しい入力データを決定するので、従来のように平均値や低値選択等によって入力データを得る場合と比較して、入力データの信頼性を保つことができる。
さらに、制御演算部10において、入力データに基づいて出力データを算出する過程で得られる中間値データ群が演算装置間で送受信され、各演算装置で得られた中間値データ群をそれぞれ比較し、一つでも異なる中間値データ群が存在した場合には、最も出現頻度の高い中間値データ群を正しい中間値データ群として定める。そして、自身の中間値データ群が正しい中間値データ群と一致していなかった場合には、記憶部8に格納されている中間値データ群を正しい中間値データ群に書き換えるので、次回の処理において中間値データ群が再度使用されるような場合に、正しい中間値データ群を用いて演算処理を実行することが可能となる。
なお、本実施形態においては、演算装置間での入力データ及び中間値データ群の送受信を行う場合に、第2通信部7を介して行うこととしていたが、これに限定されない。例えば、共有メモリ等の他の手段によって、演算装置間で送受信することとしてもよい。
〔第2の実施形態〕
次に、本発明の第2の実施形態に係る冗長化システムについて、図5を用いて説明する。
本実施形態の冗長化システム100´が第1の実施形態と異なる点は、コード生成部(コード生成手段)11とコード比較部(コード比較手段)12とを設けた点である。以下、本実施形態の冗長化システム100´について、第1の実施形態と共通する点については説明を省略し、異なる点について主に説明する。また、本実施形態においても、各演算装置5a,5b,5c,及び5dの機能は同様であるため、演算装置5aの動作に着目して説明する。
コード生成部11は、記憶部8´に格納されている中間値データ群Caから1つのコードRaを生成する。また、コード生成部11は、中間値データ群を構成する全ての中間値データが同一である場合に、同一のコードを生成するような仕組みを有している。これにより、コードを比較した場合に、コードが一致していれば中間値データ群を構成する全ての中間値データが一致していると判定でき、コードが一致しなければ中間値データ群を構成する少なくとも一つの中間値データが一致していないことと判定できる。コード生成部11によって生成されたコードRaは、対応する中間値データ群Caと対応付けられて記憶部8´に格納される。
上記コードは、例えば、CRC(Cyclic Redundancy Check:巡回冗長検査)等が用いられる。なお、CRCは公知の技術であるため、CRC算出方法等の詳細な説明は省略する。
第2通信部7は、通信媒体を通じてコードRaを他の演算装置5b,5c,及び5dの第2通信部7に送信する。また、他の演算装置5b,5c,及び5dから送信されたコードは通信媒体を通じて演算装置5aの第2通信部7で受信され、記憶部8´に格納される。
コード比較部12は、データ選定部9´に設けられており、記憶部8´に格納されている各演算装置5a,5b,5c,及び5dから取得したそれぞれのコードRa,Rb,Rc,及びRdを比較し、少なくとも1つが一致していなければ、コードの最も出現頻度の高い値を正しいコードと判定する。
また、コード比較部12は、正しいと判定したコードが自身のコード(演算装置5aのコードRa)と異なっていた場合に、自身が算出した出力データYaは正しくないと判定する。なお、この場合には、第2通信部7が、正しいと判定されたコードの送信元である他の演算装置から中間値データ群を受信し、記憶部8´に格納されている自身の中間値データ群が第2通信部7によって受信された中間値データ群に更新される。
次に、本実施形態に係る冗長化システム100´の作用について図6を用いて説明する。
ここで、演算装置が4つ備えられている場合を例に挙げて説明する。また、第1の実施形態において、制御演算部10によって中間値データ群を得て、記憶部8´に格納するステップSA9までの動作については共通であるため、説明を省略し、第1の実施形態と異なる部分に着目して説明する。
制御演算部10による演算が終了することにより、記憶部8´に中間値データ群と出力データとが書き込まれると(図3のステップSA9)、続いて、コード生成部11によって、中間値データ群Caが読み出され、コードRaが生成される。コード生成部11は、生成したコードRaと中間値データ群Caとを対応付けて記憶部8´に格納させるとともに(ステップSB1)、第2通信部7によって、コードRaが他の演算装置5b,5c,及び5dに送信される(ステップSB2)。また、他の演算装置5b,5c,及び5dの第2通信部7によって送信されたコードRb,Rc,及びRdが、演算装置5aの第2通信部7に受信され、各コードRb,Rc,及びRdを送信した送信元の情報とともに記憶部8´に格納される(ステップSB3)。
記憶部8´に格納されたコードRa,Rb,Rc,及びRdがデータ選定部9´のコード比較部12によって読み出され、それぞれ比較され、全てのコードRa,Rb,Rc,及びRdが一致しているか否かが判定され、一致していない場合には、出現頻度の高いコードが正しいコードであると選定される(ステップSB4)。続いて、選定された正しいコードと、自身のコードRaとが一致しているか否かが判定される(ステップSB5)。
上記判定の結果、一致している場合には、先に制御演算部10によって算出されて記憶部8´に格納されていた出力データYaが、正しい出力データであると判定され、第1通信部6を介して出力装置4に出力され(ステップSB6)、本処理を終了する。
一方、一致していない場合には、記憶部8´に格納されていた出力データYaが、データ選定部9によって正しい出力データでないと判定されるとともに、正しい出力データが得られなかった旨を示す情報が、第1通信部6を介して出力装置4に出力される(ステップSB7)。また、出力データYaが正しくないと判定された場合には、第2通信部7を介して、上記出現頻度の高いコードの送信元の演算装置から中間値データ群が受信され、記憶部8´内の中間値データ群Caが受信された中間値データ群に書き換えられる(ステップSB8)。
以上説明してきたように、本実施形態に係る冗長化システム100´によれば、上述した第1の実施形態のように、中間値データ群自体を演算装置間で送受信することにより、出力データの信頼性を評価するのではなく、中間値データ群から生成されるコードRa,Rb,Rc,及びRdを用いて出力データの信頼性を評価するので、送受信データ量を低減することができ、通信媒体にかかるデータ量の負担を低減することができる。
また、演算装置間の中間値データ群の相違を比較する場合に、単一のコードを比較するだけで中間値データ群が相違するか否かを判定することができるので、複数の中間値データを含む中間値データ群を比較する場合に比べて処理の負担を低減することができる。
更に、自身のコードが正しいと判断したコードと違っていた場合には、正しいコードの送信元である演算装置から中間値データ群自体を受信し、記憶部8´に格納されている誤りの中間値データ群を正しい中間値データ群に更新するので、次回の処理において中間値データ群が再度必要とされるような場合に、正しい中間値データを用いて処理を実行することが可能となる。
〔変形例〕
なお、本実施形態において、演算装置間の中間値データ群を比較する場合に、第2通信部7によって送受信した情報は、コードのみとしていたが、これに限定されない。例えば、演算装置間において第2通信部7を介して中間値データ群とコードとを組み合わせて送受信することとしてもよい。中間値データ群のみ、またはコードのみを送受信する場合は、不一致の発生有無により演算装置の処理時間に変動が生じるが、中間値データ群とコードとを送受信することにより処理時間の変動を抑制することができ、リアルタイム性を要求される演算装置に好適である。
また、演算装置間において、コードを送受信するタイミングとほぼ同時に予め中間値データ群を送受信する。これにより、自身のコードが正しいコードと一致しなかったときにその都度正しいコードの送信元の演算装置から中間値データ群を受信する場合と比較して、中間値データ群を出力装置4に出力するまでにかかる時間を低減することができる。
3 入力装置
4 出力装置
5a,5b,5c,5d 演算装置
6 第1通信部
7 第2通信部
8,8´ 記憶部
9,9´ データ選定部
10 制御演算部
11 コード生成部
12 コード比較部
100 冗長化システム

Claims (8)

  1. 入力装置と、前記入力装置から入力データを受信する複数の演算装置と、前記演算装置から出力された出力データを受信する出力装置とを具備し、前記演算装置の各々に同じ処理を実行させる冗長化システムであって、
    各前記演算装置は、
    前記入力装置から入力データを取得する第1通信手段と、
    該第1通信手段により取得された前記入力データを他の前記演算装置に送信し、かつ、他の前記演算装置から、他の前記演算装置が取得した前記入力データを受信する第2通信手段と、
    を具備する冗長化システム。
  2. 少なくとも3台の前記演算装置を備え、
    各前記演算装置は、前記第1通信手段及び前記第2通信手段を介して取得した前記入力データのうち、少なくとも1つが一致していない場合、少なくも3つの前記入力データのうち、最も出現頻度の高い値を変更後の前記入力データとして選定するデータ選定手段を具備する請求項1に記載の冗長化システム。
  3. 各前記演算装置は、
    前記入力データに基づいて所定の演算を行うことにより出力データを算出する制御演算手段と、
    前記出力データを算出する過程で得られる複数のデータである中間値データ群を格納する記憶手段と、を備え、
    前記第2通信手段は、前記記憶手段に格納される前記中間値データ群を他の前記演算装置に送信するとともに、他の前記演算装置から送信された前記中間値データ群を受信し、
    前記記憶手段には、他の前記演算装置から受信された前記中間値データが前記入力データと対応付けられて格納される請求項1または請求項2に記載の冗長化システム。
  4. 前記データ選定手段は、
    前記記憶手段に格納される複数の前記中間値データ群のうち、少なくとも1つが一致していない場合に、前記中間値データ群の最も出現頻度の高い値を変更後の前記中間値データ群として選定し、該選定された前記中間値データ群が、前記第1通信手段を介して取得された前記入力データに基づく前記中間値データ群と異なる場合には、前記第1通信手段を介して取得した前記入力データから算出される前記出力データは正しくないと判定し、最も出現頻度の高い前記中間値データ群を変更後の前記中間値データ群とする請求項3に記載の冗長化システム。
  5. 各前記演算装置は、
    前記入力データに基づいて所定の演算を行うことにより出力データを算出する制御演算手段と、
    前記出力データを算出する過程で得られる複数のデータである中間値データ群を記憶する記憶手段と、
    前記記憶手段に格納されている中間値データ群から1つのコードを生成するコード生成手段と、を備え、
    前記コード生成手段は、同一の前記中間値データ群である場合に同一の前記コードを生成し、
    前記記憶手段は、該コードと前記入力データとを対応付けて格納し、
    前記第2通信手段は、前記記憶手段に格納される前記コードを他の前記演算装置に送信し、他の前記演算装置から前記コードを取得して、他の前記演算装置から取得した前記入力データと対応付けて前記記憶手段に格納させる請求項1または請求項2に記載の冗長化システム。
  6. 前記データ選定手段は、
    前記記憶手段に格納される前記コードのうち、少なくとも1つが一致していなければ、前記コードの最も出現頻度の高い値を正しい前記コードと判定し、
    正しいと判定した前記コードが自身のコードと異なっていた場合に、自身が算出した前記出力データは正しくないと判定し、この場合に、前記第2通信手段が、正しいと判定された該コードの送信元である他の前記演算装置から前記中間値データ群を受信し、記憶手段に格納されている自身の中間値データ群が前記第2通信手段によって受信された前記中間値データ群に更新される請求項5に記載の冗長化システム。
  7. 各前記演算装置は、
    前記入力データに基づいて所定の演算を行うことにより出力データを算出する制御演算手段と、
    前記出力データを算出する過程で得られる複数のデータである中間値データ群を記憶する記憶手段と、
    前記記憶手段に格納されている中間値データ群から1つのコードを生成するコード生成手段と、を備え、
    前記コード生成手段は、同一の前記中間値データ群である場合に同一の前記コードを生成し、
    前記記憶手段は、該コードと前記入力データとを対応付けて格納し、
    前記第2通信手段は、前記記憶手段に格納される前記コード及び前記中間値データ群を他の前記演算装置に送信し、他の前記演算装置から前記コード及び前記中間値データ群を取得して、他の前記演算装置から取得した前記入力データと対応付けて前記記憶手段に格納させる請求項1または請求項2に記載の冗長化システム。
  8. 前記データ選定手段は、
    前記記憶手段に格納される前記コードのうち、少なくとも1つが一致していなければ、前記コードの最も出現頻度の高い値を正しい前記コードと判定し、
    正しいと判定した前記コードが自身のコードと異なっていた場合に、自身が算出した前記出力データは正しくないと判定し、この場合に、正しいと判定された該コードの送信元と同一の送信元の前記中間値データ群が前記記憶手段から読み出され、記憶手段に格納されている自身の中間値データ群が前記記憶手段から読み出された前記中間値データ群に更新される請求項7に記載の冗長化システム。
JP2009141567A 2009-06-12 2009-06-12 冗長化システム Active JP5574627B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009141567A JP5574627B2 (ja) 2009-06-12 2009-06-12 冗長化システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009141567A JP5574627B2 (ja) 2009-06-12 2009-06-12 冗長化システム

Publications (2)

Publication Number Publication Date
JP2010287127A true JP2010287127A (ja) 2010-12-24
JP5574627B2 JP5574627B2 (ja) 2014-08-20

Family

ID=43542764

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009141567A Active JP5574627B2 (ja) 2009-06-12 2009-06-12 冗長化システム

Country Status (1)

Country Link
JP (1) JP5574627B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015118495A (ja) * 2013-12-18 2015-06-25 株式会社日立製作所 信号保安用制御装置
US9491228B2 (en) 2011-03-10 2016-11-08 Mitsubishi Electric Corporation Redundancy device
US9823639B2 (en) 2012-02-27 2017-11-21 Mitsubishi Heavy Industries, Ltd. Control program management system and method for changing control program
JP2018142077A (ja) * 2017-02-27 2018-09-13 三菱重工業株式会社 冗長化システム及び冗長化方法
WO2018194029A1 (ja) * 2017-04-18 2018-10-25 株式会社デンソー 舵角検出装置
JP2021057982A (ja) * 2019-09-30 2021-04-08 株式会社デンソーテン 電源制御装置および電源制御方法
JP2021064409A (ja) * 2017-10-06 2021-04-22 横河電機株式会社 制御システム、制御方法及び等値化装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6692792B2 (ja) 2017-12-28 2020-05-13 三菱重工業株式会社 監視装置、監視システム、監視方法及びプログラム

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6031669A (ja) * 1983-08-01 1985-02-18 Hitachi Ltd 計算機制御装置の多重系制御方法
JPS63271540A (ja) * 1987-04-28 1988-11-09 Railway Technical Res Inst フエイルセイフ形コンピユ−タ装置
JPH01288928A (ja) * 1988-05-16 1989-11-21 Hitachi Ltd 耐故障コンピュータ・システムおよびその内部回路並びに誤り検出訂正方式
JPH08185329A (ja) * 1994-12-28 1996-07-16 Mitsubishi Electric Corp データ処理装置
JP3085917B2 (ja) * 1997-04-10 2000-09-11 三菱電機株式会社 耐ソフトウェア障害構成を有したデータ処理装置
JP3229070B2 (ja) * 1993-06-01 2001-11-12 三菱電機株式会社 多数決回路及び制御ユニット及び多数決用半導体集積回路
JP3346283B2 (ja) * 1998-06-19 2002-11-18 株式会社日立製作所 多重系処理装置及び多重系処理装置に接続されたコントローラ及び多重系処理システム
JP2003157102A (ja) * 2001-09-10 2003-05-30 Toshiba Corp 3重化制御装置及び3重化制御方法
JP2006209565A (ja) * 2005-01-31 2006-08-10 Yokogawa Electric Corp 情報処理装置および情報処理方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6031669A (ja) * 1983-08-01 1985-02-18 Hitachi Ltd 計算機制御装置の多重系制御方法
JPS63271540A (ja) * 1987-04-28 1988-11-09 Railway Technical Res Inst フエイルセイフ形コンピユ−タ装置
JPH01288928A (ja) * 1988-05-16 1989-11-21 Hitachi Ltd 耐故障コンピュータ・システムおよびその内部回路並びに誤り検出訂正方式
JP3229070B2 (ja) * 1993-06-01 2001-11-12 三菱電機株式会社 多数決回路及び制御ユニット及び多数決用半導体集積回路
JPH08185329A (ja) * 1994-12-28 1996-07-16 Mitsubishi Electric Corp データ処理装置
JP3085917B2 (ja) * 1997-04-10 2000-09-11 三菱電機株式会社 耐ソフトウェア障害構成を有したデータ処理装置
JP3346283B2 (ja) * 1998-06-19 2002-11-18 株式会社日立製作所 多重系処理装置及び多重系処理装置に接続されたコントローラ及び多重系処理システム
JP2003157102A (ja) * 2001-09-10 2003-05-30 Toshiba Corp 3重化制御装置及び3重化制御方法
JP2006209565A (ja) * 2005-01-31 2006-08-10 Yokogawa Electric Corp 情報処理装置および情報処理方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9491228B2 (en) 2011-03-10 2016-11-08 Mitsubishi Electric Corporation Redundancy device
US9823639B2 (en) 2012-02-27 2017-11-21 Mitsubishi Heavy Industries, Ltd. Control program management system and method for changing control program
JP2015118495A (ja) * 2013-12-18 2015-06-25 株式会社日立製作所 信号保安用制御装置
JP2018142077A (ja) * 2017-02-27 2018-09-13 三菱重工業株式会社 冗長化システム及び冗長化方法
WO2018194029A1 (ja) * 2017-04-18 2018-10-25 株式会社デンソー 舵角検出装置
JP2018177099A (ja) * 2017-04-18 2018-11-15 株式会社デンソー 舵角検出装置
US11465683B2 (en) 2017-04-18 2022-10-11 Denso Corporation Steering angle detection device
JP2021064409A (ja) * 2017-10-06 2021-04-22 横河電機株式会社 制御システム、制御方法及び等値化装置
JP2021057982A (ja) * 2019-09-30 2021-04-08 株式会社デンソーテン 電源制御装置および電源制御方法
JP7186154B2 (ja) 2019-09-30 2022-12-08 株式会社デンソーテン 電源制御装置および電源制御方法

Also Published As

Publication number Publication date
JP5574627B2 (ja) 2014-08-20

Similar Documents

Publication Publication Date Title
JP5574627B2 (ja) 冗長化システム
JP4942756B2 (ja) 故障検出装置、故障検出方法、および故障検出プログラム
JP2001136079A (ja) 多段符号化方法、多段復号方法、多段符号化装置、多段復号装置およびこれらを用いた情報伝送システム
CN102377521A (zh) 用于执行前向纠错的系统和方法
JP5436508B2 (ja) アナログ‐デジタル変換器及びアナログ信号をデジタル信号に変換する方法
KR100689039B1 (ko) 순환형 디코딩부를 병렬 연결하여 사용하는 아날로그비터비 디코더
US20090094507A1 (en) Code error detector and error detecting code generator
TW200915735A (en) Turbo decoder and stop judging circuit and iteration stopping method thereof
JPS5846741A (ja) 復号器
TW201306041A (zh) 記憶體控制器、半導體儲存裝置、及解碼方法
JP5912500B2 (ja) データ伝送システム、およびデータ伝送方法
KR100787214B1 (ko) 아날로그 비터비 디코더
US10379926B2 (en) Method and device for monitoring data error status in a memory
US20130007514A1 (en) Redundant system
US11362679B2 (en) Method and apparatus for generating redundant bits for error detection
JP5248300B2 (ja) 誤り訂正復号装置および誤り訂正復号方法
JP2009053067A (ja) エンコーダの補正値制御方法
JP7234087B2 (ja) アブソリュートリニアエンコーダ
JP4453618B2 (ja) アブソリュートエンコーダ
WO1995001008A1 (fr) Methode de comptage des erreurs sur les bits et compteur
NO784380L (no) Koblingsanordning til koding eller dekoding av binaerinformasjoner
CN102282771B (zh) 解码方法
JP6552776B1 (ja) 誤り訂正復号装置および誤り訂正復号方法
JP2010206533A (ja) シリアル通信方式
KR101788737B1 (ko) 반도체 시스템

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131126

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131127

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140127

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: 20140603

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140701

R151 Written notification of patent or utility model registration

Ref document number: 5574627

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250