JP4517086B2 - Communication robot system and robot controller - Google Patents

Communication robot system and robot controller Download PDF

Info

Publication number
JP4517086B2
JP4517086B2 JP2005023959A JP2005023959A JP4517086B2 JP 4517086 B2 JP4517086 B2 JP 4517086B2 JP 2005023959 A JP2005023959 A JP 2005023959A JP 2005023959 A JP2005023959 A JP 2005023959A JP 4517086 B2 JP4517086 B2 JP 4517086B2
Authority
JP
Japan
Prior art keywords
robot
information
communication
action
state
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.)
Expired - Fee Related
Application number
JP2005023959A
Other languages
Japanese (ja)
Other versions
JP2006205343A (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.)
ATR Advanced Telecommunications Research Institute International
Original Assignee
ATR Advanced Telecommunications Research Institute International
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 ATR Advanced Telecommunications Research Institute International filed Critical ATR Advanced Telecommunications Research Institute International
Priority to JP2005023959A priority Critical patent/JP4517086B2/en
Publication of JP2006205343A publication Critical patent/JP2006205343A/en
Application granted granted Critical
Publication of JP4517086B2 publication Critical patent/JP4517086B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

この発明はコミュニケーションロボットシステムおよびロボット制御装置に関し、特にたとえば、人間との間でコミュニケーション行動を行うコミュニケーションロットを制御する、コミュニケーションロボットシステムおよびロボット制御装置に関する。   The present invention relates to a communication robot system and a robot control device, and more particularly, to a communication robot system and a robot control device that control a communication lot that performs communication behavior with a human.

本件出願人は、特許文献1に代表されるように、人間と相互作用するコミュニケーションロボットを提案してきた。
特開2002−355783号公報
The present applicant has proposed a communication robot that interacts with a human, as represented by Patent Document 1.
Japanese Patent Laid-Open No. 2002-355783

背景技術のコミュニケーションロボットを用いて、コミュニケーション中の人間の身体動作と当該コミュニケーションロボットの身体動作とを互いに関連づけて記録しておき、人間の身体動作で、任意のコミュニケーションロボットの行動を呼び出し、実行させることが考えられる。   Using the communication robot of the background technology, record the human body motion during communication and the body motion of the communication robot in association with each other, and call and execute the behavior of any communication robot with the human body motion It is possible.

しかし、人間の身体動作とコミュニケーションロボットの行動とを単純に対応付けることはできない。なぜなら、人間の身体動作(行動)には2通りの可能性があるからである。1つは、コミュニケーションロボットの行動に対する行動(たとえば、コミュニケーションロボットが握手を求めてきたら、人間も握手し返す。)であり、もう1つは、コミュニケーションロボットの行動を検索する行動(人間がコミュニケーションロボットと握手するために、コミュニケーションロボットに手を差し出す。)である。したがって、人間の行動とコミュニケーションロボットの行動との対応関係を単純に記録すると、上記2つの行動が混ざってしまうのである。   However, it is not possible to simply associate human body movements with communication robot actions. This is because there are two possibilities for human body movement (behavior). One is an action with respect to the behavior of the communication robot (for example, when the communication robot asks for a handshake, the person also shakes and returns), and the other is an action for searching for the behavior of the communication robot (a human being the communication robot). (In order to shake hands, hand out to the communication robot.) Therefore, if the correspondence between human behavior and communication robot behavior is simply recorded, the two behaviors are mixed.

それゆえに、この発明の主たる目的は、新規な、コミュニケーションロボットシステムを提供することである。   Therefore, the main object of the present invention is to provide a novel communication robot system.

この発明の他の目的は、人間の身体動作に応じたコミュニケーション行動を実行できる、コミュニケーションロボットシステムを提供することである。   Another object of the present invention is to provide a communication robot system capable of executing communication behavior according to human body movement.

請求項1の発明は、コミュニケーションロボットとこのコミュニケーションロボットを制御する制御装置とを備えるコミュニケーションロボットシステムであって、コミュニケーションロボットは、人間の身体動作に拘わらず自発的にコミュニケーション行動を取る通常状態または人間の身体動作に起因してコミュニケーション行動を取る割り込み状態で、行動情報に従ってコミュニケーション行動を実行するコミュニケーション行動実行手段、行動情報とコミュニケーション行動を実行したときの通常状態または割り込み状態を示す状態情報とを含むロボット情報を制御装置に送信する送信手段、および制御装置からの割り込み指示を受信する割り込み指示受信手段を備え、制御装置は、人間の身体動作についての動作情報を検出する動作情報検出手段、コミュニケーションロボットから送信されるロボット情報を検出するロボット情報検出手段、同時刻における、動作情報とロボット情報とを対応づけて記憶する記憶手段動作情報検出手段によって検出された現在の動作情報と記憶手段に記憶された過去の動作情報とを比較する比較手段比較手段による比較結果が少なくとも類似を示す過去の動作情報が存在するとき、当該過去の動作情報に対応するロボット情報に含まれる状態情報が通常状態を示すか割り込み状態を示すかを判別する状態判別手段、および状態判別手段によって通常状態を示すことが判別されたとき、現在の動作情報に少なくとも類似する過去の動作情報に対応するロボット情報に含まれる行動情報を読み出し、または、状態判別手段によって割り込み状態を示すことが判別されたとき、現在の動作情報に少なくとも類似する過去の動作情報の時間的に次の過去の動作情報に対応するロボット情報に含まれる行動情報を読み出し、コミュニケーションロボットに当該行動情報に従うコミュニケーション行動の実行の割り込み指示を送信する割り込み指示送信手段を備える、コミュニケーションロボットシステムである。 The invention of claim 1 is a communication robot system comprising a communication robot and a control device for controlling the communication robot, wherein the communication robot takes a communication action spontaneously regardless of a human body motion or a human being Communication action execution means for executing communication action according to action information in an interrupt state in which communication action is caused due to the body movement of the person , including action information and state information indicating a normal state or an interrupt state when the communication action is executed transmitting means for transmitting the robot information to the control unit, and includes an interrupt instruction receiving means for receiving an interrupt instruction from the controller, the operation of detecting the operation information about the human body movement Distribution detection means, the robot information detecting means for detecting robot information transmitted from the communication robot, at the same time, the storage means stores an association with operation information and the robot information, the current operation detected by the operation information detecting means The comparison means for comparing the information with the past motion information stored in the storage means, and when there is past motion information indicating that the comparison result by the comparison means is at least similar, it is included in the robot information corresponding to the past motion information State determination means for determining whether the state information to be displayed indicates a normal state or an interrupt state, and when the state determination means determines that the normal state is indicated, past operation information at least similar to the current operation information Read action information included in corresponding robot information, or interrupt by state discrimination means When to show status is determined, the read action information included in the robot information corresponding to the temporally past operation information of the next previous operation information at least similar to the current operation information, the action for communication robot The communication robot system includes an interrupt instruction transmission unit that transmits an interrupt instruction for executing a communication action according to information.

請求項1の発明では、コミュニケーションロボットシステムは、コミュニケーションロボットと、このコミュニケーションロボットを制御する制御装置とを備える。コミュニケーションロボットは、コミュニケーション行動実行手段、送信手段および割り込み指示受信手段を備える。コミュニケーション行動実行手段は、人間の身体動作に拘わらず自発的にコミュニケーション行動を取る通常状態または人間の身体動作に起因してコミュニケーション行動を取る割り込み状態で、行動情報(行動モジュール)に従ってコミュニケーション行動を実行する。たとえば、人間の身体動作に拘わらずコミュニケーションロボットが人間に手を差し出す(握手する)行動(通常状態)と、人間が差し出した手を握るように、コミュニケーションロボットが人間に手を差し出す(握手する)行動(割り込み状態)とが区別される。送信手段は、行動情報とコミュニケーション行動を実行したときの通常状態または割り込み状態を示すコミュニケーションロボットの状態情報とを含むロボット情報を制御装置に送信する。また、割り込み指示受信手段は、制御装置からの割り込み指示を受信する。一方、制御装置は、動作情報検出手段、ロボット情報検出手段、記憶手段、比較手段、状態判別手段、および割り込み指示送信手段を備える。動作情報検出手段は、コミュニケーションロボットとコミュニケーションを行う人間の身体動作についての動作情報を検出する。ロボット情報検出手段は、コミュニケーションロボットから送信されるロボット情報を検出する。記憶手段は、同時刻における、動作情報とロボット情報とを対応づけて記憶する。つまり、人間の身体動作とロボットのコミュニケーション行動との対応関係が記憶される。比較手段は、現在の動作情報と記憶手段に記憶された過去の動作情報とを比較する。状態判別手段は、比較手段による比較結果が少なくとも類似を示す過去の動作情報が存在するとき、当該過去の動作情報に対応するロボット情報に含まれる状態情報が通常状態を示すか割り込み状態を示すかを判別する。割り込み指示送信手段は、状態判別手段によって通常状態を示すことが判別されたとき、現在の動作情報に少なくとも類似する過去の動作情報に対応するロボット情報に含まれる行動情報を読み出し、または、状態判別手段によって割り込み状態を示すことが判別されたとき、現在の動作情報に少なくとも類似する過去の動作情報の時間的に次の過去の動作情報に対応するロボット情報に含まれる行動情報を読み出し、コミュニケーションロボットに当該行動情報に従うコミュニケーション行動の実行の割り込み指示を送信する。 According to a first aspect of the present invention, a communication robot system includes a communication robot and a control device that controls the communication robot. The communication robot includes communication action execution means, transmission means, and interrupt instruction reception means. The communication action execution means executes the communication action according to the action information (behavior module) in the normal state in which the communication action is spontaneously taken regardless of the human body movement or in the interruption state in which the communication action is taken due to the human body movement. To do. For example, a communication robot pushes a hand to a human (shakes a hand) regardless of the human body movement (normal state), and a communication robot pushes a hand to a human (shakes a hand) so that the human holds the hand. A distinction is made from behavior (interrupt state). The transmission means transmits the robot information including the behavior information and the state information of the communication robot indicating the normal state or the interrupt state when the communication behavior is executed to the control device. Further, the interrupt instruction receiving means receives an interrupt instruction from the control device. On the other hand, the control device includes motion information detection means, robot information detection means, storage means, comparison means, state determination means, and interrupt instruction transmission means. The operation information detection means detects the operation information about the human body operation for communication robot and communication. The robot information detecting means detects robot information transmitted from the communication robot. The storage means stores the operation information and the robot information in association with each other at the same time. That is, the correspondence between the human body motion and the robot communication behavior is stored. The comparison unit compares the current operation information with the past operation information stored in the storage unit. Whether the state information included in the robot information corresponding to the past motion information indicates a normal state or an interrupt state when there is past motion information indicating that the comparison result by the comparison unit is at least similar. Is determined. When it is determined that the normal state is indicated by the state determination unit , the interrupt instruction transmission unit reads the behavior information included in the robot information corresponding to the past movement information at least similar to the current movement information, or the state determination When it is determined that the interruption state is indicated by the means, the behavior information included in the robot information corresponding to the past motion information that is temporally next to the past motion information that is at least similar to the current motion information is read, and the communication robot An interruption instruction for execution of the communication action in accordance with the action information is transmitted.

請求項1の発明によれば、人間の身体動作とコミュニケーションロボットのコミュニケーション動作との対応関係を記憶しておき、人間の現在の身体動作に基づいてコミュニケーションロボットにコミュニケーション動作を割り込みで実行させるので、人間の身体動作でコミュニケーションロボットの行動を引き出すことができる。すなわち、人間の身体動作に応じたコミュニケーション行動を、コミュニケーションロボットに実行させることができる。   According to the first aspect of the present invention, since the correspondence relationship between the human body motion and the communication motion of the communication robot is stored, the communication robot is caused to execute the interrupting communication operation based on the current human body motion. The action of the communication robot can be extracted by human body movement. That is, it is possible to cause the communication robot to execute communication behaviors according to human body movements.

請求項の発明は請求項1に従属し、割り込み指示送信手段は、コミュニケーションロボットが割り込みでコミュニケーション行動を行っているときには、新たな割り込み指示を送信しない。 The invention of claim 2 is dependent on claim 1, and the interrupt instruction transmitting means does not transmit a new interrupt instruction when the communication robot is performing an interrupting communication action.

請求項の発明では、割り込み指示送信手段は、コミュニケーションロボットが割り込みでコミュニケーション行動を行っているときには、新たな割り込み指示を送信しない。つまり、連続して割り込み指示を送信しない。 According to the second aspect of the present invention, the interrupt instruction transmitting means does not transmit a new interrupt instruction when the communication robot is performing an interrupting communication action. That is, interrupt instructions are not transmitted continuously.

請求項の発明によれば、連続して割り込み指示を送信しないため、コミュニケーションロボットが同じコミュニケーション行動を繰り返し実行するような不都合を回避することができる。 According to the invention of claim 2 , since the interrupt instruction is not continuously transmitted, it is possible to avoid the inconvenience that the communication robot repeatedly executes the same communication action.

請求項の発明は請求項1または2に従属し、割り込み指示送信手段は、読み出した行動情報が前回割り込みで実行を指示した行動情報と一致するときには、新たな割り込み指示を送信しないThe invention of claim 3 is dependent on claim 1 or 2, and the interrupt instruction transmitting means does not transmit a new interrupt instruction when the read action information matches the action information instructed to be executed in the previous interrupt .

請求項の発明では、割り込み指示送信手段は、読み出した行動情報が前回割り込みで実行を指示した行動情報と一致するときには、新たな割り込み指示を送信しない。つまり、前回の行動情報と同じ行動情報についての割り込み指示は行われない。 In the invention of claim 3 , the interrupt instruction transmitting means does not transmit a new interrupt instruction when the read action information matches the action information instructed to be executed by the previous interrupt. That is, no interruption instruction is performed for the same behavior information as the previous behavior information.

請求項の発明においても請求項2の発明と同様に、コミュニケーションロボットが同じコミュニケーション行動を繰り返し実行するような不都合を回避することができる Oite to the invention of claim 3, similarly to the invention of claim 2, it is possible to communicate robot to avoid a disadvantage such as to repeatedly execute the same communication behavior.

請求項の発明は、人間の身体動作に拘わらず自発的にコミュニケーション行動を取る通常状態または人間の身体動作に起因してコミュニケーション行動を取る割り込み状態で、行動情報に従って当該コミュニケーション行動を実行するコミュニケーションロボットを制御するロボット制御装置であって、人間の身体動作についての動作情報を検出する動作情報検出手段、コミュニケーションロボットから送信されるロボット情報を検出するロボット情報検出手段、同時刻における、動作情報とロボット情報とを対応づけて記憶する記憶手段動作情報検出手段によって検出された現在の動作情報と記憶手段に記憶された過去の動作情報とを比較する比較手段比較手段による比較結果が少なくとも類似を示す過去の動作情報が存在するとき、当該過去の動作情報に対応するロボット情報に含まれる状態情報が通常状態を示すか割り込み状態を示すかを判別する状態判別手段、および状態判別手段によって通常状態を示すことが判別されたとき、現在の動作情報に少なくとも類似する過去の動作情報に対応するロボット情報に含まれる行動情報を読み出し、または、状態判別手段によって割り込み状態を示すことが判別されたとき、現在の動作情報に少なくとも類似する過去の動作情報の時間的に次の過去の動作情報に対応するロボット情報に含まれる行動情報を読み出し、コミュニケーションロボットに当該行動情報に従うコミュニケーション行動の実行の割り込み指示を送信する割り込み指示送信手段を備える、ロボット制御装置である。 The invention according to claim 4 is a communication that executes the communication action according to the action information in a normal state in which the communication action is spontaneously taken regardless of the human body movement or an interruption state in which the communication action is taken due to the human body movement. A robot control device for controlling a robot, comprising: motion information detection means for detecting motion information about a human body motion ; robot information detection means for detecting robot information transmitted from a communication robot; motion information at the same time; Storage means for storing robot information in association with each other, comparison means for comparing current motion information detected by the motion information detection means with past motion information stored in the storage means, and comparison results by the comparison means are at least similar When there is past operation information indicating When it is determined by the state determination means that the state information included in the robot information corresponding to the past motion information indicates a normal state or an interrupt state, and the state determination means indicates the normal state, When the behavior information included in the robot information corresponding to the past motion information at least similar to the motion information is read, or when it is determined by the state determination means to indicate the interrupt state, the past at least similar to the current motion information An action instruction transmitting means for reading action information included in the robot information corresponding to the next past action information of the action information of the action information, and sending an instruction to interrupt the execution of the communication action according to the action information to the communication robot, It is a robot control device.

このロボット制御装置の発明によれば、コミュニケーションロボットシステムの発明と同様に、人間の身体動作に応じたコミュニケーション行動をコミュニケーションロボットに実行させることができる。   According to the invention of the robot control device, the communication robot can be caused to execute a communication action in accordance with a human body motion, similarly to the invention of the communication robot system.

この発明によれば、人間の身体動作とコミュンケーションロボットのコミュニケーション行動との対応関係を記憶しておき、現在の身体動作に基づいてコミュニケーション行動を実行させるので、人間の身体動作に応じたコミュニケーション行動をコミュニケーションロボットに実行させることができる。   According to the present invention, since the correspondence between the human body motion and the communication behavior of the communication robot is stored and the communication behavior is executed based on the current body motion, the communication corresponding to the human body motion is performed. Actions can be performed by communication robots.

この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。   The above object, other objects, features and advantages of the present invention will become more apparent from the following detailed description of embodiments with reference to the drawings.

図1を参照して、この実施例のコミュニケーションロボットシステム(以下、単に「システム」という。)10は、コミュニケーションロボット(以下、単に「ロボット」という。)12を含む。このロボット12は、人間14との間で、身振り手振りのような身体動作ないし行動(以下、「コミュニケーション行動」ということがある。)を取ることができる。ただし、コミュニケーション行動としては、ロボット12と人間14との間における会話が含まれる場合もある。   Referring to FIG. 1, a communication robot system (hereinafter simply referred to as “system”) 10 of this embodiment includes a communication robot (hereinafter simply referred to as “robot”) 12. The robot 12 can take a body motion or action (hereinafter sometimes referred to as “communication action”) such as gesture gestures with the human 14. However, the communication behavior may include a conversation between the robot 12 and the human 14.

ロボット12は、人間のような身体を有し、その身体を用いてコミュニケーションのために必要な複雑な身体動作を生成する。具体的には、図2を参照して、ロボット12は台車32を含み、この台車32の下面には、このロボット12を自律移動させる車輪34が設けられる。この車輪34は、車輪モータ(ロボット12の内部構成を示す図3において参照番号「36」で示す。)によって駆動され、台車32すなわちロボット12を前後左右任意の方向に動かすことができる。   The robot 12 has a human-like body and generates complex body movements necessary for communication using the body. Specifically, referring to FIG. 2, the robot 12 includes a carriage 32, and wheels 34 for autonomously moving the robot 12 are provided on the lower surface of the carriage 32. The wheel 34 is driven by a wheel motor (indicated by reference numeral “36” in FIG. 3 showing the internal configuration of the robot 12), and the carriage 32, that is, the robot 12 can be moved in any direction.

なお、図2では示さないが、この台車32の前面には、衝突センサ(図3において参照番号「38」で示す。)が取り付けられ、この衝突センサ38は、台車32への人や他の障害物の接触を検知する。そして、ロボット12の移動中に障害物との接触を検知すると、直ちに車輪34の駆動を停止してロボット12の移動を急停止させる。   Although not shown in FIG. 2, a collision sensor (indicated by reference numeral “38” in FIG. 3) is attached to the front surface of the carriage 32, and the collision sensor 38 is connected to a person or other person to the carriage 32. Detect obstacle contact. When contact with an obstacle is detected during the movement of the robot 12, the driving of the wheels 34 is immediately stopped and the movement of the robot 12 is suddenly stopped.

また、ロボット12の背の高さは、この実施例では、人、特に子供に威圧感を与えることがないように、100cm程度とされている。ただし、この背の高さは任意に変更可能である。   In this embodiment, the height of the robot 12 is about 100 cm so as not to intimidate people, particularly children. However, this height can be arbitrarily changed.

台車32の上には、多角形柱のセンサ取付パネル40が設けられ、このセンサ取付パネル40の各面には、超音波距離センサ42が取り付けられる。この超音波距離センサ42は、取付パネル40すなわちロボット12の周囲の主として人との間の距離を計測するものである。   A polygonal column sensor mounting panel 40 is provided on the carriage 32, and an ultrasonic distance sensor 42 is mounted on each surface of the sensor mounting panel 40. The ultrasonic distance sensor 42 measures the distance between the mounting panel 40, that is, the person around the robot 12 mainly.

台車32の上には、さらに、ロボット12の胴体が、その下部が上述の取付パネル40に囲まれて、直立するように取り付けられる。この胴体は下部胴体44と上部胴体46とから構成され、これら下部胴体44および上部胴体46は、連結部48によって連結される。連結部48には、図示しないが、昇降機構が内蔵されていて、この昇降機構を用いることによって、上部胴体46の高さすなわちロボット12の高さを変化させることができる。昇降機構は、後述のように、腰モータ(図3において参照番号「50」で示す。)によって駆動される。上で述べたロボット12の身長100cmは、上部胴体46をそれの最下位置にしたときの値である。したがって、ロボット12の身長は100cm以上にすることができる。   Further, the body of the robot 12 is mounted on the carriage 32 so that the lower portion thereof is surrounded by the mounting panel 40 described above and stands upright. The body is composed of a lower body 44 and an upper body 46, and the lower body 44 and the upper body 46 are connected by a connecting portion 48. Although not shown, the connecting portion 48 has a built-in lifting mechanism, and the height of the upper body 46, that is, the height of the robot 12 can be changed by using the lifting mechanism. As will be described later, the elevating mechanism is driven by a waist motor (indicated by reference numeral “50” in FIG. 3). The height 100 cm of the robot 12 described above is a value when the upper body 46 is at its lowest position. Therefore, the height of the robot 12 can be 100 cm or more.

上部胴体46のほぼ中央には、1つの全方位カメラ52と、1つのマイク16とが設けられる。全方位カメラ52は、ロボット12の周囲を撮影するもので、後述の眼カメラ54と区別される。マイク16は、周囲の音、とりわけ人の声を取り込む。   One omnidirectional camera 52 and one microphone 16 are provided in the approximate center of the upper body 46. The omnidirectional camera 52 photographs the surroundings of the robot 12 and is distinguished from an eye camera 54 described later. The microphone 16 captures ambient sounds, particularly human voice.

上部胴体46の両肩には、それぞれ、肩関節56Rおよび56Lによって、上腕58Rおよび58Lが取り付けられる。肩関節56Rおよび56Lは、それぞれ3軸の自由度を有する。すなわち、右肩関節56Rは、X軸,Y軸およびZ軸の各軸廻りにおいて上腕58Rの角度を制御できる。Y軸は、上腕58Rの長手方向(または軸)に平行な軸であり、X軸およびZ軸は、そのY軸に、それぞれ異なる方向から直交する軸である。左肩関節56Lは、A軸,B軸およびC軸の各軸廻りにおいて上腕58Lの角度を制御できる。B軸は、上腕58Lの長手方向(または軸)に平行な軸であり、A軸およびC軸は、そのB軸に、それぞれ異なる方向から直交する軸である。   Upper arms 58R and 58L are attached to both shoulders of the upper body 46 by shoulder joints 56R and 56L, respectively. The shoulder joints 56R and 56L each have three degrees of freedom. That is, the right shoulder joint 56R can control the angle of the upper arm 58R around each of the X, Y, and Z axes. The Y axis is an axis parallel to the longitudinal direction (or axis) of the upper arm 58R, and the X axis and the Z axis are axes orthogonal to the Y axis from different directions. The left shoulder joint 56L can control the angle of the upper arm 58L around each of the A, B, and C axes. The B axis is an axis parallel to the longitudinal direction (or axis) of the upper arm 58L, and the A axis and the C axis are axes orthogonal to the B axis from different directions.

上腕58Rおよび58Lのそれぞれの先端には、肘関節60Rおよび60Lを介して、前腕62Rおよび62Lが取り付けられる。肘関節60Rおよび60Lは、それぞれ、W軸およびD軸の軸廻りにおいて、前腕62Rおよび62Lの角度を制御できる。   Forearms 62R and 62L are attached to the respective distal ends of upper arms 58R and 58L via elbow joints 60R and 60L. The elbow joints 60R and 60L can control the angles of the forearms 62R and 62L around the W axis and the D axis, respectively.

なお、上腕58Rおよび58Lならびに前腕62Rおよび62L(いずれも図3)の変位を制御するX,Y,Z,W軸およびA,B,C,D軸では、「0度」がホームポジションであり、このホームポジションでは、上腕58Rおよび58Lならびに前腕62Rおよび62Lは下方向に向けられる。   In the X, Y, Z, W axes and the A, B, C, D axes that control the displacement of the upper arms 58R and 58L and the forearms 62R and 62L (FIG. 3), “0 degree” is the home position. In this home position, the upper arms 58R and 58L and the forearms 62R and 62L are directed downward.

また、図3では示さないが、上部胴体46の肩関節56Rおよび56Lを含む肩の部分や上述の上腕58Rおよび58Lならびに前腕62Rおよび62Lを含む腕の部分には、それぞれ、タッチセンサ(図3において参照番号64で包括的に示す。)が設けられていて、これらのタッチセンサ64は、人がロボット12のこれらの部位に接触したかどうかを検知する。   Although not shown in FIG. 3, a touch sensor (FIG. 3) is provided on the shoulder portion including the shoulder joints 56R and 56L of the upper body 46 and the arm portion including the upper arms 58R and 58L and the forearms 62R and 62L. The touch sensor 64 detects whether or not a person has touched these parts of the robot 12.

前腕62Rおよび62Lのそれぞれの先端には、手に相当する球体66Rおよび66Lがそれぞれ固定的に取り付けられる。なお、この球体66Rおよび66Lに代えて、この実施例のロボット12と異なり指の機能が必要な場合には、人の手の形をした「手」を用いることも可能である。   Spheres 66R and 66L corresponding to hands are fixedly attached to the tips of the forearms 62R and 62L, respectively. In place of the spheres 66R and 66L, a “hand” in the shape of a human hand can be used when a finger function is required unlike the robot 12 of this embodiment.

上部胴体46の中央上方には、首関節68を介して、頭部70が取り付けられる。この首関節68は、3軸の自由度を有し、S軸,T軸およびU軸の各軸廻りに角度制御可能である。S軸は首から真上に向かう軸であり、T軸およびU軸は、それぞれ、このS軸に対して異なる方向で直交する軸である。頭部70には、人の口に相当する位置に、スピーカ72が設けられる。スピーカ72は、ロボット12が、それの周囲の人に対して音声または声によってコミュニケーションを図るために用いられる。ただし、スピーカ72は、ロボット12の他の部位たとえば胴体に設けられてもよい。   A head 70 is attached to an upper center of the upper body 46 via a neck joint 68. The neck joint 68 has three degrees of freedom and can be controlled in angle around each of the S, T, and U axes. The S-axis is an axis that goes directly from the neck, and the T-axis and the U-axis are axes that are orthogonal to the S-axis in different directions. The head 70 is provided with a speaker 72 at a position corresponding to a human mouth. The speaker 72 is used for the robot 12 to communicate with a person around it by voice or voice. However, the speaker 72 may be provided in another part of the robot 12, for example, the trunk.

また、頭部70には、目に相当する位置に眼球部74Rおよび74Lが設けられる。眼球部74Rおよび74Lは、それぞれ眼カメラ54Rおよび54Lを含む。なお、右の眼球部74Rおよび左の眼球部74Lをまとめて眼球部74といい、右の眼カメラ54Rおよび左の眼カメラ54Lをまとめて眼カメラ54ということもある。眼カメラ54は、ロボット12に接近した人の顔や他の部分ないし物体等を撮影してその映像信号を取り込む。   The head 70 is provided with eyeball portions 74R and 74L at positions corresponding to the eyes. Eyeball portions 74R and 74L include eye cameras 54R and 54L, respectively. The right eyeball portion 74R and the left eyeball portion 74L may be collectively referred to as an eyeball portion 74, and the right eye camera 54R and the left eye camera 54L may be collectively referred to as an eye camera 54. The eye camera 54 captures the video signal by photographing the face of the person approaching the robot 12 and other parts or objects.

なお、上述の全方位カメラ52および眼カメラ54のいずれも、たとえばCCDやCMOSのような固体撮像素子を用いるカメラであってよい。   Note that each of the omnidirectional camera 52 and the eye camera 54 described above may be a camera using a solid-state imaging device such as a CCD or a CMOS.

たとえば、眼カメラ54は眼球部74内に固定され、眼球部74は眼球支持部(図示せず)を介して頭部70内の所定位置に取り付けられる。眼球支持部は、2軸の自由度を有し、α軸およびβ軸の各軸廻りに角度制御可能である。α軸およびβ軸は頭部70に対して設定される軸であり、α軸は頭部70の上へ向かう方向の軸であり、β軸はα軸に直交しかつ頭部70の正面側(顔)が向く方向に直交する方向の軸である。この実施例では、頭部70がホームポジションにあるとき、α軸はS軸に平行し、β軸はU軸に平行するように設定されている。このような頭部70において、眼球支持部がα軸およびβ軸の各軸廻りに回転されることによって、眼球部74ないし眼カメラ54の先端(正面)側が変位され、カメラ軸すなわち視線方向が移動される。   For example, the eye camera 54 is fixed in the eyeball part 74, and the eyeball part 74 is attached to a predetermined position in the head 70 via an eyeball support part (not shown). The eyeball support unit has two degrees of freedom and can be controlled in angle around each of the α axis and the β axis. The α axis and the β axis are axes set with respect to the head 70, the α axis is an axis in a direction toward the top of the head 70, the β axis is orthogonal to the α axis and the front side of the head 70 It is an axis in a direction orthogonal to the direction in which (face) faces. In this embodiment, when the head 70 is at the home position, the α axis is set to be parallel to the S axis and the β axis is set to be parallel to the U axis. In such a head 70, when the eyeball support portion is rotated around each of the α axis and the β axis, the tip (front) side of the eyeball portion 74 or the eye camera 54 is displaced, and the camera axis, that is, the line-of-sight direction is changed. Moved.

なお、眼カメラ54の変位を制御するα軸およびβ軸では、「0度」がホームポジションであり、このホームポジションでは、図3に示すように、眼カメラ54のカメラ軸は頭部70の正面側(顔)が向く方向に向けられ、視線は正視状態となる。   In the α axis and β axis that control the displacement of the eye camera 54, “0 degree” is the home position. At this home position, the camera axis of the eye camera 54 is the head 70 as shown in FIG. The direction of the front side (face) is directed, and the line of sight is in the normal viewing state.

図3には、ロボット12の内部構成を示すブロック図が示される。この図3に示すように、ロボット12は、全体の制御のためにマイクロコンピュータまたはCPU76を含み、このCPU76には、バス78を通して、メモリ80,モータ制御ボード82,センサ入力/出力ボード84および音声入力/出力ボード86が接続される。   FIG. 3 is a block diagram showing the internal configuration of the robot 12. As shown in FIG. 3, the robot 12 includes a microcomputer or a CPU 76 for overall control. The CPU 76 is connected to a memory 80, a motor control board 82, a sensor input / output board 84, and a voice through a bus 78. An input / output board 86 is connected.

メモリ80は、図示しないが、ROMやHDD、RAM等を含み、ROMまたはHDDにはこのロボット12の制御プログラムおよびデータ等が予め格納されている。CPU76は、このプログラムに従って処理を実行する。具体的には、ロボット12の身体動作を制御するための複数のプログラム(行動モジュールと呼ばれる。)が記憶される。たとえば、行動モジュールが示す身体動作としては、「握手」、「抱っこ」、「万歳」…などがある。行動モジュールが示す身体動作が「握手」である場合には、当該行動モジュールを実行すると、ロボット12は、たとえば、右手を前に差し出す。また、行動モジュールが示す身体動作が「抱っこ」である場合には、当該行動モジュールを実行すると、ロボット12は、たとえば、両手を前に差し出す。さらに、行動モジュールが示す身体動作が「万歳」である場合には、当該行動モジュールを実行すると、ロボット12は、たとえば、両手を数回(たとえば、2回)上下させる。また、RAMは、一時記憶メモリとして用いられるとともに、ワーキングメモリとして利用され得る。   Although not shown, the memory 80 includes a ROM, an HDD, a RAM, and the like, and the control program and data for the robot 12 are stored in the ROM or the HDD in advance. The CPU 76 executes processing according to this program. Specifically, a plurality of programs (referred to as action modules) for controlling the body movement of the robot 12 are stored. For example, the body motions indicated by the behavior module include “handshake”, “cuckling”, “many years”, and so on. When the body motion indicated by the behavior module is “handshake”, when the behavior module is executed, the robot 12 presents the right hand forward, for example. Further, when the body motion indicated by the behavior module is “cuddle”, when the behavior module is executed, the robot 12 presents both hands forward, for example. Further, when the body motion indicated by the behavior module is “many years”, when the behavior module is executed, the robot 12 raises and lowers both hands several times (for example, twice), for example. The RAM can be used as a working memory as well as a temporary storage memory.

モータ制御ボード82は、たとえばDSP(Digital Signal Processor)で構成され、右腕、左腕、頭および眼等の身体部位を駆動するためのモータを制御する。すなわち、モータ制御ボード82は、CPU76からの制御データを受け、右肩関節56RのX,YおよびZ軸のそれぞれの角度を制御する3つのモータと右肘関節60Rの軸Wの角度を制御する1つのモータを含む計4つのモータ(図4ではまとめて、「右腕モータ」として示す。)88の回転角度を調節する。また、モータ制御ボード82は、左肩関節56LのA,BおよびC軸のそれぞれの角度を制御する3つのモータと左肘関節60LのD軸の角度を制御する1つのモータとを含む計4つのモータ(図4ではまとめて、「左腕モータ」として示す。)90の回転角度を調節する。モータ制御ボード82は、また、首関節68のS,TおよびU軸のそれぞれの角度を制御する3つのモータ(図4ではまとめて、「頭部モータ」として示す。)92の回転角度を調節する。モータ制御ボード82は、また、腰モータ50、および車輪34を駆動する2つのモータ(図4ではまとめて、「車輪モータ」として示す。)36を制御する。さらに、モータ制御ボード82は、右眼球部74Rのα軸およびβ軸のそれぞれの角度を制御する2つのモータ(図4ではまとめて、「右眼球モータ」として示す。)94の回転角度を調節し、また、左眼球部74Lのα軸およびβ軸のそれぞれの角度を制御する2つのモータ(図4ではまとめて、「左眼球モータ」として示す。)96の回転角度を調節する。   The motor control board 82 is composed of, for example, a DSP (Digital Signal Processor) and controls a motor for driving body parts such as the right arm, the left arm, the head, and the eyes. That is, the motor control board 82 receives control data from the CPU 76, and controls the angles of the three motors for controlling the X, Y, and Z axes of the right shoulder joint 56R and the axis W of the right elbow joint 60R. The rotation angles of a total of four motors including one motor (collectively shown as “right arm motor” in FIG. 4) 88 are adjusted. The motor control board 82 includes a total of four motors including three motors that control the angles of the A, B, and C axes of the left shoulder joint 56L and one motor that controls the angle of the D axis of the left elbow joint 60L. The rotation angle of the motor (collectively shown as “left arm motor” in FIG. 4) 90 is adjusted. The motor control board 82 also adjusts the rotation angles of three motors 92 (collectively shown as “head motors” in FIG. 4) that control the angles of the S, T, and U axes of the neck joint 68. To do. The motor control board 82 also controls the waist motor 50 and the two motors 36 that drive the wheels 34 (collectively shown as “wheel motors” in FIG. 4). Further, the motor control board 82 adjusts the rotation angle of two motors 94 (collectively shown as “right eyeball motor” in FIG. 4) that control the angles of the α axis and β axis of the right eyeball portion 74R. In addition, the rotation angle of two motors 96 (collectively shown as “left eyeball motor” in FIG. 4) for controlling the angles of the α axis and the β axis of the left eyeball portion 74L is adjusted.

なお、この実施例の上述のモータは、車輪モータ36を除いて、制御を簡単化するためにそれぞれステッピングモータまたはパルスモータであるが、車輪モータ36と同様に、直流モータであってよい。   The above-described motors of this embodiment are stepping motors or pulse motors for simplifying the control except for the wheel motors 36, but may be direct-current motors as with the wheel motors 36.

センサ入力/出力ボード84も、同様に、DSPで構成され、各センサやカメラからの信号を取り込んでCPU76に与える。すなわち、超音波距離センサ42の各々からの反射時間に関するデータがこのセンサ入力/出力ボード84を通して、CPU76に入力される。また、全方位カメラ52からの映像信号が、必要に応じてこのセンサ入力/出力ボード84で所定の処理が施された後、CPU76に入力される。眼カメラ54からの映像信号も、同様にして、CPU76に与えられる。また、タッチセンサ64からの信号がセンサ入力/出力ボード84を介してCPU76に与えられる。   Similarly, the sensor input / output board 84 is also constituted by a DSP, and takes in signals from each sensor and camera and gives them to the CPU 76. That is, data relating to the reflection time from each of the ultrasonic distance sensors 42 is input to the CPU 76 through the sensor input / output board 84. The video signal from the omnidirectional camera 52 is input to the CPU 76 after being subjected to predetermined processing by the sensor input / output board 84 as necessary. Similarly, the video signal from the eye camera 54 is also supplied to the CPU 76. Further, a signal from the touch sensor 64 is given to the CPU 76 via the sensor input / output board 84.

スピーカ72には音声入力/出力ボード86を介して、CPU76から、合成音声データが与えられ、それに応じて、スピーカ72からはそのデータに従った音声または声が出力される。また、マイク24からの音声入力が、音声入力/出力ボード86を介してCPU76に取り込まれる。   Synthetic voice data is given to the speaker 72 from the CPU 76 via the voice input / output board 86, and accordingly, voice or voice according to the data is outputted from the speaker 72. Further, the voice input from the microphone 24 is taken into the CPU 76 via the voice input / output board 86.

また、CPU76には、バス78を通して、通信LANボード98が接続される。この通信LANボード98も、同様に、DSPで構成され、CPU76から与えられた送信データを無線通信装置100に与え、無線通信装置100から送信データを送信させる。また、通信LANボード98は無線通信装置100を介してデータを受信し、受信データをCPU76に与える。   Further, a communication LAN board 98 is connected to the CPU 76 through the bus 78. Similarly, the communication LAN board 98 is also configured by a DSP, and sends the transmission data given from the CPU 76 to the wireless communication apparatus 100 and causes the wireless communication apparatus 100 to transmit the transmission data. The communication LAN board 98 receives data via the wireless communication device 100 and provides the received data to the CPU 76.

図1に戻って、システム10はまた、制御装置(ロボット制御装置)としてのコンピュータ20を含み、このコンピュータ20としては、パーソナルコンピュータ(PC)或いはワークステーション(WS)を用いることができる。周知のとおり、コンピュータ20は、CPU、ROM、RAMおよびHDD等を備えている。また、コンピュータ20には、モーションキャプチャシステム22およびデータベース24が接続される。さらに、上述したロボット12は、たとえば、HUB(図示せず)に接続されたアクセスポイント(図示せず)を介して無線LANによってコンピュータ20に接続される。   Returning to FIG. 1, the system 10 also includes a computer 20 as a control device (robot control device), which can be a personal computer (PC) or a workstation (WS). As is well known, the computer 20 includes a CPU, a ROM, a RAM, an HDD, and the like. A motion capture system 22 and a database 24 are connected to the computer 20. Furthermore, the robot 12 described above is connected to the computer 20 by a wireless LAN via an access point (not shown) connected to a HUB (not shown), for example.

モーションキャプチャシステム(3次元動作計測装置)22としては、公知のモーションキャプチャシステムが適用される。たとえば、VICON社(http://www.vicon.com/)の光学式のモーションキャプチャシステムを用いることができる。図示は省略するが、モーションキャプチャシステム22は、PC或いはWSのようなコンピュータを含み、このコンピュータとコンピュータ20とが、たとえばHUBを介して有線または無線LANによって互いに接続される。このモーションキャプチャシステム22は、人間14の身体動作に関する数値データ(動作情報)を検出して、コンピュータ20に送信する。コンピュータ20は、モーションキャプチャシステム22から送信される数値データを後述するデータベース24に記憶(蓄積)する。   A known motion capture system is applied as the motion capture system (three-dimensional motion measurement device) 22. For example, an optical motion capture system of VICON (http://www.vicon.com/) can be used. Although illustration is omitted, the motion capture system 22 includes a computer such as a PC or WS, and the computer and the computer 20 are connected to each other by, for example, a wired or wireless LAN via a HUB. The motion capture system 22 detects numerical data (motion information) related to the body motion of the human 14 and transmits it to the computer 20. The computer 20 stores (accumulates) numerical data transmitted from the motion capture system 22 in a database 24 described later.

図4を用いて具体的に説明すると、モーションキャプチャシステム22においては、複数(少なくとも3つ)の赤外線照射機能を有するカメラ22aが、人間14に対して異なる方向に配置される。人間14には、複数(この実施例では、10個)の赤外線反射マーカ30が取り付けられる。具体的には、図4からも分かるように、赤外線反射マーカ30は、人間14の頭頂、眼の上(額)、胸、肩、肘、手先(手首)のように、人間14の身体動作を特徴づける特徴点すなわち人間14の身体動作を特定可能な部分(部位)に取り付けられる。   Specifically, with reference to FIG. 4, in the motion capture system 22, a plurality (at least three) of cameras 22 a having an infrared irradiation function are arranged in different directions with respect to the human 14. A plurality (10 in this embodiment) of infrared reflection markers 30 are attached to the human 14. Specifically, as can be seen from FIG. 4, the infrared reflective marker 30 is the body motion of the human 14 such as the top of the human 14, the top of the eye (forehead), the chest, the shoulder, the elbow, and the hand (wrist). Is attached to a portion (part) that can specify the body movement of the human 14.

モーションキャプチャシステム22のコンピュータは、カメラ22aから画像データをたとえば60Hz(1秒間に60フレーム)で取得し、画像データの画像処理によって、その計測時の全ての画像データにおける各マーカ30の2次元位置を抽出する。そして、コンピュータは、画像データにおける各マーカ30の2次元位置に基づいて、実空間における各マーカ30の3次元位置を算出し、算出した3次元位置の座標データ(数値データ)を3次元動作データとして、コンピュータ20に送信する。   The computer of the motion capture system 22 acquires image data from the camera 22a at, for example, 60 Hz (60 frames per second), and performs two-dimensional positions of the markers 30 in all image data at the time of measurement by image processing of the image data. To extract. Then, the computer calculates the three-dimensional position of each marker 30 in the real space based on the two-dimensional position of each marker 30 in the image data, and uses the calculated coordinate data (numerical data) of the three-dimensional position as the three-dimensional motion data. As shown in FIG.

コンピュータ20は、モーションキャプチャシステム22から1フレーム(1/60秒)毎に送信される3次元動作データを取得(検出)し、データベース(3次元動作DB)24に入力(記憶)する。また、コンピュータ20は、ロボット12から送信されるロボット情報(後述する、コミュニケーション行動についての情報および行動ステータス)を検出し、3次元動作データに対応づけて3次元動作DB24に記憶する。ただし、ロボット12は、ロボット情報を、当該ロボット情報に含まれるコミュニケーション行動についての情報(行動情報:この実施例では、行動モジュール)が示すコミュニケーション行動を実行したときに、一度だけコンピュータ20に送信する。このため、コンピュータ20は、ロボット情報を受信すると、次のロボット情報を受信するまで、今回受信したロボット情報を、1フレーム毎に検出される3次元動作データに対応づけるようにしてある。   The computer 20 acquires (detects) three-dimensional motion data transmitted from the motion capture system 22 every frame (1/60 second), and inputs (detects) it into the database (three-dimensional motion DB) 24. In addition, the computer 20 detects robot information (information about communication behavior and behavior status, which will be described later) transmitted from the robot 12, and stores it in the three-dimensional motion DB 24 in association with the three-dimensional motion data. However, the robot 12 transmits the robot information to the computer 20 only once when the communication behavior indicated by the information (behavior information: behavior module in this embodiment) about the communication behavior included in the robot information is executed. . Therefore, when receiving the robot information, the computer 20 associates the currently received robot information with the three-dimensional motion data detected for each frame until the next robot information is received.

たとえば、ロボット12は、自身のコンピュータ(CPU76)の指示に従う行動モジュールが示す行動すなわち身体動作を行う(通常状態の動作)。このとき、CPU76は、メモリ80に記憶された行動モジュールをランダムまたは所定のルールに従って読み出して、実行する。また、ロボット12は、コンピュータ20から行動モジュールの名称ないし識別子を指示されると、当該行動モジュールが示す身体動作を行う(割り込み状態の動作)。ただし、通常状態の動作(通常動作)では、ロボット12は人間14の身体動作等に拘わらず、自発的に行う。一方、割り込み状態の動作(割り込み行動)では、ロボット12は人間14の身体動作に起因した動作を行う。   For example, the robot 12 performs the action indicated by the action module according to the instruction of its own computer (CPU 76), that is, the body action (the action in the normal state). At this time, the CPU 76 reads out and executes the behavior module stored in the memory 80 at random or according to a predetermined rule. Further, when the robot 12 is instructed by the computer 20 to specify the name or identifier of the behavior module, the robot 12 performs the physical motion indicated by the behavior module (interrupt state operation). However, in an operation in a normal state (normal operation), the robot 12 performs spontaneously regardless of the human body motion or the like. On the other hand, in the interrupted action (interrupt action), the robot 12 performs an action caused by the human 14's physical action.

上述したように、ロボット12のロボット情報(後述する、行動モジュールおよび行動ステータス)と人間14の3次元動作データとを対応づけて記憶しておくので、人間14の過去の身体動作と人間14の現在の身体動作とを比較し、類似または一致する過去の身体動作に対応づけられたロボット12の身体動作(ロボット情報に含まれる行動情報が示す動作)を引き出すことができる。ただし、同じ人間14が同じ身体動作を行った場合であっても3次元動作データが完全に一致することはほとんど有り得ないため、実際には、類似する過去の身体動作に対応づけられたロボット12の身体動作を引き出すようにしてある。   As described above, since the robot information (behavior module and action status described later) of the robot 12 and the three-dimensional motion data of the human 14 are stored in association with each other, the past body motion of the human 14 and the human 14 Compared with the current body motion, the body motion of the robot 12 (the motion indicated by the behavior information included in the robot information) associated with the past or similar past body motion can be derived. However, even if the same person 14 performs the same body movement, the three-dimensional movement data can hardly coincide completely, so in reality, the robot 12 associated with a similar past body movement. It is designed to bring out the body movements.

ただし、人間14の身体動作(行動)には、2通りの可能性があるため、ロボット12の行動と人間14の行動との対応関係を記録しておき、現在の人間14の行動に類似する過去の行動に対応づけられた行動を単にロボット12に実行させた場合には、2通りの行動が混ざってしまうのである。1つは、ロボット12の行動に対する行動(たとえば、ロボット14が握手を求めてきたら、人間12も握手し返す。)であり、もう1つは、ロボット12の行動を検索する行動(人間14がロボット12と握手するために、ロボット12に手を差し出す。)である。   However, since there are two possibilities for the body motion (behavior) of the human 14, the correspondence relationship between the behavior of the robot 12 and the behavior of the human 14 is recorded and is similar to the current behavior of the human 14. When the robot 12 is simply caused to execute an action associated with a past action, two kinds of actions are mixed. One is an action for the action of the robot 12 (for example, when the robot 14 asks for a handshake, the person 12 also shakes and returns), and the other is an action for searching for the action of the robot 12 (the person 14 In order to shake hands with the robot 12, a hand is put out to the robot 12.)

そこで、この実施例では、ロボット12が行動するときの状態(行動ステータス)もロボット情報に含めて記憶しておき、人間14の現在の身体動作に類似する過去の身体動作を検索する場合に、行動ステータスを考慮することにより、上述したような2つの行動を分別して、適切なコミュニケーション行動を実行できるようにしてある。   Therefore, in this embodiment, the state when the robot 12 behaves (behavior status) is also included in the robot information and stored, and when searching for past physical motion similar to the current physical motion of the human 14, By considering the action status, the two actions as described above are separated and an appropriate communication action can be executed.

具体的には、コンピュータ20は、ロボット12が自ら行動を取る状態(通常状態)または人間14の行動に対する行動を取る状態(割り込み状態)を示すフラグをメモリ80(RAM)に設けておき、当該フラグのオン/オフを考慮して現在の身体動作に類似する身体動作を検索し、ロボット12に割り込みによるコミュニケーション行動(割り込み行動)を実行させるようにしてある。   Specifically, the computer 20 provides a flag indicating a state in which the robot 12 takes an action (normal state) or a state in which the robot 12 takes an action (interrupt state) in the memory 80 (RAM). Considering on / off of the flag, a body motion similar to the current body motion is searched, and the robot 12 is caused to execute a communication behavior (interrupt behavior) by interruption.

図5(A)、(B)、(C)は、それぞれ、ロボット12のコミュニケーション行動と人間14の身体動作との例を示す図解図である。図5(A)は、ロボット12と人間14とが握手している様子を示している。図5(B)では、ロボット12は、人間14に対して抱っこ(ハグ)しようとしている。一方、人間14は、両手を上に上げている。図5(C)では、ロボット12は万歳をしようとしている。一方、人間14は、図面では分かり難いが、左手を振っている。   FIGS. 5A, 5 </ b> B, and 5 </ b> C are illustrative views showing examples of the communication behavior of the robot 12 and the body motion of the human 14, respectively. FIG. 5A shows a state where the robot 12 and the human 14 are shaking hands. In FIG. 5B, the robot 12 is about to hug the human 14. On the other hand, the human 14 raises both hands up. In FIG. 5 (C), the robot 12 is going to have a great age. On the other hand, the human 14 is waving his left hand, which is difficult to understand in the drawing.

このように、コミュニケーションを行っているロボット12のロボット情報と人間14の3次元動作データとを対応づけて3次元動作DB24に記憶しておき、人間14がロボット12に対して何らかの身体動作を行ったときに、当該身体動作を過去の身体動作と比較して、もっとも近似(類似)する身体動作に対応して記録されたロボット12のコミュニケーション行動を実行するようにしてある。したがって、ロボット12が人間14に対して何らかのコミュニケーション行動を取るだけでなく、人間14がロボット12に対して行動(身体動作)を取ることができる。   As described above, the robot information of the communicating robot 12 and the three-dimensional motion data of the human 14 are associated with each other and stored in the three-dimensional motion DB 24, and the human 14 performs some physical motion on the robot 12. At this time, the body motion is compared with the past body motion, and the communication behavior of the robot 12 recorded corresponding to the closest (similar) body motion is executed. Therefore, not only the robot 12 can take any communication action with respect to the human 14, but also the human 14 can take an action (body motion) with respect to the robot 12.

ただし、コンピュータ20は、DB24にデータが或る程度蓄積されるまでは、人間14との間でコミュニケーションを行う場合であっても、ロボット12に割り込み実行させるコミュニケーション行動の検索を実行しない。言うまでもなく、コミュニケーションを開始した当初では、3次元動作データおよびロボット情報がDB24に十分蓄積されておらず、人間14の身体動作に対する正しいコミュニケーション行動をロボット12に実行させることができないためである。この実施例では、ロボット12と人間14との間で、一定時間(たとえば、10分)コミュニケーションを行うまでは、コンピュータ20は検索を実行しない。したがって、この一定時間においては、ロボット12は、通常状態でのみコミュニケーション行動を行うことになる。   However, until a certain amount of data is accumulated in the DB 24, the computer 20 does not search for a communication action that causes the robot 12 to perform an interrupt even when communicating with the human 14. Needless to say, at the beginning of the communication, the three-dimensional motion data and the robot information are not sufficiently stored in the DB 24, and the robot 12 cannot execute correct communication behavior for the human body motion. In this embodiment, the computer 20 does not execute a search until communication is performed between the robot 12 and the human 14 for a certain time (for example, 10 minutes). Therefore, in this fixed time, the robot 12 performs communication behavior only in the normal state.

図6に示すように、コンピュータ20は、同時刻における、3次元動作データと、行動モジュールおよび行動ステータスとを対応付けて3次元動作DB24に記憶する。図6の(1)で示す期間においては、行動モジュールが「握手」であり、そのときの行動ステータスが「通常」であり、それらに対応して、当該期間における3次元動作データが記憶される。また、図6の(2)に示す期間においては、行動モジュールが「抱っこ」であり、そのときの行動ステータスが「通常」であり、それらに対応して、当該期間における3次元動作データが記憶される。さらに、図6の(3)に示す期間においては、行動モジュールが「万歳」であり、そのときの行動ステータスが「通常」であり、それらに対応して、当該期間における3次元動作データが記憶される。   As illustrated in FIG. 6, the computer 20 stores the three-dimensional motion data, the behavior module, and the behavior status at the same time in the three-dimensional motion DB 24 in association with each other. In the period shown in (1) of FIG. 6, the action module is “handshake”, the action status at that time is “normal”, and the three-dimensional motion data in the period is stored correspondingly. . Further, in the period shown in (2) of FIG. 6, the behavior module is “holding”, the behavior status at that time is “normal”, and the three-dimensional motion data in the period is stored correspondingly. Is done. Further, in the period shown in (3) of FIG. 6, the action module is “many years old”, the action status at that time is “normal”, and the three-dimensional motion data in the period is stored correspondingly. Is done.

ただし、上述したように、人間14には複数のマーカ30が取り付けられるため、3次元動作データは多次元となるが、つまり波形は複数現れるが、分かり易く示すために、図6では、或る1つのマーカ30を観測した場合に得られる1の波形のみを示してある。以下、同様である。   However, as described above, since a plurality of markers 30 are attached to the human 14, the three-dimensional motion data is multidimensional, that is, a plurality of waveforms appear. Only one waveform obtained when one marker 30 is observed is shown. The same applies hereinafter.

また、図示は省略するが、後述するように、検索によるコミュニケーション行動が実行される場合には、つまり割り込み行動が実行される場合には、行動ステータスとして「割り込み(インタラプト)」が記憶されることになる。   Although illustration is omitted, as described later, when a communication action by search is executed, that is, when an interrupt action is executed, “interrupt (interrupt)” is stored as the action status. become.

したがって、図7に示すように、3次元動作DB24には、時系列に従って、3次元動作データとこれに対応する行動モジュールおよび行動ステータスとが順次記憶される。ただし、3次元動作データは、上述したように、時系列に従う数値データの集合である。   Therefore, as shown in FIG. 7, the three-dimensional motion DB 24 sequentially stores the three-dimensional motion data, the behavior module and the behavior status corresponding to the three-dimensional motion data in time series. However, as described above, the three-dimensional motion data is a set of numerical data according to time series.

このように、DB24には、データが蓄積されるが、上述したように、一定時間が経過すると、コンピュータ20は検索行動処理を実行し、人間14の現在の身体動作に類似する過去の身体動作を検出し、検出した身体動作に対応して記憶された行動モジュールに従う行動をロボット12に割り込みで実行させる。   As described above, the data is accumulated in the DB 24. As described above, when a predetermined time has elapsed, the computer 20 executes the search behavior process, and the past physical motion similar to the current physical motion of the human 14 is performed. , And causes the robot 12 to execute an action according to the action module stored corresponding to the detected body motion by interruption.

なお、後述するように、コンピュータ20はデータを蓄積する処理(ログ保存処理)と検索行動処理とを並列的に実行する。   Note that, as will be described later, the computer 20 executes a data accumulation process (log storage process) and a search action process in parallel.

具体的には、検索処理では、現在取得した3次元動作データ(以下、「現3次元動作データ」という。)をクエリとして、DB24に蓄積された3次元動作データ(以下、「前3次元動作データ」という。)と順次比較する。図8に示すように、この実施例では、クエリは、現在時刻を含む過去Lフレーム分の3次元動作データである。また、前3次元動作データと現3次元動作データすなわちクエリとを比較する場合には、図8に示すように、Lフレーム単位で1フレームずつずらすようにして、DB24に記憶されたすべての3次元動作データと比較される。比較する手法としては、文字列比較によく用いられる手法(LCSS:Longest Common Subsequence)が適用される。たとえば、ユークリッド距離による方法も考えられるが、時間的な伸縮を許さないため、同一人物が同じ行動を行ったとしても時間的な長さや速さが異なる人間14の身体動作を比較するのには適していない。また、DTW(Dynamic Time Warping)による方法も考えられるが、現3次元動作データに含まれるすべての点を前3次元動作データのいずれかの点に必ず対応づけるようにするため、3次元動作データの一部が欠落している場合であってもいずれかのデータに対応づけようとするため、比較結果の信頼性に欠けてしまう。   Specifically, in the search process, the currently acquired 3D motion data (hereinafter referred to as “current 3D motion data”) is used as a query, and the 3D motion data stored in the DB 24 (hereinafter referred to as “previous 3D motion data”). Data is referred to sequentially. As shown in FIG. 8, in this embodiment, the query is three-dimensional motion data for the past L frames including the current time. Further, when comparing the previous three-dimensional motion data with the current three-dimensional motion data, that is, the query, as shown in FIG. Compared with dimension motion data. As a method for comparison, a method (LCSS: Longest Common Subsequence) often used for character string comparison is applied. For example, although a method based on the Euclidean distance is also conceivable, since it does not allow temporal expansion and contraction, even if the same person performs the same action, in order to compare the body movements of humans 14 having different temporal lengths and speeds Not suitable. Although a method using DTW (Dynamic Time Warping) is also conceivable, in order to make sure that all points included in the current three-dimensional motion data are associated with any one of the previous three-dimensional motion data, the three-dimensional motion data. Even if a part of the data is missing, since it tries to correspond to any data, the reliability of the comparison result is lacking.

そこで、この実施例では、LCSSを適用して、各マーカ30についての前3次元動作データと現3次元動作データとを比較して、つまり、3次元座標同士を比較して、類似度が求められる。各マーカ30の類似度の総和が人間14の身体動作同士の類似度に決定される。ただし、類似するか否かを判断するための閾値(条件)は、予め試験等により経験的に得られた値に設定される。   Therefore, in this embodiment, by applying LCSS, the previous three-dimensional motion data and the current three-dimensional motion data for each marker 30 are compared, that is, the three-dimensional coordinates are compared to obtain the similarity. It is done. The sum of the similarities of each marker 30 is determined as the similarity between the human 14 body movements. However, the threshold value (condition) for determining whether or not they are similar is set to a value empirically obtained in advance by a test or the like.

ここで、図9(A)に示すように、たとえば、クエリ(現3次元動作データ)とa1の期間における前3次元動作データとを比較した結果、互いに類似していると判断されたと仮定する。このとき、図9(A)のa1およびa2で示す期間におけるロボット12の行動ステータスは「通常」であるため、コンピュータ20は、類似するa1に示す期間における前3次元動作データが示す身体動作とロボット12の「握手」の動作とが対応していると判断し、「握手」についてのカウント値を1加算する。   Here, as shown in FIG. 9A, for example, it is assumed that, as a result of comparing the query (current three-dimensional motion data) with the previous three-dimensional motion data in the period a1, it is determined that they are similar to each other. . At this time, since the behavior status of the robot 12 in the period indicated by a1 and a2 in FIG. 9A is “normal”, the computer 20 performs the physical action indicated by the previous three-dimensional action data in the period indicated by a1. It is determined that the “handshake” operation of the robot 12 corresponds, and the count value for “handshake” is incremented by one.

しかし、図9(B)に示すように、b2で示す期間におけるロボット12の行動ステータスが「割り込み」である場合には、コンピュータ20は、b1で示す期間における3次元動作データが示す身体動作はb2で示す期間におけるロボット12の「抱っこ」の動作と対応していると判断し、「抱っこ」についてのカウント値を1加算する。   However, as shown in FIG. 9B, when the action status of the robot 12 in the period indicated by b2 is “interrupt”, the computer 20 performs the body movement indicated by the three-dimensional action data in the period indicated by b1. It is determined that this corresponds to the operation of “cuckling” of the robot 12 in the period indicated by b2, and the count value for “cugging” is incremented by one.

なお、図9(B)においても、クエリ(現3次元動作データ)とb1の期間における前3次元動作データとが類似していると判断されたことを前提としてある。   In FIG. 9B, it is assumed that the query (current three-dimensional motion data) and the previous three-dimensional motion data in the period b1 are determined to be similar.

このように、行動ステータスが「割り込み」である場合には、人間14の身体動作と同時刻におけるロボット12のコミュニケーション行動の次のコミュニケーション行動とが対応していると判断するようにしてある。これは、割り込みでコミュニケーション行動を実行している場合の人間14の身体動作をクエリとしないためである。たとえば、人間14が過去にロボット12に握手してもらい、もう一度握手してもいたくて、過去と同じ身体動作をしたとする。このとき、検索結果が握手するというコミュニケーション行動になり、人間14はロボット12にしてもらいたい行動が出たので、ロボット12と握手する。すると、このときの人間14の握手するという身体動作がクエリになってしまうと、再度ロボット12に握手するという割り込みが入ってしまい、延々と握手が続いてしまうことになるのを防止するためである。   Thus, when the action status is “interrupt”, it is determined that the physical action of the human 14 corresponds to the communication action next to the communication action of the robot 12 at the same time. This is because the body motion of the human 14 when the communication action is executed by interruption is not used as a query. For example, it is assumed that the human 14 has received a handshake from the robot 12 in the past and wants to shake it again, and has performed the same body movement as the past. At this time, the search result is a communication action of shaking hands, and the human 14 shakes with the robot 12 because the action that the robot 12 wants to take has appeared. Then, if the body motion of shaking the human 14 at this time becomes a query, an interruption to shake the robot 12 again will be entered, and this will prevent the handshake from continuing for a long time. is there.

このようにして、コンピュータ20は、クエリとすべての前3次元動作データとを比較し、クエリと類似している3次元動作データに対応すると考えられるロボット12の行動情報をカウントし、最もカウント値が大きい行動情報が示す行動をロボット12に割り込み実行させる。つまり、コンピュータ20は、カウント値が最も大きい行動情報(行動モジュール)が示す行動の割り込み実行の指示をロボット12に送信する。ただし、現在、ロボット12が割り込みでコミュニケーション行動を実行中である場合には、コンピュータ20は、割り込み実行の指示を送信しない。また、カウント値が最も大きい行動情報(行動モジュール)が前回割り込み実行を指示した行動情報と同じである場合にも、コンピュータ20は、割り込み実行の指示を送信しない。これは、同じコミュニケーション行動が繰り返し実行されるのを回避するためである。   In this way, the computer 20 compares the query with all previous three-dimensional motion data, counts the behavior information of the robot 12 that is considered to correspond to the three-dimensional motion data similar to the query, and has the largest count value. The robot 12 is caused to interrupt and execute the action indicated by the action information having a large. That is, the computer 20 transmits to the robot 12 an instruction for interrupting the action indicated by the action information (behavior module) having the largest count value. However, if the robot 12 is currently executing a communication action with an interrupt, the computer 20 does not transmit an interrupt execution instruction. Further, even when the action information (behavior module) having the largest count value is the same as the action information instructed to execute the interrupt last time, the computer 20 does not transmit the instruction to execute the interrupt. This is to avoid repeated execution of the same communication behavior.

図10はコンピュータ20のログ保存処理を示すフロー図である。この図10を参照して、コンピュータ20はログ保存処理を開始すると、ステップS1で、モーションキャプチャシステム22からのキャプチャデータすなわち3次元動作データをメモリ(たとえば、HDDに設けられる仮想メモリ。以下同じ。)に保存(一時保存)する。続く、ステップS3では、ロボット12から送信されたロボット情報すなわち行動モジュール(行動情報)および実行ステータスをメモリに保存(一時保存)する。そして、ステップS5で、同時刻における、キャプチャデータ(3次元動作データ)と、行動モジュールおよび行動ステータスとを対応付けてDB24に保存して、ログ保存処理を終了する。   FIG. 10 is a flowchart showing log storage processing of the computer 20. Referring to FIG. 10, when the computer 20 starts the log saving process, in step S1, the capture data from the motion capture system 22, that is, the three-dimensional motion data, is stored in a memory (for example, a virtual memory provided in the HDD; the same applies hereinafter). ) (Temporary save). In step S3, the robot information, that is, the behavior module (behavior information) and the execution status transmitted from the robot 12 are saved (temporarily saved) in the memory. In step S5, the capture data (three-dimensional motion data), the behavior module, and the behavior status at the same time are associated with each other and stored in the DB 24, and the log storage processing is terminated.

このログ保存処理は、一定時間毎に実行され、ロボット12のコミュニケーション行動と人間14の身体動作とがDB24に記録される。ただし、DB24が一杯になると、最も古いデータに上書きするように、DB24は更新される。   This log storage process is executed at regular intervals, and the communication behavior of the robot 12 and the body movement of the human 14 are recorded in the DB 24. However, when the DB 24 is full, the DB 24 is updated so that the oldest data is overwritten.

図11〜図13は、コンピュータ20の検索行動処理を示すフロー図である。この検索行動処理は、上述したように、一定時間が経過した後に、ログ保存処理と並列的に実行される。図11を参照して、コンピュータ20は検索行動処理を開始すると、ステップS11で、モーションキャプチャシステム22からのキャプチャデータすなわち3次元動作データをメモリ80に保存(一時保存)する。次に、ステップS13では、現在時刻Cを保存(記憶)し、ステップS15で、変数(時刻)Tに0を代入する。続くステップS17では、時刻T(フレーム)からLフレーム分のキャプチャデータ(3次元動作データ)をDB24から取得し、メモリ80にコピーする。そして、ステップS19で、入力されたキャプチャデータすなわち現3次元動作データ(クエリ)とDB24からコピーしたキャプチャデータすなわち前3次元動作データとが類似するかどうかを判断する。   11 to 13 are flowcharts showing the search action process of the computer 20. As described above, this search behavior process is executed in parallel with the log storage process after a predetermined time has elapsed. Referring to FIG. 11, when the computer 20 starts the search action process, in step S11, the computer 20 saves (temporarily saves) capture data from the motion capture system 22, that is, three-dimensional motion data, in the memory 80. Next, in step S13, the current time C is stored (stored), and 0 is substituted into a variable (time) T in step S15. In subsequent step S <b> 17, capture data (three-dimensional motion data) for L frames from time T (frame) is acquired from the DB 24 and copied to the memory 80. In step S19, it is determined whether the input capture data, that is, the current three-dimensional motion data (query), and the capture data copied from the DB 24, that is, the previous three-dimensional motion data are similar.

ステップS19で“NO”であれば、つまり2つのキャプチャデータが類似していなければ、そのまま図13に示すステップS37に進む。しかし、ステップS19で“YES”であれば、つまり2つのキャプチャデータが類似していれば、図12に示すステップS21で、時刻T+L+1のロボット12のコミュニケーション行動が存在するかどうかを判断する。ステップS21で“NO”であれば、つまり時刻T+L+1のロボット12のコミュニケーション行動が存在しなければ、そのままステップS25に進む。一方、ステップS21で“YES”であれば、つまり時刻T+L+1のロボット12のコミュニケーション行動が存在すれば、ステップS23で、時刻T+L+1のロボット12の行動ステータスが「割り込み」であるかどうかを判断する。   If “NO” in the step S19, that is, if the two capture data are not similar, the process proceeds to a step S37 shown in FIG. 13 as it is. However, if “YES” in the step S19, that is, if the two capture data are similar, it is determined whether or not there is a communication action of the robot 12 at the time T + L + 1 in a step S21 shown in FIG. If “NO” in the step S21, that is, if there is no communication action of the robot 12 at the time T + L + 1, the process proceeds to a step S25 as it is. On the other hand, if “YES” in the step S21, that is, if there is a communication action of the robot 12 at the time T + L + 1, it is determined whether or not the action status of the robot 12 at the time T + L + 1 is “interrupt” in a step S23.

ステップS23で“NO”であれば、つまり時刻T+L+1のロボット12の行動ステータスが「通常」であれば、ステップS25で、時刻Tのロボットの行動(行動モジュール)をメモリ80に読込み、ステップS29に進む。しかし、ステップS23で“YES”であれば、つまり時刻T+L+1のロボット12の行動ステータスが「割り込み」であれば、ステップS27で、時刻T+L+1のロボット12の行動モジュールをメモリ80に読込み、ステップS29に進む。   If “NO” in the step S23, that is, if the action status of the robot 12 at the time T + L + 1 is “normal”, the action (behavior module) of the robot at the time T is read into the memory 80 in a step S25, and the process proceeds to the step S29. move on. However, if “YES” in the step S23, that is, if the action status of the robot 12 at the time T + L + 1 is “interrupt”, the action module of the robot 12 at the time T + L + 1 is read into the memory 80 in a step S27, and the process proceeds to the step S29. move on.

ステップS29では、メモリ80に作成された表(図示せず)に当該行動(行動モジュール)が記述されているかどうかを判断する。ステップS29で“YES”であれば、つまりステップS25またはS27で読み込まれた行動がメモリ80の表に存在すれば、ステップS31で、当該行動の行動カウンタを1加算(インクリメント)して、図13に示すステップS37に進む。一方、ステップS29で“NO”であれば、つまりステップS25またはS27で読み込まれた行動がメモリ80の表に存在しなければ、ステップS33で、メモリ80の表に当該行動の欄を設け、ステップS35で、当該行動に対応する行動カウンタを0に設定し、ステップS31に進む。ただし、検索行動処理を開始した当初では、表自体が作成されていないため、ステップS33では、表が作成されるとともに、該当する行動の欄が設けられる。   In step S29, it is determined whether or not the action (behavior module) is described in a table (not shown) created in the memory 80. If “YES” in the step S29, that is, if the action read in the step S25 or S27 exists in the table of the memory 80, the action counter of the action is incremented by 1 (incremented) in a step S31, and FIG. The process proceeds to step S37. On the other hand, if “NO” in the step S29, that is, if the action read in the step S25 or S27 does not exist in the table of the memory 80, a column of the action is provided in the table of the memory 80 in a step S33. In S35, an action counter corresponding to the action is set to 0, and the process proceeds to step S31. However, since the table itself is not created at the beginning of the search action process, in step S33, a table is created and a column for the corresponding action is provided.

図13に示すように、ステップS37では、現在時刻C−Lと時刻T+Lとが一致する(C−L=T+L)かどうかを判断する。つまり、クエリとDB24に保存されているすべての3次元動作データとの類似度を判定し、ロボット12に割り込み実行させるコミュニケーション行動の検索を終了したかどうかを判断している。ステップS37で“NO”であれば、つまり現在時刻C−Lと時刻T+Lとが一致しなければ、ステップS39で、時刻Tに1フレーム加算する。一方、ステップS37で“YES”であれば、つまり現在時刻C−Lと時刻T+Lとが一致すれば、ステップS41で、現在ロボット12が割り込み実行中かどうかを判断する。図示は省略したが、コンピュータ20はロボット12が割り込み実行中か否かを示すフラグ(割り込み中フラグ)を記憶しており、当該フラグのオン/オフに基づいて、ロボット12が割り込み実行中であるかどうかを判断する。ただし、割り込み中フラグは、コンピュータ20から割り込みによるコミュニケーション行動の実行を指示したときにオンされ、ロボット12から送信される行動ステータスが通常状態に変化するとオフされる。   As shown in FIG. 13, in step S37, it is determined whether or not the current time CL and the time T + L match (CL = T + L). That is, the similarity between the query and all the three-dimensional motion data stored in the DB 24 is determined, and it is determined whether or not the search for the communication action that causes the robot 12 to perform an interrupt is completed. If “NO” in the step S37, that is, if the current time CL and the time T + L do not coincide with each other, one frame is added to the time T in a step S39. On the other hand, if “YES” in the step S37, that is, if the current time CL and the time T + L coincide with each other, it is determined whether or not the robot 12 is currently executing an interrupt in a step S41. Although not shown, the computer 20 stores a flag (interrupt flag) indicating whether or not the robot 12 is executing an interrupt, and the robot 12 is executing an interrupt based on ON / OFF of the flag. Determine whether or not. However, the interrupting flag is turned on when the computer 20 instructs execution of the communication action by interruption, and is turned off when the action status transmitted from the robot 12 changes to the normal state.

ステップS41で“YES”であれば、つまり現在ロボット12が割り込み実行中であれば、そのまま検索行動処理を終了する。一方、ステップS41で“NO”であれば、つまり現在ロボット12が通常実行中であれば、ステップS43で、カウント値が最大の行動カウンタに対応する行動(行動モジュール)を特定し、ステップS45で、特定した行動が前回実行した行動と同じであるかどうかを判断する。ステップS45で“YES”であれば、つまり特定した行動が前回実行した行動と同じであれば、同じ行動が繰り返し実行されるのを回避すべく、そのまま検索行動処理を終了する。一方、ステップS45で“NO”であれば、つまり特定した行動が前回実行した行動と異なれば、ステップS47で、特定した行動(行動モジュール)の実行をロボット12に命令(指示)して、検索行動処理を終了する。   If “YES” in the step S41, that is, if the robot 12 is currently executing an interruption, the search action process is ended as it is. On the other hand, if “NO” in the step S41, that is, if the robot 12 is currently being executed normally, an action (behavior module) corresponding to the action counter having the maximum count value is specified in a step S43, and in a step S45. , It is determined whether or not the identified action is the same as the action executed last time. If “YES” in the step S45, that is, if the identified action is the same as the action executed previously, the search action process is ended as it is to avoid the same action being repeatedly executed. On the other hand, if “NO” in the step S45, that is, if the specified action is different from the previously executed action, in step S47, the robot 12 is instructed (instructed) to execute the specified action (behavior module) and searched. End the action process.

この実施例によれば、コミュニケーションを行う人間の行動を記録するとともに、ロボットの行動およびそのときのステータスを記憶するので、ロボットに通常行動および検索行動を実行させることができる。つまり、人間の行動からロボットの行動を引き出すことができる。   According to this embodiment, since the behavior of the person who performs communication is recorded and the behavior of the robot and the status at that time are stored, the robot can execute the normal behavior and the retrieval behavior. In other words, the robot's behavior can be derived from the human behavior.

また、この実施例では、コミュニケーション行動を行う人間の動作を記憶しておき、それを用いて当該人間に対する行動をロボットに実行させるので、各人間に応じたコミュニケーションを取ることができる。したがって、たとえば、ロボット12が人物Aとコミュニケーション行動を終了した後に、人物Bとのコミュニケーション行動を実行する場合には、コンピュータ20は、たとえば、3次元動作DB24を消去するようにすればよい。   Further, in this embodiment, since the movement of a human performing a communication action is stored and the robot is caused to execute the action for the human being, it is possible to communicate according to each person. Therefore, for example, when the communication action with the person B is executed after the robot 12 finishes the communication action with the person A, the computer 20 may delete the three-dimensional motion DB 24, for example.

なお、この実施例では、ロボットが特定の1人の人間との間でコミュニケーションを取る場合について説明したが、時間帯が異なれば、2人以上の人間との間でコミュニケーションを取ることも可能である。かかる場合には、各人間14を識別可能にしておき、人間14毎の3次元動作DBを設け、ロボット12とコミュニケーションを行っている人間14を特定し、特定した人間14の身体動作に応じて、特定した人間14についての3次元動作DBを検索して、ロボット12の行動を引き出すようにすればよい。各人間14は、映像や識別情報により、識別可能である。映像での識別は、たとえば、各人間14に異なる色や異なるマークの付された服を着させておき、これをCCDカメラ等のカメラで撮影して得られる画像データを解析することにより実現可能である。識別情報での識別は、各人間14に識別情報の異なるタグを所持または装着しておき、タグが発信する識別情報を解析することにより実現可能である。   In this embodiment, the case where the robot communicates with one specific person has been described, but it is also possible to communicate with two or more persons if the time zone is different. is there. In such a case, each human 14 is made identifiable, a three-dimensional motion DB is provided for each human 14, the human 14 communicating with the robot 12 is specified, and the human 14 according to the specified human body motion is identified. The three-dimensional motion DB for the specified person 14 may be searched to extract the behavior of the robot 12. Each person 14 can be identified by an image or identification information. The identification in the video can be realized by, for example, putting each person 14 wearing clothes with different colors or different marks, and analyzing the image data obtained by photographing this with a camera such as a CCD camera. It is. Identification with identification information can be realized by holding or attaching a tag with different identification information to each person 14 and analyzing the identification information transmitted by the tag.

図1はこの発明のコミュニケーションロボットシステムの一例を示す図解図である。FIG. 1 is an illustrative view showing one example of a communication robot system of the present invention. 図2は図1実施例に示すロボットの外観を説明するための図解図である。FIG. 2 is an illustrative view for explaining the appearance of the robot shown in FIG. 1 embodiment. 図3は図1および図2に示すロボットの電気的な構成を示す図解図である。FIG. 3 is an illustrative view showing an electrical configuration of the robot shown in FIGS. 1 and 2. 図4はモーションキャプチャシステムで検出するマーカの人間への装着状態を示す図解図である。FIG. 4 is an illustrative view showing a state where a marker detected by the motion capture system is attached to a person. 図5はロボットと人間とのコミュニケーション行動の例を示す図解図である。FIG. 5 is an illustrative view showing an example of communication behavior between a robot and a human. 図6は図5に示すようなコミュニケーション行動によりデータベースに記憶されるデータの例を示す図解図である。FIG. 6 is an illustrative view showing an example of data stored in the database by the communication behavior shown in FIG. 図7はデータベースの内容を示す図解図である。FIG. 7 is an illustrative view showing the contents of a database. 図8は人間の現在の身体動作と人間の過去の身体動作とを比較する比較方法を示す図解図である。FIG. 8 is an illustrative view showing a comparison method for comparing a human's current physical motion with a human's past physical motion. 図9は人間の現在の身体動作と人間の過去の身体動作とを比較する比較方法を示す図解図である。FIG. 9 is an illustrative view showing a comparison method for comparing a human's current physical motion with a human's past physical motion. 図10は図1に示すコンピュータのログ保存処理を示すフロー図である。FIG. 10 is a flowchart showing log storage processing of the computer shown in FIG. 図11は図1に示すコンピュータの検索行動処理の一部を示すフロー図である。FIG. 11 is a flowchart showing a part of the search action process of the computer shown in FIG. 図12は図11に後続する検索行動処理の他の一部を示すフロー図である。FIG. 12 is a flowchart showing another part of the search action process subsequent to FIG. 図13は図11および図12に後続する検索行動処理のその他の一部を示すフロー図である。FIG. 13 is a flowchart showing another part of the search action process subsequent to FIGS. 11 and 12.

符号の説明Explanation of symbols

10 …コミュニケーションロボットシステム
12 …コミュニケーションロボット
16 …マイク
20 …コンピュータ
22 …モーションキャプチャシステム
24 …データベース
38 …衝突センサ
42 …超音波距離センサ
52 …全方位カメラ
54 …眼カメラ
64 …タッチセンサ
76 …CPU
80 …メモリ
82 …モータ制御ボード
84 …センサ入力/出力ボード
86 …音声入力/出力ボード
88−96 …モータ
98 …通信LANボード
100 …無線通信装置
DESCRIPTION OF SYMBOLS 10 ... Communication robot system 12 ... Communication robot 16 ... Microphone 20 ... Computer 22 ... Motion capture system 24 ... Database 38 ... Collision sensor 42 ... Ultrasonic distance sensor 52 ... Omnidirectional camera 54 ... Eye camera 64 ... Touch sensor 76 ... CPU
DESCRIPTION OF SYMBOLS 80 ... Memory 82 ... Motor control board 84 ... Sensor input / output board 86 ... Voice input / output board 88-96 ... Motor 98 ... Communication LAN board 100 ... Wireless communication apparatus

Claims (4)

コミュニケーションロボットとこのコミュニケーションロボットを制御する制御装置とを備えるコミュニケーションロボットシステムであって、
コミュニケーションロボットは、
人間の身体動作に拘わらず自発的にコミュニケーション行動を取る通常状態または人間の身体動作に起因してコミュニケーション行動を取る割り込み状態で、行動情報に従ってコミュニケーション行動を実行するコミュニケーション行動実行手段、
前記行動情報と前記コミュニケーション行動を実行したときの前記通常状態または前記割り込み状態を示す状態情報とを含むロボット情報を前記制御装置に送信する送信手段、および
前記制御装置からの割り込み指示を受信する割り込み指示受信手段を備え、
前記制御装置は、
前記人間の前記身体動作についての動作情報を検出する動作情報検出手段、
前記コミュニケーションロボットから送信されるロボット情報を検出するロボット情報検出手段、
同時刻における、前記動作情報と前記ロボット情報とを対応づけて記憶する記憶手段
前記動作情報検出手段によって検出された現在の動作情報と前記記憶手段に記憶された過去の動作情報とを比較する比較手段
前記比較手段による比較結果が少なくとも類似を示す過去の動作情報が存在するとき、当該過去の動作情報に対応するロボット情報に含まれる状態情報が通常状態を示すか割り込み状態を示すかを判別する状態判別手段、および
前記状態判別手段によって前記通常状態を示すことが判別されたとき、前記現在の動作情報に少なくとも類似する前記過去の動作情報に対応する前記ロボット情報に含まれる前記行動情報を読み出し、または、前記状態判別手段によって前記割り込み状態を示すことが判別されたとき、前記現在の動作情報に少なくとも類似する前記過去の動作情報の時間的に次の前記過去の動作情報に対応する前記ロボット情報に含まれる前記行動情報を読み出し、前記コミュニケーションロボットに当該行動情報に従うコミュニケーション行動の実行の割り込み指示を送信する割り込み指示送信手段を備える、コミュニケーションロボットシステム。
A communication robot system comprising a communication robot and a control device for controlling the communication robot,
Communication robot
A communication action execution means for executing a communication action according to action information in a normal state in which the communication action is spontaneously taken regardless of the human body movement or in an interrupt state in which the communication action is taken due to the human body movement ;
Transmitting means for transmitting robot information including the behavior information and state information indicating the normal state or the interrupt state when the communication behavior is executed, and an interrupt for receiving an interrupt instruction from the control device Comprising an instruction receiving means;
The controller is
Operation information detecting means for detecting operation information about the body movements of the human,
Robot information detecting means for detecting robot information transmitted from the communication robot;
Storage means for storing the motion information and the robot information in association with each other at the same time ;
Comparison means for comparing current motion information detected by the motion information detection means with past motion information stored in the storage means ;
A state for determining whether state information included in the robot information corresponding to the past motion information indicates a normal state or an interrupt state when there is past motion information indicating that the comparison result by the comparison means is at least similar Discrimination means, and
When the state determining means determines that the normal state is indicated, the action information included in the robot information corresponding to the past motion information at least similar to the current motion information is read, or the state When it is determined by the determining means that the interrupt state is indicated, the robot information corresponding to the past motion information that is temporally next to the past motion information that is at least similar to the current motion information is included in the robot information. A communication robot system comprising: interrupt instruction transmission means for reading action information and transmitting an interrupt instruction for executing a communication action according to the action information to the communication robot.
前記割り込み指示送信手段は、前記コミュニケーションロボットが割り込みでコミュニケーション行動を行っているときには、新たな割り込み指示を送信しない、請求項記載のコミュニケーションロボットシステム。 It said interrupt instruction transmitting means, when the communication robot is performing communication behavior in the interrupt does not transmit the new interrupt instruction, communication robot system of claim 1, wherein. 前記割り込み指示送信手段は、読み出した前記行動情報が前回割り込みで実行を指示した前記行動情報と一致するときには、新たな割り込み指示を送信しない、請求項1または2記載のコミュニケーションロボット。3. The communication robot according to claim 1, wherein the interrupt instruction transmission unit does not transmit a new interrupt instruction when the read behavior information matches the behavior information instructed to be executed in the previous interrupt. 人間の身体動作に拘わらず自発的にコミュニケーション行動を取る通常状態または人間の身体動作に起因してコミュニケーション行動を取る割り込み状態で、行動情報に従って当該コミュニケーション行動を実行するコミュニケーションロボットを制御するロボット制御装置であって、
前記人間の前記身体動作についての動作情報を検出する動作情報検出手段、
前記コミュニケーションロボットから送信されるロボット情報を検出するロボット情報検出手段、
同時刻における、前記動作情報と前記ロボット情報とを対応づけて記憶する記憶手段
前記動作情報検出手段によって検出された現在の動作情報と前記記憶手段に記憶された過去の動作情報とを比較する比較手段
前記比較手段による比較結果が少なくとも類似を示す過去の動作情報が存在するとき、当該過去の動作情報に対応するロボット情報に含まれる状態情報が通常状態を示すか割り込み状態を示すかを判別する状態判別手段、および
前記状態判別手段によって前記通常状態を示すことが判別されたとき、前記現在の動作情報に少なくとも類似する前記過去の動作情報に対応する前記ロボット情報に含まれる前記行動情報を読み出し、または、前記状態判別手段によって前記割り込み状態を示すことが判別されたとき、前記現在の動作情報に少なくとも類似する前記過去の動作情報の時間的に次の前記過去の動作情報に対応する前記ロボット情報に含まれる前記行動情報を読み出し、前記コミュニケーションロボットに当該行動情報に従うコミュニケーション行動の実行の割り込み指示を送信する割り込み指示送信手段を備える、ロボット制御装置。
A robot controller for controlling a communication robot that executes a communication action according to action information in a normal state in which communication action is voluntarily performed regardless of human body movement or in an interruption state in which communication action is caused due to human body movement Because
Operation information detecting means for detecting operation information about the body movements of the human,
Robot information detecting means for detecting robot information transmitted from the communication robot;
Storage means for storing the motion information and the robot information in association with each other at the same time ;
Comparison means for comparing current motion information detected by the motion information detection means with past motion information stored in the storage means ;
A state for determining whether state information included in the robot information corresponding to the past motion information indicates a normal state or an interrupt state when there is past motion information indicating that the comparison result by the comparison means is at least similar Discrimination means, and
When the state determining means determines that the normal state is indicated, the action information included in the robot information corresponding to the past motion information at least similar to the current motion information is read, or the state When it is determined by the determining means that the interrupt state is indicated, the robot information corresponding to the past motion information that is temporally next to the past motion information that is at least similar to the current motion information is included in the robot information. A robot control device comprising: an interrupt instruction transmitting unit that reads out action information and transmits an interrupt instruction for executing a communication action according to the action information to the communication robot.
JP2005023959A 2005-01-31 2005-01-31 Communication robot system and robot controller Expired - Fee Related JP4517086B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005023959A JP4517086B2 (en) 2005-01-31 2005-01-31 Communication robot system and robot controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005023959A JP4517086B2 (en) 2005-01-31 2005-01-31 Communication robot system and robot controller

Publications (2)

Publication Number Publication Date
JP2006205343A JP2006205343A (en) 2006-08-10
JP4517086B2 true JP4517086B2 (en) 2010-08-04

Family

ID=36962706

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005023959A Expired - Fee Related JP4517086B2 (en) 2005-01-31 2005-01-31 Communication robot system and robot controller

Country Status (1)

Country Link
JP (1) JP4517086B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5109098B2 (en) * 2007-06-14 2012-12-26 本田技研工業株式会社 Motion control system, motion control method, and motion control program
JP6393991B2 (en) 2014-01-24 2018-09-26 トヨタ自動車株式会社 Robot and control method thereof
EP2933065A1 (en) 2014-04-17 2015-10-21 Aldebaran Robotics Humanoid robot with an autonomous life capability
JP6419585B2 (en) 2015-01-13 2018-11-07 株式会社小松製作所 Excavation machine, excavation machine control method and excavation system
US11220008B2 (en) * 2017-07-18 2022-01-11 Panasonic Intellectual Property Management Co., Ltd. Apparatus, method, non-transitory computer-readable recording medium storing program, and robot
JP2020082246A (en) * 2018-11-20 2020-06-04 大日本印刷株式会社 Posture data generation device, learning tool, computer program, learning data, posture data generation method and learning model generation method
CN109693251B (en) * 2018-12-18 2020-12-08 航天时代电子技术股份有限公司 Robot control system and method based on motion capture
KR102315362B1 (en) * 2020-08-21 2021-10-20 네이버랩스 주식회사 Evaluation method and system for robot

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000105605A (en) * 1998-09-28 2000-04-11 Toyoda Mach Works Ltd Robot controller
JP2001246580A (en) * 2000-03-03 2001-09-11 Sony Corp Information communication robot device, information communication method, and information communication robot system
JP2003181784A (en) * 2001-12-19 2003-07-02 Sanyo Electric Co Ltd Automatic answering robot
JP2004227276A (en) * 2003-01-23 2004-08-12 Advanced Telecommunication Research Institute International Human communication behavior recording system and method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000105605A (en) * 1998-09-28 2000-04-11 Toyoda Mach Works Ltd Robot controller
JP2001246580A (en) * 2000-03-03 2001-09-11 Sony Corp Information communication robot device, information communication method, and information communication robot system
JP2003181784A (en) * 2001-12-19 2003-07-02 Sanyo Electric Co Ltd Automatic answering robot
JP2004227276A (en) * 2003-01-23 2004-08-12 Advanced Telecommunication Research Institute International Human communication behavior recording system and method

Also Published As

Publication number Publication date
JP2006205343A (en) 2006-08-10

Similar Documents

Publication Publication Date Title
JP4517086B2 (en) Communication robot system and robot controller
JP5186723B2 (en) Communication robot system and communication robot gaze control method
JP4822319B2 (en) Communication robot and attention control system using the same
JP5120745B2 (en) Communication robot
JP5429462B2 (en) Communication robot
JP5318623B2 (en) Remote control device and remote control program
JP4599522B2 (en) Communication robot
JP4386367B2 (en) Communication robot improvement system
JP4014044B2 (en) Communication robot and communication system using the same
JP2007190641A (en) Communication robot
JP5145569B2 (en) Object identification method and apparatus
CN105930775B (en) Facial orientation recognition methods based on sensitivity parameter
JP6134895B2 (en) Robot control system, robot control program, and explanation robot
JP4399603B2 (en) Communication robot
JP2005131713A (en) Communication robot
JP3974098B2 (en) Relationship detection system
JP2006185109A (en) Image measurement device and image measurement method
JP2007160427A (en) Robot control system
JP4798581B2 (en) Robot system
JP4617428B2 (en) Motion generation system
KR20140009900A (en) Apparatus and method for controlling robot
JP2007130691A (en) Communication robot
WO2021005878A1 (en) Information processing device, information processing method, and information processing program
JP4613284B2 (en) Communication robot and motion identification system using the same
JP2004227276A (en) Human communication behavior recording system and method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071108

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090709

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090714

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090903

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: 20100406

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100408

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130528

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140528

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees