(57)【要約】【課題】アームの停止後に手部の振動を短時間で減衰させることができるロボットを提供する。【解決手段】複数のリンクとリンク間を接続する複数の関節部とを備え、関節部と接続する第１手部を移動させる第１腕部１６と、第１腕部１６の姿勢を制御する制御部４と、を備え、制御部４は、第１手部を移動開始場所から移動終了場所へ移動した後の移動終了場所における第１腕部１６の姿勢を移動後姿勢とするときに移動後姿勢の中で移動終了後の第１手部１４の振動が減衰する時間が短い移動後姿勢である最適移動後姿勢を記憶するメモリー４５と、メモリー４５に記憶された最適移動後姿勢データ５８の中から移動終了場所に対応する最適移動後姿勢を検索する検索部６６、とを有し、移動後姿勢が最適移動後姿勢となるように姿勢制御部６４が第１腕部１６の姿勢を制御する。【選択図】図４
2013107138.tif 000002
【特許請求の範囲】
【請求項１】
複数のリンクと前記リンク間を接続する複数の関節部とを備え前記リンクまたは前記関節部と接続する手部を移動させる可動部と、
前記可動部の姿勢を制御する制御部と、を備え、
前記制御部は、前記手部を移動開始場所から移動終了場所へ移動した後の前記移動終了場所における前記可動部の姿勢を移動後姿勢とするときに前記移動後姿勢の中で移動終了後の前記手部の振動が減衰する時間が短い前記移動後姿勢である最適移動後姿勢を記憶する記憶部と、
前記記憶部に記憶された前記最適移動後姿勢の中から前記移動終了場所に対応する前記最適移動後姿勢を検索する検索部、とを有し、
前記移動後姿勢が前記最適移動後姿勢となるように前記制御部が前記可動部の姿勢を制御することを特徴とするロボット。
【請求項２】
請求項１に記載のロボットであって、
前記手部の振動を検出する振動検出部と、
前記最適移動後姿勢を前記記憶部に記憶させる学習部と、を有し、
前記学習部は、前記移動終了場所へ移動するときの前記移動後姿勢を複数作成し、各前記移動後姿勢にて前記可動部を移動させたときの前記手部の振動を前記振動検出部に検出させた検出結果を前記記憶部に記憶し、複数の前記検出結果の中から前記最適移動後姿勢を選択して登録することを特徴とするロボット。
【請求項３】
請求項２に記載のロボットであって、
前記振動検出部はジャイロセンサーであることを特徴とするロボット。
【請求項４】
請求項３に記載のロボットであって、
前記振動検出部は３軸ジャイロセンサーであることを特徴とするロボット。
【請求項５】
請求項１〜４のいずれか一項に記載のロボットであって、
前記可動部が所定の姿勢をとるときに前記関節部が回動する範囲である通常回動範囲と、前記手部の振動を減衰するときに前記関節部が回動する範囲である制振回動範囲と、が設定され、前記通常回動範囲は前記制振回動範囲より小さい範囲に設定されていることを特徴とするロボット。
【請求項６】
請求項１〜５のいずれか一項に記載のロボットであって、
前記可動部は前記関節部を７個以上備えていることを特徴とするロボット。
【請求項７】
請求項１〜６のいずれか一項に記載のロボットであって、
前記記憶部に記憶された前記移動終了場所と前記最適移動後姿勢とを他のロボットに出力する出力部と、
前記移動終了場所と前記最適移動後姿勢とを前記他のロボットから入力する入力部と、を備えることを特徴とするロボット。
【請求項８】
請求項１〜７のいずれか一項に記載のロボットであって、
前記記憶部には前記移動終了場所へ移動するときの前記移動後姿勢に加え前記手部を移動する最高速度を限定する限定速度が記憶されていることを特徴とするロボット。
【請求項９】
複数のリンクと前記リンク間を接続する複数の関節部とを備えた可動部が手部を移動させるロボットのロボット制御方法であって、
前記手部を移動終了場所へ移動した後の前記可動部の姿勢を移動後姿勢とし、前記移動後姿勢の中で移動終了後の前記手部の振動が減衰する時間が短い前記移動後姿勢を最適移動後姿勢とするとき、
前記移動終了場所に対応する前記最適移動後姿勢を検索する検索工程と、
前記検索工程において前記最適移動後姿勢が検索されたときには前記移動後姿勢が前記最適移動後姿勢となるように前記可動部を移動する移動工程と、
前記検索工程において前記最適移動後姿勢が検索されないときには前記移動後姿勢の中から前記最適移動後姿勢を選択して登録する学習工程と、を有することを特徴とするロボット制御方法。
【請求項１０】
請求項９に記載のロボット制御方法であって、
前記学習工程は、前記移動後姿勢の中から複数の試行姿勢を設定する試行姿勢設定工程と、
前記試行姿勢に従って前記可動部を移動させる試行移動工程と、
前記移動終了場所へ移動した後の前記手部の振動を検出し検出結果を出力する振動測定工程と、
前記試行移動工程と前記振動測定工程とが複数行われ、複数の前記検出結果を比較して前記最適移動後姿勢を選択して登録する登録工程と、を有することを特徴とするロボット制御方法。
【請求項１１】
請求項１０に記載のロボット制御方法であって、
前記試行移動工程は、前記ロボットが行う作業の中で前記移動終了場所にて前記試行姿勢を実施可能な作業となるときに行われることを特徴とするロボット制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット及びロボット制御方法にかかわり、特にロボットの振動に関するものである。
【背景技術】
【０００２】
多関節のリンク（以下アームと称す）を有するロボットが組み立て装置等の多くの装置に活用されている。ロボットがアームを移動させて停止するとき、アームが振動する。アームが振動している間はアームの先端に配置されたロボットハンドも振動する。そして、ロボットハンドが振動している間はロボットハンドがワークを把持する等の作業を行うことが難しいので、ロボットハンドの振動が停止するまで待機する必要がある。
【０００３】
ロボットがシリコンウエハーを振動させずに移動させる方法が特許文献１に開示されている。それによると、関節には波動歯車減速装置が設置されている。そして、波動歯車減速装置の回転中心軸線の方向とハンドの表裏方向とのなす角度が所定の角度範囲内で交差するかを判断している。そして、波動歯車減速装置の回転中心軸線の方向とハンドの表裏方向とのなす角度が直角に近いときには、波動歯車減速装置の角速度を調整するようにティーチングすることにより、ハンドの振動を抑えている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１６８０５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ロボットが行う作業の効率を高めるには、アームの動作を早くする必要がある。アームの動作には加速、等速移動、減速停止のステップがある。そして、停止後にアームが静止するまでが減速停止の動作である。そして、アームを精度良く作動させるには、停止後に振動していない状態で次の動作に移行する必要がある。特許文献１の方法はシリコンウエハーの搬送には有効であるが、ハンドを移動させて停止するときの振動を減衰させる有効な方法とはいい難い方法であった。そこで、アームの停止後に手部の振動を短時間で減衰させることができるロボットが求められていた。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【０００７】
［適用例１］
本適用例にかかるロボットであって、複数のリンクと前記リンク間を接続する複数の関節部とを備え前記リンクまたは前記関節部と接続する手部を移動させる可動部と、前記可動部の姿勢を制御する制御部と、を備え、前記制御部は、前記手部を移動開始場所から移動終了場所へ移動した後の前記移動終了場所における前記可動部の姿勢を移動後姿勢とするときに前記移動後姿勢の中で移動終了後の前記手部の振動が減衰する時間が短い前記移動後姿勢である最適移動後姿勢を記憶する記憶部と、前記記憶部に記憶された前記最適移動後姿勢の中から前記移動終了場所に対応する前記最適移動後姿勢を検索する検索部、とを有し、前記移動後姿勢が前記最適移動後姿勢となるように前記制御部が前記可動部の姿勢を制御することを特徴とする。
【０００８】
本適用例によれば、可動部は複数のリンクと関節部とを備えており、関節を曲げる角度を制御することにより可動部の姿勢を変えることができる。そして、制御部は可動部の姿勢を制御することにより可動部に手部を移動させる。手部を移動開始場所から移動終了場所へ移動するときに移動終了後に実施する姿勢は複数の移動後姿勢の中から選択することができる。そして、移動後姿勢によって移動終了後の手部の振動が減衰する時間が異なっている。記憶部には手部の振動が減衰する時間の短い最適移動後姿勢が移動終了後の場所に対応して記憶されている。
【０００９】
そして、検索部は記憶部に記憶された最適移動後姿勢の中から移動終了場所に対応する最適移動後姿勢を検索する。そして、制御部は移動後姿勢が最適移動後姿勢となるように可動部を移動させる。従って、手部が移動して停止した後で手部の振動が減衰する時間を短くすることができる。
【００１０】
［適用例２］
上記適用例にかかるロボットにおいて、前記手部の振動を検出する振動検出部と、前記最適移動後姿勢を前記記憶部に記憶させる学習部と、を有し、前記学習部は、前記移動終了場所へ移動するときの前記移動後姿勢を複数作成し、各前記移動後姿勢にて前記可動部を移動させたときの前記手部の振動を前記振動検出部に検出させた検出結果を前記記憶部に記憶し、複数の前記検出結果の中から前記最適移動後姿勢を選択して登録することを特徴とする。
【００１１】
本適用例によれば、ロボットは振動検出部と学習部とを有している。振動検出部は手部の振動を検出する。学習部は最適移動後姿勢を記憶部に記憶させる。学習部は、移動終了場所へ移動するときに実施可能な移動後姿勢を複数作成する。次に、学習部は、各移動後姿勢となるように可動部を移動させる。続いて、各移動後姿勢で動作したときの手部の振動を振動検出部が検出し、学習部が移動後姿勢と手部の振動とを記憶部に記憶する。次に、学習部は、複数の検出結果の中から最適移動後姿勢を選択して記憶部に登録している。従って、学習部は確実に最適移動後姿勢を登録することができる。
【００１２】
［適用例３］
上記適用例にかかるロボットにおいて、前記振動検出部はジャイロセンサーであることを特徴とする。
【００１３】
本適用例によれば、振動検出部はジャイロセンサーである。ジャイロセンサーは振動による角速度の変化を精度良く検出できる。従って、振動検出部は振動による角速度の変化を精度良く検出することができる。
【００１４】
［適用例４］
上記適用例にかかるロボットにおいて、前記振動検出部は３軸ジャイロセンサーであることを特徴とする。
【００１５】
本適用例によれば、振動検出部は３軸ジャイロセンサーである。可動部は複数のリンクとリンク間を接続する複数の関節部を備えているので、可動部は３次元の動作をすることができる。３軸ジャイロセンサーは直交する３軸方向の角速度を検出する。従って、可動部が３次元の動作をするときにも所望の方向における角速度を検出することができる。
【００１６】
［適用例５］
上記適用例にかかるロボットにおいて、前記可動部が所定の姿勢をとるときに前記関節部が回動する範囲である通常回動範囲と、前記手部の振動を減衰するときに前記関節部が回動する範囲である制振回動範囲と、が設定され、前記通常回動範囲は前記制振回動範囲より小さい範囲に設定されていることを特徴とする。
【００１７】
本適用例によれば、関節部には回動可能な範囲が設定されており、通常回動範囲は制振回動範囲より小さい範囲に設定されている。従って、通常回動範囲の境界に関節部が位置するときにも、さらに、前記手部の振動を減衰させるために関節を回動させることができる。従って、可動部の関節を通常回動範囲の中で駆動させることにより手部の振動を減衰させることができる。
【００１８】
［適用例６］
上記適用例にかかるロボットにおいて、前記可動部は前記関節部を７個以上備えていることを特徴とする。
【００１９】
本適用例によれば、可動部には７個以上の関節部が設置されている。従って、可動部は可動範囲内で手部に所望の姿勢をとらせることができる。
【００２０】
［適用例７］
上記適用例にかかるロボットにおいて、前記記憶部に記憶された前記移動終了場所と前記最適移動後姿勢とを他のロボットに出力する出力部と、前記移動終了場所と前記最適移動後姿勢とを前記他のロボットから入力する入力部と、を備えることを特徴とする。
【００２１】
本適用例によれば、ロボットは出力部と入力部とを備えている。そして、出力部は、移動終了場所と最適移動後姿勢とを他のロボットに出力する。従って、本適用例と同様な機能を有する他のロボットに移動終了場所と最適移動後姿勢を出力することができる。さらに、入力部は移動終了場所と最適移動後姿勢とを入力する。従って、本適用例を同様な機能を有する他のロボットから移動終了場所と最適移動後姿勢を入力することができる。その結果、記憶部に最適移動後姿勢が記憶されていない他のロボットに最適移動後姿勢を伝達することができる。
【００２２】
［適用例８］
上記適用例にかかるロボットにおいて、前記記憶部には前記移動終了場所へ移動するときの前記移動後姿勢に加え前記手部を移動する最高速度を限定する限定速度が記憶されていることを特徴とする。
【００２３】
本適用例によれば、記憶部には最適移動後姿勢に加え限定速度が記憶されている。従って、ロボットは最適移動後姿勢に沿って可動部を移動させてさらに限定速度で移動させることにより、手部が移動して停止した後で手部の振動が減衰する時間を短くすることができる。
【００２４】
［適用例９］
本適用例にかかるロボット制御方法は、複数のリンクと前記リンク間を接続する複数の関節部とを備えた可動部が手部を移動させるロボットのロボット制御方法であって、前記手部を移動終了場所へ移動した後の前記可動部の姿勢を移動後姿勢とし、前記移動後姿勢の中で移動終了後の前記手部の振動が減衰する時間が短い前記移動後姿勢を最適移動後姿勢とするとき、前記移動終了場所に対応する前記最適移動後姿勢を検索する検索工程と、前記検索工程において前記最適移動後姿勢が検索されたときには前記移動後姿勢が前記最適移動後姿勢となるように前記可動部を移動する移動工程と、前記検索工程において前記最適移動後姿勢が検索されないときには前記移動後姿勢の中から前記最適移動後姿勢を選択して登録する学習工程と、を有することを特徴とする。
【００２５】
本適用例によれば、可動部は複数のリンクと関節部とを備えており、関節を曲げる角度を制御することにより可動部の姿勢を変えることができる。検索工程では移動終了場所に対応する最適移動後姿勢を検索する。そして、検索工程において最適移動後姿勢が検索されたときには、移動工程にて検索された最適移動後姿勢となるように可動部を移動する。従って、手部が移動して停止した後で手部の振動が減衰する時間を短くすることができる。
【００２６】
検索工程において最適移動後姿勢が検索されないときには、学習工程において移動後姿勢の中から最適移動後姿勢が選択されて登録される。従って、最適移動後姿勢が登録された後からは手部が移動して停止した後で手部の振動が減衰する時間を短くすることができる。その結果、ロボットが稼動するにつれて登録された最適移動後姿勢の数が増加する為、手部が移動して停止した後で手部の振動が減衰する時間を短くすることができる。
【００２７】
［適用例１０］
上記適用例にかかるロボット制御方法において、前記学習工程は、前記移動後姿勢の中から複数の試行姿勢を設定する試行姿勢設定工程と、前記試行姿勢に従って前記可動部を移動させる試行移動工程と、前記移動終了場所へ移動した後の前記手部の振動を検出し検出結果を出力する振動測定工程と、前記試行移動工程と前記振動測定工程とが複数行われ、複数の前記検出結果を比較して前記最適移動後姿勢を選択して登録する登録工程と、を有することを特徴とする。
【００２８】
本適用例によれば、学習工程は試行姿勢設定工程、試行移動工程、振動測定工程及び登録工程を有している。試行姿勢設定工程では移動後姿勢の中から複数の試行姿勢を設定している。そして、試行移動工程では試行姿勢に従って可動部を移動する。続いて、振動測定工程では移動終了場所へ移動した後の手部の振動を検出し検出結果を出力している。試行移動工程と振動測定工程とを複数行うことにより、複数の試行姿勢における振動の検出結果が出力される。
【００２９】
登録工程では複数の振動の検出結果を比較して最適移動後姿勢を選択して登録している。従って、所定の移動終了場所における最適移動後姿勢を設定することができる。その結果、移動終了場所が変わるときにも、各移動終了場所における最適移動後姿勢を登録することができる。
【００３０】
［適用例１１］
上記適用例にかかるロボット制御方法において、前記試行移動工程は、前記ロボットが行う作業の中で前記移動終了場所にて前記試行姿勢を実施可能な作業となるときに行われることを特徴とする。
【００３１】
本適用例によれば、ロボットが行う作業の中で試行移動工程が行われる。従って、ロボットの作業で可動部を移動させる行為が試行移動工程の可動部を移動させる行為となる。その結果、ロボットが作業を行う工程とは別に試行移動工程を行うときに比べて生産性良く学習工程を行うことができる。
【図面の簡単な説明】
【００３２】
【図１】（ａ）は、双腕ロボットの構成を示す模式正面図、（ｂ）は、双腕ロボットの構成を示す模式平面図。
【図２】角速度検出器の構造を示す概略斜視図。
【図３】第１腕部の動作範囲を説明するための模式平面図。
【図４】組立装置の電気制御ブロック図。
【図５】（ａ）は、第１腕部の可動範囲を示す腰部模式正面図、（ｂ）は、第１腕部の可動範囲を示す腰部模式平面図。
【図６】最適移動後姿勢データの一部を示す図。
【図７】第１腕部がワークを移動する作業のフローチャート。
【図８】第１腕部がワークを移動する作業を説明するための図。
【図９】第１腕部がワークを移動する作業を説明するための図。
【図１０】第１腕部がワークを移動する作業を説明するための図。
【図１１】第１腕部がワークを移動する作業を説明するための図。
【図１２】第１腕部がワークを移動する作業を説明するための図。
【図１３】第１腕部がワークを移動する作業を説明するための図。
【発明を実施するための形態】
【００３３】
以下、実施例について図面に従って説明する。尚、各図面における各部材は、各図面上で認識可能な程度の大きさとするため、各部材毎に縮尺を異ならせて図示している。
（実施形態）
本実施形態では、双腕ロボットと、この双腕ロボットの姿勢を制御する方法の特徴的な例について、図１〜図１３に従って説明する。
【００３４】
図１（ａ）は、双腕ロボットの構成を示す模式正面図であり、図１（ｂ）は、双腕ロボットの構成を示す模式平面図である。図１に示すように、ロボット１は床２に設置された直方体の基台３を備え、基台３は鉛直方向に長い形状となっている。そして、鉛直方向で床２から離れる方向をＺ方向とし、水平方向で基台３の側面を構成する面のうち直交する２面が向く方向をＸ方向とＹ方向とする。−Ｙ方向はロボット１の正面であり、Ｘ方向はロボット１の横側の面となっている。
【００３５】
基台３の内部の床２側にはロボット１の姿勢を制御する制御部４が設置されている。基台３の内部のＺ方向には胴体回動機構５が設置されている。胴体回動機構５はモーター、ロータリーエンコーダー、減速装置等から構成されている。そして、ロータリーエンコーダーがモーターの出力軸の回転角度を検出し、減速装置がモーターの出力軸の回転を減速して回転軸としての出力軸５ａに出力する。これにより、胴体回動機構５は精度良く所定の回転角度にて出力軸５ａを回動させることができる。
【００３６】
出力軸５ａはＺ方向に突出して設置され、出力軸５ａには直方体の胴体部６が接続されている。胴体回動機構５により胴体部６は基台３に対して回動することが可能になっている。胴体部６の一面が正面を向くとき、胴体部６の内部のＸ方向の場所には第１肩用回動機構６ａが設置されている。そして、第１肩用回動機構６ａはＸ方向を回転軸として回動する出力軸を有し、該出力軸にはリンクとしての第１肩部７が接続されている。これにより、第１肩部７はＸ方向を回転軸として回動可能になっている。
【００３７】
第１肩部７にはＺ方向を回転軸として回動する出力軸を備える第１肩関節用回動機構７ａが設置されている。そして、第１肩関節用回動機構７ａの出力軸７ｂにはリンクとしての第１肩関節部８が設置されている。第１肩関節用回動機構７ａにより第１肩関節部８はＺ方向を回転軸として回動可能になっている。
【００３８】
第１肩関節部８の胴体部６の反対側には第１肩関節部８と接続してリンクとしての第１元側腕部９が設置されている。第１元側腕部９の内部の第１肩関節部８側には第１腕捻り用回動機構９ａが設置されている。そして、第１腕捻り用回動機構９ａは回動する出力軸を有し、該出力軸の軸方向は第１元側腕部９の長手方向となっている。第１腕捻り用回動機構９ａの出力軸は第１肩関節部８と接続されている。そして、第１腕捻り用回動機構９ａにより第１元側腕部９は第１元側腕部９の長手方向を回転軸として回動可能になっている。
【００３９】
第１元側腕部９において第１肩関節部８の反対側にはリンクとしての第１先側腕部１０が設置されている。第１先側腕部１０の一端にはＺ方向を回転軸として回動する出力軸を備える第１腕関節用回動機構１０ａが設置されている。そして、第１腕関節用回動機構１０ａの出力軸１０ｂには第１元側腕部９が接続されている。第１腕関節用回動機構１０ａにより第１元側腕部９に対して第１先側腕部１０が回動可能になっている。
【００４０】
第１先側腕部１０の第１元側腕部９と反対側の端には第１先側腕部１０の内部に第１手首用回動機構１０ｃが設置されている。そして、第１手首用回動機構１０ｃは回動する出力軸を有し、該出力軸は第１先側腕部１０の長手方向を回転軸として回動可能になっている。第１手首用回動機構１０ｃの出力軸はリンクとしての第１手首元部１１と接続されている。そして、第１手首用回動機構１０ｃにより第１手首元部１１は第１先側腕部１０の長手方向を回転軸の方向にして回動可能になっている。
【００４１】
第１手首元部１１の内部には第１手首先部用回動機構１１ａが設置されている。第１手首先部用回動機構１１ａは回動する出力軸を有し、該出力軸は第１手首用回動機構１０ｃの出力軸と直交する方向を回転軸として回動可能になっている。第１手首先部用回動機構１１ａの出力軸を軸方向から挟むように門型のリンクとしての第１手首先部１２が設置されている。第１手首先部用回動機構１１ａにより第１手首先部１２は第１手首先部用回動機構１１ａの出力軸を回転軸として回動可能になっている。
【００４２】
第１手首先部１２には第１腕用角速度検出器１３が設置されている。第１腕用角速度検出器１３は第１手首先部１２の角速度を検出する。第１腕用角速度検出器１３が備えるセンサーの種類は第１手部１４の振動を検出可能であれば良く特に限定されない。本実施形態では水晶振動子を用いたジャイロセンサーを採用している。水晶振動子を用いたジャイロセンサーは周波数の高い角速度の変化を検出することができる。従って、振動を検出するためのセンサーとしては水晶振動子を用いたジャイロセンサーが好ましい。
【００４３】
第１手首先部１２の内部には第１手部用回動機構１２ａが設置されている。そして、第１手部用回動機構１２ａは回動する出力軸を有し、該出力軸は第１手首先部用回動機構１１ａの出力軸と直交する方向を回転軸として回動可能になっている。第１手部用回動機構１２ａの出力軸は第１手部１４と接続されている。そして、第１手部用回動機構１２ａにより第１手部１４は回動可能になっている。また、第１腕用角速度検出器１３は設置された第１手首先部１２を介して第１手部１４の振動を検出する。
【００４４】
第１手部１４の内部には第１指用直動機構１４ａが設置されている。そして、第１指用直動機構１４ａには一対の直方体の第１指部１５が設置されている。そして、第１指用直動機構１４ａは第１指部１５の間隔を変更することが可能になっている。これにより、第１指部１５はワークを挟んで把持することができる。
【００４５】
第１肩部７、第１肩関節部８、第１元側腕部９、第１先側腕部１０、第１手首元部１１、第１手首先部１２、第１手部１４及び第１指部１５等により可動部としての第１腕部１６が構成されている。胴体部６において第１肩部７の反対側には第１腕部１６の同様な機能と構造とを備えた可動部としての第２腕部１７が設置されている。
【００４６】
つまり、胴体部６において第１肩部７の反対側には第１肩用回動機構６ａ、第１肩部７、第１肩関節用回動機構７ａ、出力軸７ｂに対応して第２肩用回動機構６ｂ、リンクとしての第２肩部１８、第２肩関節用回動機構１８ａ、出力軸１８ｂが設置されている。
【００４７】
さらに、第１腕部１６の第１肩関節部８、第１元側腕部９、第１腕捻り用回動機構９ａに対応して第２腕部１７にはリンクとしての第２肩関節部１９、リンクとしての第２元側腕部２０、第２腕捻り用回動機構２０ａが設置されている。さらに、第１腕部１６の第１先側腕部１０、第１腕関節用回動機構１０ａ、出力軸１０ｂ、第１手首用回動機構１０ｃに対応して第２腕部１７にはリンクとしての第２先側腕部２３、第２腕関節用回動機構２３ａ、出力軸２３ｂ、第２手首用回動機構２３ｃが設置されている。
【００４８】
さらに、第１腕部１６の第１手首元部１１、第１手首先部用回動機構１１ａ、第１手首先部１２、第１手部用回動機構１２ａに対応して第２腕部１７にはリンクとしての第２手首元部２４、第２手首先部用回動機構２４ａ、リンクとしての第２手首先部２５、第２手部指用回動機構２５ａ、が設置されている。さらに、第１腕用角速度検出器１３、第１手部１４、第１指用直動機構１４ａに対応して第２腕部１７には第２腕用角速度検出器２６、第２手部２７、第２指用直動機構２７ａが設置されている。さらに、第１腕部１６の第１指部１５に対応して第２腕部１７には第２指部２８が設置されている。
【００４９】
ロボット１は基台３に対して胴体部６を回動させることができる。そして、胴体部６に対して第１腕部１６及び第２腕部１７を移動させることができる。図１（ｂ）において第１移動範囲１ａは胴体部６を固定した状態で第１腕部１６が移動可能な範囲を示している。そして、第２移動範囲１ｂは胴体部６を固定した状態で第２腕部１７が移動可能な範囲を示している。第３移動範囲１ｃは胴体部６を回動させて第１腕部１６及び第２腕部１７が移動可能な範囲を示している。
【００５０】
制御部４は、第１腕部１６の第１肩用回動機構６ａ、第１肩関節用回動機構７ａ、第１腕関節用回動機構１０ａ、第１手首先部用回動機構１１ａを駆動させることにより第１指部１５を第１移動範囲１ａの所望の場所へ移動させることができる。そして、制御部４、は第１腕捻り用回動機構９ａ及び第１手首用回動機構１０ｃを駆動させることにより第１手部１４を上下に移動させたり水平に移動させたりすることができる。さらに、制御部４は、第１手首用回動機構１０ｃ及び第１手首先部用回動機構１１ａを駆動することにより、第１指部１５の長手方向をＺ方向、Ｘ方向、Ｙ方向等の所望の方向に向けさせることができる。さらに、制御部４は、第１手部用回動機構１２ａを駆動させることにより、第１指部１５の開閉方向を変えることができる。従って、制御部４は第１指部１５を所望の姿勢にして、第１指部１５がワークを挟んで把持することが可能になっている。
【００５１】
同様に、制御部４は、第２腕部１７の第２肩用回動機構６ｂ、第２肩関節用回動機構１８ａ、第２腕関節用回動機構２３ａ、第２手首先部用回動機構２４ａを回動させることにより第２指部２８を第２移動範囲１ｂの所望の場所へ移動させることができる。さらに、制御部４は、第２腕捻り用回動機構２０ａ、第２手首用回動機構２３ｃ、第２手部指用回動機構２５ａを駆動することにより、第２腕部１７を所望の姿勢に制御することができる。第２腕部１７は第１腕部１６と同様な構造となっている。従って、制御部４は第２指部２８を所望の姿勢にして、第２指部２８がワークを挟んで把持することが可能になっている。さらに、制御部４は基台３に対して胴体部６を回動させることにより第３移動範囲１ｃの所望の場所へ第１指部１５または第２指部２８を移動させることができる。
【００５２】
第１腕部１６は胴体部６から第１手部１４に向けて第１肩用回動機構６ａ、第１肩関節用回動機構７ａ、第１腕捻り用回動機構９ａ、第１腕関節用回動機構１０ａ、第１手首用回動機構１０ｃ、第１手首先部用回動機構１１ａ、第１手部用回動機構１２ａの７つの機構を備えている。以下、説明を容易にするために、第１肩用回動機構６ａ、第１肩関節用回動機構７ａ、第１腕捻り用回動機構９ａ、第１腕関節用回動機構１０ａ、第１手首用回動機構１０ｃ、第１手首先部用回動機構１１ａ、第１手部用回動機構１２ａの７つの回動機構を関節部としての第１関節２９〜第７関節３５と称す。
【００５３】
つまり、第１関節２９が第１肩用回動機構６ａであり、第２関節３０が第１肩関節用回動機構７ａである。第３関節３１が第１腕捻り用回動機構９ａであり、第４関節３２が第１腕関節用回動機構１０ａである。第５関節３３が第１手首用回動機構１０ｃであり、第６関節３４が第１手首先部用回動機構１１ａである。そして、第７関節３５が第１手部用回動機構１２ａである。
【００５４】
図２は角速度検出器の構造を示す概略斜視図である。第１腕用角速度検出器１３及び第２腕用角速度検出器２６は同様の構造となっている。第１腕用角速度検出器１３について説明し、第２腕用角速度検出器２６の説明は省略する。
【００５５】
図２に示すように、第１腕用角速度検出器１３は支持部３６を備え、支持部３６は直交する３つの方向を向く第１面３６ａ、第２面３６ｂ、第３面３６ｃを備えている。そして、第１面３６ａ、第２面３６ｂ、第３面３６ｃの各面の法線方向をそれぞれＸ方向、Ｙ方向、Ｚ方向とする。第１面３６ａ、第２面３６ｂ、第３面３６ｃにはそれぞれ第１ジャイロセンサー３７、第２ジャイロセンサー３８、第３ジャイロセンサー３９が設置されている。
【００５６】
各ジャイロセンサーには角速度を検出する水晶振動子が内蔵されている。そして、第１ジャイロセンサー３７はＸ方向を回転中心とする角速度を検出し、第２ジャイロセンサー３８はＹ方向を回転中心とする角速度を検出する。第３ジャイロセンサー３９はＺ方向を回転中心とする角速度を検出する。従って、第１腕用角速度検出器１３が回転するときに、回転角度のＸＹＺ方向の各成分をそれぞれ第１ジャイロセンサー３７、第２ジャイロセンサー３８、第３ジャイロセンサー３９が検出する。従って、第１腕用角速度検出器１３は３次元の回転速度を検出する３軸ジャイロセンサーとなっている。
【００５７】
図３は、第１腕部の動作範囲を説明するための模式平面図である。図３に示すように、第１腕部１６は第４関節３２にて回動可能となっている。そして、第４関節３２が回動する範囲は通常回動範囲４０と制振回動範囲４１とが設定されている。通常回動範囲４０は第１腕部１６を目標とする姿勢にするために第４関節３２が回動する範囲である。そして、制振回動範囲４１は第１指部１５の振動を減衰させるために第４関節３２を回動させる範囲である。制振回動範囲４１は通常回動範囲４０より大きな角度となっている。従って、第４関節３２が通常回動範囲４０の境界となる角度になっているときにも、第１手部１４の振動を減衰させるために制振回動範囲４１の範囲内で回動させることができる。第１関節２９〜第３関節３１及び第５関節３３〜第７関節３５においても第４関節３２と同様に、通常回動範囲と制振回動範囲４１とが設定されている。そして、制振回動範囲は通常回動範囲より大きな角度となっている。これにより、各関節とも第１手部１４の振動を減衰させるために制振回動範囲の範囲内で回動させることができる。
【００５８】
図４は、組立装置の電気制御ブロック図である。図４において、ロボット１は動作を制御する制御部４を備えている。そして、制御部４はプロセッサーとして各種の演算処理を行うＣＰＵ（中央演算処理装置）４４と、各種情報を記憶する記憶部としてのメモリー４５とを備えている。
【００５９】
本体駆動装置４６、第１腕部駆動装置４７、第２腕部駆動装置４８は入出力インターフェイス４９及びデータバス５０を介してＣＰＵ４４に接続されている。さらに、第１腕用角速度検出器１３、第２腕用角速度検出器２６、入力部としての入力装置５１、出力部としての出力装置５２も入出力インターフェイス４９及びデータバス５０を介してＣＰＵ４４に接続されている。
【００６０】
本体駆動装置４６は胴体回動機構５を駆動する装置である。本体駆動装置４６は胴体回動機構５を駆動することにより、胴体部６を基台３に対して所定の相対角度で回動させることができる。第１腕部駆動装置４７は第１腕部１６を駆動する装置である。第１腕部駆動装置４７は第１腕部１６に設置させた各回動機構を駆動することにより第１腕部１６を所望の姿勢に動かすことができる。同様に、第２腕部駆動装置４８は第２腕部１７を駆動する装置である。第２腕部駆動装置４８は第２腕部１７に設置させた各回動機構を駆動することにより第２腕部１７を所望の姿勢に動かすことができる。
【００６１】
入力装置５１はキーボードや外部機器との接続インターフェイス等のデータを入力する装置である。他にも入力装置５１にはロボット１の動作を入力するティーチング用の装置が含まれる。出力装置５２はロボット１の状態や各種データを表示する表示装置や、外部機器に出力する接続インターフェイス等の装置である。操作者は入力装置５１を用いて各種データを入力して出力装置５２にて確認することができるようになっている。
【００６２】
ロボット１と同等の機能を備えるロボット５３が存在し、ロボット５３は入力部としての入力装置５４及び出力部としての出力装置５５を備えている。このとき、入力装置５１と出力装置５５とを接続し、出力装置５２と入力装置５４とを接続する。そして、メモリー４５に記憶したデータをロボット５３に送信し、ロボット５３が記憶するデータをメモリー４５に受信することができる。
【００６３】
メモリー４５は、ＲＡＭ、ＲＯＭ等といった半導体メモリーや、ハードディスク、ＤＶＤ−ＲＯＭといった外部記憶装置を含む概念である。機能的には、ロボット１の動作の制御手順が記述されたプログラムソフト５６を記憶する記憶領域や、第１腕部１６及び第２腕部１７の長さや可動域等の情報であるロボット属性データ５７を記憶する記憶領域が設定される。他にも、第１腕部１６の移動後姿勢の中で移動終了後の第１手部１４の振動が減衰する時間が短い移動後姿勢である最適移動後姿勢のデータである最適移動後姿勢データ５８を記憶するための記憶領域が設定される。最適移動後姿勢データ５８には第２腕部１７の最適移動後姿勢のデータも記憶される。さらに、第１腕部１６の姿勢を変えたときに第１腕用角速度検出器１３が検出する振動のデータである試行振動データ５９を記憶するための記憶領域が設定される。他にも、移動する場所に対応して設定された速度のデータである限定速度データ６０を記憶するための記憶領域が設定される。さらに、第１腕用角速度検出器１３が出力する振動の程度から移動速度を選択するための振動判定データ６１を記憶するための記憶領域が設定される。他にも、ＣＰＵ４４のためのワークエリアやテンポラリーファイル等として機能する記憶領域やその他各種の記憶領域が設定される。
【００６４】
ＣＰＵ４４は、メモリー４５内に記憶されたプログラムソフト５６に従って、ロボット１の制御を行うものである。具体的な機能実現部としてロボット１の姿勢を制御する制御部としての姿勢制御部６４を有する。ロボット１が備える各回動機構は回転角度を検出するセンサーを備えている。そして、本体駆動装置４６、第１腕部駆動装置４７、第２腕部駆動装置４８は各センサーが出力する各回動機構の出力軸の角度情報を姿勢制御部６４に伝送する。そして、姿勢制御部６４は胴体部６、第１腕部１６、及び第２腕部１７の姿勢を認識することが可能になっている。姿勢制御部６４はロボット１の姿勢を認識して姿勢を変更する指示を本体駆動装置４６、第１腕部駆動装置４７、第２腕部駆動装置４８に出力する。そして、本体駆動装置４６、第１腕部駆動装置４７、第２腕部駆動装置４８がそれぞれ胴体回動機構５、第１腕部１６、第２腕部１７を駆動することにより姿勢制御部６４はロボット１の姿勢を制御する。
【００６５】
他にも、ＣＰＵ４４は第１腕部１６及び第２腕部１７の振動を検出する振動検出部６５を有する。振動検出部６５は第１腕用角速度検出器１３が出力する信号を入力して基台３に対する第１手部１４の振動を演算する。さらに、振動検出部６５は第２腕用角速度検出器２６が出力する信号を入力して基台３に対する第２手部２７の振動を演算する。そして、振動検出部６５は振動のデータを姿勢制御部６４に出力し、姿勢制御部６４は第１手部１４及び第２手部２７の振動を減衰させる駆動をする。
【００６６】
他にも、ＣＰＵ４４は最適移動後姿勢データ５８から移動終了場所に対応する最適移動後姿勢を検索する検索部６６を有する。検索部６６は検索結果が得られるときには、振動が減衰し易い姿勢のデータを姿勢制御部６４に出力する。そして、姿勢制御部６４は腕部の振動が小さくなる姿勢で第１腕部１６及び第２腕部１７を駆動する。
【００６７】
さらに、ＣＰＵ４４は最適移動後姿勢データ５８をロボット５３に出力し、最適移動後姿勢データ５８をロボット５３から入力するデータ転送部６７を有する。そして、ロボット１とロボット５３との間で共有されていない最適移動後姿勢データ５８があるときには、データ転送を行うことにより同じデータを持つようにすることができる。
【００６８】
他にも、ＣＰＵ４４は最適移動後姿勢データ５８にデータがないときに、学習する学習部６８を有する。学習部６８は、試行姿勢設定部６９、振動時間管理部７０、最適姿勢設定部７１等を有する。試行姿勢設定部６９は移動後の姿勢と振動が減衰するまでの時間を検出するときに実施する姿勢を複数設定する機能を備えている。振動時間管理部７０は複数設定された姿勢で停止したときの姿勢と振動が停止するまでの時間とのデータを管理する機能を備えている。最適姿勢設定部７１は振動のデータを用いて腕部の振動が減衰し易い姿勢を選択して最適移動後姿勢データ５８に登録する機能を備えている。
【００６９】
図５（ａ）は、第１腕部の可動範囲を示す腰部模式正面図であり、図５（ｂ）は、第１腕部の可動範囲を示す腰部模式平面図である。図５は最適移動後姿勢データを説明するための模式図である。図５（ａ）に示すように、第１移動範囲１ａが水平方向に広がる面にて１４段に分割されている。そして、床２に近い段から順に、第１段７２ａ〜第１４段７２ｐと各段に名前が付与されている。各段のＺ方向の幅は同じ長さに設定されており、各段における第１移動範囲１ａの水平方向の面積は異なっている。各段には段番号が設定され、この番号を段番号と称す。第１段７２ａの段番号は”１”であり、第２段７２ｂの段番号は”２”である。このように、各段の順番と段番号とが一致するように設定されている。
【００７０】
図５（ｂ）は第７段７２ｇにおける第１移動範囲１ａを示している。各段の第１移動範囲１ａは格子状に領域が区分けされ各行及び各列に番号が付与されている。例えば、第７段７２ｇの第１移動範囲１ａはＹ方向に１２行に分割されている。そして、−Ｙ方向からＹ方向に向けて第１行７３ａ〜第１２行７３ｍと各行に行番号が付与されている。同様に、第７段７２ｇの第１移動範囲１ａはＸ方向に１０列に分割されている。そして、−Ｘ方向からＸ方向に向けて第１列７４ａ〜第１０列７４ｊと各列に列番号が付与されている。
【００７１】
さらに、格子状の各領域は行番号の小さい番号から大きい番号の順でさらに列番号の小さい番号から大きい番号の順に番号が付与されている。この番号を平面番号と称す。第１行７３ａでは第２列７４ｂの平面番号が”１”であり、第７列７４ｇの平面番号が”６”となる。第２行７３ｂでは第１列７４ａの平面番号が”７”であり、第８列７４ｈの平面番号が”１４”となる。このように各領域に平面番号が設定されている。
【００７２】
図６は最適移動後姿勢データの一部を示す図である。図６に示すように、最適移動後姿勢データ５８には腕番号が設定されている。腕番号は第１腕部１６と第２腕部１７とを示し、第１腕部１６の腕番号は”１”に設定され、第２腕部１７の腕番号は”２”に設定されている。図中の表で段番号の欄に”１”と記載されているのは、第１腕部１６におけるデータであることを示している。
【００７３】
腕番号の隣の列には”段番号”が記載されている。”段番号”は第１移動範囲１ａが区切られた段の番号である。図中の表の”段番号”の欄に”８”と記載されているのは、この”段番号”が第８段７２ｈのデータであることを示している。”段番号”の隣の列には”平面番号”が記載されている。この”平面番号”は各段における平面位置を示している。従って、図中の表の”平面番号”の欄に”９”と記載されているのは、第８段７２ｈの”平面番号”が９番のデータであることを示している。
【００７４】
”腕番号”が”１”、”段番号”が”８”、”平面番号”が”９”のデータは第１手部１４の重心の位置が第８段７２ｈの”平面番号”が”９”の領域に位置するときのデータであることを示している。そして、”関節角度”の欄には指定された領域に第１手部１４が移動したときの第１腕部１６における第１関節２９〜第７関節３５のデータが設定されている。この第１関節２９〜第７関節３５のデータは各関節における出力軸の角度を示すデータとなっている。各関節の角度が設定されることにより第１腕部１６の姿勢が設定される。そして、第８段７２ｈの平面番号が”９”に示される場所に第１手部１４が移動するときには”関節角度”の欄に示される角度に各関節が移動する。”関節角度”の欄に示される姿勢は移動後の振動が短時間で減衰する姿勢である最適移動後姿勢となっている。
【００７５】
”関節角度”の欄の隣の欄には”限定速度”の欄が設置されている。”限定速度”の欄には第１手部１４を移動させるときの最高速度を限定する速度が設置されている。例えば、”限定速度”が８０のときには第１手部１４の移動速度を８０ｍ／ｓ以下の速度で移動させる制御を行う。第１腕部１６が振動し易い姿勢になるときには”限定速度”は遅い速度に設定され、第１腕部１６が振動し難い姿勢になるときには”限定速度”は速い速度に設定されている。
【００７６】
第１移動範囲１ａの場所で”関節角度”及び”限定速度”が設定されていない場所が存在することがある。例えば、図中で”腕番号”が”１”、”段番号”が”８”、”平面番号”が”１４”のデータでは”関節角度”及び”限定速度”が設定されていない。”関節角度”及び”限定速度”が設定されている場所は、この場所での第１腕部１６の姿勢と振動の減衰との関係が解析されている場所となっている。そして、”関節角度”及び”限定速度”が設定されていない場所は、この場所での第１腕部１６の姿勢と振動の減衰との関係が解析されていない場所となっている。尚、第２腕部１７における最適移動後姿勢データ５８と第１腕部１６における最適移動後姿勢データ５８とは同様のデータであり説明を省略する。
【００７７】
次に上述した第１腕部１６がワークを移動するときの制御方法について図７〜図１３にて説明する。図７は、第１腕部がワークを移動する作業のフローチャートであり、図８〜図１３は第１腕部がワークを移動する作業を説明するための図である。
【００７８】
図７のフローチャートにおいて、ステップＳ１は移動先設定工程に相当し、ＣＰＵ４４が第１手部１４を移動させる場所を設定する工程である。次にステップＳ２に移行する。ステップＳ２は検索工程に相当し、最適移動後姿勢データ５８を用いて第１手部１４を移動させる場所に対応する”関節角度”のデータを検索する工程である。”関節角度”のデータは第１腕部１６の最適移動後姿勢を示すデータである。次にステップＳ３に移行する。ステップＳ３は検索判断工程に相当し、最適移動後姿勢データ５８に最適移動後姿勢を示すデータが登録されていたかを判断する工程である。最適移動後姿勢を示すデータが登録されているときステップＳ４に移行する。最適移動後姿勢を示すデータが登録されていないときステップＳ５に移行する。
【００７９】
ステップＳ４は移動工程に相当する。この工程は、姿勢制御部６４が第１手部１４を設定された移動先に移動させる工程である。このとき、第１腕部１６の姿勢をステップＳ２にて検索した最適移動後姿勢に変形させながら姿勢制御部６４が第１手部１４を移動先に移動させる。次にステップＳ５に移行する。ステップＳ５は試行姿勢設定工程に相当する。この工程は、試行姿勢設定部６９が移動後姿勢の候補である試行姿勢を複数設定する工程である。すでに試行姿勢が設定されているときには何も行わない。次にステップＳ６に移行する。ステップＳ６は試行移動工程に相当する。この工程では、第１腕部１６の姿勢を試行姿勢に変形させながら姿勢制御部６４が第１手部１４を移動先に移動させる。次にステップＳ７に移行する。ステップＳ７は振動測定工程に相当する。この工程は、第１手部１４が移動終了場所へ移動した後の第１手部１４の振動を振動検出部６５が第１腕用角速度検出器１３に検出させて検出結果をメモリー４５に出力する工程である。次にステップＳ８に移行する。
【００８０】
ステップＳ８は登録工程に相当する。この工程は、ステップＳ５で設定された総ての試行姿勢における検出結果が揃ったときに行われる工程である。ステップＳ６ではステップＳ５で設定された試行姿勢のうち検出結果が出力されていない試行姿勢を選択して行われる。従って、ステップＳ５で設定された試行姿勢の個数と同じ回数のステップＳ６とステップＳ７とが行われる。そして、ステップＳ８は複数の検出結果を比較して移動後に振動が減衰するのにかかる時間の短い最適移動後姿勢を選択して最適移動後姿勢データ５８に登録する工程である。ステップＳ５〜ステップＳ８のステップをあわせてステップＳ１１の学習工程とする。次にステップＳ９に移行する。
【００８１】
ステップＳ９は、作業工程に相当する。この工程は、第１指部１５がワークを把持し続ける動作や離す動作を行う工程である。次にステップＳ１０に移行する。ステップＳ１０は終了判断工程に相当する。この工程は、作業を継続するか否かを判断する工程である。作業を継続するときには次にステップＳ１に移行する。作業を終了するときには第１腕部がワークを移動する作業の工程を終了する。
【００８２】
次に、図８〜図１２を用いて、図７に示したステップと対応させて、第１腕部１６の制御方法を詳細に説明する。
図８はステップＳ１の移動先設定工程、ステップＳ２の検索工程及びステップＳ３の検索判断工程に対応する図である。図８に示すように、基台３の前面側と両側面側とを囲んで作業台７７が設置されている。そして、第１指部１５は円筒状のワーク７８を挟んで把持している。ステップＳ１ではロボット１が行う作業を行うためにワーク７８を移動させる場所である移動終了場所７９が設定される。移動終了場所７９は第１指部１５が移動可能な範囲内に設定される。
【００８３】
ステップＳ２では移動終了場所７９に第１指部１５が位置するときに第１手部１４の重心がどの領域に位置するかの演算が検索部６６によって行われる。まず、移動先の第１手部１４の重心が第１移動範囲１ａの第１段７２ａ〜第１４段７２ｐのうちのどの段に属するかの演算が行われる。次に、移動先の第１手部１４の重心が属する段で区切られた領域のうちのどの領域に位置するかの演算が行われる。その結果、第１手部１４の移動先の”段番号”及び”平面番号”が算出される。
【００８４】
続いて、検索部６６は算出した、”段番号”及び”平面番号”に対応する”関節角度”のデータを最適移動後姿勢データ５８から検索する。ステップＳ３では”関節角度”のデータの有無に応じて次に行うステップを切り換える。検索した”関節角度”のデータが登録されているときにはステップＳ４に移行する。
【００８５】
図９はステップＳ４の移動工程に対応する図である。図９に示すように、姿勢制御部６４は第１腕部駆動装置４７に第１腕部１６を駆動させる。そして、第１指部１５はワーク７８を把持したまま移動終了場所７９に移動する。このとき、姿勢制御部６４は第１腕部１６の移動後姿勢が検索した最適移動後姿勢となるように第１腕部１６の姿勢を変えながら移動させる。これにより、第１手部１４が移動終了場所７９に移動した後の姿勢は最適移動後姿勢となるため、第１手部１４の振動を短時間で減衰させることができる。
【００８６】
図１０及び図１１はステップＳ５の試行姿勢設定工程に対応する図である。試行姿勢設定工程では実施可能な移動後姿勢の中から複数の試行姿勢を設定する。既に設定されているときにはステップＳ５では何も行われずステップＳ６に移行する。試行姿勢の数は特に限定されないが本実施形態では例えば第１姿勢〜第７姿勢の７つの試行姿勢を設定している。図１０には７つの試行姿勢の内第１姿勢、第４姿勢、第７姿勢の３つの姿勢を示している。
【００８７】
図１０（ａ）は第１腕部の第１姿勢を示す模式正面図であり、図１０（ｂ）は第１腕部の第１姿勢を示す模式平面図である。図１０（ａ）及び図１０（ｂ）に示すように、第１指部１５は鉛直方向に延在するように位置している。従って、第６関節３４の平面位置は移動終了場所７９と同じ位置となっている。そして、第１姿勢１６ａでは、第４関節３２が第２関節３０及び第６関節３４よりＺ方向に位置する姿勢となっている。つまり、第１姿勢１６ａは第１腕部１６の中程を曲げてＺ方向に上げた姿勢となっている。
【００８８】
図１０（ｃ）は第１腕部の第４姿勢を示す模式正面図であり、図１０（ｄ）は第１腕部の第４姿勢を示す模式平面図である。図１０（ｃ）及び図１０（ｄ）に示すように、第２関節３０及び第６関節３４の位置は第１姿勢１６ａのときと同じ位置となっている。第４姿勢１６ｂでは、第４関節３２のＺ方向の位置が第２関節３０と略同じ位置の姿勢となっている。そして、第４姿勢１６ｂは第１腕部１６の中程を曲げて第４関節３２をＸ方向に突出した姿勢となっている。
【００８９】
第２姿勢と第３姿勢とは第１姿勢１６ａと第４姿勢１６ｂとの中間の姿勢である。従って、第２姿勢及び第３姿勢の第４関節３２の位置は第１姿勢１６ａにおける第４関節３２の位置と第４姿勢１６ｂにおける第４関節３２の位置との間の位置に設定されている。そして、第２姿勢の第４関節３２の位置は第３姿勢の第４関節３２の位置より第１姿勢１６ａの第４関節３２に近い場所に設定されている。
【００９０】
図１０（ｅ）は第１腕部の第７姿勢を示す模式正面図であり、図１０（ｆ）は第１腕部の第７姿勢を示す模式平面図である。図１０（ｅ）及び図１０（ｆ）に示すように、第２関節３０及び第６関節３４の位置は第１姿勢１６ａのときと同じ位置となっている。そして、第７姿勢１６ｃでは、第４関節３２が第２関節３０及び第６関節３４より−Ｚ方向に位置する姿勢となっている。つまり、第７姿勢１６ｃは第１腕部１６の中程を曲げて−Ｚ方向に下げた姿勢となっている。
【００９１】
第５姿勢と第６姿勢とは第４姿勢１６ｂと第７姿勢１６ｃとの中間の姿勢である。従って、第５姿勢及び第６姿勢の第４関節３２の位置は第４姿勢１６ｂにおける第４関節３２の位置と第７姿勢１６ｃにおける第４関節３２の位置との間の位置に設定されている。そして、第６姿勢の第４関節３２の位置は第５姿勢の第４関節３２の位置より第７姿勢１６ｃの第４関節３２に近い場所に設定されている。
【００９２】
図１１は第１手部を移動する移動速度の推移を示すグラフである。図の縦軸は移動速度を示し、図中上側が下側より速い速度となっている。横軸は時間の経過を示し、時間は左側から右側に推移する。そして、第１速度推移線８０、第２速度推移線８１、第３速度推移線８２は第１手部１４を移動開始場所から移動終了場所７９に移動するときの速度推移の設定を示している。各速度推移線ともに移動を開始後に加速し、所定の速度になったところで等速移動する。そして、等速移動した後で減速して停止する。そして、等速移動する時間を制御することにより所定の距離を移動するようになっている。
【００９３】
移動速度の設定は３段階に設定され、第１速度推移線８０では最高速度が８０ｍ／ｓに設定されており、第３速度推移線８２では最高速度が６０ｍ／ｓに設定されている。そして、第２速度推移線８１の最高速度は第１速度推移線８０と第３速度推移線８２との中間の速度であり、最高速度が７０ｍ／ｓに設定されている。これらの移動速度は最適移動後姿勢データ５８の”限定速度”に示された速度と同じ速度が設定されている。尚、速度設定の段階は３段階によらず、２段階でも良く４段階以上でも良い。
【００９４】
図１２はステップＳ６の試行移動工程及びステップＳ７の振動測定工程に対応する図であり、移動にともなって生じる第１手部１４の振動を示すグラフである。ステップＳ６において学習部６８は第１姿勢１６ａから第７姿勢１６ｃの１つを選択し、第１速度推移線８０から第３速度推移線８２の１つを選択する。このとき、過去にすでに試行した組合せを排除して選択する。速度推移線は第１速度推移線８０が優先して選択され、次ぎに、第２速度推移線８１、第３速度推移線８２の順番に選択される。従って、まず、第１速度推移線８０の条件で第１姿勢１６ａから第７姿勢１６ｃが選択される。そして、第１速度推移線８０の条件の各姿勢が総て行われた後、第２速度推移線８１の条件で第１姿勢１６ａから第７姿勢１６ｃが選択される。次に、第２速度推移線８１の条件の各姿勢が総て行われた後、第３速度推移線８２の条件で第１姿勢１６ａから第７姿勢１６ｃが選択される。
【００９５】
次に、選択した姿勢と速度推移線との条件にて姿勢制御部６４が第１腕部１６を移動させる。図１２において縦軸は第１手部１４の位置を示し、移動開始場所から移動終了場所７９まで第１手部１４の軌跡に沿った場所の位置を示している。そして、横軸は時間の経過を示し、時間は左側から右側に推移する。
【００９６】
第１手部１４の位置を各関節が備えるエンコーダーが検出する。さらに、第１腕用角速度検出器１３が第１手首先部１２の角速度の推移を検出する。このとき、第１腕用角速度検出器１３は第１手部１４が振動する様子も検出するので、エンコーダーの出力と第１腕用角速度検出器１３の出力とを合成することにより、第１手部１４の動作を示す振動推移線８３を得ることができる。
【００９７】
振動推移線８３を移動前区間８３ａ、移動中区間８３ｂ、移動後区間８３ｃに分割して説明する。振動推移線８３が示すように、移動前区間８３ａでは第１手部１４は移動開始場所に位置し静止している。このとき各関節が備えるモーターや外部から伝わる振動により第１手部１４は微細な振動を繰り返す。
【００９８】
移動中区間８３ｂでは第１手部１４の移動が開始するときに加速度が加わるので、第１手部１４は振動しながら移動する。移動中では時間が経過するのに従い第１手部１４の振動は減衰する。そして、移動後区間８３ｃで移動終了場所７９に到達するときに減速するので、第１手部１４に加速度が加わる。これにより第１手部１４は振動する。そして、時間の経過にともなって、振幅が減少する。振動検出部６５は振動判定データ６１の１つである振動判定振幅８４をメモリー４５から入力する。振動判定振幅８４は予め実験により設定された値である。そして、振動検出部６５は第１手部１４が移動終了場所７９に到達した時から振動推移線８３の振幅が振動判定振幅８４以下となるまでの時間である減衰時間８５を検出する。そして、振動時間管理部７０は移動終了場所７９、試行姿勢及び減衰時間８５を試行振動データ５９の１つとしてメモリー４５に記憶する。
【００９９】
ステップＳ６とステップＳ７とはステップＳ５で設定した試行姿勢と速度推移線との総ての組合せについておこなわれる。そして、各条件における減衰時間８５が試行振動データ５９としてメモリー４５に記憶される。ただし、ステップＳ８において移動終了場所７９に対応する最適移動後姿勢データ５８が登録されたときには、ステップＳ１１の学習工程は行われない。
【０１００】
ステップＳ６とステップＳ７とはロボット１が行う作業の中で試行姿勢を実施可能な作業となるときに行う。ロボットが作業を行う工程とは別にデータを取得するために試行移動を行うときに比べて生産性良く学習工程を行うことができる。尚、この方法によらずにステップＳ６とステップＳ７とを反復して試行振動データ５９を揃えても良い。
【０１０１】
図１３はステップＳ８の登録工程に対応する図である。ステップＳ８はステップＳ５で設定した１つの速度推移線の条件で総ての姿勢の組合せにおける減衰時間８５が揃ったときに行われる。そして、複数の減衰時間８５を比較して最適移動後姿勢を選択して登録する。１つの速度推移線の条件で総ての姿勢の組合せにおける減衰時間８５が揃っていないときにはステップＳ８では何も行われずにステップＳ９に移行する。
【０１０２】
図１３は速度推移線と姿勢との組合せにおける減衰時間８５を示すグラフである。縦軸は減衰時間８５を示し、横軸は試行姿勢を示している。そして、説明を分かりやすくするために総ての速度推移線と姿勢との組合せにおける減衰時間８５のデータが揃った状態を示している。
【０１０３】
第１減衰時間線８６は、速度条件を第１速度推移線８０にしたときの各試行姿勢における減衰時間８５を示す線である。第１減衰時間線８６に示すように第４姿勢１６ｂのときの減衰時間８５が長く、第１姿勢１６ａ及び第７姿勢１６ｃのときの減衰時間８５が短くなっている。そして、第１姿勢１６ａと第７姿勢１６ｃとでは第７姿勢１６ｃの減衰時間８５が短くなっている。従って、第１速度推移線８０の条件では第７姿勢１６ｃが最も減衰時間８５を短くすることができる姿勢となっている。
【０１０４】
第２減衰時間線８７は、速度条件を第２速度推移線８１にしたときの各試行姿勢における減衰時間８５を示す線である。そして、第３減衰時間線８８は、速度条件を第３速度推移線８２にしたときの各試行姿勢における減衰時間８５を示す線である。第２減衰時間線８７及び第３減衰時間線８８ともに第１減衰時間線８６と同じ傾向となっている。そして、第１減衰時間線８６、第２減衰時間線８７、第３減衰時間線８８の順に減衰時間８５が短くなっている。
【０１０５】
減衰時間判定値８９は振動が減衰する時間を判定する値であり、振動が減衰するまで待機可能な時間を示す。そして、減衰時間８５が減衰時間判定値８９以下となる条件を登録することができるものとする。この条件を満たす範囲で、第１腕部１６が高速に移動する条件を選択する。つまり、第１腕部１６が高速で移動できて減衰時間８５を短い条件を選択することにより生産性よくワーク７８を移動して、次の作業を行うことができる。
【０１０６】
第１減衰時間線８６では総ての試行姿勢で減衰時間８５が減衰時間判定値８９より長い時間であることから第１速度推移線８０は登録できない条件となっている。第２減衰時間線８７では第７姿勢１６ｃの条件にて減衰時間８５が減衰時間判定値８９より短い時間となっている。従って、第２速度推移線８１で第７姿勢１６ｃの条件を登録することができる。そこで、最適姿勢設定部７１は移動終了場所７９に第１手部１４を移動するときの姿勢を第７姿勢１６ｃとし”限定速度”を第２速度推移線８１の７０ｍ／ｓとして登録する。
【０１０７】
尚、第１減衰時間線８６、第２減衰時間線８７の順に減衰時間８５のデータを取得し、第２減衰時間線８７で登録している。このとき、第３減衰時間線８８のデータは取得せずにステップＳ６とステップＳ７を省略しても良い。この方法の方が、総てのデータを取得する方法に比べて生産性良く”関節角度”及び”限定速度”を設定することができる。
【０１０８】
ステップＳ９の作業工程では、第１指部１５の間隔を広げてワーク７８を作業台７７に載置する。そして、ステップＳ１０の終了判断工程において次に行う作業がないときには第１腕部１６がワーク７８を移動する作業の工程を終了する。
【０１０９】
上述したように、本実施形態によれば、以下の効果を有する。
（１）本実施形態によれば、移動終了場所７９に移動した後の姿勢によって移動終了後の第１手部１４の振動が減衰する減衰時間８５が異なっている。メモリー４５には第１手部１４の振動が減衰する時間の短い最適移動後姿勢データ５８が移動終了場所７９の場所に対応して記憶されている。
【０１１０】
そして、検索部６６はメモリー４５に記憶された最適移動後姿勢データ５８の中から移動終了場所７９に対応する最適移動後姿勢を検索する。そして、姿勢制御部６４は移動後姿勢が最適移動後姿勢となるように第１腕部１６を移動させる。従って、第１手部１４が移動して停止した後で第１手部１４の振動が減衰する時間を短くすることができる。
【０１１１】
（２）本実施形態によれば、ロボット１は振動検出部６５と学習部６８とを有している。振動検出部６５は第１手首先部１２を介して第１手部１４の振動を検出する。学習部６８は最適移動後姿勢をメモリー４５に記憶させる。学習部６８は、移動終了場所７９へ移動するときの試行姿勢を複数作成する。次に、学習部６８は各試行姿勢となるように第１腕部１６を繰り返して移動させる。続いて、各試行姿勢で動作したときの第１手部１４の振動を第１手首先部１２を介して第１腕用角速度検出器１３が検出し、学習部６８が移動後姿勢と第１手部１４の振動とをメモリー４５に記憶する。次に、最適姿勢設定部７１は、複数の試行姿勢の中から振動が減衰し易い最適移動後姿勢を選択して最適移動後姿勢データ５８を登録している。従って、学習部６８は確実に振動が減衰し易い最適移動後姿勢を登録することができる。
【０１１２】
（３）本実施形態によれば、第１腕用角速度検出器１３はジャイロセンサーである。ジャイロセンサーは振動による角速度の変化を精度良く検出できる。従って、第１腕用角速度検出器１３は振動による角速度の変化を精度良く検出することができる。
【０１１３】
（４）本実施形態によれば、第１腕用角速度検出器１３は３軸ジャイロセンサーである。第１腕部１６は複数のリンクとリンク間を接続する複数の関節部を備えているので、第１腕部１６は３次元の動作をすることができる。３軸ジャイロセンサーは直交する３軸方向の角速度を検出する。従って、第１腕部１６が３次元の動作をするときにも所望の方向における角速度を検出することができる。
【０１１４】
（５）本実施形態によれば、第１関節２９〜第７関節３５には回動可能な範囲が設定されており、通常回動範囲４０は制振回動範囲４１より小さい範囲に設定されている。従って、通常回動範囲４０の境界に関節が位置するときにも、さらに、第１手部１４の振動を減衰させるために関節を回動させることができる。従って、第１腕部１６の関節を通常回動範囲４０の中で駆動させることにより第１手部１４の振動を減衰させることができる。
【０１１５】
（６）本実施形態によれば、第１腕部１６には７個の関節が設置されている。従って、第１腕部１６は可動範囲内で第１手部１４に所望の姿勢をとらせることができる。
【０１１６】
（７）本実施形態によれば、ロボット１は出力装置５２と入力装置５１とを備えている。そして、出力装置５２は移動終了場所７９に対応する最適移動後姿勢を出力する。従って、本実施形態と同様の機能を有するロボット５３に移動終了場所７９と移動終了場所７９に対応する最適移動後姿勢を出力することができる。さらに、入力装置５１は移動終了場所７９と最適移動後姿勢とを入力する。従って、本実施形態と同様な機能を有するロボット５３から移動終了場所７９と最適移動後姿勢を入力することができる。その結果、メモリー４５に最適移動後姿勢が記憶されていないロボット５３に最適移動後姿勢を伝達することができる。これにより、ロボット５３から最適移動後姿勢を入力することでステップＳ１１の学習工程を行うことを省略することができる。
【０１１７】
（８）本実施形態によれば、メモリー４５には最適移動後姿勢に加え”限定速度”が記憶されている。従って、最適移動後姿勢になるように変形させながら第１腕部１６を移動させてさらに”限定速度”で移動させることにより、第１手部１４が移動して停止した後で第１手部１４の振動が減衰する時間を短くすることができる。
【０１１８】
（９）本実施形態によれば、ステップＳ２の検索工程では移動終了場所７９に対応する最適移動後姿勢を検索している。そして、検索工程において最適移動後姿勢が検索されたときには、ステップＳ４の移動工程にて検索された最適移動後姿勢となるように第１腕部１６を変形させながら移動する。従って、第１手部１４が移動して停止した後で第１手部１４の振動が減衰する時間を短くすることができる。
【０１１９】
（１０）本実施形態によれば、ステップＳ２の検索工程において最適移動後姿勢が検索されないときには、ステップＳ１１の学習工程において最適移動後姿勢が選択して登録される。従って、最適移動後姿勢が登録された後からは第１手部１４が移動して停止した後で第１手部１４の振動が減衰する時間を短くすることができる。その結果、ロボット１が稼動するにつれて登録された最適移動後姿勢が増加する為、第１手部１４が移動して停止した後で第１手部１４の振動が減衰する時間を短くすることができる。
【０１２０】
（１１）本実施形態によれば、ステップＳ１１の学習工程はステップＳ５の試行姿勢設定工程、ステップＳ６の試行移動工程、ステップＳ７の振動測定工程及びステップＳ８の登録工程を有している。試行姿勢設定工程では実施可能な移動後の姿勢の中から複数の試行姿勢を設定している。そして、試行移動工程では試行姿勢となるように第１腕部１６を移動する。続いて、振動測定工程では移動終了場所へ移動した後の第１手部１４の振動を検出し試行振動データ５９を出力している。試行移動工程と振動測定工程とを複数行うことにより、複数の試行姿勢における振動の試行振動データ５９が出力される。登録工程では複数の試行振動データ５９を比較して最適移動後姿勢を選択して登録している。従って、移動終了場所７９が変わるときにも、各移動終了場所７９における最適移動後姿勢を登録することができる。
【０１２１】
（１２）本実施形態によれば、ロボット１が行う作業の中でステップＳ６の試行移動工程が行われる。従って、ロボット１が作業で第１腕部１６を移動させる行為が試行移動工程の第１腕部１６を移動させる行為となる。その結果、ロボット１が作業を行う工程とは別に試行移動工程を行うときに比べて生産性良くステップＳ１１の学習工程を行うことができる。
【０１２２】
尚、本実施形態は上述した実施形態に限定されるものではなく、種々の変更や改良を加えることも可能である。変形例を以下に述べる。
（変形例１）
前記実施形態では、第１腕用角速度検出器１３は第１手首先部１２に設置されたが、第１手部１４に設置する場所があるときには第１手部１４に設置されるのが好ましい。また、第１手首先部１２に設置する場所が確保できないときには、第１手首元部１１に設置されても良い。第１手部１４の振動を検出できる場所に設置されれば良い。設置可能な場所が多い方が設計の自由度を大きくすることができる。
【０１２３】
（変形例２）
前記実施形態では、第１腕用角速度検出器１３を用いて第１手部１４の振動を検出し、第１手部１４の振動を減衰させた。同様に、第２腕用角速度検出器２６を用いて第２手部２７の振動を検出し、第２手部２７の振動を減衰させても良い。第２手部２７による作業も生産性良く行うことができる。
【０１２４】
（変形例３）
前記実施形態では、ロボット１は第１腕部１６と第２腕部１７との２つの腕部を備えていた。腕部は１つでもよく、３つ以上備えていても良い。各腕部において第１腕部１６と同様の制御を行っても良い。これにより、各腕の手部を生産性良く移動させて作業することができる。
【０１２５】
（変形例４）
前記実施形態では、第１腕部１６に第１関節２９〜第７関節３５の７つの関節が設置されていた。関節の個数は８個以上でも良い。さらに、複雑な動作を行うことができる。そして、この場合にも、上記の方法を用いて腕部を制御することにより、生産性良く作業を行うことができる。
【０１２６】
（変形例５）
前記実施形態では、第１ジャイロセンサー３７〜第３ジャイロセンサー３９に水晶振動子を用いたセンサーを採用したが、他の方法を用いたジャイロセンサーでも良い。静電容量型、圧電型、ピエゾ型 、電磁型、光学式の各種方式のジャイロセンサーを用いることができる。
【０１２７】
（変形例６）
前記実施形態では、最適移動後姿勢データ５８に”限定速度”を記載したが、移動速度を限定しないときには、”限定速度”を必ずしも設定しなくても良い。速度を規制しない方が制御を容易にすることができる。
【０１２８】
（変形例７）
前記実施形態では、第１手部１４に第１指部１５が設置されていた。第１手部１４に工具が設置されていても良い。このときにも、第１手部１４の振動が減衰する時間が短いので、生産性良く作業することができる。
【符号の説明】
【０１２９】
１，５３…ロボット、４…制御部、７…リンクとしての第１肩部、８…リンクとしての第１肩関節部、９…リンクとしての第１元側腕部、１０…リンクとしての第１先側腕部、１１…リンクとしての第１手首元部、１２…リンクとしての第１手首先部、１４…第１手部、１６…可動部としての第１腕部、１７…可動部としての第２腕部、１８…リンクとしての第２肩部、１９…リンクとしての第２肩関節部、２０…リンクとしての第２元側腕部、２３…リンクとしての第２先側腕部、２４…リンクとしての第２手首元部、２５…リンクとしての第２手首先部、２７…第２手部、２９…関節部としての第１関節、３０…関節部としての第２関節、３１…関節部としての第３関節、３２…関節部としての第４関節、３３…関節部としての第５関節、３４…関節部としての第６関節、３５…関節部としての第７関節、３７…ジャイロセンサーとしての第１ジャイロセンサー、３８…ジャイロセンサーとしての第２ジャイロセンサー、３９…ジャイロセンサーとしての第３ジャイロセンサー、４０…通常回動範囲、４１…制振回動範囲、４５…記憶部としてのメモリー、５１，５４…入力部としての入力装置、５２，５５…出力部としての出力装置、６４…制御部としての姿勢制御部、６５…振動検出部、６６…検索部、６８…学習部、７９…移動終了場所。
【図１】
2013107138.tif 000003
【図２】
2013107138.tif 000004
【図３】
2013107138.tif 000005
【図４】
2013107138.tif 000006
【図５】
2013107138.tif 000007
【図６】
2013107138.tif 000008
【図７】
2013107138.tif 000009
【図８】
2013107138.tif 000010
【図９】
2013107138.tif 000011
【図１０】
2013107138.tif 000012
【図１１】
2013107138.tif 000013
【図１２】
2013107138.tif 000014
【図１３】
2013107138.tif 000015