JP6269404B2 - 制御システム、中継装置、および制御装置 - Google Patents

制御システム、中継装置、および制御装置 Download PDF

Info

Publication number
JP6269404B2
JP6269404B2 JP2014186086A JP2014186086A JP6269404B2 JP 6269404 B2 JP6269404 B2 JP 6269404B2 JP 2014186086 A JP2014186086 A JP 2014186086A JP 2014186086 A JP2014186086 A JP 2014186086A JP 6269404 B2 JP6269404 B2 JP 6269404B2
Authority
JP
Japan
Prior art keywords
control
control device
monitoring data
relay
communication
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
JP2014186086A
Other languages
English (en)
Other versions
JP2016058013A (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 JP2014186086A priority Critical patent/JP6269404B2/ja
Publication of JP2016058013A publication Critical patent/JP2016058013A/ja
Application granted granted Critical
Publication of JP6269404B2 publication Critical patent/JP6269404B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、稼働系と待機系の制御装置および中継装置を含む制御システムに関する。
工場や各種プラント等の産業施設においては、各種操業を制御するために制御システムと呼ばれる通信システムが構築されることが多い。制御システムには、産業施設内に設置されたセンサからの監視データの収集やその収集結果に応じて電動機等の駆動制御を行う制御装置が含まれている。このような制御装置としては、DCS(Distributed Control
System:分散型制御システム或いは分散型制御装置)やプログラマブルロジックコントローラ(以下、PLC)が用いられる。一般的なFA(Factory Automation)システムでは制御装置としてPLCが用いられることが多く、高信頼性を要求されるプラント設備では制御装置としてDCSが用いられることが多い。DCSはPLCに比較して信頼性が高いからである。上記センサのように制御装置による監視データの収集対象となる装置や電動機などの制御対象装置(以下、両者をまとめて「IOスレーブ装置」と呼ぶ)は、IOネットワークと呼ばれるネットワーク(或いはシリアルバス)や制御ネットワーク(FL−netなどの専用プロトコルに準拠した通信を行うネットワーク)に接続される。制御装置は、中継装置(例えば、ゲートウェイ装置)等のネットワーク装置を介してIOネットワークに接続される。
この種の制御システムでは、制御装置等の故障に起因する操業停止を回避するために、制御装置の二重化および監視データのデータ伝送経路の二重化が行われることが一般的である。制御装置の二重化とは、2台の制御装置を設け、その一方を稼働系、他方を待機系として動作させることを言う。これら2台の制御装置の各々は、監視データを収集し、収集した監視データ(或いは収集した監視データと過去の演算結果)を用いて機器制御のための所定の演算を行う。稼働系の制御装置は当該演算結果に基づく制御を行い、待機系の制御装置は、稼働系の制御装置の停止に備える。そして、待機系の制御装置は、稼働系が停止するとき(或いは停止したとき)には、稼働系として動作し、機器制御を継続する。ここで、稼働系の制御装置の停止の具体例としては、何らかの故障や不具合の発生に起因する予期せぬ停止や、保守メンテナンス等による予め計画された停止などが考えられる。待機系の制御装置はこれら2種類の停止の両方に備える。データ伝送経路の二重化とは、例えばIOスレーブ装置から二重化された制御装置の一方へ至るデータ伝送経路と、他方へ至るデータ伝送経路とを各々別個に設けることを言う。以下では、制御装置とデータ伝送経路の両方が二重化された制御システムのことを「冗長化制御システム」と呼ぶ。
図19は、従来の冗長化制御システム3の構成例を示す図である。図19に示す冗長化制御システム3では、IOネットワークに接続され産業施設内に設置された各種センサなどのIOスレーブ装置、制御ネットワークに接続された電動機等の制御対象装置および制御装置の稼働状態等の監視を行うための監視システムの図示は省略している。図19の冗長化制御システム3は、制御装置10Aおよび制御装置10Bの2台の制御装置と、ネットワーク装置20Aおよびネットワーク装置20Bの2台のネットワーク装置とを有している。制御装置10Aと制御装置10Bのうちの一方が稼働系となり、他方は待機系となって稼働系の停止に備える。また、制御装置10Aはネットワーク装置接続バス60Aを介してネットワーク装置20Aに接続されており、制御装置10Bはネットワーク装置接続バス60Bを介してネットワーク装置20Bに接続されている。ネットワーク装置20Aおよびネットワーク装置20Bはネットワーク30’に接続されている。ネットワーク30’はIOネットワークである。
図19に示す冗長化制御システム3では、制御装置10Aと制御装置10Bの各々は、他方の状態監視を行えるようにするために、等値化ケーブル40により接続されている。前述したように待機系の制御装置は、稼働系の制御装置について故障等に起因する予期せぬ停止や保守メンテナンス等の計画的な停止などに備えるのであるが、以下では故障により停止する場合を例にとって制御装置について説明する。制御装置10Aと制御装置10Bの各々は、自装置の状態(故障の有無)を示す状態データを等値化ケーブル40を介して他方に送信する。例えば、制御装置10Aが稼働系となっている場合、待機系である制御装置10Bは、等値化ケーブル40を介して制御装置10Aから送信されてくる状態データを参照して制御装置10Aにおける故障発生を監視する。そして、制御装置10Bは、等値化ケーブル40を介して受信した状態データから制御装置10Aの故障発生を検出すると、以降、稼働系としての動作を開始する。一方、制御装置10Aは制御装置10Bが稼働系としての動作を開始したことを等値化ケーブル40を介した通信により検出し、以降、待機系として動作する。
冗長化制御システムでは、稼働系の制御装置に故障が発生しても稼働系/待機系の切り替えを行うことで、IOスレーブ装置からのデータ収集、その収集結果に応じた演算、およびその演算結果に応じた制御を継続することができる。しかし、単に稼働系/待機系の切り替えを行うだけでは、その切り替え前後で上記演算結果が突変するなどの不具合が発生する場合がある。これは、IOスレーブ装置から制御装置10Aと制御装置10Bの各々に送られる監視データや、制御装置10Aと制御装置10Bの各々から制御対象装置に送られる演算結果を表す演算データが完全に同一であるとは限らないことに起因している。
このような不具合の発生を回避するため、冗長化制御システムでは、IOスレーブ装置の各々から各制御装置へ送信されてくる監視データの等値化や、当該監視データによる演算結果の等値化といった処理を各制御装置に実行させることが一般的である。監視データの等値化とは、稼働系の制御装置がネットワーク装置経由で受信した監視データを等値化ケーブル40を介して待機系の制御装置へ送信し、当該監視データで待機系の制御装置がネットワーク30’経由で受信した監視データを上書きすることを言う。また、演算結果の等値化とは、稼働系における演算結果を示す演算データを等値化ケーブル40を介して待機系の制御装置に送信し、当該演算データで待機系における演算結果を上書きすることを言う。このような冗長化制御システムおよび等値化に関する従来技術の一例としては特許文献1や特許文献2に開示の技術が挙げられる。
特開2013−12094号公報 特開2013−152631号公報
図19に示す冗長化制御システム3において、制御装置10Aとネットワーク装置20AよりなるA系が稼働系として動作しており、制御装置10Bとネットワーク装置20BよりなるB系が待機系として動作している場合について説明する。制御装置10Aとネットワーク装置20Aとを接続しているネットワーク装置接続バス60Aが切断されると、制御装置10Aとネットワーク装置20Aとの間ではデータの送受信が行えなくなり、制御装置10Aは故障発生を示す状態データを等値化ケーブル40を介して制御装置10Bに送信する。制御装置10Bは、受け取った状態データから制御装置10Aの故障を検出すると稼働系としての動作を開始し、制御装置10Bが稼働系としての動作を開始したことを示す状態データを等値化ケーブル40を介して制御装置10Aに送信する。制御装置10Aは、制御装置10Bが稼働系としての動作を開始したこと示す状態データを等値化ケーブル40を介して受信し、以降、待機系として動作する。このように、制御装置10Aとネットワーク装置20Aとを接続するネットワーク装置接続バス60Aが切断されても、稼働系/待機系の切り替えが発生するため、特段の問題は生じないかに見える。しかし、制御装置10Aと制御装置10Bの稼働系/待機系の切り替えが完了するまでは、それまで稼働系であった制御装置10A自体には何ら問題が無いにも拘らず、制御対象装置の制御を行うことはできない、といった問題が生じる。
本発明は以上に説明した課題に鑑みて為されたものであり、従来よりも稼働系/待機系の切り替えの発生頻度を減らし、冗長化制御システムの可用性を向上させることを可能にする技術を提供することを目的とする。
上記課題を解決するために本発明は、ネットワークに接続された機器から監視データを収集し、該監視データに基づいて制御を行う制御システムとして、以下の第1および第2の制御装置と第1および第2の中継装置とを有する制御システムを提供する。第1および第2の制御装置のうちの一方は稼働系、他方は待機系となる。第1および第2の中継装置の具体例としては、前述したネットワーク装置が挙げられる。第1の中継装置は上記ネットワークに接続されているとともに、第1の制御装置に接続されている。第1の中継装置は、その接続先である第1の制御装置が稼働系であれば稼働系の中継装置として機能し、当該第1の制御装置が待機系であれば待機系の中継装置として機能する。第2の中継装置は、上記ネットワークに接続されているとともに第2の制御装置に接続されている。第2の中継装置も、その接続先である第2の制御装置が稼働系であれば稼働系の中継装置として機能し、当該第2の制御装置が待機系であれば待機系の中継装置として機能する。上記制御システムは、第1の制御装置と第2の中継装置の通信を仲介するとともに第2の制御装置と第1の中継装置の通信を仲介する冗長化通信手段と、第1の中継装置と第2の中継装置の通信を仲介する中継装置間通信手段と、を有している。上記第1および第2の中継装置の各々は、ネットワークを介して受信した監視データを接続先の制御装置へ転送する第1の処理を実行する第1の処理手段と、ネットワークを介して受信した監視データを中継装置間通信手段を介して他方の中継装置へ転送する第2の処理を実行する第2の処理手段と、中継装置間通信手段を介して他方の中継装置から受信した監視データを冗長化通信手段を介して他方の制御装置へ転送する第3の処理を実行する第3の処理手段と、を有している。そして、稼働系の中継装置は、上記第1の処理と第2の処理のうち、少なくとも第1の処理を実行し、待機系の中継装置は、上記第3の処理を実行する。稼働系の制御装置は、接続先の中継装置から受信した監視データと、冗長化通信手段を介して待機系の中継装置から受信した監視データの何れかに基づいて上記制御を行う。
本発明によれば稼働系の制御装置は、接続先の中継装置と、冗長化通信手段を介して他方の中継装置との少なくとも一方から監視データを受信し、当該監視データに基づいて制御を行う。そのため、稼働系の制御装置と稼働系の中継装置との接続が切断されても監視データを受信することができ、制御装置について稼働系/待機系の切り替えを行う必要はない。したがって、本発明によれば、従来の冗長化制御システムに比較して稼働系/待機系の切り替えの発生頻度を減らすことができ、可用性を向上させることができる。
より好ましい態様においては、前記第1および第2の中継装置の各々は、前記中継装置間通信手段を介した通信により、前記ネットワークから受信した監視データの等値化を行う。上記第2の処理は、監視データの等値化のための処理の一部であっても良いし、監視データの等値化のための処理とは別個の処理であっても良い。この態様によれば、監視データの等値化が第1および第2の中継装置により行われる。このため、監視データの等値化を制御装置側で行う従来の冗長化制御システムに比較して、第1および第2の制御装置にかかる処理負荷を軽減することができる。
より好ましい態様においては、稼働系の中継装置は、前記第1の処理による監視データの転送ができない場合に前記第2の処理を実行する。前記第1の処理による監視データの転送ができない場合には、前記第1の処理を実行しその結果転送不能であった場合と、前記第1の処理の実行に先立って監視データの転送先との通信が可能であるか否かを判定し、通信不能と判定された場合とが含まれる。この態様によれば、稼働系の制御装置への監視データの転送ができない場合にのみ第2の処理が実行されるため、稼働系の制御装置への監視データの転送が可能であるか否かを問わず常に第1および第2の処理の両者を実行する態様に比較して中継装置間通信手段におけるデータ伝送帯域の無駄使いを回避することができる。
また別の好ましい態様においては、稼働系の中継装置は、前記第1の処理と前記第2の処理の両者を実行し、稼働系の制御装置は、接続先の中継装置から転送されてきた監視データと、冗長化通信手段を介して待機系の中継装置から転送されてきた監視データの各々について既受信であるか否かを判定し、既受信であれば当該受信した監視データを破棄する一方、既受信でなければ当該受信した監視データに基づいて前記制御を実行する。この態様によれば、接続先の制御装置との通信が可能であるか否かの判定を中継装置に行わせないため、中継装置にかかる処理負荷を軽減することができる。なお、稼働系の制御装置は、監視データが既受信であるか否かを判定するため、同じ監視データに基づく演算を重複して実行することはない。
より好ましい態様においては、第1および第2の制御装置間の通信を仲介する制御装置間通信手段を有し、稼働系の制御装置は、受信した監視データを基に演算データを生成し、第1および第2の制御装置の各々は、制御装置間通信手段を介した通信により、前記演算データの等値化を行う。この態様によれば、第1および第2の制御装置間において演算データの等値化を行い、稼働系の制御装置は、等値化済の演算データを対象として制御対象装置の制御を行うので、第1および第2の制御装置が各々演算した演算データが突変して異なる演算データとなることを防止することができる。
また上記課題を解決するために本発明は、ネットワークに接続された機器から監視データを収集し、該監視データに基づいて制御を行う制御システムとして、以下の第1および第2の制御装置と第1および第2の中継装置とを有する制御システムを提供する。第1および第2の制御装置のうちの一方は稼働系、他方は待機系となる。第1の中継装置は上記ネットワークに接続されているとともに、第1の制御装置に接続されている。第1の中継装置は、その接続先である第1の制御装置が稼働系であれば稼働系の中継装置として機能し、当該第1の制御装置が待機系であれば待機系の中継装置として機能する。第2の中継装置は、上記ネットワークに接続されているとともに第2の制御装置に接続されている。第2の中継装置も、その接続先である第2の制御装置が稼働系であれば稼働系の中継装置として機能し、当該第2の制御装置が待機系であれば待機系の中継装置として機能する。上記制御システムは、第1の制御装置と第2の中継装置の通信を仲介するとともに第2の制御装置と第1の中継装置の通信を仲介する冗長化通信手段と、第1の制御装置と第2の制御装置の通信を仲介する制御装置間通信手段と、を有している。第1および第2の中継装置の各々は、前記ネットワークを介して受信した監視データを接続先の制御装置へ転送する第1の処理を実行する第1の処理手段と、前記ネットワークを介して受信した監視データを冗長化通信手段を介して他方の制御装置へ転送する第2の処理を実行する第2の処理手段と、を有している。稼働系の中継装置は、少なくとも前記第1の処理を実行する。待機系の制御装置は、冗長化通信手段を介して稼働系の中継装置から受信した監視データを制御装置間通信手段を介して稼働系の制御装置へ転送する。稼働系の制御装置は、接続先の中継装置から受信した監視データと、制御装置間通信手段を介して待機系の制御装置から受信した監視データの何れかに基づいて前記制御を行う。この態様によれば、稼働系の制御装置は、接続先の中継装置からと、制御装置間通信手段を介して待機系の制御装置からとの少なくとも一方から監視データを受信し、当該監視データに基づいて制御を行う制御システムを提供する。本態様によっても、制御装置と中継装置の稼働系/待機系の切り替えの頻度を減らすことができる。
より好ましい態様においては、稼働系の制御装置は、受信した監視データを基に演算データを生成し、第1および第2の制御装置の各々は、制御装置間通信手段を介した通信により、前記演算データの等値化を行う。この態様によれば、第1および第2の制御装置間において演算データの等値化を行い、稼働系の制御装置は、等値化済の演算データを対象として制御対象装置の制御を行うので、第1および第2の制御装置が各々演算した演算データが突変して異なる演算データとなることを防止することができる。
より好ましい態様においては、稼働系の中継装置は、前記第1の処理による監視データの転送ができない場合に第2の処理を実行する。この態様によれば、稼働系の制御装置への監視データの転送ができない場合にのみ第2の処理が実行されるため、稼働系の制御装置への監視データの転送ができるか否を問わず常に第1および第2の処理の両者を実行する態様に比較して制御装置間通信手段におけるデータ伝送帯域の無駄使いを回避することができる。
また別の好ましい態様においては、稼働系の中継装置は、第1の処理と第2の処理の両者を実行し、稼働系の制御装置は、接続先の中継装置から転送されてきた監視データと、制御装置間通信手段を介して待機系の制御装置から転送されてきた監視データの各々について既受信であるか否かを判定し、既受信であれば当該受信した監視データを破棄する一方、既受信でなければ当該受信した監視データに基づいて前記制御を実行する。この態様によれば、接続先の制御装置との通信が可能であるか否かの判定を中継装置に行わせないため、中継装置にかかる処理負荷を軽減することができる。なお、稼働系の制御装置は、監視データが既受信であるか否かを判定するため、同じ監視データに基づく演算を重複して実行することはない。
より好ましい態様においては、第1および第2の中継装置間の通信を仲介する中継装置間通信手段を有し、第1および第2の中継装置の各々は、中継装置間通信手段を介した通信により、前記ネットワークから受信した監視データの等値化を行う。この態様によれば、第1および第2の中継装置間において監視データの等値化が行われるので、第1および第2の中継装置が各々収集した監視データが突変して異なる監視データとなることを防止することができる。
また、上記課題を解決するための本発明は、一方が稼働系となって制御を行い他方が待機系となる第1および第2の制御装置の一方に制御装置中継装置間通信手段を介して接続されるとともに、監視データを送信する機器の接続されたネットワークに接続される中継装置として、以下の第1、第2および第3の処理手段を有する中継装置と提供する。この中継装置は、第1および第2の制御装置の他方に冗長化通信手段を介して接続されるとともに、当該他方の制御装置に接続された他の中継装置と中継装置間通信手段を介して接続される。第1の処理手段は、前記ネットワークを介して受信した監視データを制御装置中継装置間通信手段の接続先へ転送する手段である。第2の処理手段は、前記ネットワークを介して受信した監視データを中継装置間通信手段の接続先へ転送する手段である。第3の処理手段は、中継装置間通信手段を介して受信した監視データを冗長化通信手段を介して他方の制御装置へ転送する手段である。そして、当該中継装置は、制御装置中継装置間通信手段の接続先が稼働系である場合には、前記第1の処理手段と前記第2の処理手段のうち、少なくとも前記第1の処理手段による転送を行い、待機系であれば、前記第3の処理手段による転送を行う。本態様によっても、制御装置と中継装置の稼働系/待機系の切り替えの頻度を減らすことができる。
また上記課題を解決するために本発明は 一方が稼働系となって制御を行い他方が待機系となる第1および第2の制御装置の一方に制御装置中継装置間通信手段を介して接続されるとともに、監視データを送信する機器の接続されたネットワークに接続される中継装置として、以下の第1および第2の処理手段を有する中継装置を提供する。この中継装置は、第1および第2の制御装置の他方と冗長化通信手段を介して接続される。第1の処理手段は、前記ネットワークを介して受信した監視データを制御装置中継装置間通信手段の接続先へ転送する手段である。第2の処理手段は、前記ネットワークを介して受信した監視データを冗長化通信手段を介して他方の制御装置へ転送する手段である。そして、当該中継装置は、制御装置中継装置間通信手段の接続先が稼働系である場合には少なくとも前記第1の処理手段による転送を実行する。本態様によっても、制御装置と中継装置の稼働系/待機系の切り替えの頻度を減らすことができる。
また、上記課題を解決するための本発明は、一方が稼働系となって制御を行い、他方が待機系となる2つの制御装置を含む制御システムにおける制御装置として以下の第1および第2の処理手段を有する制御装置を提供する。この制御装置は、監視データを送信する機器が接続されたネットワークに各々接続された2つの中継装置の一方に制御装置中継装置間通信手段を介して接続され、他方に冗長化通信手段を介して接続される。第1の処理手段は、制御装置中継装置間通信手段の接続先から受信した監視データに基づいて前記制御を行う手段である。第2の処理手段は、前記冗長化通信手段の接続先から受信した監視データに基づいて前記制御を行う手段である。この制御装置は、稼働系となっている場合には、前記第1の処理手段と前記第2の処理手段の何れか一方により前記制御を行う。本態様によっても、制御装置と中継装置の稼働系/待機系の切り替えの頻度を減らすことができる。
また上記課題を解決するために本発明は、一方が稼働系となって制御を行い、他方が待機系となるとともに制御装置間通信手段を介して互いに接続された2つの制御装置を含む制御システムにおける制御装置として第1、第2および第3の処理手段を有する制御装置を提供する。この制御装置は、監視データを送信する機器が接続されたネットワークに各々接続された2つの中継装置の一方に制御装置中継装置間通信手段を介して接続され、他方に冗長化通信手段を介して接続される。第1の処理手段は、制御装置中継装置間通信手段の接続先から受信した監視データに基づいて前記制御を行う手段である。第2の処理手段は、制御装置間通信手段の接続先から受信した監視データに基づいて前記制御を行う手段である。そして、第3の処理手段は、冗長化通信手段の接続先から受信した監視データを制御装置間通信手段の接続先に転送する手段である。この制御装置は、稼働系となっている場合には、前記第1の処理手段と前記第2の処理手段うちの何れか一方により前記制御を行い、待機系となっている場合には、前記第3の処理手段による転送を実行する。本態様によっても、制御装置と中継装置の稼働系/待機系の切り替えの頻度を減らすことができる。
以上説明したように、本発明によれば、冗長化制御システムにおける稼働系/待機系の切り替えの発生頻度を従来よりも減らし、冗長化制御システムの可用性を向上させることが可能になる。
本発明の中継装置の一例のネットワーク装置200を含む冗長化制御システム(本発明の第1実施形態の冗長化制御システム1)の構成例を示す図である。 同冗長化制御システム1のネットワーク装置200の構成例を示すブロック図である。 同冗長化制御システム1の制御装置100の構成例を示すブロック図である。 ネットワーク装置接続バス60Aが正常である場合の同冗長化制御システム1の監視データの送信の流れを示す図である。 同ネットワーク装置200の制御部210が中継制御プログラム2642にしたがって実行する動作を説明するための図である。 同ネットワーク装置200の制御部210が中継制御プログラム2642にしたがって実行する等値化/転送処理2642bの流れを示すフローチャートである。 同ネットワーク装置200が実行するネットワーク装置受信処理の流れを示すフローチャートである。 同ネットワーク装置200が実行するネットワーク装置送信処理の流れを示すフローチャートである。 同制御装置100の制御部110が制御プログラム1542にしたがって実行する動作を説明するための図である。 同制御装置100の制御部110が制御プログラム1542にしたがって実行する等値化処理1542bの流れを示すフローチャートである。 ネットワーク装置接続バス60Aが正常でない場合の同冗長化制御システム1の監視データの送信の流れを示す図である。 本発明の第2実施形態の冗長化制御システム1のネットワーク装置200が実行するネットワーク装置送信処理の流れを示すフローチャートである。 同冗長化制御システム1の制御装置100が実行する制御装置受信処理の流れを示すフローチャートである。 ネットワーク装置接続バス60Aが正常である場合の同冗長化制御システム1の監視データの送信の流れを示す図である。 変形例(8)の冗長化制御システム1において、ネットワーク装置接続バス60Aが正常でない場合の監視データの送信の流れを示す図である。 変形例(10)の冗長化制御システム2の構成例を示す図である。 ネットワーク装置接続バス60Aが正常である場合の同冗長化制御システム2における監視データの送信の流れを示す図である。 ネットワーク装置接続バス60Aが正常でない場合の同冗長化制御システム2における監視データの送信の流れを示す図である。 従来の冗長化制御システム3の構成例を示す図である。
以下、図面を参照しつつ本発明の実施形態を説明する。
<第1実施形態>
(A:構成)
図1は、本発明の第1実施形態の冗長化制御システム1の一構成例を示す図である。図1では、IOネットワークに接続され産業施設内に設置された各種センサや制御対象装置などのIOスレーブ装置と制御装置の稼働状態等の監視を行うための監視システムの図示は省略されている。冗長化制御システム1は、前掲図19に示した冗長化制御システム3と同様、産業施設内に敷設された制御システムである。図1では図19におけるものと同一の構成要素には同一の符号が付されている。図1と図19とを対比すれば明らかなように、冗長化制御システム1は、以下の5つの点が図19に示す従来の冗長化制御システム3と異なる。第1に、制御装置10Aおよび制御装置10Bの代わりに制御装置100Aおよび制御装置100Bを有する点である。第2に、ネットワーク装置20Aおよびネットワーク装置20Bの代わりにネットワーク装置200Aおよびネットワーク装置200Bを有する点である。第3に、ネットワーク装置200Aとネットワーク装置200Bが等値化ケーブル500により接続されている点である。第4に、制御装置100Aとネットワーク装置200Bが冗長化接続バス600により接続されている点である。そして、第5に、制御装置100Bとネットワーク装置200Aが冗長化接続バス700により接続されている点である。
ネットワーク装置200Aとネットワーク装置200Bの各々は本発明の中継装置の一実施形態であり、等値化ケーブル500は当該中継装置同士の通信を仲介する中継装置間通信手段の役割を果たす。ネットワーク装置200Aおよびネットワーク装置200Bは、図19におけるネットワーク装置20Aやネットワーク装置20Bと同様にゲートウェイ装置である。図1に示す冗長化制御システム1では、図示しないIOスレーブ装置から送信された監視データは、IOネットワーク30およびネットワーク装置200Aを介して制御装置100Aに伝送されるとともに、IOネットワーク30およびネットワーク装置200Bを介して制御装置100Bに伝送される。制御装置100Aおよび制御装置100Bの各々は、図19における制御装置10Aおよび制御装置10Bと同様に、IOスレーブ装置からの監視データの収集、過去の演算結果を使用した演算(機器制御のための演算)、およびその演算結果の記憶を行う。制御装置100Aおよび制御装置100Bは、PLCであっても良いし、DCSであっても良い。
図1に示す冗長化制御システム1では、制御装置100Aと制御装置100Bのうちの一方が稼動系となって上記演算結果に基づく他の機器の制御を実行し、他方は待機系となって稼動系の停止(前述した2種類の停止など)に備える。そして、稼動系が停止するときには、待機系となっていた制御装置は、以降、稼動系として動作する。なお、稼動系と待機系の切り替えについては、従来の冗長化制御システム3と同様の方法により実現すれば良い。
前述したように、稼動系/待機系の切り替えの際には、演算結果の突変を回避するために監視データの等値化と演算結果の等値化が必要となる。図19に示す従来の冗長化制御システム3では、監視データの等値化と演算結果の等値化を制御装置10Aおよび制御装置10Bに行わせていたが、本実施形態では、監視データの等値化をネットワーク装置200Aおよびネットワーク装置200Bに行わせ、制御装置100Aおよび制御装置100Bには演算結果の等値化を行わせている。なお、制御装置100Aおよび制御装置100Bは同一の構成を有しているため、以下では両者を区別する必要がない場合には「制御装置100」と表記し、ネットワーク装置200Aおよびネットワーク装置200Bは同一の構成を有しているため、以下では両者を区別する必要がない場合には「ネットワーク装置200」と表記する。
本実施形態では、ネットワーク装置200についても稼動系と待機系の区別があり、稼働系と待機系で異なる動作を実行する。より詳細に説明すると、ネットワーク装置200は自身の接続先の制御装置100と通信し、接続先の制御装置100が稼動系であるか否かを判定する。そして、ネットワーク装置200は、接続先の制御装置100が稼動系であれば、稼動系のネットワーク装置として振る舞い、逆に接続先の制御装置100が待機系であれば、待機系のネットワーク装置として振る舞う。つまり、本実施形態では、ネットワーク装置200Aとネットワーク装置200Bのうち、稼動系の制御装置100に接続されている方が稼動系となり、待機系の制御装置100に接続されている方が待機系となる。制御装置100自体が故障して、制御装置100についての稼動系/待機系の切り替えが発生すると、ネットワーク装置200についても、その切り替えに従属して稼動系と待機系とが切り替えられる。
従来の冗長化制御システム3では、稼働系のネットワーク装置と稼働系の制御装置とを接続するネットワーク装置接続バスの切断が発生した場合、ネットワーク装置や制御装置の稼働系/待機系の切り替えが生じていた。しかし、本実施形態は、ネットワーク装置接続バス60Aの切断が発生しても、ネットワーク装置200や制御装置100の稼働系/待機系を切り替えることなく制御対象装置の制御を継続できるように構成されており、この点に本実施形態の特徴がある。
以下では、冗長化制御システム1の構成の特徴を顕著に表すネットワーク装置200および制御装置100の構成を中心に説明する。
まず、ネットワーク装置200の構成について説明する。図2は、ネットワーク装置200の構成例を示すブロック図である。ネットワーク装置200は、図2に示すように、制御部210、第1通信インタフェース(以下、「I/F」と略記)部220、第2通信I/F部230、第3通信I/F部240、第4通信I/F部250、記憶部260、およびこれら構成要素間のデータ授受を仲介するバス270を含む。
制御部210は、例えばCPU(Central Processing Unit)である。制御部210は記憶部260(より正確には不揮発性記憶部264)に記憶されている中継制御プログラム2642を実行することにより、ネットワーク装置200の制御中枢として機能する。制御部210が中継制御プログラム2642にしたがって実行する処理の詳細については後に明らかにする。第1通信I/F部220、第2通信I/F部230、第3通信I/F部240および第4通信I/F部250の各々は、例えばNIC(Network Interface Card)である。これら各通信I/F部の役割は以下の通りである。
第1通信I/F部220はIOネットワーク30に接続される。第1通信I/F部220は、接続先のIOネットワーク30から送信されてくる監視データの受信、および接続先の制御ネットワークへの演算データの送出を行う。第1通信I/F部220は、接続先のIOネットワーク30から受信した監視データや接続先のIOネットワーク30へ送信する演算データを蓄積する通信バッファを有する(図2では図示略)。
第2通信I/F部230はネットワーク装置接続バスを介して制御装置100に接続される。より詳細に説明すると、ネットワーク装置200Aの第2通信I/F部230は、ネットワーク装置接続バス60Aを介して制御装置100Aに接続される。同様にネットワーク装置200Bの第2通信I/F部230は、ネットワーク装置接続バス60Bを介して制御装置100Bに接続される。第2通信I/F部230は、その接続先の制御装置100から送信される演算データの受信、および接続先の制御装置100への監視データの送出を行う。第2通信I/F部230は、接続先の制御装置100から受信した演算データや接続先の制御装置100へ送信する監視データを蓄積する通信バッファを有する(図2では図示略)。
第3通信I/F部240は等値化ケーブルの接続されるポートを有し、当該ポートには等値化ケーブル500が接続される。第3通信I/F部240は、等値化ケーブル500を介して他方のネットワーク装置と監視データの等値化のための通信を行う。第3通信I/F部240は、接続先のネットワーク装置と通信するための監視データを蓄積する通信バッファを有する(図2では図示略)。
第4通信I/F部250は冗長化接続バスを介して制御装置100に接続される。より詳細に説明すると、ネットワーク装置200Aの第4通信I/F部250は、冗長化接続バス700を介して制御装置100Bに接続される。同様にネットワーク装置200Bの第4通信I/F部250は、冗長化接続バス600を介して制御装置100Aに接続される。第4通信I/F部250は、その接続先の制御装置100から送信される演算データの受信、および接続先の制御装置100への監視データの送出を行う。第4通信I/F部250は、接続先の制御装置100から受信した演算データや接続先の制御装置100へ送信する監視データを蓄積する通信バッファを有する(図2では図示略)。
記憶部260は、図2に示すように揮発性記憶部262と不揮発性記憶部264とを有する。揮発性記憶部262は、例えばRAM(Random Access Memory)である。揮発性記憶部262は、中継制御プログラム2642を実行するためのワークエリアとして使用される。また、揮発性記憶部262は、制御装置100へ伝送する監視データを一時的に蓄積する監視データバッファ2622の役割も果たす。さらに、揮発性記憶部262には、当該揮発性記憶部262を有するネットワーク装置200が稼働系として動作しているのか、それとも待機系として動作しているのかを示す稼働/待機フラグが格納される。不揮発性記憶部264は例えばフラッシュROMである。不揮発性記憶部264には中継制御プログラム2642が予め格納されている。
制御部210は、ネットワーク装置200の電源(図示略)の投入或いはリセットを契機として不揮発性記憶部264から揮発性記憶部262へ中継制御プログラム2642を読み出し、その実行を開始する。中継制御プログラム2642にしたがって作動している制御部210は、接続先の制御装置100の動作状態を監視しその監視結果に応じて稼働/待機フラグを設定する処理を実行する他、中継処理2642aと等値化/転送処理2642bを実行する。中継処理2642aおよび等値化/転送処理2642bの詳細については動作例において明らかにするが概略は以下の通りである。すなわち、等値化/転送処理2642bには、等値化ケーブル500を介した通信により、IOスレーブ装置から収集した監視データを等値化する処理と当該監視データを他方のネットワーク装置200に転送する処理が含まれる。一方、中継処理2642aは、大別すると2つの処理から構成される。1つの処理は、等値化/転送処理2642bにより等値化された監視データを、第2通信I/F部230に接続された制御装置100へ転送する処理である。もう1つの処理は、等値化/転送処理2642bにより他方のネットワーク装置200から転送された監視データを、第4通信I/F部250に接続された制御装置100へ転送する処理である。
次に、制御装置100の構成について説明する。図3は、制御装置100の構成例を示すブロック図である。制御装置100は、図3に示すように、制御部110、第1通信I/F部120、第2通信I/F部130、第3通信I/F部140、記憶部150、およびこれら構成要素間のデータ授受を仲介するバス160を含む。
制御部110は、例えばCPUである。制御部110は記憶部150(より正確には不揮発性記憶部154)に記憶されている制御プログラム1542を実行することにより、制御装置100の制御中枢として機能する。制御部110が制御プログラム1542にしたがって実行する処理の詳細については後に明らかにする。第1通信I/F部120、第2通信I/F部130、および第3通信I/F部140の各々は、例えばNIC(Network Interface Card)である。これら各通信I/F部の役割は以下の通りである。
第1通信I/F部120はネットワーク装置接続バスを介してネットワーク装置200に接続される。より詳細に説明すると、制御装置100Aの第1通信I/F部120はネットワーク装置接続バス60Aを介してネットワーク装置200Aに接続されている。同様に制御装置100Bの第1通信I/F部120はネットワーク装置接続バス60Bを介してネットワーク装置200Bに接続される。第1通信I/F部120は、その接続先のネットワーク装置200から送信される監視データの受信、および接続先のネットワーク装置200への演算データの送出を行う。第1通信I/F部120は、接続先のネットワーク装置200から受信した監視データや接続先のネットワーク装置200へ送信する演算データを蓄積する通信バッファを有する(図3では図示略)。
第2通信I/F部130は等値化ケーブルの接続されるポートを有し、当該ポートには等値化ケーブル400が接続される。第2通信I/F部130は、等値化ケーブル400を介して他方の制御装置と演算データの等値化のための通信を行う。第2通信I/F部130は、接続先の制御装置と通信するための演算データを蓄積する通信バッファを有する(図3では図示略)。
第3通信I/F部140は冗長化接続バスを介してネットワーク装置200に接続される。より詳細に説明すると、制御装置100Aの第3通信I/F部140は、冗長化接続バス600を介してネットワーク装置200Bに接続される。同様に制御装置100Bの第3通信I/F部140は、冗長化接続バス700を介してネットワーク装置200Aに接続される。第3通信I/F部140は、その接続先のネットワーク装置200から送信される監視データの受信、および接続先のネットワーク装置200への演算データの送出を行う。第3通信I/F部140は、接続先のネットワーク装置200から受信した監視データや接続先のネットワーク装置200へ送信する演算データを蓄積する通信バッファを有する(図3では図示略)。
記憶部150は、図3に示すように揮発性記憶部152と不揮発性記憶部154とを有する。揮発性記憶部152は、例えばRAM(Random Access Memory)である。揮発性記憶部152は、制御プログラム1542を実行するためのワークエリアとして使用される。また、揮発性記憶部152は、ネットワーク装置200へ伝送する演算データを一時的に蓄積する演算データバッファ1522の役割も果たす。さらに、揮発性記憶部152には、当該揮発性記憶部152を有する制御装置100が稼働系として動作しているのか、それとも待機系として動作しているのかを示す稼働/待機フラグが格納される。不揮発性記憶部154は例えばフラッシュROMである。不揮発性記憶部154には制御プログラム1542が予め格納されている。
制御部110は、制御装置100の電源(図示略)の投入或いはリセットを契機として不揮発性記憶部154から揮発性記憶部152へ制御プログラム1542を読み出し、その実行を開始する。制御プログラム1542にしたがって作動している制御部110は、等値化ケーブル400を介して接続している他方の制御装置100の動作状態を監視しその監視結果に応じて稼働/待機フラグを設定する処理を実行する他、演算処理1542aと等値化処理1542bを実行する。演算処理1542aおよび等値化処理1542bの詳細については動作例において明らかにするが概略は以下の通りである。すなわち、等値化処理1542bは、等値化ケーブル400を介した通信により、演算データを等値化する処理である。演算処理1542aは、接続されたネットワーク装置200A或いはネットワーク装置200Bから受信した監視データについて演算し、当該演算結果による演算データを生成し、当該演算データを第1通信I/F部120に接続されるネットワーク装置200へ転送する処理である。
以上が、冗長化制御システム1全体、ネットワーク装置200および制御装置100の構成である。
(B:動作)
次いで、図4〜図11を参照しつつ、本実施形態の動作を説明する。以下に説明する動作例では制御装置100Aおよびネットワーク装置200AよりなるA系が稼働系であり、制御装置100Bおよびネットワーク装置200BよりなるB系が待機系であるとする。また、以下に説明する動作例では、動作開始時点ではネットワーク装置200Aおよびネットワーク装置200Bの各々の監視データバッファ2622が空であり、さらに動作開始時点では制御装置100Aおよび制御装置100Bの各々の演算データバッファ1522が空である場合について説明する。さらに、以下ではネットワーク装置200Aに伝送される監視データを「監視データA」と呼び、ネットワーク装置200Bに伝送される監視データを「監視データB」と呼ぶ。監視データAと監視データBは基本的には同一のデータであるが、各々をサンプリングする際のサンプリングタイミングのズレにより微妙に異なる場合がある。そして、以下では制御装置100Aが演算し当該演算結果により生成した演算データを「演算データA」と呼び、制御装置100Bが演算し当該演算結果により生成した演算データを「演算データB」と呼ぶ。演算データAと演算データBは基本的には同一のデータであるが、各々の演算に関与する制御装置100が異なるので微妙に異なる場合がある。
(B−1:ネットワーク装置接続バス60Aが正常である場合の動作)
まず、図4に示すように、ネットワーク装置接続バス60Aが正常である場合の動作について説明する。ネットワーク装置接続バス60Aが正常であるとは、ネットワーク装置接続バス60Aが切断されておらず、ネットワーク装置200Aが制御装置100Aと正常に通信が行える状態にあるということである。
IOスレーブ装置は、入力信号(若しくはセンサ等の出力信号)をサンプリングして制御装置100Aおよび制御装置100Bの各々に送信する監視データを生成し、IOネットワーク30へ送信する。IOスレーブ装置が送信する監視データには、当該監視データの送信先および送信元を示す情報(通信アドレスやノード番号)と当該監視データを一意に示す識別子(例えば、シーケンス番号)とを含むヘッダが付与されている。IOスレーブ装置から送信された監視データは、IOネットワーク30を介してネットワーク装置200Aおよびネットワーク装置200Bの各々へと伝送される。
ネットワーク装置200Aの第1通信I/F部220は、IOネットワーク30から送信される監視データを受信すると、当該受信した監視データを第1通信I/F部220内の通信バッファに書き込む。ネットワーク装置200Bにおいても同様に、ネットワーク装置200Bの第1通信I/F部220内の通信バッファには、IOネットワーク30から受信した監視データが書き込まれる。つまり、本動作例では、ネットワーク装置200Aの第1通信I/F部220内の通信バッファには監視データAが格納され、ネットワーク装置200Bの第1通信I/F部220内の通信バッファには監視データBが格納される。
ネットワーク装置200Aの制御部210は、第1通信I/F部220内の通信バッファへの監視データの書き込み(換言すれば、接続先のIOネットワーク30からの監視データの受信)を契機として中継処理2642aを実行する。図5に示すように、中継処理2642aでは、制御部210は、第1通信I/F部220内の通信バッファから監視データを読み出し(図5(A):S100)、監視データバッファ2622へ当該監視データを書き込む(図5(A):S110)。このため、本動作例では、ネットワーク装置200Aの監視データバッファ2622には監視データAが格納される。ネットワーク装置200Bでも同様にS100およびS110の処理が実行され(図5(B)参照)、監視データバッファ2622には監視データBが格納される。なお、監視データバッファ2622への監視データの書き込みを行う際には、制御部210は、等値化済であるか否かを示すフラグに等値化済でないことを示す第1の値(例えば、0)をセットし、当該第1の値をセット済のフラグを上記監視データに付与して監視データバッファ2622に書き込む。
ネットワーク装置200Aでは、制御部210は、等値化済でないことを示すフラグを付与された監視データの監視データバッファ2622への書き込みを契機として、等値化/転送処理2642bを実行する。図6は、ネットワーク装置200の制御部210が中継制御プログラム2642にしたがって実行する等値化/転送処理2642bの流れを示すフローチャートである。図6に示すように、等値化/転送処理2642bでは、制御部210は、自装置が稼働系として動作しているのか否かを判定する(ステップSA100)。具体的には、制御部210は、揮発性記憶部262に格納されている稼働/待機フラグを参照し、当該フラグの値が稼働系を示す値であれば、自装置は稼働系として動作していると判定する。そして、ステップSA100の判定結果が“Yes”であれば、制御部210は、ステップSA110の処理を実行し、逆にステップSA100の判定結果が“No”であれば、制御部210はステップSA120の処理を実行する。前述したように、本動作例では、ネットワーク装置200Aは稼働系として動作している。このため、ネットワーク装置200Aの制御部210が実行する等値化/転送処理2642bではステップSA100の判定結果は“Yes”となり、ステップSA110の処理が実行される。
ステップSA110では、制御部210は監視データバッファ2622から等値化済でないことを示すフラグを付与された監視データを読み出し(図5(A):S120)、当該監視データのヘッダの送信先を示す情報を制御装置100Aからネットワーク装置200Bを示す情報に書き換え、当該監視データを第3通信I/F部240を介してその接続先のネットワーク装置200Bへ転送する(図5(A):S130)。前述したように、ネットワーク装置200Aの監視データバッファ2622には、等値化済でないことを示すフラグを付与された監視データとして監視データAが格納されている。このため、本動作例では、等値化ケーブル500を介してネットワーク装置200Aからネットワーク装置200Bへ監視データAが転送される。
ネットワーク装置200Bでは、制御部210は、等値化ケーブル500を介して送信されてくるデータを第3通信I/F部240により受信したことを契機として、等値化/転送処理2642bを実行する。ネットワーク装置200Bの制御部210が実行する等値化/転送処理2642bにおいても前述したステップSA100の判定が行われる。本動作例ではネットワーク装置200Bは待機系として動作しているため、ネットワーク装置200Bの制御部210が実行する等値化/転送処理2642bのステップSA100の判定結果は“No”になり、ステップSA120の処理が実行される。
ステップSA120では、図7に示すネットワーク装置受信処理が実行される。ネットワーク装置受信処理では、制御部210は、等値化ケーブル500を介して受信したデータが自装置宛てのデータであるか否かを判定する(ステップS601)。具体的には、制御部210は、第3通信I/F部240に格納されている監視データのヘッダの送信先を参照し、当該監視データが自装置宛てか否かを判定する。ステップS601の判定結果が“Yes”であれば、制御部210は、等値化処理を実行する(ステップS602)。ステップS602では、制御部210は、第3通信I/F部240により受信された監視データを当該第3通信I/F部240から取得し(図5(B):S140)、当該監視データで監視データバッファ2622に格納されている該当監視データ(図5(B)のS140にて取得した監視データと送信元が同一であり、かつ識別子が一致する監視データ)を上書きし(図5(B):S150)、当該監視データに付与されているフラグを等値化済であることを示す第2の値(例えば、1)に書き換える。これにより、ネットワーク装置200Bの監視データバッファ2622に格納されている監視データは監視データBから監視データAに更新される。
ネットワーク装置200Bの制御部210は、上記の要領で監視データの等値化を完了すると、等値化ケーブル500を介して等値化完了をネットワーク装置200Aへ通知する(ステップS603)。ネットワーク装置200Aの制御部210は、上記通知の受信を契機として、図5(A)のS130にて転送した監視データのフラグを上記第2の値に更新する。以上の動作が為される結果、ネットワーク装置200Aおよびネットワーク装置200Bの各々の監視データバッファ2622には、監視データAが格納され、当該監視データAには等値化済を示すフラグが付与された状態となる。
ネットワーク装置200Aの制御部210は、監視データバッファ2622に格納されている監視データに付与されているフラグが等値化済を示す値に更新されたことを契機として中継処理2642aを再開し、図5(A)のS160およびS170の各処理を実行する。S160の処理では、制御部210は、等値化済を示すフラグを付与されている監視データを監視データバッファ2622から読み出す。そして、S170の処理では、図8に示すネットワーク装置送信処理が実行される。
図8に示すネットワーク装置送信処理では、制御部210は、等値化済を示すフラグを付与されている監視データを監視データバッファ2622から読み出したことを契機に、前述したステップSA100と同様に、自装置が稼働系として動作しているのか否かを判定する(ステップS701)。そして、ステップS701の判定結果が“Yes”であれば、制御部210は、ステップS702以降の処理を実行し、逆にステップS701の判定結果が“No”であれば、制御部210はステップS703の処理を実行する。前述したように、本動作例では、ネットワーク装置200Aは稼働系として動作している。このため、ネットワーク装置200Aの制御部210が実行するネットワーク装置送信処理ではステップS701の判定結果は“Yes”となり、ステップS702以降の処理が実行される。ステップS702では、制御部210は、ネットワーク装置接続バス60Aが正常であるか否かを判定する。
本動作例ではネットワーク装置接続バス60Aは正常であるので、ステップS702の判定結果が“Yes”となり、制御部210は、ステップS703の処理を実行する。このステップS703では、制御部210は、S160の処理で読み出した監視データを第2通信I/F部230内の通信バッファに書き込み、接続先の制御装置100Aへ送信する。ステップS703の処理により、図4に示す一点鎖線のように、ネットワーク装置200Aから制御装置100Aへ監視データAが転送される。
ネットワーク装置200Bでは、等値化完了の通知を送信(ステップS603)したことを契機に中継処理2642aが再開され、図5(B)のS160およびS170の各処理が実行される。本動作例ではネットワーク装置200Bは待機系として動作するため、ネットワーク装置200Bの制御部210が実行するネットワーク装置送信処理ではステップS701の判定結果は“No”となり、ステップS703の処理が実行される。ステップS703の処理により、ネットワーク装置200Bから制御装置100Bへ監視データAが転送される。
なお、監視データの送受信に比較して上記通知の送受信は十分に高速に行うことができるため、ネットワーク装置200Aおよびネットワーク装置200Bの各々における上記フラグの更新は略同期して実行され、S160およびS170の各処理も略同期して実行される。このため、ネットワーク装置200Aから制御装置100Aへの監視データAの送信と、ネットワーク装置200Bから制御装置100Bへの監視データAの送信はほぼ同期して実行される。
次いで、図9および図10を参照しつつ制御装置100の動作を説明する。制御装置100Aの第1通信I/F部120は、ネットワーク装置接続バス60Aから送信されてくる監視データを受信すると、当該受信した監視データを第1通信I/F部120内の通信バッファに書き込む。制御装置100Bにおいても同様に、制御装置100Bの第1通信I/F部120内の通信バッファには、ネットワーク装置接続バス60Bから受信した監視データが書き込まれる。
制御装置100Aの制御部110は、第1通信I/F部120内の通信バッファへの監視データの書き込みを契機として演算処理1542aを実行する。図9に示すように、演算処理1542aでは、制御部110は、第1通信I/F部120内の通信バッファから監視データを読み出し(図9(A):S200)、監視データについて演算を行い、当該演算結果による演算データAを生成し、演算データバッファ1522へ当該演算データAを書き込む(図9(A):S210)。演算データAのヘッダには、当該演算データAの基となった監視データのヘッダに付与されていたものと同じ識別子が付与される。制御装置100Bにおいても同様にS200およびS210の処理が実行され(図9(B)参照)、演算データバッファ1522には演算データBが格納される。具体的には、制御装置100Bの制御部110は、第1通信I/F部120内の通信バッファへの監視データの書き込みを契機として演算処理1542aを実行する。制御装置100Bが生成した演算データBのヘッダにも、演算データAのヘッダと同様に、当該演算データBの基となった監視データのヘッダに付与されていた識別子が付与される。このため、一の監視データから生成された演算データAと演算データBの両者のヘッダには同じ識別子が付与される。なお、演算データバッファ1522への演算データの書き込みを行う際には、制御部110は、等値化済であるか否かを示すフラグに等値化済でないことを示す第1の値(例えば、0)をセットし、当該第1の値をセット済のフラグを上記演算データに付与して演算データバッファ1522に書き込む。
制御装置100Aでは、制御部110は、等値化済でないことを示すフラグを付与された演算データの演算データバッファ1522への書き込みを契機として、等値化処理1542bを実行する。図10は、等値化処理1542bの流れを示すフローチャートである。図10に示すように、等値化処理1542bでは、制御部110は、まず、自装置が稼働系として動作しているのか否かを判定する(ステップSA200)。具体的には、制御部110は、揮発性記憶部152に格納されている稼働/待機フラグを参照し、当該フラグの値が稼働系を示す値であれば、自装置は稼働系として動作していると判定する。そして、ステップSA200の判定結果が“Yes”であれば、制御部110は、ステップSA210の処理を実行し、逆にステップSA200の判定結果が“No”であれば、制御部110はステップSA220の処理を実行する。前述したように、本動作例では、制御装置100Aは稼働系として動作している。このため、制御装置100Aの制御部110が実行する等値化処理1542bではステップSA200の判定結果は“Yes”となり、ステップSA210の処理が実行される。
ステップSA210では、制御部110は演算データバッファ1522から等値化済でないことを示すフラグを付与された演算データを読み出し(図9(A):S220)、当該演算データを第2通信I/F部130を介してその接続先の制御装置へ転送する(図9(A):S230)。前述したように、制御装置100Aの演算データバッファ1522には、等値化済でないことを示すフラグを付与された演算データとして演算データAが格納されている。このため、本動作例では、等値化ケーブル400を介して制御装置100Aから制御装置100Bへ演算データAが転送される。
制御装置100Bでは、制御部110は、等値化ケーブル400を介して送信されてくるデータを第2通信I/F部130により受信したことを契機として、等値化処理1542bを実行する。制御装置100Bの制御部110が実行する等値化処理1542bにおいても前述したステップSA200の判定が行われる。本動作例では制御装置100Bは待機系として動作しているため、制御装置100Bの制御部110が実行する等値化処理1542bのステップSA200の判定結果は“No”になり、ステップSA220の処理が実行される。
ステップSA220では、演算データの等値化が実行される。より詳細に説明すると、ステップSA220では、制御部110は、第2通信I/F部130により受信された演算データを当該第2通信I/F部130から取得し(図9(B):S240)、当該演算データで演算データバッファ1522に格納されている該当演算データ(図9(B)のS240にて取得した演算データとヘッダに付与された識別子が一致する演算データ)を上書きし(図9(B):S250)、当該演算データに付与されているフラグを等値化済であることを示す第2の値(例えば、1)に書き換える。これにより、制御装置100Bの演算データバッファ1522に格納されている演算データは演算データBから演算データAに更新される。
制御装置100Bの制御部110は、上記の要領で監視データの等値化を完了すると、等値化ケーブル400を介して等値化完了を制御装置100Aへ通知する(ステップSA230)。制御装置100Aの制御部110は、上記通知の受信を契機として、図9(A)のS230にて転送した演算データのフラグを上記第2の値に更新する。以上の動作が為された結果、制御装置100Aおよび制御装置100Bの各々の演算データバッファ1522には、演算データAが格納され、当該演算データAには等値化済を示すフラグが付与された状態となる。
制御装置100Aの制御部110は、演算データバッファ1522に格納されている演算データに付与されているフラグが等値化済を示す値に更新されたことを契機として演算処理1542aを再開し、図9(A)のS260およびS270の各処理を実行する。S260の処理では、制御部110は、等値化済を示すフラグを付与されている演算データを演算データバッファ1522から読み出す。そして、S270の処理では、当該演算データにその送信先となる制御対象装置を示す情報を付与して第1通信I/F部120内の通信バッファに書き込む。
このようにして第1通信I/F部120内の通信バッファに書き込まれた演算データは、監視データと同じ通信経路を逆順(すなわち、制御装置100A→ネットワーク装置接続バス60A→ネットワーク装置200A→IOネットワーク30→制御対象装置の順)をたどり、当該演算データの送信先に到達する。制御対象装置は当該演算データに従った処理を実行する。これにより、制御対象装置の作動制御が実現される。
以上が、ネットワーク装置接続バス60Aが正常である場合の動作である。
(B−2:ネットワーク装置接続バス60Aが正常でない場合の動作)
次に、図11に示すように、ネットワーク装置接続バス60Aが正常でない(すなわち、ネットワーク装置接続バス60Aが切断されている)場合の動作について説明する。この場合、ネットワーク装置200Aの実行するネットワーク装置送信処理(図8参照)のステップS702の判定結果は“No”となる。ステップS702の判定結果が“No”となるため、ネットワーク装置200Aの制御部210は、S160の処理で読み出した監視データを第3通信I/F部240内の通信バッファに書き込み、接続先のネットワーク装置200Bへ送信する(ステップS704)。ステップS704では、制御部210は、監視データのヘッダの送信先を示す情報を書き換えない。そのため、ネットワーク装置200Aから等値化ケーブル500を介してネットワーク装置200Bへ転送される監視データのヘッダの送信先を示す情報は、制御装置100Aを示す情報のままである。
前述したように、ネットワーク装置200Bの制御部210は、第3通信I/F部240内の通信バッファに監視データが書き込まれたことを契機に等値化/転送処理2642bを実行する。本動作例ではネットワーク装置200Bは待機系として動作しているため、ステップSA100の判定結果は“No”となり、制御部210は、ステップSA120のネットワーク装置受信処理を実行する。ここでは、等値化ケーブル500を介して受信した監視データのヘッダの送信先を示す情報が自装置ではなく制御装置100Aを示す情報なので、図7に示すネットワーク装置受信処理のステップS601の判定結果は“No”となり、制御部210は、ステップS604の処理を実行する。このステップS604では、制御部210は、第3通信I/F部240内の通信バッファに格納されている監視データを読み出し(図5:S140)、第4通信I/F部250を介してその接続先の制御装置100Aへ転送する(図5(B):S180)。この動作により、IOスレーブ装置から制御装置100Aへ送信された監視データは、図11における一点鎖線で示すように、ネットワーク装置200A、等値化ケーブル500、ネットワーク装置200B、および冗長化接続バス600を経由して制御装置100Aに伝送される。
以上のような動作例により、ネットワーク装置200Aから制御装置100Aへ監視データAが送信され、ネットワーク装置200Bから制御装置100Bへも監視データAが送信される。
以上が、ネットワーク装置接続バス60Aが正常でない場合の動作である。
本実施形態では、稼働系の制御装置(すなわち、制御装置100A)と稼働系のネットワーク装置(すなわち、ネットワーク装置200A)とを接続するネットワーク装置接続バス60Aが切断された場合であっても、IOスレーブ装置から制御装置100Aへ向けて送信された監視データが、ネットワーク装置200A、等値化ケーブル500、ネットワーク装置200Bおよび冗長化接続バス600を経由して制御装置100Aに伝送されるため、制御装置100についての稼働系/待機系の切り替えを行う必要はない。そのため、本実施形態によれば、従来の冗長化制御システム3(図19参照)に比較して稼働系/待機系の切り替えの頻度を減らすことができるのである。
また、図19に示す従来の冗長化制御システム3では、監視データの等値化を制御装置(すなわち、制御装置10Aおよび制御装置10B)に行わせていたため、監視データのデータ量が増えると、その等値化の分だけ制御装置の処理負荷が高くなり、本来の演算の高速実行に支障が生じる虞があった。これに対して、本実施形態では、監視データの等値化は等値化ケーブル500を介した通信によりネットワーク装置200Aおよびネットワーク装置200Bによって実行される。このため、IOネットワーク30に接続されるIOスレーブ装置の増加等に起因して制御装置100Aおよび制御装置100Bへ転送される監視データのデータ量が増えたとしても、制御装置100Aおよび制御装置100Bにかかる処理負荷がその等値化の分だけ高くなることはなく、本来の演算の実行に何ら支障が発生することはない。
<第2実施形態>
本実施形態の冗長化制御システム1の構成は第1実施形態の冗長化制御システム1と同じであるため、同一の構成要素には同一の符号を付し、以下の説明では図1〜図10(ただし、図4および図8を除く)を援用する。第1実施形態の冗長化制御システム1と第2実施形態の冗長化制御システム1の違いは、制御装置100が揮発性記憶部262にデータ受信済みリストを有していることと、ネットワーク装置送信処理(図5:S170)の処理内容と、制御装置受信処理(図9:S200)の処理内容とである。以下では、これらについて説明する。
図12は、本実施形態のネットワーク装置送信処理の流れを示すフローチャートである。ネットワーク装置200Aの制御部210は、等値化済を示すフラグを付与されている監視データを監視データバッファ2622から読み出す処理(図5:S160)が完了したことを契機に、ネットワーク装置送信処理を開始する。制御部210は、当該監視データを第2通信I/F部230内の通信バッファに書き込み、制御装置100Aへ送信する(ステップS1201)。ステップS1201の処理が完了後、制御部210は、第2通信I/F部230内の通信バッファに書き込んだ監視データと同じ監視データを第3通信I/F部240内の通信バッファに書き込み、ネットワーク装置200Bへ送信する(ステップS1202)。
第1実施形態のネットワーク装置送信処理では、ネットワーク装置接続バス60Aが正常であるか否かにより、監視データを制御装置100Aとネットワーク装置200Bのいずれか一方に送信していたが、本実施形態のネットワーク装置送信処理では、ネットワーク装置接続バス60Aが正常であるか否かに関わらず、監視データを制御装置100Aとネットワーク装置200Bの両者に送信する。そのため、ネットワーク装置接続バス60Aに切断が発生していなければ、制御装置100Aは、同じ内容の2つの監視データを受信することになる。
図13は、制御装置100が実行する制御装置受信処理の流れを示すフローチャートである。第1通信I/F部120或いは第3通信I/F部140が監視データを受信したことを契機に、制御装置100Aの制御部110は、制御装置受信処理を開始する。この制御装置受信処理では、制御装置100Aの制御部110は、制御装置100Aの揮発性記憶部262に記憶されているデータ受信済みリストを参照して、受信したデータがデータ受信済みリストに登録されているか否かを判定する(ステップS1301)。データ受信済みリストとは、監視データのヘッダに付与されている当該監視データの送信元を示す情報と当該監視データを一意に示す識別子(例えば、IOスレーブ装置が監視データを生成した時のタイムスタンプおよび当該監視データのシーケンス番号)からなるリストである。
ステップS1301の判定結果が“No”であれば、制御装置100Aは、受信した監視データのヘッダを参照して当該監視データに関する情報をデータ受信済みリストに登録する(ステップS1302)。そして、制御装置100Aは、当該監視データに関する演算を行う受信処理を実行する(ステップS1303)。一方、ステップS1301の判定結果が“Yes”であれば、制御装置100Aは、受信した監視データを破棄する(ステップS1304)
図14は、ネットワーク装置接続バス60Aが正常である場合のIOスレーブ装置から制御装置100Aに送信された監視データの送信の流れを示す図である。図14では、監視データの流れは一点鎖線により示されている。図示しないIOスレーブ装置が生成した制御装置100A宛ての監視データは、ネットワーク装置200Aからネットワーク装置接続バス60Aを介して制御装置100Aに伝送される第1の伝送経路と、ネットワーク装置200Aから等値化ケーブル500、ネットワーク装置200B、および冗長化接続バス600を介して制御装置100Aに伝送される第2の伝送経路との両者で伝送される。制御装置100Aの制御部110は、データ受信済みリストを参照し、既受信の監視データを破棄する。本実施形態では、第1の伝送経路経由の監視データの方がネットワーク装置200Bを経由しない分だけ先に制御装置100Aに到達し、当該監視データの受信を契機として、制御装置100Aは当該監視データの送信元を示す情報と当該監視データを一意に示す識別子をデータ受信済みリストに登録する。制御装置100Aは、第2の伝送経路に沿って伝送された監視データを受信すると当該監視データを破棄し、同一の監視データに基づく演算が重複して行われることはない。なお、ネットワーク装置接続バス60Aが切断されると、前述した図11と同じ監視データの送信の流れとなるため、説明は省略する。第1実施形態の冗長化制御システム1と同様に、本実施形態の冗長化制御システム1も、稼働系の制御装置100と稼働系のネットワーク装置200を接続するネットワーク装置接続バス(本実施形態では、ネットワーク装置接続バス60A)の切断により、稼働系/待機系を切り替える必要がない。
本実施形態によっても、ネットワーク装置接続バスの切断により、第1実施形態と同じ効果が得られる。さらに、第1実施形態と異なり本実施形態では、接続先のネットワーク装置接続バスが正常であるか否かの判定をネットワーク装置200側で行わない分だけ稼働系のネットワーク装置200の処理負荷が軽減される。その一方、本実施形態では、受信した監視データが既受信であるか否かを判定する必要があるため、第1実施形態よりも稼働系の制御装置100の処理負荷が増える。したがって、ネットワーク装置200の処理負荷の軽減が優先される場合は第2実施形態を採用すればよく、その逆であれば第1実施形態を採用すればよい。
<変形例>
以上本発明の第1および第2実施形態について説明したが、これら実施形態に以下の変形を加えても勿論良い。
(1)上記各実施形態では、ネットワーク装置200Aとネットワーク装置200Bのうちの稼働系のネットワーク装置200から待機系のネットワーク装置200へ等値化ケーブル500を介して監視データを送信し記憶させるといったプッシュ型のデータ通信で監視データの等値化を実現する場合について説明した。しかし、等値化ケーブル500経由で稼働系のネットワーク装置200から監視データを取得して自装置の監視データを更新する処理を待機系のネットワーク装置200に実行させるプル型のデータ通信で監視データの等値化を実現しても良い。制御装置100Aおよび制御装置100Bについても同様にプル型のデータ通信で演算データの等値化を実現してもよい。
(2)上記各実施形態では、IOスレーブ装置から収集した監視データを制御装置100へ転送するゲートウェイ装置への本発明の適用例を説明した。しかし、本発明の適用対象はゲートウェイ装置に限定される訳ではなく、ルータやリピータ、スイッチングハブなどの他の種類の中継装置であっても良い。さらに、本発明の中継装置に接続されるネットワークはIOネットワークなどの制御系ネットワークやシリアルバスに限定される訳ではなく、TCPなどの汎用通信プロトコルにしたがったデータ通信を仲介する一般的な情報系ネットワークであっても良い。要は、監視データを収集し、当該監視データを使用した演算を実行する制御装置と、監視データを出力する機器に接続されたネットワークとに接続され、当該ネットワークを介して受信したデータを当該制御装置へ転送する中継装置であれば、本発明を適用可能である。
(3)上記各実施形態の通信システムに含まれるネットワーク装置(中継装置)や制御装置を単体で提供する(すなわち、製造・販売する)態様であっても良い。このようなネットワーク装置や制御装置を従来の冗長化制御システムにおけるネットワーク装置や制御装置と置き換え、中継装置間通信手段の役割を果たす第1の等値化ケーブル、制御装置間通信手段の役割を果たす第2の等値化ケーブル、および2つの冗長化接続バスでそれらネットワーク装置および制御装置を図1に示すように接続することで、従来の冗長化制御システムを上記各実施形態の通信システムとして機能させることが可能になるからである。
(4)上記各実施形態では、本発明の特徴を顕著に示す中継処理2642aおよび等値化/転送処理2642bをソフトウェアにより実現した。しかし、中継処理2642aを実行する中継手段および等値化/転送処理2642bを実行する等値化/転送手段の各々を電子回路で構成し、これら電子回路を組み合わせて上記各実施形態のネットワーク装置200を構成してもよい。同様に、本発明の特徴を顕著に示す演算処理1542aおよび等値化処理1542bの各処理を実行する演算手段および等値化手段の各々を電子回路で構成し、これら電子回路を組み合わせて上記各実施形態の制御装置100を構成してもよい。また、上記各実施形態では制御装置間通信手段、および中継装置間通信手段として等値化ケーブルを用いたが、無線LANインタフェースなどの無線通信手段を上記各通信手段として用いても良く、冗長化接続バスについても同様である。また、ネットワーク装置200Aとネットワーク装置200Bとが1つの筐体に実装される場合には、両装置の接続されるバスを中継装置間通信手段として用いても良い。制御装置間通信手段についても同様である。
(5)上記各実施形態では、制御装置100Aおよび制御装置100Bの各々が、稼働系であるか待機系であるかを問わずに、接続先のネットワーク装置200を介して受信した監視データを使用して機器制御のための演算を行う場合(すなわち、ホットスタンバイ方式の制御システムへの本発明の適用例)を説明した。しかし、本発明の適用対象はホットスタンバイ方式の制御システムに限定されるものではなく、ウォームスタンバイ方式の制御システムに本発明を適用しても良い。ウォームスタンバイ方式の制御システムは、二重化された制御装置の一方が稼働系となって上記演算を実行し、他方は待機系となって稼働系の故障に備える点ではホットスタンバイ方式の制御システムと同一であるが、待機系の制御装置では上記演算が実行されない点が異なる。また、上記実施形態では、待機系のネットワーク装置においても、第1通信I/F部220により受信した監視データを監視データバッファ2622に書き込む処理(図5(B):S100およびS110の各処理)を実行したが、待機系のネットワーク装置においては当該処理を省略しても良い。図5(B)のS100およびS110の各処理により監視データバッファ2622により書き込まれた監視データは、等値化/転送処理2642bのステップSA120の処理で上書きされてしまうからである。待機系の制御装置においても同様に、演算処理1542aを行った演算データを演算データバッファ1522に書き込む処理(図9(B):S200およびS210の各処理)を省略しても良い。図9(B)のS200およびS210の各処理により演算データバッファ1522により書き込まれた演算データは、等値化処理1542bのステップSA220の処理で上書きされてしまうからである。
(6)上記第1実施形態では、自装置に接続されているネットワーク装置接続バスが正常であるか否かを判定するための判定手段をネットワーク装置200が有しているが、制御装置100が当該判定手段を有していてもよい。判定手段を制御装置100に設けることで、制御装置100の処理負荷は増えるが、ネットワーク装置200の処理負荷を減らすことができる。そのため、判定手段を制御装置100に設ける態様は、ネットワーク装置200の処理負荷を減らしたい場合に有効である。また、判定手段をネットワーク装置200と制御装置100の両者が有していてもよい。この場合、ネットワーク装置200と制御装置100の何れか一方の判定手段が故障していても判定を行うことができる点に効果がある。なお、判定手段を制御装置100に設ける態様では、稼働系の制御装置100には、当該判定手段の判定結果を示す判定結果データを冗長化接続バスを介してその接続先のネットワーク装置200(すなわち、待機系のネットワーク装置)に送信する処理を実行させればよく、待機系のネットワーク装置200には、冗長化接続バスを介して受信した判定結果データを等値化ケーブル500を介して稼働系のネットワーク装置200に送信させるようにすればよい。また、稼働系の制御装置100には、判定結果データを等値化ケーブル400を介して待機系の制御装置100に送信する処理を実行させ、待機系の制御装置100には等値化ケーブル400を介して受信した判定結果データを、冗長化接続バスを介して稼働系のネットワーク装置200に送信する処理(或いは、待機系のネットワーク装置200および等値化ケーブル500経由で稼働系のネットワーク装置200へ送信する処理)を実行させるようにすればよい。
(7)上記第1実施形態では、自装置に接続されているネットワーク装置接続バスが正常であるか否かを判定するための判定手段をネットワーク装置200が有していたが、制御装置100やネットワーク装置200とは異なる判定装置を設けて、当該判定装置に当該判定手段の役割を担わせてもよい。この態様は、制御装置100とネットワーク装置200の両者の処理能力に余裕がない場合に有効である。
(8)上記第1実施形態では、稼働系の制御装置100(すなわち、制御装置100A)と稼働系のネットワーク装置200(すなわち、ネットワーク装置200A)とを接続するネットワーク装置接続バス(すなわち、ネットワーク装置接続バス60A)が切断されると、稼働系のネットワーク装置200、等値化ケーブル500、待機系のネットワーク装置200および冗長化接続バス600を経由して監視データを稼働系の制御装置100に送信したが、図15において一点鎖線で示すように、稼働系のネットワーク装置200、冗長化接続バス700、待機系の制御装置100および等値化ケーブル400を経由して監視データを稼働系の制御装置100に送信してもよい。この態様を実現するには、ネットワーク装置接続バス60Aの切断の検知を契機として、監視データを冗長化接続バス700を介して制御装置100Bに転送する処理をネットワーク装置200Aの制御部210に実行させ、さらに、制御装置100Bの制御部110には、冗長化接続バス700を介してネットワーク装置200Aから受信した監視データを等値化ケーブル400を介して制御装置100Aに転送する処理を実行させるようにすればよい。この態様は、等値化ケーブル500が切断された場合だけでなく、等値化ケーブル500が存在しない場合にも有効である。この態様は、上記第2実施形態にも適用可能であり、同様に、等値化ケーブル500が切断されたか、若しくは存在しない場合に有効である。なお、等値化ケーブル500が存在しない場合は、例えば、従来の冗長化制御システム3と同様に、制御装置100に監視データの等値化を行わせるようにすればよい。
(9)上記第2実施形態において、制御装置100が揮発性記憶部152に格納するデータ受信済みリストには、監視データのヘッダに付与されている当該監視データの送信元を示す情報と当該監視データを一意に示す識別子が登録されているが、既に受信した監視データと同一の監視データを再度受信してしまうことを防止するためのフィルタリング処理が行うことができればデータ受信済みリストは何でもよい。例えば、既に受信した監視データ全体を記憶しておくことでフィルタリング処理を実行してもよい。この場合、上記第2実施形態に比べてより正確なフィルタリング処理を実行することができる。
(10)図16に示すように、等値化ケーブル400を省略してもよい。図16の冗長化制御システム2では、等値化ケーブル400以外は第1実施形態の冗長化制御システム1と同一であるので、同一の構成要素には同一の符号が付されている。冗長化制御システム2が冗長化制御システム1と異なるのは、等値化ケーブル400を有していない点だけである。なお、演算データの等値化については、例えば、ネットワーク装置接続バス60A、ネットワーク装置200A、等値化ケーブル500、ネットワーク装置200B、およびネットワーク装置接続バス60Bを介した通信により行うようにすればよい。
図17および図18は、この態様の冗長化制御システム2において、IOスレーブ装から制御装置100Aへ宛てて送信された監視データの流れを示す図である。図17に示すように、ネットワーク装置接続バス60Aが正常である場合には、上記監視データは、IOネットワーク30、ネットワーク装置200A、およびネットワーク装置接続バス60Aを介して制御装置100Aに伝送される。ネットワーク装置接続バス60Aが切断されると、図18に示すように、上記監視データは、IOネットワーク30、ネットワーク装置200A、等値化ケーブル500、ネットワーク装置200B、および冗長化接続バス600を介して制御装置100Aに伝送される。また、上記第2実施形態のように、ネットワーク装置接続バス60Aが正常であるか否かに関わらず、ネットワーク装置200Aからネットワーク装置接続バス60Aおよび等値化ケーブル500の両者に監視データが送信されていてもよく、この場合は、制御装置100Aにデータ受信済みリストを記憶させておく必要があることが言うまでもない。
(11)上記各実施形態では、IOネットワーク30から受信した監視データを稼働系および待機系のネットワーク装置200において等値化し、等値化済の監視データを稼働系の制御装置100へ転送する場合について説明した。しかし、IOネットワーク30から受信した監視データを稼働系の制御装置100に転送した後に、当該監視データの等値化のために当該監視データを等値化ケーブル500を介して待機系のネットワーク装置200へ転送する処理を稼働系のネットワーク装置200に実行させても良い。また、稼働系の制御装置100への監視データの転送ができない場合にのみ当該監視データを等値化ケーブル500を介して待機系のネットワーク装置200へ転送する処理を稼働系のネットワーク装置200に実行させ、待機系のネットワーク装置200には、等値化ケーブル500を介して受信した監視データでIOネットワーク30を介して受信した監視データを等値化する処理と冗長化接続バスを介して当該監視データを稼働系の制御装置100へ転送する処理とを実行させても良い。また、上記第1実施形態では、稼働系の制御装置100との通信が可能であるか否かを判定し、可能であると判定した場合には監視データを稼働系の制御装置100へ転送する処理を、不可能である場合には当該監視データを等値化ケーブル500を介して待機系のネットワーク装置200へ転送する処理を、稼働系のネットワーク装置200に実行させた。しかし、上記判定を省略して稼働系の制御装置100への監視データの転送を実行し、転送に失敗した場合に当該監視データを等値化ケーブル500を介して待機系のネットワーク装置200へ転送する処理を、稼働系のネットワーク装置200に実行させても良い。
(12)上記各実施形態では、ネットワーク装置200の接続先のネットワークがIOネットワーク30である場合について説明したが、他のコントローラが接続された制御ネットワークであっても良く、制御ネットワークとIOネットワークの両者を含むネットワークであっても良い。このような態様においては、ネットワーク装置200による制御装置100への転送対象のデータはセンサ等のIOスレーブ装置から送信された監視データには限定されず、他のコントローラから送信された演算データも転送対象となる場合がある。他のコントローラから送信された演算データがネットワーク装置200による転送対象となる場合には、制御装置100はこれら演算データに基づいて新たな演算データを生成し、当該新たな演算データにしたがって制御対象装置の制御が行われることになる。
1,2,3…冗長化制御システム、10A,10B,100,100A,100B…制御装置、20A,20B,200,200A,200B…ネットワーク装置、110,210…制御部、120,220…第1通信I/F部、130,230…第2通信I/F部、140,240…第3通信I/F部、250…第4通信I/F部、150,260…記憶部、152,262…揮発性記憶部、1522,2622…監視データバッファ、154,264…不揮発性記憶部、1542…制御プログラム、2642…中継制御プログラム、1542a…演算処理、2642a…中継処理、1542b…等値化処理、2642b…等値化/転送処理、160,270…バス、30…IOネットワーク、30’…ネットワーク、40,400,500…等値化ケーブル、60A,60B…ネットワーク装置接続バス、600,700…冗長化接続バス。

Claims (14)

  1. ネットワークに接続された機器から監視データを収集し、該監視データに基づいて制御を行う制御システムにおいて、
    一方は稼働系、他方は待機系となる第1および第2の制御装置と、
    前記ネットワークに接続されているとともに前記第1の制御装置に接続され、前記第1の制御装置が稼働系であれば稼働系となり、前記第1の制御装置が待機系であれば待機系となる第1の中継装置と、
    前記ネットワークに接続されているとともに前記第2の制御装置に接続され、前記第2の制御装置が稼働系であれば稼働系となり、前記第2の制御装置が待機系であれば待機系となる第2の中継装置と、
    前記第1の制御装置と前記第2の中継装置の通信を仲介するとともに前記第2の制御装置と前記第1の中継装置の通信を仲介する冗長化通信手段と、
    前記第1の中継装置と前記第2の中継装置の通信を仲介する中継装置間通信手段と、
    を有し、
    前記稼働系の中継装置は、
    前記ネットワークを介して受信した監視データを稼働系の制御装置へ転送する第1の処理と当該監視データを前記中継装置間通信手段を介して待機系の中継装置へ転送する第2の処理のうち、少なくとも前記第1の処理を実行し、
    前記待機系の中継装置は、
    前記中継装置間通信手段を介して受信した監視データを前記冗長化通信手段を介して前記稼働系の制御装置へ転送し、
    前記稼働系の制御装置は、
    前記稼働系の中継装置から受信した監視データと、前記冗長化通信手段を介して前記待機系の中継装置から受信した監視データの何れかに基づいて前記制御を行う
    ことを特徴とする制御システム。
  2. 前記第1および第2の中継装置の各々は、前記中継装置間通信手段を介した通信により、前記ネットワークから受信した監視データの等値化を行うことを特徴とする請求項1に記載の制御システム。
  3. 前記稼働系の中継装置は、前記第1の処理による監視データの転送ができない場合に前記第2の処理を実行する
    ことを特徴とする請求項1または請求項2に記載の制御システム。
  4. 前記稼働系の中継装置は、前記第1の処理と前記第2の処理の両者を実行し、
    前記稼働系の制御装置は、接続先の中継装置から転送されてきた監視データと前記冗長化通信手段を介して前記待機系の中継装置から転送されてきた監視データの各々について既受信であるか否かを判定し、既受信であれば当該受信した監視データを破棄する一方、既受信でなければ当該受信した監視データに基づいて前記制御を実行する
    ことを特徴とする請求項1または請求項2に記載の制御システム。
  5. 前記第1および第2の制御装置間の通信を仲介する制御装置間通信手段を有し、
    前記稼働系の制御装置は、受信した監視データを基に演算データを生成し、
    前記第1および第2の制御装置の各々は、前記制御装置間通信手段を介した通信により、前記演算データの等値化を行う
    ことを特徴とする請求項1〜請求項4の何れか1の請求項に記載の制御システム。
  6. ネットワークに接続された機器から監視データを収集し、該監視データに基づいて制御を行う制御システムにおいて、
    一方は稼働系、他方は待機系となる第1および第2の制御装置と、
    前記ネットワークに接続されているとともに前記第1の制御装置に接続され、前記第1の制御装置が稼働系であれば稼働系となり、前記第1の制御装置が待機系であれば待機系となる第1の中継装置と、
    前記ネットワークに接続されているとともに前記第2の制御装置に接続され、前記第2の制御装置が稼働系であれば稼働系となり、前記第2の制御装置が待機系であれば待機系となる第2の中継装置と、
    前記第1の制御装置と前記第2の中継装置の通信を仲介するとともに前記第2の制御装置と前記第1の中継装置の通信を仲介する冗長化通信手段と、
    前記第1の制御装置と前記第2の制御装置の通信を仲介する制御装置間通信手段と、
    を有し、
    前記稼働系の中継装置は、
    前記ネットワークを介して受信した監視データを接続先の制御装置へ転送する第1の処理と当該監視データを前記冗長化通信手段を介して待機系の制御装置へ転送する第2の処理のうち、少なくとも前記第1の処理を実行し、
    前記待機系の制御装置は、
    前記冗長化通信手段を介して前記稼働系の中継装置から受信した監視データを前記制御装置間通信手段を介して前記稼働系の制御装置へ転送し、
    前記稼働系の制御装置は、
    前記稼働系の中継装置から受信した監視データと、前記制御装置間通信手段を介して前記待機系の制御装置から受信した監視データの何れかに基づいて前記制御を行う
    ことを特徴とする制御システム。
  7. 前記稼働系の制御装置は、受信した監視データを基に演算データを生成し、
    前記第1および第2の制御装置の各々は、前記制御装置間通信手段を介した通信により、前記演算データの等値化を行う
    ことを特徴とする請求項6に記載の制御システム。
  8. 前記稼働系の中継装置は、前記第1の処理による監視データの転送ができない場合に前記第2の処理を実行することを特徴とする請求項6または請求項7に記載の制御システム。
  9. 前記稼働系の中継装置は、前記第1の処理と前記第2の処理の両者を実行し、
    前記稼働系の制御装置は、接続先の中継装置から転送されてきた監視データと前記制御装置間通信手段を介して前記待機系の制御装置から転送されてきた監視データの各々について既受信であるか否かを判定し、既受信であれば当該受信した監視データを破棄する一方、既受信でなければ当該受信した監視データに基づいて前記制御を実行する
    ことを特徴とする請求項6または請求項7に記載の制御システム。
  10. 前記第1および第2の中継装置間の通信を仲介する中継装置間通信手段を有し、
    前記第1および第2の中継装置の各々は、前記中継装置間通信手段を介した通信により、前記ネットワークから受信した監視データの等値化を行うことを特徴とする請求項6〜請求項9の何れか1の請求項に記載の制御システム。
  11. 一方が稼働系となって制御を行い他方が待機系となる第1および第2の制御装置の一方に制御装置中継装置間通信手段を介して接続されるとともに、監視データを送信する機器が接続されたネットワークに接続される中継装置において、
    前記第1および第2の制御装置の他方に冗長化通信手段を介して接続されるととともに、当該他方の制御装置に接続された他の中継装置と中継装置間通信手段を介して接続され、
    前記ネットワークを介して受信した監視データを前記制御装置中継装置間通信手段の接続先へ転送する第1の処理手段と、
    前記ネットワークを介して受信した監視データを前記中継装置間通信手段の接続先へ転送する第2の処理手段と、
    前記中継装置間通信手段を介して受信した監視データを前記冗長化通信手段を介して他方の制御装置へ転送する第3の処理手段と、を有し、
    前記制御装置中継装置間通信手段の接続先が稼働系である場合には、前記第1の処理手段と前記第2の処理手段のうち少なくとも前記第1の処理手段による転送を実行し、待機系である場合には前記第3の処理手段による転送を行う
    ことを特徴とする中継装置。
  12. 一方が稼働系となって制御を行い他方が待機系となる第1および第2の制御装置の一方に制御装置中継装置間通信手段を介して接続されるとともに、監視データを送信する機器が接続されたネットワークに接続される中継装置において、
    前記第1および第2の制御装置の他方と冗長化通信手段を介して接続され、
    前記ネットワークを介して受信した監視データを前記制御装置中継装置間通信手段の接続先へ転送する第1の処理手段と、
    前記ネットワークを介して受信した監視データを前記冗長化通信手段を介して他方の制御装置へ転送する第2の処理手段と、を有し、
    前記制御装置中継装置間通信手段の接続先が稼働系である場合には、少なくとも前記第1の処理手段による転送を行う
    ことを特徴とする中継装置。
  13. 一方が稼働系となって制御を行い、他方が待機系となる2つの制御装置を含む制御システムにおける制御装置において、
    監視データを送信する機器が接続されたネットワークに各々接続された2つの中継装置の一方に制御装置中継装置間通信手段を介して接続され、他方に冗長化通信手段を介して接続され、
    前記制御装置中継装置間通信手段の接続先から受信した監視データに基づいて前記制御を行う第1の処理手段と、
    前記冗長化通信手段の接続先から受信した監視データに基づいて前記制御を行う第2の処理手段と、を有し、
    稼働系となっている場合には、前記第1の処理手段と前記第2の処理手段の何れか一方により前記制御を行う
    ことを特徴とする制御装置。
  14. 一方が稼働系となって制御を行い、他方が待機系となるとともに制御装置間通信手段を介して互いに接続された2つの制御装置を含む制御システムにおける制御装置において、
    監視データを送信する機器が接続されたネットワークに各々接続された2つの中継装置の一方に制御装置中継装置間通信手段を介して接続され、他方に冗長化通信手段を介して接続され、
    前記制御装置中継装置間通信手段の接続先から受信した監視データに基づいて前記制御を行う第1の処理手段と、
    前記制御装置間通信手段の接続先から受信した監視データに基づいて前記制御を行う第2の処理手段と、
    前記冗長化通信手段の接続先から受信した監視データを前記制御装置間通信手段を介して他方の制御装置へ転送する第3の処理手段と、を有し、
    稼働系となっている場合には、前記第1の処理手段と前記第2の処理手段のうちの何れか一方により前記制御を行い、待機系となっている場合には、前記第3の処理手段による転送を行う
    ことを特徴とする制御装置。
JP2014186086A 2014-09-12 2014-09-12 制御システム、中継装置、および制御装置 Active JP6269404B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014186086A JP6269404B2 (ja) 2014-09-12 2014-09-12 制御システム、中継装置、および制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014186086A JP6269404B2 (ja) 2014-09-12 2014-09-12 制御システム、中継装置、および制御装置

Publications (2)

Publication Number Publication Date
JP2016058013A JP2016058013A (ja) 2016-04-21
JP6269404B2 true JP6269404B2 (ja) 2018-01-31

Family

ID=55758750

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014186086A Active JP6269404B2 (ja) 2014-09-12 2014-09-12 制御システム、中継装置、および制御装置

Country Status (1)

Country Link
JP (1) JP6269404B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7003432B2 (ja) * 2017-04-06 2022-01-20 富士電機株式会社 二重化システム
WO2024075558A1 (ja) * 2022-10-03 2024-04-11 パナソニックIpマネジメント株式会社 機器システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01195544A (ja) * 1988-01-29 1989-08-07 Nec Corp デュプレックス構成システムのダウン監視方式
JP4099816B2 (ja) * 2001-07-25 2008-06-11 横河電機株式会社 冗長化コントローラ
JP5554292B2 (ja) * 2011-06-30 2014-07-23 三菱電機株式会社 二重化制御装置
JP6089766B2 (ja) * 2013-02-25 2017-03-08 日本電気株式会社 情報処理システム、及び情報処理装置の障害処理方法

Also Published As

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

Similar Documents

Publication Publication Date Title
CN106576082B (zh) 用于冗余以太网网络的方法、装置和系统
EP2997697B1 (en) Protection switched source routing
WO2016129075A1 (ja) 制御システム、および中継装置
CN104378291A (zh) 用于在工业通信网络中进行冗余的信息传输的方法和通信设备
US7526676B2 (en) Slave device having independent error recovery
JP7073624B2 (ja) 通信システム、通信装置および通信方法
JP6558882B2 (ja) 制御システム、および中継装置
JP2009246525A (ja) 転送装置及びパケット伝送装置
US9614749B2 (en) Data processing system and method for changing a transmission table
JP6269404B2 (ja) 制御システム、中継装置、および制御装置
US11251991B2 (en) Communication system, communication apparatus, communication method, and program
JP2019159812A (ja) 制御装置、制御方法、プログラムおよび通信システム
JP4344333B2 (ja) パケット転送装置、パケット転送ネットワークシステムおよびパケット転送方法
WO2019187202A1 (ja) 制御装置、車両内通信システム、監視方法及びプログラム
CN114245978B (zh) 主机装置、运算处理装置、控制器、网络系统以及方法
JP7358819B2 (ja) Ioモジュール二重化制御装置及び方法
JP6350154B2 (ja) 制御システム
JP6282222B2 (ja) 通信装置
JP2016058011A (ja) 制御システムおよび中継装置
US11757799B2 (en) Line monitor device and network switch
JP6330448B2 (ja) 制御システム、制御装置、および中継装置
JP4821627B2 (ja) 中継装置およびプログラム
JP5673037B2 (ja) 通信システム、通信方法、及び管理装置
CN104811436A (zh) 用于高速交换的介质访问控制过滤装置及其操作方法
JP6301762B2 (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: 20171124

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171218

R150 Certificate of patent or registration of utility model

Ref document number: 6269404

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