(57)【特許請求の範囲】
【請求項１】
複数の作業点に対する作業ロボットの移動速度を含む動作経路データの作成方法において、
動作経路全体を構成する複数の個別動作経路を構成する作業点間で干渉を回避するための中継点における許容範囲を設定し、前記中継点に対する前記作業ロボットの前記許容範囲を含む前記動作経路全体を複数形成するステップと、
前記作業点に移動する前記作業ロボットに対して複数の移動速度を設定し、形成された各動作経路全体の個別動作経路毎に、各移動速度に対して前記作業点への移動時間を算出するステップと、
前記形成された各動作経路全体の個別動作経路毎に、前記移動時間が最短となる前記移動速度を選択するステップと、
前記形成された各動作経路全体の個別動作経路毎に、選択された前記移動速度で動作する前記作業ロボットの干渉の有無を判定するステップと、
前記形成された各動作経路全体毎に判定された前記作業ロボットの干渉の有無の結果と前記形成された各動作経路全体の個別動作経路毎に選択された最短となる移動速度に対する移動時間を合計した前記動作経路全体のサイクルタイムとを記録した記録テーブルを作成するステップと、
前記記録テーブルから、前記作業ロボットに対する干渉が無く、かつ前記サイクルタイムが最短となる前記動作経路全体及び前記選択された最短となる移動速度の組合せを決定して、前記組合せに基づいて動作経路データを作成するステップと、
を備え、
前記移動時間を算出するステップでは、前記作業ロボットが前記作業点に到達するために要する時間及び前記作業ロボットが前記作業点に到達してから前記作業ロボットの振動が停止するまでに要する時間に基づいて前記移動時間を計算する
ことを特徴とする作業ロボットの動作経路データ作成方法。
【請求項２】
複数の作業点に対する作業ロボットの移動速度を含む動作経路データの作成装置において、
動作経路全体を構成する複数の個別動作経路を構成する作業点間で干渉を回避するための中継点における許容範囲を設定し、前記作業点に対する前記作業ロボットの前記許容範囲を含む前記動作経路全体を複数形成する動作経路探索部と、
前記作業点に移動する前記作業ロボットに対して複数の移動速度を設定し、形成された各動作経路全体の個別動作経路毎に、各移動速度に対して前記作業点への移動時間を計算する移動時間計算部と、
前記形成された各動作経路全体の個別動作経路毎に、前記移動時間が最短となる前記移動速度を選択する移動速度選択部と、
前記形成された各動作経路全体の個別動作経路毎に、選択された前記移動速度で動作する前記作業ロボットの干渉の有無を判定する干渉判定部と、
を備え、
移動時間計算部は、前記作業ロボットが前記作業点に到達するために要する時間及び前記作業ロボットが前記作業点に到達してから前記作業ロボットの振動が停止するまでに要する時間に基づいて前記移動時間を計算し、
前記形成された各動作経路全体毎に判定された前記作業ロボットの干渉の有無の結果と前記形成された各動作経路全体の個別動作経路毎に求めた選択された最短となる移動速度に対する移動時間を合計した前記動作経路全体のサイクルタイムとを記録した記録テーブルを作成し、前記記録テーブルから、前記作業ロボットに対する干渉が無く、かつ前記サイクルタイムが最短となる前記動作経路全体及び前記選択された最短となる移動速度の組合せを決定して、前記組合せに基づいて動作経路データを作成する
ことを特徴とする作業ロボットの動作経路データ作成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数の作業点に対する作業ロボットの移動速度を含む動作経路データの作成方法および装置に関する。
【０００２】
【従来の技術】
従来、製造ラインに設置された作業ロボットを直接操作させて作業姿勢のティーチングを行おうとすると、作業ロボットの操作を熟知したオペレータが製造ラインの現場で作業を行わなければならないため、その分、作業が非効率的となってしまう。また、このような作業は、製造ラインを停止させた状態で行う必要があるため、当該製造ラインの稼働率も低下してしまう。
【０００３】
そこで、近時、前記ティーチング作業の効率化を図るため、あるいは、前記製造ラインの稼働率を向上させるために、オフラインによるティーチングが行われている。すなわち、コンピュータ上に作業ロボット並びに作業対象物であるワークおよび周辺構造物のモデルを構築し、このモデルを用いてティーチングデータを作成した後、前記ティーチングデータを現場の作業ロボットに供給することにより、製造ラインを停止させることなく、ティーチングデータを効率的に作成することが可能となる。
【０００４】
ところで、このようなオフライティーチングにおいては、例えば、オペレータが複数の作業点を指示することにより、周辺構造物や作業ロボットの仕様を考慮して、コンピュータが作業ロボットの動作経路データを自動計算することも可能になってきている。
【０００５】
しかしながら、ティーチングデータは、動作経路データのみから構成されるのではなく、作業ロボットの移動速度を含む動作仕様パラメータが各動作経路データに付与されて初めて完成されたデータとなるものである。従来、これらの動作仕様パラメータは、オペレータの経験や試行錯誤に基づいて設定している。
【０００６】
この場合、移動速度に係る動作仕様パラメータは、作業ロボットのサイクルタイムを決定する重要な因子である。しかしながら、移動速度を作業ロボットの仕様に基づく最大速度に設定しても、必ずしもサイクルタイムが短縮されるとは限らない。
【０００７】
例えば、エンドエフェクタの移動速度を速く設定すると、エンドエフェクタを所望の作業点に正確に停止させるための時間が長くなる一方、遅く設定し過ぎると、作業点に到達する時間が長くなってしまう。また、複数の作業ロボットが近接配置されるような製造ラインにおいては、作業ロボットの移動速度によって、同じ動作域を有する作業ロボット間で干渉の生じるおそれがあるため、最速の移動速度を最適な移動速度として選択できない場合がある。
【０００８】
【発明が解決しようとする課題】
本発明は、上記の不具合を解決するためになされたものであり、作業ロボットの最適な移動速度を自動的に設定することができ、これによってサイクルタイムの短縮を図ることができる作業ロボットの動作経路データ作成方法および装置を提供することを目的とする。
【０００９】
前記の課題を解決するために、本発明方法では、複数の作業点に対する作業ロボットの移動速度を含む動作経路データの作成方法において、
動作経路全体を構成する複数の個別動作経路を構成する作業点間で干渉を回避するための中継点における許容範囲を設定し、前記中継点に対する前記作業ロボットの前記許容範囲を含む前記動作経路全体を複数形成するステップと、
前記作業点に移動する前記作業ロボットに対して複数の移動速度を設定し、形成された各動作経路全体の個別動作経路毎に、各移動速度に対して前記作業点への移動時間を算出するステップと、
前記形成された各動作経路全体の個別動作経路毎に、前記移動時間が最短となる前記移動速度を選択するステップと、
前記形成された各動作経路全体の個別動作経路毎に、選択された前記移動速度で動作する前記作業ロボットの干渉の有無を判定するステップと、
前記形成された各動作経路全体毎に判定された前記作業ロボットの干渉の有無の結果と前記形成された各動作経路全体の個別動作経路毎に選択された最短となる移動速度に対する移動時間を合計した前記動作経路全体のサイクルタイムとを記録した記録テーブルを作成するステップと、
前記記録テーブルから、前記作業ロボットに対する干渉が無く、かつ前記サイクルタイムが最短となる前記動作経路全体及び前記選択された最短となる移動速度の組合せを決定して、前記組合せに基づいて動作経路データを作成するステップと、
を備え、
前記移動時間を算出するステップでは、前記作業ロボットが前記作業点に到達するために要する時間及び前記作業ロボットが前記作業点に到達してから前記作業ロボットの振動が停止するまでに要する時間に基づいて前記移動時間を計算することを特徴とする。
【００１０】
この場合、探索された動作経路で作業ロボットを各移動速度により動作させ、そのときの移動時間が最短となるように移動速度を決定することにより、移動速度を含む動作経路データを自動作成することができる。
【００１１】
なお、上記のようにして選択された移動速度で作業ロボットを動作させた場合の干渉の有無を判定することにより、干渉のない最適な移動速度を選択することができる。
【００１２】
また、本発明装置では、複数の作業点に対する作業ロボットの移動速度を含む動作経路データの作成装置において、
動作経路全体を構成する複数の個別動作経路を構成する作業点間で干渉を回避するための中継点における許容範囲を設定し、前記作業点に対する前記作業ロボットの前記許容範囲を含む前記動作経路全体を複数形成する動作経路探索部と、
前記作業点に移動する前記作業ロボットに対して複数の移動速度を設定し、形成された各動作経路全体の個別動作経路毎に、各移動速度に対して前記作業点への移動時間を計算する移動時間計算部と、
前記形成された各動作経路全体の個別動作経路毎に、前記移動時間が最短となる前記移動速度を選択する移動速度選択部と、
前記形成された各動作経路全体の個別動作経路毎に、選択された前記移動速度で動作する前記作業ロボットの干渉の有無を判定する干渉判定部と、
を備え、
移動時間計算部は、前記作業ロボットが前記作業点に到達するために要する時間及び前記作業ロボットが前記作業点に到達してから前記作業ロボットの振動が停止するまでに要する時間に基づいて前記移動時間を計算し、
前記形成された各動作経路全体毎に判定された前記作業ロボットの干渉の有無の結果と前記形成された各動作経路全体の個別動作経路毎に求めた選択された最短となる移動速度に対する移動時間を合計した前記動作経路全体のサイクルタイムとを記録した記録テーブルを作成し、前記記録テーブルから、前記作業ロボットに対する干渉が無く、かつ前記サイクルタイムが最短となる前記動作経路全体及び前記選択された最短となる移動速度の組合せを決定して、前記組合せに基づいて動作経路データを作成することを特徴とする。
【００１４】
【発明の実施の形態】
図１は、本発明の作業ロボットの動作経路データ作成方法および装置が適用される実施形態であるオフラインティーチング装置１０と、このオフラインティーチング装置１０によって作成されたティーチングデータが適用される多関節ロボット装置１２との概略構成を示す。
【００１５】
多関節ロボット装置１２は、ベース１４に対して複数の回動自在なリンク１６、１８および２０を介して連結される溶接ガン等のエンドエフェクタ２２を備え、ロボット制御部２４に設定されたティーチングデータに従って動作する。なお、多関節ロボット装置１２およびロボット制御部２４は、現場の製造ラインに配設される。
【００１６】
オフラインティーチング装置１０は、コンピュータによって構成されるものであり、図２に示すように、制御部２６は、オフラインティーチング装置１０の全体の制御を行うＣＰＵ２８と、記憶部であるＲＯＭ３０およびＲＡＭ３２と、ハードディスクドライブ３４によってデータが読み書きされるハードディスク３６と、フレキシブルディスクやコンパクトディスク等の外部記録媒体３８に対してティーチングデータ等の読み書きを行う記録媒体ドライブ４０と、多関節ロボット装置１２の動作経路データを作成する動作経路データ作成回路４２と、作成された動作経路データに基づいて多関節ロボット装置１２の動作シミュレーションを行うシミュレーション回路４４とを備える。なお、制御部２６には、オペレータによるティーチング作業の補助、シミュレーション画像の表示等を行うためのディスプレイ４６が描画制御回路４８を介して接続されるとともに、インタフェース５０を介してキーボード５２およびマウス５４が接続される。
【００１７】
ハードディスク３６には、多関節ロボット装置１２の動作経路データを作成するための動作経路作成プログラム５６と、多関節ロボット装置１２、作業対象物およびその他の設備に係る形状データ５８と、多関節ロボット装置１２の各軸の動作仕様を含むロボット仕様データ６０と、動作経路データの最適化処理の対象データであるパラメータ６２と、パラメータ６２に関連して設定される探索条件データ６４と、動作経路データの作成時に生成される処理結果データ６６とが格納される。
【００１８】
ここで、パラメータ６２としては、多関節ロボット装置１２の移動速度に係る移動速度パラメータ、干渉物を回避するために設定した中継点に対する多関節ロボット装置１２の動作経路に係る経路パラメータ、多関節ロボット装置１２のエンドエフェクタ２２の移動速度を最適化処理の基準とするか、リンク１６、１８、２０間の各軸の移動速度を最適化処理の基準とするかを選択する移動基準パラメータ等がある。
【００１９】
また、移動速度パラメータに関連する探索条件データ６４は、探索する移動速度の調整量を設定し、経路パラメータに関連する探索条件データ６４は、干渉物を回避すること等を目的として予めオペレータにより設定された中継点を中心とする動作経路の許容範囲を半径データとして設定する。移動基準パラメータに関連する探索条件データ６４は、移動速度をエンドエフェクタ２２を基準とするか各軸を基準とするかを選択するデータとして設定する。
【００２０】
動作経路データ作成回路４２は、図３に示すように、ロボット仕様データ６０、パラメータ６２および探索条件データ６４に基づき、可能なパラメータ６２の組合せを生成するパラメータ組合せ生成部６８と、生成されたパラメータ６２の各組合せに従った多関節ロボット装置１２の動作命令からなる動作計画を作成する動作計画作成部７０と、動作計画に基づき、形状データ５８を用いて多関節ロボット装置１２の動作経路を探索する動作経路探索部７２と、多関節ロボット装置１２を探索された動作経路に従って移動させた際の移動時間を計算する移動時間計算部７４と、移動時間を最短時間とする最適なパラメータ６２を決定する最適パラメータ決定部７６（移動速度選択部、干渉判定部）と、決定されたパラメータ６２に基づいて動作経路データを作成する動作経路データ作成部７８とを備える。
【００２１】
本実施形態のオフラインティーチング装置１０は、基本的には以上のように構成されるものであり、次に、その動作について図４および図５に示すフローチャートに従って説明する。
【００２２】
動作経路データの作成に先立ち、ハードディスク３６から動作経路作成プログラム５６を読み込み、動作経路データ作成回路４２にロードする。次いで、多関節ロボット装置１２、作業対象物およびその他の設備に係る形状データ５８と、ロボット仕様データ６０である多関節ロボット装置１２の各軸の最高速度、最大加速度、可動範囲、ロボット形式等のデータとをハードディスク３６から読み込む（ステップＳ１）。また、動作経路データの最適化処理を行うためのパラメータ６２と、パラメータ６２に対して設定される探索条件データ６４とをハードディスク３６から読み込む（ステップＳ２）。
【００２３】
次に、動作経路データ作成回路４２を構成するパラメータ組合せ生成部６８は、読み込んだパラメータ６２および探索条件データ６４から、可能なパラメータ６２の組合せを生成する（ステップＳ３）。例えば、移動速度パラメータおよび探索条件データ６４に従って複数の移動速度が設定され、経路パラメータおよび探索条件データ６４に従って作業点間の中継点を中心とする動作経路の許容範囲である複数の半径が設定され、移動基準パラメータおよび探索条件データ６４に従って、移動速度の対象をエンドエフェクタ２２とする場合と、各軸とする場合とが設定され、これらから可能なパラメータ６２の組合せが生成される。
【００２４】
以上のようにして生成されたパラメータ６２の可能な組合せに対して、動作計画作成部７０は、多関節ロボット装置１２の動作命令として設定される動作計画を作成する（ステップＳ４）。
【００２５】
次に、動作経路探索部７２は、動作経路作成プログラム５６に基づき、ハードディスク３６から読み込んだ形状データ５８と、オペレータによって設定された作業対象物に対する作業点データであるエンドエフェクタ２２の位置および姿勢とから、多関節ロボット装置１２の動作経路の探索を行う（ステップＳ５）。例えば、図６に示すように、設定した作業点Ｄ１へエンドエフェクタ２２を移動させる動作経路Ｐ１の探索、作業点Ｄ１から形状データ５８によって生成される干渉物８０を回避した中継点Ｍへエンドエフェクタ２２を移動させる動作経路Ｐ２の探索、中継点Ｍから次の作業点Ｄ２へエンドエフェクタ２２を移動させる動作経路Ｐ３の探索、作業点Ｄ２からエンドエフェクタ２２を引き抜く動作経路Ｐ４の探索が行われる。
【００２６】
動作経路が探索された後、動作計画作成部７０において作成された各パラメータ６２の組合せに対する動作計画に従い、最短移動時間で作業を行うことのできる多関節ロボット装置１２の最適移動速度の探索が行われる（ステップＳ６）。
【００２７】
この場合、移動時間計算部７４は、動作経路探索部７２において探索された動作経路を読み込み（ステップＳ６ａ）、先ず、ｉ＝１として動作経路Ｐ１を選択する（ステップＳ６ｂ、Ｓ６ｃ）。次いで、多関節ロボット装置１２の移動速度Ｖを最大移動速度Ｖｍａｘに設定し（ステップＳ６ｄ）、動作経路Ｐ１における多関節ロボット装置１２を動作計画に従って動作させることにより、動作経路Ｐ１での移動時間を計算する（ステップＳ６ｅ）。
【００２８】
ここで、多関節ロボット装置１２においては、移動速度Ｖを最大移動速度Ｖｍａｘに設定したとしても、必ずしも最短時間で所望の作業点まで移動できるとは限らない。すなわち、図７に示すように、多関節ロボット装置１２を最大移動速度Ｖｍａｘに設定した場合、停止時におけるエンドエフェクタ２２の振動の影響があるため、移動速度Ｖｘ（＜Ｖｍａｘ）での移動時間Ｔｘよりも長い移動時間Ｔｍａｘを要してしまうことがある。
【００２９】
そこで、移動速度Ｖを探索条件データ６４として設定される所定の調整量Ｖｃを用いて一定量減速させ（Ｖ＝Ｖ−Ｖｃ）、移動速度Ｖが下限値Ｖｌｏｗとなるまでそれぞれ移動時間の計算を行う（ステップＳ６ｅ、Ｓ６ｆ、Ｓ６ｇ）。
【００３０】
上記のようにして、各移動速度に対する移動時間を計算した後、最短の移動時間が得られる移動速度を当該動作経路Ｐ１に対する移動速度として選択する（ステップＳ６ｈ）。
【００３１】
同様にして、ｉ＝ｉ＋１とし（ステップＳ６ｉ）、全ての動作経路Ｐｉに対して移動速度の選択を行う（ステップＳ６ｊ）。
【００３２】
次に、各動作経路に対して、選択された移動速度での干渉の有無をチェックする（ステップＳ７）。すなわち、例えば、多関節ロボット装置１２に対して隣接する他の多関節ロボット装置１２が配設されているような場合、選択された移動速度によっては、共通動作領域において干渉が生じる場合がある。そこで、図８に示すように、当該動作計画に係るパラメータ組合せ番号と、それに対するステップＳ７での干渉チェックの結果と、その動作計画が有効であるか否かを干渉チェックの結果に基づいて設定したフラグと、各作業点間を移動させたときのサイクルタイムとからなる記録テーブルを作成する（ステップＳ８）。サイクルタイムは、ステップＳ６ｊにおける各動作経路で求められた移動時間を加算して得られる。
【００３３】
同様にして、全てのパラメータ６２の組合せに対する移動速度の探索が終了するまで、各動作計画に対する移動速度の探索を行う（ステップＳ９）。
【００３４】
なお、移動時間は、パラメータ６２である移動基準パラメータの探索条件データ６４に従い、多関節ロボット装置１２のエンドエフェクタ２２に移動速度Ｖを設定する場合と、各軸に移動速度Ｖを設定する場合とに対して、それぞれ計算することができる。
【００３５】
また、パラメータ６２の中には、図６に示すように、干渉物８０を回避するための中継点Ｍに点線で示す半径ｒからなる許容範囲を設定する経路パラメータがある。この経路パラメータの設定により、例えば、動作経路Ｐ２からエンドエフェクタ２２が許容範囲に到達した後、中継点Ｍを経由することなく動作経路Ｐ３に移動するように設定することができる。この場合、一点鎖線で示すように、エンドエフェクタ２２を中継点Ｍに正確に到達させる必要がなく、その分、移動速度を高速に設定することができる。従って、経路パラメータによっても移動時間が変化することになる。
【００３６】
以上のようにして、各パラメータ６２の組合せに対する移動速度が探索され、図８に示す記録テーブルが作成された後、動作経路に干渉がなく、且つ、サイクルタイムが最も短くなるパラメータ６２の組合せを決定する（ステップＳ１０）。図８では、パラメータ組合せ番号２が選択されている。
【００３７】
最後に、ステップＳ１０で決定された各動作経路における最適移動速度を含む最適なパラメータの組合せに基づき、動作経路データが作成される（ステップＳ１１）。
【００３８】
動作経路データは、処理結果データ６６としてハードディスク３６に設定された後、シミュレーション回路４４は、動作経路データを用いて多関節ロボット装置１２の動作シミュレーションを行う。シミュレーションによって動作の確認された動作経路データは、記録媒体ドライブ４０を介して外部記録媒体３８に記録された後、ティーチングデータとしてロボット制御部２４にダウンロードされ、多関節ロボット装置１２の制御に供される。
【００３９】
【発明の効果】
以上のように、本発明によれば、作業ロボットの作業点に対する移動時間を最短にできる最適な移動速度をオペレータの作業によらず自動設定することができ、これによって、サイクルタイムの短縮を図ることができる。
【００４０】
また、移動速度の探索に際して、移動速度の違いによる干渉の有無をチェックすることにより、移動時間を最短とすることのできる有効な移動速度を決定することができる。従って、信頼性の高い動作経路データを得ることができる。
【図面の簡単な説明】
【図１】本実施形態のオフラインティーチング装置および多関節ロボット装置の概略構成図である。
【図２】本実施形態のオフラインティーチング装置の回路構成図である。
【図３】本実施形態のオフラインティーチング装置における動作経路データ作成回路のブロック図である。
【図４】本実施形態のオフラインティーチング装置における動作経路データ作成方法のフローチャートである。
【図５】本実施形態のオフラインティーチング装置における動作経路データ作成方法のフローチャートである。
【図６】本実施形態のオフラインティーチング装置における動作経路の説明図である。
【図７】本実施形態のオフラインティーチング装置における移動速度と移動時間との関係説明図である。
【図８】本実施形態のオフラインティーチング装置において作成される記録テーブルの説明図である。
【符号の説明】
１０…オフラインティーチング装置  １２…多関節ロボット装置
２４…ロボット制御部              ２６…制御部
３６…ハードディスク              ４２…動作経路データ作成回路
４４…シミュレーション回路        ５６…動作経路作成プログラム
５８…形状データ                  ６０…ロボット仕様データ
６２…パラメータ                  ６４…探索条件データ
６６…処理結果データ              ６８…パラメータ組合せ生成部
７０…動作計画作成部              ７２…動作経路探索部
７４…移動時間計算部              ７６…最適パラメータ決定部
７８…動作経路データ作成部        ８０…干渉物
【図１】
0004124583.tif 000002
【図２】
0004124583.tif 000003
【図３】
0004124583.tif 000004
【図４】
0004124583.tif 000005
【図５】
0004124583.tif 000006
【図６】
0004124583.tif 000007
【図７】
0004124583.tif 000008
【図８】
0004124583.tif 000009