Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7597312B2 - Teaching system, teaching method, and teaching program - Google Patents
[go: Go Back, main page]

JP7597312B2 - Teaching system, teaching method, and teaching program - Google Patents

Teaching system, teaching method, and teaching program Download PDF

Info

Publication number
JP7597312B2
JP7597312B2 JP2023188927A JP2023188927A JP7597312B2 JP 7597312 B2 JP7597312 B2 JP 7597312B2 JP 2023188927 A JP2023188927 A JP 2023188927A JP 2023188927 A JP2023188927 A JP 2023188927A JP 7597312 B2 JP7597312 B2 JP 7597312B2
Authority
JP
Japan
Prior art keywords
robot
image
user
unit
virtual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2023188927A
Other languages
Japanese (ja)
Other versions
JP2023181513A (en
Inventor
友和 田中
亨 高木
良則 佐藤
三雄 福富
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MAMEZOU CO.,LTD.
Original Assignee
MAMEZOU CO.,LTD.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MAMEZOU CO.,LTD. filed Critical MAMEZOU CO.,LTD.
Priority to JP2023188927A priority Critical patent/JP7597312B2/en
Publication of JP2023181513A publication Critical patent/JP2023181513A/en
Application granted granted Critical
Publication of JP7597312B2 publication Critical patent/JP7597312B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)
  • Numerical Control (AREA)

Description

本発明は、ロボットが実行する処理を教示する教示システム、教示方法及び教示プログラムに関する。 The present invention relates to a teaching system, teaching method, and teaching program for teaching a robot the processes it executes.

従来、ロボットに所定の作業を実行させるにあたって、様々なティーチングの手法が行われている。特許文献1には、ロボットの教示操作を行う教示装置であって、教示点の修正をハンドガイドまたはジョグ送りで修正する手法が開示されている。また、特許文献2には、拡張現実対応ディスプレイを用いて、実映像にロボットの状態や操作ガイドに関する情報をロボットの使用者に提供する技術が開示されている。また、特許文献3には、ロボットの動作プログラムをユーザが作成し、その動作に従った動作を仮想空間上のロボットに実行させて動作確認を行うことが開示されている。 Conventionally, various teaching methods have been used to make a robot perform a specified task. Patent Document 1 discloses a teaching device for teaching a robot, and a method for correcting teaching points by hand guiding or jog feed. Patent Document 2 discloses a technology that uses an augmented reality compatible display to provide the robot user with information on the robot's state and operation guide in real images. Patent Document 3 discloses a technology in which a user creates an operation program for a robot, and then has the robot in a virtual space execute operations according to the program to check the operation.

特開2019-093491号公報JP 2019-093491 A 特開2016-107379号公報JP 2016-107379 A 特開2014-180707号公報JP 2014-180707 A

ところで、通常ロボットに対する教示においては、一般的には、上記特許文献1のように実際にユーザがロボットを動かさなければならないという煩雑さや、上記特許文献3のように、動作プログラムを作成するにあたって、専門的知識が必要になるという問題がある。しかしながら、今後、このようなロボットを一般のユーザにも簡単に操作でき、ロボットに対して実行すべき指示を出せるようなシステムが望まれている。 However, when teaching a normal robot, there are generally problems such as the cumbersome task of having the user actually move the robot as in Patent Document 1 above, and the need for specialized knowledge to create an operating program as in Patent Document 3 above. However, there is a demand for a system in the future that allows general users to easily operate such robots and issue instructions to the robot to execute.

そこで、本発明は上記要望に鑑みて成されたものであり、専門知識がなくとも、ロボットが実行すべき処理を感覚的に教示することができる教示システム、教示方法、及び、教示プログラムを提供することを目的とする。 The present invention was made in consideration of the above demand, and aims to provide a teaching system, teaching method, and teaching program that can intuitively teach a robot the processes it should execute, even without specialized knowledge.

上記課題を解決するために、本発明に係る教示システムは、画像を表示する表示部と、ユーザの視野方向を撮像する撮像部と、表示部に表示する、仮想的なロボットと、撮像部により撮像された撮像映像とを合成した合成映像を生成する画像生成部と、画像生成部により生成された映像からユーザの手による仮想的なロボットに対する操作を検出する検出部と、検出部により検出された操作に基づき実際のロボットの動作命令を生成する命令生成部と、動作命令を実際のロボットに送信する送信部とを備える。 To solve the above problems, the teaching system of the present invention includes a display unit that displays an image, an imaging unit that captures an image in the user's field of view, an image generation unit that generates a composite image to be displayed on the display unit by combining a virtual robot with the captured image captured by the imaging unit, a detection unit that detects an operation performed by the user's hand on the virtual robot from the image generated by the image generation unit, an instruction generation unit that generates an operation instruction for the actual robot based on the operation detected by the detection unit, and a transmission unit that transmits the operation instruction to the actual robot.

また、本発明の一態様に係る教示方法は、教示システムが実行するロボットへの教示方法であって、画像を表示する表示ステップと、ユーザの視野方向を撮像する撮像ステップと、表示ステップにおいて表示する、仮想的なロボットと、撮像ステップにより撮像された撮像映像とを合成した合成映像を生成する画像生成ステップと、画像生成ステップにより生成された映像からユーザの手による仮想的なロボットに対する操作を検出する検出ステップと、検出ステップにより検出された操作に基づき実際のロボットの動作命令を生成する命令生成ステップと、動作命令を実際のロボットに送信する送信ステップとを含む。 A teaching method according to one aspect of the present invention is a teaching method for a robot executed by a teaching system, and includes a display step of displaying an image, an imaging step of imaging the user's field of view, an image generation step of generating a composite image displayed in the display step by combining the virtual robot with the image imaged in the imaging step, a detection step of detecting an operation of the virtual robot by the user's hand from the image generated in the image generation step, an instruction generation step of generating an operation instruction for the actual robot based on the operation detected in the detection step, and a transmission step of transmitting the operation instruction to the actual robot.

また、本発明の一態様に係る教示プログラムは、教示システムのコンピュータに、画像を表示する表示機能と、ユーザの視野方向を撮像する撮像機能と、表示機能が表示する、仮想的なロボットと、撮像機能により撮像された撮像映像とを合成した合成映像を生成する画像生成機能と、画像生成機能により生成された映像からユーザの手による仮想的なロボットに対する操作を検出する検出機能と、検出機能により検出された操作に基づき実際のロボットの動作命令を生成する命令生成機能と、動作命令を実際のロボットに送信する送信機能とを実現させる。 In addition, the teaching program according to one aspect of the present invention provides a computer of the teaching system with a display function for displaying an image, an imaging function for imaging the user's field of view, an image generation function for generating a composite image by combining the virtual robot displayed by the display function with the image imaged by the imaging function, a detection function for detecting an operation of the virtual robot by the user's hand from the image generated by the image generation function, a command generation function for generating a motion command for the actual robot based on the operation detected by the detection function, and a transmission function for transmitting the motion command to the actual robot.

上記教示システムにおいて、ロボットは、物品を把持する把持部を有し、画像生成部は、更に、仮想的な物品を合成した合成映像を生成し、検出部は、ユーザが仮想的なロボットの把持部を操作して把持させた物品を特定するとともに、把持部に物品をリリースさせた場所または対象を特定し、命令生成部は、実際のロボットに対して、検出部が特定した物品を、場所又は対象まで運搬させる動作命令を生成することとしてもよい。 In the above teaching system, the robot may have a gripping unit that grips an item, the image generating unit may further generate a composite image that incorporates a virtual item, the detection unit may identify the item that the user has gripped by operating the gripping unit of the virtual robot, and may also identify the location or object at which the gripping unit has released the item, and the command generating unit may generate an action command for the actual robot to transport the item identified by the detection unit to the location or object.

上記教示システムにおいて、ロボットは、自立移動可能なロボットであり、検出部は、ユーザが仮想的なロボットを合成映像内を移動させた移動経路を検出し、命令生成部は、実際のロボットに対して、検出部が特定した移動経路上を移動する動作命令を生成することとしてもよい。 In the above teaching system, the robot may be an autonomously mobile robot, the detection unit may detect a path along which the user moves the virtual robot within the composite image, and the command generation unit may generate an action command for the actual robot to move along the path identified by the detection unit.

上記教示システムにおいて、撮像部は、実際のロボットを含む映像を撮像映像として撮像し、合成映像は、仮想的なロボットを、撮影映像中の実際のロボットに対して重畳した合成映像を生成することとしてもよい。 In the above teaching system, the imaging unit may capture an image including an actual robot as the captured image, and the composite image may be generated by superimposing a virtual robot on the actual robot in the captured image.

上記教示システムにおいて、ロボットは、7軸ロボットであることとしてもよい。 In the above teaching system, the robot may be a seven-axis robot.

本発明の一態様に係る教示システムは、仮想上のロボットに対するユーザからの感覚的な入力を解釈して、実際のロボットが実行すべき処理に対する教示命令を生成して出力することができる。したがって、実際のロボットを動かす煩雑さやロボットを動作させるための専門的知識がなくとも、ロボットに対する教示を実行することができる。 The teaching system according to one aspect of the present invention can interpret sensory input from a user to a virtual robot, and generate and output teaching commands for processing to be executed by an actual robot. Therefore, teaching of a robot can be performed without the hassle of moving an actual robot or specialized knowledge for operating a robot.

教示システムの構成例を示す概要図である。FIG. 1 is a schematic diagram illustrating an example of the configuration of a teaching system. 教示システムに係る各装置の構成例を示すブロック図である。FIG. 2 is a block diagram showing an example of the configuration of each device in the teaching system. オブジェクトの管理表の構成例を示すデータ概念図である。FIG. 13 is a data conceptual diagram showing an example of the configuration of an object management table. 映像の表示画面の一例であり、ユーザによるロボットの操作例を示す画面図である。FIG. 13 is a screen diagram showing an example of a video display screen, illustrating an example of a robot operation by a user. 図4に続く映像の表示画面の一例であり、ユーザによるロボットの操作例を示す画面図である。FIG. 5 is an example of the image display screen following FIG. 4, showing an example of the operation of the robot by the user. 図5に続く映像の表示画面の一例であり、ユーザによるロボットの操作例を示す画面図である。FIG. 6 is an example of the image display screen following FIG. 5, showing an example of the operation of the robot by the user. 図6に続く映像の表示画面の一例であり、ユーザによるロボットの操作例を示す画面図である。FIG. 7 is an example of the image display screen following FIG. 6, showing an example of the operation of the robot by the user. 図7に続く映像の表示画面の一例であり、ユーザによるロボットの操作例を示す画面図である。FIG. 8 is an example of the image display screen following FIG. 7, showing an example of the operation of the robot by the user. 教示システムに係る各装置間のやり取りを示すシーケンス図である。FIG. 2 is a sequence diagram showing interactions between devices in the teaching system. ヘッドマウントディスプレイの動作例を示すフローチャートである。10 is a flowchart showing an example of the operation of the head mounted display. 情報処理装置の動作例を示すフローチャートである。11 is a flowchart illustrating an example of the operation of the information processing device. ロボットの動作例を示すフローチャートである。11 is a flowchart showing an example of the operation of the robot. 他のロボットを操作する際の例を示す画面図である。FIG. 13 is a screen diagram showing an example of operating another robot.

以下、本発明の一実施態様に係る教示システムについて、図面を参照しながら詳細に説明する。 Below, a teaching system according to one embodiment of the present invention will be described in detail with reference to the drawings.

<実施の形態>
<概要>
図1は、本発明に係る教示システム1の概要を示す概要図である。図1に示すように、教示システム1には、情報処理装置120と、情報処理装置120から提供される映像を視聴可能なヘッドマウントディスプレイ110と、ロボット200とを含む。情報処理装置120は、ヘッドマウントディスプレイ110を装着したユーザ10に、仮想空間上のロボット200と、ゴミ箱20と、ペットボトル30とを含む映像を表示する。当該映像は、AR(Augumented Reality)映像であってもよいし、VR(Virtual Reality)映像であってもよいし、MR(Mixed Reality)映像であってもよい。ヘッドマウントディスプレイ110には撮像部(カメラ)が搭載され、その撮像部から得られた映像を情報処理装置120に送信する。ユーザ10は、視界内に存在する仮想ロボットに対して自身の指で操作するようにして、AR映像としてのロボットを操作する。この操作は撮像部が撮像した映像内に、ユーザの手が含まれ、その形状が予め定めた動作をしている場合にロボットに対する操作として検出する。例えば、ユーザは仮想ロボットのハンドを操作して、ペットボトル30を把持させ、ゴミ箱20の位置にまで持ってこさせ、リリースしたとする。情報処理装置120は、一連の操作を解析し、ユーザによる指示が「ペットボトルをゴミ箱に捨てる」ことであると解釈する。そして、その解釈にしたがって、実際のロボット200に対して、「ペットボトルを探索して、指定のゴミ箱に捨てろ」という内容の教示命令を生成して、送信する。これにより、ロボットに対するティーチングを簡便かつ容易な教示システム1を提供することができる。
<Embodiment>
<Overview>
FIG. 1 is a schematic diagram showing an outline of a teaching system 1 according to the present invention. As shown in FIG. 1, the teaching system 1 includes an information processing device 120, a head-mounted display 110 capable of viewing an image provided by the information processing device 120, and a robot 200. The information processing device 120 displays an image including a robot 200 in a virtual space, a trash can 20, and a plastic bottle 30 to a user 10 wearing the head-mounted display 110. The image may be an augmented reality (AR) image, a virtual reality (VR) image, or a mixed reality (MR) image. An imaging unit (camera) is mounted on the head-mounted display 110, and the image obtained from the imaging unit is transmitted to the information processing device 120. The user 10 operates the robot as an AR image by operating a virtual robot present within the field of view with his/her own finger. This operation is detected as an operation on the robot when the user's hand is included in the image captured by the imaging unit and the shape of the hand is performing a predetermined movement. For example, suppose that the user manipulates the virtual robot's hands to grasp a plastic bottle 30, bring it to the trash can 20, and release it. The information processing device 120 analyzes the series of operations and interprets the user's instruction as "throw the plastic bottle in the trash can." Based on this interpretation, the information processing device 120 generates and transmits a teaching command to the actual robot 200, stating, "search for the plastic bottle and throw it in the specified trash can." This makes it possible to provide the teaching system 1 that makes it easy and convenient to teach a robot.

なお、情報処理装置120は、他のユーザ10aがヘッドマウントディスプレイ110aを装着することでユーザ10aの位置から視聴可能な角度で、ユーザ10が視聴している映像と同様の映像を提供することとしてもよい。以下、詳細に説明する。 The information processing device 120 may provide the other user 10a with an image similar to the image being viewed by the user 10 at an angle that can be viewed from the position of the user 10a by the other user 10a wearing the head mounted display 110a. This will be described in detail below.

<構成>
図2は、教示システム1に係る各装置の機能構成の一例を示すブロック図である。図2に示すように教示システム1は、ヘッドマウントディスプレイ110と、情報処理装置120と、ロボット200とを含む。ヘッドマウントディスプレイ110と情報処理装置120とは互いに通信可能に接続され、同様に情報処理装置120とロボット200も互いに通信可能に接続されている。これらの接続は、無線接続であってもよいし、有線接続であってもよい。
<Configuration>
Fig. 2 is a block diagram showing an example of the functional configuration of each device in the teaching system 1. As shown in Fig. 2, the teaching system 1 includes a head mounted display 110, an information processing device 120, and a robot 200. The head mounted display 110 and the information processing device 120 are communicatively connected to each other, and similarly, the information processing device 120 and the robot 200 are communicatively connected to each other. These connections may be wireless connections or wired connections.

図2に示すように、ヘッドマウントディスプレイ110は、通信部111と、記憶部112と、制御部113と、撮像部114と、表示部115とを備える。ヘッドマウントディスプレイ110は、ユーザに映像を提供する機能と、撮像する機能とを備えていれば、ヘッドマウントディスプレイ以外の機器によって実現されてよく、一例として、ウェアラブルグラスなどにより実現されてもよい。また、ユーザ視点の映像を撮像できるカメラだけをユーザの頭部等に装着し、映像はプロジェクタなどにより提供される構成としてもよい。 As shown in FIG. 2, the head mounted display 110 includes a communication unit 111, a storage unit 112, a control unit 113, an imaging unit 114, and a display unit 115. The head mounted display 110 may be realized by a device other than a head mounted display, as long as it has a function of providing an image to the user and a function of capturing an image, and may be realized by wearable glasses, for example. In addition, the configuration may be such that only a camera capable of capturing an image from the user's viewpoint is attached to the user's head, and the image is provided by a projector, etc.

通信部111は、情報処理装置120と通信するための通信インターフェースである。通信部111は、情報処理装置120と通信ができれば、有線及び無線のいずれで通信を実行してもよく、また、通信プロトコルもいずれを用いてもよい。通信部111は、情報処理装置120からAR映像やVR映像、MR映像を受信し、制御部113に伝達したり、制御部113からの指示に従って、撮像部114が撮像した映像を情報処理装置120に送信したりする。 The communication unit 111 is a communication interface for communicating with the information processing device 120. As long as the communication unit 111 can communicate with the information processing device 120, it may perform communication either wired or wirelessly, and may use any communication protocol. The communication unit 111 receives AR images, VR images, and MR images from the information processing device 120 and transmits them to the control unit 113, and transmits images captured by the imaging unit 114 to the information processing device 120 according to instructions from the control unit 113.

記憶部112は、ヘッドマウントディスプレイ110が動作上必要とする各種プログラム及びデータを記憶する機能を有する記憶媒体である。記憶部112は、例えば、HDD、SSD、フラッシュメモリなどにより実現することができるが、この限りではない。記憶部112は、情報処理装置120から提供された映像を表示するためのプログラムや、AR映像やVR映像、MR映像のデータそのものを記憶していてもよい。 The storage unit 112 is a storage medium having a function of storing various programs and data required for the operation of the head mounted display 110. The storage unit 112 can be realized, for example, by a HDD, SSD, flash memory, etc., but is not limited to these. The storage unit 112 may store a program for displaying images provided by the information processing device 120, and the data itself for AR images, VR images, and MR images.

制御部113は、ヘッドマウントディスプレイ110の各部を制御する機能を有するプロセッサである。制御部113は、記憶部112に記憶されている動作プログラムを実行することにより、ヘッドマウントディスプレイ110の各部を制御する。制御部113は、例えば、通信部111から伝達されたAR(VR、MR)映像を表示部115に表示させたり、撮像部114が撮像した映像を通信部111から情報処理装置120に送信させたりする。 The control unit 113 is a processor having a function of controlling each part of the head mounted display 110. The control unit 113 controls each part of the head mounted display 110 by executing an operating program stored in the memory unit 112. For example, the control unit 113 causes the display unit 115 to display AR (VR, MR) images transmitted from the communication unit 111, and causes the communication unit 111 to transmit images captured by the imaging unit 114 to the information processing device 120.

撮像部114は、いわゆるカメラであり、特にユーザの正面方向(ユーザの視界)を撮像可能に配置されている。撮像部114は、撮像して得られた映像を、通信部111に伝達する。撮像部114により撮像された撮像映像は、逐次リアルタイムで情報処理装置120に送信されるが、この限りではなく、一定の時間長を有する撮像映像が得られてから、あるいは、撮像が終了してから得られた撮像映像を送信するようにしてもよい。 The imaging unit 114 is a so-called camera, and is positioned so that it can capture an image in particular of the direction in front of the user (the user's field of vision). The imaging unit 114 transmits the captured image to the communication unit 111. The captured images captured by the imaging unit 114 are sequentially transmitted in real time to the information processing device 120, but this is not limited thereto, and the captured images may be transmitted after a captured image having a certain length of time has been obtained or after the capture has been completed.

表示部115は、制御部113からの指示に従って、情報処理装置120から提供されたAR(VR、MR)映像を表示する。表示部115は、例えば、液晶モニタや有機ELディスプレイなどにより実現することができる。 The display unit 115 displays the AR (VR, MR) images provided by the information processing device 120 in accordance with instructions from the control unit 113. The display unit 115 can be realized, for example, by a liquid crystal monitor or an organic EL display.

以上がヘッドマウントディスプレイの構成である。次に、情報処理装置120について説明する。 The above is the configuration of the head mounted display. Next, we will explain the information processing device 120.

図2に示すように、情報処理装置120は、通信部121と、記憶部122と、制御部123とを備える。情報処理装置120は、ヘッドマウントディスプレイ110に映像を提供するとともに、ロボット200に対する命令を生成して送信するサーバ、コンピュータシステムなどである。 As shown in FIG. 2, the information processing device 120 includes a communication unit 121, a storage unit 122, and a control unit 123. The information processing device 120 is a server, computer system, or the like that provides an image to the head mounted display 110 and generates and transmits commands to the robot 200.

通信部121は、ヘッドマウントディスプレイ110やロボット200と通信するための通信インターフェースである。通信部121は、ヘッドマウントディスプレイ110やロボット200と通信ができれば、有線及び無線のいずれで通信を実行してもよく、また、通信プロトコルもいずれを用いてもよい。通信部121は、ヘッドマウントディスプレイ110に対してAR(VR、MR)映像を送信したり、ヘッドマウントディスプレイ110から撮像部114により撮像された撮像映像を受信して制御部123に伝達したり、ロボット200に対して、その動作を規定する教示命令を送信したりする。通信部121は、ヘッドマウントディスプレイ110と通信するための回路と、ロボット200と通信するための回路とでそれぞれ別個に構成されてもよいし、共通の通信回路を共用して通信を行うこととしてもよい。また、通信部121は、ヘッドマウントディスプレイ110やロボット200以外の機器と通信を行ってもよい。 The communication unit 121 is a communication interface for communicating with the head mounted display 110 and the robot 200. The communication unit 121 may perform communication by wire or wirelessly as long as it can communicate with the head mounted display 110 and the robot 200, and may use any communication protocol. The communication unit 121 transmits AR (VR, MR) images to the head mounted display 110, receives captured images captured by the imaging unit 114 from the head mounted display 110 and transmits them to the control unit 123, and transmits teaching commands to the robot 200 that define its operation. The communication unit 121 may be configured with separate circuits for communicating with the head mounted display 110 and with the robot 200, or may share a common communication circuit to communicate. The communication unit 121 may also communicate with devices other than the head mounted display 110 and the robot 200.

記憶部122は、情報処理装置120が動作上必要とする各種プログラム及びデータを記憶する機能を有する記憶媒体である。記憶部122は、例えば、HDD、SSD、フラッシュメモリなどにより実現することができるが、この限りではない。記憶部112は、ヘッドマウントディスプレイ100から提供された撮像映像からユーザによるロボットに対する指示内容を解析するための解析プログラムや、解析結果に基づいてロボットに対する教示命令を生成する教示命令生成プログラムを記憶していてもよい。 The storage unit 122 is a storage medium having a function of storing various programs and data required for the operation of the information processing device 120. The storage unit 122 can be realized, for example, by an HDD, SSD, flash memory, etc., but is not limited to these. The storage unit 112 may store an analysis program for analyzing the instructions given by the user to the robot from the captured image provided by the head mounted display 100, and a teaching command generation program for generating teaching commands for the robot based on the analysis results.

制御部123は、情報処理装置120の各部を制御する機能を有するプロセッサである。制御部123は、記憶部122に記憶されている動作プログラムを実行することにより、情報処理装置120の各部を制御する。 The control unit 123 is a processor having a function of controlling each part of the information processing device 120. The control unit 123 controls each part of the information processing device 120 by executing an operation program stored in the memory unit 122.

制御部123は、ヘッドマウントディスプレイ110から送信された撮像映像を解析する解析部として機能する。具体的には、制御部123は、制御部123が生成した映像に含まれる各オブジェクト(ロボット、ペットボトル、ゴミ箱)に対して、ユーザが何らかの操作を加えたか否かを解析する。制御部123は、ヘッドマウントディスプレイ110から送信された撮像映像の中にユーザの手指が含まれるか否かを解析する。これは、既存の画像解析技術により実現できるが、一例として、パターンマッチング等を利用することにより実現することができる。そして、ユーザの手指が含まれる場合に、その手指がどのような所作をしているかを解析する。また、ユーザの視界において、その手指が何を操作の対象としているのかを解析する。即ち、撮像映像中のユーザの手指の位置と、その位置に対して存在するオブジェクトを特定する。したがって、制御部123は、撮像映像を解析して、ユーザ10が、どの対象(オブジェクト)に対して、何の操作をしたのかを解析する。 The control unit 123 functions as an analysis unit that analyzes the captured image transmitted from the head mounted display 110. Specifically, the control unit 123 analyzes whether the user has performed some operation on each object (robot, plastic bottle, trash can) included in the image generated by the control unit 123. The control unit 123 analyzes whether the user's fingers are included in the captured image transmitted from the head mounted display 110. This can be realized by existing image analysis technology, and as an example, it can be realized by using pattern matching, etc. Then, if the user's fingers are included, it analyzes what kind of gesture the fingers are making. In addition, it analyzes what the fingers are operating in the user's field of view. That is, it identifies the position of the user's fingers in the captured image and the object that exists at that position. Therefore, the control unit 123 analyzes the captured image to analyze what operation the user 10 performed on which object (object).

制御部123は、撮像映像を解析した結果から、ユーザ10が、ロボットに何をさせたいのかを解釈する。そして、制御部123は、その解釈にしたがって、実際のロボット200に対する教示命令を生成する生成部として機能する。ここでいう教示命令とは、何を、どこに、どうする、という内容が含まれる命令であってよい。制御部123は、生成した教示命令を、通信部121を介して、実際のロボット200に送信する。 The control unit 123 interprets what the user 10 wants the robot to do based on the analysis of the captured image. The control unit 123 then functions as a generation unit that generates teaching commands for the actual robot 200 based on that interpretation. A teaching command here may be a command that includes information about what to do, where to do it, and how to do it. The control unit 123 transmits the generated teaching command to the actual robot 200 via the communication unit 121.

また、制御部123は、撮像映像の解析結果から次のAR映像またはVR映像またはMR映像を生成する生成部として機能する。制御部123は、解析結果から提供しているオブジェクトに対してユーザ10により何らかの操作が加えられた場合には、その操作後の状態を含むAR映像またはVR映像を生成する。AR(MR)映像の場合は、ヘッドマウントディスプレイ110から受信した撮像映像に対して、ヘッドマウントディスプレイ110の位置に応じた態様でのAR(MR)映像を合成することで、AR(MR)映像を生成する。そして、制御部123は、生成した映像を、通信部121を介して、ヘッドマウントディスプレイ110に送信する。なお、このとき、制御部123は、撮像映像中に、生成するオブジェクトの実物が含まれる場合には、その実物に重畳するように、仮想のオブジェクトのAR映像を生成することとしてもよい。 The control unit 123 also functions as a generating unit that generates the next AR image, VR image, or MR image from the analysis result of the captured image. When the user 10 performs some operation on the object provided from the analysis result, the control unit 123 generates an AR image or a VR image including the state after the operation. In the case of an AR (MR) image, the AR (MR) image is generated by synthesizing the captured image received from the head mounted display 110 with the AR (MR) image in a manner according to the position of the head mounted display 110. Then, the control unit 123 transmits the generated image to the head mounted display 110 via the communication unit 121. At this time, when the captured image includes the actual object to be generated, the control unit 123 may generate an AR image of a virtual object so as to be superimposed on the actual object.

以上が、情報処理装置120の説明である。次に、ロボット200について説明する。 This concludes the explanation of the information processing device 120. Next, we will explain the robot 200.

図2に示すように、ロボット200は、通信部201と、記憶部202と、制御部203と、駆動部204と、検出部205とを備える。ロボット200は、通信機能を備え、用途として必要とされる機能を実行できるロボットであれば、どのようなロボットであってもよい。ロボット200は、一例として、7軸ロボットであってよい。7軸ロボットは、回転軸を7個有する多関節のロボットであり、各軸の端部が連接することによってロボットアームとして形成され、一例として物品の運搬を実行したり、工場等での所定の工程を実行したりする。なお、ロボット200は、7軸ロボットに限定するものではなく、他の形態のロボット、例えば、6軸ロボットや5軸ロボットなどであってもよいし、あるいは、所定のアルゴリズムや指示に従って移動する移動ロボットや案内ロボットであってもよいし、ユーザ等の人間とコミュニケーションを交わすコミュニケーションロボットなどであってもよい。 2, the robot 200 includes a communication unit 201, a memory unit 202, a control unit 203, a drive unit 204, and a detection unit 205. The robot 200 may be any robot that has a communication function and can execute functions required for the purpose. The robot 200 may be a seven-axis robot, for example. The seven-axis robot is a multi-joint robot with seven rotation axes, and is formed as a robot arm by connecting the ends of each axis. For example, the robot 200 may transport items or execute a predetermined process in a factory. The robot 200 is not limited to a seven-axis robot, and may be a robot of another form, such as a six-axis robot or a five-axis robot, or may be a mobile robot or a guide robot that moves according to a predetermined algorithm or instruction, or may be a communication robot that communicates with a human being such as a user.

通信部201は、情報処理装置120と通信するための通信インターフェースである。通信部201は、情報処理装置120と通信ができれば、有線及び無線のいずれで通信を実行してもよく、また、通信プロトコルもいずれを用いてもよい。通信部201は、情報処理装置120から、教示命令を受信して、制御部203に伝達する。また、通信部201は、制御部203からの指示に従って、自装置(ロボット200)の各部の動作状態やセンサ等を利用して収集したセンシングデータを情報処理装置120に送信することとしてもよい。 The communication unit 201 is a communication interface for communicating with the information processing device 120. As long as the communication unit 201 can communicate with the information processing device 120, the communication may be performed either wired or wirelessly, and any communication protocol may be used. The communication unit 201 receives a teaching command from the information processing device 120 and transmits it to the control unit 203. The communication unit 201 may also transmit sensing data collected using the operating status of each part of its own device (robot 200) and sensors, etc., to the information processing device 120 in accordance with instructions from the control unit 203.

記憶部202は、ロボット200が動作上必要とする各種プログラム及びデータを記憶する機能を有する記憶媒体である。記憶部202は、例えば、HDD、SSD、フラッシュメモリなどにより実現することができるが、この限りではない。記憶部202は、情報処理装置120から指示された教示命令や、その教示命令を解釈してその命令内容を実行する実行プログラムを記憶していてもよい。また、動作上必要とするパターンマッチング等に用いる参照データなども保持していてもよい。 The memory unit 202 is a storage medium having the function of storing various programs and data required for the operation of the robot 200. The memory unit 202 can be realized, for example, by a HDD, SSD, flash memory, etc., but is not limited to these. The memory unit 202 may store teaching commands issued by the information processing device 120, and an execution program that interprets the teaching commands and executes the command contents. It may also hold reference data used for pattern matching and the like required for operation.

制御部203は、ロボット200の各部を制御する機能を有するプロセッサである。制御部203は、記憶部202に記憶されているプログラムを実行することにより、ロボット200の各部を制御する。制御部203は、予め定められた基準に従って、ロボット200を動作させることとしてよい。また、制御部203は、教示命令を受け付けた場合に、その教示命令に従って、検出部205が検出した状況に応じた動作を実行する。例えば、教示命令が、「ペットボトルを青いゴミ箱に捨てろ」というものであった場合に、検出部205が取得した周囲の画像を解析して、ペットボトルがあるか否か、そして、ゴミ箱がどこにあるかを特定する。そして、ペットボトルがあった場合に、ペットボトルを把持させ、ゴミ箱20の位置まで移動させるように、駆動部204を駆動させてロボット200を制御する。 The control unit 203 is a processor having a function of controlling each part of the robot 200. The control unit 203 controls each part of the robot 200 by executing a program stored in the storage unit 202. The control unit 203 may operate the robot 200 according to a predetermined standard. Furthermore, when the control unit 203 receives a teaching command, the control unit 203 executes an operation according to the situation detected by the detection unit 205 according to the teaching command. For example, when the teaching command is "throw the plastic bottle in the blue trash can," the detection unit 205 analyzes the surrounding image acquired to determine whether or not there is a plastic bottle and where the trash can is located. Then, when a plastic bottle is found, the control unit 203 drives the drive unit 204 to control the robot 200 so that the plastic bottle is grasped and moved to the position of the trash can 20.

また、制御部203は、情報処理装置120やリモートコントローラによりユーザから直接指示を受け付けた場合に、その指示に従ってロボット200を動作させることとしてもよい。 In addition, when the control unit 203 receives a direct instruction from a user via the information processing device 120 or a remote controller, it may operate the robot 200 according to the instruction.

駆動部204は、ロボット200の各部を駆動させる機能を有する。ロボット200が7軸ロボットの場合であれば、駆動部204は、各軸を回動させるモータにより実現され、制御部203からの指示に従って駆動する。また、ロボット200が移動ロボットの場合で車輪により移動する場合には、その車輪を回転させるモータにより実現され、制御部203からの指示に従って駆動する。 The driving unit 204 has the function of driving each part of the robot 200. If the robot 200 is a seven-axis robot, the driving unit 204 is realized by a motor that rotates each axis, and drives according to instructions from the control unit 203. Also, if the robot 200 is a mobile robot that moves using wheels, the driving unit 204 is realized by a motor that rotates the wheels, and drives according to instructions from the control unit 203.

検出部205は、ロボット200が自装置の周囲の情報や自装置の状態を検出する機能を有する。検出部205は、各種のセンサにより実現することができる。センサとしては、例えば、他の物体までの距離を測定可能な距離センサ(例えば、超音波センサ)、人を検知できる人センサ(例えば、赤外線センサ)、所定の方向(例えば、7軸ロボットの場合であれば、先端の向いている方向、移動ロボットの場合であれば進行方向)の画像を取得可能なイメージセンサなどにより実現することができる。どのようなセンサを用いるかは、ロボット200として果たすべき機能に応じて、選択されて、搭載される。
以上がロボット200の構成である。
The detection unit 205 has a function of the robot 200 detecting information about the surroundings of the robot 200 and the state of the robot 200. The detection unit 205 can be realized by various sensors. Examples of the sensors include a distance sensor (e.g., an ultrasonic sensor) capable of measuring the distance to other objects, a human sensor (e.g., an infrared sensor) capable of detecting people, and an image sensor capable of acquiring an image in a predetermined direction (e.g., the direction in which the tip of a seven-axis robot is facing, or the direction of travel in the case of a mobile robot). The type of sensor to be used is selected and installed according to the function to be performed by the robot 200.
The above is the configuration of the robot 200.

<データ>
図3は、情報処理装置120が保持するデータであって、各オブジェクトを管理するためのオブジェクトデータの管理表300の構成例を示すデータ概念図である。図3に示すように、オブジェクトデータの管理表300は、物体ID301と、座標302と、属性情報303とが対応付けられた情報である。
<Data>
3 is a conceptual data diagram showing an example of the configuration of an object data management table 300 for managing each object, which is data held by the information processing device 120. As shown in FIG. 3, the object data management table 300 is information in which an object ID 301, coordinates 302, and attribute information 303 are associated with each other.

物体ID301は、AR映像もしくはVR映像として、ユーザに提供する映像の中で存在させるオブジェクト各々を識別するための識別情報である。物体ID301は、例えば、ロボット200やペットボトル30などを仮想空間(拡張現実空間を含む)上に存在させる場合に、情報処理装置120もしくはそのオペレータが付与することとしてもよい。 The object ID 301 is identification information for identifying each object that is to be present in the image provided to the user as an AR image or a VR image. The object ID 301 may be assigned by the information processing device 120 or its operator, for example, when the robot 200 or the plastic bottle 30 is to be present in a virtual space (including an augmented reality space).

座標302は、対応する物体ID301で示されるオブジェクトが、仮想空間上のどの位置に存在するかを示す情報である。座標302は、オブジェクトの特定の一点(例えば、中心点)の座標位置を示すものであってもよいし、オブジェクトの複数の特徴点各々の座標位置を示すものであってもよいし、オブジェクトが存在する座標範囲を示すものであってもよい。座標302は、実際のロボット200を存在させる現実空間の座標位置にリンクさせる。ここで、座標をリンクさせるとは、オブジェクト各々の位置や部屋の壁の位置などの対応関係をとることをいう。このとき、この対応が取れていれば、仮想物体であるオブジェクト等を規定する座標の座標系と、現実空間の座標系とは縮尺が異なってもよい。 Coordinates 302 are information indicating where in virtual space an object indicated by corresponding object ID 301 exists. Coordinates 302 may indicate the coordinate position of a specific point (e.g., the center point) of an object, may indicate the coordinate positions of each of multiple feature points of an object, or may indicate the coordinate range in which an object exists. Coordinates 302 are linked to coordinate positions in real space in which the actual robot 200 exists. Here, linking coordinates means establishing a correspondence between the positions of each object and the positions of the walls of a room. In this case, as long as this correspondence is established, the scale of the coordinate system that defines the virtual object and the coordinate system of the real space may be different.

座標302は、ユーザ10により対応する物体ID301で示されるオブジェクトが操作されて移動させられた場合に、制御部123によって、移動後の座標位置に修正される。 When the object indicated by the corresponding object ID 301 is operated and moved by the user 10, the control unit 123 corrects the coordinates 302 to the coordinate position after the movement.

属性情報303は、対応する物体ID301で示されるオブジェクトの属性を示す情報である。属性とは、オブジェクトの性質を示す情報であり、形状、色、そのオブジェクトが何であるか、状態などを示す情報であるがこれらに限定するものではない。オブジェクトを特徴付ける情報であれば、その他の情報であってもよい。 Attribute information 303 is information indicating the attributes of the object indicated by the corresponding object ID 301. Attributes are information indicating the nature of an object, such as shape, color, what the object is, and status, but are not limited to these. Any other information that characterizes the object may also be used.

図3によれば、物体ID301が「B011」であるオブジェクトは、座標(X1、Y1、Z1)に位置し、その属性情報303から、円筒形で青色のペットボトルであることが理解できる。なお、これがロボット200であれば、ロボット200を構成する各アーム毎に、その位置や形状が特定されてもよいし、一つの情報として属性情報303において、各軸の位置や各軸を駆動させる駆動部204(モータ)の軸角度(回動角、回転角と呼称してもよい)などの情報が定義されることとしてもよい。 According to FIG. 3, an object with object ID 301 "B011" is located at coordinates (X1, Y1, Z1), and its attribute information 303 indicates that it is a cylindrical, blue plastic bottle. If this were robot 200, the position and shape of each arm constituting robot 200 may be specified, or information such as the position of each axis and the shaft angle (which may be called the rotation angle or rotation angle) of drive unit 204 (motor) that drives each axis may be defined as a single piece of information in attribute information 303.

なお、図3には図示していないが、その他に、各物体ID(オブジェクト)に対しては、さらに、実際に映像として用いる表示用データなども対応付けられていてもよい。 Although not shown in FIG. 3, each object ID (object) may also be associated with display data that is actually used as an image.

<操作具体例>
ここから、図4~図8を用いて、実際の操作の具体例を説明する。図4は、情報処理装置120から、ヘッドマウントディスプレイ110に提供される映像であって、ヘッドマウントディスプレイ110に表示される映像の一例である。図4は、図1におけるユーザ10が視認可能な映像の一例でもある。
<Example of operation>
From here, specific examples of actual operations will be described with reference to Fig. 4 to Fig. 8. Fig. 4 is an example of an image provided to the head mounted display 110 from the information processing device 120 and displayed on the head mounted display 110. Fig. 4 is also an example of an image visible to the user 10 in Fig. 1.

図4は、まず、最初に、ヘッドマウントディスプレイ110の撮像部114により撮像された映像に基づいて情報処理装置120により生成されたAR映像が、ヘッドマウントディスプレイ110の表示部115に表示された表示画面400を示している。 Figure 4 first shows a display screen 400 on which an AR image generated by the information processing device 120 based on an image captured by the imaging unit 114 of the head mounted display 110 is displayed on the display unit 115 of the head mounted display 110.

図4に示すように表示画面400には、ロボット200aと、ゴミ箱20と、ペットボトル30が3本表示された状態を示している。これらのオブジェクトのうち、少なくともロボット200aと、ペットボトル30は、仮想的なものであり、情報処理装置120により生成された仮想データである。一方、ゴミ箱20は、撮像部114により撮像された実際のものであってもよいし、情報処理装置120により生成された仮想データであってもよい。また、図4には図示していないが、ロボット200aについては、実際にその位置にロボット200の実物を配置し、配置したロボット200を撮像した撮像映像に重畳させた態様で、仮想上のロボット200aを表示する態様としてよい。 As shown in FIG. 4, the display screen 400 displays the robot 200a, the trash can 20, and three plastic bottles 30. Of these objects, at least the robot 200a and the plastic bottle 30 are virtual objects, and are virtual data generated by the information processing device 120. Meanwhile, the trash can 20 may be an actual object captured by the imaging unit 114, or may be virtual data generated by the information processing device 120. Although not shown in FIG. 4, the robot 200a may be displayed as a virtual robot 200a by placing the actual robot 200 at the actual position and superimposing the placed robot 200 on the captured image.

図4に示すような状況下で、ユーザ10は、ロボット200aに対して操作を行う。例えば、一例として、図5に示すように、ユーザ10は、自身の指501で、ロボット200aに対する操作を行う。図5は、図4に示した表示画面400に続く光景であって、ヘッドマウントディスプレイ110の表示部115に表示される表示画面500の一例を示す図である。図5に示されるように、表示画面500では、ユーザ10の指501で、ロボット200aの先端部201aをつまむ(保持)するようにしていることが理解できる。これは、実際のロボット200を指でつかんでいるわけではなく、情報処理装置120が提供する映像の中で、ユーザ自身の指501で、仮想上のロボット200aをつまんだように見えるように指を動かすことを意味している。情報処理装置120は、撮像部114による撮像映像から、ユーザの指が所定の動き(ここでは、2本の指で、ロボット200aの先端部201aを挟み込むという動き)を検出して、ユーザにより、ロボット200aの先端が把持されたという解釈を行い、以降、ユーザの動きに応じて、ロボット200aを動かすように、AR映像を生成する。 Under the circumstances shown in FIG. 4, the user 10 operates the robot 200a. For example, as shown in FIG. 5, the user 10 operates the robot 200a with his/her own finger 501. FIG. 5 is a view following the display screen 400 shown in FIG. 4, and is a diagram showing an example of a display screen 500 displayed on the display unit 115 of the head-mounted display 110. As shown in FIG. 5, in the display screen 500, it can be seen that the user 10's finger 501 is pinching (holding) the tip 201a of the robot 200a. This does not mean that the actual robot 200 is being grasped with the finger, but rather that the user's own finger 501 is moving in the image provided by the information processing device 120 so as to appear as if the user is pinching the virtual robot 200a with the finger. The information processing device 120 detects a predetermined movement of the user's fingers (here, the movement of pinching the tip 201a of the robot 200a between two fingers) from the image captured by the imaging unit 114, interprets this as the user gripping the tip of the robot 200a, and thereafter generates an AR image to move the robot 200a in accordance with the user's movement.

図6は、そのようにして、ロボット200aを動かした後の、表示画面600を示している。図6に示すように、ユーザ10は、自身の指501で、先端部201aを挟んだ状態を維持した状態で、手を動かすことで、ロボット200aを仮想的に動かすことができる。図6は、図5に示す表示画面500に続く表示画面600を示している。図6には、先端部201aをペットボトル30aの位置まで移動させた状態を示している。 Figure 6 shows the display screen 600 after the robot 200a has been moved in this manner. As shown in Figure 6, the user 10 can virtually move the robot 200a by moving their hand while keeping the tip 201a pinched between their fingers 501. Figure 6 shows the display screen 600 following the display screen 500 shown in Figure 5. Figure 6 shows the state in which the tip 201a has been moved to the position of the plastic bottle 30a.

ここで、ユーザ10は、ロボット200aの先端部201aの把持部にペットボトル30aを把持させたいとする。そこで、一例として、図6に示す状態を所定時間維持することで、先端部201aの把持部にペットボトル30aを把持させた状態にすることができる。またあるいは、図示はしていないが、ユーザ10が指501をもう一度つまむ動作をすることで、把持部にペットボトル30aを把持させた状態にするように構成してもよい。 Here, the user 10 wants the gripping portion of the tip 201a of the robot 200a to grip the plastic bottle 30a. As an example, the state shown in FIG. 6 can be maintained for a predetermined period of time to cause the gripping portion of the tip 201a to grip the plastic bottle 30a. Alternatively, although not shown, the user 10 may pinch the fingers 501 again to cause the gripping portion to grip the plastic bottle 30a.

ユーザ10は、把持部にペットボトル30aを把持させた状態にすると、その状態でロボット200aを動かして、図7に示す表示画面700に示すように、ゴミ箱20の上まで先端部201aを移動させる。図7は、図6に示す表示画面600に続く表示画面700を示している。図7に示されるように、先端部201aの把持部はペットボトル30aを把持した状態の映像が、ユーザ10のヘッドマウントディスプレイ110の表示部115に表示される。 When the user 10 has the plastic bottle 30a held by the gripper, he or she moves the robot 200a in this state, moving the tip 201a to above the trash can 20, as shown on the display screen 700 in FIG. 7. FIG. 7 shows a display screen 700 following the display screen 600 shown in FIG. 6. As shown in FIG. 7, an image of the gripper of the tip 201a holding the plastic bottle 30a is displayed on the display unit 115 of the head-mounted display 110 of the user 10.

そして、図7に示す状態で、ユーザ10は、例えば、指をロボット200aの先端部201aから離すように動かすとする。図8は、図7に示す表示画面700に続く表示画面800を示している。図8に示すように、ユーザ10は、自身の指501をロボット200aの先端部201aから離すように動かす。図7と図8を比較すれば理解できるように、ユーザ10が指を先端部201aから離している。情報処理装置120は、この動作を示す撮像映像を解析することで、ユーザ10からの入力として受け付けて、ロボット200aの把持部によるペットボトル30aの把持状態を解除する。そして、これにより、情報処理装置120は、ペットボトル30aがゴミ箱20に落下するという映像をヘッドマウントディスプレイ110に提供することになる。 In the state shown in FIG. 7, the user 10 moves, for example, a finger away from the tip 201a of the robot 200a. FIG. 8 shows a display screen 800 following the display screen 700 shown in FIG. 7. As shown in FIG. 8, the user 10 moves his/her finger 501 away from the tip 201a of the robot 200a. As can be understood by comparing FIG. 7 and FIG. 8, the user 10 moves his/her finger away from the tip 201a. The information processing device 120 analyzes the captured image showing this movement, accepts it as an input from the user 10, and releases the grip of the plastic bottle 30a by the gripping part of the robot 200a. As a result, the information processing device 120 provides the head mounted display 110 with an image of the plastic bottle 30a falling into the trash can 20.

その一方で、情報処理装置120は、図4~図8に示すような態様で、ユーザ10に、仮想的にロボット200aを操作させて、ユーザ10がロボット200に実行させたい処理を認識することができる。この図4~図8に示す動作をユーザ10が仮想のロボット200aにさせることで、情報処理装置120は、一例として、ユーザ10は、ロボット200に対して、ペットボトルをゴミ箱に捨てさせる処理を実行したいという解釈をすることができる。そして、この解釈に従って、情報処理装置120は、ロボット200に対して、ペットボトルをゴミ箱に捨てるという教示命令を送信することができ、ロボット200は、ペットボトルをゴミ箱に捨てるという処理を学習することができる。 Meanwhile, the information processing device 120 can recognize the process that the user 10 wants the robot 200 to execute by having the user 10 virtually operate the robot 200a in the manner shown in Figs. 4 to 8. By having the user 10 cause the virtual robot 200a to perform the actions shown in Figs. 4 to 8, the information processing device 120 can interpret, as an example, that the user 10 wants the robot 200 to execute a process to throw a plastic bottle in a trash can. Then, according to this interpretation, the information processing device 120 can send a teaching command to the robot 200 to throw the plastic bottle in the trash can, and the robot 200 can learn the process of throwing the plastic bottle in the trash can.

<動作>
ここから、教示システム1に係る各装置の動作について説明する。まず図9を用いて、教示システム1に係る各装置、即ち、ヘッドマウントディスプレイ110と、情報処理装置120と、ロボット200との間のやり取りについて説明する。
<Operation>
Next, a description will be given of the operation of each device in the teaching system 1. First, a description will be given of interactions between each device in the teaching system 1, that is, the head mounted display 110, the information processing device 120, and the robot 200, with reference to FIG.

図9は、教示システム1に係る各装置の間のやり取りの例を示すシーケンス図である。図9に示すように、ヘッドマウントディスプレイ(HMD)110は、撮像部114が撮像した撮像映像(画像)を情報処理装置120に送信する(ステップS901)。 Figure 9 is a sequence diagram showing an example of interactions between the devices related to the teaching system 1. As shown in Figure 9, the head mounted display (HMD) 110 transmits the captured video (image) captured by the imaging unit 114 to the information processing device 120 (step S901).

情報処理装置120は、撮像映像を受信すると、その撮像映像に、仮想ロボット200aを含むAR映像を生成して、ヘッドマウントディスプレイ110に送信する(ステップS902)。 When the information processing device 120 receives the captured image, it generates an AR image including the virtual robot 200a from the captured image and transmits it to the head-mounted display 110 (step S902).

ヘッドマウントディスプレイ110は、受信したAR映像を表示する(ステップS903)。ヘッドマウントディスプレイ110は、ユーザ10の仮想ロボット200aに対する動作(操作)を含む撮像映像を、情報処理装置120に送信する(ステップS904)。 The head mounted display 110 displays the received AR image (step S903). The head mounted display 110 transmits the captured image including the user's 10 actions (operations) on the virtual robot 200a to the information processing device 120 (step S904).

情報処理装置120は、受信した撮像映像の内容を解析する(ステップS905)。そして、解析した内容から、ユーザが実際のロボット200に実行させたい処理を解釈し、その解釈に従った教示命令を生成する(ステップS906)。情報処理装置120は、生成した教示命令を、ロボット200に送信する(ステップS907)。 The information processing device 120 analyzes the content of the received captured image (step S905). Then, from the analyzed content, it interprets the processing that the user wants the actual robot 200 to execute, and generates a teaching command according to the interpretation (step S906). The information processing device 120 transmits the generated teaching command to the robot 200 (step S907).

ロボット200は、教示命令を受信すると、その教示命令で示される命令を実行する(ステップS908)。これにより、教示システム1においては、ユーザは、拡張現実あるいは仮想現実で生成された仮想的なロボット200aを感覚的に操作するだけで、ロボット200に実行させた処理を教示することができる。 When the robot 200 receives the teaching command, it executes the command indicated by the teaching command (step S908). As a result, in the teaching system 1, the user can teach the robot 200 to execute a process simply by intuitively operating the virtual robot 200a generated using augmented reality or virtual reality.

ここから、図9に示すシーケンスを実現するための各装置の動作例を説明する。図10は、ヘッドマウントディスプレイ110の動作例を示すフローチャートである。 From here, we will explain an example of the operation of each device to realize the sequence shown in Figure 9. Figure 10 is a flowchart showing an example of the operation of the head mounted display 110.

図10に示すように、制御部113からの指示に従って、撮像部114は、撮影(撮像)を実行する(ステップS1001)。撮像部114は、撮像して得られた画像(もしくは映像。即ち動画)を、制御部113に伝達する。制御部113は、得られた撮像画像を、通信部111を介して、情報処理装置120に送信する(ステップS1002)。 As shown in FIG. 10, the imaging unit 114 performs shooting (capturing images) according to instructions from the control unit 113 (step S1001). The imaging unit 114 transmits the captured image (or video, i.e., video) to the control unit 113. The control unit 113 transmits the captured image to the information processing device 120 via the communication unit 111 (step S1002).

ヘッドマウントディスプレイ110の通信部111は、仮想ロボットを含む映像を受信する。通信部111は、受信した映像を制御部113に伝達する。そして、制御部113は、伝達された映像を、表示部115に表示させる(ステップS1003)。これにより、ヘッドマウントディスプレイ110は、装着しているユーザ10に、仮想ロボット200aを含むAR映像(もしくはVR映像)を提供することができる。 The communication unit 111 of the head mounted display 110 receives the image including the virtual robot. The communication unit 111 transmits the received image to the control unit 113. The control unit 113 then causes the transmitted image to be displayed on the display unit 115 (step S1003). This allows the head mounted display 110 to provide the user 10 wearing the display with an AR image (or a VR image) including the virtual robot 200a.

ヘッドマウントディスプレイ110の制御部113は、ユーザからの終了入力を受け付けたか否かを判断する(ステップS1004)。ユーザからの終了入力は、例えば、図示しない電源ボタンの押下や、AR映像またはVR映像の提供の終了入力であるが、これらに限定するものではない。ユーザからの終了入力を受け付けていた場合には(ステップS1004のYES)、処理を終了する。ユーザからの終了入力を受け付けていない場合には(ステップS1004のNO)、ヘッドマウントディスプレイ110は、ステップS1001の処理に戻って、以降の処理を実行する。 The control unit 113 of the head mounted display 110 determines whether or not an end input has been received from the user (step S1004). End input from the user is, for example, pressing a power button (not shown) or an input to end the provision of AR or VR images, but is not limited to these. If an end input has been received from the user (YES in step S1004), the process ends. If an end input has not been received from the user (NO in step S1004), the head mounted display 110 returns to the process of step S1001 and executes subsequent processes.

ステップS1001~S1003の処理が繰り返されることにより、ヘッドマウントディスプレイ110は、操作対象を含むAR映像またはVR映像を表示しつつ、表示された仮想的なオブジェクトに対する入力を行っている様子を撮像した撮像映像を、情報処理装置120に送信することができる。 By repeating the processing of steps S1001 to S1003, the head mounted display 110 can transmit to the information processing device 120 an image capturing an input to a displayed virtual object while displaying an AR image or VR image including the operation target.

図11は、図9に示すやり取りを実現するための情報処理装置120の動作例を示すフローチャートである。図11に示すフローチャートは、一度、制御部123が生成したAR映像またはVR映像を既に提供している状態から開始している。 Fig. 11 is a flowchart showing an example of the operation of the information processing device 120 for realizing the interaction shown in Fig. 9. The flowchart shown in Fig. 11 starts from a state in which the AR image or VR image generated by the control unit 123 has already been provided.

図11に示すように、情報処理装置120の通信部121は、ヘッドマウントディスプレイ110から、ヘッドマウントディスプレイ110が撮像した撮像画像を受信する(ステップS1101)。通信部121は、受信した撮像画像を、制御部123に伝達する。 As shown in FIG. 11, the communication unit 121 of the information processing device 120 receives, from the head mounted display 110, a captured image captured by the head mounted display 110 (step S1101). The communication unit 121 transmits the received captured image to the control unit 123.

制御部123は、通信部121から撮像画像を伝達されると、撮像画像の内容を解析する(ステップS1102)。画像の解析には一般的な画像認識技術を用いるとよい。 When the control unit 123 receives the captured image from the communication unit 121, the control unit 123 analyzes the contents of the captured image (step S1102). It is preferable to use a general image recognition technique for analyzing the image.

制御部123は、解析した結果から、仮想ロボット200aに対する操作があるか否かを判定する(ステップS1103)。仮想ロボット200aに対する操作とは、例えば、一例として、ユーザ10の指によるロボットの所定の位置の指定であったり、ロボットアームを動かす指示であったり、ロボットが実行可能な特定の処理の実行の指定であったりしてよく、これらは、ユーザの指による特定の動作を検出することにより特定することができる。 Based on the analysis results, the control unit 123 determines whether or not there has been an operation on the virtual robot 200a (step S1103). An operation on the virtual robot 200a may be, for example, the specification of a specific position of the robot by the finger of the user 10, an instruction to move the robot arm, or a specification of the execution of a specific process that the robot can execute, and these can be identified by detecting a specific movement by the user's finger.

仮想ロボット200aに対する操作入力があると判定した場合に(ステップS1103のYES)、制御部123は、操作後の状態の仮想ロボット200aを含む合成画像を生成する(ステップS1104)。仮想ロボット200aに対する操作入力がないと判定した場合に(ステップS1103のNO)、制御部123は、仮想ロボット200aの状態を維持した合成画像を生成する(ステップS1105)。 If it is determined that an operation input has been made to the virtual robot 200a (YES in step S1103), the control unit 123 generates a composite image including the virtual robot 200a in a state after the operation (step S1104). If it is determined that an operation input has not been made to the virtual robot 200a (NO in step S1103), the control unit 123 generates a composite image in which the state of the virtual robot 200a is maintained (step S1105).

そして、制御部123は生成した合成画像を、通信部121を介して、ヘッドマウントディスプレイ110に送信する(ステップS1106)。 Then, the control unit 123 transmits the generated composite image to the head mounted display 110 via the communication unit 121 (step S1106).

制御部123は、仮想ロボット200aに対する入力が終了したか否かを判定する(ステップS1107)。制御部123は、例えば、情報処理装置120に対するユーザからの終了入力を受け付けたり、あるいは、ヘッドマウントディスプレイ110に対するユーザ10からの終了入力を検出したり、撮像映像中において、ユーザの手や指の特定の操作を検出したりすることによって、仮想ロボット200aに対する入力が終了したことを判定してよい。 The control unit 123 determines whether the input to the virtual robot 200a has ended (step S1107). The control unit 123 may determine that the input to the virtual robot 200a has ended, for example, by receiving an end input from the user to the information processing device 120, detecting an end input from the user 10 to the head-mounted display 110, or detecting a specific operation of the user's hand or fingers in the captured image.

仮想ロボット200aに対する入力が終了していないと判定した場合には(ステップS1107のNO)、ステップS1101の処理に戻って以降の処理を実行する。仮想ロボット200aに対する入力が終了したと判定した場合には(ステップS1107のYES)、制御部123は、仮想ロボット200aに対するユーザ10による一連の操作から、ユーザ10がロボット200に実行させた処理が何であるかを解釈する。そして、その解釈結果から、ロボット200に対する動作命令である教示命令を生成する(ステップS1108)。制御部123は、通信部121を介して、生成した教示命令を実際のロボット200に送信し(ステップS1109)、処理を終了する。 If it is determined that the input to the virtual robot 200a has not ended (NO in step S1107), the control unit 123 returns to step S1101 and executes the subsequent processes. If it is determined that the input to the virtual robot 200a has ended (YES in step S1107), the control unit 123 interprets, from a series of operations performed by the user 10 on the virtual robot 200a, what process the user 10 has caused the robot 200 to execute. Then, from the interpretation result, a teaching command, which is an operation command for the robot 200, is generated (step S1108). The control unit 123 transmits the generated teaching command to the actual robot 200 via the communication unit 121 (step S1109), and ends the process.

これにより、情報処理装置120は、ユーザからの詳細な入力(実際にロボット200を手で動かしてのティーチングや、時間毎の各駆動軸の細やかな指定によるティーチング)なしで、実際のロボット200に対する指示を出力することができる。 This allows the information processing device 120 to output instructions to the actual robot 200 without detailed input from the user (teaching by actually moving the robot 200 by hand or teaching by detailed specification of each drive axis at each time).

最後に、図12は、実際のロボット200の動作を示すフローチャートである。 Finally, Figure 12 is a flowchart showing the actual operation of the robot 200.

図12に示すように、ロボット200の通信部201は、情報処理装置120から教示命令を受信する(ステップS1201)。通信部201は、受信した教示命令を、制御部203に伝達する。 As shown in FIG. 12, the communication unit 201 of the robot 200 receives a teaching command from the information processing device 120 (step S1201). The communication unit 201 transmits the received teaching command to the control unit 203.

制御部203は、受信した教示命令を記憶部202に記憶する(ステップS1202)。 The control unit 203 stores the received teaching command in the memory unit 202 (step S1202).

制御部203は、教示命令の内容を解釈して、実行すべき処理内容を特定する(ステップS1203)。検出部205は、検出した周囲の状況を示すセンシングデータを制御部203に伝達する。これにより、制御部203は、ロボット200の周囲の状況を把握する(ステップS1204)。 The control unit 203 interprets the contents of the teaching command and identifies the processing content to be executed (step S1203). The detection unit 205 transmits sensing data indicating the detected surrounding situation to the control unit 203. In this way, the control unit 203 grasps the surrounding situation of the robot 200 (step S1204).

制御部203は、伝達されたセンシングデータから、教示命令で示される状況に合致するか否かを判定する(S1205)。周囲の状況が教示命令で示される状況に合致すると判定した場合(ステップS1205のYES)、即ち、教示命令を実行すべき状況であると判定した場合に、制御部123は、教示命令で示される命令内容を、駆動部204を制御して実行し(ステップS1206)、処理を終了する。 The control unit 203 determines whether the transmitted sensing data matches the situation indicated by the teaching command (S1205). If it is determined that the surrounding situation matches the situation indicated by the teaching command (YES in step S1205), that is, if it is determined that the teaching command should be executed, the control unit 123 controls the drive unit 204 to execute the command contents indicated by the teaching command (step S1206), and ends the process.

これにより、ロボット200は、ユーザから詳細な指示なく、感覚的になされた指示に従って生成された教示命令にしたがって、ユーザの望む動作を実行することができる。 This allows the robot 200 to execute the actions desired by the user, following the teaching commands generated based on intuitive instructions, without detailed instructions from the user.

<まとめ>
従来のロボットに対するティーチングは、実際のロボットを動かしたりする場合には重労働となったり、プログラムによるティーチングであれば高度な専門知識を要求されたりするなど、通常のユーザには困難を伴うものがあった。これに対して、本実施の形態に係る教示システム1によれば、仮想上のロボットに対する間隔的な操作で、実際のロボットに対して実行すべき処理を教示することができるので、従来よりも、簡易かつ感覚的にロボットのティーチングを実行できる。したがって、本実施の形態に係る情報処理装置120及び情報処理装置120を含む教示システム1は、ロボットのティーチングの利便性の向上を促すことができる。
<Summary>
Conventional robot teaching involves difficulties for ordinary users, such as heavy labor when operating an actual robot, or highly specialized knowledge when teaching by program. In contrast, according to the teaching system 1 of the present embodiment, a process to be executed by an actual robot can be taught by periodically operating a virtual robot, so that robot teaching can be performed more simply and intuitively than before. Therefore, the information processing device 120 of the present embodiment and the teaching system 1 including the information processing device 120 can promote the improvement of convenience in robot teaching.

<変形例>
上記実施の形態に係る各装置は、上記実施の形態に限定されるものではなく、他の手法により実現されてもよいことは言うまでもない。以下、各種変形例について説明する。
<Modification>
The devices according to the above-described embodiments are not limited to the above-described embodiments, and may be realized by other methods. Various modified examples will be described below.

(1)上記実施の形態においては、情報処理装置120と、ヘッドマウントディスプレイ110とを別個の装置として説明したが、これはその限りではない。ヘッドマウントディスプレイ110と情報処理装置120と一体に形成されてもよい。即ち、ヘッドマウントディスプレイ110は、情報処理装置120が保持する全ての機能を保持していてもよい。 (1) In the above embodiment, the information processing device 120 and the head mounted display 110 are described as separate devices, but this is not limited to the above. The head mounted display 110 and the information processing device 120 may be formed integrally. In other words, the head mounted display 110 may have all the functions that the information processing device 120 has.

また、ヘッドマウントディスプレイ110は、情報処理装置120の一部の機能(例えば、映像を生成する機能)を備えることとしてもよい。この場合、ヘッドマウントディスプレイ110の制御部113は、撮像部114で撮像した撮像映像に基づいて、ユーザ10が実行している操作内容を解析して、映像を生成し、表示部115に表示させる。その一方で、制御部113は、通信部111を介して撮像映像を情報処理装置120に送信し、情報処理装置120の制御部123は、その撮像映像から、ユーザ10がロボットに実行させたい処理内容を解釈して教示命令を生成するようにしてよい。 The head mounted display 110 may also have some of the functions of the information processing device 120 (e.g., a function to generate an image). In this case, the control unit 113 of the head mounted display 110 analyzes the operation performed by the user 10 based on the captured image captured by the imaging unit 114, generates an image, and displays it on the display unit 115. On the other hand, the control unit 113 may transmit the captured image to the information processing device 120 via the communication unit 111, and the control unit 123 of the information processing device 120 may interpret the processing content that the user 10 wants the robot to execute from the captured image and generate a teaching command.

(2)上記実施の形態においては、ロボット200aの先端部201aを動作させる例を示したが、ロボット200aに対する操作は、その先端部201aに対する操作だけに限るものではない。例えば、ロボット200aを構成する複数の関節のうちのいずれかを1つの指(例えば、人差し指)で指示した状態で、他の2本の指(例えば、親指と中指)で1つの指の周りを回転させることで、関節の回転を指示する操作としてもよい。同様に、関節ではなくロボットを構成する軸のいずれかを指定して、同様の操作で軸の回転を指示する操作としてもよい。 (2) In the above embodiment, an example of operating the tip 201a of the robot 200a has been shown, but the operation of the robot 200a is not limited to the operation of the tip 201a. For example, an operation to instruct rotation of a joint may be performed by pointing at one of the multiple joints that make up the robot 200a with one finger (e.g., the index finger) and rotating the one finger with the other two fingers (e.g., the thumb and middle finger). Similarly, an operation to instruct rotation of an axis that makes up the robot, rather than a joint, may be performed by specifying one of the axes that make up the robot in a similar manner.

(3)上記実施の形態においては、一具体例としてロボットの7軸ロボットにより物品の把持、運搬を教示する例を示したが、上述の通り、ロボットは7軸ロボットに限定するものではなく、また、実行する作業も把持、運搬作業に限定するものではない。図13には、ロボット200の他の例として、所謂、自動掃除ロボットを用いる例を示している。 (3) In the above embodiment, a specific example is given of teaching a seven-axis robot to grasp and carry an object, but as mentioned above, the robot is not limited to a seven-axis robot, and the tasks it performs are not limited to grasping and carrying tasks. Figure 13 shows an example of using a so-called automatic cleaning robot as another example of the robot 200.

図13は、ユーザ10aが視認している映像であって、ヘッドマウントディスプレイ110の表示部115に表示された映像を示している。ここでは、ロボット200の一例として、自動掃除ロボット200bを用いる例を示している。自動掃除ロボット200bは、自身のセンサで周囲の環境を確認して、移動経路を自動生成する機能を有するものがあるが、生成された移動経路での清掃は効率が悪い場合がある。そこで、教示システム1を利用して、ユーザが移動経路を指定することができる。図13の例では、点線で示される位置にあるロボット200bをユーザが自身の指1301で所定時間指し示す。このとき、ユーザは、実際のロボット200に触れている必要はなく、仮想上のロボット200bに触れているように見える状態であればよい。情報処理装置120は、ロボット200bに対してユーザが所定時間以上触れていることを検出すると、ロボット200bがユーザの指に追随するように移動する映像を生成する。ユーザは、指1301を移動させることで、ロボット200bが移動すべき移動経路を指示する。ここでは、矢印1302で示すように、指を移動させたとする。すると、情報処理装置120は、その操作から、矢印1302で示される位置を走行するように、図13に示す表示画面と、現実の位置との対応をとって、矢印1302で示す経路の実際の位置(現実座標系)を特定し、特定した座標系での移動経路での掃除を実行させる教示命令を生成する。そして、情報処理装置120は、生成した教示命令をロボット200に送信する。これによって、自動掃除ロボット200は、指定された経路での清掃を実行することができるので、効率的な清掃を行うことができる。 Figure 13 shows an image visually recognized by the user 10a, and is displayed on the display unit 115 of the head-mounted display 110. Here, an example of using an automatic cleaning robot 200b is shown as an example of the robot 200. Some automatic cleaning robots 200b have a function of checking the surrounding environment with their own sensors and automatically generating a movement path, but cleaning along the generated movement path may be inefficient. Therefore, the user can specify a movement path using the teaching system 1. In the example of Figure 13, the user points to the robot 200b at the position indicated by the dotted line with his or her finger 1301 for a predetermined period of time. At this time, the user does not need to touch the actual robot 200, and it is sufficient that the user is in a state where it appears to be touching the virtual robot 200b. When the information processing device 120 detects that the user has touched the robot 200b for a predetermined period of time or more, it generates an image in which the robot 200b moves to follow the user's finger. The user moves the finger 1301 to indicate the movement path along which the robot 200b should move. Here, it is assumed that the finger is moved as shown by arrow 1302. Then, the information processing device 120, based on that operation, identifies the actual position (real coordinate system) of the path indicated by arrow 1302 by matching the display screen shown in FIG. 13 with the actual position so that the robot travels along the position indicated by arrow 1302, and generates a teaching command to perform cleaning along the movement path in the identified coordinate system. The information processing device 120 then transmits the generated teaching command to the robot 200. This allows the automatic cleaning robot 200 to perform cleaning along the specified path, thereby enabling efficient cleaning.

なお、ここでは、ロボット200bを指で所定時間以上指し示すことで、ロボット200bを操作できるようにしているが、これは一例であり、例えば、上記実施の形態と同様にロボット200bをつまむようにして指を動かすことで、ロボット200bを保持し、移動させて、その後につまむ動作を解除するように指を動かすことでロボット200bの移動経路を指定するように構成してもよい。仮想的なロボット200に対する操作方法は、ユーザが間隔的に操作できるものであれば、どのような操作方法であってもよい。 Note that here, the robot 200b can be operated by pointing a finger at the robot 200b for a predetermined period of time or more, but this is merely one example, and for example, similar to the above embodiment, the robot 200b can be held and moved by moving the finger as if pinching the robot 200b, and then the movement path of the robot 200b can be specified by moving the finger as if releasing the pinching motion. Any method of operation can be used for the virtual robot 200, as long as it allows the user to operate it at intervals.

(4)上記実施の形態において、仮想的なロボット200aを実物のロボット200に重畳させたAR映像を表示させることとしてもよい旨を説明したが、更に、ユーザが仮想的なロボット200aを操作するごとに、その操作内容に連動させて、実物のロボット200も同時に(伝達のためのタイムラグは発生してもよい)動作させるように構成してもよい。 (4) In the above embodiment, it has been explained that an AR image in which the virtual robot 200a is superimposed on the real robot 200 may be displayed. Furthermore, it may be configured so that each time the user operates the virtual robot 200a, the real robot 200 is simultaneously operated in conjunction with the operation (a time lag for transmission may occur).

(5)上記実施の形態においては、特に説明していないが、ロボットに対する教示においてより細かく操作したい場合に、情報処理装置120は、ユーザが作業している箇所(例えば、仮想的なロボット200aに対する所定の入力を行って操作している箇所)の拡大映像をヘッドマウントディスプレイ110に提供することとしてよい。この拡大映像は、VR映像により別のウィンドウで操作箇所の拡大画像を表示することとしてもよいし、現在視認している映像をズームする態様で拡大画像を表示することとしてもよい。したがって、その拡大画像を提供することで、ユーザはロボット200aに対する指示入力を実行しやすくなる。なお、教示システム1は、作業箇所の拡大映像を提供するために、実物のロボットの作業箇所(上記実施の形態の例でいえば、把持部)を撮像するための撮像用カメラを備えてもよい。この撮像用カメラは、一例として、ロボット200の先端部201aに設けることとしてもよいし、ロボット200とは別個に外部から撮像できるように備えることとしてもよい。また、この撮像用カメラは、ロボット200とは別個に設ける場合であって、ロボットの作業箇所が移動するときに、その作業箇所の撮像を継続する(作業箇所を追随する)ための移動機構を設けてもよい。例えば、教示システム1において、撮像用カメラをロボット200とは別個のロボットアームに取り付けて、そのロボットアームが動くことによって、作業箇所の撮像を継続できるように構成してもよい。本変形例は、上記変形例(4)に示したように、仮想的なロボット200aを用いて、実際のロボット200をリアルタイムで操作する際に特に有用となる。 (5) Although not specifically described in the above embodiment, when more detailed operation is desired in teaching the robot, the information processing device 120 may provide the head-mounted display 110 with an enlarged image of the location where the user is working (for example, the location where the user is operating the virtual robot 200a by performing a predetermined input). This enlarged image may be displayed as an enlarged image of the operation location in a separate window using VR video, or may be displayed as an enlarged image by zooming in on the currently viewed image. Therefore, by providing the enlarged image, the user can easily execute instruction input to the robot 200a. In addition, the teaching system 1 may be provided with an imaging camera for imaging the actual robot's working location (the gripping portion in the above embodiment) in order to provide an enlarged image of the working location. As an example, this imaging camera may be provided at the tip 201a of the robot 200, or may be provided separately from the robot 200 so that it can be imaged from outside. Furthermore, when the imaging camera is provided separately from the robot 200, a movement mechanism may be provided for continuing to capture images of the work location of the robot (following the work location) when the work location of the robot moves. For example, in the teaching system 1, the imaging camera may be attached to a robot arm separate from the robot 200, and the robot arm may move to continue capturing images of the work location. This modification is particularly useful when using a virtual robot 200a to operate an actual robot 200 in real time, as shown in modification (4) above.

(6) 上記実施の形態においては、教示システムによりロボットに実行すべき内容教示する手法として、情報処理装置120が教示プログラム等を実行することにより、教示命令を生成することとしているが、これは装置に集積回路(IC(Integrated Circuit)チップ、LSI(Large Scale Integration))等に形成された論理回路(ハードウェア)や専用回路によって実現してもよい。また、これらの回路は、1または複数の集積回路により実現されてよく、上記実施の形態に示した複数の機能部の機能を1つの集積回路により実現されることとしてもよい。LSIは、集積度の違いにより、VLSI、スーパーLSI、ウルトラLSIなどと呼称されることもある。 (6) In the above embodiment, the teaching system generates teaching commands by having the information processing device 120 execute a teaching program or the like to teach the robot what to execute. However, this may be realized by a logic circuit (hardware) or a dedicated circuit formed in an integrated circuit (IC (Integrated Circuit) chip, LSI (Large Scale Integration)) or the like in the device. Furthermore, these circuits may be realized by one or more integrated circuits, and the functions of the multiple functional units shown in the above embodiment may be realized by a single integrated circuit. LSIs are sometimes called VLSIs, super LSIs, ultra LSIs, etc., depending on the degree of integration.

また、上記教示プログラムは、プロセッサが読み取り可能な記録媒体に記録されていてよく、記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記教示プログラムは、当該教示プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記プロセッサに供給されてもよい。本発明は、上記歩行教示プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。 The teaching program may be recorded on a processor-readable recording medium, and the recording medium may be a "non-transient tangible medium" such as a tape, disk, card, semiconductor memory, or programmable logic circuit. The teaching program may be supplied to the processor via any transmission medium capable of transmitting the teaching program (such as a communication network or broadcast waves). The present invention may also be realized in the form of a data signal embedded in a carrier wave, in which the walking teaching program is embodied by electronic transmission.

なお、上記教示プログラムは、例えば、C言語、C++、ActionScript、JavaScript(登録商標)などのスクリプト言語、Objective-C、Java(登録商標)などのオブジェクト指向プログラミング言語、HTML5などのマークアップ言語などを用いて実装できる。 The teaching program can be implemented using, for example, scripting languages such as C, C++, ActionScript, and JavaScript (registered trademark), object-oriented programming languages such as Objective-C and Java (registered trademark), and markup languages such as HTML5.

(7)上記実施の形態及び各変形例は、適宜、必要に応じて組み合わせて、所望する機能を実現するように構成されてよい。 (7) The above embodiments and variations may be combined as appropriate and as necessary to achieve the desired functionality.

1 教示システム
110、110a ヘッドマウントディスプレイ
111 通信部
112 記憶部
113 制御部
114 撮像部
115 表示部
120 情報処理装置
121 通信部
122 記憶部
123 制御部
200 ロボット
201 通信部
202 記憶部
203 制御部
204 駆動部
205 検出部
REFERENCE SIGNS LIST 1 Teaching system 110, 110a Head mounted display 111 Communication unit 112 Storage unit 113 Control unit 114 Imaging unit 115 Display unit 120 Information processing device 121 Communication unit 122 Storage unit 123 Control unit 200 Robot 201 Communication unit 202 Storage unit 203 Control unit 204 Driving unit 205 Detection unit

Claims (4)

画像を表示する表示部と、
ユーザの視野方向を撮像する撮像部と、
前記表示部に表示する、仮想的なロボットと、前記撮像部により撮像された撮像映像とを合成した合成映像を生成する画像生成部と、
前記画像生成部により生成された映像から前記ユーザの手による前記仮想的なロボットに対する操作を検出する制御部と、
前記制御部により検出された操作に基づき実際のロボットの動作命令を生成する命令生成部と、
前記動作命令を前記実際のロボットに送信する送信部とを備え、
前記画像生成部は、更に、仮想的な物品を合成した前記合成映像を生成し、
前記制御部は、前記ユーザが前記仮想的な物品に対して行った操作を解析し、
前記実際のロボットは、周囲の画像を取得および解析し、周囲に実際に存在する物品を特定し、
前記命令生成部は、前記ユーザが前記仮想的な物品に対して行った操作について、前記実際のロボットにさせたい動作を解釈し、前記仮想的な物品と同一の物品が実際に存在する場合に、前記実際のロボットに対して前記解釈に基づく動作を実行させる動作命令を生成する
教示システム。
A display unit for displaying an image;
An imaging unit that captures an image in the user's visual field;
an image generating unit that generates a composite image to be displayed on the display unit by combining a virtual robot with an image captured by the imaging unit;
a control unit that detects an operation of the virtual robot by the user's hand from the image generated by the image generation unit;
a command generation unit that generates an actual robot operation command based on the operation detected by the control unit;
a transmission unit that transmits the operation command to the actual robot,
The image generation unit further generates the composite image by combining a virtual object,
The control unit analyzes an operation performed by the user on the virtual object,
The physical robot acquires and analyzes images of its surroundings to identify objects physically present in its surroundings;
The instruction generation unit interprets the operation performed by the user on the virtual object as an action that the user wants the actual robot to take, and when an object identical to the virtual object actually exists, generates an action instruction for the actual robot to perform an action based on the interpretation .
前記撮像部は、前記実際のロボットを含む映像を前記撮像映像として撮像し、
前記合成映像は、前記仮想的なロボットを、前記撮像映像中の実際のロボットに対して重畳した前記合成映像を生成する
ことを特徴とする請求項1に記載の教示システム。
The imaging unit captures an image including the actual robot as the captured image,
The teaching system according to claim 1 , wherein the synthetic image is generated by superimposing the virtual robot on an actual robot in the captured image.
教示システムが実行するロボットへの教示方法であって、
画像を表示する表示ステップと、
ユーザの視野方向を撮像する撮像ステップと、
前記表示ステップにおいて表示する、仮想的なロボットと、前記撮像ステップにより撮像された撮像映像とを合成した合成映像を生成する画像生成ステップと、
前記画像生成ステップにより生成された映像から前記ユーザの手による前記仮想的なロボットに対する操作を検出する制御ステップと、
前記制御ステップにより検出された操作に基づき実際のロボットの動作命令を生成する命令生成ステップと、
前記動作命令を前記実際のロボットに送信する送信ステップとを含み、
前記画像生成ステップは、更に、仮想的な物品を合成した前記合成映像を生成し、
前記制御ステップは、前記ユーザが前記仮想的な物品に対して行った操作を解析し、
前記実際のロボットは、周囲の画像を取得および解析し、周囲に実際に存在する物品を特定し、
前記命令生成ステップは、前記ユーザが前記仮想的な物品に対して行った操作について、前記実際のロボットにさせたい動作を解釈し、前記仮想的な物品と同一の物品が実際に存在する場合に、前記実際のロボットに対して前記解釈に基づく動作を実行させる動作命令を生成する
教示方法。
A teaching method for a robot executed by a teaching system, comprising:
a display step of displaying the image;
An imaging step of imaging a user's visual field direction;
an image generating step of generating a composite image by combining a virtual robot to be displayed in the display step with the captured image captured in the imaging step;
a control step of detecting an operation of the virtual robot by the user's hand from the image generated by the image generation step;
a command generation step of generating an actual robot operation command based on the operation detected by the control step;
and a transmitting step of transmitting the operation command to the actual robot,
The image generating step further includes generating the composite image by combining a virtual object,
The control step includes analyzing an operation performed by the user on the virtual object,
The physical robot acquires and analyzes images of its surroundings to identify objects physically present in its surroundings;
The instruction generation step interprets an operation that the user has performed on the virtual object as an action that the actual robot should take, and, if an object identical to the virtual object actually exists, generates an action instruction for the actual robot to perform an action based on the interpretation .
教示システムのコンピュータに、
画像を表示する表示機能と、
ユーザの視野方向を撮像する撮像機能と、
前記表示機能が表示する、仮想的なロボットと、前記撮像機能により撮像された撮像映像とを合成した合成映像を生成する画像生成機能と、
前記画像生成機能により生成された映像から前記ユーザの手による前記仮想的なロボットに対する操作を検出する制御機能と、
前記制御機能により検出された操作に基づき実際のロボットの動作命令を生成する命令生成機能と、
前記動作命令を前記実際のロボットに送信する送信機能とを実現させ、
前記画像生成機能は、更に、仮想的な物品を合成した前記合成映像を生成し、
前記制御機能は、前記ユーザが前記仮想的な物品に対して行った操作を解析し、
前記実際のロボットは、周囲の画像を取得および解析し、周囲に実際に存在する物品を特定し、
前記命令生成機能は、前記ユーザが前記仮想的な物品に対して行った操作について、前記実際のロボットにさせたい動作を解釈し、前記仮想的な物品と同一の物品が実際に存在する場合に、前記実際のロボットに対して前記解釈に基づく動作を実行させる動作命令を生成する
教示プログラム。
The computer of the teaching system
A display function for displaying an image;
An imaging function for imaging a user's visual field;
an image generating function that generates a composite image by combining a virtual robot displayed by the display function with an image captured by the imaging function;
a control function for detecting an operation of the virtual robot by the user's hand from the image generated by the image generation function;
a command generation function that generates a command for an actual robot operation based on the operation detected by the control function;
A transmission function of transmitting the operation command to the actual robot is realized,
The image generation function further generates the composite image by combining a virtual object,
The control function analyzes an operation performed by the user on the virtual object,
The physical robot acquires and analyzes images of its surroundings to identify objects physically present in its surroundings;
The instruction generation function interprets the operation that the user has performed on the virtual object as an action that the actual robot should take, and generates an action instruction for the actual robot to perform an action based on the interpretation when an object identical to the virtual object actually exists.
JP2023188927A 2019-10-03 2023-11-02 Teaching system, teaching method, and teaching program Active JP7597312B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023188927A JP7597312B2 (en) 2019-10-03 2023-11-02 Teaching system, teaching method, and teaching program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019183318A JP7386451B2 (en) 2019-10-03 2019-10-03 Teaching system, teaching method and teaching program
JP2023188927A JP7597312B2 (en) 2019-10-03 2023-11-02 Teaching system, teaching method, and teaching program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2019183318A Division JP7386451B2 (en) 2019-10-03 2019-10-03 Teaching system, teaching method and teaching program

Publications (2)

Publication Number Publication Date
JP2023181513A JP2023181513A (en) 2023-12-21
JP7597312B2 true JP7597312B2 (en) 2024-12-10

Family

ID=75379485

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2019183318A Active JP7386451B2 (en) 2019-10-03 2019-10-03 Teaching system, teaching method and teaching program
JP2023188927A Active JP7597312B2 (en) 2019-10-03 2023-11-02 Teaching system, teaching method, and teaching program

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2019183318A Active JP7386451B2 (en) 2019-10-03 2019-10-03 Teaching system, teaching method and teaching program

Country Status (1)

Country Link
JP (2) JP7386451B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023017439A (en) * 2021-07-26 2023-02-07 株式会社ダイヘン Safety device
JP2024108284A (en) * 2023-01-31 2024-08-13 株式会社Screenホールディングス Work support method and work support system
JP2025002412A (en) * 2023-06-22 2025-01-09 株式会社Screenホールディングス Work support method and work support system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012171024A (en) 2011-02-17 2012-09-10 Japan Science & Technology Agency Robot system
WO2017130389A1 (en) 2016-01-29 2017-08-03 三菱電機株式会社 Robot teaching device, and method for generating robot control program
JP2018015863A (en) 2016-07-29 2018-02-01 川崎重工業株式会社 Robot system, teaching data generation system, and teaching data generation method
WO2019046559A1 (en) 2017-08-30 2019-03-07 Linkedwyz Using augmented reality for controlling intelligent devices
JP2019042843A (en) 2017-08-31 2019-03-22 川崎重工業株式会社 Robot system and method for operating the same

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE526119C2 (en) * 2003-11-24 2005-07-05 Abb Research Ltd Method and system for programming an industrial robot
JP5742862B2 (en) * 2013-03-18 2015-07-01 株式会社安川電機 Robot apparatus and workpiece manufacturing method
EP3186782A1 (en) * 2014-08-25 2017-07-05 X Development LLC Methods and systems for augmented reality to display virtual representations of robotic device actions
US9643314B2 (en) * 2015-03-04 2017-05-09 The Johns Hopkins University Robot control, training and collaboration in an immersive virtual reality environment
JP2017047478A (en) * 2015-08-31 2017-03-09 セイコーエプソン株式会社 Control device, robot, and robot system
JP2019063953A (en) * 2017-10-02 2019-04-25 株式会社オカムラ Work system, method for controlling work system and program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012171024A (en) 2011-02-17 2012-09-10 Japan Science & Technology Agency Robot system
WO2017130389A1 (en) 2016-01-29 2017-08-03 三菱電機株式会社 Robot teaching device, and method for generating robot control program
JP2018015863A (en) 2016-07-29 2018-02-01 川崎重工業株式会社 Robot system, teaching data generation system, and teaching data generation method
WO2019046559A1 (en) 2017-08-30 2019-03-07 Linkedwyz Using augmented reality for controlling intelligent devices
JP2019042843A (en) 2017-08-31 2019-03-22 川崎重工業株式会社 Robot system and method for operating the same

Also Published As

Publication number Publication date
JP7386451B2 (en) 2023-11-27
JP2023181513A (en) 2023-12-21
JP2021058949A (en) 2021-04-15

Similar Documents

Publication Publication Date Title
JP7597312B2 (en) Teaching system, teaching method, and teaching program
CN104942803B (en) Robot controller, robot, robot system, teaching method and program
US10179407B2 (en) Dynamic multi-sensor and multi-robot interface system
JP6816364B2 (en) Controls, robots, and robot systems
US7353082B2 (en) Method and a system for programming an industrial robot
CN113183133B (en) Gesture interaction method, system, device and medium for multi-degree-of-freedom robot
KR101705924B1 (en) Spatial, Multi-Modal Control Device for Use with Spatial Operating System
KR20130105725A (en) Computer vision based two hand control of content
US20130283214A1 (en) Apparatus and method for providing user interface for recognizing gesture
KR20190059726A (en) Method for processing interaction between object and user of virtual reality environment
WO2017145423A1 (en) Information processing system, information processing device, control method, and program
JP2018153874A (en) Presentation device, presentation method and program, and work system
KR20110044391A (en) Input device and method
JP2018144228A (en) Robot control apparatus, robot, robot system, teaching method, and program
Shang-Liang et al. Using deep learning technology to realize the automatic control program of robot arm based on hand gesture recognition
Naughton et al. Integrating open-world shared control in immersive avatars
CN115943020A (en) Method and system for training a robot
Sumukha et al. Gesture controlled 6 DoF manipulator with custom gripper for pick and place operation using ROS2 framework
US12019438B2 (en) Teleoperation with a wearable sensor system
Sibona et al. PoinTap system: a human-robot interface to enable remotely controlled tasks
JP2023017440A (en) Image processing device
CN114474011A (en) Visual industrial robot teaching system
CN118893614B (en) Method for remotely controlling robot and related device
Jeevan et al. AI Virtual Mouse Using Hand Geatures
Lazewatsky et al. Accessible interfaces for robot assistants

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231120

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240716

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240909

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20241105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20241119

R150 Certificate of patent or registration of utility model

Ref document number: 7597312

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350