【手続補正書】
【提出日】平成17年3月11日(2005.3.11)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】発明の名称
【補正方法】変更
【補正の内容】
【発明の名称】数値制御工作機械と数値制御工作機械のデータ変換方法
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
数値制御工作機械にロードされたＮＣプログラムの加工テストを行うテスト手段と、該テスト手段による加工テストの結果に基づき修正情報を入力する修正情報入力手段と、該修正情報に基づいて前記ＮＣプログラムを修正する修正手段と、該修正手段により修正が施されたＮＣプログラムの所定箇所を電子カムデータに変換する電子カムデータ化手段と、前記電子カムデータと前記ＮＣプログラムとよりハイブリッドデータを作成するハイブリッドデータ作成手段とを備えることを特徴とする数値制御工作機械。
【請求項２】
前記電子カムデータ化手段は予め前記ＮＣプログラムに規定された変換開始行と変換終了行に基づいて前記所定箇所を電子カムデータ化することを特徴とする請求項１に記載の数値制御工作機械。
【請求項３】
前記所定箇所に電子カムデータ化が不可能であるものが含まれているか否かを判定する電子カムデータ化可否判定手段が更に備えられており、前記電子カムデータ化手段は該判定手段の判定結果に従い電子カムデータ化を行うようにしていることを特徴とする請求項２に記載の数値制御工作機械。
【請求項４】
数値制御工作機械にロードされたＮＣプログラムを変換する数値制御工作機械のデータ変換方法であって、前記ロードされたＮＣプログラムの加工テストを実行し、該加工テストの結果に基づき修正情報を入力し、該修正情報に基づいて前記ＮＣプログラムを修正し、修正が施された前記ＮＣプログラムの所定箇所を電子カムデータに変換し、前記電子カムデータと前記ＮＣプログラムとよりハイブリッドデータを作成することを特徴とする数値制御工作機械のデータ変換方法。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
この発明は、数値制御工作機械と数値制御工作機械のデータ変換方法に係り、更に詳しくは、工具あるいは主軸を移動させるべく記憶されるＮＣプログラムが、目的の加工をより効率よく、あるいは精度良く行えるように、機上で効率よくプログラムの修正を行えるようにした数値制御工作機械と数値制御工作機械のデータ変換方法に関する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００３
【補正方法】変更
【補正の内容】
【０００３】
【課題を解決するための手段】
本発明に係る数値制御工作機械は、数値制御工作機械にロードされたＮＣプログラムの加工テストを行うテスト手段と、該テスト手段による加工テストの結果に基づき修正情報を入力する修正情報入力手段と、該修正情報に基づいて前記ＮＣプログラムを修正する修正手段と、該修正手段により修正が施されたＮＣプログラムの所定箇所を電子カムデータに変換する電子カムデータ化手段と、前記電子カムデータと前記ＮＣプログラムとよりハイブリッドデータを作成するハイブリッドデータ作成手段とを備えることを特徴とする。これにより、従前からのように、ＮＣプログラムの機上における修正作業と同様に修正作業が容易に行えるようにしている一方で、ＮＣプログラムを適宜部分的に電子カムデータに変換し、電子カムデータを利用して数値制御工作機械を動作させるので、電子カムデータを利用した短時間かつ高精度の加工が必要な箇所は適切に加工する事が可能である。このように出来たことによって、電子カムデータの修正は、数値制御工作機械とは別個に設置されているパーソナルコンピュータ上のＣＡＭソフトで行う必要はないので、プログラムの修正を行う毎に、数値制御工作機械とパーソナルコンピュータとの間を作業者が往来する必要もない。更に、又、プログラムデータそのものをメディアに記録し直して両者の間を移動させるあるいは、ネットワークでつないでいるのであればデータ転送を行う等も必要なく、プログラムの修正作業を効率よく行うことが可能になる。
更に、上述のように、ＮＣプログラムと電子カムデータとを適切に使い分けての加工が可能になるので、加工部品の加工効率、加工精度等も改善出来る。ＮＣプログラムの部分を変換させるものとしたので、過去のＮＣプログラム資産を有効に活用できる。
尚、ＮＣプログラムの一部を変換する考え方を採用した理由は、数値制御装置自体の変更を小幅にとどめることが出来るメリットもあるためである。一般に、電子カムデータによる加工を行うときに、主軸の累積回転角に対しての軸位置というだけでは表現できない加工や補機機能が多数存在し、ＮＣプログラムの全部を電子カムデータに変更するというわけには行かない。もし、そのようにするとしたら、ＮＣ装置そのものに非常に多くの改編を加えなくてはならず、好ましくない。そのような背景の中では、電子カムデータ化した方が好ましい機能を数値制御装置がサポートできるように、機能を取捨選択し、その対応部分が電子カムデータ化される方が性能向上と開発コストのバランスをとる上で好ましい。
又、更に、前記電子カムデータ化手段は予め前記ＮＣプログラムに規定された変換開始行と変換終了行に基づいて前記所定箇所を電子カムデータ化することを特徴とする。これにより、電子カムデータへの変換範囲を適切に指定出来る。
又、更に、前記所定箇所に電子カムデータ化が不可能であるものが含まれているか否かを判定する電子カムデータ化可否判定手段が更に備えられており、前記電子カムデータ化手段は該判定手段の判定結果に従い電子カムデータ化を行うようにしていることを特徴とする。これによって、適切にＮＣプログラムが電子カムデータ化される。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】変更
【補正の内容】
【００１９】
ＮＣ部用ＲＡＭ５６は、中央演算ユニット５２における各種演算の結果を読み出し可能に一時的に記憶するように構成されている。このＮＣ部用ＲＡＭ５６は、工作機械１が、ＮＣプログラム（機械稼働用プログラム）に基づいて実際の加工動作を行う時に必要とされるＮＣプログラムを含むデータの全てを格納している。その一部に、第１のチャンネル加工手順記憶部５６ａと、第２のチャンネル加工手順記憶部５６ｂと、第３のチャンネル加工手順記憶部５６ｃ、電子カムデータテーブル５６ｄとが設けられている。尚、該データテーブルは、所謂電子カム制御を行うために備えられるものである。電子カム制御とは、特開２００１−１７０８４３に示されるように、基準軸に取りつけられたパルスエンコーダが出力するパルス信号により時々刻々の回転位置データと、基準軸の単位回転位置ごとに対応してそれぞれ設定された移動軸の指令位置データとから時々刻々の移動軸の指令データを生成し、この移動指令データと回転位置データとから回転物の回転速度に同期する移動軸の指令速度データを生成して、生成した移動指令データと指令速度データに基づいて工具の位置を制御することである。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】変更
【補正の内容】
【００２０】
ここで、第１のチャンネル加工手順記憶部５６ａと、第２のチャンネル加工手順記憶部５６ｂと、第３のチャンネル加工手順記憶部５６ｃに記憶されたＮＣプログラムにより、実際に作動させられる部分を図２に示す。第１のチャンネル加工手順記憶部５６ａに記憶されたＮＣプログラムにより、主軸回転用モータ１１、被加工物送り用モータ３１（不図示）、工具送りモータ２１（不図示）が制御される。これによって、主軸Ｓ１は、矢印で示すＺ１軸方向に移動制御されると共にＣ１回転方向に主軸回転が制御される。一方、工具ＴＳ１は、矢印で示すＸ１軸、Ｙ軸方向に移動制御される。チャンネル１では、主軸台の移動制御、回転制御又は、工具ＴＳ１を支持する刃物台の各矢印方向の移動制御、工具ＴＳ１の中に回転工具が含まれていて、その制御が必要であるものの場合は回転等の制御を行う。第２のチャンネル加工手順記憶部５６ｂに記憶されたＮＣプログラムにより、背面主軸回転モータ６１、背面主軸移動用モータ４１（不図示）、工具ＴＳ２の回転が制御される。これによって、背面主軸Ｓ２は、矢印で示すＺ２軸方向、Ｘ２軸方向に移動制御されると共にＣ２回転方向に背面主軸回転が制御される。一方工具ＴＳ２そのものは、固定刃物台に設置されるものであって、バイトなどの非可動のものあるいは、ドリルなどの回転可能なものを取りつけ可能としているものである。ドリルなどの回転可能なものを使う場合には、第２のチャンネル加工手順記憶部５６ｂに記憶されたＮＣプログラムにより、回転が制御される。第３のチャンネル加工手順記憶部５６ｃに記憶されたＮＣプログラムにより、工具送りモータ２１（不図示）が制御される。これによって、工具ＴＳ３は、矢印で示すＸ３，Ｙ３，Ｚ３軸方向に移動制御される。チャンネル３では、この工具ＴＳ３を支持する刃物台の移動制御あるいは、保持される工具の制御が必要な場合に回転等の制御を行う。尚、この実施の形態では、工具ＴＳ３は、チャンネル３に、ＴＳ２はチャンネル２に、ＴＳ１はチャンネル１に割り付けられているが、ＴＳ１あるいはＴＳ３は、どのチャンネルで制御しても良く、必要に応じて適宜工具のチャンネル割り当ては変更できる。同様に主軸、背面主軸もチャンネル割り当ては動的に変更できる。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
時間計測モジュールは、ＮＣプログラムから、工具の座標値や、工具の送り速度や、主軸の回転速度、移動方法等を取得する。これらの情報を使用して、工具の移動距離、各座標での移動速度を算出し工具の移動軌跡を求める。前記工具の移動軌跡から、前記各モータの加速度を使用して移動時間を求める。ＮＣプログラムに記載されている工具の座標値には、工具又はワークの位置に関する補正情報が含まれていない。そのため、工具の移動距離算出持に、ＮＣプログラム上では記載されていない工具又はワークの位置に関する補正情報を加えて計算を行う。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
次に、ＳｔｅｐＡ１において、ＳｔｅｐＡにて測定された時間データを、以降のＳｔｅｐでの処理に備えて読み込みを行う。ＳｔｅｐＢでは、ＮＣプログラム記憶部５８ｄに対して最適データ変換を行いたいＮＣプログラムを格納するべく、ＮＣプログラムファイルの読み込みを行う。ここでの読み込みを行うことにより、実際に加工を行う為のＮＣプログラムを作成する元になるプログラムを保持する。つまり、オリジナルを保持することにより、変更をＮＣプログラム上で検討できるようにする。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００３１
【補正方法】変更
【補正の内容】
【００３１】
ＳｔｅｐＧでは、機械稼働用のプログラムファイルの作成を行うと共に、ＮＣプログラム記憶部５８ｄ、電子カムデータ記憶テーブル５８ｂに記憶されているデータのそれぞれを、第１，２，３チャンネル加工手順記憶部５６ａ、５６ｂ、５６ｃに振り分けて記憶させる一方、電子カムデータテーブル５６ｄに転送する。尚、これらの一連の処理は、数値制御部５１の操作パネル（不図示）に設けられるトランスフォーマボタン５９によって起動する。これは、物理的な接点操作を伴うスイッチであっても良いし、モニターをタッチパネルタイプのものとして画面を指先で操作するものでも良い。更に、ネットワークコンピュータに数値制御部がネットワークを介して接続されるものである場合には、ネットワークコンピュータから指令される入力を判断して処理を起動させるものとしても良い。更に、上記ＳｔｅｐＣからＧのそれぞれの処理について詳述する。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００３７
【補正方法】変更
【補正の内容】
【００３７】
１．２．同期加工の電子カムデータに変換する箇所の検索の説明
ここで、図５のＳｔｅｐ２に示される同期加工における電子カムデータへの変換可能箇所を検索する処理に関して、図６を用いて更に詳細に説明する。まず、メインとなる処理の流れから説明する。検索処理の開始後に、Ｓｔｅｐ１において現在記憶されている行番号Ｂ、カレントチャンネルＣＨを読み込み、検索対象箇所を指定する。Ｓｔｅｐ２では、カレントチャンネルＣＨにおいて、行番号Ｂ＋１行以降での最初のタイミング指令行Tを検索し記憶する処理を行う（タイミング指令行Ｔは、ＮＣプログラムの作成段階で、プログラマーが同期加工を行いたい位置に対して、他のチャンネルの同期させたい箇所に同一のタイミングコードを記述することで、同期加工を行うようにさせるためのコマンドを含む行である。コマンドの具体的な記述としては、例えば「ｔiｍｉｎｇ＝１」などのように記述し、同一タイミング番号のもの同士を同期させる。）。Ｓｔｅｐ３では、Ｓｔｅｐ２においてタイミング指令行Ｔの取得に成功したか否かの判定を行う。成功した場合には、そのままＳｔｅｐ４に行き、タイミング指令行Ｔを挟む前後の待ち合わせ行Ａ、Ｂを検索し記憶する。そこで更に、Ｓｔｅｐ５において、行番号Ａ，Ｂ間は同期加工中であるか否かについての判定を行う。この判定を行うことによりプログラマーが誤ってタイミング指令行Ｔを記述した場合であっても、誤って行Ａ，Ｂ間が電子カムデータ化されることが防がれる。Ｓｔｅｐ５での判定がＮになった場合、つまり、同期加工中ではない場合又はプログラマーにより誤ってタイミング指令行Ｔが記述されていた場合には、行番号Ｂ＋１以降のブロックに対して、Ｓｔｅｐ２以降の処理を行うべく、Ｓｔｅｐ２に処理を戻している。判定が同期加工中を示すＹであった場合には、更に、Ｓｔｅｐ６にて記憶された行番号Ａ，Ｂの区間に電子カムデータに変換出来ないものがあるか否かについて判定する。この電子カムデータに変換できないものとは、具体的には、主軸の回転数変化を行わせる指令、潤滑液の噴射命令などの補機動作を行わせる所謂Ｍコードなどの指令である。電子カムデータに変換出来ないものが無い、つまり判定がＮである場合には、続いて、Ｓｔｅｐ７において、現在カレントチャンネルＣＨを解析中であるか否かについて判定を行う。ここでの判定がＹである場合には、そのままＳｔｅｐ８に進み、カレントチャンネルＣＨでのタイミング指令行Ｔを挟む待ち合わせ処理行Ａ，Ｂに対応した他のチャンネルのタイミング指令行Ｔを挟む待ち合わせ処理行Ａ，Ｂを全て検索し存在すれば記憶する。次に、Ｓｔｅｐ９において同じタイミングコードが一つも存在しないか否かについての判定を行う。Ｎの判定、つまり同じタイミングコードが一つ以上存在する場合には、カレントチャンネルＣＨ以外の行Ａ，ＢのブロックにＳｔｅｐ６以降の処理を繰り返す。この処理の場合、カレントチャンネルＣＨの行Ａ，Ｂを対象にした処理ではないので、Ｓｔｅｐ７における判定は、必ずＮになり、Ｓｔｅｐ１０へと処理が進む。Ｓｔｅｐ１０では、電子カムデータ化すべき加工を行う箇所が存在したことを意味する存在フラグをＯＮにし、同時に、Ｓｔｅｐ６をＮの判定でかつＳｔｅｐ７をＹの判定で抜けた行Ａ，Ｂを記憶する。この後Ｓｔｅｐ１０���記憶された行Ａ，Ｂが最後のＡ，Ｂであるか否かの判定を行う。Ｙの判定がされた場合には、Ｓｔｅｐ１２に進み、存在フラグＯＮ、カレントチャンネルＣＨ、Ｓｔｅｐ１０で記憶された全ての行番号Ａ，Ｂを記憶する。これらの値は最終的に、同期加工の電子カムデータ化処理に渡される。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００３９
【補正方法】変更
【補正の内容】
【００３９】
繰り返しになるが、上述しているタイミングコードとは、タイミング指令行Ｔに単独で記述されるコマンドであり、Ｍコード、Ｇコードなどの他のコマンドと併記されない。他のチャンネルの同期させたい箇所に同一のタイミングコードを記述することで、同期加工を行うようにさせるためのコマンドである。具体的な記述としては、例えば「tiｍｉｎｇ＝１」などのように記述し、同一タイミング番号のもの同士を同期させる。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００４２
【補正方法】変更
【補正の内容】
【００４２】
２．１．ＳｔｅｐＤの処理の説明
次に、図４ＳｔｅｐＤに示される同期以外の電子データに変換する箇所の電子データ化への処理について、説明する。この処理におけるメインのルーチンは、図８の通りである。処理が開始すると、まず、Ｓｔｅｐ１において、検索する対象を規定する行番号Ａ＝０、Ｂ＝０、チャンネルＣＨ＝１にイニシャライズを行う。次に、Ｓｔｅｐ２において、同期加工以外の電子カムデータに変換する箇所を検索する処理を実行する。この処理において、電子カムデータに変換すべき箇所が見つけられたか否かを判定するべくＳｔｅｐ３を実行する。Ｓｔｅｐ３の判定がＹとなった場合、つまり、変換すべき箇所が存在した場合には、Ｓｔｅｐ４に進んで変換対象としてラベリング（後述する）された行Ａ，Ｂを取得する。次に、そのままＳｔｅｐ５に進み行Ａ，Ｂの間に記述される同期加工以外の加工を指令する箇所の電子カムデータ化の処理を行う。処理終了後には、処理が完了した行番号Ｂを戻り値としてＳｔｅｐ２以降を繰り返す。一方、Ｓｔｅｐ３の判定がＮとなった場合、つまり、変換すべき箇所が存在しない場合には、Ｓｔｅｐ６に進みチャンネルＣＨをインクリメントし、次のチャンネルが検索されるように備える。Ｓｔｅｐ７に進んだら、ＣＨ＝４となったか否かを判定し、Ｙと判定された場合、つまり、全てのチャンネルＣＨのＮＣプログラムに対する処理が完了した場合には、処理を終了し、図４のメインルーチンに処理を戻す。Ｎの判定であった場合には、Ｓｔｅｐ８に進み行番号Ｂ＝０を代入して、改めて次チャンネルＣＨのＮＣプログラムに対しての処理を、Ｓｔｅｐ２以降から繰り返す。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００４４
【補正方法】変更
【補正の内容】
【００４４】
更に、Ｓｔｅｐ５に進んで取得した行番号Ａ，Ｂの区間に電子カムデータに変換できないものがあるか否かの判定を行う。ここでの判定がＮ、つまり電子カムデータに変換不可なものはないの判定であった場合には、Ｓｔｅｐ６に進んで存在するを戻り値として処理を終了する。一方、判定がＹ、つまり電子カムデータに変換できないものありの判定であった場合には、Ｓｔｅｐ８に進みログファイル出力用にエラーフラグのセットを行う一方、処理が完了したところまでのＳｔｅｐ４で取得した行番号Ｂを戻り値としてＳｔｅｐ２以降を繰り返し実行すべく、処理をＳｔｅｐ２に戻す。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００５８
【補正方法】変更
【補正の内容】
【００５８】
次にＳｔｅｐ３に進むと、待ち合わせ行番号Ａ，Ｂ，Ｃの取得が成功したか否かの判定を行う。判定がＮ、つまり、取得できなかった場合には、これ以降の処理は必要がないので、そのままリターンされて、図４のメインフローに処理が復帰する。一方、判定がＹであった場合には、Ｓｔｅｐ４に進み、待ち合せコードが有効なコードであるか否かを判定する。判定がＹである、つまり、工具選択指令行を動かしても良いと判定された場合には、そのままＳｔｅｐ５に進む。ここで、有効なコードとは、他チャンネルとの連携を持たない待ち合わせを意味する。Ｓｔｅｐ４は、工具選択指令行を移動させるにあたり、待ち合わせ処理が、他のチャンネルとの連携を持つ待ち合わせであるかを判定し、連携がある場合に工具選択指令行が移動されないようにするための判定である。ここで言う連携があるとは、例えば、チャンネル１がチャンネル３側の工具を使用したい場合に、両チャンネルが一時加工を停止している状態を作り、其の後にＮＣコードで指定されている動作を他チャンネルの工具にさせる時などである。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】００６９
【補正方法】変更
【補正の内容】
【００６９】
更に、Ｓｔｅｐ７に進んで、ＣＨ＝４になったか否かについて判定する。ＣＨ＝４ではない場合には、Ｓｔｅｐ８に進み、行Ａ，Ｂ、工具選択指令行Ｔをイニシャライズし、Ｓｔｅｐ２以降を繰り返す。又、ＣＨ＝４であった場合には、全部のチャンネルのＮＣプログラムの検索が終了したので、図４のメインフローに処理が復帰する。
【手続補正１６】
【補正対象書類名】明細書
【補正対象項目名】００７５
【補正方法】変更
【補正の内容】
【００７５】
一方、更に、具体的には、上記Ｓｔｅｐ５において、工具の選択動作を加工終了に伴う退避の動作速度は速くし、工具の選択位置までへの移動などはゆっくりするように、動作毎で工具選択動作の速度を変更すると更に良い。これは、退避動作のみを従来と同様にしておくことにより、工具が他工具や被加工物などと干渉する危険をＮＣコード等によって指令される工具選択動作と同じ程度までに軽減するためである。以上の実施例の中では、数値制御工作機械における数値制御部に記憶されるプログラムファイルを一旦編集して、その後、ＮＣ部用ＲＡＭ５６に記憶させるようにしたが、ＮＣ部用ＲＡＭ５６からＣＰＵがＮＣプログラムを読み出す段階において、読み出しと同時に上述した処理を実行してもよい。この場合は、ＮＣプログラムを適宜先読みして解釈を行い上述の処理を行った上で数値制御工作機械を動作させると良い。更に、図１７を用いて、本発明を具現化するシステムの一連の操作を説明する。まず、機外パソコンにインストールされたＣＡＭソフトに対して、図面情報ファイルから図面情報を呼び出す操作を行う。図面情報が表示された画面上から、加工パス、加工工程、工具情報、ツーリング情報、加工指示等の入力を行う。上述したタイミング指令コード「ｔｉｍｉｎｇ＝１」、ラベル「ＤＲＩＬＬＩＮＧ  ＳＴＡＲＴ」、「ＤＲＩＬＬＩＮＧ  ＥＮＤ」などは、基本的にはこの段階で入力される。タイミング指令コードは、作業者が画面を見て、画面のある部分を複数の工具で同時に加工する場合に、その複数の工具同士を同期させたいと判断した場合に、それらの工具を選択してタイミング指令コードを入力する。又、ラベルは、画面において、ドリルやタップなどの所定の工具を選んだ場合にＣＡＭソフトがそれらが選択されたことを判断して作成されるＮＣプログラムに自動で記述される。尚、これによって作成されたＮＣプログラム自体を編集する機能はＣＡＭソフトに当然備えられるもので、その編集機能を利用して直接ラベルを入力するあるいは削除するようにすることも可能である。ここで出来上がったＮＣプログラムを利用して３次元バーチャルシュミレーションを行う。これを行うことによって、工程の確認、工具同士の干渉あるいは工具と機体の干渉チェック、それぞれの工程の時間計測を行う。ここまでの確認がすんだならば、パソコンから数値制御工作機械に向けてＮＣプログラムをネットワークを介して転送する。転送されたＮＣプログラムは機上において一旦加工テストを行う。ＮＣプログラムの修正を行う情報を得るためである。加工の結果に基づきＮＣプログラムの修正情報を数値制御装置に入力する。その後、トランスフォーマボタン５９が押されて、ハイブリッドデータの作成が指令されると、最適データ変換プログラムは、この入力値を参照すると共に、機械固有の情報を参照する。ハイブリッドデータの生成が数値制御装置の画面に確認されたら、図面通りの所望の加工部品が作成されることを確認し、量産に入る。