(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-07-08
(45)【発行日】2022-07-19
(54)【発明の名称】装置、ロボット、方法、及びプログラム
(51)【国際特許分類】
B25J 13/00 20060101AFI20220711BHJP
B25J 5/00 20060101ALI20220711BHJP
G05D 1/02 20200101ALI20220711BHJP
【FI】
B25J13/00 Z
B25J5/00 E
G05D1/02 K
(21)【出願番号】P 2018035054
(22)【出願日】2018-02-28
【審査請求日】2021-02-05
(73)【特許権者】
【識別番号】000005821
【氏名又は名称】パナソニックホールディングス株式会社
(74)【代理人】
【識別番号】100067828
【氏名又は名称】小谷 悦司
(74)【代理人】
【識別番号】100115381
【氏名又は名称】小谷 昌崇
(74)【代理人】
【識別番号】100118049
【氏名又は名称】西谷 浩治
(72)【発明者】
【氏名】宮崎 亮太
【審査官】臼井 卓巳
(56)【参考文献】
【文献】特開2017-213112(JP,A)
【文献】国際公開第2017/175559(WO,A1)
【文献】特開2008-246665(JP,A)
【文献】特開2012-161851(JP,A)
【文献】国際公開第2016/068262(WO,A1)
【文献】米国特許出願公開第2017/0087726(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 5/00-13/08
G05D 1/02
(57)【特許請求の範囲】
【請求項1】
ユーザとコミュニケーションする装置であって、
前記装置周辺の映像を取得するカメラと、
前記装置を駆動させる駆動機構と、
スピーカと、
メモリと、
プロセッサと、を備え、
前記プロセッサは、
第1ユーザの指示に基づいて遠隔的に前記装置のアプリケーションが起動された場合は、前記映像に基づいて、前記装置の現在位置が、第2ユーザの死角領域に含まれているか判断し、前記死角領域は、前記第2ユーザの視線方向を含まず、且つ、前記第1ユーザの位置と前記第2ユーザの位置とを結ぶ線分を、前記第2ユーザから前記第1ユーザとは反対方向に延伸させた第1半直線を基準として時計回りに所定角度動かして得られる第2半直線と、前記第1半直線を基準として反時計回りに前記所定角度動かして得られる第3半直線とに挟まれた領域であり、
前記装置の現在位置が前記死角領域に含まれていないと判断された場合は、前記死角領域に含まれる目標地点を設定し、
前記駆動機構を制御して、前記装置を前記目標地点に移動させ、
前記スピーカに、前記アプリケーションに対応する音声を出力させる、
装置。
【請求項2】
前記第1ユーザは、前記第2ユーザの保護者である、
請求項1記載の装置。
【請求項3】
前記プロセッサは、前記装置の現在位置が前記死角領域に含まれていると判断された場合、前記装置を移動させずに、前記スピーカに前記アプリケーションに対応する音声を出力させる、
請求項1記載の装置。
【請求項4】
ユーザとコミュニケーションするロボットであって、
前記
ロボット周辺の映像を取得するカメラと、
前記
ロボットを駆動させる駆動機構と、
スピーカと、
メモリと、
プロセッサと、を備え、
前記プロセッサは、
第1ユーザの指示に基づいて遠隔的に前記
ロボットのアプリケーションが起動された場合は、前記映像に基づいて、前記
ロボットの現在位置が、第2ユーザの死角領域に含まれているか判断し、前記死角領域は、前記第2ユーザの視線方向を含まず、且つ、前記第1ユーザの位置と前記第2ユーザの位置とを結ぶ線分を、前記第2ユーザから前記第1ユーザとは反対方向に延伸させた第1半直線を基準として時計回りに所定角度動かして得られる第2半直線と、前記第1半直線を基準として反時計回りに前記所定角度動かして得られる第3半直線とに挟まれた領域であり、
前記
ロボットの現在位置が前記死角領域に含まれていないと判断された場合は、前記死角領域に含まれる目標地点を設定し、
前記駆動機構を制御して、前記
ロボットを前記目標地点に移動させ、
前記スピーカに、前記アプリケーションに対応する音声を出力させる、
ロボット。
【請求項5】
ユーザとコミュニケーションする装置における方法であって、
前記装置は、カメラ、プロセッサ、スピーカ、及び
駆動機構を備え、
第1ユーザの指示に基づいて遠隔的に前記装置のアプリケーションが起動された場合は、前記カメラにより取得された前記装置周辺の映像に基づいて、前記装置の現在位置が、第2ユーザの死角領域に含まれているか判断し、前記死角領域は、前記第2ユーザの視線方向を含まず、且つ、前記第1ユーザの位置と前記第2ユーザの位置とを結ぶ線分を、前記第2ユーザから前記第1ユーザとは反対方向に延伸させた第1半直線を基準として時計回りに所定角度動かして得られる第2半直線と、前記第1半直線を基準として反時計回りに前記所定角度動かして得られる第3半直線とに挟まれた領域であり、
前記装置の現在位置が前記死角領域に含まれていないと判断された場合は、前記死角領域に含まれる目標地点を設定し、
前記駆動機構を制御して、前記装置を前記目標地点に移動させ、
前記スピーカに、前記アプリケーションに対応する音声を出力させる、
方法。
【請求項6】
請求項5記載の方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、遠隔操作可能な装置等に関するものである。
【背景技術】
【0002】
従来から種々のロボットを遠隔操作する方法が提案されている。例えば、特許文献1には、オペレータの遠隔操作の回数を可能な限り減らすことを目的として、遠隔操作時のロボットの動作履歴情報に基づいてデータベースを構築し、対話相手とロボットとの会話状況を検出し、検出した会話状況に対応するデータベースを参照し、参照したデータベースに基づいて自律制御による会話行動をロボットに実行させるロボット制御システムが開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、特許文献1では、ロボットの操作者によるロボットへの指示がロボットの対話相手となる人物に気づかれることを防止する措置が何ら採られていないので、更なる改善の必要がある。
【課題を解決するための手段】
【0005】
本開示の一態様に係る装置は、ユーザとコミュニケーションする装置であって、
前記装置周辺の映像を取得するカメラと、
前記装置を駆動させる駆動機構と、
スピーカと、
メモリと、
プロセッサと、を備え、
前記プロセッサは、
第1ユーザの指示に基づいて遠隔的に前記装置のアプリケーションが起動された場合は、前記映像に基づいて、前記装置の現在位置が、第2ユーザの死角領域に含まれているか判断し、前記死角領域は、前記第2ユーザの視線方向を含まず、且つ、前記第1ユーザの位置と前記第2ユーザの位置とを結ぶ線分を、前記第2ユーザから前記第1ユーザとは反対方向に延伸させた第1半直線を基準として時計回りに所定角度動かして得られる第2半直線と、前記第1半直線を基準として反時計回りに前記所定角度動かして得られる第3半直線とに挟まれた領域であり、
前記装置の現在位置が前記死角領域に含まれていないと判断された場合は、前記死角領域に含まれる目標地点を設定し、
前記駆動機構を制御して、前記装置を前記目標地点に移動させ、
前記スピーカに、前記アプリケーションに対応する音声を出力させる。
【発明の効果】
【0006】
本開示によれば、第1ユーザによる装置への指示が第2ユーザに気づかれることを防止できる。
【図面の簡単な説明】
【0007】
【
図1】本開示の実施の形態における装置が実装されたロボットの構成の一例を示す図である。
【
図2】
図1に示すロボットの処理の一例を示すフローチャートである。
【
図3】
図2のS102の処理の詳細を示すフローチャートである。
【
図5】
図1に示すロボットの外観の一例を示す図である。
【
図6】
図5に示すロボットの内部を背後から見た図である。
【発明を実施するための形態】
【0008】
(本開示に係る一態様を発明するに至った経緯)
本発明者は、母親等の保護者による子供のしつけを支援するロボットの研究を行っている。しつけの支援内容としては、例えば、子供に対して部屋の整頓又は勉強を促すメッセージをロボットに発話させたり、子供に対する絵本の読み聞かせをロボットに実行させたりする内容が該当する。このような行動をロボットにとらせる場合、例えば、保護者は、スマートフォンなどの携帯端末を取り出して、このような行動をロボットにとらせるためのアプリケーションの起動指示を入力する必要がある。
【0009】
しかし、保護者がおもむろにスマートフォンを取り出して起動指示を入力すると、そのことに子供の関心が向いてしまうので、ロボットの行動が保護者の指示に基づくものであると子供に気づかれてしまうという課題がある。これにより、子供にしらけ感を与えるのみならず、保護者に対する子供の反発心を却って助長させ兼ねず、十分なしつけの効果が期待できなくなる虞がある。
【0010】
上述の特許文献1では、オペレータはネットワークを介してロボットに接続された端末装置を操作するので、ロボットの対話相手となる人物は、遠隔地におり、オペレータの操作を視認し得る環境下にはいない。したがって、上記の課題は特許文献1に生じ得ない。更に、本発明者は、上記の課題は、従来、存在しなかったと認識している。
【0011】
そこで、本発明者は、操作者である第1ユーザがアプリケーションの起動指示を入力した場合、指示の直後に第2ユーザの関心を第1ユーザからロボットに移させるような行動をロボットに採らせることにより、上記の課題を解決できるとの知見を得た。
【0012】
本開示は、このような知見に基づいてなされたものであり、第1ユーザによるロボット(装置)への指示が第2ユーザに気づかれることを防止し得る技術を提供する。
【0013】
本開示の一態様に係る装置は、ユーザとコミュニケーションする装置であって、
前記装置周辺の映像を取得するカメラと、
前記装置を駆動させる駆動機構と、
スピーカと、
メモリと、
プロセッサと、を備え、
前記プロセッサは、
第1ユーザの指示に基づいて遠隔的に前記装置のアプリケーションが起動された場合は、前記映像に基づいて、前記装置の現在位置が、第2ユーザの死角領域に含まれているか判断し、前記死角領域は、前記第2ユーザの視線方向を含まず、且つ、前記第1ユーザの位置と前記第2ユーザの位置とを結ぶ線分を、前記第2ユーザから前記第1ユーザとは反対方向に延伸させた第1半直線を基準として時計回りに所定角度動かして得られる第2半直線と、前記第1半直線を基準として反時計回りに前記所定角度動かして得られる第3半直線とに挟まれた領域であり、
前記装置の現在位置が前記死角領域に含まれていないと判断された場合は、前記死角領域に含まれる目標地点を設定し、
前記駆動機構を制御して、前記装置を前記目標地点に移動させ、
前記スピーカに、前記アプリケーションに対応する音声を出力させる。
【0014】
本構成によれば、第1ユーザの指示に基づいて装置のアプリケーションが起動された場合、第2ユーザの死角領域に装置が存在しなければ、装置は死角領域に移動する。これにより、第2ユーザの視線を第1ユーザが視認可能な方向から第1ユーザが視認不可能な方向に移すことができる。その結果、第2ユーザの関心を第1ユーザから装置へと移すことができ、第1ユーザによる装置への指示が第2ユーザに気づかれてしまうことを防止できる。
【0015】
上記構成において、前記第1ユーザは、前記第2ユーザの保護者であってもよい。
【0016】
本構成によれば、保護者による装置への指示が第2ユーザに気付かれてしまうことを防止できる。
【0017】
上記構成において、前記プロセッサは、前記装置の現在位置が前記死角領域に含まれていると判断された場合、前記装置を移動させずに、前記スピーカに前記アプリケーションに対応する音声を出力させてもよい。
【0018】
本構成によれば、装置を死角領域に移動させなくても、装置が音声を出力することで、第2ユーザの関心を第1ユーザから装置へと移すことができる。
【0019】
本開示は、このような装置を実装するロボット、このような装置に含まれる特徴的な各ステップを備える方法、及び特徴的な各ステップをコンピュータに実行させるコンピュータプログラムとして実現することもできる。そして、そのようなコンピュータプログラムを、CD-ROM等のコンピュータ読取可能な非一時的な記録媒体あるいはインターネット等の通信ネットワークを介して流通させることができるのは、言うまでもない。
【0020】
なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、構成要素、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また全ての実施の形態において、各々の内容を組み合わせることもできる。
【0021】
(実施の形態)
(全体構成)
図1は、本開示の実施の形態におけるロボットの構成の一例を示す図である。
図1に示すロボットは、センサ入力部100、行動実行部200、及び出力部300を備える。
【0022】
センサ入力部100は、映像入力部101を備える。映像入力部101は、ロボットの周辺の映像を取得するカメラで構成されている。ここで、映像入力部101は、ロボットに対して360度の方位の映像が取得可能な全方位カメラで構成されてもよいし、所定の画角範囲での映像が取得可能な通常のカメラで構成されてもよい。本開示では、映像入力部101は、例えば、所定のフレームレート(例えば、1秒当たり60フレーム)でロボットの周辺の映像を取得する。なお、映像入力部101は、例えば、周囲に位置する物体までの距離が計測可能な、ステレオカメラ又はデプスカメラで構成されてもよい。デプスカメラは、周囲に向けて照射した赤外光が物体に反射して戻ってくるまでの時間を計測することで、物体の距離を複数の画素毎に検出することができるカメラである。
【0023】
行動実行部200は、指示受信部201、位置座標取得部202、位置関係判断部203、走行位置判断部204、ロボット走行部205、音声合成部206、及びアプリケーション実行部207を備える。
【0024】
行動実行部200を構成する要素は、例えば、行動処理を行なうプログラムをCPU等のプロセッサが実行することで実現される。行動処理を行うプログラムは、ロボットに組み込まれたメモリー又はロボットと通信可能に接続された端末に組み込まれたメモリーに格納されており、プロセッサによって実行される。また、行動実行部200を構成する全ての要素は、同一のロボット又は同一の端末に実装されてもよい。或いは、行動実行部200を構成する全ての要素は、光ファイバ、無線、及び公衆電話回線など任意のネットワークにより接続される別の端末やサーバ上に個別に実装され、通信することによって実現されてもよい。また、行動実行部200は一部の要素がロボットに実装され、残りの要素がサーバに実装されてもよい。
【0025】
指示受信部201は、ロボットを遠隔操作する第1ユーザが所持する携帯端末と通信するための通信回路と、その通信回路を制御するプロセッサとを備え、第1ユーザによるロボットの指示を受信する。本開示では、指示受信部201は、第1ユーザによる第2ユーザへのしつけを支援するアプリケーションの起動指示及びそのアプリケーションの実行中において第1ユーザによるロボットへの指示を受信する。ここで、第1ユーザは、例えば、第2ユーザの保護者(例えば、母親、父親、又は祖父母など)が該当し、第2ユーザは、子供が該当する。また、本開示では、子供として、特に幼児を想定する。
【0026】
しつけを支援するアプリケーションは、例えば、部屋の整頓を子供に促すというように、所定の生活習慣を子供に身につけさせるための行動をロボットに実行させるアプリケーションが該当する。ここで、ロボットが、いきなり、「部屋を整頓しなさい」というような発話を行うと、却って第2ユーザの反発をかってしまう虞がある。
【0027】
そこで、しつけを支援するアプリケーションは、単に、部屋の整頓を指示する発話をロボットに行わせるようなアプリケーションではなく、第2ユーザの関心をロボットに十分引きつけてから、部屋の整頓を促すメッセージをロボットに発話させるようなアプリケーションが採用できる。具体的には、アプリケーションは、以下の行動をロボットにとらせることができる。まず、ロボットは、第2ユーザに対してクイズ又は世間話の発話をし、第2ユーザの関心を自身に引きつけた後、第2ユーザに対して部屋の整頓を促す発話をする。また、ロボットは、第2ユーザの整頓作業中においても第2ユーザに対して励ましのメッセージを発話する。そして、整頓が終了すると、ロボットは、第2ユーザを褒めるメッセージを発話する。
【0028】
第1ユーザが所持する携帯端末としては、例えば、スマートフォン、タブレット、又は、携帯電話が採用できる。なお、第1ユーザは携帯端末に代えて、据え置き型のパーソナルコンピュータを用いて、アプリケーションの起動指示を入力してもよい。また、携帯端末とロボットとは例えば、Wifi(登録商標)又はブルーツース(登録商標)等の無線により通信可能に接続されている。但し、これは一例であり、携帯端末とロボットとは有線で接続されていてもよい。
【0029】
位置座標取得部202は、映像入力部101から映像データを受け取り、映像データから特徴量を抽出し、抽出した特徴量からロボットの自己位置を推定すると共にロボットの周囲の環境地図を構築する。また、位置座標取得部202は、映像データから第1ユーザ及び第2ユーザを抽出し、抽出した第1ユーザ及び第2ユーザの位置を推定する。
【0030】
なお、未知の環境の中で、自己位置を推定しながら環境地図を生成する技術として、SLAM(Simultaneous Localization and Mapping)が知られている。したがって、位置座標取得部202は、SLAMを用いて、自己位置の推定と、第1ユーザ及び第2ユーザの位置の推定と、環境地図の構築とを行えばよい。
【0031】
なお、SLAMは、単眼カメラ、デプスカメラ、又はステレオカメラで取得されたいずれの映像データに対しても適用可能である。そのため、位置座標取得部202は、映像入力部101が単眼カメラ、デプスカメラ、及びステレオカメラのいずれのカメラで構成されたとしても、SLAMを適用して、自己位置推定等を行うことが可能である。
【0032】
本開示では、環境地図は、ロボットを真上から見たときの縦×横の2軸からなる2次元の地図データで構成されている。そのため、ロボットの自己位置、第1ユーザ及び第2ユーザの位置は、2次元の座標データで構成される。但し、これは一例であり、環境地図は縦×横×高さの3軸からなる3次元の地図データで構成されてもよい。この場合、ロボットの自己位置、第1ユーザ及び第2ユーザの位置は、それぞれ、3次元の座標データで構成される。
【0033】
また、位置座標取得部202は、予めメモリーに記憶された第1ユーザ及び第2ユーザの特徴量を映像データと照合することで、映像データから第1ユーザ及び第2ユーザを抽出し、抽出した映像データ上の座標データから第1ユーザ及び第2ユーザの位置を推定すればよい。なお、第1ユーザ及び第2ユーザの特徴量としては、例えば、第1ユーザ及び第2ユーザの顔の特徴量及び体型の特徴量が採用できる。
【0034】
位置関係判断部203は、アプリケーション実行部207によりアプリケーションが起動された場合、ロボットが第2ユーザの死角領域に位置するか否かを判定する。
【0035】
図4は、死角領域αの一例を示す図である。死角領域αは、第2ユーザの視線方向41を含まず、且つ、第1ユーザの位置P1と第2ユーザの位置P2とを結ぶ線分42を、第2ユーザの位置P2から第1ユーザの位置P1とは反対方向に延伸させた第1半直線43を基準として時計回りに第1半直線43を所定角度θ/2動かして得られる第2半直線44と、第1半直線43を基準として反時計回りに第1半直線43を所定角度θ/2動かして得られる第3半直線45とに挟まれた扇状の領域である。
【0036】
ここで、死角領域αは、位置P2において第1ユーザとは反対側に位置する領域であり、位置P2に位置する第2ユーザの視線が死角領域α内にある場合、第2ユーザの視野内から第1ユーザが外れる領域である。したがって、第2半直線44と第3半直線45とがなす所定角度θは、位置P2に位置する第2ユーザの視野内に第1ユーザが入らなくなる角度が採用でき、例えば、30度、45度、又は60度等の値が採用できる。
【0037】
具体的には、位置関係判断部203は、指示受信部201がアプリケーションの起動指示を受信した場合、位置座標取得部202により取得されたロボットの現在位置P3と、第1ユーザ及び第2ユーザの位置P1及び位置P2とをそれぞれ環境地図上にプロットする。そして、位置関係判断部203は、プロットした位置P1及び位置P2に基づいて位置P2に死角領域αを設定する。そして、位置関係判断部203は、現在位置P3が死角領域α外に位置すれば、ロボットは死角領域α内に位置していないと判定し、現在位置P3が死角領域α内に位置すれば、ロボットは死角領域α内に位置すると判定すればよい。
【0038】
図1に参照を戻す。走行位置判断部204は、位置関係判断部203により、ロボットが死角領域α内に位置していないと判定された場合、死角領域α内にロボットの目標位置P4を設定する。
図4を参照する。目標位置P4としては、例えば、第1半直線43上において、第2ユーザからロボットまでの距離がロボットと第2ユーザとが対話をする上で適切な予め定められた距離だけ離間した位置が採用できる。例えば、目標位置P4としては、第1半直線43上において、第2ユーザの位置P2から50cm、1m、2mといった距離だけ離間した位置が採用できる。但し、これは一例である。
【0039】
なお、
図4では、第2ユーザの視線方向41は、線分42上にあると仮定の下、第2ユーザの視線を第1ユーザに対して真逆の方向に向かせるために、目標位置P4は第1半直線43上に設定されているが、実際の第2ユーザの視線方向は必ずしも線分42上にあるとは限らない。したがって、実際の第2ユーザの視線方向が検出可能な構成が採用される場合、走行位置判断部204は、検出された視線方向に対して位置P2を起点に反対方向に延伸する半直線を第1半直線43’として設定し、第1半直線43’が死角領域α内に含まれていれば、第1半直線43’上に目標位置P4を設定してもよい。一方、第1半直線43’が死角領域α内に位置していなければ、第1半直線43’上に目標位置P4を設定すると、その目標位置P4は死角領域α外に位置することになるため、走行位置判断部204は、目標位置P4を第1半直線43上に設定すればよい。
【0040】
なお、第2ユーザの実際の視線方向は、例えば、位置座標取得部202が映像データから視線検出処理を適用することで抽出すればよい。
【0041】
図1に参照を戻す。ロボット走行部205は、走行位置判断部204により設定された目標位置P4にロボットを移動させるための走行コマンドをアクチュエータ制御部302に出力する。ここで、走行コマンドは、例えば、ロボットの正面方向が第1半直線43の延伸方向に向くようにロボットを旋回させ、且つ、ロボットを現在位置P3から目標位置P4に向けて走行ささせるコマンドである。
【0042】
アプリケーション実行部207は、指示受信部201によってアプリケーションを起動する指示が受信された場合、該当するアプリケーションを起動させる。そして、アプリケーション実行部207は必要に応じて、ロボットを走行させるための走行コマンドをロボット走行部205に出力したり、ロボットに発話をさせる発話コマンドを音声合成部206に出力したりする。
【0043】
音声合成部206は、アプリケーション実行部207から出力される発話コマンドに対応する発話をロボットに行わせるための音声データを生成し、音声出力部301に出力する。
【0044】
出力部300は、音声出力部301及びアクチュエータ制御部302を備える。音声出力部301は音声合成部206によって生成された音声データを音声信号に変換し、スピーカーから出力させる。アクチュエータ制御部302は、アプリケーション実行部207又はロボット走行部205によって生成された走行コマンドにしたがってロボットが走行するように、ロボットのアクチュエータ又はモータを制御する。
【0045】
なお、行動実行部200がロボットに対して無線又は有線を介して通信可能に接続された端末に実装され、且つ、音声出力部301及びアクチュエータ制御部302がロボットに実装される場合、音声出力部301は、音声合成部206から送信される音声データを有線又は無線を介して受信すればよい。また、アクチュエータ制御部302は、ロボット走行部205から送信される走行コマンドを有線又は無線を介して受信すればよい。
【0046】
図2は、
図1に示すロボットの処理の一例を示すフローチャートである。
図3は、
図2のS102の処理の詳細を示すフローチャートである。
【0047】
以下、
図2、
図3、及び
図4を参照して、アプリケーションをロボットが起動する際の処理について説明する。
【0048】
第1ユーザによるアプリケーションの起動指示が指示受信部201により受信され、アプリケーション実行部207により第2ユーザのしつけを支援するためのアプリケーションが起動されると(S101でYES)、位置関係判断部203は、処理をS102に進める。一方、アプリケーションが起動されていなければ(S101でNO)、処理はS101で待機する。ここで、起動指示は、第1ユーザが携帯する携帯端末に対して第1ユーザが入力する操作を行うことで、携帯端末からロボットに対して送信される。
【0049】
S102では、位置関係判断部203は、
図4に示すように、ロボットが第2ユーザの死角領域α内に位置するか否かを判定する。ロボットが死角領域α内に位置しない場合(S101でNO)、走行位置判断部204は、死角領域α内にロボットの目標位置P4を設定し、ロボット走行部205は、設定された目標位置P4にロボットを移動させる(S103)。
【0050】
図4を参照し、ロボット走行部205は、ロボットの正面方向が第1半直線43の延伸方向に向くようにロボットを旋回させ、且つ、ロボットを現在位置P3から目標位置P4に向けて移動させる走行コマンドを生成し、アクチュエータ制御部302に出力する。これにより、ロボットは正面方向を第1半直線43の延伸方向に向くように旋回する動作を行った後、目標位置P4への移動を開始する。
【0051】
次に、ロボット走行部205は、ロボットが目標位置P4に到達したか否かを判定する(S104)。ロボットが目標位置P4に到達すると(S104でYES)、アプリケーション実行部207は、ロボットに第2ユーザへの発話を開始させる(S105)。一方、ロボットが目標位置P4に到達していなければ(S104でNO)、ロボット走行部205は、ロボットの移動を継続させる。ここで、ロボット走行部205は、ロボットの走行開始時に、現在位置P3から目標位置P4までのロボットの速度の変動パターンを設定し、設定した速度の変動パターンにしたがってロボットを目標位置P4まで移動させればよい。ここで、速度の変動パターンとしては、例えば、現在位置P3から第1距離までは徐々にロボットを加速させ、第1距離から目標位置P4の手前の第2距離まではロボットを一定速度で走行させ、第2距離からは目標位置P4までは目標位置P4で速度が0になるようにロボットを徐々に減速させるパターンが採用できる。これにより、ロボットを目標位置P4に向けてスムーズに移動させると同時に目標位置P4でロボットを正確に停止させることができる。
【0052】
次に、
図2のS102の処理の詳細について
図3を用いて説明する。S201では、位置関係判断部203は、位置座標取得部202が映像データから算出したロボットの現在位置P3の座標データを位置座標取得部202から取得する。S202では、位置関係判断部203は、位置座標取得部202が映像データから算出した第2ユーザの位置P2の座標データを位置座標取得部202から取得する。S203では、位置関係判断部203は、位置座標取得部202が映像データから算出した第1ユーザの位置P1の座標データを取得する。
【0053】
S204では、位置関係判断部203は、位置座標取得部202が構築した環境地図に、第1ユーザ及び第2ユーザの位置P1及び位置P2と、ロボットの現在位置P3とをプロットすると共に、位置P2において死角領域αを設定する。そして、位置関係判断部203は、ロボットの現在位置P3が死角領域α内に位置するか否かを判定し、死角領域α内に位置しなけれ(S204でNO)、処理を
図2のS103に遷移させる。一方、ロボットの現在位置P3が死角領域α内に位置すれば(S204でYES)、処理を
図2のS105に遷移させる。
【0054】
次に、本開示のロボットのユースケースについて説明する。第1ユーザと第2ユーザとロボットとは相互に視認可能な空間(例えば同じ部屋)におり、第2ユーザはおもちゃで遊んでいる。第1ユーザは第2ユーザに対してそれそろおもちゃを片付けてほしいと考え、携帯端末を取り出し、子供に対して整頓を促すためのアプリケーションの起動指示を入力する。このとき、第2ユーザは、第1ユーザが取り出した携帯端末に関心がいき、第1ユーザに視線を向ける。
【0055】
ここで、ロボットが第2ユーザの死角領域αに存在しておらず、且つ、死角領域αに移動しないケースを考察する。この場合、起動指示にしたがってロボットがアプリケーションを起動して第2ユーザへの発話を開始すると、第2ユーザの視野内に第1ユーザがいるので、第2ユーザの関心は第1ユーザに向いたままとなり、第2ユーザはロボットの発話に応じない可能性が高くなる。また、第2ユーザは第1ユーザによる携帯端末の操作を視認しているので、その後に行われたロボットの発話は第1ユーザの指示によるものだと気づかれる可能性も高くなる。この場合、第2ユーザにしらけ感や第1ユーザへの反発心が芽生え、第2ユーザがロボットの発話に応じない可能性が高まる。
【0056】
そこで、本開示では、アプリケーションの起動指示が行われた場合、第2ユーザの死角領域αにロボットがいなければ、ロボットは死角領域αに移動する。これにより、ロボットは、第2ユーザの視線を第1ユーザとは反対側にある死角領域αへと誘導させることができる。そのため、第2ユーザの視野内に第1ユーザがいなくなり、第2ユーザの関心は直ぐに第1ユーザからロボットへと移ることになる。そして、この状態で、ロボットは発話を開始するので、ロボットは、自身の発話を第2ユーザに集中して聞かせることができる。その結果、ロボットは、第2ユーザをおもちゃの整頓にうまく誘導することができ、しつけの支援を円滑に行うことができる。
【0057】
一方、本開示は、アプリケーションの起動指示が行われた場合、第2ユーザの死角領域αにロボットがいれば、ロボットを移動させずにその場所で発話させる。これは、ロボットが死角領域α内にいる場合、ロボットの発話によって第2ユーザがロボットの方へ振り向くと、第2ユーザの視野内には第1ユーザがいなくなり、ロボットを移動させなくても、第2ユーザの関心を第1ユーザからロボットへ移すことができるからである。
【0058】
(ロボット)
次に、
図1に示すロボットの機械的な構成について説明する。
図5は、
図1に示すロボット1の外観の一例を示す図である。ロボット1は、
図5に示すように球帯状のメイン筐体401と第1球冠部402と第2球冠部406とを備えており、メイン筐体401と第1球冠部402と第2球冠部406とは全体として球体を構成する。即ち、ロボット1は球体形状を有する。
【0059】
また、ロボット1は、
図5に示すように、第1球冠部402及び第2球冠部406のそれぞれに一対のカメラ101Aを備え、第1球冠部402にマイク102及びスピーカ301Aを備える。カメラ101Aは、
図1に示す映像入力部101に相当し、光軸が例えばロボット1の正面を向くように第1球冠部402及び第2球冠部406に設けられている。
【0060】
図5では、カメラ101Aがステレオカメラで構成された例が示されているが、カメラ101Aがデプスカメラ又は単眼カメラで構成されている場合、カメラ101Aは第1球冠部402及び第2球冠部406のいずれか一方に設けられる。スピーカ301Aは、
図1に示す音声出力部301から出力される音声信号を外部空間に出力する。マイク102はロボット1の周囲の音声を取得する。
【0061】
図6は、
図5に示すロボット1の内部を背後から見た図である。第1球冠部402及び第2球冠部406は横方向に延びるシャフト115によって連結されている。一方、シャフト115とメイン筐体401とは固定されていない。
【0062】
メイン筐体401は固定された第1ギア116、第1ギア116と噛み合う第2ギア117、第2ギア117に連結されたモータ118、及びモータ118を固定するフレーム119を備える。フレーム119はシャフト115に吊り下げられているため、シャフト115が回転しても回転しない。
【0063】
モータ118が駆動すると、モータ118に連結された第2ギア117が回転し、その動力が第2ギア117に噛み合う第1ギア116に伝達される。これにより、第1ギア116が固定されたメイン筐体401はモータ118の駆動に同期して回転する。したがって、モータ118が前進方向に回転するとロボット1は前進し、モータ118が後進方向に回転するとロボット1は後進する。
【0064】
モータ118はアクチュエータの一例であり、
図1に示すアクチュエータ制御部302の制御に基づいて回転する。これにより、アクチュエータ制御部302は、ロボット1を前進又は後進させることができる。メイン筐体401、第1ギア116、第2ギア117、及びモータ118は移動機構の一例である。
【0065】
フレーム119には、一対のアーム123を介して重り114が取り付けられている。一対のアーム123は、下端で重り114を挟持し、上端がフレーム119に対してロボット1のロール方向に回動自在に取り付けられている。フレーム119の内部には、一対のアーム123をロール方向に揺動させるモータ(図略)が取り付けられている。これにより、背後から見て重り114を右側に揺動させた状態で、メイン筐体401を前進方向に回転させると、ロボット1は右旋回する。一方、背後から見て重り114を左側に揺動させた状態で、メイン筐体401を前進方向に回転させると、ロボット1は左旋回する。
図1に示すアクチュエータ制御部302は、このモータ(図略)を右側に所定角度回転させた状態で、モータ118を前進方向に駆動させることで、ロボット1を右旋回させることができる。同様に、アクチュエータ制御部302は、このモータ(図略)を左側に所定角度回転させた状態で、モータ118を前進方向に駆動させることで、ロボット1を左旋回させることができる。
【0066】
モータ121は、シャフト115を回転させるためのモータである。モータ121が前方に回転すると、その回転力がベルト122を介してシャフト115に伝わり、シャフト115はピッチ方向に対して下方に回転する。一方、モータが後方に回転すると、その回転力がベルト122を介してシャフト115に伝わり、シャフト115はピッチ方向に対して上方に回転する。これにより、シャフト115に取り付けられた第1球冠部402及び第2球冠部406と、アーム113に取り付けられたロボット1の目及び口を表示する表示部とが連動して回転する。その結果、ロボット1の目及び口の向きとカメラ101Aの光軸の向きとがピッチ方向の下方又は上方に変更される。
【0067】
本開示は下記の変形例が採用できる。
【0068】
(1)上記実施の形態では、ロボットとして
図5及び
図6に示す球体状が採用されたが、本開示はこれに限定されず、他のロボットに適用されてもよい。
【0069】
(2)本開示は、
図1に示すロボットに適用されているが、これは一例でありロボットを含む装置一般に適用されてもよい。装置としては、例えば、テレビ、又はオーディオ機器等の家電機器を含む。
【0070】
(3)上記実施の形態では、アプリケーションとしてしつけを支援するアプリケーションが採用されているが、本開示はこれに限定されず、例えば、しつけを含む教育全般を支援するアプリケーションが採用されてもよい。
【0071】
(4)上記実施の形態で説明したアプリケーションは、例えば、しつけの内容に応じて複数種類存在してもよい。この場合、第1ユーザは、これら複数種類のアプリケーションのうち、第1ユーザがいずれか1つを選択すればよい。具体的には、ロボットはメモリーに複数種類のアプリケーションを記憶しており、第1ユーザが携帯端末を用いてある種類のアプリケーションの起動指示を入力すると、そのアプリケーションを起動すればよい。しつけの内容としては、例えば、整頓、掃除、勉強、入浴、及びトイレ等が挙げられる。
【産業上の利用可能性】
【0072】
本開示によれば、アプリケーションの実行指示を知られたくなく、ロボットが自律的に判断して行動をしたと思わせる点で有用である。
【符号の説明】
【0073】
41 視線方向
42 線分
43,43' 第1半直線
44 第2半直線
45 第3半直線
100 センサ入力部
101 映像入力部
101A カメラ
115 シャフト
118 モータ
200 行動実行部
201 指示受信部
202 位置座標取得部
203 位置関係判断部
204 走行位置判断部
205 ロボット走行部
206 音声合成部
207 アプリケーション実行部
300 出力部
301 音声出力部
301A スピーカ
302 アクチュエータ制御部
α 死角領域