(57)【特許請求の範囲】
【請求項１】
複数のブロックで構成されたプログラムに従って、数値制御による機器の運転を行うとともに、
前記運転中のプログラムと同一のプログラムを編集することができるプログラム編集手段を有する数値制御装置であって、
前記運転中に、前記プログラム編集手段を実行する場合に、その時点で実行されているブロックである実行ブロックを検索するとともに、前記実行ブロックと関連づけられた所定の関連ブロックを検索する実行ブロック検索手段を備えることを特徴とする数値制御装置。
【請求項２】
前記実行ブロック検索手段は、前記ブロックに付された番号であるブロック番号に基づいて、前記実行ブロックを検索することを特徴とする前記請求項１に記載の数値制御装置。
【請求項３】
前記実行ブロック検索手段は、前記プログラム編集の開始に応じて検索を行うことを特徴とする前記請求項１又は２に記載の数値制御装置。
【請求項４】
前記関連ブロックを登録する関連ブロック登録手段を備えることを特徴とする前記請求項１〜３のいずれかに記載の数値制御装置。
【請求項５】
メインプログラムと、該メインプログラムからコールされるサブプログラムとから成り、複数のブロックで構成されたプログラムに従って、数値制御による機器の運転を行うとともに、
前記運転中のプログラムと同一のプログラムを編集することができるプログラム編集手段を有する数値制御装置であって、
前記運転中に、前記プログラム編集手段を実行する場合に、その時点で実行されているブロックである実行ブロックを、前記メインプログラム及びサブプログラムにそれぞれ付された番号であるプログラム番号と、前記ブロックに付された番号であるブロック番号とに基づいて、検索する実行ブロック検索手段を備えることを特徴とする数値制御装置。
【請求項６】
前記実行ブロック検索手段は、前記プログラム編集の開始に応じて検索を行うことを特徴とする前記請求項５に記載の数値制御装置。
【請求項７】
前記実行ブロック検索手段により検索された実行ブロックを表示する実行ブロック表示手段を備えることを特徴とする前記請求項５又は６に記載の数値制御装置。
【請求項８】
前記実行ブロック表示手段は、前記実行ブロックにカーソルを付して表示することを特徴とする前記請求項７に記載の数値制御装置。
【請求項９】
前記実行ブロック表示手段は、前記実行ブロックを、他のブロックとは異なる色で表示することを特徴とする前記請求項７又は８に記載の数値制御装置。
【請求項１０】
複数のブロックで構成されるプログラムを用いて、機器の運転を数値制御する数値制御方法であって、
前記運転中に、前記運転に用いるプログラムと同一のプログラムを編集することができるとともに、
前記運転中に、前記プログラムの編集を行う場合に、その時点で実行されているブロックである実行ブロックとともに、前記実行ブロックと関連づけられた所定の関連ブロックを検索することができることを特徴とする数値制御方法。
【請求項１１】
メインプログラムと、該メインプログラムからコールされるサブプログラムとから成り、複数のブロックで構成されたプログラムを用いて、機器の運転を数値制御する数値制御方法であって、
前記運転中に、前記運転に用いるプログラムと同一のプログラムを編集することができるとともに、
前記運転中に、前記プログラム編集手段を実行する場合に、その時点で実行されているブロックである実行ブロックを、前記メインプログラム及びサブプログラムにそれぞれ付された番号であるプログラム番号と、前記ブロックに付された番号であるブロック番号とに基づいて、検索することができることを特徴とする数値制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プログラムの変更を短時間で行うことができる数値制御装置及び数値制御方法に関する。
【０００２】
【従来の技術】
従来より、プログラムに従って、工作機械等の機器の運転を数値制御する数値制御装置が用いられてきた。
一般に、工作機械等の機器においては、本格的な加工を開始する前に、最適な運転条件（プログラムの設定）を定めるために、試し運転を行う。この試し運転では、プログラムをブロックごとに実行しながら、その時点で実行しているブロック（実行ブロック）のデータ（例えば穴深さや送り速度に関するパラメータ）を変更してゆく。
【０００３】
プログラムの実行ブロックを変更する場合、作業者は、ＣＲＴ等の表示装置に実行ブロックを表示し、キーボード等の入力手段を用いて、必要な変更を行う。
【０００４】
【発明が解決しようとする課題】
しかし、実行ブロックを変更しようとして、プログラムを表示装置に表示した場合、表示装置には、まず、プログラムのうち、一定の部分（例えば、プログラムの先頭部分）が表示され、実行ブロックは必ずしも表示されていない。
【０００５】
従って、作業者は、実行ブロックを、表示装置の画面をスクロールさせながら探さなければならないので、プログラムの変更に長時間を要するという問題があった。
また、１のブロックを修正する際に、それに伴って修正すべき他のブロックがある場合、作業者は、個々のブロックをそれぞれ、上記のようにして探さなければならないので、変更に要する時間が一層長くかかってしまうという問題があった。
【０００６】
本発明は以上の点に鑑みなされたものであり、プログラムの変更を短時間で行うことができる数値制御装置及び数値制御方法を提供することを目的とする。
【０００７】
【課題を解決するための手段及び発明の効果】
（１）請求項１の発明は、
複数のブロックで構成されたプログラムに従って、数値制御による機器の運転を行うとともに、前記運転中のプログラムと同一のプログラムを編集することができるプログラム編集手段を有する数値制御装置であって、前記運転中に、前記プログラム編集手段を実行する場合に、その時点で実行されているブロックである実行ブロックを検索するとともに、前記実行ブロックと関連づけられた所定の関連ブロックを検索する実行ブロック検索手段を備えることを特徴とする数値制御装置を要旨とする。
【０００８】
本発明の数値制御装置では、運転中に、その時点で実行されているブロックである実行ブロックを変更（編集）したい場合に、その実行ブロックを検索することができる。
そのことにより、本発明の数値制御装置では、プログラムの中から実行ブロックを探すことが容易であるので、運転中にプログラムの編集を行う場合の所要時間を短縮することができる。
また、本発明の数値制御装置は、実行ブロックを検索した場合に、その実行ブロックに基づいて、関連ブロックを検索することができるので、その関連ブロックを個別に探す必要がない。
そのため、プログラム編集に要する時間を一層短縮することができる。
・前記関連ブロックとは、プログラムにおいて、所定のブロックを変更する場合には、それに伴って、変更するべきブロックをいう。
【０００９】
・前記運転中とは、例えば、機器の運転に用いるプログラムの実行開始から、そのプログラムの実行終了までをいう。
（２）請求項２の発明は、
前記実行ブロック検索手段は、前記ブロックに付された番号であるブロック番号に基づいて、前記実行ブロックを検索することを特徴とする前記請求項１に記載の数値制御装置を要旨とする。
【００１０】
本発明の数値制御装置では、プログラムを構成するブロックごとに付された番号であるブロック番号に基づいて、実行ブロックを検索するので、実行ブロックを、確実且つ迅速に検索することができる。そのため、運転中にプログラムの編集を行う場合の所要時間を短縮することができる。
【００１１】
（３）請求項３の発明は、
前記実行ブロック検索手段は、前記プログラム編集の開始に応じて検索を行うことを特徴とする前記請求項１又は２に記載の数値制御装置を要旨とする。
【００１２】
本発明の数値制御装置では、プログラム編集の開始に応じて実行ブロックの検索を行うので、例えば、作業者の指示が無くとも、実行ブロックの検索が行われる。
そのため、本発明の数値制御装置は、実行ブロックを検索し、表示するまでの時間が一層短くて済み、それにともなって、運転中にプログラムの編集を行う場合の所要時間を一層短縮することができる。
【００１３】
【００１４】
（４）請求項４の発明は、
前記関連ブロックを登録する関連ブロック登録手段を備えることを特徴とする前記請求項１〜３のいずれかに記載の数値制御装置を要旨とする。
【００１５】
本発明の数値制御装置では、プログラムのうち、例えば、所定のブロックを変更する際には、それに伴って変更するブロックを、前記所定のブロックの関連ブロックとして、予め登録することができる。
そのことにより、前記所定のブロックを実行ブロックとして検索した際には、そこから、関連ブロックを検索することができ、関連ブロックを個別に探す必要がない。そのため、プログラム編集に要する時間を一層短縮することができる。
【００１６】
【００１７】
【００１８】
【００１９】
【００２０】
（５）請求項５の発明は、
メインプログラムと、該メインプログラムからコールされるサブプログラムとから成り、複数のブロックで構成されたプログラムに従って、数値制御による機器の運転を行うとともに、前記運転中のプログラムと同一のプログラムを編集することができるプログラム編集手段を有する数値制御装置であって、前記運転中に、前記プログラム編集手段を実行する場合に、その時点で実行されているブロックである実行ブロックを、前記メインプログラム及びサブプログラムにそれぞれ付された番号であるプログラム番号と、前記ブロックに付された番号であるブロック番号とに基づいて、検索する実行ブロック検索手段を備えることを特徴とする数値制御装置を要旨とする。
本発明の数値制御装置では、運転中に、その時点で実行されているブロックである実行ブロックを変更（編集）したい場合に、その実行ブロックを検索することができる。そのことにより、本発明の数値制御装置では、プログラムの中から実行ブロックを探すことが容易であるので、運転中にプログラムの編集を行う場合の所要時間を短縮することができる。
【００２１】
特に、本発明の数値制御装置は、プログラム番号とブロック番号とに基づいて実行ブロックを検索するので、例えば、メインプログラムとサブプログラムのいずれが実行されている場合でも（つまり、編集するプログラムがメインプログラム又はサブプログラムのいずれである場合にも）、実行ブロックを検索することができる。
【００２２】
そのことにより、作業者は、その時点でどのプログラムが実行されているかに依らず、常に実行ブロックを検索することができるので、プログラムの編集に要する時間を一層短縮することができる。
（６）請求項６の発明は、
前記実行ブロック検索手段は、前記プログラム編集の開始に応じて検索を行うことを特徴とする前記請求項５に記載の数値制御装置を要旨とする。
本発明の数値制御装置では、プログラム編集の開始に応じて実行ブロックの検索を行うので、例えば、作業者の指示が無くとも、実行ブロックの検索が行われる。
そのため、本発明の数値制御装置は、実行ブロックを検索し、表示するまでの時間が一層短くて済み、それにともなって、運転中にプログラムの編集を行う場合の所要時間を一層短縮することができる。
（７）請求項７の発明は、
前記実行ブロック検索手段により検索された実行ブロックを表示する実行ブロック表示手段を備えることを特徴とする前記請求項５又は６に記載の数値制御装置を要旨とする。
本発明の数値制御装置は、検索された実行ブロックを実行ブロック表示手段に表示することができる。そのことにより、作業者は、例えば、実行ブロック表示手段を見ながら、容易に実行ブロックを変更することができる。
・前記実行ブロック表示手段としては、例えば、ＣＲＴ、液晶ディスプレイ等がある。
（８）請求項８の発明は、
前記実行ブロック表示手段は、前記実行ブロックにカーソルを付して表示することを特徴とする前記請求項７に記載の数値制御装置を要旨とする。
本発明の数値制御装置では、実行ブロック表示手段において、実行ブロックにカーソルを付して表示するので、作業者は、実行ブロックを迅速且つ確実に認識することができる。
そのことにより、プログラムの編集に要する時間を短縮することができるとともに、作業者による入力ミス（例えば、実行ブロック以外のブロックを誤って変更してしまうこと）を防止できる。
（９）請求項９の発明は、
前記実行ブロック表示手段は、前記実行ブロックを、他のブロックとは異なる色で表示することを特徴とする前記請求項７又は８に記載の数値制御装置を要旨とする。
本発明の数値制御装置では、実行ブロック表示手段において、実行ブロックは他のブロックとは異なる色で表示されるので、作業者は、実行ブロックを迅速且つ確実に認識することができる。
そのことにより、プログラムの編集に要する時間を短縮することができるとともに、作業者による入力ミス（例えば、実行ブロック以外のブロックを誤って変更してしまうこと）を防止できる。
（１０）請求項１０の発明は、
複数のブロックで構成されるプログラムを用いて、機器の運転を数値制御する数値制御方法であって、前記運転中に、前記運転に用いるプログラムと同一のプログラムを編集することができるとともに、前記運転中に、前記プログラムの編集を行う場合に、その時点で実行されているブロックである実行ブロックとともに、前記実行ブロックと関連づけられた所定の関連ブロックを検索することができることを特徴とする数値制御方法を要旨とする。
【００２３】
本発明の数値制御方法では、運転中に実行ブロックを変更したい場合に、その実行ブロックを検索することができる。
そのことにより、本発明の数値制御方法では、プログラムの中から実行ブロックを探すことが容易であり、プログラムの編集に要する所要時間を短縮することができる。
また、本発明の数値制御方法では、実行ブロックを検索した場合に、その実行ブロックに基づいて、関連ブロックを検索することができるので、その関連ブロックを個別に探す必要がない。そのため、プログラム編集に要する時間を一層短縮することができる。
【００２４】
・本発明の数値制御方法では、例えば、ブロックに付された番号であるブロック番号に基づいて、実行ブロックを検索することができる。
・本発明の数値制御方法では、例えば、作業者の指示に応じて、実行ブロックを検索することができる。
【００２５】
・本発明の数値制御方法では、例えば、プログラム編集の開始に応じて、実行ブロックを検索することができる。
【００２６】
・本発明の数値制御方法は、例えば、前記関連ブロックを登録する関連ブロック登録手段を備えることができる。
・本発明の数値制御方法は、例えば、検索された実行ブロックを実行ブロック表示手段にて表示することができる。
【００２７】
・本発明の数値制御方法では、例えば、前記実行ブロック表示手段において、実行ブロックにカーソルを付して表示することができる。
本発明の数値制御方法では、例えば、前記実行ブロック表示手段において、実行ブロックを、他のプログラムのブロックとは異なる色で表示することができる。
【００２８】
・本発明の数値制御方法では、例えば、前記実行ブロック表示手段において、 プログラムのブロックを、実行される順番に並べて表示することができる。
・本発明の数値制御方法では、例えば、プログラムが、メインプログラムと、該メインプログラムからコールされるサブプログラムとから成るとともに、それらメインプログラム及びサブプログラムにそれぞれ付された番号であるプログラム番号と、前記ブロック番号とに基づいて、実行ブロックを検索することができる。
（１１）請求項１１の発明は、
メインプログラムと、該メインプログラムからコールされるサブプログラムとから成り、複数のブロックで構成されたプログラムを用いて、機器の運転を数値制御する数値制御方法であって、前記運転中に、前記運転に用いるプログラムと同一のプログラムを編集することができるとともに、前記運転中に、前記プログラム編集手段を実行する場合に、その時点で実行されているブロックである実行ブロックを、前記メインプログラム及びサブプログラムにそれぞれ付された番号であるプログラム番号と、前記ブロックに付された番号であるブロック番号とに基づいて、検索することができることを特徴とする数値制御方法を要旨とする。
本発明の数値制御方法では、運転中に実行ブロックを変更したい場合に、その実行ブロックを検索することができる。そのことにより、本発明の数値制御方法では、プログラムの中から実行ブロックを探すことが容易であり、プログラムの編集に要する所要時間を短縮することができる。
特に、本発明の数値制御方法では、プログラム番号とブロック番号とに基づいて実行ブロックを検索するので、例えば、メインプログラムとサブプログラムのいずれが実行されている場合でも（つまり、編集するプログラムがメインプログラム又はサブプログラムのいずれである場合にも）、実行ブロックを検索することができる。
そのことにより、作業者は、その時点でどのプログラムが実行されているかに依らず、常に実行ブロックを検索することができるので、プログラムの編集に要する時間を一層短縮することができる。
・本発明の数値制御方法では、例えば、ブロックに付された番号であるブロック番号に基づいて、実行ブロックを検索することができる。
・本発明の数値制御方法では、例えば、作業者の指示に応じて、実行ブロックを検索することができる。
・本発明の数値制御方法では、例えば、プログラム編集の開始に応じて、実行ブロックを検索することができる。
・本発明の数値制御方法では、例えば、実行ブロックを検索するとともに、実行ブロックと関連づけられた所定の関連ブロックを検索することができる。
・本発明の数値制御方法は、例えば、前記関連ブロックを登録する関連ブロック登録手段を備えることができる。
・本発明の数値制御方法は、例えば、検索された実行ブロックを実行ブロック表示手段にて表示することができる。
・本発明の数値制御方法では、例えば、前記実行ブロック表示手段において、実行ブロックにカーソルを付して表示することができる。
・本発明の数値制御方法では、例えば、前記実行ブロック表示手段において、実行ブロックを、他のプログラムのブロックとは異なる色で表示することができる。
・本発明の数値制御方法では、例えば、前記実行ブロック表示手段において、 プログラムのブロックを、実行される順番に並べて表示することができる。
【００２９】
【発明の実施の形態】
以下に本発明の数値制御装置及び数値制御方法の実施の形態の例（実施例）を説明する。
（参考例１）
ａ）本参考例１の数値制御装置は、プログラムに従って、機器の運転を数値制御することができるものである。この数値制御装置の構成を図１を用いて説明する。
【００３０】
本参考例１の数値制御装置は、ＣＰＵ１０を中心として、そのＣＰＵ１０にそれぞれ接続したＲＯＭ１１と、ＲＡＭ１２と、ＲＡＭ１３と、表示装置１４と、キーボード１５と、モータ（駆動装置）１６と、から成る。
上記ＣＰＵ１０は、機器の数値制御やプログラムの編集に必要な各種演算を実行する。
【００３１】
上記ＲＯＭ１１には、数値制御装置自体を制御するプログラムが記憶されている。
上記ＲＡＭ１２には、機器の数値制御に用いるプログラムであって、作業者が編集することができるもの（数値制御プログラム）が記憶されている。このＲＡＭ１２には、複数の数値制御プログラムを記憶することができ、運転時においては、選択して用いることができる。
【００３２】
上記ＲＡＭ１３には、運転中には、運転に用いている数値制御プログラムのプログラム番号、その時点で実行しているプログラムのブロックに付された番号であるブロック番号を記憶する。また、数値制御プログラムの編集中には、その数値制御プログラムのプログラム番号を記憶する。
【００３３】
上記表示装置１４は、運転中又は編集中の数値制御プログラムの内容を表示することができる。
上記キーボード１５は、数値制御プログラムの編集において、必要な情報を入力することができる。
【００３４】
上記モータ１６は、数値制御プログラムに従って動作し、研削装置等の機器の駆動源となる。
ｂ）次に、本参考例１の数値制御装置に用いられる数値制御プログラムの構造について説明する。
【００３５】
数値制御プログラムは、図２に示す様に、メインプログラムと、そのメインプログラムからコールされるサブプログラムから成る。また、サブプログラムは、更に、別のサブプログラムをコールするものであってもよい。
メインプログラム及びサブプログラムは、それぞれ、プログラム番号を付されている。図２に示す数値制御プログラムにおいては、メインプログラムのプログラム番号は０００１であり、そのメインプログラムからコールされるサブプログラムのプログラム番号は１２３４であり、そのサブプログラムから更にコールされるもう一つのサブプログラムのプログラム番号は２４６８である。
【００３６】
ｃ）次に、本参考例１の数値制御装置の動作の概略を説明する。
本参考例１の数値制御装置は、ＲＡＭ１２に記憶された数値制御プログラムに従って、モータ１６の動作（回転数、動作時間等）を数値制御することができる。従って、このモータ１６を、機器（例えば研削装置）の駆動モータとすることにより、本参考例１の数値制御装置は、その機器の運転を数値制御することができる。運転中においては、表示装置１４に、現在使用している数値制御プログラムが表示される。
【００３７】
また、この数値制御装置は、運転中に、その運転に使用している数値制御プログラム（運転プログラム）を表示装置１４に表示し、キーボード１５からの入力により、編集することができる（プログラム編集手段）。編集後の運転プログラムは、ＲＡＭ１２に上書きされ、それ以降は、編集後の運転プログラムに従って、機器の運転が数値制御される。
【００３８】
特に、本参考例１の数値制御装置では、運転中に運転プログラムの編集を行う場合に、その時点で実行されているブロック（実行ブロック）を検索し（実行ブロック検索手段）、その実行ブロックを表示装置１４に表示することができる（実行ブロック表示手段）。
【００３９】
尚、上記運転中とは、キーボード１５に設けられた起動キー（図示略）を押すことにより、運転プログラムの内容が実行され始めてから、その全てが終了するまでをいう。
ｄ）次に、本参考例１の数値制御装置において、運転プログラムを編集する時の処理を詳細に説明する。
【００４０】
(i)運転を開始する前に、作業者は、ＲＡＭ１２に記憶された数値制御プログラムの中から、運転に使用するもの（運転プログラム）を選択する。そして、その運転プログラムのメインプログラムのプログラム番号を、運転プログラム番号として、ＲＡＭ１３に記憶する。
【００４１】
(ii)運転を開始すると、前記(i)で選択した運転プログラムに従って、機器の数値制御が行われる。
運転時において（プログラム編集を行っていない場合は）、表示装置１４は、図３に示す様に、運転画面を表示する。
【００４２】
この運転画面には、画面上方に、運転プログラムのうち、その時点で実行されているプログラムのプログラム番号が表示される。具体的には、運転プログラムのうち、メインプログラムが実行されている時には、そのメインプログラムのプログラム番号が表示され、サブプログラムが実行されている時には、そのサブプログラムのプログラム番号が表示される。
【００４３】
また、画面中央には、運転プログラムのうち、その時点で実行されているプログラム（メインプログラム又はサブプログラム）の内容であって、実行ブロックを含む部分が表示される。
更に、運転画面では、実行ブロックの左側に、カーソル３２が表示される。
【００４４】
運転中においては、実行ブロックに付された番号（実行ブロック番号）が、ＲＡＭ１３に記憶される。この実行ブロック番号は、プログラムが進行するにつれて、次々に書き換えられる。
尚、運転プログラムの実行は、所定のキー入力をするごとに、１ブロックずつ進行するマニュアル運転と、一旦運転プログラムの実行が開始されると、自動的に次々とブロックが実行される自動運転のどちらでもよいが、運転プログラムの編集中に、実行ブロックが移動してしまわない点で、マニュアル運転の方が望ましい。
【００４５】
(iii)運転中に、運転プログラムの編集を行いたい場合は、キーボード１５の所定のキー（編集開始キー、図示略）を入力する。
すると、表示装置１４は、図４に示す様な、編集画面に切り替わる。この編集画面の画面上方には、運転プログラムのうち、編集開始キーを押した時点で実行されていたプログラム（編集プログラム）のプログラム番号（編集プログラム番号）を表示し、画面中央に、編集プログラムの内容のうち、先頭の部分を表示するとともに、画面下方に、コントロールキーの機能を表示する。
【００４６】
また、編集開始キー入力時に、ＲＡＭ１３には、編集プログラム番号が記憶される。
(iv)この編集画面において、作業者が実行ブロック検索キー３０を押すと（作業者の指示に応じて）、編集プログラムのうち、編集開始キー入力時点で実行されていた実行ブロックが検索され（実行ブロック検索手段）、表示装置１４には、編集プログラムのうち、その実行ブロックを中心とする部分の内容が表示される（実行ブロック表示手段）。この処理を図５のフローチャートを用いて説明する。
【００４７】
ステップ１００では、編集画面において、作業者が実行ブロック検索キー３０を押す。
ステップ１１０では、ＲＡＭ１３に記憶されている運転プログラム番号と、同じくＲＡＭ１３に記憶されている編集プログラム番号とが同じであるか否かを判断する。
【００４８】
つまり、運転プログラム番号は、上述したように、運転プログラムのうちのメインプログラムのプログラム番号であるので、このステップ１１０では、編集プログラムがメインプログラムであるか否かを判断する。
運転プログラム番号と編集プログラム番号とが同じであると判断した場合は、ステップ１２０に進み、同じでないと判断した場合は、ステップ１４０に進む。
【００４９】
ステップ１２０では、編集プログラムの先頭から、ＲＡＭ１３に記憶されている実行ブロック番号に基づいて、実行ブロックを検索する。
ステップ１３０では、編集プログラムのうち、実行ブロックを含む部分を、画面中央に表示し、カーソル３２を実行ブロックの先頭に表示する。また、実行ブロックは、他のブロックとは異なる色で表示する（実行ブロック表示手段）。
【００５０】
一方、前記ステップ１１０にて、運転プログラム番号と編集プログラム番号とが同じでないと判断した場合は、ステップ１４０に進み、「メインプログラムでないためサーチできません」というエラーメッセージを表示する。
(v)運転プログラムの編集の終了後、作業者が編集画面左下の編集終了キー４０（図３）を押すと、運転プログラムは、編集後の内容に書き換えられる。
【００５１】
そして、表示装置１４の表示は、図３の運転画面に戻り、それ以降は、編集後の運転プログラムに従って、機器の数値制御が行われる。
ｅ）次に、本参考例１の数値制御装置が奏する効果を説明する。
本参考例１の数値制御装置は、運転中に、運転プログラム中の実行ブロックの部分を編集したい場合に、実行ブロックを容易且つ迅速に検索し、表示することができる。
【００５２】
そのため、運転中に実行ブロックの部分を編集するための所要時間を短縮することができる。
（参考例２）
ａ）本参考例２の数値制御装置の構成は、前記参考例１の数値制御装置と同一である。尚、以下では、前記参考例１と同様の部分は記載を省略する。
【００５３】
ｂ）本参考例２の数値制御装置が実行する処理は、基本的には、前記参考例１の数値制御装置の処理とほぼ同じであるが、実行ブロック検索手段において異なる。以下具体的に説明する。
本参考例２の数値制御装置において、運転中に編集開始キーを押すと、表示装置１４は、編集画面に切り替わる。そして、この編集画面の画面中央には、編集プログラムのうち、実行ブロックを中心とする部分の内容が表示される（実行ブロック表示手段）。
【００５４】
つまり、この参考例２では、編集開始キーを押すと、直ちに（実行ブロック検索キー３０を押さなくても）、実行ブロック検索手段及び実行ブロック表示手段が実行される。つまり、プログラム編集の開始に応じて実行ブロック検索手段及び実行ブロック表示手段が実行される。
【００５５】
この本参考例２における実行ブロック検索手段及び実行ブロック表示手段の処理を、図６に示す。
ステップ２００において、編集開始キー（図示略）が押されると、実行ブロック検索手段及び実行ブロック表示手段が開始される。尚、以降のステップ２１０、ステップ２２０、ステップ２３０、ステップ２４０は、それぞれ、前記参考例１のステップ１１０、ステップ１２０、ステップ１３０、ステップ１４０と同様である。
【００５６】
ｃ）本参考例２の数値制御装置の奏する効果を説明する。
本参考例２の数値制御装置は、前記参考例１の数値制御装置と同様に、運転中に、運転プログラムの実行ブロックを編集する場合の所要時間を短縮することができる。
【００５７】
特に本参考例２では、編集開始キーを押して表示装置１４の表示を編集画面にすると、直ちに実行ブロック検索手段及び実行ブロック表示手段が実行されるので、一層、運転中に実行ブロックの部分を編集するための所要時間を短縮することができる。
（実施例１）
ａ）本実施例１の数値制御装置の構成は、前記参考例１の数値制御装置と同一である。尚、以下では、前記参考例１と同様の部分の記載は省略する。
【００５８】
ｂ）本実施例１の数値制御装置が実行する処理は、基本的には、前記参考例１の数値制御装置の処理とほぼ同じであるが、実行ブロック検索手段において相違点を有する。以下具体的に説明する。
本実施例１の数値制御装置では、前記参考例１と同様に、運転中に編集開始キー（図示略）を押すと、表示装置１４の表示は編集画面に切り替わる。この編集画面において、作業者がＦ１キー（実行ブロック検索キー３０）を押すと、編集プログラムのうち、編集開始キー入力時点で実行されていたブロック（実行ブロック）が検索され（実行ブロック検索手段）、表示装置１４には、編集プログラムのうち、その実行ブロックを中心とする部分の内容が表示される（実行ブロック表示手段）。
【００５９】
特に、本実施例１の数値制御装置では、運転プログラムのうち、サブプログラムが実行されている時に編集開始キーを押した場合でも、そのサブプログラムの中から、実行ブロックを検索することができる。
図７のフローチャートを用いて、本実施例１の数値制御装置における実行ブロック検索手段及び実行ブロック表示手段の処理を更に詳細に説明する。
【００６０】
ステップ３００では、編集画面において、作業者が実行ブロック検索キー３０を押す。
ステップ３１０では、ＲＡＭ１３に記憶されている編集プログラム番号と、同じくＲＡＭ１３に記憶されている実行ブロック番号とに基づいて、実行ブロックを検索する。
【００６１】
つまり、まず、編集プログラム番号に基づいて、編集プログラム（メインプログラム又はサブプログラム）を読み出し、次に、その編集プログラムの中から、実行ブロック番号に基づいて、実行ブロックを検索する。
ステップ３２０では、編集プログラムのうち、実行ブロックを含む部分を、画面中央に表示し、カーソルを実行ブロックの先頭に表示する。
【００６２】
ｃ）次に、本実施例１の数値制御装置が奏する効果を説明する。
本実施例１の数値制御装置は、前記参考例１の数値制御装置と同様に、運転中に、運転プログラムの実行ブロックの部分を編集する場合の所要時間を短縮することができる。
【００６３】
特に、本実施例１の数値制御装置は、編集プログラム番号と実行ブロック番号とに基づいて、実行ブロックを検索するので、編集プログラムがメインプログラムである場合だけではなく、サブプログラムである場合にも、実行ブロックを検索し、表示手段１４に表示することができる。そのため、運転中に運転プログラムを編集するための所要時間を一層短縮することができる。
（実施例２）
ａ）本実施例２の数値制御装置の構成は、前記参考例１の数値制御装置と同一である。尚、以下では、前記参考例１と同様の部分の記載は省略する。
【００６４】
ｂ）本実施例２の数値制御装置が実行する処理は、基本的には、前記参考例１の数値制御装置の処理とほぼ同じである。
(i)ただし、本実施例２では、予め、運転プログラムにおける所定のブロックの組み合わせを、被関連ブロック及び関連ブロックとして登録しておくことができる（関連ブロック登録手段）。
【００６５】
この被関連ブロック及び関連ブロックとは、被関連ブロックを実行ブロックとして検索し、表示した際には、そこから、関連ブロックを即座に表示することができるように設定されたブロックの組み合わせをいう。
被関連ブロック及び関連ブロックを登録する具体的な方法としては、まず、作業者が所定のキー（関連ブロック登録開始キー、図示略）を押す。すると、表示装置１４には、図８に示す関連ブロック登録画面が表示される。この画面において、作業者は、被関連ブロック及び関連ブロックのプログラム番号及びブロック番号をそれぞれ入力することにより、被関連ブロック及び関連ブロックを登録することができる。
【００６６】
尚、この登録は、数値制御装置の停止中、運転中、または編集中のいずれの時に行っても良い。また、被関連ブロックと関連ブロックとは、同一のプログラムに属しても、異なるプログラムに属してもよい。
(ii)作業者が、運転プログラムの編集において、上記のように登録しておいた被関連ブロックを、実行ブロックとして検索し、編集画面に表示した際には、図９に示すように、編集画面の右下に、関連ブロック表示キー３４が表示される。
【００６７】
この関連ブロック表示キー３４を押すと、その被関連ブロック（実行ブロック）に対応する関連ブロックとその前後のブロックが編集画面に表示される（関連ブロックが検索される）。登録しておいた関連ブロックが複数ある場合には、関連ブロック表示キー３４を押す度に、次の関連ブロックに表示が切り替わる。
【００６８】
作業者は、上記のようにして呼び出された関連ブロックを、キーボード１５を用いて変更することができる。
ｃ）本実施例２の数値制御装置の奏する効果を説明する。
本実施例２の数値制御装置は、前記参考例１の数値制御装置と同様に、運転中に運転プログラムの実行ブロックの部分を編集する場合の所要時間を短縮することができる。
【００６９】
特に、本実施例２の数値制御装置では、被関連ブロックを実行ブロックとして表示した状態から、容易に、それに関連する関連ブロックを呼び出すことができる。従って、例えば、運転プログラムのうち、互いに関連があるブロック（一方のブロックを変更すれば、それにともなって他方のブロックも変更する関係にあるブロック）を、予め、被関連ブロックと関連ブロックとして登録しておけば、被関連ブロックを変更した際に、続けて関連ブロックを呼び出し、変更することができるので、運転プログラムの編集に要する時間を一層短縮できる。
（参考例３）
ａ）本参考例３の数値制御装置の構成は、前記参考例１の数値制御装置と同一である。尚、以下では、前記参考例１と同様の部分の記載は省略する。
【００７０】
ｂ）本参考例３の数値制御装置が実行する処理は、基本的には、前記参考例１の数値制御装置の処理とほぼ同じである。
ただし、本参考例３の数値制御では、編集画面において、図１０に示す様に、順番表示キー３６が表示される。
【００７１】
この順番表示キー３６を押すと、編集画面には、実際に処理される順序で、編集プログラムのブロックが表示される。つまり、編集プログラムのブロックが、編集プログラムに含まれる論理判断（ＩＦ、ＴＨＥＮ）や、特定のブロックへのジャンプの指示（ＧＯＴＯ）等に従いながら、実際に処理される順番に、上から下へと表示される（実行順番表示機能）。
【００７２】
また、順番表示キー３６を再度押すと、編集プログラムのブロックが通常の順序で表示された状態に戻る。
ｃ）本参考例３の数値制御装置の奏する効果を説明する。
本参考例３の数値制御装置は、前記参考例１の数値制御装置と同様に、運転中に、運転プログラムの実行ブロックの部分を編集する場合の所要時間を短縮することができる。
【００７３】
特に、本参考例３の数値制御装置は、編集画面において、編集プログラムのブロックを実行順に表示することができるので、作業者は、編集プログラムを容易に理解することができ、編集時間を短縮することができる。また、編集における入力ミスを減少させることもできる。
【００７４】
尚、本発明は上記の形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲で種々の形態で実施することができる。
・前記実施例１〜２、参考例１〜３の数値制御装置において、数値制御プログラムは、メインプログラムのみから構成されるものであってもよい。
【００７５】
・前記実施例１〜２、参考例１〜３の数値制御装置は、運転プログラム以外の数値制御プログラムを編集できるものとすることができる。例えば、作業者が、運転中に、キーボード入力により所望の数値制御プログラム（運転プログラム以外の数値制御プログラムを含む）を指定し、その数値制御プログラムを編集できるものとすることができる。
【図面の簡単な説明】
【図１】  参考例１の数値制御装置の構成を示す説明図である。
【図２】  参考例１における数値制御プログラムの構造を示す説明図である。
【図３】  参考例１における運転画面を示す説明図である。
【図４】  参考例１における編集画面を示す説明図である。
【図５】  参考例１における実行ブロック検索手段及び実行ブロック表示手段の処理を示すフロー図である。
【図６】  参考例２における実行ブロック検索手段及び実行ブロック表示手段の処理を示すフロー図である。
【図７】  実施例１における実行ブロック検索手段及び実行ブロック表示手段の処理を示すフロー図である。
【図８】  実施例２における関連ブロック登録画面を示す説明図である。
【図９】  実施例２における編集画面を示す説明図である。
【図１０】  参考例３における編集画面を示す説明図である。
【符号の説明】
１０・・・ＣＰＵ
１１・・・ＲＯＭ
１２、１３・・・ＲＡＭ
１４・・・表示装置
１５・・・キーボード
１６・・・モータ
３０・・・実行ブロック検索キー
３２・・・カーソル
３４・・・関連ブロック表示キー
３６・・・順番表示キー
４０・・・編集終了キー
【図１】
0003873773.tif 000002
【図２】
0003873773.tif 000003
【図３】
0003873773.tif 000004
【図４】
0003873773.tif 000005
【図５】
0003873773.tif 000006
【図６】
0003873773.tif 000007
【図７】
0003873773.tif 000008
【図８】
0003873773.tif 000009
【図９】
0003873773.tif 000010
【図１０】
0003873773.tif 000011