(57)【要約】【課題】加工の再開をするときに機械側の状態を正確に復元することが可能な、プログラム再開機能を備えた数値制御装置を提供すること。【解決手段】ＮＣ部はＮＣ部の内部データの復元し（Ｓ５０１）、加工再開一時中断状態に移行し（Ｓ５０２）、ＮＣ部プログラム再開ブロックデータから取り出した識別番号をＰＭＣ部に渡し（Ｓ５０３）、ＰＭＣ部の復元監視状態に移行する（Ｓ５０４、Ｓ５０５）。ＰＭＣ部はＮＣ部からの識別番号の入力を監視し（Ｓ５０８）、識別番号が入力されたタイミングで、ＰＭＣ部の信号状態および周辺機械部の状態を復元させ（Ｓ５０９）、復元が完了したら、ＮＣ部に通知する（Ｓ５１０）。ＮＣ部はＰＭＣ部を監視しており（Ｓ５０５）、完了を検出すると加工再開一時中断状態をキャンセルし（Ｓ５０６）、起動ボタンを有効化する等、加工が再開できる状態に移行する。【選択図】図５
2015053016.tif 000002
【特許請求の範囲】
【請求項１】
加工プログラムのブロックを順次読み出して解析し実行することにより数値制御装置に接続されているモータを制御するＮＣ部と、数値制御装置に装備されている入出力インタフェースを制御することで入出力インタフェースに接続されている周辺機械部を制御するためのＰＭＣ部を有し、それぞれを制御してワークの加工を行い、前記ワークの加工を中断した時にワークの加工の再開を行うために、予め加工実行中にワークの加工の再開を行いやすい非切削ブロックをＮＣ部で検出して、非切削ブロックの情報をＮＣ部プログラム再開ブロックデータとしてＮＣ部のメモリに１つまたは複数個保存し、前記ワークの加工が中断した後に任意に選択された前記ＮＣ部プログラム再開ブロックデータに基づいて前記ワークの加工の再開を行うプログラム再開機能を備えた数値制御装置において、
加工実行中に非切削ブロックの情報をＮＣ部プログラム再開ブロックデータとして保存する時、ユニークな識別番号を付加して保存するＮＣ部プログラム再開ブロックデータ識別番号保存手段と、
加工実行中に主として周辺機械部の操作をＰＭＣ部に行わせる目的でＮＣ部よりＰＭＣ部に対して信号を出力する信号状態変更指令（補助機能）がＮＣ部で実行されるたびに、前記信号状態変更指令に対応するＮＣ部プログラム再開ブロックデータに付加された前記識別番号をＰＭＣ部に出力し、ＰＭＣ部に対して再開に必要なデータを保存するタイミングを通知するＮＣ部識別番号出力手段と、
前記ＮＣ部識別番号出力手段によって識別番号が出力されたタイミングで、ＰＭＣ部において、ＰＭＣ部が加工再開するのに必要なデータであるＰＭＣ部プログラム再開ブロックデータと前記識別番号とを関連付けてＰＭＣ部のメモリに保存していくＰＭＣ部プログラム再開ブロックデータ保存手段と、
を有することを特徴とするプログラム再開機能を備えた数値制御装置。
【請求項２】
加工を中断した後に、前記ＮＣ部プログラム再開ブロックデータの任意の一つを指定してプログラム再開機能を起動したとき、前記指定されたＮＣ部プログラム再開ブロックデータに基づいてワークの加工の再開を行う過程の途中でＮＣ部の加工再開動作を一時中断するＮＣ部加工再開一時中断手段と、
前記ＮＣ部加工再開一時中断手段によりＮＣ部の加工再開動作が一時中断したことを検出した後、プログラム再開機能の起動時に指定したＮＣ部プログラム再開ブロックデータの識別番号をＰＭＣ部に出力し、ＰＭＣ部に対して状態を復元するタイミングを通知するＮＣ部再開時識別番号出力手段と、
前記ＮＣ部から前記識別番号がＰＭＣ部に出力されてきたタイミングで、前記識別番号を基にＰＭＣ部にて数値制御装置の信号状態および周辺機械部の状態を復元させるＰＭＣ部信号状態復元手段と、
信号状態および周辺機械部の状態の復元が完了したところで、その完了を前記ＮＣ部に通知するＰＭＣ部信号状態復元完了通知手段と、
前記ＰＭＣ部信号状態復元完了通知手段により信号状態が復元したことを受けて、前記ＮＣ部加工再開一時中断手段で中断していた加工の再開をＮＣ部が続行するＮＣ部加工再開続行手段と
を有することを特徴とするプログラム再開機能を備えた請求項１に記載の数値制御装置。
【請求項３】
請求項１および請求項２に記載のＰＭＣ部に代わる装置として、ＮＣ部に接続された外部のＰＬＣやコンピュータ等の機器を備えた数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械を制御する数値制御装置において、加工プログラムの実行中断後に、加工プログラムの再実行を容易にするプログラム再開機能を備えた数値制御装置に関する。
【背景技術】
【０００２】
加工プログラムの実行中断後に、加工プログラムの再実行を容易にするプログラム再開機能を備えた数値制御装置が従来公知である。
【０００３】
従来のプログラム再開機能では、ワークの加工を中断した場合に備えて、ワークの加工を再開するためのプログラム再開ブロックデータをワークの加工中に取得していた（特許文献１参照）。
前記プログラム再開ブロックデータとは、加工プログラム実行中のプログラムのブロック番号、実行中のブロックの始点位置と終点位置、実行中のブロックの各種モーダル情報、親プログラムの番号とサブプログラムの呼び出しのブロック位置、親プログラムから実行中のブロックまでの総ブロック数、などのプログラム再開に必要なデータである。（特許文献１の［０００８］を参照）
ただし、実際に加工を再開するには、加工を再開するブロックに合わせて、数値制御装置で指令されたブロックの状態だけでなく、入出力インタフェースが接続されたＰＭＣ部、もしくはＮＣ部のインタフェースに接続されたＰＬＣやコンピュータ等、さらにそこに接続されている周辺機械部（以下まとめて「ＰＭＣ部」という。）の状態も復元する必要がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第４３７４０４５号公報
【特許文献２】特許第２９９８４７３号公報
【特許文献３】特許第３１６９５６９号公報
【特許文献４】特許第３１８０８０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１ではＰＭＣ部の状態を復元するために、加工プログラムの内容を調査し、必要な補助機能（なお、後述する本願の請求項１では「信号状態変更指令」と記載している。）を選定し、それらの補助機能を手動で指令していた。ここで、もしもＰＭＣ部の状態を正しく復元できないまま加工を再開すると、ワークや工具を破損する可能性がある。
【０００６】
この可能性に対する解決策として、加工プログラムの中断位置より再実行させる際、中断時と再実行時の機械の状態を比較して、機械の状態を中断時の状態に戻せるように復元プログラムを生成する方法がある（特許文献２参照）。また、機械加工状態を表す制御データを加工実行中に記憶し、再開時に戻す方法もある（特許文献３参照）。
【０００７】
特許文献２では、加工中断時に使用工具番号、主軸回転数、Ｍ指令状態を記憶し、これらを復元するための指令を復元プログラムとして生成する。しかし、これらの指令を介さずに機械の状態を変更する機能があった場合、機械の状態を復元することは困難である。例えば、切削負荷に応じて送り速度オーバライドや主軸速度オーバライドを変更する機能があった場合、上記の情報だけからオーバライドの状態を復元することは困難である。
【０００８】
また、特許文献３の技術は、制御データを静的なものと動的なものに区分して保存・復元する方法であり、動的なものを常に保存することで加工中断時の機械の状態を復元する方法である。しかし、この技術はすべてのデータが一元管理されていることが前提であり、例えば必要なデータがＮＣ部とＰＭＣ部に分散して存在し、それぞれ独立に管理される場合だと、加工プログラムを再開して実行することに対応できない。
【０００９】
また、プログラム上では単一の補助機能として記述されていながら、数値制御装置内部では一連の複数の機械動作指令の集合体と認識させるものがある。その一連の複数の機械動作指令を実行させるものである場合に、その補助機能の途中で動作を中断したときに残りの機械動作指令を再実行時に実行させる技術も存在する（特許文献４参照）。しかし、この技術は機械の状態を復元する技術ではなく、中断された補助機能の残りの動作を再実行するための技術である。
【００１０】
そこで本発明の目的は、加工の再開をするときに機械側（ＰＭＣ部、コンピュータ部、周辺機械部）の状態を正確に復元することが可能であり、復元ミスによるワークや工具の破損を防ぐことができるプログラム再開機能を備えた数値制御装置を提供することである。
【課題を解決するための手段】
【００１１】
本願の請求項１に係る発明は、加工プログラムのブロックを順次読み出して解析し実行することにより数値制御装置に接続されているモータを制御するＮＣ部と、数値制御装置に装備されている入出力インタフェースを制御することで入出力インタフェースに接続されている周辺機械部を制御するためのＰＭＣ部を有し、それぞれを制御してワークの加工を行い、前記ワークの加工を中断した時にワークの加工の再開を行うために、予め加工実行中にワークの加工の再開を行いやすい非切削ブロックをＮＣ部で検出して、非切削ブロックの情報をＮＣ部プログラム再開ブロックデータとしてＮＣ部のメモリに１つまたは複数個保存し、前記ワークの加工が中断した後に任意に選択された前記ＮＣ部プログラム再開ブロックデータに基づいて前記ワークの加工の再開を行うプログラム再開機能を備えた数値制御装置において、加工実行中に非切削ブロックの情報をＮＣ部プログラム再開ブロックデータとして保存する時、ユニークな識別番号を付加して保存するＮＣ部プログラム再開ブロックデータ識別番号保存手段と、加工実行中に主として周辺機械部の操作をＰＭＣ部に行わせる目的でＮＣ部よりＰＭＣ部に対して信号を出力する信号状態変更指令（補助機能）がＮＣ部で実行されるたびに、前記信号状態変更指令に対応するＮＣ部プログラム再開ブロックデータに付加された前記識別番号をＰＭＣ部に出力し、ＰＭＣ部に対して再開に必要なデータを保存するタイミングを通知するＮＣ部識別番号出力手段と、前記ＮＣ部識別番号出力手段によって識別番号が出力されたタイミングで、ＰＭＣ部において、ＰＭＣ部が加工再開するのに必要なデータであるＰＭＣ部プログラム再開ブロックデータと前記識別番号とを関連付けてＰＭＣ部のメモリに保存していくＰＭＣ部プログラム再開ブロックデータ保存手段と、を有することを特徴とするプログラム再開機能を備えた数値制御装置である。
【００１２】
請求項２に係る発明は、加工を中断した後に、前記ＮＣ部プログラム再開ブロックデータの任意の一つを指定してプログラム再開機能を起動したとき、前記指定されたＮＣ部プログラム再開ブロックデータに基づいてワークの加工の再開を行う過程の途中でＮＣ部の加工再開動作を一時中断するＮＣ部加工再開一時中断手段と、前記ＮＣ部加工再開一時中断手段によりＮＣ部の加工再開動作が一時中断したことを検出した後、プログラム再開機能の起動時に指定したＮＣ部プログラム再開ブロックデータの識別番号をＰＭＣ部に出力し、ＰＭＣ部に対して状態を復元するタイミングを通知するＮＣ部再開時識別番号出力手段と、前記ＮＣ部から前記識別番号がＰＭＣ部に出力されてきたタイミングで、前記識別番号を基にＰＭＣ部にて数値制御装置の信号状態および周辺機械部の状態を復元させるＰＭＣ部信号状態復元手段と、信号状態および周辺機械部の状態の復元が完了したところで、その完了を前記ＮＣ部に通知するＰＭＣ部信号状態復元完了通知手段と、前記ＰＭＣ部信号状態復元完了通知手段により信号状態が復元したことを受けて、前記ＮＣ部加工再開一時中断手段で中断していた加工の再開をＮＣ部が続行するＮＣ部加工再開続行手段と
を有することを特徴とするプログラム再開機能を備えた請求項１に記載の数値制御装置である。
【００１３】
請求項３に係る発明は、請求項１および請求項２に記載のＰＭＣ部に代わる装置として、ＮＣ部に接続された外部のＰＬＣやコンピュータ等の機器を備えた数値制御装置である。
【発明の効果】
【００１４】
発明により、加工の再開をするときに機械側（ＰＭＣ部、コンピュータ部、周辺機械部）の状態を正確に復元することが可能となり、復元ミスによるワークや工具の破損を防ぐことが可能となる。
【図面の簡単な説明】
【００１５】
【図１】数値制御装置と外部機械装置の要部を説明するブロック図である。
【図２】非切削ブロックを記憶する過程を説明するブロック図である。
【図３】ＮＣ部プログラム再開ブロックデータ識別番号保存手段およびＮＣ部識別番号出力手段を説明するブロック図である。
【図４】請求項１の数値制御装置における加工中のＮＣ部とＰＭＣ部の動作例を説明する図である。
【図５】請求項１の数値制御装置における加工再開時のＮＣ部とＰＭＣ部の動作例を説明する図である。
【図６】加工開始から加工再開までの操作の流れを説明する図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態を図面と共に説明する。  
図１は数値制御装置と外部機械装置の要部を説明するブロック図である。数値制御装置１００は、メモリ１０６（不揮発性メモリ１０４または揮発性メモリ１０５）に登録されている加工プログラムのブロックを順次読み出して解析し実行することによって、数値制御装置１００に接続されている各軸のモータ１１０ｘ，１１０ｙ，１１０ｚ、および、スピンドルモータ１１３を制御するＮＣ部１０１と、数値制御装置１００に装備されている入出力インタフェース１２５を制御することで入出力インタフェース１２５に接続されている周辺機械部１２８を制御するＰＭＣ部１２０とを備え、それぞれを制御してワークの加工を行う。各軸のモータ１１０ｘ，１１０ｙ，１１０ｚは、各軸の軸制御回路１０８ｘ，１０８ｙ，１０８ｚおよびサーボアンプ１０９ｘ，１０９ｙ，１０９ｚにより駆動制御される。検出器１１４はスピンドルモータ１１３の回転速度を検出する検出器であって、検出した回転速度信号はスピンドル制御回路１１１にフィードバックされる。スピンドルモータ１１３は、スピンドル制御回路１１１，スピンドルアンプ１１２により駆動制御される。
【００１７】
ＮＣ−ＣＰＵ１０２は数値制御装置１００を全体的に制御するプロセッサである。ＮＣ−ＣＰＵ１０２はバス１１５を介してＲＯＭ１０３に格納されたシステムプログラムを読み出し、該システムプログラムに従って数値制御装置１００の全体を制御する。揮発性メモリ１０５には一時的な計算データや表示データおよび表示器／手動入力手段ユニット１１６を介してオペレータが入力した各種データが格納される。また、インタフェース１０７は外部記憶装置や請求項３に記載の外部のＰＬＣやコンピュータ等の機器（図示せず）などを接続するためのインタフェースである。
【００１８】
ＰＭＣ（プログラマブル・マシン・コントローラ）部１２０は、ＰＭＣ−ＣＰＵ１２４のプロセッサを備えており、バス１１５を介してＮＣ部１０１から信号状態変更指令（Ｍ機能，Ｓ機能，Ｔ機能などの補助機能の指令）を受ける。ＰＭＣ部１２０はＲＯＭ１２６に格納されたシーケンスプログラムによってこの信号状態変更指令を解読処理する。そして、ＰＭＣ部１２０は、工作機械の周辺機械部１２８を制御する出力信号を入出力インタフェース１２５を介して周辺機械部１２８に出力する。ＰＭＣ部１２０は、不揮発性メモリ１２２と揮発性メモリ１２３からなるメモリ１２１を備えている。メモリ１２１の不揮発性メモリ１２２または揮発性メモリ１２３には、加工再開に必要となるデータが保存される。この加工再開に必要となるデータに後述するように、プログラム再開ブロックデータにユニークな識別番号を付加してメモリ１２１に保存される。ここでユニークなとは、工作機械が加工プログラムに従ってワークを加工する際、例えばマクロ命令等により加工プログラム上の同一ブロックが複数回実行される場合にそのブロックの実行が何回目であるのかも認識するために付加的に付与される番号である。
【００１９】
図２は加工実行中に非切削ブロックをＮＣ部で検出して、非切削ブロックの情報をプログラム再開ブロックデータとしてＮＣ部のメモリに保存する過程のブロック図である。加工プログラムは、字句解析２０１により英記号と数値記号とに分離される。次に、例えば英記号のＧ指令の数値は何であったかを判定する構文解析２０２を行う。次に、例えばＧ指令の数値によりその機能を特定し、その機能別の処理を実行する意味解析２０３を行う。次に、意味解析の結果をオブジェクトコードに変換するオブジェクトコードの生成２０４を行う。次に、非切削指令判別部２０５により、オブジェクトコード化された指令から非切削指令を判別する。そして、非切削指令の場合にプログラム再開ブロックデータ取得部２０６によりプログラム再開ブロックデータを取得および保存する。ブロック実行部２０７は生成されたオブジェクトコードに従って、数値制御装置に接続されているモータおよびＰＭＣ部を介して接続された周辺機械部を制御してワークの加工を行う。
【００２０】
図３はＮＣ部プログラム再開ブロックデータ識別番号保存手段およびＮＣ部識別番号出力手段を示すブロック図である。図中の３０１〜３０７は前述の図２の２０１〜２０７に対応する。識別番号はオブジェクトコード生成３０４時に識別番号生成部３０８によって生成され、オブジェクトコードの一部として埋め込まれる。識別番号生成部３０８では、例えば１つ前のオブジェクトに埋め込んだ番号に１を加算するなどの方法により、オブジェクトごとにユニークな番号を生成する。
【００２１】
続いて、非切削指令判別部３０５でオブジェクトコード化された指令から非切削指令を判別し、非切削指令の場合にはプログラム再開ブロックデータ取得部３０６によりプログラム再開ブロックデータを取得、保存すると同時に、ＮＣ部プログラム再開ブロックデータ識別番号保存手段３０９によって前記オブジェクトコードから識別番号を取り出し、ＮＣ部プログラム再開ブロックデータの一部としてその識別番号を保存する。
【００２２】
ブロック実行部３０７は生成されたオブジェクトコードに従って、数値制御装置１００に接続されているモータおよびＰＭＣ部を介して接続された周辺機械部を制御してワークの加工を行う。ここでオブジェクトコードが信号状態変更指令であった場合には、ＮＣ部識別番号出力手段３１０によって識別番号がオブジェクトコードから取出されＰＭＣ部に出力される。すなわち、ＮＣ部−ＰＭＣ部間のインタフェース信号（図示しない）に対して前記識別番号がＮＣ部より伝達される。また、もともとのブロック実行部の作用により、信号状態変更指令が実行されると前記ＮＣ部−ＰＭＣ部間のインタフェース信号に対して補助機能コード等がＮＣ部より伝達され、それを合図にＰＭＣ部は入出力インタフェース（図１の１２５に示す）のインタフェース信号を操作して周辺機械部を動作させる。
【００２３】
ＰＭＣ部プログラム再開ブロックデータ保存手段（図４参照）は、ＮＣ部１０１よりＰＭＣ部１２０へ前記識別番号が伝達されたタイミングで、ＰＭＣ部１２０での加工再開に必要となるデータと前記識別番号とを関連付けたものをＰＭＣ部プログラム再開ブロックデータとしてＰＭＣ部１２０のメモリ（メモリ１２１の不揮発性メモリ１２２または揮発性メモリ１２３）に保存する。ＰＭＣ部１２０での加工再開に必要となるデータとは、一般的には前記識別番号がＮＣ部１０１より伝達されて来た瞬間の信号状態および周辺機械部１２８を制御するためのデータである。
【００２４】
図４は加工中のＮＣ部とＰＭＣ部の動作例を示したフローチャートである。ＮＣ部の識別番号生成部では、加工を開始したとき識別番号を初期化する（Ｓ４１０）。１ブロック分のプログラムの文字列を読み込み、字句解析、構文解析、意味解析、オブジェクトコードの生成を行う（Ｓ４１１、Ｓ４１２）。オブジェクトコードができたところで、前記識別番号生成部では各オブジェクトコードにユニークとなる識別番号を生成する（Ｓ４１３）。もしも、このブロックが非切削指令であれば、プログラム再開ブロックデータ取得部は加工再開に必要となるデータを保存する（Ｓ４１４、Ｓ４１５）とともに、前記識別番号生成部（Ｓ４１３）で生成された識別番号もそれに関連付けて保存する（Ｓ４１６）。オブジェクトコードを実行するとき、ＮＣ部識別番号出力手段にてオブジェクトコードの内容を判別し、信号状態変更指令であれば前記識別番号生成部（Ｓ４１３）で生成された識別番号をＰＭＣ部に出力する。これらの動作をプログラムが終了するまで、ブロックごとに行う（Ｓ４１９）。なお、このフローチャートでは、識別番号として０，１，２・・・の正の整数を用いている。
【００２５】
ＰＭＣ部ではＳ４１８で出力される識別番号を監視しており、まず識別番号が入力されたかどうかを判定し（Ｓ４０１）、入力があれば加工再開に必要なデータを保存し（Ｓ４０２）、さらに識別番号も保存する（Ｓ４０３）。識別番号の入力がない場合、Ｓ４０１、Ｓ４０２を行わず、信号状態変更指令（補助機能）かを判定し（Ｓ４０４）、そうであれば、信号状態変更指令（補助機能）を実行する（Ｓ４０５）。Ｓ４０１〜Ｓ４０３がＰＭＣ部プログラム再開ブロックデータ保存手段であり、Ｓ４０４，Ｓ４０５は、本発明を実施しない場合にも一般的に行われる信号状態変更指令（補助機能）指令時のＰＭＣ部の処理である。
【００２６】
このようにして加工再開に必要となるデータを取得すると、表１に示すように、識別番号とプログラム再開ブロックデータが組になったものが、信号状態変更指令が指令されるごとに、ＮＣ部とＰＭＣ部のメモリにそれぞれ取得されていく。
【００２７】
なお、表１に示すように、ＰＭＣ部プログラム再開ブロックデータが時系列ですべて保存されているとすれば、個々のＰＭＣ部プログラム再開ブロックデータには、前回から変化のあったデータだけを保存すれば良い。その理由は識別番号の若い順からすべて復元していくことで、すべての状態を復元できるからである。
【００２８】
【表１】
2015053016.tif 000003
【００２９】
ここまでの説明では、本発明の加工実行中の動作の実施例を示した。ここからは、加工を中断した後の加工再開時の動作の実施例について述べる。本発明の加工再開では、まずＮＣ部が動作してＮＣ部の内部データを復元させた後、ＰＭＣ部によって信号状態および周辺機械部の状態を復元させ、その完了を待ってＮＣ部が加工の再開を続行する。
【００３０】
このときのＮＣ部とＰＭＣ部の各動作を示したのが図５である。ＮＣ部はＮＣ部の内部データの復元（Ｓ５０１）が完了すると、ＮＣ部加工再開一時中断手段（Ｓ５０２）により加工再開中断状態に移行する。加工再開中断状態に移行すると、ＮＣ部はプログラムの起動ボタンを無視する等、加工再開の準備が整う前に誤って加工が再開されてしまわないような措置を行う。
【００３１】
続いてＮＣ部再開時識別番号出力手段（Ｓ５０３）によって、プログラム再開機能の起動時に選択されたＮＣ部プログラム再開ブロックデータから識別番号を取り出し、ＮＣ部−ＰＭＣ部間のインタフェース信号に入力し（Ｓ５０３）、ＮＣ部加工再開続行手段（Ｓ５０４、Ｓ５０５）に移行する。
【００３２】
一方で、ＰＭＣ部はＰＭＣ部信号状態復元手段（Ｓ５０７）において、前記ＮＣ部−ＰＭＣ部間のインタフェース信号を監視しており（Ｓ５０８）、ＮＣ部より識別番号が入力されたタイミング（つまり、ＮＣ部再開時識別番号出力手段によりＮＣ部からＰＭＣ部に識別信号を出力する）で、ＰＭＣ部信号状態復元部（Ｓ５０９）を実行し、表１に示したデータを使用して信号状態および周辺機械部の状態を復元させる。
【００３３】
これが完了したら、ＰＭＣ部信号状態復元完了通知手段（Ｓ５１０）によりＮＣ部−ＰＭＣ部間のインタフェース信号を通じて、ＰＭＣ部が信号状態および周辺機械部の状態の復元を完了したことをＮＣ部に通知する。このとき、ＮＣ部はＰＭＣ部復元監視部（Ｓ５０５）により、ＰＭＣ部の完了を監視しており、完了を検出するとＮＣ部加工再開続行部（Ｓ５０６）により加工再開中断状態をキャンセルし、起動ボタンを有効化する等、加工が再開できる状態に移行する。
【００３４】
以上により、ＮＣ部、ＰＭＣ部および周辺機械部のすべてについて加工中断前と同じ状態が復元されるので、この状態から加工の続きを開始することが可能となる。
【００３５】
図６に本発明を実施した場合の加工の開始、加工の中断、加工の再開までの全体の流れについて、オペレータの操作例と、それに対する数値制御装置の動作の例を示す。
【００３６】
オペレータが加工を開始すると（Ｓ６０１）、数値制御装置は加工中に非切削ブロックが指令されれば、ＮＣ部プログラム再開ブロックデータの保存が行われ、さらに信号状態変更指令であれば、ＰＭＣ部プログラム再開ブロックデータも保存される（Ｓ６０２）。機械の異常や停電等で加工が中断されると（Ｓ６０４）、プログラムの運転は一旦終了となる（Ｓ６０５）。
【００３７】
中断した加工を再開するため、オペレータは複数あるＮＣ部プログラム再開ブロックデータから任意の１つを指定し（Ｓ６０６）、プログラム再開機能を起動する（Ｓ６０７）。これを受けて数値制御装置は加工再開のための動作に入り（Ｓ６０８）、ＮＣ部プログラム再開ブロックデータに基づきＮＣ部の内部データの復元を開始し（Ｓ６０９）、続いてＰＭＣ部および周辺機械部の状態を復元する（Ｓ６１０）。図示しないが、Ｓ６１０のステップは前記ＮＣ部再開時識別番号出力手段（図５のステップＳ５０３を参照）、ＰＭＣ部信号状態復元手段（図５のステップＳ５０７を参照）、ＰＭＣ部信号状態復元完了通知手段（図５のステップＳ５１０を参照）から構成されている。
【００３８】
オペレータはプログラム再開機能を起動したら（Ｓ６０７）、数値制御装置側の復元完了を待ち（Ｓ６１１）、数値制御装置は状態の復元が完了するとプログラム起動釦の押されるのを待つ（Ｓ６１２）。オペレータは数値制御装置側の復元完了を確認し、安全を確認した上でプログラム起動釦を押す（Ｓ６１３）。これを受けて数値制御装置がＮＣ部加工再開続行手段の起動を行うと（Ｓ６１４）、加工が再開される。なお、前記Ｓ６１１、Ｓ６１２、Ｓ６１３は加工開始前にオペレータが安全を確認するためのステップを設けた例で、省略しても良い。
【００３９】
ここで、上述したＰＭＣ部の役割をＮＣ部に接続された外部のＰＬＣ（プログラマブル・ロジック・コントローラ）やコンピュータ等で行うようにした実施形態を説明する。すなわち、上述した実施形態との差異は、ＮＣ部識別番号出力手段、ＮＣ部再開時識別番号出力手段、ＰＭＣ部信号状態復元完了通知手段、ＮＣ部加工再開続行手段において、ＮＣ部と外部のＰＬＣやコンピュータ等とが各種の情報をやりとりする方法（通信プロトコル等）が、上述した実施形態のＮＣ部とＰＭＣ部がやりとりをする場合のそれと異なる点と、ＰＭＣ部プログラム再開ブロックデータ保存手段、ＰＭＣ部信号状態復元手段、ＰＭＣ部信号状態復元完了通知手段に相当する機能をＰＭＣ部に代わり前記ＰＬＣまたはコンピュータで実施する点、である。それぞれが扱う情報の内容については、上述した実施形態と同様である。
【００４０】
以下、請求項毎に補足説明する。
＜請求項１＞
請求項１に係る発明は、メモリに登録されている加工プログラムのブロックを順次読み出して解析し実行することにより、数値制御装置のＮＣ部（図１参照）に接続されているモータを制御し、また、機械に取り付けられている周辺機器等の機械部（以後、周辺機械部と記す）を数値制御装置のＰＭＣ部（図１参照）の入出力インタフェースを介して制御し、ワークの加工を行う数値制御装置であって、ワークの加工を中断した時にワークの加工の再開を容易に行うために、予め加工実行中にワークの加工の再開を行いやすい非切削ブロックを検出して、非切削ブロックの情報をプログラム再開ブロックデータとしてメモリに保存し、ワークの加工が中断した時にプログラム再開ブロックデータに基づいてワークの加工の再開を行うプログラム再開機能を備えた数値制御装置に関し、加工実行中に検出した非切削ブロックをプログラム再開ブロックデータとして選択して再開動作を行なう時、数値制御装置の信号状態や周辺機械部の状態を正確に復元するプログラム再開機能を有することを特徴とする数値制御装置を得ることを目的とする。
【００４１】
本発明の方式１（請求項１に対応）では、ワークの加工実行中に補助機能（請求項では信号状態変更指令と記載）が指令されると、加工を再開するためのデータであるプログラム再開ブロックデータを図１に記載の数値制御装置のＮＣ部のメモリに保存するが、このときプログラム再開ブロックデータにユニークな識別番号を付加して保存する。また、ワークの加工実行中に、周辺機械部の制御を行うＰＭＣ部に対して補助機能信号を出力すると同時に、ＰＭＣ部が加工再開に必要なデータであるＰＭＣ部プログラム再開ブロックデータを保存するタイミングを通知するため、前記識別番号も同時にＰＭＣ部に出力する。
ＰＭＣ部ではこの識別番号が出力されたタイミングで、前記ＰＭＣ部プログラム再開ブロックデータをＰＭＣ部のメモリに保存する。このとき、前記識別番号と前記ＰＭＣ部プログラム再開ブロックデータとの対応も保存する。
【００４２】
◎請求項１のＮＣ部プログラム再開ブロックデータ識別番号保存手段の説明
信号状態変更指令（補助機能）は非切削ブロックの一種であり、このブロックの情報はＮＣ部プログラム再開ブロックデータとしてＮＣ部のメモリに保存される。このとき、ＮＣ部プログラム再開ブロックデータにユニークな識別番号を付加する。ＮＣ部プログラム再開ブロックデータ識別番号保存手段はＮＣ部プログラム再開ブロックデータに前記識別番号を付加してＮＣ部のメモリに保存する。
【００４３】
◎請求項１のＮＣ部識別番号出力手段の説明
ＮＣ部識別番号出力手段は、ＰＭＣ部に対して再開に必要なデータを保存するタイミングを通知する。すなわち、ＮＣ部識別番号出力手段は、信号状態変更指令の実行時に、前記識別番号をＰＭＣ部に出力し、ＰＭＣ部が加工再開のために必要なデータを保存するタイミングを通知する。
【００４４】
◎請求項１のＰＭＣ部プログラム再開ブロックデータ保存手段の説明
ＰＭＣ部プログラム再開ブロックデータ保存手段は、ＮＣ部識別番号出力手段によって前記識別番号が通知されたことを合図に、ＰＭＣ部で持つデータの中から加工再開のために必要なものをＰＭＣ部に保存する。
【００４５】
また、プログラム中には複数の信号状態変更指令が指令される可能性があるので、保存したデータがどの信号状態変更指令のときのものなのかを区別する必要がある。このため、前記識別番号と関連付けてデータを保存する。すでに述べたとおり、前記識別番号はユニークな値のため、複数の信号状態変更指令が指令された場合でも個々を区別することができる。
【００４６】
このように、ＮＣ部プログラム再開ブロックデータとＰＭＣ部プログラム再開ブロックデータはそれぞれＮＣ部とＰＭＣ部のメモリに分かれて保存されるが、ＮＣ部とＰＭＣ部とで共通な前記識別番号との関連付けを行うことによって両者の対応付けが可能である。
【００４７】
＜請求項２＞
本発明の方式２（請求項２に対応）では、加工再開時、プログラム再開ブロックデータの一つを指定しプログラム再開機能を起動すると、ＰＭＣ部に対して信号状態および周辺機械部の状態を復元させるタイミングを通知するため、プログラム再開ブロックデータに付加された識別番号を出力する。ＰＭＣ部はこのタイミングで、その識別番号と合致するＰＭＣ部プログラム再開ブロックデータを使用して、信号状態および周辺機械部の状態を復元させ、復元が完了したことをＮＣ部に通知し、これを合図にＮＣ部は加工の再開を続行する。これにより、加工再開時、ＮＣ部とＰＭＣ部の両方についてワークの加工実行中と同じ状態に復元させてから加工を開始することが可能となる。
【００４８】
◎請求項２のＮＣ部加工再開一時中断手段の説明
加工を中断後、ＮＣ部に保存されているＮＣ部プログラム再開ブロックデータから一つを選択しプログラム再開機能を起動すると、ＮＣ部では加工再開すべきブロックをサーチし、そのブロックから運転ができるようにプログラムの実行ポインタやＧコードのモーダル情報等を整える。  
ＮＣ部加工再開一時中断手段は、この段階で加工再開の動作を一時中断し、ＰＭＣ部による信号状態の復元を行う状態に移行する。  
加工再開の動作の一時中断後、ＮＣ部再開時識別番号出力手段によりＰＭＣ部による信号状態の復元が開始される。
【００４９】
◎請求項２のＮＣ部再開時識別番号出力手段の説明
ＮＣ部再開時識別番号出力手段は、ＰＭＣ部に対して状態の復元のタイミングを通知する。ＮＣ部再開時識別番号出力手段は、前記ＮＣ部加工再開一時中断手段によって加工再開の動作を一時中断したときに起動され、プログラム再開機能の起動時に選択されたＮＣ部プログラム再開ブロックデータの識別番号をＰＭＣ部に通知する。この通知を受けたタイミングでＰＭＣ部信号状態復元手段が起動され、ＰＭＣ部での状態の復元が開始される。
【００５０】
前述のように、加工プログラム中に複数個の信号状態変更指令が指令されていた場合、ＰＭＣ部にも複数個のＰＭＣ部プログラム再開ブロックデータが保存されている。このため、ＰＭＣ部がＰＭＣ部プログラム再開ブロックデータを使用して加工再開のために信号状態を復元するには、複数あるＰＭＣ部プログラム再開ブロックデータのうちどれを使用すべきかをＰＭＣ部でも認識する必要がある。
【００５１】
すでに述べたように、ＮＣ部プログラム再開ブロックデータ（ＮＣ部に保存）とＰＭＣ部プログラム再開ブロックデータ（ＰＭＣ部に保存）には、共通な識別番号が付加されているので、ＮＣ部より前記識別番号をＰＭＣ部に通知すれば、それに対応したＰＭＣ部プログラム再開ブロックデータをＰＭＣ部でも得ることができる。
【００５２】
◎請求項２のＰＭＣ部信号状態復元手段の説明
ＰＭＣ部信号状態復元手段は、ＮＣ部再開時識別番号出力手段によってＮＣ部からＰＭＣ部に前記識別番号が通知されたことを合図にこれを参照し、同じ識別番号を持つＰＭＣ部プログラム再開ブロックデータを使用して信号状態および周辺機械部の状態を復元する。
【００５３】
◎請求項２のＰＭＣ部信号状態復元完了通知手段の説明
前記ＰＭＣ部信号状態復元手段により信号状態および周辺機械部の状態が復元されたら、そのことをＰＭＣ部信号状態復元完了通知手段によりＮＣ部に通知する。
【００５４】
◎請求項２のＮＣ部加工再開続行手段の説明
ＰＭＣ部信号状態復元完了通知手段からの通知を受けて、ＮＣ部加工再開続行手段が実行される。これにより、ＮＣ部加工再開一時中断手段によって一時中断されていた加工再開の動作が再開され、加工開始点への移動と加工プログラムの実行（実加工の開始）が起動される。
【００５５】
＜請求項３＞
本発明の方式３（請求項３に対応）は、方式１および方式２のＰＭＣ部の役割をＮＣ部に接続されたＰＬＣやコンピュータ等で行う方式である。請求項１におけるＰＭＣ部に代わり、その役割をＮＣ部に接続された外部のＰＬＣやコンピュータ等で行うようにしたものが請求項３である。
【００５６】
周辺機械部の制御をＰＭＣ部で行う場合、請求項１に記載のＮＣ部識別番号出力手段、ＮＣ部再開時識別番号出力手段、ＰＭＣ部信号状態復元完了通知手段では、ＮＣ部とＰＭＣ部間のインタフェース信号を使用して相互に通知を行うが、周辺機械部の制御をＮＣ部に接続された外部のＰＬＣやコンピュータ等で行う場合には、ＮＣ部−ＰＭＣ部間のインタフェース信号に代わりＥｔｈｅｒｎｅｔ（登録商標）等を経由した通信で通知を行う。
【符号の説明】
【００５７】
１００  数値制御装置
１０１  ＮＣ部
１０２  ＮＣ−ＣＰＵ
１０３  ＲＯＭ
１０４  不揮発性メモリ
１０５  揮発性メモリ
１０６  メモリ
１０７  インタフェース
１０８ｘ  ｘ軸軸制御回路
１０９ｘ  ｘ軸サーボアンプ
１１０ｘ  ｘ軸サーボモータ
１０８ｙ  ｙ軸軸制御回路
１０９ｙ  ｙ軸サーボアンプ
１１０ｙ  ｙ軸サーボモータ
１０８ｚ  ｚ軸軸制御回路
１０９ｚ  ｚ軸サーボアンプ
１１０ｚ  ｚ軸サーボモータ
１１１  スピンドル制御回路
１１２  スピンドルアンプ
１１３  スピンドルモータ
１１４  検出器
１１５  バス
１１６  表示器／手動入力手段ユニット
１２０  ＰＭＣ部
１２１  メモリ
１２２  不揮発性メモリ
１２３  揮発性メモリ
１２４  ＰＭＣ−ＣＰＵ
１２５  入出力インタフェース
１２６  ＲＯＭ
１２８  周辺機器部
２０１  字句解析
２０２  構文解析
２０３  意味解析
２０４  オブジェクトコード生成
２０５  非切削指令判別部
２０６  プログラム再開ブロックデータ取得部
２０７  ブロック実行部
３０１  字句解析
３０２  構文解析
３０３  意味解析
３０４  オブジェクトコード生成
３０５  非切削指令判別部
３０６  プログラム再開ブロックデータ取得部
３０７  ブロック実行部
３０８  識別番号生成部
３０９  ＮＣ部プログラム再開ブロックデータ識別番号保存手段
３１０  ＮＣ部識別番号出力手段
【図１】
2015053016.tif 000004
【図２】
2015053016.tif 000005
【図３】
2015053016.tif 000006
【図４】
2015053016.tif 000007
【図５】
2015053016.tif 000008
【図６】
2015053016.tif 000009