JP2004304714A - Information processing system, information processing apparatus, information processing method, and program - Google Patents

Information processing system, information processing apparatus, information processing method, and program Download PDF

Info

Publication number
JP2004304714A
JP2004304714A JP2003098071A JP2003098071A JP2004304714A JP 2004304714 A JP2004304714 A JP 2004304714A JP 2003098071 A JP2003098071 A JP 2003098071A JP 2003098071 A JP2003098071 A JP 2003098071A JP 2004304714 A JP2004304714 A JP 2004304714A
Authority
JP
Japan
Prior art keywords
command
synchronization information
processing
processing device
cooperative
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.)
Withdrawn
Application number
JP2003098071A
Other languages
Japanese (ja)
Inventor
Masanori Omote
雅則 表
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2003098071A priority Critical patent/JP2004304714A/en
Publication of JP2004304714A publication Critical patent/JP2004304714A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a technology capable of matching the start timings of cooperation actions. <P>SOLUTION: A personal computer 6 broadcasts a synchronous packet including a command to match the start timings of cooperation actions to each of robots 5 through the UDP. Further, the personal computer 6 unicasts a communication packet to inquire about the reception of the synchronous packet to each robot through the TCP. Since the personal computer 6 broadcasts the synchronous packet required to match the start timings of the cooperation actions to each robot through the UDP so as to allow each robot 5 to be able to simultaneously receive the synchronous packet, the start timings of the cooperation actions of each robot 5 can accurately be matched. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、情報処理システム、情報処理装置、情報処理方法、およびプログラムに関し、特に、協調行動の開始タイミングを合わせることができるようにした情報処理システム、情報処理装置、情報処理方法、およびプログラムに関する。
【0002】
【従来の技術】
図1は、ユーザからの指令や周囲の環境に応じて自主的に行動を決定する自立型のロボット1(図1の例では、3台のロボット)のそれぞれに、所定の協調行動を同時に開始させるための、従来のロボットシステムの例を示している。
【0003】
パーソナルコンピュータ4は、協調行動の開始タイミングを合わせるためのコマンドを、ネットワーク3およびアクセスポイント2を介して、ロボット1−1乃至1−3(以下、個々に区別する必要がない場合、単に、ロボット1と称する。他の場合においても同様である)のそれぞれに送信する。
【0004】
各ロボット1は、パーソナルコンピュータ4からのコマンドを受信すると、そのコマンドに示された待ち時間のカウントを開始し、そのカウントが終了したとき、所定の協調行動を開始する(特許文献参照)。
【0005】
【特許文献】
特開2001−191279号公報
【0006】
【発明が解決しようとする課題】
しかしながら、従来のシステムにおいては、ロボット1とパーソナルコンピュータ4とのデータ通信はTCP(Transmission Control Protocol)に従って行われていたので、協調行動の開始タイミングを合わせるためのコマンドが、パーソナルコンピュータ4と各ロボット1とのコネクションが順次開設された後、各ロボット1のそれぞれに送信されていた。
【0007】
従って、従来のシステムでは、協調行動の開始タイミングを合わせるためのコマンドを受信する時刻が、各ロボット1により異なるので、指定された待ち時間のカウント開始およびその終了時刻が各ロボット1によって異なってしまい、その結果、各ロボット1における協調行動の開始タイミングがずれてしまう課題があった。
【0008】
本発明はこのような状況に鑑みてなされたものであり、ロボット1の協調行動が、同時に開始されるようにするものである。
【0009】
【課題を解決するための手段】
本発明の情報処理システムは、制御装置が、協調処理を処理装置に同時に開始させるための同期情報を、コネクションレス型通信で、処理装置に送信する同期情報送信手段と、同期情報受信の有無を通知させる指令を、コネクション型通信で、処理装置に送信する通知指令送信手段と、処理装置の同期情報受信の有無に応じて、協調行動を開始させる指令を、コネクション型通信で、処理装置に送信する開始指令送信手段とを備え、処理装置が、同期情報を受信するとともに、同期情報に指定された待ち時間の計測を開始する計測手段と、制御装置の通知指令送信手段により、同期情報受信の有無を通知させる指令が送信されたとき、同期情報受信の有無を、制御装置に通知する通知手段と、制御装置の開始指令送信手段により、協調行動を開始させる指令が送信された場合、待ち時間を経過した時点で、協調行動を開始する協調行動開始手段とを備えることを特徴とする。
【0010】
制御装置の開始指令送信手段は、処理装置の同期情報受信の有無に応じて、協調行動の開始を中止させる指令を、コネクション型通信で、処理装置に送信し、処理装置の協調行動開始手段は、制御装置の開始指令送信手段により、協調行動の開始を中止させる指令が送信されたとき、協調行動の開始を中止することができる。
【0011】
制御装置は、同期情報送信手段により同期情報が送信されたとき、同期情報に指定された待ち時間の計測を開始し、開始指令送信手段により、協調行動を開始する指令が送信された場合、待ち時間を経過した時点で、自分自身が協調行動を開始することができる。
【0012】
本発明の第1の情報処理方法は、制御装置において協調処理を処理装置に同時に開始させるための同期情報を、コネクションレス型通信で、処理装置に送信する同期情報送信ステップと、制御装置において同期情報受信の有無を通知させる指令を、コネクション型通信で、処理装置に送信する通知指令送信ステップと、処理装置において同期情報を受信するとともに、同期情報に指定された待ち時間の計測を開始する計測ステップと、処理装置において制御装置の通知指令送信ステップの処理で、同期情報受信の有無を通知させる指令が送信されたとき、同期情報受信の有無を、制御装置に通知する通知ステップと、制御装置において処理装置の同期情報受信の有無に応じて、協調行動を開始させる指令を、コネクション型通信で、処理装置に送信する開始指令送信ステップと、処理装置において制御装置の開始指令送信ステップの処理で、協調行動を開始させる指令が送信された場合、待ち時間を経過した時点で、協調行動を開始する協調行動開始ステップとを備えることを特徴とする。
【0013】
本発明の情報処理システムおよび第1の情報処理方法においては、協調処理を処理装置に同時に開始させるための同期情報が、コネクションレス型通信で、処理装置に送信され、同期情報受信の有無を通知させる指令が、コネクション型通信で、処理装置に送信され、処理装置において同期情報を受信するとともに、同期情報に指定された待ち時間の計測が開始され、同期情報受信の有無を通知させる指令が送信されたとき、同期情報受信の有無が、制御装置に通知され、処理装置の同期情報受信の有無に応じて、協調行動を開始させる指令が、コネクション型通信で、処理装置に送信され、処理装置において協調行動を開始させる指令が送信された場合、待ち時間を経過した時点で、協調行動が開始される。
【0014】
本発明の第1の情報処理装置は、協調処理を処理装置に同時に開始させるための同期情報を、コネクションレス型通信で、処理装置に送信する同期情報送信手段と、同期情報受信の有無を通知させる指令を、コネクション型通信で、処理装置に送信する通知指令送信手段と、処理装置の同期情報受信の有無に応じて、協調行動を開始させる指令を、コネクション型通信で、処理装置に送信する開始指令送信手段とを備えることを特徴とする。
【0015】
本発明の第2の情報処理方法は、協調処理を処理装置に同時に開始させるための同期情報を、コネクションレス型通信で、処理装置に送信する同期情報送信ステップと、同期情報受信の有無を通知させる指令を、コネクション型通信で、処理装置に送信する通知指令送信ステップと、処理装置の同期情報受信の有無に応じて、協調行動を開始させる指令を、コネクション型通信で、処理装置に送信する開始指令送信ステップとを含むことを特徴とする。
【0016】
本発明の第1のプログラムは、協調処理を処理装置に同時に開始させるための同期情報を、コネクションレス型通信で、処理装置に送信する同期情報送信ステップと、同期情報受信の有無を通知させる指令を、コネクション型通信で、処理装置に送信する通知指令送信ステップと、処理装置の同期情報受信の有無に応じて、協調行動を開始させる指令を、コネクション型通信で、処理装置に送信する開始指令送信ステップとを含む処理をコンピュータに実行させることを特徴とする。
【0017】
本発明の第1の情報処理装置および第2の情報処理方法、並びに第1のプログラムにおいては、協調処理を処理装置に同時に開始させるための同期情報が、コネクションレス型通信で、処理装置に送信され、同期情報受信の有無を通知させる指令が、コネクション型通信で、処理装置に送信され、処理装置の同期情報受信の有無に応じて、協調行動を開始させる指令が、コネクション型通信で、処理装置に送信される。
【0018】
本発明の第2の情報処理装置は、制御装置から、コネクションレス型通信で送信されてきた、協調処理を処理装置に同時に開始させるための同期情報を受信するとともに、同期情報に指定された待ち時間の計測を開始する計測手段と、制御装置から、同期情報受信の有無を通知させる指令が送信されてきたとき、同期情報受信の有無を、制御装置に通知する通知手段と、制御装置から、協調行動を開始させる指令が送信されてきた場合、待ち時間を経過した時点で、協調行動を開始する協調行動開始手段とを備えることを特徴とする。
【0019】
本発明の第3の情報処理方法は、制御装置から、コネクションレス型通信で送信されてきた、協調処理を処理装置に同時に開始させるための同期情報を受信するとともに、同期情報に指定された待ち時間の計測を開始する計測ステップと、制御装置から、同期情報受信の有無を通知させる指令が送信されてきたとき、同期情報受信の有無を、制御装置に通知する通知ステップと、制御装置から、協調行動を開始させる指令が送信されてきた場合、待ち時間を経過した時点で、協調行動を開始する協調行動開始ステップとを含むことを特徴とする。
【0020】
本発明の第2のプログラムは、制御装置から、コネクションレス型通信で送信されてきた、協調処理を処理装置に同時に開始させるための同期情報を受信するとともに、同期情報に指定された待ち時間の計測を開始する計測ステップと、制御装置から、同期情報受信の有無を通知させる指令が送信されてきたとき、同期情報受信の有無を、制御装置に通知する通知ステップと、制御装置から、協調行動を開始させる指令が送信されてきた場合、待ち時間を経過した時点で、協調行動を開始する協調行動開始ステップとを含む処理をコンピュータに実行させることを特徴する。
【0021】
本発明の第2の情報処理装置および第3の情報処理方法、並びに第2のプログラムにおいては、制御装置から、コネクションレス型通信で送信されてきた、協調処理を処理装置に同時に開始させるための同期情報を受信するとともに、同期情報に指定された待ち時間の計測が開始され、制御装置から、同期情報受信の有無を通知させる指令が送信されてきたとき、同期情報受信の有無が、制御装置に通知され、制御装置から、協調行動を開始させる指令が送信されてきた場合、待ち時間を経過した時点で、協調行動が開始される。
【0022】
【発明の実施の形態】
図2は、本発明を適用した、複数のロボット5(図2の例では、3台のロボット)のそれぞれに、所定の協調行動を同時に開始させるためのロボットシステムの例を示している。
【0023】
パーソナルコンピュータ6は、協調行動の開始タイミングを合わせるためのコマンドを含む通信パケット(以下、同期パケットと称する)を、コネクション型通信(この例の場合、UDP(User Datagram Protocol))で、各ロボット5にブロードキャストまたはマルチキャストする(各ロボット5に対して、同時に送信する)。パーソナルコンピュータ6はまた、他の情報(同期パケット受信の有無を問い合わせるためのコマンド、協調行動を開始させるためのコマンド、協調行動を中止させるためのコマンド等)を、コネクション型通信(この例の場合、TCP)で、各ロボット5にユニキャストする。
【0024】
ロボット5−1乃至5−3は、パーソナルコンピュータ6からの同期パケットを受信すると、同期パケットに格納されている待ち時間のカウントを開始し、その後、協調行動を開始させるためのコマンドをさらに受信した場合、待ち時間のカウントが終了した時点で、所定の協調行動を開始する。一方、協調行動を中止させるコマンドを受信したとき、ロボット5は、協調行動を行わない。
【0025】
このように、協調行動の開始タイミングを合わせるために必要な同期パケットを、UDPで各ロボット5にブロードキャストまたはマルチキャストし、各ロボット5が、その同期パケットを同時に受信することができるようにしたので、各ロボット5の協調行動の開始タイミングを正確に合わせることができる。
【0026】
また、UDPでの通信では、コネクションが開設されず、誤り補償等がなされないので、受信環境によっては同期パケットがロボット5に受信されないこともあり得るが、同期パケットの受信を、TCPで別個に問い合わせるようにしたので、例えば、すべてのロボット5が同期パケットを受信し、協調行動を同時に開始することができる場合にのみ、協調行動をさせることができる。
【0027】
図3は、本発明を適用した2足歩行型のロボット5の正面方向の斜視図であり、図4は、ロボット5の背面方向からの斜視図である。また、図5は、ロボット5の軸構成について説明するための図である。
【0028】
ロボット5は、胴体部ユニット11、胴体部ユニット11の上部に配設された頭部ユニット12、胴体部ユニット11の上部左右の所定位置に取り付けられた腕部ユニット13Aおよび腕部ユニット13B、並びに胴体部ユニット11の下部左右の所定位置に取り付けられた脚部ユニット14Aおよび脚部ユニット14Bにより構成されている。
【0029】
胴体部ユニット11は、体幹上部を形成するフレーム21および体幹下部を形成する腰ベース22が腰関節機構23を介して連結することにより構成されている。胴体部ユニット11は、体幹下部の腰ベース22に固定された腰関節機構23のアクチュエータA1、および、アクチュエータA2をそれぞれ駆動することによって、体幹上部を、図5に示す直交するロール軸24およびピッチ軸25の回りに、それぞれ独立に回転させることができるようになされている。
【0030】
頭部ユニット12は、フレーム21の上端に固定された肩ベース26の上面中央部に首関節機構27を介して取り付けられており、首関節機構27のアクチュエータA3、およびアクチュエータA4をそれぞれ駆動することによって、図5に示す直交するピッチ軸28およびヨー軸29の回りに、それぞれ独立に回転させることができるようになされている。
【0031】
腕部ユニット13A、および腕部ユニット13Bは、肩関節機構30を介して肩ベース26の左右にそれぞれ取り付けられており、対応する肩関節機構30のアクチュエータA5、および、アクチュエータA6をそれぞれ駆動することによって、図5に示す、直交するピッチ軸31およびロール軸32の回りに、それぞれを独立に回転させることができるようになされている。
【0032】
この場合、腕部ユニット13A、および腕部ユニット13Bは、上腕部を形成するアクチュエータA7の出力軸に、肘関節機構44を介して、前腕部を形成するアクチュエータA8が連結され、前腕部の先端に手部34が取り付けられることにより構成されている。
【0033】
そして腕部ユニット13A、および腕部ユニット13Bでは、アクチュエータA7を駆動することによって、前腕部を図5に示すヨー軸35に対して回転させることができ、アクチュエータA8を駆動することによって、前腕部を図5に示すピッチ軸36に対して回転させることができるようになされている。
【0034】
脚部ユニット14A、および、脚部ユニット14Bは、股関節機構37を介して、体幹下部の腰ベース22にそれぞれ取り付けられており、対応する股関節機構37のアクチュエータA9乃至A11をそれぞれ駆動することによって、図5に示す、互いに直交するヨー軸38、ロール軸39、およびピッチ軸40に対して、それぞれ独立に回転させることができるようになされている。
【0035】
脚部ユニット14A、および、脚部ユニット14Bにおいては、大腿部を形成するフレーム41の下端が、膝関節機構42を介して、下腿部を形成するフレーム43に連結されるとともに、フレーム43の下端が、足首関節機構44を介して、足部45に連結されている。
【0036】
これにより脚部ユニット14A、および、脚部ユニット14Bにおいては、膝関節機構42を形成するアクチュエータA12を駆動することによって、図5に示すピッチ軸46に対して、下腿部を回転させることができ、また足首関節機構44のアクチュエータA13、および、アクチュエータA14をそれぞれ駆動することによって、図5に示す直交するピッチ軸47およびロール軸48に対して、足部45をそれぞれ独立に回転させることができるようになされている。
【0037】
脚部ユニット14A、および脚部ユニット14Bの、足部45の足底面(床と接する面)には、それぞれ足底センサ91(図7)が配設されており、足底センサ91のオン・オフに基づいて、足部45が床に接地しているか否かが判別される。
【0038】
また、胴体部ユニット11の体幹下部を形成する腰ベース22の背面側には、後述するメイン制御部61(図6)などを内蔵したボックスである、制御ユニット52が配設されている。
【0039】
図6は、ロボット5のアクチュエータとその制御系等について説明する図である。
【0040】
制御ユニット52には、ロボット5全体の動作制御をつかさどるメイン制御部61、並びに、後述するD/A変換部101、A/D変換部102、バッテリ103、バッテリセンサ131、加速度センサ132、通信部105、および外部メモリ106(いずれも図7)等を含む周辺回路62が収納されている。
【0041】
そしてこの制御ユニット52は、各構成ユニット(胴体部ユニット11、頭部ユニット12、腕部ユニット13Aおよび腕部ユニット13B、並びに、脚部ユニット14Aおよび脚部ユニット14B)内にそれぞれ配設されたサブ制御部63A乃至63Dと接続されており、サブ制御部63A乃至63Dに対して必要な電源電圧を供給したり、サブ制御部63A乃至63Dと通信を行う。
【0042】
また、サブ制御部63A乃至63Dは、対応する構成ユニット内のアクチュエータA1乃至A14と、それぞれ接続されており、メイン制御部61から供給された各種制御コマンドに基づいて、構成ユニット内のアクチュエータA1乃至A14を、指定された状態に駆動させるように制御する。
【0043】
図7は、ロボット5の内部構成を示すブロック図である。
【0044】
頭部ユニット12には、このロボット5の「目」として機能するCCD(Charge Coupled Device )カメラ81、「耳」として機能するマイクロフォン82、頭部センサ51などからなる外部センサ部71、および、「口」として機能するスピーカ72となどがそれぞれ所定位置に配設され、制御ユニット52内には、バッテリセンサ131および加速度センサ132などからなる内部センサ部104が配設されている。また、脚部ユニット14A、および脚部ユニット14Bの足部45の足底面には、このロボット5の「体性感覚」の1つとして機能する足底センサ91が配設されている。
【0045】
そして、外部センサ部71のCCDカメラ81は、周囲の状況を撮像し、得られた画像信号を、A/D変換部102を介して、メイン制御部61に送出する。マイクロフォン82は、ユーザから音声入力として与えられる「歩け」、「とまれ」または「右手を挙げろ」等の各種命令音声を集音し、得られた音声信号を、A/D変換部102を介して、メイン制御部61に送出する。
【0046】
また、頭部センサ51は、例えば、図3および図4に示されるように頭部ユニット12の上部に設けられており、ユーザからの「撫でる」や「叩く」といった物理的な働きかけにより受けた圧力を検出し、検出結果としての圧力検出信号を、A/D変換部102を介して、メイン制御部61に送出する。
【0047】
足底センサ91は、足部45の足底面に配設されており、足部45が床に接地している場合、接地信号を、A/D変換部102を介して、メイン制御部61に送出する。メイン制御部61は、接地信号に基づいて、足部45が床に接地しているか否かを判定する。足底センサ91は、脚部ユニット14A、および脚部ユニット14Bの両方の足部45に配設されているため、メイン制御部61は、接地信号に基づいて、ロボット5の両足が床に接地しているか、片足が床に接地しているか、両足とも床に接地していないかを判定することができる。
【0048】
制御ユニット52は、メイン制御部61、D/A変換部101、A/D変換部102、バッテリ103、内部センサ部104、通信部105、および外部メモリ106等により構成される。
【0049】
D/A(Digital/Analog)変換部101は、メイン制御部61から供給されるデジタル信号をD/A変換することによりアナログ信号とし、スピーカ72に供給する。A/D(Analog/Digital)変換部102は、CCDカメラ81、マイクロフォン82、頭部センサ51、および足底センサ91が出力するアナログ信号をA/D変換することによりデジタル信号とし、メイン制御部61に供給する。
【0050】
内部センサ部104のバッテリセンサ131は、バッテリ103のエネルギ残量を所定の周期で検出し、検出結果をバッテリ残量検出信号として、メイン制御部61に送出する。加速度センサ132は、ロボット5の移動について、3軸方向(x軸、y軸、およびz軸)の加速度を、所定の周期で検出し、検出結果を、加速度検出信号として、メイン制御部61に送出する。
【0051】
メイン制御部61は、メイン制御部61全体の動作を制御するCPU111と、CPU111が各部を制御するために実行するOS(Operating System)121、アプリケーションプログラム122、その他の必要なデータ等が記憶されている内部メモリ112等を内蔵している。
【0052】
メイン制御部61は、外部センサ部71のCCDカメラ81、マイクロフォン82および頭部センサ51からそれぞれ供給される、画像信号、音声信号および圧力検出信号、並びに足底センサ91から供給される接地信号(以下、これらをまとめて外部センサ信号S1と称する)と、内部センサ部104のバッテリセンサ131および加速度センサ132等からそれぞれ供給される、バッテリ残量検出信号および加速度検出信号(以下、これらをまとめて内部センサ信号S2と称する)に基づいて、ロボット5の周囲および内部の状況や、ユーザからの指令、または、ユーザからの働きかけの有無などを判断する。
【0053】
そして、メイン制御部61は、ロボット5の周囲および内部の状況や、ユーザからの指令、または、通信部105により受信されたパーソナルコンピュータ6からのコマンドと、内部メモリ112に予め格納されている制御プログラム、あるいは、そのとき装填されている外部メモリ106に格納されている各種制御パラメータなどに基づいて、ロボット5の行動を決定し、決定結果に基づく制御コマンドCOMを生成して、対応するサブ制御部63A乃至63Dに送出する。サブ制御部63A乃至63Dは、供給された制御コマンドCOMに基づいて、アクチュエータA1乃至A14のうち、対応するものの駆動を制御するので、ロボット5は、例えば、頭部ユニット12を上下左右に揺動させたり、腕部ユニット13A、あるいは、腕部ユニット13Bを上に挙げたり、脚部ユニット14Aおよび脚部ユニット14Bを交互に駆動させて、歩行するなどの機械的動作を行うことが可能となる。
【0054】
また、メイン制御部61は、必要に応じて、所定の音声信号をスピーカ72に与えることにより、音声信号に基づく音声を外部に出力させる。
【0055】
通信部105は、IEEE(Institute of Electrical and Electronic Engineers)802.11b規格に準拠し、アクセスポイント2と無線で通信する。これにより、OS121やアプリケーションプログラム122がバージョンアップされたときに、通信部105を介して、そのバージョンアップされたOSやアプリケーションプログラムをダウンロードして、内部メモリ112に記憶させたり、また、所定のコマンドを、通信部105で受信し、CPU111に与えることができるようになっている。
【0056】
外部メモリ106は、例えば、EEPROM(Electrically Erasable Programmable Read−only Memory)等で構成され、胴体部ユニット11に設けられた図示せぬスロットに対して、着脱可能になっている。外部メモリ106には、例えば、後述するような感情モデル等が記憶される。
【0057】
図8は、図7のメイン制御部61の機能的構成例を示している。なお、図8に示す機能的構成は、メイン制御部61が、内部メモリ112に記憶されたOS121およびアプリケーションプログラム122を実行することで実現されるようになっている。また、図8では、D/A変換部101およびA/D変換部102の図示を省略してある。
【0058】
メイン制御部61のセンサ入力処理部201は、頭部センサ51、足底センサ91、加速度センサ132、マイクロフォン82、およびCCDカメラ81からそれぞれ与えられる圧力検出信号、接地信号、加速度検出信号、音声信号、画像信号等に基づいて、特定の外部状態や、ユーザからの特定の働きかけ、ユーザからの指示等を認識し、その認識結果を表す状態認識情報を、モデル記憶部202および行動決定機構部203に通知する。
【0059】
すなわち、センサ入力処理部201は、圧力処理部221、加速度処理部222、音声認識部223、および画像認識部224を有している。
【0060】
圧力処理部221は、頭部センサ51から与えられる圧力検出信号を処理する。そして、圧力処理部221は、例えば、その処理の結果、所定の閾値以上で、かつ短時間の圧力を検出したときには、「叩かれた(しかられた)」と認識し、所定の閾値未満で、かつ長時間の圧力を検出しなときには、「なでれらた(ほめられた)」と認識して、その認識結果を、状態認識情報として、モデル記憶部202および行動決定機構部203に通知する。
【0061】
また、圧力処理部221は、足底センサ91から与えられる接地信号を処理する。そして、圧力処理部221は、例えば、その処理の結果、脚部ユニット14Aの足部45に配設された足底センサ91から接地信号が与えられている場合、脚部ユニット14Aの足部45が床(地面)に接地していると認識し、足底センサ91から接地信号が与えられていない場合、脚部ユニット14Aの足部45が床(地面)に接地していないと認識する。脚部ユニット14Bについても、同様にして、足底センサ91からの接地信号に基づいて、脚部ユニット14Bの足部45が床(地面)に接地しているか否かを認識する。そして、圧力処理部221は、その認識結果を、状態認識情報として、モデル記憶部202および行動決定機構部203に通知する。
【0062】
加速度処理部222は、加速度センサ132から与えられる加速度検出信号に基づいて、胴体部ユニット11の加速度の方向および大きさを、状態認識情報として、モデル記憶部202および行動決定機構部203に通知する。
【0063】
音声認識部223は、マイクロフォン82から与えられる音声信号を対象とした音声認識を行う。そして、音声認識部223は、その音声認識結果としての、例えば、「歩け」、「伏せ」、「ボールを追いかけろ」等の単語列を、状態認識情報として、モデル記憶部202および行動決定機構部203に通知する。
【0064】
画像認識部224は、CCDカメラ81から与えられる画像信号を用いて、画像認識処理を行う。そして、画像認識部224は、その処理の結果、例えば、「赤い丸いもの」や、「地面に対して垂直なかつ所定高さ以上の平面」等を検出したときには、「ボールがある」や、「壁がある」等の画像認識結果を、状態認識情報として、モデル記憶部202および行動決定機構部203に通知する。
【0065】
モデル記憶部202は、ロボット5の感情、本能、成長の状態を表現する感情モデル、本能モデル、成長モデルをそれぞれ記憶し、管理している。
【0066】
ここで、感情モデルは、例えば、「うれしさ」、「悲しさ」、「怒り」、「楽しさ」等の感情の状態(度合い)を、所定の範囲(例えば、−1.0乃至1.0等)の値によってそれぞれ表し、センサ入力処理部201からの状態認識情報や時間経過等に基づいて、その値を変化させる。
【0067】
本能モデルは、例えば、「食欲」、「睡眠欲」、「運動欲」等の本能による欲求の状態(度合い)を、所定の範囲の値によってそれぞれ表し、センサ入力処理部201からの状態認識情報や時間経過等に基づいて、その値を変化させる。
【0068】
成長モデルは、例えば、「幼年期」、「青年期」、「熟年期」、「老年期」等の成長の状態(度合い)を、所定の範囲の値によってそれぞれ表し、センサ入力処理部201からの状態認識情報や時間経過等に基づいて、その値を変化させる。
【0069】
モデル記憶部202は、上述のようにして感情モデル、本能モデル、成長モデルの値で表される感情、本能、成長の状態を、状態情報として、行動決定機構部203に送出する。
【0070】
なお、モデル記憶部202には、センサ入力処理部201から状態認識情報が供給される他に、行動決定機構部203から、ロボット5の現在または過去の行動、具体的には、例えば、「長時間歩いた」などの行動の内容を示す行動情報が供給されるようになっており、モデル記憶部202は、同一の状態認識情報が与えられても、行動情報が示すロボット5の行動に応じて、異なる状態情報を生成するようになっている。
【0071】
例えば、ロボット5が、ユーザに挨拶をし、ユーザに頭を撫でられた場合には、ユーザに挨拶をしたという行動情報と、頭を撫でられたという状態認識情報とが、モデル記憶部202に与えられ、この場合、モデル記憶部202では、「うれしさ」を表す感情モデルの値が増加される。
【0072】
行動決定機構部203は、センサ入力処理部201からの状態認識情報やモデル記憶部202からの状態情報、時間経過等、または通信部105により受信されたパーソナルコンピュータ6からのコマンドに基づいて、次の行動を決定し、決定された行動の内容を、行動指令情報として、姿勢遷移機構部204に出力する。
【0073】
行動決定機構部203は、タイマー211を内蔵しており、それに、協調行動を開始する際に、指定された待ち時間を設定する。そして行動決定機構部203は、その待ち時間を経過したとき、協調行動のための行動指令情報の姿勢遷移機構部204に対する出力を開始する。
【0074】
姿勢遷移機構部204は、行動決定機構部203から供給される行動指令情報に基づいて、ロボット5の姿勢を、現在の姿勢から次の姿勢に遷移させるための姿勢遷移情報を生成し、これを制御機構部205に送出する。
【0075】
制御機構部205は、姿勢遷移機構部204からの姿勢遷移情報にしたがって、アクチュエータA1乃至A14を駆動するための制御信号を生成し、これを、サブ制御部63A乃至63Dに送出する。サブ制御部63A乃至63Dは、この制御信号に基づいて、適宜のアクチュエータを駆動し、ロボット5に種々の動作を実行させる。
【0076】
音声合成部208は、行動決定機構部203から発話指令情報を受信し、その発話指令情報にしたがって、例えば、規則音声合成を行い、合成音をスピーカ72に供給して出力させる。
【0077】
図9は、センサ入力処理部201の音声認識部223の機能を示す機能ブロック図である。
【0078】
図7のマイクロフォン82およびA/D変換部102を介して、音声認識部223に入力される音声データは、特徴量抽出部251に供給される。
【0079】
特徴抽出部251は、A/D変換部102からの音声データについて、適当なフレームごとに音響分析処理を施し、これにより、例えば、MFCC(Mel Frequency Cepstrum Coefficient)等の特徴量としての特徴ベクトルを抽出する。
【0080】
特徴抽出部251においてフレームごとに得られる特徴ベクトルは、特徴ベクトルバッファ252に順次供給されて記憶される。従って、特徴ベクトルバッファ252では、フレームごとの特徴ベクトルが時系列に記憶されていく。
【0081】
なお、特徴ベクトルバッファ252は、例えば、ある発話の開始から終了まで(音声区間)に得られる時系列の特徴ベクトルを記憶する。
【0082】
マッチング部253は、特徴ベクトルバッファ252に記憶された特徴ベクトルを用いて、音響モデルデータベース254、辞書データベース255、および文法データベース256を必要に応じて参照しながら、マイクロフォン82に入力された音声(入力音声)を、例えば、連続分布HMM法等に基づいて音声認識する。
【0083】
即ち、音響モデルデータベース254は、音声認識する音声の言語における個々の音素や音節などの所定の単位(PLU(Phonetic−Linguistic−Units))ごとの音響的な特徴を表す音響モデルのセットを記憶している。辞書データベース255は、認識対象の各単語(語彙)について、その発音に関する情報(音韻情報)が記述された単語辞書を記憶している。文法データベース256は、辞書データベース255の単語辞書に登録されている各単語が、どのように連鎖する(つながる)かを記述した文法規則(言語モデル)を記憶している。
【0084】
マッチング部253は、辞書データベース255の単語辞書を参照することにより、音響モデルデータベース254に記憶されている音響モデルを接続することで、単語の音響モデル(単語モデル)を構成する。さらに、マッチング部253は、幾つかの単語モデルを、文法データベース256に記憶された文法規則を参照することにより接続し、そのようにして接続された単語モデルを用いて、時系列の特徴ベクトルとのマッチングを、連続分布HMM法によって行い、マイクロフォン82に入力された音声を認識する。即ち、マッチング部253は、上述したようにして構成された各単語モデルの系列から、特徴ベクトルバッファ252に記憶された時系列の特徴ベクトルが観測される尤度を表すスコアを計算する。そして、マッチング部253は、例えば、そのスコアが最も高い単語モデルの系列を検出し、その単語モデルの系列に対応する単語列を、音声の認識結果として出力する。
【0085】
図10は、パーソナルコンピュータ6の構成例を示している。CPU(Central Processing Unit)511にはバス515を介して入出力インタフェース516が接続されており、CPU511は、入出力インタフェース516を介して、ユーザから、キーボード、マウスなどよりなる入力部518から指令が入力されると、例えば、ROM(Read Only Memory)512、ハードディスク514、またはドライブ520に装着される磁気ディスク531、光ディスク532、光磁気ディスク533、若しくは半導体メモリ534などの記録媒体に格納されているプログラムを、RAM(Random Access Memory)513にロードして実行する。
【0086】
通信部519は、ネットワーク3に対してデータを送信または受信する。
【0087】
次に、ロボット5とパーソナルコンピュータ6の動作を、図11のフローチャートを参照して説明する。なお、図11のステップS21乃至ステップS28の処理は、各ロボット5のそれぞれにおいて実行される。
【0088】
ステップS1において、パーソナルコンピュータ6のCPU511は、協調行動のための同期確立を各ロボット5に要求する。具体的には、通信部519は、図12に示すような通信パケット(同期パケット)Paを生成し、それを各ロボット5に、コネクション型通信(この例の場合、UDP)で各ロボット5にブロードキャストまたはマルチキャストする。すなわち、この同期パケットPaは、同時に、ローカルセグメント内の各ロボット5に送信される。
【0089】
同期パケットPaのイーサネット(登録商標)ヘッダには、送信元(パーソナルコンピュータ6)のMACアドレスや、送信先(ロボット5)のMACアドレス等が格納されている。IPヘッダには、送信元のIPアドレスやブロードキャストアドレス等が格納されている。
【0090】
UDPヘッダには、送信元のポート番号や送信先のポート番号等が格納されている。データ部には、協調行動を開始するに際し、所定の待ち時間待機させるためのコマンド(以下、待ちコマンドと称する)のコマンドIDおよびその待ち時間、並びにこの同期パケットPaのパケットIDが格納されている。
【0091】
次に、ステップS2において、パーソナルコンピュータ6のCPU511は、ステップS1で送信した同期パケットPaを受信したか否かを、各ロボット5に問い合わせる。具体的には、通信部519は、図13に示すような通信パケットPbを生成し、それを各ロボット5にコネクション型通信(この例の場合、TCP)でユニキャストする。したがって、この通信パケットPbは、各ロボット5に対してコネクションが開設された後、順に送信される。
【0092】
通信パケットPbのイーサネット(登録商標)ヘッダには、送信元のMACアドレスや送信先のMACアドレス等が格納されている。IPヘッダには、送信元のIPアドレスや送信先のIPアドレス等が格納されている。
【0093】
TCPヘッダには、送信元のポート番号や送信先のポート番号の他、コネクションを開設するためのデータ等が格納されている。データ部には、同期パケットPaの受信結果を応答させるためのコマンド(以下、問い合わせコマンドと称する)のコマンドIDと、同期パケットPaのパケットIDが格納されている。
【0094】
これに対してロボット5のメイン制御部61(図8)は、図11のステップS21において、パーソナルコンピュータ6から、協調行動のための同期確立が要求されたか否か(図12に示す同期パケットPaが、通信部105によって受信されたか否か)を判定し、要求があった(受信された)と判定した場合、ステップS22に進む。
【0095】
ステップS22において、ロボット5のメイン制御部61は、同期パケットPaのデータ部に格納されている待ち時間を、タイマー211に設定し、ステップS23において、そのカウントダウンを開始する。
【0096】
ステップS23で待ち時間のカウントダウンを開始した後、またはステップS21で、同期パケットPaが受信されていないと判定されたとき、ステップS24において、ロボット5のメイン制御部61は、パーソナルコンピュータ6から、同期パケット受信の有無の問い合わせがあったか否か(図13に示す通信パケットPbが受信されたか否か)を判定し、問い合わせがない(受信されていない)と判定した場合、ステップS21に戻り、それ以降の処理を実行する。
【0097】
ステップS24で、同期パケット受信の有無の問い合わせがあったと判定した場合、ロボット5のメイン制御部61は、ステップS25に進み、通信部105を制御して、同期パケット受信の有無を、パーソナルコンピュータ6に送信させる。具体的には、通信部105は、図14に示すような通信パケットPcを生成し、それをパーソナルコンピュータ6にTCPで送信する。
【0098】
通信パケットPcのイーサネット(登録商標)ヘッダには、送信元のMACアドレスや送信先のMACアドレス等が格納されている。IPヘッダには、送信元のIPアドレスや送信先のIPアドレス等が格納されている。
【0099】
TCPヘッダには、送信元のポート番号や送信先のポート番号の他、コネクションを開設するためのデータ等が格納されている。データ部には、同期パケットPaが受信された場合、この通信パケットPcが、同期パケット受信の問い合わせに対する応答であることを示すIDと、受信された同期パケットPaのパケットIDが格納され、同期パケットPaが受信されていない場合、同期パケット受信の問い合わせに対する応答であることを示すIDのみが格納される(同期パケットPaのパケットIDは格納されない)。
【0100】
パーソナルコンピュータ6のCPU511は、ステップS3において、すべてのロボット5から、同期パケット受信の問い合わせに対する応答があったか(図14に示す通信パケットPcがすべてのロボット5から送信されてきたか)否かを判定し、まだ応答していないロボット5が存在すると判定した場合、ステップS4に進む。
【0101】
ステップS4において、パーソナルコンピュータ6のCPU511は、ステップS1で同期パケットPaを送信してから、所定の時間経過したか否かを判定し、まだ経過していないと判定した場合、ステップS3に戻り、それ以降の処理を実行する。
【0102】
ステップS3で、すべてのロボット5から、同期パケット受信の問い合わせに対する応答があったと判定した場合、パーソナルコンピュータ6のCPU511は、ステップS5に進み、その応答から、すべてのロボット5が同期パケットPaを受信したか(ステップS3で受信した通信パケットPcのすべてに同期パケットPaのパケットIDが格納されているか)否かを判定し、すべてのロボット5が同期パケットPaを受信したと判定した場合、ステップS6に進む。
【0103】
ステップS6において、パーソナルコンピュータ6のCPU511は、通信部519を制御して、所定の協調行動の開始を、各ロボット5に要求させる。具体的には、通信部519は、図15に示すような通信パケットPdを生成し、それを各ロボット5にTCPで送信する。
【0104】
通信パケットPdのイーサネット(登録商標)ヘッダには、送信元のMACアドレスや送信先のMACアドレス等が格納されている。IPヘッダには、送信元のIPアドレスや送信先のIPアドレスが格納されている。
【0105】
TCPヘッダには、送信元のポート番号や送信先のポート番号の他、コネクションを開設するためのデータ等が格納されている。データ部には、所定の協調動作を開始させるためのコマンド(以下、開始コマンドと称する)のコマンドIDと、同期パケットPaのパケットIDが格納されている。
【0106】
ステップS4で、所定の時間が経過したと判定されたとき、またはステップS5で、同期パケットPaを受信していないロボット5が存在すると判定されたとき、ステップS7に進み、パーソナルコンピュータ6のCPU511は、通信部519を制御して、協調行動の中止を各ロボット5に要求させる。具体的には、通信部519は、図16に示すような通信パケットPeを生成し、それを各ロボット5にTCPで送信する。
【0107】
通信パケットPeのイーサネット(登録商標)ヘッダには、送信元のMACアドレスや送信先のMACアドレス等が格納されている。IPヘッダには、送信元のIPアドレスや送信先のIPアドレスが格納されている。
【0108】
TCPヘッダには、送信元のポート番号や送信先のポート番号の他、コネクションを開設するためのデータ等が格納されている。データ部には、所定の協調動作を中止させるためのコマンド(以下、中止コマンドと称する)のコマンドIDと、同期パケットPaのパケットIDが格納されている。
【0109】
ステップS6で協調行動の開始を要求したとき、またはステップS7で、協調実行の中止を要求したとき、パーソナルコンピュータ6のCPU511は、処理を終了させる。
【0110】
ロボット5のメイン制御部61は、ステップS26において、協調行動の開始が要求されたか(図15に示す通信パケットPdが受信されたか)、または協調行動の中止が要求されたか(図16に示す通信パケットPeが受信されたか)を判定し、協調行動の開始が要求されたと判定した場合、ステップS27に進み、ステップS23で開始したカウントダウンが完了するまで待機する。
【0111】
ステップS27で、カウントダウンが完了したとき、ステップS28に進み、ロボット5のメイン制御部61は、開始コマンドのコマンドIDに対応する協調行動の制御信号のアクチュエータAに対する出力を開始する。これにより、ロボット5の協調行動が開始される。
【0112】
一方ステップS26で、協調行動の中止が要求されたと判定された場合、ステップS29に進み、ロボット5のメイン制御部61は、ステップS22で、待ち時間がセットされたタイマー211をリセットする。すなわちこの場合、協調行動は行われない。
【0113】
ステップS28またはステップS29の後、ロボット5は処理を終了させる。
【0114】
以上のようにして、協調行動が開始される。
【0115】
なお、以上においては、パーソナルコンピュータ6が同期パケットPa等を各ロボット5に送信して、ロボット5に協調行動させる場合を例として説明したが、ロボット5の中の1台が、マスタのロボット5となり、上述したパーソナルコンピュータ6の動作をさらに行うようにして、協調行動がなされるようにすることもできる。
【0116】
その場合、例えば、ユーザは「ダンス開始」と称呼し、それを認識したロボット5は、他のロボット5のそれぞれに対して、マスタであるか否かを問い合わせ、問い合わせたロボット5のすべてからマスタではないとの応答があった場合(または所定の時間内に応答がなかった場合)、自分をマスタとして認識し、他のロボット5をマスタではないと認識する(登録する)。そしてそのロボット5は、他のロボット5に自分がマスタである旨を通知(宣言)する。
【0117】
すなわち、この例の場合、ユーザの称呼を最も早く認識したロボット5が、マスタとなるが、通信不備等で、複数のロボット5が自分をマスタと認識してしまった場合、宣言した時刻から、1台のマスタを決定することができる。
【0118】
このようにして1台のマスタが決定されると、マスタのロボット5は、図17に示す動作を開始する。
【0119】
ステップS41において、マスタのロボット5のメイン制御部61は、図11のステップS1における場合と同様に、通信部105を制御して、図12に示す同期パケットPaを他のロボット5にブロードキャストまたはマルチキャストして、協調行動のための同期確立を要求する。なお、ロボット5間の通信は、アクセスポイント2を介して行われる。
【0120】
次に、ステップS42において、マスタのロボット5のメイン制御部61は、同期パケットPaのデータ部に格納した待ち時間を、タイマー211に設定し、ステップS43において、そのカウントダウンを開始する。
【0121】
ステップS44乃至ステップS48においては、図11に示すステップS2乃至ステップS6における場合と同様の処理が行われるので、その説明は省略する。
【0122】
ステップS48で、通信部105を制御して、図15に示す通信パケットPdを他のロボット5に送信させて、協調行動の開始を要求した後、マスタのロボット5のメイン制御部61は、ステップS49において、ステップS43で開始したカウントダウンが完了するまで待機する。
【0123】
ステップS49で、カウントダウンが完了したとき、ステップS50に進み、マスタのロボット5のメイン制御部61は、図15に示す通信パケットPdに格納した開始コマンドのコマンドIDに対応する協調行動の制御信号のアクチュエータへの出力を開始する。
【0124】
ステップS46で、所定の時間が経過したと判定されたとき、またはステップS47で、同期パケットPaを受信していないロボット5が存在すると判定されたとき、ステップS51において、マスタのロボット5のメイン制御部61は、通信部105を制御して、図16に示す通信パケットPeを他のロボット5に送信させ、協調行動の中止を要求する。そしてステップS52において、マスタのロボット5のメイン制御部61は、ステップS43で待ち時間をセットしたタイマー211をリセットする。
【0125】
マスタのロボット5は、以上のような処理を行うが、マスタではない他のロボット5は、図11のステップS21乃至ステップS28の処理を実行する。
【0126】
なお、以上においては、ロボット5に協調行動を行わせる場合を例として説明したが、ロボット5に限らず、所定の処理を同時に行うものであれば、本発明を適用することができる。例えば、複数の表示部を組み合わせて1つの大きな表示部を形成し、その全体に1つの映像を表示する処理などにも利用することができる。
【0127】
また、本明細書において、記録媒体により提供されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0128】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【0129】
【発明の効果】
第1および第2の本発明によれば、協調処理を処理装置に同時に開始させることができる。
【0130】
第3の本発明によれば、協調処理を適切に開始することができる。
【図面の簡単な説明】
【図1】従来のロボットシステムの構成例を示す図である。
【図2】本発明を適用したロボットシステムの構成例を示す図である。
【図3】図2のロボットの外観構成を示す斜視図である。
【図4】図2のロボットの外観構成を示す、背後側の斜視図である。
【図5】図2のロボットについて説明するための略線図である。
【図6】図2のロボットの内部構成を示すブロック図である。
【図7】図2のロボットの制御に関する部分を主に説明するためのブロック図である。
【図8】図7のメイン制御部の構成を示すブロック図である。
【図9】図8の音声認識部の構成例を示すブロック図である。
【図10】図2のパーソナルコンピュータ6の構成を示すブロック図である。
【図11】図2のロボットとパーソナルコンピュータの動作を説明するためのフローチャートである。
【図12】通信パケットのデータ構造を説明するための図である。
【図13】他の通信パケットのデータ構造を説明するための図である。
【図14】他の通信パケットのデータ構造を説明するための図である。
【図15】他の通信パケットのデータ構造を説明するための図である。
【図16】他の通信パケットのデータ構造を説明するための図である。
【図17】図2のマスタのロボットの動作を説明するためのフローチャートである。
【符号の説明】
5 ロボット, 6 パーソナルコンピュータ, 12 頭部ユニット, 52 制御ユニット, 61 メイン制御部, 105 通信部, 211 タイマー, 511 CPU, 519 通信部
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an information processing system, an information processing apparatus, an information processing method, and a program, and more particularly, to an information processing system, an information processing apparatus, an information processing method, and a program capable of adjusting the start timing of a cooperative action. .
[0002]
[Prior art]
FIG. 1 shows that each of the self-standing robots 1 (three robots in the example of FIG. 1) that independently determines an action according to a command from a user or the surrounding environment starts a predetermined cooperative action at the same time. 1 shows an example of a conventional robot system for performing the above operation.
[0003]
The personal computer 4 sends a command for adjusting the start timing of the cooperative action via the network 3 and the access point 2 to the robots 1-1 to 1-3 (hereinafter, if it is not necessary to individually distinguish the robots, 1. The same applies to other cases).
[0004]
When each robot 1 receives a command from the personal computer 4, it starts counting the waiting time indicated by the command, and when the counting ends, starts a predetermined cooperative action (see Patent Document).
[0005]
[Patent Document]
JP 2001-191279 A
[0006]
[Problems to be solved by the invention]
However, in the conventional system, the data communication between the robot 1 and the personal computer 4 is performed according to TCP (Transmission Control Protocol), so that the command for adjusting the start timing of the cooperative action is transmitted between the personal computer 4 and each robot. After the connections with the robots 1 are sequentially opened, the data is transmitted to each of the robots 1.
[0007]
Therefore, in the conventional system, the time at which the command for adjusting the start timing of the cooperative action is received differs for each robot 1, and thus the counting start and end times of the designated waiting time differ for each robot 1. As a result, there is a problem that the start timing of the cooperative action in each robot 1 is shifted.
[0008]
The present invention has been made in view of such a situation, and aims to simultaneously start cooperative actions of the robot 1.
[0009]
[Means for Solving the Problems]
In the information processing system of the present invention, the control device transmits synchronization information for causing the processing device to simultaneously start the cooperative processing to the processing device by connectionless communication, and determines whether or not synchronization information is received. A notification command transmitting means for transmitting a command to be notified to the processing device by connection-type communication, and a command for starting a cooperative action to the processing device by connection-type communication in accordance with the presence or absence of the synchronization information of the processing device. The processing device receives the synchronization information, and the measurement device starts the measurement of the waiting time specified in the synchronization information, and the notification command transmission device of the control device includes: When a command to notify the presence or absence is transmitted, the coordinating action is performed by a notification unit that notifies the control device of the presence or absence of the synchronization information and a start command transmission unit of the control device. If instruction to start is transmitted, at the time of the lapse of the waiting time, characterized in that it comprises a concerted action starting means for starting a cooperative behavior.
[0010]
The start command transmitting means of the control device transmits a command to stop the start of the cooperative action to the processing device by connection-type communication according to the presence or absence of the synchronization information reception of the processing device, and the cooperative action start means of the processing device is When the command to stop the start of the cooperative action is transmitted by the start command transmitting means of the control device, the start of the cooperative action can be stopped.
[0011]
The control device starts measuring the waiting time specified in the synchronization information when the synchronization information is transmitted by the synchronization information transmission unit, and waits for a command to start the cooperative action by the start instruction transmission unit when the synchronization instruction is transmitted. At the point in time, one can start cooperative action on his own.
[0012]
According to a first information processing method of the present invention, a synchronization information transmitting step of transmitting synchronization information for causing a processing device to simultaneously start cooperative processing in the control device to the processing device by connectionless communication; A notification command transmission step of transmitting a command to notify the presence or absence of information reception to the processing device by connection-type communication, and a measurement for receiving the synchronization information and starting the measurement of the waiting time specified in the synchronization information in the processing device. A notification step of notifying the control device of the presence or absence of the synchronization information when a command to notify the presence or absence of the synchronization information is transmitted in the processing of the notification instruction transmission step of the control device in the processing device; A command to start a cooperative action according to the presence or absence of the synchronization information of the processing device In the process of transmitting a start command and transmitting a start command of the control device in the processing device, when a command to start the cooperative action is transmitted, the cooperative action to start the cooperative action at the time when the waiting time has elapsed. And a step.
[0013]
In the information processing system and the first information processing method of the present invention, synchronization information for causing the processing device to simultaneously start the cooperative processing is transmitted to the processing device by connectionless communication, and the presence or absence of the reception of the synchronization information is notified. Is sent to the processing device by connection-type communication, the processing device receives the synchronization information, the measurement of the waiting time specified in the synchronization information is started, and the command to notify the presence or absence of the reception of the synchronization information is transmitted. When the synchronization information has been received, the control device is notified of whether or not the synchronization information has been received, and in accordance with the presence or absence of the synchronization information of the processing device, a command to start the cooperative action is transmitted to the processing device by connection-type communication, and the processing device When the command to start the cooperative action is transmitted in step, the cooperative action is started when the waiting time has elapsed.
[0014]
A first information processing apparatus according to the present invention includes: a synchronization information transmitting unit that transmits synchronization information for causing a processing apparatus to simultaneously start cooperative processing to the processing apparatus by connectionless communication; A notification command transmitting unit that transmits a command to the processing device by connection-type communication, and a command to start a cooperative action according to the presence or absence of synchronization information reception of the processing device to the processing device by connection-type communication. And a start command transmitting means.
[0015]
According to a second information processing method of the present invention, a synchronization information transmission step of transmitting synchronization information for causing a processing device to simultaneously start a cooperative process to a processing device by connectionless communication, and notifying whether synchronization information has been received or not. A notification command transmitting step of transmitting a command to the processing device by connection-type communication, and transmitting a command to start a cooperative action to the processing device by connection-type communication in accordance with the presence or absence of synchronization information reception of the processing device. And transmitting a start command.
[0016]
A first program according to the present invention includes a synchronization information transmitting step of transmitting synchronization information for causing a processing device to simultaneously start cooperative processing to a processing device by connectionless communication, and a command for notifying the presence or absence of reception of the synchronization information. A notification command transmitting step of transmitting to the processing device by connection-type communication, and a start command of transmitting a command to start a cooperative action to the processing device by connection-type communication in accordance with the presence or absence of synchronization information reception of the processing device. And causing the computer to execute a process including a transmitting step.
[0017]
In the first information processing device, the second information processing method, and the first program of the present invention, synchronization information for causing the processing device to simultaneously start cooperative processing is transmitted to the processing device by connectionless communication. Then, a command to notify the presence or absence of the reception of the synchronization information is transmitted to the processing device by connection-type communication, and a command to start the cooperative action according to the presence or absence of the reception of the synchronization information of the processing device is processed by the connection-type communication. Sent to the device.
[0018]
The second information processing apparatus of the present invention receives the synchronization information transmitted from the control apparatus by the connectionless communication for causing the processing apparatus to simultaneously start the cooperative processing, and waits for the synchronization information designated by the synchronization information. From the measuring means for starting time measurement, and from the control device, when a command to notify the presence or absence of the reception of the synchronization information is transmitted, from the notification device for notifying the presence or absence of the reception of the synchronization information to the control device, from the control device, When a command to start the cooperative action is transmitted, a cooperative action starting means for starting the cooperative action when the waiting time has elapsed is provided.
[0019]
According to a third information processing method of the present invention, while receiving synchronization information transmitted from a control device by connectionless communication for causing a processing device to simultaneously start cooperative processing, a standby information designated in the synchronization information is received. A measuring step for starting time measurement, and, when a command to notify the presence or absence of the synchronization information is transmitted from the control device, a notification step of notifying the control device of the presence or absence of the synchronization information reception, and from the control device, When a command to start the cooperative action is transmitted, a cooperative action starting step of starting the cooperative action at the time when the waiting time has elapsed is included.
[0020]
The second program of the present invention receives synchronization information for causing a processing device to simultaneously start cooperative processing, transmitted from a control device by connectionless communication, and executes a wait time specified in the synchronization information. A measuring step of starting measurement, a notification step of notifying the control device of the presence or absence of the synchronization information when a command to notify the presence or absence of the synchronization information is transmitted from the control device, and a coordination action from the control device. When a command to start the cooperative action is transmitted, the computer is caused to execute a process including a cooperative action start step of starting a cooperative action when the waiting time has elapsed.
[0021]
According to the second information processing apparatus, the third information processing method, and the second program of the present invention, the information processing apparatus transmits the cooperative processing transmitted from the control apparatus by connectionless communication to the processing apparatus at the same time. Upon receiving the synchronization information, measurement of the waiting time specified in the synchronization information is started, and when a command to notify the presence or absence of the reception of the synchronization information is transmitted from the control device, the presence or absence of the reception of the synchronization information is determined by the control device. And a command to start the cooperative action is transmitted from the control device, the cooperative action is started when the waiting time has elapsed.
[0022]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 2 shows an example of a robot system to which a plurality of robots 5 (three robots in the example of FIG. 2) to which the present invention is applied simultaneously start predetermined cooperative actions.
[0023]
The personal computer 6 transmits a communication packet including a command for adjusting the start timing of the cooperative action (hereinafter, referred to as a synchronization packet) to each robot 5 by connection-type communication (in this example, UDP (User Datagram Protocol)). (To be transmitted simultaneously to each robot 5). The personal computer 6 also transmits other information (such as a command for inquiring whether a synchronous packet has been received, a command for starting a cooperative action, a command for stopping the cooperative action, etc.) to connection-type communication (in this case, , TCP) to each robot 5.
[0024]
When receiving the synchronization packet from the personal computer 6, the robots 5-1 to 5-3 start counting the waiting time stored in the synchronization packet, and then further receive a command for starting a cooperative action. In this case, a predetermined cooperative action is started when the counting of the waiting time ends. On the other hand, when receiving the command to stop the cooperative action, the robot 5 does not perform the cooperative action.
[0025]
As described above, since the synchronization packet necessary for adjusting the start timing of the cooperative action is broadcast or multicast to each robot 5 by UDP, each robot 5 can receive the synchronization packet at the same time. The start timing of the cooperative action of each robot 5 can be accurately adjusted.
[0026]
Further, in the communication using UDP, since no connection is established and no error compensation or the like is performed, the synchronization packet may not be received by the robot 5 depending on the reception environment. However, the reception of the synchronization packet is separately performed by the TCP. Since the inquiry is made, for example, only when all the robots 5 receive the synchronization packet and can start the cooperative action at the same time, the cooperative action can be performed.
[0027]
FIG. 3 is a front perspective view of the biped walking robot 5 to which the present invention is applied, and FIG. 4 is a perspective view of the robot 5 viewed from the rear. FIG. 5 is a diagram for explaining the axis configuration of the robot 5.
[0028]
The robot 5 includes a body unit 11, a head unit 12 disposed above the body unit 11, an arm unit 13 </ b> A and an arm unit 13 </ b> B attached to predetermined positions on the upper and right sides of the body unit 11, and It is composed of a leg unit 14A and a leg unit 14B attached to predetermined positions on the lower left and right sides of the body unit 11.
[0029]
The torso unit 11 is configured by connecting a frame 21 forming the upper trunk and a waist base 22 forming the lower trunk via a waist joint mechanism 23. The torso unit 11 drives the actuator A1 and the actuator A2 of the waist joint mechanism 23 fixed to the waist base 22 at the lower part of the trunk, thereby driving the upper part of the trunk to the orthogonal roll axis 24 shown in FIG. And around the pitch axis 25, respectively.
[0030]
The head unit 12 is attached to the center of the upper surface of a shoulder base 26 fixed to the upper end of the frame 21 via a neck joint mechanism 27, and drives the actuator A3 and the actuator A4 of the neck joint mechanism 27, respectively. Thereby, it is possible to independently rotate around the orthogonal pitch axis 28 and yaw axis 29 shown in FIG.
[0031]
The arm unit 13A and the arm unit 13B are respectively attached to the left and right of the shoulder base 26 via the shoulder joint mechanism 30, and drive the corresponding actuator A5 and actuator A6 of the shoulder joint mechanism 30, respectively. Thereby, each can be independently rotated around the pitch axis 31 and the roll axis 32 which are orthogonal to each other as shown in FIG.
[0032]
In this case, the arm unit 13A and the arm unit 13B are connected to the output shaft of the actuator A7 forming the upper arm via the elbow joint mechanism 44, the actuator A8 forming the forearm is connected. Is configured by attaching a hand portion 34 thereto.
[0033]
In the arm unit 13A and the arm unit 13B, the forearm can be rotated with respect to the yaw axis 35 shown in FIG. 5 by driving the actuator A7, and the forearm can be rotated by driving the actuator A8. Can be rotated with respect to a pitch axis 36 shown in FIG.
[0034]
The leg unit 14A and the leg unit 14B are respectively attached to the waist base 22 below the trunk via the hip joint mechanism 37, and by driving the actuators A9 to A11 of the corresponding hip joint mechanism 37, respectively. 5, a yaw axis 38, a roll axis 39, and a pitch axis 40, which are orthogonal to each other, can be independently rotated.
[0035]
In the leg unit 14A and the leg unit 14B, the lower end of the frame 41 forming the thigh is connected to the frame 43 forming the lower leg through the knee joint mechanism 42, and the frame 43 Is connected to a foot 45 via an ankle joint mechanism 44.
[0036]
Thereby, in the leg unit 14A and the leg unit 14B, by driving the actuator A12 forming the knee joint mechanism 42, the lower leg can be rotated with respect to the pitch axis 46 shown in FIG. By driving the actuators A13 and A14 of the ankle joint mechanism 44, the feet 45 can be independently rotated with respect to the orthogonal pitch axis 47 and roll axis 48 shown in FIG. It has been made possible.
[0037]
A sole sensor 91 (FIG. 7) is disposed on the sole surface (surface in contact with the floor) of the foot part 45 of each of the leg unit 14A and the leg unit 14B. Based on the off state, it is determined whether or not the foot 45 is in contact with the floor.
[0038]
A control unit 52, which is a box containing a later-described main control unit 61 (FIG. 6) and the like, is provided on the back side of the waist base 22, which forms the lower trunk of the body unit 11.
[0039]
FIG. 6 is a diagram illustrating an actuator of the robot 5 and a control system thereof.
[0040]
The control unit 52 includes a main control unit 61 that controls the operation of the entire robot 5, a D / A conversion unit 101, an A / D conversion unit 102, a battery 103, a battery sensor 131, an acceleration sensor 132, and a communication unit, which will be described later. A peripheral circuit 62 including an external memory 105 and an external memory 106 (both shown in FIG. 7) and the like are housed therein.
[0041]
The control unit 52 is disposed in each of the constituent units (the body unit 11, the head unit 12, the arm unit 13A and the arm unit 13B, and the leg unit 14A and the leg unit 14B). It is connected to the sub-control units 63A to 63D, supplies necessary power supply voltages to the sub-control units 63A to 63D, and performs communication with the sub-control units 63A to 63D.
[0042]
The sub-control units 63A to 63D are respectively connected to the actuators A1 to A14 in the corresponding constituent units, and based on various control commands supplied from the main control unit 61, the actuators A1 to A14 in the constituent units. A14 is controlled to be driven to a designated state.
[0043]
FIG. 7 is a block diagram showing the internal configuration of the robot 5.
[0044]
The head unit 12 includes a CCD (Charge Coupled Device) camera 81 functioning as an “eye” of the robot 5, a microphone 82 functioning as an “ear”, an external sensor unit 71 including a head sensor 51, and the like. A speaker 72 functioning as a “mouth” is disposed at a predetermined position, and an internal sensor unit 104 including a battery sensor 131 and an acceleration sensor 132 is disposed in the control unit 52. Further, a sole sensor 91 functioning as one of the “somatic senses” of the robot 5 is provided on the soles of the feet 45 of the leg units 14A and 14B.
[0045]
Then, the CCD camera 81 of the external sensor unit 71 captures an image of the surroundings, and sends the obtained image signal to the main control unit 61 via the A / D conversion unit 102. The microphone 82 collects various command voices such as “walk”, “stop” or “raise your right hand” given as a voice input from the user, and converts the obtained voice signal via the A / D converter 102. , To the main control unit 61.
[0046]
The head sensor 51 is provided on the head unit 12, for example, as shown in FIGS. 3 and 4, and is received by a physical action such as “stroke” or “hit” from the user. The pressure is detected, and a pressure detection signal as a detection result is sent to the main control unit 61 via the A / D conversion unit 102.
[0047]
The sole sensor 91 is provided on the sole of the foot 45, and when the foot 45 is in contact with the floor, sends a ground signal to the main controller 61 via the A / D converter 102. Send out. The main controller 61 determines whether or not the foot 45 is on the floor based on the ground signal. Since the sole sensor 91 is disposed on both the feet 45 of the leg unit 14A and the leg unit 14B, the main control unit 61 determines that both feet of the robot 5 are on the floor based on the ground signal. It can be determined whether the user is on the ground, whether one foot is on the floor, or whether both feet are on the floor.
[0048]
The control unit 52 includes a main control unit 61, a D / A conversion unit 101, an A / D conversion unit 102, a battery 103, an internal sensor unit 104, a communication unit 105, an external memory 106, and the like.
[0049]
The D / A (Digital / Analog) converter 101 converts the digital signal supplied from the main controller 61 into an analog signal by D / A conversion, and supplies the analog signal to the speaker 72. An A / D (Analog / Digital) converter 102 converts the analog signals output from the CCD camera 81, the microphone 82, the head sensor 51, and the sole sensor 91 into digital signals by A / D conversion, and outputs a digital signal. 61.
[0050]
The battery sensor 131 of the internal sensor unit 104 detects the remaining energy of the battery 103 at a predetermined cycle, and sends the detection result to the main control unit 61 as a remaining battery detection signal. The acceleration sensor 132 detects acceleration in three axes directions (x-axis, y-axis, and z-axis) at a predetermined cycle with respect to the movement of the robot 5, and outputs the detection result to the main control unit 61 as an acceleration detection signal. Send out.
[0051]
The main control unit 61 stores a CPU 111 that controls the entire operation of the main control unit 61, an OS (Operating System) 121 that the CPU 111 executes to control each unit, an application program 122, and other necessary data. Built-in internal memory 112 and the like.
[0052]
The main control unit 61 includes an image signal, a sound signal, and a pressure detection signal supplied from the CCD camera 81, the microphone 82, and the head sensor 51 of the external sensor unit 71, and a ground signal supplied from the sole sensor 91 ( Hereinafter, these are collectively referred to as an external sensor signal S1) and a battery remaining amount detection signal and an acceleration detection signal (hereinafter collectively referred to) supplied from the battery sensor 131 and the acceleration sensor 132 of the internal sensor unit 104, respectively. Based on the internal sensor signal S2), the surrounding and internal conditions of the robot 5, the command from the user, the presence or absence of the user's action, and the like are determined.
[0053]
Then, the main control unit 61 controls the situation around and inside the robot 5, a command from the user, a command from the personal computer 6 received by the communication unit 105, and a control stored in the internal memory 112 in advance. The action of the robot 5 is determined based on a program or various control parameters stored in the external memory 106 loaded at that time, a control command COM based on the determination result is generated, and a corresponding sub-control is generated. The data is sent to the units 63A to 63D. The sub-control units 63A to 63D control the driving of the corresponding one of the actuators A1 to A14 based on the supplied control command COM, so that the robot 5 swings the head unit 12 up, down, left and right, for example. Or the arm unit 13A or the arm unit 13B is raised, or the leg unit 14A and the leg unit 14B are alternately driven to perform a mechanical operation such as walking. .
[0054]
Further, the main control section 61 outputs a sound based on the sound signal to the outside by giving a predetermined sound signal to the speaker 72 as necessary.
[0055]
The communication unit 105 wirelessly communicates with the access point 2 in accordance with the IEEE (Institute of Electrical and Electronic Engineers) 802.11b standard. Accordingly, when the OS 121 or the application program 122 is upgraded, the upgraded OS or application program is downloaded via the communication unit 105 and stored in the internal memory 112, or a predetermined command Can be received by the communication unit 105 and given to the CPU 111.
[0056]
The external memory 106 is configured by, for example, an electrically erasable programmable read-only memory (EEPROM) or the like, and is detachable from a slot (not shown) provided in the body unit 11. The external memory 106 stores, for example, an emotion model described later.
[0057]
FIG. 8 shows an example of a functional configuration of the main control unit 61 of FIG. Note that the functional configuration illustrated in FIG. 8 is realized by the main control unit 61 executing the OS 121 and the application program 122 stored in the internal memory 112. In FIG. 8, the illustration of the D / A converter 101 and the A / D converter 102 is omitted.
[0058]
The sensor input processing unit 201 of the main control unit 61 includes a pressure detection signal, a ground signal, an acceleration detection signal, and a voice signal respectively supplied from the head sensor 51, the sole sensor 91, the acceleration sensor 132, the microphone 82, and the CCD camera 81. Based on image signals and the like, a specific external state, a specific action from the user, an instruction from the user, and the like are recognized, and state recognition information representing the recognition result is stored in the model storage unit 202 and the action determination mechanism unit 203. Notify
[0059]
That is, the sensor input processing unit 201 includes a pressure processing unit 221, an acceleration processing unit 222, a voice recognition unit 223, and an image recognition unit 224.
[0060]
The pressure processing unit 221 processes a pressure detection signal provided from the head sensor 51. Then, for example, as a result of the processing, when detecting a pressure that is equal to or more than a predetermined threshold value and for a short time, the pressure processing unit 221 recognizes that “hit” has been detected, and determines that the pressure is less than the predetermined threshold value. When the pressure is not detected for a long time, it is recognized as “patched” and the recognition result is stored in the model storage unit 202 and the action determination mechanism unit 203 as state recognition information. Notice.
[0061]
Further, the pressure processing unit 221 processes a ground contact signal provided from the sole sensor 91. Then, for example, as a result of the processing, when a ground contact signal is given from the sole sensor 91 disposed on the foot 45 of the leg unit 14A, the pressure processing unit 221 outputs the foot 45 of the leg unit 14A. Is recognized as being in contact with the floor (ground), and when the ground signal is not given from the sole sensor 91, it is recognized that the foot 45 of the leg unit 14A is not grounded on the floor (ground). Similarly, the leg unit 14B recognizes whether the foot 45 of the leg unit 14B is in contact with the floor (ground) based on the ground signal from the sole sensor 91. Then, the pressure processing unit 221 notifies the model storage unit 202 and the action determination mechanism unit 203 of the recognition result as state recognition information.
[0062]
The acceleration processing unit 222 notifies the model storage unit 202 and the action determination mechanism unit 203 of the direction and magnitude of the acceleration of the body unit 11 as state recognition information based on the acceleration detection signal given from the acceleration sensor 132. .
[0063]
The voice recognition unit 223 performs voice recognition on a voice signal provided from the microphone 82. Then, the speech recognition unit 223 uses the word string such as “walk”, “down”, “chase the ball” or the like as the speech recognition result as the state recognition information as the model storage unit 202 and the action determination mechanism unit. Notify 203.
[0064]
The image recognition unit 224 performs an image recognition process using an image signal given from the CCD camera 81. Then, when the image recognition unit 224 detects, for example, “a red round object” or “a plane that is perpendicular to the ground and is equal to or more than a predetermined height” as a result of the processing, “there is a ball”, “ An image recognition result such as “there is a wall” is notified to the model storage unit 202 and the action determination mechanism unit 203 as state recognition information.
[0065]
The model storage unit 202 stores and manages an emotion model, an instinct model, and a growth model expressing the emotion, instinct, and growth state of the robot 5, respectively.
[0066]
Here, the emotion model indicates, for example, the state (degree) of emotions such as “joy”, “sadness”, “anger”, and “fun” in a predetermined range (for example, −1.0 to 1.. 0, etc.), and the values are changed based on the state recognition information from the sensor input processing unit 201 or the passage of time.
[0067]
The instinct model represents, for example, the state (degree) of the instinct's desire such as “appetite”, “sleep desire”, and “exercise desire” by values in a predetermined range, and state recognition information from the sensor input processing unit 201. The value is changed based on the time or the passage of time.
[0068]
The growth model represents, for example, a growth state (degree) such as “childhood”, “adolescence”, “mature”, “elderly”, etc., by a value in a predetermined range. The value is changed on the basis of the state recognition information or the passage of time.
[0069]
The model storage unit 202 sends the emotion, instinct, and growth state represented by the values of the emotion model, instinct model, and growth model as described above to the action determination mechanism unit 203 as state information.
[0070]
In addition to the state recognition information supplied from the sensor input processing unit 201 to the model storage unit 202, the current or past behavior of the robot 5, specifically, for example, Behavior information indicating the content of the action such as "walking for time" is supplied. Even if the same state recognition information is given, the model storage unit 202 responds to the behavior of the robot 5 indicated by the behavior information. Thus, different state information is generated.
[0071]
For example, when the robot 5 greets the user and is stroked by the user, the behavior information that the robot 5 greets the user and the state recognition information that the robot is stroked are stored in the model storage unit 202. In this case, in the model storage unit 202, the value of the emotion model representing “joy” is increased.
[0072]
The action determination mechanism unit 203 performs the following based on the state recognition information from the sensor input processing unit 201, the state information from the model storage unit 202, the passage of time, or the like, or the command from the personal computer 6 received by the communication unit 105. Is determined, and the contents of the determined behavior are output to the posture transition mechanism unit 204 as behavior command information.
[0073]
The action determining mechanism unit 203 has a built-in timer 211, and sets a designated waiting time when starting a cooperative action. Then, when the waiting time has elapsed, the action determination mechanism unit 203 starts outputting the action command information for the cooperative action to the posture transition mechanism unit 204.
[0074]
The posture transition mechanism unit 204 generates posture transition information for transitioning the posture of the robot 5 from the current posture to the next posture based on the behavior command information supplied from the behavior determination mechanism unit 203, It is sent to the control mechanism unit 205.
[0075]
The control mechanism unit 205 generates a control signal for driving the actuators A1 to A14 according to the posture transition information from the posture transition mechanism unit 204, and sends the control signal to the sub-control units 63A to 63D. The sub-control units 63A to 63D drive appropriate actuators based on the control signals to cause the robot 5 to execute various operations.
[0076]
The speech synthesis unit 208 receives the utterance command information from the action determination mechanism unit 203, performs, for example, regular speech synthesis in accordance with the utterance command information, and supplies the synthesized sound to the speaker 72 for output.
[0077]
FIG. 9 is a functional block diagram illustrating functions of the voice recognition unit 223 of the sensor input processing unit 201.
[0078]
The voice data input to the voice recognition unit 223 via the microphone 82 and the A / D conversion unit 102 in FIG. 7 is supplied to the feature amount extraction unit 251.
[0079]
The feature extraction unit 251 performs an acoustic analysis process on the audio data from the A / D conversion unit 102 for each appropriate frame. Extract.
[0080]
The feature vectors obtained for each frame in the feature extraction unit 251 are sequentially supplied to the feature vector buffer 252 and stored. Therefore, the feature vector for each frame is stored in the feature vector buffer 252 in time series.
[0081]
The feature vector buffer 252 stores, for example, time-series feature vectors obtained from the start to the end of a certain utterance (voice section).
[0082]
The matching unit 253 uses the feature vectors stored in the feature vector buffer 252 to refer to the acoustic model database 254, the dictionary database 255, and the grammar database 256 as necessary, and to input the speech (input) to the microphone 82. Speech) is recognized based on, for example, a continuous distribution HMM method or the like.
[0083]
That is, the acoustic model database 254 stores a set of acoustic models representing acoustic characteristics for each predetermined unit (PLU (Phonetic-Linguistic-Units)) such as individual phonemes or syllables in the language of the speech to be recognized. ing. The dictionary database 255 stores, for each word (vocabulary) to be recognized, a word dictionary in which information (phonological information) related to pronunciation is described. The grammar database 256 stores grammar rules (language models) that describe how the words registered in the word dictionary of the dictionary database 255 are linked (connected).
[0084]
The matching unit 253 refers to the word dictionary in the dictionary database 255, and connects the acoustic models stored in the acoustic model database 254, thereby forming an acoustic model (word model) of the word. Further, the matching unit 253 connects several word models by referring to the grammar rules stored in the grammar database 256, and uses the word models connected in this way to generate a time-series feature vector and a time-series feature vector. Is performed by the continuous distribution HMM method, and the voice input to the microphone 82 is recognized. That is, the matching unit 253 calculates a score representing the likelihood that the time-series feature vector stored in the feature vector buffer 252 is observed from the series of the respective word models configured as described above. Then, for example, the matching unit 253 detects a sequence of the word model having the highest score, and outputs a word string corresponding to the sequence of the word model as a speech recognition result.
[0085]
FIG. 10 shows a configuration example of the personal computer 6. An input / output interface 516 is connected to a CPU (Central Processing Unit) 511 via a bus 515. The CPU 511 receives a command from an input unit 518 including a keyboard, a mouse, and the like from a user via the input / output interface 516. When input, the information is stored in a recording medium such as a magnetic disk 531, an optical disk 532, a magneto-optical disk 533, or a semiconductor memory 534 mounted on a ROM (Read Only Memory) 512, a hard disk 514, or a drive 520. The program is loaded into a RAM (Random Access Memory) 513 and executed.
[0086]
The communication unit 519 transmits or receives data to or from the network 3.
[0087]
Next, the operation of the robot 5 and the personal computer 6 will be described with reference to the flowchart of FIG. Note that the processing of steps S21 to S28 in FIG. 11 is executed in each of the robots 5.
[0088]
In step S1, the CPU 511 of the personal computer 6 requests each robot 5 to establish synchronization for cooperative action. Specifically, the communication unit 519 generates a communication packet (synchronous packet) Pa as shown in FIG. 12 and sends it to each robot 5 by connection-type communication (UDP in this example). Broadcast or multicast. That is, the synchronization packet Pa is transmitted to each robot 5 in the local segment at the same time.
[0089]
The Ethernet (registered trademark) header of the synchronization packet Pa stores the MAC address of the transmission source (personal computer 6), the MAC address of the transmission destination (robot 5), and the like. The IP header stores a source IP address, a broadcast address, and the like.
[0090]
The UDP header stores a source port number, a destination port number, and the like. The data section stores a command ID of a command for waiting for a predetermined waiting time (hereinafter, referred to as a waiting command) when starting a cooperative action, a waiting time thereof, and a packet ID of the synchronization packet Pa. .
[0091]
Next, in step S2, the CPU 511 of the personal computer 6 inquires of each robot 5 whether or not the synchronization packet Pa transmitted in step S1 has been received. Specifically, the communication unit 519 generates a communication packet Pb as shown in FIG. 13 and unicasts it to each robot 5 by connection-type communication (TCP in this example). Therefore, this communication packet Pb is transmitted sequentially after the connection is established with each robot 5.
[0092]
The Ethernet (registered trademark) header of the communication packet Pb stores the MAC address of the transmission source, the MAC address of the transmission destination, and the like. The IP header stores a source IP address, a destination IP address, and the like.
[0093]
In the TCP header, data for opening a connection and the like are stored in addition to the source port number and the destination port number. The data portion stores a command ID of a command (hereinafter, referred to as an inquiry command) for responding to the reception result of the synchronization packet Pa and a packet ID of the synchronization packet Pa.
[0094]
On the other hand, the main control unit 61 (FIG. 8) of the robot 5 determines whether or not the synchronization establishment for the cooperative action is requested from the personal computer 6 in step S21 of FIG. 11 (the synchronization packet Pa shown in FIG. 12). Is determined by the communication unit 105), and when it is determined that the request is received (received), the process proceeds to step S22.
[0095]
In step S22, the main control unit 61 of the robot 5 sets the waiting time stored in the data section of the synchronization packet Pa in the timer 211, and starts the countdown in step S23.
[0096]
After starting the countdown of the waiting time in step S23, or when it is determined in step S21 that the synchronization packet Pa has not been received, the main control unit 61 of the robot 5 sends the synchronization It is determined whether there is an inquiry about the presence or absence of packet reception (whether or not the communication packet Pb shown in FIG. 13 has been received), and if it is determined that there is no inquiry (not received), the process returns to step S21, and thereafter. The processing of is performed.
[0097]
If it is determined in step S24 that there has been an inquiry about whether or not the synchronization packet has been received, the main control unit 61 of the robot 5 proceeds to step S25, controls the communication unit 105, and determines whether or not the synchronization packet has been received. To be sent. Specifically, the communication unit 105 generates a communication packet Pc as shown in FIG. 14 and transmits it to the personal computer 6 by TCP.
[0098]
The Ethernet (registered trademark) header of the communication packet Pc stores the MAC address of the transmission source, the MAC address of the transmission destination, and the like. The IP header stores a source IP address, a destination IP address, and the like.
[0099]
In the TCP header, data for opening a connection and the like are stored in addition to the source port number and the destination port number. When the synchronization packet Pa is received, the data portion stores an ID indicating that the communication packet Pc is a response to the inquiry about the reception of the synchronization packet, and a packet ID of the received synchronization packet Pa. If Pa has not been received, only the ID indicating that the response to the inquiry about the reception of the synchronization packet is stored (the packet ID of the synchronization packet Pa is not stored).
[0100]
In step S3, the CPU 511 of the personal computer 6 determines whether or not all robots 5 have responded to the inquiry about the synchronization packet reception (whether or not the communication packet Pc shown in FIG. 14 has been transmitted from all robots 5). If it is determined that there is a robot 5 that has not yet responded, the process proceeds to step S4.
[0101]
In step S4, the CPU 511 of the personal computer 6 determines whether or not a predetermined time has elapsed since transmitting the synchronization packet Pa in step S1, and if it is determined that the predetermined time has not elapsed, the process returns to step S3. Execute the subsequent processing.
[0102]
If it is determined in step S3 that all the robots 5 have responded to the inquiry of the synchronization packet reception, the CPU 511 of the personal computer 6 proceeds to step S5, and from the response, all the robots 5 receive the synchronization packet Pa. It is determined whether or not all of the communication packets Pc received in step S3 store the packet ID of the synchronization packet Pa. If it is determined that all the robots 5 have received the synchronization packet Pa, step S6 is performed. Proceed to.
[0103]
In step S6, the CPU 511 of the personal computer 6 controls the communication unit 519 to request each robot 5 to start a predetermined cooperative action. Specifically, the communication unit 519 generates a communication packet Pd as shown in FIG. 15 and transmits it to each robot 5 by TCP.
[0104]
The Ethernet (registered trademark) header of the communication packet Pd stores the MAC address of the transmission source, the MAC address of the transmission destination, and the like. The IP header stores a source IP address and a destination IP address.
[0105]
In the TCP header, data for opening a connection and the like are stored in addition to the source port number and the destination port number. The data section stores a command ID of a command for starting a predetermined cooperative operation (hereinafter, referred to as a start command) and a packet ID of the synchronization packet Pa.
[0106]
If it is determined in step S4 that the predetermined time has elapsed, or if it is determined in step S5 that there is a robot 5 that has not received the synchronization packet Pa, the process proceeds to step S7, where the CPU 511 of the personal computer 6 , The communication unit 519 to request each robot 5 to stop the cooperative action. Specifically, the communication unit 519 generates a communication packet Pe as shown in FIG. 16 and transmits it to each robot 5 by TCP.
[0107]
The Ethernet (registered trademark) header of the communication packet Pe stores the MAC address of the transmission source, the MAC address of the transmission destination, and the like. The IP header stores a source IP address and a destination IP address.
[0108]
In the TCP header, data for opening a connection and the like are stored in addition to the source port number and the destination port number. The data section stores a command ID of a command for stopping a predetermined cooperative operation (hereinafter, referred to as a stop command) and a packet ID of the synchronization packet Pa.
[0109]
When the start of the cooperative action is requested in step S6 or the stop of the cooperative execution is requested in step S7, the CPU 511 of the personal computer 6 ends the process.
[0110]
In step S26, the main control unit 61 of the robot 5 determines whether the start of the cooperative action is requested (the communication packet Pd illustrated in FIG. 15 is received) or the stop of the cooperative action is requested (the communication illustrated in FIG. 16). It is determined whether the packet Pe has been received. If it is determined that the start of the cooperative action has been requested, the process proceeds to step S27 and waits until the countdown started in step S23 is completed.
[0111]
When the countdown is completed in step S27, the process proceeds to step S28, and the main control unit 61 of the robot 5 starts outputting the control signal of the cooperative action corresponding to the command ID of the start command to the actuator A. Thereby, the cooperative action of the robot 5 is started.
[0112]
On the other hand, when it is determined in step S26 that the stop of the cooperative action has been requested, the process proceeds to step S29, and the main control unit 61 of the robot 5 resets the timer 211 in which the waiting time is set in step S22. That is, in this case, no cooperative action is performed.
[0113]
After step S28 or step S29, the robot 5 ends the processing.
[0114]
The cooperative action is started as described above.
[0115]
In the above, the case where the personal computer 6 transmits the synchronization packet Pa and the like to each robot 5 to cause the robots 5 to cooperate has been described as an example. However, one of the robots 5 Thus, the operation of the personal computer 6 described above is further performed, so that the cooperative action can be performed.
[0116]
In this case, for example, the user calls “dance start”, and the robot 5 recognizing it calls each of the other robots 5 as to whether or not it is a master. If there is a response that it is not (or if there is no response within a predetermined time), it recognizes itself as a master and recognizes that other robots 5 are not masters (registers). Then, the robot 5 notifies (declares) the other robots 5 that it is the master.
[0117]
In other words, in this example, the robot 5 that recognizes the user's name as the earliest becomes the master. However, if a plurality of robots 5 recognize themselves as the master due to communication failure or the like, from the declared time, One master can be determined.
[0118]
When one master is determined in this way, the master robot 5 starts the operation shown in FIG.
[0119]
In step S41, the main control unit 61 of the master robot 5 controls the communication unit 105 to broadcast or multicast the synchronization packet Pa shown in FIG. 12 to the other robots 5 as in step S1 of FIG. Request for synchronization for cooperative action. The communication between the robots 5 is performed via the access point 2.
[0120]
Next, in step S42, the main control unit 61 of the master robot 5 sets the waiting time stored in the data part of the synchronization packet Pa in the timer 211, and starts counting down in step S43.
[0121]
In steps S44 to S48, the same processes as those in steps S2 to S6 shown in FIG. 11 are performed, and a description thereof will be omitted.
[0122]
In step S48, the communication unit 105 is controlled to transmit the communication packet Pd shown in FIG. 15 to the other robot 5 to request the start of the cooperative action. In S49, the process waits until the countdown started in step S43 is completed.
[0123]
When the countdown is completed in step S49, the process proceeds to step S50, in which the main control unit 61 of the master robot 5 transmits the cooperative action control signal corresponding to the command ID of the start command stored in the communication packet Pd shown in FIG. Start output to the actuator.
[0124]
In step S46, when it is determined that the predetermined time has elapsed, or when it is determined in step S47 that there is a robot 5 that has not received the synchronization packet Pa, in step S51, the main control of the master robot 5 is performed. The unit 61 controls the communication unit 105 to transmit the communication packet Pe shown in FIG. 16 to the other robots 5 and requests a stop of the cooperative action. Then, in step S52, the main control unit 61 of the master robot 5 resets the timer 211 for which the waiting time has been set in step S43.
[0125]
The master robot 5 performs the processing described above, but the other robots that are not the master execute the processing of steps S21 to S28 in FIG.
[0126]
In the above, the case where the robot 5 performs the cooperative action has been described as an example. However, the present invention is not limited to the robot 5 and can be applied to any apparatus that performs predetermined processing at the same time. For example, a single large display unit may be formed by combining a plurality of display units, and the display unit may be used for a process of displaying one image on the entire display unit.
[0127]
In this specification, the step of describing a program provided by a recording medium may be performed in chronological order according to the described order, or may not be performed in chronological order. This also includes processes executed individually.
[0128]
Also, in this specification, a system represents the entire device including a plurality of devices.
[0129]
【The invention's effect】
According to the first and second aspects of the present invention, the cooperative processing can be simultaneously started by the processing device.
[0130]
According to the third aspect of the present invention, the cooperative processing can be appropriately started.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a configuration example of a conventional robot system.
FIG. 2 is a diagram illustrating a configuration example of a robot system to which the present invention has been applied.
FIG. 3 is a perspective view showing an external configuration of the robot shown in FIG. 2;
FIG. 4 is a rear perspective view showing the external configuration of the robot shown in FIG. 2;
FIG. 5 is a schematic diagram for explaining the robot of FIG. 2;
FIG. 6 is a block diagram showing an internal configuration of the robot shown in FIG. 2;
FIG. 7 is a block diagram for mainly explaining a portion related to control of the robot in FIG. 2;
FIG. 8 is a block diagram illustrating a configuration of a main control unit in FIG. 7;
FIG. 9 is a block diagram illustrating a configuration example of a speech recognition unit in FIG. 8;
FIG. 10 is a block diagram showing a configuration of the personal computer 6 of FIG.
FIG. 11 is a flowchart for explaining operations of the robot and the personal computer in FIG. 2;
FIG. 12 is a diagram illustrating a data structure of a communication packet.
FIG. 13 is a diagram for explaining a data structure of another communication packet.
FIG. 14 is a diagram for explaining a data structure of another communication packet.
FIG. 15 is a diagram for explaining a data structure of another communication packet.
FIG. 16 is a diagram for explaining a data structure of another communication packet.
FIG. 17 is a flowchart for explaining the operation of the master robot of FIG. 2;
[Explanation of symbols]
5 robot, 6 personal computer, 12 head unit, 52 control unit, 61 main control unit, 105 communication unit, 211 timer, 511 CPU, 519 communication unit

Claims (12)

無線で互いに接続される、協調処理を行う処理装置、および前記協調処理を制御する制御装置からなる情報処理システムにおいて、
前記制御装置は、
前記協調処理を前記処理装置に同時に開始させるための同期情報を、コネクションレス型通信で、前記処理装置に送信する同期情報送信手段と、
前記同期情報受信の有無を通知させる指令を、コネクション型通信で、前記処理装置に送信する通知指令送信手段と、
前記処理装置の前記同期情報受信の有無に応じて、前記協調行動を開始させる指令を、前記コネクション型通信で、前記処理装置に送信する開始指令送信手段と
を備え、
前記処理装置は、
前記同期情報を受信するとともに、前記同期情報に指定された待ち時間の計測を開始する計測手段と、
前記制御装置の前記通知指令送信手段により、前記同期情報受信の有無を通知させる指令が送信されたとき、前記同期情報受信の有無を、前記制御装置に通知する通知手段と、
前記制御装置の前記開始指令送信手段により、前記協調行動を開始させる指令が送信された場合、前記待ち時間を経過した時点で、前記協調行動を開始する協調行動開始手段と
を備えることを特徴とする情報処理システム。
In an information processing system that is wirelessly connected to each other and includes a processing device that performs cooperative processing and a control device that controls the cooperative processing,
The control device includes:
Synchronization information for causing the processing device to simultaneously start the coordination process, a synchronization information transmission unit that transmits to the processing device by connectionless communication,
A command for notifying the presence or absence of the synchronization information reception, a notification command transmitting unit that transmits to the processing device by connection-type communication,
In accordance with the presence or absence of the synchronization information reception of the processing device, a command to start the cooperative action, the connection-type communication, comprising a start command transmission means to transmit to the processing device,
The processing device includes:
A measuring unit that receives the synchronization information and starts measuring a waiting time specified in the synchronization information,
By the notification command transmitting means of the control device, when a command to notify the presence or absence of the synchronization information is transmitted, notification means for notifying the control device of the presence or absence of the synchronization information,
When a command to start the cooperative action is transmitted by the start command transmitting means of the control device, at the time when the waiting time elapses, the cooperative action starting means to start the cooperative action is provided. Information processing system.
前記制御装置の前記開始指令送信手段は、前記処理装置の前記同期情報受信の有無に応じて、前記協調行動の開始を中止させる指令を、前記コネクション型通信で、前記処理装置に送信し、
前記処理装置の協調行動開始手段は、前記制御装置の前記開始指令送信手段により、前記協調行動の開始を中止させる指令が送信されたとき、前記協調行動の開始を中止する
ことを特徴とする請求項1に記載の情報処理システム。
The start command transmitting unit of the control device transmits a command to stop the start of the cooperative action to the processing device in the connection-type communication, depending on whether the processing device has received the synchronization information.
The cooperative action start means of the processing device stops the start of the cooperative action when a command to stop the start of the cooperative action is transmitted by the start command transmitting means of the control device. Item 2. The information processing system according to item 1.
前記制御装置は、
前記同期情報送信手段により前記同期情報が送信されたとき、前記同期情報に指定された前記待ち時間の計測を開始し、
前記開始指令送信手段により、前記協調行動を開始する指令が送信された場合、前記待ち時間を経過した時点で、自分自身が前記協調行動を開始する
ことを特徴とする請求項1に記載の情報処理システム。
The control device includes:
When the synchronization information is transmitted by the synchronization information transmitting means, start measuring the waiting time specified in the synchronization information,
2. The information according to claim 1, wherein, when a command to start the cooperative action is transmitted by the start command transmission unit, the self starts the cooperative action at the time when the waiting time has elapsed. 3. Processing system.
無線で互いに接続される、協調処理を行う処理装置、および前記協調処理を制御する制御装置からなる情報処理システムの情報処理方法において、
前記制御装置において前記協調処理を前記処理装置に同時に開始させるための同期情報を、コネクションレス型通信で、前記処理装置に送信する同期情報送信ステップと、
前記制御装置において前記同期情報受信の有無を通知させる指令を、コネクション型通信で、前記処理装置に送信する通知指令送信ステップと、
前記処理装置において前記同期情報を受信するとともに、前記同期情報に指定された待ち時間の計測を開始する計測ステップと、
前記処理装置において前記制御装置の前記通知指令送信ステップの処理で、前記同期情報受信の有無を通知させる指令が送信されたとき、前記同期情報受信の有無を、前記制御装置に通知する通知ステップと、
前記制御装置において前記処理装置の前記同期情報受信の有無に応じて、前記協調行動を開始させる指令を、前記コネクション型通信で、前記処理装置に送信する開始指令送信ステップと、
前記処理装置において前記制御装置の前記開始指令送信ステップの処理で、前記協調行動を開始させる指令が送信された場合、前記待ち時間を経過した時点で、前記協調行動を開始する協調行動開始ステップと
を含むことを特徴とする情報処理システム。
In an information processing method of an information processing system including a processing device that performs cooperative processing and a control device that controls the cooperative processing, which are connected to each other wirelessly,
Synchronization information for causing the processing device to simultaneously start the cooperative processing in the control device, a synchronization information transmitting step of transmitting to the processing device by connectionless communication,
A command for notifying the presence or absence of the synchronization information reception in the control device, a notification command transmission step of transmitting to the processing device by connection-type communication,
A measurement step of receiving the synchronization information in the processing device and starting measurement of a waiting time specified in the synchronization information,
In the processing of the notification command transmitting step of the control device in the processing device, when a command to notify the presence or absence of the synchronization information is transmitted, a notification step of notifying the control device of the presence or absence of the synchronization information, ,
In the control device, according to the presence or absence of the synchronization information reception of the processing device, a command to start the cooperative action, in the connection-type communication, a start command transmission step of transmitting to the processing device,
In the processing of the start command transmitting step of the control device in the processing device, when a command to start the cooperative action is transmitted, at the time when the waiting time has elapsed, the cooperative action start step to start the cooperative action, An information processing system comprising:
処理装置と無線で接続され、前記処理装置に協調処理を行わせる情報処理装置において、
前記協調処理を前記処理装置に同時に開始させるための同期情報を、コネクションレス型通信で、前記処理装置に送信する同期情報送信手段と、
前記同期情報受信の有無を通知させる指令を、コネクション型通信で、前記処理装置に送信する通知指令送信手段と、
前記処理装置の前記同期情報受信の有無に応じて、前記協調行動を開始させる指令を、前記コネクション型通信で、前記処理装置に送信する開始指令送信手段と
を備えることを特徴とする情報処理装置。
In an information processing device wirelessly connected to the processing device and causing the processing device to perform cooperative processing,
Synchronization information for causing the processing device to simultaneously start the coordination process, a synchronization information transmission unit that transmits to the processing device by connectionless communication,
A command for notifying the presence or absence of the synchronization information reception, a notification command transmitting unit that transmits to the processing device by connection-type communication,
An information processing apparatus comprising: a start command transmitting unit configured to transmit a command to start the cooperative action to the processing device by the connection-type communication in accordance with whether or not the processing device receives the synchronization information. .
前記開始指令送信手段は、前記処理装置の前記同期情報受信の有無に応じて、前記協調行動の開始を中止させる指令を、前記コネクション型通信で、前記処理装置に送信する
ことを特徴とする請求項5に記載の情報処理装置。
The said start command transmission means transmits the command which stops the start of the said cooperative action to the said processing apparatus by the said connection type communication according to the presence or absence of the said synchronous information of the said processing apparatus. Item 6. The information processing device according to item 5.
処理装置と無線で接続され、前記処理装置に協調処理を行わせる情報処理方法において、
前記協調処理を前記処理装置に同時に開始させるための同期情報を、コネクションレス型通信で、前記処理装置に送信する同期情報送信ステップと、
前記同期情報受信の有無を通知させる指令を、コネクション型通信で、前記処理装置に送信する通知指令送信ステップと、
前記処理装置の前記同期情報受信の有無に応じて、前記協調行動を開始させる指令を、前記コネクション型通信で、前記処理装置に送信する開始指令送信ステップと
を含むことを特徴とする情報処理方法。
In an information processing method wirelessly connected to a processing device and causing the processing device to perform cooperative processing,
Synchronization information for causing the processing device to simultaneously start the cooperative processing, a synchronization information transmission step of transmitting to the processing device by connectionless communication,
A command for notifying the presence or absence of the synchronization information reception, a notification command transmission step of transmitting to the processing device by connection-type communication,
An information processing method comprising: transmitting a command to start the cooperative action to the processing device by the connection-type communication in accordance with the presence or absence of the synchronization information reception of the processing device. .
処理装置と無線で接続され、前記処理装置に協調処理を行わせるプログラムであって、
前記協調処理を前記処理装置に同時に開始させるための同期情報を、コネクションレス型通信で、前記処理装置に送信する同期情報送信ステップと、
前記同期情報受信の有無を通知させる指令を、コネクション型通信で、前記処理装置に送信する通知指令送信ステップと、
前記処理装置の前記同期情報受信の有無に応じて、前記協調行動を開始させる指令を、前記コネクション型通信で、前記処理装置に送信する開始指令送信ステップと
を含む処理をコンピュータに実行させることを特徴とするプログラム。
A program that is wirelessly connected to the processing device and causes the processing device to perform cooperative processing.
Synchronization information for causing the processing device to simultaneously start the cooperative processing, a synchronization information transmission step of transmitting to the processing device by connectionless communication,
A command for notifying the presence or absence of the synchronization information reception, a notification command transmission step of transmitting to the processing device by connection-type communication,
Depending on the presence or absence of the synchronization information reception of the processing device, causing the computer to execute a process including a command to start the cooperative action, a start command transmission step of transmitting the command to the processing device by the connection-type communication. Features program.
制御装置と無線で接続され、所定の協調処理を行う情報処理装置において、
前記制御装置から、コネクションレス型通信で送信されてきた、前記協調処理を前記処理装置に同時に開始させるための同期情報を受信するとともに、前記同期情報に指定された待ち時間の計測を開始する計測手段と、
前記制御装置から、前記同期情報受信の有無を通知させる指令が送信されてきたとき、前記同期情報受信の有無を、前記制御装置に通知する通知手段と、
前記制御装置から、前記協調行動を開始させる指令が送信されてきた場合、前記待ち時間を経過した時点で、前記協調行動を開始する協調行動開始手段と
を備えることを特徴とする情報処理装置。
In an information processing device wirelessly connected to the control device and performing a predetermined cooperative process,
Measurement for receiving synchronization information transmitted from the control device by connectionless communication for causing the processing device to simultaneously start the cooperative processing, and for starting measurement of a waiting time specified in the synchronization information. Means,
When a command to notify the presence or absence of the synchronization information is transmitted from the control device, a notification unit that notifies the control device of the presence or absence of the synchronization information,
An information processing apparatus, comprising: a coordination action start unit that starts the coordination action when the waiting time has elapsed when a command to start the coordination action is transmitted from the control device.
前記協調行動開始手段は、前記制御装置から、前記協調行動の開始を中止させる指令が送信されてきたとき、前記協調行動の開始を中止する
ことを特徴とする請求項9に記載の情報処理装置。
The information processing apparatus according to claim 9, wherein the cooperative action start unit stops the start of the cooperative action when a command to stop the start of the cooperative action is transmitted from the control device. .
制御装置と無線で接続され、所定の協調処理を行うための情報処理方法において、
前記制御装置から、コネクションレス型通信で送信されてきた、前記協調処理を前記処理装置に同時に開始させるための同期情報を受信するとともに、前記同期情報に指定された待ち時間の計測を開始する計測ステップと、
前記制御装置から、前記同期情報受信の有無を通知させる指令が送信されてきたとき、前記同期情報受信の有無を、前記制御装置に通知する通知ステップと、
前記制御装置から、前記協調行動を開始させる指令が送信されてきた場合、前記待ち時間を経過した時点で、前記協調行動を開始する協調行動開始ステップと
を含むことを特徴とする情報処理方法。
In an information processing method wirelessly connected to the control device and performing predetermined cooperative processing,
Measurement for receiving synchronization information transmitted from the control device by connectionless communication for causing the processing device to simultaneously start the cooperative processing, and for starting measurement of a waiting time specified in the synchronization information. Steps and
When a command to notify the presence or absence of the synchronization information is transmitted from the control device, a notification step of notifying the control device of the presence or absence of the synchronization information reception,
An information processing method, comprising: when a command to start the cooperative action is transmitted from the control device, starting a cooperative action when the waiting time has elapsed.
制御装置と無線で接続され、所定の協調処理を行うためのプログラムであって、
前記制御装置から、コネクションレス型通信で送信されてきた、前記協調処理を前記処理装置に同時に開始させるための同期情報を受信するとともに、前記同期情報に指定された待ち時間の計測を開始する計測ステップと、
前記制御装置から、前記同期情報受信の有無を通知させる指令が送信されてきたとき、前記同期情報受信の有無を、前記制御装置に通知する通知ステップと、前記制御装置から、前記協調行動を開始させる指令が送信されてきた場合、前記待ち時間を経過した時点で、前記協調行動を開始する協調行動開始ステップと
を含む処理をコンピュータに実行させることを特徴とするプログラム。
A program that is wirelessly connected to the control device and performs a predetermined cooperative process,
Measurement for receiving synchronization information transmitted from the control device by connectionless communication for causing the processing device to simultaneously start the cooperative processing, and for starting measurement of a waiting time specified in the synchronization information. Steps and
When a command to notify the presence or absence of the synchronization information is transmitted from the control device, a notification step of notifying the presence or absence of the synchronization information to the control device, and starting the cooperative action from the control device. A program for causing a computer to execute a process including a cooperative action start step of starting the cooperative action when the waiting time elapses when a command to cause the computer is transmitted.
JP2003098071A 2003-04-01 2003-04-01 Information processing system, information processing apparatus, information processing method, and program Withdrawn JP2004304714A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003098071A JP2004304714A (en) 2003-04-01 2003-04-01 Information processing system, information processing apparatus, information processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003098071A JP2004304714A (en) 2003-04-01 2003-04-01 Information processing system, information processing apparatus, information processing method, and program

Publications (1)

Publication Number Publication Date
JP2004304714A true JP2004304714A (en) 2004-10-28

Family

ID=33409694

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003098071A Withdrawn JP2004304714A (en) 2003-04-01 2003-04-01 Information processing system, information processing apparatus, information processing method, and program

Country Status (1)

Country Link
JP (1) JP2004304714A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009518716A (en) * 2005-12-02 2009-05-07 アイロボット コーポレーション Robot system
US8347444B2 (en) 2007-05-09 2013-01-08 Irobot Corporation Compact autonomous coverage robot
US8368339B2 (en) 2001-01-24 2013-02-05 Irobot Corporation Robot confinement
US8374721B2 (en) 2005-12-02 2013-02-12 Irobot Corporation Robot system
US8378613B2 (en) 2004-01-28 2013-02-19 Irobot Corporation Debris sensor for cleaning apparatus
US8387193B2 (en) 2005-02-18 2013-03-05 Irobot Corporation Autonomous surface cleaning robot for wet and dry cleaning
US8478442B2 (en) 2000-01-24 2013-07-02 Irobot Corporation Obstacle following sensor scheme for a mobile robot
US8739355B2 (en) 2005-02-18 2014-06-03 Irobot Corporation Autonomous surface cleaning robot for dry cleaning
CN108942931A (en) * 2018-07-18 2018-12-07 厦门市图巴机器人有限公司 A kind of method of multirobot real-time synchronization movement

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8478442B2 (en) 2000-01-24 2013-07-02 Irobot Corporation Obstacle following sensor scheme for a mobile robot
US8368339B2 (en) 2001-01-24 2013-02-05 Irobot Corporation Robot confinement
US8378613B2 (en) 2004-01-28 2013-02-19 Irobot Corporation Debris sensor for cleaning apparatus
US8387193B2 (en) 2005-02-18 2013-03-05 Irobot Corporation Autonomous surface cleaning robot for wet and dry cleaning
US8739355B2 (en) 2005-02-18 2014-06-03 Irobot Corporation Autonomous surface cleaning robot for dry cleaning
US8966707B2 (en) 2005-02-18 2015-03-03 Irobot Corporation Autonomous surface cleaning robot for dry cleaning
JP2009518716A (en) * 2005-12-02 2009-05-07 アイロボット コーポレーション Robot system
US8374721B2 (en) 2005-12-02 2013-02-12 Irobot Corporation Robot system
US8347444B2 (en) 2007-05-09 2013-01-08 Irobot Corporation Compact autonomous coverage robot
US9480381B2 (en) 2007-05-09 2016-11-01 Irobot Corporation Compact autonomous coverage robot
US10070764B2 (en) 2007-05-09 2018-09-11 Irobot Corporation Compact autonomous coverage robot
CN108942931A (en) * 2018-07-18 2018-12-07 厦门市图巴机器人有限公司 A kind of method of multirobot real-time synchronization movement

Similar Documents

Publication Publication Date Title
JP2004299033A (en) Robot device, information processing method, and program
JP4296714B2 (en) Robot control apparatus, robot control method, recording medium, and program
US20010020837A1 (en) Information processing device, information processing method and storage medium
JP4239635B2 (en) Robot device, operation control method thereof, and program
WO2002045916A1 (en) Robot device, method for controlling motion of robot device, and system for controlling motion of robot device
CN110774285A (en) Humanoid robot and method for executing dialogue between humanoid robot and user
JP2004090109A (en) Robot device and interactive method for robot device
WO2002076687A1 (en) Robot device and control method therefor, and storage medium
JP2004304714A (en) Information processing system, information processing apparatus, information processing method, and program
JP2004230480A (en) Robot device and robot control method, recording medium, and program
WO2002077970A1 (en) Speech output apparatus
JP2004034273A (en) Robot and system for generating action program during utterance of robot
JP2004283927A (en) Robot control device, and method, recording medium and program
JP4600736B2 (en) Robot control apparatus and method, recording medium, and program
JP4433273B2 (en) Robot apparatus and control method of robot apparatus
JP2005335001A (en) Robot control device and method, recording medium, and program
JP5324956B2 (en) Road guidance robot
JP2003255990A (en) Interactive processor and method, and robot apparatus
JP4706893B2 (en) Voice recognition apparatus and method, program, and recording medium
JP2001212780A (en) Behavior controller, behavior control method, and recording medium
JP2004286805A (en) Method, apparatus, and program for identifying speaker
JP2005202075A (en) Speech communication control system and its method and robot apparatus
JP2001154693A (en) Robot controller and robot control method and recording medium
JP4210897B2 (en) Sound source direction judging apparatus and sound source direction judging method
JP2007241304A (en) Device and method for recognizing voice, and program and recording medium therefor

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060606