(57)【特許請求の範囲】
【請求項１】
被検体内に挿入される挿入部の先端側に、複数のリンク部材がそれぞれ回動自在に連設された湾曲部を有する医療用具と、
前記複数のリンク部材をそれぞれ回動させて前記湾曲部を湾曲動作させるための駆動手段と、
前記複数のリンク部材の内、最も先端側のリンク部材の位置と向きを指定する指定手段と、
前記複数のリンク部材のそれぞれ隣り合うリンク部材のなす角度を演算する際に、前記隣り合うリンク部材のなす角度が予め設定された許容範囲内になるようにするためのパラメータを設定する設定手段と、
前記医療用具の前記湾曲部が移動したときに前記指定手段により指定された位置と向きを維持しながら前記最も先端側のリンク部材及びこのリンク部材に連なる他のリンク部材が前記位置を通過するように、前記設定手段により設定されたパラメータに基づいて前記複数のリンク部材のそれぞれの角度を演算し、この演算結果に基づいて、前記複数のリンク部材を回動させるように前記駆動手段を制御する制御手段と、
を具備したことを特徴とする医療用制御装置。
【請求項２】
前記複数のリンク部材のそれぞれに及ぼされる力量をリンク部材毎に検出する検出手段を有し、
前記制御手段は、前記検出結果に応じて前記パラメータを変更し、この変更したパラメータに基づいて、前記複数のリンク部材における隣り合うリンク部材のそれぞれの角度を演算し、この演算結果に基づいて、前記複数のリンク部材を回動させるように前記駆動手段を制御することを特徴とする請求項１に記載の医療用制御装置。
【請求項３】
前記複数のリンク部材が互いになす角度及びその角度の変化量を検出する検出手段を有し、
前記制御手段は、前記検出結果に応じて前記パラメータを変更し、この変更したパラメータに基づいて、前記複数のリンク部材における隣り合うリンク部材のそれぞれの角度を演算し、この演算結果に基づいて、前記複数のリンク部材を回動させるように前記駆動手段を制御することを特徴とする請求項１に記載の医療用制御装置。
【請求項４】
前記医療用具は、前記挿入部の先端側に前記湾曲部を有する内視鏡であることを特徴とする請求項１乃至請求項３のいずれか１つに記載の医療用制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、医療用具の湾曲部に対して湾曲動作を行わせるための駆動手段を制御する医療用制御装置に関する。
【背景技術】
【０００２】
従来より、医療用具として内視鏡は、幅広く利用されている。内視鏡の細長の挿入部を体腔内に挿入することにより、術者は、体腔内臓器などを観察したり、必要に応じて処置具チャンネル内に挿通した処置具を用いて各種治療処置ができる。また、工業分野においても、作業者は、内視鏡の細長の挿入部を挿入することにより、ボイラ，タービン，エンジン，化学プラントなどの内部の傷や腐蝕などを観察したり検査することができる。
【０００３】
このような内視鏡には、細長な挿入部の先端部基端側に湾曲自在な湾曲部が設けられている。前記内視鏡において、術者等の使用者は、操作部に設けられた湾曲操作レバー等の湾曲操作入力手段を操作することにより、湾曲部を湾曲動作させるための湾曲駆動手段に、前記湾曲部の湾曲方向や湾曲の速度が湾曲量として指示入力される。
【０００４】
そして、前記湾曲駆動手段は、前記湾曲操作レバーによる湾曲量に基づき、前記湾曲部を構成する湾曲駒に接続された湾曲操作ワイヤを機械的に牽引又は弛緩させることにより、前記湾曲部を湾曲動作させる。
【０００５】
この種の従来の内視鏡には、湾曲駆動手段として例えば内視鏡内部に内蔵したモータを電気的に回動制御してこのモータの駆動力により湾曲操作ワイヤを牽引又は弛緩して前記湾曲部を湾曲動作させる電気的湾曲駆動方式、つまり電動湾曲内視鏡がある。
【０００６】
例えば、特許２９１７２６３号公報には、電動湾曲内視鏡において、前記湾曲操作ワイヤを牽引するプーリを有しこのプーリに対応するモータのトルクを内視鏡挿入部の種類に合うように設定できる制御手段等に関する技術が開示されている。  
また、特許２８４５２５５号公報には、電動湾曲内視鏡において、湾曲部の全操作範囲のモータにかかる負荷を均一にできる内視鏡の湾曲操作装置に関する技術が開示されている。
【特許文献１】特許２９１７２６３号公報
【特許文献２】特許２８４５２５５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、前記従来の電動湾曲内視鏡は、湾曲入力手段を操作して指示入力される湾曲量に基づいて湾曲駆動手段であるモータを電気的に回動制御することにより、湾曲操作ワイヤを牽引又は弛緩して前記湾曲部を湾曲動作させるものである。この湾曲部には複数の湾曲駒が連接されており、湾曲時に湾曲部は湾曲部全体に渡って湾曲するといった構成であるため、例えば大腸などの管腔内に挿入する際、湾曲部の先端側をこの管腔内の形状に合わせた形状に湾曲固定させて挿入することはできず、例えばＳ状結腸部への挿入については熟練した操作を要していた。
【０００８】
本発明は前記事情に鑑みてなされたものであり、湾曲部の先端側を固定すると同時に湾曲部が管腔内の形状に合った形状になるように湾曲部の駆動を制御することにより、医療用具の挿入部の挿入性を向上できる医療用制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の医療用制御装置は、被検体内に挿入される挿入部の先端側に、複数のリンク部材がそれぞれ回動自在に連設された湾曲部を有する医療用具と、前記複数のリンク部材をそれぞれ回動させて前記湾曲部を湾曲動作させるための駆動手段と、前記複数のリンク部材の内、最も先端側のリンク部材の位置と向きを指定する指定手段と、前記複数のリンク部材のそれぞれ隣り合うリンク部材のなす角度を演算する際に、前記隣り合うリンク部材のなす角度が予め設定された許容範囲内になるようにするためのパラメータを設定する設定手段と、前記医療用具の前記湾曲部が移動したときに前記指定手段により指定された位置と向きを維持しながら前記最も先端側のリンク部材及びこのリンク部材に連なる他のリンク部材が前記位置を通過するように、前記設定手段により設定されたパラメータに基づいて前記複数のリンク部材のそれぞれの角度を演算し、この演算結果に基づいて、前記複数のリンク部材を回動させるように前記駆動手段を制御する制御手段と、を有している。
【発明の効果】
【００１０】
本発明によれば、湾曲部の先端側を固定すると同時に湾曲部が管腔内の形状に合った形状になるように湾曲部の駆動を制御することにより、医療用具の挿入部の挿入性を向上できる医療用制御装置の実現が可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して本発明の実施例を説明する。
【実施例１】
【００１２】
図１乃至図２９は本発明の実施例１における医療用制御装置の基本構成を説明するためのもので、図１は医療用制御装置を用いて内視鏡装置として構成した場合のシステム構成図である。
【００１３】
図１に示すように、本発明に係る医療用制御装置を用いた内視鏡装置１は、挿入部先端部内に図示しない撮像手段を備え、操作部１０内あるいは湾曲部１４内に後述する挿入部９の湾曲部１４を湾曲させるための駆動部１０ｂを備えた医療用具としての電子内視鏡（以下、単に内視鏡）２と、前記内視鏡２に着脱自在に接続され、この内視鏡２に照明光を供給する光源装置３と、前記内視鏡２に着脱自在に接続され、前記内視鏡２の前記撮像手段を制御すると共に、この撮像手段から得られた信号を処理して標準的な映像信号を出力するビデオプロセッサ４と、前記ビデオプロセッサ４内あるいはこのビデオプロセッサ４とは別体に設けられ、前記湾曲部１４を湾曲動作させるように前記内視鏡２の駆動部１０ｂを制御するコントローラ５と、前記ビデオプロセッサ４で信号処理して得られた内視鏡画像を表示するモニタ６と、前記コントローラ５に電気的に接続される指定手段としての操作指令部７と、前記コントローラ５に電気的に接続される設定値入力手段としての設定値指令部８と、を有している。  
なお、前記ビデオプロセッサ４には、図示しないＶＴＲデッキ，ビデオプリンタ，ビデオディスク，画像ファイル記録装置などが接続できるようになっている。
【００１４】
前記内視鏡２は、観察対象部位へ挿入する細長の挿入部９と、この挿入部９の基端部に連設され、ビデオスイッチや送気・送水スイッチ等の操作部１０ａを有する把持部１２と、この把持部１２の側面より延設され、図示しない撮像手段に接続する信号ケーブルや照明光を伝達するライトガイドなどを内蔵したユニバーサルコード１１と、このユニバーサルコード１１の端部に設けられ、前記光源装置３及びビデオプロセッサ４に着脱自在に接続されるコネクタ部１２と、を有している。
【００１５】
前記挿入部９は、先端に設けられた先端部１３と、この先端部１３の後部（被検体に挿入される挿入部９の先端側）に設けられた湾曲自在の湾曲部１４と、この湾曲部１４の後部に設けられ、軟性の管状の部材より形成される長尺で可撓性を有する可撓管部１５とが連設されて構成している。
【００１６】
前記先端部１３は、撮像手段としてＣＣＤなどの図示しない固体撮像素子及びこの固体撮像素子を駆動するための回路基板などが組み込まれた撮像部や、体腔内の観察対象部位を照明するための照明光を伝達する図示しないライトガイドなどを内蔵して構成されている。なお、前記湾曲部１４の構成については後述する。
【００１７】
前記コントローラ５には、接続線７ｂを介して前記操作指令部７が電気的に接続されている。この操作指令部７は、例えばジョイスティック７ａを備えて構成されたものであり、このジョイスティック７ａを操作することにより前記湾曲部１４を湾曲動作させるための操作指令値信号を出力する。
【００１８】
また、前記コントローラ５には、接続線８ｂを介して設定値指令部８が電気的に接続されている。この設定値指令部８は、例えばキーボード８ａを用いて構成されたものであり、このキーボード８ａによるキー操作によって、コントローラ５に対し前記湾曲部１４を湾曲させるのに必要な各種設定値の入力を行う。
【００１９】
次に、前記湾曲部１４の構成について、図３乃至図８を参照しながら説明する。また、前記湾曲部１４については、簡単のため、平面的動作駆動部としての取り扱いとして説明を行う（２次元の平面動作）。  
図３及び図４はリンク構造の駆動機構を備えた湾曲部を有する挿入部先端側の概略構成を説明するもので、図３は挿入部先端側の斜視図、図４は挿入部先端側の断面図である。また、図５は駆動機構がモータ及びギアで構成された湾曲部の構成を示す断面図、図６は図５に示す湾曲部の変形例１の構成を示す断面図、図７は図５に示す湾曲部の変形例２の構成を示す断面図、図８はモータとフレシキブルシャフトとの接続構成を示す斜視図である。
【００２０】
図３及び図４に示すように、前記挿入部９の湾曲部１４は、被検体内に挿入される挿入部９の先端側に設けられいる。この湾曲部１４は、挿入部駆動機構２０を有し、この挿入部駆動機構２０は、複数のリンク部材２１ａ、２１ｂ、２１ｃ…２１ｎが複数の関節部材２０ａ、２０ｂ、２０ｃ…２０ｎによってそれぞれ回動自在に連接されることにより、構成している。つまり、挿入部駆動機構２０は、多関節のリンク構造を有している。
【００２１】
また、前記駆動部１０ｂは、前記複数のリンク部材２１ａ、２１ｂ、２１ｃ…２１ｎをそれぞれ回動させるための駆動源であるモータ２７（図５及び図８参照）である。  
この駆動部１０ｂであるモータ２７が前記操作部１０内に設けられた場合には、図８に示すようにモータ２７の駆動軸２７ａにはジョイント３０ａを介してフレシキブルシャフト３０が連結される。そして、このフレシキブルシャフト３０は、図示しないが挿入部９内に延設され、基端部が前記複数のリンク部材２１ａ、２１ｂ、２１ｃ…２１ｎに連結される。このことにより、それぞれのモータ２７の回転力がフレシキブルシャフト３０を介して、前記複数のリンク部材２１にそれぞれ伝達されるようになっている。
【００２２】
また、前記駆動部１０ｂであるモータ２７が挿入部９の湾曲部１４内に設けられた場合には、図５に示すように、モータ２７は、前記挿入部駆動機構２０を構成する前記複数のリンク部材２１ａ、２１ｂ、２１ｃ…２１ｎ内にそれぞれ配設される。そして、モータ２７の回転力は、前記モータ２７と連結する連結ギア２６等によって前記複数のリンク部材２１ａ、２１ｂ、２１ｃ…２１ｎにそれぞれ伝達されるようになっている。
【００２３】
なお、前記リンク部材２１及び関節部材２０の数は、図中に示す構成例に限定されるものではなく、前記内視鏡２の目的に応じて適宜その数を増減して構成することも可能である。また、前記リンク部材２１ａは、先端部１３の最先端側に配置されたもので、このリンク部材２１ａの後端側には順にリンク部材２１ｂ、２１ｃ…２１ｎが連結されるようになっている。また、これに伴い、前記関節部材２０ａ、２０ｂ、２０ｃ…２０ｎついても先端部１３側から順にリンク部材２１との間にそれぞれ配置されることになる。
【００２４】
図５には前記湾曲部１４の具体的な構成が示されている。  
図５に示すように、前記湾曲部１４の挿入部駆動機構２０は、前記駆動部１０ｂであるモータ２７を前記複数のリンク部材２１ａ、２１ｂ、２１ｃ…２１ｎ内にそれぞれ配設している。  
前記複数のリンク部材２１ａ、２１ｂ、２１ｃ…２１ｎは、前記関節部材２０ａ、２０ｂ、２０ｃ…２０ｎであるジョイントシャフト２２によってそれぞれ回動自在に連結されている。前記ジョイントシャフト２２は軸部材であり、このジョイントシャフト２２には、それぞれ検出手段としてのポテンショメータ２３が装着されている。
【００２５】
このポテンショメータ２３は、ジョイントシャフト２２の回転量を検出してリンク部材２１の状態量検知信号として図示しない信号線を介して前記コントローラ５に出力するようになっている。
【００２６】
また、前記複数のリンク部材２１ａ、２１ｂ、２１ｃ…２１ｎの各基端側には、前記ジョイントシャフト２２を回動自在に軸止した歯車２４がそれぞれ固定されている。この歯車２４には連結ギア２６の歯車２５が噛合される。この連結ギア２６は、前記リンク部材２１ａ、２１ｂ、２１ｃ…２１ｎ毎に設けられたモータ２７の図示しない駆動軸と連結しており、この駆動軸の回転力は軸２６ａを介して前記歯車２５に伝達されるようになっている。
【００２７】
このことにより、モータ２７の回転力が連結ギア２６の軸２６ａ及び歯車２５を介して歯車２４に伝達されて、この歯車２４が固定されたリンク部材２１を所定方向に回動させることが可能である。
【００２８】
また、図５に示す湾曲部１４は、各リンク部材２１毎に挿入部駆動機構２０を構成する、モータ２７、連結ギア２６，歯車２４、２５を有しているので、前記複数のリンク部材２１ａ〜２１ｎの内、指定したリンク部材２１のモータ２７の回転制御を行えば、前記指定されたリンク部材２１のみを回転動作させることが可能である。
【００２９】
なお、本実施例では、前記湾曲部１４における駆動機構２０を、図６に示す変形例１、あるいは図７に示す変形例２のように構成しても良い。このような湾曲部１４の変形例１、変形例２を図６及び図７を参照しながら説明する。
【００３０】
変形例１及び変形例２における湾曲部１４は、図５に示す湾曲部１４とは異なり、各リンク部材２１毎にモータ２７を設けずに、駆動部１０ｂであるモータ２７を操作部１０内に複数設けている。そして、これらのモータ２７の回転力は、これらのモータ２７の駆動軸３０ｂにジョイント３０ａを介してそれぞれ連結され且つ挿入部９内に延設されるそれぞれのフレシキブルシャフト３０を介して、これらのフレシキブルシャフト３０にそれぞれ連結している前記複数のリンク部材２１ａ、２１ｂ、２１ｃ…２１ｎに伝達されるようになっている。
【００３１】
図６に示すように、変形例１の湾曲部１４は、図５に示す挿入部駆動機構２０と略同様の構成であるが、各リンク部材２１毎に延設されるフレシキブルシャフト３０の先端側に歯車２９を設けている。
【００３２】
この歯車２９には、前記歯車２５を逆側に設けた連結歯車２８ギアが噛合する。この連結ギア２８は前記リンク部材２１内部に内装されており、この連結ギア２８の軸２９ａの逆側に設けた歯車２５を介して、フレシキブルシャフト３０からの回転力を歯車２４に伝達するようになっている。  
このことにより、モータ２７の回転力が、駆動軸３０ｂ、ジョイント３０ａ、フレシキブルシャフト３０、歯車２９、連結歯車２８、軸２９ａ及び歯車２５を介して歯車２４に伝達されて、この歯車２４が固定されたリンク部材２１を所定方向に回動させることが可能である。
【００３３】
変形例１の湾曲部１４は、図５に示す湾曲部１４と同様に、各リンク部材２１毎に挿入部駆動機構２０を構成する、フレシキブルシャフト３０、連結歯車２８、歯車２４、２５を有しているので、前記複数のリンク部材２１ａ〜２１ｎの内、指定したリンク部材２１のモータ２７の回転制御を行えば、前記指定されたリンク部材２１のみを回転動作させることがで可能である。
【００３４】
また、図７に示すように、変形例２の湾曲部１４は、前記変形例１の挿入部駆動機構２０と略同様の構成であるが、前記連結歯車２８を無くし、各リンク部材２１毎に延設されるフレシキブルシャフト３０を各リンク部材２１内部に配設するように構成している。
【００３５】
前記フレシキブルシャフト３０の先端側には前記歯車２５が設けられている。したがって、フレシキブルシャフト３０からの回転力は、前記歯車２５を介して、連結歯車２８等の連結部材を介さすとも直に各リンク部材２１の後端側に固定された歯車２４に伝達されるようになっている。このことにより、前記変形例１と同様に前記歯車２４が固定されたリンク部材２１を所定方向に回動させることが可能である。
【００３６】
変形例２の湾曲部１４は、前記変形例１と同様に各リンク部材２１毎に挿入部駆動機構２０を構成する、フレシキブルシャフト３０、歯車２４、２５を有しているので、前記複数のリンク部材２１ａ〜２１ｎの内、指定したリンク部材２１のモータ２７の回転制御を行えば、前記指定されたリンク部材２１のみを回転動作させることが可能である。
【００３７】
次に、このような湾曲部１４を有する内視鏡２を備えた内視鏡装置１の電気的な主要構成について図２を参照しながら説明する。  
図２は内視鏡装置１の主要構成部分の電気的な構成を示すブロック図である。  
図２に示すように、前記内視鏡装置１は、例えばジョイスティック７ａを用いて構成される操作手段及び指定手段としての操作指令部７と、キーボード８ａを用いて構成される設定値入力手段としての設定値指令部８と、前記操作指令部７からの操作指令値信号、前記設定値指令部８により設定された設定値及び前記ポテンショメータ２３等からの状態量検知信号に基づいて前記駆動部１０ｂを制御するための駆動指令値信号を出力するコントローラ５と、前記コントローラ５からの駆動指令値信号に基づいてそれぞれ回転制御されるモータ２７等の駆動部１０ｂと、この駆動部１０ｂの回転力によって姿勢制御される湾曲部１４内に設けられた挿入部駆動機構２０と、を有して主要部を構成している。
【００３８】
前記操作指令部７は、ジョイスティック７ａを用いて前記湾曲部１４の湾曲を指示するための操作手段であり、操作に基づく操作指令値信号を前記コントローラ５に出力する。また、前記操作指令部７は、前記湾曲部１４を構成する前記複数のリンク部材２１ａ〜２１ｎの内、２次元における位置と向きを固定するリンク部材２１を指定する指定手段であり、この操作に基づく前記操作指令値信号を前記コントローラ５に出力する。
【００３９】
前記コントローラ５、駆動部１０ｂ及び挿入部駆動機構２０を有する主要部の制御ブロック図が図９に示されている。  
図９に示すように、前記コントローラ５（図２参照）は、指令制御部５Ａを有している。この指令制御部５Ａには、前記操作指令部７からの操作指令値信号が供給されるようになっている。
【００４０】
前記指令制御部５Ａは、供給された操作指令値信号及び状態量検知信号に基づき、アクチュエータ制御ブロック３１に設けられた駆動部１０ｂを制御するのに必要な演算処理等を行うものである。
【００４１】
前記指令制御部５Ａには、前記湾曲部１４の挿入部駆動機構２０を構成する複数のリンク部材２１毎に設けられた複数の第１、第２…第ｎアクチュエータ制御ブロック３１ａ〜３１ｎが電気的に接続されている。
【００４２】
図１０は図９に示す前記指令制御部５Ａ及びアクチュエータ制御ブロック３１の具体的な構成を示すブロック図である。  
図１０に示すように、前記指令制御部５Ａは、前記操作指令部７からの操作指令値信号を入力するための入力部Ｉ／Ｆ３３と、前記設定値指令部８からの設定指令値を入力するための入力部Ｉ／Ｆ３４、３５と、これらのＩ／Ｆ３３〜３５を介して入力された各種指令値信号に基づき、前記第１、第２、…第ｎアクチュエータ制御ブロック３１ａ〜３１ｎ内の駆動部１０ｂを制御する中央処理演算装置（例えばＣＰＵ）３２と、を有している。
【００４３】
なお、前記入力部Ｉ／Ｆ３３は、ジョイスティック７ａがアナログの操作指令値信号を出力するものである場合にはこのアナログ信号の入力が可能である。また、前記入力部Ｉ／Ｆ３３は、操作指令部７が他のデジタルの操作指令値信号を出力する操作手段である場合にはこのデジタル信号の入力が可能である。
【００４４】
また、前記入力部Ｉ／Ｆ３４は、連続的に動作するのに必要なアナログの設定値指令信号の入力が可能であり、前記入力部Ｉ／Ｆ３５はパラメータ変更などのデジタルの設定指令値の入力が可能である。前記入力部Ｉ／Ｆ３４と前記入力部Ｉ／Ｆ３５とは１つのＩ／Ｆとして構成しても良い。
【００４５】
一方、前記アクチュエータ制御ブロック３１は、高速で各種の演算処理を行うとともに、演算結果に基づき駆動指令値信号を生成し出力するデジタルシグナルプロセッサ（Digital Signal Processor  で、以下、ＤＳＰと称す）３６と、このＤＳＰ３６からの駆動指令値信号（サーボ指令値信号）に基づき操作出力値信号（駆動信号）を生成し出力する制御指令値出力部３７と、この制御指令値出力部３７からの操作出力値信号に基づき回転が制御される駆動部１０ｂであるモータ２７と、このモータ２７の回転位置を検出するエンコーダやリンク部材２１の回転角度を検出するポテンショメータ２３等の検出手段であるセンサ３８と、このセンサ３８により検出された位置情報である状態量検知信号を検出して前記ＤＳＰ３６に出力するための信号入力部３９と、を有している。
【００４６】
なお、本実施例では、前記駆動部１０ｂとしてモータ２７を用いているが、これに限定されることはなく、他のアクチュエータを駆動部１０ｂとして用いるように構成しても良い。
【００４７】
図１１は前記アクチュエータ制御ブロックの具体的な構成を示すブロック図であり、図１２は図１１のサーボ制御コントローラのブロック図を示している。  
図１０に示すアクチュエータ制御ブロック３１において、前記ＤＳＰ３６は図１１に示すサーボ制御コントローラ３６Ａを構成し、このサーボ制御コントローラ３６Ａは、供給されたサーボ指令値信号に基づく操作出力値信号（駆動信号）を生成し、前記制御指令値出力部３７であるドライバ（アンプ）３７ａに出力する。なお、前記サーボ制御コントローラ３６Ａは、図１０に示すＣＰＵ３２に置き換えて構成しても良い。
【００４８】
前記ドライバ３７ａは、供給された操作出力値信号を増幅してモータ２７を回転させる。すると、このモータ２７の回転により図５に示すリンク部材２１は回動動作する。このとき、前記センサ３８は、リンク部材２１の状態量検知信号を生成し、前記信号入力部３９である検知部（アンプ）３９ａに出力する。
【００４９】
前記検知部３９ａは、供給された状態量検知信号を増幅して前記サーボ制御コントローラ３６Ａに出力する。このことにより、サーボ制御コントローラ３６Ａは、供給された状態量検知信号とサーボ指令値信号との比較を行いながら前記モータ２７の回転制御を行うようになっている。
【００５０】
この場合、前記サーボ制御コントローラ３６Ａは、図１２に示すように、供給されたサーボ指令値信号と、前記センサ３８により得られたモータ２７の変位情報である状態検出信号とに基づいて、ＰＤ制御部４０を用いて公知の比例・微分制御等のＰＤ制御を行って操作出力値信号（駆動信号）を生成し、モータ２７に与えることにより回転制御する。
【００５１】
ところで、このような多関節のリンク構造の湾曲部１４を備えた内視鏡２では、大腸などの管腔内の形状に合わせた形状で挿入するためには、先端側のリンク部材２１ａを最適な姿勢角度に制御すると同時に、これに連動してこの先端側のリンク部材２１ａに連なる複数他のリンク部材２１についても制御する必要がある。このような本発明に用いられる基本的な制御方法を図１３乃至１５を参照しながら説明する。
【００５２】
図１３乃至図１５は他関節のリンク構造を有する湾曲部の姿勢制御を説明するもので先端部１３側のリンク部材２１ａ〜２１ｃに対応した説明図であり、図１３は先端部１３側のリンク部材２１ａが所定の先端位置及び姿勢ベクトルの状態である図、図１４は図１３のリンク部材２１ａの姿勢状態である場合に予想される他のリンク部材の状態を示す図、図１５は先端部１３側のリンク部材２１ａのみを独立的に姿勢制御した所定の位置及び姿勢ベクトルの状態を示す図である。
【００５３】
本実施例のコントローラ５の指令制御部５Ａは、前記湾曲部１４を構成する複数のリンク部材２１ａ〜２１ｎをそれぞれ姿勢制御する際に、後述する運動学（順運動学及び逆運動学）に基づく演算処理を行うようになっている。
【００５４】
なお、順運動学に基づく演算処理とは、各関節（各リンク部材２１）の角度が得られたとき、先端部の位置・姿勢ベクトルを求めるための演算処理であり、逆運動学に基づく演算処理とは、先端部の位置・姿勢ベクトルが得られたとき、各関節（各リンク部材２１）の角度を求めるための演算処理を意味している。今後、簡単のため、３リンク及び前述した様に２次元平面に限った動作説明を行うが、２次元平面動作から３次元空間動作に置換することは、よく知られているロボットの座標変換処理と同様にＤＨ法（Denavit−Hartenberg表記法）による処理に差し替えることで対応可能となる。  
前記指令制御部５Ａは、後述するロボットの運動学を定量化する基本式に基づき、演算処理を行う。このようなロボットの運動学を定量化する基本式を下記に示す。  
ここで、ｘを手先座標、ｑを関節座標、及びＪをヤコビアン（速度ベクトル）とすると、下記の式が定義できる。なお、ｘ、ｑ、Ｊは、それぞれのベクトルを示すものとする。  
（式１）
0004754898.tif 000002
（式２）
0004754898.tif 000003
そして、以上の式（式１、式２）と各リンク拘束条件の運動学（ラグランジュアン）を解けば、下記のロボットダイナミクス（関節座標におけるトルクτ（または（∂２ｑ／∂ｔ２  ））とダイナミクスとの関係）を導出することが可能である。  
（式３）
0004754898.tif 000004
ただし、Ｈ（ｑ）は慣性行列項、ｈはコリオリ及び姿勢変化に依存するダイナミクス項、ｇは重力項、τEXTは外乱要素を表す。
【００５５】
各関節（各リンク部材２１であり図１３中のｑ１、ｑ２、ｑ３）と手先位置（先端側のリンク部材２１ａの位置でありｑ１）とにおいて、手先位置加速度と関節加速度との動的関係については、前記（式１）〜（式３）の関係と、前記(式２)両辺を時間による微分操作を行った結果を用いて、
Ｘ＝Ｊ・（ｄ２ｑ／ｄｔ２）＋（ｄＪ／ｄｔ）・（ｄｑ／ｄｔ）の関係と、右辺を行列分解（特異値分解など）することで行列空間を核空間（Ｋｅｒｎｅｌｌ）と零空間（Ｎｕｌｌ）に分解することができる。
【００５６】
これにより、下記に示す(式４)を導出することが可能である。
【００５７】
（式４）
0004754898.tif 000005
ただし、（式４）中の表記＃は擬似逆行列を表している。概して、前記(式４)において、左辺第１項は手先位置の動きを表し、第２項は手先以外の各関節の動きを表している。したがって、手先位置（先端側リンク部材２１ａの位置でｑ１）を決定する場合にそれ以降の関節姿勢（他のリンク部材２１ｂ〜２１ｎでｑ１，ｑ２）は、一意に決定されない。
【００５８】
つまり、図１４に示すように、先端部のｑ１の位置が指定した場合、このｑ1を含むｑ２、ｑ３からなるリンク部材の姿勢の取り方は、図中実線に示す姿勢以外に点線で示す姿勢のとり方も行うことができ、姿勢が一意には決まるものではない。すなわち、湾曲部１４の各リンク部材２１は、ロボットの姿勢の冗長性を有することになる。
【００５９】
そして、コントローラ５の指令制御部５Ａは、前記(式３)、（式４）のリンク運動方程式を実時間で制御するための各リンクに付与すべきトルク計算、すなわち後述する（式７）、（式８）の計算を行うが、図１５に示すように、先端部から次段のリンク部材２１ｂ、２１ｃ（ｑ２、ｑ３）についてはリンク位置・姿勢の運動学に基づく演算処理を行い、先端側のリンク部材２１ａ（ｑ１）については、独立的に駆動制御するアルゴリズム（図示しないメモリに記憶されている）に基づいて演算処理を行うようになっている。
【００６０】
このことにより、先端側のリンク部材２１ａの位置、姿勢（向き）が決定すると、前記演算処理を行うことにより、先端側のリンク部材２１ａに連なる他のリンク部材２１の角度を求めることが可能である。
【００６１】
次に、前記運動学（順運動学及び逆運動学）に基づく演算処理を行うためのサーボ制御コントローラ３６Ａの具体的な構成及び制御方法について図１６乃至２１を参照しながら説明する。
【００６２】
図１６乃至図２１はサーボ制御コントローラ３６Ａの具体的な構成及び制御方法を説明するためのもので、図１６はサーボ制御コントローラ３６Ａの概略構成を示すブロック図、図１７は図１６の制御則演算部３６Ｂの具体的な構成を示すブロック図、図１８は図１７のダイナミックス演算部４３の概略構成を示すブロック図、図１９は図１８のダイナミックス演算部４３の具体的な構成を示すブロック図、図２０は図１７の運動学演算部４１の概略構成を示すブロック図、図２１は図２０の運動学演算部４１の具体的な構成を示すブロック図をそれぞれ示している。
【００６３】
図１６に示すように、サーボ制御コントローラ３６Ａは、制御則演算部３６Ｂを有しており、この制御則演算部３６Ｂには、先端側のリンク部材２１ａあるいは各リンク部材２１におけるサーボ指令値信号を含む設定指令値信号等の指令値情報（設定値情報も含む）と、各リンク部材２１における状態量検知信号などの位置フィードバック情報（以下、位置Ｆ／Ｂ情報と称す）とが供給される。
【００６４】
そして、前記制御則演算部３６Ｂは、供給された指令値情報と位置Ｆ／Ｂ情報とに基づいて、後述する運動学演算部４１及びダイナミックス演算部４３に各リンク部材２１に対応する駆動指令値信号としての関節トルク指令値信号を得るための演算処理を行い、駆動部１０ｂに出力する。
【００６５】
前記制御則演算部３６Ｂの具体的な構成が図１７に示されている。
【００６６】
図１７に示すように、前記制御則演算部３６Ｂは、先端側のリンク部材２１ａの先端位置座標である指令値位置情報と、各関節（各リンク部材２１）の関節位置Ｆ／Ｂ情報とを入力して、これらの情報を用いて運動学に基づく演算処理を行う運動学演算部４１と、この運動学演算部４１の演算結果と、前記指令値情報及び関節位置Ｆ／Ｂ情報とを入力して、これらの情報を用いて各リンク部材２１の変化量に関する動的な部分を導き出すためにダイナミクス演算処理を行うダイナミックス演算部４３と、前記指令値情報と前記運動学演算部４１及び前記ダイナミックス演算部４３との各演算結果とを入力し、これらの情報に基づいて各リンク部材２１を制御するのに必要な関節トルク指令値信号を演算処理する制御演算部４２と、を有している。
【００６７】
そして、前記制御則演算部３６Ｂは、生成された前記関節トルク指令値信号を、前記アクチュエータ制御ブロック３１内の駆動部１０ｂに供給することにより、挿入部駆動機構（マニピュレータ）２０を制御する。  
このとき、マニピュレータ２０は、前記アクチュエータ制御ブロック３１内のセンサ３８によって検出された、状態量検知信号である各関節の関節位置Ｆ／Ｂ情報を前記運動学演算部４１及びダイナミックス演算部４３に出力する。
【００６８】
図１８に前記ダイナミックス演算部４３の概略構成を示し、図１９に前記ダイナミクス演算部の具体的な構成が示されている。  
図１８に示すように、前記ダイナミックス演算部４３は、前記運動学演算部４１の演算結果である後述するヤコビアン（速度ベクトルで、ＪあるいはヤコビアンＪとして説明することもある）と、前記指令値情報及び関節位置Ｆ／Ｂ情報とを入力して、これらの情報を用いてダイナミックス演算処理を行うことにより、各リンク部材２１の変化量に関する動的な部分、すなわち、各リンク部材２１の位置偏差、ヤコビアンＪ、関節位置速度・加速度を導き出し、演算処理結果として出力する。
【００６９】
具体的には、前記ダイナミックス演算部４３は、図１９に示すように、順運動学演算部４４と、時間微分演算部４５と、時間微分演算部４６と、を有している。
【００７０】
前記順運動学演算部４４は、前記関節位置Ｆ／Ｂ情報に基づいて前記した順運動学に基づく演算処理を行う。この演算出力結果は、減算器によって先端部のリンク部材２１ａの先端位置情報から差し引かれることにより、各リンク部材２１の位置偏差ｅが導きだされる。
【００７１】
前記時間微分演算部４５は、前記関節位置Ｆ／Ｂ情報とヤコビアンＪとが入力され、前記関節位置Ｆ／Ｂ情報とヤコビアンＪとを用いて時間微分演算処理を行うことにより、各リンク部材２１の変位量、すなわち、ヤコビアン速度 ∂Ｊ／∂ｔ、関節位置速度∂ｑ／∂ｔを生成する。
【００７２】
前記時間微分演算部４６は、前記関節位置速∂ｑ／∂ｔを入力して時間微分演算処理を行うことにより、関節位置加速度∂２ｑ／∂ｔ２   を生成する。
【００７３】
図２０に前記運動学演算部４１の概略構成を示し、図２１に前記運動学演算部４１の具体的な構成が示されている。  
図２０に示すように、前記運動学演算部４１は、前記指令値情報及び関節位置Ｆ／Ｂ情報を入力して、これらの情報を用いて運動学に基づく演算処理を行うことにより、先端側のリンク部材２１ａのヤコビアンＪ、ヤコビアンＪの疑似逆行列Ｊ＋、及びヤコビアンＪの零空間疑似逆行列（Ｉ−Ｊ＋Ｊ）を導き出し、演算処理結果として出力する。
【００７４】
具体的には、前記運動学演算部４１は、図２１に示すように、ヤコビアン演算部４７と、疑似逆行列演算部４８と、ヤコビアン零空間演算部４９と、を有している。  
前記ヤコビアン演算部４７は、前記指令位置情報と位置Ｆ／Ｂ情報に基づいてヤコビアンＪを得るための演算処理を行い、得られたヤコビアンＪを図１７に示す制御演算部４２、前記疑似逆行列演算部４８及び前記ヤコビアン零空間演算部４９に出力する。
【００７５】
なお、前記ヤコビアン演算部４７によるヤコビアン演算処理に基づく（式５）を下記に示す。
【００７６】
（式５）
0004754898.tif 000006
前記疑似逆行列演算部４８は、前記ヤコビアンＪが入力され、このヤコビアンＪに一般化逆行列演算処理を行うことにより、疑似逆後列Ｊ＋を生成し、図１７に示す制御演算部４２及び前記ヤコビアン零空間演算部４９に出力する。
【００７７】
なお、一般化逆行列演算処理に基づく(式６)を下記に示す。
【００７８】
（式６）
0004754898.tif 000007
ただし、式中のスーパースクリプトＴは転置行列を表している。
【００７９】
前記ヤコビアン零空間演算部４９は、供給されたヤコビアンＪと前記疑似逆後列Ｊ＋とにヤコビアン零空間演算処理を行うことにより、行列擬似逆行列１−Ｊ＋Ｊを生成し、前記図１７に示す制御演算部４２に出力する。
【００８０】
したがって、前記ヤコビアンＪ、ヤコビアンＪの疑似逆行列Ｊ＋及びヤコビアン零空間疑似逆行列（Ｉ−Ｊ＋Ｊ）は前記運動学演算部４１の演算処理結果として、図１７に示す制御演算部４２に供給されることになる。制御演算部４２においては、前述した指令値と状態量とに基づくＰＤ制御を行う。
【００８１】
次に、前述した図１７に示す制御則演算部３６Ｂ内にて行われる各種演算処理に必要な制御則式を説明する。  
本発明の医療用制御装置を用いた内視鏡装置１は、複数のリンク部材２１と、複数の関節部材２０ａとを有してマニピュレータを構成する挿入部駆動機構２０を備えている。このため、前記図１７に示す制御則演算部３６Ｂは、マニピュレータ運動方程式である前記（式３）、（式４）を基本とし、さらに、後述するマニピュレータ制御則に基づく各式を用いて各種演算処理を行うことにより、前記関節トルク指令値信号を導いている。
【００８２】
前記マニピュレータ制御則に基づく式を下記に示す。この場合、関節トルクをτとし、位置偏差ｅとすると、
（式７）
0004754898.tif 000008
となる。
【００８３】
ただし、ＫP は制御量比例ゲイン、ＫD は制御量微分ゲイン、ｅは指令値と状態量から算出される位置偏差、φは前述した冗長性に重み付けするための制御パラメータ、ｈ（＊，＊）、ｇは前述したパラメータである。
【００８４】
（式８）
0004754898.tif 000009
となる。なお、ＫNULL は、前記制御演算部４２にて用いられる係数である。
【００８５】
前記(式７)においては、図１７に示す前記運動学演算部４１、前記ダイナミックス演算部４３及び前記制御演算部４２によって各種求められた演算処理結果を当てはめることにより、関節トルクτを得ることができる。
【００８６】
また、前記（式８）において、前記ＫNULL 以外の値については、前記運動学演算部４１によって求められた演算結果である。
【００８７】
ところで、前記構成の内視鏡２の挿入部９を体腔内の挿入する場合、湾曲部１４が剛体とならないように、湾曲部自体が柔らかなダイナミクス特性にすることが望ましい、そのためには、図２２に示すようなばね２０ａ及びダンパ２０ｂの組み合わせによるダイナミクス特性を先端部で有することで実現している。
【００８８】
言い換えれば、ばね２００ａ及びダンパ２００ｂによる粘弾性作用により、図２２中に示す力量Ｆが挿入部９の先端部１３に加えられると、前記湾曲部１４は、柔らかな特性、すなわち、コンプライアンス特性を有することになる。  
以下、制御演算部４２に実装される制御則についての説明を行う。
【００８９】
まず、図２２におけるダイナミクス特性の運動方程式は、（式９）の通りに記述される。
【００９０】
（式９）
0004754898.tif 000010
（式９）から、マニピュレータ手先の指令位置をＸ、手先に加わる外力をＦＴＩＰ 、その結果、生じる位置をＸＤとすれば、コンプライアンス特性を有する先端のダイナミクス特性は、（式１０）の通りとなる。
【００９１】
（式１０）
0004754898.tif 000011
ここで、ＦＴＩＰに抗する等価な関節力τＦは、（式１１）の通りである。
【００９２】
（式１１）
0004754898.tif 000012
また、簡単のため先端部が拘束された状態で外部環境から外力Ｆを受けたときの運動方程式は、先端部質量Ｍについてのみに対して記述すると（式１２）の通りとなる。
【００９３】
（式１２）
0004754898.tif 000013
さて、前述したように、マニピュレータの運動方程式は、（式１３）より、（式１４ａ）及び（式１４ｂ）が導出される。
【００９４】
（式１３）
0004754898.tif 000014
（式１４ａ）
0004754898.tif 000015
（式１４ｂ）
0004754898.tif 000016
ここで、改めて、各リンクのパラメータを含めたマニピュレータダイナミクスの記述を行ったときのコンプライアンス特性は（式１５）の通りとなる。
【００９５】
（式１５）
0004754898.tif 000017
前記（式１５）を前記（式１４ａ）に代入すると、（式１６）の通りとなる。
【００９６】
（式１６）
0004754898.tif 000018
前記（式１６）は（式７）と同様なものを別の形で示したものである。ここでは、簡単のため先端部にバネ特性Ｋを有するトルク指令の制御式を導出する。
【００９７】
（式１６）において、速度が小さいときには、下記に示す（式１７）の右辺１，２項を省略することが可能となるため、（式１７）が導出され、さらに、Ｄ＝０、ＫＦ＝Ｉとし、先端変位量△Ｘ＝（Ｘ−ＸＤ）が比較的小さいと仮定すれば、近似的に△Ｘ＝Ｊ（ｑ）・△ｑが正立する。
【００９８】
その結果、（式１８）が導出される。これは、所望のコンプライアンス特性としてＫを設定した場合の各関節にどのようなトルク指令を生成させたかを示している。
【００９９】
（式１７）
0004754898.tif 000019
（式１８）
0004754898.tif 000020
前述のことから、（式７）、(式１６）に関して、概して、（式４）において左辺第１項は手元位置の動きを表し、第２項は関節の動きを表していることが解る。
【０１００】
そこで、前記コントローラ５の指令制御部５Ａは、前述したように前記(式７)、（式８）を実時間でトルク計算を行うが、前記(式７)の２項に該当する値を、リンク部材２１の可動範囲に応じた重み付けを演算処理した結果として、駆動部１０ｂを駆動制御するアルゴリズムに基づいて、演算処理を行うようにしても良い。
【０１０１】
つまり、前記（式７）の２項の（Ｉ−Ｊ#ｘＪ）・（d２ｑ／ｄｔ２）のアルゴリズムを、例えば図２４に示すようなパラメータである重み関数φに変更して演算処理を行う。すなわち、前記重み関数φは、各リンク部材２１の角度を決定する際に、各リンク可動範囲限界においては重みが大きくなり、可動範囲中立位置近傍においては重みが小さくなるような演算処理を行う。すなわち、各リンクの姿勢は出来るだけ、中立付近になるような姿勢となる重み設定となり、無理な姿勢を排除し、動き安い範囲内で動作するための係数である。
【０１０２】
なお、予め設定された許容範囲内とは、例えば隣り合うリンク部材２１のなす角度が±９０度の範囲内を意味している。つまり、前記パラメータは、前記隣り合うリンク部材２１のなす角度が鋭角にならないようにするためのものとなっている。
【０１０３】
このことにより、前記挿入部駆動機構２０の各リンク部材２１が動き安く、且つ滑らかな姿勢制御が可能となる。
【０１０４】
なお、前記重み関数φは、後述する図２５乃至図２９のいずれかのグラフに示すような重み関数を用いても良い。
【０１０５】
このような図２５乃至図２９に示す重み関数の特性を説明する。なお、これら２５乃至図２９の縦軸は（式８）におけるＫNULL を示し、横軸は各リンク部材２１の動作範囲（各リンク部材２１の検出された角度）を示している。また、正の動作制限値は９０度であり、負の動作制限値は−９０度としている。
【０１０６】
図２５は重み関数φの変形例１の特性を示すグラフである。図２５に示すように、前記重み関数φは１次関数であり、各リンク部材２１の位置変化に対応する下記に示すように演算処理することにより得た重み関数としたものである。
【０１０７】
（式１９）
0004754898.tif 000021
なお、この場合αを負定値、ｑｉを各リンク位置、qｉ_orgをリンク原点位置とする。  また、図２６は重み関数φの変形例２の特性を示すグラフである。図２６に示すように、前記重み関数φは２次関数であり、各リンク部材２１の位置変化に対応する下記に示すように演算処理することにより得た重み関数としたものである。
【０１０８】
（式２０）
0004754898.tif 000022
なお、この場合、αは負定値である。
【０１０９】
また、図２７は重み関数φの変形例３の特性を示すグラフである。図２７に示すように、前記重み関数φは、各リンク部材２１の位置変化に対応する偏微分を下記に示すように演算処理することにより得た重み関数としたものである。
【０１１０】
（式２１）
0004754898.tif 000023
なお、この場合、αは負定値、ｑｉは各リンク位置、qｉ_orgはリンク原点位置、qｉ_maxはリンク上限角度値、qｉ_minはリンク下限角度値である。
【０１１１】
また、図２８は重み関数φの変形例４の特性を示すグラフである。図２８に示すように、前記重み関数φは、場合によっては前記図２７に示す重み関数とは逆に、出来るだけ動作制限値近傍になるような重み関数として、後述する(式２２)にφのオフセット値を加えて新たにφとしαを正定値とすることで図２８の重み関数も実現できる。なお、この場合αは正定値である。
【０１１２】
また、図２９は重み関数φの変形例５の特性を示すグラフである。図２９示すように、前記重み関数φは、前記変形例４の同様の効果として、図中波線部分を含むような三角関数の絶対値を（式２２）の通り用いたものでも良い。
【０１１３】
（式２２）
0004754898.tif 000024
なお、この場合、αは負定値である。
【０１１４】
したがって、前述した図２５乃至図２９のいずれかのグラフに示すような前記重み関数φを用いて演算処理を行うことにより、無理な姿勢を排除し、動き易い範囲内で動作するための角度を各リンク部材２１毎に取得することが可能である。
【０１１５】
また、本実施例では、各リンク部材２１毎に重み付けを行うのではなく、マニピュレータ２０全体に対して、無理な姿勢を排除し、動き易い範囲内で動作するための重み付けを行うことも可能である。
【０１１６】
このような場合、前記重み関数φは、マニピュレータ姿勢の特異度を評価指標としたものを用いる。すなわち、ヤコビアンＪに対する可操作性指標Ｍを下記に示す（式２３）のように定義し、この可操作性指標Ｍを前記重み関数φに替えて用いても良い。
【０１１７】
（式２３）
0004754898.tif 000025
また、Ｊ・ＪＴの固有値を計算すると、
（式２４）
0004754898.tif 000026
となる。
【０１１８】
つまり、前記（式２３）及び（式２４）に示すように、Ｊ・ＪＴの固有値を計算すれば、通常、行列Ｊ・ＪＴの階数＝Ｒａｎｋ（ｉ）となるが、特異姿勢の場合には、行列Ｊ・ＪＴの階数＜Ｒａｎｋ（ｉ）となり行列Ｍが退化される。すなわち、前記重み関数φに替えて、前記可操作性指標Ｍを用いて演算処理を行うことにより、各リンク部材２１毎ではなく、マニピュレータ２０全体に対して、無理な姿勢を排除し、動き易い範囲内で動作するための重み付けを行うことが可能である。この場合、各リンク部材２１は一意に制御されない。
【０１１９】
以上示した通り幾つかの姿勢制御における重み関数を示しているが、場合によっては後述する軸切り替え手段により、前記重み関数の組み合わせを、各リンク間での異なる重みの組み合わせを選択的に行うことも可能である。
【０１２０】
なお、本発明では、前記図２５乃至図２９に示す重み関数や、（式２３）及び(式２４)に示すような可操作性指標Ｍを用いた重み関数は、それぞれテーブル毎に格納されるようになっている。そして、コントローラ５（具体的にはＣＰＵ３２）は、前記複数のテーブルの内、いずれかのテーブルに基づく重み関数を選択し、選択した重み関数を用いて、各リンク部材２１の角度の演算処理、あるいはマニピュレータ全体に対する各リンク部材２１の各角度の演算処理を行うようになっている。
【０１２１】
次に、前述したような湾曲部１４の姿勢駆動制御を行うコントローラ５の実施例１について図３０乃至図４１を参照しながら説明する。  
図３０乃至図４１は本発明の実施例１に係り、図３０は内視鏡装置１のコントローラ５の具体的な構成を示すブロック図、図３１及び図３２は湾曲部１４を構成する挿入部駆動機構２０の姿勢制御を説明するもので、図３１は先端側のリンク部材２１ａをポイントロックした状態を示す説明図、図３２は先端側のリンク部材２１ａをポイントロックすることにより次段のリンク部材が冗長性を有している状態を示す説明図である。また、図３３は図３０のポイントロック演算部５０の具体的な構成を示すブロック図、図３４は図３３の逆運動学演算部５２の具体的な構成を示すブロック図、図３５は先端側のリンク部材２１ａをポイントロックしたときの姿勢状態を説明する説明図、図３６は腸壁との接触により生じる負荷を検出する負荷検出部を各リンク部材毎に設けた挿入部駆動機構の構成を示す概略構成図、図３７は図３６の負荷検出部及び制御則演算部３６Ｂ内に含まれるダイナミックス演算部を示すブロック図、図３８は負荷検出部からの検出結果と重み関数を決定する係数との特性を示すグラフ、図３９は図３７の特性とは異なる特性の一例を示すグラフである。また、図４０及び図４１は実施例１の変形例１を示し、図４０は負荷検出部からの検出結果と時間との特性を示すグラフ、図４１は変形例１を実施するための主要ブロック構成を示すブロック図、図４２及び図４３は実施例１の変形例２を示し、図４２は負荷検出部として用いた変位センサからの検出結果と時間との特性を示すグラフ、図４３は変形例２を実施するための主要ブロック構成を示すブロック図をそれぞれ示している。
【０１２２】
本実施例におけるコントローラ５は、上述したような湾曲部１４の姿勢制御を行うサーボ制御コントローラ３６Ａを有し、このサーボコントローラ３６Ａには、前記制御則演算部３６Ｂの演算処理機能を有するポイントロック演算部５０が設けられている。
【０１２３】
前記サーボコントローラ３６は、前記ポイントロック演算部５０を用いて、前記湾曲部１４が挿入されることによって移動したときに前記操作指令部７により指定された位置と向きを維持しながら前記操作指令部７により指定されたリンク部材２１ａ及びこのリンク部材２１ａに連なる他のリンク部材２１が前記位置を通過するように、前記複数のリンク部材２１のそれぞれの角度を演算処理し、この演算結果に基づいて、前記複数のリンク部材２１を回動させるように駆動部１０ｂを制御する。
【０１２４】
また、本実施例において、サーボコントローラ３６は、前記ポイントロック演算部５０により前記複数のリンク部材２１のそれぞれの角度を求めるための演算処理を行う際に、前記図２５乃至図２９のグラフに示す特性等の重み関数を格納したそれぞれのテーブルの内、手動、あるいは自動的にいずれかのテーブルを選択し、このテーブルに基づく重み関数を用いて演算処理を行うようになっている。
【０１２５】
このような演算処理を行うポイントロック演算部５０の構成について図３０、図３３及び図３４を参照しながら説明する。
【０１２６】
図３０に示すように、前記ポイントロック演算部５０には、先端側のリンク部材２１ａにおけるサーボ指令値信号を含む設定指令値信号等の先端指令値情報と、前記リンク部材２１ａにおける状態量検知信号などの位置Ｆ／Ｂ情報とが供給される。
【０１２７】
そして、前記ポイントロック演算部５０は、供給された先端指令値情報と位置Ｆ／Ｂ情報とに基づいて、後述する先端リンク根元座標位置計算部５１及び逆運動学演算部５２によって各リンク部材２１に対応する駆動指令値信号としてのサーボ位置指令信号（関節トルク指令値信号を含む）を得るための演算処理を行う。
【０１２８】
すなわち、前記ポイントロック演算部５０は、供給された先端指令値情報と位置Ｆ／Ｂ情報とに基づいて、前記湾曲部１４が挿入されることによって移動したときに前記操作指令部７により指定された位置と向きを維持しながら前記操作指令部７により指定されたリンク部材２１ａ及びこのリンク部材２１ａに連なる他のリンク部材２２が前記位置を通過するように、前記複数のリンク部材２１のそれぞれの角度を演算処理し、この演算結果をサーボ位置指令値信号として駆動部１０ｂに出力する。
【０１２９】
なお、前記ポイントロック演算部４０の演算処理に用いられる前記先端指令値情報と前記位置Ｆ／Ｂ情報とは、検出手段であるセンサ３８によって検出される、前記複数のリンク部材２１が互いになす角度及びその角度の変化量を示している。
【０１３０】
このことにより、駆動部１０ｂは、供給されたサーボ位置指令信号に基づき指定されたリンク部材２１の回動をそれぞれ制御することにより、前記挿入部駆動機構２０を有する湾曲部１４は、挿入する管腔内の形状に合わせた形状に湾曲されることになる。
【０１３１】
図３１には先端側のリンク部材２１ａのみが指示された所定の姿勢位置でポイントロックされた状態が示されている。  
このような姿勢状態に制御する場合、前記ポイントロック演算部５０は、図３２に示すように、先端部側のリンク部材２１ａの関節部材２０ａをポイントロックＲ１とすると、このポイントロックＲ１のポイントロック座標値を演算処理することにより先端側のリンク部材２１ａを２次元における位置と向きを姿勢制御するのに必要なサーボ位置指令信号を生成する。
【０１３２】
また、図３２に示すように、先端側のリンク部材２１ａがポイントロックされている姿勢状態では、前記ポイントロックＲ１以降の複数のリンク部材２１ｂ、２１ｃ、２１ｄで構成されるリンク部２０Ｂは、前述した姿勢制御によって冗長性を有し、図中波線で示すように規制されない任意な姿勢に変化可能となる。
【０１３３】
図３３に前記ポイントロック演算部５０の具体的な構成が示されている。図３３に示すように、前記ポイントロック演算部５０は、先端リンク根元座標位置計算部５１と、逆運動学演算部５２と、を有している。
【０１３４】
前記先端リンク根元座標位置計算部５１は、リンク部材２１の関節角度情報と、先端側のリンク部材２１ａの位置情報である先端指令値情報と、位置Ｆ／Ｂ情報とが入力され、これらの情報に基づき、先端側のリンク部材２１ａの先端リンク根元座標位置を算出し、算出結果を逆運動学演算部５２に出力する。
【０１３５】
前記逆運動学演算部５２は、前記先端リンク根元座標位置計算部５１からの先端指令値情報と前記位置Ｆ／Ｂ情報とが入力され、これらの情報に基づき、前記先端側のリンク部材２１ａ以降のリンク部材２１における根元座標位置を演算処理し、先端側のリンク部材２１ａ以外のサーボ位置指令値信号を生成し出力する。
【０１３６】
図３４に前記逆運動学演算部５２の具体的な構成が示されている。図３４に示すように、前記逆運動学演算部５２は、機構パラメータ演算部５３と、順運動学演算部５４と、ヤコビアン演算部５５と、ゲイン５６と、行列演算部５７と、積分回路５８と、を有している。  前記機構パラメータ演算部５３は、位置Ｆ／Ｂ情報をもとに先端側のリンク部材２１ａを微妙な姿勢に調整制御するための先端リンクオフセット値を演算処理して生成する。この先端リンクオフセット値は、前記先端指令値信号とで差分が求められ、この差分値は、前記順運動学演算部５４により演算処理された指令値Ｆ／Ｂ情報とで再度差分が求められる。このことにより、この差分値は２段目位置指令情報として前記ゲイン５６に供給される。前記ゲイン５６は、供給された２段目位置指令情報を増幅し、前記行列演算部５７に出力する。
【０１３７】
一方、前記ヤコビアン演算部５５は、図２１にて説明したものと同様に、指令値情報を元に演算処理することによりヤコビアンＪを生成し、前記行列演算部５７に出力する。
【０１３８】
前記行列演算部５７は、供給された２段目位置指令情報を基に、リンク部材２１の姿勢状態に応じた２段目以降のリンク部材２１の姿勢（角度）を決定するための行列演算処理を行い、得られた演算結果を積分回路５８により積分処理を施した後、２段目以降のサーボ指令値信号として駆動部１０ｂに出力する。
【０１３９】
なお、前記積分回路５８の出力、すなわち、２段目以降のサーボ指令値信号は、前記ヤコビアン演算部５５及び順運動学演算部５４を介して先端指令値情報と位置Ｆ／Ｂ情報との偏差値にフィードバックされている。これは、逆運動学を解く際の特異解を出来るだけ発生しないよう考慮しているためである。
【０１４０】
通常逆運動学であれば解析的に解を求めるが、特異解が発生した場合に解が求まらないことが生じる。そのため、ここでは、逆運動学を用いずに、順運動学による逆運動学を求める手法を用いており、ゲイン５６の値によって収束速度を設定する構造になっている。
【０１４１】
このことにより、２段目以降のリンク部材２１は、前記先端側のリンク部材２１ａの姿勢制御に連動して微妙な姿勢となるように制御されることになる。
【０１４２】
図３５は実施例１のポイントロック演算部５０によって姿勢制御された湾曲部１４の湾曲状態を示している。  
例えば、操作者が操作指令部７を用いて先端側のリンク部材２１ａのみをポイントロックするための指示を入力すると、前記ポイントロック演算部５０は、前記したように演算処理を行うことにより、ポイントロックＲ１のポイントロック座標値（２次元における位置と向き）にて先端側のリンク部材２１ａをポイントロックするためのサーボ位置指令値信号を生成し、駆動部１０ｂに与えて制御する。
【０１４３】
このことにより、湾曲部１４の先端側のリンク部材２１ａは、図３５に示すようにポイントロックＲ１にて指示された姿勢ベクトル（２次元における位置と向き）でポイントロックされる。  
また、このとき、前記ポイントロックＲ１以降の複数のリンク部材２１ｂ、２１ｃ、２１ｄで構成されるリンク部２０Ｂは、前記図３３及び図３４のブロック図にて説明したように、前記ポイントロック演算部５０によって、前記先端側のリンク部材２１ａの姿勢制御に連動した冗長性を有する姿勢制御が行われるので、例えば図中矢印Ａ方向に対してその姿勢が任意となる。
【０１４４】
すなわち、ポイントロック演算部５０は、前記湾曲部１４が挿入されることによって移動したときに前記操作指令部７により指定された位置と向きを維持しながら前記操作指令部７により指定されたリンク部材２１ａ及びこのリンク部材２１ａに連なる他のリンク部材２２が前記位置を通過するように、前記複数のリンク部材２１のそれぞれの角度を演算処理し、この演算結果に基づいて前記複数のリンク部材２１を回動させるように駆動部１０ｂを制御する。
【０１４５】
なお、前記ポイントロック演算部５０は、前記複数のリンク部材２１のそれぞれの角度を演算処理する場合、前記設定値指令部８により指定された重み関数テーブルに基づく重み関数を用いて演算処理する。これにより、複数のリンク部材２１やマニピュレータ２０の無理な姿勢を排除し、動き安い範囲内で動作させるのに必要な角度が前記複数のリンク部材２１毎に取得でき、この演算結果に基づき、各リンク部材２１の回動が制御される。
【０１４６】
このような内視鏡装置１において、挿入部９を大腸に挿入する場合、術者は、湾曲部１４を有する挿入部９を肛門を介して挿入する。そして、挿入部９の先端部１４がＳ状結腸部に到達すると、サーボコントローラ３６Ａは先端側のリンク部材２１ａを操作指令部７により指定した２次元における位置と向きにポイントロックさせる。
【０１４７】
そして、術者は２次元における位置と向きにポイントロックされた先端側のリンク部２１ａをＳ状結腸部の腸壁に沿ってさらに奥へと挿入する。
【０１４８】
すると、前記先端側のリンク部材２１ａ及びこのリンク部材２１ａに連なる他のリンク部材２１は、前記操作指令部７により指定された位置と向きを維持しながら前記位置を通過するような角度に制御されることになる。すなわち、湾曲部１４はＳ状結腸部の形状に合った形状に湾曲動作しながら挿入されることになる。なお、２段目以降のリンク部材２１ｂ〜２１ｎは、前記したように冗長性を有する姿勢制御が行われることになる。
【０１４９】
このことにより、従来、挿入に困難を要していたＳ状結腸部に合わせた形状で挿入することができるので、Ｓ状結腸部を容易に通過させることが可能となる。よって、さらに、大腸の深部へと容易に挿入することができるので、挿入性を向上させることができる。
【０１５０】
ところで、本実施例の内視鏡装置１は、前記湾曲部１４を管腔内に挿入した際に、前記湾曲部１４を構成する複数のリンク部材２１あるいは複数のリンク部材２１内の任意のリンク部材２１の角度に関し重み関数を用いて演算処理を行う場合に、後述する負荷検出部６０からの検出結果に基づいて自動的に最適なパラメータである重み関数を決定することが可能である。
【０１５１】
図３６に示すように、挿入部９の湾曲部１４を構成する各リンク部材２１には、負荷検出手段として負荷検出部６０がそれぞれ設けられている。
【０１５２】
この負荷検出部６０は、例えば歪ゲージ等のテンションセンサを用いて構成されたもので、各リンク部材２１の周面上の予め設定された箇所（例えば９０度毎に設けた場合には４箇所）に配置されるように、各リンク部材２１を覆う外皮チューブ（図示せず）内にそれぞれ設けられている。
【０１５３】
図３６及び図３７に示すように、前記負荷検出部６０は、湾曲部１４が管腔内に挿入されている際に、腸壁等の接触により生じる力（またはテンションともいう）を検出し、検出結果を力Ｆ／Ｂ情報としてダイナミックス演算部４３Ａに出力する。   
ダイナミックス演算部４３Ａには、前記負荷検出部６０からの検出結果に基づき、重み関数を決定する演算処理を行うのに必要なパラメータ値を生成するとともにこのパラメータ値に応じた重み関数を演算処理する設定手段としての重み切り替え演算部６２が設けられている。
【０１５４】
この重み切り替え演算部６２は、例えば前記図２５乃至図２９に示す重み関数や、（式２４）及び(図式)に示すような可操作性指標Ｍを用いた重み関数をそれぞれ格納した重み関数テーブル６２ａを有している。なお、この重み関数テーブル６２ａは、前記重み切り替え演算部６２内ではなく、指令制御部５Ａ内等に設けて構成しても良い。
【０１５５】
前記ダイナミックス演算部４３Ａは、各リンク部材２１の角度の変化量である位置Ｆ／Ｂ情報に基づいて前記重み切り替え演算部６２を用いて前記複数のリンク部材２１の角度に関し重み関数を用いて演算処理を行わせることにより、重み付けされたサーボ指令値信号を駆動部１０ｂに出力する。
【０１５６】
この場合、重み切り替え演算部６２は、前記負荷検出部６０からの検出結果に基づき、重み関数を決定する演算処理を行うのに必要なパラメータ値を生成する。
【０１５７】
そして、重み切り替え演算部６２は、操作指令部７により予め設定された前記重み関数テーブル６２ａのいずれかのテーブルの重み関数と前記生成したパラメータ値とを用いて演算処理を行う。
【０１５８】
つまり、下記（式２５）に示すように、
（式２５）
0004754898.tif 000027
重み切り替え演算部６２は、前記(式２５）に示す負荷検出部６０からの検出結果である（Ｆ）が変化することによって、パラメータ値であるＫNULL を決定する。
【０１５９】
このパラメータ値の特性の一例が図３８のグラフに示されている。
【０１６０】
図３８に示すように、前記パラメータ値である前記ＫNULL は、前記力Ｆ／Ｂ情報の値が予め設定された値になるまで大きくなり、この設定値以降については常に一定の値となる。すなわち、力Ｆ／Ｂ情報に応じてＫNULL ゲインが線形に変化し、予め設定された任意の閾値で飽和するパラメータ値となる。前記パラメータ値ＫNULL 閾値の設定値は、前記設定値指令部８により入力することも可能である。
【０１６１】
以上のことから、前記湾曲部１４近傍において、腸壁にあたるなどの外乱に応じて、外乱作用を受けないようにする姿勢となる重み関数値φとなる。
【０１６２】
また、前記示した線形な重み関数パラメータ以外にも、センサ特性・センサ実装などにより生じる非線形成分を相殺することや、動作の姿勢を意識的に非線形にしたい場合などがあるが、その一例として、重み関数パラメータＫNULL を下記（式２６）、（式２７）に示す非線形関数としても良い。
【０１６３】
パラメータ値であるＫNULL のゲイン最大値をＫNULLMAX  とし、前記力Ｆ／Ｂ情報を（Ｆ）とすると、
（式２６）
0004754898.tif 000028
（式２７）
0004754898.tif 000029
となる。ただし、β＞０  とする。
【０１６４】
この場合、図３９のグラフに示すような前記パラメータ値の特性となる。
【０１６５】
また、図３９に示すグラフ特性以外にも、（式２８）、（式２９）のような高次の関数を用いても構わない。このような(式２８）〜（式２９）を下記に示す。
【０１６６】
（式２８）
0004754898.tif 000030
（式２９）
0004754898.tif 000031
となる。ただし、β、α＞０（任意値）とする。
【０１６７】
したがって、以上説明したように前記重み切り替え演算部６２は、負荷検出部６０からの力Ｆ／Ｂ情報に基づき、各リンク部材２１の角度に重み付けを付けて演算処理する際のパラメータ値を変更して演算処理を行うことにより、最適な重み関数を得ることができる。すなわち、ダイナミックス演算部４３Ａによって、前記負荷検出部６０からの力Ｆ／Ｂ情報に応じて重み付けがなされたサーボ指令値信号を得ることができ、任意のリンク部材２１あるいはマニピュレータ２０全体に対して無理な姿勢を排除し、動き易い範囲内で動作させることが可能となる。
【０１６８】
以上、負荷検出部６０からの負荷情報を用いて最適な姿勢での動作を可能にしているが、負荷検出部６０の取り付け方法によっては、姿勢変化で生じる負荷と外乱負荷が重畳してしまう。このために、姿勢変化で生じる負荷の特性を予めパラメータでありセンサ既知特性として前記コントローラ５内に記憶させておき、重み切り替え演算部６２にて前記センサ既知特性分を差し引くことで、外乱検知としての情報を取得できることも可能である。
【０１６９】
また、前記センサ既知特性は、湾曲部１４を動作させるための負荷センサとすることで状態量検知信号部に力情報フィードバック情報を用いて緻密なダイナミクス制御を実施しても構わない。
【０１７０】
ところで、本実施例の内視鏡装置１は、挿入部９の管腔内への挿入時、挿入部９の湾曲部１４が管腔内の腸壁等に接触しこの接触状態が継続した場合でも、より安全に挿入することが可能である。
【０１７１】
すなわち、本実施例では、前記負荷検出部６０による検出結果に基づく複数のリンク部材２１の角度の重み付けの演算処理を行う場合に、時間を考慮すると同時に腸壁等に接触しているリンク部材２１を回避させるようなマニピュレータ２０全体に対する重み関数を得るようにしている。このような変形例を図４０乃至図４３に示す。
【０１７２】
図４０及び図４１は実施例１の変形例１を説明するもので、図４０は負荷検出部からの検出結果と時間との特性を示すグラフ、図４１はダイナミックス演算部内の重み切り替え演算部を含む主要部の構成を示すブロック図を示している。なお、図４０中の縦軸は負荷検出部であるテンションセンサ（歪ゲージ）により得られたテンションセンサ値（力Ｆ／Ｂ情報）、横軸は時間（ｔ）を示し、軸１、軸２は一、二番目のリンク部材２１をそれぞれ示している。
【０１７３】
図４０に示すように、内視鏡装置１の挿入部９の管腔内への挿入時に、二番目のリンク部２１ｂの負荷検出部６０によるテンションセンサ値は、例えば時間が経過するにつれて小さくなるが、一番目（先端側）のリンク部２１ｂの負荷検出部６０によるテンションセンサ値は、ある所定時間を境にして大きくなっている。
【０１７４】
すなわち、一番目のリンク部材２１ａが、ある所定時間において、大腸などの腸壁に接触したことにより、時間に伴いテンションセンサ値が高くなったことを示し、以降、前記リンク部材２１ａの腸壁への接触状態が継続されていることにより、さらにテンションセンサ値が高くなったことを示している。
【０１７５】
そこで、本実施例では、このような任意のリンク部材２１が腸壁に対する接触状態が継続された場合でも、このときに検出されたテンションセンサ値に基づき、この接触状態を回避できるような重み関数を演算処理して求めるようにしている。すなわち、複数のリンク部材２１の角度を決定する際に、実施例１で用いた各リンク部材２１毎の重み関数ではなく、複数のリンク部材２１全体、つまり、マニピュレータ２０全体に重み付けをするような重み関数を生成するようにしている。
【０１７６】
具体的には、図４１に示すように、ダイナミックス演算部４３内の重み関数切り替え演算部６２Ａには、複数のリンク部材２１毎に設けられた時間積分演算部６１ａ、６１ｂ…６１ｎが接続されるようになっている。
【０１７７】
各時間積分演算部６１ａ、６１ｂ…６１ｎには、それぞれのリンク部材２１に設けられた負荷検出部６０からのテンションセンサ値Ｆ１、Ｆ２…Ｆｎがそれぞれ供給される。
【０１７８】
前記時間積分演算部６１ａは、供給されたテンションセンサ値Ｆ１を用いて評価関数を得るための時間積分演算処理を行い、評価関数ＳF1 を得て重み関数切り替え演算部６２Ａに出力する。
【０１７９】
また、前記時間積分演算部６１ｂ…についても同様に時間積分演算処理を行って、それぞれ評価関数ＳF2 、ＳFn を求め、前記重み関数切替演算部６２Ａにそれぞれ出力する。
【０１８０】
前記各時間積分演算部６１ａ、６１ｂ…６１ｎによる演算処理に基づく式を下記に示す。
【０１８１】
（式３０）
0004754898.tif 000032
そして、前記重み関数切り替え演算部６２は、それぞれ供給された評価関数ＳFK を用いて次の(式３１）により平均化処理して評価関数ＳSUM を求め、さらに、この評価関数ＳSUM を用いて（式３２）に基づく演算処理を行うことにより、マニピュレータ２０全体の重み関数φＦｉを得る。（式３１）及び（式３２）を下記に示す。
【０１８２】
（式３１） 
0004754898.tif 000033
（式３２）
0004754898.tif 000034
なお、前記重み切り替え演算部６２Ａ内に前記実施例１にて用いた重み関数テーブル６２ａを設け、必要に応じてこれらの少なくとも１つの重み関数テーブルの重み関数と、前記演算処理にて得られた重み関数φＦｉとを切り替えて用いるようにしても良い。このことにより、挿入部９の挿入状態に応じて幅広い湾曲制御を行うことができる。
【０１８３】
したがって、変形例１によれば、上記したようにマニピュレータ２０全体に対し、腸壁等の接触状態が回避されるような重み関数φＦｉが得られて複数のリンク部材２１の角度が制御されることにより、挿入部９の管腔内への挿入時、挿入部９の湾曲部１４が管腔内の腸壁等に接触しこの接触状態が継続された場合でも、マニピュレータ２０全体が腸壁から回避されるような角度で湾曲動作するため、より安全に且つ円滑に挿入することができる。
【０１８４】
なお、前記変形例１では、負荷検出部６０の検出結果を用いた構成について説明したが、本実施例では、これに限定されるものではなく、負荷検出部６０であるテンションセンサの有無に拘わらず、マニピュレータ２０全体に対する重み関数を得ることも可能である。このような変形例２を下記に示す。
【０１８５】
図４２及び図４３は実施例１の変形例２を説明するもので、図４２はアクチュエータ制御ブロックのセンサからの検出結果と時間との特性を示すグラフ、図４３はダイナミックス演算部内の重み切り替え演算部を含む主要部の構成を示すブロック図である。なお、図４２中の縦軸はセンサにより得られた各リンク部材２１の動く角度の変位量（Ｐ）、横軸は時間（ｔ）を示し、軸１、軸２は一、二番目のリンク部材２１をそれぞれ示している。
【０１８６】
図４２に示すように、前記変形例１と同様に、内視鏡装置１の挿入部９の管腔内への挿入時に、二番目のリンク部２１ｂのセンサ３８（図１０、図１１参照）による変化量値（Ｐ）は、例えば時間が経過するにつれて小さくなるが、一番目（先端側）のリンク部２１ｂのセンサ３８による変化量値（Ｐ）は、所定時間を境にして大きくなっている。
【０１８７】
すなわち、一番目のリンク部材２１ａが、所定時間において、大腸などの腸壁に接触したことにより、時間に伴い変量値が高くなったことを示し、以降、前記リンク部材２１ａの腸壁への接触状態が継続されているためさらに先端側のリンク部材２１を回動することにより、リンク部材２１ａの動く角度の変位量値がさらに高くなったことを示している。
【０１８８】
そこで、本実施例では、このような任意のリンク部材２１が腸壁に対する接触状態が継続された場合でも、このときに検出された変位量値に基づき、この接触状態を回避できるような重み関数を演算処理して求めるようにしている。すなわち、複数のリンク部材２１の角度を決定する際に、実施例１で用いた各リンク部材２１毎の重み関数ではなく、複数のリンク部材２１全体、つまり、マニピュレータ２０全体に重み付けをするような重み関数を生成するようにしている。
【０１８９】
具体的には、図４３に示すように、ダイナミックス演算部４３内の重み関数切り替え演算部６２Ｂには、複数のリンク部材２１毎に設けられた時間積分演算部６１Ａ、６１Ｂ…６１Ｎが接続されるようになっている。
【０１９０】
各時間積分演算部６１Ａ、６１Ｂ…６１Ｎには、それぞれのリンク部材２１に設けられたアクチュエータ制御ブロック３１内のセンサ３８からの変位量値Ｐ１、Ｐ２…Ｐｎが供給される。
【０１９１】
前記時間積分演算部６１Ａは、供給された変化量Ｐ１を用いて評価関数を得るための時間積分演算処理を行い、評価関数ＳP1 を得て重み関数切り替え演算部６２Ｂに出力する。
【０１９２】
また、前記時間積分演算部６１Ｂ…についても同様に時間積分演算処理を行って、それぞれ評価関数ＳP2 、ＳPn を求め、前記重み関数切替演算部６２Ｂに出力する。
【０１９３】
前記各時間積分演算部６１Ａ、６１Ｂ…６１Ｎによる演算処理に基づく式を下記に示す。
【０１９４】
（式３３）
0004754898.tif 000035
そして、前記重み関数切り替え演算部６２Ｂは、それぞれ供給された評価関数ＳPK を用いて次の(式３４）により平均化処理して評価関数ＳSUM を求め、さらに、この評価関数ＳSUM を用いて（式３５）に基づく演算処理を行うことにより、マニピュレータ２０全体の重み関数φｉを得る。（式３４）及び（式３５）を下記に示す。
【０１９５】
（式３４） 
0004754898.tif 000036
（式３５）
0004754898.tif 000037
なお、前記重み切り替え演算部６２ＡＢに前記実施例１にて用いた重み関数テーブル６２ａを設け、必要に応じてこれらの少なくとも１つの重み関数テーブルの重み関数と、前記演算処理にて得られた重み関数φｉとを切り替えて用いるようにしても良い。このことにより、挿入部９の挿入状態に応じて幅広い湾曲制御を行うことができる。
【０１９６】
したがって、上記したように、負荷検出部６０であるテンションセンサを設けなくても、マニピュレータ２０全体に対し、腸壁等の接触状態が回避されるような重み関数φＦｉを得ることが可能となる。そして、この重み関数φｉを用いて複数のリンク部材２１の角度が制御されることにより、挿入部９の管腔内への挿入時、挿入部９の湾曲部１４が管腔内の腸壁等に接触しこの接触状態が継続された場合でも、変形例１と同様にマニピュレータ２０全体が腸壁から回避されるような角度で湾曲動作するため、より安全に且つ円滑に挿入することができる。
【０１９７】
以上、述べたように本実施例によれば、挿入部９の湾曲部１４を構成する複数のリンク部材２１の内、先端側のリンク部材２１ａをポイントロックするとともに、他のリンク部材については冗長性を有する任意の姿勢となるように姿勢制御することができるので、挿入部９の湾曲部１４を管腔内の形状に合わせた形状で挿入することが可能となる。よって、挿入部の挿入性を向上できるといった効果を得る。
【０１９８】
また、本実施例の内視鏡装置１は、前記湾曲部１４を管腔内に挿入した際に、前記湾曲部１４を構成する複数のリンク部材２１あるいは複数のリンク部材２１内の任意のリンク部材２１の角度に関し重み関数を用いて演算処理を行う場合に、負荷検出部６０からの検出結果に基づいて自動的に最適な重み関数を決定することが可能である。このことにより、複数のリンク部材２１やマニピュレータ２０の無理な姿勢を排除し、動き安い範囲内で動作させるのに必要な角度が前記複数のリンク部材２１毎に取得できるので、管腔内への挿入を滑らかに行うことが可能となる。
【０１９９】
なお、本実施例では、前記複数のリンク部材２１の内、先端側のリンク部材２１ａの２次元における位置と向きをポイントロックすることについて説明したが、これに限定されるものではなく、３次元における位置と向きをポイントロックするように構成しても良い。
【０２００】
また、本実施例において、マニピュレータを構成する挿入部駆動機構２０を有する湾曲部１４は、内視鏡２の挿入部９に設けられたものとして説明したが、前記湾曲部１４は内視鏡２の挿入部９を挿通させて管腔内に対する挿入部９の挿入を補助する内視鏡挿入補助具の挿入部に設けて構成しても良い。
【０２０１】
本発明は、以上述べた実施例及び変形例のみに限定されるものではなく、発明の要旨を逸脱しない範囲で種々変形実施可能である。
【図面の簡単な説明】
【０２０２】
【図１】本発明の医療用制御装置を用いて内視鏡装置として構成した場合のシステム構成図。
【図２】内視鏡装置の主要構成部分の電気的な構成を示すブロック図。
【図３】リンク構造の駆動機構を備えた湾曲部を有する挿入部先端側の斜視図。
【図４】リンク構造の駆動機構を備えた湾曲部を有する挿入部先端側の断面図。
【図５】駆動機構がモータ及びギアで構成された湾曲部の構成を示す断面図。
【図６】図５に示す湾曲部の変形例１の構成を示す断面図。
【図７】図５に示す湾曲部の変形例２の構成を示す断面図。
【図８】モータとフレシキブルシャフトとの接続構成を示す斜視図。
【図９】コントローラ、駆動部及び挿入部駆動機構部を有する主要部部の制御ブロック図。
【図１０】図９に示す前記指令制御部及びアクチュエータ制御ブロックの具体的な構成を示すブロック図。
【図１１】アクチュエータ制御ブロックの具体的な構成を示すブロック図。
【図１２】図１１のサーボ制御コントローラのブロック線図。
【図１３】先端部側のリンク部材が所定の先端位置及び姿勢ベクトルの状態である説明図。
【図１４】図１３のリンク部材の姿勢状態である場合に予想される他のリンク部材の状態を示す説明図。
【図１５】先端部側のリンク部材のみを独立的に姿勢制御した所定の位置及び姿勢ベクトルの状態を示す説明図。
【図１６】サーボ制御コントローラの概略構成を示すブロック図。
【図１７】図１６の制御則演算部の具体的な構成を示すブロック図。
【図１８】図１７のダイナミックス演算部の概略構成を示すブロック図。
【図１９】図１８のダイナミックス演算部の具体的な構成を示すブロック図。
【図２０】図１７の運動学演算部の概略構成を示すブロック図。
【図２１】図２０の運動学演算部の具体的な構成を示すブロック図。
【図２２】挿入部の挿入時に伴う挿入部の物理的な特性を示す説明図。
【図２３】先端側のリンクを固定した場合の他のリンク部材の姿勢状態を示す説明図。
【図２４】最適な関節トルク指令値信号を得るための係数である重み関数の一例を示すグラフ。
【図２５】重み関数の変形例１の特性を示すグラフ。
【図２６】重み関数の変形例２の特性を示すグラフ。
【図２７】重み関数の変形例３の特性を示すグラフ。
【図２８】重み関数の変形例４の特性を示すグラフ。
【図２９】重み関数の変形例５の特性を示すグラフ。
【図３０】本発明の実施例１に係り、内視鏡装置１のコントローラ５の具体的な構成を示すブロック図。
【図３１】挿入部駆動機構部の姿勢制御を説明するもので、先端側のリンク部材をポイントロックした状態を示す説明図。
【図３２】先端側のリンク部材をポイントロックすることにより次段のリンク部材が冗長性を有している状態を示す説明図。
【図３３】図３０のポイントロック演算部の具体的な構成を示すブロック図。
【図３４】図３３の逆運動学演算部の具体的な構成を示すブロック図。
【図３５】先端側のリンク部材のみポイントロックしたときの姿勢状態を説明する図。
【図３６】負荷検出部を各リンク部材毎に設けた挿入部駆動機構の構成を示す概略構成図。
【図３７】図３６の負荷検出部及び制御則演算部内に含まれるダイナミックス演算部を示すブロック図。
【図３８】負荷検出部からの検出結果と重み関数を決定する係数との特性を示すグラフ。
【図３９】図３７の特性とは異なる特性の一例を示すグラフ。
【図４０】実施例１の変形例１を示し、負荷検出部からの検出結果と時間との特性を示すグラフ。
【図４１】変形例１を実施するための主要ブロック構成を示すブロック図。
【図４２】実施例１の変形例２を示し、変位センサからの検出結果と時間との特性を示すグラフ。
【図４３】変形例２を実施するための主要ブロック構成を示すブロック図。
【符号の説明】
【０２０３】
１…内視鏡装置、
２…内視鏡、
３…光源装置、
４…ビデオプロセッサ、
５…コントローラ、
６…モニタ、
５Ａ…指令制御部、
７…操作指令部、
７ａ…ジョイスティック、
８…設定値指令部、
９…挿入部、
１０…操作部、
１０ｂ…駆動部、
１３…先端部、
１４…湾曲部、
２０…挿入部駆動機構（マニピュレータ）、
２０ａ〜２０ｎ…関節部材、
２１ａ〜２１ｎ…リンク部材、
２２…ジョイントシャフト、
２３…ポテンショメータ、
２４、２５…歯車、
２６…連結ギア、
２７…モータ、
２８…連結ギア、
２８…連結歯車、
３０…フレシキブルシャフト、
３１…アクチュエータ制御ブロック、
３１ａ〜３１ｎ…アクチュエータ制御ブロック、
３６Ａ…サーボ制御コントローラ、
３６Ｂ…制御則演算部、
３７…制御指令値出力部、
３７ａ…ドライバ、
３８…センサ、
３９…信号入力部、
３９ａ…検知部、
４０…ＰＤ制御部、
４１…運動学演算部、
４２…制御演算部、
４３…ダイナミックス演算部、
４４…順運動学演算部、
４５、４６…時間微分演算部、
４７…ヤコビアン演算部、
４８…疑似逆行列演算部、
４９…ヤコビアン零空間演算部、
５０…ポイントロック演算部、
５０Ａ〜５０Ｃ…ポイントロック演算部、
５１…先端リンク根元座標位置計算部、
５２…逆運動学演算部、
５３…機構パラメータ演算部、
５４…順運動学演算部、
５５…ヤコビアン演算部、
５６…アンプ、
５７…行列演算部、
５８…積分回路、
６０…負荷検出部、
６１ａ〜６１ｎ…時間積分演算部、
６２…重み切り替え演算部、
６２ａ…重み関数テーブル。
【図１】
0004754898.tif 000038
【図２】
0004754898.tif 000039
【図３】
0004754898.tif 000040
【図４】
0004754898.tif 000041
【図５】
0004754898.tif 000042
【図６】
0004754898.tif 000043
【図７】
0004754898.tif 000044
【図８】
0004754898.tif 000045
【図９】
0004754898.tif 000046
【図１０】
0004754898.tif 000047
【図１１】
0004754898.tif 000048
【図１２】
0004754898.tif 000049
【図１３】
0004754898.tif 000050
【図１４】
0004754898.tif 000051
【図１５】
0004754898.tif 000052
【図１６】
0004754898.tif 000053
【図１７】
0004754898.tif 000054
【図１８】
0004754898.tif 000055
【図１９】
0004754898.tif 000056
【図２０】
0004754898.tif 000057
【図２１】
0004754898.tif 000058
【図２２】
0004754898.tif 000059
【図２３】
0004754898.tif 000060
【図２４】
0004754898.tif 000061
【図２５】
0004754898.tif 000062
【図２６】
0004754898.tif 000063
【図２７】
0004754898.tif 000064
【図２８】
0004754898.tif 000065
【図２９】
0004754898.tif 000066
【図３０】
0004754898.tif 000067
【図３１】
0004754898.tif 000068
【図３２】
0004754898.tif 000069
【図３３】
0004754898.tif 000070
【図３４】
0004754898.tif 000071
【図３５】
0004754898.tif 000072
【図３６】
0004754898.tif 000073
【図３７】
0004754898.tif 000074
【図３８】
0004754898.tif 000075
【図３９】
0004754898.tif 000076
【図４０】
0004754898.tif 000077
【図４１】
0004754898.tif 000078
【図４２】
0004754898.tif 000079
【図４３】
0004754898.tif 000080