JPWO2018012446A1 - 活動量をコントロールされる自律行動型ロボット - Google Patents

活動量をコントロールされる自律行動型ロボット Download PDF

Info

Publication number
JPWO2018012446A1
JPWO2018012446A1 JP2017566427A JP2017566427A JPWO2018012446A1 JP WO2018012446 A1 JPWO2018012446 A1 JP WO2018012446A1 JP 2017566427 A JP2017566427 A JP 2017566427A JP 2017566427 A JP2017566427 A JP 2017566427A JP WO2018012446 A1 JPWO2018012446 A1 JP WO2018012446A1
Authority
JP
Japan
Prior art keywords
robot
motion
mode
control unit
operation control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017566427A
Other languages
English (en)
Other versions
JP6475872B2 (ja
Inventor
要 林
要 林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Groove X Inc
Original Assignee
Groove X Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Groove X Inc filed Critical Groove X Inc
Publication of JPWO2018012446A1 publication Critical patent/JPWO2018012446A1/ja
Application granted granted Critical
Publication of JP6475872B2 publication Critical patent/JP6475872B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0217Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H29/00Drive mechanisms for toys in general
    • A63H29/22Electric drives
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H11/00Self-movable toy figures
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H3/00Dolls
    • A63H3/36Details; Accessories
    • A63H3/38Dolls' eyes
    • A63H3/40Dolls' eyes movable
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/0005Manipulators having means for high-level communication with users, e.g. speech generator, face recognition means
    • B25J11/0015Face robots, animated artificial faces for imitating human expressions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H2200/00Computerized interactive toys, e.g. dolls

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Automation & Control Theory (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Remote Sensing (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Business, Economics & Management (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Game Theory and Decision Science (AREA)
  • Medical Informatics (AREA)
  • Manipulator (AREA)
  • Toys (AREA)

Abstract

ロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行する駆動機構と、二次電池の電池残量を監視する電池残量監視部と、を備える。電池残量に応じてロボットの行動特性は変化する。たとえば、電池残量が少ないときほど処理負荷の小さいモーションを高い確率にて選択する。二次電池の電力消費ペースを定義する消費プランデータを参照し、消費プランデータで予定されている電池残量と実際の電池残量の差分に応じてロボットの行動特性を変化させてもよい。

Description

本発明は、内部状態または外部環境に応じて自律的に行動選択するロボット、に関する。
人間は、癒やしを求めてペットを飼う。その一方、ペットの世話をする時間を十分に確保できない、ペットを飼える住環境にない、アレルギーがある、死別がつらい、といったさまざまな理由により、ペットをあきらめている人は多い。もし、ペットの役割が務まるロボットがあれば、ペットを飼えない人にもペットが与えてくれるような癒やしを与えられるかもしれない(特許文献1参照)。近年、ロボット技術は急速に進歩しつつあるものの、ペットのような伴侶としての存在感を実現するには至っていない。
特開2000−323219号公報
矢野和男著、「データの見えざる手」、草思社、2014年7月
生物は、食事と睡眠によって活力を回復する。空腹時や睡眠不足のときには、生物の活動は低下する。ロボットは、充電によって活力、すなわち、活動のためのエネルギーを回復する。ロボットにとっての充電は、生物にとっての食事や睡眠に似ている。本発明者は、電池残量と活動量の関係を検討することにより、人間的・生物的な行動特性をロボットでも表現できるのではないかと考えた。人間的・生物的な行動を自律的に選択可能なロボットであれば、ロボットへの共感を大きく高めることができると考えられる。
本発明は上記着想に基づいて完成された発明であり、その主たる目的は、ロボットの活動量を合理的に制御するための技術、を提供することにある。
本発明のある態様における自律行動型ロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行する駆動機構と、二次電池の電池残量を監視する電池残量監視部と、を備える。
動作制御部は、電池残量に応じてロボットの行動特性を変化させる。
本発明の別の態様における自律行動型ロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行する駆動機構と、二次電池の電池残量を監視する電池残量監視部と、イベントの発生を判定する認識部、を備える。
動作制御部は、充電中に所定の優先イベントが発生したときには、充電未了であっても優先イベントに対応するモーションを選択する。
本発明の別の態様における自律行動型ロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行する駆動機構と、を備える。
動作制御部は、モーションの処理負荷に対して負の相関関係が定められた選択確率にて、ロボットのモーションを選択する。
本発明の別の態様における自律行動型ロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行する駆動機構と、通常モードおよび通常モードよりも電力供給を抑制する省電力モードのいずれかを選択するモード選択部と、を備える。
省電力モードに設定されている場合において、所定の復帰イベントが発生したとき、動作選択部は復帰イベントに対応づけられる起動モーションを実行し、モード選択部は省電力モードから通常モードに変更する。
本発明の別の態様における自律行動型ロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行する駆動機構と、通常モードおよび通常モードよりも電力供給を抑制する省電力モードのいずれかを選択するモード選択部と、を備える。
モード選択部は、省電力モードに設定されているとき、移動物体が検出されたことを条件として、省電力モードから通常モードに変更する。
本発明の別の態様における自律行動型ロボットは、アクチュエータと、アクチュエータに動作信号を送信する動作制御部と、二次電池の電池残量を監視する電池残量監視部と、を備える。
動作制御部は、電池残量が所定の閾値以下となったとき、アクチュエータに供給する電力を通常時よりも制限する。
本発明の別の態様における自律行動型ロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行する駆動機構と、第1モードおよび第2モードのいずれかを選択するモード選択部と、第1モードおよび第2モードに応じて瞳画像を変化させる眼生成部と、を備える。
モード選択部は、第1モードにおいて所定の遷移条件が成立したときに第2モードに変更し、眼生成部は、第1モードにおいては瞳画像を左右に移動させ、第2モードにおいては瞳画像を閉眼させる。
本発明の別の態様における自律行動型ロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行する駆動機構と、二次電池の電池残量を監視する電池残量監視部と、通常モードおよび通常モードよりも電力供給を抑制する省電力モードのいずれかを選択するモード選択部と、を備える。
動作制御部は、二次電池の電池残量が所定の閾値以下となったとき、外部の充電器を移動目標地点として選択し、モード選択部は、充電器への移動経路に障害物が存在するときには、通常モードから省電力モードに変更する。
本発明によれば、ロボットに対する共感を高めやすくなる。
ロボットの正面外観図である。 ロボットの側面外観図である。 ロボットの構造を概略的に表す断面図である。 ロボットシステムの構成図である。 感情マップの概念図である。 ロボットのハードウェア構成図である。 ロボットシステムの機能ブロック図である。 負荷テーブルのデータ構造図である。 モーション選択テーブルのデータ構造図である。 消費プランデータとモーション選択の関係を示す模式図である。 消費プラン選択テーブルの模式図である。 処理負荷と選択確率の関係を示す模式図である。 充電中に優先イベントが発生したときの処理過程を示すフローチャートである。 変形例1におけるロボットシステムの機能ブロック図である。 眼画像の外観図である。 動作モードの遷移図である。 充電ステーションの外観図である。
図1(a)は、ロボット100の正面外観図である。図1(b)は、ロボット100の側面外観図である。
本実施形態におけるロボット100は、外部環境および内部状態に基づいて行動や仕草(ジェスチャー)を決定する自律行動型のロボットである。外部環境は、カメラやサーモセンサなど各種のセンサにより認識される。内部状態はロボット100の感情を表現するさまざまなパラメータとして定量化される。これらについては後述する。
ロボット100は、屋内行動が前提とされており、たとえば、オーナー家庭の家屋内を行動範囲とする。以下、ロボット100に関わる人間を「ユーザ」とよび、ロボット100が所属する家庭の構成員となるユーザのことを「オーナー」とよぶ。
ロボット100のボディ104は、全体的に丸みを帯びた形状を有し、ウレタンやゴム、樹脂、繊維などやわらかく弾力性のある素材により形成された外皮を含む。ロボット100に服を着せてもよい。丸くてやわらかく、手触りのよいボディ104とすることで、ロボット100はユーザに安心感とともに心地よい触感を提供する。
ロボット100は、総重量が15キログラム以下、好ましくは10キログラム以下、更に好ましくは、5キログラム以下である。生後13ヶ月までに、赤ちゃんの過半数は一人歩きを始める。生後13ヶ月の赤ちゃんの平均体重は、男児が9キログラム強、女児が9キログラム弱である。このため、ロボット100の総重量が10キログラム以下であれば、ユーザは一人歩きできない赤ちゃんを抱きかかえるのとほぼ同等の労力でロボット100を抱きかかえることができる。生後2ヶ月未満の赤ちゃんの平均体重は男女ともに5キログラム未満である。したがって、ロボット100の総重量が5キログラム以下であれば、ユーザは乳児を抱っこするのと同等の労力でロボット100を抱っこできる。
適度な重さと丸み、柔らかさ、手触りのよさ、といった諸属性により、ユーザがロボット100を抱きかかえやすく、かつ、抱きかかえたくなるという効果が実現される。同様の理由から、ロボット100の身長は1.2メートル以下、好ましくは、0.7メートル以下であることが望ましい。本実施形態におけるロボット100にとって、抱きかかえることができるというのは重要なコンセプトである。
ロボット100は、3輪走行するための3つの車輪を備える。図示のように、一対の前輪102(左輪102a,右輪102b)と、一つの後輪103を含む。前輪102が駆動輪であり、後輪103が従動輪である。前輪102は、操舵機構を有しないが、回転速度や回転方向を個別に制御可能とされている。後輪103は、いわゆるオムニホイールからなり、ロボット100を前後左右へ移動させるために回転自在となっている。左輪102aよりも右輪102bの回転数を大きくすることで、ロボット100は左折したり、左回りに回転できる。右輪102bよりも左輪102aの回転数を大きくすることで、ロボット100は右折したり、右回りに回転できる。
前輪102および後輪103は、駆動機構(回動機構、リンク機構)によりボディ104に完全収納できる。走行時においても各車輪の大部分はボディ104に隠れているが、各車輪がボディ104に完全収納されるとロボット100は移動不可能な状態となる。すなわち、車輪の収納動作にともなってボディ104が降下し、床面Fに着座する。この着座状態においては、ボディ104の底部に形成された平坦状の着座面108(接地底面)が床面Fに当接する。
ロボット100は、2つの手106を有する。手106には、モノを把持する機能はない。手106は上げる、振る、振動するなど簡単な動作が可能である。2つの手106も個別制御可能である。
目110にはカメラが内蔵される。目110は、液晶素子または有機EL素子による画像表示も可能である。ロボット100は、目110に内蔵されるカメラのほか、集音マイクや超音波センサなどさまざまなセンサを搭載する。また、スピーカーを内蔵し、簡単な音声を発することもできる。
ロボット100の頭部にはツノ112が取り付けられる。上述のようにロボット100は軽量であるため、ユーザはツノ112をつかむことでロボット100を持ち上げることも可能である。
図2は、ロボット100の構造を概略的に表す断面図である。
図2に示すように、ロボット100のボディ104は、ベースフレーム308、本体フレーム310、一対の樹脂製のホイールカバー312および外皮314を含む。ベースフレーム308は、金属からなり、ボディ104の軸芯を構成するとともに内部機構を支持する。ベースフレーム308は、アッパープレート332とロアプレート334とを複数のサイドプレート336により上下に連結して構成される。複数のサイドプレート336間には通気が可能となるよう、十分な間隔が設けられる。ベースフレーム308の内方には、バッテリー118、制御回路342および各種アクチュエータが収容されている。
本体フレーム310は、樹脂材からなり、頭部フレーム316および胴部フレーム318を含む。頭部フレーム316は、中空半球状をなし、ロボット100の頭部骨格を形成する。胴部フレーム318は、段付筒形状をなし、ロボット100の胴部骨格を形成する。胴部フレーム318は、ベースフレーム308と一体に固定される。頭部フレーム316は、胴部フレーム318の上端部に相対変位可能に組み付けられる。
頭部フレーム316には、ヨー軸320、ピッチ軸322およびロール軸324の3軸と、各軸を回転駆動するためのアクチュエータ326が設けられる。アクチュエータ326は、各軸を個別に駆動するための複数のサーボモータを含む。首振り動作のためにヨー軸320が駆動され、頷き動作のためにピッチ軸322が駆動され、首を傾げる動作のためにロール軸324が駆動される。
頭部フレーム316の上部には、ヨー軸320を支持するプレート325が固定されている。プレート325には、上下間の通気を確保するための複数の通気孔327が形成される。
頭部フレーム316およびその内部機構を下方から支持するように、金属製のベースプレート328が設けられる。ベースプレート328は、クロスリンク機構329(パンタグラフ機構)を介してプレート325と連結される一方、ジョイント330を介してアッパープレート332(ベースフレーム308)と連結されている。
胴部フレーム318は、ベースフレーム308と車輪駆動機構370を収容する。車輪駆動機構370は、回動軸378およびアクチュエータ379を含む。胴部フレーム318の下半部は、ホイールカバー312との間に前輪102の収納スペースSを形成するために小幅とされている。
外皮314は、ウレタンゴムからなり、本体フレーム310およびホイールカバー312を外側から覆う。手106は、外皮314と一体成形される。外皮314の上端部には、外気を導入するための開口部390が設けられる。
図3は、ロボットシステム300の構成図である。
ロボットシステム300は、ロボット100、サーバ200および複数の外部センサ114を含む。家屋内にはあらかじめ複数の外部センサ114(外部センサ114a、114b、・・・、114n)が設置される。外部センサ114は、家屋の壁面に固定されてもよいし、床に載置されてもよい。サーバ200には、外部センサ114の位置座標が登録される。位置座標は、ロボット100の行動範囲として想定される家屋内においてx,y座標として定義される。
サーバ200は、家庭内に設置される。本実施形態におけるサーバ200とロボット100は1対1で対応する。ロボット100の内蔵するセンサおよび複数の外部センサ114から得られる情報に基づいて、サーバ200がロボット100の基本行動を決定する。
外部センサ114はロボット100の感覚器を補強するためのものであり、サーバ200はロボット100の頭脳を補強するためのものである。
外部センサ114は、定期的に外部センサ114のID(以下、「ビーコンID」とよぶ)を含む無線信号(以下、「ロボット探索信号」とよぶ)を送信する。ロボット100はロボット探索信号を受信するとビーコンIDを含む無線信号(以下、「ロボット返答信号」とよぶ)を返信する。サーバ200は、外部センサ114がロボット探索信号を送信してからロボット返答信号を受信するまでの時間を計測し、外部センサ114からロボット100までの距離を測定する。複数の外部センサ114とロボット100とのそれぞれの距離を計測することで、ロボット100の位置座標を特定する。
もちろん、ロボット100が自らの位置座標を定期的にサーバ200に送信する方式でもよい。
図4は、感情マップ116の概念図である。
感情マップ116は、サーバ200に格納されるデータテーブルである。ロボット100は、感情マップ116にしたがって行動選択する。図4に示す感情マップ116は、ロボット100の場所に対する好悪感情の大きさを示す。感情マップ116のx軸とy軸は、二次元空間座標を示す。z軸は、好悪感情の大きさを示す。z値が正値のときにはその場所に対する好感が高く、z値が負値のときにはその場所を嫌悪していることを示す。
図4の感情マップ116において、座標P1は、ロボット100の行動範囲としてサーバ200が管理する屋内空間のうち好感情が高い地点(以下、「好意地点」とよぶ)である。好意地点は、ソファの陰やテーブルの下などの「安全な場所」であってもよいし、リビングのように人が集まりやすい場所、賑やかな場所であってもよい。また、過去にやさしく撫でられたり、触れられたりした場所であってもよい。
ロボット100がどのような場所を好むかという定義は任意であるが、一般的には、小さな子どもや犬や猫などの小動物が好む場所を好意地点として設定することが望ましい。
座標P2は、悪感情が高い地点(以下、「嫌悪地点」とよぶ)である。嫌悪地点は、テレビの近くなど大きな音がする場所、お風呂や洗面所のように濡れやすい場所、閉鎖空間や暗い場所、ユーザから乱暴に扱われたことがある不快な記憶に結びつく場所などであってもよい。
ロボット100がどのような場所を嫌うかという定義も任意であるが、一般的には、小さな子どもや犬や猫などの小動物が怖がる場所を嫌悪地点として設定することが望ましい。
座標Qは、ロボット100の現在位置を示す。複数の外部センサ114が定期的に送信するロボット探索信号とそれに対するロボット返答信号により、サーバ200はロボット100の位置座標を特定する。たとえば、ビーコンID=1の外部センサ114とビーコンID=2の外部センサ114がそれぞれロボット100を検出したとき、2つの外部センサ114からロボット100の距離を求め、そこからロボット100の位置座標を求める。
あるいは、ビーコンID=1の外部センサ114は、ロボット探索信号を複数方向に送信し、ロボット100はロボット探索信号を受信したときロボット返答信号を返す。これにより、サーバ200は、ロボット100がどの外部センサ114からどの方向のどのくらいの距離にいるかを把握してもよい。また、別の実施の形態では、前輪102または後輪103の回転数からロボット100の移動距離を算出して、現在位置を特定してもよいし、カメラから得られる画像に基づいて現在位置を特定してもよい。
図4に示す感情マップ116が与えられた場合、ロボット100は好意地点(座標P1)に引き寄せられる方向、嫌悪地点(座標P2)から離れる方向に移動する。
感情マップ116は動的に変化する。ロボット100が座標P1に到達すると、座標P1におけるz値(好感情)は時間とともに低下する。これにより、ロボット100は好意地点(座標P1)に到達して、「感情が満たされ」、やがて、その場所に「飽きてくる」という生物的行動をエミュレートできる。同様に、座標P2における悪感情も時間とともに緩和される。時間経過とともに新たな好意地点や嫌悪地点が生まれ、それによってロボット100は新たな行動選択を行う。ロボット100は、新しい好意地点に「興味」を持ち、絶え間なく行動選択する。
感情マップ116は、ロボット100の内部状態として、感情の起伏を表現する。ロボット100は、好意地点を目指し、嫌悪地点を避け、好意地点にしばらくとどまり、やがてまた次の行動を起こす。このような制御により、ロボット100の行動選択を人間的・生物的なものにできる。
なお、ロボット100の行動に影響を与えるマップ(以下、「行動マップ」と総称する)は、図4に示したようなタイプの感情マップ116に限らない。たとえば、好奇心、恐怖を避ける気持ち、安心を求める気持ち、静けさや薄暗さ、涼しさや暖かさといった肉体的安楽を求める気持ち、などさまざまな行動マップを定義可能である。そして、複数の行動マップそれぞれのz値を重み付け平均することにより、ロボット100の目的地点を決定してもよい。
ロボット100は、行動マップとは別に、さまざまな感情や感覚の大きさを示すパラメータを有してもよい。たとえば、寂しさという感情パラメータの値が高まっているときには、安心する場所を評価する行動マップの重み付け係数を大きく設定し、目標地点に到達することでこの感情パラメータの値を低下させてもよい。同様に、つまらないという感覚を示すパラメータの値が高まっているときには、好奇心を満たす場所を評価する行動マップの重み付け係数を大きく設定すればよい。
図5は、ロボット100のハードウェア構成図である。
ロボット100は、内部センサ128、通信機126、記憶装置124、プロセッサ122、駆動機構120およびバッテリー118を含む。駆動機構120は、上述した車輪駆動機構370を含む。プロセッサ122と記憶装置124は、制御回路342に含まれる。各ユニットは電源線130および信号線132により互いに接続される。バッテリー118は、電源線130を介して各ユニットに電力を供給する。各ユニットは信号線132により制御信号を送受する。バッテリー118は、リチウムイオン二次電池であり、ロボット100の動力源である。
内部センサ128は、ロボット100が内蔵する各種センサの集合体である。具体的には、カメラ、集音マイク、赤外線センサ、サーモセンサ、タッチセンサ、加速度センサ、ニオイセンサなどである。ニオイセンサは、匂いの元となる分子の吸着によって電気抵抗が変化する原理を応用した既知のセンサである。ニオイセンサは、さまざまな匂いを複数種類のカテゴリ(以下、「ニオイカテゴリ」とよぶ)に分類する。
通信機126は、サーバ200や外部センサ114、ユーザの有する携帯機器など各種の外部機器を対象として無線通信を行う通信モジュールである。記憶装置124は、不揮発性メモリおよび揮発性メモリにより構成され、コンピュータプログラムや各種設定情報を記憶する。プロセッサ122は、コンピュータプログラムの実行手段である。駆動機構120は、内部機構を制御するアクチュエータである。このほかには、表示器やスピーカーなども搭載される。
プロセッサ122は、通信機126を介してサーバ200や外部センサ114と通信しながら、ロボット100の行動選択を行う。内部センサ128により得られるさまざまな外部情報も行動選択に影響する。駆動機構120は、主として、車輪(前輪102)と頭部(頭部フレーム316)を制御する。駆動機構120は、2つの前輪102それぞれの回転速度や回転方向を変化させることにより、ロボット100の移動方向や移動速度を変化させる。また、駆動機構120は、車輪(前輪102および後輪103)を昇降させることもできる。車輪が上昇すると、車輪はボディ104に完全に収納され、ロボット100は着座面108にて床面Fに当接し、着座状態となる。
図6は、ロボットシステム300の機能ブロック図である。
上述のように、ロボットシステム300は、ロボット100、サーバ200および複数の外部センサ114を含む。ロボット100およびサーバ200の各構成要素は、CPU(Central Processing Unit)および各種コプロセッサなどの演算器、メモリやストレージといった記憶装置、それらを連結する有線または無線の通信線を含むハードウェアと、記憶装置に格納され、演算器に処理命令を供給するソフトウェアによって実現される。コンピュータプログラムは、デバイスドライバ、オペレーティングシステム、それらの上位層に位置する各種アプリケーションプログラム、また、これらのプログラムに共通機能を提供するライブラリによって構成されてもよい。以下に説明する各ブロックは、ハードウェア単位の構成ではなく、機能単位のブロックを示している。
ロボット100の機能の一部はサーバ200により実現されてもよいし、サーバ200の機能の一部または全部はロボット100により実現されてもよい。
(サーバ200)
サーバ200は、通信部204、データ処理部202およびデータ格納部206を含む。
通信部204は、外部センサ114およびロボット100との通信処理を担当する。データ格納部206は各種データを格納する。データ処理部202は、通信部204により取得されたデータおよびデータ格納部206に格納されるデータに基づいて各種処理を実行する。データ処理部202は、通信部204およびデータ格納部206のインタフェースとしても機能する。
データ格納部206は、モーション格納部232、マップ格納部216および個人データ格納部218を含む。
ロボット100は、複数の動作パターン(モーション)を有する。手を震わせる、蛇行しながらオーナーに近づく、首をかしげたままオーナーを見つめる、などさまざまなモーションが定義されている。
モーション格納部232は、モーションの制御内容を定義する「モーションファイル」を格納する。各モーションは、モーションIDにより識別される。モーションファイルは、ロボット100のモーション格納部160にもダウンロードされる。どのモーションを実行するかは、サーバ200で決定されることもあるし、ロボット100で決定されることもある。
ロボット100のモーションの多くは、複数の単位モーションを含む複合モーションとして構成される。たとえば、ロボット100がオーナーに近づくとき、オーナーの方に向き直る単位モーション、手を上げながら近づく単位モーション、体を揺すりながら近づく単位モーション、両手を上げながら着座する単位モーションの組み合わせとして表現されてもよい。このような4つのモーションの組み合わせにより、「オーナーに近づいて、途中で手を上げて、最後は体をゆすった上で着座する」というモーションが実現される。モーションファイルには、ロボット100に設けられたアクチュエータの回転角度や角速度などが時間軸に関連づけて定義される。モーションファイル(アクチュエータ制御情報)にしたがって、時間経過とともに各アクチュエータを制御することで様々なモーションが表現される。
先の単位モーションから次の単位モーションに変化するときの移行時間を「インターバル」とよぶ。インターバルは、単位モーション変更に要する時間やモーションの内容に応じて定義されればよい。インターバルの長さは調整可能である。
以下、いつ、どのモーションを選ぶか、モーションを実現する上での各アクチュエータの出力調整など、ロボット100の行動制御にかかわる設定のことを「行動特性」と総称する。ロボット100の行動特性は、モーション選択アルゴリズム、モーションの選択確率、モーションファイル等により定義される。
マップ格納部216は、複数の行動マップを格納する。個人データ格納部218は、ユーザ、特に、オーナーの情報を格納する。具体的には、ユーザに対する親密度やユーザの身体的特徴・行動的特徴など各種のパラメータを格納する。年齢や性別などの他の属性情報を格納してもよい。
ロボット100はユーザの身体的特徴や行動的特徴に基づいてユーザを識別する。ロボット100は、内蔵のカメラで常時周辺を撮像する。そして、画像に写る人物の身体的特徴と行動的特徴を抽出する。身体的特徴とは、背の高さ、好んで着る服、メガネの有無、肌の色、髪の色、耳の大きさなど身体に付随する視覚的特徴であってもよいし、平均体温や匂い、声質、などその他の特徴も含めてもよい。行動的特徴とは、具体的には、ユーザが好む場所、動きの活発さ、喫煙の有無など行動に付随する特徴である。たとえば、父親として識別されるオーナーは在宅しないことが多く、在宅時にはソファで動かないことが多いが、母親は台所にいることが多く、行動範囲が広い、といった行動上の特徴を抽出する。
ロボット100は、大量の画像情報やその他のセンシング情報から得られる身体的特徴および行動的特徴に基づいて、高い頻度で出現するユーザを「オーナー」としてクラスタリングする。
ユーザIDでユーザを識別する方式は簡易かつ確実であるが、ユーザがユーザIDを提供可能な機器を保有していることが前提となる。一方、身体的特徴や行動的特徴によりユーザを識別する方法は画像認識処理負担が大きいものの携帯機器を保有していないユーザでも識別できるメリットがある。2つの方法は一方だけを採用してもよいし、補完的に2つの方法を併用してユーザ特定を行ってもよい。
本実施形態においては、身体的特徴と行動的特徴からユーザをクラスタリングし、ディープラーニング(多層型のニューラルネットワーク)によってユーザを識別する。詳細は後述する。
ロボット100は、ユーザごとに親密度という内部パラメータを有する。ロボット100が、自分を抱き上げる、声をかけてくれるなど、自分に対して好意を示す行動を認識したとき、そのユーザに対する親密度が高くなる。ロボット100に関わらないユーザや、乱暴を働くユーザ、出会う頻度が低いユーザに対する親密度は低くなる。
データ処理部202は、位置管理部208、マップ管理部210、認識部212、動作制御部222、親密度管理部220、プラン設定部240および活動監視部242を含む。
位置管理部208は、ロボット100の位置座標を、図3を用いて説明した方法にて特定する。位置管理部208はユーザの位置座標もリアルタイムで追跡してもよい。
マップ管理部210は、複数の行動マップについて図4に関連して説明した方法にて各座標のパラメータを変化させる。マップ管理部210は、複数の行動マップのいずれかを選択してもよいし、複数の行動マップのz値を加重平均してもよい。たとえば、行動マップAでは座標R1、座標R2におけるz値が4と3であり、行動マップBでは座標R1、座標R2におけるz値が−1と3であるとする。単純平均の場合、座標R1の合計z値は4−1=3、座標R2の合計z値は3+3=6であるから、ロボット100は座標R1ではなく座標R2の方向に向かう。
行動マップAを行動マップBの5倍重視するときには、座標R1の合計z値は4×5−1=19、座標R2の合計z値は3×5+3=18であるから、ロボット100は座標R1の方向に向かう。
認識部212は、外部環境を認識する。外部環境の認識には、温度や湿度に基づく天候や季節の認識、光量や温度に基づく物陰(安全地帯)の認識など多様な認識が含まれる。認識部212は、更に、人物認識部214と応対認識部228を含む。人物認識部214は、ロボット100の内蔵カメラによる撮像画像から人物を認識し、その人物の身体的特徴や行動的特徴を抽出する。そして、個人データ格納部218に登録されている身体特徴情報や行動特徴情報に基づいて、撮像されたユーザ、すなわち、ロボット100が見ているユーザが、父親、母親、長男などのどの人物に該当するかを判定する。人物認識部214は、表情認識部230を含む。表情認識部230は、ユーザの表情を画像認識することにより、ユーザの感情を推定する。
なお、人物認識部214は、人物以外の移動物体、たとえば、ペットである猫や犬についても特徴抽出を行う。
応対認識部228は、ロボット100になされたさまざまな応対行為を認識し、快・不快行為に分類する。応対認識部228は、また、ロボット100の行動に対するオーナーの応対行為を認識することにより、肯定・否定反応に分類する。
快・不快行為は、ユーザの応対行為が、生物として心地よいものであるか不快なものであるかにより判別される。たとえば、抱っこされることはロボット100にとって快行為であり、蹴られることはロボット100にとって不快行為である。肯定・否定反応は、ユーザの応対行為が、ユーザの快感情を示すものか不快感情を示すものであるかにより判別される。たとえば、抱っこされることはユーザの快感情を示す肯定反応であり、蹴られることはユーザの不快感情を示す否定反応である。
サーバ200の動作制御部222は、ロボット100の動作制御部150と協働して、ロボット100のモーションを決定する。サーバ200の動作制御部222は、マップ管理部210による行動マップ選択に基づいて、ロボット100の移動目標地点とそのための移動ルートを作成する。動作制御部222は、複数の移動ルートを作成し、その上で、いずれかの移動ルートを選択してもよい。
動作制御部222は、モーション格納部232の複数のモーションからロボット100のモーションを選択する。各モーションには状況ごとに選択確率が対応づけられている。たとえば、オーナーから快行為がなされたときには、モーションAを20%の確率で実行する、気温が30度以上となったとき、モーションBを5%の確率で実行する、といった選択方法が定義される。
行動マップに移動目標地点や移動ルートが決定され、後述の各種イベントによりモーションが選択される。
親密度管理部220は、ユーザごとの親密度を管理する。上述したように、親密度は個人データ格納部218において個人データの一部として登録される。快行為を検出したとき、親密度管理部220はそのオーナーに対する親密度をアップさせる。不快行為を検出したときには親密度はダウンする。また、長期間視認していないオーナーの親密度は徐々に低下する。
プラン設定部240は、「消費プランデータ」を設定する。消費プランデータは、バッテリー118の電力消費ペースを定義する。たとえば、1時間用の消費プランデータ(以下、「1時間プラン」のように表記する)の場合には、バッテリー118の電池残量は1時間の活動で下限値に到達する。3時間プランの場合には、3時間の活動で電池残量が下限値に到達する。3時間プランは1時間プランに比べて電力消費ペースが遅いため、活動時間は長い。その代わり、ロボット100の単位時間あたりの活動量は抑制される。消費プランデータの詳細は後述する。
活動監視部242は、ロボット100の動作履歴を記録する。動作履歴においては、モーションを選択およびロボット100の位置座標が時系列にて記録される。どのタイミングで誰に会ったか、どのような応対行為が検出されたかなどさまざまなイベントについても記録される。
(ロボット100)
ロボット100は、通信部142、データ処理部136、データ格納部148、バッテリー118および駆動機構120を含む。
通信部142は、通信機126(図5参照)に該当し、外部センサ114およびサーバ200との通信処理を担当する。データ格納部148は各種データを格納する。データ格納部148は、記憶装置124(図5参照)に該当する。データ処理部136は、通信部142により取得されたデータおよびデータ格納部148に格納されているデータに基づいて各種処理を実行する。データ処理部136は、プロセッサ122およびプロセッサ122により実行されるコンピュータプログラムに該当する。データ処理部136は、通信部142、内部センサ128、駆動機構120およびデータ格納部148のインタフェースとしても機能する。
データ格納部148は、ロボット100の各種モーションを定義するモーション格納部160を含む。
ロボット100のモーション格納部160には、サーバ200のモーション格納部232から各種モーションファイルがダウンロードされる。モーションは、モーションIDによって識別される。前輪102を収容して着座する、手106を持ち上げる、2つの前輪102を逆回転させることで、あるいは、片方の前輪102だけを回転させることでロボット100を回転行動させる、前輪102を収納した状態で前輪102を回転させることで震える、ユーザから離れるときにいったん停止して振り返る、などのさまざまなモーションを表現するために、各種アクチュエータ(駆動機構120)の動作タイミング、動作時間、動作方向などがモーションファイルにおいて時系列定義される。
データ処理部136は、認識部156、動作制御部150および電池残量監視部172を含む。
ロボット100の動作制御部150は、サーバ200の動作制御部222と協働してロボット100のモーションを決める。一部のモーションについてはサーバ200で決定し、他のモーションについてはロボット100で決定してもよい。また、ロボット100がモーションを決定するが、ロボット100の処理負荷が高いときにはサーバ200がモーションを決定するとしてもよい。サーバ200においてベースとなるモーションを決定し、ロボット100において追加のモーションを決定してもよい。モーションの決定処理をサーバ200およびロボット100においてどのように分担するかはロボットシステム300の仕様に応じて設計すればよい。
ロボット100の動作制御部150は、サーバ200の動作制御部222とともにロボット100の移動方向を決める。行動マップに基づく移動をサーバ200で決定し、障害物をよけるなどの即時的移動をロボット100の動作制御部150により決定してもよい。駆動機構120は、動作制御部150の指示にしたがって前輪102を駆動することで、ロボット100を移動目標地点に向かわせる。
ロボット100の動作制御部150は選択したモーションを駆動機構120に実行指示する。駆動機構120は、モーションファイルにしたがって、各アクチュエータを制御する。
動作制御部150は、親密度の高いユーザが近くにいるときには「抱っこ」をせがむ仕草として両方の手106をもちあげるモーションを実行することもできるし、「抱っこ」に飽きたときには左右の前輪102を収容したまま逆回転と停止を交互に繰り返すことで抱っこをいやがるモーションを表現することもできる。駆動機構120は、動作制御部150の指示にしたがって前輪102や手106、首(頭部フレーム316)を駆動することで、ロボット100にさまざまなモーションを表現させる。
電池残量監視部172は、バッテリー118の電池残量を監視する。電池残量は、0〜100%の間で変化する。詳細は後述するが、電池残量が下限値、たとえば、20%になると動作制御部222は充電器にロボット100を向かわせる。また、電池残量が上限値、たとえば、80%になると動作制御部222は充電器からの離脱を指示する。
ロボット100の認識部156(対象検出部)は、内部センサ128から得られた外部情報を解釈する。認識部156は、視覚的な認識(視覚部)、匂いの認識(嗅覚部)、音の認識(聴覚部)、触覚的な認識(触覚部)が可能である。
認識部156は、内蔵カメラ(内部センサ128)により定期的に外界を撮像し、人やペットなどの移動物体を検出する。これらの特徴はサーバ200に送信され、サーバ200の人物認識部214は移動物体の身体的特徴を抽出する。また、ユーザの匂いやユーザの声も検出する。匂いや音(声)は既知の方法にて複数種類に分類される。
ロボット100に対する強い衝撃が与えられたとき、認識部156は内蔵の加速度センサによりこれを認識し、サーバ200の応対認識部228は、近隣にいるユーザによって「乱暴行為」が働かれたと認識する。ユーザがツノ112を掴んでロボット100を持ち上げるときにも、乱暴行為と認識してもよい。ロボット100に正対した状態にあるユーザが特定音量領域および特定周波数帯域にて発声したとき、サーバ200の応対認識部228は、自らに対する「声掛け行為」がなされたと認識してもよい。また、体温程度の温度を検知したときにはユーザによる「接触行為」がなされたと認識し、接触認識した状態で上方への加速度を検知したときには「抱っこ」がなされたと認識する。ユーザがボディ104を持ち上げるときの物理的接触をセンシングしてもよいし、前輪102にかかる荷重が低下することにより抱っこを認識してもよい。
サーバ200の応対認識部228は、ロボット100に対するユーザの各種応対を認識する。各種応対行為のうち一部の典型的な応対行為には、快または不快、肯定または否定が対応づけられる。一般的には快行為となる応対行為のほとんどは肯定反応であり、不快行為となる応対行為のほとんどは否定反応となる。快・不快行為は親密度に関連し、肯定・否定反応はロボット100の行動選択に影響する。
検出・分析・判定を含む一連の認識処理は、サーバ200の認識部212だけで行ってもよいし、ロボット100の認識部156だけで行ってもよいし、双方が役割分担をしながら上記認識処理を実行してもよい。
認識部156により認識された応対行為に応じて、サーバ200の親密度管理部220はユーザに対する親密度を変化させる。原則的には、快行為を行ったユーザに対する親密度は高まり、不快行為を行ったユーザに対する親密度は低下する。
サーバ200の認識部212は、応対に応じて快・不快を判定し、マップ管理部210は「場所に対する愛着」を表現する行動マップにおいて、快・不快行為がなされた地点のz値を変化させてもよい。たとえば、リビングにおいて快行為がなされたとき、マップ管理部210はリビングに好意地点を高い確率で設定してもよい。この場合、ロボット100はリビングを好み、リビングで快行為を受けることで、ますますリビングを好む、というポジティブ・フィードバック効果が実現する。
サーバ200の人物認識部214は、外部センサ114または内部センサ128から得られた各種データから移動物体を検出し、その特徴(身体的特徴と行動的特徴)を抽出する。そして、これらの特徴に基づいて複数の移動物体をクラスタ分析する。移動物体としては、人間だけでなく、犬や猫などのペットが分析対象となることがある。
ロボット100は、定期的に画像撮影を行い、人物認識部214はそれらの画像から移動物体を認識し、移動物体の特徴を抽出する。移動物体を検出したときには、ニオイセンサや内蔵の集音マイク、温度センサ等からも身体的特徴や行動的特徴が抽出される。たとえば、画像に移動物体が写っているとき、ひげが生えている、早朝活動している、赤い服を着ている、香水の匂いがする、声が大きい、メガネをかけている、スカートを履いている、白髪である、背が高い、太っている、日焼けしている、ソファにいる、といったさまざまな特徴が抽出される。
ひげが生えている移動物体(ユーザ)は早朝に活動すること(早起き)が多く、赤い服を着ることが少ないのであれば、早起きでひげが生えていて赤い服をあまり着ないクラスタ(ユーザ)、という第1のプロファイルができる。一方、メガネをかけている移動物体はスカートを履いていることが多いが、この移動物体にはひげが生えていない場合、メガネをかけていてスカートを履いているが絶対ひげは生えていないクラスタ(ユーザ)、という第2のプロファイルができる。
以上は、簡単な設例であるが、上述の方法により、父親に対応する第1のプロファイルと母親に対応する第2のプロファイルが形成され、この家には少なくとも2人のユーザ(オーナー)がいることをロボット100は認識する。
ただし、ロボット100は第1のプロファイルが「父親」であると認識する必要はない。あくまでも、「ひげが生えていて早起きすることが多く、赤い服を着ることはめったにないクラスタ」という人物像を認識できればよい。
このようなクラスタ分析が完了している状態において、ロボット100が新たに移動物体(ユーザ)を認識したとする。
このとき、サーバ200の人物認識部214は、ロボット100から得られる画像等のセンシング情報から特徴抽出を行い、ディーブラーニング(多層型ニューラルネットワーク)により、ロボット100の近くにいる移動物体がどのクラスタに該当するかを判断する。たとえば、ひげが生えている移動物体を検出したとき、この移動物体は父親である確率が高い。この移動物体が早朝行動していれば、父親に該当することはいっそう確実である。一方、メガネをかけている移動物体を検出したときには、この移動物体は母親である可能性もある。この移動物体にひげが生えていれば、母親ではなく父親でもないので、クラスタ分析されていない新しい人物であると判定する。
特徴抽出によるクラスタの形成(クラスタ分析)と、特徴抽出にともなうクラスタへの当てはめ(ディープラーニング)は同時並行的に実行されてもよい。
移動物体(ユーザ)からどのような行為をされるかによってそのユーザに対する親密度が変化する。
ロボット100は、よく出会う人、よく触ってくる人、よく声をかけてくれる人に対して高い親密度を設定する。一方、めったに見ない人、あまり触ってこない人、乱暴な人、大声で叱る人に対する親密度は低くなる。ロボット100はセンサ(視覚、触覚、聴覚)によって検出するさまざまな外界情報にもとづいて、ユーザごとの親密度を変化させる。
実際のロボット100は行動マップにしたがって自律的に複雑な行動選択を行う。ロボット100は、寂しさ、退屈さ、好奇心などさまざまなパラメータに基づいて複数の行動マップに影響されながら行動する。ロボット100は、行動マップの影響を除外すれば、あるいは、行動マップの影響が小さい内部状態にあるときには、原則的には、親密度の高い人に近づこうとし、親密度の低い人からは離れようとする。
ロボット100の行動は親密度に応じて以下に類型化される。
(1)親密度が非常に高いクラスタ
ロボット100は、ユーザに近づき(以下、「近接行動」とよぶ)、かつ、人に好意を示す仕草としてあらかじめ定義される愛情仕草を行うことで親愛の情を強く表現する。
(2)親密度が比較的高いクラスタ
ロボット100は、近接行動のみを行う。
(3)親密度が比較的低いクラスタ
ロボット100は特段のアクションを行わない。
(4)親密度が特に低いクラスタ
ロボット100は、離脱行動を行う。
以上の制御方法によれば、ロボット100は、親密度が高いユーザを見つけるとそのユーザに近寄り、逆に親密度が低いユーザを見つけるとそのユーザから離れる。このような制御方法により、いわゆる「人見知り」を行動表現できる。また、来客(親密度が低いユーザA)が現れたとき、ロボット100は、来客から離れて家族(親密度が高いユーザB)の方に向かうこともある。この場合、ユーザBはロボット100が人見知りをして不安を感じていること、自分を頼っていること、を感じ取ることができる。このような行動表現により、ユーザBは、選ばれ、頼られることの喜び、それにともなう愛着の情を喚起される。
一方、来客であるユーザAが頻繁に訪れ、声を掛け、タッチをするとロボット100のユーザAに対する親密度は徐々に上昇し、ロボット100はユーザAに対して人見知り行動(離脱行動)をしなくなる。ユーザAも自分にロボット100が馴染んできてくれたことを感じ取ることで、ロボット100に対する愛着を抱くことができる。
なお、以上の行動選択は、常に実行されるとは限らない。たとえば、ロボット100の好奇心を示す内部パラメータが高くなっているときには、好奇心を満たす場所を求める行動マップが重視されるため、ロボット100は親密度に影響された行動を選択しない可能性もある。また、玄関に設置されている外部センサ114がユーザの帰宅を検知した場合には、ユーザのお出迎え行動を最優先で実行するかもしれない。
図7は、負荷テーブル170のデータ構造図である。
サーバ200の動作制御部222およびロボット100の動作制御部150が選択するモーションの処理負荷はさまざまである。ここでいう処理負荷とは、モーションの実行コストを示す概念であり、たとえば、1つのモーションに含まれる単位モーションの数、モーションの複雑さ、モーションを実行するために使用するアクチュエータの数、アクチュエータの動作量、モーションの実行時間、モーションを実行するための消費電力(エネルギー)などにより定義される。処理負荷の大きなモーション(以下、「高負荷モーション」とよぶ)は活発なモーションであることが多く、処理負荷の小さなモーション(以下、「低負荷モーション」とよぶ)は控えめなモーションであることが多い。
高負荷モーションは、たとえば、首を振りながら回転する、高速蛇行走行などの複雑なモーションが挙げられる。低負荷モーションは、たとえば、頷く、着座する、などの単純なモーションが挙げられる。
本実施形態においては、各モーションには1〜100の範囲で処理負荷の評価値(以下、「負荷値」とよぶ)があらかじめ設定される。負荷値は、モーションの設計者が設定してもよいし、消費電力等の実測値に基づいて設定されてもよい。
負荷テーブル170は、モーションと処理負荷(負荷値)の対応関係を定義する。負荷テーブル170は、サーバ200のモーション格納部232およびロボット100のモーション格納部160の双方に格納される。動作制御部222等は、負荷テーブル170を参照し、後述の方法によりモーションを選択する。
図7によれば、モーションID=C01のモーション(以下、「モーション(C01)」のように表記する)の負荷値、すなわち、処理負荷の大きさの評価値は「20」に設定されている。一方、モーション(C02)の負荷値は「10」である。これは、モーション(C01)は、モーション(C02)の2倍のエネルギーが必要であることを意味する。どのモーションを選択するかに応じて、単位時間当たりの電力消費量は変化する。
図8は、モーション選択テーブル180のデータ構造図である。
モーション選択テーブル180は、各種のイベントが発生したときに実行すべきモーションを定義する。ロボット100は、イベントが発生したとき、複数種類のモーションから1以上のモーションを選択する。モーション選択テーブル180は、サーバ200のモーション格納部232およびロボット100のモーション格納部160の双方に格納される。「イベント」は、ロボット100がモーションを実行する契機となる事象としてあらかじめ定義される。オーナーを視認したとき、オーナーに抱っこされたとき、蹴られたとき、所定時間以上誰も視認しないときなど、イベントの内容は任意である。
図8を参照すると、イベントJ1においては、モーション(C01)〜モーション(Cx)それぞれに選択確率が対応づけられている。たとえば、イベントJ1が発生したとき、動作制御部222はモーション(C01)を選択することはなく、モーション(C02)を0.1%の確率にて選択する。イベントJ2が発生したとき、動作制御部222はモーション(C01)を0.1%の確率で選択し、モーション(C02)を0.4%の確率にて選択する。
モーション選択テーブル180における選択確率は固定値ではない。動作制御部222は、バッテリー118の電池残量等に応じて随時選択確率を変化させる。モーション選択テーブル180の選択確率が更新されると、更新後のモーション選択テーブル180はロボット100にダウンロードされる。
たとえば、電池残量が50%以下になると、高負荷のモーション(C01)の選択確率は半減し、電池残量が30%以下になると、モーション(C01)の選択確率は更に半減するとしてもよい。一方、電池残量が50%以下になると、低負荷モーション(C04)の選択確率は1.2倍となり、電池残量が30%以下となるとその選択確率は更に1.2倍になるとしてもよい。
電池残量が少なくなるほど高負荷モーションの実行を控えることにより、ロボット100の活動時間を延ばすことができる。特段のイベントが発生していないときでも、動作制御部222は所定の選択確率にてモーションを選択してもよい。この場合にも、電池残量に応じてモーションの選択確率を変化させる。このような制御方法によれば、電池残量が大きいときには活動的であり、電池残量が少なくなるとおとなしくなるという行動特性を表現できる。
電池残量が少ないとき、動作制御部222は高負荷モーションを選択してもよい。たとえばSOCが35〜40%の間では一時的に高負荷モーション(C01)の選択確率を3倍にしてもよい。このような制御により、電池残量に影響されつつも、電池残量だけに依拠しない意外性のある行動特性を表現できる。
ある2つのモーションがあり、一方が比較的高負荷なモーションであり、他方が比較的低負荷なモーションであるとする。高負荷モーションの選択確率がY1,低負荷モーションの選択確率がY2であるとする。Y1/Y2=pとする。電池残量がある閾値以下となったときは、閾値よりも大きいときに比べてpが小さくなることが望ましい。少なくとも、統計的に見て、電池残量が少ないときはそうでないときに比べて高負荷モーションの選択確率が低下する、あるいは、低負荷モーションの選択確率が上昇すればよい。
電池残量に選択確率が影響されないイベント(以下、「優先イベント」とよぶ)が定義されてもよい。優先イベントは、オーナーの帰宅やお出かけ、泥棒や火災などの非常事態など行動の重要性が高いイベントとして定義されればよい。動作制御部222は、優先イベントが発生したときには、その優先イベントに対応づけられる1以上のモーションの選択確率を電池残量によって変化させないとしてもよいし、優先イベントが発生したときには特定のモーションを必ず実行するとしてもよい。
電池残量の絶対値に応じてモーションの選択確率を変更してもいいが、本実施形態においては消費プランデータと電池残量の差分値に応じてモーションの選択確率を変更する。次に、消費プランデータについて説明する。
図9は、消費プランデータとモーション選択の関係を示す模式図である。
プラン設定部240は、上述したように、電力消費ペースを定める消費プランデータを設定する。動作制御部222は、電池残量が下限値E1以下になると、ロボット100を充電器に移動させ充電させる。電池残量が上限値E2(>E1)以上となると、動作制御部222はロボット100を充電器から離脱させる。このように、バッテリー118の電池残量がE1〜E2の範囲内にあるときには、ロボット100は充電器を離れて活動する。いいかえれば、バッテリー118の電池残量がE1〜E2の範囲内にある期間がロボット100の活動時間である。
1時間プラン182は、充電完了後、上限値E2から下限値E1まで1時間で電力消費するプランである。3時間プラン184は、3時間で電力消費するプランである。1時間プラン182では、充電完了後、0.5時間後の電池残量はF2となり、1時間後に電池残量は下限値E2に達する。ロボット100の活動時間は1時間となる。一方、3時間プラン184では、充電完了後、0.5時間後の電池残量はF3(>F2)となり、3時間後に電池残量は下限値E2に達する。ロボット100の活動時間は3時間となる。
消費プランにおいて、電力消費ペースは一定である必要はない。たとえば、最初に電力消費ペースを低くしておき、途中で電力消費ペースを上昇させてもよい。消費プランの選択基準については後述する。
電池残量グラフ186は、実際の電力消費ペースを示す。1時間プラン182が採用されている場合、電池残量グラフ186は1時間プラン182に比べると電力消費ペースが緩やかである。この場合には、動作制御部222は高負荷モーションの選択確率を上昇させる。たとえば、充電完了後、0.5時間後における電池残量の予定値F2と実際の電池残量値F1の差分を計算し、この差分値が所定の閾値以上にあるとき、動作制御部222は高負荷モーション(C01)の選択確率を2倍に変更する。モーション(C01)に限らず、高負荷モーションの選択確率を上昇させ、低負荷モーションの選択確率を低下させればよい。このような設定変更により、高負荷モーションが選ばれやすくなり、低負荷モーションが選ばれにくくなるため、1時間プラン182と電池残量グラフ186の差分を小さくできる。すなわち、ロボット100に活発な行動を促すことで、1時間プラン182に沿った電力消費を実現する。
3時間プラン184が採用されている場合、電池残量グラフ186は3時間プラン184に比べると電力消費ペースが速すぎる。この場合には、動作制御部222は高負荷モーションの選択確率を低下させる。充電完了後、0.5時間後における電池残量の予定値F2と実際の電池残量値F3の差分を計算し、F3−F2の差分をなくすために、動作制御部222は高負荷モーション(C01)の選択確率を半減させてもよい。モーション(C01)に限らず、高負荷モーションの選択確率を低下させ、低負荷モーションの選択確率を上昇させればよい。このような設定変更を行うことにより、高負荷モーションが選ばれにくくなり、低負荷モーションは選ばれやすくなる。ロボット100の活動量を抑制することで、3時間プラン184に沿った電力消費を実現する。
以上の制御方法によれば、1時間プラン182が設定されているときにはロボット100は活動時間が短い代わりに活発な行動を選択しやすく、3時間プラン184が設定されているときにはロボット100はおとなしくなるが活動時間は長くなる。したがって、消費プランデータの選択に応じて、ロボット100の活動性をコントロールできる。また、消費プランデータによってロボット100の消費電力を管理できるメリットもある。
図10は、消費プラン選択テーブル188の模式図である。
活動監視部242は、ロボット100の動作履歴を記録する。そして、単位時間あたりの活動量を計算する。たとえば、ある単位時間においてモーション(C01)、モーション(C02)およびモーション(C03)が実行されたなら、この時間における負荷値の合計は33(=20+10+3:図7参照)である。消費プラン選択テーブル188は、負荷値の合計値を「活動量」と定義し、活動量と消費プランデータの対応を設定する。
消費プラン選択テーブル188によれば、活動量が200以上のときには、プラン設定部240は消費プラン(D01)を選択し、活動量が160以上200未満のときには、プラン設定部240は消費プラン(D02)を選択する。たとえば、15時10分に充電完了したとき、プラン設定部240は、15時10分から16時10分までの活動量の平均値を過去の動作履歴から求める。そして、過去10日間の15時10分から16時10分における1時間あたりの平均活動量が155であれば、プラン設定部240は消費プラン(D03)を選択する。
プラン設定部240は、活動量の多い時間帯は、活動量が多くなる代わりに活動時間が短い消費プランデータを設定し、活動量が少ない時間帯は、活動量が少なくなる代わりに活動時間が長い消費プランデータを設定する。図10の場合、消費プラン(D01)はもっとも活動時間が短く、消費プラン(D07)はもっとも活動時間が長い。
活動時間の短い消費プランが選ばれるとき、ロボット100は活発に行動する。また、ロボット100はオーナーとのインタラクションが多いときほど活動量が多くなりやすい。これは、オーナーの応対行動に対応してさまざまなイベントが設定されるためである。イベント発生頻度が高いほど、モーション選択回数が多くなる。特に、ロボット100への接触など積極的なインタラクションに対しては、ロボット100は多様に反応する。
オーナーがいるとき、特に、たくさんのオーナーがいるときには活発に活動し、活動量の多くなる時間帯にはそれに対応する消費プランデータが選択される。また、活動量が少ない時間帯には電力消費ペースがゆるやかな消費プランデータが選択される。誰もロボット100を見ていない時間帯や、ロボット100に積極的に関わらない時間帯にはロボット100はおとなしくなり、ロボット100が注目を浴びる時間帯にはロボット100は活発に行動してオーナーたちを楽しませる。
注目されない時間帯においてロボット100が活動を抑制することは、オーナーの邪魔をしないという気配り行動ともなるし、節電にも寄与する。ロボット100は、オーナーの視認、接触、声かけなどのイベントに対応してさまざまなモーションを選択する。ロボット100の認識部156は、オーナーやペットなどの移動物体を検出したとき、活発なモーション、いいかえれば、高負荷モーションの選択確率を上昇させ、低負荷モーションの選択確率を低下させる。少なくとも2つのモーションのうち、低負荷モーションの選択確率に対する高負荷モーションの選択確率の比率が高くなるように設定変更がなされればよい。
活動量は、各モーションの負荷値から算出してもよいし、単位時間あたりの消費電力量から算出してもよい。
消費プラン選択テーブル188では、活動量と消費プランを対応づけているが、時間帯と消費プランを対応づけてもよい。このような設定方法によれば、たとえば、午前中はおとなしく、夜は活発、のような時間帯による活動量を消費プラン選択テーブル188によってコントロールできる。また、動作制御部222は、夜中は必ず充電するなど充電のタイミングを設定してもよい。
図11は、処理負荷と選択確率の関係を示す模式図である。
非特許文献1は、ウェアラブルセンサにより人間の活動を計測した結果、人間の行動選択には統計的な規則性があることを明らかにしている(非特許文献1のP27参照)。人間の1分間あたりの身体運動の回数を計測したところ、50回/分のような動きの穏やかな時間が多く、激しい動きを示す時間は非常に少ない。そして、動きの激しさとそのような動きを選択する確率の間には安定的な関係が見出されるという。人間は、自分の意思や思いで自由に自分の行動を決めていると考えているが、その行動選択の集積には不思議な規則性がある。このような規則性にしたがう行動特性こそが「生物的な行動特性」といえるのかもしれない。
本実施形態におけるロボット100は、このような規則性をモーション選択に応用することで、いっそうその行動特性を「生物的」なものにしている。
図7は、縦軸は対数軸であり、選択確率の累積確率を示す。横軸は、各モーションの処理負荷である。基本活動グラフ190は、モーションとその選択確率(累積確率)の関係を示す。基本活動グラフ190によれば、1日において、処理負荷G1以上のモーションが実行される時間帯は、1/8であることを示す。いいかえれば、1日の7/8においては処理負荷G1未満のモーションしか選択されない。端的に言えば、高負荷モーションは選択されにくく、低負荷モーションは選択されやすい。
上述したように、動作制御部222は、さまざまなイベントに対応してロボット100のモーションを選択する。複数のモーションのいずれを選択するかは、モーション選択テーブル180にしたがって決まる。モーション選択テーブル180の選択確率は固定値ではない。動作制御部222は、電池残量に応じて、より厳密には、電池残量と消費プランの比較結果にしたがってモーション選択テーブル180の選択確率を適宜変更する。実際の電池残量と消費プランにおける予定値が乖離したとき、動作制御部222はこの乖離を解消すべく選択確率を変更する。更に、その変更方法は図11に示す基本活動グラフ190の規則性にしたがう。
たとえば、消費プランによる予定値よりも電池残量に余裕があるとき、動作制御部222は高負荷モーション、いいかえれば、活発なモーションの選択確率を高める。このとき、動作制御部222は、基本活動グラフ190から高活動グラフ192に選択変更し、高活動グラフ192に対応するように各モーションの選択確率を変更する。高活動グラフ192も直線性が維持されるため、生物的で自然な行動特性を維持できる。高活動グラフ192においては、処理負荷G2(>G1)以上のモーションが実行される時間帯が1日の1/8となる。基本活動グラフ190に比べて活動量が多くなる。
一方、消費プランによる予定値よりも電池残量が少ないとき、動作制御部222は高負荷モーションの選択確率を減少させる。動作制御部222は、基本活動グラフ190から低活動グラフ194に設定変更し、低活動グラフ194に対応するように各モーションの選択確率を変更する。低活動グラフ194においては、処理負荷G3(<G1)以上のモーションが実行される時間帯が1日の1/8となる。基本活動グラフ190に比べて活動量は少なくなる。
活動監視部242は、動作履歴を参照して、どのイベントが1日あたり何回発生しているかを計数する。各イベントの発生確率と、そのイベントに対応づけられる各モーションの選択確率に基づき、各モーションの1日あたりの選択回数をシミュレーション計算する。たとえば、イベントAが1日あたり平均10回発生し、イベントBが1日あたり平均7回発生するとする。イベントAに対応するモーションXの選択確率が5%、イベントBに対応するモーションXの選択確率が10%であるとする。この場合には、モーションXの1日あたりの選択回数は1.2(=10×0.05+7×0.10)回となる。各モーションについて選択回数を同様にして計算する。
次に、各モーションの選択回数と基本活動グラフ190を比較し、基本活動グラフ190と一致する選択確率配分となるように各モーションの選択確率をモンテカルロ法など既知の最適化法により求める。同様にして、高活動グラフ192および低活動グラフ194に対応する選択確率配分を設定する。あらかじめ、基本活動グラフ190,高活動グラフ192および低活動グラフ194に対応するモーション群の選択確率セットをあらかじめ用意しておき、消費プランと電池残量を比較しながら基本活動グラフ190,高活動グラフ192および低活動グラフ194を選択すればよい。
以上の制御方法によれば、図11に示す生物的規則性に基づくモーション選択と、消費プランに基づくモーション選択を両立させることができる。
図12は、充電中に優先イベントが発生したときの処理過程を示すフローチャートである。
充電中でなければ(S10のN)、以降の処理はスキップされる。充電中であって(S10のY)、充電が完了したとき(S12のY)、動作制御部222はロボット100を充電器から離脱させる(S14)。充電が完了するのは、電池残量が上限値E2(図9参照)を超えたときである。
充電未了のときに(S12のN)、優先イベントが発生した場合には(S16のY)、ロボット100は優先イベントに対応づけられるモーションを選択する(S18)。一方、イベントが発生していないときや、発生したイベントが優先イベントでないときには(S16のN)、充電を続ける。
優先イベントは、上述したように、オーナーの帰宅やお出かけなどの重要なイベントである。玄関に設置される外部センサ114がその監視エリア内に人間を検知したとき、ロボット100は玄関に移動してお出迎えをする。いったん充電モードに入るとロボット100は動かないが、オーナーの帰宅といった重要な事象が発生したときは、充電未了であってもお迎えの行動を実行する。
優先イベントが発生したときには、充電中であるか否か、電池残量が多いか少ないかに関わらず、動作制御部222は優先イベントに対応するモーション選択を行う。電池残量に過度に規制されることなく、優先イベントにはきちんと対応する行動特性が実現される。
帰宅を検出した場合でも、検出された人の親密度に応じて優先イベントとするか否かを判断してもよい。たとえば、親密度が所定の閾値以上のオーナーが帰宅したときには、動作制御部222はこれを優先イベントとみなしてお出迎え行動を指示する。一方、親密度が所定の閾値未満のオーナーが帰宅したときには優先イベントとはみなさないとしてもよい。
以上、実施形態に基づいてロボット100およびロボット100を含むロボットシステム300について説明した。
1以上の行動マップによりパターン化できず予測しづらい、かつ、生物的な行動選択を表現している。
生物と同様、ロボット100は行動マップだけではなく各種のイベントによっても行動が変化する。本実施形態によれば、電池残量が多いときにはロボット100は活発に活動する。一方、電池残量が少なくなるとロボット100はおとなしくなる。このため、電池残量がロボット100の活力の源になっている、とうい行動表現が可能となる。充電という機械的処理に睡眠や食事に近いイメージを与えることができる。
消費プランデータに応じてロボット100の活動量をコントロールすることにより、活動すべき時間帯とおとなしくすべき時間帯をコントロールできる。これはロボット100の節電にも寄与する。
人間が動くためには睡眠や食事は必要である。人間は、睡眠中や食事中であっても、あるいは睡眠不足で疲れているときであっても、重要な事象が発生すれば行動する。ロボット100が動くためには充電は重要である。本実施形態におけるロボット100も、充電中であっても、あるいは、電池残量がわずかであっても優先イベントが発生したときには行動する。このような制御により、電池残量に規制されすぎない行動に融通性のあるロボット100とすることができる。
オーナーとインタラクションをするとき、ロボット100はさまざまなモーションを頻繁に実行するため電力消費も大きくなる。電力消費ペースが消費プランよりも速くなるとロボット100は高負荷モーションを選びにくくなる。このため、人と一緒にいるときには活発だが、そのあと人がいなくなるとロボット100は急速におとなしくなる。人と遊ぶことは嬉しいけれども遊びすぎると疲れてしまう、という行動表現が可能となる。
活動監視部242がロボット100の動作履歴を記録することは、ロボット100の生活パターンを見る上でも有効である。たとえば、夕方はおとなしい、土曜日は活発に動くなどの情報を見ることにより、ロボット100を通して人間の生活パターンを再確認できるメリットがある。
なお、本発明は上記実施形態や変形例に限定されるものではなく、要旨を逸脱しない範囲で構成要素を変形して具体化することができる。上記実施形態や変形例に開示されている複数の構成要素を適宜組み合わせることにより種々の発明を形成してもよい。また、上記実施形態や変形例に示される全構成要素からいくつかの構成要素を削除してもよい。
1つのロボット100と1つのサーバ200、複数の外部センサ114によりロボットシステム300が構成されるとして説明したが、ロボット100の機能の一部はサーバ200により実現されてもよいし、サーバ200の機能の一部または全部がロボット100に割り当てられてもよい。1つのサーバ200が複数のロボット100をコントロールしてもよいし、複数のサーバ200が協働して1以上のロボット100をコントロールしてもよい。
ロボット100やサーバ200以外の第3の装置が、機能の一部を担ってもよい。図6において説明したロボット100の各機能とサーバ200の各機能の集合体は大局的には1つの「ロボット」として把握することも可能である。1つまたは複数のハードウェアに対して、本発明を実現するために必要な複数の機能をどのように配分するかは、各ハードウェアの処理能力やロボットシステム300に求められる仕様等に鑑みて決定されればよい。
上述したように、「狭義におけるロボット」とはサーバ200を含まないロボット100のことであるが、「広義におけるロボット」はロボットシステム300のことである。サーバ200の機能の多くは、将来的にはロボット100に統合されていく可能性も考えられる。
本実施形態においては、負荷テーブル170に基づいてロボット100のモーションを選択した。このほかにも、電池残量が所定範囲内にあるときに限り特定のモーションを選択するとしてもよいし、逆に特定のモーションを選択対象外としてもよい。
モーション選択アルゴリズムの変化方法としては、モーションを構成する単位モーションの一部を置換・省略することでモーションの処理負荷を変化させてもよい。本実施形態においては、モーションの処理負荷は固定であり、モーションの選択確率を変化させることで電池残量等に対応するモーション選択を行っている。モーションの選択確率を固定したままモーションの処理負荷を変更してもよい。たとえば、単位モーションの追加や省略によりモーションの処理負荷を変化させればよい。モーションのインターバルを調整してもよいし、アクチュエータの速度を調整してもよい。アクチュエータの速度を落とせば処理負荷を低減できることもある。
このような制御方法によって、電池残量が少なくなるほど低負荷モーションが実行されやすくなり、高負荷モーションが実行されにくくなるという行動特性を実現できる。
消費プランに比べて電池残量が少なくなるとロボット100はおとなしくなるが、逆に、電池残量が少なくなったときでもロボット100の活動量を一時的に上昇させてもよい。このように、過度に電池残量に規制されることなく、ロボット100の行動の意外性を確保してもよい。
消費プランは、活動量や時間帯のほか、季節、休日か平日、気温、天候等に基づいて変更してもよい。
人がいないときには、ロボット100は電池残量が下限値E1に達していなくても充電をしてもよい。人が見ていないときには積極的に充電することで、活動時間と人といる時間が重なるように調整してもよい。
基本活動グラフ190は、ロボット100ごとに設定されてもよい。にぎやかな家庭にいるロボット100は高活動グラフ192が選択されやすく、静かな家庭ではロボット100は低活動グラフ194に設定されやすくなるとしてもよい。ロボット100ごとに基本活動グラフ190を変化させることで、ロボット100の行動特性に個性をもたせることができる。
動作履歴を活用することにより、ロボット100の将来的な活動量を予測できる。たとえば、電池残量が消費プランに比べて少なくなっていても、イベントが発生しにくい時間帯に入っているときには活動量を抑制しなくても消費プランを守ることができる可能性がある。このように、動作制御部222は電池残量と消費プランの将来的な予測値に基づいて、モーション選択をしてもよい。
ロボット100は、オーナーに呼びかけられたとき、電池残量が閾値E3以上であればオーナーのもとに向かう。電池残量が閾値E3未満だが閾値E4(<E3)以上であれば1回目の呼びかけには反応しないが2回目の呼びかけに反応する、としてもよい。電池残量が閾値E4未満だが閾値E5(<E4)以上であれば大声で呼びかけられた場合に限り反応する、としてもよい。このように、電池残量が少なくなると行動が鈍くなるような行動特性も考えられる。オーナーとの親密度に応じて、閾値E3、E4、E5を設定してもよい。
同様に、電池残量が少なくなるほど、アクチュエータの動作量を下げてもよいし、行動マップに対する感度が低下するとしてもよい。
本実施形態においては、前輪102および後輪103で動くロボット100を対象として説明したが、本発明は二足歩行ロボットや四足歩行ロボットなどの歩行型のロボットに対しても応用可能である。特に、アクチュエータの多い多様な動きをするロボットに対しては本発明を適用する価値が特に高い。
[動作モード]
図13は、変形例1におけるロボットシステム300の機能ブロック図である。
変形例1のロボットシステム300において、データ処理部136は、動作制御部150、認識部156および電池残量監視部172に加えて、眼生成部250、眼表示部252およびモード選択部254を含む。眼生成部250は、眼画像(後述)を生成する。眼表示部252は、目110に眼画像を表示させる。モード選択部254は、ロボット100の「動作モード」を選択する。動作モードについては後述する。また、駆動機構120は、各種のアクチュエータ256を含む。ここでいうアクチュエータ256とは、図2等に関連して説明した各種アクチュエータの総称である。動作制御部150は、アクチュエータ256に動作信号を送信し、アクチュエータ256を駆動する。動作信号により、アクチュエータ256の回転または移動の方向、速度、量が指定される。
図14は、眼画像174の外観図である。
ロボット100の目110は、眼画像174を表示させるディスプレイとして形成される。眼生成部250は、瞳画像164と周縁画像168を含む眼画像174を生成する。眼生成部250は、また、眼画像174を動画表示させる。具体的には、瞳画像164を動かすことでロボット100の視線を表現する。また、所定のタイミングで瞬き動作を実行する。眼生成部250は、さまざまな動作パターンにしたがって眼画像174の多様な動きを表現する。眼表示部252は、目110のモニタに生成された眼画像174を表示させる。モニタは、人間の眼球と同様、曲面形状を有することが望ましい。
瞳画像164は、瞳孔領域258と角膜領域162を含む。また、瞳画像164には、外光の映り込みを表現するためのキャッチライト166も表示される。眼画像174のキャッチライト166は、外光の反射によって輝いているのではなく、眼生成部250により高輝度領域として表現される画像領域である。
眼生成部250は、モニタにおいて、瞳画像164を上下左右に移動させることができる。ロボット100の認識部156が移動物体を認識したときには、眼生成部250は瞳画像164を移動物体の存在方向に向けるような動作パターン(動画データ)を生成する。眼表示部252は、この動作パターンにしたがって眼画像174の表示を変化させることにより、ロボット100の「注視」を表現する。
眼生成部250は、瞳画像164を周縁画像168に対して相対的に動かすだけではなく、瞼(まぶた)画像を表示させることにより、半眼や閉眼を表現することもできる。眼生成部250は、瞼画像により閉眼表示することで、ロボット100が眠っている様子を表現してもよいし、負荷テーブル170の4分の3を瞼画像で覆ったあと、瞼画像を揺らすことでロボット100が半睡状態、つまりウトウトしている状態にあることを表現してもよい。
図15は、動作モードの遷移図である。
動作モードは、「通常モードM1」と「省電力モードM2」に大別される。省電力モードM2は、更に、「観察モードM21(第1モード)」と「睡眠モードM22(第2モード)」を含む。省電力モードM2は、通常モードM1よりも消費電力を抑制する動作モードである。このため、ロボット100は、通常モードM1のときよりも省電力モードM2のときの方が、活動量が抑制されおとなしくなる。動作制御部150は、省電力モードM2においてはアクチュエータ256への供給電力を通常モードM1のときよりも制限してもよい。動作制御部150は、省電力モードM2においては制御対象となるアクチュエータ256の種類または数を制限してもよいし、単位モーションをつなぐインターバル(上述)を通常モードM1のときよりも長く設定してもよい。動作制御部150は、負荷テーブル170を参照し、処理負荷(負荷値)が所定値以上のモーション、いいかえれば、消費電力の大きなモーションを選択対象外としてもよい。動作制御部150は、省電力モードM2においては、ロボット100の移動速度に制限を設けてもよい。
以下においては、通常モードM1においてロボット100は移動可能であるが、省電力モードM2においてロボット100は移動不可能であるとして説明する。
省電力モードM2のうち、観察モードM21においては、眼生成部250は眼画像174を変化させることができる。また、観察モードM21において、動作制御部150は頭部フレーム316(首)を駆動できる。しかし、動作制御部150は前輪102を駆動してロボット100を走行させることはできない。観察モードM21においては、ロボット100は動かないものの、人や他のロボット100、ペットなどの移動物体を注視するような行動態様、いいかえれば、動かないけれども周辺を監視・観察しているかのような行動態様となる。観察モードM21は「覚醒しているが休んでいる状態」に対応する。
省電力モードM2のうち、睡眠モードM22においては、眼生成部250はまぶたを閉じて眠っているかのような眼画像174を表示させる。動作制御部150は、すべてのアクチュエータ256を稼働停止させる。後述するように、睡眠モードM22においてはプロセッサ122への電力供給を停止することもあるが、目110のモニタへの電力供給は維持される。睡眠モードM22は「眠っている状態」に対応する。
変形例1の省電力モードM2においては、ロボット100は移動停止となるため、通常モードM1に比べて消費電力が抑制される。睡眠モードM22においてはすべてのアクチュエータ256が稼働停止させるため、観察モードM21よりも更に消費電力が抑制される。変形例1においては、動作制御部150は睡眠モードM22においてプロセッサ122をサスペンドさせる。具体的には、プロセッサ122のクロックを停止させるだけでなく、プロセッサ122への給電も停止する。プロセッサ122の実行状態はメモリに保存され、メモリ(記憶装置124)への給電は維持される。ここでいうサスペンドは、一般的なパーソナルコンピュータにおいて実行されているサスペンド方法と同様である。プロセッサ122からは独立した制御回路によりサスペンドとサスペンドからの復帰が実現されてもよい。
このような制御方法によれば、ロボット100が活動的な状態(通常モードM1)から、おとなしい状態(観察モードM21)になり、更に、睡眠中であるかのような状態(睡眠モードM22)に至ったとき、ハードウェア(電子回路)の活動レベルも連動して下げることができる。いいかえれば、ハードウェアの活動レベルを下げるときに、ロボット100の意識レベルが落ちていくかのような行動表現を実現できる。別の変形例では、観察モードM21から睡眠モードM22に至る間に、ウトウトしている状態を表現するモーションをおこなってもよい。
通常モードM1において「第1遷移条件」が成立したとき、モード選択部254は通常モードM1から観察モードM21に動作モードを変更する(S1)。第1遷移条件は任意に定義されればよい。たとえば、単位時間あたりの消費電力量が所定の閾値以上となったとき、バッテリー118(二次電池)の電池残量が所定の閾値以下となったとき、あるいは、認識部156がカメラ等のセンサ機器により周辺に移動物体(人、ペット、他のロボット100)を検出していない状態が第1時間T1以上継続したとき、第1遷移条件が成立するとしてもよい。
モード選択部254は、観察モードM21において「第2遷移条件」が成立したとき、観察モードM21から睡眠モードM22に動作モードを変更する(S2)。第2遷移条件も任意に定義されればよい。たとえば、バッテリー118(二次電池)の電池残量が所定の閾値以下となったとき、観察モードM21に状態遷移してから所定時間以上が経過したとき、認識部156が移動物体を検出していない状態が第2時間T2(>T1)以上続いたとき、第2遷移条件が成立するとしてもよい。
省電力モードM2において「復帰イベント」が発生したとき、モード選択部254は省電力モードM2から通常モードM1に動作モードを変更する(S3)。復帰イベントは、「第1復帰イベント」と「第2復帰イベント」の2種類が定義される。第1復帰イベントが発生したときには、観察モードM21および睡眠モードM22のいずれの場合であっても、モード選択部254は省電力モードM2から通常モードM1に復帰させる。観察モードM21のときに第2復帰イベントが発生したときには、モード選択部254は省電力モードM2(観察モードM21)から通常モードM1に復帰させる。しかし、睡眠モードM22のときに第2復帰イベントが発生しても、モード選択部254は動作モードを変更しない。
第1復帰イベントは、「睡眠中(睡眠モードM22に対応)」のロボット100を「覚醒(通常モードM1に対応)」させる事象として定義される。具体的には、第1音量V1以上の音声の検出、ロボット100に対するタッチの検出がなされたとき、第1復帰イベントが発生したとみなしてもよい。
第2復帰イベントは「観察中(観察モードM21に対応)」のロボット100を通常状態(通常モードM1に対応)に復帰させるが、「睡眠中(睡眠モードM22に対応)」のロボット100を覚醒させるほどではない事象として定義される。すなわち、第2復帰イベントは、第1復帰イベントに比べてロボット100の「感覚」に対する影響の小さな事象として定義されることが望ましい。具体的には、第2音量V2(≦V1)以上であって第1音量V1未満の音声の検出、認識部156による移動物体の検出がなされたとき、第2復帰イベントが発生したとみなしてもよい。また、視覚、聴覚、触覚以外にも、ニオイや温度変化の検知を復帰イベントとして定義してもよい。いずれにしても、復帰イベントとは、ロボット100の外部環境にて発生し、かつ、ロボット100の視覚・聴覚・触覚・嗅覚に対応するセンサが検出可能な事象であればよい。
複数種類の復帰イベントそれぞれに対して、専用のモーション(以下、「起動モーション」とよぶ)が対応づけられる。睡眠モードM22において第1復帰イベントX1が発生したとき、動作制御部150は第1復帰イベントX1に対応する起動モーションY1を実行する。たとえば、「背後から声をかけられる」という第1復帰イベントが発生したとき、動作制御部150はロボット100の前輪102を上下動させる起動モーションを実行することにより、「いきなり声をかけられてびっくりした」という行動表現をしてもよい。第2復帰イベントについても同様に各種の起動モーションが定義される。
起動モーションとしては、このほかにも、着座状態から前輪102を出すことで起立する、ボディ104を震わせる、頭部フレーム316またはボディ104を回転させて復帰イベントの発生した方向に向き直る、眼画像174を瞬きさせる、手106を震わせる、などが考えられる。
復帰イベントと起動モーションは一対一にて固定的に対応づけられる必要はない。図8のモーション選択テーブル180に示したように、1つの復帰イベントに対して複数の起動モーションを対応づけ、動作制御部150は選択確率にしたがって起動モーションを選択してもよい。復帰イベントと起動モーションの多様化により、たとえば、周りを観察しているときに声をかけられたので近づく、眠っていたときに大声で起こされたので驚いて逃げる、観察モードM21のときに声をかけられたのに気づかないふりをする、といった多様な行動表現が可能となる。
[動作制約]
バッテリー118の電池残量が基準値以下となると、動作制御部150は各部のアクチュエータ256の動作を制約する(以下、「動作制約」とよぶ)。動作制約とは、具体的には、アクチュエータ256の動作範囲(たとえば、回転可能角度)および動作速度に制限値を設定することであってもよい。複数のアクチュエータ256のうち、動作可能なアクチュエータ256の数または種類を制限することであってもよいし、単位モーションをつなぐインターバルを通常時よりも長くすることであってもよい。アクチュエータ256の動作量、いいかえれば、アクチュエータ256のアウトプットを制約してもよいし、アクチュエータ256に供給される電力、いいかえれば、アクチュエータ256のインプットを制約してもよい。なお、動作制約は、通常モードM1から省電力モードM2(観察モードM21)に動作モードを変更することであってもよい。
動作制御部150は、電池残量が所定の値、たとえば30%未満となったとき、一定時間あたりにアクチュエータ256に供給する電力の総量を下げてもよい。動作制御部150は、電池残量が30%未満になったときには、消費プランデータを1時間プラン182から3時間プラン184に変更することにより電力消費を抑制し、これにともなってロボット100の動きの沈静化を表現してもよい。動作制御部150は、アクチュエータごとに動作制限を設けてもよい。たとえば、首を曲げるときには外皮314の変形にともなう抗力が発生するため、首を曲げる角度が大きくなるにつれて抗力が増し大きな消費電力が必要となる。経験的に、ある角度を境界として抗力が急激に増大する。この境界を稼働角度の閾値として、動作制約時には、この閾値以上、首を曲げないように制御することで、消費電力を抑制してもよい。
動作制御部150は、電池残量の単位時間あたりの消費量が所定の閾値以上であるとき、アクチュエータ256を動作制約してもよい。このような制御方法によれば、短時間に激しく動いたため、その反動で疲れておとなしくなったかのような行動表現が可能となる。このほかにも、単位時間あたりの全アクチュエータ256の動作時間が所定の閾値を越えたとき、単位時間あたりのロボット100の移動距離が所定の閾値を越えたとき、あるいは、アクチュエータ256への通電時間が所定の閾値を越えたときに、同様の理由により1以上のアクチュエータ256を動作制約してもよい。
動作制御部150は、電池残量が低下するほど、アクチュエータ256の動作をより強く動作制約してもよい。たとえば、充電率(電池残量)が50%未満になるとき動作制御部150はあるアクチュエータ256の回転可能角度を180度から150度に制約し、30%未満になったときには100度に制約してもよい。このような制約をかけることにより、電池残量が低下するほどロボット100の動きの「キレ」がなくなるという行動表現が可能となる。
動作制約に際しては、動作制御部150は消費電力の大きなアクチュエータから優先的に動作制約してもよい。前輪102を動かすアクチュエータ379は、首を動かすアクチュエータ326よりも消費電力が大きい。一方、手106を動かすアクチュエータ(図示せず)は、アクチュエータ326よりも消費電力が少ない。動作制御部150は、電池残量が低下するとき、まず、アクチュエータ379を動作制約または停止し、その後は、アクチュエータ326を動作制約または停止させることにより、段階的な動作制約を実現してもよい。
動作制御部150は、電池残量が所定の値より少なくなったとき、各アクチュエータ256に供給する電力の総量(上限値)を下げる。動作制御部150は決められた電力を各アクチュエータ256に分配することで、総量規制をかけた状態で各アクチュエータ256を制御する。
ロボット100は、複数のアクチュエータ256を制御すること、ロボット100の感情や意識を行動表現する。ある種の感情は、身振り手振りの大きさや速度を変えることで表現できる。たとえば、「喜び」を、「ぐるぐる周る」「頭を左右に揺らす」「手振り」によって日常的に行動表現しているのなら、「ぐるぐる周る」「頭を左右に揺らす」が「手振り」は無くても、喜びを伝えることができるかもしれない。つまり、動きを構成する動きの一部が普段と違っていても、また欠けていても、感情表現できる。
「喜び」は、「ぐるぐる回る」動作と、「手を振る」動作と、「首部分を左右に揺らす」動作を同時実行することで表現される。電池残量が少なくなったとき、手を駆動させるアクチュエータへの電力供給を止め、「手を振る」動作を無くし、「ぐるぐる回る」動作と、「首部分を左右に揺らす」動作だけであっても、「喜び」を表現できる。電池残量が更に少なくなったときには、車輪を駆動させるアクチュエータへの電力供給も停止し、「首部分を左右に揺らす」動作だけで喜びを表現してもよい。電池残量が更に少なくなったとき、「手を振る」動作や、瞳だけで喜びを表現してもよい。
動作制御部150は、電力の総量(上限値)の範囲内において、各アクチュエータに電力を配分しつつ、感情を表現する。「喜び」や「不満」「不安」など各種の感情にモーションおよびモーションの組み合わせと対応づけてもよい。「喜び」に対応するモーションを実行する上で、重要なアクチュエータと、それほど重要ではないアクチュエータがある。たとえば、手を動かすアクチュエータよりも首を動かすアクチュエータの方が重要かもしれない。動作制御部150は、単位時間あたりの電力消費量が閾値を超えている場合や電池残量が閾値以下となっている場合には、「喜び」を表現するときに重要度の低いアクチュエータ、たとえば、手を動かすアクチュエータへの電力供給を停止してもよい。
また、感情表現と重要なアクチュエータを関連付けず、単にアクチュエータに優先度を設けてもよい。たとえば、首はロボット100が感情表現をする上で重要なパーツであるから、動作制御部150は首を動かすアクチュエータ326については電力供給を規制しないとしてもよい。このように、消費電力の少ないアクチュエータを優先する以外にも、感情表現において重要度の高いアクチュエータを優先してもよい。
活動監視部242は、各アクチュエータの稼動状態、たとえば、通電時間、消費電力等を測定することで、ロボットの「活動量」を指標化してもよい。動作制御部150は、ロボット100の単位期間あたりの活動量(すべてのアクチュエータの総活動量)が所定量を超えたとき、ロボット100の活動量を一時的に抑制してもよい。具体的には、優先度の低いアクチュエータ、消費電力が大きなアクチュエータへの電力供給を停止または減少させてもよい。
[充電動作]
図16は、充電ステーション260の外観図である。
充電ステーション260は、ロボット100の充電器であり、ロボット100を収容する内部スペースを有する。ロボット100が充電ステーション260(充電器)に進入して所定の姿勢となることにより、充電が開始される。
充電ステーション260は、テーブル270、テーブル270の上面と床面Fとを滑らかに架け渡すスロープ262、およびテーブル270の周囲に設けられたフレーム264を備える。テーブル270の中央には、ロボット100が充電ステーション260へ進入する際に目印とするマーカMが付されている。マーカMは、テーブル270と異なる色で着色された円形状の領域である。
フレーム264は、テーブル270の周囲を取り囲む装飾部材266を含む。装飾部材266は、木の葉をモチーフとした装飾片を多数重ねて得られ、垣根をイメージさせるものである。テーブル270において中心マーカMからややオフセットした位置には、給電用の接続端子268が設けられる。
ロボット100の電池残量監視部172は、バッテリー118の電池残量を監視する。電池残量(充電量)が所定の閾値以下、たとえば、充電率が30%以下となると、ロボット100は、充電ステーション260に向かう。ロボット100は、充電ステーション260が内蔵する通信機272から無線信号を受信する。ロボット100は、無線信号にしたがって、充電ステーション260を移動目標地点として設定する。
ロボット100は、充電ステーション260への進入に際してマーカMを撮像し、マーカMを目印としてその進行方向を制御する。充電ステーション260への進入後、接続端子268は、ロボット100の底部に設けられた接続端子と接続される。それにより、ロボット100と充電ステーション260の互いの充電回路が導通状態となる。
しかし、充電ステーション260の入口に障害物が置かれている、充電ステーション260が横倒しになっている、あるいは、接続端子268の故障等のさまざまな理由により、ロボット100が充電ステーション260と正常に接続できない状況も想定される。動作制御部150は充電ステーション260を移動目標地点に設定した上で充電ステーション260との接続を試行する。この試行が所定回数(1回以上の任意の数)だけ失敗したとき、第1遷移条件が成立する。すなわち、所定回数の接続試行に失敗したとき、モード選択部254は通常モードM1から省電力モードM2に動作モードを変更する。このような制御方法によれば、充電ステーション260との接続試行を失敗し続けることによる電力浪費を防ぐことができる。
一方、ロボット100が移動物体、特に、ユーザを検出したときには、省電力モードM2に変更することなく、ロボット100は充電ステーション260との接続試行を続行してもよい。これは、充電ステーション260の前の障害物を取り除くなど、ユーザがロボット100の充電試行を助けてくれるかもしれないためである。
ロボット100が充電ステーション260に向かう経路上において認識部156が障害物を検出したときには、接続試行の失敗が実際には発生していなくても、モード選択部254は第1遷移条件を成立させてもよい。たとえば、リビングに充電ステーション260が設置されているとき、ロボット100がリビングとは異なる部屋に存在し、かつ、この部屋とリビングの間の扉が閉まっているとき、ロボット100は充電ステーション260に接続できない。この場合には、扉が「障害物」となる。このとき、モード選択部254は、周囲に人がいなければ通常モードM1から省電力モードM2に変更してもよい。
以上のように、変形例1におけるロボット100は、第1遷移条件が成立したとき、自律的に通常モードM1から省電力モードM2に動作モードを変更させる。このため、たとえば、周りにユーザがいないときなど電力消費を抑制しても違和感のないタイミングを捉えて効果的かつこまめに節電できる。その一方、声を掛けられたときや、ユーザを検出したときのように、外部環境に対して対応する必要が高い状況になると省電力モードM2から通常モードM1に自動復帰できる。特に、ロボット100に声をかけるだけで、ロボット100を省電力モードM2から通常モードM1に簡単に戻すことができる。
省電力モードM2から通常モードM1に復帰するとき、復帰イベントに対応した起動モーションを実行することにより、意識レベルの低い状態(省電力モードM2)において、眼をさますような出来事(復帰イベント)が生じたために、無意識的な反応(起動モーション)をしてしまったかのような行動特性を表現できる。ロボット100は、観察モードM21においてユーザを検出したときには、ユーザに手106を振って近づくことにより(起動モーション)、観察モードM21から通常モードM1に自然な態様にて復帰できる。
省電力モードM2のような動作モードに限らず、バッテリー118の電池残量が低下したときアクチュエータ256の動作量を減少させることで(動作制約)、節電してもよい。多様な動作制約により、ロボット100の動きの倦怠感や疲労感を行動表現しつつ、節電を実現できる。
観察モードM21においては、ロボット100は、通常モードM1に比べておとなしくなるが、眼画像174や頭部フレーム316を動かすことで周辺環境を意識しているかのような行動表現をする。眼表示部252は、ロボット100のそばに移動物体が検出されると、眼画像174を動かすことで移動物体を注視してもよい。観察モードM21は、いわば、体を休めているが意識は働いている状態を表現している。睡眠モードM22においては、目110およびアクチュエータ256は動かないため、観察モードM21に比べると更に省電力となる。睡眠モードM22は、いわば、意識が働いていない状態(睡眠状態)を表現する動作モードである。この意識が働いていない状態に対応して、プロセッサ122をサスペンドさせることにより、ロボット100の活動レベルと実際の電気回路の活動レベルを自然に同調させることができる。睡眠モードM22においては、サスペンドにかぎらず、メモリにある作業状態をハードディスクに退避させるハイバネーションを実行してもよい。また、プロセッサ122とは異なる割込回路により復帰イベントを検出し、割り込み信号を発生させることによりプロセッサ122をサスペンド状態から復帰させてもよい。
復帰イベントが発生すると、ロボット100の動作モードは省電力モードM2から通常モードM1に変更される。このときに、ロボット100は起動モーションを実行する。このため、たとえば、省電力モードM2のロボット100に対して大きな声をかけることでロボット100をびっくりさせるという、ロボット100をからかうような関わり方が可能となる。一方、ロボット100のそばを通り抜けるだけなら、第1復帰イベントにはならないので、睡眠モードM22のロボット100は通常モードM1に復帰することはない。ユーザは、睡眠モードM22のロボット100(居眠りをしているロボット100)を「起こさない」ように静かに行動するという配慮をするかもしれない。このような、ユーザがロボット100に配慮する、いいかえれば、ロボット100がユーザに気を使わせる、といった関わり方も可能となる。
電池残量が低下したとき、動作制約をするとして説明した。動作制約の契機としては、電池残量の低下以外にもさまざまな条件が考えられる。認識部156がユーザから音声による命令を検出したとき、たとえば、「おとなしくしろ」のような所定ワードを含む音声命令を検出したとき、動作制御部150は動作制約をしてもよい。認識部156が、外部温度が所定範囲から外れたことを検出したとき、たとえば、第1温度T1以下の「寒いとき」や、第2温度T2(>T1)以上の「暑いとき」に、動作制御部150は動作制約をしてもよい。また、ロボット100の通算稼働時間が所定の閾値を越えたとき、すなわち、ロボット100が「老化」したとき、動作制御部150は動作制約をしてもよい。
観察モードM21においては、眼生成部250は眼画像174を開眼させ、瞳画像164を左右に動かすことで「覚醒」し、あたかも周囲を観察している状態を表現してもよい。つまり、観察モードM21では、CPUリソースに高負荷をかける高度な画像処理、認識処理はおこなわず、ゆっくりと視線を動かし周囲を観察しているモーションを実行する。これにより、消費電力を抑制し、かつ、ロボット100が稼働中であることを表現できる。一方、睡眠モードM22においては、眼生成部250は眼画像174を閉眼させることで「睡眠」を表現してもよい。
ロボット100のプロセッサ122は、メインプロセッサとサブプロセッサの集合体としてもよい。メインプロセッサは、データ処理部136の基本機能を実現する。一方、サブプロセッサは、メインプロセッサよりも低い動作電圧で作動するプロセッサである。認識部156および動作制御部150の機能を実現するコンピュータプログラムは、主として、メインプロセッサにおいて実行される。一方、眼生成部250、眼表示部252、モード選択部254および電池残量監視部172などの計算負荷が小さな機能は、主として、サブプロセッサにより実現される。たとえば、低電圧駆動型の小型コンピュータにより、眼生成部250等の機能が実現されてもよい。
通常モードM1から省電力モードM2に動作モードを変更するとき、サブプロセッサはメインプロセッサを停止させてもよい。たとえば、サブプロセッサは、メインプロセッサのクロックを停止させてもよい。いわば、サブプロセッサがメインプロセッサをサスペンドさせればよい。そして、サブプロセッサの演算能力により、眼生成部250は眼画像174を動作させてもよい。モード選択部254は、復帰イベントを検出したとき、メインプロセッサに割り込みをかけることにより、メインプロセッサのクロックを再開させてもよい。このような制御方法によれば、省電力モードM2においては眼画像174などの最低限の動作を消費電力の少ないサブプロセッサで実現できる。いいかえれば、観察モードM21において、ロボット100が起きていることを表現しつつ、消費電力を抑制できる。

Claims (28)

  1. ロボットのモーションを選択する動作制御部と、
    前記動作制御部により選択されたモーションを実行する駆動機構と、
    二次電池の電池残量を監視する電池残量監視部と、を備え、
    前記動作制御部は、電池残量に応じてモーションを選択し、ロボットの行動特性を変化させることを特徴とする自律行動型ロボット。
  2. 前記動作制御部は、電池残量に応じて、複数のモーションの選択確率を変化させることを特徴とする請求項1に記載の自律行動型ロボット。
  3. 前記動作制御部は、ロボットのモーションとモーションの実行にともなう処理負荷を対応付ける負荷テーブルを参照して、電池残量が少ないときほど処理負荷の小さいモーションを高い確率にて選択することを特徴とする請求項2に記載の自律行動型ロボット。
  4. 前記動作制御部は、二次電池の電力消費ペースを定義する消費プランデータを参照し、前記消費プランデータで予定されている電池残量と実際の電池残量の差分に応じてロボットの行動特性を変化させることを特徴とする請求項1に記載の自律行動型ロボット。
  5. 二次電池の電力消費ペースを消費プランデータとして設定するプラン設定部、を更に備え、
    前記プラン設定部は、ロボットの動作時間帯に応じて前記消費プランデータを変化させることを特徴とする請求項1に記載の自律行動型ロボット。
  6. ロボットの動作履歴を記録する活動監視部と、
    二次電池の電力消費ペースを消費プランデータとして設定するプラン設定部と、を更に備え、
    前記プラン設定部は、前記動作履歴に応じて前記消費プランデータを変化させることを特徴とする請求項1に記載の自律行動型ロボット。
  7. 前記動作制御部は、モーションの処理負荷に対して負の相関関係が定められた選択確率にて、ロボットのモーションを選択することを特徴とする請求項1に記載の自律行動型ロボット。
  8. 前記動作制御部は、移動物体が検出されたときには、低処理負荷のモーションの選択確率に対する高処理負荷のモーションの選択確率の比が検出時よりも大きくなるように選択確率を調整することを特徴とする請求項1に記載の自律行動型ロボット。
  9. イベントの発生を判定する認識部、を更に備え、
    前記動作制御部は、イベントに対応づけられるモーションの選択確率を電池残量に応じて変化させることを特徴とする請求項1に記載の自律行動型ロボット。
  10. 前記動作制御部は、所定の優先イベントが発生したときには、前記優先イベントに対応づけられるモーションを電池残量に関わらず選択することを特徴とする請求項9に記載の自律行動型ロボット。
  11. ロボットのモーションを選択する動作制御部と、
    前記動作制御部により選択されたモーションを実行する駆動機構と、
    二次電池の電池残量を監視する電池残量監視部と、
    イベントの発生を判定する認識部、を備え、
    前記動作制御部は、充電中に所定の優先イベントが発生したときには、充電未了であっても前記所定の優先イベントに対応するモーションを選択することを特徴とする自律行動型ロボット。
  12. 前記所定の優先イベントは、監視エリア内における人の存在が検知されるときに発生することを特徴とする請求項11に記載の自律行動型ロボット。
  13. 前記所定の優先イベントは、前記監視エリアで検出した人に対して設定される親密度が所定の閾値以上であるときに発生することを特徴とする請求項12に記載の自律行動型ロボット。
  14. ロボットのモーションを選択する動作制御部と、
    前記動作制御部により選択されたモーションを実行する駆動機構と、を備え、
    前記動作制御部は、モーションの処理負荷に対して負の相関関係が定められた選択確率にて、ロボットのモーションを選択することを特徴とする自律行動型ロボット。
  15. 二次電池の電池残量を監視する電池残量監視部、を更に備え、
    前記動作制御部は、二次電池の電力消費ペースを定義する消費プランデータを参照し、前記消費プランデータで予定されている電池残量と実際の電池残量の差分に応じてロボットのモーション選択アルゴリズムを変化させることを特徴とする請求項14に記載の自律行動型ロボット。
  16. ロボットの動力源となる二次電池の電池残量を監視する機能と、
    二次電池の電力消費ペースを定義する消費プランデータを参照し、前記消費プランデータで予定されている電池残量と実際の電池残量の差分に応じてロボットの行動特性を変化させる機能と、をコンピュータに発揮させることを特徴とする行動制御プログラム。
  17. ロボットのモーションを選択する動作制御部と、
    前記動作制御部により選択されたモーションを実行する駆動機構と、
    通常モードおよび通常モードよりも電力供給を抑制する省電力モードのいずれかを選択するモード選択部と、を備え、
    省電力モードに設定されている場合において、所定の復帰イベントが発生したとき、
    前記動作選択部は、前記復帰イベントに対応づけられる起動モーションを実行し、
    前記モード選択部は、省電力モードから通常モードに変更することを特徴とする自律行動型ロボット。
  18. 前記復帰イベントは、音声の検出であることを特徴とする請求項17に記載の自律行動型ロボット。
  19. ロボットのモーションを選択する動作制御部と、
    前記動作制御部により選択されたモーションを実行する駆動機構と、
    通常モードおよび通常モードよりも電力供給を抑制する省電力モードのいずれかを選択するモード選択部と、を備え、
    前記モード選択部は、省電力モードに設定されているとき、移動物体が検出されたことを条件として、省電力モードから通常モードに変更することを特徴とする自律行動型ロボット。
  20. 複数のアクチュエータと、
    前記複数のアクチュエータそれぞれに動作信号を送信する動作制御部と、
    二次電池の電池残量を監視する電池残量監視部と、を備え、
    前記動作制御部は、電池残量が所定の閾値以下となったとき、前記複数のアクチュエータに供給する電力の総量を通常時よりも低く制限することを特徴とする自律行動型ロボット。
  21. 前記動作制御部は、電池残量に応じて、前記アクチュエータの動作速度および動作範囲の双方または一方に制限値を設定することを特徴とする請求項20に記載の自律行動型ロボット。
  22. 前記アクチュエータごとにあらかじめ優先度が設定され、
    前記動作制御部は、優先度に応じて、電力供給対象となるアクチュエータを選択することを特徴とする請求項20に記載の自律行動型ロボット。
  23. アクチュエータの稼働状態に基づいてロボットの活動量を計算する活動監視部と、を更に備え、
    前記動作制御部は、ロボットの単位期間あたりの活動量が所定量を超えたとき、前記ロボットの活動量を一時的に抑制することを特徴とする請求項20に記載の自律行動型ロボット。
  24. ロボットのモーションを選択する動作制御部と、
    前記動作制御部により選択されたモーションを実行する駆動機構と、
    第1モードおよび第2モードのいずれかを選択するモード選択部と、
    第1モードおよび第2モードに応じて瞳画像を変化させる眼生成部と、を備え、
    前記モード選択部は、第1モードにおいて所定の遷移条件が成立したときに第2モードに変更し、
    前記眼生成部は、第1モードにおいては瞳画像を移動させ、第2モードにおいては瞳画像を閉眼させることを特徴とする自律行動型ロボット。
  25. 前記モード選択部は、通常モードおよび通常モードよりも電力供給を抑制する省電力モードのいずれかを選択し、省電力モードにおいては更に第1モードおよび第2モードのいずれかを選択し、省電力モードにおいて第1の復帰イベントが発生したときには第1モードと第2モードのいずれの場合においても通常モードの変更し、省電力モードにおいて第2の復帰イベントが発生したときには、第1モードであれば通常モードに変更し、第2モードのときには第2モードを維持することを特徴とする請求項24に記載の自律行動型ロボット。
  26. メインプロセッサと、前記メインプロセッサよりも動作電圧を低く設定されたサブプロセッサを含み、
    前記メインプロセッサが前記動作制御部の機能を実現し、
    前記サブプロセッサが前記眼生成部の機能を実現することを特徴とする請求項24に記載の自律行動型ロボット。
  27. ロボットのモーションを選択する動作制御部と、
    前記動作制御部により選択されたモーションを実行する駆動機構と、
    二次電池の電池残量を監視する電池残量監視部と、
    通常モードおよび通常モードよりも電力供給を抑制する省電力モードのいずれかを選択するモード選択部と、を備え、
    前記動作制御部は、二次電池の電池残量が所定の閾値以下となったとき、外部の充電器を移動目標地点として選択し、
    前記モード選択部は、前記充電器への移動経路に障害物が存在するときには、通常モードから省電力モードに変更することを特徴とする自律行動型ロボット。
  28. 前記モード選択部は、前記充電器への移動経路に障害物が存在するときであっても、移動物体が検出された場合には、通常モードを維持することを特徴とする請求項27に記載の自律行動型ロボット。
JP2017566427A 2016-07-11 2017-07-10 活動量をコントロールされる自律行動型ロボット Active JP6475872B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2016137188 2016-07-11
JP2016137188 2016-07-11
PCT/JP2017/025082 WO2018012446A1 (ja) 2016-07-11 2017-07-10 活動量をコントロールされる自律行動型ロボット

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2019016943A Division JP7231924B2 (ja) 2016-07-11 2019-02-01 活動量をコントロールされる自律行動型ロボット

Publications (2)

Publication Number Publication Date
JPWO2018012446A1 true JPWO2018012446A1 (ja) 2018-07-26
JP6475872B2 JP6475872B2 (ja) 2019-02-27

Family

ID=60951733

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2017566427A Active JP6475872B2 (ja) 2016-07-11 2017-07-10 活動量をコントロールされる自律行動型ロボット
JP2019016943A Active JP7231924B2 (ja) 2016-07-11 2019-02-01 活動量をコントロールされる自律行動型ロボット

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2019016943A Active JP7231924B2 (ja) 2016-07-11 2019-02-01 活動量をコントロールされる自律行動型ロボット

Country Status (6)

Country Link
US (2) US11579617B2 (ja)
JP (2) JP6475872B2 (ja)
CN (1) CN109526208B (ja)
DE (1) DE112017003497B4 (ja)
GB (1) GB2566881B (ja)
WO (1) WO2018012446A1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015114883A1 (de) * 2015-09-04 2017-03-09 RobArt GmbH Identifizierung und Lokalisierung einer Basisstation eines autonomen mobilen Roboters
JP6618455B2 (ja) * 2016-11-28 2019-12-11 日立オートモティブシステムズ株式会社 電子制御装置、車載システム、および電源制御方法
JP7139643B2 (ja) * 2018-03-23 2022-09-21 カシオ計算機株式会社 ロボット、ロボットの制御方法及びプログラム
GB2575462B (en) * 2018-07-10 2021-10-20 Sony Interactive Entertainment Inc Apparatus, system and method of controlling a robotic device
JP2020017207A (ja) * 2018-07-27 2020-01-30 ソニー株式会社 移動体及び制御方法
WO2020031718A1 (ja) * 2018-08-08 2020-02-13 ソニー株式会社 制御装置、制御方法、およびプログラム
JP7480706B2 (ja) * 2018-10-30 2024-05-10 ソニーグループ株式会社 情報処理装置、情報処理方法、及びプログラム
WO2020166371A1 (ja) * 2019-02-15 2020-08-20 ソニー株式会社 移動体、移動方法
WO2020256161A1 (ko) * 2019-06-17 2020-12-24 엘지전자 주식회사 인공지능 홈 로봇 및 그의 제어 방법
WO2020256160A1 (ko) * 2019-06-17 2020-12-24 엘지전자 주식회사 인공지능 홈 로봇 및 그의 제어 방법
CN110362118A (zh) * 2019-07-08 2019-10-22 长江大学 空中海面水下多机器人远程立体协同控制系统及其控制方法
DE102019213032A1 (de) * 2019-08-29 2021-03-04 navel robotics GmbH Roboter mit einer verhaltenssteuerungseinheit und verfahren zur verhaltenssteuerung eines roboters
CN110930843A (zh) * 2019-10-30 2020-03-27 杭州梦栖教育咨询有限公司 一种仿真眼睛动作的控制方法及仿真眼睛
JP7435620B2 (ja) * 2019-11-14 2024-02-21 日本電気株式会社 無人機、無人機制御システム、制御方法、プログラム及び制御装置
JP7434944B2 (ja) * 2020-01-30 2024-02-21 セイコーエプソン株式会社 ロボットシステムおよび制御装置
DE102020127797B4 (de) * 2020-10-22 2024-03-14 Markus Garcia Sensorverfahren zum optischen Erfassen von Nutzungsobjekten zur Detektion eines Sicherheitsabstandes zwischen Objekten
JP7113270B1 (ja) * 2020-12-10 2022-08-05 パナソニックIpマネジメント株式会社 ロボット制御方法及び情報提供方法
JP7314967B2 (ja) * 2021-03-16 2023-07-26 カシオ計算機株式会社 電子機器、ロボット、制御方法及びプログラム
JP7287411B2 (ja) * 2021-03-16 2023-06-06 カシオ計算機株式会社 機器の制御装置、機器の制御方法及びプログラム
JP2022142111A (ja) * 2021-03-16 2022-09-30 カシオ計算機株式会社 機器の電源制御装置、機器の制御方法及びプログラム
JP7517358B2 (ja) * 2022-03-22 2024-07-17 カシオ計算機株式会社 制御装置、制御方法、及びプログラム

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001162058A (ja) * 1999-12-10 2001-06-19 Iesato Sato 自律移動型セラピー機器
JP2001191275A (ja) * 1999-10-29 2001-07-17 Sony Corp ロボット・システム、外装及びロボット装置
JP2003071772A (ja) * 2001-08-29 2003-03-12 Daisuke Yagi 電磁誘導による充電機能を備えたロボット
JP2003251580A (ja) * 2002-02-28 2003-09-09 Matsushita Electric Ind Co Ltd 人工目およびそれを用いたロボット
JP2004249393A (ja) * 2003-02-19 2004-09-09 Sony Corp ロボット装置及びその制御方法
JP2008238383A (ja) * 2007-03-29 2008-10-09 Honda Motor Co Ltd ロボット
US20130123987A1 (en) * 2011-06-14 2013-05-16 Panasonic Corporation Robotic system, robot control method and robot control program
JP2014131292A (ja) * 2005-12-02 2014-07-10 Irobot Corp ロボットシステム

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010053322A (ko) * 1999-04-30 2001-06-25 이데이 노부유끼 전자 페트 시스템, 네트워크 시스템, 로봇, 및 기억 매체
JP2000323219A (ja) * 1999-05-10 2000-11-24 Sony Corp 接続装置及びロボットシステム
JP2001112102A (ja) * 1999-10-05 2001-04-20 Denso Corp 移動ロボット
JP2001191276A (ja) 1999-10-29 2001-07-17 Sony Corp ロボットシステム、ロボット装置及びその外装
KR20010101883A (ko) * 1999-11-30 2001-11-15 이데이 노부유끼 로봇 장치와 그 제어 방법, 및 로봇 장치의 성격 판별 방법
WO2001058649A1 (fr) * 2000-02-14 2001-08-16 Sony Corporation Systeme robotique, dispositif robotise et procede de controle d'un tel systeme et dispositif et procede de traitement de donnees
JP2001277166A (ja) * 2000-03-31 2001-10-09 Sony Corp ロボット及びロボットの行動決定方法
JP4491912B2 (ja) * 2000-05-22 2010-06-30 ソニー株式会社 バッテリ駆動の脚式移動ロボット及びその制御方法
JP2002307354A (ja) 2000-11-07 2002-10-23 Sega Toys:Kk 電子玩具
JP2002222033A (ja) * 2001-01-29 2002-08-09 Nec Corp 省電力システム、タスク省電力処理方法、及びそのプログラム
JP2003071763A (ja) 2001-09-04 2003-03-12 Sony Corp 脚式移動ロボット
JP2003340759A (ja) * 2002-05-20 2003-12-02 Sony Corp ロボット装置およびロボット制御方法、記録媒体、並びにプログラム
US8222840B2 (en) * 2002-12-12 2012-07-17 Sony Corporation Fuel cell mount apparatus and electric power supply system
US20050005873A1 (en) 2003-06-26 2005-01-13 Pet Qwerks, Inc. Light producing pet toy
JP2005198704A (ja) 2004-01-13 2005-07-28 Takara Co Ltd 動作玩具
CN2813032Y (zh) * 2005-06-23 2006-09-06 陈忠伟 智能机器人玩具
WO2007041295A2 (en) 2005-09-30 2007-04-12 Irobot Corporation Companion robot for personal interaction
JP5109098B2 (ja) * 2007-06-14 2012-12-26 本田技研工業株式会社 運動制御システム、運動制御方法および運動制御プログラム
JP5127479B2 (ja) * 2008-01-29 2013-01-23 株式会社東芝 行動改善支援装置及び行動改善支援方法
WO2009158653A1 (en) * 2008-06-27 2009-12-30 Intuitive Automata, Inc. Apparatus and method for assisting in achieving desired behavior patterns
KR101493075B1 (ko) * 2008-12-17 2015-02-12 삼성전자 주식회사 이동 로봇의 위치 인식 장치 및 방법
KR102015307B1 (ko) * 2010-12-28 2019-08-28 삼성전자주식회사 로봇 및 그 제어 방법
JP2012220783A (ja) 2011-04-11 2012-11-12 Togo Seisakusho Corp 被介護者用ロボット装置
CN202289438U (zh) * 2011-09-09 2012-07-04 周剑 一种人车变换自主编程的遥控机器人玩具
US20130146090A1 (en) * 2011-12-13 2013-06-13 Joseph Y. Ko Method for controlling automatic cleaning devices
US9079113B2 (en) 2012-01-06 2015-07-14 J. T. Labs Limited Interactive personal robotic apparatus
JP5631367B2 (ja) * 2012-08-09 2014-11-26 本田技研工業株式会社 経路探索装置
KR101477179B1 (ko) * 2013-07-19 2014-12-29 삼성전자주식회사 어플리케이션의 전력 효율을 결정하고 표시하는 방법 및 단말기
JP5999065B2 (ja) * 2013-10-09 2016-09-28 トヨタ自動車株式会社 移動支援装置、移動支援方法、及び運転支援システム
EP2933065A1 (en) * 2014-04-17 2015-10-21 Aldebaran Robotics Humanoid robot with an autonomous life capability
JP6846684B2 (ja) * 2016-01-29 2021-03-24 パナソニックIpマネジメント株式会社 ロボット、ロボットの制御方法、及び、プログラム
CN107437830B (zh) * 2016-05-27 2021-01-01 华硕电脑股份有限公司 自动行走装置及其控制方法
JP6780396B2 (ja) * 2016-09-13 2020-11-04 オムロン株式会社 駆動モード選択装置および駆動モード選択方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001191275A (ja) * 1999-10-29 2001-07-17 Sony Corp ロボット・システム、外装及びロボット装置
JP2001162058A (ja) * 1999-12-10 2001-06-19 Iesato Sato 自律移動型セラピー機器
JP2003071772A (ja) * 2001-08-29 2003-03-12 Daisuke Yagi 電磁誘導による充電機能を備えたロボット
JP2003251580A (ja) * 2002-02-28 2003-09-09 Matsushita Electric Ind Co Ltd 人工目およびそれを用いたロボット
JP2004249393A (ja) * 2003-02-19 2004-09-09 Sony Corp ロボット装置及びその制御方法
JP2014131292A (ja) * 2005-12-02 2014-07-10 Irobot Corp ロボットシステム
JP2008238383A (ja) * 2007-03-29 2008-10-09 Honda Motor Co Ltd ロボット
US20130123987A1 (en) * 2011-06-14 2013-05-16 Panasonic Corporation Robotic system, robot control method and robot control program

Also Published As

Publication number Publication date
GB2566881A (en) 2019-03-27
GB2566881B (en) 2022-04-13
US20190138019A1 (en) 2019-05-09
US11579617B2 (en) 2023-02-14
US20230168682A1 (en) 2023-06-01
WO2018012446A1 (ja) 2018-01-18
JP6475872B2 (ja) 2019-02-27
CN109526208B (zh) 2021-02-02
DE112017003497T5 (de) 2019-05-02
CN109526208A (zh) 2019-03-26
US11809192B2 (en) 2023-11-07
JP7231924B2 (ja) 2023-03-02
GB201900965D0 (en) 2019-03-13
JP2019107461A (ja) 2019-07-04
DE112017003497B4 (de) 2020-12-03

Similar Documents

Publication Publication Date Title
JP6475872B2 (ja) 活動量をコントロールされる自律行動型ロボット
JP6467674B2 (ja) スキンシップを理解する自律行動型ロボット
JP6495486B2 (ja) 自律行動型ロボット及びコンピュータプログラム
JP6402320B2 (ja) 人見知りする自律行動型ロボット
JP7068709B2 (ja) 瞳を変化させる自律行動型ロボット
JP6884401B2 (ja) 服を着る自律行動型ロボット
JP6472106B2 (ja) 涼しさを求める自律行動型ロボット
JP2019010728A (ja) お出迎え行動する自律行動型ロボット
JP6557840B2 (ja) ロボット、サーバ及び行動制御プログラム
JP2018192559A (ja) 曲面形状のボディに対するタッチを検出する自律行動型ロボット
JP2024150558A (ja) ロボット

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180403

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180416

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180731

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181023

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181207

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190201

R150 Certificate of patent or registration of utility model

Ref document number: 6475872

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

RG99 Written request for provisional registration

Free format text: JAPANESE INTERMEDIATE CODE: R313G99

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250