JP6142306B2 - ロボット制御システム、ロボット、出力制御プログラムおよび出力制御方法 - Google Patents

ロボット制御システム、ロボット、出力制御プログラムおよび出力制御方法 Download PDF

Info

Publication number
JP6142306B2
JP6142306B2 JP2013202374A JP2013202374A JP6142306B2 JP 6142306 B2 JP6142306 B2 JP 6142306B2 JP 2013202374 A JP2013202374 A JP 2013202374A JP 2013202374 A JP2013202374 A JP 2013202374A JP 6142306 B2 JP6142306 B2 JP 6142306B2
Authority
JP
Japan
Prior art keywords
pointing
robot
utterance content
exhibit
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013202374A
Other languages
English (en)
Other versions
JP2015066622A (ja
Inventor
神田 崇行
崇行 神田
聡 佐竹
聡 佐竹
尊優 飯尾
尊優 飯尾
林 宏太郎
宏太郎 林
フェレリ フローラン
フェレリ フローラン
横山 太郎
太郎 横山
浩司 川邊
浩司 川邊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honda Motor Co Ltd
ATR Advanced Telecommunications Research Institute International
Original Assignee
Honda Motor Co Ltd
ATR Advanced Telecommunications Research Institute International
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honda Motor Co Ltd, ATR Advanced Telecommunications Research Institute International filed Critical Honda Motor Co Ltd
Priority to JP2013202374A priority Critical patent/JP6142306B2/ja
Publication of JP2015066622A publication Critical patent/JP2015066622A/ja
Application granted granted Critical
Publication of JP6142306B2 publication Critical patent/JP6142306B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

この発明は、ロボット制御システム、ロボット、出力制御プログラムおよび出力制御方法に関し、特にたとえば、来場者に展示物の説明をする、ロボット制御システム、ロボット、出力制御プログラムおよび出力制御方法に関する。
背景技術の一例である非特許文献1では、ロボットが指を指して説明および案内を行う。また、特許文献1の情報提供ロボットは、腕部の手先が指し示している物体を特定し、その物体の情報を提供する。
特開2010-231315号公報[G06Q 50/00] O. Sugiyama, T. Kanda, M. Imai, H. Ishiguro, N. Hagita, Humanlike conversation with gestures and verbal cues based on a three-layer attention-drawing model, connection science (Special issues on android science), 18(4), pp. 379-402, 2006.
ところが、非特許文献1および特許文献1のロボットでは、物体を指し示したときに、ユーザと物体のとの間に障害物などが存在していると、指し示された物体をユーザが正しく認識できない場合がある。この場合、ユーザは、ロボットから情報の提供を受けても、その情報の内容を正しく把握することが出来ない可能性が高い。
それゆえに、この発明の主たる目的は、新規な、ロボット制御システム、ロボット、出力制御プログラムおよび出力制御方法を提供することである。
この発明の他の目的は、発話コンテンツを適切に提供することが出来る、ロボット制御システム、ロボット、出力制御プログラムおよび出力制御方法を提供することである。
この発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、この発明の理解を助けるために記述する実施形態との対応関係を示したものであって、この発明を何ら限定するものではない。
第1の発明は、展示物が置かれた空間において自律移動可能なロボットを含む、ロボット制御システムであって、展示物をポインティングによって指すことが可能かを判定する判定手段、判定手段による判定結果に基づいて、発話コンテンツの優先度を計算する計算手段、計算手段によって計算された優先度がもっとも高い発話コンテンツを選択する選択手段、および選択された発話コンテンツを、ロボットから出力させる出力手段を備える、ロボット制御システムである。
第1の発明では、ロボット制御システムのロボットは、展示物が置かれた空間の中を自律移動する。判定手段は、ロボットの腕や指などによるポインティングによって展示物を指すことが可能かを判定する。優先度は、複数の発話コンテンツのうち、現在のユーザの状況に適切な発話コンテンツを選択するために計算される。そして、計算手段は、ポインティングによって指すことが可能か不可能かの判定結果に基づいて、発話コンテンツの優先度を計算する。そして、選択手段は、優先度が最も高い発話コンテンツを選択する。たとえば、出力手段は、このようにして選択された発話コンテンツの出力命令をロボットに出す。
第1の発明によれば、ロボットの体を効率的に利用して、ポインティングを交えた発話コンテンツの提供が出来る。具体的には、優先度に基づいて発話コンテンツを出力するようにしたため、発話コンテンツを選択する処理を単純にすることが出来る。また、ロボットは、展示物の周囲の状況に合わせて、適切な説明を行うことが出来る。
第2の発明は、第1の発明に従属し、発話コンテンツは、ポインティングを伴う第1発話コンテンツおよびポインティングを伴わない第2発話コンテンツを含み、選択された発話コンテンツにおいてポインティングによって指すことが可能だと判定されているとき、展示物をポインティングによって指すポインティング手段を備え、出力手段は、選択された発話コンテンツにおいてポインティングによって指すことが可能だと判定されているとき第1発話コンテンツを出力し、選択された発話コンテンツにおいてポインティングによって指すことが不可能だと判定されたとき、第2発話コンテンツを出力する。
第2の発明では、第1発話コンテンツは、たとえば展示物がポインティングによって指されている状態で出力されることが想定されている。一方、第2発話コンテンツは、展示物がポインティングによって指されていない状態で出力されることが想定されている。たとえば、ポインティング手段(16,S13)は、展示物をポインティングによって指すことが可能だと判定されているとき、ポインティングによって展示物を指す命令をロボットに出す。そして、ロボットは、展示物をポインティングによって指しているときには第1発話コンテンツを出力し、展示物をポインティングによって指していないときには第2発話コンテンツを出力する。
第2の発明によれば、ポインティングによって指すことが出来ない場合と出来る場合とに応じて、発話コンテンツを変化させることが出来るため、ユーザはロボットの説明を理解しやすくなる。
第3の発明は、第2の発明に従属し、判定手段は、ユーザが所定範囲に入っているかを判定する範囲判定手段およびユーザが所定範囲に入ったと判定されたとき、ポインティングによって指すことが可能だと設定する設定手段を含み、ポインティング手段は、選択された発話コンテンツにおいてポインティングによって指すことが可能だと設定されているとき、展示物をポインティングによって指す。
第3の発明では、範囲判定手段(16,S55,S85)は、展示物に対して設定される所定範囲に、ユーザが入っているかを判定する。ユーザが所定範囲に入ると、設定手段(16,S59,S87)は、展示物をポインティングによって指すことが可能だと設定する。そして、このように設定されている状態では、ポインティング手段は展示物をポインティングによって指し、第1発話コンテンツが出力される。
第3の発明によれば、ポインティングが可能を判定する範囲を所定範囲としたため、ユーザは所定範囲内では、ポインティングを交えた説明を受けることが出来る。
第4の発明は、第3の発明に従属し、ポインティングは、展示物の一部を指す第1ポインティングを含み、判定手段は、ユーザと展示物との間に障害物が無いかを判定する障害物判定手段をさらに含み、設定手段は、ユーザが所定範囲に入っており、かつ当該ユーザと展示物との間に障害物が無いと判定されたとき、第1ポインティングによって指すことが可能だと設定する第1設定手段を含み、ポインティング手段は、選択された発話コンテンツにおいて第1ポインティングによって指すことが可能だと設定されているとき、展示物の一部を第1ポインティングによって指す。
第4の発明では、第1ポインティングは、たとえば指などにっよって展示物の一部を指す。障害物判定手段(16,S57)は、たとえばユーザと展示物との間に他のユーザ(人)が立っていないかを判定する。ユーザが所定範囲に入っていて、かつユーザと展示物との間に他のユーザが立っていなければ、第1設定手段(16,S59)は、展示物を第1ポインティングによって指すことが可能だと設定する。そして、このように設定されている状態では、ポインティング手段は展示物の一部を第1ポインティングによって指す。
第4の発明によれば、第1ポインティングによって展示物の一部を指した状態で説明を行うことが出来る。
第5の発明は、第3の発明または第4の発明に従属し、ポインティングは、展示物の全体を指す第2ポインティングを含み、設定手段は、ユーザが所定範囲に入っていると判定されたとき、第2ポインティングによって指すことが可能だと設定する第2設定手段を含み、ポインティング手段は、選択された発話コンテンツにおいて第2ポインティングによって指すことが可能だと設定されているとき、展示物の全体を第2ポインティングによって指す。
第5の発明では、第2ポインティングは、ロボットの腕など利用して展示物の全体を指す。ユーザが所定範囲に入っているとき、第2設定手段(16,S87)は、第2ポインティングによって指すことが可能だと設定する。そして、このように設定されると、ポインティング手段は、展示物の全体を第2ポインティングによって指す。
第5の発明によれば、第1ポインティングによって展示物の一部を指すことが出来ない場合は、第2ポインティングによって展示物の全体を指した状態で説明を行うことが出来る。
の発明は、展示物が置かれた空間において自律移動可能なロボットを含む、ロボット制御システムのプロセッサを、展示物をポインティングによって指すことが可能かを判定する判定手段、判定手段による判定結果に基づいて、発話コンテンツの優先度を計算する計算手段、計算手段によって計算された優先度がもっとも高い発話コンテンツを選択する選択手段、および選択された発話コンテンツを、ロボットから出力させる出力手段として機能させる、出力制御プログラムである。
の発明でも、第1の発明と同様の効果が期待出来る。
の発明は、展示物が置かれた空間において自律移動可能なロボットを含む、ロボット制御システムにおける出力制御方法であって、ロボット制御システムのプロセッサが、展示物をポインティングによって指すことが可能かを判定する判定ステップ、判定ステップによる判定結果に基づいて、発話コンテンツの優先度を計算する計算ステップ、計算ステップによって計算された優先度がもっとも高い発話コンテンツを選択する選択ステップ、および選択された発話コンテンツを、ロボットから出力させる出力ステップを実行する、出力制御方法である。
の発明でも、第1の発明と同様の効果が期待出来る。
の発明は、展示物が置かれた空間において自律移動可能な、ロボットであって、展示物をポインティングによって指すことが可能かを判定する判定手段、判定手段による判定結果に基づいて、発話コンテンツの優先度を計算する計算手段、計算手段によって計算された優先度がもっとも高い発話コンテンツを選択する選択手段、および選択された発話コンテンツを出力する出力手段を備える、ロボットである。
の発明でも、第1の発明と同様の効果が期待出来る。
の発明は、展示物が置かれた空間において自律移動可能な、ロボットのプロセッサを、展示物をポインティングによって指すことが可能かを判定する判定手段、判定手段による判定結果に基づいて、発話コンテンツの優先度を計算する計算手段、計算手段によって計算された優先度がもっとも高い発話コンテンツを選択する選択手段、および選択された発話コンテンツを出力する出力手段として機能させる、出力制御プログラムである。
の発明でも、第1の発明と同様の効果が期待出来る。
10の発明は、展示物が置かれた空間において自律移動可能な、ロボットにおける出力制御方法であって、ロボットのプロセッサが、展示物をポインティングによって指すことが可能かを判定する判定ステップ、判定ステップによる判定結果に基づいて、発話コンテンツの優先度を計算する計算ステップ、計算ステップによって計算された優先度がもっとも高い発話コンテンツを選択する選択ステップ、および選択された発話コンテンツを出力する出力ステップを実行する、出力制御方法である。
10の発明でも、第1の発明と同様の効果が期待出来る。
この発明によれば、発話コンテンツを適切に提供することが出来る。
この発明の上述の目的、その他の目的、特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
図1はこの発明の一実施例のロボット制御システムの概要を示す図解図である。 図2は図1に示すロボット制御システムの構成の一例を示す図解図である。 図3は図1に示す中央制御装置の電気的な構成の一例を示すブロック図である。 図4は図1に示すロボットの外観を正面から見た図解図である。 図5は図1に示すロボットの電気的な構成の一例を示すブロック図である。 図6は図1に示す距離画像センサが設置される或る空間の地図の一例を示す図解図である。 図7は図3に示す発話コンテンツDBの構成の一例を示す図解図である。 図8は図3に示す中央制御装置のメモリのメモリマップの一例を示す図解図である。 図9は図3に示す中央制御装置のプロセッサの出力制御処理の一例を示すフロー図である。 図10は図1に示す距離画像センサが設置される或る空間の地図の他の一例を示す図解図である。 図11は図3に示す発話コンテンツDBの構成の他の一例を示す図解図である。 図12は図3に示す中央制御装置のメモリに記憶される判定テーブルの構成の一例を示す図解図である。 図13は図3に示す中央制御装置のメモリのメモリマップの他の一例を示す図解図である。 図14は図3に示す中央制御装置のプロセッサの第2実施例の出力制御処理の一例を示すフロー図である。 図15は図3に示す中央制御装置のプロセッサの第1ポインティング判定処理の一例を示すフロー図である。 図16は図3に示す中央制御装置のプロセッサの第2ポインティング判定処理の一例を示すフロー図である。
<第1実施例>
図1を参照して、この実施例のロボット制御システム100は、展示物Eが置かれた展示会場などの空間(環境)で利用される。展示会場の中では、人(ユーザまたは来場者)およびロボット10が任意に移動することができ、天井には複数の距離画像センサ12(12a,12b,…)が設けられている。
ロボット10は、相互作用指向のロボット(コミュニケーションロボット)でもあり、ユーザのようなコミュニケーションの対象との間で、音声を含むコミュニケーション行動を実行する機能を備えている。また、ロボット10はコミュニケーションの一環として、展示物Eについての説明(発話コンテンツ)をユーザに対して出力したり、展示会場を案内したりするサービスを行う。ロボット10は、サービスを行う上で必要であれば、展示会場内を自律的に移動したり、中央制御装置14が付与する行動命令に基づいて動作したりする。
また、実施例の空間は展示物Eが置かれた展示会場であるが、これに限らずショッピングモール、会社のフロア、博物館またはアトラクション会場などでも、ロボット制御システム100は利用可能である。
なお、図1では簡単のため、ユーザは1人しか示していないが、展示会場にはさらに多くのユーザがいてもよい。同様にロボット10も1台しか示していないが、ロボット制御システム100は2台より多くのロボット10を同時に制御することができる。
また、ロボット10は、音声に加えて、身振り手振りのような身体動作を含むコミュニケーション行動を行うこともある。
図2を参照して、ロボット制御システム100の中央制御装置14は、一定時間(たとえば、1秒)毎に距離画像センサ12a,12bによって、任意に移動するユーザの位置を検出すると共に、ユーザの向きを検出する。また、中央制御装置14は、ネットワーク1000を介してロボット10と無線通信を行い、必要であればロボット10の行動を制御する。空間の中で位置が検出されたユーザには、ユーザIDが付与される。
図3は中央制御装置14の電気的な構成を示すブロック図である。図3を参照して、中央制御装置14は、距離画像センサ12a,12bおよびプロセッサ16などを含む。プロセッサ16は、マイクロコンピュータ或いはCPUと呼ばれることもある。プロセッサ16には、先述した距離画像センサ12aおよび距離画像センサ12bに加えて、他の距離画像センサ12が接続される。なお、距離画像センサ12a,12bを区別する必要がない場合、単に「距離画像センサ12」と言う。
プロセッサ16にはメモリ18、通信LANボード20が接続されると共に、発話コンテンツデータベース(DB:Database)24も接続される。
距離画像センサ12は、赤外光またはレーザーなどの光を照射し、対象物から反射した光(反射光)をCCDセンサなどの光学センサによって捉える。距離画像センサ12は、光が戻るまでの時間を画素ごとに計測することで、対象物までの実際の距離を測距する。実施例の距離画像センサ12には、ASUS(登録商標)社製のXtionと呼ばれる製品が採用されている。なお、他の実施例では、距離画像センサ12は、Microsoft(登録商標)社製のKinect(登録商標)センサ、パナソニック(登録商標)社製の3次元距離画像センサD−IMager(登録商標)などを使用することも可能である。この種のセンサは、3次元距離計測センサ、3Dスキャナなどと呼ばれる場合もある。
プロセッサ16は、このような距離画像センサ12を通じて対象の3次元情報を取得する。距離画像センサ12からの3次元情報には、対象物の形状および対象物までの距離が含まれている。たとえば、ユーザが天井に設けられた距離画像センサ12によってセンシングされると、人を上から見た状態の頭部および両肩の形状と、頭部および両肩までの距離が3次元情報として得られる。
たとえば、空間には35個の距離画像センサ12が所定の位置(既知)に設置されており、プロセッサ16は、各々から3次元情報を取得して、3次元空間(ワールド座標系)における位置(たとえば、重心など特徴点の位置座標(x,y,z))およびユーザの向き(たとえば、頭部および両肩など特徴部位の向き)を計算することが出来る。
なお、他の実施例では、距離画像センサ12にではなく、2次元または3次元のLRFを利用して、ユーザの位置および向きが検出されてもよい。
メモリ18はROM,HDDおよびRAMを含む。ROMおよびHDDには、中央制御装置14の動作を制御するための制御プログラムが予め記憶される。また、RAMは、プロセッサ16のワークメモリやバッファメモリとして用いられる。
通信LANボード20は、たとえばDSPで構成され、プロセッサ16から与えられた送信データを無線通信装置22に与え、無線通信装置22は送信データを、ネットワーク1000を介してロボット10に送信する。たとえば、送信データは、ロボット10の自立移動に必要なデータや、サービスを行うために必要なデータおよびロボット10に指示する行動命令の信号(コマンド)などである。また、通信LANボード20は、無線通信装置22を介してデータを受信し、受信したデータをプロセッサ16に与える。
発話コンテンツDB24は、ロボット10がユーザに対して出力する発話コンテンツが記憶されている。
なお、他の実施例では、中央制御装置14は、ディスプレイなどの出力装置と、マウスおよびキーボードなどの入力装置とを備えていてもよい。
図4はこの実施例のロボット10の外観を示す正面図である。図4を参照して、ロボット10は台車40を含み、台車40の下面にはロボット10を自律移動させる2つの車輪42および1つの従輪44が設けられる。2つの車輪42は車輪モータ46(図5参照)によってそれぞれ独立に駆動され、台車40すなわちロボット10を前後左右の任意方向に動かすことができる。また、従輪44は車輪42を補助する補助輪である。したがって、ロボット10は、配置された空間内を自律制御によって移動可能である。
台車40の上には、円柱形のセンサ取り付けパネル48が設けられ、このセンサ取り付けパネル48には、多数の赤外線距離センサ50が取り付けられる。これらの赤外線距離センサ50は、センサ取り付けパネル48すなわちロボット10の周囲の物体(ユーザや障害物など)との距離を測定するものである。
なお、この実施例では、距離センサとして、赤外線距離センサを用いるようにしてあるが、赤外線距離センサに代えて、LRFや、超音波距離センサおよびミリ波レーダなどを用いることもできる。
センサ取り付けパネル48の上には、胴体52が直立するように設けられる。また、胴体52の前方中央上部(人の胸に相当する位置)には、上述した赤外線距離センサ50がさらに設けられ、ロボット10の前方の主としてユーザとの距離を計測する。また、胴体52には、その側面側上端部のほぼ中央から伸びる支柱54が設けられ、支柱54の上には、全方位カメラ56が設けられる。全方位カメラ56は、ロボット10の周囲を撮影するものであり、後述する眼カメラ80とは区別される。この全方位カメラ56としては、たとえばCCDやCMOSのような固体撮像素子を用いるカメラを採用することができる。なお、これら赤外線距離センサ50および全方位カメラ56の設置位置は、当該部位に限定されず適宜変更され得る。
胴体52の両側上端部(人の肩に相当する位置)には、それぞれ、肩関節58Rおよび肩関節58Lによって、上腕60Rおよび上腕60Lが設けられる。図示は省略するが、肩関節58Rおよび肩関節58Lは、それぞれ、直交する3軸の自由度を有する。すなわち、肩関節58Rは、直交する3軸のそれぞれの軸廻りにおいて上腕60Rの角度を制御できる。肩関節58Rの或る軸(ヨー軸)は、上腕60Rの長手方向(または軸)に平行な軸であり、他の2軸(ピッチ軸およびロール軸)は、その軸にそれぞれ異なる方向から直交する軸である。同様にして、肩関節58Lは、直交する3軸のそれぞれの軸廻りにおいて上腕60Lの角度を制御できる。肩関節58Lの或る軸(ヨー軸)は、上腕60Lの長手方向(または軸)に平行な軸であり、他の2軸(ピッチ軸およびロール軸)は、その軸にそれぞれ異なる方向から直交する軸である。
また、上腕60Rおよび上腕60Lのそれぞれの先端には、肘関節62Rおよび肘関節62Lが設けられる。図示は省略するが、肘関節62Rおよび肘関節62Lは、それぞれ1軸の自由度を有し、この軸(ピッチ軸)の軸回りにおいて前腕64Rおよび前腕64Lの角度を制御できる。
前腕64Rおよび前腕64Lのそれぞれの先端には、手66Rおよび手66Lがそれぞれ設けられる。各手66には、人と同じように親指、人差し指、中指、薬指および小指が設けられている。手66の親指および人差し指の根本には指関節(図示せず)が設けられており、それぞれを独立して動かすことができる。また、中指、薬指および小指は一体成型され、親指および人差し指と同様、根元に指関節が設けられている。そして、中指、薬指および小指はまとめて動かすことが出来る。
また、手66Rおよび手66Lのそれぞれ根元には、手首が設けられる。図示は省略するが、左右の手首は、それぞれ1軸の自由度を有し、この軸(ヨー軸)の軸回りにおいて手66Rおよび手66Lの角度を制御できる。また、図示は省略するが手66Rおよび手66Lの親指、人差し指および残りの3本の指(中指、薬指および小指)の指関節は、それぞれ1自由度を有し、この軸の軸回りにおいて指の角度を制御できる。
従って、ロボット10は、親指、中指、薬指および小指が折り曲げられた指さしの状態の手66で任意の対象を指したり、手66を開いた状態で上腕60、前腕64および手66の全体を使って任意の対象を指したりすることが可能となる。ここで、実施例では、ロボット10の手66の指を使った指し方を、指さし、第1ポインティングまたはフィンガーポインティングと呼ぶことがある。また、ロボット10の手66を開いた状態で上腕60、前腕64および手66の全体を使った指し方を、第2ポインティングまたはパームポインティングと呼ぶことがある。
なお、他の実施例では、人と同じようにそれぞれの指が独立し、かつ人の指と同じ数の指関節を持つ手66が採用されてもよい。この場合、ロボット10は、指さしだけでなく、物を指で掴んだり、手話によるコミュニケーションを行ったりすることが可能となる。
また、図示は省略するが、台車40の前面、肩関節58Rと肩関節58Lとを含む肩に相当する部位、上腕60R、上腕60L、前腕64R、前腕64L、手66Rおよび手66Lには、それぞれ、接触センサ68(図5で包括的に示す)が設けられる。台車40の前面の接触センサ68は、台車40へのユーザや他の障害物の接触を検知する。したがって、ロボット10は、自身の移動中に障害物との接触が有ると、それを検知し、直ちに車輪42の駆動を停止してロボット10の移動を急停止させることができる。また、その他の接触センサ68は、当該各部位に触れたかどうかを検知する。なお、接触センサ68の設置位置は、当該部位に限定されず、適宜な位置(人の胸、腹、脇、背中および腰に相当する位置)に設けられてもよい。
胴体52の中央上部(人の首に相当する位置)には首関節70が設けられ、さらにその上には頭部72が設けられる。図示は省略するが、首関節70は、3軸の自由度を有し、3軸の各軸廻りに角度制御可能である。或る軸(ヨー軸)はロボット10の真上(鉛直上向き)に向かう軸であり、他の2軸(ピッチ軸、ロール軸)は、それぞれ、それと異なる方向で直交する軸である。
頭部72には、人の口に相当する位置に、スピーカ74が設けられる。スピーカ74は、ロボット10が、それの周辺のユーザに対して音声ないし音によってコミュニケーションを取るために用いられる。また、人の耳に相当する位置には、マイク76Rおよびマイク76Lが設けられる。以下、右のマイク76Rと左のマイク76Lとをまとめてマイク76と言うことがある。マイク76は、周囲の音、とりわけコミュニケーションを実行する対象であるユーザの音声を取り込む。さらに、人の目に相当する位置には、眼球部78Rおよび眼球部78Lが設けられる。眼球部78Rおよび眼球部78Lは、それぞれ眼カメラ80Rおよび眼カメラ80Lを含む。以下、右の眼球部78Rと左の眼球部78Lとをまとめて眼球部78と言うことがある。また、右の眼カメラ80Rと左の眼カメラ80Lとをまとめて眼カメラ80と言うことがある。
眼カメラ80は、ロボット10に接近したユーザの顔や他の部分ないし物体などを撮影して、それに対応する映像信号を取り込む。また、眼カメラ80は、上述した全方位カメラ56と同様のカメラを用いることができる。たとえば、眼カメラ80は、眼球部78内に固定され、眼球部78は、眼球支持部(図示せず)を介して頭部72内の所定位置に取り付けられる。図示は省略するが、眼球支持部は、2軸の自由度を有し、それらの各軸廻りに角度制御可能である。たとえば、この2軸の一方は、頭部72の上に向かう方向の軸(ヨー軸)であり、他方は、一方の軸に直交しかつ頭部72の正面側(顔)が向く方向に直行する方向の軸(ピッチ軸)である。眼球支持部がこの2軸の各軸廻りに回転されることによって、眼球部78ないし眼カメラ80の先端(正面)側が変位され、カメラ軸すなわち視線方向が移動される。なお、上述のスピーカ74、マイク76および眼カメラ80の設置位置は、当該部位に限定されず、適宜な位置に設けられてよい。
このように、この実施例のロボット10は、車輪42の独立2軸駆動、肩関節58の3自由度(左右で6自由度)、肘関節62の1自由度(左右で2自由度)、手首の1自由度(左右で2自由度)、指関節の1自由度(左右の各指で6自由度)、首関節70の3自由度および眼球支持部の2自由度(左右で4自由度)の合計25自由度を有する。
図5はロボット10の電気的な構成を示すブロック図である。この図5を参照して、ロボット10は、プロセッサ90を含む。プロセッサ90は、マイクロコンピュータ或いはプロセッサとも呼ばれ、バス92を介して、メモリ94、モータ制御ボード96、センサ入力/出力ボード98、音声入力/出力ボード110および通信LANボード130に接続される。
メモリ94はROMおよびRAMを含む。ROMには、ロボット10の動作を制御するための制御プログラムが予め記憶される。たとえば、各センサの出力(センサ情報)を検知するための検知プログラムや、外部コンピュータ(中央制御装置14)との間で必要なデータやコマンドを送受信するための通信プログラムなどが記憶される。また、RAMは、プロセッサ90のワークメモリやバッファメモリとして用いられる。
モータ制御ボード96は、たとえばDSPで構成され、各腕や首関節および眼球部などの各軸モータの駆動を制御する。すなわち、モータ制御ボード96は、プロセッサ90からの制御データを受け、右眼球部78Rの2軸のそれぞれの角度を制御する2つのモータ(図5では、まとめて「右眼球モータ112」と示す)の回転角度を制御する。同様に、モータ制御ボード96は、プロセッサ90からの制御データを受け、左眼球部78Lの2軸のそれぞれの角度を制御する2つのモータ(図5では、まとめて「左眼球モータ114」と示す)の回転角度を制御する。
また、モータ制御ボード96は、プロセッサ90からの制御データを受け、肩関節58Rの直交する3軸のそれぞれの角度を制御する3つのモータと肘関節62Rの角度を制御する1つのモータとの計4つのモータ(図5では、まとめて「右腕モータ116」と示す)の回転角度を制御する。同様に、モータ制御ボード96は、プロセッサ90からの制御データを受け、肩関節58Lの直交する3軸のそれぞれの角度を制御する3つのモータと肘関節62Lの角度を制御する1つのモータとの計4つのモータ(図5では、まとめて「左腕モータ118」と示す)の回転角度を制御する。
また、モータ制御ボード96は、プロセッサ90からの制御データを受け、右の手首の1軸の角度を制御する1つのモータと右手66Rの3つの指関節のそれぞれの角度を制御する3つのモータとの4つのモータ(図5では、まとめて「右手モータ120」と示す)の回転角度を制御する。同様に、モータ制御ボード96は、プロセッサ90からの制御データを受け、左手の手首の1軸の角度を制御する1つのモータと左手66Lの3つの指関節のそれぞれの角度を制御する3つのモータとの4つのモータ(図5では、まとめて「左手モータ122」と示す)の回転角度を制御する。
ここで、指関節の角度は、モータの回転がそのまま反映されるわけではなく、モータの回転によって動作する流体圧シリンダによって制御される。具体的には、流体圧シリンダには、動作流体を移動させるピストンが移動自在に収容されており、このピストンの位置がモータの回転によって変化する。そして、流体圧シリンダの動きに応じて指関節の角度が変化する。なお、流体圧シリンダを用いたロボットの手については、たとえば特開2013−96514号公報に詳しく説明されているので、ここでは、その公開公報を参照することによって、詳細な説明を省略する。
さらに、モータ制御ボード96は、プロセッサ90からの制御データを受け、首関節70の直交する3軸のそれぞれの角度を制御する3つのモータ(図5では、まとめて「頭部モータ124」と示す)の回転角度を制御する。
そして、モータ制御ボード96は、プロセッサ90からの制御データを受け、車輪42を駆動する2つのモータ(図5では、まとめて「車輪モータ46」と示す)の回転角度を制御する。なお、この実施例では、車輪モータ46を除くモータは、制御を簡素化するためにステッピングモータ(すなわち、パルスモータ)を用いる。ただし、車輪モータ46と同様に直流モータを用いるようにしてもよい。また、ロボット10の身体部位を駆動するアクチュエータは、電流を動力源とするモータに限らず適宜変更されてもよい。たとえば、他の実施例では、エアアクチュエータなどが適用されてもよい。
センサ入力/出力ボード98は、モータ制御ボード96と同様に、DSPで構成され、各センサからの信号を取り込んでプロセッサ90に与える。すなわち、赤外線距離センサ50のそれぞれからの反射時間に関するデータがこのセンサ入力/出力ボード98を通じてプロセッサ90に入力される。また、全方位カメラ56からの映像信号が、必要に応じてセンサ入力/出力ボード98で所定の処理を施してからプロセッサ90に入力される。眼カメラ80からの映像信号も、同様に、プロセッサ90に入力される。また、上述した複数の接触センサ68(図5では、まとめて「接触センサ68」と示す)からの信号がセンサ入力/出力ボード98を介してプロセッサ90に与えられる。
音声入力/出力ボード110もまた、同様に、DSPで構成され、プロセッサ90から与えられる音声合成データに従った音声または声がスピーカ74から出力される。また、マイク76からの音声入力が、音声入力/出力ボード110を介してプロセッサ90に与えられる。
通信LANボード130は、たとえばDSPで構成され、プロセッサ90から与えられた送信データを無線通信装置132に与え、無線通信装置132は送信データを、ネットワーク1000を介して外部コンピュータ(中央制御装置14)に送信する。また、通信LANボード130は、無線通信装置132を介してデータを受信し、受信したデータをプロセッサ90に与える。たとえば、送信データとしては、全方位カメラ56および目カメラ80によって撮影された周囲の映像データなどである。
図6は展示会場(空間)の地図である。図6を参照して、展示会場には、入り口および3つの展示物E(E1,E2,E3)が含まれる。入口にはIRIDタグのリーダが設置されている。たとえば、ユーザは自身が持つRFIDタグをリーダに読み取らせることによって、展示会場に入場可能になる。RFIDタグにはユーザIDが記憶されており、リーダはRFIDタグからユーザIDを読み取る。中央制御装置14には、リーダによって読み取られたユーザIDが送信される。そのため、中央制御装置14は、入り口で検出されたユーザの位置と受信したユーザIDとを対応付けることで、展示会場内にいる複数のユーザをそれぞれ識別することが出来る。
ここで、2つの対象点Cを含む展示物E1には、2つの説明範囲Aが対応付けられる。説明範囲A1は展示物Eの対象点C1に対応付けられており、説明範囲A2は展示物E1の対象点C2に対応付けられている。そして、各説明範囲Aは、ユーザに対して出力する発話コンテンツ(説明する内容)が対応している。なお、説明範囲Aは所定範囲と呼ばれることもある。
図7を参照して、発話コンテンツDB24は、たとえばテーブルで構成されており、そのテーブルは番号、対象点、説明範囲、内容(ポインティングあり)および内容(ポインティングなし)の列を含む。そして、1つの発話コンテンツが1つの行で示される。たとえば、番号の欄に「1」が記憶されている発話コンテンツでは、対象点の欄には「C1」が記憶され、説明範囲の欄には「A1」が記憶される。そして、内容(ポインティングあり)の欄には「これは充電用のプラグです」が記憶され、内容(ポインティングなし)の欄には「このバイクの後ろ側の荷台の上の所に伸びている黒いコードは充電用のコンセントです」が記憶される。また、番号の欄に「2」が記憶されている発話コンテンツでは、対象点の欄には「C1」が記憶され、説明範囲の欄には「A2」が記憶される。そして、内容(ポインティングあり)の欄には「これはモータです」が記憶され、内容(ポインティングなし)の欄には「足元にある銀色のものはモータです」が記憶される。ここで、実施例では、内容(ポインティングあり)の欄に記憶されている情報は第1発話コンテンツと言い、内容(ポインティングなし)の欄に記憶されている情報は第2発話コンテンツと言う。
たとえば、ユーザの位置と向きが検出されたときに、ユーザの位置が説明範囲A1に含まれており、かつユーザの向きが対象点C1の方に向くと、展示物E(対象点C1)と対応する発話コンテンツが発話コンテンツDB24から読み出される。また、略同時に、ロボット10をユーザの近傍に移動させるための動作命令が、ロボット10に与えられる。次に、ユーザと展示物(対象点C)との間を遮る人などの障害物が無いか、つまりロボット10の手66のよる指さしによって展示物Eを指すことが出来るかが判定される。そして、展示物Eを指さしによって指すことが出来れば、「1」番の発話コンテンツのうち、指さしを伴う第1発話コンテンツが選択され、ロボット10に送信される。その結果、ロボット10は受信した第1発話コンテンツに従って、展示物Eの説明を行う。具体的には、ロボット10は、ユーザに近づいてから、ユーザに対して挨拶をした後に、手66で対象点Cの方を指しながら、「これは充電用のプラグです」と展示物Eについて説明(発話)する。なお、発話コンテンツなどに基づく音声は、ロボット10のスピーカ74から出力される。
一方、展示物Eを指さしによって指すことが出来なければ、「1」番の発話コンテンツのうち、指さしを伴わない第2発話コンテンツが選択されロボット10に送信される。その結果、ロボット10は受信した第2発話コンテンツに従って、展示物Eの説明を行う。具体的には、ロボット10は、ユーザに近づき挨拶をしてから、指さしを行わずに、「このバイクの後ろ側の荷台の上の所に伸びている黒いコードは充電用のコンセントです」と展示物Eについて説明(発話)する。そして、発話コンテンツの出力が終了すると、ロボット10は別れの挨拶をユーザに行った後、別の場所または別のユーザの所へ移動する。
このように、第1実施例では、ロボット10の体を効率的に利用して、ポインティングを交えた発話コンテンツの提供が出来る。特に、ポインティングによって指すことが出来ない場合と出来る場合とに応じて、発話コンテンツを変化させることが出来るため、ユーザはロボット10の説明を理解しやすくなる。
なお、ユーザが説明範囲Aの外に出た場合は、発話コンテンツの出力中であっても、出力を停止する。つまり、ユーザが展示物Eに興味を持っていないと考えられるため、発話コンテンツの提供を停止することが出来る。また、図示は省略しているが、展示物E2および展示物E3に対しても、対象点C、説明範囲Aおよび発話コンテンツが対応付けられる。
上述では第1実施例の特徴を概説した。以下では、図8に示すメモリマップ、図9に示すフロー図を用いて、第1実施例について詳細に説明する。
図8は図2に示す中央制御装置14におけるメモリ18のメモリマップの一例を示す図解図である。図8で示すように、メモリ18はプログラム記憶領域302およびデータ記憶領域304を含む。プログラム記憶領域302には、中央制御装置14を動作させるためのプログラムとして、発話コンテンツの出力を制御する出力制御プログラム310などが記憶される。なお、図示は省略するが、中央制御装置14を動作させるためのプログラムには、距離画像センサ12からユーザの位置および向きを検出するためのプログラムなども含まれる。
データ記憶領域304には、ユーザ情報バッファ330が設けられると共に、地図データ332が記憶される。たとえば、ユーザ情報バッファ330には、3次元情報に基づいて計算された、ユーザの位置およびユーザの向きがユーザ情報として一時的に記憶される。
地図データ332には、空間に置かれている展示物Eおよびその展示物Eと対応する所定範囲の情報(座標)が含まれる。なお、図示は省略するが、データ記憶領域304には、様々な計算の結果を一時的に格納するバッファや、中央制御装置14の動作に必要な他のカウンタやフラグなども設けられる。
中央制御装置14のプロセッサ16は、Linux(登録商標)ベースのOSや、その他のOSの制御下で、図9に示す出力制御処理などを含む、複数のタスクを処理する。
図9は出力制御処理のフロー図である。中央制御装置14の電源がオンにされると、中央制御装置14のプロセッサ16は、ステップS1で終了命令か否かを判断する。たとえば、中央制御装置14を終了させる操作が管理人によって行われたかが判断される。ステップS1で“NO”であれば、つまり終了命令を受け付けていなければ、ステップS3でプロセッサ16は、ユーザ情報を取得する。つまり、ユーザ情報バッファ330から、ユーザの位置および向きが読み出される。
続いて、ステップS5でプロセッサ16は、ユーザが説明範囲Aに入っているか否かを判断する。たとえば、プロセッサ16は、地図データ332を読み出して、ユーザの位置が展示物E1の説明範囲A1に含まれているかを判断する。ステップS5で“NO”であれば、たとえばユーザの位置が入口の周囲であれば、プロセッサ16はステップS1の処理に戻る。また、ステップS5で“YES”であれば、たとえばユーザの位置が説明範囲A1に含まれていれば、ステップS7でプロセッサ16は、ユーザが対象点Cの方を向いているか否かを判断する。たとえば、ユーザが説明範囲A1にいる場合は、ユーザの向きが展示物E1の対象点C1の方に向いているかが判断される。なお、ユーザの向きが対象点Cを向いているかを判断する場合、±5度は許容範囲とされる。つまり、ステップS7では、ユーザの向きに対して±5度の許容範囲に対象点Cが含まれているかが判断される。ステップS7で“NO”であれば、つまりユーザが対象点Cの方を向いていなければ、プロセッサ16はステップS1の処理に戻る。
また、ステップS7で“YES”であれば、つまりユーザが対象点Cの方を向いていれば、ステップS9でプロセッサ16は、ロボット10をユーザの近傍へ移動させる。つまり、プロセッサ16は、ユーザの位置を示す座標と、その座標への移動命令をロボット10に対して出す。その結果、ロボット10はユーザに近づくことになる。
続いて、ステップS11でプロセッサ16は、ポインティング可能か否かを判定する。つまり、プロセッサ16は、展示物E(対象点C)とユーザのとの間に障害物が存在しないかを判定する。なお、ステップS11の処理を実行するプロセッサ16は判定手段として機能する。ステップS11で“NO”であれば、つまり指さしによって展示物Eを指すことが不可能であれば、プロセッサ16はステップS15の処理に進む。一方、ステップS11で“YES”であれば、つまり指さしによって展示物を指すことが可能であれば、ステップS13でプロセッサ16は、展示物Eをポインティングする。つまり、中央制御装置14は、対象点Cを指す指さしの動作命令をロボット10に対して送信する。そして、ロボット10は指さしの動作命令を受けて、対象点Cを指す指さしを行う。なお、ステップS13の処理を実行するプロセッサ16はポインティング手段として機能する。
続いて、ステップS15でプロセッサ16は、発話コンテンツを選択する。たとえば、ユーザが説明範囲A1にいる場合、説明範囲A1と対応する「1」番の発話コンテンツが読み出される。そして、指さしによって展示物Eを指すことが出来るか否かの判定結果に基づいて、第1発話コンテンツまたは第2発話コンテンツが選択される。なお、ステップS15の処理を実行するプロセッサ16は選択手段として機能する。続いて、ステップS17でプロセッサ16は、発話コンテンツを出力する。つまり、ステップS15の処理で選択された発話コンテンツをロボット10に送信する。たとえば、説明範囲A1と対応する「1」番の発話コンテンツにおける第1発話コンテンツがロボット10に送信された場合、ロボット10は展示物Eの対象点C1を指さしで指した状態で、「これはモータです」と発話する。なお、ステップS17の処理を実行するプロセッサ16は出力手段として機能する。
続いて、ステップS19でプロセッサ16は、出力終了か否かを判断する。つまり、プロセッサ16は、発話コンテンツの出力が終了したことがロボット10から通知されたかを判断する。ステップS19で“NO”であれば、つまり発話コンテンツの出力が続いていれば、プロセッサ16はステップS19の処理を繰り返して実行する。一方、ステップS19で“YES”であれば、つまり発話コンテンツの出力が終了すると、プロセッサ16はステップS1の処理に戻る。
そして、ステップS1で“YES”であれば、たとえばユーザが中央制御装置14を終了させる操作を行うと、プロセッサ16は出力制御処理を終了する。
<第2実施例>
第2実施例では、展示物Eの一部を指すフィンガーポインティング(指さし)に加えて、展示物Eの全体を指すパームポインティングを、ロボット10が行う。また、発話コンテンツのそれぞれの優先度を算出し、優先度が高い発話コンテンツが出力される。なお、第2実施例のロボット制御システム100は、第1実施例と略同じであるため、システムの構成、ロボット10の外観および電気的な構成、中央制御装置14の電気的な構成などの説明は省略する。
図10を参照して、第2実施例では、説明範囲A1,A2に加えて、対象点C1を中心とする楕円形の説明範囲A3が設けられる。また、説明範囲A3の中には、展示物E、説明範囲A1および説明範囲A2が含まれ、説明範囲A3は2つの説明範囲Aよりも広い。そして、説明範囲A3には、展示物Eの全体を指すパームポインティングが発話コンテンツに対応付けられている。
図11を参照して、第2実施例の発話コンテンツDB24では、ポインティング種類および優先度の列がさらに加えられる。たとえば、フィンガーポインティングと対応する「1」および「2」番の発話コンテンツにおいて、ポインティング種類の欄には「フィンガーポインティング」が記憶される。また、「1」番の発話コンテンツの優先度の欄には「60」が記憶され、「2」番の発話コンテンツの優先度の欄には「50」が記憶される。そして、パームポインティングと対応する「3」番の発話コンテンツにおいて、ポインティング種類の欄には「パームポインティング」が記憶され、「優先度」の欄には「30」が記憶される。また、「3」番の発話コンテンツの内容(ポインティングあり)の欄には「これは電動バイクです」が記憶され、内容(ポインティングなし)の欄には「今ご覧いただいているのは電動バイクです」が記憶される。実施例の優先度とは、複数の発話コンテンツのうち、現在のユーザの状況に適切な発話コンテンツを選択するための値である。たとえば、2つの説明範囲Aが重なっている場合、優先度を計算することで、ユーザの状況に適切な発話コンテンツを選択することが出来る。そして、この優先度は、ポインティングの可能/不可能の判定結果に基づいて算出される。
ここで、フィンガーポインティングの可能/不可能の判定結果は、上述したように、説明範囲Aに入っているかの範囲判定と、ユーザと対象点Cとの間に障害物が存在するかの障害物判定とによって得られる。また、パームポインティングの可能/不可能の判定結果は、説明範囲Aに入っているかの範囲判定によって得られる。ただし、パームポインティングは、展示物Eの全体を指すため、障害物が存在するかの判定は行わない。
図12を参照して、ポインティングの可能/不可能の判定結果が記憶される判定テーブルには、発話コンテンツの番号、判定結果および判定結果に基づく優先度が記憶される列が設けられる。たとえば、説明範囲A1にユーザが入った状態で、ユーザと対象点C1との間に障害物がある場合、「1」番の発話コンテンツの判定結果は「ポインティング不可能」となる。また、この状態のユーザは説明範囲A2に入っていないため「2」番の発話コンテンツの判定結果も「ポインティング不可能」となる。ただし、説明範囲A3は説明範囲A1を包含しているため、「3」番の発話コンテンツの判定結果は「ポインティング可能」となる。
次に、フィンガーポインティングの判定結果が「ポインティング不可能」である場合、発話コンテンツの優先度から第1所定値(たとえば、「40」)が減算される。また、パームポインティングの判定結果が「ポインティング不可能」である場合は、優先度から第2所定値(たとえば、「5」)が減算される。ただし、「ポインティング可能」である場合は、優先度はそのままの値となる。したがって、図12に示す判定テーブルでは、「1」および「2」番の発話コンテンツでは、元の優先度から第1所定値が減算され、計算後の優先度は「20」および「10」が記憶される。また、「3」番の発話コンテンツでは「ポインティング可能」と判定されているため、優先度は減算されずに「30」が記憶される。
判定テーブルに優先度が記憶されると、優先度が最も高い発話コンテンツが選択される。そして、発話コンテンツが選択されると、ポインティングの判定結果に基づいて発話コンテンツが出力される。また、判定テーブルにおいて、ポインティング可能と記憶されているかが判断され、ポインティング可能と記憶されていれば、ロボット10は展示物Eをポインティングする。
たとえば、図12に示すように優先度が記憶されている場合は、「3」番の発話コンテンツが選択され、ロボット10は、パームポインティングによって展示物Eの全体を指すと共に、「これは電動バイクです」という説明を行う。ただし、「3」番の発話コンテンツにおいてポインティング不可能と判定されていた場合、ロボット10は、パームポインティングを行わずに、「今ご覧い頂いているのは電動バイクです」と説明する。
また、判定テーブルにおいて「1」番の発話コンテンツの優先度が最も高く、かつポインティング可能と判定されている場合は、「1」番の発話コンテンツが選択され、ロボット10はフィンガーポインティングによって展示物Eの一部を指すと共に、「これは充電用のプラグです」と言う説明を行う。なお、「1」番の発話コンテンツにおいてポインティング不可能と判定されていた場合については、第1実施例で詳細に説明したため、ここでの説明は省略する。
このように、ポインティングが可能を判定する範囲を説明範囲Aとしたため、ユーザは説明範囲A内では、ポインティングを交えた説明を受けることが出来る。また、優先度に基づいて発話コンテンツを出力するようにしたため、発話コンテンツを選択する処理を単純にすることが出来る。また、ロボット制御システムの管理者は、発話コンテンツの優先度を、フィンガーポインティングが優先して行われるように設定することが可能である。たとえばこのように設定した場合、通常はフィンガーポインティングによって展示物Eの一部が指された状態で説明が行われ、フィンガーポインティングによって展示物Eの一部を指すことが出来ない場合は、パームポインティングによって展示物Eの全体が指された状態で説明が行われる。つまり、ロボット10は、展示物Eの周囲の状況に合わせて、適切な説明を行うことが出来る。
上述では第2実施例の特徴を概説した。以下では、図13に示すメモリマップおよび図14−図16に示すフロー図を用いて、第2実施例について詳細に説明する。
図13は、第2実施例の中央制御装置14におけるメモリ18のメモリマップの一例を示す図解図である。第2実施例のプログラム記憶領域302には、第1実施例のプログラムに加えて、フィンガーポインティングが可能か不可能かを判定するための第1ポインティング判定プログラム312およびパームポインティングが可能か不可能かを判定するための第2ポインティングプログラム314が記憶される。
第2実施例のデータ記憶領域304には、第1実施例のバッファやデータに加えて、判定バッファ334が設定される。判定バッファ334には、図12に示すような判定テーブルが一時的に記憶される。
第2実施例の中央制御装置14のプロセッサ16は、Linux(登録商標)ベースのOSや、その他のOSの制御下で、図14に示す出力制御処理、図15に示す第1ポインティング判定処理および図16に示す第2ポインティング判定処理などを含む、複数のタスクを処理する。
図14は、第2実施例の出力制御処理のフロー図である。なお、第2実施例の出力制御処理では、ステップS1,S3,S11,S15,S19は第1実施例と略同じであるため、詳細な説明は省略する。
中央制御装置14の電源がオンにされると、プロセッサ16は、ステップS1で終了命令か否かを判断する。ステップS1で“NO”であれば、つまり終了命令でなければ、ステップS3でプロセッサ16は、ユーザ情報を取得する。
続いて、プロセッサ16は、ステップS31で第1ポインティング判定処理を実行し、ステップS33で第2ポインティング判定処理を実行する。つまり、各発話コンテンツについて、展示物Eをポインティングによって指すことが可能か不可能かを判定する。また、第1ポインティング判定処理および第2ポインティング判定処理については、図15および図16を用いて詳細に説明するため、ここでの説明は省略する。なお、ステップS31,S33の処理を実行するプロセッサ16は判定処理として機能する。
続いて、ステップS35でプロセッサ16は、発話コンテンツの優先度を計算する。つまり、2つのポインティング判定処理が実行されると、判定結果が判定テーブルに記憶された状態となるため、その判定結果に基づいて、各発話コンテンツの優先度が計算される。続いて、ステップS37でプロセッサ16は、優先度が最も高い発話コンテンツを選択する。つまり、ユーザおよび展示物Eの現在の周囲の状況において、出力するのに適切な発話コンテンツが選択される。続いて、ステップS9でプロセッサ16は、ロボット10をユーザの近傍に移動させる。なお、ステップS35の処理を実行するプロセッサ16は計算手段として機能する。また、ステップS37の処理を実行するプロセッサ16は選択手段として機能する。
続いて、ステップS39でプロセッサ16は、ポインティングが可能か否かを判断する。つまり、選択された発話コンテンツにおいて、判定テーブルの判定結果として「ポインティング可能」が記憶されているかが判断される。ステップS39で“NO”であれば、つまり選択された発話コンテンツの判定結果が「ポインティング不可能」であれば、プロセッサ16はステップS41の処理に進む。また、ステップS39で“YES”であれば、つまり選択された発話コンテンツの判定結果が「ポインティング可能」であれば、プロセッサ16はステップS13で展示物Eをポインティングする。
続いて、ステップS41でプロセッサ16は、ポインティングの判定結果に基づいて発話コンテンツを出力する。たとえば、選択された発話コンテンツでポインティング可能と判定されていれば、選択された発話コンテンツにおいて第1発話コンテンツ(たとえば、「これはモータです」)がロボット10に送信される。一方、ポインティング不可能と判定されていれば、第2発話コンテンツ(たとえば、「足元にある銀色の者はモータです」)がロボット10に送信される。そして、ロボット10は、受信した発話コンテンツを出力する。なお、ステップS41の処理を実行するプロセッサ16は出力部として機能する。
続いて、ステップS19でプロセッサ16は、終了か否かを判断する。プロセッサ16は、ステップS19で“NO”であればステップS19の処理を繰り返して実行し、“YES”であればステップS1の処理に戻る。そして、ステップS1で“YES”であれば、つまり終了命令が出されると、プロセッサ16は出力制御処理を終了する。
図15は第1ポインティング判定処理のフロー図である。図14の出力制御処理でステップS31の処理が実行されると、プロセッサ16はステップS51で変数iを初期化する。変数iは複数の発話コンテンツの内の1つを指定するための変数である。また、初期化された変数iの値は「1」となる。
続いて、ステップS53でプロセッサ16は、i番目の発話コンテンツのポインティング種類は第1ポインティングか否かを判断する。たとえば、iが「1」であれば、プロセッサ16は、「1」番目の発話コンテンツのポインティング種類がフィンガーポインティングかを判断する。ステップS53で“NO”であれば、つまり「i」番目の発話コンテンツのポインティング種類がパームポインティングであれば、プロセッサ16はステップS63の処理に進む。つまり、選択されている発話コンテンツについては、フィンガーポインティングが可能か不可能かを判断する必要が無いため、プロセッサ16はステップS63の処理に進む。
一方、ステップS53で“YES”であれば、つまり「i」番目の発話コンテンツのポインティング種類がフィンガーポインティングであれば、ステップS55でプロセッサ16は、ユーザが説明範囲Aに入っているか否かを判定する。つまり、プロセッサ16は、「i」番目の発話コンテンツの説明範囲Aの中に、ユーザの位置が含まれているかを判定する。
また、ステップS55で“YES”であれば、つまりユーザが説明範囲Aに入っていれば、ステップS57でプロセッサ16は、ユーザと対象点Cとの間を遮る障害物がないか否かを判定する。つまり、空間内の障害物(人および他のロボットなど)の位置が、ユーザと対象点Cとの間に存在しているかが判定される。なお、ステップS57の処理を実行するプロセッサ16は障害物判定手段として機能する。
また、ステップS57の処理で“YES”であれば、つまりユーザと対象点との間に障害物がなければ、ステップS59でプロセッサ16は、i番目の発話コンテンツの判定結果としてポインティング可能を設定する。たとえば、iが「1」であり、ユーザが説明範囲A1にいて、かつユーザと対象点C1との間に障害物がなければ、判定テーブルにおいて、「1」番目の発話コンテンツに対応する判定結果の欄に「ポインティング可能」と記憶される。なお、ステップS59の処理を実行するプロセッサ16は第1設定手段として機能する。
また、ステップS55で“NO”またはステップS57で“NO”であれば、たとえばユーザが説明範囲Aの中に入っていないか、ユーザと対象点Cとの間に障害物があれば、ステップS61でプロセッサ16は、i番目の発話コンテンツの判定結果としてポインティング不可能を設定する。たとえば、iが「1」であり、ユーザが説明範囲A1いなければ、判定テーブルにおいて、「1」番目の発話コンテンツに対応する判定結果の欄に「ポインティング不可能」と記憶される。
続いて、ステップS63でプロセッサ16は、変数iをインクリメントする。つまり、次の発話コンテンツを指定するために、変数iの値が1つ大きくなる。続いて、ステップS65でプロセッサ16は、変数iは最大値より大きいか否かを判断する。つまり、全ての発話コンテンツについて、フィンガーポインティングが可能か不可能かの判定が終わったかが判断される。ステップS65で“NO”であれば、全ての発話コンテンツに対して判定が終わっていなければ、プロセッサ16はステップS53の処理に戻る。一方、ステップS65で“YES”であれば、つまり全ての発話コンテンツに対して判定が終わっていれば、プロセッサ16は第1ポインティング判定処理を終了して、出力制御処理に戻る。
図16は第2ポインティング判定処理のフロー図である。なお、ステップS81,S85,S91,S93の処理は、第1ポインティング判定処理のステップS51,S55,S63,S65の処理と略同じであるため詳細な説明は省略する。
図14の出力制御処理でステップS33の処理が実行されると、プロセッサ16はステップS81で変数iを初期化する。
続いて、ステップS83でプロセッサ16はi番目の発話コンテンツのポインティング種類は第2ポインティングか否かを判断する。つまり、選択されている発話コンテンツがと対応するポインティングがパームポインティングであるかが判断される。ステップS83で“NO”であれば、つまり選択された発話コンテンツのポインティング種類がフィンガーポインティングであれば、プロセッサ16はステップS91の処理に進む。つまり、選択されている発話コンテンツについては、パームポインティングが可能か不可能かを判定する必要が無いため、プロセッサ16はステップS91の処理に進む。
続いて、ステップS83で“YES”であれば、つまり選択されている発話コンテンツのポインティング種類がパームポインティングであれば、ステップS85でプロセッサ16は、ユーザが発明範囲Aに入っているか否かを判定する。ステップS85で“YES”であれば、つまりユーザが説明範囲Aに入っていれば、ステップS87でプロセッサ16は、i番目の発話コンテンツの判定結果としてポインティング可能が設定される。たとえば、iが「3」であり、ユーザが説明範囲A3に入っていれば、「3」番目の発話コンテンツと対応する判定テーブルの判定結果の欄には「ポインティング可能」が記憶される。なお、ステップS87の処理を実行するプロセッサ16は第2設定手段として機能する。
一方、ステップS85で“NO”であれば、つまりユーザが説明範囲Aに入っていなければ、ステップS89でプロセッサ16は、i番目の発話コンテンツの判定結果としてポインティング不可能を設定する。たとえば、iが「3」であれば、ユーザが説明範囲A3に入っていなければ、「3」番目の発話コンテンツと対応する判定テーブルの判定結果の欄には「ポインティング不可能」が記憶される。
続いて、プロセッサ16は、ステップS91で変数iをインクリメントして、ステップS93で変数iが最大値よりも大きいかを判断する。ステップS93で“NO”であれば、プロセッサ16はステップS83の処理に戻る。一方、ステップS93で“YES”であれば、プロセッサ16は第2ポインティング判定処理を終了して、出力制御処理に戻る。
なお、ステップS55,S85の処理を実行するプロセッサ16は範囲判定手段として機能する。また、ステップS59,S87の処理を実行するプロセッサ16は設定手段として機能する。
また、展示物Eに対するポインティングは、ロボット10の顔の動きや、視線などによって行われてもよい。また、ロボット10は、レーザポインタや指し棒などのポインティング手段を備えていてもよい。また、他の実施例では、第1ポインティングおよび第2ポインティングに加えて、指示する範囲を指などで指定する第3ポインティングをロボット10が行うようにしてもよい。
また、その他の実施例では、ロボット10が中央制御装置14を有し、ロボット10が距離画像センサ12から無線接続または有線接続によって3次元情報を直接取得できてもよい。この場合、ロボット10単独で、ユーザに出力する発話コンテンツを決めて、出力することが出来る。たとえば、第1実施例の出力制御処理を実行するロボット10のプロセッ90は、ステップS9の処理ではユーザ情報に基づいてユーザの近傍に移動し、ステップS13の処理では展示物Eを指さしによって指し、ステップS17の処理では自身で選択した発話コンテンツを出力する。また、第2実施例の出力制御処理を実行するロボット10のプロセッサ90は、ステップS9およびステップS13の処理は第1実施例と同様に実行し、ステップS41の処理では優先度が最も高い発話コンテンツから、判定テーブルに基づいて、第1発話コンテンツまたは第2発話コンテンツを選んだうえで、選んだ発話コンテンツを出力する。
また、さらにその他の実施例では、ロボット10がユーザまたはユーザの入場を検出したときに、ロボット10が発話コンテンツを出力するために、中央制御装置14に対して出力制御処理の実行命令を出してもよい。このように、ロボット10の自律行動をサポートするために、中央制御装置14がロボット10によって利用されてもよい。
また、他の実施例では、ロボット10がディスプレイを有している場合は、発話コンテンツは音声だけでなく、映像を利用して出力されてもよい。たとえば、発話コンテンツを出力するロボット10は、自身のディスプレイに映像を表示しながら、展示物Eの説明を行う。
また、ロボット10は、実施例のような車輪移動型のロボットだけでなく、2足歩行型のロボットであってもよい。
また、空間に入ったユーザは、RFIDタグではなく、顔認識によって識別されてもよい。
また、本実施例で説明した複数のプログラムは、データ配信用のサーバのHDDに記憶され、ネットワークを介して本実施例と同等の構成のシステムに配信されてもよい。また、CD, DVD, BD (Blu-ray(登録商標) Disc)などの光学ディスク、USBメモリおよびメモリカードなどの記憶媒体にこれらのプログラムを記憶させた状態で、その記憶媒体が販売または配布されてもよい。そして、上記したサーバや記憶媒体などを通じてダウンロードされた、上記複数のプログラムが、本実施例と同等の構成のシステムに適用された場合、本実施例と同等の効果が得られる。
そして、本明細書中で挙げた、具体的な数値は、いずれも単なる一例であり、製品の仕様変更などに応じて適宜変更可能である。また、本明細書中で挙げた、具体的な発話コンテンツは、展示会場や展示物の種類に応じて適宜変更可能である。
10 …ロボット
12a,12b …距離画像センサ
14 …中央制御装置
16 …プロセッサ
18 …メモリ
24 …発話コンテンツDB
60R,60L …上腕
64R,64L …前腕
66R,66L …手
90 …プロセッサ
94 …メモリ
100 …ロボット制御システム
1000 …ネットワーク

Claims (10)

  1. 展示物が置かれた空間において自律移動可能なロボットを含む、ロボット制御システムであって、
    前記展示物をポインティングによって指すことが可能かを判定する判定手段、
    前記判定手段による判定結果に基づいて、発話コンテンツの優先度を計算する計算手段、
    前記計算手段によって計算された優先度がもっとも高い発話コンテンツを選択する選択手段、および
    選択された発話コンテンツを、前記ロボットから出力させる出力手段を備える、ロボット制御システム。
  2. 前記発話コンテンツは、ポインティングを伴う第1発話コンテンツおよびポインティングを伴わない第2発話コンテンツを含み、
    選択された発話コンテンツにおいてポインティングによって指すことが可能だと判定されているとき、前記展示物をポインティングによって指すポインティング手段を備え、
    前記出力手段は、選択された発話コンテンツにおいてポインティングによって指すことが可能だと判定されているとき前記第1発話コンテンツを出力し、前記選択された発話コンテンツにおいてポインティングによって指すことが不可能だと判定されたとき、前記第2発話コンテンツを出力する、請求項1記載のロボット制御システム。
  3. 前記判定手段は、ユーザが所定範囲に入っているかを判定する範囲判定手段および前記ユーザが所定範囲に入ったと判定されたとき、ポインティングによって指すことが可能だと設定する設定手段を含み、
    前記ポインティング手段は、選択された発話コンテンツにおいてポインティングによって指すことが可能だと設定されているとき、前記展示物をポインティングによって指す、請求項2記載のロボット制御システム。
  4. 前記ポインティングは、前記展示物の一部を指す第1ポインティングを含み、
    前記判定手段は、前記ユーザと前記展示物との間に障害物が無いかを判定する障害物判定手段をさらに含み、
    前記設定手段は、前記ユーザが所定範囲に入っており、かつ当該ユーザと前記展示物との間に障害物が無いと判定されたとき、前記第1ポインティングによって指すことが可能だと設定する第1設定手段を含み、
    前記ポインティング手段は、選択された発話コンテンツにおいて第1ポインティングによって指すことが可能だと設定されているとき、前記展示物の一部を第1ポインティングによって指す、請求項3記載のロボット制御システム。
  5. 前記ポインティングは、前記展示物の全体を指す第2ポインティングを含み、
    前記設定手段は、前記ユーザが所定範囲に入っていると判定されたとき、前記第2ポインティングによって指すことが可能だと設定する第2設定手段を含み、
    前記ポインティング手段は、選択された発話コンテンツにおいて第2ポインティングによって指すことが可能だと設定されているとき、前記展示物の全体を第2ポインティングによって指す、請求項3または4記載のロボット制御システム。
  6. 展示物が置かれた空間において自律移動可能なロボットを含む、ロボット制御システムのプロセッサを、
    前記展示物をポインティングによって指すことが可能かを判定する判定手段、
    前記判定手段による判定結果に基づいて、発話コンテンツの優先度を計算する計算手段、
    前記計算手段によって計算された優先度がもっとも高い発話コンテンツを選択する選択手段、および
    選択された発話コンテンツを、前記ロボットから出力させる出力手段として機能させる、出力制御プログラム。
  7. 展示物が置かれた空間において自律移動可能なロボットを含む、ロボット制御システムにおける出力制御方法であって、前記ロボット制御システムのプロセッサが、
    前記展示物をポインティングによって指すことが可能かを判定する判定ステップ、
    前記判定ステップによる判定結果に基づいて、発話コンテンツの優先度を計算する計算ステップ、
    前記計算ステップによって計算された優先度がもっとも高い発話コンテンツを選択する選択ステップ、および
    選択された発話コンテンツを、前記ロボットから出力させる出力ステップを実行する、出力制御方法。
  8. 展示物が置かれた空間において自律移動可能な、ロボットであって、
    前記展示物をポインティングによって指すことが可能かを判定する判定手段、
    前記判定手段による判定結果に基づいて、発話コンテンツの優先度を計算する計算手段、
    前記計算手段によって計算された優先度がもっとも高い発話コンテンツを選択する選択手段、および
    選択された発話コンテンツを出力する出力手段を備える、ロボット。
  9. 展示物が置かれた空間において自律移動可能な、ロボットのプロセッサを、
    前記展示物をポインティングによって指すことが可能かを判定する判定手段、
    前記判定手段による判定結果に基づいて、発話コンテンツの優先度を計算する計算手段、
    前記計算手段によって計算された優先度がもっとも高い発話コンテンツを選択する選択手段、および
    選択された発話コンテンツを出力する出力手段として機能させる、出力制御プログラム。
  10. 展示物が置かれた空間において自律移動可能な、ロボットにおける出力制御方法であって、前記ロボットのプロセッサが、
    前記展示物をポインティングによって指すことが可能かを判定する判定ステップ、
    前記判定ステップによる判定結果に基づいて、発話コンテンツの優先度を計算する計算ステップ、
    前記計算ステップによって計算された優先度がもっとも高い発話コンテンツを選択する選択ステップ、および
    選択された発話コンテンツを出力する出力ステップを実行する、出力制御方法。
JP2013202374A 2013-09-27 2013-09-27 ロボット制御システム、ロボット、出力制御プログラムおよび出力制御方法 Active JP6142306B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013202374A JP6142306B2 (ja) 2013-09-27 2013-09-27 ロボット制御システム、ロボット、出力制御プログラムおよび出力制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013202374A JP6142306B2 (ja) 2013-09-27 2013-09-27 ロボット制御システム、ロボット、出力制御プログラムおよび出力制御方法

Publications (2)

Publication Number Publication Date
JP2015066622A JP2015066622A (ja) 2015-04-13
JP6142306B2 true JP6142306B2 (ja) 2017-06-07

Family

ID=52833912

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013202374A Active JP6142306B2 (ja) 2013-09-27 2013-09-27 ロボット制御システム、ロボット、出力制御プログラムおよび出力制御方法

Country Status (1)

Country Link
JP (1) JP6142306B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11994875B2 (en) 2021-03-16 2024-05-28 Honda Motor Co., Ltd. Control device, control method, and control system

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107784354B (zh) * 2016-08-17 2022-02-25 华为技术有限公司 机器人的控制方法及陪伴机器人
CN106863302B (zh) * 2017-02-28 2023-07-25 广东工业大学 一种机器人充电装置及其实现方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4399603B2 (ja) * 2005-02-28 2010-01-20 株式会社国際電気通信基礎技術研究所 コミュニケーションロボット
JP4822319B2 (ja) * 2005-10-27 2011-11-24 株式会社国際電気通信基礎技術研究所 コミュニケーションロボットおよびそれを用いた注意制御システム
JP4539600B2 (ja) * 2006-04-11 2010-09-08 トヨタ自動車株式会社 案内ロボット
JP2009166184A (ja) * 2008-01-17 2009-07-30 Saitama Univ ガイドロボット
JP5077077B2 (ja) * 2008-05-30 2012-11-21 富士通株式会社 移動説明装置、および、移動説明プログラム
JP2010049374A (ja) * 2008-08-20 2010-03-04 Fujitsu Ltd 展示案内システム
JP2011020223A (ja) * 2009-07-16 2011-02-03 Otsuka Bijutsu Zaidan 展示品説明ロボット及びロボットを使用した展示品説明方法
KR20110068830A (ko) * 2009-12-16 2011-06-22 주식회사코어벨 로봇 전시안내 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11994875B2 (en) 2021-03-16 2024-05-28 Honda Motor Co., Ltd. Control device, control method, and control system

Also Published As

Publication number Publication date
JP2015066622A (ja) 2015-04-13

Similar Documents

Publication Publication Date Title
US20230091359A1 (en) Augmented reality interaction techniques
JP6150429B2 (ja) ロボット制御システム、ロボット、出力制御プログラムおよび出力制御方法
JP6134895B2 (ja) ロボット制御システム、ロボット制御プログラムおよび説明ロボット
JP4822319B2 (ja) コミュニケーションロボットおよびそれを用いた注意制御システム
US9517559B2 (en) Robot control system, robot control method and output control method
JP5186723B2 (ja) コミュニケーションロボットシステムおよびコミュニケーションロボットの視線制御方法
JP5366048B2 (ja) 情報提供システム
JP6069606B2 (ja) ロボット制御システムおよびロボット制御方法
JP2007260822A (ja) 道案内ロボット
JP5318623B2 (ja) 遠隔操作装置および遠隔操作プログラム
WO2015180497A1 (zh) 一种基于立体视觉的动作采集和反馈方法及系统
Fritsche et al. First-person tele-operation of a humanoid robot
JP6134894B2 (ja) ロボット制御システムおよびロボット
JP5145569B2 (ja) 対象物特定方法および装置
CN110549353B (zh) 力觉视觉化装置、机器人以及存储力觉视觉化程序的计算机可读介质
CN105930775A (zh) 基于灵敏度参数的人脸朝向识别方法
JP6142306B2 (ja) ロボット制御システム、ロボット、出力制御プログラムおよび出力制御方法
JP4962940B2 (ja) 道案内システム
JP2017170568A (ja) サービス提供ロボットシステム
JP2023507241A (ja) 随意のデュアルレンジ運動学を用いたプロキシコントローラスーツ
KR20140009900A (ko) 로봇 제어 시스템 및 그 동작 방법
JP2009258884A (ja) ユーザインタフェイス
JP4793904B2 (ja) コミュニケーションロボットシステムおよびコミュニケーションロボット
JP6142307B2 (ja) 注目対象推定システムならびにロボットおよび制御プログラム
JP5732633B2 (ja) コミュニケーションロボット

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20160218

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170307

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170313

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170328

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170405

R150 Certificate of patent or registration of utility model

Ref document number: 6142306

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250