説明

ロボット遠隔操作システム

【構成】ロボット遠隔操作システム10は、中央制御装置14を含み、この中央制御装置14は、ロボット12からの呼出要求があると、ロボット12の対話相手から言語および文化を特定するときに、IDLE状態のオペレータを選択する。選択されたオペレータは、操作端末16によってロボット12を遠隔操作する制御コマンドを中央制御装置14に送信する。中央制御装置14は、制御コマンドを受信すると、制御コマンドに含まれる動作コマンドを対話相手の文化に対応する動作に変換し、発話コマンドを対話相手の使う言語に翻訳して、ロボット12に送信する。すると、ロボット12は、対話相手の文化に併せてコミュニケーション行動を行う。
【効果】対話相手の文化に併せてロボット12がコミュニケーション行動を行うため、対話相手の文化によらず、オペレータが適切に対応することができる。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、ロボット遠隔操作システムに関し、特にたとえば複数の国の人々とのコミュニケーションを行うロボットを遠隔操作するための、ロボット遠隔操作システムに関する。
【背景技術】
【0002】
この種の従来のロボット遠隔操作システムの一例が、特許文献1に開示されている。この特許文献1のコミュニケーションロボットは、ネットワークを介して接続されたコミュニケーションロボットおよびオペレータ端末を含む。オペレータ端末は、オペレータによって操作される。コミュニケーションロボットは、人間とコミュニケーション可能な自律型ロボットであり、自律制御だけでは対応が困難な状況などになったときに、呼出要求をオペレータ端末に送信する。これに応じて、オペレータは、オペレータ端末を操作して、コミュニケーションロボットに制御コマンドを送信する。そして、オペレータを呼び出したコミュニケーションロボットは、そのオペレータ端末からの制御コマンドに従うコミュニケーション行動を実行する。
【特許文献1】特開2007−190641号公報[B25J 13/00, B25J 5/00, A63H 3/33]
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかし、特許文献1に示す背景技術では、様々な国から人々が訪れる会場にコミュニケーションロボットが設置される場合には、様々な国の人々に対応するために、オペレータが複数の言語や文化に対応できるような高い能力を有していることが要求される。このような能力をオペレータに要求するのは酷であり、現実的ではないと考えられる。
【0004】
それゆえに、この発明の主たる目的は、新規な、ロボット遠隔操作システムを提供することである。
【0005】
この発明の他の目的は、ロボットのコミュニケーションの相手の言語や文化によらず、オペレータが適切に対応することができる、ロボット遠隔操作システムを提供することである。
【課題を解決するための手段】
【0006】
この発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、この発明の理解を助けるために記述する実施形態との対応関係を示したものであって、この発明を何ら限定するものではない。
【0007】
第1の発明は、遠隔操作または自律制御により、人間との間で身体動作および音声の少なくとも一方によるコミュニケーション行動を行うロボットと、ネットワークを介してロボットの遠隔操作を行う複数の操作端末と、ネットワークを介してロボットと複数の操作端末のうち1台との仲介を行う中央制御装置とを備える、ロボット遠隔操作システムである。ロボットは、人間の個人情報を取得する個人情報取得手段、個人情報取得手段によって取得された個人情報を中央制御装置に送信する個人情報送信手段、中央制御装置からの第1遠隔操作情報を受信する第1遠隔操作情報受信手段、および第1遠隔操作情報受信手段によって受信した第1遠隔操作情報に基づくコミュニケーション行動を実行する実行手段を備える。
【0008】
操作端末は、ロボットを遠隔操作するための第2遠隔操作情報を中央制御装置に送信する第2遠隔操作送信手段を備える。中央制御装置は、操作端末の操作者のコミュニケーション情報を記憶する記憶媒体、個人情報送信手段によって送信された個人情報を受信する個人情報受信手段、個人情報受信手段によって受信された個人情報からコミュニケーション情報を特定するコミュニケーション情報特定手段、第2遠隔操作送信手段によって送信された第2遠隔操作情報を受信する第2遠隔操作情報受信手段、コミュニケーション情報特定手段によって特定されたコミュニケーション情報と記憶媒体によって記憶された操作端末の操作者のコミュニケーション情報とが一致するか否かを判断する判断手段、判断手段によって判断された判断結果が一致しないときに、第2遠隔操作情報受信手段によって受信された第2遠隔操作情報をコミュニケーション情報特定手段によって特定されたコミュニケーション情報に基づいて第1遠隔操作情報に変換する変換手段、および変換手段によって変換された第1遠隔操作情報をロボットに送信する第1遠隔操作情報送信手段を備える。
【0009】
第1の発明では、ロボット遠隔操作システム(10)は、遠隔操作または自律制御により、人間との間で身体動作および音声の少なくとも一方によるコミュニケーション行動を行うロボット(12)と、ネットワークを介してロボットの遠隔操作を行う複数の操作端末(16)と、ネットワークを介してロボットと複数の操作端末のうち1台との仲介を行う中央制御装置(14)とを備える。
【0010】
ロボットの個人情報取得手段(66、80、116、S305)は、人間の個人情報を取得する。個人情報送信手段(80、112、114、S305)は、個人情報取得手段によって取得された個人情報を中央制御装置に送信する。第1遠隔操作情報受信手段(80、112、114、S313)は、中央制御装置からの第1遠隔操作情報を受信する。実行手段(80、S317)は、第1遠隔操作情報受信手段によって受信した第1遠隔操作情報に基づくコミュニケーション行動を実行する。
【0011】
操作端末の第2遠隔操作送信手段(160、S413)は、ロボットを遠隔操作するための第2遠隔操作情報を中央制御装置に送信する。中央制御装置の記憶媒体(138)は、操作端末の操作者のコミュニケーション情報を記憶する。個人情報受信手段(130、148、150、S5)は、個人情報送信手段によって送信された個人情報を受信する。コミュニケーション情報特定手段(130、S37、S53、S55、S71、S73)は、個人情報受信手段によって受信された個人情報からコミュニケーション情報を特定する。第2遠隔操作情報受信手段(130、S11、S91、S99)は、第2遠隔操作送信手段によって送信された第2遠隔操作情報を受信する。判断手段(130、S61−S65)は、コミュニケーション情報特定手段によって特定されたコミュニケーション情報と記憶媒体によって記憶された操作端末の操作者のコミュニケーション情報とが一致するか否かを判断する。変換手段(130、S103、S105、S129、S159)は、判断手段によって判断された判断結果が一致しないときに、第2遠隔操作情報受信手段によって受信された第2遠隔操作情報をコミュニケーション情報特定手段によって特定されたコミュニケーション情報に基づいて第1遠隔操作情報に変換する。第1遠隔操作情報送信手段(130、S107)は、変換手段によって変換された第1遠隔操作情報をロボットに送信する。
【0012】
たとえば、人間は、ロボットとコミュニケーションを行う対話相手である。そして、対話相手がアメリカ人であれば、操作端末の操作者(オペレータ)がアメリカ人でなくても、ロボットは、アメリカ人が行う身体動作を交えて、英語で発話する。なお、判断手段によって判断された判断結果が一致するときは、第2遠隔操作情報を第1遠隔操作情報として、ロボットに送信する。
【0013】
第1の発明によれば、ロボットは、相手の文化で行われる身体動作を交えて、対話相手の文化の言語を発話するため、対話相手の言語や文化によらず、オペレータが適切に対応することができる。
【0014】
第2の発明は、第1の発明に従属し、コミュニケーション情報は、言語情報を含む。コミュニケーション情報特定手段は、個人情報受信手段によって受信された個人情報から言語情報を特定する言語情報特定手段を含む。判断手段は、言語情報特定手段によって特定された言語情報と記憶媒体によって記憶された操作端末の操作者の言語情報とが一致するか否かを判断する。変換手段は、判断手段によって判断された判断結果が一致しないときに、第2遠隔操作情報に含まれる発話の情報を言語特定手段によって特定された言語情報に基づいて翻訳する翻訳手段を含む。
【0015】
第2の発明では、コミュニケーション情報は、言語情報を含む。言語情報特定手段(130、S37、S53、S55)は、個人情報受信手段によって受信された個人情報から言語情報を特定する。また、判断手段は、言語情報特定手段によって特定された言語情報と記憶媒体によって記憶された操作端末の操作者の言語情報とが一致するか否かを判断する。翻訳手段(130、S103、S129)は、判断手段によって判断された判断結果が一致しないときに、第2遠隔操作情報に含まれる発話の情報を言語特定手段によって特定された言語情報に基づいて翻訳する。
【0016】
たとえば、特定される言語情報は日本語や英語である。また、言語情報特定手段は、対話相手の使用言語を特定する。そして、翻訳手段は、比較手段による比較結果が一致しなければ、ロボットが発話する言語を、対話相手の使用言語に翻訳する。つまり、操作端末を操作する操作者が、対話相手の使用言語を理解できなくても、ロボットから発話される言語は、対話相手の使用言語に翻訳される。
【0017】
第2の発明によれば、ロボットを遠隔操作する操作者が、対話相手の言語を理解できなくても、ロボットに適切なコミュニケーション行動を行わせることができる。
【0018】
第3の発明は、第1の発明または第2の発明に従属し、コミュニケーション情報は、身体動作の種類の情報を含む。コミュニケーション情報特定手段は、個人情報受信手段によって受信された個人情報から身体動作の種類の情報を特定する身体動作種類情報特定手段を含む。比較手段は、身体動作種類情報特定手段によって特定された身体動作の種類の情報と記憶媒体によって記憶された操作端末の操作者の身体動作の種類の情報とが一致するか否かを判断する。変換手段は、判断手段によって判断された判断結果が一致しないときに、第2遠隔操作情報に含まれる動作の情報を身体動作種類情報特定手段によって特定された身体動作の種類の情報に基づいて変換する動作変換手段を含む。
【0019】
第3の発明では、コミュニケーション情報は、身体動作の種類の情報を含む。身体動作種類情報特定手段(130、S71、S73)は、個人情報受信手段によって受信された個人情報から身体動作の種類の情報を特定する。また、比較手段は、身体動作種類情報特定手段によって特定された身体動作の種類の情報と記憶媒体によって記憶された操作端末の操作者の身体動作の種類の情報とが一致するか否かを判断する。動作変換手段(130、S105、S159)は、判断手段によって判断された判断結果が一致しないときに、第2遠隔操作情報に含まれる動作の情報を身体動作種類情報特定手段によって特定された身体動作の種類の情報に基づいて変換する。
【0020】
たとえば、身体動作の種類は、アメリカ人が行う動作や日本人が行う動作などである。また、身体動作種類決定手段は、対話相手の使用言語に基づいて、対話相手が行う身体動作の種類を決定する。そして、動作変換手段は、ロボットが行う動作を、対話相手が行う動作の種類に変換する。つまり、操作端末の操作者は、対話相手が行う身体動作の種類を知っていなかったとしても、ロボットに対話相手が行う身体動作と同じ種類の動作を行わせることができる。
【0021】
第3の発明によれば、ロボットを遠隔操作する操作者が、対話相手が行う身体動作を知っていなかったとしても、ロボットに対話相手と同じ種類の身体動作を行わせることができるため、対話相手との円滑なコミュニケーションを行うことができる。
【0022】
第4の発明は、第2の発明または第3の発明のいずれかに従属し、個人情報取得手段は、人間の音声を取得する音声取得手段を含む。個人情報送信手段は、さらに音声取得手段によって取得された音声を送信する。個人情報受信手段は、さらに個人情報送信手段によって送信された音声を受信する。言語情報特定手段は、個人情報受信手段によって受信された人間の音声から言語情報を特定する音声言語情報特定手段を含む。
【0023】
第4の発明では、音声取得手段(66、80、S305)は、人間の音声を取得する。個人情報送信手段は、さらに音声取得手段によって取得された音声を送信する。個人情報受信手段は、さらに個人情報送信手段によって送信された音声を受信する。また、音声言語情報特定手段(130、S53、S55)は、個人情報受信手段によって受信された人間の音声から言語情報を特定する。つまり、対話相手の音声が取得され、対話相手の使用言語が特定される。
【0024】
第4の発明によれば、対話相手の音声から、対話相手の使用言語を特定することができる。
【0025】
第5の発明は、第4の発明に従属し、中央制御装置は、音声取得手段によって人間の音声が取得されていないときに、ロボットに発話を指示する要求信号を送信する要求信号送信手段をさらに備える。ロボットは、要求信号送信手段によって送信された要求信号を受信する要求信号受信手段、および要求信号受信手段によって受信された要求信号に応じて音声を出力する音声出力手段をさらに備える。
【0026】
第5の発明では、要求信号送信手段(130、S41)は、音声取得手段によって人間の音声が取得されていないときに、ロボットに発話を指示する要求信号を送信する。要求信号受信手段(80、S307)は、要求信号送信手段によって送信された要求信号を受信する。音声出力手段(80、S309)は、要求信号受信手段によって受信された要求信号に応じて音声を出力する。たとえば、言語情報特定手段によって言語情報が特定できない場合に、対話相手の発話を要求するコミュニケーション行動を実行する。
【0027】
第5の発明によれば、人間の発話を要求することで、中央制御装置は、対話相手の使用言語を特定できるようになる。
【0028】
第6の発明は、第2の発明ないし第5の発明のいずれかに従属し、個人情報取得手段は、人間が携帯する識別情報タグから識別情報を取得する識別情報取得手段を含む。個人情報送信手段は、さらに識別情報取得手段によって取得された識別情報を送信する。個人情報受信手段は、さらに個人情報送信手段によって送信された識別情報を受信する。言語情報特定手段は、個人情報受信手段によって受信された識別情報から少なくとも言語情報を特定する識別言語特定手段を含む。
【0029】
第6の発明では、識別情報取得手段(80、116、S305)は、人間が携帯する識別情報タグ(18)から識別情報を取得する。また、個人情報送信手段は、さらに識別情報取得手段によって取得された識別情報を送信する。個人情報受信手段は、さらに個人情報送信手段によって送信された識別情報を受信する。そして、識別言語情報特定手段(130、S37)は、個人情報受信手段によって受信された識別情報から少なくとも言語情報を特定する。たとえば、識別情報とは、対話相手毎に割り当てられたID番号である。そして、ID番号に基づいて、対話相手の使用言語が特定される。
【0030】
第6の発明によれば、対話相手の識別情報から、対話相手の使用言語を特定することができる。
【0031】
第7の発明は、個人情報取得手段は、人間が携帯する識別情報タグから識別情報を取得する識別情報取得手段を含む。個人情報送信手段は、さらに識別情報取得手段によって取得された識別情報を送信する。個人情報受信手段は、さらに個人情報送信手段によって送信された識別情報を受信する。身体動作種類決定手段は、個人情報受信手段によって受信された識別情報からさらに身体動作の種類の情報を決定する識別情報身体動作種類決定手段を含む。
【0032】
第7の発明では、識別情報取得手段(80、116、S305)は、人間が携帯する識別情報タグ(18)から識別情報を取得する。また、個人情報送信手段は、さらに識別情報取得手段によって取得された識別情報を送信する。個人情報受信手段は、さらに個人情報送信手段によって送信された識別情報を受信する。そして、識別情報身体動作種類決定手段(130、S71)は、個人情報受信手段によって受信された識別情報からさらに身体動作の種類の情報を決定する。つまり、識別情報身体動作種類決定手段は、対話相手のID番号から対話相手が行う身体動作の種類を決定する。
【0033】
第7の発明によれば、対話相手が識別情報タグを携帯していれば、対話相手の識別情報から対話相手が行う身体動作の種類を決定することができる。
【0034】
第8の発明は、第4の発明ないし第7の発明のいずれかに従属し、中央制御装置は、判断手段によって判断された判断結果が一致しないときに、個人情報受信手段によって受信された音声を記憶媒体によって記憶された操作端末の操作者の言語情報に基づいて翻訳する音声翻訳手段、および音声翻訳手段によって翻訳された翻訳結果を操作端末に送信する翻訳結果送信手段をさらに備える。操作端末は、翻訳音声結果送信手段によって送信された翻訳結果を受信する翻訳結果受信手段、および翻訳結果受信手段によって受信された翻訳結果を出力する出力手段をさらに備える。
【0035】
第8の発明では、音声翻訳手段(130、S95)は、判断手段によって判断された判断結果が一致しないときに、個人情報受信手段によって受信された音声を記憶媒体によって記憶された操作端末の操作者の言語情報に基づいて翻訳する。翻訳結果送信手段(130、148、150、S97)は、音声翻訳手段によって翻訳された翻訳結果を操作端末に送信する。翻訳結果受信手段(160、172、174、S407)は、翻訳音声結果送信手段によって送信された翻訳結果を受信する。出力手段(160、176、S409)は、翻訳結果受信手段によって受信された翻訳結果を出力する。
【0036】
たとえば、ロボットが取得した対話相手の音声は、中央制御装置に送信される。そして、中央制御装置では、受信した対話相手の音声が操作端末の操作者の使用言語に翻訳されて、操作端末に送信される。そして、操作端末では、出力手段によって翻訳された対話相手の音声が出力される。
【0037】
第8の発明によれば、オペレータは、ロボットのコミュニケーション相手の言語を容易に理解できるようになり、適切に対応することができるようになる。
【0038】
第9の発明は、遠隔操作または自律制御により、人間との間で身体動作および音声の少なくとも一方によるコミュニケーション行動を行うロボットと、ネットワークを介してロボットの遠隔操作を行う複数の操作端末と、ネットワークを介してロボットと複数の操作端末のうち1台のとの仲介を行う中央制御装置とを備える、ロボット遠隔操作システムである。ロボットは、人間の個人情報を取得する個人情報取得手段、個人情報取得手段によって取得された個人情報を操作端末に送信する個人情報送信手段、操作端末からの第1遠隔操作情報を受信する第1遠隔操作情報受信手段、および第1遠隔操作情報受信手段によって受信した第1遠隔操作情報に基づくコミュニケーション行動を実行する実行手段を備える。
【0039】
操作端末は、操作端末自身の操作者のコミュニケーション情報を記憶する記憶媒体、個人情報送信手段によって送信された個人情報を受信する個人情報受信手段、個人情報受信手段によって受信された個人情報からコミュニケーション情報を特定するコミュニケーション情報特定手段、コミュニケーション情報特定手段によって特定されたコミュニケーション情報と記憶媒体によって記憶された操作端末の操作者のコミュニケーション情報とが一致するか否かを判断する判断手段、判断手段によって判断された判断結果が一致しないときに、ロボットを遠隔操作するための第2遠隔操作情報をコミュニケーション情報特定手段によって特定されたコミュニケーション情報に基づいて第1遠隔操作情報に変換する変換手段、および変換手段によって変換された第1遠隔操作情報をロボットに送信する第1遠隔操作情報送信手段を備える。
【0040】
第9の発明では、ロボット遠隔操作システム(10)は、遠隔操作または自律制御により、人間との間で身体動作および音声の少なくとも一方によるコミュニケーション行動を行うロボット(12)と、ネットワークを介してロボットの遠隔操作を行う複数の操作端末(16)と、ネットワークを介してロボットと複数の操作端末のうち1台のとの仲介を行う中央制御装置(14)とを備える。ロボットの個人情報取得手段(66、80、116、S305)は、人間の個人情報を取得する。個人情報送信手段(80、112、114、S305)は、個人情報取得手段によって取得された個人情報を操作端末に送信する。第1遠隔操作情報受信手段(80、112、114、S313)は、操作端末からの第1遠隔操作情報を受信する。実行手段(80、S317)は、第1遠隔操作情報受信手段によって受信した第1遠隔操作情報に基づくコミュニケーション行動を実行する。
【0041】
操作端末の記憶媒体(138)は、操作端末自身の操作者のコミュニケーション情報を記憶する。個人情報受信手段(160、172、174、S5)は、個人情報送信手段によって送信された個人情報を受信する。コミュニケーション情報特定手段(160、S37、S53、S55、S71、S73)は、個人情報受信手段によって受信された個人情報からコミュニケーション情報を特定する。判断手段(160、S61−S65)は、コミュニケーション情報特定手段によって特定されたコミュニケーション情報と記憶媒体によって記憶された操作端末の操作者のコミュニケーション情報とが一致するか否かを判断する。変換手段(160、S103、S105、S129、S159)は、判断手段によって判断された判断結果が一致しないときに、ロボットを遠隔操作するための第2遠隔操作情報をコミュニケーション情報特定手段によって特定されたコミュニケーション情報に基づいて第1遠隔操作情報に変換する。第1遠隔操作情報送信手段(160、S107)は、変換手段によって変換された第1遠隔操作情報をロボットに送信する。
【0042】
第9の発明によれば、第1の発明と同様に、ロボットは、相手の文化で行われる身体動作を交えて、対話相手の文化の言語を発話するため、対話相手の文化によらず、オペレータが適切に対応することができる。
【0043】
第10の発明は、遠隔操作または自律制御により、人間との間で身体動作および音声の少なくとも一方によるコミュニケーション行動を行うロボットと、ネットワークを介してロボットの遠隔操作を行う複数の操作端末と、ネットワークを介してロボットと複数の操作端末のうち1台との仲介を行う中央制御装置とを備える、ロボット遠隔操作システムである。操作端末は、ロボットを遠隔操作するための第1遠隔操作情報をロボットに送信する第1遠隔操作送信手段を備える。ロボットは、操作端末の操作者のコミュニケーション情報を記憶する記憶媒体、人間の個人情報を取得する個人情報取得手段、個人情報受信手段によって受信された個人情報からコミュニケーション情報を特定するコミュニケーション情報特定手段、操作端末からの第1遠隔操作情報を受信する第1遠隔操作情報受信手段、コミュニケーション情報特定手段によって特定されたコミュニケーション情報と記憶媒体によって記憶された操作端末の操作者のコミュニケーション情報とが一致するか否かを判断する判断手段、判断手段によって判断された判断結果が一致しないときに、第1遠隔操作情報受信手段によって受信された第1遠隔操作情報をコミュニケーション情報特定手段によって特定されたコミュニケーション情報に基づいて第2遠隔操作情報に変換する変換手段、および変換によって変換された第2遠隔操作情報に基づくコミュニケーション行動を実行する実行手段を備える。
【0044】
第10の発明では、ロボット遠隔操作システム(10)は、遠隔操作または自律制御により、人間との間で身体動作および音声の少なくとも一方によるコミュニケーション行動を行うロボット(12)と、ネットワークを介してロボットの遠隔操作を行う複数の操作端末(16)と、ネットワークを介してロボットと複数の操作端末のうち1台との仲介を行う中央制御装置(14)とを備える。操作端末の第1遠隔操作送信手段(160、S413)は、ロボットを遠隔操作するための第1遠隔操作情報をロボットに送信する。ロボットの記憶媒体(138)は、操作端末の操作者のコミュニケーション情報を記憶する。個人情報取得手段(66、80,116、S305)は、人間の個人情報を取得する。コミュニケーション情報特定手段(80、S37、S53、S55、S71、S73)は、個人情報受信手段によって受信された個人情報からコミュニケーション情報を特定する。第1遠隔操作情報受信手段(80、112、114、S313)は、操作端末からの第1遠隔操作情報を受信する。判断手段(80、S61−S65)は、コミュニケーション情報特定手段によって特定されたコミュニケーション情報と記憶媒体によって記憶された操作端末の操作者のコミュニケーション情報とが一致するか否かを判断する。変換手段(80、S103、S105、S129、S159)は、判断手段によって判断された判断結果が一致しないときに、第1遠隔操作情報受信手段によって受信された第1遠隔操作情報をコミュニケーション情報特定手段によって特定されたコミュニケーション情報に基づいて第2遠隔操作情報に変換する。実行手段(80、S317)は、変換手段によって変換された第2遠隔操作情報に基づくコミュニケーション行動を実行する。
【0045】
第10の発明は、第1の発明と同様に、ロボットは、相手の文化で行われる身体動作を交えて、対話相手の文化の言語を発話するため、対話相手の文化によらず、オペレータが適切に対応することができる。
【発明の効果】
【0046】
この発明によれば、ロボットは、相手の文化で行われる身体動作を交えて、対話相手の文化の言語を発話するため、対話相手の文化によらず、オペレータが適切に対応することができる。
【0047】
この発明の上述の目的、その他の目的、特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【発明を実施するための最良の形態】
【0048】
図1を参照して、この実施例のロボット遠隔操作システム10は、ロボット12aおよび12bを含む。このロボット12aおよび12bは、ネットワーク100を介して、中央制御装置14、操作端末16a、16bおよび16cに接続される。以下、ロボット12a,12bを区別する必要がない場合には、ロボット12と呼ぶことにする。同様に、操作端末16a−16cのそれぞれを区別する必要がない場合には、操作端末16と呼ぶことにする。
【0049】
なお、図1には、簡単のため、2台のロボット12a,12bおよびロボット12を遠隔操作する3台の操作端末16a−16cを示してあるが、これによって限定される必要はない。ロボット12は1台でもよく、3台以上であっても構わない。また、操作端末16は、2台以上であれば何台でも構わない。
【0050】
ロボット12は、相互作用指向のロボット(コミュニケーションロボット)であり、主として人間Aのようなコミュニケーションの対象(コミュニケーション対象)との間で、身振り手振りのような身体動作および音声の少なくとも一方を含むコミュニケーション行動を実行する機能を備えている。ロボット12は、一例として、受付ロボットや接客ロボットなどであり、たとえば会社の受付や或るイベント会場などの様々な場所および状況に配置され、通常は自律制御によって、道案内などの役割を果たす。
【0051】
図2を参照して、ロボット12のハードウェアの構成について説明する。また、図2はこの実施例のロボット12の外観を示す正面図である。ロボット12は台車30を含み、台車30の下面にはロボット12を自律移動させる2つの車輪32および1つの従輪34が設けられる。2つの車輪32は車輪モータ36(図3参照)によってそれぞれ独立に駆動され、台車30すなわちロボット12を前後左右の任意方向に動かすことができる。また、従輪34は車輪32を補助する補助輪である。したがって、ロボット12は、配置された空間内を自律制御によって移動可能である。ただし、ロボット12は、或る場所に固定的に配置されても構わない。
【0052】
台車30の上には、円柱形のセンサ取り付けパネル38が設けられ、このセンサ取り付けパネル38には、多数の赤外線距離センサ40が取り付けられる。これらの赤外線距離センサ40は、センサ取り付けパネル38すなわちロボット12の周囲の物体(人間や障害物など)との距離を測定するものである。
【0053】
なお、この実施例では、距離センサとして、赤外線距離センサを用いるようにしてあるが、赤外線距離センサに代えて、超音波距離センサやミリ波レーダなどを用いることもできる。
【0054】
センサ取り付けパネル38の上には、胴体42が直立するように設けられる。また、胴体42の前方中央上部(人の胸に相当する位置)には、上述した赤外線距離センサ40がさらに設けられ、ロボット12の前方の主として人間との距離を計測する。また、胴体42には、その側面側上端部のほぼ中央から伸びる支柱44が設けられ、支柱44の上には、全方位カメラ46が設けられる。全方位カメラ46は、ロボット12の周囲を撮影するものであり、後述する眼カメラ70とは区別される。この全方位カメラ46としては、たとえばCCDやCMOSのような固体撮像素子を用いるカメラを採用することができる。なお、これら赤外線距離センサ40および全方位カメラ46の設置位置は、当該部位に限定されず適宜変更され得る。
【0055】
胴体42の両側面上端部(人の肩に相当する位置)には、それぞれ、肩関節48Rおよび肩関節48Lによって、上腕50Rおよび上腕50Lが設けられる。図示は省略するが、肩関節48Rおよび肩関節48Lは、それぞれ、直交する3軸の自由度を有する。すなわち、肩関節48Rは、直交する3軸のそれぞれの軸廻りにおいて上腕50Rの角度を制御できる。肩関節48Rの或る軸(ヨー軸)は、上腕50Rの長手方向(または軸)に平行な軸であり、他の2軸(ピッチ軸およびロール軸)は、その軸にそれぞれ異なる方向から直交する軸である。同様にして、肩関節48Lは、直交する3軸のそれぞれの軸廻りにおいて上腕50Lの角度を制御できる。肩関節48Lの或る軸(ヨー軸)は、上腕50Lの長手方向(または軸)に平行な軸であり、他の2軸(ピッチ軸およびロール軸)は、その軸にそれぞれ異なる方向から直交する軸である。
【0056】
また、上腕50Rおよび上腕50Lのそれぞれの先端には、肘関節52Rおよび肘関節52Lが設けられる。図示は省略するが、肘関節52Rおよび肘関節52Lは、それぞれ1軸の自由度を有し、この軸(ピッチ軸)の軸回りにおいて前腕54Rおよび前腕54Lの角度を制御できる。
【0057】
前腕54Rおよび前腕54Lのそれぞれの先端には、人の手に相当する球体56Rおよび球体56Lがそれぞれ固定的に設けられる。ただし、指や掌の機能が必要な場合には、人間の手の形をした「手」を用いることも可能である。また、図示は省略するが、台車30の前面、肩関節48Rと肩関節48Lとを含む肩に相当する部位、上腕50R、上腕50L、前腕54R、前腕54L、球体56Rおよび球体56Lには、それぞれ、接触センサ58(図3で包括的に示す)が設けられる。台車30の前面の接触センサ58は、台車30への人間や他の障害物の接触を検知する。したがって、ロボット12は、その自身の移動中に障害物との接触が有ると、それを検知し、直ちに車輪32の駆動を停止してロボット12の移動を急停止させることができる。また、その他の接触センサ58は、当該各部位に触れたかどうかを検知する。なお、接触センサ58の設置位置は、当該部位に限定されず、適宜な位置(人の胸、腹、脇、背中および腰に相当する位置)に設けられてもよい。
【0058】
胴体42の中央上部(人の首に相当する位置)には首関節60が設けられ、さらにその上には頭部62が設けられる。図示は省略するが、首関節60は、3軸の自由度を有し、3軸の各軸廻りに角度制御可能である。或る軸(ヨー軸)はロボット12の真上(鉛直上向き)に向かう軸であり、他の2軸(ピッチ軸、ロール軸)は、それぞれ、それと異なる方向で直交する軸である。
【0059】
頭部62には、人の口に相当する位置に、スピーカ64が設けられる。スピーカ64は、ロボット12が、それの周辺の人間に対して音声ないし音によってコミュニケーションを取るために用いられる。また、人の耳に相当する位置には、マイク66Rおよびマイク66Lが設けられる。以下、右のマイク66Rと左のマイク66Lとをまとめてマイク66ということがある。マイク66は、周囲の音、とりわけコミュニケーションを実行する対象である人間の音声を取り込む。さらに、人の目に相当する位置には、眼球部68Rおよび眼球部68Lが設けられる。眼球部68Rおよび眼球部68Lは、それぞれ眼カメラ70Rおよび眼カメラ70Lを含む。以下、右の眼球部68Rと左の眼球部68Lとをまとめて眼球部68ということがある。また、右の眼カメラ70Rと左の眼カメラ70Lとをまとめて眼カメラ70ということがある。
【0060】
眼カメラ70は、ロボット12に接近した人間の顔や他の部分ないし物体などを撮影して、それに対応する映像信号を取り込む。また、眼カメラ70は、上述した全方位カメラ46と同様のカメラを用いることができる。たとえば、眼カメラ70は、眼球部68内に固定され、眼球部68は、眼球支持部(図示せず)を介して頭部62内の所定位置に取り付けられる。図示は省略するが、眼球支持部は、2軸の自由度を有し、それらの各軸廻りに角度制御可能である。たとえば、この2軸の一方は、頭部62の上に向かう方向の軸(ヨー軸)であり、他方は、一方の軸に直交しかつ頭部62の正面側(顔)が向く方向に直行する方向の軸(ピッチ軸)である。眼球支持部がこの2軸の各軸廻りに回転されることによって、眼球部68ないし眼カメラ70の先端(正面)側が変位され、カメラ軸すなわち視線方向が移動される。なお、上述のスピーカ64、マイク66および眼カメラ70の設置位置は、当該部位に限定されず、適宜な位置に設けられてよい。
【0061】
このように、この実施例のロボット12は、車輪32の独立2軸駆動、肩関節48の3自由度(左右で6自由度)、肘関節52の1自由度(左右で2自由度)、首関節60の3自由度および眼球支持部の2自由度(左右で4自由度)の合計17自由度を有する。
【0062】
図3はロボット12の電気的な構成を示すブロック図である。この図3を参照して、ロボット12は、CPU80を含む。CPU80は、マイクロコンピュータ或いはプロセッサとも呼ばれ、バス82を介して、メモリ84、モータ制御ボード86、センサ入力/出力ボード88および音声入力/出力ボード90に接続される。
【0063】
メモリ84は、図示は省略をするが、ROM,HDDおよびRAMを含む。ROMおよびHDDには、ロボット12の動作を制御するための制御プログラムが予め記憶される。たとえば、各センサの出力(センサ情報)を検知するための検知プログラムや、外部コンピュータ(中央制御装置14および操作端末16など)との間で必要なデータやコマンドを送受信するための通信プログラムなどが記録される。また、RAMは、ワークメモリやバッファメモリとして用いられる。
【0064】
モータ制御ボード86は、たとえばDSPで構成され、各腕や首関節および眼球部などの各軸モータの駆動を制御する。すなわち、モータ制御ボード86は、CPU80からの制御データを受け、右眼球部68Rの2軸のそれぞれの角度を制御する2つのモータ(図3では、まとめて「右眼球モータ92」と示す)の回転角度を制御する。同様にして、モータ制御ボード86は、CPU80からの制御データを受け、左眼球部68Lの2軸のそれぞれの角度を制御する2つのモータ(図3では、まとめて「左眼球モータ94」と示す)の回転角度を制御する。
【0065】
また、モータ制御ボード86は、CPU80からの制御データを受け、肩関節48Rの直交する3軸のそれぞれの角度を制御する3つのモータと肘関節52Rの角度を制御する1つのモータとの計4つのモータ(図3では、まとめて「右腕モータ96」と示す)の回転角度を制御する。同様にして、モータ制御ボード86は、CPU80からの制御データを受け、肩関節48Lの直交する3軸のそれぞれの角度を制御する3つのモータと肘関節52Lの角度を制御する1つのモータとの計4つのモータ(図3では、まとめて「左腕モータ98」と示す)の回転角度を制御する。
【0066】
さらに、モータ制御ボード86は、CPU80からの制御データを受け、首関節60の直交する3軸のそれぞれの角度を制御する3つのモータ(図3では、まとめて「頭部モータ110」と示す)の回転角度を制御する。そして、モータ制御ボード86は、CPU80からの制御データを受け、車輪32を駆動する2つのモータ(図3では、まとめて「車輪モータ36」と示す)の回転角度を制御する。なお、この実施例では、車輪モータ36を除くモータは、制御を簡素化するためにステッピングモータ(すなわち、パルスモータ)を用いる。ただし、車輪モータ36と同様に直流モータを用いるようにしてもよい。また、ロボット12の身体部位を駆動するアクチュエータは、電流を動力源とするモータに限らず適宜変更されてもよい。たとえば、他の実施例では、エアアクチュエータなどが適用されてもよい。
【0067】
センサ入力/出力ボード88は、モータ制御ボード86と同様に、DSPで構成され、各センサからの信号を取り込んでCPU80に与える。すなわち、赤外線距離センサ40のそれぞれからの反射時間に関するデータがこのセンサ入力/出力ボード88を通じてCPU80に入力される。また、全方位カメラ46からの映像信号が、必要に応じてセンサ入力/出力ボード88で所定の処理を施してからCPU80に入力される。眼カメラ70からの映像信号も、同様にして、CPU80に入力される。また、上述した複数の接触センサ58(図3では、まとめて「接触センサ58」と示す)からの信号がセンサ入力/出力ボード88を介してCPU80に与えられる。音声入力/出力ボード90もまた、同様に、DSPで構成され、CPU80から与えられる音声合成データに従った音声または声がスピーカ64から出力される。また、マイク66からの音声入力が、音声入力/出力ボード90を介してCPU80に与えられる。
【0068】
また、CPU80は、バス82を介して通信LANボード112に接続される。通信LANボード112は、たとえばDSPで構成され、CPU80から与えられた送信データを無線通信装置114に与え、無線通信装置114は送信データを、ネットワーク100を介して外部コンピュータ(中央制御装置14および操作端末16)に送信する。また、通信LANボード112は、無線通信装置104を介してデータを受信し、受信したデータをCPU80に与える。たとえば、送信データとしては、ロボット12から中央制御装置14へのオペレータ呼出要求の信号(コマンド)であったりする。
【0069】
さらに、CPU80は、バス82を介して無線タグ読取装置116が接続される。無線タグ読取装置116は、アンテナ(図示せず)を介して、無線タグ18(RFIDタグ)から送信される識別情報の重畳された電波を受信する。そして、無線タグ読取装置116は、受信した電波信号を増幅し、当該電波信号から識別信号を分離し、当該識別情報を復調(デコード)してCPU80に与える。図1によれば無線タグ18は、ロボット12が配置された或る会社の受付などに居る人間(人間A)に装着され、無線タグ読取装置116は、通信可能範囲内の無線タグ18を検出する。なお、無線タグ18は、アクティブ型であってもよいし、無線タグ読取装置116から送信される電波に応じて駆動されるパッシブ型であってもよい。
【0070】
なお、無線タグ18から取得した識別情報および人間(対話相手)の音声は、対話相手の個人情報として中央制御装置14に送信される。
【0071】
図1に戻って、中央制御装置14は、当該ロボット遠隔操作システム10におけるオペレータの呼び出しを制御するコンピュータであり、ロボット12および操作端末16の状態を示す情報を管理する。そして、操作端末16とロボット12とが通信を行う場合には、データ通信の内容を制御する。図4を参照して、中央制御装置14は、CPU130を含む。CPU130は、CPU80と同様にマイクロコンピュータ或いはプロセッサとも呼ばれ、バス132を介して、メモリ134、ロボット情報データベース(DB)136、オペレータ端末情報DB138、対話相手情報DB140、言語・文化DB142、動作決定DB144および翻訳辞書DB146に接続される。
【0072】
メモリ134は、図示は省略をするが、ROM,HDDおよびRAMを含む。ROMおよびHDDには、中央制御装置14の動作を制御するための制御プログラムが予め記憶される。制御プログラムは、たとえば、ロボット12および操作端末16のそれぞれとの間で必要なデータやコマンドを送受信するための通信プログラムおよびロボット12からオペレータの呼び出し要求があったときに適切なオペレータ(操作端末16)を選択するための選択プログラムなどを含む。また、メモリ134のRAMは、ワークメモリやバッファメモリとして用いられる。
【0073】
ロボット情報DB136には、各ロボット12における現在の状態を示すテーブル(ロボット情報テーブル)が記憶される。図5(A)に示すように、ロボット情報テーブルには、ロボット名に対応して、状態、位置および対話相手などの情報が記憶される。ロボット名の欄には、ロボット12の名前(たとえば、R1,R2,…)が記憶される。状態の欄には、該当するロボット12の現在の状態が記憶される。具体的には、「BUSY」または「IDLE」の別が記述される。BUSYは、或る会社の受付などにおいて人間と対話などのコミュニケーション行動を実行している状態などを意味する。また、IDLEは人間と対話などのコミュニケーション行動を実行していない状態、すなわち、空いている状態を意味する。
【0074】
位置の欄には、ロボット名に対応するロボット12の現在位置の情報が記憶される。この実施例では、ロボット12の配置された建物や会場などの場所を示す情報および当該場所においての当該ロボット12が現在存在している位置の座標(ワールド座標系における位置座標)が登録される。
【0075】
対話相手の欄には、ロボット名に対応するロボット12が現在コミュニケーション行動を実行している人間の情報が登録される。具体的には、対話相手の識別情報(対話相手ID)に対応付けて、名前(たとえば、山田太郎)、使用言語(たとえば、日本語)および現在位置(ワールド座標系における位置座標)が登録される。また、ロボット名に対応するロボット12が人間と対話していない場合には、コミュニケーション行動を行う対象が存在しないことを表す「NULL」が登録される。
【0076】
中央制御装置14は、ロボット12または操作端末16との通信によって、当該ロボット12または当該操作端末16の状態を示す情報などを一定時間毎に取得して、ロボット情報テーブルを作成および更新する。
【0077】
オペレータ端末情報DB138には、各オペレータにおける現在の状態やスキルなどが記憶される。図5(B)に示すように、オペレータ端末情報テーブルには、オペレータIDに対応して、名前、状態、所在地および言語などの情報が記憶される。オペレータIDの欄には、操作端末16またはこの操作端末16を操作するオペレータを識別するための識別情報が登録される。この実施例では、オペレータIDは数値で表される。名前の欄には、オペレータIDに対応して操作端末16を操作するオペレータの名前が登録される。状態の欄には、オペレータIDに対応して操作端末16の現在の状態が登録される。具体的には「IDLE」および「BUSY−R1」などが記載される。「IDLE」は、現在ロボット12を遠隔操作せずに、中央制御装置14からの呼び出し待ちの状態(待機の状態)を意味する。「BUSY」は、ロボット12を遠隔操作している状態を意味し、たとえば、「BUSY−R1」と記載されている場合には、ロボット名「R1」のロボット12を遠隔操作している状態であることが分かる。所在地の欄には、オペレータIDに対応して操作端末16が設置されている場所(都道府県または地域など)が登録される。言語の欄には、オペレータIDに対応する操作端末16を操作するオペレータが話すことのできる言語(日本語、英語など)が登録される。
【0078】
中央制御装置14は、ロボット12または操作端末16との通信によって、当該ロボット12または当該操作端末16の状態を示す情報などを一定時間毎に取得して、オペレータ端末情報テーブルを作成および更新する。
【0079】
なお、ロボット情報テーブルには、当該ロボット12のアドレス(IPアドレス)も登録されてもよい。また、図示は省略するが、操作端末16をオペレータが操作していない場合(オフラインの場合)は、「NULL」(すなわち、遠隔操作不能な状態)と登録されてもよい。
【0080】
対話相手情報DB140には、ロボット12がコミュニケーション行動を行う対話相手の情報を示すテーブルが記憶される。図6(A)に示すように、対話相手情報テーブルには、対話相手IDに基づいて、名前、言語および文化などの情報が記憶される。対話相手IDの欄には、ロボット12がコミュニケーション行動を行う対話相手(人間)を識別するための識別情報が記憶される。また、対話相手IDは、オペレータIDと同様に、数値で表される。名前の欄には、対話相手IDで識別される人間の名前が登録される。言語の欄には、対話相手IDで識別される人間が話すことができる言語が登録される。文化の欄には、対話相手IDで識別される人間の文化として、当該人間の出身国の国名が記憶される。たとえば、文化の欄には、Japan,France,USAおよびCanadaなどが記憶される。つまり、Japanは、当該対話相手が日本の出身であることを示す。Franceは、当該対話相手がフランスの出身であることを示す。USAは、当該対話相手がアメリカ合衆国の出身であることを示す。Canadaは、当該対話相手がカナダの出身であることを示す。
【0081】
なお、本実施例では、言語の情報および文化の情報などから構成される情報を「コミュニケーション情報」と呼ぶことにする。
【0082】
言語・文化DB142には、言語と文化との対応関係を示すテーブルが記憶される。図6(B)に示すように、言語・文化テーブルには、言語および文化の情報が記憶される。ここで、文化の欄には、言語の欄に記憶される言語に対応する文化が記憶される。たとえば、言語の欄に日本語が記憶されれば、文化の欄には日本の文化を示すJapanが記憶される。また、言語の欄に英語が記憶されれば、文化の欄にはアメリカ合衆国を示すUSAが記憶される。さらに、言語の欄に中国語が記憶されれば、文化の欄には中国の文化を示すChinaが記憶される。そして、言語の欄にフランス語が記憶されれば、文化の欄にはフランスの文化を示すFranceが記憶される。なお、言語の欄にはロボット12が発話可能な言語が記憶される。
【0083】
動作決定DB144には、操作端末16から動作コマンドが送信されたときに、対話相手の文化に応じて、当該動作コマンドに対応する動作ファイルを決定するためのテーブルが記憶される。本実施例では、図7に示すように、動作ファイル名に対応して、動作および文化が記憶される。動作の欄には、動作ファイル名に対応して、ロボット12が実行する動作コマンドが記憶される。たとえば、動作の欄には、「手招き」の動作や「お辞儀」の動作コマンドが記憶される。文化の欄には、動作ファイル名に対応して、文化が記憶される。たとえば、文化の欄には、「USA」(アメリカ合衆国内)の文化や「Japan」(日本)の文化が記憶される。
【0084】
動作ファイルの欄には、ロボット12に送信する動作コマンドの具体的なファイル名が記憶される。たとえば、「MOVE_temaneki_japan.txt」は、日本人が行う手招きの動作と同じ動作をロボット12が実行するファイルである。また、「MOVE_temaneki_usa.txt」は、アメリカ人が行う手招きの動作と同じ動作をロボット12が実行するファイルである。
【0085】
さらに、「MOVE_ojigi_japan.txt」は、日本人が行うお辞儀の動作と同じ動作をロボット12が実行するファイルである。また、「MOVE_ojigi_usa.txt」は、アメリカ人が行うお辞儀の動作と同じ動作をロボット12が実行するファイルである。
【0086】
このように、中央制御装置14からロボット12に送信される動作コマンドが異なるのは、「手招き」の動作であっても、対話相手の文化によって、それぞれ身振り手振りが異なる場合があるからである。たとえば、日本人が手招きをする場合には、掌が下向きで手招きをするが、アメリカ人が手招きをする場合には、掌を上向きで手招きする。また、日本人が挨拶をする場合には、お辞儀をするが、外国においては、抱きついたり、握手したり、キスをしたりする。
【0087】
また、ロボット12は、中央制御装置14から動作コマンドを示す動作ファイルを受信すると、メモリ84に記憶される、図示しないライブラリィを参照して、動作ファイルと対応する動作を実行する。このライブラリィには、ロボット12が受信する動作ファイル名に対応して、モータ制御ボード86を制御するための命令文(機械語など)が記録されている。
【0088】
たとえば、ロボット12が動作コマンドとして「MOVE_temaneki_usa.txt」の動作ファイルを受信すると、ロボット12のCPU80は、ライブラリィを参照して、「MOVE_temaneki_usa.txt」に対応する命令文に従ってモータ制御ボード86を制御し、ロボット12の右腕モータ96を動作させる。
【0089】
なお、動作ファイル名では、アメリカ合衆国の文化と日本の文化とが識別されるようにしてあるが、ロボット12は受信した動作ファイル名から文化の違いを識別する必要はない。
【0090】
ただし、操作端末16は、動作コマンドだけでなく、動作コマンドと発話コマンドとを含む制御コマンドを中央制御装置14に送信する。先述したとおり、動作コマンドは、「MOVE_…」で始まる動作ファイル名である。また、発話コマンドは、「SAY_…」で始まる発話ファイル名である。たとえば、日本語で「こんにちは」とロボット12に発話させるための発話コマンドの発話ファイル名は、「SAY_jpn_こんにちは.txt」となる。また、「いい天気ですね」とロボット12に発話させるための発話コマンドの発話ファイル名は、「SAY_jpn_いい天気ですね.txt」となる。さらに、「こっちにおいでよ」とロボット12に発話させるための発話コマンドの発話ファイル名は、「SAY_jpn_こっちにおいでよ.txt」となる。そして、「一緒に遊ぼうよ」とロボット12に発話させるための発話コマンドの発話ファイル名は、「SAY_jpn_一緒に遊ぼうよ.txt」となる。
【0091】
図4に戻って、翻訳辞書DB146は、中央制御装置14で、音声データや文字列データなどを翻訳するときに、参照されるDBである。図示は省略するが、この翻訳辞書DB146は、日本語の翻訳辞書、英語の翻訳辞書、中国語の翻訳辞書およびフランス語の翻訳辞書などから構成される。
【0092】
中央制御装置14は、ネットワーク100に有線または無線で接続されている。つまり、ロボット12と同様にして、CPU130は、バス132を介して通信LANボード148に接続される。通信LANボード148は、たとえばDSPで構成され、CPU130から与えられた送信データを無線通信装置150に与え、無線通信装置150は送信データを、ネットワーク100を介して外部コンピュータ(ロボット12および操作端末16)に送信する。
【0093】
また、通信LANボード148は、無線通信装置150を介してデータを受信し、受信したデータをCPU130に与える。たとえば、送信データとしては、中央制御装置14から操作端末16への遠隔操作要求の信号であったり、ロボット12から送信された音声データなどであったりする。受信データとしては、操作端末16から送信されたロボット12への制御コマンドなどであったりする。
【0094】
なお、中央制御装置14のメモリ134ないし図示しないDBには、ロボット12が配置される場所等の地図(マップ)データが記憶され、マップデータをXY座標で表し、これによって、ロボット12の位置を座標で表している。ただし、ロボット12は移動するため、その移動制御量をロボット12から得たり、別途環境センサ(カメラ、赤外線センサなど)を用いてロボット12の位置を監視したりするようにしてもよい。
【0095】
図1に示した操作端末16は、オペレータによってロボット12を遠隔操作するためのコンピュータであり、汎用のコンピュータを用いることができる。図8に示すように、操作端末16は、CPU160を含む、CPU160には、LCDドライバ162、メモリ164、スピーカ166、マイク168、入力装置、170および通信LANボード172が接続される。また、LCDドライバ162にはLCD176が接続される。
【0096】
LCDドライバ162は、LCD176の駆動装置であり、CPU160からの指示に従って、LCD176に画像を表示する。この実施例では、LCD176は、主として、後述するような遠隔操作画面210(図9参照)を表示するために用いられる。メモリ164は、図示は省略をするが、ROM,HDDおよびRAMを含む。ROMおよびHDDには、操作端末16の動作を制御するための制御プログラムが記憶される。制御プログラムは、たとえば、ロボット12および中央制御装置14との間で必要なデータやコマンドを送受信するための通信プログラム、入力装置から入力された操作コマンドを検出する検出プログラムおよび表示装置に画像などを表示するための表示プログラムなどを含む。また、メモリ164のRAMは、ワークメモリやバッファメモリとして用いられる。
【0097】
スピーカ166は、中央制御装置14から送信された音声データをオペレータに対して出力するために用いられる。マイク168は、オペレータの音声を取り込むために用いられる。つまり、スピーカ166は、主として遠隔操作するロボット12のマイク66を通して検出された人間の音声を出力する。さらに、マイク168は、主として、オペレータの音声を検出し、オペレータの音声はロボット12のスピーカ64を通じて出力される。
【0098】
入力装置170は、コンピュータマウス、キーボードおよびタッチパネルなどである。たとえば、オペレータは、LCD176に表示された遠隔操作画面210を見て入力装置を操作することによって、ロボット12を遠隔操作するための遠隔操作コマンドを入力することができる。
【0099】
通信LANボード172は、たとえばDSPで構成され、CPU130から与えられた送信データを無線通信装置174に与え、無線通信装置174は送信データを、ネットワーク100を介して外部コンピュータ(ロボット12および中央制御装置14)に送信する。
【0100】
また、通信LANボード172は、無線通信装置174を介してデータを受信し、受信したデータをCPU160に与える。たとえば、送信データとしては、ロボット12を遠隔操作するための制御コマンドなどであったりする。受信データとしては、中央制御装置14から送信された遠隔操作要求の信号であったり、音声データなどであったりする。
【0101】
図9を参照して、この遠隔操作画面210には、たとえば、ロボットカメラ画像212、ロボット情報214および操作パネル216が表示される。ロボットカメラ画像212には、ロボット12から受信した眼カメラ70の撮影画像が表示される。これによって、オペレータは、ロボット12の眼カメラ70が捕らえている画像、たとえば、対話している人間をリアルタイムで見ることができる。
【0102】
ロボット情報214には、当該ロボット12の情報、状況および対話相手の情報などが表示される。具体的には、当該ロボット12の配置された場所(或る会社の受付やイベント会場など)、名前(もしくは識別情報)、配置された場所の地図および対話している人間の情報が表示される。地図には、ロボット12および対話相手を示すアイコンが各存在位置に対応して表示される。これによって、ロボット12が配置場所のどこに存在しているのか、対話相手がロボット12に対してどこに存在しているのかなどを、オペレータは容易に把握することができる。
【0103】
なお、操作端末16は、地図情報を予め記憶しておいてもよいし、中央制御装置14から当該ロボット12に関する情報とともに受信するようにしてもよい。また、ロボット12および対話相手の位置は、たとえばロボット12から一定時間ごとに操作端末16に送信される。ロボット12は、初期の配置位置および向きを記憶しているので、自分の現在の位置および向きを常に把握し、赤外線距離センサ40の出力情報と自分の位置などから対話相手のおよその位置を推定できる。また、地図には、その場所に存在する対話相手以外の人間を示すアイコンも表示されてよい。この場合には、オペレータはその場所におけるロボット12の状況をさらに詳細に知ることができる。
【0104】
また、ロボット12の配置場所における人間の位置情報は、周囲に設置された天井カメラまたは無線タグ読取装置116などのような環境のセンサを用いて、当該環境のセンサと接続された他のコンピュータで検出してよく、当該他のコンピュータからロボット12に与え、ロボット12から操作端末16に送信されてもよい。または、当該位置情報は上述の他のコンピュータから中央制御装置14を経由して、操作端末16に送信されてもよい。また、環境のセンサによってロボット12の位置なども検出可能であるので、ロボット12は、自分の位置および向きなどの情報も、人間の位置情報などとともに上述の他のコンピュータから取得してもよい。
【0105】
また、対話している人間の情報としては、名前および状態(たとえば、VIPや来客)などが表示される。これによって、オペレータは、ロボット12の対話相手の情報を知ることができる。対話相手の情報は、中央制御装置14から操作端末16に送信される。なお、これらオペレータに提示される情報は一例であり、ロボット情報214には適宜適切な情報が表示される。このようなロボット情報214によって、オペレータは、ロボット12および対話相手の情報ならびに両者の置かれている状況などを容易に把握することができる。
【0106】
さらに、ロボット12と対話相手とがコミュニケーションを行っている場合には、ロボット12から音声情報が送信されて、操作端末16のスピーカ166から当該音声が出力される。したがって、オペレータは、対話相手の言葉を聞くことによって、現在の状況をより容易に把握することができる。
【0107】
そして、対話相手の質問は、ロボット12のマイク66によって取得され、ネットワーク100および中央制御装置14を介してスピーカ166から出力される。オペレータは、対話相手がした質問を聞くと、操作パネル216に対応するコミュニケーション行動や、オペレータ自身の音声などで対話相手の質問に答えることで対応する。つまり、オペレータは、遠隔操作画面210でロボット12の状況を確認しながら、対話相手からの質問の内容を容易に判断することができ、質問に対する回答をロボット12を介して、対話相手に答えることができる。
【0108】
操作パネル216では、オペレータが入力装置を操作することにより、ロボット12の動作を制御するコマンドが入力される。たとえば、図9に示すように、操作パネル216には、移動を指示するためのボタン、動作を指示するためのボタンおよび遠隔操作の終了を指示するためのボタンなどが設けられる。具体的には、「前進」ボタンは、ロボット12を前進させるためのボタンである。オペレータが、「前進」ボタンを選択すると、ロボット12は、たとえば、一定距離だけ前進する。同様に、「後退」ボタンはロボット12を後退させ、「右」ボタンはロボット12を右旋回させ、「左」ボタンはロボット12を左旋回させる。また、「遊ぼう」ボタンは、ロボット12に「遊ぼう」の制御コマンドを送信し、対話相手を遊びに誘うコミュニケーション行動を実行させるためのボタンである。具体的に、遊びに誘うコミュニケーション行動は、ロボット12が「こっちにおいでよ」と発話し、手招きの動作を行った後に、「一緒に遊ぼうよ」と発話する。
【0109】
「挨拶」のボタンは、ロボットに「挨拶」の制御コマンドを送信し、対話相手に挨拶をするコミュニケーション行動を行わせるためのボタンである。具体的に、挨拶をするコミュニケーション行動は、ロボット12が「こんにちは」と発話し、お辞儀の動作を行った後に、「いい天気ですね」と発話する。なお、手招きおよびお辞儀の動作は、先述したとおり、対話相手の文化によって実行する動作ファイル異なる。また、「挨拶」のボタンは、ロット12が「おはよう」と発話する「挨拶(朝)」のボタンと、ロボット12が「こんばんは」と発話する「挨拶(夕)」のボタンとを備えるようにしてもよい。
【0110】
「右指差し」のボタンは、ロボット12に右指差しという動作を実行させためのボタンである。具体的には、オペレータが「右指差し」のボタンを選択すると、ロボット12は、右肩関節48Rおよび右肘関節52Rを制御して腕を前方に上げる。同様にして、操作パネル216に表示された他のボタンをオペレータが選択することにより、ロボット12に、うなずき、左指差しなどの動作を実行させることができる。また、「終了」ボタンは、遠隔操作によるコミュニケーション行動を終了させるためのボタンである。オペレータが「終了」ボタンを選択すると、ロボット12は遠隔操作モードから自律制御モードに移行する。
【0111】
ここで、制御コマンドについて説明する。制御コマンドは、動作コマンドおよび発話コマンドの少なくとも一方から構成される。たとえば、「挨拶」の制御コマンドは、発話コマンド「こんにちは」、動作コマンド「お辞儀」および発話コマンド「いい天気ですね」の順番で実行されるように、3つのコマンドから構成される。また、「遊ぼう」の制御コマンドは、発話コマンド「こっちにおいでよ」、動作コマンド「手招き」および発話コマンド「一緒に遊ぼうよ」の順番で実行されるように、3つのコマンドから構成される。さらに、制御コマンドに含まれる発話コマンドは、オペレータが入力した音声と置き換えて、制御コマンドとすることができる。たとえば、「挨拶」の制御コマンドにおいて、オペレータがマイク168に「何か御用はありますか」と音声を入力し、発話コマンド「いい天気ですね」と置き換えると、「挨拶」の制御コマンドは、発話コマンド「こんにちは」、動作コマンド「お辞儀」および発話コマンド「何か御用はありますか」の順番で実行されるように、3つのコマンドから構成されるようになる。
【0112】
ロボット12は、自律制御だけでは対応することが難しい事態や人間によってより細やかな対応(コミュニケーション等)が必要な事態になると、オペレータを呼び出す。具体的には、ロボット12は、オペレータの呼出要求(遠隔操作の依頼)を、ネットワーク100を介して中央制御装置14に送信する。中央制御装置14は、ロボット12からの呼出要求を受けて、対応(遠隔操作)可能なオペレータが操作する操作端末16を選択する。そして、中央制御装置14は、選択された操作端末16に、ロボット12の通信情報(IPアドレス)を通知する。すると、操作端末16のオペレータの操作により、ロボット12と操作端末16とがネットワーク100および中央制御装置14を介して通信可能に接続される。つまり、中央制御装置14は、ロボット12と操作端末16とを仲介する。その後、オペレータが操作端末16を用いてロボット12を遠隔操作する。たとえば、オペレータが操作端末16を用いて入力および送信した制御コマンドは、中央制御装置14で中継され、ロボット12に受信される。そして、ロボット12は、その受信した制御コマンドに従って動作(コミュニケーション行動)を実行する。
【0113】
ここで、ロボット12には、図示は省略するが、オペレータを呼び出すための条件(オペレータ呼出条件)が予めメモリ84に記憶されている。ロボット12は、オペレータ呼出条件を満足すると判定した場合に、オペレータを呼び出す。つまり、ロボット12は、中央制御装置14にオペレータの呼出要求を送信する。
【0114】
中央制御装置14は、オペレータの呼出要求を受信すると、対話相手が同定できていれば、対話相手情報テーブルを参照して、対話相手IDに対応して、対話相手のコミュニケーション情報を特定する。一方、対話相手が同定できていなければ、対話相手の音声から対話相手の言語を特定し、言語・文化テーブル(図6(B)参照)を参照して、特定された対話相手の言語から、言語の欄に対応する文化を特定する。また、中央制御装置14は、オペレータ端末情報テーブルを参照して、IDLE状態のオペレータを選択し、IDLE状態のオペレータIDに対応して、オペレータの言語を特定する。
【0115】
そして、対話相手とオペレータとの言語が異なる場合に、ロボット12から操作端末16に対して対話相手の音声が送信されると、中央制御装置14は、翻訳処理を実行することで、対話相手の音声をオペレータの言語に翻訳し、選択されたオペレータが使用する操作端末16に送信する。また、選択されたオペレータが使用する操作端末16からロボット12に対して制御コマンドが送信されると、中央制御装置14は、発話コマンドを翻訳処理によって対話相手の言語に翻訳し、動作コマンドは対話相手に対応する文化の動作に変換して、ロボット12に送信する。
【0116】
また、対話相手とオペレータとの言語が一致する場合には、ロボット12から操作端末16に対して対話相手の音声が送信されると、中央制御装置14は、翻訳処理を実行せずに、受信した音声をそのまま、選択されたオペレータが使用する操作端末16に送信する。そして、選択されたオペレータが使用する操作端末16からロボット12に対して制御コマンドが送信されると、中央制御装置14は、受信した制御コマンドをそのままロボット12に送信する。
【0117】
これによって、ロボット12は、対話相手の言語および文化に併せてコミュニケーション行動を行うことができる。
【0118】
図10は、図4に示した中央制御装置14のメモリ134のメモリマップ300の一例を示す図解図である。図10に示すように、メモリ134は、プログラム記憶領域302およびデータ記憶領域304を含む。プログラム記憶領域302には、通信プログラム310、全体制御プログラム312および翻訳処理プログラム314などが記憶される。ただし、全体制御プログラム312は、オペレータ選択プログラム312aおよび通信内容制御プログラム312bを含む。
【0119】
通信プログラム310は、ロボット12や操作端末16との通信を行うためのプログラムである。全体制御プログラム312は、図5(A),(B)に示したロボット情報テーブルとオペレータ端末情報テーブルとに記憶される情報を一定時間毎に更新し、ロボット12からオペレータの呼び出しに応じてオペレータを選択し、当該ロボット12と選択したオペレータが使用する操作端末16との通信内容を制御するためのプログラムである。ただし、オペレータ選択プログラム312aは、ロボット12からのオペレータの呼び出しに応じて、オペレータを呼び出すプログラムである。通信内容制御プログラム312bは、オペレータを呼び出したロボット12とオペレータが使用する操作端末16との通信が行われる場合に、ロボット12から操作端末16に対する通信および操作端末16からロボット12に対する通信の各々の通信内容を制御するプログラムである。
【0120】
翻訳処理プログラム314は、対話相手の音声を翻訳するときに実行されるプログラムであり、たとえば、日本語から英語に翻訳する翻訳処理が実行される場合に、中央制御装置14のCPU130は、翻訳辞書DB146を参照して日本語と英語との言語情報を読み出し、日本語の文字列を英語の文字列に翻訳する。
【0121】
また、データ記憶領域304には、対話相手言語データ330、オペレータ言語データ332および文化データ334が記憶されるとともに、翻訳フラグ336などが設けられる。対話相手言語データ330は、対話相手の使用言語を示すデータである。オペレータ言語データ332は、オペレータの使用言語を示すデータである。文化データ334は、ロボット12とコミュニケーション行動を行う対話相手の文化を示す情報である。具体的には、対話相手に対応する文化を特定し、その特定された文化の情報が文化データ334として、データ記憶領域304に記憶される。
【0122】
翻訳フラグ336は、対話相手の使用言語とオペレータの使用言語とが一致するか否かを判断するためのフラグである。たとえば、翻訳フラグ336は、1ビットのレジスタで構成される。翻訳フラグ336が成立(オン)されると、レジスタにはデータ値「1」が設定され、翻訳フラグ336が不成立(オフ)されると、レジスタにはデータ値「0」が設定される。
【0123】
具体的には、中央制御装置14のCPU130は、図11−図16に示す処理を含む、複数の処理を並行的に実行する。また、ロボット12のCPU80は、図17および図18に示す処理を含む、複数の処理を並行的に実行する。
【0124】
図11に示すように、中央制御装置14のCPU130は、全体処理を開始すると、ステップS1で、各操作端末16の状態を取得し、テーブルを更新する。つまり、このステップS1では、ネットワーク100に接続される各操作端末16から、その位置、オペレータの情報および現在の状況などを含む情報を取得し、図5(B)に示したオペレータ端末情報テーブルを更新する。次のステップS3では、各ロボット12の状態を取得し、テーブルを更新する。つまり、このステップS3では、各ロボット12の位置、現在の動作状態および対話相手の情報などを含む情報を取得し、図5(A)に示したロボット情報テーブルを更新する。
【0125】
続いて、ステップS5では、ロボット12からの呼び出しがあるか否かを判断する。つまり、或るロボット12からのオペレータの呼び出し要求を受信したか否かを判断する。ステップS5で“NO”であれば、ステップS15に進む。一方、ステップS5で“YES”であれば、つまりロボット12からの呼び出しがあれば、ステップS7で、後述するオペレータ選択処理(図12、図13参照)を行う。次のステップS9では、操作端末16とロボット12との通信が行われたか否かを判断する。たとえば、ロボット12から選択されたオペレータが使用する操作端末16に対して通信が行われるか、当該操作端末16からロボット12に対して通信が行われたか否かを判断する。
【0126】
ステップS9で“YES”であれば、つまり操作端末16とロボット12との通信が行われれば、ステップS11で、後述する通信内容制御処理(図14参照)を行い、ステップS13に進む。また、ステップS9で“NO”であれば、つまり操作端末16とロボット12との通信が行われていなければ、そのままステップS13に進む。
【0127】
ステップS13では、遠隔操作の終了要求があるか否かを判断する。ステップS13で“NO”であれば、つまり遠隔操作の終了要求が無ければ、ステップS9に戻る。一方、ステップS13で“YES”であれば、つまり遠隔操作の終了要求があれば、ステップS15に進む。
【0128】
ステップS15では、全体処理を終了するか否かを判断する。ここでは、たとえば、ロボット遠隔操作システム10の使用者ないし中央制御装置14の管理者から終了指示が与えられたかどうかを判断する。ステップS15で“YES”であれば、つまり終了指示があれば、そのまま全体処理を終了する。一方、ステップS15で“NO”であれば、つまり終了指示がなければ、ステップS1に戻る。このように、中央制御装置14では、オペレータ操作端末テーブルの更新、ロボット情報テーブルの更新および呼び出し要求の有無の判断が一定時間毎に繰り返し実行される。
【0129】
図12および図13は、図11に示したステップS7のオペレータ選択処理のフロー図である。図12に示すように、中央制御装置14のCPU130は、オペレータ選択処理を開始すると、ステップS31で、変数を初期化する。具体的には、変数jpnおよび変数engのそれぞれに0が設定される。ここで、変数jpnはロボット12が対話している人間の音声から日本語らしさ演算の演算結果を格納し、変数engはロボット12が対話している人間の音声から英語らしさ演算の演算結果を格納するための変数である。なお、日本語らしさ演算と英語らしさ演算とについては、ステップS43、S47で詳しく説明する。
【0130】
続いて、ステップS33では、対話相手の同定ができているか否かを判断する。つまり、ロボット12がコミュニケーションを行う対話相手の名前、年代および性別などの情報が分かるか否かを判断する。上述したように、ロボット12は、対話相手が所持する無線タグ18から送信されるタグIDを受信し、これを中央制御装置14に送信する。中央制御装置14のCPU130は、対話相手情報DB140を参照して、タグIDに対応する、対話相手の名前、年代および性別などの情報を取得する。
【0131】
ステップS33で“YES”であれば、つまり対話相手の同定ができていれば、ステップS35で、対話相手の使用言語を特定済みか否かを判断する。つまり、対話相手情報DB140を参照して、対話相手情報テーブルに対話相手が話す言語の情報が記憶されているか否かを判断する。ステップS35で“NO”であれば、つまり対話相手の主な使用言語を特定済みでなければ、ステップS39に進む。一方、ステップS35で“YES”であれば、つまり対話相手の主な使用言語を特定済みであれば、ステップS37で対話相手言語データ330を対話相手情報DB140から読み込み、図13に示すステップS57に進む。つまり、このステップS37では、対話相手の同定された対話相手の名前(対話相手ID)に対応する言語の種類のデータを対話相手言語データ330としてメモリ134に記憶する。
【0132】
また、ステップS33で“NO”であれば、つまり対話相手の同定ができていなければ、ステップS39で、ロボット12に音声入力が有ったか否かを判断する。つまり、中央制御装置14のCPU130は、対話相手の音声がロボット12で検出され、検出された音声に対応する音声信号がロボット12から送信され、その音声信号を受信したか否かを判断する。
【0133】
ステップS39で“NO”であれば、つまりロボット12に音声入力が無ければ、ステップS41で、ロボット12に音声の出力を指示して、ステップS39に戻る。ステップS41では、たとえば、「何か御用でしょうか?」などのように、対話相手に発話させるような音声をロボット12から出力させるためのコマンドがロボット12に送信される。このようにして、中央制御装置14のCPU130は、対話相手の質問(要求)を聞き出して、対話相手の言語を特定する。
【0134】
一方、ステップS39で“YES”であれば、つまりロボット12に音声入力が有れば、ステップS43で、日本語らしさ演算を行う。ここで、日本語らしさ演算とは、ロボット12の対話相手の言語がどれだけ日本語に近いかの割合を求める演算である。具体的には、中央制御装置14のCPU130は、受信した音声信号を、日本語用辞書を用いてDPマッチング法やHMM(隠れマルコフモデル)法により音声認識し、認識結果とそのスコア(近似度ないし正確さを示す割合)とを得る。次のステップS45では、演算結果を変数jpnに格納する。ここでは、上述のようにして演算した結果のうち、スコアを日本語らしさとして変数jpnに格納する。
【0135】
続くステップS47では、英語らしさ演算を行う。ここでは、中央制御装置14のCPU130は、英語用辞書を用いて、ステップS43と同じように音声認識し、認識結果とそのスコアとを得る。そして、ステップS49で、演算結果(スコア)を英語らしさとして変数engに格納する。
【0136】
次のステップS51では、変数jpnが変数engよりも大きいか否かを判断する。つまり、ここでは、中央制御装置14のCPU130は、ロボット12の対話相手の言語が日本語または英語のどちらに近いのかを判断する。ステップS51で“YES”であれば、つまり変数jpnが変数engよりも大きければ、ロボット12の対話相手の言語が英語よりも日本語に近いと判断し、ステップS53で「日本語」を対話相手言語データ330として記憶し、ステップS57に進む。つまり、対話相手の使用言語が日本語であると特定する。一方、ステップS51で“NO”であれば、つまり変数jpnが変数eng以下であれば、ロボット12の対話相手の言語が日本語よりも英語に近いと判断し、ステップS55で「英語」を言語データ330として記憶して、ステップS57に進む。
【0137】
図13に示すステップS57では、IDLE状態のオペレータを選択する。つまり、オペレータ端末情報テーブル(図5(B)参照)の状態の欄において、IDLEが記憶されているオペレータを選択する。なお、IDLEが記憶されるオペレータが複数人居る場合は、オペレータIDが最も小さいオペレータが選択されてもよいし、オペレータIDが最も大きいオペレータが選択されてもよいし、任意に選択されてもよい。
【0138】
次のステップS59では、オペレータ言語データ332をオペレータが使う言語の情報に基づいて記憶する。このステップS59では、オペレータ端末情報DB138のオペレータ端末情報テーブルを参照して、選択されたオペレータに対応する言語の欄に記憶される言語の種類のデータをオペレータ言語データ332としてメモリ134に記憶する。
【0139】
なお、オペレータが複数の言語に対応できる場合、つまりオペレータ端末テーブルの言語の欄において、2つ以上の言語が記憶されている場合には、それら全ての言語の種類についてのデータがオペレータ言語データ332としてメモリ134に記憶される。
【0140】
続いて、ステップS61では、対話相手言語データ330とオペレータ言語データ332とが一致するか否かを判断する。つまり、対話相手の使用言語とオペレータの使用言語とが一致するか否かを判断する。ただし、オペレータが複数の言語を使用する場合には、その複数の言語に対話相手の言語が含まれているか否かを判断する。
【0141】
ステップS61で“YES”であれば、つまり言語データ330とオペレータ言語データ332とが一致すれば、ステップS63で、翻訳フラグ336をオフに設定する。一方、ステップS61で“NO”であれば、つまり言語データ330とオペレータ言語データ332とが一致しなければ、ステップS65で、翻訳フラグ336をオンに設定し、ステップS67で、対話相手の同定ができているか否かを判断する。
【0142】
ステップS67で“YES”であれば、つまり対話相手の同定ができていれば、ステップS69で、対話相手の文化を特定済みか否かを判断する。つまり、ステップS69では、対話相手情報DB140の対話相手情報テーブルを参照して、対話相手に対応して文化の情報が記憶されているか否かを判断する。ステップS69で“NO”であれば、つまり対話相手の文化を特定済みでなければ、ステップS73に進む。一方、ステップS69で“YES”であれば、つまり対話相手の文化を特定済みであれば、ステップS71で、対話相手情報DB140に基づいて文化データ334を記憶する。つまり、このステップS71では、対話相手の同定された対話相手の名前(対話相手ID)に対応する文化の情報(識別するデータ)を文化データ334としてメモリ134に記憶する。
【0143】
ここで、ステップS67で“NO”であれば、つまり対話相手の同定が出来ていなければ、ステップS73で、対話相手言語データ330と言語・文化DB142とに基づいて文化データ334を記憶する。たとえば、このステップS73では、対話相手言語データ330が英語を示していれば、言語・文化テーブルでは、文化はUSA、つまりアメリカ合衆国の文化であることを示しているため、
つまり、このステップS71では、USAを文化データ334としてメモリ134に記憶する。
【0144】
そして、ステップS75では、選択したオペレータが使用する操作端末16をロボット12に紹介し、図11に示した全体処理にリターンする。たとえば、中央制御装置14のCPU130は、ロボット12に対して、選択されたオペレータが使用する操作端末16の接続情報(IPアドレス)を送信する。併せて、選択されたオペレータが使用する操作端末16に、ロボット12の遠隔操作依頼と、呼び出し要求を送信したロボット12の接続情報(IPアドレス)を送信する。
【0145】
なお、図示は省略するが、ステップS75では、オペレータ端末情報テーブルにおいて、選択されたオペレータが使用する操作端末16の状態が「IDLE」から「BUSY−Rm」に更新される。ただし、mは自然数(0,1,2,…m)であり、「Rm」は、ロボット名ないしロボット12の識別情報である。これによって、オペレータがロボットRmを遠隔操作していることが分かる
図14は、図11に示したステップS11の通信内容制御処理を示すフロー図である。図14に示すように、中央制御装置14のCPU130は、通信内容制御処理を開始すると、ステップS91で、ロボット12から音声データを受信したか否かを判断する。たとえば、ロボット12は、対話相手から話しかけられると、マイク66によって対話相手の声を検出し、対応する音声データを取得して、その取得した音声データを中央制御装置14に送信する。したがって、ステップS91の処理では、ロボット12の対話相手の音声に対応する音声データを受信したか否かを判断するのである。ステップS91で“NO”であれば、つまりロボット12から音声データを受信していなければ、そのままステップS99に進む。一方、ステップS91で“YES”であれば、つまりロボット12から音声データを受信すれば、翻訳フラグ336がオフか否かを判断する。ステップS93で“YES”であれば、つまり対話相手の使用言語と、オペレータの使用言語とが一致すれば、ステップS99に進む。一方、ステップS93で“NO”であれば、つまり翻訳フラグ336がオンであれば、ステップS95で、オペレータ言語データ332に基づいて音声データを翻訳する。つまり、対話相手からの質問内容を、選択されたオペレータの使用言語に翻訳する。
【0146】
具体的には、翻訳辞書DB146から対話相手言語データ330が示す言語の辞書を読み出し、その読み出した辞書を用いてDPマッチング法やHMM(隠れマルコフモデル)法により音声認識する。続いて、音声認識された音声データは、周知の形態素解析の処理を施し、文章を構成する各単語が読み出される。そして、CPU130は、翻訳処理を実行し、翻訳辞書DB146から対話相手言語データ330およびオペレータ言語データ332が示すそれぞれの言語の辞書を読み出し、読み出された文章をオペレータ言語データ332が示す言語に翻訳する。また、音声認識機能を含む翻訳機能(翻訳システム)としては、日英双方音声翻訳システム「ATR−MATRIX」を用いることができる。この「ATR−MATRIX」については、「Reaves et al.,"ATR-MATRIX: A Speech Translation System between English and Japanese", 情報処理学会論文集, Vol. 2, pp.87-88, 1999」に詳細に開示されている。
【0147】
次のステップS97では、音声データの翻訳結果を文字列データとして操作端末16に送信して、ステップS99に進む。つまり、このステップS97では、翻訳された音声データの結果を文字列データに置換えて、選択された操作端末16に送信する。一方、操作端末16は、文字列データを受信すると文字列データに対応する字文列をLCD176に表示する。
【0148】
なお、操作端末16は、受信した文字列データを、Text To Speech機能(TTS機能)によって、スピーカ166から出力するようにしてもよい。さらに、翻訳結果は、文字列データでなく合成音声によって音声データとして操作端末16に送信されてもよい。この場合に、操作端末16は受信した音声データを対応すると、音声データに対応する音声をスピーカ166から出力するようにしてもよい。また、TTS機能は、テキストを読み上げる前に、読み上げる言語を事前に特定する必要がある。
【0149】
ここで、TTS機能としては、テキスト音声合成システム「XIMERA」を用いることができる。この「XIMERA」については、「“大規模コーパスを用いた音声合成システム XIMERA”, 電子情報通信学会 論文誌、vol. J89-D, no. 12, pp. 2688-2698 (2006-12).」に詳細に開示されている。
【0150】
ステップS99では、操作端末16から制御コマンドを受信したか否かを判断する。ステップS99で“NO”であれば、つまり操作端末16から制御コマンドを受信していなければ、全体処理にリターンする。一方、ステップS99で“YES”であれば、つまり操作端末16から制御コマンドを受信すれば、ステップS101で、翻訳フラグ336がオフか否かを判断する。ステップS101で“YES”であれば、つまり翻訳フラグ336がオフであれば、そのままステップS105に進む。一方、ステップS101で“NO”であれば、つまり翻訳フラグ336がオンであれば、ステップS103で、後述する発話コマンド翻訳処理(図15参照)を実行し、ステップS105に進む。
【0151】
ステップS105では、後述する動作コマンド変換処理(図16参照)を実行し、ステップS107で制御コマンドをロボット12に送信して、図11に示した全体処理にリターンする。つまり、翻訳フラグ336がオンの状態で、ロボット12から音声データを受信すれば、その音声データを音声認識することで文章を読み出し、オペレータ言語データ332が示す言語に翻訳して、操作端末16に送信する。さらに、操作端末16から制御コマンドを受信すれば、制御コマンドに含まれる発話コマンドの発話内容を、対話相手言語データ330が示す言語に翻訳して、ロボット12に送信する。また、動作コマンドは、翻訳フラグ336の状態に関わらず、文化データ334が示す文化の動作に変換されて、ロボット12へ送信される。
【0152】
なお、動作コマンドの変換は必ずしも行う必要はなく、発話コマンドの翻訳のみが実行されるようにしてもよい。また、発話コマンドの翻訳を行わず、動作コマンドの変換のみを実行するようにしてもよい。
【0153】
図15は、図14に示したステップS103の発話コマンド翻訳処理のフロー図である。図15に示すように、中央制御装置14のCPU130は、発話コマンド翻訳処理を開始すると、ステップS121で、制御コマンドcom[0,1,…,N]を配列comTmp[0,1,…,N]に格納する。つまり、制御コマンドを構成する発話コマンドおよび動作コマンドのそれぞれを、配列comTmp[0,1,…,N]に格納する。また、最大値Nは、制御コマンドに含まれる各コマンドの総数を意味する。
【0154】
次のステップS123では、変数iを初期化する。つまり、変数iに0を格納する。この変数iは、comTmp[0,1,…N]に含まれるコマンドcomTmp[i]を識別するための変数である。次のステップS125では、変数iが最大値Nよりも小さいか否かを判断する。ステップS125で“YES”であれば、つまり変数iが最大値Nよりも小さければ、ステップS127で、comTmp[i]が発話コマンドであるか否かを判断する。つまり、変数iで指定されたコマンドが発話コマンドであるか否かを判断する。
【0155】
このステップS127の処理では、各コマンドに含まれる最初のアンダスコア「_」までの文字列を読み込み、「SAY」の文字列であれば、発話コマンドであると判断し、「MOVE」の文字列であれば、動作コマンドであると判断する。
【0156】
ステップS127で“NO”であれば、つまりcomTmp[i]が発話コマンドでなければ、そのままステップS131に進む。一方、ステップS127で“YES”であれば、つまりcomTmp[i]が発話コマンドであれば、ステップS129で、comTmp[i]の発話内容を対話相手言語データ330が示す言語に翻訳する。ロボット12は、TTS機能を備える。たとえば、発話ファイル名が「SAY_jpn_こんにちは.txt」であれば、comTmp[i]には、「SAY_jpn_こんにちは.txt」が記憶される。そして、発話コマンド「こんにちは」が、対話相手言語データ330に基づいて日本語から英語に翻訳されると、発話ファイル名が「SAY_eng_Hello.txt」の発話コマンドが作成される。
【0157】
また、先述したとおり、TTS機能は、テキストを読み上げる前に読み上げる言語を事前に特定する必要がある。そのため、TTS機能によって発話コマンドを実行する場合に、TTS機能では、発話ファイル名に含まれる、「jpn」や「eng」によって、発話コマンドの言語の種類を特定する。つまり、「jpn」であれば日本語であり、「eng」であれば英語である。たとえば、「SAY_jpn_こんにちは.txt」の発話ファイル名で示される発話コマンドを実行する場合に、TTS機能を実行すると、発話ファイル名に含まれる1番目と2番目のアンダスコアの間に含まれる識別子「jpn」から、読み上げる言語の種類が「日本語」であると特定する。
【0158】
これによって、「挨拶」の制御コマンドにおいて、発話コマンドが日本語から英語に翻訳されると、発話コマンド「こんにちは」が発話コマンド「Hello」となる。また、発話コマンド「いい天気ですね」は、発話コマンド「Nice weather」となる。
【0159】
なお、テキストを翻訳する機能としては、汎用のテキスト翻訳ソフトなどを用いることができる。
【0160】
次のステップS131では、変数iをインクリメント(i=i+1)し、ステップS125に戻る。つまり、変数iが次のコマンドを指定するように、変数iをインクリメントする。
【0161】
また、ステップS125で“NO”であれば、つまり変数iが最大値N以上であれば、ステップS133で、配列comTmp[0,1,…,N]を制御コマンドcom[0,1,…,N]をに上書きし、図13に示す通信内容制御処理にリターンする。つまり、このステップS133では、翻訳される前の発話コマンドを翻訳後の発話コマンドに置き換える。たとえば、発話コマンドが日本語から英語に翻訳される場合に、「挨拶」の制御コマンドの発話コマンド「こんにちは」および発話コマンド「いい天気ですね」のそれぞれは、発話コマンド「Hello」および発話コマンド「Nice weather」に置き換えられる。
【0162】
図16は、図14に示したステップS105の動作コマンド変換処理のフロー図である。図16に示すように、中央制御装置14のCPU130は、動作コマンド変換処理を開始すると、ステップS151で、制御コマンドcom[0,1,…,N]を配列comTmp[0,1,…,N]に格納する。
【0163】
次のステップS153では、変数jを初期化する。つまり、変数jに0を格納する。この、変数jは、動作コマンド変換処理におけるcomTmp[0,1,…,N]に含まれるコマンドcomTmp[j]を識別するための変数である。次のステップS155では、変数jが最大値Nよりも小さいか否かを判断する。ステップS155で“YES”であれば、つまり変数jが最大値Nよりも小さければ、ステップS157で、comTmp[j]が動作コマンドであるか否かを判断する。つまり、変数jで指定されたコマンドが動作コマンドであるか否かを判断する。
【0164】
ステップS157で“NO”であれば、つまりcomTmp[j]が動作コマンドでなければ、そのままステップS161に進む。一方、ステップS157で“YES”であれば、つまりcomTmp[j]が動作コマンドであれば、ステップS159で、comTmp[j]の動作内容を動作決定DB144および文化データ334に基づいて変換する。つまり、動作コマンドを対話相手に応じた動作に変換する。たとえば、操作端末16から送信された動作コマンドが「お辞儀」(MOVE_ojigi.txt)であり、文化データ334が示す対話相手の文化が「USA」であれば、動作決定テーブル(図7参照)を参照して、動作の欄に「お辞儀」が記憶され、かつ文化の欄に「USA」が記憶されている動作ファイル名が選択され、動作コマンド「お辞儀」の動作ファイル名は、「MOVE_ojigi_usa.txt」に決定される。よって、comTmp[j]に格納される「MOVE_ojigi.txt」は、「MOVE_ojigi_usa.txt」に置き換えられる。次のステップS161では、変数jをインクリメント(j=j+1)し、ステップS135に戻る。
【0165】
ここで、ステップS155で“NO”であれば、つまり最大値Nより変数jが小さくなければ、ステップS163で、配列comTmp[0,1,…,N]を制御コマンドcom[0,1,…,N]を配列comTmp[0,1,…,N]に上書きし、図14に示す通信内容制御処理にリターンする。つまり、このステップS163では、変換される前の動作コマンドを変換後の動作コマンドに置き換える。
【0166】
たとえば、動作コマンドがアメリカ合衆国の文化に対応する動作に変換される場合に、「挨拶」の制御コマンドにおける動作コマンド「MOVE_ojigi.txt」(お辞儀)は、動作コマンド「MOVE_ojigi_usa.txt」(お辞儀)に置き換えられる。
【0167】
図17は、ロボット12のCPU80の全体処理のフロー図である。図17に示すように、ロボット12のCPU80は、全体処理を開始すると、ステップS301で、後述するオペレータ呼出条件判定処理(図18参照)を実行し、ステップS303で、オペレータ呼出フラグがオンであるか否かを判断する。図示は省略するが、オペレータの呼出フラグは、1ビットのレジスタで構成され、メモリ84(RAM)に設けられる。この呼出フラグは、オペレータ呼出条件判定処理を実行することにより、オン/オフされる。具体的には、オペレータ呼出条件を満たす場合には、呼出フラグはオンされ、逆に、オペレータ呼出条件を満たさない場合には、呼出フラグはオフされる。呼出フラグがオンされると、レジスタにデータ値「1」が設定され、逆に、呼出フラグがオフされると、レジスタにデータ値「0」が設定される。
【0168】
ステップS303で“NO”であれば、つまりオペレータ呼出フラグがオフであればステップS319に進む。一方、ステップS303で“YES”であれば、つまり呼出フラグがオンであれば、ステップS305で、呼出要求を送信し、ステップS307に進む。つまり、このステップS305では、オペレータの呼出要求を中央制御装置14に対して送信し、当該要求に対する応答の受信を待つ。また、ロボット12は、オペレータの呼出要求を送信するとともに、対話相手が発話していれば、その発話による音声を取得し、音声に対応する音声データを中央制御装置14に送信する。さらに、ロボット12は、対話相手が装着する無線タグ18から取得した対話相手IDを中央制御装置14に送信する。
【0169】
続いて、ステップS307では、音声の出力指示を受信したか否かを判断する。つまり、このステップS307では、中央制御装置14から音声の出力指示(ステップS41)を受信したか否かを判断する。ステップS307で“NO”であれば、そのままステップS313に進む。一方、ステップS307で“YES”であれば、ステップS309で、音声の出力指示に対応する発話を実行し、ステップS311に進む。つまり、このステップS309では、「何か御用でしょうか?」などのように、対話相手に発話させるような音声をスピーカ64から出力する。次のステップS311では、対話相手の音声を取得して対応する音声データを送信し、ステップS313に進む。つまり、マイク66によって取得した対話相手の音声に対応する音声データを中央制御装置14に送信する。
【0170】
ステップS313では、操作コマンドを受信したか否かを判断する。ステップS313で“NO”であれば、つまり操作コマンドを受信しなかった場合には、ステップS307に戻る。一方、ステップS313で“YES”であれば、つまり操作端末16からの操作コマンドを受信した場合には、ステップS315で、遠隔操作終了要求があったか否かを判断する。つまり、ステップS313で受信した操作コマンドが、遠隔操作終了コマンドであったか否かを判断する。
【0171】
ステップS315で“YES”であれば、つまり遠隔操作の終了要求を受信した場合には、ステップS321に進む。一方、ステップS315で“NO”であれば、つまりコミュニケーション行動を指示する操作コマンドを受信した場合には、ステップS317で、受信した操作コマンドに応じた動作を実行して、ステップS307に戻る。このステップS317の処理によって、ロボット12の動作が遠隔操作に基づいて制御される。たとえば、スピーカ64およびマイク66を用いた操作端末16を使用するオペレータと対話相手との会話、お辞儀や指差しなどの身体動作および前進や旋回などの移動を実行する。
【0172】
また、ステップS319では、自立行動処理を実行し、ステップS321に進む。なお、自律行動処理では、自立制御によって必要に応じて人間との間でコミュニケーション行動を実行する。たとえば、人間と対面した場合には、当該人間に挨拶をしたり、また、人間に道を尋ねられた場合には、道案内を行ったりする。
【0173】
続いて、ステップS321では、停止命令が有るかどうかを判断する。たとえば、停止命令(停止コマンド)は、オペレータの操作に従って、操作端末16からネットワーク100を介してロボット12に送信される。ただし、ロボット12やロボット12が配置される環境に停止ボタンを設けておき、当該停止ボタンを操作することにより、ロボット12に停止コマンドを入力するようにしてもよい。ステップS321で“YES”であれば、つまり停止命令が有れば、そのまま全体処理を終了する。一方、ステップS321で“NO”であれば、つまり停止命令が無ければ、ステップS301に戻る。
【0174】
図18は、図17に示したステップS301のオペレータ呼出条件判定処理のフロー図である。図18に示すように、ロボット12のCPU80は、オペレータ呼出条件判定処理を開始すると、ステップS341で、呼出条件フラグをオフし、ステップS343で、周囲情報を検出する。つまり、オペレータ呼出条件の判断に必要なセンサ(赤外線距離センサ40、全方位カメラ46、マイク66、眼カメラ70、接触センサ58および無線タグ読み取り装置116)の出力を検出し、周囲および自身の状況(状態)を認識する。
【0175】
続いてステップS345では、特定の文章や単語を検出したか否かを判断する。ステップS345で“YES”であれば、つまり、特定の文章や単語を検出すれば、オペレータ呼出条件を満たすと判断して、ステップS359で呼出条件フラグをオンして、図17に示したロボット12の全体処理にリターンする。たとえば、特定の文章や単語としては、ロボット12が相手(対話相手)の意図を理解できないことを意味する文章や単語、たとえば、「違う」、「責任者を呼んで」、「そうじゃないんだけど」および「わからないかなあ」などが考えられる。
【0176】
一方、ステップS345で“NO”であれば、つまり特定の文章や単語を検出していなければ、ステップS347で、特定の顔の表情を取得したか否かを判断する。たとえば、特定の表情とは、人の顔表情認識で怒りが検出されたこと、顔特定機能で特定の人を検出したことが考えられる。ステップS347で“YES”であれば、つまり、特定の顔の表情を取得すれば、オペレータ呼出条件を満たすと判断して、ステップS359に進む。
【0177】
また、ステップS347で“NO”であれば、つまり、特定の顔の表情を取得していなければ、ステップS349で特定の人間を検出したか否かを判断する。たとえば、特定の人物を検出する方法としては、特定の対話相手IDの無線タグ18を検出したこと(たとえば、VIPとして登録された人が現れたこと)などが考えられる。ステップS349で“YES”であれば、つまり特定の人間を検出すれば、オペレータ呼出条件を満たすと判断して、ステップS359へ進む。一方、ステップS349で“NO”であれば、つまり、特定の人間を検出していなければ、ステップS351で、人間と長時間会話している状況であるか否かを判断する。たとえば、赤外線距離センサ40で取得された距離が1m以内である状態が5分以上になれば“YES”と判断されるようにしてもよい。
【0178】
ステップS351で“YES”であれば、つまり、人間と長時間会話している状況であれば、オペレータ呼出条件を満たすと判断して、ステップS359に進む。一方、ステップS351で“NO”であれば、つまり人間と長時間会話している状況でなければ、ステップS353で、行く手を塞がれた状況であるか否かを判断する。ステップS353で“YES”であれば、つまり行く手を塞がれた状況であれば、オペレータ呼出条件を満たすと判断して、ステップS359に進む。一方、ステップS353で“NO”であれば、つまり行く手を塞がれていない状況であれば、ステップS355で周囲に人が多く存在する状況であるか否かを判断する。ここで、周囲に人が多く存在する状態は、ロボット12または周囲の環境に設けられた他のセンサの出力に基づいて検出されるようにしてもよい。
【0179】
ステップS355で“YES”であれば、つまり周囲に人が多く存在する状況であれば、オペレータ呼出条件を満たすと判断して、ステップS359に進む。一方、ステップS355で“NO”であれば、つまり周囲に人が多く存在していない状況であれば、ステップS357で、オペレータ呼出ボタンが押されたかどうかを判断する。なお、オペレータ呼び出しボタンはロボット12または周囲の環境に設けられてもよい。ステップS357で“YES”であれば、つまりオペレータ呼出条件判定を満たすと判断して、ステップS359に進む。一方、ステップS337で“NO”であれば、つまりオペレータ呼出ボタンが押されていなければ、図17に示したロボット12の全体処理にリターンする。
【0180】
図19は、操作端末16のCPU160の遠隔操作処理のフロー図である。図19に示すように、操作端末16のCPU160は、ステップS401では、中央制御装置14からの遠隔操作依頼が有るか否かを判断する。具体的には、中央制御装置14から送信されたロボット12のIPアドレスを含む遠隔操作依頼を受信したか否かが判断される。
【0181】
ステップS401で“NO”であれば、つまり中央制御装置14からの遠隔操作依頼が無ければ、そのまま同じステップS401に戻る。ただし、このステップS401の処理は一定時間(たとえば、30秒)毎に実行される。一方、ステップS401で“YES”であれば、すなわち、中央制御装置14からの遠隔操作依頼を有れば、ステップS403で、LCD176に図9に示したような遠隔操作画面210が表示される。
【0182】
なお、この遠隔操作画面210を表示した当初では、当該操作端末16を呼び出したロボット12のカメラ画像および当該ロボット12に関する情報は取得されていないので、ロボットカメラ画像212の内容の表示はない。さらに、ステップS403の処理が終了すると、続くステップS405−S415の処理が一定時間ごとに繰り返し実行される。
【0183】
続いて、ステップS405では、ロボット情報とセンサ情報(音声情報、カメラ情報および距離情報など)との受信および更新が行われる。つまり、中央制御装置14またはロボット12からロボット情報を受信して、遠隔操作画面210のロボット情報214の表示を更新する。さらに、ロボット12から音声データを受信して、操作端末16のスピーカ166から当該音声情報を出力し、ロボット12からカメラ情報を受信して、遠隔操作画面のロボットカメラ画像212の表示を更新し、ロボット12から距離情報を受信して、障害物(対話相手)までの距離を表示する。
【0184】
なお、ロボット情報214を最初に表示する際には、当該ロボット12の位置、名前および対話相手の情報などは中央制御装置14から取得される。また、地図表示のためのロボット12および相手の位置情報は当該ロボット12から取得される。また、ロボット12と当該操作端末16との通信速度によっては、ロボット12から送信されないセンサ情報があるため、かかる場合には、一部または全部のセンサ情報についての表示に制限がかかるようにしてもよい。
【0185】
ステップS407では、文字列データを受信したか否かを判断する。つまり、このステップS407では、中央制御装置14から翻訳された文字列(ステップS97)を受信したか否かを判断する。ステップS407で“NO”であれば、つまり文字列データを受信していなければ、そのままステップS411に進む。一方、ステップS407で“YES”であれば、つまり文字列データを受信していれば、ステップS409で、文字列データに対応する文字をLCD176に表示し、ステップS411に進む。つまり、このステップS409では、中央制御装置14で翻訳された対話相手が発話した内容の翻訳結果がLCD176に表示される。
【0186】
ステップS411では、操作コマンドの入力がされたか否かを判断する。たとえば、入力装置170からの入力データと操作パネル216のボタン配置データとに基づいて、オペレータによって操作コマンドボタンが選択されたか否かが判断される。ステップS411で“NO”であれば、つまり操作コマンドの入力が無い場合には、そのままステップS405に戻る。一方、ステップS411で“YES”であれば、すなわち、操作コマンドの入力があった場合には、ステップS413で、選択された操作コマンドを特定し、当該操作コマンドをロボット12に送信する。そして、ステップS415で、遠隔操作の終了要求があったか否かを判断する。つまり、入力された操作コマンドが遠隔操作の終了を指示するコマンド(終了コマンド)であるか否かを判断する。
【0187】
ステップS415で“NO”であれば、すなわち終了コマンドが入力されていない場合には、そのままステップS405に戻る。一方、ステップS415で“YES”であれば、すなわち、オペレータによって終了コマンドが入力された場合には、遠隔操作処理を終了する。
【0188】
この実施例によれば、中制御装置14は、ロボット12からの呼出要求があると、対話相手が発話した音声などから対話相手の使用言語を特定し、特定された言語に基づいて対話相手の文化の動作を特定する。さらに、中央制御装置14は、IDLE状態のオペレータが使用する操作端末16に、ロボット12の遠隔操作を依頼の要求を送信するとともに、対話相手の言語とオペレータの使用言語とが一致するか否かを判断する。そして、対話相手の言語とオペレータの使用言語とが一致していない場合に、操作端末16から中央制御装置14に制御コマンドが送信されると、中央制御装置14は、制御コマンドに含まれる発話コマンドを対話相手の言語に翻訳し、動作コマンドを対話相手の文化の動作に変換して、ロボット12に送信する。
【0189】
これによって、ロボット12は、相手の文化で行われる身体動作を交えて、対話相手の文化の言語を発話するため、対話相手の文化によらず、オペレータが適切に対応することができる。
【0190】
なお、本実施例では、赤外線距離センサ40を用いているが、赤外線距離センサ40に代えて、超音波距離センサやミリ波レーダなどを用いてロボット12と対話相手との距離を計測してもよい。また、オペレータ選択処理では、2つの言語の「らしさ演算」を行っているが、必要に応じて言語の数を増やしてもよい。
【0191】
また、ロボット12のオペレータの呼出フラグは、体表に設けた接触などを検出するセンサ(たとえば、皮膚センサ)で、そのロボット12自身が殴られたことを検出し、オンになるようにしてもよい。さらに、中央制御装置14の機能を端末16に持たせることによって、中央制御装置14を介さずに操作端末16がロボット12と直接通信するようにしてもよい。
【0192】
また、異なる言語間で翻訳するようにしたが、地域で異なる方言を変換するようにしてもよい。たとえば、関西弁から東北弁または東北弁から関西弁に変換できるようにしてもよい。同様にして、文化の違いによらず、地域で異なる身振り手振りについて変換するようにしてもよい。
【0193】
さらに、この実施例では、中央制御装置14で、制御コマンドにおける、発話コマンドの翻訳処理および動作コマンドの変換処理を行うようにしたが、操作端末16またはロボット12で行うようにしてもよい。
【0194】
たとえば、操作端末16で制御コマンドにおける、発話コマンドの翻訳処理および動作コマンドの変換処理を行う場合には、操作端末16のCPU160では、ステップS31−S55(図12参照)と、ステップS59−S73(図13参照)と、ステップS101−S107(図14参照)とに示す処理および発話コマンド翻訳処理(図15参照)と動作コマンド変換処理(図16参照)とが行われるようにすればよい。なお、ステップS413では、オペレータに入力されたコマンドは、ロボット12に送信せずに、発話コマンド翻訳処理と動作コマンド変換処理とを行ってから、ロボット12に送信するようにする。
【0195】
また、ロボット12で制御コマンドにおける、発話コマンドの翻訳処理および動作コマンドの変換処理を行う場合には、ロボット12のCPU80では、ステップS33−55と、ステップS59−S73と、ステップS101−S107とに、示す処理および発話コマンド翻訳処理と動作コマンド変換処理とが行われるようにすればよい。なお、ステップS41では、音声の出力指示の要求は送信せずに、ステップS309の処理が実行される。また、ステップS317の処理が実行される場合には、受信した制御コマンドは、発話コマンド翻訳処理と動作コマンド変換処理とを行ってから実行する。
【図面の簡単な説明】
【0196】
【図1】図1はこの発明の一実施例のロボット遠隔操作システムの概要を示す図解図である。
【図2】図2は図1に示すロボットの外観を正面から見た図解図である。
【図3】図3は図1に示すロボットの電気的な構成を示すブロック図である。
【図4】図4は図1に示す中央制御装置の電気的な構成を示すブロック図である。
【図5】図5は図1に示す中央制御装置のデータベースに記憶されるテーブルの一例を示す図解図である。
【図6】図6は図1に示す中央制御装置のデータベースに記憶される他のテーブルの一例を示す図解図である。
【図7】図7は図1に示す中央制御装置のデータベースに記憶されるその他のテーブルの一例を示す図解図である。
【図8】図8は図1に示す操作端末の電気的な構成を示すブロック図である。
【図9】図9は図1に示す操作端末の表示装置に表示される遠隔操作画面の一例を示す図解図である。
【図10】図10は図4に示す中央制御装置のメモリのメモリマップの一例を示す図解図である。
【図11】図11は図1に示す中央制御措置のCPUの全体処理を示すフロー図である。
【図12】図12は図1に示す中央制御措置のCPUのオペレータ選択処理の一部を示すフロー図である。
【図13】図13は図1に示す中央制御措置のCPUのオペレータ選択処理の他の一部であって、図12に後続するフロー図である。
【図14】図14は図1に示す中央制御措置のCPUの通信内容制御処理を示すフロー図である。
【図15】図15は図1に示す中央制御措置のCPUの発話コマンド翻訳処理を示すフロー図である。
【図16】図16は図1に示す中央制御措置のCPUの動作コマンド変換処理を示すフロー図である。
【図17】図17は図1に示すロボットのCPUの全体処理を示すフロー図である。
【図18】図18は図1に示すロボットのCPUのオペレータ呼出条件判定処理を示すフロー図である。
【図19】図19は図1に示す操作端末のCPUの遠隔操作処理を示すフロー図である。
【符号の説明】
【0197】
10 …ロボット遠隔操作システム
12 …コミュニケーションロボット
14 …中央制御装置
16 …操作端末
18 …無線タグ
40 …赤外線距離センサ
46 …全方位カメラ
58 …接触センサ
64 …スピーカ
66 …マイク
70 …眼カメラ
80 …CPU
82 …バス
84 …メモリ
86 …モータ制御ボード
88 …センサ入力/出力ボード
90 …音声入力/出力ボード
100 …ネットワーク
112 …通信LANボード
114 …無線通信装置
116 …無線タグ読取装置
130 …CPU
132 …バス
134 …メモリ
148 …通信LANボード
150 …無線通信装置
160 …CPU
162 …LCDドライバ
164 …メモリ
166 …スピーカ
168 …マイク
170 …入力装置
172 …通信LANボード
174 …無線通信装置
176 …LCD

【特許請求の範囲】
【請求項1】
遠隔操作または自律制御により、人間との間で身体動作および音声の少なくとも一方によるコミュニケーション行動を行うロボットと、ネットワークを介して前記ロボットの遠隔操作を行う複数の操作端末と、前記ネットワークを介して前記ロボットと前記複数の操作端末のうち1台との仲介を行う中央制御装置とを備える、ロボット遠隔操作システムにおいて、
前記ロボットは、
前記人間の個人情報を取得する個人情報取得手段、
前記個人情報取得手段によって取得された前記個人情報を前記中央制御装置に送信する個人情報送信手段、
前記中央制御装置からの第1遠隔操作情報を受信する第1遠隔操作情報受信手段、および
前記第1遠隔操作情報受信手段によって受信した前記第1遠隔操作情報に基づくコミュニケーション行動を実行する実行手段を備え、
前記操作端末は、
前記ロボットを遠隔操作するための第2遠隔操作情報を前記中央制御装置に送信する第2遠隔操作送信手段を備え、
前記中央制御装置は、
前記操作端末の操作者のコミュニケーション情報を記憶する記憶媒体、
前記個人情報送信手段によって送信された個人情報を受信する個人情報受信手段、
前記個人情報受信手段によって受信された個人情報からコミュニケーション情報を特定するコミュニケーション情報特定手段、
前記第2遠隔操作送信手段によって送信された第2遠隔操作情報を受信する第2遠隔操作情報受信手段、
前記コミュニケーション情報特定手段によって特定されたコミュニケーション情報と前記記憶媒体によって記憶された前記操作端末の操作者のコミュニケーション情報とが一致するか否かを判断する判断手段、
前記判断手段によって判断された判断結果が一致しないときに、前記第2遠隔操作情報受信手段によって受信された第2遠隔操作情報を前記コミュニケーション情報特定手段によって特定されたコミュニケーション情報に基づいて第1遠隔操作情報に変換する変換手段、および
前記変換手段によって変換された前記第1遠隔操作情報を前記ロボットに送信する第1遠隔操作情報送信手段を備える、ロボット遠隔操作システム。
【請求項2】
前記コミュニケーション情報は、言語情報を含み、
前記コミュニケーション情報特定手段は、前記個人情報受信手段によって受信された個人情報から言語情報を特定する言語情報特定手段を含み、
前記判断手段は、前記言語情報特定手段によって特定された言語情報と前記記憶媒体によって記憶された前記操作端末の操作者の言語情報とが一致するか否かを判断し、
前記変換手段は、前記判断手段によって判断された判断結果が一致しないときに、前記第2遠隔操作情報に含まれる発話の情報を前記言語特定手段によって特定された言語情報に基づいて翻訳する翻訳手段を含む、請求項1記載のロボット遠隔操作システム。
【請求項3】
前記コミュニケーション情報は、身体動作の種類の情報を含み、
前記コミュニケーション情報特定手段は、前記個人情報受信手段によって受信された個人情報から身体動作の種類の情報を特定する身体動作種類情報特定手段を含み、
前記比較手段は、前記身体動作種類情報特定手段によって特定された身体動作の種類の情報と前記記憶媒体によって記憶された前記操作端末の操作者の身体動作の種類の情報とが一致するか否かを判断し、
前記変換手段は、前記判断手段によって判断された判断結果が一致しないときに、前記第2遠隔操作情報に含まれる動作の情報を身体動作種類情報特定手段によって特定された身体動作の種類の情報に基づいて変換する動作変換手段を含む、請求項1または2記載のロボット遠隔操作システム。
【請求項4】
前記個人情報取得手段は、人間の音声を取得する音声取得手段を含み、
前記個人情報送信手段は、さらに前記音声取得手段によって取得された音声を送信し、
前記個人情報受信手段は、さらに前記個人情報送信手段によって送信された音声を受信し、
前記言語情報特定手段は、前記個人情報受信手段によって受信された人間の音声から言語情報を特定する音声言語情報特定手段を含む、請求項2または3記載のロボット遠隔操作システム。
【請求項5】
前記中央制御装置は、
前記音声取得手段によって人間の音声が取得されていないときに、前記ロボットに発話を指示する要求信号を送信する要求信号送信手段をさらに備え、
前記ロボットは、
前記要求信号送信手段によって送信された要求信号を受信する要求信号受信手段、および
前記要求信号受信手段によって受信された要求信号に応じて音声を出力する音声出力手段をさらに備える、請求項4記載のロボット遠隔操作システム。
【請求項6】
前記個人情報取得手段は、人間が携帯する識別情報タグから識別情報を取得する識別情報取得手段を含み、
前記個人情報送信手段は、さらに前記識別情報取得手段によって取得された識別情報を送信し、
前記個人情報受信手段は、さらに前記個人情報送信手段によって送信された識別情報を受信し、
前記言語情報特定手段は、前記個人情報受信手段によって受信された識別情報から少なくとも言語情報を特定する識別言語情報特定手段を含む、請求項2ないし5のいずれかに記載のロボット遠隔操作システム。
【請求項7】
前記個人情報取得手段は、人間が携帯する識別情報タグから識別情報を取得する識別情報取得手段を含み、
前記個人情報送信手段は、さらに前記識別情報取得手段によって取得された識別情報を送信し、
前記個人情報受信手段は、さらに前記個人情報送信手段によって送信された識別情報を受信し、
前記身体動作種類決定手段は、前記個人情報受信手段によって受信された識別情報からさらに身体動作の種類の情報を決定する識別情報身体動作種類決定手段を含む、請求項3記載のロボット遠隔操作システム。
【請求項8】
前記中央制御装置は、
前記判断手段によって判断された判断結果が一致しないときに、前記個人情報受信手段によって受信された音声を前記記憶媒体によって記憶された前記操作端末の操作者の言語情報に基づいて翻訳する音声翻訳手段、および
前記音声翻訳手段によって翻訳された翻訳結果を前記操作端末に送信する翻訳結果送信手段をさらに備え、
前記操作端末は、
前記翻訳音声結果送信手段によって送信された翻訳結果を受信する翻訳結果受信手段、および
前記翻訳結果受信手段によって受信された翻訳結果を出力する出力手段をさらに備える、請求項4ないし7のいずれかに記載のロボット遠隔操作システム。
【請求項9】
遠隔操作または自律制御により、人間との間で身体動作および音声の少なくとも一方によるコミュニケーション行動を行うロボットと、ネットワークを介して前記ロボットの遠隔操作を行う複数の操作端末と、前記ネットワークを介して前記ロボットと前記複数の操作端末のうち1台のとの仲介を行う中央制御装置とを備える、ロボット遠隔操作システムにおいて、
前記ロボットは、
前記人間の個人情報を取得する個人情報取得手段、
前記個人情報取得手段によって取得された前記個人情報を前記操作端末に送信する個人情報送信手段、
前記操作端末からの第1遠隔操作情報を受信する第1遠隔操作情報受信手段、および
前記第1遠隔操作情報受信手段によって受信した前記第1遠隔操作情報に基づくコミュニケーション行動を実行する実行手段を備え、
前記操作端末は、
前記操作端末自身の操作者のコミュニケーション情報を記憶する記憶媒体、
前記個人情報送信手段によって送信された個人情報を受信する個人情報受信手段、
前記個人情報受信手段によって受信された個人情報からコミュニケーション情報を特定するコミュニケーション情報特定手段、
前記コミュニケーション情報特定手段によって特定されたコミュニケーション情報と前記記憶媒体によって記憶された前記操作端末の操作者のコミュニケーション情報とが一致するか否かを判断する判断手段、
前記判断手段によって判断された判断結果が一致しないときに、前記ロボットを遠隔操作するための第2遠隔操作情報を前記コミュニケーション情報特定手段によって特定されたコミュニケーション情報に基づいて第1遠隔操作情報に変換する変換手段、および
前記変換手段によって変換された前記第1遠隔操作情報を前記ロボットに送信する第1遠隔操作情報送信手段を備える、ロボット遠隔操作システム。
【請求項10】
遠隔操作または自律制御により、人間との間で身体動作および音声の少なくとも一方によるコミュニケーション行動を行うロボットと、ネットワークを介して前記ロボットの遠隔操作を行う複数の操作端末と、前記ネットワークを介して前記ロボットと前記複数の操作端末のうち1台との仲介を行う中央制御装置とを備える、ロボット遠隔操作システムにおいて、
前記操作端末は、
前記ロボットを遠隔操作するための第1遠隔操作情報を前記ロボットに送信する第1遠隔操作送信手段を備え、
前記ロボットは、
前記操作端末の操作者のコミュニケーション情報を記憶する記憶媒体、
前記人間の個人情報を取得する個人情報取得手段、
前記個人情報受信手段によって受信された個人情報からコミュニケーション情報を特定するコミュニケーション情報特定手段、
前記操作端末からの第1遠隔操作情報を受信する第1遠隔操作情報受信手段、
前記コミュニケーション情報特定手段によって特定されたコミュニケーション情報と前記記憶媒体によって記憶された前記操作端末の操作者のコミュニケーション情報とが一致するか否かを判断する判断手段、
前記判断手段によって判断された判断結果が一致しないときに、前記第1遠隔操作情報受信手段によって受信された第1遠隔操作情報を前記コミュニケーション情報特定手段によって特定されたコミュニケーション情報に基づいて第2遠隔操作情報に変換する変換手段、および
前記変換手段によって変換された前記第2遠隔操作情報に基づくコミュニケーション行動を実行する実行手段を備える、ロボット遠隔操作システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate


【公開番号】特開2009−241166(P2009−241166A)
【公開日】平成21年10月22日(2009.10.22)
【国際特許分類】
【出願番号】特願2008−87610(P2008−87610)
【出願日】平成20年3月28日(2008.3.28)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成19年4月2日付け、支出負担行為担当官 総務省大臣官房会計課企画官、研究テーマ「ネットワーク・ヒューマン・インターフェースの総合的な研究開発(ネットワークロボットの技術)」に関する委託研究、産業技術力強化法第19条の適用を受ける特許出願
【出願人】(393031586)株式会社国際電気通信基礎技術研究所 (905)
【Fターム(参考)】