通信システム、通信装置、通信方法、及びプログラム
【課題】 スロットの情報の送受信に係る通信リソースの利用効率を良好に保つと共に、その情報を正常に保持していない端局を迅速にネットワークへ復帰させること。
【解決手段】 通信システムは、時分割の通信によって割り当てられたスロットにおいて信号を送信する送信手段および信号を受信する受信手段を備える複数の通信手段を備え、第1の通信手段と第2の通信手段が互いに通信する通信システムであって、第1の通信手段は、第2の通信手段がスロットに関する情報を保持しているか否かを判定し、第2の通信手段は、情報を保持しない場合には信号の送信を停止し、第1の通信手段は、第2の通信手段に割り当てられたスロットにおいて、第2の通信手段から信号を受信しなかった場合、第2の通信手段が情報を保持していないと判定する。
【解決手段】 通信システムは、時分割の通信によって割り当てられたスロットにおいて信号を送信する送信手段および信号を受信する受信手段を備える複数の通信手段を備え、第1の通信手段と第2の通信手段が互いに通信する通信システムであって、第1の通信手段は、第2の通信手段がスロットに関する情報を保持しているか否かを判定し、第2の通信手段は、情報を保持しない場合には信号の送信を停止し、第1の通信手段は、第2の通信手段に割り当てられたスロットにおいて、第2の通信手段から信号を受信しなかった場合、第2の通信手段が情報を保持していないと判定する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、時分割でスロットを割り当てて通信を行う通信システム、通信装置、通信方法、及びプログラムに関する。
【背景技術】
【0002】
モーション制御を必要とする制御システムの1つに、産業用ロボットに代表されるロボットシステムがある。ロボットシステムは一般的に、演算処理部(CPU)と複数のセンサやアクチュエータを有する。センサは、取得した情報を演算処理部へ出力する。演算処理部は、センサから入力された情報から目標値とのずれを算出し、補正値をアクチュエータへ出力する。アクチュエータは、演算処理部から入力された補正値に基づいて所定の動作を行う。ロボットシステムは、以上のようなフィードバック制御を周期的に繰り返すことで、実環境を考慮した上で所望の動作を実行する。
【0003】
特許文献1には、機械的・電気的に独立した関節モジュールを選択して互いに接続し、関節モジュール内部に備えられる通信手段を用いて動作制御に関わる情報を送受信することで全体の動作制御を行うロボットシステムが記載されている。なお、特許文献1の図2に示されるように、記載されているロボットシステムでは、各関節モジュールは通信手段を持ち、複数の関節モジュールの通信手段が互いに接続してネットワークを構築する構造となっている。この構造により、多数の関節モジュールを組み合わせた場合においても、作業内容の変化に応じて組替えができる柔軟なロボットシステムを構築することができる。特許文献2では、作業内容を認識し、その作業内容に応じて自律的に適切なエンドエフェクタを選択して交換を行うロボットシステムが記載されている。特許文献1と特許文献2のロボットシステムを用いれば、作業内容毎に専用のロボットを用意する必要はない。そのため、例えば、これらのロボットシステムは、多品種少量生産の製品組み立て等に用いられる自動機械に好適なシステムといえる。
【0004】
ロボットシステムのような制御システムで用いられる制御系ネットワークは、同期性、リアルタイム性の確保と、周期的(サイクリック)通信を実現する必要がある。このため、通信方式として時分割多元接続(TDMA)方式が広く採用されている。TDMA方式とは、伝送に用いる通信リソースを、時間領域で一定時間長のタイムスロット(以後「スロット」と呼ぶ)と呼ばれる単位に分割して各端局に割り当てることで、通信リソースを共有利用する多重化方式の1つである。なお、スロットの割当方法として、事前に固定的に割り当てておく方法と、必要に応じて動的に割り当てる方法があり、いずれかの割当方法でスロットが各端局に割り当てられる。
【0005】
ここで、特許文献1及び特許文献2に記載のロボットシステムでは、ネットワークの構築の柔軟性を確保するために、スロットを動的に割り当てる割当方法が採用される可能性がある。ロボットシステムにおけるモジュールの組換えやエンドエフェクタの交換に伴い、端局の追加/削除、センサやアクチュエータの変更が行われることがあり、それに応じてネットワーク上に流れる情報量が変化しうるからである。
【0006】
スロット割当を動的に行う従来技術が、特許文献3、特許文献4、特許文献5に記載されている。特許文献3には、親局がフレーム毎に子局が送信を行うスロットを割り当てると共に、その割り当てについての情報(以後、「スロット情報」と呼ぶ)を子局に送信し、子局は受信したスロット情報に従ってデータの送信を行う通信方法が記載されている。また、特許文献4には、親局が所定フレーム数毎にスロット情報を子局に送信し、子局は受信したスロット情報に従って送受信制御を行う通信方法が記載されている。特許文献5には、スロット情報を取得できなかった子局は、次のスロット情報を受信するまで送信を停止する通信方法が記載されている。なお特許文献3、特許文献4、特許文献5は、スロット情報の送達確認や再送は行わず、受信したスロット情報を即座に適用する方法を採用している。この方法は、スロット割当を迅速に変更することができるため、モジュールの組換えやエンドエフェクタの交換をスムーズに行うことができ、生産性の高いロボットシステムを実現することが可能となる。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開平09−029671号公報
【特許文献2】特開2009−148845号公報
【特許文献3】特開平08−251096号公報
【特許文献4】特開平07−107546号公報
【特許文献5】特開2000−092019号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
ロボットシステムでは、アクチュエータとしてサーボモータに代表される電動モータを採用するケースが多い。しかし電動モータの駆動には、インパルス性のノイズが伴う。スロット情報の通信中にインパルス性のノイズが生じた場合、伝送誤りを引き起こす可能性がある。つまり、スロット情報を正常に取得できない、すなわち、正確なスロット情報を保持しない子局が発生しうる。
【0009】
特許文献3の技術は、上述したように、データリンクを切断せずスロット割当を早急に変更する技術として有効である。しかし、スロット情報を正常に取得できない子局が存在する場合の対処方法は記載されていない。もしスロット情報を正常に取得できなかった子局が、以前に取得したスロット情報に基づいて動作を継続すると、最新のスロット情報に基づいて他の子局が送信したデータとの間でデータの衝突が発生する可能性がある。また特許文献1及び特許文献2に記載のロボットシステムは、同じ作業を行っている期間は、スロット割当の変更は生じない場合が多いと考えられる。一方、特許文献3はフレーム毎にスロット情報を送信する。このため、特許文献3を特許文献1及び特許文献2に記載のロボットシステムに適用した場合、同じ内容のスロット情報を繰り返し送信することにより通信リソースの利用効率が低下するという課題がある。
【0010】
特許文献4の技術は、所定フレーム数毎にスロット情報を送信することが可能である。そのため、この技術は通信リソースの利用効率を向上させたい場合に有効である。しかし、特許文献3の技術と同様、スロット情報を正常に取得しなかった子局への対応方法は記載されていない。
【0011】
特許文献5の技術は、スロット情報を正常に取得しなかった子局が存在した場合、その子局は送信を停止するよう制御する。そのため、データの衝突を確実に防止できる。しかしスロット情報を正常に取得しなかった子局が存在しても、親局は事前に規定された一定周期毎にスロット情報の送信を行う。ロボットシステムのような制御システムの場合、長い期間、フィードバック制御が停止してしまうと制御は不安定になる。したがって、特許文献5の技術を特許文献1及び特許文献2に記載のロボットシステムに適用した場合、フィードバック制御を停止しても不安定にならない周期で、スロット情報を繰り返し送信する必要がある。この結果、特許文献3の技術と同様に、同じ内容のスロット情報を繰り返し送信することとなり、通信リソースの利用効率の低下を招く。
【0012】
本発明は上記課題に鑑みなされたものであり、スロット情報の送受信に係る通信リソースの利用効率を良好に保ち、その情報を保持しない子局を迅速にネットワークへ復帰させる通信システム、通信装置、通信方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0013】
上記目的を達成するため、本発明による通信システムは、時分割の通信によって割り当てられたスロットにおいて信号を送信する送信手段および信号を受信する受信手段を備える複数の通信手段を備え、第1の通信手段と第2の通信手段が互いに通信する通信システムであって、前記第1の通信手段は、前記第2の通信手段が前記スロットに関する情報を保持しているか否かを判定する判定手段を備え、前記第2の通信手段は、前記情報を保持しない場合には信号の送信を停止し、前記第1の通信手段は、前記第2の通信手段に割り当てられたスロットにおいて、当該第2の通信手段から信号を受信しなかった場合、当該第2の通信手段が前記情報を保持していないと判定する、ことを特徴とする。
【発明の効果】
【0014】
本発明によれば、スロットの情報の送受信に係る通信リソースの利用効率を良好に保ちながら、その情報を正常に保持していない子局を早急にネットワークへ復帰させる技術を提供することができる。
【図面の簡単な説明】
【0015】
【図1】通信システムの構成例を示すブロック図。
【図2】親局の内部構成例を示すブロック図。
【図3】子局の内部構成例を示すブロック図。
【図4A】正常動作時のフレーム構成例を示す図。
【図4B】異常動作時のフレーム構成例を示す図。
【図5A】正常動作時のスロットテーブルの説明図。
【図5B】異常動作時の親局のスロットテーブルの説明図。
【図5C】異常動作時の子局のスロットテーブルの説明図。
【図6】子局に設置されるスロット情報設定部の動作フロー図。
【図7】実施形態1における親局に設置される送信停止局判断部の動作フロー図。
【図8A】スロット情報を2つのスロットで送信する場合の、正常動作時のフレーム構成例を示す図。
【図8B】スロット情報を2つのスロットで送信する場合の、異常動作時のフレーム構成例を示す図。
【図9A】スロット情報を2つのスロットで送信する場合の、正常動作時のスロットテーブルの説明図。
【図9B】スロット情報を2つのスロットで送信する場合の、異常動作時の親局のスロットテーブルの説明図。
【図10】実施形態2に係る子局の内部構成例を示すブロック図。
【図11】実施形態2に係る異常動作時のフレーム構成例を示す図。
【図12】実施形態2に係る異常動作時の親局のスロットテーブルの説明図。
【発明を実施するための形態】
【0016】
以下、添付図面を参照して本発明の実施の形態を詳細に説明する。
【0017】
<<実施形態1>>
(通信システムの構成)
図1は、本発明を適用するロボットシステムにおける通信システムの構成を示す図である。本実施形態では、親局10と複数の子局A20〜C40が縦続接続されて通信システムを構成する。なお、以下の説明では、任意の子局A20〜C40から見て、親局10に近い子局を上位局、親局に遠い子局を下位局と呼ぶこととする。すなわち、子局B30においては、子局A20は上位局であり、子局C40は下位局である。
【0018】
親局10は、子局A20〜C40に対してモータ制御情報を送信する。親局10は子局接続コネクタ11を備え、その子局接続コネクタ11は、最上位の子局である子局A20の上位局接続コネクタ21へ接続される。子局A20、子局B30は、ロボットシステムの構成要素である関節モジュールであり、子局C40、子局D50はロボットシステム用のエンドエフェクタである。本実施形態のロボットシステムは作業内容に応じて、人手を介さず自律的にエンドエフェクタの交換、すなわち、例えば子局C40と子局D50との交換が行われる。なお、この交換により、通信システムの構成も当然に変化する。子局A20〜D50は、上位局接続コネクタ21〜51と下位局接続コネクタ22〜32を備え、これらを用いて上位局・下位局と接続してネットワークを形成する。なお、子局C40と子局D50とは、エンドエフェクタであり、それよりも下位の子局がないため、下位局接続コネクタを備えていないが、必要に応じてこれを備えるようにしてもよい。また、子局A20〜D50には、関節を曲げるためのモータ23〜53及び55、関節の曲げ角度を検出するための角度センサ24〜54が接続される。
【0019】
親局10が送信するモータ制御情報は、例えばモータ23〜53及び55に印加する電圧値を含んでもよい。子局A20〜D50は、モータ制御情報に基づいてモータ23〜53及び55を駆動する。また、子局A20〜D50は、角度センサ24〜54から関節の曲げ角度を取得し、その取得した角度の情報を角度情報として親局10に送信する。親局10は、受信した角度情報に応じて次のモータ制御情報を生成する。本実施形態では、このような通信、及びモータ制御を一定周期毎に行うことで、システム全体のフィードバック制御を行う。
【0020】
(親局の構成)
図2は、本実施形態の親局10の内部構成を示す図である。親局10は、例えば、モータ制御情報生成部101、スロット情報生成部102、同期情報生成部103、保守情報要求生成部104、スロット情報記憶部110、送信停止局判断部111、及びスロット情報書き換え部112を備える。また、親局10は、例えば、さらにセレクタ105、送信部106、子局接続コネクタ107、受信部108、カウンタ109、送受信制御部113、及び子局保守部114を備える。
【0021】
モータ制御情報生成部101は、システム動作に応じて、子局のモータを制御するためのモータ制御情報を生成する。また、モータ制御情報生成部101は、システム動作時に子局A20〜C40から受信した角度情報に応じて、次のモータ制御情報を生成する。スロット情報生成部102は、エンドエフェクタの交換を行った場合、交換されたエンドエフェクタに応じて時分割通信で用いるスロット情報を生成する。なお、スロット情報の生成は、ロボットシステムを起動したとき、又はロボットシステムをリセットしたときなどに行われてもよい。なおスロット情報に固有の識別子を付与することにより、子局は、スロット情報を伝送するスロットの位置を知らなくても、その識別子に基づいてスロット情報を取得できる。スロットの配置などについては後述する。
【0022】
同期情報生成部103は、現在のフレーム番号や、親局と子局との間の同期を行うために使用する同期信号を含む同期情報を生成する。フレームの構成などについては後述する。同期情報は親局から子局A20〜C40へフレーム毎に送信され、子局はその同期情報を用いて親局10と同期を行い、時分割で通信を行う。保守情報要求生成部104は、後述する保守情報を要求するデータである保守情報要求を生成する。なお保守情報要求は、モータ制御情報、角度情報とは異なり、厳密な等時性は要求されない非等時性情報である。セレクタ105は後述する送受信制御部113の制御に基づき、上述したモータ制御情報、スロット情報、同期情報、及び保守情報要求のいずれかを選択し、出力する。
【0023】
送信部106は後述する送受信制御部113の制御に基づき、セレクタ105から出力されたモータ制御情報、スロット情報、同期情報、又は保守情報要求のデータに誤り検出符号化処理及び変調処理を施して通信信号として、子局A20〜C40に送信する。受信部108は後述する送受信制御部113の制御に基づき、子局A20〜C40から受信した通信信号に誤り検出復号化処理及び復調処理を施し、角度情報や保守情報を取得する。親局10は子局接続コネクタ107により子局A20と接続され、子局接続コネクタ107を介して子局A20〜C40との信号の送受信を行う。
【0024】
カウンタ109は、フレーム番号及びスロット番号をカウントし、現在のフレーム番号及びスロット番号の情報を含むカウント信号を出力する。スロット情報記憶部110はスロット情報生成部102が生成したスロット情報を、内蔵するテーブル(以後、スロットテーブル)として記憶して保持する。送信停止局判断部111は、カウンタ109のカウント信号に基づき、子局から送信される信号を検出し、その検出結果とスロット情報記憶部110に保持されるスロットテーブルとを比較することで、子局の送信動作が正常に行われているか否かを判断する。例えば、送信停止局判断部111は、送信用に割り当てたスロットにおいて信号の送信を行っていない子局を検出した場合は、その子局を送信停止局と判断し、送信停止局検出信号を出力する。送信停止局判断部111は、スロット情報の通りに通信が行われているかを監視することにより、使用されるべきスロット情報を子局が保持しているかを判定することができる。
【0025】
スロット情報書き換え部112は、送信停止局検出信号が入力されると、その送信停止局から親局へ情報を送信するスロット、又は親局からその送信停止局へ情報を送信するスロットを、スロット情報記憶部110に記憶されたスロットテーブルから探索する。そして、探索により発見されたスロットのうち、現スロット以降で一番近い時間に対応するものをスロット情報の再送用スロット(以後、「スロット情報再送用スロット」と呼ぶ)と決定する。そして、決定されたスロット情報再送用スロットによりスロット情報記憶部110のスロットテーブルを書き換える。なお、スロット情報の伝送に必要なスロット数が複数ある場合は、それらの全てに対応するスロット情報再送用スロットを決定してスロットテーブルの書き換えを行う。すなわち、スロット情報書き換え部112は、送信停止局は正しいスロット情報を保持していないため、正しいスロット情報を送信停止局に送信するため、できるだけ早い時間スロットにスロット情報再送用スロットを設ける。
【0026】
送受信制御部113は、スロット情報記憶部110が保持するスロット情報と、カウンタ109からのカウント値に基づいて、セレクタ105、送信部106、受信部108のそれぞれについて動作制御を行う。子局保守部114は、子局から送信される後述する保守情報を元に、各子局の寿命/異常等を診断、保守を行う。
【0027】
(子局の構成)
続いて、本実施形態の子局A20〜D50の構成について説明する。図3は、子局A20の内部構成を示す図である。子局A20は、例えば、角度情報生成部201、保守情報生成部202、スロット情報記憶部209、及びスロット情報設定部210を備える。また、子局A20は、例えば、さらにセレクタ203、送信部204、上位局接続コネクタ205、下位局接続コネクタ206、受信部207、カウンタ208、送受信制御部211、及びモータ駆動部212を備える。
【0028】
角度情報生成部201は、外部に接続された角度センサ24から曲げ角度を取得し、角度情報を生成する。保守情報生成部202は、親局10から送信される保守情報要求を受信すると、自局の稼働時間や磨耗度等を示す保守情報を生成する。保守情報は、保守情報要求と同様に、厳密な等時性は要求されない非等時性情報である。セレクタ203は後述する送受信制御部211の制御に基づき、上述した角度情報、保守情報のいずれかを選択して出力する。送信部204は、後述する送受信制御部211の制御に基づき、セレクタ203から出力された角度情報又は保守情報に誤り検出符号化処理と変調処理を施し、通信信号として親局10に送信する。受信部207は後述する送受信制御部211の制御に基づき、親局10から受信した通信信号に誤り検出復号化処理と復調処理を施し、モータ制御情報、同期情報、スロット情報、又は保守情報要求を取得する。
【0029】
子局A20は、上位局接続コネクタ205により親局10と接続され、上位局接続コネクタ205を介して親局10と信号の送受信を行う。同様に、子局A20は、下位局接続コネクタ206により子局B30と接続され、下位局接続コネクタ206を介して子局B30との間の信号の送受信を行う。
【0030】
カウンタ208は、フレーム番号及びスロット番号をカウントし、カウント信号を出力する。スロット情報記憶部209は後述するスロット情報設定部210が出力するスロット情報をスロットテーブルとして記憶し、保持する。スロットテーブルはスロット情報設定部210がスロット情報を出力するごとに書き換えられる。スロット情報設定部210は、スロット情報の取得が正常に行われたか否かを判断し、もし正常に行われた場合は、取得したスロット情報をそのままスロット情報記憶部209へ書き込む。しかし、もし正常に行われなかった場合は、現スロット以降の全スロットを受信スロットとする異常用スロット情報をスロット情報記憶部209へ書き込む。なおこの動作はスロット情報が入力される度に実行される。
【0031】
送受信制御部211は、スロット情報記憶部209が保持するスロットテーブルと、カウンタ208からのカウント信号に基づいて、セレクタ203、送信部204、及び受信部207のそれぞれについて動作制御を行う。モータ駆動部212は、親局10から送信されるモータ制御情報に応じて、外部に接続されたモータ23を駆動させる。子局B30の内部構成及び動作は、子局A20と同様である。また子局C40も、下位局接続コネクタを所持しないこと以外は子局A20と同様であるため、詳細な説明を省略する。
【0032】
(スロット割当動作)
続いて本実施形態の時分割通信のためのスロット割当動作について詳細に説明する。
【0033】
[正常時の動作]
まず正常にスロット割当が行われた場合の動作(以後、正常動作)について示す。なお、以下の説明では、親局10から子局A20〜C40へ、また子局A20〜C40から親局10への信号の送信における、伝送遅延は十分に小さいものとする。
【0034】
図4Aは、本実施形態において正常動作時のフレーム構成を示す図である。図4Aに示すようにスーパーフレームは、スーパーフレームの1/Nの一定時間幅を有するN個のフレームから構成されており、またフレーム内は一定時間幅のM個(本実施形態では10個)のスロットに区切られている。本実施形態のロボットシステムでは、エンドエフェクタの種類により必要とする情報量が異なるため、エンドエフェクタに応じてスロット割当も異なる。このため、エンドエフェクタの交換を行った場合に、交換されたエンドエフェクタに応じてスロット割当の変更が行われる。なお、以下の動作説明では、前スーパーフレームにおいて、子局C50から子局C40のエンドエフェクタへ交換されたものとする。なお、図の各スロットにおいて、「T」は信号を送信することを、そして「R」は信号を受信することを、それぞれ示す。
【0035】
親局10は、時刻T1(前スーパーフレームの最終スロット)において、エンドエフェクタである子局C40が接続された場合のスロット情報である図5Aを、子局A20〜C40へ送信する。図5Aのスロット情報を見ると、スロット番号0は、親局10から子局A20〜C40への同期情報の送信に割り当てられている。またスロット番号1〜3は、子局A20〜C40から親局10への角度情報の送信に割り当てられている。スロット番号4〜6は、親局10から子局A20〜C40へのモータ制御情報の送信に割り当てられている。またフレーム番号1〜N−1のスロット番号7〜9とフレーム番号Nのスロット番号7〜8は、ランダムアクセス用のスロットとされている。上述の保守情報要求及び保守情報といった非等時性情報は、ランダムアクセス用スロットを用いて伝送される。送信すべき非等時性情報が発生した端局は、ランダムアクセス用スロットにてCSMA/CDやCSMA/CA方式、スロッテッドアロハ方式など、公知の送信制御によって送信権を確保して情報を送信する。またフレーム番号Nのスロット番号9は、親局10から子局A20〜C40へのスロット情報の送信に割り当てられている。このスロットを用いて、次のスーパーフレームのスロット割当を送信する。
【0036】
なお図5Aのスロット情報は説明の便宜上、全フレームのスロット情報が記述される形で示しているが、当然圧縮して伝送しても良い。例えば図5Aでは、事前にフレーム番号Nのスロット番号9はスロット情報伝送用スロットであると規定しておけば、1フレームあたりのスロット割当の情報とフレーム数Nの情報とを送信するのみで、図5Aのスロット情報を通知することができる。またフレーム数Nの値は、固定であってもよいし可変であってもよい。例えば予測制御を用いたロボットシステムであれば、エンドエフェクタの交換がしばらく行われない場合はNの値を大きめに、エンドエフェクタの交換が近々に行われる場合はNの値を小さめに設定することができる。以上のようにスロット情報を圧縮すると共にNの値を動的に設定することで、スロット情報の伝送に必要な通信リソースを必要最小限に抑えることができ、ひいては伝送帯域を有効利用することができる。
【0037】
次に図4Aの時刻T1(前スーパーフレームの最終スロット)における各端局の動作について説明する。時刻T1においては、親局10の送信部106は、スロット情報を変調した通信信号を子局A20〜C40へ送信する。また時刻T1においては、親局10では、スロット情報記憶部110に記憶されたスロットテーブルが、子局A20〜C40へ送信されたスロット情報と同じものに更新される。
【0038】
子局A20の受信部207は、受信した通信信号を復調し、スロット情報及び誤り検出結果をスロット情報設定部210へ出力する。スロット情報設定部210は、スロット情報及び誤り検出結果が入力されると、そのスロット情報と誤り検出結果に基づいて、スロット情報記憶部209へ出力するスロット情報を決定する。出力するスロット情報の決定処理について、図6を用いて説明する。なおスロット情報設定部210は、スロット情報設定部210へスロット情報及び誤り検出結果が入力されるたびに、本処理を実行する。また、子局B30、子局C40も同様の処理を実行する。
【0039】
処理が開始されると、スロット情報設定部210は受信部207からの誤り検出結果を確認し、スロット情報の取得が正常に行われたか否かを判断する(S61)。スロット情報の取得が正常に行われた場合(S61でYes)、正常に取得したスロット情報をそのままスロット情報記憶部209に書き込む(S62)。一方、スロット情報の取得が正常に行われなかった場合(S61でNo)、異常用スロット情報をスロット情報記憶部209に書き込む(S63)。なお、ここでは、上述の通り、子局A20〜C40においてスロット情報が正常に取得された(S61でYes)場合、すなわち正常動作の場合について説明している。この場合は、時刻T1において、親局10および子局A20〜C40のスロット情報記憶部209は、図5Aに示すスロット情報をスロットテーブルに保持することになる。
【0040】
続いて時刻T2(フレーム番号1、スロット番号0)における親局10及び子局A20〜C40の動作について説明する。親局10の送信停止局判断部111は1スロット毎に、子局A20〜C40の送信動作が正常に行われているか否かを判断する。その判断処理について、図7を用いて説明する。
【0041】
判断処理が開始されると、送信停止局判断部111は、現在のスロット(以後、現スロット)で送信を行う子局が存在するか否かを、カウンタ109からのカウント信号と、スロット情報記憶部110が保持するスロットテーブルから判定する(S71)。例えば、時刻T2(フレーム番号1、スロット番号0)では、親局10が送信を行うため、送信を行う子局は存在しないと判定する(S71でNo)。送信を行う子局が存在しない場合(S71でNo)、判断処理を終了する。一方、例えば時刻T3(フレーム番号1、スロット番号1)では子局A20が送信を行うため、「現スロットで送信を行う子局が存在する」と判定される(S71でYes)。現スロットで送信を行う子局が存在する場合(S71でYes)、その子局が送信動作を停止している送信停止局か否かを判断する(S72)。すなわち、現スロットで送信を行う子局が、正しいスロット情報を保持しているかを判定する。ここで現スロットで送信を行う子局が送信停止局であるか否かの判断は、例えば現スロットにおける信号の受信電力を検知することによって行われる。現スロットの受信電力が閾値以上であれば、その子局は送信動作を行っており、送信停止局ではないと判断し(S72でNo)、処理を終了する。一方、現スロットの受信電力が閾値より小さい場合、その子局は送信動作を行っていない送信停止局であると判断する(S72でYes)。すなわち、その子局は、正しいスロット情報を保持していないと判定する。この場合、送信停止局判断部111は、送信停止局検出信号をスロット情報書き換え部112へ出力し(S73)、処理を終了する。
【0042】
なお、時刻T2においては、親局10が送信を行うため、送信を行う子局は存在しないと判定し(S71でNo)、送信停止局検出信号を出力することなく判断処理を終了する。
【0043】
そして、親局10の送受信制御部113は、スロット情報記憶部110が保持するスロットテーブルに基づいて、セレクタ105及び送信部106を制御して、同期情報を送信する。子局A20の送受信制御部211も、親局10と同様、スロット情報記憶部209が保持するスロットテーブルに基づいて受信部207を制御して、同期情報を受信する。子局B30、子局C40の送受信制御部についても子局A20と同様の動作を行う。
【0044】
続いて時刻T3(フレーム番号1、スロット番号1)における各端局の動作について説明する。親局10の送信停止局判断部111は時刻T2と同様に、図7に示す判断処理を行う。処理においては、上述のように、時刻T3では子局A20が送信を行うため、「現スロットで送信を行う子局が存在する」と判定する(S71でYes)。ここで、本説明では、子局A20は時刻T3において正常に信号を送信しており、送信停止局ではない(S72でNo)。このため、親局10は、判断処理を終了する。
【0045】
したがって、親局10及び子局A20〜C40は、時刻T2と同様に、それぞれのスロット情報記憶部に保持されたスロットテーブルに基づいて、信号の送受信動作を行うために、それぞれのセレクタ及び送信部、又は受信部のいずれかを制御する。
【0046】
以上の動作を1スロット毎に繰り返し行うことにより、図5Aに示すスロット情報に従ったフレーム構成(図4A)を形成し、情報の送受信が行われる。
【0047】
[異常時の動作]
次に、スロット情報の取得が正常に行われなかった場合の動作(以後、異常動作)について説明する。図4Bは、子局A20においてスロット情報が正常に受信されずに異常動作となった時のフレーム構成である。
【0048】
時刻T4(前スーパーフレームの最終スロット)において、親局10は上述の正常動作時と同様に、図5Aに示すスロット情報を変調した通信信号を子局A20〜C40へ送信する。また時刻T4において、親局10では、スロット情報記憶部110に記憶されたスロットテーブルが、子局A20〜C40へ送信されたスロット情報と同じものに更新される。
【0049】
ここで、時刻T4において、子局A20との間の伝送経路において伝送誤りが生じ、スロット情報の取得が正常に行われなかったとする。子局A20の受信部207は、受信した通信信号を復調し、スロット情報及び誤り検出結果をスロット情報設定部210へ出力する。スロット情報設定部210は、上述したようにスロット情報及び誤り検出結果が入力されると、図6に示す出力するスロット情報の決定処理を実行する。ここではスロット情報の取得は正常に行われなかったため(S61でNo)、事前に規定された全スロットを受信スロットに設定する異常用スロット情報を、スロット情報記憶部209へ書き込む(S63)。
【0050】
図5Cに異常用スロット情報の例を示す。図中のMAXとは、設定できる最大のフレーム数である。この最大のフレーム数は、スーパーフレームに含まれるフレームの数が固定されている場合は、その固定値であってもよい。図5Cに示されるように、異常用スロット情報は、送信局や伝送される情報は不定であるが、スロット情報の受信に失敗した子局が常に受信状態であることを規定するスロット情報である。すなわち、スロット情報記憶部209に異常用スロット情報が書き込まれた子局は、異常用スロット情報が書き込まれている期間は信号の送信を行わなくなるため、送信停止局となる。すなわち、本例において、子局A20は送信停止局となる。
【0051】
一方、子局B30、子局C40では、スロット情報の取得が正常に行われたとする。この場合、子局B30、子局C40のスロット情報記憶部209は、図5Aに示すスロット情報をスロットテーブルに保持する。つまり、時刻T4において、親局10および子局B30、子局C40のスロット情報記憶部は図5Aに示すスロット情報を、子局A20は図5Cに示す異常用スロット情報をスロットテーブルに保持することになる。
【0052】
続いて時刻T5(フレーム番号1、スロット番号0)における動作について説明する。子局A20の送受信制御部211は、スロット情報記憶部209が保持するスロットテーブルに基づいて、セレクタ203、送信部204、受信部207の制御を行う。ここでスロットテーブルには図5Cが書き込まれているため、送受信制御部211は、現スロットは受信スロットであると判断し、受信を行うように受信部207を制御する。親局10及び子局B30、子局C40の動作は、正常動作時の時刻T2で説明した動作と同等であるため、詳細については割愛する。
【0053】
続いて時刻T6(フレーム番号1、スロット番号1)における動作について説明する。親局10の送信停止局判断部111は、上述のように、図7に示す判断処理を行う。判断処理では、時刻T6のスロットで子局A20が送信を行うため(S71でYes)、S72に処理を進める。そして、現スロットで送信を行う子局A20が、送信動作を停止する送信停止局か否かを判断する(S72)。ここで子局A20は送信停止局であるため(S72でYes)、送信停止局判断部111は、送信停止局検出信号をスロット情報書き換え部112へ出力する(S73)。
【0054】
スロット情報書き換え部112は、送信停止局検出信号が入力されると、スロット情報記憶部110のスロットテーブルから、送信停止局(子局A20)から親局10へ情報を送信するスロット、又は親局10が送信停止局へ情報を送信するスロットを抽出する。そして、抽出されたスロットの中から現スロットより後で最も早く送受信されるスロットを、スロット情報再送用スロットに用いるようにスロットテーブルを書き換える。図5Aでは、まず、フレーム番号1のスロット番号1と4、フレーム番号2のスロット番号1などが抽出される。そして、抽出されたスロットの中から、現スロットであるフレーム番号1のスロット番号1より後で、最も早く送受信が行われるスロットとして、フレーム番号1のスロット番号4のスロットが特定される。このため、スロット情報書き換え部112は、その特定されたスロットをスロット情報再送用スロットに書き換える。以上のようにして、正しいスロット情報を保持していない子局A20を検出し、そのスロット情報を再送信するためのスロット情報再送用スロットを設ける。書き換え後のスロットテーブルを図5Bに示す。
【0055】
次に、時刻T7(フレーム番号1、スロット番号4)における動作について説明する。親局10の送受信制御部113は、スロット情報記憶部110が保持するスロットテーブルに基づいて、セレクタ105、送信部106、受信部108の制御を行う。この際スロットテーブルには、上述したように図5Bが書き込まれているため、時刻T7では、スロット情報が子局A20へ送信される。なお、ここで送信するスロット情報は時刻T4で送信したスロット情報(図5A)と同様のものである。
【0056】
子局A20は、全てのスロットにおいて受信状態となるスロット情報(図5C)に基づいて動作しているため、親局10から送信されたスロット情報を受信することができる。なお、上述のようにスロット情報に固有の識別子を付与することにより、子局A20の受信部207は、識別子を確認することで受信した情報がスロット情報であると認識することができる。その結果、受信したスロット情報及び誤り検出結果はスロット情報設定部210へ出力される。ここではスロット情報の取得が正常に行われたとすると、スロット情報記憶部209のスロットテーブルに図5Aのスロット情報が書き込まれる。したがって、子局A20は時刻T8より後のスロットでは、正常な送受信制御を行うことができるようになる。
【0057】
なお上記実施形態ではスロット情報は1スロットで伝送されるものとして説明を行ったが、1スロット以上を用いて伝送を行っても良い。図8はスロット情報を2スロットで伝送する場合のフレーム構成である。図8Aは、正常動作時のフレーム構成であり、図8Bは、子局A20がスロット情報の取得を正常に行えなかった異常動作時のフレーム構成である。スロット情報は、時刻T10、T11または時刻T12、T13(前スーパーフレームの最終2スロット)にて、親局10から子局A20〜C40へ送信される。このとき送信されるスロット情報を図9Aに示す。図9Aに示す通り、本例においては、スロット情報が、スロット情報1とスロット情報2として2スロットを用いて伝送される。正常動作については、これ以外の動作についてはスロット情報を1スロットで伝送する場合の動作と同等であるため、詳細な説明については省略する。
【0058】
異常動作について図8Bを用いて説明を行う。初めに時刻T12、T13(前スーパーフレームの最終2スロット)における親局10及び子局A20〜C40の動作について説明する。親局10の送信部106は、図9Aに示したスロット情報をスロット情報1及びスロット情報2の2つに分割し、それぞれ変調した通信信号を、2スロットを用いて子局A20〜C40へ送信する。
【0059】
子局A20の受信部207は、受信した通信信号を復調し、2スロットに分割されたスロット情報1及びスロット情報2を結合して、スロット情報及び誤り検出結果をスロット情報設定部210へ出力する。ここで、スロット情報の取得は正常に行われなかったものとする。この場合、子局A20のスロット情報設定部210は、異常用スロット情報(図5C)をスロット情報記憶部209へ書き込む。これにより、子局A20は送信停止局となる。一方、子局B30と子局C40ではスロット情報の取得が正常に行われ、子局B30と子局C40のスロット情報記憶部209は、図9Aに示すスロット情報をスロットテーブルに保持する。このように、時刻T13において、親局10および子局B30、子局C40では図9Aに示すスロット情報を、子局A20では図5Cに示す異常用スロット情報が、スロットテーブルとしてスロット情報記憶部に保持されることになる。
【0060】
次に時刻T14(フレーム番号1、スロット番号1)における親局10の動作について説明する。親局10の送信停止局判断部111は上述したように1スロット毎に、図7に示す判断処理を行う。ここで子局A20は上述したように送信停止局になっている。このため、送信停止局判断部111は、送信停止局検出信号をスロット情報書き換え部112へ出力する。スロット情報書き換え部112は、送信停止局検出信号が入力されると、スロット情報記憶部110のスロットテーブルから、送信停止局(子局A20)から親局へ情報を送信するスロット、又は親局が送信停止局へ情報を送信するスロットを抽出する。そして抽出されたスロットの中から現スロットより後に、最も早く送受信が行われるスロットとその次には約送受信が行われるスロットを、スロット情報再送用スロットに用いるようにスロットテーブルを書き換える。図9Aでは、まず、フレーム番号1のスロット番号1と4、フレーム番号2のスロット番号1などが抽出される。そして、抽出されたスロットの中から、現スロットであるフレーム番号1のスロット番号1より後で、最も早く送受信が行われるスロットとして、フレーム番号1のスロット番号4のスロットが特定される。さらに、現スロットであるフレーム番号1のスロット番号1より後で、2番目に早く送受信が行われるスロットとして、フレーム番号2のスロット番号1のスロットが特定される。このため、スロット情報書き換え部112は、その特定されたスロットをスロット情報再送用スロットに書き換える。書き換え後のスロットテーブルを図9Bに示す。
【0061】
次に時刻T15(フレーム番号1、スロット番号4)及び時刻T16(フレーム番号2、スロット番号1)における親局10及び子局A20〜C40の動作について説明する。親局10の送受信制御部113は、スロット情報記憶部110が保持するスロットテーブルに基づいて、セレクタ105、送信部106、受信部108の制御を行う。この場合、スロットテーブルには、上述したように図9Bで示されるスロット情報が書き込まれている。このため、時刻T15(フレーム番号1、スロット番号4)ではスロット情報1が、そして時刻T16(フレーム番号2、スロット番号1)ではスロット情報2が、それぞれ子局A20へ送信される。なおここで送信されるスロット情報は時刻T12、T13で送信したスロット情報(図9A)と同様のものである。
【0062】
子局A20は、図5Cで示されるスロット情報が書き込まれたスロットテーブルに従って信号の受信を待ち受ける状態となっている。受信部207は、上述の識別子に基づいて、受信した情報がスロット情報であるかを判定し、スロット情報1及びスロット情報2の受信を確認する。受信部207は、スロット情報1及びスロット情報2を結合して得たスロット情報と誤り検出結果とを、スロット情報設定部210へ出力する。ここではスロット情報の取得が正常に行われたとすると、スロット情報記憶部209のスロットテーブルに図9Aのスロット情報が書き込まれる。これに応じて、子局A20は時刻T17より後のスロットでは、正常な送受信制御を行うことができるようになる。
【0063】
なお、スロット情報1とスロット情報2の結合は、受信部207で行う必要はなく、例えばスロット情報設定部210で行ってもよい。また、例えば、スロット情報1には1フレーム目からN/2フレーム目の情報が含まれ、スロット情報2にはそれ以外の情報が含まれる場合、結合せずに、逐次的にスロット情報記憶部209のスロットテーブルを更新してもよい。また、スロット情報が3つ以上のスロットを用いて送信される場合も、上記と同様の処理を行ってもよい。
【0064】
以上、各局の動作により、通信リソースを浪費せずに、スロット情報を送信し、かつスロット情報の取得を正常に行えなかった子局を早急にネットワークへ復帰させることができる。これにより、本実施形態のロボットシステムは、エンドエフェクタの交換を遅滞なくスムーズに行うことができる。また、ロボットシステムにおいて、スロット情報の取得を正常に行えなかった子局が存在しても、制御が不安定に陥ることがなく、高い生産性と信頼性を確保することができる。
【0065】
なお、本実施形態でのスロット情報再送用スロットは、送信停止局に送信用として割り当てたスロット、もしくは親局が送信停止局へモータ制御情報を送信するために割り当てたスロットとした。しかし、親局の送信用スロットとして、毎回使用することはないが任意の情報を送信できる予備のスロット(以後、「予備スロット」と呼ぶ)が設けられている場合、その予備スロットをスロット情報再送用スロットとして用いても良い。この予備スロットは、例えば緊急時における緊急停止信号や、初期化をするためのリセット信号を伝送するためのスロットであってもよく、これらの信号が送信されないときに、スロット情報を送信するようにしてもよい。
【0066】
また、本実施形態では非等時性情報を送信するためのランダムアクセス用スロットを設けたが、必ずしも設けなくてもよい。また本実施形態のスロット情報の伝送はスーパーフレーム毎に行ったが、これに限られず、エンドエフェクタの交換が行われた時のみ伝送するようにしてもよい。
【0067】
<<実施形態2>>
実施形態1で説明した技術は、スロット情報の情報量がそれほど多くない場合に特に有効である。例えば実施形態1では、スロット情報が1スロットの場合では、送信停止局を1フレーム以内にネットワークに復帰させることができる。本実施形態では、スロット情報の情報量が多くなった場合にも柔軟かつ高速に送信停止局をネットワークに復帰させる方法を提案する。具体的には、本実施形態では、送信停止局に割り当てたスロットに加えて、ランダムアクセス用スロットを、スロット情報の再送用のスロットとして使用する。なお、本実施形態のロボットシステム全体の構成は、実施形態1と同様であるので、説明を省略する。
【0068】
(親局の構成)
親局10の機能構成は、実施形態1に係る図2とほぼ同様であるため図示を省略する。ただし、本実施形態の親局10では、スロット情報書き換え部112に送信停止局検出信号が入力された時に抽出されるスロットが異なる。本実施形態のスロット情報書き換え部112は、送信停止局から親局10へ又は親局10から送信停止局へ信号を送信するスロットに加え、ランダムアクセス用スロットも抽出する。そして、その中から現スロットより後であって、送信停止局との間で最も早く送受信を行うことができる所定数のスロットを特定する。そして、スロット情報書き換え部112は、特定したスロットにおいてスロット情報を送信するように、スロットテーブルを書き換える。親局10の他の機能は実施形態1と同様である。
【0069】
(子局の構成)
図10は本実施形態の子局A20の内部構成を示す図である。実施形態1の子局A20と同様の機能を果たすブロックについては、図3と同一の符号を付し、その説明については省略する。本実施形態では、子局A20は、さらに送信停止局判断部213と、スロット情報書き換え部214とを備える。これらの動作については、それぞれ、親局の送信停止局判断部111、及びスロット情報書き換え部112と同様である。
【0070】
(スロット割当動作)
続いて本実施形態のスロット割当動作について詳細に説明する。図11は本実施形態における異常動作時のフレーム構成を示す図である。なお、正常動作時のフレーム構成や動作は図8Aの構成やそれに伴う動作と同様であるため、説明を省略する。
【0071】
図11は、子局A20がスロット情報の取得を正常に行えなかった異常動作時のフレーム構成である。スロット情報は、時刻T20、T21(前スーパーフレームの最終2スロット)において、親局10から子局A20〜C40へ送信される。このとき送信されるスロット情報は、図9Aと同様である。具体的には、親局10の送信部106は、図9Aに示したスロット情報をスロット情報1及びスロット情報2の2つに分割し、それぞれ変調した通信信号を、2スロットを用いて子局A20〜C40へ送信する。また時刻T21では、スロット情報記憶部110は、スロット情報記憶部110に保持されるスロットテーブルを、子局A20〜C40へ送信するスロット情報と同じものに更新する。
【0072】
子局A20の受信部207は、受信した通信信号を復調し、2スロットに分割されたスロット情報1及びスロット情報2を結合して、受信したスロット情報及び誤り検出結果をスロット情報設定部210へ出力する。本動作説明ではスロット情報の取得は正常に行われないため、スロット情報設定部210は、異常用スロット情報(図5C)をスロット情報記憶部209に書き込む。これにより、子局A20は送信停止局となる。一方、子局B30と子局C40ではスロット情報の取得は正常に行われ、子局B30と子局C40のスロット情報記憶部209は、図9Aで示されるスロット情報をスロットテーブルとして保持する。このようにして、時刻T23において、親局10および子局B30、子局C40のスロット情報記憶部は図9Aに示すスロット情報を、子局A20は図5Cに示す異常用スロット情報をスロットテーブルとして保持することになる。
【0073】
次に時刻T22(フレーム番号1、スロット番号0)における親局10及び子局A20〜C40の動作について説明する。親局10の送信停止局判断部111は、実施形態1と同様に図7に示す判断処理を行う。時刻T22では、親局10が送信を行うため、送信を行う子局は存在しない。このため、送信停止局判断部111は何も行わずにフロー処理を終了する。本実施形態では、子局A20の送信停止局判断部213も同様に図7に示す判断処理を行う。子局A20のスロット情報記憶部209は、図5Cをスロットテーブルに保持している。したがって、送信局は不明であり、送信を行う子局が存在すると判断できないため、フローを終了する。また子局B30、C40の送信停止局判断部213もまた、親局10と同様の動作を行う。子局B30と子局C40は、現スロットで送信するのは親局10であることを知っている。このため、現スロットで送信を行う子局は存在しないと判断し、何も行わずフロー処理を終了する。
【0074】
次に時刻T23(フレーム番号1、スロット番号1)における各端局の動作について説明する。親局10の送信停止局判断部111はまた図7に示す判断処理を行う。この場合は、現スロットで送信する子局(子局A20)が存在するが、その子局A20は上述したように送信停止局になっている。このため、送信停止局判断部111は、送信停止局検出信号をスロット情報書き換え部112へ出力する。
【0075】
スロット情報書き換え部112は、送信停止局検出信号が入力されると、まずスロット情報記憶部110のスロットテーブルから、送信停止局から親局へ、もしくは親局から送信停止局へ情報を送信するスロット、又はランダムアクセス用スロットを抽出する。そして、抽出されたスロットの中から現スロットより後に送受信するスロットで最も早く送受信が実行できる2スロットを、スロット情報伝送用スロットに用いるようにスロット情報記憶部110のスロットテーブルを書き換える。本実施形態では、まず、フレーム番号1のスロット番号4と7から9、及びフレーム番号2のスロット番号1などのスロットが抽出される。そして、その中から、最も早く送受信をすることが可能となる2スロットを選択する。この場合、フレーム番号1のスロット番号4及びフレーム番号1のスロット番号7のスロットが選択される。そこで選択されたスロットを、スロット情報伝送用スロットに書き換える。書き換え後のスロットテーブルを図12に示す。
【0076】
子局A20の送信停止局判断部213もまた図7に示す判断処理を行うが、時刻T22と同様に送信局が不明であるため、何もせずに判断処理のフローを終了する。子局B30と子局C40の送信停止局判断部213及びスロット情報書き換え部214も、親局10と同様の動作を行い、スロット情報記憶部209が保持するスロットテーブルを図12の内容に書き換える。
【0077】
次に時刻T24(フレーム番号1、スロット番号4)及び時刻T25(フレーム番号1、スロット番号7)における各端局の動作について説明する。親局10の送受信制御部113は、スロット情報記憶部110が保持するスロットテーブルに基づいて、セレクタ105、送信部106、受信部108の制御を行う。このとき、スロットテーブルには、上述したように図12のスロット情報が書き込まれているため、時刻T24ではスロット情報1を、時刻T25では、スロット情報2の送信が行われる。なおここで送信するスロット情報は時刻T20、T21で送信したスロット情報(図9A)と同様のものである。
【0078】
子局A20は、図5Cに示されるスロット情報に基づいて受信制御が行われているため、親局10が送信したスロット情報を受信することができる。そして、受信部207は、上述した識別子に基づいて、受信した信号がスロット情報1及びスロット情報2であることを確認する。受信部207は、スロット情報を受信したことを確認すると、スロット情報1及びスロット情報2を結合し、結合後のスロット情報及び誤り検出結果をスロット情報設定部210へ出力する。ここで、スロット情報の取得が正常に行われると、スロット情報記憶部209のスロットテーブルに、図9Aのスロット情報が書き込まれる。これにより、子局A20は時刻T26以降のスロットでは正常な送受信制御を行うことができるようになる。
【0079】
以上のように、本実施形態では、ランダムアクセス用スロットもスロット情報再送用スロットとして使用するため、スロット情報のスロット数が多い場合でも、スロット情報の取得を正常に行えなかった子局を迅速にネットワークへ復帰させることができる。本実施形態はランダムアクセス用スロットが多ければ多いほど有効である。
【0080】
なお上記実施形態1及び実施形態2では、親局と子局との間の通信について説明を行ったが、これに限定されるものではなく、子局同士の通信を行うスロットを含んでもよい。また、この場合、あるスロットにおいて、受信を行う子局が、送信を行う子局からの信号を受信しなかった場合、受信を行う子局は自らがスロットテーブルとして保持するスロット情報を、相手方の子局(送信を行う子局)へ送信してもよい。また、親局と子局のような従属関係は必ずしも必要なく、エンドエフェクタの交換時などに、全ての端局のうちのいずれか1つの端局における第1の通信手段がスロット情報を生成して他の端局における第2の通信手段へ送信するようにしてもよい。例えば、図1の例を用いると、上述の第1の通信手段は、エンドエフェクタに直接接続される子局B30の通信手段であり、上述の第2の通信手段は、親局10、子局A20、子局C40の通信手段であってもよい。エンドエフェクタにより近い位置にある端局の通信手段をスロット情報を送信する第1の通信手段とすることで、エンドエフェクタの交換の検知からスロット情報の送信までの時間を極力短縮することができる。また、例えば、縦列接続のネットワークでは、当該縦列接続の中間位置にある端局の通信手段を第1の通信手段としてもよい。これにより、特にネットワーク規模がある程度大きい場合に、ネットワーク全体へスロット情報を伝達するための時間を短縮することが可能となる。さらに、第1の通信手段が、複数の第2の通信手段と直接接続する並列接続型ネットワークをロボットシステムに用いてもよい。
【0081】
また上記実施形態1及び実施形態2では、スロット情報を取得した次のスロットからそのスロット情報で示されるスロット割当が適用されるが、これに限定されるものではない。例えばスロット割当を適用するまでに時間を有する場合は、スロット情報を取得したM個先のスロットから、そのスロット情報に記したスロット割当を適用するという方法を用いてもよい。
【0082】
また上記実施形態1及び実施形態2では、スロット情報生成部が生成したスロット情報を保持するスロット情報記憶部と、送信停止局検出信号に応じてスロット情報を書き換えるスロット情報書き換え部を備えるが、これに限定されるものではない。例えばROMに予め全てのスロット情報を記憶しておき、送信停止局検出信号に応じて複数の記憶しておいたスロット情報の中から所定のスロット情報を選択し、送受信制御部は選択されたスロット情報に基づいて制御を行ってもよい。
【0083】
また上記実施形態1及び実施形態2では、エンドエフェクタの交換によりスロット割当の変更が生じるロボットシステムを用いて説明を行ったが、これに限定されるものではない。本発明は、例えば把持/加工機能など複数の機能を有し、作業内容に応じて切り替るエンドエフェクタを備えるロボットシステムなど、随時スロット割当の変更を行う産業用自動制御装置に適用することができる。
【0084】
<<その他の実施形態>>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【技術分野】
【0001】
本発明は、時分割でスロットを割り当てて通信を行う通信システム、通信装置、通信方法、及びプログラムに関する。
【背景技術】
【0002】
モーション制御を必要とする制御システムの1つに、産業用ロボットに代表されるロボットシステムがある。ロボットシステムは一般的に、演算処理部(CPU)と複数のセンサやアクチュエータを有する。センサは、取得した情報を演算処理部へ出力する。演算処理部は、センサから入力された情報から目標値とのずれを算出し、補正値をアクチュエータへ出力する。アクチュエータは、演算処理部から入力された補正値に基づいて所定の動作を行う。ロボットシステムは、以上のようなフィードバック制御を周期的に繰り返すことで、実環境を考慮した上で所望の動作を実行する。
【0003】
特許文献1には、機械的・電気的に独立した関節モジュールを選択して互いに接続し、関節モジュール内部に備えられる通信手段を用いて動作制御に関わる情報を送受信することで全体の動作制御を行うロボットシステムが記載されている。なお、特許文献1の図2に示されるように、記載されているロボットシステムでは、各関節モジュールは通信手段を持ち、複数の関節モジュールの通信手段が互いに接続してネットワークを構築する構造となっている。この構造により、多数の関節モジュールを組み合わせた場合においても、作業内容の変化に応じて組替えができる柔軟なロボットシステムを構築することができる。特許文献2では、作業内容を認識し、その作業内容に応じて自律的に適切なエンドエフェクタを選択して交換を行うロボットシステムが記載されている。特許文献1と特許文献2のロボットシステムを用いれば、作業内容毎に専用のロボットを用意する必要はない。そのため、例えば、これらのロボットシステムは、多品種少量生産の製品組み立て等に用いられる自動機械に好適なシステムといえる。
【0004】
ロボットシステムのような制御システムで用いられる制御系ネットワークは、同期性、リアルタイム性の確保と、周期的(サイクリック)通信を実現する必要がある。このため、通信方式として時分割多元接続(TDMA)方式が広く採用されている。TDMA方式とは、伝送に用いる通信リソースを、時間領域で一定時間長のタイムスロット(以後「スロット」と呼ぶ)と呼ばれる単位に分割して各端局に割り当てることで、通信リソースを共有利用する多重化方式の1つである。なお、スロットの割当方法として、事前に固定的に割り当てておく方法と、必要に応じて動的に割り当てる方法があり、いずれかの割当方法でスロットが各端局に割り当てられる。
【0005】
ここで、特許文献1及び特許文献2に記載のロボットシステムでは、ネットワークの構築の柔軟性を確保するために、スロットを動的に割り当てる割当方法が採用される可能性がある。ロボットシステムにおけるモジュールの組換えやエンドエフェクタの交換に伴い、端局の追加/削除、センサやアクチュエータの変更が行われることがあり、それに応じてネットワーク上に流れる情報量が変化しうるからである。
【0006】
スロット割当を動的に行う従来技術が、特許文献3、特許文献4、特許文献5に記載されている。特許文献3には、親局がフレーム毎に子局が送信を行うスロットを割り当てると共に、その割り当てについての情報(以後、「スロット情報」と呼ぶ)を子局に送信し、子局は受信したスロット情報に従ってデータの送信を行う通信方法が記載されている。また、特許文献4には、親局が所定フレーム数毎にスロット情報を子局に送信し、子局は受信したスロット情報に従って送受信制御を行う通信方法が記載されている。特許文献5には、スロット情報を取得できなかった子局は、次のスロット情報を受信するまで送信を停止する通信方法が記載されている。なお特許文献3、特許文献4、特許文献5は、スロット情報の送達確認や再送は行わず、受信したスロット情報を即座に適用する方法を採用している。この方法は、スロット割当を迅速に変更することができるため、モジュールの組換えやエンドエフェクタの交換をスムーズに行うことができ、生産性の高いロボットシステムを実現することが可能となる。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開平09−029671号公報
【特許文献2】特開2009−148845号公報
【特許文献3】特開平08−251096号公報
【特許文献4】特開平07−107546号公報
【特許文献5】特開2000−092019号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
ロボットシステムでは、アクチュエータとしてサーボモータに代表される電動モータを採用するケースが多い。しかし電動モータの駆動には、インパルス性のノイズが伴う。スロット情報の通信中にインパルス性のノイズが生じた場合、伝送誤りを引き起こす可能性がある。つまり、スロット情報を正常に取得できない、すなわち、正確なスロット情報を保持しない子局が発生しうる。
【0009】
特許文献3の技術は、上述したように、データリンクを切断せずスロット割当を早急に変更する技術として有効である。しかし、スロット情報を正常に取得できない子局が存在する場合の対処方法は記載されていない。もしスロット情報を正常に取得できなかった子局が、以前に取得したスロット情報に基づいて動作を継続すると、最新のスロット情報に基づいて他の子局が送信したデータとの間でデータの衝突が発生する可能性がある。また特許文献1及び特許文献2に記載のロボットシステムは、同じ作業を行っている期間は、スロット割当の変更は生じない場合が多いと考えられる。一方、特許文献3はフレーム毎にスロット情報を送信する。このため、特許文献3を特許文献1及び特許文献2に記載のロボットシステムに適用した場合、同じ内容のスロット情報を繰り返し送信することにより通信リソースの利用効率が低下するという課題がある。
【0010】
特許文献4の技術は、所定フレーム数毎にスロット情報を送信することが可能である。そのため、この技術は通信リソースの利用効率を向上させたい場合に有効である。しかし、特許文献3の技術と同様、スロット情報を正常に取得しなかった子局への対応方法は記載されていない。
【0011】
特許文献5の技術は、スロット情報を正常に取得しなかった子局が存在した場合、その子局は送信を停止するよう制御する。そのため、データの衝突を確実に防止できる。しかしスロット情報を正常に取得しなかった子局が存在しても、親局は事前に規定された一定周期毎にスロット情報の送信を行う。ロボットシステムのような制御システムの場合、長い期間、フィードバック制御が停止してしまうと制御は不安定になる。したがって、特許文献5の技術を特許文献1及び特許文献2に記載のロボットシステムに適用した場合、フィードバック制御を停止しても不安定にならない周期で、スロット情報を繰り返し送信する必要がある。この結果、特許文献3の技術と同様に、同じ内容のスロット情報を繰り返し送信することとなり、通信リソースの利用効率の低下を招く。
【0012】
本発明は上記課題に鑑みなされたものであり、スロット情報の送受信に係る通信リソースの利用効率を良好に保ち、その情報を保持しない子局を迅速にネットワークへ復帰させる通信システム、通信装置、通信方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0013】
上記目的を達成するため、本発明による通信システムは、時分割の通信によって割り当てられたスロットにおいて信号を送信する送信手段および信号を受信する受信手段を備える複数の通信手段を備え、第1の通信手段と第2の通信手段が互いに通信する通信システムであって、前記第1の通信手段は、前記第2の通信手段が前記スロットに関する情報を保持しているか否かを判定する判定手段を備え、前記第2の通信手段は、前記情報を保持しない場合には信号の送信を停止し、前記第1の通信手段は、前記第2の通信手段に割り当てられたスロットにおいて、当該第2の通信手段から信号を受信しなかった場合、当該第2の通信手段が前記情報を保持していないと判定する、ことを特徴とする。
【発明の効果】
【0014】
本発明によれば、スロットの情報の送受信に係る通信リソースの利用効率を良好に保ちながら、その情報を正常に保持していない子局を早急にネットワークへ復帰させる技術を提供することができる。
【図面の簡単な説明】
【0015】
【図1】通信システムの構成例を示すブロック図。
【図2】親局の内部構成例を示すブロック図。
【図3】子局の内部構成例を示すブロック図。
【図4A】正常動作時のフレーム構成例を示す図。
【図4B】異常動作時のフレーム構成例を示す図。
【図5A】正常動作時のスロットテーブルの説明図。
【図5B】異常動作時の親局のスロットテーブルの説明図。
【図5C】異常動作時の子局のスロットテーブルの説明図。
【図6】子局に設置されるスロット情報設定部の動作フロー図。
【図7】実施形態1における親局に設置される送信停止局判断部の動作フロー図。
【図8A】スロット情報を2つのスロットで送信する場合の、正常動作時のフレーム構成例を示す図。
【図8B】スロット情報を2つのスロットで送信する場合の、異常動作時のフレーム構成例を示す図。
【図9A】スロット情報を2つのスロットで送信する場合の、正常動作時のスロットテーブルの説明図。
【図9B】スロット情報を2つのスロットで送信する場合の、異常動作時の親局のスロットテーブルの説明図。
【図10】実施形態2に係る子局の内部構成例を示すブロック図。
【図11】実施形態2に係る異常動作時のフレーム構成例を示す図。
【図12】実施形態2に係る異常動作時の親局のスロットテーブルの説明図。
【発明を実施するための形態】
【0016】
以下、添付図面を参照して本発明の実施の形態を詳細に説明する。
【0017】
<<実施形態1>>
(通信システムの構成)
図1は、本発明を適用するロボットシステムにおける通信システムの構成を示す図である。本実施形態では、親局10と複数の子局A20〜C40が縦続接続されて通信システムを構成する。なお、以下の説明では、任意の子局A20〜C40から見て、親局10に近い子局を上位局、親局に遠い子局を下位局と呼ぶこととする。すなわち、子局B30においては、子局A20は上位局であり、子局C40は下位局である。
【0018】
親局10は、子局A20〜C40に対してモータ制御情報を送信する。親局10は子局接続コネクタ11を備え、その子局接続コネクタ11は、最上位の子局である子局A20の上位局接続コネクタ21へ接続される。子局A20、子局B30は、ロボットシステムの構成要素である関節モジュールであり、子局C40、子局D50はロボットシステム用のエンドエフェクタである。本実施形態のロボットシステムは作業内容に応じて、人手を介さず自律的にエンドエフェクタの交換、すなわち、例えば子局C40と子局D50との交換が行われる。なお、この交換により、通信システムの構成も当然に変化する。子局A20〜D50は、上位局接続コネクタ21〜51と下位局接続コネクタ22〜32を備え、これらを用いて上位局・下位局と接続してネットワークを形成する。なお、子局C40と子局D50とは、エンドエフェクタであり、それよりも下位の子局がないため、下位局接続コネクタを備えていないが、必要に応じてこれを備えるようにしてもよい。また、子局A20〜D50には、関節を曲げるためのモータ23〜53及び55、関節の曲げ角度を検出するための角度センサ24〜54が接続される。
【0019】
親局10が送信するモータ制御情報は、例えばモータ23〜53及び55に印加する電圧値を含んでもよい。子局A20〜D50は、モータ制御情報に基づいてモータ23〜53及び55を駆動する。また、子局A20〜D50は、角度センサ24〜54から関節の曲げ角度を取得し、その取得した角度の情報を角度情報として親局10に送信する。親局10は、受信した角度情報に応じて次のモータ制御情報を生成する。本実施形態では、このような通信、及びモータ制御を一定周期毎に行うことで、システム全体のフィードバック制御を行う。
【0020】
(親局の構成)
図2は、本実施形態の親局10の内部構成を示す図である。親局10は、例えば、モータ制御情報生成部101、スロット情報生成部102、同期情報生成部103、保守情報要求生成部104、スロット情報記憶部110、送信停止局判断部111、及びスロット情報書き換え部112を備える。また、親局10は、例えば、さらにセレクタ105、送信部106、子局接続コネクタ107、受信部108、カウンタ109、送受信制御部113、及び子局保守部114を備える。
【0021】
モータ制御情報生成部101は、システム動作に応じて、子局のモータを制御するためのモータ制御情報を生成する。また、モータ制御情報生成部101は、システム動作時に子局A20〜C40から受信した角度情報に応じて、次のモータ制御情報を生成する。スロット情報生成部102は、エンドエフェクタの交換を行った場合、交換されたエンドエフェクタに応じて時分割通信で用いるスロット情報を生成する。なお、スロット情報の生成は、ロボットシステムを起動したとき、又はロボットシステムをリセットしたときなどに行われてもよい。なおスロット情報に固有の識別子を付与することにより、子局は、スロット情報を伝送するスロットの位置を知らなくても、その識別子に基づいてスロット情報を取得できる。スロットの配置などについては後述する。
【0022】
同期情報生成部103は、現在のフレーム番号や、親局と子局との間の同期を行うために使用する同期信号を含む同期情報を生成する。フレームの構成などについては後述する。同期情報は親局から子局A20〜C40へフレーム毎に送信され、子局はその同期情報を用いて親局10と同期を行い、時分割で通信を行う。保守情報要求生成部104は、後述する保守情報を要求するデータである保守情報要求を生成する。なお保守情報要求は、モータ制御情報、角度情報とは異なり、厳密な等時性は要求されない非等時性情報である。セレクタ105は後述する送受信制御部113の制御に基づき、上述したモータ制御情報、スロット情報、同期情報、及び保守情報要求のいずれかを選択し、出力する。
【0023】
送信部106は後述する送受信制御部113の制御に基づき、セレクタ105から出力されたモータ制御情報、スロット情報、同期情報、又は保守情報要求のデータに誤り検出符号化処理及び変調処理を施して通信信号として、子局A20〜C40に送信する。受信部108は後述する送受信制御部113の制御に基づき、子局A20〜C40から受信した通信信号に誤り検出復号化処理及び復調処理を施し、角度情報や保守情報を取得する。親局10は子局接続コネクタ107により子局A20と接続され、子局接続コネクタ107を介して子局A20〜C40との信号の送受信を行う。
【0024】
カウンタ109は、フレーム番号及びスロット番号をカウントし、現在のフレーム番号及びスロット番号の情報を含むカウント信号を出力する。スロット情報記憶部110はスロット情報生成部102が生成したスロット情報を、内蔵するテーブル(以後、スロットテーブル)として記憶して保持する。送信停止局判断部111は、カウンタ109のカウント信号に基づき、子局から送信される信号を検出し、その検出結果とスロット情報記憶部110に保持されるスロットテーブルとを比較することで、子局の送信動作が正常に行われているか否かを判断する。例えば、送信停止局判断部111は、送信用に割り当てたスロットにおいて信号の送信を行っていない子局を検出した場合は、その子局を送信停止局と判断し、送信停止局検出信号を出力する。送信停止局判断部111は、スロット情報の通りに通信が行われているかを監視することにより、使用されるべきスロット情報を子局が保持しているかを判定することができる。
【0025】
スロット情報書き換え部112は、送信停止局検出信号が入力されると、その送信停止局から親局へ情報を送信するスロット、又は親局からその送信停止局へ情報を送信するスロットを、スロット情報記憶部110に記憶されたスロットテーブルから探索する。そして、探索により発見されたスロットのうち、現スロット以降で一番近い時間に対応するものをスロット情報の再送用スロット(以後、「スロット情報再送用スロット」と呼ぶ)と決定する。そして、決定されたスロット情報再送用スロットによりスロット情報記憶部110のスロットテーブルを書き換える。なお、スロット情報の伝送に必要なスロット数が複数ある場合は、それらの全てに対応するスロット情報再送用スロットを決定してスロットテーブルの書き換えを行う。すなわち、スロット情報書き換え部112は、送信停止局は正しいスロット情報を保持していないため、正しいスロット情報を送信停止局に送信するため、できるだけ早い時間スロットにスロット情報再送用スロットを設ける。
【0026】
送受信制御部113は、スロット情報記憶部110が保持するスロット情報と、カウンタ109からのカウント値に基づいて、セレクタ105、送信部106、受信部108のそれぞれについて動作制御を行う。子局保守部114は、子局から送信される後述する保守情報を元に、各子局の寿命/異常等を診断、保守を行う。
【0027】
(子局の構成)
続いて、本実施形態の子局A20〜D50の構成について説明する。図3は、子局A20の内部構成を示す図である。子局A20は、例えば、角度情報生成部201、保守情報生成部202、スロット情報記憶部209、及びスロット情報設定部210を備える。また、子局A20は、例えば、さらにセレクタ203、送信部204、上位局接続コネクタ205、下位局接続コネクタ206、受信部207、カウンタ208、送受信制御部211、及びモータ駆動部212を備える。
【0028】
角度情報生成部201は、外部に接続された角度センサ24から曲げ角度を取得し、角度情報を生成する。保守情報生成部202は、親局10から送信される保守情報要求を受信すると、自局の稼働時間や磨耗度等を示す保守情報を生成する。保守情報は、保守情報要求と同様に、厳密な等時性は要求されない非等時性情報である。セレクタ203は後述する送受信制御部211の制御に基づき、上述した角度情報、保守情報のいずれかを選択して出力する。送信部204は、後述する送受信制御部211の制御に基づき、セレクタ203から出力された角度情報又は保守情報に誤り検出符号化処理と変調処理を施し、通信信号として親局10に送信する。受信部207は後述する送受信制御部211の制御に基づき、親局10から受信した通信信号に誤り検出復号化処理と復調処理を施し、モータ制御情報、同期情報、スロット情報、又は保守情報要求を取得する。
【0029】
子局A20は、上位局接続コネクタ205により親局10と接続され、上位局接続コネクタ205を介して親局10と信号の送受信を行う。同様に、子局A20は、下位局接続コネクタ206により子局B30と接続され、下位局接続コネクタ206を介して子局B30との間の信号の送受信を行う。
【0030】
カウンタ208は、フレーム番号及びスロット番号をカウントし、カウント信号を出力する。スロット情報記憶部209は後述するスロット情報設定部210が出力するスロット情報をスロットテーブルとして記憶し、保持する。スロットテーブルはスロット情報設定部210がスロット情報を出力するごとに書き換えられる。スロット情報設定部210は、スロット情報の取得が正常に行われたか否かを判断し、もし正常に行われた場合は、取得したスロット情報をそのままスロット情報記憶部209へ書き込む。しかし、もし正常に行われなかった場合は、現スロット以降の全スロットを受信スロットとする異常用スロット情報をスロット情報記憶部209へ書き込む。なおこの動作はスロット情報が入力される度に実行される。
【0031】
送受信制御部211は、スロット情報記憶部209が保持するスロットテーブルと、カウンタ208からのカウント信号に基づいて、セレクタ203、送信部204、及び受信部207のそれぞれについて動作制御を行う。モータ駆動部212は、親局10から送信されるモータ制御情報に応じて、外部に接続されたモータ23を駆動させる。子局B30の内部構成及び動作は、子局A20と同様である。また子局C40も、下位局接続コネクタを所持しないこと以外は子局A20と同様であるため、詳細な説明を省略する。
【0032】
(スロット割当動作)
続いて本実施形態の時分割通信のためのスロット割当動作について詳細に説明する。
【0033】
[正常時の動作]
まず正常にスロット割当が行われた場合の動作(以後、正常動作)について示す。なお、以下の説明では、親局10から子局A20〜C40へ、また子局A20〜C40から親局10への信号の送信における、伝送遅延は十分に小さいものとする。
【0034】
図4Aは、本実施形態において正常動作時のフレーム構成を示す図である。図4Aに示すようにスーパーフレームは、スーパーフレームの1/Nの一定時間幅を有するN個のフレームから構成されており、またフレーム内は一定時間幅のM個(本実施形態では10個)のスロットに区切られている。本実施形態のロボットシステムでは、エンドエフェクタの種類により必要とする情報量が異なるため、エンドエフェクタに応じてスロット割当も異なる。このため、エンドエフェクタの交換を行った場合に、交換されたエンドエフェクタに応じてスロット割当の変更が行われる。なお、以下の動作説明では、前スーパーフレームにおいて、子局C50から子局C40のエンドエフェクタへ交換されたものとする。なお、図の各スロットにおいて、「T」は信号を送信することを、そして「R」は信号を受信することを、それぞれ示す。
【0035】
親局10は、時刻T1(前スーパーフレームの最終スロット)において、エンドエフェクタである子局C40が接続された場合のスロット情報である図5Aを、子局A20〜C40へ送信する。図5Aのスロット情報を見ると、スロット番号0は、親局10から子局A20〜C40への同期情報の送信に割り当てられている。またスロット番号1〜3は、子局A20〜C40から親局10への角度情報の送信に割り当てられている。スロット番号4〜6は、親局10から子局A20〜C40へのモータ制御情報の送信に割り当てられている。またフレーム番号1〜N−1のスロット番号7〜9とフレーム番号Nのスロット番号7〜8は、ランダムアクセス用のスロットとされている。上述の保守情報要求及び保守情報といった非等時性情報は、ランダムアクセス用スロットを用いて伝送される。送信すべき非等時性情報が発生した端局は、ランダムアクセス用スロットにてCSMA/CDやCSMA/CA方式、スロッテッドアロハ方式など、公知の送信制御によって送信権を確保して情報を送信する。またフレーム番号Nのスロット番号9は、親局10から子局A20〜C40へのスロット情報の送信に割り当てられている。このスロットを用いて、次のスーパーフレームのスロット割当を送信する。
【0036】
なお図5Aのスロット情報は説明の便宜上、全フレームのスロット情報が記述される形で示しているが、当然圧縮して伝送しても良い。例えば図5Aでは、事前にフレーム番号Nのスロット番号9はスロット情報伝送用スロットであると規定しておけば、1フレームあたりのスロット割当の情報とフレーム数Nの情報とを送信するのみで、図5Aのスロット情報を通知することができる。またフレーム数Nの値は、固定であってもよいし可変であってもよい。例えば予測制御を用いたロボットシステムであれば、エンドエフェクタの交換がしばらく行われない場合はNの値を大きめに、エンドエフェクタの交換が近々に行われる場合はNの値を小さめに設定することができる。以上のようにスロット情報を圧縮すると共にNの値を動的に設定することで、スロット情報の伝送に必要な通信リソースを必要最小限に抑えることができ、ひいては伝送帯域を有効利用することができる。
【0037】
次に図4Aの時刻T1(前スーパーフレームの最終スロット)における各端局の動作について説明する。時刻T1においては、親局10の送信部106は、スロット情報を変調した通信信号を子局A20〜C40へ送信する。また時刻T1においては、親局10では、スロット情報記憶部110に記憶されたスロットテーブルが、子局A20〜C40へ送信されたスロット情報と同じものに更新される。
【0038】
子局A20の受信部207は、受信した通信信号を復調し、スロット情報及び誤り検出結果をスロット情報設定部210へ出力する。スロット情報設定部210は、スロット情報及び誤り検出結果が入力されると、そのスロット情報と誤り検出結果に基づいて、スロット情報記憶部209へ出力するスロット情報を決定する。出力するスロット情報の決定処理について、図6を用いて説明する。なおスロット情報設定部210は、スロット情報設定部210へスロット情報及び誤り検出結果が入力されるたびに、本処理を実行する。また、子局B30、子局C40も同様の処理を実行する。
【0039】
処理が開始されると、スロット情報設定部210は受信部207からの誤り検出結果を確認し、スロット情報の取得が正常に行われたか否かを判断する(S61)。スロット情報の取得が正常に行われた場合(S61でYes)、正常に取得したスロット情報をそのままスロット情報記憶部209に書き込む(S62)。一方、スロット情報の取得が正常に行われなかった場合(S61でNo)、異常用スロット情報をスロット情報記憶部209に書き込む(S63)。なお、ここでは、上述の通り、子局A20〜C40においてスロット情報が正常に取得された(S61でYes)場合、すなわち正常動作の場合について説明している。この場合は、時刻T1において、親局10および子局A20〜C40のスロット情報記憶部209は、図5Aに示すスロット情報をスロットテーブルに保持することになる。
【0040】
続いて時刻T2(フレーム番号1、スロット番号0)における親局10及び子局A20〜C40の動作について説明する。親局10の送信停止局判断部111は1スロット毎に、子局A20〜C40の送信動作が正常に行われているか否かを判断する。その判断処理について、図7を用いて説明する。
【0041】
判断処理が開始されると、送信停止局判断部111は、現在のスロット(以後、現スロット)で送信を行う子局が存在するか否かを、カウンタ109からのカウント信号と、スロット情報記憶部110が保持するスロットテーブルから判定する(S71)。例えば、時刻T2(フレーム番号1、スロット番号0)では、親局10が送信を行うため、送信を行う子局は存在しないと判定する(S71でNo)。送信を行う子局が存在しない場合(S71でNo)、判断処理を終了する。一方、例えば時刻T3(フレーム番号1、スロット番号1)では子局A20が送信を行うため、「現スロットで送信を行う子局が存在する」と判定される(S71でYes)。現スロットで送信を行う子局が存在する場合(S71でYes)、その子局が送信動作を停止している送信停止局か否かを判断する(S72)。すなわち、現スロットで送信を行う子局が、正しいスロット情報を保持しているかを判定する。ここで現スロットで送信を行う子局が送信停止局であるか否かの判断は、例えば現スロットにおける信号の受信電力を検知することによって行われる。現スロットの受信電力が閾値以上であれば、その子局は送信動作を行っており、送信停止局ではないと判断し(S72でNo)、処理を終了する。一方、現スロットの受信電力が閾値より小さい場合、その子局は送信動作を行っていない送信停止局であると判断する(S72でYes)。すなわち、その子局は、正しいスロット情報を保持していないと判定する。この場合、送信停止局判断部111は、送信停止局検出信号をスロット情報書き換え部112へ出力し(S73)、処理を終了する。
【0042】
なお、時刻T2においては、親局10が送信を行うため、送信を行う子局は存在しないと判定し(S71でNo)、送信停止局検出信号を出力することなく判断処理を終了する。
【0043】
そして、親局10の送受信制御部113は、スロット情報記憶部110が保持するスロットテーブルに基づいて、セレクタ105及び送信部106を制御して、同期情報を送信する。子局A20の送受信制御部211も、親局10と同様、スロット情報記憶部209が保持するスロットテーブルに基づいて受信部207を制御して、同期情報を受信する。子局B30、子局C40の送受信制御部についても子局A20と同様の動作を行う。
【0044】
続いて時刻T3(フレーム番号1、スロット番号1)における各端局の動作について説明する。親局10の送信停止局判断部111は時刻T2と同様に、図7に示す判断処理を行う。処理においては、上述のように、時刻T3では子局A20が送信を行うため、「現スロットで送信を行う子局が存在する」と判定する(S71でYes)。ここで、本説明では、子局A20は時刻T3において正常に信号を送信しており、送信停止局ではない(S72でNo)。このため、親局10は、判断処理を終了する。
【0045】
したがって、親局10及び子局A20〜C40は、時刻T2と同様に、それぞれのスロット情報記憶部に保持されたスロットテーブルに基づいて、信号の送受信動作を行うために、それぞれのセレクタ及び送信部、又は受信部のいずれかを制御する。
【0046】
以上の動作を1スロット毎に繰り返し行うことにより、図5Aに示すスロット情報に従ったフレーム構成(図4A)を形成し、情報の送受信が行われる。
【0047】
[異常時の動作]
次に、スロット情報の取得が正常に行われなかった場合の動作(以後、異常動作)について説明する。図4Bは、子局A20においてスロット情報が正常に受信されずに異常動作となった時のフレーム構成である。
【0048】
時刻T4(前スーパーフレームの最終スロット)において、親局10は上述の正常動作時と同様に、図5Aに示すスロット情報を変調した通信信号を子局A20〜C40へ送信する。また時刻T4において、親局10では、スロット情報記憶部110に記憶されたスロットテーブルが、子局A20〜C40へ送信されたスロット情報と同じものに更新される。
【0049】
ここで、時刻T4において、子局A20との間の伝送経路において伝送誤りが生じ、スロット情報の取得が正常に行われなかったとする。子局A20の受信部207は、受信した通信信号を復調し、スロット情報及び誤り検出結果をスロット情報設定部210へ出力する。スロット情報設定部210は、上述したようにスロット情報及び誤り検出結果が入力されると、図6に示す出力するスロット情報の決定処理を実行する。ここではスロット情報の取得は正常に行われなかったため(S61でNo)、事前に規定された全スロットを受信スロットに設定する異常用スロット情報を、スロット情報記憶部209へ書き込む(S63)。
【0050】
図5Cに異常用スロット情報の例を示す。図中のMAXとは、設定できる最大のフレーム数である。この最大のフレーム数は、スーパーフレームに含まれるフレームの数が固定されている場合は、その固定値であってもよい。図5Cに示されるように、異常用スロット情報は、送信局や伝送される情報は不定であるが、スロット情報の受信に失敗した子局が常に受信状態であることを規定するスロット情報である。すなわち、スロット情報記憶部209に異常用スロット情報が書き込まれた子局は、異常用スロット情報が書き込まれている期間は信号の送信を行わなくなるため、送信停止局となる。すなわち、本例において、子局A20は送信停止局となる。
【0051】
一方、子局B30、子局C40では、スロット情報の取得が正常に行われたとする。この場合、子局B30、子局C40のスロット情報記憶部209は、図5Aに示すスロット情報をスロットテーブルに保持する。つまり、時刻T4において、親局10および子局B30、子局C40のスロット情報記憶部は図5Aに示すスロット情報を、子局A20は図5Cに示す異常用スロット情報をスロットテーブルに保持することになる。
【0052】
続いて時刻T5(フレーム番号1、スロット番号0)における動作について説明する。子局A20の送受信制御部211は、スロット情報記憶部209が保持するスロットテーブルに基づいて、セレクタ203、送信部204、受信部207の制御を行う。ここでスロットテーブルには図5Cが書き込まれているため、送受信制御部211は、現スロットは受信スロットであると判断し、受信を行うように受信部207を制御する。親局10及び子局B30、子局C40の動作は、正常動作時の時刻T2で説明した動作と同等であるため、詳細については割愛する。
【0053】
続いて時刻T6(フレーム番号1、スロット番号1)における動作について説明する。親局10の送信停止局判断部111は、上述のように、図7に示す判断処理を行う。判断処理では、時刻T6のスロットで子局A20が送信を行うため(S71でYes)、S72に処理を進める。そして、現スロットで送信を行う子局A20が、送信動作を停止する送信停止局か否かを判断する(S72)。ここで子局A20は送信停止局であるため(S72でYes)、送信停止局判断部111は、送信停止局検出信号をスロット情報書き換え部112へ出力する(S73)。
【0054】
スロット情報書き換え部112は、送信停止局検出信号が入力されると、スロット情報記憶部110のスロットテーブルから、送信停止局(子局A20)から親局10へ情報を送信するスロット、又は親局10が送信停止局へ情報を送信するスロットを抽出する。そして、抽出されたスロットの中から現スロットより後で最も早く送受信されるスロットを、スロット情報再送用スロットに用いるようにスロットテーブルを書き換える。図5Aでは、まず、フレーム番号1のスロット番号1と4、フレーム番号2のスロット番号1などが抽出される。そして、抽出されたスロットの中から、現スロットであるフレーム番号1のスロット番号1より後で、最も早く送受信が行われるスロットとして、フレーム番号1のスロット番号4のスロットが特定される。このため、スロット情報書き換え部112は、その特定されたスロットをスロット情報再送用スロットに書き換える。以上のようにして、正しいスロット情報を保持していない子局A20を検出し、そのスロット情報を再送信するためのスロット情報再送用スロットを設ける。書き換え後のスロットテーブルを図5Bに示す。
【0055】
次に、時刻T7(フレーム番号1、スロット番号4)における動作について説明する。親局10の送受信制御部113は、スロット情報記憶部110が保持するスロットテーブルに基づいて、セレクタ105、送信部106、受信部108の制御を行う。この際スロットテーブルには、上述したように図5Bが書き込まれているため、時刻T7では、スロット情報が子局A20へ送信される。なお、ここで送信するスロット情報は時刻T4で送信したスロット情報(図5A)と同様のものである。
【0056】
子局A20は、全てのスロットにおいて受信状態となるスロット情報(図5C)に基づいて動作しているため、親局10から送信されたスロット情報を受信することができる。なお、上述のようにスロット情報に固有の識別子を付与することにより、子局A20の受信部207は、識別子を確認することで受信した情報がスロット情報であると認識することができる。その結果、受信したスロット情報及び誤り検出結果はスロット情報設定部210へ出力される。ここではスロット情報の取得が正常に行われたとすると、スロット情報記憶部209のスロットテーブルに図5Aのスロット情報が書き込まれる。したがって、子局A20は時刻T8より後のスロットでは、正常な送受信制御を行うことができるようになる。
【0057】
なお上記実施形態ではスロット情報は1スロットで伝送されるものとして説明を行ったが、1スロット以上を用いて伝送を行っても良い。図8はスロット情報を2スロットで伝送する場合のフレーム構成である。図8Aは、正常動作時のフレーム構成であり、図8Bは、子局A20がスロット情報の取得を正常に行えなかった異常動作時のフレーム構成である。スロット情報は、時刻T10、T11または時刻T12、T13(前スーパーフレームの最終2スロット)にて、親局10から子局A20〜C40へ送信される。このとき送信されるスロット情報を図9Aに示す。図9Aに示す通り、本例においては、スロット情報が、スロット情報1とスロット情報2として2スロットを用いて伝送される。正常動作については、これ以外の動作についてはスロット情報を1スロットで伝送する場合の動作と同等であるため、詳細な説明については省略する。
【0058】
異常動作について図8Bを用いて説明を行う。初めに時刻T12、T13(前スーパーフレームの最終2スロット)における親局10及び子局A20〜C40の動作について説明する。親局10の送信部106は、図9Aに示したスロット情報をスロット情報1及びスロット情報2の2つに分割し、それぞれ変調した通信信号を、2スロットを用いて子局A20〜C40へ送信する。
【0059】
子局A20の受信部207は、受信した通信信号を復調し、2スロットに分割されたスロット情報1及びスロット情報2を結合して、スロット情報及び誤り検出結果をスロット情報設定部210へ出力する。ここで、スロット情報の取得は正常に行われなかったものとする。この場合、子局A20のスロット情報設定部210は、異常用スロット情報(図5C)をスロット情報記憶部209へ書き込む。これにより、子局A20は送信停止局となる。一方、子局B30と子局C40ではスロット情報の取得が正常に行われ、子局B30と子局C40のスロット情報記憶部209は、図9Aに示すスロット情報をスロットテーブルに保持する。このように、時刻T13において、親局10および子局B30、子局C40では図9Aに示すスロット情報を、子局A20では図5Cに示す異常用スロット情報が、スロットテーブルとしてスロット情報記憶部に保持されることになる。
【0060】
次に時刻T14(フレーム番号1、スロット番号1)における親局10の動作について説明する。親局10の送信停止局判断部111は上述したように1スロット毎に、図7に示す判断処理を行う。ここで子局A20は上述したように送信停止局になっている。このため、送信停止局判断部111は、送信停止局検出信号をスロット情報書き換え部112へ出力する。スロット情報書き換え部112は、送信停止局検出信号が入力されると、スロット情報記憶部110のスロットテーブルから、送信停止局(子局A20)から親局へ情報を送信するスロット、又は親局が送信停止局へ情報を送信するスロットを抽出する。そして抽出されたスロットの中から現スロットより後に、最も早く送受信が行われるスロットとその次には約送受信が行われるスロットを、スロット情報再送用スロットに用いるようにスロットテーブルを書き換える。図9Aでは、まず、フレーム番号1のスロット番号1と4、フレーム番号2のスロット番号1などが抽出される。そして、抽出されたスロットの中から、現スロットであるフレーム番号1のスロット番号1より後で、最も早く送受信が行われるスロットとして、フレーム番号1のスロット番号4のスロットが特定される。さらに、現スロットであるフレーム番号1のスロット番号1より後で、2番目に早く送受信が行われるスロットとして、フレーム番号2のスロット番号1のスロットが特定される。このため、スロット情報書き換え部112は、その特定されたスロットをスロット情報再送用スロットに書き換える。書き換え後のスロットテーブルを図9Bに示す。
【0061】
次に時刻T15(フレーム番号1、スロット番号4)及び時刻T16(フレーム番号2、スロット番号1)における親局10及び子局A20〜C40の動作について説明する。親局10の送受信制御部113は、スロット情報記憶部110が保持するスロットテーブルに基づいて、セレクタ105、送信部106、受信部108の制御を行う。この場合、スロットテーブルには、上述したように図9Bで示されるスロット情報が書き込まれている。このため、時刻T15(フレーム番号1、スロット番号4)ではスロット情報1が、そして時刻T16(フレーム番号2、スロット番号1)ではスロット情報2が、それぞれ子局A20へ送信される。なおここで送信されるスロット情報は時刻T12、T13で送信したスロット情報(図9A)と同様のものである。
【0062】
子局A20は、図5Cで示されるスロット情報が書き込まれたスロットテーブルに従って信号の受信を待ち受ける状態となっている。受信部207は、上述の識別子に基づいて、受信した情報がスロット情報であるかを判定し、スロット情報1及びスロット情報2の受信を確認する。受信部207は、スロット情報1及びスロット情報2を結合して得たスロット情報と誤り検出結果とを、スロット情報設定部210へ出力する。ここではスロット情報の取得が正常に行われたとすると、スロット情報記憶部209のスロットテーブルに図9Aのスロット情報が書き込まれる。これに応じて、子局A20は時刻T17より後のスロットでは、正常な送受信制御を行うことができるようになる。
【0063】
なお、スロット情報1とスロット情報2の結合は、受信部207で行う必要はなく、例えばスロット情報設定部210で行ってもよい。また、例えば、スロット情報1には1フレーム目からN/2フレーム目の情報が含まれ、スロット情報2にはそれ以外の情報が含まれる場合、結合せずに、逐次的にスロット情報記憶部209のスロットテーブルを更新してもよい。また、スロット情報が3つ以上のスロットを用いて送信される場合も、上記と同様の処理を行ってもよい。
【0064】
以上、各局の動作により、通信リソースを浪費せずに、スロット情報を送信し、かつスロット情報の取得を正常に行えなかった子局を早急にネットワークへ復帰させることができる。これにより、本実施形態のロボットシステムは、エンドエフェクタの交換を遅滞なくスムーズに行うことができる。また、ロボットシステムにおいて、スロット情報の取得を正常に行えなかった子局が存在しても、制御が不安定に陥ることがなく、高い生産性と信頼性を確保することができる。
【0065】
なお、本実施形態でのスロット情報再送用スロットは、送信停止局に送信用として割り当てたスロット、もしくは親局が送信停止局へモータ制御情報を送信するために割り当てたスロットとした。しかし、親局の送信用スロットとして、毎回使用することはないが任意の情報を送信できる予備のスロット(以後、「予備スロット」と呼ぶ)が設けられている場合、その予備スロットをスロット情報再送用スロットとして用いても良い。この予備スロットは、例えば緊急時における緊急停止信号や、初期化をするためのリセット信号を伝送するためのスロットであってもよく、これらの信号が送信されないときに、スロット情報を送信するようにしてもよい。
【0066】
また、本実施形態では非等時性情報を送信するためのランダムアクセス用スロットを設けたが、必ずしも設けなくてもよい。また本実施形態のスロット情報の伝送はスーパーフレーム毎に行ったが、これに限られず、エンドエフェクタの交換が行われた時のみ伝送するようにしてもよい。
【0067】
<<実施形態2>>
実施形態1で説明した技術は、スロット情報の情報量がそれほど多くない場合に特に有効である。例えば実施形態1では、スロット情報が1スロットの場合では、送信停止局を1フレーム以内にネットワークに復帰させることができる。本実施形態では、スロット情報の情報量が多くなった場合にも柔軟かつ高速に送信停止局をネットワークに復帰させる方法を提案する。具体的には、本実施形態では、送信停止局に割り当てたスロットに加えて、ランダムアクセス用スロットを、スロット情報の再送用のスロットとして使用する。なお、本実施形態のロボットシステム全体の構成は、実施形態1と同様であるので、説明を省略する。
【0068】
(親局の構成)
親局10の機能構成は、実施形態1に係る図2とほぼ同様であるため図示を省略する。ただし、本実施形態の親局10では、スロット情報書き換え部112に送信停止局検出信号が入力された時に抽出されるスロットが異なる。本実施形態のスロット情報書き換え部112は、送信停止局から親局10へ又は親局10から送信停止局へ信号を送信するスロットに加え、ランダムアクセス用スロットも抽出する。そして、その中から現スロットより後であって、送信停止局との間で最も早く送受信を行うことができる所定数のスロットを特定する。そして、スロット情報書き換え部112は、特定したスロットにおいてスロット情報を送信するように、スロットテーブルを書き換える。親局10の他の機能は実施形態1と同様である。
【0069】
(子局の構成)
図10は本実施形態の子局A20の内部構成を示す図である。実施形態1の子局A20と同様の機能を果たすブロックについては、図3と同一の符号を付し、その説明については省略する。本実施形態では、子局A20は、さらに送信停止局判断部213と、スロット情報書き換え部214とを備える。これらの動作については、それぞれ、親局の送信停止局判断部111、及びスロット情報書き換え部112と同様である。
【0070】
(スロット割当動作)
続いて本実施形態のスロット割当動作について詳細に説明する。図11は本実施形態における異常動作時のフレーム構成を示す図である。なお、正常動作時のフレーム構成や動作は図8Aの構成やそれに伴う動作と同様であるため、説明を省略する。
【0071】
図11は、子局A20がスロット情報の取得を正常に行えなかった異常動作時のフレーム構成である。スロット情報は、時刻T20、T21(前スーパーフレームの最終2スロット)において、親局10から子局A20〜C40へ送信される。このとき送信されるスロット情報は、図9Aと同様である。具体的には、親局10の送信部106は、図9Aに示したスロット情報をスロット情報1及びスロット情報2の2つに分割し、それぞれ変調した通信信号を、2スロットを用いて子局A20〜C40へ送信する。また時刻T21では、スロット情報記憶部110は、スロット情報記憶部110に保持されるスロットテーブルを、子局A20〜C40へ送信するスロット情報と同じものに更新する。
【0072】
子局A20の受信部207は、受信した通信信号を復調し、2スロットに分割されたスロット情報1及びスロット情報2を結合して、受信したスロット情報及び誤り検出結果をスロット情報設定部210へ出力する。本動作説明ではスロット情報の取得は正常に行われないため、スロット情報設定部210は、異常用スロット情報(図5C)をスロット情報記憶部209に書き込む。これにより、子局A20は送信停止局となる。一方、子局B30と子局C40ではスロット情報の取得は正常に行われ、子局B30と子局C40のスロット情報記憶部209は、図9Aで示されるスロット情報をスロットテーブルとして保持する。このようにして、時刻T23において、親局10および子局B30、子局C40のスロット情報記憶部は図9Aに示すスロット情報を、子局A20は図5Cに示す異常用スロット情報をスロットテーブルとして保持することになる。
【0073】
次に時刻T22(フレーム番号1、スロット番号0)における親局10及び子局A20〜C40の動作について説明する。親局10の送信停止局判断部111は、実施形態1と同様に図7に示す判断処理を行う。時刻T22では、親局10が送信を行うため、送信を行う子局は存在しない。このため、送信停止局判断部111は何も行わずにフロー処理を終了する。本実施形態では、子局A20の送信停止局判断部213も同様に図7に示す判断処理を行う。子局A20のスロット情報記憶部209は、図5Cをスロットテーブルに保持している。したがって、送信局は不明であり、送信を行う子局が存在すると判断できないため、フローを終了する。また子局B30、C40の送信停止局判断部213もまた、親局10と同様の動作を行う。子局B30と子局C40は、現スロットで送信するのは親局10であることを知っている。このため、現スロットで送信を行う子局は存在しないと判断し、何も行わずフロー処理を終了する。
【0074】
次に時刻T23(フレーム番号1、スロット番号1)における各端局の動作について説明する。親局10の送信停止局判断部111はまた図7に示す判断処理を行う。この場合は、現スロットで送信する子局(子局A20)が存在するが、その子局A20は上述したように送信停止局になっている。このため、送信停止局判断部111は、送信停止局検出信号をスロット情報書き換え部112へ出力する。
【0075】
スロット情報書き換え部112は、送信停止局検出信号が入力されると、まずスロット情報記憶部110のスロットテーブルから、送信停止局から親局へ、もしくは親局から送信停止局へ情報を送信するスロット、又はランダムアクセス用スロットを抽出する。そして、抽出されたスロットの中から現スロットより後に送受信するスロットで最も早く送受信が実行できる2スロットを、スロット情報伝送用スロットに用いるようにスロット情報記憶部110のスロットテーブルを書き換える。本実施形態では、まず、フレーム番号1のスロット番号4と7から9、及びフレーム番号2のスロット番号1などのスロットが抽出される。そして、その中から、最も早く送受信をすることが可能となる2スロットを選択する。この場合、フレーム番号1のスロット番号4及びフレーム番号1のスロット番号7のスロットが選択される。そこで選択されたスロットを、スロット情報伝送用スロットに書き換える。書き換え後のスロットテーブルを図12に示す。
【0076】
子局A20の送信停止局判断部213もまた図7に示す判断処理を行うが、時刻T22と同様に送信局が不明であるため、何もせずに判断処理のフローを終了する。子局B30と子局C40の送信停止局判断部213及びスロット情報書き換え部214も、親局10と同様の動作を行い、スロット情報記憶部209が保持するスロットテーブルを図12の内容に書き換える。
【0077】
次に時刻T24(フレーム番号1、スロット番号4)及び時刻T25(フレーム番号1、スロット番号7)における各端局の動作について説明する。親局10の送受信制御部113は、スロット情報記憶部110が保持するスロットテーブルに基づいて、セレクタ105、送信部106、受信部108の制御を行う。このとき、スロットテーブルには、上述したように図12のスロット情報が書き込まれているため、時刻T24ではスロット情報1を、時刻T25では、スロット情報2の送信が行われる。なおここで送信するスロット情報は時刻T20、T21で送信したスロット情報(図9A)と同様のものである。
【0078】
子局A20は、図5Cに示されるスロット情報に基づいて受信制御が行われているため、親局10が送信したスロット情報を受信することができる。そして、受信部207は、上述した識別子に基づいて、受信した信号がスロット情報1及びスロット情報2であることを確認する。受信部207は、スロット情報を受信したことを確認すると、スロット情報1及びスロット情報2を結合し、結合後のスロット情報及び誤り検出結果をスロット情報設定部210へ出力する。ここで、スロット情報の取得が正常に行われると、スロット情報記憶部209のスロットテーブルに、図9Aのスロット情報が書き込まれる。これにより、子局A20は時刻T26以降のスロットでは正常な送受信制御を行うことができるようになる。
【0079】
以上のように、本実施形態では、ランダムアクセス用スロットもスロット情報再送用スロットとして使用するため、スロット情報のスロット数が多い場合でも、スロット情報の取得を正常に行えなかった子局を迅速にネットワークへ復帰させることができる。本実施形態はランダムアクセス用スロットが多ければ多いほど有効である。
【0080】
なお上記実施形態1及び実施形態2では、親局と子局との間の通信について説明を行ったが、これに限定されるものではなく、子局同士の通信を行うスロットを含んでもよい。また、この場合、あるスロットにおいて、受信を行う子局が、送信を行う子局からの信号を受信しなかった場合、受信を行う子局は自らがスロットテーブルとして保持するスロット情報を、相手方の子局(送信を行う子局)へ送信してもよい。また、親局と子局のような従属関係は必ずしも必要なく、エンドエフェクタの交換時などに、全ての端局のうちのいずれか1つの端局における第1の通信手段がスロット情報を生成して他の端局における第2の通信手段へ送信するようにしてもよい。例えば、図1の例を用いると、上述の第1の通信手段は、エンドエフェクタに直接接続される子局B30の通信手段であり、上述の第2の通信手段は、親局10、子局A20、子局C40の通信手段であってもよい。エンドエフェクタにより近い位置にある端局の通信手段をスロット情報を送信する第1の通信手段とすることで、エンドエフェクタの交換の検知からスロット情報の送信までの時間を極力短縮することができる。また、例えば、縦列接続のネットワークでは、当該縦列接続の中間位置にある端局の通信手段を第1の通信手段としてもよい。これにより、特にネットワーク規模がある程度大きい場合に、ネットワーク全体へスロット情報を伝達するための時間を短縮することが可能となる。さらに、第1の通信手段が、複数の第2の通信手段と直接接続する並列接続型ネットワークをロボットシステムに用いてもよい。
【0081】
また上記実施形態1及び実施形態2では、スロット情報を取得した次のスロットからそのスロット情報で示されるスロット割当が適用されるが、これに限定されるものではない。例えばスロット割当を適用するまでに時間を有する場合は、スロット情報を取得したM個先のスロットから、そのスロット情報に記したスロット割当を適用するという方法を用いてもよい。
【0082】
また上記実施形態1及び実施形態2では、スロット情報生成部が生成したスロット情報を保持するスロット情報記憶部と、送信停止局検出信号に応じてスロット情報を書き換えるスロット情報書き換え部を備えるが、これに限定されるものではない。例えばROMに予め全てのスロット情報を記憶しておき、送信停止局検出信号に応じて複数の記憶しておいたスロット情報の中から所定のスロット情報を選択し、送受信制御部は選択されたスロット情報に基づいて制御を行ってもよい。
【0083】
また上記実施形態1及び実施形態2では、エンドエフェクタの交換によりスロット割当の変更が生じるロボットシステムを用いて説明を行ったが、これに限定されるものではない。本発明は、例えば把持/加工機能など複数の機能を有し、作業内容に応じて切り替るエンドエフェクタを備えるロボットシステムなど、随時スロット割当の変更を行う産業用自動制御装置に適用することができる。
【0084】
<<その他の実施形態>>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【特許請求の範囲】
【請求項1】
時分割の通信によって割り当てられたスロットにおいて信号を送信する送信手段および信号を受信する受信手段を備える複数の通信手段を含み、第1の通信手段と第2の通信手段が互いに通信する通信システムであって、
前記第1の通信手段は、前記第2の通信手段が前記スロットに関する情報を保持しているか否かを判定する判定手段を備え、
前記第2の通信手段は、前記情報を保持しない場合には信号の送信を停止し、
前記第1の通信手段は、前記第2の通信手段に割り当てられたスロットにおいて、当該第2の通信手段から信号を受信しなかった場合、当該第2の通信手段が前記情報を保持していないと判定する、
ことを特徴とする、通信システム。
【請求項2】
前記第1の通信手段は、通信に先だって、前記情報を前記第2の通信手段に送信する、
ことを特徴とする、請求項1に記載の通信システム。
【請求項3】
前記第2の通信手段は、前記情報を前記受信手段を介して受信し、受信した前記情報について誤りを検出する検出手段を備え、
前記第2の通信手段は、前記情報について誤りを検出した場合には、当該情報を保持しない、
ことを特徴とする請求項1又は2に記載の通信システム。
【請求項4】
前記第1の通信手段は、前記第2の通信手段が前記情報を保持していないと判定した場合、前記スロットの割り当てにおける当該第2の通信手段との間で通信を行うスロット、前記複数の通信手段が行う通信のいずれにも割り当てられないスロット、及び前記第1の通信手段が信号の送信を許される予備のスロットの、少なくとも1つにおいて、前記情報を当該第2の通信手段へ送信する、
ことを特徴とする、請求項1から3のいずれか1項に記載の通信システム。
【請求項5】
前記第1の通信手段は、前記情報を前記第2の通信手段へ送信することができるスロットのうち、最も早く送信を実行できるスロットを用いて、当該送信を行う、
ことを特徴とする請求項4のいずれか1項に記載の通信システム。
【請求項6】
前記第2の通信手段は、前記スロットの割り当ての情報を保持していない場合、全てのスロットで信号の受信を行う、
ことを特徴とする請求項1から5のいずれか1項に記載の通信システム。
【請求項7】
前記第2の通信手段は、前記第1の通信手段が前記情報を送信した場合で、当該情報を受信した場合、当該情報に含まれるスロットの割り当てに応じて通信を行う、
ことを特徴とする請求項1から6のいずれか1項に記載の通信システム。
【請求項8】
時分割の通信によって割り当てられたスロットにおいて信号を送信する送信手段および信号を受信する受信手段を備え、他の通信装置と通信を行う通信装置であって、
前記他の通信装置に割り当てられたスロットにおいて、当該他の通信装置から信号を受信しなかった場合、当該他の通信装置が前記スロットに関する情報を保持していないと判定する判定手段を備える、
ことを特徴とする通信装置。
【請求項9】
時分割の通信によって割り当てられたスロットにおいて信号を送信する送信手段および信号を受信する受信手段を備え、他の通信装置と通信を行う通信装置における通信方法であって、
判定手段が、前記他の通信装置に割り当てられたスロットにおいて、当該他の通信装置から信号を受信しなかった場合、当該他の通信装置が前記スロットに関する情報を保持していないと判定する判定工程を有する、
ことを特徴とする通信方法。
【請求項10】
コンピュータを請求項8に記載の通信装置が備える各手段として機能させるためのプログラム。
【請求項1】
時分割の通信によって割り当てられたスロットにおいて信号を送信する送信手段および信号を受信する受信手段を備える複数の通信手段を含み、第1の通信手段と第2の通信手段が互いに通信する通信システムであって、
前記第1の通信手段は、前記第2の通信手段が前記スロットに関する情報を保持しているか否かを判定する判定手段を備え、
前記第2の通信手段は、前記情報を保持しない場合には信号の送信を停止し、
前記第1の通信手段は、前記第2の通信手段に割り当てられたスロットにおいて、当該第2の通信手段から信号を受信しなかった場合、当該第2の通信手段が前記情報を保持していないと判定する、
ことを特徴とする、通信システム。
【請求項2】
前記第1の通信手段は、通信に先だって、前記情報を前記第2の通信手段に送信する、
ことを特徴とする、請求項1に記載の通信システム。
【請求項3】
前記第2の通信手段は、前記情報を前記受信手段を介して受信し、受信した前記情報について誤りを検出する検出手段を備え、
前記第2の通信手段は、前記情報について誤りを検出した場合には、当該情報を保持しない、
ことを特徴とする請求項1又は2に記載の通信システム。
【請求項4】
前記第1の通信手段は、前記第2の通信手段が前記情報を保持していないと判定した場合、前記スロットの割り当てにおける当該第2の通信手段との間で通信を行うスロット、前記複数の通信手段が行う通信のいずれにも割り当てられないスロット、及び前記第1の通信手段が信号の送信を許される予備のスロットの、少なくとも1つにおいて、前記情報を当該第2の通信手段へ送信する、
ことを特徴とする、請求項1から3のいずれか1項に記載の通信システム。
【請求項5】
前記第1の通信手段は、前記情報を前記第2の通信手段へ送信することができるスロットのうち、最も早く送信を実行できるスロットを用いて、当該送信を行う、
ことを特徴とする請求項4のいずれか1項に記載の通信システム。
【請求項6】
前記第2の通信手段は、前記スロットの割り当ての情報を保持していない場合、全てのスロットで信号の受信を行う、
ことを特徴とする請求項1から5のいずれか1項に記載の通信システム。
【請求項7】
前記第2の通信手段は、前記第1の通信手段が前記情報を送信した場合で、当該情報を受信した場合、当該情報に含まれるスロットの割り当てに応じて通信を行う、
ことを特徴とする請求項1から6のいずれか1項に記載の通信システム。
【請求項8】
時分割の通信によって割り当てられたスロットにおいて信号を送信する送信手段および信号を受信する受信手段を備え、他の通信装置と通信を行う通信装置であって、
前記他の通信装置に割り当てられたスロットにおいて、当該他の通信装置から信号を受信しなかった場合、当該他の通信装置が前記スロットに関する情報を保持していないと判定する判定手段を備える、
ことを特徴とする通信装置。
【請求項9】
時分割の通信によって割り当てられたスロットにおいて信号を送信する送信手段および信号を受信する受信手段を備え、他の通信装置と通信を行う通信装置における通信方法であって、
判定手段が、前記他の通信装置に割り当てられたスロットにおいて、当該他の通信装置から信号を受信しなかった場合、当該他の通信装置が前記スロットに関する情報を保持していないと判定する判定工程を有する、
ことを特徴とする通信方法。
【請求項10】
コンピュータを請求項8に記載の通信装置が備える各手段として機能させるためのプログラム。
【図1】
【図2】
【図3】
【図4A】
【図4B】
【図5A】
【図5B】
【図5C】
【図6】
【図7】
【図8A】
【図8B】
【図9A】
【図9B】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4A】
【図4B】
【図5A】
【図5B】
【図5C】
【図6】
【図7】
【図8A】
【図8B】
【図9A】
【図9B】
【図10】
【図11】
【図12】
【公開番号】特開2013−115517(P2013−115517A)
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【出願番号】特願2011−258215(P2011−258215)
【出願日】平成23年11月25日(2011.11.25)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【出願日】平成23年11月25日(2011.11.25)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]