(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-05
(45)【発行日】2024-01-16
(54)【発明の名称】ロボットと、ロボットのための充電ステーションおよびランドマーク装置
(51)【国際特許分類】
H02J 7/00 20060101AFI20240109BHJP
B25J 19/00 20060101ALI20240109BHJP
G05D 1/43 20240101ALI20240109BHJP
H02J 7/02 20160101ALI20240109BHJP
【FI】
H02J7/00 P
B25J19/00 F
G05D1/02 F
H02J7/00 303A
H02J7/02 J
(21)【出願番号】P 2020561465
(86)(22)【出願日】2019-12-17
(86)【国際出願番号】 JP2019049459
(87)【国際公開番号】W WO2020129992
(87)【国際公開日】2020-06-25
【審査請求日】2022-12-12
(31)【優先権主張番号】P 2018235567
(32)【優先日】2018-12-17
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】515337268
【氏名又は名称】GROOVE X株式会社
(72)【発明者】
【氏名】林 要
(72)【発明者】
【氏名】林 淳哉
(72)【発明者】
【氏名】藁谷 克則
(72)【発明者】
【氏名】小川 博教
(72)【発明者】
【氏名】川崎 航平
(72)【発明者】
【氏名】横山 智彰
【審査官】松本 泰典
(56)【参考文献】
【文献】特開2004-151924(JP,A)
【文献】特開2004-216552(JP,A)
【文献】米国特許出願公開第2018/0191181(US,A1)
【文献】米国特許出願公開第2016/0370804(US,A1)
【文献】特開2009-116634(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/02
B25J 19/00
H02J 7/02
H02J 7/00
(57)【特許請求の範囲】
【請求項1】
給電端子を有する複数の充電スペースと、
前記充電スペースにおいてロボットと前記給電端子が接続されたとき、前記ロボットに
内蔵される二次電池を充電する充電制御部と、
光源と、
前記ロボットから、発光態様を指定する発光信号を受信する発光指示受信部と、
前記指定された発光態様にしたがって、前記光源の発光態様を変化させる発光制御部と
、
第1のロボットから、充電スペースへの入庫を要求する入庫要求信号を受信する入庫要
求受信部と、
前記第1のロボットの前記充電スペースへの入庫可否を判定する入庫判定部と、
入庫可否を示す入庫可否信号を前記第1のロボットに送信する入庫可否送信部と、を更
に備え、
前記入庫判定部は、第2のロボットが充電ステーションへの帰還中であって、前記第2
のロボットがいずれかの充電スペースにおいて充電を開始していないときには、前記第1
のロボットの入庫を拒否することを特徴とする充電ステーション。
【請求項2】
前記発光指示受信部は、前記発光信号により、前記光源の発光量、点滅周期、発光色お
よび発光パターンうちの1以上を前記発光態様として指定されることを特徴とする請求項
1に記載の充電ステーション。
【請求項3】
前記光源は、第1の光源と第2の光源を含み、
前記充電ステーションを正面視したとき、前記第1の光源は前記第2の光源よりも手前
に設置されることを特徴とする請求項1または2に記載の充電ステーション。
【請求項4】
前記ロボットの動作を制御するサーバ装置と一体として形成され、
前記サーバ装置は、
前記ロボットから、前記ロボットにより認識されたイベント情報を受信するイベント受
信部と、
前記イベント情報にしたがって、前記ロボットのモーションを選択する動作制御部と、
を備えることを特徴とする請求項1から3のいずれかに記載の充電ステーション。
【請求項5】
ロボット、ランドマーク装置および充電ステーションを含み、
前記ロボットは、
外部光を認識する光認識部と、
ロボットのモーションを選択する動作制御部と、
前記動作制御部により選択されたモーションを実行する駆動機構と、
発光態様を指定する発光信号を送信する発光指示送信部と、を備え、
前記発光指示送信部は、前記ロボットに内蔵される二次電池を充電するとき、前記発光
信号を送信し、
前記光認識部は、前記指定された発光態様に対応する外部光を特定し、
前記動作制御部は、前記外部光の発光地点を移動目標地点としてロボットの移動方向を
決定し、
前記ランドマーク装置は、
光源と、
前記ロボットから、発光信号を受信する発光指示受信部と、
前記発光信号により指定された発光態様にしたがって、前記光源の発光態様を変化させ
る発光制御部と、を備え、
前記充電ステーションは、
給電端子を有する充電スペースと、
前記充電スペースにおいてロボットと前記給電端子が接続されたとき、前記ロボットの
二次電池を充電する充電制御部と、
光源と、
前記ロボットから、前記発光信号を受信する発光指示受信部と、
前記発光信号により指定された発光態様にしたがって、前記光源の発光態様を変化させ
る発光制御部と、を備え、
前記ロボットの発光指示送信部は、第1の発光態様を指定する第1の発光信号を送信し
、
前記ランドマーク装置の発光制御部は、前記第1の発光信号により指定された第1の発
光態様にしたがって、前記光源の発光態様を変化させ、
前記ロボットの光認識部は、前記第1の発光態様による外部光を特定し、
前記ロボットの動作制御部は、前記第1の発光態様による外部光の発光地点を移動目標
地点としてロボットの移動方向を決定し、
前記ロボットの発光指示送信部は、前記ロボットが前記ランドマーク装置の所在地点に
至ったとき、第2の発光態様を指定する第2の発光信号を送信し、
前記充電ステーションの発光制御部は、前記第2の発光信号により指定された第2の発
光態様にしたがって、前記光源の発光態様を変化させ、
前記ロボットの光認識部は、前記第2の発光態様による外部光を特定し、
前記ロボットの動作制御部は、前記第2の発光態様による外部光の発光地点を移動目標
地点としてロボットの次の移動方向を決定することを特徴とする誘導システム。
【請求項6】
第1のロボット、第2のロボットおよび充電ステーションを含み、
前記第1のロボットおよび第2のロボットは、いずれも
外部光を認識する光認識部と、
ロボットのモーションを選択する動作制御部と、
前記動作制御部により選択されたモーションを実行する駆動機構と、
発光態様を指定する発光信号を送信する発光指示送信部と、
光源と、
他のロボットから、発光信号を受信する発光指示受信部と、
前記発光信号により指定された発光態様にしたがって、前記光源の発光態様を変化させ
る発光制御部と、を備え、
前記発光指示送信部は、ロボットに内蔵される二次電池を充電するとき、前記発光信号
を送信し、
前記光認識部は、前記指定された発光態様に対応する外部光を特定し、
前記動作制御部は、前記外部光の発光地点を移動目標地点としてロボットの移動方向を
決定し、
前記充電ステーションは、
給電端子を有する充電スペースと、
前記充電スペースにおいてロボットと前記給電端子が接続されたとき、前記ロボットの
二次電池を充電する充電制御部と、
光源と、
ロボットから、発光信号を受信する発光指示受信部と、
前記発光信号により指定された発光態様にしたがって、前記光源の発光態様を変化させ
る発光制御部と、を備え、
前記第1のロボットの発光指示送信部は、第1の発光態様を指定する第1の発光信号を
送信し、
前記第2のロボットの発光制御部は、前記第1の発光信号により指定された第1の発光
態様にしたがって、前記第2のロボットの光源の発光態様を変化させ、
前記第1のロボットの光認識部は、前記第1の発光態様による外部光を特定し、
前記第1のロボットの動作制御部は、前記第1の発光態様による外部光の発光地点を移
動目標地点として前記第1のロボットの移動方向を決定し、
前記第1のロボットの発光指示送信部は、前記第1のロボットが前記第2のロボットの
所在地点に至ったとき、第2の発光態様を指定する第2の発光信号を送信し、
前記充電ステーションの発光制御部は、前記第2の発光信号により指定された第2の発
光態様にしたがって、前記光源の発光態様を変化させ、
前記第1のロボットの光認識部は、前記第2の発光態様による外部光を特定し、
前記第1のロボットの動作制御部は、前記第2の発光態様による外部光の発光地点を移
動目標地点として前記第1のロボットの次の移動方向を決定することを特徴とする誘導シ
ステム。
【請求項7】
前記第1のロボットおよび前記第2のロボットは、いずれも、
前記充電ステーションに対してロボットの現在地点が所定の位置条件を満たすか否かを
判定する位置判定部、を更に備え、
前記第1のロボットにおいて前記位置条件が成立しないときには、前記第2のロボット
の動作制御部は前記位置条件が成立する範囲内を前記第2のロボットの行動範囲として設
定することを特徴とする請求項
6に記載の誘導システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、内部状態または外部環境に応じて自律的に行動選択するロボットと、ロボットを充電するための充電ステーション、に関する。
【背景技術】
【0002】
人間は、癒やしを求めてペットを飼う。その一方、ペットの世話をする時間を十分に確保できない、ペットを飼える住環境にない、アレルギーがある、死別がつらい、といったさまざまな理由により、ペットをあきらめている人は多い。もし、ペットの役割が務まるロボットがあれば、ペットを飼えない人にもペットが与えてくれるような癒やしを与えられるかもしれない(特許文献1、2参照)。
【0003】
ロボットにペットのような伴侶としての存在感を発揮させる上では、ロボットの移動が前提となる。ロボットには、ユーザの補助を受けることなく、充電ステーションを自ら探し出して適宜充電を受ける機能が期待される(特許文献3、4参照)。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2000-323219号公報
【文献】国際公開第2017/169826号
【文献】特開2001-125641号公報
【文献】特開2004-151924号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献3に示す充電ステーションは、自らの所在地をロボットに伝えるために所定のマークを表示する。ロボットは、このマークを視認することで充電ステーションを識別する(段落[0093][0094]等参照)。また、特許文献3の充電ステーションは、音波や電波を発生させることでも、ロボットに充電ステーションの所在地を知らせている(段落[0099][0100]等参照)。
【0006】
充電ステーションは、多種多様な環境に設置されることが想定される。このため、充電ステーションが所定のマークを表示させても、ロボットがそのマークを見つけることができるとは限らない。たとえば、充電ステーションのマークに類似するマークが壁に描かれている部屋では、ロボットは充電ステーションの位置を誤認する可能性がある。電波等についても同様であり、ロボットは充電ステーションからの信号に類似する別の信号を充電ステーションからの信号と誤認する可能性がある。
【0007】
本発明は上記課題認識に基づいて完成された発明であり、その主たる目的は、ロボットが充電ステーションを特定する精度を高めるための技術、を提供することにある。
【課題を解決するための手段】
【0008】
本発明のある態様における充電ステーションは、給電端子を有する充電スペースと、充電スペースにおいてロボットと給電端子が接続されたとき、ロボットに内蔵される二次電池を充電する充電制御部と、光源と、ロボットから発光態様を指定する発光信号を受信する発光指示受信部と、指定された発光態様にしたがって、光源の発光態様を変化させる発光制御部と、を備える。
【0009】
本発明のある態様におけるロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行する駆動機構と、発光態様を指定する発光信号を送信する発光指示送信部と、外部光を認識する光認識部を備える。
発光指示送信部は、ロボットに内蔵される二次電池を充電するとき、発光信号を送信し、光認識部は、指定された発光態様に対応する外部光を特定し、動作制御部は、外部光の発光地点を充電ステーションの所在地点としてロボットの移動方向を決定する。
【0010】
本発明のある態様におけるランドマーク装置は、光源と、ロボットから、発光態様を指定する発光信号を受信する発光指示受信部と、指定された発光態様にしたがって、光源の発光態様を変化させる発光制御部と、を備える。
【0011】
本発明のある態様における誘導システムは、ロボット、ランドマーク装置および充電ステーションを含む。
ロボットは、外部光を認識する光認識部と、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行する駆動機構と、発光態様を指定する発光信号を送信する発光指示送信部と、を備える。
発光指示送信部は、ロボットに内蔵される二次電池を充電するとき、発光信号を送信し、光認識部は、指定された発光態様に対応する外部光を特定し、動作制御部は、外部光の発光地点を移動目標地点としてロボットの移動方向を決定する。
ランドマーク装置は、光源と、ロボットから、発光信号を受信する発光指示受信部と、発光信号により指定された発光態様にしたがって、光源の発光態様を変化させる発光制御部と、を備える。
充電ステーションは、給電端子を有する充電スペースと、充電スペースにおいてロボットと給電端子が接続されたとき、ロボットの二次電池を充電する充電制御部と、光源と、ロボットから、発光信号を受信する発光指示受信部と、発光信号により指定された発光態様にしたがって、光源の発光態様を変化させる発光制御部と、を備える。
ロボットの発光指示送信部は、第1の発光態様を指定する第1の発光信号を送信する。ランドマーク装置の発光制御部は、第1の発光信号により指定された第1の発光態様にしたがって、光源の発光態様を変化させる。ロボットの光認識部は、第1の発光態様による外部光を特定し、ロボットの動作制御部は、第1の発光態様による外部光の発光地点を移動目標地点としてロボットの移動方向を決定する。
ロボットの発光指示送信部は、ロボットがランドマーク装置の所在地点に至ったとき、第2の発光態様を指定する第2の発光信号を送信する。充電ステーションの発光制御部は、第2の発光信号により指定された第2の発光態様にしたがって、光源の発光態様を変化させる。ロボットの光認識部は、第2の発光態様による外部光を特定し、ロボットの動作制御部は、第2の発光態様による外部光の発光地点を移動目標地点としてロボットの次の移動方向を決定する。
【0012】
本発明の別の態様における誘導システムは、第1のロボット、第2のロボットおよび充電ステーションを含む。
第1のロボットおよび第2のロボットは、いずれも、外部光を認識する光認識部と、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行する駆動機構と、発光態様を指定する発光信号を送信する発光指示送信部と、光源と、他のロボットから、発光信号を受信する発光指示受信部と、発光信号により指定された発光態様にしたがって、光源の発光態様を変化させる発光制御部と、を備える。
発光指示送信部は、ロボットに内蔵される二次電池を充電するとき、発光信号を送信し、光認識部は、指定された発光態様に対応する外部光を特定し、動作制御部は、外部光の発光地点を移動目標地点としてロボットの移動方向を決定する。
充電ステーションは、給電端子を有する充電スペースと、充電スペースにおいてロボットと給電端子が接続されたとき、ロボットの二次電池を充電する充電制御部と、光源と、ロボットから、発光信号を受信する発光指示受信部と、発光信号により指定された発光態様にしたがって、光源の発光態様を変化させる発光制御部と、を備える。
第1のロボットの発光指示送信部は、第1の発光態様を指定する第1の発光信号を送信する。第2のロボットの発光制御部は、第1の発光信号により指定された第1の発光態様にしたがって、第2のロボットの光源の発光態様を変化させる。第1のロボットの光認識部は、第1の発光態様による外部光を特定し、第1のロボットの動作制御部は、第1の発光態様による外部光の発光地点を移動目標地点として第1のロボットの移動方向を決定する。
第1のロボットの発光指示送信部は、第1のロボットが第2のロボットの所在地点に至ったとき、第2の発光態様を指定する第2の発光信号を送信する。充電ステーションの発光制御部は、第2の発光信号により指定された第2の発光態様にしたがって、光源の発光態様を変化させる。第1のロボットの光認識部は、第2の発光態様による外部光を特定し、第1のロボットの動作制御部は、第2の発光態様による外部光の発光地点を移動目標地点として第1のロボットの次の移動方向を決定する。
【発明の効果】
【0013】
本発明によれば、ロボットが充電ステーションの所在地点を特定しやすくなる。
【図面の簡単な説明】
【0014】
上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。
【0015】
【
図1】充電システムの概要を説明するための図である。
【
図3】ロボットの構造を概略的に表す断面図である。
【
図4】基本構成におけるロボットのハードウェア構成図である。
【
図5】基本構成におけるロボットシステムの機能ブロック図である。
【
図6A】ロボットが外皮を装着した状態を表す側面図である。
【
図6B】ロボットが外皮を装着した状態を表す正面図である。
【
図6C】ロボットが外皮を装着した状態を表す背面図である。
【
図7】本実施形態におけるステーションの外観図である。
【
図8】本実施形態におけるステーションの機能ブロック図である。
【
図9】本実施形態におけるロボットの機能ブロック図である。
【
図10】ランドマーク装置の機能ブロック図である。
【
図11】ロボットがステーションを探索する処理過程を示すシーケンス図である。
【
図13】正面から見たときの発光部の模式図である。
【
図14】側方から見たときの発光部の模式図である。
【
図15】近距離誘導信号(近距離赤外線と超音波)によるロボットの位置調整方法を説明するための模式図である。
【
図16】複数のロボットがステーションへ帰還を希望するときの制御方法を説明するためのタイムチャートである。
【
図17】ランドマーク装置によりロボットをステーションに誘導する方法を説明するための模式図である。
【
図18】ロボットによりロボットをステーションに誘導する方法を説明するための模式図である。
【
図19】変形例におけるステーションの外観図である。
【
図20】ロボットの位置および進行方向を特定する方法を説明するための模式図である。
【発明を実施するための形態】
【0016】
図1は、充電システム10の概要を説明するための図である。
充電システム10は、2台のロボット100を同時に充電可能な充電ステーション500を備える。以下、充電ステーションを単に「ステーション」とよぶことがある。ロボット100は車輪走行型の自律行動型ロボットである。ロボット100は、2つの前輪と1つの後輪を備える。左右の前輪が駆動輪、後輪がキャスターからなる従動輪である(詳細については後述する)。
【0017】
ステーション500は、複数のロボット100の巣(寝床)を演出する。2台のロボット100が隣り合わせで仲良く充電できるよう、2つの充電スペース502(左スペース502L、右スペース502R)が横並びに近接配置されている。ロボット100は、充電のために巣に戻り、充電中は正面を向くことで周囲に愛らしさをアピールする。ロボット100は、2つの充電スペース502のいずれかに対して後ろ向きに進入する。すなわち、その進入の際にはキャスターが先頭となる。
【0018】
充電スペース502には、キャスターが乗り上げるベース504が設けられる。キャスターがベース504上の目標位置に到達することで、ステーション500の給電端子とロボット100の充電端子とが安定に接続し、充電が可能となる。
【0019】
ロボット100は、ステーション500に対して点滅周期等の「発光態様」を指定する発光信号を送信し、ステーション500は指示された発光態様にて、発光部を発光させる。本実施形態における「発光態様」とは、発光部(光源)の点滅周期、発光量、発光色および発光パターンのうちの1以上の組み合わせとして定義される。
【0020】
発光パターンとは、たとえば、「0.5秒点灯、1.5秒消灯、1.0秒点灯、0.5秒消灯」のように、点灯時間と消灯時間の配分を指定する情報でもよいし、「赤色光源、黄色光源、紫色光源の3種類の光源うち、赤色光源と黄色光源を点灯」のように発光色の組み合わせを指定する情報でもよい。以下、ステーション500が発生させる光を「誘導光」とよぶ。ロボット100は、誘導光を検出し、誘導光の発光地点をステーション500の所在地点として特定する。
以下、ロボット100の基本構成について
図2から
図5に関連して説明したあと、ロボット100がステーション500の所在地点を特定する方法を中心として説明する。
【0021】
[基本構成]
図2は、ロボット100の外観を表す図である。
図2Aは正面図であり、
図2Bは側面図である。
ロボット100は、外部環境および内部状態に基づいて行動を決定する自律行動型のロボットである。外部環境は、カメラやサーモセンサ115など各種のセンサにより認識される。内部状態はロボット100の感情を表現する様々なパラメータとして定量化される。ロボット100は、オーナー家庭の家屋内を行動範囲とする。以下、ロボット100に関わる人間を「ユーザ」とよぶ。ユーザのうち、ロボット100の所有者または管理者を「オーナー」とよぶ。
【0022】
ロボット100のボディ104は、全体的に丸みを帯びた形状を有し、ウレタンやゴム、樹脂、繊維などやわらかく弾力性のある素材により形成された外皮314を含む。ロボット100に服を着せてもよい。ロボット100の総重量は5~15キログラム程度、身長は0.5~1.2メートル程度である。適度な重さと丸み、柔らかさ、手触りのよさ、といった諸属性により、ユーザがロボット100を抱きかかえやすく、かつ、抱きかかえたくなるという効果が実現される。
【0023】
ロボット100は、一対の前輪102(左輪102a,右輪102b)と、一つの後輪103を含む。前輪102が駆動輪であり、後輪103が従動輪である。前輪102は、操舵機構を有しないが、左右輪の回転速度や回転方向を個別に制御可能とされている。後輪103は、キャスターであり、ロボット100を前後左右へ移動させるために回転自在となっている。後輪103はオムニホイールであってもよい。左輪102aよりも右輪102bの回転数を大きくすることで、ロボット100が左折したり、左回りに回転できる。右輪102bよりも左輪102aの回転数を大きくすることで、ロボット100が右折したり、右回りに回転できる。
【0024】
前輪102および後輪103は、駆動機構(回動機構、リンク機構)によりボディ104に完全収納できる。ボディ104の下半部には左右一対のカバー312が設けられている。カバー312は、可撓性および弾性を有する樹脂材(ラバー、シリコーンゴム等)からなり、柔らかい胴体を構成するとともに前輪102を収納できる。カバー312には側面から前面にかけて開口するスリット313(開口部)が形成され、そのスリット313を介して前輪102を進出させ、外部に露出させることができる。
【0025】
走行時においても各車輪の大半はボディ104に隠れているが、各車輪がボディ104に完全収納されるとロボット100は移動不可能な状態となる。すなわち、車輪の収納動作にともなってボディ104が降下し、床面Fに着座する。この着座状態においては、ボディ104の底部に形成された平坦状の着座面108(接地底面)が床面Fに当接する。
【0026】
ロボット100は、2つの腕106を有する。腕106の先端に手があるが、モノを把持する機能はない。腕106は、後述するアクチュエータの駆動により、上げる、曲げる、手を振る、振動するなど簡単な動作が可能である。2つの腕106は、それぞれ個別に制御可能である。
【0027】
ロボット100の頭部正面には顔領域116が露出している。顔領域116には、2つの目110が設けられている。目110は、液晶素子または有機EL素子による画像表示が可能であり、画像として表示された瞳や瞼を動かすことで視線や表情を表現するためのデバイスである。顔領域116の中央には、鼻109が設けられている。鼻109には、アナログスティックが設けられており、上下左右の全方向に加えて、押し込み方向も検出できる。また、ロボット100には複数のタッチセンサが設けられており、頭部、胴部、臀部、腕など、ロボット100のほぼ全域についてユーザのタッチを検出できる。ロボット100は、音源方向を特定可能なマイクロフォンアレイや超音波センサなど様々なセンサを搭載する。また、スピーカーを内蔵し、簡単な音声を発することもできる。
【0028】
ロボット100の頭部にはツノ112が取り付けられる。ツノ112には全天周カメラ113が取り付けられ、ロボット100の上部全域を一度に撮像可能である。ツノ112にはまた、サーモセンサ115(サーモカメラ)が内蔵されている。また、ツノ112には赤外線を利用した通信をするためのモジュール(図示せず)が複数設けられており、それらのモジュールが周囲に向けて環状に設置されている。このため、ロボット100は方向を認識しながら赤外線通信ができる。更に、ツノ112には、緊急停止用のスイッチが設けられており、ユーザはツノ112を引き抜くことでロボット100を緊急停止できる。
【0029】
図3は、ロボット100の構造を概略的に表す断面図である。
ボディ104は、本体フレーム310、一対の腕106、一対のカバー312および外皮314を含む。本体フレーム310は、頭部フレーム316および胴部フレーム318を含む。頭部フレーム316は、中空半球状をなし、ロボット100の頭部骨格を形成する。胴部フレーム318は、角筒形状をなし、ロボット100の胴部骨格を形成する。胴部フレーム318の下端部が、ロアプレート334に固定されている。頭部フレーム316は、接続機構330を介して胴部フレーム318に接続されている。
【0030】
胴部フレーム318は、ボディ104の軸芯を構成する。胴部フレーム318は、ロアプレート334に左右一対のサイドプレート336を固定して構成され、一対の腕106および内部機構を支持する。胴部フレーム318の内方には、バッテリー118、制御回路342および各種アクチュエータ等が収容されている。ロアプレート334の底面が着座面108を形成する。
【0031】
胴部フレーム318は、その上部にアッパープレート332を有する。アッパープレート332には、有底円筒状の支持部319が固定されている。アッパープレート332、ロアプレート334、一対のサイドプレート336および支持部319が、胴部フレーム318を構成している。支持部319の外径は、左右のサイドプレート336の間隔よりも小さい。一対の腕106は、環状部材340と一体に組み付けられることでアームユニット350を構成している。環状部材340は円環状をなし、その中心線上を径方向に離隔するように一対の腕106が取り付けられている。環状部材340は、支持部319に同軸状に挿通され、一対のサイドプレート336の上端面に載置されている。アームユニット350は、胴部フレーム318により下方から支持されている。
【0032】
頭部フレーム316は、ヨー軸321、ピッチ軸322およびロール軸323を有する。頭部フレーム316のヨー軸321周りの回動(ヨーイング)により首振り動作が実現され、ピッチ軸322周りの回動(ピッチング)により頷き動作,見上げ動作および見下ろし動作が実現され、ロール軸323周りの回動(ローリング)により首を左右に傾げる動作が実現される。各軸は、接続機構330の駆動態様に応じて三次元空間における位置や角度が変化し得る。接続機構330は、リンク機構からなり、胴部フレーム318に設置された複数のモータにより駆動される。
【0033】
胴部フレーム318は、車輪駆動機構370を収容している。車輪駆動機構370は、前輪102および後輪103をそれぞれボディ104から出し入れする前輪駆動機構および後輪駆動機構を含む。前輪102および後輪103は、ロボット100を移動させる「移動機構」として機能する。前輪102は、その中心部にダイレクトドライブモータを有する。このため、左輪102aと右輪102bを個別に駆動できる。前輪102はホイールカバー105に回転可能に支持され、そのホイールカバー105が胴部フレーム318に回動可能に支持されている。
【0034】
一対のカバー312は、胴部フレーム318を左右から覆うように設けられ、ボディ104のアウトラインに丸みをもたせるよう、滑らかな曲面形状とされている。胴部フレーム318とカバー312との間に閉空間が形成され、その閉空間が前輪102の収容空間Sとなっている。後輪103は、胴部フレーム318の下部後方に設けられた収容空間に収容される。
【0035】
外皮314は、本体フレーム310および一対の腕106を外側から覆う。外皮314は、人が弾力を感じる程度の厚みを有し、ウレタンスポンジなどの伸縮性を有する素材で形成される。これにより、ユーザがロボット100を抱きしめると、適度な柔らかさを感じ、人がペットにするように自然なスキンシップをとることができる。外皮314は、カバー312を露出させる態様で本体フレーム310に装着されている。外皮314の上端部には、開口部390が設けられる。この開口部390がツノ112を挿通する。
【0036】
本体フレーム310と外皮314との間にはタッチセンサが配設される。カバー312にはタッチセンサが埋設されている。これらのタッチセンサは、いずれも静電容量センサであり、ロボット100のほぼ全域におけるタッチを検出する。なお、タッチセンサを外皮314に埋設してもよいし、本体フレーム310の内側に配設してもよい。
【0037】
腕106は、第1関節352および第2関節354を有し、両関節の間に腕356、第2関節354の先に手358を有する。第1関節352は肩関節に対応し、第2関節354は手首関節に対応する。各関節にはモータが設けられ、腕356および手358をそれぞれ駆動する。腕106を駆動するための駆動機構は、これらのモータおよびその駆動回路344を含む。
【0038】
図4は、ロボット100のハードウェア構成図である。
ロボット100は、内部センサ128、通信機126、記憶装置124、プロセッサ122、駆動機構120およびバッテリー118を含む。駆動機構120は、上述した接続機構330および車輪駆動機構370を含む。プロセッサ122と記憶装置124は、制御回路342に含まれる。各ユニットは電源線130および信号線132により互いに接続される。バッテリー118は、電源線130を介して各ユニットに電力を供給する。各ユニットは信号線132により制御信号を送受する。バッテリー118は、リチウムイオン二次電池であり、ロボット100の動力源である。
【0039】
内部センサ128は、ロボット100が内蔵する各種センサの集合体である。具体的には、カメラ、マイクロフォンアレイ、測距センサ(赤外線センサ)、サーモセンサ115、タッチセンサ、加速度センサ、気圧センサ、ニオイセンサなどである。タッチセンサは、ボディ104の大部分の領域に対応し、静電容量の変化に基づいてユーザのタッチを検出する。ニオイセンサは、匂いの元となる分子の吸着によって電気抵抗が変化する原理を応用した既知のセンサである。
【0040】
通信機126は、各種の外部機器を対象として無線通信を行う通信モジュールである。記憶装置124は、不揮発性メモリおよび揮発性メモリにより構成され、コンピュータプログラムや各種設定情報を記憶する。プロセッサ122は、コンピュータプログラムの実行手段である。駆動機構120は、複数のアクチュエータを含む。このほか、表示器やスピーカーなども搭載される。
【0041】
駆動機構120は、主として、車輪と頭部を制御する。駆動機構120は、ロボット100の移動方向や移動速度を変化させるほか、車輪を昇降させることもできる。車輪が上昇すると、車輪はボディ104に完全に収納され、ロボット100は着座面108にて床面Fに当接し、着座状態となる。また、駆動機構120は、腕106を制御する。
【0042】
図5は、ロボットシステム300の機能ブロック図である。
ロボットシステム300は、ロボット100、サーバ200および複数の外部センサ114を含む。ロボット100およびサーバ200の各構成要素は、CPU(Central Processing Unit)および各種コプロセッサなどの演算器、メモリやストレージといった記憶装置、それらを連結する有線または無線の通信線を含むハードウェアと、記憶装置に格納され、演算器に処理命令を供給するソフトウェアによって実現される。コンピュータプログラムは、デバイスドライバ、オペレーティングシステム、それらの上位層に位置する各種アプリケーションプログラム、また、これらのプログラムに共通機能を提供するライブラリによって構成されてもよい。以下に説明する各ブロックは、ハードウェア単位の構成ではなく、機能単位のブロックを示している。
ロボット100の機能の一部はサーバ200により実現されてもよいし、サーバ200の機能の一部または全部はロボット100により実現されてもよい。
【0043】
家屋内にはあらかじめ複数の外部センサ114が設置される。サーバ200は、外部センサ114を管理し、必要に応じてロボット100に外部センサ114により取得された検出値を提供する。ロボット100は、内部センサ128および複数の外部センサ114から得られる情報に基づいて、基本行動を決定する。外部センサ114はロボット100の感覚器を補強するためのものであり、サーバ200はロボット100の処理能力を補強するためのものである。ロボット100の通信機126がサーバ200と定期的に通信し、サーバ200が外部センサ114によりロボット100の位置を特定する処理を担ってもよい(特許文献2も参照)。
【0044】
(サーバ200)
サーバ200は、通信部204、データ処理部202およびデータ格納部206を含む。
通信部204は、外部センサ114およびロボット100との通信処理を担当する。データ格納部206は各種データを格納する。データ処理部202は、通信部204により取得されたデータおよびデータ格納部206に格納されるデータに基づいて各種処理を実行する。データ処理部202は、通信部204およびデータ格納部206のインタフェースとしても機能する。
【0045】
データ格納部206は、モーション格納部232と個人データ格納部218を含む。
ロボット100は、複数の動作パターン(モーション)を有する。腕106を震わせる、蛇行しながらオーナーに近づく、首をかしげたままオーナーを見つめる、などさまざまなモーションが定義される。
【0046】
モーション格納部232は、モーションの制御内容を定義する「モーションファイル」を格納する。各モーションは、モーションIDにより識別される。モーションファイルは、ロボット100のモーション格納部160にもダウンロードされる。どのモーションを実行するかは、サーバ200で決定されることもあるし、ロボット100で決定されることもある。
【0047】
ロボット100のモーションの多くは、複数の単位モーションを含む複合モーションとして構成される。たとえば、ロボット100がオーナーに近づくとき、オーナーの方に向き直る単位モーション、手を上げながら近づく単位モーション、体を揺すりながら近づく単位モーション、両手を上げながら着座する単位モーションの組み合わせとして表現されてもよい。このような4つのモーションの組み合わせにより、「オーナーに近づいて、途中で手を上げて、最後は体をゆすった上で着座する」というモーションが実現される。モーションファイルには、ロボット100に設けられたアクチュエータの回転角度や角速度などが時間軸に関連づけて定義される。モーションファイル(アクチュエータ制御情報)にしたがって、時間経過とともに各アクチュエータを制御することで様々なモーションが表現される。
【0048】
先の単位モーションから次の単位モーションに変化するときの移行時間を「インターバル」とよぶ。インターバルは、単位モーション変更に要する時間やモーションの内容に応じて定義されればよい。インターバルの長さは調整可能である。
以下、いつ、どのモーションを選ぶか、モーションを実現する上での各アクチュエータの出力調整など、ロボット100の行動制御に関わる設定のことを「行動特性」と総称する。ロボット100の行動特性は、モーション選択アルゴリズム、モーションの選択確率、モーションファイル等により定義される。
【0049】
モーション格納部232は、モーションファイルのほか、各種のイベントが発生したときに実行すべきモーションを定義するモーション選択テーブルを格納する。モーション選択テーブルにおいては、イベントに対して1以上のモーションとその選択確率が対応づけられる。
【0050】
個人データ格納部218は、ユーザの情報を格納する。具体的には、ユーザに対する親密度とユーザの身体的特徴・行動的特徴を示すマスタ情報を格納する。年齢や性別などの他の属性情報を格納してもよい。
【0051】
ロボット100は、ユーザごとに親密度という内部パラメータを有する。ロボット100が、自分を抱き上げる、声をかけてくれるなど、自分に対して好意を示す行動を認識したとき、そのユーザに対する親密度が高くなる。ロボット100に関わらないユーザや、乱暴を働くユーザ、出会う頻度が低いユーザに対する親密度は低くなる。
【0052】
データ処理部202は、位置管理部208、認識部212、動作制御部222、親密度管理部220および状態管理部244を含む。
位置管理部208は、ロボット100の位置座標を特定する。状態管理部244は、充電率や内部温度、プロセッサ122の処理負荷などの各種物理状態など各種内部パラメータを管理する。また、状態管理部244は、ロボット100の感情(寂しさ、好奇心、承認欲求など)を示すさまざまな感情パラメータを管理する。これらの感情パラメータは常に揺らいでいる。感情パラメータに応じてロボット100の移動目標地点が変化する。たとえば、寂しさが高まっているときには、ロボット100はユーザのいるところを移動目標地点として設定する。
【0053】
時間経過によって感情パラメータが変化する。また、後述の応対行為によっても各種感情パラメータは変化する。たとえば、オーナーから「抱っこ」をされると寂しさを示す感情パラメータは低下し、長時間にわたってオーナーを視認しないときには寂しさを示す感情パラメータは少しずつ増加する。
【0054】
認識部212は、外部環境を認識する。外部環境の認識には、温度や湿度に基づく天候や季節の認識、光量や温度に基づく物陰(安全地帯)の認識など多様な認識が含まれる。ロボット100の認識部156は、内部センサ128により各種の環境情報を取得し、これを一次処理した上でサーバ200の認識部212に転送する。
【0055】
具体的には、ロボット100の認識部156は、画像から移動物体、特に、人物や動物に対応する画像領域を抽出し、抽出した画像領域から移動物体の身体的特徴や行動的特徴を示す特徴量の集合として「特徴ベクトル」を抽出する。特徴ベクトル成分(特徴量)は、各種身体的・行動的特徴を定量化した数値である。たとえば、人間の目の横幅は0~1の範囲で数値化され、1つの特徴ベクトル成分を形成する。人物の撮像画像から特徴ベクトルを抽出する手法については、既知の顔認識技術の応用である。ロボット100は、特徴ベクトルをサーバ200に送信する。
【0056】
サーバ200の認識部212は、ロボット100の内蔵カメラによる撮像画像から抽出された特徴ベクトルと、個人データ格納部218にあらかじめ登録されているユーザ(クラスタ)の特徴ベクトルと比較することにより、撮像されたユーザがどの人物に該当するかを判定する(ユーザ識別処理)。また、認識部212は、ユーザの表情を画像認識することにより、ユーザの感情を推定する。認識部212は、人物以外の移動物体、たとえば、ペットである猫や犬についてもユーザ識別処理を行う。
【0057】
認識部212は、ロボット100になされたさまざまな応対行為を認識し、快・不快行為に分類する。認識部212は、また、ロボット100の行動に対するオーナーの応対行為を認識することにより、肯定・否定反応に分類する。
快・不快行為は、ユーザの応対行為が、生物として心地よいものであるか不快なものであるかにより判別される。たとえば、抱っこされることはロボット100にとって快行為であり、蹴られることはロボット100にとって不快行為である。肯定・否定反応は、ユーザの応対行為が、ユーザの快感情を示すものか不快感情を示すものであるかにより判別される。抱っこされることはユーザの快感情を示す肯定反応であり、蹴られることはユーザの不快感情を示す否定反応である。
【0058】
サーバ200の動作制御部222は、ロボット100の動作制御部150と協働して、ロボット100のモーションを決定する。サーバ200の動作制御部222は、ロボット100の移動目標地点とそのための移動ルートを作成する。動作制御部222は、複数の移動ルートを作成し、その上で、いずれかの移動ルートを選択してもよい。
【0059】
動作制御部222は、モーション格納部232の複数のモーションからロボット100のモーションを選択する。各モーションには状況ごとに選択確率が対応づけられている。たとえば、オーナーから快行為がなされたときには、モーションAを20%の確率で実行する、気温が30度以上となったとき、モーションBを5%の確率で実行する、といった選択方法が定義される。
【0060】
親密度管理部220は、ユーザごとの親密度を管理する。上述したように、親密度は個人データ格納部218において個人データの一部として登録される。快行為を検出したとき、親密度管理部220はそのオーナーに対する親密度をアップさせる。不快行為を検出したときには親密度はダウンする。また、長期間視認していないオーナーの親密度は徐々に低下する。
【0061】
(ロボット100)
ロボット100は、通信部142、データ処理部136、データ格納部148、内部センサ128および駆動機構120を含む。
通信部142は、通信機126(
図4参照)に該当し、外部センサ114、サーバ200および他のロボット100との通信処理を担当する。データ格納部148は各種データを格納する。データ格納部148は、記憶装置124(
図4参照)に該当する。データ処理部136は、通信部142により取得されたデータおよびデータ格納部148に格納されているデータに基づいて各種処理を実行する。データ処理部136は、プロセッサ122およびプロセッサ122により実行されるコンピュータプログラムに該当する。データ処理部136は、通信部142、内部センサ128、駆動機構120およびデータ格納部148のインタフェースとしても機能する。
【0062】
データ格納部148は、ロボット100の各種モーションを定義するモーション格納部160を含む。
ロボット100のモーション格納部160には、サーバ200のモーション格納部232から各種モーションファイルがダウンロードされる。モーションは、モーションIDによって識別される。前輪102を収容して着座する、腕106を持ち上げる、2つの前輪102を逆回転させることで、あるいは、片方の前輪102だけを回転させることでロボット100を回転行動させる、前輪102を収納した状態で前輪102を回転させることで震える、ユーザから離れるときにいったん停止して振り返る、などのさまざまなモーションを表現するために、各種アクチュエータ(駆動機構120)の動作タイミング、動作時間、動作方向などがモーションファイルにおいて時系列定義される。
データ格納部148には、個人データ格納部218からも各種データがダウンロードされてもよい。
【0063】
データ処理部136は、認識部156および動作制御部150を含む。
ロボット100の動作制御部150は、サーバ200の動作制御部222と協働してロボット100のモーションを決める。一部のモーションについてはサーバ200で決定し、他のモーションについてはロボット100で決定してもよい。また、ロボット100がモーションを決定するが、ロボット100の処理負荷が高いときにはサーバ200がモーションを決定するとしてもよい。サーバ200においてベースとなるモーションを決定し、ロボット100において追加のモーションを決定してもよい。モーションの決定処理をサーバ200およびロボット100においてどのように分担するかはロボットシステム300の仕様に応じて設計すればよい。
【0064】
ロボット100の動作制御部150は選択したモーションを駆動機構120に実行指示する。駆動機構120は、モーションファイルにしたがって、各アクチュエータを制御する。
【0065】
動作制御部150は、親密度の高いユーザが近くにいるときには「抱っこ」をせがむ仕草として両方の腕106をもちあげるモーションを実行することもできるし、「抱っこ」に飽きたときには左右の前輪102を収容したまま逆回転と停止を交互に繰り返すことで抱っこをいやがるモーションを表現することもできる。駆動機構120は、動作制御部150の指示にしたがって前輪102や腕106、首(頭部フレーム316)を駆動することで、ロボット100にさまざまなモーションを表現させる。
【0066】
ロボット100の認識部156は、内部センサ128から得られた外部情報を解釈する。認識部156は、視覚的な認識(視覚部)、匂いの認識(嗅覚部)、音の認識(聴覚部)、触覚的な認識(触覚部)が可能である。
【0067】
認識部156は、移動物体の撮像画像から特徴ベクトルを抽出する。上述したように、特徴ベクトルは、移動物体の身体的特徴と行動的特徴を示すパラメータ(特徴量)の集合である。移動物体を検出したときには、ニオイセンサや内蔵の集音マイク、温度センサ等からも身体的特徴や行動的特徴が抽出される。これらの特徴も定量化され、特徴ベクトル成分となる。認識部156は、特許文献2等に記載の既知の技術に基づいて、特徴ベクトルからユーザを特定する。
【0068】
検出・分析・判定を含む一連の認識処理のうち、ロボット100の認識部156は認識に必要な情報の取捨選択や抽出を行い、判定等の解釈処理はサーバ200の認識部212により実行される。認識処理は、サーバ200の認識部212だけで行ってもよいし、ロボット100の認識部156だけで行ってもよいし、上述のように双方が役割分担をしながら上記認識処理を実行してもよい。
【0069】
ロボット100に対する強い衝撃が与えられたとき、認識部156はタッチセンサおよび加速度センサによりこれを認識し、サーバ200の認識部212は、近隣にいるユーザによって「乱暴行為」が働かれたと認識する。ユーザがツノ112を掴んでロボット100を持ち上げるときにも、乱暴行為と認識してもよい。ロボット100に正対した状態にあるユーザが特定音量領域および特定周波数帯域にて発声したとき、サーバ200の認識部212は、自らに対する「声掛け行為」がなされたと認識してもよい。また、体温程度の温度を検知したときにはユーザによる「接触行為」がなされたと認識し、接触認識した状態で上方への加速度を検知したときには「抱っこ」がなされたと認識する。ユーザがボディ104を持ち上げるときの物理的接触をセンシングしてもよいし、前輪102にかかる荷重が低下することにより抱っこを認識してもよい。
まとめると、ロボット100は内部センサ128によりユーザの行為を物理的情報として取得し、サーバ200の認識部212は快・不快を判定する。また、サーバ200の認識部212は特徴ベクトルに基づくユーザ識別処理を実行する。
【0070】
サーバ200の認識部212は、ロボット100に対するユーザの各種応対を認識する。各種応対行為のうち一部の典型的な応対行為には、快または不快、肯定または否定が対応づけられる。一般的には快行為となる応対行為のほとんどは肯定反応であり、不快行為となる応対行為のほとんどは否定反応となる。快・不快行為は親密度に関連し、肯定・否定反応はロボット100の行動選択に影響する。
【0071】
認識部156により認識された応対行為に応じて、サーバ200の親密度管理部220はユーザに対する親密度を変化させる。原則的には、快行為を行ったユーザに対する親密度は高まり、不快行為を行ったユーザに対する親密度は低下する。
【0072】
以上の基本構成を前提として、次に、本実施形態におけるロボット100の実装について、特に、本実装の特徴と目的および基本構成との相違点を中心として説明する。
【0073】
[ステーション500の探索機能の実装]
図6は、ロボット100が外皮314を装着した状態を表す図である。
図6Aは右側面図であり、
図6Bは正面図であり、
図6Cは背面図である。
なお、ロボット100の外観は、ほぼ左右対称となっている。
【0074】
ロボット100における胴部フレーム318の後部下方には、後輪103を収容するための収容口377が設けられる。収容口377の左右に一対の充電端子510が突設される。充電端子510の基端は、胴部フレーム318の内部に位置し、図示しない配線を介して充電回路に接続される。充電端子510の先端は、やや大径の円板状とされ、ボタン態様をなす。
【0075】
外皮314は、外皮本体420と弾性装着部422とを縫い合わせて構成される。外皮本体420および弾性装着部422は、いずれも柔軟素材からなる。外皮本体420は、頭部フレーム316に被せられる袋状部424と、袋状部424の左右側面から下方に延びる一対の手部426と、袋状部424の正面から下方に延びる延在部428と、袋状部424の背面から下方に延びる延在部430とを含む。袋状部424の前面側に、顔領域116を露出させるための開口部432が設けられている。
【0076】
弾性装着部422は、外皮314の底部を構成し、外皮本体420の前後の延在部428,430を下方で連結している。弾性装着部422には、収容口377と対応する位置に開口部434が設けられている。弾性装着部422の後部下方には一対の孔436が形成されている。孔436は、ボタン穴のような小幅形状を有するが、弾性装着部422が柔軟であるため、幅方向に押し広げることができる。これらの孔436に、一対の充電端子510が挿通される。充電端子510の孔436への挿通後、孔436は弾性力により元の小幅形状に戻る。それにより、充電端子510の頭部が孔436の周辺に引っ掛かり、外皮314が脱げることを防止できる。すなわち、充電端子510は、充電のための端子であるとともに、外皮314を固定するための部材でもある。
【0077】
また、ロボット100の後部カバー107(尻尾)には、内部センサ128として赤外線センサ172および一対のマイク174が設けられている。すなわち、後部カバー107の中央部に赤外線センサ172が設けられ、その左側に左マイク174L、右側に右マイク174Rが設けられている。後部カバー107が開き、後輪103が出された状態で、これらはロボット100の後方を向く。赤外線センサ172および一対のマイク174は、ロボット100がステーション500へ進入する際の誘導制御に用いられる。
【0078】
図7は、ステーション500の外観を表す斜視図である。
なお、以下では説明の便宜上、ステーション500においてロボット100の進入方向奥側(進入方向先側)を「奥側」、進入方向手前側(進入方向後側)を「手前側」,「正面側」と表現することがある。
ステーション500は、サーバ200を内蔵し、ベース504、本体512のほか、一対の背面パネル508(左パネル508L、右パネル508R)などの装飾のための部材を含む。ステーション500は、充電機能とサーバ機能を単一の筐体にて提供する。
【0079】
ベース504は、平面視長方形状をなし、左右に充電スペース502が設けられる。ベース504は、給電端子530を含む。給電端子530とロボット100の充電端子510が接続することにより、ステーション500からロボット100に電力が供給される。
【0080】
ベース504の上面中央に本体512が立設される。本体512は、上半部が拡大された筐体514を有する。一対の背面パネル508は、筐体514の正面左右にそれぞれ配置される。背面パネル508は、固定部材509を介して本体512に着脱可能に取り付けられる。固定部材509はアーム状の部材であり、その一端が背面パネル508の裏面に、他端が筐体514の裏面にそれぞれ着脱可能に固定される。
【0081】
筐体514の左右には、各背面パネル508の下方位置に近距離誘導部252(左誘導部252L,右誘導部252R)がそれぞれ設けられている。また、筐体514の中央部には、中距離誘導部254が設置される。
【0082】
近距離誘導部252は、放射角度30~60度程度にて赤外線を発生させる近距離赤外線発生装置と、超音波を発生させる超音波発生装置を備える。近距離赤外線発生装置による赤外線(以下、「近距離赤外線」とよぶ)の送信距離は最大1メートル程度である。中距離誘導部254も赤外線を発生させる中距離赤外線送信装置を含む。中距離赤外線発生装置による赤外線(以下、「中距離赤外線」とよぶ)の送信距離は最大4メートル程度である。
【0083】
中距離赤外線は、近距離赤外線より光量(パワー)が強くなるように設定される。本実施形態では、近距離誘導部252と中距離誘導部254は別構成としたが、近距離誘導部252と中距離無線発生装置を一体として構成してもよい。
【0084】
近距離誘導部252が発生させる近距離赤外線と超音波をまとめて「近距離誘導信号」とよぶ。また、中距離誘導部254が発生させる中距離赤外線を「中距離誘導信号」ともよぶ。近距離誘導信号と中距離誘導信号をまとめて「誘導信号」とよぶ。
【0085】
筐体514の上部には発光部256が設置される。発光部256は、LED(Light Emitting Diode)による複数の光源を含み、可視光(誘導光)によりロボット100にステーション500の位置を伝える。
【0086】
本実施形態のロボット100は、定期的にステーション500の充電スペース502に帰還し、定期的にステーション500から充電を受けるものとして説明する。本実施形態においては、ロボット100は、45分活動したあと、15分の充電(休憩)をするという行動パターンを繰り返すものとして説明する。以下、ロボット100が充電スペース502に戻る処理のことを「帰還処理」とよぶ。また、ロボット100が充電スペース502に入り、充電端子510と給電端子530が接続または接続可能な状態になることを「入庫」とよぶ。
【0087】
図8は、本実施形態におけるステーション500の機能ブロック図である。
本実施形態のロボット100は全天周カメラ113によって定期的に周辺を撮像することにより多数の撮像画像(静止画像)を取得する。ロボット100は、撮像画像に基づく記憶(以下、「画像記憶」とよぶ)を形成する。
【0088】
画像記憶は、複数のキーフレームの集合体である。キーフレームは、撮像画像における特徴点(特徴量)の分布情報である。本実施形態のロボット100は、画像特徴量を用いたグラフベースのSLAM(Simultaneous Localization and Mapping)技術、より具体的には、ORB(Oriented FAST and Rotated BRIEF)特徴量に基づくSLAM技術によりキーフレームを形成する(特許文献5参照)。
【0089】
ロボット100は、移動しながらキーフレームを定期的に形成することにより、キーフレームの集合体、いいかえれば、画像特徴分布として画像記憶を形成する。ロボット100は、現在地点において取得したキーフレームと、既に保有している多数のキーフレームを比較することにより、現在地点を推定する。すなわち、ロボット100は、実際に視認している撮像画像とかつて視認した撮像画像(記憶)を比較し、自らの現在の状況と過去の記憶を整合させることで「空間認識」を行う。特徴点の集合体として形成される画像記憶は、いわゆるマップ(地図)となる。ロボット100は、現在地点を推定ながら移動しつつ、マップを更新する。
【0090】
基本構成のロボット100は、キーフレームではなく外部センサ114により位置を認識することが前提となっている。本実施形態のロボット100は、キーフレームのみに基づいて場所を認識するものとして説明する。
【0091】
ステーション500は、サーバ200および充電装置506を内蔵する。ステーション500の通信部204は、サーバ200および充電装置506の間で共通化されている。マップなどのロボット100が用いるデータについても、複数のロボット100で共有される。マップ格納部170は、各ロボット100からキーフレームを取得することにより共通(単一)のマップを生成する。
【0092】
本実施形態においては、サーバ200と充電装置506を内蔵するステーション500および1以上のロボット100により「(ロボット100の)誘導システム」が形成される。誘導システムは、更に、ランドマーク装置280を含んでもよい。ランドマーク装置280は、ロボット100の帰還処理を支援する。ランドマーク装置280の役割については、
図17に関連して後述する。複数のロボット100が存在するときには、いずれかのロボット100がランドマーク装置280としての役割を担うこともできる。ロボット100をランドマーク装置280として機能させる方法については
図18に関連して後述する。
【0093】
(サーバ200)
サーバ200の各機能は、その機能を実現するためのプログラムがメモリにロードされ実体化(インスタンス化)することで実現される。サーバ200の処理能力により、ロボット100による各種処理を補う。サーバ200は、ロボット100のリソースとして利用できる。サーバ200のリソースをどのように利用するかはロボット100からのリクエストに応じて動的に決められる。たとえば、ロボット100において、多数のタッチセンサからの検出値に応じて複雑なモーションを連続的に生成する必要がある場合、ロボット100におけるプロセッサ122の処理をモーションの選択・生成に優先的に割り当て、周囲の状況を画像認識するための処理はサーバ200の認識部212でおこなうとしてもよい。このように、ロボット100とサーバ200の間でロボットシステム300の各種処理を分散化できる。サーバ200の各機能は、ロボット100ごとに独立して実体化される。たとえば、サーバ200はロボット100Aのための認識部212とは別にロボット100Bのための認識部212を用意してもよい。
【0094】
サーバ200は、サーバ200の設置場所(担当エリア)に存在するロボット100を補助する。たとえば、サーバ200はユーザの自宅に設置され、そこに存在するロボット100のために利用される。ロボット100は、移動のためにマップを生成するが、マップはユーザの自宅に存在する複数のロボット100で共有される。ロボット100はSLAMを用いて、マップを形成する。マップを形成する特徴点(キーフレーム)には、壁などの移動しない静的な構造によるものと、椅子やおもちゃなどの移動する動的な構造によるものとが含まれる。そのため、マップは一度作成すれば永続的につかえる種類の情報ではなく、常に更新が必要な情報である。そこで、複数のロボット100がマップを共有することで、効率的にマップを更新できる。
【0095】
データ処理部202の位置管理部208は、マップ管理部168を含む。マップ管理部168は、画像記憶に基づくマップを管理する。マップ管理部168は、複数のロボット100で共有されたマップに対して更新を繰り返す。
【0096】
データ格納部206は、更に、マップ格納部170を含む。データ格納部206は、複数のロボット100の情報をまとめて格納するため、複数の100は206の各種データを共有できる。マップ格納部170は、マップを格納する。
【0097】
(通信部204)
通信部204は、イベント受信部246、発光指示受信部248、入庫要求受信部250および入庫可否送信部258を含む。
イベント受信部246は、ロボット100から、ロボット100が認識した各種イベントを示すイベント情報(環境情報)を受信する。サーバ200の認識部212はイベント情報を解析する。親密度管理部220および状態管理部244はイベント情報に基づいて、親密度や感情パラメータ等を変化させる。動作制御部222はイベント情報に基づいてロボット100のモーションを選択する。
【0098】
発光指示受信部248は、ロボット100から発光信号を受信する。発光信号は、誘導光の発光態様(光り方)を指定する信号である。入庫要求受信部250は、ロボット100から入庫要求信号を受信する。入庫要求信号は、ロボット100がステーション500への入庫(帰還)を要求する信号である。入庫可否送信部258は、入庫要求信号に対応して、入庫可否を示す入庫可否信号をロボット100に返信する。
【0099】
(充電装置506)
充電装置506は、発光制御部224、入庫判定部262、充電制御部264、発光部256および誘導部266を含む。
発光部256は、誘導光を発生させる光源である。発光制御部224は、発光部256の発光態様を制御する。入庫判定部262は、入庫要求信号が受信されたとき、入庫可否を判定する。充電制御部264は、入庫したロボット100を充電する。誘導部266は、中距離誘導部254および近距離誘導部252に対応する。近距離誘導部252は、左誘導部252Lと右誘導部252Rを含む。
【0100】
本実施形態においては、通常、発光部256は常時点灯している。ロボット100は、発光部256の誘導光を検出することによりステーション500の所在地点を認識する。ロボット100は、誘導光の発光態様を指定することにより、誘導光であるか誘導光以外の光であるかを発光信号により能動的に確認できる(詳細は後述)。本実施形態に代えて、発光部256は常時消灯しており、発光信号を受信した場合に発光するように発光部256を構成してもよい。
【0101】
ロボット100は、誘導光を目印としてステーション500に近づく。続いて、ロボット100は、中距離誘導部254からの中距離赤外線(中距離誘導信号)を検出し、充電スペース502に対する位置合わせを行う。ロボット100は、更にステーション500に近づくと、近距離誘導部252からの近距離誘導信号(近距離赤外線と超音波)に基づいて、充電スペース502に入庫する。充電端子510と給電端子が接続されたとき、充電制御部264は、ロボット100のバッテリー118を充電する。
【0102】
図9は、本実施形態におけるロボット100の機能ブロック図である。
ロボット100は、更に、発光部138(光源)を含む。発光部138は、ロボット100がランドマーク装置として機能するときに発光する。発光部138は、ロボット100のツノ112など任意の箇所に設けられる。ロボット100の目110を発光させてもよい。
【0103】
データ処理部136は、更に、撮像画像取得部146、発光制御部158および電池残量監視部176を含む。
撮像画像取得部146は、全天周カメラ113から撮像画像を取得する。撮像画像取得部146は、定期的に撮像画像を取得する。発光制御部158は、発光部138の発光態様を制御する。電池残量監視部176は、バッテリー118の電池残量(充電率)を監視する。
【0104】
認識部156は、更に、画像特徴取得部152と光認識部154、測距部162、位置判定部166を備える。
画像特徴取得部152は、撮像画像から画像特徴量を抽出することによりキーフレームを生成する。光認識部154は、ステーション500またはランドマーク装置280からの発光を認識する。本実施形態においては、光認識部154は全天周カメラ113により外部光を認識するが、別途設けられる光センサに基づいて外部光を認識してもよい。測距部162は、中距離赤外線、近距離赤外線および超音波に基づいて、ロボット100とステーション500の距離および相対角度を計算する。位置判定部166は、ステーション500に対してロボット100の現在地点が「位置条件」を満たすか否かを判定する。位置条件は、ロボット100がランドマーク装置として機能するときの移動制約のための条件である。
【0105】
ロボット100は、ステーション500から離れているときでも、キーフレームに基づいて生成されるマップを利用することにより、ステーション500の存在する方向を推定できる。ロボット100は、ステーション500を視認可能な位置にいれば、誘導光によりいっそう確実にステーション500の所在地点を特定できる。ロボット100がステーション500に近づけば、ロボット100は中距離誘導信号、更には近距離誘導信号を検出する。このように、ロボット100はステーション500に近づくほど複数の誘導手段に基づいてステーション500の正確な位置を推定できる。この結果、ロボット100の帰還処理の確実性を高めることができる。
【0106】
通信部142は、発光指示送信部140、発光指示受信部144、入庫要求送信部260および入庫可否受信部268を含む。
発光指示送信部140は、発光信号をステーション500またはランドマーク装置280に送信する。発光指示受信部144は、他のロボット100から発光信号を受信する。入庫要求送信部260は入庫要求信号を送信する。入庫可否受信部268は入庫可否信号を受信する。
【0107】
図10は、ランドマーク装置280の機能ブロック図である。
ランドマーク装置280は、発光部282(光源)、発光制御部284および発光指示受信部286を含む。発光指示受信部286は、発光信号を受信する。発光制御部284は、発光信号により指示された発光態様により、発光部282を発光させる。
【0108】
図11は、ロボット100がステーション500を探索する処理過程を示すシーケンス図である。
ロボット100の光認識部154は、帰還処理の開始に際し、誘導光を探索する。光認識部154は誘導光を検出することでステーション500の位置を特定する。しかし、ステーション500が設置される環境によっては、誘導光ではないが誘導光に似ている光(以下、「類似光」とよぶ)が検出され、ロボット100がステーション500の位置を誤認してしまう可能性もある。
【0109】
ロボット100の発光指示送信部140は、複数の誘導光が検出されたとき、いいかえれば、類似光が検出されたときには、特有の発光態様を指定する発光信号を送信する(S10)。発光指示送信部140は、あらかじめ定められた唯一の発光態様を発光信号により指定してもよいし、複数種類の発光態様からいずれかの発光態様を選択した上で発光信号を送信してもよい。
【0110】
ステーション500の発光指示受信部248は、発光信号を受信する。ステーション500の発光制御部224は、発光信号により指定された発光態様を発光部256に設定し、発光部256を発光させる(S12)。ロボット100の光認識部154は、撮像画像から、指定された発光態様に対応する外部光を探索する(S14)。光認識部154は、指定された発光態様にて発光する外部光を誘導光として特定する。ロボット100の動作制御部150は、誘導光の発光地点を移動目標地点として設定し、ロボット100はステーション500に向けて移動する(S16)。
【0111】
このような制御方法によれば、ロボット100は、発光信号により発光態様を指定することにより、誘導光を確実に認識できる。ステーション500は、発光信号に対応した誘導光を発生させることにより、ロボット100に対してステーション500の位置を知らせることができる。ロボット100は、多様な発光信号を送信することにより、類似光を誘導光と誤認することがなくなる。
【0112】
ステーション500は、擬似光にはありえない特殊な発光態様にて誘導光を発生させてもよい。たとえば、ステーション500は10Hzにて誘導光を常時点滅させてもよい。10Hzで点滅する擬似光が存在する可能性は低いため、ロボット100は発光信号を送信しなくても、10Hzの光を検出することでステーション500の位置を特定できるかもしれない。
【0113】
しかし、ステーション500が誘導光を常時10Hzにて点滅させるとすれば、ユーザは誘導光を煩わしく感じるかもしれない。ステーション500は、ロボット100から発光信号を受信したときだけ誘導光の発光態様を変化させれば、ユーザの目に負担をかけることなくロボット100をステーション500に導くことができる。
【0114】
なお、ロボット100が指定した発光態様に対応する外部光を複数検出したとき、いいかえれば、発光信号を送信したあとも誘導光を特定できなかったときには、発光指示送信部140は別の発光態様を指定する発光信号を送信すればよい。
【0115】
上述したように、サーバ200(ステーション500)のマップ管理部168は、撮像画像に基づくキーフレーム(画像特徴情報)からマップを生成する。マップ管理部168は、誘導光の発光地点であるステーション500の位置をマップの基準点として設定する。マップ管理部168は、マップに記録される誘導光の発光地点と、ロボット100から実際に視認される誘導光の発光地点を比較することにより、ロボット100の現在地点をより正確に把握できる。
【0116】
ロボット100の発光指示送信部140は、マップにおいて現在地点を見失ったときにも位置確認のために発光信号を送信してもよい。マップ管理部168は、発光信号に対応する誘導光に基づいて、現在地点を再確認する。ここでいう「現在地点を見失う」とは、「ロボット100の現在地点P1において画像記憶から想定されるキーフレームと実際の撮像画像から得られるキーフレームの類似度が所定の閾値よりも小さいこと(実際に見えている景色が、見えるはずの景色と異なる)」であってもよい。あるいは、電源のオフ等の不可抗力により、マップ管理部168が内蔵メモリに記憶していたマップのデータを失ったときであってもよい。
【0117】
マップ管理部168は現在地点を見失ったときにはロボット100にロスト信号を送信する。発光指示送信部140は、ロスト信号を受信したとき、発光信号を送信する。光認識部154は誘導光を検出し、誘導光の見える方向をサーバ200に通知する。マップ管理部168は、マップ(画像記憶)を参照し、誘導光の発光方向からロボット100の現在地点を再特定する。たとえば、誘導光がロボット100の左方向に見えるときには、ロボット100の左にステーション500(基準点)があることを特定できる。マップ管理部168は、マップ(画像記憶)において基準点を左に見る位置がロボット100の現在地点であると認識できる。
【0118】
図12は、発光部256の拡大斜視図である。
発光部256は、中央光源380(第2の光源)と、2つの側方光源382(左光源382L、右光源382R)(第1の光源)を含む。左光源382Lおよび右光源382Rは縦長のLED光源として第1面386に形成される。中央光源380は横長のLED光源として、第1面386よりも5~10ミリメートル程度奥側にある第2面384に形成される。
【0119】
発光部256の高さは、ロボット100のツノ112(全天周カメラ113)と同程度の高さに設定される。これは、全天周カメラ113から誘導光を捉えやすくするためである。発光部256をロボット100のツノ112と同程度の高さとすることにより、光認識部154がツノ112の高さからかけ離れた位置にある類似光を誘導光と誤認する可能性が低くなる。
【0120】
図13は、正面から見たときの発光部256の模式図である。
図13は、ステーション500の正面側(前方)に位置するロボット100から、発光部256を見たときの状態を示す。中央光源380の左端と左光源382Lの右端までの見た目上の距離をWLとする。また、中央光源380の右端と右光源382Rの左端までの見た目上の距離をWRとする。正面視においては、WRとWLは等しい。ロボット100がステーション500と正対するとき、中央光源380と2つの側方光源382は、ロボット100から左右対称にて視認される。
【0121】
図14は、側方から見たときの発光部256の模式図である。
図14では、ステーション500から見て右前方に位置するロボット100から、発光部256を見たときの状態を示す。いいかえれば、ロボット100の右前方にステーション500が位置しているときに、ロボット100から発光部256を見たときの状態を示す。左光源382Lおよび右光源382Rが設置される第1面386は、中央光源380が設置される第2面384よりも正面側にある。このため、ロボット100がステーション500の側方に位置するとき、中央光源380と側方光源382の見た目上の位置が大きくずれる。
【0122】
まず、ロボット100は、中央光源380を右側方から見るとき、中央光源380は短く見える。また、中央光源380は左光源382Lに正面視(
図13)のときよりも近づいて見える。このため、距離WLは正面視のときに比べると短くなる。この結果、ロボット100からは、WL<WRに見える。ステーション500の右前方に位置するロボット100から発光部256を見ると、中央光源380に対して2つの側方光源382は左右対称ではなくなる。
【0123】
もし、中央光源380および側方光源382が同一面に形成される場合、発光部256を斜めからみたときには、距離WRおよびWLはどちらも同じだけ小さくなる。中央光源380は見た目上短くなるものの、中央光源380と2つの側方光源382は左右対称にて視認される。このため、ロボット100は誘導光の見え方から、ロボット100とステーション500の位置関係を把握しづらくなる。
【0124】
図12に示したように側方光源382が形成される第1面386と中央光源380が形成される第2面384の位置を前後にずらすことにより、ロボット100はステーション500との相対方向を視認しやすくなる。具体的には、ロボット100から見たときの見た目上の幅がWL<WRのとき(中央光源380が左光源382Lに近づいて見えるとき)、ロボット100はステーション500から見て右前方に位置していることを認識できる。また、WRとWLの比率から、ロボット100の測距部162はステーション500からの相対角度を割り出すこともできる。ロボット100がステーション500から見て左前方に位置するときにはWL>WRとなる。
【0125】
図15は、近距離誘導信号(近距離赤外線と超音波)によるロボット100の位置調整方法を説明するための模式図である。
帰還処理に際し、ロボット100は誘導光を探索し、中央光源380および側方光源382の位置関係に基づいて位置合わせをしながら充電スペース502に向かう。ロボット100がステーション500に近づくと、ロボット100は中距離誘導部254から送信される中距離赤外線を検出し、中距離赤外線の発光地点を移動目標地点として、更に、ステーション500に近づく。このとき、ロボット100は前進方向かつ低速にてステーション500に近づく。ロボット100のツノ112には複数の赤外線センサ(図示せず)が周囲に向けて環状に設置されている。複数の赤外線センサそれぞれが中距離赤外線を検出し、各赤外線センサの受信強度に基づいて、測距部162はロボット100とステーション500との距離および角度を計算する。
【0126】
ロボット100がステーション500に更に近づくと、ロボット100は、ステーション500に対して背を向けるように旋回する。その後、ロボット100は、ステーション500に向かって後進する。ツノ112に設置される赤外線センサは、ステーション500から離れているときには中距離赤外線を検出できるが、ステーション500に近づきすぎると一時的に中距離赤外線を検出できなくなる。中距離赤外線の照射範囲からツノ112が外れるためである。動作制御部150は、ツノ112の赤外線センサが中距離赤外線を検出できなくなったときにロボット100を旋回させる。あるいは、全天周カメラ113による撮像画像に基づいて、測距部162はロボット100とステーション500との距離を計測してもよい。具体的には、撮像画像(全天周画像)においてステーション500に対応する画像領域の大きさが所定サイズ以上となったとき、動作制御部150はロボット100を旋回させてもよい。
【0127】
ロボット100が後ろ向きになると、ロボット100の背面にある赤外線センサ172(
図6C参照)は近距離赤外線を検出し、左マイク174Lと右マイク174Rはそれぞれ超音波を検出する。測距部162は近距離赤外線を検出することでロボット100とステーション500が特に近づいていることを認識する。
【0128】
ステーション500の近距離誘導部252は、近距離赤外線(高速信号)と超音波(低速信号)を同時に発生させる。赤外線は超音波に比べると伝播速度が大きいので、赤外線センサ172が近距離赤外線を検出するよりも遅れてマイク174は超音波を検出する。測距部162は近距離赤外線の検出時点と超音波の検出時点の差分時間に基づいて、ロボット100から近距離誘導部252までの距離と角度を計算する。近距離誘導部252は、一定の周期で赤外線と超音波を同時に発生するので、ロボット100は近距離誘導部252までの距離と角度を連続的に測定できる。
図15は、右誘導部252Rの周辺に形成される右スペース502Rにロボット100が近づく様子を示している。
【0129】
より具体的には、右誘導部252Rとロボット100の距離と相対角度に応じて、右マイク174Rによる超音波の検出時点と左マイク174Lによる超音波の検出時点に差分時間が生じる。この差分時間に基づいて、測距部162は左マイク174Lから右誘導部252Rまでの距離を算出する。測距部162は右マイク174Rから右誘導部252Rまでの距離も同様に算出する。測距部162は、2つの距離(座標)に基づいて、ロボット100の進行方向(後退方向)と右誘導部252Rとの相対角度を特定する。動作制御部150は、この相対角度に基づいて、ロボット100の進行方向を微調整しながらロボット100を後退させる。
【0130】
ステーション500は、入庫許可信号を送信したあと、入庫対象となる充電スペース502の給電端子530に微弱電流を流す。ロボット100が充電スペース502に入庫したとき、充電端子510は給電端子530と接続され、測距部162は微弱電流が検出されたときに入庫が完了したと判定する。ロボット100は微弱電流が検出されたときに確認信号を送信し、ステーション500の充電制御部264は確認信号を受信したときに電力供給を開始する。
【0131】
ロボット100の後輪103がステーション500に乗り上げ、ロボット100の充電端子510とステーション500の給電端子530が接近したとき、徐々にマイク174は近距離誘導部252から出力される超音波や赤外線を検出できなくなる。これは、近距離誘導部252とマイク174の高さが大きく異なるため、ステーション500とロボット100が接近しすぎたときに近距離誘導部252による超音波の送信範囲からマイク174が外れてしまうためである。測距部162は、近距離赤外線を検出できなくなってから経過した時間を計測する。動作制御部150は、所定の基準時間以内に微弱電流を検出できなかったときには入庫失敗と判定し、ロボット100を前進させてステーション500から離れ、帰還処理を再実行させる。
【0132】
動作制御部150は、前輪102が空転しているときにも入庫失敗とみなして帰還処理を再実行させてもよい。ロボット100は、慣性計測装置(IMU:Inertial Measurement Unit)を搭載してもよい。基準時間をすぎても慣性計測装置がロボット100の移動を検出しているときには、ロボット100が正しく入庫できていない可能性が高い。このときにも動作制御部150は帰還処理を再実行させてもよい。
【0133】
図16は、複数のロボット100がステーション500へ帰還を希望するときの制御方法を説明するためのタイムチャートである。
本実施形態におけるステーション500は、2体のロボット100(以下、「ロボット100A」および「ロボット100B」とよぶ)を2つの充電スペース502において同時に充電できる。ただし、2体のロボット100A,100Bが同時にステーション500に帰還することはできない。ステーション500周辺が混雑するのを防ぐため、本実施形態においては、ステーション500は1体ずつロボット100をステーション500に入庫させる。ロボット100Aが左スペース502Lに入庫するときには、誘導部266は左誘導部252Lから近距離誘導信号(近距離赤外線と超音波)を発生させるが、右近右誘導部252Rからは近距離誘導信号を発生させない。2つの充電スペース502のいずれに入庫させるかは入庫判定部262が決定する。
【0134】
図16の時刻t0において、ロボット100Aがステーション500に入庫要求信号を送信したとする。この時点ではステーション500にロボット100Bは入庫していないものとする。ステーション500の入庫判定部262は、ロボット100Aの左スペース502Lへの入庫を許可する。入庫可否送信部258は、時刻t1において入庫許可を示す入庫可否信号(以下、「入庫許可信号」とよぶ)をロボット100Aに送信する。ロボット100Aは、誘導光、中距離赤外線に基づいてステーション500に近づく。また、ステーション500の誘導部266は、左誘導部252Lから近距離誘導信号を発生させる。時刻t2において、ロボット100Aは近距離誘導信号にしたがって左スペース502Lに入庫する。給電端子530と充電端子510が接続され、充電制御部264は時刻t3においてロボット100Aの充電を開始する。
【0135】
入庫判定部262は、ロボット100Aから入庫要求信号を受け付けた時刻t0からロボット100Aが充電を開始する時刻t3までを「拒否期間」として設定する。拒否期間中に、もう一方のロボット100Bから入庫要求信号を受け付けたときには、入庫判定部262はロボット100Bの入庫を拒否する。入庫可否送信部258は、入庫拒否を示す入庫可否信号(以下、「入庫拒否信号」とよぶ)をロボット100Bに送信する。ロボット100Bは、入庫拒否されたときには、所定時間経過後に改めて入庫要求信号を送信する。入庫可否送信部258は、拒否期間の終了後、改めてロボット100Bの入庫を許可してもよい。このような制御方法によれば、複数のロボット100を順番にステーション500に導くことができる。
【0136】
拒否期間は、時刻t1から時刻t3までの期間としてもよいし、時刻t1から時刻t2までの期間、時刻t0から時刻t2までの期間としてもよい。入庫拒否されたとき、ロボット100Bの動作制御部150(あるいはサーバ200の動作制御部222)は、ステーション500から所定距離以内、たとえば、2メートル以内をロボット100Bの行動禁止区間として設定してもよい。このような制御方法によれば、ロボット100Bがロボット100Aの帰還の邪魔にならないように制御できる。
【0137】
ロボット100は、入庫要求信号を送信するとき以外、あるいは、入庫許可信号を受信して帰還処理を実行するとき以外は、ステーション500の周辺に形成される所定範囲、たとえば、1メートル以内の範囲には入らないように設定されてもよい。ロボット100Aは、入庫許可されたときには、ロボット100Bに「帰還処理中」を示す信号を送信してもよい。ロボット100Bは、ロボットAからこの信号を受信したときには、ステーション500を含む所定範囲内には入らないとしてもよい。
【0138】
拒否期間に限らず、ロボット100Aがステーション500に向かっているとき、ロボット100Bはロボット100Aの進路(ロボット100Aとステーション500を結ぶ直線)を行動可能範囲から除外してもよい。このように、ロボット100Bはロボット100Aの進路から離れることでロボット100Aの帰還を邪魔しないように制御してもよい。ロボット100Aは、帰還処理中であることをツノ112に含まれる赤外線通信機等によりロボット100Bに通知してもよい。あるいは、ロボット100Aは、ツノ112にLEDなどの発光部を備えてもよい。ロボット100Aは、帰還処理中においてはこのLEDを点灯させてもよい。ロボット100Bはロボット100AのLEDの点灯状態を確認することでロボット100Aが帰還処理中であるか否かを確認できる。ロボット100Bは、ロボット100Aが帰還処理中であると認識したときには、ステーション500から離れる、あるいは、ロボット100Aの進路から離れるとしてもよい。つまり、充電のために帰還中のロボット100Aの移動が優先され、他のロボットはロボット100Aが最短距離でステーション500に帰還できるように移動する。
【0139】
図17は、ランドマーク装置280によりロボット100をステーション500に誘導する方法を説明するための模式図である。
図17においては、ステーション500とロボット100の間に遮蔽物516がある。このため、ロボット100はステーション500の誘導光を視認できない。ロボット100は、キーフレームに基づいて生成されるマップを利用して、ステーション500の所在地点を認識できる。本実施形態においては、更に、ランドマーク装置280がロボット100をステーション500に導くことにより、ロボット100はより確実にステーション500に帰還しやすくなる。
【0140】
図17においては、まず、ロボット100の光認識部154は、全天周カメラ113による撮像画像から誘導光を探索する。遮蔽物516によりステーション500が隠されているため、光認識部154は誘導光を検出できない。次に、ロボット100の発光指示送信部140は、発光信号L0を送信する。ステーション500は、仮に発光信号L0を受信できたとしても、遮蔽物516が存在するためロボット100は誘導光をやはり視認(検出)できない。
【0141】
ロボット100の発光指示送信部140は、発光信号L0に対応する誘導光を検出できないとき、検索信号を送信する。検索信号は所定のパターンにて点滅する光信号であってもよいし、電波信号であってもよい。続いて、ロボット100の発光指示送信部140は、新たな発光態様を指定する発光信号L1(第1の発光態様を指定する第1の発光信号)を送信する。ランドマーク装置280の発光指示受信部286が検索信号を受信したとき、発光制御部284は発光信号の受信準備状態に遷移する。発光指示受信部286が発光信号L1を受信すると、発光制御部284は発光信号L1にしたがって発光部282を発光させる。
【0142】
ロボット100の光認識部154は、ランドマーク装置280から発光信号L1に対応する光を認識する(以下、「ランドマーク光」とよぶ)。ロボット100からランドマーク装置280は遮蔽されていないため、ロボット100はランドマーク光を認識できる。ロボット100の動作制御部150は、ロボット100の当面の移動目標地点として、ランドマーク光の発光地点を設定する。ロボット100は、ランドマーク装置280の所在地点に移動する(S20)。
【0143】
ロボット100は、ランドマーク装置280の近く、たとえば、ランドマーク装置280から0.5メートル以内の範囲に入ったとき、新たな発光態様を指定する発光信号L2(第2の発光態様を指定する第2の発光信号)を送信する。ステーション500は、発光信号L2に対応する誘導光を発生させる。ロボット100は、ランドマーク装置280のそばにいるときにはステーション500の誘導光を視認(検出)できる。ロボット100は、ステーション500の誘導光を認識した上で、ステーション500に帰還する(S22)。このような制御方法によれば、ロボット100から誘導光を認識できないときであっても、いったんランドマーク装置280に近づくことでステーション500に戻ることができる。
【0144】
図18は、ロボット100Bによりロボット100Aをステーション500に誘導する方法を説明するための模式図である。
ロボット100Bをランドマーク装置280として機能させることもできる。
図18においては、ステーション500とロボット100Aの間に遮蔽物516がある。このため、ロボット100Aからは誘導光を視認できない。一方、ロボット100Bは誘導光を視認できる。ロボット100Aは、発光信号L0を送信するが、誘導光を検出できない。このため、ロボット100Aは、新たな発光態様を指定する発光信号L1(第1の発光態様を指定する第1の発光信号)を送信する。
【0145】
ロボット100Bの発光指示受信部144は発光信号L1を受信する。ロボット100Bの発光制御部158は、発光信号L1にしたがって発光部138を発光させる。ロボット100Bの発光がランドマーク光として機能する。ロボット100Aは、ロボット100Bのランドマーク光を検出し、ロボット100Bに近づく(S30)。ロボット100Aはロボット100Bの近くで新たな発光態様を指定する発光信号L2(第2の発光態様を指定する第2の発光信号)を送信する。ステーション500は、発光信号L2に対応する誘導光を発生させる。ロボット100Aは誘導光を検出し、ステーション500に帰還する(S32)。
【0146】
図18に示す規定周辺領域520は、誘導光を視認可能な範囲を示す。ロボット100Aの位置判定部166は、ロボット100Aが規定周辺領域520の外に出たと判定したとき、位置条件が不成立と判定し、離脱信号をロボット100Bに送信する。ロボット100Bが離脱信号を受信したとき、ロボット100Bの動作制御部150(またはサーバ200の動作制御部222)はロボット100Bの行動範囲を規定周辺領域520に限定する。ロボット100Aが規定周辺領域520から出たときには、ロボット100Bを規定周辺領域520にとどまらせることでロボット100Bにランドマーク装置としての役割を担わせることができる。
【0147】
ステーション500は、誘導光を常時点灯させてもよい。ロボット100の位置判定部166は、ステーション500の誘導光を全天周カメラ113により常時検出し、誘導光が見えなくなったときに位置条件不成立(規定周辺領域520の外に出た)と判定してもよい。規定周辺領域520は、誘導光の視認可否に基づいて概念的に定められてもよいし、マップにおいてあらかじめステーション500の周辺の所定領域として明示的に設定されてもよい。
【0148】
<総括>
以上、実施形態に基づいてロボットシステム300を説明した。
本実施形態によれば、ロボット100はステーション500からの誘導光を手がかりとしてステーション500の所在地点を認識する。ロボット100は、更に、発光信号を送信することにより、誘導光と類似光を見分けることができる。ロボット100は電池残量が残り少ないときであっても、類似光に惑わされて無駄な移動(電力浪費)をすることなく、ステーション500に帰還できる。誘導光と通常時においても特殊な発光態様(類似光と誤認されにくい発光態様)にて発光させるとすると、ユーザは誘導光を煩わしく感じる可能性がある。発光信号を受信したときだけ特殊な発光態様にて誘導光を発生させることにより、このような問題点を解消できる。また、充電ステーション500から常時電波を発生させることは、他の電子機器への影響も考慮すると好ましくないと考えられる。
【0149】
発光信号を送信したあとでも擬似光と誘導光を識別できないときには、別の発光態様を指定する発光信号を再送信すればよい。ステーション500は、発光信号に対応して発光態様を変化させることができるため、ロボット100はステーション500を確実に特定できる。
【0150】
ステーション500の発光部256は、複数の光源(中央光源380と側方光源382)を有する。中央光源380と2つの発光部282により形成される特有の発光形状により、ロボット100は誘導光を特定しやすくなる。更に、側方光源382を中央光源380よりも手前側に配置することにより、ロボット100は誘導光の見え方に応じて、ロボット100とステーション500の相対角度を認識できる。ロボット100は、誘導光の見え方に基づいて、ステーション500に対して正面に近い位置から帰還するように移動方向を調整する。
【0151】
ステーション500においては、充電装置506とサーバ200が一体として形成される。充電装置506とサーバ200を単一筐体とすることにより、ロボットシステム300全体をコンパクトに形成できる。ステーション500はロボット100の入庫にともなう衝撃を受け止める必要があるため、ある程度の重量を有することが望ましい。ステーション500にサーバ200を内蔵させることにより、ステーション500の重量を合理的に増加させることができる。サーバ200の荷重はステーション500の安定性にも寄与する。
【0152】
本実施形態におけるステーション500は、2体のロボット100Aとロボット100Bを同時に充電できる。ロボット100ごとにステーション500を用意しなくてもよいため、ステーション500をコンパクトに形成できる。また、入庫要求信号に基づいて、複数のロボット100を順番に入庫させる方式であるため、ステーション500の近くで複数のロボット100が混雑するのを防ぎやすくなる。ロボット100Aの帰還処理中にロボット100Bも帰還しようとすると、ロボット100Aのための誘導信号とロボット100Bのための誘導信号が混在する可能性がある。充電装置506の誘導部266は、左誘導部252Lと右誘導部252Rから同時に誘導信号を発生させないように制御することで誘導信号の混在を防止している。
【0153】
ロボット100Aとロボット100Bは順番に入庫する。ロボット100Aの帰還処理中は、ロボット100Bは待たされる。ロボット100Aが入庫すると、ロボット100Bは帰還処理を開始する。ロボット100Aとロボット100Bが行儀よく順番にステーション500に入庫し、入庫後はロボット100Aとロボット100Bが隣り合って充電を受ける。ロボット100Aとロボット100Bが並んで充電を受ける姿(
図1参照)により、ユーザに第2の発光態様を指定する第2体ならではの可愛らしさをアピールできる。
【0154】
ロボット100は、ステーション500の誘導光の発光地点をマップの基準点として設定する。ロボット100は、キーフレームに基づいてマップを形成するが、誘導光の発光地点を基準点とすることで現在地点がマップ(画像記憶)のどの地点に対応するかをいっそう確実に認識できる。ステーション500が誘導光により自らの所在地点を知らせることは、ロボット100のステーション500への帰還を容易にするだけではなく、ロボット100による位置認識にも有用である。
【0155】
ランドマーク装置280を設置することにより、ロボット100はステーション500から大きく離れたときでも、ランドマーク光を頼りとしてステーション500に戻ることができる。室内に1以上のランドマーク装置280を適切に配置しておけば、ロボット100の行動範囲を拡大しやすくなる。いいかえれば、ロボット100はステーション500から離れた場所であっても、ランドマーク装置280を視認できる限り安心して遠くに出かけることができる。
【0156】
また、ロボット100Aとロボット100Bが存在するとき、ロボット100Bがロボット100Aに対するランドマーク装置として機能してもよい。この場合には、一方のロボット100Aが遠くに移動しても、ロボット100Bがステーション500のそばにとどまることで、ロボット100Aはステーション500に戻りやすくなる。ロボット100Aは、ロボット100Bを視認できなくなるほどロボット100Bから離れないように行動範囲を制限してもよい。
【0157】
なお、本発明は上記実施形態や変形例に限定されるものではなく、要旨を逸脱しない範囲で構成要素を変形して具体化することができる。上記実施形態や変形例に開示されている複数の構成要素を適宜組み合わせることにより種々の発明を形成してもよい。また、上記実施形態や変形例に示される全構成要素からいくつかの構成要素を削除してもよい。
【0158】
1つのロボット100と1つステーション500(充電装置506とサーバ200)によりロボットシステム300が構成されるとして説明したが、ロボット100の機能の一部はステーション500のサーバ200により実現されてもよいし、サーバ200の機能の一部または全部がロボット100に割り当てられてもよい。1つのサーバ200が複数のロボット100をコントロールしてもよいし、複数のサーバ200が協働して1以上のロボット100をコントロールしてもよい。
【0159】
ロボット100やサーバ200以外の第3の装置が、機能の一部を担ってもよい。
図8、
図9において説明したロボット100の各機能とサーバ200の各機能の集合体は大局的には1つの「ロボット」として把握することも可能である。1つまたは複数のハードウェアに対して、本発明を実現するために必要な複数の機能をどのように配分するかは、各ハードウェアの処理能力やロボットシステム300に求められる仕様等に鑑みて決定されればよい。
【0160】
上述したように、「狭義におけるロボット」とはサーバ200を含まないロボット100のことであるが、「広義におけるロボット」はロボットシステム300のことである。サーバ200の機能の多くは、将来的にはロボット100に統合されていく可能性も考えられる。
【0161】
[変形例]
本実施形態においては、ロボット100の光認識部154は、帰還処理に際して、まず、誘導光を探索する。ロボット100は、誘導光を認識できないときに発光信号を送信するとして説明した。変形例として、ロボット100は、帰還処理に際しては、常に、発光信号を送信するとしてもよい。ロボット100は、発光信号に応答する外部光を誘導光として特定し、ステーション500に向けて移動を開始してもよい。
【0162】
電池残量監視部176は、バッテリー118の電池残量を監視する。ロボット100の動作制御部150は、バッテリー118の電池残量(充電率)が所定の閾値以下となったとき、帰還処理を開始してもよい。ロボット100の入庫要求送信部260は、バッテリー118の電池残量が所定の閾値以下となったとき、入庫要求信号を送信してもよい。ロボット100の発光指示送信部140は、電池残量が少なくなったときに発光信号を送信してもよい。ロボット100は、発光信号を入庫要求信号として利用してもよい。
【0163】
ロボット100は、ステーション500に入庫したとき、充電装置506だけでなくサーバ200とも有線接続されてもよい。具体的には、給電端子530は電力線だけでなく、データ線を備えてもよい。ロボット100の充電端子510についても同様である。ロボット100の充電端子510が給電端子530と接続したとき、サーバ200とロボット100はデータ線を介してデータの送受をしてもよい。
【0164】
上述したように、ロボット100は特徴ベクトルやイベント情報などの各種データをサーバ200に無線送信する。また、サーバ200からロボット100にも各種データが無線送信される。有線通信は無線通信よりもデータ転送速度が大きいため、大量データの送受には有線通信の方が適している。サーバ200は、ロボット100の充電中にロボット100が取得した画像および音声データを取得してもよい。ロボット100は、撮像画像等のデータをロボット100のデータ格納部148に蓄積しておき、充電時に蓄積したデータをサーバ200にアップロードしてもよい。
【0165】
サーバ200は、ロボット100の行動制御プログラムの更新版を外部サーバからダウンロードしてもよい。サーバ200は、ロボット100の充電中にロボット100に行動制御プログラムを送信してもよい。ロボット100は充電中に行動制御プログラムを更新し、充電完了前に自動的に再起動することで更新版の行動制御プログラムをインストールすればよい。このような制御方法によれば、行動制御プログラムの更新というコンピュータに特有の作業を充電中、いいかえれば、ユーザがロボット100にあまり注目していない期間にさりげなく実行できる。
【0166】
本実施形態においては、ロボット100は定期的に帰還処理を実行するとして説明した。ロボット100は、内蔵のスケジューラにしたがって帰還タイミングを決定する。
変形例として、ステーション500は帰還管理部(不図示)を備えてもよい。帰還管理部はスケジューラとしてロボット100の帰還タイミングを管理してもよい。ステーション500は、発光部256を通常時は消灯させてもよい。帰還管理部は帰還タイミングが近づいたときに発光部256を自動的に点灯させてもよい。ロボット100は、誘導光を検出したとき、帰還処理を開始してもよい。このような制御方法によれば、ステーション500によりロボット100の帰還タイミングを管理できる。ステーション500は複数のロボット100の帰還タイミングをずらすことにより、複数のロボット100の同時帰還を回避できる。ステーション500はロボット100Aを帰還させるときには黄色の誘導光を発生させ、ロボット100Bを帰還させるときには緑色の誘導光を発生させるとしてもよい。
【0167】
ロボット100は、誘導光を特定できたときには、特定信号を送信してもよい。ステーション500の通信部204は、特定信号を受信したときには誘導光を常時発光状態に設定してもよい。誘導光の発光態様を変化させると、たとえば、誘導光を点滅させると、ユーザが誘導光を気にする可能性もある。特定信号を受信したあとは常時発光状態に戻すことで、ユーザが誘導光を気にする期間を短くできる。ロボット100が入庫したとき、ステーション500は誘導光を消灯してもよい。
【0168】
ステーション500は、ロボット100Aから特定信号を受信したときには、誘導光の発光色を変化させてもよい。たとえば、ステーション500は通常は誘導光を青色で発光させておき、ロボット100Aの帰還処理中は誘導光を赤色で発光させてもよい。ロボット100Bは誘導光の発光色を確認することにより、ロボット100Aの帰還処理中であるか否かを知ることができる。ロボット100Bは、帰還処理を開始するときには誘導光の色を確認し、誘導光が赤色のときには帰還処理を待機すればよい。誘導光の色彩に限らず、他の発光態様にて同様の情報を通知してもよい。
【0169】
ステーション500は、発光部256を通常時においては消灯しておき、発光信号を受信したときだけ発光部256を点灯させるとしてもよい。このような制御方法によれば、発光部256の消費電力を抑制できる。誘導光を常時消灯に設定しておけば、ユーザは誘導光を視覚的にわずらわしく感じにくくなる。たとえば、ステーション500を寝室に設置する場合には、誘導光は通常時においては消灯しておくことが望ましいと考えられる。
【0170】
帰還管理部は、定期的にロボット100の帰還を促す帰還信号を送信してもよい。ロボット100は、帰還信号を受信したときには、帰還処理を開始する。帰還信号は、対象となるロボット100を指定するIDを含んでもよい。帰還信号は電波信号であってもよいし、可視光信号であってもよい。
【0171】
帰還管理部は、ロボット100Aが帰還したとき、ロボット100Bにも帰還信号を送信してもよい。このような制御方法によれば、ロボット100Aがステーション500(巣)に帰ると、ロボット100Bも退屈してステーション500(巣)に戻ってくるかのような複数のロボット100の「仲の良さ」を演出できる。
【0172】
帰還管理部は、ユーザがステーション500の周辺にいないときや、部屋の光量が少ないとき(ユーザがいない、または、深夜と想定されるとき)に帰還信号を送信してもよい。このような制御方法によれば、ロボット100がユーザとの関わりを必要としない時間帯をロボット100の充電機会として積極的に利用できる。ロボット100は、ユーザと積極的に関わることが期待される一方、ステーション500から適宜充電を受ける必要もある。ユーザがいないとき、いいかえれば、ユーザとの関わりが不要な時間帯を充電時間とすることで、ユーザから見た「ロボット100が休んでいる時間」を減らすことができる。ユーザがロボット100を活動的と感じるためには、ロボット100はユーザの見ていないときに充電することが望ましい。
【0173】
ユーザは、スマートフォンなどのユーザ端末において、ロボット100の充電時間を明示的に設定してもよい。たとえば、ユーザが10:00から10:10を充電時間と設定したとする。ユーザ端末はこのスケジュールデータをステーション500に送信する。ステーション500の帰還管理部は、スケジュールデータを登録しておく。帰還管理部は、10:00になったときに帰還信号を送信し、10:10になったときロボット100に離脱信号を送信してもよい。ロボット100は、離脱信号を受信したときには充電満了でなくても、ステーション500から離れて自律行動を再開する。このような制御方法によれば、ユーザは、ユーザ端末によりロボット100の充電時間をコントロールできる。たとえば、10:00から来客があるときには、ユーザは該当時間を充電時間とすることで、ロボット100が来客応対の邪魔にならないように制御できる。
【0174】
スケジュールに限らず、ユーザはユーザ端末からステーション500に帰還指示を送信してもよい。ステーション500は、ユーザ端末から帰還指示を受信したとき、ロボット100に帰還信号を送信する。ロボット100は、帰還信号を受信したときに帰還処理を開始する。たとえば、夜遅くまで子どもがロボット100と遊んでいるときであっても、親ユーザが帰還指示をこっそりと送信すれば、ロボット100は帰還処理を開始するため、ロボット100が眠たくなった、あるいは、疲れたためにステーション500(巣)に戻りたがっているかのような印象を子どもにもたせることができる。
【0175】
誘導光(光信号)、中距離誘導信号(中距離赤外線)、近距離誘導信号(近距離赤外線と超音波)により、ロボット100はステーション500との位置関係を知ることができる。ロボット100は、中距離赤外線を検出したときには、中距離赤外線に基づいてステーション500に近づく。ロボット100は、近距離赤外線および超音波を検出したときには近距離誘導信号にしたがってステーション500に更に近づく。
【0176】
ロボット100は、ステーション500との距離を測距センサにより計測し、ステーション500から所定距離以内に入ったときには中距離赤外線を無視し、近距離赤外線にしたがって帰還処理を続行するとしてもよい。あるいは、ロボット100は中距離誘導信号と近距離誘導信号の双方を検出したときには電波強度の高い方にしたがって帰還処理を実行するとしてもよい。
【0177】
本実施形態においては、誘導光(可視光)により、ステーション500はロボット100にその所在地点を知らせるとして説明した。変形例として、ステーション500は電波(不可視光)を送信することで遠距離にあるロボット100にその所在地点を知らせるとしてもよい。
【0178】
ロボット100は、発光態様Aにて発光信号LAを送信してもよい。ロボット100は、発光態様Aによる誘導光を認識できなかったとき、発光態様Bにて発光信号LBを再度送信するとしてもよい。ここでいう発光態様Aと発光態様Bは同一であってもよい。ただし、発光信号LBは、ランドマーク装置280を指定する情報が含まれるランドマーク装置280向けの信号である。
【0179】
ランドマーク装置280は、発光信号LBを受信したとき、発光態様Bにしたがってランドマーク光を発生させる。ロボット100はランドマーク光を検出してランドマーク装置280に近づくとしてもよい。このような制御方法によれば、ロボット100はステーション500の探索を最優先とし、ステーション500を探索できなかったときにはランドマーク装置280を探索することになる。ロボット100は、発光信号LBに対してランドマーク装置280が反応するため、接近対象がステーション500ではなくランドマーク装置280であることを認識できる。
【0180】
ロボット100Aがステーション500から所定範囲内にある状況において、ロボット100Bが入庫要求信号をステーション500に送信したときには、入庫判定部262はロボット100Bの入庫要求を拒否してもよい。ロボット100Aがロボット100Bの入庫の邪魔になる可能性があるためである。このとき、充電装置506はロボット100Aに対して離脱信号を送信してもよい。ロボット100Aは離脱信号を受信したときにはステーション500から離れるとしてもよい。
【0181】
本実施形態においては、2つのロボット100に対して2つの充電スペース502を用意するとして説明した。2つのロボット100は順番に充電スペース502に入庫したあとは同時に充電を受けることができる。変形例として、充電スペース502の数よりもロボット100の数が多いときにも交代入庫方式は有効である。たとえば、1つの充電スペース502に対して2つのロボット100が同時期に入庫を希望するときには、入庫判定部262はいずれか一方のロボット100の入庫を許可し、他方のロボット100の入庫を拒否する。2つのロボット100はそれぞれの電池残量をステーション500に通知し、入庫判定部262は電池残量の少ない方のロボット100の入庫を優先してもよい。
【0182】
本実施形態においては、第2の発光態様を指定する第2つのロボット100はステーション500に同時に入庫できないとして説明したが、変形例として第2の発光態様を指定する第2つのロボット100は同時にステーション500に入庫できてもよい。ステーション500は、ロボット100Aに対しては左スペース502Lを指定する入庫許可信号を送信し、ロボット100Bに対しては右スペース502Rを指定する入庫許可信号を送信してもよい。また、ロボット100Aの帰還処理中であっても、ロボット100Bは入庫を希望するときにはステーション500に向かって移動するとしてもよい。
【0183】
2つのロボット100は、2つの充電スペース502のいずれに入庫するかをあらかじめ設定されてもよい。たとえば、ロボット100の外観の色と、充電スペース502に設けられたパネル508の色とに基づいて入庫先を設定してもよい。ロボット100Aの外皮314の色がダークブラウン、ロボット100Bの外皮314の色がライトブラウンであるとする。また、左パネル508Lの色はダークブラウン、右パネル508Rの色はライトブラウンであるとする。このとき、ロボット100Aは配色の一致する左スペース502Lを対象として帰還してもよい。ロボット100Bは右スペース502Rに帰還する。このような制御方法によれば、充電時においてロボット100と背面パネル508の配色を揃えることができるため、充電中におけるロボットシステム300と2つのロボット100の美観向上にも寄与する。ロボット100は自身の外皮314の色を認識(記憶)してもよい。ロボット100は、入庫要求送信部260を介して、自身の色と配色の一致するパネルの方への誘導をステーション500に要求してもよい。たとえば、入庫要求信号に色彩IDを含めて送信し、262は色彩IDに対応する502を入庫先として選択してもよい。
【0184】
サーバ200の動作制御部222は、複数のロボット100それぞれについて、左スペース502Lおよび右スペース502Rそれぞれへの帰還回数を記録してもよい。単位期間においてロボット100Aが左スペース502Lに入庫する頻度が右スペース502Rよりも高くなれば、ステーション500の入庫判定部262は、ロボット100Aを左スペース502Lに優先的に入庫させるとしてもよい。この結果、ロボット100Bは、自然に右スペース502Rに導かれやすくなる。このような制御方法によれば、ロボット100Aとロボット100Bそれぞれが徐々にお気に入りの巣(充電スペース502)をもつことになるため、2つのロボット100の巣に対するこだわりを行動表現できる。
【0185】
ロボット100の眼生成部(図示せず)は、充電中は目110に表示される眼画像を閉眼させることにより「眠り」を表現してもよい。眼生成部は、ロボット100が入庫してから第1の導眠時間が経過したとき、眼画像を閉眼画像に変化させることで眠りを表現する。ロボット100Aとロボット100Bを同時充電しているときには、サーバ200の充電制御部264は、2つのロボット100に対して第1の導眠時間よりも長い第2の導眠時間を指示してもよい。ロボット100Aとロボット100Bは同時充電中に互いを見つめるように視線を動かしてもよいし、互いに触れるように腕106を動かしてもよい。このような制御方法によれば、ロボット100Aとロボット100Bが同じステーション500(巣)に戻っているときにも互いに意識している様子を表現できる。こうした表現により、500を単に2台のロボットが充電するための装置としてではなく、2台の兄弟ロボットの巣として印象づけることができる。
【0186】
上述したように、ロボット100はサーモセンサ115を搭載する。ステーション500は、サーモセンサ115の近くに一定温度を発生させるサーマルリファレンスを備えてもよい。たとえば、サーマルリファレンスを25度とすれば、ステーション500はサーモセンサ115によりサーマルリファレンスの25度を検出することで、サーモセンサ115の検出感度を補正すればよい。
【0187】
発光信号および入庫要求信号は、Bluetooth(登録商標)やWi-Fiなどによる無線信号で送信されてもよい。発光信号等を無線信号(電波信号)とすれば、ロボット100はステーション500を視認できない位置にいるときであっても、ステーション500は発光信号等を受信できる。
【0188】
ステーション500はスピーカー(不図示)を内蔵してもよい。ロボット100は、発音要求部(不図示)を備えてもよい。ロボット100が誘導光を検出できないときには、ロボット100の発音要求部は、発音要求信号をステーション500に送信してもよい。ステーション500の発音要求受信部(不図示)が発音要求信号を検出したとき、ステーション500の発音制御部(不図示)はスピーカーから所定周波数の音声を発生させる。このときの音声は、ユーザに不快感をもたせない周波数帯であって、方向推定しやすい音声であることが望ましい。可聴音でなくてもよい。ロボット100の音声方向特定部(不図示)は内蔵するマイクロフォンアレイによりステーション500の方向を推定してもよい。このような制御方法によれば、ロボット100からステーション500を視認できないときでも、ロボット100はステーション500の所在地点を推定できる。なお、音声は壁に反射することで発音地点がわかりにくくなるという欠点があるため、誘導光を検出できないときに補助的に使用する方が望ましいと考えられる。
【0189】
図19は、変形例におけるステーション550の外観図である。
変形例におけるステーション550では、背面パネル508の下に近距離誘導部252を設けるのではなく、ベース504に2つの超音波発生装置552と赤外線発生装置554を埋設する。超音波発生装置552RR、超音波発生装置552RLおよび赤外線発生装置554Rにより右側の近距離誘導部556Rが形成される。同様にして、超音波発生装置552LL、超音波発生装置552LRおよび赤外線発生装置554Lにより左側の近距離誘導部556Lが形成される。
図7に示したステーション500との違いは、ひとつの近距離誘導部556に対して2つの超音波発生装置552が設けられ、それらがロボット100の背面に設けられた赤外線センサ172およびマイク174とほぼ高さがそろうように低い位置に設けられていることである。なお、赤外線発生装置554R,554Lの機能は、中距離誘導部254がまとめて担ってもよい。つまり、赤外線発生装置554Rおよび赤外線発生装置554Lを設けず、中距離誘導部254の赤外線発生装置だけが設けられてよい。中距離誘導部254の赤外線発生装置を、近距離誘導部556の赤外線発生装置として利用する場合は、左右の超音波発生装置552の動作に連動して中距離誘導部254の赤外線発生装置が制御される。
【0190】
超音波発生装置552RRと超音波発生装置552RLは、右スペース502Rの仮想的な中心線に対して左右対称の位置に設けられる。また、超音波は正面方向にむけて照射される。左右2つの超音波発生装置552が設けることにより、それぞれの超音波発生装置552とロボット100との距離を算出できる。超音波発生装置552のステーション550における位置は固定なので、ロボット100のステーション550に対する相対位置を特定できる。この変形例によれば、ロボット100のステーション550に対する相対的な位置を特定し、かつステーション550に対するロボット100の向きを特定できるので、より正確な誘導ができる。
【0191】
図7に示したステーション500では、右誘導部252Rが、誘導路の基準進入ライン上に配置されており、赤外線がある程度の指向性を有するので、赤外線を受光できることが誘導路を含むある範囲内(扇状に広がる範囲)に位置していることになる。赤外線は広がるので、ステーションから離れるほど、正確な位置を把握しにくくなる。
図19に示したステーション550では、左右に超音波発生装置を設けることで、ロボット100の位置を座標として特定できる。更にロボット100のステーション500に対する向きも特定できる。これにより、
図19に示したステーション550によれば、
図7に示したステーション500より正確に誘導できる。
【0192】
図20は、ロボット100の位置および進行方向を特定する方法を説明するための模式図である。
超音波発生装置552RRおよび超音波発生装置552RLのロボット100との距離を点線の円弧で示す。2つの点線の交点がロボット100の位置Pになる。正確には、位置Pは、ロボット100の背面に設けられた左右いずれかのマイク174の位置になる。本図では、位置Pを左マイク174Lの位置であるとする。左マイク174Lは、超音波発生装置552RRおよび超音波発生装置552RLそれぞれから超音波を受信する。左マイク174Lは、赤外線センサ172による赤外線の受信に遅れて、超音波発生装置552RRから超音波を受信する。両者の時間差により、測距部162は超音波発生装置552RRから左マイク174Lまでの距離Aを測定する。同様にして、左マイク174Lは、赤外線センサ172による赤外線の受信に遅れて、超音波発生装置552RLから超音波を受信する。測距部162は超音波発生装置552RLから左マイク174Lまでの距離Bを測定する。超音波発生装置552RRから距離Aを半径とする円と、超音波発生装置552RLから距離Bを半径とする円の交点が左マイク174L(位置P)の位置座標Lとして特定される。
【0193】
右マイク174Rの位置座標Rについても同様にして求めることができる。左マイク174Lおよび右マイク174Rそれぞれの位置座標がわかれば、その線分の中央をロボット100の位置座標として特定できる。更に、
図15を用い説明したとおり、左マイク174Lと右マイク174Rの超音波の検出時点の差分時間に基づいて、超音波発生装置552に対するロボット100の向きを算出できる。本変形例では、超音波発生装置552が左右2つあるので、それぞれの超音波発生装置に対するロボット100の向きを算出し、平均化などの数値処理を施すことで、より正確に向きを算出できる。
【0194】
また、本変形例では、ロボット100の背面に設けられた左右のマイク174の位置をそれぞれ位置座標として特定できる。2つのマイク174を結ぶ線分に対する法線の方向をロボットの向きとして特定してもよい。
【0195】
超音波発生装置552RRおよび超音波発生装置552RLが発生させる超音波の周波数は同じである。赤外線発生装置554Rは、超音波発生装置552における超音波の発生と同時に赤外線を照射し、超音波を発生した超音波発生装置を特定する情報を送信する。例えば、赤外線発生装置554Rは、右側の超音波発生装置552RRを示す赤外線と左側の超音波発生装置552RLを示す赤外線を交互に定期的に発生させる。また、これに同期させて、超音波発生装置552RRおよび超音波発生装置552RLも交互に超音波を発生させる。近距離誘導中のロボット100の移動速度は通常移動時よりも遅い。超音波の発生周期において、ロボット100が移動する距離は極めて短いので、超音波発生装置552RRと超音波発生装置552RLとに交互に超音波を発生させても、ロボット100の位置をほぼ正確に測定できる。
【0196】
超音波発生装置552RR、超音波発生装置552RLが発生させる超音波の周波数を異ならせてもよい。この場合には、超音波発生装置552RR、超音波発生装置552RLが同時かつ定期的に超音波を発生させたとしても、マイク174はどちらの超音波であるかを認識できる。
【0197】
この出願は、××××年×月×日に出願された日本出願特願××××-××××××号を基礎とする優先権を主張し、その開示の全てをここに取り込む。