(57)【要約】  【課題】  工具、冶具、ワーク等を損傷させることなく、ＮＣ加工プログラムに基づく工具等の動作を確認することができる数値制御装置、数値制御方法、及び制御プログラムを提供する。  【解決手段】  複数の命令で構成された加工プログラムに従って、互いに直交する３軸方向に工具とワークとを相対的に駆動する複数の軸駆動部の動作を制御する数値制御装置において、加工プログラムによる軸駆動部の動作中の干渉の有無を確認する旨を示す情報が有る場合、軸駆動部の動作速度を、加工プログラムで指定した軸駆動部の動作速度より遅い速度に設定し、設定した速度で軸駆動部を動作させ、軸駆動部が動作中に、命令ごとに干渉の有無を判断し、干渉が有ると判断した場合、軸駆動部の動作を停止する。【選択図】        図２
2006260104.tif 000002
【特許請求の範囲】
【請求項１】
複数の命令で構成された加工プログラムに従って、互いに直交する３軸方向に工具とワークとを相対的に駆動する複数の軸駆動部の動作を制御する数値制御装置において、
前記加工プログラムによる前記軸駆動部の動作中の干渉の有無を確認する旨を示す情報の有無を判断する第１の判断手段と、
該第１の判断手段で、干渉の有無を確認する旨を示す情報が有ると判断した場合、前記軸駆動部の動作速度を、前記加工プログラムで指定した軸駆動部の動作速度より遅い速度に設定する速度設定手段と、
該速度設定手段で設定した速度で前記軸駆動部を動作させる駆動手段と、
前記軸駆動部が動作中に、前記命令ごとに干渉の有無を判断する第２の判断手段と、
該第２の判断手段で干渉が有ると判断した場合、前記軸駆動部の動作を停止する停止手段と
を備えることを特徴とする数値制御装置。
【請求項２】
前記軸駆動部は電動であり、
前記第２の判断手段は、
前記軸駆動部で供給される電流値を検出する電流値検出手段と、
該電流値検出手段で検出した電流値が所定値を超えたか否かを判断する第３の判断手段と
を備え、
該第３の判断手段で検出した電流値が所定値を超えたと判断した場合、干渉が有ると判断するようにしてあることを特徴とする請求項１記載の数値制御装置。
【請求項３】
前記第２の判断手段の判断結果を命令ごとに記憶手段に記憶する判断結果記憶手段と、
前記駆動手段で、前記軸駆動部を動作させる加工プログラムの命令が既に実行されているか否かを判断する第４の判断手段と
を備え、
前記速度設定手段は、
前記第４の判断手段で前記命令が既に実行されていると判断した場合、前記記憶手段に記憶してある前記命令の判断結果に基づいて干渉が無い命令であるか否かを判断し、干渉が無い命令であると判断した場合、前記軸駆動部の動作速度を前回の動作速度より速い速度に設定するようにしてあることを特徴とする請求項１又は２記載の数値制御装置。
【請求項４】
前記前回の動作速度は、前記加工プログラムで指定した前記軸駆動部の動作速度、又は前記速度設定手段で設定した前記軸駆動部の動作速度であることを特徴とする請求項３記載の数値制御装置。
【請求項５】
命令ごとの干渉の有無の判断結果を、命令に基づく前記軸駆動部の移動終点の３軸で特定される座標系での座標値に対応付けて、記憶手段に記憶する判断結果記憶手段と、
実行する命令に基づく前記軸駆動部の移動終点の座標値を算出する第１の座標値算出手段と、
算出した座標値に基づいて前記記憶手段に記憶してある干渉の有無の判断結果を抽出する判断結果抽出手段と
を備え、
前記速度設定手段は、
抽出した判断結果に基づいて干渉が無いと判断した場合、前記軸駆動部の速度を前回の速度より速い速度に設定するようにしてあることを特徴とする請求項３又は４記載の数値制御装置。
【請求項６】
命令ごとの干渉の有無の判断結果を、命令に基づく前記軸駆動部の移動始点及び移動終点の３軸で特定される座標系での座標値に対応付けて、記憶手段に記憶する判断結果記憶手段と、
実行する命令に基づく前記軸駆動部の移動始点及び移動終点の座標値を算出する第２の座標値算出手段と、
算出した座標値に基づいて前記記憶手段に記憶してある干渉の有無の判断結果を抽出する判断結果抽出手段と
を備え、
前記速度設定手段は、
抽出した判断結果に基づいて干渉が無いと判断した場合、前記軸駆動部の速度を前回の速度より速い速度に設定するようにしてあることを特徴とする請求項３又は４記載の数値制御装置。
【請求項７】
前記加工プログラムは一の記憶手段に記憶してあり、
前記加工プログラムを複写して他の記憶手段に記憶する複写手段と、
実行する命令を特定する情報を抽出する命令特定情報抽出手段と、
抽出した特定する情報に対応する命令を、記憶してある複写した加工プログラムから抽出する命令抽出手段と、
実行する命令と抽出した命令とが一致するか否かを判断する第５の判断手段と
を備え、
該第５の判断手段で命令が一致すると判断した場合、前記軸駆動部の速度を前回の速度より速い速度に設定するようにしてあることを特徴とする請求項３又は４記載の数値制御装置。
【請求項８】
複数の命令で構成された加工プログラムに従って、互いに直交する３軸方向に工具とワークとを相対的に駆動する複数の軸駆動部の動作を制御する数値制御装置を用いる数値制御方法において、
前記加工プログラムによる前記軸駆動部の動作中の干渉の有無を確認する旨を示す情報の有無を判断し、
干渉の有無を確認する旨を示す情報が有ると判断した場合、前記軸駆動部の動作速度を、前記加工プログラムで指定した軸駆動部の動作速度より遅い速度に設定し、
設定した速度で前記軸駆動部を動作させ、
動作中に、前記命令ごとに干渉の有無を判断し、
干渉が有ると判断した場合、前記軸駆動部の動作を停止することを特徴とする数値制御方法。
【請求項９】
干渉の有無の判断結果を命令ごとに記憶手段に記憶し、
前記軸駆動部を動作させる加工プログラムの命令が既に実行されているか否かを判断し、
前記命令が既に実行されていると判断した場合、前記記憶手段に記憶してある前記命令の判断結果に基づいて干渉が無い命令であるか否かを判断し、干渉が無い命令であると判断した場合、前記軸駆動部の動作速度を前回の動作速度より速い速度に設定することを特徴とする請求項８記載の数値制御方法。
【請求項１０】
命令ごとに動作中の干渉の有無を判断する場合、前記軸駆動部に備えた工具にツールを装着せずに前記加工プログラムの命令に従って動作させることを特徴とする請求項８又は９記載の数値制御方法。
【請求項１１】
複数の命令で構成された加工プログラムに従って、互いに直交する３軸方向に工具とワークとを相対的に駆動する複数の軸駆動部の動作を制御する数値制御装置で実行することが可能な制御プログラムにおいて、
前記数値制御装置を、
前記加工プログラムによる前記軸駆動部の動作中の干渉の有無を確認する旨を示す情報の有無を判断する第１の判断手段、
該第１の判断手段で、干渉の有無を確認する旨を示す情報が有ると判断した場合、前記軸駆動部の動作速度を、前記加工プログラムで指定した軸駆動部の動作速度より遅い速度に設定する速度設定手段、
該速度設定手段で設定した速度で前記軸駆動部を動作させる駆動手段、
前記軸駆動部が動作中に、前記命令ごとに干渉の有無を判断する第２の判断手段、及び
該第２の判断手段で干渉が有ると判断した場合、前記軸駆動部の動作を停止する停止手段
として機能させることを特徴とする制御プログラム。
【請求項１２】
前記数値制御装置を、
前記第２の判断手段の判断結果を命令ごとに記憶手段に記憶する手段、及び
前記駆動手段で、前記軸駆動部を動作させる加工プログラムの命令が既に実行されているか否かを判断する第４の判断手段
として機能させ、
前記第４の判断手段で前記命令が既に実行されていると判断した場合、前記記憶手段に記憶してある前記命令の判断結果に基づいて干渉が無い命令であるか否かを判断し、干渉が無い命令であると判断した場合、前記軸駆動部の動作速度を前回の動作速度より速い速度に設定するようにしてあることを特徴とする請求項１１記載の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、旋盤、マシニングセンタ等の工作機械を制御するための数値制御（Numerical Control）装置、数値制御方法、及び制御プログラムに関し、特に機器の干渉の確認動作時の動作速度を調整することができる数値制御装置、数値制御方法、及び制御プログラムに関する。
【背景技術】
【０００２】
例えば旋盤、マシニングセンタ等の工作機械を制御するための数値制御（Numerical Control）装置は、ＮＣ加工プログラムに従って工作機械の動作を制御し、工作物に対して加工を行う。ＮＣ加工プログラムは、準備機能（Ｇ機能、Ｇコード）、補助機能（Ｍ機能、Ｍコード）、主軸機能（Ｓコード）、送り機能（Ｆコード）、工具機能（Ｔ機能）等により、座標系の設定、工具又は工作物の移動指令、主軸の回転等を制御し、工作物に対して加工を行うためのプログラムであり、コンピュータで実行することにより、工作機械の動作を制御する。
【０００３】
ＮＣ加工プログラムが新規に作成された場合、又は修正された場合、動作が制御される工具又は工作物の動作が保証されるものではなく、ＮＣ加工プログラムは、動作の確認を行っていない状態で完成とは言えない。ＮＣ加工プログラムが新規に作成された場合、又は修正された場合、従来は、動作が制御される工具又は工作物の動作を手動で行い、干渉等の発生の有無を確認していた。
【０００４】
たとえば特許文献１では、ＮＣ加工プログラムを手動モードで実行し、手動ハンドルの回転速度に応じて工具又は工作物の移動速度を加減速するＮＣ加工プログラム動作確認装置が開示されている。特許文献１では、作業者が手動モードと自動モードとを切替可能になっており、干渉に影響のない場合には自動モードに切り替え、ＮＣ加工プログラムで指定された速度で、干渉に影響のある場合には手動モードに切り替え、手動ハンドルの操作により低速で、それぞれ移動させることにより、干渉の有無を確認することができる。
【特許文献１】特開平２−２１２９０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１に開示した従来のＮＣ加工プログラム動作確認装置では、工具又は工作物の移動速度が作業者のモード切替操作及び速度設定動作に依存しており、例えば自動モードから手動モードへ切り替えるタイミングが遅れた場合、移動体が高速で障害物に衝突することから、工具、冶具、ワーク等を損傷するおそれがあるという問題点があった。
【０００６】
また、手動ハンドルを誤操作することにより、低速で動作が正常であるか否かを確認を行うべき移動位置で高速移動させてしまうことにより、工具、冶具、ワーク等を損傷するおそれもあるという問題点があった。
【０００７】
さらに、確認動作中に工具、冶具、ワーク等が相互に干渉するか否かを判断することができず、干渉すると判断した場合に動作を停止することもできないことから、工具、冶具、ワーク等の損傷を未然に防止することができないという問題点もあった。
【０００８】
本発明は、斯かる事情に鑑みてなされたものであり、工具、冶具、ワーク等を損傷させることなく、ＮＣ加工プログラムに基づく工具等の動作を確認することができる数値制御装置、数値制御方法、及び制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために第１発明に係る数値制御装置は、複数の命令で構成された加工プログラムに従って、互いに直交する３軸方向に工具とワークとを相対的に駆動する複数の軸駆動部の動作を制御する数値制御装置において、前記加工プログラムによる前記軸駆動部の動作中の干渉の有無を確認する旨を示す情報の有無を判断する第１の判断手段と、該第１の判断手段で、干渉の有無を確認する旨を示す情報が有ると判断した場合、前記軸駆動部の動作速度を、前記加工プログラムで指定した軸駆動部の動作速度より遅い速度に設定する速度設定手段と、該速度設定手段で設定した速度で前記軸駆動部を動作させる駆動手段と、前記軸駆動部が動作中に、前記命令ごとに干渉の有無を判断する第２の判断手段と、該第２の判断手段で干渉が有ると判断した場合、前記軸駆動部の動作を停止する停止手段とを備えることを特徴とする。
【００１０】
また、第２発明に係る数値制御装置は、第１発明において、前記軸駆動部は電動であり、前記第２の判断手段は、前記軸駆動部で供給される電流値を検出する電流値検出手段と、該電流値検出手段で検出した電流値が所定値を超えたか否かを判断する第３の判断手段とを備え、該第３の判断手段で検出した電流値が所定値を超えたと判断した場合、干渉が有ると判断するようにしてあることを特徴とする。
【００１１】
また、第３発明に係る数値制御装置は、第１又は第２発明において、前記第２の判断手段の判断結果を命令ごとに記憶手段に記憶する判断結果記憶手段と、前記駆動手段で、前記軸駆動部を動作させる加工プログラムの命令が既に実行されているか否かを判断する第４の判断手段とを備え、前記速度設定手段は、前記第４の判断手段で前記命令が既に実行されていると判断した場合、前記記憶手段に記憶してある前記命令の判断結果に基づいて干渉が無い命令であるか否かを判断し、干渉が無い命令であると判断した場合、前記軸駆動部の動作速度を前回の動作速度より速い速度に設定するようにしてあることを特徴とする。
【００１２】
また、第４発明に係る数値制御装置は、第３発明において、前記前回の動作速度は、前記加工プログラムで指定した前記軸駆動部の動作速度、又は前記速度設定手段で設定した前記軸駆動部の動作速度であることを特徴とする。
【００１３】
また、第５発明に係る数値制御装置は、第３又は第４発明において、命令ごとの干渉の有無の判断結果を、命令に基づく前記軸駆動部の移動終点の３軸で特定される座標系での座標値に対応付けて、記憶手段に記憶する判断結果記憶手段と、実行する命令に基づく前記軸駆動部の移動終点の座標値を算出する第１の座標値算出手段と、算出した座標値に基づいて前記記憶手段に記憶してある干渉の有無の判断結果を抽出する判断結果抽出手段とを備え、前記速度設定手段は、抽出した判断結果に基づいて干渉が無いと判断した場合、前記軸駆動部の速度を前回の速度より速い速度に設定するようにしてあることを特徴とする。
【００１４】
また、第６発明に係る数値制御装置は、第３又は第４発明において、命令ごとの干渉の有無の判断結果を、命令に基づく前記軸駆動部の移動始点及び移動終点の３軸で特定される座標系での座標値に対応付けて、記憶手段に記憶する判断結果記憶手段と、実行する命令に基づく前記軸駆動部の移動始点及び移動終点の座標値を算出する第２の座標値算出手段と、算出した座標値に基づいて前記記憶手段に記憶してある干渉の有無の判断結果を抽出する判断結果抽出手段とを備え、前記速度設定手段は、抽出した判断結果に基づいて干渉が無いと判断した場合、前記軸駆動部の速度を前回の速度より速い速度に設定するようにしてあることを特徴とする。
【００１５】
また、第７発明に係る数値制御装置は、第３又は第４発明において、前記加工プログラムは一の記憶手段に記憶してあり、前記加工プログラムを複写して他の記憶手段に記憶する複写手段と、実行する命令を特定する情報を抽出する命令特定情報抽出手段と、抽出した特定する情報に対応する命令を、記憶してある複写した加工プログラムから抽出する命令抽出手段と、実行する命令と抽出した命令とが一致するか否かを判断する第５の判断手段とを備え、該第５の判断手段で命令が一致すると判断した場合、前記軸駆動部の速度を前回の速度より速い速度に設定するようにしてあることを特徴とする。
【００１６】
また、第８発明に係る数値制御方法は、複数の命令で構成された加工プログラムに従って、互いに直交する３軸方向に工具とワークとを相対的に駆動する複数の軸駆動部の動作を制御する数値制御装置を用いる数値制御方法において、前記加工プログラムによる前記軸駆動部の動作中の干渉の有無を確認する旨を示す情報の有無を判断し、干渉の有無を確認する旨を示す情報が有ると判断した場合、前記軸駆動部の動作速度を、前記加工プログラムで指定した軸駆動部の動作速度より遅い速度に設定し、設定した速度で前記軸駆動部を動作させ、動作中に、前記命令ごとに干渉の有無を判断し、干渉が有ると判断した場合、前記軸駆動部の動作を停止することを特徴とする。
【００１７】
また、第９発明に係る数値制御方法は、第８発明において、干渉の有無の判断結果を命令ごとに記憶手段に記憶し、前記軸駆動部を動作させる加工プログラムの命令が既に実行されているか否かを判断し、前記命令が既に実行されていると判断した場合、前記記憶手段に記憶してある前記命令の判断結果に基づいて干渉が無い命令であるか否かを判断し、干渉が無い命令であると判断した場合、前記軸駆動部の動作速度を前回の動作速度より速い速度に設定することを特徴とする。
【００１８】
また、第１０発明に係る数値制御方法は、第８又は第９発明において、命令ごとに動作中の干渉の有無を判断する場合、前記軸駆動部に備えた工具にツールを装着せずに前記加工プログラムの命令に従って動作させることを特徴とする。
【００１９】
また、第１１発明に係る制御プログラムは、複数の命令で構成された加工プログラムに従って、互いに直交する３軸方向に工具とワークとを相対的に駆動する複数の軸駆動部の動作を制御する数値制御装置で実行することが可能な制御プログラムにおいて、前記数値制御装置を、前記加工プログラムによる前記軸駆動部の動作中の干渉の有無を確認する旨を示す情報の有無を判断する第１の判断手段、該第１の判断手段で、干渉の有無を確認する旨を示す情報が有ると判断した場合、前記軸駆動部の動作速度を、前記加工プログラムで指定した軸駆動部の動作速度より遅い速度に設定する速度設定手段、該速度設定手段で設定した速度で前記軸駆動部を動作させる駆動手段、前記軸駆動部が動作中に、前記命令ごとに干渉の有無を判断する第２の判断手段、及び該第２の判断手段で干渉が有ると判断した場合、前記軸駆動部の動作を停止する停止手段として機能させることを特徴とする。
【００２０】
また、第１２発明に係る制御プログラムは、第１１発明において、前記数値制御装置を、前記第２の判断手段の判断結果を命令ごとに記憶手段に記憶する手段、及び前記駆動手段で、前記軸駆動部を動作させる加工プログラムの命令が既に実行されているか否かを判断する第４の判断手段として機能させ、前記第４の判断手段で前記命令が既に実行されていると判断した場合、前記記憶手段に記憶してある前記命令の判断結果に基づいて干渉が無い命令であるか否かを判断し、干渉が無い命令であると判断した場合、前記軸駆動部の動作速度を前回の動作速度より速い速度に設定するようにしてあることを特徴とする。
【００２１】
第１発明、第８発明、及び第１１発明では、加工プログラムが、軸駆動部の動作中の干渉の有無を確認する動作モードである場合、軸駆動部の動作速度を、加工プログラムで指定した軸駆動部の動作速度より遅い速度に設定する。そして、設定した速度で軸駆動部を動作させ、軸駆動部が動作中に、命令ごとに干渉の有無を判断し、干渉が有る場合に軸駆動部の動作を停止する。これにより、軸駆動部の確認動作中は動作速度を遅くすることができ、軸駆動部の動作により干渉が生じるか否かを正確に判断し、干渉が生じる場合には軸駆動部の動作を停止することができることから、軸駆動部の動作による工具、冶具、ワーク等の損傷を未然に防止することができ、加工プログラムによる軸駆動部の動作が正常であるか否かを確認することが可能となる。
【００２２】
第２発明では、軸駆動部へ供給されている電流値を検出し、検出した電流値が所定値を超えた場合に干渉が有ると判断する。これにより、干渉が生じた場合に軸駆動部へ供給過大となる電流値を検出することができ、干渉の発生を確実に検出することが可能となる。
【００２３】
第３発明、第９発明、及び第１２発明では、干渉の有無の判断結果を記憶手段に記憶しておき、軸駆動部を動作させる加工プログラムの命令が既に実行されている場合、記憶手段に記憶してある命令の判断結果に基づいて干渉が無い命令であるか否かを判断し、干渉が無い命令であると判断した場合、軸駆動部の動作速度を前回の動作速度より速い速度に設定する。これにより、前回の確認動作で干渉が無いと判断された命令については、確認動作を行う場合に干渉により工具、冶具、ワーク等が損傷するおそれが無い命令であることから、動作速度を速めることにより、確認動作処理に要する時間を短縮することが可能となる。
【００２４】
第４発明では、前回の確認動作で干渉が無いと判断された命令については、加工プログラムで指定した軸駆動部の動作速度、又は速度設定手段で設定した軸駆動部の動作速度よりも速い速度に設定することにより、干渉による工具、冶具、ワーク等の損傷を回避し、確認動作処理に要する時間を短縮することが可能となる。
【００２５】
第５発明では、命令ごとの干渉の有無の判断結果を、命令に基づく軸駆動部の移動終点の座標値に対応付けて記憶手段に記憶しておき、実行する命令に基づく軸駆動部の移動終点の座標値を算出し、算出した座標値に基づいて干渉の有無の判断結果を抽出し、抽出した判断結果に基づいて干渉が無いと判断した場合、軸駆動部の速度を前回の速度より速い速度に設定する。これにより、軸駆動部の命令ごとの移動終点の座標値をキー情報として前回の確認動作における干渉の有無に関する情報を抽出することができ、例えば前回の動作で干渉有りと記憶されており、今回の判断で干渉無しと判断された場合には制御プログラムが修正されたものと判断して前回の動作速度よりも速い速度で動作させ、今回の判断で干渉有りと判断された場合には制御プログラムが前回のままであると判断して前回の動作速度よりも遅い速度で動作させる等、干渉の可能性に基づいて軸駆動部の動作速度を調整することができる。したがって、工具、冶具、ワーク等を損傷させることなく、制御プログラムによる軸駆動部の動作を確認することが可能となる。
【００２６】
第６発明では、命令ごとの干渉の有無の判断結果を、命令に基づく軸駆動部の移動始点及び移動終点の座標値に対応付けて、記憶手段に記憶しておき、実行する命令に基づく軸駆動部の移動始点及び移動終点の座標値を算出し、算出した座標値に基づいて記憶手段に記憶してある干渉の有無の判断結果を抽出し、抽出した判断結果に基づいて干渉が無いと判断した場合、軸駆動部の速度を前回の速度より速い速度に設定する。これにより、軸駆動部の命令ごとの移動始点及び終点の座標値をキー情報として前回の確認動作における干渉の有無に関する情報を抽出することができ、例えば前回の動作で干渉有りと記憶されており、今回の判断で干渉無しと判断された場合には制御プログラムが修正されたものと判断して前回の動作速度よりも速い速度で動作させ、今回の判断で干渉有りと判断された場合には制御プログラムが前回のままであると判断して前回の動作速度よりも遅い速度で動作させる等、干渉の可能性に基づいて軸駆動部の動作速度を調整することができる。したがって、工具、冶具、ワーク等を損傷させることなく、制御プログラムによる軸駆動部の動作を確認することが可能となる。
【００２７】
第７発明では、加工プログラムは一の記憶手段に記憶してあり、加工プログラムを複写して他の記憶手段に記憶し、実行する命令を特定する情報、例えば行番号を抽出し、抽出した特定する情報に対応する命令を、記憶してある複写した加工プログラムから抽出し、実行する命令と抽出した命令とが一致する場合、軸駆動部の速度を前回の速度より速い速度に設定する。これにより、前回の命令と今回の命令とが一致する場合には、前回の確認動作における干渉の有無に関する情報の信頼性が高いものと判断することができ、例えば前回の動作で干渉有りと記憶されており、今回の判断で干渉無しと判断された場合には制御プログラムが修正されたものと判断して高速に移動させ、今回の判断で干渉有りと判断された場合には制御プログラムが前回のままであると判断して低速に移動させることができる。また、前回の命令と今回の命令とが一致しない場合には、前回の確認動作における干渉の有無に関する情報の信頼性が低いものと判断することができ、例えば前回の動作で干渉無しと記憶されている場合であっても低速で移動させる等、干渉の可能性に基づいて軸駆動部の動作速度を調整することができる。したがって、工具、冶具、ワーク等を損傷させることなく、制御プログラムによる軸駆動部の動作を確認することが可能となる。
【００２８】
第１０発明では、命令ごとに動作中の干渉の有無を判断する場合、軸駆動部に備えた工具にツールを装着せずに加工プログラムの命令に従って動作させる。これにより、例えば穴あけ加工が有り、干渉が生じる場合であっても、冶具に穴を開けることがなく、無用な損傷を未然に回避することが可能となる。
【発明の効果】
【００２９】
本発明によれば、干渉の有無等の確認動作中は、軸駆動部の動作速度を遅くすることができ、軸駆動部の動作により干渉が生じるか否かを正確に判断し、干渉が生じる場合には軸駆動部の動作を停止することができることから、軸駆動部の動作による工具、冶具、ワーク等の損傷を未然に防止することができ、加工プログラムによる軸駆動部の動作が正常であるか否かを確認することが可能となる。
【００３０】
また、本発明によれば、前回の確認動作で干渉が無いと判断された命令については、確認動作を行う場合に干渉により工具、冶具、ワーク等が損傷するおそれが無い命令であることから、動作速度を速めることにより、確認動作処理に要する時間を短縮することが可能となる。
【００３１】
さらに、本発明によれば、例えば穴あけ加工が有り、干渉が生じる場合であっても、冶具に穴を開けることがなく、無用な損傷を未然に回避することが可能となる。
【発明を実施するための最良の形態】
【００３２】
以下に、本発明をその実施の形態を示す図面に基づいて説明する。図１は、本発明の実施の形態に係る数値制御装置の構成を示すブロック図である。本発明の実施の形態に係る数値制御装置１は、少なくともＣＰＵ（中央制御装置）１０を中心として、ＣＰＵ１０に内部バス１８を介して接続したＲＯＭ１１、ＲＡＭ１２、１３、表示装置１４、入力装置１５、外部に備えたモータ（駆動装置）等の軸駆動部２１と通信可能に接続してある外部インタフェース１６、補助記憶装置１７等で構成されている。
【００３３】
ＣＰＵ１０は、内部バス１８を介して数値制御装置の上述したようなハードウェア各部と接続されており、上述したハードウェア各部を制御するとともに、ＲＯＭ１１に記憶されている処理プログラム、例えば工作機械の動作速度を条件に応じて数値制御する数値制御プログラム（以下、制御プログラム）を実行する。
【００３４】
ＲＯＭ１１は、不揮発性の記憶媒体であり、工作機械を制御する制御プログラムを記憶している。ＲＡＭ１２は、フラッシュメモリ等の不揮発性の記憶媒体であり、旋盤、マシニングセンタ等の工作機械の動作を数値制御し、工作物に対して加工を行う加工プログラム、及び加工プログラム、制御プログラム等の実行中に発生する一時的なデータを記憶する。また、加工プログラムの複製を記憶することもできる。加工プログラムは、通信手段（図示せず）を介して外部のコンピュータから、又はＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記憶媒体から補助記憶装置１７を介して取得することが可能である。
【００３５】
ＲＡＭ１３は、フラッシュメモリ等の不揮発性の記憶媒体であり、運転に用いる加工プログラムのプログラム番号、その時点で実行している命令を識別する識別情報、例えば命令番号等を記憶する。
【００３６】
表示装置１４は、ユーザへ画像を表示出力する液晶表示装置（ＬＣＤ）、表示ディスプレイ（ＣＲＴ）等の表示装置であり、運転中の加工プログラムの内容、実行している命令の内容、動作速度、干渉の有無、干渉の有無の確認動作モードであるか否か等を表示する。
【００３７】
入力装置１５は、加工プログラム及び制御プログラムの実行に必要な条件等の情報を入力するキーボード、タッチパネル等に加えて、加工プログラムの確認動作を行う確認動作モードのオンオフ制御を行うパネルスイッチ、ボタンスイッチ、回転スイッチ等も含む。外部インタフェース１６は、機器を移動、回転等する駆動源等へ、実行する加工プログラムに沿った指示信号を送出する。モータ（駆動装置）等の軸駆動部２１は、通信可能に接続してある外部インタフェース１６を介して、ＣＰＵ１０から加工プログラムに従った指示信号を受付ける。軸駆動部２１は、互いに直交するｘ軸、ｙ軸、ｚ軸方向の移動及び３軸回りの回転の駆動源となる。
【００３８】
補助記憶装置１７は、ＣＤ、ＤＶＤ等の可搬型記憶媒体４を用い、ＲＡＭ１２へ、ＣＰＵ１０が処理する加工プログラム、制御プログラム、データ等をダウンロードする。また、ＣＰＵ１０が処理したデータをバックアップすべく書き込むことも可能である。
【００３９】
以下、上述した構成の数値制御装置１で用いる加工プログラムに従って、工具とワークと、又は工具と冶具との干渉の有無を確認する場合の動作速度の調整方法について説明する。図２は、本発明の実施の形態に係る数値制御装置１のＣＰＵ１０の処理手順を示すフローチャートである。なお、本実施の形態では、加工プログラムの動作途上で確認動作モードへ切り替える場合について説明するが、特にこれに限定されるものではなく、加工プログラムの動作前にパラメータを用いて加工プログラムごとに指定しておいても良い。また、確認動作モードへの切り替えは、数値制御装置１の入力装置１５により行われる。例えばパネルスイッチ、プッシュボタン等によるモード切替であっても良いし、回転スイッチによるモード設定であっても良い。
【００４０】
数値制御装置１のＣＰＵ１０は、加工プログラムに含まれる命令ごとにＲＡＭ１３に記憶してある干渉の有無の判定結果を、前回の干渉有無の判結果として複写し、今回の干渉の有無の判定結果を記憶する領域を初期化する（ステップＳ２０１）。
【００４１】
ＣＰＵ１０は、加工プログラムが終了したか否かを判断し（ステップＳ２０２）、ＣＰＵ１０が、加工プログラムが終了したと判断した場合（ステップＳ２０２：ＹＥＳ）、処理を終了する。ＣＰＵ１０が、加工プログラムが終了していないと判断した場合（ステップＳ２０２：ＮＯ）、ＣＰＵ１０は、加工プログラムを構成する命令を１ブロックずつ順次ＲＡＭ１３に読込み（ステップＳ２０３）、確認動作モードであるか否かを判断する（ステップＳ２０４）。なお、ステップＳ２０４は第１の判断手段として機能する。
【００４２】
ＣＰＵ１０が、確認動作モードではないと判断した場合（ステップＳ２０４：ＮＯ）、ＣＰＵ１０は、読込んだ命令を加工プログラムの指示に沿って実行し（ステップＳ２０５）、ステップＳ２０２へ戻って上述した処理を繰り返す。
【００４３】
ＣＰＵ１０が、確認動作モードであると判断した場合（ステップＳ２０４：ＹＥＳ）、ＣＰＵ１０は、読込んだ命令について、加工プログラムで指定された速度よりも遅い動作速度で実行し（ステップＳ２０６）、干渉の有無を検出する（ステップＳ２０７）。なお、ステップＳ２０６は、速度設定手段及び駆動手段として機能する。
【００４４】
ＣＰＵ１０は、干渉が生じたか否かを判断し（ステップＳ２０８）、ＣＰＵ１０が、干渉が生じていないと判断した場合（ステップＳ２０８：ＮＯ）、ＣＰＵ１０は、ステップＳ２０２へ戻り、上述した処理を繰り返す。ＣＰＵ１０が、干渉が生じていると判断した場合（ステップＳ２０８：ＹＥＳ）、ＣＰＵ１０は、実行中の命令を停止し（ステップＳ２０９）、処理を終了する。なお、ステップＳ２０８は、第２の判断手段として、ステップＳ２０９は、停止手段として、それぞれ機能する。
【００４５】
ＣＰＵ１０による命令の動作確認処理は、ステップＳ２０６に示すように、読込んだ命令について、加工プログラムで指定された速度よりも遅い動作速度で実行することに限定されるものではない。図３は、本発明の実施の形態に係る数値制御装置１のＣＰＵ１０の一の動作確認処理のフローチャートである。
【００４６】
図３に示す動作確認処理では、空間を互いに直交するｘ軸、ｙ軸、ｚ軸方向に適当な間隔で分割し、分割したエリアにエリア番号を付し、エリア番号に対応付けて、干渉の有無を判定したか否か及び判定結果をＲＡＭ１３に判定結果テーブル１３１として記憶しておく。エリアの照会は、命令ごとの工具先端部の移動終点の座標値により行う。
【００４７】
図４は、判定結果テーブル１３１の一例を示す図である。判定結果テーブル１３１は、エリア番号ごとに今回の判定結果と前回の判定結果とを記憶してある。判定結果は、‘１’が干渉あり、‘２’が干渉なし、‘０’が未確認を、それぞれ示している。
【００４８】
ＣＰＵ１０は、読込んだ命令による移動終点位置を算出し（ステップＳ３０１）、算出した移動終点位置を含むエリア番号を特定する（ステップＳ３０２）。ＣＰＵ１０は、ＲＡＭ１３の判定結果テーブル１３１を照会して（ステップＳ３０３）、前回の判定結果が‘２’であるか否かを判断する（ステップＳ３０４）。なお、ステップＳ３０１は、第１の座標値算出手段として、ステップＳ３０３は、判断結果抽出手段として、ステップＳ３０４は、第４の判断手段として、それぞれ機能する。
【００４９】
ＣＰＵ１０が、前回の判定結果が‘２’であると判断した場合（ステップＳ３０４：ＹＥＳ）、ＣＰＵ１０は、干渉のおそれがほとんどないものと判断し、工具の移動速度を‘３’に設定する（ステップＳ３０５）。ここで、工具の移動速度は、‘３’が加工プログラムで指定した移動速度よりも速い速度又は同等の速度を、‘２’が指定した移動速度より遅い速度で‘１’の場合より速い速度を、‘１’が指定した移動速度より遅い速度を、それぞれ示している。
【００５０】
ＣＰＵ１０が、前回の判定結果が‘２’ではないと判断した場合（ステップＳ３０４：ＮＯ）、ＣＰＵ１０は、今回の判定結果が‘２’であるか否かを判断する。ＣＰＵ１０が、今回の判定結果が‘２’であると判断した場合（ステップＳ３０６：ＹＥＳ）、ＣＰＵ１０は、干渉のおそれが少ないものと判断し、工具の移動速度を‘２’に設定する（ステップＳ３０７）。
【００５１】
ＣＰＵ１０が、今回の判定結果が‘２’ではないと判断した場合（ステップＳ３０６：ＮＯ）、ＣＰＵ１０は、干渉の可能性が高いものと判断し、工具の移動速度を‘１’に設定する（ステップＳ３０８）。ＣＰＵ１０は、設定された移動速度で命令を実行し（ステップＳ３０９）、干渉が有るか否かを判断する（ステップＳ３１０）。
【００５２】
ＣＰＵ１０が、干渉がないと判断した場合（ステップＳ３１０：ＮＯ）、ＣＰＵ１０は、判定結果テーブル１３１の今回の判定結果を‘２’に更新し（ステップＳ３１１）、ステップＳ２０２へ戻る。ＣＰＵ１０が、干渉が有ると判断した場合（ステップＳ３１０：ＹＥＳ）、ＣＰＵ１０は、判定結果テーブル１３１の今回の判定結果を‘１’に更新し（ステップＳ３１２）、ステップＳ２０９へ戻り、実行中の命令を停止する（ステップＳ２０９）。
【００５３】
なお、判定結果テーブル１３１は、命令ごとの工具先端部の移動終点の座標値により定まるエリア番号をキー情報として照会する方法に限定されるものではなく、例えば命令ごとの工具先端部の移動始点及び移動終点の座標値に基づいて照会する方法であっても良い。図５は、工具先端部の移動始点及び移動終点の座標値に基づいて照会する場合の判定結果テーブル１３１の一例を示す図である。このように、移動始点及び移動終点に基づいて前回の判定結果を取得する方法では、移動終点位置に基づいてエリアを特定する特定処理を省くことができ、ＣＰＵ１０の演算処理負荷を小さくすることが可能となる。
【００５４】
また、命令が更新されているか否かに基づいて命令の動作確認処理を実行しても良い。図６は、本発明の実施の形態に係る数値制御装置１のＣＰＵ１０の他の動作確認処理のフローチャートである。
【００５５】
図６に示す動作確認処理では、前回の動作確認処理に用いた加工プログラムそのものをＲＡＭ１２に複写しておき、１ブロックずつ命令を読込む都度、読込んだ加工プログラムと複写してある加工プログラムとを対比することにより、読込んだ命令が更新されているか否かを判断する。命令が更新されていない場合、前回の判定結果を信頼することができることから、動作速度を遅くする必要がないと判断することができるのに対し、更新されている場合、前回の判定結果を信頼することができないものと判断し、条件に応じて動作速度を調整する。
【００５６】
図７は、判定結果テーブル１３１の他の例を示す図である。判定結果テーブル１３１は、複写した加工プログラムの命令ごとに今回の判定結果と前回の判定結果とを記憶してある。判定結果は、‘１’が干渉あり、‘２’が干渉なし、‘０’が未確認を、それぞれ示している。
【００５７】
数値制御装置１のＣＰＵ１０は、読込んだ命令を特定する情報、例えば行番号を抽出し（ステップＳ６０１）、抽出した命令を特定する情報に基づいて、ＲＡＭ１２に複写して記憶してある加工プログラムの命令を特定する（ステップＳ６０２）。ＣＰＵ１０は、読込んだ命令と、複写して記憶してある加工プログラム中で特定された命令とが一致するか否かを判断する（ステップＳ６０３）。なお、ステップＳ６０１は、命令特定情報抽出手段として、ステップＳ６０２は、命令抽出手段として、ステップＳ６０３は、第５の判断手段として、それぞれ機能する。
【００５８】
ＣＰＵ１０が、両命令が一致しないと判断した場合（ステップＳ６０３：ＮＯ）、ＣＰＵ１０は、ＲＡＭ１３の判定結果テーブル１３１を照会して（ステップＳ６０４）、前回の判定結果が‘１’であるか否かを判断する（ステップＳ６０５）。
【００５９】
ＣＰＵ１０が、前回の判定結果が‘１’ではないと判断した場合（ステップＳ６０５：ＮＯ）、ＣＰＵ１０は、命令が更新されていることから最初の動作確認処理と同様であると判断し、工具の移動速度を‘１’に設定する（ステップＳ６０６）。ここで、工具の移動速度は、‘３’が加工プログラムで指定した移動速度よりも速い速度を、‘２’が指定した移動速度と同等の速度を、‘１’が指定した移動速度より遅い速度を、それぞれ示している。
【００６０】
ＣＰＵ１０が、前回の判定結果が‘１’であると判断した場合（ステップＳ６０５：ＹＥＳ）、ＣＰＵ１０は、命令が更新されていることから何らかの修正が施されているものと判断し、工具の移動速度を加工プログラムの設定と同じ‘２’に設定する（ステップＳ６０７）。
【００６１】
ＣＰＵ１０が、両命令が一致すると判断した場合（ステップＳ６０３：ＹＥＳ）、ＣＰＵ１０は、ＲＡＭ１３の判定結果テーブル１３１を照会して（ステップＳ６０８）、前回の判定結果が‘２’であるか否かを判断する（ステップＳ６０９）。ＣＰＵ１０が、前回の判定結果が‘２’ではないと判断した場合（ステップＳ６０９：ＮＯ）、ＣＰＵ１０は、干渉の可能性が高いものと判断し、工具の移動速度を‘１’に設定する（ステップＳ６１０）。ＣＰＵ１０が、前回の判定結果が‘２’であると判断した場合（ステップＳ６０９：ＹＥＳ）、ＣＰＵ１０は、干渉の可能性がほとんどないものと判断し、工具の移動速度を‘３’に設定する（ステップＳ６１１）。
【００６２】
ＣＰＵ１０は、設定された移動速度で命令を実行し（ステップＳ６１２）、干渉が有るか否かを判断する（ステップＳ６１３）。ＣＰＵ１０が、干渉がないと判断した場合（ステップＳ６１３：ＮＯ）、ＣＰＵ１０は、判定結果テーブル１３１の今回の判定結果を‘２’に更新し（ステップＳ６１４）、ステップＳ２０２へ戻る。ＣＰＵ１０が、干渉が有ると判断した場合（ステップＳ６１３：ＹＥＳ）、ＣＰＵ１０は、判定結果テーブル１３１の今回の判定結果を‘１’に更新し（ステップＳ６１５）、ステップＳ２０９へ戻り、実行中の命令を停止する（ステップＳ２０９）。
【００６３】
なお、実行中の命令を停止する場合、数値制御装置１のＣＰＵ１０は、スピーカ等の音声出力装置（図示せず）に対して警告音の出力を支持する信号を送出しても良いし、表示装置１４を介して警告表示しても良い。
【００６４】
また、確認動作中の干渉の有無の検出方法は、特に限定されるものではない。例えば、干渉が有る場合に生じる軸駆動部２１へ供給される電流値の変動を検出することにより、干渉が生じていることを検出する。図８は、本発明の実施の形態に係る数値制御装置１のＣＰＵ１０の、軸駆動部２１へ供給される電流値に基づく干渉の有無の判断処理のフローチャートである。
【００６５】
数値制御装置１のＣＰＵ１０は、軸駆動部へ供給される電流値を一定時間間隔で検出する（ステップＳ８０１）。ＣＰＵ１０は、確認動作モードであるか否かを判断する（ステップＳ８０２）。なお、ステップＳ８０１は、電流値検出手段として機能する。
【００６６】
ＣＰＵ１０が、確認動作モードではないと判断した場合（ステップＳ８０２：ＮＯ）、ＣＰＵ１０は、異常な電流値を検出している時間を計時する電流検出タイマを０（ゼロ）に初期化し（ステップＳ８０３）、干渉無しである旨を示す信号を送出する（ステップＳ８０４）。
【００６７】
ＣＰＵ１０が、確認動作モードであると判断した場合（ステップＳ８０２：ＹＥＳ）、ＣＰＵ１０は、検出した電流値が所定の上限値を超えているか否かを判断する（ステップＳ８０５）。ＣＰＵ１０が、検出した電流値が所定の上限値を超えていないと判断した場合（ステップＳ８０５：ＮＯ）、ＣＰＵ１０はステップＳ８０３へ処理を移行する。なお、ステップＳ８０５は、第３の判断手段として機能する。
【００６８】
ＣＰＵ１０が、検出した電流値が所定の上限値を超えていると判断した場合（ステップＳ８０５：ＹＥＳ）、ＣＰＵ１０は、異常な電流値を検出したものと判断し、電流検知タイマによる計時を開始する（ステップＳ８０６）。ＣＰＵ１０は、電流検知タイマで計時した計時時間が、所定の時間より大きいか否かを判断する（ステップＳ８０７）。
【００６９】
ＣＰＵ１０が、電流検知タイマで計時した計時時間が所定の時間以下であると判断した場合（ステップＳ８０７：ＮＯ）、ＣＰＵ１０はステップＳ８０４へ処理を移行する。ＣＰＵ１０が、電流検知タイマで計時した計時時間が所定の時間より大きいと判断した場合（ステップＳ８０７：ＹＥＳ）、ＣＰＵ１０は、干渉有りである旨を示す信号を送出する（ステップＳ８０８）。
【００７０】
以上のように本実施の形態によれば、干渉の有無等の確認動作中は、軸駆動部２１の動作速度を遅くすることができ、軸駆動部２１の動作により干渉が生じるか否かを正確に判断し、干渉が生じる場合には軸駆動部２１の動作を停止することができることから、軸駆動部２１の動作による工具、冶具、ワーク等の損傷を未然に防止することができ、加工プログラムによる軸駆動部２１の動作が正常であるか否かを確認することが可能となる。
【００７１】
また、前回の確認動作で干渉が無いと判断された命令については、確認動作を行う場合に干渉により工具、冶具、ワーク等が損傷するおそれが無い命令であることから、動作速度を速めることにより、確認動作処理に要する時間を短縮することが可能となる。
【００７２】
なお、命令ごとに動作中の干渉の有無を判断する場合、軸駆動部２１に備えた工具を、ツールを装着することなく加工プログラムの命令に従って動作させることが好ましい。これにより、例えば穴あけ加工が有り、干渉が生じる場合であっても、冶具に穴を開けることがなく、無用な損傷を未然に回避することが可能となる。
【００７３】
また、本発明は上述した実施の形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲で種々の形態で実施することができる。
【図面の簡単な説明】
【００７４】
【図１】本発明の実施の形態に係る数値制御装置の構成を示すブロック図である。
【図２】本発明の実施の形態に係る数値制御装置のＣＰＵの処理手順を示すフローチャートである。
【図３】本発明の実施の形態に係る数値制御装置のＣＰＵの一の動作確認処理のフローチャートである。
【図４】判定結果テーブルの一例を示す図である。
【図５】工具先端部の移動始点及び移動終点の座標値に基づいて照会する場合の判定結果テーブルの一例を示す図である。
【図６】本発明の実施の形態に係る数値制御装置のＣＰＵの他の動作確認処理のフローチャートである。
【図７】判定結果テーブルの他の例を示す図である。
【図８】本発明の実施の形態に係る数値制御装置のＣＰＵの、軸駆動部へ供給される電流値に基づく干渉の有無の判断処理のフローチャートである。
【符号の説明】
【００７５】
４  可搬型記憶媒体
１０  ＣＰＵ
１１  ＲＯＭ
１２、１３  ＲＡＭ
１４  表示装置
１５  入力装置
１６  外部インタフェース
１７  補助記憶装置
２１  軸駆動部
【図１】
2006260104.tif 000003
【図２】
2006260104.tif 000004
【図３】
2006260104.tif 000005
【図４】
2006260104.tif 000006
【図５】
2006260104.tif 000007
【図６】
2006260104.tif 000008
【図７】
2006260104.tif 000009
【図８】
2006260104.tif 000010