(57)【特許請求の範囲】
【請求項１】
二重化されたプログラマブルコントローラ間でデータ通信を行う二重化システムに用いられるプログラマブルコントローラにおいて、
ユーザプログラムを実行するとともに予め設定された所定のタイミングで二重化された他のプログラマブルコントローラと前記二重化システムを制御する制御データの送受信を行う制御ＣＰＵと、
外部機器から送信される所定の要求情報を受信するとともに、前記要求情報が自らのプログラマブルコントローラへの要求である場合に前記要求情報を前記制御ＣＰＵに送信し、前記要求情報が前記他のプログラマブルコントローラへの要求である場合に前記要求情報を前記他のプログラマブルコントローラへ転送する情報処理ＣＰＵと、
を備えたＣＰＵユニットを有し、
前記ＣＰＵユニットと前記他のプログラマブルコントローラとの間は直接接続され、
前記制御ＣＰＵは、前記他のプログラマブルコントローラで処理可能な前記要求情報に応じた第１の指示情報を、実行処理中のユーザプログラムとは異なるプログラムを用いて前記情報処理ＣＰＵに送信するとともに、前記他のプログラマブルコントローラから、自らのプログラマブルコントローラで処理可能な前記第１の指示情報に対応する第１の応答情報を前記情報処理ＣＰＵを介して受信し、
前記情報処理ＣＰＵは、前記第１の指示情報を前記制御データの送受信とは異なるチャネルで前記他のプログラマブルコントローラに送信するとともに、前記第１の応答情報を前記制御データの送受信とは異なるチャネルで前記他のプログラマブルコントローラから受信することを特徴とするプログラマブルコントローラ。
【請求項２】
前記情報処理ＣＰＵは、前記制御ＣＰＵと当該情報処理ＣＰＵとの間で送受信する前記第１の指示情報を、前記他のプログラマブルコントローラと自らのプログラマブルコントローラとの間で送受信可能な情報に変換して前記他のプログラマブルコントローラに送信することを特徴とする請求項１に記載のプログラマブルコントローラ。
【請求項３】
前記制御ＣＰＵと前記情報処理ＣＰＵとの間で送受信する前記第１の指示情報は、処理内容を示す情報を含むとともに、前記制御ＣＰＵと前記情報処理ＣＰＵとの間で送受信する前記第１の応答情報は、前記第１の指示情報に応じた処理内容を示す情報を含み、
前記他のプログラマブルコントローラに送信する前記第１の指示情報は、前記第１の指示情報の送信元アドレスに関する情報および前記第１の指示情報の送信先アドレスに関する情報を含むことを特徴とする請求項１または２に記載のプログラマブルコントローラ。
【請求項４】
前記情報処理ＣＰＵは、前記他のプログラマブルコントローラから送信される自らのプログラマブルコントローラで処理可能な第２の指示情報を受信して前記他のプログラマブルコントローラで処理可能な前記第２の指示情報に対応する第２の応答情報を前記他のプログラマブルコントローラに送信する際に、前記第２の応答情報を前記他のプログラマブルコントローラと自らのプログラマブルコントローラとの間で送受信可能な情報に変換して前記他のプログラマブルコントローラに送信することを特徴とする請求項１〜３のいずれか１つに記載のプログラマブルコントローラ。
【請求項５】
前記制御ＣＰＵと前記情報処理ＣＰＵとの間で送受信する前記第２の指示情報および前記第２の応答情報は、前記第２の指示情報の送信元アドレスに関する情報および前記第２の指示情報の送信先アドレスに関する情報を含み、
前記他のプログラマブルコントローラに送信する前記第２の応答情報は、前記第２の指示情報に応じた処理内容を示す情報を含むことを特徴とする請求項４に記載のプログラマブルコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、二重化システムのプログラマブルコントローラ間で通信を行うプログラマブルコントローラに関するものである。
【背景技術】
【０００２】
コンピュータシステム等において、複数のプログラマブルコントローラを接続し、互いにデータの送受信を行う技術として二重化システムがある。このような二重化システムは、ユーザプログラムを実行してシステムの制御を行う制御系システムと、ユーザプログラムの実行は行わず制御系システムの監視を行う待機系システムを含んで構成され、制御系システムと待機系システムを二重化用ケーブルで接続している。制御系システム、待機系システムは、それぞれ同様のシステム構成を有し、電源、ＣＰＵ（Central Processing Unit）、ネットワークの管理等を行う機能ユニット等を備えている。
【０００３】
制御系システムは、制御系システムに異常が発生した際に待機系システムに制御を続行させるためのデータ（以下、制御データという）を、二重化用ケーブルを介して周期的に待機系システムに送信する。これにより、二重化システムの制御に必要となる制御データを制御系システムと待機系システムで同一化（共有化）している。そして、制御系システムに異常が発生すると、待機系システムはそれまでに受信した制御データを用いて、制御系システムに代わって制御を続行する。ここでの制御データの転送範囲は静的に設定されており、プログラム実行中に動的に送信範囲を変更することはできない。
【０００４】
二重化システムにおいては、制御データの転送とは別に、例えば待機系システムの診断を行うために、制御系システムが待機系システム（他系システム）が有するデータ（診断データ）を取得するといった処理が行われる。例えば、待機系システムの機能ユニットが記憶するエラーに関する情報を制御系システムのＣＰＵユニットが取得することによって、待機系システムの機能ユニットの健全性を制御系ＣＰＵユニットが監視可能となる。また、異常発生によって制御系システムが新たな待機系システムに切り替わり、待機系システムが新たな制御系システムに切り替わった場合には、新たな制御系システムは新たな待機系システムから必要なデータを取得し、新たな待機系システムの状態を診断することによって、新たな制御系システムが新たな待機系システムのトラブルシューティング等を行うことが可能となる。
【０００５】
二重化システムにおいては、周期的に送受信される制御データや、制御系システムと待機系システムの間で任意に送受信されるデータを簡易な構成で迅速に送受信することが望まれる。
【０００６】
特許文献１に記載のコントローラは、コントローラ間でデータを共有する転写エリア以外のデータをコントローラが取得または変更する際、送信側のコントローラは転写エリアのデータの中に転写エリア外のデータにアクセスするためのコマンドを埋め込み、受信側のコントローラは埋め込まれたコマンドを検出するとともに検出したコマンドに基づいた処理を行い、処理結果を送信側のコントローラに返している。
【０００７】
【特許文献１】特開平１１−３０５８１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記従来の技術によれば、転写エリア内にコマンドやコマンドの応答を含めるため、本来転送すべき共有データの領域を圧迫し、転写エリアを共有データの転送のために有効に利用できないという問題があった。また、コマンドを埋め込むアドレスをあらかじめ送信側と受信側の両方のコントローラに設定しておく必要があるため、コントローラの設定に手間がかかるとともに、コントローラを利用する際の柔軟性に欠けるという問題があった。さらに、受信側のコントローラは、埋め込まれたコマンドを検出する手段、検出したコマンドの処理を行う手段等を実装する必要があり、コントローラの構成が複雑になるといった問題があった。
【０００９】
本発明は、上記に鑑みてなされたものであって、簡易な構成で効率よくプログラマブルコントローラ間のデータ通信を行うことが可能なプログラマブルコントローラを得ることを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するために、本発明は、二重化されたプログラマブルコントローラ間でデータ通信を行う二重化システムに用いられるプログラマブルコントローラにおいて、ユーザプログラムを実行するとともに予め設定された所定のタイミングで二重化された他のプログラマブルコントローラと前記二重化システムを制御する制御データの送受信を行う制御ＣＰＵと、外部機器から送信される所定の要求情報を受信するとともに、前記要求情報が自らのプログラマブルコントローラへの要求である場合に前記要求情報を前記制御ＣＰＵに送信し、前記要求情報が前記他のプログラマブルコントローラへの要求である場合に前記要求情報を前記他のプログラマブルコントローラへ転送する情報処理ＣＰＵと、を備えたＣＰＵユニットを有し、前記ＣＰＵユニットと前記他のプログラマブルコントローラとの間は直接接続され、前記制御ＣＰＵは、前記他のプログラマブルコントローラで処理可能な前記要求情報に応じた第１の指示情報を、実行処理中のユーザプログラムとは異なるプログラムを用いて前記情報処理ＣＰＵに送信するとともに、前記他のプログラマブルコントローラから、自らのプログラマブルコントローラで処理可能な前記第１の指示情報に対応する第１の応答情報を前記情報処理ＣＰＵを介して受信し、前記情報処理ＣＰＵは、前記第１の指示情報を前記制御データの送受信とは異なるチャネルで前記他のプログラマブルコントローラに送信するとともに、前記第１の応答情報を前記制御データの送受信とは異なるチャネルで前記他のプログラマブルコントローラから受信することを特徴とする。
【発明の効果】
【００１１】
この発明によれば、ＣＰＵユニットと他のプログラマブルコントローラとの間が直接接続され、ＣＰＵユニットが他のプログラマブルコントローラへ送信する第１の指示情報とＣＰＵユニットが他のプログラマブルコントローラから受信する第１の応答情報とを、制御データの送受信とは異なるチャネルで送受信するので、簡易な構成で効率よくプログラマブルコントローラ間のデータ通信を行うことが可能になるという効果を奏する。
【発明を実施するための最良の形態】
【００１２】
以下に、本発明にかかるプログラマブルコントローラの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１３】
実施の形態
図１は、本発明にかかる二重化システムの実施の形態の構成を示す図である。二重化システムは、プログラマブルコントローラ間を接続して相互にデータの送受信を行うシステムであり、制御系システム１００、待機系システム２００を含んで構成されている。二重化システムにおいて、制御系システム１００と待機系システム２００は、二重化用ケーブル３によって接続されている。また、制御系システム１００は制御系システムバス４１に接続され、待機系システム２００は待機系システムバス４２に接続されている。
【００１４】
制御系システム１００は、二重化システムの制御を行うプログラマブルコントローラであり、待機系システム２００は制御系システム１００の監視を行うプログラマブルコントローラである。
【００１５】
制御系システム１００は、制御系システム１００に異常が発生した際に待機系システム２００に制御を続行させるためのデータ（制御データ）を、二重化用ケーブル３を介して周期的に待機系システム２００に送信する。これにより、二重化システムの制御に必要となる制御データを制御系システムと待機系システムで同一化（共有化）する。制御系システム１００は、制御系システム１００に異常が発生した際に新たな待機系システムとして動作する。
【００１６】
待機系システム２００は、制御系システム１００に異常が発生すると、制御系システム１００から受信した制御データを用いて、制御系システム１００に代わって二重化システムの制御を行う（新たな制御系システムとして機能する）。すなわち、待機系システム２００は、制御系システム１００に異常が発生した際、制御系システム１００から二重化システムの制御を引き継ぎ、システムを停止させることなく制御を続行（系切替え）する。
【００１７】
すなわち、制御系システム１００と待機系システム２００は、それぞれ同様の構成を有し、一方のシステムが制御系システムとして機能する際には、他方のシステムが待機系システムとして機能する。
【００１８】
制御系システム１００は、制御系ＣＰＵユニット１０、制御系機能ユニット３０を含んで構成されている。制御系ＣＰＵユニット１０は、ユーザプログラムの実行やユーザプログラムの実行に伴う各機能ユニット（制御系機能ユニット３０）へのアクセス等の汎用的な処理を行うユニットである。制御系機能ユニット３０は、例えばネットワークの管理等の各機能ユニットの目的に特化した処理を行う機能ユニットである。制御系ＣＰＵユニット１０と制御系機能ユニット３０は、制御系システムバス４１によって接続されている。
【００１９】
制御系ＣＰＵユニット１０は、制御用ＣＰＵ１１、制御用ＲＯＭ（Read Only Memory）１２、制御用ＲＡＭ（Random Access Memory）１３、ユーザプログラムメモリ１４、情報処理用ＣＰＵ１５、情報処理用ＲＯＭ１６、情報処理用ＲＡＭ１７、共有ＲＡＭ１８、通信Ｉ／Ｆ１９、デバイスメモリ２０、バスＩ／Ｆ２１、制御用バス２２、情報処理用バス２３を備えている。
【００２０】
制御用バス２２は、制御用ＣＰＵ１１、制御用ＲＯＭ１２、制御用ＲＡＭ１３、ユーザプログラムメモリ１４、デバイスメモリ２０を接続する。情報処理用バス２３は、情報処理用ＣＰＵ１５、情報処理用ＲＯＭ１６、情報処理用ＲＡＭ１７を接続する。また、共有ＲＡＭ１８、通信Ｉ／Ｆ１９、バスＩ／Ｆ２１は、制御用バス２２と情報処理用バス２３に接続されている。
【００２１】
制御用ＣＰＵ１１、情報処理用ＣＰＵ１５は、制御系ＣＰＵユニット１０の全体の信号処理を行う。制御用ＣＰＵ１１は、制御用ＲＯＭ１２に格納されたシステムプログラム（ユーザプログラム）に基づいて所定の処理（二重化システムを制御する制御データの送受信等）を行う。また、制御用ＣＰＵ１１は、ユーザプログラムメモリ１４に格納されるユーザプログラムの実行に関する処理を行う。
【００２２】
情報処理用ＣＰＵ１５は、情報処理用ＲＯＭ１６に格納されたシステムプログラムに基づいて所定の処理を行う。情報処理用ＣＰＵ１５は、例えば不定期に発生する外部機器（制御系ＣＰＵユニット１０以外の機器（制御系機能ユニット３０等））からの要求に応じた処理（要求情報の転送等）を行う。情報処理用ＣＰＵ１５は、外部機器から送信される所定の要求情報を受信するとともに、要求情報が制御系ＣＰＵユニット１０への要求である場合に要求情報を制御用ＣＰＵ１１に送信し、要求情報が待機系システム２００等の他のプログラマブルコントローラへの要求である場合に要求情報を他のプログラマブルコントローラへ転送する。
【００２３】
制御用ＲＯＭ１２、情報処理用ＲＯＭ１６は、それぞれ制御用ＣＰＵ１１、情報処理用ＣＰＵ１５で実行されるシステムプログラムを格納する。制御用ＲＡＭ１３、情報処理用ＲＡＭ１７は、それぞれ制御用ＣＰＵ１１、情報処理用ＣＰＵ１５で実行されるシステムプログラムのワークエリアとして使用される。また、制御用ＲＡＭ１３、情報処理用ＲＡＭ１７は、通信Ｉ／Ｆ１９を介して待機系システム２００等の他系システムと通信を行う際の、通信データ格納エリアとしても使用される。
【００２４】
ユーザプログラムメモリ１４は、二重化システムのユーザが指定する待機系システム２００等の他系システムの任意のデータを取得するためのプログラムを含むユーザプログラムを格納するメモリ（エリア）である。
【００２５】
共有ＲＡＭ１８は、制御用ＣＰＵ１１と情報処理用ＣＰＵ１５のそれぞれからアクセス可能なＲＡＭである。本実施の形態においては、共有ＲＡＭ１８を用いることによって、制御用ＣＰＵ１１と情報処理用ＣＰＵ１５の間で通信を可能としている。
【００２６】
デバイスメモリ２０は、ユーザプログラムメモリ１４に格納されるユーザプログラムを実行する際、一時的なデータの退避場所として使用したり、各種ログ情報を保存するためのメモリである。
【００２７】
バスＩ／Ｆ２１は、制御系ＣＰＵユニット１０の制御用バス２２、情報処理用バス２３と、制御系機能ユニット３０等の各機能ユニットの制御系システムバス（ユニットバス）４１を接続する通信インタフェースである。制御用ＣＰＵ１１、情報処理用ＣＰＵ１５は、バスＩ／Ｆ２１を介して、各機能ユニットのバッファメモリ（バッファメモリ３３等）にアクセスする。
【００２８】
通信Ｉ／Ｆ１９は、制御系ＣＰＵユニット１０と待機系ＣＰＵユニット５０を二重化用ケーブル３で接続する通信インタフェースである。制御系ＣＰＵユニット１０の制御用ＣＰＵ１１と待機系ＣＰＵユニット５０の制御用ＣＰＵ５１は、通信Ｉ／Ｆ１９を介して通信を行う。また、制御系ＣＰＵユニット１０の情報処理用ＣＰＵ１５と待機系ＣＰＵユニット５０の情報処理用ＣＰＵ５５は、通信Ｉ／Ｆ１９を介して通信を行う。通信Ｉ／Ｆ１９は、情報処理用ＣＰＵ１５と情報処理用ＣＰＵ５５の間で送受信されるデータを、制御用ＣＰＵ１１と制御用ＣＰＵ５１の間で制御データを送受信する際のチャネルとは異なるチャネルで送受信する。
【００２９】
本実施の形態における二重化システムは、制御系ＣＰＵユニット１０の制御用ＲＡＭ１３内に作成した通信データを、通信Ｉ／Ｆ１９を介して待機系ＣＰＵユニット５０の制御用ＲＡＭ５３に転送する。また、二重化システムは、制御系ＣＰＵユニット１０の情報処理用ＲＡＭ１７内に作成した通信データを、通信Ｉ／Ｆ１９を介して待機系ＣＰＵユニット５０の情報処理用ＲＡＭ５７に転送する。
【００３０】
制御系機能ユニット３０は、ユニットＣＰＵ３１、ユニットＲＡＭ３２、バッファメモリ３３、バスＩ／Ｆ３４を備えている。ユニットＣＰＵ３１は、所定のプログラムに基づいて制御系機能ユニット３０内を制御するＣＰＵである。ユニットＲＡＭ３２は、ユニットＣＰＵ３１で実行されるプログラムのワークエリアとして使用される。
【００３１】
バッファメモリ３３は、所定のデータを格納するメモリであり、必要に応じて待機系システム２００によってデータの読み書きが行われる。バスＩ／Ｆ３４は、制御系機能ユニット３０と制御系システムバス４１を接続する通信インタフェースである。
【００３２】
待機系システム２００は、制御系システム１００と同様の構成を有している。すなわち、待機系システム２００は、制御系ＣＰＵユニット１０に対応する待機系ＣＰＵユニット５０と制御系機能ユニット３０に対応する待機系機能ユニット７０を含んで構成されている。
【００３３】
待機系ＣＰＵユニット５０は、制御用ＣＰＵ１１に対応する制御用ＣＰＵ５１、制御用ＲＯＭ１２に対応する制御用ＲＯＭ５２、制御用ＲＡＭ１３に対応する制御用ＲＡＭ５３、ユーザプログラムメモリ１４に対応するユーザプログラムメモリ５４、情報処理用ＣＰＵ１５に対応する情報処理用ＣＰＵ５５、情報処理用ＲＯＭ１６に対応する情報処理用ＲＯＭ５６、情報処理用ＲＡＭ１７に対応する情報処理用ＲＡＭ５７、共有ＲＡＭ１８に対応する共有ＲＡＭ５８、通信Ｉ／Ｆ１９に対応する通信Ｉ／Ｆ５９、デバイスメモリ２０に対応するデバイスメモリ６０、バスＩ／Ｆ２１に対応するバスＩ／Ｆ６１、制御用バス２２に対応する制御用バス６２、情報処理用バス２３に対応する情報処理用バス６３を備えている。
【００３４】
また、待機系機能ユニット７０は、ユニットＣＰＵ３１に対応するユニットＣＰＵ７１、ユニットＲＡＭ３２に対応するユニットＲＡＭ７２、バッファメモリ３３に対応するバッファメモリ７３、バスＩ／Ｆ３４に対応するバスＩ／Ｆ７４を備えている。また、待機系ＣＰＵユニット５０と待機系機能ユニット７０は、待機系システムバス４２によって接続されている。
【００３５】
ここで、制御系システム１００の制御用ＲＯＭ１２に格納されるシステムプログラムと待機系システム２００の制御用ＲＯＭ５２に格納されるシステムプログラムの構成、制御系システム１００の情報処理用ＲＯＭ１６に格納されるシステムプログラムと待機系システム２００の情報処理用ＲＯＭ５６に格納されるシステムプログラムの構成について説明する。なお、以下の説明では制御系システム１００に対する待機系システム２００を他系システム、制御系システム１００自身を自系システムとよぶ場合がある。
【００３６】
図２−１は、情報処理用ＲＯＭ内に格納するシステムプログラムの構成を説明するための図であり、図２−２は、制御用ＲＯＭ内に格納するシステムプログラムの構成を説明するための図である。
【００３７】
なお、制御系システム１００の制御用ＲＯＭ１２に格納されるシステムプログラムと待機系システム２００の制御用ＲＯＭ５２に格納されるシステムプログラムは、同様の機能を有したプログラムであるため、ここでは制御系システム１００の制御用ＲＯＭ１２に格納されるシステムプログラムを例にとって説明する。
【００３８】
また、制御系システム１００の情報処理用ＲＯＭ１６に格納されるシステムプログラムと待機系システム２００の情報処理用ＲＯＭ５６に格納されるシステムプログラムは、同様の機能を有したプログラムであるため、ここでは制御系システム１００の情報処理用ＲＯＭ１６に格納されるシステムプログラムを例にとって説明する。
【００３９】
本実施の形態における制御用ＲＯＭ１２内のシステムプログラムは、系間交信手順プログラムＡＧ１１、内部ＣＰＵ間交信手順プログラムＡＧ１２を備えている。系間交信手順プログラムＡＧ１１は、制御用ＣＰＵ１１が他系システムである待機系システム２００の制御用ＣＰＵ５１と二重化用ケーブル３を介して要求（制御データ）の送受信を行うプログラムである。
【００４０】
内部ＣＰＵ間交信手順プログラムＡＧ１２は、自系システムである制御系ＣＰＵユニット１０内の制御用ＣＰＵ１１と情報処理用ＣＰＵ１５の間で、共有ＲＡＭ１８を介して要求（要求電文、要求電文に対する応答情報（後述する応答電文））等の送受信を行うプログラムである。
【００４１】
また、本実施の形態における情報処理用ＲＯＭ１６内のシステムプログラムは、機器間交信手順プログラムＡＧ１、外部要求処理手順プログラムＡＧ２、内部ＣＰＵ間交信手順プログラムＡＧ３、交信中継手順プログラムＡＧ４を備えている。
【００４２】
機器間交信手順プログラムＡＧ１は、系が異なるＣＰＵユニット間やＣＰＵユニットと各機能ユニットの間で、機器間要求ＩＤで定義される要求の依頼を行うためのプログラムである。ここでの機器間交信手順プログラムＡＧ１は、自系システムの制御系ＣＰＵユニット１０以外の外部機器（例えば、待機系システム２００の情報処理用ＣＰＵ５５）と情報処理用ＣＰＵ１５が通信（交信）を行う際に用いられる。
【００４３】
機器間交信手順プログラムＡＧ１で用いられる電文には、要求先機器を識別するための要求先ＩＤと要求元機器を識別するための要求元ＩＤ、機器間での要求種別（自系システムへのデータ要求であることを示す情報、バッファメモリ７３等の他系システムへのデータ要求であることを示す情報等の処理内容を示す情報）を識別するための機器間要求ＩＤが含まれている。
【００４４】
外部要求処理手順プログラムＡＧ２は、機器間交信手順プログラムＡＧ１で受け付けた外部機器からの要求が自系システム（制御系システム１００）宛てであれば自系システムで要求に対応する処理を行い、要求が他系システム（待機系システム２００）宛てであれば機器間交信手順プログラムＡＧ１を用いて要求を他系システムに転送するプログラムである。
【００４５】
内部ＣＰＵ間交信手順プログラムＡＧ３は、自系システムである制御系ＣＰＵユニット１０内の制御用ＣＰＵ１１と情報処理用ＣＰＵ１５の間で、共有ＲＡＭ１８を介して要求の送受信を行うプログラムである。内部ＣＰＵ間交信手順プログラムＡＧ３は、内部ＣＰＵ間要求ＩＤで定義される情報処理用ＣＰＵ１５への要求電文を発行する。内部ＣＰＵ間要求ＩＤで定義される要求の中には、通信の中継手順を定義する情報が含まれている。
【００４６】
交信中継手順プログラムＡＧ４は、内部ＣＰＵ間交信手順ＡＧ３による要求電文を機器間交信手順プログラムＡＧ１による要求電文に変換し、他系システムの情報処理用ＣＰＵ５５へ中継するプログラムである。
【００４７】
ここでの通信の中継手順は、内部ＣＰＵ間交信手順プログラムＡＧ３，ＡＧ１２で使用するヘッダ情報を機器間交信手順プログラムＡＧ１で用いられるヘッダ情報（宛先アドレス等）に変換することによって、内部ＣＰＵ間交信手順プログラムＡＧ３，ＡＧ１２で送受信される要求電文の通信手順を機器間で通信される要求電文の通信手順として使用する。
【００４８】
つぎに、ユーザプログラムメモリ１４、ユーザプログラムメモリ５４に格納されるユーザプログラムによる処理内容を説明する。なお、ユーザプログラムメモリ１４に格納されるユーザプログラムとユーザプログラムメモリ５４に格納されるユーザプログラムは、同様の機能を有したプログラムであるため、ここではユーザプログラムメモリ１４に格納されるユーザプログラムを例にとって説明する。
【００４９】
ユーザプログラムメモリ１４に格納されるユーザプログラムには、他系システムからのデータの読み出しを行うユーザプログラム（他系システムから固有データを取得するラダープログラム（以下、他系データ読み出しプログラムという））と他系システムへデータの書き込みを行うユーザプログラム（以下、他系データ書き込みプログラムという）がある。
【００５０】
まず、他系データ読み出しプログラムの処理について説明する。図３−１は、他系データ読み出しプログラムの処理を説明するための図である。他系データ読み出しプログラムは、他系システムのデバイスメモリ６０または待機系機能ユニット７０のバッファメモリ７３からデータを読み出すためのプログラムである。
【００５１】
他系データ読み出しプログラムは、起動信号ＭＯのＯＮによって、引数デバイスＳ１で指定される他系システムのデータを引数デバイスＮ１ワード（データサイズ）分取得し、引数デバイスＤ１で指定される自系システムのデバイスメモリ２０に格納する。引数デバイスＤ２には処理の実行状態が格納され、この実行状態をユーザが確認することによって当該命令の実行が完了したか否かを判断することが可能となる。
【００５２】
ここでの引数デバイスＳ１は、取得対象のデータを格納するデバイスメモリ６０やバッファメモリ７３の先頭アドレスを指定している。また、引数デバイスＤ１は、取得したデータを格納するデバイスメモリ２０の先頭アドレスを指定し、引数デバイスＤ２は所定の数値によって処理の実行状態（処理状態）を示す。ここでの引数デバイスＤ２は、例えば「０」がアイドル状態を示し、「１」が処理中を示し、「２」が処理の正常完了を示し、「３」が処理の異常完了を示す。
【００５３】
つぎに、他系データ書き込みプログラムの処理について説明する。図３−２は、他系データ書き込みプログラムの処理を説明するための図である。他系データ書き込みプログラムは、他系システムのデバイスメモリ６０または待機系機能ユニット７０のバッファメモリ７３にデータを書き込むためのプログラムである。
【００５４】
他系データ書き込みプログラムは、起動信号Ｍ１のＯＮによって、引数デバイスＳ１で指定される自系システムのデータを引数デバイスＮ１ワード分、引数デバイスＤ１で指定される他系システムのデバイスメモリ６０や待機系機能ユニット７０のバッファメモリ７３に格納する。引数デバイスＤ２には処理の実行状態が格納され、この実行状態をユーザが確認することによって当該命令の実行が完了したか否かを判断することが可能となる。
【００５５】
つぎに、二重化システムの動作処理手順を説明する。ここでは、制御系ＣＰＵユニット１０が待機系システム２００からデータの読み出しを行う処理の処理手順について説明する。ここでの制御系ＣＰＵ１０ユニット１０が実行する読み出し命令は、取得対象データが待機系機能ユニット７０のバッファメモリ７３であり、取得データの格納エリアが制御系ＣＰＵユニット１０のデバイスメモリ２０であることを想定している。
【００５６】
図４は、二重化システムの動作処理手順を示すシーケンス図である。二重化システムにおいて、例えば外部機器である制御系機能ユニット３０から制御系ＣＰＵユニット１０にデータの読み出し命令が送信される。
【００５７】
制御系システム１００がユーザプログラム実行中に、制御用ＣＰＵ１１によって待機系システム２００（他系システム）へのデータの読み出し命令（他系データ読み出しプログラム）を検出すると、制御用ＣＰＵ１１が制御系システム１００の制御用ＲＯＭ１２で記憶する内部ＣＰＵ間交信手順プログラムＡＧ１２（実行処理中のユーザプログラムとは異なるユーザプログラム）を用いて、制御系システム１００の情報処理用ＣＰＵ１５に所定の要求情報（要求電文）を送信（発行）する（ＳＱ１）。
【００５８】
制御用ＣＰＵ１１から情報処理用ＣＰＵ１５への要求電文には、機器間要求ＩＤ、取得対象データの種別を示す情報、取得するデータの先頭アドレスと取得データサイズに関する情報を含んでいる。ここでの、機器間要求ＩＤは、待機系システム２００（他系システム）のバッファメモリ７３に対するデータ取得（リード命令）であることを識別する情報を含んでいる。
【００５９】
情報処理用ＣＰＵ１５は、内部ＣＰＵ間交信手順ＡＧ３によって制御用ＣＰＵ１１からの要求電文を受信する。内部ＣＰＵ間交信手順プログラムＡＧ１２による要求電文を受信した制御系ＣＰＵユニット１０の情報処理用ＣＰＵ１５は、受信した要求電文を交信中継手順プログラムＡＧ４によって機器間交信手順プログラムＡＧ１で処理可能な要求電文（特許請求の範囲に記載の第１の指示情報）に変換する。
【００６０】
ここで、内部ＣＰＵ間交信手順プログラムＡＧ１２用の要求電文（内部ＣＰＵ間交信データ）から機器間交信手順プログラムＡＧ１用の要求電文（機器間交信データ）への変換処理について説明する。
【００６１】
図５−１は、内部ＣＰＵ間交信手順プログラム用の要求電文から機器間交信手順プログラム用の要求電文への変換処理を説明するための図である。情報処理用ＣＰＵ１５は、交信中継手順プログラムＡＧ４によって、内部ＣＰＵ間交信用ヘッダ情報（要求電文のヘッダ）を機器間交信用ヘッダ情報に変換する。
【００６２】
具体的には、交信中継を示す内部ＣＰＵ間要求ＩＤを、要求先ＩＤ（データの要求先アドレス）が待機系システム２００（他系システム）の待機系ＣＰＵユニット５０、要求元ＩＤ（データの要求元アドレス）が制御系システム１００（自系システム）の制御系ＣＰＵユニット１０であるヘッダ情報に変換して要求電文に付加する。なお、ここでの情報処理用ＣＰＵ１５は、交信中継手順プログラムＡＧ４によってヘッダ情報以外の要求電文自体の変換は行わない。
【００６３】
情報処理用ＣＰＵ１５は、交信中継手順プログラムＡＧ４によって変換された要求電文を、機器間交信手順プログラムＡＧ１を用い、通信Ｉ／Ｆ１９、二重化用ケーブル３を介して待機系ＣＰＵユニット５０に送信した後、待機系ＣＰＵユニット５０から要求電文に対応する応答電文の受信を待つ（ＳＱ２）。
【００６４】
待機系システム２００の情報処理用ＣＰＵ５５は、制御系システム１００の情報処理用ＣＰＵ１５から機器間交信手順プログラムＡＧ１によって要求電文を受信する。要求電文を受信した情報処理用ＣＰＵ５５は、要求電文内の要求先ＩＤが待機系ＣＰＵ５０であることから、外部要求処理手順プログラムＡＧ２に基づいて、待機系ＣＰＵユニット５０内で要求電文を処理する（ＳＱ３）。
【００６５】
ここでの要求電文の機器間要求ＩＤはバッファメモリ７３の読出しを示すため、待機系システム２００の情報処理用ＣＰＵ５５は、バスＩ／Ｆ６１を介して待機系機能ユニット７０のバッファメモリ７３上のデータを取得し（ＳＱ４）、要求電文に対する応答電文として取得したデータを制御系システム１００の情報処理用ＣＰＵ１５に送信する（ＳＱ５）。ここでの、待機系システム２００の情報処理用ＣＰＵ５５は、外部要求処理手順プログラムＡＧ２によって応答電文を作成する。そして、情報処理用ＣＰＵ５５は、作成した応答電文を、交信中継手順プログラムＡＧ４を用いて機器間交信手順プログラムＡＧ１で処理可能な応答電文（特許請求の範囲に記載の第１の応答情報）に変換し情報処理用ＣＰＵ１５に送信する。
【００６６】
制御系システム１００の情報処理用ＣＰＵ１５は、機器間交信手順プログラムＡＧ１によって応答電文を受信する。情報処理用ＣＰＵ１５は、交信中継手順プログラムＡＧ４によって、応答電文のヘッダ情報を内部ＣＰＵ間交信手順プログラムＡＧ３用のヘッダ情報に変換し、ヘッダ情報を変換した応答データを制御用ＣＰＵ１１に送信する（ＳＱ６）。
【００６７】
ここで、機器間交信手順プログラムＡＧ１用の応答電文（機器間交信データ）から内部ＣＰＵ間交信手順プログラムＡＧ１２用の応答電文（内部ＣＰＵ間交信データ）への変換（復元）処理について説明する。
【００６８】
図５−２は、機器間交信手順プログラム用の応答電文から内部ＣＰＵ間交信手順プログラム用の応答電文への変換処理を説明するための図である。情報処理用ＣＰＵ１５は、交信中継手順プログラムＡＧ４によって、機器間交信用ヘッダ情報（応答電文のヘッダ）を内部ＣＰＵ間交信用ヘッダ情報に変換する。
【００６９】
具体的には、要求先ＩＤが待機系システム２００（他系システム）の待機系ＣＰＵユニット５０、要求元ＩＤが制御系システム１００（自系システム）の制御系ＣＰＵユニット１０であるヘッダ情報を、交信中継を示す内部ＣＰＵ間要求ＩＤに変換して応答電文に付加する。なお、ここでの情報処理用ＣＰＵ１５は、交信中継手順プログラムＡＧ４によってヘッダ情報以外の応答電文自体の変換は行わない。
【００７０】
内部ＣＰＵ間交信手順プログラムＡＧ３によって、応答電文を受信した制御系システム１００の制御用ＣＰＵ１１は、応答電文に含まれる他系システムの機能ユニットのバッファメモリデータを、他系データ読み出しプログラムで指定される取得データの格納エリア（デバイスメモリ２０）に格納し、データの読み出し命令を完了する（ＳＱ７）。
【００７１】
なお、ＳＱ１〜ＳＱ７までの処理の間、他系データ読み出しプログラムの処理とユーザプログラムの処理は、それぞれ独立して行われ、他系データ読み出しプログラムの実行によってユーザプログラムの実行が妨げられることはない。
【００７２】
つぎに、制御用ＣＰＵ１１においてデータのリード（ＲＥＡＤ）命令を実行する際（要求発行時）の処理手順を説明する。図６は、リード命令処理の処理手順を示すフローチャートである。
【００７３】
制御系システム１００の制御用ＣＰＵ１１は、データのリード命令（要求電文の発行）を行う際、リード命令で指定される引数に異常があるか否かのチェックを行う（ステップＳＴ１，ＳＴ２）。
【００７４】
引数に異常がない場合（ステップＳＴ２、Ｎｏ）、制御用ＣＰＵ１１はリード命令で指定された引数に基づいて、内部ＣＰＵ間（制御用ＣＰＵ１１と情報処理用ＣＰＵ１５の間）での通信データ（内部ＣＰＵ間交信用データ）を作成する（ステップＳＴ３）。ここでの電文は、内部ＣＰＵ間要求ＩＤとして交信中継（制御系システム１００から待機系システム２００への通信）を示す情報を含んでいる。交信中継を示す情報によって、本電文は機器間交信手順プログラムＡＧ１を用いて他系システムに中継されることが指定される。
【００７５】
また、制御用ＣＰＵ１１は、内部ＣＰＵ間交信用電文を、内部ＣＰＵ間交信手順プログラムＡＧ１２用の要求電文として作成しておく。制御用ＣＰＵ１１は、作成した電文を内部ＣＰＵ間交信手順プログラムＡＧ１２を用いて情報処理用ＣＰＵ１５に送信する（ステップＳＴ４）。
【００７６】
この後、制御用ＣＰＵ１１は、電文の送信が完了（成功）したか否かの確認を行う（ステップＳＴ５）。電文の送信が成功である場合（ステップＳＴ５、Ｙｅｓ）、制御用ＣＰＵ１１は命令の処理状態を処理中（「１」）としてデバイスメモリ２０（引数デバイスＤ２）に格納し、まだ取得データが参照できない状態であることをユーザプログラムに通知する（ステップＳＴ６）。
【００７７】
一方、引数に異常がある場合（引数チェックで制御用ＣＰＵ１１が異常を検出した場合）（ステップＳＴ２、Ｙｅｓ）や、電文の送信が失敗である場合（ステップＳＴ５、Ｎｏ）、ユーザプログラムの実行を停止し、所定の表示手段（図示せず）によって電文送信のエラー表示を行う（ステップＳＴ７）。
【００７８】
つぎに、制御系システム１００が待機系システム２００からデータの読み出しを行う際の制御用ＣＰＵ１１、情報処理用ＣＰＵ１５の詳細な処理手順を説明する。まず、制御用ＣＰＵ１１が、内部ＣＰＵ間交信手順プログラムＡＧ３，ＡＧ１２による要求電文送受信に対する応答電文を情報処理用ＣＰＵ１５から受信した際（応答受信時）の処理手順を説明する。
【００７９】
図７は、応答電文を受信した際の制御用ＣＰＵの処理手順を示すフローチャートである。制御系システム１００の制御用ＣＰＵ１１は、情報処理用ＣＰＵ１５から応答電文を受信すると、応答電文が正常であるか否かをチェックする（ステップＳＴ１１，１２）。
【００８０】
応答電文が異常でない場合（ステップＳＴ１２、Ｎｏ）、制御用ＣＰＵ１１は応答電文に含まれる取得データをリード命令の引数（引数デバイスＤ１）の取得データ格納先頭アドレス（デバイスメモリ２０の先頭アドレス）で示されるエリアにコピーする（ステップＳＴ１３）。制御用ＣＰＵ１１は、処理状態を正常完了（「２」）としてデバイスメモリ２０（引数デバイスＤ２）に格納し、取得データを参照可能であることをユーザプログラムに通知する（ステップＳＴ１４）。
【００８１】
一方、応答電文が異常である場合（ステップＳＴ１２、Ｙｅｓ）、制御用ＣＰＵ１１は、処理状態を異常完了（「３」）としてデバイスメモリ２０（引数デバイスＤ２）に格納し、取得データが無効であることをユーザプログラムに通知する（ステップＳＴ１５）。
【００８２】
つぎに、情報処理用ＣＰＵ１５が内部ＣＰＵ間交信手順プログラムＡＧ３によって交信中継を指定する要求電文を受信した際の、交信中継手順の処理手順を説明する。図８は、交信中継の処理手順を示すフローチャートである。制御系システム１００の情報処理用ＣＰＵ１５は、制御用ＣＰＵ１１から受信した要求電文が正常か否かをチェックする。具体的には、情報処理用ＣＰＵ１５が受信した要求電文に含まれる機器間要求ＩＤ等が正常か否かをチェックする（ステップＳＴ２１，ＳＴ２２）。
【００８３】
要求電文が正常である場合（チェックが正常に終了した場合）、要求電文を機器間交信手順プログラムＡＧ１に従って送信するために、情報処理用ＣＰＵ１５は、交信中継手順プログラムＡＧ４によって機器間交信手順プログラムＡＧ１用のヘッダ情報を作成する。
【００８４】
なお、ここでのヘッダ情報に含まれる要求先ＩＤは他系システムの待機系ＣＰＵユニット５０を指定し、要求元ＩＤは自系システムの制御系ＣＰＵユニット１０を指定する（ステップＳＴ２３）。
【００８５】
この後、情報処理用ＣＰＵ１５は、作成した機器間交信手順プログラムＡＧ１用のヘッダ情報に制御用ＣＰＵ１１から受信した要求電文を結合して機器間交信データを作成する（ステップＳＴ２４）。情報処理用ＣＰＵ１５は、作成した機器間交信データ（要求電文）を機器間交信手順プログラムＡＧ１を用いて待機系ＣＰＵユニット５０に送信する（ステップＳＴ２５）。情報処理用ＣＰＵ１５からの機器間交信データは、通信Ｉ／Ｆ１９、二重化用ケーブル３を介して他系システムである待機系システム２００に送信される。次に、情報処理用ＣＰＵ１５は、送信した要求電文に対する応答電文の受信を待つ（ステップＳＴ２６）。
【００８６】
情報処理用ＣＰＵ１５は、情報処理用ＣＰＵ５５から要求電文に対する応答電文を受信すると、受信した応答電文の応答結果をチェックする（ステップＳＴ２７，ＳＴ２８）。応答電文の応答結果が正常である場合（ステップＳＴ２８、Ｙｅｓ）、応答結果をそのまま内部ＣＰＵ間交信手順プログラムＡＧ３用の応答電文とする。
【００８７】
この後、情報処理用ＣＰＵ１５は、内部ＣＰＵ間交信手順プログラムＡＧ３用のヘッダ情報を作成し（ステップＳＴ２９）、応答電文とヘッダ情報を結合して内部ＣＰＵ間交信データを作成する（ステップＳＴ３０）。情報処理用ＣＰＵ１５は、内部ＣＰＵ間交信手順プログラムＡＧ３を用いて制御用ＣＰＵ１１に内部ＣＰＵ間交信データを送信する（ステップＳＴ３１）。
【００８８】
情報処理用ＣＰＵ１５は、送信結果の確認を行う（ステップＳＴ３２）。送信が成功していれば要求電文の送信処理、応答電文の受信処理は終了となるが、送信に失敗した場合はエラー表示を行って（ステップＳＴ３３）、処理を終了する。
【００８９】
一方、情報処理用ＣＰＵ１５が情報処理用ＣＰＵ５５から受信した応答電文の応答結果が正常でない場合や（ステップＳＴ２８、Ｎｏ）、情報処理用ＣＰＵ１５が制御用ＣＰＵ１１から受信した要求電文が異常である場合（ステップＳＴ２２、Ｙｅｓ）、情報処理用ＣＰＵ１５は制御用ＣＰＵ１１に対して異常終了用の応答電文を作成する（ステップＳＴ３４）。そして、情報処理用ＣＰＵ１５はステップＳＴ２９〜ＳＴ３３の処理を行う。
【００９０】
すなわち、情報処理用ＣＰＵ１５は、内部ＣＰＵ間交信手順プログラムＡＧ３用のヘッダ情報を作成し（ステップＳＴ２９）、応答電文とヘッダ情報を結合して（ステップＳＴ３０）、内部ＣＰＵ間交信手順プログラムＡＧ３を用いて制御用ＣＰＵ１１にデータ送信する（ステップＳＴ３１）。
【００９１】
情報処理用ＣＰＵ１５は、送信結果の確認を行い（ステップＳＴ３２）、送信が成功していれ処理を終了し、送信に失敗した場合はエラー表示を行って（ステップＳＴ３３）、処理を終了する。
【００９２】
このように、制御系システム１００は、制御系ＣＰＵユニット１０で実行されるユーザプログラムの処理速度や、周期的に制御系システムから待機系システムに送信される制御データの転送の影響を小さくして、待機系システム２００のデータへアクセス可能となる。
【００９３】
また、本実施の形態においては、制御系システム１００が待機系システム２００からデータの読み出しを行う処理の処理手順について説明したが、制御系システム１００が待機系のシステムとなり、待機系システム２００が制御系のシステムになった場合は、制御系のシステムとなった待機系システム２００が待機系のシステムとなった制御系システム１００からデータの読み出し等を行なってもよい。
【００９４】
この場合の待機系システム２００は実施の形態で説明した制御系システム１００と同様の動作を行い、制御系システム１００は実施の形態で説明した待機系システム２００と同様の動作を行なう。すなわち、情報処理用ＣＰＵ５５が、内部ＣＰＵ間交信手順ＡＧ３によって制御用ＣＰＵ５１からの要求電文を受信する。そして、内部ＣＰＵ間交信手順プログラムＡＧ１２による要求電文を受信した制御系ＣＰＵユニット５０の情報処理用ＣＰＵ５５は、受信した要求電文を交信中継手順プログラムＡＧ４によって機器間交信手順プログラムＡＧ１で処理可能な要求電文（特許請求の範囲に記載の第２の指示情報）に変換する。
【００９５】
また、制御系システム１００が待機系システム２００から要求電文を受信すると、制御系システム１００の情報処理用ＣＰＵ１５は、外部要求処理手順プログラムＡＧ２によって応答電文を作成する。そして、情報処理用ＣＰＵ１５は、作成した応答電文を、交信中継手順プログラムＡＧ４を用いて機器間交信手順プログラムＡＧ１で処理可能な応答電文（特許請求の範囲に記載の第２の応答情報）に変換し情報処理用ＣＰＵ５５に送信する。
【００９６】
なお、本実施の形態においては、制御系ＣＰＵユニット１０が待機系システム２００からデータの読み出しを行う処理の処理手順について説明したが、制御系ＣＰＵユニット１０が待機系システム２００へデータの書き込みを行う処理の処理手順もデータの読み出し処理と同様の処理によって行う。
【００９７】
すなわち、制御系ＣＰＵユニット１０によって待機系システム２００へデータの書き込みを行う場合、制御系ＣＰＵユニット１０がデバイスメモリ２０等から書き込み対象となるデータを抽出する。
【００９８】
また、制御用ＣＰＵ１１から情報処理用ＣＰＵ１５への要求電文の機器間要求ＩＤには、待機系システム２００のバッファメモリ７３等に対してデータの書き込み取得（ライト命令）であることを識別する情報を含ませておく。そして、待機系システム２００の情報処理用ＣＰＵ５５は、バスＩ／Ｆ６１を介して待機系機能ユニット７０のバッファメモリ７３等にデータの書き込みを行う。
【００９９】
また、本実施の形態においては、制御系ＣＰＵ１０ユニット１０が待機系機能ユニット７０のバッファメモリ７３からデータの読み出しを行う場合について説明したが、制御系ＣＰＵ１０ユニット１０がデバイスメモリ６０からデータの読み出しを行ってもよい。また、制御系ＣＰＵ１０ユニット１０がデバイスメモリ６０へデータの書き込みを行ってもよい。
【０１００】
このように、実施の形態によれば、自系システムのユーザプログラムから他系システムのデータへアクセスし、データの読み出しや書き込みを行うので、容易に他系システムのデータを利用することが可能となる。したがって、簡易な構成で他系システムの診断やトラブルシュートを容易に行うことが可能となる。
【０１０１】
また、プログラマブルコントローラが外部機器からの要求処理を行う情報処理用ＣＰＵ１１を備え、情報処理用ＣＰＵ１１が他系システムのデータの取得やデータの変更処理等を行うので、制御用ＣＰＵ１５で行われるユーザプログラムの実行や制御データの転送処理を阻害しない。したがって、プログラマブルコントローラは、簡易な構成で高速に他系システムの任意データにアクセスすることができるとともに、制御データの転送を高いスループットで処理することが可能となる。これにより、プログラマブルコントローラ間のデータ通信を効率よく行うことが可能となる。
【産業上の利用可能性】
【０１０２】
以上のように、本発明にかかるプログラマブルコントローラは、二重化システムで通信を行うプログラマブルコントローラに適している。
【図面の簡単な説明】
【０１０３】
【図１】本発明にかかる二重化システムの実施の形態の構成を示す図である。
【図２−１】情報処理用ＲＯＭ内に格納するシステムプログラムの構成を説明するための図である。
【図２−２】制御用ＲＯＭ内に格納するシステムプログラムの構成を説明するための図である。
【図３−１】他系データ読み出しプログラムの処理を説明するための図である。
【図３−２】他系データ書き込みプログラムの処理を説明するための図である。
【図４】二重化システムの動作処理手順を示すシーケンス図である。
【図５−１】内部ＣＰＵ間交信手順プログラム用の要求電文から機器間交信手順プログラム用の要求電文への変換処理を説明するための図である。
【図５−２】機器間交信手順プログラム用の応答電文から内部ＣＰＵ間交信手順プログラム用の応答電文への変換処理を説明するための図である。
【図６】リード命令処理の処理手順を示すフローチャートである。
【図７】応答電文を受信した際の制御用ＣＰＵの処理手順を示すフローチャートである。
【図８】交信中継の処理手順を示すフローチャートである。
【符号の説明】
【０１０４】
３  二重化用ケーブル
１０  制御系ＣＰＵユニット
１１，５１  制御用ＣＰＵ
１２，５２  制御用ＲＯＭ
１３，５３  制御用ＲＡＭ
１４，５４  ユーザプログラムメモリ
１５，５５  情報処理用ＣＰＵ
１６，５６  情報処理用ＲＯＭ
１７，５７  情報処理用ＲＡＭ
１８，５８  共有ＲＡＭ
１９，５９  通信Ｉ／Ｆ
２０，６０  デバイスメモリ
２１，３４，６１，７４  バスＩ／Ｆ
２２，６２  制御用バス
２３，６３  情報処理用バス
３０  制御系機能ユニット
３１，７１  ユニットＣＰＵ
３２，７２  ユニットＲＡＭ
３３，７３  バッファメモリ
４１  制御系システムバス
４２  待機系システムバス
５０  待機系ＣＰＵユニット
７０  待機系機能ユニット
１００  制御系システム
２００  待機系システム
ＡＧ１  機器間交信手順プログラム
ＡＧ２  外部要求処理手順プログラム
ＡＧ３，ＡＧ１２  内部ＣＰＵ間交信手順プログラム
ＡＧ４  交信中継手順プログラム
ＡＧ１１  系間交信手順プログラム
【図１】
0004494299.tif 000002
【図２−１】
0004494299.tif 000003
【図２−２】
0004494299.tif 000004
【図３−１】
0004494299.tif 000005
【図３−２】
0004494299.tif 000006
【図４】
0004494299.tif 000007
【図５−１】
0004494299.tif 000008
【図５−２】
0004494299.tif 000009
【図６】
0004494299.tif 000010
【図７】
0004494299.tif 000011
【図８】
0004494299.tif 000012