(57)【特許請求の範囲】
【請求項１】
それぞれ一人の操作者により操作される第１の操作部を有する複数の第１マスタマニピュレータ、前記複数の第１マスタマニピュレータの操作者と異なる一人の操作者により操作される第２の操作部を有する第２マスタマニピュレータ、並びに所定の処理対象物に対して処理を施す処理部を有するスレーブマニピュレータからなるマニピュレータシステムにおいて、
前記複数の第１マスタマニピュレータそれぞれは、
前記第１の操作部の、前記第１の操作部が移動可能な空間における絶対的な姿勢を検出する第１の検出手段と、
前記第１の操作部の絶対的な姿勢を送出する第１の送出手段と、
自分以外の前記第１マスタマニピュレータが送出する前記絶対的な姿勢と、前記スレーブマニピュレータが送出する第１の力またはトルクを取得する第１の取得手段と、
前記第１の検出手段により検出された自分の前記絶対的な姿勢と、前記第１の取得手段により取得された自分以外の前記第１マスタマニピュレータの前記絶対的な姿勢とを用いて、前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値を、基準姿勢として算出する基準姿勢算出手段と、
算出された前記基準姿勢と自分の前記絶対的な姿勢との差を算出する差分算出手段と、
算出された前記基準姿勢との差に対応する第２の力またはトルクを決定するとともに、前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する第１の決定手段と、
操作者が前記第３の力またはトルクを知覚するように、前記第１の操作部を制御する第１の制御手段と
を備え、
前記第２マスタマニピュレータは、
前記第２の操作部の操作開始時の標準姿勢に対する相対的な姿勢を検出する第２の検出手段と、
前記第２の操作部の前記相対的な姿勢を送出する第２の送出手段と、
前記スレーブマニピュレータが送出する前記第１の力またはトルクを取得する第２の取得手段と、
前記相対的な姿勢に対応する力またはトルクを第４の力またはトルクとして決定するとともに、前記第２の取得手段で取得された前記第１の力またはトルクと前記第４の力またはトルクとを加算して、操作者に知覚させる第５の力またはトルクを決定する第２の決定手段と、
操作者が前記第５の力またはトルクを知覚するように、前記第２の操作部を制御する第２の制御手段と
を備え、
前記スレーブマニピュレータは、
前記複数の第１マスタマニピュレータの前記第１の送出手段により送出された前記第１の操作部の絶対的な姿勢と、前記第２マスタマニピュレータの前記第２の送出手段により送出された前記第２の操作部の前記相対的な姿勢とを取得する第３の取得手段と、
取得された前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値である前記基準姿勢と、前記第２マスタマニピュレータの前記相対的な姿勢との加算値を算出する統合手段と、
前記統合手段により算出された前記加算値に基づいて、前記処理部の姿勢を制御する第３の制御手段と、
前記処理部が前記処理対象物から受けた前記第１の力またはトルクを検出する第３の検出手段と、
前記第１の力またはトルクを送出する第３の送出手段と
を備えることを特徴とするマニピュレータシステム。
【請求項２】
前記複数の第１マスタマニピュレータそれぞれにおいて、
前記第１の取得手段は、さらに、前記第２マスタマニピュレータの前記相対的な姿勢を取得し、
前記第１の制御手段は、
取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記第１の検出手段により検出された自分の前記絶対的な姿勢とのずれ量が、所定の閾値より小さい場合、操作者が前記第３の力またはトルクを知覚するように、前記第１の操作部を制御し、
取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記第１の検出手段により検出された自分の前記絶対的な姿勢とのずれ量が、前記所定の閾値以上である場合、操作者が前記第２の力またはトルクを知覚するように、前記第１の操作部を制御し、
前記第２マスタマニピュレータの前記第２の制御手段は、
前記相対的な姿勢が前記所定の閾値より小さい場合、操作者が前記第４の力またはトルクを知覚するように、前記第２の操作部を制御し、
前記相対的な姿勢が前記所定の閾値以上である場合、操作者が前記第５の力またはトルクを知覚するように、前記第２の操作部を制御する
ことを特徴とする請求項１に記載のマニピュレータシステム。
【請求項３】
前記第１マスタマニピュレータは、その操作者が、前記第２マスタマニピュレータの操作者の前記第２の操作部の操作と同期して、前記第１の操作部を操作することができるように、所定の合図の表示を制御する第１の表示制御手段をさらに備え、
前記第２マスタマニピュレータは、その操作者が、前記第１マスタマニピュレータの操作者の前記第１の操作部の操作と同期して、前記第２の操作部を操作することができるように、前記合図の表示を制御する第２の表示制御手段
をさらに備えることを特徴とする請求項１に記載のマニピュレータシステム。
【請求項４】
前記第１マスタマニピュレータは、その操作者が、前記第２マスタマニピュレータの操作者の前記第２の操作部の操作と同期して、前記第１の操作部を操作することができるように、所定の音声の合図の出力を制御する第１の出力制御手段をさらに備え、
前記第２マスタマニピュレータは、その操作者が、前記第１マスタマニピュレータの操作者の前記第１の操作部の操作と同期して、前記第２の操作部を操作することができるように、前記音声の合図の出力を制御する第２の出力制御手段
をさらに備えることを特徴とする請求項１に記載のマニピュレータシステム。
【請求項５】
それぞれ一人の操作者により操作される第１の操作部を有する複数の第１マスタマニピュレータ、前記複数の第１マスタマニピュレータの操作者と異なる一人の操作者により操作される第２の操作部を有する第２マスタマニピュレータ、並びに所定の処理対象物に対して処理を施す処理部を有するスレーブマニピュレータからなるマニピュレータシステムの制御方法において、
前記複数の第１マスタマニピュレータそれぞれは、
前記第１の操作部の、前記第１の操作部が移動可能な空間における絶対的な姿勢を検出する第１の検出ステップと、
前記第１の操作部の絶対的な姿勢を送出する第１の送出ステップと、
自分以外の前記第１マスタマニピュレータが送出する前記絶対的な姿勢と、前記スレーブマニピュレータが送出する第１の力またはトルクを取得する第１の取得ステップと、
前記第１の検出ステップの処理により検出された自分の前記絶対的な姿勢と、前記第１の取得ステップの処理により取得された自分以外の前記第１マスタマニピュレータの前記絶対的な姿勢とを用いて、前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値を、基準姿勢として算出する基準姿勢算出ステップと、
算出された前記基準姿勢と自分の前記絶対的な姿勢との差を算出する差分算出ステップと、
算出された前記基準姿勢との差に対応する第２の力またはトルクを決定するとともに、前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する第１の決定ステップと、
操作者が前記第３の力またはトルクを知覚するように、前記第１の操作部を制御する第１の制御ステップと
を備え、
前記第２マスタマニピュレータは、
前記第２の操作部の操作開始時の標準姿勢に対する相対的な姿勢を検出する第２の検出ステップと、
前記第２の操作部の前記相対的な姿勢を送出する第２の送出ステップと、
前記スレーブマニピュレータが送出する前記第１の力またはトルクを取得する第２の取得ステップと、
前記相対的な姿勢に対応する力またはトルクを第４の力またはトルクとして決定するとともに、前記第２の取得ステップの処理で取得された前記第１の力またはトルクと前記第４の力またはトルクとを加算して、操作者に知覚させる第５の力またはトルクを決定する第２の決定ステップと、
操作者が前記第５の力またはトルクを知覚するように、前記第２の操作部を制御する第２の制御ステップと
を備え、
前記スレーブマニピュレータは、
前記複数の第１マスタマニピュレータの前記第１の送出ステップの処理により送出された前記第１の操作部の絶対的な姿勢と、前記第２マスタマニピュレータの前記第２の送出ステップの処理により送出された前記第２の操作部の前記相対的な姿勢とを取得する第３の取得ステップと、
取得された前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値である前記基準姿勢と、前記第２マスタマニピュレータの前記相対的な姿勢との加算値を算出する統合ステップと、
前記統合ステップの処理により算出された前記加算値に基づいて、前記処理部の姿勢を制御する第３の制御ステップと、
前記処理部が前記処理対象物から受けた前記第１の力またはトルクを検出する第３の検出ステップと、
前記第１の力またはトルクを送出する第３の送出ステップと
を含むことを特徴とするマニピュレータシステムの制御方法。
【請求項６】
前記複数の第１マスタマニピュレータそれぞれにおいて、
前記第１の取得ステップの処理は、さらに、前記第２マスタマニピュレータの前記相対的な姿勢を取得し、
前記第１の制御ステップの処理は、
取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記第１の検出ステップの処理により検出された自分の前記絶対的な姿勢とのずれ量が、所定の閾値より小さい場合、操作者が前記第３の力またはトルクを知覚するように、前記第１の操作部を制御し、
取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記第１の検出ステップの処理により検出された自分の前記絶対的な姿勢とのずれ量が、前記所定の閾値以上である場合、操作者が前記第２の力またはトルクを知覚するように、前記第１の操作部を制御し、
前記第２マスタマニピュレータの前記第２の制御ステップの処理は、
前記相対的な姿勢が前記所定の閾値より小さい場合、操作者が前記第４の力またはトルクを知覚するように、前記第２の操作部を制御し、
前記相対的な姿勢が前記所定の閾値以上である場合、操作者が前記第５の力またはトルクを知覚するように、前記第２の操作部を制御する
ことを特徴とする請求項５に記載のマニピュレータシステムの制御方法。
【請求項７】
前記第１マスタマニピュレータは、その操作者が、前記第２マスタマニピュレータの操作者の前記第２の操作部の操作と同期して、前記第１の操作部を操作することができるように、所定の合図の表示を制御する第１の表示制御ステップと、
前記第２マスタマニピュレータは、その操作者が、前記第１マスタマニピュレータの操作者の前記第１の操作部の操作と同期して、前記第２の操作部を操作することができるように、前記合図の表示を制御する第２の表示制御ステップと
をさらに含むことを特徴とする請求項５に記載のマニピュレータシステムの制御方法。
【請求項８】
前記第１マスタマニピュレータは、その操作者が、前記第２マスタマニピュレータの操作者の前記第２の操作部の操作と同期して、前記第１の操作部を操作することができるように、所定の音声の合図の出力を制御する第１の出力制御ステップと、
前記第２マスタマニピュレータは、その操作者が、前記第１マスタマニピュレータの操作者の前記第１の操作部の操作と同期して、前記第２の操作部を操作することができるように、前記音声の合図の出力を制御する第２の出力制御ステップと
をさらに含むことを特徴とする請求項５に記載のマニピュレータシステムの制御方法。
【請求項９】
それぞれ一人の操作者により操作される第１の操作部を有する複数の第１マスタマニピュレータ、前記複数の第１マスタマニピュレータの操作者と異なる一人の操作者により操作される第２の操作部を有する第２マスタマニピュレータ、並びに所定の処理対象物に対して処理を施す処理部を有するスレーブマニピュレータからなるマニピュレータシステムの制御用のコンピュータに、
前記複数の第１マスタマニピュレータそれぞれにおいて、
前記第１の操作部の、前記第１の操作部が移動可能な空間における絶対的な姿勢を検出する第１の検出ステップと、
前記第１の操作部の絶対的な姿勢を送出する第１の送出ステップと、
自分以外の前記第１マスタマニピュレータが送出する前記絶対的な姿勢と、前記スレーブマニピュレータが送出する第１の力またはトルクを取得する第１の取得ステップと、
前記第１の検出ステップの処理により検出された自分の前記絶対的な姿勢と、前記第１の取得ステップの処理により取得された自分以外の前記第１マスタマニピュレータの前記絶対的な姿勢とを用いて、前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値を、基準姿勢として算出する基準姿勢算出ステップと、
算出された前記基準姿勢と自分の前記絶対的な姿勢との差を算出する差分算出ステップと、
算出された前記基準姿勢との差に対応する第２の力またはトルクを決定するとともに、前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する第１の決定ステップと、
操作者が前記第３の力またはトルクを知覚するように、前記第１の操作部を制御する第１の制御ステップと
を実行し、
前記第２マスタマニピュレータにおいて、
前記第２の操作部の操作開始時の標準姿勢に対する相対的な姿勢を検出する第２の検出ステップと、
前記第２の操作部の前記相対的な姿勢を送出する第２の送出ステップと、
前記スレーブマニピュレータが送出する前記第１の力またはトルクを取得する第２の取得ステップと、
前記相対的な姿勢に対応する力またはトルクを第４の力またはトルクとして決定するとともに、前記第２の取得ステップの処理で取得された前記第１の力またはトルクと前記第４の力またはトルクとを加算して、操作者に知覚させる第５の力またはトルクを決定する第２の決定ステップと、
操作者が前記第５の力またはトルクを知覚するように、前記第２の操作部を制御する第２の制御ステップと
を実行し、
前記スレーブマニピュレータにおいて、
前記複数の第１マスタマニピュレータの前記第１の送出ステップの処理により送出された前記第１の操作部の絶対的な姿勢と、前記第２マスタマニピュレータの前記第２の送出ステップの処理により送出された前記第２の操作部の前記相対的な姿勢とを取得する第３の取得ステップと、
取得された前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値である前記基準姿勢と、前記第２マスタマニピュレータの前記相対的な姿勢との加算値を算出する統合ステップと、
前記統合ステップの処理により算出された前記加算値に基づいて、前記処理部の姿勢を制御する第３の制御ステップと、
前記処理部が前記処理対象物から受けた前記第１の力またはトルクを検出する第３の検出ステップと、
前記第１の力またはトルクを送出する第３の送出ステップと
を実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１０】
操作者により操作される操作部を有するマスタマニピュレータにおいて、
前記操作部の絶対的な姿勢を検出する検出手段と、
検出された前記操作部の絶対的な姿勢を、自分以外の１以上の第１マスタマニピュレータに送出する送出手段と、
前記自分以外の１以上の第１マスタマニピュレータが送出する絶対的な姿勢、自分以外の１つの第２マスタマニピュレータが送出する相対的な姿勢、および、スレーブマニピュレータが送出する第１の力またはトルクを取得する取得手段と、
前記検出手段により検出された自分の前記絶対的な姿勢と、前記取得手段により取得された自分以外の第１マスタマニピュレータの前記絶対的な姿勢とを用いて、複数のマスタマニピュレータの前記絶対的な姿勢の平均値を、基準姿勢として算出する基準姿勢算出手段と、
前記基準姿勢算出手段により算出された前記基準姿勢と自分の前記絶対的な姿勢との差を算出する差分算出手段と、
前記差分算出手段により算出された前記基準姿勢との差に対応する第２の力またはトルクを決定するとともに、前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する決定手段と、
取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記検出手段により検出された自分の前記絶対的な姿勢とのずれ量が、所定の閾値より小さい場合、操作者が前記第３の力またはトルクを知覚するように、前記操作部を制御し、
取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記検出手段により検出された自分の前記絶対的な姿勢とのずれ量が、前記所定の閾値以上である場合、操作者が前記第２の力またはトルクを知覚するように、前記操作部を制御する制御手段と
を備えることを特徴とするマスタマニピュレータ。
【請求項１１】
操作者により操作される操作部を有するマスタマニピュレータの制御方法において、
前記操作部の絶対的な姿勢を検出する検出ステップと、
検出された前記操作部の絶対的な姿勢を自分以外の１以上の第１マスタマニピュレータに送出する送出ステップと、
前記自分以外の１以上の第１マスタマニピュレータが送出する絶対的な姿勢、自分以外の１つの第２マスタマニピュレータが送出する相対的な姿勢、および、スレーブマニピュレータが送出する第１の力またはトルクを取得する取得ステップと、
前記検出ステップの処理により検出された自分の前記絶対的な姿勢と、前記取得ステップの処理により取得された自分以外の第１マスタマニピュレータの前記絶対的な姿勢とを用いて、複数のマスタマニピュレータの前記絶対的な姿勢の平均値を、基準姿勢として算出する基準姿勢算出ステップと、
前記基準姿勢算出ステップの処理により算出された前記基準姿勢と自分の前記絶対的な姿勢との差を算出する差分算出ステップと、
前記差分算出ステップの処理により算出された前記基準姿勢との差に対応する第２の力またはトルクを決定するとともに、前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する決定ステップと、
取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記検出ステップの処理により検出された自分の前記絶対的な姿勢とのずれ量が、所定の閾値より小さい場合、操作者が前記第３の力またはトルクを知覚するように、前記操作部を制御し、
取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記検出ステップの処理により検出された自分の前記絶対的な姿勢とのずれ量が、前記所定の閾値以上である場合、操作者が前記第２の力またはトルクを知覚するように、前記操作部を制御する制御ステップと
を含むことを特徴とするマスタマニピュレータの制御方法。
【請求項１２】
操作者により操作される操作部を有するマスタマニピュレータの制御用のコンピュータに、
前記操作部の絶対的な姿勢を検出する検出ステップと、
検出された前記操作部の絶対的な姿勢を自分以外の１以上の第１マスタマニピュレータに送出する送出ステップと、
前記自分以外の１以上の第１マスタマニピュレータが送出する絶対的な姿勢、自分以外の１つの第２マスタマニピュレータが送出する相対的な姿勢、および、スレーブマニピュレータが送出する第１の力またはトルクを取得する取得ステップと、
前記検出ステップの処理により検出された自分の前記絶対的な姿勢と、前記取得ステップの処理により取得された自分以外の第１マスタマニピュレータの前記絶対的な姿勢とを用いて、複数のマスタマニピュレータの前記絶対的な姿勢の平均値を、基準姿勢として算出する基準姿勢算出ステップと、
前記基準姿勢算出ステップの処理により算出された前記基準姿勢と自分の前記絶対的な姿勢との差を算出する差分算出ステップと、
前記差分算出ステップの処理により算出された前記基準姿勢との差に対応する第２の力またはトルクを決定するとともに、前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する決定ステップと、
取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記検出ステップの処理により検出された自分の前記絶対的な姿勢とのずれ量が、所定の閾値より小さい場合、操作者が前記第３の力またはトルクを知覚するように、前記操作部を制御し、
取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記検出ステップの処理により検出された自分の前記絶対的な姿勢とのずれ量が、前記所定の閾値以上である場合、操作者が前記第２の力またはトルクを知覚するように、前記操作部を制御する制御ステップと
を実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１３】
操作者により操作される操作部を有するマスタマニピュレータにおいて、
前記操作部の操作開始時の標準姿勢に対する相対的な姿勢を検出する検出手段と、
前記操作部の前記相対的な姿勢をスレーブマニピュレータに送出する送出手段と、
前記スレーブマニピュレータが送出する第１の力またはトルクを取得する取得手段と、
前記相対的な姿勢に対応する力またはトルクを第２の力またはトルクとして決定するとともに、前記取得手段で取得された前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する決定手段と、
前記相対的な姿勢が所定の閾値より小さい場合、操作者が前記第２の力またはトルクを知覚するように、前記操作部を制御し、
前記相対的な姿勢が前記所定の閾値以上である場合、操作者が前記第３の力またはトルクを知覚するように、前記操作部を制御する制御手段と
を備えることを特徴とするマスタマニピュレータ。
【請求項１４】
操作者により操作される操作部を有するマスタマニピュレータの制御方法において、
前記操作部の操作開始時の標準姿勢に対する相対的な姿勢を検出する検出ステップと、
前記操作部の前記相対的な姿勢をスレーブマニピュレータに送出する送出ステップと、
前記スレーブマニピュレータが送出する第１の力またはトルクを取得する取得ステップと、
前記相対的な姿勢に対応する力またはトルクを第２の力またはトルクとして決定するとともに、前記取得ステップの処理で取得された前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する決定ステップと、
前記相対的な姿勢が所定の閾値より小さい場合、操作者が前記第２の力またはトルクを知覚するように、前記操作部を制御し、
前記相対的な姿勢が前記所定の閾値以上である場合、操作者が前記第３の力またはトルクを知覚するように、前記操作部を制御する制御ステップと
を含むことを特徴とするマスタマニピュレータの制御方法。
【請求項１５】
操作者により操作される操作部を有するマスタマニピュレータの制御用のコンピュータに、
前記操作部の操作開始時の標準姿勢に対する相対的な姿勢を検出する検出ステップと、
前記操作部の前記相対的な姿勢をスレーブマニピュレータに送出する送出ステップと、
前記スレーブマニピュレータが送出する第１の力またはトルクを取得する取得ステップと、
前記相対的な姿勢に対応する力またはトルクを第２の力またはトルクとして決定するとともに、前記取得ステップの処理で取得された前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する決定ステップと、
前記相対的な姿勢が所定の閾値より小さい場合、操作者が前記第２の力またはトルクを知覚するように、前記操作部を制御し、
前記相対的な姿勢が前記所定の閾値以上である場合、操作者が前記第３の力またはトルクを知覚するように、前記操作部を制御する制御ステップと
を実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１６】
所定の処理対象物に処理を施す処理部を有するスレーブマニピュレータにおいて、
複数の第１マスタマニピュレータから送出された、前記第１マスタマニピュレータが有する第１の操作部の絶対的な姿勢と、１つの第２マスタマニピュレータから送出された、前記第２マスタマニピュレータが有する第２の操作部の相対的な姿勢とを取得する取得手段と、
取得された前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値である基準姿勢と、前記第２マスタマニピュレータの前記相対的な姿勢との加算値を算出する統合手段と、
前記統合手段により算出された前記加算値に基づいて、前記処理部の姿勢を制御する制御手段と、
前記処理部が前記処理対象物から受けた力またはトルクを検出する検出手段と、
検出された前記力またはトルクを複数の前記第１マスタマニピュレータと前記第２マスタマニピュレータに送出する送出手段と
を備えることを特徴とするスレーブマニピュレータ。
【請求項１７】
所定の処理対象物に処理を施す処理部を有するスレーブマニピュレータの制御方法において、
複数の第１マスタマニピュレータから送出された、前記第１マスタマニピュレータが有する第１の操作部の絶対的な姿勢と、１つの第２マスタマニピュレータから送出された、前記第２マスタマニピュレータが有する第２の操作部の相対的な姿勢とを取得する取得ステップと、
取得された前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値である基準姿勢と、前記第２マスタマニピュレータの前記相対的な姿勢との加算値を算出する統合ステップと、
前記統合ステップの処理により算出された前記加算値に基づいて、前記処理部の姿勢を制御する制御ステップと、
前記処理部が前記処理対象物から受けた力またはトルクを検出する検出ステップと、
検出された前記力またはトルクを複数の前記第１マスタマニピュレータと前記第２マスタマニピュレータに送出する送出ステップと
を含むことを特徴とするスレーブマニピュレータの制御方法。
【請求項１８】
所定の処理対象物に処理を施す処理部を有するスレーブマニピュレータの制御用のコンピュータに、
複数の第１マスタマニピュレータから送出された、前記第１マスタマニピュレータが有する第１の操作部の絶対的な姿勢と、１つの第２マスタマニピュレータから送出された、前記第２マスタマニピュレータが有する第２の操作部の相対的な姿勢とを取得する取得ステップと、
取得された前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値である基準姿勢と、前記第２マスタマニピュレータの前記相対的な姿勢との加算値を算出する統合ステップと、
前記統合ステップの処理により算出された前記加算値に基づいて、前記処理部の姿勢を制御する制御ステップと、
前記処理部が前記処理対象物から受けた力またはトルクを検出する検出ステップと、
検出された前記力またはトルクを複数の前記第１マスタマニピュレータと前記第２マスタマニピュレータに送出する送出ステップと
を実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、マニピュレータシステム、マスタマニピュレータ、スレーブマニピュレータ及びそれらの制御方法、並びに記録媒体に関し、特に、容易に、かつ、精度よく、スレーブマニピュレータを遠隔操作することができるようにしたマニピュレータシステム、マスタマニピュレータ、スレーブマニピュレータ及びそれらの制御方法、並びに記録媒体に関する。
【０００２】
【従来の技術】
図１は、従来の手術用マニピュレータシステムの外観の構成例を示している。
【０００３】
手術台１には、後述するマスタマニピュレータ部８Ｌおよびマスタマニピュレータ部８Ｒのそれぞれにより遠隔操作されて、手術台１に寝かされている患者（図１の例では、あお向けに寝せられている患者）２に対する径皮的手術を行う、スレーブマニピュレータ部３Ｌおよびスレーブマニピュレータ部３Ｒ（以下、個々に区別する必要がない場合、これらをまとめて、スレーブマニピュレータ部３と称する。他の場合についても同様である）が設置されている。
【０００４】
スレーブマニピュレータ部３Ｌは、手術台１の左側（手術台１を上から見た場合の左側）に設置され、その先端には、把持鉗子、メス、縫合器、または注射器等の処置具で構成される先端部４Ｌが取り付けられている。
【０００５】
スレーブマニピュレータ部３Ｒは、手術台１の右側に設置され、その先端には、把持鉗子、メス、縫合器、または注射器等の処置具で構成される先端部４Ｒが取り付けられている。
【０００６】
手術台１にはさらに、患者２の腹腔内の様子を撮像するＣＣＤカメラ６が先端に取り付けられたカメラ部５が設置されている。
【０００７】
操作台７は、例えば、手術台１の周辺に備え付けられており、そこには、操作者Ａにより操作される、マスタマニピュレータ部８Ｌ，８Ｒがそれぞれ設置されている。
【０００８】
マスタマニピュレータ部８Ｌは、操作台７の左側（操作台７を背にした場合の左側）に設置され、その先端には、操作者Ａの左手により保持されて操作される操作部９Ｌが取り付けられている。
【０００９】
マスタマニピュレータ部８Ｒは、操作台７の右側に設置され、その先端には、操作者Ａの右手により保持されて操作される操作部９Ｒが取り付けられている。
【００１０】
モニタ１０は、操作者Ａが、マスタマニピュレータ部８（操作部９）を操作しながら、そこに表示される映像を見ることができるように、操作台７付近に設置されている。モニタ１０には、カメラ部５のＣＣＤカメラ６により撮像された映像が映し出される。
【００１１】
操作者Ａは、操作台７を背にして操作台７とモニタ１０の間に立ち、モニタ１０に映し出されるスレーブマニピュレータ部３の先端部４の様子を見ながら、左手で、マスタマニピュレータ部８Ｌの操作部９Ｌを３次元的に移動するようにして操作し、スレーブマニピュレータ部３Ｌの先端部４Ｌに、操作部９Ｌの動きに同期した動きをさせ、また右手で、マスタマニピュレータ部８Ｒの操作部９Ｒを３次元的に移動するようにして操作し、スレーブマニピュレータ部３Ｒの先端部４Ｒに、操作部９Ｒの動きに同期した動きをさせることで、患者２に対する径皮的手術を行う。
【００１２】
すなわち、このシステムでは、１個のマスタマニピュレータ部８（マスタマニピュレータ部８Ｌまたはマスタマニピュレータ部８Ｒ）により、１個のスレーブマニピュレータ部３（スレーブマニピュレータ部３Ｌまたはスレーブマニピュレータ部３Ｒ）が遠隔制御されることで、患者２に対する径皮的手術が行われる。
【００１３】
【発明が解決しようとする課題】
ところで、例えば、図２（Ａ）に示すような、所定の位置Ａから、一定のふくらみをもって位置Ｂに至る軌跡（以下、目標軌跡と称する）を描くように、スレーブマニピュレータ部３の先端部４を移動させたい場合、操作者Ａは、目標軌跡と同じ軌跡を描くように、マスタマニピュレータ部８の操作部９を移動させようとする。
【００１４】
しかしながら、操作者Ａの、操作部９に対する操作技術のレベルにもよるが、例えば、図２（Ｂ）の実線で示すように、図２（Ｂ）の点線で示される目標軌跡からずれた軌跡（以下、操作軌跡と称する）を描くように、操作部９が移動されることがある。すなわち、この場合、スレーブマニピュレータ部３の先端部４は、当然、目標軌跡からずれた操作軌跡を描くように移動する。
【００１５】
このように、１個のマスタマニピュレータ部８により、１個のスレーブマニピュレータ部３を遠隔操作する場合、遠隔操作の精度は、一人の操作者Ａの操作技術に大きく依存することになる。
【００１６】
すなわち、従来においては、スレーブマニピュレータ部３を精度よく遠隔操作するには、操作者Ａは、マスタマニピュレータ部８（操作部９）に対する高度な操作技術を修得する必要があった。言い換えれば、スレーブマニピュレータ部３を精度よく遠隔操作することが容易ではなかった。
【００１７】
本発明はこのような状況に鑑みてなされたものであり、複数のマスタマニピュレータ部８により、１個のスレーブマニピュレータ部３を遠隔操作することで、遠隔操作を、容易に、かつ、精度良く、行うことができるようにするものである。
【００１８】
【課題を解決するための手段】
本発明のマニピュレータシステムは、それぞれ一人の操作者により操作される第１の操作部を有する複数の第１マスタマニピュレータ、前記複数の第１マスタマニピュレータの操作者と異なる一人の操作者により操作される第２の操作部を有する第２マスタマニピュレータ、並びに所定の処理対象物に対して処理を施す処理部を有するスレーブマニピュレータからなるマニピュレータシステムにおいて、前記複数の第１マスタマニピュレータそれぞれは、前記第１の操作部の、前記第１の操作部が移動可能な空間における絶対的な姿勢を検出する第１の検出手段と、前記第１の操作部の絶対的な姿勢を送出する第１の送出手段と、自分以外の前記第１マスタマニピュレータが送出する前記絶対的な姿勢と、前記スレーブマニピュレータが送出する第１の力またはトルクを取得する第１の取得手段と、前記第１の検出手段により検出された自分の前記絶対的な姿勢と、前記第１の取得手段により取得された自分以外の前記第１マスタマニピュレータの前記絶対的な姿勢とを用いて、前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値を、基準姿勢として算出する基準姿勢算出手段と、算出された前記基準姿勢と自分の前記絶対的な姿勢との差を算出する差分算出手段と、算出された前記基準姿勢との差に対応する第２の力またはトルクを決定するとともに、前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する第１の決定手段と、操作者が前記第３の力またはトルクを知覚するように、前記第１の操作部を制御する第１の制御手段とを備え、前記第２マスタマニピュレータは、前記第２の操作部の操作開始時の標準姿勢に対する相対的な姿勢を検出する第２の検出手段と、前記第２の操作部の前記相対的な姿勢を送出する第２の送出手段と、前記スレーブマニピュレータが送出する前記第１の力またはトルクを取得する第２の取得手段と、前記相対的な姿勢に対応する力またはトルクを第４の力またはトルクとして決定するとともに、前記第２の取得手段で取得された前記第１の力またはトルクと前記第４の力またはトルクとを加算して、操作者に知覚させる第５の力またはトルクを決定する第２の決定手段と、操作者が前記第５の力またはトルクを知覚するように、前記第２の操作部を制御する第２の制御手段とを備え、前記スレーブマニピュレータは、前記複数の第１マスタマニピュレータの前記第１の送出手段により送出された前記第１の操作部の絶対的な姿勢と、前記第２マスタマニピュレータの前記第２の送出手段により送出された前記第２の操作部の前記相対的な姿勢とを取得する第３の取得手段と、取得された前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値である前記基準姿勢と、前記第２マスタマニピュレータの前記相対的な姿勢との加算値を算出する統合手段と、前記統合手段により算出された前記加算値に基づいて、前記処理部の姿勢を制御する第３の制御手段と、前記処理部が前記処理対象物から受けた前記第１の力またはトルクを検出する第３の検出手段と、前記第１の力またはトルクを送出する第３の送出手段とを備えることを特徴とする。
【００１９】
前記複数の第１マスタマニピュレータそれぞれにおいて、前記第１の取得手段には、さらに、前記第２マスタマニピュレータの前記相対的な姿勢を取得させ、前記第１の制御手段には、取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記第１の検出手段により検出された自分の前記絶対的な姿勢とのずれ量が、所定の閾値より小さい場合、操作者が前記第３の力またはトルクを知覚するように、前記第１の操作部を制御させ、取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記第１の検出手段により検出された自分の前記絶対的な姿勢とのずれ量が、前記所定の閾値以上である場合、操作者が前記第２の力またはトルクを知覚するように、前記第１の操作部を制御させ、前記第２マスタマニピュレータの前記第２の制御手段には、前記相対的な姿勢が前記所定の閾値より小さい場合、操作者が前記第４の力またはトルクを知覚するように、前記第２の操作部を制御させ、前記相対的な姿勢が前記所定の閾値以上である場合、操作者が前記第５の力またはトルクを知覚するように、前記第２の操作部を制御させることができる。
【００２０】
前記第１マスタマニピュレータには、その操作者が、前記第２マスタマニピュレータの操作者の前記第２の操作部の操作と同期して、前記第１の操作部を操作することができるように、所定の合図の表示を制御する第１の表示制御手段をさらに備え、前記第２マスタマニピュレータには、その操作者が、前記第１マスタマニピュレータの操作者の前記第１の操作部の操作と同期して、前記第２の操作部を操作することができるように、前記合図の表示を制御する第２の表示制御手段をさらに備えることができる。
【００２１】
前記第１マスタマニピュレータには、その操作者が、前記第２マスタマニピュレータの操作者の前記第２の操作部の操作と同期して、前記第１の操作部を操作することができるように、所定の音声の合図の出力を制御する第１の出力制御手段をさらに備え、前記第２マスタマニピュレータには、その操作者が、前記第１マスタマニピュレータの操作者の前記第１の操作部の操作と同期して、前記第２の操作部を操作することができるように、前記音声の合図の出力を制御する第２の出力制御手段をさらに備えることができる。
【００２２】
本発明のマニピュレータシステムの制御方法は、それぞれ一人の操作者により操作される第１の操作部を有する複数の第１マスタマニピュレータ、前記複数の第１マスタマニピュレータの操作者と異なる一人の操作者により操作される第２の操作部を有する第２マスタマニピュレータ、並びに所定の処理対象物に対して処理を施す処理部を有するスレーブマニピュレータからなるマニピュレータシステムの制御方法において、前記複数の第１マスタマニピュレータそれぞれは、前記第１の操作部の、前記第１の操作部が移動可能な空間における絶対的な姿勢を検出する第１の検出ステップと、前記第１の操作部の絶対的な姿勢を送出する第１の送出ステップと、自分以外の前記第１マスタマニピュレータが送出する前記絶対的な姿勢と、前記スレーブマニピュレータが送出する第１の力またはトルクを取得する第１の取得ステップと、前記第１の検出ステップの処理により検出された自分の前記絶対的な姿勢と、前記第１の取得ステップの処理により取得された自分以外の前記第１マスタマニピュレータの前記絶対的な姿勢とを用いて、前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値を、基準姿勢として算出する基準姿勢算出ステップと、算出された前記基準姿勢と自分の前記絶対的な姿勢との差を算出する差分算出ステップと、算出された前記基準姿勢との差に対応する第２の力またはトルクを決定するとともに、前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する第１の決定ステップと、操作者が前記第３の力またはトルクを知覚するように、前記第１の操作部を制御する第１の制御ステップとを備え、前記第２マスタマニピュレータは、前記第２の操作部の操作開始時の標準姿勢に対する相対的な姿勢を検出する第２の検出ステップと、前記第２の操作部の前記相対的な姿勢を送出する第２の送出ステップと、前記スレーブマニピュレータが送出する前記第１の力またはトルクを取得する第２の取得ステップと、前記相対的な姿勢に対応する力またはトルクを第４の力またはトルクとして決定するとともに、前記第２の取得ステップの処理で取得された前記第１の力またはトルクと前記第４の力またはトルクとを加算して、操作者に知覚させる第５の力またはトルクを決定する第２の決定ステップと、操作者が前記第５の力またはトルクを知覚するように、前記第２の操作部を制御する第２の制御ステップとを備え、前記スレーブマニピュレータは、前記複数の第１マスタマニピュレータの前記第１の送出ステップの処理により送出された前記第１の操作部の絶対的な姿勢と、前記第２マスタマニピュレータの前記第２の送出ステップの処理により送出された前記第２の操作部の前記相対的な姿勢とを取得する第３の取得ステップと、取得された前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値である前記基準姿勢と、前記第２マスタマニピュレータの前記相対的な姿勢との加算値を算出する統合ステップと、前記統合ステップの処理により算出された前記加算値に基づいて、前記処理部の姿勢を制御する第３の制御ステップと、前記処理部が前記処理対象物から受けた前記第１の力またはトルクを検出する第３の検出ステップと、前記第１の力またはトルクを送出する第３の送出ステップとを含むことを特徴とする。
【００２３】
前記複数の第１マスタマニピュレータそれぞれにおいて、前記第１の取得ステップの処理には、さらに、前記第２マスタマニピュレータの前記相対的な姿勢を取得させ、前記第１の制御ステップの処理には、取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記第１の検出ステップの処理により検出された自分の前記絶対的な姿勢とのずれ量が、所定の閾値より小さい場合、操作者が前記第３の力またはトルクを知覚するように、前記第１の操作部を制御させ、取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記第１の検出ステップの処理により検出された自分の前記絶対的な姿勢とのずれ量が、前記所定の閾値以上である場合、操作者が前記第２の力またはトルクを知覚するように、前記第１の操作部を制御させ、前記第２マスタマニピュレータの前記第２の制御ステップの処理には、前記相対的な姿勢が前記所定の閾値より小さい場合、操作者が前記第４の力またはトルクを知覚するように、前記第２の操作部を制御させ、前記相対的な姿勢が前記所定の閾値以上である場合、操作者が前記第５の力またはトルクを知覚するように、前記第２の操作部を制御させることができる。
【００２４】
前記第１マスタマニピュレータには、その操作者が、前記第２マスタマニピュレータの操作者の前記第２の操作部の操作と同期して、前記第１の操作部を操作することができるように、所定の合図の表示を制御する第１の表示制御ステップと、前記第２マスタマニピュレータには、その操作者が、前記第１マスタマニピュレータの操作者の前記第１の操作部の操作と同期して、前記第２の操作部を操作することができるように、前記合図の表示を制御する第２の表示制御ステップとをさらに含むことができる。
【００２５】
前記第１マスタマニピュレータには、その操作者が、前記第２マスタマニピュレータの操作者の前記第２の操作部の操作と同期して、前記第１の操作部を操作することができるように、所定の音声の合図の出力を制御する第１の出力制御ステップと、前記第２マスタマニピュレータには、その操作者が、前記第１マスタマニピュレータの操作者の前記第１の操作部の操作と同期して、前記第２の操作部を操作することができるように、前記音声の合図の出力を制御する第２の出力制御ステップとをさらに含むことができる。
【００２６】
本発明の第１の記録媒体は、それぞれ一人の操作者により操作される第１の操作部を有する複数の第１マスタマニピュレータ、前記複数の第１マスタマニピュレータの操作者と異なる一人の操作者により操作される第２の操作部を有する第２マスタマニピュレータ、並びに所定の処理対象物に対して処理を施す処理部を有するスレーブマニピュレータからなるマニピュレータシステムの制御用のコンピュータに、前記複数の第１マスタマニピュレータそれぞれにおいて、前記第１の操作部の、前記第１の操作部が移動可能な空間における絶対的な姿勢を検出する第１の検出ステップと、前記第１の操作部の絶対的な姿勢を送出する第１の送出ステップと、自分以外の前記第１マスタマニピュレータが送出する前記絶対的な姿勢と、前記スレーブマニピュレータが送出する第１の力またはトルクを取得する第１の取得ステップと、前記第１の検出ステップの処理により検出された自分の前記絶対的な姿勢と、前記第１の取得ステップの処理により取得された自分以外の前記第１マスタマニピュレータの前記絶対的な姿勢とを用いて、前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値を、基準姿勢として算出する基準姿勢算出ステップと、算出された前記基準姿勢と自分の前記絶対的な姿勢との差を算出する差分算出ステップと、算出された前記基準姿勢との差に対応する第２の力またはトルクを決定するとともに、前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する第１の決定ステップと、操作者が前記第３の力またはトルクを知覚するように、前記第１の操作部を制御する第１の制御ステップとを実行し、前記第２マスタマニピュレータにおいて、前記第２の操作部の操作開始時の標準姿勢に対する相対的な姿勢を検出する第２の検出ステップと、前記第２の操作部の前記相対的な姿勢を送出する第２の送出ステップと、前記スレーブマニピュレータが送出する前記第１の力またはトルクを取得する第２の取得ステップと、前記相対的な姿勢に対応する力またはトルクを第４の力またはトルクとして決定するとともに、前記第２の取得ステップの処理で取得された前記第１の力またはトルクと前記第４の力またはトルクとを加算して、操作者に知覚させる第５の力またはトルクを決定する第２の決定ステップと、操作者が前記第５の力またはトルクを知覚するように、前記第２の操作部を制御する第２の制御ステップとを実行し、前記スレーブマニピュレータにおいて、前記複数の第１マスタマニピュレータの前記第１の送出ステップの処理により送出された前記第１の操作部の絶対的な姿勢と、前記第２マスタマニピュレータの前記第２の送出ステップの処理により送出された前記第２の操作部の前記相対的な姿勢とを取得する第３の取得ステップと、取得された前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値である前記基準姿勢と、前記第２マスタマニピュレータの前記相対的な姿勢との加算値を算出する統合ステップと、前記統合ステップの処理により算出された前記加算値に基づいて、前記処理部の姿勢を制御する第３の制御ステップと、前記処理部が前記処理対象物から受けた前記第１の力またはトルクを検出する第３の検出ステップと、前記第１の力またはトルクを送出する第３の送出ステップとを実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００２７】
本発明のマニピュレータシステムおよびその制御方法並びに第１の記録媒体においては、複数の第１マスタマニピュレータそれぞれにおいて、第１の操作部の、第１の操作部が移動可能な空間における絶対的な姿勢が検出され、第１の操作部の絶対的な姿勢が送出され、自分以外の第１マスタマニピュレータが送出する絶対的な姿勢と、スレーブマニピュレータが送出する第１の力またはトルクが取得され、検出された自分の絶対的な姿勢と、取得された自分以外の第１マスタマニピュレータの絶対的な姿勢とを用いて、複数の第１マスタマニピュレータの絶対的な姿勢の平均値が基準姿勢として算出され、算出された基準姿勢と自分の絶対的な姿勢との差が算出され、算出された基準姿勢との差に対応する第２の力またはトルクを決定するとともに、第１の力またはトルクと第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクが決定され、操作者が第３の力またはトルクを知覚するように、第１の操作部が制御される。また、第２マスタマニピュレータにおいては、第２の操作部の操作開始時の標準姿勢に対する相対的な姿勢が検出され、第２の操作部の相対的な姿勢が送出され、スレーブマニピュレータが送出する第１の力またはトルクが取得され、相対的な姿勢に対応する力またはトルクが第４の力またはトルクとして決定されるとともに、取得された第１の力またはトルクと第４の力またはトルクとが加算されて、操作者に知覚させる第５の力またはトルクが決定され、操作者が第５の力またはトルクを知覚するように、第２の操作部が制御される。スレーブマニピュレータにおいては、複数の第１マスタマニピュレータから送出された第１の操作部の絶対的な姿勢と、第２マスタマニピュレータから送出された第２の操作部の相対的な姿勢とが取得され、取得された複数の第１マスタマニピュレータの絶対的な姿勢の平均値である基準姿勢と、第２マスタマニピュレータの相対的な姿勢との加算値が算出され、算出された加算値に基づいて、処理部の姿勢が制御され、処理部が処理対象物から受けた第１の力またはトルクが検出され、送出される。
【００２８】
本発明の第１のマスタマニピュレータは、操作者により操作される操作部を有するマスタマニピュレータにおいて、前記操作部の絶対的な姿勢を検出する検出手段と、検出された前記操作部の絶対的な姿勢を、自分以外の１以上の第１マスタマニピュレータに送出する送出手段と、前記自分以外の１以上の第１マスタマニピュレータが送出する絶対的な姿勢、自分以外の１つの第２マスタマニピュレータが送出する相対的な姿勢、および、スレーブマニピュレータが送出する第１の力またはトルクを取得する取得手段と、前記検出手段により検出された自分の前記絶対的な姿勢と、前記取得手段により取得された自分以外の第１マスタマニピュレータの前記絶対的な姿勢とを用いて、複数のマスタマニピュレータの前記絶対的な姿勢の平均値を、基準姿勢として算出する基準姿勢算出手段と、前記基準姿勢算出手段により算出された前記基準姿勢と自分の前記絶対的な姿勢との差を算出する差分算出手段と、前記差分算出手段により算出された前記基準姿勢との差に対応する第２の力またはトルクを決定するとともに、前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する決定手段と、取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記検出手段により検出された自分の前記絶対的な姿勢とのずれ量が、所定の閾値より小さい場合、操作者が前記第３の力またはトルクを知覚するように、前記操作部を制御し、取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記検出手段により検出された自分の前記絶対的な姿勢とのずれ量が、前記所定の閾値以上である場合、操作者が前記第２の力またはトルクを知覚するように、前記操作部を制御する制御手段とを備えることを特徴とする。
【００２９】
本発明の第１のマスタマニピュレータの制御方法は、操作者により操作される操作部を有するマスタマニピュレータの制御方法において、前記操作部の絶対的な姿勢を検出する検出ステップと、検出された前記操作部の絶対的な姿勢を自分以外の１以上の第１マスタマニピュレータに送出する送出ステップと、前記自分以外の１以上の第１マスタマニピュレータが送出する絶対的な姿勢、自分以外の１つの第２マスタマニピュレータが送出する相対的な姿勢、および、スレーブマニピュレータが送出する第１の力またはトルクを取得する取得ステップと、前記検出ステップの処理により検出された自分の前記絶対的な姿勢と、前記取得ステップの処理により取得された自分以外の第１マスタマニピュレータの前記絶対的な姿勢とを用いて、複数のマスタマニピュレータの前記絶対的な姿勢の平均値を、基準姿勢として算出する基準姿勢算出ステップと、前記基準姿勢算出ステップの処理により算出された前記基準姿勢と自分の前記絶対的な姿勢との差を算出する差分算出ステップと、前記差分算出ステップの処理により算出された前記基準姿勢との差に対応する第２の力またはトルクを決定するとともに、前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する決定ステップと、取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記検出ステップの処理により検出された自分の前記絶対的な姿勢とのずれ量が、所定の閾値より小さい場合、操作者が前記第３の力またはトルクを知覚するように、前記操作部を制御し、取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記検出ステップの処理により検出された自分の前記絶対的な姿勢とのずれ量が、前記所定の閾値以上である場合、操作者が前記第２の力またはトルクを知覚するように、前記操作部を制御する制御ステップとを含むことを特徴とする。
【００３０】
本発明の第２の記録媒体は、操作者により操作される操作部を有するマスタマニピュレータの制御用のコンピュータに、前記操作部の絶対的な姿勢を検出する検出ステップと、検出された前記操作部の絶対的な姿勢を自分以外の１以上の第１マスタマニピュレータに送出する送出ステップと、前記自分以外の１以上の第１マスタマニピュレータが送出する絶対的な姿勢、自分以外の１つの第２マスタマニピュレータが送出する相対的な姿勢、および、スレーブマニピュレータが送出する第１の力またはトルクを取得する取得ステップと、前記検出ステップの処理により検出された自分の前記絶対的な姿勢と、前記取得ステップの処理により取得された自分以外の第１マスタマニピュレータの前記絶対的な姿勢とを用いて、複数のマスタマニピュレータの前記絶対的な姿勢の平均値を、基準姿勢として算出する基準姿勢算出ステップと、前記基準姿勢算出ステップの処理により算出された前記基準姿勢と自分の前記絶対的な姿勢との差を算出する差分算出ステップと、前記差分算出ステップの処理により算出された前記基準姿勢との差に対応する第２の力またはトルクを決定するとともに、前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する決定ステップと、取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記検出ステップの処理により検出された自分の前記絶対的な姿勢とのずれ量が、所定の閾値より小さい場合、操作者が前記第３の力またはトルクを知覚するように、前記操作部を制御し、取得した前記第２マスタマニピュレータの前記相対的な姿勢と、前記検出ステップの処理により検出された自分の前記絶対的な姿勢とのずれ量が、前記所定の閾値以上である場合、操作者が前記第２の力またはトルクを知覚するように、前記操作部を制御する制御ステップとを実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００３１】
本発明の第１のマスタマニピュレータおよびその制御方法並びに第２の記録媒体においては、操作部の絶対的な姿勢が検出され、検出された操作部の絶対的な姿勢が自分以外の１以上の第１マスタマニピュレータに送出され、自分以外の１以上の第１マスタマニピュレータが送出する絶対的な姿勢、自分以外の１つの第２マスタマニピュレータが送出する相対的な姿勢、および、スレーブマニピュレータが送出する第１の力またはトルクが取得され、検出された自分の絶対的な姿勢と、取得された自分以外の第１マスタマニピュレータの絶対的な姿勢とを用いて、複数のマスタマニピュレータの絶対的な姿勢の平均値が、基準姿勢として算出され、算出された基準姿勢と自分の絶対的な姿勢との差が算出され、算出された基準姿勢との差に対応する第２の力またはトルクが決定されるとともに、第１の力またはトルクと第２の力またはトルクとが加算されて、操作者に知覚させる第３の力またはトルクが決定される。そして、取得した第２マスタマニピュレータの相対的な姿勢と、検出された自分の絶対的な姿勢とのずれ量が、所定の閾値より小さい場合、操作者が第３の力またはトルクを知覚するように、操作部が制御され、取得した第２マスタマニピュレータの相対的な姿勢と、検出された自分の絶対的な姿勢とのずれ量が、所定の閾値以上である場合、操作者が第２の力またはトルクを知覚するように、操作部が制御される。
【００３２】
本発明の第２のマスタマニピュレータは、操作者により操作される操作部を有するマスタマニピュレータにおいて、前記操作部の操作開始時の標準姿勢に対する相対的な姿勢を検出する検出手段と、前記操作部の前記相対的な姿勢をスレーブマニピュレータに送出する送出手段と、前記スレーブマニピュレータが送出する第１の力またはトルクを取得する取得手段と、前記相対的な姿勢に対応する力またはトルクを第２の力またはトルクとして決定するとともに、前記取得手段で取得された前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する決定手段と、前記相対的な姿勢が所定の閾値より小さい場合、操作者が前記第２の力またはトルクを知覚するように、前記操作部を制御し、前記相対的な姿勢が前記所定の閾値以上である場合、操作者が前記第３の力またはトルクを知覚するように、前記操作部を制御する制御手段とを備えることを特徴とする。
【００３３】
本発明の第２のマスタマニピュレータの制御方法は、操作者により操作される操作部を有するマスタマニピュレータの制御方法において、前記操作部の操作開始時の標準姿勢に対する相対的な姿勢を検出する検出ステップと、前記操作部の前記相対的な姿勢をスレーブマニピュレータに送出する送出ステップと、前記スレーブマニピュレータが送出する第１の力またはトルクを取得する取得ステップと、前記相対的な姿勢に対応する力またはトルクを第２の力またはトルクとして決定するとともに、前記取得ステップの処理で取得された前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する決定ステップと、前記相対的な姿勢が所定の閾値より小さい場合、操作者が前記第２の力またはトルクを知覚するように、前記操作部を制御し、前記相対的な姿勢が前記所定の閾値以上である場合、操作者が前記第３の力またはトルクを知覚するように、前記操作部を制御する制御ステップとを含むことを特徴とする。
【００３４】
本発明の第３の記録媒体は、操作者により操作される操作部を有するマスタマニピュレータの制御用のコンピュータに、前記操作部の操作開始時の標準姿勢に対する相対的な姿勢を検出する検出ステップと、前記操作部の前記相対的な姿勢をスレーブマニピュレータに送出する送出ステップと、前記スレーブマニピュレータが送出する第１の力またはトルクを取得する取得ステップと、前記相対的な姿勢に対応する力またはトルクを第２の力またはトルクとして決定するとともに、前記取得ステップの処理で取得された前記第１の力またはトルクと前記第２の力またはトルクとを加算して、操作者に知覚させる第３の力またはトルクを決定する決定ステップと、前記相対的な姿勢が所定の閾値より小さい場合、操作者が前記第２の力またはトルクを知覚するように、前記操作部を制御し、前記相対的な姿勢が前記所定の閾値以上である場合、操作者が前記第３の力またはトルクを知覚するように、前記操作部を制御する制御ステップとを実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００３５】
本発明の第２のマスタマニピュレータおよびその制御方法並びに第３の記録媒体においては、操作部の操作開始時の標準姿勢に対する相対的な姿勢が検出され、操作部の相対的な姿勢がスレーブマニピュレータに送出され、スレーブマニピュレータが送出する第１の力またはトルクが取得され、相対的な姿勢に対応する力またはトルクが第２の力またはトルクとして決定されるとともに、取得された第１の力またはトルクと第２の力またはトルクとが加算されて、操作者に知覚させる第３の力またはトルクが決定される。相対的な姿勢が所定の閾値より小さい場合、操作者が第２の力またはトルクを知覚するように、操作部が制御され、相対的な姿勢が所定の閾値以上である場合、操作者が第３の力またはトルクを知覚するように、操作部が制御される。
【００３６】
本発明のスレーブマニピュレータは、所定の処理対象物に処理を施す処理部を有するスレーブマニピュレータにおいて、複数の第１マスタマニピュレータから送出された、前記第１マスタマニピュレータが有する第１の操作部の絶対的な姿勢と、１つの第２マスタマニピュレータから送出された、前記第２マスタマニピュレータが有する第２の操作部の相対的な姿勢とを取得する取得手段と、取得された前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値である基準姿勢と、前記第２マスタマニピュレータの前記相対的な姿勢との加算値を算出する統合手段と、前記統合手段により算出された前記加算値に基づいて、前記処理部の姿勢を制御する制御手段と、前記処理部が前記処理対象物から受けた力またはトルクを検出する検出手段と、検出された前記力またはトルクを複数の前記第１マスタマニピュレータと前記第２マスタマニピュレータに送出する送出手段とを備えることを特徴とする。
【００３７】
本発明のスレーブマニピュレータの制御方法は、所定の処理対象物に処理を施す処理部を有するスレーブマニピュレータの制御方法において、複数の第１マスタマニピュレータから送出された、前記第１マスタマニピュレータが有する第１の操作部の絶対的な姿勢と、１つの第２マスタマニピュレータから送出された、前記第２マスタマニピュレータが有する第２の操作部の相対的な姿勢とを取得する取得ステップと、取得された前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値である基準姿勢と、前記第２マスタマニピュレータの前記相対的な姿勢との加算値を算出する統合ステップと、前記統合ステップの処理により算出された前記加算値に基づいて、前記処理部の姿勢を制御する制御ステップと、前記処理部が前記処理対象物から受けた力またはトルクを検出する検出ステップと、検出された前記力またはトルクを複数の前記第１マスタマニピュレータと前記第２マスタマニピュレータに送出する送出ステップとを含むことを特徴とする。
【００３８】
本発明の第４の記録媒体は、所定の処理対象物に処理を施す処理部を有するスレーブマニピュレータの制御用のコンピュータに、複数の第１マスタマニピュレータから送出された、前記第１マスタマニピュレータが有する第１の操作部の絶対的な姿勢と、１つの第２マスタマニピュレータから送出された、前記第２マスタマニピュレータが有する第２の操作部の相対的な姿勢とを取得する取得ステップと、取得された前記複数の第１マスタマニピュレータの前記絶対的な姿勢の平均値である基準姿勢と、前記第２マスタマニピュレータの前記相対的な姿勢との加算値を算出する統合ステップと、前記統合ステップの処理により算出された前記加算値に基づいて、前記処理部の姿勢を制御する制御ステップと、前記処理部が前記処理対象物から受けた力またはトルクを検出する検出ステップと、検出された前記力またはトルクを複数の前記第１マスタマニピュレータと前記第２マスタマニピュレータに送出する送出ステップとを実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００３９】
本発明のスレーブマニピュレータおよびその制御方法並びに第４の記録媒体においては、複数の第１マスタマニピュレータから送出された、第１マスタマニピュレータが有する第１の操作部の絶対的な姿勢と、１つの第２マスタマニピュレータから送出された、第２マスタマニピュレータが有する第２の操作部の相対的な姿勢とが取得され、取得された複数の第１マスタマニピュレータの絶対的な姿勢の平均値である基準姿勢と、第２マスタマニピュレータの相対的な姿勢との加算値が算出され、算出された加算値に基づいて、処理部の姿勢が制御される。そして、処理部が処理対象物から受けた力またはトルクが検出され、検出された力またはトルクが複数の第１マスタマニピュレータと第２マスタマニピュレータに送出される。
【００４１】
【発明の実施の形態】
図３は、本発明を適用した手術用マニピュレータシステムにおけるスレーブマニピュレータ側の外観の構成例を示し、図４は、マスタマニピュレータ側の外観の構成例を示している。なお、図３において、図１における場合と対応する部分については、同一の符号を付し、図４において、同一の符号を付すとともに、その数枝に、“−１”を付して表して、適宜、説明を省略する。
【００４２】
スレーブマニピュレータ部３Ｌは、手術台１に固定された基台２１Ｌに取り付けられた、複数のアーム２２Ｌおよび駆動部２３Ｌからなる関節構造を有している。
【００４３】
スレーブマニピュレータ部３Ｌの先端に取り付けられた、把持鉗子、メス、縫合器、または注射器等の処置具で構成される先端部４Ｌには、外部から受ける力Ｆ1（大きさおよび方向）やトルク（例えば、先端部４Ｌの先端に対するトルク）Ｔ1（大きさおよび方向）を検出するセンサー（図示せず）が取り付けられている。
【００４４】
スレーブマニピュレータ部３Ｒは、手術台１に固定された基台２１Ｒに取り付けられた、複数のアーム２２Ｒおよび駆動部２３Ｒからなる関節構造を有している。
【００４５】
スレーブマニピュレータ部３Ｒの先端に取り付けられた、把持鉗子、メス、縫合器、または注射器等の処置具で構成される先端部４Ｒには、外部から受ける力Ｆ1やトルクＴ1を検出するセンサー（図示せず）が取り付けられている。
【００４６】
カメラ部５は、スレーブマニピュレータ部３Ｌの基台２１Ｌのやや下方（患者２の足側）に固定されている基台３１に取り付けられた、複数のアーム３２および駆動部３３からなる関節構造を有している。なお、図３において、基台３１、アーム３２、および駆動部３３の符号は、簡単のため、省略する。
【００４７】
図４に示す操作台７―１乃至７−３は、例えば、手術台１の周辺に設置されている。操作台７−１には、マスタマニピュレータ部８Ｌ−１，８Ｒ−１が、操作台７−２には、マスタマニピュレータ部８Ｌ−２，８Ｒ−２が、そして操作台７−３には、マスタマニピュレータ部８Ｌ−３，８Ｒ−３がそれぞれ取り付けられている。
【００４８】
なお、以下において、マスタマニピュレータ部８Ｌ−１とマスタマニピュレータ部８Ｒ−１を、個々に区別する必要がない場合、これらをまとめて、マスタマニピュレータ部８−１と称する。すなわち、操作台７−１に取り付けられているマスタマニピュレータ部を、マスタマニピュレータ部８−１と称する。他の場合についても同様である。
【００４９】
また、マスタマニピュレータ部８Ｌ−１、マスタマニピュレータ部８Ｌ−２、およびマスタマニピュレータ部８Ｌ−３を、個々に区別する必要がない場合、これらをまとめて、マスタマニピュレータ部８Ｌと称する。すなわち、操作台７−１乃至７−３の左側（操作台７を背にした場合の左側）に設定されているマスタマニピュレータ部を、マスタマニピュレータ部８Ｌと称する。
【００５０】
また、マスタマニピュレータ部８Ｒ−１、マスタマニピュレータ部８Ｒ−２、およびマスタマニピュレータ部８Ｒ−３を、個々に区別する必要がない場合、これらをまとめて、マスタマニピュレータ部８Ｒと称する。すなわち、操作台７−１乃至７−３の右側（操作台７を背にした場合の右側）に設定されているマスタマニピュレータ部を、マスタマニピュレータ部８Ｒと称する。
【００５１】
さらに、マスタマニピュレータ部８Ｌとマスタマニピュレータ部８Ｒを、個々に区別する必要がない場合、これらをまとめて、マスタマニピュレータ部８と称する。すなわち、マスタマニピュレータ部のすべてを、単に、マスタマニピュレータ部８と称する。
【００５２】
マスタマニピュレータ側について、さらに説明を続ける。
【００５３】
マスタマニピュレータ部８Ｌ−１は、操作台７−１に固定された基台４１Ｌ−１に取り付けられた、複数のアーム４２Ｌ−１および駆動部４３Ｌ−１からなる関節構造を有している。マスタマニピュレータ部８Ｒ−１は、操作台７−１に固定された基台４１Ｒ−１に取り付けられた、複数のアーム４２Ｒ−１および駆動部４３Ｒ−１からなる関節構造を有している。
【００５４】
マスタマニピュレータ部８−１は、図１における場合と同様に、操作者Ａにより、操作される。すなわち、マスタマニピュレータ部８Ｌ−１の操作部９Ｌ−１が、操作者Ａの左手で３次元的に移動されるようにして操作され、マスタマニピュレータ部８Ｒ−１の操作部９Ｒ−１が、操作者Ａの右手で３次元的に移動されるようにして操作される。
【００５５】
操作台７−１の付近には、操作者Ａが、マスタマニピュレータ部８−１を操作しながら、そこに表示される映像を見ることができるように、モニタ１０−１が設けられている。モニタ１０−１には、カメラ部５のＣＣＤカメラ６により撮像された映像や、後述する同期取り画面が表示されるようになされている。モニタ１０−１に取り付けられているスピーカ３１−１は、例えば、後述する同期取り音声を出力する。
【００５６】
操作台７−１の付近にはまた、操作者Ａが、マスタマニピュレータ部８−１を操作しながら操作できるように、スイッチ部３２−１が設けられている。スイッチ部３２−１は、参加スイッチ３３−１と同期開始スイッチ３４−１により構成されている。参加スイッチ３３−１および同期開始スイッチ３４−１については後述する。
【００５７】
マスタマニピュレータ部８Ｌ−２は、操作台７−２に固定された基台４１Ｌ−２に取り付けられた、複数のアーム４２Ｌ−２および駆動部４３Ｌ−２からなる関節構造を有している。マスタマニピュレータ部８Ｒ−２は、操作台７−２に固定された基台４１Ｒ−２に取り付けられた、複数のアーム４２Ｒ−２および駆動部４３Ｒ−２からなる関節構造を有している。
【００５８】
マスタマニピュレータ部８−２は、操作者Ｂにより操作される。具体的には、マスタマニピュレータ部８Ｌ−２の操作部９Ｌ−２が、操作者Ｂの左手で３次元的に移動されるようにして操作され、マスタマニピュレータ部８Ｒ−２の操作部９Ｒ−２が、操作者Ｂの右手で３次元的に移動されるようにして操作される。
【００５９】
操作台７−２の付近には、操作者Ｂが、マスタマニピュレータ部８−２を操作しながら、そこに表示される映像を見ることができるように、モニタ１０−２が設けられている。モニタ１０−２には、カメラ部５のＣＣＤカメラ６により撮像された映像や、同期取り画面が表示されるようになされている。モニタ１０−２に取り付けられているスピーカ３１−２は、例えば、同期取り音声を出力する。
【００６０】
操作台７−２の付近にはまた、操作者Ｂが、マスタマニピュレータ部８−２を操作しながら操作できるように、スイッチ部３２−２が設けられている。スイッチ部３２−２は、参加スイッチ３３−２と同期開始スイッチ３４−２により構成されている。
【００６１】
マスタマニピュレータ部８Ｌ−３は、操作台７−３に固定された基台４１Ｌ−３に取り付けられた、複数のアーム４２Ｌ−３および駆動部４３Ｌ−３からなる関節構造を有している。マスタマニピュレータ部８Ｒ−３は、操作台７−３に固定された基台４１Ｒ−３に取り付けられた、複数のアーム４２Ｒ−３および駆動部４３Ｒ−３からなる関節構造を有している。
【００６２】
マスタマニピュレータ部８−３は、操作者Ｃにより操作される。具体的には、マスタマニピュレータ部８Ｌ−３の操作部９Ｌ−３が、操作者Ｃの左手で３次元的に移動されるようにして操作され、マスタマニピュレータ部８Ｒ−３の操作部９Ｒ−３が、操作者Ｃの右手で３次元的に移動されるようにして操作される。
【００６３】
操作台７−３の付近には、操作者Ｃが、マスタマニピュレータ部８−３を操作しながら、そこに表示される映像を見ることができるように、モニタ１０−３が設けられている。モニタ１０−３には、カメラ部５のＣＣＤカメラ６により撮像された映像や、同期取り画面が表示されるようになされている。モニタ１０−３に取り付けられているスピーカ３１−３は、例えば、同期取り音声を出力する。
【００６４】
操作台７−３の付近にはまた、操作者Ｃが、マスタマニピュレータ部８−３を操作しながら操作できるように、スイッチ部３２−３が設けられている。スイッチ部３２−３は、参加スイッチ３３−３と同期開始スイッチ３４−３により構成されている。
【００６５】
ところで、操作者が、マスタマニピュレータ部８の操作部９を、所定の状態（例えば、それぞれ所定の角度の、ロール（roll）回転、ピッチ（pitch）回転、およびヨー（yaw）回転した状態）で、操作部９の作用点が所定の位置（座標（ｘ、ｙ、ｚ）で特定される位置）を経由するように操作しようとしても、実際の操作と目標とする操作に、ずれが生じる場合がある。
【００６６】
なお、ヨー回転とは、図５に示すように、Ｘ軸およびＹ軸の、Ｚ軸に対する回転であり、その回転角度は、図中、θｙで示されている。ピッチ回転とは、Ｚ軸、およびθyだけヨー回転したＸ軸（図中、Ｘ’）の、ヨー回転したＹ軸（図中、Ｙ’）に対する回転であり、その回転角度は、図中、θpで示されている。ロール回転とは、θyだけヨー回転したＹ軸（図中、Ｙ’）、およびθpだけピッチ回転したＺ軸（図中、Ｚ’）の、θyだけヨー回転した後さらにθpだけピッチ回転したＸ軸（図中、ｘ軸）に対する回転であり、その回転角度は、図中、θrで示されている。
【００６７】
例えば、図６（Ａ）に示すような、所定の位置Ａから、一定のふくらみをもって位置Ｂに至る軌跡（目標軌跡）を描くように、スレーブマニピュレータ部３の先端部４を移動させたい場合、操作者Ａ乃至Ｃのそれぞれは、目標軌跡に対応した軌跡（スレーブマニピュレータ部３およびマスタマニピュレータ部８の大きさ等、その構造の違いにもよるが、ここでは、簡単のために同じ軌跡）を描くように、マスタマニピュレータ部８―１乃至８−３の操作部９−１乃至９−３を移動させようとするが、実際には、操作者Ａ乃至Ｃのマスタマニピュレータ部８（操作部９）に対する操作技術のレベルにもよるが、図６（Ｂ）の実線で示すように、図６（Ｂ）の点線で示される目標軌跡からずれた軌跡（操作軌跡）を描くように、操作部９を移動させてしまうことがある。
【００６８】
しかしながら、通常、操作軌跡と目標軌跡とのずれは、無作為に発生するため（一定の傾向をもって発生するものではないため）、複数の操作軌跡（操作者Ａ、操作者Ｂ、および操作者Ｃの操作軌跡（図６（Ｂ））を平均することにより、目標軌跡により近い軌跡を得ることができる。
【００６９】
そこで、本発明によれば、図４に示すように、複数（この例の場合、３個）のマスタマニピュレータ部８―１乃至８−３（マスタマニピュレータ部８Ｌ−１乃至８Ｌ−３、またはマスタマニピュレータ部８Ｒ−１乃至８Ｒ−３）に対する操作内容を統合し（例えば、平均し）、統合した（平均した）操作内容に基づいて、１個のスレーブマニピュレータ部３（スレーブマニピュレータ部３Ｌまたはスレーブマニピュレータ部３Ｒ）を遠隔操作するようにしたので、例えば、目標軌跡に近い軌跡（図６（Ｃ））を描くようにスレーブマニピュレータ部３の先端部４を移動させることができる。
【００７０】
なお、図６（Ａ）中、点線の矢印は、軌跡の方向を示し、図６（Ｂ）中の点線の矢印は、操作部９の移動方向を示し、図６（Ｃ）中の点線は、先端部４の移動方向を示している。
【００７１】
図７は、手術用マニピュレータシステムの内部の構成例を示している。
【００７２】
スレーブマニピュレータ部３を制御するスレーブマニピュレータ制御装置５１およびカメラ部５を制御するカメラ制御装置５２のそれぞれが、ネットワーク６１に接続されている。
【００７３】
ネットワーク６１にはまた、マスタマニピュレータ部８−１を制御するマスタマニピュレータ制御装置５３−１、マスタマニピュレータ部８−２を制御するマスタマニピュレータ制御装置５３−２、およびマスタマニピュレータ部８−３を制御するマスタマニピュレータ制御装置５３−３が接続されている。
【００７４】
ネットワーク６１にはさらに、モニタ１０−１、スピーカ３１−１、およびスイッチ部３２−１を制御する入出力制御装置５４−１、モニタ１０−２、スピーカ３１−２、およびスイッチ部３２−２を制御する入出力制御装置５４−２、並びにモニタ１０−３、スピーカ３１−３、およびスイッチ部３２−３を制御する入出力制御装置５４−３が接続されている。
【００７５】
スレーブマニピュレータ制御装置５１は、例えば、マスタマニピュレータ制御装置５３−１乃至５３−３のそれぞれによりネットワーク６１に送出された、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢パラメータを取得し、その姿勢パラメータに基づいて、スレーブマニピュレータ部３の先端部４の姿勢パラメータを決定する。
【００７６】
スレーブマニピュレータ部３の先端部４の姿勢パラメータは、先端部４（作用点）の位置を示す座標である、Ｘ軸の値、Ｙ軸の値、およびＺ軸の値の３個のパラメータと、先端部４の状態を特定するθy、θp、およびθrの３個のパラメータの合計６個のパラメータから構成されている。なお、先端部４の位置は、先端部４が移動可能な空間上の所定の位置（例えば、基台２１と手術台１との接面の中心位置）を基準とするものである。また先端部４の状態は、例えば、先端部４上に定義した直交座標系のＸ軸、Ｙ軸、およびＺ軸と先端部４が移動可能な空間上に定義した直交座標系のＸ軸、Ｙ軸、およびＺ軸の方向が一致する場合の状態を基準とするものである。
【００７７】
マスタマニピュレータ部８の操作部９の姿勢パラメータは、操作部９（作用点）の位置を示す座標である、Ｘ軸の値、Ｙ軸の値、およびＺ軸の値の３個のパラメータと、操作部９の状態を特定するθy、θp、およびθrの３個のパラメータの合計６個のパラメータから構成されている。なお、操作部９の位置は、操作部９が移動可能な空間上の所定の位置（例えば、基台４１と操作台７の接面の中心位置）を基準とするものである。また操作部９の状態は、例えば、操作部９上に定義した直交座標系のＸ軸、Ｙ軸、およびＺ軸と操作部９が移動可能な空間上に定義した直交座標系のＸ軸、Ｙ軸、およびＺ軸の方向が一致する場合の状態を基準とするものである。
【００７８】
スレーブマニピュレータ制御装置５１は、スレーブマニピュレータ部３の操作部４の位置および状態（以下、個々に区別する必要がない場合、単に、姿勢と称する）が、算出した姿勢パラメータに対応する姿勢をとるように、スレーブマニピュレータ部３を制御する。スレーブマニピュレータ制御装置５１はまた、算出した姿勢パラメータ（操作部４の姿勢の姿勢パラメータ）を、ネットワーク６１上に送出する。
【００７９】
スレーブマニピュレータ装置５１はまた、スレーブマニピュレータ部３の先端部４により検出された、先端部４が外部（患者１の腹腔内）から受けた力Ｆ1やトルクＴ1を、ネットワーク６１上に送出する。
【００８０】
図８は、スレーブマニピュレータ制御装置５１の構成例を示している。
【００８１】
制御部７１は、通信部７４を介して受信した、マスタマニピュレータ制御装置５３―１乃至５３−３のそれぞれによりネットワーク６１上に送出された、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢パラメータに基づいて、スレーブマニピュレータ部３の先端部４の姿勢パラメータを算出し、姿勢遷移機構部７２に供給するとともに、通信部７４を介して、ネットワーク６１に送出する。
【００８２】
制御部７１はまた、制御機構部７３から供給される、スレーブマニピュレータ部３の先端部４により検出された、先端部４が外部から受けた力Ｆ1やトルクＴ1を、通信部７４を介して、ネットワーク６１上に送出する。
【００８３】
姿勢遷移機構部７２は、スレーブマニピュレータ部３の先端部４の姿勢を、現在の姿勢から、制御部７１から供給された姿勢パラメータに対応する姿勢に遷移させるための姿勢遷移情報を生成し、これを制御機構部７３に送出する。
【００８４】
制御機構部７３は、姿勢遷移機構部７２からの姿勢遷移情報に従って、制御信号を生成し、これを、スレーブマニピュレータ部３の駆動部２３に供給する。駆動部２３は、供給された制御信号に従って、アーム２２を駆動する。これにより、先端部４は、制御部７１により算出された姿勢パラメータに対応する姿勢をとることができる。
【００８５】
制御機構部７３はまた、スレーブマニピュレータ部３の先端部４により検出された、先端部４が外部から受けた力Ｆ1やトルクＴ1を取得し、制御部７１に供給する。
【００８６】
図７に戻り、カメラ制御装置５２は、カメラ部５のＣＣＤカメラ６による撮像により得られた画像データを、ネットワーク６１を介して入出力制御装置５４−１乃至５４−３に送出する。
【００８７】
マスタマニピュレータ制御装置５３−１は、マスタマニピュレータ部８−１の操作部９−１の姿勢パラメータを検出し、ネットワーク６１上に送出する。
【００８８】
マスタマニピュレータ制御装置５３−１は、スレーブマニピュレータ制御装置５１によりネットワーク６１上に送出された、スレーブマニピュレータ部３の先端部４の姿勢パラメータを、マスタマニピュレータ部８−１の操作部９―１の姿勢パラメータとの差を算出するための基準の姿勢パラメータ（以下、基準姿勢パラメータと称する）として取得し、また先端部４が受けた力Ｆ1やトルクＴ1を取得する。
【００８９】
マスタマニピュレータ制御装置５３−１は、検出したマスタマニピュレータ部８−１の操作部９−１の姿勢パラメータと、取得した基準姿勢パラメータとの差を算出するとともに、算出した差と、取得した力Ｆ1およびＴ1に基づいて、操作者Ａに知覚させる力ＦoやトルクＴoを算出する。
【００９０】
マスタマニピュレータ制御装置５３−１は、マスタマニピュレータ部８―１の操作部９―１を操作する操作者Ａが、算出した力ＦoとトルクＴoを知覚するように、マスタマニピュレータ部８―１を制御する。
【００９１】
図９は、マスタマニピュレータ制御装置５３−１の構成例を示している。
【００９２】
制御部８１−１は、制御機構部８３−１から、マスタマニピュレータ部８−１の操作部９−１の姿勢パラメータの供給を受けるとともに、それを、通信部８４−１を介して、ネットワーク６１上に送出する。
【００９３】
制御部８１−１はまた、通信部８４−１を介して取得した、スレーブマニピュレータ制御装置５１によりネットワーク６１上に送出された姿勢パラメータ（スレーブマニピュレータ部３の先端部４の姿勢パラメータ）および力Ｆ1とトルクＴ1（先端部４が外部から受けた力とトルク）に基づいて、力ＦoとトルクＴoを算出し、制御機構部８３−１に供給する。
【００９４】
制御機構部８３−１は、制御部８１−１から供給された力Ｆ0とトルクＴ0に従って、制御信号を生成し、これを、マスタマニピュレータ部８−１の駆動部４３−１に送出する。駆動部４３−１は、制御信号に従ってアーム４２−１を駆動する。これにより、マスタマニピュレータ部８−１の操作部９−１は、制御部８１−１により算出された力Ｆ0とトルクＴ0を呈示することができる。
【００９５】
制御機構部８３−１はまた、マスタマニピュレータ部８−１の操作部９−１の姿勢パラメータを検出し、制御部８１−１に供給する。
【００９６】
図１０，１１は、マスタマニピュレータ制御装置５３−２，５３−３の構成例を示すが、それらは、マスタマニピュレータ制御装置５３−１と同様の構成を有しているので、その説明は省略する。
【００９７】
図７に再度戻り、入出力制御装置５４−１は、カメラ制御装置５２からネットワーク６１を介して供給された画像データまたはマスタマニピュレータ制御装置５３−１から供給された画像データに対応する画像を、モニタ１０−１に供給して表示させる。入出力制御装置５４−１はまた、マスタマニピュレータ制御装置５３−１から供給された音声データを、スピーカ３１−１に供給して出力させる。
【００９８】
入出力制御装置５４−１はまた、スイッチ部３２−１の参加スイッチ３３−１や同期開始スイッチ３４−１が操作されたとき、その旨を、マスタマニピュレータ制御装置５３−１乃至５３−３に通知する。
【００９９】
入出力制御装置５４−２，５４−３は、入出力制御装置５４−１と、同様の構成を有しているので、その説明は省略する。
【０１００】
次に、スレーブマニピュレータ制御装置５１の動作を、図１２のフローチャートを参照して説明する。
【０１０１】
ステップＳ１において、スレーブマニピュレータ制御装置５１は、スレーブマニピュレータ部３の遠隔操作のための準備処理を開始する。ここでの処理の詳細は、図１３のフローチャートに示されている。
【０１０２】
ステップＳ１１において、スレーブマニピュレータ制御装置５１の制御部７１は、通信部７４を介して、後述する図１５のステップＳ３２で、マスタマニピュレータ制御装置５３−１乃至５３−３により送出された、スレーブマニピュレータ部３の先端部４の姿勢パラメータの提供を要求する信号を受信する。
【０１０３】
ステップＳ１２において、スレーブマニピュレータ部３の先端部４の姿勢パラメータが、ネットワーク６１上に送出される。
【０１０４】
具体的には、スレーブマニピュレータ制御装置５１の制御機構部７３は、スレーブマニピュレータ部３の先端部４の姿勢パラメータを検出し、制御部７１に供給する。制御部７１は、制御機構部７３からの姿勢パラメータを、通信部７４を介して、ネットワーク６１上に送出する。
【０１０５】
その後、処理は終了し、図１２のステップＳ２に進む。
【０１０６】
ステップＳ２において、スレーブマニピュレータ制御装置５１の制御部７１は、通信部７４を介して、後述する図１４のステップＳ２２で、マスタマニピュレータ制御装置５３−１乃至５３−３によりネットワーク６１上に送信された、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢パラメータを取得する。
【０１０７】
ステップＳ３において、制御部７１は、ステップＳ２で取得した、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢パラメータを、それぞれ１／３の重み付け値で、重み付け加算する。
【０１０８】
すなわち、例えば、操作部９−１乃至９−３（作用点）の位置を示すそれぞれの座標の平均が算出される。
【０１０９】
ステップＳ４において、制御部７１は、ステップＳ３での重み付け加算の結果としての姿勢パラメータを、通信部７４を介してネットワーク６１上に送出する。
【０１１０】
次に、ステップＳ５において、先端部４が、ステップＳ３での重み付け加算の結果としての姿勢パラメータに対応する姿勢をとるように、スレーブマニピュレータ部３が制御される。
【０１１１】
具体的には、スレーブマニピュレータ制御装置５１の制御部７１は、ステップＳ３での重み付け加算の結果としての姿勢パラメータを、姿勢遷移機構部７２に供給する。姿勢遷移機構部７２は、スレーブマニピュレータ部３の先端部４の姿勢を、現在の姿勢から、制御部７１から供給された姿勢パラメータに対応する姿勢に遷移させるための姿勢遷移情報を生成し、制御機構部７３に供給する。
【０１１２】
制御機構部７３は、姿勢遷移機構部７２からの姿勢遷移情報に従って制御信号を生成し、これを、スレーブマニピュレータ部３の駆動部２３に送出する。駆動部２３は、制御信号に従って、アーム２２を駆動する。先端部４は姿勢を変化させ、ステップＳ３での重み付け加算の結果としての姿勢パラメータに対応する姿勢をとる。
【０１１３】
ステップＳ６において、ステップＳ５での制御で、スレーブマニピュレータ部３の先端部４が姿勢を変化させることで、先端部４が外部（患者２の腹腔内）から受けた力Ｆ1とトルクＴ1が、ネットワーク６１上に送出される。
【０１１４】
具体的には、スレーブマニピュレータ制御装置５１の制御機構部７３は、スレーブマニピュレータ部３の先端部４により、このとき検出された、先端部４が受けた力Ｆ1とトルクＴ1を取得し、制御部７１に供給する。制御部７１は、供給された力Ｆ1とトルクＴ1を、通信部７４を制御して、ネットワーク６１上に送出させる。
【０１１５】
その後、ステップＳ２に戻り、それ以降の処理が実行される。
【０１１６】
なお、以上において、ステップＳ３では、ステップＳ２で取得された、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３のそれぞれの姿勢パラメータが、１／３の重み付け値で重み付け加算されたが、すなわち、平均が算出されたが、例えば、熟練した操作者により操作されるマスタマニピュレータ部８の操作部９の姿勢パラメータの重み付け値を大きくし、未熟な操作者により操作された操作部９の姿勢パラメータの重み付け値を小さくするようにすることもできる。
【０１１７】
次に、マスタマニピュレータ制御装置５３−１乃至５３―３の動作を、図１４のフローチャートを参照して説明する。
【０１１８】
ステップＳ２１において、マスタマニピュレータ制御装置５３−１乃至５３−３は、スレーブマニピュレータ部３の遠隔操作のための準備処理を開始する。ここでの処理の詳細は、図１５のフローチャートに示されている。
【０１１９】
ステップＳ３１において、マスタマニピュレータ制御装置５３−１乃至５３−３のそれぞれは、入出力制御装置５４−１乃至５４−３から、スイッチ部３２−１乃至３２−３の参加スイッチ３３−１乃至３３−３が操作された旨の通知を受ける。
【０１２０】
この例の場合、操作者Ａが、参加スイッチ３３−１を、操作者Ｂが、参加スイッチ３３―２を、そして操作者Ｃが、参加スイッチ３３−３を、それぞれ操作するので、入出力制御装置５４−１は、参加スイッチ３３−１が操作された旨をマスタマニピュレータ制御装置５３−１に、入出力制御装置５４−２は、参加スイッチ３３−２が操作された旨をマスタマニピュレータ制御装置５３−２に、そして入出力制御装置５４−３は、参加スイッチ３３−３が操作された旨をマスタマニピュレータ制御装置５３−３に、それぞれ通知する。
【０１２１】
次に、ステップＳ３２において、マスタマニピュレータ制御装置５３―１乃至５３−３の制御部８１−１乃至８１−３のそれぞれは、通信部８４−１乃至８４−３を介して、スレーブマニピュレータ部３の先端部４の姿勢パラメータの提供を要求する信号を、スレーブマニピュレータ制御装置５１に送信する。スレーブマニピュレータ制御装置５１は、それを受信する（図１３のステップＳ１１）。
【０１２２】
ステップＳ３３において、マスタマニピュレータ制御装置５３―１乃至５３−３の制御部８１−１乃至８１−３のそれぞれは、通信部８４−１乃至８４−３を介して、図１３のステップＳ１２で、スレーブマニピュレータ制御装置５１によりネットワーク６１上に送出された、スレーブマニピュレータ部３の先端部４の姿勢パラメータを取得する。
【０１２３】
ステップＳ３４において、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢を、ステップＳ３３で取得された姿勢パラメータ（スレーブマニピュレータ部３の先端部４の姿勢パラメータ）に対応する姿勢にするための処理が行われる。
【０１２４】
具体的には、マスタマニピュレータ制御装置５３―１乃至５３−３の制御部８１−１乃至８１−３のそれぞれは、ステップＳ３３で取得した姿勢パラメータを、マスタマニピュレータ部８の空間に対応する姿勢パラメータに変換し、姿勢遷移機構部８２−１乃至８２―３に供給する。姿勢遷移機構部８２−１乃至８２−３は、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢を、現在の姿勢から、制御部８１−１乃至８１−３から供給された姿勢パラメータに対応する姿勢に遷移させるための姿勢遷移情報を生成し、制御機構部８３−１乃至８３−３に供給する。
【０１２５】
制御機構部８３−１乃至８３−３は、姿勢遷移機構部８２−１乃至８２―３からの姿勢遷移情報に従って制御信号を生成し、これを、マスタマニピュレータ部８−１乃至８−３の駆動部４３−１乃至４３−３に送出する。駆動部４３―１乃至４３−３は、制御信号に従って、アーム４２―１乃至４２−３を駆動する。これにより、操作部９−１乃至９−３は、姿勢を変化させ、ステップＳ３３で取得された、スレーブマニピュレータ部３の先端部４の姿勢パラメータに対応する姿勢をとる。
【０１２６】
次に、ステップＳ３５において、マスタマニピュレータ制御装置５３−１乃至５３−３は、入出力制御装置５４から、スイッチ部３２の同期開始スイッチ３４が操作された旨の通知を受ける。
【０１２７】
この例の場合、操作者Ａが、スイッチ部３２−１の同期開始スイッチ３４−１を操作するので、入出力制御装置５４−１が、同期開始スイッチ３４―１が操作された旨を、マスタマニピュレータ制御装置５３−１乃至５３−３のそれぞれに通知し、マスタマニピュレータ制御装置５３−１乃至５３−３は、その通知を受ける。
【０１２８】
このように、同期スイッチ３４―１が操作された旨が、マスタマニピュレータ制御装置５３−１乃至５３−３のそれぞれに通知されると、ステップＳ３６において、例えば、同期取り画面が、モニタ１０−１乃至１０−３のそれぞれに表示される。
【０１２９】
この例の場合、図１６（Ａ）乃至（Ｄ）に示すように、そこに表示される数値が、値３から値０に、１秒ごとに切り替わるカウント部Ａ、または図１７（Ａ）乃至（Ｄ）に示すように、レベル（図１７中、影が付されている部分）が、最大の状態（図１７（Ａ））から１秒ごとに減少し、３秒後に最小の状態（図１７（Ｄ））になるカウント部Ｂを含む画面が、同期して、モニタ１０−１乃至１０−３に表示される。
【０１３０】
また、同期取り画面を、モニタ１０に表示させる代わりに、例えば、短音が３回だけ鳴った後、長音が１回だけ鳴る音声（同期取り音声）を、同期させて、スピーカ３１から出力させることもできる。
【０１３１】
すなわち、操作者Ａ乃至Ｃは、モニタ１０−１乃至１０−３に、同期取り画面としての、図１６（Ｄ）または図１７（Ｄ）が表示されるタイミングで、またはスピーカ３１−１乃至３１−３から、同期取り音声としての、長音が出力されたタイミングで、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の操作を開始する。
【０１３２】
以上で準備処理は終了し、マスタマニピュレータ制御装置５３−１乃至５３−３の処理は、図１４のステップＳ２２に進む。
【０１３３】
ステップＳ２２において、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢パラメータが、ネットワーク６１上に送出される。
【０１３４】
具体的には、マスタマニピュレータ制御装置５３−１乃至５３−３の制御機構部８３−１乃至８３−３のそれぞれは、マスタマニピュレータ部８―１乃至８−３の操作部９−１乃至９−３の姿勢パラメータを取得し、制御部８１−１乃至８１−３に供給する。
【０１３５】
制御部８１−１乃至８１−３のそれぞれは、通信部８４―１乃至８４−３を制御して、制御機構部８３−１乃至８３−３から供給された姿勢パラメータを、ネットワーク６１上に送出させる。
【０１３６】
このように、ネットワーク６１上に送出された、操作部９−１乃至９−３の姿勢パラメータは、スレーブマニピュレータ制御装置５１により取得される（図１２のステップＳ２）。
【０１３７】
次に、ステップＳ２３において、マスタマニピュレータ制御装置５３−１乃至５３−３の制御部８１−１乃至８１−３のそれぞれは、通信部８４−１乃至８４−３を介して、図１２のステップＳ４で、スレーブマニピュレータ制御装置５１によりネットワーク６１上に送出された、ステップＳ２２で送出された姿勢パラメータ（マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢パラメータ）が重み付け加算された結果（スレーブマニピュレータ部３の操作部４の姿勢パラメータ）を、基準姿勢パラメータとして取得する。
【０１３８】
制御部８１−１乃至８１−３のそれぞれはまた、ステップＳ２４において、通信部８４−１乃至８４−３を介して、図１２のステップＳ６で、スレーブマニピュレータ制御装置５１によりネットワーク６１上に送出された、スレーブマニピュレータ部３の先端部４が外部から受けた力Ｆ1とトルクＴ1を取得する。
【０１３９】
次に、ステップＳ２５において、マスタマニピュレータ制御装置５３−１乃至５３−３の制御部８１−１乃至８１−３のそれぞれは、ステップＳ２２で取得した操作部９−１乃至９−３の姿勢パラメータと、ステップＳ２３で取得した基準姿勢パラメータの差を算出する。
【０１４０】
ステップＳ２６において、マスタマニピュレータ制御装置５３−１乃至５３−３の制御部８１−１乃至８１−３は、ステップＳ２５で算出した差（ずれ）の大きさに比例した大きさで、ずれの方向とは逆方向の力Ｆ2とトルクＴ2を算出する。
【０１４１】
次に、ステップＳ２７において、制御部８１−１乃至８１−３は、ステップＳ２６で算出した力Ｆ2とトルクＴ2のそれぞれに、ステップＳ２４で取得した力Ｆ1およびトルクＴ1に比例する力とトルクを加算し、操作部９−１乃至９−３を保持する操作者Ａ乃至Ｃに知覚させる力ＦoおよびトルクＴoを算出する。すなわち、式（１）に従って、力ＦoおよびトルクＴoが算出される。
Ｆo＝Ｆ2＋αＦ1
Ｔo＝Ｔ2＋βＴ1  …（１）
【０１４２】
なお、例えば、マスタマニピュレータ部８の操作部９を動かすのに、スレーブマニピュレータ部３の先端部４を動かす場合に比べ、より大きな力が必要なとき（いわゆる重いとき）、αおよびβは、１より大きい値となり、また、操作部９を動かすのに、先端部４を動かす場合に比べ、小さな力でよい場合（いわゆる軽いとき）、αおよびβは、１より小さい値となる。また、同じ力でそれらを動かすことができる場合、αおよびβは、１となる。
【０１４３】
次に、ステップＳ２８において、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３を操作する操作者Ａ乃至Ｃのそれぞれに、ステップＳ２７で算出された力ＦoとトルクＴoを知覚させるように、マスタマニピュレータ部８−１乃至８−３が制御される。
【０１４４】
このように、操作者Ａ乃至Ｃに知覚させる力ＦoおよびトルクＴoを、ステップＳ２５で算出されたずれの大きさに比例した大きさで、ずれの方向とは逆方向の力Ｆ2とトルクＴ2と、スレーブマニピュレータ部３の先端部４が受けたに力Ｆ1とトルクＴ1に比例する力とトルクとが加算されたものとしたので、操作者Ａ乃至Ｃに、操作部９−１乃至９−３の姿勢パラメータと、基準姿勢パラメータのずれ、および処理対象物（患者２の腹部内部）から、スレーブマニピュレータ部３の先端部４が受ける反力を意識させることができる。なお、操作者に、力Ｆ2とトルクＴ2のみ、または力Ｆ1またはトルクＴ1に比例する力とトルクのみを知覚させるようにすることもできる。また力のみ、またはトルクのみを知覚させるようにすることもできる。
【０１４５】
その後、ステップＳ２２に戻り、それ以降の処理が実行される。
【０１４６】
なお、以上においては、スレーブマニピュレータ制御装置５１の動作と、マスタマニピュレータ制御装置５３−１乃至５３―３の動作を、それぞれ別個のフローチャート（図１２および図１４）で説明したが、それらの動作を、同じ時間軸上に表すと、図１８に示すようになる。
【０１４７】
例えば、マスタマニピュレータ制御装置５３−１乃至５３−３が、ステップＳ２２で、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢パラメータを、ネットワーク６１上に送出すると、スレーブマニピュレータ制御装置５１は、ステップＳ２で、それらの姿勢パラメータを取得する。なお、図中、ステップＳ４，６，２２のブロックに付された右向きの矢印は、そのステップの処理により、何らかのデータが、ネットワーク６１上に送出されていることを意味している。
【０１４８】
図１９は、本発明を適用した手術用マニピュレータシステムにおけるマスタマニピュレータ側の他の外観の構成例を示している。このマスタマニピュレータ側には、図４に示すマスタマニピュレータ側に、操作台１０１、先端に操作部１０３が取り付けられているマスタマニピュレータ部１０２、モニタ１０４、スピーカ１０５、参加スイッチ１０７および同期開始スイッチ１０８からなるスイッチ部１０６がさらに設けられている。他の部分は、図４の場合と同様である。
【０１４９】
マスタマニピュレータ部１０２Ｌは、操作台１０１に固定された基台１１１Ｌに取り付けられた、複数のアーム１１２Ｌおよび駆動部１１３Ｌからなる関節構造を有している。マスタマニピュレータ部１０２Ｒは、操作台１０１に固定された基台１１１Ｒに取り付けられた、複数のアーム１１２Ｒおよび駆動部１１３Ｒからなる関節構造を有している。
【０１５０】
マスタマニピュレータ部１０２は、操作者Ｄにより操作される。具体的には、マスタマニピュレータ部１０２Ｌの操作部１０３Ｌが、操作者Ｄの左手で３次元的に移動されるようにして操作され、マスタマニピュレータ部１０２Ｒの操作部１０３Ｒが、操作者Ｄの右手で３次元的に移動されるようにして操作される。
【０１５１】
モニタ１０４には、カメラ部５のＣＣＤカメラ６（図３）により撮像された映像が表示されるようになされている。
【０１５２】
図２０は、この手術用マニピュレータシステムの内部の構成例を示している。
このシステムには、図７のシステムに、マスタマニピュレータ部１０２を制御するマスタマニピュレータ制御装置１２１、並びにモニタ１０４、スピーカ１０５、およびスイッチ部１０６を制御する入出力制御装置１２２が、ネットワーク６１にさらに接続されている。
【０１５３】
スレーブマニピュレータ制御装置５１は、この例の場合、マスタマニピュレータ制御装置５３−１乃至５３−３によりネットワーク６１に送出された、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢パラメータ並びにマスタマニピュレータ制御装置１２１によりネットワーク６１に送出された、マスタマニピュレータ部１０２の操作部１０３の姿勢パラメータ（後述する、相対姿勢パラメータ）を取得し、取得したこれらの姿勢パラメータに基づいて、スレーブマニピュレータ部３の先端部４の姿勢パラメータを算出する。
【０１５４】
スレーブマニピュレータ制御装置５１は、スレーブマニピュレータ部３の先端部４が、算出した姿勢パラメータに対応する姿勢をとるように、スレーブマニピュレータ部３を制御する。
【０１５５】
スレーブマニピュレータ装置５１はまた、スレーブマニピュレータ部３の先端部４により検出された、先端部４が外部から受けた力Ｆ1やトルクＴ1を、ネットワーク６１上に送出する。
【０１５６】
マスタマニピュレータ制御装置５３−１は、この例の場合、マスタマニピュレータ部８−１の操作部９−１の姿勢パラメータを検出し、ネットワーク６１上に送出する。
【０１５７】
マスタマニピュレータ制御装置５３−１は、マスタマニピュレータ制御装置５３−２，５３−３によりネットワーク６１上に送出された、マスタマニピュレータ部８−２，８−３の操作部９−２，９−３の姿勢パラメータを取得するとともに、それらの姿勢パラメータおよび操作部９−１の姿勢パラメータの平均を、基準姿勢パラメータとして算出する。さらに、マスタマニピュレータ制御装置５３−１は、基準姿勢パラメータと、操作部９−１の姿勢パラメータとの差（ずれ）を算出する。
【０１５８】
マスタマニピュレータ制御装置５３−１は、スレーブマニピュレータ制御装置５１によりネットワーク６１上に送出された力Ｆ1やトルクＴ1を取得する。マスタマニピュレータ制御装置５３−１は、取得した力Ｆ1とトルクＴ1、並びに算出した差（ずれ）に基づいて、操作者Ａに知覚させる力ＦoやトルクＴoを算出する。
【０１５９】
マスタマニピュレータ制御装置５３−１は、操作者Ａが力ＦoやトルクＴoを知覚するように、マスタマニピュレータ部８―１を制御する。
【０１６０】
マスタマニピュレータ制御装置５３−２乃至５３−３は、マスタマニピュレータ制御装置５３−１と同様の機能を有するので、その説明は省略する。
【０１６１】
なお、図４の例の場合も、基準姿勢パラメータは、マスタマニピュレータ部８―１乃至８−３の操作部９−１乃至９−３の姿勢パラメータの平均であったが、スレーブマニピュレータ部３の先端部４は、この基準姿勢パラメータに対応する姿勢をとるようになされるので、図４の例の場合、基準姿勢パラメータは、先端部４の姿勢パラメータであるともいうことができた。
【０１６２】
これに対して、図１９の例では、スレーブマニピュレータ部３の先端部４の姿勢は、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢パラメータの他、マスタマニピュレータ部１０２の操作部１０３の姿勢パラメータに基づいて決定されるので、図１９の例の場合、基準姿勢パラメータと、先端部４の姿勢パラメータとは異なる。
【０１６３】
マスタマニピュレータ制御装置１２１は、マスタマニピュレータ部１０２の操作部１０３の姿勢パラメータを取得するとともに、所定の姿勢（以下、操作開始時の姿勢）の姿勢パラメータ（以下、操作開始姿勢パラメータと称する）との差を算出する。すなわち、操作部１０３の姿勢パラメータと、操作開始姿勢パラメータとの差は、マスタマニピュレータ部１０２の操作部１０３の、操作開始時の姿勢に対する相対的な姿勢であり、その相対的な姿勢の姿勢パラメータを、以下において、適宜、相対姿勢パラメータと称する。
【０１６４】
なお、操作開始時の姿勢において操作部１０３は、例えば、操作者Ｄが操作部１０３を無理なく保持することができる場所、例えば、マスタマニピュレータ部１０２を操作するために、モニタ１０４と操作台１０１の間に立っている操作者Ｄの胸の高さで、操作者Ｄのやや前方の場所に位置するようになされている。
【０１６５】
マスタマニピュレータ制御装置１２１は、算出した、マスタマニピュレータ部１０２の操作部１０３の姿勢パラメータと、操作開始姿勢パラメータとの差を、相対姿勢パラメータとして、ネットワーク６１に送出する。
【０１６６】
マスタマニピュレータ制御装置１２１はまた、スレーブマニピュレータ制御装置５１によりネットワーク６１上に送出された力Ｆ1とトルクＴ1を取得し、取得した力Ｆ1とトルクＴ1、並びに算出した、操作部１０３の姿勢パラメータと操作開始姿勢パラメータとの差に基づいて、操作者Ｄに知覚させる力ＦoおよびトルクＴoを算出する。
【０１６７】
マスタマニピュレータ制御装置１２１は、操作者Ｄが力ＦoとトルクＴoを知覚するように、マスタマニピュレータ部１０２を制御する。
【０１６８】
図２１は、マスタマニピュレータ制御装置１２１の構成例を示す。
【０１６９】
制御部１３１は、制御機構部１３３から供給された、マスタマニピュレータ部１０２の操作部１０３の姿勢パラメータと、内蔵する記憶部（図示せず）に記憶されている操作開始姿勢パラメータとの差を算出するとともに、その算出結果を操作部１０３の相対姿勢パラメータとして、通信部１３４を介して出力する。
【０１７０】
制御部１３１はまた、通信部１３４を介して、スレーブマニピュレータ制御装置５１によりネットワーク６１上に送出された力Ｆ1およびトルクＴ1を取得するとともに、取得した力Ｆ1とトルクＴ1、並びに算出した、マスタマニピュレータ部１０２の操作部１０３の姿勢パラメータと操作開始姿勢パラメータとの差に基づいて、力ＦoおよびトルクＴoを算出し、制御機構部１３３に供給する。
【０１７１】
制御機構部１３３は、制御部１３１から供給された力Ｆ0とトルクＴ0に従って、制御信号を生成し、これを、マスタマニピュレータ部１０２の駆動部１１３に送出する。駆動部１１３は、制御信号に従ってアーム１１２を駆動する。これにより、マスタマニピュレータ部１０２の操作部１０３は、制御部１３１により算出された力Ｆ0とトルクＴ0を呈示することができる。
【０１７２】
制御機構部１３３はまた、マスタマニピュレータ部１０２の操作部１０３の姿勢パラメータを検出し、制御部１３１に、適宜供給する。
【０１７３】
図２０に戻り、入出力制御装置１２２は、カメラ制御装置５２からネットワーク６１を介して供給された画像データに対応する画像を、モニタ１０４に供給して表示させる。
【０１７４】
入出力制御装置１２２はまた、スイッチ部１０６の参加スイッチ１０７や同期開始スイッチ１０８が操作されたとき、その旨を、マスタマニピュレータ制御装置１２１に通知する。
【０１７５】
次に、スレーブマニピュレータ制御装置５１の動作を、図２２のフローチャートを参照して、マスタマニピュレータ制御装置５３−１乃至５３−３の動作を、図２３のフローチャートを参照して、そしてマスタマニピュレータ制御装置１２１の動作を、図２４，２５のフローチャートを参照して、それぞれ説明するが、はじめに、それらの動作の概略を説明し、その後、操作者Ａ乃至Ｄのマスタマニピュレータ部８―１乃至８−３，１０２の操作方法について、具体例に基づいて説明する。
【０１７６】
スレーブマニピュレータ制御装置５１の動作を、図２２のフローチャートを参照して説明する。
【０１７７】
ステップＳ６１において、スレーブマニピュレータ制御装置５１は、スレーブマニピュレータ部３の遠隔制御のための準備処理を開始する。ここでの処理は、図１２のステップＳ１における場合と同様にして行われるので、その詳細な説明は省略する。
【０１７８】
ステップＳ６２において、スレーブマニピュレータ制御装置５１の制御部７１は、通信部７４を介して、後述する図２３のステップＳ７２で、マスタマニピュレータ制御装置５３−１乃至５３−３によりネットワーク６１上に送信された、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢パラメータ、および図２４のステップＳ９４で、マスタマニピュレータ制御装置１２１によりネットワーク６１上に送出された、マスタマニピュレータ部１０２の操作部１０３の姿勢パラメータ（相対姿勢パラメータ）を取得する。
【０１７９】
ステップＳ６３において、制御部７１は、ステップＳ６２で取得した操作部９−１乃至９−３の姿勢パラメータを、それぞれ１／３の重み付け値で、操作部１０３の相対姿勢パラメータを、１の重み付け値で重み付け加算する。
【０１８０】
次に、ステップＳ６４において、ステップＳ６３での重み付け加算の結果として得られた姿勢パラメータに対応する姿勢をとるように、スレーブマニピュレータ部３が制御される。
【０１８１】
ここでの処理は、図１２のステップＳ５における場合と同様にして行われるので、その具体的な説明は省略する。
【０１８２】
ステップＳ６５において、ステップＳ６４での制御で、スレーブマニピュレータ部３の先端部４が、ステップＳ６３での重み付け加算の結果としての姿勢パラメータに対応する姿勢をとることで、先端部４が外部から受けた力Ｆ1とトルクＴ1が、ネットワーク６１上に送出される。
【０１８３】
ここでの処理は、図１２のステップＳ６における場合と同様にして行われるので、その具体的な説明は省略する。
【０１８４】
その後、ステップＳ６２に戻り、それ以降の処理が実行される。
【０１８５】
次に、マスタマニピュレータ制御装置５３―１乃至５３−３の動作を、図２３のフローチャートを参照して説明する。
【０１８６】
ステップＳ７１において、スレーブマニピュレータ部３の遠隔操作のための準備処理が行われる。ここでの処理は、図１４のステップＳ２１における場合と同様にして行われるので、その詳細な説明は省略する。
【０１８７】
ステップＳ７２において、マスタマニピュレータ部８―１乃至８−３の操作部９−１乃至９−３の姿勢パラメータが、ネットワーク６１上に送出される。
【０１８８】
ここでの処理は、図１４のステップＳ２２における場合と同様にして行われるので、その具体的な説明は省略する。
【０１８９】
ステップＳ７３において、マスタマニピュレータ制御装置５３−１乃至５３−３のそれぞれにおいて、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢パラメータの平均が、基準姿勢パラメータとして算出される。
【０１９０】
具体的には、マスタマニピュレータ制御装置５３−１の制御部８１―１は、通信部８４−１を介して、ステップＳ７２で、ネットワーク６１上に送出された、マスタマニピュレータ部８−２，８−３の操作部９−２，９−３の姿勢パラメータを取得する。そして制御部８１−１は、取得した操作部９−２，９−３の姿勢パラメータと、マスタマニピュレータ部８−１の操作部９−１の姿勢パラメータのそれぞれを、１／３の重み付け値で重み付け加算し、基準姿勢パラメータを算出する。
【０１９１】
マスタマニピュレータ制御装置５３−２の制御部８１―２は、通信部８４−２を介して、ステップＳ７２で、ネットワーク６１上に送出された、マスタマニピュレータ部８−１，８−３の操作部９−１，９−３の姿勢パラメータを取得する。そして制御部８１−２は、取得した操作部９−１，９−３の姿勢パラメータと、マスタマニピュレータ部８−２の操作部９−２の姿勢パラメータのそれぞれを、１／３の重み付け値で重み付け加算し、基準姿勢パラメータを算出する。
【０１９２】
マスタマニピュレータ制御装置５３−３の制御部８１―３は、通信部８４−３を介して、ステップＳ７２で、ネットワーク６１上に送出された、マスタマニピュレータ部８−１，８−２の操作部９−１，９−２の姿勢パラメータを取得する。そして制御部８１−３は、取得した操作部９−１，９−２の姿勢パラメータと、マスタマニピュレータ部８−３の操作部９−３の姿勢パラメータのそれぞれを、１／３の重み付け値で重み付け加算し、基準姿勢パラメータを算出する。
【０１９３】
次に、ステップＳ７４において、マスタマニピュレータ制御装置５３−１乃至５３−３の制御部８１−１乃至８１−３のそれぞれは、通信部８４−１乃至８４−３を介して、図２２のステップＳ６５で、スレーブマニピュレータ制御装置５１によりネットワーク６１上に送出された、スレーブマニピュレータ部３の先端部４が外部から受けた力Ｆ1とトルクＴ1を取得する。
【０１９４】
次に、ステップＳ７５において、マスタマニピュレータ制御装置５３−１乃至５３−３の制御部８１−１乃至８１−３のそれぞれは、ステップＳ７２で取得したマスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢パラメータと、ステップＳ７３で算出した基準姿勢パラメータの差を算出する。
【０１９５】
ステップＳ７６において、制御部８１―１乃至８１−３は、ステップＳ７５で算出した差（ずれ）の大きさに比例した大きさで、ずれの方向とは逆方向の力Ｆ2とトルクＴ2を算出する。
【０１９６】
次に、ステップＳ７７において、制御部８１−１乃至８１−３は、ステップＳ７６で算出した力Ｆ2とトルクＴ2のそれぞれに、ステップＳ７４で取得した力Ｆ1とトルクＴ1に比例する力とトルクを加算し、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３を操作する操作者Ａ乃至Ｃに知覚させる力ＦoおよびトルクＴoを算出する。すなわち、式（１）に従って、力ＦoおよびトルクＴoが算出される。
【０１９７】
ステップＳ７８において、操作者Ａ乃至Ｃのそれぞれに、ステップＳ７７で算出された力ＦoとトルクＴoを知覚させるように、マスタマニピュレータ部８−１乃至８−３が制御される。
【０１９８】
ここでの処理は、図１４のステップＳ２８における場合と同様にして行われるので、その具体的な説明は省略する。
【０１９９】
その後、ステップＳ７２に戻り、それ以降の処理が実行される。
【０２００】
次に、マスタマニピュレータ制御装置１２１の動作を、図２４，図２５のフローチャートを参照して説明する。
ステップＳ９１において、マスタマニピュレータ制御装置１２１は、スレーブマニピュレータ部３の遠隔操作のための準備処理を実行する。ここでの処理の詳細は、図２５のフローチャートに示されている。
【０２０１】
ステップＳ１０１において、マスタマニピュレータ制御装置１２１は、入出力制御装置１２２から、スイッチ部１０６の参加スイッチ１０７が操作された旨の通知を受ける。
【０２０２】
この例の場合、操作者Ｄは、参加スイッチ１０７を操作するので、入出力制御装置１２２は、その旨を、マスタマニピュレータ制御装置１２１に通知する。
【０２０３】
次に、ステップＳ１０２において、マスタマニピュレータ部１０２の操作部１０３に、操作開始時の姿勢をとらせるための処理が行われる。
【０２０４】
具体的には、マスタマニピュレータ制御装置１２１の制御部１３１は、内蔵する記憶部に記憶されている、操作開始姿勢パラメータを読み出す。そして制御部１３１は、読み出した操作開始姿勢パラメータを、姿勢遷移機構部１３２に供給し、姿勢遷移機構部１３２は、マスタマニピュレータ部１０２の操作部１０３の姿勢を、現在の姿勢から、制御部１３１から供給された操作開始姿勢パラメータに対応する姿勢に遷移させるための姿勢遷移情報を生成し、制御機構部１３３に供給する。
【０２０５】
制御機構部１３３は、姿勢遷移機構部１３２からの姿勢遷移情報に従って制御信号を生成し、これを、マスタマニピュレータ部１０２の駆動部１１３に送出する。駆動部１１３は、制御信号に従って、アーム１１２を駆動する。これにより、操作部１０３は、操作開始時の姿勢をとる。
【０２０６】
以上で準備処理は終了し、マスタマニピュレータ制御装置１２１の処理は、図２４のステップＳ９２に進む。
【０２０７】
ステップＳ９２において、マスタマニピュレータ制御装置１２１の制御部１３１は、マスタマニピュレータ部１０２の操作部１０３の姿勢パラメータを取得し、ステップＳ９３において、取得した、操作部１０３の姿勢パラメータと、操作開始姿勢パラメータとの差を算出する。
【０２０８】
次に、ステップＳ９４において、制御部１３１は、通信部１３４を制御して、ステップＳ９３で算出した、操作部１０３の姿勢パラメータと、操作開始姿勢パラメータとの差を相対姿勢パラメータとして、ネットワーク６１に送出させる。
【０２０９】
ステップＳ９５において、制御部１３１は、通信部１３４を介して、図２２のステップＳ６５で、スレーブマニピュレータ制御装置５１によりネットワーク６１上に送出された力Ｆ1とトルクＴ1を取得する。
【０２１０】
次に、ステップＳ９６において、制御部１３１は、ステップＳ９３で算出した差（ずれ）の大きさに比例した大きさで、ずれの方向とは逆方向の力Ｆ2とトルクＴ2を算出する。
【０２１１】
ステップＳ９７において、制御部１３１は、ステップＳ９６で算出した力Ｆ2とトルクＴ2のそれぞれに、ステップＳ９５で取得した力Ｆ1およびトルクＴ1に比例する力とトルクを加算し、操作者Ｄに知覚させる力ＦoおよびトルクＴoを算出する。すなわち、式（１）に従って、力ＦoおよびトルクＴoが算出される。
【０２１２】
なお、例えば、マスタマニピュレータ部１０２の操作部１０３を動かすのに、スレーブマニピュレータ部３の先端部４を動かす場合に比べ、より大きな力が必要なとき（いわゆる重いとき）、αおよびβは、１より大きい値となり、また、操作部１０３を動かすのに、先端部４を動かす場合に比べ、より小さな力でよい場合（いわゆる軽いとき）、αおよびβは、１より小さい値となる。また、同じ力でそれらを動かすことができる場合、αおよびβは、１となる。
【０２１３】
次に、ステップＳ９８において、操作者Ｄに、ステップＳ９７で算出された力ＦoとトルクＴoを知覚させるように、マスタマニピュレータ部１０２が制御される。
【０２１４】
その後、ステップＳ９２に戻り、それ以降の処理が実行される。
【０２１５】
次に、図２６（Ａ）に示すような、図６（Ａ）の目標軌跡上の位置Ｃと位置Ｄの間に、高さＨの突起部が形成される軌跡（目標動作）を描くように、スレーブマニピュレータ部３の先端部４を移動させる場合を例として、操作者Ａ乃至操作者Ｄが、どのようにして操作部９−１乃至９−３、および操作部１０３を操作するかについて説明する。
【０２１６】
この例の場合、操作者Ａ乃至Ｃは、図６（Ａ）の目標軌跡を描くように、マスタマニピュレータ部８−１乃至８−３を移動させる。操作者Ｄは、スレーブマニピュレータ部３の先端部４が、位置Ｃに到達したと判断したとき、マスタマニピュレータ部１０２の操作部１０３を、図２６（Ｂ）に示すように、操作開始時の姿勢（位置）から、高さＨに対応する距離（この例の場合、距離Ｈ）だけ離れた位置Ｘに移動した後、おなじ経路で、操作開始時の姿勢（位置）に戻るように、操作部１０３を操作する。なお、図２６（Ａ）中の点線の矢印は、目標軌跡の方向を示し、図２６（Ｂ）中の点線の矢印は、操作部１０３の移動方向を示している。
【０２１７】
図２４のステップＳ９１での準備処理により、マスタマニピュレータ部１０２の操作部１０３が操作開始時の姿勢をとった後、操作部１０３が移動されなければ、操作部１０３の姿勢パラメータは、操作開始姿勢パラメータであるので、当然、操作開始姿勢パラメータとの差は、零となる（ステップＳ９３）。
【０２１８】
すなわち、スレーブマニピュレータ部３の先端部４が次にとる姿勢（図２２のステップＳ６４）の姿勢パラメータは、マスタマニピュレータ部８−１乃至８−３の操作部９−１乃至９−３の姿勢パラメータのそれぞれが、１／３の重み付け値で、マスタマニピュレータ部１０２の操作部１０３の相対姿勢パラメータが、１の重み付け値で重み付け加算されて算出されることから（ステップＳ６３）、操作者Ａ乃至Ｃのみが、操作部９−１乃至９−３を移動させ、操作者Ｄが、操作部１０３を移動させていない場合（相対姿勢が零である場合）、スレーブマニピュレータ部３の先端部４は、操作部９−１乃至９−３の動きに応じてのみ、動くことになる。
【０２１９】
操作者Ｄは、モニタ１０４に映し出されたスレーブマニピュレータ部３の先端部４の様子を参照しながら、先端部４が、操作部９−１乃至９−３の動きに応じて移動し、位置Ｃに到達したと判断したとき、マスタマニピュレータ部１０２の操作部１０３を、図２６（Ｂ）に示すように、操作開始時の姿勢（位置）から、距離Ｈだけ離れた位置Ｘまで移動した後、同じ経路で、操作開始時の位置まで戻す操作を行う。
【０２２０】
マスタマニピュレータ部１０２の操作部１０３が移動され、姿勢開始時の姿勢（位置）からずれると、算出されたずれ（大きさと方向）が（ステップＳ９３）、相対姿勢パラメータとしてネットワーク６１に送出される（ステップＳ９４）。
【０２２１】
これにより、スレーブマニピュレータ部３の先端部４は、操作部９−１乃至９−３の動きとともに、操作部１０３の動きに応じて動くので、先端部４は、突起部を描くように移動する。
【０２２２】
操作者Ｄは、モニタ１０４を参照して、突起物が形成され、スレーブマニピュレータ部３の先端部４が、位置Ｄまで移動したと判断したとき、マスタマニピュレータ部１０２の操作部１０３の操作を停止する。すなわち、これにより、操作部１０３が、操作開始時の姿勢（位置）に保持され、相対姿勢パラメータが零となるので、これ以降のスレーブマニピュレータ部３の先端部４は、マスタマニピュレータ部８―１乃至８−３の操作部９−１乃至９−３の動きに応じてのみ、位置Ｂまで移動する。
【０２２３】
このようにして、スレーブマニピュレータ部３の先端部４を、図２６（Ｃ）に示すように、目標軌跡に近い軌跡を描くように、移動させることができる。
【０２２４】
次に、図１９の例の場合におけるマスタマニピュレータ制御装置５３−１乃至５３−３の他の動作を、図２７のフローチャートを参照して説明する。
【０２２５】
ステップＳ１１１乃至ステップＳ１１６においては、図２３のステップＳ７１乃至ステップＳ７６における場合と同様の処理が実行されるので、その説明は省略する。
【０２２６】
ステップＳ１１７において、マスタマニピュレータ制御装置５３−１乃至５３−３の制御部８１−１乃至８１−３は、後述する図２８のステップＳ１３４で、マスタマニピュレータ制御装置１２１によりネットワーク６１上に送出された相対姿勢パラメータを、通信部８４−１乃至８４−３を介して取得する。
【０２２７】
次に、ステップＳ１１８において、マスタマニピュレータ制御装置５３−１乃至５３−３の制御部８１―１乃至８１−３のそれぞれは、ステップＳ１１７で取得した相対姿勢パラメータに対応する値（ずれ量）が、所定の閾値Ｔより小さいか否かを判定し、小さいと判定した場合、ステップＳ１１９に進む。
【０２２８】
なお、ずれ量は、例えば、式（２）に示すような値である。
【数１】
0004655175.tif 000002
式中、ｎは、姿勢パラメータの数である。Ｐiは、個々の姿勢パラメータ同士の差であり、Ｗiは、Ｐiの重み付け係数である。
【０２２９】
この例の場合、姿勢パラメータは、位置を特定するＸ軸の値、Ｙ軸の値、およびＺ軸の値の３個のパラメータと、状態を特定するθy、θp、およびθrの３個のパラメータの合計６個のパラメータであるので、ｎ＝６となり、Ｐ1乃至Ｐ6は、操作部１０３の姿勢パラメータのＸ軸の値、Ｙ軸の値、Ｚ軸の値、θy、θp、およびθrのそれぞれと、操作開始姿勢パラメータのＸ軸の値、Ｙ軸の値、Ｚ軸の値、θy、θp、およびθrのそれぞれの差である。Ｗ1乃至Ｗ6は、予め決められたＰ1乃至Ｐ6に対する重み係数である。
【０２３０】
ステップＳ１１９，Ｓ１２０においては、図２３のステップＳ７７，Ｓ７８における場合と同様の処理が実行されるので、その詳細な説明は省略するが、ステップＳ１１６で算出された力Ｆ2とトルクＴ2に、ステップＳ１１４で取得された、スレーブマニピュレータ部３の操作部４が外部から受けた力Ｆ1とトルクＴ1に対応する力とトルクを加算して、力ＦoとトルクＴoが算出され、操作者Ａ乃至Ｃが、そのようにして算出された力ＦoとトルクＴoを知覚するように、マスタマニピュレータ部８−１乃至８−３が制御される。
【０２３１】
一方、ステップＳ１１８で、相対姿勢パラメータに対応する値（ずれ量）が、閾値Ｔより小さくない（それ以上である）と判定された場合、ステップＳ１２１に進み、ステップＳ１１６で算出された力Ｆ2とトルクＴ2を、操作者Ａ乃至Ｃが知覚するように、マスタマニピュレータ部８−１乃至８−３が制御される。
【０２３２】
ステップＳ１２０またはステップＳ１２１の処理の後、ステップＳ１１２に戻り、それ以降の処理が実行される。
【０２３３】
次に、マスタマニピュレータ制御装置１２１の他の動作（上述したマスタマニピュレータ制御装置５３の処理に対応する動作）を、図２８のフローチャートを参照して説明する。
【０２３４】
ステップＳ１３１乃至ステップＳ１３６においては、図２４のステップＳ９１乃至ステップＳ９６における場合と同様の処理が実行されるので、その説明は省略する。
【０２３５】
ステップＳ１３７において、ステップＳ１３３で算出された、マスタマニピュレータ部１０２の操作部１０３の姿勢パラメータと、操作開始姿勢パラメータとの差（相対姿勢パラメータ）に対応する値（ずれ量）が、閾値Ｔ以上であるか否かを判定し、それ以上であると判定した場合、ステップＳ１３８に進む。
【０２３６】
ステップＳ１３８，１３９においては、図２４のステップＳ９７，９８における場合と同様の処理が実行されるので、その詳細な説明は省略するが、ステップＳ１３６で算出された力Ｆ2とトルクＴ2に、ステップＳ１３５で取得された、スレーブマニピュレータ部３の操作部４が外部から受けた力Ｆ1とトルクＴ1に対応する力とトルクを加算して、力ＦoとトルクＴoが算出され、操作者Ｄが、そのようにして算出された力ＦoとトルクＴoを知覚するように、マスタマニピュレータ部１０２が制御される。
【０２３７】
一方、ステップＳ１３７で、マスタマニピュレータ部１０２の操作部１０３の姿勢パラメータと、操作開始姿勢パラメータとの差（相対姿勢パラメータ）に対応する値（ずれ量）が、閾値Ｔ以上ではない（それより小さい）と判定された場合、ステップＳ１４０に進む。
【０２３８】
ステップＳ１４０において、操作者Ｄに、ステップＳ１３６で算出された力Ｆ2およびトルクＴ2を知覚させるように、マスタマニピュレータ部１０２が制御される。
【０２３９】
ステップＳ１３９またはステップＳ１４０での処理の後、ステップＳ１３２に戻り、それ以降の処理が実行される。
【０２４０】
すなわち、図２７および図２８のフローチャートに示した処理では、マスタマニピュレータ部１０２の操作部１０３の相対姿勢パラメータに対応する値（ずれ量）が、閾値Ｔより小さい場合（図２７のステップＳ１１８、図２８のステップＳ１３７）、マスタマニピュレータ部８―１乃至８−３は、操作者Ａ乃至Ｃが、ステップＳ１１６で算出された力Ｆ2とトルクＴ2に加え、スレーブマニピュレータ部３の先端部４が処理対象から受けた反力（ステップＳ１１９）をも知覚するように制御されるが（ステップＳ１２０）、マスタマニピュレータ部１０２は、操作者Ｄが、図２８のステップＳ１３６で算出された力Ｆ2とトルクＴ2のみを知覚するように制御される（ステップＳ１４０）。
【０２４１】
一方、操作部１０３の相対姿勢パラメータに対応する値（ずれ量）が、閾値Ｔ以上である場合、マスタマニピュレータ部８―１乃至８−３は、操作者Ａ乃至Ｃが、ステップＳ１１６で算出された力Ｆ2とトルクＴ2のみを知覚するように制御され（図２７のステップＳ１２１）、マスタマニピュレータ部１０２は、操作者Ｄが、図２８のステップＳ１３６で算出された力Ｆ2とトルクＴ2に加え、スレーブマニピュレータ部３の先端部４が処理対象から受けた反力（ステップＳ１３８）をも知覚するように制御される（ステップＳ１３９）。
【０２４２】
従って、この例の場合、スレーブマニピュレータ部３の先端部４が処理対象から受けた反力は、先端部４が、突起部を形成するように動いている場合は、操作者Ｄが知覚し、それ以外の場合、操作者Ａ乃至Ｃが知覚するようになされている。
【０２４３】
スレーブマニピュレータ制御装置５１は、このとき（マスタマニピュレータ制御装置５３およびマスタマニピュレータ制御装置１２１が、図２７および図２８に示す処理を実行するとき）、図２２に示した処理を実行する。
【０２４４】
なお、以上においては、手術用のマニピュレータシステムを例として説明したが、その他、例えば、宇宙空間における作業や危険地帯での作業用のマニピュレータシステムにおいても、本発明を適用することができる。
【０２４５】
また、本明細書において、記録媒体により提供されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０２４６】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０２４７】
【発明の効果】
本発明のマニピュレータシステム、マニピュレータ制御方法、および第１の記録媒体のプログラムによれば、第１のマスタマニピュレータの第１の操作部の、第１の操作部が移動可能な空間における絶対的な姿勢を検出し、第１の操作部の絶対的な姿勢を送出し、第２のマスタマニピュレータの第２の操作部の、第２の操作部が移動可能な空間における絶対的な姿勢を検出し、第２の操作部の絶対的な姿勢を送出し、送出された第１の操作部の絶対的な姿勢と、送出された第２の操作部の絶対的な姿勢とを取得し、第１の操作部の絶対的な姿勢と第２の操作部の絶対的な姿勢を統合し、統合結果に基づいて、処理部の姿勢を制御するようにしたので、容易に、かつ、精度よく、スレーブマニピュレータを遠隔制御することができる。
【０２４８】
本発明のマスタマニピュレータ、およびマスタマニピュレータ制御方法、および第２の記録媒体のプログラムによれば、操作部の姿勢を検出し、操作部の姿勢をスレーブマニピュレータに送出し、操作部の姿勢と、他のマスタマニピュレータから供給された、他のマスタマニピュレータが有する操作部の姿勢との統合結果に基づいて、スレーブマニピュレータに、スレーブマニピュレータが有する、所定の処理対象物に対して処理を施す処理部を制御するようにしたので、容易に、かつ、精度よく、スレーブマニピュレータを遠隔制御することができる。
【０２４９】
本発明のスレーブマニピュレータ、スレーブマニピュレータ制御方法、および第３の記録媒体のプログラムによれば、第１のマスタマニピュレータから送出された、第１のマスタマニピュレータが有する第１の操作部の姿勢と、第２のマスタマニピュレータから送出された、第２のマスタマニピュレータが有する第２の操作部の姿勢とを取得し、第１の操作部の姿勢と第２の操作部の姿勢とを統合し、統合結果に基づいて、処理部の姿勢を制御するようにしたので、容易に、かつ、精度よく、スレーブマニピュレータを遠隔制御することができる。
【図面の簡単な説明】
【図１】従来の手術用マニピュレータシステムの外観の構成例を示している。
【図２】スレーブマニピュレータ部３の先端部４の動きを説明する図である。
【図３】本発明を適用した手術用マニピュレータシステムにおけるスレーブマニピュレータ側の外観の構成例を示す図である。
【図４】本発明を適用した手術用マニピュレータシステムにおけるマスタマニピュレータ側の外観の構成例を示す図である。
【図５】ヨー回転、ピッチ回転、およびロール回転を説明する図である。
【図６】スレーブマニピュレータ部３の先端部４およびマスタマニピュレータ部８の操作部９の姿勢を説明する図である。
【図７】本発明を適用した手術用マニピュレータシステムの内部の構成例を示したブロック図である。
【図８】図７のスレーブマニピュレータ制御装置５１の構成例を示すブロック図である。
【図９】図７のマスタマニピュレータ制御装置５３−１の構成例を示すブロック図である。
【図１０】図７のマスタマニピュレータ制御装置５３−２の構成例を示すブロック図である。
【図１１】図７のマスタマニピュレータ制御装置５３−３の構成例を示すブロック図である。
【図１２】スレーブマニピュレータ制御装置５１の動作を説明するフローチャートである。
【図１３】図１２のステップＳ１の処理の詳細を説明するフローチャートである。
【図１４】マスタマニピュレータ制御装置５３の動作を説明するフローチャートである。
【図１５】図１４のステップＳ２１の処理の詳細を説明するフローチャートである。
【図１６】同期取り画面の例を示す図である。
【図１７】他の同期取り画面の他の例を示す図である。
【図１８】スレーブマニピュレータ制御装置５１およびマスタマニピュレータ制御装置５３の動作の関係を示す図である。
【図１９】本発明を適用した他の手術用マニピュレータシステムにおけるマスタマニピュレータ側の外観の構成例を示す図である。
【図２０】本発明を適用した他の手術用マニピュレータシステムの内部の構成例を示すブロック図である。
【図２１】図２０のマニピュレータ制御装置１２１の構成例を示すブロック図である。
【図２２】スレーブマニピュレータ制御装置５１の他の動作を説明するフローチャートである。
【図２３】マスタマニピュレータ制御装置５３の他の動作を説明するフローチャートである。
【図２４】マスタマニピュレータ制御装置１２１の動作を説明するフローチャートである。
【図２５】図２４のステップＳ９１の処理の詳細を説明するフローチャートである。
【図２６】マスタマニピュレータ部１０２の操作部１０３の姿勢を説明する図である。
【図２７】マスタマニピュレータ制御装置５３の他の動作を説明するフローチャートである。
【図２８】マスタマニピュレータ制御装置１２１の他の動作を説明するフローチャートである。
【符号の説明】
１  手術台，  ２  患者，  ３  スレーブマニピュレータ部，  ４  先端部，５  カメラ部，  ６  ＣＣＤカメラ，  ７  操作台，  ８  マスタマニピュレータ部，  ９  操作部，  １０  モニタ，  ２１  基台，  ２２  アーム，  ２３  駆動部，  ３１  スピーカ，  ３２  スイッチ部，  ３３  参加スイッチ，３４  同期開始スイッチ，  ５１  スレーブマニピュレータ制御装置，  ５２カメラ制御装置，  ５３  マスタマニピュレータ制御装置，  ５４  入出力制御装置，  ７１  制御部，  ７２  姿勢遷移機構部，  ７３  制御機構部，  ７４  通信部，  ８１  制御部，  ８２  姿勢遷移機構部，  ８３  制御機構部，８４  通信部，  １０１  操作台，  １０２  マスタマニピュレータ部，  １０３  操作部，  １０４  モニタ，  １０５  スピーカ，  １０６  スイッチ部，  １０７  参加スイッチ，  １０８  同期開始スイッチ，  １１１  基台，  １１２  アーム，  １１３  駆動部，  １２１  マスタマニピュレータ制御装置，  １２２  入出力制御装置，  １３１  制御部，  １３２  姿勢遷移機構部，１３３  制御機構部，  １３４  通信部
【図１】
0004655175.tif 000003
【図２】
0004655175.tif 000004
【図３】
0004655175.tif 000005
【図４】
0004655175.tif 000006
【図５】
0004655175.tif 000007
【図６】
0004655175.tif 000008
【図７】
0004655175.tif 000009
【図８】
0004655175.tif 000010
【図９】
0004655175.tif 000011
【図１０】
0004655175.tif 000012
【図１１】
0004655175.tif 000013
【図１２】
0004655175.tif 000014
【図１３】
0004655175.tif 000015
【図１４】
0004655175.tif 000016
【図１５】
0004655175.tif 000017
【図１６】
0004655175.tif 000018
【図１７】
0004655175.tif 000019
【図１８】
0004655175.tif 000020
【図１９】
0004655175.tif 000021
【図２０】
0004655175.tif 000022
【図２１】
0004655175.tif 000023
【図２２】
0004655175.tif 000024
【図２３】
0004655175.tif 000025
【図２４】
0004655175.tif 000026
【図２５】
0004655175.tif 000027
【図２６】
0004655175.tif 000028
【図２７】
0004655175.tif 000029
【図２８】
0004655175.tif 000030