(57)【要約】【課題】効率的に干渉チェックを行うことができるロボットオフライン表示装置を提供する。【解決手段】ステップＳ３において、干渉チェックを行うべきロボットの位置姿勢についての干渉チェック結果が存在していれば、ステップＳ４に進んで当該干渉チェック結果を採用する。また干渉チェックを行うべきロボットの位置姿勢と同一の位置姿勢が過去のデータに含まれていない場合でも、周辺機器との干渉チェックの結果が記録されているロボットの位置姿勢の中に、干渉チェックを行いたいロボットの位置姿勢との差分が指定範囲内のものがあれば、その干渉チェック結果を採用する。【選択図】図２
2010094794.tif 000002
【特許請求の範囲】
【請求項１】
少なくともロボット及び該ロボットの周辺装置の３次元モデルを画面上に配置して同時に表示するロボットオフライン表示装置であって、
ロボット及び周辺装置の配置位置、並びにロボットに取り付けられた物体の前記ロボットに対する取付け位置姿勢を記憶する記憶部と、
前記ロボットおよび前記ロボットに取り付けられた物体と前記周辺機器の間の、３次元モデルによる干渉チェックを行う干渉チェック部と、
前記干渉チェックの結果と対応付けてロボットの位置姿勢を記録する記録部と、
前記干渉チェックの結果を使用して表示する表示部と、
を備え、
前記干渉チェック部は、干渉チェック結果と対応付けて前記記録部に記録されたロボットの位置姿勢の中に、干渉チェックを行おうとするロボットの位置姿勢との差分が予め指定された範囲内のものがあるときは、干渉チェックを行わず、前記記録されている干渉チェックの結果を、干渉チェックを行おうとするロボットの位置姿勢の干渉チェック結果とすることを特徴とする、ロボットオフライン表示装置。
【請求項２】
前記記録部は、ロボットの複数の位置姿勢にそれぞれ対応した干渉チェックの結果を少なくとも２つ記憶しており、そのうち２つの位置姿勢相互の差分が指定された範囲内にあり、かつ、前記２つの位置姿勢にそれぞれ対応した干渉チェックの結果が同じであるときに、該２つの位置姿勢の中間の位置姿勢である擬似位置姿勢と、該擬似位置姿勢に対応した干渉チェックの結果とを新たに記憶し、該擬似姿勢位置での干渉チェック結果は、前記２つの位置姿勢に対応した干渉チェックの結果と同じ内容として記録されることを特徴とする、請求項１に記載のロボットオフライン表示装置。
【請求項３】
ロボット若しくは周辺装置の配置位置、又はロボットに取り付けられた物体のロボットに対する取付け位置姿勢が変更された場合、上記の干渉チェックの記録を破棄又は無効とされることを特徴とする、請求項１又は請求項２記載のロボットオフライン表示装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットと周辺機器との干渉をチェックする際に使用するロボットオフライン表示装置に関する。
【背景技術】
【０００２】
通常、ロボット、周辺機器及びロボットに取り付けられている物体相互の干渉をチェックするには、それらの形状を表すモデルデータ（例えばＣＡＤデータ）を用いる。このような形状を表すモデルによる干渉チェックは、一般にオフラインプログラミングシステム等で行われている。例えば特許文献１には、シミュレーション中の干渉を記録し、その記録結果を後に確認できるようにした干渉チェック方法及び装置が開示されている。
【０００３】
また特許文献２には、代表点を決め、干渉の有無を調べ記録する干渉チェック方法及び動作プログラム作成方法が開示されている。
【０００４】
【特許文献１】特開平７−７８０１７号公報
【特許文献２】特開平１０−２９６６７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
オフラインプログラミングシステムでロボットを動作させる際、ロボット、周辺機器及びロボットに取り付けられている物体間の干渉をチェックする場合が多い。この干渉チェックは上述のように形状を表すモデルによって行われるが、モデルが複雑だったり、数が多かったりすると干渉チェックに非常に時間がかかり、オフラインプログラミングシステムのパフォーマンスに大きな影響を与える。
【０００６】
特許文献１に記載の発明は、シミュレーション中の干渉を記録し、後で確認できるようにしたものであるが、以後の干渉チェックを効率化するものではない。また特許文献２に記載の発明は、干渉判定の信頼性を高めるためになされたものであり、やはり干渉チェックの効率化に関するものではない。
【０００７】
そこで本発明は、オフラインプログラミングシステムにおいて効率的に干渉チェックを行うことができるロボットオフライン表示装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、請求項１に記載の発明は、少なくともロボット及び該ロボットの周辺装置の３次元モデルを画面上に配置して同時に表示するロボットオフライン表示装置であって、ロボット及び周辺装置の配置位置、並びにロボットに取り付けられた物体の前記ロボットに対する取付け位置姿勢を記憶する記憶部と、前記ロボットおよび前記ロボットに取り付けられた物体と前記周辺機器の間の、３次元モデルによる干渉チェックを行う干渉チェック部と、前記干渉チェックの結果と対応付けてロボットの位置姿勢を記録する記録部と、前記干渉チェックの結果を使用して表示する表示部と、を備え、前記干渉チェック部は、干渉チェック結果と対応付けて前記記録部に記録されたロボットの位置姿勢の中に、干渉チェックを行おうとするロボットの位置姿勢との差分が予め指定された範囲内のものがあるときは、干渉チェックを行わず、前記記録されている干渉チェックの結果を、干渉チェックを行おうとするロボットの位置姿勢の干渉チェック結果とすることを特徴とする、ロボットオフライン表示装置を提供する。
【０００９】
請求項２に記載の発明は、請求項１に記載のロボットオフライン表示装置において、前記記録部は、ロボットの複数の位置姿勢にそれぞれ対応した干渉チェックの結果を少なくとも２つ記憶しており、そのうち２つの位置姿勢相互の差分が指定された範囲内にあり、かつ、前記２つの位置姿勢にそれぞれ対応した干渉チェックの結果が同じであるときに、該２つの位置姿勢の中間の位置姿勢である擬似位置姿勢と、該擬似位置姿勢に対応した干渉チェックの結果とを新たに記憶し、該擬似姿勢位置での干渉チェック結果は、前記２つの位置姿勢に対応した干渉チェックの結果と同じ内容として記録されることを特徴とする、ロボットオフライン表示装置を提供する。
【００１０】
請求項３に記載の発明は、請求項１又は２に記載のロボットオフライン表示装置において、ロボット若しくは周辺装置の配置位置、又はロボットに取り付けられた物体のロボットに対する取付け位置姿勢が変更された場合、上記の干渉チェックの記録を破棄又は無効とされることを特徴とする、ロボットオフライン表示装置を提供する。
【発明の効果】
【００１１】
本発明に係るロボットオフライン表示装置によれば、ロボットの教示やシミュレーションのようにロボットが何度も同じような位置姿勢となる場合に、干渉チェックにかかる時間が短縮され、オフラインプログラミングシステムのパフォーマンスが向上する。
【００１２】
干渉チェック結果が等しい既知の２つのロボット位置姿勢の中間の位置姿勢である擬似位置姿勢を、同じ干渉チェック結果を有する位置姿勢として記憶することにより、以後の干渉チェックに利用可能なデータをさらに増やすことができ、オフラインプログラミングシステムのパフォーマンスがさらに向上する。
【００１３】
ロボットと周辺機器との位置関係が変化した場合等には干渉チェックの記録を破棄又は無効にすることにより、以降の干渉チェックにおける誤判断が防止される。
【発明を実施するための最良の形態】
【００１４】
図１は、本発明に係るロボットオフライン表示装置の一実施形態を示す図である。例えばパーソナルコンピュータ（以降、ＰＣと略称）等の計算機によって実現可能な表示装置１０は、ディスプレイ等の表示部１２と、後に説明する干渉チェック等の種々の演算処理を行うＣＰＵ１４と、表示部１２に画面表示可能なロボットや周辺機器等の３次元モデルを格納するＲＯＭ１６と、ロボット等の種々の位置及び姿勢（以降、位置姿勢と称する）の記憶や、該位置姿勢での干渉チェックの結果等の記録を行うＲＡＭ１８又は図示しないデータベース等とを有する。
【００１５】
次に図２を用いて、本発明に係るオフライン表示装置の処理の流れについて説明する。先ずステップＳ１において、作業者が干渉チェックに必要な機器すなわちロボット、ロボットの周辺機器等を選定し、選定した機器をＰＣ１０のディスプレイ１２上に配置する。各機器の配置は、各機器の座標を入力や、クリック／ドラッグ等のマウス操作によって行うことができる。
【００１６】
次にステップＳ２において、作業者が各機器の作業内容（動作内容）を入力する。図１では、ハンド２０を備えたロボット２２が、工作機械２４で加工された部品２６を工作機械２４から取り出してコンベア２８上に載置し、次にコンベア２８が部品２６を順次、次工程に搬送する例を示している。
【００１７】
ステップＳ３以降は、ＰＣ１０が入力された各機器の配置及び作業内容に基づいて干渉チェックを行う。先ずステップＳ３では、干渉チェックを行うべきロボットの位置姿勢と同一の位置姿勢について、周辺機器（ここでは工作機械及びコンベア）との干渉チェックの結果（過去のデータ）がＲＡＭ１８等に記録されているかをＣＰＵ１４がチェックする。つまり本発明は、同様の機器配置において過去に干渉チェックを行った結果（データ）がＲＡＭ等に蓄積されていることが前提となる。
【００１８】
ここでロボットの位置姿勢は、ロボットの各軸値（Ｊ１，Ｊ２，..，Ｊｎ）（ｎはロボットの軸数）、ロボットのフェースプレートの直交位置（Ｘ，Ｙ，Ｚ，Ｗ，Ｐ，Ｒ，形態）、或いはロボットのツール先端ポイント（ＴＣＰ）の直交位置（Ｘ，Ｙ，Ｚ，Ｗ，Ｐ，Ｒ，形態）のいずれかで表現可能である。例えばロボットに長い物体を取り付けている場合等は、その物体の影響を受けにくいロボットのツール先端ポイントの直交位置を使用することが考えられる。
【００１９】
ステップＳ３において、干渉チェックを行うべきロボットの位置姿勢についての干渉チェック結果が存在していれば、ステップＳ４に進んで当該干渉チェック結果を採用する。すなわちこの場合、新たに干渉チェックのための演算処理は行われず、迅速に干渉チェックの結果が得られる。
【００２０】
しかし一般的には、過去の干渉チェック時と同一の機器配置で同一の作業内容を入力しない限り、干渉チェックを行うべきロボットの位置姿勢と同一の位置姿勢が過去のデータに含まれている可能性は低い。そこでステップＳ５では、周辺機器との干渉チェックの結果が記録されているロボットの位置姿勢の中に、干渉チェックを行いたいロボットの位置姿勢との差分が指定範囲内のものがあるか否かをチェックする。
【００２１】
具体的には、位置姿勢を上述の各軸値で表現した場合、当該指定範囲は、例えば次のように求めることができる。先ず干渉チェックを行うべきロボットの位置姿勢のＪ１と、記録されているある位置姿勢のＪ１′との差分を求め、その差分が許容値δ１以下であるかを調べる。同様に全ての各軸値について差分が許容値以下であれば（すなわち｜Ｊｎ−Ｊｎ′｜≦δｎ）、その記録されている位置姿勢は指定範囲内であると判断される。ここで各許容値は、干渉チェックすべき位置姿勢と記録されている位置姿勢とで干渉チェックの結果が異なる（一方が干渉ありで他方はなし）となる確率が極めて低くなるように予め設定される値であり、例えば０．０１度又は０．０１ｍｍのような値である。
【００２２】
指定範囲内の位置姿勢が存在すれば、ステップＳ４に進んで当該位置姿勢での干渉チェック結果を採用する。従ってこの場合も、新たに干渉チェックのための演算処理は行われず、迅速に干渉チェックの結果が得られる。なお指定範囲内の位置姿勢が複数記録されている場合は、各差分の和（Σ｜Ｊｎ−Ｊｎ′｜）が最も小さい位置姿勢を選定することが好ましい。
【００２３】
指定範囲内の位置姿勢が存在しない場合は、通常の干渉チェック処理を行い（ステップＳ６）、得られた結果を記録する（ステップＳ７）。なおステップＳ６の干渉チェック処理は通常、ロボットの教示やシミュレーションのようなオフライン作業の中で行われる。得られた干渉チェック結果は、次回以降の干渉チェックのためのデータとして利用できるように、ロボットの位置姿勢と対応付けて記録される。
【００２４】
最後に、得られた干渉チェック結果をディスプレイに表示する（ステップＳ８）。表示形態としては、「干渉あり」等とテキスト表示したり、干渉する部位を変色して表示したりする等、種々の形態が考えられる。また干渉する場合には警告音を発する等の処置をしてもよい。また干渉がある場合は、その旨をログ等に残しておくこともできる。
【００２５】
ステップＳ５において、ロボットの位置姿勢を直交値で表現した場合も、差分が指定範囲内であるか否かの判定は概ね上記と同様に行うことができる。すなわち、干渉チェックを行うべきロボットの直交位置Ｘと、記録されているある位置姿勢の直交位置Ｘ′との差分を求め、その差分が許容値δｘ以下であるかを調べる。同様に全ての直交位置について差分が許容値以下であれば（すなわち｜Ｘ−Ｘ′｜≦ΔδX、｜Ｙ−Ｙ′｜≦ΔδY、..、｜Ｒ−Ｒ′｜≦ΔδR）、その記録されている位置姿勢は指定範囲内であると判断される。但し、形態が異なる場合は、差分が全て許容値以内であっても、指定範囲外とすることが好ましい。ここで各許容値は、干渉チェックすべき位置姿勢と記録されている位置姿勢とで干渉チェックの結果が異なる（一方が干渉ありで他方はなし）となる確率が極めて低くなるように予め設定される値であり、例えば０．０１度又は０．０１ｍｍのような値である。また指定範囲内の位置姿勢が複数記録されている場合は、上記と同様に、各差分の和が最も小さい位置姿勢を選定することが好ましい。
【００２６】
上述のように、干渉チェックされた結果はロボットの位置姿勢と対応付けて記録され、以降の干渉チェックに利用される。しかし逆に言えば、図２のような処理によって干渉チェックがされなければ、そのロボット位置姿勢でのデータは蓄積されない。そこで以降は、干渉チェックにおいて利用可能な位置姿勢のデータを、図２のような処理に依らずに作成する処理について、図３を用いて説明する。
【００２７】
先ずステップＴ１において、既に干渉チェックの結果が記録されているロボットの位置姿勢の中から、差分が指定範囲以内である２つのロボットの位置姿勢を選択する。ここでいう「差分」は、上述したものと同様でよいので説明は省略する。但し、差分が指定範囲内であるかを判定するための許容値は上述のものより大きい値に設定する。上記許容値より小さい値を設定してしまうと、新たにロボットの位置姿勢を作成する意味がないからである。具体的には、ここでの許容値は例えば０．１度又は０．１ｍｍのような値である。
【００２８】
次のステップＴ２では、ステップＴ１で選定した２つのロボットの位置姿勢での干渉チェック結果が同じか否かをチェックする。ここでいうチェック結果が「同じ」とは、双方の位置姿勢において「干渉あり」と判定されているか、双方の位置姿勢において「干渉なし」と判定されているかのいずれかを意味する。ここでチェック結果が異なっていれば、それら２つの位置姿勢は新たなデータの作成には使用できないので、処理を終了するか、別の２つの位置姿勢の選定からやり直す。
【００２９】
ロボットの２つの位置姿勢での干渉チェック結果が「同じ」である場合は、それらの位置姿勢の中間の位置姿勢である擬似位置姿勢を作成する（ステップＴ３）。図４はその一例として、ロボット２２の２つの位置姿勢３０、３２を２等分する位置姿勢３４を擬似位置姿勢として作成した状態を示す図である。すなわち、ロボット２２の第１の位置姿勢３０の各軸値を（Ｊ11，Ｊ12，..，Ｊ1n）とし、第２の位置姿勢３２の各軸値を（Ｊ21，Ｊ22，..，Ｊ2n）とした場合、得られる擬似位置姿勢３４の各軸値は（(Ｊ11+Ｊ21)/2，(Ｊ12+Ｊ22)/2，..，(Ｊ1n+Ｊ2n)/2）となる。そして次のステップＴ４において、擬似位置姿勢での干渉チェック結果は、第１、第２の干渉チェック結果と同じであるとして記録される。
【００３０】
図４の例では擬似位置姿勢は第１、第２の位置姿勢を２等分するように設定されたが、擬似位置姿勢は第１、第２の位置姿勢の中間の位置姿勢であればどのように設定してもよい。例えば擬似位置姿勢は、２つの位置姿勢を１：２に内分するものであってもよいし、５：１に内分するものであってもよい。さらに、２つの位置姿勢をＮ等分するように複数の擬似位置姿勢を求めることもできる。いずれの場合も、擬似位置姿勢での干渉チェック結果は、第１、第２の位置姿勢での干渉チェック結果と同じものが記録される。ステップＴ１〜Ｔ４の処理により、干渉チェックに利用できるデータ量を大幅に増やすことができ、干渉チェックに要する時間を短縮することができるようになる（具体的には、上述のステップＳ５からＳ４に進む可能性が高くなる）。但し、ロボットと周辺機器間の位置関係が変わった場合や、ロボットに取り付けられた物体のロボットに対する取付け位置姿勢が変更された場合には、上記の干渉チェック結果の記録は破棄又は無効にされる。
【００３１】
一般に、オフラインプログラミングシステムでロボットや周辺機器の配置が決定された後は、それらの配置位置の修正はあまり行われず、この状態でロボットの教示が行われる。しかしロボットは同じ動作を反復するにも関わらず、干渉チェックはその度に行われる。そこで本願発明では、ロボットのある位置姿勢で、ロボット（ハンドのようにロボットに取り付けられた物も含む）と動かない周辺機器との間のＣＡＤモデルによる通常の干渉チェックを行った場合、そのときの干渉チェックの結果（干渉の有無）を、そのある位置姿勢と対応付けて記録する。次回又はそれ以降、全く同じ位置姿勢で干渉を調べる必要が生じた場合には、ＣＡＤモデルによる通常の干渉チェックは行わず、記録されている干渉の結果を用いることで干渉チェックに要する時間が短縮される。また、ロボットのある位置姿勢で干渉を調べる必要が生じたが、全く同じ位置姿勢での干渉結果がない場合であって、かつそのロボットの位置姿勢との差分が所定の範囲内にある位置姿勢での干渉チェック結果が記録されている場合には、ＣＡＤモデルによる通常の干渉チェックは行わずに、その干渉チェックの記録を用いることによって干渉チェックに要する時間が短縮される。
【００３２】
さらに、干渉チェックの結果が記録されている、ある２つのロボットの位置姿勢の差分が所定の範囲内であって、かつ両位置姿勢での干渉チェックの結果が同じ場合には、それらの２つの位置姿勢の中間の位置姿勢である擬似位置姿勢を作成し、擬似位置姿勢での干渉の有無は、それら２つの位置姿勢での干渉チェック結果と同じとして扱うこともできる。
【図面の簡単な説明】
【００３３】
【図１】本発明に係るロボットオフライン表示装置の一実施形態の概略構成を示す図である。
【図２】ロボットオフライン表示装置での処理の流れを示すフローチャートである。
【図３】擬似位置姿勢及び該擬似位置姿勢での干渉チェック結果を作成し記録する処理の流れを示すフローチャートである。
【図４】擬似位置姿勢の作成処理を簡単に示す図である。
【符号の説明】
【００３４】
１０    オフライン表示装置
１２    表示部
１４    ＣＰＵ
１６    ＲＯＭ
１８    ＲＡＭ
２０    ハンド
２２    ロボット
２４    工作機械
２６    部品
２８    コンベア
【図１】
2010094794.tif 000003
【図２】
2010094794.tif 000004
【図３】
2010094794.tif 000005
【図４】
2010094794.tif 000006