特開2017-226037(P2017-226037A)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ カシオ計算機株式会社の特許一覧

特開2017-226037ロボット、ロボットの制御方法及びプログラム
<>
  • 特開2017226037-ロボット、ロボットの制御方法及びプログラム 図000003
  • 特開2017226037-ロボット、ロボットの制御方法及びプログラム 図000004
  • 特開2017226037-ロボット、ロボットの制御方法及びプログラム 図000005
  • 特開2017226037-ロボット、ロボットの制御方法及びプログラム 図000006
  • 特開2017226037-ロボット、ロボットの制御方法及びプログラム 図000007
  • 特開2017226037-ロボット、ロボットの制御方法及びプログラム 図000008
  • 特開2017226037-ロボット、ロボットの制御方法及びプログラム 図000009
  • 特開2017226037-ロボット、ロボットの制御方法及びプログラム 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2017-226037(P2017-226037A)
(43)【公開日】2017年12月28日
(54)【発明の名称】ロボット、ロボットの制御方法及びプログラム
(51)【国際特許分類】
   B25J 5/00 20060101AFI20171201BHJP
   A63H 11/00 20060101ALI20171201BHJP
   A63H 29/22 20060101ALI20171201BHJP
【FI】
   B25J5/00 E
   B25J5/00 A
   A63H11/00 Z
   A63H29/22 B
【審査請求】未請求
【請求項の数】14
【出願形態】OL
【全頁数】16
(21)【出願番号】特願2016-123712(P2016-123712)
(22)【出願日】2016年6月22日
(71)【出願人】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(74)【代理人】
【識別番号】100095407
【弁理士】
【氏名又は名称】木村 満
(72)【発明者】
【氏名】大塚 利彦
【テーマコード(参考)】
2C150
3C707
【Fターム(参考)】
2C150CA02
2C150CA22
2C150DF03
2C150DK02
2C150EB01
2C150ED10
2C150ED18
2C150ED42
2C150ED56
2C150EF05
2C150EF15
2C150EF29
2C150FB43
3C707AS36
3C707CS08
3C707KS18
3C707KS21
3C707KS31
3C707WA04
3C707WA16
3C707WM18
3C707WM21
(57)【要約】
【課題】接地面に接地しているか否かを誤判定することなく判定することができるロボット、ロボットの制御方法及びプログラムを提供する。
【解決手段】ロボット100は、回動部(可動部材151)と、回動部(可動部材151)の回動状態を検出する検出手段(センサ部140)と、検出手段(センサ部140)による検出結果に基づいて、自装置が接地面に接地しているか否かを判定する判定手段(制御部110)と、を備える。ロボット100は、自装置を移動させる移動手段(移動部130)と、判定手段(制御部110)の判定結果に基づいて、移動手段(移動部130)を制御する制御手段(制御部110)と、を更に備えてもよい。
【選択図】図2
【特許請求の範囲】
【請求項1】
回動部と、
前記回動部の回動状態を検出する検出手段と、
前記検出手段による検出結果に基づいて、自装置が接地面に接地しているか否かを判定する判定手段と、
を備える、
ことを特徴とするロボット。
【請求項2】
前記自装置を移動させる移動手段と、
前記判定手段の判定結果に基づいて、前記移動手段を制御する制御手段と、
を更に備える、
ことを特徴とする請求項1に記載のロボット。
【請求項3】
前記制御手段は、
前記判定手段により前記自装置が前記接地面に接地していると判定された場合に、前記移動手段を前記自装置が前記接地面を移動するように制御し、
前記判定手段により前記自装置が前記接地面に接地していないと判定された場合に、前記移動手段を停止するように制御する、
ことを特徴とする請求項2に記載のロボット。
【請求項4】
前記検出手段は、前記回動状態として前記回動部の回動可能な角度を検出し、
前記判定手段は、前記検出手段が検出した前記回動部の回動可能な角度が所定の条件を満たすか否かに応じて、前記自装置が前記接地面に接地しているか否かを判定する、
ことを特徴とする請求項1乃至3の何れか1項に記載のロボット。
【請求項5】
前記検出手段は、前記回動部の第1の方向に回動可能な角度と、前記回動部の前記第1の方向とは逆向きの第2の方向に回動可能な角度と、を検出し、
前記判定手段は、前記回動部の前記第1の方向に回動可能な角度と前記第2の方向に回動可能な角度とが同等であるか否かに応じて、前記自装置が前記接地面に接地しているか否かを判定する、
ことを特徴とする請求項4に記載のロボット。
【請求項6】
前記判定手段は、前記回動部の前記第1の方向に回動可能な角度と前記第2の方向に回動可能な角度とがいずれも所定の角度範囲以内であるか否かに応じて、前記自装置が前記接地面に接地しているか否かを判定する、
ことを特徴とする請求項5に記載のロボット。
【請求項7】
前記判定手段は、
前記回動部の前記第1の方向に回動可能な角度と前記第2の方向に回動可能な角度とがいずれも前記所定の角度範囲以内である場合に、前記自装置が前記接地面に接地していると判定し、
前記回動部の前記第1の方向に回動可能な角度と前記第2の方向に回動可能な角度とのうちの少なくとも一方が前記所定の角度範囲を超える場合に、前記自装置が前記接地面に接地していないと判定する、
ことを特徴とする請求項6に記載のロボット。
【請求項8】
前記判定手段は、前記回動部の前記第1の方向に回動可能な角度と前記第2の方向に回動可能な角度とのうちの少なくとも一方が前記所定の角度範囲を超える場合に、前記自装置が所定の対象によって前記接地面から持ち上げられていると判定する、
ことを特徴とする請求項7に記載のロボット。
【請求項9】
前記所定の対象は、人である、
ことを特徴とする請求項8に記載のロボット。
【請求項10】
前記自装置が前記接地面に接地しているとは、前記自装置を移動させる移動手段の一部を構成する左右の足部にそれぞれ内蔵された車輪が前記接地面にそれぞれ接していることである、
ことを特徴とする請求項2乃至9の何れか1項に記載のロボット。
【請求項11】
前記回動部は、前記自装置の尻尾部である、
ことを特徴とする請求項1乃至10の何れか1項に記載のロボット。
【請求項12】
回動部と、
前記回動部の回動状態を検出する検出手段と、
自装置を移動させる移動手段と、
前記検出手段の検出結果に基づいて、前記移動手段を制御する制御手段と、
を備える、
ことを特徴とするロボット。
【請求項13】
回動部を備えるロボットの制御方法であって、
前記回動部を回動する回動ステップと、
前記回動部の回動状態を検出する検出ステップと、
前記検出ステップでの検出結果に基づいて、前記ロボットが接地面に接地しているか否かを判定する判定ステップと、
を含む、
ことを特徴とするロボットの制御方法。
【請求項14】
回動部を備えるロボットのコンピュータに、
前記回動部を回動する回動処理と、
前記回動部の回動状態を検出する検出処理と、
前記検出処理による検出結果に基づいて、前記ロボットが接地面に接地しているか否かを判定する判定処理と、
を実行させる、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
ロボット、ロボットの制御方法及びプログラムに関する。
【背景技術】
【0002】
外部状態や内部状態を示す情報(物理量)を検出する各種センサを備え、各種センサから取得した検出データに基づいて自律的に動作(行動)するロボットに関する技術が広く知られている。例えば、特許文献1は、車輪に隣接する床表面を検出する床近接センサを備え、床表面に適切に配置されているか否かを検出して移動制御するロボットを開示している。この床近接センサは、赤外線発光器及び赤外線受光器を含み、床表面に対して照射した赤外線ビームの反射光の強度や時間差に基づいて下方の床表面を検出するように構成されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2014−176762号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に開示された技術では、床表面の状態によっては反射光を測定できずに誤判定をするという問題があった。
【0005】
本発明は、前述の事情に鑑みてなされたものであり、接地面に接地しているか否かを誤判定することなく判定することができるロボット、ロボットの制御方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
前記の目的を達成するため、本発明の第1の観点に係るロボットは、
回動部と、
前記回動部の回動状態を検出する検出手段と、
前記検出手段による検出結果に基づいて、自装置が接地面に接地しているか否かを判定する判定手段と、
を備える、
ことを特徴とする。
【0007】
また、前記の目的を達成するため、本発明の第2の観点に係るロボットは、
回動部と、
前記回動部の回動状態を検出する検出手段と、
自装置を移動させる移動手段と、
前記検出手段の検出結果に基づいて、前記移動手段を制御する制御手段と、
を備える、
ことを特徴とする。
【0008】
また、前記の目的を達成するため、本発明に係るロボットの制御方法は、
回動部を備えるロボットの制御方法であって、
前記回動部を回動する回動ステップと、
前記回動部の回動状態を検出する検出ステップと、
前記検出ステップでの検出結果に基づいて、前記ロボットが接地面に接地しているか否かを判定する判定ステップと、
を含む、
ことを特徴とする。
【0009】
また、前記の目的を達成するため、本発明に係るプログラムは、
回動部を備えるロボットのコンピュータに、
前記回動部を回動する回動処理と、
前記回動部の回動状態を検出する検出処理と、
前記検出処理による検出結果に基づいて、前記ロボットが接地面に接地しているか否かを判定する判定処理と、
を実行させる、
ことを特徴とする。
【発明の効果】
【0010】
本発明によれば、接地面に接地しているか否かを誤判定することなく判定することができるロボット、ロボットの制御方法及びプログラムを提供することができる。
【図面の簡単な説明】
【0011】
図1】(A)は本発明の実施形態に係るロボットの正面外観図であり、(B)はロボットの背面外観図である。
図2】ロボットの機能的な構成を示す図である。
図3】ロボットの尻尾部の形状及び駆動モータとの接続状態などを説明するための図である。
図4】ロボットの尻尾部の動作の一例を示す図である。(A)は接地面に接地したロボットの尻尾部が停止した状態、(B)は接地面に接地したロボットの尻尾部が揺動している状態、(C)は接地面に接地したロボットの尻尾部が回動している状態、(D)は転倒したロボットの尻尾部が回動している状態、を示す。
図5】ロボットの尻尾部の動作の他の例を示す図である。(A)は所定の対象の手に把持されて接地面の上方に持ち上げられたロボットの尻尾部が揺動している状態、(B)は所定の対象の手に把持されて接地面の上方に持ち上げられたロボットの尻尾部が回動している状態、(C)は所定の対象の手に把持されて接地面の上方にわずかに持ち上げられたロボットの尻尾部が回動している状態、(D)は所定の対象の手に把持されて接地面の上方に持ち上げられたロボットの尻尾部が停止している状態、を示す。
図6】動作制御処理の流れを示すフローチャートである。
図7】回動動作処理の流れを示すフローチャートである。
図8】ロボットの尻尾部の回動動作を説明するための図である。
【発明を実施するための形態】
【0012】
以下、図面を参照しながら、本発明の実施形態に係るロボットについて説明する。
【0013】
本発明の実施形態に係るロボット100は、ユーザ等の所定の対象からの働きかけなどに応じて自律的に動作するロボット装置である。ロボット100は、図1(A),(B)に示すように、外観的には小型犬を模した立体的な形状を有し、プラスチック等の硬質合成樹脂を主たる材料として作製されている。ロボット100は、頭部101、胴体部102、左右の手部107、左右の足部108、尻尾部109を備える。胴体部102は、腹部102Aと背部102Bとを有する。また、頭部101は、耳部103、眼部104、鼻部105、口部106を有する。
【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は、動作プログラムに基づき、例えば、センサ部140から取得した各種データに応じて、ロボット100を移動させるための駆動信号を生成して移動部130に送信することにより、ロボット100の移動動作を制御する。
【0017】
記憶部120は、制御部110がロボット100の各部を制御するために必要な種々のデータを記憶する。記憶部120は、例えば、フラシュメモリやHDD(Hard Disc Drive)などの不揮発性の記憶装置により構成される。
【0018】
移動部130は、ロボット100を移動させるための部位である。移動部130は、ロボット100の足部108の底面に設けられた左右の車輪131と、左右の車輪131を回転駆動する駆動モータ132と、駆動モータ132を駆動制御する駆動回路133と、を有する。制御部110から受信した制御信号に従って、駆動回路133は、駆動モータ132に駆動用のパルス信号を供給する。駆動モータ132は、駆動用のパルス信号に従って、左右の車輪131を回転駆動させ、ロボット100を移動させる。このように、移動部130は、ロボット100を移動させる移動手段として機能する。なお、左右の車輪131がそれぞれ独立して回転駆動するように構成され、ロボット100が前進、後退、旋回、加減速などの走行が可能であれば、駆動モータ132の数は任意である。例えば、連結機構や操舵機構を設けるなどして1つのモータで左右の車輪131を駆動させてもよい。また、駆動モータ132の数に合わせて駆動回路133の数も適宜変更することもできる。
【0019】
センサ部140は、ロボット100の外部状態及び内部状態を示す情報(物理量)を取得し、適宜、所定の信号に変換して制御部110に供給する。センサ部140は、例えば、エンコーダ、加速度センサ、角速度センサ、距離センサ、イメージセンサ、マイクロフォン等のセンサ群から構成される。エンコーダは、後述する可動部150の駆動機構152の一部を構成する駆動モータ152Aの回転軸152Bに取り付けられ、この回転軸152Bの回動可能角度を計測するセンサ(検出手段)である。また、加速度センサ及び角速度センサは胴体部102の内部に、距離センサ及びイメージセンサは眼部104の内部に、マイクロフォンは耳部103の内部に、配置される。
【0020】
可動部150は、揺動運動や回転運動などを行う部位である。可動部150は、頭部101、手部107、足部108、尻尾部109等の可動部材151と、可動部材151を駆動する駆動モータやアクチュエータ等から成る駆動機構152と、駆動機構152を駆動制御する駆動回路153と、から構成される。ロボット100は、制御部110の制御に従って可動部材151を運動させることにより、例えば、手足を動かす動作や頭を上下左右に振る動作を実現する。
【0021】
可動部材151の一部である尻尾部109は、図1(B)に示すように、ロボット100の胴体部102の背部102Bに配置される。また、尻尾部109は、図3に示すように、短尺部109Aと長尺部109BとからなるL字形の細長棒状体である。短尺部109Aは、尻尾部109を駆動するための駆動機構152としての駆動モータ152Aの回転軸152Bに接続されており、尻尾部109は、回転軸152Bの回転とともに回動するように構成されている。このように、尻尾部109は、回動部として機能する。なお、駆動モータ152Aは、ロボット100が接地面GSに接地している状態において、その回転軸152Bの中心軸線CAが接地面GSに対して平行になるように胴体部102内に設置されている。
【0022】
ここで、ロボット100が接地面GSに接地しているとは、図4(A)〜(C)に示すように、左右の足部108にそれぞれ内蔵された、移動手段の一部を構成する車輪(不図示)が接地面GSに接している状態をいう。したがって、図4(D)に示すように、ロボット100が転倒して頭部101や胴体部102が接地面GSに接している状態や、図5(A)〜(C)に示すように、ロボット100が所定の対象の手UHに把持されて接地面GSの上方に持ち上げられている状態は、左右の足部108の車輪が接地面GSに接していないため、ロボット100が接地面GSに接地しているとは言わない。
【0023】
音声出力部160は、スピーカ及び音声出力インタフェースで構成され、制御部110により生成された音声データを音声に変換して外部に出力する。スピーカは、例えば、口部106に嵌め込まれた状態で設置される。ロボット100は、センサ部140のマイクロフォンで所定の対象の音声を収集し、制御部110の制御の下、所定の対象の発話内容に対応する音声を音声出力部160から出力することにより、所定の対象と簡単な会話をすることができる。
【0024】
通信部170は、無線通信モジュール及びアンテナにより構成され、外部装置とデータ通信を行う。
【0025】
電源部180は、電源回路やバッテリなどから構成され、制御部110の指示に従って、ロボット100の各部に電力を供給する。
【0026】
次に、図6に示すフローチャートを参照しながら、ロボット100の制御部110が実行する動作制御処理について説明する。動作制御処理は、ロボット100が実行する各種動作を制御する処理である。制御部110は、所定の対象の操作により、ロボット100の電源が投入されたことに応答して、動作制御処理を開始する。
【0027】
制御部110は、動作制御処理を開始すると、まず、記憶部120の所定の記憶領域に格納された初期データを読み出し、ロボット100の各部を初期状態に設定する(ステップS101)。
【0028】
続いて、制御部110は、回動動作処理を実行する(ステップS102)。回動動作処理は、ロボット100が床や机などの接地面(平面)GSに接地しているか否かを判定するために、尻尾部109を回動させて回動可能角度を取得するための処理である。このように、制御部110は、判定手段として機能する。
【0029】
図7を参照して、回動動作処理について説明する。制御部110は、回動動作処理を開始すると、先ず最初に、尻尾部109をデフォルト位置に配置するように駆動信号を生成し、この信号を可動部150に送信する(ステップS201)。ここで、図8に示すように、尻尾部109の長尺部109Bがロボット100の縦方向(図中の上下方向)の中心線CLに沿う位置(実線で描かれた尻尾部109の位置)を尻尾部109のデフォルト位置(ホームポジション)とする。
【0030】
次に、制御部110は、尻尾部109を反時計回り方向(第1の方向)に一回転(360度)回動するように駆動信号を生成し、この信号を可動部150の駆動回路153に送信する(ステップS202)。これにより、尻尾部109の駆動機構152としての駆動モータ152Aの回転軸152Bが反時計回り方向に回転する。これに伴い、回転軸152Bに接続された尻尾部109は、デフォルト位置から反時計回り方向に回動する。
【0031】
図4(C)及び図8に示すように、ロボット100が接地面GSに接地している場合、長尺部109Bの先端部が接地面GSに当接することで、反時計回り方向の回動が規制されて停止する。また、図5(C)に示すように、ロボット100が接地面GSに接地していない場合であっても、ロボット100が所定の対象の手UHに把持されて接地面GSの上方にわずかに持ち上げられて保持されている場合も、同様に、長尺部109Bの先端部が接地面GSに当接することで、反時計回り方向の回動が規制されて停止する。ここで、図4(C)及び図8に示すように、反時計回り方向の回動が規制されて尻尾部109が停止する位置(中心線CLの左側に二点鎖線で描かれた長尺部109Bの位置)を、左回動規制位置と呼ぶ。
【0032】
一方、図5(B)に示すように、ロボット100が所定の対象の手UHに把持されて長尺部109Bの先端部が接地面GSに接触しない高さまで接地面GSの上方に持ち上げられて保持されている場合、反時計回り方向の回動を規制するものが存在しないため、尻尾部109は反時計回り方向に360度(2π)回動する。
【0033】
制御部110は、駆動モータ152Aの回転軸152Bに取り付けられたエンコーダから出力される角度データを受信し、尻尾部109のデフォルト位置から左回動規制位置までの反時計回り方向の回動可能角度θccw(以下、「反時計回り方向の回動可能角度θccw」を、単に「回動可能角度θccw」と称することがある)を取得する(ステップS203)。
【0034】
ステップS203の処理を実行した後、制御部110は、尻尾部109をデフォルト位置に復帰するように駆動信号を生成し、この信号を可動部150に送信する(ステップS204)。ステップS202の反時計回り方向の回動動作において、尻尾部109が左回動規制位置に停止した場合には、駆動モータ152Aの回転軸152Bの時計回り方向の回転により、尻尾部109は、左回動規制位置からデフォルト位置に復帰して停止する。
【0035】
続いて、制御部110は、尻尾部109を時計回り方向(第2の方向)に一回転(360度)回動するように駆動信号を生成し、この信号を可動部150の駆動回路153に送信する(ステップS205)。これにより、駆動モータ152Aの回転軸152Bは時計回り方向に回転する。これに伴い、回転軸152Bに接続された尻尾部109は、デフォルト位置から時計回り方向に回動する。
【0036】
図4(C)及び図8に示すように、ロボット100が接地面GSに接地している場合、反時計回り方向の回動の場合と同様、長尺部109Bの先端部が接地面GSに当接することで、時計回り方向の回動が規制されて停止する。また、図5(C)に示すように、ロボット100が接地面GSに接地していない場合であっても、ロボット100が所定の対象の手UHに把持されて接地面GSの上方にわずかに持ち上げられて保持されている場合も、同様に、長尺部109Bの先端部が接地面GSに当接することで、時計回り方向の回動が規制されて停止する。ここで、図4(C)及び図8に示すように、時計回り方向の回動が規制されて尻尾部109が停止する位置(中心線CLの右側に二点鎖線で描かれた長尺部109Bの位置)を、右回動規制位置と呼ぶ。
【0037】
一方、図5(B)に示すように、ロボット100が所定の対象の手UHに把持されて長尺部109Bの先端部が接地面GSに接触しない高さまで接地面GSの上方に持ち上げられて保持されている場合、時計回り方向の回動を規制するものが存在しないため、反時計回り方向の回動の場合と同様、尻尾部109は時計回り方向に360度回動する。
【0038】
制御部110は、駆動モータ152Aの回転軸152Bに取り付けられたエンコーダから出力される角度データを受信し、尻尾部109のデフォルト位置から右回動規制位置までの時計回り方向の回動可能角度θcw(以下、「時計回り方向の回動可能角度θcw」を、単に「回動可能角度θcw」と称することがある)を取得する(ステップS206)。
【0039】
ステップS206の処理を実行した後、制御部110は、尻尾部109をデフォルト位置に復帰するように駆動信号を生成し、この信号を可動部150に送信する(ステップS207)。ステップS205の時計回り方向の回動動作において、尻尾部109が右回動規制位置に停止した場合には、駆動モータ152Aの回転軸152Bの反時計回り方向の回転により、尻尾部109は、右回動規制位置からデフォルト位置に復帰して停止する。その後、制御部110は、回動動作処理を終了する。
【0040】
図6に示す動作制御処理のフローチャートの説明に戻り、制御部110は、ステップS102の回動動作処理によって取得した回動可能角度θcwと回動可能角度θccwとが同等であるか否かを判定する(ステップS103)。ここで、回動可能角度θcwと回動可能角度θccwとが同等とは、両角度が同値であることの他、所定の誤差(例えば、±3度)を含んでほぼ同じとみなすことができる場合も含むものとする。
【0041】
回動可能角度θcwと回動可能角度θccwとが同等ではないと判定した場合(ステップS103;NO)、制御部110は、ロボット100を平面である接地面GSに接地することを促すメッセージを出力する(ステップS104)。制御部110は、例えば、記憶部120に格納されたロボット100の接地を促す音声データを音声出力部160に供給し、スピーカから音声として出力させる。ステップS104の処理を実行した後、制御部110は、処理をステップS102に戻す。
【0042】
一方、回動可能角度θcwと回動可能角度θccwとが同等であると判定した場合(ステップS103;YES)、制御部110は、さらに、回動可能角度θcwと回動可能角度θccwとのいずれもが所定範囲以内であるか否かを判定する(ステップS105)。
【0043】
ここで、ロボット100が接地面GSに接地している状態において、時計回り方向の回動可能角度θcwと反時計回り方向の回動可能角度θccwとは、論理的には同値であり、図8に示すように、回動可能角度θcw及び回動可能角度θccwの論理角度θLは、接地面GSから駆動モータ152Aの回転軸152Bの中心軸線CAまでの距離をLG(図3及び図8参照)、長尺部109Bの長手方向の中心線CBと回転軸152Bの中心軸線CAとの交点PAから左回動規制値又は右回動規制位置における中心線CBと接地面GSとの交点PBまでの距離をLB(図3及び図8参照)としたとき、下式から一意に決まる。なお、下式のarcsin(LG/LB)は、図8に示すθgに該当する。
θL = π/2 + arcsin(LG/LB)
ただし、0 ≦ arcsin(LG/LB) ≦ π/2
【0044】
したがって、回動可能角度θcwと回動可能角度θccwとのいずれもが所定範囲以内であるか否かは、例えば、回動可能角度θcwと回動可能角度θccwとの各々が、ロボット100が接地面GSに接地しているとみなすことができる角度の範囲、すなわち、上式で一意に決まる論理角度θLの所定の誤差(例えば、±3度)の範囲に収まっているか否かで判定される。
【0045】
前述したように、回動動作処理において、ロボット100が所定の対象の手UHに把持されて接地面GSの上方に持ち上げられている場合であっても、ロボット100が接地面GSに接地している場合と同様に、回動可能角度θcwと回動可能角度θccwとして同等の数値を得ることがある。しかしながら、ステップS105の処理において、回動可能角度θcw及び回動可能角度θccwが所定範囲以内であるか否かを判定することにより、ロボット100が接地面GSに接地されているか否かをより的確に確認することができる。
【0046】
回動可能角度θcwと回動可能角度θccwとのいずれかが所定範囲以内ではないと判定した場合(ステップS105;NO)、制御部110は、ステップS103においてNOと判定した場合と同様、ステップS104に処理を進める。
【0047】
回動可能角度θcwと回動可能角度θccwとのいずれもが所定範囲以内であると判定した場合(ステップS105;YES)、制御部110は、通常動作を実行するための駆動信号を生成し、この信号を移動部130及び可動部150に送信する(ステップS106)。制御部110は、ロボット100の通常動作として、頭部101、手部107、足部108、尻尾部109が独立して動作するように各可動部材に対応する駆動機構152のアクチュエータを駆動する。例えば、尻尾部109は、初期状態においては、図4(A)に示すように、長尺部109Bがデフォルト位置に位置して停止しているが、通常動作が実行されると、図4(B)に示すように、長尺部109Bが所定角度θfで左右に揺動するように制御される。また、制御部110は、通常動作として、ロボット100が配置された空間内でランダムに移動するように駆動モータ132を駆動する。また、制御部110は、通常動作として、ロボット100が配置された空間内で移動しないように駆動モータ132を駆動しなくてもよい。
【0048】
制御部110は、時間の経過を計測するタイマが出力する時刻情報に基づき、通常動作の実行を開始してから、あるいは、前回の所定時間の経過時から、所定時間(例えば、30秒)が経過したか否かを判定する(ステップS107)。所定時間が経過していないと判定した場合(ステップS107;NO)、制御部110は、ステップS107の処理を所定時間が経過するまで繰り返し実行する。
【0049】
所定時間が経過したと判定した場合(ステップS107;YES)、制御部110は、回動動作処理を実行する(ステップS108)。このように、制御部110は、通常動作の実行中において、所定時間が経過するごとに定期的に回動動作処理を実行し、ロボット100が接地面GSに接地しているか否かを確認する。
【0050】
ステップS108の回動動作処理を実行し、回動可能角度θcw及び回動可能角度θccwを取得した後、制御部110は、回動可能角度θcwと回動可能角度θccwとが同等であるか否かを判定する(ステップS109)。
【0051】
回動可能角度θcwと回動可能角度θccwとが同等であると判定した場合(ステップS109;YES)、制御部110は、回動可能角度θcwと回動可能角度θccwとのいずれもが所定範囲以内であるか否かを判定する(ステップS110)。回動可能角度θcwと回動可能角度θccwとのいずれもが所定範囲以内であると判定した場合(ステップS110;YES)、制御部110は、ステップS107に処理を戻し、所定時間が再度経過するまでステップS107の処理を繰り返し実行する。
【0052】
ステップS109又はステップS110においてNOと判定した場合、制御部110は、ロボット100が接地面GSに接地していないとして、通常動作を中止するための停止信号を生成し、この信号を移動部130及び可動部150に送信して通常動作を中止させる(ステップS111)。通常動作の中止により、例えば、移動部130の車輪131の回転運動が停止される。また、尻尾部109は、その揺動動作が中断され、図5(D)に示すように、デフォルト位置において停止する。このように、所定の対象がロボット100を持ち上げているときなどに通常動作を停止することにより、可動部材151の通常動作の継続に伴って生じる所定の対象の負傷や移動部130の車輪131の空転などによる無駄な電力消費を抑止することができる。
【0053】
続いて、制御部110は、通常動作の実行を中止してから、あるいは、前回の所定時間の経過時から、所定時間(例えば、30秒)が経過したか否かを判定する(ステップS112)。所定時間が経過していないと判定した場合(ステップS112;NO)、制御部110は、ステップS112の処理を所定時間が経過するまで繰り返し実行する。
【0054】
所定時間が経過したと判定した場合(ステップS112;YES)、制御部110は、回動動作処理を実行する(ステップS113)。このように、制御部110は、通常動作の停止中において、所定時間が経過するごとに定期的に回動動作処理を実行し、ロボット100が接地面GSに再び接地されたか否かを確認する。
【0055】
ステップS113の回動動作処理を実行し、回動可能角度θcw及び回動可能角度θccwを取得した後、制御部110は、回動可能角度θcwと回動可能角度θccwとが同等であるか否かを判定する(ステップS114)。
【0056】
回動可能角度θcwと回動可能角度θccwとが同等であると判定した場合(ステップS114;YES)、制御部110は、回動可能角度θcwと回動可能角度θccwとのいずれもが所定範囲以内であるか否かを判定する(ステップS115)。回動可能角度θcwと回動可能角度θccwとのいずれもが所定範囲以内であると判定した場合(ステップS115;YES)、制御部110は、ステップS106に処理を戻し、通常動作を再開させる。
【0057】
ステップS114又はステップS115においてNOと判定した場合、制御部110は、ステップS112に処理を戻し、所定時間が経過するまで待機する。
【0058】
以上で述べたように、本実施の形態によれば、ロボット100は、尻尾部109の回動動作を定期的に実行することにより、新たにセンサを取り付けることなく、床や机などの接地面GSに接地しているか否かを判定し、判定結果に応じて異なる動作を自律的に実行する。ロボット100は、接地面GSに接地している場合には、移動部130を制御して配置された空間内を移動したり、可動部150を制御して手足をゆっくり揺動させるなどの通常動作を実行する一方、接地面GSに接地していない場合には、車輪131の駆動を停止したり、手足の揺動動作を停止したりする。このように、ロボット100によれば、接地面GSに接地しているか否かを既設の尻尾部109を回動動作させるという簡単な構成によって誤判定することなく判定することができる。
【0059】
さらに、ロボット100は、所定の対象の接触の強度に対応する異なる速度で移動することが可能である。また、ロボット100は、移動動作に連動して、例えば、まぶたを閉じるなどの所定の対象の接触に呼応するような動作を実行することも可能である。また、所定の対象の接触頻度に応じてさらに多様な動作を実施することができる。このように、ロボット100は、所定の対象に長期にわたって利用させることができる。
【0060】
なお、本発明は、前記の実施の形態に限定されず、種々の変形及び応用が可能である。前記の実施の形態は、次のように変形されてもよい。
【0061】
前記の実施の形態では、ロボット100が接地面GSに接地しているか否かを判定するにあたり、動作制御処理のステップS103などにおいて尻尾部109の時計回り方向の回動可能角度θcwと反時計回り方向の回動可能角度θccwとが同等であるか否かを判定し、更に、ステップS105などにおいて回動可能角度θcwと回動可能角度θccwとのいずれもが所定範囲以内であるか否かを判定している。しかし、回動可能角度θcw又は回動可能角度θccwの少なくとも一方が論理角度θLを超える場合には、これらの判定を行うまでもなく接地面GSに接地していないと判定するようにしてもよい。
【0062】
例えば、ロボット100は、ロボット100が備えるセンサのみならず、外部に配置された各種センサから検出データなどを取得するように構成されてもよい。
また、所定の対象は、ユーザ等としたが、人であればユーザでなくてもよい。
【0063】
本発明は、本発明の広義の精神と範囲とを逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、この発明を説明するためのものであり、本発明の範囲を限定するものではない。すなわち、本発明の範囲は、実施の形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、この発明の範囲内とみなされる。
【0064】
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【0065】
(付記1)
回動部と、
前記回動部の回動状態を検出する検出手段と、
前記検出手段による検出結果に基づいて、自装置が接地面に接地しているか否かを判定する判定手段と、
を備える、
ことを特徴とするロボット。
【0066】
(付記2)
前記自装置を移動させる移動手段と、
前記判定手段の判定結果に基づいて、前記移動手段を制御する制御手段と、
を更に備える、
ことを特徴とする付記1に記載のロボット。
【0067】
(付記3)
前記制御手段は、
前記判定手段により前記自装置が前記接地面に接地していると判定された場合に、前記移動手段を前記自装置が前記接地面を移動するように制御し、
前記判定手段により前記自装置が前記接地面に接地していないと判定された場合に、前記移動手段を停止するように制御する、
ことを特徴とする付記2に記載のロボット。
【0068】
(付記4)
前記検出手段は、前記回動状態として前記回動部の回動可能な角度を検出し、
前記判定手段は、前記検出手段が検出した前記回動部の回動可能な角度が所定の条件を満たすか否かに応じて、前記自装置が前記接地面に接地しているか否かを判定する、
ことを特徴とする付記1乃至3の何れか1つに記載のロボット。
【0069】
(付記5)
前記検出手段は、前記回動部の第1の方向に回動可能な角度と、前記回動部の前記第1の方向とは逆向きの第2の方向に回動可能な角度と、を検出し、
前記判定手段は、前記回動部の前記第1の方向に回動可能な角度と前記第2の方向に回動可能な角度とが同等であるか否かに応じて、前記自装置が前記接地面に接地しているか否かを判定する、
ことを特徴とする付記4に記載のロボット。
【0070】
(付記6)
前記判定手段は、前記回動部の前記第1の方向に回動可能な角度と前記第2の方向に回動可能な角度とがいずれも所定の角度範囲以内であるか否かに応じて、前記自装置が前記接地面に接地しているか否かを判定する、
ことを特徴とする付記5に記載のロボット。
【0071】
(付記7)
前記判定手段は、
前記回動部の前記第1の方向に回動可能な角度と前記第2の方向に回動可能な角度とがいずれも前記所定の角度範囲以内である場合に、前記自装置が前記接地面に接地していると判定し、
前記回動部の前記第1の方向に回動可能な角度と前記第2の方向に回動可能な角度とのうちの少なくとも一方が前記所定の角度範囲を超える場合に、前記自装置が前記接地面に接地していないと判定する、
ことを特徴とする付記6に記載のロボット。
【0072】
(付記8)
前記判定手段は、前記回動部の前記第1の方向に回動可能な角度と前記第2の方向に回動可能な角度とのうちの少なくとも一方が前記所定の角度範囲を超える場合に、前記自装置が所定の対象によって前記接地面から持ち上げられていると判定する、
ことを特徴とする付記7に記載のロボット。
【0073】
(付記9)
前記所定の対象は、人である、
ことを特徴とする付記8に記載のロボット。
【0074】
(付記10)
前記自装置が前記接地面に接地しているとは、前記自装置を移動させる移動手段の一部を構成する左右の足部にそれぞれ内蔵された車輪が前記接地面にそれぞれ接していることである、
ことを特徴とする付記2乃至9の何れか1つに記載のロボット。
【0075】
(付記11)
前記回動部は、前記自装置の尻尾部である、
ことを特徴とする付記1乃至10の何れか1つに記載のロボット。
【0076】
(付記12)
回動部と、
前記回動部の回動状態を検出する検出手段と、
自装置を移動させる移動手段と、
前記検出手段の検出結果に基づいて、前記移動手段を制御する制御手段と、
を備える、
ことを特徴とするロボット。
【0077】
(付記13)
回動部を備えるロボットの制御方法であって、
前記回動部を回動する回動ステップと、
前記回動部の回動状態を検出する検出ステップと、
前記検出ステップでの検出結果に基づいて、前記ロボットが接地面に接地しているか否かを判定する判定ステップと、
を含む、
ことを特徴とするロボットの制御方法。
【0078】
(付記14)
回動部を備えるロボットのコンピュータに、
前記回動部を回動する回動処理と、
前記回動部の回動状態を検出する検出処理と、
前記検出処理による検出結果に基づいて、前記ロボットが接地面に接地しているか否かを判定する判定処理と、
を実行させる、
ことを特徴とするプログラム。
【符号の説明】
【0079】
100…ロボット、101…頭部、102…胴体部、102A…腹部、102B…背部、103…耳部、104…眼部、105…鼻部、106…口部、107…手部、108…足部、109…尻尾部、109A…短尺部、109B…長尺部、110…制御部、120…記憶部、130…移動部、131…車輪、132…駆動モータ、133…駆動回路、140…センサ部、150…可動部、151…可動部材、152…駆動機構、152A…駆動モータ、152B…回転軸、153…駆動回路、160…音声出力部、170…通信部、180…電源部、CA…中心軸線、CB…中心線、CL…中心線、GS…接地面、PA,PB…交点、UH…所定の対象の手、θcw,θccw…回動可能角度、θf…所定角度
図1
図2
図3
図4
図5
図6
図7
図8