(57)【特許請求の範囲】
【請求項１】
遠隔操作で使用される手術装置であって、制御手段を有するデバイスと、このデバイスとの間に通信手段を有しデバイスを統括制御する統括制御手段と、前記デバイスを含む複数のデバイスについての動作手順の記述を保持する動作手順記述保持手段とを備え、前記デバイスにはデフォルトの動作手順記述が記憶されており、前記統括制御手段はデバイスの構成を検知する検知手段を備え、検知手段が検知したデバイスの構成と使用者のＩＤとを用いてその検知したデバイスについての動作手順記述を前記動作手順記述保持手段を参照して求めデバイスに送ることを特徴とする手術装置。
【請求項２】
前記検知手段は、デバイスの構成として、デバイスの使用の有無及び／又はデバイスの作業内容を検知することを特徴とする請求項１に記載の手術装置。
【請求項３】
前記デバイスは、手術に用いるツールを操作する操作マニピュレータを含むことを特徴とする請求項１に記載の手術装置。
【請求項４】
前記検知手段は、デバイスの構成として、デバイス個々の使用の有無、デバイスが有するツール及び／又はデバイスの作業内容を検知することを特徴とする請求項３に記載の手術装置。
【請求項５】
前記検知手段は、手術装置の電源投入またはリセットがあったときに、デバイス側から統括制御手段への割り込みによるリクエストによって、前記デバイスの構成を検知することを特徴とする請求項１または３に記載の手術装置。
【請求項６】
前記検知手段は、デバイスの構成に変更があったときに、前記デバイスから統括制御手段への割り込みによるリクエストによって、前記デバイスの構成を検知することを特徴とする請求項１または３に記載の手術装置。
【請求項７】
前記デバイスは、前記統括制御手段から動作手順記述が送られてこないときは、デフォルトの動作手順記述を実行することを特徴とする請求項１または３に記載の手術装置。
【請求項８】
使用者を認証する認証手段を設け、前記統括制御手段は複数の使用者に対するデバイス使用の優先権を判定することを特徴とする請求項１または３に記載の手術装置。
【請求項９】
優先権の一番高い使用者に用意された前記デバイスの動作手順記述を前記通信手段を介して前記デバイスに送ることを特徴とする請求項８に記載の手術装置。
【請求項１０】
症例に対するデフォルトのデバイス構成を記憶する手段を有し、実際に設定されたデバイスの構成とデフォルトの構成との差異を提示する手段を備えたことを特徴とする請求項１または３に記載の手術装置。
【請求項１１】
前記デバイスは、使用者が遠隔操作で使用する術具または治療器を含み、各使用者が起こした動作を入力する動作指令入力手段と、該動作指令入力手段の出力した動作指令を操作指令情報に変換する操作指令生成手段と、該操作指令生成手段からの操作指令に基づいて患部に対して位置決めし、運動エネルギ・光エネルギ・電気エネルギ・熱エネルギのうちのすくなくともいずれかを発生して、組織を変形または破壊もしくは変性させる患部組織操作手段と、手術部位の画像情報および前記患部組織操作手段の患部への接近や接触力を検出する作業環境情報検出手段と、患部とその周辺に変動磁場・電磁波・超音波のうちの少なくともいずれかを印加し透過あるいは共鳴信号を計測する生体内部情報計測手段と、該生体内部情報計測手段により計測された信号を逐次三次元の計測情報画像に再構成する計測情報処理手段と、該計測情報処理手段及び前記作業環境情報検出手段の出力を各術者に合成加工して提示する臨場感制御情報生成手段と、操作を許可された使用者を認証するためのユーザ認証手段と、前記各手段において解釈実行される動作手順の記述を保持する動作手順記述保持手段を有することを特徴とすする請求項１に記載の手術装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、医療用機器に係わり、術者の患部への治療行為を支援する手術装置に関する。
【０００２】
【従来の技術】
従来、手術の支援を行う装置としては、特開平０８−０７１０７２号公報に記載の手術用マニピュレータシステムがある。このシステムでは、生体内組織部位の観察と処置を行う手術用マニピュレータと、この手術用マニピュレータを操作するための操作手段と、この操作手段からの操作情報に基づいて手術用マニピュレータの動作を制御する制御手段と、手術用マニピュレータの動作制御を行うために必要な制御パラメータを任意に変化させることができるパラメータ可変手段とを備えている。この構成によれば、制御パラメータを術者にとって操作しやすい状態に変更することができ、操作性の向上を図れることや、特に術中に変更すれば多種多様な操作ができ、操作のバリエーションが拡大するとされていた。
【０００３】
【発明が解決しようとする課題】
実際の手術においては使用者の違い、症例の違いに応じて手術装置の構成を変える必要がある。また手術作業が進行中の現場でもこのようなことは起こり得る。例えば症例の違いや現場の状況に応じて臨機応変に作業用マニピュレータの個数の増減、作業に対応した種類の変更を行ったり、主に使用する計測機器の変更などを行ったりする必要がある。◆
上記のようにシステム構成や構成要素自体（デバイス内における構成）を変えた場合、また逆に同じシステム構成又は構成要素のままで異なる作業を行う場合は当然これを動作させるための手順の記述すなわち各要素における動作制御プログラム自体の変更を行わなければ、その要素の、そしてひいては装置全体の性能が発揮できず、場合によっては治療を継続できなくなる可能性さえ生じる。例えば患部を切断するためのマニピュレータと、吸引管位置決め用マニピュレータの動作制御プログラムは当然異なり、また同じ切断用マニピュレータであってもレーザによる切断の場合は患部に対して非接触であるため先端の位置制御が重要になるが、機械力による切断すなわちメスを用いた切断を行う際には患部との接触を生じるため上記の位置制御では正しく動作しないため、これとは異なる力制御等のアルゴリズムに基づいて記述された動作制御プログラムが必要になる。しかるに従来はこういったプログラム自体を動的かつ自動的に変更することは行われず、あくまで使用者の指示に依っていた。◆
また従来技術においては、使用者の認証という概念がなく、手術装置は現在の使用者が誰であるかを知ることができなかった。よって使用者固有の設定はこれを使用者自身が行う必要があった。また正規の使用者でない人間が手術装置を使用することを防止できなかった。
【０００４】
本発明は上記のような事情に鑑みてなされたものであり、その目的は、自動的かつ動的にシステム構成および各要素の動作を変化させるような手術装置を提供することである。
【０００５】
【課題を解決するための手段】
上記目的を達成するために、本発明の手術装置は、遠隔操作で使用される手術装置であって、制御手段を有するデバイスと、このデバイスとの間に通信手段を有しデバイスを統括制御する統括制御手段と、前記デバイスを含む複数のデバイスについての動作手順の記述を保持する動作手順記述保持手段とを備え、前記デバイスにはデフォルトの動作手順記述が記憶されており、前記統括制御手段はデバイスの構成を検知する検知手段を備え、この検知手段が検知したデバイスの構成と使用者のＩＤとを用いてその検知したデバイスについての動作手順記述を前記動作手順記述保持手段を参照して求め通信手段を介してデバイスに送信するものである。
また上記目的を達成するために、本発明の手術装置は、手術に用いるツールを操作する操作マニピュレータからなるデバイスを含めて、それぞれに制御手段を有する複数のデバイスと、前記ツールを操作するデバイスに動作を指令するための動作指令入力手段と、前記複数のデバイスとの間に通信手段を有して統括制御する統括制御手段と、前記複数のデバイスの動作手順を記述した動作手順記述を保持する動作手順記述保持手段とを備え、前記統括制御手段に、デバイスの構成を検知する検知手段を備え、該検知手段によって検知されたデバイスの構成に合う動作手順記述を前記通信手段によってデバイスに送るように構成したものである。
上記の検知手段は、デバイスの構成として、デバイスの使用の有無、デバイスが有するツール及び／又はデバイスの作業内容を検知するとよい。
また上記の検知手段は、手術装置の電源投入又はリセットがあったときに、デバイス側から統括制御手段への割り込みによるリクエストによって、デバイスの構成を検知するとよい。
また上記の検知手段は、デバイスの構成に変更があったときに、デバイスから統括制御手段への割り込みによるリクエストによって、デバイスの構成を検知するとよい。
上記手術装置によれば、統括制御手段により自動的かつ動的にデバイスの構成を検知して動作手順記述をデバイスに設定できるので、自動的かつ動的にシステム構成、デバイスの構成や動作を変化させることができる。これにより、デバイスに誤った動作手順記述を与えるというソフトウェア的な誤りを防止できるほか、デバイスの構成におけるハードウェア的な誤りを未然に発見できる。特に、手術作業が進行中に術者が各種設定に煩わされることがなく、誤った設定の防止に有効である。
また、デバイスにデフォルトの動作手順記述を持たせ、統括制御手段から動作手順記述が送られてこないときは、デフォルトの動作手順記述を実行するとよい。これにより、最低限の処置を継続して実行でき、応急処置が可能になる。
また、使用者を認証する認証手段を設け、統括制御手段で複数の使用者に対するデバイス使用の優先権を設定するとよい。これによって、複数の術者によって作業を確実に分担でき、高度な手術を行うことができる。また、認証手段を設けることにより、統括制御手段において使用者を自動的に判断して、その使用者専用の動作手順記述をデバイスに設定することができる。
また、使用者を認証する認証手段を設け、統括制御手段で複数の使用者がデバイスの使用に関して有する優先権を判定し、優先権の一番高い使用者に用意された動作手順記述をデバイスに送るようにするとよい。これによって、デバイスの動作が使用者にとって扱いやすいものとなる。
また、症例に対してデフォルトのデバイス構成に関する情報を有し、実際に設定されたデバイスの構成との差異を提示する手段を備えるとよい。これにより、デバイスの構成の誤りを発見しやすくなるとともに、通常のデバイス構成に関して情報を提供することによって術者を支援できる。
【０００６】
【発明の実施の形態】
図１に本発明に係る一実施例の構成を示す。
【０００７】
図中において、１０１はディスプレイ，モニタ装置，スピーカ等の機器を含んで術者に臨場感を与える臨場感制御情報生成手段、１０２はメス，光ファイバレーザ，生理食塩水注入用パイプ等の治療器具（ツール）を含むスレーブマニピュレータからなる患部組織操作手段、１０３はマスタ・スレーブマニピュレータの制御装置となる操作指令生成手段、１０４は力覚センサ，近接覚センサ，視覚センサ（撮像手段、テレビカメラ）等の作業環境情報検出手段、１１７はＭＲＩ，ＣＴ，超音波スキャナ等を含んで構成される生体内部情報計測手段、１１８は画像処理用の計算機で構成される計測情報処理手段、１１９は生体内部計測用入力信号、１２０は生体内部を透過または反射した出力信号、１２１は生体内部の計測情報、１２２は三次元再構成等視覚化された生体内部情報、１２３は患部組織操作手段によって行われる操作、１２４は作業環境情報検出手段の一部である各種センサによる検出データ、１２５は患部、１０５は力覚センサ情報、１０６は近接覚センサ情報、１０７は視覚センサ情報、１０８は仮想反力情報、１０９は合成加工画像、１１０は仮想音場、１１１は操作指令情報、１１２は合成反力、１１３は動作指令、１１４は動作指令入力手段、１１５はスレーブマニピュレータ位置情報、１１６は拡大倍率情報、１２６は上記各手段（デバイス）を統括して制御する統括制御手段（各デバイスに対する上位の制御装置）、１２７はＩＣカードリーダ等の入力装置を含むユーザ認証手段、１２８はネットワーク或いは専用の通信回線等によって構成される伝送経路、１２９は例えば磁気ディスク装置のような記憶手段で構成される動作手順記述保持手段を表す。
【０００８】
作業環境情報検出手段１０４はそのセンサ部分を患部組織操作手段１０２の構成要素であるスレーブマニピュレータ先端および周辺に持ち、視覚センサと上記マニピュレータ先端の力覚センサおよび近接覚センサをもって患部とその周辺環境を検出する。
【０００９】
臨場感制御情報生成手段１０１は作業環境情報検出手段１０４の検出した情報と計測情報処理手段１１８の出力した生体内部の三次元再構成画像情報とスレーブマニピュレータ位置情報１１５を加工・合成し画像と音および仮想反力を生成する。これをもって患部の状態が１人以上の術者に示される。
【００１０】
力覚センサおよび近接覚センサの情報は操作指令生成手段１０３にも伝達される。力覚センサにより検出された実際の反力は各術者の感じることのできるレンジに変換される。
【００１１】
臨場感制御情報生成手段１０１で生成された仮想反力はレンジ変換された実反力および自分以外の術者の操作力を加え合わせられ、動作指令入力手段１１４を介して各術者に伝えられる。各術者は臨場感制御情報生成手段１０１の示した情報をもとに動作指令入力手段１１４を介して患部組織操作手段１０２に対する動作指令を入力する。入力された動作指令は操作指令生成手段１０２によって操作指令情報１１１に変換される。患部組織操作手段は拡大倍率情報１１６をパラメータとして操作指令情報１１１を解釈実行し患部組織を操作する。
【００１２】
このとき同時に生体内部情報計測手段１１７が一定時間ごとに計測用信号を患部１２５に向かって入力しそこから透過または反射した出力信号を捉える。この信号はディジタル化され計測情報として計測情報処理手段１１８へ送られる。
【００１３】
計測情報処理手段１１８は一定時間ごとに得られる計測情報に演算を加えその結果を三次元画像情報として再構成する。
【００１４】
統括制御手段１２６は上記各手段に対して現在のユーザおよび各手段の具体的な構成を把握し、必要な動作手順記述（以下プログラム）を配信した後各手段の動作状況を監視する。各手段における構成の変化（装置やツールの交換，追加，除去）を検出した場合は、各手段から通知される認識番号（以下デバイスＩＤ）に従い、管理のための情報（以下デバイステーブル）を更新する。またユーザの変化（新規使用開始，使用終了等）を検知した場合は、ユーザ固有の使用環境を整えるために、現在デバイステーブルに登録されている各デバイスに対してプログラムの再配信を行う。あるいはユーザによって各手段からその作業内容の変化を通知された時も上記のようなプログラムの再配信を行う。ここにはまたデフォルトのユーザテーブルとデバイステーブルおよび各手段に対するデフォルトのプログラムが用意されており、特定のユーザが使用していない場合もしくはユーザ認証が何らかの理由で失敗した時、動作手順記述保持手段からの情報の取り出しに失敗した時はこのデフォルトの各テーブルとプログラムを用いて各手段の設定および管理が行われる。このデフォルトのプログラムを用いることにより、最低限の動作を補償し、応急処置を可能にする。
【００１５】
ユーザはユーザ認証手段１２７を介して自分がこの装置を使用することを宣言する。統括制御手段はユーザ管理のための情報（以下、ユーザテーブル）にユーザの識別子（以下、ユーザＩＤ）を登録する。この場合、ユーザは一人とは限らず複数のユーザが装置の各手段を共通に或いは分割して使用することができる。
【００１６】
伝送経路１２８は統括制御手段と他の各手段を結び必要な情報を伝送するための媒体である。これはＩＥＥＥ１０７３，ＩＥＥＥ１０１４などの割込線を含めた計算機のバス規格や、ＩＥＥＥ８０２，３に規定されたＣＳＭＡ／ＣＤ方式に代表される計算機ネットワークによって実現される。あるいは工業用の小規模ネットワーク、例えばＩＳＯ１１８９８などの規格に基づくものよっても実装可能である。
【００１７】
動作手順記述保持手段１２９には上記のプログラムとユーザ登録簿が格納されている。
【００１８】
次に図２を用いて各手段の基本構成を説明する。図中下部の大きな矩形２００が各手段を表す。
【００１９】
２０１は動作手順記述解釈実行手段、２０２は動作手順記述記録・保持手段、２０３はデフォルト動作手順記述保持手段、２０４は各手段の機構部、２０５は内部伝送経路を表す。上記２０１〜２０５の具体的な実装としては２０１がマイクロプロセッサ、２０２がスタティックＲＡＭ、２０３がＲＯＭといったものが考えられる。また２０４はマスタ・スレーブマニピュレータ機構部，各種画像計測装置（ＭＲＩ，ＣＴ，超音波スキャナ，ｅｔｃ．），画像処理装置，画像・音声等提示装置およびその提示内容を生成もしくは合成する光学映像・再構成画像合成装置，センサデータモダリティ変換装置，仮想音場生成装置，テレビカメラ，力センサ，近接覚センサ等の作業環境情報検出装置，動作入力部からの動作指令解釈・変換装置などを指す。２０５はアドレスおよびデータバスを指す。また２０１と２０４の間は往々にして外部バスと称されるものによって接続される。それは例えば仕様の公開されたバスでもよいし、独自の仕様で実装してもよい。
【００２０】
図２のＲＯＭ２０３のメモリマップの例を図３に示す．ＲＯＭにはアドレスの低い方から例外ベクタ，後述のデバイスＩＤ上部，ＩＰＬ，およびデフォルト動作プログラムが格納されている。例外ベクタとは当該手段においてプログラム実行中に例外が生じた場合その例外の種類に応じた処理を記述してあるアドレスのテーブルである。通常プロセッサのリセットも例外とされ、立ち上げ時の動作プログラムの先頭番地がこのベクタの先頭に記録されている。この場合は上記のＩＰＬの先頭番地がこれにあたる。デバイスＩＤとは各手段における実際に使用されているデバイスの識別を行うための識別子もしくは識別番号である。ここで上位としている部分にはデバイスのクラスを識別するための情報が記録されている。例えば操作用マニピュレータが１番，画像計測装置が２番，操作入力装置が３番という具合に番号付けがされている。これはもちろん識別のためであるので番号でなく名前等で表現されていてもよい。なおクラスと表現したのは操作用マニピュレータや画像計測装置などにも様々な種類があるためである。実際に唯一のデバイスを識別するために、デバイスＩＤの中位および下位にツールの種類および作業の種類を示す識別子が別のところから獲得され、これらをまとめたものがある手段のデバイスＩＤとして統括制御手段に通知される。中位，下位のＩＤおよびその獲得方法、統括制御手段への通知手順に関しては後述する。上記のようにリセットの際に実行されるのがＩＰＬ（ｉｎｔｉａｌ  ｐｒｏｇｒａｍ  ｌｏａｄｅｒ）である。ＩＰＬには統括制御手段との通信および動作プログラムの獲得手順を記述したプログラムが格納されている。各手段は何らかの理由で起動もしくは再起動した場合に、このＩＰＬの記述に従って必要な手順を実行する。デフォルト動作プログラムは立ち上げ時に各手段が何らかの理由（伝送経路の不具合，統括制御手段の故障など）で統括制御手段との通信を行うことに失敗した場合に用いられる。後述のように動作プログラムの獲得に失敗した場合はこの部分のプログラムが実行され、各手段はとりあえず単体としての機能を保証する。
【００２１】
図２中のＲＡＭのメモリマップの例は図４のようになる。ＲＡＭ２０２中にはＩＰＬ実行中に獲得された動作プログラムが格納され、その先頭から実行される。またプログラム実行に際して必要な作業領域もこの中に確保される。このＲＡＭは不揮発なものを用いるため、例えば電源切断後の再起動時においてもプログラム動作時のメモリアロケーションを常に同じアドレスに行うなどのトレース可能な方法で行っていれば再起動前の作業中のデータ等を再利用することが可能である。
【００２２】
次に統括制御手段の動作手順を図５を用いて説明する。
【００２３】
統括制御手段の実装例としてはマルチユーザとリアルタイムマルチプロセスをサポートするオペレーティングシステム（以下ＯＳ）を利用するのが簡単である。まず電源投入もしくはリセットによって当該手段中のＯＳが起動する（ステップ５０１）。次にユーザ認証プロセス，システムコンフィギュレーションプロセス，スナップショットプロセスを生成・実行する（ステップ５０２）。ステップ５０２において各手段との通信を行い所要のデータを得た後、ユーザテーブルおよびデバイステーブルを管理するテーブル管理プロセスを起動する（ステップ５０３）。さらに各手段の動作状況を監視するウオッチドッグプロセスを起動し、これをタイマ割り込みによって周期的に実行する（ステップ５０４）。これら一連の手順は立ち上げ時に実行されるファイル中に記述されており自動実行される。ユーザテーブルおよびデバイステーブルは共有メモリ中に置かれ、そこに接続した全てのプロセスが参照できる。ただし書き込むことのできるのは後述のテーブル管理プロセスのみである。他プロセスの書き込みの禁止はＯＳが介在することによって実現可能である。
【００２４】
図６はユーザ認証プロセスの動作手順を示している。
【００２５】
該プロセスは通常はユーザ認証を促すメッセージを提示しながらユーザ認証手段中の入力装置からの割り込みを待っている（ステップ６０１）。入力装置としてはキーボード，マウス，あるいはＩＣカードリーダなど、あるいは指紋読み取り装置，声紋分析装置，網膜パターン撮像装置が考えられる。また認証のために入力する情報としては、キーボードから入力される文字列，ユーザ本人のみが知る情報に関する質問にマウスで答える形態のもの，ＩＣカードに記録されたユーザ識別子，本人の指紋，声紋，撮像された網膜パターンなどのいずれか１つ以上のものを用いる。ステップ６０１実行中に割り込みがあるとプログラムは状態遷移し、入力受付を開始する（ステップ６０２）。上記の方法でユーザ認証のための情報を得た後、登録されているユーザ登録簿を用いて照会を行い（ステップ６０３）、これが成功した場合はテーブル管理プロセスに認証が成功した旨とユーザ名を通知する（ステップ６０５）。各種情報のプロセス間の通知は共有メモリまたばパイプを通じて行われる。共有メモリとは複数のプロセスから参照できるメモリ領域のことであり、パイプとはあるプロセスから別のプロセスへ情報を送るために用いられる機構のことである。これらの機構はＯＳによって提供される。以下は図示していないが、テーブル管理プロセスはこれを受けてユーザテーブルを更新する。ユーザ管理テーブルの更新に伴ってデバイステーブルも更新される。使用中のユーザに関して変更があった場合は自動的に各デバイスに関する情報も更新される。
【００２６】
次に図７を用いて各手段のコンフィギュレーションリクエスト時の統括制御手段のシステムコンフィギュレーションプロセスの動作を説明する．
統括制御手段側のシステムコンフィギュレーションプロセスは各手段からの割り込みによるコンフィギュレーションリクエストを待っている（ステップ７０８）。割り込みは統括制御手段と各手段が前記の各種バスで結合されていれば割り込み信号線によって通知される。ネットワークで結合されている場合はポート番号を指定したソケット通信によって実現される。そこへ各手段のいずれかからリクエストが送られてくる（ステップ７０１）。各手段がリクエストを行うのは電源投入（起動），リセット，ツールの交換，作業内容の変更のうちいずれかの事象が生じた時である。これについては後述する。割り込みによりシステムコンフィギュレーションプロセスはステップ７０８からステップ７０９へと状態遷移し、リクエストに対する処理を行う子プロセスを生成・起動する（ステップ７０９）。ここで子プロセスを生成起動するのはまた別の各手段からのコンフィギュレーションリクエストが来た場合に対応できるようにするためである。リクエストの送り元は統括制御手段からの割り込みによるアクノリッジ（リクエストに対する承認）を待つ（ステップ７０２）。ここで一定時間内に割り込みがないと（ステップ７０３）、各手段は統括制御手段に不具合が生じたものと判断し、自分が持っているデフォルトの動作プログラムを実行する（ステップ７１６）。統括制御手段側では生成起動された該子プロセスからのアクノリッジを割り込みによって通知する（ステップ７１０）と、各手段からのデバイスＩＤの通知を待つ（ステップ７１１）。割り込みによりアクノリッジを受けたリクエストの送り元は割り込みによってデバイスＩＤの通知を行い（ステップ７０４）、統括制御手段からの動作プログラムの配信を待つ（ステップ７０５）。このとき一定時間内に割り込みを介したプログラム配信が行われないと、リクエスト元は自分の持つデフォルトの動作プログラムを実行する（ステップ７１６）。デバイスＩＤの通知を待つ該子プロセスは一定時間内に割り込みによってデバイスＩＤが知らされないとそのままプロセスを終了する（ステップ７１５）。この場合はデバイステーブルは更新されない。リクエスト元からの割り込みによるデバイスＩＤの通知があると、該子プロセスは通知されたデバイスＩＤとそのデバイスを現在使用できるユーザのユーザＩＤに基づいて選択された動作プログラムを動作手順記述保持手段１２９から読み出し（１２９からの情報の獲得が何らかの理由で失敗した時には統括制御手段中から）、これを割り込みを介してリクエスト元に配信する（ステップ７１３）。リクエスト元はこれを受けて動作プログラムを受信し作業手順記述記録・保持手段２０２に記録した後これを実行する（ステップ７０７）。該子プロセスは新しいデバイスＩＤを前述の共有メモリ等の方法でテーブル管理プロセスに通知する（ステップ７１４）。図示はしていないが通知の際にはシグナルを送り、情報が送られたことを気づかせる。シグナルとはプロセスの間でやりとりされる信号であり、ＯＳの介在によりこの機構が実現している。以上を行った後該子プロセスは終了し姿を消す（ステップ７１５）。上記のようにリクエストが来た数だけ子プロセスが生成されるので、非同期に複数のリクエストが各地から送られても対応できる。
【００２７】
次に図８を用いて統括制御手段のウオッチドッグプロセスと、それに対応した各手段の側でのプログラムの動作を説明する。
【００２８】
該プロセスはタイマ割り込みにより周期的起動され実行される（ステップ８０５）。次に共有メモリ上のデバイステーブルの先頭のブロック（後述）から参照を始める（ステップ８０６）。現在参照しているブロックに登録されたデバイス（各手段のうちのいずれか）に割り込みを介してウオッチドッグ信号を送る（ステップ８０８）。一方当該デバイスは統括制御手段からの割り込みを待つ（ステップ８０１）が、一定時間内にウオッチドッグ割り込みがない場合は統括制御手段に不具合が生じたと判断し、自分の持っているデフォルトの動作プログラムに切り替える（ステップ８０４）。そうでない場合はウオッチドッグ信号に対してアクノリッジ（ウオッチドッグに対する返事）を割り込みを介して送る（ステップ８０３）。該プロセスはウォッチドッグ信号を送った後デバイスからのアクノリッジを待つ（ステップ８０９）が、一定時間内に割り込みがない場合はそのデバイスが何らかの理由で消滅したと判断し、そのデバイスのブロックをデバイステーブルから削除するようテーブル管理プロセスに通知する（ステップ８１２）。この場合の通知も前記のシグナルによって行われる。アクノリッジが返ってきた場合はそのデバイスは存在して稼働中であると判断し、次のデバイスが登録されているブロックを参照する（ステップ８１１）。デバイステーブルにおいてはデバイスを登録してあるブロックが線形リストを形成しており、あるブロックの中には次のブロックへのポインタ（メモリ上のアドレス）が格納されている。最後のブロック中の次ブロックへのポインタはＮＵＬＬすなわち何も指さないようにする。ユーザテーブルも同様の構造をしている。これらについては後述する。上記のようにポインタがＮＵＬＬにならない間は各デバイスに対して信号の送付と返事待ちを繰り返す。線形リストの最後まで参照し終わったら、該プロセスは次のタイマ割り込みによる起動まで休止する（ステップ８１３）。以上の動作手順によって各デバイスの稼働状態を常に監視し、変化が起こった場合は直ちにテーブルを更新することができる。
【００２９】
次に図９を用いてスナップショットプロセスの動作手順を説明する。
【００３０】
これは統括制御手段が各手段の状態を保存する機能を実現したものであり、例えば各手段のいずれかにおいてユーザが使用中に変更した環境設定情報があった場合にはこれを保存する。統括制御手段側のスナップショットプロセスは各手段からの割り込みによるスナップショットリクエストを待っている（ステップ９０８）。割り込みは統括制御手段と各手段が前記の各種バスで結合されていれば割り込み信号線によって通知される。ネットワークで結合されている場合はポート番号を指定したソケット通信によって実現される。そこへ各手段のいずれかからリクエストが送られてくる（ステップ９０１）。リクエストのタイミングはユーザからスナップショットの要求のあった時、一定時間間隔ごと、のいずれか一方、または両方である。割り込みによりスナップショットプロセスはステップ９０８からステップ９０９へと状態遷移し、リクエストに対する処理を行う子プロセスを生成・起動する（ステップ９０９）。ここで子プロセスを生成起動するのは、また別の各手段からのスナップショットリクエストが来た場合に対応できるようにするためである。リクエストの送り元は統括制御手段からの割り込みによるアクノリッジ（リクエストに対する承認）を待つ（ステップ９０２）。ここで一定時間内に割り込みがないと（ステップ９０３）各手段は統括制御手段に不具合が生じたものと判断し、処理を中断する（ステップ９１６）。統括制御手段側では生成起動された該子プロセスからのアクノリッジを割り込みによって通知する（ステップ９１０）と、各手段からのデバイスＩＤの通知を待つ（ステップ９１１）。割り込みによりアクノリッジを受けたリクエストの送り元は割り込みによってデバイスＩＤの通知を行い（ステップ９０４）、統括制御手段からのアクノリッジ通知割り込みを待つ（ステップ９０５）。このとき一定時間内に割り込みを介したアクノリッジ通知が行われないと、リクエスト元は処理を中断する（ステップ９１６）。一方デバイスＩＤの通知を待つ該子プロセスは一定時間内に割り込みによってデバイスＩＤが知らされないとそのままプロセスを終了する（ステップ９１５）。この場合は環境設定情報は更新されない。リクエスト元からの割り込みによるデバイスＩＤの通知があると該子プロセスは割り込みを通じて該当するデバイスに再びアクノリッジを送る（ステップ９１３）。リクエスト元はこれを受けてユーザによって変更された環境設定情報を送る（ステップ９０７）。該子プロセスは送られた環境設定情報を動作手順記述保持手段に格納する（ステップ９１４）。以上を行った後該子プロセスは終了し姿を消す（ステップ９１５）。図示はしていないが該情報はデバイスＩＤとユーザＩＤによるタグ付けがされ、次回以降は動作手順記述すなわち配信されるプログラムの一部として扱われる。上記のようにリクエストが来た数だけ子プロセスが生成されるので非同期に複数のリクエストが各地から送られても対応できる。
【００３１】
次に図１０を用いてデバイステーブル，ユーザテーブルとその周辺のデータ構造を説明する。
【００３２】
１００１はテーブルポインタブロック、１００２はデフォルトユーザテーブル、１００３はデフォルトデバイステーブル、１００４はユーザテーブル、１００５はデバイステーブル、１００６はユーザ制御ブロック、１００７はデバイス制御ブロックをそれぞれ表す。これらに使用するデータ領域はテーブル管理プロセスによって統括制御手段のメモリ中に動的に確保される（図示せず）。各テーブルは前述のように線形リストを形成しており、そのブロック内に次のブロックのアドレスが記されている。リストへのブロックの追加・削除等の操作はプログラムにおけるメモリ確保／解放とポインタ操作で実現できる。ポインタ操作に関してはここでは詳しくは説明しない。ユーザ制御ブロック１００６は図１１に示すようなデータ構造を持っている。１つのブロックの中にはユーザＩＤ，そのユーザのシステム全体に対する操作の権利を示すパーミッション，現在使用しているデバイス制御ブロックのデータが納められたファイルの識別子を記録してある使用デバイスレコード名，使用可能デバイスレコード名，現在の対象症例からなり、ブロックの最後には次のブロックへのポインタである次ポインタを記録する領域がある。またデバイス制御ブロック１００７の１ブロック中にはデバイスＩＤ，そのデバイスを使用中のユーザ名，そのデバイスで実行中の動作プログラムのファイル識別子である使用中コードレコード名，そのデバイスの使用状態（使用中，使用待ち，休止中）を記録する領域，そして最後には次のブロックへのポインタである次ポインタを記録する領域がある。
【００３３】
次に図１２を用いて各手段におけるデバイスＩＤの中位部分を獲得する方法の例を説明する。ここでは操作用マニピュレータの先端ツールの交換を例に示す。
【００３４】
１２０１はＰＩＯ、１２０２はＣＰＵに至るバス、１２０３はプルアップ抵抗、１２０４は基準電位点（グランド）、１２０５はマニピュレータ先端、１２０６は先端に取り付けるツール、１２０７は出っ張り、１２０８は切り欠き、１２０９〜１２１２はツールの嵌合部内壁の結線パターンであり、１２０９はパターン１、１２１０はパターン２、１２１１はパターン３、１２１２はパターン４、１２１３はマニピュレータ先端の別の配線パターン、１２１４はツールの嵌合部内壁の別の配線であり、１２１５〜１２１８は１２１４の配線に対する結線パターンであり、１２１５は１２１４に対するパターン１、１２１６は１２１４に対するパターン２、１２１７は１２１４に対するパターン３、１２１８は１２１４に対するパターン４、を表す。プルアップ抵抗１２０３の一端は５［Ｖ］の電位が与えられ、他端は導線を通じてマニピュレータの先端へ導かれている。導線は先端の四角いパッドの部分を除いて被覆されている。導線のうちの１本はグランド１２０４に通じている。ツール１２０６は出っ張り１２０７と切り欠き１２０８によって常に正しい向きでのみ嵌合可能である。ツール側の嵌合部内壁には５［Ｖ］およびグランドの間が様々なパターンで導通するように結線がされている。こちら側の結線も四角いパッド部分を除いて被覆絶縁されている。ここでは２ビットのパターンで４通りの識別が可能な例を示している。例えば１２０９のように右２つのパッドを結線すると、ツールを嵌合した際にはプルアップされている線の右側のみがグランドに接続されるため、左右のプルアップ線の電位のパターンをＰＩＯ１２０２を用いて読むと１０というパターンになる。同様に１２１０ならば０１、１２１１ならば１１となる。１２１２は特殊パターンであり、これが接続された時はツールが嵌合されていない状態と等しい。よってこのパターンの配線されたダミーツールを嵌合しておくとツールを引き抜いたのと同じ状態と見倣されるため、このマニピュレータは使用されないものと認識させることができる。何らかの理由で嵌合のための出っ張りや切り欠きをつけられない場合はマニピュレータ先端の配線を１２１３のように、またツール内壁の配線を配線を１２１４のようにし、これらの配線間の結線を１２１５〜１２１８のようにすれば上記と同じようなビットパターンを作り出すことができる。さらにこの場合は奥まで嵌合しさえすればある程度の回転マニピュレータ先端の配線と常に接触することになるので回転方向の位置決めは問題にならない。なお以上の例では各配線の電位によってビットパターンを作り出しそれをデバイスＩＤの中位として用いたが、これは他の方法例えば光ファイバと導波路の組み合わせや流体回路で実現することもできる。
【００３５】
次に図１３を用いてデバイスＩＤの下位識別子を得る方法の例を説明する。
【００３６】
該下位識別子は各手段における作業内容を表現するために用いられる。図中では動作指令入力手段１１４を介して操作用マニピュレータの作業内容を指定する例を示している。１３０１は作業内容指定スイッチ群、１３０２はロック指定スイッチ、１３０３は接触作業指定スイッチ、１３０４は位置決め作業指定スイッチ、１３０５はスイッチの状態を検出するためのＰＩＯである。作業の種類は位置と力のハイブリッド作業などこの他にもさまざまなものが考えられるが、例としての説明を簡単にするために図示はしない。動作指令手段の筒状の可動部の上には上記１３０２〜１３０４のスイッチがある。該動作指令入力手段の使用者は行う作業に応じて上記のスイッチを切り替える。このスイッチはいずれか１つのみ押下しておくことができ、別のスイッチが押下されたときには前のスイッチは元に戻るような構造になっている。どのスイッチが押下されているかは図１２で示したのと同様の方法によるものとする。すなわちプルアップされているラインとそうでないラインをＰＩＯによって検出する他の方法である。ここで検出された作業内容の種類は各手段において記憶されると共に、前述の上位，中位識別子と組み合わされて１つのデバイスＩＤとなり、統括制御手段へと通知される。図１４はデバイスＩＤのデータ構造の例である。この場合はあるビット幅のデータによってデバイスＩＤが表現されている。１４０１はデバイスのクラス、１４０２はツールの種類、１４０３は作業内容をそれぞれ表現する。既に説明したようにデバイスのクラスとはそのデバイスの大まかなカテゴリを表している。各位のビット幅はクラスの種類，ツールの種類，作業内容の種類を表現するのに足るだけ用意する。例えばクラスの種類が１６以内なら１４０１に必要なビット幅は４である。ツールの種類を表現するのに必要なビット幅は各クラスにおけるツールの種類の数のうち最大のものが表現できればよい。例えば操作用マニピュレータのツールの種類が７つあり、これがすべてのツールの中で最大の個数だったとすると、ツール種類を表現するビット幅は高々３ビットあればよい。作業内容の表現に関しては、あるクラスであるツールを用いた時の作業内容の種類の最大値が表現できれば十分であるので、例えば操作用マニピュレータで鉗子ツールを用いた時の作業の種類が前記１３０２〜１３０４の３種類であるとし、これが全ての組み合わせの中で最大だとすれば、必要なビット幅は高々２ビットに過ぎない。以上よりデバイスＩＤの表現に必要な総ビット幅は高々９ビットであり非常に小さい。実際にはクラス，ツール，作業内容の追加が考えられるので各ビット幅には余裕を持たせることを考えるが、１ビット増やすだけで２倍の種類を表現できるので、デバイスＩＤ自体を表現するビット幅の変化は小さい。なお上記のスイッチは例えばフットスイッチや声，ジェスチャ等で切り替える形式のものでもよい。
【００３７】
次にある手段におけるツールもしくは作業内容の変更によって再配信される動作プログラムの例を図１５，図１６，数式１および数式２を用いて説明する。
【００３８】
以下に説明するのは操作用マニピュレータにおいて、作業内容が前記の方法によって変更通知された場合の例を示している。変更前の作業内容は位置決めであり、生理食塩水注入用のパイプの先端位置姿勢あるいは焼断用の光ファイバレーザの先端位置姿勢を制御していたものとする。次に鉗子による組織除去を行うためにツールの交換および作業内容指定スイッチの切り替えを行ったとする。図１５は位置決め時の先端位置決め制御のアルゴリズムを示す制御系である。位置決め制御の手法は様々であるが、ここでは代表的なものとしてＰＩＤ制御系を例に挙げて説明を行う。制御系は関節座標もしくは作業座標において構成される。１５０１は位置指令値ｘｒであり通常の場合動作入力指令手段から与えられる。１５０２〜１５０４は補償器の構成要素である。１５０２は補償器中の積分要素、１５０３は比例要素、１５０４は微分要素である。１５０５〜１５０７は偏差ｅ＝ｘｒ−ｘを各要素に与えて得られたものであり、これらの総和が制御入力ｕとなる。１５０８は制御対象の伝達関数を示すものであり、上記のｕが入力される。１５０９はｕが入力された結果の制御対象Ｐ（ｓ）の位置応答である。以上の制御系を実装する方法は様々であるが、そのひとつとして制御系を離散化しプログラム中で演算の形で手順を記述するやり方がある。図１５の制御系を離散化して式で記述したものが数式１の（１）〜（５）である。
【００３９】
【数１】
0003582348.tif 000002
【００４０】
ｋ番目のサンプル時刻ｔｋにおいて目標位置と応答との偏差ｅ（ｔｋ）は（１）で表される。これを図１５の各要素に与え、補償量ｕＩ，ｕＰ，ｕＤを得る際の作用を離散化表現したものが式（２）〜（４）であり、該時刻における制御入力ｕ（ｔｋ）はそれらの総和となる。
【００４１】
次にツール交換および作業内容の変更通知によって接触作業を行う上で必要な制御アルゴリズムを記述した動作プログラムが配信され、これが実行される。図１６はマニピュレータの接触作業における典型的な力制御系の例を示している．１６０１は力の指令値、１６０２はマニピュレータ先端において検出される力、１６０３は慣性を表現する積分要素、１６０８は粘性および剛性を表現する要素、１６０４はマニピュレータ先端において望ましい力を発生するための速度指令値、１６０５は与えられた速度指令値を制御対象において実現するための補償器、１６０６は制御対象、１６０７は制御対象の位置応答である。力制御系の一般的な数式モデルは数２の（６）のように表される。
【００４２】
【数２】
0003582348.tif 000003
【００４３】
（６）を変形して（７）に示すように速度指令を得る。これを離散化し時刻ｔｋにおける速度指令を与える式（８）を得る。再配信された動作プログラム中には（８）を表現する演算が記述されている。これによって使用者はプログラムの変更を自分で行うことなく、またその変更を意識することもないままで、ツール交換前には位置決め作業を行っていたマニピュレータを用いて接触作業を行うことができる。こういった作業内容の変化には単に制御系のパラメータ変更では対処しきれず、制御アルゴリズム等動作プログラム自体の変更が必要である。アルゴリズムを選択できるようにプログラム中で記述した場合はプログラムサイズが大きくなり、これを実行するための資源（メモリ，ディスク）などをより多く必要とすることになるためコストが上がる。またプログラムにないアルゴリズムを使用することはできないし、アルゴリズムの改善も望めない。一方本明細書に記載したようにプログラムを各手段の外部から配信するような機構であれば必要に応じたアルゴリズムを記述した動作プログラムもしくは同じアルゴリズムでも細部に改善の施されたものを利用できるため、各手段は常にその時点における最高の性能を発揮することができる。
【００４４】
次に図１７を用いてユーザ登録簿と各種の表データの関係の例を説明する。
【００４５】
１７０１はユーザ登録簿，１７０２はユーザＡに関する対象症例と使用デバイスＩＤの対応表、１７０３はユーザＡに使用が許可されているデバイス一覧表、１７０４はユーザＡの使用可能デバイスに関する操作優先度、１７０５はデバイスＩＤ＝０００１００１０００ｂに関するユーザと対象症例および配信プログラムの対応表をそれぞれ表す。これらの情報は動作手順記述保持手段に納められている、またバックアップとして統括制御手段中にも保持されている。これら二者はシステム動作中にスナップショットを取った時に前者のみが更新されることで異なったものになる。後者はシステム起動時に前者からコピーされ更新されるがシステムが起動している間は更新されない。ユーザ登録簿１７０１は登録されたユーザに関する情報を記録してあるものである。各ユーザおよびデフォルトユーザに対して症例−使用デバイスＩＤ対応表，使用可能デバイスＩＤ一覧表（この場合の可能とは使用する権限があるという意味である），使用可能デバイスＩＤ毎の優先度の記録されているファイル名が記されている。優先度とはあるユーザがあるデバイスに対してどれほどの優先度を以て使用できるかを示したものである。使用中の複数のユーザに対して使用可能デバイスが重複している場合は優先度の高い方が操作する権限を有する。１７０２はユーザＡに関する症例−使用デバイスＩＤ対応表の例である。
【００４６】
症例ごとに使用するデバイスのＩＤが記録されている。また１７０３はユーザＡの使用可能デバイス一覧表である。ユーザＡの使用可能なデバイスＩＤが記録されている。１７０２の各症例に対する使用デバイスは１７０３の中に含まれていなければならない。１７０４には１７０３に記された使用可能デバイスＩＤの各々に対する優先度が記録されている。１７０５はあるデバイスＩＤのデバイスに対して症例とユーザの組み合わせて配信するプログラムを決定するための表が格納されている。１７０５中の１−１，１−２などの番号は配信されるプログラムのファイル名である。動作手順記述手段は必ずしも１つの計算機，１つのファイルシステムの下でまとまっている必要はない。よってファイル名もここではマシン名とディレクトリの情報を付加したものになっていてもよい。ファイル名は統括制御手段は以上の情報をデータベースとして保持し、必要に応じてこれを更新したり、内容の一貫性を確保したりする操作を行う。図１１の１００６中のパーミッションにあたるのがデバイス毎優先度１７０４、もしくはこれを指し示すもの（ファイル名など）である。使用デバイスレコード名には１７０２のファイル名が記され現在の対象症例に応じたデバイスＩＤのリストが得られる。これによってデバイステーブルのデバイス制御ブロック１００７をリスト中のデバイスＩＤの数だけ生成する。デバイスＩＤフィールドにはデバイスＩＤを、使用中ユーザ名にはユーザＩＤを記録する。使用中コードレコード名は使用中ユーザ名からユーザ制御ブロックを参照し、その中の対象症例と上記ユーザ名およびデバイスＩＤから１７０５を参照することによって得られる。使用可能デバイスレコード名には１７０３のファイル名が記されている。症例と使用デバイスＩＤの対応は現状追認型であり、ユーザが手術の途中でデバイスの追加，交換，撤去を行った場合は各手段からスナップショットリクエストが統括制御手段に送られ、テーブル管理プロセスはその情報を以て１７０２を更新する。なお図１７の各データベースの内容については内容の変更は別途行えるものとし、システムの管理者のみがデータベースの変更権限をもつものとする。但しシステム管理者がユーザの一人であってもよい。これは統括制御手段上で動作しているＯＳのファイル管理機能（アクセス権限の設定）によって実現される。但し上記のように対応表１７０２のみはユーザが術中に変更した構成を反映するように自動的にあるいは後述のようにユーザの指示の下にデータベースが更新される。
【００４７】
次に図１８および図１９を用いてテーブル管理プロセスの動作手順を説明する。
【００４８】
該プロセスは動作手順記述保持手段からデフォルトのテーブル情報が読み出せることを確認し（ステップ１８０１）、読み出し可能であればデフォルトのテーブル生成に必要な情報を動作手順記述手段１２９からメモリ上に複写する（ステップ１８０２）。このときは使用中ユーザはテーブル生成のためのデータベース参照には利用されないが、実際上デフォルトのテーブルとユーザ固有のテーブルにそれほど大きな違いが生ずることはないので、後述の修正時にもそれほど情報の新規参照は起こらない。動作手順記述手段１２９もしくは伝送経路１２８の不具合等何らかの理由で１２９のデータベースを参照できない場合は統括制御手段中のバックアップの情報を読み出す（ステップ１８０３）。次にデバイスのコンフィギュレーション完了を待つ（ステップ１８０４，ステップ１８０５）。次に使用中のユーザを調べ（ステップ１８０６）誰も使用していなければデフォルトのユーザを設定する（ステップ１８０７）。次にこのユーザＩＤ（使用中ユーザＩＤもしくはデフォルトユーザＩＤ）に基づいたデータベースの再参照を行い、先ほど生成されたデバイステーブルを修正するとともにユーザテーブルを生成または更新する（ステップ１８０８）。さらに現在のコンフィギュレーション（システムに存在するデバイスＩＤのリスト）とユーザの求めるコンフィギュレーション（使用デバイスＩＤのリスト。ユーザが認証された直後では症例はデフォルト。後述のメニューで症例を指定してあればその症例に対応するデバイスＩＤのリスト）との差異を通知する（ステップ１９０１）。ただしシステム側はこの差異を解消する動作はせず、ユーザにその扱いを委ねるものとする。あるユーザがある症例に使用するはずのデバイスのうちのいくつかが現在のシステムに存在しない場合に勝手にデバイスの追加やあるいはそれらの存在しないデバイスのＩＤをリストから削除するなどということはしない。あくまでもユーザが差異を解消する行動を術中に行うものとする。一例としては、腹腔内手術に腹壁吊り上げ装置を用いる術式を好む外科医が手術装置を使用して手術を行おうとした際に、実際に今使おうとしている手術装置の構成要素として腹壁吊り上げ用マニピュレータが接続されていないことを統括制御手段がその外科医に対して知らせるという場合が考えられる。前記の事実を知らされることにより、外科医はこの問題を解決する行動を即座に取ることができる。即ち、どこからか該マニピュレータを手配して手術装置に接続することである。接続された該マニピュレータは前記の手順により即座に認識された後、使用者である外科医に依存した動作プログラムの配信を受け、使用可能となる。また場合によっては手術の現場に該マニピュレータを手配することができないことも起こり得る。外科医はその場合これをなしで済ますかあるいは手術自体を中止するかの判断を自分で下し、なしで済ます場合はこれを統括制御手段に指示する。統括制御手段はこれを受けて初めてデバイスＩＤのリストから当該デバイスの情報が格納されているブロックを削除する。システム自体はデバイスを実際に持ってきて物理的に接続するという行為はしないしできないので、判断を使用者に委ねるのは妥当な方法である。以上の処理を行った後、該プロセスはメニューを表示しユーザの入力を待つ（ステップ１９０２，ステップ１９０３）。メニューは対象症例の変更，デバイス毎の操作パーミッションの一時的変更，トータルスナップショット要求などである。対象症例の変更とは新規選択，新しい症例の追加あるいは症例の削除などである。操作パーミッションの一時的変更は次のような場合に用いる。すなわちあるデバイスに関して操作優先度の高いユーザが低いユーザにその操作権限を一時的に譲るといった場合である．この場合そのデバイスＩＤのデバイス制御ブロック中の使用中ユーザ名と使用中コードレコード名が書き換えられる．トータルスナップショットとはデバイスの交換等で各手段から自動的にリクエストされるデバイス毎の情報のスナップショットではなく、ユーザテーブルおよびデバイステーブル中の情報すべてに関してスナップショットを取るものである。ただし変更された部分のみの更新であるので伝送される情報量はそれほど多くはない。入力があった場合はトータルのスナップショット（まだ上記のステップでの入力は反映されていない時点のもの）を取り、入力された情報を持って図１８のＢへジャンプする（ステップ１９０４）。以上のステップに於いてはユーザへのメニューは計算機ディスプレイや付加的な音声ガイド等を用いて行う。またユーザの入力方法としては、キーボードからのテキスト入力，ＧＵＩ（ｇｒａｐｈｉｃａｌ  ｕｓｅｒ  ｉｎｔｅｒｆａｃｅ）とマウスを用いた入力，もしくは音声指示，ジェスチャなどを用いてもよい。以上のステップとは別に他のプロセスの動作によってテーブルに関する変更がなされ、これを通知されることによって実行されるステップがある。前述のユーザ認証プロセス，システムコンフィギュレーションプロセス，ウオッチドッグプロセスからシグナル等による割り込み要求があると、該プロセスは割り込みに対応した処理へと遷移する。割り込み処理中ではユーザテーブル，デバイステーブルの更新を行い（ステップ１９０５）、その後割り込みから元のプログラムの実行位置へと戻る（ステップ１９０６）。
【００４９】
以上の構成によって、使用者は各手段を自分の使いやすいように構成でき、かつその構成を使用中に変化させた場合も再調整等に煩わされることなく最高の性能で使用し続けることのできる手術装置を提供することができる。
【００５０】
【発明の効果】
本発明によれば、統括制御手段により自動的かつ動的にデバイスの構成を検知して動作手順記述をデバイスに設定できるので、自動的かつ動的にシステム構成、デバイスの構成や動作を変化させることができる。これにより、デバイスに誤った動作手順記述を与えるというソフトウェア的な誤りを防止できるほか、デバイスの構成におけるハードウェア的な誤りを未然に発見できる。
【図面の簡単な説明】
【図１】本発明の一実施例の構成図。
【図２】各手段の基本構成図。
【図３】ＲＯＭのメモリマップの一実施例を示す図。
【図４】ＲＡＭのメモリマップの一実施例を示す図。
【図５】統括制御手段の動作手順を示す図である。
【図６】ユーザ認証プロセスの動作手順を示す図である。
【図７】システムコンフィギュレーションプロセスの動作を示す図である。
【図８】ウオッチドッグプロセスと、各手段の側でのプログラムの動作を示す図である。
【図９】スナップショットプロセスの動作手順を示す図である。
【図１０】デバイステーブル、ユーザテーブルとその周辺のデータ構造を示す図である。
【図１１】ユーザ制御ブロック、デバイス制御ブロックのデータ構造を示す図である。
【図１２】各手段におけるデバイスＩＤの中位部分を獲得する方法の例を示す図である。
【図１３】デバイスＩＤの下位識別子を得る方法の例を示す図である。
【図１４】デバイスＩＤのデータ構造の例を示す図である。
【図１５】位置決め作業時の先端位置決め制御系の例を示す図である。
【図１６】マニピュレータの接触作業における力制御系の例を示す図である。
【図１７】ユーザ登録簿と各種の表データの関係の例を示す図である。
【図１８】テーブル管理プロセスの動作手順１を示す図である。
【図１９】テーブル管理プロセスの動作手順２を示す図である。
【符号の説明】
１０１…臨場感制御情報生成手段、１０２…患部組織操作手段、１０３…操作指令生成手段、１０４…作業環境情報検出手段、１１７…生体内部情報計測手段、１１８…計測情報処理手段、１１９…生体内部計測用入力信号、１２０…生体内部を透過または反射した出力信号、１２１…生体内部の計測情報、１２２…三次元再構成等視覚化された生体内部情報、１２３…患部組織操作手段によって行われる操作、１２４…作業環境情報検出手段の一部である各種センサによる検出データ、１２５…患部、１０５…力覚センサ情報、１０６…近接覚センサ情報、１０７…視覚センサ情報、１０８…仮想反力情報、１０９…合成加工画像、１１０…仮想音場、１１１…操作指令情報、１１２…合成反力、１１３…動作指令、１１４…動作指令入力手段、１１５…スレーブマニピュレータ位置情報、１１６…拡大倍率情報、１２６…統括制御手段、１２７…ユーザ認証手段、１２８…伝送経路、１２９…動作手順記述保持手段。
【図１】
0003582348.tif 000004
【図２】
0003582348.tif 000005
【図３】
0003582348.tif 000006
【図４】
0003582348.tif 000007
【図５】
0003582348.tif 000008
【図６】
0003582348.tif 000009
【図７】
0003582348.tif 000010
【図８】
0003582348.tif 000011
【図９】
0003582348.tif 000012
【図１０】
0003582348.tif 000013
【図１１】
0003582348.tif 000014
【図１２】
0003582348.tif 000015
【図１３】
0003582348.tif 000016
【図１４】
0003582348.tif 000017
【図１５】
0003582348.tif 000018
【図１６】
0003582348.tif 000019
【図１７】
0003582348.tif 000020
【図１８】
0003582348.tif 000021
【図１９】
0003582348.tif 000022