(58)【調査した分野】(Int.Cl.,DB名)
前記駆動アクチュエータと、前記第一直交アクチュエータと、前記第二直交アクチュエータと、前記第一支持アクチュエータと、前記第二支持アクチュエータとを制御する制御部を更に備え、
前記制御部は、前記駆動アクチュエータを所定方向に動作させることにより、前記第一支持アクチュエータの上端と、前記第二支持アクチュエータの上端とを上昇させ、
前記制御部は、前記駆動アクチュエータを前記所定方向の逆方向に動作させることにより、前記第一支持アクチュエータの上端と、前記第二支持アクチュエータの上端とを下降させる、
請求項1に記載の人型ロボット。
前記制御部は、前記駆動アクチュエータを駆動すると共に、前記第一直交アクチュエータ及び前記第二直交アクチュエータを回転させることにより、前記第一支持アクチュエータの上端と、前記第二支持アクチュエータの上端とを上昇させる、
請求項2乃至4の何れかに記載の人型ロボット。
【発明の概要】
【発明が解決しようとする課題】
【0006】
ロボットが体操を実演し、利用者がその体操を真似ることによるリハビリテーションにおいて、利用者はロボットの動きを忠実に真似る傾向がある。すなわち、ロボットの関節の自由度が少ないためにロボットの動作が不自然であっても、利用者はその不自然な動作をそのまま真似てしまう。これでは、動かしてほしい関節の運動ができないので、リハビリテーションの効果が低減してしまう。ロボットをリハビリテーションに活用するには、なるべく人の動きに近い動作をする必要がある。例えば、ロボットの肩が上下に動くと、肩の動きが自然に見える。
【0007】
一方、ロボットのサイズ等の制約により、関節の軸数(自由度)が制限される場合がある。肩の上下の動きは肩甲骨の動きと関連しているため、3軸の肩関節だけでは表現できない動きがある。
【0008】
本発明は、上記の問題に鑑みてなされたもので、その目的は、限られた数の回転軸を持つ関節を用いて、回転軸と異なる方向の運動を表現する技術を提供することにある。
【課題を解決するための手段】
【0009】
本発明の一つの観点に係るロボットは、胴体と第一肢部と、前記胴体及び前記第一肢部を接続する第一関節と、前記胴体により支持されるアクチュエータである駆動アクチュエータと、を備え、前記第一関節は、鉛直方向に対し前記胴体の左右方向の軸の周りに所定の鋭角だけ傾いている軸であって、前記駆動アクチュエータに基づく駆動力により回転駆動される第一基準軸と、前記第一基準軸により支持されるアクチュエータである第一直交アクチュエータと、前記第一基準軸に垂直な軸であって、前記第一直交アクチュエータにより支持されると共に回転駆動される第一直交軸と、前記第一直交軸により支持されるアクチュエータである第一支持アクチュエータと、前記第一直交軸に垂直な軸であって、前記第一支持アクチュエータにより支持されると共に回転駆動され、前記第一肢部を支持する第一支持軸と、を含む。
【0010】
ロボットは、第二肢部と、前記胴体及び前記第二肢部を接続する第二関節と、前記駆動アクチュエータに対して前記第一関節及び前記第二関節を接続するリンク機構と、を更に備え、記第二関節は、前記第一基準軸に平行な軸であって、前記駆動アクチュエータに基づく駆動力により回転駆動される第二基準軸と、前記第二基準軸により支持されるアクチュエータである第二直交アクチュエータと、前記第二基準軸に垂直な軸であって、前記第二直交アクチュエータにより支持されると共に回転駆動される第二直交軸と、前記第二直交軸により支持されるアクチュエータである第二支持アクチュエータと、前記第二直交軸に垂直な軸であって、前記第二支持アクチュエータにより支持されると共に回転駆動され、前記第二肢部を支持する第二支持軸と、を含み、前記リンク機構は、前記駆動アクチュエータの駆動力を前記第一基準軸及び前記第二基準軸へ伝達することにより、前記第一基準軸及び前記第二基準軸を互いに逆方向に回転させる、構成であっても良い。
【0011】
ロボットは、前記第一肢部及び前記第二肢部の夫々は、腕であり、前記第一関節及び前記第二関節の夫々は、肩関節である、構成であっても良い。
【0012】
ロボットは、前記駆動アクチュエータと、前記第一直交アクチュエータと、前記第二直交アクチュエータと、前記第一支持アクチュエータと、前記第二支持アクチュエータとを制御する制御部を更に備え、前記制御部は、前記駆動アクチュエータを所定方向に動作させることにより、前記第一支持アクチュエータの上端と、前記第二支持アクチュエータの上端とを上昇させ、前記制御部は、前記駆動アクチュエータを前記所定方向の逆方向に動作させることにより、前記第一支持アクチュエータの上端と、前記第二支持アクチュエータの上端とを下降させる、構成であっても良い。
【0013】
ロボットは、前記第一基準軸及び前記第二基準軸の夫々は、所定の角度範囲内で回転駆動される、構成であっても良い。
【0014】
ロボットは、前記駆動アクチュエータと、前記リンク機構と、前記第一関節の一部と、前記第二関節の一部とは、前記胴体の内部に位置し、前記第一支持アクチュエータは、前記第一開口を介して前記胴体から突出しており、前記第二支持アクチュエータは、前記第二開口を介して前記胴体から突出している、構成であっても良い。
【0015】
ロボットは、前記駆動アクチュエータと、前記リンク機構と、前記第一関節の一部と、前記第二関節の一部とは、前記胴体の内部に位置し、前記第一支持アクチュエータは、前記第一開口を介して前記胴体から突出しており、前記第二支持アクチュエータは、前記第二開口を介して前記胴体から突出している、構成であっても良い。
【0016】
ロボットは、前記制御部は、前記駆動アクチュエータを駆動すると共に、前記第一直交アクチュエータ及び前記第二直交アクチュエータを回転させることにより、前記第一支持アクチュエータの上端と、前記第二支持アクチュエータの上端とを上昇させる、構成であっても良い。
【0017】
ロボットは、前記第一基準軸の上端は、前記第一基準軸の下端に対し前記胴体の背面側に位置し、前記第二基準軸の上端は、前記第二基準軸の下端に対し前記胴体の背面側に位置する、構成であっても良い。
【0018】
ロボットは、床面上に立つ脚部と、前記脚部及び前記胴体を接続する腰関節と、を更に備え、前記制御部は、前記腰関節の状態に基づいて、前記駆動アクチュエータの駆動量を決定する、構成であっても良い。
【発明を実施するための形態】
【0020】
本実施形態のロボットは、人型ロボットであり、鉛直方向に対し胴体の左右方向の軸の周りに所定の鋭角だけ傾いている肩ヨー軸を有することにより、ロボットの正面から見たユーザに対し、肩ヨー軸の回転で肩の上下運動を表現することができる。
【0021】
図1は、実施形態のロボットの構成を示す模式図である。
【0022】
このロボットは、脚部110a、110bと、股関節210a、210bと、腰部120と、腰関節220と、胴体130と、首関節240と、頭部140と、肩関節250a、250bと、腕部150a、150bとを含む。脚部110a、110bの夫々は、下面が床面上に接触することにより床面上に立つ。脚部110a、110bの上端には、股関節210a、210bを夫々介して腰部120の下端が接続されている。腰部120の上端には、腰関節220を介して胴体130の下端が接続されている。胴体130の上端には、首関節240を介して、頭部140の下端が接続されている。胴体130の上部における左右の側面には、肩関節250a、250bを介して、腕部150a、150bの基端が夫々接続されている。この図中で円柱により表された軸は、関節の回転軸を示す。ロボットは更に、頭部140等に含まれるセンサからの情報を処理すると共に、各関節を制御する制御部100を含む。
【0023】
以後、符号のアルファベットによって要素を区別する必要がない場合、符号のアルファベットを省略することがある。
【0024】
制御部100は、例えばコンピュータにより実現される。このコンピュータは、プログラム及びデータを格納するメモリと、そのプログラムに従って関節を制御するマイクロプロセッサとを有する。このプログラムは、コンピュータ読み取り可能な媒体に格納され、その媒体からコンピュータへ読み出されても良い。
【0025】
ここでは、ロボットの鉛直方向をヨー軸520、ロボットの左右方向をピッチ軸530、ロボットの進行方向をロール軸540と呼ぶ。また説明の便宜上、
図1に示した各軸の矢印の方向を正方向とする。脚部110a、股関節210a、肩関節250a、腕部150aは、胴体130の前方に対して左側に設けられており、脚部110b、股関節210b、肩関節250b、腕部150bは、胴体130の前方に対して右側に設けられている。
【0026】
脚部110a、110bの夫々は、膝関節、足首関節等を含んでいてもよい。腕部150a、150bの夫々は、肘関節、手首関節等を含んでいてもよい。
【0027】
肩関節250aは、ヨー関節320aと、ピッチ関節330aと、ロール関節340aとを含む。同様に、肩関節250bは、ヨー関節320bと、ピッチ関節330bと、ロール関節340bとを含む。ヨー関節320の軸方向は、ロボットの鉛直方向、すなわち、ヨー軸520に対して傾いて設けられている。ピッチ関節330は、ヨー関節320の体側側であって、ピッチ関節330の軸方向は、ヨー関節320の軸方向に直交し、かつピッチ軸530に平行する方向に配置される。ロール関節340は、ピッチ関節330の体側側であって、ロール関節340の軸方向は、ピッチ関節330の軸方向に直交する方向に配置される。
【0028】
図2は、肩関節250aをピッチ軸530の負方向に見た模式図である。
【0029】
ヨー関節320の軸321方向は、ロボットの鉛直方向であるヨー軸520に対しピッチ軸530周りに所定の傾斜角θだけ回転(ピッチング)している。θは、0度より大きく且つ90度より小さく、20〜30度が望ましい。ピッチ関節330は、ヨー関節320の体側側外側であって、ピッチ関節330の軸331方向は、ヨー関節320の軸321方向に直交している。この例では、ヨー関節320の軸331方向はロボットのピッチ軸530に平行している場合を示す。更にロール関節340は、ピッチ関節330の体側側外側であって、ロール関節340の軸341方向は、ピッチ関節330の軸331方向に直交している。この例では、ロール関節340の軸341方向はロボットのロール軸540に平行している場合を示す。
【0030】
制御部100は、ヨー関節320を動作させることにより、腕部150を胴体側方から胴体前方へ回転させる内旋を行うことができる。同様に、制御部100は、内旋と逆方向にヨー関節320aを動作させることにより、腕部150を胴体前方から胴体側方へ回転させる外旋を行うことができる。更に制御部100は、ピッチ関節330を動作させることにより、腕部150をピッチ軸530周りに下方から前後方向へ振り上げる動きと、腕部150を前後方向からから下方へ振り下げる動きとを行うことができる。更に制御部100は、ロール関節340を動作させることにより、腕部150をロール軸540周りに下方から側方へ持ち上げる動きと、腕部150を側方から下方へ下す動きとを行うことができる。
【0031】
図3は、肩関節250近傍を、胴体正面側から見た図である。
【0032】
ヨー関節320はヨー関節駆動モータ410と、駆動軸310と、リンク機構420と、肩ヨー軸322とからなり、ピッチ関節330はピッチ関節駆動モータ430a、430bと、肩ピッチ軸332とからなる。更にロール関節340はロール関節駆動モータ440a、440bと肩ロール軸342を含む。ヨー関節駆動モータ410は、固定部材412により胴体130に支持され、制御部100からの指示に従って駆動軸310を回転させる。リンク機構420は、駆動軸310の回転を肩ヨー軸322a、322bへ伝達し、肩ヨー軸322a、322bを互いに逆方向に回転させる。なお、肩ヨー軸322は支持部材432により胴体130に軸支されている。これにより、制御部100は、ヨー関節320a、320bを所定の角度範囲内で回転させる。ピッチ関節駆動モータ430a、430bは、肩ヨー軸322a、322bにより夫々支持され、制御部100からの指示に従って肩ピッチ軸332a、332bを夫々回転させる。ロール関節駆動モータ440a、440bは、肩ピッチ軸332a、332bの先端部に夫々支持され、制御部100からの指示に従って肩ロール軸342a、342bを夫々回転させる。肩ロール軸342には、腕部150の基端が取り付けられている。ヨー軸駆動モータ410と、ピッチ軸駆動モータ430と、ロール軸駆動モータ440の夫々は、回転型のアクチュエータを用いた例を記載しているが、他のアクチュエータであってもよい。例えば、ヨー関節駆動モータ410の代わりに、直線運動するアクチュエータが用いられてもよい。
【0033】
以後、肩ヨー軸322a、322bの回転により腕部150a、150bを前方へ閉じる内旋の動作の一例において、内旋の動作開始時の状態を内旋開始状態と呼び、内旋動作中の状態を内旋中間状態と呼び、内旋の動作終了時の状態を内旋終了状態と呼ぶ。
【0034】
図4は、内旋開始状態の肩関節250を、頭部140側からヨー軸520方向に見た図である。なお、ヨー関節駆動モータ410の固定部材412は図示を省略する。
【0035】
リンク機構420は、クランクアーム421と、ピン422と、ロッド423と、ピン424と、ピン425と、主アーム426、副アーム427とを含む。駆動軸310には、クランクアーム421の一端が結合されている。ここでは、駆動軸310に垂直な仮想平面を、移動面と呼ぶ。クランクアーム421の他端には、ピン422を介してロッド423の基端が移動面内を回動可能に接続されている。ロッド423の基端に対して、先端は移動面内で胴体130の前方へ延びている。ロッド423の先端部には、ピン424を介して主アーム426の中間部が固定されている。主アーム426の基端には、肩ヨー軸322bが結合されている。肩ヨー軸322は支持部材432により軸支され、該支持部材432は胴体130に固定されているので、肩ヨー軸322は移動面内を移動しないような構成となっている。これにより、ロッド423を動作させると、主アーム426の中間部及び先端は、肩ヨー軸324を中心として移動面内を回動可能である。また副アーム427の先端にはピン425が嵌合するスリット428が設けられ、該スリット428内をピン425が移動可能な構成となっている。更に副アーム427はピン425を介して主アーム426と連結し、その基端には肩ヨー軸322aが結合されている。これにより、副アーム427の先端は、主アーム426の移動に伴い肩ヨー軸322aを中心に移動面内を回動可能である。
【0036】
図5は、内旋終了状態の肩関節250を、頭部140側からヨー軸520方向に見た図である。
図4と同様にヨー関節駆動モータ410の固定部材412は図示を省略している。
【0037】
ヨー関節駆動モータ410が駆動軸310を内旋開始状態から所定の駆動角だけ右回転させた状態を内旋終了状態とする。この回転に応じて、クランクアーム421が駆動軸310を中心に移動面内で右回転し、ロッド423が胴体130の背面側に引っ張られることでピン424が移動面内で移動し、主アーム426及び副アーム427のそれぞれ基端は肩ヨー軸322により軸支されているのでロッド423の移動に伴いピン425が移動面内で胴体後方へ移動し、左側の肩ヨー軸322aが右回転すると共に右側の肩ヨー軸322bは左回転する。これにより、腕部150a、150bは、胴体前方で閉じる方向に回転する。
【0038】
このようなリンク機構420の構成によれば、ヨー関節駆動モータ410が駆動軸310を回転させることにより、肩ヨー軸322a、322bが互いに逆方向に回転する。なお、リンク機構420は、このような作用を有するものであれば、ギア等、他の機構であってもよい。また、リンク機構420を用いることにより、一つのヨー軸駆動モータ410で、二つの肩ヨー軸322a、322bを同時に回転させることができる。これにより、ロボット内のアクチュエータの数を抑え、ロボットを小型化及び軽量化できると共に、ロボットのコストを削減することができる。なお、肩ヨー軸322a、322bの夫々に対してアクチュエータが設けられていてもよい。この場合、制御部100は、肩ヨー軸322a、322bを互いに独立に回転させることにより、左肩及び右肩を互いに独立に動かす運動を表現してもよい。
【0039】
図6は、内旋開始状態のロボットの上半身を示す正面図である。
図7は、内旋中間状態のロボットの上半身を示す正面図である。
図8は、内旋終了状態のロボットの上半身を示す正面図である。なお、
図6にのみ、ヨー関節駆動モータ410、駆動軸310、リンク機構420、肩ヨー軸322、ピッチ軸駆動モータ430、肩ピッチ軸332、ロール軸駆動モータ440、肩ロール軸342等の配置を理解するため破線にて記載する。
【0040】
同様に、
図9は、内旋開始状態のロボットの上半身を示す斜視図である。
図10は、内旋中間状態のロボットの上半身を示す斜視図である。
図11は、内旋終了状態のロボットの上半身を示す斜視図である。
【0041】
ヨー軸駆動モータ410、駆動軸310、リンク機構420、肩ヨー軸322a、322b、ピッチ軸駆動モータ430、肩ピッチ軸332等は、胴体130の内部に位置する。胴体130の上部の両側面には、アームホールに相当する開口560a、560bが形成されている。ロール軸駆動モータ440は、開口560内に位置し、一部は胴体130内、一部は胴体130より外部に突出し、該突出した部分はロール軸駆動モータ440の外周を肩カバー550により覆われている。ロール軸駆動モータ440の出力軸である肩ロール軸342の両端は、肩カバー550から突出し、腕部150の基端を支持している。肩ヨー軸322が回転することでロール駆動軸モータ440は、開口560内であって、かつヨー軸520と直交する面に対して所定の角度を有する面に沿って移動する。なお、ロール駆動軸モータ440の移動範囲は開口560内に制限されているので、開口560の口径及びロール軸駆動モータ440の外形により限定されることになる(
図9、
図10、
図11参照)。
【0042】
この内旋の動作例において、腕部150の先端は、鉛直方向に向いている。内旋開始状態において、肩ピッチ軸332のロール軸駆動モータ440取り付け端は、胴体後方に向いている(
図4参照)。また、肩ヨー軸322が鉛直方向に対して傾斜した状態で取り付けられているので、内旋開始状態では肩ピッチ軸332のロール軸駆動モータ440取り付け端は下方に向いている。すなわち、ピッチ軸駆動モータ430の出力軸である肩ピッチ軸332の先端部は胴体後方かつ下方に向いている。前述したようにロール軸駆動モータ440の外周は肩カバー550に覆われ、肩ピッチ軸332の先端部に取り付けられているので、肩カバー550の全体は胴体後方かつ下方に引き下げられた状態となり、ロボットの正面から見たユーザにとって、肩カバー550が下がった状態に見える。このとき、ロボットの正面から見える肩カバー550の上端の高さをH1とする。
【0043】
内旋中間状態において、ロボットの正面から見える肩カバー550の上端の高さをH2とする。内旋開始状態と比べると、内旋中間状態において、肩ピッチ軸332の先端は胴体の前方に移動し、かつ肩ヨー軸322が鉛直方向に対して傾斜した状態で取り付けられているので、肩ピッチ軸332の先端は前方に回動するに連れて上方へ移動する。このとき、ロボットの正面から見える肩カバー550の上端の高さをH2とすると、肩カバー550の上端の高さH2はH1より高くなる。
【0044】
内旋終了状態において、肩ピッチ軸332の先端は、更に前方に回動し、かつ回動につれて上方に移動する。そのため、肩カバー550の上端はロボットの正面から見るとより一層上がった状態に見える。このとき、ロボットの正面から見える肩カバー550の上端の高さをH3とすると、H3はH2より高くなる。
【0045】
以上の内旋動作により、ロボットの正面にいるユーザからは、肩カバー550の上端の高さが上昇し、肩甲骨を上下させる構造がないにも関わらず、肩甲骨を動かし、肩の上端を上昇させているように見える。内旋動作と逆方向にヨー軸駆動モータ410を回転させる外旋動作により、肩カバー550の上端の高さが下降し、肩甲骨が下降しているように見える。したがって、ロボットは、ロボットの正面にいるユーザに対して、肩甲骨の上下運動を表現することができる。
【0046】
成人のサイズより小さいなどの小型ロボットにおいては、肩関節を配置するスペースが限られるため、3軸のモータに加えて肩関節を平行移動させる機構を設けることが困難になる。本実施形態によれば、肩関節250の自由度が肩ヨー軸322、肩ピッチ軸332、及び肩ロール軸342の3軸だけであっても、あたかも肩甲骨を動かす機構を有し、肩の上端を上下動させているかの如き表現することができる。また、肩ヨー軸322が胴体130内に位置し、肩カバー550が開口560から突出しており、胴体130のうち、肩甲骨に相当する部分が変形しなくても、肩甲骨の上下運動を表現することができる。この構成により、肩ヨー軸322が胴体の外部にある場合に比べて、肩関節250の故障を低減したり、胴体130の剛性を高めたりすることができる。
【0047】
以下、肩ヨー軸322の駆動と共に、肩ヨー軸322以外を駆動する複合動作の例について説明する。
【0048】
ここでは、第一の複合動作について説明する。
【0049】
制御部100は、第一の複合動作として、ヨー軸駆動モータ410によりヨー関節320a、320bの肩ヨー軸322a、322bを回転させることに加えて、ピッチ関節330a、330bのピッチ軸駆動モータ430a、430bにより肩ピッチ軸332a、332b及びロール関節340a、340bを夫々回転させる。
【0050】
図12は、ピッチ関節330の回転による肩カバー550の上端の高さの変化を示す模式図である。
【0051】
前述したようにロール関節340aは、肩カバー550aに覆われている。ここでは、ピッチ関節330の回転前の状態(a)において、ロール関節340の軸341方向がロール軸540方向である場合、ピッチ関節330aの軸331から軸341から肩カバー550aの前端までの距離Lfが、ピッチ関節330aの軸331から肩カバー550aの上端までの距離Luより長いとする。このとき、床から肩カバー550aの上端までの高さをHとする。その後、ピッチ関節330の軸331方向が上方に向かうようにピッチ関節330が回転して状態(b)になると、Hが増加する。すなわち、ロボットは、ピッチ関節330の動作により、正面のユーザから見たロボットの肩の高さを変更することができる。例えば、内旋開始状態において、制御部100が、ヨー軸駆動モータ410を回転させることにより、腕部150a、150bを内旋させると共に、ピッチ関節330a、330bを回転させることにより、腕部150a、150bを下方から前方へ回転させる。これにより、ヨー関節320a、320bの回転とピッチ関節330a、330bの回転によるHの増加量は、ヨー関節320a、320bの回転だけによるHの増加量に比べて大きくなる。
【0052】
次に第二の複合動作について説明する。
【0053】
腰関節220の駆動モータによりロボットの下半身に対して上半身をピッチ軸530周りに動かすことが可能である。すなわち、ロボットの上半身を前屈みにしたり、後方に反らせたりすることができる。
【0054】
図13は、第二の複合動作において肩関節250aをピッチ軸530の負方向に見た模式図である。
【0055】
腰関節220の動作によりロボットの上半身を後方に反らせた状態にすると、ロボットの腰関節220と首関節240とを結ぶ線521は鉛直方向のヨー軸520に対して+αだけ時計周りに回転することとなり、ヨー関節320の軸方向321は鉛直方向のヨー軸に対してθ+α回転する。即ち、ヨー関節320の回転による肩カバー550の上端の高さの変化量は、腰関節220の状態により異なる。例えば、腰関節220の動作により胴体130が傾斜角αだけ後傾した状態では、上方に対するヨー関節320の軸321の傾きは、θ+αになる。この状態で、制御部100が肩関節250の内旋の動作を行うと、腰関節220と首関節240とを結ぶ線521が鉛直方向と平行な場合に比べて、肩カバー550の上端の高さの増加量は大きくなる。したがって、ヨー関節320の内旋と連動して腰関節220の駆動モータを制御して、ロボットの上半身が後方に反るようにすると、肩関節250だけを用いた内旋動作に比べて、肩カバー550の上端の高さの増加量は大きくなる。そこで、制御部100は、腰関節220の状態に基づいて、ヨー軸駆動モータ410の回転角を決定する。
【0056】
以下、制御部100によるロボットの運動の制御について説明する。
【0057】
ロボットの管理者は、各関節の動作を定める制御タイミング及び制御量等を示すシナリオやプログラムを設定し、制御部100はそのシナリオをメモリ等に格納する。予め複数のシナリオが格納されていてもよい。シナリオのうち、肩上下動の動作は、肩上下動レベルを含む。肩上下動レベルは、ロボットの正面から見た肩カバー550の上端の高さの変化量を示す。制御部100がシナリオに従ってロボットの運動を制御する処理を運動制御処理と呼ぶ。制御部100は、ユーザから音声等の入力に基づいて、ロボットに特定のシナリオの運動を行わせるアプリケーションの実行の指示を取得すると、運動制御処理を開始する。
【0058】
図14は、運動制御処理を示すフローチャートである。
【0059】
S110において制御部100は、シナリオから順次、動作を読み出す。S130において制御部100は、読み出された動作が肩上下動であるか否かを判定する。動作が肩上下動でないと判定された場合(S130:No)、他の動作の制御を行い、処理をS170へ移行させる。動作が肩上下動であると判定された場合(S130:Yes)、肩上下動制御を行い、処理をS170へ移行させる。
【0060】
S170において制御部100は、シナリオが終了したか否かを判定する。シナリオが終了していないと判定された場合(S170:No)、制御部100は、処理をS110へ移行させ、次の動作の処理を行う。シナリオが終了していると判定された場合(S170:Yes)、制御部100は、このフローを終了させる。
【0061】
以上の運動制御処理によれば、制御部100は、シナリオに従って、肩上下動を含む運動を制御することができる。
【0062】
図15は、肩上下動制御処理を示すフローチャートである。
【0063】
制御部100は、ヨー軸駆動モータ410の状態と、肩上下動レベルに影響を与える他のアクチュエータである関連アクチュエータの状態とを記憶する。関連アクチュエータは例えば、第一の複合動作におけるピッチ軸駆動モータ430a、430bであってもよいし、第二の複合動作における腰ピッチ軸駆動モータであってもよい。
【0064】
S210において制御部100は、肩上下動レベルをシナリオから読み出すと共に、ヨー軸駆動モータ410の状態と、関連アクチュエータの状態とを読み出す。その後、S230において制御部100は、肩上下動が複合動作であるか否かを判定する。
【0065】
肩上下動が複合動作でないと判定された場合(S230:No)、S240において制御部100は、ヨー軸駆動モータ410の状態と関連アクチュエータの状態と肩上下動レベルとに基づいて、ヨー軸駆動モータ410の制御量であるヨー軸制御量を決定する。例えば、関連アクチュエータが腰ピッチ軸駆動モータである場合、制御部100は、腰関節駆動モータの状態により胴体130の前傾あるいは後傾の度合いを算出し、鉛直方向に対する肩ヨー軸322の傾きを算出し、その傾きに基づいて、肩カバー550の上端の高さの変化量が肩上下動レベルに等しくなるようにヨー軸制御量を算出する。ヨー軸制御量は、ヨー軸駆動モータ410の回転角であるが、シナリオに応じた回転速度を含んでもよい。制御部100は、ヨー軸駆動モータ410の状態と関連アクチュエータの状態と肩上下動レベルと肩ヨー軸制御量との関係を示すテーブルを予め記憶し、そのテーブルからヨー軸制御量を選択してもよい。
【0066】
その後、S240において制御部100は、ヨー軸制御量を用いてヨー軸駆動モータ410を制御し、このフローを終了する。
【0067】
肩上下動が複合動作であると判定された場合(S230:Yes)、S270において制御部100は、ヨー軸駆動モータ410の状態と関連アクチュエータの状態と肩上下動レベルとに基づいて、ヨー軸制御量と、関連アクチュエータの制御量である関連アクチュエータ制御量とを決定する。例えば、関連アクチュエータが腰ピッチ軸駆動モータである場合、制御部100は、現在のヨー軸駆動モータ410の状態と腰ピッチ軸駆動モータの状態から、肩カバー550の上端の高さの変化量が所望の肩上下動レベルになるようにヨー軸制御量及び関連アクチュエータ制御量を算出する。関連アクチュエータ制御量は例えば、アクチュエータの移動量であるが、シナリオに応じた移動速度を含んでもよい。制御部100は、ヨー軸駆動モータ410の状態と関連アクチュエータの状態と肩上下動レベルとヨー軸制御量と関連アクチュエータ制御量との関係を示すテーブルを予め記憶し、そのテーブルからヨー軸制御量及び関連アクチュエータ制御量を選択してもよい。また、制御部100は、肩上下動レベルを、ヨー軸制御量と関連アクチュエータ制御量に分担してもよい。例えば、肩上下動レベルが、ヨー軸駆動モータ410のみの動作による肩カバー550の上端の高さの変化量の上限を超える場合、制御部100は、その上限の動作のためのヨー軸制御量を算出し、肩上下動レベルからその上限を減じた残りを関連アクチュエータにより補うように関連アクチュエータ制御量を算出してもよい。
【0068】
その後、S280において制御部100は、ヨー軸制御量を用いてヨー軸駆動モータ410を制御すると共に、関連アクチュエータ制御量を用いて関連アクチュエータを制御し、このフローを終了する。
【0069】
以上の肩上下動制御処理によれば、制御部100は、予め設定された肩上下動レベルに応じて、ヨー軸駆動モータ410を制御することができる。また、制御部100が、ヨー軸駆動モータ410と関連アクチュエータの複合動作を行うことにより、ヨー軸駆動モータ410だけの動作に比べて肩上下動を大きく見せることができる。
【0070】
なお、鉛直方向に対し、ヨー関節320の上端が胴体前方に傾けられていてもよい。この場合、肩カバー550の全体が胴体前方かつ下方に引き下げられた状態から、制御部100が肩カバー550を外旋させることにより、肩カバー550の上端の高さが上昇する。このように、ヨー関節320の軸321方向が鉛直方向に対して所定の傾斜角を成すことにより、胴体正面側からロボットを見るユーザは、肩関節250の内旋及び外旋に応じて、肩カバー550が上下に動くように見える。
【0071】
なお、ピッチ関節330とロール軸関節340は、交換可能である。すなわち、ヨー関節320がロール軸関節340を支持し、ロール軸関節340がピッチ関節330を支持し、ピッチ関節330が腕部150の基端を支持する構成を用いてもよい。肩関節250の構成は、人型ロボットの肩関節以外の関節に適用されてもよい。例えば、肩関節250の構成が股関節に適用される場合、腕部に代えて脚部が用いられる。また、肩関節250の構成を、四足歩行ロボットや二足歩行ロボットなど、人型ロボット以外のロボットの関節に適用されてもよい。例えば、肩関節250の構成が四足歩行ロボットの肩関節に適用される場合、腕部に代えて前脚が用いられ、肩関節250の構成が四足歩行ロボットの股関節に適用される場合、腕部に代えて後脚が用いられる。これらの場合においても、ユーザが特定の方向から関節を見ると、関節の特定の軸の回転移動に伴って、関節が平行移動しているように見える。
【0072】
本発明の表現のための用語について説明する。胴体として、胴体130等が用いられてもよい。駆動アクチュエータとして、ヨー軸駆動モータ410等が用いられてもよい。第一肢部として、腕部150a等が用いられてもよい。第一関節として、肩関節250a等が用いられてもよい。胴体の左右方向の軸として、ピッチ軸530等が用いられてもよい。所定の鋭角として、傾斜角θ等が用いられてもよい。第一基準軸として、肩ヨー軸322a等が用いられてもよい。第一直交アクチュエータとして、ピッチ軸駆動モータ430a等が用いられてもよい。第一直交軸として、肩ピッチ軸332a等が用いられてもよい。第一支持アクチュエータとして、ロール軸駆動モータ440a等が用いられてもよい。第一支持軸として、肩ロール軸342a等が用いられてもよい。第二肢部として、腕部150b等が用いられてもよい。第二関節として、肩関節250b等が用いられてもよい。第二基準軸として、肩ヨー軸322b等が用いられてもよい。第二直交アクチュエータとして、ピッチ軸駆動モータ430b等が用いられてもよい。第二直交軸として、肩ピッチ軸332b等が用いられてもよい。第二支持アクチュエータとして、ロール軸駆動モータ440b等が用いられてもよい。第二支持軸として、肩ロール軸342b等が用いられてもよい。リンク機構として、リンク機構420等が用いられてもよい。制御部として、制御部100等が用いられてもよい。開口として、開口560a、560b等が用いられてもよい。
【0073】
なお、本発明は、上述した実施の形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。