(57)【要約】【課題】設置場所が制約されず且つ小規模化を図ることができる通信制御システム、デバイスサーバ、通信制御方法およびプログラムを提供する。【解決手段】通信制御システム１０００は、ネットワーク７に接続された制御サーバ３１、３２と、２つのデバイスサーバ１、２と、を備える。デバイスサーバ１は、第２ＰＬＣフレームの受信状況、第２ＰＬＣフレームに含まれるライフカウント情報または制御サーバ識別情報の内容に応じて、ネットワーク７またはメインの制御サーバに障害が発生したか否かを判定する判定部１１３と、判定部１１３によりネットワーク７またはメインの制御サーバに障害が発生したと判定すると、デバイスサーバ２に対して、メインの制御サーバからサブの制御サーバへ接続を切り替えるよう通知する切替通知フレームを、ネットワーク７を介してデバイスサーバ２へ送信する切替通知部１１４と、を有する。【選択図】図３
2018106537.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続され複数の機器を制御するための制御情報を生成する複数の制御サーバと、
複数の機器に接続され前記複数の制御サーバのうちの１つの第１制御サーバに前記ネットワークを介して接続することにより前記第１制御サーバから前記制御情報を受信し、受信した前記制御情報をそれぞれ自装置に接続された機器へ送信する複数のデバイスサーバと、を備え、
前記複数のデバイスサーバのうちのいずれか１つは、
前記制御情報の受信状況、前記制御情報の内容又は前記制御情報の応答情報の内容を監視し、前記複数のデバイスサーバの接続先を前記第１制御サーバから前記複数の制御サーバのうち前記第１制御サーバ以外の他の第２制御サーバへ切り替えるか否かを判定する判定部と、
前記判定部により前記複数のデバイスサーバの接続先を前記第１制御サーバから前記第２制御サーバへ切り替えると判定されると、他のデバイスサーバに対して、接続先を前記第１制御サーバから前記第２制御サーバへ切り替えるよう通知する切替通知を、前記ネットワークを介して他のデバイスサーバへ送信する切替通知部と、を有する監視デバイスサーバである、
通信制御システム。
【請求項２】
前記複数の制御サーバは、それぞれ、前記制御情報を前記複数のデバイスサーバへ予め設定された基準時間以内の時間間隔で送信し、
前記判定部は、前記第１制御サーバから制御情報を受信した後、前記基準時間以内に前記第１制御サーバから新たな制御情報を受信するか否かに応じて、前記複数のデバイスサーバの接続先を前記第１制御サーバから前記第２制御サーバへ切り替えるか否かを判定する、
請求項１に記載の通信制御システム。
【請求項３】
前記制御情報は、前記第１制御サーバにおける障害発生の有無を検知するためのカウンタ情報を含み、
前記複数の制御サーバは、それぞれ、前記制御情報を前記複数のデバイスサーバへ送信する毎に、送信する制御情報に含まれる前記カウンタ情報が示すカウンタ値を、予め設定された値だけインクリメントまたはデクリメントさせる形で、前記カウンタ情報を更新するカウンタ更新部を更に有し、
前記判定部は、前記第１制御サーバから受信した複数の制御情報それぞれのカウンタ情報の履歴に基づいて、前記複数のデバイスサーバの接続先を前記第１制御サーバから前記第２制御サーバへ切り替えるか否かを判定する、
請求項１または２に記載の通信制御システム。
【請求項４】
前記制御情報および前記制御情報の応答情報は、前記複数のデバイスサーバの接続先となる制御サーバを識別する接続先制御サーバ識別情報を含み、
前記複数の制御サーバは、それぞれ、前記接続先制御サーバ識別情報を設定する接続先設定部を更に有し、
前記判定部は、前記第１制御サーバから受信する制御情報および前記制御情報の応答情報に含まれる接続先制御サーバ識別情報に基づいて、前記複数のデバイスサーバの接続先を前記第１制御サーバから前記第２制御サーバへ切り替えるか否かを判定する、
請求項１から３のいずれか１項に記載の通信制御システム。
【請求項５】
前記複数のデバイスサーバは、それぞれ前記監視デバイスサーバとして動作可能であり、
前記判定部と、
前記切替通知部と、
前記監視デバイスサーバとして動作する場合、前記監視デバイスサーバとして動作する旨を通知する監視デバイスサーバ通知を他のデバイスサーバへ送信する監視デバイスサーバ通知部と、を有し、
前記他のデバイスサーバは、前記監視デバイスサーバ通知を受信すると、前記判定部、前記切替通知部および前記監視デバイスサーバ通知部の動作を停止させる、
請求項１から４のいずれか１項に記載の通信制御システム。
【請求項６】
前記制御サーバは、前記複数のデバイスサーバの中から前記監視デバイスサーバとして動作するデバイスサーバを１つ選定し、選定したデバイスサーバの第１デバイスサーバ識別情報を生成して前記複数のデバイスサーバへ送信する監視デバイスサーバ選定部を更に有し、
前記判定部は、前記第１デバイスサーバ識別情報と自装置に付与された第２デバイスサーバ識別情報とが一致するか否かを判定し、
前記監視デバイスサーバ通知部は、前記第１デバイスサーバ識別情報が付与されたデバイスサーバへ監視デバイスサーバを変更する旨を通知する監視デバイスサーバ変更通知を送信し、
前記他のデバイスサーバは、前記監視デバイスサーバ変更通知を受信すると、前記判定部、前記切替通知部および前記監視デバイスサーバ通知部を起動する、
請求項５に記載の通信制御システム。
【請求項７】
複数の機器に接続され、前記複数の機器を制御するための制御情報を生成する複数の制御サーバのうちの１つの第１制御サーバにネットワークを介して接続することにより前記第１制御サーバから前記制御情報を受信し、受信した前記制御情報をそれぞれ自装置に接続された機器へ送信する複数のデバイスサーバのうちの１つのデバイスサーバであって、
前記制御情報の受信状況、前記制御情報の内容又は前記制御情報の応答情報の内容を監視し、前記複数のデバイスサーバの接続先を前記第１制御サーバから前記複数の制御サーバのうち前記第１制御サーバ以外の他の第２制御サーバへ切り替えるか否かを判定する判定部と、
前記判定部により前記複数のデバイスサーバの接続先を前記第１制御サーバから前記第２制御サーバへ切り替えると判定されると、他のデバイスサーバに対して、接続先を前記第１制御サーバから前記第２制御サーバへ切り替えるよう通知する切替通知を、前記ネットワークを介して他のデバイスサーバへ送信する切替通知部と、を備える、
デバイスサーバ。
【請求項８】
ネットワークに接続され複数の機器を制御するための制御情報を生成する複数の制御サーバと、複数の機器に接続され前記複数の制御サーバのうちの１つの第１制御サーバに前記ネットワークを介して接続することにより前記第１制御サーバから前記制御情報を受信し、受信した前記制御情報をそれぞれ自装置に接続された機器へ送信する複数のデバイスサーバと、を用いた通信制御方法であって、
前記複数のデバイスサーバのうちのいずれか１つが、
前記制御情報の受信状況、前記制御情報の内容又は前記制御情報の応答情報の内容を監視し、前記複数のデバイスサーバの接続先を前記第１制御サーバから前記複数の制御サーバのうち前記第１制御サーバ以外の他の第２制御サーバへ切り替えるか否かを判定するステップと、
前記複数のデバイスサーバの接続先を前記第１制御サーバから前記第２制御サーバへ切り替えると判定されると、他のデバイスサーバに対して、接続先を前記第１制御サーバから前記第２制御サーバへ切り替えるよう通知する切替通知を、前記ネットワークを介して他のデバイスサーバへ送信するステップと、を含む、
通信制御方法。
【請求項９】
コンピュータを、
複数の機器に接続され複数の機器を制御するための制御情報を生成する複数の制御サーバのうちの１つの第１制御サーバにネットワークを介して接続することにより前記第１制御サーバから前記制御情報を受信し、受信した前記制御情報をそれぞれ自装置に接続された機器へ送信する複数のデバイスサーバのうちのいずれか１つについて、
前記制御情報の受信状況、前記制御情報の内容又は前記制御情報の応答情報の内容を監視し、前記複数のデバイスサーバの接続先を前記第１制御サーバから前記複数の制御サーバのうち前記第１制御サーバ以外の他の第２制御サーバへ切り替えるか否かを判定する判定部、
前記判定部により前記複数のデバイスサーバの接続先を前記第１制御サーバから前記第２制御サーバへ切り替えると判定すると、他のデバイスサーバに対して、接続先を前記第１制御サーバから前記第２制御サーバへ切り替えるよう通知する切替通知を、前記ネットワークを介して他のデバイスサーバへ送信する切替通知部、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信制御システム、デバイスサーバ、通信制御方法およびプログラムに関する。
【背景技術】
【０００２】
サーバを含む通信システムにおいて、サーバで障害が発生した場合の耐性を高めるためにサーバを冗長化する技術が提案されている（例えば特許文献１参照）。この種の冗長化技術は、例えば半導体工場で使用される搬送台車を制御する搬送台車制御装置とシリアル通信を行うことにより搬送台車制御装置を制御する制御サーバについても適用されている。
【０００３】
例えば２つの制御サーバと、２つの制御サーバと各別にシリアル通信インタフェースを介して接続された切替器と、切替器に制御信号を出力することにより切替器を制御するＰＬＣ（Programmable Logic Controller）と、を備える通信制御システムが提供されている。この通信制御システムでは、２つの制御サーバのうちの稼働系（メイン）の制御サーバが、切替器を介して搬送台車制御装置とシリアル通信を実行することにより搬送台車制御装置を制御する。また、ＰＬＣは、２つの制御サーバと各別にシリアル通信を実行している。そして、ＰＬＣは、２つの制御サーバのうちの稼働系の制御サーバに障害が発生した場合、切替器を制御して、メインの制御サーバと搬送台車制御装置との通信を遮断し他方の待機系（サブ）の制御サーバと搬送台車制御装置との通信を開始させる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−２４１５４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、前述の通信制御システムでは、制御サーバと搬送台車制御装置およびＰＬＣとがシリアル通信を実行する構成であるため、制御サーバと搬送台車制御装置およびＰＬＣとの間の距離がシリアル通信ケーブルの長さにより制約される。従って、制御サーバの設置場所は、搬送台車制御装置およびＰＬＣに比較的近い場所に制限されてしまう。そのため、通信制御システムの設置場所が制約される虞がある。
【０００６】
また、搬送台車制御装置が複数存在する場合、複数の搬送台車それぞれについてＰＬＣおよび切換器を設ける必要がある。そのため、使用する搬送台車制御装置の数が増加すると、その分、ＰＬＣおよび切替器の数も増加するため通信制御システムの規模が増大してしまう。
【０００７】
本発明は、上記事由に鑑みてなされたものであり、設置場所が制約されず且つ小規模化を図ることができる通信制御システム、デバイスサーバ、通信制御方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明に係る通信制御システムは、
ネットワークに接続され複数の機器を制御するための制御情報を生成する複数の制御サーバと、
複数の機器に接続され前記複数の制御サーバのうちの１つの第１制御サーバに前記ネットワークを介して接続することにより前記第１制御サーバから前記制御情報を受信し、受信した前記制御情報をそれぞれ自装置に接続された機器へ送信する複数のデバイスサーバと、を備え、
前記複数のデバイスサーバのうちのいずれか１つは、
前記制御情報の受信状況、前記制御情報の内容又は前記制御情報の応答情報の内容を監視し、前記複数のデバイスサーバの接続先を前記第１制御サーバから前記複数の制御サーバのうち前記第１制御サーバ以外の他の第２制御サーバへ切り替えるか否かを判定する判定部と、
前記判定部により前記複数のデバイスサーバの接続先を前記第１制御サーバから前記第２制御サーバへ切り替えると判定されると、他のデバイスサーバに対して、接続先を前記第１制御サーバから前記第２制御サーバへ切り替えるよう通知する切替通知を、前記ネットワークを介して他のデバイスサーバへ送信する切替通知部と、を有する監視デバイスサーバである。
【発明の効果】
【０００９】
本発明によれば、複数の制御サーバがネットワークに接続され、複数の機器に接続された複数のデバイスサーバが、ネットワークを介して複数の制御サーバのうちの１つの第１制御サーバに接続されている。そして、判定部が、制御情報の受信状況、制御情報の内容、又は制御情報の応答情報を監視し、複数のデバイスサーバについて接続先を第１制御サーバから第２制御サーバへ切り替えるか否かを判定する。また、切替通知部は、判定部が複数のデバイスサーバについて接続先を第１制御サーバから第２制御サーバへ切り替えると判定すると、他のデバイスサーバに対して、切替通知を、ネットワークを介して他のデバイスサーバへ送信する。同様に、ネットワークを介して複数の制御サーバのうちの１つの第２制御サーバに接続されているデバイスサーバの判定部が、制御情報の受信状況、制御情報の内容、又は制御情報の応答情報を監視し、複数のデバイスサーバについて接続先を第２制御サーバから第１制御サーバへ切り替えるか否かを判定する。また、切替通知部は、判定部が複数のデバイスサーバについて接続先を第２制御サーバから第１制御サーバへ切り替えると判定すると、他のデバイスサーバに対して、切替通知を、ネットワークを介して他のデバイスサーバへ送信する。
このようにして、複数のデバイスサーバに接続された機器と通信する制御サーバの切替が、ネットワークを介して実行されるので、制御サーバの設置場所は、デバイスサーバとネットワークを介して接続可能であれば制限されない。従って、通信制御システムの設置場所の自由度が広がるという利点がある。また、機器の接続先となる制御サーバを切り替えるための切替器が不要となるので、その分、通信制御システムの小規模化を図ることができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態１に係る通信制御システムの構成を示す図である。
【図２】実施の形態１に係る制御サーバおよびデバイスサーバのハードウェア構成を示す図である。
【図３】実施の形態１に係る制御サーバおよびデバイスサーバの機能構成を示す図である。
【図４】実施の形態１に係るＰＬＣフレームの仕様を示す図である。
【図５】実施の形態１に係る通信制御システムの動作を示すシーケンス図である。
【図６】実施の形態１に係る通信制御システムにおける第２制御フレームおよび第２ＰＬＣフレームの流れを示す図であり、（Ａ）はメイン制御サーバ使用時を示し、（Ｂ）はサブ制御サーバ使用時を示す。
【図７】実施の形態１に係る通信制御システムの動作を示すシーケンス図である。
【図８】実施の形態１に係るデバイスサーバが実行する通信制御処理の流れを示すフローチャートである。
【図９】本発明の実施の形態２に係る制御サーバおよびデバイスサーバの機能構成を示す図である。
【図１０】実施の形態２に係る通信制御システムの動作を示すシーケンス図である。
【図１１】実施の形態２に係るデバイスサーバが実行する通信制御処理の流れを示すフローチャートである。
【図１２】実施の形態２に係るデバイスサーバが実行する通信制御処理の流れを示すフローチャートである。
【図１３】変形例に係る制御サーバおよびデバイスサーバの機能構成を示す図である。
【図１４】変形例に係る制御サーバおよびデバイスサーバの機能構成を示す図である。
【発明を実施するための形態】
【００１１】
（実施の形態１）
以下、本発明の一実施の形態に係る通信制御システムについて、図面を参照しながら説明する。
【００１２】
本実施の形態に係る通信制御システムは、シリアル通信インタフェース（以下、「Ｉ／Ｆ」と称する。）を搭載したシリアル機器と、ネットワークに接続され、複数のシリアル機器を制御するための制御情報を生成する制御サーバと、を備えるものである。制御サーバは、２つ存在し、一方が稼働系（メイン）の制御サーバとして動作し、他方が待機系（サブ）の制御サーバとして動作する。また、通信制御システムは、シリアル機器毎に、シリアル機器と制御サーバとの通信を中継するデバイスサーバを備える。そして、複数のデバイスサーバのうちのいずれか１つの監視デバイスサーバが、メインの制御サーバからのフレームの受信状況、フレームの内容、又は制御情報の応答情報を監視し、適宜デバイスサーバの接続先をメインの制御サーバからサブの制御サーバへ切り替える。
【００１３】
図１に示すように、本実施の形態に係る通信制御システム１０００は、例えば半導体工場で使用される搬送台車５１、５２を制御するとともに、防火扉を駆動したり、警告灯を点灯させたりする駆動装置１０を制御するものである。通信制御システム１０００は、２つの制御サーバ３１、３２と、デバイスサーバ１、２と、搬送台車５１、５２を制御する搬送台車制御装置４と、ＰＬＣ（Programmable Logic Controller）６と、を備える。制御サーバ３１、３２とデバイスサーバ１、２とは、ネットワーク７に接続されている。ネットワーク７は、例えばイーサネット（登録商標）ケーブルで接続された有線ＬＡＮ（Local Area Network）から構成される。ネットワーク７は、例えばＩＥＥＥ８０２．３規格に準拠したものである。ＰＬＣ６は、シリアル通信Ｉ／Ｆを搭載したシリアル機器であり、デバイスサーバ１は、例えばＲＳ−４２２規格に準拠したシリアル伝送路９を介して、ＰＬＣ６に接続されている。また、搬送台車制御装置４も、シリアル通信Ｉ／Ｆを搭載したシリアル機器であり、デバイスサーバ２は、例えばＲＳ−２３２Ｃ規格に準拠したシリアル伝送路８を介して、搬送台車制御装置４に接続されている。
【００１４】
搬送台車制御装置４は、搬送台車５１、５２と通信を行う通信ユニット４２Ａ、４２Ｂと、通信ユニット４２Ａ、４２Ｂを制御する制御ユニット４１と、を有する。制御ユニット４１と通信ユニット４２Ａ、４２Ｂとは、例えばＲＳ−４８５規格に準拠したシリアル伝送路を介して接続されている。
【００１５】
ＰＬＣ６は、デバイスサーバ１と半二重方式又は全二重方式で通信を実行し、デバイスサーバ１から取得したフレームに含まれるコマンド情報に応じて、駆動装置１０を制御する。ＰＬＣ６と駆動装置１０とは、シリアル伝送路を介して接続されている。
【００１６】
制御サーバ３１、３２は、搬送台車制御装置４を制御するための第１制御フレーム（制御情報）と、ＰＬＣ６を制御するための第１ＰＬＣフレームと、を生成する。制御サーバ３１、３２のいずれか一方が稼働系の制御サーバとして動作し、他方が待機系の制御サーバとして動作する。
【００１７】
制御サーバ３１、３２は、搬送台車制御装置４から第１制御フレーム（制御情報）に対する第１制御応答フレーム（応答情報）と、ＰＬＣ６を制御するための第１ＰＬＣフレーム（制御情報）に対する第１ＰＬＣ応答フレーム（応答情報）と、を受信する。
【００１８】
制御サーバ３１、３２は、冗長化されたシステムにおける予備装置への切替方式であるウォームスタンバイ方式、ホットスタンバイ方式またはコールドスタンバイ方式を採用している。好適には、ホットスタンバイ方式を採用することが望ましく、これにより、通信制御システム１０００において、サブとして動作する制御サーバは、メインとして動作する制御サーバと同期を取りながら同じ処理を実行しており、メインとして動作する制御サーバに障害が発生した場合に切り替わって処理を受け持つことができる。
【００１９】
制御サーバ３１、３２は、パーソナルコンピュータ等から構成され、図２に示すように、ＣＰＵ（Central Processing Unit）３０１と主記憶部３０２と補助記憶部３０３とネットワーク通信Ｉ／Ｆ３０４とバス３０５とを有する。主記憶部３０２は、揮発性メモリから構成され、ＣＰＵ３０１の作業領域として使用される。補助記憶部３０３は、不揮発性のメモリから構成され、搬送台車制御装置４を制御するための制御プログラムを記憶する。ネットワーク通信Ｉ／Ｆ３０４は、イーサネットコントローラおよびＬＡＮポートを含んで構成される。
【００２０】
制御サーバ３１、３２では、ＣＰＵ３０１が、補助記憶部３０３が記憶する制御プログラムを主記憶部３０２に読み込んで実行することにより、図３に示す各部として機能する。制御サーバ３１、３２は、搬送台車制御部３１１、３２１と、ＰＬＣ制御部３１２、３２２と、デバイスドライバ３１３、３２３と、カウンタ更新部３１４、３２４と、接続先設定部３１５、３２５と、第１変換部３１６、３２６と、して機能する。搬送台車制御部３１１、３２１は、搬送台車制御装置４を制御するための制御情報を生成してデバイスドライバ３１３、３２３へ出力する。
【００２１】
ＰＬＣ制御部３１２、３２２は、ＰＬＣ６を制御するための制御情報を生成してデバイスドライバ３１３、３２３へ出力する。この制御情報には、後述のコマンド情報、メイン制御サーバ識別情報（接続先識別情報）、遅延時間情報、ＰＬＣ制御情報およびライフカウンタ情報（カウンタ情報）が含まれる。メイン制御サーバ識別情報は、デバイスサーバ１、２の接続先となるメインの制御サーバ３１（３２）を識別する情報である。また、ライフカウンタ情報は、制御サーバ３１、３２における障害発生の有無を検知するための情報である。
【００２２】
カウンタ更新部３１４、３２４は、第２ＰＬＣフレームをデバイスサーバ１へ送信する毎に、当該第２ＰＬＣフレームに含まれるライフカウンタ情報が示すカウンタ値を、「１」だけインクリメントさせる形でライフカウンタ情報を更新する。そして、カウンタ更新部３１４、３２４は、ライフカウンタ情報が示すカウント値が予め設定された値に到達すると、ライフカウンタ情報が示すカウント値を初期値にリセットする。
【００２３】
接続先設定部３１５、３２５は、ユーザによる設定操作に応じて、メインの制御サーバとして動作する制御サーバ３１（３２）の制御サーバ識別情報を生成してＰＬＣ制御部３１２、３２２へ出力することにより、メイン制御サーバ識別情報を設定する。ＰＬＣ制御部３１２、３２２は、接続先設定部３１５、３２５から制御サーバ識別情報が入力されると、入力された制御サーバ識別情報をメイン制御サーバ識別情報として制御情報に含ませる。
【００２４】
デバイスドライバ３１３、３２３は、搬送台車制御部３１１、３２１から入力される制御情報を含む第１制御フレームを生成する。また、デバイスドライバ３１３、３２３は、ＰＬＣ制御部３１２、３２２から入力される制御情報を含む第１ＰＬＣフレームを生成する。第１制御フレームは、デバイスサーバ２と搬送台車制御装置４との間でのシリアル通信のプロトコルに対応している。また、第１ＰＬＣフレームは、デバイスサーバ１とＰＬＣ６との間でのシリアル通信のプロトコルに対応している。
【００２５】
第１ＰＬＣフレームは、例えば図４に示すように、第１コントロールコードと、ＰＬＣ識別情報と、コマンド情報と、メイン制御サーバ識別情報と、遅延時間情報と、ＰＬＣ制御情報と、ライフカウンタ情報と、誤り検出情報と、第２コントロールコードを含む。ライフカウンタ情報は、制御サーバ３１、３２からＰＬＣ６宛てに送信される第１ＰＬＣフレームのみに含まれる。また、第１ＰＬＣフレームの先頭には、プリアンブルとヘッダ情報が付加されている。第１コントロールコードおよび第２コントロールコードは、例えばＡＳＣＩＩ制御コードから構成される。第１コントロールコードは、例えば「ＥＮＱ」や「ＡＣＫ」、「ＮＡＫ」、「ＳＴＸ」に設定される。第２コントロールコードは、例えば「ＣＲ」および「ＬＦ」に設定される。メインの制御サーバ３１のＰＬＣ制御部３１２は、例えばＰＬＣ６の制御に関する情報であるＰＬＣ制御情報をＰＬＣ６から読み出す要求、或いは、ＰＬＣ６へＰＬＣ制御情報の書き込む要求を行う場合、第１コントロールコードを「ＥＮＱ」に設定する。そして、ＰＬＣ６は、ＰＬＣ制御情報の読み出し要求を正常に受信した場合、或いは、ＰＬＣ制御情報の書き込み要求を正常に受信した場合、メインの制御サーバ３１宛に送信する第１ＰＬＣフレームの第１コントロールコードを「ＡＣＫ」に設定する。一方、ＰＬＣ６は、ＰＬＣ制御情報の読み出し要求を正常に受信できなかった場合、或いは、ＰＬＣ制御情報の書き込み要求を正常に受信できなかった場合、メインの制御サーバ３１宛に送信する第１ＰＬＣフレームの第１コントロールコードを「ＮＡＫ」に設定する。また、ＰＬＣ６は、ＰＬＣ制御情報の読み出し要求を受信した後、メインの制御サーバ３１宛てにＰＬＣ制御情報に対する応答内容を含む第１ＰＬＣ応答フレームを送信する。この場合、ＰＬＣ６は、第１ＰＬＣ応答フレームを第１コントロールコード「ＳＴＸ」で開始されるフレームを作成して送信する。一方、ＰＬＣ６は、第１ＰＬＣフレームの送信異常が発生した場合、第１コントロールコードを「ＮＡＫ」に設定する。
【００２６】
ＰＬＣ識別情報は、制御サーバ３１、３２がアクセスするＰＬＣ６を識別する情報である。コマンド情報は、制御サーバ３１、３２がＰＬＣ６に対して行う要求の内容を示す情報である。制御サーバ識別情報は、メインの制御サーバ３１およびサブの制御サーバ３２それぞれを識別する情報である。遅延時間情報は、ＰＬＣ６が制御サーバ３１、３２から第１ＰＬＣフレームを受信した後、ＰＬＣ６がその第１ＰＬＣフレームに含まれるコマンド情報に応じたＰＬＣ制御情報を制御サーバ３１、３２宛てに送信を開始するまでの時間を示す情報である。誤り検出情報は、例えばチェックサムコードから構成される。
【００２７】
図３に戻って、第１変換部３１６、３２６は、デバイスドライバ３１３、３２３で生成される第１制御フレームをカプセル化してＴＣＰ／ＩＰプロトコル、又はＵＤＰ／ＩＰプロトコルに対応する第２制御フレームに変換する。また、第１変換部３１６、３２６は、デバイスドライバ３１３、３２３で生成される第１ＰＬＣフレームをカプセル化してＴＣＰ／ＩＰプロトコル、又はＵＤＰ／ＩＰプロトコルに対応する第２ＰＬＣフレームに変換する。そして、第１変換部３１６、３２６は、第２制御フレームをデバイスサーバ２へ予め設定された基準時間以内の時間間隔で送信する。また、第１変換部３１６、３２６は、第２ＰＬＣフレームをデバイスサーバ１へ予め設定された基準時間以内の時間間隔で送信する。
【００２８】
デバイスサーバ１は、制御サーバ３１、３２のうちの１つのメインの制御サーバ（第１制御サーバ）３１（３２）にネットワーク７を介して接続することによりメインの制御サーバ３１（３２）から第２ＰＬＣフレームを受信する。そして、デバイスサーバ１は、受信した第２ＰＬＣフレームを第１ＰＬＣフレームに変換してからデバイスサーバ１に接続されたＰＬＣ６へ送信する。また、デバイスサーバ１は、ＰＬＣ６から第１ＰＬＣフレームに対する第１ＰＬＣ応答フレームを受信すると、受信した第１ＰＬＣ応答フレームを第２ＰＬＣ応答フレームに変換してからメインの制御サーバ３１（３２）へ送信する。デバイスサーバ１は、プロトコルを変換する機能のみならず、第２ＰＬＣフレームの受信状況または第１ＰＬＣフレームの内容を監視したり、ＰＬＣ６からの第１ＰＬＣフレーム形式の応答フレーム（第１ＰＬＣ応答フレーム）の内容を監視する機能を備えた監視デバイスサーバである。
【００２９】
デバイスサーバ２は、メインの制御サーバ（第１制御サーバ）３１（３２）にネットワーク７を介して接続することによりメインの制御サーバ３１（３２）から第２制御フレームを受信する。そして、デバイスサーバ２は、受信した第２制御フレームを第１制御フレームに変換してからデバイスサーバ２に接続された搬送台車制御装置４へ送信する。また、デバイスサーバ２は、搬送台車制御装置４から第１制御フレームに対する第１制御応答フレームを受信すると、受信した第１制御応答フレームを第２制御応答フレームに変換してからメインの制御サーバ３１（３２）へ送信する。
【００３０】
デバイスサーバ１、２は、図２に示すように、ＣＰＵ１０１と主記憶部１０２と補助記憶部１０３とネットワーク通信Ｉ／Ｆ１０４とシリアル通信Ｉ／Ｆ１０５とバス１０６とを備える。主記憶部１０２は、揮発性メモリから構成され、ＣＰＵ１０１の作業領域として使用される。補助記憶部１０３は、不揮発性のメモリから構成され、制御パケットの送信元となる制御サーバ３１、３２の識別情報や後述の通信制御処理を実行するためのプログラム等を記憶する。ＣＰＵ１０１は、補助記憶部１０３が記憶するプログラムを主記憶部１０２に読み込んで実行することにより、後述の通信制御処理を実行する。ネットワーク通信Ｉ／Ｆ１０４は、イーサネットコントローラおよびＬＡＮポートを含んで構成される。ネットワーク通信Ｉ／Ｆ１０４は、ネットワーク７に接続された制御サーバ３１、３２との間でデータの送受信を行う。シリアル通信Ｉ／Ｆ１０５は、例えばＲＳ−２３２Ｃ、ＲＳ−４２２等のシリアル通信規格に準拠したコネクタを有する。シリアル通信Ｉ／Ｆ１０５は、搬送台車制御装置４やＰＬＣ６との間でシリアル通信規格に従ってシリアル経路８、９を介してデータの送受信を行う。
【００３１】
デバイスサーバ１では、ＣＰＵ１０１が、補助記憶部１０３が記憶する制御プログラムを主記憶部１０２に読み込んで実行することにより、図３に示すように、第２変換部１１１、判定部１１３、切替通知部１１４、として機能する。一方、デバイスサーバ２では、ＣＰＵ１０１が、補助記憶部１０３が記憶する制御プログラムを主記憶部１０２に読み込んで実行することにより、図３に示すように、第２変換部２１１として機能する。デバイスサーバ１の第２変換部１１１は、２つの制御サーバ３１、３２のうちメインの制御サーバから送信される第２ＰＬＣフレームを、ネットワーク通信Ｉ／Ｆ１０４を介して取得する。そして、第２変換部２１１は、取得した第２ＰＬＣフレームを、ＰＬＣ６と通信するためのプロトコルに対応する第１ＰＬＣフレームに変換してからシリアル通信Ｉ／Ｆ１０５を介してＰＬＣ６へ出力する。また、デバイスサーバ２の第２変換部２１１は、２つの制御サーバ３１、３２のうちメインの制御サーバから送信される第２ＰＬＣフレームを、ネットワーク通信Ｉ／Ｆ１０４を介して取得する。そして、第２変換部２１１は、取得した第２制御フレームを、搬送台車制御装置４と通信するためのプロトコルに対応する第１制御フレームに変換してからシリアル通信Ｉ／Ｆ１０５を介して搬送台車制御装置４へ出力する。また、補助記憶部１０３は、第１ＰＬＣフレームに含まれるライフカウンタ情報と制御サーバ識別情報とを記憶するカウンタ情報・識別情報記憶部１２１として機能する。
【００３２】
計時部１１５は、第２ＰＬＣフレームを受信した後の経過時間を計時する。計時部１１５は、第２ＰＬＣフレームを受信する毎に経過時間を初期値にリセットする。
【００３３】
判定部１１３は、デバイスサーバ１、２について接続先をメインの制御サーバ３１（３２）からサブの制御サーバ（第２制御サーバ）３２（３１）へ切り替えるか否かを判定する。判定部１１３は、メインの制御サーバ３１（３２）から受信した複数の第１ＰＬＣフレームそれぞれに含まれるライフカウンタ情報の履歴に基づいて、デバイスサーバ１、２の接続先をメインの制御サーバ３１（３２）からサブの制御サーバ３２（３１）へ切り替えるか否かを判定する。具体的には、判定部１１３は、第１ＰＬＣフレームに含まれるライフカウンタ情報の示すカウント値が経時的に変化せず一定である場合、デバイスサーバ１、２の接続先を切り替えると判定する。判定部１１３は、第２変換部１１１により第１ＰＬＣフレームが変換・生成される毎に、第１ＰＬＣフレームからライフカウンタ情報を抽出してカウンタ情報・識別情報記憶部１２１に記憶させる。そして、判定部１１３は、カウンタ情報・識別情報記憶部１２１が記憶するライフカウンタ情報が示すカウント値の履歴に基づいて、カウント値が経時的に変化しているか否かを判定する。
【００３４】
また、判定部１１３は、メインの制御サーバ３１（３２）から受信する第２ＰＬＣフレームに含まれるメイン制御サーバ識別情報に基づいて、デバイスサーバ１、２の接続先をメインの制御サーバ３１（３２）からサブの制御サーバ３２（３１）へ切り替えるか否かを判定する。判定部１１３は、第２変換部１１１により変換された第１ＰＬＣフレームからメイン制御サーバ識別情報を抽出してカウンタ情報・識別情報記憶部１２１に記憶させる。ここで、判定部１１３が第１ＰＬＣフレームから抽出されたメイン制御サーバ識別情報が、カウンタ情報・識別情報記憶部１２１が既に記憶するメイン制御サーバ識別情報と異なるとする。この場合、判定部１１３は、デバイスサーバ１、２の接続先をメインの制御サーバ３１（３２）からサブの制御サーバ３２（３１）へ切り替えると判定する。
【００３５】
また、判定部１１３は、ＰＬＣ６からの応答フレーム内容である第１ＰＬＣフレームに含まれるメイン制御サーバ識別情報に基づいて、デバイスサーバ１、２の接続先をメインの制御サーバ３１（３２）からサブの制御サーバ３２（３１）へ切り替えるか否かを判定する。
【００３６】
更に、判定部１１３は、メインの制御サーバ３１（３２）から第２ＰＬＣフレームを受信した後、予め設定された基準時間以内に新たな第２ＰＬＣフレームを受信するか否かに応じて、デバイスサーバ１、２の接続先をメインの制御サーバ３１（３２）からサブの制御サーバ３２（３１）へ切り替えるか否かを判定する。具体的には、判定部１１３は、メインの制御サーバ３１（３２）から第２ＰＬＣフレームを受信した後、新たに第２ＰＬＣフレームを受信せずに基準時間を経過すると、デバイスサーバ１、２の接続先を切り替えると判定する。
【００３７】
切替通知部１１４は、デバイスサーバ２に対して、接続先をメインの制御サーバ３１（３２）からサブの制御サーバ３２（３１）へ切り替えるよう通知する切替通知フレームを、ネットワーク７を介して送信する。具体的には、切替通知部１１４は、判定部１１３によりデバイスサーバ１、２の接続先をメインの制御サーバ３１（３２）からサブの制御サーバ３２（３１）へ切り替えると判定されると、切替通知フレームを送信する。
【００３８】
次に、本実施の形態に係る通信制御システム１０００の動作を図５乃至図７を参照しながら説明する。ここでは、通信制御システム１０００の初期状態において、制御サーバ３１がメインの制御サーバ、制御サーバ３２がサブの制御サーバとして動作しているものとして説明する。なお、図５乃至図７では、搬送台車制御装置４からデバイスサーバ２へ送信される第１制御応答フレーム、ＰＬＣ６からデバイスサーバ１へ送信される第１ＰＬＣ応答フレームの授受については図示を省略している。また、デバイスサーバ１から制御サーバ３１、３２へ送信される第２制御応答フレーム、デバイスサーバ２から制御サーバ３１、３２へ送信される第２ＰＬＣ応答フレームの授受についても図示を省略している。図５において、まず、第２制御フレームが、メインの制御サーバ３１からデバイスサーバ２へ送信されると（ステップＳ１）、デバイスサーバ２は、第２制御フレームを第１制御フレームに変換して、搬送台車制御装置４へ出力する（ステップＳ２）。また、第２ＰＬＣフレームが、メインの制御サーバ３１からデバイスサーバ１へ送信されると（ステップＳ３）、デバイスサーバ１は、第２ＰＬＣフレームを第１ＰＬＣフレームに変換して、ＰＬＣ６へ出力する（ステップＳ４）。そして、デバイスサーバ１が、第１ＰＬＣフレームに含まれるライフカウンタ情報の示すカウント値が経時的に変化していると判定する限り、ステップＳ１乃至Ｓ４の処理が繰り返し実行される。ここにおいて、図６（Ａ）の破線で示すように、メインの制御サーバ３１において、デバイスドライバ３１３から出力される第１制御フレームは、第１変換部３１６により第２制御フレームに変換されてデバイスサーバ２の第２変換部２１１へ送信される。そして、第２変換部２１１は、制御サーバ３１から受信した第２制御フレームを第１制御フレームに変換して搬送台車制御装置４へ出力する。また、図６（Ａ）の一点鎖線で示すように、メインの制御サーバ３１において、デバイスドライバ３１３から出力される第１ＰＬＣフレームは、第１変換部３１６により第２ＰＬＣフレームに変換されてデバイスサーバ１の第２変換部１１１へ送信される。そして、第２変換部１１１は、制御サーバ３１から受信した第２ＰＬＣフレームを第１ＰＬＣフレームに変換してＰＬＣ６へ出力する。
【００３９】
図５に戻って、その後、第２ＰＬＣフレームが、制御サーバ３１からデバイスサーバ１へ送信され（ステップＳ５）、デバイスサーバ１が、第２ＰＬＣフレームを第１ＰＬＣフレームに変換したとする（ステップＳ６）。このとき、デバイスサーバ１が、第１ＰＬＣフレームに含まれるライフカウンタ情報のカウント値が一定であると判定したとする（ステップＳ７）。この場合、メインの制御サーバを制御サーバ３１から制御サーバ３２へ切り替えるよう指令するための切替通知フレームが、デバイスサーバ１からデバイスサーバ２へ送信される（ステップＳ８）。その後、デバイスサーバ１は、その接続先をメインの制御サーバ３１をサブの制御サーバ３２へ切り替える切替処理を実行する（ステップＳ９）。また、デバイスサーバ２も、デバイスサーバ１から切替通知フレームを受信すると、その接続先をメインの制御サーバ３１からサブの制御サーバ３２へ切り替える切替処理を実行する（ステップＳ１０）。以後、制御サーバ３２がメインの制御サーバとなり、制御サーバ３１がサブの制御サーバとなる。
【００４０】
そして、第２制御フレームが、制御サーバ３２からデバイスサーバ２へ送信されると（ステップＳ１１）、デバイスサーバ２は、第２制御フレームを第１制御フレームに変換して搬送台車制御装置４へ出力する（ステップＳ１２）。また、第２ＰＬＣフレームが、制御サーバ３２からデバイスサーバ１へ送信されると（ステップＳ１３）、デバイスサーバ１は、第２ＰＬＣフレームを第１ＰＬＣフレームに変換してＰＬＣ６へ出力する（ステップＳ１４）。ここにおいて、図６（Ｂ）の破線で示すように、メインの制御サーバ３２において、デバイスドライバ３２３から出力される第１制御フレームは、第１変換部３２６により第２制御フレームに変換されてデバイスサーバ２の第２変換部２１１へ送信される。そして、第２変換部２１１は、制御サーバ３２から受信した第２制御フレームを第１制御フレームに変換して搬送台車制御装置４へ出力する。また、図６（Ｂ）の一点鎖線で示すように、メインの制御サーバ３２において、デバイスドライバ３２３から出力される第１ＰＬＣフレームは、第１変換部３２６により第２ＰＬＣフレームに変換されてデバイスサーバ１の第２変換部１１１へ送信される。そして、第２変換部１１１は、制御サーバ３２から受信した第２ＰＬＣフレームを第１ＰＬＣフレームに変換してＰＬＣ６へ出力する。
【００４１】
再び図５に戻って、第２ＰＬＣフレームが、制御サーバ３２からデバイスサーバ１へ送信され（ステップＳ１５）、デバイスサーバ１が、第２ＰＬＣフレームを第１ＰＬＣフレームに変換したとする（ステップＳ１６）。このとき、デバイスサーバ１が、当該第１ＰＬＣフレームに含まれるメイン制御サーバ識別情報が変更されたと判定したとする（ステップＳ１７）。この場合、メインの制御サーバ３２をサブの制御サーバ３１へ切り替えるよう指令する切替通知フレームが、デバイスサーバ１からデバイスサーバ２へ送信される（ステップＳ１８）。その後、デバイスサーバ１は、その接続先をメインの制御サーバ３２をサブの制御サーバ３１へ切り替える切替処理を実行する（ステップＳ１９）。また、デバイスサーバ２も、その接続先をデバイスサーバ１から切替通知フレームを受信すると、メインの制御サーバ３２をサブの制御サーバ３１へ切り替える切替処理を実行する（ステップＳ２０）。
【００４２】
通信制御システム１０００のその後の動作は図７に記載される。第２制御フレームが、制御サーバ３１からデバイスサーバ２へ送信されると（ステップＳ２１）、デバイスサーバ２は、第２制御フレームを第１制御フレームに変換して搬送台車制御装置４へ出力する（ステップＳ２２）。また、第２ＰＬＣフレームが、制御サーバ３１からデバイスサーバ１へ送信されると（ステップＳ２３）、デバイスサーバ１は、第２ＰＬＣフレームを第１ＰＬＣフレームに変換してＰＬＣ６へ出力する（ステップＳ２４）。
【００４３】
また、第２ＰＬＣフレームが、制御サーバ３１からデバイスサーバ１へ送信された後（ステップＳ２５）、デバイスサーバ１が、基準時間△Ｔだけ経過したと判定したとする（ステップＳ２６）。この場合、メインの制御サーバを制御サーバ３１から制御サーバ３２へ切り替えるよう指令するための切替通知フレームが、デバイスサーバ１からデバイスサーバ２へ送信される（ステップＳ２７）。その後、デバイスサーバ１は、その接続先をメインの制御サーバ３１からサブの制御サーバ３２へ切り替える切替処理を実行する（ステップＳ２８）。また、デバイスサーバ２も、デバイスサーバ１から切替通知フレームを受信すると、その接続先をメインの制御サーバ３１からサブの制御サーバ３２へ切り替える切替処理を実行する（ステップＳ２９）。
【００４４】
そして、第２制御フレームが、制御サーバ３２からデバイスサーバ２へ送信されると（ステップＳ３０）、デバイスサーバ２は、第２制御フレームを第１制御フレームに変換して搬送台車制御装置４へ出力する（ステップＳ３１）。また、第２ＰＬＣフレームが、制御サーバ３２からデバイスサーバ１へ送信されると（ステップＳ３２）、デバイスサーバ１は、第２ＰＬＣフレームを第１ＰＬＣフレームに変換してＰＬＣ６へ出力する（ステップＳ３３）。
【００４５】
このように、本実施の形態に係る通信制御システム１０００では、デバイスサーバ１が、第１ＰＬＣフレームに含まれるライフカウンタ情報の示すカウント値が時間に関わらず一定であると判定すると、メインの制御サーバが２つの制御サーバ３１、３２のうちのいずれか一方から他方へ切り替わる。また、デバイスサーバ１が、メインの制御サーバにおいて制御サーバ切替指令がなされたと判定すると、メインの制御サーバが２つの制御サーバ３１、３２のうちのいずれか一方から他方へ切り替わる。更に、デバイスサーバ１が、第２ＰＬＣフレーム受信後の経過時間が基準時間に到達したと判定すると、メインの制御サーバが２つの制御サーバ３１、３２のうちのいずれか一方から他方へ切り替わる。
【００４６】
次に、本実施の形態に係るデバイスサーバ１が実行する第１通信制御処理について図８を参照しながら説明する。この第１通信制御処理は、デバイスサーバ１に電源が投入されたことを契機として開始される。まず、第２変換部１１１がメインの制御サーバから第２ＰＬＣフレームを受信すると（ステップＳ１０１）、計時部１１５は、第２ＰＬＣフレーム受信後の経過時間の計時を開始する（ステップＳ１０２）。次に、第２変換部１１１は、第２ＰＬＣフレームを第１ＰＬＣフレームへ変換してＰＬＣ６へ出力する（ステップＳ１０３）。
【００４７】
続いて、判定部１１３は、第１ＰＬＣフレームからライフカウンタ情報とメイン制御サーバ識別情報とを抽出して（ステップＳ１０４）、カウンタ情報・識別情報記憶部１２１に記憶させる（ステップＳ１０５）。その後、判定部１１３は、カウンタ情報・識別情報記憶部１２１が記憶するライフカウンタ情報の履歴に基づいて、ライフカウンタ情報のカウント値が時間に依らず一定であるか否かを判定する（ステップＳ１０６）。判定部１１３によりライフカウンタ情報のカウント値が時間に依らず一定であると判定されると（ステップＳ１０６：Ｙｅｓ）、後述のステップＳ１１０の処理が実行される。
【００４８】
一方、判定部１１３が、ライフカウンタ情報のカウント値が経時的に変化していると判定したとする（ステップＳ１０６：Ｎｏ）。この場合、判定部１１３は、カウンタ情報・識別情報記憶部１２１が記憶するメインの制御サーバの制御サーバ識別情報が変更されたか否かに基づいて、メインの制御サーバの設定が変更されたか否かを判定する（ステップＳ１０７）。判定部１１３によりメインの制御サーバの設定が変更されたと判定されると（ステップＳ１０７：Ｙｅｓ）、後述のステップＳ１１０の処理が実行される。
【００４９】
一方、判定部１１３が、メインの制御サーバの設定が変更されていないと判定すると（ステップＳ１０７：Ｎｏ）、第２変換部１１１は、新たに第２ＰＬＣフレームを受信したか否かを判定する（ステップＳ１０８）。第２変換部１１１が、第２ＰＬＣフレームを受信したと判定すると（ステップＳ１０８：Ｙｅｓ）、再びステップＳ１０２の処理が実行される。このとき、計時部１１５は、第２ＰＬＣフレーム受信後の経過時間を初期値にリセットする。
【００５０】
一方、第２変換部１１１が、第２ＰＬＣフレームを受信していないと判定すると（ステップＳ１０８：Ｎｏ）、判定部１１３は、計時部１１５が計時する第２ＰＬＣフレーム受信後の経過時間が予め設定された基準時間に到達したか否かを判定する（ステップＳ１０９）。判定部１１３により第２ＰＬＣフレーム受信後の経過時間が予め設定された基準時間に到達していないと判定されると（ステップＳ１０９：Ｎｏ）、再びステップＳ１０８の処理が実行される。
【００５１】
一方、判定部１１３により第２ＰＬＣフレーム受信後の経過時間が予め設定された基準時間に到達したと判定されると（ステップＳ１０９：Ｙｅｓ）、切替通知部１１４は、デバイスサーバ２宛てに切替通知フレームを送信する（ステップＳ１１０）。その後、第２変換部１１１は、受信する第２制御フレームおよび第２ＰＬＣフレームの送信元を、２つの制御サーバ３１、３２のうちサブの制御サーバとして動作している方へ切り替える切替処理を実行する（ステップＳ１１１）。このとき、デバイスサーバ２の第２変換部２１１も、切替通知フレームを受信すると、受信する第２制御フレームおよび第２ＰＬＣフレームの送信元を、２つの制御サーバ３１、３２のうちサブの制御サーバとして動作している方へ切り替える切替処理を実行する。その後、再びステップＳ１０１の処理が実行される。
【００５２】
以上説明したように、本実施の形態に係る通信制御システム１０００によれば、２つの制御サーバ３１、３２がネットワーク７に接続されている。また、搬送台車制御装置４に接続されたデバイスサーバ２とＰＬＣ６に接続されたデバイスサーバ１とが、ネットワーク７を介してメインの制御サーバ３１（３２）に接続されている。そして、判定部１１３が、第２ＰＬＣフレームの受信状況または第１ＰＬＣフレームの内容を監視し、デバイスサーバ１、２の接続先を制御サーバ３１（３２）から制御サーバ３２（３１）へ切り替えるか否かを判定する。また、切替通知部１１４は、デバイスサーバ１、２の接続先を制御サーバ３１（３２）から制御サーバ３２（３１）へ切り替えると判定されると、切替通知を、ネットワークを介してデバイスサーバ２へ送信する。このようにして、デバイスサーバ１、２に接続された搬送台車制御装置４およびＰＬＣ６と通信する制御サーバ３１、３２の切替が、ネットワーク７を介して実行される。従って、制御サーバ３１、３２の設置場所は、デバイスサーバ１、２とネットワーク７を介して接続可能であれば制限されないので、通信制御システム１０００の設置場所の自由度が広がるという利点がある。また、搬送台車制御装置４およびＰＬＣ６の接続先となる制御サーバ３１、３２を切り替えるための切替器が不要となるので、その分、通信制御システム１０００の小規模化を図ることができる。
【００５３】
また、本実施の形態では、第１ＰＬＣフレームが、ライフカウンタ情報を含んでいる。そして、カウンタ更新部３１４、３２４は、第１ＰＬＣフレームをデバイスサーバ１、２へ送信する毎に、送信する第１ＰＬＣフレームに含まれるライフカウンタ情報が示すカウント値を、「１」だけインクリメントさせる形で更新する。判定部１１３は、メインの制御サーバ３１（３２）から受信した第２ＰＬＣフレームのライフカウンタ情報の履歴に基づいて、メインの制御サーバ３１（３２）からサブの制御サーバ３２（３１）へ切り替えるか否かを判定する。これにより、メインの制御サーバ３１（３２）における障害発生の有無を比較的早期に検知できるので、搬送台車制御装置４およびＰＬＣ６の動作不良の発生が抑制される。
【００５４】
更に、本実施の形態に係る制御サーバ３１、３２は、第２ＰＬＣフレームをデバイスサーバ１，２へ予め設定された基準時間以内の時間間隔で送信する。判定部１１３は、メインの制御サーバ３１（３２）から第２ＰＬＣフレームを受信した後、基準時間以内に新たな第２ＰＬＣフレームを受信するか否かに応じて、メインの制御サーバ３１（３２）をサブの制御サーバ３２（３１）へ切り替えるか否かを判定する。これにより、メインの制御サーバ３１（３２）とデバイスサーバ１、２との間での通信経路で障害が発生したことに起因して搬送台車制御装置４およびＰＬＣ６が停止した状態で長時間放置されることを抑制できる。
【００５５】
また、本実施の形態では、第１ＰＬＣフレームが、デバイスサーバ１、２の接続先となる制御サーバ３１（３２）を識別するメイン制御サーバ識別情報を含んでいる。また、制御サーバ３１、３２は、それぞれ、メイン制御サーバ識別情報を設定する接続先設定部３２５を有する。判定部１１３は、第１ＰＬＣフレームに含まれるメイン制御サーバ識別情報に基づいて、デバイスサーバ１、２の接続先をメインの制御サーバ３１からサブの制御サーバ３２へ切り替えるか否かを判定する。これにより、ユーザがメインの制御サーバ３１、３２を自由に変更することができるので、通信制御システム１０００の運用方法のバリエーションが広がるという利点がある。
【００５６】
（実施の形態２）
本実施の形態に係る通信制御システム２０００は、２つのデバイスサーバ２００１、２００２が、それぞれ監視デバイスサーバとして動作可能である点で実施の形態１に係る通信制御システム１０００と相違する。本実施の形態に係る通信制御システム２０００では、図９に示すように、制御サーバ２０３１、２０３２が、監視デバイスサーバ選定部２３１７、２３２７を備える。また、デバイスサーバ２００１、２００２の両方が、いずれも判定部２１１３、２２１３と切替通知部１１４、２１４と監視デバイスサーバ通知部２１１５、２２１５とを備える。なお、図９において、実施の形態１と同様の構成については、図３と同一の符号を付している。本実施の形態に係る第１制御フレームは、少なくとも、制御サーバ識別情報とライフカウンタ情報とを含む。ライフカウンタ情報は、制御サーバ２０３１、２０３２から搬送台車制御装置４へ送信される第１制御フレームのみに含まれる。
【００５７】
監視デバイスサーバ選定部２３１７、２３２７は、デバイスサーバ２００１、２００２の中から監視デバイスサーバとして動作するデバイスサーバを１つ選定する。そして、監視デバイスサーバ選定部２３１７、２３２７は、選定したデバイスサーバ２００１（２００２）のデバイスサーバ識別情報（第１デバイスサーバ識別情報）を生成してＰＬＣ制御部３１２、３２２へ出力する。監視デバイスサーバ選定部２３１７、２３２７は、監視デバイスサーバの選定および選定したデバイスサーバ２００１（２００２）のデバイスサーバ識別情報の生成を行う。ＰＬＣ制御部３１２、３２２は、監視デバイスサーバ選定部２３１７、２３２７からデバイスサーバ識別情報が入力されると、制御情報にデバイスサーバ識別情報を含ませる。
【００５８】
判定部２１１３は、実施の形態１で説明した判定部１１３が有する機能の他に、第１ＰＬＣフレームに含まれるデバイスサーバ識別情報とデバイスサーバ２００１に付与されたデバイスサーバ識別情報（第２デバイスサーバ識別情報）とが一致しているか否かを判定する機能を有する。
【００５９】
判定部２２１３は、判定部２１１３の有する機能と同様である。すなわち判定部２２１３は、第１制御フレームに含まれるライフカウンタ情報の示すカウント値が経時的に変化しているか否かを判定する。また、判定部２２１３は、第１制御フレームに含まれるメイン制御サーバ識別情報が変更されたか否かを判定する。更に、判定部２２１３は、計時部２１５により計時される経過時間が予め設定された基準時間に到達したか否かを判定する。また、判定部２２１３は、第１制御フレームに含まれるデバイスサーバ識別情報とデバイスサーバ２００２のデバイスサーバ識別情報とが一致しているか否かを判定する機能を有する。
【００６０】
切替通知部２１４は、実施の形態１で説明した切替通知部１１４が有する機能と同様であり、デバイスサーバ２００１へメインの制御サーバを切り替えるよう通知する切替通知フレームを送信する。
【００６１】
監視デバイスサーバ通知部２１１５、２２１５は、デバイスサーバ２００１（２００２）が監視デバイスサーバとして動作する場合、監視デバイスサーバとして動作する旨を通知する監視デバイスサーバ通知フレームを他のデバイスサーバ２００２（２００１）へ送信する。具体的には、デバイスサーバ２００１の監視デバイスサーバ通知部２１１５は、判定部２１１３により第１ＰＬＣフレームに含まれるデバイスサーバ識別情報とデバイスサーバ２００１のデバイスサーバ識別情報とが一致していると判定されると、デバイスサーバ２００２へ監視デバイスサーバ通知フレームを送信する。また、デバイスサーバ２００２の監視デバイスサーバ通知部２２１５は、判定部２２１３により第１制御フレームに含まれるデバイスサーバ識別情報とデバイスサーバ２００２のデバイスサーバ識別情報とが一致していると判定されると、デバイスサーバ２００１へ監視デバイスサーバ通知フレームを送信する。デバイスサーバ２００２（２００１）は、監視デバイスサーバ通知を受信すると、判定部２２１３（２１１３）、切替通知部２１４（１１４）および監視デバイスサーバ通知部２２１５（２１１５）の動作を停止させる。
【００６２】
また、デバイスサーバ２００１の監視デバイスサーバ通知部２１１５は、判定部２１１３により第１ＰＬＣフレームに含まれるデバイスサーバ識別情報とデバイスサーバ２００１のデバイスサーバ識別情報とが不一致と判定されると、第１ＰＬＣフレームに含まれるデバイスサーバ識別情報が付与されたデバイスサーバ（すなわち今の例ではデバイスサーバ２００２）へ監視デバイスサーバを変更する旨を通知する監視デバイスサーバ変更通知フレームを送信する。更に、デバイスサーバ２００２の監視デバイスサーバ通知部２２１５は、判定部２２１３により第１制御フレームに含まれるデバイスサーバ識別情報とデバイスサーバ２００２のデバイスサーバ識別情報とが不一致と判定されると、第１制御フレームに含まれるデバイスサーバ識別情報が付与されたデバイスサーバ（すなわち今の例ではデバイスサーバ２００１）へ監視デバイスサーバ変更通知フレームを送信する。そして、デバイスサーバ２００２（２００１）は、監視デバイスサーバ変更通知フレームを受信すると、判定部２２１３（２１１３）、切替通知部２１４（１１４）、監視デバイスサーバ通知部２２１５（２１１５）および計時部２１５（１１５）を起動する。
【００６３】
次に、本実施の形態に係る通信制御システム２０００の動作について図１０を参照しながら説明する。ここでは、通信制御システム２０００の初期状態において、制御サーバ２０３１がメインの制御サーバ、制御サーバ２０３２がサブの制御サーバとして動作しているものとして説明する。また、初期状態において、デバイスサーバ２００１、２００２の両方において、判定部２１１３、２２１３と切替通知部１１４、２１４と監視デバイスサーバ通知部２１１５、２２１５と計時部１１５、２１５とが動作しているものとする。なお、図１０では、搬送台車制御装置４からデバイスサーバ２００２へ送信される第１制御応答フレーム、ＰＬＣ６からデバイスサーバ２００１へ送信される第１ＰＬＣ応答フレームの授受については図示を省略している。また、デバイスサーバ２００１から制御サーバ２０３１、２０３２へ送信される第２制御応答フレーム、デバイスサーバ２００２から制御サーバ２０３１、２０３２へ送信される第２ＰＬＣ応答フレームの授受についても図示を省略している。
【００６４】
まず、第２制御フレームが、メインの制御サーバ２０３１からデバイスサーバ２００２へ送信されると（ステップＳ５１）、デバイスサーバ２００２は、第２制御フレームを第１制御フレームに変換して、搬送台車制御装置４へ出力する（ステップＳ５２）。また、第２ＰＬＣフレームが、メインの制御サーバ２０３１からデバイスサーバ２００１へ送信されると（ステップＳ５３）、デバイスサーバ２００１は、第２ＰＬＣフレームを第１ＰＬＣフレームに変換して、ＰＬＣ６へ出力する（ステップＳ５４）。
【００６５】
図１０の前半では、デバイスサーバ２００２が監視デバイスサーバとして指定されるとして説明を行う。デバイスサーバ２００２が、第１制御フレームに含まれるデバイスサーバ識別情報が自装置のデバイスサーバ識別情報と一致すると判定したとする（ステップＳ５５）。この場合、デバイスサーバ２００２が監視デバイスサーバとして動作する旨を通知する監視デバイスサーバ通知フレームが、デバイスサーバ２００２からデバイスサーバ２００１へ送信される（ステップＳ５６）。一方、デバイスサーバ２００１は、デバイスサーバ２００２から監視デバイスサーバ通知フレームを受信すると、判定部２１１３、切替通知部１１４、監視デバイスサーバ通知部２１１５および計時部１１５を停止する（ステップＳ５７）。
【００６６】
図１０の後半は、監視デバイスサーバがデバイスサーバ２００２から２００１に切り替わる際の通信制御システム２０００の動作である。デバイスサーバ２００１のデバイスサーバ識別情報を含む第２制御フレームが、メインの制御サーバ２０３１からデバイスサーバ２００２へ送信されたとする（ステップＳ５８）。この場合、デバイスサーバ２００２は、第２制御フレームを第１制御フレームに変換して、搬送台車制御装置４へ出力する（ステップＳ５９）。また、デバイスサーバ２００１のデバイスサーバ識別情報を含む第２ＰＬＣフレームが、メインの制御サーバ２０３１からデバイスサーバ２００１へ送信されたとする（ステップＳ６０）。この場合、デバイスサーバ２００１は、第２ＰＬＣフレームを第１ＰＬＣフレームに変換して、ＰＬＣ６へ出力する（ステップＳ６１）。ここにおいて、デバイスサーバ２００１は、判定部２１１３が停止しているので、第１ＰＬＣフレームに含まれるデバイスサーバ識別情報とデバイスサーバ２００１のデバイスサーバ識別情報とが一致しているか否かの判定を実行しない。
【００６７】
一方、デバイスサーバ２００２では、判定部２２１３が、第１制御フレームに含まれるデバイスサーバ識別情報が自装置のデバイスサーバ識別情報と不一致であると判定する（ステップＳ６２）。そうすると、監視デバイスサーバが変更される旨を通知する監視デバイスサーバ変更通知フレームが、デバイスサーバ２００２から第１制御フレームに含まれるデバイスサーバ識別情報に対応するデバイスサーバ２００１へ送信される（ステップＳ６３）。
【００６８】
デバイスサーバ２００１は、監視デバイスサーバ変更通知フレームをデバイスサーバ２００２から受信すると、判定部２１１３、切替通知部１１４、監視デバイスサーバ通知部２１１５および計時部１１５を起動する（ステップＳ６４）。次に、監視デバイスサーバ通知フレームが、デバイスサーバ２００１からデバイスサーバ２００２へ送信される（ステップＳ６５）。
【００６９】
デバイスサーバ２００２は、監視デバイスサーバ通知フレームを受信すると、判定部２２１３、切替通知部２１４、監視デバイスサーバ通知部２２１５および計時部２１５を停止させる（ステップＳ６６）。
【００７０】
このように、本実施の形態に係る通信制御システム２０００では、第１制御フレームおよび第１ＰＬＣフレームに含まれるデバイスサーバ識別情報に対応するデバイスサーバが、監視デバイスサーバとして動作する。そして、第１制御フレームおよび第１ＰＬＣフレームに含まれるデバイスサーバ識別情報が変更される毎に、監視デバイスサーバとして動作するデバイスサーバが変更される。
【００７１】
次に、本実施の形態に係るデバイスサーバ２００１、２００２が実行する通信制御処理について図１１および図１２を参照しながら説明する。この通信制御処理は、デバイスサーバ２００１に電源が投入されたことを契機として開始される。まず、第２変換部２１１（１１１）がメインの制御サーバから第２制御フレーム（第２ＰＬＣフレーム）を受信したとする（ステップＳ２０１）。この場合、計時部２１５（１１５）は、第２制御フレーム（第２ＰＬＣフレーム）受信後の経過時間の計時を開始する（ステップＳ２０２）。次に、第２変換部２１１（１１１）は、第２制御フレーム（第２ＰＬＣフレーム）を第１制御フレーム（第１ＰＬＣフレーム）へ変換して搬送台車制御装置４（ＰＬＣ６）へ出力する（ステップＳ２０３）。
【００７２】
続いて、判定部２２１３（２１１３）は、第１制御フレーム（第１ＰＬＣフレーム）からデバイスサーバ識別情報を抽出する（ステップＳ２０４）。その後、判定部２２１３（２１１３）は、第１制御フレーム（第１ＰＬＣフレーム）から抽出したデバイスサーバ識別情報と、デバイスサーバ２００２（２００１）のデバイスサーバ識別情報とが一致するか否かを判定する（ステップＳ２０５）。ここで、判定部２２１３（２１１３）が、第１制御フレーム（第１ＰＬＣフレーム）から抽出したデバイスサーバ識別情報と、デバイスサーバ２００２（２００１）のデバイスサーバ識別情報とが不一致と判定したとする（ステップＳ２０５：Ｎｏ）。この場合、図１２に示すように、後述のステップＳ２１５の処理が実行される。
【００７３】
図１１に戻って、一方、判定部２２１３（２１１３）が、第１制御フレーム（第１ＰＬＣフレーム）から抽出したデバイスサーバ識別情報と、デバイスサーバ２００２（２００１）のデバイスサーバ識別情報とが一致すると判定したとする（ステップＳ２０５：Ｙｅｓ）。この場合、監視デバイスサーバ通知部２２１５（２１１５）は、他方のデバイスサーバ２００１（２００２）へ監視デバイスサーバ通知フレームを送信する（ステップＳ２０６）。
【００７４】
次に、判定部２２１３（２１１３）は、第１制御フレーム（第１ＰＬＣフレーム）からライフカウンタ情報とメイン制御サーバ識別情報とを抽出して（ステップＳ２０７）、カウンタ情報・識別情報記憶部２２１（１２１）に記憶させる（ステップＳ２０８）。続いて、判定部２２１３（２１１３）は、ライフカウンタ情報のカウント値が時間に依らず一定であるか否かを判定する（ステップＳ２０９）。判定部２２１３（２１１３）によりライフカウンタ情報のカウント値が時間に依らず一定であると判定されると（ステップＳ２０９：Ｙｅｓ）、後述のステップＳ２１３の処理が実行される。
【００７５】
一方、判定部２２１３（２１１３）は、ライフカウンタ情報のカウント値が経時的に変化していると判定すると（ステップＳ２０９：Ｎｏ）、メインの制御サーバの設定が変更されたか否かを判定する（ステップＳ２１０）。判定部２２１３（２１１３）によりメインの制御サーバの設定が変更されたと判定されると（ステップＳ２１０：Ｙｅｓ）、後述のステップＳ２１３の処理が実行される。
【００７６】
一方、判定部２２１３（２１１３）が、メインの制御サーバの設定が変更されていないと判定すると（ステップＳ２１０：Ｎｏ）、第２変換部２１１（１１１）は、新たに第２制御フレーム（第２ＰＬＣフレーム）を受信したか否かを判定する（ステップＳ２１１）。第２変換部２１１（１１１）が、第２制御フレーム（第２ＰＬＣフレーム）を受信したと判定すると（ステップＳ２１１：Ｙｅｓ）、再びステップＳ２０２の処理が実行される。
【００７７】
一方、第２変換部２１１（１１１）が、第２制御フレーム（第２ＰＬＣフレーム）を受信していないと判定したとする（ステップＳ２１１：Ｎｏ）。この場合、判定部２２１３（２１１３）は、計時部２１５（１１５）が計時する第２制御フレーム（第２ＰＬＣフレーム）受信後の経過時間が予め設定された基準時間に到達したか否かを判定する（ステップＳ２１２）。判定部２２１３（２１１３）により第２制御フレーム（第２ＰＬＣフレーム）受信後の経過時間が予め設定された基準時間に到達していないと判定されると（ステップＳ２１２：Ｎｏ）、再びステップＳ２１１の処理が実行される。
【００７８】
一方、判定部２２１３（２１１３）により第２制御フレーム（第２ＰＬＣフレーム）受信後の経過時間が基準時間に到達したと判定されると（ステップＳ２１２：Ｙｅｓ）、切替通知部２１４（１１４）は、デバイスサーバ２００１（２００２）宛てに切替通知フレームを送信する（ステップＳ２１３）。その後、第２変換部２１１（１１１）は、受信する第２制御フレームおよび第２ＰＬＣフレームの送信元を、２つの制御サーバ２０３１、２０３２のうちサブの制御サーバとして動作している方へ切り替える切替処理を実行する（ステップＳ２１４）。このとき、デバイスサーバ２００１（２００２）の第２変換部１１１（２１１）も、切替通知フレームを受信すると、受信する第２制御フレームおよび第２ＰＬＣフレームの送信元を、２つの制御サーバ２０３１、２０３２のうちサブの制御サーバとして動作している方へ切り替える切替処理を実行する。
【００７９】
また、ステップＳ２０５において、判定部２２１３（２１１３）が、第１制御フレーム（第１ＰＬＣフレーム）から抽出したデバイスサーバ識別情報と、デバイスサーバ２００２（２００１）のデバイスサーバ識別情報とが不一致と判定したとする（ステップＳ２０５：Ｎｏ）。この場合、図１２に示すように、監視デバイスサーバ通知部２２１５（２１１５）は、第１制御フレーム（第１ＰＬＣフレーム）に含まれるデバイスサーバ識別情報に対応するデバイスサーバ２００１（２００２）宛てに監視デバイスサーバ変更通知フレームを送信する（ステップＳ２１５）。その後、判定部２２１３（２１１３）、切替通知部２１４（１１４）、監視デバイスサーバ通知部２２１５（２１１５）および計時部２１５（１１５）は、停止する（ステップＳ２１６）。
【００８０】
次に、第２変換部２１１（１１１）は、第２制御フレーム（第２ＰＬＣフレーム）を受信したか否かを判定する（ステップＳ２１７）。第２変換部２１１（１１１）が、第２制御フレーム（第２ＰＬＣフレーム）を受信していないと判定すると（ステップＳ２１７：Ｎｏ）、後述のステップＳ２１９の処理が実行される。
【００８１】
一方、第２変換部２１１（１１１）は、第２制御フレーム（第２ＰＬＣフレーム）を受信したと判定すると（ステップＳ２１７：Ｙｅｓ）、第２制御フレーム（第２ＰＬＣフレーム）を第１制御フレーム（第１ＰＬＣフレーム）へ変換して搬送台車制御装置４（ＰＬＣ６）へ出力する（ステップＳ２１８）。
【００８２】
続いて、第２変換部２１１（１１１）は、監視デバイスサーバ変更通知フレームを受信したか否かを判定する（ステップＳ２１９）。第２変換部２１１（１１１）により、監視デバイスサーバ変更通知フレームを受信していないと判定されると（ステップＳ２１９：Ｎｏ）、再びステップＳ２１７の処理が実行される。一方、第２変換部２１１（１１１）により、監視デバイスサーバ変更通知フレームを受信したと判定されると（ステップＳ２１９：Ｙｅｓ）、判定部２２１３（２１１３）、切替通知部２１４（１１４）、監視デバイスサーバ通知部２２１５（２１１５）および計時部２１５（１１５）が、起動する（ステップＳ２２０）。その後、再びステップＳ２１１の処理が実行される。
【００８３】
以上説明したように、本実施の形態に係る通信制御システム２０００では、デバイスサーバ２００１、２００２が、それぞれ監視デバイスサーバとして動作可能である。そして、デバイスサーバ２００１、２００２の両方が、判定部２１１３、２２１３と、切替通知部１１４、２１４と、監視デバイスサーバ通知部２１１５、２２１５と、を有する。ここで、デバイスサーバ２００１（２００２）が監視デバイスサーバとして動作するとする。この場合、デバイスサーバ２００２（２００１）は、監視デバイスサーバ通知フレームを受信すると、判定部２２１３（２１１３）、切替通知部２１４（１１４）、監視デバイスサーバ通知部２２１５（２１１５）および計時部２１５（１１５）の動作を停止させる。これにより、２つのデバイスサーバ２００１、２００２のうち任意に選択したいずれか一方を監視デバイスサーバとして動作させることができるので、通信制御システム２０００の運用方法のバリエーションが広がるという利点がある。
【００８４】
また、本実施の形態に係る通信制御システム２０００では、監視デバイスサーバ選定部２３１７、２３２７が、デバイスサーバ２００１、２００２の中から監視デバイスサーバとして動作するデバイスサーバ２００１（２００２）を１つ選定する。そして、監視デバイスサーバ選定部２３１７、２３２７が、選定したデバイスサーバ２００１（２００２）のデバイスサーバ識別情報である監視デバイスサーバ識別情報を生成してデバイスサーバ２００１、２００２へ送信する。そして、デバイスサーバ２００１（２００２）の判定部２１１３（２２１３）は、監視デバイスサーバ識別情報と自装置に付与されたデバイスサーバ識別情報とが一致するか否かを判定する。また、監視デバイスサーバ通知部２１１５（２２１５）は、不一致と判定すると監視デバイスサーバ識別情報が付与されたデバイスサーバ２００２へ監視デバイスサーバ変更通知フレームを送信する。そうすると、デバイスサーバ２００２は、監視デバイスサーバ変更通知フレームを受信すると、判定部２２１３、切替通知部２１４、監視デバイスサーバ通知部２２１５および計時部２１５を起動する。これにより、１つのデバイスサーバ２００１を監視デバイスサーバとして運用を開始した後、他のデバイスサーバ２００２を監視デバイスサーバに変更することができるので、通信制御システム２０００の運用方法のバリエーションを広げることができる。
【００８５】
（変形例）
以上、本発明の各実施の形態について説明したが、本発明は前述の各実施の形態の構成に限定されるものではない。例えば、３つ以上のデバイスサーバを備える通信制御システムであってもよい。例えば図１３に示すように、２つ以上の搬送台車制御装置４それぞれに接続されたデバイスサーバ２（Ｎ台）と、１つのＰＬＣ６に接続されたデバイスサーバ１と、を備える通信制御システム３０００であってもよい。なお、図１３において、実施の形態１と同様の構成については、図３と同一の符号を付している。この場合、ＰＬＣ６に接続されたデバイスサーバ１が、監視デバイスサーバとして動作し、搬送台車制御装置４に接続された複数のデバイスサーバ２が受信する第２制御フレームの送信元となる制御サーバ３１（３２）へ適宜切替通知フレームを送信するようにしてもよい。
【００８６】
或いは、図１４に示すように、２つ以上の搬送台車制御装置４それぞれに接続されたデバイスサーバ２００２（Ｎ台）と、１つのＰＬＣ６に接続されたデバイスサーバ２００１と、を備える通信制御システム４０００であってもよい。なお、図１４において、実施の形態２と同様の構成については、図９と同一の符号を付している。この場合、制御サーバ２０３１、２０３２のうちメインの制御サーバとして動作する一方により第１制御フレームまたは第１ＰＬＣフレームに設定されるデバイスサーバ識別情報に応じて、複数のデバイスサーバ２００１、２００２のうちのいずれか１つが監視デバイスサーバとして動作するようにしてもよい。この場合、監視デバイスサーバ通知部２１１５、２２１５は、デバイスサーバ２００１（２００２）が監視デバイスサーバとして動作する場合、監視デバイスサーバ通知フレームを他のデバイスサーバ２００１、２００２へブロードキャスト送信する。
【００８７】
各実施の形態では、監視デバイスサーバが、第１制御フレームまたは第１ＰＬＣフレームに含まれるメイン制御サーバ識別情報またはライフカウンタ情報に基づいて、メインの制御サーバを切り替える切替処理を実行する例について説明した。但し、これに限らず、例えば、監視デバイスサーバとして動作するデバイスサーバ１が、ＰＬＣ６から受信する、第１ＰＬＣフレームに対する第１ＰＬＣ応答フレーム（応答情報）に含まれる制御情報に基づいて、各デバイスサーバの接続先をメインの制御サーバ３１（３２）からサブの制御サーバ３２（３１）へ切り替えるか否かを判定する構成であってもよい。この場合、ＰＬＣ６から送信される第１ＰＬＣ応答フレームが、デバイスサーバ１、２の接続先となる制御サーバ３１（３２）を識別するメイン制御サーバ識別情報を含む。そして、判定部１１３は、ＰＬＣ６から受信する第１ＰＬＣ応答フレームに含まれるメイン制御サーバ識別情報に基づいて、デバイスサーバ１、２の接続先を制御サーバ３１（３２）から制御サーバ３２（３１）へ切り替えるか否かを判定する構成とすればよい。
【００８８】
或いは、監視デバイスサーバとして動作するデバイスサーバ２００２が、搬送台車制御装置４から受信する、第１制御フレームに対する第１制御応答フレーム（応答情報）に含まれる制御情報に基づいて、各デバイスサーバの接続先をメインの制御サーバ２０３１（２０３２）からサブの制御サーバ２０３２（２０３１）へ切り替えるか否かを判定する構成であってもよい。この場合、搬送台車制御装置４から送信される第１制御応答フレームは、デバイスサーバ２００１、２００２の接続先となる制御サーバ２０３１（２０３２）を識別するメイン制御サーバ識別情報を含む。そして、判定部２２１３は、搬送台車制御装置４から受信する第１制御応答フレームに含まれるメイン制御サーバ識別情報に基づいて、デバイスサーバ２００１、２００２の接続先を制御サーバ２０３１（２０３２）から制御サーバ２０３２（２０３１）へ切り替えるか否かを判定する構成とすればよい。
【００８９】
各実施の形態に係る通信制御システム１０００、２０００では、２つの制御サーバ３１、３２（２０３１、２０３２）を備える構成について説明したが、これに限定されず、例えば３つ以上の制御サーバを備える構成であってもよい。この場合、複数のデバイスサーバは、それぞれ３つ以上の制御サーバの中から選択された１つの制御サーバに接続されるようにすればよい。
【００９０】
各実施の形態では、カウンタ更新部３１４、３２４が、第２ＰＬＣフレーム（第２制御フレーム）をデバイスサーバへ送信する毎に、ライフカウンタ情報が示すカウンタ値を、「１」だけインクリメントさせる形でライフカウンタ情報を更新する例について説明した。但し、これに限らず、例えば、カウンタ更新部３１４、３２４が、ライフカウンタ情報が示すカウント値を、「１」よりも大きい予め設定された値だけインクリメントさせる形でライフカウンタ情報を更新する構成であってもよい。或いは、カウンタ更新部３１４、３２４が、ライフカウンタ情報が示すカウント値を、デクリメントさせる形でライフカウンタ情報を更新する構成であってもよい。
【００９１】
各実施の形態では、ネットワーク７がイーサネットによる有線ＬＡＮである例について説明したが、ネットワーク７はこれに限定されるものではなく、例えばＩＥＥＥ８０２．１１シリーズの規格に従った無線ＬＡＮ部分を含む構成であってもよい。
【００９２】
各実施の形態において、制御サーバとデバイスサーバとは、ＴＣＰ／ＩＰ、又はＵＤＰ／ＩＰに準拠した上で両者間で取り決めた独自プロトコルに従って第２制御フレームおよび第２ＰＬＣフレームの送受信を実行するものであってもよい。
【００９３】
各実施の形態において、搬送台車制御装置４およびＰＬＣ６が、例えばＵＳＢ（Universal Serial Bus）通信Ｉ／Ｆを搭載した機器であってもよい。この場合、デバイスサーバは、第２制御フレームおよび第２ＰＬＣフレームをＵＳＢ規格に準拠したフレームに変換する機能を有するものであればよい。
【００９４】
なお、本発明に係るデバイスサーバの各種機能は、専用のシステムによらず、コンピュータシステムを用いて実現可能である。例えば、ネットワークに接続されているコンピュータに、上記動作を実行するためのプログラムを、コンピュータシステムが読み取り可能な非一時的な記録媒体（ＣＤ−ＲＯＭ等）に格納して配布し、当該プログラムをコンピュータシステムにインストールすることにより、前述の通信制御処理を実行するデバイスサーバ１、２を構成してもよい。
【００９５】
また、コンピュータにプログラムを提供する方法は任意である。例えば、プログラムは、通信回線のサーバにアップロードされ、通信回線を介してコンピュータに配信されてもよい。そして、コンピュータは、このプログラムを起動して、ＯＳの制御の下、他のアプリケーションと同様に実行する。これにより、コンピュータは、前述の通信制御処理を実行するデバイスサーバ１、２として機能する。
【００９６】
以上、本発明の実施の形態および変形例（なお書きに記載したものを含む。以下、同様。）について説明したが、本発明はこれらに限定されるものではない。本発明は、実施の形態および変形例が適宜組み合わされたもの、それに適宜変更が加えられたものを含む。
【産業上の利用可能性】
【００９７】
本発明は、ネットワークに接続された制御サーバによりシリアル機器を制御する場合に好適である。
【符号の説明】
【００９８】
１，２，２００１，２００２：デバイスサーバ、４：搬送台車制御装置、６：ＰＬＣ、７：ネットワーク、８，９：シリアル伝送路、１０：駆動装置、３１，３２，２０３１，２０３２：制御サーバ、４１：制御ユニット、４２Ａ，４２Ｂ：通信ユニット、５１，５２：搬送台車、１０１，３０１：ＣＰＵ、１０２，３０２：主記憶部、１０３，３０３：補助記憶部、１０４，３０４：ネットワーク通信Ｉ／Ｆ、１０５：シリアル通信Ｉ／Ｆ、１０６，３０５：バス、１１１，２１１：第２変換部、１１３，２１１３，２２１３：判定部、１１４，２１４：切替通知部、１１５，２１５：計時部、１２１，２２１：カウンタ情報・識別情報記憶部、３１１，３２１：搬送台車制御部、３１２，３２２：ＰＬＣ制御部、３１３，３２３：デバイスドライバ、３１４，３２４：カウンタ更新部、３１５，３２５：接続先設定部、３１６，３２６：第１変換部、１０００，２０００，３０００，４０００：通信制御システム、２１１５，２２１５：監視デバイスサーバ通知部、２３１７，２３２７：監視デバイスサーバ選定部
【図１】
2018106537.tif 000003
【図２】
2018106537.tif 000004
【図３】
2018106537.tif 000005
【図４】
2018106537.tif 000006
【図５】
2018106537.tif 000007
【図６】
2018106537.tif 000008
【図７】
2018106537.tif 000009
【図８】
2018106537.tif 000010
【図９】
2018106537.tif 000011
【図１０】
2018106537.tif 000012
【図１１】
2018106537.tif 000013
【図１２】
2018106537.tif 000014
【図１３】
2018106537.tif 000015
【図１４】
2018106537.tif 000016