(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1に開示される従来技術では、切削体積の予測に必要な情報が実際と異なるため、閾値を超えるタイミングの予測精度が低いという問題がある。例えば、特許文献1に開示される技術では工具径に0〜1の定数を掛けた値を切込量として切削体積を予測しているが、実加工時にはワークの材質や加工精度などにより切込量は様々な値となる。また、特許文献1に開示される技術ではエアカット部分においても切粉が発生すると計算しているのに対して、実加工時にはエアカット部分では切粉が発生しない。このような予測と実加工との差異により、特許文献1に開示される技術を用いた場合、適切なタイミングで切削液を噴出させることができず、切削液の噴出タイミングが早い場合には無駄な切削液噴出が行われ、切削液の噴出タイミングが遅い場合には切粉が溜まり加工不良が発生する可能性が増大する。
【0007】
また、従来技術では加工状況に応じて切削液の噴出タイミングは制御しているものの、切削液に加える圧力や切削液の噴出場所については固定的であるため、切粉の堆積状況によっては切削液の噴出時の圧力が不適切で洗い流す力が不足する場合や、適切な箇所に切削液が噴出されない場合などに対応することができないことがあるという課題がある。
更に、従来技術では予測した切削体積が閾値を超えたタイミングで切削液を噴出する制御を直接行っているため、切削液の噴出タイミングが妥当であるか否かを確認することがオペレータにとって困難であるという課題もあった。
【0008】
そこで本発明の目的は、適切な切粉排出のタイミングを求めることが可能であり、かつ、必要に応じてオペレータが切粉排出方法の変更や切粉排出タイミングの妥当性を検討することが可能な数値制御装置を提供することである。
【課題を解決するための手段】
【0009】
本発明では、加工プログラムに基づくソリッドデータを用いた3次元加工シミュレーションを実行し、
図1に示すように、加工プログラム実行開始時の描画ワークの体積と、各ブロック実行中のブロックにおける描画ワークの体積とを求める。そして、
図2に示すようにこれら体積の差分に基づいて切粉堆積量を算出し、該切粉堆積量が予め設定した閾値を超える直前のブロックに
図3に示すような切粉排出用のMコードなどのプログラムを自動挿入する機能を数値制御装置に持たせることで、上記問題を解決する。
【0010】
そして、本発明の請求項1に係る発明は、加工プログラムに基づいてワークを加工するシミュレーションを実行するシミュレーション部を備えた数値制御装置において、前記シミュレーションにより描画される前記ワークの形状を示す描画ワークの体積を算出する描画ワーク体積量算出部と、前記描画ワーク体積量算出部により算出される、前記シミュレーションの実行開始時の初期の描画ワークの体積と、前記加工プログラムに含まれる各ブロックの実行完了時の描画ワークの体積とに基づいて、該ブロックの実行完了時における切粉堆積量を予測する切粉堆積量予測部と、
前記切粉堆積量予測部により予測された前記加工プログラムに含まれる各ブロックの実行完了時における切粉堆積量に基づいて、切粉を排出するタイミングを算出する切粉排出タイミング算出部と、前記切粉排出タイミング算出部が算出した切粉を排出するタイミングに基づいて、前記加工プログラムに切粉排出用の指令コードを挿入する切粉排出指令挿入部と、を備えたことを特徴とする数値制御装置である。
【0012】
本発明の請求項2に係る発明は、前記切粉排出タイミング算出部が算出した切粉を排出するタイミングを表示する表示部をさらに備える、ことを特徴とする請求項1に記載の数値制御装置である。
本発明の請求項3に係る発明は、前記表示部は、前記加工プログラムの各ブロックに関連付けて、当該ブロックの実行完了時における切粉堆積量を表示する、ことを特徴とする請求項2に記載の数値制御装置である。
本発明の請求項
4に係る発明は、前記シミュレーションの実行開始時の初期の描画ワークの体積と、前記加工プログラムに含まれるブロックの実行完了時の描画ワークの体積との差分から切粉堆積量を算出する際に用いられる係数を記憶する係数データベースをさらに備え、前記切粉堆積量予測部は、前記シミュレーションの実行開始時の初期の描画ワークの体積と、前記加工プログラムに含まれるブロックの実行完了時の描画ワークの体積との差分に対して前記係数をかけることで切粉堆積量を予測する、ことを特徴とする請求項1
〜3のいずれか1つに記載の数値制御装置である。
【0013】
本発明の請求項
5に係る発明は、前記係数データベースには、前記ワークの材質に関連付けられたワーク材質係数および前記加工に用いる工具の種類に関連付けられた工具種類係数の少なくともいずれかが記憶されている、ことを特徴とする請求項
4に記載の数値制御装置である。
【発明の効果】
【0017】
本発明によれば、現在実行中のブロックに至るまでにワークから切削等で取り除かれた部分の体積に基づいて精度の高い切粉堆積量の予測をすることが可能となり、切粉排出作業が必要なブロック位置を正確に検出することができるようになる。また、切粉排出作業が必要なブロック位置に切粉排出用のMコードなどを挿入するようにしているため、当該コードをオペレータが再編集して切削液に加える圧力や切削液の噴出場所を変更したり、切削液の噴出タイミングの妥当性を検討したりすることができるようになり、オペレータによるプログラム作成に掛かる手間を削減できる。
【発明を実施するための形態】
【0019】
以下、本発明の実施形態を図面と共に説明する。
本発明の数値制御装置は、以下の各手段を用いることで、加工プログラムに基づく切粉堆積量の予測と、該加工プログラムへの切粉排出用コードの自動挿入を行う。
【0020】
<切粉堆積量予測手段>
本発明の数値制御装置は、ソリッドデータを用いた3次元加工シミュレーションにより、加工プログラムに基づく加工開始時に初期の描画ワークの体積を計算し、また、加工シミュレーション中に、加工プログラムの1ブロックを実行する毎に当該ブロックに実行後の描画ワークの体積を計算する。なお、ソリッドデータを用いた3次元加工シミュレーションによる描画ワークの体積の計算方法については後述する。
そして、計算した初期の描画ワークの体積と、加工プログラムの各ブロック実行後の描画ワークの体積の差分を求め、該体積の差分から切粉堆積量を計算し、前記切粉堆積量が予め設定した閾値Thを超える時の実行ブロック番号を求める。なお、体積の差分から切粉堆積量を求める計算方法については後述する。
【0021】
更に、前記した閾値Thを超えるブロックの実行中における、切粉堆積量が閾値Thを超える工具の位置を、下記の手順により予測する。
●手順a)閾値Thを超えるブロック実行直前での切粉堆積量Vpを求める。
●手順b)閾値Thを超えるブロック実行直後での切粉堆積量Vnを求める。
●手順c)VpとVnの差分Vdを求める。Vdは前記ブロック実行中の切粉発生量を意味する。
●手順d)閾値ThとVpの差分Vcを求める。Vcは、閾値Thを超えるときの前記ブロックでの切粉発生量を意味する。
●手順e)Vc/Vdを求める。
●手順f)閾値Thを超えるブロックでの指令が直線補間指令の場合、前記ブロックでの各軸の移動量にVc/Vdを掛け、前記ブロックの開始位置に前記各軸の移動量を加算する。これを閾値Thを超えるブロック実行中の工具の位置とする。また、閾値Thを超えるブロックでの指令が円弧補間指令の場合、前記ブロックでの回転角度にVc/Vdを掛けることで、閾値Thを超えるときの回転角度を求め、本回転角度、半径、前記ブロックの開始位置より閾値Thを超えるブロック実行中の工具の位置を求める。
【0022】
閾値Thを超えるブロックのブロック番号と、上記手順で求めた前記工具の位置については、数値制御装置の表示画面に表示してオペレータに示すと共に、周辺機器が参照可能なメモリに格納される。以後、閾値Thを超えるブロックを開始する直前の描画ワークの体積を初期の描画ワーク体積とみなし、当該ブロックを開始ブロックとして上記した方法を繰り返すことで、切粉堆積量の閾値Thを越える加工プログラムのブロックおよび工具の位置をすべて抽出する。
【0023】
閾値Thを超えるブロックのブロック番号と前記工具の位置が求まると、後述する切粉排出指令挿入手段が、前記切粉堆積量が閾値Thを超える時のブロック番号の直前に切粉排出用の指令ブロックを自動挿入する。このようにすることで、切粉排出用の指令ブロックを自動挿入したプログラムの運転時に、当該指令ブロックが実行されたタイミングで周辺機器による切粉除去用動作が開始される。ここで、切粉堆積量が閾値Thを超える前記工具の位置を格納したメモリを周辺機器が参照することで、工具が前記工具の位置へ移動した時に切粉除去動作を開始させることも可能である。
【0024】
なお、オペレータが閾値Thを超える時のブロックを編集してから、切粉排出用の指令ブロックが挿入するようにしても良い。数値制御装置の表示画面上には閾値Thを超えるブロックのブロック番号と前記工具の位置が表示されているので、オペレータは、切粉堆積量が閾値Thを超えるブロックを編集して前記閾値を超えるタイミングでブロックを分割することができる。そして、ブロックを分割した後に前記タイミングで切粉排出用の指令ブロックを実行するように挿入することで、高精度なタイミングで任意の方法による切粉除去を行うことができる。例えば、閾値Thを超えるタイミングで動作を中断し、工具をクリーニング用工具に交換して切粉除去を行うことも可能である。
【0025】
<切粉排出指令挿入手段>
本発明の数値制御装置は、切粉排出用の切粉堆積量が閾値Thを超えるブロックの直前に、切粉排出用の指令コードのブロックを自動挿入する。このような方法を取ることで、加工プログラムに自動挿入する切粉排出用の指令コードのブロックを変更するだけで、さまざまな切粉排出方法を選ぶことができるようになり、切粉を排出するときの切削液に掛ける圧力や切粉排出の力が及ぶ場所を任意に変更することができる。
【0026】
例えば、切粉排出用の指令コードとして以下の2つの動作を行う指令コードを含むブロックを挿入することで、適切な圧力で堆積した切粉を排出ことが可能となる。
ブロック1:指定した圧力で切削液を噴出可能なクリーニング用工具への交換指令コード
ブロック2:交換した工具による切粉洗浄用サイクル指令コード
【0027】
なお、ユーザは切粉排出のタイミングを加工プログラム中の切粉排出用の指令コードなどから容易に確認することができるようになる。また、切粉堆積量予測手段が予測した加工プログラムの各ブロックにおける切粉堆積量とブロック番号の関係をグラフ表示などすることにより、切粉堆積量とブロック番号の関係が分かるため、加工プログラムへの切粉排出用の指令コードのブロックの挿入位置の妥当性を判断することができるようになる。
【0028】
<描画ワークの体積の計算方法について>
本発明の数値制御装置では、既に公知となっている3次元ソリッドデータに基づく体積の算出方法を描画ワークに適用することにより、描画ワークの体積Vの算出を行う。描画ワークの体積Vの算出においては、ソリッドデータの種類によって異なる算出方法を用いる。ここでは、例として以下の条件を満たす種類のソリッドデータからなる描画ワークの体積を求める手順を述べる。
−条件1:ワークの表面は
図4に示すように複数の3角形の要素で構成される。3角形の形状は通常は微小であるが、
図4ではわかりやすくするために微小ではない3角形で示している。
−条件2:各3角形の法線ベクトルvの情報がある。ただし法線ベクトルvの向きは
図4に示すようにワークの外側を向くものとする。
【0029】
最初に、原点O、及びある3角形の各頂点ABCで作成される4面体の体積Vqを計算する。4面体OABCの体積Vqは以下の数1式で算出することができる。数1式におけるベクトルa,b,cは、それぞれ
図5に示すように、原点Oから3角形の頂点Aへのベクトル、原点Oから3角形の頂点Bへのベクトル、原点Oから3角形の頂点Cへのベクトルである。
【0031】
次に、以下の数2式を用いて、4面体OABCの体積Vqを求める時に選択した3角形の法線ベクトルvと、ベクトルaとのなす角Acを求める。
【0033】
数2式を用いて求めた角度Acが90°以下である場合には、数1式で求めた体積Vqに係数−1をかける。そして、ワーク表面を構成する全ての3角形の要素について同様の演算を行い、結果として得られた全ての4面体の体積値を合計することで、ソリッドモデルの体積を求めることができる。
【0034】
<切粉堆積量の計算方法について>
本発明の数値制御装置では、加工開始前の初期の描画ワークの体積から現在実行中のブロックの実行完了時における描画ワークの体積を減算した値に対して適切な係数を乗ずることで切粉堆積量を算出する。前記係数を求める際には、切粉堆積量に与える影響が大きい(1)ワークの材質と(2)工具の種類とを考慮する。前記係数は任意の定数、または変数である。ここでは、例としてワークの材質、および工具の種類に従って予め設定した定数を乗ずることにより切粉堆積量を算出する手順を述べる。
【0035】
最初に、加工開始前の初期の描画ワークの体積から現在実行中のブロックの実行完了時における描画ワークの体積を減算した値に基づいて切粉堆積量を求めるときに使用する、係数データベースを予め作成しておく。この係数データベースに記憶する係数は、ワーク材質毎に決まるものと工具種類番号毎に決まるものがあり、パラメータ設定画面でそれぞれを設定しておくことにより前記データベースを作成する。各係数は、例えば予め実験などによりワーク材質毎、工具種類毎に求めておき、それぞれワーク材質および工具種類番号と関連付けて係数データベースに記憶しておくとよい。
【0036】
オペレータによる加工プログラム作成時に、数値制御装置はオペレータに対してワークの材質を選択するように促す。オペレータは、数値制御装置からの指示に従って適切な材質の種類を選択する。また、オペレータは工具種類番号を指定する。使用する工具種類はプログラム実行中に工具交換を行うと変化するため、例えば加工プログラムに工具交換指令コードとして挿入することにより工具種類を指定する。
【0037】
そして、数値制御装置は加工シミュレーション実行中に切粉堆積量Vaを求める。切粉堆積量Vaは以下に示す数3式を用いて算出することができる。なお、数3式において、Kwはワーク材質毎に予め決めておく係数、Ktは工具種類毎に予め決めておく係数、Vmは初期の描画ワークの体積から現在実行中のブロックの実行完了時における描画ワークの体積を減算した値である。
【0039】
以下では、上記した各手段により切粉堆積量の予測と切粉排出用の指令コードの挿入とを行う数値制御装置の構成について説明する。
図6は、本発明の一実施形態による数値制御装置と該数値制御装置によって駆動制御される工作機械、例えば、旋盤等の要部を示すハードウェア構成図である。数値制御装置1が備えるCPU11は、数値制御装置1を全体的に制御するプロセッサである。CPU11は、ROM12に格納されたシステムプログラムをバス20を介して読み出し、該システムプログラムに従って数値制御装置1全体を制御する。RAM13には一時的な計算データや表示データ及びCRT/MDIユニット70を介してオペレータが入力した各種データ等が格納される。
【0040】
不揮発性メモリ14は、例えば図示しないバッテリでバックアップされるなどして、数値制御装置1の電源がオフされても記憶状態が保持されるメモリとして構成される。不揮発性メモリ14には、インタフェース15を介して読み込まれた後述する加工プログラムやCRT/MDIユニット70を介して入力された加工プログラムが記憶されている。不揮発性メモリ14には更に、加工プログラムを運転するために用いられる加工プログラム運転処理用プログラム、および3次元加工シミュレーションのためのグラフィック描画処理用プログラム等が記憶されるが、これらプログラムは実行時にはRAM13に展開される。また、ROM12には、加工プログラムの作成及び編集のために必要とされる編集モードの処理や上記した干渉発生の予測検出時における軸に関する情報表示の表示属性変更処理を実行するための各種のシステムプログラムがあらかじめ書き込まれている。本発明を実行する加工プログラム等の各種加工プログラムはインタフェース15やCRT/MDIユニット70を介して入力し、不揮発性メモリ14に格納することができる。
【0041】
インタフェース15は、数値制御装置1とアダプタ等の外部機器72と接続するためのインタフェースである。外部機器72側からは加工プログラムや各種パラメータ等が読み込まれる。また、数値制御装置1内で編集した加工プログラムは、外部機器72を介して外部記憶手段に記憶させることができる。PMC(プログラマブル・マシン・コントローラ)16は、数値制御装置1に内蔵されたシーケンスプログラムで工作機械の補助装置(例えば、工具交換用のロボットハンドといったアクチュエータ)にI/Oユニット17を介して信号を出力し制御する。また、工作機械の本体に配備された操作盤の各種スイッチ等の信号を受け、必要な信号処理をした後、CPU11に渡す。
【0042】
CRT/MDIユニット70はディスプレイやキーボード等を備えた手動データ入力装置であり、インタフェース18はCRT/MDIユニット70のキーボードからの指令,データを受けてCPU11に渡す。インタフェース19は手動パルス発生器等を備えた操作盤71に接続されている。
【0043】
各軸の軸制御回路30〜31はCPU11からの各軸の移動指令量を受けて、各軸の指令をサーボアンプ40〜41に出力する。サーボアンプ40〜41はこの指令を受けて、各軸のサーボモータ50〜51を駆動する。各軸のサーボモータ50〜51は位置・速度検出器を内蔵し、この位置・速度検出器からの位置・速度フィードバック信号を軸制御回路30〜31にフィードバックし、位置・速度のフィードバック制御を行う。なお、ブロック図では、位置・速度のフィードバックについては省略している。
【0044】
スピンドル制御回路60は、工作機械への主軸回転指令を受け、スピンドルアンプ61にスピンドル速度信号を出力する。スピンドルアンプ61はこのスピンドル速度信号を受けて、工作機械の主軸モータ62を指令された回転速度で回転させ、工具を駆動する。
主軸モータ62には歯車あるいはベルト等でポジションコーダ63が結合され、ポジションコーダ63が主軸の回転に同期して帰還パルスを出力し、その帰還パルスはCPU11によって読み取られる。
【0045】
図7は、上記した各手段を
図2に示した数値制御装置1に対してシステムプログラムとして実装した場合の概略的な機能ブロック図を示している。本実施形態の数値制御装置1は、シミュレーション部100、切粉堆積量予測部110、切粉排出タイミング算出部120、表示部130、切粉排出指令挿入部140を備える。
シミュレーション部100は、加工プログラム200に基づいて仮想的なワークに対する加工のシミュレーションを行う。シミュレーション部100が実行する加工シミュレーションには、例えば特開2003−291033号公報や特開平09−073309などに開示される公知の方法を用いることができる。シミュレーション部100は、描画ワーク体積量算出部101を備えており、該描画ワーク体積量算出部101は、例えば上記した描画ワークの体積の計算方法を用いて、加工シミュレーション開始時には初期のワークの体積を、加工プログラム200の各ブロックの加工シミュレーション実行時には加工プログラム200の各ブロックの実行完了時における描画ワークの体積を、それぞれ算出する。
【0046】
切粉堆積量予測部110は、描画ワーク体積量算出部101にて算出される初期のワークの体積、および各ブロックの実行完了時における描画ワークの体積に基づいて、上記した切粉堆積量の計算方法を用いて加工プログラム200の各ブロック実行完了時における切粉堆積量を予測する。
【0047】
切粉排出タイミング算出部120は、切粉堆積量予測部110が予測した加工プログラム200の各ブロック実行完了時における切粉堆積量と、予め図示しないメモリに記憶してある閾値Thとを比較し、その比較結果に基づいて切粉堆積量が閾値Thを超えるブロックのブロック番号を求めると共に、当該ブロックにおいて切粉堆積量が閾値Thを超える時の工具の位置を求める。切粉堆積量が閾値Thを超えるブロックのブロック番号、及び当該ブロックにおいて切粉堆積量が閾値Thを超える時の工具の位置を求める方法は、上記した方法を用いればよい。切粉排出タイミング算出部120は、最初に切粉堆積量が閾値Thを超えるタイミングを算出した後は、当該ブロックを開始する直前の描画ワークの体積を初期の描画ワーク体積とみなし、当該ブロックを開始ブロックとして上記した方法を繰り返すことで、切粉堆積量の閾値Thを越える加工プログラムのブロックおよび工具の位置をすべて抽出する。
【0048】
表示部130は、切粉排出タイミング算出部120が算出した切粉排出のタイミング(切粉堆積量が閾値Thを超えるブロックのブロック番号、及び当該ブロックにおいて切粉堆積量が閾値Thを超える時の工具の位置)を、オペレータが閲覧できるようにCRT/MDIユニット70に表示する。
【0049】
切粉排出指令挿入部140は、切粉排出タイミング算出部120が算出した切粉排出のタイミング(切粉堆積量が閾値Thを超えるブロックのブロック番号、及び当該ブロックにおいて切粉堆積量が閾値Thを超える時の工具の位置)に基づいて、加工プログラム200に対して切粉排出用の指令コードを自動挿入した修正加工プログラム210を生成して出力する。修正加工プログラム210は、オペレータがCRT/MDIユニット70を操作することで自由に閲覧、編集することができる。
【0050】
図8は、本発明の数値制御装置1上で実行される処理を加工シミュレーションに関連する処理と切粉堆積量の予測に関連する処理とに分けて示したフローチャートである。
●[ステップSA01]シミュレーション部100は、加工シミュレーション開始する。
●[ステップSA02]描画ワーク体積量算出部101は、初期ワークの形状データに基づいて初期ワークの体積を算出する。
●[ステップSA03]シミュレーション部100は、加工プログラム200の1ブロックについてシミュレーションによる加工を実行する。
【0051】
●[ステップSA04]シミュレーション部100は、シミュレーションによる加工の結果に基づいて加工箇所を取り除いてワーク形状を更新する。
●[ステップSA05]描画ワーク体積量算出部101は、ステップSA04で更新されたワーク形状に基づいてワークの体積を算出する。
●[ステップSA06]切粉堆積量予測部110は、オペレータが予め入力しておいたワーク材質、工具種類を用いて係数データベース220を参照し、切粉堆積量を求めるために用いられる係数を取得する。
●[ステップSA07]切粉堆積量予測部110はステップSA06で取得した係数と、初期ワークの体積、及び現在のワークの体積に基づいて切粉堆積量の予測値を算出する。
【0052】
●[ステップSA08]切粉排出タイミング算出部120は、ステップSA07で算出された切粉堆積量を取得する。
●[ステップSA09]切粉排出タイミング算出部120は、ステップSA08で取得した切粉堆積量が、予め設定された閾値Thを超えるか否かを判定する。閾値Thを超える場合にはステップSA10へと処理を移行し、閾値Thを超えない場合にはステップSA12へと処理を移行する。
●[ステップSA10]切粉排出タイミング算出部120は、加工プログラム200の現在シミュレーションを実行しているブロック番号をメモリ上に保存する。必要に応じて、閾値Thを超える時の工具の位置を算出して、同様にメモリ上に保存する。
●[ステップSA11]切粉排出タイミング算出部120は、初期の描画ワークの体積を現在の描画ワーク体積で更新する。
●[ステップSA12]シミュレーション部100は、加工プログラム200の全てのブロックについて加工シミュレーションが終了したか否かを判定する。加工シミュレーションが終了した場合には本処理を終了し、加工シミュレーションが終了していない場兄はステップSA03へと処理を移行する。
【0053】
図9は、描画ワーク体積量算出部101が実行する描画ワークソリッドモデルのワークの体積Vsを求める処理のフローチャートである。なお、本フローチャートでは、以下の条件を満たす種類のソリッドデータからなる描画ワークの体積を求める処理手順を示している。
−条件1:ワークの表面は複数の微小3角形の要素で構成される。
−条件2:各3角形の法線ベクトルvのデータが算出乃至取得されている。
●[ステップSB01]描画ワーク体積量算出部101は、ソリッドモデルの描画ワークの体積の計算の開始時にソリッドモデルの描画ワークの体積データを初期化する。
●[ステップSB02]描画ワーク体積量算出部101は、原点O、および描画ワークの形状を構成している3角形の各頂点とで作成される4面体の体積Vqを求める。
●[ステップSB03]描画ワーク体積量算出部101は、原点O、および描画ワークの形状を構成している3角形のある頂点とで作成されるベクトルaを求める。
●[ステップSB04]描画ワーク体積量算出部101は、3角形の面においてワークの外側を向く法線ベクトルvと、ステップSB03で求めたベクトルaのなす角Acを求める。
【0054】
●[ステップSB05]描画ワーク体積量算出部101は、ステップSB04で求めた角Acが90°以下であるか否かを判定する。90°以下である場合にはステップSB06へと処理を移行し、90°よりも大きい場合にはステップSB07へと処理を移行する。
●[ステップSB06]描画ワーク体積量算出部101は、ステップSB02で求めた4面体の体積Vqに対して−1を掛ける。
●[ステップSB07]描画ワーク体積量算出部101は、ソリッドモデルの描画ワークの体積Vsに対して上記ステップで求めたVqを加算する。
●[ステップSB08]描画ワーク体積量算出部101は、描画ワークを構成する全ての3角形の要素について上記処理を行ったか否かを判定する。行っている場合には本処理を終了し、行っていない場合にはステップSB02へと処理を移行する。
【0055】
以上、本発明の実施の形態について説明したが、本発明は上記した実施の形態の例にのみ限定されるものでなく、適宜の変更を加えることにより様々な態様で実施することができる。
例えば、上記した実施形態では本発明で提供する機能を数値制御装置に設けた例を示したが、本発明で提供する機能はパソコンなどで実装された加工プログラムのシミュレーション装置に設けるようにしても良く、この場合においても本発明の各機能は好適に動作する。
【0056】
また、上記した実施形態では、描画ワークのモデルについて、表面を微小3角形で構成されたソリッドモデルとした例を示したが、描画ワークの体積を算出可能な3次元形状を表すモデルであればどのようなモデル化手法を採用しても良い。
【0057】
更に、上記した実施形態では、切粉を排出するための手段として切削液を噴出させて切粉を除去する装置を例として挙げているが、切粉を排出するための手段としては、例えば、磁石を使用して切粉を取り出し搬送を行うマグネットコンベアや、切粉を吸引する装置を把持したロボットなどを用いるようにしても良く、その場合においても、切粉排出指令挿入部140が、切粉排出タイミング算出部120が算出した切粉排出のタイミング(切粉堆積量が閾値Thを超えるブロックのブロック番号、及び当該ブロックにおいて切粉堆積量が閾値Thを超える時の工具の位置)に、これら切粉を除去する手段を動作させる指令を挿入することで対応することが可能である。