(57)【特許請求の範囲】
【請求項１】
設置面部と、凸状の球面部とを含んで構成される筐体を有し、
前記筐体は、
前記球面部との交線が第１交円となる第１仮想平面を境にして、前記設置面部側の第１球面部と、前記第１交円の中心を通り前記第１交円に垂直な第１仮想軸を回転軸として前記第１球面部に対して回転可能に構成された球冠形状の第２球面部と、に分離されており、
前記第２球面部は、
前記第２球面部との交線が第２交円となり、前記第１仮想平面と平行でない第２仮想平面を境にして、前記第１球面部側の第３球面部と、前記第２交円の中心を通り前記第２交円に垂直な第２仮想軸を回転軸として前記第３球面部に対して回転可能に構成された球冠形状の第４球面部とに分離されている、
ロボット。
【請求項２】
前記第４球面部は、
前記第４球面部との交線が第３交円となり、前記第２仮想平面と平行でない第３仮想平面を境にして、前記第３球面部側の第５球面部と、前記第３交円の中心を通り前記第３交円に垂直な第３仮想軸を回転軸として前記第５球面部に対して回転可能に構成された球冠形状の第６球面部とに分離されている、
請求項１に記載のロボット。
【請求項３】
前記第１仮想軸を回転軸として前記第２球面部を前記第１球面部に対して回転させ、前記第２仮想軸を回転軸として前記第４球面部を前記第３球面部に対して回転させる駆動機構を、前記筐体内部に備える、
請求項１に記載のロボット。
【請求項４】
前記第４球面部に姿勢制御の対象である制御対象部位が設けられている、
請求項３に記載のロボット。
【請求項５】
前記制御対象部位を第１の姿勢状態から第２の姿勢状態に変移させる場合に、前記第１の姿勢状態における前記第１仮想軸の所定の基準状態からの回転角度である第１回転角度と、前記第１の姿勢状態における前記第２仮想軸の前記所定の基準状態からの回転角度である第２回転角度と、前記第２の姿勢状態における前記第１仮想軸の前記所定の基準状態からの回転角度である第３回転角度と、前記第２の姿勢状態における前記第２仮想軸の前記所定の基準状態からの回転角度である第４回転角度と、を特定し、
前記第１回転角度と前記第３回転角度とに基づいて前記第１の姿勢状態から前記第２の姿勢状態への姿勢の変移に伴う前記第１仮想軸の回転角度である第５回転角度を算出し、
前記第２回転角度と前記第４回転角度とに基づいて前記第１の姿勢状態から前記第２の姿勢状態への姿勢の変移に伴う前記第２仮想軸の回転角度である第６回転角度を算出し、
前記駆動機構が前記第２球面部を前記第１球面部に対して前記第５回転角度で回転し、前記第４球面部を前記第３球面部に対して前記第６回転角度で回転するように制御する制御部を、さらに備える、
請求項４に記載のロボット。
【請求項６】
前記制御部は、
前記球面部を球面とする仮想球体の中心を原点としたＸＹＺ直交座標のＸＹ平面に対する角度を第１姿勢パラメータ、Ｚ軸周りの角度を第２姿勢パラメータ、前記原点と前記制御対象部位とを結ぶ軸周りの角度を第３姿勢パラメータとするとき、
前記第１仮想軸の前記基準状態からの回転角度が前記第１回転角度と前記第３回転角度との間の値であり、前記第２仮想軸の前記基準状態からの回転角度が前記第２回転角度と前記第４回転角度との間の値であり、前記第１姿勢パラメータの値が前記第１の姿勢状態の前記第１姿勢パラメータの値と前記第２の姿勢状態の前記第１姿勢パラメータの値との間の値であり、前記第２姿勢パラメータの値が前記第１の姿勢状態の前記第２姿勢パラメータの値と前記第２の姿勢状態の前記第２姿勢パラメータの値との間の値であり、前記第３姿勢パラメータの値が前記第１の姿勢状態の前記第３姿勢パラメータの値と前記第２の姿勢状態の前記第３姿勢パラメータの値との間の値である第３の姿勢状態のうち、
前記第１の姿勢状態からの前記第１姿勢パラメータの変化量と、前記第１の姿勢状態からの前記第２姿勢パラメータの変化量と、前記第１の姿勢状態からの前記第３姿勢パラメータの変化量の比が、前記第１の姿勢状態から前記第２の姿勢状態への変化に伴う前記第１姿勢パラメータの変化量と、前記第１の姿勢状態から前記第２の姿勢状態への変化に伴う前記第２姿勢パラメータの変化量と、前記第１の姿勢状態から前記第２の姿勢状態への変化に伴う前記第３姿勢パラメータの変化量の比と同じ比である前記第３の姿勢状態を経由して、前記第１の姿勢状態から前記第２の姿勢状態に変移するように前記駆動機構を駆動させる、
請求項５に記載のロボット。
【請求項７】
前記第１の姿勢状態から変移を開始して前記第３の姿勢状態に到達するのに要する到達時間と、前記第１の姿勢状態から変移を開始して前記第３の姿勢状態に到達するのに要する到達時間の比が、前記第１姿勢パラメータと前記第２姿勢パラメータと前記第３姿勢パラメータのうちの前記第１の姿勢状態から前記第２の姿勢状態への変化に伴って変化する１の姿勢パラメータの前記第１の姿勢状態から前記第３の姿勢状態への変移に伴う変化量と、前記１の姿勢パラメータの前記第１の姿勢状態から前記第２の姿勢状態への変移に伴う変化量の比と同じ比となるように、前記第１の姿勢状態から前記第３の姿勢状態を経由して前記第２の姿勢状態に変移するように前記駆動機構を駆動させる、
請求項６に記載のロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットに関する。
【背景技術】
【０００２】
顔部を備えるロボットや、ネットワークカメラやディスプレイを備えるロボットが知られている。このようなロボットでは、顔部やネットワークカメラ、ディスプレイ部分（制御対象部位ともいう）を任意の方向に向けることが行われている（例えば、利用者を追従するように動作することが行われている）。
【０００３】
例えば、引用文献１には、カメラを左右（パン）や上下（チルト）方向に回転移動可能（姿勢制御ともいう）な回転カメラ装置が開示されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２５２６４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記開示の回転カメラ装置では、回転移動時に形状が変化する。そのため、回転カメラ装置は、設置環境によっては周りの設置物に干渉し、回転移動が妨げられ、高い自由度の回転移動ができなくなる場合があった。
【０００６】
１つの側面では、本発明は、高い自由度で姿勢を制御可能なロボットを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、ロボットが提供される。ロボットは、設置面部と、凸状の球面部とを含んで構成される筐体を有する。筐体は、球面部との交線が第１交円となる第１仮想平面を境にして、設置面部側の第１球面部と、第１交円の中心を通り第１交円に垂直な第１仮想軸を回転軸として第１球面部に対して回転可能に構成された球冠形状の第２球面部と、に分離されており、第２球面部は、第２球面部との交線が第２交円となり、第１仮想平面と平行でない第２仮想平面を境にして、第１球面部側の第３球面部と、第２交円の中心を通り第２交円に垂直な第２仮想軸を回転軸として第３球面部に対して回転可能に構成された球冠形状の第４球面部とに分離されている。
【発明の効果】
【０００８】
１側面によれば、高い自由度で姿勢を制御できる。
【図面の簡単な説明】
【０００９】
【図１】第１の実施形態のロボットの一例を説明するための図である。
【図２】第２の実施形態のロボットシステムの一例を説明するための図である。
【図３】第２の実施形態のロボットの構造を示す図（その１）である。
【図４】第２の実施形態のロボットの構造を示す図（その２）である。
【図５】第２の実施形態の情報処理装置のハードウェア構成の一例を示す図である。
【図６】第２の実施形態のロボットのハードウェア構成の一例を示す図である。
【図７】第２の実施形態のロボットシステムの機能構成の一例を示す図である。
【図８】第２の実施形態の制御対象部位の姿勢を説明するための図である。
【図９】第２の実施形態の姿勢制御情報の一例を示す図である。
【図１０】第２の実施形態の姿勢の変移態様を決定する変移態様決定処理の流れを示すフローチャートである。
【図１１】第２の実施形態の制御対象部位の姿勢の変移例を説明するための図（その１）である。
【図１２】第２の実施形態の制御対象部位の姿勢の変移例を説明するための図（その２）である。
【図１３】第２の実施形態の制御対象部位の姿勢の変移例を説明するための図（その３）である。
【図１４】第２の実施形態の制御対象部位の姿勢の変移例を説明するための図（その４）である。
【図１５】第２の実施形態の制御対象部位の姿勢の変移例を説明するための図（その５）である。
【図１６】第２の実施形態の制御対象部位の姿勢の変移例を説明するための図（その６）である。
【発明を実施するための形態】
【００１０】
以下、本実施の形態について図面を参照して説明する。
［第１の実施形態］
図１は、第１の実施形態のロボットの一例を説明するための図である。ロボット１は、筐体２を有する。筐体２は、ロボット１の制御に用いられる各種電子部品を格納する。
【００１１】
筐体２は、設置面部３と、凸状の球面部４とを含んで構成される。設置面部３は、非設置面（例えば、床や天井等）に設置される部分である。筐体２は、例えば、球面部４と平面状の設置面部３とで構成された部分球体（球欠ともいう）形状である。なお、筐体２は、球体形状であってもよい。この場合には、球面部４の一部を設置面として機能する設置面部３とすればよい。
【００１２】
球面部４は、球面部４との交線が第１交円５となる第１仮想平面を境にして、第１球面部６と、第２球面部７とに分離されている。第１球面部６は、球面部４を第１仮想平面で分割したうちの設置面部３側の部分である。第２球面部７は、球面部４を第１仮想平面で分割したうちの設置面部３側ではない部分である。第２球面部７は、球冠形状である。第２球面部７は、第１交円５の中心を通り第１交円５に垂直な第１仮想軸５ａを回転軸として第１球面部６（設置面部３に対してともいう）に対して回転可能（回転自在ともいう）に構成されている。
【００１３】
第２球面部７は、第２球面部７との交線が第２交円８となり、第１仮想平面と平行でない第２仮想平面を境にして、第３球面部９と、第４球面部１０とに分離されている。第３球面部９は、第２球面部７を第２仮想平面で分割したうちの第１球面部６側の部分である。第４球面部１０は、第２球面部７を第２仮想平面で分割したうちの第１球面部６側ではない部分である。第４球面部１０は、球冠形状である。第４球面部１０は、第２交円８の中心を通り第２交円８に垂直な第２仮想軸８ａを回転軸として第３球面部９（第１球面部６または設置面部３に対してともいう）に対して回転可能に構成されている。第１仮想平面と第２仮想平面とが平行ではないので、第１交円５と第２交円８とは平行ではない。そのため、第１仮想軸５ａと、第２仮想軸８ａとは、異なる傾斜方向となっている。
【００１４】
以上が第１の実施形態のロボット１である。このようにロボット１では、第４球面部１０を構成要素とする第２球面部７が第１仮想軸５ａを回転軸として第１球面部６に対して回転可能に構成されており、第４球面部１０が第２仮想軸８ａを回転軸として第３球面部９に対して回転可能に構成されている。すなわち、ロボット１では、第４球面部１０が、設置面部３（第１球面部６ともいう）に対して第１仮想軸５ａ及び第２仮想軸８ａの２つの異なる回転軸により回転可能に構成されている。
【００１５】
このようにロボット１では、異なる傾斜方向となる（向きが異なるともいう）第１仮想軸５ａと第２仮想軸８ａとを回転軸として第４球面部１０が回転可能に構成されているため、第４球面部１０の姿勢（ロボット１の姿勢、または第４球面部１０内の所定部分の姿勢ともいう）を高い自由度で制御できる。したがって、ロボット１は、例えば、第４球面部１０内に顔部やネットワークカメラやディスプレイ等を配置することで、顔部やネットワークカメラやディスプレイ等について自由度の高い姿勢制御（具体的には、方向や回転角度（向きまたは傾きともいう）等の制御）を実現できる。
【００１６】
さらには、ロボット１の第２球面部７及び第４球面部１０は、球冠形状であるため、第１仮想軸５ａと第２仮想軸８ａとを回転軸として第４球面部１０を回転させた場合であっても、筐体２の形状が変化することがない。そのため、ロボット１は、第４球面部１０を回転させた場合に形状が変化することにより、周りの設置物に干渉することがないので、第４球面部１０の回転が妨げられることがなく、設置環境によらず第４球面部１０の姿勢を高い自由度で制御できる。
【００１７】
［第２の実施形態］
次により具体的な実施形態としてロボットシステムについて説明する。図２は、第２の実施形態のロボットシステムの全体概要例を示す図である。
【００１８】
ロボットシステム５０は、ロボット２００の姿勢を制御するシステムである。ロボットシステム５０は、情報処理装置１００と、情報処理装置１００と通信可能に接続するロボット２００とを含んで構成される。
【００１９】
ロボット２００は、駆動機構（例えば、サーボモータ）を有し、駆動機構の駆動によって姿勢を変移可能に構成されたロボットである。具体的には、ロボット２００は、目を有する顔部を有し、ロボット２００の姿勢として、顔部の姿勢（具体的には、方向や回転角度（向きまたは傾きともいう）等の制御）を変移可能に構成されている。ロボット２００は、情報処理装置１００からの指示に基づいた態様で駆動機構を駆動させることで顔部の姿勢を変移させる。
【００２０】
情報処理装置１００は、ロボット２００の姿勢を統括的に制御する装置である。情報処理装置１００は、ロボット２００を第１の姿勢状態（現在の姿勢状態または移動前の姿勢状態ともいう）から第２の姿勢状態（移動後の姿勢状態ともいう）に変移させる際、姿勢状態の変移に要する駆動機構の駆動量を特定し、駆動機構の駆動態様を決定する。そして、情報処理装置１００は、ロボット２００に決定した駆動態様による駆動量の駆動を指示することにより、ロボット２００の第１の姿勢状態から第２の姿勢状態への姿勢状態の変移を制御する。
【００２１】
次にロボット２００の構造についてより具体的に説明する。図３は、第２の実施形態のロボットの構造を示す図（その１）である。図４は、第２の実施形態のロボットの構造を示す図（その２）である。
【００２２】
図３（１）は、ロボット２００の側面図であり、図３（２）は、ロボット２００の正面図であり、図４は、ロボット２００の筐体の分解斜視図である。
【００２３】
ロボット２００は、部分球体形状（球欠ともいう）の筐体２０１を有する。筐体２０１は、非設置面に設置される平面状の設置面部２０２と、凸状の球面部２０３とで構成された部分球体（球欠ともいう）形状である。筐体２０１の内部には、図示しない各種電子部品（例えば、駆動機構）が格納されている。
【００２４】
球面部２０３は、第１球面部２０４と、第２球面部２０５とに分離されている。第２球面部２０５は、第３球面部２０６と、第４球面部２０７とに分離されている。第４球面部２０７は、第５球面部２０８と、第６球面部２０９とに分離されている。すなわち、筐体２０１の球面部２０３は、第１球面部２０４と、第３球面部２０６と、第５球面部２０８と、第６球面部２０９とで構成されている。
【００２５】
第１球面部２０４は、球面部２０３との交線が第１交円２１０となる第１仮想平面を境にして、球面部２０３を２つに分割したうちの設置面部２０２側の部分である。
【００２６】
第２球面部２０５は、第１仮想平面を境にして、球面部２０３を２つに分割したうちの設置面部２０２側ではない部分である。第２球面部２０５は、球冠形状である。第２球面部２０５は、第１交円２１０の中心を通り第１交円２１０に垂直な第１仮想軸２１０ａを回転軸として第１球面部２０４（設置面部２０２に対してともいう）に対して回転可能に構成されている。
【００２７】
第３球面部２０６は、第２球面部２０５との交線が第２交円２１１となり、第１仮想平面と平行でない第２仮想平面を境にして、第２球面部２０５を２つに分割したうちの第１球面部２０４側（設置面部２０２側ともいう）の部分である。
【００２８】
第４球面部２０７は、第２仮想平面を境にして、第２球面部２０５を２つに分割したうちの第１球面部２０４側（設置面部２０２側ともいう）ではない部分である。第４球面部２０７は、球冠形状である。第４球面部２０７は、第２交円２１１の中心を通り第２交円２１１に垂直な第２仮想軸２１１ａを回転軸として第３球面部２０６（第１球面部２０４または設置面部２０２に対してともいう）に対して回転可能に構成されている。第１仮想平面と第２仮想平面とが平行ではないので、第１交円２１０と第２交円２１１とは平行ではない。そのため、第１仮想軸２１０ａと、第２仮想軸２１１ａとは、異なる傾斜方向となっている。
【００２９】
第５球面部２０８は、第４球面部２０７との交線が第３交円２１２となり、第２仮想平面と平行でない第３仮想平面を境にして、第４球面部２０７を２つに分割したうちの第３球面部２０６側（設置面部２０２側ともいう）の部分である。
【００３０】
第６球面部２０９は、第３仮想平面を境にして、第４球面部２０７を２つに分割したうちの第３球面部２０６側（設置面部２０２側ともいう）ではない部分である。第６球面部２０９は、球冠形状である。第６球面部２０９は、顔部を有する。第６球面部２０９は、ロボット２００における姿勢制御の対象となる制御対象部位が設けられている部分である。制御対象部位は、例えば、顔部の中心（目と目の間ともいう）に設けられている。第６球面部２０９は、第３交円２１２の中心を通り第３交円２１２に垂直な第３仮想軸２１２ａを回転軸として第５球面部２０８（第１球面部２０４または設置面部２０２に対してともいう）に対して回転可能に構成されている。第２仮想平面と第３仮想平面とが平行ではないので、第２交円２１１と第３交円２１２とは平行ではない。そのため、第２仮想軸２１１ａと、第３仮想軸２１２ａとは、異なる傾斜方向となっている。
【００３１】
このようにロボット２００では、第６球面部２０９を構成要素とする第２球面部２０５が第１仮想軸２１０ａを回転軸として第１球面部２０４に対して回転可能に構成されている。また、ロボット２００では、第６球面部２０９を構成要素とする第４球面部２０７が第２仮想軸２１１ａを回転軸として第１球面部２０４に対して回転可能に構成されている。ロボット２００では、第６球面部２０９が第３仮想軸２１２ａを回転軸として第１球面部２０４に対して回転可能に構成されている。
【００３２】
すなわち、ロボット２００では、第６球面部２０９（具体的には、制御対象部位）が、第１球面部２０４（設置面部２０２ともいう）に対して第１仮想軸２１０ａ、第２仮想軸２１１ａ、及び第３仮想軸２１２ａの３つの回転軸により回転可能に構成されている。これによりロボット２００は、第６球面部２０９の姿勢（ロボット２００の姿勢、または制御対象部位の姿勢ともいう）を高い自由度で制御できる。
【００３３】
さらには、ロボット２００の第２球面部２０５、第４球面部２０７及び第６球面部２０９は、球冠形状であるため、第１仮想軸２１０ａと第２仮想軸２１１ａと第３仮想軸２１２ａを回転軸として第６球面部２０９を回転させた場合であっても、筐体２０１の形状が変化することがない。そのため、ロボット２００は、第６球面部２０９を回転させた場合に形状が変化することにより、周りの設置物に干渉することがないので、第６球面部２０９の回転が妨げられることがなく、設置環境によらず第６球面部２０９の姿勢を高い自由度で制御できる。
【００３４】
次に情報処理装置１００のハードウェア構成について説明する。図５は、第２の実施形態の情報処理装置のハードウェア構成の一例を示す図である。
【００３５】
情報処理装置１００は、プロセッサ１０１によって装置全体が制御されている。プロセッサ１０１には、メモリ１０２と複数の周辺機器が接続されている。プロセッサ１０１は、マルチプロセッサであってもよい。
【００３６】
プロセッサ１０１は、例えばＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、またはＤＳＰ（Digital Signal Processor）である。プロセッサ１０１の機能の少なくとも一部を、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array）、ＰＬＤ（Programmable Logic Device）等の電子回路で実現してもよい。
【００３７】
メモリ１０２は、情報処理装置１００の主記憶装置として使用される。メモリ１０２には、プロセッサ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ１０２には、プロセッサ１０１による処理に必要な各種データが格納される。メモリ１０２としては、ＲＡＭ（Random Access Memory）等の揮発性の半導体記憶装置が使用される。
【００３８】
周辺機器としては、ＨＤＤ（Hard Disk Drive）１０３、グラフィック処理装置１０４、入力インタフェース１０５、光学ドライブ装置１０６、機器接続インタフェース１０７及び通信インタフェース１０８がある。
【００３９】
ＨＤＤ１０３は、内蔵したディスクに対して、磁気的にデータの書き込み及び読み出しを行う。ＨＤＤ１０３は、情報処理装置１００の補助記憶装置として使用される。ＨＤＤ１０３には、ＯＳのプログラム、アプリケーションプログラム、及び各種データが格納される。なお補助記憶装置としては、フラッシュメモリ等の不揮発性の半導体記憶装置を使用することもできる。
【００４０】
グラフィック処理装置１０４には、モニタ１０４ａが接続されている。グラフィック処理装置１０４は、プロセッサ１０１からの命令に従って、画像をモニタ１０４ａの画面に表示させる。モニタ１０４ａとしては、ＣＲＴ（Cathode Ray Tube）を用いた表示装置や液晶表示装置等がある。
【００４１】
入力インタフェース１０５には、キーボード１０５ａとマウス１０５ｂとが接続されている。入力インタフェース１０５は、キーボード１０５ａやマウス１０５ｂから送られてくる信号をプロセッサ１０１に送信する。
【００４２】
なお、マウス１０５ｂは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボール等がある。
【００４３】
光学ドライブ装置１０６は、レーザ光等を利用して、光ディスク１０６ａに記録されたデータの読み取りを行う。光ディスク１０６ａは、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク１０６ａには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（Re Writable）等がある。
【００４４】
機器接続インタフェース１０７は、情報処理装置１００に周辺機器を接続するための通信インタフェースである。例えば機器接続インタフェース１０７には、メモリ装置１０７ａやメモリリーダライタ１０７ｂを接続することができる。
【００４５】
メモリ装置１０７ａは、機器接続インタフェース１０７との通信機能を搭載した記録媒体である。メモリリーダライタ１０７ｂは、メモリカード１０７ｃへのデータの書き込み、またはメモリカード１０７ｃからのデータの読み出しを行う装置である。メモリカード１０７ｃは、カード型の記録媒体である。
【００４６】
通信インタフェース１０８は、ネットワークに接続されている。通信インタフェース１０８は、ネットワークを介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
【００４７】
以上のようなハードウェア構成によって、本発明の処理機能を実現することができる。情報処理装置１００は、例えばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、本発明の処理機能を実現する。情報処理装置１００に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。
【００４８】
例えば、情報処理装置１００に実行させるプログラムをＨＤＤ１０３に格納しておくことができる。プロセッサ１０１は、ＨＤＤ１０３内のプログラムの少なくとも一部をメモリ１０２にロードし、プログラムを実行する。また情報処理装置１００に実行させるプログラムを、光ディスク１０６ａ、メモリ装置１０７ａ、メモリカード１０７ｃ等の可搬型記録媒体に記録しておくこともできる。
【００４９】
可搬型記録媒体に格納されたプログラムは、例えばプロセッサ１０１からの制御により、ＨＤＤ１０３にインストールされた後、実行可能となる。またプロセッサ１０１が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
【００５０】
次にロボット２００の筐体２０１内部に配置されるハードウェアについて説明する。図６は、第２の実施形態のロボットのハードウェア構成の一例を示す図である。
【００５１】
ロボット２００は、プロセッサ２２０によって装置全体が制御されている。プロセッサ２２０には、メモリ２２１と複数の周辺機器が接続されている。プロセッサ２２０は、マルチプロセッサであってもよい。
【００５２】
プロセッサ２２０は、例えばＣＰＵ、ＭＰＵ、またはＤＳＰである。プロセッサ２２０の機能の少なくとも一部を、ＡＳＩＣ、ＦＰＧＡ、ＰＬＤ等の電子回路で実現してもよい。
【００５３】
メモリ２２１は、ロボット２００の主記憶装置として使用される。メモリ２２１には、プロセッサ２２０に実行させるＯＳのプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ２２１には、プロセッサ２２０による処理に必要な各種データが格納される。メモリ２２１としては、ＲＡＭ等の揮発性の半導体記憶装置が使用される。
【００５４】
周辺機器としては、駆動機構２２２及び通信インタフェース２２３がある。駆動機構２２２は、第１仮想軸２１０ａを回転軸として第２球面部２０５を第１球面部２０４に対して回転（制御対象部位を第１球面部２０４に対して回転）させる機構である。また、駆動機構２２２は、第２仮想軸２１１ａを回転軸として第４球面部２０７を第１球面部２０４に対して回転（制御対象部位を第１球面部２０４に対して回転）させる機構である。また、駆動機構２２２は、第３仮想軸２１２ａを回転軸として第６球面部２０９を第１球面部２０４に対して回転（制御対象部位を第１球面部２０４に対して回転）させる機構である。
【００５５】
駆動機構２２２は、例えば、第１のサーボモータと、第２のサーボモータと、第３のサーボモータと、を含んで構成される。駆動機構２２２は、第１のサーボモータのモータを回転させることにより第１仮想軸２１０ａを回転軸として第２球面部２０５を第１球面部２０４に対して回転させる。また、駆動機構２２２は、第２のサーボモータのモータを回転させることにより第２仮想軸２１１ａを回転軸として第４球面部２０７を第３球面部２０６に対して回転させる。また、駆動機構２２２は、第３のサーボモータのモータを回転させることにより第３仮想軸２１２ａを回転軸として第６球面部２０９を第５球面部２０８に対して回転させる。
【００５６】
通信インタフェース２２３は、ネットワークに接続されている。通信インタフェース２２３は、ネットワークを介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。なお、ロボット２００は、図示しないセンサ群を備えることができる。センサ群に含まれるセンサとしては、例えば、人を感知する人感センサなどがある。以上のようなハードウェア構成によって、本発明の処理機能を実現することができる。
【００５７】
次に情報処理装置１００及びロボット２００が備える機能について説明する。図７は、第２の実施形態のロボットシステムの機能構成の一例を示す図である。まず情報処理装置１００の機能構成について説明する。情報処理装置１００は、処理部１１０と、記憶部１１１と、通信部１１２とを有する。
【００５８】
処理部１１０は、第６球面部２０９に位置する制御対象部位を第１の姿勢状態から第２の姿勢状態に変移させる際、姿勢状態の変移に要する制御対象部位の第１仮想軸２１０ａ回りの回転角度（回転変化量、回転移動量ともいう）と、第２仮想軸２１１ａ回りの回転角度と、第３仮想軸２１２ａ回りの回転角度を特定する。その後、処理部１１０は、特定した各回転軸回りの回転角度だけ制御対象部位を回転軸回りで回転させる際の回転態様を決定する。そして、処理部１１０は、決定した回転態様に基づく駆動態様をロボット２００に通知して、ロボット２００に決定した駆動態様で駆動機構２２２を駆動させることにより回転態様による制御対象部位の変移を実行させる。
【００５９】
記憶部１１１は、姿勢を変移させる際に要する各回転軸回りの制御対象部位の回転角度の特定、及び回転態様の決定に要する情報（姿勢制御情報ともいう）を記憶する。記憶部１１１が記憶する姿勢制御情報については、後で図９を用いて詳細に説明する。通信部１１２は、ロボット２００との通信を制御する。
【００６０】
次にロボット２００の機能構成について説明する。ロボット２００は、処理部２３０と、通信部２３１とを有する。処理部２３０は、受け付けた駆動態様で駆動機構２２２を駆動させて、情報処理装置１００が決定した回転態様で制御対象部位を第１の姿勢から第２の姿勢へと変移させる。通信部２３１は、情報処理装置１００との通信を制御する。
【００６１】
次に制御対象部位の姿勢について説明する。図８は、第２の実施形態の制御対象部位の姿勢を説明するための図である。
【００６２】
なお、ここでは図８（１）に示すように球面部２０３を球面とする仮想球体（球状構造ともいう）の中心を原点Ｏとし、右手座標系となるようにＸ軸を左右方向にとり、Ｙ軸を紙面奥行方向にとり、Ｚ軸を上下方向にとったＸＹＺ軸からなる三次元直交座標を設定した場合における制御対象部位の姿勢の変移について説明する。なおここではＸ軸は右方向が正方向となり、Ｙ軸は紙面奥方向が正方向となり、Ｚ軸は上方向が正方向となるものとする。
【００６３】
なお、制御対象部位の第１の姿勢状態における座標をＴ（Ｔｘ，Ｔｙ，Ｔｚ）とし、制御対象部位の第２の姿勢状態における座標をＴ´（Ｔ´ｘ，Ｔ´ｙ，Ｔ´ｚ）とする。
【００６４】
また、第１仮想軸２１０ａの正のＺ軸方向の単位ベクトルをＡ１（Ａ１ｘ，Ａ１ｙ，Ａ１ｚ）とし、第２仮想軸２１１ａの正のＺ軸方向の単位ベクトルをＡ２（Ａ２ｘ，Ａ２ｙ，Ａ２ｚ）とし、第３仮想軸２１２ａの正のＺ軸方向の単位ベクトルをＡ３（Ａ３ｘ，Ａ３ｙ，Ａ３ｚ）とする。なお、各単位ベクトルは右手回りを正の回転であるものとする。
【００６５】
また、制御対象部位の姿勢は、原点と制御対象部位を結ぶ軸回りを基準状態から回転させた角度（ロール（Roll）ともいう）と、制御対象部位のＸＹ平面からの角度（ピッチ（Pitch）ともいう）と、制御対象部位のＸ軸を基準としたＺ軸回りの角度（ヨー（Yaw）ともいう）とで表すものとする。
【００６６】
ところで、全ての回転軸は、原点を通るため、座標Ｔにある状態からそれぞれの回転軸回りを任意の回転角度だけ回転させたときの制御対象部位の座標Ｔ´は、座標Ｔを複数の回転軸回りで回転移動させた結果として表現できる。
【００６７】
ここで座標Ｔを第１仮想軸２１０ａ回りで回転移動させる回転角度をθ１、第２仮想軸２１１ａ回りで回転移動させる回転角度（回転角度、回転移動量ともいう）をθ２、第３仮想軸２１２ａ回りで回転移動させる回転角度をθ３とすると、各回転軸回りの回転クォータニオンは、以下の式（１）で表すことができる。
【００６８】
【数１】
0006905203.tif 000002
【００６９】
したがって、制御対象部位が座標Ｔに位置する状態から第１仮想軸２１０ａ回りをθ１回転させ、第２仮想軸２１１ａ回りをθ２回転させ、第３仮想軸２１２ａ回りθ３回転させたときの制御対象部位の回転移動後の座標Ｔ´は、制御対象部位の座標Ｔを用いて以下の式（２）で算出できる。
【００７０】
【数２】
0006905203.tif 000003
【００７１】
一方で、制御対象部位が座標Ｔから座標Ｔ´へと回転移動した際の姿勢パラメータ「ピッチ」の変化量は、座標ＴをＸＹ平面上に投射した座標Ｐ（Ｔｘ，Ｔｙ，０）と、座標Ｔ´をＸＹ平面上に投射した座標Ｐ´（Ｔ´ｘ，Ｔ´ｙ，０）とするとき∠Ｔ´ＯＰ´と∠ＴＯＰの差分により算出できる。具体的には、以下の式（３）で算出できる。
【００７２】
【数３】
0006905203.tif 000004
【００７３】
また、制御対象部位が座標Ｔから座標Ｔ´へと回転移動した際の姿勢パラメータ「ヨー」の変化量は、座標ＰをＸ軸上に投射した座標Ｑ（０，Ｔｙ，０）と、座標Ｐ´をＸ軸上に投射した座標Ｑ´（０，Ｔ´ｙ，０）とするとき∠Ｐ´ＯＱ´と∠ＰＯＱの差分により算出できる。具体的には、以下の式（４）で算出できる。
【００７４】
【数４】
0006905203.tif 000005
【００７５】
ここでＯＴ⊥ＯＮとなるＸＹ平面上の原点から距離が１である座標Ｎ（Ｎｘ，Ｎｙ，０）とすると、座標Ｎは、Ｔｘ、Ｔｙを用いて以下の式（５）で表すことができる。
【００７６】
【数５】
0006905203.tif 000006
【００７７】
また、同様にＯＴ´⊥ＯＭとなるＸＹ平面上の原点からの距離が１である座標Ｍ（Ｍｘ，Ｍｙ，０）とすると、座標Ｍは、Ｔ´ｘ、Ｔ´ｙを用いて以下の式（６）で表すことができる。
【００７８】
【数６】
0006905203.tif 000007
【００７９】
そして、座標Ｔから座標Ｔ´への回転移動と同じ回転移動を座標Ｎにした際に座標Ｎが位置する座標を座標Ｎ´とすると、座標Ｔから座標Ｔ´への移動した際の姿勢パラメータ「ロール」の変化量は、ＯＮ´とＯＭにより形成される角度により算出できる。具体的には、以下の式（７）で算出できる。
【００８０】
【数７】
0006905203.tif 000008
【００８１】
なお、座標Ｎ´は、座標Ｔから座標Ｔ´への回転移動と同様にして制御対象部位の座標Ｎを用いて以下の式（８）で算出できる。
【００８２】
【数８】
0006905203.tif 000009
【００８３】
すなわち、回転移動後の座標Ｎ´の各値は、座標Ｔの各値及び単位ベクトルを用いて表すことができる。
【００８４】
これによれば、ある状態（基準状態ともいう）における各回転軸の単位ベクトルと、制御対象部位の座標及び当該座標における姿勢を与えれば、当該基準状態から各回転軸回りを任意の回転角度で回転移動させたときの制御対象部位の座標、姿勢を特定できる。すなわち、ロボット２００において制御対象部位が取り得る全ての姿勢を、基準状態における制御対象部位の姿勢から各回転軸回りを所定の回転角度だけ回転させた後の姿勢として規定することができる。
【００８５】
なお、以下では、図８（２）に示すように、ＸＹＺ座標を設定し、基準状態において制御対象部位は座標Ｔ（Ｃｏｓ１５．７°，０，Ｓｉｎ１５．７°）に位置し、制御対象部位の姿勢（ロール，ピッチ，ヨー）が（０，１５．７，０）であるものとする。また、基準状態を基準（すなわち、回転角度＝０）とした第１仮想軸２１０ａ回りの回転角度をＡ１、第２仮想軸２１１ａ回りの回転角度をＡ２、第３仮想軸２１２ａ回りの回転角度をＡ３とする。
【００８６】
また、基準状態における第１仮想軸２１０ａの単位ベクトルは、（Ｃｏｓ９０°，０，Ｓｉｎ９０°）であり、第２仮想軸２１１ａの単位ベクトルは、（Ｃｏｓ６０°，０，Ｓｉｎ６０°）であり、第３仮想軸２１２ａの単位ベクトルは、（Ｃｏｓ３０°，０，Ｓｉｎ３０°）であるものとする。
【００８７】
次に記憶部１１１が記憶する姿勢を変移させる際に要する各回転軸回りの制御対象部位の回転角度の特定、及び回転態様の決定に要する情報（姿勢制御情報ともいう）について説明する。図９は、第２の実施形態の姿勢制御情報の一例を示す図である。
【００８８】
姿勢制御情報は、姿勢制御に用いられる情報である。姿勢制御情報は、制御対象部位の姿勢と、基準状態からの各回転軸回りの回転角度（基準状態を基準（回転角度＝０）とした各回転軸回りの回転角度ともいう）とを対応付けた情報である。姿勢制御情報は、前述した基準状態における制御対象部位の姿勢から各回転軸回りをあらゆる回転角度で回転移動させた場合についての姿勢を算出することによって作成された情報である。姿勢制御情報は、ロールテーブルと、ピッチテーブルと、ヨーテーブルとを含む。
【００８９】
ロールテーブルは、制御対象部位の姿勢パラメータ「ロール」の値と、各回転軸の基準状態からの回転角度（基準状態から各回転軸回りを回転移動させた回転角度ともいう）とを対応付けたテーブルである。ピッチテーブルは、制御対象部位の姿勢パラメータ「ピッチ」の値と、各回転軸の基準状態からの回転角度（基準状態から各回転軸回りを回転移動させた回転角度ともいう）とを対応付けたテーブルである。ヨーテーブルは、制御対象部位の姿勢パラメータ「ヨー」の値と、各回転軸の基準状態からの回転角度（基準状態から各回転軸回りを回転移動させた回転角度ともいう）とを対応付けたテーブルである。
【００９０】
なお、当該実施形態においては、第１仮想軸２１０ａ回りの回転移動によってはピッチとロールが変移しない。したがって、第２仮想軸２１１ａ及び第３仮想軸２１２ａの基準状態からの回転角度によって特定されるピッチとロールとヨーの値のうち、ヨーの値について第１仮想軸２１０ａの基準状態からの回転角度に基づいて補正（具体的には、第１仮想軸２１０ａの基準状態からの回転角度を加算）することで基準状態から各回転軸回りを回転移動させた回転角度に応じた姿勢となる。
【００９１】
そこで、本実施形態では、ロールテーブルを制御対象部位の姿勢パラメータ「ロール」の値と、第２仮想軸２１１ａ及び第３仮想軸２１２ａの基準状態からの回転角度とを対応付けたテーブルとしている。また、ピッチテーブルを、制御対象部位の姿勢パラメータ「ピッチ」の値と、第２仮想軸２１１ａ及び第３仮想軸２１２ａの基準状態からの回転角度とを対応付けたテーブルとしている。ヨーテーブルを、制御対象部位の姿勢パラメータ「ヨー」の値と、第２仮想軸２１１ａ及び第３仮想軸２１２ａの基準状態からの回転角度とを対応付けたテーブルとしている。
【００９２】
例えば、姿勢制御情報によれば、回転角度Ａ１が「３０」であり、回転角度Ａ２が「６０」であり、回転角度Ａ３が「−３０」である場合には、情報処理装置１００は、ロールの値が「−３．１６３」であり、ピッチの値が「２４．４０７」であり、ヨーの値が「−３４．６９」を「３０」で補正した「−４．６９」であることを特定できる。
【００９３】
このような姿勢制御情報によれば、姿勢制御情報を参照することにより、情報処理装置１００は、基準状態からの各回転軸の回転角度に基づいて制御対象部位の姿勢（具体的にはロール、ピッチ、ヨー）を特定できる。また、姿勢制御情報を参照することにより、情報処理装置１００は、制御対象部位の姿勢に基づいて基準状態からの各回転軸の回転角度を特定できる。
【００９４】
なお、情報処理装置１００は、姿勢制御情報を、姿勢状態の変移が行われる毎に姿勢状態の変移に応じて移動後の姿勢状態を基準状態（具体的には、Ａ１＝０、Ａ２＝０、Ａ３＝０）とした情報に差し変えてもよい。なお、姿勢制御情報は、前述した基準状態における制御対象部位の姿勢から各回転軸回りをあらゆる回転角度で回転させた場合についての姿勢を算出することによって作成されることに限らない。例えば、姿勢制御情報は、基準状態における制御対象部位の姿勢から各回転軸回りをあらゆる回転角度で回転させた状態の姿勢を実際に測定することで作成されるものであってもよい（すなわち、実測値により作成されるものであってもよい）。
【００９５】
次に姿勢の変移態様を決定する処理について説明する。図１０は、第２の実施形態の姿勢の変移態様を決定する変移態様決定処理の流れを示すフローチャートである。
【００９６】
変移態様決定処理は、移動後の姿勢（第２の姿勢状態（移動後の姿勢状態ともいう）の姿勢ともいう）が指定された場合に情報処理装置１００が実行する処理である。情報処理装置１００は、変移態様決定処理で、第１の姿勢状態（移動前の姿勢状態または現在の姿勢状態ともいう）から第２の姿勢状態へと姿勢を変移させる際の変移態様を決定する。第２の姿勢状態の姿勢は、例えば、情報処理装置１００の操作者によって入力されるものであってもよいし、各種センサー（例えば、人感センサー）による検出結果によって決定されるものであってもよい。
【００９７】
［ステップＳ１］処理部１１０は、姿勢制御情報を参照して、指定された第２の姿勢状態の姿勢に基づいて、第２の姿勢状態における各回転軸の基準状態からの回転角度（第２の姿勢状態における回転角度Ａ１，Ａ２，Ａ３ともいう）を特定する。
【００９８】
［ステップＳ２］処理部１１０は、第１の姿勢状態における各回転軸の基準状態からの回転角度（第１の姿勢状態における回転角度Ａ１，Ａ２，Ａ３ともいう）を特定する。例えば、処理部１１０は、ロボット２００のサーボモータの状態に関する情報を取得して各回転軸の基準状態からの回転角度を特定する。なお、処理部１１０は、記憶部１１１において現在の各回転軸の基準状態からの回転角度をテーブル等で管理することにより、記憶部１１１が記憶する情報に基づいて第１の姿勢状態における各回転軸の基準状態からの回転角度を特定するものであってもよい。
【００９９】
［ステップＳ３］処理部１１０は、第１の姿勢状態における姿勢（具体的には各姿勢パラメータの値）を特定する。
【０１００】
［ステップＳ４］処理部１１０は、第１の姿勢状態から第２の姿勢状態への変移に伴う各姿勢パラメータ（具体的には、ロール、ピッチ、ヨー）の変化量を特定する。すなわち、処理部１１０は、第１の姿勢状態から第２の姿勢状態となるのに各姿勢パラメータをどれだけ変化させるかを特定する。
【０１０１】
［ステップＳ５］処理部１１０は、第１の姿勢状態から第２の姿勢状態への変移に伴う各姿勢パラメータの変化量（すなわち、ロールの変化量：ピッチの変化量：ヨーの変化量）の比を特定する。具体的には、処理部１１０は、ロールの変化量（第２の姿勢状態のロールの値−第１の姿勢状態のロールの値）：ピッチの変化量（第２の姿勢状態のピッチの値−第１の姿勢状態のピッチの値）：ヨーの変化量（第２の姿勢状態のヨーの値−第１の姿勢状態のヨーの値）を特定する。
【０１０２】
［ステップＳ６］処理部１１０は、第１の姿勢状態から第２の姿勢状態への変移に伴う各回転軸の回転角度を特定する（第２の姿勢状態における各回転軸の第１の姿勢状態を基準とした回転角度ともいう）。具体的には、処理部１１０は、第２の姿勢状態における各回転軸の基準状態からの回転角度と、第１の姿勢状態における各回転軸の基準状態からの回転角度との差分により、第１の姿勢状態から第２の姿勢状態への変移に伴って回転させる各回転軸の回転角度を特定する。
【０１０３】
［ステップＳ７］処理部１１０は、第１の姿勢状態から第２の姿勢状態へと変移する過程で経由する姿勢状態を決定する。処理部１１０は、第１の姿勢状態からの各姿勢パラメータの変化量の比が、第１の姿勢状態から第２の姿勢状態への変移に伴う各姿勢パラメータの変化量の比と一致する姿勢状態を経由する姿勢状態と特定する。
【０１０４】
例えば、まず、処理部１１０は、回転角度Ａ１，Ａ２，Ａ３が、第１の姿勢状態における回転角度Ａ１，Ａ２，Ａ３と第２の姿勢状態におけるＡ１，Ａ２，Ａ３の間の値である姿勢状態における各姿勢パラメータの値を、姿勢制御情報を参照して特定する。そして、処理部１１０は、特定した姿勢状態のうち各姿勢パラメータが、第１の姿勢状態における各姿勢パラメータと、第２の姿勢状態における各姿勢パラメータの間の値である姿勢状態を抽出する。そして、処理部１１０は、抽出した姿勢状態のうち第１の姿勢状態からの変移に伴う各姿勢パラメータの変化量の比が、第１の姿勢状態から第２の姿勢状態への変移に伴う各姿勢パラメータの変化量の比と一致する姿勢状態を経由する姿勢状態として特定する。
【０１０５】
なお、経由する姿勢状態を複数特定した場合には、処理部１１０は、例えば、各姿勢パラメータの値が第１の姿勢状態における各姿勢パラメータの値と最も近い姿勢状態を１番目に経由する姿勢状態と特定する。そして、処理部１１０は、回転角度Ａ１，Ａ２，Ａ３が、１番目に経由する姿勢状態における回転角度Ａ１，Ａ２，Ａ３と第２の姿勢状態における回転角度Ａ１，Ａ２，Ａ３の間の値である姿勢状態のうち、各姿勢パラメータの値が１番目に経由する姿勢状態の各姿勢パラメータの値の次に第１の姿勢状態における各姿勢パラメータの値に近い姿勢状態を２番目に経由する姿勢状態と特定する。その後、同様にして処理部１１０は、３番目に経由する姿勢状態、４番目に経由する姿勢状態と次々に決定していけばよい。
【０１０６】
なお、上記の第１の姿勢状態から第２の姿勢状態へと変移する際に経由する姿勢状態の特定方法は一例であってこれに限らない。
【０１０７】
例えば、処理部１１０は、回転角度Ａ１，Ａ２，Ａ３が、第１の姿勢状態における回転角度Ａ１，Ａ２，Ａ３と第２の姿勢状態における回転角度Ａ１，Ａ２，Ａ３の間の値であって、第１の姿勢状態における回転角度Ａ１，Ａ２，Ａ３から所定の回転角度範囲内（例えば、１°の範囲内）にある姿勢状態のうちから、１番目に経由する姿勢状態を決定してもよい。例えば、この場合には、処理部１１０は、所定の回転角度範囲内にある姿勢状態のうち各姿勢パラメータの値が、第１の姿勢状態における各姿勢パラメータの値と、第２の姿勢状態における各姿勢パラメータの値の間の値である姿勢状態を抽出する。そして、処理部１１０は、抽出した姿勢状態のうち第１の姿勢状態からの変移に伴う各姿勢パラメータの変化量の比が、第１の姿勢状態から第２の姿勢状態への変移に伴う各姿勢パラメータの変化量の比と一番近似する姿勢状態を１番目に経由する姿勢状態として特定すればよい。そして、処理部１１０は、回転角度Ａ１，Ａ２，Ａ３が、１番目に経由する姿勢状態における回転角度Ａ１，Ａ２，Ａ３と第２の姿勢状態における回転角度Ａ１，Ａ２，Ａ３の間の値であって、１番目に経由する姿勢状態における回転角度Ａ１，Ａ２，Ａ３から所定の回転角度範囲内（例えば、１°の範囲内）にある姿勢状態のうちから、同様にして、２番目に経由する姿勢状態を決定し、その後、同様にして３番目に経由する姿勢状態、４番目に経由する姿勢状態と次々に経由する姿勢状態を決定していけばよい。
【０１０８】
［ステップＳ８］処理部１１０は、経由する各姿勢状態、及び第２の姿勢状態へと変移開始から到達するのに要する到達時間の比を決定し、変移態様決定処理を終了する。
【０１０９】
処理部１１０は、姿勢パラメータ（具体的には、ピッチ、ロール、ヨー）のうち第１の姿勢状態から第２の姿勢状態へと変移させる際に変化する１の姿勢パラメータを特定し、各姿勢状態（経由する各姿勢状態及び第２の姿勢状態）における第１の姿勢状態からの当該１の姿勢パラメータの変化量の比を、到達時間の比と決定する。
【０１１０】
例えば、第１の姿勢状態から第２の姿勢状態へと変移させる際に姿勢パラメータ「ロール」の値が変化する場合には、処理部１１０は、変移開始から１番目に経由する姿勢状態への到達時間と、変移開始から２番目に経由する姿勢状態への到達時間と、変移開始から第２の姿勢状態への到達時間との比を、１番目に経由する姿勢状態における第１の姿勢状態からのロールの変化量：２番目に経由する姿勢状態における第１の姿勢状態からのロールの変化量：第２の姿勢状態における第１の姿勢状態からのロールの変化量と決定する。
【０１１１】
変移態様決定処理を終了すると、処理部１１０は、第１の姿勢状態から第２の姿勢状態への変移に伴って回転させる各回転軸の回転角度に基づいて駆動機構２２２の駆動量（回転角度だけ回転軸回りを回転させるためのサーボモータの駆動量）を特定する。また、処理部１１０は、決定した経由する姿勢状態及び決定した時間比に基づいて駆動量を駆動する際の駆動機構２２２の駆動態様を決定する。そして、処理部１１０は、ロボット２００に決定した駆動態様による駆動量で駆動機構２２２を駆動するように指示することにより、ロボット２００の第１の姿勢状態から第２の姿勢状態への姿勢状態の変移を実行させる。
【０１１２】
以上が変移態様決定処理によって決定される変移態様の一例である。このような変移態様によればロボット２００は、第１の姿勢状態から第２の姿勢状態へと変移する際に、第１の姿勢状態からの各姿勢パラメータの変化量の比が、第１の姿勢状態から第２の姿勢状態への変移に伴う各姿勢パラメータの変化量の比と一致する姿勢状態を経由して変移させるため、各姿勢パラメータの変化量の比が一定となるように（各姿勢パラメータが線形的に変化するようにともいう）変移するようにできる。これにより、ロボット２００は、なめらかな軌跡を描いて第１の姿勢状態から第２の姿勢状態へと姿勢を変移させることができる。
【０１１３】
また、ロボット２００は、経由する各姿勢状態及び第２の姿勢状態への到達時間の比を、第１の姿勢状態から第２の姿勢状態へと変移させる際に変化する１の姿勢パラメータの各姿勢状態及び第２の姿勢状態における第１の姿勢状態からの変化量の比としているため、各姿勢パラメータが一定の速度で変化するように変移させることができる。
【０１１４】
次に、姿勢状態が変移している様子を、具体例を用いて説明する。図１１は、第２の実施形態の制御対象部位の姿勢の変移例を説明するための図（その１）である。図１２は、第２の実施形態の制御対象部位の姿勢の変移例を説明するための図（その２）である。図１３は、第２の実施形態の制御対象部位の姿勢の変移例を説明するための図（その３）である。図１４は、第２の実施形態の制御対象部位の姿勢の変移例を説明するための図（その４）である。図１５は、第２の実施形態の制御対象部位の姿勢の変移例を説明するための図（その５）である。図１６は、第２の実施形態の制御対象部位の姿勢の変移例を説明するための図（その６）である。
【０１１５】
なお、図１１は、第１の姿勢状態を示しており、図１２〜図１５は、第１の姿勢状態から第２の姿勢状態への変移する過程で経由すると決定した姿勢状態を示しており、図１６は、第２の姿勢状態を示している。
【０１１６】
図１１に示したロボット２００の姿勢状態は、第１の姿勢状態である。第１の姿勢状態においては、制御対象部位の姿勢パラメータ（ロール，ピッチ，ヨー）が（０，１５．７，０）であり、回転角度Ａ１，Ａ２，Ａ３がそれぞれ０となっている。すなわち、第１の姿勢状態は、基準状態となっている。
【０１１７】
図１６に示したロボット２００の姿勢状態は、第２の姿勢状態である。第２の姿勢状態においては、制御対象部位の姿勢パラメータ（ロール，ピッチ，ヨー）が（０，７５．７，０）であり、回転角度Ａ１が−９０、回転角度Ａ２が１７９、回転角度Ａ３が−９０となっている。また、第１の姿勢状態から第２の姿勢状態への変移に伴ってピッチだけが変動しており、第１の姿勢状態から第２の姿勢状態への変移に伴う各姿勢パラメータの変化量の比が０：６０：０（０：ｎ：０ともいう）となっている。
【０１１８】
図１２に示したロボット２００の姿勢状態は、第１の姿勢状態から第２の姿勢状態への変移する過程で経由すると決定した姿勢状態であり、図１２〜図１５の姿勢状態のうち１番目に経由される姿勢状態である。図１２の姿勢状態においては、制御対象部位の姿勢パラメータ（ロール，ピッチ，ヨー）が（０，１７．９，０）であり、回転角度Ａ１が−１７．２、回転角度Ａ２が３０、回転角度Ａ３が−１７となっている。つまりは、図１２の姿勢状態の回転角度Ａ１が、第１の姿勢状態の回転角度Ａ１と、第２の姿勢状態の回転角度Ａ１の間の値となっている。また、図１２の姿勢状態の回転角度Ａ２が、第１の姿勢状態の回転角度Ａ２と、第２の姿勢状態の回転角度Ａ２の間の値となっている。また、図１２の姿勢状態の回転角度Ａ３が、第１の姿勢状態の回転角度Ａ３と、第２の姿勢状態の回転角度Ａ３の間の値となっている。
【０１１９】
すなわち、第１の姿勢状態から第１仮想軸２１０ａ回りを０°から−９０°だけ回転させ、第２仮想軸２１１ａ回りを０°から１７９°だけ回転させ、第３仮想軸２１２ａ回りを０°から−９０°だけ回転させて第２の姿勢状態へと変移させるときに経由可能な姿勢状態となっている。
【０１２０】
また、第１の姿勢状態から図１２の姿勢状態への変移に伴ってピッチだけが２．２だけ変動しており、第１の姿勢状態から図１２の姿勢状態への変移に伴う各姿勢パラメータの変化量の比が０：２．２：０（０：ｎ：０ともいう）となっている。すなわち、第１の姿勢状態から図１２の姿勢状態への変移に伴う各姿勢パラメータの変化量の比が、第１の姿勢状態から第２の姿勢状態への変移に伴う各姿勢パラメータの変化量の比と一致している。
【０１２１】
また、制御対象部位の各姿勢パラメータの値（０，１７．９，０）が、第１の姿勢状態における制御対象部位の各姿勢パラメータの値（０，１５．７，０）と、第２の姿勢状態における制御対象部位の各姿勢パラメータの値（０，７５．７，０）の間（範囲内ともいう）の値となっている。すなわち、第２の姿勢状態への変移に伴って変化する姿勢パラメータの値が、第１の姿勢状態における当該姿勢パラメータの値よりも第２の姿勢状態の当該姿勢パラメータの値に近い値となっている。つまりは、図１２の姿勢状態は、第１の姿勢状態よりも第２の姿勢状態に近い姿勢状態となっている。
【０１２２】
図１３に示したロボット２００の姿勢状態は、第１の姿勢状態から第２の姿勢状態への変移する過程で経由すると決定した姿勢状態であり、図１２〜図１５の姿勢状態のうち２番目に経由される姿勢状態である。図１３の姿勢状態においては、制御対象部位の姿勢パラメータ（ロール，ピッチ，ヨー）が（０，２４．４，０）であり、回転角度Ａ１が−３３．６、回転角度Ａ２が６０、回転角度Ａ３が−３４となっている。つまりは、図１３の姿勢状態の回転角度Ａ１が、図１２の姿勢状態の回転角度Ａ１と、第２の姿勢状態の回転角度Ａ１の間の値となっている。また、図１３の姿勢状態の回転角度Ａ２が、図１２の姿勢状態の回転角度Ａ２と、第２の姿勢状態の回転角度Ａ２の間の値となっている。また、図１３の姿勢状態の回転角度Ａ３が、図１２の姿勢状態の回転角度Ａ３と、第２の姿勢状態の回転角度Ａ３の間の値となっている。
【０１２３】
すなわち、第１の姿勢状態から第１仮想軸２１０ａ回りを０°から−９０°だけ回転させ、第２仮想軸２１１ａ回りを０°から１７９°だけ回転させ、第３仮想軸２１２ａ回りを０°から−９０°だけ回転させて第２の姿勢状態へと変移させるときに図１２の姿勢状態を経由した後に経由可能な姿勢状態となっている。
【０１２４】
また、第１の姿勢状態から図１３の姿勢状態への変移に伴ってピッチだけが８．７だけ変動しており、第１の姿勢状態から図１３の姿勢状態への変移に伴う各姿勢パラメータの変化量の比が０：８．７：０（０：ｎ：０ともいう）となっている。すなわち、第１の姿勢状態から図１３の姿勢状態への変移に伴う各姿勢パラメータの変化量の比が、第１の姿勢状態から第２の姿勢状態への変移に伴う各姿勢パラメータの変化量の比と一致している。
【０１２５】
また、制御対象部位の各姿勢パラメータの値（０，２４．４，０）が、図１２の姿勢状態における制御対象部位の各姿勢パラメータの値（０，１７．９，０）と、第２の姿勢状態における制御対象部位の各姿勢パラメータの値（０，７５．７，０）の間（範囲内ともいう）の値となっている。すなわち、第２の姿勢状態への変移に伴って変化する姿勢パラメータの値が、図１２の姿勢状態における当該姿勢パラメータの値よりも第２の姿勢状態の当該姿勢パラメータの値に近い値となっている（第１の姿勢状態の当該姿勢パラメータの値から離れた値となっているともいう）。つまりは、図１３の姿勢状態は、１番目に経由する図１２の姿勢状態よりも第２の姿勢状態に近い姿勢状態となっている。
【０１２６】
図１４に示したロボット２００の姿勢状態は、第１の姿勢状態から第２の姿勢状態への変移する過程で経由すると決定した姿勢状態であり、図１２〜図１５の姿勢状態のうち３番目に経由される姿勢状態である。図１４の姿勢状態においては、制御対象部位の姿勢パラメータ（ロール，ピッチ，ヨー）が（０，３４．３，０）であり、回転角度Ａ１が−４９．１、回転角度Ａ２が９０、回転角度Ａ３が−４９となっている。つまりは、図１４の姿勢状態の回転角度Ａ１が、図１３の姿勢状態の回転角度Ａ１と、第２の姿勢状態の回転角度Ａ１の間の値となっている。また、図１４の姿勢状態の回転角度Ａ２が、図１３の姿勢状態の回転角度Ａ２と、第２の姿勢状態の回転角度Ａ２の間の値となっている。また、図１４の姿勢状態の回転角度Ａ３が、図１３の姿勢状態の回転角度Ａ３と、第２の姿勢状態の回転角度Ａ３の間の値となっている。
【０１２７】
すなわち、第１の姿勢状態から第１仮想軸２１０ａ回りを０°から−９０°だけ回転させ、第２仮想軸２１１ａ回りを０°から１７９°だけ回転させ、第３仮想軸２１２ａ回りを０°から−９０°だけ回転させて第２の姿勢状態へと変移させるときに図１３の姿勢状態を経由した後に経由可能な姿勢状態となっている。
【０１２８】
また、第１の姿勢状態から図１４の姿勢状態への変移に伴ってピッチだけが１８．６だけ変動しており、第１の姿勢状態から図１４の姿勢状態への変移に伴う各姿勢パラメータの変化量の比が０：１８．６：０（０：ｎ：０ともいう）となっている。すなわち、第１の姿勢状態から図１４の姿勢状態への変移に伴う各姿勢パラメータの変化量の比が、第１の姿勢状態から第２の姿勢状態への変移に伴う各姿勢パラメータの変化量の比と一致している。
【０１２９】
また、制御対象部位の各姿勢パラメータの値（０，３４．３，０）が、図１３の姿勢状態における制御対象部位の各姿勢パラメータの値（０，２４．４，０）と、第２の姿勢状態における制御対象部位の各姿勢パラメータの値（０，７５．７，０）の間（範囲内ともいう）の値となっている。すなわち、第２の姿勢状態への変移に伴って変化する姿勢パラメータの値が、図１３の姿勢状態における当該姿勢パラメータの値よりも第２の姿勢状態の当該姿勢パラメータの値に近い値となっている（第１の姿勢状態の当該姿勢パラメータの値から離れた値となっているともいう）。つまりは、図１４の姿勢状態は、２番目に経由する図１３の姿勢状態よりも第２の姿勢状態に近い姿勢状態となっている。
【０１３０】
図１５に示したロボット２００の姿勢状態は、第１の姿勢状態から第２の姿勢状態への変移する過程で経由すると決定した姿勢状態であり、図１２〜図１５の姿勢状態のうち４番目に経由される姿勢状態である。図１５の姿勢状態においては、制御対象部位の姿勢パラメータ（ロール，ピッチ，ヨー）が（０，４６．７，０）であり、回転角度Ａ１が−６３．６、回転角度Ａ２が１２０、回転角度Ａ３が−６３となっている。つまりは、図１５の姿勢状態の回転角度Ａ１が、図１４の姿勢状態の回転角度Ａ１と、第２の姿勢状態の回転角度Ａ１の間の値となっている。また、図１５の姿勢状態の回転角度Ａ２が、図１４の姿勢状態の回転角度Ａ２と、第２の姿勢状態の回転角度Ａ２の間の値となっている。また、図１５の姿勢状態の回転角度Ａ３が、図１４の姿勢状態の回転角度Ａ３と、第２の姿勢状態の回転角度Ａ３の間の値となっている。
【０１３１】
すなわち、第１の姿勢状態から第１仮想軸２１０ａ回りを０°から−９０°だけ回転させ、第２仮想軸２１１ａ回りを０°から１７９°だけ回転させ、第３仮想軸２１２ａ回りを０°から−９０°だけ回転させて第２の姿勢状態へと変移させるときに図１４の姿勢状態を経由した後に経由可能な姿勢状態となっている。
【０１３２】
また、第１の姿勢状態から図１５の姿勢状態への変移に伴ってピッチだけが３１だけ変動しており、第１の姿勢状態から図１５の姿勢状態への変移に伴う各姿勢パラメータの変化量の比が０：３１：０（０：ｎ：０ともいう）となっている。すなわち、第１の姿勢状態から図１５の姿勢状態への変移に伴う各姿勢パラメータの変化量の比が、第１の姿勢状態から第２の姿勢状態への変移に伴う各姿勢パラメータの変化量の比と一致している。
【０１３３】
また、制御対象部位の各姿勢パラメータの値（０，４６．７，０）が、図１４の姿勢状態における制御対象部位の各姿勢パラメータの値（０，３４．３，０）と、第２の姿勢状態における制御対象部位の各姿勢パラメータの値（０，７５．７，０）の間（範囲内ともいう）の値となっている。すなわち、第２の姿勢状態への変移に伴って変化する姿勢パラメータの値が、図１４の姿勢状態における当該姿勢パラメータの値よりも第２の姿勢状態の当該姿勢パラメータの値に近い値となっている（第１の姿勢状態の当該姿勢パラメータの値から離れた値となっているともいう）。つまりは、図１５の姿勢状態は、３番目に経由する図１４の姿勢状態よりも第２の姿勢状態に近い姿勢状態となっている。
【０１３４】
このような第１の姿勢状態、１番目に経由する姿勢状態、２番目に経由する姿勢状態、３番目に経由する姿勢状態、４番目に経由する姿勢状態を経て第２の姿勢状態に変移させることで、ロボット２００は、各姿勢パラメータの変化量の比を一定としたまま（ロールと、ヨーの値を０に保ったままともいう）変移させている。これにより、ロボット２００は、なめらかな軌跡（直線的な軌跡ともいう）を描いて第１の姿勢状態から第２の姿勢状態へと姿勢を変移させることを実現している。
【０１３５】
なお、この場合に、変移開始から１番目に経由する姿勢状態への到達時間と、２番目に経由する姿勢状態への到達時間と、３番目に経由する姿勢状態への到達時間と、４番目に経由する姿勢状態への到達時間と、第２の姿勢状態への到達時間の比が変移に伴って変化する姿勢パラメータ（ここではピッチ）の変化量の大きさの比である２．２：８．７：１８．６：３１：６０となるようにするとよい。このようにすることでロボット２００は、変移に伴って変化する姿勢パラメータが一定の速度で変化するように変移させることができる。
【０１３６】
なお、上記実施形態において情報処理装置１００が実行するとした処理の一部または全部をロボット２００が実行するようにしてもよい。また、筐体２０１を隣接する仮想平面と平行でない第１仮想平面、第２仮想平面、第３仮想平面の３つの仮想平面で分離している例を用いて説明したがこれに限らない。例えば、筐体２０１を、隣接する仮想平面と平行でない任意の数ｎ（ｎ＞２）の仮想平面で分離していればよい。ロボット２００は、制御対象部位をｎ個の回転軸で回転させることができるので、例えば、任意の数ｎを増加させれば、制御対象部位の姿勢の自由度をより高めることができる。
【０１３７】
上記で説明した本発明の情報処理装置１００の処理機能は、コンピュータによって実現することができる。この場合、情報処理装置１００が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
【０１３８】
処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリ等がある。磁気記憶装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープ等がある。光ディスクには、ＣＤ−ＲＯＭ／ＲＷ等がある。光磁気記録媒体には、ＭＯ（Magneto Optical disk）等がある。
【０１３９】
プログラムを流通させる場合、例えば、そのプログラムが記録されたＣＤ−ＲＯＭ等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１４０】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。
【０１４１】
また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。また、上記の処理機能の少なくとも一部を、ＤＳＰ、ＡＳＩＣ、ＰＬＤ等の電子回路で実現することもできる。
【０１４２】
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【符号の説明】
【０１４３】
１  ロボット
２  筐体
３  設置面部
４  球面部
５  第１交円
５ａ  第１仮想軸
６  第１球面部
７  第２球面部
８  第２交円
８ａ  第２仮想軸
９  第３球面部
１０  第４球面部
【要約】
【課題】高い自由度で姿勢を制御する。
【解決手段】ロボット１は、設置面部３と、凸状の球面部４とを含んで構成される筐体２を有する。筐体２は、球面部４との交線が第１交円５となる第１仮想平面を境にして、球面部４を第１仮想平面で分割したうちの設置面部３側の第１球面部６と、第１交円５の中心を通り第１交円５に垂直な第１仮想軸５ａを回転軸として第１球面部６に対して回転可能に構成された、球冠形状の第２球面部７とに分離されている。第２球面部７は、第２球面部７との交線が第２交円８となり、第１仮想平面と平行でない第２仮想平面を境にして、第２球面部７を第２仮想平面で分割したうちの第１球面部６側の第３球面部９と、第２交円８の中心を通り第２交円８に垂直な第２仮想軸８ａを回転軸として第３球面部９に対して回転可能に構成された、球冠形状の第４球面部１０とに分離されている。
【選択図】図１【図１】
0006905203.tif 000010
【図２】
0006905203.tif 000011
【図３】
0006905203.tif 000012
【図４】
0006905203.tif 000013
【図５】
0006905203.tif 000014
【図６】
0006905203.tif 000015
【図７】
0006905203.tif 000016
【図８】
0006905203.tif 000017
【図９】
0006905203.tif 000018
【図１０】
0006905203.tif 000019
【図１１】
0006905203.tif 000020
【図１２】
0006905203.tif 000021
【図１３】
0006905203.tif 000022
【図１４】
0006905203.tif 000023
【図１５】
0006905203.tif 000024
【図１６】
0006905203.tif 000025