明 細 書
電動湾曲制御装置
技術分野
[0001] 本発明は、内視鏡の挿入部に設けられた湾曲部を電気的に湾曲駆動する電動湾 曲制御装置に関する。
背景技術
[0002] 近年、体腔内に細長の挿入部を挿入することにより、体腔内の臓器を観察したり、 必要に応じ、処置具チャンネル内に挿入した処置具を用いて、各種治療処置の行え る内視鏡が広く利用されて 、る。
[0003] この内視鏡には、一般に、先端部側に上下 Z左右に湾曲する湾曲部が設けられて おり、この湾曲部に接続した湾曲ワイヤを牽引'弛緩操作することによって湾曲部を 所望の方向に湾曲させられる。
[0004] 前記湾曲ワイヤは、一般的に手動で操作されていた力 最近においては電動モー タ等の電気的な湾曲駆動手段を用いて牽引操作する電動湾曲内視鏡装置が、例え ば、特開 2003— 245246号公報に開示されている。この第 1の従来例では、キヤリブ レーシヨン作業を容易に行える構造にして 、る。
[0005] また特開平 6— 217925号公報の第 2の従来例には、モータトルクを適切に設定し た電動湾曲内視鏡装置が開示されて 、る。
[0006] 従来の電動湾曲内視鏡装置は、湾曲動作に関して異常な状態の発生を監視して いない構成であった。このために、異常な状態の発生に対して対応する処理を行うま でに時間を要することがあった。
[0007] 本発明は上記事情に鑑みてなされたものであり、湾曲動作に関する状態を監視す ることができる電動湾曲制御装置を提供することを目的としている。
[0008] また、本発明は、湾曲動作に関して異常な状態が発生した場合に、速やかに異常 に対応する処理を行うことができる電動湾曲制御装置を提供することを目的としてい る。
発明の開示
課題を解決するための手段
[0009] 本発明は、内視鏡の湾曲部を電気的に湾曲駆動制御する湾曲駆動制御手段と、 前記湾曲部を電気的に湾曲駆動制御する際の状態を監視する監視手段と、を具備 したことを特徴とする。そして、上記構成により、異常状態の発生を検出することがで き、対応する処理を速やかに行 ヽ易 、ようにして 、る。
図面の簡単な説明
[0010] [図 1]本発明の実施形態 1の湾曲制御装置を備えた電動湾曲内視鏡システムの全体 構成を示す図。
[図 2]本発明の実施形態 1の湾曲制御装置のハードウェアの構成を示す図。
[図 3]操作入力部の構成例を示す図。
[図 4]湾曲制御装置と HMI (PC)とが通信を行う場合のデータの流れを示すブロック 図。
[図 5]HMI (PC)の表示画面の例を示す図。
[図 6]湾曲制御装置における MCU基板による湾曲制御に関する制御処理機能を示 す説明図。
[図 7]湾曲制御装置における各種機能とその内容を示す表。
[図 8]湾曲制御装置によるパラメータ変更、システム監視等の内容を示す表。
[図 9]湾曲制御装置による異常処理の項目を示す表。
[図 10]図 6におけるシステム制御部の処理機能をメイン CPU側と監視 CPU側との関 係で示す説明図。
[図 11]図 10における処理機能をメイン CPU側と監視 CPU側とに分けて具体的に示 す説明図。
[図 12]モニタ(PC)における湾曲状態の表示例及び HMI (PC)によるキヤリブレーシ ヨンモードでの表示画面の例を示す図。
[図 13]図 11 (B)の処理機能をより具体的に示す説明図。
[図 14]エラー監視を行う場合における複数のチェックルーチン及びそのチェック内容 を示す図。
[図 15]図 14 (A)のエラー監視をノ、一ドウ ア的に行う場合の構成を示す図。
[図 16]ジョイスティックを操作した場合におけるパルス指令値を生成するまでの処理 等を示す図。
圆 17]ポインティングデバイスを操作した場合におけるパルス指令値を生成するまで の処理等を示す図。
[図 18]トラックボールを操作した場合におけるパルス指令値を生成するまでの処理等 を示す図。
[図 19]例外発生時における処理動作を示す説明図。
圆 20]メイン CPU側で発生したエラーに対する処理動作を示す説明図。
圆 21]監視 CPU側でソフトウェアエラーが発生した場合の処理動作を示す説明図。 圆 22]インタロックによるエラー検出の場合における処理動作を示す説明図。
[図 23]制御装置の立ち上げから立ち下げまでの通常運転シーケンスを示すフローチ ヤート図。
[図 24]図 23における動作モードの 3つを相互に切り替えられることを示す説明図。
[図 25]動作モードにおいてワーニングが発生した場合の処理動作を示す説明図。
[図 26]復旧ができな 、非常停止のエラーが発生した場合の処理動作を示す説明図。
[図 27]復旧が可能な緊急停止のエラーが発生した場合の処理動作を示す説明図。
[図 28]キャリブレーションの処理手順を示すフローチャート図。
[図 29]メイン CPUと監視 CPUとの立ち上がり及び立ち下がりのシーケンスを示すフロ 一チャート図。
圆 30]クラッチ ONの指令力も電磁クラッチが接続状態及びクラッチ OFFの指令から 切断状態になる動作を示す説明図。
[図 31]SRAMカードに格納された静的な設定パラメータにおける展開、展開後にお ける設定パラメータの使用、変更要求及び記憶要求された場合それぞれの動作を示 す説明図。
[図 32]SRAMカードに格納された各種の設定パラメータとそれらの設定パラメータか ら DPRAMにコピーされる様子を示す図。
[図 33]SRAMカードに格納された動的な設定パラメータにおける展開、展開後にお ける設定パラメータの使用、変更要求及び記憶要求された場合それぞれの動作を示
す説明図。
[図 34]SRAMカードに格納される操作部固有パラメータ等の設定パラメータ及びシ ステムログ等を示すブロック図。
[図 35]インタロックの詳細な構成を示す図。
発明を実施するための最良の形態
[0011] 以下、図面を参照して本発明の実施の形態を説明する。
実施形態 1
[0012] 図 1ないし図 35は本発明の実施形態 1に係り、図 1は本発明の実施形態 1の湾曲 制御装置(「電動湾曲制御装置」を単に「湾曲制御装置」と略称する。以下同様。)を 備えた電動湾曲内視鏡システムの全体構成を示し、図 2は本発明の実施形態 1の湾 曲制御装置のハードウェアの構成を示し、図 3は操作入力部の構成例を示し、図 4は 湾曲制御装置と HMI (PC)とが通信を行う場合のデータの流れを示し、図 5は HMI ( PC)の表示画面の例を示し、図 6は湾曲制御装置における MCU基板による湾曲制 御に関する制御処理機能を示す。
[0013] 図 7は、湾曲制御装置における各種機能とその内容を示し、図 8は、湾曲制御装置 によるパラメータ変更、システム監視等の内容を示し、図 9は湾曲制御装置による異 常処理の項目を示し、図 10は図 6におけるシステム制御部の処理機能をメイン CPU 側と監視 CPU側との関係で示し、図 11は図 10における処理機能をメイン CPU側と 監視 CPU側とに分けて具体的に示し、図 12はモニタ(PC)における湾曲状態の表 示例及び HMI (PC)によるキャリブレーションモードでの表示画面の例を示す。
[0014] 図 13は、図 11 (B)の処理機能をより具体的に示し、図 14はエラー監視を行う場合 における複数のチェックルーチン及びそのチェック内容を示し、図 15は図 14 (A)の エラー監視をノヽードウエア的に行う場合の構成を示し、図 16はジョイスティックを操作 した場合におけるパルス指令値を生成するまでの処理等を示し、図 17はポインティ ングデバイスを操作した場合におけるパルス指令値を生成するまでの処理等を示し、 図 18はトラックボールを操作した場合におけるノ ルス指令値を生成するまでの処理 等を示す。
[0015] 図 19は、例外発生時における処理動作を示し、図 20はメイン CPU側で発生したェ
ラーに対する処理動作を示し、図 21は監視 CPU側でソフトウェアエラーが発生した 場合の処理動作を示し、図 22はインタロックによるエラー検出の場合における処理 動作を示し、図 23は制御装置の立ち上げから立ち下げまでの通常運転シーケンス を示し、図 24は図 23における動作モードの 3つを相互に切り替えられることを示し、 図 25は動作モードにおいてワーニングが発生した場合の処理動作を示す。
[0016] 図 26は、復旧ができない非常停止のエラーが発生した場合の処理動作を示し、図 27は復旧が可能な緊急停止のエラーが発生した場合の処理動作を示し、図 28はキ ヤリブレーシヨンの処理手順を示し、図 29はメイン CPUと監視 CPUとの立ち上がり及 び立ち下がりのシーケンスを示し、図 30はクラッチ ONの指令力も電磁クラッチが接 続状態及びクラッチ OFFの指令力 切断状態になる動作を示す。
[0017] 図 31は、 SRAMカードに格納された静的な設定パラメータにおける展開、展開後 における設定パラメータの使用、変更要求及び記憶要求された場合それぞれの動作 を示し、図 32は SRAMカードに格納された各種の設定パラメータとそれらの設定パ ラメータから DPRAMにコピーされる様子を示し、図 33は SRAMカードに格納され た動的な設定パラメータにおける展開、展開後における設定パラメータの使用、変更 要求及び記憶要求された場合それぞれの動作を示し、図 34は SRAMカードに格納 される操作部固有パラメータ等の設定パラメータ及びシステムログ等を示し、図 35は インタロックの詳細な構成を示す。
[0018] 図 1に示すように電動湾曲内視鏡システム 1は、電動式で湾曲駆動を行う電動湾曲 内視鏡(内視鏡、又はスコープと略記) 2と、この内視鏡 2に着脱自在に接続され、内 視鏡 2の湾曲制御を行う実施形態 1の湾曲制御装置 3と、内視鏡 2に内蔵した撮像素 子 20に対する信号処理を行う画像処理装置 4と、内視鏡 2に照明光を供給する光源 装置 5と、画像処理装置 4により生成された映像信号が入力されることにより対応する 内視鏡画像を表示するモニタ 6と、内視鏡 2の送気管路 7a等に対する制御を行う送 気送水 Z吸引装置 7とから主に構成される。
[0019] 内視鏡 2は、可撓性を有する細長の挿入部 11と、この挿入部 11の後端に設けられ た操作部 12と、この操作部 12の側部カも延出されたユニバーサルコード 13とを有し 、このユニバーサルコード 13の端部のコネクタ部 14は、光源装置 5に着脱自在に接
続される。
[0020] 挿入部 11は、その先端に設けられた硬質の先端硬性部 15と、この先端硬性部 15 の後端に設けられた湾曲自在の湾曲部 16と、この湾曲部 16の後端力も操作部 12の 前端まで延びる可撓管部 17とを有する。
[0021] 挿入部 11内には、照明光を伝送するライトガイドファイバ 18が挿通されており、この ライトガイドファイバ 18の後端側はユニバーサルコード 13内を揷通され、コネクタ部 1 4を光源装置 5に接続することにより、ライトガイドファイバ 18には光源装置 5の内部の 図示しないランプ力 照明光が供給される。
[0022] このライトガイドファイバ 18により伝送された照明光は先端硬性部 15の照明窓に固 定された先端面力 外部に出射され、体腔内の管部などの被写体を照明する。照明 された被写体は、照明窓に隣接して設けられた観察窓に取り付けられた図示しない 対物レンズによりその結像位置に配置された撮像素子 20に結像される。
[0023] 撮像素子 20は、信号ケーブル 21を介して画像処理装置 4と接続される。
[0024] また、挿入部 11内には、送気管路 7a、送水管路 7b、吸引管路 7cが揷通されており 、これら管路 7a、 7b、 7cは、送気送水 Z吸引装置 7に接続される。また、前記湾曲制 御装置 3と前記画像処理装置 4とは図示しない信号線によって電気的に接続されて いる。
[0025] 上記湾曲部 16は、複数の湾曲駒 23を挿入部 11の長手方向に回動自在に連設し て構成されており、最先端の湾曲駒には対となる上下湾曲用の湾曲ワイヤ 24の先端 が固着されており、この湾曲ワイヤ 24の後端側は図示しないチェーンに連結され、こ のチ ーンは、操作部 12内に配置された (湾曲部 16を電気的に湾曲駆動する湾曲 駆動機構としての)湾曲機構部 25を構成するスプロケット 26に嚙合している。
[0026] このため、前記スプロケット 26が所定方向に回転することによって、前記チェーンに 連結された湾曲ワイヤ 24の一方が牽引、他方が弛緩されて、前記湾曲部 16は湾曲 ワイヤ 24が牽引された方向に湾曲されるようになって!/、る。
[0027] なお、挿入部 11内には左右湾曲用の湾曲ワイヤも挿通されている力 上下湾曲用 の湾曲ワイヤ 24と同様の構成であるため、簡単ィ匕のため図示していない。スプロケッ ト 26は、以下のように電気的に回転駆動できるようにして!/、る。
[0028] このスプロケット 26には、電気的な湾曲駆動手段である例えば DCモータ力 なる 湾曲モータ (モータと略記) 27の駆動力が、複数の歯車 28と駆動力伝達 Z切断手段 である電磁クラッチ 30を介して伝達されるようになっている。そして、この電磁クラッチ 30を切断状態とすると湾曲ワイヤ 24に張力が力からない状態になり、湾曲部 16が外 力によって自由に湾曲する湾曲フリー状態になる。
[0029] 前記電磁クラッチ 30は、操作部 12の外表面に設けた操作入力部 31を構成する状 態切換手段である切換操作レバー 32を駆動力伝達切断位置 (以下、湾曲フリー指 示位置と記載する)又は駆動力伝達復元位置(以下、アングル操作指示位置)に切 換操作することによって、切断状態である駆動力伝達切断状態と、接続状態である 駆動力伝達接続状態とに切り換わるようになって 、る。
[0030] ここでは、電磁クラッチを対象に説明しているが、機構的にモータ 27の駆動力が直 接湾曲部 16に伝達しなければクラッチ手段は、電磁クラッチに限ったものではない。
[0031] 前記スプロケット 26の回転量は、湾曲角度検出手段であるポテンショメータ(図中で は potと略記) 34で検出される。つまり、このポテンショメータ 34の検出情報により、内 視鏡 2内に設けられた湾曲機構部 25における湾曲動作に関わる現在の位置情報が 得られる。本実施形態では、この位置情報をスコープ位置、スコープ部ポジション位 置などともいう。
[0032] また、前記モータ 27の回転量は、エンコーダ 35により検出される。そして、このェン コーダ 35の検出出力を用いて、モータ 27をサーボ制御することができるようにして ヽ る。
[0033] 前記操作部 12の外表面に設けた操作入力部 31として、前記湾曲部 16を湾曲させ る湾曲指示の操作入力手段 (入力指令手段)である例えば位置信号を湾曲操作入 力信号として出力するスティック用ポテンショメータが基端側に配置されたジョイスティ ック 36aや、送気状態或いは送水状態又は吸引状態を指示する送気送水 Z吸引ス イッチ 37が設けてある。
[0034] またこの操作入力部 31として、前記モニタ 6の画面上に表示される内視鏡画像のフ リーズ等、前記画像処理装置 4に対する制御を行う各種スコープスィッチ 38、前記電 磁クラッチ 30を駆動力伝達切断状態又は駆動力伝達復元状態に切換操作する前
記切換操作レバー 32、この切換操作レバー 32が湾曲フリー操作指示位置に位置し て!、るかアングル操作指示位置に位置して 、るかを検知する状態検知手段である状 態検知スィッチ 33が設けられて 、る。
[0035] 前記ジョイスティック 36aは、ユーザが傾倒操作して傾き方向及び傾き角度を変化さ せることによって、湾曲部 16の湾曲角を指示する。つまり、ジョイスティック 36aの傾き 方向が湾曲部 16の湾曲方向に対応し、傾き角度が湾曲部 16の湾曲角度に対応し ている。
[0036] なお、ジョイスティック 36aを傾倒操作する際のその操作速度に応じて、モータ 27の 駆動速度も変化させ、ジョイスティック 36aの傾倒操作動作を反映して湾曲部 16を湾 曲駆動させるように湾曲駆動制御を行うようにしている。また、ジョイスティック 36aを 直立状態にしたとき、前記湾曲部 16を非湾曲状態 (湾曲部直線状態)にできるように している。
[0037] また、操作部 12内に設けた基板 41には、内視鏡 2及び操作部 12内部の湾曲機構 の特性に対応したスコープ IDを発生するスコープ ID発生回路 42が設けてある。
[0038] なお、図 1に示すスコープ ID発生回路 42は、実際には、スコープ IDと共に操作部 I Dを発生する。そして、後述するようにスコープ IDは、主に湾曲部 16を湾曲駆動する 湾曲機構部 25の動作に関係する固有パラメータ (詳細は後述する)を規定するのに 使用され、操作部 IDは、主に湾曲指示を行うジョイスティック 36a等の入力指令デバ イスの動作に関係する固有パラメータを規定するのに使用される。
[0039] このように各スコープ 2は、スコープ ID発生回路 42を有し、湾曲制御装置 3はその I ひ f青報を最初に読み出して、その Iひ f青報に対応したパラメータを (後述する SRAM カード 48から)読み出して使用することにより、スコープ 2の種類や特性が異なる場合 にも、湾曲制御装置 3は、実際に使用するスコープ 2に適したパラメータを用いて湾 曲の駆動制御を行えるようにしている。
[0040] なお、符号 40は、後述する湾曲の動作モードを変更するモード切替スィッチであり 、このモード切替スィッチによりジョイスティック 36aにより行う自動モード、 HMI (PC) 53により行う手動モード、スタンバイモードに切り替え設定を行うことができる。本実 施形態においては、モード切替スィッチ 40を操作部 12近傍に配置している力 湾曲
制御装置 3側に配置しても構わな!/、。
[0041] 前記湾曲制御装置 3は、操作入力部 31及び湾曲機構部 25等の湾曲制御を行う M CU基板 44と、湾曲モータ 27の制御を行うサーボドライバ 45と、電源供給を行う電源 ユニット 46と、ユーザにより各種の設定などを行うための UIパネル 47と、各種の設定 パラメータを格納する SRAMカード (PCMCIAカード) 48と、送気送水 Z吸引装置 7 を制御する送気送水 Z吸引ユニット (AWSユニットと略記) 49とを有する。
[0042] また、この湾曲制御装置 3には、外部周辺装置を接続可能とするインタフェースが 設けてある。
[0043] 例えば、 MCU基板 44には、湾曲部 16の湾曲状態を表示するモニタ及びパーソナ ルコンピュータ (モニタ (PC)と略記) 51、メンテナンスを行う場合等に使用するデバッ グコンソール 52、操作入力部 31により湾曲操作を行う自動モードの他に手動モード により湾曲制御したり、パラメータの変更設定、キャリブレーション等を行うヒューマン インタフェース PC (HMI或いは HMI (PC)と略記) 53が接続される外部インタフエ一 スを有する。
[0044] 本実施形態では、後述するように MCU基板 44は、内視鏡 2の操作入力部 31の操 作に対して湾曲機構部 25の駆動を制御して湾曲駆動制御を行うと共に、送気送水 Z吸引の動作制御を行う他に、湾曲動作及び送気送水 Z吸引動作が正常に動作し て 、る状態か或いは異常 (エラー)が発生して 、る異常状態 (エラー状態)かを監視 する監視手段の機能を有することが特徴の 1つとなっている。
[0045] また、この監視手段により、異常状態の発生を検出できるようにすると共に、その異 常が発生した場合には、異常を表示して、ユーザに告知できるようにしている。また、 異常状態が発生した場合には、インタロック 57 (図 2中参照)を介して電動湾曲の動 作を停止させる等、発生した異常状態に対して適切な処理を速やかに行うことができ るようにして、電動湾曲内視鏡システム 1の操作性を向上している。
[0046] さらに、本実施形態の湾曲制御装置 3は、湾曲動作及び送気送水 Z吸引の動作に 関するパラメータの設定、変更等を行うパラメータ設定手段の機能を具備したことも 特徴となっている。
[0047] なお、本実施形態においては、設定可能なパラメータとしては、図 31,図 32等にお
いて後述するように操作部固有パラメータ、スコープ固有パラメータ、ユーザ設定用 パラメータ、サーボ調整用パラメータ等、湾曲駆動制御に関係するパラメータの他に
、送気送水 Z吸引パラメータ等がある。
[0048] そして、上述のようにスコープ ID等の情報を利用して、パラメータの設定を行うこと により、異なる特性のスコープ 2の場合においても共通の湾曲制御装置 3により、それ ぞれのスコープ 2の場合に適した湾曲駆動制御を行うことができるようになる。
[0049] このようなパラメータの設定は、初期化の際にスコープ IDの情報を利用して自動的 に行うことにより、湾曲制御装置 3に接続されたスコープ 2に適した設定ができ、適切 な湾曲駆動制御ができることになる。
[0050] また、使用中にお 、ても、 HMI (PC) 53等力もパラメータを変更設定ができるように して、ユーザの選択等にも対応した湾曲駆動制御も行うことができるようにして、良好 な操作性を確保している。
[0051] 図 2は、湾曲制御装置 3における主に MCU基板 44を主体としたハードウェアの具 体的な構成を示す。
[0052] この MCU基板 44は、主に湾曲制御の全体的な制御処理を行う湾曲駆動制御手 段たるメイン CPU55と、その湾曲制御状態が正常状態或いは異常状態力を監視す る監視処理を行う監視 CPU56とを有し、メイン CPU55と監視 CPU56は、データバ スを介して相互にデータを送受信可能に接続されている。
[0053] また、メイン CPU55は、異常時には電磁クラッチ 30を OFFにしたり、サーボドライ ノ 5の主電源を OFFにしてモータ 27の回転動作を停止する等の動作を行うインタ ロック 57と制御線を介して接続されて 、る。
[0054] そして、例えば監視 CPU56により異常状態を検出した場合には、その情報がメイ ン CPU55に送られ、このメイン CPU55は、インタロック 57に対してソフトウェアによる 指令信号を出力する。そして、このインタロック 57は、その異常状態に対応してモー タ 27の回転停止等の動作を行う。つまり、異常状態に対応した動作を速やかに行う。
[0055] また、このインタロック 57は、異常状態においては、監視 CPU56に対してその情報 を送り、監視 CPU56は、その情報を UIパネル 47に送り、 UIパネル 47の表示部 47b により異常状態の情報を表示し、異常状態をユーザに告知できるようにして 、る。
[0056] また、 UIパネル 47に設けた非常停止スィッチがユーザにより操作された場合には、 インタロック 57は、電源スィッチを OFFにする非常停止の動作を行うと共に、メイン C
PU55にも非常停止の信号を送る。
[0057] また、この MCU基板 44は、絶縁回路 58を介して、このメイン CPU55側の 2次回路 と絶縁された患者回路側のサーボドライバ 45、操作入力部 31、湾曲機構部 (スコ一 プメカとも 、う) 25等と接続されて 、る。
[0058] また、メイン CPU55は、アドレスデータやデータバスが接続された通信機能を備え た第 1の FPGA59と接続され、この第 1の FPGA59は、前記絶縁回路 58を介して患 者回路側に設けた第 2の FPGA60と接続されて 、る。
[0059] また、監視 CPU56は、そのアドレスデータやデータバスが第 1の FPGA59に接続 されており、この第 1の FPGA59は、各種の制御信号を生成し、対応する制御処理を 行う。
[0060] より詳細にその構成を説明すると、メイン CPU55は、 RS485の通信線により絶縁 回路 58を介して操作入力部 31と接続されている。そして、この操作入力部 31を構成 するジョイスティック 36aから右左 Z上下(RLZUD)方向の 12ビットの信号がメイン C PU55に入力される。
[0061] また、操作入力部有効スィッチの情報、湾曲操作有効スィッチ、中立復帰スィッチ、 送気、送水、吸引のスィッチ操作による ONZOFFデータがメイン CPU55に入力さ れ、メイン CPU55は、これらのデータに対応した制御処理を行う。
[0062] なお、操作入力部 31に設けた 4個のスコープスィッチ 38の操作信号は、画像処理 装置 4内のスコープスィッチ処理回路に入力され、画像処理装置 4は、スコープスイツ チ 38に割り付けられたフリーズ操作等に対応した信号処理を行う。
[0063] なお、この画像処理装置 4は、モニタ 6の他に、患者データ等を入力するキーボード 4aとも接続されている。
[0064] 内視鏡 2の操作部 12内に設けた湾曲機構部 25を構成するモータ 27は、サーボド ライバ 45と接続されている。
[0065] そして、操作入力部 31のジョイスティック 36aによる傾倒操作が行われると、その傾 倒操作の操作量データが RS485の通信線を介してメイン CPU55に入力され、この
入力を受けてメイン CPU55は、第 1の FPGA59、絶縁回路 58、第 2の FPGA60を 介してサーボドライバ 45に指令値を送り、サーボドライバ 45は、その指令値に向けて モータ 27を駆動制御する。
[0066] また、その場合、モータ 27の回転量は、エンコーダ 35により検出され、このェンコ ーダ 35により検出されたモータ 27の回転量のデータは、第 2の FPGA60、絶縁回路 58、第 1の FPGA59を介してメイン CPU55に送られる。そして、その戻されたデータ によりサーボドライバ 45を介してモータ 27の回転量を指令値に対応した値となるよう に制御する。
[0067] すなわち、メイン CPU55からのサーボ指令に基づくフィードバックループが形成さ れている。
[0068] また、ポテンショメータ 34により検出された位置データは、図示しない ADコンパ一 タにより信号値が AZD変換された後、第 2の FPGA60に入力される。そして、さらに 絶縁回路 58、第 1の FPGA59を介してメイン CPU55に送られる。また湾曲ワイヤ 24 のたるみを検出するたるみセンサ 61によるたるみ検出の信号は、歪みアンプ 62によ り増幅されて図示しない ADコンバータにより信号値が AZD変換された後、第 2の F PGA60に入力される。そして、さらに絶縁回路 58、第 1の FPGA59を介してメイン C PU55に送られる。
[0069] ポテンショメータ 34により検出された位置データは、メイン CPU55からサーボドライ バ 45に送られ、モータ 27の湾曲範囲の検知制御に用 、られる。
[0070] また、たるみセンサ(ワイヤのたるみ状態を検知するためのセンサ) 61による検出さ れた信号は、第 2の FPGA60に入力された場合、第 2の FPGA60は、その信号レべ ルにより、湾曲ワイヤ 24が許容値以上弛んでいたり、断線の有無を検出する。
[0071] これらが検出された場合には、 ACTIVEN信号線を介して、異常な状態に対応し た動作状態となる様にインタロック 57に通知する。同時に FPGA59からメイン CPU5 5にエラーデータを通知し、メイン CPU55は、ソフトウェア指令信号線を介してソフト ウェア指令としてインタロック 57に通知する。この様に、異常が起きた時にはハードウ エア的にすばやくインタロック 57を起動し、その後、監視 CPU56側での判断処理が 可能な様にソフトウェア指令で箇所の所定が行われる様に構成されている。
[0072] また、スコープ ID発生回路 42によるそのスコープ固有情報は、システム初期化時 に、 RS485の通信線を介してメイン CPU55に読み込まれ、その固有情報に対応し たパラメータファイルを内部のメモリに格納して、湾曲制御装置 3は、各種の制御を行 う場合、実際に接続して使用される内視鏡 2に適したパラメータ設定状態で使用でき るようにしている。
[0073] また、メイン CPU55は、操作入力部 31の送気、送水、吸引の各スィッチ操作の信 号を RS485の通信線を介して取り込み、それらの操作に対応した制御信号を出カラ インを介して AWSユニット 49に出力する。
[0074] AWSユニット 49は、送気スィッチが操作された場合には、 4ビットによる 16階調で 入力される制御信号をコンバータ CN1により PWM変調のアナログ信号に変換して 送気用の電磁バルブ等の送気を実現するためのァクチユエータ 2V1の駆動量を制 御し、さらに圧力計 P1を経て送気する。
[0075] また、送水スィッチが操作された場合には、 1ビットの制御信号で電磁バルブ等の 送水を実現するためのァクチユエータ 2V1の駆動量を制御し、さらに圧力計 P2を経 て送水する。また、 1ビットの信号により、電磁バルブ等のァクチユエータ 3V1の駆動 量を制御し、送気の場合にはァクチユエータ 2V1側、送水の場合にはァクチユエータ
2V2側へと切り替えを行なう構成となって 、る。
[0076] また、吸引スィッチが操作された場合には、圧力計 P3及び 1ビットで電磁バルブ等 のァクチユエータ PV1を介して駆動量を制御し、さらに 4ビットの制御信号によりコン バータ CN2を介してアナログの開閉制御信号にして電磁バルブ等のァクチユエータ
2V3の駆動量を調整して吸引させる。
[0077] また、圧力計 PI, P2, P3により計測された送気、送水、吸引の圧力は、それぞれ 8 ビットの信号線を介して監視 CPU56に入力される。
[0078] また、監視 CPU56により監視されている情報は、 UIパネル 47の表示部 47aの表 示用 LEDに送られ、スコープ位置、 RLZUDの湾曲量などがメイン CPUを介さずに ダイレクトに表示される。
[0079] また、監視 CPU56は、その監視結果の情報を UIパネル 47の表示部 47bの LED1
(G)と LED2 (R)に出力し、システムが正常の場合には緑色(G)の LED1を点灯し、
異常時には赤色 (R)の LED2を点灯すると共に、スピーカで警告音を出す。
[0080] また、 UIパネル 47のスィッチ部 47cには、上述した非常用スィッチ、異常状態を解 除する解除スィッチ、電源の ONZOFFを行う電源スィッチが設けてある。
[0081] また、メイン CPU55には、 RS232Cのシリアル通信線によりデバッグコンソール 52 を接続して、メンテナンスやプログラムの変更等を行うことができる。このデバッグコン ソール 52は、監視 CPU56に接続して同様の処理を行うことができる。
[0082] また、このメイン CPU55には、外部接続用インタフェースとして PCMCIAスロットが 設けてあり、この PCMCIA^ロットには不揮発性で電気的に書き換えが可能なフラッ シュメモリからなる SRAMカードを着脱自在に接続することができる。
[0083] そして、 SRAMカード 48を装着しておくことにより、メイン CPU55は、初期化処理 の際に、 SRAMカード 48から設定パラメータの読み込みを行う。またこの SRAM力 ード 48に、使用時における各種のログデータの収集、保存等を行うことができる。な お、外部接続用インタフェースとして PCMCIA^ロットの代わりに USBを設け、この USBに SRAMカード 48に相当するフラッシュメモリを着脱自在にしても良!、。
[0084] また、監視 CPU56側に HMI (PC) 53を接続して、この HMI (PC) 53側力らパラメ ータの変更設定や、変更したパラメータを SRAMカード 48に記憶 (保存)する操作を 行うこともできる。この HMI (PC) 53から、上記ログデータの収集、保存等の設定も行 うことができる。
[0085] また、監視 CPU56に RS232Cのシリアル通信線を介してモニタ(PC) 51を接続し て、湾曲状態をこのモニタ(PC) 51に表示させることもできる。
[0086] 図 3 (A)は、操作入力部 31の構成を示す。内視鏡 2の操作部 12には、その挿入部 11寄りの部分に、ユーザが把持する把持部 65が設けられている。そして、ユーザは 、、操作入力部 31における各種の操作を行う場合、この把持部 65を把持して操作を 行う。このため、この把持部 65には、操作入力部 31の操作を有効とする操作入力部 有効スィッチ 66aが設けてあり、この操作入力部有効スィッチ 66aを把持した状態で ONにして各種の操作を行う。
[0087] これは、操作者が意図して把持し操作を行っているかどうかを湾曲制御装置 3側で 確認し安全を図るためのスィッチである。
[0088] また、この操作入力部有効スィッチ 66aの上部側の側面には、湾曲操作の入力指 令デバイス 36が設けられ、この入力指令デバイス 36の頂部などには、湾曲操作有効 スィッチ 66bが設けてある。
[0089] これは、操作者が意図して操作を行っているかどうかを湾曲制御装置 3側で安全の ため確認するためのスィッチである。
[0090] 内視鏡 2には、湾曲操作の入力指令デバイス 36として、図 1に示したジョイステイツ ク 36aの他に、トラックボール、ポインティングデバイスにより形成されたものでも使用 できるようにしている。つまり、本実施形態における湾曲制御装置 3は、入力指令デ バイス 36として、ジョイスティック 36a、トラックボール、ポインティングデバイスのいず れが採用されたものにも、スコープ IDの情報を読み込むことにより、適切に対応でき るようにしている。
[0091] また、上述したように内視鏡 2の操作部 12の側面には、 4つのスコープスィッチ 38と
、 AWSスィッチ 37が設けてある。
[0092] また、操作部 12の例えば頂部には、エンゲージスィッチ 66cが設けてあり、このェン ゲージスィッチ 66cを操作することにより、その操作直前の湾曲状態に固定できるよう にしている。
[0093] なお、図 3 (A)に示した場合の他に、図 3 (B)に示すように、入力指令デバイス 36と して、 4方向(U, D, R, L)の湾曲操作の指令入力を行うパッドスィッチ或いは十字 ノッド 66cにより形成したものでも良い。
[0094] 図 4は、湾曲制御装置 3と HMI (PC) 53との RS232Cによる通信によるデータの流 れを示し、 HMI (PC) 53により、図 5に示すように湾曲制御を行うことができる。
[0095] 監視 CPU56は、 HMI (PC) 53からの指示データをメイン CPU55に伝え状態を監 視する、すなわち、データの監視に専念し、状態遷移が生じたときに操作者に警告 等の情報伝達を行なう処理を行うための CPUである。
[0096] 図 5 (A)に示すように表示画面の右上の通信の接続ボタンを押すと、図 4の HMI ( PC) 53から接続要求のコマンドが湾曲制御装置 3の監視 CPU56に送信され、通信 が確立されることになる。また、 HMI (PC) 53から湾曲の動作モードとして、例えば自 動モード等を選択すると、その情報が監視 CPU56を経て、共有データを構成するデ
ュアルポート RAM (DPRAMと略記) 68の通信エリアに格納され、そのコマンドデー タはメイン CPU55により読み取られる。
[0097] そして、メイン CPU55は、 DPRAM68のシステム状態およびその他のデータの格 納エリアから、対応するデータを監視 CPU56を経て HMI (PC) 53に送信する。そし て、 HMI (PC) 53の表示面は、自動モードの場合には図 5 (A)、手動モードの場合 には図 5 (B)のような表示となる。
[0098] そして、図 5 (A)、図 5 (B)に示すように湾曲制御の状態表示 (ステータス、サーボ、 モニタ)、後述するファイル保存、計測等行うことができる。
[0099] また、この HMI (PC) 53から各種のパラメータの変更設定を行うこともできる。
[0100] 図 6は、本実施形態における MCU基板 44による湾曲制御機能の全体を示す。 UI パネル 47等力もなる操作パネル 71により、ユーザは、ノラメータの設定を変えたり、 エラー解除、非常停止等のスィッチ操作等を行うことができ、外部機器インタフェース
72を介してシステム制御部 73に操作入力をすることができる。
[0101] なお、操作パネル 71としては、 UIパネル 47の他に、 PCのタツチパネル付きのモ- タを用いることちでさる。
[0102] 外部機器インタフェース 72は、システム制御部 73と双方向のインタフェースと、 SR AMカード 48等の不揮発性で電気的に書き換え可能なメモリカードに対するインタフ エースと、を備え、さらに、イーサネット (登録商標) 74を介して外部と通信を行う通信 処理の機能も備えている。
[0103] 外部機器インタフェース 72と接続されるシステム制御部 73は、起動時に読み込ん だデータを共用データ 75として保持し、この共用データ 75を参照して初期化処理 76 と、操作入力部 31からの各種のスィッチ操作の状態及び湾曲機構部 25からの入出 力処理 77と、操作入力部 31からの指示操作を検出してモータ 27の動作指令を行う 動作指令生成処理 78と、この動作指令によるモータ 27の湾曲制御の処理を行う湾 曲制御処理 79と、監視 CPU56による異常状態の監視処理 80と、を行う。
[0104] 動作指令生成処理 78は、操作入力部 31のジョイスティック 36a等の入力指令デバ イス 36の指令値を読み込む処理を行なう。操作部入力制御部 81は、操作部からの データを動作指令精製処理部 78に受け渡すためのデータを生成処理する。加えて
、操作部 12のカ覚フィードバック制御を行なうための処理を行なう構成になっている 。これは、湾曲制御処理のためのサーボ処理とカ覚制御のためのサーボ処理とを区 別するためである。
[0105] そして、生成処理されたデータを湾曲制御処理 79に引き渡し、湾曲制御処理 79と して、サーボドライノく 45を介してモータ 27をサーボ制御する。その際、エンコーダ 35 ,ポテンショメータ 34の検出情報を利用する。また、たるみセンサ 61による検出情報 を利用して、後述する動的パラメータの設定も行えるようにして 、る。
[0106] また、異常監視処理 80としては、ハードウェア上の異常となるハード異常 80aとソフ トウエア上の異常としてのソフト異常 80bとを監視すると共に、非常停止スィッチによる 非常停止 80cの監視処理も行う。
[0107] 上記構成による主要な機能は、図 7に示すようになつている。
[0108] 図 7においては、湾曲の機能、送気送水 Z吸引の機能、シリアル通信操作部、その 他の操作方法'機能におけるモードと内容が記載してある。
[0109] 例えば湾曲の機能項目では、そのモードとして、位置指令のモード、速度指令のモ ード、湾曲部を中立位置に自動復帰させるモード、湾曲フリーのモード等がある。
[oiio] また、送気送水 Z吸引の機能としては、操作入力部による送気、送水操作のモード 、及び吸引操作のモードとがある。
[0111] また、シリアル通信操作部の機能には、接続、通信速度、通信周期、バリエーション 対応のモードがある。
[0112] また、その他の操作方法'機能におけるモードとしては、システム立ち上げ '立ち下 げシーケンス、システム状態表示、スコープスィッチ、非常停止ボタン、解除ボタン、 手動モード等がある。
[0113] 図 8は、システム機能を示し、このシステム機能には、システムパラメータ設定 '変更 、メンテナンスフリー、データ口ギング、システム監視、インタロック、 RAS、キヤリブレ ーシヨン、ソフトウェアダウンロードの各モード及びその内容を示して!/、る。
[0114] 図 9は、異常処理 (エラー処理)の各タスクを列挙し、また、その異常 (エラー)のレ ベル (度合い)をワーニング (警告)、緊急停止、非常停止の 3段階に分けて検出及び エラー処理して 、ることを示して 、る。
[0115] この場合、ハードウェアの異常の場合には、非常停止する処理を行い、ソフトウェア 上での異常においては、その異常の度合いに応じた処理を行うようにしている。併せ て、湾曲制御装置 3では、異常処理 (各タスク)とエラーレベルは、図 9の通り一意で はなぐ任意に設定を行える構成となっている。
[0116] 図 10は、図 6におけるシステム制御部 73の処理をメイン CPU55と監視 CPU56と の関係で示しており、 DPRAM68を共用データとしてメイン CPU55と監視 CPU56と は共有して、それぞれの処理を行うようにしている。
[0117] 併せて、制御装置 3では異常処理 (各タスク)とエラーレベルは図 9の通り一意では なぐ任意に設定を行える構成となっている。
[0118] なお、図 10におけるメイン CPU55と監視 CPU56は、図 2におけるメイン CPU55と 監視 CPU56の他にソフトウェアを含めた処理機能ブロックを示すものである。図 10
ヽても同様の表記を用いて!/、る。
[0119] 図 10におけるメイン CPU55側では、予め決められたプログラムに従って、クラッチ
ONZOFF制御や湾曲フリーにする等の湾曲制御に関するシーケンス制御を行なう プログラムコードが搭載されて 、る。
[0120] このシーケンス制御をするため入出力信号、サーボ制御、時間制御、システム制御 の処理が一塊で行われる。また、モーション制御(MCL制御)は、サーボ制御するた めに必要なクラッチ処理、補間方法、速度等の指令を生成する処理部であり、 MCL 制御により動作指令の生成処理が行われる。また、操作入力部制御も行われ、これら の処理データは、メイン CPU55側の SDRAM69aによる共用データで一括管理され る。
[0121] また、時間制御の処理の際には SDRAM69aのデータが使用されると共に、処理さ れたデータは、 DPRAM68にも格納され、監視 CPU56側で監視等に利用される。
[0122] 一方、監視 CPU56側では、 DPRAM68による共用データを取り込んで監視制御 、システム制御、外部通信制御の各処理を行い、エラーの監視を行う。監視の処理の 際には、データを監視側 SDRAM69bに格納して共用データとして一括管理し、必 要に応じて参照する。
[0123] また、外部通信制御により HMI (PC) 53等にデータを出力したり、 HMI (PC) 53か
らデータを取り込む。また、 HMI (PC) 53からパラメータの変更の要求コマンドが送ら れた場合には、 DPRAM68を介してメイン CPU55は、パラメータの変更の処理を行
[0124] 図 11は、図 10に示した処理機能の具体例を示すものである。図 11 (A)は、メイン C PU55側を主体にした処理内容を示し、図 11 (B)は、監視 CPU56側を主体にした 処理内容を示す。
[0125] 図 11 (A)では、監視 CPU56は、監視側アプリケーション 82bにより、 DPRAM68 による共用データを取り込んで、エラーの監視処理を行い、監視データを HMI (PC) 53に入出力する。
[0126] 一方、メイン CPU55では、 SDRAM69aに各種の設定パラメータを共用データとし て保持している(後述するように初期化処理の際に、 SRAMカード 48に格納されて いるデータ力 この SDRAM69aに展開され、各種の設定パラメータを保持する)。
[0127] また、インタロック内部コードにはクラッチ OFF等をするためのノイナリの内部コード が内蔵されており、その内部コードは、 SLCインタプリタ (シーケンス制御)により、 M CL制御(モーション SCL制御)で処理可能な言語に翻訳された後、 MCL制御に渡 される。
[0128] この MCL制御により、動作範囲の確認'加減速処理による生成されたモータ駆動 のための指令値を算出する処理が行われ、算出されたモータ指令値を時間制御 (サ ーボ制御)側に出力する。
[0129] また、この MCL制御では、動作範囲や速度のリミット等を算出して、時間制御の処 理に渡すと共に、算出されたデータ等の操作量を SDRAM69aに格納する。時間制 御の処理により、 FPGA59, 60を介してモータ 27のサーボ制御が行われる。
[0130] また、この時間制御の処理に際して、エンコーダ 35の出力信号などが入力され、そ のエンコーダ 35の出力を参照しながらサーボ処理する。
[0131] この時間制御の処理部分は、ディジタル入出力部を経て患者回路 (操作入力部 31 ,湾曲機構部 25)及び UIパネル 47に処理情報を入出力する。ディジタル入出力部 を介して AWSユニット 49の圧力計 P1〜P3等のデータが入力されたり、電磁バルブ 2V1等を制御する信号が出力されたりする。
[0132] 操作入力部制御タスクは、ジョイスティック 36a等の入力指令デバイス 36から RS48 5の通信線を介して送受信ドライバによりその指令値を受け取って DPRAM68に格 納する。この DPRAM68に格納された指令値等の操作量は、サーボ処理の際に参 照される。
[0133] また、このメイン CPU55においては、 FPGA60から発生される FPGA割り込み 90 により、操作入力部制御タスク、 MCL制御、時間制御の各処理がタイマドリブンによ りマルチタスク処理として実行される。
[0134] 具体的には、例えば 3. 3msの操作入力部制御起動メッセージの割り込み処理によ り操作入力部制御タスクが実行され、また 3. 3msの時間制御起動メッセージの割り 込み処理により時間制御の処理が実行され、また 33. 3msの MCL制御起動メッセ ージの割り込み処理により MCL制御の処理が実行される。
[0135] また、図 11 (B)にお!/、ては、監視 CPU56の処理を示す。この場合、メイン CPU55 側はメイン側アプリケーション 82aにより、図 11 (A)の湾曲制御の処理を行っている。
[0136] 一方、監視 CPU56側の comlmgr91aでは、 RS232Cを介して送受信する送受 信ドライバを介して HMI (PC) 53と通信を行う。
[0137] また、 com2mgr91bでは、 RS232Cを介して送受信する送受信ドライバを介してモ ニタ (PC) 51と通信を行い、湾曲状態を表示する。図 12 (A)は、モニタ(PC) 51によ る湾曲状態の表示例を示す。 R (right) L(left) /U (up) D (down)の 4方向の表示面に 、例えばジョイスティック 36aの場合の指令値の位置 (傾斜ラインで示している)と、ス コープ位置 (小丸で示す)と、中央の小丸で示すワイヤテンションの状態が表示され る。
[0138] なお、図 12 (B)は、図 28で後述するキャリブレーションの動作時におけるキヤリブレ ーシヨン表示画面を示す。
[0139] monmgr92では、センサ信号を読み取り、メイン CPU55と共用される DPRAM68 のデータと比較等してエラー監視をする。
[0140] subclock93では、 FPGA割り込み 90により、 UIパネル 47でのサウンドで警告する 処理や、 LEDの点滅等の駆動処理を行う。
[0141] 具体的には、 3. 3msの subclock起動メッセージの割り込みにより、 subclock93は
、 UIパネル 47によりサウンドでの警告等のタスクを行う。また、 subclock93は、 mon mgr起動メッセージの割り込みを発生して、 monmgr92も、センサ信号に対してエラ 一の監視のタスクを行う。
[0142] この場合、 HMI (PC) 53等の外部機器からのデータは、 comlmgr91aなどを経て DPRAM68に格納される力 その際に監視 CPU56は、 comlmgr91aなどにおけ るエラー監視のタスクを行うことが特徴となって 、る。
[0143] 図 13は、図 11 (B)の監視処理をより詳細に示したものである。
[0144] メイン CPU55はインタロック 57を介して監視 CPU56と接続されている。この構成に よれば、メイン'監視 CPU双方力も独立にインタロック指令を出力することが出来るた め、このインタロック 57がエラー検出状態力否かの情報力 図 2に示したインタロック 5
7から監視 CPU56に出力される Di(lビット)の情報が監視 CPU56内のシステム制 御(SYSMGR)の subclock93内に取り込まれる。
[0145] また、この subclock93には、 DPRAM68に設定されている UIパネル 47の入出力 の状態と、 UIパネル 47からの解除スィッチの情報も入力される。
[0146] この subclock93では、これらの状態を監視して、 DPRAM68内に設けた監視エラ 一ステータスエリアに、エラーか否かのステータスデータを格納する。
[0147] また、この subclock93では、 UIパネル 47の入出力の状態のデータを取り込んだり
、監視 CPU56の状態を監視するウォッチドッグタイマ (WDTと略記) 95bにクロックを 出力したり、 UIパネル 47の LED等に状態表示のデータを出力したり、監視処理 (mo nmgr) 92に割り込み起動する信号を出力する。
[0148] また、この subclock93では、エラー検知した場合、システム制御内の sysmgr96に そのデータを出力する。
[0149] また、 monmgr92では、 AWSユニット 49の圧力計、ポテンショメータ 34、たるみセ ンサ 61のセンサ信号を取り込み、その信号を閾値と比較等してエラー力否かを監視 する。そして、初期化完了、エラー検知のデータを sysmgr96に出力する。
[0150] monmgr92では、 SDRAM69bによる共用データに対しても、立ち上げ時に異常 か否かの判断も行う。
[0151」 上 tisysmgr96には、通 f¾ ¾ (commgr)の comlmgr91a、 com2mgr91b»り
ノ^ティチェックサム等の通信処理の際のエラー発生した場合のデータも入力される 。図 11 (B)に示したように comlmgr91a、 com2mgr91bは、それぞれ HMI (PC) 5 3、モニタ(PC) 51とシリアル通信インタフェース(SCI) 97a、 97bを介して通信を行う
[0152] また、 comlmgr91a、 com2mgr91bでは、 SDRAM69bのデータを読み込む等 の処理を行う。この SDRAM69bには、 monmgr92による DPRAM処理を介してメイ ン CPU55側力ものデータが格納されたり、メイン CPU55側にデータを送信したりす るのに利用される。
[0153] 上記 sysmgr96では、 subclock93、 monmgr92、 commgr91力らのエラー力否 かのステータスデータを DPRAM68の監視ステータスに格納して、メイン CPU55側 でそのデータにより対応する処理を行えるようにして 、る。
[0154] なお、システム制御における exception (mgr) 99により監視 CPU56が演算時等に おいて演算が行えないゼロ割等の例外のエラーが発生した場合にも、 DPRAM68 の監視エラーステータスに格納する。
[0155] そして、メイン CPU55は、 DPRAM68の監視エラーステータスエリアのデータを読 み込み、対応する処理を行うことになる。
[0156] 図 14 (A)は、図 13の monmgr92による湾曲制御時におけるエラー監視のチェック 処理を示す。
[0157] このエラー監視がスタートすると、チェックルーチン Aからチェックルーチン Gまでの 7個のチェックを行う。この場合、最初のチェックルーチン Aでチェック結果が正常で あると、次のチェックルーチン Bに移る。一方、エラーが検出された場合には、この処 理を終了して、そのエラー内容を DPRAM68の監視エラーステータスに格納する。メ イン CPU55は、そのエラーに対応した処理を行うことになる。
[0158] チェックルーチン B以降も、チェックルーチン Aとチェック内容が異なるのみで同様 のチェックを行う。
[0159] 図 14 (B)は図 14 (A)におけるチェックルーチンのチェック処理の内容を示している 。図 15は、図 14 (A)の処理をブロック線図に示したものである。なお、図 15中では主 にジョイスティック(図中で と略記) 36aが接続された場合で示している力 後
述するようにトラックボール、或 、はポインティングデバイスの場合にも対応して 、る。
[0160] 操作入力部 31のジョイスティック 36aの操作によるシリアルデータは、ジョイステイツ ク 36aの位置の操作量 mと、速度の操作量 mとなる。各操作量 mは、スコープ現在位 置 Pとの差分が演算された後、位置の操作量 mの場合には差分 Ppに感度 Kp、速度 の操作量 mの場合には差分 Ρνに感度 Κνが乗算される。
[0161] なお、位置の場合と速度の場合とで異なる感度 Κρ、 Κνを設定する等して冗長性を 持たせた処理を行うことにより、位置入力指令、速度入力指令それぞれの場合で適 切に対応できるようにしている。また、ジョイスティック 36a以外の入力指令デバイスの 場合にも適切に対応できるようにして 、る。
[0162] その後、位置の場合には、さらにスコープ位置の原点の値 pc (org)と加算されて、 前回の位置指令値 pc_preと共に、 Pcommandに入力される。 pc (org)は、内視鏡湾 曲部とモータ駆動部とがクラッチ切断し、各々の位置の対応が一意に決まらなくなる ため、クラッチ接続毎にオフセット値を加えることで、モータ位置と内視鏡湾曲位置を 一意に設定するためである。
[0163] 一方、速度の場合には、前回の位置指令値 pc_preが加算された後、 Pcommand に入力される。
[0164] Pcommandの出力は、ポテンショ(メータ)電圧力もモータ指令値に変換する変換 係数 Kthが乗算された後、減算器 98を経てサーボアルゴリズムに入力され、このサ 一ボアルゴリズムにより PID制御などを行 、、サーボドライノく 45を経てモータ 27を駆 動する。なお、モータ 27の回転量を検出するエンコーダ 35の出力は、減算器 98によ り減算されてサーボアルゴリズムに入力される。
[0165] なお、この Pcommandには、さらに手動、中立復帰、キャリブレーションのモード情 報が入力され、これらに対応した処理も行えるようにしている。
[0166] また、操作入力部 31の操作入力は、 DPRAM68を経て、さらにシリアルデータとし て比較器 (コンパレータ) C_Dの一方の入力端に入力される。
[0167] また、ジョイスティック 36aの位置の操作量 mは、 DPRAM68を介して比較器 C— D の他方の入力端に接続される。そして、この比較器 C—Dによりジョイスティック 36aの シリアルデータと位置或いは速度の操作量 mに変換後のデータが一致する力否かの
比較が行われる。
[0168] また、比較器 C—Dの他方の入力端は、比較データを各々同じスケールに変換す る変換変換処理部 (f 0で略記)を経て比較器 C—Eの一方の入力端に接続され、こ の比較器 C—Eの他方の入力端には、変換係数 Kthの乗算処理が行われたモータ 指令値が入力される。そして、比較器 C— Eにより、入力ソースとモータ指令値の関係 力 Sチェックされる。
[0169] また、比較器 C—Eの他方の入力端は、比較データを各々同じスケール '次元に変 換する変換変換処理部 (f 0で略記)を経て比較器 C—Fの一方の入力端に接続され 、この比較器 C—Fの他方の入力端には、減算器 98に入力されるモータ指令値が D PRAM68を介して入力される。そして、この比較器 C— Fにより、図 15の 1点鎖線で 示すように MCLMGR側と TIMCTL側とでモータ指令値の関係をチェックする。
[0170] また、この比較器 C—Fの他方の入力端は、比較データを各々同じスケール '次元 に変換する変換変換処理部 (f 0で略記)を経て比較器 C—Gの一方の入力端に接 続され、この比較器 C—Gの他方の入力端には、エンコーダ 35の出力が DPRAM6 8を介して入力される。そして、この比較器 C— Gにより、モータ指令値とエンコーダ値 の関係をチェックする。
[0171] また、この比較器 C—Gの他方の入力端は、比較データを各々同じスケール '次元 に変換する変換変換処理部 (f 0で略記)を経て比較器 C—Cの一方の入力端に接 続され、この比較器 C—Cの他方の入力端には、ポテンショメータ 34の出力が DPRA M68を介して入力される。そして、この比較器 C—ひこより、エンコーダ値とポテンショ 値の関係をチェックする。
[0172] また、この比較器 C—Cの他方の入力端は、比較器 C—Bの一方の入力端に接続さ れ、この比較器 C—Bの他方の入力端には、ポテンショメータ 34の出力信号が入力さ れる。そして、この比較器 C— Bにより、メイン側と監視側とで同一センサ値が一致す るかをチェックする。
[0173] このように比較器 C— D、 C— E、 C— F、 C— G、 C— C、 C—Bは、図 14 (A)のチェ ックルーチン D、 E、 F、 G、 C、 Bのチェックをそれぞれブロック線図的に行う様子を示 す。
[0174] また、図 15に示すように差分 Pvに感度 Kvが乗算された信号は、ポテンショ速度の checck&クランプ処理がされる。また、原点の値 pc (org)が加算された信号も、前回 の原点の値 pc (org)と減算されて、ポテンショ速度のチェック &クランプ処理がされる
[0175] また、 Pcommmandの出力から、ポテンショ位置(論理上の位置)がチェックされる 。また、ポテンショメータ 34の出力により、ポテンショ位置(実際の位置)がチェックさ れる。
[0176] ポテンショ位置には論理上の位置と実務の位置とがある力 後述する様に操作手 段には指令がジョイスティックの様に指令が有限のものと、トラックボールなどの指令 が無限のものがある。このため、操作部位置とポテンショ位置との整合性を計算させ るために必要な情報として、ポテンショ(論理上の位置)を設けて!/、る。
[0177] さらにサーボドライバ 45への入力信号により、モータ速度がチェックされるようにな つている。
[0178] 図 16 (A)は、ジョイスティック 36aを用いた場合における図 15における操作入力部 31から係数 Kthを経てモータ指令値を出力する部分までの処理内容を示す。また、 図 17 (A)及び図 18 (A)は、ジョイスティック 36aの代わりにポインティングデバイス及 びトラックボールをそれぞれ用いた場合における同じ部分での処理内容を示す。な お、図 16 (A)、図 17 (A)及び図 18 (A)は、起動コマンド後に周期的に行われる周 期コマンド時の処理内容である。
[0179] これらの処理を行う場合、スコープ IDの情報を利用することにより、入力指令デバイ ス 36として湾曲制御装置 3に実際に接続されているスコープ 2に採用されているもの に対応した処理を行うことができるようにして 、る。
[0180] 図 16 (A)〖こ示すように、最初のステップ S1においてメイン CPU55は、ポテンショメ ータ 34の検出値力 スコープ現在位置の取り込み処理を行う。つまり、図 16 (C)に 示すようにスコープ部ポジション現在位置 pを取り込む。次のステップ S2にお!/、てメイ ン CPU55は、ジョイスティック 36aによる位置指令の操作量 mを取り込む。
[0181] この操作量 mは、図 16 (B)に示すように 10Vから + 10Vまでの値を例えば 12ビ ット量で表したものである。
[0182] 次のステップ S3においてメイン CPU55は、操作量リミット処理を施す。図 16 (B)に 示すように下限側の操作量リミット (min)力も上限側の操作量リミット (max)までに制 限する処理を行う。
[0183] 次のステップ S4においてメイン CPU55は、 pti計算、つまり操作量 mに感度を掛け た値を、図 16 (B)に示すように計算する。
[0184] ここで、感度とは位置司令と速度指令など指令入力タイプにより操作感覚が異なる ために設定するパラメータである。これにより、指令モード切替毎に湾曲制御装置 3 に設定されている幾つかのパラメータを再設定することなぐ感度パラメータのみを設 定すれば対応できるパラメータである(Pcommandへ入力する前にパラメータを設け ることで、 Pcommand力もモータ指令生成までのパラメータを統一することが出来る)
[0185] そして、図 16 (B)に示すように操作量論理座標系(pti)に変換する。
[0186] 次のステップ S5においてメイン CPU55は、 pc計算、つまり図 16 (B)に示すスコー プ部ポテンショ指令値 pcを計算する処理を行う。
[0187] つまり、図 16 (B)に示すよう〖こ pc=pre— pc+Kp X (pti— pre— pti)を計算する。
ここで、例えば pre— pc、 pre— ptiは、図 16 (C)に示すようにスコープ部ポジション及 び操作量に感度を掛けた値の前回指令値をそれぞれ示す。
[0188] 次のステップ S6においてメイン CPU55は、ステップ S5の処理に対してリミット処理
、つまり pcリミット処理を施す。このようにリミット処理が施されたスコープ部ポテンショ 指令値 pcに対して、ステップ S7においてメイン CPU55は、 th計算、つまりモータ指 令値 thを計算する処理を行う。
[0189] つまり、図 16 (B)に示すょぅに^= _1 1+1¾11 (pc— pre_pc)を計算する。
[0190] このモータ指令値 thを計算後、ステップ S8においてメイン CPU55は、速度制限処 理を行う。具体的には、前回との差分値 A thが max速度 X感度を超えた場合には、 速度制限を掛ける。
[0191] その後、 max速度 X感度カゝら算出される操作量の差分値 A mを使用してステップ S 4に戻り、再計算する。
[0192] これは、指令値と実際にモータ 27が動作する量を一致させるために再計算するた
めであり、例えば、動作範囲を超えた指令値が発生した場合でも実際に動く量と操作 部とがー意に対応させるためである。
[0193] このようにして算出されたモータ指令値 thに対してさらにステップ S9のソフトウェアリ ミット処理を施した後、図 15の減算器 98側に出力する。
[0194] 図 17 (A)は、ジョイスティック 36aの代わりにポインティングデバイスを用いた場合の 処理を示す。ステップ S1から S3までは、図 14 (A)と同様にスコープ現在位置取り込 み、操作量取り込み、操作量リミット処理を行う。
[0195] 次のステップ S11においてメイン CPU55は、不感帯処理を行う。つまり、ポインティ ングデバイスにおいては、感圧センサを用いているため、ポインティングデバイスに対 する操作に対して、適切な操作出力が得られるように不感帯を設けている。
[0196] これは、ポインティングデバイスの様に位置ではなぐ操作力量による指令形態を有 する操作系においては、操作者の操作量が直に反映しやすぐ急激な指令動作を防 ぐために不感帯を設けて 、る。
[0197] このため、この不感帯を考慮した操作量 mを算出する処理を行う。
[0198] つまり、図 17 (B)に示すように操作入力量 miに対して、操作量 mを m=pre— m+
(原点— mi) X感度として、不感帯 (原点— mi)を取り除く処理を行っている。
[0199] この不感帯処理の後に、図 16 (A)の場合と同様にステップ S4〜S7を行い、さらに ステップ S8を行わないでステップ S9のソフトウェアリミット処理を行う。これらの処理は 図 16の場合と同様であるので、その説明を省略する。
[0200] 図 18 (A)は、ジョイスティック 36aの代わりにトラックボールを用いた場合の処理を 示す。ステップ S1から S2までは、図 16 (A)と同様にスコープ現在位置取り込み、操 作量取り込みの処理を行う。
[0201] 次に、ステップ S4からステップ S7の処理及びステップ S9の処理を行う。これらの処 理は図 17 (A)のポインティングデバイスの場合と同様である。
[0202] このように本実施形態では、入力指令デバイス 36として、ジョイスティック 36a、ボイ ンティングデバイス、トラックボールのいずれを用いた場合にも、それらに適切に対応 した湾曲駆動制御を行うことができるようにして 、る。
[0203] 次に図 19から図 22を用いて各種の異常発生に対する処理内容を具体的に説明
する。なお、図 19中の番号(1)〜(3)は異常 (エラー)発生や処理の順序を示す。な お、他の図 20〜図 22においても同様である。これらは、湾曲制御装置 3の内部で発 生したエラーに対する処理内容を示す。
[0204] 図 19は、例外発生時における処理の内容を示す。監視 CPU56内における comm mgr91、 monmgr92、 subclock93、 sysgrm96では、それぞれ演算処理を行うの で、その演算処理において、例外が発生すると、その情報は、 exception99におい て検出される。
[0205] そして、 exception99により検出された例外発生のエラーの情報は、インタロック 5 7に入力され、インタロック 57は、そのエラーの発生に対応して、非常停止のコマンド を発生する。なお、インタロック 57は、図 35にて後述するように各種の異常をノヽード ウェア的及びソゥトウエア的に検出して、非常停止させる出力を出す他に、サーボドラ ィバ等の主電源の ON、サーボ ON、クラッチ ONを禁止する(つまり ONZOFF制御 する)。
[0206] また、 exception99を介して例外発生の情報は、 DPRAM68の監視エラーステー タスエリアに格納されると共に、 UIパネル 47にその情報が送られ、 UIパネル 47でそ の異常を表示する。
[0207] 図 20は、メイン CPU55側で発生したエラーに対する処理を示す。メイン CPU55側 でエラーが発生すると、そのエラーの情報は、 DPRAM68における LED (表示用) 情報、エラーコード、エラーセベリティの各エリアに格納される。
[0208] ここで、エラーセベリティは、 0が正常、 1が警告、 2が緊急停止、 3が非常停止に相 当し、番号が大きい程、エラーの度合いが高いことを示す。
[0209] これらのエラー情報は、 subclock93により読み出されて、 UIパネル 47において、 そのエラー表示などがされる。
[0210] また、これらのエラー情報は、 commmgr91aにより、 HMI (PC) 53に送信され、 H MI (PC) 53の表示面にそのエラー情報が表示される。
[0211] このように本実施形態では、正常な状態からエラー発生状態までを監視する状態 検出機能を有すると共に、エラーが発生した場合にはそのエラーの度合いを検出し て、そのエラーの度合いを表示する機能を有する。勿論、正常な状態の場合も表示
する。
[0212] 図 21は、監視 CPU56側のソフトウェアエラーにおけるオペレーショナルシステム(
OSと略記)のコールエラー発生時の処理を示す。
[0213] 監視 CPU56における commgrl91a、 monmgr92、 subclock93、 sysmgr96は、 それぞれソフトウェアを実行しており、エラーが発生すると、各エラーは sysmgr96に 通知される。
[0214] すると、 sysmgr96は、エラーの情報をインタロック 57に通知し、インタロック 57は、 非常停止の動作をする。また、 sysmgr96は、そのエラーの情報を DPRAM68の監 視エラーステータスエリアに格納する。
[0215] すると、メイン CPU55は、この監視エラーステータスエリアのエラーを読み込み、 D PRAM68における LED (表示用)情報、エラーコード、エラーセベリティの各エリア に格納する。
[0216] これらのエラー情報は、 subclock93により読み出されて、 UIパネル 47において、 そのエラー表示などがされる。
[0217] この後は、図 20の場合と同様に、これらのエラー情報は、 commmgr91aにより、 H MI (PC) 53に送信され、 HMI (PC) 53の表示面にそのエラー情報が表示される。
[0218] 図 22は、インタロック 57によるハードウェア的などで検出されたエラー発生時の処 理を示す。
[0219] インタロック 57により、断線等のエラーが検出されると、その情報は、メイン CPU55 を介して DPRAM68における LED (表示用)情報、エラーコード、エラーセベリティの 各エリアに格納される。
[0220] これらのエラー情報は、 subclock93により読み出されて、 UIパネル 47において、 そのエラー表示などがされる。
[0221] また、これらのエラー情報は、 commmgr91aにより、 HMI (PC) 53に送信され、 H
MI (PC) 53の表示面にそのエラー情報が表示される。
[0222] 図 23は、湾曲制御装置 3の立ち上げ時から終了時の処理内容を示す。この場合、 図 23の左側は、 UIパネル 47でのシステム起動状態を示す LEDの点灯内容を示す
[0223] 湾曲制御装置 3を内視鏡 2等と接続して、ステップ S31に示すように湾曲制御装置 3における MCU基板 44の主電源を ONにする。すると、ステップ S32に示すように、 メイン CPU55は、システムチェック及び初期化の処理を開始する。また、監視 CPU5 6も初期化の処理を開始する。この時、 UIパネル 47の LEDは、消灯状態から黄色で 点灯する。この場合、例えば緑と赤の LEDを同時に点灯させて、黄色で点灯するよう にしても良い。
[0224] ステップ S32のシステムチェック及び初期化の処理が終了して、メイン CPU55と監 視 CPU56とが双方とも正常であると、ステップ S33のシステムレディの状態となり、 L EDは緑色で点灯する状態となる。
[0225] ステップ S33のシステムレディの後に、ステップ S34に示すように内視鏡 2の湾曲部 16を湾曲させることができる湾曲の動作モードとなり、モード切替スィッチにより、自 動モード、手動モード、スタンバイモードを選択してその選択したモードで湾曲制御 を行うことができる。
[0226] なお、本実施形態では、モード切替スィッチは、例えば図 1の操作部 12に設けたモ ード切替スィッチ 40でも良いし、図 5 (A)及び図 5 (B)に示すように HMI (PC) 53に 設けたものでも良い。図 5では、スタンバイモードを選択できないが、選択できるように しても良い。また、この他に湾曲制御装置 3のパネル等にモード切替スィッチを設け るようにしても良い。
[0227] 自動モード、手動モード、スタンバイモードは、図 22に示すように相互に切り替える ことができる。
[0228] 自動モードは、内視鏡 2の操作入力部 31に設けられたジョイスティック 36a等の湾 曲操作による指令値により湾曲部 16を湾曲させる標準動作モードである。手動モー ドは、 HMI (PC) 53により、 HMI (PC) 53上の R (右)、 L (左)、 U (上)、 D (下)と各湾 曲方向に対応したボタンを押下する事で操作者の手動により湾曲を独立して操作し たり、湾曲速度を変更設定したり、送気送水 Z吸引の設定などをすることもできる湾 曲制御の動作モードである。
[0229] また、スタンバイモードは、 自動モード或いは手動モードにおいて、湾曲機構部 25 におけるモータ 27などの可動部の動きを一時的に停止して、自動モード或いは手動
モードで速やかに湾曲させる状態に復帰させることができる待機状態のモードである
[0230] そして、自動モード、或いは手動モードにより、湾曲制御を行い、内視鏡検査を行 つた後、湾曲制御を終了する場合には、ステップ S35に示すように、 MCU基板 44の 主電源を OFFにすると LEDは消灯して、通常運転シーケンスが終了することになる
[0231] 図 25は、図 23の通常運転シーケンスにおけるワーニングの発生及びその発生を 解消する場合の動作を示す。
[0232] 図 23で説明したようにしてステップ S34の動作モードにおいて、操作を行っている と、ワーニング (警告)が発生する場合があり、このワーニングが発生するとワーニング 処理 111が行われ、 UIパネル 47においてワーニングが発生したことが表示される。
[0233] 従って、 UIパネル 47の解除スィッチにより解除操作をするとワーニング表示の消去 の処理が行われ、ワーニングのない動作モードに復旧させることができる。
[0234] 図 26は復旧ができない非常停止が発生した場合とその発生に対する処理の動作 を示す。図 26に示すように、ステップ S32のシステムチェック及び初期化の処理、或 いはステップ S34の動作モードにおいて、復旧できない異常が発生する場合があり、 異常が発生すると異常処理 112が行われる。
[0235] 異常処理 112として LEDにより赤色の点灯とエラーコードによる表示が行われるが
、解除スィッチでは復旧できないので、図 26に示すように主電源を OFFにした後、再 び主電源を ONにして復旧させることになる。
[0236] 図 27は、緊急停止の発生とその発生に対する対処の動作を示す。図 27に示すよう にステップ S34の動作モードにおいて、復旧可能な異常(緊急停止)が発生する場 合がある。この異常は、サーボ偏差の異常、湾曲の動作範囲力も外れたような異常の ように復旧が可能な場合である。
[0237] この異常が発生した場合には、異常処理 113として手動モードに変更した後、この 手動モードで湾曲の動作範囲内に変更するなどして、その異常を解除することにより
、通常の動作モードに復旧させることができる。
[0238] 図 28はキャリブレーションの動作シーケンスを示す。また、右側の部分には、キヤリ
ブレーシヨン状態に対応する LEDの点灯状態を示す。
[0239] ステップ S32のシステムチェック及び初期化の時に、キャリブレーションデータの読 み出しの処理が行われる。つまり、接続された内視鏡 2の場合における R, L, U, D の湾曲範囲や湾曲速度などのキャリブレーションデータの読み出しが行われる。この 場合、キャリブレーション状態を示す LEDは緑色で点灯する。
[0240] また、ステップ S34の動作モード (通常運用)時の動作が開始する。そして、キヤリブ レーシヨンを行う場合には、ステップ S41に示すようにキャリブレーションスィッチを O
Nにする。
[0241] 具体的には、 HMI (PC) 53において、図 10 (B)の中央付近に配置されたキヤリブ レーシヨンのタグを選択することにより、この図 10 (B)に示すキャリブレーション表示 画面となり、開始ボタンを押してキャリブレーションを開始する。
[0242] この状態では、湾曲のサーボが ON、クラッチが ONに設定されて、ステップ S42に 示すように湾曲部 16を低速で RZL、 UZD方向に繰り返し湾曲する。この場合、キ ヤリブレーシヨン状態を示す LEDは黄色で点灯する。
[0243] その際、サーボドライバ 45の入出力ゲインを一定にして、操作入力部 31側のジョイ スティック 36aの操作量に対して実際のモータ 27の回転量等、実際のキヤリブレーシ ヨンデータを取り込む。
[0244] そして、ステップ S43に示すように、取り込んだキャリブレーションデータを記憶し、 システムチェック及び初期化時に読み出したキャリブレーションデータを補正する。そ して、このキャリブレーションのシーケンスを終了する。すると、キャリブレーション状態 を示す LEDは緑色で点灯する。
[0245] このようにキャリブレーションを行うことにより、繰り返しの湾曲操作により、操作入力 部 31側での操作に対して、湾曲部 16側での実際の湾曲量との間にずれが発生した ような場合にも、両者のずれを解消することができる。
[0246] 具体的に説明すると、湾曲操作を長期にわたり繰り返し行うと、操作入力部 31側に おいて、例えばジョイスティック 36aを、例えば U方向の可動範囲のリミットまで、傾倒 する操作を行っても、湾曲部 16がそのリミットに対応した湾曲角まで湾曲しなくなるこ とが発生する力 このような場合においてもキャリブレーションを行うことにより、初期
の設定状態に復帰させることができる。
[0247] 図 29は、メイン CPU55及び監視 CPU56とを含めた場合での立ち上げ手順と立ち 下げ手順のシーケンスを示す。このシーケンスにおいて、以下に説明するようにメイン
CPU55及び監視 CPU56とが初期化を正常に終了した場合には、一時、緊急停止 状態に設定されることが特徴となっている。
[0248] MCU基板 44 (の CPUボード)における主電源が ONにされると、メイン CPU55の メイン POWER (メイン側電源)が ON及び監視 CPU56の監視 POWER (監視側電 源)が ONになる。
[0249] すると、ステップ S51a、 5 lbに示すように、メイン CPU55側では OSが起動すると共 に、監視 CPU56側でも OSが起動し、両者はそれぞれ初期化の処理をノヽンドシェ一 クで行う。
[0250] 具体的には、メイン CPU55側の OSが起動し、さらにアプリケーションタスクを起動 した後、 DPRAM68の所定のエリアのクリア、 SDRAM69aの共用データエリアのク リア、 SRAMカード 48からの共用データのリードを行う。
[0251] その後、メイン CPU55は、メイン側の共用データのロード完了の通知を DPRAM6
8のエリアを介してハンドシェークで監視 CPU56側に通知すると共に、メイン CPU55 側の初期化処理を開始する。
[0252] 監視 CPU56は、メイン側の共用データのロード完了の通知を受けて、監視側の初 期化処理の開始をメイン CPU55側に通知して、監視 CPU56は初期化処理を行う。
[0253] そして、監視 CPUは、初期化処理を終了すると、メイン CPU55に監視 CPU56側 の初期化処理終了の通知をする。
[0254] このようにして、メイン CPU55側及び監視 CPU56側とも初期化の処理が正常に終 了すると、ステップ S52の緊急停止状態になり、メイン CPU55側は、ステップ S53aの 緊急停止解除待ちとなる。
[0255] これは、操作者が操作を意図して開始するために解除させる解除 SWの指令があつ た運用を可能にするために緊急停止状態としている (運用安全上、湾曲制御装置 3 の電源立ち上げが行われるやいなや操作部力もの湾曲動作可能な状態にはしない
。)本実施形態では緊急停止解除待ちのステップを示しているが、緊急停止解除待
ちにしな!/、ことも設定可能である。
[0256] このステップ S53aの緊急停止解除待ちの状態において、 UIパネル 47の解除スィ ツチを操作することにより、この緊急停止の状態が解除され、緊急停止解除待ちの状 態力も次のステップ S54aの湾曲制御の動作等を行う運用の状態に移る。なお、監視 CPU56側は、緊急停止状態が解除された後、ステップ S54bの(監視の)運用の処 理に移る。
[0257] メイン CPU55側では、運用の処理の後、メイン CPU55は、ステップ S55aの運用終 了かの判断を行い、終了でない場合には運用の処理に戻り、運用終了の操作が行 われた場合には、ステップ S56aの終了準備の処理を行う。
[0258] そして、データの保存等の終了準備の処理を行った後、ステップ S57の MCU基板 44の電源 OFFとなる。一方、監視 CPU56側は、運用の処理の後、ステップ S57の MCU基板 44の主電源 OFFとなる。
[0259] 図 30は、電磁クラッチ 30を ON, OFFする動作のタイミングを示すもので、図 30 (A )は、電磁クラッチ 30を OFFから ONにする場合、図 30 (B)は、 ONから OFFにする タイミングを示す。なお、両図とも太い実線より上側が指令値、下側は実際の動作を 示す。なお、番号(1)〜(5)は時間的に動作する順序を示す。
[0260] 図 30 (A)に示すように MCU基板 44側力も湾曲機構部 25のモータ 27に対してサ ーボ ONの指令が出されると、短い時間遅延 Taまでの間に、モータ 27にはサーボド ライバ 45からサーボ駆動信号が供給されてサーボ ONの状態となる。
[0261] また上記時間遅延 Taの後、 MCU基板 44側から電磁クラッチ 30に対してクラッチ O Nの指令が出される。この指令から遅延時間 Tbの後に、 MCU基板 44側からサーボ ドライバ 45にコマンドが送出されるようになる。この場合、遅延時間 Tbが経過するより 前に、電磁クラッチ 30は接続状態となる。
[0262] これにより、モータに駆動のためのエネルギーを供給する際に生じる振動発生など の不要なノイズを内視鏡に伝達することなく運転状態に移行することが出来る。
[0263] 一方、電磁クラッチ 30を ONから OFFにする場合には、図 30 (B)に示すように、 M CU基板 44側からコマンド終了、クラッチ OFF指令、サーボ OFF指令が殆ど同時に 出力される。すると、電磁クラッチ 30は短い時間の後、切断状態になる。
[0264] このようにサーボ ONした後にクラッチ ONの指令を出すような制御を行うことにより、 湾曲部 16を湾曲させるモータ 27を、スムーズにサーボ駆動させることができる状態 に設定できるようになる。
[0265] 図 31は、 SRAMカード 48に格納されている設定パラメータを展開する動作や使用 、変更及び記憶などの動作を示す。この図 31の場合は、 1回の内視鏡検査中におい ては、時間的な変化が少ない或いは殆ど変更する必要が無い静的な設定パラメータ の場合に対する動作例である。また、換言すると、 SRAMカード 48にリードオンリで 格納されている設定パラメータに対する設定パラメータの展開、使用、変更、記憶の 動作を示す。但し、記憶の場合には、ライトを行う。なお、図中の番号は、動作順を示 している。
[0266] これに対して、図 33においては、 1回の内視鏡検査中において時間的に変化し易 い、或いは時間的に変更すべき動的な設定パラメータの場合を説明する。換言する と、リード Zライトされる設定パラメータの展開、使用、変更、記憶の動作を示す。
[0267] 図 31 (A)は、初期化の処理の際に行われる設定パラメータの展開の動作例を示す 。図 31 (A)に示すように初期化の際にメイン CPU55は、 SRAMカード 48に格納さ れている図 32に示すような操作部固有パラメータファイル、スコープ固有パラメ一タフ アイル、 AWSパラメータファイルを DPRAM68 (のシステムパラメータエリア)に展開 する。
[0268] この場合、メイン CPU55は、最初に操作部 ID、スコープ IDを読み込み、その読み 込んだ操作部 IDやスコープ IDに対応した(固有となる)操作部固有パラメータ、スコ ープ固有パラメータ等を SRAMカード 48から読み出すことになる。
[0269] このようにして、内視鏡検査時に使用されるスコープ 2の種類などが異なる場合に おいても、メイン CPU55は、そのスコープ 2に適した固有のパラメータを SRAMカー ド 48から読み出し、 DPRAM68に展開する。
[0270] また、図 31 (A)に示すように、次にこの DPRAM68に展開した各種の設定パラメ ータを、メイン CPU55は、これとデータバスで接続された SDRAM69aにコピーする
[0271] 図 31 (B)は、設定パラメータの使用の動作、つまり通常動作を示す。メイン CPU55
側において、設定パラメータを使用する場合には、このメイン CPU55は、 SDRAM6 9aにアクセスして、この SDRAM69aから設定パラメータを読み出す。
[0272] 一方、監視 CPU56側において、設定パラメータを使用する場合には、この監視 CP U56は、 DPRAM68にアクセスして、この DPRAM68から設定パラメータを読み出 す。
[0273] 図 31 (C)は、設定パラメータを変更する場合の動作を示す。この場合には、ユーザ は、 HMI (PC) 53を操作して、この HMI (PC) 53を介して監視 CPU56に対して湾 曲の動作範囲を変更する等、設定パラメータの変更要求の設定パラメータを送る。
[0274] すると、監視 CPU56は、その変更要求の設定パラメータにより DPRAM68に格納 されている変更前の対応する設定パラメータを変更する。その後、メイン CPU55は、 変更された設定パラメータを DPRAM68から SDRAM69aにコピー(上書き)して、 変更前の対応する設定パラメータを変更する。
[0275] 本実施形態における設定パラメータとしては、図 32等で説明するように、操作部固 有パラメータ、スコープ固有パラメータ、 AWSパラメータ、ユーザ設定パラメータ、サ ーボ調整パラメータ等がある。
[0276] 図 31 (C)では、湾曲制御装置 3に外部インターフェースを介して接続される HMI ( PC) 53により、設定パラメータを変更設定できることを示している力 この他に例えば 湾曲制御装置 3の UIパネル 47等に設定パラメータを変更設定できる操作手段を設 けるようにしても良い。
[0277] 図 31 (D)は、設定パラメータの記憶の動作を示す。設定パラメータを変更した場合 には、そのままでは電源を OFFにした場合には、保存されないので、設定パラメータ を変更して、その変更した設定パラメータにより次回にも使用したいと望むような場合 には、 HMI (PC) 53を操作して、この HMI (PC) 53から、監視 CPU56に設定パラメ ータの記憶要求のコマンドを送る。
[0278] すると、監視 CPU56は、その設定パラメータの記憶要求のコマンドをメイン CPU55 に送る。メイン CPU55は、設定パラメータの記憶要求のコマンドを受けて、要求され た設定パラメータのファイルを DPRAM68から SRAMカード 48にコピー(上書き)す る。
[0279] この SRAMカード 48は、不揮発性であるので、電源 OFF時にも保持され、次回に は、変更された設定パラメータで使用することができる。
[0280] 図 32は、 SRAMカード 48に格納されている各種の設定パラメータ及びそれらの設 定パラメータが DPRAM68や SDRAM69aにコピーされる動作を示す。
[0281] 図 32に示すように SRAMカード 48には、操作部固有パラメータ(ファイル)と、スコ ープ固有パラメータ (ファイル)と、 AWSパラメータ (ファイル)とが格納されており、そ の他にユーザ設定用パラメータ(ファイル)と、サーボ調整用パラメータ (ファイル)とが 格納されている。
[0282] 操作部固有パラメータは、操作部毎に設定されたパラメータで、操作部毎に ID番 号が割り当てられている。また、湾曲制御装置 3でサポートしている操作部の数だけ 用意されている。
[0283] 具体的には操作部固有パラメータとしては、操作部 ID、操作部 16に設けてあるジョ ィスティック 36a、トラックボール、ポインティングデバイスの情報に関する操作 (入力) 部名称、その操作入力部力 RLZUD方向に湾曲させる操作範囲の最大値、最小 値、不感帯、感度、カ覚フィードバック用特性等である。
[0284] また、スコープ固有パラメータは、スコープ 2毎に設定されているパラメータで、スコ ープ 2毎に ID番号が割り当てられている。また、湾曲制御装置 3でサポートしているス コープ 2の数だけ用意されて!、る。
[0285] 具体的にはスコープ固有パラメータとしては、スコープ 、スコープ 2の動作範囲( 湾曲機構部 25を構成するモータ 27の動作符号、最高速度等の特性、エンコーダ 35 の特性、ポテンショメータ 34の特性、モータ 27のサーボ系のループゲイン等の特性) 等である。
[0286] また AWS設定パラメータは、シーケンス毎に設定されたパラメータであり、シーケン ス毎に、 ID番号が割り当てられている。また、湾曲制御装置 3でサポートしているシー ケンスの数だけ用意されている。
[0287] ユーザ設定用パラメータは、上記以外で設定すべきパラメータである。具体的には 、クラッチ ON、 OFFの待ち時間、サーボ ON、 OFFの待ち時間、手動速度、計測デ ータ保存を有効にするか、エラーデータ保存を有効にするか等の設定を行うパラメ一
タである。
[0288] また、サーボ調整用パラメータは、サーボ調整機能使用時に必要になるパラメータ である。具体的には、サンプリング周期、モータ 27を駆動するモータパルスの振幅、 サーボアルゴリズムの選択、ゲイン等のパラメータである。ここで、設定パラメータを H MI (PC) 53で反映させる場合の補足を説明する。
[0289] 前記した様に、本装置には幾つかのパラメータ設定が可能であるが、大別するとモ ータ 27等のァクチユエータを駆動するために必要なサンプリング周期、ゲイン、振幅 量などサーボ調整パラメータを動的設定パラメータとし、それ以外の動作範囲、シー ケンス、 ID、操作部感度などの前記動的設定パラメータ以外の設定パラメータを静 的設定パラメータと定義する。
[0290] さて、前記に示した様に、設定パラメータは、 HMI (PC) 53を用いて任意に変更が 可能な構成になっている力 HMI (PC) 53では静的パラメータのみを設定可能にし てある。
[0291] これは、モータ駆動などの動的パラメータの設定には知識 ·熟練を要するため、安 易に設定してしまうと動作が不安定、挙動が意図しないものとなってしまうためである 。そのため、装置の安全性を考慮し、 HMI (PC) 53では静的パラメータのみ変更可 能である。
[0292] 図 32の例では、最初に複数(255個)から 1つの操作部固有パラメータ A2. binが、 DPRAM68のシステムパラメータエリアにおける接続操作部 1用エリアにコピーされ る。この場合、上述したように操作部固有 IDの情報が先に読み出され、その情報に 対応して、例えば操作部固有パラメータ A2. binがコピーされることになる。
[0293] 次に、スコープ固有パラメータ Bl. binが、 DPRAM68のシステムパラメータエリア における接続スコープ用エリアにコピーされる。次に 2つの AWSパラメータ AW1、 A W2. binが AWS1用及び AWS2用エリアにコピーされる。さらにユーザ調整用パラメ ータ U. binとサーボ調整用パラメータ力 ユーザ設定用及びサーボ調整用エリアに それぞれコピーされる。
[0294] そして、 DPRAM68にコピーされた、これらのパラメータは、図 31 (A)に示すように さらに SDRAM69aにコピーされて初期化が終了する。
[0295] 図 33は、動的な設定パラメータの場合における設定パラメータの展開、使用、変更 及び記憶などの動作を示す。この動的な設定パラメータは、通常運用時に、常時アツ プデートされる値であると共に、前回停止時の最終アップデート値が次回システム起 動時に使用される。
[0296] 図 33 (A)は、初期化の処理の際に行われる設定パラメータの展開の動作例を示す 。この場合には、図 31 (A)で説明した場合と同様の動作となる。従って、この場合の 動作の説明を省略する。
[0297] また、この場合における設定パラメータの使用の前に図 33 (C)の設定パラメータの 変更の動作を先に説明する。
[0298] 上述したスコープ固有パラメータには、静的な設定パラメータの他に、 RL, UD方 向の位置ループゲイン、ワイヤ形状状態の推定下限値、上限値、経時変化値等があ り、これらは時間的に変化する。
[0299] このため、メイン CPU55は、運用時において、例えば所定の周期などでたるみセン サ 61の計測結果や過去の履歴データ等から、初期化の際に読み出した設定値の時 間的な変化を算出したり、評価式により評価結果による動的な設定パラメータを DPR AM68に書き込み、以前の設定値をより適切な状態にアップデートする。
[0300] 次に図 33 (B)に示す設定パラメータの使用を説明する。メイン CPU55側で設定パ ラメータを使用する場合、静的な設定パラメータに対しては、図 31 (B)の場合と同様 に SDRAM69aから読み出して使用し、動的な設定パラメータに対しては、 DPRA M68から最新の設定パラメータを読み出して使用する。
[0301] 監視 CPU56側で設定パラメータを使用する場合には、図 31 (B)の場合と同様に D PRAM68から読み出して使用する。
[0302] 図 33 (D)は、設定パラメータの記憶の動作を示す。この場合は、図 31 (D)の場合 と同じ動作となる。このように動的な設定パラメータに対しては、所定周期等で常時適 切な値にアップデートすることにより、経時的な影響を殆ど解消して適切な状態で湾 曲駆動制御することができる。なお、動的なパラメータは、設定パラメータの記憶の操 作を行わない場合にも、終了時には、 SRAMカード 48に保存されるようにしている。
[0303] なお、上述の説明では、操作部 ID、スコープ IDに対応した操作部固有パラメータ
ファイル、スコープ固有パラメータファイル等を複数用意している力 このような区分け の名称に限定されるものでなぐ例えばスコープ IDにより、そのスコープ 2における湾 曲指示を行う湾曲操作入力手段 (具体的には、ジョイスティック 36aなどの入力指令 デバイス)用のパラメータファイルや、湾曲駆動する湾曲機構部 25用のパラメ一タフ アイル等を一意に規定できるように区分けしたものでも良 、。
[0304] 図 34は SRAMカード 48に格納されるデータの詳細を示す。図 32において、説明 したように SRAMカード 48には、操作部固有パラメータ、スコープ固有パラメータ、 A WSパラメータ、ユーザ設定パラメータ、サーボ調整パラメータが格納されると共に、こ の他にシステムのログデータ(sysLogデータ)、エラーのログデータ(errLogデータ) 、データログデータ(dtLogデータ)を格納する領域を有する。
[0305] システムのログデータとしては、システム実行履歴のデータであり、各ファイルに、 日 時、タスク名、メッセージのデータが格納される。
[0306] また、エラーのログデータとしては、エラー発生の履歴のデータであり、各ファイル に、 日時、タスク名、エラーコードのデータが格納される。
[0307] また、データログデータとしては、操作量、指令値、モータ指令、エンコーダなどの 動作状態のデータが時間的に記憶される。これらを計測して保存することにより、メン テナンス等を行い易くなる。
[0308] このように本実施形態においては、湾曲駆動動作を行うモータ 27に関するパラメ一 タの設定のみでなぐその回転位置の検出を行うエンコーダ 35に関する特性の設定 等や、湾曲指示の入力操作を行う湾曲操作入力部等に対するパラメータ等、多くの ノ メータに対して、各スコープ 2に対して広範囲な項目に対して、詳細かつ適切に 設定できるようにしているので、従来例よりも適切な電動湾曲動作を行うことができる
[0309] 図 35はインタロック 57の詳細なロジック構成を示す。このインタロック 57は、メイン C PU55からのソフトウェア指令 121に対して、各種の入力或いは異常 122〜129を監 視して、ゲート 131〜 135を経て周辺機器 (湾曲機構部 25及び AWSユニット 49)側 を制御する出力信号を出す。
[0310] メイン CPU55からサーボドライバ 45、 AWSユニット 49の電源 ONのソフトウェア指
令 121が出されると、インタロック 57の 2入力のアンド回路によるゲート 131を経て、サ ーボドライバ 45及び AWSユニット 49の電源を ONにする出力信号となる。
[0311] この場合、非常停止入力 122に相当する各異常監視される項目が、オア回路 141 〜144を介して非常停止する状態を保持する第 1の非常停止自己保持回路 145に 入力される。この第 1の非常停止自己保持回路 145の出力は、 2入力のオア回路に よるゲート 132を通して非常停止させる非常停止出力信号になると共に、上記ゲート 131の他方の反転入力端に入力される。
[0312] なお、オア回路 141〜144に入力される非常停止入力 122としては、 RASの電源 電圧、ハードウェア(アンプ異常、エンコーダ断線、 FPGA異常)、メイン CPU (WDT 異常、ソフトウェア異常)、監視 CPU (WDT異常、ソフトウェア異常)であり、これらの 異常発生を第 1の非常停止自己保持回路 145が検出する。
[0313] なお、リセット入力 123は、ワンショット回路 146をトリガしてワンショット回路 146から リセットパルスを発生させ、このリセットパルスにより、第 1の非常停止自己保持回路 1 45をリセットする。
[0314] また、メイン CPUのソフトウェア異常 125、監視 CPUのソフトウェア異常 126は、ォ ァ回路 147を経て第 2の非常停止自己保持回路 148に入力され、この第 2の非常停 止自己保持回路 148の出力は、ゲート 132の他方の入力端に入力される。
[0315] なお、(メイン CPU55側から出力される)異常解除 124の入力は、 2入力のオア回 路 149を経て、第 2の非常停止自己保持回路 148をリセットする。また、この第 2の非 常停止自己保持回路 148は、リセット入力 123によっても、オア回路 149を経てリセッ トされる。
[0316] また、このインタロック 57は、サーボ ON[RL]指令、サーボ ON[UD]指令のソフト ウェア指令 127により、それぞれゲート 133及び 134を経てサーボ ON[RL]、 [UD] の出力信号を出力する。この場合、アンド回路によるゲート 133及び 134には、メイン CPU55のソフトウェアによるシステムレディ入力 128がそれぞれ入力され、さらにゲ ート 133及び 134における各反転入力端には、ゲート 132の出力が入力されるように している。
[0317] また、クラッチ ONのソフトウェア指令 127により、ゲート 135を経てクラッチ ONの出
力信号を出力する。この場合、 2入力のアンド回路によるゲート 135の反転入力端に は、ゲート 132の出力が入力されるようにしている。
[0318] このような構成にして、非常停止入力 122等における 1つでも異常入力があると、非 常停止出力となる。
[0319] この状態ではサーボドライノく、 AWSユニット電源の ON、サーボ ON[RL]、 [UD]、 クラッチ ONがそれぞれ禁止される、つまり OFFになるようにしている。換言すると、非 常停止出力が無い場合にのみ、サーボドライノく、 AWSユニット電源の ON、サーボ O N[RL]、 [UD] ,クラッチ ONが許可されるようにしている。
[0320] なお、図 35の左側に示すように、例えば非常停止入力 122におけるエンコーダ断 線は、メイン側で検出して、その要因を特定する。また、メイン CPU55側の WDT、ソ フトウエア異常 (非常停止、 NMI (ノンマスカブルインタラプト)を含む)は、監視側で 検出する。また、異常解除入力 124は、監視側で解除スィッチの入出力から検出で きる。また、ソフトウェアによるシステムレディ入力 128は、メイン側で監視側の立ち上 げ状態を検出することで、それを検出できることになる。
[0321] なお、本発明は上述した実施形態に限定されるものではなぐ発明の主旨を逸脱し な 、範囲内にお 、て種々の変形や応用が可能であることは勿論である。