(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022164028
(43)【公開日】2022-10-27
(54)【発明の名称】遠隔操作制御システム、遠隔操作制御方法、およびプログラム
(51)【国際特許分類】
B25J 3/00 20060101AFI20221020BHJP
G06F 3/01 20060101ALI20221020BHJP
【FI】
B25J3/00 Z
G06F3/01 560
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2021069234
(22)【出願日】2021-04-15
(71)【出願人】
【識別番号】000005326
【氏名又は名称】本田技研工業株式会社
(74)【代理人】
【識別番号】100165179
【弁理士】
【氏名又は名称】田▲崎▼ 聡
(74)【代理人】
【識別番号】100126664
【弁理士】
【氏名又は名称】鈴木 慎吾
(74)【代理人】
【識別番号】100154852
【弁理士】
【氏名又は名称】酒井 太一
(74)【代理人】
【識別番号】100194087
【弁理士】
【氏名又は名称】渡辺 伸一
(72)【発明者】
【氏名】木村 裕太
(72)【発明者】
【氏名】川上 智弘
(72)【発明者】
【氏名】吉池 孝英
(72)【発明者】
【氏名】杉山 謙一郎
(72)【発明者】
【氏名】室町 維昭
(72)【発明者】
【氏名】谷口 洋一
【テーマコード(参考)】
3C707
5E555
【Fターム(参考)】
3C707CY12
3C707JS03
3C707JT10
3C707JU02
3C707JU12
3C707KT01
3C707KT06
3C707KT11
3C707LW12
3C707WL07
5E555AA08
5E555AA26
5E555BA01
5E555BA38
5E555BB01
5E555BB38
5E555BC01
5E555BE17
5E555CA23
5E555DA24
5E555DB53
5E555FA00
(57)【要約】
【課題】同一の遠隔操作対象に対する他の操作者による操作を体感することができる遠隔操作制御システム、遠隔操作制御方法、およびプログラムを提供すること。
【解決手段】実施形態の遠隔操作制御システムは、遠隔操作対象に対する操作を受け付ける第1コントローラを介して第1操作者により入力された操作を示す第1操作情報と、前記遠隔操作対象に対する操作を受け付ける第2コントローラを介して第2操作者により入力された操作を示す第2操作情報とに基づいて、遠隔操作対象を動作させる制御情報を生成する制御情報生成部と、制御情報に基づいて、遠隔操作対象の動作内容を第1コントローラにフィードバックする第1フィードバック情報を生成し、遠隔操作対象の動作内容を第2コントローラにフィードバックする第2フィードバック情報を生成するフィードバック情報生成部と、を備える。
【選択図】
図4
【特許請求の範囲】
【請求項1】
現実の物体あるいは仮想世界の仮想物体である遠隔操作対象を操作者が遠隔操作する遠隔操作制御システムにおいて、
前記遠隔操作対象に対する操作を受け付ける第1コントローラを介して第1操作者により入力された操作を示す第1操作情報と、前記遠隔操作対象に対する操作を受け付ける第2コントローラを介して第2操作者により入力された操作を示す第2操作情報と、を取得する情報取得部と、
前記情報取得部が取得した前記第1操作情報と前記第2操作情報とに基づいて、前記遠隔操作対象を動作させる制御情報を生成する制御情報生成部と、
前記制御情報に基づいて、前記遠隔操作対象の動作内容を前記第1コントローラにフィードバックする第1フィードバック情報を生成し、前記遠隔操作対象の動作内容を前記第2コントローラにフィードバックする第2フィードバック情報を生成するフィードバック情報生成部と、
を備える遠隔操作制御システム。
【請求項2】
前記フィードバック情報生成部は、
前記第1操作者により入力された操作に基づく前記遠隔操作対象の動作に基づいて、前記第1操作者による操作内容を、前記第2コントローラを介して前記第2操作者に伝達するための第1フィードバック情報を生成し、
前記第2操作者により入力された操作に基づく前記遠隔操作対象の動作に基づいて、前記第2操作者による操作内容を、前記第1コントローラを介して前記第1操作者に伝達するための第2フィードバック情報を生成する、
請求項1に記載の遠隔操作制御システム。
【請求項3】
前記第1操作者のための第1表示部、あるいは、前記第2操作者のための第2表示部に表示させる画像データであって、前記第1操作者により入力された操作と前記第2操作者により入力された操作との比較結果を示す比較画像を生成する比較画像生成部と、をさらに備える、
請求項1あるいは2に記載の遠隔操作制御システム。
【請求項4】
前記制御情報生成部は、前記第1操作者による遠隔操作の内容と前記第2操作者による遠隔操作の内容とを合成した結果に基づいて、前記制御情報を生成する、
請求項1から3のうちいずれか一項に記載の遠隔操作制御システム。
【請求項5】
前記制御情報生成部は、前記第1操作者による遠隔操作の内容と前記第2操作者による遠隔操作の内容とを合成する際に、前記第1操作者に比べて前記第2操作者の操作を優先させた前記制御情報を生成する、
請求項4に記載の遠隔操作制御システム。
【請求項6】
前記フィードバック情報生成部は、
前記遠隔操作対象に搭載されたセンサによる検出結果に基づいて、前記遠隔操作対象側において得られる感覚あるいは感触を、前記第1コントローラを介して前記第1操作者に伝達するための第3フィードバック情報を生成し、
前記遠隔操作対象に搭載されたセンサによる検出結果に基づいて、前記遠隔操作対象側において得られる感覚あるいは感触を、前記第2コントローラを介して前記第2操作者に伝達するための第4フィードバック情報を生成する、
請求項1から5のうちいずれか一項に記載の遠隔操作制御システム。
【請求項7】
コンピュータが、
現実の物体あるいは仮想世界の仮想物体である遠隔操作対象を操作者が遠隔操作する遠隔操作制御において、
前記遠隔操作対象に対する操作を受け付ける第1コントローラを介して第1操作者により入力された操作を示す第1操作情報と、前記遠隔操作対象に対する操作を受け付ける第2コントローラを介して第2操作者により入力された操作を示す第2操作情報と、を取得し、
取得された前記第1操作情報と前記第2操作情報とに基づいて、前記遠隔操作対象を動作させる制御情報を生成し、
前記制御情報に基づいて、前記遠隔操作対象の動作内容を前記第1コントローラにフィードバックする第1フィードバック情報を生成し、前記遠隔操作対象の動作内容を前記第2コントローラにフィードバックする第2フィードバック情報を生成する、
遠隔操作制御方法。
【請求項8】
現実の物体あるいは仮想世界の仮想物体である遠隔操作対象を操作者が遠隔操作する遠隔操作制御において、
コンピュータに、
前記遠隔操作対象に対する操作を受け付ける第1コントローラを介して第1操作者により入力された操作を示す第1操作情報と、前記遠隔操作対象に対する操作を受け付ける第2コントローラを介して第2操作者により入力された操作を示す第2操作情報と、を取得させ、
取得された前記第1操作情報と前記第2操作情報とに基づいて、前記遠隔操作対象を動作させる制御情報を生成させ、
前記制御情報に基づいて、前記遠隔操作対象の動作内容を前記第1コントローラにフィードバックする第1フィードバック情報を生成し、前記遠隔操作対象の動作内容を前記第2コントローラにフィードバックする第2フィードバック情報を生成させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、遠隔操作制御システム、遠隔操作制御方法、およびプログラムに関する。
【背景技術】
【0002】
近年、操作者がロボットなどの遠隔操作対象を遠隔操作する技術が知られている。例えば、遠隔操作の権限を切り替えて、複数の操作者が交代して同一のロボットを遠隔操作するものが知られている(特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の技術では、同一の遠隔操作対象を複数人で操作し、同一の遠隔操作対象に対する他の操作者による操作を体感することはできなかった。
【0005】
本発明の態様は、このような事情を考慮してなされたものであり、同一の遠隔操作対象に対する他の操作者による操作を体感することができる遠隔操作制御システム、遠隔操作制御方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
この発明に係る遠隔操作制御システム、遠隔操作制御方法、およびプログラムは、以下の構成を採用した。
(1):この発明の一態様に係る遠隔操作制御システムは、現実の物体あるいは仮想世界の仮想物体である遠隔操作対象を操作者が遠隔操作する遠隔操作制御システムにおいて、前記遠隔操作対象に対する操作を受け付ける第1コントローラを介して第1操作者により入力された操作を示す第1操作情報と、前記遠隔操作対象に対する操作を受け付ける第2コントローラを介して第2操作者により入力された操作を示す第2操作情報と、を取得する情報取得部と、前記情報取得部が取得した前記第1操作情報と前記第2操作情報とに基づいて、前記遠隔操作対象を動作させる制御情報を生成する制御情報生成部と、前記制御情報に基づいて、前記遠隔操作対象の動作内容を前記第1コントローラにフィードバックする第1フィードバック情報を生成し、前記遠隔操作対象の動作内容を前記第2コントローラにフィードバックする第2フィードバック情報を生成するフィードバック情報生成部と、を備えるものである。
【0007】
(2):上記(1)の態様において、前記フィードバック情報生成部は、前記第1操作者により入力された操作に基づく前記遠隔操作対象の動作に基づいて、前記第1操作者による操作内容を、前記第2コントローラを介して前記第2操作者に伝達するための第1フィードバック情報を生成し、前記第2操作者により入力された操作に基づく前記遠隔操作対象の動作に基づいて、前記第2操作者による操作内容を、前記第1コントローラを介して前記第1操作者に伝達するための第2フィードバック情報を生成する、ものである。
【0008】
(3):上記(1)あるいは(2)の態様において、前記第1操作者のための第1表示部、あるいは、前記第2操作者のための第2表示部に表示させる画像データであって、前記第1操作者により入力された操作と前記第2操作者により入力された操作との比較結果を示す比較画像を生成する比較画像生成部と、をさらに備える、ものである。
【0009】
(4):上記(1)から(3)のうちのいずれかの態様において、前記制御情報生成部は、前記第1操作者による遠隔操作の内容と前記第2操作者による遠隔操作の内容とを合成した結果に基づいて、前記制御情報を生成する、ものである。
【0010】
(5):上記(4)の態様において、前記制御情報生成部は、前記第1操作者による遠隔操作の内容と前記第2操作者による遠隔操作の内容とを合成する際に、前記第1操作者に比べて前記第2操作者の操作を優先させた前記制御情報を生成する、ものである。
【0011】
(6):上記(1)~(5)のうち何れか一つの態様において、前記フィードバック情報生成部は、前記遠隔操作対象に搭載されたセンサによる検出結果に基づいて、前記遠隔操作対象側において得られる感覚あるいは感触を、前記第1コントローラを介して前記第1操作者に伝達するための第3フィードバック情報を生成し、前記遠隔操作対象に搭載されたセンサによる検出結果に基づいて、前記遠隔操作対象側において得られる感覚あるいは感触を、前記第2コントローラを介して前記第2操作者に伝達するための第1フィードバック情報を生成する、ものである。
【0012】
(7):この発明の他の態様に係る遠隔操作制御方法は、コンピュータが、現実の物体あるいは仮想世界の仮想物体である遠隔操作対象を操作者が遠隔操作する遠隔操作制御において、前記遠隔操作対象に対する操作を受け付ける第1コントローラを介して第1操作者により入力された操作を示す第1操作情報と、前記遠隔操作対象に対する操作を受け付ける第2コントローラを介して第2操作者により入力された操作を示す第2操作情報と、を取得し、取得された前記第1操作情報と前記第2操作情報とに基づいて、前記遠隔操作対象を動作させる制御情報を生成し、前記制御情報に基づいて、前記遠隔操作対象の動作内容を前記第1コントローラにフィードバックする第1フィードバック情報を生成し、前記遠隔操作対象の動作内容を前記第2コントローラにフィードバックする第2フィードバック情報を生成する、遠隔操作制御方法である。
【0013】
(8):この発明の他の態様に係るプログラムは、現実の物体あるいは仮想世界の仮想物体である遠隔操作対象を操作者が遠隔操作する遠隔操作制御において、コンピュータに、前記遠隔操作対象に対する操作を受け付ける第1コントローラを介して第1操作者により入力された操作を示す第1操作情報と、前記遠隔操作対象に対する操作を受け付ける第2コントローラを介して第2操作者により入力された操作を示す第2操作情報と、を取得させ、取得された前記第1操作情報と前記第2操作情報とに基づいて、前記遠隔操作対象を動作させる制御情報を生成させ、前記制御情報に基づいて、前記遠隔操作対象の動作内容を前記第1コントローラにフィードバックする第1フィードバック情報を生成し、前記遠隔操作対象の動作内容を前記第2コントローラにフィードバックする第2フィードバック情報を生成させる、プログラムである。
【発明の効果】
【0014】
上記(1)~(8)の態様によれば、同一の遠隔操作対象に対する他の操作者による操作を体感することができる。
上記(2)によれば、一方の操作者の遠隔操作によるロボット等の動作を、他方の操作者に伝達することができる。
上記(3)によれば、一方の操作者は、他方の操作者により修正された自身の誤操作や、自分の操作と他方の操作者による操作との違いなどを画像で確認することができる。
上記(4)によれば、二人以上の操作者による遠隔操作に従って、遠隔操作対象を動作させることができ、例えば新人の作業をリアルタイムに熟練者が指導することが可能となる。
上記(5)によれば、一方の操作者による遠隔操作よりも他方の操作者による遠隔操作を遠隔操作対象の動作に反映することができ、一方の操作者による遠隔操作を他方の操作者による遠隔操作に修正することができる。
上記(6)によれば、遠隔操作対象を用いた遠隔操作ではなく、操作者が実際に操作物体を操作した場合に得られる感覚や感触を、操作者に伝達することができる。
【図面の簡単な説明】
【0015】
【
図1】本実施形態に係る遠隔操作制御システムの概要を示す図である。
【
図2】第1操作者が作業する作業空間に設置される構成の機能ブロック図である。
【
図4】ロボット遠隔操作制御装置の機能ブロック図である。
【
図6】ロボット遠隔操作制御システムにおける処理の一例を示すシーケンス図である。
【
図7】ロボット遠隔操作制御装置による処理の一例を示すフローチャートである。
【
図8】ロボット遠隔操作制御システムにおける処理の他の例を示すシーケンス図である。
【
図9】ロボット遠隔操作制御装置による処理の他の例を示すフローチャートである。
【発明を実施するための形態】
【0016】
以下、図面を参照し、本発明の遠隔操作制御システム、遠隔操作制御方法、およびプログラムの実施形態について説明する。なお、以下の説明に用いる図面では、各部材を認識可能な大きさとするため、各部材の縮尺を適宜変更している。
【0017】
<概要>
図1は、本実施形態に係る遠隔操作制御システム1の概要を示す図である。遠隔操作制御システム1は、例えば、第1HMD(ヘッドマウントディスプレイ)10と、第1コントローラ20と、第1環境センサ30と、第1端末装置40と、第2HMD50と、第2コントローラ60と、第2環境センサ70と、第2端末装置80と、ロボット100と、第3環境センサ200と、ロボット遠隔操作制御装置300とを備える。
【0018】
例えば、第1HMD10、第1コントローラ20、および第1環境センサ30は、近距離無線通信を介して、第1端末装置40と接続されている。第1端末装置40は、ネットワークNWを介して、ロボット100、第3環境センサ200、およびロボット遠隔操作制御装置300と接続されている。また、第2HMD50、第2コントローラ60、および第2環境センサ70は、例えば、近距離無線通信を介して、第2端末装置80と接続されている。第2端末装置80は、ネットワークNWを介して、ロボット100、第3環境センサ200、およびロボット遠隔操作制御装置300と接続されている。ネットワークNWは、例えば、インターネット、WAN(Wide Area Network)、LAN(Local1 Area Network)、プロバイダ装置、無線基地局などを含む。
【0019】
なお、この構成に限られず、第1端末装置40と第2端末装置80とは省略されてもよい。この場合、第1HMD10、第1コントローラ20、第1環境センサ30、第2HMD50、第2コントローラ60、および第2環境センサ70は、ネットワークNWを介してロボット100、第3環境センサ200、およびロボット遠隔操作制御装置300と直接的に接続されてもよい。
【0020】
ロボット100、第3環境センサ200、およびロボット遠隔操作制御装置300は、例えば、無線または有線の通信ネットワークを介して接続されている。これに限られず、ロボット100、第3環境センサ200、およびロボット遠隔操作制御装置300は、通信ネットワークを介さずに、直接有線で接続されてもよい。
【0021】
第1HMD10と第1コントローラ20は、例えば新人A(第1操作者の一例)が装着する装置であり、第2HMD50と第2コントローラ60は、例えば熟練者B(第2操作者の一例)が装着する装置である。第1コントローラ20と第2コントローラ60は、例えば、触覚データグローブであり、操作者の手に装着される。第1コントローラ20と第2コントローラ60は、それぞれが備えるセンサによって方位や各指の動きや手の動きや腕の動きなどを検出し、検出結果を示す情報(以下、操作情報と記す)を、ロボット遠隔操作制御装置300に送信する。操作情報には、新人Aによる操作を示す情報や、熟練者Bによる操作を示す情報などが含まれる。
【0022】
新人Aが作業する作業空間には、例えば、第1環境センサ30と第1端末装置40とが設置されている。第1環境センサ30は、例えば、通信機能とRBGカメラと深度センサを備える専用装置である。第1環境センサ30は、新人Aの作業を撮影、検出できる位置に設置される。第1端末装置40は、例えば、通信機能を備えるタブレット端末やパーソナルコンピュータである。これに限られず、第1環境センサ30は、例えば、第1端末装置40に取り付けられていてもよく、第1環境センサ30が第1端末装置40の機能を備える構成であってもよい。
【0023】
熟練者Bが作業する作業空間には、例えば、第2環境センサ70と第2端末装置80とが設置されている。第2環境センサ70は、例えば、通信機能とRBGカメラと深度センサを備える専用装置である。第2環境センサ70は、熟練者Bの作業を撮影、検出できる位置に設置される。第2端末装置80は、例えば、通信機能を備えるタブレット端末やパーソナルコンピュータである。これに限られず、第2環境センサ70は、例えば、第2端末装置80に取り付けられていてもよく、第2環境センサ70が第2端末装置80の機能を備える構成であってもよい。
【0024】
第3環境センサ200は、例えば、通信機能とRBGカメラと深度センサを備える専用装置であり、ロボット100の作業を撮影、検出できる位置に設置されている。なお、第3環境センサ200は、ロボット100が備えていてもよく、ロボット100に取り付けられていてもよい。
【0025】
例えば、新人Aは、第1HMD10に表示された画像を見ながら第1コントローラ20を装着している手や指を動かすことで、ロボット100を遠隔操作する。また、熟練者Bは、第2HMD50に表示された画像を見ながら第2コントローラ60を装着している手や指を動かすことで、ロボット100を遠隔操作する。本実施形態において、新人Aは、ロボット100を遠隔操作して、製作に技術を要する工芸品等の物体を作成する作業を行う作業者である。熟練者Bは、新人Aの操作中や操作の前後に、ロボット100を遠隔操作することによって、新人Aに熟練者Bによる手本を体感させ、新人Aによる作業を修正するなどの指導を行う指導者である。なお、遠隔操作において、新人Aと熟練者Bは、ロボット100の動作を直接視認できないが、ロボット100側の映像を第1HMD10や第2HMD50で間接的に視認できる状態である。
【0026】
ロボット100は、現実の物体である遠隔操作対象の一例である。遠隔操作対象は、これに限られず、仮想世界の仮想物体であってもよい。例えば、二次元あるいは三次元のアニメーションなどの仮想世界において出現する仮想物体のロボットやアバターが、遠隔操作対象であってもよい。以下、遠隔操作対象がロボット100である例について説明する。遠隔操作対象が仮想物体である例については、ロボット100を動作させるための処理を、仮想世界において仮想物体を動作させるための処理と読み替えればよい。つまり、ロボット遠隔操作制御装置300は、仮想世界において仮想物体を動作させるための画像処理部などの構成を備え、第1コントローラ20や第2コントローラ60は仮想世界における仮想物体を操作するための構成を備えてもよい。
【0027】
ロボット遠隔操作制御装置300は、新人Aや熟練者Bにより遠隔操作されたロボット100の動作を、第1コントローラ20や第2コントローラ60にフィードバックする。これにより、第1コントローラ20は、熟練者Bの遠隔操作によるロボット100の動作を再現し、第2コントローラ60は、新人Aの遠隔操作によるロボット100の動作を再現する。例えば、新人Aが操作物体を変形させる遠隔操作を行う際に熟練者Bがもっと力をいれるように指導するシーンにおいて、ロボット100は、熟練者Bの遠隔操作に従って、ロボット100の操作物体にロボットアームを添えた時にもっと操作物体に対して力を入れる動作を実行する。このようなロボット100が実行した動作を、第1コントローラ20や第2コントローラ60にフィードバックすることで、熟練者Bによる遠隔操作の内容を新人Aにフィードバックし、新人Aの作業を熟練者Bが手を添えて直接指導しているかのような感覚や感触を新人Aに与えることができる。
【0028】
こうすることで、熟練者Bは、第2コントローラ60を介して新人Aの操作を体感することができ、熟練者Bは、新人Aの操作を修正する操作を第2コントローラ60に入力することができる。よって、新人Aは、第1コントローラ20を介して熟練者Bの操作を体感し、熟練者Bやロボット100から離れた場所にいながら、熟練者Bの指導を受けながら、ロボット100を遠隔操作することができる。
【0029】
なお、詳細については後述するが、ロボット遠隔操作制御装置300は、ロボット100側において得られる感覚や感触を新人Aや熟練者Bにフィードバックしてもよい。
【0030】
図2は、第1操作者が作業する作業空間に設置される構成の機能ブロック図である。なお、熟練者Bが作業する作業空間に設置される各構成も同様の機能を備えており、これらについての詳細な説明を省略する。
【0031】
<HMD>
第1HMD10は、例えば、表示部11、視線検出部12、センサ13、制御部14、通信部15、および収音部16を備える。第1HMD10は、ロボット遠隔操作制御装置300から受信した画像データに基づいて、ロボット100を遠隔操作するための画像を表示する。例えば、第1HMD10は、ロボット100の状態画像を表示する。ロボット100の状態画像とは、ロボット100による動作を示す画像であって、例えば、ロボット100の手元を撮影した画像などが含まれる。
【0032】
表示部11は、例えば、LCDや有機EL表示装置などである。視線検出部12は、新人Aの視線の動きを検出する。視線検出部12は、新人Aの視線情報を検出する針検出器を備えていてもよい。センサ13は、例えば、加速度センサ、ジャイロスコープ等である。センサ13は、新人Aの頭部の動きや傾きを検出する。
【0033】
例えば、制御部14は、ロボット遠隔操作制御装置300が送信した画像データに基づいて、例えばロボットの状態画像を表示部11に表示させる。
【0034】
例えば、制御部14は、視線検出部12による検出結果に基づいて、新人Aの視線の動きを示す情報(以下、視線情報と記す)を生成する。また、制御部14は、センサ13による検出結果に基づいて、新人Aの頭部の動きや傾きを示す情報(以下、頭部動作情報と記す)を生成する。視線情報や頭部動作情報は、後述の操作者センサ値に含まれる情報である。制御部14は、生成した視線情報と頭部動作情報とを、第1端末装置40を介してロボット遠隔操作制御装置300に送信させる。
【0035】
通信部15は、例えば、Bluetooth(登録商標)など利用するための無線モジュールであって、アンテナおよび送受信装置などを有する。通信部15は、制御部14による制御に従い、近距離無線通信を介して、第1端末装置40と通信する。これに限られず、通信部15は、NIC等の通信インターフェースを含み、ネットワークNWを介して、第1端末装置40やロボット100やロボット遠隔操作制御装置300と通信してもよい。
【0036】
収音部16は、例えばマイクロホンであり、収音した音響信号を制御部14に出力する。制御部14は、通信部15を用いて、音響信号をロボット遠隔操作制御装置300に送信させる。制御部14は、ロボット遠隔操作制御装置300から音声情報を受信した場合、スピーカ17から出力させる。ロボット遠隔操作制御装置300は、例えば、第1HMD10を介して新人Aの会話の音響信号を取得した場合、新人Aの会話の音声信号を、第2HMD50を介して熟練者Bに提供する。また、ロボット遠隔操作制御装置300は、例えば、第2HMD50を介して熟練者Bの会話の音響信号を取得した場合、熟練者Bの会話の音声信号を、第1HMD10を介して新人Aに提供する。
【0037】
<コントローラ>
第1コントローラ20は、例えば、センサ21、制御部22、通信部23、およびフィードバック手段24を備える。
【0038】
センサ21は、例えば、加速度センサ、ジャイロスコープセンサ、磁力センサ等である。制御部22は、例えば、センサ21に含まれる複数種類のセンサによって検出された検出結果に基づいて、各指の動きをトラッキングする。また、制御部22は、センサ21による検出結果に基づいて、方位や各指の動きや手の動き等の操作者の腕部の姿勢や位置を示す情報(以下、操作者腕部情報と記す)を取得する。操作者腕部情報には、例えば、手先位置・姿勢情報、各指の角度情報、肘の位置・姿勢情報、各部の動きをトラッキングした情報等のヒトの腕部全般におよぶ情報が含まれる。操作者腕部情報は、操作情報の一例である。制御部22は、取得した操作者腕部情報を、第1端末装置40を介してロボット遠隔操作制御装置300に送信させる。
【0039】
通信部23は、Bluetooth(登録商標)など利用するための無線モジュールであって、アンテナおよび送受信装置などを有する。通信部23は、制御部22による制御に従い、近距離無線通信を介して、第1端末装置40と通信する。これに限られず、通信部23は、NIC等の通信インターフェースを含み、ネットワークNWを介して、第1端末装置40やロボット100やロボット遠隔操作制御装置300と通信してもよい。
【0040】
フィードバック手段24は、制御部22の制御に従って、操作者にロボット100のエンドエフェクタからのフィードバック情報(圧力、温度等)をフィードバックする。
【0041】
フィードバック手段24は、例えば、ロボット100側において得られる感覚や感触を再現する手段と、ロボット100による動作を再現する手段とを備える。ロボット100側において得られる感覚や感触を再現する手段は、例えば、ロボット100が作業している際にロボットハンドが物体などに接触しているときの感触や感覚を再現する手段である。ロボット100による動作を再現する手段は、例えば、ロボット100のロボットアームが動いた方向や速さなどを再現する手段である。
【0042】
例えば、フィードバック手段24は、振動を与える手段(不図示)、空気圧を与える手段(不図示)、手の動きを拘束する手段(不図示)、温度を感じさせる手段(不図示)、堅さや柔らかさを感じさせる手段(不図示)等を備える。フィードバック手段24は、制御部22による制御に従って、ロボット100からフィードバックされたロボット100側において得られる感覚や感触や、ロボット100による動作を再現する。こうすることで、第1コントローラ20は、新人Aや熟練者Bの遠隔操作を新人Aに伝達することができる。
【0043】
制御部22は、ロボット遠隔操作制御装置300から受信したフィードバック情報に基づいて、フィードバック手段24を制御する。フィードバック情報の詳細については後述する。
【0044】
<環境センサ>
第1環境センサ30は、例えば、撮影装置31、センサ32、物体位置検出部33、制御部34、および通信部35を備える。なお、第2環境センサ70や第3環境センサ200も同様の機能を備えており、これらについての詳細な説明は省略する。
【0045】
撮影装置31は、例えばRGBカメラであり、センサ32は、例えば深度センサである。なお、撮影装置31とセンサ32は、距離センサであってもよい。第1環境センサ30において、撮影装置31とセンサ32の位置関係は既知である。
【0046】
物体位置検出部33は、撮影装置31により撮影された画像と、センサ32により検出された検出結果とに基づいて、撮影画像における対象物体の三次元位置と大きさ形状等を周知の手法で検出する。例えば、物体位置検出部33は、物体位置検出部33が記憶するパターンマッチングのモデル等を参照して、撮影装置31が撮影した画像に対して画像処理(エッジ検出、二値化処理、特徴量抽出、画像強調処理、画像抽出、パターンマッチング処理等)を行って物体の位置を推定する。なお、物体位置検出部33は、撮影された画像から複数の物体が検出された場合、物体毎に位置を検出する。
【0047】
制御部34は、物体位置検出部33により検出された物体の位置を示す情報と、撮影装置31により撮影された画像と、センサ32により検出されたセンサ値を、第1端末装置40を介してロボット遠隔操作制御装置300に送信させる。物体の位置を示す情報、撮影装置31により撮影された画像、およびセンサ32により検出されたセンサ値は、後述の環境センサ値に含まれる。
【0048】
通信部35は、Bluetooth(登録商標)など利用するための無線モジュールであって、アンテナおよび送受信装置などを有する。通信部35は、近距離無線通信を介して、第1端末装置40と通信する。これに限られず、通信部35は、NIC等の通信インターフェースを含み、ネットワークNWを介して、第1端末装置40やロボット100やロボット遠隔操作制御装置300と通信してもよい。
【0049】
なお、第1環境センサ30は、モーションキャプチャ装置であってもよく、モーションキャプチャによって物体の位置情報を検出するようにしてもよく、物体に位置情報送信部を備えるGPS受信装置(不図示)が取り付けられていてもよい。この場合、GPS受信装置は、位置情報をロボット遠隔操作制御装置300へ送信するようにしてもよい。
【0050】
<ロボットの構成例>
図3は、ロボット100の機能ブロック図である。ロボット100は、例えば、通信部110と、収音部120と、センサ130と、駆動部140と、ロボットアーム150と、電源160と、記憶部170と、制御部180とを備える。
【0051】
通信部110は、例えば、NIC等の通信インターフェースを含む。通信部110は、制御部180による制御に従い、ネットワークNWを介して、第1端末装置40、第2端末装置80、第3環境センサ200、およびロボット遠隔操作制御装置300と接続する。通信部110は、Bluetooth(登録商標)など利用するための無線モジュールであって、アンテナおよび送受信装置などを有し、近距離無線通信を介して、第3環境センサ200、およびロボット遠隔操作制御装置300と通信してもよい。
【0052】
収音部120は、例えば複数のマイクロホンを備えるマイクロホンアレイである。収音部120は、収音した音響信号を制御部180に出力する。収音部120は、音声認識処理機能を備えていてもよい。この場合、収音部120は、音声認識結果を制御部180に出力する。
【0053】
センサ130は、例えば、加速度センサ、ジャイロスコープセンサ、磁力センサ、各関節エンコーダ等である。例えば、センサ130は、ロボット100の各関節や頭部等に取り付けられている。センサ130は、検出した検出結果を示す情報を、制御部180に出力する。
【0054】
駆動部140は、制御部180による制御に従って、ロボット100の各部(腕、指、足、頭、胴、腰等)を駆動する。駆動部140は、例えば、ロボットアーム150を駆動する。ロボットアーム150は、例えば、アクチュエータ、ギア、人工筋等を備える。また、ロボットアーム150は、ハンドセンサ151を備える。ハンドセンサ151は、例えば、温度を感じる手段(不図示)、堅さや柔らかさを感じる手段(不図示)等を備える。
【0055】
電源160は、ロボット100の各部に電力を供給する。電源160は、例えば充電式のバッテリや充電回路を備えていてもよい。
【0056】
記憶部170は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)などによって実現される。記憶部170は、プロセッサが実行するプログラムを格納する他、ロボット100を動作させるための動作パラメータなどの各種情報を格納する。
【0057】
制御部180は、遠隔操作によりロボット100を動作させる制御と、遠隔操作によらずにロボット100を動作させる制御とを実行する。前者の場合、制御部180は、ロボット遠隔操作制御装置300により生成された制御情報に従って、ロボット100を動作させる。
【0058】
後者の場合、制御部180は、収音部120が収音した音響信号に対して音声認識処理(発話区間検出、音源分離、音源定位、雑音抑圧、音源同定等)を行う。音声認識した結果にロボット100に対する動作指示が含まれている場合、制御部180は、音声による動作指示に基づいてロボット100の動作を制御する。また、制御部180は、記憶部170が記憶する情報に基づいて、第3環境センサ200等が撮影した画像に対して画像処理(エッジ検出、二値化処理、特徴量抽出、画像強調処理、画像抽出、パターンマッチング処理等)を行い、音声認識結果と画像処理結果に基づいてロボット100の動作を制御するようにしてもよい。
【0059】
<ロボット遠隔操作制御装置300の構成例>
図4は、ロボット遠隔操作制御装置300の機能ブロック図である。ロボット遠隔操作制御装置300は、例えば、通信部310と、入力部320と、出力部330と、記憶部340と、処理部350とを備える。
【0060】
通信部310は、例えば、NIC等の通信インターフェースを含む。通信部310は、処理部350による制御に従い、ネットワークNWを介して、第1端末装置40、第2端末装置80、ロボット100と、および第3環境センサ200と通信を行う。
【0061】
入力部320は、例えば、各種キー、ボタン、ダイヤルスイッチ、マウスなどのうち一部または全部を含む。出力部330は、例えば、LCDや有機EL表示装置や、スピーカ、プロジェクタなどを含む。記憶部340は、例えば、RAM、ROM、HDDなどによって実現される。記憶部340は、プロセッサが実行するプログラムを格納する他、ロボット情報341、フィードバックパラメータ情報342等を格納する。各情報の詳細については後述する。
【0062】
処理部350は、例えば、情報取得部351と、意図推定部352と、ロボット操作決定部353と、制御情報生成部354と、フィードバック情報生成部355と、ロボット状態画像生成部356と、比較画像生成部357と、通信制御部358とを備える。これらの機能部のうち一部または全部は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)等のプロセッサがプログラム(ソフトウェア)を実行することにより実現される。また、これらの構成要素のうち一部または全部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)等のハードウェア(回路部;circuitryを含む)によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予めロボット遠隔操作制御装置300の記憶部340に格納されていてもよいし、DVDやCD-ROM等の着脱可能な記憶媒体に格納されており、記憶媒体がドライブ装置に装着されることで記憶部340にインストールされてもよい。
【0063】
例えば、情報取得部351は、ネットワークNWを介して第1端末装置40から、第1操作情報を取得する。第1操作情報とは、遠隔操作対象であるロボット100に対する操作を受け付ける第1コントローラ20を介して、新人Aにより入力された操作を示す情報である。また、情報取得部351は、ネットワークNWを介して第2端末装置80から、第2操作情報を取得する。第2操作情報とは、遠隔操作対象であるロボット100に対する操作を受け付ける第2コントローラ60を介して、熟練者Bにより入力された操作を示す情報である。第1操作情報と第2操作情報には、例えば、操作者腕部情報などが含まれる。
【0064】
また、情報取得部351は、ネットワークNWを介して第1端末装置40から、第1操作者センサ値情報を取得する。第1操作者センサ値情報とは、第1操作者である新人Aの状態変化をセンサによって検出した検出結果を示す情報であって、例えば、第1HMD10や第1コントローラ20に搭載されているセンサの検出結果を示す情報を含む。また、情報取得部351は、ネットワークNWを介して第2端末装置80から、第2操作者センサ値情報を取得する。第2操作者センサ値情報とは、第2操作者である熟練者Bの状態変化をセンサによって検出した検出結果を示す情報であって、例えば、第2HMD50や第2コントローラ60に搭載されているセンサの検出結果を示す情報を含む。第1操作者センサ値情報と第2操作者センサ値情報には、例えば、第1HMD10あるいは第2HMD50により検出された視線情報や頭部動作情報などが含まれる。
【0065】
また、情報取得部351は、ネットワークNWを介して第1端末装置40から、第1環境センサ値情報を取得する。第1環境センサ値情報とは、第1操作者である新人Aがロボット100を遠隔操作している周辺の環境変化をセンサによって検出した検出結果を示す情報であって、例えば、第1環境センサ30に搭載されているセンサの検出結果を示す情報を含む。また、情報取得部351は、ネットワークNWを介して第2端末装置80から、第2環境センサ値情報を取得する。第2環境センサ値情報とは、第2操作者である熟練者Bがロボット100を遠隔操作している周辺の環境変化をセンサによって検出した検出結果を示す情報であって、例えば、第2環境センサ70に搭載されているセンサの検出結果を示す情報を含む。また、情報取得部351は、ネットワークNWを介して第3環境センサ200から、第3環境センサ値情報を取得する。第3環境センサ値情報とは、第1操作者や第2操作者等により遠隔操作されているロボット100周辺の環境変化をセンサによって検出した検出結果を示す情報であって、例えば、第3環境センサ200に搭載されているセンサの検出結果を示す情報を含む。第1環境センサ値情報、第2環境センサ値情報、第3環境センサ値情報には、例えば、物体位置情報、撮影装置31により撮影された画像、およびセンサ32により検出されたセンサ値などが含まれる。
【0066】
意図推定部352は、情報取得部351が取得した情報に基づいて、操作者の動作意図を推定する。例えば、意図推定部352は、視線情報、操作者腕部情報、および頭部動作情報のうちの少なくとも1つを用いて操作者の動作意図を推定する。なお、意図推定部352は、環境センサ値も用いて意図推定するようにしてもよい。
【0067】
また、意図推定部352は、情報取得部351が取得した操作者センサ値と視線情報を学習済みのモデルに入力することで、操作者が行おうとしている動作の意図を推定するようにしてもよい。このような推定結果に基づいて制御情報を生成し、生成された制御情報に基づいてロボット100を制御することで、ロボット100は、操作者が正確な位置合わせの遠隔操作をしない場合であっても、正確な位置合わせを実行することができる。よって、高い精度でロボット100に作業を行わせることができる。なお、学習済みのモデルは、例えば、予め操作者センサ値と視線情報を入力し、操作者が行おうとしている作業を教師データとして学習されたデータである。
【0068】
ロボット操作決定部353は、意図推定部352により推定された動作意図と、ロボット100のセンサ130により検出された検出結果、第3環境センサ200の撮影装置が撮影した画像を画像処理した結果などに基づいて、ロボット100が操作する操作物体に対する操作方法を決定する。操作物体に対する操作方法には、例えば、操作物体を把持する把持方法、操作物体を動かすための移動方法、操作物体を変形させるための変形方法など、様々な操作方法が含まれる。
【0069】
制御情報生成部354は、記憶部340を参照し、情報取得部351により取得された第1操作情報あるいは第2操作情報に基づいて、遠隔操作対象であるロボット100を動作させる制御情報を生成する。例えば、制御情報生成部354は、ロボット情報341を参照し、操作者による操作に応じた動作パラメータを取得し、取得した動作パラメータに基づいてロボット100に動作させる制御情報を生成する。ロボット情報341は、例えば、操作量に応じた動作パラメータを対応付けた情報である。
【0070】
制御情報生成部354は、ロボット操作決定部353により決定された操作方法に基づいて、ロボット100を動作させる制御情報を生成してもよい。こうすることにより、操作者による意図を推定し、推定結果に基づいて、操作者の意図により近い動作をロボット100に実行させることができる。
【0071】
また、制御情報生成部354は、第1操作情報に加えて、第1操作者センサ情報や第1環境センサ値情報に基づいて、ロボット100を動作させる制御情報を生成してもよい。また、制御情報生成部354は、第2操作情報に加えて、第2操作者センサ情報や第2環境センサ値情報に基づいて、ロボット100を動作させる制御情報を生成してもよい。
【0072】
さらに、制御情報生成部354は、第1操作者である新人Aによる遠隔操作の内容と、第2操作者である熟練者Bによる遠隔操作の内容とを合成した結果に基づいて、ロボット100を動作させる制御情報を生成してもよい。例えば、制御情報生成部354は、第1操作情報に応じた動作パラメータと第2操作情報に応じた動作パラメータとの合計値に基づいて、制御情報を生成する。これに限られず、制御情報生成部354は、第1操作情報に応じた動作パラメータから第2操作情報に応じた動作パラメータを減算した値に基づいて、制御情報を生成してもよい。なお、第1操作者である新人Aによる遠隔操作の内容と、第2操作者である熟練者Bによる遠隔操作の内容とを合成する手法をこれに限られず、既存の様々な手法を採用することができる。こうすることで、二人以上の操作者による遠隔操作に従って、ロボット100を動作させることができる。よって、新人Aの作業をリアルタイムに熟練者Bが指導することが可能となる。
【0073】
また、制御情報生成部354は、第1操作者による遠隔操作の内容と、第2操作者による遠隔操作の内容とを合成する際に、第1操作者に比べて、第2操作者の操作を優先させた制御情報を生成してもよい。例えば、制御情報生成部354は、第1操作者による操作と第2操作者による操作とが同時に実行された場合、第1操作者による操作に基づく動作パラメータに対して第1の重み付けを実行し、第2操作者による操作に基づく動作パラメータに対して第1の重み付けよりも大きい第2重み付けを実行して、制御情報を生成する。第1の重み付けは0であってもよく、第1操作者による操作が制御情報に反映されないようにしてもよい。また、第1操作者による操作方向と第2操作者による操作方向とが異なる場合、制御情報生成部354は、第2操作者による操作方向に動作させるように制御情報を生成してもよい。こうすることで、第1操作者による遠隔操作よりも第2操作者による遠隔操作をロボット100の動作に反映することができ、第1操作者による遠隔操作を第2操作者による遠隔操作に修正することができる。
【0074】
また、制御情報生成部354は、第1操作者による遠隔操作の内容と第2操作者による遠隔操作の内容とを合成する際に、第1操作者による遠隔操作タイミングと第2操作者による遠隔操作タイミングとを連続的に実行するようにしてもよい。例えば、制御情報生成部354は、第1操作者による遠隔操作に応じた動作を実行した直後に第2操作者による遠隔操作に応じた動作を実行させるような制御情報を生成してもよい。こうすることで、第1操作者による遠隔操作の直後に、第2操作者による遠隔操作に修正することができる。
【0075】
フィードバック情報生成部355は、第1操作者である新人Aにより入力された操作に基づくロボット100の動作に基づいて、第1操作者による操作内容を、第2コントローラ60を介して第2操作者に伝達するための第2フィードバック情報を生成する。また、フィードバック情報生成部355は、第2操作者である熟練者Bにより入力された操作に基づく遠隔操作対象の動作に基づいて、第2操作者による操作内容を、第1コントローラ20を介して第1操作者に伝達するための第1フィードバック情報を生成する。こうすることで、一方の操作者の遠隔操作によるロボット等の動作を、他方の操作者に伝達することができる。
【0076】
例えば、フィードバック情報生成部355は、記憶部340のフィードバックパラメータ情報342を参照し、制御情報生成部354により生成された制御情報に基づいて、遠隔操作対象であるロボット100の動作内容を第1コントローラ20にフィードバックする第1フィードバック情報を生成する。また、フィードバック情報生成部355は、記憶部340のフィードバックパラメータ情報342を参照し、制御情報生成部354により生成された制御情報に基づいて、遠隔操作対象であるロボット100の動作内容を第2コントローラ60にフィードバックする第2フィードバック情報を生成する。フィードバック情報生成部355は、フィードバックパラメータ情報342を参照し、制御情報に応じたフィードバックパラメータを取得し、取得したフィードバックパラメータに基づいてフィードバック情報を生成する。フィードバックパラメータ情報342は、例えば、ロボット100の動作パラメータや操作量に応じたフィードバックパラメータを対応付けた情報である。
【0077】
例えば、第1操作者によりロボット100が遠隔操作された場合、フィードバック情報生成部355は、第1操作者による遠隔操作の内容をロボット100の動作を第2操作者にフィードバックするために、遠隔操作されたロボット100の動作を第2コントローラ60に再現させるための第2フィードバック情報を生成する。一方、第2操作者によりロボット100が遠隔操作された場合、フィードバック情報生成部355は、第2操作者による遠隔操作の内容をロボット100の動作を第1操作者にフィードバックするために、遠隔操作されたロボット100の動作を第1コントローラ20に再現させるための第1フィードバック情報を生成する。
【0078】
なお、上述した通り、第1操作者による遠隔操作の内容と、第2操作者による遠隔操作の内容との合成結果に基づいて制御情報生成部354が制御情報を生成した場合、フィードバック情報生成部355は、合成結果に基づくロボット100の動作を第1操作者と第2操作者にフィードバックするために、遠隔操作されたロボット100の動作を第1コントローラ20に再現させるための第1フィードバック情報と、遠隔操作されたロボット100の動作を第2コントローラ60に再現させるための第2フィードバック情報を生成してもよい。
【0079】
また、上述の通り、第1操作者による遠隔操作の内容と、第2操作者による遠隔操作の内容とを合成する際に、制御情報生成部354が、第1操作者に比べて第2操作者による遠隔操作を優先した制御情報を生成した場合、フィードバック情報生成部355は、ロボット100の動作を、第2操作者に比べて、第1操作者に対して優先的にフィードバックするような第1フィードバック情報を生成してもよい。例えば、フィードバック情報生成部355は、第1操作者に対するフィードバックの内容を、第2操作者に対するフィードバックの内容を比べて強調された第1フィードバック情報と第2フィードバック情報とを生成する。フィードバック内容を強調することには、例えば、振動を与えこと、より強い圧で空気圧を与えること、手の動きを拘束することなどが含まれる。
【0080】
また、フィードバック情報生成部355は、ロボット100のセンサ130やハンドセンサ151により検出された検出結果に基づいて、ロボット100側において得られる感覚や感触を、第1コントローラ20を介して第1操作者に伝達するための第3フィードバック情報を生成する。また、フィードバック情報生成部355は、ロボット100のセンサ130やハンドセンサ151により検出された検出結果に基づいて、ロボット100側において得られる感覚や感触を、第2コントローラ60を介して第2操作者に伝達するための第4フィードバック情報を生成する。こうすることで、ロボット100を用いた遠隔操作ではなく、操作者が実際に遠隔操作対象を操作した場合に得られる感覚や感触を、操作者に伝達することができる。
【0081】
ロボット状態画像生成部356は、例えば、第3環境センサ200の撮影装置31が撮影した画像に対して画像処理(エッジ検出、二値化、特徴量抽出、画像強調、画像抽出、クラスタリング処理等)を行う。
【0082】
また、ロボット状態画像生成部356は、上述した画像処理の結果を示す情報(以下、画像処理結果情報と記す)と、制御情報生成部354により生成される制御情報等に基づいて、ロボット100の手の位置や動きを推定し、操作者の手の動きを推定し、推定した結果に基づいて第1HMD10や第2HMD50に表示させるロボット状態画像を作成する。
【0083】
なお、ロボット状態画像には、ロボット遠隔操作制御装置300が行おうとしている処理に関する情報、エラー情報とのシステムの状態を示すシステム状態情報が含まれていてもよい。
【0084】
比較画像生成部357は、第1操作者により入力された操作と第2操作者により入力された操作との比較結果を示す比較画像の画像データを生成する。比較画像の画像データは、第1操作者のための第1表示部(例えば、第1HMD10の表示部)、あるいは、第2操作者のための第2表示部(例えば、第2HMD50の表示部)に表示させる画像データである。比較画像には、例えば、第1操作者による遠隔操作と第2操作者による遠隔操作との違いを表示する画像や、第1操作者による遠隔操作よりも第2操作者による遠隔操作を強調する画像などが含まれる。こうすることで、第1操作者は、第2操作者により修正された自身の誤操作や、自分の操作と第2操作者による操作との違いなどを画像で確認することができる。
【0085】
通信制御部358は、通信部310を制御して、ネットワークNWを介して第1端末装置40、第2端末装置80、ロボット100、および第3環境センサ200と通信を行う。
【0086】
<比較画像の一例>
図5は、比較画像の一例を示す図である。図示の比較画像は、例えば、操作物体500を変形する際の遠隔操作を新人Aと熟練者Bとが実行したことにより生成される比較画像の一例である。なお、図示の比較画像には、ロボット100の左手のロボットアーム150Lが表示されており、ロボット100の右手のロボットアームやその他の画像は省略されている。
【0087】
例えば、新人Aは、ロボット100を遠隔操作して、ろくろを使った湯のみ作りをする。熟練者Bは、ロボット100を遠隔操作して新人Aの湯のみ作りをサポートする。操作物体500は、例えば、ろくろに乗せられた粘土だとする。なお、新人Aと熟練者Bとが実行する作業は、これに限られず、例えば、旋盤加工や、お皿の絵付け、硝子細工作りなど、様々な作業が含まれる。
【0088】
ロボットアーム画像LA1は、第1タイミングにおいて新人Aにより遠隔操作されたときのロボットアーム150Lの状況を示す画像である。ロボットアーム画像LA2は、第2タイミングにおいて新人Aにより遠隔操作されたときのロボットアーム150Lの状況を示す画像である。ロボットアーム画像LB3は、第3タイミングにおいて熟練者Bにより遠隔操作されたときのロボットアーム150Lの状況を示す画像である。第1タイミングが最も過去のタイミングであり、第2タイミングは第1タイミングの次のタイミングであり、第3タイミングは第2タイミングの次のタイミングである。
【0089】
図示の比較画像からは、第1タイミングや第2タイミングにおける新人Aの操作を、第3タイミングにおける位置に熟練者Bが修正していることがわかる。この比較画像を第1HMD10に表示させることで、新人Aは自分の遠隔操作と熟練者Bによる遠隔操作の違いを簡単に認識することができる。また、この比較画像を第2HMD50に表示させることで、熟練者Bは、比較画像を新人Aと共有しながら口頭で作業のポイントや修正箇所を伝達することができる。
【0090】
なお、図示では、比較画像に新人Aにより遠隔操作されたときのアーム画像が2つ表示されている例を示したが、これに限られず、1つであってもよい。また、比較画像に熟練者Bにより遠隔操作されたときのアーム画像が1つ表示されている例を示したが、これに限られず、2つ以上であってもよい。
【0091】
<シーケンス図(その1)>
図6は、ロボット遠隔操作制御システム1における処理の一例を示すシーケンス図である。ここでは、第1操作者が遠隔操作した後、第2操作者が遠隔操作する例であって、操作情報に基づいてロボット100を制御する例について説明する。
【0092】
まず、第1コントローラ20は、第1操作者から入力された操作に基づいて第1操作情報を生成し(ステップS1)、第1端末装置40を介して第1操作情報をロボット遠隔操作制御装置300に送信する(ステップS2)。ロボット遠隔操作制御装置300は、受信した第1操作情報に基づいて制御情報を生成し(ステップS3)、ロボット100に送信する(ステップS4)。ロボット100は、受信した制御情報に基づいて、ロボットアーム150などを動作させる(ステップS5)。一方、ロボット遠隔操作制御装置300は、ステップS3において生成した制御情報に基づいて、第2フィードバック情報を生成し(ステップS6)、生成した第2フィードバック情報を、第2端末装置80を介して第2コントローラ60に送信する(ステップS7)。第2コントローラ60は、受信したフィードバック情報に基づいて、ステップS1における第1操作者の遠隔操作によるロボット100の動作を再現する(ステップS8)。
【0093】
次いで、第2コントローラ60は、第2操作者から入力された操作に基づいて第2操作情報を生成し(ステップS11)、第2端末装置80を介して第2操作情報をロボット遠隔操作制御装置300に送信する(ステップS12)。ロボット遠隔操作制御装置300は、受信した第2操作情報に基づいて制御情報を生成し(ステップS13)、ロボット100に送信する(ステップS14)。ロボット100は、受信した制御情報に基づいて、ロボットアーム150などを動作させる(ステップS15)。一方、ロボット遠隔操作制御装置300は、ステップS13において生成した制御情報に基づいて、第1フィードバック情報を生成し(ステップS16)、生成した第1フィードバック情報を、第1端末装置40を介して第1コントローラ20に送信する(ステップS17)。第1コントローラ20は、受信したフィードバック情報に基づいて、ステップS11における第2操作者の遠隔操作によるロボット100の動作を再現する(ステップS18)。
【0094】
<フローチャート(その1)>
図7は、ロボット遠隔操作制御装置300による処理の一例を示すフローチャートである。ここでは、第1操作者が遠隔操作した後、第2操作者が遠隔操作する例であって、操作情報に基づいてロボット100を制御する例について説明する。また、意図推定部352とロボット操作決定部353による処理や、ロボット状態画像生成部356による処理を省略している。
【0095】
まず、情報取得部351は、第1操作情報(あるいは第2操作情報)を取得したか否かを判定する(ステップS101)。第1操作情報(あるいは第2操作情報)を取得した場合、制御情報生成部354は、取得された第1操作情報(あるいは第2操作情報)に基づいてロボット100を動作させる制御情報を生成し(ステップS102)、生成した制御情報をロボット100に送信する(ステップS103)。
【0096】
次いで、フィードバック情報生成部355は、第1操作情報に基づいて制御情報が生成された場合には第2フィードバック情報を生成し、第2操作情報に基づいて制御情報が生成された場合には第1フィードバック情報を生成する(ステップS104)。そして、通信制御部358は、第2フィードバック情報を第2コントローラ60に送信し、第1フィードバック情報を第1コントローラ20に送信する(ステップS105)。
【0097】
次いで、比較画像生成部357は、第1操作情報に基づいて制御情報が生成された場合であって、その前に第2操作情報に基づいて制御情報が生成された場合には、これら第1操作者により入力された操作と第2操作者により入力された操作との比較結果を示す第1比較画像の画像データを生成する(ステップS106)。一方、第2操作情報に基づいて制御情報が生成された場合であって、その前に第1操作情報に基づいて制御情報が生成された場合、比較画像生成部357は、これら第2操作者により入力された操作と第1操作者により入力された操作との比較結果を示す第2比較画像の画像データを生成する。そして、通信制御部358は、第1比較画像の画像データを第1HMD10に送信し、第2比較画像の画像データを第2HMD50に送信する(ステップS107)。
【0098】
<シーケンス図(その2)>
図8は、ロボット遠隔操作制御システム1における処理の他の例を示すシーケンス図である。ここでは、第1操作者による遠隔操作と第2操作者による遠隔操作とが同じタイミングでなされる例であって、操作情報に基づいてロボット100を制御する例について説明する。同じタイミングには、同時に限られず、数秒間の時間差があるものも含まれる。
【0099】
まず、第1コントローラ20は、第1操作者から入力された操作に基づいて第1操作情報を生成し(ステップS21)、第1端末装置40を介して第1操作情報をロボット遠隔操作制御装置300に送信する(ステップS22)。同じタイミングで、第2コントローラ60は、第2操作者から入力された操作に基づいて第2操作情報を生成し(ステップS23)、第2端末装置80を介して第2操作情報をロボット遠隔操作制御装置300に送信する(ステップS24)。
【0100】
次いで、ロボット遠隔操作制御装置300は、受信した第1操作情報と第2操作情報に基づいて、第1操作者による遠隔操作の内容と第2操作者による遠隔操作の内容とを合成した制御情報を生成し(ステップS25)、ロボット100に送信する(ステップS26)。ロボット100は、受信した制御情報に基づいて、ロボットアーム150などを動作させる(ステップS27)。
【0101】
次いで、ロボット遠隔操作制御装置300は、ステップS25において生成した制御情報に基づいて、第2フィードバック情報を生成し(ステップS28)、生成した第2フィードバック情報を、第2端末装置80を介して第2コントローラ60に送信する(ステップS29)。第2コントローラ60は、受信したフィードバック情報に基づいて、ステップS21における第1操作者の遠隔操作によるロボット100の動作を再現する(ステップS30)。
【0102】
また、ロボット遠隔操作制御装置300は、ステップS25において生成した制御情報に基づいて、第1フィードバック情報を生成し(ステップS31)、生成した第1フィードバック情報を、第1端末装置40を介して第1コントローラ20に送信する(ステップS32)。第1コントローラ20は、受信したフィードバック情報に基づいて、ステップS23における第2操作者の遠隔操作によるロボット100の動作を再現する(ステップS33)。
【0103】
<フローチャート(その2)>
図9は、ロボット遠隔操作制御装置300による処理の他の例を示すフローチャートである。ここでは、第1操作者による遠隔操作と第2操作者による遠隔操作とが同じタイミングでなされる例であって、操作情報に基づいてロボット100を制御する例について説明する。また、意図推定部352とロボット操作決定部353による処理や、ロボット状態画像生成部356による処理を省略している。
【0104】
まず、情報取得部351は、第1操作情報および第2操作情報を取得したか否かを判定する(ステップS201)。第1操作情報および第2操作情報を取得した場合、制御情報生成部354は、取得された第1操作情報および第2操作情報に基づいて、第1操作者による遠隔操作の内容と第2操作者による遠隔操作の内容とを合成した制御情報を生成し(ステップS202)、生成した制御情報をロボット100に送信する(ステップS203)。
【0105】
次いで、フィードバック情報生成部355は、ステップS202において生成された制御情報に基づいて第1フィードバック情報および第2フィードバック情報を生成する(ステップS204)。そして、通信制御部358は、第1フィードバック情報を第1コントローラ20に送信し、第2フィードバック情報を第2コントローラ60に送信する(ステップS205)。
【0106】
次いで、比較画像生成部357は、ステップS201において取得した第1操作情報と第2操作情報とに基づいて比較画像の画像データを生成する(ステップS206)。そして、通信制御部358は、生成した比較画像の画像データを第1HMD10および第2HMD50に送信する(ステップS207)。
【0107】
上述した実施形態によれば、現実の物体あるいは仮想世界の仮想物体である遠隔操作対象を操作者が遠隔操作する遠隔操作制御システムにおいて、遠隔操作対象に対する操作を受け付ける第1コントローラ20を介して第1操作者により入力された操作を示す第1操作情報と、遠隔操作対象に対する操作を受け付ける第2コントローラ60を介して第2操作者により入力された操作を示す第2操作情報と、を取得する情報取得部351と、情報取得部351が取得した第1操作情報と第2操作情報とに基づいて、遠隔操作対象を動作させる制御情報を生成する制御情報生成部354と、制御情報に基づいて、遠隔操作対象の動作内容を第1コントローラ20にフィードバックする第1フィードバック情報を生成し、遠隔操作対象の動作内容を第2コントローラ60にフィードバックする第2フィードバック情報を生成するフィードバック情報生成部355と、を備えることにより、同一の遠隔操作対象に対する他の操作者による操作を体感することができる。
【0108】
上記説明した実施形態は、以下のように表現することができる。
プログラムを記憶した記憶装置と、
ハードウェアプロセッサと、を備え、
前記ハードウェアプロセッサが前記記憶装置に記憶されたプログラムを実行することにより、
現実の物体あるいは仮想世界の仮想物体である遠隔操作対象を操作者が遠隔操作する遠隔操作制御システムにおいて、
遠隔操作対象に対する操作を受け付ける第1コントローラ20を介して第1操作者により入力された操作を示す第1操作情報と、遠隔操作対象に対する操作を受け付ける第2コントローラ60を介して第2操作者により入力された操作を示す第2操作情報と、を取得させ、
取得した第1操作情報と第2操作情報とに基づいて、遠隔操作対象を動作させる制御情報を生成させ、
制御情報に基づいて、遠隔操作対象の動作内容を第1コントローラ20にフィードバックする第1フィードバック情報を生成し、遠隔操作対象の動作内容を第2コントローラ60にフィードバックする第2フィードバック情報を生成させる、
ように構成されている、遠隔操作制御システム。
【0109】
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【0110】
例えば、ロボット遠隔操作制御装置300の一部はロボット100に搭載されていてもよい。例えば、処理部350や記憶部340の機能をロボット100が実行してもよい。
【符号の説明】
【0111】
1…遠隔操作制御システム
10…第1HMD
20…第1コントローラ
30…第1環境センサ
40…第1端末装置
50…第2HMD
60…第2コントローラ
70…第2環境センサ
80…第2端末装置
100…ロボット
200…第3環境センサ
300…ロボット遠隔操作制御装置
351…情報取得部
352…意図推定部
353…ロボット操作決定部
354…制御情報生成部
355…フィードバック情報生成部
356…ロボット状態画像生成部
357…比較画像生成部
358…通信制御部