(57)【特許請求の範囲】
【請求項１】
工具を用いて加工される加工対象物に対する前記工具の移動経路を表す工具経路データを修正する工具経路修正装置であって、
前記工具経路データは、工具中心の位置を表すとともに当該位置における工具姿勢に対応付けられた指令点を含むデータであって、
前記移動経路において隣り合う指令点における前記工具中心の移動量と前記工具姿勢の変化量とに基づいて修正の対象と判定された指令点を前記工具経路データから抽出する修正対象抽出部と、
前記加工対象物への加工における目標とする加工形状を表す加工形状データを参照して、前記修正対象抽出部によって抽出された前記指令点を含めて画定された範囲内の各指令点における前記工具中心の位置と前記工具姿勢とを修正する工具経路データ修正部と、
を備え、
前記工具経路データ修正部は、前記加工形状データによって表される加工曲面と前記工具の形状を表す工具データによって表される工具の輪郭との接触点を前記指令点ごとに求めて、前記工具姿勢の修正によって生じる前記接触点からの前記工具の輪郭のずれを算出した結果を基に前記工具中心の位置を修正することを特徴とする工具経路修正装置。
【請求項２】
前記修正対象抽出部によって抽出された前記指令点を含む複数の指令点の範囲を画定する修正範囲画定部
を備え、
前記工具経路データ修正部は、前記修正範囲画定部によって画定された範囲内の指令点の前記工具中心の位置と前記工具姿勢とを修正することを特徴とする請求項１に記載の工具経路修正装置。
【請求項３】
前記指令点には、前記工具姿勢の変化における基準となる工具基準点への前記工具中心からの向きを表すベクトルであって前記工具姿勢を表す工具軸ベクトルが対応付けられており、
前記工具経路データ修正部は、前記画定された範囲内の前記指令点における前記工具基準点の位置を平滑化によって修正することで、前記工具軸ベクトルを修正することを特徴とする請求項１または２に記載の工具経路修正装置。
【請求項４】
前記指令点には、前記工具姿勢の変化における基準となる工具基準点への前記工具中心からの向きを表すベクトルであって前記工具姿勢を表す工具軸ベクトルが対応付けられており、
前記工具経路データ修正部は、前記画定された範囲内の前記指令点における前記工具基準点の位置を示す座標へフィルタ処理を施すことによって前記工具基準点の位置を修正することで、前記工具軸ベクトルを修正することを特徴とする請求項１または２に記載の工具経路修正装置。
【請求項５】
前記指令点には、前記工具姿勢の変化における基準となる工具基準点への前記工具中心からの向きを表すベクトルであって前記工具姿勢を表す工具軸ベクトルが対応付けられており、
前記工具経路データ修正部は、前記画定された範囲内の前記指令点における前記工具基準点を基に近似曲線を生成して、前記近似曲線上にて前記工具基準点の間隔を調整することによって前記工具基準点の位置を修正することで、前記工具軸ベクトルを修正することを特徴とする請求項１または２に記載の工具経路修正装置。
【請求項６】
工具を用いて加工される加工対象物に対する前記工具の移動経路を表す工具経路データを修正する工具経路修正装置であって、
前記工具経路データは、工具中心の位置を表すとともに当該位置における工具姿勢に対応付けられた指令点を含むデータであって、
前記移動経路において隣り合う指令点における前記工具中心の移動量と前記工具姿勢の変化量とに基づいて修正の対象と判定された指令点を前記工具経路データから抽出する修正対象抽出部と、
前記加工対象物への加工における目標とする加工形状を表す加工形状データを参照して、前記修正対象抽出部によって抽出された前記指令点を含めて画定された範囲内の各指令点における前記工具中心の位置と前記工具姿勢とを修正する工具経路データ修正部と、
を備え、
前記指令点には、前記工具姿勢の変化における基準となる工具基準点への前記工具中心からの向きを表すベクトルであって前記工具姿勢を表す工具軸ベクトルが対応付けられており、
前記工具経路データ修正部は、前記画定された範囲内の前記指令点における前記工具基準点の位置を平滑化によって修正することで、前記工具軸ベクトルを修正することを特徴とする工具経路修正装置。
【請求項７】
工具を用いて加工される加工対象物に対する前記工具の移動経路を表す工具経路データを修正する工具経路修正装置であって、
前記工具経路データは、工具中心の位置を表すとともに当該位置における工具姿勢に対応付けられた指令点を含むデータであって、
前記移動経路において隣り合う指令点における前記工具中心の移動量と前記工具姿勢の変化量とに基づいて修正の対象と判定された指令点を前記工具経路データから抽出する修正対象抽出部と、
前記加工対象物への加工における目標とする加工形状を表す加工形状データを参照して、前記修正対象抽出部によって抽出された前記指令点を含めて画定された範囲内の各指令点における前記工具中心の位置と前記工具姿勢とを修正する工具経路データ修正部と、
を備え、
前記指令点には、前記工具姿勢の変化における基準となる工具基準点への前記工具中心からの向きを表すベクトルであって前記工具姿勢を表す工具軸ベクトルが対応付けられており、
前記工具経路データ修正部は、前記画定された範囲内の前記指令点における前記工具基準点の位置を示す座標へフィルタ処理を施すことによって前記工具基準点の位置を修正することで、前記工具軸ベクトルを修正することを特徴とする工具経路修正装置。
【請求項８】
工具を用いて加工される加工対象物に対する前記工具の移動経路を表す工具経路データを修正する工具経路修正装置であって、
前記工具経路データは、工具中心の位置を表すとともに当該位置における工具姿勢に対応付けられた指令点を含むデータであって、
前記移動経路において隣り合う指令点における前記工具中心の移動量と前記工具姿勢の変化量とに基づいて修正の対象と判定された指令点を前記工具経路データから抽出する修正対象抽出部と、
前記加工対象物への加工における目標とする加工形状を表す加工形状データを参照して、前記修正対象抽出部によって抽出された前記指令点を含めて画定された範囲内の各指令点における前記工具中心の位置と前記工具姿勢とを修正する工具経路データ修正部と、
を備え、
前記指令点には、前記工具姿勢の変化における基準となる工具基準点への前記工具中心からの向きを表すベクトルであって前記工具姿勢を表す工具軸ベクトルが対応付けられており、
前記工具経路データ修正部は、前記画定された範囲内の前記指令点における前記工具基準点を基に近似曲線を生成して、前記近似曲線上にて前記工具基準点の間隔を調整することによって前記工具基準点の位置を修正することで、前記工具軸ベクトルを修正することを特徴とする工具経路修正装置。
【請求項９】
工具を用いて加工される加工対象物に対する前記工具の移動経路を表す工具経路データを工具経路修正装置によって修正する工具経路修正方法であって、
前記工具経路データは、工具中心の位置を表すとともに当該位置における工具姿勢に対応付けられた指令点を含むデータであって、
前記移動経路において隣り合う指令点における前記工具中心の移動量と前記工具姿勢の変化量とに基づいて修正の対象と判定された指令点を前記工具経路データから抽出する工程と、
前記加工対象物への加工における目標とする加工形状を表す加工形状データを参照して、前記工程にて抽出された前記指令点を含めて画定された範囲内の各指令点における前記工具中心の位置と前記工具姿勢とを修正する工程と、
を含み、
前記工具中心の位置と前記工具姿勢とを修正する工程では、前記加工形状データによって表される加工曲面と前記工具の形状を表す工具データによって表される工具の輪郭との接触点を前記指令点ごとに求めて、前記工具姿勢の修正によって生じる前記接触点からの前記工具の輪郭のずれを算出した結果を基に前記工具中心の位置を修正することを特徴とする工具経路修正方法。
【請求項１０】
工具を用いて加工される加工対象物に対する前記工具の移動経路を表す工具経路データに基づく数値制御を実行する数値制御装置であって、
前記工具経路データは、工具中心の位置を表すとともに当該位置における工具姿勢に対応付けられた指令点を含むデータであって、
前記移動経路において隣り合う指令点における前記工具中心の移動量と前記工具姿勢の変化量とに基づいて修正の対象と判定された指令点を前記工具経路データから抽出する修正対象抽出部と、
前記加工対象物への加工における目標とする加工形状を表す加工形状データを参照して、前記修正対象抽出部によって抽出された前記指令点を含めて画定された範囲内の各指令点における前記工具中心の位置と前記工具姿勢とを修正する工具経路データ修正部と、
を備え、
前記工具経路データ修正部は、前記加工形状データによって表される加工曲面と前記工具の形状を表す工具データによって表される工具の輪郭との接触点を前記指令点ごとに求めて、前記工具姿勢の修正によって生じる前記接触点からの前記工具の輪郭のずれを算出した結果を基に前記工具中心の位置を修正し、
修正された前記工具経路データに基づく数値制御を実行することを特徴とする数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工具を用いた加工のための工具経路データを修正する工具経路修正装置、工具経路修正方法および数値制御装置に関する。
【背景技術】
【０００２】
５軸制御工作機械は、３軸のそれぞれの並進運動を可能にする動作機構と、２軸のそれぞれについて軸を中心とする回転を可能にする動作機構とによる５軸制御加工を可能とする工作機械である。５軸制御加工は、自由曲面の加工、あるいはインペラーのように３軸制御加工では加工が困難な形状の加工に使用される。数値制御（Numerical  Control：ＮＣ）装置は、コンピュータ支援設計（Computer  Aided  Design：ＣＡＤ）およびコンピュータ支援製造（Computer  Aided  Manufacturing：ＣＡＭ）装置を用いた設計作業によって作成された工具経路データにしたがって、５軸制御工作機械を制御する。５軸制御加工のための工具経路データには、加工対象物に対する工具の姿勢である工具姿勢の指令が含まれる。【０００３】
特許文献１には、工具姿勢の断続的な変化あるいは不連続な変化量での変化が工具経路データに含まれる場合における加工品質の低下を抑制するために、回転軸の角度変化量を平滑化することによって工具の先端位置を滑らかに動作させることを可能としたＮＣ装置が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第４４６７６２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の従来技術では、ボールエンドミルが用いられる場合には工具の先端を加工対象物へ接触可能である一方、ラジアスエンドミルまたはフラットエンドミルといった工具が用いられる場合には工具の先端が加工対象物から離れるか加工対象物へ食い込むことがある。ボールエンドミルは、先端が球をなす工具である。ラジアスエンドミルおよびフラットエンドミルは、先端が球以外の形状をなす工具である。そのため、特許文献１の従来技術では、工具の先端が加工対象物から離れることによる切削残しあるいは工具の先端が加工対象物へ食い込むことによる切削過剰が生じて加工品質が低下する場合があるという問題があった。【０００６】
本発明は、上記に鑑みてなされたものであって、加工品質の低下を抑制可能とする工具経路修正装置を得ることを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明にかかる工具経路修正装置は、工具を用いて加工される加工対象物に対する工具の移動経路を表す工具経路データを修正する。工具経路データは、工具中心の位置を表すとともに当該位置における工具姿勢に対応付けられた指令点を含むデータである。本発明にかかる工具経路修正装置は、移動経路において隣り合う指令点における工具中心の移動量と工具姿勢の変化量とに基づいて修正の対象と判定された指令点を工具経路データから抽出する修正対象抽出部と、加工対象物への加工における目標とする加工形状を表す加工形状データを参照して、修正対象抽出部によって抽出された指令点を含めて画定された範囲内の各指令点における工具中心の位置と工具姿勢とを修正する工具経路データ修正部と、を備える。工具経路データ修正部は、加工形状データによって表される加工曲面と工具の形状を表す工具データによって表される工具の輪郭との接触点を指令点ごとに求めて、工具姿勢の修正によって生じる接触点からの工具の輪郭のずれを算出した結果を基に工具中心の位置を修正する。
【発明の効果】
【０００８】
本発明によれば、工具経路修正装置は、加工品質の低下の抑制が可能となるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施の形態１にかかる工具経路修正装置の機能構成を示すブロック図
【図２】実施の形態１にかかる工具経路修正装置のハードウェア構成を示すブロック図
【図３】図１に示す工具経路修正装置による動作の手順を示すフローチャート
【図４】図１に示す工具経路修正装置へ入力される工具データについて説明する図
【図５】図１に示す工具経路修正装置へ入力される工具経路データについて説明する図
【図６】図１に示す工具経路修正装置へ入力される加工形状データについて説明する図
【図７】図１に示す工具経路修正装置が有する修正対象抽出部による動作の手順を示すフローチャート
【図８】図１に示す工具経路修正装置が有する修正対象抽出部による動作について説明する図
【図９】図１に示す工具経路修正装置が有する修正範囲画定部による動作について説明する図
【図１０】図１に示す工具経路修正装置によって工具経路データを修正するための動作の手順を示すフローチャート
【図１１】図１に示す工具経路修正装置が有する工具経路データ修正部が、第１の手法によって工具軸ベクトルを修正する場合における動作の手順を示すフローチャート
【図１２】図１１に示す手順による工具軸ベクトルの修正について説明する図
【図１３】図１に示す工具経路修正装置が有する工具経路データ修正部が、第２の手法によって工具軸ベクトルを修正する場合における動作の手順を示すフローチャート
【図１４】図１３に示す手順による工具軸ベクトルの修正について説明する第１の図
【図１５】図１３に示す手順による工具軸ベクトルの修正について説明する第２の図
【図１６】図１０に示す手順のうちステップＳ２４からステップＳ２６までの手順における加工曲面と工具との位置関係の例を示す図
【図１７】図１０に示す手順のうちステップＳ２７の手順における加工曲面と工具との位置関係の例を示す図
【図１８】図１０に示す手順のうちステップＳ２８の手順における加工曲面と工具との位置関係の例を示す図
【図１９】本発明の実施の形態２にかかるＮＣ装置の機能構成を示すブロック図
【図２０】図１９に示すＮＣ装置による動作の手順を示すフローチャート
【発明を実施するための形態】
【００１０】
以下に、本発明の実施の形態にかかる工具経路修正装置、工具経路修正方法および数値制御装置を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１１】
実施の形態１．
図１は、本発明の実施の形態１にかかる工具経路修正装置１００の機能構成を示すブロック図である。工具経路修正装置１００は、工具を用いた加工のための工具経路データを修正する。実施の形態１において、工具経路データは、切削工具を用いた切削加工のための工具経路データとする。
【００１２】
工具経路修正装置１００は、工具経路修正装置１００の外部から工具経路データを入力するための機能部である工具経路データ入力部１０と、工具経路データ入力部１０へ入力された工具経路データを記憶する機能部である工具経路データ記憶部１１とを有する。工具経路データは、工具を用いて加工される加工対象物に対する工具の移動経路を表すデータである。工具経路データは、工具中心の位置を表すとともに当該位置における工具姿勢に対応付けられた指令点を含むデータである。工具中心と工具姿勢とについては後述する。
【００１３】
工具経路修正装置１００は、工具経路修正装置１００の外部から加工形状データを入力するための機能部である加工形状データ入力部１２と、加工形状データ入力部１２へ入力された加工形状データを記憶する機能部である加工形状データ記憶部１３とを有する。加工形状データは、加工対象物への加工における目標とする加工形状を表すデータである。加工形状データの一例は、ＣＡＤデータである。
【００１４】
工具経路修正装置１００は、工具経路修正装置１００の外部から工具データを入力するための機能部である工具データ入力部１４と、工具データ入力部１４へ入力された工具データを記憶する機能部である工具データ記憶部１５とを有する。工具データは、加工対象物の加工に用いられる工具を定義する情報である。工具データは、工具の種別を表す情報と、工具半径、工具刃先半径および工具長といった工具の形状を表す情報とから構成される。
【００１５】
工具経路修正装置１００は、工具経路修正装置１００の外部からコンフィギュレーションデータを入力するための機能部である設定入力部１６と、設定入力部１６へ入力されたコンフィギュレーションデータを記憶する機能部である設定記憶部１７とを有する。コンフィギュレーションデータは、工具経路修正装置１００の処理についての各種設定データである。コンフィギュレーションデータは、後述する修正対象抽出部１８による判定における設定を表すデータと、後述する修正範囲画定部１９による範囲の画定における設定を表すデータとを含む。設定入力部１６へのコンフィギュレーションデータの入力が可能である設定項目は、工具経路修正装置１００のユーザによる設定内容の指定と変更とが可能とされている項目である。
【００１６】
工具経路修正装置１００は、移動経路において隣り合う指令点における工具中心の移動量と工具姿勢の変化量とに基づいて修正の対象と判定された指令点を工具経路データから抽出する修正対象抽出部１８と、修正対象抽出部１８によって抽出された指令点が含まれる指令点の範囲を画定する修正範囲画定部１９とを有する。工具経路修正装置１００は、修正対象抽出部１８によって抽出された指令点の情報と、修正範囲画定部１９によって画定された範囲の情報とを記憶する機能部である修正対象範囲記憶部２０を有する。
【００１７】
修正対象抽出部１８は、工具経路データ記憶部１１から工具経路データを読み出し、設定記憶部１７からコンフィギュレーションデータを読み出す。修正対象抽出部１８は、抽出された指令点の情報を修正範囲画定部１９へ出力する。修正範囲画定部１９は、工具経路データ記憶部１１から工具経路データを読み出し、設定記憶部１７からコンフィギュレーションデータを読み出す。
【００１８】
工具経路修正装置１００は、加工形状データを参照して、工具経路データのうち修正範囲画定部１９によって画定された範囲内の各指令点における工具中心の位置と工具姿勢とを修正する工具経路データ修正部２１と、工具経路データ修正部２１によって修正された工具経路データを記憶する機能部である修正工具経路データ記憶部２２とを有する。
【００１９】
工具経路データ修正部２１は、加工形状データ記憶部１３から加工形状データを読み出し、工具データ記憶部１５から工具データを読み出す。また、工具経路データ修正部２１は、修正対象抽出部１８によって抽出された指令点の情報と修正範囲画定部１９によって画定された範囲の情報とを、修正対象範囲記憶部２０から読み出す。また、工具経路データ修正部２１は、工具経路データ記憶部１１から工具経路データを読み出して、読み出された工具経路データを修正する。
【００２０】
ここで、工具経路修正装置１００のハードウェア構成について説明する。図１に示す工具経路修正装置１００の各機能部は、実施の形態１の工具経路修正方法を実行するためのプログラムである工具経路修正プログラムがハードウェアで実行されることによって実現される。
【００２１】
図２は、実施の形態１にかかる工具経路修正装置１００のハードウェア構成を示すブロック図である。工具経路修正装置１００は、各種処理を実行するＣＰＵ（Central  Processing  Unit）３１と、データ格納領域を含むＲＡＭ（Random  Access  Memory）３２と、不揮発性メモリであるＲＯＭ（Read  Only  Memory）３３と、外部記憶装置３４と、工具経路修正装置１００への情報の入力および工具経路修正装置１００からの情報の出力のための入出力インタフェース３５とを有する。図２に示す工具経路修正装置１００の各部は、バス３６を介して相互に接続されている。
【００２２】
ＣＰＵ３１は、ＲＯＭ３３および外部記憶装置３４に記憶されているプログラムを実行する。図１に示す修正対象抽出部１８、修正範囲画定部１９および工具経路データ修正部２１の機能は、ＣＰＵ３１を使用して実現される。外部記憶装置３４は、ＨＤＤ（Hard  Disk  Drive）あるいはＳＳＤ（Solid  State  Drive）である。外部記憶装置３４は、工具経路修正プログラムと各種データとを記憶する。図１に示す工具経路データ記憶部１１、加工形状データ記憶部１３、工具データ記憶部１５、設定記憶部１７、修正対象範囲記憶部２０および修正工具経路データ記憶部２２の機能は、外部記憶装置３４を使用して実現される。ＲＯＭ３３には、工具経路修正装置１００であるコンピュータまたはコントローラの基本となる制御のためのプログラムであるＢＩＯＳ（Basic  Input/Output  System）あるいはＵＥＦＩ（Unified  Extensible  Firmware  Interface）といったブートローダであって、ハードウェアを制御するソフトウェアまたはプログラムが記憶されている。なお、工具経路修正プログラムは、ＲＯＭ３３に記憶されても良い。
【００２３】
ＲＯＭ３３および外部記憶装置３４に記憶されているプログラムは、ＲＡＭ３２にロードされる。ＣＰＵ３１は、ＲＡＭ３２に工具経路修正プログラムを展開して各種処理を実行する。入出力インタフェース３５は、工具経路修正装置１００の外部の装置との接続インタフェースである。図１に示す工具経路データ入力部１０、加工形状データ入力部１２、工具データ入力部１４および設定入力部１６の機能は、入出力インタフェース３５を使用して実現される。工具経路修正装置１００は、キーボードおよびポインティングデバイスといった入力デバイス、およびディスプレイといった出力デバイスを有しても良い。
【００２４】
工具経路修正プログラムは、コンピュータによる読み取りが可能とされた記憶媒体に記憶されたものであっても良い。工具経路修正装置１００は、記憶媒体に記憶された工具経路修正プログラムを外部記憶装置３４へ格納しても良い。記憶媒体は、フレキシブルディスクである可搬型記憶媒体、あるいは半導体メモリであるフラッシュメモリであっても良い。工具経路修正プログラムは、他のコンピュータあるいはサーバ装置から通信ネットワークを介して、工具経路修正装置１００となるコンピュータへインストールされても良い。
【００２５】
工具経路修正装置１００の機能は、工具経路の修正のための専用のハードウェアである処理回路によって実現されても良い。処理回路は、単一回路、複合回路、プログラム化されたプロセッサ、並列プログラム化したプロセッサ、ＡＳＩＣ（Application  Specific  Integrated  Circuit）、ＦＰＧＡ（Field-Programmable  Gate  Array）、又はこれらの組み合わせである。工具経路修正装置１００の機能は、一部を専用のハードウェアで実現し、他の一部をソフトウェアまたはファームウェアで実現するようにしても良い。
【００２６】
次に、工具経路修正装置１００による動作について説明する。図３は、図１に示す工具経路修正装置１００による動作の手順を示すフローチャートである。ステップＳ１は、工具経路修正装置１００が、工具経路データと、加工形状データと、工具データと、コンフィギュレーションデータとを取り込む工程である。
【００２７】
ステップＳ１において、図１に示す工具経路データ入力部１０は、工具経路修正装置１００の外部からの工具経路データを取り込む。図１に示す加工形状データ入力部１２は、工具経路修正装置１００の外部からの加工形状データを取り込む。図１に示す工具データ入力部１４は、工具経路修正装置１００の外部からの工具データを取り込む。図１に示す設定入力部１６は、工具経路修正装置１００の外部からのコンフィギュレーションデータを取り込む。各データは、工具経路修正装置１００に接続された外部装置から各入力部へ入力される。各データは、ユーザによる手動入力によって入力されても良い。工具経路修正装置１００は、ＮＣプログラムのデータ変換によって工具経路データを取得しても良い。
【００２８】
図１に示す工具経路データ記憶部１１は、ステップＳ１にて工具経路データ入力部１０へ入力された工具経路データを記憶する。図１に示す加工形状データ記憶部１３は、ステップＳ１にて加工形状データ入力部１２へ入力された加工形状データを記憶する。図１に示す工具データ記憶部１５は、ステップＳ１にて工具データ入力部１４へ入力された工具データを記憶する。図１に示す設定記憶部１７は、ステップＳ１にて設定入力部１６へ入力されたコンフィギュレーションデータを記憶する。
【００２９】
ステップＳ２は、修正対象抽出部１８が、修正の対象と判定された指令点を工具経路データから抽出する工程である。ステップＳ２において、修正対象抽出部１８は、工具経路データ記憶部１１に記憶されている工具経路データを読み出す。修正対象抽出部１８は、読み出された工具経路データに記述された各指令点について修正の対象であるか否かを判定して、修正の対象と判定された指令点を抽出する。修正対象範囲記憶部２０は、ステップＳ２にて抽出された指令点を記憶する。修正対象抽出部１８は、抽出された指令点の情報を修正範囲画定部１９へ出力する。
【００３０】
ステップＳ３は、修正範囲画定部１９が、修正の対象とする複数の指令点の範囲を画定する工程である。ステップＳ３において、修正範囲画定部１９は、工具経路データ記憶部１１に記憶されている工具経路データを読み出す。修正範囲画定部１９は、読み出された工具経路データのうち、修正対象抽出部１８から出力された指令点の情報を基に、修正対象抽出部１８によって抽出された指令点を含む複数の指令点の範囲を画定する。これにより、修正範囲画定部１９は、修正の対象とする複数の指令点の範囲を画定する。修正対象範囲記憶部２０は、ステップＳ３にて画定された修正の対象とする範囲である修正対象範囲を記憶する。
【００３１】
ステップＳ４は、工具経路データ修正部２１が、工具中心の位置と工具姿勢とを修正する工程である。ステップＳ４において、工具経路データ修正部２１は、加工形状データ記憶部１３に記憶されている加工形状データと工具データ記憶部１５に記憶されている工具データと修正対象範囲記憶部２０に記憶されている修正対象情報とを読み出す。工具経路データ修正部２１は、読み出された加工形状データと工具データとを参照して、工具経路データのうちステップＳ３にて画定された修正対象範囲内の指令点の工具中心の位置と工具姿勢とを修正する。修正工具経路データ記憶部２２は、ステップＳ４での修正を経た工具経路データを記憶する。これにより、工具経路修正装置１００は、図３に示す手順による動作を終了する。なお、ステップＳ２からステップＳ４の詳細については後述する。
【００３２】
次に、工具データ、工具経路データおよび加工形状データについて説明する。図４は、図１に示す工具経路修正装置１００へ入力される工具データについて説明する図である。図４には、工具データによって表現される工具ＴＬの形状の例を示している。ここでは、工具ＴＬは、ラジアスエンドミルであるものとする。工具ＴＬのうち加工対象物へ向けられる側の端部を先端部、先端部とは逆側の端部であって工作機械に取り付けられる側の端部を根元部と称することがある。
【００３３】
工具ＴＬは、円柱の底部における縁に丸みが施された形状をなす。工具刃先半径Ｒ２は、かかる丸みの半径である。工具半径Ｒ１は、円柱の半径である。工具ＴＬの先端部には、円形をなす底ＴＢを有する。工具半径Ｒ１の値と工具刃先半径Ｒ２の値とは、工具データのうち工具ＴＬの形状を表す情報に含まれる。工具中心軸ＴＸは、円柱の中心軸であって、加工時における工具ＴＬの旋回中心となる軸である。底ＴＢの中心と工具中心ＣＬとは、工具中心軸ＴＸ上にある。工具中心ＣＬは、工具刃先半径Ｒ２に相当する長さの分、底ＴＢよりも根元部の側の位置とする。工具軸ベクトルＴＶは、工具中心軸ＴＸに平行かつ工具中心ＣＬから根元部の側へ向かう向きのベクトルである。工具姿勢は、工具軸ベクトルＴＶによって表される。
【００３４】
図５は、図１に示す工具経路修正装置１００へ入力される工具経路データについて説明する図である。Ｘ軸とＹ軸とＺ軸とは、工具経路データの座標系を表す３軸とする。工具経路データによって表される工具の位置は、工具を用いて加工対象物を加工するときにおける位置であって、加工対象物に対する工具の相対的な位置を表す。工具中心ＣＬの位置と工具軸ベクトルＴＶの方向とは、Ｘ，ＹおよびＺの座標によって表される。図５には、Ｘ軸とＺ軸とに平行な平面に投影された工具中心ＣＬと工具軸ベクトルＴＶとを表している。
【００３５】
指令点ＣＰは、工具中心ＣＬの位置を表すとともに当該位置における工具軸ベクトルＴＶに対応付けられた指令を表す。工具経路データは、工具の移動経路ＴＰを表すデータであって、複数の指令点ＣＰが連ねられることによって構成されている。指令点ＣＰのうち工具中心ＣＬの位置を表す座標は、工具経路データの座標系によって表される仮想的な空間において工具を移動させた場合における移動経路ＴＰ上の位置を表す。以下の説明にて、指令点ＣＰとは、工具経路データにしたがって工具を移動させた場合における工具中心ＣＬの位置のことを指す場合があるものとする。図５には、工具経路データにおいて連ねられた複数の指令点ＣＰを表している。
【００３６】
図６は、図１に示す工具経路修正装置１００へ入力される加工形状データについて説明する図である。図６には、加工形状データによって表現される加工形状ＣＴの例を示している。図６に例示する加工形状ＣＴには、自由曲面である加工曲面ＣＳが含まれている。加工曲面ＣＳを加工するための工具経路データは、図４に示す工具ＴＬの先端部を加工曲面ＣＳに接触させて工具ＴＬを仮想的に移動させた経路を直線または曲線である微分線分に近似することによって作成される。工具経路データ修正部２１は、加工形状データの座標系と、工具経路データの座標系とを一致させる。
【００３７】
図７は、図１に示す工具経路修正装置１００が有する修正対象抽出部１８による動作の手順を示すフローチャートである。図７には、修正対象抽出部１８が、修正の対象と判定された指令点を抽出するための動作の手順を示している。図７に示す手順は、図３に示すステップＳ２における手順の詳細を表したものである。
【００３８】
ステップＳ１１において、修正対象抽出部１８は、工具経路データ記憶部１１に記憶されている工具経路データを読み出す。ステップＳ１２において、修正対象抽出部１８は、ステップＳ１１にて読み出された工具経路データのうち移動経路ＴＰにおいて隣り合う２個の指令点ＣＰにおける工具中心ＣＬの位置の移動量を算出する。
【００３９】
図８は、図１に示す工具経路修正装置１００が有する修正対象抽出部１８による動作について説明する図である。図８には、工具経路データにおいて連ねられた１０個の指令点ＣＰを表している。指令点ＣＰ５は、図８に示す１０個の指令点ＣＰのうち５番目の指令点ＣＰである。指令点ＣＰ６は、図８に示す１０個の指令点ＣＰのうち６番目の指令点ＣＰである。指令点ＣＰ５と指令点ＣＰ６とは、移動経路ＴＰにおいて隣り合う２個の指令点である。
【００４０】
例を挙げると、修正対象抽出部１８は、指令点ＣＰ５と指令点ＣＰ６とについて、指令点ＣＰ５と指令点ＣＰ６との間の移動経路ＴＰにおける工具中心ＣＬの移動量Ｄ５を算出する。移動量Ｄ５は、指令点ＣＰ５によって表される工具中心ＣＬ５の座標と指令点ＣＰ６によって表される工具中心ＣＬ６の座標との間の距離である。
【００４１】
ステップＳ１３において、修正対象抽出部１８は、ステップＳ１１にて読み出された工具経路データのうち移動経路ＴＰにおいて隣り合う２個の指令点ＣＰにおける工具軸ベクトルＴＶの角度変化量を算出する。工具軸ベクトルＴＶの角度変化量は、工具姿勢の変化量である。
【００４２】
例を挙げると、修正対象抽出部１８は、指令点ＣＰ５と指令点ＣＰ６とについて、指令点ＣＰ５における工具軸ベクトルＴＶ５の向きから指令点ＣＰ６における工具軸ベクトルＴＶ６の向きまでの角度変化量ＡＣ５を算出する。
【００４３】
ステップＳ１４は、２個の指令点ＣＰが修正の対象であるか否かを修正対象抽出部１８が判定する工程である。ステップＳ１４において、修正対象抽出部１８は、２個の指令点について、工具中心ＣＬの移動量に対する角度変化量の割合を算出し、算出された割合が閾値以上であるか否かを判定する。算出された割合が閾値以上である場合、修正対象抽出部１８は、２個の指令点を修正の対象であると判定する。算出された割合が閾値未満である場合、修正対象抽出部１８は、２個の指令点を修正の対象ではないと判定する。
【００４４】
例を挙げると、修正対象抽出部１８は、指令点ＣＰ５と指令点ＣＰ６とについて、移動量Ｄ５に対する角度変化量ＡＣ５の割合ＡＣ５／Ｄ５を算出する。修正対象抽出部１８は、算出された割合ＡＣ５／Ｄ５が閾値以上である場合、移動経路ＴＰのうち指令点ＣＰ５と指令点ＣＰ６との組み合わせである箇所ＥＰ５を修正の対象と判定する。修正対象抽出部１８は、算出された割合ＡＣ５／Ｄ５が閾値未満である場合、箇所ＥＰ５を修正の対象ではないと判定する。
【００４５】
割合が閾値以上であって（ステップＳ１４，Ｙｅｓ）２個の指令点が修正の対象であると判定された場合、修正対象抽出部１８は、ステップＳ１５において、当該２個の指令点を工具経路データから抽出する。修正対象範囲記憶部２０は、ステップＳ１５にて抽出された指令点を記憶する。修正対象抽出部１８は、抽出された指令点の情報を修正範囲画定部１９へ出力する。２個の指令点の抽出の後、修正対象抽出部１８は、動作の手順をステップＳ１６へ進める。一方、割合が閾値未満であって（ステップＳ１４，Ｎｏ）２個の指令点が修正の対象ではないと判定された場合も、修正対象抽出部１８は、動作の手順をステップＳ１６へ進める。
【００４６】
ステップＳ１６において、修正対象抽出部１８は、工具経路データにおいて隣り合う２個の指令点の組み合わせの全てについて修正の対象であるか否かの判定が完了したか否かを判断する。判定が完了していない場合（ステップＳ１６，Ｎｏ）、修正対象抽出部１８は、次の２個の指令点の組み合わせについて、ステップＳ１２からステップＳ１６の手順による動作を行う。判定が完了した場合（ステップＳ１６，Ｙｅｓ）、修正対象抽出部１８は、指令点を抽出するための動作を終了する。
【００４７】
設定記憶部１７に記憶されているコンフィギュレーションデータのうち、修正対象抽出部１８による判定における設定を表すデータには、当該閾値が含まれている。修正対象抽出部１８は、コンフィギュレーションデータから閾値を取得して、ステップＳ１４における判定を行う。閾値がコンフィギュレーションデータに含められることで、ユーザによって閾値を任意に設定することができる。これにより、工具経路修正装置１００は、工具経路データの修正にユーザの要求を反映させることができる。
【００４８】
ステップＳ１４における判定に使用される閾値は、コンフィギュレーションデータにより設定されるものに限られない。閾値は、修正対象抽出部１８での計算によって決定されたものであっても良い。修正対象抽出部１８は、角度変化量のデータを基に角度変化量の平均値を求めて、当該平均値を中心に持つ標準偏差を２倍して得られた値を閾値としても良い。修正対象抽出部１８は、角度変化量のデータを基に角度変化量の第３四分位数を求めて、四分位範囲の１．５倍の値を当該第３四分位数に加算して得られた値を閾値としても良い。閾値を求めるこのような手法は、統計学における外れ値検出の理論を応用したものである。なお、閾値を求める手法は上記の手法に限られず、任意であるものとする。
【００４９】
次に、修正範囲画定部１９によって修正対象範囲を画定するための動作について説明する。図９は、図１に示す工具経路修正装置１００が有する修正範囲画定部１９による動作について説明する図である。図９には、修正範囲画定部１９が修正対象範囲を画定するための動作について示している。
【００５０】
修正範囲画定部１９は、工具経路データ記憶部１１に記憶されている工具経路データを読み出す。また、修正範囲画定部１９は、修正対象抽出部１８において抽出された指令点の情報を修正対象抽出部１８から取得する。修正範囲画定部１９は、修正対象抽出部１８にて抽出された指令点と、移動経路ＴＰにおいて当該抽出された指令点よりも手前にある１つ以上の指令点と、移動経路ＴＰにおいて当該抽出された指令点よりも先にある１つ以上の指令点とを、修正対象範囲に含める。
【００５１】
例を挙げると、修正範囲画定部１９は、修正対象抽出部１８において抽出された指令点ＣＰ５，ＣＰ６の情報を修正対象抽出部１８から取得する。修正対象範囲に含める指令点の数が、抽出された指令点の手前の範囲について４個、かつ抽出された指令点の先の範囲について４個であることが、コンフィギュレーションデータにおいて設定されているとする。修正範囲画定部１９は、指令点ＣＰ５，ＣＰ６の他に、指令点ＣＰ５よりも手前の範囲ＲＢにおける４個の指令点である指令点ＣＰ１，ＣＰ２，ＣＰ３およびＣＰ４と、指令点ＣＰ６よりも先の範囲ＲＦにおける４個の指令点である指令点ＣＰ７，ＣＰ８，ＣＰ９およびＣＰ１０とを、修正対象範囲に含める。これにより、修正範囲画定部１９は、指令点ＣＰ１から指令点ＣＰ１０までの１０個の指令点からなる範囲ＲＧを、修正対象範囲に画定する。修正対象範囲記憶部２０は、修正範囲画定部１９によって画定された修正対象範囲を記憶する。
【００５２】
設定記憶部１７に記憶されているコンフィギュレーションデータのうち、修正範囲画定部１９による範囲の画定における設定を表すデータには、修正の対象とする指令点の範囲に含める指令点の数の情報が含まれている。修正範囲画定部１９は、当該数の情報をコンフィギュレーションデータから取得して、範囲の画定を行う。当該数の情報がコンフィギュレーションデータに含められることで、範囲に含める指令点の数をユーザによって任意に設定することができる。これにより、工具経路修正装置１００は、工具経路データの修正にユーザの要求を反映させることができる。
【００５３】
修正対象範囲に含める指令点の数は、コンフィギュレーションデータにより設定されているものに限られない。修正対象範囲に含める指令点の数は、修正範囲画定部１９での計算によって決定されても良い。修正範囲画定部１９は、１つのサイクルパス内の指令点の数の５％相当を、修正対象範囲に含める指令点の数としても良い。加工形状の輪郭における１つの端から他の１つの端までの領域において工具を一方向へ移動または往復移動させて当該領域を加工するとした場合に、１つのサイクルパスとは、移動経路ＴＰのうち１つの端から他の１つの端までの１回の移動分の移動経路とする。５％相当は、統計学における有意差検定の理論に基づく。範囲に含める指令点の数は、１つのサイクルパス内の指令点の数の５％相当以上であっても良く、１０％相当であっても良い。なお、修正対象範囲に含める指定点の数を求める手法は上記の手法に限られず、任意であるものとする。
【００５４】
図１０は、図１に示す工具経路修正装置１００によって工具経路データを修正するための動作の手順を示すフローチャートである。図１０に示す手順は、図３に示すステップＳ４における手順の詳細を表したものである。
【００５５】
ステップＳ２１において、工具経路データ修正部２１は、修正対象範囲の情報を修正対象範囲記憶部２０から読み出す。ステップＳ２２において、工具経路データ修正部２１は、加工形状データ記憶部１３に記憶されている加工形状データを読み出す。ステップＳ２３において、工具経路データ修正部２１は、工具データ記憶部１５に記憶されている工具データを読み出す。なお、ステップＳ２１からステップＳ２３の順序は図１０に示す順序に限られず、任意であるものとする。
【００５６】
ステップＳ２４において、工具経路データ修正部２１は、ステップＳ２１にて読み出された修正対象範囲内の各指令点について、加工形状ＣＴと工具ＴＬとの配置をシミュレーションする。工具経路データ修正部２１は、ステップＳ２２にて読み出された加工形状データによって表現される加工形状ＣＴとステップＳ２３にて読み出された工具データによって表現される工具ＴＬとを仮想的な空間にて擬似的に配置する演算によって、加工形状ＣＴと工具ＴＬとの配置をシミュレーションする。
【００５７】
ステップＳ２５において、工具経路データ修正部２１は、修正対象範囲内の各指令点について、加工形状ＣＴと工具ＴＬの輪郭とが一致する点である接触点の位置を算出する。接触点の位置は、加工曲面ＣＳのうち工具ＴＬによる加工が施される加工点の位置となる。
【００５８】
ステップＳ２６において、工具経路データ修正部２１は、修正対象範囲内の各指令点について、工具基準点の位置を算出する。工具基準点は、工具ＴＬの根元部における工具中心軸ＴＸ上の位置であって、工具ＴＬのうち工作機械に把持される位置である。工具姿勢は、工具基準点を中心とする工具ＴＬの回転動作によって変化する。工具基準点は、工具姿勢の変化における基準となる位置でもある。
【００５９】
ステップＳ２７において、工具経路データ修正部２１は、修正対象範囲内の各指令点について、工具軸ベクトルＴＶを修正する。ステップＳ２８において、工具経路データ修正部２１は、修正対象範囲内の各指令点について、工具中心ＣＬの位置を修正する。これにより、工具経路データ修正部２１は、工具経路データを修正するための動作を終了する。
【００６０】
次に、ステップＳ２７における工具軸ベクトルＴＶの修正について説明する。工具経路データ修正部２１は、フィルタ処理による第１の手法、または近似曲線の生成による第２の手法によって、工具軸ベクトルＴＶを修正する。
【００６１】
図１１は、図１に示す工具経路修正装置１００が有する工具経路データ修正部２１が、第１の手法によって工具軸ベクトルＴＶを修正する場合における動作の手順を示すフローチャートである。ステップＳ３１において、工具経路データ修正部２１は、上記ステップＳ２６において算出された工具基準点の位置を示す座標を平滑化することによって修正する。工具経路データ修正部２１は、修正対象範囲内の指令点における工具基準点の位置を示す座標へフィルタ処理を施すことによって、工具基準点の位置を修正する。
【００６２】
工具経路データ修正部２１は、平滑化フィルタを用いて、工具基準点の位置を示す座標の平滑化を行う。平滑化フィルタには、公知の三角スムージング（triangular  smoothing）フィルタを使用可能である。平滑化フィルタは、移動経路ＴＰにおいて連続する５個の指令点の座標を用いて、当該５個の指令点のうち中央に位置する指令点である着目指令点について、工具基準点の位置を示す座標を平滑化する。
【００６３】
平滑化フィルタは、５個の指令点についての工具基準点の座標Ｐｎ−２，Ｐｎ−１，Ｐｎ，Ｐｎ＋１，Ｐｎ＋２を用いた次の式（１）に基づいて、着目指令点について平滑化後の座標Ｐ’ｎを算出する。座標Ｐｎは、着目指令点についての工具基準点の座標とする。座標Ｐｎ−２，Ｐｎ−１は、それぞれ、着目指令点の２個手前の指令点と１つ手前の指令点とについての工具基準点の座標とする。座標Ｐｎ＋１，Ｐｎ＋２は、それぞれ、着目指令点の１つ先の指令点と２個先の指令点とについての工具基準点の座標とする。平滑化フィルタは、Ｘ座標、Ｙ座標およびＺ座標の各々について、式（１）に基づいた平滑化を行う。
Ｐ’ｎ＝（Ｐｎ−２＋２Ｐｎ−１＋３Ｐｎ＋２Ｐｎ＋１＋Ｐｎ＋２）／９    ・・・（１）
【００６４】
式（１）に基づく平滑化は、修正対象範囲内の指令点のうち、修正対象範囲の両端に位置する２個の指令点とかかる指令点の各々の隣にある２個の指令点との４つ以外について実施される。修正対象範囲が、上記の例にかかる指令点ＣＰ１から指令点ＣＰ１０を含む範囲ＲＧである場合、６個の指令点である指令点ＣＰ３から指令点ＣＰ８について、式（１）に基づく平滑化が実施される。
【００６５】
修正対象範囲の両端に位置する２個の指令点については、平滑化は実施されない。修正対象範囲のうち手前側の端に位置する指令点の隣に位置する指令点について、平滑化フィルタは、次の式（２）に基づいて座標Ｐ’ｎを算出する。修正対象範囲のうち先側の端に位置する指令点の隣に位置する指令点について、平滑化フィルタは、次の式（３）に基づいて座標Ｐ’ｎを算出する。上記の例の場合、指令点ＣＰ２について、式（２）に基づく平滑化が実施される。また、指令点ＣＰ９について、式（３）に基づく平滑化が実施される。
Ｐ’ｎ＝（２Ｐｎ−１＋３Ｐｎ＋２Ｐｎ＋１＋Ｐｎ＋２）／８    ・・・（２）
Ｐ’ｎ＝（Ｐｎ−２＋２Ｐｎ−１＋３Ｐｎ＋２Ｐｎ＋１）／８    ・・・（３）
【００６６】
平滑化は、上記の式（１）から（３）に基づくものに限られない。平滑化フィルタによる計算の内容は、任意であるものとする。平滑化フィルタには、上記の三角スムージングフィルタの他、Savitzky-Golayフィルタまたはガウシアンフィルタが用いられても良い。
【００６７】
ステップＳ３２では、工具経路データ修正部２１は、修正対象範囲内の各指令点について、工具中心ＣＬからステップＳ３１による平滑化後の工具基準点へ向かう向きに工具軸ベクトルＴＶを修正する。これにより、工具経路データ修正部２１は、工具軸ベクトルＴＶを修正するための動作を終了する。
【００６８】
図１２は、図１１に示す手順による工具軸ベクトルＴＶの修正について説明する図である。図１２には、工具経路データにおいて連ねられた１０個の指令点ＣＰを表している。破線矢印は、修正前の工具軸ベクトルＴＶを表している。実線矢印は、修正後の工具軸ベクトルＴＶ’を表している。
【００６９】
例を挙げると、工具経路データ修正部２１は、指令点ＣＰ６が着目指令点である場合に、５個の指令点ＣＰ４，ＣＰ５，ＣＰ６，ＣＰ７，ＣＰ８についての工具基準点の座標を用いて、指令点ＣＰ６について工具基準点Ｐから工具基準点Ｐ’への平滑化を行う。工具経路データ修正部２１は、工具中心ＣＬから工具基準点Ｐへ向かう向きの工具軸ベクトルＴＶを、工具中心ＣＬから平滑化後の工具基準点Ｐ’へ向かう向きの工具軸ベクトルＴＶ’へ修正する。
【００７０】
図１３は、図１に示す工具経路修正装置１００が有する工具経路データ修正部２１が、第２の手法によって工具軸ベクトルＴＶを修正する場合における動作の手順を示すフローチャートである。ステップＳ４１において、工具経路データ修正部２１は、修正対象範囲の各指令点についての工具基準点の近似曲線を生成する。
【００７１】
工具経路データ修正部２１は、上記ステップＳ２６において算出された工具基準点の座標と、隣り合う２個の指令点における工具基準点の移動量とを基に、近似曲線を生成する。例を挙げると、工具経路データ修正部２１は、最小二乗法によって、近似曲線である３次多項式曲線を生成する。
【００７２】
図１４は、図１３に示す手順による工具軸ベクトルＴＶの修正について説明する第１の図である。図１４には、工具経路データにおいて連ねられた１０個の指令点ＣＰを表している。移動量ＤＰは、隣り合う２個の指令点ＣＰにおける工具基準点Ｐの座標間の距離である。ステップＳ４１において、工具経路データ修正部２１は、修正対象範囲内における移動量ＤＰの合計に対する各工具基準点Ｐの間の移動量ＤＰの割合を用いて、近似曲線ＳＣの生成のためのパラメータを各工具基準点Ｐについて求める。修正対象範囲のうち手前側の端に位置する工具基準点Ｐについてのパラメータはゼロとする。修正対象範囲のうち先側の端に位置する工具基準点Ｐについてのパラメータは１とする。
【００７３】
工具経路データ修正部２１は、各工具基準点Ｐの座標と求めたパラメータとを基に、Ｘ，ＹおよびＺの各座標を表す媒介変数を求める。工具経路データ修正部２１は、媒介変数と上記のパラメータとを基に、近似曲線ＳＣである３次多項式曲線を生成する。
【００７４】
図１３に示すステップＳ４２において、工具経路データ修正部２１は、隣り合う２個の指令点における工具中心の位置の移動量を算出する。ステップＳ４３において、工具経路データ修正部２１は、工具基準点の位置を示す座標を平滑化する。
【００７５】
図１５は、図１３に示す手順による工具軸ベクトルＴＶの修正について説明する第２の図である。ステップＳ４３において、工具経路データ修正部２１は、修正対象範囲内における移動量Ｄの合計に対する、各指令点ＣＰにおける工具中心ＣＬの移動量Ｄの割合を算出する。工具経路データ修正部２１は、工具基準点Ｐについての上記のパラメータを、移動量Ｄの割合に一致するように修正することにより、上記のパラメータから新たなパラメータＴへの変換を行う。修正対象範囲のうち手前側の端に位置する工具基準点ＰについてのパラメータＴはゼロとする。修正対象範囲のうち先側の端に位置する工具基準点ＰについてのパラメータＴは１とする。これにより、修正対象範囲の両端に位置する工具基準点Ｐについては、位置の変更を行わない。
【００７６】
工具経路データ修正部２１は、移動量ＤＰの割合が新たなパラメータＴにしたがった割合となるように修正対象範囲の近似曲線ＳＣ上にて工具基準点Ｐの間隔を調整することにより、平滑化後の工具基準点Ｐ’の座標を算出する。このようにして、工具経路データ修正部２１は、生成された近似曲線ＳＣと移動量Ｄの割合とを基に、工具基準点Ｐから工具基準点Ｐ’への修正を行う。なお、近似曲線ＳＣは、上記の３次多項式曲線の他、非一様有理Ｂスプライン（Non-uniform  rational  B-spline：ＮＵＲＢＳ）曲線、スプライン曲線またはベジェ曲線であっても良い。
【００７７】
図１３に示すステップＳ４４において、工具経路データ修正部２１は、工具中心から平滑化後の工具基準点へ向かう向きに工具軸ベクトルを修正する。図１５に示すように、工具経路データ修正部２１は、工具中心ＣＬから工具基準点Ｐへ向かう向きの工具軸ベクトルＴＶを、工具中心ＣＬから平滑化後の工具基準点Ｐ’へ向かう向きの工具軸ベクトルＴＶ’へ修正する。
【００７８】
次に、図１０に示すステップＳ２８についての説明に先立ち、ステップＳ２７までの手順での仮想的な空間における工具ＴＬの状態について説明する。
【００７９】
図１６は、図１０に示す手順のうちステップＳ２４からステップＳ２６までの手順における加工曲面ＣＳと工具ＴＬとの位置関係の例を示す図である。図１６には、仮想的な空間に擬似的に配置されている加工曲面ＣＳと工具ＴＬとを示している。工具ＴＬは、修正対象範囲内の各指令点ＣＰに配置されている。工具経路データ修正部２１は、上記のステップＳ２４でのシミュレーションによって、修正対象範囲ＲＧ内の各指令点ＣＰにおける加工曲面ＣＳと工具ＴＬとの位置関係を検証する。なお、図１６に示す箇所ＥＰは、図８に示す箇所ＥＰ５であって、修正対象抽出部１８によって抽出された指令点ＣＰ５，ＣＰ６を表している。
【００８０】
修正対象範囲ＲＧ内の各指令点ＣＰに配置された工具ＴＬにおける接触点ＣＣは、加工形状ＣＴと工具ＴＬの輪郭とが一致する点である。上記のステップＳ２５において、工具経路データ修正部２１は、加工曲面ＣＳと工具ＴＬとの位置関係を検証した結果を基に、接触点ＣＣの位置を示す座標を算出する。工具経路データ修正部２１は、上記のステップＳ２６において、修正対象範囲ＲＧ内の各指令点ＣＰに配置された工具ＴＬにおける工具基準点Ｐの位置を示す座標を算出する。
【００８１】
図１７は、図１０に示す手順のうちステップＳ２７の手順における加工曲面ＣＳと工具ＴＬとの位置関係の例を示す図である。工具経路データ修正部２１は、上記のステップＳ２７において、各指令点ＣＰについて、工具軸ベクトルＴＶを修正する。図１７には、修正後の工具軸ベクトルＴＶ’を示している。各指令点ＣＰの工具ＴＬは、工具中心ＣＬの位置が一定とされつつ、上記の工具中心軸ＴＸの向きが修正前の工具軸ベクトルＴＶの向きから修正後の工具軸ベクトルＴＶ’の向きに変えられる。
【００８２】
このように、工具中心ＣＬの位置が変えられないまま工具ＴＬの傾きが変化することによって、加工曲面ＣＳと工具ＴＬの輪郭との接触に変化が生じ得る。各指令点ＣＰの工具ＴＬの中には、工具ＴＬの輪郭が加工曲面ＣＳから離れるものと、工具ＴＬの輪郭が加工曲面ＣＳから加工対象物の内部に入り込むものとが現れ得る。図１７に示す箇所ＵＣは、工具ＴＬの輪郭が加工曲面ＣＳから離れている箇所の一例である。図１７に示す箇所ＯＣは、工具ＴＬの輪郭が加工曲面ＣＳから加工対象物の内部に入り込んでいる箇所の一例である。
【００８３】
次に、ステップＳ２８における工具中心ＣＬの位置の修正について説明する。図１８は、図１０に示す手順のうちステップＳ２８の手順における加工曲面ＣＳと工具ＴＬとの位置関係の例を示す図である。工具経路データ修正部２１は、上記のステップＳ２８での工具中心ＣＬの位置の修正によって、ステップＳ２５にて算出された接触点ＣＣに工具ＴＬの輪郭を一致させる調整を行う。
【００８４】
工具経路データ修正部２１は、工具軸ベクトルＴＶの向きの変化によって生じるずれであって加工曲面ＣＳ上の接触点ＣＣからの工具ＴＬの輪郭のずれを、加工曲面ＣＳと工具ＴＬとの位置関係を検証することによって算出する。工具経路データ修正部２１は、接触点ＣＣと工具ＴＬとの間のずれを解消可能とする工具中心ＣＬの位置の移動向きと移動量とを求める。工具経路データ修正部２１は、求めた移動向きと移動量とにしたがって工具中心ＣＬの位置を修正することによって、接触点ＣＣに工具ＴＬの輪郭を一致させる。このように、工具経路データ修正部２１は、工具姿勢の修正によって生じる接触点ＣＣからの工具ＴＬの輪郭のずれを算出した結果を基に、工具中心ＣＬの位置を修正する。
【００８５】
工具経路データ修正部２１は、工具中心ＣＬの位置を修正することによって、加工曲面ＣＳからの工具ＴＬの離れと加工曲面ＣＳにおける工具ＴＬの入り込みとを解消させる。これにより、工具経路修正装置１００は、加工に使用される工具の先端が加工対象物から離れることと加工対象物へ食い込むこととを抑制できるように工具経路修正データを修正することができる。
【００８６】
工具経路データ修正部２１は、工具軸ベクトルＴＶの向きの修正によって、工具姿勢の急峻な変化を緩和させて、工具姿勢の変化を滑らかにさせる。これにより、工具経路修正装置１００は、工具姿勢の変化を滑らかな変化にさせるように工具経路データを修正することができる。
【００８７】
工具経路修正装置１００は、修正対象抽出部１８と修正範囲画定部１９とによって、工具経路データとコンフィギュレーションデータとに基づいて、修正対象とする指令点の判定および抽出と修正対象範囲の画定とを行い得る。工具経路データ修正部２１は、加工形状データと工具データとに基づいて工具経路データを修正する。工具経路修正装置１００は、ＮＣ制御の稼働時以外であっても、各データを取り込むことによって工具経路データを修正可能とする。工具経路修正装置１００は、実際の加工が行われるよりも前に、工具経路データを修正できる。また、工具経路修正装置１００は、修正工具経路データ記憶部２２を有することにより、実際の加工が行われるよりも前に修正後の工具経路データを保存することができる。ユーザは、実際の加工よりも前の準備段階において、修正後の工具経路データを工具経路修正装置１００から読み出して、修正後の工具経路データを確認することができる。また、ユーザは、準備段階において、修正前の工具経路データと修正後の工具経路データとを比較することもできる。
【００８８】
工具経路データ修正部２１は、工具姿勢の変化を滑らかな変化とさせる修正を、指令点ごとにおける工具姿勢の修正によって行う。工具経路修正装置１００は、加工速度を低下させることなく、工具姿勢の変化が滑らかな変化となるように工具経路データを修正することができる。
【００８９】
工具経路データ修正部２１は、修正対象抽出部１８によって修正の対象と判定された指令点を抽出し、抽出された指令点を含めた修正対象範囲を修正範囲画定部１９によって画定する。工具経路修正装置１００は、このような抽出と画定とによらず工具経路データの全体について一様に修正のための処理が行われる場合と比べて、工具経路データの修正に要する時間を短くすることができる。
【００９０】
実施の形態１によると、工具経路修正装置１００は、工具中心の位置の修正によって、工具の先端が加工対象物から離れることと加工対象物へ食い込むこととを抑制できるように工具経路修正データを修正可能とする。工具経路修正装置１００は、工具経路修正データの修正によって、工具の先端が加工対象物から離れることによる切削残しと工具の先端が加工対象物へ食い込むことによる切削過剰とを抑制して、加工品質の低下を抑制できる。また、工具経路修正装置１００は、工具姿勢の修正によって、工具姿勢の変化が滑らかな変化となるように工具経路修正データを修正可能とする。工具経路修正装置１００は、工具経路修正データの修正によって、工具姿勢の急峻な変化による加工品質の低下を抑制できる。これにより、工具経路修正装置１００は、加工品質の低下の抑制が可能となるという効果を奏する。
【００９１】
実施の形態２．
図１９は、本発明の実施の形態２にかかるＮＣ装置２００の機能構成を示すブロック図である。ＮＣ装置２００は、実施の形態１にかかる工具経路修正装置１００が有する修正工具経路データ記憶部２２に代えて、補間処理部４１と駆動制御部４２とを有する。実施の形態２では、実施の形態１と同一の部分には同一の符号を付し、実施の形態１とは異なる構成について主に説明する。ＮＣ装置２００は、工具経路データを修正して、修正された工具経路データに基づく数値制御を実行する。工作機械は、ＮＣ装置２００からの指令にしたがって加工対象物を加工する。図１９では、工作機械の図示を省略している。
【００９２】
工具経路データ修正部２１は、実施の形態１と同様に修正された工具経路データを補間処理部４１へ出力する。補間処理部４１は、位置および角度の補間処理を実施する機能部である。補間処理部４１は、工具の位置を変化させる３個の並進軸の各々について、修正された工具経路データを基に、制御周期ごとの移動量を求めるとともに、補間点とする位置を生成する。補間処理部４１は、工具姿勢を変化させる２個の回転軸の各々について、修正された工具経路データを基に、制御周期ごとの回転角度を求めるとともに、補間点とする角度を生成する。補間処理部４１は、各並進軸および各回転軸である各軸について生成された補間点の情報を駆動制御部４２へ出力する。
【００９３】
駆動制御部４２は、各軸のサーボモータの駆動を制御する機能部である。駆動制御部４２は、補間点の情報に基づいて、各軸のサーボモータの駆動を制御するためのモータ駆動制御信号を生成する。駆動制御部４２は、生成されたモータ駆動制御信号を各軸のサーボモータへ出力する。
【００９４】
ＮＣ装置２００のハードウェア構成は、図２に示す工具経路修正装置１００のハードウェア構成と同様である。図１９に示すＮＣ装置２００の各機能部は、実施の形態２のＮＣ制御方法を実行するためのＮＣプログラムがハードウェアで実行されることによって実現される。ＮＣプログラムは、コンピュータによる読み取りが可能とされた記憶媒体に記憶されたものであっても良い。ＮＣ装置２００は、記憶媒体に記憶されたＮＣプログラムを外部記憶装置３４へ格納しても良い。記憶媒体は、フレキシブルディスクである可搬型記憶媒体、あるいは半導体メモリであるフラッシュメモリであっても良い。ＮＣプログラムは、他のコンピュータあるいはサーバ装置から通信ネットワークを介して、ＮＣ装置２００となるコンピュータへインストールされても良い。ＮＣ装置２００の機能は、数値制御のための専用のハードウェアである処理回路によって実現されても良い。ＮＣ装置２００の機能は、一部を専用のハードウェアで実現し、他の一部をソフトウェアまたはファームウェアで実現するようにしても良い。
【００９５】
図２０は、図１９に示すＮＣ装置２００による動作の手順を示すフローチャートである。ステップＳ１からステップＳ４は、図３に示すステップＳ１からステップＳ４と同様である。ステップＳ５１において、補間処理部４１は、補間点を生成するための補間処理を実施する。ステップＳ５２において、駆動制御部４２は、モータ駆動制御信号を生成し、生成されたモータ駆動制御信号を出力する。これにより、ＮＣ装置２００は、図２０に示す手順による動作を終了する。ＮＣ装置２００は、ＮＣ装置２００の内部での工具経路データの修正を可能とすることで、工具経路データの修正の完了後すぐに、修正された工具経路データに基づいた加工を工作機械に行わせることができる。
【００９６】
実施の形態２によると、ＮＣ装置２００は、実施の形態１にかかる工具経路修正装置１００と同様に、工具中心の位置の修正と工具姿勢の修正とによって、加工品質の低下を抑制できる。これにより、ＮＣ装置２００は、加工品質の低下の抑制が可能となるという効果を奏する。
【００９７】
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
【符号の説明】
【００９８】
１０  工具経路データ入力部、１１  工具経路データ記憶部、１２  加工形状データ入力部、１３  加工形状データ記憶部、１４  工具データ入力部、１５  工具データ記憶部、１６  設定入力部、１７  設定記憶部、１８  修正対象抽出部、１９  修正範囲画定部、２０  修正対象範囲記憶部、２１  工具経路データ修正部、２２  修正工具経路データ記憶部、３１  ＣＰＵ、３２  ＲＡＭ、３３  ＲＯＭ、３４  外部記憶装置、３５  入出力インタフェース、３６  バス、４１  補間処理部、４２  駆動制御部、１００  工具経路修正装置、２００  ＮＣ装置。
【図１】
0006884283.tif 000002
【図２】
0006884283.tif 000003
【図３】
0006884283.tif 000004
【図４】
0006884283.tif 000005
【図５】
0006884283.tif 000006
【図６】
0006884283.tif 000007
【図７】
0006884283.tif 000008
【図８】
0006884283.tif 000009
【図９】
0006884283.tif 000010
【図１０】
0006884283.tif 000011
【図１１】
0006884283.tif 000012
【図１２】
0006884283.tif 000013
【図１３】
0006884283.tif 000014
【図１４】
0006884283.tif 000015
【図１５】
0006884283.tif 000016
【図１６】
0006884283.tif 000017
【図１７】
0006884283.tif 000018
【図１８】
0006884283.tif 000019
【図１９】
0006884283.tif 000020
【図２０】
0006884283.tif 000021