JP6350154B2 - 制御システム - Google Patents

制御システム Download PDF

Info

Publication number
JP6350154B2
JP6350154B2 JP2014186004A JP2014186004A JP6350154B2 JP 6350154 B2 JP6350154 B2 JP 6350154B2 JP 2014186004 A JP2014186004 A JP 2014186004A JP 2014186004 A JP2014186004 A JP 2014186004A JP 6350154 B2 JP6350154 B2 JP 6350154B2
Authority
JP
Japan
Prior art keywords
control
standby
control device
communication
active
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.)
Active
Application number
JP2014186004A
Other languages
English (en)
Other versions
JP2016058009A (ja
Inventor
東洋史 門崎
東洋史 門崎
史彦 藤田
史彦 藤田
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.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co 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 Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP2014186004A priority Critical patent/JP6350154B2/ja
Publication of JP2016058009A publication Critical patent/JP2016058009A/ja
Application granted granted Critical
Publication of JP6350154B2 publication Critical patent/JP6350154B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)

Description

本発明は、稼働系と待機系の制御装置を含む制御システム、その制御装置および中継装置に関する。
工場や各種プラント等の産業施設においては、各種操業を制御するために制御システムと呼ばれる通信システムが構築されることが多い。制御システムには、産業施設内に設置されたセンサからの監視データの収集し、その収集結果に応じて電動機等の駆動制御を行う制御装置が含まれている。このような制御装置としては、DCS(Distributed Control System:分散型制御システム或いは分散型制御装置)やプログラマブルロジックコントローラ(以下、PLC)が用いられる。一般的なFA(Factory Automation)システムでは制御装置としてPLCが用いられることが多く、高信頼性を要求されるプラント設備では制御装置としてDCSが用いられることが多い。DCSはPLCに比較して信頼性が高いからである。上記センサのように制御装置による監視データの収集対象となる装置や電動機などの制御対象装置(以下、これらの装置をIOスレーブ装置という)は、IOネットワークと呼ばれるネットワーク(或いはシリアルバス)に接続される。制御装置は、中継装置(例えば、ゲートウェイ装置)等のネットワーク装置を介してIOネットワークに接続される。
この種の制御システムでは、制御装置等の故障に起因する操業停止を回避するために、制御装置の二重化および監視データのデータ伝送経路の二重化が行われることが一般的である。制御装置の二重化とは、2台の制御装置を設け、その一方を稼働系、他方を待機系として動作させることを言う。これら2台の制御装置の各々は、監視データを収集し、収集した監視データ(或いは収集した監視データと過去の演算結果)を用いて機器制御のための制御データを求める演算を実行する。稼働系の制御装置は演算により得られた制御データに基づく制御を行い、待機系の制御装置は、演算により得られた制御データを保持して稼働系の制御装置の停止に備える。そして、待機系の制御装置は、稼働系が停止するとき(或いは停止したとき)には、稼働系として動作し、機器制御を継続する。ここで、稼働系の制御装置の停止の具体例としては、何らかの故障や不具合の発生に起因する予期せぬ停止や、保守メンテナンス等による予め計画された停止などが考えられる。待機系の制御装置はこれら2種類の停止の両方に備える。データ伝送経路の二重化とは、例えばIOスレーブ装置から二重化された制御装置の一方へ至るデータ伝送経路と、他方へ至るデータ伝送経路とを各々別個に設けることを言う。以下では、制御装置とデータ伝送経路の両方が二重化された制御システムのことを「冗長化制御システム」と呼ぶ。
図9は、冗長化制御システムの構成例を示す図である。この制御システムは、制御装置10Aおよび制御装置10Bの2台の制御装置と、ネットワーク装置20Aおよびネットワーク装置20Bの2台のネットワーク装置とを有している。そして、この制御システムでは、制御装置10Aと制御装置10Bのうちの一方が稼働系となり、他方は待機系となって稼働系の停止に備える。制御装置10Aおよび制御装置10Bにはその稼働状態等の監視を行うための監視システム50が接続されている。また、制御装置10Aはネットワーク装置20Aを介してIOネットワーク30Aに接続されており、制御装置10Bはネットワーク装置20Bを介してIOネットワーク30Bに接続されている。IOスレーブ装置S1〜Snの各々は、IOネットワーク30AおよびIOネットワーク30Bの両方に接続されている。
図9に示すシステムでは、制御装置10Aと制御装置10Bの各々は、他方の状態監視を行えるようにするために、等値化ケーブル40により接続されている。前述したように待機系の制御装置は、稼働系の制御装置について故障等に起因する予期せぬ停止や保守メンテナンス等の計画的な停止などに備えるのであるが、以下では故障により停止する場合を例にとって説明する。制御装置10Aと制御装置10Bの各々は、自装置の状態(故障の有無)を示す状態データを等値化ケーブル40を介して他方に送信する。例えば、制御装置10Aが稼働系となっている場合、待機系である制御装置10Bは等値化ケーブル40を介して制御装置10Aから送信されてくる状態データを参照して制御装置10Aにおける故障発生を監視する。そして、制御装置10Bは、等値化ケーブル40を介して受信した状態データから制御装置10Aの故障発生を検出すると、以降、稼働系としての動作を開始する。一方、制御装置10Aは制御装置10Bが稼働系としての動作を開始したことを等値化ケーブル40を介した通信により検出し、以降、待機系として動作する。
冗長化制御システムでは、稼働系の制御装置に故障が発生しても稼働系/待機系の切り替えを行うことで、IOスレーブ装置S1〜Snの各々からのデータ収集、その収集結果に応じた演算、およびその演算結果に応じた機器の制御を継続することができる。しかし、単に稼働系/待機系の切り替えを行うだけでは、その切り替え前後で上記演算結果が突変するなどの不具合が発生する場合がある。これは、IOスレーブ装置S1〜Snの各々から制御装置10Aと制御装置10Bに送られる監視データが完全に同一であるとは限らないことに起因している。
このような不具合の発生を回避するため、冗長化制御システムでは、IOスレーブ装置S1〜Snの各々から各制御装置へ送信されてくる監視データの等値化や、演算結果の等値化といった処理を各制御装置に実行させることが一般的である。監視データの等値化とは、稼働系の制御装置がネットワーク装置経由で受信した監視データを等値化ケーブル40を介して待機系の制御装置へ送信し、当該監視データで待機系の制御装置がネットワーク経由で受信した監視データを上書きすることを言う。また、演算結果の等値化とは、稼働系における演算結果を示すデータを等値化ケーブル40を介して待機系の制御装置に送信し、当該データで待機系における演算結果を上書きすることを言う。稼働系の制御装置は、待機系での演算結果の等値化に用いられた制御データをネットワーク装置、IOネットワークを介してIOスレーブ装置S1〜Snに供給し、制御対象装置の制御を行う。一方、待機系の制御装置は、等値化された制御データを保持し、系の切り替えに備える。このような冗長化制御システムおよび等値化に関する従来技術の一例としては特許文献1に開示の技術が挙げられる。
特開2013−152631号公報
近年では、制御システムに含まれるIOスレーブ装置の多様化や数の増加、IOネットワークにおけるデータ伝送速度の向上に伴い、単位時間当たりにネットワーク装置経由で制御装置に送信されてくる監視データのデータ量が大幅に増加している。ネットワーク装置経由で制御装置が受信する監視データのデータ量が増加すると、それら監視データについての等値化処理の処理負荷が高くなり、制御装置の本来の役割である機器制御のための演算の実行やその演算結果に応じた機器制御に充分なリソースを割り当てることが困難になる場合がある。また、ネットワーク装置経由で制御装置が受信する単位時間当たりの監視データのデータ量が増えると、稼働系の故障発生時に稼働系/待機系の切り替えを迅速に行えなくなるといった問題もある。前述したように、ネットワーク装置経由で制御装置が受信する監視データについての等値化が完了した後でなければ、演算結果の突変の発生を回避しつつ稼働系/待機系の切り替えを行うことはできないからである。
また、上述した従来の冗長化制御システムは、等値化ケーブル40を介した通信が通信不能状態となった場合に、待機系の制御装置が稼働系の制御装置の状態監視を行うことができなくなる問題がある。ここで、通信不能状態とは、等値化ケーブル40を介した制御装置10Aおよび10B間の通信が正常に行われない状態をいう。そのような等値化ケーブル40を介した通信が通信不能状態となる原因として、2つの原因が考えられる。1つは稼働系に故障が発生し、この故障に起因して待機系への状態データの送信が途絶えている場合である。もう1つは、稼働系に故障は発生していないが、等値化ケーブル40の断線、等値化ケーブル40のプラグの制御装置からの脱落、ノイズ等の影響による通信品質の著しい低下等により状態データが待機系の制御装置に届かなくなっている場合である。前者の場合、故障の程度によっては、稼働系の制御装置が当該制御装置および当該制御装置に接続されたネットワーク装置を稼働系から待機系へ切り替える可能性がある。この場合、待機系の制御装置は、当該制御装置および当該制御装置に接続されたネットワーク装置を待機系から稼働系へ切り替える必要がある。しかし、後者の場合に待機系の制御装置がこのような待機系から稼働系への切り替えを行うと、2つの系統の制御装置およびネットワーク装置の両方が稼働系となり、両方の稼働系によってIOスレーブ装置S1〜Snの制御が行われ、IOスレーブ装置S1〜Snの誤動作を招く虞がある。
特許文献1は、この問題に鑑み、次のような冗長化制御システムを開示している。まず、冗長化制御システムを構成する2つの制御装置は、トラッキングバスを介して互いに接続されている。各制御装置は、定期的に自系の状態を判定し、状態判定結果をトラッキング信号としてトラッキングバスを介して他の制御装置に送信する。各制御装置は、トラッキングバスを介してトラッキング信号が受信されない場合、トラッキング信号の伝送路をトラッキングバスから制御用伝送路に切り替える。この制御用伝送路は、エンジニアリング装置が2台の制御装置に指令を送るために使用する伝送路である。待機系の制御装置は、トラッキング信号の伝送路を制御用伝送路に切り替えた後も稼働系からトラッキング信号が受信されない場合に、稼働系に異常が発生したとみなし、自系を稼働系に切り替える。
この特許文献1に開示の技術によれば、トラッキングバスを介した通信が通信不能状態になった場合、待機系の制御装置は、制御用伝送路を介して稼働系の制御装置からトラッキング信号を受け取ることができる。従って、待機系の制御装置は、トラッキングバスを介した通信が通信不能状態になっても、稼働系の状態監視を継続し、稼働系に真に故障が発生した場合に、待機系から稼働系への切り替えを行うことができる。従って、2つの系統の両方が稼働系となるのを回避することができる。
しかし、この特許文献1に開示の技術は、稼働系の制御装置に何等かの故障が発生してトラッキングバスを介した通信が途絶えている場合に、この故障した稼働系の制御装置に制御用伝送路を介したトラッキング信号の送信を強いることになるので、当該稼働系の制御装置に与える負担が大きいという問題がある。
稼働系の制御装置に大きな負担を与えないために、トラッキングバスを介した通信が通信不能状態になったことを検知した待機系の制御装置が待機系から稼働系への切り替えを行うことも考えられる。しかし、トラッキングバスを介した通信が通信不能状態になったことを検知した待機系の制御装置が待機系から稼働系への切り替えを行うとなると、単にトラッキングバスを介した通信が通信不能状態になっているだけであって、稼働系において待機系への切り替えが行われない場合に、稼働系が重複して発生する問題が起こり得る。
この発明は以上に説明した事情に鑑みて為されたものであり、その目的は、冗長化制御システムにおいて、ネットワーク経由で各制御装置に転送されてくる監視データのデータ量が増加しても、制御装置本来の演算の実行に何ら支障を発生させず、かつ、制御装置間の通信が通信不能状態になった場合に不要に待機系が稼働系に切り替えられるのを抑制することにある。
上記課題を解決するために、この発明は、ネットワークを介して1または複数の機器から監視データを収集し、該監視データに基づいて制御を行う制御システムにおいて、第1および第2の制御装置と、前記第1の制御装置に接続された第1の中継装置と、前記第2の制御装置に接続された第2の中継装置と、前記第1の中継装置と前記第2の中継装置の通信を仲介する中継装置間通信手段と、前記第1の制御装置と前記第2の制御装置の通信を仲介する制御装置間通信手段と、を有し、前記第1の制御装置および前記第1の中継装置の組と、前記第2の制御装置および前記第2の中継装置の組は、一方の組が稼働系、他方の組が待機系となり、前記第1および第2の中継装置の各々は、前記1または複数の機器からネットワークを介して監視データを収集し、この監視データを前記中継装置間通信手段を介した通信により等値化し、等値化済の監視データを各々の接続先の制御装置へ転送し、前記第1の制御装置と前記第2の制御装置のうち稼働系となっている方は、接続先の中継装置から受信した等値化済の監視データを用いて前記制御を行い、前記制御装置間通信手段を介した通信が通信不能状態となったことを前記待機系の制御装置が検知した場合に、前記待機系の中継装置は、前記中継装置間通信手段を経由した通信により取得した情報に基づいて、前記待機系の制御装置による待機系から稼働系への切り替えを抑制する制御を行うことを特徴とする制御システムを提供する。
この制御システムにおいては、各機器から第1および第2の制御装置へ送信される監視データの等値化は第1および第2の中継装置によって行われる。したがって、監視データのデータ量が増加しても、監視データの等値化によって第1および第2の制御装置の各々の処理負荷が過剰に高くなることはなく、第1および第2の制御装置の各々における上記演算の実行に何らの支障が生じることはない。また、第1および第2の制御装置の各々には第1および第2の中継装置により等値化済のデータが与えられる。このため、第1および第2の制御装置の一方を稼働系として機能させ、他方を待機系として機能させるとともに、稼働系の停止に起因して稼働系/待機系の切り替えを行う場合に監視データの等値化完了を待つ必要はなく、稼働系/待機系の切り替えを迅速に行うことができる。
また、この制御システムにおいて、制御装置間通信手段を介した通信が通信不能状態となったことを待機系の制御装置が検知した場合に、待機系の中継装置は、中継装置間通信手段を経由した通信により取得した情報に基づいて、待機系の制御装置による待機系から稼働系への切り替えを抑制する制御を行う。従って、制御装置間通信手段を介した通信が通信不能状態となることにより稼働系と待機系との切り替えが不要に行われるのを抑制することができる。また、この制御装置間通信手段を介した通信は、第1および第2の中継装置間で行われるため、第1および第2の制御装置の稼働系/待機系の切り替え制御のための通信の負担を軽くすることができる。
以上説明したように、この発明によれば、冗長化制御システムにおいて、ネットワーク経由で各制御装置に転送される監視データのデータ量が増加しても、制御装置本来の演算の実行に何ら支障を発生させず、かつ稼働系/待機系の切り替えスピードの低下を招かないようにすることが可能になる。また、この発明によれば、制御装置間通信手段を介した通信が通信不能状態となっても、第1および第2の制御装置の負担を増加させることなく、第1の制御装置および第1の中継装置の組と第2の制御装置および第2の中継装置の組の両方が稼働系となるのを回避し、稼働系/待機系切り替え制御を適切に行うことができる。
この発明の一実施形態である制御システム1Aの構成例を示す図である。 同制御システム1Aに含まれる制御装置100の構成例を示す図である。 同制御システム1Aに含まれるネットワーク装置200の構成例を示す図である。 同ネットワーク装置200の動作を示すフローチャートである。 同制御装置100の動作を示すフローチャートである。 同制御システム1Aにおいて等値化バス40を介した通信が通信不能状態になった場合の動作を示すシーケンス図である。 同制御システム1Aにおいて等値化ケーブル40を介した通信により行われる稼働系/待機系切り替え制御を示すシーケンス図である。 この発明の他の実施形態である制御システムにおける稼働系/待機系切り替え制御を示すシーケンス図である。 制御システムの従来例を示す図である。
以下、図面を参照しつつ本発明の実施形態を説明する。
図1はこの発明の一実施形態である制御システム1Aの構成例を示す図である。
この制御システム1Aは、前掲図9の制御システムと同様、産業施設内に敷設された制御システムである。図1では図9におけるものと同一の構成要素には同一の符号が付されている。本実施形態による制御システム1Aは、以下の3つの点が図9に示す従来の冗長化制御システムと異なる。第1に、制御システム1Aは、制御装置10Aおよび制御装置10Bの代わりに制御装置100Aおよび制御装置100Bを有する。第2に、制御システム1Aは、ネットワーク装置20Aおよびネットワーク装置20Bの代わりにネットワーク装置200Aおよびネットワーク装置200Bを有する。そして、第3に、制御システム1Aは、ネットワーク装置200Aとネットワーク装置200Bを接続する等値化ケーブル400を有する。
ネットワーク装置200Aは、制御装置100AとIOネットワーク30Aとの間の通信を中継する中継装置であり、ネットワーク装置200Bは、制御装置100BとIOネットワーク30Bとの間の通信を中継する中継装置である。等値化ケーブル400は、ネットワーク装置200Aおよび200B間の通信を仲介する中継装置間通信手段の役割を果たす。ネットワーク装置200Aおよびネットワーク装置200Bは、図9におけるネットワーク装置20Aやネットワーク装置20Bと同様にゲートウェイ装置である。図1に示す制御システム1Aでは、IOスレーブ装置S1〜Snの各々から送信された監視データは、IOネットワーク30Aおよびネットワーク装置200Aを介して制御装置100Aに伝送されるとともに、IOネットワーク30Bおよびネットワーク装置200Bを介して制御装置100Bに伝送される。制御装置100Aおよび制御装置100Bの各々は、図9における制御装置10Aおよび制御装置10Bと同様に、IOスレーブ装置S1〜Snから収集した監視データおよび過去の演算結果を使用した演算を行うことにより、IOスレーブ装置S1〜Snにおける制御対象装置の制御のための制御データを求めて保持する。制御装置100Aおよび制御装置100Bは、PLCであっても良いし、DCSであっても良い。
本実施形態では、便宜上、制御装置100Aおよびネットワーク装置200Aの組をA系、制御装置100Bおよびネットワーク装置200Bの組をB系と呼ぶ。また、以下では、便宜上、例えばA系の制御装置100A(ネットワーク装置200A)にとってのA系のネットワーク装置200A(制御装置100A)を同系のネットワーク装置(制御装置)という。また、A系にとってのB系、B系にとってのA系をペア系という。
本実施形態では、A系とB系のうちの一方が稼動系となり、一方が待機系となる。そして、稼動系が停止するときには、待機系となっていた制御装置は、以降、稼動系として動作する。稼動系/待機系の切り替えの際には、演算結果である制御データの突変が生じる可能性がある。そこで、この稼働系/待機系の切り替え時の制御データの突変を回避するために、監視データの等値化と演算結果の等値化が必要となる。図9に示す従来の冗長化制御システムでは、監視データの等値化と演算結果の等値化を制御装置10Aと制御装置10Bに行わせていた。これに対して、本実施形態では、監視データの等値化をネットワーク装置200Aおよびネットワーク装置200Bで行わせ、制御装置100Aおよび100B間では、演算結果の等値化のみを行わせる。
次に、制御装置100Aおよび100Bの構成、ネットワーク装置200Aおよび200Bの構成を順に説明する。なお、制御装置100Aおよび100Bは同一の構成を有しているため、以下では両者を区別する必要がない場合には「制御装置100」と表記する。また、ネットワーク装置200Aおよび200Bも、同一の構成を有しているため、以下では両者を区別する必要がない場合には「ネットワーク装置200」と表記する。
図2は、制御装置100の構成例を示すブロック図である。
制御装置100は、図2に示すように、制御部110、第1通信インタフェース(以下、「I/F」と略記)部120、第2通信I/F部130、第3通信I/F部140、記憶部150、およびこれら構成要素間のデータ授受を仲介するバス160を含んでいる。
制御部110は、例えばCPUである。制御部110は記憶部150(より正確には不揮発性記憶部154)に記憶されている制御プログラム1542を実行することにより、制御装置100の制御中枢として機能する。第1通信I/F部120、第2通信I/F部130および第3通信I/F部140の各々は、例えばNIC(Network Interface Card)である。これら各通信I/F部の役割は以下の通りである。
第1通信I/F部120は同系のネットワーク装置200に接続されている。第1通信I/F部120は、同系のネットワーク装置から送信されてくるデータの受信、および同系のネットワーク装置へのデータの送出を行う。第1通信I/F部120は、同系のネットワーク装置から受信したデータを蓄積する通信バッファを有している(図示略)。
第2通信I/F部130は通信線を介して監視システム50に接続されている。第2通信I/F部130は、監視システム50から送信されてくるデータの受信、および監視システム50へのデータの送出を行う。第2通信I/F部230は、監視システム50へ送信するデータを蓄積する通信バッファを有している(図示略)。
第3通信I/F部140は、ケーブル接続用のポートを有しており、同ポートには等値化ケーブル40が接続される。第3通信I/F部140は、等値化ケーブル40を介してペア系の制御装置と制御データの等値化のための通信を行う。第3通信I/F部140は、ペア系の制御装置との間で授受するデータを蓄積する通信バッファを有している(図示略)。
記憶部150は、図2に示すように揮発性記憶部152と不揮発性記憶部154とを有している。不揮発性記憶部154は例えばフラッシュROMである。この不揮発性記憶部154には制御プログラム1542が予め格納されている。この制御プログラム1542は、制御部110により実行される。制御プログラム1542は、制御演算部1542a、等値化処理部1542bおよび二重化動作制御部1542cを含む。これらは制御プログラム1542のサブルーチンである。
揮発性記憶部152は、例えばRAM(Random Access Memory)である。この揮発性記憶部152は、制御プログラム1542を実行するためのワークエリアとして使用される。このワークエリアとして、揮発性記憶部152には、制御データ領域1522aと、IOデータ領域1522bと、状態データ領域1522cがある。IOデータ領域1522bは、INデータ領域とOUTデータ領域に区分されている。INデータ領域は、同系のネットワーク装置から受信した監視データを格納するための記憶領域である。OUTデータ領域は同系のネットワーク装置に送信する制御データを格納するための記憶領域である。なお、これらのワークエリアを利用することにより行われる制御プログラム1542の各サブルーチンの処理内容については、説明の重複を避けるため、本実施形態の動作説明において詳細を明らかにする。
以上が制御装置100の構成である。
図3は、ネットワーク装置200の構成例を示すブロック図である。
ネットワーク装置200は、図3に示すように、制御部210、第1通信I/F部220、第2通信I/F部230、第3通信I/F部240、記憶部250、およびこれら構成要素間のデータ授受を仲介するバス260を含んでいる。
制御部210は、例えばCPUである。制御部210は記憶部250(より正確には不揮発性記憶部254)に記憶されている制御プログラム2542を実行することにより、ネットワーク装置200の制御中枢として機能する。第1通信I/F部220、第2通信I/F部230および第3通信I/F部240の各々は、例えばNICである。これら各通信I/F部の役割は以下の通りである。
第1通信I/F部220はIOネットワークに接続されている。より詳細に説明すると、ネットワーク装置200Aの第1通信I/F部220はIOネットワーク30Aに接続されており、ネットワーク装置200Bの第1通信I/F部220はIOネットワーク30Bに接続されている。第1通信I/F部220は、接続先のIOネットワークから送信されてくるデータの受信、および接続先のIOネットワークへのデータの送出を行う。第1通信I/F部220は、接続先のIOネットワークから受信したデータを蓄積する通信バッファを有している(図示略)。
第2通信I/F部230は通信線を介して同系の制御装置に接続されている。第2通信I/F部230は、同系の制御装置から送信されてくるデータの受信、および同系の制御装置へのデータの送出を行う。第2通信I/F部230は、同系の制御装置へ送信するデータを蓄積する通信バッファを有している(図示略)。
第3通信I/F部240は、ケーブル接続用のポートを有しており、同ポートには等値化ケーブル400が接続される。第3通信I/F部240は、等値化ケーブル400を介してペア系のネットワーク装置と監視データの等値化のための通信を行う。
記憶部250は、図3に示すように揮発性記憶部252と不揮発性記憶部254とを有している。この不揮発性記憶部254には制御プログラム2542が予め格納されている。この制御プログラム2542は、制御部210により実行される。制御プログラム2542は、IOマスタ機器部2542a、中継処理部2542b、等値化処理部2542cおよび二重化動作監視部2542dを含む。これらは制御プログラム2542のサブルーチンである。
揮発性記憶部252は、例えばRAMである。揮発性記憶部252は、制御プログラム2542を実行するためのワークエリアとして使用される。ワークエリアとして、揮発性記憶部252には、制御装置100のものと同様なIOデータ領域2522bと、状態データ領域2522cがある。なお、これらのワークエリアを利用することにより行われる制御プログラム2542の各サブルーチンの処理内容については、説明の重複を避けるため、本実施形態の動作説明において詳細を明らかにする。
以上がネットワーク装置200の構成である。
次に本実施形態の動作を説明する。
図4は本実施形態におけるネットワーク装置200の動作を示すフローチャートである。また、図5は本実施形態における制御装置100の動作を示すフローチャートである。以下、図4および図5を参照し、本実施形態の動作例を説明する。なお、以下説明する動作例では、A系が稼働系であり、B系が待機系であるとする。
IOスレーブ装置S1〜Snの各々は、入力信号(若しくはセンサの出力信号)をサンプリングして制御装置100Aおよび制御装置100Bの各々に送信する監視データを生成し、IOネットワーク30AおよびIOネットワーク30Bの各々へ送信する。IOスレーブ装置S1〜Snが送信する監視データには、当該監視データの送信先および送信元を示す情報(通信アドレスやノード番号)と当該監視データを一意に示す識別子等とを含むヘッダが付与されている。IOスレーブ装置S1〜Snの各々から送信された監視データは、IOネットワーク30AおよびIOネットワーク30Bの各々を介してネットワーク装置200Aおよびネットワーク装置200Bの各々へと伝送される。以下ではネットワーク装置200Aに伝送される監視データを「監視データA」と呼び、ネットワーク装置200Bに伝送される監視データを「監視データB」と呼ぶ。監視データAと監視データBは基本的には同一のデータであるが、各々をサンプリングする際のサンプリングタイミングのズレにより微妙に異なる場合がある。
ネットワーク装置200Aでは、第1通信I/F部220がIOネットワーク30Aから送信されてくる監視データAを受信すると、IOマスタ機器部2542aが当該監視データAをIOデータ領域2522bのINデータ領域に書き込む。ここで、IOマスタ機器部2542aは、個々の監視データAをINデータ領域に書き込む際、等値化済であるか否かを示すフラグに等値化済でないことを示す第1の値(例えば、0)をセットし、当該第1の値をセット済のフラグを各監視データAに付与してINデータ領域に書き込む。ネットワーク装置200Bにおいても同様に、ネットワーク装置200BのIOデータ領域2522bのINデータ領域には、IOネットワーク30Bから受信した監視データBとフラグが書き込まれる。
ネットワーク装置200Aでは、等値化処理部2542cが繰り返し起動される。この等値化処理部2542cの起動は、タイマ割り込み等により定周期で行われてもよいし、IOデータ領域2522bのINデータ領域への監視データの書き込みを契機として行われてもよい。
ネットワーク装置200Aにおいて等値化処理部2542cは、図4に示すように、まず、状態データ領域2522c内の状態データを参照し、自装置が稼働系として動作しているのか否かを判定する(ステップSA200)。そして、ステップSA200の判定結果が“Yes”であれば、等値化処理部2542cは、ステップSA210の処理を実行し、逆にステップSA200の判定結果が“No”であれば、ステップSA220以降の処理を実行する。本動作例では、A系が稼働系であるため、ネットワーク装置200Aにおける等値化処理部2542cの実行時に、ステップSA200の判定結果は“Yes”となり、ステップSA210の処理が実行される。
ステップSA210において等値化処理部2542cは、IOデータ領域2522bのINデータ領域から等値化済でないことを示すフラグの付与された監視データAを読み出し、当該監視データAを第3通信I/F部240を介してペア系のネットワーク装置(この場合、ネットワーク装置200B)へ転送する。前述したように、ネットワーク装置200AのIOデータ領域2522bのINデータ領域には、等値化済でないことを示すフラグを付与された監視データAが格納されている。このため、本動作例では、等値化ケーブル400を介してネットワーク装置200Aからネットワーク装置200Bへ監視データAが転送される。
ネットワーク装置200Bにおいて等値化処理部2542cが起動されると、この等値化処理部2542cは、ネットワーク装置200Aの等値化処理部2542cと同様、自装置が稼働系として動作しているのか否かを判定する(ステップSA200)。本動作例ではB系が待機系であるため、このステップSA100の判定結果は“No”になり、ステップSA220以降の処理が実行される。
ステップSA220において等値化処理部2542cは、ネットワーク装置200Aからの監視データAを第3通信I/F部240から取得し、当該監視データAに対応した監視データB、すなわち、IOデータ領域2522bのINデータ領域に格納されている監視データBであって、当該監視データAと送信元が同一であり、かつ識別子が一致する監視データを当該監視データAにより上書きし、当該監視データBに付与されているフラグを等値化済であることを示す第2の値(例えば、1)に書き換える(ステップSA220)。これにより、ネットワーク装置200BのIOデータ領域2522bのINデータ領域に格納されている監視データは監視データBから監視データAに更新される。
ネットワーク装置200Bの等値化処理部2542cは、上記の要領で監視データの等値化を完了すると、等値化ケーブル400を介して等値化完了をネットワーク装置200Aへ通知する(ステップSA230)。ネットワーク装置200Aの等値化処理部2542cは、上記通知の受信を契機として、図4のステップSA210において転送した監視データAのフラグを上記第2の値に更新する。以上の動作が為される結果、ネットワーク装置200Aおよびネットワーク装置200Bの各々のIOデータ領域2522bのINデータ領域には、監視データAが格納され、当該監視データAには等値化済を示すフラグが付与された状態となる。
ネットワーク装置200Aでは、IOデータ領域2522bのINデータ領域に格納されている監視データに付与されているフラグが等値化済を示す値に更新されたことを契機として中継処理部2542bが起動される。この中継処理部2542bは、等値化済を示すフラグを付与されている監視データをIOデータ領域2522bのINデータ領域から読み出し、読み出した監視データを第2通信I/F部230により同系の制御装置100Aに転送する。ネットワーク装置200Bにおいても、等値化完了の通知を送信したことを契機として中継処理部2542bが起動され、等値化済を示すフラグを付与されている監視データがIOデータ領域2522bのINデータ領域から読み出され、第2通信I/F部230により同系の制御装置100Bに転送される。
このようにして本動作例では、ネットワーク装置200Aから制御装置100Aへ監視データAが送信され、ネットワーク装置200Bから制御装置100Bへも監視データAが送信される。なお、監視データの送受信に比較して上記通知の送受信は十分に高速に行えるため、ネットワーク装置200Aおよびネットワーク装置200Bの各々における上記フラグの更新は略同期して実行される。このため、ネットワーク装置200Aから制御装置100Aへの監視データAの送信と、ネットワーク装置200Bから制御装置100Bへの監視データAの送信はほぼ同期して実行される。
制御装置100Aでは、第1通信I/F部120がネットワーク装置200Aから送信されてくる監視データAを受信すると、制御演算部1542aが当該監視データAをIOデータ領域1522bのINデータ領域に書き込む。そして、稼働系である制御装置100Aにおいて、制御演算部1542aは、IOデータ領域1522bのINデータ領域内の監視データAを用いてIOスレーブ装置S1〜Snの制御対象装置の制御のための制御データを算出する演算を行い、演算結果である制御データを制御データ領域1522aに書き込む。ここで、制御演算部1542aは、個々の制御データを制御データ領域1522aに書き込む際、等値化済であるか否かを示すフラグに等値化済でないことを示す第1の値(例えば、0)をセットし、当該第1の値をセット済のフラグを各制御データに付与して制御データ領域1522aに書き込む。
待機系においても、同様にネットワーク装置200Bから制御装置100Bに監視データAが転送される。そして、制御装置100BのIOデータ領域1522bには、ネットワーク装置200Bから受信された監視データAが書き込まれる。しかし、待機系である制御装置100Bでは、制御データを算出する演算、演算結果である制御データの制御データ領域1522aへの書き込みは行われるが、ネットワーク装置200Bへの送信は行われない。
制御装置100Aでは、等値化処理部1542bが繰り返し起動される。この等値化処理部1542bの起動は、タイマ割り込み等により定周期で行われてもよいし、制御データの制御データ領域1522aへの書き込みを契機として行われてもよい。
制御装置100Aにおいて等値化処理部1542bは、図5に示すように、まず、状態データ領域1522c内の状態データを参照し、自装置が稼働系として動作しているのか否かを判定する(ステップSA100)。そして、ステップSA100の判定結果が“Yes”であれば、等値化処理部1542bは、ステップSA110の処理を実行し、逆にステップSA100の判定結果が“No”であれば、ステップSA120以降の処理を実行する。前述したように、本動作例では、A系が稼働系であるため、制御装置100Aにおける等値化処理部1542bの実行時に、ステップSA100の判定結果は“Yes”となり、ステップSA110の処理が実行される。
ステップSA110では、等値化処理部1542bは制御データ領域1522aから等値化済でないことを示すフラグの付与された制御データを読み出し、当該制御データを第3通信I/F部140を介してペア系(この場合、待機系)の制御装置100Bへ転送する。
制御装置100Bにおいても等値化処理部1542bが繰り返し起動される。この等値化処理部1542bは、制御装置100Aの等値化処理部1542bと同様、自装置が稼働系として動作しているのか否かを判定する(ステップSA100)。本動作例ではB系が待機系であるため、このステップSA100の判定結果は“No”になり、ステップSA120以降の処理が実行される。ステップSA120において、制御装置100Bの等値化処理部1542bは、ペア系の制御装置100Aからの制御データを第3通信I/F部140から取得し、制御データ領域1522aにおいて当該制御データに対応した制御データを当該制御データにより上書きすることにより制御データの等値化を実行する(ステップSA120)。
制御装置100Bの等値化処理部1542bは、上記の要領で制御データの等値化を完了すると、等値化ケーブル40を介して等値化完了をペア系(この場合、稼働系)の制御装置100Aへ通知する(ステップSA130)。制御装置100Aの等値化処理部1542bは、上記通知の受信を契機として、図5のステップSA110において転送した制御データのフラグを上記第2の値に更新する。以上の動作が為される結果、制御装置100Aおよび制御装置100Bの各々の制御データ領域1522aには、等値化された制御データが格納される。
稼働系の制御装置100Aにおいて、制御演算部1542aは、制御データ領域1522a内の制御データのうち等値化済みであることを示すフラグの付与された制御データをIOデータ領域のOUTデータ領域に一旦格納する。そして、制御演算部1542aは、このOUTデータ領域内の制御データを第1通信I/F部120により同系のネットワーク装置200Aに送信する。
稼働系のネットワーク装置200Aにおいて、中継処理部2542bは、同系の制御装置100Aからの制御データを第2通信I/F部230が受信すると、この制御データをIOデータ領域2522bのOUTデータ領域に格納する。稼働系のネットワーク装置200AのIOマスタ機器部2542aは、このOUTデータ領域内の制御データをIOネットワーク30Aを介してIOスレーブ装置S1〜Snに送信する。
一方、待機系の制御装置100Bは、上述した通り、制御データの演算および等値化までは行うが、制御データの同系のネットワーク装置200Bへの送信は行わない。待機系の制御装置100Bは、等値化済みの制御データを制御データ領域1522aに保持し、系の切り替えに備える。
以上が本実施形態による制御システム1Aの通常時の動作例である。
図6は本実施形態による制御システム1Aにおいて等値化ケーブル40を介した通信が通信不能状態になった場合の動作例を示すシーケンス図である。この動作例においても、A系が稼働系、B系が待機系となっている。
稼働系の制御装置100Aの二重化動作制御部1542cは、状態データ領域1522c内の状態データを第3通信I/F部140により等値化ケーブル40を介してペア系(待機系)の制御装置100Bに繰り返し送信する。この状態データの送信は、定周期で行うようにしてもよく、状態データ領域1522c内の状態データの内容が変わったときに行うようにしてもよい。待機系の制御装置100Bの二重化動作制御部1542cは、等値化ケーブル40を介して受信される状態データに基づき、稼働系の状態を監視する。
図6に示す動作例において、待機系の制御装置100Bの二重化動作制御部1542cは、等値化ケーブル40を介した通信が通信不能状態となったことを検知している(ステップS310)。等値化ケーブル40を介した通信が通信不能状態になると、待機系の制御装置100Bの二重化動作制御部1542cは、もはや稼働系の状態を監視することができなくなる。そこで、待機系の制御装置100Bの二重化動作制御部1542cは、等値化ケーブル40経由の通信が通信不能状態になったことを検知した場合、初回指示としての稼働系への切り替え指示を第1通信I/F部120により同系のネットワーク装置200Bに送信する(ステップS330)。
ここで、等値化ケーブル40を介した通信が通信不能状態となる原因として、稼働系が故障した場合と、稼働系は正常に動作しているが、等値化ケーブル40の断線、等値化ケーブル40のプラグの制御装置からの脱落、ノイズ等の影響による通信品質の著しい低下等により通信不能状態となっている場合とが考えられる。
そこで、以下では、まず、後者の原因により等値化ケーブル40を介した通信が通信不能状態となった場合の動作を説明し、その後、前者の原因により等値化ケーブル40を介した通信が通信不能状態となった場合の動作を説明する。
ネットワーク装置200Bの二重化動作監視部2542dは、初回指示としての稼働系への切り替え指示を第2通信I/F部230が受信すると、ネットワーク装置200Bを待機系に維持した状態で(すなわち、待機系を示すデータを状態データ領域2522cに残したまま)、第3通信I/F部240および等値化ケーブル400を介して状態問い合わせをネットワーク装置200Aに送信する(ステップS340)。この状態問い合わせは、状態データ領域2522c内の状態データの送信を要求するコマンドである。
この状態問い合わせがネットワーク装置200Aの第3通信I/F部240により受信されると、ネットワーク装置200Aの二重化動作監視部2542dは、状態データ領域2522cから状態データを読み出し、第3通信I/F部240および等値化ケーブル400を介してネットワーク装置200Bに送信する(ステップS342)。
ネットワーク装置200Bの第3通信I/F部240が状態データを受信すると、ネットワーク装置200Bの二重化動作監視部2542dは、当該状態データの内容を判定する。
ネットワーク装置200Aが待機系への遷移期間中である旨またはネットワーク装置200Aが待機系である旨のいずれをも当該状態データが示していない場合、ネットワーク装置200Bの二重化動作監視部2542dは、初回指示としての稼働系への切り替え指示の受信タイミングを基準とした制限時間の範囲内で、状態問い合わせの送信(ステップS340)および状態データの受信(ステップS342)を繰り返す。なお、この制限時間は、予め定められた固定値であってもよいし、制御装置100Bが初回指示としての稼働系への切り替え指示において指定してもよい。
そして、ネットワーク装置200Aが待機系への遷移期間中である旨またはネットワーク装置200Aが待機系である旨を示す状態データをネットワーク装置200Bの第3通信I/F部240が制限時間内に受信しなかった場合、ネットワーク装置200Bの二重化動作監視部2542dは、制御装置100Bからの稼働系への切り替え指示には応じることができない旨の拒絶応答を制御装置100Bに送信する(ステップS345)。これにより待機系の制御装置100Bの二重化動作制御部1542cは、稼働系への切り替えを行わず、待機系を維持する(ステップS351)。
このように本実施形態によれば、等値化ケーブル40を介した通信が通信不能状態となった場合に、待機系の制御装置100Bによって不要に待機系から稼働系への切り替えが行われるのを抑制することができる。
次に稼働系の故障により等値化ケーブル40を介した通信が通信不能状態となった場合の動作を説明する。図6ではこの動作が破線により示されている。
稼働系において、稼働系としての動作を継続することができないような故障が発生した場合、稼働系の制御装置100Aは、稼働系の故障内容を示すとともに、稼働系から待機系への遷移期間中であることを示す内容に状態データ領域1522c内の状態データを書き替える。そして、稼働系の制御装置100Aの二重化動作制御部1542cは、この状態データ領域1522c内の状態データを第3通信I/F部140によりペア系(待機系)の制御装置100Bに送信する。この稼働系の待機系への切り替えを示す状態データは、稼働系への切り替え指示として、等値化ケーブル40を介して待機系の制御装置100Bに送信される。しかし、図6に示す例では、稼働系の故障により等値化ケーブル40を介した通信が通信不能状態となっているため、稼働系への切り替え指示は待機系の制御装置100Bに届かない。
また、稼働系としての動作を維持することができない故障が稼働系に発生した場合、稼働系の制御装置100Aの二重化動作制御部1542cは、第1通信I/F部120によりネットワーク装置200Aに待機系への切り替え指示を送る(ステップS312)。
そして、稼働系の制御装置100Aの二重化動作制御部1542cは、制御装置100Aを待機系に切り替えるための制御を開始する。具体的には、二重化動作制御部1542cは、制御演算部1542aに稼働系としての処理(制御データの送信)を停止させ、等値化処理部1542bに稼働系としての処理(制御データの送信)を停止させ、待機系としての処理(制御データの受信および等値化)を開始させるための制御を開始する。この制御が終了したとき、制御装置100Aの二重化動作制御部1542cは、状態データ領域1522c内の状態データを待機系であることを示す内容に書き替える(以上、ステップS320)。
稼働系のネットワーク装置200Aでは、第2通信I/F部230が待機系への切り替え指示を受信すると、二重化動作監視部2542dは、状態データ領域2522c内の状態データを稼働系から待機系への遷移期間中であることを示す内容に書き替え、ネットワーク装置200Aを待機系に切り替えるための制御を開始する。具体的には、二重化動作監視部2542dは、IOマスタ機器部2542aに稼働系としての処理(制御データの送信)を停止させ、等値化処理部2542cに稼働系としての処理(監視データの送信)を停止させ、待機系としての処理(監視データの受信および等値化)を開始させるための制御を開始する。この制御が終了したとき、ネットワーク装置200Aの二重化動作監視部2542dは、状態データ領域2522c内の状態データを待機系であることを示す内容に書き替える(ステップS322)。
ここで、稼働系の故障の態様の1つとして、例えば制御装置100Aの電源が遮断される等の故障の態様もあり得る。このような故障が起こった場合、等値化ケーブル40を介した制御装置100Aおよび100B間の通信が通信不能状態になるだけではなく、稼働系の制御装置100Aから同系のネットワーク装置200Aへの待機系への切り替え指示(ステップS322)も行われない。そこで、本実施形態において稼働系のネットワーク装置200Aの二重化動作監視部2542dは、第2通信I/F部230を介した同系の制御装置100Aとの通信を監視する。そして、同制御装置100Aとの通信が通信不能状態になったのを検知したとき、二重化動作監視部2542dは、ステップS322の処理を実行し、状態データ領域2522c内の状態データを稼働系から待機系への遷移期間中であることを示す内容に書き替え、待機系への切り替えが終わると、待機系であることを示す内容に書き替える。
一方、稼働系の故障により等値化ケーブル40を介した通信が通信不能状態になると、上述したように待機系の制御装置100Bの二重化動作制御部1542cからネットワーク装置200Bに初回指示としての稼働系への切り替え指示が送られ(ステップS330)、ネットワーク装置200Bの二重化動作監視部2542dから稼働系のネットワーク装置200Aに等値化ケーブル400を介して状態問い合わせが送られる(ステップS340)。
この状態問い合わせがネットワーク装置200Aの第3通信I/F部240により受信されると、ネットワーク装置200Aの二重化動作監視部2542dは、状態データ領域2522cから状態データを読み出し、第3通信I/F部240および等値化ケーブル400を介してネットワーク装置200Bに送信する(ステップS342)。この例では、稼働系から待機系への遷移期間中であることを示す状態データが等値化ケーブル400を介してネットワーク装置200Bに送信されることとなる。
ネットワーク装置200Bの第3通信I/F部240が状態データを受信すると、ネットワーク装置200Bの二重化動作監視部2542dは、当該状態データの内容を判定する。
この例のようにネットワーク装置200Aが待機系への遷移期間中である旨を当該状態データが示している場合またはネットワーク装置200Aが待機系である旨を当該状態データが示している場合、ネットワーク装置200Bの二重化動作監視部2542dは、当該制御データを第2通信I/F部230により制御装置100Bに転送する(ステップS344)。
制御装置100Bの二重化動作制御部1542cは、ネットワーク装置200Aが待機系への遷移期間中である旨またはネットワーク装置200Aが待機系である旨を示す状態データを第1通信I/F部120が制限時間内に受信した場合、最終指示としての稼働系への切り替え指示を第1通信I/F部120によりネットワーク装置200Bに送信する(ステップS350)。
そして、制御装置100Bの二重化動作制御部1542cは、待機系から稼働系への遷移期間中である旨を示す状態データを状態データ領域1522cに書き込み、制御装置100Bを稼働系に切り替えるための制御を開始する。具体的には、二重化動作制御部1542cは、制御演算部1542aに稼働系としての処理(監視データに基づく制御データの算出)を開始させ、等値化処理部1542bに稼働系としての処理(制御データの送信)を開始させ、待機系としての処理(制御データの受信および等値化)を停止させるための制御を開始する。この制御が終了したとき、制御装置100Bの二重化動作制御部1542cは、稼働系である旨を示す状態データを状態データ領域1522cに書き込む(ステップS352)。
ネットワーク装置200Bにおいて、第2通信I/F部230が最終指示としての稼働系への切り替え指示を受信すると、二重化動作監視部2542dは、待機系から稼働系への遷移期間中である旨を示す状態データを状態データ領域2522cに書き込み、ネットワーク装置200Bを稼働系に切り替えるための制御を開始する。具体的には、二重化動作監視部2542dは、IOマスタ機器部2542aに稼働系としての処理(制御データの送信)を開始させ、等値化処理部2542cに稼働系としての処理(監視データの送信)を開始させ、待機系としての処理(監視データの受信および等値化)を停止させるための制御を開始する。この制御が終了したとき、ネットワーク装置200Bの二重化動作監視部2542dは、稼働系である旨を示す状態データを状態データ領域2522cに書き込む(ステップS354)。
以上のように稼働系の故障により等値化ケーブル40を介した通信が通信不能状態となった場合には、等値化ケーブル400を介した状態データの受信により待機系の制御装置100Bおよびネットワーク装置200Bが稼働系に切り替えられる。
図7は本実施形態において等値化ケーブル40を介した通信により現状の稼働系を待機系とし、現状の待機系を稼働系とする稼働系/待機系切り替え制御が行われる動作例を示すシーケンス図である。この動作例においても、初期状態では、A系が稼働系、B系が待機系となっている。
この動作例において、ステップS312、S320、S322、S352、S354の動作は図6に示すものと同様である。稼働系の制御装置100Aから等値化ケーブル40を介して待機系の制御装置100Bに稼働系への切り替え指示が送信され(ステップS311)、待機系の制御装置100Bがこの稼働系への切り替え指示を受信した場合、待機系の制御装置100Bの二重化動作制御部1542cは、直ちに稼働系への切り替え指示を同系のネットワーク装置200Bに送る(ステップS350)。そして、制御装置100Bおよびネットワーク装置200Bでは待機系から稼働系への切り替えが行われる(ステップS352およびS354)。
以上が本実施形態の動作ある。
次に本実施形態の効果を説明する。
図9に示す従来の冗長化制御システムでは、監視データの等値化を制御装置(すなわち、制御装置10Aおよび制御装置10B)に行わせていたため、監視データのデータ量が増えると、その等値化の分だけ制御装置の処理負荷が高くなり、本来の演算の高速実行に支障が生じるといった問題があった。これに対して、本実施形態では、監視データの等値化は等値化ケーブル400を介した通信によりネットワーク装置200Aおよびネットワーク装置200Bによって実行される。このため、IOネットワークに接続されるIOスレーブ装置の増加等に起因して制御装置100Aおよび制御装置100Bへ転送される監視データのデータ量が増えたとしても、制御装置100Aおよび制御装置100Bにかかる処理負荷がその等値化の分だけ高くなることはなく、本来の演算の実行に何ら支障が発生することはない。
また、本実施形態では、制御装置100Aおよび制御装置100Bに等値化済の監視データが転送されてくるので、稼働系の制御装置の停止に起因して稼働系/待機系の切り替えを行う場合であっても、制御装置において監視データの等値化完了を待つ必要はなく、即座に切り替えを行うことができる。すなわち、本実施形態によれば、稼働系/待機系の切り替えスピードの低下を招くこともない。
また、図9に示す従来の冗長化制御システムでは、稼動系と待機系との間のデータ通信を仲介する手段は、制御装置同士の通信を仲介する制御装置間通信手段である等値化ケーブル40のみである。従って、従来の冗長化制御システムでは、等値化ケーブル40を介した通信が通信不能状態になると、稼働系の制御装置と待機系の制御装置は互いの状態監視を適切に行うことができない。この場合、等値化ケーブル40を介した通信が通信不能状態になったことを検知した待機系の制御装置が待機系から稼働系への切り替えを行うと、稼働系が正常に動作しているにも拘わらず、待機系が稼働系に切り替えられ、これにより稼働系が重複して発生し、制御対象装置が誤動作する可能性がある。
これに対して、本実施形態では、等値化ケーブル40を介した通信が通信不能状態になったことを検知した待機系の制御装置が初回の切り替え指示を待機系のネットワーク装置200Bに送ると、待機系のネットワーク装置200Bは、等値化ケーブル400を介して稼働系のネットワーク装置200Aに状態問い合わせを送る。ここで、稼働系において待機系への切り替えが行われていない場合、待機系のネットワーク装置200Bは、状態問い合わせに対する応答として、稼働系を示す内容の状態データを受け取る。この場合、待機系のネットワーク装置200Bは、待機系の制御装置100Bに対して拒絶応答を送り、制御装置100Bによる待機系から稼働系への切り替えを抑制する。従って、本実施形態によれば、等値化ケーブル40を介した通信が通信不能状態になったことを検知した待機系の制御装置によって、待機系から稼働系への切り替えが不要に行われるのを防止することができる。
また、本実施形態において待機系のネットワーク装置200Bは、状態問い合わせに対する応答として、待機系を示す内容または待機系への遷移中であることを示す内容の状態データを受け取った場合に、その状態データを待機系の制御装置100Bに送る。そして、この状態データを受け取った待機系の制御装置100Bは待機系から稼働系への切り替え制御を開始する。従って、本実施形態によれば、等値化ケーブル40を介した通信が通信不能状態となっても、稼働系の待機系への切り替えを検知し、A系およびB系の両方が稼働系となるのを回避しつつ、稼働系/待機系切り替えを適切に行うことができる。
また、本実施形態によれば、稼働系のネットワーク装置200Aは、同系の制御装置100との通信を監視する。そして、制御装置100Aの電源遮断等の故障により、制御装置100との通信が通信不能状態になったことを検知した場合に、ネットワーク装置200Aは、自身が保持する状態データを待機系への遷移中である旨の内容に書き替え、次いで待機系を示す内容に書き替える。従って、稼働系の制御装置100Aが待機系への切り替え指示を稼働系のネットワーク装置200Aに送ることができない状況でも、稼働系のネットワーク装置200Aが待機系への切り替えを示す状態データを待機系のネットワーク装置200Bに送り、待機系の制御装置100Bおよびネットワーク装置200Bの稼働系への切り替えを行わせることができる。
また、本実施形態では、ネットワーク装置200Aおよび200Bが稼働系/待機系の切り替え制御のために通信を行うため、制御装置100Aおよび100Bの稼働系/待機系の切り替え制御のための通信の負担を減らすことができる。
<他の実施形態>
以上、この発明の一実施形態について説明したが、この発明には他にも実施形態が考えられる。例えば次の通りである。
(1)上記実施形態において、待機系の制御装置100は、稼働系への切り替え指示が等値化ケーブル40を介して受信された場合には最終指示としての稼働系への切り替え指示を同系のネットワーク装置200に送り、等値化ケーブル40を経由した通信が通信不能状態となった場合には初回指示としての稼働系への切り替え指示を同系のネットワーク装置200に送った。しかし、そのようにするのではなく、稼働系への切り替え指示が等値化ケーブル40を介して受信された場合と等値化ケーブル40を経由した通信が通信不能状態になった場合の両方において、初回指示としての稼働系への切り替え指示を待機系の制御装置100から待機系のネットワーク装置200へ送り、待機系のネットワーク装置200に稼働系の状態データを収集させてもよい。この態様によれば、例えばノイズの影響等により稼働系への切り替え指示が誤って待機系の制御装置100に送信された場合に、待機系の制御装置100によって待機系から稼働系への切り替えが不要に行われるのを防止することができる。
(2)現状の稼働系を待機系とし、現状の待機系を稼働系とする稼働系/待機系切り替え制御を図8に示すシーケンス図に従って進めてもよい。
図8に示す動作例において、初期状態では、制御装置100Aおよびネットワーク装置200Aが稼働系、制御装置100Bおよびネットワーク装置200Bが待機系となっている。
稼働系において、稼働系としての動作を継続することができないような故障が発生した場合、稼働系の制御装置100Aは、稼働系への切り替え指示を等値化ケーブル40を介して待機系の制御装置100Bに送信する(ステップS410)。また、稼働系の制御装置100Aは、待機系への切り替え指示を稼働系のネットワーク装置200Aへ送信する(ステップS412)。そして、稼働系の制御装置100Aは、自装置を待機系に切り替える制御を行う(ステップS420)。
待機系への切り替え指示を受信した稼働系のネットワーク装置200Aは、稼働系への切り替え指示を等値化ケーブル400を介して待機系のネットワーク装置200Bに送信する(ステップS414)。そして、稼働系のネットワーク装置200Aは、自装置を待機系に切り替える制御を行う(ステップS422)。
待機系のネットワーク装置200Bは、等値化ケーブル400を介して稼働系への切り替え指示を受信すると、稼働系への切り替え指示を待機系の制御装置100Bに送る(ステップS416)。
待機系の制御装置100Bは、等値化ケーブル40を介して稼働系の制御装置100Aから稼働系への切り替え指示を受信する(第1の通知)という条件と、待機系のネットワーク装置200Bから稼働系の切り替え指示を受信する(第2の通信)という条件の少なくとも一方の条件が満たされたとき、稼働系への切り替え指示をネットワーク装置200Bに送信する(ステップS430)。そして、待機系の制御装置100Bは、自装置を稼働系に切り替えるための制御を行う(ステップS432)。また、稼働系への切り替え指示を制御装置100Bから受け取ったネットワーク装置200Bは、自装置を稼働系に切り替えるための制御を行う(ステップS434)。
この態様によれば、等値化ケーブル40を経由した通信が通信不能状態となっている状況においても、等値化ケーブル400を介して稼働系のネットワーク装置から待機系のネットワー装置に稼働系への切り替え指示が送信される。従って、上記実施形態と同様、等値化ケーブル40を経由した通信が通信不能状態になっている状況においても、制御装置100Aおよびネットワーク装置200Aの組と制御装置100Bおよびネットワーク装置200Bの組の両方が稼働系となるのを回避することができる。
(3)上記実施形態では、IOスレーブ装置から収集した監視データを制御装置へ転送するゲートウェイ装置へ本発明を適用した。しかし、本発明の適用対象はゲートウェイ装置に限定される訳ではなく、ルータやリピータ、スイッチングハブなどの他の種類の中継装置であっても良い。さらに、本発明の中継装置に接続されるネットワークはIOネットワークなどの制御系ネットワークやシリアルバスに限定される訳ではなく、TCPなどの汎用通信プロトコルにしたがったデータ通信を仲介する一般的な情報系ネットワークであっても良い。要は、監視データを収集し、当該監視データを使用した演算を実行する制御装置と、監視データを出力する機器に接続されたネットワークとに接続され、当該ネットワークを介して受信したデータを当該制御装置へ転送する中継装置であれば、本発明を適用可能である。
(4)上記実施形態におけるネットワーク装置(中継装置)を単体で提供(すなわち、製造・販売)してもよい。このようなネットワーク装置を従来の冗長化制御システムにおけるネットワーク装置と置き換え、中継装置間等値化ケーブルでそれらネットワーク装置を互いに接続することで、従来の冗長化制御システムを上記実施形態の制御システムとして機能させることが可能になるからである。上記実施形態における制御装置も同様である。
(5)上記実施形態において、稼働系のネットワーク装置200Aは、待機系のネットワーク装置200Bからの状態問い合わせに応答して状態データを送信した。しかし、稼働系のネットワーク装置200Aは、常時、状態データを待機系のネットワーク装置200Bに送信してもよい。この場合の状態データの送信は、定期的に行ってもよく、状態データに変化があったときに行ってもよい。すなわち、稼働系のネットワーク装置200Aは、等値化ケーブル400を介して待機系のネットワーク装置200Bに状態データを定期的にまたは非定期的に繰り返し送信するのである。
この態様において、待機系のネットワーク装置200Bは、等値化ケーブル40を介した通信が通信不能状態になったことを検知した待機系の制御装置100Bから初回指示としての稼働系への切り替え指示を受け取った後、稼働系から待機系への切り替えを示す状態データを稼働系のネットワーク装置200Bから受信した場合、当該状態データを待機系の制御装置100Bに転送する。これにより待機系の制御装置100Bは、待機系の制御装置100Bおよびネットワーク装置200Bを稼働系に切り替える制御を開始する。
一方、待機系のネットワーク装置200Bは、待機系の制御装置100Bから初回指示としての稼働系への切り替え指示を受け取った後、稼働系が稼働系を維持していることを示す状態データを待機系のネットワーク装置200Bが受信した場合、拒絶応答を待機系の制御装置100Bに送る。すなわち、この態様では、初回指示としての稼働系への切り替え指示が待機系のネットワーク装置200Bに出力された後、稼働系から待機系への切り替えを示す状態データが待機系のネットワーク装置200Bによって受信されない限り、待機系の稼働系への切り替えは行われない。この態様においても上記実施形態と同様な効果が得られる。
(6)上記実施形態において、待機系のネットワーク装置200Bは、拒絶応答を送ることにより待機系の制御装置100Bによる待機系から稼働系への切り替えを抑制した。しかし、待機系のネットワーク装置200Bにこのような拒絶応答を送信させなくてもよい。この場合、待機系の制御装置100Bは、待機系から稼働系への切り替え指示(初回指示)を待機系のネットワーク装置200Bに送った後、所定の制限時間内に同ネットワーク装置200Bから切り替え指示に対する応答がない場合に、待機系から稼働系への切り替えを取り止めればよい。この態様においても上記実施形態と同様な効果が得られる。
1A…制御システム、100A,100B…制御装置、200A,200B…ネットワーク装置、110,210…制御部、120,220…第1通信I/F部、130,230…第2通信I/F部、140,240…第3通信I/F部、150,250…記憶部、152,252…揮発性記憶部、1522a…制御データ領域、1522b,2522b…IOデータ領域、1522c,2522c…状態データ領域、154,254…不揮発性記憶部、2542…制御プログラム、1542a…制御演算部、1542b…等値化処理部、1542c…二重化動作制御部、2542a…IOマスタ機器部、2542b…中継処理部、2542c…等値化処理部、2542d…二重化動作監視部、160,260…バス、30A,30B…IOネットワーク、40,400…等値化ケーブル、50…監視システム、S1〜Sn…IOスレーブ装置。

Claims (5)

  1. ネットワークを介して1または複数の機器から監視データを収集し、該監視データに基づいて制御を行う制御システムにおいて、
    第1および第2の制御装置と、
    前記第1の制御装置に接続された第1の中継装置と、
    前記第2の制御装置に接続された第2の中継装置と、
    前記第1の中継装置と前記第2の中継装置の通信を仲介する中継装置間通信手段と、
    前記第1の制御装置と前記第2の制御装置の通信を仲介する制御装置間通信手段と、
    を有し、
    前記第1の制御装置および前記第1の中継装置の組と、前記第2の制御装置および前記第2の中継装置の組は、一方の組が稼働系、他方の組が待機系となり、
    前記第1および第2の中継装置の各々は、前記1または複数の機器からネットワークを介して監視データを収集し、この監視データを前記中継装置間通信手段を介した通信により等値化し、等値化済の監視データを各々の接続先の制御装置へ転送し、
    前記第1の制御装置と前記第2の制御装置のうち稼働系となっている方は、接続先の中継装置から受信した等値化済の監視データを用いて前記制御を行い、
    前記稼働系の制御装置は、稼働系および待機系の切り替えを行う場合に、前記制御装置間通信手段を介して前記待機系の制御装置に稼働系への切り替え指示を送信し、
    前記制御装置間通信手段を介した通信が通信不能状態となったことを前記待機系の制御装置が検知した場合に、前記待機系の中継装置は、前記中継装置間通信手段を経由した通信により取得した情報に基づいて、前記待機系の制御装置による待機系から稼働系への切り替えを抑制する制御を行うことを特徴とする制御システム。
  2. 前記制御装置間通信手段を介した通信が通信不能状態となったことを前記待機系の制御装置が検知した場合に、前記待機系の中継装置は、前記中継装置間通信手段を介して状態問い合わせを前記稼働系の中継装置に送り、前記稼働系の中継装置は、この状態問い合わせに応答して稼働系の状態を示す状態データを前記中継装置間通信手段を介して前記待機系の中継装置に送り、前記待機系の中継装置は、前記状態データに基づいて、前記待機系の制御装置による待機系から稼働系への切り替えを抑制する制御を行うことを特徴とする請求項1に記載の制御システム。
  3. 前記待機系の中継装置は、前記制御装置間通信手段を介した通信が通信不能状態となったことを前記待機系の制御装置が検知した場合に、前記状態問い合わせを前記稼働系の中継装置に繰り返し送り、所定の制限時間内に前記稼働系の中継装置から稼働系から待機系への切り替えを示す状態データを受け取らなかった場合に、前記待機系の制御装置による稼働系への切り替えを抑制することを特徴とする請求項2に記載の制御システム。
  4. 前記稼働系の中継装置は、稼働系の状態を示す状態データを前記中継装置間通信手段を介して前記待機系の中継装置に定期的にまたは非定期的に繰り返し送り、
    前記待機系の中継装置は、前記制御装置間通信手段を介した通信が通信不能状態となったことを前記待機系の制御装置が検知した後、前記稼働系の中継装置から稼働系から待機系への切り替えを示す状態データを受け取らなかった場合に、前記待機系の制御装置による稼働系への切り替えを抑制することを特徴とする請求項1に記載の制御システム。
  5. ネットワークを介して1または複数の機器から監視データを収集し、該監視データに基づいて制御を行う制御システムにおいて、
    第1および第2の制御装置と、
    前記第1の制御装置に接続された第1の中継装置と、
    前記第2の制御装置に接続された第2の中継装置と、
    前記第1の中継装置と前記第2の中継装置の通信を仲介する中継装置間通信手段と、
    前記第1の制御装置と前記第2の制御装置の通信を仲介する制御装置間通信手段と、
    を有し、
    前記第1の制御装置および前記第1の中継装置の組と、前記第2の制御装置および前記第2の中継装置の組は、一方の組が稼働系、他方の組が待機系となり、
    前記第1および第2の中継装置の各々は、前記1または複数の機器からネットワークを介して監視データを収集し、この監視データを前記中継装置間通信手段を介した通信により等値化し、等値化済の監視データを各々の接続先の制御装置へ転送し、
    前記第1の制御装置と前記第2の制御装置のうち稼働系となっている方は、接続先の中継装置から受信した等値化済の監視データを用いて前記制御を行い、
    稼働系および待機系の切り替えを行う場合には、当該切り替えを示す情報を、前記制御装置間通信手段を介した前記第1および第2の制御装置間の通信と、前記中継装置間通信手段を介した前記第1および第2の中継装置間の通信の両方を通じて前記稼働系から前記待機系に送信し、
    前記待機系の制御装置は、前記制御装置間通信手段を介した前記第1および第2の制御装置間の通信と、前記中継装置間通信手段を介した前記第1および第2の中継装置間の通信の少なくとも一方を通じて前記稼働系の前記待機系への切り替えを検知した場合に、前記待機系の制御装置および前記待機系の中継装置の稼働系への切り替え制御を行うことを特徴とする制御システム
JP2014186004A 2014-09-12 2014-09-12 制御システム Active JP6350154B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014186004A JP6350154B2 (ja) 2014-09-12 2014-09-12 制御システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014186004A JP6350154B2 (ja) 2014-09-12 2014-09-12 制御システム

Publications (2)

Publication Number Publication Date
JP2016058009A JP2016058009A (ja) 2016-04-21
JP6350154B2 true JP6350154B2 (ja) 2018-07-04

Family

ID=55758743

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014186004A Active JP6350154B2 (ja) 2014-09-12 2014-09-12 制御システム

Country Status (1)

Country Link
JP (1) JP6350154B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7431034B2 (ja) * 2019-12-26 2024-02-14 アズビル株式会社 コントローラ及び施設監視システム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006338600A (ja) * 2005-06-06 2006-12-14 Matsushita Electric Ind Co Ltd 二重化切換システム
JP5554292B2 (ja) * 2011-06-30 2014-07-23 三菱電機株式会社 二重化制御装置

Also Published As

Publication number Publication date
JP2016058009A (ja) 2016-04-21

Similar Documents

Publication Publication Date Title
JP4776374B2 (ja) 二重化監視制御システム、及び同システムの冗長化切替え方法
KR101815202B1 (ko) 제어 시스템 및 중계장치
EP3175591B1 (en) System and method for controller redundancy and controller network redundancy with ethernet/ip i/o
JP6333790B2 (ja) ネットワークを介して接続された複数の制御装置を備えるロボットシステム
KR101370836B1 (ko) Mes와 plc 간 데이터 전송용 인터페이스 모듈
US10044580B2 (en) Redundantly operable industrial communication system, communication device and method for redundantly operating an industrial communication system
JP3882783B2 (ja) プログラマブルコントローラ及びcpuユニット並びに通信ユニット及び通信ユニットの制御方法
JP6558882B2 (ja) 制御システム、および中継装置
JP7023722B2 (ja) 二重化制御システム
JP2019179361A (ja) セーフティ制御システムおよびセーフティ制御ユニット
JP6350154B2 (ja) 制御システム
JP5852267B2 (ja) 分散型制御システムのためのリレーインタフェースモジュール
JP2013167922A (ja) 冗長化通信システムおよび冗長化通信方法
WO2020090032A1 (ja) 通信システム、通信装置、通信方法及びプログラム
WO2019087849A1 (ja) 通信システム、被制御機器、及び、通信システムの制御方法
JP6269404B2 (ja) 制御システム、中継装置、および制御装置
JP6330448B2 (ja) 制御システム、制御装置、および中継装置
JP2016058011A (ja) 制御システムおよび中継装置
JP4788597B2 (ja) プログラマブルコントローラ二重化システム
JP7326239B2 (ja) コントローラ、および、コントローラシステム
JP6865600B2 (ja) 通信中継装置
JP7135790B2 (ja) リンクアグリゲーション管理装置、中継装置、リンクアグリゲーション管理方法及びプログラム
JP2015207239A (ja) 制御システム、制御装置およびプログラム
JP7023726B2 (ja) 二重化制御システム
JP6354535B2 (ja) 冗長化制御システムおよびその制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171010

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171115

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180521

R150 Certificate of patent or registration of utility model

Ref document number: 6350154

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250