(57)【特許請求の範囲】
【請求項１】
被検体を撮像する撮像手段及び湾曲自在の湾曲部を備えた内視鏡と、前記湾曲部を電気的に湾曲駆動する湾曲駆動部と、前記湾曲駆動手段の時間的な駆動位置情報を、第１の情報として第１の時間周期で取得する第１の情報取得部と、前記内視鏡先端側を目標とする方向に湾曲させるために前記内視鏡先端側の形状情報を第２の情報として第２の時間周期で取得する第２の情報取得部と、前記第１の時間周期に対して前記第２の時間周期が長くなる時間周期の相違の場合における前記第２の情報を第１の時間周期に相当する情報への補正と、前記第１の情報の取得に対して、前記第２の情報の取得までに発生する時間遅延に起因する前記第２の情報の補正との少なくとも一方の補正を行う補正部と、前記第１の情報と前記補正部により補正された第２の情報とを用いて前記湾曲駆動部の湾曲制御を行う湾曲制御部と、を具備することを特徴とする内視鏡システム。
【請求項２】
前記内視鏡により撮像された画像内の特定部位を検出する特定部位検出部を具備し、前記湾曲制御部は、前記特定部位検出部で検出される前記特定部位に向かって前記湾曲部が湾曲するように湾曲制御を行うことを特徴とする請求項１に記載の内視鏡システム。
【請求項３】
前記補正部は、前記第１の情報の取得に対して、前記第２の情報の取得までに発生する時間遅延に起因する前記第２の情報の補正を行う場合にカルマンフィルタを用いることを特徴とする請求項１に記載の内視鏡システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、体腔内に挿入され、内視鏡検査に使用される内視鏡システムに関する。
【背景技術】
【０００２】
近年、内視鏡は、医療分野等において広く用いられるようになった。また、内視鏡は、体腔内等に挿入される挿入部の改良や湾曲操作をモータを用いて電動化し、操作性を改善する検討が行われている。  
しかし、腸管内で内視鏡先端を目標の位置に移動、目標とするライン（例えば、腸管の中心線）を通過させることは経験の浅いドクタ（術者）にとって難しい操作であるため、内視鏡画像から内視鏡先端を向ける方向を検出（例えば、暗部を検出）し、検出した方向から内視鏡先端を向ける目標位置を求め、現在の内視鏡先端位置を内視鏡先端目標位置に一致させるように、湾曲制御動作を電気的に行う内視鏡システムがある。
【０００３】
内視鏡の湾曲動作は、湾曲部に接続されたワイヤを電気的な湾曲駆動手段としてのモータの回転駆動力により押し引きして湾曲部の関節を駆動するため、ワイヤの伸びや関節のガタが発生すると、実際の湾曲量は、モータに付加されたモータの回転による駆動位置を検出するエンコーダ出力から算出された湾曲量とはならない。  
そこで、従来例では、エンコーダ出力で湾曲駆動制御を行うモータ制御系の他に、内視鏡の（挿入）形状を検出するためのコイル位置／方向検出装置としてのＵＰＤ装置を設け、ＵＰＤ装置により検出されるコイル位置／方向により、挿入部の先端側の３次元座標を推定した結果をフィードバックして目標モータ回転角（目標モータ角と略記）を決定することにより、挿入部の位置／方向の精度を向上して湾曲制御を行うようにしている。
【０００４】
図１９は従来例の内視鏡システムにおける内視鏡湾曲駆動制御装置を構成するモータ制御系７１及び位置フィードバック制御系７２の機能的な構成を示す。  
従来例では、目標モータ角Ｄと、ＵＰＤ装置１１によるコイル位置／方向から、さらにモータ回転角（モータ角と略記）推定部７３を経て算出される現在のモータ推定角Ｓとの差分値がモータ制御系７１のモータ電圧設定部（電圧設定部と略記）７４に入力される。  この電圧設定部７４には、モータ４３に付加されたエンコーダによるエンコーダ出力による現在のモータ角が入力され、この現在のモータ角から上記差分値に対応するずれのモータ角分だけモータ４３を回転させるモータ電圧（電圧と略記）を、このモータ４３に出力する。
【０００５】
そして、この電圧によるモータ４３の回転出力が内視鏡湾曲駆動出力となり、湾曲部を湾曲させる。また、その湾曲がコイルの位置及び方向変化（に対応したコイル磁気）となり、それがＵＰＤ装置１１により検出されるフィードバック系が形成される。  
この場合、モータの駆動位置の検出情報としてのエンコーダ出力を用いてモータを駆動する電圧を設定するモータ制御（湾曲制御）を行う時間周期（以下、単に周期）は、図２０に示すようにＴ１である。  
これに対して、ＵＰＤ装置１１によるコイル位置／方向の検出（或いは取得）は、その検出の周期がＴ２となる。従って、その情報をモータ制御系７１で現在のモータ推定角Ｓとして湾曲制御の情報として利用する場合、その情報が取得される周期はＴ２になる。よって、前記目標モータ角Ｄは、周期Ｔ２で決定されることになる。
【０００６】
この場合、コイル位置／方向の検出は、所定周波数の駆動信号が印加されるコイルにより発生される磁界発生量をＡ／Ｄ変換して、サンプリングし、そのサンプリングした値から複数の各コイル位置／方向の情報をそれぞれ算出する（時間を要する処理である）ため、周期Ｔ２＞周期Ｔ１の関係になる。  
そのため、前述のとおり、モータ４３を実際に駆動する電圧の決定は、周期Ｔ１より過去の周期Ｔ２のコイル位置／方向に基づくモータ推定角Ｓによって決定されてしまうこととなる。  
その結果、従来例においては、円滑な内視鏡湾曲動作を行わせることができず、例えば湾曲動作が振動および発散したり、コマ送り的なぎこちないステップ動作になる。
【０００７】
このように従来例では内視鏡先端位置（或いは内視鏡の挿入形状）の検出手段の検出情報に基づいて、先端側の湾曲状態を補正して湾曲動作させる場合、エンコーダ出力による湾曲制御の周期Ｔ１よりも長い周期Ｔ２でモータ角の補正を行うため、円滑な湾曲動作を行わせることが困難になる。  
一方、例えば特開２００６−１１６２８９号公報には、モード切替により内視鏡画像に対応した湾曲制御と、ＵＰＤ装置を用いて得たＵＰＤ画像に対応した湾曲制御を行うことができる湾曲制御装置が開示されている。
【特許文献１】特開２００６−１１６２８９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかし、上記公報の従来例においても内視鏡で暗部を検出し、ＵＰＤ装置の情報に基づいて暗部方向に自動的に湾曲させようとする場合、上述したようにＵＰＤ装置の情報としてのコイル位置／方向が得られるまでに時間遅延が発生する。  
このように従来例では、湾曲駆動手段の駆動位置を検出する第１の情報の検出（取得）の周期と、内視鏡の形状検出手段による第２の情報の取得の周期とが異なるため、或いは第２の情報の取得に時間遅延があるため円滑な湾曲制御を行うことが困難になる。  
このため、湾曲制御のための情報の取得の周期が異なる場合、或いは形状検出による情報の取得のために時間遅延が発生する場合にも円滑な湾曲制御を実現することができる、換言すると第１の周期と第２の周期との相違に基づく影響を軽減して円滑な湾曲制御を実現することができる内視鏡システムが望まれる。  
本発明は上述した点に鑑みてなされたもので、湾曲制御のための情報の取得の周期が異なる場合、或いは形状検出による情報の取得のために時間遅延が発生する場合にも円滑な湾曲制御を実現することができる内視鏡システムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の内視鏡システムは、被検体を撮像する撮像手段及び湾曲自在の湾曲部を備えた内視鏡と、
前記湾曲部を電気的に湾曲駆動する湾曲駆動部と、
前記湾曲駆動手段の時間的な駆動位置情報を、第１の情報として第１の時間周期で取得する第１の情報取得部と、
前記内視鏡先端側を目標とする方向に湾曲させるために前記内視鏡先端側の形状情報を第２の情報として第２の時間周期で取得する第２の情報取得部と、
前記第１の時間周期に対して前記第２の時間周期が長くなる時間周期の相違の場合における前記第２の情報を第１の時間周期に相当する情報への補正と、前記第１の情報の検出に対して、前記第２の情報の取得までに発生する時間遅延に起因する前記第２の情報の補正との少なくとも一方の補正を行う補正部と、
前記第１の情報と前記補正部により補正された第２の情報とを用いて前記湾曲駆動部の湾曲制御を行う湾曲制御部と、
を具備することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、湾曲制御のための情報の取得の周期が異なる場合、或いは形状検出による情報の取得のために時間遅延が発生する場合にも円滑な湾曲制御を実現することができる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して本発明の実施例を説明する。  
図１から図１２は本発明の実施例１に係り、図１は本発明の実施例１の内視鏡システムの構成を使用例の状態で示し、図２は内視鏡装置の外観例を示し、図３は内視鏡の内部構成を示し、図４は挿入部の先端側のコイルの配置例を示し、図５は検出される挿入形状を示し、図６Ａ〜図６Ｃは挿入形状データ、フレームデータ、コイル座標データの例を示す。  
図７はＰＣ本体の機能的なブロック構成を示し、図８はメイン処理部の機能的なブロック構成を示し、図９は内視鏡先端の向きと湾曲させたい方向との湾曲角を形成する角θ及びφを示し、図１０は湾曲量制御処理部による湾曲角からモータ電圧を生成する処理機能を示し、図１１は内視鏡湾曲駆動制御装置の制御機能的構成を示し、図１２は本実施例における補正手段により目標モータ角に向けての制御特性例を示す。
【００１２】
図１に示すように、本発明の実施例１の内視鏡システム１は、内視鏡検査を行う内視鏡２、光源装置３、プロセッサ４及び内視鏡モニタ５を備えた内視鏡装置６と、内視鏡２により撮像された内視鏡画像に対して画像処理及び湾曲制御の処理を行うパーソナルコンピュータ本体（以下、ＰＣ本体と略記）７及びＰＣモニタ８と、内視鏡２の挿入部９における少なくともその先端側の位置検出を含む内視鏡形状検出手段としてのＵＰＤ装置１１とを有する。  
図１に示すように内視鏡２は、ベッド１２に横たわる被検体としての患者１３の体腔内（管腔内）に挿入される細長の挿入部９と、その後端に設けられた操作部１４とを有する。この操作部１４から延出されたユニバーサルケーブル１５の端部のコネクタは、照明光を発生する光源装置３と、信号処理を行う信号処理装置としてのプロセッサ４とに接続される。
【００１３】
図２に示すように挿入部９は、その先端に設けられた先端部１０と、この先端部１０の後端に設けられ、湾曲自在の湾曲部１８と、この湾曲部１８の後端から操作部１４まで延出された可撓性を有する可撓部１９とを有する。  
操作部１４には、術者２０が所望とする方向に湾曲部１８を湾曲指示操作を行う湾曲指示操作手段としての例えばジョイスティック２１が設けてある。そして、術者２０は、このジョイスティック２１を操作することにより、この操作部１４内部に設けられた電気的な湾曲駆動手段を形成するモータユニット２２を介して、湾曲部１８を電気的に湾曲することができる。  
また、術者２０が後述する自動湾曲制御モードを選択した場合においては、ＰＣ本体７によるモータ制御により、挿入部９の先端側を挿入部９が挿通される管腔の走行方向に向くようにモータユニット２２を介して湾曲部１８の湾曲制御を電気的に行う。
【００１４】
また、図１に示すように、挿入部９がその軸の回りで捻られた（ひねられた）場合の捻り量を検出できるように、挿入部９における例えば後端側の外周面に捻り量検出ユニット２３が設けてある。  
なお、図１における内視鏡装置６としては、例えば図２に示すような外観である。この図２では、ＰＣ本体７は内視鏡２内のモータユニット２２の制御ユニットとして内視鏡装置６を構成している。  
また、図１では内視鏡２にジョイスティック２１が用いられているが、図２に示すようにジョイパッドで湾曲指示操作手段を形成しても良い。
【００１５】
本実施例では、術者２０が湾曲指示操作手段としての例えばジョイスティック２１を手動（マニュアル）で湾曲操作を行うことにより、先端部１０側を管腔の走行方向に設定して内視鏡２を挿入する手動湾曲による通常の湾曲制御モードの他に、内視鏡画像から管腔内の暗部の位置を（目標位置として）画像処理により３次元的に推定すると共に、挿入部９の先端側の挿入形状を推定し、挿入部９の先端が目標位置の方向に向くように湾曲部１８を電気的に湾曲制御する自動湾曲制御モードを備える。  
図３に示すように、挿入部９内には照明光を伝送するライトガイド３１が挿通され、このライトガイド３１は、図１或いは図２に示す操作部１４，ユニバーサルケーブル１５を経てその後端が光源装置３に接続される。
【００１６】
このライトガイド３１の後端面には、光源装置３内の図示しないランプからの照明光が入射される。そして、ライトガイド３１により伝送された照明光は、先端部１０に設けられた照明窓に固定されたライトガイド先端面から前方に出射される。  
そして、照明窓からこの挿入部９の長手軸の前方側に出射される照明光により、挿入部９が挿入される体腔内における長手軸の前方側を照明する。図３に示すように照明窓に隣接して設けられた観察窓には、光学像を結ぶ対物レンズ３２が取り付けられており、その観察視野或いは撮像範囲は照明光で照明される。  
この光学像を結ぶ対物レンズ３２と、その結像位置に配置された固体撮像素子としての例えばＣＣＤ３３とにより撮像装置３４が形成されている。
【００１７】
このＣＣＤ３３により光電変換されたＣＣＤ出力信号或いは撮像信号は、プロセッサ４に入力される。このプロセッサ４により撮像信号に対する信号処理を行い、内視鏡画像を内視鏡モニタ５に表示する内視鏡画像信号（映像信号）として例えばＲＧＢ信号等を生成する。内視鏡画像信号は、内視鏡モニタ５に入力され、内視鏡モニタ５の内視鏡画像表示エリアに内視鏡画像が表示される。  
なお、この内視鏡画像信号は、画像処理及びモータ制御（或いは湾曲制御）を行う画像処理／モータ制御装置としてのＰＣ本体７にも入力され、挿入部９の先端を体腔内の走行方向に挿入させるための位置情報の検出の画像処理に利用される。
【００１８】
また、本実施例に係る内視鏡２においては、挿入部９内には、挿入部９の挿入形状（内視鏡形状ともいう）を検出するために、それぞれ位置情報を発生する位置情報発生手段として複数のＵＰＤコイル（以下、単にコイルという）３６ａ、３６ｂ、３６ｃ、…が例えば先端部１０から可撓部１９における適宜の位置まで、例えば所定間隔で配置されている。  
そして、これらのコイル３６ａ、３６ｂ、３６ｃ、…の各コイル位置を検出することにより、挿入部９の挿入形状を算出することができる。特に、挿入部９の先端側の複数のコイル、例えば３６ａ、３６ｂ、３６ｃの各位置を検出することにより、挿入部９の先端位置の他に、その長手軸の方向（向き）を、先端側の挿入形状として検出する。
【００１９】
また、本実施例では、図４に示すように長手軸の方向に配置されたコイル３６ａ、３６ｂ、３６ｃの他に、例えば長手軸に配置されたコイル３６ａと直交する方向で、湾曲部１８を湾曲させる場合の上方向の湾曲方向（Ｕｐ湾曲方向或いは単にＵｐ方向という）に、そのソレノイドの軸（巻線の軸）を設定したコイル３６ａ′が、コイルａに隣接して先端部１０内に配置されている。この場合、コイル３６ａとコイル３６ａ′の巻線の方向と直交させた配置となっている。なお、コイル３６ａとコイル３６ａ′の巻線の方向と直交させた配置に限らす、巻線の方向を平行にしても良い。  
なお、図４においては、コイル３６ｃに対して、コイル３６ａ″が同様の配置関係とあんるようにコイル３６ｃ、３６ａ″が配置されている。
【００２０】
このような配置にすることにより、各コイル３６ａ、３６ｂ、３６ｃ、３６ａ′、３６ａ″…の位置を検出することにより、先端部１０の位置及びその軸方向の他に、先端部１０の軸周りの方位（Ｕｐ方向やＣＣＤ３３の上方向）も、内視鏡挿入形状として検出（推定）することができる。  
このように、コイル位置検出手段により、内視鏡先端側の挿入形状をその湾曲方向の情報を含めて検出することにより、その状態における湾曲部１８の湾曲状態を推定できる。そして、暗部など目標位置の方向に、先端側が向くように湾曲部１８を湾曲制御することを行い易くする。  
コイル３６ａ、３６ｂ、３６ｃ…は、その後端側のケーブルがＵＰＤ装置１１に接続される。
【００２１】
また、図１に示すＵＰＤ装置１１は、コイル３６ａ、３６ｂ、３６ｃ…を所定の周波数のドライブ信号の印加により磁界を発生させる図示しないＵＰＤドライブ回路と、磁界を検出するためにそれぞれ所定の位置関係で配置された複数のセンスコイルからなる磁界検出用のセンスコイルユニットとを備えている。  
また、このＵＰＤ装置１１は、複数のセンスコイルによる検出信号から各コイル３６ａ、３６ｂ、３６ｃ、…の位置を検出（算出）する位置検出部と、各コイル３６ａ、３６ｂ、３６ｃ、…の位置情報から挿入部９（内視鏡２）の挿入形状の算出処理と、算出された挿入形状の表示処理を行う挿入形状算出・表示処理回路と、その挿入形状を表示する図示しない形状表示モニタとを備えている。  
なお、ＵＰＤ装置１１における少なくともセンスコイルユニットは、図１のベッド１２の近傍に配置され、ベッド１２に横たわる患者１３における挿入部９が挿入される３次元領域をカバーする座標系（ワールド座標系という）で、コイル３６ａ、３６ｂ、３６ｃ、…の位置、つまりワールド座標系における３次元の座標位置を検出する。
【００２２】
なお、図１に示すように挿入部９の捻り量を検出する捻り量検出ユニット２３は、図３に示すようなコイル３６ａ′を設けて先端部１０の方位（Ｕｐ方向）を検出可能とした場合には、必要不可欠となるものではない。  
図５は、ＵＰＤ装置１１により生成される挿入形状の１例を示す。この図５に示すように３次元の座標系で例えばｊフレーム（ただし、ｊ＝０、１、２…）におけるコイル３６ａ、３６ｂ、３６ｃ、…の位置（Ｘｊｉ，Ｙｊｉ，Ｚｊｉ）（ここで、ｉ＝ａ，ｂ…，ｍ）が算出され、それらを結ぶことにより、挿入形状が生成される。  
ＵＰＤ装置１１により検出されたコイル３６ａ、３６ｂ、３６ｃ、…の位置を含む挿入形状データは、図６Ａに示すように、各フレームに関するフレームデータ（つまり、第０フレームデータ、第１フレームデータ、…）として構成されており、ＰＣ本体７に順次送信される。
【００２３】
そして、挿入状態情報としての各フレームデータは、図６Ｂに示すように、挿入形状データの作成時刻、表示属性、付属情報及びコイルの３次元座標データ（コイル座標データ）等のデータを有して構成されている。  
また、コイル座標データは、図６Ｃに示すように、挿入部９の先端側から基端側（操作部１４側）に順次配置されたコイル３６ａ、３６ｂ、３６ｃ、…の３次元座標をそれぞれ示すデータである。  
なお、ここでのフレームの時間周期（以下、周期）Ｔ２は、例えば１００ｍｓ程度であり、後述するモータの回転角を検出するエンコーダ出力（値）の周期Ｔ１よりも長くなる。
【００２４】
一方、先端部１０に設けられた撮像装置３４により得られる内視鏡座画像は、挿入部９の体腔内（以下では大腸のような管腔内）への挿入量に伴って変化する。  
このため、内視鏡画像から検出される管腔内の暗部（管腔暗部ともいう）の位置情報は、ワールド座標系に変換される。なお、この暗部の位置情報は、管腔の走行方向に対応するため、その位置情報が挿入部先端を管腔の深部側に挿入（導入）すべき目標位置若しくは湾曲すべき湾曲方向の目標位置となる。  
なお、先端部１０に設けられた撮像装置３４による観察方向（撮像方向）は、この内視鏡２においては挿入部９の長手軸と平行であり、上記挿入方向或いは湾曲方向は、撮像装置３４による観察方向と同じ方向となる。  
ＵＰＤ装置１１内部のコイル位置検出部１１ａにより検出されたコイル３６ａ、３６ｂ、３６ｃ、…のコイル座標位置及び方向の情報は、ＰＣ本体７にも入力される（後述する図７参照）。
【００２５】
図３に模式的に示すように湾曲部１８は、その長手方向に複数の湾曲駒が回動自在に連結して構成されている。また、挿入部９内には、上下、左右の湾曲方向に沿って湾曲ワイヤ４１ｕ、４１ｄ、４１ｌ、４１ｒが挿通されている。そして、これらの湾曲ワイヤ４１ｕ、４１ｄ、４１ｌ、４１ｒの後端は、例えば操作部１４内に配置された湾曲駆動手段としてのモータユニット２２を構成するプーリ４２ａ、４２ｂに連結されている。  
操作部１４内には上下方向の湾曲ワイヤ４１ｕ、４１ｄの両端が連結されたワイヤが巻装されたプーリ４２ａと、左右方向の各湾曲ワイヤ４１ｌ、４１ｒの両端が連結されたワイヤが巻装されたプーリ４２ｂが設置されている。  
各プーリ４２ａ，４２ｂは、それぞれ上下湾曲（駆動）用のＵＤモータ４３ａ，左右湾曲用のＲＬモータ４３ｂ（単にモータ４３ａ、４３ｂとも略記）の回転軸に連結され、正転及び逆転が自在のモータ４３ａ，４３ｂの回転方向に応じて回転される。
【００２６】
これらのモータ４３ａ，４３ｂは、図７に示すようにモータユニット２２に接続されたＰＣ本体７から制御される。  
そして、モータ４３ａ，４３ｂによりプーリ４２ａ，４２ｂを回転することによって、湾曲ワイヤ４１ｕ、４１ｄ、４１ｌ、４１ｒを牽引／弛緩（押し引き）して湾曲部１８を電気的に湾曲駆動する電気的湾曲駆動手段が構成されている。  
モータ４３ａ，４３ｂを介してプーリ４２ａ，４２ｂを回転させる回転量に応じて湾曲部１８の湾曲量が対応するため、プーリ４２ａ，４２ｂの回転量をプーリアングル或いはプーリ角という。
【００２７】
モータ４３ａ，４３ｂの回転角（モータ角ともいう）は、回転角或いは回転位置の検出手段として、例えばモータ４３ａ，４３ｂの回転軸にそれぞれ取り付けられている上下用ロータリーエンコーダ（ＵＤエンコーダ）４４ａ，左右用ロータリーエンコーダ（ＲＬエンコーダ４４ｂ）によってそれぞれ検出される。  
これらのＵＤエンコーダ４４ａ，ＲＬエンコーダ４４ｂによるエンコーダ出力は、図７に示すようにＰＣ本体７に入力される。  
なお、ＵＤエンコーダ４４ａ，ＲＬエンコーダ４４ｂは、上述した周期Ｔ２よりも十分に短い周期Ｔ１でエンコーダ出力をＰＣ本体７側に出力する。  
そして自動湾曲制御モードの場合においては、モータユニット２２内のモータ４３ａ、４３ｂは、ＰＣ本体７側からのＵＰＤ装置１１による目標位置の推定結果と、現在の（内視鏡）先端部１０側の位置及び方向等の湾曲制御情報（又は湾曲情報）により湾曲制御される湾曲状態が決定される。つまり、ＰＣ本体７は、湾曲状態決定部の機能を持つ。
【００２８】
また、上述したように、モータ４３ａ、４３ｂに対する現在の回転位置はエンコーダ出力により比較的短い周期Ｔ１で検出されるが、ＵＰＤ装置１１による挿入部先端側の挿入形状（姿勢）の算出には時間がかかるためにその周期Ｔ２は、Ｔ１より長くなる。この他にＰＣ本体７は、画像処理により、湾曲させたい方向に相当する目標位置の算出の処理を行う。  
そして、本実施例では、以下に説明するようにＰＣ本体７側において、長い周期Ｔ２で得られる情報を短い周期Ｔ１に相当する情報に補正する補正手段を設けることにより、円滑な湾曲制御を行うことを可能にする。  
換言すると、周期Ｔ２で推定された情報と、周期Ｔ１とＴ２とに基づく情報（具体的には周期比の情報）とを用いて、周期Ｔ１で湾曲制御する湾曲状態（湾曲制御状態）を補正して、補正された湾曲状態を決定する湾曲状態決定部による湾曲補正を行う。
【００２９】
なお、手動操作により湾曲を行う場合には、モータユニット２２は、操作部１４に設けられた湾曲指示操作手段としてのジョイスティック２１によって上下、左右の任意の湾曲方向への指示値に応じて、エンコーダ出力がその値に一致するように、モータ４３ａ、４３ｂの回転駆動量（プーリ４２ａ，４２ｂのプーリアングルに相当する）が制御され、湾曲部１８は湾曲指示された湾曲量まで湾曲する。  
このため、ジョイスティック２１には、例えば上下方向と左右方向への傾動操作量を検出する図示しないエンコーダ或いはポテンショメータ等が設けてあり、湾曲指示値、方向の指示情報を出す。この場合には、ＰＣ本体７は、単に湾曲指示値にエンコーダ出力が一致するように湾曲制御する（この場合のように手動湾曲する場合には、周期Ｔ２は影響しない）。
【００３０】
図７は、ＰＣ本体７の機能的な構成を示す。プロセッサ４からの内視鏡画像信号は、ＰＣ本体７内のＡ／Ｄ変換回路５１を介してメモリ５２内に内視鏡画像のデータとして格納される。  
また、ＵＰＤ装置１１によるコイル座標と方向の情報は、コイル情報取得スレッド５３を介してメモリ５２内に、内視鏡形状パラメタ、具体的には、コイル座標位置、コイル方向、先端Ｕｐ方向のデータとして格納される。  
そして、内視鏡画像のデータと内視鏡形状パラメタのデータは、ＣＰＵにより形成されるメイン処理部５５に出力される。
【００３１】
なお、ＣＰＵは、このメイン処理部５５の処理だけでなく、他の処理、例えば後述する湾曲量制御処理部５６の処理を行う構成であっても良いし、図７に示すメイン処理部５５が湾曲量制御処理部５６の処理を行う構成であっても良い。  
また、内視鏡２のモータユニット２２のエンコーダ出力は、湾曲量制御処理部５６に入力され、この湾曲量制御処理部５６には、メイン処理部５５による処理で生成され、メモリ５２内に格納された湾曲量パラメタのデータが入力される。
【００３２】
この湾曲量パラメタとしては、目標プーリアングル（目標とするプーリアングル）と、絶対プーリアングル（現在のプーリアングル）である。この絶対プーリアングルの代わりに相対プーリアングルでも良い。  
そして、この湾曲量制御処理部５６は、図１０にて説明するようにモータ制御値（より具体的には、ＵＤモータ電圧、ＲＬモータ電圧）をモータユニット２２のＵＤモータ４３ａ，ＲＬモータ４３ｂに出力する。  
本実施例では、この湾曲量制御処理部５６が異なる周期Ｔ１，Ｔ２でモータ制御（湾曲制御）を行う情報による欠点を改善する補正を行う、或いは周期Ｔ１，Ｔ２で算出される情報に基づいて補正した湾曲状態決定を行うことになる。  
なお、図７において点線で示すように、捻り量検出ユニット２３が用いられた場合には、捻り量検出ユニット２３により検出される相対捻り量が、捻り量取得スレッド５７を介してメモリ５２内における例えば内視鏡形状パラメタのデータの１つとして相対捻り量のデータとして格納される。
【００３３】
図８は、メイン処理部５５による機能的な構成を示す。  
図８に示すようにメイン処理部５５は、内視鏡画像における管腔情報から特定位置としての目標位置を検出する特定位置検出部としての画像内目標位置検出部５５ａの機能と、コイル座標から内視鏡各部の位置、方向、速度を検出する内視鏡形状処理部５５ｂと、相対捻り量から絶対捻り量を算出する捻り量算出部５５ｃの機能を有する。なお、点線で示すように捻り量算出部５５ｃは、相対捻り量が入力された場合にこの処理を行う。  
画像内目標位置検出部５５ａは、内視鏡画像から内視鏡画像内における管腔の走行方向に相当する暗部の中心の位置（或いは重心の位置）を２次元の位置情報として検出する。  この暗部の位置は、ＣＣＤ３３の画素サイズ、焦点距離等の値を考慮して検出される。そして、その時刻における挿入部９の先端位置に対する暗部の位置の情報から、その方向が挿入部先端（内視鏡先端）の挿入方向として検出される。
【００３４】
また、この暗部の２次元の位置情報は、さらにその暗部の奥行き方向の値を含めた３次元の位置が例えばＳｈａｐｅ Ｆｒｏｍ Ｓｈａｄｉｎｇ法により算出される。そして、この３次元の位置情報は、挿入部９先端を指向させて導入すべき目標位置となる。  
なお、画像内目標位置検出部５５ａで検出された目標位置は、画像内目標位置検出部５５ａ内の座標系変換部によりワールド座標系の目標位置に変換される。  
そして、変換された目標位置は、湾曲量算出部５５ｄに出力される。  
この湾曲量算出部５５ｄには、内視鏡形状処理部５５ｂにより、周期Ｔ２で（特に先端コイル座標を含む）内視鏡各部の位置、方向、速度の情報が入力される。なお、本実施例では速度の情報は必要不可欠でない。後述する実施例で利用する。
【００３５】
また、この湾曲量算出部５５ｄには、捻り量算出部５５ｃから絶対捻り量も算出される。この絶対捻り量は、捻り量検出ユニット２３が設けてない場合には、算出されない。    そして、この湾曲量算出部５５ｄは、入力される情報から挿入部９の先端を、推定された暗部の位置を目標位置としてその方向に指向させる湾曲角（φ、θ）を算出（推定）する。この場合、湾曲角（φ、θ）は、周期Ｔ２で算出される。そして、湾曲量算出部５５ｄは、周期Ｔ２でこの湾曲角（φ、θ）の情報を算出する算出手段或いは取得手段を形成する。  
算出されたこの湾曲角（φ、θ）の情報は、湾曲制御における補正手段或いは湾曲状態決定手段としての機能を持つ図７に示した湾曲量制御処理部５６に出力される。なお、図７にて説明したようにこの湾曲量制御処理部５６には、周期Ｔ１でエンコーダ出力（具体的にはＵＤエンコーダ４４ａの出力、ＲＬエンコーダ４４ｂの出力）も入力される。
【００３６】
このため、エンコーダ４４ａ、４４ｂは、周期Ｔ１で湾曲制御の情報を検出或いは取得する情報取得手段を形成する。
【００３７】
図９は、湾曲角（φ、θ）を挿入部９の先端との関係で示す。図９の左側は、内視鏡先端の向き（方向）と、湾曲させたい方向（つまり目標位置の方向）とのなす角θを示す。また、図９の右側の先端面を正面から見た図は、湾曲の上（Ｕ）方向と、湾曲させたい方向とのなす角φを示す。  
また、図１０は、湾曲量制御処理部５６の機能的な構成を示す。周期Ｔ２で算出或いは推定される湾曲角（φ、θ）の情報は、絶対プーリ角変換部５６ａに入力される。絶対プーリ角変換部５６ａは、湾曲角（φ、θ）の情報をＵＤ方向の絶対目標プーリ角（プーリアングル）と、これに直交する方向となるＲＬ方向の絶対目標プーリ角との情報に変換する。  
そして、生成されたＵＤ方向の絶対目標プーリ角と、ＲＬ方向の絶対目標プーリ角とは、周期相違に対するプ−リ角補正部（単にプーリ角補正部という）５６ｂを経て、モータ電圧設定部５６ｃに入力される。
【００３８】
従来例においては、ＵＤ方向の絶対目標プーリ角と、ＲＬ方向の絶対目標プーリ角とがプーリ角補正部５６ｂを経ることなくモータ電圧設定部５６ｃに入力される構成であった。  
そして、モータ電圧設定部５６ｃは、周期Ｔ２で生成されたままのＵＤ方向の絶対目標プーリ角及びＲＬ方向の絶対目標プーリ角の情報と、周期Ｔ１で生成されるＵＤエンコーダによる現在のプーリ角及びＲＬエンコーダによる現在のプーリ角の情報とからＰＩＤ制御によりモータ電圧をそれぞれ生成していた。  
これに対して本実施例では、上述したように長い方の周期Ｔ２で推定或いは取得されるＵＤ方向の絶対目標プーリ角と、ＲＬ方向の絶対目標プーリ角とは、プーリ角補正部５６ｂに入力される。
【００３９】
このプーリ角補正部５６ｂは、周期Ｔ２で推定により生成されたＵＤ方向の絶対目標プーリ角及びＲＬ方向の絶対目標プーリ角の情報から、それぞれ周期Ｔ１に相当するＵＤ方向の補正目標プーリ角及びＲＬ方向の補正目標プーリ角に補正して、モータ電圧設定部５６ｃに出力する。  
このモータ電圧設定部５６ｃを構成するＵＤ用ＰＩＤ制御によるモータ電圧設定部とＲＬ用ＰＩＤ制御によるモータ電圧設定部とには、周期Ｔ１で生成されるＵＤエンコーダ４４ａによる現在プーリ角、ＲＬエンコーダ４４ｂによる現在プーリ角が入力される。  
そして、このモータ電圧設定部５６ｃは、補正された情報と、エンコーダ４４ａ，４４ｂによる情報とからモータ４３ａ，４３ｂを湾曲制御する湾曲制御部を形成すると見なすことができる。
【００４０】
なお、ＰＩＤ制御は、フィードバック制御の一種であり、入力値の制御を出力値と目標値との偏差、その積分、及び微分の３つの要素によって行う方法のことである。  
本実施例におけるプーリ角補正部５６ｂは、以下のようにしてＵＤ方向の補正目標プーリ角及びＲＬ方向の補正目標プーリ角を生成する。  
ＵＤ方向の補正目標プーリ角及びＲＬ方向の補正目標プーリ角は、周期Ｔ２で生成（取得）されたＵＤ方向の絶対目標プーリ角及びＲＬ方向の絶対目標プーリ角の情報を、その周期Ｔ２を周期Ｔ１であったとした場合に推定されるＵＤ方向の絶対目標プーリ角及びＲＬ方向の絶対目標プーリ角の情報に補正する。
【００４１】
換言すると、ＵＰＤ装置１１による形状推定による湾曲角（φ、θ）の推定結果及び第１の周期（Ｔ１に相当）と第２の周期（Ｔ２に相当）から算出される情報に基づいて湾曲制御される湾曲駆動手段（としてのＵＤモータ４３ａと、ＲＬモータ４３ｂ）の湾曲状態を決定する湾曲状態決定部による補正を行う。  
具体的には、以下のように補正する。  
例えば周期Ｔ２で算出されたＵＤ方向の絶対目標プーリ角及びＲＬ方向の絶対目標プーリ角を、それぞれＡ、Ｂとすると、プーリ角補正部５６ｂは、Ａ×（Ｔ１／Ｔ２）、Ｂ×（Ｔ１／Ｔ２）をＵＤ方向の補正目標プーリ角及びＲＬ方向の補正目標プーリ角として出力する。
【００４２】
そして、モータ電圧設定部５６ｃによりそれぞれ生成されたＵＤ用ＰＩＤ制御によるモータ電圧とＲＬ用ＰＩＤ制御によるモータ電圧は、Ｄ／Ａ変換部５６ｄにおいて、それぞれＤ／Ａ変換されてアナログのＵＤモータ電圧、ＲＬモータ電圧となり、ＵＤモータ４３ａ、ＲＬモータ４３ｂに印加される。  
図１０においては、湾曲角（φ、θ）からモータ電圧（具体的にはＵＤモータ電圧、ＲＬモータ電圧）を生成する機能を説明した。  
図１１は本内視鏡システム１における（図１９の従来例と同じ構成要素を有する）モータ制御系７１と位置フィードバック制御系７２を用いた制御装置としての内視鏡湾曲駆動制御装置６１部分の構成を図１１に示す。
【００４３】
なお、図１１におけるモータ制御系７１は、図１０におけるモータ電圧設定部５６ｃとＤ／Ａ変換部５６ｄと、図３のＵＤエンコーダ４４ａが取り付けられたＵＤモータ４３ａ、ＲＬエンコーダ４４ｂが取り付けられたＲＬモータ４３ｂとから構成される。  
また、位置フィードバック制御系７２は、コイル３６ａ、３６ｂ、３６ｃ…の位置を検出するＵＰＤ装置１１と、このＵＰＤ装置１１によるコイル位置／方向から現在のモータ回転角を推定するメイン処理部５５による湾曲角（φ、θ）の推定手段としてのモータ角推定部７３とから構成される。  
図１１に示す本実施例に係る内視鏡湾曲駆動制御装置６１は、図１９のモータ制御系７１と位置フィードバック制御系７２において、位置フィードバック制御系７２により推定或いは取得される目標モータ角Ｄと現在のモータ推定角Ｓとから補正目標モータ角Δを算出（推定）するモータ絶対角補正部６２の機能を備えている。
【００４４】
図１１に示す制御系の構成においては、モータ制御系７１は、周期Ｔ１のエンコーダ出力で湾曲制御を行う湾曲制御部を形成する。  
また、位置フィードバック制御系７２は、ＵＰＤ装置１１により、周期Ｔ２で内視鏡形状を検出する内視鏡形状検出部と、モータ角推定部７３によりその内視鏡形状からモータ制御系７１により制御される湾曲状態に相当するモータ推定角Ｓを推定する湾曲状態推定部を形成する。  
そして、モータ絶対角補正部６２は、モータ角推定部７３による推定結果と、周期Ｔ１及び周期Ｔ２から算出される情報に基づいて、モータ制御系７１により制御される湾曲状態を補正して、その湾曲状態を決定する湾曲状態決定部を形成する。
【００４５】
なお、図１１においてモータ絶対角補正部６２に入力される情報として、目標モータ角Ｄと現在のモータ推定角Ｓの代わりに、目標先端位置と現在の先端位置の情報が入力されるようにしても良い。この場合には各位置の情報をモータ４３でのモータ角、モータ推定に換算すれば両表現が同等のものとなる。なお、図１１では２つのモータ４３ａ、４３ｂを１つのモータ４３で代表して示している。  
上記モータ絶対角補正部６２は、このモータ絶対角補正部６２に入力される目標モータ角Ｄから現在のモータ推定角Ｓを差し引いた差分値Ｄ−Ｓを分割の係数Ｎ（＝Ｔ２／Ｔ１）で除算して補正目標モータ角Δとして出力する。つまり、Δ＝（Ｄ−Ｓ）／Ｎ。  
より具体的な設計例としてＴ１＝５msec、Ｔ２＝１００msecとすると、係数Ｎ=２０となる。この場合には、内視鏡先端位置（つまり、目標モータ角及び現在のモータ推定角）の情報が１回更新される間に２０回、モータ制御系７１に、位置フィードバック制御系７２から補正目標モータ角Δ、Δ＝（Ｄ−Ｓ）／Ｎの情報がモータ相対角として与えられる。
【００４６】
なお、ここでのモータ相対角の意味は、周期Ｔ１毎に次の補正目標モータ角Δが偏差値として与えられることを意味し、周期Ｔ１の開始時には、開始時における（現在の）モータ推定角Ｓがモータ相対角として与えられる。  
このようなモータ相対角でなく、モータ絶対角でモータ制御系７１に与えるようにしても良い。モータ絶対角で与える場合には、その補正目標モータ角をΔｉとすると、Δｉ＝Ｓ＋ｉ×（Ｄ−Ｓ）／Ｎとなる。  
ここで、ｉは、周期Ｔ２における現在の時間を周期Ｔ１を単位で計測した値である。    図１２は、補正目標モータ角Δｉで湾曲制御を行った場合における現在のモータ推定角Ｓから目標モータ角Ｄに推移していく概略の動作特性例を示す。
【００４７】
図１９の従来例の場合には、目標モータ角Ｄと現在のモータ推定角Ｓとが周期Ｔ２の開始時にモータ制御系７１に与えられ、それによって例えば破線で示すように現在のモータ推定角Ｓが変化する特性の制御となる。  
これに対し、本実施例においては、周期Ｔ１の間隔で実線で示すように補正目標モータ角Δｉがモータ制御系７１に与えられ、それによって例えば実線で示すように現在のモータ推定角Ｓが短い周期Ｔ１で段階的に変化する特性の制御を実現できる。  
この場合、目標モータ角Ｄと現在のモータ推定角Ｓとを終端に持つ２点鎖線で示す直線上の点は、補正目標モータ角Δｉを外挿補正したものとなり、湾曲部１８を湾曲駆動する湾曲駆動手段としてのモータ４３を目標とする目標湾曲角に相当する目標モータ角Ｄに滑らか（より具体的には略直線的）に近づけるように制御できる。  
本実施例によれば、このように補正することにより、湾曲制御のため異なる周期で制御情報を取得する場合にも、長い方の周期の情報を短い周期に整合させるような補正を行うことによって、滑らか（円滑）な湾曲制御の動作を行うようにできる。  
また、本実施例によれば、簡単な補正で実現することができる。
【００４８】
（実施例２）
図１３は本発明の実施例２における湾曲駆動制御装置６１Ｂの概略の構成を示す。本実施例は、図１１に示す湾曲駆動制御装置６１において、さらに電圧設定部７４からモータ４３に印加（出力）される電圧のタイミング（時刻）を監視するオブザーバとしての電圧監視部６６を備えている。また、本実施例においては、周期Ｔ１は一定値から変動した値でも良い。  
この電圧監視部６６は、電圧設定部７４からモータ４３への電圧の印加を検出すると、その時刻（時間）ｔｊをモータ絶対角補正部６２に通知する。モータ絶対角補正部６２は、電圧監視部６６から時刻ｔｊの通知を受けると、例えばその内部に設けられた通知計数カウンタのカウント値ｊを０から１つづつインクリメントする。
【００４９】
この場合、位置フィードバック制御系７２から現在のモータ推定角Ｓが入力された時点、つまり周期Ｔ２でカウント値ｊを初期値にリセット（ｊ＝０）する。なお、時刻ｔｊも現在のモータ推定角Ｓが入力される周期Ｔ２で０にリセットされる。  
位置フィードバック制御系７２の周期Ｔ２の間に、モータ制御系７１は、平均的には周期Ｔ１で制御動作を行う。そして、カウント値ｊがＮ（＝Ｔ２／Ｔ１）となる場合のみ、つまりｔｊがｔＮとなる時、カウント値ｊが０にリセットされる。０≦ｊ≦Ｎとなる。    この場合、モータ絶対角補正部６２は、出力する補正目標モータ角をΔｊとすると、これをモータ絶対角で表すと、Δｊ＝Ｓ＋ｔｊ×（Ｄ−Ｓ）／Ｔ２となる。  
この場合も、補正目標モータ角Δｊは、図１２に示した補正目標モータ角Δｉの値を外挿補正した直線上に乗る。但し、この場合には、図１２における一定の周期Ｔ１が変動した場合にも対応できるものとなる。
【００５０】
本実施例においても実施例１の場合と同様に、モータ制御系、位置フィードバック制御系の制御の周期の相違による不整合を補償して、円滑な湾曲制御の動作を行わせることができる。  
このため、管腔の暗部等、術者が進ませたいと望む目標方向に内視鏡先端方向を円滑に指向させることができるので、術者にとって、挿入作業が容易となる。従って、内視鏡検査、処置を円滑に行うことができる。なお、挿入部９を、その長手軸方向に送り出す送り機構を設けることにより、円滑に自動挿入を行うことも可能になる。
【００５１】
（実施例３）
次に図１４を参照して本発明の実施例３を説明する。図１４は本発明の実施例３における内視鏡湾曲駆動制御装置６１Ｃの制御機能的な構成を示す。  
実施例１及び２においては、モータ制御系７１の制御情報と位置フィードバック制御系７２の情報と、湾曲駆動手段としてのモータ４３の回転位置の検出情報で湾曲制御する場合の周期とが相違することによる影響を長い周期側の情報を補正により改善した。  
これに対して本実施例は、コイル位置／方向の情報を実際にモータ制御（湾曲制御）を行う部分（具体的には図７における湾曲量制御処理部５６或いは図１０におけるモータ電圧設定部５６ｃ或いは図１１，図１３の電圧設定部７４）が用いる或いは取得するまでに所定時間Ｌの遅延するため、この影響を軽減したモータ制御（湾曲制御）を行うものである。  
挿入部９内に配置されたコイル３６ａ、３６ｂ、３６ｃ…の位置／方向は、コイル３６ａ、３６ｂ、３６ｃ…にドライブ信号を印加してそれぞれ磁場を発生させ、それをベッド１２の周囲に配置されるセンスコイル等を備えたＵＰＤ装置１１により検出する。
【００５２】
この場合、センスコイルにより検出された検出信号をサンプリングして、それらの位相差等を検出して各コイルの位置／方向の情報を算出する算出処理に時間を要する他に、ＵＰＤ装置１１とＰＣ本体７間とで情報を転送する際の時間遅延も発生する。図１４においては、模式的にＵＰＤ装置１１からモータ角推定部７３までの間でＬの時間遅れが発生するとしている。  
このため、仮にモータ制御系７１側の情報と位置フィードバック制御系７２側の情報を、例えば電圧設定部７４が等しい周期で取得できるようにした場合（つまりＴ１＝Ｔ２）においても、実際には位置フィードバック制御系７２側の情報の発生時刻（具体的には磁場の発生をセンスコイルで受信した時刻）は、モータ制御系７１側の情報から例えば所定時間Ｌだけ遅延した過去の情報となっている。  
図１５は、この様子を示す。図１５においては、簡単化のため周期Ｔ１とＴ２とが等しい場合（Ｔ１＝Ｔ２）で示している。この図１５に示すようにＰＣ本体７は、ＵＰＤ装置１１から所定時間Ｌ遅れたコイル位置／方向の情報を取得する。
【００５３】
このため、この所定時間Ｌ（時間遅れＬとも言う）の影響を低減する補正を行うと、より精度の高い湾曲制御を行うことが可能になる。  
図１４に示す内視鏡湾曲駆動制御装置６１Ｃは、図１１に示した内視鏡湾曲駆動制御装置６１においてモータ絶対角補正部６２の代わりにモータ角予測部６７を設けている。このモータ角予測部６７には位置フィードバック制御系７２から現在のモータ推定角Ｓが入力される。  
そして、このモータ角予測部６７は、位置フィードバック制御系７２から所定の周期、この場合にはＴ１で入力される現在のモータ推定角Ｓ（より具体的にはこのモータ推定角及び１つ前のステップのモータ角予測部のシステム状態）から、モデル化した条件を設定して時間遅れＬのない現在のモータ推定角Ｓ′をモータ角予測値として出力する。
【００５４】
そして、目標モータ角Ｄからこの現在の推定角Ｓ′を減算した差分値Ｄ−Ｓ′を補正目標モータ角としてモータ制御系７１に出力する。  
この場合、モータ角と、そのモータ回転速度をパラメータとして、湾曲動作（モータ回転動作）がモータ回転座標系上において等速運動と見なす仮定を行うことにより、カルマンフィルタを利用する。  
カルマンフィルタとは、誤差を含む観測値を用いて、ある動的システムの状態を推定或いは制御するための無限インパルス応答フィルタの一種である。  
また、このカルマンフィルタは、時間ステップを１つ進めるために予測と更新の２つの手続きを行う。予測の手続きでは、前の時刻の推定状態から、その次の（現在）の時刻の推定状態を計算する。更新では、今の時刻の観測を用いて、推定値を補正してより正確な状態を推定する。
【００５５】
本実施例においては、このカルマンフィルタを利用することにより、時間遅れＬのある現在のモータ推定角Ｓから時間遅れＬのない現在のモータ推定角Ｓ′を推定して出力する。  
以下では、時間遅れＬのある現在のモータ推定角Ｓに基づきカルマンフィルタによって補正したモータ推定角をＳ０、さらにカルマンフィルタにより１ステップ先を予測したモータ推定角をＳ１、とすることにより、時間遅れＬのない現在のモータ推定角Ｓ′に相当するＳｐを推定して出力する。  
カルマンフィルタの更新手続きにおいて、カルマンフィルタに現在のモータ推定角Ｓを入力することにより、現在のフィルタ係数に基づいてモータ推定角Ｓを補正したところのモータ推定角Ｓ０を出力すると共に、カルマンフィルタのフィルタ係数を更新する。
【００５６】
続いて、カルマンフィルタの推定手続きにより、１ステップ先のモータ推定角Ｓ１を取得する。
【００５７】
時間遅れＬのない現在のモータ推定角Ｓｐは、モータ推定角Ｓ０に対して、時間Ｌだけ経過する時の角度の変化量を加算した値となる。
【００５８】
モータ推定角と時間ｔとの関係を表す関数をＦ（ｔ）とし、現在時間をｔ０とすると、１ステップの時間はＴ１であるため、図１６に示すように、Ｓ０＝Ｆ（ｔ０−Ｌ）、Ｓ１＝Ｆ（ｔ０−Ｌ＋Ｔ１）、Ｓｐ＝Ｆ（ｔ）となる。  
湾曲動作がモータ回転角座標系の上で等速運動であると仮定すると、現在時間から、１ステップ先の時間までの角度の変化量は一定、すなわちＦ（ｔ）は一次関数であるので、Ｓｐ＝Ｓ０＋ｔ（Ｓ１−Ｓ０）となる。ただし、ｔ＝Ｌ／Ｔ１。  
この予測値に基づきモータを制御することにより、位置フィードバック制御系７２の時間遅れを補償した動作を実現する。  
本実施例は、このように時間遅れの影響を低減した精度の高い湾曲制御を行うことができる。  
なお、上記説明においては、簡単化のため、周期Ｔ１とＴ２とを等しいとして説明したが、Ｔ１＜Ｔ２の周期の場合にも同様に適用できる。また、例えば、実施例１を適用して、モータ推定角ＳｐをＴ２／Ｔ１で分割して周期Ｔ１と同期させるようにしても良い。
【００５９】
（実施例４）
図１７は、本発明の実施例４における内視鏡湾曲駆動制御装置６１Ｄの構成を示す。本実施例は、実施例３において、さらにエンコーダ出力を監視するオブザーバとしてエンコ−ダ監視部６８を設けた構成である。  
実施例３においては周期Ｔ１＝Ｔ２においてこの周期Ｔ１よりも時間遅れＬの方が短いことを想定した場合で説明したが、周期Ｔ１よりも時間遅れＬの方が長くなる場合もあり得る。図１８は、このような関係の動作タイミング説明図を示す。  
本実施例は、このような場合に対処することができる。エンコ−ダ監視部６８は、実際のモータ回転量、つまりエンコーダ出力（エンコーダの変位量）ｄを観測し、モータ角予測部６７に出力する。  
モータ４３が等速運動であると仮定すると、モータ４３の回転速度はｄ／Ｔ１とみなせる。よって、時間遅れＬの間に動くモータ回転量は、ｄ×Ｌ／Ｔ１となる。
【００６０】
モータ角予測部６７は、位置フィードバック制御系７２が出力する内視鏡先端の位置に対応するモータ推定角Ｓに対して、ｄＬ／Ｔ１に相当する値を加算した値、Ｓ＋Ｌｄ／Ｔ１をモータ４３の現在のモータ推定角Ｓ′として使用する。そして、目標モータ角との差分値Ｄ−Ｓ′に基づいてモータ制御を行わせる。  
このように行うことにより、周期Ｔ１よりも時間遅れＬの方が長い場合にも、高い精度で現在のモータ推定角Ｓ′を推定でき、従って高い精度で湾曲部１８の湾曲（駆動）制御ができる。  
なお、上述した各実施例などを部分的に組み合わせる等して構成される実施例等も本発明に属する。
【図面の簡単な説明】
【００６１】
【図１】図１は本発明の実施例１の内視鏡システムの構成を使用例の状態で示す構成図。
【図２】図２は内視鏡装置の外観例を示す図。
【図３】図３は内視鏡の内部構成を示す図。
【図４】図４は挿入部の先端側のコイルの配置例を示す図。
【図５】図５は検出される挿入形状を示す図。
【図６Ａ】図６Ａは挿入形状データの例を示す図。
【図６Ｂ】図６Ｂはフレームデータの例を示す図。
【図６Ｃ】図６Ｃはコイル座標データの例を示す図。
【図７】図７はＰＣ本体の機能的なブロック構成を示す図。
【図８】図８はメイン処理部の機能的なブロック構成を示す図。
【図９】図９は内視鏡先端の向きと湾曲させたい方向との湾曲角を形成する角θ及びφを示す図。
【図１０】図１０は湾曲量制御処理部による湾曲角からモータ電圧を生成する処理機能を示すブロック図。
【図１１】図１１は内視鏡湾曲駆動制御装置の制御機能的構成を示すブロック図。
【図１２】図１２は本実施例により目標モータ角に向けての制御による特性例を示す図。
【図１３】図１３は本発明の実施例２における内視鏡湾曲制御装置の制御機能的構成を示すブロック図。
【図１４】図１４は本発明の実施例３における内視鏡湾曲駆動制御装置の制御機能的構成を示すブロック図。
【図１５】図１５はモータ制御のために用いられるコイル位置／方向の情報の算出に時間遅延がある場合の動作説明図。
【図１６】図１６はカルマンフィルタによる時間遅れを補正してモータ推定角を予測する動作説明図。
【図１７】図１７は本発明の実施例４における内視鏡湾曲駆動制御装置の制御機能的構成を示すブロック図。
【図１８】図１８は実施例４におけるモータ制御のために用いられるコイル位置／方向の情報の算出に時間遅延がある場合の動作説明図。
【図１９】図１９は従来例における内視鏡湾曲駆動制御装置の制御機能的構成を示すブロック図。
【図２０】図２０は従来例におけるモータ制御の時間周期よりもコイル位置／方向の算出の周期が長い場合の動作説明図。
【符号の説明】
【００６２】
１…内視鏡システム、２…内視鏡、７…ＰＣ本体、９…挿入部、１１…ＵＰＤ装置、１８…湾曲部、２２…モータユニット、３４…撮像装置、３６ａ、３６ｂ、３６ｃ…コイル、４３ａ、４３ｂ…モータ、４４ａ、４４ｂ…エンコーダ、５５…メイン処理部、５６…湾曲量制御処理部、５６ｂ…プーリ角補正部、６２…モータ絶対角補正部、７１…モータ制御系、７２…位置フィードバック制御系、７３…モータ角推定部、７４…電圧設定部
【図１】
0005137540.tif 000002
【図２】
0005137540.tif 000003
【図３】
0005137540.tif 000004
【図４】
0005137540.tif 000005
【図５】
0005137540.tif 000006
【図６Ａ】
0005137540.tif 000007
【図６Ｂ】
0005137540.tif 000008
【図６Ｃ】
0005137540.tif 000009
【図７】
0005137540.tif 000010
【図８】
0005137540.tif 000011
【図９】
0005137540.tif 000012
【図１０】
0005137540.tif 000013
【図１１】
0005137540.tif 000014
【図１２】
0005137540.tif 000015
【図１３】
0005137540.tif 000016
【図１４】
0005137540.tif 000017
【図１５】
0005137540.tif 000018
【図１６】
0005137540.tif 000019
【図１７】
0005137540.tif 000020
【図１８】
0005137540.tif 000021
【図１９】
0005137540.tif 000022
【図２０】
0005137540.tif 000023