(57)【要約】【課題】マニピュレータの制御性の向上を図ること。【解決手段】マニピュレータは、モータ２１Ｒ、モータ２１Ｌ、及びモータ２１Ｒ，２１Ｌにより発生したトルクＴＲ，ＴＬを伝達する伝達機構２４０を含む。伝達機構２４０は、伝達部２５１Ｒと、伝達部２５１Ｌと、出力部２５０とを有する。伝達部２５１Ｒは、モータ２１Ｒにより発生したトルクＴＲをトルクＴＡとして出力部２５０に伝達する。伝達部２５１Ｌは、モータ２１Ｌにより発生したトルクＴＬをトルクＴＢとして出力部２５０に伝達する。制御装置５００は、マニピュレータに行わせる動作に応じて、モータ２１Ｒに発生させるトルクＴＲ、及びモータ２１Ｌに発生させるトルクＴＬを制御する。【選択図】図５
2020142347.tif 000002
【特許請求の範囲】
【請求項１】
第１駆動源、第２駆動源、並びに前記第１駆動源及び前記第２駆動源により発生したトルクを伝達する伝達機構を含むマニピュレータと、
前記マニピュレータに行わせる動作に応じて、前記第１駆動源に発生させるトルク、及び前記第２駆動源に発生させるトルクを制御する制御装置と、を備えることを特徴とするロボット装置。
【請求項２】
前記伝達機構は、
トルクを出力する出力部と、
前記第１駆動源により発生したトルクを前記出力部に伝達する第１伝達部と、
前記第２駆動源により発生したトルクを前記出力部に伝達する第２伝達部と、を含むことを特徴とする請求項１に記載のロボット装置。
【請求項３】
前記制御装置は、
前記マニピュレータに行わせる動作に応じて、前記第１伝達部から前記出力部に伝達される第１トルクと前記第２伝達部から前記出力部に伝達される第２トルクとを同一方向に発生させる第１処理、又は前記第１トルクと前記第２トルクとを反対方向に発生させる第２処理を選択的に実行することを特徴とする請求項２に記載のロボット装置。
【請求項４】
前記制御装置は、
前記マニピュレータを動作させて前記マニピュレータを所定位置に位置決めする際、
前記マニピュレータが前記所定位置を含む第１領域よりも外側に位置している場合には、前記第１処理を実行し、
前記マニピュレータが、前記第１領域内に位置している場合には、前記第２処理を実行することを特徴とする請求項３に記載のロボット装置。
【請求項５】
前記制御装置は、
前記第１処理を、前記第１トルクの大きさと前記第２トルクの大きさとを異ならせて実行することを特徴とする請求項４に記載のロボット装置。
【請求項６】
前記制御装置は、
前記第２処理を、前記マニピュレータが前記所定位置に向かうように前記第１トルクの大きさと前記第２トルクの大きさとを異ならせて実行することを特徴とする請求項４又は５に記載のロボット装置。
【請求項７】
前記制御装置は、
前記第２処理を実行する際、前記マニピュレータが、前記所定位置を含む、前記第１領域よりも狭い第２領域内に位置している場合には、前記第１トルク及び前記第２トルクの各々の大きさを、前記第１領域内であって前記第２領域よりも外側に位置している場合よりも小さくすることを特徴とする請求項４乃至６のいずれか１項に記載のロボット装置。
【請求項８】
前記制御装置は、
前記マニピュレータを前記所定位置に位置決めした後、前記所定位置から前記マニピュレータを動作させる際、前記第１処理を実行することを特徴とする請求項４乃至７のいずれか１項に記載のロボット装置。
【請求項９】
前記制御装置は、
前記マニピュレータを前記所定位置に位置決めした後、前記第１処理を実行して前記マニピュレータを動作させ、前記マニピュレータに第１ワークを取得させることを特徴とする請求項８に記載のロボット装置。
【請求項１０】
前記制御装置は、
前記マニピュレータを前記所定位置に位置決めした後、前記第１処理を実行して前記マニピュレータを動作させ、前記マニピュレータに取得させた第１ワークを第２ワークに組み付けさせることを特徴とする請求項８に記載のロボット装置。
【請求項１１】
前記マニピュレータは、前記伝達機構の出力側の位置を検出するための検出部を有し、
前記制御装置は、前記検出部の検出結果に基づくフルクローズドループ制御で、前記マニピュレータを動作させることを特徴とする請求項１乃至１０のいずれか１項に記載のロボット装置。
【請求項１２】
第１駆動源、第２駆動源、並びに前記第１駆動源及び前記第２駆動源により発生したトルクを伝達する伝達機構を含むマニピュレータを、制御装置が制御する制御方法であって、
前記制御装置が、前記マニピュレータに行わせる動作に応じて、前記第１駆動源に発生させるトルク、及び前記第２駆動源に発生させるトルクを制御することを特徴とする制御方法。
【請求項１３】
請求項１２に記載の制御方法により前記制御装置が前記マニピュレータを制御して物品を製造する物品の製造方法。
【請求項１４】
コンピュータに、請求項１２に記載の制御方法、又は請求項１３に記載の物品の製造方法を実行させるプログラム。
【請求項１５】
請求項１４に記載のプログラムを記録した、コンピュータによって読取可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マニピュレータの制御に関する。
【背景技術】
【０００２】
物品を製造する生産ラインにおいて、マニピュレータが用いられている。生産ラインに用いられるマニピュレータには、高い位置決め精度又はコンプライアンス性が状況に応じて要求される。
【０００３】
特許文献１には、マニピュレータの関節を駆動する駆動装置が記載されている。特許文献１に記載の駆動装置は、ＡＣサーボモータやブラシレスＤＣモータ等のモータと、モータの出力側に設けられた減速機と、を有している。この種のマニピュレータでは、減速機のバックラッシュが、マニピュレータの振動や位置決め誤差の原因となることが知られている。そのため、特許文献１に記載の技術では、減速機の出力側に設けられたエンコーダを用いて、フルクローズドループ制御によりマニピュレータを所定位置に位置決めしている。また、特許文献１に記載の技術では、減速機の入力側に設けられたエンコーダを用いて、セミクローズドループ制御によりマニピュレータを高速に動作させている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−１７６９１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、精密な作業を行わせるマニピュレータにおいても、高出力のトルクが要求されることがある。そして、マニピュレータにおいて、高出力のトルクを実現する構成とする場合においても、高い位置決め精度やコンプライアンス性など、マニピュレータの制御性を状況に応じて変化させることが要求される。例えば、部品を高精度かつ低振動で位置決めする動作ではコンプライアンス性はあまり必要とされない。しかしながら、ある部品を他の部品に挿入する場合、部品が挿入しやすくなるようにコンプライアンス性を必要とする場合がある。
【０００６】
本発明は、マニピュレータの制御性の向上を図ることを目的とする。
【課題を解決するための手段】
【０００７】
本発明のロボット装置は、第１駆動源、第２駆動源、並びに前記第１駆動源及び前記第２駆動源により発生したトルクを伝達する伝達機構を含むマニピュレータと、前記マニピュレータに行わせる動作に応じて、前記第１駆動源に発生させるトルク、及び前記第２駆動源に発生させるトルクを制御する制御装置と、を備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、マニピュレータの制御性が向上する。
【図面の簡単な説明】
【０００９】
【図１】第１実施形態に係るロボット装置を示す斜視図である。
【図２】第１実施形態の駆動装置の斜視図である。
【図３】第１実施形態に係る制御装置の構成を示すブロック図である。
【図４】第１実施形態に係る制御装置の構成を示すブロック図である。
【図５】第１実施形態に係る制御装置において駆動装置を制御する処理の概念図である。
【図６】第１実施形態に係る制御装置による制御方法のフローチャートである。
【図７】第２実施形態に係るロボット装置を示す斜視図である。
【図８】第２実施形態に係る制御装置による制御方法のフローチャートである。
【図９】第３実施形態に係るロボット装置を用いた物品の製造方法のフローチャートである。
【図１０】第３実施形態に係るロボット装置を用いた物品の製造方法の説明図である。
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための形態を、図面を参照しながら詳細に説明する。
【００１１】
［第１実施形態］
図１は、第１実施形態に係るロボット装置を示す斜視図である。図１に示すロボット装置１００は、産業用ロボットであり、工場などの生産ラインに組み込まれ、組付作業などの生産作業に従事する。ロボット装置１００は、マニピュレータ２００と、マニピュレータ２００の動作を制御する制御装置５００と、を備えている。また、ロボット装置１００は、制御装置５００に教示データを送信する教示装置としての教示ペンダント６００を備えている。教示ペンダント６００は、操作者が操作するものであり、マニピュレータ２００や制御装置５００の動作を指定するのに用いる。
【００１２】
マニピュレータ２００は、水平多関節のロボットアーム（ＳＣＡＲＡ）である。マニピュレータ２００は、１つ以上の関節を有していればよく、第１実施形態では、複数の関節、例えば３つの関節Ｊ１〜Ｊ３を有している。マニピュレータ２００は、作業台に固定されるベース部２１０と、ベース部２１０に固定されたリンク２１１と、リンク２１１に関節Ｊ１で連結されたリンク２１２と、リンク２１２に関節Ｊ２で連結されたリンク２１３と、を有する。また、マニピュレータ２００は、リンク２１３に関節Ｊ３で連結されたエンドエフェクタの一例であるハンド２０２を有する。つまり、マニピュレータ２００の先端部がハンド２０２である。ハンド２０２は、ワークを保持するエンドエフェクタであり、第１実施形態ではエアー吸着式のものであるが、開閉動作可能な複数のフィンガーを有するものであってもよい。
【００１３】
マニピュレータ２００は、各関節Ｊ１〜Ｊ３に配置された駆動装置２０を有する。マニピュレータ２００の先端部、即ちハンド２０２は、マニピュレータ２００の各関節Ｊ１〜Ｊ３が駆動装置２０によって回転駆動されることにより、マニピュレータ２００が配置された作業空間における可動範囲内の任意の位置に移動することができる。
【００１４】
制御装置５００は、第１制御ユニットである制御ユニット３００と、第２制御ユニットである制御ユニット４００と、を有する。制御ユニット３００は、ロボット装置１００を統括的に制御するものである。制御ユニット４００は、制御ユニット３００の指令に基づいて、マニピュレータ２００の関節Ｊ１〜Ｊ３の駆動装置２０を制御するものである。
【００１５】
図２は、第１実施形態の駆動装置２０の斜視図である。駆動装置２０は、第１駆動源の一例である電動のモータ２１Ｒと、第２駆動源の一例である電動のモータ２１Ｌと、を有する。また、駆動装置２０は、伝達機構２４０と、検出部の一例であるエンコーダ２４と、を有する。
【００１６】
伝達機構２４０は、モータ２１Ｒ，２１Ｌにより発生したトルクを出力側に伝達するものである。伝達機構２４０の出力側には、図１のリンク２１２、リンク２１３、又はハンド２０２などの被駆動部材が設けられている。したがって、モータ２１Ｒ，２１Ｌの動力が伝達機構２４０により被駆動部材に伝達され、被駆動部材、つまり図１のリンク２１２、リンク２１３、又はハンド２０２が駆動される。
【００１７】
伝達機構２４０は、第１実施形態では減速機であり、モータ２１Ｒ，２１Ｌの回転速度を減速して出力する。伝達機構２４０は、第１伝達部である伝達部２５１Ｒと、第２伝達部である伝達部２５１Ｌと、出力部２５０と、を含む。伝達部２５１Ｒは、モータ２１Ｒにより発生されたトルクを出力部２５０に伝達するものである。伝達部２５１Ｌは、モータ２１Ｌにより発生されたトルクを出力部２５０に伝達するものである。出力部２５０は、伝達部２５１Ｒ及び伝達部２５１Ｌにより伝達されたトルクを被駆動部材に出力するものである。
【００１８】
伝達部２５１Ｒと伝達部２５１Ｌとは、互いに同じ方向の入力トルク（回転入力）に対して、互いに同じ方向の出力トルク（回転出力）を、共に同じ出力部２５０に伝達する。つまり、伝達部２５１Ｒと伝達部２５１Ｌとは、互いに異なる方向の入力トルク（回転入力）に対して、互いに異なる方向の出力トルク（回転出力）を、共に同じ出力部２５０に伝達する。第１実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとは、同じ構成であり、同じ伝達比（減速比）である。
【００１９】
伝達部２５１Ｒは、モータ２１Ｒの回転軸２３２Ｒに係合する摩擦車２３３Ｒと、摩擦車２３３Ｒと同軸に配置された歯車２３４Ｒと、歯車２３４Ｒと噛合する歯車２３５Ｒと、歯車２３５Ｒと同軸に配置された歯車２３６Ｒと、を有する。伝達部２５１Ｌは、モータ２１Ｌの回転軸２３２Ｌに係合する摩擦車２３３Ｌと、摩擦車２３３Ｌと同軸に配置された歯車２３４Ｌと、歯車２３４Ｌと噛合する歯車２３５Ｌと、歯車２３５Ｌと同軸に配置された歯車２３６Ｌと、を有する。出力部２５０は、歯車２３６Ｒ，２３６Ｌと噛合する歯車２３７と、歯車２３７に固定された出力軸２４５とを有する。出力軸２４５は、被駆動部材、即ち図１のリンク２１２、リンク２１３、又はハンド２０２に連結されている。
【００２０】
伝達機構２４０の出力側は、エンコーダ２４が配置されている。エンコーダ２４は、ロータリーエンコーダである。エンコーダ２４は、伝達機構２４０の出力側の回転角度、即ち図１のマニピュレータ２００の関節の角度を検出するためのものであり、角度に応じた検出信号を、図１の制御ユニット４００に出力する。エンコーダ２４は、インクリメンタル式又はアブソリュート式のいずれであってもよい。また、エンコーダ２４は、光学式、磁気式、静電容量式のいずれであってもよい。第１実施形態では、エンコーダ２４は、光学式のものであり、スケール２４Ｓと、スケール２４Ｓに対向して配置された検出器２４Ｄとを有する。スケール２４Ｓは、出力軸２４５にハブ２４２で固定されている。検出器２４Ｄは、スケール２４Ｓの回転位置に応じた信号を、図１の制御ユニット４００に出力する。よって、制御ユニット４００は、エンコーダ２４を用いて、マニピュレータ２００の関節の角度を直接検出することができる。つまり、制御ユニット４００は、マニピュレータ２００の関節の角度を直接検出することで、マニピュレータ２００、即ち関節Ｊ１〜Ｊ３を、フルクローズドループ制御により制御することができる。
【００２１】
以上の駆動装置２０の構成により、モータ２１Ｒにより発生したトルクは回転軸２３２Ｒを通じて摩擦車２３３Ｒに伝達され、摩擦車２３３Ｒ及び歯車２３４Ｒが共に回転駆動される。歯車２３４Ｒに噛合する歯車２３５Ｒが、歯車２３４Ｒによって、歯車２３６Ｒと共に回転駆動される。歯車２３６Ｒに噛合する歯車２３７が、回転駆動される歯車２３６Ｒによって回転駆動される。また、モータ２１Ｌにより発生したトルクは回転軸２３２Ｌを通じて摩擦車２３３Ｌに伝達され、摩擦車２３３Ｌ及び歯車２３４Ｌが共に回転駆動される。歯車２３４Ｌに噛合する歯車２３５Ｌが、歯車２３４Ｌによって、歯車２３６Ｌと共に回転駆動される。歯車２３６Ｌに噛合する歯車２３７が、回転駆動される歯車２３６Ｌによって回転駆動される。つまり、モータ２１Ｒの駆動により、伝達部２５１Ｒの歯車２３６Ｒから出力部２５０の歯車２３７にトルクが伝達される。同様に、モータ２１Ｌの駆動により、伝達部２５１Ｌの歯車２３６Ｌから出力部２５０の歯車２３７にトルクが伝達される。
【００２２】
回転軸２３２Ｒの外径をＤ２３２Ｒ、摩擦車２３３Ｒの外径をＤ２３３Ｒ、歯車２３４Ｒのピッチ円直径をＤ２３４Ｒ、歯車２３５Ｒのピッチ円直径をＤ２３５Ｒ、歯車２３６Ｒのピッチ円直径をＤ２３６Ｒとする。回転軸２３２Ｌの外径をＤ２３２Ｌ、摩擦車２３３Ｌの外径をＤ２３３Ｌ、歯車２３４Ｌのピッチ円直径をＤ２３４Ｌ、歯車２３５Ｌのピッチ円直径をＤ２３５Ｌ、歯車２３６Ｌのピッチ円直径をＤ２３６Ｌとする。歯車２３７のピッチ円直径をＤ２３７とする。歯車２３６Ｒと歯車２３７との噛み合いを含む伝達部２５１Ｒの減速比をＮＲとする。歯車２３６Ｌと歯車２３７との噛み合いを含む伝達部２５１Ｌの減速比をＮＬとする。減速比ＮＲ及び減速比ＮＬは、以下となる。
ＮＲ＝（Ｄ２３３Ｒ×Ｄ２３５Ｒ×Ｄ２３７）÷（Ｄ２３２Ｒ×Ｄ２３４Ｒ×Ｄ２３６Ｒ）
ＮＬ＝（Ｄ２３３Ｌ×Ｄ２３５Ｌ×Ｄ２３７）÷（Ｄ２３２Ｌ×Ｄ２３４Ｌ×Ｄ２３６Ｌ）
【００２３】
なお、伝達部２５１Ｒ，２５１Ｌ及び出力部２５０それぞれの歯車の数は、上述の説明に限定するものではなく、例えば１つであってもよい。また、伝達部２５１Ｒ，２５１Ｌは、摩擦車を有しているが、摩擦車の数も上述の説明に限定するものではない。例えば、伝達部２５１Ｒ，２５１Ｌが摩擦車を有していなくてもよい。この場合、モータの回転軸に歯車を設け、この歯車に噛合する歯車を、摩擦車の代わりに配置してもよい。
【００２４】
一般にマニピュレータの関節に用いられる波動歯車減速機は、高い減速比が得られるため、高いトルクを出力することが期待できるが、高度な製造技術が必要なため高価である。第１実施形態の伝達機構２４０によれば、波動歯車減速機のような高価な構成でなくても、簡単で安価な構成で、動力を減速して伝達することができる。そして、高トルクを実現できるように、第１実施形態では、駆動装置２０は、２つのモータ２１Ｒ，２１Ｌを有している。
【００２５】
制御装置５００について具体的に説明する。図３は、第１実施形態に係る制御装置の構成を示すブロック図である。制御装置５００は、上述したように、制御ユニット３００，４００を有する。図３には、制御ユニット３００のハードウェア構成の一例について詳細に図示している。
【００２６】
制御ユニット３００は、コンピュータで構成されており、処理部としてのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３０１を備える。また、制御ユニット３００は、記憶部として、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３０２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）３０３、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）３０４を備えている。また、制御ユニット３００は、記録ディスクドライブ３０５、及びインタフェース３０６〜３０９を備えている。
【００２７】
ＣＰＵ３０１、ＲＯＭ３０２、ＲＡＭ３０３、ＨＤＤ３０４、記録ディスクドライブ３０５、インタフェース３０６〜３０９は、相互に通信可能にバス３１０で接続されている。ＲＯＭ３０２には、ＣＰＵ３０１に後述する制御方法の処理を実行させるためのプログラム３３０が格納されている。ＣＰＵ３０１は、ＲＯＭ３０２に記録（格納）されたプログラム３３０に基づいて、後述する制御方法を実行する。ＲＡＭ３０３は、ＣＰＵ３０１の演算処理結果等、各種データを一時的に記憶する記憶装置である。
【００２８】
ＨＤＤ３０４は、ＣＰＵ３０１の演算処理結果や外部から取得した各種データ等を記憶可能な記憶装置である。記録ディスクドライブ３０５は、記録ディスク３３１に記録された各種データやプログラム等を読み出すことができる。
【００２９】
教示ペンダント６００は、インタフェース３０６に接続されている。ＣＰＵ３０１は、インタフェース３０６及びバス３１０を介して教示ペンダント６００からマニピュレータ２００の教示データを取得する。
【００３０】
制御ユニット４００は、インタフェース３０９に接続されている。ＣＰＵ３０１は、指令値のデータを所定の制御周期でバス３１０及びインタフェース３０９を介して制御ユニット４００に出力する。制御ユニット４００は、ＣＰＵ３０１から取得した指令値に基づいて駆動装置２０を制御する。なお、駆動装置２０は関節の数だけ存在するため、第１実施形態では３つの駆動装置２０が存在するが、図３では、便宜上、１つの駆動装置２０のみを図示している。
【００３１】
インタフェース３０７には、モニタ３２１が接続されており、モニタ３２１には、ＣＰＵ３０１の制御の下、各種画像が表示される。インタフェース３０８は、書き換え可能な不揮発性メモリや外付けＨＤＤ等の記憶装置である外部記憶装置３２２が接続可能に構成されている。外部記憶装置３２２には、教示データなどのデータが格納可能である。
【００３２】
なお、第１実施形態では、コンピュータによって読取可能な記録媒体がＲＯＭ３０２であり、ＲＯＭ３０２にプログラム３３０が記録されているが、これに限定するものではない。プログラム３３０は、コンピュータによって読取可能な記録媒体であれば、いかなる記録媒体に記録されていてもよい。プログラム３３０を供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、磁気テープ、不揮発性メモリ等を用いることができる。
【００３３】
図４は、第１実施形態に係る制御装置の構成を示すブロック図である。図４には、制御ユニット４００のハードウェア構成について詳細に図示している。なお、図４においても、図３と同様、１つの駆動装置２０のみ図示している。
【００３４】
制御ユニット４００は、コンピュータで構成されている。制御ユニット４００は、処理部であるＣＰＵ４０１と、記憶部であるＲＯＭ４０２及びＲＡＭ４０３と、インタフェース４０６〜４０９と、を備えている。ＣＰＵ４０１、ＲＯＭ４０２、ＲＡＭ４０３、インタフェース４０６〜４０９は、相互に通信可能にバス４１０で接続されている。ＲＯＭ４０２には、ＣＰＵ４０１に、後述する制御方法の処理を実行させるためのプログラム４３０が格納されている。
【００３５】
インタフェース４０６には、モータ２１Ｒが接続されている。インタフェース４０７には、モータ２１Ｌが接続されている。インタフェース４０８には、エンコーダ２４が接続されている。インタフェース４０９には、制御ユニット３００が接続されている。
【００３６】
なお、第１実施形態では、コンピュータによって読取可能な記録媒体がＲＯＭ４０２であり、ＲＯＭ４０２にプログラム４３０が記録されているが、これに限定するものではない。プログラム４３０は、コンピュータによって読取可能な記録媒体であれば、いかなる記録媒体に記録されていてもよい。プログラム４３０を供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、磁気テープ、不揮発性メモリ等を用いることができる。
【００３７】
ところで、図２に示す伝達機構２４０は、複数の歯車を有しているため、複数の歯車に含まれる互いに噛み合う２つの歯車間にバックラッシュが存在する。具体的には、伝達部２５１Ｒにおいては、歯車２３４Ｒと歯車２３５Ｒとの間、及び歯車２３６Ｒと歯車２３７との間に、バックラッシュが存在する。伝達部２５１Ｌにおいては、歯車２３４Ｌと歯車２３５Ｌとの間、及び歯車２３６Ｌと歯車２３７との間に、バックラッシュが存在する。歯車間のバックラッシュは、関節のガタ付きの原因ともなる。マニピュレータ２００には、高い位置決め精度が要求される場合、及び高速動作が要求される場合がある。第１実施形態では、制御装置５００は、これらの要求に応じて、駆動装置２０を制御する。
【００３８】
図５は、第１実施形態に係る制御装置５００において駆動装置２０を制御する処理の概念図である。制御ユニット４００は、エンコーダ２４を用いた検出結果である角度値に基づき、フルクローズドループ制御によって、マニピュレータ２００の動作、即ち関節の角度を制御する。具体的には、制御ユニット４００は、制御ユニット３００から取得した指令値と、エンコーダ２４により取得した検出値との差に基づき、モータ２１ＲをＰＩＤ制御するＰＩＤ演算処理４５１と、モータ２１ＬをＰＩＤ制御するＰＩＤ演算処理４５２とを実行する。なお、フィードバック制御の一例としてＰＩＤ制御としたが、これに限定するものではなく、例えばＰＩ制御であってもよい。
【００３９】
制御ユニット４００は、制御ユニット３００の指令に基づいて、関節のガタ付き、つまり伝達機構２４０のガタ付きを取り除くよう、モータ２１Ｒに発生させるトルクＴＲ、及びモータ２１Ｌに発生させるトルクＴＬを制御する。即ち、制御ユニット４００は、ＰＩＤ演算処理４５１，４５２による制御量を調整して、発生するトルクＴＲ，ＴＬを制御するトルク制御処理４５３を行い、モータ２１Ｒ，２１Ｌに供給する電流を制御する。このように、制御ユニット３００は、制御ユニット４００を通じて、モータ２１Ｒ，２１Ｌにより発生させるトルクＴＲ，ＴＬを制御する。
【００４０】
伝達部２５１Ｒに入力されたトルクＴＲは、第１トルクであるトルクＴＡとして出力部２５０に伝達される。伝達部２５１Ｌに入力されたトルクＴＬは、第２トルクであるトルクＴＢとして出力部２５０に伝達される。
【００４１】
関節のガタ付きは、各伝達部２５１Ｒ，２５１Ｌ内の歯車間に生じるバックラッシュ、及び２つの伝達部２５１Ｒ，２５１Ｌと、出力部２５０との間に生じるバックラッシュが主な原因となる。
【００４２】
第１実施形態では、２つの伝達部２５１Ｒ，２５１Ｌが、互いに同じ方向の入力トルクを互いに同じ方向の出力トルクとして、出力部２５０に伝達する。よって、伝達部２５１Ｒから出力部２５０に伝達されるトルクＴＡと、伝達部２５１Ｌから出力部２５０に伝達されるトルクＴＢとの関係は、モータ２１Ｒが発生するトルクＴＲと、モータ２１Ｌが発生するトルクＴＬとの関係と相似関係にある。つまり、制御装置５００は、各モータ２１Ｒ，２１Ｌに供給する電流を制御することで、各トルクＴＲ，ＴＬ、ひいては各トルクＴＡ，ＴＢを制御することができる。例えば、トルクＴＲとトルクＴＬとを互いに同一方向に発生させれば、トルクＴＡとトルクＴＢとを互いに同一方向に発生させることができる。また、例えば、トルクＴＲとトルクＴＬとを互いに反対方向に発生させれば、トルクＴＡとトルクＴＢとを互いに反対方向に発生させることができる。また、モータ２１Ｒに供給する電流量を調整することで、トルクＴＲの大きさ、ひいてはトルクＴＡの大きさを制御することができ、モータ２１Ｌに供給する電流量を調整することで、トルクＴＬの大きさ、ひいてはトルクＴＢの大きさを制御することができる。
【００４３】
第１実施形態において、制御装置５００は、マニピュレータ２００に行わせる動作に応じて、トルクＴＲ，ＴＬ、具体的には、トルクＴＲの大きさ及び方向と、トルクＴＬの大きさ及び方向とを制御する。これにより、マニピュレータ２００を高速に動作させることもでき、マニピュレータ２００の関節Ｊ１〜Ｊ３のガタ付きによる振動を抑制することもできる。よって、マニピュレータ２００の制御性が向上する。
【００４４】
以下、制御装置５００によるマニピュレータ２００の制御について具体的に説明する。図６は、第１実施形態に係る制御装置５００によるマニピュレータ２００の制御方法のフローチャートである。以下、トルクＴＡ，ＴＢにおいて、関節Ｊ１〜Ｊ３を回転させようとする方向を正とし、反対方向を負として説明する。なお、図１には、所定位置としての目標位置Ｐと、目標位置Ｐの近傍の領域である第１領域としての領域Ｒ１を図示している。目標位置Ｐは、領域Ｒ１内に含まれている。領域Ｒ１は、例えば目標位置Ｐを中心とする仮想的な球形状の領域である。目標位置Ｐ及び領域Ｒ１のデータは、予め、例えば図３のＨＤＤ３０４や外部記憶装置３２２などの記憶装置に設定されている。
【００４５】
以下、マニピュレータ２００が図１に示すように領域Ｒ１の外側に位置している状態から、マニピュレータ２００を領域Ｒ１内の目標位置Ｐに位置決めする制御動作について説明する。ここで、マニピュレータ２００の位置とは、マニピュレータ２００の先端部と同期して移動する、先端部近傍に設定した仮想的な点、いわゆるツールセンターポイントの位置であるものとして説明する。マニピュレータ２００の位置は、各関節Ｊ１〜Ｊ３の角度から順運動学の計算により、高精度に求めることができる。第１実施形態では、各関節Ｊ１〜Ｊ３にエンコーダ２４が配置されている。したがって、制御装置５００は、各関節Ｊ１〜Ｊ３の角度を、エンコーダ２４を用いて検出し、これら検出結果を用いて、マニピュレータ２００の位置を順運動学の計算により求める。
【００４６】
第１実施形態では、マニピュレータ２００の動作モードとして、２つのモードについて説明する。１つ目のモードは、マニピュレータ２００のハンド２０２が作業空間内を移動するようマニピュレータ２００を動作させる移動モードである。２つ目のモードは、マニピュレータ２００のハンド２０２を目標位置Ｐに位置決めするようマニピュレータ２００を動作させる位置決めモードである。制御装置５００は、トルクＴＡとトルクＴＢとを同一方向に発生させる第１処理である処理Ａ、又はトルクＴＡとトルクＴＢとを反対方向に発生させる第２処理である処理Ｂを実行可能である。制御装置５００は、マニピュレータ２００に行わせる動作に応じて、第１実施形態では動作モードに応じて、処理Ａ又は処理Ｂを選択的に実行する。
【００４７】
制御装置５００は、動作モードとして、移動モードを実行する（ステップＳ１）。第１実施形態では、制御装置５００は、マニピュレータ２００を動作させてマニピュレータ２００を目標位置Ｐに位置決めする際、マニピュレータ２００が領域Ｒ１よりも外側に位置している場合には、処理Ａを実行する。つまり、制御装置５００は、２つのモータ２１Ｒ，２１Ｌを共に同じ回転方向に駆動制御して、トルクＴＡとトルクＴＢとを、共に正の同一方向に発生させる。即ち、第１実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、トルクＴＲとトルクＴＬとを、互いに同一方向に発生させる。これにより、マニピュレータ２００の関節が高速に動作する。
【００４８】
このとき、制御装置５００は、処理Ａを、トルクＴＡの大きさとトルクＴＢの大きさとを同一として実行してもよいが、トルクＴＡの大きさとトルクＴＢの大きさとを異ならせて実行するのが好ましい。第１実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、トルクＴＲの大きさとトルクＴＬの大きさとを異ならせるのが好ましい。トルクＴＡの大きさとトルクＴＢの大きさとに差をつけることで、伝達部２５１Ｒ，２５１Ｌと出力部２５０との間に存在するバックラッシュによる関節のガタ付きによる振動を抑制することができる。具体的には、歯車２３６Ｒ，２３６Ｌと歯車２３７との間に存在するバックラッシュによる関節のガタ付きによる振動を抑制することができる。また、伝達部２５１Ｒ，２５１Ｌがそれぞれ複数の歯車を有する場合には、各伝達部２５１Ｒ，２５１Ｌに存在するバックラッシュによる関節のガタ付きによる振動を抑制することができる。具体的には、歯車２３４Ｒと歯車２３５Ｒとの間、及び歯車２３４Ｌと歯車２３５Ｌとの間に存在するバックラッシュによる関節のガタ付きによる振動を抑制することができる。
【００４９】
なお、制御装置５００は、ステップＳ１において、ＰＩＤ演算処理４５１，４５２の制御ゲインを移動に適するように変更してもよい。
【００５０】
次に、制御装置５００は、マニピュレータ２００の位置が領域Ｒ１内かどうかを判定する（Ｓ２）。具体的には、制御装置５００は、上述の方法でマニピュレータ２００の位置を計算し、目標位置Ｐと計算した位置との差分が第１値以下かどうかを判定する。第１値は、領域Ｒ１の半径である。マニピュレータ２００の位置が領域Ｒ１内でなければ（Ｓ２：ＮＯ）、即ちマニピュレータ２００が領域Ｒ１の外側に位置していれば、移動モードが継続される。
【００５１】
マニピュレータ２００の位置が領域Ｒ１内であれば（Ｓ２：ＹＥＳ）、即ちマニピュレータ２００が領域Ｒ１内に位置している場合には、制御装置５００は、動作モードを移動モードから位置決めモードに移行する（Ｓ３）。第１実施形態では、制御装置５００は、位置決めモードにおいて処理Ｂを実行する。
【００５２】
このステップＳ３において、制御装置５００は、２つのモータ２１Ｒ，２１Ｌを互いに異なる回転方向に駆動制御して、トルクＴＡ及びトルクＴＢの内、一方が正、他方が負となるように、トルクＴＡ，ＴＢを互いに異なる方向に発生させる。即ち、第１実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、トルクＴＲの方向とトルクＴＬの方向とを異ならせている。このとき、制御装置５００は、処理Ｂを、マニピュレータ２００が目標位置Ｐに向かうようにトルクＴＡの大きさとトルクＴＢの大きさとを異ならせて実行する。例えば、トルクＴＡを発生させる方向が目標位置Ｐに向かう方向であった場合は、｜ＴＡ｜＞｜ＴＢ｜とする。第１実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、トルクＴＲの大きさとトルクＴＬの大きさとを異ならせている。
【００５３】
これにより、マニピュレータ２００の各関節の振動、即ちマニピュレータ２００のハンド２０２の振動を抑制しながら、マニピュレータ２００を目標位置Ｐに位置決めすることができる。これにより、マニピュレータ２００を目標位置Ｐに早く位置決めすることができる。
【００５４】
なお、制御装置５００は、ステップＳ１において、ＰＩＤ演算処理４５１，４５２の制御ゲインを位置決めに適するように変更してもよい。
【００５５】
以上、第１実施形態によれば、制御装置５００が、ステップＳ１の移動モード時に処理Ａを実行し、ステップＳ３の位置決めモード時に処理Ｂを実行する。これにより、移動モードにマニピュレータ２００を高速に動作させることができ、位置決めモード時に関節のガタ付きによる振動を抑えてマニピュレータ２００を高精度に位置決めすることができる。このように、制御装置５００が、マニピュレータ２００に行わせる動作に応じて、処理Ａ又は処理Ｂを選択的に実行することで、マニピュレータ２００の制御性が向上する。
【００５６】
［第２実施形態］
第２実施形態に係るロボット装置について説明する。図７は、第２実施形態に係るロボット装置を示す斜視図である。なお、第２実施形態におけるロボット装置１００の構成は、第１実施形態におけるロボット装置１００であり、同一符号を付して説明を省略する。
【００５７】
以下、制御装置５００によるマニピュレータ２００の制御について具体的に説明する。図８は、第２実施形態に係る制御装置５００によるマニピュレータ２００の制御方法のフローチャートである。図７には、所定位置としての目標位置Ｐと、目標位置Ｐの近傍の領域である第１領域としての領域Ｒ１を図示している。目標位置Ｐは、領域Ｒ１内に含まれている。領域Ｒ１は、例えば目標位置Ｐを中心とする仮想的な球形状の領域である。更に、第２実施形態では、目標位置Ｐを含む、領域Ｒ１よりも狭い第２領域である領域Ｒ２が規定される。領域Ｒ２は、例えば目標位置Ｐを中心とする、領域Ｒ１よりも小さい仮想的な球形状の領域である。目標位置Ｐ、領域Ｒ１及び領域Ｒ２のデータは、予め、例えば図３のＨＤＤ３０４や外部記憶装置３２２などの記憶装置に設定されている。
【００５８】
制御装置５００は、ステップＳ２１及びステップＳ２２の処理を実行する。ステップＳ２１の処理は、第１実施形態で説明した図６のステップＳ１と同様の処理である。これにより、マニピュレータ２００の関節が高速に動作する。ステップＳ２２の処理は、第１実施形態で説明した図６のステップＳ２と同様の処理である。
【００５９】
マニピュレータ２００の位置が領域Ｒ１内であれば（Ｓ２２：ＹＥＳ）、即ちマニピュレータ２００が領域Ｒ１内であって領域Ｒ２の外側に位置している場合には、制御装置５００は、動作モードを移動モードから第１位置決めモードに移行する（Ｓ２３）。第２実施形態では、制御装置５００は、第１位置決めモードにおいて処理Ｂを実行する。第１位置決めモードは、第１実施形態で説明した位置決めモードと同じである。即ち、ステップＳ２３の処理は、第１実施形態で説明した図６のステップＳ３と同様の処理である。つまり、ステップＳ２３では、トルクＴＡ，ＴＢの大きさを、関節の振動を抑制できる大きさにする。
【００６０】
次に、制御装置５００は、マニピュレータ２００の位置が領域Ｒ２内かどうかを判定する（Ｓ２４）。具体的には、制御装置５００は、マニピュレータ２００の位置を計算し、目標位置Ｐと計算した位置との差分が第１値よりも小さい第２値以下かどうかを判定する。第２値は、領域Ｒ２の半径である。マニピュレータ２００の位置が領域Ｒ２内でなければ（Ｓ２４：ＮＯ）、即ちマニピュレータ２００が領域Ｒ２の外側に位置していれば、第１位置決めモードが継続される。
【００６１】
マニピュレータ２００の位置が領域Ｒ２内であれば（Ｓ２４：ＹＥＳ）、即ちマニピュレータ２００が領域Ｒ２内に位置している場合には、制御装置５００は、第２位置決めモードに移行する（Ｓ２５）。第２実施形態では、制御装置５００は、第２位置決めモードにおいて処理Ｂを実行するが、このときトルクＴＡ，ＴＢの大きさを共に小さくする。即ち、制御装置５００は、トルクＴＡ，ＴＢの各々の大きさを、マニピュレータ２００が領域Ｒ１内であって領域Ｒ２よりも外側に位置している場合よりも小さくする。このステップＳ２５では、ステップＳ２３に引き続き、マニピュレータ２００が目標位置Ｐに向かうようにトルクＴＡの大きさとトルクＴＢの大きさとを異ならせておく。第２実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、マニピュレータ２００が目標位置Ｐに向かうようにトルクＴＲの大きさとトルクＴＬの大きさとを異ならせておく。
【００６２】
ステップＳ２５では、ハンド２０２の振動振幅が領域Ｒ２内に収束しているので、モータ２１Ｒ，２１Ｌに供給する電流の電流値を小さくする。これにより、消費電力を少なくすることができ、モータ２１Ｌ，２１Ｒの発熱を抑制することができる。よって、エネルギー損失を少なくすることができる。
【００６３】
［第３実施形態］
次に、第３実施形態に係るロボット装置について説明する。第３実施形態では、ロボット装置を用いて物品の製造を行う具体例について説明する。なお、第３実施形態におけるロボット装置の構成は、第１実施形態で説明したロボット装置と同様であるため、説明を省略する。
【００６４】
図９は、第３実施形態に係るロボット装置を用いた物品の製造方法のフローチャートである。図１０は、第３実施形態に係るロボット装置を用いた物品の製造方法の説明図である。第３実施形態では、図１０に示す第１ワークであるワークＷ１を、第２ワークであるワークＷ２に組み付けて物品を製造する場合について説明する。図１０には、マニピュレータ２００の可動範囲内で移動するハンド２０２の軌跡を実線で模式的に図示している。制御装置５００によるマニピュレータ２００の制御方法は、第１実施形態で説明した通りである。また、以下、トルクＴＡ，ＴＢ，ＴＲ，ＴＬは、第１実施形態で図５を用いて説明した通りである。
【００６５】
第３実施形態では、所定位置としての目標位置が２つある。１つ目の目標位置は、ワークＷ１の把持しに行く動作を開始する位置Ｐ１であり、２つ目の目標位置は、ワークＷ１をワークＷ２に組み付けしに行く動作を開始する位置Ｐ２である。図１０には、位置Ｐ１と、位置Ｐ１の近傍の領域である第１領域としての領域Ｒ１１を図示している。位置Ｐ１は、領域Ｒ１１内に含まれている。領域Ｒ１１は、例えば位置Ｐ１を中心とする仮想的な球形状の領域である。同様に、図１０には、位置Ｐ２と、位置Ｐ２の近傍の領域である第１領域としての領域Ｒ１２を図示している。位置Ｐ２は、領域Ｒ１２内に含まれている。領域Ｒ１２は、例えば位置Ｐ２を中心とする仮想的な球形状の領域である。位置Ｐ１，Ｐ２及び領域Ｒ１１，Ｒ１２のデータは、予め、例えば図３のＨＤＤ３０４や外部記憶装置３２２などの記憶装置に設定されている。
【００６６】
以下、物品の製造方法の一例として、マニピュレータ２００にワークＷ１をピックアップさせ、その後、ワークＷ１をワークＷ２に組み付けさせる方法について説明する。
【００６７】
制御装置５００は、動作モードとして、移動モードを実行する（ステップＳ３１）。ステップＳ３１の処理は、第１実施形態で説明した図６のステップＳ１と同様の処理である。第３実施形態では、制御装置５００は、マニピュレータ２００を動作させてマニピュレータ２００を位置Ｐ１に位置決めする際、マニピュレータ２００が領域Ｒ１１よりも外側に位置している場合には、処理Ａを実行する。つまり、制御装置５００は、２つのモータ２１Ｒ，２１Ｌを共に同じ回転方向に駆動制御して、トルクＴＡとトルクＴＢとを、共に正の同一方向に発生させる。即ち、第３実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、トルクＴＲとトルクＴＬとを、互いに同一方向に発生させる。これにより、マニピュレータ２００の関節が高速に動作する。
【００６８】
このとき、制御装置５００は、処理Ａを、トルクＴＡの大きさとトルクＴＢの大きさと同一として実行してもよいが、トルクＴＡの大きさとトルクＴＢの大きさとを異ならせて実行するのが好ましい。第３実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、トルクＴＲの大きさとトルクＴＬの大きさとを異ならせるのが好ましい。トルクＴＡの大きさとトルクＴＢの大きさとに差をつけることで、図２に示す伝達部２５１Ｒ，２５１Ｌと出力部２５０との間に存在するバックラッシュによる関節のガタ付きによる振動を抑制することができる。具体的には、歯車２３６Ｒ，２３６Ｌと歯車２３７との間に存在するバックラッシュによる関節のガタ付きによる振動を抑制することができる。また、伝達部２５１Ｒ，２５１Ｌがそれぞれ複数の歯車を有する場合には、各伝達部２５１Ｒ，２５１Ｌに存在するバックラッシュによる関節のガタ付きによる振動を抑制することができる。具体的には、歯車２３４Ｒと歯車２３５Ｒとの間、及び歯車２３４Ｌと歯車２３５Ｌとの間に存在するバックラッシュによる関節のガタ付きによる振動を抑制することができる。
【００６９】
次に、制御装置５００は、マニピュレータ２００の位置が領域Ｒ１１内かどうかを判定する（Ｓ３２）。ステップＳ３２の処理は、第１実施形態で説明した図６のステップＳ２と同様の処理である。マニピュレータ２００の位置が領域Ｒ１１内でなければ（Ｓ３２：ＮＯ）、即ちマニピュレータ２００が領域Ｒ１１の外側に位置していれば、移動モードが継続される。
【００７０】
マニピュレータ２００の位置が領域Ｒ１１内であれば（Ｓ３２：ＹＥＳ）、即ちマニピュレータ２００が領域Ｒ１１内に位置している場合には、制御装置５００は、動作モードを移動モードから位置決めモードに移行する（Ｓ３３）。第３実施形態では、制御装置５００は、位置決めモードにおいて処理Ｂを実行する。ステップＳ３３の処理は、第１実施形態で説明した図６のステップＳ３と同様の処理である。このステップＳ３３において、制御装置５００は、２つのモータ２１Ｒ，２１Ｌを互いに異なる回転方向に駆動制御して、トルクＴＡ及びトルクＴＢの内、一方が正、他方が負となるように、トルクＴＡ，ＴＢを互いに異なる方向に発生させる。即ち、第３実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、トルクＴＲの方向とトルクＴＬの方向とを異ならせている。このとき、制御装置５００は、処理Ｂを、マニピュレータ２００が位置Ｐ１に向かうようにトルクＴＡの大きさとトルクＴＢの大きさとを異ならせて実行する。例えば、トルクＴＡを発生させる方向が位置Ｐ１に向かう方向であった場合は、｜ＴＡ｜＞｜ＴＢ｜とする。第３実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、トルクＴＲの大きさとトルクＴＬの大きさとを異ならせている。
【００７１】
これにより、マニピュレータ２００の各関節の振動、即ちマニピュレータ２００のハンド２０２の振動を抑制しながら、マニピュレータ２００を位置Ｐ１に位置決めすることができる。これにより、マニピュレータ２００を位置Ｐ１に早く位置決めすることができる。
【００７２】
制御装置５００は、マニピュレータ２００を位置Ｐ１に位置決めしたかどうかを判定する（Ｓ３４）。マニピュレータ２００が位置Ｐ１に位置決めされていなければ（Ｓ３４：ＮＯ）、位置決めモードが継続される。
【００７３】
マニピュレータ２００が位置Ｐ１に位置決めされた場合（Ｓ３４：ＹＥＳ）、制御装置５００は、動作モードを位置決めモードから移動モードに移行する（Ｓ３５）。即ち、制御装置５００は、マニピュレータを位置Ｐ１に位置決めした後、ハンド２０２がワークＷ１に向かって動作するようマニピュレータ２００を位置Ｐ１から動作させるが、その際に、処理Ａを実行する。このとき、制御装置５００は、処理Ａを、トルクＴＡの大きさとトルクＴＢの大きさとが同一となるように実行するのが好ましい。第３実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、トルクＴＲの大きさとトルクＴＬの大きさとが同一であるのが好ましい。これにより、マニピュレータ２００の関節、即ち伝達機構２４０にガタが発生し、コンプライアンス性を確保することができる。
【００７４】
制御装置５００は、コンプライアンス性を確保した状態で、マニピュレータ２００を動作させ、マニピュレータ２００にワークＷ１を取得（ピックアップ）させる（Ｓ３６）。つまり、マニピュレータ２００は、コンプライアンス性が確保されるので、ワークＷ１を確実に取得することができる。
【００７５】
次に、制御装置５００は、動作モードとして、移動モードを実行する（ステップＳ３７）。ステップＳ３７の処理は、第１実施形態で説明した図６のステップＳ１と同様の処理である。第３実施形態では、制御装置５００は、マニピュレータ２００を動作させてマニピュレータ２００を位置Ｐ２に位置決めする際、マニピュレータ２００が領域Ｒ１２よりも外側に位置している場合には、処理Ａを実行する。つまり、制御装置５００は、２つのモータ２１Ｒ，２１Ｌを共に同じ回転方向に駆動制御して、トルクＴＡとトルクＴＢとを、共に正の同一方向に発生させる。即ち、第３実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、トルクＴＲとトルクＴＬとを、互いに同一方向に発生させる。これにより、マニピュレータ２００の関節が高速に動作する。
【００７６】
このとき、制御装置５００は、処理Ａを、トルクＴＡの大きさとトルクＴＢの大きさとを同一として実行してもよいが、トルクＴＡの大きさとトルクＴＢの大きさとを異ならせて実行するのが好ましい。第３実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、トルクＴＲの大きさとトルクＴＬの大きさとを異ならせるのが好ましい。トルクＴＡの大きさとトルクＴＢの大きさとに差をつけることで、図２に示す伝達部２５１Ｒ，２５１Ｌと出力部２５０との間に存在するバックラッシュによる関節のガタ付きによる振動を抑制することができる。具体的には、歯車２３６Ｒ，２３６Ｌと歯車２３７との間に存在するバックラッシュによる関節のガタ付きによる振動を抑制することができる。また、伝達部２５１Ｒ，２５１Ｌがそれぞれ複数の歯車を有する場合には、各伝達部２５１Ｒ，２５１Ｌに存在するバックラッシュによる関節のガタ付きによる振動を抑制することができる。具体的には、歯車２３４Ｒと歯車２３５Ｒとの間、及び歯車２３４Ｌと歯車２３５Ｌとの間に存在するバックラッシュによる関節のガタ付きによる振動を抑制することができる。
【００７７】
次に、制御装置５００は、マニピュレータ２００の位置が領域Ｒ１２内かどうかを判定する（Ｓ３８）。ステップＳ３８の処理は、第１実施形態で説明した図６のステップＳ２と同様の処理である。マニピュレータ２００の位置が領域Ｒ１２内でなければ（Ｓ３８：ＮＯ）、即ちマニピュレータ２００が領域Ｒ１２の外側に位置していれば、移動モードが継続される。
【００７８】
マニピュレータ２００の位置が領域Ｒ１２内であれば（Ｓ３８：ＹＥＳ）、即ちマニピュレータ２００が領域Ｒ１２内に位置している場合には、制御装置５００は、動作モードを移動モードから位置決めモードに移行する（Ｓ３９）。第３実施形態では、制御装置５００は、位置決めモードにおいて処理Ｂを実行する。ステップＳ３９の処理は、第１実施形態で説明した図６のステップＳ３と同様の処理である。このステップＳ３９において、制御装置５００は、２つのモータ２１Ｒ，２１Ｌを互いに異なる回転方向に駆動制御して、トルクＴＡ及びトルクＴＢの内、一方が正、他方が負となるように、トルクＴＡ，ＴＢを互いに異なる方向に発生させる。即ち、第３実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、トルクＴＲの方向とトルクＴＬの方向とを異ならせている。このとき、制御装置５００は、処理Ｂを、マニピュレータ２００が位置Ｐ２に向かうようにトルクＴＡの大きさとトルクＴＢの大きさとを異ならせて実行する。例えば、トルクＴＡを発生させる方向が位置Ｐ２に向かう方向であった場合は、｜ＴＡ｜＞｜ＴＢ｜とする。第３実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、トルクＴＲの大きさとトルクＴＬの大きさとを異ならせている。
【００７９】
これにより、マニピュレータ２００の各関節の振動、即ちマニピュレータ２００のハンド２０２の振動を抑制しながら、マニピュレータ２００を位置Ｐ２に位置決めすることができる。これにより、マニピュレータ２００を位置Ｐ２に早く位置決めすることができる。
【００８０】
制御装置５００は、マニピュレータ２００を位置Ｐ２に位置決めしたかどうかを判定する（Ｓ４０）。マニピュレータ２００が位置Ｐ２に位置決めされていなければ（Ｓ４０：ＮＯ）、位置決めモードが継続される。
【００８１】
マニピュレータ２００が位置Ｐ２に位置決めされた場合（Ｓ４０：ＹＥＳ）、制御装置５００は、動作モードを位置決めモードから移動モードに移行する（Ｓ４１）。即ち、制御装置５００は、マニピュレータを位置Ｐ２に位置決めした後、ワークＷ１を取得したマニピュレータ２００のハンド２０２がワークＷ２に向かって動作するようマニピュレータ２００を位置Ｐ２から動作させるが、その際に、処理Ａを実行する。このとき、制御装置５００は、処理Ａを、トルクＴＡの大きさとトルクＴＢの大きさとが同一となるように実行するのが好ましい。第３実施形態では、伝達部２５１Ｒと伝達部２５１Ｌとが同様の構成であるため、トルクＴＲの大きさとトルクＴＬの大きさとが同一であるのが好ましい。これにより、マニピュレータ２００の関節、即ち伝達機構２４０にガタが発生し、コンプライアンス性を確保することができる。
【００８２】
制御装置５００は、コンプライアンス性を確保した状態で、マニピュレータ２００を動作させ、マニピュレータ２００に取得させたワークＷ１をワークＷ２に組み付けさせる（Ｓ４２）。つまり、マニピュレータ２００は、コンプライアンス性が確保されるので、ワークＷ１をワークＷ２に確実に組み付けることができる。第３実施形態では、制御装置５００は、マニピュレータ２００にワークＷ１をワークＷ２に嵌合させる。コンプライアンス性を発生させる距離（ステップＳ３５とスッテプＳ４１）は、ワークやマニュピュレータの公差を鑑みて最小となるように設定する。
【００８３】
以上、第３実施形態では、コンプライアンス性が必要なステップＳ３６及びステップＳ４２において、マニピュレータ２００にコンプライアンス性を持たせることで、ワークＷ１の取得及び組付が容易となる。これにより、マニピュレータ２００の制御性が向上する。
【００８４】
なお、本発明は、以上説明した実施形態に限定されるものではなく、本発明の技術的思想内で多くの変形が可能である。また、実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されない。
【００８５】
上述の実施形態では、関節の角度を検出するための検出部が、エンコーダ２４である場合について説明したが、エンコーダ２４に限定するものではない。検出部は、関節の角度を検出できるものであれば、いかなるものでもよく、例えばレゾルバ等を用いてもよい。
【００８６】
また、上述の実施形態では、伝達機構２４０が減速機である場合について説明したが、これに限定するものではない。また、減速機として歯車減速機である場合を例に説明したが、これに限定するものではなく、歯車以外の減速機であってもよい。
【００８７】
また、上述の実施形態では、エンドエフェクタがハンド２０２である場合について説明したが、これに限定するものではない。エンドエフェクタが、例えばワークに対して作業を施すツールであってもよい。
【００８８】
また、上述の実施形態では、マニピュレータ２００が水平多関節のロボットアームである場合について説明したが、これに限定するものではない。マニピュレータ２００が、垂直多関節のロボットアーム、パラレルリンクのロボットアーム、直交ロボット等であってもよい。
【００８９】
また、上述の実施形態では、マニピュレータ２００の駆動装置２０の第１駆動源及び第２駆動源が、それぞれモータである場合について説明したが、これに限定するものではない。各駆動源が、例えば人工筋肉のようなデバイス等であってもよい。
【００９０】
上述の実施形態において、制御装置５００の制御ユニット３００及び制御ユニット４００のそれぞれの処理を、ソフトウェアにより実行する場合について説明したが、これに限定するものではない。例えば、制御ユニット３００の処理機能の一部又は全部をハードウェア（回路構成）により実現するようにしてもよい。また、例えば、制御ユニット４００の処理機能の一部又は全部をハードウェア（回路構成）により実現するようにしてもよい。また、制御装置５００が制御ユニット３００と制御ユニット４００とで構成される場合について説明したが、これに限定するものではない。例えば、制御装置５００を１つのコンピュータで構成してもよく、複数のコンピュータで構成してもよい。
【００９１】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００９２】
また上述した実施形態は、制御装置に設けられる記憶装置の情報に基づき、伸縮、屈伸、上下移動、左右移動もしくは旋回の動作またはこれらの複合動作を自動的に行うことができる機械に適用可能である。
【符号の説明】
【００９３】
２１Ｌ…モータ（第２駆動源）、２１Ｒ…モータ（第１駆動源）、１００…ロボット装置、２００…マニピュレータ、２４０…伝達機構、５００…制御装置
【図１】
2020142347.tif 000003
【図２】
2020142347.tif 000004
【図３】
2020142347.tif 000005
【図４】
2020142347.tif 000006
【図５】
2020142347.tif 000007
【図６】
2020142347.tif 000008
【図７】
2020142347.tif 000009
【図８】
2020142347.tif 000010
【図９】
2020142347.tif 000011
【図１０】
2020142347.tif 000012