(57)【要約】【課題】工具とワークとの干渉を生じさせないロボットプログラムを自動的に作成できるロボットプログラミング装置を提供する。【解決手段】ロボットプログラミング装置１０において、動作パターン６２をワークモデル５０に投影して作成される加工経路５４に基づいて、工具１４０の位置及び姿勢が決定される。ロボットプログラミング装置１０は、ワーク１５０及び工具１４０が、工具１４０の加工点以外において互いに干渉するか否かを判定する判定部１８と、工具１４０の加工点以外においてワーク１５０及び工具１４０が互いに干渉しないように、工具１４０の位置及び姿勢の少なくとも一方を補正する位置姿勢補正部１９と、を備えている。【選択図】図３
2016101644.tif 000002
【特許請求の範囲】
【請求項１】
工具を備えたロボットに対して、作業空間に配置されたワークの加工を実行させるためのロボットプログラムを作成するロボットプログラミング装置であって、
前記作業空間を三次元的に表現した仮想空間を作成する仮想空間作成部と、
前記仮想空間において、前記ワーク、前記ロボット及び前記工具をそれぞれ三次元的に表現したワークモデル、ロボットモデル及び工具モデルを配置するモデル配置部と、
前記ワークを加工する際における前記工具の動作パターンが形成された投影対象物を前記仮想空間に配置する投影対象物配置部と、
前記動作パターンを前記ワークモデルの少なくとも１つの面に投影することによって、前記ワークを加工する際に前記工具の加工点が通過する加工経路を作成する加工経路作成部と、
前記ワークモデルの前記少なくとも１つの面に対する法線の方向、及び前記加工経路に基づいて、前記ワークを加工する際の前記工具の位置及び姿勢を決定する位置姿勢決定部と、
前記位置姿勢決定部によって決定される前記工具の位置及び姿勢に基づいて、前記ワーク及び前記工具が、前記工具の前記加工点以外において互いに干渉するか否かを判定する判定部と、
前記判定部によって干渉が発生すると判定された場合に、前記工具の前記加工点以外において前記ワーク及び前記工具が互いに干渉しないように、前記工具の位置及び姿勢の少なくとも一方を補正する位置姿勢補正部と、を備えるロボットプログラミング装置。
【請求項２】
前記位置姿勢補正部が、前記ロボットに対する教示内容を補正することによって、前記工具の位置及び姿勢の少なくとも一方を変更するように構成される、請求項１に記載のロボットプログラミング装置。
【請求項３】
前記位置姿勢補正部が、前記工具に関連付けられる座標系を変更することによって、前記工具の位置及び姿勢の少なくとも一方を変更するように構成される、請求項１に記載のロボットプログラミング装置。
【請求項４】
前記工具の前記加工点が予め設定されている、請求項１から３のいずれか１項に記載のロボットプログラミング装置。
【請求項５】
前記加工経路作成部が、
前記動作パターンを前記ワークモデルの前記少なくとも１つの面に投影したときに、前記少なくとも１つの面に投影されない前記動作パターンの頂点を特定する頂点特定部と、
前記頂点特定部によって特定される前記動作パターンの前記頂点を、当該頂点に対して最も近接する前記ワークモデルの前記少なくとも１つの面における点に置換する頂点置換部と、をさらに備える、請求項１から４のいずれか１項に記載のロボットプログラミング装置。
【請求項６】
前記ワークを加工する際における前記工具の複数の異なる動作パターンを記憶する動作パターン記憶部と、
前記複数の異なる動作パターンから、前記投影対象物に形成される前記動作パターンを選択する動作パターン選択部と、をさらに備える、請求項１から５のいずれか１項に記載のロボットプログラミング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、要求される動作をロボットに教示するのに使用されるロボットプログラミング装置に関する。
【背景技術】
【０００２】
工具を把持したロボットを動作させることによりワークに対して所定の加工を施すロボットシステムが公知である。そのようなロボットシステムにおいて、ロボットに対して所定の動作を教示する必要があるものの、ロボットに対する教示工程は概して煩雑である。特許文献１及び特許文献２には、オフラインで加工プログラムを作成する技術が開示されている。
【０００３】
特許文献１には、バリ取り工具を装着したロボットに対して製品のバリ取りを実行させるためのバリ取りプログラムを作成するロボットプログラム作成方法が開示されている。この関連技術によれば、ＣＡＤで作成された対象物の図形データから、図形に含まれる直線要素及び円弧要素を抽出し、直線要素の端点又は円弧要素の中間点と、図形平面との間に形成される角度に従って工具の姿勢が計算される。
【０００４】
特許文献２には、工具を装着したロボットを用いてワークに加工を施すためのロボットプログラムを作成するロボットプログラミング装置が開示されている。この関連技術によれば、仮想空間において、工具の所定の動作パターンをワークモデルの面に投影することによって、加工経路を作成するとともに、加工経路及びワークモデルの面に対する法線の方向に基づいて、工具の位置及び姿勢が決定される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平６−０５９７２０号公報
【特許文献２】特開２０１３−２４８６７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
前述した関連技術によれば、ロボットプログラムを自動的に作成できる利点がある。しかしながら、オフラインで作成されたプログラムを実際に実行しようとすると、工具とワークが干渉することがある。そのような場合、プログラムを修正する必要があるので、結果的に教示工程の作業効率が低下する。
したがって、工具とワークとの干渉が生じないようにしたロボットプログラムを作成できるロボットプログラミング装置が求められている。
【課題を解決するための手段】
【０００７】
本願の１番目の発明によれば、工具を備えたロボットに対して、作業空間に配置されたワークの加工を実行させるためのロボットプログラムを作成するロボットプログラミング装置であって、前記作業空間を三次元的に表現した仮想空間を作成する仮想空間作成部と、前記仮想空間において、前記ワーク、前記ロボット及び前記工具をそれぞれ三次元的に表現したワークモデル、ロボットモデル及び工具モデルを配置するモデル配置部と、前記ワークを加工する際における前記工具の動作パターンが形成された投影対象物を前記仮想空間に配置する投影対象物配置部と、前記動作パターンを前記ワークモデルの少なくとも１つの面に投影することによって、前記ワークを加工する際に前記工具の加工点が通過する加工経路を作成する加工経路作成部と、前記ワークモデルの前記少なくとも１つの面に対する法線の方向、及び前記加工経路に基づいて、前記ワークを加工する際の前記工具の位置及び姿勢を決定する位置姿勢決定部と、前記位置姿勢決定部によって決定される前記工具の位置及び姿勢に基づいて、前記ワーク及び前記工具が、前記工具の前記加工点以外において互いに干渉するか否かを判定する判定部と、前記判定部によって干渉が発生すると判定された場合に、前記工具の前記加工点以外において前記ワーク及び前記工具が互いに干渉しないように、前記工具の位置及び姿勢の少なくとも一方を補正する位置姿勢補正部と、を備えるロボットプログラミング装置が提供される。
２番目の発明によれば、１番目の発明に係るロボットプログラミング装置において、前記位置姿勢補正部が、前記ロボットに対する教示内容を補正することによって、前記工具の位置及び姿勢の少なくとも一方を変更するように構成されている。
３番目の発明によれば、１番目の発明に係るロボットプログラミング装置において、前記位置姿勢補正部が、前記工具に関連付けられる座標系を変更することによって、前記工具の位置及び姿勢の少なくとも一方を変更するように構成されている。
４番目の発明によれば、１番目から３番目のいずれかの発明に係るロボットプログラミング装置において、前記工具の前記加工点が予め設定されている。
５番目の発明によれば、１番目から４番目のいずれかの発明に係るロボットプログラミング装置において、前記加工経路作成部が、前記動作パターンを前記ワークモデルの前記少なくとも１つの面に投影したときに、前記少なくとも１つの面に投影されない前記動作パターンの頂点を特定する頂点特定部と、前記頂点特定部によって特定される前記動作パターンの前記頂点を、当該頂点に対して最も近接する前記ワークモデルの前記少なくとも１つの面における点に置換する頂点置換部と、をさらに備えている。
６番目の発明によれば、１番目から５番目のいずれかの発明に係るロボットプログラミング装置が、前記ワークを加工する際における前記工具の複数の異なる動作パターンを記憶する動作パターン記憶部と、前記複数の異なる動作パターンから、前記投影対象物に形成される前記動作パターンを選択する動作パターン選択部と、をさらに備えている。
【０００８】
これら及び他の発明の目的、特徴及び利点は、添付図面に示される本発明の例示的な実施形態に係る詳細な説明を参照することによって、より明らかになるであろう。
【発明の効果】
【０００９】
本発明に係るロボットプログラミング装置によれば、仮想空間において動作パターンをワークモデルの面に投影することにより作成される加工経路を通って移動する工具がワークと干渉するか否かを自動的に判定する。そして、干渉が発生すると判定された場合は、工具の位置及び姿勢の少なくともいずれか一方を変更し、干渉が発生しないようなロボットプログラムを補正する。それにより、ロボットに対する教示工程を短時間で実行でき、作業効率が向上する。
【図面の簡単な説明】
【００１０】
【図１】ロボットシステムの構成例を示す図である。
【図２】表示装置による表示例を示す図である。
【図３】ロボットプログラミング装置の機能ブロック図である。
【図４】一実施形態に従ってロボットプログラムを作成する工程を示すフローチャートである。
【図５】仮想空間に配置されるロボットモデル、工具モデル及びワークモデルを示す図である。
【図６】動作パターンの例を示す図である。
【図７Ａ】動作パターンをワークモデルに投影する際の処理を説明する図である。
【図７Ｂ】動作パターンをワークモデルに投影する際の処理を説明する図である。
【図８】工具の位置又は姿勢を決定する工程を説明する図である。
【図９】工具の位置又は姿勢を変更する工程を示すフローチャートである。
【図１０Ａ】工具の位置及び姿勢を変更する工程を説明する図である。
【図１０Ｂ】工具の位置及び姿勢を変更する工程を説明する図である。
【図１０Ｃ】工具の位置及び姿勢を変更する工程を説明する図である。
【図１１】工具の位置及び姿勢を変更する工程を説明する図である。
【図１２】工具の位置及び姿勢を変更する工程を説明する図である。
【図１３】一変形例に係るロボットプログラミング装置の加工経路作成部の機能ブロック図である。
【図１４】一変形例において加工経路を作成する工程を説明する図である。
【図１５】工具に対して設定される加工点の例を示す図である。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して本発明の実施形態を説明する。図示される構成要素の寸法は、本発明の理解を助けるために適宜変更されている。また、同一又は対応する構成要素には、同一の参照符号が使用される。
【００１２】
図１は、本発明を適用可能なロボットシステムの構成例である。ロボットシステム１００は、ロボット１３０と、ロボット１３０を制御するロボット制御装置１２０と、ロボット１３０に対して所定の動作を実行させるためのロボットプログラムをオフラインで作成するロボットプログラミング装置１０と、を備えている。
【００１３】
ロボット１３０は、例えば垂直多関節ロボットであり、アームの先端に位置する手首１３２において工具１４０を保持可能であるように形成される。工具１４０は、特に限定されないものの、例えばカッター、グラインダ、ドリルなどである。ロボット１３０は、ロボット１３０の作業空間に配置されたワーク１５０に対して位置及び姿勢を変更できるように構成されており、それにより工具１４０とワーク１５０とが互いに相対移動するようになっている。図示された構成例では、ワーク１５０は、テーブル１６０に載置されているものの、本発明はそのような特定の例には限定されない。
【００１４】
ロボット制御装置１２０は、所定のロボットプログラムに従ってロボット１３０の関節軸を駆動するサーボモータ（図示せず）に対して制御指令を出力する。ロボット制御装置１２０は、公知の通信手段、例えば通信ケーブル１０２を介してロボットプログラミング装置１０に接続されており、ロボット制御装置１２０及びロボットプログラミング装置１０は、互いに信号及びデータを送受信できるようになっている。
【００１５】
ロボットプログラミング装置１０は、ＣＰＵ、ＲＯＭ、ＲＡＭなどの公知のハードウェア構成を有するデジタルコンピュータである。ロボットプログラミング装置１０は、公知のインターフェイスを介して表示装置１１０に接続されており、オフラインで実行される計算結果を視覚的に表示できるように構成されている。
【００１６】
ロボットプログラミング装置１０は、仮想空間内でロボット１３０を仮想的に動作させるとともに、その結果に基づいて、ロボットプログラムの作成及び編集を行うのに使用される。例えば、ロボットプログラミング装置１０は、工具１４０を備えたロボット１３０を使用して、作業空間に配置されたワーク１５０の加工を実行するためのロボットプログラムを作成する目的で使用される。
【００１７】
図２は、ロボットプログラミング装置１０とともに使用される表示装置１１０による表示例を示している。図２には、図１に示されるロボット１３０、工具１４０及びワーク１５０をそれぞれ三次元的に表現したロボットモデル３０、工具モデル４０及びワークモデル５０が仮想空間において示されている。図２には、簡単のため二次元の画像しか示されていないものの、操作者は、マウス又はキーボードなどの公知の入力デバイスを操作して視点を自由に変更することができる。それにより、操作者は、３次元空間における各構成要素の位置関係を視覚的に確認できるようになっている。
【００１８】
図３は、一実施形態に係るロボットプログラミング装置１０の機能ブロック図である。ロボットプログラミング装置１０は、仮想空間作成部１１と、モデル配置部１２と、動作パターン記憶部１３と、動作パターン選択部１４と、投影対象物配置部１５と、加工経路作成部１６と、位置姿勢決定部１７と、判定部１８と、位置姿勢補正部１９と、を備えている。
【００１９】
仮想空間作成部１１は、ロボット１３０の作業空間を三次元的に表現した仮想空間を作成する機能を有する。仮想空間作成部１１によって作成された仮想空間は、表示装置１１０の画面に表示される。
【００２０】
モデル配置部１２は、ロボットプログラムを作成する際に考慮されるべき構成要素を三次元的に表現したモデルを仮想空間に配置する機能を有する。各々の構成要素のモデルは、例えばＣＡＤデータに基づいて予め作成されており、ロボットプログラミング装置１０のＲＯＭに記憶されている。一実施形態によれば、ロボットモデル３０、工具モデル４０及びワークモデル５０が、実際の作業空間における互いの位置関係に対応するように配置される（図２参照）。ワーク１５０又はロボット１３０の周囲に存在する障害物を考慮する必要がある場合、モデル配置部１２は、障害物に対応する追加のモデルを仮想空間に配置する。
【００２１】
動作パターン記憶部１３は、ワーク１５０を加工する際における工具１４０の複数の異なる動作パターンを記憶する機能を有する。図６は、適用可能な動作パターンの幾つかの例を示している。図示されるように、動作パターンには、Ｖ字状、Ｕ字状、Ｎ字状又は螺旋状のパターンが含まれるものの、それらには限定されない。
【００２２】
動作パターン選択部１４は、動作パターン記憶部１３に記憶された複数の異なる動作パターンから、後述する投影対象物に形成される動作パターンを選択する機能を有する。
【００２３】
投影対象物配置部１５は、動作パターン選択部１４によって選択された動作パターンが形成された面を有する投影対象物を仮想空間に配置する機能を有する。投影対象物の形状及び寸法は、ロボットプログラミング装置１０のＲＯＭに予め記憶されている。
【００２４】
加工経路作成部１６は、投影対象物に形成された動作パターンをワークモデル５０に投影することによって、工具１４０の加工点が通過する加工経路を作成する機能を有する。
【００２５】
位置姿勢決定部１７は、ワークモデル５０の面に対する法線の方向、及び加工経路作成部１６によって作成される加工経路に基づいて、ワーク１５０を加工する際の工具１４０の位置及び姿勢を決定する機能を有する。
【００２６】
判定部１８は、位置姿勢決定部１７によって決定される工具１４０の位置及び姿勢に基づいて、ワーク１５０及び工具１４０が、工具１４０の加工点以外において互いに干渉するか否かを判定する機能を有する。
【００２７】
位置姿勢補正部１９は、判定部１８によって干渉が発生すると判定された場合に、工具１４０の加工点以外においてワーク１５０及び工具１４０が互いに干渉しないように、工具１４０の位置及び姿勢の少なくとも一方を補正する機能を有する。
【００２８】
図４は、一実施形態に係るロボットプログラミング装置１０によって実行される処理を示すフローチャートである。まず、ステップＳ４０１において、仮想空間作成部１１が、ロボット１３０の作業空間を三次元的に表現した仮想空間を作成する。次いでステップＳ４０２において、モデル配置部１２が、図５に示されるように、ロボットモデル３０、工具モデル４０及びワークモデル５０を仮想空間に配置する。各々のモデルの配置は、実際の作業空間における各構成要素の位置関係に対応している。
【００２９】
ステップＳ４０３において、動作パターン選択部１４が、動作パターン記憶部１３に記憶された複数の異なる動作パターンのうち、１つの動作パターンを選択する。ステップＳ４０４において、投影対象物配置部１５が、投影対象物を仮想空間に配置する。図７Ａは、仮想空間に配置されるワークモデル５０及び投影対象物６０をそれぞれ示している。図示される実施形態においては、投影対象物６０は、Ｖ字状の動作パターン６２が形成された平面である。投影対象物６０は他の形態を有していてもよく、例えば２つ以上の平面を組み合わせた立体形状、又は少なくとも１つの曲面を含む立体形状を有していてもよい。図７Ａに示されるように、投影対象物６０は、ワークモデル５０に対して所定の位置関係に配置される。具体的には、投影対象物６０は、動作パターン６２がワークモデル５０の面５２に投影されるような位置関係に配置される。
【００３０】
ステップＳ４０５において、加工経路作成部１６によって、投影対象物６０に形成された動作パターン６２がワークモデル５０の面５２に投影され、図７Ｂに示されるように、加工経路５４がワークモデル５０の面５２に作成される。
【００３１】
ステップＳ４０６において、ステップＳ４０５において求められた加工経路５４、及び予め定められるワーク１５０と工具１４０との位置関係に基づいて、加工経路５４を通って移動する工具１４０の位置及び姿勢を決定する。工具１４０は、ワーク１５０に対して所定の角度、例えば、ワーク１５０の接平面に対して垂直な方向を向くように姿勢が決定される。図８には、加工経路５４を通るワークモデル５０の接平面５６に対する法線５８が示されている。一実施形態によれば、工具モデル４０の姿勢が法線５８に一致するように、工具１４０の位置及び姿勢が決定される。このようにして、ロボット１３０に対して所定の加工を実行させるためのロボットプログラムが、ロボットプログラミング装置１０によって作成される。
【００３２】
図４を参照して前述した態様に従って作成されたロボットプログラムを実行したとき、工具１４０とワーク１５０が干渉する場合がある。そのような場合、プログラムの修正が必要になる。本実施形態によれば、ロボットプログラミング装置１０の判定部１８によって、工具１４０及びワーク１５０が互いに干渉すると判定された場合、後述する処理を実行してロボットプログラムを補正する。
【００３３】
図１０Ａは、ロボットプログラムに従ってワークモデル５０の面５２に沿って移動する工具モデル４０を示している。黒丸Ｐ１〜Ｐ３は、工具モデル４０とワークモデル５０との接触点（すなわち加工点）を示している。図１０Ａから分かるように、接触点Ｐ１，Ｐ３において工具モデル４０がワークモデル５０に接触するとき、工具モデル４０とワークモデル５０との間に干渉は発生しない。他方、接触点Ｐ２においては、工具モデル４０が接触点Ｐ２以外の箇所でワークモデル５０に接触しており、干渉が発生している。
【００３４】
図９は、工具１４０とワーク１５０との間に干渉が発生しないように工具１４０の位置又は姿勢を変更する処理を示すフローチャートである。
【００３５】
ステップＳ９０１において、位置姿勢補正部１９によって、工具１４０の位置及び姿勢の少なくともいずれか一方が変更される。例えば、工具１４０の位置が、工具１４０に関連付けられる工具座標系のＸ軸方向に所定の変位量αだけずらされる。具体的には、ロボット１３０に対して教示される教示点を、工具座標系のＸ軸方向に変位量αだけずらすことによって、工具１４０の位置が変更される。別の例では、ロボット１３０の手首１３２に対する教示姿勢を、工具座標系のＸ軸回りに変位量β［度］だけ回転させることによって、工具１４０の姿勢を変更できる。
【００３６】
図９を再度参照すれば、ステップＳ９０２において、ステップＳ９０１で変更されたロボットプログラムをオフラインで実行する。ステップＳ９０３では、判定部１８が、工具１４０がワーク１５０に干渉するか否かを判定する。ステップＳ９０３において、干渉が発生すると判定された場合、ステップＳ９０１に戻り、位置姿勢補正部１９が、工具１４０の位置及び姿勢の少なくともいずれか一方を再度変更する。ステップ９０３において、干渉が発生しないと判定された場合、ロボットプログラムの補正処理を終了する。
【００３７】
図１０Ｂは、図９を参照して説明した補正処理によって工具１４０の位置を変更した場合の例を示している。図１０Ａ及び図１０Ｂを対比すれば、工具１４０の位置を補正した結果として、工具モデル４０の加工点（工具モデル４０がワークモデル５０に接触する位置）が変化していることが分かるであろう。そして、各接触点Ｐ１〜Ｐ３において、工具モデル４０とワークモデル５０とは加工点以外では互いに接触していない。すなわち、補正後のロボットプログラムによれば、工具１４０とワーク１５０とが互いに干渉することなく加工工程を実行できる。
【００３８】
図１０Ｂに示されるように、干渉が発生しないと判定されていた接触点Ｐ１及びＰ３（図１０Ａ参照）においても、工具モデル４０の位置が変更されている。すなわち、加工経路５４の全体にわたって工具１４０の位置が変更される。しかしながら、別の実施形態において、位置姿勢補正部１９は、干渉が発生すると判定された箇所、すなわち接触点Ｐ２のみにおいて工具１４０の位置（又は姿勢）を変更するように構成されてもよい。図１０Ｃには、接触点Ｐ１及びＰ３においては工具１４０の位置が補正されない一方で、接触点Ｐ２において工具１４０の位置が補正された例を示している（すなわち、工具モデル４０の位置のみが変更されている）。
【００３９】
本実施形態によれば、投影対象物６０に形成された所定の動作パターン６２に従って加工経路５４が作成されるとともに、加工経路５４に沿って工具１４０の位置及び姿勢が自動的に決定される。さらに、ワーク１５０と工具１４０が互いに干渉する場合、工具１４０の位置及び姿勢の少なくともいずれか一方が自動的に補正される。したがって、ワーク１５０と工具１４０との干渉が発生しないようにしたロボットプログラムが自動的に作成されるので、ロボット１３０に対する教示工程を短時間で実行でき、効率が向上する。
【００４０】
別の実施形態において、工具１４０に関連付けられる工具座標系を補正することによって、工具１４０の位置及び姿勢の少なくともいずれか一方を変更してもよい。例えば、座標系をＸ軸方向に変位量δだけずらせば、工具１４０の位置が結果的に変位量δだけ移動することになる。図１１及び図１２は、工具１４０を加工点１４２側から見た図である。図１１に示される補正前の状態において、工具座標系の原点は、工具１４０の中心軸線上に設定されている。それに対し、図１２に示される補正後の状態では、工具座標系の原点が、図の左側に変位量δだけ変位している。或いは、例えば、座標系をＸ軸回りに変位量δ’［度］だけ回転させれば、工具１４０の姿勢を変位量δ’［度］だけ回転させることができる。
【００４１】
図１３は、前述した実施形態の変形例を説明する図である。本変形例によれば、加工経路作成部１６が、頂点特定部２０と、頂点置換部２１と、をさらに備えている。
【００４２】
頂点特定部２０は、動作パターン６２をワークモデル５０に投影したときに、ワークモデル５０に投影されない動作パターン６２の頂点を特定する機能を有する。
【００４３】
頂点置換部２１は、頂点特定部２０によって特定された動作パターン６２の頂点を、当該頂点に対して最も近接するワークモデル５０の面５２に位置する点に置換する機能を有する。例えば図１４に示されるように、動作パターン６２の頂点６４、６６（黒丸で示される）がワークモデル５０の範囲外に位置するような場合、当該頂点６４、６６に最も近接する箇所に位置するワークモデル５０の面５２上の点６８、７０（白丸で示される）を利用して加工経路５４が形成されるようになる。
【００４４】
本変形例によれば、加工経路作成部１６が、必要に応じて頂点置換部２１によって置換された点に基づいて加工経路５４を作成する。したがって、加工経路５４を作成する工程が自動化されるので、教示工程を効率的に実行できる。
【００４５】
一実施形態において、工具１４０の加工点が予め定められていてもよい。この実施形態によれば、位置姿勢決定部１７は、例えば図１５に示されるように、工具１４０の中心軸線に対して垂直に交差する直線上に設定される範囲１４４内において加工点が設定されるように、工具１４０の位置及び姿勢を決定する。また、位置姿勢補正部１９は、補正後の工具１４０の加工点が前述した範囲１４４内に含まれるように、工具１４０の位置及び姿勢を補正するよう構成される。
【００４６】
図１５を参照して説明した実施形態によれば工具１４０における適切な加工点においてワーク１５０の加工が実行されるようになる。それにより、意図しない加工点においてワーク１５０の加工が実行されるのを防止できる。
【００４７】
以上、本発明の種々の実施形態について説明したが、当業者であれば、他の実施形態によっても本発明の意図する作用効果を実現できることを認識するであろう。特に、本発明の範囲を逸脱することなく、前述した実施形態の構成要素を削除又は置換することができるし、或いは公知の手段をさらに付加することができる。また、本明細書において明示的又は暗示的に開示される複数の実施形態の特徴を任意に組合せることによっても本発明を実施できることは当業者に自明である。
【符号の説明】
【００４８】
１０    ロボットプログラミング装置
１１    仮想空間作成部
１２    モデル配置部
１３    動作パターン記憶部
１４    動作パターン選択部
１５    投影対象物配置部
１６    加工経路作成部
１７    位置姿勢決定部
１８    判定部
１９    位置姿勢補正部
２０    頂点特定部
２１    頂点置換部
３０    ロボットモデル
４０    工具モデル
５０    ワークモデル
５４    加工経路
６０    投影対象物
６２    動作パターン
１００    ロボットシステム
１１０    表示装置
１２０    ロボット制御装置
１３０    ロボット
１４０    工具
１５０    ワーク
１６０    テーブル
【図１】
2016101644.tif 000003
【図２】
2016101644.tif 000004
【図３】
2016101644.tif 000005
【図４】
2016101644.tif 000006
【図５】
2016101644.tif 000007
【図６】
2016101644.tif 000008
【図７Ａ】
2016101644.tif 000009
【図７Ｂ】
2016101644.tif 000010
【図８】
2016101644.tif 000011
【図９】
2016101644.tif 000012
【図１０Ａ】
2016101644.tif 000013
【図１０Ｂ】
2016101644.tif 000014
【図１０Ｃ】
2016101644.tif 000015
【図１１】
2016101644.tif 000016
【図１２】
2016101644.tif 000017
【図１３】
2016101644.tif 000018
【図１４】
2016101644.tif 000019
【図１５】
2016101644.tif 000020