(57)【要約】【課題】ロボットとワーク及び周辺機器との干渉確認を高精度に行うシミュレーション装置を提供することを目的とする。【解決手段】シミュレーション装置Ａに、ロボットの形状情報および動作性能と、ワークの形状情報およびワークの加工部位を示す情報と、周辺機器の形状情報と、レイアウト情報とが含まれる入力データを受け付けるデータ取得部１１と、受け付けた入力データを用いて、仮想空間に、ロボットモデル２１、ワークモデル２２、および周辺機器モデル２３を構築し、その仮想空間上でロボットモデル２１を動作させたシミュレーションにより、ロボットと、ワークおよび周辺機器との干渉確認を行うシミュレーション部１２とを設ける。また、シミュレーション部１２が構築するロボットモデル２１は、その先端のエンドエフェクタが、ロボットの形状情報により定まる大きさから所定寸法拡大した形状になされている。【選択図】図１
2009274148.tif 000002
【特許請求の範囲】
【請求項１】
アームの先端にエンドエフェクタが取り付けられたロボットと、ワーク及び周辺機器との干渉確認を行うシミュレーション装置において、
前記ロボットの形状情報および動作性能と、前記ワークの形状情報および該ワークの加工部位を示す情報と、前記周辺機器の形状情報と、該ロボット、該ワークおよび周辺機器のレイアウト情報とが含まれる入力データを受け付ける入力手段と、
前記受け付けた入力データを用いて、仮想空間に、ロボットモデル、ワークモデル、および周辺機器モデルを構築し、その仮想空間上で前記ロボットモデルを動作させたシミュレーションにより、ロボットと、ワークおよび周辺機器との干渉確認を行うシミュレーション手段とを備え、
前記シミュレーション手段が構築するロボットモデルは、該ロボットモデルの先端のエンドエフェクタが、前記ロボットの形状情報により定まる大きさから所定寸法拡大した形状になされていることを特徴とするシミュレーション装置。
【請求項２】
前記ロボットの動作性能には、該ロボットの可動域を示す情報が含まれ、
前記シミュレーション手段は、前記ロボットの可動域を所定割合減少させて、該ロボットモデルを動作させたシミュレーションを行うことを特徴とするシミュレーション装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アームの先端にエンドエフェクタを備えたロボットと、ワークを含む周辺機器との干渉確認を行うシミュレーション装置に関する。
【背景技術】
【０００２】
従来から、多関節ロボットを動作させるため教示データ（ティーチングデータ）の作成にコピュータによるシミュレーションが用いられている。
例えば、特許文献１には、コンピュータの仮想空間上に多関節ロボット並びに作業対象物であるワークおよび周辺機器のモデルを構築し、このモデルを用いて教示データを作成することが開示されている。
具体的には、特許文献１では、シミュレーション装置が作成した仮想空間上でロボットモデルを動かし、周辺機器との干渉がなく一連の動作が終了するように、教示位置の設定、修正、変更を行い、教示データを作成することが開示されている。
【特許文献１】特開２００３−１０３４８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記の特許文献１に示すような従来技術のシミュレーションは、実際の生産現場で発生するワークの大きさ寸法のバラツキや、ロボットの動作誤差（ロボットのエンコーダゼロ点のずれやアームのたわみ等により生じるロボット動作のバラツキ）まで考慮していないため、精度の高い干渉確認を行うことができないという技術的課題を有していた。
すなわち、従来技術のシミュレーション装置は、ＣＡＤ情報等の設計値を用いてシミュレーションを行っていたため、当該シミュレーションにより得られた教示データを用いてロボットを動作させても、ワークの大きさ寸法のバラツキがある場合等に、ロボットとワーク（或いは周辺機器）とが干渉することがあった。
【０００４】
本発明は、上記事情に鑑みてなされたものであり、ロボットと、ワーク及び周辺機器との干渉確認を行うシミュレーション装置において、ロボットとワーク及び周辺機器との干渉確認を高精度に行うことを目的とするものである。
【課題を解決するための手段】
【０００５】
上記課題を解決するためになされた本発明は、アームの先端にエンドエフェクタが取り付けられたロボットと、ワーク及び周辺機器との干渉確認を行うシミュレーション装置に適用される。
そして、前記シミュレーション装置は、前記ロボットの形状情報および動作性能と、前記ワークの形状情報および該ワークの加工部位を示す情報と、前記周辺機器の形状情報と、該ロボット、該ワークおよび周辺機器のレイアウト情報とが含まれる入力データを受け付ける入力手段と、前記受け付けた入力データを用いて、仮想空間に、ロボットモデル、ワークモデル、および周辺機器モデルを構築し、その仮想空間上で前記ロボットモデルを動作させたシミュレーションにより、ロボットと、ワークおよび周辺機器との干渉確認を行うシミュレーション手段とを備え、前記シミュレーション手段が構築するロボットモデルは、該ロボットモデルの先端のエンドエフェクタが、前記ロボットの形状情報により定まる大きさから所定寸法拡大した形状になされていることを特徴とする。
【０００６】
このように本発明では、ロボットの設計情報により定まる大きさから所定寸法拡大した形状に形成されたエンドエフェクタを備えるロボットモデルを構築し、そのロボットモデルを仮想空間上で動作させて干渉確認を行うようにしている。
したがって、本発明のシミュレーション装置により干渉確認を行い、ロボットの教示データを作成するようにすれば、ワークの大きさ寸法のバラツキがあっても、ロボットとワーク（或いは周辺機器）とが干渉することがない教示データを作成することができる。
【０００７】
また、前記ロボットの動作性能には、該ロボットの可動域を示す情報が含まれ、前記シミュレーション手段は、前記ロボットの可動域を所定割合減少させて、該ロボットモデルを動作させたシミュレーションを行うことが望ましい。
このように構成することにより、本発明によれば、ロボットのエンコーダゼロ点のずれやアームのたわみ等により生じるロボット動作のバラツキを考慮した干渉確認を行うことができる。
【発明の効果】
【０００８】
本発明によれば、ロボットと、ワーク及び周辺機器との干渉確認を行うシミュレーション装置において、ロボットとワーク及び周辺機器との干渉確認を高精度に行うことができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施形態について図面に基づいて説明する。
先ず、本実施形態のシミュレーション装置の構成について図１および図２に基づいて説明する。
図１は、本発明の実施形態のシミュレーション装置の機能ブロック図である。また、図２は、本発明の実施形態のシミュレーション対象のロボットの斜視図である。
なお、本実施形態は、シミュレーション対象のロボットＲが溶接ガンＧを備える多関節型のロボットである場合を例にして説明する。
【００１０】
具体的には、図１に示すように、シミュレーション装置Ａは、ロボットＲと、ワーク及び周辺機器との干渉確認を行う情報処理装置１と、情報処理装置１が生成するシミュレーション画像２０を表示する表示装置２と、情報処理装置１に入力する各種データや各種要求を受け付ける入力装置３とを備える。
なお、情報処理装置１は、ＣＰＵ、メモリ等を備えるコンピュータにより構成される（情報処理装置１のハードウェア構成は後段で詳細に説明する）。また、表示装置２は、液晶ディスプレイ等により構成される。また、入力装置３は、キーボードやマウス等により構成される。
【００１１】
また、情報処理装置１は、シミュレーションに利用する入力データを取得するデータ取得部１１と、ロボットＲを動作させるための教示データを作成するシミュレーション部１２と、シミュレーション部１２より作成された教示データを出力するデータ出力部１３とを備える。
【００１２】
データ取得部１１は、入力装置３を介して、シミュレーションに利用する入力データの入力を受け付ける。
ここで、入力データには、ロボットＲの形状情報（ロボットＲの形状および寸法を示した３次元情報（ＣＡＤ情報等））と、ロボットＲの動作性能情報と、ワークの形状情報（ワークの形状および寸法を示した３次元情報（ＣＡＤ情報等））と、ワークの加工部位情報（溶接ポイントを示す３次元情報（ＣＡＤ情報等））と、周辺機器の形状情報（周辺機器の形状および寸法を示した３次元情報（ＣＡＤ情報等））と、生産現場のレイアウト情報（ロボットＲ、ワーク、および周辺機器の配置を示す３次元情報（ＣＡＤ情報等））とが含まれる。
なお、前記ロボットＲの動作性能情報には、少なくとも、ロボットＲの各軸（Ｊ１、Ｊ２、Ｊ３、Ｊ４、Ｊ５、Ｊ６）に対する動作範囲を示したデータ（ロボットＲの可動域を示す情報）が含まれる。
【００１３】
シミュレーション部１２は、データ取得部１１が受け付けた前記入力データを用いて、仮想空間上に、ロボットモデル２１、ワークモデル２２、周辺機器モデル２３を構築し、その仮想空間上でロボットモデル２１を動作させるシミュレーションを行う。
【００１４】
また、シミュレーション部１２は、前記シミュレーションにおいて、ロボットモデル２１と、ワークモデル２２（或いは周辺機器モデル２３）との干渉確認を行う。シミュレーション部１２は、前記干渉確認の結果をユーザに提示し（表示装置２上に表示し）、ユーザからの設定指示、変更指示等を受け付けながら、教示データを作成していく。そして、シミュレーション部１２は、最終的に、ロボットＲと、ワークおよび周辺機器との干渉なくロボットＲを動作させて溶接工程を行う教示データを作成する。
また、シミュレーション部１２は、前記構築したロボットモデル２１、ワークモデル２２、周辺機器モデル２３を仮想空間上で示したシミュレーション画像２０を生成し、そのシミュレーション画像２０を表示装置２に表示する。
【００１５】
データ出力部１３は、シミュレーション部１２が作成した教示データを外部装置（プリンタ等）に出力したり、表示装置２に表示させたりする。
【００１６】
つぎに、情報処理装置１のハードウェア構成を説明する。
具体的には、情報処理装置１は、ＣＰＵと、ＲＡＭ等の主記憶装置と、ハードディスクなどの補助記憶装置と、Ｉ/Ｏインタフェースと、ネットワークインタフェースとを備えるコンピュータにより構成される。また、前記補助記憶装置には、上述した各部（データ取得部１１、シミュレーション部１２、データ出力部１３）の機能を実現するためのシミュレーションプログラムが格納されている。
そして、上述した各部（データ取得部１１、シミュレーション部１２、データ出力部１３）の機能は、情報処理装置１の前記ＣＰＵが、前記補助記憶装置に格納された前記シミュレーションプログラムを前記主記憶装置にロードして実行することにより実現される。
【００１７】
つぎに、本実施形態のシミュレーションの対象となるロボットシステムの構成を説明する。
図２に示すように、ロボットシステムは、多関節型の溶接用のロボットＲと、予め設定された教示データに基づいてロボットＲの動作制御を行うロボットコントローラ４とを備える。
【００１８】
ロボットＲは、ベース部３０と、ベース部３０を基準にしてロボットの先端に向かって順に第１アーム３２、第２アーム３３および第３アーム３４と、第３アーム３４の先端に設けられた溶接ガンＧ（エンドエフェクタ）とを有する。
第１アーム３２は、ベース部３０に対して水平および垂直に回動可能な軸Ｊ１、軸Ｊ２によって回動可能（矢印ａ１方向、矢印ａ２方向に回動可能）に構成されている。
第２アーム３３は、第１アーム３２と軸Ｊ３で回動可能に連結されている（矢印ａ３回動可能に連結されている）。また、第２アーム３３は、軸Ｊ４によって捻れ回転が可能になっている（矢印ａ４方向に回転が可能になっている）。
第３アーム３４は、第２アーム３３と軸Ｊ５で回動可能に連結されている（矢印ａ５方向に回転が可能になっている）。また、第３アーム３４は、軸Ｊ６によって捻れ回転が可能になっている（矢印ａ６方向に回転が可能になっている）。
【００１９】
続いて、本実施形態のシミュレーション装置Ａが行う教示データを生成するために行うシミュレーション処理について図３に基づいて説明する。
図３は、本実施形態のシミュレーション装置が行うロボットの教示データを生成する処理の手順を示したフローチャートである。
【００２０】
先ず、データ取得部１１がシミュレーションに利用する上述した入力データを受け付ける処理を行う（Ｓ１）。
具体的には、データ取得部１１は、入力装置３を介して、ユーザが入力するシミュレーションに利用する上述した入力データを受け付ける。
なお、情報処理装置１に、前記入力データが格納されたＣＡＤ装置（図示しない）を接続しておいて、データ取得部１１が、ＣＡＤ装置（図示しない）から前記入力データを取得するようにしてもよい。
【００２１】
つぎに、シミュレーション部１２が、Ｓ１で受け付けた前記入力データを用いて、仮想空間上にロボットモデル２１、ワークモデル２２、および周辺機器モデル２３を生成し（Ｓ２）、Ｓ３の処理に進む。
具体的には、シミュレーション部１２は、ワークモデル２２および周辺機器モデル２３については、前記入力情報に含まれるワークの形状情報および周辺機器の形状情報により定まる形状になされたモデルを生成する（すなわち、仮想空間上で前記入力情報に対応した形状および寸法のモデルが構築される）。
また、シミュレーション部１２は、ロボットモデル２１については、ロボットモデル２１のアームの先端の溶接ガンＧが、前記入力情報に含まれるロボットの形状情報により定まる大きさから所定寸法拡大した形状になされたモデルを生成する。
【００２２】
ここで、本実施形態のシミュレーション装置が生成するロボットモデル２１のアームの先端の溶接ガンの形状について図４に基づいて説明する。
図４は、本実施形態のシミュレーション装置が仮想空間上で構築するロボットモデルの溶接ガンの側面図である。
図示する符号４０は、ロボットの形状情報により定まる大きさ寸法から所定寸法拡大した形状になされた溶接ガン（ロボットモデルの先端の溶接ガン）を示している。また、符号４１は、ロボットの形状情報により定まる大きさ寸法の溶接ガンを示している（すなわち、符号４１は設計値の大きさ寸法の溶接ガンを示している）。
そして、本実施形態のシミュレーション部１２は、Ｓ２において、符号４０に示す「形状および大きさ寸法」の溶接ガンを備えるロボットモデル２１を構築するようにしている。
なお、従来技術のシミュレーションでは、符号４１で示す「形状および大きさ寸法」の溶接ガン（破線で示した溶接ガン）を備えるロボットモデルを構築していた（すなわち、設計情報に対応したロボットモデルを構築していた）。
【００２３】
このように、ロボットモデル２１の先端部に取り付けられた溶接ガンの形状を、生産現場に設置される現実のロボットモデルＲの溶接ガンＧよりも所定寸法大きくした形状に形成したのは、ワークの形状寸法のバラツキを考慮したシミュレーションを行うためである。
なお、上述した拡大する所定寸法は、具体的に限定されるものではない。例えば、シミュレーション部１２は、ロボットＲの形状情報のなかに含まれる溶接ガンの大きさ寸法に、「数ｍｍ（例えば５ｍｍ）」加算した上で、仮想空間上にロボットモデル２１を構築するようにしてもよい。
【００２４】
図３に戻り、Ｓ２の後に行われるＳ３の処理を説明する。
Ｓ３では、シミュレーション部１２がロボットＲの可動域の設定を行う。
具体的には、シミュレーション部１２は、Ｓ１で受け付けた前記入力データのなかの動作性能情報に含まれる「ロボットＲの各軸に対する動作範囲を示すデータ」を所定割合減少させた可動域制限情報を生成する（メモリ（上述した主記憶装置）の所定領域に格納しておく）。
なお、可動域制限情報は、どのような構成のものでもかまわないが、例えば、図５に例示するデータ構造のものを生成してもよい。
以下、図５を用いて、可動域制限情報について説明する。
【００２５】
図５は、本実施形態の可動域制限情報のデータ構成を模擬的に示した図である。
図示するように、可動域制限情報５０は、ロボットＲの軸毎（Ｊ１、２、３、４、５、６）に「動作性能情報」および「可到達性情報（ロボットの動作性能を制限するデータ）」が対応付けられている。
シミュレーション部１２は、Ｓ１で受け付けた前記入力データから「ロボットＲの軸毎の動作性能情報」を抽出し、ロボットＲの軸毎に、動作性能情報および可到達性情報を対応付ける。
なお、本実施形態では、シミュレーション処理部１２は、ロボットＲの全ての軸に可到達性情報として「９０％」を対応付けるようにしているが、この「９０％」の値はあくまでも例示である（ロボットＲの各軸の動作範囲を所定割合減少させていればよい）。また、可動域制限情報５０において、ロボットＲの軸毎に減少させる割合が異なっていてもよい。
【００２６】
このように、ロボットＲの各軸の可動域を、ロボットＲが本来持つ可動域（ロボットの動作性能情報）から所定割合減少させてシミュレーションを行い、教示データを生成することにより、ロボット動作のバラツキを考慮したシミュレーションを行うことができる。
【００２７】
図３に戻り、Ｓ３の後に行うＳ４の処理を説明する。
Ｓ４では、シミュレーション部１２は、Ｓ１で受け付けた入力データと、Ｓ２で構築した各モデルおよびＳ３で設定した可動域制限情報５０とを用いて、仮想空間上において、ロボットモデル２１を動作させたシミュレーションを行う。すなわち、シミュレーション部１２は、仮想空間上でロボットモデル２１が動作する画像情報（アニメーション情報）を生成し、表示装置２に前記画像情報を出力して、表示装置２上にロボットモデル２１が動作する画像を表示させる。
【００２８】
そして、シミュレーション部１２は、ユーザからの各種要求（ロボットモデル２１の動作経路の設定や変更など）を受け付け、その受け付けた要求に応じたシミュレーションを繰り返し行い、ロボットＲを動作させるための教示データを作成する。
なお、本ステップ（Ｓ４）の処理は、シミュレーションを行うロボットモデル２１の形状が、Ｓ２で構築した形状に構成されている点と、ロボットの可動域がＳ３の処理により制限されている点とに特徴があり、それ以外の処理は、従来技術によるものと同様である。そのため、ユーザからの各種要求を受けながら、教示データを作成していく処理の説明は省略する。
【００２９】
そして、Ｓ４の処理を終えると、データ出力部１３がＳ４で作成した教示データをプリンタ等の出力装置（図示しない）に出力する。
なお、情報処理装置１と、ロボットコントローラ４とをネットワーク（工場内ＬＡＮ等）で通信可能に接続しておき、データ出力部１３が前記教示データをネットワーク経由でロボットコントローラ４に出力するようにしてもよい。
【００３０】
このように、本実施形態では、仮想空間上で構築するロボットモデル２１の先端部の溶接ガンを、生産現場に設置される現実のロボットＲの溶接ガンＧよりも所定寸法大きくした形状に形成し、そのロボットモデル２１を動作させたシミュレーションを行うようにしている。
したがって、本実施形態のシミュレーション装置により干渉確認を行い、ロボットＲの教示データを作成することにより、ワークの大きさ寸法のバラツキがあっても、ロボットＲとワーク（或いは周辺機器）とが干渉することがない教示データを作成することができる。
そのため、本実施形態によれば、生産現場でロボットＲを実際に動作させたとき不具合を減少させることができるため（すんわち、シミュレーションにより事前に対策を施せるため）、生産現場での作業工数を低減できる。
【００３１】
また、本実施形態では、仮想空間上でロボットモデル２１を動作さてシミュレーションを行う場合に、ロボットモデル２１の可動域を、設計値通りの可動域（ロボットＲの動作性能情報として登録された可動域）から所定割合減少させるようにしている。
これにより、ロボットＲのアームのたわみ等により生じるロボット動作のバラツキを考慮したシミュレーションを行うことが可能となり、その結果、ロボットＲとワーク及び周辺機器との干渉確認を高精度に行うことができる。
【００３２】
なお、本発明は、上述した実施形態に限定されるものではなくその要旨の範囲内において種々の変形が可能である。
例えば、上記実施形態の説明では、シミュレーション対象のロボットとして、アーム先端のエンドエフェクタが溶接ガンである溶接用ロボットを示したが特にこれに限定されるものではない。シミュレーション対象のロボットは、溶接用のロボットに限らず、組み立て用ロボットや塗装用ロボット等であってもよい。この場合も、ロボットモデルの先端のエンドエフェクタ（把持部、ナット締め具等）を、ロボットの形状情報により定まる大きさから所定寸法拡大した形状にすることにより、上述した実施形態と同様の効果を得ることができる。
【００３３】
また、本実施形態のシミュレーション装置Ａの持つ機能を、既に生成された教示データを検証するためのシミュレーションに適用することも可能である。
例えば、既に生成された教示データを用いて、ロボットと、ワーク及び周辺機器との干渉確認を行うシミュレーションにおいて、仮想空間上で構築するロボットモデルの先端部の溶接ガンを、生産現場に設置される現実のロボットＲの溶接ガンＧよりも所定寸法大きくした形状に形成し、そのロボットモデルを動作させたシミュレーションを行うようにしてもよい。
【図面の簡単な説明】
【００３４】
【図１】本発明の実施形態のシミュレーション装置の機能ブロック図である。
【図２】本発明の実施形態のシミュレーション対象のロボットの斜視図である。
【図３】本発明の実施形態のシミュレーション装置が行うロボットの教示データを生成する処理の手順を示したフローチャートである。
【図４】本発明の実施形態のシミュレーション装置が仮想空間上に構築するロボットモデルの先端部にある溶接ガンの側面図である。
【図５】本発明の実施形態の可動域制限情報のデータ構成を模擬的に示した図である。
【符号の説明】
【００３５】
Ａ…シミュレーション装置
Ｇ…溶接ガン
Ｒ…ロボット
１…情報処理装置
２…表示装置
３…入力装置
４…ロボットコントローラ
１１…データ取得部
１２…シミュレーション処理部
１３…データ出力部
２１…ロボットモデル
２２…ワークモデル
２３…周辺機器モデル
３０…ベース部
３２…第１アーム
３３…第２アーム
３４…第３アーム
【図１】
2009274148.tif 000003
【図２】
2009274148.tif 000004
【図３】
2009274148.tif 000005
【図４】
2009274148.tif 000006
【図５】
2009274148.tif 000007