(57)【要約】  マスタスレーブ制御方式で情報処理装置を介して操作対象の装置を制御可能な場合に、操作対象の装置の動作の安全性を確認することができるようにするべく、情報処理装置(50)は、第１時点での装置の状態を示す装置状態情報と、操作される対象の状態を示す対象状態情報とを含む装置側情報に基づく前記装置に対する動作要求と、前記第１時点の後で前記動作要求を受信する第２時点までの間で更新された装置側情報と、に基づいて、前記動作要求の実行を制御する動作要求確認部(57)を有するように構成した。
2020021870.tif 000002
【特許請求の範囲】
【請求項１】
第１時点での装置の状態を示す装置状態情報と、操作される対象の状態を示す対象状態情報とを含む装置側情報に基づく前記装置に対する動作要求と、前記第１時点の後で前記動作要求を受信する第２時点までの間で更新された装置側情報と、に基づいて、前記動作要求の実行を制御する動作要求確認部を有する情報処理装置。
【請求項２】
前記対象についての環境モデル、前記更新された対象状態情報及び前記更新された装置状態情報を用いて、仮想対象環境を再構成する仮想対象環境再構成部をさらに有し、  前記動作要求確認部は、前記仮想対象環境での前記動作要求のシミュレーション結果に基づいて前記動作要求の実行を制御する請求項１に記載の情報処理装置。
【請求項３】
前記動作要求確認部は、前記動作要求の前記シミュレーション結果が前記対象の安全性を害するものである場合に、前記動作要求を実行しない請求項２に記載の情報処理装置。
【請求項４】
前記更新された装置側情報に基づいて、前記装置の動作を停止させるか否かの検知を行う動作停止検知部をさらに有する請求項１に記載の情報処理装置。
【請求項５】
前記仮想対象環境での前記装置と前記対象との間の関係に基づいて、前記装置の動作を停止させるか否かの検知を行う動作停止検知部をさらに有する請求項２に記載の情報処理装置。
【請求項６】
前記装置側情報の更新周期は、前記動作要求の受信間隔よりも短い請求項１に記載の情報処理装置。
【請求項７】
前記対象は、患者であり、  前記装置は、前記患者に対して処置を施す動作実行部であり、  前記装置状態情報は、前記動作実行部の位置及び動作状態を示し、  前記対象状態情報は、前記患者の患部の状態及び生体情報である請求項１に記載の情報処理装置。
【請求項８】
第１時点での装置の状態を示す装置状態情報と、操作される対象の状態を示す対象状態情報とを含む装置側情報に基づく前記装置に対する動作要求と、前記第１時点の後で前記動作要求を受信する第２時点までの間で更新された装置側情報と、に基づいて、前記動作要求の実行を制御する情報処理方法。
【請求項９】
コンピュータに、  第１時点での装置の状態を示す装置状態情報と、操作される対象の状態を示す対象状態情報とを含む装置側情報に基づく前記装置に対する動作要求と、前記第１時点の後で前記動作要求を受信する第２時点までの間で更新された装置側情報と、に基づいて、前記動作要求の実行を制御する機能を実現させるためのプログラム。  
【発明の詳細な説明】
【技術分野】
【０００１】  本開示は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】  マスタスレーブ制御方式で遠隔地に存在するスレーブ装置を制御するシステムで、スレーブ装置の動作をシミュレーションするシミュレーション装置を介在させる技術が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１７−５１０８２６号公報
【特許文献２】特開平７−８４６４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】  上記の従来技術では、シミュレーション装置でスレーブ装置についての仮想環境を生成し、マスタ装置側に提示するものである。そのため、遠隔地に存在するスレーブ装置に対して動作要求を実行した結果の安全性については考慮されていないという問題点があった。【０００５】  そこで、本開示では、マスタスレーブ制御方式で情報処理装置を介して操作対象の装置を制御可能な場合に、操作対象の装置の動作の安全性を確認することができる情報処理装置、情報処理方法及びプログラムを提案する。
【課題を解決するための手段】
【０００６】  本開示によれば、第１時点での装置の状態を示す装置状態情報と、操作される対象の状態を示す対象状態情報とを含む装置側情報に基づく前記装置に対する動作要求と、前記第１時点の後で前記動作要求を受信する第２時点までの間で更新された装置側情報と、に基づいて、前記動作要求の実行を制御する動作要求確認部を有する情報処理装置が提供される。
【発明の効果】
【０００７】  本開示によれば、マスタスレーブ制御方式で情報処理装置を介して操作対象の装置を制御可能な場合に、操作対象の装置の動作の安全性を確認することができる。なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
【図面の簡単な説明】
【０００８】
【図１】本開示の一実施形態にかかる情報処理装置が適用される遠隔操作システムの概略構成の一例を示す図である。
【図２】本開示の実施形態にかかる遠隔操作システムの機能構成を模式的に示すブロック図である。
【図３】スレーブ環境観測装置での処理手順の一例を示すフローチャートである。
【図４】スレーブ装置での処理手順の一例を示すフローチャートである。
【図５】シミュレーション装置での情報処理方法の処理手順の一例を示すフローチャートである。
【図６】マスタ装置での処理手順の一例を示すフローチャートである。
【図７】実施形態による遠隔操作システムでの情報処理方法の手順の一例を示すシーケンス図である。
【図８Ａ】患者の患部とスレーブ装置の動作実行部との位置関係を模式的に示す図である。
【図８Ｂ】患者の患部とスレーブ装置の動作実行部との位置関係を模式的に示す図である。
【図８Ｃ】患者の患部とスレーブ装置の動作実行部との位置関係を模式的に示す図である。
【図８Ｄ】患者の患部とスレーブ装置の動作実行部との位置関係を模式的に示す図である。
【図９】シミュレーション装置での動作要求確認処理の詳細を説明する図である。
【図１０Ａ】実施形態による遠隔操作システムにおける情報の流れの一例を模式的に示す図である。
【図１０Ｂ】実施形態による遠隔操作システムにおける情報の流れの一例を模式的に示す図である。
【図１０Ｃ】実施形態による遠隔操作システムにおける情報の流れの一例を模式的に示す図である。
【図１１】実施形態による情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【０００９】  以下に、本開示の実施形態について図面に基づいて詳細に説明する。なお、以下の各実施形態において、同一の部位には同一の符号を付することにより重複する説明を省略する。
【００１０】［実施形態に係るシステムの構成］  図１は、本開示の一実施形態にかかる情報処理装置が適用される遠隔操作システムの概略構成の一例を示す図である。なお、以下では、遠隔操作システム１として、操作者である執刀医７１が処理対象である患者７２に対して遠隔操作で処置を施す遠隔医療システムを例に挙げて説明する。
【００１１】  遠隔操作システム１は、マスタコンソール１０と、マスタ装置２０と、スレーブ装置３０と、スレーブ環境観測装置４０と、シミュレーション装置５０と、を備える。マスタコンソール１０およびマスタ装置２０は、例えば通信線６０を介して接続される。マスタ装置２０とシミュレーション装置５０とは、第１ネットワーク６１を介して接続される。スレーブ装置３０とスレーブ環境観測装置４０とシミュレーション装置５０とは、第２ネットワーク６２を介して接続される。マスタ装置２０およびマスタコンソール１０は、スレーブ装置３０、スレーブ環境観測装置４０およびシミュレーション装置５０に対して遠隔地に設置される。例えば、マスタ装置２０およびマスタコンソール１０は、スレーブ装置３０、スレーブ環境観測装置４０およびシミュレーション装置５０が設置される建物とは異なる建物に設置される。
【００１２】  第２ネットワーク６２は、第１ネットワーク６１に対して通信の遅延が小さい、安定したネットワークが用いられる。例えば、第２ネットワーク６２は、第１ネットワーク６１に比して更新周期が早いネットワークである。第１ネットワーク６１は、例えば、Ethernet（登録商標）を含むＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）またはインタネットなどである。第２ネットワーク６２は、ＦＡ（Factory  Automation）ネットワークで使用されるリアルタイムネットワーク、第５世代（５Ｇ）無線通信方式のネットワークなどである。これによって、シミュレーション装置５０と、スレーブ装置３０およびスレーブ環境観測装置４０と、の間では、更新周期が短く、低遅延の通信が実現される。
【００１３】  マスタコンソール１０は、マスタ装置２０に接続され、手術を施行する執刀医７１のためのユーザインターフェース機能を実現する入出力装置である。マスタコンソール１０は、例えば、執刀医７１がスレーブ環境を把握するための立体視ディスプレイ、又は情報を提示するためのインジケータなどの表示装置と、ハプティックデバイス、フットペダル、緊急停止ボタンなどの入力装置と、を含む。を有する。執刀医７１には、手術を受ける患者７２の患部の仮想対象環境である仮想スレーブ環境が提示され、執刀医７１は提示された情報を基に次の動作要求を行う。
【００１４】  マスタ装置２０は、マスタコンソール１０と遠隔のシミュレーション装置５０及びスレーブ装置３０とを連携させる装置である。マスタ装置２０は、シミュレーション装置５０からの情報に基づいて仮想スレーブ環境を再構成し、マスタコンソール１０から入力されたスレーブ装置３０への動作要求をシミュレーション装置５０またはスレーブ装置３０へと送信する。マスタ装置２０は、緊急停止などの予め定められた動作要求は直接にスレーブ装置３０へと送信し、それ以外の動作要求は、シミュレーション装置５０へと送信する。
【００１５】  スレーブ装置３０は、マスタ装置２０又はシミュレーション装置５０からの動作要求にしたがって、患者７２に対して処理を行う動作実行部を有する装置である。動作実行部は、ステージまたはアームのような駆動される機械である。また、アームの先端には、操作のためのグリッパ、レーザ照射のためのツールなどが設けられる。動作実行部は、用途別に複数設けられてもよい。また、スレーブ装置３０は、動作実行部の状態であるスレーブ動作情報を検知部（センサ）で観測し、シミュレーション装置５０に送信する。スレーブ動作情報は、装置状態情報の一種である。
【００１６】  スレーブ環境観測装置４０は、患者７２の状態又は患者７２の患部の状態であるスレーブ環境情報を観測し、シミュレーション装置５０に送信する。スレーブ環境観測装置４０は、スレーブ装置３０から独立して設置されてもよいし、スレーブ装置３０に装着されていてもよい。このようなスレーブ環境観測装置４０として、患者７２、特に術野を撮像するカメラ、患者７２の微小な位置を撮像する顕微鏡、患者７２の生体情報を計測する生体情報計測部などがある。生体情報は、例えば、血圧、心拍数、血流量などである。スレーブ装置３０に装着されているスレーブ環境観測装置４０として、スレーブ装置３０のツールの先端の触覚センサまたは力センサなどがある。スレーブ環境情報は、操作される対象の状態を示す対象状態情報の一種である。なお、装置側情報は、装置状態情報と対象状態情報とを含む情報である。
【００１７】  マスタ装置２０とスレーブ装置３０との間は、ユニラテラル制御系であってもよいし、バイラテラル制御系であってもよい。バイラテラル制御系の場合には、スレーブ環境観測装置４０の構成によっては、マスタコンソール１０の入力装置に、処理対象を動作実行部で操作した場合の力覚および触覚が、ハプティックデバイスを通して、執刀医７１に提示される。
【００１８】  シミュレーション装置５０は、スレーブ装置３０からのスレーブ動作情報と、スレーブ環境観測装置４０からのスレーブ環境情報と、を含む装置側情報を用いて、シミュレーションによって処理対象についての仮想スレーブ環境を生成する。仮想スレーブ環境は、術野の状態変化とスレーブ装置３０の位置とを含む。シミュレーション装置５０は、生成した仮想スレーブ環境を用いて、仮想スレーブ環境を生成した時点でスレーブ装置３０の動作を停止した方がよいかを判定し、動作を停止した方がよい場合には、患者７２が安全な状態となるようにスレーブ装置３０を制御する。また、シミュレーション装置５０は、マスタ装置２０からの動作要求を受信すると、その時点で最新の仮想スレーブ環境を用いて動作要求のシミュレーションを行い、患者７２に対する安全性が確認された後に、スレーブ装置３０に動作要求を送信する。また、安全性が確認されない場合には、患者７２が安全な状態となるように、スレーブ装置３０を制御する。この他に、シミュレーション装置５０は、生成した仮想スレーブ環境について、前回の生成した仮想スレーブ環境からの差分情報を生成し、差分情報とスレーブ動作情報とをマスタ装置２０に対して送信する。これによって、シミュレーション装置５０からマスタ装置２０に送信するデータを削減することができ、第１ネットワーク６１での通信遅延を減少させ、また、通信周期を増加させることができる。
【００１９】  このように、シミュレーション装置５０は、仮想スレーブ環境を時間遅延なくシミュレートするために非常に演算性能が高いＣＰＵ（Central  Processing  Unit）／ＧＰＵ（Graphics  Processing  Unit）が搭載されていることが望ましい。また、シミュレーション装置５０は、上記したように、マスタ装置２０とは第１ネットワーク６１で接続され、スレーブ装置３０とは第２ネットワーク６２で接続されているので、マスタ装置２０よりもスレーブ装置３０との通信が低遅延であり、接続が安定している。シミュレーション装置５０は、スレーブ装置３０と隣接して設置されていてもよいが、上記の条件を満たせばサーバルーム又はエッジクラウドに設置されていてもよい。
【００２０】  つぎに、遠隔操作システム１を構成する各装置の機能について、詳細に説明する。図２は、本開示の実施形態にかかる遠隔操作システムの機能構成を模式的に示すブロック図である。マスタコンソール１０は、情報提示部１１と、操作入力部１２と、を備える。
【００２１】  情報提示部１１は、患者７２の術野に関する情報を執刀医７１に対して提示する表示装置である。患者７２の術野に関する情報は、例えば、マスタ装置２０で再構成した仮想スレーブ環境又は患者７２の術野を撮像した映像である。情報提示部１１は、これらを両方同時に表示してもよいし、いずれか一方を表示してもよい。情報提示部１１によって術野を撮像した映像が表示される場合には、スレーブ環境観測装置４０で撮像した部分の情報しか提示されない。一方、情報提示部１１によって仮想スレーブ環境が表示される場合には、患者７２の術野の情報を３次元空間で再構成したものであるので、角度を変えて表示させたり、近くに寄って表示させたりすることができる。また、情報提示部１１は、対象である患者７２の解剖学的な情報又は患部若しくは治療に関する情報を、術野に関する情報にオーバーレイして表示してもよい。
【００２２】  操作入力部１２は、患者７２への処理を行うにあたって、スレーブ装置３０に対する動作要求を行う入力装置である。
【００２３】  マスタ装置２０は、通信部２１と、スレーブ環境モデル記憶部２２と、仮想スレーブ環境再構成部２３と、を備える。通信部２１は、シミュレーション装置５０又はスレーブ装置３０との間で通信を行う。通信部２１は、例えばマスタコンソール１０での入力内容をスレーブ装置３０への動作要求として、シミュレーション装置５０又はスレーブ装置３０に送信する。通信部２１は、マスタコンソール１０から緊急停止の指示が入力されると、緊急停止要求をスレーブ装置３０へと送信する。通信部２１は、マスタコンソール１０からの緊急停止以外の指示が入力されると、通常の動作要求として、スレーブ装置３０ではなくシミュレーション装置５０へと送信する。
【００２４】  スレーブ環境モデル記憶部２２は、仮想スレーブ環境再構成部２３で仮想スレーブ環境を再構成する場合に、シミュレーション装置５０との間で共有しているスレーブ環境モデルを記憶する。スレーブ環境モデルは、仮想現実の術野を再構成する際に、ＣＴ（Computerized  Tomography）装置などの３次元断層画像取得装置で取得した患者７２の身体データなどから加工したモデル情報である。
【００２５】  仮想スレーブ環境再構成部２３は、スレーブ環境モデル記憶部２２に記憶されているスレーブ環境モデルに、シミュレーション装置５０からの差分情報及びスレーブ動作情報を用いて、仮想スレーブ環境を再構成する。なお、この明細書では、仮想スレーブ環境の再構成には、差分情報及びスレーブ動作情報を用いた更新も含まれるものとする。ここで再構成された仮想スレーブ環境は、マスタコンソール１０の情報提示部１１に出力される。
【００２６】  スレーブ環境観測装置４０は、環境観測部４１と、通信部４２と、を備える。環境観測部４１は、スレーブ環境である患者７２の状態であるスレーブ環境情報を観測する観測装置である。スレーブ環境は、対象である患者７２の視覚的な情報と、非視覚的な情報と、を含む。視覚的な情報としては、患者７２の見た目の様子、患部の様子などを例示することができる。視覚的な情報を取得する環境観測部４１は、例えば、患者７２の術野を撮像するカメラなどである。非視覚的な情報としては、患者７２の血圧、心拍数などを例示することができる。非視覚的な情報を取得する環境観測部４１は、例えば、血圧計、心拍計などである。
【００２７】  通信部４２は、環境観測部４１によって観測されたスレーブ環境情報を、シミュレーション装置５０に送信する。
【００２８】  スレーブ装置３０は、通信部３１と、動作要求実行部３２と、を備える。通信部３１は、マスタ装置２０又はシミュレーション装置５０との間で通信を行う。例えば、通信部３１は、マスタ装置２０又はシミュレーション装置５０から緊急停止要求を含む動作要求を受信する。また、通信部３１は、スレーブ装置３０の動作実行部の状態であるスレーブ動作情報を、動作実行部に設けられた検知部から取得して、シミュレーション装置５０に送信する。スレーブ動作情報は、動作実行部の位置及び動作状態であり、例えば動作実行部がアームである場合には、アームの角度、アームの先端の患部からの距離などである。
【００２９】  シミュレーション装置５０は、マスタ通信部５１と、スレーブ通信部５２と、スレーブ環境モデル記憶部５３と、仮想スレーブ環境再構成部５４と、差分情報抽出部５５と、動作停止検知部５６と、動作要求確認部５７と、安全状態移行部５８と、を備える。
【００３０】  マスタ通信部５１は、マスタ装置２０との間で通信を行う。すなわち、マスタ通信部５１は、マスタ装置２０からの緊急停止要求以外の動作要求を受信する。また、マスタ通信部５１は、スレーブ動作情報及び差分情報をマスタ装置２０に送信する。
【００３１】  スレーブ通信部５２は、スレーブ装置３０およびスレーブ環境観測装置４０との間で通信を行う。すなわち、スレーブ通信部５２は、スレーブ環境観測装置４０からのスレーブ環境情報と、スレーブ装置３０からのスレーブ動作情報と、を受信する。スレーブ通信部５２は、安全状態移行部５８で安全状態への移行が必要であると判定された場合に、動作切り替え指示をスレーブ装置３０に送信する。また、スレーブ通信部５２は、動作要求確認部５７で動作要求に対する安全性が確認できた場合に、スレーブ装置３０に対して動作要求を送信する。
【００３２】  スレーブ環境モデル記憶部２２は、仮想スレーブ環境再構成部５４で仮想スレーブ環境を再構成する場合に、マスタ装置２０との間で共有しているスレーブ環境モデルを記憶する。
【００３３】  仮想スレーブ環境再構成部５４は、スレーブ環境モデル記憶部２２に記憶されているスレーブ環境モデルに、スレーブ装置３０からのスレーブ動作情報及びスレーブ環境観測装置４０からのスレーブ環境情報を用いて、仮想スレーブ環境を再構成する。仮想スレーブ環境再構成部５４は、仮想対象環境再構成部に対応する。
【００３４】  差分情報抽出部５５は、マスタ装置２０とシミュレーション装置５０との間で予めモデル情報が共有されている場合に、直前の時刻から現在の時刻で仮想スレーブ環境が時系列変化した差分情報を抽出し、マスタ装置２０に送信する。具体的には、差分情報抽出部５５は、仮想スレーブ環境再構成部５４で再構成された第１仮想スレーブ環境と、第１仮想スレーブ環境の前に仮想スレーブ環境再構成部５４で再構成された第２仮想スレーブ環境と、の差分を差分情報として抽出する。差分情報は、マスタ通信部５１を介してマスタ装置２０へと送信される。
【００３５】  動作停止検知部５６は、仮想スレーブ環境再構成部５４で仮想スレーブ環境が再構成された場合に、スレーブ装置３０の動作を停止させる状況の発生を検知する。動作停止検知部５６は、例えば、再構成された仮想スレーブ環境から、スレーブ装置３０が動作を停止する条件を示す動作停止条件を満たすかを判定し、動作停止条件を満たす場合に、停止条件発生通知を安全状態移行部５８に通知する。また、動作停止検知部５６は、停止条件発生通知をマスタ装置２０にマスタ通信部５１を介して通知する。
【００３６】  動作停止条件として、例えば、スレーブ装置３０の動作実行部が動作要求通りに動作していないこと、スレーブ装置３０の動作実行部が患者７２の患部以外の場所を侵襲していること、患部付近が極度に変形しているなど通常状態から逸脱していること、患者７２の生体情報が想定範囲を超えていること、などを例示することができる。患者７２の生体情報は、例えば、心拍、血圧、血中酸素濃度、出血などである。
【００３７】  動作要求確認部５７は、マスタ装置２０から動作要求を受けた場合に、動作要求を受けた時点で再構成されている仮想スレーブ環境を用いて、動作要求についてシミュレーションを実行し、患者７２の安全性を確認する。患者７２の安全性の確認は、安全判断基準を用いて行われる。安全判断基準として、例えば、スレーブ装置３０の動作実行部が事前設定された位置、速度、加速度の範囲内で動作すること、スレーブ装置３０の動作実行部が事前設定された力の範囲で患部に接触すること、スレーブ装置３０の動作実行部の動作によって患部付近が極度に変形しないこと、などを例示することができる。
【００３８】  動作要求確認部５７は、シミュレーションの結果、患者７２の安全性が確認された場合に、マスタ装置２０からの動作要求をスレーブ通信部５２を介してスレーブ装置３０へと送信する。また、動作要求確認部５７は、シミュレーションの結果、患者７２の安全性が確認されなかった場合に、マスタ装置２０からの動作要求をスレーブ装置３０へと送信せず、停止条件発生通知を安全状態移行部５８に通知する。さらに、動作要求確認部５７は、停止条件発生通知をマスタ装置２０にマスタ通信部５１を介して通知する。
【００３９】  安全状態移行部５８は、動作停止検知部５６又は動作要求確認部５７から停止条件発生通知を受けると、スレーブ装置３０に安全を確保するための動作を実行させる動作切り替え指示を送信する。動作切り替え指示は、マスタ装置２０からの動作要求に従った処理から、患者７２の安全性を確保するための動作への切り替えを実行する指示である。動作切り替え指示は、患者７２に対するスレーブ装置３０の動作実行部の位置などによって内容が異なる。例えば、動作実行部が患者７２から離れた場所に位置している場合には、その状態のまま停止させる。また、例えば、動作実行部が患者７２に接触している場合には、動作実行部を患者７２から離した後に停止させる。
【００４０】［実施形態に係る処理手順］  つぎに、遠隔操作システム１を構成するスレーブ環境観測装置４０、スレーブ装置３０、シミュレーション装置５０及びマスタ装置２０での処理について説明する。
【００４１】  図３は、スレーブ環境観測装置での処理手順の一例を示すフローチャートである。スレーブ環境観測装置４０の環境観測部４１は、患者７２についての情報であるスレーブ環境情報を取得する（ステップＳ１１）。スレーブ環境情報は、上記したように患者７２の患部の撮像データ、患者７２の血圧、心拍数などの生体情報などである。その後、通信部４２は、取得したスレーブ環境情報をシミュレーション装置５０に送信する（ステップＳ１２）。以上の処理が、遠隔操作システム１が稼働している間実行される。
【００４２】  図４は、スレーブ装置での処理手順の一例を示すフローチャートである。まず、スレーブ装置３０の通信部３１は、動作実行部に含まれる検知部から動作実行部についての動作状態を示すスレーブ動作情報を取得し（ステップＳ３１）、スレーブ動作情報をシミュレーション装置５０に送信する（ステップＳ３２）。
【００４３】  ついで、動作要求実行部３２は、マスタ装置２０から緊急停止要求を受信したかを判定する（ステップＳ３３）。緊急停止要求を受信した場合（ステップＳ３３でＹｅｓの場合）には、動作要求実行部３２は、動作実行部の緊急停止を実行する（ステップＳ３４）。これによって、スレーブ装置３０は、動作を停止し、処理が終了する。
【００４４】  一方、緊急停止要求を受信しなかった場合（ステップＳ３３でＮｏの場合）には、動作要求実行部３２は、シミュレーション装置５０から動作切り替え指示を受信したかを判定する（ステップＳ３５）。動作切り替え指示を受信している場合（ステップＳ３５でＹｅｓの場合）には、動作要求実行部３２は、スレーブ装置３０の動作を安全状態へと移行させる処理を実行する（ステップＳ３６）。安全状態への移行処理として、例えばスレーブ装置３０の動作実行部の停止、または動作実行部が患者７２に接触しない位置への退避などが例示される。そして、処理が終了する。
【００４５】  また、動作切り替え指示を受信していない場合（ステップＳ３５でＮｏの場合）には、動作要求実行部３２は、動作要求を受信したかを判定する（ステップＳ３７）。動作要求を受信している場合（ステップＳ３７でＹｅｓの場合）には、動作要求実行部３２は、動作要求を実行する（ステップＳ３８）。その後、又はステップＳ３７で動作要求を受信していない場合（ステップＳ３７でＮｏの場合）には、ステップＳ３１へと処理が戻る。
【００４６】  図５は、シミュレーション装置での情報処理方法の処理手順の一例を示すフローチャートである。まず、シミュレーション装置５０のスレーブ通信部５２は、スレーブ装置３０からスレーブ動作情報を受信し（ステップＳ５１）、スレーブ環境観測装置４０からスレーブ環境情報を受信する（ステップＳ５２）。その後、仮想スレーブ環境再構成部５４は、受信したスレーブ動作情報及びスレーブ環境情報を含む装置側情報を用いて仮想現実の仮想スレーブ環境を再構成する（ステップＳ５３）。このとき、スレーブ環境モデル記憶部５３にスレーブ環境モデルが記憶されている場合には、スレーブ環境モデルも用いられる。
【００４７】  その後、動作停止検知部５６は、再構成された仮想スレーブ環境を用いて、スレーブ装置３０の動作を停止させる必要があるかを判定する動作停止検知処理を実行する（ステップＳ５４）。例えば、動作停止検知部５６は、仮想スレーブ環境が動作停止条件を満たすかを判定することによって、スレーブ装置３０の動作の停止の要否を判定する。その結果、スレーブ装置３０の動作を停止させる必要がない場合（ステップＳ５５でＮｏの場合）には、差分情報抽出部５５は、再構成した仮想スレーブ環境と、その前に再構成した仮想スレーブ環境と、の差分情報を抽出する（ステップＳ５６）。その後、マスタ通信部５１は、スレーブ動作情報及び差分情報をマスタ装置２０に送信する（ステップＳ５７）。
【００４８】  ついで、マスタ通信部５１は、マスタ装置２０から動作要求を受信したかを判定する（ステップＳ５８）。マスタ装置２０から動作要求を受信した場合（ステップＳ５８でＹｅｓの場合）には、動作要求確認部５７は、現在の仮想スレーブ環境、すなわちステップＳ５３で再構成された仮想スレーブ環境に対して、受信した動作要求のシミュレーションを実行する（ステップＳ５９）。そして、動作要求確認部５７は、シミュレーションの結果、動作要求の安全性を確認できたかを判定する（ステップＳ６０）。例えば、動作要求確認部５７は、シミュレーションの結果が安全判断基準を満たすかを判定することによって、動作要求の安全性を判定する。
【００４９】  動作要求の安全性を確認できた場合（ステップＳ６０でＹｅｓの場合）には、スレーブ通信部５２は、マスタ装置２０から受信した動作要求をスレーブ装置３０に送信する（ステップＳ６１）。その後、又はステップＳ５８でマスタ装置２０から動作要求を受信していない場合（ステップＳ５８でＮｏの場合）には、処理がステップＳ５１へと戻る。
【００５０】  動作要求の安全性を確認できなかった場合（ステップＳ６０でＮｏの場合）、あるいは、ステップＳ５５で動作を停止させる必要がある場合（ステップＳ５５でＹｅｓの場合）には、安全状態移行部５８は動作切り替え指示をスレーブ装置３０に送信する（ステップＳ６２）。また、安全状態移行部５８は、スレーブ装置３０の動作を停止したことをマスタ装置２０に通知する（ステップＳ６３）。そして、処理が終了する。
【００５１】  このように、動作要求を受信した時点で最新の仮想スレーブ環境を用いて動作要求の実行をシミュレーションし、その結果に基づいて、動作要求をスレーブ装置３０へと渡すか否かを制御する。これによって、マスタコンソール１０で指示した時は安全であった動作要求をシミュレーション装置で受信した時に安全性が確認できないものに変わった場合に、マスタ装置２０の操作者である執刀医７１の確認を得ることなく、処理を中断させることができる。これによって、実空間でも患者７２の安全性を確保することができる。
【００５２】  図６は、マスタ装置での処理手順の一例を示すフローチャートである。まず、マスタ装置２０の通信部２１は、シミュレーション装置５０から差分情報と、スレーブ動作情報と、を受信する（ステップＳ７１）。ついで、仮想スレーブ環境再構成部２３は、受信したスレーブ動作情報及び差分情報を用いて、仮想現実の仮想スレーブ環境を再構成する（ステップＳ７２）。このとき、スレーブ環境モデル記憶部２２にスレーブ環境モデルが記憶されている場合には、スレーブ環境モデルも用いられる。
【００５３】  ついで、マスタコンソール１０の情報提示部１１は、再構成した仮想スレーブ環境を表示する（ステップＳ７３）。操作者である執刀医７１は、情報提示部１１で表示された仮想スレーブ環境を見ながら、操作入力部１２を操作する。マスタ装置２０の通信部２１は、マスタコンソール１０の操作入力部１２から緊急停止要求の送信が要求されたかを判定する（ステップＳ７４）。
【００５４】  緊急停止要求の送信が要求された場合（ステップＳ７４でＹｅｓの場合）には、通信部２１は、緊急停止要求をスレーブ装置３０に送信し（ステップＳ７５）、処理が終了する。
【００５５】  また、緊急停止要求の送信が要求されていない場合（ステップＳ７４でＮｏの場合）には、通信部２１は、マスタコンソール１０の操作入力部１２から動作要求の送信が要求されたかを判定する（ステップＳ７６）。動作要求の送信が要求された場合（ステップＳ７６でＹｅｓの場合）には、通信部２１は、動作要求をシミュレーション装置５０に送信する（ステップＳ７７）。
【００５６】  その後、又は動作要求の送信が要求されていない場合（ステップＳ７６でＮｏの場合）には、ステップＳ７１に処理が戻る。
【００５７】  つぎに、遠隔操作システム１を構成するスレーブ環境観測装置４０、スレーブ装置３０、シミュレーション装置５０、マスタ装置２０およびマスタコンソール１０間での処理の流れについて説明する。図７は、実施形態による遠隔操作システムでの情報処理方法の手順の一例を示すシーケンス図である。図８Ａ〜図８Ｄは、患者の患部とスレーブ装置の動作実行部との位置関係を模式的に示す図である。図９は、シミュレーション装置での動作要求確認処理の詳細を説明する図である。
【００５８】  まず、時刻ｔ１で、スレーブ環境観測装置４０は、患者７２の状態を観測し、また、スレーブ装置３０は、動作実行部の状態を観測（取得）する。例えば、図９のスレーブ環境３３１に示されるスレーブ装置３０の動作実行部３５と患者７２の患部７２１の状態が取得される。スレーブ環境情報として、患部７２１の形状が取得され、スレーブ動作情報として、動作実行部３５の先端位置、速度などが取得される。
【００５９】  そして、スレーブ装置３０は第２ネットワーク６２を介してスレーブ動作情報をシミュレーション装置５０に送信し、スレーブ環境観測装置４０は第２ネットワーク６２を介してスレーブ環境情報をシミュレーション装置５０に送信する（図７のＳＱ１１）。
【００６０】  その後、シミュレーション装置５０では、受信したスレーブ動作情報及びスレーブ環境情報を用いて、図９に示されるように仮想スレーブ環境７１０ｔ１を再構成する（図７のＳＱ１２）。上記したように、患者７２のスレーブ環境モデルが存在する場合には、スレーブ環境モデルを基に、スレーブ動作情報及びスレーブ環境情報を用いて、仮想スレーブ環境が再構成される。
【００６１】  その後、シミュレーション装置５０は、再構成した仮想スレーブ環境と、その前に再構成した仮想スレーブ環境との差分である差分情報を抽出する（図７のＳＱ１３）。ここでは、差分情報は、例えば時刻ｔ１の仮想スレーブ環境７１０ｔ１と図示していない時刻ｔ０の仮想スレーブ環境との差分となる。
【００６２】  また、シミュレーション装置５０は、再構成した仮想スレーブ環境を用いて、動作停止検知処理を行う（図７のＳＱ１４）。動作停止検知処理の一例が図８Ａ〜図８Ｄに示されている。例えば、図８Ａは、スレーブ装置３０の動作実行部３５は、これより前に受けた動作要求の通りの位置に存在し、患者７２の患部７２１は、動作実行部３５に侵襲されていない状態が示されている。このように、動作実行部３５が動作要求通りに動作しており、動作実行部３５が患者７２の患部７２１以外の場所に侵襲しておらず、患部７２１付近が極度に変形していない、通常状態にある場合には、動作停止の条件を満たさないので、そのままスレーブ装置３０の動作が続行される。
【００６３】  図８Ｂは、スレーブ装置３０の動作実行部３５が動作要求通りに動作していない場合の一例を示し、図８Ｃは、スレーブ装置３０の動作実行部３５が動作要求通りに動作していないとともに、動作実行部３５が患者７２の患部７２１以外の場所７２２に侵襲している場合の一例を示している。また、図８Ｄは、患部７２１付近が極度に変形しており、通常状態から逸脱している場合の一例を示している。これらの図８Ｂ〜図８Ｄに該当する場合には、シミュレーション装置５０は、動作停止の条件を満たすので、スレーブ装置３０を安全状態へと移行させる。なお、ここでは、図８Ａに示されるように、スレーブ装置３０は動作停止の条件を満たさなかったものとする。
【００６４】  図７に戻り、シミュレーション装置５０は、第１ネットワーク６１を介してスレーブ動作情報及び差分情報をマスタ装置２０へと送信する（図７のＳＱ１５）。そして、マスタ装置２０は、受信したスレーブ動作情報及び差分情報を用いて仮想スレーブ環境を再構成し（図７のＳＱ１６）、マスタコンソール１０に情報を提示する（図７のＳＱ１７）。図９に示されるように、マスタコンソール１０の情報提示部１１に仮想スレーブ環境７１０ｔ１が表示される。
【００６５】  患部７２１は時々刻々と変化し、スレーブ装置３０の動作実行部３５は、動作要求された状態に移行するまでに時間を要する。そのため、スレーブ装置３０およびスレーブ環境観測装置４０では、例えば所定の周期でスレーブ動作情報及びスレーブ環境情報を取得し、シミュレーション装置５０に送信している（図７のＳＱ２１）。ここでは、図９の時刻ｔ２のスレーブ環境３３２に示されるスレーブ装置３０の動作実行部３５と患者７２の患部７２１の状態が、スレーブ環境情報およびスレーブ動作情報として取得され、シミュレーション装置５０に送信される。
【００６６】  その後、シミュレーション装置５０では、時刻ｔ２でのスレーブ動作情報及びスレーブ環境情報を用いて、図９に示されるように、仮想スレーブ環境７１０ｔ２を再構成する（図７のＳＱ２２）。第１ネットワーク６１の更新周期は、第２ネットワーク６２の更新周期よりも長いという前提であるので、この仮想スレーブ環境７１０ｔ２は、マスタ装置２０へと送信されない。また、シミュレーション装置５０は、再構成した仮想スレーブ環境７１０ｔ２を用いて、動作停止検知処理を行う（図７のＳＱ２３）。ここでも、スレーブ装置３０は動作停止の条件を満たさなかったものとする。
【００６７】  一方、執刀医７１は、ＳＱ１７でマスタコンソール１０に表示された仮想スレーブ環境７１０ｔ１を見て、時刻ｔ３で操作を行うことになる（図７のＳＱ１８）。執刀医７１によるマスタコンソール１０の操作入力部１２の操作が、動作要求としてマスタ装置２０からシミュレーション装置５０へと送信される（図７のＳＱ３１）。例えば、図９で、執刀医７１は、情報提示部１１に表示された仮想スレーブ環境７１０ｔ１を見ながら、動作実行部３５を所望の位置へと移動させるように操作入力部１２を操作すると、動作要求１５０が生成される。
【００６８】  シミュレーション装置５０では、動作要求を受信すると、受信した動作要求をスレーブ装置３０で実行したときに、患者７２に対して安全性を確保できるかの確認を行う（図７のＳＱ３２）。ここで、動作要求は、時刻ｔ２よりも後に受信したものとする。
【００６９】  図９に示されるように、執刀医７１による動作要求は、時刻ｔ１における仮想スレーブ環境７１０ｔ１に基づいて出されたものであるが、シミュレーション装置５０が動作要求１５０を受信するまでの間に仮想スレーブ環境７１０ｔ２に更新されている。そのため、本実施形態では、シミュレーション装置５０は、仮想スレーブ環境７１０ｔ１ではなく、仮想スレーブ環境７１０ｔ２を用いて、安全性の確認の処理を行うことになる。安全性の確認の処理では、仮想スレーブ環境７１０ｔ１の再構成の後で、動作要求１５０を受信した時点までの間に再構成された仮想スレーブ環境７１０ｔｉ（ｉは２以上の自然数）を用いることができる。ただし、動作要求１５０を受信した時点で最新の仮想スレーブ環境（この場合には仮想スレーブ環境７１０ｔ２）を用いることが望ましい。
【００７０】  例えば、動作要求１５０を受信した時点で最新の仮想スレーブ環境７１０ｔ２を用いずに、動作要求１５０の送信時にマスタ装置２０が使用した仮想スレーブ環境７１０ｔ１を用いてシミュレーション装置５０がシミュレーションを行った場合を考える。
【００７１】  時刻ｔ１から時刻ｔ２の間に、患者７２の患部７２１の形状が急激に変化してしまったものとする。この場合、時刻ｔ１の仮想スレーブ環境７１０ｔ１を用いて動作要求についてのシミュレーションを行うと、シミュレーション装置５０上では、安全性に問題がないと判定される。しかし、上記したように、時刻ｔ２での患部７２１の形状の急激な変化によって、実際に動作要求１５０を実行した場合には、急激に形状が変化した患部７２１によって、動作実行部３５が接触してしまう。つまり、意図しない患部に動作実行部３５が接触してしまい、安全性が損なわれてしまう可能性が高くなる。
【００７２】  一方、動作要求１５０を受信した時点で最新の仮想スレーブ環境７１０ｔ２を用いて、動作要求１５０についてのシミュレーションを行うと、仮想スレーブ環境７１０ｔ２には、既に患部７２１の形状の急激な変化が反映されている。そして、動作実行部３５についての動作要求１５０を実行すると、急激に形状が変化した患部７２１を動作実行部３５が侵襲してしまう結果が得られる。つまり、安全性が確保できないと判定される。その結果、シミュレーション装置５０は、マスタ装置２０へ確認することなく、また患者７２に対して動作要求１５０を実行する前に、安全状態への移行措置を取ることができる。
【００７３】  なお、ここでは、例として患部７２１の急激な形状の変化を例に挙げたが、スレーブ装置３０の動作実行部３５が事前に設定された位置、速度、加速度の範囲内で動作しない場合、動作実行部３５が事前に設定された力の範囲で患部７２１に接触しない場合、シミュレーション装置５０とマスタ装置２０との間の通信が切断した場合でも同様に、患者７２に対して動作要求を実行する前に、安全状態への移行措置を取ることができる。
【００７４】  図７に戻り、シミュレーション装置５０は、ＳＱ３２で安全性の確認ができた場合に、安全性が確認された動作要求をスレーブ装置３０に対して送信する（図７のＳＱ３３）。そして、スレーブ装置３０は、動作要求を実行する（図７のＳＱ３４）。以上が、マスタ装置２０が動作要求を送信した時の基になる仮想スレーブ環境と、シミュレーション装置５０が動作要求を受信した時の最新の仮想スレーブ環境と、が異なる場合の安全性を確認する処理である。図示していないが、ＳＱ３２で安全性の確認ができなかった場合には、シミュレーション装置５０は動作切り替え指示をスレーブ装置３０へと送信し、安全状態への移行処理が実行される。
【００７５】  図１０Ａ〜図１０Ｃは、実施形態による遠隔操作システムにおける情報の流れの一例を模式的に示す図である。動作停止検知処理又は動作要求確認処理で、安全状態への移行がなされない場合には、図１０Ａに示されるように、スレーブ環境観測装置４０、スレーブ装置３０、シミュレーション装置５０及びマスタ装置２０との間で、情報のやり取りがされる。すなわち、スレーブ環境観測装置４０からはスレーブ環境情報４０１がシミュレーション装置５０へと送信され、スレーブ装置３０からはスレーブ動作情報３０１がシミュレーション装置５０へと送信される。シミュレーション装置５０からは、差分情報及びスレーブ動作情報５０１がマスタ装置２０へと送信される。一方、マスタ装置２０からは、緊急停止要求以外の動作要求１０１がシミュレーション装置５０へと送信される。シミュレーション装置５０からは、安全性が確認された動作要求１０１がスレーブ装置３０へと送信される。
【００７６】  一方、図１０Ｂに示されるように、シミュレーション装置５０は、マスタ装置２０との間の通信が切断されたり、通信遅延に起因する状況変化が生じたりした場合には、シミュレーション装置５０は、安全状態移行指示をスレーブ装置３０へと送信する。
【００７７】  また、図１０Ｃに示されるように、マスタ装置２０は、緊急停止要求１０２が出された場合には、シミュレーション装置５０を経由せず、直接にスレーブ装置３０へと送信する。スレーブ装置３０の動作実行部の動作の停止に関しては、シミュレーション装置５０によって安全性を確認しなくても、安全に処理を停止させることができるからである。
【００７８】  なお、上記した説明では、遠隔操作システム１として、執刀医７１が患者７２に対して遠隔で処置を行う遠隔医療システムを例に挙げた。しかし、本実施形態がこれに限定されるものではなく、安全性を担保したいアプリケーションに有用である。例えば、遠隔からの介護、介助をサービスロボットによって実施する場合、あるいは遠隔からモバイルロボットを操作する場合などが例示される。より具体的には、橋梁点検又は原子力発電所のような人が行けない場所でのインフラ点検又は作業、災害時の人命救助のための遠隔がれき撤去のような作業、採鉱所又は工事現場での作業などにも適用することができる。さらに、陳列、清掃又は警備といった店舗での作業支援、料理又は洗い物といった生活支援など、完全自動化が困難で遠隔から人による操作が必要な場面にも適用することができる。スレーブ装置３０は、アーム型、車輪走行型、飛行（ドローン）型など用途に適した形態を取り得る。
【００７９】  実施形態では、シミュレーション装置５０は、処理対象についての第１スレーブ環境情報と、スレーブ装置３０の動作実行部についての第１スレーブ動作情報と、に基づいてマスタ装置２０で生成されたスレーブ装置３０への動作要求を受信する。シミュレーション装置５０は、第１スレーブ環境情報と第１スレーブ動作情報の受信後で、動作要求の受信前までの間で更新された第２スレーブ環境情報と第２スレーブ動作情報とに基づいて、動作要求を行うようにした。これによって、動作要求の基になった第１スレーブ環境情報と第１スレーブ動作情報の受信後に生じた処理対象又はスレーブ装置３０の異変を検知することができる。その結果、動作要求の実行が異変によって処理対象への安全の確保が難しい場合には、動作要求を出さずに、安全状態への移行を指示することができる。つまり、安全性が確認された動作要求のみが実行されるため、通信遅延などの要因でマスタ装置２０側では検知できない危険をシミュレーション装置５０で回避することができる。また、シミュレーション装置５０とスレーブ装置３０との間で、自律的に安全性を確保することができる。
【００８０】  これによって、マスタ装置２０からの動作要求がスレーブ装置３０に届くまでの時間遅延と、スレーブ装置３０側の環境変化をマスタ装置２０側にフィードバックする際の時間遅延と、が発生する環境でも、制御の安定性と作業環境の安全性を担保することができる。特に、外科治療において、遠隔地からの処置によって精密な術具操作を行いながら患者を不用意に傷つけないことが可能になる。また、物理的に遠く離れたマスタ装置２０とスレーブ装置３０との間の通信状態が不安定であっても、スレーブ装置３０とシミュレーション装置５０との間で危険を検知して、安全状態へと移行することができる。
【００８１】  また、シミュレーション装置５０は、スレーブ環境情報とスレーブ動作情報とに基づいて、仮想スレーブ環境を再構成し、仮想スレーブ環境で動作要求をシミュレーションする。これによって、動作要求によって生じる現象を高精度で予測することができる。
【００８２】  さらに、マスタ装置２０は、緊急停止要求などの一部の要求を、シミュレーション装置５０を中継せずにスレーブ装置３０に直接送信する。これによって、シミュレーション装置５０での緊急停止要求に対するシミュレーションが行われないので、マスタ装置２０側からの危険回避動作をより早くスレーブ装置３０に送信することができる。
【００８３】  また、マスタ装置２０は、スレーブ環境情報とスレーブ動作情報とを用いて、仮想現実の仮想スレーブ環境を再構成する。これによって、マスタ装置２０に操作しやすい自由視点の画像を提示することができる。また、事前にモデル化されたスレーブ環境モデルがマスタ装置２０とシミュレーション装置５０との間で共有されていることで、シミュレーション装置５０は、再構成した仮想スレーブ環境と、その前に再構成した仮想スレーブ環境との間の差分情報をマスタ装置２０側に送信すればよい。その結果、実行中の通信データを削減することができる。
【００８４】  なお、上述した遠隔操作システム１のスレーブ装置３０において、動作実行部に対して１つの動作要求実行部３２が設けられる構成でもよいし、複数の動作実行部に対して１つの動作要求実行部３２が設けられる構成でもよい。すなわち、遠隔操作システム１に、動作実行部と動作要求実行部３２とが１対１で対応付けられたスレーブ装置３０が複数設けられてもよいし、１つの動作要求実行部３２に複数の動作実行部が対応付けられた１台のスレーブ装置３０が設けられてもよい。また、上記した説明では、遠隔操作システム１にシミュレーション装置５０が１台設けられる場合を説明したが、複数のシミュレーション装置５０が設けられてもよい。
【００８５】［ハードウェア構成］  図１１は、実施形態による情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。上述してきた実施形態でのマスタ装置２０、シミュレーション装置５０等の情報処理装置は、コンピュータ１０００によって実現される。コンピュータ１０００は、ＣＰＵ１１００、ＲＡＭ１２００、ＲＯＭ（Read  Only  Memory）１３００、ＨＤＤ（Hard  Disk  Drive）１４００、通信インターフェイス１５００、及び入出力インターフェイス１６００を有する。コンピュータ１０００の各部は、バス１０５０によって接続される。
【００８６】  ＣＰＵ１１００は、ＲＯＭ１３００又はＨＤＤ１４００に格納されたプログラムに基づいて動作し、各部の制御を行う。例えば、ＣＰＵ１１００は、ＲＯＭ１３００又はＨＤＤ１４００に格納されたプログラムをＲＡＭ１２００に展開し、各種プログラムに対応した処理を実行する。
【００８７】  ＲＯＭ１３００は、コンピュータ１０００の起動時にＣＰＵ１１００によって実行されるＢＩＯＳ（Basic  Input  Output  System）等のブートプログラム、及びコンピュータ１０００のハードウェアに依存するプログラム等を格納する。
【００８８】  ＨＤＤ１４００は、ＣＰＵ１１００によって実行されるプログラム、及び、このプログラムによって使用されるデータ等を非一時的に記録する、コンピュータが読み取り可能な記録媒体である。具体的には、ＨＤＤ１４００は、プログラムデータ１４５０の一例である本開示に係る情報処理プログラムを記録する記録媒体である。
【００８９】  通信インターフェイス１５００は、コンピュータ１０００が外部ネットワーク１５５０（例えばインターネット）と接続するためのインターフェイスである。例えば、ＣＰＵ１１００は、通信インターフェイス１５００を介して、他の機器からデータを受信したり、ＣＰＵ１１００が生成したデータを他の機器へ送信したりする。
【００９０】  入出力インターフェイス１６００は、入出力デバイス１６５０とコンピュータ１０００とを接続するためのインターフェイスである。例えば、ＣＰＵ１１００は、入出力インターフェイス１６００を介して、キーボード又はマウス等の入力デバイスからデータを受信する。また、ＣＰＵ１１００は、入出力インターフェイス１６００を介して、ディスプレイ、スピーカ又はプリンタ等の出力デバイスにデータを送信する。また、入出力インターフェイス１６００は、所定の記録媒体（メディア）に記録されたプログラム等を読み取るメディアインターフェイスとして機能してもよい。メディアとは、例えばＤＶＤ（Digital  Versatile  Disc）、ＰＤ（Phase  change  rewritable  Disk）等の光学記録媒体、ＭＯ（Magneto-Optical  disk）等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【００９１】  例えば、コンピュータ１０００が実施形態に係るシミュレーション装置５０として機能する場合、コンピュータ１０００のＣＰＵ１１００は、ＲＡＭ１２００上にロードされた情報処理プログラムを実行することにより、仮想スレーブ環境再構成部５４、差分情報抽出部５５、動作停止検知部５６、動作要求確認部５７、安全状態移行部５８の機能を実現する。また、ＨＤＤ１４００には、本開示に係る情報処理プログラム、スレーブ環境モデル記憶部５３内のデータが格納される。なお、ＣＰＵ１１００は、プログラムデータ１４５０をＨＤＤ１４００から読み取って実行するが、他の例として、外部ネットワーク１５５０を介して、他の装置からこれらのプログラムを取得してもよい。
【００９２】  なお、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、また他の効果があってもよい。
【００９３】  なお、本技術は以下のような構成も取ることができる。（１）  第１時点での装置の状態を示す装置状態情報と、操作される対象の状態を示す対象状態情報とを含む装置側情報に基づく前記装置に対する動作要求と、前記第１時点の後で前記動作要求を受信する第２時点までの間で更新された装置側情報と、に基づいて、前記動作要求の実行を制御する動作要求確認部を有する情報処理装置。（２）  前記対象についての環境モデル、前記更新された対象状態情報及び前記更新された装置状態情報を用いて、仮想対象環境を再構成する仮想対象環境再構成部をさらに有し、  前記動作要求確認部は、前記仮想対象環境での前記動作要求のシミュレーション結果に基づいて前記動作要求の実行を制御する（１）に記載の情報処理装置。（３）  前記動作要求確認部は、前記動作要求の前記シミュレーション結果が前記対象の安全性を害するものである場合に、前記動作要求を実行しない（２）に記載の情報処理装置。（４）  前記更新された装置側情報に基づいて、前記装置の動作を停止させるか否かの検知を行う動作停止検知部をさらに有する（１）〜（３）のいずれかに記載の情報処理装置。（５）  前記仮想対象環境での前記装置と前記対象との間の関係に基づいて、前記装置の動作を停止させるか否かの検知を行う動作停止検知部をさらに有する（２）に記載の情報処理装置。（６）  前記装置側情報の更新周期は、前記動作要求の受信間隔よりも短い（１）〜（５）のいずれかに記載の情報処理装置。（７）  前記対象は、患者であり、  前記装置は、前記患者に対して処置を施す動作実行部であり、  前記装置状態情報は、前記動作実行部の位置及び動作状態を示し、  前記対象状態情報は、前記患者の患部の状態及び生体情報である（１）〜（６）のいずれかに記載の情報処理装置。（８）  第１時点での装置の状態を示す装置状態情報と、操作される対象の状態を示す対象状態情報とを含む装置側情報に基づく前記装置に対する動作要求と、前記第１時点の後で前記動作要求を受信する第２時点までの間で更新された装置側情報と、に基づいて、前記動作要求の実行を制御する情報処理方法。（９）  コンピュータに、  第１時点での装置の状態を示す装置状態情報と、操作される対象の状態を示す対象状態情報とを含む装置側情報に基づく前記装置に対する動作要求と、前記第１時点の後で前記動作要求を受信する第２時点までの間で更新された装置側情報と、に基づいて、前記動作要求の実行を制御する機能を実現させるためのプログラム。
【符号の説明】
【００９４】  １  遠隔操作システム  １０  マスタコンソール  １１  情報提示部  １２  操作入力部  ２０  マスタ装置  ２１，３１，４２  通信部  ２２，５３  スレーブ環境モデル記憶部  ２３，５４  仮想スレーブ環境再構成部  ３０  スレーブ装置  ３２  動作要求実行部  ３５  動作実行部  ４０  スレーブ環境観測装置  ４１  環境観測部  ５０  シミュレーション装置  ５１  マスタ通信部  ５２  スレーブ通信部  ５５  差分情報抽出部  ５６  動作停止検知部  ５７  動作要求確認部  ５８  安全状態移行部  
【図１】
2020021870.tif 000003
【図２】
2020021870.tif 000004
【図３】
2020021870.tif 000005
【図４】
2020021870.tif 000006
【図５】
2020021870.tif 000007
【図６】
2020021870.tif 000008
【図７】
2020021870.tif 000009
【図８Ａ】
2020021870.tif 000010
【図８Ｂ】
2020021870.tif 000011
【図８Ｃ】
2020021870.tif 000012
【図８Ｄ】
2020021870.tif 000013
【図９】
2020021870.tif 000014
【図１０Ａ】
2020021870.tif 000015
【図１０Ｂ】
2020021870.tif 000016
【図１０Ｃ】
2020021870.tif 000017
【図１１】
2020021870.tif 000018
【国際調査報告】
2020021870.tif 000019
2020021870.tif 000020
2020021870.tif 000021