JP2003103484A - ロボットのインターロック設定方法 - Google Patents
ロボットのインターロック設定方法Info
- Publication number
- JP2003103484A JP2003103484A JP2001299634A JP2001299634A JP2003103484A JP 2003103484 A JP2003103484 A JP 2003103484A JP 2001299634 A JP2001299634 A JP 2001299634A JP 2001299634 A JP2001299634 A JP 2001299634A JP 2003103484 A JP2003103484 A JP 2003103484A
- Authority
- JP
- Japan
- Prior art keywords
- robot
- interlock
- mutual interference
- robots
- interference
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Numerical Control (AREA)
- Manipulator (AREA)
- Safety Devices In Control Systems (AREA)
Abstract
ロボットに途中停止または動作速度低下が発生した場合
でも、複数のロボット同士が相互干渉を発生することが
なく、かつ、相互干渉のおそれがないときには他のロボ
ットは動作を続行させる。 【解決手段】第1の多関節ロボット50aを制御するロ
ボット動作プログラムAには、干渉エリア166bに進
入するより前段階の時刻T1にインターロック命令を実
行するように設定し、第2の多関節ロボット50bを制
御するロボット動作プログラムBには、干渉エリア16
6aに進入するより前段階の時刻T2にインターロック
命令を実行するように設定する。それぞれのインターロ
ック命令は、共有メモリ上のインターロックフラグが
「off」であるときにロボットの動作を続行させ、イン
ターロックフラグを「on」に設定する。
Description
ーロック設定方法に関し、特に、複数のロボット同士の
干渉に関する検証を容易にするためのロボットのインタ
ーロック設定方法に関する。
ボットを直接操作させて作業姿勢のティーチングを行お
うとすると、多関節ロボットの操作を熟知したオペレー
タが製造ラインの現場で作業を行わなければならないた
め、その分、作業が非効率的となってしまう。また、そ
の作業は、製造ラインを停止させた状態で行う必要があ
るために当該製造ラインの稼動率も低下してしまう。
化を図るため、あるいは、前記製造ラインの稼動率を向
上させるために、オフラインによるティーチング(オフ
ラインティーチング)が行われている。すなわち、コン
ピュータ上に多関節ロボット並びに作業対象物であるワ
ークおよび周辺構造物のモデルを構築し、このモデルを
用いてティーチングデータを作成した後、前記ティーチ
ングデータを現場の多関節ロボットに供給するようにす
れば、ティーチングデータの作成中に製造ラインを停止
させる必要がない。
性向上などを目的として、一度の工程において複数の多
関節ロボットを採用し、これらの多関節ロボットを同時
かつ集中的に動作させる作業形態が増えている。特に、
複雑な形状のワークに対して作業を行う場合には、多関
節ロボットを密集して配置させることもある。
他の障害物との干渉を回避することは当然ながら、多関
節ロボット同士の干渉も回避するように動作プログラム
を設定しなければならない。
ットをモデル化して表しておき、コンピュータによる仮
想空間上で同タイミングで動作させて干渉し合う箇所を
調査する手法(特開平10−264058号公報参照)
がある。この手法では、干渉し合う箇所を回避するステ
ップを設定したり、プログラムにインターロック情報を
付加することにより干渉を回避するようにしている。
の多関節ロボットが同時に動作を開始し、規定時間通り
に動作を進行させる事例だけを想定しているので、何ら
かの理由により、一方の多関節ロボットが停止した場合
や動作タイミングが変わった場合には相互干渉が発生す
るおそれがある。また、好適なインターロック設定方法
がないために、たとえ実際には干渉が発生しない場合で
あっても、その判断ができないことから2台の多関節ロ
ボットを緊急停止せざるを得ない。
に特有の問題ではなく、例えば無人搬送ロボット同士の
搬送路上の移動動作等についても同様の干渉のおそれが
ある。
たものであり、複数のロボットが同時に動作する際に、
相互の動作時間のずれを考慮し、1台のロボットに途中
停止または動作速度低下が発生したときでも、複数のロ
ボット同士が相互干渉を発生することがなく、かつ、相
互干渉のおそれがないときには他のロボットは動作を続
行することを可能にするロボットのインターロック設定
方法を提供することを目的とする。
インターロック設定方法は、複数のロボットに作業を行
わせる際の前記ロボット同士の相互干渉を阻止するロボ
ットのインターロック設定方法において、一のロボット
の動作行程または動作時間毎に、他のロボットの複数の
動作行程または動作時間を対応させて相互干渉の有無を
確認する第1のステップと、前記ロボットを制御する動
作プログラムで、相互干渉を発生する動作行程または動
作時間の所定の前段階に、相互干渉を阻止するインター
ロックを設定する第2のステップとを有することを特徴
とする。
プログラムと前記他のロボットを制御する動作プログラ
ムとが共にアクセスすることが可能な共有メモリを用
い、前記インターロックは、最も早く前記前段階に到達
したロボットの動作プログラムが、前記共有メモリにイ
ンターロックフラグを設定するようにしてもよい。
発生する前記動作行程または前記動作時間の経過後に、
前記インターロックを解除するようにしてもよい。
グラムで、相互干渉を発生する前記動作行程または前記
動作時間のうち所定の短時間以内に発生するもの同士を
包括して干渉エリアとして処理するようにしてもよい。
または動作時間を示す第1座標軸と、前記第1座標軸に
対して非平行で、前記他のロボットの動作行程または動
作時間を示す第2座標軸とを有するグラフ上に、前記相
互干渉を発生する動作行程または動作時間をマークする
ようにしてもよい。
プログラムを、前記ロボットを表す仮想空間上のモデル
に対して適用し、シミュレーション動作を行うことによ
って動作の検証を行うようにしてもよい。
所定の動作行程または動作時間毎の組合せにより干渉の
有無を確認し、干渉が発生する箇所にはインターロック
を設定することができる。従って、複数のロボットが同
時に動作する際に、相互の動作時間のずれを考慮し、1
台のロボットに途中停止または動作速度低下が発生した
ときでも、複数のロボット同士が相互干渉を発生するこ
とがなく、かつ、相互干渉のおそれがないときには他の
ロボットは動作を続行させることができる。
ンターロック設定方法の実施の形態例を図1〜図15を
参照しながら説明する。
ロック設定方法は、基本的には、2台の多関節ロボット
の動作を所定間隔でサンプリングし、そのサンプリング
時間の組合せ毎に多関節ロボットの姿勢を求めて干渉の
有無を確認するものである。さらに、その結果に基づい
て、一方の多関節ロボットが途中停止した場合でも、相
互干渉が発生しないようにインターロックを設定する。
使用するオフラインティーチング装置10は、溶接用の
第1の多関節ロボット50a、第2の多関節ロボット5
0bおよび第3の多関節ロボット50cの動作のティー
チングを行うものであり、作成されたティーチングデー
タに基づき作業対象物に対して所望の作業を行うロボッ
ト装置12と連係されている。
多関節ロボット50a、50b、50cと、ティーチン
グデータに基づいて前記第1〜第3の多関節ロボット5
0a、50b、50cのそれぞれの動作制御を行うロボ
ット制御部22a、22b、22cとを備える。
グ装置10を構成する制御部14は、オフラインティー
チング装置10の全体の制御を行う制御手段としてのC
PU(コンピュータ)26と、記憶部であるROM28
およびRAM29と、ハードディスク34に対してデー
タのアクセスを行うハードディスクドライブ(HDD)
39と、モニタ16の画面上における描画制御を行う描
画制御回路30と、入力装置としてのキーボード18お
よびマウス20が接続されるインタフェース回路32
と、外部記録媒体36a(例えば、フレキシブルディス
クやコンパクトディスク等)を制御する記録媒体ドライ
ブ36とを有する。
関節ロボット50a、50b、50cの動作経路を設定
する機能等をもつ相互干渉検証プログラム35、および
図示しないOS等が格納されている。
ム35は、RAM29およびハードディスク34等から
データを読み込む機能を持つデータ読込み部100と、
データを書き込む機能を持つデータ書込み部102と、
第1〜第3の多関節ロボット50a、50b、50cの
姿勢データを3次元CADによって定義されているロボ
ットモデルに設定して描画する画像作成部106を有す
る。
るロボット姿勢設定コマンドと、描画コマンドとにより
API(Application Programming Interface)を用い
て多関節ロボットのモデルや、所定のグラフをモニタ1
6の画面に描画する機能を持つ。
記録した相互干渉結果記録を分析する機能をもつ相互干
渉結果分析部114と、相互干渉を回避するためのイン
ターロックをロボット動作プログラムに付加する機能を
もつインターロック設定部116を有する。
ータは、ロボット動作プログラム生成部108において
自動的にロボット動作プログラムに変換、生成されて相
互干渉確認部110に伝えられる。ロボット動作プログ
ラム生成部108では、オペレータの操作によって手動
的または半自動的にロボット動作プログラムを生成する
ことも可能である。
ト50a、50b、50cを制御するプログラムであ
り、それぞれの多関節ロボット50a、50b、50c
に対して個別のロボット動作プログラムが適用される。
このロボット動作プログラムは、ロボット制御部22
a、22b、22cにそれぞれロードされた後に実行さ
れれるが、制御部14において、シミュレーションに適
用して仮実行することも可能である。
ル等によって動作計画を計算する動作計画計算部110
aと、第1〜第3の多関節ロボット50a、50b、5
0c同士の相互干渉および他の障害物との干渉の有無を
検証する相互干渉計算部110bを有する。
ジュールによる任意時刻における第1〜第3の多関節ロ
ボット50a、50b、50cの姿勢を計算するロボッ
ト姿勢サンプリング部110cと、第1〜第3の多関節
ロボット50a、50b、50cのうち2台の多関節ロ
ボットの姿勢組合せの記憶領域を確保する姿勢組合せ部
110dと、ロボット動作プログラムをコンピュータ内
で実行するロボット動作実行部110eを有する。
をベースにしており、コンピュータプログラム上の仮想
空間において、第1〜第3の多関節ロボット50a、5
0b、50cをソリッドモデルとして表し、互いのモデ
ル同士が相互干渉を起こすか否かを検証するものであ
り、相互干渉の有無を判断するとともに、モニタ16の
画面上にその様子を模写的に表示する機能を持つ。
関節ロボットのモーション設計のためのソフトウェアで
あり、多関節ロボットの各軸の加減速度を決定する機能
等を持ち、ロボット動作データとしてロボット姿勢サン
プリング部110cに擬似的に与えるものである。
結果は相互干渉検証結果記録部112に伝えられ、第1
〜第3の多関節ロボット50a、50b、50cの姿勢
と、相互干渉判別結果と組合せの情報をデータ書込み部
102を介してハードディスク34にデータベース37
等の形式で記録する。
別結果と組合せの情報をデータ書込み部102から直接
的に読み込み、またはデータベース37としてデータ読
込み部100を介して読み込む。そしてこれらの情報を
分析し、その結果をインターロック設定部116に伝え
る。
渉を回避するためのインターロックをロボット動作プロ
グラムに付加し、相互干渉確認部110に再度伝える。
a、22b、22cは共有メモリ120を備えている。
この共有メモリ120は、各ロボット制御部22a、2
2b、22cで、ロボット制御部のCPU122が共有
メモリ120に書込みを行う度に、所定の割り込みプロ
グラムが実行されて、書込みを行った部分あるいは共有
メモリ120全体を他の全てのロボット制御部22a、
22b、22cへ転送する。そして、転送を受けた側で
もデータ受信割り込みプログラムが実行され、受信した
データを自身の共有メモリ120に書き込む。
示す形態等が利用可能である。
かけ上は自身のメモリ(図示せず)を示すように設定さ
れながら、実際にはリンクに接続した外部の記憶装置1
24に存在し、各ロボット制御部22a、22b、22
cがOSの機能により共有してアクセスできるようにし
たものである。
部14内のRAM29に設定し、ロボット制御部22
a、22b、22cから共通にアクセスできるようにし
たものである。
クトメモリアクセス)システムなどを採用してもよい。
0にはRAM29などのメモリアドレスと連続した同列
のメモリアドレスが割り当てられており、見かけ上、一
般のメモリと同様に扱うことが可能である。
ボット50a、50b、50cは全て同構造であり、取
付台である第1ベース54に対して、先端側に向かって
順に、第2ベース56、第1リンク58、第2リンク6
0、第3リンク62、第4リンク64およびガン着脱部
66が接続されている。先端のガン着脱部66にはガン
ユニット(エンドエフェクタ)68が接続されている。
心にして第1ベース54に対して旋回可能に軸支されて
いる。第1リンク58の基端部は水平軸である軸J2に
より第2ベース56に俯仰可能に軸支されている。ま
た、第2リンク60の基端部は水平軸である軸J3によ
り第1リンク58の先端部に揺動可能に軸支されてい
る。そして、第3リンク62は第2リンク60の先端側
に軸J4を共通の回転中心軸として接続されている。さ
らに、第4リンク64の基端部は軸J4に対して直角方
向の軸J5により第3リンク62の先端部に揺動可能に
軸支されている。ガン着脱部66は第4リンク64の先
端側に軸J6を共通の回転中心軸として接続されてい
る。
68はいわゆるC型溶接ガンであり、アーチ状のアーム
74の両端部には、軸J6に沿って開閉する一対の電極
70、72を有する。この電極70、72は閉状態では
軸J6上の溶接作業点(以下、TCP(Tool Center Po
int)という。)で図示しないワークに接触する。
する方向をベクトルZrとし、ベクトルZrに直交しガ
ンユニット68の外側に向く方向をベクトルXrとす
る。また、ベクトルXr、ベクトルZrに互いに直交す
る方向をベクトルYrとする。
72の開閉機構は、それぞれ図示しないアクチュエータ
により駆動され、TCPは軸J1〜J6のそれぞれの回
転角θ1〜θ6の値および第1〜第3の多関節ロボット
50a、50b、50cの各部寸法により決定される。
限らず、例えば図6に示すX型溶接ガン(共通の支軸に
軸支された開閉する一対のガンアームを備える溶接ガ
ン)68aであってもよい。
b、50cに関する座標計算および制御上の基準点とし
て、軸J1と軸J2とが交差する点を座標原点80とし
て規定し、この座標原点80を起点として、鉛直上向き
方向を高さZ、回転角θ1がθ1=0であるときの軸J
2の方向を奥行Y、高さZと奥行Yに垂直な方向を幅X
として表す。この高さZ、幅Xおよび奥行Yにより3次
元直交座標を示すものとする。
表示されるグラフ150は、第1および第2の多関節ロ
ボット50a、50bの相互干渉を検証するためのもの
であり、第1の多関節ロボット50aの動作時間を示す
第1座標軸152と、第1座標軸152に原点Oで直交
し、第2の多関節ロボット50bの動作時間を示す第2
座標軸154とによって構成されている。
0a、50bの動作時間は原点Oからのオフセットとし
て扱うものであるから、以下の説明では動作時間をオフ
セット量として表記する。
よって挟まれた領域である作図領域158には、第1お
よび第2の多関節ロボット50a、50bの相互のオフ
セット量について相互関係を示す相互動作線160が描
画されている。また、第1および第2の多関節ロボット
50a、50bの教示姿勢点P1〜P8(図8参照)を
示す行程線162が描画されている。
50a、50bが相互干渉を起こす箇所を示すマーク1
64と、これらのマーク164同士を包括して表す干渉
エリア166が表示されている。
た擬似ボタン168をマウス20に連動したマウスカー
ソル170によって指定(以下、クリックという。)す
ると、マーク164および干渉エリア166の表示を消
去して初期状態に戻すことができる。
2をクリックすると、2台の多関節ロボット50a、5
0bの各教示姿勢点P1〜P8における相互干渉の状態
を後述の姿勢記録テーブル200からデータとして読み
出して表示することができる。
ン174をクリックすると、2台の多関節ロボット50
a、50bの所定時間毎における相互干渉の状態を姿勢
記録テーブル200からデータとして読み出して表示す
ることができる。
6は、サンプリング間隔が1[sec]であることを表
すものであり、例えばサンプリング間隔が0.1[se
c]であるときには「Interval 0.1」と表
示される。
50aの動作を途中の教示姿勢点Pn(n=1、2、3
…)における姿勢を記録するパステーブル180は、
「ガンユニットの向き」欄180a、「TCPの位置」
欄180bおよび「各軸角度」欄180cから構成され
ており、「各軸角度」欄180cは回転角θ1〜θ6か
ら構成されている。
8によってパステーブル180が構成されている例を示
しているが、動作経路が最終的に初期位置である教示姿
勢点P1に戻るごとき経路であるときには最終の教示姿
勢点P8をP1に置き換えるとよい。
0b、50cについても同様のパステーブルが存在す
る。
0は、第1および第2の多関節ロボット50a、50b
についてオフセット量に応じた姿勢を記録したテーブル
である。この姿勢記録テーブル200は、パステーブル
180をより詳しく表現したもので、教示姿勢点Pn相
互間の姿勢についても記録しており、さらに第1および
第2の多関節ロボット50a、50bが相互干渉する姿
勢には干渉を示すチェックが記録されている。例えば、
図9のオフセット量4〜13において、多関節ロボット
50bについて記録されているチェックは、図7におけ
る干渉エリア166のうち干渉エリア166bの箇所に
おける相互干渉を示している。
よび「Pose_b_n」(n=1〜80)は、第1およ
び第2の多関節ロボット50a、50bの姿勢を示すデ
ータを簡略化して表記したものであり、実際にはパステ
ーブル180と同様にガンユニットの向き、TCPの位
置および各軸角度から構成されている。
ィーチング装置10、および相互干渉検証プログラム3
5を用いて、多関節ロボット50a、50b、50cの
相互干渉を検証する方法について図10〜図15を参照
しながら説明する。
ロボット50a、50bについて相互干渉を検証する方
法について説明する。
ボット動作プログラム生成部108が、パステーブル1
80などの必要なデータを読み込み、第1および第2の
多関節ロボット50a、50bについてそれぞれロボッ
ト動作プログラムを生成する。
ボット動作プログラムをロボット動作プログラムA、第
2の多関節ロボット50bを制御するロボット動作プロ
グラムをロボット動作プログラムBとする。
算部110aがパステーブル180とRCSモジュール
に基づいて第1および第2の多関節ロボット50a、5
0bの動作計画を生成する。この動作計画は、パステー
ブル180で表されている教示姿勢点Pn間を動作速度
などの条件によって補間するものである。
ロボット50a、50bの各80[sec]間の動作を
表し、それぞれ1[sec]毎にサンプリングした80
通りの姿勢によって構成されるものとする。
勢サンプリング部110cが、生成された動作計画か
ら、各サンプリング時刻、すなわち各オフセット量にお
ける第1および第2の多関節ロボット50a、50bの
ロボット姿勢データを計算する。つまり、各サンプリン
グ時刻におけるTCPや各回転角θ1〜θ6を計算して
記憶する。
生成部110dが、サンプリングした姿勢での総当たり
組合せを示す組合せデータ210(図11参照)を記録
するための記憶領域をRAM29上に確保する。
ット50a、50bについてサンプリングの数、例えば
第1の多関節ロボット50aの動作についてのサンプリ
ングの数がaであり、第2の多関節ロボット50bの動
作についてのサンプリングの数がbであれば、a×bの
メモリをRAM29にその記憶領域29aとして確保す
る。
模式的に示したものであり、第1の多関節ロボット50
aのサンプリング数(80)を横方向にとり、第2の多
関節ロボット50bのサンプリング数(80)を縦方向
にとることにより平面状に表している。
算部110bが生成された組合せの全てに対して干渉判
別計算を行う。
の組合せの全てに対して、前記ステップS3で計算した
動作姿勢を適用する。そして各動作の組合せについて、
3次元CADの標準的な機能により、第1の多関節ロボ
ット50aと第2の多関節ロボット50bとが干渉を発
生しているか否かを確認する。
せデータ210上の相当するメモリに干渉を示すフラグ
を記録する。図11に示す例では、黒丸「●」により該
フラグを表している。
ーブル200のチェック欄にも対応する箇所にチェック
を記録する。
証結果記録部112が干渉判別結果として組合せデータ
210とロボット姿勢を示す姿勢記録テーブル200と
をまとめて、データベース37としてハードディスク3
4に記録する。
ロボット50a、50bが動作する際の互いの干渉状況
を検証することができる。
づいて、相互干渉を検証するグラフを作成および表示
し、さらにロボット動作プログラムA、B中に相互干渉
を阻止するインターロックを設定する手順について図1
2〜図14を参照しながら説明する。
レータが所定の操作をすることにより、ハードディスク
34に記録したデータベース37をRAM29に再度読
み込む。
ベース37の組合せデータ210を表示するためのグラ
フ150の描画を開始する。
セット量を示す第1座標軸152と、第2の多関節ロボ
ット50bのオフセット量を示す第2座標軸154を描
画する(図7参照)。
には、適当な間隔でオフセット量を表す目盛りや時間表
示を付加する。
データ210を参照し、干渉する箇所を示すフラグを、
第1座標軸152と第2座標軸154で挟まれた作図領
域158の対応する場所にマーク164として表示す
る。つまり、グラフ150のうち、図11に模式的に表
した組合データ210とほぼ同形態の基本部分が作図さ
れる。
よび第2の多関節ロボット50a、50bの相互のオフ
セット量の関係を示す相互動作線160を表示する。
50a、50bは同時に動作を開始し、しかも途中で動
作を停止することがないので、相互動作線160は、図
7に示すように原点Oを基準として45°の傾斜をもつ
直線となる。より具体的には、第1の多関節ロボット5
0aの任意のサンプリングがn番目であるとき、第2の
多関節ロボット50bのサンプリングもn番目となるの
で、原点Oと点(n、n)を接続すれば相互動作線16
0が得られる。
150上に教示姿勢点P1〜P8を示す行程線162を
表示する。グラフ150はサンプリング時間つまりオフ
セット量を基準として作成しているので、教示姿勢点P
1〜P8の位置との関係を明らかにするために、行程線
162により関係を明示する。
渉を起こす箇所を示すマーク164のうち、互いに近い
距離にあるマーク164同士を包括して干渉エリア16
6として表示する。
区画165のうちマーク164が存在する区画165を
長方形の干渉エリア166として設定する。例えば、分
割された区画を第1および第2の多関節ロボット50a
の教示姿勢点P1〜P2の組合せとして表すと、図7に
示すように、区画165a等が干渉エリア166aとし
て設定される。また、隣り合う区画165同士がマーク
164を含んでいるときには、その隣り合う区画165
同士は一つの干渉エリア166として設定する。
150上の距離が適当な閾値内にあるものを包括して、
円、楕円または長方形などの形状で囲うようにしてもよ
い。
ことにより、分散しているマークをまとめて扱うことが
でき、しかも干渉エリア166は適当な数値(例えば中
心座標と半径)によって表すことができるので、解析を
行うときに処理しやすい。
表示されるだけでなく、図示しないプリンタによって印
刷され得ることはもちろんである。
渉結果分析部114がグラフ150上にマーク164お
よび干渉エリア166が存在するか、または組合せデー
タ210に干渉を示すフラグが存在するか否かを確認す
る。
07の結果により、マーク164またはフラグが1つで
も存在するならばステップS109へ移り、マーク16
4またはフラグが存在しないときはステップS111へ
移る。
ック設定部116が、干渉エリア166に進入する直前
または所定時間だけ前段階のロボット動作プログラム
A、Bに相互干渉を阻止するためのインターロックを設
定する。
50に適用する場合には、ロボット動作プログラムAで
は、干渉エリア166bに進入するより時間tだけ前段
階の時刻T1において、次に示すインターロック命令を
実行するように設定する。
説明する。図14においてステップS201は「chec
k();」、ステップS202は「while(flg[i]==on)」、
ステップS203は「wait();」、ステップS204は
「flg[i] = on;」に相当する。
ク設定を行うための前処理を行う。具体的には、インタ
ーロック停止を行うことを前提として、多関節ロボット
の動作速度を減速させるなどの処理を行う。
ーロックフラグを示す変数「flg[i]」の状態を調べ、
「flg[i]」が「on」である最中はステップS203へ移
り、「on」以外、つまり「off」であるときには次の処
理ステップS204に移る。
[i]」は、「on」または「off」の値だけ受けつける2値
変数であり、前記共有メモリ120上に配置されてい
る。
「i」は干渉エリア166の番号に対応した整数を示し
ている。例えば、干渉エリア166のうち干渉エリア1
66bが「1」と採番されているものとすれば、この干
渉エリア166bについてインターロック命令を実行す
るときには「i」は「1」に設定しておくものとする。
ットを一時停止させる処理を行う。
「flg[i]」に「on」を設定する。
プログラムBについても、干渉エリア166bに進入す
るより時間tだけ前段階の時刻T2に設定する。また、
干渉エリア166b以外の他の干渉エリア166につい
ても同様にしてインターロック命令を設定する。
て、インターロック設定部116が、干渉エリア166
から脱した直後または所定時間だけ後段階のロボット動
作プログラムA、Bにインターロックを解除する命令を
設定する。
干渉エリア166bから脱した直後の時刻T3におい
て、変数「flg[i]」に「off」を設定する命令を付加す
る。
ト動作プログラムBについても、干渉エリア166bか
ら脱した直後の時刻T4に設定する。また、干渉エリア
166b以外の他の干渉エリア166についても同様に
してインターロックの解除命令を設定する。
前記ステップS2およびステップS3と同様に動作計画
およびロボット姿勢データを計算、生成する。
たロボット動作プログラムA、Bおよび動作計画に基づ
いて、第1および第2の多関節ロボット50a、50b
のシミュレーション動作を行う。すなわち、ロボット動
作実行部110eの機能により、第1および第2の多関
節ロボット50a、50bを仮想空間状においてモデル
として表してコンピュータによりシミュレーション動作
を行って、動作の検証を行う。
び第2の多関節ロボット50a、50bの動作を示す相
互動作線160はマーク164および干渉エリア166
に接しないように設定されている。従って、正常の動作
をシミュレーションして観察するようにしても、インタ
ーロック命令の適否を判断することができない。このこ
とから、適当な手段により、第1または第2の多関節ロ
ボット50a、50bのいずれか一方を途中停止させる
などして、意図的に干渉エリア166に進入させるよう
するものとする。
ック命令が、シミュレーション動作おいて作用する様子
について図15を参照しながら説明する。
160は、モニタ16の画面上に表示されたグラフ15
0(図13参照)において、第1および第2の多関節ロ
ボット50a、50bの相互動作をトレースするように
リアルタイム的に線が延びるように表示されるものとす
る。
て、第1および第2の多関節ロボット50a、50bを
同時に動作を開始させると、図13に示すように、相互
動作線160のうち、開始部分160aに沿って動作す
る。
2となり、ロボット動作プログラムBは、干渉エリア1
66bに対して設定したインターロック命令を実行す
る。
1で一時的に動作速度を減速した後に、ステップS20
2でflg[1]を確認する。flg[1]は初期状態において「of
f」として設定されているのでステップS203は無視
される。さらに、flg[1]に「on」を設定してシミュレー
ションを続行する。
5となり、第2の多関節ロボット50bを意図的に停止
させる。この時刻T5は、T5<T4の時刻であり、イ
ンターロックの解除命令は実行されていない。これによ
り、相互動作線160は折れ曲がり、水平部分160b
に沿って、第1の多関節ロボット50aのみがシミュレ
ーション動作を続行する。
1となり、ロボット動作プログラムAが、干渉エリア1
66bに対して設定したインターロック命令を実行す
る。
速度を減速した後に、変数flg[1]を確認する。変数flg
[1]は、ロボット動作プログラムBによって「on」とし
て設定されているので、ステップS203が実行され
る。すなわち、その時点で第1の多関節ロボット50a
は一時停止する。このとき、相互動作線160は、干渉
エリア160aに接する点160cにおいて停止してい
る。
た変数flg[1]によって、第1および第2の多関節ロボッ
ト50a、50bは、相互干渉を発生する箇所において
確実にインターロックを実行することができる。また、
ステップS201により、予め動作速度を低下しておく
ので、スムーズに停止することができるとともに、停止
時の行き過ぎ量が少ない。
よび第2の多関節ロボット50a、50bの双方が停止
してから時間Tx後に、意図的に停止させていた第2の
多関節ロボット50bの動作を再開する。相互動作線1
60は垂直方向へ延び、垂直部分160dに沿って第2
の多関節ロボット50bのみが動作を行う。
4+Txとなり、ロボット動作プログラムBは、干渉エ
リア166bに対して設定したインターロックの解除命
令を実行する。つまり、flg[1]に「off」を設定する。
g[1]を監視し続けていたロボット動作プログラムAは、
ステップS203の実行を終了する。すなわち、第1の
多関節ロボット50aの動作を再開する。また、flg[1]
に「on」を設定する。
第1および第2の多関節ロボット50a、50bは、双
方が動作を再開することになり、相互動作線160は4
5°の傾斜となって右上がりに延びる。
3+Txとなり、ロボット動作プログラムAは、インタ
ーロックの解除命令を実行しflg[1]に「off」を設定す
る。
ア166についても、インターロック命令およびインタ
ーロック解除命令を同様に実行する。
ション動作だけでなく実機動作時にも同様に作用するこ
とはもちろんである。
図12に戻り、ステップS112において、動作終了ま
での時間が想定したサイクルタイム内であるか否かを確
認する。
サイクルタイムをオーバしていれば、所定の最適化処理
(ステップS113)を行うものとする。
第1の多関節ロボット50aのオフセット量毎に、第2
の多関節ロボット50bオフセット量を対応させて、各
オフセット量毎に相互干渉の有無を確認する。その結果
により、ロボット動作プログラムA、Bで相互干渉を発
生する動作時間の前段階に、相互干渉を阻止するインタ
ーロックを設定することにしたので、第1または第2の
多関節ロボットが不規則な動作あるいは一時停止をした
場合でも相互干渉を起こすおそれがない。
動作プログラムA、Bが共通してアクセスすることが可
能な共有メモリ120を用いて、この共有メモリ120
上のインターロックフラグを設定するので、確実なイン
ターロック動作を実現できる。
経過後に、インターロック命令を解除するので、干渉エ
リア166を回避して動作を再開することができる。
を発生する箇所を示すマーク164(またはフラグ)所
定の短時間以内に発生するものマーク164同士を包括
して干渉エリア166として処理するので、設定するイ
ンターロック命令の数が不必要に増大することがなく、
適切な数だけ設定することができる。
止をしないときであっても動作速度を減速することが一
般的である(例えば、前記ステップS201)が、この
動作速度の減速回数を少なく抑えることができる。
8によって区切られた区画165を単位としているので
設定が容易である。
セット量を示す第1座標軸152と、第2の多関節ロボ
ット50bのオフセット量を示す第2座標軸154とか
ら構成されるグラフ150に、相互干渉を起こす箇所を
マーク164で表すようにしているので、オペレータに
とっても視覚的に理解しやすい。
ロボット動作プログラムA、Bを、シミュレーションに
よって動作検証を行うので、ロボット動作プログラム
A、Bの信頼性を向上させることができる。
1座標軸152および第2座標軸154ともオフセット
量を基準として表示する例について説明したが、教示姿
勢点P1〜P8を基準にして表示するようにしてもよ
い。
節ロボット50a、50b、50cのいずれの組合せに
おいて作成することも可能であり、さらに、3台を同時
にシミュレーション動作させるようにしてもよい。
らず、例えばAGV(Automated Guided Vehicle、無人
搬送ロボット)等に適用して、搬送路上におけるロボッ
ト同士の干渉、衝突の検証に使用し、インターロックを
設定するようにしてもよい。
ーロック設定方法は、上述の実施の形態例に限らず、こ
の発明の要旨を逸脱することなく、種々の構成を採り得
ることはもちろんである。
ットのインターロック設定方法によれば、複数のロボッ
トが同時に動作する際に、相互の動作時間のずれを考慮
し、1台のロボットに途中停止または動作速度低下が発
生したときでも、複数のロボット同士が相互干渉を発生
することがなく、かつ、相互干渉のおそれがないときに
は他のロボットは動作を続行することができるという効
果が達成される。
グ装置およびロボット装置を示す説明図である。
ック図である。
図である。
けた例を示すブロック図であり、図4Bは、外部の記憶
装置に共有メモリを設けた例を示すブロック図であり、
図4Cは、制御部に共有メモリを設けた例を示すブロッ
ク図である。
ラフをモニタの画面に表示した状態を示す説明図であ
る。
フローチャートである。
ーロック命令を設定する手順を示したフローチャートで
ある。
干渉を回避する手順をグラフ上で示す説明図である。
ャートである。
干渉を回避する手順を示すフローチャートである。
ト装置 14…制御部 16…モニタ 22a〜22c…ロボット制御部 26…CPU
(コンピュータ) 28…ROM 29…RAM 32…インタフェース回路 34…ハード
ディスク 37…データベース 50a〜50
c…多関節ロボット 100…データ読込み部 102…デー
タ書込み部 108…ロボット動作プログラム生成部 110…相互
干渉確認部 110a…動作計画計算部 110b…相
互干渉計算部 110c…ロボット姿勢サンプリング部 110d…姿
勢組合せ部 114…相互干渉結果分析部 116…イン
ターロック設定部部 120…共有メモリ 124…外部
の記憶装置 150…グラフ 152、15
4…座標軸 158…作図領域 160…相互
動作線 162…行程線 164…マー
ク 166…干渉エリア 180…パス
テーブル 200…姿勢記録テーブル 210…組合
せデータ
Claims (6)
- 【請求項1】複数のロボットに作業を行わせる際の前記
ロボット同士の相互干渉を阻止するロボットのインター
ロック設定方法において、 一のロボットの動作行程または動作時間毎に、他のロボ
ットの複数の動作行程または動作時間を対応させて相互
干渉の有無を確認する第1のステップと、 前記ロボットを制御する動作プログラムで、相互干渉を
発生する動作行程または動作時間の所定の前段階に、相
互干渉を阻止するインターロックを設定する第2のステ
ップとを有することを特徴とするロボットのインターロ
ック設定方法。 - 【請求項2】請求項1記載のロボットのインターロック
設定方法において、 前記一のロボットを制御する動作プログラムと前記他の
ロボットを制御する動作プログラムとが共にアクセスす
ることが可能な共有メモリを用い、 前記インターロックは、最も早く前記前段階に到達した
ロボットの動作プログラムが、前記共有メモリにインタ
ーロックフラグを設定することを特徴とするロボットの
インターロック設定方法。 - 【請求項3】請求項1または2記載のロボットのインタ
ーロック設定方法において、 前記動作プログラムで、相互干渉を発生する前記動作行
程または前記動作時間の経過後に、前記インターロック
を解除することを特徴とするロボットのインターロック
設定方法。 - 【請求項4】請求項1〜3のいずれか1項に記載のロボ
ットのインターロック設定方法において、 前記ロボットを制御する動作プログラムで、相互干渉を
発生する前記動作行程または前記動作時間のうち所定の
短時間以内に発生するもの同士を包括して干渉エリアと
して処理することを特徴とするロボットのインターロッ
ク設定方法。 - 【請求項5】請求項1〜4のいずれか1項に記載のロボ
ットのインターロック設定方法において、 前記一のロボットの動作行程または動作時間を示す第1
座標軸と、前記第1座標軸に対して非平行で、前記他の
ロボットの動作行程または動作時間を示す第2座標軸と
を有するグラフ上に、前記相互干渉を発生する動作行程
または動作時間をマークすることを特徴とするロボット
の相互干渉検証方法。 - 【請求項6】請求項1〜5のいずれか1項に記載のロボ
ットのインターロック設定方法において、 前記インターロックの設定を行う前記動作プログラム
を、前記ロボットを表す仮想空間上のモデルに対して適
用し、シミュレーション動作を行うことによって動作の
検証を行うことを特徴とするロボットのインターロック
設定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001299634A JP2003103484A (ja) | 2001-09-28 | 2001-09-28 | ロボットのインターロック設定方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001299634A JP2003103484A (ja) | 2001-09-28 | 2001-09-28 | ロボットのインターロック設定方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003103484A true JP2003103484A (ja) | 2003-04-08 |
Family
ID=19120357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001299634A Pending JP2003103484A (ja) | 2001-09-28 | 2001-09-28 | ロボットのインターロック設定方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2003103484A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1604790A3 (de) * | 2004-06-08 | 2008-10-15 | KUKA Roboter GmbH | Verfahren zum Schützen eines Roboters gegen Kollisionen |
JP2012106316A (ja) * | 2010-11-18 | 2012-06-07 | Honda Motor Co Ltd | 干渉検出方法及び干渉検出装置 |
JP2012232408A (ja) * | 2011-05-05 | 2012-11-29 | Fanuc Robotics America Corp | マルチロボットシステムのデッドロックを自動的に防止する方法及びシステム |
CN106671074A (zh) * | 2016-12-13 | 2017-05-17 | 昆山奥迪尔智能科技有限公司 | 一种有效提高安装速度与精度的六轴机械手 |
JP2018020413A (ja) * | 2016-08-04 | 2018-02-08 | 株式会社トヨタプロダクションエンジニアリング | 作業支援装置、作業支援方法およびプログラム |
JP2019000973A (ja) * | 2017-05-22 | 2019-01-10 | ファナック アメリカ コーポレイション | ロボット高周波数位置ストリーミング |
DE102006055359B4 (de) | 2005-11-24 | 2021-07-22 | Denso Wave Inc. | Roboter und Verfahren zur Vermeidung einer Interferenz bei vielen Robotern |
JP7502135B2 (ja) | 2020-09-29 | 2024-06-18 | ファナック株式会社 | ロボットプログラム調整装置 |
-
2001
- 2001-09-28 JP JP2001299634A patent/JP2003103484A/ja active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1604790A3 (de) * | 2004-06-08 | 2008-10-15 | KUKA Roboter GmbH | Verfahren zum Schützen eines Roboters gegen Kollisionen |
DE102006055359B4 (de) | 2005-11-24 | 2021-07-22 | Denso Wave Inc. | Roboter und Verfahren zur Vermeidung einer Interferenz bei vielen Robotern |
JP2012106316A (ja) * | 2010-11-18 | 2012-06-07 | Honda Motor Co Ltd | 干渉検出方法及び干渉検出装置 |
JP2012232408A (ja) * | 2011-05-05 | 2012-11-29 | Fanuc Robotics America Corp | マルチロボットシステムのデッドロックを自動的に防止する方法及びシステム |
JP2018020413A (ja) * | 2016-08-04 | 2018-02-08 | 株式会社トヨタプロダクションエンジニアリング | 作業支援装置、作業支援方法およびプログラム |
CN106671074A (zh) * | 2016-12-13 | 2017-05-17 | 昆山奥迪尔智能科技有限公司 | 一种有效提高安装速度与精度的六轴机械手 |
JP2019000973A (ja) * | 2017-05-22 | 2019-01-10 | ファナック アメリカ コーポレイション | ロボット高周波数位置ストリーミング |
JP7299674B2 (ja) | 2017-05-22 | 2023-06-28 | ファナック アメリカ コーポレイション | ロボット高周波数位置ストリーミング |
JP7502135B2 (ja) | 2020-09-29 | 2024-06-18 | ファナック株式会社 | ロボットプログラム調整装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lozano-Perez | Robot programming | |
US9731419B2 (en) | System and method for programming robots | |
US9390203B2 (en) | Method and system for off-line programming of multiple interacting robots | |
US20180036882A1 (en) | Layout setting method and layout setting apparatus | |
JP4153528B2 (ja) | ロボットシミュレーションのための装置、プログラム、記録媒体及び方法 | |
US20030090491A1 (en) | Simulation device | |
US20140012415A1 (en) | Natural machine interface system | |
US20150151431A1 (en) | Robot simulator, robot teaching device, and robot teaching method | |
JP5113666B2 (ja) | ロボット教示システム及びロボットの動作のシミュレーション結果の表示方法 | |
JP2005103681A (ja) | ロボットシステム | |
JP2003103491A (ja) | ロボットの相互干渉検証方法および相互干渉表示パターン | |
CN109202864B (zh) | 评价信息输出装置、评价信息输出方法以及存储介质 | |
JP2019171501A (ja) | ロボットの干渉判定装置、ロボットの干渉判定方法、プログラム | |
JP2003103484A (ja) | ロボットのインターロック設定方法 | |
JP2003103481A (ja) | 多関節ロボットの姿勢適正化方法および適正化装置 | |
JP2004151976A (ja) | シミュレーション装置 | |
KR20200097896A (ko) | 매니퓰레이터 urdf파일 생성장치 및 방법 | |
Pickett et al. | RoboTeach: An off-line robot programming system based on GMSolid | |
JP3991077B2 (ja) | ロボット教示方法およびロボット教示装置 | |
JP2021164978A (ja) | 情報処理方法、情報処理装置、プログラム及び記録媒体 | |
Sun et al. | Direct virtual-hand interface in robot assembly programming | |
JP3957296B2 (ja) | ロボットの相互干渉検証方法 | |
JP2003300185A (ja) | ロボットコントローラシミュレーション装置 | |
TWI745155B (zh) | 圖形化機械手臂學習系統及其學習方法 | |
JP7485705B2 (ja) | ロボットシステム、タスク生成装置及び制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040127 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050421 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050524 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050725 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060117 |