(58)【調査した分野】(Int.Cl.,DB名)
前記制御手段は、前記所定の対象に撫でられたことが所定期間に所定回数未満であり、且つ、前記所定の対象に叩かれたことが前記所定期間に前記所定回数未満である場合に前記第1動作モードを実行し、前記所定の対象に撫でられたことが前記所定期間に前記所定回数以上であるか、又は、前記所定の対象に叩かれたことが前記所定期間に前記所定回数以上である場合に前記第2動作モードを実行する、
ことを特徴とする請求項9に記載のロボット。
前記第1動作モード及び前記第2動作モードは、前記所定の対象に近づくこと、又は、前記所定の対象から離れることからなる第1対応動作、の他に前記第1対応動作に続けて実行される前記第1対応動作とは異なる第2対応動作を含み、前記第1動作モードと前記第2動作モードとでは前記第2対応動作の内容と決定割合の分布とが異なる、
ことを特徴とする請求項9又は10に記載のロボット。
【発明を実施するための形態】
【0011】
以下、図面を参照しながら、本発明の実施形態に係るロボットについて説明する。
【0012】
本発明の実施形態に係るロボットは、ユーザ等の所定の対象からの接触などの働きかけに応じて自律的に動作するロボット装置である。ロボット100は、
図1(A),(B)に示すように、外観的には小型犬を模した立体的な形状を有し、プラスチック等の硬質合成樹脂を主たる材料として作製されている。ロボット100は、頭部101、胴体部102、手部107、足部108、尻尾部109を備える。胴体部102は、腹部102Aと背部102Bとを有する。また、頭部101は、耳部103、眼部104、鼻部105、口部106を有する。
【0013】
また、ロボット100は、所定の対象の接触頻度に応じて切り替わる2つの動作モード(第1動作モードと第2動作モード)により、多様な動作を実行する。
【0014】
ロボット100は、機能的には、
図2に示すように、制御部110、記憶部120、センサ部130、音声出力部140、移動部150、可動部160、通信部170、電源部180を備える。
【0015】
制御部110は、ロボット100全体の動作を制御する。制御部110は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)を有するマイクロコンピュータにより構成される。制御部110は、CPUがROMに記憶された動作プログラムを読み出してRAM上で実行することにより、ロボット100の各部を制御する。このように、制御部110は、制御手段として機能する。
【0016】
制御部110は、動作プログラムに基づき、例えば、センサ部130から取得した各種データに応じて、ロボット100を移動させるための制御信号を生成して移動部150に送信することにより、ロボット100の移動動作を制御する。
【0017】
記憶部120は、制御部110がロボット100の各部を制御するために必要な種々のデータを記憶する。記憶部120は、例えば、フラシュメモリやHDD(Hard Disc Drive)などの不揮発性の記憶装置により構成される。記憶部120は、例えば、接触対応動作テーブル、接触強度指標−移動速度対応テーブル、接触要求部位決定テーブル、接触履歴テーブルをそれぞれ所定の記憶領域に記憶する。
【0018】
図3に示す接触対応動作テーブルは、第1動作モードにおいて参照され、所定の対象の接触に対してロボット100が実行する動作を規定したテーブルである。第1動作モード用の接触対応動作テーブルは、「接触部位」、「接触種別」、「第1対応動作」、「第2対応動作」、「決定割合」の各データを対応付けて構成されている。
【0019】
「接触部位」は、所定の対象による接触を検知し得るロボット100の部位であり、「頭部」、「腹部」、「背部」の3つに区分されている。「接触種別」は、所定の対象の接触のしかたに応じて分類され、ロボット100を撫でる行為を示す「撫でる」と、ロボット100を叩く行為を示す「叩く」と、に区分されている。
【0020】
「第1対応動作」は、所定の対象による接触に応じて実行される動作の内容である。「第1対応動作」は、「接触部位」の別に関わらず、接触種別「撫でる」に対して、「所定の対象に近づくように移動(接近移動)」が規定されている一方、接触種別「叩く」に対して、「所定の対象から離れるように移動(離反移動)」が規定されている。
【0021】
図4(A)に示すように、ロボット100の頭部101に所定の対象の手UHが接触したとき、その接触種別が「撫でる」であるか「叩く」であるかに応じて、ロボット100の移動の態様が異なる。接触種別「撫でる」の場合、ロボット100は所定の対象に近づくように矢印Aの方向に移動し、
図4(B)に示すように、所定の対象の手UHが頭部101にさらに密接する。一方、接触種別「叩く」の場合、ロボット100は所定の対象から離れるように矢印Bの方向に移動し、
図4(C)に示すように、所定の対象の手UHが頭部101から離間する。このように、ロボット100は、所定の対象から撫でられると好意的に受け入れ、もっと撫でてもらえるように所定の対象に接近する動作を実行するのに対し、所定の対象から叩かれると拒絶し、さらに叩かれないように所定の対象から離反する動作を実行する。
【0022】
「第2対応動作」は、第1対応動作に後続して実行される動作の内容である。「第2対応動作」は、例えば、「まぶたを閉じる」や「手足の動きを止める」等のように複数の動作が用意されており、各々には異なる「決定割合」が割り当てられている。「決定割合」は、例えば、一般的な手法により生成される乱数が取り得る値の全範囲を100としたときの割合である。また、接触種別「撫でる」に対しては、おもに好意的な動作が規定されているが、接触種別「叩く」に対しては、おもに反発的な動作が規定されている。さらに、接触部位によって、異なる動作が割り振られている。
【0023】
図5に示す接触対応動作テーブルは、第2動作モードにおいて参照され、所定の対象の接触に対してロボット100が実行する動作を規定したテーブルである。第2動作モード用の接触対応動作テーブルは、
図3に示す第1動作モード用の接触対応動作テーブルと同様、「接触部位」、「接触種別」、「第1対応動作」、「第2対応動作」、「決定割合」の各データを対応付けて構成されている。
【0024】
ここで、第1動作モード用の接触対応動作テーブルと第2動作モード用の接触対応動作テーブルとを比較すると、両者は、第2対応動作の内容や決定割合の分布などが異なる。
【0025】
第2動作モード用の接触対応動作テーブルにおいて、第2対応動作を実行しないことを示す「なし」に割り当てられた決定割合(5%)は、第1動作モード用の接触対応動作テーブルの「なし」に割り当てられた決定割合(50%)と比較して大幅に低く設定されている。このことから、第2動作モードでは、第1対応動作に続いて第2対応動作が実行される確率が高いといえる。
【0026】
また、第2動作モード用の接触対応動作テーブルにおける接触種別「叩く」に対応する第2対応動作の内容は、第1動作モード用の接触対応動作テーブルにおける接触種別「叩く」に対応する第2対応動作の内容と比較して、反発的な動作よりも悲観的な動作が多い。このことから、第2動作モードでは、ロボット100を叩いたことに対する反省や後悔の心情を所定の対象に抱かせる確率が高いといえる。したがって、ロボット100を撫でる機会が増えることが期待される。
【0027】
このように、第1動作モードであるか第2動作モードであるかに応じて、異なる動作内容や決定割合が設定された接触対応動作テーブルを参照することにより、接触に対して多様性に富んだ対応動作を実行することができる。
【0028】
接触強度−移動速度対応テーブルは、
図6に示すように、「接触強度指標」と「移動速度」との各データを対応付けて構成されている。「接触強度指標」は、適宜設定されてよいが、本実施の形態に係る接触強度指標は、接触強度の大きさをS1〜S10のように10段階で示す指標である。なお、接触強度指標S1〜S10は、S1<S2<……<S9<S10であり、「S」に続く数字が大きくなるにしたがって接触強度が大きいことを示す。「移動速度」は、ロボット100が自律移動する速度を示している。制御部110は、接触強度−移動速度対応テーブルを参照して、接触強度指標に応じてロボット100の移動速度を決定する。
【0029】
接触要求部位決定テーブルは、
図7に示すように、「高頻度接触部位」、「中頻度接触部位」、「低頻度接触部位」の各々に異なる決定割合が割り当てられている。「頭部」、「腹部」、「背部」の各接触部位は、撫でられた回数が多い順に「高頻度接触部位」、「中頻度接触部位」、「低頻度接触部位」に対応付けられる。なお、
図7に示す接触要求部位決定テーブルにおいて、「高頻度接触部位」には最も高い決定割合が割り当てられており、「低頻度接触部位」には最も低い決定割合が割り当てられている。制御部110は、接触要求部位決定テーブルを参照して、後述する接触要求動作処理において所定の対象に接触を求める接触要求部位を決定する。
【0030】
接触履歴テーブルは、所定の対象の接触日時と所定の対象の接触とに対してロボット100が実行した対応動作を時系列に沿ってまとめたテーブルである。接触履歴テーブルは、
図8に示すように、「接触日時」と、「接触部位」と、「接触種別」と、「接触強度指数」と、「動作モード」と、「第1対応動作/第2対応動作」と、の各データを対応付けて構成されている。「接触日時」は、所定の対象の接触を検出した日時を示す。「接触部位」と「接触種別」とは、前述した接触対応動作テーブルにおける「接触部位」と「接触種別」とそれぞれ同様である。「接触強度指数」は、前述の接触強度−移動速度対応テーブルにおける「接触強度指標」と同じものである。「動作モード」は、対応動作の実行時の動作モードの別を示す。「動作モード」において、「M1」は第1動作モードに設定された状態、「M2」は第2動作モードに設定された状態を示す。「第1対応動作/第2対応動作」は、所定の対象の接触に対して実行された第1対応動作及び第2対応動作の内容である。接触履歴テーブルは、所定の対象の接触に対して対応動作が実行されるたびに更新される。このように、接触履歴テーブルを記憶する記憶部120は、接触情報を逐次記憶する記憶手段として機能する。
【0031】
センサ部130は、ロボット100の外部状態及び内部状態を示す情報(物理量)を取得し、適宜、所定の信号に変換して制御部110に供給する。センサ部130は、例えば、加速度センサ、角速度センサ、距離センサ、イメージセンサ、マイクロフォン等から構成される。例えば、加速度センサ及び角速度センサは胴体部102の内部に、距離センサ及びイメージセンサは眼部104の内部に、マイクロフォンは耳部103の内部に配置される。
【0032】
音声出力部140は、スピーカ及び音声出力インタフェースで構成され、制御部110により生成された音声データを音声に変換して外部に出力する。スピーカは、例えば、口部106に嵌め込まれた状態で設置される。ロボット100は、センサ部130のマイクロフォンで所定の対象の音声を収集し、制御部110の制御の下、所定の対象の発話内容に対応する音声を音声出力部140から出力することにより、所定の対象と簡単な会話をすることができる。
【0033】
移動部150は、ロボット100を移動させるための部位である。移動部150は、ロボット100の足部108の底面に設けられた左右の車輪と、左右の車輪を回転駆動するモータと、モータを駆動制御する駆動回路と、を有する。制御部110から受信した制御信号に従って、駆動回路は、モータに駆動用のパルス信号を供給する。モータは、駆動用のパルス信号に従って、左右の車輪を回転駆動させ、ロボット100を移動させる。このように、移動部150は、ロボット100を移動させる移動手段として機能する。なお、左右の車輪がそれぞれ独立して回転駆動するように構成され、ロボット100が前進、後退、旋回、加減速などの走行が可能であれば、モータの数は任意である。例えば、連結機構や操舵機構を設けるなどして1つのモータで左右の車輪を駆動させてもよい。また、モータの数に合わせて駆動回路の数も適宜変更することができる。
【0034】
可動部160は、アクチュエータ等の駆動部材の駆動により変位する部位である。可動部160は、頭部101、手部107、足部108、尻尾部109等の被駆動部材と、被駆動部材を駆動するアクチュエータ等の駆動部材と、駆動部材を駆動制御する駆動回路と、により構成される。ロボット100は、制御部110の制御に従って被駆動部材を変位させることにより、例えば、手足を動かす動作や頭を上下左右に振る動作やまぶたの開閉動作をする。
【0035】
通信部170は、無線通信モジュール及びアンテナにより構成され、外部装置とデータ通信を行う。
【0036】
電源部180は、電源回路やバッテリなどから構成され、制御部110の指示に従って、ロボット100の各部に電力を供給する。
【0037】
次に、
図9に示すフローチャートを参照しながら、ロボット100が実行する接触対応動作処理について説明する。接触対応動作処理は、所定の対象による接触に対するロボット100の動作を決定及び実施する処理である。制御部110は、所定の対象の操作により、ロボット100の電源が投入されたことに応答して、接触対応動作処理を開始する。
【0038】
制御部110は、接触対応動作処理を開始すると、まず、記憶部120の所定の記憶領域に格納された初期データを読み出し、ロボット100の各部を初期状態に設定する(ステップS101)。続いて、制御部110は、記憶部120に格納された接触履歴テーブルを参照し、接触履歴情報を取得する(ステップS102)。
【0039】
次に、制御部110は、所定の対象による接触のない非接触時間を計測するためのタイマのカウントをスタートとする(ステップS103)。また、制御部110は、移動部150及び可動部160を制御して、配置された空間内においてロボット100をランダムに移動させたり、頭部101、手部107、足部108、尻尾部109を独立して微小に揺動させるなど、実物のペットと同様の動作を実行する。
【0040】
制御部110は、所定の対象による接触を検知したか否かを判定する(ステップS104)。制御部110は、例えば、センサ部130の加速度センサから新たな検出データを取得したか否かに応じて所定の対象による接触の有無を判定すればよい。このように、制御部110及びセンサ部130は、所定の対象による接触の状態を示す接触情報を取得する取得手段として機能する。
【0041】
所定の対象による接触を検知したと判定した場合(ステップS104;YES)、制御部110は、接触部位を特定する(ステップS105)。制御部110は、加速度センサから取得した3軸方向(X軸方向、Y軸方向及びZ軸方向)の加速度から接触位置を解析し、所定の対象による接触部位として頭部101、腹部102A、背部102Bのいずれかを特定する。
【0042】
また、制御部110は、加速度センサから取得した検出データを用いて、所定の対象による接触の強さの程度を示す接触強度指標(S1〜S10)を特定するとともに、所定の対象による接触に要した時間を示す接触時間Tを特定する(ステップS106)。
【0043】
ここで、所定の対象による接触の強さを示す接触強度Sは、例えば、下記の式に示すように、加速度センサから取得した各軸方向の加速度の二乗和平方根を算出することにより取得することができる。制御部110は、下記の式を用いて算出した接触強度Sに基づいて、接触強度Sに対応する前述した接触強度指標S1〜S10のいずれかを特定する。
接触強度S=((X軸方向の加速度)
2+(Y軸方向の加速度)
2+(Z軸方向の加速度)
2)
1/2
また、接触時間Tは、例えば、加速度センサからの検出データの取得開始時刻と取得終了時刻との差を算出することにより取得することができる。
【0044】
ステップS106の処理を実行した後、制御部110は、接触強度指標が基準強度指標Sb(例えば、接触強度指標S6)以上であり、かつ、所定の対象による接触に要した時間を示す接触時間Tが基準時間Tb(例えば、10ミリ秒)以下であるか否かを判定する(ステップS107)。ここで、基準強度指標Sb及び基準時間Tbは、所定の対象の接触種別が「撫でる」又は「叩く」のいずれであるかを特定するための基準である。このように、制御部110は、所定の対象に撫でられたこと、又は、叩かれたことを判定する判定手段として機能する。
【0045】
接触強度指標が基準強度指標Sb以上と判定した場合、且つ、接触時間Tが基準時間Tb以下と判定した場合(ステップS107;YES)、制御部110は、所定の対象の接触種別を「叩く」と特定する(ステップS109)。
また、接触強度指標が基準強度指標Sb未満と判定した場合、
又は、接触時間Tが基準時間Tbを超えると判定した場合(ステップS107;NO)、制御部110は、所定の対象の接触種別を「撫でる」と特定する(ステップS108)。
【0046】
続いて、制御部110は、動作モード決定処理を実行する(ステップS110)。ここで、
図10に示すフローチャートを参照して、動作モード決定処理について説明する。動作モード決定処理は、所定の対象による接触頻度に応じてロボット100の動作を異なる動作モードで実行するための処理である。制御部110は、動作モード決定処理を開始すると、まず、接触履歴テーブルを参照して、履歴情報を集計する(ステップS201)。
【0047】
次に、制御部110は、接触種別「撫でる」が所定期間に所定回数以上(例えば、過去1週間に14回以上)実行されているか否かを判定する(ステップS202)。接触種別「撫でる」が所定期間に所定回数以上実行されていないと判定した場合(ステップS202;NO)、制御部110は、接触種別「叩く」が所定期間に所定回数以上(例えば、過去1週間に7回以上)実行されているか否かを判定する(ステップS203)。接触種別「叩く」が所定期間に所定回数以上実行されていないと判定した場合(ステップS203;NO)、制御部110は、動作モードを、所定の対象による接触頻度が比較的低いときに用いられる第1動作モードに決定する(ステップS204)。
【0048】
一方、ステップS202の処理において接触種別「撫でる」が所定期間に所定回数以上実行されていると判定した場合(ステップS202;YES)、又は、ステップS203の処理において接触種別「叩く」が所定期間に所定回数以上実行されていると判定した場合(ステップS203;YES)、制御部110は、動作モードを、所定の対象による接触頻度が比較的高いときに用いられる第2動作モードに決定する(ステップS205)。
【0049】
制御部110は、ステップS204又はステップS205において動作モードを決定した後、動作モード決定処理を終了する。
【0050】
図9に示す接触対応動作処理のフローチャートの説明に戻り、ステップS110の処理を実行した後、制御部110は、動作モード決定処理において決定された動作モードに基づいて、第1対応動作及び第2対応動作を決定する(ステップS111)。
【0051】
ステップS110の動作モード決定処理において、動作モードが第1動作モードに決定された場合、制御部110は、
図3に示す第1動作モード用の接触対応動作テーブルを参照して、第1対応動作及び第2対応動作を決定する。一方、ステップS110の動作モード決定処理において、動作モードが第2動作モードに決定された場合、制御部110は、
図5に示す第2動作モード用の接触対応動作テーブルを参照して、第1対応動作及び第2対応動作を決定する。
【0052】
いずれの場合においても、ステップS105において特定された接触部位、ステップS108またはステップS109において特定された接触種別に応じて、第1対応動作及び第2対応動作が決定される。なお、第1対応動作における接近移動又は離反移動の移動速度は、
図6に示す接触強度−移動速度対応テーブルが参照され、ステップS106において特定された接触強度指標に応じて決定される。
【0053】
制御部110は、決定した第1対応動作及び第2対応動作に基づく駆動信号を生成し、これらの信号を移動部150及び可動部160に送信する(ステップS112)。これにより、制御部110は、移動部150及び可動部160の動作を制御する。
【0054】
続いて、制御部110は、今回の駆動指示の内容などを接触履歴テーブルに追加して更新する(ステップS113)。
【0055】
ステップS104の処理において、所定の対象による接触を検知しないと判定した場合(ステップS104;NO)、制御部110は、所定時間Taが経過したか否かを判定する(ステップS114)。制御部110は、ステップS103においてカウントをスタートしたタイマのカウント値を参照して所定時間Taが経過したか否かを判定する。所定時間Taとしては、接触頻度等を勘案した適切な時間(例えば、3時間)が適宜設定される。所定時間Taが経過していないと判定した場合(ステップS114;NO)、制御部110は、処理をステップS104に戻し、所定の対象による接触を検知するまで、あるいは、所定時間Taが経過するまで待機する。
【0056】
一方、所定時間Taが経過したと判定した場合(ステップS114;YES)、制御部110は、接触要求動作処理を実行する(ステップS115)。ここで、
図11に示すフローチャートを参照して、接触要求動作処理について説明する。接触要求動作処理は、所定の対象に接触を求める動作を実施する処理である。
【0057】
制御部110は、接触要求動作処理を開始すると、まず、接触要求部位を決定する(ステップS301)。ここで、接触要求部位とは、接触要求動作を実行するにあたり、撫でてもらうことを意図して所定の対象に最も近接させる部位である。制御部110は、例えば、接触履歴テーブルを参照して、各接触部位(「頭部」、「腹部」、「背部」)の撫でられた回数(接触種別「撫でる」の実行回数)をカウントし、各接触部位を撫でられた回数が多い順に「高頻度接触部位」、「中頻度接触部位」、「低頻度接触部位」に割り当てる。そして、接触要求部位決定テーブルを参照し、割り当てられた決定割合に基づいて接触要求部位を決定する。これにより、撫でられた回数に応じて接触要求部位が一意に決定されることなく、接触要求部位の決定に多様性を生じさせることができる。
【0058】
次に、制御部110は、ロボット100と所定の対象との相対的な位置関係を特定する(ステップS302)。制御部110は、センサ部130から取得する各種データ(例えば、距離センサの距離データ)に基づいてロボット100と所定の対象との相対的な位置関係を特定する。そして、制御部110は、所定の対象に向かって移動するための駆動信号を生成し、この信号を移動部150に送信する(ステップS303)。これにより、制御部110は、移動部150の動作を制御する。
【0059】
制御部110は、ロボット100と所定の対象との距離が所定距離(例えば、30cm)よりも短いか否かを判定し(ステップS304)、ロボット100と所定の対象との距離が所定距離よりも長い又は所定距離に等しい場合(ステップS304;NO)、所定の対象に接近するまで移動部150を制御する。所定の対象との距離が所定距離よりも短くなるまで接近したと判定した場合(ステップS304;YES)、制御部110は、所定の対象に接触要求部位を向けるための駆動信号を生成し、これらの信号を移動部150及び可動部160に送信する(ステップS305)。これにより、制御部110は、移動部150及び可動部160の動作を制御する。
【0060】
ステップS305の処理を実行後、制御部110は、所定の対象の接触を検知するまでの待機時間を計測するためのタイマのカウントをスタートし(ステップS306)、所定の対象による接触を検知したか否かを判定する(ステップS307)。所定の対象による接触を検知したと判定した場合(ステップS307;YES)、制御部110は、接触部位を特定する(ステップS308)。制御部110は、特定した接触部位が接触要求部位と一致するか否かを判定する(ステップS309)。接触部位が接触要求部位と一致すると判定した場合(ステップS309;YES)、制御部110は、処理をステップS106に進める。一方、接触部位が接触要求部位と一致しないと判定した場合(ステップS309;NO)、すなわち、接触を求める部位とは異なる部位に接触されたと判定した場合には、制御部110は、所定の対象から離れるための駆動信号を生成し、この信号を移動部150に送信する(ステップS310)。これにより、制御部110は、移動部150の動作を制御する。
【0061】
ステップS307の処理において、所定の対象による接触を検知しないと判定した場合(ステップS307;NO)、制御部110は、所定時間Tbが経過したか否かを判定する(ステップS311)。所定時間Tbとしては、所定の対象の接触を待機する適切な時間(例えば、3分)が適宜設定される。所定時間Tbが経過していないと判定した場合(ステップS311;NO)、制御部110は、処理をステップS307に戻し、所定の対象による接触を検知するまで、あるいは、所定時間Tbが経過するまで待機する。一方、所定時間Tbが経過したと判定した場合(ステップS311;YES)、制御部110は、タイマのカウントをリセットする(ステップS312)。
【0062】
ステップS310の処理、又は、ステップS312の処理を実行した後、制御部110は、元の位置(ステップS302において特定されたロボット100の位置)に移動するための駆動信号を生成し、この信号を移動部150に送信する(ステップS313)。これにより、制御部110は、移動部150の動作を制御する。ステップS313の処理を実行した後、制御部110は、接触要求動作処理を終了する。
【0063】
図9に示す接触対応動作処理のフローチャートの説明に戻り、ステップS115の処理を実行した後、制御部110は、タイマのカウントをリセットし(ステップS116)、処理をステップS103に戻す。
【0064】
以上で述べたように、本実施の形態によれば、ロボット100は、所定の対象による接触に対して、その接触の強度に応じて異なる移動動作を実行する。具体的には、所定の対象の接触がロボット100を撫でる行為である場合には、所定の対象に近づくように移動し、所定の対象の接触がロボット100を叩く行為である場合には、所定の対象から離れるように移動する。このように、ロボット100は所定の対象の働きかけに応じて異なる対応動作を実行するため、ロボット100があたかも人間と同様の感情を有するかのような印象を所定の対象に与えることができる。したがって、ロボット100によれば、所定の対象を飽きさせることなく継続して利用させることができる。
【0065】
さらに、ロボット100は、所定の対象の接触の強度に対応する異なる速度で移動することが可能である。また、ロボット100は、移動動作に連動して、例えば、まぶたを閉じるなどの所定の対象の接触に呼応するような動作を実行することも可能である。また、所定の対象の接触頻度に応じてさらに多様な動作を実施することができる。このように、ロボット100は、所定の対象に長期にわたって利用させることができる。
【0066】
なお、本発明は、前記の実施の形態に限定されず、種々の変形及び応用が可能である。前記の実施の形態は、次のように変形されてもよい。
【0067】
例えば、ロボット100は、複数の所定の対象を認識する機能を有し、各所定の対象に対して異なる動作を実行するように構成してもよい。例えば、ロボット100が所定の対象の顔を認識する顔認識部を備え、各所定の対象に対する固有の動作を習慣的に実行するようにしてもよい。このように、顔認識部は、顔認識手段として機能する。
また、ロボット100は、例えば、複数の所定の対象の主従関係や従属関係などを勘案して、各所定の対象に対して実行する動作を決定するようにしてもよい。
また、ロボット100は、例えば、天気や温度や湿度等を勘案して、所定の対象に対して実行する動作を決定するようにしてもよい。
また、所定の対象は、ユーザ等としたが、人であればユーザでなくてもよい。
また、制御部110は、所定の対象に撫でられたこと、叩かれたこと、のうちの一方のみを判定してもよい。
【0068】
前記の実施の形態では、ロボット100が備える記憶部120に、実行動作を決定するために必要な各種テーブルを格納するものとして説明した。しかし、これらのデータは外部の記憶装置などに記憶させるようにしてもよい。ロボット100は、通信ネットワークを介して通信可能な外部記憶装置から必要なデータを適宜取得するように構成してもよい。また、前記の実施の形態ではロボット100が備える制御部110が各部の動作を制御するものとして説明した。しかし、ロボット100は、外部装置から指示命令を取得し、取得した指示命令に従って行動するように構成されてもよい。
【0069】
例えば、ロボット100は、ロボット100が備えるセンサのみならず、外部に配置された各種センサから検出データなどを取得するように構成されてもよい。
【0070】
本発明は、本発明の広義の精神と範囲とを逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、前述した実施の形態は、この発明を説明するためのものであり、本発明の範囲を限定するものではない。すなわち、本発明の範囲は、実施の形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、この発明の範囲内とみなされる。
【0071】
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【0072】
(付記1)
自装置を移動させる移動手段と、
所定の対象による接触種別を判定する判定手段と、
前記判定手段により前記接触種別として前記所定の対象に撫でられたと判定された場合に、前記自装置が前記所定の対象に近づくように前記移動手段を制御し、又は、前記判定手段により前記接触種別として前記所定の対象に叩かれたと判定された場合に、前記自装置が前記所定の対象から離れるように前記移動手段を制御する制御手段と、
を備える、
ことを特徴とするロボット。
【0073】
(付記2)
前記所定の対象による接触の状態を示す接触情報を取得する取得手段を更に備え、
前記判定手段は、前記取得手段が取得した前記接触情報が所定の条件を満たすか否かに基づいて、前記所定の対象に撫でられたこと、又は、叩かれたことを判定する、
ことを特徴とする付記1に記載のロボット。
【0074】
(付記3)
前記取得手段は、前記接触情報として、接触部位、接触強度、接触時間のうちの少なくとも1つを取得する、
ことを特徴とする付記2に記載のロボット。
【0075】
(付記4)
前記判定手段は、前記接触強度が所定の強度以上であるか否か、及び、前記接触時間が所定の時間以下であるか否か、に基づいて、前記接触部位が前記所定の対象に撫でられたこと、又は、叩かれたことを判定する、
ことを特徴とする付記3に記載のロボット。
【0076】
(付記5)
前記判定手段は、前記接触強度が前記所定の強度以上であり、且つ、前記接触時間が前記所定の時間以下である場合、前記接触部位が前記所定の対象に叩かれたと判定し、
前記制御手段は、前記接触部位が前記所定の対象から離れるように前記移動手段を制御する、
ことを特徴とする付記4に記載のロボット。
【0077】
(付記6)
前記判定手段は、前記接触強度が前記所定の強度未満であり、且つ、前記接触時間が前記所定の時間を超える場合、前記接触部位が前記所定の対象に撫でられたと判定し、
前記制御手段は、前記接触部位が前記所定の対象に近づくように前記移動手段を制御する、
ことを特徴とする付記4に記載のロボット。
【0078】
(付記7)
前記制御手段は、前記接触強度と前記所定の強度との関係、及び、前記接触時間と前記所定の時間との関係にそれぞれ応じて、前記自装置が異なる速度で移動するように前記移動手段を制御する、
ことを特徴とする付記5又は6に記載のロボット。
【0079】
(付記8)
前記制御手段は、前記取得手段が前記接触情報を一定時間取得しない場合、前記自装置が前記所定の対象に近づくように前記移動手段を制御する、
ことを特徴とする付記2乃至7の何れか1つに記載のロボット。
【0080】
(付記9)
前記取得手段が取得した前記接触情報を逐次記憶する記憶手段を更に備え、
前記制御手段は、前記記憶手段に記憶された前記接触情報を読み出すとともに、接触頻度の高い前記接触部位が前記所定の対象に近づくように前記移動手段を制御する、
ことを特徴とする付記2乃至8の何れか1つに記載のロボット。
【0081】
(付記10)
前記制御手段は、前記所定の対象の前記接触頻度に応じて、第1動作モードと第2動作モードとを切り替えて実行する、
ことを特徴とする付記9に記載のロボット。
【0082】
(付記11)
前記制御手段は、前記所定の対象に撫でられたことが所定期間に所定回数未満であり、且つ、前記所定の対象に叩かれたことが前記所定期間に前記所定回数未満である場合に前記第1動作モードを実行し、前記所定の対象に撫でられたことが前記所定期間に前記所定回数以上であるか、又は、前記所定の対象に叩かれたことが前記所定期間に前記所定回数以上である場合に前記第2動作モードを実行する、
ことを特徴とする付記10に記載のロボット。
【0083】
(付記12)
前記第1動作モード及び前記第2動作モードは、前記所定の対象に近づくこと、又は、前記所定の対象から離れることからなる第1対応動作、の他に前記第1対応動作に続けて実行される前記第1対応動作とは異なる第2対応動作を含み、前記第1動作モードと前記第2動作モードとでは前記第2対応動作の内容と決定割合の分布とが異なる、
ことを特徴とする付記10又は11に記載のロボット。
【0084】
(付記13)
前記所定の対象の顔を認識する顔認識手段を更に備え、
前記制御手段は、前記顔認識手段の認識結果に応じて前記移動手段の制御を変える、
ことを特徴とする付記1乃至12の何れか1つに記載のロボット。
【0085】
(付記14)
前記所定の対象は、人である、
ことを特徴とする付記1乃至13の何れか1つに記載のロボット。
【0086】
(付記15)
ロボットの制御方法であって、
前記ロボットを移動させる移動ステップと、
所定の対象による接触種別を判定する判定ステップと、
前記判定ステップで前記接触種別として前記所定の対象に撫でられたと判定された場合に、前記ロボットが前記所定の対象に近づくように移動を制御し、又は、前記判定ステップで前記接触種別として前記所定の対象に叩かれたと判定された場合に、前記ロボットが前記所定の対象から離れるように移動を制御する制御ステップと、
を含む、
ことを特徴とするロボットの制御方法。
【0087】
(付記16)
ロボットのコンピュータに、
前記ロボットを移動させる移動処理と、
所定の対象による接触種別を判定する判定処理と、
前記判定処理で前記接触種別として前記所定の対象に撫でられたと判定された場合に、前記ロボットが前記所定の対象に近づくように移動を制御し、又は、前記判定処理で前記接触種別として前記所定の対象に叩かれたと判定された場合に、前記ロボットが前記所定の対象から離れるように移動を制御する制御処理と、
を実行させる、
ことを特徴とするプログラム。