〔実施形態1〕
図1〜図5を参照して、本発明に係る実施形態1について以下に説明する。なお、ここでは、本発明に係るロボット1の形状が人間の身体のような外観を有する場合(すなわち、人間型ロボット)を例に挙げて説明する。すなわち、ロボット1は、頭、腕、手、および足などの可動部をそれぞれ個別に動かすことにより、ユーザに対して1または複数の姿勢(ポーズ)の変更およびジェスチャ(コミュニケーション動作)などを行うことが可能である。なお、ロボット1の形状は、人間型に限定されず、猫型、犬型などの動物型であってもよいし、昆虫型、蜘蛛型、ムカデ型、およびヘビ型、などであってもよい。
(ロボット1の外部構成)
まず、本発明に係るロボット1の外観について、図2を用いて説明する。
図2の(a)は、本実施形態に係るロボット1の外観の一例を示す正面図である。図示のように、ロボット1は、頭部2(可動部)、体幹部3、右腕部4(可動部)、左腕部5(可動部)、右脚部6(可動部)、および左脚部7(可動部)を備えている。なお、ロボット1の頭部2における顔に相当する側、および体幹部3における腹に相当する側の面を「正面」と呼び、頭部2における後頭部に相当する側、および体幹部3における背中に相当する側の面を「背面」と呼ぶことにする。
頭部2には、マイク20と、プロジェクタ21(投影部)と、LED(Light EmittingDiode)22と、スピーカ23と、カメラ24とが設けられている。これらの機器は、ロボット1にどのような機能を実行させるのかに応じて選択的に設けられていればよく、適宜省略可能である。本実施形態では、一例として、プロジェクタ21およびカメラ24は、ロボット1の額中央に設けられている。LED22は、ロボット1の両目の周囲に設けられている。マイク20およびLED22については、ロボットの耳および目にそれぞれ対応して、左右一対ずつ設けられている。
右腕部4は、右上腕部41、右前腕部42、および右手部43によって構成されている。右腕部4における一端(付け根側)から他端(先端側)に向けて、右上腕部41、右前腕部42、および右手部43がこの順番で配置されている。右腕部4の一端が、体幹部3における右肩側に相当する場所に接続されている。左腕部5は、左上腕部51、左前腕部52、および左手部53によって構成されている。左腕部5における一端(付け根側)から他端(先端側)に向けて、左上腕部51、左前腕部52、および左手部53がこの順番で配置されている。左腕部5の一端が、体幹部3における左肩側に相当する場所に接続されている。
右脚部6は、右腿部61および右足部62によって構成されている。右腿部61の一端(付け根側)が体幹部3の腰側に相当する場所に接続されており、右腿部61の他端(先端側)に右足部62が接続されている。左脚部7は、左腿部71および左足部72によって構成されている。左腿部71の一端(付け根側)が体幹部3の腰側に相当する場所に接続されており、左上腕部51の他端(先端側)に左足部72が接続されている。
ユーザの指示(外部からの所定の指示)の入力を受け付ける手段としては、音声に限定されず、キーボード、タッチパネル、赤外線などの受光部、であってもよい。
(ロボット1の骨格構成)
図2の(b)は、本実施形態に係るロボット1の骨格構成を示す図である。この図に示すように、ロボット1は、図1に示す各部材に加えて、さらに、駆動部40(図1参照)としての首ロール11a、首ピッチ11b、首ヨー11c、右肩ピッチ12、左肩ピッチ13、右肘ロール14、左肘ロール15、右股ピッチ16、左股ピッチ17、右足首ピッチ18b、右足首ロール18a、左足首ピッチ19b、および左足首ロール19aを備えている。首ロール11a〜左足首ロール19aは、本実施形態ではいずれもサーボモータであり、図示のように各関節部分に設けられていてもよい。首ロール11aという文言は、このサーボモータがロール方向に可動部を回転移動させることができることを意図している。首ピッチ11b等のその他の部材についてもこれに準ずる。
後述する制御部10(図1参照)から各駆動部40に指示することより、当該駆動部40を指定の角度へ回転させる、またはトルクのオン/オフを切り換えるといった制御がされる。これにより、ロボット1は、姿勢を維持または変更したり、歩行等の動作を行ったり、手を挙げるなどのジェスチャを行ったりすることが可能となる。以下では、駆動部40のうち、角度の調整が可能なものについて、特に関節部と記す。
首ロール11a、首ピッチ11b、および首ヨー11cは、ロボット1における首に相当する場所に配置されている。制御部10は、これらを制御することによって、ロボット1における頭部2の動きを制御することができる。
右肩ピッチ12は、ロボット1における右肩に相当する場所に配置されている。制御部10は、これを制御することによって、ロボット1における右腕部4全体の動きを制御することができる。左肩ピッチ13は、ロボット1における左肩に配置されている。制御部10は、これを制御することによって、ロボット1における左腕部5全体の動きを制御することができる。
右肘ロール14は、ロボット1における右肘に相当する場所に配置されている。制御部10は、これを制御することによって、ロボット1における右前腕部42および右手部43の動きを制御することができる。左肘ロール15は、ロボット1における左肘に相当する場所に配置されている。制御部10は、これを制御することによって、ロボット1における左前腕部52および左手部53の動きを制御することができる。
右股ピッチ16は、ロボット1における右股に相当する場所に配置されている。制御部10は、これを制御することによって、ロボット1における右脚部6全体の動きを制御することができる。左股ピッチ17は、ロボット1における左股に相当する場所に配置されている。制御部10は、これを制御することによって、ロボット1における左脚部7全体の動きを制御することができる。
右足首ピッチ18bおよび右足首ロール18aは、ロボット1における右足首に相当する場所に配置されている。制御部10は、これらを制御することによって、ロボット1における右足部62の動きを制御することができる。左足首ピッチ19bおよび左足首ロール19aは、ロボット1における左足首に相当する場所に配置されている。制御部10は、これらを制御することによって、ロボット1における左足部72の動きを制御することができる。
さらに、制御部10は、右股ピッチ16、左股ピッチ17、右足首ピッチ18bおよび左足首ピッチ19bを同時に制御することによって、ロボット1に前傾姿勢または後傾姿勢をとらせることができる。
以上のように、ロボット1には、1つの可動部に対して、該可動部を駆動するための一つの駆動部40が設けられていてもよい(例えば、右脚部6に対して、右股ピッチ16が設けられていてもよい)。または、1つの可動部に対して、該可動部を駆動するための複数の駆動部40が設けられていてもよい(例えば、頭部2に対して、首ロール11a、首ピッチ11b、および首ヨー11cが設けられていてもよい)。
各駆動部40は、制御部10に対し、角度などのステータスを所定の間隔で通知することが可能である。ステータスの通知は、サーボモータのトルクがオフである場合でも行われ、ユーザによる可動部の動作を検出することができる。制御部10は、ステータスの通知を受けることで、サーボモータの角度を認識することができる。
なお、図示のロボット1は体幹部3に可動部を有さない例を挙げて説明したが、体幹部3の腰の部分が左右に回転可能なように構成してもよい。また頭部2の口に相当する部分に顎状の部材(図示せず)を設け、スピーカ23からの音声に合わせて可動に構成したり、LED22に瞼状の部材(図示せず)を設けて、まばたきをしているような動きが可能なように構成したりしてもよい。このような場合、体幹部3、頭部2も可動部であり得る。また、各可動部が図示した例とは異なる態様で動くように構成してもよい。例えば、右腕部4、左腕部5、右脚部6、および左脚部7が回転したり屈伸したりする以外に、伸縮するように構成してもよい。
(ロボット1の構成)
続いて、ロボット1の構成について図1を用いて説明する。図1は、ロボット1の構成を示すブロック図である。ロボット1は、複数の可動部を備えており、個々の可動部の制御を互いに異ならせることができる。
図1に示すように、ロボット1は、制御部10、マイク20、記憶部30、および駆動部40を備える。駆動部40については、図2の(b)を参照して上述した通りである。本実施形態のロボット1は、一例として、プロジェクタ21を備える。さらに、ロボット1は、カメラ24を備えてもよい。ロボット1は、プロジェクタ21およびカメラ24の他にも、特定の機能を実行する主体となる各種機器を備えてもよいが、ここでは、図示を省略した。
制御部10は、ロボット1の動作および処理を統括的に制御するものである。制御部10の具体的な構成については後述する。マイク20は、ユーザが制御部10に対して入力する音声を取得するための機器である。プロジェクタ21は、制御部10が処理した静止画または動画(以下、画像と総称する)に係る信号を出力して、当該画像を投影先に投影する機器である。カメラ24は、被写体を撮影して画像を入力する機器である。カメラ24は、デジタルカメラであってもよいし、周囲の物体およびユーザの動きを撮像することが可能なデジタルビデオであってもよい。記憶部30は、制御部10が処理を行うための各種情報を記憶する記憶媒体である。記憶部30の具体例としては、ハードディスクまたはフラッシュメモリなどが挙げられる。記憶部30は、ロボット1にとらせる姿勢を複数パターン定義し、その姿勢ごとにロボット1の関節部のトルクをオフにするか否かを規定する姿勢定義テーブル31などを格納している。姿勢定義テーブル31については、後に具体例を挙げて説明する。また、記憶部30は、姿勢定義テーブル31の他に、ユーザからの音声による指示が入力された場合に、該音声指示を解釈するために参照される音声テーブル(図示せず)などを格納している。
(制御部10の構成)
制御部10は、機能ブロックとして、音声認識部81、機能特定部82、駆動制御部83、および機能実行部8を備える。機能実行部8は、具体的には、例えば、投影実行部84、撮影実行部85などであるがこれに限定されない。
音声認識部81は、マイク20へ入力された音声を認識(解釈)する。音声認識部81は、入力された音声が、記憶部30の音声テーブルに含まれる所定の音声であるか否かを判定する。例えば、マイク20から入力された音声が、「このアルバムをスライドショーで映して」などであるとする。この場合、音声認識部81は、記憶部30の音声テーブルを参照して、スライドショーの投影が指示されたことを認識する。そして、認識結果を、機能特定部82に出力する。
機能特定部82は、音声認識部81から供給された認識結果に応じて、実行すべき機能を特定し、当該機能を実行する主体に対して当該機能の実行を指示する。例えば、音声認識によってスライドショーの投影が指示されたと判明した場合、機能特定部82は、実行すべきは、プロジェクタ21が実現する投影機能であると特定し、プロジェクタ21を制御する投影実行部84に対して投影機能の実行を指示する。
駆動制御部83は、駆動部40をそれぞれ制御する。特に、駆動制御部83は、ロボット1が特定の機能を実行する場合に、その機能実行中にロボット1にとらせる姿勢を決定して、決定した姿勢になるように、各駆動部40を制御する。より具体的には、駆動制御部83は、機能特定部82によって決定された機能に対応する姿勢の定義を姿勢定義テーブル31から読み出す。そして、読み出した定義にしたがって、特定の駆動部40から対応する可動部への力の伝達を許可(トルクをオン)したり、別の駆動部40から対応する可動部への力の伝達を停止(トルクをオフ)したりする。駆動制御部83は、すべての駆動部40に対してトルクをオフにすることもできるし、一部の駆動部40に対してトルクをオフにすることもできる。このようにして、駆動制御部83の制御下で、駆動部40が所定の回転位置に移動したり、その回転位置で静止したりすることにより、図2の(a)に示す各可動部が所定の位置に動いて、ロボット1が特定の姿勢をとることができる。
さらに、駆動制御部83は、姿勢定義テーブル31を参照し、ロボット1にとらせる特定の姿勢についてトルクオフの可否を判定する。そして、上記特定の姿勢についてトルクオフが可能である場合には、駆動制御部83は、ロボット1に上記特定の姿勢をとらせたあと、すべての駆動部40(関節部)のトルクをオフにする。
機能実行部8は、ロボット1に搭載された各種機器を制御して、ロボット1に備えられた各種機能を実行させる。ロボット1の機能の具体例としては、上述のとおり、映像信号を外部の投影先に投影する投影機能、および、被写体を撮影する撮影機能などがある。上記機能は、それぞれ、投影実行部84がプロジェクタ21を制御することにより、および、撮影実行部85がカメラ24を制御することにより、実現される。上記の他にも、ロボット1は音声通話機能およびスケジュール管理機能などの各種機能(例えば、スマートフォンなどの携帯端末が備えている機能)を備えていてもよい。この場合、これらの機能の実行主体となる機器を制御するための実行部が機能実行部8に含まれていてもよい。
なお、本実施形態に係るロボット1には、CPU(central processing unit)である制御部10と記憶部30とを備えるコンピュータが組み込まれていてもよい。この場合、上記機能ブロックとして示される各部は、CPUが不図示のROM(read only memory)等の記憶装置に記憶されているプログラムをRAM(random access memory)等に読み出して実行することで実現できる。
(ロボット1の姿勢について)
本発明に係るロボット1は、上述のとおり、複数の可動部を備えており、ロボット1の機能実行部8が所定の機能を実行するときに、基本姿勢(第1の姿勢)から当該機能を実行するための特定姿勢(第2の姿勢)に移行することができる。
上記所定の機能は、例えば、投影実行部84がプロジェクタ21を制御することにより実現する投影機能であってもよいし、撮影実行部85がカメラ24を制御することにより実現する撮影機能であってもよいし、その他の任意の機能であってもよい。
ここで、基本姿勢は、ロボット1の充電中、または、ロボット1が機能を実行せずにユーザの指示入力を待機している間にロボット1がとる姿勢である。基本姿勢は、例えば、図2の(a)に示すように、ロボット1が直立している姿勢であってもよい。あるいは、基本姿勢は、ロボット1が座っている姿勢、詳細には、床面に対して垂直に起きている体幹部3に対して、脚部(右脚部6および左脚部7)が直角になるように腰を曲げ、脚部背面を床面に接触させる姿勢であってもよい。すなわち、基本姿勢とは、脚部(第1の可動部)のみが床面に接触することにより、脚部と床面とによってロボット1が支持され、その他の可動部が物体に接触せずとも傾倒しない姿勢である。なお、以下では、駆動部40のトルクをオフにしてもロボット1が傾倒しないで静止していられる姿勢を、ロボット1が安定する姿勢と表現する。
一方、特定姿勢(第2の姿勢)は、ロボット1が特定の機能を実行する際にとるべき、基本姿勢とは別の姿勢である。特定姿勢は、脚部(第1の可動部)のみが床面に接触するだけ(例えば、図8)では、(可動部への力の伝達なくしては、)ロボット1が安定しない姿勢である。なおかつ、上記特定姿勢は、脚部以外の可動部が他の物体に接触して該他の物体に支持されることによって、ロボット1が安定する姿勢である。特定姿勢は、例えば、ロボット1が上記投影機能として床面に映像を投影するときにとる前傾姿勢であってもよい。あるいは、上記特定姿勢は、プロジェクタ21が頭部2の背面(後頭部)に設けられている場合、または、ロボット1の腕部(左腕部5および右脚部6)が所定以上に長い場合には、後傾姿勢であってもよい。ロボット1は、第1の可動部としての脚部とは別の、少なくともいずれか1つの可動部を第2の可動部として他の物体に接触させることによって、上記特定姿勢を、上記安定する姿勢として実現する。
上記構成によれば、ロボット1は、床面に接触する第1の可動部(脚部など)以外の第2の可動部を、他の物体に接触させることにより、安定した特定姿勢を実現する。上記他の物体が、少なくとも、第2の可動部を介して受ける負荷の方向には動かないように固定されてさえいれば、ロボットに対する荷重が第2の可動部に働いたとき、上記第2の可動部と、上記物体との接触点にて、上記荷重に釣り合う反力が上記物体において働く。したがって、ロボット1は、特定姿勢にて、上記脚部が床面に接触するのみでは、ロボット1を傾倒させる力(荷重)が働いた場合に静止していられないところ、第2の可動部が物体に接触することによって、反力を得て、荷重によって傾倒することなく静止していられる。結果として、ロボット1は、特定姿勢を保つことができ、所定の機能を実行することが可能となる。
以下に、図3の(a)〜(d)を参照して、ロボット1が安定する姿勢としての特定姿勢の具体例を説明する。図3の(a)〜(d)は、ロボット1の左側から、特定姿勢をとるロボット1を見たときの側面図である。本実施形態では、ロボット1は、特定姿勢をとるとき、両腕部(右腕部4および左腕部5)、および、両脚部(右脚部6および左脚部7)の位置を左右対称に置くものとする。したがって、ロボット1が特定姿勢をとるとき、本実施形態では、同図に図示されない右腕部4および右脚部6は、それぞれ、左腕部5および左脚部7と左右対称の位置に置かれるものとし、以下では、右腕部4および右脚部6の位置についての説明を省略する。その他の実施形態でも同様である。しかし、本発明のロボット1はこれに限定されず、ロボット1は、左右非対称の特定姿勢をとってもよい。
ロボット1は、例えば、画像を床面に投影する投影機能を実行するとき、特定姿勢として、図3の(a)〜(c)に示すような、前傾姿勢(第2の姿勢)をとってもよいし、図3の(d)に示すような、後傾姿勢(第2の姿勢)をとってもよい。図3の(a)〜(d)によれば、ロボット1の特定姿勢とは、上記第1の可動部として左脚部7の左足部72の底面が、床面Bに接触しているとともに、上記第2の可動部として左腕部5の左手部53が、他の物体に接触している姿勢である。上記構成によれば、ロボット1は、特定姿勢にて、脚部(右脚部6および左脚部7)のみが床面に接触するだけでは、傾倒してしまうところ、腕部(右腕部4および左腕部5)が他の物体に接触しているため、当該腕部を介して、該物体から反力を受けることによってロボット1を支持することができる。したがって、ロボット1を、上記特定姿勢にて、傾倒せずに静止させることができる。なお、図3の(d)は、脚部に膝関節が含まれていて、該膝関節に接続される腿部と膝下部とを個別に駆動できる構成、および、腕部が十分に長い構成の少なくともいずれか一方の構成を備えるロボットによって実現される姿勢である。
なお、左手部53が接触する他の物体は、具体的には、図3の(c)および(d)に示すように、床面Bであってもよい。上記構成によれば、脚部に加えて、腕部を、上述の他の物体としての床面Bに接触させることにより、体幹部3が任意の角度に(例えば、ほぼ水平まで)傾いても、ロボット1の姿勢を安定させることができる。
あるいは、左手部53が接触する他の物体は、ロボット1の他の可動部、具体的には、図3の(a)および(b)に示すように、左脚部7であってもよい。上記構成によれば、床面Bに支持されている脚部に腕部を接触させる。すなわち、腕部が、上述の他の物体としての脚部に接触することにより、体幹部3を支持する。この特定姿勢は、腕部の長さが比較的短く、体幹部3を相当角度(水平もしくはそれ以上に前に)傾けないと床面Bに腕部が届かないようなロボット1に好適な姿勢である。
より詳細には、プロジェクタ21が頭部2の正面側に設けられている場合、投影機能実行時の特定姿勢は、左腕部5の少なくとも一部(左手部53など)が、左脚部7の前面に接触している姿勢である。脚部の前面とは、すなわち、プロジェクタ21の投影方向(前方)と同じ側の面である。具体的には、脚部の前面は、例えば、左腿部71の前面(人の膝またはすねに相当する面も含む)、および、左足部72の前面(人の足の甲またはつま先に相当する面も含む)などである。上記構成によれば、プロジェクタ21の投影方向がロボット1の前方であり、投影先からロボット1を見たときに見えるロボット1の面を正面としたとき、脚部の正面側に腕部をつくことで、体幹部3を投影方向(前方)に傾けた姿勢(前傾姿勢)を保つことができる。よって、頭部2に設けられたプロジェクタ21の投影方向を前方床面Bに向けることが可能となる。そして、体幹部3を前方に傾けた分、投影方向を床面Bに対して垂直に近づけることが可能となり、プロジェクタ21から投影された投影画像Pの台形のゆがみをその分抑えることが可能となる。
好ましくは、上記特定姿勢は、図3の(a)に示すように、左足部72に底面が床面Bに接触しているとともに、左手部53が左足部72の甲に接触している姿勢である。上記構成によれば、足部(右足部62および左足部72)の甲に腕部の先端(手部、すなわち、右手部43および左手部53)をつくことで、体幹部3を前に傾けて、ロボット1の前傾姿勢を保つことができる。脚部のうち、床面Bに直接触れている可動部(すなわち足)の甲に手をつくことにより、(間接的に膝または腿に手をつく場合と比較して)より安定した物体に支持されることになり、姿勢がより安定する。当該特定姿勢は、腕部が短く体幹部3を床面Bに平行またはそれ以上に前傾させないと床面Bに腕部が届かないようなロボットに好適な姿勢である。さらに、当該特定姿勢では、(膝または腿に手をつく場合と比較して)体幹部3の傾きを可能な限り床面Bに平行に近づけることができる。これにより、頭部2の正面に設けられたプロジェクタ21の投影方向を前方床面Bに向けるときに、体幹部3を前傾させた分、該投影方向を床面Bに対して垂直にすることができる。したがって、その分、プロジェクタ21から投影された投影画像Pの台形のゆがみを抑えることが可能となる。
図3の(a)を参照して、より好ましくは、上記特定姿勢において、体幹部3は、床面Bに対する体幹部3の傾きθ1が所定値以下になるように(水平に近づくように)、前に傾けられる。具体的には、体幹部3の傾きθ1は、プロジェクタ21の投影方向の床面Bに対する傾きθ2が所定値以上になるように(垂直に近づくように)決定される。ここで、投影方向の傾きθ2は、プロジェクタ21により投影された投影画像Pのひずみが最も強くなる投影方向Dと床面Bとが成す角度であって、この傾きθ2が小さくなるほど、投影画像Pのひずみが強くなる。このため、傾きθ2は、ロボット1に搭載されている、上記ひずみを補正するための画像処理機能の性能に応じて、投影画像Pのひずみがどれほどまで許容されるのかに応じて決定される。上記画像処理機能とは、具体的には、床に投影されて台形に歪んだ投影画像Pを画像処理によって長方形に補正する機能(以下、台形補正機能)である。以上のことから、上記特定姿勢において、体幹部3は、プロジェクタ21によって投影される投影画像Pのひずみが、ロボット1の台形補正機能(画像処理機能)によって補正可能な範囲となるように、傾いていることが好ましい。
(ロボット1による処理の流れ)
図4は、ロボット1の制御部10が実行する処理の流れを示すフローチャートである。音声認識部81は、マイク20に音声が入力されると、入力された音声を音声テーブルに記憶された標本の音声と比較して、入力された音声の意味内容を認識する(S101)。機能特定部82は、音声認識部81による認識結果に基づいて、ロボット1が備えている所定の機能の実行が指示された否かを判定する(S102)。ここで、入力された音声が機能実行指示に該当しない場合は(S102でNO)、ロボット1の制御部10は、入力された音声の意味内容に応じた処理を実行すればよい(S110)。
一方、所定の機能の実行が指示された場合(S102でYES)、機能特定部82は、実行が指示された機能を特定する(S103:機能特定ステップ)。ここでは、例えば、機能特定部82は、ロボット1が記憶する画像のスライドショーを床面に投影することが指示されたのだと認識したものとする。
続いて、駆動制御部83は、機能特定部82が特定した機能を実行するときに、ロボット1がとるべき姿勢を決定する(S104)。例えば、駆動制御部83は、姿勢定義テーブル31を参照して、床面に画像を投影する機能(以下、機能名「床投影」)に対応付けられた特定姿勢を決定する。そして、駆動制御部83は、決定した該特定姿勢の定義を、姿勢定義テーブル31から読み出す。駆動制御部83は、ロボット1の現在の姿勢が、決定した特定姿勢に該当するか否かを判定する(S105)。駆動制御部83は、現在の姿勢が特定姿勢でなければ(S105でNO)、当該特定姿勢に移行するように、上記特定姿勢の定義にしたがって、各関節部の駆動部40を制御する(S106:駆動制御ステップ)。すなわち、駆動制御部83は、各関節部に対応するサーボモータが、該サーボモータについて規定されている保持角度を維持するように、各関節部の駆動部40を制御する。ここで、駆動制御部83は、姿勢定義テーブル31を参照して、S104で決定した特定姿勢が、トルクを抜いてもロボット1が安定する姿勢であるか否かを判定する。決定した特定姿勢が、トルクを抜いてもロボット1が傾倒しないで安定する姿勢である場合には(S107でYES)、駆動制御部83は、S105にてロボット1の姿勢を決定した特定姿勢に移行させた後に、各駆動部40から対応する可動部への力の伝達を停止する。力の伝達の停止としては、例えば、各可動部を駆動するすべての駆動部40の電源をオフにすることなどが含まれる。駆動制御部83は、具体的には、ロボット1の各関節部に対応するサーボモータのトルクをオフにする(S108:駆動停止ステップ)。なお、S107の判定のステップは、S104のステップが実行された後、S108のステップが実行されるまでの間の任意のタイミングが実行されればよい。
駆動制御部83によってロボット1が上記特定姿勢をとるように制御されている間、あるいは、駆動制御部83の制御によって、ロボット1が上記特定姿勢に移行した後、機能実行部8は、機能特定部82によって特定された機能を実行する(S109)。ここでは、例えば、投影実行部84は、床投影の機能を実行する。
上記方法によれば、ロボット1が、床投影機能を実行するための特定姿勢に移行した後に、駆動制御部83は、駆動部40への電流を停止する。そのため、傾倒することなくロボット1の姿勢が安定して、上記床投影機能の実行を継続できる。その上、駆動部40が電力を消費することがなくなり、結果として、省電力、および、発熱回避による回路保護を実現することが可能となる。
(姿勢定義テーブル31)
図5は、ロボット1の制御部10が参照する姿勢定義テーブル31の一具体例を示す図である。なお、図5において、姿勢の定義情報をテーブル形式のデータ構造にて示したことは一例であって、定義情報のデータ構造を、テーブル形式に限定する意図はない。
本実施形態では、図5に示すとおり、姿勢定義テーブル31において、1つの姿勢の定義情報は、保持角度の情報と、機能の情報と、トルクオフフラグとの3つの情報を含む。より詳細には、姿勢定義テーブル31の保持角度のカラムにおいて、1つの姿勢につき、当該姿勢をロボット1にとらせるときの各サーボモータの保持角度が、各関節部に対応するサーボモータ(駆動部40)ごとに規定されている。機能のカラムにおいて、ロボット1が実行可能な所定の機能が、姿勢に関連付けて格納されている。これにより、当該姿勢が、どの機能を実行するときにとられる姿勢であるのかが判明する。より具体的には、S104において、駆動制御部83は、図5に示す姿勢定義テーブル31を参照することにより、機能名「床投影」に対応する特定姿勢として、「02_前傾」の姿勢を決定することができる。なお、図5に示す例では、1つの姿勢には、複数の機能が関連付けられているが、姿勢と機能との対応関係は1対1であってもよい。
トルクオフフラグのカラムにおいて、ロボット1が当該姿勢をとった場合に、関節部に対応するすべてのサーボモータのトルクをオフしても、ロボット1が安定する姿勢であるか否かを示す情報が格納されている。ここでは、トルクオフフラグの「可」は、当該姿勢が、トルクをオフにしてもロボット1が傾倒しない、すなわち、安定する姿勢であることを示す。反対に、トルクオフフラグの「不可」は、当該姿勢が、トルクをオフにするとロボット1が傾倒する可能性がある、すなわち、安定しない姿勢であることを示す。姿勢に関連付けられた上記トルクオフフラグが、「可」であるのか「不可」であるのかを判定することにより、駆動制御部83は、決定した特定姿勢をロボット1がとった後に、各サーボモータのトルクをオフにできるか否かを判断する。具体的には、S107において、駆動制御部83は、図5に示す姿勢定義テーブル31を参照することにより、決定した特定姿勢「02_前傾」に関連付けられているトルクオフフラグが「可」であるか「不可」であるかを判定する。ここで、決定した特定姿勢「02_前傾」のトルクオフフラグは、「可」であるので、駆動制御部83は、ロボット1に特定姿勢「02_前傾」をとらせた後、ロボット1の関節部に対応するすべてのサーボモータのトルクをオフにする。
なお、姿勢定義テーブル31を、図5に示すように1つのテーブルにて示したことは一例に過ぎず、姿勢定義テーブル31は、複数のテーブルから成ってもよい。例えば、機能ごとに当該機能を実行するためにとるべき姿勢を関連付けた第1のテーブルと、姿勢ごとに保持角度の情報を関連付けた第2のテーブルと、姿勢ごとにトルクオフフラグを関連付けた第3のテーブルとによって、姿勢定義テーブル31が構成されてもよい。
また、特定姿勢のそれぞれが、安定する姿勢であるか否か(トルクオフの可否)を判定する方法は、上記に限定されない。駆動制御部83は、トルクオフフラグを参照せずとも、1つの姿勢につき定義されたサーボモータごとの保持角度に基づいて、当該姿勢のトルクオフ可否を判定してもよい。
〔実施形態2〕
本発明の他の実施形態について、図6に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、実施形態1にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。実施形態1では、ロボット1が前方の床面に画像を投影する機能を実行するためにとる前傾姿勢に関して、安定する姿勢の具体例を説明する。本実施形態では、ロボット1が天井に画像を投影する機能を実行するためにとる特定姿勢に関して、図6を参照して、安定する姿勢の具体例を説明する。
ロボット1は、例えば、画像を天井面に投影する機能(機能名「天井投影」)を実行するとき、特定姿勢として、図6に示すような、ブリッジ姿勢(第2の姿勢)をとってもよい。図6によれば、ブリッジ姿勢は、第1の可動部として左足部72の底面が、床面Bに接触しているとともに、第2の可動部として左手部53が、他の物体(ここでは、床面B)に接触している姿勢である。これにより、左脚部7に加えて左腕部5が、床面Bからの反力を利用して、ロボット1の頭部2および体幹部3を支持するため、ロボット1の姿勢が安定する。ここで、ブリッジ姿勢において、以下の各関節部、右肩ピッチ12、左肩ピッチ13、右股ピッチ16、左股ピッチ17、右足首ピッチ18bおよび左足首ピッチ19bは、対応する可動部がロボット1の後方に向くような角度で該可動部を保持する。これにより、ロボット1は、頭部2および体幹部3の正面(すなわち、ロボット1の顏および腹)が、天井面Cの方向に向いた状態で安定する姿勢をとることができ、頭部2正面に設けられたプロジェクタ21が、天井面Cに向かって画像を投影することが可能となる。
〔実施形態3〕
本発明の他の実施形態について、図7に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、実施形態1および実施形態2にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
実施形態1および2では、ロボット1は、特定姿勢を安定する姿勢とするために、第2の可動部の少なくとも一部(例えば、左腕部5の左手部53)を、他の物体としての、ロボット1の他の可動部、または、床面Bに接触させる構成であった。
しかし、ロボット1が第2の可動部を接触させる他の物体は、上記に限定されない。ロボット1は、特定姿勢を安定する姿勢とするために、上記他の物体として、壁面、手すり、取っ手、突っ張り棒、柱、ポールなどの不動の物体に、例えば、左手部53をつく(第2の可動部を接触させる)構成であってもよい。具体的には、本発明に係るロボット1の特定姿勢は、図7の(a)に示すとおり、壁面W(他の物体)に左手部53をつき、左腕部5と左脚部7とでロボット1を支持することにより、ロボット1が安定する姿勢であってもよい。
あるいは、ロボット1は、上記他の物体として、つり革、ボール、置物、家具などの物体に、例えば、左手部53をつく構成であってもよい。すなわち、ロボット1が、特定姿勢を安定する姿勢とするために、第2の可動部を接触させる「他の物体」とは、ロボット1の荷重が作用する方向には動かないように固定された物体である。例えば、つり革、ボールなどは、別方向から負荷がかかれば動くかもしれないが、ロボット1が傾倒しようとする力(荷重)が作用する方向には動かないように固定された物体である。これらの物体は、荷重方向に対して固定されているため、条件が整えば、荷重と釣り合う反力をロボット1の第2の可動部に対して供給することができる。ロボット1は、このように固定された物体であれば、任意の物体に第2の可動部を接触させることができ、これにより、安定する姿勢を実現することが可能である。具体的には、本発明に係るロボット1の特定姿勢は、図7の(b)に示すとおり、机F(他の物体)に左手部53をつき、左腕部5と左脚部7とでロボット1を支持することにより、ロボット1が安定する姿勢であってもよい。
〔変形例〕
上述の各実施形態において、ロボット1の駆動制御部83は、ロボット1が安定する姿勢に移行した後、すべての駆動部40の電源をオフにして停止させる構成である。上記構成によれば、省電力、および、発熱回避による回路保護の観点から最も効果的な結果が得られるからである。しかしながら、本発明において、駆動制御部83が駆動部40を部分的に停止する構成が排除されないことを理解されたい。例えば、駆動制御部83は、一部の駆動部40(例えば、消費電力量が最も多い右足首ピッチ18bおよび左足首ピッチ19b)について電源をオフにする構成であってもよい。
本発明に係るロボット1の特定姿勢は、ロボット1が投影機能以外のさまざまな所定の機能を実行するときにも好適に用いられる。例えば、ロボット1が安定する本発明に係る前傾姿勢は、ロボット1がカメラ24を用いて撮影するとき、より詳細には、床面に設置されたQRコード(登録商標)などを読み取るときに適用可能である。
プロジェクタ21およびカメラ24は、ロボット1の頭部2(眉間)に限定されず、体幹部3の正面側(腹側)に設けられていてもよい。この場合にも、ロボット1は、図3の(a)〜(d)または図6に示すような特定姿勢をとることができる。これにより、ロボット1は、前方に画像を投影する機能、または、前方を撮影する機能を、駆動部40が停止されても、安定した姿勢で実行することができる。
ロボット1は、特定姿勢をとるときに、第2の可動部の少なくとも一部として、左手部53を他の物体に接触させる構成である。しかし、この構成に限定されず、ロボット1は、左腕部5の肘に相当する部分(左上腕部51と左前腕部52との接続部分)、または、右腕部4の右上腕部41と右前腕部42との接続部分を、他の物体に接触させてもよい。
さらに、ロボット1が、体幹部3の背面に、羽部、尾部などを可動部として備える場合、あるいは、ロボット1が、頭部2に、角部、触角部などを可動部として備える場合には、ロボット1は、これらの可動部を第2の可動部として他の物体に接触させてもよい。上記構成によれば、該特定姿勢にて、ロボット1が安定する。
駆動部40がサーボモータで実現される場合、前傾姿勢などの特定姿勢において、第2の可動部(例えば、左腕部5)を介して、サーボモータ(例えば、左肩ピッチ13および左肘ロール15)にかかる荷重が、該サーボモータの摩擦負荷以下であることが好ましい。この条件が満たされると、荷重(ロボット1を傾倒させる力)が、サーボモータの摩擦負荷を超えることはない。これにより、サーボモータは、トルクが無い状態であっても、前傾姿勢時の回転位置を保持することができるので、当該前傾姿勢がくずれない。したがって、サーボモータとしての駆動部40には、ギア比の高いモータを採用することが好ましい。ギア比が高い程、サーボモータの摩擦負荷が大きくなり、その分より大きな荷重に耐えられる。これにより、特定姿勢を安定させるための姿勢のバリエーションが広がる。上記の条件に加えて、あるいは、代えて、第2の可動部を介して、該可動部を駆動するサーボモータに対してかかる荷重の方向が、該サーボモータの回転方向とは異なることが好ましい。この条件が満たされると、サーボモータの回転方向、すなわち、可動部の関節部が曲がる方向とはずれた方向に荷重がかかる。そのため、関節部は曲がらず可動部も動かない。好ましくは、図5に示す姿勢の定義情報において、各可動部を駆動するサーボモータの保持角度は、サーボモータの回転方向が荷重の方向とずれるように決定されている。
〔ソフトウェアによる実現例〕
ロボット1の制御ブロック(特に、機能特定部82、駆動制御部83、投影実行部84および撮影実行部85)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
後者の場合、ロボット1は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
〔まとめ〕
本発明の態様1に係るロボット(1)は、複数の可動部(頭部2、体幹部3、右腕部4、左腕部5、右脚部6および左脚部7)を備え、所定の機能(床投影、天井投影など)を実行するときに、第1の姿勢(直立姿勢など)とは異なる第2の姿勢(前傾姿勢など)に移行可能なロボットにおいて、上記第1の姿勢は、上記複数の可動部のうち、第1の可動部(右脚部6、左脚部7)のみが床面に接触することにより当該ロボットが安定する姿勢であり、上記第2の姿勢は、上記第1の可動部のみが床面に接触するだけでは当該ロボットが安定しない姿勢であり、上記第2の姿勢は、上記複数の可動部のうち、上記第1の可動部とは異なる第2の可動部(右腕部4、左腕部5)が、他の物体(他の可動部、床面Bなど)に接触することにより、当該ロボットが安定する姿勢である。
上記の構成によれば、ロボットは、床面に接触する第1の可動部以外の第2の可動部を、他の物体に接触させることにより、安定した第2の姿勢を実現する。上記他の物体が固定されているなどの所定の条件を満たしている場合、ロボットに対する荷重が第2の可動部に働いても、上記第2の可動部と、上記物体との接触点にて、上記荷重に釣り合う反力が働く。したがって、ロボットは、第2の姿勢にて、上記第1の可動部が床面に接触するのみでは、ロボットを傾倒させる力(荷重)が働いた場合に、当該ロボットが静止していられないところ、第2の可動部が物体に接触することによって、荷重によって傾倒することなく静止していられる。結果として、ロボットは、可動部に対して力を伝達しなくても、第2の姿勢を保ち、所定の機能を実行することが可能となる。
本発明の態様2に係るロボットは、上記態様1において、1または複数の脚部(右脚部6、左脚部7)と、該脚部に接続された体幹部(3)と、該体幹部に接続された1または複数の腕部(右腕部4、左腕部5)とを備え、上記第2の姿勢は、上記第1の可動部として上記脚部の少なくとも一部(右足部62、左足部72)が床面に接触しているとともに、上記第2の可動部として上記腕部の少なくとも一部(右手部43、左手部53)が上記物体に接触している姿勢である。
上記の構成によれば、ロボットは、第2の姿勢にて、脚部のみが床面に接触するだけでは、当該ロボットが傾倒してしまうところ、腕が物体に接触しているため、当該腕を介して、該物体から受ける反力によってロボットを支持することができる。したがって、ロボットは傾倒することなく静止していられる。
本発明の態様3に係るロボットでは、上記態様2において、上記第2の姿勢は、上記腕部の少なくとも一部が上記床面に接触している姿勢である。上記の構成によれば、脚部に加えて、腕部を、上記他の物体としての床面につくことで、(体幹部が水平近く傾いても、)第2の姿勢を安定させることができる。
本発明の態様4に係るロボットでは、上記態様2において、上記第2の姿勢は、上記腕部の少なくとも一部が上記脚部に接触している姿勢である。上記の構成によれば、床に支持されている脚に腕をつく(腕が他の物体としての脚に接触する)ことにより、脚部と腕部とでロボットを支持し、姿勢を安定させる。腕が短く体幹部を水平もしくはそれ以上に傾けないと床面に腕が届かないようなロボットに好適な姿勢である。
本発明の態様5に係るロボットは、上記態様4において、静止画または動画を投影先に投影する投影部(プロジェクタ21)と、上記体幹部に接続された頭部(2)とを備え、上記投影部は、上記頭部に設けられており、上記第2の姿勢は、上記腕部の少なくとも一部が、上記脚部の、上記投影部の投影方向と同じ面(正面)に接触している姿勢である。
上記の構成によれば、投影部の投影方向をロボットの前方とし、投影先からロボットを見たときに見える面をロボットの正面とした場合、脚部の正面側に腕部をつくことで、体幹部を前に傾けて前傾姿勢を保つことができる。よって、頭部に備えた投影部の投影方向を前方床面に向けることが可能となる。前傾姿勢を維持することができるため、床面に画像を投影する時、投影画像の台形のゆがみを抑えることができる。
本発明の態様6に係るロボットでは、上記態様5において、上記脚部は、上記体幹部に接続される腿部(右腿部61、左腿部71)と、上記床面に接触して該腿部を支持する足部(右足部62、左足部72)とを含み、上記腕部は、上記体幹部と接続されていない一端に手部(右手部43、左手部53)を含み、上記第2の姿勢は、上記足部の底面が床面に接触しているとともに、上記手部が上記足部の甲に接触している姿勢である。
上記の構成によれば、足部の甲に腕部の先端(すなわち手部)をつくことで、体幹部を前に傾けて前傾姿勢を保つことができる。脚部のうち、床面に直接触れている部分(すなわち、足部)の甲に手をつくことで、(膝や腿に手をつく場合と比較して)より安定的に固定された物体に支持されることになり、姿勢がより安定する。また、腕部の長さが短く体幹部を水平よりさらに前傾させないと床面に腕が届かないようなロボットに好適な姿勢である。さらに、(膝や腿に手をつく場合と比較して)体幹部の傾きを可能な限り水平に近づけることができ、頭部正面に備えた投影部の投影方向を前方床面に向けることが可能となる。これにより、床面に画像を投影する時、投影画像の台形のゆがみをより抑えることができる。なお、上記態様5または6に係るロボットにおいて、上記第2の姿勢が、上記投影部が投影機能を実行するときの姿勢である場合、該第2の姿勢は、より好ましくは、上記投影部によって投影される画像のひずみが、画像処理によって補正可能な範囲となる姿勢である。これにより、投影機能を適正に実行することが可能となる。
本発明の態様7に係るロボットは、上記態様1から4において、静止画または動画を投影先に投影する投影部を備え、上記第2の姿勢は、上記投影部が投影機能を実行するときの姿勢であり、上記投影部によって投影される画像のひずみが、画像処理によって補正可能な範囲となる姿勢である。上記の構成によれば、ロボットは、投影機能実行時に、台形のゆがみが補正可能な範囲に収まるような、第2の姿勢を保ち、投影機能を適正に実行することが可能となる。
本発明の態様8に係るロボットは、上記態様1から7において、上記複数の可動部のそれぞれに対して力を伝達することにより、各可動部を個別に駆動する1または複数の駆動部(40)を備え、上記駆動部は、上記第2の可動部が上記物体に接触するように、各可動部を駆動して、上記第2の姿勢を実現する。上記の構成によれば、駆動部の制御によって、ロボットを自動で第2の姿勢に移行させることができる。また、安定した第2の姿勢に移行した後は、駆動部への電源供給を停止させたとしても、ロボットは傾倒せずに静止していられるため、駆動部を備えているロボットに安定した第2の姿勢をとらせることは、省電力および回路保護の観点から特に効果が大きい。
本発明の態様9に係るロボットは、上記態様8において、上記駆動部(40)から上記可動部への力の伝達を許可または停止する駆動制御部(83)を備え、上記駆動制御部は、上記ロボットが上記第2の姿勢に移行した後、一部またはすべての上記可動部への力の伝達を停止する。
また、本発明の態様10に係るロボットでは、上記態様9において、上記駆動部はサーボモータであり、上記駆動制御部は、上記ロボットが上記第2の姿勢に移行した後、上記可動部を駆動する一部またはすべての駆動部のトルクをオフにする。これらの構成によれば、安定した第2の姿勢に移行後、駆動部への電流を停止するので、傾倒することなくロボットの姿勢を保つことができる。つまり、ロボットが所定の機能を実行している間、駆動部が電力を消費せずに済み、省電力および発熱回避による回路保護が達成される。
本発明の態様11に係るロボットでは、上記態様10において、上記第2の姿勢において、上記第2の可動部を介して該可動部を駆動する上記サーボモータにかかる荷重が、該サーボモータの摩擦負荷以下であること、および、上記第2の可動部を介して該可動部を駆動する上記サーボモータに対してかかる荷重の方向が、該サーボモータの回転方向とは異なること、の少なくともいずれか一方が満たされる。
上記の構成によれば、第2の可動部に力が加わってもその力がサーボモータの摩擦負荷を超えなければサーボモータが回転しないので、トルクを抜いても該第2の可動部は動かない。一方で、第2の可動部に力が加わってもその力が加わった方向が、サーボモータの回転方向でなければ、サーボモータが回転しないので、トルクを抜いても該第2の可動部は動かない。したがって、少なくともいずれか一方の条件を満たす第2の姿勢であれば、ロボットを静止させることができる。
本発明の態様12に係るロボットでは、上記態様9において、上記ロボットに入力された指示に応じて、該ロボットが実行すべき機能を特定する機能特定部(82)を備え、上記駆動制御部(83)は、上記機能特定部によって特定された機能に対応する姿勢を当該ロボットがとるように、上記駆動部(40)を制御するとともに、該姿勢が、上記駆動部から上記可動部への力の伝達を停止しても当該ロボットが安定する姿勢である場合に、当該ロボットが上記姿勢に移行した後、上記駆動部を停止させる。
上記の構成によれば、機能特定部によって実行すべき機能が特定されると、駆動制御部は、その特定された機能を実行するための姿勢をロボットがとるように、各駆動部を制御する。そして、移行後の姿勢が、ロボットが安定する姿勢である場合には、駆動制御部は、当該姿勢への移行が完了した後、上記駆動部を停止させる。このように、安定した第2の姿勢に移行後、駆動部への電流が停止されるので、傾倒することなくロボットの姿勢を上記第2の姿勢にて保つことができる。つまり、ロボットが所定の機能を実行している間(第2の姿勢をとっている間)、駆動部が電力を消費せずに済み、省電力および発熱回避による回路保護が達成される。
本発明の態様13に係るロボットの制御方法は、複数の可動部を備え、所定の機能を実行するときに、第1の姿勢とは異なる第2の姿勢に移行可能なロボットの制御方法であって、上記ロボットは、上記複数の可動部のそれぞれに対して力を伝達することにより、各可動部を個別に駆動する1または複数の駆動部を備え、上記制御方法は、上記ロボットに入力された指示に応じて、該ロボットが実行すべき機能を特定する機能特定ステップ(S103)と、上記機能特定ステップによって特定された機能に対応する姿勢を当該ロボットがとるように、上記駆動部を制御する駆動制御ステップ(S106)と、該姿勢が、上記駆動部から上記可動部への力の伝達を停止しても当該ロボットが安定する姿勢である場合に、当該ロボットが上記姿勢に移行した後、上記駆動部を停止させる駆動停止ステップ(S108)とを含む。上記の方法によれば、上記態様12と同様の効果を奏する。
本発明の各態様に係るロボットは、コンピュータによって実現してもよく、この場合には、コンピュータを上記ロボットが備える各部(ソフトウェア要素)として動作させることにより上記ロボットをコンピュータにて実現させるロボットの制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることにより、新しい技術的特徴を形成することができる。