(57)【要約】【課題】通信遅延や遅延の変動が存在しても、最良の安定性及び操作性を保証することが可能なマスタスレーブ装置、マスタ装置、スレーブ装置、制御方法及びコンピュータプログラムを提供する。【解決手段】操作者が操作するマスタ側操作端６を備えるマスタ装置２と、操作者によるマスタ側操作端６の操作に応じて動作するスレーブ側操作端４０を備えるスレーブ装置４とを備え、マスタ装置２とスレーブ装置４が通信ネットワークを介して接続されているマスタスレーブ装置１において、通信ネットワークの状態に応じて、マスタ側制御パラメータを変更してマスタ側操作端６の駆動状態を制御し、且つスレーブ側制御パラメータを変更してスレーブ側操作端４０の駆動状態を制御する。【選択図】図１
2008119757.tif 000002
【特許請求の範囲】
【請求項１】
操作者が操作するマスタ側操作端及び当該マスタ側操作端を駆動させるマスタ側駆動機構を備えたマスタ装置と、前記マスタ装置と通信ネットワークを介して接続され、且つ前記操作者による前記マスタ側操作端の操作に応じて動作するスレーブ側操作端及び当該スレーブ側操作端を駆動させるスレーブ側駆動機構を備えたスレーブ装置と、を備え、
前記スレーブ側駆動機構の内部状態に基づいて前記マスタ側駆動機構による前記マスタ側操作端の駆動状態を制御するためのマスタ側制御パラメータを演算するマスタ側制御パラメータ演算部、及び前記マスタ側駆動機構の内部状態に基づいて前記スレーブ側駆動機構による前記スレーブ側操作端の駆動状態を制御するためのスレーブ側制御パラメータを演算するスレーブ側制御パラメータ演算部のうち少なくとも一方を、前記マスタ装置及び前記スレーブ装置の一方に備え、
前記マスタ側制御パラメータ演算部及び前記スレーブ側制御パラメータ演算部のうち残りを、前記マスタ装置及び前記スレーブ装置の他方に備えたマスタスレーブ装置であって、
前記通信ネットワークの状態に応じて、前記マスタ側制御パラメータを変更して前記マスタ側操作端の駆動状態を制御し、且つ前記スレーブ側制御パラメータを変更して前記スレーブ側操作端の駆動状態を制御することを特徴とするマスタスレーブ装置。
【請求項２】
前記マスタ側駆動機構の内部状態を示す信号及び前記スレーブ側駆動機構の内部状態を示す信号を送信及び受信する手段を備え、
前記通信ネットワークの状態に応じて、前記マスタ側制御パラメータ及び前記スレーブ側制御パラメータを構成する要素である、前記マスタ側駆動機構の内部状態を示す信号及び前記スレーブ側駆動機構の内部状態を示す信号を適宜処理することを特徴とする請求項１に記載したマスタスレーブ装置。
【請求項３】
前記マスタ側制御パラメータ及びスレーブ側制御パラメータの値のそれぞれを、互いに異なる方法で計算し、これらの異なる方法で計算した信号を適宜処理するようにしたことを特徴とする請求項２に記載したマスタスレーブ装置。
【請求項４】
前記マスタ側駆動機構の内部状態を、前記操作者の操作により前記マスタ側操作端に加えられる力及び当該マスタ側操作端の位置とし、
前記スレーブ側駆動機構の内部状態を、前記力に応じて前記スレーブ側操作端に生じる力及び当該スレーブ側操作端の位置としたことを特徴とする請求項１から３のうちいずれか１項に記載したマスタスレーブ装置。
【請求項５】
前記操作者の操作により前記マスタ側操作端に加えられる力を、前記操作者の操作により前記マスタ側操作端に加えられるトルクに代え、
前記マスタ側操作端の位置を、前記マスタ側操作端の角度に代え、
前記スレーブ側操作端に生じる力を、前記トルクに応じて前記スレーブ側操作端に生じるトルクに代え、
前記スレーブ側操作端の位置を、前記スレーブ側操作端の角度に代えたことを特徴とする請求項４に記載したマスタスレーブ装置。
【請求項６】
前記通信ネットワークの状態は、前記マスタ装置から前記スレーブ装置に通信される信号が到着するまでの時間及びスレーブ装置からマスタ装置に通信される信号が到着するまでの時間のうち少なくとも一方であることを特徴とする請求項１から５のうちいずれか１項に記載したマスタスレーブ装置。
【請求項７】
前記マスタ装置から前記スレーブ装置に通信される信号が到着するまでの時間を、前記マスタ装置から前記スレーブ装置に通信される信号内に含まれるマスタ側タイムスタンプを用いて検出し、
前記スレーブ装置から前記マスタ装置に通信される信号が到着するまでの時間を、前記スレーブ装置から前記マスタ装置に通信される信号内に含まれるスレーブ側タイムスタンプを用いて検出したことを特徴とする請求項６に記載したマスタスレーブ装置。
【請求項８】
前記通信ネットワークの状態は、前記マスタ装置から前記スレーブ装置に通信される信号の損失及びスレーブ装置からマスタ装置に通信される信号の損失のうち少なくとも一方であることを特徴とする請求項１から７のうちいずれか１項に記載したマスタスレーブ装置。
【請求項９】
前記マスタ装置から前記スレーブ装置に通信される信号の損失を、前記マスタ装置から前記スレーブ装置に通信される信号内に含まれるマスタ側識別番号を用いて検出し、
前記スレーブ装置から前記マスタ装置に通信される信号の損失を、前記スレーブ装置から前記マスタ装置に通信される信号内に含まれるスレーブ側識別番号を用いて検出したことを特徴とする請求項８に記載したマスタスレーブ装置。
【請求項１０】
前記マスタ装置と前記スレーブ装置との間の通信手段をパケット通信としたことを特徴とする請求項１から９のうちいずれか１項に記載したマスタスレーブ装置。
【請求項１１】
操作者が操作するマスタ側操作端及び当該マスタ側操作端を駆動させるマスタ側駆動機構を備え、
前記操作者による前記マスタ側操作端の操作に応じて動作するスレーブ側操作端及び当該スレーブ側操作端を駆動させるスレーブ側駆動機構を備えたスレーブ装置と通信ネットワークを介して接続され、
前記スレーブ側駆動機構の内部状態に基づいて前記マスタ側駆動機構による前記マスタ側操作端の駆動状態を制御するためのマスタ側制御パラメータを演算するマスタ側制御パラメータ演算部、及び前記マスタ側駆動機構の内部状態に基づいて前記スレーブ側駆動機構による前記スレーブ側操作端の駆動状態を制御するためのスレーブ側制御パラメータを演算するスレーブ側制御パラメータ演算部のうち少なくとも一方を備えたマスタ装置であって、
前記通信ネットワークの状態に応じて、前記マスタ側制御パラメータ及び前記スレーブ側制御パラメータうち少なくとも一方を変更して前記マスタ側操作端の駆動状態及び前記スレーブ側操作端の駆動状態のうち少なくとも一方を制御することを特徴とするマスタ装置。
【請求項１２】
操作者が操作するマスタ側操作端及び当該マスタ側操作端を駆動させるマスタ側駆動機構を備えたマスタ装置と通信ネットワークを介して接続され、
前記操作者による前記マスタ側操作端の操作に応じて動作するスレーブ側操作端及び当該スレーブ側操作端を駆動させるスレーブ側駆動機構を備え、
前記スレーブ側駆動機構の内部状態に基づいて前記マスタ側駆動機構による前記マスタ側操作端の駆動状態を制御するためのマスタ側制御パラメータを演算するマスタ側制御パラメータ演算部、及び前記マスタ側駆動機構の内部状態に基づいて前記スレーブ側駆動機構による前記スレーブ側操作端の駆動状態を制御するためのスレーブ側制御パラメータを演算するスレーブ側制御パラメータ演算部のうち少なくとも一方を備えたスレーブ装置であって、
前記通信ネットワークの状態に応じて、前記マスタ側制御パラメータ及び前記スレーブ側制御パラメータのうち少なくとも一方を変更して前記マスタ側操作端の駆動状態及び前記スレーブ側操作端の駆動状態のうち少なくとも一方を制御することを特徴とするスレーブ装置。
【請求項１３】
操作者が操作するマスタ側操作端の駆動状態及び前記操作者による前記マスタ側操作端の操作に応じて動作するスレーブ側操作端の駆動状態を制御するマスタスレーブ装置の制御方法であって、
前記マスタ側操作端を駆動させるマスタ側駆動機構の内部状態を検出するマスタ側内部状態検出ステップと、
前記スレーブ側操作端を駆動させるスレーブ側駆動機構の内部状態を検出するスレーブ側内部状態検出ステップと、
前記マスタ側操作端及び前記マスタ側駆動機構を備えるマスタ装置と前記スレーブ側操作端及び前記スレーブ側駆動機構を備えるスレーブ装置とを接続する通信ネットワークの状態を検出する通信ネットワーク状態検出ステップと、
前記通信ネットワーク状態検出ステップにおいて検出した前記通信ネットワークの状態に応じて、前記マスタ側駆動機構による前記マスタ側操作端の駆動状態を制御するためのマスタ側制御パラメータを変更して前記マスタ側操作端の駆動状態を制御し、且つ前記スレーブ側駆動機構による前記スレーブ側操作端の駆動状態を制御するためのスレーブ側制御パラメータを変更して前記スレーブ側操作端の駆動状態を制御する駆動状態制御ステップと、を含むことを特徴とするマスタスレーブ装置の制御方法。
【請求項１４】
操作者が操作するマスタ側操作端の駆動状態及び前記操作者による前記マスタ側操作端の操作に応じて動作するスレーブ側操作端の駆動状態を制御するためのコンピュータプログラムであって、
コンピュータに、
前記マスタ側操作端を駆動させるマスタ側駆動機構の内部状態を検出するマスタ側内部状態検出ステップと、
前記スレーブ側操作端を駆動させるスレーブ側駆動機構の内部状態を検出するスレーブ側内部状態検出ステップと、
前記マスタ側操作端及び前記マスタ側駆動機構を備えるマスタ装置と前記スレーブ側操作端及び前記スレーブ側駆動機構を備えるスレーブ装置とを接続する通信ネットワークの状態を検出する通信ネットワーク状態検出ステップと、
前記通信ネットワーク状態検出ステップにおいて検出した前記通信ネットワークの状態に応じて、前記マスタ側駆動機構による前記マスタ側操作端の駆動状態を制御するためのマスタ側制御パラメータを変更して前記マスタ側操作端の駆動状態を制御し、且つ前記スレーブ側駆動機構による前記スレーブ側操作端の駆動状態を制御するためのスレーブ側制御パラメータを変更して前記スレーブ側操作端の駆動状態を制御する駆動状態制御ステップと、を実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワークに通信遅延及び遅延変動が存在するマスタスレーブ装置、マスタ装置、スレーブ装置、制御方法及びコンピュータプログラムに関し、特にバイラテラル制御での制御に関するものである。
【背景技術】
【０００２】
従来から、例えば、作業現場が悪環境である場合の遠隔操作による作業や、患者が遠隔地に居る場合の遠隔医療に適した作業装置として、マスタスレーブ装置が提案されている。
このマスタスレーブ装置は、類似構造を持つ２体の装置を備え、これら２体の装置を、例えば、パケット通信等の通信手段を用いた通信ネットワークを介して接続している。そして、２体の装置のうち一方を、操作端を備えるマスタ装置として用い、２体の装置のうち他方を、作業用操作端を備えるスレーブ装置として用いている。したがって、操作者がマスタ装置に備えられたマスタ側操作端を操作すると、この操作に応じて、スレーブ装置に備えられたスレーブ側作業用操作端が動作する構成となっている。なお、以下の説明では、スレーブ側作業用操作端を、スレーブ側操作端と記載して説明する。
【０００３】
このような構成のマスタスレーブ装置であれば、操作者の位置が作業現場と離れている場合であっても、操作者がマスタ側操作端を操作することにより、この操作に応じて動作するスレーブ側操作端を介して、望みの作業を行なうことが可能となっている。
マスタスレーブ装置の制御方法としては、スレーブ側操作端と対象物との接触等に起因して発生する触覚・力覚情報を、マスタ側操作端の操作者に呈示することにより、マスタ側操作端の操作者に作業反力等の作業情報をフィードバックすることが可能な、バイラテラル制御が多く採用されている。
【０００４】
バイラテラル制御を採用したマスタスレーブ装置としては、例えば、以下に示す特許文献１〜４に記載されているようなものがある。
特許文献１に記載されているマスタスレーブ装置は、スレーブ側操作端と作業対象物との接触状態に応じて、バイラテラル制御に用いる制御パラメータを変更している。
また、特許文献２に記載されているマスタスレーブ装置は、マスタ装置の位置及び動作を制御するための制御部材を、マスタ装置の理想的な位置、すなわち、安定性の悪化や物理的な干渉を防止可能な位置に設けている。
【０００５】
また、特許文献３に記載されているマスタスレーブ装置は、停止状態などの非動作モードから、作業状態などの動作モードへ移行する過程である遷移動作モードにおいて、スレーブ部の目標値の時間的偏差とマスタ部の姿勢の時間的偏差との関係に基づいて、スレーブ部の動作を制御している。
また、特許文献４に記載されているマスタスレーブ装置は、スレーブ側操作端の作業空間内における拘束条件を、シミュレータを用いて仮想的にマスタ側操作端で再現する構成を有しており、シミュレータ内の拘束条件と現実の作業空間内の拘束条件の間の誤差の期待値に応じて、シミュレータ内の拘束条件を調整している。
バイラテラル制御の制御方式としては、マスタ側操作端の操作者にフィードバックする情報の相違によって、対称型・力逆送型・力帰還型・並列型等、各種の制御方式がある。
【０００６】
上述した各制御方式の安定性を、通信ネットワークに通信遅延及び通信遅延の変動が存在しない場合において比較した例として、例えば、対称型と力帰還型とを比較した例が、非特許文献１に記載されている。非特許文献１には、対称型は使用環境に対するロバスト安定性が保証されているが操作感が重く、力帰還型はマスタ側操作端に加えられた力がスレーブ側操作端で増幅して加えられるため操作感は良いものの、この増幅度を上げすぎるとシステムが振動しやすくなるということが記載されている。力逆送型及び並列型に関する記載は省略するが、いずれの制御方式においても、操作性と安定性はトレードオフの関係にある。そのため、通信ネットワークに通信遅延や通信遅延の変動が生じた場合には、各制御方式の中で、想定される通信遅延の範囲内、もしくは通信遅延一定という仮定で制御系が構成されている。
【０００７】
また、非特許文献２には、通信ネットワークに生じる通信遅延を抑制する技術として、制御処理部のアーキテクチャを改良することによってリアルタイム性を向上させたネットワークシステムを、バイラテラルロボットシステムに適用した技術が記載されている。
【特許文献１】特開２００２−３０７３３６号公報（図１）
【特許文献２】特開２００４−９１８８号公報（図１）
【特許文献３】特開２００５−３４９５６３号公報（図５）
【特許文献４】特開平６−３０４８８２号公報（図１）
【非特許文献１】横小路泰義（京都大学）著、「マスタスレーブ制御の理論」、日本ロボット学会誌、１９８３年、ＶＯＬ．１１、Ｎｏ．６、Ｐ７９４〜８０２
【非特許文献２】内村裕、大西公平（慶應大学）著、「リアルタイム性の高いネットワークの開発とロボット制御への応用」、鹿島技術研究所年報、鹿島建設発行、２００３年９月３０日、Ｐ１７９〜１８２
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述した各マスタスレーブ装置のうち、特許文献１に記載されているマスタスレーブ装置は、スレーブ側操作端と作業対象物との接触状態に応じて、バイラテラル制御に用いる制御パラメータを変更しており、通信ネットワークに生じる通信遅延の変動には対応していない。
また、特許文献２に記載されているマスタスレーブ装置は、物理的な干渉等によって生じる問題を回避することは可能であるが、通信ネットワークに生じる通信遅延や通信遅延の変動には対応していない。
【０００９】
また、特許文献３及び特許文献４に記載されているマスタスレーブ装置は、通信ネットワークに通信遅延や通信遅延の変動が存在する場合であっても、バイラテラル制御の制御方式を一定の方式としている。
また、非特許文献１に記載されているように、通信ネットワークに通信遅延や通信遅延の変動が存在する場合には、各制御方式の中で、想定される通信遅延の範囲内、もしくは通信遅延一定という仮定で制御系が構成される場合が多い。したがって、上述したような従来の制御方法では、通信ネットワークに通信遅延の変動が生じた場合に、操作性の良さを維持したまま制御系を安定化することは困難である。
【００１０】
また、非特許文献２に記載されている技術は、通信ネットワークに生じる通信遅延そのものを抑制する技術であるため、通信ネットワークに通信遅延や通信遅延の変動が存在する場合の制御方法には対応していない。
上述したように、バイラテラル制御を用いてマスタスレーブ装置を制御する場合、通信ネットワークに通信遅延や通信遅延の変動が生じると、制御系全体の安定性が損なわれるおそれがある。通信遅延や通信遅延の変動に対する安定性を確保するために、制御系全体の応答を鈍くすると、操作性が損なわれてしまい、作業効率が低下してしまう。したがって、マスタスレーブ装置の制御方法としてバイラテラル制御を採用する際には、通信ネットワークに通信遅延や通信遅延の変動が存在する場合において、制御方式毎に適切な制御系を構成することが困難である。
本発明は、上述したような問題点に着目してなされたもので、通信ネットワークに通信遅延や通信遅延の変動が存在しても、最良の安定性及び操作性が保証されるマスタスレーブ装置、マスタ装置、スレーブ装置、制御方法及びプログラムを提供することを課題とする。
【課題を解決するための手段】
【００１１】
前記課題を解決するために、本発明のうち、請求項１に記載した発明は、操作者が操作するマスタ側操作端及び当該マスタ側操作端を駆動させるマスタ側駆動機構を備えたマスタ装置と、前記マスタ装置と通信ネットワークを介して接続され、且つ前記操作者による前記マスタ側操作端の操作に応じて動作するスレーブ側操作端及び当該スレーブ側操作端を駆動させるスレーブ側駆動機構を備えたスレーブ装置と、を備え、
前記スレーブ側駆動機構の内部状態に基づいて前記マスタ側駆動機構による前記マスタ側操作端の駆動状態を制御するためのマスタ側制御パラメータを演算するマスタ側制御パラメータ演算部、及び前記マスタ側駆動機構の内部状態に基づいて前記スレーブ側駆動機構による前記スレーブ側操作端の駆動状態を制御するためのスレーブ側制御パラメータを演算するスレーブ側制御パラメータ演算部のうち少なくとも一方を、前記マスタ装置及び前記スレーブ装置の一方に備え、
前記マスタ側制御パラメータ演算部及び前記スレーブ側制御パラメータ演算部のうち残りを、前記マスタ装置及び前記スレーブ装置の他方に備えたマスタスレーブ装置であって、
前記通信ネットワークの状態に応じて、前記マスタ側制御パラメータを変更して前記マスタ側操作端の駆動状態を制御し、且つ前記スレーブ側制御パラメータを変更して前記スレーブ側操作端の駆動状態を制御することを特徴とするものである。
本発明によると、通信ネットワークの状態に応じて、マスタスレーブ装置の制御に用いる制御方式を動的に切替えていくことが可能となる。
【００１２】
次に、請求項２に記載した発明は、請求項１に記載した発明であって、前記マスタ側駆動機構の内部状態を示す信号及び前記スレーブ側駆動機構の内部状態を示す信号を送信及び受信する手段を備え、
前記通信ネットワークの状態に応じて、前記マスタ側制御パラメータ及び前記スレーブ側制御パラメータを構成する要素である、前記マスタ側駆動機構の内部状態を示す信号及び前記スレーブ側駆動機構の内部状態を示す信号を適宜処理することを特徴とするものである。
本発明によると、マスタ側制御パラメータ及びスレーブ側制御パラメータの値を制御することにより、マスタ側操作端及びスレーブ側操作端の駆動状態を、任意の状態とすることが可能となる。
【００１３】
次に、請求項３に記載した発明は、請求項２に記載した発明であって、前記マスタ側制御パラメータ及びスレーブ側制御パラメータの値のそれぞれを、互いに異なる方法で計算し、これらの異なる方法で計算した信号を適宜処理するようにしたことを特徴とするものである。
本発明によると、マスタ側アクチュエータ制御部で用いられる、マスタ側切換指令部で計算されるマスタ側制御パラメータの計算方法と、スレーブ側アクチュエータ制御部で用いられる、スレーブ側切換指令部で計算されるスレーブ側制御パラメータの計算方法を独立に設定することにより、マスタ側操作端及びスレーブ側操作端の駆動状態を、独立して制御することが可能となる。
【００１４】
次に、請求項４に記載した発明は、請求項１から３のうちいずれか１項に記載した発明であって、前記マスタ側駆動機構の内部状態を、前記操作者の操作により前記マスタ側操作端に加えられる力及び当該マスタ側操作端の位置とし、
前記スレーブ側駆動機構の内部状態を、前記力に応じて前記スレーブ側操作端に生じる力及び当該スレーブ側操作端の位置としたことを特徴とするものである。
本発明によると、マスタ側駆動機構の内部状態及びスレーブ側駆動機構の内部状態を、直線運動として定義することが可能となる。
【００１５】
次に、請求項５に記載した発明は、請求項４に記載した発明であって、前記操作者の操作により前記マスタ側操作端に加えられる力を、前記操作者の操作により前記マスタ側操作端に加えられるトルクに代え、
前記マスタ側操作端の位置を、前記マスタ側操作端の角度に代え、
前記スレーブ側操作端に生じる力を、前記トルクに応じて前記スレーブ側操作端に生じるトルクに代え、
前記スレーブ側操作端の位置を、前記スレーブ側操作端の角度に代えたことを特徴とするものである。
本発明によると、マスタ側駆動機構の内部状態及びスレーブ側駆動機構の内部状態を、円運動として定義することが可能となる。
【００１６】
次に、請求項６に記載した発明は、請求項１から５のうちいずれか１項に記載した発明であって、前記通信ネットワークの状態は、前記マスタ装置から前記スレーブ装置に通信される信号が到着するまでの時間及びスレーブ装置からマスタ装置に通信される信号が到着するまでの時間のうち少なくとも一方であることを特徴とするものである。
本発明によると、通信ネットワークの状態を数値化することが可能となる。
【００１７】
次に、請求項７に記載した発明は、請求項６に記載した発明であって、前記マスタ装置から前記スレーブ装置に通信される信号が到着するまでの時間を、前記マスタ装置から前記スレーブ装置に通信される信号内に含まれるマスタ側タイムスタンプを用いて検出し、
前記スレーブ装置から前記マスタ装置に通信される信号が到着するまでの時間を、前記スレーブ装置から前記マスタ装置に通信される信号内に含まれるスレーブ側タイムスタンプを用いて検出したことを特徴とするものである。
本発明によると、マスタ装置からスレーブ装置に通信される信号が到着するまでの時間、及びスレーブ装置からマスタ装置に通信される信号が到着するまでの時間を検出することが可能となる。
【００１８】
次に、請求項８に記載した発明は、請求項１から７のうちいずれか１項に記載した発明であって、前記通信ネットワークの状態は、前記マスタ装置から前記スレーブ装置に通信される信号の損失及びスレーブ装置からマスタ装置に通信される信号の損失のうち少なくとも一方であることを特徴とするものである。
本発明によると、通信ネットワークの状態を数値化することが可能となる。
【００１９】
次に、請求項９に記載した発明は、請求項８に記載した発明であって、前記マスタ装置から前記スレーブ装置に通信される信号の損失を、前記マスタ装置から前記スレーブ装置に通信される信号内に含まれるマスタ側識別番号を用いて検出し、
前記スレーブ装置から前記マスタ装置に通信される信号の損失を、前記スレーブ装置から前記マスタ装置に通信される信号内に含まれるスレーブ側識別番号を用いて検出したことを特徴とするものである。
本発明によると、マスタ装置からスレーブ装置に通信される信号の損失、及びスレーブ装置からマスタ装置に通信される信号の損失を検出することが可能となる。
【００２０】
次に、請求項１０に記載した発明は、請求項１から９のうちいずれか１項に記載した発明であって、前記マスタ装置と前記スレーブ装置との間の通信手段をパケット通信としたことを特徴とするものである。
本発明によると、マスタ装置からスレーブ装置に通信される信号の損失、及びスレーブ装置からマスタ装置に通信される信号の損失を、パケットの損失率として検出することが可能となる。
【００２１】
次に、請求項１１に記載した発明は、操作者が操作するマスタ側操作端及び当該マスタ側操作端を駆動させるマスタ側駆動機構を備え、
前記操作者による前記マスタ側操作端の操作に応じて動作するスレーブ側操作端及び当該スレーブ側操作端を駆動させるスレーブ側駆動機構を備えたスレーブ装置と通信ネットワークを介して接続され、
前記スレーブ側駆動機構の内部状態に基づいて前記マスタ側駆動機構による前記マスタ側操作端の駆動状態を制御するためのマスタ側制御パラメータを演算するマスタ側制御パラメータ演算部、及び前記マスタ側駆動機構の内部状態に基づいて前記スレーブ側駆動機構による前記スレーブ側操作端の駆動状態を制御するためのスレーブ側制御パラメータを演算するスレーブ側制御パラメータ演算部のうち少なくとも一方を備えたマスタ装置であって、
前記通信ネットワークの状態に応じて、前記マスタ側制御パラメータ及び前記スレーブ側制御パラメータうち少なくとも一方を変更して前記マスタ側操作端の駆動状態及び前記スレーブ側操作端の駆動状態のうち少なくとも一方を制御することを特徴とするものである。
本発明によると、通信ネットワークの状態に応じて、マスタスレーブ装置の制御に用いる制御方式を動的に切替えていくことが可能となる。
【００２２】
次に、請求項１２に記載した発明は、操作者が操作するマスタ側操作端及び当該マスタ側操作端を駆動させるマスタ側駆動機構を備えたマスタ装置と通信ネットワークを介して接続され、
前記操作者による前記マスタ側操作端の操作に応じて動作するスレーブ側操作端及び当該スレーブ側操作端を駆動させるスレーブ側駆動機構を備え、
前記スレーブ側駆動機構の内部状態に基づいて前記マスタ側駆動機構による前記マスタ側操作端の駆動状態を制御するためのマスタ側制御パラメータを演算するマスタ側制御パラメータ演算部、及び前記マスタ側駆動機構の内部状態に基づいて前記スレーブ側駆動機構による前記スレーブ側操作端の駆動状態を制御するためのスレーブ側制御パラメータを演算するスレーブ側制御パラメータ演算部のうち少なくとも一方を備えたスレーブ装置であって、
前記通信ネットワークの状態に応じて、前記マスタ側制御パラメータ及び前記スレーブ側制御パラメータのうち少なくとも一方を変更して前記マスタ側操作端の駆動状態及び前記スレーブ側操作端の駆動状態のうち少なくとも一方を制御することを特徴とするものである。
本発明によると、通信ネットワークの状態に応じて、マスタスレーブ装置の制御に用いる制御方式を動的に切替えていくことが可能となる。
【００２３】
次に、請求項１３に記載した発明は、操作者が操作するマスタ側操作端の駆動状態及び前記操作者による前記マスタ側操作端の操作に応じて動作するスレーブ側操作端の駆動状態を制御するマスタスレーブ装置の制御方法であって、
前記マスタ側操作端を駆動させるマスタ側駆動機構の内部状態を検出するマスタ側内部状態検出ステップと、
前記スレーブ側操作端を駆動させるスレーブ側駆動機構の内部状態を検出するスレーブ側内部状態検出ステップと、
前記マスタ側操作端及び前記マスタ側駆動機構を備えるマスタ装置と前記スレーブ側操作端及び前記スレーブ側駆動機構を備えるスレーブ装置とを接続する通信ネットワークの状態を検出する通信ネットワーク状態検出ステップと、
前記通信ネットワーク状態検出ステップにおいて検出した前記通信ネットワークの状態に応じて、前記マスタ側駆動機構による前記マスタ側操作端の駆動状態を制御するためのマスタ側制御パラメータを変更して前記マスタ側操作端の駆動状態を制御し、且つ前記スレーブ側駆動機構による前記スレーブ側操作端の駆動状態を制御するためのスレーブ側制御パラメータを変更して前記スレーブ側操作端の駆動状態を制御する駆動状態制御ステップと、を含むことを特徴とするものである。
本発明によると、マスタスレーブ装置の制御方法を、通信ネットワークの状態に応じて、マスタスレーブ装置の制御に用いる制御方式を動的に切替えていく制御方法とすることが可能となる。
【００２４】
次に、請求項１４に記載した発明は、操作者が操作するマスタ側操作端の駆動状態及び前記操作者による前記マスタ側操作端の操作に応じて動作するスレーブ側操作端の駆動状態を制御するためのコンピュータプログラムであって、
コンピュータに、
前記マスタ側操作端を駆動させるマスタ側駆動機構の内部状態を検出するマスタ側内部状態検出ステップと、
前記スレーブ側操作端を駆動させるスレーブ側駆動機構の内部状態を検出するスレーブ側内部状態検出ステップと、
前記マスタ側操作端及び前記マスタ側駆動機構を備えるマスタ装置と前記スレーブ側操作端及び前記スレーブ側駆動機構を備えるスレーブ装置とを接続する通信ネットワークの状態を検出する通信ネットワーク状態検出ステップと、
前記通信ネットワーク状態検出ステップにおいて検出した前記通信ネットワークの状態に応じて、前記マスタ側駆動機構による前記マスタ側操作端の駆動状態を制御するためのマスタ側制御パラメータを変更して前記マスタ側操作端の駆動状態を制御し、且つ前記スレーブ側駆動機構による前記スレーブ側操作端の駆動状態を制御するためのスレーブ側制御パラメータを変更して前記スレーブ側操作端の駆動状態を制御する駆動状態制御ステップと、を実行させることを特徴とするものである。
本発明によると、コンピュータに、マスタスレーブ装置の制御方法の各ステップを実現するためのコンピュータプログラムを実行させることが可能となり、通信ネットワークの状態に応じて、マスタスレーブ装置の制御に用いる制御方式を動的に切替えることが可能となる。
【発明の効果】
【００２５】
本発明によれば、通信ネットワークに通信遅延や通信遅延の変動が存在する場合においても、マスタ装置、スレーブ装置、マスタスレーブ装置の最良の安定性及び操作性を保証することが可能となる。
【発明を実施するための最良の形態】
【００２６】
以下、本発明の実施形態について図面を参照しつつ説明する。
（マスタスレーブ装置の構成例）
まず、マスタスレーブ装置の構成について、図１を参照して説明する。
図１は、本実施形態のマスタスレーブ装置の構成を示す図である。
図１中に示すように、本実施形態のマスタスレーブ装置１は、マスタ装置２と、スレーブ装置４とを備えており、マスタ装置２とスレーブ装置４は、通信ネットワークを介して接続されている。本実施形態のマスタスレーブ装置１では、マスタ装置２とスレーブ装置４との間の通信手段として、パケット通信を用いた場合を例にあげて説明する。
【００２７】
まず、マスタ装置２の構成を説明する。
マスタ装置２は、マスタ側操作端６と、マスタ側内部状態検出器８と、マスタ側信号送信部１０と、マスタ側信号受信部１２と、マスタ側制御切換指令部１４と、マスタ側駆動機構１６とを備えている。
マスタ側操作端６は、アーム部材等によって構成されており、操作者が操作する操作端を形成している。
【００２８】
マスタ側内部状態検出器８は、操作者がマスタ側操作端６を操作すると、操作者の操作によりマスタ側操作端６に加えられる力及びマスタ側操作端６の位置を検出し、信号として出力する機能を有している。なお、以下の説明では、この信号を、マスタ側駆動機構１６の内部状態を示す信号と記載して説明する。
すなわち、マスタ側内部状態検出器８は、操作者の操作によりマスタ側操作端６に加えられる力を示す信号Ｆｍ及びマスタ側操作端６の位置を示す信号Ｘｍを、マスタ側信号送信部１０及びマスタ側制御切換指令部１４へ出力する機能を有している。
【００２９】
マスタ側信号送信部１０は、信号Ｆｍ及び信号Ｘｍに、マスタ側タイムスタンプと、マスタ側識別番号を付加した信号Ｓｍを、後述するスレーブ側信号受信部２８へ出力する機能を有している。マスタ側タイムスタンプには、マスタ側信号送信部１０が信号Ｓｍを出力する時刻ｔｍ１が記録されている。マスタ側識別番号には、信号Ｓｍ毎に、任意に定められた順番が付与されている。なお、本実施形態では、識別番号として、シーケンス番号を用いた場合を例にあげて説明し、以下の説明では、マスタ側識別番号を、マスタ側シーケンス番号と記載して説明する。
【００３０】
マスタ側信号受信部１２は、後述するスレーブ側信号送信部３２と接続されており、スレーブ側信号送信部３２から出力された信号Ｓｓが入力されると、この信号に含まれている、後述するスレーブ側操作端４０に加えられる力を示す信号Ｆｓ及びスレーブ側操作端４０の位置を示す信号Ｘｓを、マスタ側制御切換指令部１４へ出力する機能を有している。
【００３１】
またマスタ側信号受信部１２は、信号Ｓｓが入力されると、この信号に含まれているスレーブ側タイムスタンプに記録された時刻ｔｓ１と、マスタ側信号受信部１２にこの信号が入力された時刻ｔｓ２との差に基づいて、スレーブ装置４からマスタ装置２に通信される信号が到着するまでの時間（以下、スレーブ側からの信号到達遅延時間と記載する）と、マスタ装置２からスレーブ装置４、スレーブ装置４からマスタ装置２を情報が往復する際の遅延時間（以下、スレーブ側折返しの往復遅延時間と記載する）とを算出する。そして、この算出したスレーブ側からの信号到達遅延時間を示す信号ｔｓと、スレーブ側折返しの往復遅延時間を示す信号ｔｒｓとを、通信ネットワークの状態としてマスタ側制御切換指令部１４へ出力する機能を有している。
【００３２】
また、マスタ側信号受信部１２は、信号Ｓｓが入力されると、この信号に含まれているスレーブ側識別番号を用いて、スレーブ装置４からマスタ装置２に通信される信号の損失（以下、スレーブ側信号損失率と記載する）を算出し、この算出したスレーブ側信号損失率を示す信号ｅｓを、通信ネットワークの状態としてマスタ側制御切換指令部１４へ出力する機能を有している。なお、以下の説明では、スレーブ側識別番号を、スレーブ側シーケンス番号と記載して説明する。また、スレーブ装置４からマスタ装置２に通信される信号の損失として、スレーブ装置４からマスタ装置２に通信されるパケットの損失率を用いた場合を例にあげて説明する。
【００３３】
マスタ側制御切換指令部１４は、マスタ側内部状態検出器８及びマスタ側信号受信部１２と接続されており、マスタ側内部状態検出器８から信号Ｆｍ及びＸｍが入力され、マスタ側信号受信部１２から信号Ｆｓ、Ｘｓ、ｔｓ、ｔｒｓ、ｅｓが入力されると、これらの信号に基づいて、マスタ側制御パラメータを算出する。そして、この算出したマスタ側制御パラメータを示す信号を、後述するマスタ側アクチュエータ制御部３８へ出力する機能を有している。マスタ側制御パラメータの算出については、後述する。すなわち、マスタ側制御切換指令部１４は、マスタ側駆動機構１６の内部状態及び後述するスレーブ側駆動機構３４の内部状態に基づいてマスタ側駆動機構１６によるマスタ側操作端６の駆動状態を制御するためのマスタ側制御パラメータを演算する、マスタ側制御パラメータ演算部を構成している。
【００３４】
以下、マスタ側制御パラメータの算出について説明する。
マスタ側制御切換指令部１４は、各信号Ｆｍ、Ｆｓ、Ｘｍ、Ｘｓ及びｔｓ、ｔｒｓ、ｅｓに基づいて、マスタ側制御パラメータＰＸｍ及びＰＦｍを以下のように算出する。
【００３５】
【数１】
2008119757.tif 000003
【００３６】
マスタ側制御切換指令部１４は、各信号ｔｓ、ｔｒｓ、ｅｓに基づいて、式１から式４のうちいずれかを選択し、マスタ側制御パラメータＰＸｍ又はＰＦｍのどちらか一方が「０」となるように、マスタ側制御パラメータを示す信号を算出する。またマスタ側制御パラメータを算出する際に用いられるパラメータｋＦｍ、ｋＸｍ及びｋＦは、システムによって予め適宜決定されている定数である。
【００３７】
マスタ側駆動機構１６は、マスタ側アクチュエータ制御部３８と、マスタ側アクチュエータ３６とを備えている。
マスタ側アクチュエータ制御部３８は、マスタ側力制御部２２と、マスタ側位置制御部２６を有している。
マスタ側アクチュエータ制御部３８は、マスタ側制御切換指令部１４から出力されたマスタ側制御パラメータを示す信号ＰＸｍ及びＰＦｍが入力されると、この信号ＰＸｍ及びＰＦｍに基づいて、マスタ側アクチュエータ３６に制御指令値を出力する機能を有している。
【００３８】
マスタ側力制御部２２は、マスタ側制御切換指令部１４と接続されている。また、マスタ側力制御部２２は、マスタ側制御パラメータＰＦｍが入力され、これが「０」でなかった場合、マスタ側操作端６に加えられる力に応じて、後述するスレーブ側操作端４０に生じる力がマスタ側操作端６へ伝達されるように、マスタ側力制御指令値を示す信号ＣＦｍを算出する。そして、この算出したマスタ側力制御指令値を示す信号ＣＦｍを、マスタ側アクチュエータ３６へ出力する機能を有している。
【００３９】
マスタ側位置制御部２６は、マスタ側制御切換指令部１４と接続されている。また、マスタ側位置制御部２６は、マスタ側制御パラメータＰＸｍが入力され、これが「０」でなかった場合、マスタ側操作端６の位置がスレーブ側操作端４０の位置へ追従するように、マスタ側位置制御指令値を示す信号ＣＸｍを算出する。そして、この算出したマスタ側位置制御指令値を示す信号ＣＸｍを、マスタ側アクチュエータ３６へ出力する機能を有している。
【００４０】
マスタ側アクチュエータ３６は、例えば、モータによって構成されており、マスタ側力制御指令値を示す信号ＣＦｍまたはマスタ側位置制御指令値を示す信号ＣＸｍが入力されると、入力されたマスタ側力制御指令値を示す信号ＣＦｍまたはマスタ側位置制御指令値を示す信号ＣＸｍに基づいて、マスタ側操作端６を駆動または保持させる機能を有している。
【００４１】
次に、スレーブ装置４の構成を説明する。
スレーブ装置４は、スレーブ側操作端４０と、スレーブ側内部状態検出器４２と、スレーブ側信号送信部３２と、スレーブ側ネットワーク信号受信部２８と、スレーブ側制御切換指令部４４と、スレーブ側駆動機構３４とを備えている。
スレーブ側操作端４０は、マスタ側操作端６と同様に、アーム部材等によって構成されており、操作者によるマスタ側操作端６の操作に応じて動作する作業用装置を形成している。
【００４２】
スレーブ側内部状態検出器４２は、操作者の操作によりマスタ側操作端６に加えられる力、及び環境との接触等によってスレーブ側操作端４０に加えられる力のうち少なくとも一方に応じて、スレーブ側操作端４０に生じる力及びスレーブ側操作端４０の位置を検出し、信号として出力する機能を有している。以下の説明では、この信号をスレーブ側駆動機構３４の内部状態を示す信号と記載して説明する。
すなわち、スレーブ側内部状態検出器４２は、スレーブ側操作端４０に生じる力及びスレーブ側操作端４０の位置を検出すると、スレーブ側操作端４０に生じる力を示す信号Ｆｓ及びスレーブ側操作端４０の位置を示す信号Ｘｓを、スレーブ側制御切換指令部４４及びスレーブ側信号送信部３２へ出力する機能を有している。
【００４３】
スレーブ側信号送信部３２は、信号Ｆｓ及び信号Ｘｓに、スレーブ側タイムスタンプと、スレーブ側シーケンス番号を付加した信号Ｓｓを、マスタ側信号受信部１２へ出力する機能を有している。スレーブ側タイムスタンプには、スレーブ側信号送信部３２が信号Ｓｓを出力する時刻ｔｓ１が記録されている。スレーブ側シーケンス番号には、信号Ｓｓ毎に、任意に定められた順番が付与されている。
スレーブ側信号受信部２８は、マスタ側信号送信部１０と接続されており、マスタ側信号送信部１０から出力された信号Ｓｍが入力されると、この信号に含まれている、マスタ側操作端６に加えられる力を示す信号Ｆｍ及びマスタ側操作端６の位置を示す信号Ｘｍを、スレーブ側制御切換指令部４４へ出力する機能を有している。
【００４４】
またスレーブ側信号受信部２８は、信号Ｓｍが入力されると、この信号に含まれているマスタ側タイムスタンプに記録された時刻ｔｍ１と、スレーブ側信号受信部２８にこの信号が入力された時刻ｔｍ２との差に基づいて、マスタ装置２からスレーブ装置４に通信される信号が到着するまでの時間（以下、マスタ側からの信号到達遅延時間と記載する）と、スレーブ装置４からマスタ装置２、マスタ装置２からスレーブ装置４を情報が往復する際の遅延時間（以下、マスタ側折返しの往復遅延時間と記載する）とを算出する。そして、この算出したマスタ側からの信号到達遅延時間を示す信号ｔｍと、マスタ側折返しの往復遅延時間を示す信号ｔｒｍとを、通信ネットワークの状態としてスレーブ側制御切換指令部４４へ出力する機能を有している。
【００４５】
また、スレーブ側信号受信部２８は、信号Ｓｍが入力されると、この信号に含まれているマスタ側シーケンス番号を用いて、マスタ装置２からスレーブ装置４に通信される信号の損失（以下、マスタ側信号損失率と記載する）を算出し、この算出したマスタ側信号損失率を示す信号ｅｍを、通信ネットワークの状態としてスレーブ側制御切換指令部４４へ出力する機能を有している。なお、以下の説明では、マスタ装置２からスレーブ装置４に通信される信号の損失として、マスタ装置２からスレーブ装置４に通信されるパケットの損失率を用いた場合を例にあげて説明する。
【００４６】
スレーブ側制御切換指令部４４は、スレーブ側内部状態検出器４２及びスレーブ側信号受信部３２と接続されており、スレーブ側内部状態検出器４２から信号Ｆｓ及びＸｓが入力され、スレーブ側信号受信部３２から信号Ｆｍ、Ｘｍ、ｔｍ、ｔｒｍ、ｅｍが入力されると、これらの信号に基づいて、スレーブ側制御パラメータを算出する。そして、この算出したスレーブ側制御パラメータを示す信号を、後述するスレーブ側アクチュエータ制御部５０へ出力する機能を有している。スレーブ側制御パラメータの算出については、後述する。すなわち、スレーブ側制御切換指令部４４は、スレーブ側駆動機構３４の内部状態及びマスタ側駆動機構１６の内部状態に基づいてスレーブ側駆動機構３４によるスレーブ側操作端４０の駆動状態を制御するためのスレーブ側制御パラメータを演算する、スレーブ側制御パラメータ演算部を構成している。
【００４７】
以下、スレーブ側制御パラメータの算出について説明する。
スレーブ側制御切換指令部４４は、各信号Ｆｍ、Ｆｓ、Ｘｍ、Ｘｓ及びｔｍ、ｔｒｍ、ｅｍに基づいて、スレーブ側制御パラメータＰＸｓ及びＰＦｓを以下のように算出する。
【００４８】
【数２】
2008119757.tif 000004
【００４９】
スレーブ側制御切換指令部４４は、各信号ｔｍ、ｔｒｍ、ｅｍに基づいて、式５から式８のうちいずれかを選択し、スレーブ側制御パラメータＰＸｓ又はＰＦｓのどちらか一方が「０」となるように、スレーブ側制御パラメータを示す信号を算出する。またスレーブ側制御パラメータを算出する際に用いられるパラメータｋＦｓ、ｋＸｓ及びｋＦは、システムによって予め適宜決定されている定数である。
【００５０】
スレーブ側駆動機構３４は、スレーブ側アクチュエータ制御部５０と、スレーブ側アクチュエータ５２とを備えている。
スレーブ側アクチュエータ制御部５０は、スレーブ側力制御部２４と、スレーブ側位置制御部３０を有している。
スレーブ側アクチュエータ制御部５０は、スレーブ側制御切換指令部４４から出力されたスレーブ側制御パラメータを示す信号ＰＸｓ及びＰＦｓが入力されると、この信号ＰＸｓ及びＰＦｓに基づいて、スレーブ側アクチュエータ５２に制御指令値を出力する機能を有している。
【００５１】
スレーブ側力制御部２４は、スレーブ側制御切換指令部４４と接続されている。また、スレーブ側力制御部２４は、マスタ側制御パラメータＰＦｓが入力され、これが「０」でなかった場合、スレーブ側操作端４０に加えられる力に応じて、マスタ側操作端６に生じる力がスレーブ側操作端４０へ伝達されるように、スレーブ側力制御指令値を示す信号ＣＦｓを算出する。そして、この算出したスレーブ側力制御指令値を示す信号ＣＦｓを、スレーブ側アクチュエータ５２へ出力する機能を有している。
【００５２】
スレーブ側位置制御部３０は、スレーブ側制御切換指令部４４と接続されている。また、スレーブ側位置制御部３０は、スレーブ側制御パラメータＰＸｓが入力され、これが「０」でなかった場合、スレーブ側操作端４０の位置がマスタ側操作端６の位置へ追従するように、スレーブ側位置制御指令値を示す信号ＣＸｓを算出する。そして、この算出したスレーブ側位置制御指令値を示す信号ＣＸｓを、スレーブ側アクチュエータ５２へ出力する機能を有している。
【００５３】
レーブ側アクチュエータ５２は、例えば、モータによって構成されており、スレーブ側力制御指令値を示す信号ＣＦｓまたはスレーブ側位置制御指令値を示す信号ＣＸｓが入力されると、入力されたスレーブ側力制御指令値を示す信号ＣＦｓまたはスレーブ側位置制御指令値を示す信号ＣＸｓに基づいて、スレーブ側操作端４０を駆動または保持させる機能を有している。
【００５４】
（マスタスレーブ装置の動作例）
次に、上記の構成を備えたマスタスレーブ装置１の制御方法について、図１を参照しつつ、図２を用いて説明する。
図２は、マスタスレーブ装置１を制御する際の動作を表すフローチャートである。
図２中に示すように、マスタスレーブ装置１の動作は、操作者がマスタ側操作端６を操作するところからスタートする（ステップＳ１００）。
【００５５】
操作者がマスタ側操作端６を操作すると、マスタ側内部状態検出器８によって、操作者の操作によりマスタ側操作端６に加えられる力及びマスタ側操作端６の位置が、マスタ側駆動機構１６の内部状態を示す信号として検出される（マスタ側内部状態検出ステップＳ１０１）。そして、マスタ側操作端６に加えられる力を示す信号Ｆｍ及びマスタ側操作端６の位置を示す信号Ｘｍがマスタ側信号送信部１０及びマスタ側制御切換指令部１４へ出力される。
【００５６】
また、操作者がマスタ側操作端６を操作すると、スレーブ側内部状態検出器４２によって、操作者の操作によりマスタ側操作端６に加えられる力、及び環境との接触等によってスレーブ側操作端４０に加えられる力のうち少なくとも一方に応じて、スレーブ側操作端４０に生じる力及びスレーブ側操作端４０の位置が、スレーブ側駆動機構３４の内部状態を示す信号として検出される（スレーブ側内部状態検出ステップＳ１０２）。そして、スレーブ側操作端４０に生じる力を示す信号Ｆｓ及びスレーブ側操作端４０の位置を示す信号Ｘｓがスレーブ側制御切換指令部４４及びスレーブ側信号送信部３２へ出力される。
【００５７】
マスタ側駆動機構１６の内部状態を示す信号Ｆｍ及び信号Ｘｍが出力されると、マスタ側力信号送信部１０によって、信号Ｆｍ及び信号Ｘｍに時刻ｔｍ１を記録したマスタ側タイムスタンプ及びマスタ側シーケンス番号を付加した信号Ｓｍが、スレーブ側信号受信部２８へ出力される。
スレーブ側駆動機構３４の内部状態を示す信号Ｆｓ及び信号Ｘｓが出力されると、スレーブ側力信号送信部３２によって、信号Ｆｓ及び信号Ｘｓに時刻ｔｓ１を記録したスレーブ側タイムスタンプ及びスレーブ側シーケンス番号を付加した信号Ｓｓが、マスタ側信号受信部１２へ出力される。
【００５８】
マスタ側力信号送信部１０から出力された信号Ｓｍがスレーブ側信号受信部２８へ入力されると、スレーブ側信号受信部２８により、時刻ｔｍ１とこれら信号が入力された時刻ｔｍ２との差に基づいて、マスタ側からの信号到達遅延時間及びマスタ側折返しの往復遅延時間が算出される。また、スレーブ側信号受信部２８により、マスタ装置２からスレーブ装置４に通信されるパケットの損失率が算出される。そして、このマスタ側からの信号到達遅延時間を示す信号ｔｍ、マスタ側折返しの往復遅延時間を示す信号ｔｒｍ及びマスタ装置２からスレーブ装置４に通信されるパケットの損失率を示す信号ｅｍが、通信ネットワークの状態を示す信号としてスレーブ側制御切換指令部４４へ出力される（マスタ側通信ネットワーク状態検出ステップＳ１０３）。
【００５９】
スレーブ側力信号送信部３２から出力された信号Ｓｓがマスタ側信号受信部１２へ入力されると、マスタ側信号受信部１２により、時刻ｔｓ１とこれら信号が入力された時刻ｔｓ２との差に基づいて、スレーブ側からの信号到達遅延時間及びスレーブ側折返しの往復遅延時間が算出される。また、マスタ側信号受信部１２により、スレーブ装置４からマスタ装置２に通信されるパケットの損失率が算出される。そして、このスレーブ側からの信号到達遅延時間を示す信号ｔｓ、スレーブ側折返しの往復遅延時間を示す信号ｔｒｓ及びスレーブ装置４からマスタ装置２に通信されるパケットの損失率を示す信号ｅｓが、通信ネットワークの状態を示す信号としてマスタ側制御切換指令部１４へ出力される（スレーブ側通信ネットワーク状態検出ステップＳ１０４）。
【００６０】
通信ネットワークの状態を示す信号ｔｓ、ｔｒｓ、ｅｓがマスタ側制御切換指令部１４へ出力され、通信ネットワークの状態を示す信号ｔｍ、ｔｒｍ、ｅｍがスレーブ側制御切換指令部４４へ出力されると、マスタ側制御切換指令部１４及びスレーブ側制御切換指令部４４は、各信号ｔｓ、ｔｒｓ、ｅｓ、ｔｍ、ｔｒｍ、ｅｍに基づいて、マスタ側制御パラメータ及びスレーブ側制御パラメータを変更し、マスタ側操作端６及びスレーブ側操作端４０の駆動状態を制御する（駆動状態制御ステップＳ１０５）。
【００６１】
以下、駆動状態制御ステップの詳細な動作を説明する。
信号ｅｓがマスタ側制御切換指令部１４へ出力され、信号ｅｍがスレーブ側制御切換指令部４４へ出力されると、マスタ側制御切換指令部１４及びスレーブ側制御切換指令部４４は、信号ｅｍ及び信号ｅｓと、パケットの損失率の許容範囲εｍ及びεｓとを比較する（ステップＳ１０５ａ）。そして、信号ｅｍまたは信号ｅｓが、一定時間内のパケットの損失率の許容範囲を超えている場合、マスタ側アクチュエータ３６及びスレーブ側アクチュエータ５２へ動作停止信号を出力して、マスタ側アクチュエータ３６及びスレーブ側アクチュエータ５２の駆動を停止させ、マスタ側操作端６及びスレーブ側操作端４０の位置を固定して、マスタ側操作端６及びスレーブ側操作端４０を保持する（ステップＳ１０５ａ→ステップＳ１０５ｂ）。マスタ側操作端６及びスレーブ側操作端４０を保持した後、ステップＳ１０１へ戻る。なお、パケットの損失率の許容範囲εｍは、予め定められた値となっており、マスタ側制御切換指令部１４に記憶されている。また、パケットの損失率の許容範囲εｓは、予め定められた値となっており、スレーブ側制御切換指令部４４に記憶されている。
【００６２】
一方、信号ｅｍまたは信号ｅｓが、一定時間内のパケットの損失率の許容範囲を超えていない場合、マスタ側制御切換指令部１４及びスレーブ側制御切換指令部４４は、信号ｔｍ及び信号ｔｓと制御切換え基準値とを、制御切換え基準値の大きい値から小さい値へ順に比較する（ステップＳ１０５ａ→ステップＳ１０５ｃ）。ここで、制御切換え基準値は、ａ、ｂ、ｃ、ｄの四種類の値とし、これらのうちａ、ｃ、ｄの大小関係は、ａ＞ｃ＞ｄとなっている。各制御切換え基準値は、予め定められた値となっており、マスタ側制御切換指令部１４及びスレーブ側制御切換指令部４４に記憶されている。
【００６３】
マスタ側制御切換指令部１４及びスレーブ側制御切換指令部４４は、信号ｔｍ及び信号ｔｓと制御切換え基準値ａとを比較し、信号ｔｍまたは信号ｔｓが制御切換え基準値ａを超えている場合、マスタ側アクチュエータ３６及びスレーブ側アクチュエータ５２へ動作停止信号を出力して、マスタ側アクチュエータ３６及びスレーブ側アクチュエータ５２の駆動を停止させ、マスタ側操作端６及びスレーブ側操作端４０の位置を固定して、マスタ側操作端６及びスレーブ側操作端４０を保持する（ステップＳ１０５ｃ→ステップＳ１０５ｂ）。マスタ側操作端６及びスレーブ側操作端４０を保持した後、ステップＳ１０１へ戻る。
【００６４】
信号ｔｍ及び信号ｔｓが制御切換え基準値ａを超えていない場合、マスタ側制御切換指令部１４及びスレーブ側制御切換指令部４４は、信号ｔｒｍと信号ｔｒｓとの差の絶対値と制御切換え基準値ｂとを比較する（ステップＳ１０５ｃ→ステップＳ１０５ｄ）。そして、信号ｔｒｍと信号ｔｒｓとの差の絶対値が制御切換え基準値ｂを超えている場合、マスタ側制御切換指令部１４は、マスタ側制御パラメータを、式４を用いて算出し、マスタ側アクチュエータ制御部３８へ出力する（ステップＳ１０５ｄ→ステップＳ１０５ｅ）。
【００６５】
また、信号ｔｒｍと信号ｔｒｓとの差の絶対値が制御切換え基準値ｂを超えている場合、スレーブ側制御切換指令部４４は、スレーブ側制御パラメータを、式８を用いて算出し、スレーブ側アクチュエータ制御部５０へ出力する（ステップＳ１０５ｄ→ステップＳ１０５ｅ）。
マスタ側アクチュエータ制御部３８は、信号ＰＸｍ及び信号ＰＦｍが入力されると、この信号ＰＸｍ及び信号ＰＦｍに基づいて、マスタ側アクチュエータ３６へ制御指令値を出力する。また、スレーブ側アクチュエータ制御部５０は、信号ＰＸｓ及び信号ＰＦｓが入力されると、この信号ＰＸｓ及び信号ＰＦｓに基づいて、スレーブ側アクチュエータ５２へ制御指令値を出力する。
【００６６】
また、この結果、マスタ側制御パラメータ及びスレーブ側制御パラメータのうち、信号ＰＦｍ及び信号ＰＦｓは共に「０」となる。したがって、マスタ側操作端６及びスレーブ側操作端４０の制御方法が、共に位置制御となる（ステップＳ１０５ｅ→ステップＳ１０５ｆ）。これは、図３に示した制御システムのブロック線図に表されるように、並列型バイラテラル制御である。マスタ側操作端６及びスレーブ側操作端４０の制御方法を並列型バイラテラル制御とした後、ステップＳ１０１へ戻る。
【００６７】
信号ｔｒｍと信号ｔｒｓとの差が制御切換え基準値ｂを超えていない場合、マスタ側制御切換指令部１４及びスレーブ側制御切換指令部４４は、信号ｔｍ及び信号ｔｓと制御切換え基準値ｃとを比較する（ステップＳ１０５ｄ→ステップＳ１０５ｇ）。そして、信号ｔｍまたは信号ｔｓが制御切換え基準値ｃを超えている場合、マスタ側制御切換指令部１４は、マスタ側制御パラメータを、式１を用いて算出し、マスタ側アクチュエータ制御部３８へ出力する（ステップＳ１０５ｇ→ステップＳ１０５ｈ）。また、信号ｔｍまたは信号ｔｓが制御切換え基準値ｃを超えている場合、スレーブ側制御切換指令部４４は、スレーブ側制御パラメータを、式５を用いて算出し、スレーブ側アクチュエータ制御部５０へ出力する（ステップＳ１０５ｇ→ステップＳ１０５ｈ）。
【００６８】
マスタ側アクチュエータ制御部３８は、信号ＰＸｍ及び信号ＰＦｍが入力されると、この信号ＰＸｍ及び信号ＰＦｍに基づいて、マスタ側アクチュエータ３６へ制御指令値を出力する。また、スレーブ側アクチュエータ制御部５０は、信号ＰＸｓ及び信号ＰＦｓが入力されると、この信号ＰＸｓ及び信号ＰＦｓに基づいて、スレーブ側アクチュエータ５２へ制御指令値を出力する。
【００６９】
また、この結果、マスタ側制御パラメータ及びスレーブ側制御パラメータのうち、信号ＰＦｍ及び信号ＰＦｓは共に「０」となる。したがって、マスタ側操作端６及びスレーブ側操作端４０の制御方法が、共に位置制御となる（ステップＳ１０５ｈ→ステップＳ１０５ｉ）。これは、図４に示した制御システムのブロック線図に表されるように、対称型バイラテラル制御である。マスタ側操作端６及びスレーブ側操作端４０の制御方法を対称型バイラテラル制御とした後、ステップＳ１０１へ戻る。
【００７０】
信号ｔｍ及び信号ｔｓが制御切換え基準値ｃを超えていない場合、マスタ側制御切換指令部１４及びスレーブ側制御切換指令部４４は、信号ｔｍ及び信号ｔｓと制御切換え基準値ｄとを比較する（ステップＳ１０５ｇ→ステップＳ１０５ｊ）。そして、信号ｔｍまたは信号ｔｓが制御切換え基準値ｄを超えている場合、マスタ側制御切換指令部１４は、マスタ側制御パラメータを、式２を用いて算出し、マスタ側アクチュエータ制御部３８へ出力する（ステップＳ１０５ｊ→ステップＳ１０５ｋ）。また、信号ｔｍまたは信号ｔｓが制御切換え基準値ｄを超えている場合、スレーブ側制御切換指令部４４は、スレーブ側制御パラメータを、式６を用いて算出し、スレーブ側アクチュエータ制御部５０へ出力する（ステップＳ１０５ｊ→ステップＳ１０５ｋ）。
【００７１】
マスタ側アクチュエータ制御部３８は、信号ＰＸｍ及び信号ＰＦｍが入力されると、この信号ＰＸｍ及び信号ＰＦｍに基づいて、マスタ側アクチュエータ３６へ制御指令値を出力する。また、スレーブ側アクチュエータ制御部５０は、信号ＰＸｓ及び信号ＰＦｓが入力されると、この信号ＰＸｓ及び信号ＰＦｓに基づいて、スレーブ側アクチュエータ５２へ制御指令値を出力する。
【００７２】
また、この結果、マスタ側制御パラメータ及びスレーブ側制御パラメータのうち、信号ＰＦｍ及び信号ＰＸｓは共に「０」となる。したがって、マスタ側操作端６の制御方法が力制御となり、スレーブ側操作端４０の制御方法が位置制御となる（ステップＳ１０５ｋ→ステップＳ１０５ｍ）。これは、図５に示した制御システムのブロック線図に表されるように、力逆送型バイラテラル制御である。マスタ側操作端６及びスレーブ側操作端４０の制御方法を力逆送型バイラテラル制御とした後、ステップＳ１０１へ戻る。
【００７３】
信号ｔｍ及び信号ｔｓが制御切換え基準値ｄを超えていない場合、マスタ側制御切換指令部１４は、マスタ側制御パラメータを、式３を用いて算出し、マスタ側アクチュエータ制御部３８へ出力する（ステップＳ１０５ｊ→ステップＳ１０５ｎ）。また、信号ｔｍまたは信号ｔｓが制御切換え基準値ｄを超えていない場合、スレーブ側制御切換指令部４４は、スレーブ側制御パラメータを、式７を用いて算出し、スレーブ側アクチュエータ制御部５０へ出力する（ステップＳ１０５ｊ→ステップＳ１０５ｎ）。
【００７４】
マスタ側アクチュエータ制御部３８は、信号ＰＸｍ及び信号ＰＦｍが入力されると、この信号ＰＸｍ及び信号ＰＦｍに基づいて、マスタ側アクチュエータ３６へ制御指令値を出力する。また、スレーブ側アクチュエータ制御部５０は、信号ＰＸｓ及び信号ＰＦｓが入力されると、この信号ＰＸｓ及び信号ＰＦｓに基づいて、スレーブ側アクチュエータ５２へ制御指令値を出力する。
【００７５】
また、この結果、マスタ側制御パラメータ及びスレーブ側制御パラメータのうち、信号ＰＦｍ及び信号ＰＸｓは共に「０」となる。したがって、マスタ側操作端６の制御方法が力制御となり、スレーブ側操作端４０の制御方法が位置制御となる（ステップＳ１０５ｎ→ステップＳ１０５ｐ）。これは、図６に示した制御システムのブロック線図に表されるように、力帰還型バイラテラル制御である。マスタ側操作端６及びスレーブ側操作端４０の制御方法を力帰還型バイラテラル制御とした後、ステップＳ１０１へ戻る。
【００７６】
（本実施形態の効果）
したがって、本実施形態のマスタスレーブ装置１では、通信ネットワークの状態に応じて、マスタ側制御パラメータを変更してマスタ側操作端６の駆動状態を制御し、且つスレーブ側制御パラメータを変更してスレーブ側操作端４０の駆動状態を制御している。このため、通信ネットワークの状態に応じて、マスタスレーブ装置１のバイラテラル制御に用いる各制御方式、すなわち、並列型、対称型、力逆送型、力帰還型、またはその混合型に動的に切替えていくことが可能となる。その結果、通信ネットワークに通信遅延や通信遅延の変動が存在する場合においても、マスタ側操作端６の操作者に作業反力等の作業情報をフィードバックすることが可能なバイラテラル制御の長所を維持したまま、マスタスレーブ装置１において最良の安定性及び操作性を保証することが可能となる。
【００７７】
また、本実施形態のマスタスレーブ装置１では、上記に説明した制御方法（図２を参照）の各ステップを実現するためのコンピュータプログラムを作成し、これをコンピュータに実行させることにより、通信ネットワークに通信遅延や通信遅延の変動が存在する場合においても、マスタスレーブ装置１において最良の安定性及び操作性を保証することが可能となる。
【００７８】
さらに、本実施形態のマスタスレーブ装置１では、マスタ側アクチュエータ制御部３８で用いる各信号を、マスタ側制御パラメータによって決定し、スレーブ側アクチュエータ制御部５０で用いる各信号を、マスタ側制御パラメータと異なる値に制御されたスレーブ側制御パラメータによって決定している。このため、マスタ側操作端６及びスレーブ側操作端４０を、独立して制御することが可能となる。
【００７９】
（応用例）
なお、本実施形態のマスタスレーブ装置１では、マスタ装置２がマスタ側制御切換指令部１４を備え、スレーブ装置４がスレーブ側制御切換指令部４４を備えている構成としたが、マスタスレーブ装置１の構成は、これに限定されるものではない。すなわち、マスタ側制御切換指令部１４及びスレーブ側制御切換指令部４４のうち少なくとも一方を、マスタ装置２及びスレーブ装置４の一方に備え、マスタ側制御切換指令部１４及びスレーブ側制御切換指令部４４のうち残りを、マスタ装置２及びスレーブ装置４の他方に備えた構成であればよい。例えば、図７に示すように、マスタ装置２が、マスタ側制御切換指令部１４及びスレーブ側制御切換指令部４４の有する機能を兼ねるマスタスレーブ制御切換指令部５４を備えている構成としてもよい。また、図８に示すように、スレーブ装置４が、マスタスレーブ制御切換指令部５４を備えている構成としてもよい。この場合、通信ネットワークの状態として、信号ｔｍまたは信号ｔｓのうち一方を用いてもよく、信号ｅｍまたは信号ｅｓのうち一方を用いてもよい。
【００８０】
また、本実施形態のマスタスレーブ装置１では、マスタ側内部状態検出器８によって検出されるマスタ側駆動機構１６の内部状態を、操作者の操作によりマスタ側操作端６に加えられる力及びマスタ側操作端６の位置としたが、これに限定されるものではない。すなわち、マスタ側操作端６及びスレーブ側操作端４０は、直線運動を行っても、回転運動を行ってもよいため、例えば、操作者の操作によりマスタ側操作端６に加えられる力を、操作者の操作によりマスタ側操作端６に加えられるトルクに代え、マスタ側操作端６の位置を、マスタ側操作端６の角度に代えてもよい。同様に、操作者の操作によりマスタ側操作端６に加えられるトルク、及び環境との接触等によってスレーブ側操作端４０に加えられるトルクのうち少なくとも一方に応じてスレーブ側操作端４０に生じる力を、スレーブ側操作端４０に生じるトルクに代え、スレーブ側操作端４０の位置を、スレーブ側操作端４０の角度に代えてもよい。
【００８１】
また、本実施形態のマスタスレーブ装置１では、マスタ装置２とスレーブ装置４との間の通信手段としてパケット通信を用いたが、これに限定されるものではなく、例えば、回線交換方式など、パケット通信方式以外の通信手段を用いてもよい。
また、本実施形態のマスタスレーブ装置１では、通信ネットワークの状態を、各信号ｔｓ、ｅｓ、ｔｍ、ｅｍとしたが、これに限定されるものではなく、信号ｔｓ、ｔｍ及び信号ｅｓ、ｅｍのうち少なくとも一方を用いてもよい。
また、本実施形態のマスタスレーブ装置１では、マスタ側制御パラメータ及びスレーブ側制御パラメータを式１から式８のいずれかを用いて決定したが、これに限定されるものではなく、これらと異なる数式を用いてもよい。
【００８２】
（請求項の記載に関する付記）
請求項の記載に関し、本発明は、更に以下の特徴を有している。
（１）前記マスタ側駆動機構の内部状態を示す信号及び前記スレーブ側駆動機構の内部状態を示す信号を所定ゲインで増幅する増幅手段を備え、
前記通信ネットワークの状態に応じて、前記マスタ側制御パラメータ及び前記スレーブ側制御パラメータを構成する要素である前記所定ゲインで増幅された、前記マスタ側駆動機構の内部状態を示す信号及び前記スレーブ側駆動機構の内部状態を示す信号を適宜処理することを特徴とする請求項１１に記載したマスタ装置。このような構成によれば、マスタ側制御パラメータ及びスレーブ側制御パラメータを構成する要素である所定ゲインの値を制御することにより、マスタ側操作端及びスレーブ側操作端の駆動状態を、任意の状態とすることが可能となる。
【００８３】
（２）前記増幅手段は、前記マスタ側駆動機構の内部状態を示す信号及び前記スレーブ側駆動機構の内部状態を示す信号のそれぞれを、互いに異なるゲインで増幅し、これらの異なるゲインで増幅した信号を適宜処理するようにしたことを特徴とする（１）に記載したマスタ装置。このような構成によれば、マスタ側制御パラメータ演算部で用いるゲインと、スレーブ側制御パラメータ演算部で用いるゲインの値を独立に設定することにより、マスタ側操作端及びスレーブ側操作端の駆動状態を、独立して制御することが可能となる。
【００８４】
（３）前記マスタ側駆動機構の内部状態を、前記操作者の操作により前記マスタ側操作端に加えられる力及び当該マスタ側操作端の位置とし、
前記スレーブ側駆動機構の内部状態を、前記力に応じて前記スレーブ側操作端に生じる力及び当該スレーブ側操作端の位置としたことを特徴とする請求項１１、（１）または（２）に記載したマスタ装置。このような構成によれば、マスタ側駆動機構の内部状態及びスレーブ側駆動機構の内部状態を、直線運動として定義することが可能となる。
【００８５】
（４）前記操作者の操作により前記マスタ側操作端に加えられる力を、前記操作者の操作により前記マスタ側操作端に加えられるトルクに代え、
前記マスタ側操作端の位置を、前記マスタ側操作端の角度に代え、
前記スレーブ側操作端に生じる力を、前記トルクに応じて前記スレーブ側操作端に生じるトルクに代え、
前記スレーブ側操作端の位置を、前記スレーブ側操作端の角度に代えたことを特徴とする（３）に記載したマスタ装置。このような構成によれば、マスタ側駆動機構の内部状態及びスレーブ側駆動機構の内部状態を、円運動として定義することが可能となる。
【００８６】
（５）前記通信ネットワークの状態は、前記マスタ装置から前記スレーブ装置に通信される信号が到着するまでの時間及びスレーブ装置からマスタ装置に通信される信号が到着するまでの時間のうち少なくとも一方であることを特徴とする請求項１１、（１）から（４）のうちいずれか１項に記載したマスタ装置。このような構成によれば、通信ネットワークの状態を数値化することが可能となる。
【００８７】
（６）前記マスタ装置から前記スレーブ装置に通信される信号が到着するまでの時間を、前記マスタ装置から前記スレーブ装置に通信される信号内に含まれるマスタ側タイムスタンプを用いて検出し、
前記スレーブ装置から前記マスタ装置に通信される信号が到着するまでの時間を、前記スレーブ装置から前記マスタ装置に通信される信号内に含まれるスレーブ側タイムスタンプを用いて検出したことを特徴とする（５）に記載したマスタ装置。このような構成によれば、マスタ装置からスレーブ装置に通信される信号が到着するまでの時間、及びスレーブ装置からマスタ装置に通信される信号が到着するまでの時間を検出することが可能となる。
【００８８】
（７）前記通信ネットワークの状態は、前記マスタ装置から前記スレーブ装置に通信される信号の損失及びスレーブ装置からマスタ装置に通信される信号の損失のうち少なくとも一方であることを特徴とする請求項１１、（１）から（６）のうちいずれか１項に記載したマスタ装置。このような構成によれば、通信ネットワークの状態を数値化することが可能となる。
【００８９】
（８）前記マスタ装置から前記スレーブ装置に通信される信号の損失を、前記マスタ装置から前記スレーブ装置に通信される信号内に含まれるマスタ側識別番号を用いて検出し、
前記スレーブ装置から前記マスタ装置に通信される信号の損失を、前記スレーブ装置から前記マスタ装置に通信される信号内に含まれるスレーブ側識別番号を用いて検出したことを特徴とする（７）に記載したマスタ装置。このような構成によれば、マスタ装置からスレーブ装置に通信される信号の損失、及びスレーブ装置からマスタ装置に通信される信号の損失を検出することが可能となる。
【００９０】
（９）前記マスタ装置と前記スレーブ装置との間の通信手段をパケット通信としたことを特徴とする請求項１１、（１）から（８）のうちいずれか１項に記載したマスタ装置。このような構成によれば、マスタ装置からスレーブ装置に通信される信号の損失、及びスレーブ装置からマスタ装置に通信される信号の損失を、パケットの損失率として検出することが可能となる。
【００９１】
（１０）前記マスタ側駆動機構の内部状態を示す信号及び前記スレーブ側駆動機構の内部状態を示す信号を所定ゲインで増幅する増幅手段を備え、
前記通信ネットワークの状態に応じて、前記マスタ側制御パラメータ及び前記スレーブ側制御パラメータを構成する要素である前記所定ゲインで増幅された、前記マスタ側駆動機構の内部状態を示す信号及び前記スレーブ側駆動機構の内部状態を示す信号を適宜処理することを特徴とする請求項１２に記載したスレーブ装置。このような構成によれば、マスタ側制御パラメータ及びスレーブ側制御パラメータを構成する要素である所定ゲインの値を制御することにより、マスタ側操作端及びスレーブ側操作端の駆動状態を、任意の状態とすることが可能となる。
【００９２】
（１１）前記増幅手段は、前記マスタ側駆動機構の内部状態を示す信号及び前記スレーブ側駆動機構の内部状態を示す信号のそれぞれを、互いに異なるゲインで増幅し、これらの異なるゲインで増幅した信号を適宜処理するようにしたことを特徴とする（１０）に記載したスレーブ装置。このような構成によれば、マスタ側制御パラメータ演算部で用いるゲインと、スレーブ側制御パラメータ演算部で用いるゲインの値を独立に設定することにより、マスタ側操作端及びスレーブ側操作端の駆動状態を、独立して制御することが可能となる。
【００９３】
（１２）前記マスタ側駆動機構の内部状態を、前記操作者の操作により前記マスタ側操作端に加えられる力及び当該マスタ側操作端の位置とし、
前記スレーブ側駆動機構の内部状態を、前記力に応じて前記スレーブ側操作端に生じる力及び当該スレーブ側操作端の位置としたことを特徴とする請求項１２、（１０）または（１１）に記載したスレーブ装置。このような構成によれば、マスタ側駆動機構の内部状態及びスレーブ側駆動機構の内部状態を、直線運動として定義することが可能となる。
【００９４】
（１３）前記操作者の操作により前記マスタ側操作端に加えられる力を、前記操作者の操作により前記マスタ側操作端に加えられるトルクに代え、
前記マスタ側操作端の位置を、前記マスタ側操作端の角度に代え、
前記スレーブ側操作端に生じる力を、前記トルクに応じて前記スレーブ側操作端に生じるトルクに代え、
前記スレーブ側操作端の位置を、前記スレーブ側操作端の角度に代えたことを特徴とする（１２）に記載したスレーブ装置。このような構成によれば、マスタ側駆動機構の内部状態及びスレーブ側駆動機構の内部状態を、円運動として定義することが可能となる。
【００９５】
（１４）前記通信ネットワークの状態は、前記マスタ装置から前記スレーブ装置に通信される信号が到着するまでの時間及びスレーブ装置からマスタ装置に通信される信号が到着するまでの時間のうち少なくとも一方であることを特徴とする請求項１２、（１０）から（１３）のうちいずれか１項に記載したスレーブ装置。このような構成によれば、通信ネットワークの状態を数値化することが可能となる。
【００９６】
（１５）前記マスタ装置から前記スレーブ装置に通信される信号が到着するまでの時間を、前記マスタ装置から前記スレーブ装置に通信される信号内に含まれるマスタ側タイムスタンプを用いて検出し、
前記スレーブ装置から前記マスタ装置に通信される信号が到着するまでの時間を、前記スレーブ装置から前記マスタ装置に通信される信号内に含まれるスレーブ側タイムスタンプを用いて検出したことを特徴とする（１４）に記載したスレーブ装置。このような構成によれば、マスタ装置からスレーブ装置に通信される信号が到着するまでの時間、及びスレーブ装置からマスタ装置に通信される信号が到着するまでの時間を検出することが可能となる。
【００９７】
（１６）前記通信ネットワークの状態は、前記マスタ装置から前記スレーブ装置に通信される信号の損失及びスレーブ装置からマスタ装置に通信される信号の損失のうち少なくとも一方であることを特徴とする請求項１２、（１０）から（１５）のうちいずれか１項に記載したスレーブ装置。このような構成によれば、通信ネットワークの状態を数値化することが可能となる。
【００９８】
（１７）前記マスタ装置から前記スレーブ装置に通信される信号の損失を、前記マスタ装置から前記スレーブ装置に通信される信号内に含まれるマスタ側識別番号を用いて検出し、
前記スレーブ装置から前記マスタ装置に通信される信号の損失を、前記スレーブ装置から前記マスタ装置に通信される信号内に含まれるスレーブ側識別番号を用いて検出したことを特徴とする（１６）に記載したスレーブ装置。このような構成によれば、マスタ装置からスレーブ装置に通信される信号の損失、及びスレーブ装置からマスタ装置に通信される信号の損失を検出することが可能となる。
【００９９】
（１８）前記マスタ装置と前記スレーブ装置との間の通信手段をパケット通信としたことを特徴とする請求項１２、（１０）から（１７）のうちいずれか１項に記載したスレーブ装置。このような構成によれば、マスタ装置からスレーブ装置に通信される信号の損失、及びスレーブ装置からマスタ装置に通信される信号の損失を、パケットの損失率として検出することが可能となる。
【図面の簡単な説明】
【０１００】
【図１】本実施形態のマスタスレーブ装置の構成を示す図である。
【図２】マスタスレーブ装置を制御する際の動作を表すフローチャートである。
【図３】並列型バイラテラル制御における制御システムのブロック線図である。
【図４】対称型バイラテラル制御における制御システムのブロック線図である。
【図５】力逆送型バイラテラル制御における制御システムのブロック線図である。
【図６】力帰還型バイラテラル制御における制御システムのブロック線図である。
【図７】本実施形態の応用例におけるマスタスレーブ装置の構成を示す図である。
【図８】本実施形態の応用例におけるマスタスレーブ装置の構成を示す図である。
【符号の説明】
【０１０１】
１    マスタスレーブ装置
２    マスタ装置
４    スレーブ装置
６    マスタ側操作端
８    マスタ側内部状態検出器
１０  マスタ側信号送信部
１２  マスタ側信号受信部
１４  マスタ側制御切換指令部
１６  マスタ側駆動機構
２２  マスタ側力制御部
２４  スレーブ側力制御部
２６  マスタ側位置制御部
２８  スレーブ側信号受信部
３０  スレーブ側位置制御部
３２  スレーブ側信号送信部
３４  スレーブ側駆動機構
３６  マスタ側アクチュエータ
３８  マスタ側アクチュエータ制御部
４０  スレーブ側操作端
４２  スレーブ側内部状態検出器
４４  スレーブ側制御切換指令部
５０  スレーブ側アクチュエータ制御部
５２  スレーブ側アクチュエータ
５４  マスタスレーブ制御切換指令部
【図１】
2008119757.tif 000005
【図２】
2008119757.tif 000006
【図３】
2008119757.tif 000007
【図４】
2008119757.tif 000008
【図５】
2008119757.tif 000009
【図６】
2008119757.tif 000010
【図７】
2008119757.tif 000011
【図８】
2008119757.tif 000012