(57)【要約】【課題】加工ツールの所定の加工部をワーク外周の所定の被加工部位に対して容易に対応関係を設定することができＮＣ加工データの作成にそれほどの熟練を要しないＮＣ加工装置を提供すること。【解決手段】ＣＡＤ／ＣＡＭシステムにおいて加工経路データを作成する際にモニター上にワークＷの三次元モデルと加工ツール６の三次元モデルを表示させる。ワークＷ表面のばり取り部分を決定し、加工ツール６の当接部位を決定すると、モニター上で加工ツール６の当接部位がワークＷの被加工部位に当接している状態が表示されることとなる。そのため、ワークＷに対してツールがどのような位置・角度で接しているかをオフライン状態で仮想的に確認できることとなる。そして、加工経路データを作成すると、モニター上で加工ツール６がワークＷに対して加工デモを行う。その加工経路データに基づいてＮＣ加工データが作成されモニターの表示と同じ経路で加工が行われる。【選択図】図５
2010205215.tif 000002
【特許請求の範囲】
【請求項１】
ＣＡＤ／ＣＡＭシステムにおいて作成したＮＣ加工データに基づきアームに加工ツールを装着したロボットによって所定形状のワーク表面にアクセスさせて当該ワークに対する所定の表面加工をさせるようにしたＮＣ加工装置において、
前記ＣＡＤ／ＣＡＭシステムは、
前記ワークの三次元形状データに基づいて当該ワークの三次元モデルをモニター上に表示させるワークモデル表示手段と、
前記加工ツールの三次元形状データに基づいて当該加工ツールの三次元モデルを前記モニター上に表示させる加工ツールモデル表示手段と、
前記ワーク表面において前記加工ツールで加工するための複数の被加工部位を決定するワーク被加工部位決定手段と、
前記ワークの前記被加工部位の任意の複数の位置に対する前記加工ツールの加工部の当接部位を決定する加工ツール当接部位決定手段と、
前記ワーク被加工部位決定手段で前記被加工部位が決定された前記ワークに対して前記加工ツール当接部位決定手段で決定された前記加工ツールの前記当接部位を前記モニター上で当接させた状態で表示させる加工ツール当接状態表示手段と、
前記加工ツールの加工経路データを前記ワークの前記被加工部位の任意の複数の位置を教示点として含む所定の経路で作成する加工経路作成手段とを備え、
前記ＣＡＤ／ＣＡＭシステムで得られた前記ワークに対する前記加工ツールの加工経路データに基づいてＮＣ加工データを作成し、同ＮＣ加工データに基づいて実際のワークを実際の加工ツールで加工するようにしたことを特徴とするＮＣ加工装置。
【請求項２】
前記加工ツール当接部位決定手段において前記加工ツールの前記ワークの前記被加工部位に対する前記加工部の前記当接部位の決定は前記モニター上に表示される当該ワークの三次元モデルに対して行うことを特徴とする請求項１に記載のＮＣ加工装置。
【請求項３】
前記加工ツール当接部位決定手段において前記加工ツールにおける前記加工部の前記当接部位の決定は前記モニター上に表示される当該加工ツールの三次元モデルに対して行うことを特徴とする請求項１又は２に記載のＮＣ加工装置。
【請求項４】
加工経路作成手段で作成された加工経路で前記ワークに対する前記加工ツールの動作を前記モニター上にシミュレーションすることを特徴とする請求項１〜３のいずれかに記載のＮＣ加工装置。
【請求項５】
前記ロボットの前記アームの三次元形状データに基づいて当該アームの三次元モデルを前記モニター上に表示させるアームモデル表示手段を備え、同アームを前記加工ツールの動作に同期させて前記モニター上にシミュレーションすることを特徴とする請求項４に記載のＮＣ加工装置。
【請求項６】
前記モニター上で前記加工ツール及び前記アームの三次元モデルの動作をシミュレーションした際に前記アーム外形の空間座標が前記ワークの空間座標と干渉する位置関係となる場合にその旨を報知する報知手段を備えていることを特徴とする請求項５に記載のＮＣ加工装置。
【請求項７】
前記モニター上で前記加工ツール及び前記アームの三次元モデルの動作をシミュレーションした際に前記アームの稼働範囲が前記加工ツールの動きに追随できない場合にはその旨を報知する報知手段を備えていることを特徴とする請求項５に記載のＮＣ加工装置。
【請求項８】
前記加工ツール当接部位決定手段における前記ワークに対する前記加工ツールの当接角度は設定によって変更可能であることを特徴とする請求項１〜７のいずれかに記載のＮＣ加工装置。
【請求項９】
１又は複数の前記加工ツールは同各加工ツール毎あるいは単一の同加工ツールにおいて異なる属性の複数の前記加工部を備え、前記加工ツール当接状態表示手段では所定の前記ワークの前記被加工部位に対しては特定の属性の前記加工部とのみ前記モニター上で当接させた状態で表示させることを特徴とする請求項１〜８のいずれかに記載のＮＣ加工装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＡＤ／ＣＡＭシステムによって作成されたデータに基づいて実際にワークを加工するように駆動させられるＮＣ加工装置に関するものである。
【背景技術】
【０００２】
ワークのバリ取りや、表面研削加工を行うために従来からＮＣ加工装置が用いられている。ワークのバリ取りのためのＮＣ加工装置としては例えば特許文献１のような先行技術が挙げられる。特許文献１ではオペレーターはティーチングボックス３を操作して、ロボット１の工具６をモデルワーク８に沿って動作させ、その際のモデルワーク８に沿ったロボット１の動きを教示点位置データとして獲得して制御装置２に記憶させるものである。これによって、ワークのバリ取りをしたい稜線に沿って教示点位置データを得ればロボット１をその教示点位置データに従った動作をさせることで所望の稜線部位のバリ取りが可能となるという技術である。
しかし、この特許文献１の技術では実機としてＮＣ加工装置を使用して教示点位置データを得ることになるため時間がかかりすぎ、データを獲得するために実機を使用しなければならないために当該ＮＣ加工装置はその間ワークの加工・生産ができないこととなって生産性の点で不利となる。また、工具６をモデルワーク８に沿ってきれいに移動させるにはティーチングボックス３を操作に熟練が必要となるため、ＮＣ加工作業に携わる者であっても必ずしも容易にこの作業を行えるものではない。
このようなことから、特許文献１のように実際にティーチングボックス３を操作して実機としてＮＣ加工装置を使用して教示点位置データを得ることの代わりに、ＣＡＤ及びＣＡＭ装置によって稜線の教示点位置データを作成し、そのデータに基づいてロボット４にワークのバリ取りをさせる技術が提案されている。例えば特許文献２はＣＡＤ及びＣＡＭ装置によって稜線の教示点位置データを作成するとともに得られた稜線データを細かくセグメント化し、それを利用して加工ツールの稜線に対する面取り角度を決定するというものである。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平２−２５７３１０号公報
【特許文献２】特開平５−２３３０４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献２のようなＣＡＤ及びＣＡＭ装置を利用したバリ取り用のＮＣ加工装置においても加工ツールの所定の加工部をワークの所定の被加工部位に対して対応関係を設定することは困難である。例えば、加工経路を設計する際に加工ツールのどの位置をワークの被加工部位（バリ取りを行いたい稜線）のどの位置に配置するかとか、どのような面取り角度で当接させるかといった具体的な加工ツールとワークの位置関係は結局は熟練者でなければ決定は困難である。このような問題は、バリ取りに限らず所定の形状に加工されたワークの外面に対する加工一般、例えばワークの外周面に施される研磨加工においても同様に生じる問題であった。
そのため、加工ツールの所定の加工部をワーク外周の所定の被加工部位に対して容易に対応関係を設定することができ加工経路データの作成にそれほどの熟練を要しないＣＡＤ／ＣＡＭシステムを使用したＮＣ加工装置が求められていた。
本発明は、このような従来の技術に存在する課題に着目してなされたものである。その主目的は、加工ツールの所定の加工部をワーク外周の所定の被加工部位に対して容易に対応関係を設定することができＮＣ加工データの作成にそれほどの熟練を要しないＮＣ加工装置を提供することである。
【課題を解決するための手段】
【０００５】
上記の目的を達成するために第１の手段では、ＣＡＤ／ＣＡＭシステムにおいて作成したＮＣ加工データに基づきアームに加工ツールを装着したロボットによって所定形状のワーク表面にアクセスさせて当該ワークに対する所定の表面加工をさせるようにしたＮＣ加工装置において、
前記ＣＡＤ／ＣＡＭシステムは、前記ワークの三次元形状データに基づいて当該ワークの三次元モデルをモニター上に表示させるワークモデル表示手段と、前記加工ツールの三次元形状データに基づいて当該加工ツールの三次元モデルを前記モニター上に表示させる加工ツールモデル表示手段と、前記ワーク表面において前記加工ツールで加工するための複数の被加工部位を決定するワーク被加工部位決定手段と、前記ワークの前記被加工部位の任意の複数の位置に対する前記加工ツールの加工部の当接部位を決定する加工ツール当接部位決定手段と、前記ワーク被加工部位決定手段で前記被加工部位が決定された前記ワークに対して前記加工ツール当接部位決定手段で決定された前記加工ツールの前記当接部位を前記モニター上で当接させた状態で表示させる加工ツール当接状態表示手段と、前記加工ツールの加工経路データを前記ワークの前記被加工部位の任意の複数の位置を教示点として含む所定の経路で作成する加工経路作成手段とを備え、前記ＣＡＤ／ＣＡＭシステムで得られた前記ワークに対する前記加工ツールの加工経路データに基づいてＮＣ加工データを作成し、同ＮＣ加工データに基づいて実際のワークを実際の加工ツールで加工するようにしたことをその要旨とする。
【０００６】
また、第２の手段では第１の手段に加え、前記加工ツール当接部位決定手段において前記加工ツールの前記ワークの前記被加工部位に対する前記加工部の前記当接部位の決定は前記モニター上に表示される当該ワークの三次元モデルに対して行うようにしたことをその要旨とする。
また、第３の手段では第１又は第２の手段に加え、前記加工ツール当接部位決定手段において前記加工ツールにおける前記加工部の前記当接部位の決定は前記モニター上に表示される当該加工ツールの三次元モデルに対して行う
また、第４の手段では第１〜第３のいずれか手段に加え、加工経路作成手段で作成された加工経路で前記ワークに対する前記加工ツールの動作を前記モニター上にシミュレーションするようにしたことをその要旨とする。
また、第５の手段では第４の手段に加え、前記ロボットの前記アームの三次元形状データに基づいて当該アームの三次元モデルを前記モニター上に表示させるアームモデル表示手段を備え、同アームを前記加工ツールの動作に同期させて前記モニター上にシミュレーションするようにしたことをその要旨とする。
また、第６の手段では第５の手段に加え、前記モニター上で前記加工ツール及び前記アームの三次元モデルの動作をシミュレーションした際に前記アーム外形の空間座標が前記ワークの空間座標と干渉する位置関係となる場合にその旨を報知する報知手段を備えるようにしたことをその要旨とする。
また、第７の手段では第５の手段に加え、前記モニター上で前記加工ツール及び前記アームの三次元モデルの動作をシミュレーションした際に前記アームの稼働範囲が前記加工ツールの動きに追随できない場合にはその旨を報知する報知手段を備えていることをその要旨とする。
【０００７】
また、第８の手段では第１〜第７の手段に加え、前記加工ツール当接部位決定手段における前記ワークに対する前記加工ツールの当接角度は設定によって変更可能であることをその要旨とする。
また、第９の手段では第１〜第８の手段に加え、１又は複数の前記加工ツールは同各加工ツール毎あるいは単一の同加工ツールにおいて異なる属性の複数の前記加工部を備え、前記加工ツール当接状態表示手段では所定の前記ワークの前記被加工部位に対しては特定の属性の前記加工部とのみ前記モニター上で当接させた状態で表示させるようにしたことをその要旨とする。
【０００８】
上記のような構成では、ＣＡＤ／ＣＡＭシステムにおいて加工経路データを作成する際にモニター上にワークの三次元モデルと加工ツールの三次元モデルを表示させることとなり、ワーク表面の加工ツールで加工するための複数の被加工部位を決定するとともに被加工部位に当接される加工ツールの加工部の当接部位を決定すると、モニター上で加工ツールの加工部の当接部位がワークの被加工部位に当接している状態が表示されることとなる。そのため、ワークに対してツールがどのような位置・角度で接しているかをオフライン状態で仮想的に確認できることとなる。ワークに対する加工ツールの当接角度は設定によって適宜変更可能とすることが好ましい。そしてワークの被加工部位の任意の複数の位置にこのように加工ツールの加工部の当接部位を当接させていくことで加工経路データの作成に必要な教示点データを得ることができる。加工経路データはこのワークの前記被加工部位の任意の複数の位置を教示点として含む所定の経路に沿って適宜教示点データを設定して作成していく。そして、加工経路データに基づいて更にＮＣ加工データを作成しＮＣ加工装置を駆動させる。
ここに「加工ツールの加工部の当接部位をワークの被加工部位に当接させる」ことはＣＡＤ／ＣＡＭシステムに導入されているいわゆるスナップ処理機能を利用する。スナップ処理機能とはモニター上に表示されるカーソルや所定の図形等の移動対象物をモニター上の所定の位置に移動させる機能である。
加工ツールのワークの被加工部位に対する当接部位の決定はモニター上に表示される当該ワークの三次元モデルに対して行うことが好ましい。これによって、具体的にワークのどの位置に加工ツールが配置されるかがわかることとなる。
また、加工ツールにおける加工部の当接部位の決定はモニター上に表示される当該加工ツールの三次元モデルに対して行うことが好ましい。これによってワークの加工に好適な加工ツールの加工部の位置をオフライン状態で仮想的に確認できることとなる。
【０００９】
また、ＣＡＤ／ＣＡＭシステムではワークに対する加工ツールの加工経路データを得ることが目的の１つであるが、本発明では加工経路決定手段で決定された加工経路でワークに対する加工ツールの動作を前記モニター上にシミュレーションさせることがより好ましい。これによってツールの実際の動きを確認でき、好ましくない状態、例えば加工ツールの加工部の当接部位が妥当でなかったり当接角度が好ましくなかったり、実機に適用した際に大きな加速度が発生して装置にダメージを与える可能性がある場合等を検証することができる。その結果、加工ツールが好ましくない動きをする場合には再度加工ツールの加工部の当接部位置の設定条件を変更させることができる。
【００１０】
また、本発明ではロボットのアームの三次元形状データに基づいて当該アームの三次元モデルを前記モニター上に表示させ、そのアームを加工ツールの動作に同期させて前記モニター上にシミュレーションさせることが好ましい。これによってツール及びアームの実際の動きを確認でき、アームがワークに干渉してしまわないかを検証することができる。その結果、再度加工ツールの加工部の当接部位置の設定条件やアームの軌跡を変更させることができる。
この時、アーム外形の空間座標が前記ワークの空間座標と干渉する位置関係となる場合にその旨を報知する報知手段を備えていることが好ましい。報知手段として具体的には少なくともワークとアームの干渉部分をモニター画面上で色彩を変えて表示させるようにする等の視覚的な報知が最も妥当であるが、音声を伴っても構わない。
また、アームの稼働範囲が前記加工ツールの動きに追随できない場合、つまりアームの立体的な位置や回転位置において当該アームでは実際には加工ツールと同期して稼働することは無理であると判断した場合にはその旨を報知する報知手段を備えていることが好ましい。
【００１１】
また、１又は複数の前記加工ツールは同各加工ツール毎あるいは単一の同加工ツールにおいて異なる属性の複数の加工部を備えており、加工ツール当接状態表示手段では所定のワークの被加工部位に対しては特定の属性の前記加工部とのみモニター上で当接させた状態で表示させることができる好ましい。例えば、余り粗い目の砥石車では被加工部位が綺麗に仕上がらない場合にはこの綺麗に仕上げたい被加工部位については選択できないようにする等を念頭においたものである。ここに「異なる属性」とは形状のことなる刃体や粗さの異なる研削面等であって、複数の加工ツールでそれぞれ属性が異なる場合と１つの加工ツール内で異なる属性の加工部を備える場合が想定される。
【発明の効果】
【００１２】
上記各請求項の発明では、加工経路の設計において加工ツールの所定の加工部とワーク外周の所定の被加工部位に対する対応関係を容易に設定することができ、その結果として加工ツールの加工経路データの作成にそれほどの熟練が必要でなく、また熟練者も容易に加工経路データを作成することが可能である。そのため、加工経路データに基づくＮＣ加工データの作成の迅速化も図られることとなりワークの加工効率が向上する。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施例のＮＣ加工装置の構成を模式的に説明する説明図。
【図２】本実施例のＣＡＤステーションの電気的構成を説明するブロック図。
【図３】ＣＬデータを獲得するまでのオペレータの操作ルーチンを説明するフローチャート。
【図４】研削加工ツール要部の（ａ）は加工部を斜線あるいは塗りつぶしで示した正面図、（ｂ）は斜視図。
【図５】モニター画面上でワークに研削加工ツールがスナップされた状態の説明図。
【図６】研削加工ツールの軸線と加工処理を受ける稜線の法線との稜線正面方向から見た位置関係を説明する説明図。
【図７】研削加工ツールの軸線と加工処理を受ける稜線の法線との稜線端面方向から見た位置関係を説明する説明図。
【図８】ツールにロボットを接続した状態でシミュレーションした際にツールに対してアームが可動範囲にあるかどうかを判断するＭＰＵの処理ルーチンを説明するフローチャート。
【図９】モニター画面上で研削加工ツールとロボットが接続されている状態の説明図。
【発明を実施するための形態】
【００１４】
以下、本発明のＮＣ加工装置を具体化した実施例を図面に基づいて説明する。
図１に示すように、ＮＣ加工装置１はＣＡＤ／ＣＡＭシステムを搭載したＣＡＤステーション２と、ＣＡＤステーション２と接続されたコントローラ３と、コントローラ３に接続されたロボット４とから構成されている。ロボット４は軸構成のアーム５を備え、アーム５先端には加工ツール６が着脱可能に取り付けられている。
図２はＣＡＤステーション２の電気的構成を説明するブロック図である。ＣＡＤステーション２は制御装置であるＭＰＵ（Micro  Processing  Unit）１１を備えている。ＭＰＵ１１にはＲＯＭ１２及びＲＡＭ１３が接続されている。ＲＯＭ１２は形状モデラ、グラフィックソフトウェア、会話処理ソフトウェア等から構成されるＣＡＤ／ＣＡＭシステムプログラムが格納されている。ＲＡＭ１３はＣＤ−ＲＯＭ２１からロードされた各種のデータ（例えばワーク、加工ツール、ロボットの形状データ）やＮＣデータを作成するための加工形状データあるいはプログラムを一時的に記憶する。
また、ＭＰＵ１１にはデータインターフェース手段としてハードディスク・ドライブ１４とＣＤ−ＲＯＭ・ドライブ１５、データ入力手段としてのキーボード１６、ペンタブレット１７、データ出力手段としてプリンタ１８、プロッタ１９及びモニター２０がそれぞれ接続されている。
ハードディスク・ドライブ１４内のハードディスクにはＣＡＤ／ＣＡＭ用のアプリケーションソフトウェアやＮＣデータ作成用のアプリケーションソフトウェアが格納されている。ＣＤ−ＲＯＭ・ドライブ１５は作成したＣＡＤデータ、ＣＬデータ、ＮＣデータ等を保存したり、保存した各種データをロードするＣＤ−ＲＯＭ２１を駆動させる。オペレーターはモニタ２０上におけるＧＵＩ系画面でデータ入力手段からデータを作成しあるいは作成したデータを入力する。また、モニタ２０上に表示される画像や数値等のデータあるいはプログラムの内容は適宜データ出力手段から出力可能である。
このような構成において、ＭＰＵ１１はハードディスク及びＲＯＭ１２の各種プログラム及びデータと入力手段からの入力に基づいて加工経路データに相当するＣＬ（カッターロケーション）データを作成し、更にＣＬデータをＮＣデータに変換する。
ＣＬデータとは加工ツールのワークの所定部位に対する移動軌跡や移動速度等のデータであって、加工ツールデータ、ワークデータ、加工条件データ等のデータに基づいてＣＡＤ／ＣＡＭシステムプログラムによって作成される。
ＮＣデータは工作機械としてのロボット４に適用させるためにＣＬデータを形式変換したデータである。ＮＣデータはＣＡＤステーション２から直接コントローラ３に出力しても、ＣＤ−ＲＯＭ等の外部記憶装置に一旦保存してからコントローラ３に出力してもどちらでもよい。
【００１５】
次に、ＣＡＤステーション２で実行されるデータ作成作業について説明する。データ作成作業は、
１）ワーク、加工ツール及びロボットの３Ｄ（三次元）モデル作成工程
２）ワークモデルへのバリ部位の決定工程
３）加工ツールの加工位置をバリ部位に適用するティーチング工程
４）加工ツールのロボットへの接続工程
５）ロボットの動作のシミュレーションによるアーム干渉確認工程
６）ＣＬデータをＮＣ加工データを作成するＮＣ加工データ作成工程
から構成される。尚、モニター２０に画像として表示される加工ツール及びロボットは上記の実機としての加工ツール６及びロボット４とは異なるわけであるが実機に対応するものとして実機と同じ符号を付して説明するものとする。以下、順に説明する。
【００１６】
１）ワーク、加工ツール及びロボットの３Ｄモデル作成工程
３ＤモデルはＣＡＤ／ＣＡＭ用のアプリケーションソフトウェアと上記入力手段による所定の三次元形状データの入力によってモニタ２０の画面上で作成するか、あるいは既に作成されたと三次元形状のＣＡＤデータを例えばＣＤ−ＲＯＭ・ドライブ１５を介してロードして画面上に展開させる。後述するスナップ制限機能はこの段階で設定する。尚、ロボット４とワークＷ及び加工ツール６との関連は全工程の後半で必要となるため、この段階ではロボット４のデータは必ずしも必須ではない。
２）ワークモデルへのバリ部位の決定工程
ワークＷのバリが発生する稜線部分は面と面が交差する線分として認識できる。ＭＰＵ１１はオペレーター操作による指示（命令）によってワークＷ表面に現れるすべての稜線について稜線データをして算出する。オペレーターはＧＵＩ画面において３Ｄモデルの稜線に対してペンタブレット１７を用いてアクセスし、ＭＰＵ１１はアクセス点の位置に基づいてバリ取り加工を施す必要のある稜線を決定する。この決定された稜線が被加工部位に相当する。
【００１７】
３）加工ツールの加工位置をバリ部位に適用するティーチング工程
この工程は上記２）において決定されたバリ取りの対象となる稜線Ｅｘに加工ツールの所定の加工部を所定の面取り角度で連続的に接触させることで当該稜線に対して加工ツールの加工経路を設定する工程となる。この工程の流れについてオペレーターの操作に対応した図３のフローチャートに従って説明する。オペレーターの操作によって処理を実行するのはＭＰＵ１１である。
まず、ステップＳ１においてオペレーターはＧＵＩ画面において３Ｄモデルの加工ツール６の加工部位にワークＷへの当接部位を設定する。本実施例では例えば図４（ａ）（ｂ）に示すような外形の研削加工ツール６を上記ワークのバリ取り加工を施す必要のある稜線Ｅ１に適用するものとして３Ｄモデル化して説明する。加工ツールの形状や数は適宜変更可能である。研削加工ツール６は４種類の粗さの研削面６ａ〜６ｄをその外周の異なる部位に有する加工ツールである。本実施例では研削加工ツール６は固有の直交座標系Δ１において軸中心先端を基準位置Ｏとし、直交座標系Δ１のｚ軸方向を研削加工ツール６の軸方向とした初期値Ｏ（ｘ0、ｙ0、ｚ0）を有している。まずオペレーターはこのような研削加工ツール６の表面の研削面６ａ〜６ｄの所定の位置を当接部位として設定する。この設定操作は数値としてキーボード１６によって入力することも可能であるが、本実施例ではモニタ２０のＧＵＩ画面において３Ｄモデルの所定の位置に対してペンタブレット１７を用いてアクセスして操作することが可能である。この時、オペレーターが指定した位置（当接部位）は上記基準位置Ｐから所定量オフセットした位置として数値的に認識される。この位置を第１のツール位置Ｔ1とする。
次に、ステップＳ２でオペレーターはワークＷの稜線Ｅ１の所定位置をその稜線Ｅ１の加工開始位置Ｅ１sとして設定する。この設定操作は数値としてキーボード１６によって入力することも可能であるが、本実施例ではモニタ２０のＧＵＩ画面において３Ｄモデルの所定の位置に対してペンタブレット１７を用いてアクセスして操作することが可能である。
【００１８】
オペレーターの操作によって第１のツール位置Ｔ1と加工開始位置Ｅ１sが決定されると、モニタ２０のＧＵＩ画面においてワークＷの３Ｄモデルの加工開始位置Ｅ１s位置に第１のツール位置Ｔ1が当接した状態で研削加工ツール６が表示される（図５）。本実施例ではこの研削加工ツール６のワークＷ上への画像合成をツールスナップ動作という。ここでツールスナップとは第１のツール位置Ｔ1と加工開始位置Ｅ１sをそれぞれ基点として研削加工ツール６をワークＷ側にスナップさせることである。これによって、オペレーターは研削加工ツール６のワークＷに対する研削加工時の実際の当接状態を目視によってよく理解できる。但し、稜線Ｅ１の研削面として研削面６ａ〜６ｄのうちの選択された所定の部位が妥当ではない場合にはツールスナップはされない。これは当該稜線Ｅ１に対して妥当な加工面とはなりにくい研削面６ａ〜６ｄを排除するためである。本実施例では例えば研削面６ａの所定の部位を第１のツール位置Ｔ1とした場合にはツールスナップはされないよう初期設定されているものとする。ここではこの機能をスナップ制限機能とする。本実施例ではここでは例えば研削面６ｃのある位置が加工開始位置Ｅ１s位置に選択されたものとする。
ツールスナップが実行される場合には本実施例においてはデフォルトで図６に示すようにワークＷの法線Ｎ方向と研削加工ツール６の軸線方向（回転軸中心を通る線）が一致するものとする。また、本実施例では研削加工ツール６の面取り角度はデフォルトで図７に示すように研削加工ツール６の軸線方向が法線に対して４５度の角度をデフォルトとする。これらデフォルト値はツールスナップ動作の段階のみならず研削加工ツール６の全加工経路の決定に至った後でも任意に変更可能である。
【００１９】
以上のように第１のツール位置Ｔ1と加工開始位置Ｅ１sが決定されるとオペレーターは続いてステップＳ３及びステップＳ４で上記と同様の操作で稜線Ｅ１に沿って次の研削加工ツール６の第２のツール位置Ｔ2と稜線Ｅ１の加工終了位置Ｅ１ｅを設定する。すると、第１のツール位置Ｔ1にスナップされていた研削加工ツール６が移動して上記と同様に加工終了位置Ｅ１ｅにおいてツールスナップ動作が実行される。第２のツール位置Ｔ2は第１のツール位置Ｔ1と一致させてもよい。加工開始位置Ｅ１sと加工終了位置Ｅ１ｅの決定によって稜線Ｅ１上の両位置Ｅ１s，Ｅ１ｅ間に研削加工ツール６の部分的な加工経路が設定されることとなる。
本実施例では加工経路は一筆書きのように連続的に継ぎ足されていくため、直前の第２のツール位置Ｔ2と加工終了位置Ｅ１ｅが自動的に次の経路における第１のツール位置Ｔ1と加工開始位置Ｅ１sとなる。つまり、オペレーターはワークＷ上での研削加工ツール６の加工経路を設定するために第２のツール位置Ｔ2と稜線Ｅ１の加工終了位置Ｅ１ｅを次々と設定いく作業を実行していくこととなる。以下、このようにワークＷ上の所定位置に設定された研削加工ツール６の位置と姿勢をツールポジションという。ツールポジションにおける位置データは加工経路の教示点となる。
以後はオペレーターの判断でバリ取り加工をする必要のある稜線Ｅｘすべてを加工経路とするようにツールポジションを次々と設定し研削加工ツール６の加工経路を設定していく。
ここに、設定したある２つのツールポジション間におけるワークＷ上の長さが直線である場合にはその間を研削加工ツール６は当接部位を連続的に変位させながら直線的に進行することとなる。一方、ある２つのツールポジション間におけるワークＷ上の長さが曲線の場合にはＭＰＵ１１は両者間の中間位置に通過点Ｅｓを設定するようモニタ２０画面上で促す。オペレーターが通過点Ｅｓをツールポジションの設定と同様の操作で設定することによってＭＰＵ１１はその３点を通る近似的な曲線を選択し加工経路とし、研削加工ツール６はその曲線に沿って進行することとなる。
【００２０】
このように、研削加工ツール６についてツールポジションをそれぞれバリ取り加工を施す必要のあるすべての稜線Ｅｘについて、それが直線であればその直線の間に、曲線が含まれていれば変曲点のない範囲内で設定し研削加工ツール６の加工経路を順次設定していく。最新のツールポジションには研削加工ツール６がスナップされて表示されることとなる。ツールポジションとして設定された位置には加工経路の足跡として所定のマーク表示がされる。また、ある稜線Ｅ１と稜線Ｅ２との間が一旦途切れている場合にはワークＷの外側の領域の直交座標系内（画面上では空中）に研削加工ツール６の経路を設定する必要があるが、この場合にはある次のツールポジションまで適当な経路を上記にならって設定することとなる。
ステップＳ５の判断ですべての稜線Ｅｘについて加工経路を設定した場合にはオペレーターの操作によってステップＳ６で研削加工ツール６の位置・姿勢を確定したものとして、研削加工ツール６の直交座標系Δ１をワークＷの基準座標系Δ０に連結させて、研削加工ツール６の位置や姿勢をワークＷの所定の基準座標Ｐ0（ｘ0、ｙ0、ｚ0）に対する相対位置（距離）と姿勢に変換しこれをＣＬデータとして保存する。同時に、オペレーターの操作によってステップＳ７においてワークＷに対する研削加工ツール６の動作がシミュレーションされる。
尚、シミュレーションの結果、研削加工ツール６の動作に不備がある場合にはＣＬデータを修正する、つまり不備の原因となるツールポジションを適宜変更することが可能である。
【００２１】
４）加工ツールのロボットへの接続工程
この工程は上記３）において決定されたツールの動きにロボットを同期させてＧＵＩ画面上に表示させるためのツールとロボットとの接続を実行する工程となる。
オペレーターはモニタ２０のＧＵＩ画面においてロボット４の３Ｄモデルを表示させる。この表示は上記ワークＷ及び研削加工ツール６の直交座標系Δ０，Δ１とは異なる独自の直交座標系Δ２である。オペレーターは所定の操作（ダイアログで表示される指示画面への入力等）によって研削加工ツール６のロボット４に対する相対位置はすでにロボットデータとして入力済みであるため、スナップ処理によって研削加工ツール６の配置位置をロボット４側の基準点と一致させることで接続は実行される。この時、研削加工ツール６の直交座標系Δ１はロボット４の直交座標系Δ２に連結されることとなり、研削加工ツール６のツールポジションにおける位置データはロボット４の原点位置からの距離に変換されることとなる。図９に研削加工ツール６とロボット４が接続されている状態を示す。
本実施例ではＭＰＵ１１はロボット４の原点位置を基準とした変換されたツールポジションにおける位置データが座標上で実際のワークＷの所定の基準座標Ｐ0（ｘ0、ｙ0、ｚ0）に対してずれが生じていないか、各ツールポジションのワークＷ上の位置について変換前の位置と返還後の位置を照合し、両者にずれがある場合にはモニタ２０の画面上にその旨を報知することとなっている。
【００２２】
５）ロボットの動作のシミュレーションによるアーム干渉確認工程
この工程はツールの加工経路の通過に伴って追随するロボットの動作をシミュレーションさせてロボット４の研削加工ツール６との連動性とアーム５の稼働範囲を検証する工程となる。オペレーターの操作によって上記４）において研削加工ツール６と接続されたロボット４は研削加工ツール６の動作に追随してアーム５を稼働させるシミュレーションを実行する。この際にオペレータはシミュレーションの結果としてアーム５が研削加工ツール６の動きに追随できるかどうかを判断し、またアーム５がワークＷに干渉しないかを判断する。本実施例のアーム５は５軸構成で１軸と２軸は平行リンクを構成し、３，４，５軸はそれぞれ独立した軸を構成し、５軸目の先端側に研削加工ツール６が装着されているものとする。４軸と５軸は回転成分を含み、その他の軸は含まないものとする。
以下、シミュレーションを実行するＭＰＵ１１の処理について以下、図８のフローチャートに従って説明する。
まずステップＳ１１において上記のようにロボット４の原点からの相対位置・姿勢へ変換した研削加工ツール６のツールポジションについて、研削加工ツール６の基準となる初期位置及び初期姿勢との変位量が計算される。以下、ステップＳ１２からステップＳ２０においてツール軸ベクトルと位置成分から姿勢と各軸の変位量を求める。まず、ステップＳ１２で５軸ジョイント変位量を計算する。つまり、ツールポジションの基準位置との変位量のうち、５軸由来の成分についてのみ計算を行う。そして、ステップＳ１３で姿勢計算エラーあるいは定義範囲外であるかどうかを判断し、そうである場合には処理は一旦ステップＳ１９に移行する。姿勢計算エラーとは回転成分において５軸が有さない（回転できない）ベクトル成分が算出された場合であり、定義範囲外とは回転成分以外の空間移動距離条件（届かない場合）をいう。
一方、ステップＳ１３で姿勢計算エラーあるいは定義範囲外ではない場合には処理をステップＳ１４に移行する。ステップＳ１４では４軸ジョイント変位量を計算し、ステップＳ１５で姿勢計算エラーあるいは定義範囲外かどうかを判断し、そうである場合には処理はステップＳ１９に移行する。一方、ステップＳ１５で姿勢計算エラーあるいは定義範囲外ではないと判断した場合には処理をステップＳ１６に移行する。ステップＳ１６では３軸ジョイント変位量と１,２軸回転ジョイント変位量を計算する。ステップＳ１７でこれらが定義上の範囲内にあるかないかを判断し、範囲外の場合には処理はステップＳ１９に移行する。
一方、ステップＳ１７で定義上の範囲内にあると判断した場合にはステップＳ１８で１,２軸スライドジョイント変位量を計算する。また、同時に５軸、４軸ジョイント変位量は計算上２つの解が得られるので、ツールポジションの姿勢に合う側の解を選択する。ここまでは当該ツールポジションに対する各軸のとりうる変位量が軸の最大可動範囲内にあるかないかを判断するものである。
【００２３】
次いで、ステップＳ１９において、得られた計算値から当該ツールポジションにおいてアーム５は姿勢計算エラーとなっていると判断すると、実機に適用すると条件通りに加工できないとしてその旨を姿勢エラーとして画面に表示させる。
一方、ステップＳ１９において姿勢計算エラーがない場合には続くステップＳ２０において定義範囲内かどうかを判断し、定義範囲外である場合には距離エラーとして画面に表示させる。一方、ステップＳ２０においてアーム５の取りうる変位量（距離）が定義範囲にある場合には、エラーメッセージが出ないのでオペレーターは実機に適用しても研削加工ツール６を加工経路通りに通過させることが可能と判断できる。ＭＰＵ１１はすべてのツールポジションについて順にこのようなルーチンで演算し、シミュレーションに伴って各ツールポジションにおけるアーム５の追随可能性をチェックしていく。
このような、シミュレーション処理をしながら、同時にＭＰＵ１１はアーム５の連続軌跡を監視し、ワークＷの座標との干渉の有無をチェックする。そして、アーム５とワークＷの干渉（座標の交錯）がある場合にはその干渉位置をハイライト表示させる。シミュレーションの結果、アーム５の不備がある場合にはＣＬデータを修正する、つまりツールポジションを適宜変更することが可能である。
６）ＣＬデータからＮＣ加工データを作成するＮＣ加工データ作成工程
上記５）における検証の後、問題のないＣＬデータはＮＣ加工データに変換されてコントローラ３に出力される。実機としてのロボット４はＮＣ加工データに基づいて駆動させられる。
【００２４】
このように構成することで、上記実施例では次のような効果が奏される。
（１）加工ツール６の加工経路を３Ｄ化したワークＷにツールポジションとして同じく３Ｄ化した加工ツール６をスナップさせながら設定することができるため、ワークＷに加工経路を設定する際の加工ツール６の位置の把握と姿勢の認識度が向上することから従来に比べてＣＬデータを得る工程が容易となり、作業性も向上する。
（２）加工ツール６をワークＷのバリ取りする部分に沿って実際の動きと同様にシミュレーションすることができるため、加工経路の善し悪しが分かりやすい。また、加工経路を設定するとツールポジションが足跡として加工経路に沿って表示されるため、本来経路とすべき部分を通過することを忘れてしまう等の不具合が生じにくい。
（３）ＣＬデータをＮＣ加工データに変換する前にロボット４を加工ツール６に接続させた状態で、シミュレーションし不具合を見ることが可能であるため、実機に適用した場合に実際に生じる可能性のある不具合を前もって修正することが容易である。
【００２５】
なお、この発明は前記実施の形態に限定されるものではなく、次のように変更して具体化することも可能である。
・上記実施例のＮＣ加工装置１は一例であって構成要素を適宜変更することは自由である。例えば、アーム５を構成する軸の数は適宜変更可能である。また、加工ツールの数や形状も適宜変更可能である。また、上記では研削加工ツール６であったが切削加工ツールであってもよい。
・上記実施例ではバリ取りのケースとして稜線Ｅｘに沿って加工ツール６を移動させるようにしていたが、稜線以外の面のバリ取りや研磨に応用することも可能である。
・上記加工経路は一筆書き状態であったが、経路の設定手法はこのような手法に限定されるものではない。
・加工経路の設定においては加工ツール６のワークＷに対するツールポジションは必ずしもすべて加工ツール６がワークＷに当接してなければならないわけではない。例えば、透孔の面取り動作をさせる工程を含む場合には加工ツール６の軸線が透孔の中心に配置されるようにツールポジションが想定されるため、このようなツールポジションが加工経路に含まれることを排除するものではない。
その他、本発明は他の実施態様で変更して実施することは自由である。
【符号の説明】
【００２６】
１…ＮＣ加工装置、１１…ワークモデル表示手段、加工ツールモデル表示手段、ワーク被加工部位決定手段、加工ツール当接部位決定手段、加工ツール当接状態表示手段、加工経路決定手段の一部をなすＭＰＵ。
【図１】
2010205215.tif 000003
【図２】
2010205215.tif 000004
【図３】
2010205215.tif 000005
【図４】
2010205215.tif 000006
【図５】
2010205215.tif 000007
【図６】
2010205215.tif 000008
【図７】
2010205215.tif 000009
【図８】
2010205215.tif 000010
【図９】
2010205215.tif 000011