(57)【要約】  本発明にかかるマスタ局（１１）は、スレーブ局を制御可能なマスタ局において、スレーブ局を制御可能な他の通信装置とネットワークを介して通信する送信部（１１０）および受信部（１１２）と、他の通信装置の制御対象であるスレーブ局を示すスレーブ局情報を取得し、取得したスレーブ局情報に基づいて、スレーブ局情報が示すスレーブ局と重複しないスレーブ局を自己の被制御スレーブ局として求め、自己の被制御スレーブ局を制御するための制御情報を生成する機器制御部（１１３）と、制御情報を自己の被制御スレーブ局へ送信する送信部（１１０）と、を備える。
2017168723.tif 000002
【特許請求の範囲】
【請求項１】
スレーブ局を制御可能な通信装置において、
スレーブ局を制御可能な他の通信装置とネットワークを介して通信する通信部と、
前記他の通信装置の制御対象であるスレーブ局を示すスレーブ局情報を取得し、取得した前記スレーブ局情報に基づいて、前記スレーブ局情報が示すスレーブ局と重複しないスレーブ局を自己の被制御スレーブ局として求め、前記自己の被制御スレーブ局を制御するための制御情報を生成する制御部と、
前記制御情報を前記自己の被制御スレーブ局へ送信する送信部と、
を備えることを特徴とする通信装置。
【請求項２】
前記制御部は、前記スレーブ局情報の取得を要求することを示す取得要求情報を生成し、
前記送信部は、前記取得要求情報を前記他の通信装置へ送信することを特徴とする請求項１に記載の通信装置。
【請求項３】
自己の制御対象である前記スレーブ局を示す情報である第１の情報を記憶する記憶部と、
前記取得要求情報に対する応答として前記スレーブ局情報を受信する受信部と、を備え、
前記取得要求情報は、前記第１の情報を含み、
前記スレーブ局情報は、前記第１の情報と、前記他の通信装置の制御対象であるスレーブ局を示す第２の情報との間で重複する情報であることを特徴とする請求項２に記載の通信装置。
【請求項４】
前記スレーブ局情報は、前記他の通信装置から送信された信号に格納されたポート番号またはネットワークアドレスであることを特徴とする請求項１に記載の通信装置。
【請求項５】
前記スレーブ局から、前記スレーブ局を制御する前記通信装置が複数存在することを示す情報を受信すると、前記スレーブ局に対する前記制御情報の送信を停止することを特徴とする請求項４に記載の通信装置。
【請求項６】
前記スレーブ局情報は、自己の制御対象の前記スレーブ局である第１のスレーブ局と前記他の通信装置の制御対象の前記スレーブ局である第２のスレーブ局との間で重複するスレーブ局を示す情報であることを特徴とする請求項１に記載の通信装置。
【請求項７】
自己の起動後、前記スレーブ局の制御を開始する前に、前記スレーブ局情報を取得して前記自己の被制御スレーブ局を求めることを特徴とする請求項１から６のいずれか１つに記載の通信装置。
【請求項８】
マスタ局により制御される通信装置であって、
複数のマスタ局のうちの１つである第１のマスタ局から、自身を制御するための制御情報を受信した後に、前記複数のマスタ局のうち前記第１のマスタ局以外である第２のマスタ局から、自身を制御するための制御情報を受信した場合、スレーブ局を制御するマスタ局が複数存在することを示す重複異常情報を生成する制御部と、
前記第２のマスタ局へ前記重複異常情報を送信する送信部と、
を備えることを特徴とする通信装置。
【請求項９】
スレーブ局と、前記スレーブ局を制御可能な複数の通信装置を備える通信システムであって、
前記複数の通信装置のうちの１つである第１の通信装置は、
前記複数の通信装置のうち前記第１の通信装置以外である第２の通信装置により制御されているスレーブ局を示すスレーブ局情報を取得し、前記スレーブ局情報に基づいて、前記第１の通信装置の制御対象とするスレーブ局のうち前記第２の通信装置の制御対象のスレーブ局と重複しない前記スレーブを被制御スレーブ局として求め、前記被制御スレーブ局を制御するための制御情報を生成する制御部と、
前記制御情報を前記被制御スレーブ局へ送信する送信部と、
を備えることを特徴とする通信システム。
【請求項１０】
スレーブ局を制御可能な通信装置における通信方法であって、
スレーブ局を制御可能な他の通信装置の制御対象であるスレーブ局を示すスレーブ局情報を取得する第１のステップと、
前記第１のステップで取得した前記スレーブ局情報に基づいて、前記スレーブ局情報が示すスレーブ局と重複しないスレーブ局を自己の被制御スレーブ局として求める第２のステップと、
前記自己の被制御スレーブ局を制御するための制御情報を生成する第３のステップと、
前記制御情報を前記自己の被制御スレーブ局へ送信する第４のステップと、
を含むことを特徴とする通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被制御機器に対する制御権を取得する通信装置、通信システムおよび通信方法に関する。
【背景技術】
【０００２】
制御機器の故障等に備えて被制御機器を制御可能な制御機器を同一ネットワーク上に複数備えるシステムがある。このようなシステムにおいては、複数の制御機器のうち制御権を有する制御機器が特定の被制御機器を操作する。例えば、特許文献１には、特定の被制御対象を操作する制御権が制御機器であるプログラマブル表示器間で移動する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−８１４９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記特許文献１に記載の技術では、各制御機器は、使用者からの操作により、他の制御機器に対して特定の被制御機器の制御権を有しているか否かを問い合わせる。そして、制御機器は、他のいずれの制御機器も特定の被制御機器に対する制御権を有していない場合に制御権を獲得する。したがって、特許文献１に記載の技術では、マスタ局として機能する通信装置である各制御機器に、ネットワーク上に存在する他の全てのマスタ局に関する情報（マスタ局情報）が使用者によりあらかじめ登録されている必要がある。このため、マスタ局情報の登録漏れまたは誤設定、またはネットワーク上にマスタ局を新たに追加した場合などにより、制御権の取得が正しく行われずスレーブ局を２台以上のマスタ局で重複制御してしまう可能性があるという課題があった。【０００５】
また、特許文献１に記載の技術では、使用者からの操作により、スレーブ局である被制御機器の制御権を有しているか否かの問い合わせが行われる。このため、使用者が、スレーブ局を操作できるようになるまでに、煩雑な操作が必要であるという課題があった。【０００６】
本発明は、上記に鑑みてなされたものであって、被制御機器に対する重複制御を回避するとともに、使用者による操作を要せずに被制御機器に対する操作の可否を判断することができる通信装置を得ることを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、スレーブ局を制御可能な通信装置において、スレーブ局を制御可能な他の通信装置とネットワークを介して通信する通信部を備える。この通信装置は、他の通信装置の制御対象であるスレーブ局を示すスレーブ局情報を取得し、取得したスレーブ局情報に基づいて、スレーブ局情報が示すスレーブ局と重複しないスレーブ局を自己の被制御スレーブ局として求め、自己の被制御スレーブ局を制御するための制御情報を生成する制御部と、制御情報を自己の被制御スレーブ局へ送信する送信部と、を備える。
【発明の効果】
【０００８】
本発明にかかる通信装置は、被制御機器に対する重複制御を回避するとともに、使用者による操作を要せずに被制御機器に対する操作の可否を判断することができるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１にかかる通信システムの構成例を示す図
【図２】実施の形態１のマスタ局の構成例を示す図
【図３】実施の形態１のスレーブ局の構成例を示す図
【図４】実施の形態１のマスタ局とスレーブ局の通信で使用する通信フレームの一例を示す図
【図５】要求データの例と対応する応答データの例を示す図
【図６】要求データの例と対応する応答データの例を示す図
【図７】要求データの例と対応する応答データの例を示す図
【図８】実施の形態１における、マスタ局起動後のスレーブ局の制御権取得からスレーブ局との通信開始までの動作を示したシーケンス図
【図９】実施の形態１のマスタ局の全体状態の状態遷移図
【図１０】実施の形態１のマスタ局のスレーブ局ごとの個別状態の状態遷移図
【図１１】実施の形態１におけるスレーブ局の状態遷移図
【図１２】実施の形態２におけるマスタ局起動後のスレーブ局の制御権取得からスレーブ局との通信開始までの動作を示したシーケンス図
【図１３】実施の形態２のマスタ局の全体状態の状態遷移図
【図１４】実施の形態２のマスタ局のスレーブ局ごとの個別状態の状態遷移図
【図１５】実施の形態１および実施の形態２の制御回路の構成例を示す図
【発明を実施するための形態】
【００１０】
以下に、本発明の実施の形態にかかる通信装置、通信システムおよび通信方法を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１１】
実施の形態１．
図１は、本発明の実施の形態１にかかる通信システムの構成例を示す図である。図１に示すように、実施の形態１の通信システムは、通信装置であるマスタ局１１，１２と、マスタ局１１，１２から制御される通信装置であるスレーブ局２１〜２６と、を備える。マスタ局１１，１２は、後述する本発明にかかる制御権取得処理を行い、制御権を有する場合にスレーブ局２１〜２６を制御する。マスタ局１１，１２は、スレーブ局２１〜２６のうち少なくとも１つを制御可能な複数の通信装置である。
【００１２】
マスタ局１１，１２は、例えば、プログラマブルロジックコントローラ（ＰＬＣ：Programmable  Logic  Controller）またはパーソナルコンピュータである。スレーブ局２１〜２６は、例えば、ビジョンセンサまたは駆動装置である。マスタ局１１，１２、およびスレーブ局２１〜２６は、ネットワークライン３により、互いに接続されている。なお、ここでは、マスタ局１１，１２、およびスレーブ局２１〜２６がネットワークライン３により接続される例を説明するが、実施の形態１ではマスタ局１１，１２、およびスレーブ局２１〜２６が、無線接続されてもよい。
【００１３】
図２は、実施の形態１のマスタ局１１の構成例を示す図である。図２に示すように、実施の形態１のマスタ局１１は、送信部１１０、受信部１１２、通信制御部１１１、情報記憶部１１６、機器制御部１１３、状態管理部１１５およびタイマ管理部１１８を備える。制御部である機器制御部１１３は、受信データ処理部１１４および送信データ作成部１１７を備える。
【００１４】
情報記憶部１１６には、マスタ局１１が制御対象とするスレーブ局の情報が格納される。スレーブ局の情報には、スレーブ局を示す情報が含まれる。スレーブ局を示す情報として、ここではＩＰ（Internet  Protocol）アドレスを用いる例を説明するが、スレーブ局を示す情報はＩＰアドレスに限定されない。スレーブ局の情報は、使用者により、あらかじめ登録される。なお、このスレーブ局の情報は、使用者により変更可能であってもよい。
【００１５】
受信部１１２は、マスタ局１１の外部からネットワークライン３を介してデータを受信する受信機である。通信制御部１１１は、機器制御部１１３から出力される送信データを通信フレームへ変換するフレーム化処理などを行い、フレーム化した送信データを送信部１１０へ出力する。また、通信制御部１１１は、受信部１１２により受信された受信データに対してデフレーム化などを実施して、機器制御部１１３へ出力する。送信部１１０および受信部１１２は、他の通信装置とネットワークを介して通信する通信部としても機能する。
【００１６】
機器制御部１１３の受信データ処理部１１４は、通信制御部１１１から出力された受信データの解析を行う。この際、受信データ処理部１１４は、状態管理部１１５から自身の状態を取得し、取得した状態に応じて、受信データが正しいデータであるか否かを判断し、正しいデータであると判断した場合に、状態管理部１１５の更新または機器制御のための演算処理に受信データを使用する。受信データ処理部１１４は、受信データが正しいデータでないと判断した場合は、受信データを破棄する。
【００１７】
機器制御部１１３の送信データ作成部１１７は、送信データを作成し、作成した送信データを、該送信データの通信制御部１１１へ出力する。通信制御部１１１は、送信データの送信先すなわち宛先を情報記憶部１１６に記憶されている情報に基づいて決定する。送信データ作成部１１７は、必要に応じて情報記憶部１１６に記憶されている情報を元に送信データを作成する。送信部１１０は、通信制御部１１１から出力されるフレーム化された送信データを、ネットワークライン３を介して送信する送信機である。
【００１８】
状態管理部１１５は、機器制御部１１３から出力された受信データ、およびタイマ管理部１１８で計測される各種タイマの値を取得し、これらに基づいてマスタ局１１の状態を更新する。マスタ局１２の構成もマスタ局１１の構成と同様である。
【００１９】
図３は、実施の形態１のスレーブ局２１の構成例を示す図である。スレーブ局２１は、送信部２１０、受信部２１２、通信制御部２１１、機器制御部２１３、状態管理部２１５、情報記憶部２１６、タイマ管理部２１８、および被制御部２１９を備える。機器制御部２１３は、受信データ処理部２１４および送信データ作成部２１７を備える。
【００２０】
受信部２１２は、スレーブ局２１の外部からネットワークライン３を介してデータを受信する受信機である。通信制御部２１１は、機器制御部２１３から出力される送信データに対してフレーム化処理などを行い、フレーム化した送信データを送信部２１０へ出力する。また、通信制御部２１１は、受信部２１２により受信された受信データに対してデフレーム化などを実施して、機器制御部２１３へ出力する。
【００２１】
機器制御部２１３の受信データ処理部２１４は、通信制御部２１１から出力された受信データの解析を行う。受信データ処理部２１４は、受信データが被制御部２１９に対する操作を指示するデータであった場合、被制御部２１９へ該データを出力する。被制御部２１９は、マスタ局１１，１２の制御対象となる機器であり、受信データ処理部２１４から出力されたデータすなわち指示に従って動作する。例えばスレーブ局がビジョンセンサである場合には、被制御部２１９は、撮像対象物を撮像して画像を取得するセンサ部である。
【００２２】
状態管理部２１５は、スレーブ局２１の状態を管理する。タイマ管理部２１８は、各種タイマを管理する。
【００２３】
機器制御部２１３の送信データ作成部２１７は、送信データを作成し、作成した送信データを、該送信データの通信制御部２１１へ出力する。送信データ作成部２１７は、マスタ局１１，１２からの指示にしたがって、マスタ局１１，１２宛ての送信データを生成する。送信部２１０は、通信制御部２１１から出力されるフレーム化された送信データを、ネットワークライン３を介して送信する送信機である。スレーブ局２２〜２６の構成はスレーブ局２１の構成と同様である。
【００２４】
図４は、実施の形態１のマスタ局とスレーブ局の通信で使用する通信フレームの一例を示す図である。図４に示すように、本実施の形態のマスタ局とスレーブ局の通信で使用する通信フレームには、要求フレーム、正常応答フレームおよび異常応答フレームが含まれる。正常応答フレームおよび異常応答フレームは、それぞれ応答フレームの一種である。要求フレームは、マスタ局からスレーブ局へ送信される通信フレームであり、応答フレームは要求フレームを受信したスレーブ局またはマスタ局からの応答として送信される通信フレームである。
【００２５】
以下では、本実施の形態の動作を説明するために用いる上記の３つのフレームについて説明するが、マスタ局とスレーブ局の通信において、さらに図４に示した以外の通信フレームが用いられてもよい。また、以下では、マスタ局とスレーブ局の通信に、Ｅｔｈｅｒｎｅｔ（登録商標）、ＩＰ（Internet  Protocol）およびＵＤＰ（User  Datagram  Protocol）が用いられる例を説明するが、マスタ局とスレーブ局の通信の伝送形式および通信プロトコルはこれらに限定されない。
【００２６】
図４に示すように、各通信フレームは、ヘッダを含む。ヘッダは、Ｅｔｈｅｒｎｅｔ／ＩＰ／ＵＤＰヘッダと、要求フレーム、応答フレームなどの通信フレームの種類を示す情報であるサブヘッダと、を含む。要求フレームの場合は、図４に示すように、ヘッダの後に、要求データの長さを示す要求データ長と、後述する監視タイマにおけるタイマ値を示す監視タイマと、要求データとが格納される。また、正常応答フレームには、ヘッダの後に、応答データの長さを示す応答データ長と、異常応答であるか正常応答であるかを示す終了コードと、応答データとが格納される。異常応答フレームには、ヘッダの後に、応答データの長さを示す応答データ長と、異常応答であるか正常応答であるかを示す終了コードと、異常内容の詳細を示すエラー情報とが格納される。正常応答フレームでは、終了コードに正常応答であることを示す値が格納され、異常応答フレームでは、終了コードに異常応答であることを示す値が格納される。
【００２７】
図５〜図７は、要求データの例と対応する応答データの例を示す図である。図５は、他のマスタ局との間で制御対象とするスレーブ局の重複の有無を確認する場合の要求データの一例を示している。図５に示した要求データを格納した要求フレームは、スレーブ局の制御権を取得するための調停処理の開始時にマスタ局から送信される。図５に示す要求データは、コマンド、サブコマンド、被制御機器数および被制御機器数分のＩＰアドレスを含む。コマンドおよびサブコマンドには、他のマスタ局との間で制御対象とするスレーブ局の重複の有無を確認する要求であることを示す情報が格納される。被制御機器はスレーブ局のことを示す。
【００２８】
図５に示した応答データは、図５に示した要求データが格納された要求フレームを受信したマスタ局が、応答フレームを送信する場合に該応答フレームに格納される応答データの一例を示している。図５に示す例では、応答データには、スレーブ局重複状態、すなわち重複して複数のマスタ局の制御対象として設定されているスレーブ局のＩＰアドレスが格納される。後述するように、図５に示す要求データが格納された要求フレームを受信したマスタ局は、自身の制御対象のスレーブ局と要求データ内のＩＰアドレスとで一致するものがある場合に、図５に示す応答データに、一致したＩＰアドレスを格納した応答フレームを送信する。図５に示す要求データが格納された要求フレームを受信したマスタ局は、自身の制御対象のスレーブ局と要求データ内のＩＰアドレスとで一致するものが無い場合には、応答フレームを送信しない。図５に示した要求データが格納される要求フレームを、以下、Persuasion要求フレームと呼ぶ。
【００２９】
図６は、スレーブ局の形名の取得を要求する場合の要求データの一例を示している。図６に示す要求データは、コマンド、サブコマンドを含む。コマンドおよびサブコマンドには、スレーブ局の形名の取得の要求であることを示す情報が格納される。図６に示した応答データは、図６に示した要求データが格納された要求フレームを受信したスレーブ局が、応答フレームを送信する場合に該応答フレームに格納される応答データの一例を示している。図６に示す例では、応答データには、スレーブ局の形名と形名を示すコードである形名コードとが格納される。図６に示した要求データが格納される要求フレームを、以下、Read  Type  Name要求フレームと呼ぶ。
【００３０】
図７は、スレーブ局にサイクリック伝送を要求する場合の要求データの一例を示している。サイクリック伝送では、各局が順番に周期的にデータ伝送を行う。図７に示す要求データは、コマンド、サブコマンド、フレームシーケンスＮｏ．（Number）、マスタ局ＩＰアドレス、パラメータ識別Ｎｏ．、スレーブ局総占有局数、サイクリック伝送指示、スレーブ局総占有局数分のスレーブ局のＩＰアドレス、スレーブ局総占有局数分のＲＷWサイクリックデータ、およびスレーブ局総占有局数分のＲＹサイクリックデータを含む。サイクリック伝送指示は、６４bitの領域をもち、bit毎に各スレーブ局が割り当てられている。このbitの値により、各スレーブ局のサイクリック伝送のオンまたはオフが示される。コマンドおよびサブコマンドには、サイクリック伝送の要求であることを示す情報が格納される。ＲＷWサイクリックデータおよびＲＹサイクリックデータは、マスタ局からスレーブ局へ伝送されるサイクリックデータである。
【００３１】
図７に示した応答データは、図７に示した要求データが格納された要求フレームを受信したスレーブ局が、応答フレームを送信する場合に該応答フレームに格納される応答データの一例を示している。図７に示す例では、応答データには、フレームシーケンスＮｏ．、スレーブ局ＩＰアドレス、サイクリック伝送応答待ち時間、占有局数分のＲＷrサイクリックデータ、および占有局数分のＲＸサイクリックデータが格納される。図７に示した要求データが格納される要求フレームを、以下、Cyclic  Data要求フレームと呼ぶ。ＲＷRサイクリックデータおよびＲＸサイクリックデータは、スレーブ局からマスタ局へ伝送されるサイクリックデータである。
【００３２】
次に、本実施の形態の動作について説明する。図８は、実施の形態１における、マスタ局起動後のスレーブ局の制御権取得からスレーブ局との通信開始までの動作を示したシーケンス図である。以下の説明では、マスタ局１１が、マスタ局１２とスレーブ局２１とを含む既存のシステムに追加されることを想定している。マスタ局１１が起動してからスレーブ局２１と通信を開始するまでを図８に従って説明する。すなわち、以下では、マスタ局１１が制御権取得処理を行う第１の通信装置として動作し、マスタ局１２が第１の通信装置以外である第２の通信装置として動作する例を説明する。なお、マスタ局１２が制御権取得処理を行う場合には、以下の動作においてマスタ局１１とマスタ局１２とを入れ替えた動作となる。
【００３３】
まず、マスタ局１１が起動すると、スレーブ局の制御権を取得するための調停処理が実施される（ステップＳ１１）。具体的には、送信データ作成部１１７が、調停処理の開始のために、情報記憶部１１６に格納されている、マスタ局１１の制御対象であるスレーブ局のＩＰアドレスを読み出し、自身の制御対象であるスレーブ局の数と読み出したＩＰアドレスとを、送信制御部１１１へ出力する。
【００３４】
マスタ局１１は、Persuasion要求フレームをブロードキャストにより送信する（ステップＳ１２）。具体的には、通信制御部１１１は、送信データ作成部１１７から出力された情報を元に要求データを作成し、ヘッダ内の宛先にブロードキャストアドレスを格納したPersuasion要求フレームを、送信部１１０を介してネットワークライン３へ送出する。
【００３５】
また、マスタ局１１は、応答待ちタイマを起動する（ステップＳ１４）。これにより、マスタ局１１は応答待ち状態となる。具体的には、タイマ管理部１１８が、応答待ちタイマを起動する。
【００３６】
Persuasion要求フレームには、図５に示すとおり、マスタ局１１が制御対象とするスレーブ局のＩＰアドレスが格納されている。このPersuasion要求フレームを受信した同一ネットワーク上のマスタ局１２は、調停処理としてマスタ局１２が制御対象機器として記憶しているスレーブ局のＩＰアドレスとPersuasion要求フレーム内のＩＰアドレスの比較を行う（ステップＳ１３）。そして、マスタ局１２は、一致するＩＰアドレスすなわち重複するアドレスがあればPersuasion応答フレームをマスタ局１１に対してユニキャストで送信する。一致するＩＰアドレスが無い場合、応答フレームは送信しない。
【００３７】
上述したように、Persuasion要求フレームに格納するスレーブ局のＩＰアドレスは、使用者があらかじめマスタ局１１，１２に記憶させておく。また、Persuasion応答フレームには、重複したＩＰアドレスが格納される。したがって、Persuasion要求フレームを送信したマスタ局１１は、応答フレームに格納された応答データを参照することで、マスタ局１１およびマスタ局１２において重複して制御対象とされているスレーブ局を特定することができる。
【００３８】
すなわち、マスタ局１１の機器制御部１１３は、マスタ局１２により制御されているスレーブ局を示すスレーブ局情報の取得を要求することを示す取得要求情報を生成し、送信部１１０は、取得要求情報を格納したフレームであるPersuasion要求フレームをマスタ局１２へ送信する。取得要求情報には、情報記憶部１１６に記憶されたマスタ局１１の制御対象であるスレーブ局を示す情報である第１の情報が含まれる。Persuasion要求フレームはブロードキャストにより送信されるが、マスタ局１２へも送信されることになる。そして、マスタ局１１は、マスタ局１２により制御されているスレーブ局を示すスレーブ局情報としてPersuasion応答フレームに格納されたＩＰアドレスを取得する。Persuasion応答フレームに格納されたＩＰアドレスは、マスタ局１２により制御されているスレーブ局とマスタ局１１の制御対象として設定されているスレーブ局との間で重複するスレーブ局を示す情報すなわち、第１の情報と、マスタ局１２の制御対象であるスレーブ局を示す第２の情報との間で重複する情報である。また、マスタ局１１の制御対象のスレーブ局を第１のスレーブ局とし、マスタ局１２の制御対象のスレーブ局を第２のスレーブ局とすると、Persuasion応答フレームに格納されたＩＰアドレスは、第１のスレーブ局と第２のスレーブ局との間で重複しているスレーブ局を示す情報であるとも言える。また、Persuasion応答フレームに格納されたＩＰアドレスは、マスタ局１２により制御されているスレーブ局を示す情報すなわちスレーブ局情報でもある。
【００３９】
マスタ局１１は、応答待ち中にマスタ局１２からのPersuasion応答フレームを受信すると被制御機器であるスレーブ局が重複していると判断し、動作停止となる（ステップＳ１５）。具体的には、受信データ処理部１１４が、受信部１１２および通信制御部１１１を介してPersuasion応答フレームに格納された応答データを受け取ると、自身の制御対象のスレーブ局と他のマスタ局が制御対象としているスレーブ局が重複していると判断し、スレーブ局を制御するための処理を実施しない。
【００４０】
一方、マスタ局１２からPersuasion応答フレームを受信しないまま応答待ちタイマがタイムアウトすると、自身にスレーブ局の制御権があると判断し、イニシャル処理へと移行する（ステップＳ１６）。すなわち、マスタ局１１の機器制御部１１３は、Persuasion応答フレームを受信しないことにより、マスタ局１１の制御対象とするスレーブ局とマスタ局１２の制御対象のスレーブ局とが重複しないというスレーブ局情報を取得したことになり、これにより、マスタ局１１がPersuasion要求フレームにＩＰアドレスを格納したスレーブ局を、自身が制御権を有する被制御スレーブ局として求めることができる。
【００４１】
調停処理によりスレーブ局の制御権があると判断した場合、マスタ局１１は自身が制御するスレーブ局がネットワーク上に存在するか確認を行うためイニシャル処理を開始する（ステップＳ２１）。イニシャル処理では、まず、マスタ局１１は、自身が制御対象として記憶しているスレーブ局宛にRead  Type  Name要求フレームをユニキャストで送信する（ステップＳ２２）。具体的には、送信データ作成部１１７が、情報記憶部１１６に記憶されている制御対象のスレーブ局のＩＰアドレスを読み出し、該ＩＰアドレス宛にRead  Type  Name要求フレームを送信するよう通信制御部１１１へ指示する。通信制御部１１は、指示に基づいてRead  Type  Name要求フレームを生成して、生成したRead  Type  Name要求フレームを、送信部１１０を介してネットワークライン３へ送出する。図８では、マスタ局１１はスレーブ局２１へRead  Type  Name要求フレームを送信する例を示している。
【００４２】
Read  Type  Name要求フレームを受信したスレーブ局２１はマスタ局１１にRead  Type  Name応答フレームを送信し、マスタ局１１はこのRead  Type  Name応答フレームを受信する（ステップＳ２３）。具体的には、スレーブ局２１の通信制御部２１１は、受信部２１２を介してRead  Type  Name要求フレームを受信すると、Read  Type  Name要求フレームを受信したことを受信データ処理部２１４へ通知する。受信データ処理部２１４は、自身の形名と形名コードとを通信制御部２１１へ通知し、通信制御部２１１は、形名と形名コードを応答データとして格納した応答フレームを、送信部２１０を介してマスタ局１１へ送信する。
【００４３】
マスタ局１１は、Read  Type  Name要求フレーム送信後、一定時間経過すると、この一定時間内に１つでもRead  Type  Name要求フレームに対する応答フレームであるRead  Type  Name応答フレームを受信した場合、「サイクリック伝送処理」へ移行する（ステップＳ２４）。
【００４４】
「サイクリック伝送処理」では、マスタ局１１は、「イニシャル処理」でRead  Type  Name応答フレームを送信したスレーブ局に対しては以降に記載する「サイクリック伝送処理」における制御を開始する。一方、「イニシャル処理」で応答がなかったスレーブ局に対しては、「サイクリック伝送処理」と並行して上述した「調停処理」（ステップＳ１１）と「イニシャル処理」（ステップＳ２１）が再度行われる。
【００４５】
「サイクリック伝送処理」（ステップＳ３１）では、マスタ局１１は、図７に示したCyclic  Data要求フレームをブロードキャストにより送信し、Cyclic  Data要求フレームを受信したスレーブ局２１はCyclic  Data要求フレームに対する応答フレームであるCyclic  Data応答フレームをマスタ局１１へユニキャストで送信する。「サイクリック伝送処理」（ステップＳ３１）では、このマスタ局１１からのCyclic  Data要求フレームの送信とスレーブ局からのCyclic  Data応答フレームの送信が繰り返し実施される（ステップＳ３２）。
【００４６】
すなわち、「サイクリック伝送処理」では、マスタ局１１の機器制御部１１３は、マスタ局１１が制御権を有するスレーブ局である被制御スレーブ局を制御するための制御情報を生成し、送信部１１０が、制御情報をCyclic  Data要求フレームとして被制御スレーブ局へ送信する。Cyclic  Data要求フレームは、ブロードキャストにより送信されるが、図を用いて説明したように、サイクリック伝送指示において、サイクリック伝送をオンとするスレーブ局、すなわち制御対象となるスレーブ局が指定される。
【００４７】
図８では、スレーブ局２１を図示しているが、マスタ局１１は、マスタ局１１の情報記憶部１１６に記憶されている制御対象の各スレーブに対して、「調停処理」によりスレーブ局が重複しているか否かを判断する。「調停処理」により、Persuasion応答フレームを受信しないまま応答待ちタイマがタイムアップした場合、制御対象の全てのスレーブ局について他のマスタ局と制御対象が重複していないと判断し、制御対象の全てのスレーブ局に対して、「イニシャル処理」を実施する。そして、マスタ局１１は、「イニシャル処理」でRead  Type  Name応答フレームを受信したスレーブ局に対して「サイクリック伝送処理」を実施し、Read  Type  Name応答フレームを受信しないスレーブ局に対して、再度「調停処理」および「イニシャル処理」を実施する。一方、マスタ局１１の制御対象のスレーブ局が複数であり、「調停処理」により、Persuasion応答フレームを受信し、Persuasion応答フレームに格納されたＩＰアドレスがマスタ局１１の制御対象のスレーブ局のうちの一部のスレーブ局のＩＰアドレスであった場合、マスタ局１１は、ＩＰアドレスが重複しているスレーブ局に対しては動作停止とする、すなわち該スレーブ局に対して制御を行わない。また、ＩＰアドレスが重複していないスレーブ局に対しては、マスタ局１１は、上述した「イニシャル処理」以降の処理を実施する。
【００４８】
以上の説明では、マスタ局１１の起動時の動作を例に挙げたが、マスタ局１２の起動時にもマスタ局１１と同様に、「調停処理」、「イニシャル処理」および「サイクリック伝送処理」を実施する。
【００４９】
図９および図１０は、実施の形態１のマスタ局１１，１２の状態遷移図である。マスタ局１１，１２の状態は、全スレーブ局に対する状態を示す全体状態と、スレーブ局ごとの状態を示す個別状態と、の２つの状態で管理される。後者は、スレーブ局ごとに状態が定義されている。図９は、全体状態の状態遷移を示し、図１０はスレーブごとの個別状態の状態遷移を示す。マスタ局１１，１２の状態管理部１１５は、全体状態と、スレーブ局ごとの個別状態とを管理する。以下の状態遷移の説明では、マスタ局１１を例に説明するが、マスタ局１２も同様である。
【００５０】
マスタ局１１の状態管理部１１５は、マスタ局１１の起動後、全体状態、個別状態ともに待機中Ｍ１，Ｍ１１の状態とする。送信データ作成部１１７は、情報記憶部１１６から、制御対象のスレーブ局の情報すなわちＩＰアドレスを取得すると、状態管理部１１５へその旨を通知し、状態管理部１１５は、全体状態を調停要求未送信Ｍ２とし、全てのスレーブ局の個別状態を解列中Ｍ１２とする。この状態のとき、マスタ局１１はネットワーク上にPersuasion要求フレームを送信する。送信データ作成部１１７は、Persuasion要求フレームを送信したことを状態管理部１１５へ通知し、状態管理部１１５は、全体状態をサイクリック伝送停止中Ｍ３とし、個別状態を調停処理中Ｍ１３とする。このときマスタ局１１はPersuasion要求フレーム送信と同時に調停応答待ちタイマを起動する。
【００５１】
なお、状態管理部１１５は、送信データ作成部１１７による各フレームの送信、受信データ処理部１１４による各フレームの受信、および各タイマのタイムアップなどを機器制御部１１３から通知されるが、以下では、これらの通知の動作の記載を省略する。Persuasion要求フレームを送信したマスタ局１１が他のマスタ局であるマスタ局１２が送信したPersuasion応答フレームを受信すると、状態管理部１１５は、全体状態をスレーブ局重複Ｍ６に遷移させる。また、状態管理部１１５は、Persuasion応答フレームによりＩＰアドレスが重複したスレーブ局に対応する個別状態を待機中Ｍ１１に遷移させる。これにより、該スレーブ局に対する制御は動作停止となる。状態管理部１１５は、全体状態をスレーブ局重複Ｍ６に遷移させた後、情報記憶部１１６における制御対象のスレーブ局の情報を変更し、具体的には情報記憶部１１６における制御対象のスレーブ局の情報から、Persuasion応答フレームにより重複が通知されたスレーブ局に対応する情報を削除し、全体状態を待機中Ｍ１へ遷移させる。また、状態管理部１１５は、Persuasion応答フレームを受信した場合、ＩＰアドレスが重複していないスレーブ局に対応する個別状態をイニシャル処理中Ｍ１４に遷移させる。一方、Persuasion応答フレームを受信しないまま調停応答待ちタイムアウトが発生すると、状態管理部１１５は、制御対象の全スレーブ局の個別状態をイニシャル処理中Ｍ１４に遷移させる。
【００５２】
マスタ局１１は、イニシャル処理では、Read  Type  Name要求フレームをスレーブ局に送信し、イニシャル応答待ちタイマを起動する。マスタ局１１の状態管理部１１５は、Read  Type  Name応答フレームを受信したスレーブ局の個別状態をイニシャル処理完了Ｍ１５とし、Read  Type  Name応答フレームを受信しないままイニシャル応答待ちタイムアウトとなったスレーブ局の個別状態を調停処理中Ｍ１３へ遷移させる。Read  Type  Name応答フレームを受信したスレーブ局とは、マスタ局１１がRead  Type  Name応答フレームした場合に、該Read  Type  Name応答フレームの送信元となったスレーブ局のことを示す。以下、同様に、マスタ局１１がフレームを受信したスレーブ局とは、マスタ局１１が該フレームした場合に、該フレームの送信元となったスレーブ局のことを示す。
【００５３】
調停処理中Ｍ１３へ遷移したスレーブ局については、マスタ局１１は、調停処理とイニシャル処理を再度実施する。少なくとも１台のスレーブ局からRead  Type  Name応答フレームを受信した場合、状態管理部１１５は、サイクリック伝送可能と判断し、全体状態をサイクリック伝送中Ｍ４に遷移させる。このとき、状態管理部１１５は、Read  Type  Name応答フレームを受信したスレーブ局の個別状態をサイクリック伝送中Ｍ１６に遷移させる。サイクリック伝送処理では、マスタ局１１はサイクリック伝送要求すなわちCyclic  Data要求フレームを送信し、スレーブ局からサイクリック伝送正常応答すなわちCyclic  Data応答フレームを受信する。スレーブ局からサイクリック伝送正常応答を受信すると、状態管理部１１５は、全体状態をサイクリック伝送完了Ｍ５に遷移させ、サイクリック伝送正常応答を受信したスレーブ局の個別状態をサイクリック伝送完了Ｍ１７に遷移させる。
【００５４】
マスタ局１１は、サイクリック伝送処理では、Read  Type  Name応答フレームを受信済のスレーブ局の全スレーブ局からサイクリック伝送正常応答を受信している間は、全体状態、およびRead  Type  Name応答フレームを受信済のスレーブ局の個別状態を、サイクリック伝送中Ｍ４，Ｍ１６およびサイクリック伝送完了Ｍ５，Ｍ１７に、それぞれ繰り返し遷移させる。
【００５５】
サイクリック伝送中Ｍ４，Ｍ１６において、サイクリック伝送に失敗したスレーブ局がある場合、すなわち、マスタ局１１が異常応答フレームを受信したスレーブ局がある場合、状態管理部１１５は、該スレーブ局の個別状態を解列中Ｍ１２に遷移させる。一方、サイクリック伝送に失敗したスレーブ局がある場合、サイクリック伝送正常応答を受信しているスレーブ局がある場合には、全体状態は、変更しない。全スレーブ局がサイクリック伝送に失敗した場合、状態管理部１１５は、全体状態を調停要求未送信Ｍ２へ遷移させる。
【００５６】
以上のように、全体状態がサイクリック伝送中Ｍ４およびサイクリック伝送完了Ｍ５を繰り返し遷移している場合、個別状態は、サイクリック伝送中Ｍ１６およびサイクリック伝送完了Ｍ１７の繰り返しが行われているものと解列中Ｍ１２へ遷移するものとが混在する場合もある。この場合、全体状態はサイクリック伝送中Ｍ４およびサイクリック伝送完了Ｍ５が繰り返しながら、解列中Ｍ１２へ遷移したスリーブ局の個別状態は解列中Ｍ１２、調停処理中Ｍ１３、イニシャル処理中Ｍ１４、イニシャル処理完了Ｍ１５のいずれかの状態となる。したがって、全体状態がサイクリック伝送中Ｍ４およびサイクリック伝送完了Ｍ５の場合にも、マスタ局１１は調停処理を実施する場合があり、調停処理により調整正常応答、すなわちスレーブ局が重複したことを示すPersuasion応答フレームを受信した場合には、スレーブ局重複Ｍ６へ遷移し、Persuasion応答フレームを受信しないすなわちタイムアウトした場合には、全体状態を変更しない。
【００５７】
また、他のマスタ局であるマスタ局１２から調停要求を受信した場合、マスタ局１１は、全体状態が、サイクリック伝送停止中Ｍ３、サイクリック伝送中Ｍ４またはサイクリック伝送完了Ｍ５の状態の場合に、調停要求に対して応答する。全体状態がこれら以外の状態の場合には、マスタ局１１は、調停要求に対して応答しない。
【００５８】
図１１は、実施形態１におけるスレーブ局２１の状態遷移図である。スレーブ局２１の起動後、状態管理部２１５は、スレーブ局２１の状態を制御マスタ局未確定Ｍ４１とする。スレーブ局２１では、マスタ局１１またはマスタ局１２からのCyclic  Data要求フレームを受信すると、受信データ処理部２１４が、Cyclic  Data要求フレームを送信したマスタ局を制御マスタと判断し、マスタ局の情報例えばＩＰアドレスを情報記憶部２１６へ記憶する。その後、状態管理部２１５は、スレーブ局２１の状態を制御マスタ局確定Ｍ４２とする。制御マスタ局確定状態Ｍ４２では、タイマ管理部２１８が、要求受信待ちタイマ起動を起動する。
【００５９】
要求受信待ちタイマ起動中にマスタ局からCyclic  Data要求フレームを受信すると、スレーブ局２１の通信制御部２１１は、Cyclic  Data要求フレームの送信元のマスタ局の情報と情報記憶部２１６が記憶している制御マスタ局の情報とを比較する。Cyclic  Data要求フレームの送信元のマスタ局の情報が情報記憶部２１６に記憶されている制御マスタ局の情報と一致する場合に、Cyclic  Data要求フレームの内容を受信データ処理部２１４へ通知する。受信データ処理部２１４は、Cyclic  Data要求フレームの内容を通知されると、送信データ作成部２１５へ応答の作成を指示するとともにタイマ管理部２１８へCyclic  Data要求フレームを受信したことを通知する。そして、送信データ作成部２１５が、Cyclic  Data応答フレームを送信するよう送信制御部２１１へ指示し、送信制御部２１１が、ユニキャストでCyclic  Data応答フレームをマスタ局へ送信する。タイマ管理部２１８は、要求受信待ちタイマをリセットする。
【００６０】
Cyclic  Data要求フレームを受信しないまま要求受信待ちタイマのタイムアウトが発生すると、状態管理部２１５は、制御マスタ不在と判断し、スレーブ局２１の状態を制御マスタ未確定状態Ｍ４１へ遷移させる。
【００６１】
また、要求受信待ちタイマ起動中にマスタ局からCyclic  Data要求フレームを受信し、Cyclic  Data要求フレームの送信元のマスタ局の情報と情報記憶部２１６が記憶している制御マスタ局の情報とが一致しない場合、スレーブ局２１の通信制御部２１１は、マスタ局重複異常を示す終了コードを格納した異常応答フレームを、該Cyclic  Data要求フレームの送信元のマスタ局へ送信する。すなわち、スレーブ局２１の制御部である機器制御部２１３は、複数のマスタ局のうちの１つである第１のマスタ局から、自身を制御するための制御情報を受信した後に、複数のマスタ局のうち第１のマスタ局以外である第２のマスタ局から、自身を制御するための制御情報を受信した場合、スレーブ局を制御するマスタ局が複数存在することを示す重複異常情報を生成する。そして、スレーブ局２１の送信部２１０は、重複異常情報を異常応答フレームとして第２のマスタ局へ送信する。スレーブ局２２〜２６における状態遷移もスレーブ局２１における状態遷移と同様である。
【００６２】
以上説明した例では、マスタ局１１が被制御機器に対する制御としてサイクリック伝送を指示する例を説明したが、マスタ局１１が被制御機器に対する制御はこれに限定されない。マスタ局１１が被制御機器に対して他の制御を行う場合にも、上記の例と同様に、調停処理により制御権を取得したと判断し、制御権を取得したと判断した場合、イニシャル処理が実施された後に、制御を行うための制御情報を格納したフレームをスレーブ局へ送信するようにすればよい。
【００６３】
また、以上の例では、マスタ局１１が、マスタ局１１の制御対象として設定されているスレーブ局を示す情報を送信し、該情報を受信したマスタ局１２が制御対象の重複を判断するようにしたが、マスタ局１１が、マスタ局１２から制御対象のスレーブ局を示す情報を取得して、重複を判断するようにしてもよい。この場合、マスタ局１１は、Persuasion要求フレームの代わりに、他のマスタ局が制御対象としているスレーブ局を示す情報を送信することを要求するフレームをブロードキャストにより送信する。そして、他のマスタ局は、応答として自身の制御対象のスレーブ局を示す情報をマスタ局１１へ送信する。マスタ局１２は、情報記憶部１１６に記憶されているスレーブ局を示す情報と、受信した応答に格納されたスレーブ局を示す情報とを比較することにより、重複して制御対象とされているスレーブ局を判定することができる。
【００６４】
以上のような状態遷移および各状態における動作を実施することにより、実施の形態１のマスタ局は、制御対象のスレーブ局が重複している複数のマスタ局が同時にネットワークに参加した場合であっても、複数のマスタ局のうち１台が制御権を獲得することができる。また、各マスタ局に使用者により他のマスタ局の情報を設定しておく必要がなく、使用者の誤設定または追加されたマスタ局の設定もれなどによる被制御機器の重複制御は生じない。さらに、実施の形態１のマスタ局は、使用者による操作を要せずに、被制御機器に対する操作の可否を判断することができる。
【００６５】
実施の形態２．
図１２は、本発明にかかる実施の形態２におけるマスタ局起動後のスレーブ局の制御権取得からスレーブ局との通信開始までの動作を示したシーケンス図である。本実施の形態の通信システム、マスタ局およびスレーブ局の構成は、実施の形態１と同様である。実施の形態２では、通信システムにおいて使用する通信フレームが実施の形態１と異なる。また、実施の形態２では、状態遷移および一部の動作が実施の形態１と異なる。以下、実施の形態１と異なる点を説明する。
【００６６】
実施の形態１ではマスタ局１１がスレーブ局２１〜２６との通信を開始するまでに３種類の通信フレームを使用していたのに対して、この実施の形態２では１種類の通信フレームを使用する。マスタ局１１が起動してからスレーブ局２１と通信を開始するまでを動作図１２に従って説明する。
【００６７】
まず、マスタ局１１は、起動すると、スレーブ局２１の制御権を取得するための調停処理を実施する（ステップＳ４１）。本実施の形態では、マスタ局１１は、調停処理として、まず、フレーム監視タイマを起動する（ステップＳ４２）。具体的には、マスタ局１１のタイマ管理部１１８がフレーム監視タイマを起動する。
【００６８】
マスタ局１１は、フレーム監視タイマの起動後、タイムアップするまでに、自身が使用しているポート番号と同じポート番号が格納されたCyclic  Data要求フレームを受信した場合、制御対象のスレーブ局が重複していると判断し、動作を停止する（ステップＳ４３）。ポート番号は、例えばＵＤＰ／ＩＰヘッダに格納される。Cyclic  Data要求フレームおよびその応答フレームのフォーマットは実施の形態１と同様である。具体的には、通信制御部１１１が受信部１１２を介してCyclic  Data要求フレームを受信すると、受信部１１２から該Cyclic  Data要求フレームからポート番号を抽出する。通信制御部１１１は、Cyclic  Data要求フレームから抽出したポート番号を、受信データ処理部１１４へ通知し、受信データ処理部１１４が、Cyclic  Data要求フレームから抽出されたポート番号が、自身が使用しているポート番号と同じであるか否かを判断し、同じポート番号である場合、動作を停止する。本実施の形態では、マスタ局１１は、他のマスタ局から自身が使用しているポート番号と同じポート番号が格納されたフレームを受信すると、他のマスタ局であるマスタ局１２によりスレーブ局が制御可能な状態であると判断する。すなわち、本実施の形態では、Cyclic  Data要求フレームを受信するポート番号が、他のマスタ局が制御するスレーブ局を示すスレーブ局情報となる。
【００６９】
マスタ局１１は、フレーム監視タイマがタイムアップした時点で、Cyclic  Data要求フレームを受信していない場合、またはCyclic  Data要求フレームを受信しても該Cyclic  Data要求フレームに格納されたポート番号が、自身が使用しているポート番号と異なる場合は、スレーブ局を制御可能と判断し、フレーム監視タイマタイムアウト後に「サイクリック伝送処理」へと移行する（ステップＳ４４）。
【００７０】
「サイクリック伝送処理」（ステップＳ５１）では、マスタ局１１は、Cyclic  Data要求フレームのサイクリック伝送指示に、全てオフを示す値すなわち例えば０、を設定して、ブロードキャストにより送信する。Cyclic  Data要求フレームを受信したスレーブ局２１は、Cyclic  Data応答フレームをマスタ局１１に対してユニキャストで送信する。この時点では、マスタ局１１は、まだスレーブ局２１の制御は行っていない。「サイクリック伝送処理」（ステップＳ５１）では、マスタ局１１は、Cyclic  Data要求フレームの送信とCyclic  Data応答フレームの受信とを繰り返す（ステップＳ５２）。
【００７１】
マスタ局１１は、スレーブ局２１の制御を、２回目以降のCyclic  Data要求フレーム送信から行う。すなわち、マスタ局１１は、２回目以降のCyclic  Data要求フレームのサイクリック伝送指示には、先に送信したCyclic  Data要求フレームに対して応答があったスレーブ局に対応するbitを、オンを示す値すなわち例えば１に設定してブロードキャストにより送信する。サイクリック伝送指示は、上述したように、各bitが各スレーブ局に対応し、各bitの値により各スレーブ局がサイクリック伝送を実施するか否かを示す情報である。
【００７２】
図１３および図１４は、実施の形態２のマスタ局１１，１２の状態遷移図である。マスタ局１１，１２の状態は、全スレーブ局に対する状態を示す全体状態と、スレーブ局ごとの状態を示す個別状態と、の２つの状態で管理される。後者は、スレーブ局ごとに状態が定義されている。図１３は、全体状態の状態遷移を示し、図１４はスレーブごとの個別状態の状態遷移を示す。マスタ局１１，１２の状態管理部１１５は、全体状態と、スレーブ局ごとの個別状態とを管理する。以下の状態遷移の説明では、マスタ局１１を例に説明するが、マスタ局１２も同様である。
【００７３】
マスタ局１１の状態管理部１１５は、マスタ局１１の起動後、全体状態、制御対象の全スレーブ局の個別状態を、それぞれ待機中Ｍ２１および待機中Ｍ３１とする。送信データ作成部１１７は、情報記憶部１１６から、制御対象のスレーブ局の情報すなわちＩＰアドレスを取得すると、状態管理部１１５へその旨を通知し、状態管理部１１５は、全体状態を調停中Ｍ２２とし、各スレーブ局の個別状態を解列中Ｍ３２とする。
【００７４】
その後、マスタ局１１は、フレーム監視タイマを起動する。フレーム監視タイマのタイムアウトまでの間に自身のポート番号と同じポート番号のCyclic  Data要求フレームを受信すると、状態管理部１１５は、全体状態をマスタ局重複Ｍ２５へ遷移させる。となる。フレーム監視タイマがタイムアウトするまでに同じポート番号のCyclic  Data要求フレームを受信しなかった場合、状態管理部１１５は、全体状態をサイクリック伝送中Ｍ２３へ遷移させる。
【００７５】
サイクリック伝送中Ｍ２３のマスタ局１１は、サイクリック伝送起動指示を含むCyclic  Data要求フレームをブロードキャスト送信しサイクリック伝送応答待ちタイマを起動する。サイクリック伝送応答待ちタイマの起動後、マスタ局１１の状態管理部１１５は、各スレーブ局の個別状態を復列待ちＭ３３にする。サイクリック伝送応答待ちタイマのタイムアウトまでに応答が無い場合、状態管理部１１５は、該当するスレーブ局はネットワークに存在しないと判断し、該当するスレーブ局の個別状態を解列中Ｍ３２に遷移させる。サイクリック伝送応答待ちタイマの起動後タイムアウトまでにCyclic  Data応答フレームを少なくとも一つ受信すると、状態管理部１１５は、全体状態をサイクリック伝送完了Ｍ２４に遷移させ、Cyclic  Data応答フレームを受信したスレーブ局の個別状態をサイクリック伝送完了Ｍ３４とする。以降、マスタ局１１の全体状態はサイクリック伝送中Ｍ２３とサイクリック伝送完了Ｍ２４とが繰り返されるとともに、Cyclic  Data応答フレームを受信したスレーブ局の個別状態はサイクリック伝送中Ｍ３５とサイクリック伝送完了Ｍ３４とが繰り返される。
【００７６】
全体状態がサイクリック伝送中Ｍ２３またはサイクリック伝送完了Ｍ２４である場合に、応答フレームとして、スレーブ局からマスタ局重複異常の終了コードが格納された異常応答フレームを受信すると、マスタ局１１は、全体状態をマスタ局重複Ｍ２５へ遷移させ、動作停止する、すなわちスレーブ局に対する制御情報の送信を停止する。この応答フレームは、図４に示した異常応答フレームであり、終了コードにマスタ局重複異常を示す値が格納されたものである。スレーブ局の状態遷移および動作は、実施の形態１と同様であり、スレーブ局は、要求受信待ちタイマ起動中にマスタ局からCyclic  Data要求フレームを受信し、Cyclic  Data要求フレームの送信元のマスタ局の情報と情報記憶部２１６が記憶している制御マスタ局の情報とが一致しない場合、異常応答フレームを、該Cyclic  Data要求フレームの送信元のマスタ局へ送信する。
【００７７】
使用者が意図的にサイクリック伝送を停止したい場合は、マスタ局１１を操作することにより、マスタ局１１にサイクリック伝送要求送信時にサイクリック伝送停止指示を含むCyclic  Data要求フレームを送信させることで、スレーブ局毎にサイクリック伝送を停止することができる。このとき、マスタ局１１は、サイクリック伝送停止指示の対象となったスレーブ局の個別状態をサイクリック伝送停止中Ｍ３６へと遷移させる。
【００７８】
全体状態がサイクリック伝送中Ｍ２３またはサイクリック伝送完了Ｍ２４である場合に、マスタ局１１が、他のマスタ局であるマスタ局１２からCyclic  Data要求フレームを受信した場合は、受信したフレームに格納されたポート番号に関わらず、全て無視するすなわちCyclic  Data要求フレームを受信したことによる動作は実施しない。
【００７９】
スレーブ局２１〜２６における状態遷移は、実施の形態１と同様である。
【００８０】
次に、実施の形態１および実施の形態２のマスタ局１１，１２およびスレーブ局２１〜２６のハードウェア構成について説明する。マスタ局１１，１２の送信部１１０、およびスレーブ局２１〜２６の送信部２１０は、送信機であり、マスタ局１１，１２の受信部１１２、およびスレーブ局２１〜２６の受信部２１２は、受信機である。マスタ局１１，１２の情報記憶部１１６、およびスレーブ局２１〜２６の情報記憶部２１６は、メモリである。スレーブ局２１〜２６の被制御部２１９は、センサまたは起動装置などである。
【００８１】
通信制御部１１１、情報記憶部１１６、機器制御部１１３、状態管理部１１５、タイマ管理部１１８、通信制御部２１１、機器制御部２１３、状態管理部２１５およびタイマ管理部２１８は、処理回路により実現される。この処理回路は、専用のハードウェアである処理回路であってもよいし、プロセッサを備える制御回路であってもよい。専用のハードウェアである場合、処理回路は、例えば、マイクロコントローラと呼ばれる回路である。処理回路は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ＡＳＩＣ（Application  Specific  Integrated  Circuit）、ＦＰＧＡ（Field  Programmable  Gate  Array）、またはこれらを組み合わせたものである。
【００８２】
上記の処理回路がプロセッサを備える制御回路で実現される場合、この制御回路は例えば図１５に示す構成の制御回路２００である。図１５は、本実施の形態の制御回路２００の構成例を示す図である。制御回路２００は、プロセッサ２０１とメモリ２０２を備える。プロセッサは、ＣＰＵ（Central  Processing  Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサ、ＤＳＰ（Digital  Signal  Processor）ともいう）等である。メモリは、例えば、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリー、ＥＰＲＯＭ（Erasable  Programmable  Read  Only  Memory）、ＥＥＰＲＯＭ（Electrically  Erasable  Programmable  Read  Only  Memory）等の、不揮発性または揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ（Digital  Versatile  Disk）等が該当する。
【００８３】
処理回路がプロセッサを備える制御回路２００で実現である場合、プロセッサ２０１が、メモリ２０２に記憶された、各部の処理が記述されたプログラムを読み出して実行することにより実現される。マスタ局１１，１２の場合は、通信制御部１１１、機器制御部１１３、状態管理部１１５およびタイマ管理部１１８の処理を記述したプログラムがメモリ２０２に記憶され、プロセッサ２０１がこれらのプログラムを読み出して実行する。スレーブ局２１〜２６の場合は、通信制御部２１１、機器制御部２１３、状態管理部２１５およびタイマ管理部２１８の処理を記述したプログラムがメモリ２０２に記憶され、プロセッサ２０１がこれらのプログラムを読み出して実行する。マスタ局１１，１２において、メモリ２０２と情報記憶部１１６とが同一のメモリとして構成されてもよい。スレーブ局２１〜２６において、メモリ２０２と情報記憶部２１６とが同一のメモリとして構成されてもよい。また、メモリ２０２は、プロセッサ２０１が実施する各処理における一時メモリとしても使用される。
【００８４】
以上説明した例では、複数のマスタ局がスレーブ局を重複して制御しているか否かを判定する条件としてポート番号を用いたが、ポート番号の替わりに、ネットワークアドレスを用いてもよい。すなわち、マスタ局１１は、自身が使用しているネットワークアドレスと受信したCyclic  Data要求フレームに格納されたネットワークアドレスとを比較することで、複数のマスタ局がスレーブ局を重複して制御しているか否かの判定を行うことができる。
【００８５】
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
【符号の説明】
【００８６】
１１，１２  マスタ局、２１〜２６  スレーブ局、１１０，２１０  送信部、１１１，２１１  通信制御部、１１２，２１２  受信部、１１３，２１３  機器制御部、１１４，２１４  受信データ処理部、１１５，２１５  状態管理部、１１６，２１６  情報記憶部、１１７，２１７  送信データ作成部、１１８，２１８  タイマ管理部、２１９  被制御部。
【図１】
2017168723.tif 000003
【図２】
2017168723.tif 000004
【図３】
2017168723.tif 000005
【図４】
2017168723.tif 000006
【図５】
2017168723.tif 000007
【図６】
2017168723.tif 000008
【図７】
2017168723.tif 000009
【図８】
2017168723.tif 000010
【図９】
2017168723.tif 000011
【図１０】
2017168723.tif 000012
【図１１】
2017168723.tif 000013
【図１２】
2017168723.tif 000014
【図１３】
2017168723.tif 000015
【図１４】
2017168723.tif 000016
【図１５】
2017168723.tif 000017
【手続補正書】
【提出日】平成29年2月14日(2017.2.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
スレーブ局を制御可能な通信装置において、
スレーブ局を制御可能な他の通信装置とネットワークを介して通信する通信部と、
前記他の通信装置の制御対象であるスレーブ局を示す情報を含むスレーブ局情報を取得し、取得した前記スレーブ局情報に基づいて、前記他の通信装置の制御対象のスレーブ局と重複しないスレーブ局を自己の被制御スレーブ局として求め、前記自己の被制御スレーブ局を制御するための制御情報を生成する制御部と、
前記制御情報を前記自己の被制御スレーブ局へ送信する送信部と、
を備えることを特徴とする通信装置。
【請求項２】
前記制御部は、前記スレーブ局情報の取得を要求することを示す取得要求情報を生成し、
前記送信部は、前記取得要求情報を前記他の通信装置へ送信することを特徴とする請求項１に記載の通信装置。
【請求項３】
自己の制御対象である前記スレーブ局を示す情報である第１の情報を記憶する記憶部と、
前記取得要求情報に対する応答として前記スレーブ局情報を受信する受信部と、を備え、
前記取得要求情報は、前記第１の情報を含み、
前記スレーブ局情報は、前記第１の情報と、前記他の通信装置の制御対象であるスレーブ局を示す第２の情報との間で重複する情報であることを特徴とする請求項２に記載の通信装置。
【請求項４】
前記スレーブ局情報は、前記他の通信装置から送信された信号に格納されたポート番号またはネットワークアドレスであることを特徴とする請求項１に記載の通信装置。
【請求項５】
前記スレーブ局から、前記スレーブ局を制御する前記通信装置が複数存在することを示す情報を受信すると、前記スレーブ局に対する前記制御情報の送信を停止することを特徴とする請求項４に記載の通信装置。
【請求項６】
前記スレーブ局情報は、自己の制御対象の前記スレーブ局である第１のスレーブ局と前記他の通信装置の制御対象の前記スレーブ局である第２のスレーブ局との間で重複するスレーブ局を示す情報であることを特徴とする請求項１に記載の通信装置。
【請求項７】
自己の起動後、前記スレーブ局の制御を開始する前に、前記スレーブ局情報を取得して前記自己の被制御スレーブ局を求めることを特徴とする請求項１から６のいずれか１つに記載の通信装置。
【請求項８】
マスタ局により制御される通信装置であって、
複数のマスタ局のうちの１つである第１のマスタ局から、自身を制御するための制御情報を受信した後に、前記複数のマスタ局のうち前記第１のマスタ局以外である第２のマスタ局から、自身を制御するための制御情報を受信した場合、スレーブ局を制御するマスタ局が複数存在することを示す重複異常情報を生成する制御部と、
前記第２のマスタ局へ前記重複異常情報を送信する送信部と、
を備えることを特徴とする通信装置。
【請求項９】
スレーブ局と、前記スレーブ局を制御可能な複数の通信装置を備える通信システムであって、
前記複数の通信装置のうちの１つである第１の通信装置は、
前記複数の通信装置のうち前記第１の通信装置以外である第２の通信装置により制御されているスレーブ局を示す情報を含むスレーブ局情報を取得し、前記スレーブ局情報に基づいて、前記第１の通信装置の制御対象とするスレーブ局のうち前記第２の通信装置の制御対象のスレーブ局と重複しない前記スレーブ局を被制御スレーブ局として求め、前記被制御スレーブ局を制御するための制御情報を生成する制御部と、
前記制御情報を前記被制御スレーブ局へ送信する送信部と、
を備えることを特徴とする通信システム。
【請求項１０】
スレーブ局を制御可能な通信装置における通信方法であって、
スレーブ局を制御可能な他の通信装置の制御対象であるスレーブ局を示す情報を含むスレーブ局情報を取得する第１のステップと、
前記第１のステップで取得した前記スレーブ局情報に基づいて、他の通信装置の制御対象のスレーブ局と重複しないスレーブ局を自己の被制御スレーブ局として求める第２のステップと、
前記自己の被制御スレーブ局を制御するための制御情報を生成する第３のステップと、
前記制御情報を前記自己の被制御スレーブ局へ送信する第４のステップと、
を含むことを特徴とする通信方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、スレーブ局を制御可能な通信装置において、スレーブ局を制御可能な他の通信装置とネットワークを介して通信する通信部を備える。この通信装置は、他の通信装置の制御対象であるスレーブ局を示す情報を含むスレーブ局情報を取得し、取得したスレーブ局情報に基づいて、他の通信装置の制御対象のスレーブ局と重複しないスレーブ局を自己の被制御スレーブ局として求め、自己の被制御スレーブ局を制御するための制御情報を生成する制御部と、制御情報を自己の被制御スレーブ局へ送信する送信部と、を備える。
【国際調査報告】
2017168723.tif 000018
2017168723.tif 000019