(57)【要約】【課題】ロボットに対して生産性の高い作業を行わせることができる制御装置、かかる制御装置により制御されているロボット、および、かかる制御装置とロボットとを備えるロボットシステムを提供すること。【解決手段】力検出部を有するロボットの駆動を制御する制御装置であって、前記ロボットに対して作業を複数回行わせるに際し、第１回目の前記作業では、前記力検出部からの出力に基づいて前記ロボットを力制御して、第１位置を教示し、第２回目の前記作業では、前記第１回目の前記作業で得た前記第１位置に関する第１位置データに基づいて、前記ロボットを位置制御して、前記ロボットの所定部位を前記第１位置へ移動させる制御部を備えることを特徴とする制御装置。【選択図】図１
2018069441.tif 000002
【特許請求の範囲】
【請求項１】
力検出部を有するロボットの駆動を制御する制御装置であって、
前記ロボットに対して作業を複数回行わせるに際し、第１回目の前記作業では、前記力検出部からの出力に基づいて前記ロボットを力制御して、第１位置を教示し、
第２回目の前記作業では、前記第１回目の前記作業で得た前記第１位置に関する第１位置データに基づいて、前記ロボットを位置制御して、前記ロボットの所定部位を前記第１位置へ移動させる制御部を備えることを特徴とする制御装置。
【請求項２】
前記制御部は、前記第２回目以降の前記作業では、前記第１位置データに基づいて前記ロボットを位置制御して、前記ロボットの前記所定部位を前記第１位置へ移動させる請求項１に記載の制御装置。
【請求項３】
前記制御部は、前記第１回目の前記作業では、前記力検出部の出力に基づいて前記ロボットを力制御して、前記第１位置と、前記第１位置とは異なる第２位置とを教示し、
前記制御部は、前記第２回目の前記作業では、前記第１位置データに基づいて、前記ロボットを位置制御して、前記所定部位を前記第１位置に位置させる処理と、前記第１回目の前記作業で得た前記第２位置に関する第２位置データに基づいて前記ロボットを制御する位置制御と、前記力検出部からの出力に基づいて前記ロボットを制御する力制御とを行って前記ロボットを駆動させることで、前記所定部位を前記第２位置に位置させる処理とを行う請求項１または２に記載の制御装置。
【請求項４】
前記制御部は、前記ロボットの異常を検出することが可能であり、前記位置制御を行っている間、前記力検出部の出力に基づいて、前記ロボットの異常を検出する請求項１ないし３のいずれか１項に記載の制御装置。
【請求項５】
前記制御部は、所定回目の前記作業では、前記力検出部からの出力に基づいて前記ロボットを力制御して、前記所定部位を前記第１位置へ移動させる請求項１ないし４のいずれか１項に記載の制御装置。
【請求項６】
前記ロボットは、複数のロボットアームを有し、
前記力検出部は、前記複数のロボットアームのうちの少なくとも１つに設けられている請求項１ないし５のいずれか１項に記載の制御装置。
【請求項７】
力検出部を有し、作業を複数回行うロボットであって、
請求項１ないし６のいずれか１項に記載の制御装置によって制御されていることを特徴とするロボット。
【請求項８】
請求項１ないし６のいずれか１項に記載の制御装置と、当該制御装置によって制御され、力検出部を有するロボットとを備えることを特徴とするロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、ロボットおよびロボットシステムに関するものである。
【背景技術】
【０００２】
従来から、ロボットアームと、ロボットアームの先端に取り付けられ、対象物に対して作業を行うエンドエフェクターとを備えた産業用ロボットが知られている。
【０００３】
このようなロボットとして、例えば、特許文献１には、ロボットアームと、エンドエフェクターと、ロボットアームに設けられた力覚センサーと、ロボットアームの駆動を制御する制御部と、を有するロボットが開示されている。このような特許文献１に記載のロボットでは、エンドエフェクターの対象物等に対する接触を伴う作業を高精度に行うために、制御部が力覚センサーからの検出結果に基づいてロボットアームの駆動を制御する力制御を行っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−１８２１６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、力覚センサーからの検出結果に基づく力制御では、一般的に力覚センサーの応答性や制御周期の不足により、作業によってはロボットアームの動作速度を通常速度より遅くしないと力制御による位置決めの繰り返し安定性が得られない場合があり、ロボットアームの動作速度を遅くする必要があった。そのため、生産性を向上させることが難しいという問題があった。
【課題を解決するための手段】
【０００６】
本発明は、上述した少なくとも一つの課題を解決するためになされたものであり、以下により実現することが可能である。
【０００７】
本発明の制御装置は、力検出部を有するロボットの駆動を制御する制御装置であって、
前記ロボットに対して作業を複数回行わせるに際し、第１回目の前記作業では、前記力検出部からの出力に基づいて前記ロボットを力制御して、第１位置を教示し、
第２回目の前記作業では、前記第１回目の前記作業で得た前記第１位置に関する第１位置データに基づいて、前記ロボットを位置制御して、前記ロボットの所定部位を前記第１位置へ移動させる制御部を備えることを特徴とする。
【０００８】
このような本発明の制御装置によれば、第１回目の作業では、精密な位置決めを実現でき、第２回目の作業では、第１回目の作業で得た第１位置データに基づいて位置制御することができる。そのため、第２回目の作業では、精密な位置決めを実現しつつ、第１回目の作業よりも動作速度（所定部位の移動速度）を速くすることができる。したがって、例えば安定して質の高い製品を数多く生産することができ、生産性を高めることができる。
【０００９】
ここで、「力検出部」とは、例えばロボットに加わる力（モーメントを含む）、すなわち外力を検出し、その外力に応じた検出結果（力出力値）を出力するもののことを示す。例えば、「力検出部」は、力覚センサーやトルクセンサー等で構成することができる。
【００１０】
本発明の制御装置では、前記制御部は、前記第２回目以降の前記作業では、前記第１位置データに基づいて前記ロボットを位置制御して、前記ロボットの前記所定部位を前記第１位置へ移動させることが好ましい。
【００１１】
これにより、第２回目以降の作業において、所定部位を第１位置に適切に位置させつつ、第１回目の作業よりも動作速度を速くすることができるため、生産性をより高めることができる。
【００１２】
ここで、「第２回目以降の作業」とは、第２回目以降全ての作業を意味することに限らず、第２回目から任意の回数までの作業を含む意味である。
【００１３】
本発明の制御装置では、前記制御部は、前記第１回目の前記作業では、前記力検出部の出力に基づいて前記ロボットを力制御して、前記第１位置と、前記第１位置とは異なる第２位置とを教示し、前記制御部は、前記第２回目の前記作業では、前記第１位置データに基づいて、前記ロボットを位置制御して、前記所定部位を前記第１位置に位置させる処理と、前記第１回目の前記作業で得た前記第２位置に関する第２位置データに基づいて前記ロボットを制御する位置制御と、前記力検出部からの出力に基づいて前記ロボットを制御する力制御とを行って前記ロボットを駆動させることで、前記所定部位を前記第２位置に位置させる処理とを行うことが好ましい。
【００１４】
このように、第２回目の作業において、第１位置に関する処理では位置制御を行い、第２位置に関する処理では力制御および位置制御の双方を行うことができる。そのため、例えば、処理内容等に応じて位置制御のみを行うことと、力制御および位置制御の双方を行うこととを併用することで、１つの作業内において、より高精度で迅速な作業をロボットに行わせることができる。
【００１５】
本発明の制御装置では、前記制御部は、前記ロボットの異常を検出することが可能であり、前記位置制御を行っている間、前記力検出部の出力に基づいて、前記ロボットの異常を検出することが好ましい。
【００１６】
これにより、異常を検出したら、例えばロボットの駆動を停止したり、第１回目の作業を再度やり直すことができる。そのため、より安定して質の高い製品を数多く生産することができる。
【００１７】
本発明の制御装置では、前記制御部は、所定回目の前記作業では、前記力検出部からの出力に基づいて前記ロボットを力制御して、前記所定部位を前記第１位置へ移動させることが好ましい。
【００１８】
このように、第１回目以外の所定回目において力制御で所定部位を第１位置へ移動させることで、所定回目において、精密な位置決めが実現できているかを確認したり、必要に応じて第１位置データの補正をすることができる。
【００１９】
本発明の制御装置では、前記ロボットは、複数のロボットアームを有し、
前記力検出部は、前記複数のロボットアームのうちの少なくとも１つに設けられていることが好ましい。
【００２０】
ここで、一般的に、複数のロボットアームを有するロボットは、ロボットアームのアーム幅が比較的細くて剛性が不足し易く、精密な位置決めをすることが難しいが、本発明の制御装置によれば、このようなロボットであっても、生産性を高めることができる。
【００２１】
本発明のロボットは、力検出部を有し、作業を複数回行うロボットであって、
本発明の制御装置によって制御されていることを特徴とする。
【００２２】
このような本発明のロボットによれば、制御装置の制御の下、精密な位置決めを実現しつつ、サイクルタイムを短くすることができることで、生産性を高めることができる。
【００２３】
本発明のロボットシステムは、本発明の制御装置と、当該制御装置によって制御され、力検出部を有するロボットとを備えることを特徴とする。
【００２４】
このような本発明のロボットシステムによれば、制御装置の制御の下、精密な位置決めを実現しつつ、サイクルタイムを短くすることができることで、生産性を高めることができる。
【図面の簡単な説明】
【００２５】
【図１】本発明の好適な実施形態に係るロボットシステムの斜視図である。
【図２】図１に示すロボットの概略図である。
【図３】図１に示すロボットが有するエンドエフェクターおよび力検出部を示す図である。
【図４】図１に示すロボットシステムのシステム構成図である。
【図５】図１に示すロボットが作業を行う作業台の一例を示す図である。
【図６】図５に示す組立台上にケースが載置された状態を示す図である。
【図７】図５に示す組立台上にあるケース上に蓋部材が載置された状態を示す図である。
【図８】一方のロボットアームの先端の目標軌道Ａ１を示す図である。
【図９】他方のロボットアームの先端の目標軌道Ａ２を示す図である。
【図１０】作業フローの一例を示すフローチャートである。
【図１１】図１０に示す第１制御を示すフローチャートである。
【図１２】一方のエンドエフェクターの先端が教示点Ｐ１１に位置している状態を示す図である。
【図１３】一方のエンドエフェクターの先端が補正教示点Ｐ１１０に位置している状態を示す図である。
【図１４】一方のエンドエフェクターの先端が教示点Ｐ１２に位置している状態を示す図である。
【図１５】一方のエンドエフェクターの先端が補正教示点Ｐ１２０に位置している状態を示す図である。
【図１６】他方のエンドエフェクターの先端が教示点Ｐ２１に位置している状態を示す図である。
【図１７】他方のエンドエフェクターの先端が補正教示点Ｐ２１０に位置している状態を示す図である。
【図１８】他方のエンドエフェクターの先端が教示点Ｐ２２に位置している状態を示す図である。
【図１９】他方のエンドエフェクターの先端が補正教示点Ｐ２２０に位置している状態を示す図である。
【図２０】図８に示す目標軌道Ａ１を補正して得られた目標軌道Ａ１０を示す図である。
【図２１】図９に示す目標軌道Ａ２を補正して得られた目標軌道Ａ２０を示す図である。
【図２２】図１０に示す第２制御を示すフローチャートである。
【図２３】エンドエフェクターの先端が補正教示点Ｐ３１０に位置している状態を示す図である。
【図２４】エンドエフェクターの先端が補正教示点Ｐ３２０に位置している状態を示す図である。
【図２５】エンドエフェクターでケースを把持している状態を模式的に示す斜視図である。
【発明を実施するための形態】
【００２６】
以下、本発明の制御装置、ロボットおよびロボットシステムを添付図面に示す好適な実施形態に基づいて詳細に説明する。
【００２７】
≪ロボットシステム≫
図１は、本発明の好適な実施形態に係るロボットシステムの斜視図である。図２は、図１に示すロボットの概略図である。図３は、図１に示すロボットが有するエンドエフェクターおよび力検出部を示す図である。図４は、図１に示すロボットシステムのシステム構成図である。なお、以下では、説明の便宜上、図１中の上側を「上」、下側を「下」と言う。また、図１中のベース側を「基端」、その反対側（エンドエフェクター側）を「先端」と言う。また、図１では、説明の便宜上、互いに直交する３軸として、Ｘ軸、Ｙ軸およびＺ軸を図示している。また、以下では、Ｘ軸に平行な方向を「Ｘ軸方向」とも言い、Ｙ軸に平行な方向を「Ｙ軸方向」とも言い、Ｚ軸に平行な方向を「Ｚ軸方向」とも言う。また、以下では、図示された各矢印の先端側を「＋（プラス）」、基端側を「−（マイナス）」と言う。また、＋Ｙ軸方向側を「正面側」とも言い、−Ｙ軸方向側を「背面側」ともいう。また、図１の上下方向を「鉛直方向」とし、左右方向を「水平方向」とする。本明細書において、「水平」とは、水平に対して５°以下の範囲内で傾斜している場合も含む。同様に、本明細書において、「鉛直」とは、鉛直に対して５°以下の範囲内で傾斜している場合も含む。
【００２８】
図１に示すロボットシステム１００は、ロボット１と、ロボット１の駆動を制御する制御装置５とを備えている。
【００２９】
〈ロボット〉
図１に示すロボット１は、双腕ロボットであり、例えば、精密機器等を製造する製造工程等で用いられ、制御装置５による制御の下、精密機器やその部品等の対象物の把持や搬送等を行うことができる。
【００３０】
図１に示すように、ロボット１は、ベース（基台）２１０と、ベース２１０に対して鉛直方向に昇降する昇降部２４０と、昇降部２４０を介してベース２１０に連結されている胴体２２０と、胴体２２０の左右に連結されている一対のロボットアーム２３０（２３０ａ、２３０ｂ）と、２つの力検出部３０（３０ａ、３０ｂ）と、２つのエンドエフェクター４０（４０ａ、４０ｂ）と、表示入力装置２７０と、を有する。
【００３１】
また、図４に示すように、ロボット１は、複数の駆動部１３１、１３２と、複数の位置センサー１３５、１３６（角度センサー）とを有する。
【００３２】
以下、ロボット１を構成する各部について説明する。
（ベース）
図１に示すベース２１０は、昇降部２４０を介して胴体２２０およびロボットアーム２３０を支持する部材である。このベース２１０は、制御装置５を収納している基部２１０１と、基部２１０１の上部に設けられた筒状の柱部２１０２と、を有する。
【００３３】
基部２１０１には、図示しない複数の車輪（回転部材）と、各車輪をロックする図示しないロック機構と、ロボット１を移動する際に把持するハンドル２１１（把持部）とが設けられている。これにより、ロボット１を移動させたり、ロボット１を所定の位置で固定したりすることができる。
【００３４】
柱部２１０２の正面側には、バンパー２１３が着脱可能に取り付けられている。このバンパー２１３は、ロボット１とその周りに配置される周辺機器（例えば、図５に示す作業台９０等）とが不本意に接触等することを防止または抑制するために用いられる部材である。このバンパー２１３を周辺機器に当接させることで、ロボット１と周辺機器とを所定の間隔を隔てて向き合わせることができ、よって、ロボット１と周辺機器との意図しない接触等を防止または抑制することができる。また、バンパー２１３は、柱部２１０２に対して鉛直方向に移動可能であり、様々な高さの周辺機器に対応することが可能なように構成されている。
【００３５】
また、柱部２１０２には、非常停止ボタン２１４が設けられている。非常時にはこの非常停止ボタン２１４を押すことによって、ロボット１を緊急停止させることができる。
【００３６】
（昇降部）
昇降部２４０は、ベース２１０の柱部２１０２に接続されている。昇降部２４０は、柱部２１０２内に挿通して接続されている筒状の筐体部２４０１と、筐体部２４０１内に設けられ、筐体部２４０１を柱部２１０２に対して例えば鉛直方向に昇降させる昇降機構（図示せず）と、を有している。昇降機構の構成は、胴体２２０を柱部２１０２に対して昇降させることができれば、特に限定されず、例えば、モーター、ラック＆ピニオン、減速機等で構成することができる。
【００３７】
（胴体）
図１に示すように、胴体２２０は、昇降部２４０等に連結されており、これにより、胴体２２０は、鉛直方向に昇降可能となっている。具体的には、図２に示すように、胴体２２０は、関節３１０を介して昇降部２４０に連結されており、昇降部２４０に対して鉛直方向に沿った第１回動軸Ｏ１まわりに回動可能となっている。
【００３８】
また、胴体２２０には、胴体２２０を昇降部２４０に対して回動させる駆動力を発生させるモーター（図示せず）とモーターの駆動力を減速する減速機（図示せず）とを有する駆動部１３１と、駆動部１３１が有するモーターの回転軸の回転角度等を検出する位置センサー１３５（角度センサー）とが設けられている（図４参照）。
【００３９】
駆動部１３１が有するモーターとしては、例えば、ＡＣサーボモーター、ＤＣサーボモーター等のサーボモーターを用いることができる。駆動部１３１が有する減速機としては、例えば、遊星ギア型の減速機、波動歯車装置等を用いることができる。位置センサー１３５（角度センサー）としては、例えば、エンコーダー、ロータリーエンコーダー等を用いることができる。また、駆動部１３１は、電気的に接続されたモータードライバー（図示せず）を介して制御装置５により制御されている。
【００４０】
また、図１に示すように、胴体２２０には、ステレオカメラ２５０および信号灯２６０が設けられている。ステレオカメラ２５０は、鉛直方向下方を撮像できるように胴体２２０に取り付けされている。例えば、ステレオカメラ２５０により撮像されたデータを基に、作業者は例えば対象物の位置を確認しながら作業を行うことができる。また、信号灯２６０は、ロボット１の状態（例えば、駆動状態、正常停止状態、異常停止状態等）等の信号を示す機器であり、これにより、作業者は、ロボット１の状態を容易に確認することができる。
【００４１】
（ロボットアーム）
図１に示すように、２つのロボットアーム２３０（２３０ａ、２３０ｂ）は、同様の構成であり、それぞれ、第１アーム２３１（アーム、第１肩部）と、第２アーム２３２（アーム、第２肩部）と、第３アーム２３３（アーム、上腕部）と、第４アーム２３４（アーム、第１前腕部）と、第５アーム２３５（アーム、第２前腕部）と、第６アーム２３６（手首部）と、第７アーム２３７（アーム、連結部）とを有する。また、図２に示すように、２つのロボットアーム２３０（２３０ａ、２３０ｂ）は、それぞれ、一方のアームを他方のアーム（または胴体２２０）に対して回動可能に支持する機構を有する７つの関節１７１〜１７７を有する。
【００４２】
図２に示すように、第１アーム２３１は、関節１７１を介して胴体２２０に連結されており、胴体２２０に対して第１回動軸Ｏ１に直交する第２回動軸Ｏ２まわりに回動可能となっている。また、第２アーム２３２は、関節１７２を介して第１アーム２３１に連結されており、第１アーム２３１に対して第２回動軸Ｏ２に直交する第３回動軸Ｏ３まわりに回動可能となっている。また、第３アーム２３３は、関節１７３を介して第２アーム２３２に連結されており、第２アーム２３２に対して第３回動軸Ｏ３に直交する第４回動軸Ｏ４まわりに回動可能になっている。また、第４アーム２３４は、関節１７４を介して第３アーム２３３に連結されており、第３アーム２３３に対して第４回動軸Ｏ４と直交する第５回動軸Ｏ５まわりに回動可能となっている。また、第５アーム２３５は関節１７５を介して第４アーム２３４に連結されており、第４アーム２３４に対して第５回動軸Ｏ５と直交する第６回動軸Ｏ６まわりに回動可能となっている。また、第６アーム２３６は、関節１７６を介して第５アーム２３５に連結されており、第５アーム２３５に対して第６回動軸Ｏ６と直交する第７回動軸Ｏ７まわりに回動可能となっている。また、第７アーム２３７は、関節１７７を介して第６アーム２３６に連結されており、第６アーム２３６に対して第７回動軸Ｏ７と直交する第８回動軸Ｏ８まわりに回動可能となっている。
【００４３】
また、関節１７１〜１７７には、それぞれ、各アーム２３１〜２３７を回動させる駆動力を発生させるモーター（図示せず）とモーターの駆動力を減速する減速機（図示せず）とを有する駆動部１３２と、駆動部１３２が有するモーターの回転軸の回転角度等を検出する位置センサー１３６（角度センサー）とが設けられている（図４参照）。すなわち、ロボット１は、７つの関節１７１〜１７７と同じ数（本実施形態では７つ）の駆動部１３２および位置センサー１３６を有している。
【００４４】
駆動部１３２が有するモーターとしては、例えば、ＡＣサーボモーター、ＤＣサーボモーター等のサーボモーターを用いることができる。駆動部１３２が有する減速機としては、例えば、遊星ギア型の減速機、波動歯車装置等を用いることができる。位置センサー１３６（角度センサー）としては、例えば、エンコーダー、ロータリーエンコーダー等を用いることができる。また、各駆動部１３２は、電気的に接続されたモータードライバー（図示せず）を介して制御装置５により制御されている。
【００４５】
このような各ロボットアーム２３０によれば、上述のような比較的簡単な構成によって、人間の腕部と同様に、関節（肩、肘、手首）の曲げ伸ばし、上腕および前腕の捻りを実現することができる。
【００４６】
（力検出部）
図１に示すように、２つのロボットアーム２３０の先端部（下端部）には、それぞれ、力検出部３０（３０ａ、３０ｂ）が着脱可能に取り付けられている。
【００４７】
２つの力検出部３０は、同様の構成であり、それぞれ、エンドエフェクター４０に加わる力（モーメントを含む）を検出する力検出器（力覚センサー）である。本実施形態では、力検出部３０として、互いに直交する３つの軸（ｘ軸、ｙ軸、ｚ軸）方向の並進力成分Ｆｘ、Ｆｙ、Ｆｚおよび３つの軸周りの回転力成分（モーメント）Ｍｘ、Ｍｙ、Ｍｚの６成分を検出することができる６軸力覚センサーを用いている。また、力検出部３０は、検出した検出結果（力出力値）を制御装置５へ出力する。なお、力検出部３０は、６軸力覚センサーに限定されず、例えば、３軸力覚センサー等であってもよい。
【００４８】
（エンドエフェクター）
図１に示すように、各力検出部３０の先端部（下端部）には、それぞれ、エンドエフェクター４０（４０ａ、４０ｂ）が着脱可能に取り付けられている。
【００４９】
２つのエンドエフェクター４０は、同様の構成であり、それぞれ、各種対象物に対して作業を行う器具であり、対象物を把持する機能を有する。本実施形態では、エンドエフェクター４０として、対象物を把持する複数の指４２を有するハンドを用いている。具体的には、図３に示すように、エンドエフェクター４０は、力検出部３０に取り付けられる部分である取付部４１と、対象物を把持する４つの指４２と、取付部４１と指４２とを繋ぐ接続部４３とを有する。接続部４３は、４つの指４２を互いに接近させたり、離間させる駆動機構を備えている。これにより、エンドエフェクター４０は、対象物の把持や把持の解除を行うことができる。
【００５０】
なお、エンドエフェクター４０としては、対象物を保持する機能を有すれば、図示の構成に限定されず、例えば、対象物を吸着する吸着機構等を有する構成であってもよい。ここで、対象物の「保持」とは、把持や吸着等を含む意味である。
【００５１】
（表示入力装置）
図１に示すように、上述したベース２１０の背面側に取り付けられたハンドル２１１には、例えばタッチパネル等で構成された表示入力装置２７０が取り付けられている。この表示入力装置２７０は、例えば操作用のウィンドウ等の各種画面を表示させる液晶パネル等で構成される表示装置としての機能と、作業者が制御装置５に指示を与えるために用いられるタッチパッド等で構成される入力装置としての機能とを有する。また、表示入力装置２７０は、上述したステレオカメラ２５０により撮像されたデータが表示される。このような表示入力装置２７０によって、作業者は、ロボット１の状態を確認することができるとともに、ロボット１が所望の作業を行うように制御装置５に対して指令を与えることができる。
【００５２】
なお、ロボット１は、表示入力装置２７０の代わりに、例えば、液晶パネル等を備える表示装置とマウスやキーボード等の入力装置とを有していてもよい。また、本実施形態では、ロボット１が表示入力装置２７０を有する構成であるが、ロボット１と表示入力装置２７０とは別体であってもよい。
【００５３】
以上、ロボット１の構成について簡単に説明した。次に、制御装置５について説明する。
【００５４】
〈制御装置〉
本実施形態では、制御装置５は、例えば、ＣＰＵ（Central Processing Unit）やＲＯＭ（Read Only Memory）およびＲＡＭ（Random Access Memory）等が内蔵されたパーソナルコンピューター（ＰＣ）等で構成することができる。この制御装置５は、本実施形態では、図１に示すように、ロボット１のベース２１０に内蔵されているが、制御装置５は、ロボット１の外部に設けられていてもよい。また、制御装置５は、ロボット１に対してケーブルで接続され、有線方式で通信を行うようにしてもよく、また、ケーブルを省略し、無線方式で通信を行うようにしてもよい。
【００５５】
図４に示すように、制御装置５は、表示制御部５１と、入力制御部５２と、制御部５３（ロボット制御部）と、取得部５４と、記憶部５５と、を備える。
【００５６】
表示制御部５１は、例えばグラフィックコントローラーで構成されており、上述した表示入力装置２７０に電気的に接続されている。この表示制御部５１は、表示入力装置２７０に各種画面（例えば、操作用のウィンドウ等）を表示させる機能を有する。
【００５７】
入力制御部５２は、例えばタッチパネルコントローラーで構成されており、表示入力装置２７０に電気的に接続されている。この入力制御部５２は、表示入力装置２７０からの入力を受け付ける機能を有する。
【００５８】
制御部５３（ロボット制御部）は、ＣＰＵ等で構成され、または、ＣＰＵにより各種プログラムを実行することにより実現でき、ロボット１の各部を制御する。
【００５９】
例えば、制御部５３は、駆動部１３１に対して制御信号を出力して胴体２２０の駆動を制御し、また、各駆動部１３２に対して制御信号を出力して２つのロボットアーム２３０ａ、２３０ｂを協調制御する。
【００６０】
また、制御部５３は、駆動部１３１および各駆動部１３２に対して制御信号を出力してロボット１に対して位置制御（速度制御を含む）と力制御とを実行する。
【００６１】
具体的には、制御部５３は、目標軌道に沿ってエンドエフェクター４０の先端が移動するようにロボットアーム２３０を駆動させる位置制御を行う。より具体的には、制御部５３は、エンドエフェクター４０の位置および姿勢が目標軌道上の複数の目標点における位置および姿勢（目標位置および目標姿勢）となるように、各駆動部１３１、１３２の駆動を制御する。また、本実施形態では、各位置センサー１３５、１３６から出力された位置検出情報（例えば、各駆動部１３１、１３２の回転軸の回転角度や角速度）に基づいた制御を行う。また、本実施形態では、位置制御として、例えば、ＣＰ制御またはＰＴＰ制御を行う。なお、制御部５３は、目標軌道を設定（生成）し、エンドエフェクター４０の先端の位置および姿勢や、エンドエフェクター４０の目標軌道に沿った方向の移動における速度（角速度を含む）等を設定（生成）する機能を有する。
【００６２】
また、制御部５３は、エンドエフェクター４０が目標力（所望の力）で対象物を押圧（接触）するようにロボット１を制御する力制御を行う。具体的には、制御部５３は、エンドエフェクター４０に作用する力（モーメントを含む）が目標力（目標のモーメントを含む）となるように、各駆動部１３１、１３２の駆動を制御する。また、制御部５３は、力検出部３０から出力された検出結果に基づいて各駆動部１３１、１３２の駆動を制御する。本実施形態では、制御部５３は、力制御として、エンドエフェクター４０の先端に作用する力に応じたインピーダンス（質量、粘性係数、弾性係数）を設定し、そのインピーダンスを擬似的に実現するように各駆動部１３１、１３２を制御するインピーダンス制御を行う。
【００６３】
また、制御部５３は、上述の位置制御に関わる成分（制御量）と力制御に関わる成分（制御量）とを組み合わせて（合成して）、ロボットアーム２３０を駆動させる制御信号を生成して出力する機能を有する。したがって、制御部５３は、力制御したり、位置制御したり、力制御および位置制御を組み合わせたハイブリット制御を行ったりして、ロボットアーム２３０を動作させる。
【００６４】
また、制御部５３は、エンドエフェクター４０の駆動、力検出部３０の作動および位置センサー１３５、１３６の作動等を制御する。
【００６５】
また、制御部５３は、例えば、同一の作業を複数行う際に、作業回数をカウントする処理等の各種処理を行う機能も有する。
【００６６】
図４に示す取得部５４は、力検出部３０および各位置センサー１３５、１３６から出力された検出結果等を取得する。
【００６７】
また、図４に示す記憶部５５は、制御部５３が各種処理を行うためのプログラムやデータ等を記憶する機能を有する。また、記憶部５５には、例えば、目標軌道や、力検出部３０および各位置センサー１３５、１３６から出力された検出結果等を記憶することができる。
【００６８】
以上、ロボットシステム１００の構成について簡単に説明した。次に、ロボットシステム１００による作業の一例を説明しつつ、制御装置５の制御に基づくロボット１の動作について説明する。
【００６９】
図５は、図１に示すロボットが作業を行う作業台の一例を示す図である。図６は、図５に示す組立台上にケースが載置された状態を示す図である。図７は、図５に示す組立台上にあるケース上に蓋部材が載置された状態を示す図である。図８は、一方のロボットアームの先端の目標軌道Ａ１を示す図である。図９は、他方のロボットアームの先端の目標軌道Ａ２を示す図である。図１０は、作業フローの一例を示すフローチャートである。図１１は、図１０に示す第１制御を示すフローチャートである。図１２は、一方のエンドエフェクターの先端が教示点Ｐ１１に位置している状態を示す図である。図１３は、一方のエンドエフェクターの先端が補正教示点Ｐ１１０に位置している状態を示す図である。図１４は、一方のエンドエフェクターの先端が教示点Ｐ１２に位置している状態を示す図である。図１５は、一方のエンドエフェクターの先端が補正教示点Ｐ１２０に位置している状態を示す図である。図１６は、他方のエンドエフェクターの先端が教示点Ｐ２１に位置している状態を示す図である。図１７は、他方のエンドエフェクターの先端が補正教示点Ｐ２１０に位置している状態を示す図である。図１８は、他方のエンドエフェクターの先端が教示点Ｐ２２に位置している状態を示す図である。図１９は、他方のエンドエフェクターの先端が補正教示点Ｐ２２０に位置している状態を示す図である。図２０は、図８に示す目標軌道Ａ１を補正して得られた目標軌道Ａ１０を示す図である。図２１は、図９に示す目標軌道Ａ２を補正して得られた目標軌道Ａ２０を示す図である。図２２は、図１０に示す第２制御を示すフローチャートである。また、図２５は、エンドエフェクターでケースを把持している状態を模式的に示す斜視図である。また、各図では、説明の便宜上、必要に応じて各部の寸法等を適宜誇張して図示しており、各部間の寸法比等は実際の寸法比等とは必ずしも一致しない。
【００７０】
以下では、ロボット１の図５に示すような作業台９０上における組立作業を例に説明する。また、以下では、図６に示すような凹部８１１を有するケース８１上に、図７に示すような板状の蓋部材８２を載置することにより、ケース８１（作業対象物）と蓋部材８２（作業対象物）とを組み立てる組立作業を例に説明する。
【００７１】
図５に示す作業台９０上には、組立作業を行う組立台９１と、ケース８１が載置されている載置台９３と、蓋部材８２が載置されている載置台９４とが設けられている。ロボット１は、一方のエンドエフェクター４０ａにより、載置台９３上のケース８１を把持し、組立台９１上にケース８１を搬送して載置する（図５および図６参照）。また、ロボット１は、他方のエンドエフェクター４０ｂにより、載置台９４上の蓋部材８２を把持し、ケース８１上に蓋部材８２を搬送して載置する（図５および図７参照）。このようにして、ロボット１は組立作業を行う。なお、組立台９１には、組立台９１上でのケース８１および蓋部材８２の位置決めの役割をする突き当て板９２が設けられており、この突き当て板９２にケース８１および蓋部材８２を突き当てることで、ケース８１および蓋部材８２の組立台９１上での位置決めがなされる。
【００７２】
また、組立作業におけるロボット１の駆動は、例えば、ダイレクトティーチにより教示されている。この教示により得られた教示データに基づいて、制御装置５はロボット１を駆動させる。教示データは、エンドエフェクター４０ａの先端の目標軌道Ａ１（図８参照）、エンドエフェクター４０ｂの先端の目標軌道Ａ２（図９参照）、および、ロボットアーム２３０ａ、２３０ｂの各部の駆動に関する動作命令等を含む。
【００７３】
図８に示す目標軌道Ａ１は、エンドエフェクター４０ａの先端（ツールセンターポイントＴＣＰ）が移動する経路である。図９に示す目標軌道Ａ２は、エンドエフェクター４０ｂの先端（ツールセンターポイントＴＣＰ）が移動する経路である。なお、本実施形態では、ツールセンターポイントＴＣＰは、４つの指４２の各先端同士の間の箇所である（図４参照）。
【００７４】
また、図８に示す目標軌道Ａ１上の教示点Ｐ１１は、載置台９３上のケース８１近傍（直上）の地点である。目標軌道Ａ１上の教示点Ｐ１２は、組立台９１上のケース８１近傍（直上）の地点である。また、図９に示す目標軌道Ａ２上の教示点Ｐ２１は、載置台９４上の蓋部材８２近傍（直上）の地点である。目標軌道Ａ２上の教示点Ｐ２２は、組立台９１上に載置されたケース８１上の蓋部材８２近傍（直上）の地点である。
【００７５】
なお、目標軌道Ａ１、Ａ２は、それぞれ、ダイレクトティーチによる教示により生成した経路に限定されず、例えばＣＡＤデータ等によって生成した経路等であってもよい。
【００７６】
以下、図１０に示す作業フローに沿って、上述の組立作業について詳細に説明する。本実施形態では、上述の組立作業を複数回行う。すなわち、同じ作業対象物（ケース８１および蓋部材８２）に対し、同一の組立作業を複数回行う。
【００７７】
＜第１制御（ステップＳ１）＞
作業者による作業開始の指示がなされると、図１０に示すように、制御装置５は、まず、第１制御（ステップＳ１）を開始して、第１回目の組立作業を行う。この第１制御（ステップＳ１）を、図１１に示すフローチャートと、図８、図９、図１２〜図２１に示す図を参照しつつ説明する。
【００７８】
まず、制御部５３は、位置制御によりロボットアーム２３０ａを駆動させて、図１２に示すようにエンドエフェクター４０ａの先端（ツールセンターポイントＴＣＰ）を教示点Ｐ１１に位置させる（図１１：ステップＳ１１）。
【００７９】
次に、制御部５３は、力制御を開始して、力検出部３０ａの検出結果に基づいてロボットアーム２３０ａを駆動させ、ケース８１とエンドエフェクター４０ａとの接触を検出したら、図１３に示すようにエンドエフェクター４０ａにケース８１を把持させる（図１１：ステップＳ１２）。より具体的には、図２５に示すように、エンドエフェクター４０ａの４つの指４２で、ケース８１の縁部（側面部）の一辺を把持する。また、この際のエンドエフェクター４０ａの先端の位置を、教示点Ｐ１１を補正した補正教示点Ｐ１１０として記憶する。
【００８０】
次に、制御部５３は、位置制御によりロボットアーム２３０ａを駆動させて、目標軌道Ａ１に沿ってエンドエフェクター４０ａの先端を移動させる（図８参照）。そして、制御部５３は、図１４に示すようにエンドエフェクター４０ａの先端を教示点Ｐ１２に位置させる（図１１：ステップＳ１３）。
【００８１】
次に、制御部５３は、力制御を開始して、力検出部３０ａの検出結果に基づいてロボットアーム２３０ａを駆動させ、ケース８１と、組立台９１の上面および突き当て板９２との接触を検出して、図１５に示すようにケース８１の載置を完了する（図１１：ステップＳ１４）。なお、ケース８１の載置が完了したら、エンドエフェクター４０ａをケース８１から離脱させる。また、ステップＳ１４では、ケース８１の載置が完了したときのエンドエフェクター４０ａの先端の位置を、教示点Ｐ１２を補正した補正教示点Ｐ１２０として記憶する。
【００８２】
次に、制御部５３は、位置制御によりロボットアーム２３０ｂを駆動させて、図１６に示すようにエンドエフェクター４０ｂの先端（ツールセンターポイントＴＣＰ）を教示点Ｐ２１に位置させる（図１１：ステップＳ１５）。
【００８３】
次に、制御部５３は、力制御を開始して、力検出部３０ｂの検出結果に基づいてロボットアーム２３０ｂを駆動させて、蓋部材８２とエンドエフェクター４０ｂとの接触を検出し、図１７に示すようにエンドエフェクター４０ｂに蓋部材８２を把持させる（図１１：ステップＳ１６）。また、この際のエンドエフェクター４０ｂの先端の位置を、教示点Ｐ２１を補正した補正教示点Ｐ２１０として記憶する。
【００８４】
次に、制御部５３は、位置制御によりロボットアーム２３０ｂを駆動させて、目標軌道Ａ２に沿ってエンドエフェクター４０ｂの先端を移動させる（図９参照）。そして、制御部５３は、図１８に示すようにエンドエフェクター４０ｂの先端を教示点Ｐ２２に位置させる（図１１：ステップＳ１７）。
【００８５】
次に、制御部５３は、力制御を開始して、力検出部３０ｂの検出結果に基づいてロボットアーム２３０ｂを駆動させ、蓋部材８２と、ケース８１の上面および突き当て板９２のとの接触を検出したら、図１９に示すように蓋部材８２のケース８１上への載置を完了する（図１１：ステップＳ１８）。また、ステップＳ１８では、蓋部材８２の載置が完了したときのエンドエフェクター４０ｂの先端の位置を、教示点Ｐ２２を補正した補正教示点Ｐ２２０として記憶する。
【００８６】
以上にて、図１０に示す第１制御（ステップＳ１）が終了し、ロボット１による第１回目の組立作業が終了する。上述したように、第１制御（ステップＳ１）では、力制御（特に、インピーダンス制御）を行って、ケース８１および蓋部材８２の把持と、ケース８１および蓋部材８２の載置とを行っている。そのため、ケース８１および蓋部材８２のそれぞれに無理な力が加わることを抑制または防止することができ、また、位置決め精度を高くすることができる。なお、本発明では、ステップＳ１１〜Ｓ１４とステップＳ１５〜Ｓ１８とは、実行される順番が必ずしもこの順に限らず、ステップＳ１１〜Ｓ１４とステップＳ１５〜Ｓ１８とが、同時にまたは一部が時間的に重複して行われてもよい。
【００８７】
＜カウントアップ（ステップＳ２）＞
次に、図１０に示すように、制御部５３は、ロボット１による組立作業の回数をカウントアップする（ステップＳ２）。制御部５３は、初期値を「０（零）」として、例えば、このステップＳ２にて組立作業の回数を「１」とカウントする。
【００８８】
＜データ更新（ステップＳ３）＞
次に、図１０に示すように、制御部５３は、教示点Ｐ１１、Ｐ１２、Ｐ２１、Ｐ２２を、第１制御（ステップＳ１）において記録した補正教示点Ｐ１１０、Ｐ１２０、Ｐ２１０、Ｐ２２０に更新（補正）し、予め設定されていた教示データを更新（補正）する（ステップＳ３）。これにより、第１回目の作業に基づいて生成された新たな教示データを得ることができる。この新たな教示データは、図８に示す目標軌道Ａ１を補正した図２０に示すような目標軌道Ａ１０（補正目標軌道）、図９に示す目標軌道Ａ２を補正した図２１に示すような目標軌道Ａ２０（補正目標軌道）、および、目標軌道Ａ１０、Ａ２０に沿ってエンドエフェクター４０ａ、４０ｂの先端が移動するためのロボットアーム２３０ａ、２３０ｂの各部の駆動に関する動作命令等を含む。
【００８９】
＜第２制御（ステップＳ４）＞
次に、図１０に示すように、制御部５３は、第２制御（ステップＳ４）を開始して、第２回目の組立作業を行う。この第２制御（ステップＳ４）を、図２２に示すフローチャートを参照しつつ説明する。
【００９０】
まず、制御部５３は、位置制御によりロボットアーム２３０ａを駆動させて、エンドエフェクター４０ａの先端を補正教示点Ｐ１１０に位置させ（図２２：ステップＳ４１）、エンドエフェクター４０ａにケース８１を把持させる（図２２：ステップＳ４２）。なお、このケース８１は、第１回目の組立作業の際のケース８１と同形状、同重量のものである。
【００９１】
次に、制御部５３は、位置制御によりロボットアーム２３０ａを駆動させて、目標軌道Ａ１０に沿ってエンドエフェクター４０ａの先端を移動させる（図２０参照）。そして、制御部５３は、エンドエフェクター４０ａの先端を補正教示点Ｐ１２０に位置させ（図２２：ステップＳ４３）、ケース８１の載置を完了する（図２２：ステップＳ４４）。なお、ケース８１の載置が完了したら、エンドエフェクター４０ａをケース８１から離脱させる。
【００９２】
次に、制御部５３は、位置制御によりロボットアーム２３０ｂを駆動させて、エンドエフェクター４０ｂの先端を補正教示点Ｐ２１０に位置させ（図２２：ステップＳ４５）、エンドエフェクター４０ｂに蓋部材８２を把持させる（図２２：ステップＳ４６）。なお、この蓋部材８２は、第１回目の組立作業の際の蓋部材８２と同形状、同重量のものである。
【００９３】
次に、制御部５３は、位置制御によりロボットアーム２３０ｂを駆動させて、目標軌道Ａ２０に沿ってエンドエフェクター４０ｂの先端を移動させる（図２１参照）。そして、制御部５３は、エンドエフェクター４０ｂの先端を補正教示点Ｐ２２０に位置させ（図２２：ステップＳ４７）、蓋部材８２のケース８１上への載置を完了する（図２２：ステップＳ４８）。
【００９４】
なお、本発明では、ステップＳ４１〜Ｓ４４とステップＳ４５〜Ｓ４８とは、実行される順番が必ずしもこの順に限らず、ステップＳ４１〜Ｓ４４とステップＳ４５〜Ｓ４８とが、同時にまたは一部が時間的に重複して行われてもよい。
【００９５】
以上にて、図１０に示す第２制御（ステップＳ４）が終了して、ロボット１による第２回目の組立作業が終了する。このように、第２回目の作業では、第１回目の作業で新たに得られた教示データを基に位置制御を行っているため、力制御を省いても、エンドエフェクター４０の先端を補正教示点Ｐ１１０、Ｐ１２０、Ｐ２１０、Ｐ２２０に適切に位置させることができる。また、力制御でロボットアーム２３０を駆動させると、力検出部３０の応答性や制御周期の不足により、ロボットアーム２３０の動作速度が遅くなり易い傾向があるが、本実施形態のように、第２回目の作業では、力制御を省くことができるため、第１回目の作業よりもロボットアーム２３０の動作速度を速くすることができる。
【００９６】
また、本実施形態では、制御部５３は、第２制御において位置制御を行っている間、力検出部３０の出力に基づいてロボット１の異常を検出している。そして、図１０に示す作業フローには図示していないが、制御部５３は、異常を検出したら、例えばロボット１の駆動を停止したり、必要に応じて第１回目の作業を再度やり直すよう制御する。これにより、より安定して組立作業を行うことができる。ここで、「異常」とは、例えば、力検出部３０からの検出結果（出力値）が任意に設定された所定値を超えた場合を示す。具体的には、例えば、作業において異常であることとは、必要以上にケース８１や蓋部材８２をエンドエフェクター４０により押圧している場合のこと等が挙げられる。例えば、位置制御は、例えば実空間内における目標点にエンドエフェクター４０の先端を位置させる制御であるため、用いるケース８１や蓋部材８２の寸法誤差等によって、ケース８１に対して蓋部材８２を必要以上に押圧してしまう場合がある。したがって、位置制御において、力検出部３０からの出力を検出しておくことで、力制御を行わずとも、ケース８１や蓋部材８２に対して無理な力が加わることを回避することができる。
【００９７】
＜カウントアップ（ステップＳ５）＞
次に、図１０に示すように、制御部５３は、ロボット１による組立作業の回数をカウントアップする（ステップＳ５）。制御部５３は、例えば、このステップＳ５にて組立作業の回数を「２」とカウントする。
【００９８】
＜Ａ×Ｂ回目か否かの判断（ステップＳ６）＞
次に、図１０に示すように、制御部５３は、組立作業の回数が、作業者が任意に設定した所定値Ａの倍数であるか否かを判断する（ステップＳ６）。すなわち、所定値Ａと整数Ｂ（１、２、３…）との乗算値（Ａ×Ｂ）であるか否かを判断する。例えば、所定値Ａを「１０」としたら、乗算値が「１０、２０、３０…」のいずれかであるか否かを判断する。乗算値（Ａ×Ｂ）でなければ、すなわちＡ×Ｂ回目でなければ（ステップＳ６：Ｎｏ）、Ａ×Ｂ回目になるまで第２制御（ステップＳ４）およびカウントアップ（ステップＳ５）を繰り返す。したがって、Ａ×Ｂ回目（例えば、１０、２０、３０…）を除く回数における作業では、力制御を省き、位置制御により組立作業を行う。そのため、ロボットアーム２３０の動作速度を速くすることができ、よって、複数回の組立作業におけるサイクルタイムを短くすることができる。
【００９９】
＜作業回数が所定回数Ｃを達成したか否かの判断（ステップＳ７）＞
次に、図１０に示すように、制御部５３は、作業回数がＡ×Ｂ回目であれば（ステップＳ６：Ｙｅｓ）、作業回数が、作業者が任意に設定した所定回数Ｃを達成したか否か、つまり終了予定回数に達したか否かを判断する（ステップＳ７）。例えば、所定回数Ｃ（終了予定回数）を「３０」としたら、所定回数Ｃが「３０」でなければ（ステップＳ７：Ｎｏ）、第１制御（ステップＳ１）に戻る。したがって、所定回数Ｃを達成するまでは、Ａ×Ｂ回目ごとに、力検出部３０の検出結果に基づいた力制御を行うこととなる。そのため、Ａ×Ｂ回目ごとに、精密な位置決めが実現できているかを確認したり、補正教示点Ｐ１１０、Ｐ１２０、Ｐ２１０、Ｐ２２０を必要に応じて補正し直して、さらに新たな教示データを生成し直すことができる。そのため、複数回作業を繰り返しても、位置決め精度が特に高い作業を実現することができる。
【０１００】
一方、所定回数Ｃが「３０」であるならば（ステップＳ７：Ｙｅｓ）、組立作業を終了する。
以上のようにして、複数回の組立作業が終了する。
【０１０１】
以上説明したように、本発明の制御装置の一例である制御装置５は、力検出部３０（３０ａ、３０ｂ）を有するロボット１の駆動を制御する制御装置５であって、ロボット１に対して作業を複数回行わせるに際し、第１回目の作業では、力検出部３０からの出力（検出結果）に基づいてロボット１を力制御して、「第１位置」としての補正教示点Ｐ１１０、Ｐ１２０、Ｐ２１０、Ｐ２２０を教示し、第２回目の作業では、第１回目の作業で得た補正教示点Ｐ１１０、Ｐ１２０、Ｐ２１０、Ｐ２２０に関するデータ（第１位置データ）に基づいて、ロボット１を位置制御して、ロボット１の「所定部位」としてのエンドエフェクター４０（４０ａ、４０ｂ）の先端を補正教示点Ｐ１１０、Ｐ１２０、Ｐ２１０、Ｐ２２０へ移動させる制御部５３を備える。このような制御装置５によれば、第１回目の作業では、力制御を行っているため、精密な位置決めを実現でき、第２回目の作業では、第１回目の作業で得た第１位置データを含む新たな教示データに基づいて位置制御することができる。そのため、第２回目の作業では、力制御を省いても精密な位置決めを実現することができ、また、力制御を省くことで第１回目の作業よりもロボットアーム２３０の動作速度（エンドエフェクター４０の先端の移動速度）を速くすることができる。したがって、例えば安定して質の高い製品（ケース８１と蓋部材８２とが組み立てられることで得られた製品）を数多く生産することができるため、当該製品の生産性を高めることができる。
【０１０２】
なお、本実施形態では、補正教示点Ｐ１１０、Ｐ１２０、Ｐ２１０、Ｐ２２０を、それぞれ「第１位置」として捉え、第１位置が複数あるものとしたが、補正教示点Ｐ１１０、Ｐ１２０、Ｐ２１０、Ｐ２２０のいずれか任意の補正教示点のみを「第１位置」として捉えてもよい。すなわち、「第１位置」とは、力制御を行うことで得られた教示点（または本実施形態のように教示点を補正した補正教示点）であればよく、その数は、複数あってもよいし、１つであってもよい。また、本実施形態では、エンドエフェクター４０の先端を「所定部位」としたが、「所定部位」は、ロボット１の任意の箇所であればよく、エンドエフェクター４０の先端に限定されない。例えば、「所定部位」は、第７アーム２３７の先端等であってもよい。
【０１０３】
また、上述した第１位置データは、第１回目の作業において力制御して、予め設定された「第１教示点」としての教示点Ｐ１１、Ｐ１２、Ｐ２１、Ｐ２２に関するデータを補正することにより得る。ここで、上述したように、第１位置データは、力制御を行うことで得られた教示点（第１位置）に関するデータであればよいが、本実施形態のように、予め設定された教示点Ｐ１１、Ｐ１２、Ｐ２１、Ｐ２２に関するデータを補正することにより得られたデータ（補正教示点Ｐ１１０、Ｐ１２０、Ｐ２１０、Ｐ２２０）であることが好ましい。これにより、作業におけるより適切な位置に関する第１位置データおよびそれを含む新たな教示データを得ることができる。
【０１０４】
また、上述したように、制御部５３は、第２回目以降の作業（本実施形態では例えば第２回目から９回目の作業）では、第１位置データに基づいてロボット１を位置制御して、ロボット１の「所定部位」としてのエンドエフェクター４０の先端を「第１位置」としての補正教示点Ｐ１１０、Ｐ１２０、Ｐ２１０、Ｐ２２０へ移動させる。このように、第２回目の作業だけでなく、それ以降の作業においても、力制御を省くことでロボットアーム２３０の動作速度を速くすることができる。そのため、複数回の作業においてサイクルタイムを速くすることができ、よって、生産性をより高めることができる。
【０１０５】
なお、「第２回目以降の作業」とは、第２回目以降全ての作業として捉えることに限らず、本実施形態のように第２回目から９回目の作業、すなわち、第２回目以降から任意の回数までの作業として捉えることも含む意味である。
【０１０６】
さらに、上述したように、制御部５３は、特許請求の範囲に規定した「所定回目」としてのＡ×Ｂ回目（例えば、１０、２０、３０…）の作業では、力検出部３０からの出力に基づいてロボット１を力制御して、「所定部位」としてのエンドエフェクター４０を「第１位置」としての補正教示点Ｐ１１０、Ｐ１２０、Ｐ２１０、Ｐ２２０へ移動させる。このように、第１回目以外のＡ×Ｂ回目において、力制御して、エンドエフェクター４０を補正教示点Ｐ１１０、Ｐ１２０、Ｐ２１０、Ｐ２２０へ移動させる。すなわち、Ａ×Ｂ回目ごとに、力検出部３０の検出結果に基づいた力制御を伴う作業を行う。これにより、全ての回で力制御を行うことによる弊害（例えば、長時間化、手間の増大）がなく、Ａ×Ｂ回目ごとに、精密な位置決めが実現できているかを確認したり、補正教示点Ｐ１１０、Ｐ１２０、Ｐ２１０、Ｐ２２０に関する第１位置データの補正をすることができる。そのため、複数回作業を繰り返しても、位置決め精度が特に高い作業を実現することができ、より安定して質の高い製品を生産し続けることができる。
【０１０７】
なお、本実施形態では、特許請求の範囲に規定した「所定回目」について、「所定回目」をＡ×Ｂ回目（例えば、１０、２０、３０…）として捉えた場合を例に説明したが、「所定回目」は任意の回数であり、Ａ×Ｂ回目（例えば、１０、２０、３０…）に限定されない。
【０１０８】
また、本実施形態では、特許請求の範囲に規定した「第１回目」は、上述したように第１回目である。このように、複数回の作業のうちの作業開始である第１回目の作業で力制御によって精密な位置決めが実現されることで、第２回目以降の作業をロボットに対して適切かつ比較的速い速度で行わせることができる。
【０１０９】
なお、特許請求の範囲に規定した「第１回目」および「第２回目」について、本実施形態における第１回目および第２回目として捉えた場合を例に説明したが、特許請求の範囲に規定した「第１回目」および「第２回目」は、これに限定されない。例えば、特許請求の範囲に規定した「第１回目」および「第２回目」は、本実施形態における第２回目および第３回目として捉えてもよい。その場合には、第２回目の作業においては、力制御を伴う作業を行い、第３回目の作業においては力制御を省いた作業を行い、第１回目の作業では、第２回目の作業と同様に力制御を伴う作業を行ってもよい。すなわち、２回（第１回目および第２回目）の力制御を伴う作業を行った後に、力制御を省いた第３回目の作業を行ってもよい。これにより、２回の力制御に伴う作業に基づいた新たな教示データを基に３回目の作業を行うことができるため、第３回目の作業における位置決め精度をさらに高めることができる。
【０１１０】
また、上述したように、制御部５３は、位置制御を行っている間、力検出部３０の出力に基づいて、ロボット１の異常を検出する。特に、エンドエフェクター４０に把持されたケース８１の組立台９１への接触、および、エンドエフェクター４０に把持された蓋部材８２のケース８１への接触において、上述のロボット１の異常を検出することが好ましい。すなわち、エンドエフェクター４０またはエンドエフェクター４０が把持（保持）しているケース８１や蓋部材８２が、周辺部材（例えば組立台９１等）等に接触しているときに、力検出部３０の出力に基づいてロボット１の異常を検出することが好ましい。これにより、制御部５３は、異常を検出したら、例えばロボット１の駆動を停止したり、第１回目の作業を再度やり直すよう制御することができる。そのため、位置制御において、力制御を行わずとも、ケース８１や蓋部材８２に対して無理な力が加わることを回避することができ、より安定して質の高い製品をより数多く生産することができる。
【０１１１】
また、本発明のロボットの一例であるロボット１は、上述したように、力検出部３０を有し、作業を複数回行うロボット１であって、制御装置５によって制御されている。このようなロボット１によれば、制御装置５の制御の下、精密な位置決めを実現しつつ、作業におけるサイクルタイムを短くすることができ、生産性をより高めることができる。
【０１１２】
さらに、本実施形態では、ロボット１は、複数（本実施形態では２つ）のロボットアーム２３０を有し、力検出部３０は、複数のロボットアーム２３０全てに設けられている。これにより、複数のロボットアーム２３０の各駆動を高精度に制御することができる。また、一般的に、複数のロボットアーム２３０を有するロボット１は、ロボットアーム２３０同士の配置等を考慮して、比較的アーム幅が細く構成される。そのため、ロボットアーム２３０の剛性が不足して、精密な位置決めをすることが難しくなる傾向がある。しかし、本実施形態における制御装置５によれば、このようなロボット１であっても、位置決め精度を高くすることができ、よって、生産性を高めることができる。
【０１１３】
なお、本実施形態では、力検出部３０は、複数のロボットアーム２３０全てに設けられている場合を例に説明したが、ロボット１の作業内容等によっては、力検出部３０は、無くてもよい場合があり、よって、力検出部３０は、複数のロボットアーム２３０のうちの少なくとも１つに設けられていればよい。
【０１１４】
また、上述した説明では、第２回目以降の作業では、全ての処理（ステップＳ４１〜ステップＳ４８）において力制御を省いたが、任意の処理において、力制御および位置制御の双方を行うようにしてもよい。例えば、上述したステップＳ４３、Ｓ４４において、位置制御により、補正教示点Ｐ１２０への移動を行うとともに、力制御により、ケース８１の組立台９１への載置を行うことも可能である。つまり、例えば、制御部５３は、第２回目の作業において、補正教示点Ｐ１１０、Ｐ２１０、Ｐ２２０（第１位置）に関しては、力制御を省いて位置制御を実行し、補正教示点Ｐ１２０（第２位置）に関しては、力制御および位置制御を実行してもよい。
【０１１５】
したがって、例えば、制御部５３は、１つの作業（例えば前述した組立作業）において、補正教示点Ｐ１１０、Ｐ２１０、Ｐ２２０（第１位置）と、これらとは異なる補正教示点Ｐ１２０（第２位置）とをそれぞれ教示することが可能であり、第１回目の作業では、力検出部３０の出力に基づいてロボット１を力制御して、補正教示点Ｐ１１０、Ｐ２１０、Ｐ２２０を教示し、かつ、補正教示点Ｐ１２０を教示する。また、制御部５３は、第２回目の作業では、第１回目の作業で得た補正教示点Ｐ１１０、Ｐ２１０、Ｐ２２０に関する第１位置データに基づいて、補正教示点Ｐ１１０、Ｐ２１０、Ｐ２２０に関しては位置制御を行ってロボット１を駆動させることで、「所定部位」としてのエンドエフェクター４０の先端を補正教示点Ｐ１１０、Ｐ２１０、Ｐ２２０に位置させる。また、制御部５３は、第２回目の作業では、第１回目の作業で得た補正教示点Ｐ１２０に関する第２位置データに基づいてロボット１を制御する位置制御と、力検出部３０からの出力に基づいてロボット１を制御する力制御とを行ってロボット１を駆動させることで、「所定部位」としてのエンドエフェクター４０の先端を補正教示点Ｐ１２０に位置させている。前述したように、第２回目の作業において、例えばケース８１の組立台９１への載置に関わる処理（ステップＳ４３、Ｓ４４）では、位置制御とともに力制御を行う処理を行っているが、ケース８１の組立台９１への載置は、その後の処理であるケース８１上への蓋部材８２への載置の位置精度にも大きくかかわる処理である。そのため、このような処理において位置制御および力制御を行うことで、第２回目の作業においても、ケース８１と蓋部材８２との組み立てをより正確に行うことができる。このように、第２回目の作業では、処理内容等に応じて、第１位置データに基づいた位置制御のみを行う処理（例えば、ステップＳ４３、４４を除くステップ）と、第２位置データに基づいた位置制御および力制御の双方を行う処理（例えば、ステップＳ４３、４４）とを併用することで、より高精度でかつ迅速な組立作業をロボット１に行わせることができる。
【０１１６】
第２回目の作業において、処理内容等に応じて位置制御および力制御の双方を行うことは、例えば以下のような嵌合作業において特に有効である。
【０１１７】
図２３は、エンドエフェクターの先端が補正教示点Ｐ３１０に位置している状態を示す図である。図２４は、エンドエフェクターの先端が補正教示点Ｐ３２０に位置している状態を示す図である。
【０１１８】
図２３および図２４に示すように、立方体状の嵌合部材８４を、嵌合部材８４の外形に対応した形状の凹部８３１を有する被嵌合部材８３に嵌合する嵌合作業を例に説明する。
【０１１９】
例えば、図２３に示すように、嵌合部材８４を凹部８３１に挿入する前のエンドエフェクター４０の先端の補正教示点Ｐ３１０を「第１位置」とする。これに対し、図２４に示すように、嵌合部材８４を凹部８３１に挿入し、凹部８３１の底面に接触する際の、つまり接触する直前のエンドエフェクター４０の先端の補正教示点Ｐ３２０を「第２位置」とする。そして、例えば、第２回目の作業では、嵌合部材８４を凹部８３１に挿入して凹部８３１の底面に至る前まで、つまり底面に接触する直前までは位置制御を行う。また、凹部８３１の底面に接触したときに力制御を行う。より具体的には、凹部８３１に接触する直前で位置制御および力制御を行い、凹部８３１の底面に接触してから力制御を行う。
【０１２０】
つまり、制御部５３は、１つの作業（例えば前述した嵌合作業）において、補正教示点Ｐ３１０（第１位置）と、補正教示点Ｐ３１０とは異なる補正教示点Ｐ３２０（第２位置）とをそれぞれ教示することが可能であり、第１回目の作業では、力検出部３０の出力に基づいてロボット１を力制御して、補正教示点Ｐ３１０を教示し、かつ、補正教示点Ｐ３２０を教示する。また、制御部５３は、第２回目の作業では、第１回目の作業で得た補正教示点Ｐ３１０に関する第１位置データに基づいて、補正教示点Ｐ３１０に関しては位置制御を行ってロボット１を駆動させることで、「所定部位」としてのエンドエフェクター４０の先端を補正教示点Ｐ３１０に位置させる。また、制御部５３は、第２回目の作業では、第１回目の作業で得た補正教示点Ｐ３２０に関する第２位置データに基づいてロボット１を制御する位置制御と、力検出部３０からの出力に基づいてロボット１を制御する力制御とを行ってロボット１を駆動させることで、「所定部位」としてのエンドエフェクター４０の先端を補正教示点Ｐ３２０に位置させる。特に、本実施形態では、第１位置データに基づいて位置制御を行い、第２位置データに基づいた位置制御および力制御を行った後、力制御のみを行う。
【０１２１】
これにより、第２回目の作業において、嵌合作業を迅速に行うことができるとともに、嵌合終了近傍では嵌合作業が適切に行われているか否かを力検出部３０からの出力に基づいて確認することができる。このように、第２回目（およびそれ以降の作業）においても、第１位置データに基づいた位置制御を行う処理と、第２位置データに基づいた位置制御および力制御の双方を行う処理とを併用することで、より高精度で迅速な嵌合作業をロボット１に行わせることができる。
【０１２２】
以上説明したような本発明のロボットシステムの一例としてのロボットシステム１００は、制御装置５と、制御装置５によって制御され、力検出部３０を有するロボット１とを備える。このようなロボットシステム１００によれば、制御装置５の制御の下、ロボット１の作業において精密な位置決めを実現しつつ、ロボット１の作業におけるサイクルタイムを短くすることができる。そのため、製品の生産性を高めることができる。
【０１２３】
以上、本発明の制御装置、ロボットおよびロボットシステムを図示の実施形態に基づいて説明したが、本発明は、これに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物が付加されていてもよい。また、各実施形態を適宜組み合わせてもよい。
【０１２４】
また、ロボットアームの回動軸の数は、特に限定されず、任意である。また、ロボットアームの数は、特に限定されず、１つでも、３つ以上であってもよい。また、ロボットは、いわゆる水平多関節ロボットであってもよい。
【０１２５】
また、上述した実施形態では、力検出部は、ロボットアームの先端部に設けられている例を説明したが、力検出部の設置箇所は、ロボットの任意の箇所にかかる力やモーメントを検出することができれば如何なる箇所であってもよい。例えば、力検出部は、第６アームの基端部（第５アームと第６アームとの間）に設けられていてもよい。
【符号の説明】
【０１２６】
１…ロボット、５…制御装置、３０…力検出部、３０ａ…力検出部、３０ｂ…力検出部、４０…エンドエフェクター、４０ａ…エンドエフェクター、４０ｂ…エンドエフェクター、４１…取付部、４２…指、４３…接続部、５１…表示制御部、５２…入力制御部、５３…制御部、５４…取得部、５５…記憶部、８１…ケース、８２…蓋部材、８３…被嵌合部材、８４…嵌合部材、９０…作業台、９１…組立台、９２…突き当て板、９３…載置台、９４…載置台、１００…ロボットシステム、１３１…駆動部、１３２…駆動部、１３５…位置センサー、１３６…位置センサー、１７１…関節、１７２…関節、１７３…関節、１７４…関節、１７５…関節、１７６…関節、１７７…関節、２１０…ベース、２１１…ハンドル、２１３…バンパー、２１４…非常停止ボタン、２２０…胴体、２３０…ロボットアーム、２３０ａ…ロボットアーム、２３０ｂ…ロボットアーム、２３１…第１アーム、２３２…第２アーム、２３３…第３アーム、２３４…第４アーム、２３５…第５アーム、２３６…第６アーム、２３７…第７アーム、２４０…昇降部、２５０…ステレオカメラ、２６０…信号灯、２７０…表示入力装置、３１０…関節、８１１…凹部、８３１…凹部、２１０１…基部、２１０２…柱部、２４０１…筐体部、Ａ１…目標軌道、Ａ１０…目標軌道、Ａ２…目標軌道、Ａ２０…目標軌道、Ｏ１…第１回動軸、Ｏ２…第２回動軸、Ｏ３…第３回動軸、Ｏ４…第４回動軸、Ｏ５…第５回動軸、Ｏ６…第６回動軸、Ｏ７…第７回動軸、Ｏ８…第８回動軸、Ｐ１１…教示点、Ｐ１１０…補正教示点、Ｐ１２…教示点、Ｐ１２０…補正教示点、Ｐ２１…教示点、Ｐ２１０…補正教示点、Ｐ２２…教示点、Ｐ２２０…補正教示点、Ｐ３１０…補正教示点、Ｐ３２０…補正教示点、Ｓ１…ステップ、Ｓ１１…ステップ、Ｓ１２…ステップ、Ｓ１３…ステップ、Ｓ１４…ステップ、Ｓ１５…ステップ、Ｓ１６…ステップ、Ｓ１７…ステップ、Ｓ１８…ステップ、Ｓ２…ステップ、Ｓ３…ステップ、Ｓ４…ステップ、Ｓ４１…ステップ、Ｓ４２…ステップ、Ｓ４３…ステップ、Ｓ４４…ステップ、Ｓ４５…ステップ、Ｓ４６…ステップ、Ｓ４７…ステップ、Ｓ４８…ステップ、Ｓ５…ステップ、Ｓ６…ステップ、Ｓ７…ステップ、ＴＣＰ…ツールセンターポイント
【図１】
2018069441.tif 000003
【図２】
2018069441.tif 000004
【図３】
2018069441.tif 000005
【図４】
2018069441.tif 000006
【図５】
2018069441.tif 000007
【図６】
2018069441.tif 000008
【図７】
2018069441.tif 000009
【図８】
2018069441.tif 000010
【図９】
2018069441.tif 000011
【図１０】
2018069441.tif 000012
【図１１】
2018069441.tif 000013
【図１２】
2018069441.tif 000014
【図１３】
2018069441.tif 000015
【図１４】
2018069441.tif 000016
【図１５】
2018069441.tif 000017
【図１６】
2018069441.tif 000018
【図１７】
2018069441.tif 000019
【図１８】
2018069441.tif 000020
【図１９】
2018069441.tif 000021
【図２０】
2018069441.tif 000022
【図２１】
2018069441.tif 000023
【図２２】
2018069441.tif 000024
【図２３】
2018069441.tif 000025
【図２４】
2018069441.tif 000026
【図２５】
2018069441.tif 000027