(57)【要約】【課題】作業者の熟練度に依存せず、ロボットの適切な動作許容領域をオフラインで自動的かつ迅速に設定できる自動設定装置を提供する。【解決手段】ロボット３２の通過領域を複数の小通過領域に分割する。分割の方法としては、ロボットの特定の軸の値の範囲に基づいて行う方法が考えられる。分割生成された複数の小通過領域の各々を包括すなわち完全に覆う１つ又は複数の基本形状を自動的に求め、各小通過領域のための包括立体として設定する。例えば作業領域５０及び５２の包括立体５２及び５４をそれぞれ１つの球とし、両作業領域間を結ぶ３つの動作経路４２、４４及び４６の包括立体５６、５８及び６０をそれぞれ１つの円柱とする。【選択図】図３
2010155310.tif 000002
【特許請求の範囲】
【請求項１】
ロボットの存在又は通過が許容され得る動作許容領域を自動的に設定する動作許容領域自動設定装置であって、
前記ロボットの教示プログラムの動作シミュレーションを行うシミュレーション実行部と、
前記動作シミュレーションの結果から、前記ロボットの３次元空間における通過領域を検出する通過領域検出部と、
前記通過領域検出部により検出された通過領域を、前記ロボットの特定の軸の動作位置に基づいて複数の小通過領域に分割する通過領域分割部と、
直方体、多角柱、円柱、楕円柱、円錐、角錐、球及び楕円球を基本形状として、前記通過領域分割部により分割された複数の小通過領域の各々を完全に包括する包括立体を、前記基本形状の１つ又は前記基本形状の組み合わせとして生成する包括立体生成部と、
前記教示プログラムに、前記包括立体の各々について、前記ロボットの存在又は通過を許可するか否かを切り替える命令を前記教示プログラムに自動的に追加するプログラミング部と、
を備えることを特徴とした、動作許容領域自動設定装置。
【請求項２】
前記包括立体生成部は、前記包括立体を、最少の個数の前記基本形状の組み合わせから生成するように構成される、請求項１に記載の動作許容領域自動設定装置。
【請求項３】
前記包括立体生成部は、前記包括立体を構成する基本形状の各々の大きさを最小化するように構成される、請求項１又は２に記載の動作許容領域自動設定装置。
【請求項４】
前記動作シミュレーション結果から、前記包括立体の各々に対してロボットが侵入及び離脱するタイミングを求めるタイミング計算部をさらに有し、
前記プログラミング部は、前記包括立体の各々に対して前記ロボットが侵入及び離脱するタイミングに対応するプログラム行を生成するとともに、前記プログラム行の各々の前後に、前記包括立体の各々について前記ロボットの存在又は通過を許可するか否かを切り替える命令を自動的に追加するように構成される、請求項１〜３のいずれか１項に記載の動作許容領域自動設定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの作業空間内において、ロボットの存在又は通過を許容する領域である動作許容領域をオフラインで自動的に設定する装置に関する。
【背景技術】
【０００２】
従来、ロボットの安全装置としては、リミットスイッチや、ロボットの各軸の可動範囲を制限するメカニカルストッパ等の周辺装置が使用されてきたが、これに対してロボットの制御装置上のソフトウェアによってロボットの安全装置を実現することが行われるようになってきている。これは、ロボットが存在又は通過できる動作許容領域と存在又は通過が許容できない動作禁止領域とを定義して、ロボットの制御装置上のソフトウェアによってロボットの動作を制限するものである。ロボットの現在位置が動作許容領域又は動作禁止領域に侵入しているか否かの判定においては、ロボットの制御周期の間に行う必要があるため、動作許容領域及び動作禁止領域は、直方体、多角柱、円柱、楕円柱、円錐、角錐、球及び楕円球を基本形状とし、該基本形状の組み合わせによって表現することによって、判定のための演算量を小さくする。このとき、動作許容領域と動作禁止領域との境界線の設定は、実際にロボットを動かしてみて、該ロボットが侵入する可能性のある領域を目視で確認することにより行われていた。ロボットと作業者とが近接して作業をする必要がある場合、ロボットに動作禁止領域を設定して、その動作禁止領域にロボットが侵入しないようにすることによって、逆に言えばロボットが動作許容領域内でのみ動作できるようにすることによって、作業者の作業中の安全を確保することができる。
【０００３】
またオフラインで事前にロボットの干渉をシミュレーションできる技術も提唱されている。例えば特許文献１には、複数のロボットを含むシステムにおいて、オフラインのシミュレーションを行うことによって適切な干渉領域を求め、それに基づいてインターロックを自動的に設定することができるインターロック自動設定装置及び自動設定方法が開示されている。
【０００４】
【特許文献１】特開２００７−１６４４１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述のようにロボットの動作許容領域の設定は従来、実際にロボットを動かして目視によって行われていた。このとき、動作許容領域の設定を適切に行わないと、種々の問題が発生する。例えば、必要以上に広い動作許容領域を設定してしまうと、作業者の作業領域にロボットが誤って侵入したり、他の周辺機器の大きさや可動範囲に不必要な制約を与えたりすることになる。逆に動作許容領域を狭くし過ぎると、ロボットが所定の作業を行えなくなる等の問題が発生する。
【０００６】
動作許容領域又は動作禁止領域を目視で確認して設定することは、適切な設定を行うために実際のロボット動作を繰り返し試行する必要がある等、時間と熟練が必要であった。また、１台のロボットに複数の動作許容領域を設定して、ロボットの作業の進捗に応じ、教示プログラム中で有効な動作許容領域を切り替える場合もあるが、この切り替えを行うタイミングの設定もまた、時間と熟練が必要であった。
【０００７】
一方、ＣＡＤモデルを使ったシミュレーション等を利用することにより、ロボットのかなり正確な動作領域を求めることができるので、該動作領域を上記動作許容領域として利用することも理論的には可能である。しかしこのような動作領域は形状が複雑であり、複雑な形状の動作領域に基づいてロボットの動作の制限を行うことはロボットの制御装置の処理能力上、現実的ではない。
【０００８】
そこで本発明は、作業者の熟練度に依存せず、ロボットの適切な動作許容領域をオフラインで自動的かつ迅速に設定できる自動設定装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、請求項１に記載の発明は、ロボットの存在又は通過が許容され得る動作許容領域を自動的に設定する動作許容領域自動設定装置であって、前記ロボットの教示プログラムの動作シミュレーションを行うシミュレーション実行部と、前記動作シミュレーションの結果から、前記ロボットの３次元空間における通過領域を検出する通過領域検出部と、前記通過領域検出部により検出された通過領域を、前記ロボットの特定の軸の動作位置に基づいて複数の小通過領域に分割する通過領域分割部と、直方体、多角柱、円柱、楕円柱、円錐、角錐、球及び楕円球を基本形状として、前記通過領域分割部により分割された複数の小通過領域の各々を完全に包括する包括立体を、前記基本形状の１つ又は前記基本形状の組み合わせとして生成する包括立体生成部と、前記教示プログラムに、前記包括立体の各々について、前記ロボットの存在又は通過を許可するか否かを切り替える命令を前記教示プログラムに自動的に追加するプログラミング部と、を備えることを特徴とした、動作許容領域自動設定装置を提供する。
【００１０】
請求項２に記載の発明は、請求項１に記載の動作許容領域自動設定装置において、前記包括立体生成部は、前記包括立体を、最少の個数の前記基本形状の組み合わせから生成するように構成される、動作許容領域自動設定装置を提供する。
【００１１】
請求項３に記載の発明は、請求項１又は２に記載の動作許容領域自動設定装置において、前記包括立体生成部は、前記包括立体を構成する基本形状の各々の大きさを最小化するように構成される、動作許容領域自動設定装置を提供する。
【００１２】
請求項４に記載の発明は、請求項１〜３のいずれか１項に記載の動作許容領域自動設定装置において、前記動作シミュレーション結果から、前記包括立体の各々に対してロボットが侵入及び離脱するタイミングを求めるタイミング計算部をさらに有し、前記プログラミング部は、前記包括立体の各々に対して前記ロボットが侵入及び離脱するタイミングに対応するプログラム行を生成するとともに、前記プログラム行の各々の前後に、前記包括立体の各々について前記ロボットの存在又は通過を許可するか否かを切り替える命令を自動的に追加するように構成される、動作許容領域自動設定装置を提供する。
【発明の効果】
【００１３】
本発明に係るロボットの動作許容領域自動設定装置によれば、ロボットの適切な動作許容領域をオフラインで自動的かつ迅速に設定できるようになる。従って作業者の熟練度に依存せずに、安定した結果を得ることができ、また作業者の拘束時間も短縮される。
【００１４】
各包括立体に対してロボットが侵入及び離脱するタイミングを求め、さらに該タイミングに対応するプログラム行の前後に各包括立体内でのロボットの存在又は通過を許可するか否かを切り替える命令を自動的に追加することにより、動作許容領域をより効率的に限定し、計算時間の短縮化を図ることができる。
【発明を実施するための最良の形態】
【００１５】
以下、図面を参照しながら本発明を詳細に説明する。図１は、本発明に係る動作許容領域自動設定装置１０の基本構成を示す図である。自動設定装置１０は、ロボットの教示プログラムの動作シミュレーションを行うシミュレーション実行部１２と、動作シミュレーションの結果から、ロボットの３次元空間における通過領域を検出する通過領域検出部１４と、通過領域検出部により検出された通過領域を、ロボットの特定の軸の動作位置に基づいて複数の小通過領域に分割する通過領域分割部１６と、直方体、多角柱、円柱、楕円柱、円錐、角錐、球及び楕円球を基本形状として、通過領域分割部により分割された複数の小通過領域の各々を完全に包括する包括立体を、基本形状の１つ又は基本形状の組み合わせとして生成する包括立体生成部１８と、教示プログラムに、包括立体の各々について、ロボットの存在又は通過を許可するか否かを切り替える命令を教示プログラムに自動的に追加するプログラミング部２０と、備える。また自動設定装置１０は、動作シミュレーションの経過及び結果を表示できる表示部２２をさらに有することができる。さらに自動設定装置１０は、後述するフローチャート（図２）に含まれるステップＳ６の処理に関連した動作を行うタイミング計算部２４をさらに有することができる。
【００１６】
自動設定装置１０は、具体的にはパーソナルコンピュータ等の計算機によって実現可能であり、上述の表示部を除く各構成要素はパーソナルコンピュータのＣＰＵ等の演算処理装置が担うことができ、また表示部の機能はパーソナルコンピュータのディスプレイ等に担わせることができる。或いは自動設定装置１０は、複数のロボットを含むシステムにおいて、各ロボットの動作プログラムや教示プログラムを作成するプログラミング装置に含まれてもよい。
【００１７】
図２は、自動設定装置１０が行う作業すなわちロボットの動作許容領域の設定方法の流れを示すフローチャートである。以下、当該設定方法を図２及び図３を参照しつつ説明する。先ずステップＳ１において、ロボットを配置したワークセルを作成する。図３は、ワークセルの具体例を表示部２２に表示させた状態を示す図である。図３の例では、Ｘ方向に延びるガイドレール３０に沿って移動可能なロボット３２、架台３４及び工作機械３６の３次元ＣＡＤモデルが配置され表示されている。ロボット３２は、架台３４上に載置されたワーク３８を把持可能なハンド４０を有するとともに、把持したワークを工作機械３６内の所定位置に配置できるように構成されている。
【００１８】
次にステップＳ２において、ロボットのための教示プログラムを生成し、動作シミュレーションを行って該ロボットの動作経路を求める。動作経路は、図３の例で説明すると、図３に示す初期位置にあるロボット３２が、概ね鉛直軸（Ｚ軸）に沿う第１の経路４２に沿って下降して架台３４上のワーク３８を把持し、ワーク３８を把持した後に再び第１の経路４２に沿って上昇し、次にガイドレール３０の延びる方向（Ｘ方向）と平行な第２の経路４４に沿って工作機械３６側に移動し、再び工作機械３６の略上方からＺ軸に沿って下方に延びる第３の経路４６に沿って下降して、ハンド４０が把持したワークを工作機械３６内の所定位置に配置する、という一連の動作についてのロボット３２の移動経路である。
【００１９】
次にステップＳ３において、上記ロボットの動作経路に基づき、仮想３次元空間におけるロボットの通過領域（掃引空間）を検出する。ここではロボット等の３次元ＣＡＤモデルを使用するので、ある姿勢におけるロボットの占有領域を求めることができる。従ってロボットの教示プログラムをオフラインプログラミング装置上でシミュレーションを行い、その結果得られた教示プログラムの実行中のロボットの各姿勢についてロボットの占有領域を求め、さらにそれらの和を求めることで、仮想３次元空間におけるロボットの通過領域を求めることができる。なお３次元ＣＡＤモデルを用いた計算を行う場合、この時点での通過領域はかなり厳密なものではあるが複雑な形状のものとなる。通常、このような複雑な形状に基づいて教示プログラム中に通過領域に関する命令を作成することは非常に高い処理能力及び長い計算時間が必要となり、実用的でない場合が多い。そこで本発明では、次のステップＳ４において上記通過領域を適切に簡素化している。
【００２０】
ステップＳ４では、ステップＳ３で求めたロボットの通過領域を複数の小通過領域に分割する。分割の方法としては、ロボットの特定の軸の値の範囲に基づいて行う方法が考えられる。例えば図３の例では、第１〜第３の経路それぞれを１つの小通過領域とすることができる。なおロボット３２が架台３４近傍に接近（下降）してからワーク３８を把持して上昇するまでの間や、工作機械３６近傍に接近（下降）してからワークを工作機械内に配置して上昇するまでの間は、ロボット３２やそのハンド４０は比較的複雑かつ細かい動作をすることが多い。そのような場合に、細かい動作の一つ一つについてロボットの特定の軸の値の範囲に基づいて小通過領域に分割すると、小通過領域の個数が増大して計算処理に時間がかかる場合もある。そこでこのような場合には、「架台近傍でのワークの把持動作」や「工作機械近傍でのワークの配置（解放）動作」を１つの作業単位として、それぞれの一連の動作においてロボットが通過する領域を１つの小通過領域（図示例では作業領域４８及び５０）として扱うようにしてもよい。
【００２１】
次のステップＳ５では、ステップＳ４で分割生成された複数の小通過領域の各々を包括すなわち完全に覆う１つ又は複数の基本形状を自動的に求め、各小通過領域のための包括立体として設定する。なお基本形状は直方体、多角柱、円柱、楕円柱、円錐、角錐、球及び楕円球等の、比較的少ないパラメータ（例えば円柱であれば半径と長さ、球であれば半径のみ）で特定可能な立体形状を意味する。例えば図３の例では、上述の作業領域４８及び５０の包括立体５２及び５４をそれぞれ１つの球とし、両作業領域間を結ぶ３つの動作経路４２、４４及び４６の包括立体５６、５８及び６０をそれぞれ１つの円柱としている。但し、小通過領域の形状によっては、上記球の代わりに楕円球を使用したり、上記円柱の代わりに角柱を使用したりする方が適切な場合もあり、要するに包括立体を構成する基本形状は小通過領域の形状によって適宜選定可能である。
【００２２】
また小通過領域の形状によっては、１つの小通過領域を複数の基本形状からなる包括立体で覆うことも可能である。ここで任意の形状の小通過領域から、１つ又は複数の基本形状の組み合わせを算出する方法については、既知の方法又はアルゴリズムを使用することが可能であり、例えば「ゲームプログラミングのためのリアルタイム衝突判定（Real-Time Collision Detection）」（著者：Christer Ericson、出版社：ボーンデジタル、発行２００５年１１月）等がある。このようにして得られた各包括立体は、計算処理効率向上のために簡素化されたロボットの動作許容領域として扱われる。
【００２３】
ステップＳ５では、包括立体を構成する個々の基本形状の大きさが最小となるような組み合わせを算出することによって、必要以上に動作許容領域が大きくならないようし、動作許容領域内におけるロボットの存在又は通過を検出するための計算量を小さくすることが可能となる。また個々の基本形状の個数も最小化することができる。なお基本形状の個数の最少化と大きさの最小化とは必ずしも両立せず、例えば包括立体を構成する基本形状の数を増やすことによって該包括立体の全体の大きさを最小化できる場合もあり得るが、自動設定装置の処理能力の観点からは、先ず基本形状の個数を最少化し、その上で各基本形状の大きさを最小化することが好ましい。基本形状の大きさの最小化及び個数の最少化自体は、既知の方法又はアルゴリズムにより行うことができる。
【００２４】
従来は、ロボットの周囲に安全柵等を設置しようとする場合、ロボットの到達可能範囲全体を囲むように設置していた。これに対して本願発明では、ロボットが所定の作業をするのに必要な空間を包含した最小限の大きさの動作許容領域を少ない計算量で求めることができるので、安全柵の設置範囲を小さくすることができる。これによって、ロボットを使用したシステムの設置面積を小さくすることが可能となる。また動作許容領域を最小化することにより作業者の侵入可能範囲が広がり、作業者の作業効率を高めることもできる。
【００２５】
但し、例えば図３の例の場合に、ロボット３２が工作機械３６の近傍の作業領域５０にて作業を行っている間は、架台３４の近傍の作業領域４８内に作業者が侵入しても作業者に危険は生じない。従って、ある時点においてロボットが存在していない動作許容領域（包括立体）については、作業者の侵入を許可してもよい。具体的には、ステップＳ６において、複数の包括立体の各々について、ロボットが侵入及び離脱するタイミングを教示プログラムから求め、次にステップＳ７において、各包括立体に対してロボットが侵入及び離脱するタイミングに相当する教示プログラムの行を取得して、その行の前後に、対応する包括立体が動作許容領域として有効か無効かを切り替える命令を自動的に挿入する。例えば、ロボット３２が工作機械３６近傍の作業領域５０内に存在している間は、作業領域５０を内包する包括立体５４を動作許容領域として有効にするとともに、架台３４近傍の作業領域４８を内包する包括立体５２（並びに他の包括立体５６、５８及び６０）は動作許容領域として無効にする。すなわちこの場合は、包括立体５４は危険領域であるとして作業者の侵入が制限されるのに対し、包括立体５２は危険領域とは扱われず、作業者が侵入して作業を行うことができる。同様に包括立体５６、５８及び６０についても、包括立体５４が動作許容領域として有効である間は、動作許容領域として無効にされ、作業者が侵入できる。このようにすれば、作業者の安全を確保しつつ、ロボットと作業者が同一のロボットシステム内で同時に作業を進めることができるようになる。
【００２６】
なお隣接する動作許容領域は、実際の（厳密な）通過領域間を漏れなく内包できるように、お互いに重複した部分を持つようにする必要がある。例えば、現在有効となっている動作許容領域５４内にいるロボットが、現在無効となっている隣接した動作許容領域６０に移動する場合、先ず双方の領域が重複した部分６２にロボットが移動した後に、動作許容領域６０を有効にするとともに動作許容領域５４を無効にすることで、隣接する動作許容領域間をロボットが行き来できるようになる。従って重複している部分６２については、該部分が属している動作許容領域の少なくとも一方が有効であれば、有効が優先されることになる。
【図面の簡単な説明】
【００２７】
【図１】本発明に係るロボットの動作許容領域自動設定装置の概略構成を示すブロック図である。
【図２】本発明に係る動作許容領域自動設定装置の処理の流れを示すフローチャートである。
【図３】ロボットの動作許容領域の設定例を示す図である。
【符号の説明】
【００２８】
１０    動作許容領域自動設定装置
２２    表示部
３０    ガイドレール
３２    ロボット
３４    架台
３６    工作機械
３８    ワーク
４２、４４、４６    動作経路
４８、５０    作業領域
５２、５４、５６、５８、６０    包括立体
【図１】
2010155310.tif 000003
【図２】
2010155310.tif 000004
【図３】
2010155310.tif 000005