(57)【特許請求の範囲】
【請求項１】
互いに直列に接続された旋回部、第１腕部、第２腕部、手首部及び先端部と、
前記旋回部を第１軸線まわりに旋回させる第１アクチュエータと、
前記旋回部及び前記第１腕部の接続部分を通り、前記第１軸線に交差する第２軸線まわりに前記第１腕部を揺動させる第２アクチュエータと、
前記第１腕部及び前記第２腕部の接続部分を通り、前記第２軸線に平行な第３軸線まわりに前記第２腕部を揺動させる第３アクチュエータと、
前記第２腕部及び前記手首部の接続部分を通り、前記第２腕部の中心軸線に交差する第４軸線まわりに前記手首部を揺動させる第４アクチュエータと、
前記第２腕部の中心軸線に沿い、前記第３軸線及び前記第４軸線に交差する第５軸線まわりに前記手首部を旋回させる第５アクチュエータと、
前記手首部の中心軸線に沿い、前記第４軸線に交差する第６軸線まわりに前記先端部を旋回させる第６アクチュエータと、
前記第２軸線及び前記第３軸線に平行な距離調節用の軸線まわりに前記第１腕部を屈曲させることで、前記第２軸線及び前記第３軸線の間の距離を調節する距離調節アクチュエータと、
前記先端部に設けられ、自動車生産用のワークに対してスポット溶接を施すエンドエフェクタと、を有する第１ロボットと、
前記第１〜第６アクチュエータを有し、前記距離調節アクチュエータを有しない第２ロボットと、を含み、
前記第１ロボット及び前記第２ロボットが互いに隣り合うように配置されており、
互いに協働して同一のワークに対する加工を行う複数のロボットを備え、
前記第１ロボットは、前記ワークに正対した状態で、前記距離を最長にして前記第２軸線まわりに前記第１腕部を回転させる場合には、前記第１腕部の先端部又は第２腕部の基端部の可動範囲が前記ワークに干渉し、前記ワークに正対した状態で、前記距離を最短にして前記第２軸線まわりに前記第１腕部を回転させる場合には、前記第１腕部の先端部及び第２腕部の基端部の可動範囲が前記ワークに干渉しないように位置し、
前記第１ロボットの可動範囲は、隣り合う他のロボットの可動範囲と重複しており、
前記第１ロボットの方が前記第２ロボットに比べ前記ワーク寄りに位置するように構成されている、加工装置。
【請求項２】
前記第２腕部の先端部が前記第１腕部の基端部より前記ワーク側に位置する状態で、前記第１腕部の基端部より高い位置及び当該基端部より低い位置の間で前記エンドエフェクタを移動させるように前記第１ロボットを制御するコントローラを更に備える請求項１記載の加工装置。
【請求項３】
前記第１腕部の基端部より高い位置及び当該基端部より低い位置の間で前記エンドエフェクタを移動させるように前記第１ロボットを制御することは、前記第１腕部の基端部より高い位置及び当該基端部より低い位置の間で前記第１腕部の先端部を移動させるように前記第１ロボットを制御することを含む、請求項２記載の加工装置。
【請求項４】
前記第１腕部の基端部より高い位置及び当該基端部より低い位置の間で前記エンドエフェクタを移動させるように前記第１ロボットを制御することは、前記第２軸線及び前記第３軸線の間の距離を前記距離調節アクチュエータにより変化させるように前記第１ロボットを制御することを含む、請求項２又は３記載の加工装置。
【請求項５】
前記第１ロボットは、
前記ワークに正対した状態にて、前記ワークにおける最高位置の加工対象部位から前記第１腕部の基端までの距離と、最低位置の加工対象部位から前記第１腕部の基端までの距離とが、式（１）で求まる長さＬａ以下となるように位置する、請求項１〜４のいずれか一項記載の加工装置。
Ｌａ＝Ｌ１１＋Ｌ２１＋Ｌ３１・・・（１）
Ｌ１１：前記第２軸線から前記第３軸線までの最長距離
Ｌ２１：前記第３軸線から前記第４軸線までの距離
Ｌ３１：前記第４軸線から前記エンドエフェクタまでの距離
【請求項６】
前記第１ロボットは、
前記ワークに正対した状態にて、前記ワークにおける最高位置の加工対象部位に対して加工を施し得るように前記エンドエフェクタを配置した場合の前記第４軸線の位置から前記第１腕部の基端までの距離と、前記ワークにおける最低位置の加工対象部位に対して加工を施し得るように前記エンドエフェクタを配置した場合の前記第４軸線の位置から前記第１腕部の基端までの距離とが、式（２）で求まる長さＬｂ以下となるように位置する、請求項５記載の加工装置。
Ｌｂ＝Ｌ１１＋Ｌ２１・・・（２）
【請求項７】
前記第１ロボットは、
前記ワークに正対した状態にて、前記手首部を鉛直下方に向けて前記ワークにおける最高位置の加工対象部位に前記エンドエフェクタを配置した場合の前記第４軸線の位置から前記第１腕部の基端までの距離と、前記手首部を鉛直上方に向けて前記エンドエフェクタを前記ワークにおける最低位置の加工対象部位に配置した場合の前記第４軸線の位置から前記第１腕部の基端までの距離とが、式（２）で求まる長さＬｂ以下となるように位置する、請求項５又は６記載の加工装置。
Ｌｂ＝Ｌ１１＋Ｌ２１・・・（２）
【請求項８】
前記第１ロボットは、
前記第１腕部の基端の高さが式（３）で求まる高さＨａ以上となるように位置する、請求項７記載の加工装置。
Ｈａ＝ＨＨ−Ｌ２１・ｃｏｓθ−Ｌ１１・・・（３）
ＨＨ：前記手首部を鉛直下方に向けて前記エンドエフェクタを前記ワークにおける最高位置の加工対象部位に配置した場合の前記第４軸線の高さ
θ：前記第３軸線及び前記第４軸線に直交する直線と、前記手首部の中心軸線との角度の最小値
【請求項９】
前記第１ロボットは、
前記第１腕部の基端の高さが式（４）で求まる高さＨｂ以下となるように位置する、請求項８記載の加工装置。
Ｈｂ＝ＨＬ＋Ｌ２１・ｃｏｓθ＋Ｌ１１・・・（４）
ＨＬ：前記手首部を鉛直上方に向けて前記エンドエフェクタを前記ワークにおける最低位置の加工対象部位に配置した場合の前記第４軸線の高さ
【請求項１０】
前記第１ロボットは、
前記ワークに正対した状態にて、前記手首部を鉛直下方に向けて前記エンドエフェクタを前記ワークにおける最高位置の加工対象部位に配置した場合の前記第４軸線の位置から式（５）で求まる距離Ｌｃで手前側にシフトし、式（６）で求まる高さＨｃで下方にシフトした位置から前記第１腕部の基端までの距離と、前記手首部を鉛直上方に向けて前記エンドエフェクタを前記ワークにおける最低位置の加工対象部位に配置した場合の前記第４軸線の位置から式（５）で求まる距離Ｌｃで手前側にシフトし、式（６）で求まる高さＨｃで上方にシフトした位置から前記第１腕部の基端までの距離とが、前記第２軸線から前記第３軸線までの最長距離以下となるように位置する、請求項９記載の加工装置。
Ｌｃ＝Ｌ２１・ｓｉｎθ・・・（５）
Ｈｃ＝Ｌ２１・ｃｏｓθ・・・（６）
【請求項１１】
前記第１ロボットが前記ワークに対し加工を実行するときに、前記ワーク及び前記第１ロボットの相対位置を変更するように前記ワークを搬送する搬送装置を更に備える、請求項１〜１０のいずれか一項記載の加工装置。
【請求項１２】
前記第１ロボットは、当該第１ロボット側からの全加工対象部位に対し、前記ワークに干渉することなく加工を行うことが可能となるように位置する、請求項１１記載の加工装置。
【請求項１３】
前記搬送装置は前記ワークを搬送する、請求項１１又は１２記載の加工装置。
【請求項１４】
前記搬送装置による搬送方向に沿って並ぶように配置された複数の前記第１ロボットを備える、請求項１１〜１３のいずれか一項記載の加工装置。
【請求項１５】
前記搬送装置による搬送方向に直交する方向で前記ワークを挟むように配置された複数の前記第１ロボットを備える、請求項１１〜１４のいずれか一項記載の加工装置。
【請求項１６】
前記第１ロボットの方が前記第２ロボットに比べ前記ワークの近位側に加工を行うように構成されている、請求項１〜１５のいずれか一項記載の加工装置。
【請求項１７】
前記複数のロボットの全てが設置面に固定されている、請求項１〜１５のいずれか一項記載の加工装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、加工装置及びワークの生産方法に関する。
【背景技術】
【０００２】
特許文献１には、乗用車の車体パネル等をワークとして保持するワーク固定台と、ワークにスポット溶接を施すロボットとを備えるスポット溶接装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２７９４９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ロボットを用いた加工装置においては、設備構築容易化の観点又はロボットの台数削減の観点等から、個々のロボットでワークの広範囲に加工を施し得る装置が望まれている。そこで本開示は、個々のロボットでワークの広範囲に加工を施すことが可能な加工装置及び生産方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
本開示に係る加工装置は、互いに直列に接続された旋回部、第１腕部、第２腕部、手首部及び先端部と、旋回部を第１軸線まわりに旋回させる第１アクチュエータと、第１腕部を第２軸線まわりに揺動させる第２アクチュエータと、第２腕部を第３軸線まわりに揺動させる第３アクチュエータと、先端部の姿勢を調節する複数の姿勢調節アクチュエータと、第２軸線及び第３軸線の間の距離を調節する距離調節アクチュエータと、先端部に設けられ、ワークに対して加工を施すエンドエフェクタと、を有する第１ロボットを備え、第１ロボットは、ワークに正対した状態で、距離を最長にして第２軸線まわりに第１腕部を回転させた場合に、第１腕部の先端部又は第２腕部の基端部がワークに干渉するように位置する。【０００６】
本開示に係るワークの生産方法は、上記加工装置を用い、ワークの複数の加工対象部位にエンドエフェクタを移動させるように第１ロボットを制御することと、エンドエフェクタが加工対象部位に配置された状態で、エンドエフェクタにより当該加工対象部位に加工を施すように第１ロボットを制御することと、を含み、ワークの複数の加工対象部位にエンドエフェクタを移動させるように第１ロボットを制御することは、第２軸線及び第３軸線の間の距離を距離調節アクチュエータにより変化させながら、第１腕部の基端より高い位置及び当該基端より低い位置の間でエンドエフェクタを移動させることを含む。
【発明の効果】
【０００７】
本開示によれば、個々のロボットでワークの広範囲に加工を施すことが可能となる。
【図面の簡単な説明】
【０００８】
【図１】第１実施形態に係る加工装置の概略構成を示す模式図である。
【図２】第１ロボットの配置条件を示す模式図である。
【図３】第１ロボットがワークに正対した状態を示す平面図である。
【図４】第１ロボットの配置条件を示す模式図である。
【図５】第１ロボットの他の配置条件を示す模式図である。
【図６】第１ロボットの更に他の配置条件を示す模式図である。
【図７】第１ロボットの更に他の配置条件を示す模式図である。
【図８】第１ロボットの更に他の配置条件を示す模式図である。
【図９】コントローラのハードウェア構成図である。
【図１０】第１ロボットを用いた加工手順を示すフローチャートである。
【図１１】加工実行中の第１ロボットの姿勢を示す模式図である。
【図１２】動作パターンの生成手順を示すフローチャートである。
【図１３】距離調節アクチュエータの作用を例示する図である。
【図１４】第１ロボットの他の配置例を示す平面図である。
【図１５】第１ロボットの更に他の配置例を示す平面図である。
【図１６】第２実施形態に係る加工装置の概略構成を示す模式図である。
【図１７】ロボットの可動範囲を示す平面図である。
【図１８】ロボットの他の配置例を示す斜視図である。
【図１９】ロボットの更に他の配置例を示す斜視図である。
【図２０】ロボットの更に他の配置例を示す斜視図である。
【発明を実施するための形態】
【０００９】
以下、実施形態について図面を参照しつつ詳細に説明する。説明において、同一要素又は同一機能を有する要素には同一の符号を付し、重複する説明を省略する。
【００１０】
１．第１実施形態
〔加工装置〕
図１に示すように、加工装置１は、２台のロボット１０（第１ロボット）と、コントローラ１００と、プログラミングペンダント１２０とを備える。
【００１１】
（ロボット）
ロボット１０は、例えば自動車ボディ等のワークＷに対して加工を行うものである。一例として、ロボット１０は、基台１１と、旋回部１２と、第１腕部１３と、第２腕部１４と、手首部１５と、先端部１６と、エンドエフェクタ１７と、第１アクチュエータ２１と、第２アクチュエータ２２と、第３アクチュエータ２３と、第４アクチュエータ２４と、第５アクチュエータ２５と、第６アクチュエータ２６と、第７アクチュエータ２７とを備える。
【００１２】
基台１１は、床面（設置面）に固定されており、ロボット１０全体を支持する。すなわち複数のロボット１０の全てが設置面に固定されている。
【００１３】
旋回部１２、第１腕部１３、第２腕部１４、手首部１５及び先端部１６は互いに直列に接続されている。旋回部１２は、基台１１上に設けられており、鉛直な（図示ｚ軸に沿った）第１軸線Ａｘ１まわりに旋回可能である。以下の説明において、「先端」は先端部１６側の端を意味し、「先端部」は先端及びその近傍部分を意味する。「基端」は基台１１側の端を意味し、「基端部」は基端及びその近傍部分を意味する。
【００１４】
第１腕部１３は、旋回部１２及び第１腕部１３の接続部分を通る水平な第２軸線Ａｘ２まわりに揺動可能である。
【００１５】
第２腕部１４は、第１腕部１３及び第２腕部１４の接続部分を通る水平な第３軸線Ａｘ３まわりに揺動可能である。第３軸線Ａｘ３は、第２軸線Ａｘ２に対して平行である。第２腕部１４は、その中心軸線に沿う第５軸線Ａｘ５まわりに旋回可能である。
【００１６】
手首部１５は、第２腕部１４及び手首部１５の接続部分を通る第４軸線Ａｘ４まわりに揺動可能である。
【００１７】
先端部１６は、手首部１５の中心軸線に沿う第６軸線Ａｘ６まわりに旋回可能である。
【００１８】
エンドエフェクタ１７は、例えばスポット溶接装置であり、先端部１６に設けられている。一例として、エンドエフェクタ１７は、先端部１６に対して着脱自在に取り付けられており、他のエンドエフェクタ―と交換可能となっている。エンドエフェクタ１７は先端部１６に一体化されていてもよい。エンドエフェクタ１７は加工用のツールであればどのようなものであってもよく、スポット溶接装置に限られない。例えばエンドエフェクタ１７は、アーク溶接装置であってもよいし、溶接以外の作業を行うカッター、ネジ締め装置等であってもよい。
【００１９】
ここで、第１腕部１３は、互いに直列に接続されたリンク１３Ａ，１３Ｂにより構成されており、リンク１３Ａが旋回部１２に接続され、リンク１３Ｂが第２腕部１４に接続されている。第１腕部１３は、リンク１３Ａ，１３Ｂの接続部を通る第７軸線Ａｘ７まわりに屈曲可能である。換言すると、リンク１３Ｂは、リンク１３Ａ，１３Ｂの接続部を通る第７軸線Ａｘ７まわりに揺動可能である。第７軸線Ａｘ７は、第２軸線Ａｘ２及び第３軸線Ａｘ３に対して平行である。
【００２０】
第１アクチュエータ２１は、例えば基台１１に設けられており、旋回部１２を第１軸線Ａｘ１まわりに旋回させる。
【００２１】
第２アクチュエータ２２は、例えば旋回部１２に設けられており、第１腕部１３を第２軸線Ａｘ２まわりに揺動させる。
【００２２】
第３アクチュエータ２３は、例えば第１腕部１３の先端部に設けられており、第２腕部１４を第３軸線Ａｘ３まわりに揺動させる。
【００２３】
第５アクチュエータ２５は、例えば第２腕部１４の基端部に設けられており、第２腕部１４を第５軸線Ａｘ５まわりに旋回させる。第２腕部１４には手首部１５が接続されているので、第２腕部１４を旋回させることは手首部１５を旋回させることに相当する。即ち第５アクチュエータ２５は、手首部１５を第５軸線Ａｘ５まわりに旋回させる。
【００２４】
第４アクチュエータ２４は、例えば第２腕部１４の先端部に設けられており、手首部１５を第４軸線Ａｘ４まわりに揺動させる。
【００２５】
第６アクチュエータ２６は、例えば手首部１５に設けられており、先端部１６を第６軸線Ａｘ６まわりに旋回させる。
【００２６】
第４アクチュエータ２４、第５アクチュエータ２５及び第６アクチュエータ２６は、先端部１６の姿勢を調節する複数の姿勢調節アクチュエータの一例である。
【００２７】
第７アクチュエータ２７（距離調節アクチュエータ）は、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を調節する。図２に示すように、第７アクチュエータ２７は、最長距離Ｌ１１及び最短距離Ｌ１２の間で距離Ｌ１を調節する。
【００２８】
図１に示すように、第７アクチュエータ２７は、例えばリンク１３Ａの先端部に設けられており、第１腕部１３を第７軸線Ａｘ７まわりに屈曲させる。換言すると、第７アクチュエータ２７は、リンク１３Ｂを第７軸線Ａｘ７まわりに揺動させる。この構成において、最長距離Ｌ１１は、第１腕部１３が屈曲していない状態（リンク１３Ａに対しリンク１３Ｂが傾いていない状態）における距離Ｌ１である。最短距離Ｌ１２は、第７アクチュエータ２７の可動限界まで第１腕部１３を屈曲させた状態における距離Ｌ１である。
【００２９】
第７アクチュエータ２７は、必ずしも第１腕部１３を屈曲させるものでなくてよく、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を調節できればどのようなものであってもよい。例えば第７アクチュエータ２７は、第１腕部１３を伸縮させる直動アクチュエータであってもよい。
【００３０】
このように、ロボット１０は、先端部１６の位置及び姿勢を自在に変更可能な所謂６軸ロボットに対し、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を調節する冗長自由度を追加したものである。アクチュエータ２１〜２６は、例えば電動のサーボモータ、ギアヘッド及びブレーキ等により構成されている。サーボモータ、ギアヘッド及びブレーキ等は、必ずしも軸線Ａｘ１〜Ａｘ７上に配置されていなくてもよく、これらの軸線から離れた位置に配置されていてもよい。
【００３１】
（搬送装置）
加工装置１は、搬送装置３０を更に備えてもよい。搬送装置３０は、ワークＷ及びロボット１０の相対位置を変更するようにワークＷを搬送するものである。一例として、搬送装置３０はパレット３１（ワーク配置部）と搬送アクチュエータ３２とを有する。パレット３１はワークＷを支持する。搬送アクチュエータ３２は、例えば電動モータ又は油圧モータ等を動力源として、パレット３１を水平な一直線に沿って（図示ｘ軸に沿って）搬送する。
【００３２】
（ロボットの配置）
図２の（ａ）に示すように、ロボット１０は、ワークＷに正対した状態で、距離Ｌ１を最長距離Ｌ１１として第２軸線Ａｘ２まわりに第１腕部１３を回転させた場合に、第１腕部１３の先端部ＤＰ１又は第２腕部１４の基端部ＰＰ２がワークＷに干渉するように位置する（以下、この条件を「配置条件１」という。）。
【００３３】
図２の（ｂ）に示すように、ロボット１０は、ワークＷに正対した状態で、距離Ｌ１を最短距離Ｌ１２として第２軸線Ａｘ２まわりに第１腕部１３を回転させた場合に、第１腕部１３の先端部ＤＰ１及び第２腕部１４の基端部ＰＰ２がワークＷに干渉しないように位置してもよい（以下、この条件を「配置条件２」という。）。
【００３４】
なお、「正対」とは、図３に示すように、第１腕部１３の基端ＰＥ１（第１腕部１３の中心軸線と第２軸線Ａｘ２との交点）が平面視で第１軸線Ａｘ１とワークＷとの間に位置し、第１軸線Ａｘ１からワークＷへの垂線ＰＬ上に位置する状態を意味する。
【００３５】
図４を参照し、上記配置条件１，２を満たすための詳細な条件を例示する。図４に示すように、ロボット１０は、ワークＷに正対した状態にて、ワークＷから第１腕部１３の基端ＰＥ１までの距離が第３長Ｌ１３未満となるように位置してもよい（以下、この条件を「配置条件１ａ」という。）。第３長Ｌ１３は、距離Ｌ１を最長距離Ｌ１１とし、第２軸線Ａｘ２及び第３軸線Ａｘ３に直交する直線に対し第２腕部１４を垂直にした状態における、第１腕部１３の基端ＰＥ１から第２腕部１４の外周面の遠位部分までの距離である。「第２腕部１４の外周面の遠位部分」とは、第２腕部１４の外周面のうち第２軸線Ａｘ２の逆側の部分である。ロボット１０の配置が配置条件１ａを満たす場合、上記配置条件１も満たされる。
【００３６】
ロボット１０は、ワークＷに正対した状態にて、ワークＷから第１腕部１３の基端ＰＥ１までの距離が第４長Ｌ１４を超えるように位置してもよい（以下、この条件を「配置条件２ａ」という。）。第４長Ｌ１４は、距離Ｌ１を最短距離Ｌ１２とし、第２軸線Ａｘ２及び第３軸線Ａｘ３に直交する直線に対し第２腕部１４を垂直にした状態における、第１腕部１３の基端ＰＥ１から第２腕部１４の外周面の遠位部分までの距離である。ロボット１０の配置が配置条件２ａを満たす場合、上記配置条件２も満たされる。
【００３７】
図５に示すように、ロボット１０は、ワークＷに正対した状態にて、ワークＷにおける最高位置の加工対象部位Ｐ１から第１腕部１３の基端ＰＥ１までの距離と、最低位置の加工対象部位Ｐ１から第１腕部１３の基端ＰＥ１までの距離とが、式（１）で求まる長さＬａ以下となるように位置してもよい。
Ｌａ＝Ｌ１１＋Ｌ２１＋Ｌ３１・・・（１）
Ｌ１１：第２軸線Ａｘ２から第３軸線Ａｘ３までの最長距離
Ｌ２１：第３軸線Ａｘ３から第４軸線Ａｘ４までの距離
Ｌ３１：第４軸線Ａｘ４からエンドエフェクタ１７までの距離
なお、「エンドエフェクタ１７までの距離」とは、エンドエフェクタ１７のうち加工対象部位Ｐ１に作用する部位（以下、「作用部」という。）までの距離を意味する。
【００３８】
図６に示すように、ロボット１０は、ワークＷに正対した状態にて、ワークＷにおける最高位置の加工対象部位Ｐ１に対して加工を施し得るようにエンドエフェクタ１７を配置した場合の第４軸線Ａｘ４の位置から第１腕部１３の基端ＰＥ１までの距離と、ワークＷにおける最低位置の加工対象部位Ｐ１に対して加工を施し得るようにエンドエフェクタ１７を配置した場合の第４軸線Ａｘ４の位置から第１腕部１３の基端ＰＥ１までの距離とが、式（２）で求まる長さＬｂ以下となるように位置してもよい。
Ｌｂ＝Ｌ１１＋Ｌ２１・・・（２）
【００３９】
加工対象部位Ｐ１に対してエンドエフェクタ１７を配置するとは、エンドエフェクタ１７の上記作用部を加工対象部位Ｐ１に配置することを意味する。加工対象部位Ｐ１に加工を施し得るエンドエフェクタ１７の姿勢は、加工対象部位Ｐ１の状態に応じて定まる。例えばエンドエフェクタ１７がスポット溶接装置である場合には、溶接対象を電極で挟み得るようにエンドエフェクタ１７の姿勢が定まる。一例として、図６は、加工対象部位Ｐ１に加工を施し得るエンドエフェクタ１７の姿勢が鉛直である場合（手首部１５の中心軸線が鉛直軸線に沿う場合）を例示している。このような場合も想定し、ロボット１０は、ワークＷに正対した状態にて、手首部１５を鉛直下方に向けてワークＷにおける最高位置の加工対象部位Ｐ１にエンドエフェクタ１７を配置した場合の第４軸線Ａｘ４の位置から第１腕部１３の基端ＰＥ１までの距離と、手首部１５を鉛直上方に向けてエンドエフェクタ１７をワークＷにおける最低位置の加工対象部位Ｐ１に配置した場合の第４軸線Ａｘ４の位置から第１腕部１３の基端ＰＥ１までの距離とが、上記式（２）で求まる長さＬｂ以下となるように位置してもよい。
【００４０】
図７に示すように、ロボット１０は、第１腕部１３の基端ＰＥ１の高さが式（３）で求まる高さＨａ以上となるように位置してもよい。
Ｈａ＝ＨＨ−Ｌ２１・ｃｏｓθ−Ｌ１１・・・（３）
ＨＨ：前記手首部を鉛直下方に向けて前記エンドエフェクタを前記ワークにおける最高位置の加工対象部位に配置した場合の前記第４軸線の高さ
θ：第３軸線Ａｘ３及び第４軸線Ａｘ４に直交する直線と、手首部１５の中心軸線との角度の最小値
なお、「角度の最小値」とは、可動範囲における最小値を意味する。
【００４１】
ロボット１０は、第１腕部１３の基端ＰＥ１の高さが式（４）で求まる高さＨｂ以下となるように位置してもよい。
Ｈｂ＝ＨＬ＋Ｌ２１・ｃｏｓθ＋Ｌ１１・・・（４）
ＨＬ：前記手首部を鉛直上方に向けて前記エンドエフェクタを前記ワークにおける最低位置の加工対象部位に配置した場合の前記第４軸線の高さ
【００４２】
図８に示すように、ワークＷに正対した状態にて、手首部１５を鉛直下方に向けてエンドエフェクタ１７をワークＷにおける最高位置の加工対象部位Ｐ１に配置した場合の第４軸線Ａｘ４の位置から式（５）で求まる距離Ｌｃで手前側にシフトし、式（６）で求まる高さＨｃで下方にシフトした位置から第１腕部１３の基端ＰＥ１までの距離と、手首部１５を鉛直上方に向けてエンドエフェクタ１７をワークＷにおける最低位置の加工対象部位Ｐ１に配置した場合の第４軸線Ａｘ４の位置から式（５）で求まる距離Ｌｃで手前側にシフトし、式（６）で求まる高さＨｃで上方にシフトした位置から第１腕部１３の基端ＰＥ１までの距離とが、最長距離Ｌ１１以下となるように位置してもよい。
Ｌｃ＝Ｌ２１・ｓｉｎθ・・・（５）
Ｈｃ＝Ｌ２１・ｃｏｓθ・・・（６）
【００４３】
２台のロボット１０は、搬送装置３０による搬送方向（図示ｘ軸に沿う方向）に直交する方向（図示ｙ軸に沿う方向）でワークＷを挟むように配置されている。以下、図示ｙ軸の正の方向を「左方向」とし、図示ｙ軸の負の方向を「右方向」とする。左側のロボット１０は、ワークＷの左側の加工対象部位Ｐ１に対して加工を行い、右側のロボット１０は、ワークＷの右側の加工対象部位Ｐ２に対して加工を行う。
【００４４】
左側のロボット１０は、当該ロボット１０側（左側）からの全加工対象部位Ｐ１に対し、ワークＷに干渉することなく加工を行うことが可能となるように配置されている。一例として、左側のロボット１０は、最上部の加工対象部位Ｐ１及び最下部の加工対象部位Ｐ１の両方に対し、ワークＷに干渉することなくエンドエフェクタ１７を到達させられるように配置されている。
【００４５】
右側のロボット１０は、当該ロボット１０側（右側）からの全加工対象部位Ｐ２に対し、ワークＷに干渉することなく加工を行うことが可能となるように配置されている。
一例として、右側のロボット１０は、最上部の加工対象部位Ｐ２及び最下部の加工対象部位Ｐ２の両方に対し、ワークＷに干渉することなくエンドエフェクタ１７を到達させられるように配置されている。
【００４６】
（コントローラ及びプログラミングペンダント）
コントローラ１００は、２台のロボット１０及び搬送装置３０を制御する装置である。プログラミングペンダント１２０は、有線又は無線により、コントローラ１００に対するデータの入出力を行う装置である。
【００４７】
コントローラ１００は、機能的な構成として、目標取得部１１１と、第１算出部１１２と、判定部１１３と、第２算出部１１４と、出力部１１５と、蓄積部１１６とを有する。
【００４８】
蓄積部１１６は、ロボット１０の動作パターンを蓄積する。動作パターンは、例えばアクチュエータ２１〜２７の動作目標値の時系列データである。
【００４９】
目標取得部１１１は、先端部１６の位置・姿勢の目標値をプログラミングペンダント１２０から取得する。目標取得部１１１が取得する位置・姿勢の目標値は、ユーザによりプログラミングペンダント１２０に入力されたものであってもよいし、プログラミングペンダント１２０を介して記録媒体から読み込まれたものであってもよい。
【００５０】
第１算出部１１２は、距離調節用の第７アクチュエータ２７の動作目標値を初期値に固定した条件にて、位置・姿勢の目標値に対応するアクチュエータ２１〜２６の動作目標値を算出し、アクチュエータ２１〜２７の動作目標値を蓄積部１１６に記憶させる。
【００５１】
第７アクチュエータ２７の動作目標値は、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を調節する動作量の目標値であり、例えば第１腕部１３の屈曲角の目標値である。第１腕部１３の屈曲角の初期値は例えば０°である。
【００５２】
第１アクチュエータ２１の動作目標値は例えば旋回部１２の旋回角の目標値である。第２アクチュエータ２２の動作目標値は例えば第１腕部１３の揺動角の目標値である。第３アクチュエータ２３の動作目標値は例えば第２腕部１４の揺動角の目標値である。第５アクチュエータ２５の動作目標値は例えば手首部１５の旋回角の目標値である。第４アクチュエータ２４の動作目標値は例えば手首部１５の揺動角の目標値である。第６アクチュエータ２６の動作目標値は先端部１６の旋回角の目標値である。
【００５３】
アクチュエータ２１〜２６の動作目標値は、例えば逆運動学演算により算出される。第１算出部１１２は、アクチュエータ２１〜２７の動作目標値の算出結果を蓄積部１１６に記憶させる。
【００５４】
判定部１１３は、蓄積部１１６に記憶された動作目標値が出力可能か否かを判定する。例えば判定部１１３は、蓄積部１１６に記憶された動作目標値でアクチュエータ２１〜２７を動作させるとロボット１０とワークＷとの干渉が生じる場合に、当該動作目標値が出力不可であると判定する。
【００５５】
判定部１１３は、アクチュエータ２１〜２６の少なくともいずれかを判定対象とし、判定対象のアクチュエータについて、第１算出部１１２により算出された動作目標値が許容範囲外である場合にも、当該動作目標値が出力不可であると判定してもよい。判定部１１３は、アクチュエータ２１〜２６の全てを判定対象としてもよいし、アクチュエータ２１〜２６の一部（例えば第２アクチュエータ２２、第３アクチュエータ２３及び第４アクチュエータ２４）のみを判定対象としてもよい。判定部１１３は、第３アクチュエータ２３及び第４アクチュエータ２４のみを判定対象としてもよいし、第３アクチュエータ２３及び第４アクチュエータ２４のいずれか一方のみを判定対象としてもよい。許容範囲は、判定対象のアクチュエータにより駆動される部分の動作量が可動範囲内となるように設定される。例えば第３アクチュエータ２３が判定対象である場合に、第３アクチュエータ２３の動作目標値の許容範囲は、第２腕部１４の揺動角が可動範囲内となるように設定される。
【００５６】
第２算出部１１４は、判定部１１３により動作目標値が出力不可であると判定された場合に、出力可となるようにアクチュエータ２１〜２７の動作目標値を修正する。例えば第２算出部１１４は、ロボット１０とワークＷとの干渉が生じることが判定部１１３により判定された場合に、第２軸線Ａｘ２及び第３軸線Ａｘ３の距離Ｌ１を小さくしてロボット１０とワークＷとの干渉を回避するようにアクチュエータ２１〜２７の動作目標値を修正する。具体的に、第２算出部１１４は、ロボット１０とワークＷとの干渉を回避するように拘束条件を設定し、その拘束条件を適用した逆運動学演算によりアクチュエータ２１〜２７の動作目標値を修正してもよい。
【００５７】
第２算出部１１４は、少なくとも一つの判定対象のアクチュエータについて動作目標値が許容範囲外となった場合に、当該動作目標値が許容範囲内に収まるように、アクチュエータ２１〜２７の動作目標値を修正してもよい。具体的に、第２算出部１１４は、動作目標値が許容範囲外となっているアクチュエータについて、当該動作目標値が許容範囲内に収まるように拘束条件を設定した上で、その拘束条件を適用した逆運動学演算によりアクチュエータ２１〜２７の動作目標値を修正してもよい。
【００５８】
第２算出部１１４は、距離調節用の第７軸線Ａｘ７がワークＷから遠ざかる方向に第１腕部１３を屈曲させるように上記拘束条件を設定し、アクチュエータ２１〜２７の動作目標値を算出してもよい。
【００５９】
第２算出部１１４は、アクチュエータ２１〜２７の動作目標値の算出結果を蓄積部１１６に記憶させ、直前の算出結果を上書きする。
【００６０】
出力部１１５は、動作目標値に応じてアクチュエータ２１〜２７を制御する。具体的に、出力部１１５は、アクチュエータ２１〜２７による各部の動作量が設定された動作目標値に略一致するように、アクチュエータ２１〜２７を制御する。出力部１１５は、アクチュエータ２１〜２７に加えて搬送アクチュエータ３２も制御する。
【００６１】
コントローラ１００は、先端部１６の位置・姿勢の目標値を取得すること、距離調節用の第７アクチュエータ２７の動作目標値を固定した条件にて、位置・姿勢の目標値に対応するアクチュエータ２１〜２６の動作目標値を算出すること、算出された動作目標値が出力可能であるかを判定すること、動作目標値が出力不可であると判定した場合に、出力可となるようにアクチュエータ２１〜２７の動作目標値を修正すること、動作目標値に応じてアクチュエータ２１〜２７を制御すること、を実行するように構成されていればよいので、そのハードウェア構成は必ずしも目標取得部１１１、第１算出部１１２、判定部１１３、第２算出部１１４及び出力部１１５及び蓄積部１１６に分離していなくてもよい。
【００６２】
図９は、コントローラ１００のハードウェア構成の一例を示す図である。図９に例示されるコントローラ１００は、回路１３０を有する。回路１３０は、プロセッサ１３１と、メモリ１３２と、ストレージ１３３と、入出力ポート１３４と、複数のモータドライバ１３６とを有する。入出力ポート１３４は、プログラミングペンダント１２０及び複数のモータドライバ１３６に対するデータの入出力を行う。複数のモータドライバ１３６は、２台のロボット１０のアクチュエータ２１〜２７及び搬送アクチュエータ３２をそれぞれ制御する。プロセッサ１３１は、メモリ１３２及びストレージ１３３の少なくとも一方と協働してプログラムを実行し、入出力ポート１３４を介したデータの入出力を行うことで、コントローラ１００を目標取得部１１１、第１算出部１１２、判定部１１３、第２算出部１１４、出力部１１５及び蓄積部１１６として機能させる。
【００６３】
コントローラ１００のハードウェア構成は、必ずしもプログラムの実行により各機能をなすものに限られない。例えば目標取得部１１１、第１算出部１１２、判定部１１３、第２算出部１１４、出力部１１５及び蓄積部１１６の少なくとも一部はその機能に特化した論理回路により構成されていてもよいし、当該論理回路を集積したＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）により構成されていてもよい。
【００６４】
〔制御方法〕
続いて、本開示に係る制御方法の一例として、コントローラ１００によるロボット１０及び搬送装置３０の制御手順を説明する。
【００６５】
（制御手順の概要）
図１０に示すように、まずコントローラ１００はステップＳ０１を実行する。ステップＳ０１では、第１算出部１１２及び第２算出部１１４の少なくとも一方がアクチュエータ２１〜２７の動作目標値の算出結果を蓄積部１１６に記憶させ、２台のロボット１０の動作パターンを構築する。２台のロボット１０の動作パターンは、ワークＷに対する加工を行うように構築される。
【００６６】
次に、コントローラ１００はステップＳ０２〜Ｓ０４を実行する。ステップＳ０２では、ワークＷの搬送を開始するように出力部１１５が搬送アクチュエータ３２を制御する。ステップＳ０３では、ワークＷに対する加工を実行するように、出力部１１５が２台のロボット１０を制御する。即ち出力部１１５は、蓄積部１１６に記憶された動作目標値に応じて２台のロボット１０のアクチュエータ２１〜２７を制御する。ステップＳ０４では、ワークＷの搬送を終了するように出力部１１５が搬送アクチュエータ３２を制御する。
【００６７】
次に、コントローラ１００はステップＳ０５を実行する。ステップＳ０５では、加工終了の指令が入力されているか否かを出力部１１５が判定する。加工終了の指令は、例えばプログラミングペンダント１２０を介して入力される。加工終了の指令が入力されていない場合、コントローラ１００は処理をステップＳ０２に戻す。これにより、同一の加工手順が繰り返される。加工終了の指令が入力されている場合、コントローラ１００は処理を終了する。
【００６８】
（動作パターンの生成手順）
続いて上記ステップＳ０１における動作パターンの生成手順について、より詳細に説明する。図１１に示すように、まずコントローラ１００はステップＳ１１を実行する。ステップＳ１１では、目標取得部１１１が、先端部１６の位置・姿勢の目標値をプログラミングペンダント１２０から取得する。
【００６９】
次に、コントローラ１００はステップＳ１２，Ｓ１３を実行する。ステップＳ１２では、第１算出部１１２が、距離調節用の第７アクチュエータ２７の動作目標値を初期値に設定する。例えば第１算出部１１２は、第１腕部１３の屈曲角を０°に設定する。ステップＳ１３では、第１算出部１１２が、第７アクチュエータ２７の動作目標値を初期値に固定した条件にて、位置・姿勢の目標値に対応するアクチュエータ２１〜２６の動作目標値を算出し、アクチュエータ２１〜２７の算出結果を蓄積部１１６に記憶させる。
【００７０】
次に、コントローラ１００はステップＳ１４を実行する。ステップＳ１４では、判定部１１３が、蓄積部１１６に記憶された動作目標値が出力可能か否かを判定する。例えば判定部１１３は、蓄積部１１６に記憶された動作目標値でアクチュエータ２１〜２７を動作させた場合に、ロボット１０とワークＷとの干渉が生じる場合に、当該動作目標値が出力不可であると判定する。
【００７１】
判定部１１３は、アクチュエータ２１〜２６の少なくともいずれかを判定対象とし、判定対象のアクチュエータについて動作目標値が許容範囲外である場合にも、当該動作目標値が出力不可であると判定してもよい。
【００７２】
ステップＳ１４において、動作目標値が出力不可であると判定された場合に、コントローラ１００はステップＳ１５，Ｓ１６を実行する。
【００７３】
ステップＳ１５では、動作目標値を出力可とするように、第２算出部１１４が第７アクチュエータ２７の動作目標値を設定する。例えば第２算出部１１４は、距離Ｌ１を短縮してロボット１０とワークＷとの干渉を回避するように第７アクチュエータ２７の動作目標値を設定する。第２算出部１１４は、他のアクチュエータにおいて許容範囲外となっている動作目標値の一部を分担するように、第７アクチュエータ２７の動作目標値を設定してもよい。
【００７４】
ステップＳ１６では、第２算出部１１４が、第７アクチュエータ２７の動作目標値をステップＳ１５における設定値に固定した条件にて、位置・姿勢の目標値に対応するアクチュエータ２１〜２６の動作目標値を算出する。第２算出部１１４は、アクチュエータ２１〜２７の動作目標値の算出結果を蓄積部１１６に記憶させ、直前の算出結果を上書きする。
【００７５】
その後、コントローラ１００は処理をステップＳ１４に戻す。これにより、動作目標値が出力可となるまでステップＳ１４〜Ｓ１５が繰り返される。
【００７６】
ステップＳ１５，Ｓ１６において、第２算出部１１４は、距離調節用の第７軸線Ａｘ７がワークＷから遠ざかる方向に第１腕部１３を屈曲させるように、アクチュエータ２１〜２７の動作目標値を算出してもよい。即ちコントローラ１００は、第７軸線Ａｘ７がワークＷから遠ざかる方向に第１腕部１３を屈曲させるようにアクチュエータ２１〜２７を制御するものであってもよい。
【００７７】
第２算出部１１４によるアクチュエータ２１〜２７の動作目標値の算出手順は上述したものに限られない。例えば、ステップＳ１５において、第７アクチュエータ２７の動作目標値を設定するのに代えて、動作目標値が許容範囲外となっているアクチュエータ自体の動作目標値を許容範囲内の値に設定してもよい。これに対応し、ステップＳ１６においては、アクチュエータ２１〜２６のうちステップＳ１５において動作目標値を設定したアクチュエータを除いたもの、及び第７アクチュエータ２７の動作目標値を算出してもよい。
【００７８】
ステップＳ１４において、動作目標値が出力可であると判定された場合に、コントローラ１００はステップＳ１７を実行する。ステップＳ１７では、動作パターンの構築が完了したか否かをコントローラ１００が判定する。具体的には、例えば目標取得部１１１が、動作パターンの構築に必要な位置・姿勢の目標値を全て取得したか否かを判定する。位置・姿勢の目標値を全て取得したか否かは、例えばユーザがプログラミングペンダント１２０に入力した完了指令又はプログラミングペンダント１２０が記録媒体から読み込んだ完了指令に基づいて判定される。
【００７９】
ステップＳ１７において、動作パターンの構築が完了していないと判定した場合、コントローラ１００は処理をステップＳ１１に戻す。これにより、動作パターンの構築が完了するまでステップＳ１１〜Ｓ１７が繰り返され、アクチュエータ２１〜２７の動作目標値の時系列データが構築される。
【００８０】
ステップＳ１７において、動作パターンの構築が完了していると判定した場合、コントローラ１００は処理を終了する。
【００８１】
（ロボットの動作）
上記構成により、コントローラ１００は、ステップＳ１１〜Ｓ１７により生成された動作パターンにて動作するようにロボット１０を制御する。例えばコントローラ１００は、ワークＷの複数の加工対象部位Ｐ１にエンドエフェクタ１７を移動させるようにロボット１０を制御することと、エンドエフェクタ１７が加工対象部位Ｐ１に配置された状態で、エンドエフェクタ１７により当該加工対象部位Ｐ１に加工を施すようにロボット１０を制御することとを実行する。
【００８２】
複数の加工対象部位Ｐ１は、第１腕部１３の基端部より高い位置にある加工対象部位Ｐ１と、第１腕部１３の基端部より低い位置にある加工対象部位Ｐ１とを含む場合がある。この場合、コントローラ１００は、図１２の（ａ）〜（ｆ）に示すように、第２腕部１４の先端部が第１腕部１３の基端部よりワークＷ側に位置する状態で、第１腕部１３の基端部より高い位置及び当該基端部より低い位置の間でエンドエフェクタ１７を移動させるようにロボット１０を制御する。
【００８３】
この過程において、第１腕部１３の基端部より高い位置及び当該基端部より低い位置の間で第１腕部１３の先端部が移動する場合もある。すなわち、第１腕部１３の基端部より高い位置及び当該基端部より低い位置の間でエンドエフェクタ１７を移動させるようにロボット１０を制御することは、第１腕部１３の基端部より高い位置及び当該基端部より低い位置の間で第１腕部１３の先端部を移動させるようにロボット１０を制御することを含んでもよい。
【００８４】
上述したように、ロボット１０は、ワークＷに正対した状態で、距離Ｌ１を最長距離Ｌ１１として第２軸線Ａｘ２まわりに第１腕部１３を回転させた場合に、第１腕部１３の先端部ＤＰ１又は第２腕部１４の基端部ＰＰ２がワークＷに干渉するように位置する。このため、距離Ｌ１を最長距離Ｌ１１に固定した状態にて、第１腕部１３の基端部より高い位置及び当該基端部より低い位置の間でエンドエフェクタ１７を移動させると、ロボット１０がワークＷに干渉する場合がある。距離Ｌ１を最長距離Ｌ１１に固定した状態にて、第１腕部１３の基端部より高い位置及び当該基端部より低い位置の間で第１腕部１３の先端部を移動させると、ロボット１０がワークＷに干渉する可能性が更に高まる。
【００８５】
これに対し、ステップＳ１１〜Ｓ１７によれば、距離Ｌ１を短縮してロボット１０とワークＷとの干渉を回避するようにアクチュエータ２１〜２７の動作パターンが生成される。この場合、コントローラ１００は、第１腕部１３の基端部より高い位置及び当該基端部より低い位置の間でエンドエフェクタ１７を移動させる過程で、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を第７アクチュエータ２７により変化させるようにロボット１０を制御する。すなわち、第１腕部１３の基端部より高い位置及び当該基端部より低い位置の間でエンドエフェクタ１７を移動させるようにロボット１０を制御することは、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離を第７アクチュエータ２７により変化させるようにロボット１０を制御することを含んでもよい。
【００８６】
〔第１実施形態による効果〕
以上に説明したように、加工装置１によれば、ワークＷに正対した状態で、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を最長距離Ｌ１１として第２軸線Ａｘ２まわりに第１腕部１３を回転させた場合に、第１腕部１３の先端部又は第２腕部１４の基端部が前記ワークに干渉するように、ロボット１０がワークＷに近接する。このため、より遠位の加工対象部位までエンドエフェクタ１７を到達させ易い。ロボット１０がワークＷに近接配置されていても、第７アクチュエータ２７により第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を短縮することで、ロボット１０とワークＷとの干渉を回避しながらエンドエフェクタ１７を移動させることができる。従って、近接配置による到達範囲の広域化と、干渉回避による可動範囲の広域化との両立を図り、個々のロボット１０でワークＷの広範囲に加工を施すことができる。
【００８７】
図１３は、第７アクチュエータ２７の作用を例示する図である。図１３中の二点鎖線で示されるロボット１０は、第１腕部１３を屈曲させることなくエンドエフェクタ１７を加工対象部位に配置した場合を示している。二点鎖線で示されるロボット１０は、ワークＷに干渉している。これに対し、実線で示されるロボット１０は、第１腕部１３を屈曲させて第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離を短縮するように第７アクチュエータ２７を動作させた場合を示している。実線で示されるロボット１０では、先端部１６の位置・姿勢を維持した状態で、第４軸線Ａｘ４及び第２軸線Ａｘ２の間の部分がワークＷから遠ざかり、ワークＷに対するロボット１０の干渉が防止されている。
【００８８】
ロボット１０は、ワークＷに正対した状態で、距離Ｌ１を最短距離Ｌ１２として第２軸線Ａｘ２まわりに第１腕部１３を回転させた場合には、第１腕部１３の先端部及び第２腕部１４の基端部がワークＷに干渉しないように位置してもよい。この場合、ロボット１０とワークＷとの干渉をより確実に回避できる。従って、近接配置による到達範囲の広域化と、干渉の回避による可動範囲の広域化との両立をより確実に図ることができる。
【００８９】
第２腕部１４の先端部が第１腕部１３の基端部よりワークＷ側に位置する状態で、第１腕部１３の基端部より高い位置及び当該基端部より低い位置の間でエンドエフェクタ１７を移動させるようにロボット１０を制御するコントローラ１００を更に備えてもよい。この場合、近接配置による到達範囲の広域化と、干渉の回避による可動範囲の広域化との両立を可能とする構成を有効に活用し、個々のロボット１０でワークＷの広範囲に加工を施すことができる。
【００９０】
第１腕部１３の基端部より高い位置及び当該基端部より低い位置の間でエンドエフェクタ１７を移動させるようにロボット１０を制御することは、第１腕部１３の基端部より高い位置及び当該基端部より低い位置の間で第１腕部１３の先端部を移動させるようにロボット１０を制御することを含んでもよい。この場合、近接配置による到達範囲の広域化と、干渉の回避による可動範囲の広域化との両立を可能とする構成を更に有効に活用し、個々のロボット１０でワークＷの広範囲に加工を施すことができる。
【００９１】
第１腕部１３の基端部より高い位置及び当該基端部より低い位置の間でエンドエフェクタ１７を移動させるようにロボット１０を制御することは、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を第７アクチュエータ２７により変化させるようにロボット１０を制御することを含んでもよい。この場合、近接配置による到達範囲の広域化と、干渉の回避による可動範囲の広域化との両立を可能とする構成をより確実に活用し、個々のロボットでワークの広範囲に加工を施すことができる。
【００９２】
複数の姿勢調節アクチュエータは、第４軸線Ａｘ４まわりに手首部１５を搖動させる第４アクチュエータ２４を含み、ロボット１０は、ワークＷに正対した状態にて、ワークＷにおける最高位置の加工対象部位から第１腕部１３の基端ＰＥ１までの距離と、最低位置の加工対象部位の両方から第１腕部１３の基端ＰＥ１までの距離とが、上記式（１）で求まる長さＬａ以下となるように位置してもよい。この場合、ワークＷにおける最高位置の加工対象部位及び最低位置の加工対象部位の両方にエンドエフェクタ１７を配置できる。従って、個々のロボット１０でより広範囲に加工を施すことができる。
【００９３】
ロボット１０は、ワークＷに正対した状態にて、ワークＷにおける最高位置の加工対象部位に対し、第４軸線Ａｘ４からエンドエフェクタ１７までの距離と等距離で上方にシフトした位置から第１腕部１３の基端ＰＥ１までの距離と、ワークＷにおける最低位置の加工対象部位に対し、第４軸線Ａｘ４からエンドエフェクタ１７までの距離と等距離で下方にシフトした位置から第１腕部１３の基端ＰＥ１までの距離とが、上記式（２）で求まる長さＬｂ以下となるように位置してもよい。この場合、ワークＷにおける最高位置の加工対象部位及び最低位置の加工対象部位の両方に対し、より多様な姿勢でエンドエフェクタ１７を配置できる。従って、個々のロボット１０でより広範囲に加工を施すことができる。
【００９４】
ロボット１０は、第１腕部１３の基端ＰＥ１の高さが上記式（３）で求まる高さＨａ以上となるように位置してもよい。この場合、ワークＷにおける最高位置の加工対象部位に対し、より多様な姿勢でエンドエフェクタ１７を配置できる。従って、個々のロボット１０でより広範囲に加工を施すことができる。
【００９５】
ロボット１０は、第１腕部１３の基端ＰＥ１の高さが上記式（４）で求まる高さＨｂ以下となるように位置してもよい。この場合、ワークＷにおける最高位置の加工対象部位及び最低位置の加工対象部位の両方に対し、より多様な姿勢でエンドエフェクタ１７を配置できる。従って、個々のロボット１０でワークＷのより広範囲に加工を施すことができる。
【００９６】
ロボット１０がワークＷに対し加工を実行するときに、ワークＷ及びロボット１０の相対位置を変更するようにワークＷ及びロボット１０の少なくとも一方を搬送する搬送装置３０を更に備えてもよい。この場合、搬送装置３０及びロボット１０を協調させることにより、広範囲の加工対象部位に対して先端部１６を適正配置することが可能となる。一方、ワークＷ及びロボット１０の相対的な配置が変わるので、ワークＷに対するロボット１０の干渉の生じ易さも変化する。これに対し、ロボット１０は、先端部１６の位置・姿勢を調整するアクチュエータ２１〜２６に加え、距離調節用の第７アクチュエータ２７を更に有する。このため、先端部１６の位置・姿勢を維持した状態で、基台１１及び先端部１６の間におけるロボット１０の姿勢を自在に変更可能である。これにより、ワークＷ及びロボット１０の相対的な配置の変化に柔軟に対応して相互の干渉を抑制できる。ワークＷを回避し易い特性により、ロボット１０の配置の選択肢も多くなる。従って、容易な生産設備構築が可能となる。
【００９７】
また、ロボット１０の姿勢を自在に変更することで、周辺機器に対するロボット１０の干渉も抑制できる。このため、ロボット１０を高密度に配置することで作業時間を短縮することも可能となる。
【００９８】
ロボット１０は、当該ロボット側からの全加工対象部位に対し、ワークＷに干渉することなく加工を行うことが可能となるように配置されていてもよい。この場合、一台のロボット１０にて当該ロボット１０側からの全加工対象部位に加工を施すこともできるし、同一側に複数のロボット１０を配置し、全加工対象部位をこれらのロボット１０に分担させることもできる。これにより、生産量に応じた柔軟な生産設備構築が可能となる。但し、全加工対象部位に対する加工を可能とするようにロボット１０を配置することは必須ではない。
【００９９】
搬送装置３０はワークＷを搬送してもよい。この場合、多数の動力源を含むロボット１０を搬送するのに比べ、搬送装置３０の構成を単純化し易い。従って、更に容易な生産設備構築が可能となる。但し、搬送装置３０は、ワークＷ及びロボット１０の相対位置を変更するものであればよいので、ロボット１０を搬送するものであってもよいし、ワークＷ及びロボット１０の双方を搬送するものであってもよい。
【０１００】
加工装置１は、図１４に示すように、搬送装置３０による搬送方向に沿って並ぶように配置された複数のロボット１０を備えていてもよい。搬送方向に沿って並ぶロボット１０のそれぞれが、上述したように広範囲の加工対象部位に加工を行うことが可能である。このため、搬送方向に沿って並ぶ複数のロボット１０に対し、様々なパターンで加工対象部位を割り当て、より効率的な生産設備を構築できる。
【０１０１】
図１４には、搬送装置３０による搬送方向に沿って並ぶ２台のロボット１０が示されているが、これに限られず、加工装置１は搬送装置３０の搬送方向に沿って並ぶように配置された３台以上のロボット１０を備えるものであってもよい。
【０１０２】
加工装置１は、搬送装置３０による搬送方向に直交する方向でワークＷを挟むように配置された複数のロボット１０を備えていてもよい。この場合、全加工対象部位を複数のロボット１０に分担させることで、それぞれのロボット１０の動作量を抑制できる。これにより、ワークＷに対するロボット１０の干渉が更に抑制される。また、搬送装置３０による搬送方向に直交する方向でワークＷを挟む配置により、ロボット１０同士の干渉も抑制される。従って、更に容易な生産設備構築が可能となる。
【０１０３】
複数のロボット１０が、搬送装置３０による搬送方向に直交する方向でワークＷを挟むように配置されることは必須ではない。例えば、図１５に示すように、ロボット１０はワークＷの左側のみに配置されていてもよい。この場合においても、ロボット１０は、当該ロボット１０側からの全加工対象部位に対し、ワークＷに干渉することなく加工を行うことが可能となるように配置されていてもよい。例えば図１５において、それぞれのロボット１０は、左側の全加工対象部位Ｐ１及び右側の全加工対象部位Ｐ１の両方に加工を行うことが可能となるように配置されていてもよい。
【０１０４】
図１５には、搬送装置３０による搬送方向に沿って並ぶ２台のロボット１０が示されているが、これに限られず、加工装置１は一台のロボット１０のみを備えるものであってもよい。
【０１０５】
コントローラ１００は、先端部１６の位置・姿勢の目標値を取得する目標取得部１１１と、距離調節用の第７アクチュエータ２７の動作目標値を固定した条件にて、位置・姿勢の目標値に対応するアクチュエータ２１〜２６の動作目標値を算出する第１算出部１１２と、アクチュエータ２１〜２６の少なくともいずれかを判定対象とし、判定対象のアクチュエータについて動作目標値が許容範囲内であるか否かを判定する判定部１１３と、少なくとも一つの判定対象のアクチュエータについて動作目標値が許容範囲外となった場合に、当該動作目標値が許容範囲内に収まるように、位置・姿勢の目標値に対応するアクチュエータ２１〜２６及び距離調節用の第７アクチュエータ２７の動作目標値を算出する第２算出部１１４と、動作目標値に応じてアクチュエータ２１〜２７を制御する出力部１１５と、を有してもよい。
【０１０６】
上述したように、ロボット１０によれば干渉を抑制できる一方で、先端部１６の位置・姿勢の目標値に対応するアクチュエータ２１〜２７の動作目標値は一通りに定まらない。このため、ロボット１０の動作教示においては何らかの拘束条件を適宜設定する必要がある。
【０１０７】
これに対し、コントローラ１００は、まず第７アクチュエータ２７の動作目標値を固定した条件にて、アクチュエータ２１〜２６の動作目標値を算出する。次に、判定対象のアクチュエータの動作目標値が許容範囲外となった場合には、当該動作目標値が許容範囲内に収まるように、アクチュエータ２１〜２６及び距離調節用の第７アクチュエータ２７の動作目標値を自動的に再計算する。ロボット１０のアクチュエータの動作量を許容範囲内に抑えると、ロボット１０全体の動作量も抑制されるので、ワークＷ又は周辺機器との干渉が生じ難くなる傾向がある。
【０１０８】
例えば図１３において二点鎖線で示されるロボット１０では、第３アクチュエータ２３の動作目標値が許容範囲外となっている。すなわち、第１腕部１３に対する第２腕部１４の揺動角の目標値θ３が過大になっている。これに対し、図１３において実線で示されるロボット１０では、第１腕部１３に対する第２腕部１４の揺動角の目標値θ３を緩和するようにアクチュエータ２１〜２６及び距離調節用の第７アクチュエータ２７の動作目標値が再計算されている。これに伴って第４軸線Ａｘ４及び第２軸線Ａｘ２の間の部分がワークＷから遠ざかり、ワークＷに対するロボット１０の干渉が防止されている。
【０１０９】
このように、判定対象のアクチュエータの動作目標値を許容範囲内に抑えるという条件を採用することにより、ワークＷ又は周辺機器との干渉の発生確率を下げることができる。これにより、ワークＷ又は周辺機器との干渉を回避しつつ、先端部１６を各加工対象部位の近傍に適正配置する動作パターンの大部分を自動的に構築できる。従って、ロボット１０に対する動作教示の負担が軽減されるので、更に容易な生産設備構築が可能となる。
【０１１０】
距離調節用の第７アクチュエータ２７は、第１腕部１３を距離調節用の第７軸線Ａｘ７まわりに屈曲させることで、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を調節する。この場合、第１腕部１３を単純に伸縮させて第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を調節するのに比べ、アクチュエータ２１〜２６の動作量を抑制し易い傾向がある。また、ロボット１０の姿勢をより多様に調節し、ワークＷ又は周辺機器を回避し易くなる傾向がある。従って、更に容易な生産設備構築が可能である。但し、第７アクチュエータ２７は、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を調節できればどのようなものであってもよいので、例えば第１腕部１３を伸縮させる直動アクチュエータであってもよい。
【０１１１】
距離調節用の第７軸線Ａｘ７は、第２軸線Ａｘ２に対して平行である。仮に、第７軸線Ａｘ７が第２軸線Ａｘ２に対して垂直であるロボットを用いる場合、ワークＷに対するロボットの干渉を避けながら先端部１６を所望の位置・姿勢に配置するためには、第１腕部１３及び第２腕部１４に相当する部分を大きく側方（ワークＷ側を正面とした場合の側方）に傾ける必要が生じ得る。これにより周辺機器（例えば隣接する他のロボット）との干渉が生じ得るため、ロボット及び周辺機器の配置間隔を大きくする必要がある。このことは、例えば複数のロボットの高密度配置を妨げる一因となる。これに対し、ロボット１０においては第７軸線Ａｘ７が第２軸線Ａｘ２に対して平行であるので、少なくとも第７軸線Ａｘ７まわりの回転動作に起因して第１腕部１３及び第２腕部１４を側方に傾ける必要が生じ難く、隣接する周辺機器との干渉が生じ難い。従って、ロボット１０の配置の選択肢がより多くなるので、更に容易な生産設備構築が可能となる。複数のロボットをより高密度に配置し、作業時間を更に短縮することも可能となる。但し、第７軸線Ａｘ７が第２軸線Ａｘ２に対して平行であることは必須ではない。
【０１１２】
距離調節用の第７軸線Ａｘ７は、第３軸線に対しても平行である。この場合、先端部１６を所望の位置・姿勢に配置する際に、第１腕部１３及び第２腕部１４を側方に傾ける必要が更に生じ難くなるので、更に容易な生産設備構築が可能となる。複数のロボットをより高密度に配置し、作業時間を更に短縮することも可能となる。但し、第７軸線Ａｘ７が第３軸線Ａｘ３に対して平行であることも必須ではない。
【０１１３】
第２算出部１１４は、距離調節用の第７軸線Ａｘ７がワークＷから遠ざかる方向に第１腕部１３を屈曲させるように、アクチュエータ２１〜２７の動作目標値を算出してもよい。即ちコントローラ１００は、第７軸線Ａｘ７がワークＷから遠ざかる方向に第１腕部１３を屈曲させるように、アクチュエータ２１〜２７を制御するものであってもよい。この場合、ワークＷ及び隣接する周辺機器に対するロボット１０の干渉がより確実に抑制される。
【０１１４】
先端部１６の姿勢を調節する複数の姿勢調節アクチュエータは、手首部１５を第５軸線Ａｘ５まわりに旋回させる第５アクチュエータ２５、手首部１５を第４軸線Ａｘ４まわりに揺動させる第４アクチュエータ２４、及び先端部１６を第６軸線Ａｘ６まわりに旋回させる第６アクチュエータ２６である。この場合、アクチュエータ２４〜２６の協働により先端部１６の姿勢を自在に調節できる。但し、複数の姿勢調節アクチュエータは、アクチュエータ２４〜２６に限定されず、先端部１６の姿勢を調節可能であればどのようなものであってもよい。例えば、必要とされる姿勢調節の程度に応じて、第４アクチュエータ２４、第５アクチュエータ２５及び第６アクチュエータ２６のいずれかが省略されていてもよい。
【０１１５】
判定部１１３は、第２アクチュエータ２２、第３アクチュエータ２３及び第４アクチュエータ２４の少なくともいずれかを判定対象としてもよい。これらのアクチュエータの動作量は、ロボット全体の動作量に相関し易い傾向がある。このため、これらのアクチュエータを判定対象にして、その動作範囲を許容範囲内に抑えることで、ロボット１０全体の動作量をより確実に抑制し、干渉を更に抑制できる。
【０１１６】
判定部１１３は、第３アクチュエータ２３及び第４アクチュエータ２４の少なくともいずれかを判定対象としてもよい。これらのアクチュエータの動作量は、ロボット全体の動作量に特に相関し易い傾向がある。このため、これらのアクチュエータを判定対象にして、その動作範囲を許容範囲内に抑えることで、ロボット１０全体の動作量をより確実に抑制し、干渉を更に抑制できる。
【０１１７】
ロボット１０は、エンドエフェクタ１７として、先端部１６に設けられた溶接装置を更に備えていてもよい。この場合、ワークＷ又は周辺機器に対するロボット１０の干渉を抑制しつつ、広範囲の加工対象部位に対して溶接を行うことができる。
【０１１８】
加工装置１によれば、ロボット１０により加工可能となるようにパレット３１上にワークＷを配置すること、ワークＷとロボット１０との相対位置を変更するように、搬送アクチュエータ３２によりパレット３１を搬送すること、ロボット１０によりワークＷに対し加工を行うこと、を含むワークＷの生産方法が実行可能である。
【０１１９】
また、先端部１６の位置・姿勢の目標値を取得すること、第７アクチュエータ２７の動作目標値を固定した条件にて、位置・姿勢の目標値に対応するアクチュエータ２１〜２６の動作目標値を算出すること、アクチュエータ２１〜２６の少なくともいずれかを判定対象とし、判定対象のアクチュエータについて動作目標値が許容範囲内であるか否かを判定すること、少なくとも一つの判定対象のアクチュエータについて動作目標値が許容範囲外となった場合に、当該動作目標値が許容範囲内に収まるように、位置・姿勢の目標値に対応するアクチュエータ２１〜２７の動作目標値を算出すること、動作目標値に応じてアクチュエータ２１〜２７を制御すること、を含むワークＷの生産方法も実行可能である。
【０１２０】
コントローラ１００に位置・姿勢の目標値を入力すること、位置・姿勢の目標値に対応するようにコントローラ１００により算出されたアクチュエータ２１〜２７の動作目標値をコントローラに記憶させること、を含む教示方法も実行可能である。
【０１２１】
２．第２実施形態
図１６に示すように、第２実施形態に係る加工装置１Ａは、第１実施形態に係る加工装置１の搬送装置３０を保持台５０（ワーク配置部）に置き換えたものである。保持台５０は、ロボット１０により加工可能な位置にワークＷを保持する。図１７に示すように、２台のロボット１０は、ワークＷを囲む線ＥＬ１に沿って並んでおり、互いに協働して同一のワークＷに対する加工を行う。なお、「ワークＷを囲む線」は、必ずしもワークＷの周縁に沿っていなくてもよいが、ワークＷの周縁に直交する線を含まないものとする。ロボット１０は、隣り合う他のロボット１０と可動範囲ＷＲが重複するように配置されている。個々のロボット１０とワークＷに対する配置条件については、第１実施形態と同様である。
【０１２２】
〔第２実施形態による効果〕
以上に説明したように、加工装置１は、ロボット１０を含み、互いに協働して同一のワークに対する加工を行う複数のロボットを備える。ロボット１０が、同一のワークＷに対する加工を行う複数のロボットに含まれていることにより、ワークＷに対するロボットの干渉及びロボット同士の干渉を抑制できる。従って、容易な生産設備構築が可能となる。複数のロボットを高密度に配置することで作業時間を短縮することも可能となる。
【０１２３】
加工装置１は、同一のワークＷに対する加工を行う複数のロボットを備えていればよいので、ロボットの台数は２台に限られない。例えば、図１８に示すように、３台以上のロボットを備えていてもよい。図１８の加工装置１は、４台のロボット１０を備える。４台のロボット１０は、ワークＷを囲む線に沿い、ワークＷを取り囲むように配置されている。
【０１２４】
図１６及び図１８の加工装置１では、複数のロボットの全てがロボット１０である。このため、全てのロボットにおいて、先端部１６の位置・姿勢を維持した状態で、基台１１及び先端部１６の間におけるロボットの姿勢を自在に変更可能である。従って、ワークＷに対するロボットの干渉及びロボット同士の干渉をより確実に抑制できる。
【０１２５】
但し、全てのロボットがロボット１０であることは必須ではない。例えば図１９及び図２０に示すように、加工装置１の複数のロボットは、ロボット４０（第２ロボット）を更に含んでもよい。ロボット４０は、アクチュエータ２１〜２６を有し、距離調節用の第７アクチュエータ２７を有しない。ロボット４０は、第１腕部１３及び第７アクチュエータ２７を、第１腕部４３に置き換えたものである。このような構成においても、複数のロボットにロボット１０を含むことにより、ワークＷに対するロボットの干渉及びロボット同士の干渉を抑制する効果が得られる。ロボットの台数に制限はなく、図１９に示すように２台であってもよいし、図２０に示すように３台以上であってもよい。
【０１２６】
ロボット１０及びロボット４０は、互いに隣り合うように配置されていてもよい。この場合、ロボット同士の干渉をより確実に抑制できる。
【０１２７】
図１９に示すように、加工装置１は、ロボット１０の方がロボット４０に比べワークＷの近位側に加工を行うように構成されていてもよい。ワークＷの近位側に加工を行う場合、ロボットはアームを折り畳んだ姿勢となる。このような姿勢においては、一部のアクチュエータの動作量が許容限界に達し易い傾向がある。また、折り畳んだアームがワークＷ又は他のロボットに干渉し易い傾向がある。そこで、干渉を抑制可能なロボット１０に、ワークＷの近位側への加工を割り当てることにより、ワークＷに対するロボットの干渉及びロボット同士の干渉をより確実に抑制できる。
【０１２８】
図２０に示すように、加工装置１は、ロボット１０の方がロボット４０に比べワークＷ寄りに位置するように構成されていてもよい。即ち、ロボット１０の基台１１からワークＷまでの距離Ｄ１が、ロボット４０からワークＷまでの距離Ｄ２に比べ小さくなっていてもよい。この場合、干渉を抑制可能なロボット１０をワークＷ寄りに配置することで、ワークＷの広範囲に亘ってエンドエフェクタ１７を到達させることが可能となる。これにより、ロボット４０により加工できない部分をロボット１０によって補い、ワークＷの広範囲に亘って加工を行うことができる。
【０１２９】
全てのロボットは設置面に固定されており、ロボット１０は、隣り合う他のロボットと可動範囲が重複するように配置されていてもよい。この場合、ロボット１０による干渉抑制の効果がより顕著となる。
【０１３０】
以上、実施形態について説明したが、本発明は必ずしも上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で様々な変更が可能である。例えば、加工装置１のワークＷは自動車ボディに限られない。加工装置１は、自動車のドアパネルの加工等にも適用可能であるし、自動車以外の技術分野における様々な部品又は製品の加工・組立にも適用可能である。
【産業上の利用可能性】
【０１３１】
本開示は、加工装置に利用可能である。
【符号の説明】
【０１３２】
１，１Ａ…加工装置、１０…ロボット（第１ロボット）、１２…旋回部、１３…第１腕部、１４…第２腕部、１５…手首部、１６…先端部、１７…エンドエフェクタ（溶接装置）、２１…第１アクチュエータ、２２…第２アクチュエータ、２３…第３アクチュエータ、２４…第４アクチュエータ（姿勢調節アクチュエータ）、２５…第５アクチュエータ（姿勢調節アクチュエータ）、２６…第６アクチュエータ（姿勢調節アクチュエータ）、２７…第７アクチュエータ（距離調節アクチュエータ）、３０…搬送装置、４０…ロボット（第２ロボット）、１００…コントローラ、Ａｘ１…第１軸線、Ａｘ２…第２軸線、Ａｘ３…第３軸線、Ａｘ４…第４軸線、Ａｘ５…第５軸線、Ａｘ６…第６軸線、Ａｘ７…第７軸線（距離調節用の軸線）、Ｌ１…第２軸線及び第３軸線の間の距離、Ｐ１，Ｐ２…加工対象部位、Ｗ…ワーク、Ｌ１１…最長距離、Ｌ１２…最短距離、ＰＥ１…第１腕部１３の基端、ＤＰ１…第１腕部１３の先端部、ＰＰ２…第２腕部１４の基端部、ＷＲ…可動範囲。
【要約】
加工装置（１）は、第１腕部（１３）、第２腕部（１４）及び先端部（１６）と、第１腕部（１３）を第２軸線（Ａｘ２）まわりに揺動させる第２アクチュエータ（２２）と、第２腕部（１４）を第３軸線（Ａｘ３）まわりに揺動させる第３アクチュエータ（２３）と、第２軸線（Ａｘ２）及び第３軸線（Ａｘ３）の間の距離を調節する第７アクチュエータ（２７）と、先端部（１６）に設けられ、ワーク（Ｗ）に対して加工を施すエンドエフェクタ（１７）と、を有するロボット（１０）を備える。ロボット（１０）は、ワーク（Ｗ）に正対した状態で、距離を最長にして第２軸線（Ａｘ２）まわりに第１腕部（１３）を回転させた場合に、第１腕部（１３）の先端部又は第２腕部（１４）の基端部がワーク（Ｗ）に干渉するように位置する。【図１】
0005939364.tif 000002
【図２】
0005939364.tif 000003
【図３】
0005939364.tif 000004
【図４】
0005939364.tif 000005
【図５】
0005939364.tif 000006
【図６】
0005939364.tif 000007
【図７】
0005939364.tif 000008
【図８】
0005939364.tif 000009
【図９】
0005939364.tif 000010
【図１０】
0005939364.tif 000011
【図１１】
0005939364.tif 000012
【図１２】
0005939364.tif 000013
【図１３】
0005939364.tif 000014
【図１４】
0005939364.tif 000015
【図１５】
0005939364.tif 000016
【図１６】
0005939364.tif 000017
【図１７】
0005939364.tif 000018
【図１８】
0005939364.tif 000019
【図１９】
0005939364.tif 000020
【図２０】
0005939364.tif 000021