(57)【特許請求の範囲】
【請求項１】
工具及びワークを相対移動させる送り機構を制御する工作機械の制御装置であって、
ＮＣプログラムを記憶するプログラム記憶部と、
ＮＣプログラムを構成するコードに関するパラメータを記憶するパラメータ記憶部と、
前記プログラム記憶部に格納されたＮＣプログラムをブロック毎に順次解析して、前記送り機構に関する動作指令を抽出するプログラム解析部と、
前記プログラム解析部によって順次抽出される動作指令と、前記パラメータ記憶部に格納されたパラメータとを基に、該動作指令を実行して前記送り機構を制御する実行制御部と、
前記プログラム記憶部に格納されたＮＣプログラム、及び前記パラメータ記憶部に格納されたパラメータの内の少なくとも一方を変更するデータ変更部とを備えた工作機械の制御装置において、
前記データ変更部によって変更された変更箇所に関する変更箇所情報が格納される変更箇所情報記憶部と、
前記送り機構の作動を一時停止させるブロックを示した停止ブロックを記憶する停止ブロック記憶部と、
前記プログラム記憶部に格納されたＮＣプログラムと、前記変更箇所情報記憶部に格納された変更箇所情報とを基に、変更箇所に係るブロックの１つ前のブロックを解析して、切削指令に関するブロックであるか否かを確認し、切削指令に関するブロックではないと判断した場合には、該１つ前のブロックを停止ブロックとして前記停止ブロック記憶部に格納する一方、切削指令に関するブロックであると判断した場合には、前記１つ前のブロックよりも更に前のブロックを解析して、切削指令に関するブロックではないブロックであり且つ変更箇所に係るブロックに最も近いブロックを認識し、認識したブロックを停止ブロックとして前記停止ブロック記憶部に格納するブロック解析部とを備え、
前記実行制御部は、前記プログラム解析部によって抽出された動作指令を実行するに当たり、該動作指令に係るブロックが停止ブロックであるか否かを、前記停止ブロック記憶部に格納された停止ブロックを基に確認して、停止ブロックであると判断した場合には、該動作指令の実行前又は実行後に前記送り機構の作動を一時停止させる一時停止処理を実行するように構成されていることを特徴とする工作機械の制御装置。
【請求項２】
前記プログラム記憶部に格納されたＮＣプログラムに関する履歴情報であって、前記ＮＣプログラム及びパラメータの少なくとも一方の変更後における実行実績の有無についての情報を含んだ履歴情報を記憶する履歴情報記憶部と、
前記実行制御部及びデータ変更部における処理を監視し、変更後における実行実績の無いＮＣプログラムが前記実行制御部によって実行された場合には、前記履歴情報記憶部に格納された該ＮＣプログラムの実行実績を有りに更新するとともに、前記ＮＣプログラム及びパラメータの内の少なくとも一方が前記データ変更部によって変更された場合には、前記履歴情報記憶部に格納された、対応するＮＣプログラムの実行実績を無しに更新する履歴情報管理部とを備え、
前記実行制御部は、前記プログラム解析部によって抽出された動作指令を実行するに当たり、該実行するＮＣプログラムが変更後における実行実績の無いＮＣプログラムであるか否かを、前記履歴情報記憶部に格納された履歴情報を基に確認して、変更後における実行実績の無いＮＣプログラムであると判断した場合に、前記一時停止処理を実行するように構成されていることを特徴とする請求項１記載の工作機械の制御装置。
【請求項３】
画面表示手段と、
前記実行制御部により実行中のＮＣプログラムを前記画面表示手段に表示する表示制御部とを備え、
前記表示制御部は、前記実行制御部により実行中のＮＣプログラムを表示するに当たり、前記変更箇所情報記憶部に格納された変更箇所情報を基に、変更箇所の表示形式を、それ以外の箇所の表示形式と異ならせて表示するように構成されていることを特徴とする請求項１又は２記載の工作機械の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工具及びワークを相対移動させる送り機構を制御する工作機械の制御装置に関し、更に詳しくは、ＮＣプログラムやパラメータを編集可能に構成された工作機械の制御装置に関する。
【背景技術】
【０００２】
工作機械の制御装置として、従来、例えば、特開平７−２２７７３９号公報に開示されたものが知られている。この制御装置は、ＮＣプログラムを記憶するプログラム記憶部と、プログラム記憶部に格納されたＮＣプログラムの実行時に、ＮＣプログラムで指令された送り速度や主軸回転速度を変更するためのオーバーライドスイッチと、オーバーライドスイッチのオーバーライド値を記憶するオーバーライド値記憶部と、オーバーライド値記憶部に格納されたオーバーライド値を基に、プログラム記憶部に格納されたＮＣプログラムを編集して、このＮＣプログラムで指令された送り速度や主軸回転速度を、オーバーライド値に応じた送り速度や主軸回転速度に変更する編集部とを備える。
【０００３】
そして、この制御装置では、ＮＣプログラムの実行時にオーバーライドスイッチが操作されると、そのときのオーバーライド値がオーバーライド値記憶部に格納され、ＮＣプログラムの指令値（送り速度や主軸回転速度）がオーバーライド値に応じた指令値に変更される。
【０００４】
また、この他、オペレータがデータを直接入力して、送り速度，主軸回転速度及び移動位置といった指令値やコードを変更したり、工具オフセット量及びワーク原点オフセット量といったパラメータを変更する編集機能を備えた制御装置もある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平７−２２７７３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来の制御装置では、例えば、指令値やパラメータ、コードを変更したときに、変更ミスによって、間違った値や不適切な値に変更されたり、間違ったコードに変更される恐れがあり、そして、変更ミスのあるＮＣプログラムが実行されると、工具がワークや工作機械構造体と干渉するという問題を生じたり、ワークの加工精度が低下するという問題を生じる。
【０００７】
本発明は、以上の実情に鑑みなされたものであって、指令値やパラメータ、コードを変更したＮＣプログラムを実行する場合に、安全に且つ加工精度を低下させることなく、ワークを加工することができる工作機械の制御装置の提供をその目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するための本発明は、
工具及びワークを相対移動させる送り機構を制御する工作機械の制御装置であって、
ＮＣプログラムを記憶するプログラム記憶部と、
ＮＣプログラムを構成するコードに関するパラメータを記憶するパラメータ記憶部と、
前記プログラム記憶部に格納されたＮＣプログラムをブロック毎に順次解析して、前記送り機構に関する動作指令を抽出するプログラム解析部と、
前記プログラム解析部によって順次抽出される動作指令と、前記パラメータ記憶部に格納されたパラメータとを基に、該動作指令を実行して前記送り機構を制御する実行制御部と、
前記プログラム記憶部に格納されたＮＣプログラム、及び前記パラメータ記憶部に格納されたパラメータの内の少なくとも一方を変更するデータ変更部とを備えた工作機械の制御装置において、
前記データ変更部によって変更された変更箇所に関する変更箇所情報が格納される変更箇所情報記憶部を備え、
前記実行制御部は、前記プログラム解析部によって抽出された動作指令を実行するに当たり、該動作指令に係るブロックが変更箇所に係るブロックの１つ前のブロックであるか否かを、前記変更箇所情報記憶部に格納された変更箇所情報を基に確認して、１つ前のブロックであると判断した場合には、該動作指令の実行前又は実行後に前記送り機構の作動を一時停止させるように構成された工作機械の制御装置に係る。
【０００９】
この制御装置によれば、プログラム記憶部に格納されたＮＣプログラムや、パラメータ記憶部に格納されたパラメータが、データ変更部によって変更されると、その変更箇所に関する変更箇所情報が変更箇所情報記憶部に格納される。尚、前記パラメータとしては、例えば、工具長補正，工具径補正，工具位置補正及び工具摩耗補正に用いられるオフセット量（工具オフセット量）やワーク原点オフセット量などが挙げられる。
【００１０】
この後、プログラム記憶部に格納されたＮＣプログラムが実行されると、プログラム解析部により、このＮＣプログラムがブロック毎に順次解析されて、送り機構に関する動作指令が抽出され、抽出された動作指令と、パラメータ記憶部に格納されたパラメータとを基に、実行制御部により、当該動作指令が順次実行されて送り機構が制御される。
【００１１】
このとき、実行制御部においては、抽出された動作指令が実行される際に、当該動作指令に係るブロックが変更箇所に係るブロックの１つ前のブロックであるか否かが、変更箇所情報記憶部に格納された変更箇所情報を基に確認され、１つ前のブロックである場合には、当該動作指令の実行前又は実行後に送り機構の作動が一時停止せしめられる。
【００１２】
尚、一時停止後、再度、送り機構を動作させる態様としては、オペレータによって入力される加工再開信号を実行制御部が受信してから加工を再開する態様を、一例として挙げることができる。
【００１３】
斯くして、この制御装置によれば、ＮＣプログラムやパラメータが変更された場合には、その変更箇所に係るブロックより１つ前のブロックに係る動作指令の実行前又は実行後に送り機構の作動が一時停止するので、変更箇所の確認をオペレータに促すことができる。これにより、指令値やパラメータ、コードを変更した際に、変更ミスによって、間違った値や不適切な値に変更したり、間違ったコードに変更していたとしても、そのことをオペレータに気付かせることができる。したがって、工具がワークや工作機械構造体と干渉したり、ワークの加工精度が低下するといった問題が生じるのを防止することができる。
【００１４】
また、本発明において、前記制御装置は、前記送り機構の作動を一時停止させるブロックを示した停止ブロックを記憶する停止ブロック記憶部と、前記プログラム記憶部に格納されたＮＣプログラムと、前記変更箇所情報記憶部に格納された変更箇所情報とを基に、変更箇所に係るブロックの１つ前のブロックを解析して、切削指令に関するブロックであるか否かを確認し、切削指令に関するブロックではないと判断した場合には、該１つ前のブロックを停止ブロックとして前記停止ブロック記憶部に格納する一方、切削指令に関するブロックであると判断した場合には、前記１つ前のブロックよりも更に前のブロックを解析して、切削指令に関するブロックではないブロックであり且つ変更箇所に係るブロックに最も近いブロックを認識し、認識したブロックを停止ブロックとして前記停止ブロック記憶部に格納するブロック解析部とを備え、前記実行制御部は、前記プログラム解析部によって抽出された動作指令を実行するに当たり、該動作指令に係るブロックが停止ブロックであるか否かを、前記停止ブロック記憶部に格納された停止ブロックを基に確認して、停止ブロックであると判断した場合には、該動作指令の実行前又は実行後に前記送り機構の作動を一時停止させる一時停止処理を実行するように構成される。
【００１５】
かかる構成の制御装置によれば、変更箇所情報が変更箇所情報記憶部に格納されると、この変更箇所情報と、プログラム記憶部に格納されたＮＣプログラムとを基に、ブロック解析部により、変更箇所に係るブロックの１つ前のブロックが解析されて、切削指令に関するブロックであるか否かが確認され、切削指令に関するブロックではないときには、当該１つ前のブロックが停止ブロックとして停止ブロック記憶部に格納される一方、切削指令に関するブロックであるときには、１つ前のブロックよりも更に前のブロックが解析されて、切削指令に関するブロックではないブロックであり且つ変更箇所に係るブロックに最も近いブロックが認識され、認識されたブロックが停止ブロックとして停止ブロック記憶部に格納される。
【００１６】
そして、実行制御部では、抽出された動作指令が実行される際、当該動作指令に係るブロックが停止ブロックであるか否かが、停止ブロック記憶部に格納された停止ブロックを基に確認され、停止ブロックである場合には、当該動作指令の実行前又は実行後に送り機構の作動が一時停止せしめられる。
【００１７】
このように、切削指令に関するブロック以外のブロックが停止ブロックとして設定されるので、切削途中で工具及びワークの相対移動が一時停止するのを防止することができ、切削途中における工具及びワークの移動停止によりワークの加工精度が低下するのを防止することができる。
【００１８】
また、本発明において、前記制御装置は、前記プログラム記憶部に格納されたＮＣプログラムに関する履歴情報であって、前記ＮＣプログラム及びパラメータの少なくとも一方の変更後における実行実績の有無についての情報を含んだ履歴情報を記憶する履歴情報記憶部と、前記実行制御部及びデータ変更部における処理を監視し、変更後における実行実績の無いＮＣプログラムが前記実行制御部によって実行された場合には、前記履歴情報記憶部に格納された該ＮＣプログラムの実行実績を有りに更新するとともに、前記ＮＣプログラム及びパラメータの内の少なくとも一方が前記データ変更部によって変更された場合には、前記履歴情報記憶部に格納された、対応するＮＣプログラムの実行実績を無しに更新する履歴情報管理部とを備え、前記実行制御部は、前記プログラム解析部によって抽出された動作指令を実行するに当たり、該実行するＮＣプログラムが変更後における実行実績の無いＮＣプログラムであるか否かを、前記履歴情報記憶部に格納された履歴情報を基に確認して、変更後における実行実績の無いＮＣプログラムであると判断した場合に、前記所定のブロックに係る動作指令の実行前又は実行後に前記送り機構の作動を一時停止させるように構成されていても良い。
【００１９】
この場合、変更後における実行実績の無いＮＣプログラムが実行制御部によって実行されると、履歴情報管理部により、履歴情報記憶部に格納された当該ＮＣプログラムの実行実績が有りに更新され、ＮＣプログラム及びパラメータの内の少なくとも一方がデータ変更部によって変更されると、履歴情報管理部により、履歴情報記憶部に格納された、対応するＮＣプログラムの実行実績が無しに更新される。
【００２０】
また、実行制御部では、抽出された動作指令が実行される際、その実行ＮＣプログラムが変更後における実行実績の無いＮＣプログラムであるか否かが、履歴情報記憶部に格納された履歴情報を基に確認され、変更後における実行実績の無いＮＣプログラムであるときに、前記所定のブロックに係る動作指令の実行前又は実行後に送り機構の作動が一時停止せしめられる。
【００２１】
このように、ＮＣプログラムやパラメータの変更後、最初の実行時にのみ変更箇所に係るブロックの直前で加工を一時停止させ、２回目以降の実行時には一時停止させないようにすることができるので、毎回、変更箇所に係るブロックの直前で加工が一時停止し、ワークの加工が非効率となるのを防止することができる。
【００２２】
また、前記制御装置は、画面表示手段と、前記実行制御部により実行中のＮＣプログラムを前記画面表示手段に表示する表示制御部とを備え、前記表示制御部は、前記実行制御部により実行中のＮＣプログラムを表示するに当たり、前記変更箇所情報記憶部に格納された変更箇所情報を基に、変更箇所の表示形式を、それ以外の箇所の表示形式と異ならせて表示するように構成されていても良い。
【００２３】
この場合、実行制御部により実行中のＮＣプログラムが表示制御部によって画面表示手段に表示される際、変更箇所情報記憶部に格納された変更箇所情報を基に、変更箇所の表示形式が、それ以外の箇所の表示形式と異なるように表示されるので、オペレータは変更箇所を容易に認識することができる。尚、異なる表示形式としては、例えば、変更箇所に係るブロックを点滅させたり、表示色を異ならせたり、反転表示させることなどが挙げられる。
【発明の効果】
【００２４】
以上のように、本発明に係る工作機械の制御装置によれば、ＮＣプログラムやパラメータが変更されたときには、その変更箇所に係るブロックの直前で送り機構の作動を一時停止させ、オペレータに注意させるようにしたので、安全に且つ加工精度を低下させることなく、ワークを加工することができる。
【図面の簡単な説明】
【００２５】
【図１】本発明の一実施形態に係る工作機械の制御装置などの概略構成を示したブロック図である。
【図２】ＮＣプログラムの変更例を示した説明図である。
【図３】パラメータの変更例を示した説明図である。
【図４】本実施形態のブロック解析部における一連の処理を示したフローチャートである。
【図５】本実施形態の履歴情報記憶部に格納された履歴情報を示すデータテーブルである。
【図６】本実施形態の実行制御部における一連の処理を示したフローチャートである。
【図７】本実施形態の実行制御部における一連の処理を示したフローチャートである。
【図８】本実施形態の表示制御部によって表示される表示画面の一部を示した説明図である。
【図９】本発明の他の実施形態に係る工作機械の制御装置などの概略構成を示したブロック図である。
【図１０】本発明の他の実施形態の実行制御部における一連の処理を示したフローチャートである。
【発明を実施するための形態】
【００２６】
以下、本発明の具体的な実施形態について、添付図面に基づき説明する。
【００２７】
図１に示すように、本例の制御装置１は、プログラム記憶部１１，パラメータ記憶部１２，プログラム編集部１３，パラメータ編集部１４，変更箇所情報記憶部１５，プログラム解析部１６，ブロック解析部１７，停止ブロック記憶部１８，履歴情報記憶部１９，履歴情報管理部２０，実行制御部２１，表示制御部２２，画面表示装置２３及び入力装置（図示せず）などを備えており、Ｘ軸，Ｙ軸及びＺ軸の直交３軸方向に工具及びワークを相対移動させる送り機構６と、工具若しくはワークを保持し、保持した工具若しくはワークを主軸モータ７により軸中心に回転させる主軸装置などから構成される工作機械５に設けられている。
【００２８】
前記プログラム記憶部１１には、ＮＣプログラムが格納され、前記パラメータ記憶部１２には、ＮＣプログラムを構成するコードに関するパラメータが格納される。尚、このパラメータの具体例としては、例えば、工具長補正，工具径補正，工具位置補正及び工具摩耗補正に用いられるオフセット量（工具オフセット量）やワーク原点オフセット量などが挙げられる。
【００２９】
前記プログラム編集部（データ変更部）１３は、入力装置（図示せず）から入力されるデータを基に、プログラム記憶部１１に格納されたＮＣプログラムを変更する。具体的には、送り速度，主軸回転速度及び移動位置といった指令値や、コードを変更する。図２に示した例では、１５ブロック、１７ブロック及び１９ブロックのＸ軸方向における指令位置が−９５から−９６に変更されている。
【００３０】
前記パラメータ編集部（データ変更部）１４は、入力装置（図示せず）から入力されるデータを基に、パラメータ記憶部１２に格納されたパラメータを変更する。図３に示した例では、１３ブロックの工具長補正に関するパラメータについて、形状に関する項目の値が１０．５００から１０．２００に変更され、摩耗に関する項目の値が１．２３０から１．１２０に変更されている。
【００３１】
前記変更箇所情報記憶部１５には、プログラム編集部１３によって変更されたＮＣプログラムの変更箇所や、パラメータ編集部１４によって変更されたパラメータの変更箇所に関する変更箇所情報が格納される。この変更箇所情報には、例えば、変更箇所に係るブロックや、変更前及び変更後のデータなどに関する情報が含まれる。また、パラメータの場合、変更箇所に係るブロックとは、例えば、変更後のパラメータを参照するコード（指令）が含まれたブロックのことである。
【００３２】
前記プログラム解析部１６は、プログラム記憶部１１に格納されたＮＣプログラムをブロック毎に順次解析して、送り機構６や主軸モータ７に関する動作指令を抽出する。送り機構６に関する動作指令としては、工具及びワークの送り速度、工具の移動位置、ワークの移動位置についての指令が挙げられ、主軸モータ７に関する動作指令としては、主軸の回転速度、主軸の回転開始、主軸の回転停止についての指令が挙げられる。
【００３３】
前記ブロック解析部１７は、プログラム記憶部１１に格納されたＮＣプログラムと、変更箇所情報記憶部１５に格納された変更箇所情報とを基に、変更箇所に係るブロックよりも前のブロックを解析して、送り機構６及び主軸モータ７の作動を一時停止させるブロックたる停止ブロックを認識し、認識した停止ブロックを前記停止ブロック記憶部１８に格納する。尚、停止ブロック記憶部１８には、プログラム記憶部１１に格納されたＮＣプログラムであって、プログラム編集部１３やパラメータ編集部１４による変更箇所を有するＮＣプログラムについて、前記停止ブロックが格納されている。
【００３４】
具体的には、ブロック解析部１７は、図４に示すような一連の処理を実行するようになっており、まず、プログラム記憶部１１に格納された変更後のＮＣプログラムを認識するとともに（ステップＳ１）、変更箇所情報記憶部１５に格納された変更箇所情報を認識し（ステップＳ２）、変更箇所に係るブロックの１つ前のブロックを停止ブロックに設定する（ステップＳ３）。例えば、図２に示した例では、１４ブロック、１６ブロック及び１８ブロックが停止ブロックに設定され、図３に示した例では、１２ブロックが停止ブロックに設定される。
【００３５】
この後、設定した停止ブロックを解析して、この停止ブロックが切削指令に関するブロックであるか否かを確認する（ステップＳ４）。切削指令に関するブロックであるか否かは、切削コードが有効になっているブロックであるか否かで判断することができる。
【００３６】
そして、切削指令に関するブロックであると判断した場合には、前記ステップＳ３で設定した停止ブロックの１つ前のブロックを停止ブロックとして再設定し（ステップＳ５）、再設定した停止ブロックを更に解析して、この停止ブロックが切削指令に関するブロックであるか否かを確認する（ステップＳ４）。このようにして、切削指令に関するブロックではない停止ブロックが見つかるまで前記ステップＳ４及びＳ５の処理を繰り返す。図２に示した例では、１４ブロック及び１８ブロックが切削指令に関するブロックであるため、切削指令に関するブロックではない停止ブロックとして１３ブロック及び１７ブロックが認識される。
【００３７】
そして、切削指令に関するブロックではない停止ブロックを認識すると（ステップＳ４）、前記ステップＳ３で設定した停止ブロック、又は前記ステップＳ５で再設定した停止ブロックを前記停止ブロック記憶部１８に格納して（ステップＳ６）、上記一連の処理を終了する。図２に示した例では、停止ブロックとして１３ブロック、１６ブロック及び１７ブロックが停止ブロック記憶部１８に格納され、図３に示した例では、停止ブロックとして１２ブロックが停止ブロック記憶部１８に格納される。
【００３８】
前記履歴情報記憶部１９には、プログラム記憶部１１に格納されたＮＣプログラムに関する履歴情報が格納される。この履歴情報は、図５に示すように、プログラム名、ＮＣプログラム及びパラメータの少なくとも一方が変更されたか否か（変更箇所が有るか否か）、ＮＣプログラム及びパラメータの少なくとも一方が変更された場合にはその変更後における実行実績の有無についての情報を含み、これらが相互に関連付けられている。尚、前記プログラム名は、図５のようにプログラム番号であっても、それ以外のファイル名であっても良い。
【００３９】
前記履歴情報管理部２０は、前記プログラム編集部１３，パラメータ編集部１４及び実行制御部２１における処理を監視し、変更後における実行実績の無いＮＣプログラムの全ブロックが実行制御部２１によって実行されると、履歴情報記憶部１９に格納された当該ＮＣプログラムの実行実績を有りに更新し、プログラム記憶部１１に格納されたＮＣプログラムがプログラム編集部１３によって変更されたり、パラメータ記憶部１２に格納されたパラメータがパラメータ編集部１４によって変更されると、履歴情報記憶部１９に格納された、対応するＮＣプログラムの実行実績を無しに更新する。また、履歴情報管理部２０は、プログラム記憶部１１に新たなＮＣプログラムが格納されると、当該ＮＣプログラムについての履歴情報を生成して履歴情報記憶部１９に格納するようになっている。
【００４０】
前記実行制御部２１は、プログラム解析部１６によって順次抽出される動作指令と、パラメータ記憶部１２に格納されたパラメータと、停止ブロック記憶部１８に格納された停止ブロックとを基に、当該動作指令を実行して送り機構６及び主軸モータ７を制御する。
【００４１】
具体的には、実行制御部２１は、図６及び図７に示すような一連の処理を実行するようになっており、まず、履歴情報記憶部１９に格納された履歴情報を認識して（ステップＳ１１）、認識した履歴情報を基に、実行するＮＣプログラムに変更箇所が有るか否かを確認し（ステップＳ１２）、変更箇所が有ると判断した場合（例えば、図５のプログラム名Ｏ０００１，Ｏ０００３及びＯ０００４の場合）には、実行するＮＣプログラムが変更後における実行実績の有るＮＣプログラムであるか否かを更に確認する（ステップＳ１３）。
【００４２】
そして、実行実績が有ると判断した場合（例えば、図５のプログラム名Ｏ０００１及びＯ０００４の場合）、及び前記ステップＳ１２で変更箇所が無いと判断した場合（例えば、図５のプログラム名Ｏ０００２及びＯ０００５の場合）には、カウンタｎをｎ＝１に設定し（ステップＳ１４）、ｎ番目のブロックの動作指令をプログラム解析部１６から受信して（ステップＳ１５）、受信した動作指令を実行する（ステップＳ１６）。この後、ＮＣプログラムの全ブロックについて動作指令を実行したか否かを確認し（ステップＳ１７）、カウンタｎを更新しつつＮＣプログラムの全ブロックについて動作指令を実行した後（ステップＳ１７，Ｓ１８）、上記一連の処理を終了する。
【００４３】
一方、前記ステップＳ１３で実行実績が無いと判断した場合（例えば、図５のプログラム名Ｏ０００３の場合）には、停止ブロック記憶部１８に格納された停止ブロックを認識した後（ステップＳ１９）、カウンタｎをｎ＝１に設定し（ステップＳ２０）、ｎ番目のブロックの動作指令をプログラム解析部１６から受信して（ステップＳ２１）、前記認識した停止ブロックを基に、ｎ番目のブロックが停止ブロックであるか否かを確認する（ステップＳ２２）。
【００４４】
そして、停止ブロックであると判断した場合には、前記受信した動作指令を実行した後（ステップＳ２３）、停止指令を出力して送り機構６及び主軸モータ７の作動を一時停止させる（ステップＳ２４）。例えば、図２に示した例では、１３ブロック、１６ブロック及び１７ブロックの動作指令の実行後に送り機構６及び主軸モータ７の作動が一時停止せしめられ、図３に示した例では、１２ブロックの動作指令の実行後に送り機構６及び主軸モータ７の作動が一時停止せしめられる。
【００４５】
この後、オペレータによって入力装置（図示せず）から加工再開信号が入力され、これを受信すると（ステップＳ２５）、ステップＳ２７の処理に進む。一方、前記ステップＳ２２で停止ブロックではないと判断した場合には、前記受信した動作指令を実行して（ステップＳ２６）、ステップＳ２７の処理に進む。
【００４６】
そして、前記ステップＳ２７では、ＮＣプログラムの全ブロックについて動作指令を実行したか否かを確認し、カウンタｎを更新しつつＮＣプログラムの全ブロックについて動作指令を実行した後（ステップＳ２７，Ｓ２８）、上記一連の処理を終了する。
【００４７】
前記表示制御部２２は、実行制御部２１により実行中のＮＣプログラムを前記画面表示装置２３に表示する。また、表示制御部２２は、ＮＣプログラムを表示するに当たり、変更箇所情報記憶部１５に格納された変更箇所情報を基に、変更箇所の表示形式を、それ以外の箇所の表示形式と異ならせて表示する。
【００４８】
ここで、図２に示したＮＣプログラムの場合を一例に説明すると、例えば、図８に示すように、変更箇所に係るブロックである１５ブロック、１７ブロック及び１９ブロックの表示を点滅させる。この他、１５ブロック、１７ブロック及び１９ブロックの表示色を異ならせたり、１５ブロック、１７ブロック及び１９ブロックを反転表示させるようにしても良い。
【００４９】
以上のように構成された本例の制御装置１によれば、プログラム記憶部１１に格納されたＮＣプログラムがプログラム編集部１３により変更されたり、パラメータ記憶部１２に格納されたパラメータがパラメータ編集部１４により変更されると、その変更箇所に関する変更箇所情報が変更箇所情報記憶部１５に格納されるとともに、履歴情報管理部２０により、履歴情報記憶部１９に格納された、対応するＮＣプログラムの実行実績が無しに更新される。
【００５０】
また、プログラム記憶部１１に格納されたＮＣプログラムと、変更箇所情報記憶部１５に格納された変更箇所情報とを基に、ブロック解析部１７によって変更箇所に係るブロックよりも前のブロックが解析され、切削指令に関するブロックではないブロックであって変更箇所に係るブロックに最も近いブロックが停止ブロックとして停止ブロック記憶部１８に格納される。
【００５１】
この後、プログラム記憶部１１に格納されたＮＣプログラムがプログラム解析部１６によりブロック毎に順次解析されて、送り機構６や主軸モータ７に関する動作指令が抽出され、抽出された動作指令と、パラメータ記憶部１２に格納されたパラメータとを基に、実行制御部２１によって当該動作指令が順次実行されて送り機構６や主軸モータ７が制御される。
【００５２】
その際、実行制御部２１では、まず、履歴情報記憶部１９に格納された履歴情報を基に、その実行ＮＣプログラムが変更後における実行実績の無いＮＣプログラムであるか否かが確認され、変更後における実行実績の無いＮＣプログラムであるときには、停止ブロック記憶部１８に格納された停止ブロックに係る動作指令の実行後に、送り機構６及び主軸モータ７の作動が一時停止せしめられる一方、変更箇所が無いときや、変更箇所が有っても変更後における実行実績の有るＮＣプログラムであるときには、送り機構６及び主軸モータ７の作動が一時停止せしめられることなく、動作指令が順次実行される。
【００５３】
また、実行制御部２１により実行中のＮＣプログラムは、表示制御部２２によって画面表示装置２３に表示されるが、変更箇所情報記憶部１５に格納された変更箇所情報を基に認識される変更箇所については、その表示形式が、それ以外の箇所の表示形式と異なるように表示される。
【００５４】
尚、実行制御部２１によって変更後における実行実績の無いＮＣプログラムの全ブロックが実行されると、履歴情報管理部２０により、履歴情報記憶部１９に格納された当該ＮＣプログラムの実行実績が有りに更新される。
【００５５】
このように、本例の制御装置１によれば、ＮＣプログラムやパラメータが変更された場合には、その変更箇所に係るブロックよりも１つ前のブロックに係る動作指令の実行後に送り機構６及び主軸モータ７の作動が一時停止するので、変更箇所の確認をオペレータに促すことができる。これにより、指令値やパラメータ、コードを変更した際に、変更ミスによって、間違った値や不適切な値に変更したり、間違ったコードに変更していたとしても、そのことをオペレータに気付かせることができる。したがって、工具がワークや工作機械構造体と干渉したり、ワークの加工精度が低下するといった問題が生じるのを防止することができる。
【００５６】
また、変更箇所に係るブロックより１つ前のブロックが切削指令に関するブロックであるときには、切削指令に関するブロックではないブロックであって変更箇所に係るブロックに最も近いブロックの実行後に送り機構６及び主軸モータ７の作動が一時停止するので、切削途中で工具及びワークの相対移動や主軸の回転が一時停止するのを防止することができ、切削途中における工具及びワークの移動停止や主軸の回転停止によりワークの加工精度が低下するのを防止することができる。
【００５７】
また、実行制御部２１によって変更後における実行実績の無いＮＣプログラムの全ブロックが実行されると、履歴情報管理部２０により、履歴情報記憶部１９に格納された当該ＮＣプログラムの実行実績が有りに更新されるので、ＮＣプログラムやパラメータの変更後、最初の実行時にのみ変更箇所に係るブロックの直前で加工を一時停止させ、２回目以降の実行時には一時停止させないようにすることができ、毎回、変更箇所に係るブロックの直前で加工が一時停止し、ワークの加工が非効率となるのを防止することができる。この他、ＮＣプログラムの全ブロックが実行された後に実行実績が更新されるので、ＮＣプログラムの実行が途中で中断された場合にまで実行実績が更新され、すべての変更箇所が実行されないまま実行実績が更新されるのを防止することもできる。
【００５８】
更に、実行制御部２１により実行中のＮＣプログラムが表示制御部２２によって画面表示装置２３に表示される際、変更箇所情報記憶部１５に格納された変更箇所情報を基に、変更箇所の表示形式が、それ以外の箇所の表示形式と異なるように表示されるので、オペレータは変更箇所を容易に認識することができる。
【００５９】
以上、本発明の一実施形態について説明したが、本発明の採り得る具体的な態様は、何らこれに限定されるものではない。
【００６０】
例えば、図１の制御装置１におけるブロック解析部１７及び停止ブロック記憶部１８は、これらを省略することができ、これらを省略した制御装置２は、図９に示すように、プログラム記憶部１１，パラメータ記憶部１２，プログラム編集部１３，パラメータ編集部１４，変更箇所情報記憶部１５，プログラム解析部１６，履歴情報記憶部１９，履歴情報管理部２０，実行制御部２１’，表示制御部２２，画面表示装置２３及び入力装置（図示せず）を備え、前記制御装置１とは、ブロック解析部１７及び停止ブロック記憶部１８が省略されている点、実行制御部２１に代えて実行制御部２１’が設けられている点で相違している。
【００６１】
前記実行制御部２１’は、プログラム解析部１６によって順次抽出される動作指令と、パラメータ記憶部１２に格納されたパラメータと、変更箇所情報記憶部１５に格納された変更箇所情報とを基に、当該動作指令を実行して送り機構６及び主軸モータ７を制御する。
【００６２】
具体的には、実行制御部２１’は、図６及び図１０に示すような一連の処理を実行するが、前記ステップＳ１１〜ステップＳ１８については前記実行制御部２１と同様の処理を行うため、ここでは、これらの説明については省略し、ステップＳ３１以降の処理について説明する。
【００６３】
即ち、実行制御部２１’は、前記ステップＳ１３で実行実績が無いと判断すると、変更箇所情報記憶部１５に格納された変更箇所情報を認識した後（ステップＳ３１）、カウンタｎをｎ＝１に設定し（ステップＳ３２）、ｎ番目のブロックの動作指令をプログラム解析部１６から受信して（ステップＳ３３）、前記認識した変更箇所情報を基に、ｎ番目のブロックが変更箇所に係るブロックの１つ前のブロックであるか否かを確認する（ステップＳ３４）。例えば、図２に示した例では、ｎ番目のブロックが１４ブロック、１６ブロック及び１８ブロックに該当するか否かが確認され、図３に示した例では、ｎ番目のブロックが１２ブロックに該当するか否かが確認される。
【００６４】
そして、１つ前のブロックであると判断した場合には、前記受信した動作指令を実行した後（ステップＳ３５）、停止指令を出力して送り機構６及び主軸モータ７の作動を一時停止させ（ステップＳ３６）、この後、オペレータによって入力装置（図示せず）から入力される加工再開信号を受信すると（ステップＳ３７）、ステップＳ３９の処理に進む。一方、前記ステップＳ３４で１つ前のブロックではないと判断した場合には、前記受信した動作指令を実行して（ステップＳ３８）、ステップＳ３９の処理に進む。
【００６５】
そして、前記ステップＳ３９では、ＮＣプログラムの全ブロックについて動作指令を実行したか否かを確認し、カウンタｎを更新しつつＮＣプログラムの全ブロックについて動作指令を実行した後（ステップＳ３９，Ｓ４０）、上記一連の処理を終了する。
【００６６】
このように制御装置２を構成しても、ＮＣプログラムやパラメータの変更箇所に係るブロックよりも１つ前のブロックに係る動作指令の実行後に送り機構６及び主軸モータ７の作動が一時停止するので、上記制御装置１と同様の効果を得ることができる。
【００６７】
また、前記制御装置１，２では、所定のブロックに係る動作指令の実行後に送り機構６及び主軸モータ７の作動を一時停止させるようにしたが、これに限られるものではなく、所定のブロックに係る動作指令の実行前に送り機構６及び主軸モータ７の作動を一時停止させ、前記加工再開信号を受信した後、加工を再開して、当該所定のブロックに係る動作指令を実行するようにしても良い。
【符号の説明】
【００６８】
１    工作機械の制御装置
５    工作機械
６    送り機構
１１  プログラム記憶部
１２  パラメータ記憶部
１３  プログラム編集部
１４  パラメータ編集部
１５  変更箇所情報記憶部
１６  ブロック解析部
１７  停止ブロック記憶部
２１  実行制御部
【図１】
0005778430.tif 000002
【図２】
0005778430.tif 000003
【図３】
0005778430.tif 000004
【図４】
0005778430.tif 000005
【図５】
0005778430.tif 000006
【図６】
0005778430.tif 000007
【図７】
0005778430.tif 000008
【図８】
0005778430.tif 000009
【図９】
0005778430.tif 000010
【図１０】
0005778430.tif 000011