以下、本発明の制御装置、ロボットおよびロボットシステムを添付図面に示す好適な実施形態に基づいて詳細に説明する。
図1は、本発明のロボットシステムの実施形態を示す斜視図である。図2は、図1に示すロボットシステムの概略図である。図3は、図1に示すロボットシステムの側面図である。図4は、図1に示すロボットシステムの正面図である。図5は、図1に示すロボットシステムの正面図である。図6は、図1に示すロボットシステムの作業の際の動作を説明するための図である。図7は、図1に示すロボットシステムのブロック図である。図8は、図1に示すロボットシステムにおける禁止領域等を示す図である。図9は、図1に示すロボットシステムにおいて禁止する組み合わせを説明するための表を示す図である。図10〜図17は、それぞれ、図9に示す表に記載された姿勢を説明するための図である。図18は、図1に示すロボットシステムにおける禁止領域等を示す図である。図19および図20は、それぞれ、図1に示すロボットシステムにおいて禁止する組み合わせを説明するための図である。
なお、以下では、説明の都合上、図1、図3〜図6、図8、図10〜図20中の上側を「上」または「上方」、下側を「下」または「下方」と言う。また、図1〜図6、図8、図10〜図20中の基台側を「基端」または「上流」、その反対側(ハンド側)を「先端」または「下流」と言う。また、図1、図3〜図6、図8、図10〜図20中の上下方向が鉛直方向である。また、図8、図10〜図20には、ハンドを取り外した状態が図示されている。
図1〜図3および図7に示すように、ロボットシステム(産業用ロボットシステム)100は、ロボット(産業用ロボット)1と、ロボット1の作動(駆動)を制御する制御装置(ロボット制御装置)20とを備えている。このロボットシステム100は、例えば、腕時計のような精密機器等を製造する製造工程等で用いることができる。また、ロボットシステム100は、例えば、当該精密機器やこれを構成する部品の給材、除材、搬送および組立等の各作業を行うことができる。
制御装置20は、例えば、CPU(Central Processing Unit)(図示せず)および記憶部201等が内蔵されたパーソナルコンピューター(PC)等で構成することができる。ロボット1を制御するプログラムは、記憶部201に予め記憶されている。なお、制御装置20は、ロボット1(ロボット本体10)に内蔵されていてもよく、また、ロボット1とは、別体であってもよいが、本実施形態では、ロボット本体10の後述する基台11に配置されている。
ロボット1は、ロボット本体10と、第1駆動源401、第2駆動源402、第3駆動源403、第4駆動源404、第5駆動源405および第6駆動源406(6つの駆動源)とを備えている。ロボット本体10は、基台(支持部)11と、マニピュレーター6とを備えている。マニピュレーター6は、第1アーム(第1アーム部材)(腕部)12、第2アーム(第2アーム部材)(腕部)13、第3アーム(第3アーム部材)(腕部)14、第4アーム(第4アーム部材)(腕部)15、第5アーム(第5アーム部材)(腕部)16および第6アーム(第6アーム部材)(腕部)17(6つのアーム)とを備えている。なお、第5アーム16および第6アーム17によりリストが構成され、第6アーム17の先端には、例えば、ハンド91等のエンドエフェクターを着脱可能に取り付けることができるようになっている。
ロボット1は、基台11と、第1アーム12と、第2アーム13と、第3アーム14と、第4アーム15と、第5アーム16と、第6アーム17とが基端側から先端側に向ってこの順に連結された垂直多関節(6軸)ロボットである。なお、以下では、第1アーム12、第2アーム13、第3アーム14、第4アーム15、第5アーム16および第6アーム17をそれぞれ「アーム」とも言う。また、第1駆動源401、第2駆動源402、第3駆動源403、第4駆動源404、第5駆動源405および第6駆動源406をそれぞれ「駆動源」とも言う。
図3に示すように、基台11は、設置スペースの所定部分に固定(支持)される部分(取り付けられる部材)である。この固定方法としては、特に限定されず、例えば、複数本のボルトによる固定方法等を採用することができる。
本実施形態では、基台11は、設置スペースの天井(天井部)53の天井面531に固定されている。この天井面531は、水平面と平行な平面である。なお、基台11の先端部に設けられた板状のフランジ111が天井面531に取り付けられているが、基台11の天井面531への取り付け箇所は、これに限定されない。
また、このロボット1では、基台11とマニピュレーター6との接続部分、すなわち、後述する軸受部62の中心線(中心)621(図4参照)は、天井面531よりも鉛直方向上側に位置している。なお、軸受部62の中心線621は、これに限らず、例えば、天井面531よりも鉛直方向下側に位置していてもよく、また、天井面531と鉛直方向の同じ位置に位置していてもよい。
また、ロボット1は、基台11が天井面531に設置されているので、第1アーム12と第2アーム13との接続部分、すなわち、第2アーム13を回動可能に支持する図示しない軸受部の中心線(中心)は、軸受部62の中心線621よりも鉛直方向下側に位置している。
なお、基台11には、後述する関節171が含まれていてもよく、また、含まれていなくてもよい(図2参照)。
また、第1アーム12、第2アーム13、第3アーム14、第4アーム15、第5アーム16および第6アーム17は、それぞれ、基台11に対し独立して変位可能に支持されている。
図1〜図3に示すように、第1アーム12は、屈曲した形状をなしている。第1アーム12は、図3の状態で説明すると、基台11に接続され、基台11から後述する第1回動軸O1の軸方向(鉛直方向)であって図3中下側に延出した第1部分121と、第1部分121の図3中の下端から第2回動軸O2の軸方向(水平方向)であって図3中左側に延出した第2部分122と、第2部分122の第1部分121とは反対の端部に設けられ、第1回動軸O1の軸方向(鉛直方向)であって図3中下側に延出した第3部分123と、第3部分123の第2部分122とは反対の端部から第2回動軸O2の軸方向(水平方向)であって図3中右側に延出した第4部分124とを有している。なお、これら第1部分121、第2部分122、第3部分123および第4部分124は、一体で形成されている。また、第2部分122と第3部分123とは、第1回動軸O1および第2回動軸O2の双方と直交する方向から見て(図3の紙面手前から見て)、ほぼ直交(交差)している。
第2アーム13は、長手形状をなし、第1アーム12の先端部、すなわち、第4部分124の第3部分123とは反対の端部に接続されている。
第3アーム14は、長手形状をなし、第2アーム13の先端部、すなわち、第2アーム13の第1アーム12が接続されている端部とは反対の端部に接続されている。
第4アーム15は、第3アーム14の先端部、すなわち、第3アーム14の第2アーム13が接続されている端部とは反対の端部に接続されている。第4アーム15は、互いに対向する1対の支持部151、152を有している。支持部151、152は、第4アーム15の第5アーム16との接続に用いられる。
第5アーム16は、支持部151、152の間に位置し、支持部151、152に接続されることで第4アーム15と連結している。なお、第4アーム15は、この構造に限らず、例えば、支持部が1つ(片持ち)であってもよい。
第6アーム17は、平板状をなし、第5アーム16の基端部に接続されている。また、第6アーム17には、その先端部(第5アーム16と反対側の端部)に、エンドエフェクターとして、例えば、腕時計等のような精密機器、部品等を把持するハンド91が着脱可能に装着される。このハンド91の駆動は、制御装置20により制御される。なお、ハンド91としては、特に限定されず、例えば、複数本の指部(フィンガー)を有する構成のものが挙げられる。そして、このロボット1は、ハンド91で精密機器、部品等を把持したまま、アーム12〜17等の動作を制御することにより、当該精密機器、部品を搬送すること等の各作業を行うことができる。
図1〜図3に示すように、基台11と第1アーム12とは、関節(ジョイント)171を介して連結されている。関節171は、互いに連結された第1アーム12を基台11に対し回動可能に支持する機構を有している。これにより、第1アーム12は、基台11に対し、鉛直方向と平行な第1回動軸O1を中心に(第1回動軸O1周りに)回動可能となっている。第1回動軸O1は、基台11が取り付けられた天井53の天井面531の法線と一致している。また、第1回動軸O1は、ロボット1の最も上流側にある回動軸である。この第1回動軸O1周りの回動は、第1駆動部(駆動部)である第1モーター401Mおよび減速機(図示せず)を有する第1駆動源401の駆動によりなされる。第1駆動源401は第1モーター401Mとケーブル(図示せず)によって駆動され、この第1モーター401Mの駆動は、制御装置20により制御される。なお、前記減速機が省略されていてもよい。
また、この第1アーム12については、第1アーム12を制動するブレーキ(制動装置)は設けられていない。これにより、ロボット1の小型化、軽量化、構造の簡素化を図ることができる。
また、第1アーム12の回動角度は、90°以下に設定されていることが好ましい。これにより、後述するように、ロボット1の周囲に障害物が有る場合でも、容易に、その障害物を回避して動作することができ、また、タクトタイムを短縮することができる。
なお、以下では、第1モーター401Mと、後述する第2モーター402M、第3モーター403M、第4モーター404M、第5モーター405Mおよび第6モーター406Mとをそれぞれ「モーター」とも言う。
また、第1アーム12と第2アーム13とは、関節(ジョイント)172を介して連結されている。関節172は、互いに連結された第1アーム12と第2アーム13のうちの一方を他方に対し回動可能に支持する機構を有している。これにより、第2アーム13は、第1アーム12に対し、水平方向と平行な第2回動軸O2を中心に(第2回動軸O2周りに)回動可能となっている。第2回動軸O2は、第1回動軸O1と直交している。この第2回動軸O2周りの回動は、第2駆動部(駆動部)である第2モーター402Mおよび減速機(図示せず)を有する第2駆動源402の駆動によりなされる。第2駆動源402は第2モーター402Mとケーブル(図示せず)によって駆動され、この第2モーター402Mの駆動は、制御装置20により制御される。なお、前記減速機が省略されていてもよい。
また、第2アーム13を制動するブレーキ(制動装置)として、第2モーター402Mの軸部の近傍にブレーキ(図示せず)が設けられている。このブレーキにより、第2モーター402Mの軸部が回動することを阻止し、第2アーム13の姿勢を保持することができる。
なお、第2回動軸O2は、第1回動軸O1に直交する軸と平行であってもよく、また、第2回動軸O2は、第1回動軸O1と直交していなくても、軸方向が互いに異なっていればよい。
また、第2アーム13と第3アーム14とは、関節(ジョイント)173を介して連結されている。関節173は、互いに連結された第2アーム13と第3アーム14のうちの一方を他方に対し回動可能に支持する機構を有している。これにより、第3アーム14は、第2アーム13に対して、水平方向と平行な第3回動軸O3を中心に(第3回動軸O3周りに)回動可能となっている。第3回動軸O3は、第2回動軸O2と平行である。この第3回動軸O3周りの回動は、第3駆動部(駆動部)である第3モーター403Mおよび減速機(図示せず)を有する第3駆動源403の駆動によりなされる。第3駆動源403は、第3モーター403Mとケーブル(図示せず)によって駆動され、この第3モーター403Mの駆動は、制御装置20により制御される。なお、前記減速機が省略されていてもよい。
また、第3アーム14を制動するブレーキ(制動装置)として、第3モーター403Mの軸部の近傍にブレーキ(図示せず)が設けられている。このブレーキにより、第3モーター403Mの軸部が回動することを阻止し、第3アーム14の姿勢を保持することができる。
また、第3アーム14と第4アーム15とは、関節(ジョイント)174を介して連結されている。関節174は、互いに連結された第3アーム14と第4アーム15のうちの一方を他方に対し回動可能に支持する機構を有している。これにより、第4アーム15は、第3アーム14(基台11)に対し、第3アーム14の中心軸方向と平行な第4回動軸O4を中心に(第4回動軸O4周りに)回動可能となっている。第4回動軸O4は、第3回動軸O3と直交している。この第4回動軸O4周りの回動は、第4駆動部(駆動部)である第4モーター404Mおよび減速機(図示せず)を有する第4駆動源404の駆動によりなされる。第4駆動源404は、第4モーター404Mとケーブル(図示せず)によって駆動され、この第4モーター404Mの駆動は、制御装置20により制御される。なお、前記減速機が省略されていてもよい。
また、第4アーム15を制動するブレーキ(制動装置)として、第4モーター404Mの軸部の近傍にブレーキ(図示せず)が設けられている。このブレーキにより、第4モーター404Mの軸部が回動することを阻止し、第4アーム15の姿勢を保持することができる。
なお、第4回動軸O4は、第3回動軸O3に直交する軸と平行であってもよく、また、第4回動軸O4は、第3回動軸O3と直交していなくても、軸方向が互いに異なっていればよい。
また、第4アーム15と第5アーム16とは、関節(ジョイント)175を介して連結されている。関節175は、互いに連結された第4アーム15と第5アーム16の一方を他方に対し回動可能に支持する機構を有している。これにより、第5アーム16は、第4アーム15に対し、第4アーム15の中心軸方向と直交する第5回動軸O5を中心に(第5回動軸O5周りに)回動可能となっている。第5回動軸O5は、第4回動軸O4と直交している。この第5回動軸O5周りの回動は、第5駆動源405の駆動によりなされる。第5駆動源405は、第5駆動部(駆動部)である第5モーター405Mと、減速機(図示せず)と、第5モーター405Mの軸部に連結された第1プーリー(図示せず)と、第1プーリーに離間して配置され、減速機の軸部に連結された第2プーリー(図示せず)と、第1プーリーと第2プーリーとに掛け渡されたベルト(図示せず)とを有している。第5駆動源405は、第5モーター405Mとケーブル(図示せず)によって駆動され、この第5モーター405Mの駆動は、制御装置20により制御される。なお、前記減速機が省略されていてもよい。
また、第5アーム16を制動するブレーキ(制動装置)として、第5モーター405Mの軸部の近傍にブレーキ(図示せず)が設けられている。このブレーキにより、第5モーター405Mの軸部が回動することを阻止し、第5アーム16の姿勢を保持することができる。
なお、第5回動軸O5は、第4回動軸O4に直交する軸と平行であってもよく、また、第5回動軸O5は、第4回動軸O4と直交していなくても、軸方向が互いに異なっていればよい。
また、第5アーム16と第6アーム17とは、関節(ジョイント)176を介して連結されている。関節176は、互いに連結された第5アーム16と第6アーム17の一方を他方に対し回動可能に支持する機構を有している。これにより、第6アーム17は、第5アーム16に対し、第6回動軸O6を中心に(第6回動軸O6周りに)回動可能となっている。第6回動軸O6は、第5回動軸O5と直交している。この第6回動軸O6周りの回動は、第6駆動部(駆動部)である第6モーター406Mおよび減速機(図示せず)を有する第6駆動源406の駆動によりなされる。第6駆動源406は、第6モーターとケーブル(図示せず)によって駆動され、この第6モーター406Mの駆動は、制御装置20により制御される。なお、前記減速機が省略されていてもよい。
また、第6アーム17を制動するブレーキ(制動装置)として、第6モーター406Mの軸部の近傍にブレーキ(図示せず)が設けられている。このブレーキにより、第6モーター406Mの軸部が回動することを阻止し、第6アーム17の姿勢を保持することができる。
なお、第6回動軸O6は、第5回動軸O5に直交する軸と平行であってもよく、また、第6回動軸O6は、第5回動軸O5と直交していなくても、軸方向が互いに異なっていればよい。
前記モーター401M〜406Mとしては、特に限定されず、例えば、ACサーボモーター、DCサーボモーター等のサーボモーター等が挙げられる。
また、前記各ブレーキとしては、特に限定されず、例えば、電磁ブレーキ等が挙げられる。
なお、第1アーム12についても、他のアームと同様に、第1アーム12を制動するブレーキ(制動装置)として、例えば、モーター401Mの軸部の近傍に、電磁ブレーキ等のブレーキ(図示せず)を設けてもよい。また、逆に、第2アーム13〜第6アーム17については、それぞれ、ブレーキを省略してもよい。
また、駆動源401〜406のモーター401M〜406Mまたは各減速機には、それぞれ、第1アーム12の位置を検出する第1位置検出部として第1エンコーダー、第2アーム13の位置を検出する第2位置検出部として第2エンコーダー、第3アーム14の位置を検出する第3位置検出部として第3エンコーダー、第4アーム15の位置を検出する第4位置検出部として第4エンコーダー、第5アーム16の位置を検出する第5位置検出部として第5エンコーダー、第6アーム17の位置を検出する第6位置検出部として第6エンコーダーが設けられている(いずれのエンコーダーも図示せず)。各エンコーダーにより、それぞれ、駆動源401〜406のモーター401M〜406Mまたは各減速機の回転軸の回転角度を検出する。
以上、ロボット1の構成について簡単に説明した。
次に、第1アーム12〜第6アーム17の関係について説明するが、表現等を変え、種々の視点から説明する。また、第3アーム14〜第6アーム17については、これらを真っ直ぐに伸ばした状態、すなわち、最も長くした状態、換言すれば、第4回動軸O4と第6回動軸O6とが一致しているか、または平行である状態で考えることとする。
まず、図4に示すように、第1アーム12の長さL1は、第2アーム13の長さL2よりも長く設定されている。
ここで、第1アーム12の長さL1とは、第2回動軸O2の軸方向から見て、第2回動軸O2と、第1アーム12を回動可能に支持する軸受部62の図4中の左右方向に延びる中心線621との間の距離である。
また、第2アーム13の長さL2とは、第2回動軸O2の軸方向から見て、第2回動軸O2と、第3回動軸O3との間の距離である。
また、図5に示すように、第2回動軸O2の軸方向から見て、第1アーム12と第2アーム13とのなす角度θを0°にすることが可能なように構成されている。すなわち、第2回動軸O2の軸方向から見て、第1アーム12と第2アーム13とが重なることが可能、すなわち、第1アーム12と第2アーム13とが重なる状態(第1状態)となることが可能なように構成されている。
そして、第2アーム13は、角度θが0°の場合、すなわち、第2回動軸O2の軸方向から見て、第1アーム12と第2アーム13とが重なった場合、基台11が設けられた天井53の天井面531および第1アーム12の第2部分122と干渉しないように構成されている。なお、基台11の基端面が天井面531に取り付けられている場合も同様に、第2アーム13は、天井面531および第1アーム12の第2部分122と干渉しないように構成されている。
ここで、前記第1アーム12と第2アーム13とのなす角度θとは、第2回動軸O2の軸方向から見て、第2回動軸O2と第3回動軸O3とを通る直線(第2回動軸O2の軸方向から見た場合の第2アーム13の中心軸)61と、第1回動軸O1とのなす角度である。
また、第1アーム12を回動させず、第2アーム13を回動させることにより、第2回動軸O2の軸方向から見て角度θが0°となる状態(第1アーム12と第2アーム13とが重なった状態)を経て、第2アーム13の先端を、第1回動軸O1周りに180°異なる位置に移動させることが可能である(図6参照)。すなわち、第1アーム12を回動させず、第2アーム13を回動させることにより、マニピュレーター6の先端(第6アーム17の先端)を図6の左側に示す左側位置から、角度θが0°となる状態を経て、第1回動軸O1周りに180°異なる図6の右側に示す右側位置に移動させることが可能である(図6参照)。なお、第3アーム14〜第6アーム17は、それぞれ、必要に応じて回動させる。
また、第2アーム13の先端を第1回動軸O1周りに180°異なる位置に移動させる際(マニピュレーター6の先端を前記左側位置から前記右側位置に移動させる際)は、第1回動軸O1の軸方向から見て、第2アーム13の先端およびマニピュレーター6の先端は、直線上を移動する。
また、第3アーム14〜第6アーム17の合計の長さ(最大の長さ)L3は、第2アーム13の長さL2よりも長く設定されている。
これにより、第2回動軸O2の軸方向から見て、第2アーム13と第3アーム14とを重ねたとき、第2アーム13から第6アーム17の先端を突出させることができる。これによって、ハンド91が、第1アーム12および第2アーム13と干渉することを防止することができる。
ここで、第3アーム14〜第6アーム17の合計の長さ(最大の長さ)L3とは、第2回動軸O2の軸方向から見て、第3回動軸O3と、第6アーム17の先端との間の距離である(図4参照)。この場合、第3アーム14〜第6アーム17は、図4に示すように、第4回動軸O4と第6回動軸O6とが一致しているか、または平行である状態である。
また、図5に示すように、第2回動軸O2の軸方向から見て、第2アーム13と、第3アーム14とが重なることが可能なように構成されている。
すなわち、第2回動軸O2の軸方向から見て、第1アーム12と、第2アーム13と、第3アーム14とが同時に重なることが可能なように構成されている。
このロボット1では、上記のような関係を満たすことにより、第1アーム12を回動させず、第2アーム13、第3アーム14を回動させることにより、第2回動軸O2の軸方向から見て第1アーム12と第2アーム13とのなす角度θが0°となる状態(第1アーム12と第2アーム13とが重なった状態)を経て、ハンド91(第6アーム17の先端)を第1回動軸O1周りに180°異なる位置に移動させることができる。そして、この動作を用いて、効率良く、ロボット1を駆動することができ、また、ロボット1が干渉しないようにするために設ける空間を小さくすることができ、また、最後に述べるような種々の利点を有する。
このロボットシステム100では、制御装置20は、ロボット1が所定の動作、すなわわち、マニピュレーター6の先端またはハンド91の先端を所定の第1位置から前記第1位置とは異なる第2位置(目標位置)へ移動させる動作を行う場合、その動作の開始前に、ロボット1がロボット1自身に衝突するか否かを判断し、衝突すると判断した場合は、前記動作を行わない。厳密に言えば、前記動作において、ロボット1がロボット1自身に衝突する可能性のある各条件(衝突条件)が予め記憶部201に記憶されており、前記条件を満たす場合は、前記動作をエラーとし、その動作の設定を行わない。これにより、結果的に、前記動作は実行されない。なお、前記の制御は、マニピュレーター6を動作させる場合、第1アーム12〜第6アーム17のうちの少なくとも1つのアームの回動角度を制限する制御とも言うことができる。
また、このロボットシステム100において、第1位置から第2位置へ移動させる対象は、マニピュレーター6の先端とハンド91の先端とのいずれでもよいが、以下では、代表的に、マニピュレーター6の先端を第1位置から第2位置へ移動させる動作を例に挙げ説明する。また、上下方向を特定し易いように、ロボット1の第1回動軸O1の軸方向が鉛直方向であり、基台11が天井53に固定された状態で説明を行う。
また、ロボット1のロボット1自身への衝突の形態(パターン)としては、下記(1)〜(4)の4つの形態が挙げられる。
(1)
マニピュレーター6の先端を第1位置から第2位置へ移動させる動作の終了(完了)時に、マニピュレーター6の先端(ハンド91の先端を第2位置へ移動させる場合は、ハンド91の先端)がロボット1自身に衝突する。以下では、マニピュレーター6の先端を第1位置から第2位置へ移動させる動作を、「第2位置への移動動作」とも言う。
(2)
第2位置への移動動作の途中(動作途中)に、マニピュレーター6の先端(ハンド91の先端を第2位置へ移動させる場合は、ハンド91の先端)がロボット1自身に衝突する。
(3)
第2位置への移動動作の終了時に、マニピュレーター6の先端以外の部分(ハンド91の先端を第2位置へ移動させる場合は、ハンド91の先端以外の部分)がロボット1自身に衝突する。
(4)
第2位置への移動動作の途中に、マニピュレーター6の先端以外の部分(ハンド91の先端を第2位置へ移動させる場合は、ハンド91の先端以外の部分)がロボット1自身に衝突する。
以下、前記(1)〜(4)の4つの衝突の形態毎に説明する。
(1)
第2位置への移動動作の終了時にマニピュレーター6の先端がロボット1自身に衝突することを防止するため、図8に示すように、マニピュレーター6の先端が侵入することを禁止する禁止領域71が設定されている。
禁止領域71は、第2位置への移動動作の終了時にマニピュレーター6の先端がその禁止領域に位置すると、マニピュレーター6の先端がロボット1に衝突すると推定される領域、すなわち、衝突する可能性のある領域である。換言すれば、禁止領域71よりも外側の領域は、第2位置への移動動作の終了時にマニピュレーター6の先端がその領域に位置しても、マニピュレーター6の先端がロボット1に衝突しないと推定される領域である。
この禁止領域71は、本実施形態では、基台11と、第1アーム12の第1部分121と、第1アーム12の第2部分122のうちの第1部分121の下方に位置する部分とを含むように設定されている。
また、禁止領域71は、実際にマニピュレーター6の先端が衝突する領域の境界よりもロボット1の外側に広く設定されている。これにより、マニピュレーター6の先端がロボット1自身に衝突することを的確に防止することができる。後述する(2)〜(4)の衝突の形態の場合も同様である。
なお、禁止領域71の形状は、図示の構成では、直方体であるが、これに限らず、例えば、立方体、円柱、角柱、円、楕円等が挙げられる。
また、禁止領域71は、前記の設定方法に限らず、例えば、第2アーム13の回動角度に基づいて設定されてもよく、また、第3アーム14の回動角度に基づいて設定されてもよく、第2アーム13および第3アーム14の回動角度に基づいて設定されてもよい。また、禁止領域71は、ロボット1(マニピュレーター6)の姿勢に基づいて設定されてもよく、また、前記姿勢と、前記回動角度とに基づいて設定されてもよい。
このロボットシステム100では、第2位置への移動動作の終了時にマニピュレーター6の先端が禁止領域71に位置する場合は、第2位置への移動動作は行わない。
(2)
第2位置への移動動作の途中にマニピュレーター6の先端がロボット1自身に衝突することを防止するため、第2位置への移動動作の開始時のロボット1の姿勢(狭義の姿勢)および所定のアームの角度(回動角度)と、第2位置への移動動作の終了時のロボット1の姿勢および所定のアームの角度との組み合わせにおいて、禁止する組み合わせが設定されている。
まずは、下記の説明で登場する腕姿勢、肘姿勢、第2アーム13の角度の正負および第3アーム14の角度の正負等について説明する。
腕姿勢としては、「右腕姿勢」と、「左腕姿勢」とがある。第2回動軸O2の軸方向で、かつ、ロボット1の背面側から見て(ロボット1自身から見て)、第5回動軸O5が第1回動軸O1よりも右側に位置する場合は、右腕姿勢であり(図4参照)、左側に位置する場合は、左腕姿勢である(図示せず)。すなわち、図4に示すように、第2回動軸O2の軸方向で、かつ、ロボット1の正面側から見て、第5回動軸O5が第1回動軸O1よりも左側に位置する場合は、右腕姿勢であり、右側に位置する場合は、左腕姿勢である。なお、第5回動軸O5が第1回動軸O1上に位置する場合は、右腕姿勢と左腕姿勢とのいずれか一方に含める。
また、肘姿勢としては、「上肘姿勢」と、「下肘姿勢」とがある。図4に示すように、第2回動軸O2の軸方向から見て、第3回動軸O3が第2回動軸O2よりも上側(基台11側)に位置する場合は、上肘姿勢であり、図15に示すように、下側(基台11と反対側)に位置する場合は、下肘姿勢である。なお、第3回動軸O3と第2回動軸O2の上下方向の位置が同じ場合は、上肘姿勢と下肘姿勢とのいずれか一方に含める。
また、第2アーム13の角度の正負は、図3および図5に示すロボット1の姿勢を基準姿勢とし、この基準姿勢から第2アーム13が回動した方向で規定する。
すなわち、図10に示すように、ロボット1の正面側から見て、基準姿勢から第2アーム13が時計周りに回動した状態での第2アーム13の角度を、第2アーム13の角度が「正」と規定する。また、図13に示すように、ロボット1の正面側から見て、基準姿勢から第2アーム13が反時計周りに回動した状態での第2アーム13の角度を、第2アーム13の角度が「負」と規定する。なお、基準姿勢のときの第2アーム13の角度は、「正」と「負」とのいずれか一方に含める。
また、第3アーム14の角度の正負は、図3および図5に示すロボット1の姿勢を基準姿勢とし、この基準姿勢から第3アーム14が回動した方向で規定する。
すなわち、図10に示すように、ロボット1の正面側から見て、基準姿勢から第3アーム14が時計周りに回動した状態での第3アーム14の角度を、第3アーム14の角度が「正」と規定する。また、図13に示すように、ロボット1の正面側から見て、基準姿勢から第3アーム14が反時計周りに回動した状態での第3アーム14の角度を、第3アーム14の角度が「負」と規定する。なお、基準姿勢のときの第3アーム14の角度は、「正」と「負」とのいずれか一方に含める。
また、本実施形態では、第1アーム12、第2アーム13および第3アーム14が、それぞれ、基準姿勢から±180°の範囲において回動可能に設定されている場合を例に挙げて説明する。なお、第1アーム12、第2アーム13および第3アーム14の基準姿勢からの回動可能な範囲は、それぞれ、前記範囲に限定されるものではない。
また、ロボット1の取り得る姿勢(広義の姿勢)としては、図9に示す表に記載されているように、No.1〜8の8つの姿勢がある。
No.1の姿勢は、図10に示すように、右腕姿勢、上肘姿勢、第2アーム13の角度が「正」、第3アーム14の角度が「正」である。
また、No.2の姿勢は、図11に示すように、右腕姿勢、上肘姿勢、第2アーム13の角度が「負」、第3アーム14の角度が「正」である。
また、No.3の姿勢は、図12に示すように、左腕姿勢、上肘姿勢、第2アーム13の角度が「正」、第3アーム14の角度が「負」である。
また、No.4の姿勢は、図13に示すように、左腕姿勢、上肘姿勢、第2アーム13の角度が「負」、第3アーム14の角度が「負」である。
また、No.5の姿勢は、図14に示すように、右腕姿勢、下肘姿勢、第2アーム13の角度が「正」、第3アーム14の角度が「負」である。
また、No.6の姿勢は、図15に示すように、右腕姿勢、下肘姿勢、第2アーム13の角度が「負」、第3アーム14の角度が「負」である。
また、No.7の姿勢は、図16に示すように、左腕姿勢、下肘姿勢、第2アーム13の角度が「正」、第3アーム14の角度が「正」である。
また、No.8の姿勢は、図17に示すように、左腕姿勢、下肘姿勢、第2アーム13の角度が「負」、第3アーム14の角度が「正」である。
このロボットシステム100では、第2位置への移動動作の開始時の姿勢が、No.1〜5および8の姿勢の場合は、それぞれ、第2位置への移動動作の終了時の姿勢が、No.6の姿勢の場合およびNo.7の姿勢場合は、前記移動動作の途中にマニピュレーター6の先端がロボット1自身に衝突すると推定され、第2位置への移動動作は行わない。
また、第2位置への移動動作の開始時の姿勢が、No.6の姿勢の場合は、第2位置への移動動作の終了時の姿勢が、No.6の姿勢以外の姿勢の場合は、前記移動動作の途中にマニピュレーター6の先端がロボット1自身に衝突すると推定され、第2位置への移動動作は行わない。
また、第2位置への移動動作の開始時の姿勢が、No.7の姿勢の場合は、第2位置への移動動作の終了時の姿勢が、No.7の姿勢以外の姿勢の場合は、前記移動動作の途中にマニピュレーター6の先端がロボット1自身に衝突すると推定され、第2位置への移動動作は行わない。
なお、前記以外の組み合わせの場合は、前記移動動作の途中にマニピュレーター6の先端がロボット1自身に衝突しないと推定される。
(3)
第2位置への移動動作の終了時の第2アーム13の基準姿勢からの角度が、−θ1(閾値)以上、θ2(閾値)以下であり、かつ、前記移動動作の終了時に、マニピュレーター6の先端が、第2回動軸O2の軸方向から見て、図18に示す直線72上または直線72よりも上側(基台側)に位置する場合は、前記移動動作の終了時にマニピュレーター6の先端以外の部分がロボット1自身に衝突すると推定される。したがって、この場合は、第2位置への移動動作は行わない。なお、第2回動軸O2の軸方向から見て、直線72および直線72よりも上側の領域は、マニピュレーター6の先端が侵入することを禁止する禁止領域とも言うことができる。
また、第2位置への移動動作の終了時の第2アーム13の基準姿勢からの角度が、−θ1よりも小さい場合と、θ2よりも大きい場合と、前記移動動作の終了時に、マニピュレーター6の先端が直線72よりも下側(基台と反対側)に位置する場合は、いずれも、前記移動動作の終了時にマニピュレーター6の先端以外の部分がロボット1自身に衝突しないと推定される。
前記−θ1および前記θ2は、それぞれ、特に限定されず、諸条件に応じて適宜設定されるものであるが、本実施形態では、−θ1は、例えば、−30°に設定され、また、θ2は、例えば、30°に設定される。
また、直線72の位置は、特に限定されず、前記−θ1およびθ2等の諸条件に応じて適宜設定されるものであるが、本実施形態では、第2回動軸O2の軸方向から見て、第1アーム12の第2部分122のうちの第1部分121の下方に位置する部分の下面(基台11と反対側の面)125と一致するように設定される。なお、前記−θ1および前記θ2の絶対値が小さいほど、直線72の位置は、基台11から離間する。
(4)
第2位置への移動動作の開始時に、マニピュレーター6の先端が、図19に示す領域73に位置し、かつ、前記移動動作の終了時に、マニピュレーター6の先端が、図20に示す領域74に位置する場合は、前記移動動作の途中にマニピュレーター6の先端以外の部分がロボット1自身に衝突すると推定される。したがって、この場合は、第2位置への移動動作は行わない。
なお、第2位置への移動動作の開始時に、マニピュレーター6の先端が領域73の外側に位置する場合は、前記移動動作の終了時に、マニピュレーター6の先端がいずれの位置に位置する場合でも、前記移動動作の途中にマニピュレーター6の先端以外の部分がロボット1自身に衝突しないと推定される。
同様に、第2位置への移動動作の開始時に、マニピュレーター6の先端が領域74の外側に位置する場合は、前記移動動作の開始時に、マニピュレーター6の先端がいずれの位置に位置する場合でも、前記移動動作の途中にマニピュレーター6の先端以外の部分がロボット1自身に衝突しないと推定される。
領域73は、本実施形態では、第1アーム12の第1部分121と、第1アーム12の第2部分122のうちの第1部分121の下方に位置する部分と、第2アーム13のうちの第1部分121の下方に位置する部分とを含み、第1回動軸O1の軸方向から見て、領域73の外側の形状が基台11のフランジ111の外側の形状とほぼ同じになるように設定されている。
なお、領域73の形状は、図示の構成では、直方体であるが、これに限らず、例えば、立方体、円柱、角柱、円、楕円等が挙げられる。
また、領域74の形状は、本実施形態では、第1回動軸O1を回転中心とする回転体であり、第2回動軸O2の軸方向から見て、半楕円に近似した形状をなしている。また、半田楕円の長軸の部分は、第2回動軸O2の軸方向から見て、第1アーム12の第2部分122のうちの第1部分121の下方に位置する部分の下面(基台11と反対側の面)125と一致するように設定される。
なお、領域74の形状は、これに限定されるものではい。他の具体例としては、領域74は、例えば、第2回動軸O2の軸方向から見て、第1アーム12の第2部分122の下面と一致する直線(図18に示す直線72と同じ)およびその直線よりも上側の領域としてもよい。
また、領域73および74は、それぞれ、前記の設定方法に限らず、例えば、第2アーム13の回動角度に基づいて設定されてもよく、また、第3アーム14の回動角度に基づいて設定されてもよく、第2アーム13および第3アーム14の回動角度に基づいて設定されてもよい。また、領域73は、ロボット1(マニピュレーター6)の姿勢に基づいて設定されてもよく、また、前記姿勢と、前記回動角度とに基づいて設定されてもよい。
以上説明したように、ロボットシステム100によれば、ロボット1が所定の動作を行う場合、その動作の開始前に、ロボット1がロボット1自身に衝突するか否かを判断し、衝突すると判断した場合は、前記動作を行わないので、ロボット1がロボット1自身に衝突することを防止することができる。これにより、ロボット1の衝突でロボット1自身を損傷させてしまうことを防止することができる。
また、ロボット1が動作を開始し、衝突する直前に動作を停止してその衝突を回避する場合に比べて、ロボット1が無駄な動作を行うことを防止することができる。
また、ロボット1がロボット1自身に衝突する可能性のある姿勢、アームの角度、第2位置への移動動作の開始時や終了時のマニピュレーター6の先端位置等、すなわち、前記(1)〜(4)で述べた各条件を、第2位置への移動動作を禁止する動作禁止条件として、図示しない表示装置や紙面等に、例えば、図、表、文章等やこれらを組み合わせて表示することにより、使用者は、前記表示を見て、前記動作禁止条件を容易に把握することができ、利便性が高い。
また、前述したように、ロボットシステム100では、第1アーム12を回動させず、第2アーム13、第3アーム14等を回動させることにより、第2回動軸O2の軸方向から見て第1アーム12と第2アーム13とのなす角度θが0°となる状態(第1アーム12と第2アーム13とが重なった状態)を経て、マニピュレーター6の先端を第1回動軸O1周りに180°異なる位置に移動させることができる。
これにより、ロボット1が干渉しないようにするための空間を小さくすることができる。
すなわち、まずは、天井53を低くすることができ、これにより、ロボット1の重心の位置が低くなり、ロボット1の振動の影響を小さくすることができる。すなわち、ロボット1の動作による反力により発生する振動を抑制することができる。
また、ロボット1の幅方向(生産ラインの方向)の稼働領域を小さくすることができ、これにより、ロボット1を生産ラインに沿って、単位長さ当たりに多く配置することができ、生産ラインを短縮することができる。
また、マニピュレーター6の先端を移動させる場合、ロボット1の動きを少なくすることができる。例えば、第1アーム12を回動させないか、または、第1アーム12の回動角度を小さくすることができ、これにより、タクトタイムを短縮することができ、作業効率を向上させることができる。
また、マニピュレーター6の先端を第1回動軸O1周りに180°異なる位置に移動させる動作(以下、「ショートカットモーション」とも言う)を、従来のロボットのように単純に第1アーム12を第1回動軸O1周りに回動させて実行しようとすると、ロボット1がその近傍の壁(図示せず)や周辺装置(図示せず)に干渉する虞があるので、その干渉を回避するための退避点をロボット1に教示する必要がある。例えば、第1アーム12のみを第1回動軸O1周りに90°回転させるとロボット1が壁に干渉する場合は、他のアームも回動させることで、壁に干渉しないように退避点を教示する必要がある。同様に、ロボット1が周辺装置にも干渉する場合は、周辺装置に干渉しないようにさらに退避点をロボット1に教示する必要がある。このように従来のロボットでは、多数の退避点を教示することが必要であり、特に、ロボット1の周辺の空間が小さい場合は、膨大な数の退避点が必要になり、教示に多くの手間および長い時間を要する。
これに対し、ロボットシステム100では、前記ショートカットモーションを実行する場合、干渉する虞がある領域や部分が非常に少なくなるため、教示する退避点の数を低減することができ、教示に要する手間および時間を低減することができる。すなわち、ロボットシステム100では、教示する退避点の数は、例えば、従来のロボットの1/3程度になり、飛躍的に教示が容易になる。
また、第3アーム14および第4アーム15の図3中の右側の二点鎖線で囲まれた領域(部分)101は、ロボット1がロボット1自身および他の部材と干渉しないか、または干渉し難い領域(部分)である。このため、前記領域101に、所定の部材を搭載した場合、その部材は、ロボット1および周辺装置等に干渉し難い。このため、ロボットシステム100では、領域101に、所定の部材を搭載することが可能である。特に、領域101のうち、第3アーム14の図3中の右側の領域に前記所定の部材を搭載する場合は、その部材が図示しない作業台上に配置された周辺装置(図示せず)と干渉する確率はさらに低くなるので、より効果的である。
前記領域101に搭載可能なものとしては、例えば、ハンド、ハンドアイカメラ等のセンサーの駆動を制御する制御装置、吸着機構の電磁弁等が挙げられる。
具体例としては、例えば、ハンドに吸着機構を設ける場合、領域101に電磁弁等を設置すると、ロボット1が駆動する際に前記電磁弁が邪魔にならない。このように、領域101は、利便性が高い。
以上、本発明の制御装置、ロボットおよびロボットシステムを、図示の実施形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、他の任意の構成物が付加されていてもよい。
また、前記施形態では、「複数のアームのうちの少なくとも1つのアームの回動角度を制限する」の1例として、各アームを回動させないこと、すなわち、第2位置への移動動作を行わないことを例に挙げて説明したが、本発明では、これに限定されない。
また、前記実施形態では、特許請求の範囲に規定したnが1の場合について説明したが、本発明では、これに限定されず、nは、1以上の整数である。すなわち、本発明では、nが1以上の任意の整数において、前記nが1の場合と同様に構成されていればよい。
また、前記実施形態では、マニピュレーター(ロボットアーム)の回動軸の数は、6つであるが、本発明では、これに限定されず、マニピュレーターの回動軸の数は、例えば、3つ、4つ、5つまたは7つ以上でもよい。すなわち、前記実施形態では、アーム(リンク)の数は、6つであるが、本発明では、これに限定されず、アームの数は、例えば、3つ、4つ、5つ、または、7つ以上でもよい。例えば、前記実施形態のロボットにおいて、第2アームと第3アームとの間にアームを追加することにより、アームの数が7つのロボットを実現することができる。
また、前記実施形態では、マニピュレーターの数は、1つであるが、本発明では、これに限定されず、マニピュレーターの数は、例えば、2つ以上でもよい。すなわち、ロボット(ロボット本体)は、例えば、双腕ロボット等の複数腕ロボットであってもよい。
また、前記実施形態では、エンドエフェクターとして、ハンドを例に挙げたが、本発明では、これに限定されず、エンドエフェクターとしては、その他、例えば、ドリル、溶接機、レーザー照射機等が挙げられる。
また、前記実施形態では、ロボットの基台の固定箇所は、天井であるが、本発明では、これに限定されず、この他、例えば、設置スペースにおける床、壁、作業台、地上等が挙げられる。また、ロボットは、セル内に設置されていてもよい。この場合、基台の固定箇所は、特に限定されず、例えば、セルの天井部、壁部、作業台、床等が挙げられる。
また、前記実施形態では、ロボット(基台)が固定される面は、水平面と平行な平面(面)であるが、本発明では、これに限定されず、例えば、水平面や鉛直面に対して傾斜した平面(面)でもよく、また、鉛直面と平行な平面(面)であってもよい。すなわち、第1回動軸は、鉛直方向や水平方向に対して傾斜していてもよく、また、水平方向と平行であってもよい。
また、本発明では、ロボットは、他の形式のロボットであってもよい。具体例としては、例えば、脚部を有する脚式歩行(走行)ロボット等が挙げられる。