(57)【要約】  【課題】ロボットによる作業において、より確実に、部品などの作業対象物が動かないようにする。  【解決手段】ロボットは、力検出部と、第１のエンドエフェクターを備える第１のアームと、第２のエンドエフェクターを備える第２のアームと、を含み、前記第１のアームにより、第一ワークに対して第一方向に力を加える所定の作業と、前記第２のアームにより、前記第一ワークに対して前記第一方向と反対の第二方向に押し付ける動作とを行う。【選択図】図１
2015085480.tif 000002
【特許請求の範囲】
【請求項１】
力検出部と、
第１のエンドエフェクターを備える第１のアームと、
第２のエンドエフェクターを備える第２のアームと、を含み、
前記第１のアームにより、第一ワークに対して第一方向に力を加える所定の作業と、前記第２のアームにより、前記第一ワークに対して前記第一方向と反対の第二方向に押し付ける動作とを行う、
ことを特徴とするロボット。
【請求項２】
請求項１に記載のロボットであって、
前記第一方向及び前記二方向は、前記第一ワークが置かれる第一の面に平行な方向である、
ことを特徴とするロボット。
【請求項３】
請求項２に記載のロボットであって、
前記第２のアームにより、前記第一ワークに対して前記第一の面に直交する第三方向に押し付ける動作を行う、
ことを特徴とするロボット。
【請求項４】
請求項２又は３に記載のロボットであって、
前記第２のアームにより、前記第一ワークに対して前記所定の作業時に前記第一ワークに生じる第一モーメントに反対の第二モーメントで押し付ける動作を行う、
ことを特徴とするロボット。
【請求項５】
請求項４に記載のロボットであって、
前記第一モーメントは、前記第一方向に直交する軸と平行であり、かつ前記第一の面に平行な軸回りのモーメントであり、
前記第二モーメントは、前記第二方向に直交する軸と平行であり、かつ前記第一の面に平行な軸回りのモーメントである、
ことを特徴とするロボット。
【請求項６】
請求項４に記載のロボットであって、
前記第一モーメントは、前記第一方向に直交する軸と平行であり、かつ前記第一の面に垂直な軸回りのモーメントであり、
前記第二モーメントは、前記第二方向に直交する軸と平行であり、かつ前記第一の面に垂直な軸回りのモーメントである、
ことを特徴とするロボット。
【請求項７】
請求項１〜６いずれか一項に記載にロボットであって、
前記所定の作業は、前記第一ワーク対して部材を組み付ける作業であり、
前記第一方向は、前記第一ワークに対して前記部材を組み付ける方向である、
ことを特徴とするロボット。
【請求項８】
力検出部と、第１のエンドエフェクターを備える第１のアームと、第２のエンドエフェクターを備える第２のアームと、を有するロボットを制御する制御装置であって、
前記第１のアームにより、第一ワークに対して第一方向に力を加える所定の作業と、前記第２のアームにより、前記第一ワークに対して前記第一方向と反対の第二方向に押し付ける動作とを、前記ロボットに行わせる、
ことを特徴とする制御装置。
【請求項９】
力検出部と、第１のエンドエフェクターを備える第１のアームと、第２のエンドエフェクターを備える第２のアームと、を有するロボットと、
前記ロボットを制御する制御部と、
を有し、
前記制御部は、前記第１のアームにより、第一ワークに対して第一方向に力を加える所定の作業と、前記第２のアームにより、前記第一ワークに対して前記第一方向と反対の第二方向に押し付ける動作とを、前記ロボットに行わせる、
ことを特徴とするロボットシステム。
【請求項１０】
力検出部と、第１のエンドエフェクターを備える第１のアームと、第２のエンドエフェクターを備える第２のアームと、を有するロボットを制御する制御方法であって、
前記第１のアームにより、第一ワークに対して第一方向に力を加える所定の作業と、前記第２のアームにより、前記第一ワークに対して前記第一方向と反対の第二方向に押し付ける動作とを、前記ロボットに行わせる、
ことを特徴とする制御方法。
【請求項１１】
力検出部と、第１のエンドエフェクターを備える第１のアームと、第２のエンドエフェクターを備える第２のアームと、を有するロボットを制御する制御部として、コンピューターを機能させるプログラムであって、
前記第１のアームにより、第一ワークに対して第一方向に力を加える所定の作業と、前記第２のアームにより、前記第一ワークに対して前記第一方向と反対の第二方向に押し付ける動作とを、前記ロボットに行わせる処理を、
前記コンピューターに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット、制御装置、ロボットシステム、ロボット制御方法、及びプログラムに関する。
【背景技術】
【０００２】
特許文献１には、複数の部品を組み合わせて製品を組み立てる作業を行うロボットが記載されている。特許文献１のロボットは、ベース部品上の所定位置に、ある種類の部品を重ね、さらに、先に重ねた部品上の所定位置に他の種類に部品を重ね、それから、部品をハンドで押さえ付けて動かないようにしている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−３５３９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ロボットに上記のような組み立て作業を行わせる場合には、部品が動かないように固定するため、専用のジグを用いることが多い。しかし、部品の種類が増えれば、その度に部品の種類に応じた専用のジグを用意する必要がある。例えば多品種生産の現場では、多数のジグを用意する必要が生じてしまう。
【０００５】
この点、特許文献１のように、部品に他の種類の部品を重ねてからハンドで押さえ付けることにより、部品が動かないようにすることが考えられる。しかしながら、特許文献１では、部品をどのように（例えばどのような方向に）押さえ付けるかについて開示されていない。例えば、部品にＥリング等の止め輪を嵌める作業を行う場合に、部品が動かないように、部品を適切に押さえ付けることができなければ、止め輪を部品に嵌める際に加える力によって、部品が動いてしまい、止め輪を嵌めることができないおそれがある。
【０００６】
そこで、本発明は、ロボットによる作業において、より確実に、部品などの作業対象物が動かないようにすることを目的とする。
【課題を解決するための手段】
【０００７】
上記の課題を解決する本発明の第一態様は、ロボットであって、力検出部と、第１のエンドエフェクターを備える第１のアームと、第２のエンドエフェクターを備える第２のアームと、を含み、前記第１のアームにより、第一ワークに対して第一方向に力を加える所定の作業と、前記第２のアームにより、前記第一ワークに対して前記第一方向と反対の第二方向に押し付ける動作とを行う、ことを特徴とする。本発明の第一態様によれば、作業時に力が加わる第一方向に反対の第二方向にワークが押し付けられるため、より確実に、ワークが動かないようにすることができる。
【０００８】
前記第一方向及び前記二方向は、前記第一ワークが置かれる第一の面に平行な方向である、ことを特徴としてもよい。これにより、より確実に、第一の面に沿って第一方向にワークが動かないようにすることができる。
【０００９】
前記ロボットは、前記第２のアームにより、前記第一ワークに対して前記第一の面に直交する第三方向に押し付ける動作を行う、ことを特徴としてもよい。これにより、ワークが置かれる面に対してもワークが押し付けられるため、より確実に、ワークが動かないようにすることができる。
【００１０】
前記ロボットは、前記第２のアームにより、前記第一ワークに対して前記所定の作業時に前記第一ワークに生じる第一モーメントに反対の第二モーメントで押し付ける動作を行う、ことを特徴としてもよい。これにより、作業により発生するモーメントを打ち消す又は減らすように押し付けが行われるため、より確実に、ワークが動かないようにすることができる。
【００１１】
前記第一モーメントは、前記第一方向に直交する軸と平行であり、かつ前記第一の面に平行な軸回りのモーメントであり、前記第二モーメントは、前記第二方向に直交する軸と平行であり、かつ前記第一の面に平行な軸回りのモーメントである、ことを特徴としてもよい。これにより、ワークを第一の面から浮かせるようなモーメントが発生しても、より確実に、ワークが動かないようにすることができる。
【００１２】
前記第一モーメントは、前記第一方向に直交する軸と平行であり、かつ前記第一の面に垂直な軸回りのモーメントであり、前記第二モーメントは、前記第二方向に直交する軸と平行であり、かつ前記第一の面に垂直な軸回りのモーメントである、ことを特徴としてもよい。これにより、ワークが第一の面に沿って滑るようなモーメントが発生しても、より確実に、ワークが動かないようにすることができる。
【００１３】
前記所定の作業は、前記第一ワーク対して部材を組み付ける作業であり、前記第一方向は、前記第一ワークに対して前記部材を組み付ける方向である、ことを特徴としてもよい。これにより、ワークに対して部材を組み付ける作業を精度よく行うことができる。
【００１４】
上記の課題を解決する本発明の第二態様は、力検出部と、第１のエンドエフェクターを備える第１のアームと、第２のエンドエフェクターを備える第２のアームと、を有するロボットを制御する制御装置であって、前記第１のアームにより、第一ワークに対して第一方向に力を加える所定の作業と、前記第２のアームにより、前記第一ワークに対して前記第一方向と反対の第二方向に押し付ける動作とを、前記ロボットに行わせる、ことを特徴とする。本発明の第二態様によれば、作業時に力が加わる第一方向に反対の第二方向にワークが押し付けられるため、より確実に、ワークが動かないようにすることができる。
【００１５】
上記の課題を解決する本発明の第三態様は、ロボットシステムであって、力検出部と、第１のエンドエフェクターを備える第１のアームと、第２のエンドエフェクターを備える第２のアームと、を有するロボットと、前記ロボットを制御する制御部と、を有し、前記制御部は、前記第１のアームにより、第一ワークに対して第一方向に力を加える所定の作業と、前記第２のアームにより、前記第一ワークに対して前記第一方向と反対の第二方向に押し付ける動作とを、前記ロボットに行わせる、ことを特徴とする。本発明の第三態様によれば、作業時に力が加わる第一方向に反対の第二方向にワークが押し付けられるため、より確実に、ワークが動かないようにすることができる。
【００１６】
上記の課題を解決する本発明の第四態様は、力検出部と、第１のエンドエフェクターを備える第１のアームと、第２のエンドエフェクターを備える第２のアームと、を有するロボットを制御する制御方法であって、前記第１のアームにより、第一ワークに対して第一方向に力を加える所定の作業と、前記第２のアームにより、前記第一ワークに対して前記第一方向と反対の第二方向に押し付ける動作とを、前記ロボットに行わせる、ことを特徴とする。本発明の第四態様によれば、作業時に力が加わる第一方向に反対の第二方向にワークが押し付けられるため、より確実に、ワークが動かないようにすることができる。
【００１７】
上記の課題を解決する本発明の第五態様は、力検出部と、第１のエンドエフェクターを備える第１のアームと、第２のエンドエフェクターを備える第２のアームと、を有するロボットを制御する制御部として、コンピューターを機能させるプログラムであって、前記第１のアームにより、第一ワークに対して第一方向に力を加える所定の作業と、前記第２のアームにより、前記第一ワークに対して前記第一方向と反対の第二方向に押し付ける動作とを、前記ロボットに行わせる処理を、前記コンピューターに実行させることを特徴とする。本発明の第五態様によれば、作業時に力が加わる第一方向に反対の第二方向にワークが押し付けられるため、より確実に、ワークが動かないようにすることができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態に係るロボットの一例を示す正面斜視図である。
【図２】ロボットの一例を示す背面斜視図である。
【図３】アーム及びハンドの詳細を示す図である。
【図４】ロボットと作業台の関係の一例を示す平面図である。
【図５】ロボットの機能構成の一例を示す図である。
【図６】ロボットが行う第一の作業例を説明する図である。
【図７】第一の作業例におけるロボットの押付動作の第一例を説明する図である。
【図８】第一の作業例におけるロボットの押付動作の第二例を説明する図である。
【図９】第一の作業例におけるロボットの押付動作の第三例を説明する図である。
【図１０】第一の作業例におけるロボットの押付動作の第四例を説明する図である。
【図１１】第一の作業例におけるロボットの押付動作の第五例を説明する図である。
【図１２】ジグの構成例を示す図である。
【図１３】第一の作業例におけるロボットの押付動作の第六例を説明する図である。
【図１４】第一の作業例におけるロボットの押付動作の第七例を説明する図である。
【図１５】ジグの構成例を示す図である。
【発明を実施するための形態】
【００１９】
本発明の実施形態について、図面を参照しながら説明する。
【００２０】
図１は、本発明の実施形態に係るロボットの一例を示す正面斜視図である。図２は、ロボットの一例を示す背面斜視図である。
【００２１】
なお、説明の都合上、図１、図２中の上側を「上」または「上方」、下側を「下」または「下方」という。また、図１の手前側を「正面側」または「正面」または「前方」といい、図２の手前側を「背面側」または「背面」または「後方」という。
【００２２】
ロボット１は、胴部１０と、アーム１１と、タッチパネルモニター１２と、脚部１３と、搬送用ハンドル１４と、カメラ（「撮像部」ともいう。）１５と、信号灯１６と、電源スイッチ１７と、外部インターフェイス（Ｉ／Ｆ）部１８と、昇降ハンドル１９と、を備える。ロボット１は、人間型双腕ロボットであり、制御部２０（図５参照）の制御に従って動作する。このロボット１は、例えばプリンターのような精密機器等を組み立てる製造工程で用いることができるものである。なお、この製造作業は、通常、作業台Ｔ（図４参照）上で行なわれる。
【００２３】
胴部１０は、脚部１３のフレーム上に設けられる。なお、脚部１３はロボット１の基台であり、胴部１０はロボット１の胴体である。胴部１０は、ロボット本体と呼ぶこともできる。なお、胴部１０のみでなく、脚部１３を含めてロボット本体としてもよい。
【００２４】
胴部１０は、上側の肩領域１０Ａと、下側の胴部本体１０Ｂとを有する。肩領域１０Ａには、その両側面に、それぞれ正面側に突出したアーム１１（「マニピュレーター」ともいう。）が設けられる。
【００２５】
アーム１１の先端には、作業の対象物（「ワーク」ともいう。）や道具を把持するハンド１１１（「エンドエフェクター」ともいう。）が設けられる。また、アーム１１には、作業台の上に載置されたワーク等を撮影するハンドアイカメラ１１Ｇが設けられる。アーム１１及びハンド１１１の詳細については、後に詳述する。
【００２６】
胴部１０の肩領域１０Ａから正面側に斜め上方向突出する、ロボット１の頭部に当たる部分には、２台のカメラ１５と、信号灯１６とが設けられる。
【００２７】
カメラ１５は、例えば、ＣＣＤ（Charge Coupled Device）、ＣＭＯＳ（Complementary Metal Oxide Semiconductor）等を有し、作業台等を撮像することができる。信号灯１６は、例えば、赤色の光、黄色の光、青色の光をそれぞれ発するＬＥＤを有し、ロボット１の現在の状態に応じて適宜選択されたＬＥＤを発光させる。
【００２８】
脚部１３の内部には、ロボット１自身を制御する制御部２０等が設けられる。脚部１３及び胴部本体１０Ｂの内部にはロボット１に対して上下方向に伸びる回転軸が設けられ、この回転軸には胴部１０の肩領域１０Ａが設けられる。肩領域１０Ａは、回転軸周りに回転移動させることができる。すなわち、胴部本体１０Ｂより上側の部材は、回転軸周りに一体的に任意の方向に向けることが可能である。
【００２９】
脚部１３の背面には、電源スイッチ１７と、制御部２０と外部のＰＣ等を接続する外部接続端子である外部Ｉ／Ｆ部１８とが設けられる。電源スイッチ１７は、ロボット１の電源を投入する電源ＯＮスイッチ１７ａと、ロボット１の電源を遮断する電源ＯＦＦスイッチ１７ｂとを有する。
【００３０】
また、脚部１３の最下部には、図示しない複数のキャスターが水平方向に間隔をおいて設置されている。これにより、作業者が搬送用ハンドル１４を押すこと等によりロボット１を移動搬送することができる。
【００３１】
胴部１０の背面には、昇降ハンドル１９が設けられる。昇降ハンドル１９は、胴部１０の上部にある肩領域１０Ａを、胴部本体１０Ｂに対して上下方向に移動させる。これにより、様々な高さの作業台に対応することができる。
【００３２】
また、胴部１０の背面側には、ロボット１の背面側から視認可能なタッチパネルモニター１２が配置されている。モニターは、例えば、液晶ディスプレイなどであり、ロボット１の現在の状態などを表示することができる。また、タッチパネルは、例えば静電式や圧電式のタッチパネルであり、ロボット１に対する動作の設定などを行うユーザーインターフェイス部として用いられる。
【００３３】
図３は、アーム及びハンドの詳細を示す図である。
【００３４】
アーム１１は、胴部１０側から順に、アーム部材（「マニピュレーター部材」ともいう。）１１Ａ、１１Ｂ、１１Ｃ、１１Ｄ、１１Ｅがジョイント（図示せず）により連結されて構成される。ジョイントには、それらを動作させるためのアクチュエーター（図示せず）が設けられる。
【００３５】
アーム１１は、７個の回動軸を有する７軸アームである。７個の回動軸Ｊ１、Ｊ２、Ｊ３、Ｊ４、Ｊ５、Ｊ６、Ｊ７は、それぞれ、ジョイントに設けられたアクチュエーターの回転軸である。アーム部材１１Ａ、１１Ｂ、１１Ｃ、１１Ｄ、１１Ｅ及びハンド１１１は、回動軸Ｊ１、Ｊ２、Ｊ３、Ｊ４、Ｊ５、Ｊ６、Ｊ７回りに独立して回動することができる。
【００３６】
アクチュエーターは、例えば、サーボモーターやエンコーダー（図５参照）などを備える。エンコーダーが出力するエンコーダー値は、制御部２０によるロボット１のフィードバック制御などに使用される。また、アクチュエーターには、回転軸を固定する電磁ブレーキが設けられる。
【００３７】
各回転軸を連動させることにより、アーム１１の先端部などに設定された注目位置（「エンドポイント」ともいう。）を、所定の可動範囲内で自在に移動させたり自由な方向へ向けたりすることができる。なお、エンドポイントの位置は、アームの先端部に限定されず、例えば、エンドエフェクターの先端部などに設定されてもよい。
【００３８】
アーム部材１１Ｅの先端（アーム１１の手首部分に相当）には、力覚センサー（図１〜図３では図示せず。図５参照。「力検出部」ともいう。）が設けられている。力覚センサーは、ロボット１が出している力に対する反力として受けている力や、モーメントを検出するセンサーである。力覚センサーとしては、例えば、並進３軸方向の力成分と、回転３軸回りのモーメント成分の６成分を同時に検出することができる６軸力覚センサーを用いることができる。なお、力覚センサーは、６軸に限らず、例えば３軸でもよい。力覚センサーにより、ハンド等にかかる力やモーメントを検出することができる。
【００３９】
なお、ハンド等に加わる力やモーメントを検出する方法は力覚センサーを用いるものに限られない。例えば、アーム１１の各軸トルク値からハンドに及ぼす外力を推定することもできる。したがって、直接または間接的にハンドに加わる力やモーメントを取得する手段を、アーム１１が有していればよい。
【００４０】
また、アーム部材１１Ｅの先端には、ハンド１１１を着脱自在に設けるための着脱部材１１２を介して、ハンド１１１が設けられる。
【００４１】
ハンド１１１は、本体部１１１Ａと、本体部１１１Ａの先端側に配置された複数本（例えば、２本〜４本の任意の数）のフィンガー１１１Ｂとを有する。本体部１１１Ａは、外形形状がほぼ直方体状をなし、その内部に各フィンガー１１１Ｂを駆動させる駆動機構（図示せず）が設けられる。駆動機構によりフィンガー１１１Ｂ同士を互いに接近させることにより、これらの間で部品等の対象物を挟持することができる。また、駆動機構によりこの挟持状態からフィンガー１１１Ｂ同士を互いに離間させることにより、対象物を解放することができる。
【００４２】
なお、アーム１１は、マニピュレーターの一種ということができる。マニピュレーターは、エンドポイントの位置を移動させる機構であり、アームに限られず様々な形態をとることができる。例えば、一以上のジョイントとリンクとにより構成され、ジョイントを動かすことで全体が動くマニピュレーターであれば、どのような形態でもよい。また、ロボット１に設けられるマニピュレーターの数も２本に限られず、１本あるいは３本以上であってもよい。
【００４３】
なお、ハンド１１１は、エンドエフェクターの一種ということができる。エンドエフェクターは、対象物を把持したり、押し付けたり、持ち上げたり、吊り上げたり、吸着したり、ワークを加工したりするための部材である。エンドエフェクターは、ハンド、フック、吸盤など、様々な形態をとることができる。また、エンドエフェクターは、一本のアームに対して複数設けるようにしてもよい。
【００４４】
上記のような構成を有することにより、ロボット１は、制御部２０の制御の下、例えば、ハンド１１１でワークを把持したり、ハンド１１１をワークに接触させたりすることができる。また、ロボット１は、例えば、ハンド１１１で、ワークに対して様々な方向の力を加えて押し付けたり、ワークに対して様々なモーメントを加えたりすることができる。
【００４５】
上記のロボット１の構成は、本実施形態の特徴を説明するにあたって主要構成を説明したのであって、図示した構成例に限られない。また、一般的なロボットが備える構成を排除するものではない。例えば、ジョイントの数（「軸数」ともいう。）やリンクの数を増減させてもよい。また、ジョイント、リンク、ハンド等の各種部材の形状、大きさ、配置、構造等も適宜変更してよい。
【００４６】
また、例えば、制御部２０は、当該制御部２０の機能を実現するロボット制御装置としてロボット１の外部に設けるようにしてもよい。この場合、当該ロボット制御装置は、通信Ｉ／Ｆなどを介してロボット１に接続される。ロボット制御装置とロボットを備えるシステムを、ロボットシステムと呼ぶこともできる。
【００４７】
図４は、ロボットと作業台の関係の一例を示す平面図である。なお、ハンド１１１は簡略化して示している。
【００４８】
なお、説明の都合上、図４中の上側を「正面側」または「正面」または「前方」、下側を「背面側」または「背面」または「後方」と言う。また、図４の手前側を「上」または「上方」といい、図４の奥側を「下」または「下方」という。
【００４９】
作業台Ｔは、ロボット１の正面側に配置される。ロボット１は、アーム１１を動かすとともにハンド１１１を使って、作業台Ｔ上の所定の作業領域（図示せず）内で所定の作業を行うことができる。所定の作業領域内では、ロボット１は、例えば、複数の部品を組み合わせて製品を組み立てる作業を行う。
【００５０】
なお、作業領域は、例えば、３次元（ＸＹＺ方向の長さを有する）の直方体の空間とすることができる。作業領域の範囲は、例えば、エンドポイントの可動範囲内に定めることができる。また、作業領域の範囲は、ロボット１の作業内容や当該作業内容に求められる動作精度などを考慮して定めることもできる。
【００５１】
図５は、ロボットの機能構成の一例を示す図である。
【００５２】
制御部２０は、入出力制御部２１と、カメラ制御部２２と、エンコーダー制御部２３と、力覚センサー制御部２４と、軌道生成部２５と、アーム制御部２６と、ハンド制御部２７と、を備える。アーム１１は、エンコーダー１１ａと、力覚センサー１１ｂと、を備える。
【００５３】
入出力制御部２１は、タッチパネルモニター１２への出力、タッチパネルモニター１２からの入力を制御する。例えば、入出力制御部２１は、ロボット１の状態、カメラ１５で撮像された画像などを、タッチパネルモニター１２に表示させる。また、例えば、入出力制御部２１は、タッチパネルモニター１２に対するユーザーの操作を受け付ける。
【００５４】
カメラ制御部２２は、カメラ１５やハンドアイカメラ１１Ｇを制御して撮像を行うとともに、撮像した画像を取得する。また、カメラ制御部２２は、取得した画像からワークを抽出する等の画像処理を行う。
【００５５】
エンコーダー制御部２３は、エンコーダー１１ａからエンコーダーの角度等の情報を取得し、アーム制御部２６等に出力する。
【００５６】
力覚センサー制御部２４は、力覚センサー１１ｂで計測された値、例えば力の方向、力の大きさ、モーメントの方向、モーメントの大きさ等の情報を取得する。
【００５７】
軌道生成部２５は、エンドポイントの軌道を生成する。例えば、軌道生成部２５は、カメラ制御部２２が取得した撮像画像に基づいて、エンドポイントの軌道を生成する。具体的には、軌道生成部２５は、カメラ制御部２２が取得した画像からワークの位置を認識し、ワークの位置をロボット座標に置き換える。そして、軌道生成部２５は、現在のエンドポイントのロボット座標を、ワークのロボット座標まで移動させる軌道を生成する。もちろん、ユーザーにより設定された軌道を用いるようにしてもよい。なお、軌道を生成する処理は、一般的な技術を採用することができるため、詳細な説明を省略する。
【００５８】
アーム制御部２６は、軌道生成部２５が生成した軌道と、エンコーダー制御部２３が取得したエンコーダー１１ａの情報と、に基づいてアーム１１を制御する（位置制御）。例えば、アーム制御部２６は、ジョイントの回転角度を示す移動指令をアクチュエーターに出力し、アクチュエーターを駆動する。
【００５９】
また、アーム制御部２６は、力覚センサー制御部２４が取得した力覚センサー１１ｂの情報に基づいてアーム１１を制御する（インピーダンス制御などの力制御）。例えば、アーム制御部２６は、力覚センサー１１ｂにより検出される特定方向の力の大きさが、目標の大きさとなるようにエンドポイントの位置や姿勢を調整する。また、例えば、アーム制御部２６は、力覚センサー１１ｂにより検出される特定のモーメントの大きさが、目標の大きさとなるようにエンドポイントの位置や姿勢を調整する。これにより、ハンド１１１をワークに押し付けるロボット１の動作が実現できる。なお、位置制御や力制御などの処理は、一般的な技術を採用することができるため、詳細な説明を省略する。アーム制御部２６は、位置制御の代わりに、ビジュアルサーボ等を用いてエンドポイントの位置を移動させてもよい。
【００６０】
後に具体例を用いて詳述するが、本実施形態では、例えば、ロボット１は、ある部品に止め輪を嵌める組み付け作業を行う場合に、当該部品を、作業台の上又は位置決め部が設けられたジグ（又は他の部品）の上に載置する。そして、ロボット１は、当該部品を、組み付け作業時に力を加える方向（止め輪を嵌める方向）と反対の方向に押し付ける。また、ロボット１は、当該部品を、作業台等の方向に押し付ける。さらに、ロボット１は、当該部品に対して、組み付け作業時に当該部品に生じるモーメントを打ち消す又は減らすような反対のモーメントをかける。これにより、より確実に部品が動かないようにする。
【００６１】
ハンド制御部２７は、ハンド１１１を制御する。例えば、ハンド制御部２７は、エンドポイントがワークを把持可能な目標位置に到達した場合に、各フィンガーを互いに接近させる指令値を生成し、ハンド１１１の駆動機構に出力する。
【００６２】
上記の制御部２０は、例えば、ＣＰＵ（Central Processing Unit）等の演算装置と、ＲＡＭ（Random Access Memory）などの主記憶装置と、ＨＤＤ（Hard Disk Drive）等の補助記憶装置と、有線又は無線により通信ネットワークと接続するための通信インターフェイス（Ｉ／Ｆ）と、タッチパネルなどの入力装置と接続する入力Ｉ／Ｆと、表示装置と接続する出力Ｉ／Ｆと、持ち運び可能な記憶媒体に対する情報の読み書きを行う読み書き装置と、を備えるコンピューターで実現することができる。ロボット専用のＡＳＩＣ（Application Specific Integrated Circuit）により実現されてもよい。また、制御部２０は、例えば、演算装置、記憶装置、処理回路、駆動回路などを備えるコントローラー基板等により実現されてもよい。
【００６３】
例えば、制御部２０の各機能は、補助記憶装置などから主記憶装置にロードされた所定のプログラムを演算装置が実行することで実現される。上記の所定のプログラムは、例えば、読み書き装置により読み取られた記憶媒体からインストールされてもよいし、通信Ｉ／Ｆを介してネットワークからインストールされてもよい。
【００６４】
上述したロボット１の機能構成は、ロボット１の構成を理解容易にするために、主な処理内容に応じて分類したものである。構成要素の分類の仕方や名称によって、本願発明が制限されることはない。ロボット１の構成は、処理内容に応じて、さらに多くの構成要素に分類することもできる。また、１つの構成要素がさらに多くの処理を実行するように分類することもできる。また、各構成要素の処理は、１つのハードウェアで実行されてもよいし、複数のハードウェアで実行されてもよい。
【００６５】
また、制御部２０と他の構成（アームやハンドなど）との機能及び処理の分担は、図示した例に限られない。例えば、制御部２０の少なくとも一部の機能は、他の構成により実現されてもよい。また、例えば、他の構成の少なくとも一部の機能は、制御部２０により実現されてもよい。
【００６６】
次に、上記のロボット１により実現される特徴的な動作について、図６〜図１５を参照しながら説明する。なお、以下では、「略」、「状」という言葉を用いることがあるが、対象の長さ、角度、方向、形状等が厳密に同一である場合以外に、実質的に同一な場合（すなわち、本実施形態の効果を発揮できる場合）を含む概念である。もちろん、「略」、「状」という言葉を用いない場合でも、実質的に同一な場合は含まれる。
【００６７】
図６は、ロボットが行う第一の作業例を説明する図である。第一の作業例は、ワークＡ１０の棒状の軸部Ａ１５に、止め輪Ａ２０を嵌める（組み付ける）ものである。
【００６８】
ワークＡ１０は、直方体状の本体部Ａ１１と、本体部Ａ１１の一の面に略垂直に設けられた棒状の軸部Ａ１５とを有する。軸部Ａ１５の外周（側面）には、止め輪Ａ２０が嵌め込まれる溝が形成されている（図示せず）。
【００６９】
止め輪Ａ２０は、Ｚ方向からみた場合に、環状であり、その環の一部が空いた形状である。止め輪Ａ２０は、軸部Ａ１５の外周に形成された溝（図示せず）に、軸部Ａ１５の長手方向に対して略垂直方向から嵌め込まれる。なお、止め輪Ａ２０は、例えば、スナップリング、ストップリングなどとも呼ばれる。より具体的には、例えば、Ｅリング、Ｃリングなどがある。
【００７０】
止め輪Ａ２０の組み付けは、例えば、人間が使用する工具Ａ３０を、ロボット１が用いることにより行われる。工具Ａ３０は、止め輪Ａ２０を受け止める受止部Ａ３５を有する。受止部Ａ３５には、止め輪Ａ２０の一部が挿入される溝が形成されている。従って、受止部Ａ３５の溝に止め輪Ａ２０をセットした状態で、止め輪Ａ２０を移動させることができる。
【００７１】
図７は、第一の作業例におけるロボットの押付動作の第一例を説明する図である。図７は、ワークＡ１０を軸部Ａ１５の先端が上（Ｚ方向）を向くように作業台Ｔ上に置いて、止め輪Ａ２０の組み付け作業を行う場合を示す。なお、図７（Ａ）、（Ｂ）、（Ｃ）において、アーム１１及びハンド１１１は、簡略化又は省略している。また、図７（Ｂ）、（Ｃ）において、止め輪Ａ２０、工具Ａ３０等は、省略している。
【００７２】
準備段階において、例えば、制御部２０は、一方のアーム１１及び当該アームのハンド１１１を制御することにより、作業台Ｔ上にワークＡ１０の本体部Ａ１１の底面が接するように載置する。また、制御部２０は、一方のアーム１１及び当該アームのハンド１１１を制御することにより、ハンド１１１に工具Ａ３０を把持させ、ハンド１１１を移動させ、受止部Ａ３５に止め輪Ａ２０をセットする（図７（Ａ）参照）。
【００７３】
作業段階において、制御部２０は、一方のアーム１１及び当該アームのハンド１１１（工具Ａ３０を把持している方）を制御することにより、止め輪Ａ２０を軸部Ａ１５に対して、Ｆ１０の方向に押し付ける。方向Ｆ１０は、組み付け作業時に力を加える方向であり、作業台Ｔと略平行であり、かつ軸部Ａ１５の長手方向に略直交する。
【００７４】
ここで、軸部Ａ１５を方向Ｆ１０に押し付けると、ワークＡ１０全体に、モーメントＭ１０が生じる。モーメントＭ１０は、方向Ｆ１０に略直交する軸と略平行であり、かつ作業台Ｔに略平行な軸ＭＪ１０について、ワークＡ１０をＹ方向に見て左回りのモーメントである。このモーメントＭ１０は、本体部Ａ１１の作業台Ｔに接する底面のうち、方向Ｆ１０側の一辺を支点として、本体部Ａ１１が作業台Ｔから浮くように作用する。そこで、制御部２０は、一方のハンド１１１で止め輪Ａ２０を押し付けるのと同時に、他方のハンド１１１でワークＡ１０の位置及び姿勢を維持するようにワークＡ１０を支える。
【００７５】
具体的には、制御部２０は、他方のアーム１１及び当該アームのハンド１１１を制御することにより、ハンド１１１をワークＡ１０の本体部Ａ１１上の所定の位置で把持させる。把持の仕方は、例えば、一又は複数の面でハンド１１１がワークに当接するように把持すればよい。説明の便宜上、ワークＡ１０を支える動作により力が加わる代表位置を作用点Ｐとして説明する。ワークＡ１０のような形状の場合、作用点Ｐの位置は、例えば、軸部Ａ１５の長手方向と略垂直であり、かつ、方向Ｆ１０の本体部Ａ１１上の線分上、又は、当該線分の近傍に位置するのが好ましい。なお、把持位置が、軸ＭＪ１０から方向Ｆ１０へ遠くに離れるほど、後述するモーメントＭ１の大きさを小さくすることができる。
【００７６】
そして、制御部２０は、他方のアーム１１を制御することにより、組み付け作業の方向Ｆ１０と反対の方向Ｆ１に、ハンド１１１を押し付ける。また、制御部２０は、他方のアーム１１を制御することにより、作業台Ｔと略直交する方向Ｆ２に、ハンド１１１を押し付ける。方向Ｆ２は、方向Ｆ１と略垂直である。また、制御部２０は、モーメントＭ１０と反対（反対の回転方向）のモーメントＭ１を生じさせるように、ハンド１１１を動作させる。例えば、制御部２０は、方向Ｆ１に略直交する軸と略平行であり、かつ作業台Ｔに略平行な軸ＭＪ１（図示せず）を設定し、当該軸回り（図では、ワークＡ１０をＹ方向に見て右回り。）のモーメントＭ１を生じさせるように、アーム１１の姿勢を変化させてハンド１１１を押し付ける。なお、軸ＭＪ１と軸ＭＪ１０は、同じ位置であってもよいし、異なる位置であってもよい。これにより、ワークＡ１０が、作業台Ｔに対して、作用点Ｐを原点として方向Ｆ１及び方向Ｆ２を合成した方向Ｆ１２に押し付けられるとともに、モーメントＭ１の回転方向に押し付けられる。
【００７７】
なお、図７の場合、方向Ｆ２の押し付け動作は必須ではない。これは、ワークＡ１０にモーメントＭ１を加えることで、ワークＡ１０の底面が作業台Ｔに対してＦ２方向に押し付けられる作用が生じるためである。
【００７８】
図８は、第一の作業例におけるロボットの押付動作の第二例を説明する図である。図８は、ワークＡ１０を軸部Ａ１５の先端が横（Ｙの反対方向）を向くように作業台Ｔ上に置いて、止め輪Ａ２０の組み付け作業を行う場合を示す。なお、図８（Ａ）、（Ｂ）、（Ｃ）において、アーム１１及びハンド１１１は、簡略化又は省略している。また、図８（Ｂ）、（Ｃ）において、止め輪Ａ２０、工具Ａ３０等は、省略している。
【００７９】
準備段階において、例えば、制御部２０は、一方のアーム１１及び当該アームのハンド１１１を制御することにより、作業台Ｔ上にワークＡ１０の本体部Ａ１１の側面が接するように載置する。また、制御部２０は、一方のアーム１１及び当該アームのハンド１１１を制御することにより、ハンド１１１に工具Ａ３０を把持させ、ハンド１１１を移動させ、受止部Ａ３５に止め輪Ａ２０をセットする（図８（Ａ）参照）。
【００８０】
作業段階において、制御部２０は、一方のアーム１１及び当該アームのハンド１１１（工具Ａ３０を把持している方）を制御することにより、止め輪Ａ２０を軸部Ａ１５に対して、Ｆ１０の方向に押し付ける。方向Ｆ１０は、組み付け作業時に力を加える方向であり、作業台Ｔと略平行であり、かつ軸部Ａ１５の長手方向に略直交する。
【００８１】
ここで、軸部Ａ１５を方向Ｆ１０に押し付けると、ワークＡ１０全体に、モーメントＭ２０が生じる。モーメントＭ２０は、方向Ｆ１０に略直交する軸と略平行であり、かつ作業台Ｔに略垂直な軸ＭＪ２０について、ワークＡ１０をＺ方向側から見て右回りのモーメントである。このモーメントＭ２０は、本体部Ａ１１の作業台Ｔに接する側面が、作業台Ｔに対して滑るように作用する。そこで、制御部２０は、一方のハンド１１１で止め輪Ａ２０を押し付けるのと同時に、他方のハンド１１１でワークＡ１０の位置及び姿勢を維持するようにワークＡ１０を支える。
【００８２】
具体的には、制御部２０は、他方のアーム１１及びハンド１１１を制御することにより、ハンド１１１をワークＡ１０の本体部Ａ１１上の所定の位置で把持させる。把持の仕方は、例えば、一又は複数の面でハンド１１１がワークに当接するように把持すればよい。説明の便宜上、ワークＡ１０を支える動作により力が加わる代表位置を作用点Ｐとして説明する。ワークＡ１０のような形状の場合、作用点Ｐの位置は、例えば、軸部Ａ１５の長手方向と略垂直であり、かつ、方向Ｆ１０の本体部Ａ１１上の線分上、又は、当該線分の近傍に位置するのが好ましい。なお、把持位置が、軸ＭＪ２０から方向Ｆ１０へ遠くに離れるほど、後述するモーメントＭ２の大きさを小さくすることができる。
【００８３】
そして、制御部２０は、他方のアーム１１を制御することにより、組み付け作業の方向Ｆ１０と反対の方向Ｆ１に、ハンド１１１を押し付ける。また、制御部２０は、他方のアーム１１を制御することにより、作業台Ｔと略直交する方向Ｆ２に、ハンド１１１を押し付ける。方向Ｆ２は、方向Ｆ１と略垂直である。また、制御部２０は、モーメントＭ２０と反対（反対の回転方向）のモーメントＭ２を生じさせるように、ハンド１１１を動作させる。例えば、制御部２０は、方向Ｆ１と略直交する軸と略平行であり、かつ作業台Ｔに略直交する軸ＭＪ２（図示せず）を設定し、当該軸回り（図では、ワークＡ１０をＺ方向側から見て左回り。）のモーメントＭ２を生じさせるように、アーム１１の姿勢を変化させてハンド１１１を押し付ける。なお、軸ＭＪ２と軸ＭＪ２０は、同じ位置であってもよいし、異なる位置であってもよい。これにより、ワークＡ１０が、作業台Ｔに対して、作用点Ｐを原点として方向Ｆ１及び方向Ｆ２を合成した方向Ｆ１２に押し付けられるとともに、モーメントＭ２の回転方向に押し付けられる。
【００８４】
図９は、第一の作業例におけるロボットの押付動作の第三例を説明する図である。以下、図８と異なる点を中心に説明する。
【００８５】
ワークＡ１０の置き方は、図８と同様である。また、止め輪Ａ２０を軸部Ａ１５に対して押し付ける方向Ｆ１０は、図８と同様である。一方、作用点Ｐの位置は、図８と異なる。図９では、作用点Ｐの位置は、例えば、軸部Ａ１５の長手方向と略垂直であり、かつ、作業台Ｔに略垂直な方向（Ｚ方向）の本体部Ａ１１上の線分上、又は、当該線分の近傍に位置するのが好ましい。
【００８６】
図９に示すような作用点Ｐの場合も、制御部２０は、図８の場合と同様に、他方のアーム１１を制御する。すなわち、制御部２０は、他方のアーム１１を制御することにより、方向Ｆ１及び方向Ｆ２に、ハンド１１１を押し付ける。また、制御部２０は、軸ＭＪ２（図示せず）を設定し、当該軸回り（図では、ワークＡ１０をＺ方向側から見て左回り。）のモーメントＭ２を生じさせるように、アーム１１の姿勢を変化させてハンド１１１を押し付ける。なお、軸ＭＪ２と軸ＭＪ２０は、同じ位置であってもよいし、異なる位置であってもよい。これにより、ワークＡ１０が、作業台Ｔに対して、作用点Ｐを原点として方向Ｆ１及び方向Ｆ２を合成した方向Ｆ１２に押し付けられるとともに、モーメントＭ２の回転方向に押し付けられる。
【００８７】
図１０は、第一の作業例におけるロボットの押付動作の第四例を説明する図である。以下、図８及び図９と異なる点を中心に説明する。
【００８８】
ワークＡ１０の置き方は、図８と同様である。また、作用点Ｐの位置は、図９と同様である。一方、Ｆ１０の方向は、図８及び図９とは異なる。図１０では、方向Ｆ１０は、組み付け作業時に力を加える方向であり、作業台Ｔに対して略垂直であり、かつ軸部Ａ１５の長手方向に略直交する。
【００８９】
ここで、軸部Ａ１５を方向Ｆ１０に押し付けると、ワークＡ１０全体に、モーメントＭ３０が生じる。モーメントＭ３０は、方向Ｆ１０と軸部Ａ１５の長手方向との両方に略直交する軸と略平行な軸ＭＪ３０について、ワークＡ１０を方向Ｘ側から見て右回りのモーメントである。このモーメントＭ３０は、本体部Ａ１１の作業台Ｔに接する側面のうち、軸部Ａ１５に近い側（方向Ｙの反対方向）の一辺を支点として、本体部Ａ１１が作業台Ｔから浮くように作用する。そこで、制御部２０は、一方のハンド１１１で止め輪Ａ２０を押し付けるのと同時に、他方のハンド１１１でワークＡ１０の位置及び姿勢を維持するようにワークＡ１０を支える。
【００９０】
すなわち、制御部２０は、他方のアーム１１を制御することにより、作業台Ｔと略直交する方向Ｆ２に、ハンド１１１を押し付ける。方向Ｆ２は、方向Ｆ１０と略平行である。また、制御部２０は、モーメントＭ３０と反対（反対の回転方向）のモーメントＭ３を生じさせるように、ハンド１１１を動作させる。例えば、制御部２０は、方向Ｆ２に略直交する軸と略平行であり、かつ本体部Ａ１１の底面に略平行な軸ＭＪ３（図示せず）を設定し、当該軸回り（図では、ワークＡ１０を方向Ｘ側から見て左回り。）のモーメントＭ３を生じさせるように、アーム１１の姿勢を変化させてハンド１１１を押し付ける。なお、軸ＭＪ３と軸ＭＪ３０は、同じ位置であってもよいし、異なる位置であってもよい。これにより、ワークＡ１０が、作業台Ｔに対して、作用点Ｐを原点として方向Ｆ２に押し付けられるとともに、モーメントＭ３の回転方向に押し付けられる。
【００９１】
なお、図１０の場合、方向Ｆ２の押し付け動作は必須ではない。これは、ワークＡ１０に方向Ｆ１０の力が加わることで、ワークＡ１０の側面が作業台Ｔに対してＦ２方向に押し付けられる作用が生じるためである。
【００９２】
以上のような方向とモーメントにより、ハンド１１１でワークを押し付けて支えることで、組み付け作業中にワークが動いたり浮いたりしないように、より確実にワークを固定することができる。なお、この押しつけ方向とモーメントは、ベースとなるワーク上に載せたワークＡ１０に対して組み付け作業を行う場合にも適用できる。
【００９３】
図１１は、第一の作業例におけるロボットの押付動作の第五例を説明する図である。図１１では、ジグＢ１０を用いて、第一の作業例を行う場合を示している。また、図１１は、ワークＡ１０を軸部Ａ１５の先端が上（Ｚ方向）を向くようにジグＢ１０上に置いて、止め輪Ａ２０の組み付け作業を行う場合を示す。なお、図１１（Ａ）、（Ｂ）、（Ｃ）において、アーム１１及びハンド１１１は、簡略化又は省略している。また、図１１（Ｂ）、（Ｃ）において、止め輪Ａ２０、工具Ａ３０等は、省略している。
【００９４】
ジグＢ１０は、例えば、図１２（ジグの構成例を示す図）に示すように構成される。ジグＢ１０は、直方体状であり、ワークが置かれる平面状の面Ｂ１１と、面Ｂ１１に略垂直な面Ｂ１２とを備える。面Ｂ１１及び面Ｂ１２は、ワークＡ１０を位置決めする位置決め部として機能する。
【００９５】
図１１の説明に戻る。準備段階において、例えば、制御部２０は、一方のアーム１１及び当該アームのハンド１１１を制御することにより、面Ｂ１１上にワークＡ１０を載置する。また、制御部２０は、一方のアーム１１及び当該アームのハンド１１１を制御することにより、ハンド１１１に工具Ａ３０を把持させ、ハンド１１１を移動させ、受止部Ａ３５に止め輪Ａ２０をセットする（図１１（Ａ）参照）。
【００９６】
作業段階において、制御部２０は、一方のアーム１１及び当該アームのハンド１１１（工具Ａ３０を把持している方）を制御することにより、止め輪Ａ２０を軸部Ａ１５に対して、Ｆ１０の方向に押し付ける。方向Ｆ１０は、組み付け作業時に力を加える方向であり、面Ｂ１１と略平行であり、かつ軸部Ａ１５の長手方向に略直交する。
【００９７】
ここで、軸部Ａ１５を方向Ｆ１０に押し付けると、ワークＡ１０全体に、モーメントＭ１０が生じる。モーメントＭ１０は、方向Ｆ１０に略直交する軸と略平行であり、かつ面Ｂ１１に略平行な軸ＭＪ１０について、ワークＡ１０をＹ方向に見て左回りのモーメントである。このモーメントＭ１０は、本体部Ａ１１の面Ｂ１１に接する底面のうち、方向Ｆ１０側の一辺を支点として、本体部Ａ１１が面Ｂ１１から浮くように作用する。そこで、制御部２０は、一方のハンド１１１で止め輪Ａ２０を押し付けるのと同時に、他方のハンド１１１でワークＡ１０の位置及び姿勢を維持するようにワークＡ１０を支える。
【００９８】
具体的には、制御部２０は、他方のアーム１１及びハンド１１１を制御することにより、ハンド１１１をワークＡ１０の本体部Ａ１１上の所定の位置で把持させる。把持の仕方や作用点Ｐの位置は、図７の場合と同様である。
【００９９】
そして、制御部２０は、他方のアーム１１を制御することにより、組み付け作業の方向Ｆ１０と反対の方向Ｆ１に、ハンド１１１を押し付ける。また、制御部２０は、他方のアーム１１を制御することにより、面Ｂ１１と略直交する方向Ｆ２に、ハンド１１１を押し付ける。方向Ｆ２は、方向Ｆ１と略垂直である。さらに、制御部２０は、他方のアーム１１を制御することにより、面Ｂ１１と略平行な方向であり、かつ、面Ｂ１２の方向Ｆ３に、ハンド１１１を押し付ける。方向Ｆ３は、面Ｂ１２を含むＸＺ平面と略垂直である。また、制御部２０は、モーメントＭ１０と反対（反対の回転方向）のモーメントＭ１を生じさせるように、ハンド１１１を動作させる。例えば、制御部２０は、方向Ｆ１に略直交する軸と略平行であり、かつ面Ｂ１１に略平行な軸ＭＪ１（図示せず）を設定し、当該軸回り（図では、ワークＡ１０をＹ方向に見て右回り。）のモーメントＭ１を生じさせるように、アーム１１の姿勢を変化させてハンド１１１を押し付ける。なお、軸ＭＪ１と軸ＭＪ１０は、同じ位置であってもよいし、異なる位置であってもよい。これにより、ワークＡ１０が、ジグＢ１０に対して、作用点Ｐを原点として方向Ｆ１、Ｆ２、及び方向Ｆ３を合成した方向Ｆ１２３に押し付けられるとともに、モーメントＭ１の回転方向に押し付けられる。
【０１００】
なお、図１１の場合、方向Ｆ２の押し付け動作は必須ではない。これは、ワークＡ１０にモーメントＭ１を加えることで、ワークＡ１０の底面が面Ｂ１１に対してＦ２方向に押し付けられる作用が生じるためである。
【０１０１】
図１３は、第一の作業例におけるロボットの押付動作の第六例を説明する図である。以下、図１１と異なる点を中心に説明する。
【０１０２】
ワークＡ１０の置き方は、図１１と同様である。また、止め輪Ａ２０を軸部Ａ１５に対して押し付ける方向Ｆ１０は、図１１と同様である。一方、作用点Ｐの位置は、図１１と異なる。図１３では、作用点Ｐの位置は、例えば、軸部Ａ１５の長手方向と略直交し、かつ、面Ｂ１２を含むＸＺ平面と略直交する本体部Ａ１１上の線分上、又は、当該線分の近傍に位置するのが好ましい。
【０１０３】
図１３に示すような作用点Ｐの場合も、制御部２０は、図１１の場合と同様に、他方のアーム１１を制御する。すなわち、制御部２０は、他方のアーム１１を制御することにより、方向Ｆ１、方向Ｆ２、及び方向Ｆ３に、ハンド１１１を押し付ける。また、制御部２０は、軸ＭＪ１（図示せず）を設定し、当該軸回り（図では、ワークＡ１０をＹ方向に見て右回り。）のモーメントＭ１を生じさせるように、アーム１１の姿勢を変化させてハンド１１１を押し付ける。なお、軸ＭＪ１と軸ＭＪ１０は、同じ位置であってもよいし、異なる位置であってもよい。これにより、ワークＡ１０が、ジグＢ１０に対して、作用点Ｐを原点として方向Ｆ１、Ｆ２、及び方向Ｆ３を合成した方向Ｆ１２３に押し付けられるとともに、モーメントＭ１の回転方向に押し付けられる。
【０１０４】
なお、図１３の場合も、図１１と同様に、方向Ｆ２の押し付け動作は必須ではない。これは、ワークＡ１０にモーメントＭ１を加えることで、ワークＡ１０の底面が面Ｂ１１に対してＦ２方向に押し付けられる作用が生じるためである。
【０１０５】
図１４は、第一の作業例におけるロボットの押付動作の第七例を説明する図である。以下、図１３と異なる点を中心に説明する。
【０１０６】
図１４では、ジグＢ２０を用いる。ジグＢ２０は、例えば、図１５（ジグの構成例を示す図）に示すように構成される。ジグＢ２０は、直方体状であり、ワークが置かれる平面状の面Ｂ２１と、面Ｂ２１に略垂直な面Ｂ２２と、面Ｂ２１及び面Ｂ２２に略垂直な面Ｂ２３とを備える。面Ｂ２１、面Ｂ２２、及び面Ｂ２３は、ワークＡ１０を位置決めする位置決め部として機能する。
【０１０７】
図１４の説明に戻る。ワークＡ１０の置き方は、ワークＡ１０を軸部Ａ１５の先端が上（Ｚ方向）を向くようにジグＢ２０の面Ｂ２１上に置く。止め輪Ａ２０を軸部Ａ１５に対して押し付ける方向Ｆ１０は、図１３と同様である。また、作用点Ｐの位置は、図１３と同様である。一方、ワークＡ１０を押し付ける方向は、図１３と異なる。
【０１０８】
すなわち、制御部２０は、他方のアーム１１を制御することにより、他方のアーム１１を制御することにより、面Ｂ２１と略直交する方向Ｆ２に、ハンド１１１を押し付ける。また、制御部２０は、他方のアーム１１を制御することにより、面Ｂ２１及び面Ｂ２３の両方と略平行な方向であり、かつ、面Ｂ２２の方向Ｆ３に、ハンド１１１を押し付ける。方向Ｆ３は、面Ｂ２２を含むＸＺ平面と略垂直である。さらに、制御部２０は、方向Ｆ２及び方向Ｆ３の両方に略垂直な方向であり、面Ｂ２３の方向Ｆ４に、ハンド１１１を押し付ける。方向Ｆ４は、面Ｂ２３を含むＹＺ平面と略垂直である。また、制御部２０は、軸ＭＪ１（図示せず）を設定し、当該軸回り（図では、ワークＡ１０をＹ方向に見て右回り。）のモーメントＭ１を生じさせるように、アーム１１の姿勢を変化させてハンド１１１を押し付ける。なお、軸ＭＪ１と軸ＭＪ１０は、同じ位置であってもよいし、異なる位置であってもよい。これにより、ワークＡ１０が、ジグＢ２０に対して、作用点Ｐを原点として方向Ｆ２、Ｆ３、及び方向Ｆ４を合成した方向Ｆ２３４に押し付けられるとともに、モーメントＭ１の回転方向に押し付けられる。
【０１０９】
なお、図１４の場合も、図１３と同様に、方向Ｆ２の押し付け動作は必須ではない。これは、ワークＡ１０にモーメントＭ１を加えることで、ワークＡ１０の底面が面Ｂ２１に対してＦ２方向に押し付けられる作用が生じるためである。また、図１４の場合、方向Ｆ４の押し付け動作は必須ではない。これは、ワークＡ１０に方向Ｆ１０の力が加わることで、ワークＡ１０の側面が面Ｂ２３に対してＦ４方向に押し付けられる作用が生じるためである。
【０１１０】
以上のような方向とモーメントにより、ハンド１１１でワークを押し付けて支えることで、組み付け作業中にワークが動いたり浮いたりしないように、より確実にワークを固定することができる。また、以上のような方向とモーメントにより、ハンド１１１でワークをジグの位置決め部に対して押し付けることで、より確実にワークを位置決めすることができる。
【０１１１】
なお、ワークＡ１０を軸部Ａ１５の先端が横（Ｙの反対方向）を向くようにジグＢ１０上に置いて、止め輪Ａ２０の組み付け作業を行う場合は、図８に示したようなＦ１、Ｆ２、Ｆ３、及びＭ２で、ワークＡ１０をジグＢ１０に対して押し付けるようにすればよい。
【０１１２】
以上、本発明の一実施形態について説明した。本実施形態によれば、ロボットによる作業において、より確実に、部品などの作業対象物が動かないようにすることができる。
【０１１３】
なお、部品の構成は、図示した構成に限られるものではない。すなわち、ワークには、組み付け作業時にある方向に力を加えた場合に、当該ワークが動いたり浮いたりするモーメントが生じる。これに対して、ロボット１は、当該ワークを、組み付け作業時に力を加える方向（止め輪を組み付ける方向）と反対方向と、作業台の方向とに押し付けるとともに、組み付け作業時に発生するモーメントを打ち消す又は減らすような反対のモーメントで押し付ければよい。
【０１１４】
また、上記の実施形態では、止め輪の組み付け作業を例に挙げたが、作業の内容はこれに限られない。例えば、ネジ、ピン等の部材をワークに挿入する作業や、ステープル（針）等の部材をワークに打ち込む作業、等であってもよい。これらの場合も、作業時に力を加える方向は、止め輪を組み付ける方向と同様になる。また、組み付け作業時に発生するモーメントも同様になる。
【０１１５】
また、上記の実施形態では、ワークとジグ、ワークとワーク、又は、ロボットとワークが、互いに面で接触するように記載しているが、点や線による接触の場合も、物理的には一定の面積を有するため、面接触と同様に考えることができる。
【０１１６】
以上、本発明について実施形態を用いて説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。上記実施形態に多様な変更または改良を加えることが可能であることが当業者には明らかである。また、そのような変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。本発明は、ロボットと制御装置（制御部）とを別個に有するロボットシステムとして提供してもよいし、当該ロボットシステムのロボット及び制御装置として提供してもよい。また、本発明は、ロボット等を制御する方法、ロボット等を制御するプログラム、当該プログラムを記憶した記憶媒体として提供することもできる。
【符号の説明】
【０１１７】
１：ロボット
１０：胴部
１０Ａ：肩領域
１０Ｂ：胴部本体
１１：アーム
１１Ａ、１１Ｂ、１１Ｃ、１１Ｄ、１１Ｅ：アーム部材
１１Ｇ：ハンドアイカメラ
１１ａ：エンコーダー
１１ｂ：力覚センサー
１２：タッチパネルモニター
１３：脚部
１４：搬送用ハンドル
１５：カメラ
１６：信号灯
１７：電源スイッチ
１７ａ：電源ＯＮスイッチ
１７ｂ：電源ＯＦＦスイッチ
１８：外部Ｉ／Ｆ部
１９：昇降ハンドル
２０：制御部
２１：入出力制御部
２２：カメラ制御部
２３：エンコーダー制御部
２４：力覚センサー制御部
２５：軌道生成部
２６：アーム制御部
２７：ハンド制御部
１１１：ハンド
１１１Ａ：本体部
１１１Ｂ：フィンガー
１１２：着脱部材
Ａ１０：ワーク
Ａ１１：本体部
Ａ１５：軸部
Ａ２０：止め輪
Ａ３０：工具
Ａ３５：受止部
Ｂ１０：ジグ
Ｂ１１：面
Ｂ１２：面
Ｆ１、Ｆ２、Ｆ３、Ｆ４、Ｆ１０、Ｆ１２、Ｆ１２３、Ｆ２３４：方向
Ｊ１、Ｊ２、Ｊ３、Ｊ４、Ｊ５、Ｊ６、Ｊ７：回動軸
Ｍ１、Ｍ２、Ｍ３、Ｍ１０、Ｍ２０、Ｍ３０：モーメント
ＭＪ１、ＭＪ２、ＭＪ３、ＭＪ１０、ＭＪ２０、ＭＪ３０：軸
Ｐ：作用点
Ｔ：作業台
【図１】
2015085480.tif 000003
【図２】
2015085480.tif 000004
【図３】
2015085480.tif 000005
【図４】
2015085480.tif 000006
【図５】
2015085480.tif 000007
【図６】
2015085480.tif 000008
【図７】
2015085480.tif 000009
【図８】
2015085480.tif 000010
【図９】
2015085480.tif 000011
【図１０】
2015085480.tif 000012
【図１１】
2015085480.tif 000013
【図１２】
2015085480.tif 000014
【図１３】
2015085480.tif 000015
【図１４】
2015085480.tif 000016
【図１５】
2015085480.tif 000017