(57)【要約】【課題】  手術ロボットのコンパクト（ｃｏｍｐａｃｔ）設計を可能にして、体積を減少させることができる手術ロボット及びその制御方法を提案する。【解決手段】  手術器具が装着されたロボットアームに作用する外力を算出し、切開孔の中心点が設定されると、ロボットアームに作用する外力をフィルタリングし、切開孔の中心点から外れた手術器具が切開孔の中心点に復帰するようにする仮想力を算出し、算出された仮想力をフィルタリングされた外力に追加して、ロボットアームの動きを制御する。【選択図】      図３
2013132747.tif 000002
【特許請求の範囲】
【請求項１】
手術器具が装着されたロボットアームに作用する外力を算出し、
切開孔の中心点が設定されると、前記ロボットアームに作用する外力をフィルタリングし、
前記切開孔の中心点から外れた前記手術器具が前記切開孔の中心点に復帰するようにする仮想力を算出し、
前記算出された仮想力を前記フィルタリングされた外力に追加して、前記ロボットアームの動きを制御する、手術ロボットの制御方法。
【請求項２】
前記ロボットアームに作用する外力を算出することは、
力／トルクセンサを用いて、前記手術ロボットの動作に関連する関節部をなす各回転関節に作用するトルク情報を検出し、
前記検出されたトルク情報から、下記の数式（１）から算出される前記外力が作用しない状況で、前記ロボットアームが現在の位置又は現在の動きを維持するのに必要な回転関節のトルク情報を引いて、実際に外部から前記ロボットアームに加えた外力による前記回転関節のトルク情報を算出する、請求項１に記載の手術ロボットの制御方法。
【数１５】
2013132747.tif 000017
ここで、ｑは回転関節の回転角度、Ｍは慣性マトリクス（ｉｎｅｒｔｉａ  ｍａｔｒｉｘ）、ｃはコリオリ（Ｃｏｒｉｏｌｉｓ）及びセントリフューガルフォース（Ｃｅｎｔｒｉｆｕｇａｌ  Ｆｏｒｃｅ）、ｇは重力を意味する。
【請求項３】
前記ロボットアームに作用する外力をフィルタリングすることは、前記外部から前記ロボットアームに加えた外力による前記回転関節のトルク情報から、前記手術器具上に存在する遠隔中心が前記切開孔の中心点を外れるようにするトルク情報を除去することである、請求項１または２に記載の手術ロボットの制御方法。
【請求項４】
前記仮想力を算出することは、
前記切開孔の中心点と前記遠隔中心との間に仮想バネ及び仮想ダンパーを装着し、
前記切開孔の中心点と前記遠隔中心との間の偏差を算出し、
前記算出された偏差、前記仮想バネのスティフネス（ｓｔｉｆｆｎｅｓｓ）及び前記仮想ダンパーの係数を用いて前記仮想力を算出する、請求項１乃至３のいずれか一項に記載の手術ロボットの制御方法。
【請求項５】
前記ロボットアームの動きを制御することは、使用者が手で前記手術器具が装着された前記ロボットアームを握って動かし、前記手術器具を前記切開孔に挿入し、手術しようとする領域に位置させる手動位置決めモードで行われる、請求項１乃至４のいずれか一項に記載の手術ロボットの制御方法。
【請求項６】
手術ロボットの動作に関連する関節部をなす各回転関節に作用するトルク情報を検出する力／トルクセンサと、
前記手術器具が装着されたロボットアームに作用する外力を算出し、切開孔の中心点が設定されると、前記ロボットアームに作用する外力をフィルタリングし、前記切開孔の中心点から外れた前記手術器具が前記切開孔の中心点に復帰するようにする仮想力を算出し、前記算出された仮想力を前記フィルタリングされた外力に追加して、前記ロボットアームの動きを制御する制御部と、を含む手術ロボット。
【請求項７】
前記制御部は、前記力／トルクセンサから、前記手術ロボットの動作に関連する関節部をなす各回転関節に作用するトルク情報の入力を受け、前記検出されたトルク情報から、下記の数式（１）から算出される前記外力が作用しない状況で、前記ロボットアームが現在の位置又は現在の動きを維持するのに必要な回転関節のトルク情報を引いて、実際に外部から前記ロボットアームに加えた外力による前記回転関節のトルク情報を算出する、請求項６に記載の手術ロボット。
【数１６】
2013132747.tif 000018
ここで、ｑは回転関節の回転角度、Ｍは慣性マトリクス（ｉｎｅｒｔｉａ  ｍａｔｒｉｘ）、ｃはコリオリ（Ｃｏｒｉｏｌｉｓ）及びセントリフューガルフォース（Ｃｅｎｔｒｉｆｕｇａｌ  Ｆｏｒｃｅ）、ｇは重力を意味する。
【請求項８】
前記制御部は、前記外部から前記ロボットアームに加えた外力による前記回転関節のトルク情報から、前記手術器具上に存在する遠隔中心が前記切開孔の中心点を外れるようにするトルク情報を除去して、前記ロボットアームに作用する外力をフィルタリングする、請求項６または７に記載の手術ロボット。
【請求項９】
前記制御部は、前記切開孔の中心点と前記遠隔中心との間に仮想バネ及び仮想ダンパーを装着し、切開孔の中心点と前記遠隔中心との間の偏差を算出し、算出された偏差、前記仮想バネのスティフネス（ｓｔｉｆｆｎｅｓｓ）及び前記仮想ダンパーの係数を用いて前記仮想力を算出する、請求項６乃至８のいずれか一項に記載の手術ロボット。
【請求項１０】
前記制御部は、使用者が手で前記手術器具が装着された前記ロボットアームを握って動かし、前記手術器具を前記切開孔に挿入し、手術しようとする領域に位置させる手動位置決めモードで前記ロボットアームの動きを制御する、請求項６乃至９のいずれか一項に記載の手術ロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
最小侵襲手術に用いられる手術ロボット及びその制御方法に関する。
【背景技術】
【０００２】
最小侵襲手術（Ｍｉｎｉｍａｌ  Ｉｎｖａｓｉｖｅ  Ｓｕｒｇｅｒｙ）とは、患部の大きさを最小化する手術を通称するもので、腹腔鏡（Ｌａｐａｒｏｓｃｏｐｉｃ  Ｓｕｒｇｅｒｙ）手術や手術ロボットを用いた手術が最小侵襲手術の代表例である。最小侵襲手術は、人体の一部（例：腹部）に大きな切開創を開けて施行する開腹手術とは異なり、腹部に０．５ｃｍ〜１．５ｃｍのサイズの小さな穴（切開孔または侵襲口）を複数開け、切開孔を通じてビデオカメラと各種器具を入れた後、映像を見ながら施行する手術方法である。
【０００３】
このような最小侵襲手術は、開腹手術とは異なり、手術後に痛みが少なく、腸運動の早期回復及び飲食物の早期摂取が可能で、入院期間が短く、正常状態への復帰が早く、切開範囲が狭いので美容効果に優れるという長所を有する。このような長所によって、最小侵襲手術は、胆嚢切除s手術、前立腺癌手術、脱腸矯正手術などに使われており、その分野を次第に広めていく傾向にある。
【０００４】
手術ロボット（ｓｕｒｇｉｃａｌ  ｒｏｂｏｔ）は、医師の操作により必要な信号を生成して伝送するマスター（ｍａｓｔｅｒ）ロボットと、マスターロボットから信号を受けて、患者に直接手術に必要な操作を加えるスレーブ（ｓｌａｖｅ）ロボットとからなり、マスターロボットとスレーブロボットとを統合して構成したり、それぞれ別途の装置で構成して手術室に配置するようになる。
【０００５】
スレーブロボットには、手術のための操作のためにロボットアーム（ａｒｍ）が備えられ、ロボットアームの先端部には、手術器具（ｓｕｒｇｉｃａｌ  ｉｎｓｔｒｕｍｅｎｔｓ）が装着される。ロボットアームの先端に手術器具を装着して手術を行うと、ロボットアームの動きによって手術器具も共に動くことになる。
【０００６】
手術ロボットを用いた最小侵襲手術の場合、使用者（操作者、主に医師）が直接手で手術器具が装着されたロボットアームを握って動かし、手術器具を切開孔に挿入し、手術しようとする領域に位置させる手動位置決めモード（Ｍａｎｕａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｍｏｄｅ）と、操作者がマスターロボットを用いて、患者の体内に挿入された手術器具を遠隔操作する遠隔操作モード（Ｔｅｌｅｏｐｅｒａｔｉｏｎ  Ｍｏｄｅ）とが存在する。上記の２つのモードにおいて共通して、ロボットアームに装着された手術器具が切開孔を損傷しないようにするためには、ロボットアーム（または手術器具）に対する制限的な運動制御が必要である。このような手術器具の制限的な動きが満足されない場合、切開孔が拡張したり、または付随的な患部の出血などにつながり、人体の皮膚に損傷を与える恐れがある。
【０００７】
したがって、ロボットアームの先端に装着される手術器具は、所定の位置に仮想の回動中心点を設定し、この点を中心として手術器具が回動するようにロボットアームを制御する。このような仮想の中心点を‘遠隔中心’または‘ＲＣＭ(Ｒｅｍｏｔｅ  Ｃｅｎｔｅｒ  ｏｆ  Ｍｏｔｉｏｎ）’という。
【０００８】
切開孔の位置を、手術器具の並進（ｔｒａｎｓｌａｔｉｏｎａｌ）運動及び回転（ｒｏｔａｔｉｏｎａｌ）運動に対して固定させ、この点をＲＣＭとして保障するために、従来は、ロボットアームのリンク構造を平行四辺形構造（４節リンク構造）に設計した。４節リンク構造での各リンクは、動きや配置（ｃｏｎｆｉｇｕｒａｔｉｏｎ）に関係なく、構造的に必ず一点を通るようになっており、手動位置決めモードと遠隔調整モードのいずれも別途の措置なしにＲＣＭの具現が可能である。
【０００９】
ロボットアームのＲＣＭを具現する方式は、‘パッシブタイプ（ｐａｓｓｉｖｅ  ｔｙｐｅ）’と‘アクティブタイプ（ａｃｔｉｖｅ  ｔｙｐｅ）’とに大別することができる。パッシブタイプは、機構的な構造を用いてロボットアームのＲＣＭを具現する方式で、アクティブタイプは、制御アルゴリズムを用いてロボットアームのＲＣＭを具現する方式である。
【００１０】
前述した４節リンク構造を用いてＲＣＭを具現する方式は、パッシブタイプで、これは、ロボットアームを支持する手術ロボットの体積を増加させるという問題点がある。また、複数の手術ロボットで手術ロボットシステムを構成する場合、全体システムの体積が大きくなり、広い空間を占有することになる。これによって、作業空間（ｗｏｒｋ  ｓｐａｃｅ）が狭くなり、手術作業中に手術ロボット間の衝突の危険性が高くなるという問題点がある。
【発明の概要】
【発明が解決しようとする課題】
【００１１】
パッシブタイプで、機械的な構造を用いてロボットアームのＲＣＭを具現するのではなく、アクティブタイプで、制御アルゴリズムを用いてロボットアームのＲＣＭを具現することによって、手術ロボットのコンパクト（ｃｏｍｐａｃｔ）設計を可能にして、手術ロボットの体積を減少させることができる手術ロボット及びその制御方法を提案する。
【００１２】
また、アクティブタイプのＲＣＭ具現方式を通じて手術ロボット（または手術ロボットシステム）のコンパクト設計を可能にすることで、既存の汎用直列型ロボットの手術ロボット分野への活用可能性を提供することができる手術ロボット及びその制御方法を提案する。
【００１３】
また、使用者（操作者）が直接手で手術器具が装着されたロボットアームを握って動かし、手術器具を切開孔に挿入し、手術しようとする領域に位置させる手動位置決めモードにおいて、ロボットアームに装着された手術器具が切開孔を損傷しないようにするために、ロボットアーム（または手術器具）の制限的な動きを保障することができる手術ロボット及びその制御方法を提案する。
【課題を解決するための手段】
【００１４】
このために、本発明の一側面は、手術器具が装着されたロボットアームに作用する外力を算出し、切開孔の中心点が設定されると、ロボットアームに作用する外力をフィルタリングし、切開孔の中心点から外れた手術器具が切開孔の中心点に復帰するようにする仮想力を算出し、算出された仮想力をフィルタリングされた外力に追加して、ロボットアームの動きを制御する。
【００１５】
また、ロボットアームの動きを制御することは、使用者が手で手術器具が装着されたロボットアームを握って動かし、手術器具を切開孔に挿入し、手術しようとする領域に位置させる手動位置決めモードで行われる。
【００１６】
また、ロボットアームに作用する外力を算出することは、力／トルクセンサを用いて、手術ロボットの動作に関連する関節部をなす各回転関節に作用するトルク情報を検出し、検出されたトルク情報から、下記の数式（１）から算出される外力が作用しない状況で、ロボットアームが現在の位置又は現在の動きを維持するのに必要な回転関節のトルク情報を引いて、実際に外部からロボットアームに加えた外力による回転関節のトルク情報を算出する。
【００１７】
【数１】
2013132747.tif 000003
ここで、ｑは回転関節の回転角度、Ｍは慣性マトリクス（ｉｎｅｒｔｉａ  ｍａｔｒｉｘ）、ｃはコリオリ（Ｃｏｒｉｏｌｉｓ）及びセントリフューガルフォース（Ｃｅｎｔｒｉｆｕｇａｌ  Ｆｏｒｃｅ）、ｇは重力を意味する。
【００１８】
また、ロボットアームに作用する外力をフィルタリングすることは、外部からロボットアームに加えた外力による回転関節のトルク情報から、手術器具上に存在する遠隔中心が切開孔の中心点を外れるようにするトルク情報を除去する。
【００１９】
また、仮想力を算出することは、切開孔の中心点と遠隔中心との間に仮想バネ及び仮想ダンパーを装着し、切開孔の中心点と遠隔中心との間の偏差を算出し、算出された偏差、仮想バネのスティフネス（ｓｔｉｆｆｎｅｓｓ）及び仮想ダンパーの係数を用いて仮想力を算出する。
【００２０】
本発明の一側面は、手術ロボットの動作に関連する関節部をなす各回転関節に作用するトルク情報を検出する力／トルクセンサと、手術器具が装着されたロボットアームに作用する外力を算出し、切開孔の中心点が設定されると、ロボットアームに作用する外力をフィルタリングし、切開孔の中心点から外れた手術器具が切開孔の中心点に復帰するようにする仮想力を算出し、算出された仮想力をフィルタリングされた外力に追加して、ロボットアームの動きを制御する制御部と、を含む。
【００２１】
また、制御部は、使用者が手で手術器具が装着されたロボットアームを握って動かし、手術器具を切開孔に挿入し、手術しようとする領域に位置させる手動位置決めモードでロボットアームの動きを制御する。
【００２２】
また、制御部は、力／トルクセンサから、手術ロボットの動作に関連する関節部をなす各回転関節に作用するトルク情報の入力を受け、検出されたトルク情報から、下記の数式（１）から算出される外力が作用しない状況で、ロボットアームが現在の位置又は現在の動きを維持するのに必要な回転関節のトルク情報を引いて、実際に外部からロボットアームに加えた外力による回転関節のトルク情報を算出する。
【００２３】
【数２】
2013132747.tif 000004
ここで、ｑは回転関節の回転角度、Ｍは慣性マトリクス（ｉｎｅｒｔｉａ  ｍａｔｒｉｘ）、ｃはコリオリ（Ｃｏｒｉｏｌｉｓ）及びセントリフューガルフォース（Ｃｅｎｔｒｉｆｕｇａｌ  Ｆｏｒｃｅ）、ｇは重力を意味する。
【００２４】
また、制御部は、外部からロボットアームに加えた外力による回転関節のトルク情報から、手術器具上に存在する遠隔中心が切開孔の中心点を外れるようにするトルク情報を除去して、ロボットアームに作用する外力をフィルタリングする。
【００２５】
また、制御部は、切開孔の中心点と遠隔中心との間に仮想バネ及び仮想ダンパーを装着し、切開孔の中心点と遠隔中心との間の偏差を算出し、算出された偏差、仮想バネのスティフネス（ｓｔｉｆｆｎｅｓｓ）及び仮想ダンパーの係数を用いて仮想力を算出する。
【発明の効果】
【００２６】
提案された手術ロボット及びその制御方法によれば、パッシブタイプで、機械的な構造を用いてロボットアームのＲＣＭを具現するのではなく、アクティブタイプで、制御アルゴリズムを用いてロボットアームのＲＣＭを具現することによって、手術ロボットのコンパクト設計を可能にして、手術ロボットの体積を減少させることができる。
【００２７】
また、提案された手術ロボット及びその制御方法によれば、アクティブタイプのＲＣＭ具現方式を通じて手術ロボット（または手術ロボットシステム）のコンパクト設計を可能にすることで、既存の汎用直列型ロボットの手術ロボット分野への活用可能性を提供することができる。
【図面の簡単な説明】
【００２８】
【図１】本発明の実施例に係る手術ロボットの制御ブロック図である。
【図２】本発明の実施例に係る手術ロボットに具現された手動位置決めモードの時のロボットアームの動きを制御する方式を説明するための図である。
【図３】本発明の実施例に係る手術ロボットの制御方法を示すフローチャートである。
【図４】図３に示された切開孔の中心点を設定する方式を説明するための図である。
【図５】図３に示された外力をフィルタリングする方式を説明するための図である。
【発明を実施するための形態】
【００２９】
以下では、添付の図面を参照して、本発明の実施例を詳細に説明する。
【００３０】
図１は、本発明の実施例に係る手術ロボットの制御ブロック図である。図１に示すように、本発明の実施例に係る手術ロボットは、入力部１１０、力／トルクセンサ１２０、制御部１３０、格納部１４０、サーボ制御部１５０、駆動部１６０及び回転角度検出部１７０を含む。
【００３１】
入力部１１０は、使用者（操作者）が手術ロボットの動作命令（例：作業命令など）を入力するためのもので、ユーザインタフェース（ＵＩ）や遠隔操作器などで構成することができる。また、入力部１１０は、操作者が切開孔の中心点（図２のＰｃ）の位置を設定するためのキーボード（ｋｅｙｂｏａｒｄ）、ペダル（ｐｅｄａｌ）または足踏みスイッチ（ｆｏｏｔ  ｓｗｉｔｃｈ）、マウス（ｍｏｕｓｅ）などの装置を含むことができる。
【００３２】
力／トルクセンサ１２０は、手術ロボットの動作（作業）に関連する関節部（例：肩関節部、ひじ関節部、手首関節部など）に装着され、関節部をなす各回転関節に作用する力とモーメント（トルク）を検出する。力／トルクセンサ１２０としては、並進３方向の力（Ｆｘ、Ｆｙ、Ｆｚ）と回転３方向のモーメント（Ｍｘ、Ｍｙ、Ｍｚ）を検出する６軸力／トルクセンサ（６−Ａｘｉｓ  Ｆｏｒｃｅ−Ｔｏｒｑｕｅ  Ｓｅｎｓｏｒ）を用いることができる。
【００３３】
制御部１３０は、手術ロボットの全般的な動作を制御するコントローラで、制御部１３０は、手術器具２１０が装着されたロボットアームに作用する外力を算出し、切開孔の中心点Ｐｃが設定されると、ロボットアームに作用する外力をフィルタリングし、切開孔の中心点Ｐｃから外れた手術器具２１０が切開孔の中心点Ｐｃに復帰するようにする仮想力を算出し、算出された仮想力をフィルタリングされた外力に追加して、ロボットアームの動きを制御する。
【００３４】
格納部１４０は、手動位置決めモードの時、手術ロボットがロボットアーム（または手術器具）に対する制限的な運動制御を行うために必要とする事前情報、及び制限的な運動制御を行う過程で発生する情報を格納するためのメモリで、格納部１４０には、ロボットアーム及びロボットアームに付着された手術器具２１０のＣＡＤ情報、切開孔の中心点設定過程で順運動学（Ｆｏｒｗａｒｄ  Ｋｉｎｅｍａｔｉｃｓ）を用いて算出される切開孔の中心点Ｐｃの位置及び方向情報などが格納される。
【００３５】
図４を参照して、格納部１４０に格納される切開孔２２０に対する情報について説明すると、次の通りである。
【００３６】
本発明の実施例では、ロボットアームに対する制限的な運動制御を行うために必要とする事前情報、及び制限的な運動制御を行う過程で発生する情報を格納するための格納部１４０が別途に設けられる構成を例に挙げて説明したが、格納部１４０の構成を採用せずに、制御部１３０内の内部メモリに制限的な運動制御を行うために必要な事前情報などを格納するように構成しても良い。
【００３７】
サーボ制御部１５０は、制御部１３０から伝達された目標関節トルク（τｄ）に対応するトルク制御信号を、手術ロボットの動作に関連する関節部の各回転関節を回転駆動する駆動部１６０に出力する。
【００３８】
駆動部１６０は、関節部をなす各回転関節に電気又は油圧による動力を伝達するためのモータなどのアクチュエータで、サーボ制御部１５０から伝達されたトルク制御信号によって、手術ロボットの動作に関連する関節部の各回転関節を回転駆動する。
【００３９】
回転角度検出部１７０は、手術ロボットの動作に関連する関節部に設けられた各回転関節を回転駆動するために設置されたアクチュエータ（駆動部）の回転角度を検出するためのもので、回転角度検出部１７０としては、エンコーダ（ｅｎｃｏｄｅｒ）を用いることができる。
【００４０】
図２は、本発明の実施例に係る手術ロボットに具現された手動位置決めモードの時のロボットアームの動きを制御する方式を説明するための図である。
【００４１】
本発明は、使用者（操作者）が直接手で手術器具２１０が装着されたロボットアームを握って動かし、手術器具２１０を切開孔２２０に挿入し、手術しようとする領域に位置させる手動位置決めモード（Ｍａｎｕａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｍｏｄｅ）において、ロボットアームに装着された手術器具２１０が切開孔２２０を損傷しないようにロボットアームの動きを制御する方法を提案する。
【００４２】
まず、使用者が手で手術器具２１０が付着されたロボットアーム（図示せず）を握って動かし、ロボットアームに付着された手術器具２１０の末端が切開孔の中心点Ｐｃに位置するようにし、手術器具２１０の長さ方向が切開孔２２０の面に垂直になるように位置させる。次に、使用者がペダルやマウスなどの入力部１１０を操作することによって、手術器具２１０の末端の現在（入力部の操作時点での）の位置を切開孔の中心点の位置として設定する。このように設定された切開孔の中心点Ｐｃは、手術ロボット（ロボットアーム）の外部に存在する点であって、ロボットアームの動きと関係なく、ロボットアームに付着された手術器具２１０上の遠隔中心Ｐｒｃｍと一致しなければならない。
【００４３】
ロボットアームに付着された手術器具２１０の末端が切開孔の中心点Ｐｃに位置するようにし、手術器具２１０の長さ方向が切開孔２２０の面に垂直になるように配置する。
【００４４】
手動位置決めモードにおいて切開孔の中心点Ｐｃが設定される前には、使用者がロボットアームに加える力を関節部に装着された力／トルクセンサ１２０を通じて検出し、検出情報（力の大きさと方向）を用いてロボットアームの動きを制御する。すなわち、切開孔の中心点Ｐｃが設定される前までは、使用者が自由にロボットアームを握って動かすことができ、ロボットアームの動きを制限する必要がない。しかし、一旦、切開孔の中心点Ｐｃの位置が設定されると、使用者がロボットアームに加える力において、現在の切開孔の中心点Ｐｃの位置を外れるようにする力の部分をフィルタリング（ｆｉｌｔｅｒｉｎｇ）する。また、図２に示すように、手術器具２１０に仮想スライダ２３０を装着し、設定された切開孔の中心点Ｐｃと手術器具２１０上の仮想スライダ２３０との間に仮想バネ２４０及び仮想ダンパー２５０を装着して、切開孔の中心点Ｐｃから外れた手術器具２１０が切開孔の中心点Ｐｃの位置に復帰するようにする仮想の復元力（仮想の復元力は、図２に示された矢印方向に作用する）を算出する。フィルタリングされた使用者の力（外力）に、算出された仮想の復元力を反映させ、仮想の復元力が反映されたフィルタリングされた外力に基づいてロボットアームを動かすことによって、ロボットアームに付着された手術器具２１０上の遠隔中心Ｐｒｃｍが必ず切開孔の中心点Ｐｃを通過するように制御することができる。
【００４５】
以下では、図３を中心とし、図４及び図５を参照して、本発明の実施例に係る手術ロボットの制御方法を説明する。
【００４６】
本発明の実施例の動作説明のための初期条件として、格納部１４０には、手術ロボットがロボットアーム（または手術器具）に対する制限的な運動制御を行うために必要とする事前情報として、ロボットアーム及びロボットアームに付着された手術器具２１０のＣＡＤ情報が予め格納されていることを前提とする。
【００４７】
入力部１１０を通じて使用者から手術ロボットの動作命令が入力されると、手術器具２１０を切開孔２２０に挿入し、手術しようとする領域に位置させる手動位置決めモードが始まる。
【００４８】
手動位置決めモードが始まると、制御部１３０は、力／トルクセンサ１２０から、関節部をなす各回転関節に作用する力／トルク情報の入力を受け、入力された力／トルク情報を用いて、ロボットアームに作用する外力を算出する（３１０）。
【００４９】
ここで、外力を算出するということは、手術ロボット（より正確にはロボットアーム）が現在の位置又は現在の動きを維持するのに必要なトルク以外の使用者または環境により関節部に作用する力／トルクを算出することを意味する。
【００５０】
力／トルクセンサ１２０に結合されるロボットアーム、及びそのロボットアームに結合される手術器具２１０はそれぞれ固有な質量を有するので、力／トルクセンサ１２０は、外部から発生する純粋な外力だけでなく、ロボットアーム及びそのロボットアームに結合される手術器具２１０の質量により発生する内部の間接的な力／トルク情報も検出する。また、手術ロボットがゆっくり動く場合とは異なり、手術ロボットの動きが速くなると慣性力が発生する。したがって、力／トルクセンサ１２０に伝達される内部の間接的な力／トルク情報には、慣性力による力／トルク情報が含まれる。
【００５１】
すなわち、手術ロボットが作業を行う間、力／トルクセンサ１２０は、純粋な外力による力／トルク情報だけでなく、ロボットアーム及び手術器具２１０の質量と動きによる慣性により発生する間接的な力／トルク情報を共に検出する。したがって、ロボットアーム及び手術器具２１０の質量と動きによる慣性により発生する間接的な力／トルク情報を算出し、力／トルクセンサ１２０で検出された力／トルク情報から、算出された間接的な力／トルク情報を引いた値を純粋な外力による力／トルク情報と見なし、これに基づいてロボットアームの動きを制御しなければならない。
【００５２】
制御部１３０は、ロボットアーム及びロボットアームに付着された手術器具２１０のＣＡＤ情報（ｃａｄ  ｄａｔａ）からロボットアームをモデリングし、これから、ロボットアームが現在の位置又は現在の動きを維持するのに必要なトルク情報を算出する。すなわち、制御部１３０は、外力が作用しない状況で、現在の位置又は現在の動きを維持するのに必要な回転関節のトルク情報（τｃａｌｃｕｌａｔｅｄ）を、下記の数式（１）を用いて算出する。
【００５３】
【数３】
2013132747.tif 000005
ここで、ｑは回転関節の回転角度、Ｍは慣性マトリクス（ｉｎｅｒｔｉａ  ｍａｔｒｉｘ）、ｃはコリオリ（Ｃｏｒｉｏｌｉｓ）及びセントリフューガルフォース（Ｃｅｎｔｒｉｆｕｇａｌ  Ｆｏｒｃｅ、ｇは重力を意味する。
【００５４】
力／トルクセンサ１２０を用いて検出された回転関節に作用するトルク情報（τｍｅａｓｕｒｅｄ）から、現在の位置又は現在の動きを維持するのに必要な回転関節のトルク情報（τｃａｌｃｕｌａｔｅｄ）を引いた値は、実際に外部からロボットアームに加えた外力による回転関節のトルク情報（τｅｘｔｅｒｎａｌ）に該当し、下記の数式（２）のような関係が成立する。
【００５５】
【数４】
2013132747.tif 000006
使用者は、直接手を用いてロボットアームに外力を加えることによって、ロボットアームに付着された手術器具２１０を所望の位置に動かすことができる。その後、使用者は、ロボットアームに付着された手術器具２１０の末端を切開孔の中心点Ｐｃに位置させ、手術器具２１０の長さ方向が切開孔２２０の面に垂直になるように位置させた後、キーボードまたはペダルやマウスなどの入力部１１０を操作することによって、手術器具２１０の末端の現在（入力部の操作時点での）の位置を切開孔の中心点の位置として設定する。
【００５６】
このとき、制御部１３０は、順運動学（Ｆｏｒｗｑｒｄ  Ｋｉｎｅｍａｔｉｃｓ）を用いて手術器具２１０の末端の位置及び方向を算出し、算出された手術器具２１０の末端の位置及び方向を切開孔の中心点Ｐｃの位置及び方向と見なし、これを格納部１４０に格納する。図４を参照して、格納部１４０に格納される切開孔２２０に関する情報について説明すると、次の通りである。
【００５７】
Ｐｃ：切開孔２２０の面上に存在し、３次元上の切開孔２２０の中心点を示す。
【００５８】
Ｃ１、Ｃ２：それぞれ３次元上のベクトルで、互いに正規直交（ｏｒｔｈｏｎｏｒｍａｌ）し、切開孔２２０の面を横切る基底ベクトル（ｂａｓｉｓ  ｖｅｃｔｏｒ）である。
【００５９】
Ｐｒｃｍ：遠隔中心（Ｒｅｍｏｔｅ  Ｃｅｎｔｅｒ  ｏｆ  Ｍｏｔｉｏｎ）で、手術器具２１０上に存在し、切開孔２２０の面と手術器具２１０との交差点を意味する。キーボードまたはペダルやマウスなどの入力部１１０の操作の時（切開孔の中心点設定の時）、ＰｒｃｍとＰｃは一致する（Ｐｒｃｍ＝Ｐｃ）。
【００６０】
Ｐｏ：手術器具２１０の端点で、キーボードまたはペダルやマウスなどの入力部１１０の操作の時、Ｐｏ、Ｐｒｃｍ及びＰｃは一致する（Ｐｏ＝Ｐｒｃｍ＝Ｐｃ）。
【００６１】
Ｐｉ：手術器具２１０とロボットアームとが連結される点、または手術器具２１０が切開孔２２０に侵襲し得る限界点を示す。
【００６２】
再び図３の動作３２０に戻り、制御部１３０は、切開孔の中心点Ｐｃが設定されたか否かを判断する（３２０）。
【００６３】
まだ切開孔の中心点Ｐｃが設定されていないと判断されると（３２０での‘いいえ’）、制御部１３０は、外力に順応して手術ロボット（ロボットアーム）の動きを制御する（３６０）。制御部１３０は、ロボットアームが現在維持するための重力トルク情報（τｇ(ｑ)）に、数式（２）から算出された実際に外部からロボットアームに加えた外力による回転関節のトルク情報（τｅｘｔｅｒｎａｌ）を加え、目標関節トルク（τｄ）を算出して、サーボ制御部１５０に出力する。このとき、必要な場合、数式（１）から算出されたトルク情報（τｃａｌｃｕｌａｔｅｄ）は、ローパスフィルタリング（Ｌｏｗ  Ｐａｓｓ  Ｆｉｌｔｅｒｉｎｇ）され得る。目標関節トルク（τｄ）は、下記の数式（３）で表現できる。
【００６４】
【数５】
2013132747.tif 000007
ここで、αは、正の定数（ｐｏｓｉｔｉｖｅ  ｃｏｎｓｔａｎｔ）である。
【００６５】
また、ロボットアームの過度な動きを防止するために、次の数式（４）のように減衰項（ｄａｍｐｉｎｇ  ｔｅｒｍ）を追加することも可能である。
【００６６】
【数６】
2013132747.tif 000008
ここで、ｂは、減衰係数（ｄａｍｐｉｎｇ  ｃｏｅｆｆｉｃｉｅｎｔ）であり、正のスカラー量（ｐｏｓｉｔｉｖｅ  ｓｃａｌａｒ）である。
【００６７】
再び図３の動作３２０に戻り、切開孔の中心点Ｐｃが設定されたと判断されると（３２０での‘はい’）、制御部１３０は、外力をフィルタリングする（３３０）。
【００６８】
ここで、外力をフィルタリングするということは、数式（２）から算出された実際に外部からロボットアームに加えた外力による回転関節のトルク情報（τｅｘｔｅｒｎａｌ）から、切開孔の中心点Ｐｃと遠隔中心Ｐｒｃｍとの間の偏差（ｄｅｖｉａｔｉｏｎ）を増加させるのに寄与するトルクを除去することを意味する。
【００６９】
外力をフィルタリングするために、まず、制御部１３０は、下記の数式（５）を用いてラムダ(λ)を算出する。
【００７０】
【数７】
2013132747.tif 000009
ここで、Ｃ３は、切開孔２２０の面を横切る基底ベクトルＣ１、Ｃ２の正規直交（ｏｒｔｈｏｎｏｒｍａｌ）ベクトルである（図５を参照）。
【００７１】
次に、制御部１３０は、下記の数式（６）を用いて、遠隔中心Ｐｒｃｍでのヤコビ行列（Ｊａｃｏｂｉａｎ  Ｍａｔｒｉｘ、Ｊｒｃｍ）を算出する。
【００７２】
【数８】
2013132747.tif 000010
その後、制御部１３０は、下記の数式（７）を用いて、制限ヤコビ行列（Ｃｏｎｓｔｒａｉｎｔ  Ｊａｃｏｂｉａｎ  Ｍａｔｒｉｘ、Ｊｃ）を算出する。
【００７３】
【数９】
2013132747.tif 000011
その後、制御部１３０は、下記の数式（８）を用いて、フィルタリングされた外力トルク（τｅｘｔｅｒｎａｌ．ｆｉｌｔｅｒｅｄ）を算出する。
【００７４】
【数１０】
2013132747.tif 000012
ここで、フィルタリングされた外力トルク（τｅｘｔｅｒｎａｌ．ｆｉｌｔｅｒｅｄ）は、数式（２）から算出された外力トルク（τｅｘｔｅｒｎａｌ）から、遠隔中心Ｐｒｃｍを切開孔の中心点Ｐｃから外れるようにする（遠隔中心をＣ１、Ｃ２方向に動かすようにする）トルク成分が除去されたトルクである。
【００７５】
再び図３に戻り、外力をフィルタリングした後に、制御部１３０は、切開孔の中心点Ｐｃと遠隔中心Ｐｒｃｍとの間の偏差及び仮想復元力を算出する（３４０）。
【００７６】
まず、制御部１３０は、下記の数式（９）を用いて、切開孔の中心点Ｐｃと遠隔中心Ｐｒｃｍとの間の偏差（ｅｒｃｍ）を算出する。
【００７７】
【数１１】
2013132747.tif 000013
次に、制御部１３０は、下記の数式（１０）を用いて、切開孔の中心点Ｐｃから外れた手術器具２１０が切開孔の中心点Ｐｃの位置に復帰するようにする仮想の復元力（τｃ）を算出する。
【００７８】
【数１２】
2013132747.tif 000014
ここで、Ｋは、仮想バネ２４０のスティフネス（ｓｔｉｆｆｎｅｓｓ）を示し、Ｄは、安定化のための仮想ダンパー２５０の係数を示す。
【００７９】
制御部１３０は、仮想復元力（τｃ）の算出が完了したら、算出された仮想復元力（τｃ）をフィルタリングされた外力トルク（τｅｘｔｅｒｎａｌ．ｆｉｌｔｅｒｅｄ）に反映させる（３５０）。
【００８０】
その後、制御部１３０は、外力に順応して手術ロボット（ロボットアーム）の動きを制御する（３６０）。制御部１３０は、目標関節トルク（τｄ）を算出するための数式（４）の外力トルク（τｅｘｔｅｒｎａｌ）の代わりに、フィルタリングされた外力トルク（τｅｘｔｅｒｎａｌ．ｆｉｌｔｅｒｅｄ）を代入し、数式（４）に仮想復元力（τｃ）を加えて、ロボットアームに対する制限的な運動制御条件（切開孔制限条件）を有した手動位置決めモードでの目標関節トルク（τｄ）を算出して、サーボ制御部１５０に出力する。切開孔の中心点Ｐｃが設定された以降の目標関節トルク（τｄ）は、下記の数式（１１）で表現できる。
【００８１】
【数１３】
2013132747.tif 000015
次に、制御部１３０は、手動位置決めが完了したか否かを判断する（３７０）。制御部１３０は、入力部１１０から使用者から手動位置決め完了信号が入力されると、手動位置決めが完了したと判断する。
【００８２】
手動位置決めが完了しなかった場合（３７０での‘いいえ’）、制御部１３０は、下記の数式（１２）を用いて遠隔中心Ｐｒｃｍの位置を更新し（３８０）、動作３４０にリターンして、継続的に、切開孔の中心点Ｐｃから外れた手術器具２１０が切開孔の中心点Ｐｃの位置に復帰するようにする仮想の復元力を算出しながら、ロボットアームが制限的な動きを有するように制御する。
【００８３】
【数１４】
2013132747.tif 000016
一方、手動位置決めが完了した場合（３７０での‘はい’）、制御部１３０は、手術ロボットの手動位置決めモードを終了する。
【符号の説明】
【００８４】
１１０    入力部
１２０    力／トルクセンサ
１３０    制御部
１４０    格納部
１５０    サーボ制御部
１６０    駆動部
１７０    回転角度検出部
２１０    手術器具
２２０    切開孔（侵襲口）
２３０    仮想スライダ
２４０    仮想バネ
２５０    仮想ダンパー
Ｐｒｃｍ  遠隔中心（ＲＣＭ）
Ｐｃ      切開孔の中心点
【図１】
2013132747.tif 000019
【図２】
2013132747.tif 000020
【図３】
2013132747.tif 000021
【図４】
2013132747.tif 000022
【図５】
2013132747.tif 000023