(57)【特許請求の範囲】
【請求項１】
工作機械に装着可能な工具の工具情報を取得し、
前記工作機械を制御するための加工プログラムのプログラムコードを表示するプログラム編集画面と、それぞれが前記工具の前記工具情報と前記工具の制御方法とを選択可能に表示する少なくとも１つの補助画面とを並べて表示し、
前記プログラムコード中において、新たにコードを挿入する挿入箇所を指定し、
前記少なくとも１つの補助画面において前記工具情報と前記制御方法のいずれが表示されても、前記少なくとも１つの補助画面に表示されている情報のうちの少なくとも１つの情報が選択されると、前記少なくとも１つの情報に対応する命令を前記プログラムコードの前記挿入箇所に挿入する、
工作機械の加工プログラムの編集方法。
【請求項２】
前記少なくとも１つの補助画面に表示する情報を、前記工具情報、前記制御方法、並びに、前記工具情報及び前記制御情報以外の他の情報の中から選択するために、前記工具情報、前記制御方法、並びに、前記他の情報に対応する項目を同じウィンドウの内部に表示した表示情報選択画面をさらに表示し、
前記表示情報選択画面において選択された表示情報を前記少なくとも１つの補助画面に表示する、
請求項１に記載の工作機械の加工プログラムの編集方法。
【請求項３】
前記少なくとも１つの補助画面として、第１補助画面と第２補助画面とを表示し、
前記第１補助画面と前記第２補助画面とのいずれかを指定するための切替設定画面を表示し、
前記切替設定画面にて指定された補助画面に、前記表示情報選択画面において選択された前記表示情報を表示する、
請求項２に記載の工作機械の加工プログラムの編集方法。
【請求項４】
前記他の情報は、前記プログラムコードにおいて規定するマクロ変数、及び、プログラミングにおいて利用される文字セットの少なくとも１つを含む、
請求項２または３に記載の工作機械の加工プログラムの編集方法。
【請求項５】
前記制御方法はＧコードと、Ｇコード以外のカスタマイズドコードとを含み、
前記少なくとも１つの補助画面のうちの１つの補助画面に、前記Ｇコードと前記カスタマイズドコードとのいずれか一方のコードを表示する、
、請求項１から４のいずれかに記載の工作機械の加工プログラムの編集方法。
【請求項６】
前記１つの補助画面に、ＥＯＢを入力するためのキーボタンをさらに表示する、請求項５に記載の工作機械の加工プログラムの編集方法。
【請求項７】
前記工具情報は、前記工具に対応するＴ番号、前記工具の名称、前記工具の寸法、並びに、切削加工における誤差を補正するためのパラメータの少なくとも１つを含む、請求項１から６のいずれかに記載の工作機械の加工プログラムの編集方法。
【請求項８】
前記工具情報は前記プログラムコード中のＴ番号に関連づけされる第１工具情報と、前記プログラムコード中のＨ番号とＤ番号とのうちの少なくとも１つに関連づけられる第２工具情報とを含み、
前記少なくとも１つの補助画面のうちの１つの補助画面に、前記第１工具情報と前記第２工具情報とのいずれか一方を表示する、
、請求項１から７のいずれかに記載の工作機械の加工プログラムの編集方法。
【請求項９】
前記第１工具情報は前記工具の使用により累積した累積摩耗量を含む、請求項８に記載の工作機械の加工プログラムの編集方法。
【請求項１０】
前記第１工具情報を表示する補助画面に、Ｍ０６指令を前記プログラムコードに入力するためのＭ０６指令入力ボタンをさらに表示する、請求項８または９に記載の工作機械の加工プログラムの編集方法。
【請求項１１】
前記第１工具情報を表示する補助画面に、前記工具を指定しないＴ番号を前記プログラムコードに入力するためのＴ００入力ボタンをさらに表示する、請求項８から１０のいずれかに記載の工作機械の加工プログラムの編集方法。
【請求項１２】
前記第２工具情報は、工具長補正を行うためのパラメータ、工具径補正を行うためのパラメータ、ノーズＲ補正を行うためのパラメータのいずれかであって、
前記第２工具情報を表示する補助画面に、前記第２工具情報と関連付けられた参照番号と、前記参照番号を前記プログラムコード中にＨ番号として入力するためのＨ番号入力ボタンと、前記参照番号を前記プログラムコード中にＤ番号として入力するためのＤ番号入力ボタンと、をさらに表示し、
前記第２工具情報を表示する補助画面において前記参照番号が指定された状態で、前記Ｈ番号入力ボタンが操作されると、前記プログラムコード中の前記挿入箇所に前記参照番号を含むＨ番号を挿入し、
前記第２工具情報を表示する補助画面において前記参照番号が指定された状態で、前記Ｄ番号入力ボタンが操作されると、前記プログラムコード中の前記挿入箇所に前記参照番号を含むＤ番号を挿入する、
請求項８から１１のいずれかに記載の工作機械の加工プログラムの編集方法。
【請求項１３】
前記プログラム編集画面と、前記少なくとも１つの補助画面は、１つのディスプレイ中に表示される、請求項１から１２のいずれかに記載の工作機械の加工プログラムの編集方法。
【請求項１４】
工作機械に装着可能な工具の工具情報を記憶するメモリと、
前記工作機械を制御するための加工プログラムのプログラムコードを表示するプログラム編集画面と、それぞれが前記工具の前記工具情報と前記工具の制御方法とを選択可能に表示する少なくとも１つの補助画面とを並べて表示する少なくとも１つのディスプレイと、
前記プログラムコード中に新たにコードを挿入する挿入箇所を指定するためのインタフェースと、
前記少なくとも１つの補助画面において前記工具情報と前記制御方法のいずれが表示されても、前記少なくとも１つの補助画面に表示されている情報のうちの少なくとも１つの情報が選択されると、前記少なくとも１つの情報に対応する命令を前記プログラムコードの前記挿入箇所に挿入するプロセッサと、
を備える工作機械。
【請求項１５】
工作機械に装着可能な工具の工具情報を取得し、
前記工作機械を制御するための加工プログラムのプログラムコードを表示するプログラム編集画面と、それぞれが前記工具の前記工具情報と前記工具の制御方法とを選択可能に表示する少なくとも１つの補助画面とを並べて表示し、
前記プログラムコード中において、新たにコードを挿入する挿入箇所を指定し、
前記少なくとも１つの補助画面において前記工具情報と前記制御方法のいずれが表示されても、前記少なくとも１つの補助画面に表示されている情報のうちの少なくとも１つの情報が選択されると、前記少なくとも１つの情報に対応する命令を前記プログラムコードの前記挿入箇所に挿入する、
処理を実行する、工作機械の加工プログラム編集のためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械、工作機械の加工プログラム編集方法、及び工作機械の加工プログラム編集のためのプログラムに関する。
【背景技術】
【０００２】
特許文献１は、プログラムと補助画面を近接して表示し、タッチ操作で補助画面のデータをプログラムに反映させる加工プログラム編集装置を開示している。特許文献２は、補助画面にプログラムに入力可能なコードのＧＵＩ（グラフィックユーザインタフェース）画面を表示し、ＧＵＩ画面にて選択されたコードをプログラムコードに挿入することが可能なＮＣ (Numerically Controlled) プログラム入力装置を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１１１５１６号公報
【特許文献２】特開２０１０−００３１８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本願に開示される技術の課題は、工作機械の加工プログラムの編集に必要なコードを、プログラマが見つけることを容易にすることである。
【課題を解決するための手段】
【０００５】
本開示の第１態様に係る工作機械の加工プログラム編集方法は、工作機械に装着可能な工具の工具情報を取得し、工作機械を制御するための加工プログラムのプログラムコードを表示するプログラム編集画面と、工具の工具情報と工具の制御方法とのうち少なくとも１つを表示する少なくとも１つの補助画面とを並べて表示し、プログラムコード中において、新たにコードを挿入する挿入箇所を指定し、少なくとも１つの補助画面において、工具情報と制御方法とのうちの少なくとも１つの情報が選択されると、少なくとも１つの情報に対応する命令をプログラムコードの挿入箇所に挿入する。【０００６】
本開示の第２態様によれば、第１態様による工作機械の加工プログラム編集方法は、少なくとも１つの補助画面に表示する情報を、工具情報、制御方法、並びに、工具情報及び制御情報以外の他の情報の中から選択するための表示情報選択画面をさらに表示し、表示情報選択画面において選択された表示情報を少なくとも１つの補助画面に表示する。【０００７】
本開示の第３態様によれば、第１態様または第２態様による工作機械の加工プログラム編集方法は、少なくとも１つの補助画面として、第１補助画面と第２補助画面とを表示し、第１補助画面と第２補助画面とのいずれかを指定するための切替設定画面を表示し、切替設定画面にて指定された補助画面に、表示情報選択画面において選択された表示情報を表示する。【０００８】
本開示の第４態様によれば、第２態様または第３態様による工作機械の加工プログラム編集方法は、他の情報は、プログラムコードにおいて規定するマクロ変数、及び、プログラミングにおいて利用される文字セットの少なくとも１つを含むように構成される。【０００９】
本開示の第５態様によれば、第４態様による工作機械の加工プログラム編集方法は、文字セットは、数学関数を規定する関数コード、外部出力コマンド、及び演算子の少なくとも１つを含むように構成される。【００１０】
本開示の第６態様によれば、第４態様または第５態様による工作機械の加工プログラム編集方法は、文字セットを表示する補助画面に、文字セットと組み合わせて利用される記号の入力ボタンをさらに表示する。【００１１】
本開示の第７態様によれば、第１態様から第６態様のいずれかによる工作機械の加工プログラム編集方法は、制御方法はＧコードと、Ｇコード以外のカスタマイズドコードとを含むように構成され、当該加工プログラム編集方法は、少なくとも１つの補助画面のうちの１つの補助画面に、Ｇコードとカスタマイズドコードとのいずれか一方のコードを表示する。【００１２】
本開示の第８態様によれば、第７態様による工作機械の加工プログラム編集方法は、１つの補助画面に、いずれか一方のコードの制御内容をさらに表示する。【００１３】
本開示の第９態様によれば、第７態様または第８態様による工作機械の加工プログラム編集方法は、１つの補助画面に、ＥＯＢを入力するためのキーボタンをさらに表示する。【００１４】
本開示の第１０態様によれば、第１態様から第９態様のいずれかによる工作機械の加工プログラム編集方法は、工具情報は、工具に対応するＴ番号、工具の名称、工具の寸法、並びに、切削加工における誤差を補正するためのパラメータの少なくとも１つを含むように構成される。【００１５】
本開示の第１１態様によれば、第１０態様による工作機械の加工プログラム編集方法は、工具情報は、工具の使用により累積した累積摩耗量をさらに含むように構成される。【００１６】
本開示の第１２態様によれば、第１０態様または第１１態様による工作機械の加工プログラム編集方法は、切削加工における誤差を補正するためのパラメータは、工具長補正を行うためのパラメータ、工具径補正を行うためのパラメータ、及びノーズＲ補正を行うためのパラメータの少なくとも１つを含むように構成される。【００１７】
本開示の第１３態様によれば、第１態様から第１２態様のいずれかによる工作機械の加工プログラム編集方法は、工具情報はプログラムコード中のＴ番号に関連づけされる第１工具情報と、プログラムコード中のＨ番号とＤ番号とのうちの少なくとも１つに関連づけられる第２工具情報とを含むように構成される。当該加工プログラム編集方法は、少なくとも１つの補助画面のうちの１つの補助画面に、第１工具情報と第２工具情報とのいずれか一方を表示する。【００１８】
本開示の第１４態様によれば、第１３態様による工作機械の加工プログラム編集方法は、第１工具情報は工具の使用により累積した累積摩耗量を含むように構成される。【００１９】
本開示の第１５態様によれば、第１３態様または第１４態様による工作機械の加工プログラム編集方法は、第１工具情報を表示する補助画面に、Ｍ０６指令をプログラムコードに入力するためのＭ０６指令入力ボタンをさらに表示する。【００２０】
本開示の第１６態様によれば、第１３態様から第１５態様のいずれかによる工作機械の加工プログラム編集方法は、第１工具情報を表示する補助画面に、工具を指定しないＴ番号をプログラムコードに入力するためのＴ００入力ボタンをさらに表示する。【００２１】
本開示の第１７態様によれば、第１３態様から第１６態様のいずれかによる工作機械の加工プログラム編集方法は、第２工具情報は、工具長補正を行うためのパラメータ、工具径補正を行うためのパラメータ、ノーズＲ補正を行うためのパラメータのいずれかであるように構成される。当該加工プログラム編集方法は、第２工具情報を表示する補助画面に、第２工具情報と関連付けられた参照番号と、参照番号をプログラムコード中にＨ番号として入力するためのＨ番号入力ボタンと、参照番号をプログラムコード中にＤ番号として入力するためのＤ番号入力ボタンと、をさらに表示し、第２工具情報を表示する補助画面において参照番号が指定された状態で、Ｈ番号入力ボタンが操作されると、プログラムコード中の挿入箇所に参照番号を含むＨ番号を挿入し、第２工具情報を表示する補助画面において参照番号が指定された状態で、Ｄ番号入力ボタンが操作されると、プログラムコード中の挿入箇所に参照番号を含むＤ番号を挿入する。【００２２】
本開示の第１８態様によれば、第１態様から第１７態様のいずれかによる工作機械の加工プログラム編集方法は、プログラム編集画面と、少なくとも１つの補助画面は、１つのディスプレイ中に表示される。【００２３】
本開示の第１９態様に係る工作機械は、工作機械に装着可能な工具の工具情報を保存するメモリと、工作機械を制御するための加工プログラムのプログラムコードを表示するプログラム編集画面と、工具の工具情報と工具の制御方法とのうちの少なくとも１つを表示する少なくとも１つの補助画面とを並べて表示する少なくとも１つのディスプレイと、プログラムコード中に新たにコードを挿入する挿入箇所を指定するためのインタフェースと、少なくとも１つの補助画面において、工具情報と制御方法とのうちの少なくとも１つの情報が選択されると、少なくとも１つの情報に対応する命令をプログラムコードの挿入箇所に挿入するプロセッサと、を備える。【００２４】
本開示の第２０態様によれば、第１９態様に係る工作機械は、ディスプレイが、少なくとも１つの補助画面に表示する情報を、工具情報、制御方法、並びに、工具情報及び制御情報以外の他の情報の中から選択するための表示情報選択画面をさらに表示し、表示情報選択画面において選択された表示情報を少なくとも１つの補助画面に表示するように構成されている。【００２５】
本開示の第２１態様によれば、第１９態様または第２０態様による工作機械は、少なくとも１つの補助画面として、ディスプレイが、第１補助画面と第２補助画面とを表示し、第１補助画面と第２補助画面とのいずれかを指定するための切替設定画面を表示し、切替設定画面にて指定された補助画面に、表示情報選択画面において選択された表示情報を表示するように構成されている。【００２６】
本開示の第２２態様によれば、第２０態様または第２１態様による工作機械は、他の情報は、プログラムコードにおいて規定するマクロ変数、及び、プログラミングにおいて利用される文字セットの少なくとも１つを含むように構成される。【００２７】
本開示の第２３態様によれば、第２２態様による工作機械は、文字セットは、数学関数を規定する関数コード、外部出力コマンド、及び演算子の少なくとも１つを含むように構成される。【００２８】
本開示の第２４態様によれば、第２２態様または第２３態様による工作機械は、ディスプレイが、文字セットを表示する補助画面に、文字セットと組み合わせて利用される記号の入力ボタンをさらに表示するように構成される。【００２９】
本開示の第２５態様によれば、第１９態様から第２４態様のいずれかによる工作機械は、制御方法はＧコードと、Ｇコード以外のカスタマイズドコードとを含むように構成され、当該工作機械は、ディスプレイが、少なくとも１つの補助画面のうちの１つの補助画面に、Ｇコードとカスタマイズドコードとのいずれか一方のコードを表示するように構成される。【００３０】
本開示の第２６態様によれば、第２５態様による工作機械は、ディスプレイが１つの補助画面に、いずれか一方のコードの制御内容をさらに表示するように構成される。【００３１】
本開示の第２７態様によれば、第２５態様または第２６態様による工作機械は、ディスプレイが１つの補助画面に、ＥＯＢを入力するためのキーボタンをさらに表示するように構成される。【００３２】
本開示の第２８態様によれば、第１９態様から第２７態様のいずれかによる工作機械は、工具情報は、工具に対応するＴ番号、工具の名称、工具の寸法、並びに、切削加工における誤差を補正するためのパラメータの少なくとも１つを含むように構成される。【００３３】
本開示の第２９態様によれば、第２８態様による工作機械は、工具情報は、工具の使用により累積した累積摩耗量をさらに含むように構成される。【００３４】
本開示の第３０態様によれば、第２８態様または第２９態様による工作機械は、切削加工における誤差を補正するためのパラメータは、工具長補正を行うためのパラメータ、工具径補正を行うためのパラメータ、及びノーズＲ補正を行うためのパラメータの少なくとも１つを含むように構成される。【００３５】
本開示の第３１態様によれば、第１９態様から第３０態様のいずれかによる工作機械は、工具情報はプログラムコード中のＴ番号に関連づけされる第１工具情報と、プログラムコード中のＨ番号とＤ番号とのうちの少なくとも１つに関連づけられる第２工具情報とを含むように構成される。当該工作機械は、少なくとも１つの補助画面のうちの１つの補助画面に、第１工具情報と第２工具情報とのいずれか一方を表示するように構成される。【００３６】
本開示の第３２態様によれば、第３１態様による工作機械は、第１工具情報は工具の使用により累積した累積摩耗量を含むように構成される。【００３７】
本開示の第３３態様によれば、第３１態様または第３２態様による工作機械は、ディスプレイが第１工具情報を表示する補助画面に、Ｍ０６指令をプログラムコードに入力するためのＭ０６指令入力ボタンをさらに表示するように構成される。【００３８】
本開示の第３４態様によれば、第３１態様から第３３態様のいずれかによる工作機械は、ディスプレイが第１工具情報を表示する補助画面に、工具を指定しないＴ番号をプログラムコードに入力するためのＴ００入力ボタンをさらに表示するように構成される。【００３９】
本開示の第３５態様によれば、第３１態様から第３４態様のいずれかによる工作機械は、第２工具情報は、工具長補正を行うためのパラメータ、工具径補正を行うためのパラメータ、ノーズＲ補正を行うためのパラメータのいずれかであるように構成される。当該工作機械は、ディスプレイが第２工具情報を表示する補助画面に、第２工具情報と関連付けられた参照番号と、参照番号をプログラムコード中にＨ番号として入力するためのＨ番号入力ボタンと、参照番号をプログラムコード中にＤ番号として入力するためのＤ番号入力ボタンと、をさらに表示するように構成され、プロセッサが第２工具情報を表示する補助画面において参照番号が指定された状態で、Ｈ番号入力ボタンが操作されると、プログラムコード中の挿入箇所に参照番号を含むＨ番号を挿入し、第２工具情報を表示する補助画面において参照番号が指定された状態で、Ｄ番号入力ボタンが操作されると、プログラムコード中の挿入箇所に参照番号を含むＤ番号を挿入するように構成される。【００４０】
本開示の第３６態様によれば、第１９態様から第３５態様のいずれかによる工作機械は、プログラム編集画面と、少なくとも１つの補助画面は、同じディスプレイ中に表示されるように構成される。【００４１】
本開示の第３７態様に係る工作機械の加工プログラム編集のためのプログラムは、工作機械に装着可能な工具の工具情報を取得し、工作機械を制御するための加工プログラムのプログラムコードを表示するプログラム編集画面と、工具の工具情報と工具の制御方法とのうち少なくとも１つを表示する少なくとも１つの補助画面とを並べて表示し、プログラムコード中において、新たにコードを挿入する挿入箇所を指定し、少なくとも１つの補助画面において、工具情報と制御方法とのうちの少なくとも１つの情報が選択されると、少なくとも１つの情報に対応する命令をプログラムコードの挿入箇所に挿入する、処理を実行する。【００４２】
本開示の第３８態様によれば、第３７態様による工作機械の加工プログラム編集のためのプログラムは、少なくとも１つの補助画面に表示する情報を、工具情報、制御方法、並びに、工具情報及び制御情報以外の他の情報の中から選択するための表示情報選択画面をさらに表示し、表示情報選択画面において選択された表示情報を少なくとも１つの補助画面に表示する処理を実行する。【００４３】
本開示の第３９態様によれば、第３７態様または第３８態様による工作機械の加工プログラム編集のためのプログラムは、少なくとも１つの補助画面として、第１補助画面と第２補助画面とを表示し、第１補助画面と第２補助画面とのいずれかを指定するための切替設定画面を表示し、切替設定画面にて指定された補助画面に、表示情報選択画面において選択された表示情報を表示する処理を実行する。【００４４】
本開示の第４０態様によれば、第３８態様または第３９態様による工作機械の加工プログラム編集のためのプログラムは、他の情報は、プログラムコードにおいて規定するマクロ変数、及び、プログラミングにおいて利用される文字セットの少なくとも１つを含むように構成される。【００４５】
本開示の第４１態様によれば、第４０態様による工作機械の加工プログラム編集のためのプログラムは、文字セットは、数学関数を規定する関数コード、外部出力コマンド、及び演算子の少なくとも１つを含むように構成される。【００４６】
本開示の第４２態様によれば、第４０態様または第４１態様による工作機械の加工プログラム編集のためのプログラムは、文字セットを表示する補助画面に、文字セットと組み合わせて利用される記号の入力ボタンをさらに表示する処理を実行する。【００４７】
本開示の第４３態様によれば、第３７態様から第４２態様のいずれかによる工作機械の加工プログラム編集のためのプログラムは、制御方法はＧコードと、Ｇコード以外のカスタマイズドコードとを含むように構成され、当該加工プログラム編集のためのプログラムは、少なくとも１つの補助画面のうちの１つの補助画面に、Ｇコードとカスタマイズドコードとのいずれか一方のコードを表示する処理を実行する。【００４８】
本開示の第４４態様によれば、第４３態様による工作機械の加工プログラム編集のためのプログラムは、１つの補助画面に、いずれか一方のコードの制御内容をさらに表示する処理を実行する。【００４９】
本開示の第４５態様によれば、第４３態様または第４４態様による工作機械の加工プログラム編集のためのプログラムは、１つの補助画面に、ＥＯＢを入力するためのキーボタンをさらに表示する処理を実行する。【００５０】
本開示の第４６態様によれば、第３７態様から第４５態様のいずれかによる工作機械の加工プログラム編集のためのプログラムは、工具情報は、工具に対応するＴ番号、工具の名称、工具の寸法、並びに、切削加工における誤差を補正するためのパラメータの少なくとも１つを含むように構成される。【００５１】
本開示の第４７態様によれば、第４６態様による工作機械の加工プログラム編集のためのプログラムは、工具情報は、工具の使用により累積した累積摩耗量をさらに含むように構成される。【００５２】
本開示の第４８態様によれば、第４６態様または第４７態様による工作機械の加工プログラム編集のためのプログラムは、切削加工における誤差を補正するためのパラメータは、工具長補正を行うためのパラメータ、工具径補正を行うためのパラメータ、及びノーズＲ補正を行うためのパラメータの少なくとも１つを含むように構成される。【００５３】
本開示の第４９態様によれば、第３７態様から第４８態様のいずれかによる工作機械の加工プログラム編集のためのプログラムは、工具情報はプログラムコード中のＴ番号に関連づけされる第１工具情報と、プログラムコード中のＨ番号とＤ番号とのうちの少なくとも１つに関連づけられる第２工具情報とを含むように構成される。当該加工プログラム編集のためのプログラムは、少なくとも１つの補助画面のうちの１つの補助画面に、第１工具情報と第２工具情報とのいずれか一方を表示する処理を実行する。【００５４】
本開示の第５０態様によれば、第４９態様による工作機械の加工プログラム編集のためのプログラムは、第１工具情報は工具の使用により累積した累積摩耗量を含むように構成される。【００５５】
本開示の第５１態様によれば、第４９態様または第５０態様による工作機械の加工プログラム編集のためのプログラムは、第１工具情報を表示する補助画面に、Ｍ０６指令をプログラムコードに入力するためのＭ０６指令入力ボタンをさらに表示する処理を実行する。【００５６】
本開示の第５２態様によれば、第４９態様から第５１態様のいずれかによる工作機械の加工プログラム編集のためのプログラムは、第１工具情報を表示する補助画面に、工具を指定しないＴ番号をプログラムコードに入力するためのＴ００入力ボタンをさらに表示する処理を実行する。【００５７】
本開示の第５３態様によれば、第４９態様から第５２態様のいずれかによる工作機械の加工プログラム編集のためのプログラムは、第２工具情報は、工具長補正を行うためのパラメータ、工具径補正を行うためのパラメータ、ノーズＲ補正を行うためのパラメータのいずれかであるように構成される。当該加工プログラム編集のためのプログラムは、第２工具情報を表示する補助画面に、第２工具情報と関連付けられた参照番号と、参照番号をプログラムコード中にＨ番号として入力するためのＨ番号入力ボタンと、参照番号をプログラムコード中にＤ番号として入力するためのＤ番号入力ボタンと、をさらに表示し、第２工具情報を表示する補助画面において参照番号が指定された状態で、Ｈ番号入力ボタンが操作されると、プログラムコード中の挿入箇所に参照番号を含むＨ番号を挿入し、第２工具情報を表示する補助画面において参照番号が指定された状態で、Ｄ番号入力ボタンが操作されると、プログラムコード中の挿入箇所に参照番号を含むＤ番号を挿入する処理を実行する。【００５８】
本開示の第５４態様によれば、第３７態様から第５３態様のいずれかによる工作機械の加工プログラム編集のためのプログラムは、プログラム編集画面と、少なくとも１つの補助画面は、１つのディスプレイ中に表示される処理を実行する。【００５９】
第１態様に係る工作機械の加工プログラム編集方法、第１９態様に係る工作機械、及び第３７態様に係る作機械の加工プログラム編集のためのプログラムによって、加工プログラムのプログラムコードの編集に必要な工具の工具情報と工具の制御方法の参照及び挿入を容易とすることができる。その結果、加工プログラムのプログラミングが効率化される。【００６０】
第２態様、第２０態様、第３８態様によれば、工具情報、制御方法、並びに、工具情報及び制御情報以外の他の情報といった多くの情報を少なくとも１つの補助画面に表示することができる。【００６１】
第３態様、第２１態様、第３９態様によれば、工具情報、制御方法、並びに、工具情報及び制御情報以外の他の情報といった多くの情報を少なくとも１つの補助画面に切り替えながら表示することができる。【００６２】
第４態様、第２２態様、第４０態様によれば、マクロ変数、及び、プログラミングにおいて利用される文字セットは、プログラミングにおいて頻繁に利用されるので、さらに加工プログラムのプログラミングが効率化される。【００６３】
第５態様、第２３態様、第４１態様によれば、関数コード、外部出力コマンド、及び演算子は、文字セットの中でも工作機械の加工プログラミングにおいて特に頻繁に利用されるので、さらに加工プログラムのプログラミングが効率化される。【００６４】
第６態様、第２４態様、第４２態様によれば、文字セットと組み合わせて利用される記号の入力ボタンがさらに表示するため、加工プログラムのプログラミングがさらに一層効率化される。【００６５】
第７態様、第２５態様、第４３態様によれば、加工プログラムのプログラミングにおいて頻繁に利用されるＧコードと、Ｇコード以外のカスタマイズドコードとが補助画面に別々に表示されるため、加工プログラムのプログラミングがさらに効率化される。【００６６】
第８態様、第２６態様、第４４態様によれば、プログラマは、Ｇコードと、カスタマイズドコードの制御内容について、マニュアルを参照することなく知ることができるので、加工プログラムのプログラミングがさらに一層効率化される。【００６７】
第９態様、第２７態様、第４５態様によれば、Ｇコードやカスタマイズドコードの前後には、改行文字（「；」(ＥＯＢ)）が挿入される頻度が高く、当該１つの補助画面からＥＯＢを入力できるようにすることによって、特に工作機械のタッチパネル付きディスプレイにおいてＥＯＢを入力するために別途のスクリーンキーボードを表示させなくて済む。その結果、特に工作機械でのプログラミングが効率化される。【００６８】
第１０態様、第２８態様、第４６態様によれば、工具の名称、工具の寸法、並びに、切削加工における誤差を補正するためのパラメータは、プログラムコードに入力するＴ番号を選択する上で重要な情報である。したがって、これらの情報が工具情報として含まれることによって、加工プログラムのプログラミングがさらに効率化される。【００６９】
第１１態様、第２９態様、第４７態様によれば、累積摩耗量を確認することによってプログラマが工具の使用の適否や交換時期を把握することができる。このため、加工プログラムに適した工具を選択することが容易となる。【００７０】
第１２態様、第３０態様、第４８態様によれば、工具長補正、工具径補正、及びノーズＲ補正は、頻繁に利用される切削加工における誤差を補正する方法である。このため、加工プログラムのプログラミングがさらに効率化される。【００７１】
第１３態様、第３１態様、第４９態様によれば、第１工具情報と第２工具情報とは、切削加工における誤差を補正するための共通のパラメータを含む場合もあり、同一の補助画面で管理すると、プログラマは混同しやすい。このため、第１工具情報と第２工具情報とを別々の補助画面で管理できるようにすることによって、当該パラメータの管理を容易とすることができる。【００７２】
第１４態様、第３２態様、第５０態様によれば、累積摩耗量は、工具の選択、つまり、Ｔ番号の選択の際に利用される。このため、第１工具情報として補助画面に表示させることによって、プログラマの利便性がさらに向上する。【００７３】
第１５態様、第３３態様、第５１態様によれば、Ｍ０６指令はＴコードと関連性が高いため、第１工具情報を表示する補助画面からＭ０６指令を直接入力できるほうがプログラミング上の利便性が高い。このため、Ｍ０６指令入力ボタンが第１工具情報を表示する補助画面に表示されることによって加工プログラムのプログラミングがさらに効率化される。【００７４】
第１６態様、第３４態様、第５２態様によれば、工具を指定しないＴ番号は、Ｍ０６指令と組み合わせて利用する頻度が多い。このため、Ｔ００入力ボタンがＭ０６指令入力ボタンと同じ画面に表示されることによって加工プログラムのプログラミングがさらに効率化される。【００７５】
第１７態様、第３５態様、第５３態様によれば、Ｄ番号・Ｈ番号に係るパラメータを１つの補助画面で管理しているため、補助画面の数を減少させることができる。さらには、第２工具情報を表示する補助画面には、Ｄ番号入力ボタン、Ｈ番号入力ボタンが表示され、これらのボタン操作によって参照番号をＤ番号・Ｈ番号に変換してプログラムコードへ挿入することができる。これによってプログラマは、選択したパラメータをプログラムコードに簡単に入力することができる。【００７６】
第１８態様、第３６態様、第５４態様によれば、プログラム編集画面と、少なくとも１つの補助画面は、加工プログラムの編集上密接に関係するために別々のディスプレイに表示されないことが好ましい。プログラム編集画面と少なくとも１つの補助画面とが１つのディスプレイ中に表示されることによって、加工プログラムのプログラミングがさらに効率化される。
【発明の効果】
【００７７】
本願に開示される技術によれば、例えば、工作機械の加工プログラムの編集に必要なコードを、プログラマが見つけることを容易にすることができる。
【図面の簡単な説明】
【００７８】
【図１】図１は、実施形態に係る工作機械及び工作機械の加工プログラムを編集するためのコンピュータを含むシステムの概略構成を示す図である。
【図２】図２は、制御装置のハードウェアブロック図である。
【図３】図３は、コンピュータのハードウェアブロック図である。
【図４】図４は、実施形態に係る加工プログラム編集プログラムの表示画面の一例である。
【図５】図５は、Ｇコード一覧画面の一例である。
【図６】図６は、Ｇコード一覧画面の別の一例である。
【図７】図７は、Ｍコード一覧画面の一例である。
【図８】図８は、Ｍコード一覧画面の別の一例である。
【図９】図９は、工具データ画面の一例である。
【図１０】図１０は、工具データ画面の別の一例である。
【図１１】図１１は、工具長オフセット補正の概念を説明するための図である。
【図１２】図１２は、工具長オフセット補正の概念を説明するための図である。
【図１３】図１３は、工具径補正の概念を説明するための図である。
【図１４】図１４は、ミル工具での工具径オフセットを示す図である。
【図１５】図１５は、ノーズＲ補正の概念を説明するための図である。
【図１６】図１６は、刃先方向の概念を説明するための図である。
【図１７】図１７は、工具オフセット画面の一例である。
【図１８】図１８は、工具オフセット画面の別の一例である。
【図１９】図１９は、マクロ変数画面の一例である。
【図２０】図２０は、マクロ入力画面の一例である。
【図２１】図２１は、工具データ画面の変形例である。
【図２２】図２２は、加工プログラム編集プログラムの処理を示すフローチャートである。
【発明を実施するための形態】
【００７９】
以下、この発明をその実施の形態を示す図面に基づいて具体的に説明する。なお、図中において同じ符号は、対応するまたは実質的に同一の構成を示している。
【００８０】
図１は、本発明の実施形態に係るシステム１０の概略構成を示す。システム１０は、工作機械１００、工作機械の加工プログラムを編集するためのコンピュータ２００、及び、工作機械１００とコンピュータ２００とを接続するネットワーク２９０とを含む。ネットワーク２９０は、例えば、工場内に設置されるＬＡＮ（ローカルエリアネットワーク）である。図示されているネットワーク２９０は有線ネットワークであるが、ネットワーク２９０は無線ネットワークであってもよい。なお、図１に示すＸ軸は、工作機械１００の高さ方向に沿い、Ｙ軸は、工作機械１００の奥行方向に沿い、Ｚ軸は、工作機械１００の幅方向に沿っている。本実施形態では、ＪＩＳ規格に基づいて、ワークを保持するワーク主軸１２２の回転軸線Ａ３に平行な軸をＺ軸としている。本実施形態では、この座標系をワーク座標系と呼ぶ。
【００８１】
工作機械１００は、ワークＷ１に対する切削加工(machining)を行う。切削加工は、旋削加工(turning)とミル加工(milling)とのうちの少なくとも１つを含む。切削加工は、さらに削孔加工(drilling)を含んでもよい。図１に示すように、工作機械１００は、コラム１１０と、ワーク主軸台１２０と、工具交換装置１３０と、を備えている。コラム１１０、ワーク主軸台１２０、及び工具交換装置１３０は、基台１４０の上に配置されている。
【００８２】
コラム１１０は、基台１４０上において、Ｙ軸方向およびＺ軸方向に移動可能である。コラム１１０には、工具主軸台１１２が取り付けられている。工具主軸台１１２は、コラム１１０に対して、Ｘ軸方向に移動可能である。工具主軸台１１２は、コラム１１０に対して、Ｙ軸方向に沿う旋回軸線Ａ１周りに旋回可能である。工具主軸台１１２には、工具主軸１１４が取り付けられている。工具主軸１１４は、工具主軸台１１２に対して回転軸線Ａ２回りに回転可能である。回転軸線Ａ２は、旋回軸線Ａ１に直交する。工具主軸１１４には、切削工具(machining tool)である第１工具Ｔ１が保持されている。切削工具とは、旋削工具とミル工具とを包含する概念である。本実施形態では、削孔加工に用いるドリルは、ミル工具の１つとみなす。
【００８３】
本実施形態では、軸線Ａ１と軸線Ａ２との交点を機械原点Ｏｍと呼び、回転軸線Ａ２をＺｍ軸とし、旋回軸線Ａ１をＹｍ軸とし、Ｚｍ軸とＹｍ軸との夫々に対して垂直な軸をＸｍ軸とする座標系を機械座標系と呼ぶ。機械原点Ｏｍから第１工具Ｔ１の先端に向かう方向をＺｍ軸の正方向とする。ワーク座標系のＺ軸の正方向を機械座標系のＺｍ軸の正方向と同じ方向に向かうように、ワーク座標系のＸ軸をＹ軸回りに回転させたときのワーク座標系のＸ軸の正方向を、機械座標系のＸｍ軸の正方向とする。ワーク座標系のＹ軸の正方向を機械座標系のＹｍ軸の正方向とする。
【００８４】
ワーク主軸台１２０は、ワーク主軸１２２を備えている。ワーク主軸１２２は、回転軸線Ａ３周りに回転可能である。回転軸線Ａ３は、Ｚ軸方向に沿っている。ワーク主軸１２２には、ワークＷ１が装着されている。
【００８５】
工具交換装置１３０は、工具主軸１１４に装着される切削工具を交換する。具体的には、工具交換装置１３０は、マガジンアーム１３２とストッカ１３４とを備えている。マガジンアーム１３２は、Ｚ軸方向に沿う軸回りに旋回可能である。マガジンアーム１３２は、ストッカ１３４に対してＸ軸方向に移動可能である。ストッカ１３４は、Ｘ軸方向に複数の切削工具Ｔｓを並べて収納している。ストッカ１３４に収納される複数の切削工具Ｔｓは、第１工具Ｔ１と交換可能な第２工具Ｔ２を含む。
【００８６】
工具交換装置１３０による切削工具の交換は次の手順で行われる。コラム１１０は、回転軸線Ａ２がＺ軸方向に沿う状態で、Ｚ軸方向において工具交換装置１３０に近づく。マガジンアーム１３２は、マガジンアーム１３２が延びる方向の一端に第１グリッパを有し、当該延びる方向の他端に第２グリッパを有している。第１グリッパは、工具主軸１１４に装着された第１工具Ｔ１を取り外すために、工具主軸１１４に装着されている第１工具Ｔ１を把持する。より詳細には、マガジンアーム１３２がＺ軸方向に沿う軸周りに所定旋回角度だけ旋回すると、第１グリッパは第１工具Ｔ１を把持し、同時に、第２グリッパは、ストッカ１３４に収納された第２工具Ｔ２を把持する。コラム１１０がＺ軸方向において工具交換装置１３０から離れると、第１工具Ｔ１は工具主軸１１４から取り外される。マガジンアーム１３２は、工具主軸１１４に第２工具Ｔ２を装着するために、Ｚ軸方向に沿う軸回りに旋回し、第２グリッパに把持された第２工具Ｔ２を工具取付位置に移動させる。コラム１１０がＺ軸方向において工具交換装置１３０に近づくと、工具主軸１１４に第２工具Ｔ２が装着される。
【００８７】
工作機械１００は、各回転軸線回りの回転、各旋回軸線回りの旋回及び各軸方向における移動を制御するために、制御装置１５０を備えている。制御装置１５０は、基台１４０に接続されている。ここで、制御装置１５０は、工作機械１００の他の箇所に接続されてもよく、制御信号の送信や検出結果の受信ができれば、基台１４０とは別に設置されてもよい。
【００８８】
図２は、制御装置１５０のハードウェアブロック図である。図２に示すように、制御装置１５０は、プロセッサ１５１と、メモリ１５２と、通信回路１５３と、タッチパネル付きディスプレイ１５４と、を備えている。プロセッサ１５１と、メモリ１５２と、通信回路１５３と、タッチパネル付きディスプレイ１５４は、バス１５５を介して互いに接続されている。メモリ１５２は、加工に必要なプログラム及びデータを記憶している。プロセッサ１５１は、メモリ１５２に記憶されたプログラムを読み出して、読みだしたプログラムを実行する。これにより、制御装置１５０の各機能は、実現される。制御装置１５０が実現する各機能には、旋削加工の実行の制御が含まれる。具体的には、メモリ１５２は、加工プログラム１５７を記憶している。加工プログラム１５７は、旋削加工を実行するための制御命令を含んでいる。通常、加工プログラム１５７は、コンピュータ２００において編集され、ネットワーク２９０を介して制御装置１５０に送信され、メモリ１５２に記憶される。通信回路１５３は、ネットワーク２９０を介してコンピュータ２００と通信するための、通信パケットからデータへの変換機能とデータから通信パケットへの変換機能と通信パケット送受信機能とを有している。
【００８９】
本実施形態では、メモリ１５２は、工作機械１００に装着可能な工具Ｔａ（例えば、第１工具Ｔ１、及び、ストッカ１３４に収納される複数の切削工具Ｔｓのうち、第２工具Ｔ２のように工作機械１００に装着可能な全ての切削工具）の工具情報１５８を記憶する。工具情報１５８は、通信回路１５３によって、ネットワーク２９０を介してコンピュータ２００に送信される。また、工具情報１５８は、後述する加工プログラム編集プログラム１５９の実行時に、メモリ１５２から読み出される。工具情報１５８の詳細な説明は、後述する。
【００９０】
メモリ１５２は、加工プログラム１５７を編集するための加工プログラム編集プログラム１５９を記憶してもよい。通常、加工プログラム編集プログラム１５９は、加工プログラム１５７の一部を修正する場合に実行される。しかし、加工プログラム編集プログラム１５９を実行することによって、加工プログラム１５７が最初から作成されてもよい。
【００９１】
タッチパネル付きディスプレイ１５４は１つのディスプレイ１５４でなくてもよく、複数のディスプレイの集まりであってもよい。なお、タッチパネル付きディスプレイ１５４のディスプレイは、ディスプレイの一例であり、タッチパネルは、インタフェースの一例である。なお、タッチパネル付きディスプレイ１５４は、タッチパネルのないディスプレイと、ディスプレイ周辺に設けられたボタン・スイッチ・レバー・ポインティングデバイス等の入力機器との組み合わせによって代替されてもよい。その場合、当該入力機器は、インタフェースの一例である。
【００９２】
図３は、コンピュータ２００のハードウェアブロック図である。図３に示すように、コンピュータ２００は、プロセッサ２１０と、メモリ２２０と、通信回路２３０と、ディスプレイ２４０と、入力インタフェース２５０と、を備えている。プロセッサ２１０と、メモリ２２０と、通信回路２３０と、ディスプレイ２４０と、入力インタフェース２５０は、バス２６０を介して互いに接続されている。入力インタフェース２５０は、インタフェースの一例であって、例えば、キーボード、マウスなどのポインティングデバイスを指す。なお、コンピュータ２００は、タッチパネル付きディスプレイを有するタブレットコンピュータのように、ディスプレイ２４０と入力インタフェース２５０とが一体化されたものであってもよい。また、ディスプレイ２４０は複数のディスプレイの組み合わせであってもよい。
【００９３】
メモリ２２０は、上述する加工プログラム１５７を編集するための加工プログラム編集プログラム２２１と、当該プログラムを実行するにあたり必要なデータ及びオペレーティングシステムなどのプログラムと、を記憶している。加工プログラム編集プログラム２２１は、加工プログラム編集プログラム１５９と実質的に同じ機能を有する。ただし、加工プログラム編集プログラム２２１の画面表示方法が加工プログラム編集プログラム１５９の画面表示方法と部分的に相違してもよい。メモリ２２０は、加工プログラム編集プログラム２２１によって編集された加工プログラム１５７をさらに記憶してもよい。プロセッサ２１０は、メモリ２２０に記憶されたプログラムを読み出して、読みだしたプログラムを実行する。通信回路２３０は、ネットワーク２９０を介して制御装置１５０と通信するための、通信パケットからデータへの変換機能とデータから通信パケットへの変換機能と通信パケット送受信機能とを有している。
【００９４】
コンピュータ２００は、通信回路２３０を利用して、加工プログラム編集プログラム２２１を利用して編集された加工プログラム１５７を制御装置１５０に送信する。さらに、コンピュータ２００は、加工プログラム編集プログラム２２１が実行されると、通信回路２３０を利用して、制御装置１５０から上述する工具情報１５８を取得し、メモリ２２０に工具情報１５８を記憶する。
【００９５】
次に、加工プログラム１５７の内容について説明する。本実施形態において、加工プログラム１５７は、工作機械１００を数値制御するためのプログラムコードによって記述されている。また、当該プログラムコードは、アルファベットと数値とからなる文字列で構成されており、例えば、以下に示すようなコードが用意されている。
【００９６】
Ｇコード：加工を行うための準備機能（例えば、工具の移動態様等）を指定するコード
Ｍコード：Ｇコードの補助的役割を果たすコード
Ｔ番号：切削工具を指定する番号
Ｓ番号：工作機械の主軸回転数等を指定する番号
Ｆ番号：旋削工具の送り速度等を指定する番号
Ｘ，Ｙ，Ｚ，Ｕ，Ｖ，Ｗ，Ａ，Ｂ，Ｃ：座標軸を指定する記号
Ｎ＋数値：シーケンス番号。プログラム内のジャンプ位置を指定する。
Ｇコードは、ＩＳＯ６９８３として標準化されている。Ｍコードは、工作機械メーカーが独自に定めたカスタマイズドコードを含む。Ｍコードは、標準化されたコードをさらに含んでもよい。
＜全体の表示画面＞
図４は、実施形態に係る加工プログラム編集プログラム２２１の表示画面(display screen)３０の一例である。当該表示画面３０は、ディスプレイ２４０に表示される。なお、制御装置１５０のタッチパネル付きディスプレイ１５４に表示される加工プログラム編集プログラム１５９の表示画面も、後に述べる例外を除いて表示画面３０と実質的に同じ画面である。表示画面３０は、プログラム編集画面(program editing window)３００と、少なくとも１つの補助画面(assistance window)３１０とを含む。好ましくは、プログラム編集画面３００と、少なくとも１つの補助画面３１０は、１つのディスプレイ２４０／１５４中に表示される。
【００９７】
プログラム編集画面３００には、工作機械１００を制御するための加工プログラム１５７のプログラムコード３０２が表示される。図４では、プログラム編集画面３００にプログラムコード３０２の位置を示す行番号３０８も併せて表示されているが、行番号３０８は省略されてもよい。タッチパネル付きディスプレイ１５４のタッチパネルでのタップ、入力インタフェース２５０のうちのマウスによるクリックや入力インタフェース２５０のうちのキーボードによるカーソル移動によって、プログラム編集画面３００中においてＧコードを挿入する挿入箇所を指定することができる。したがって、タッチパネル付きディスプレイ１５４のタッチパネルや入力インタフェース２５０のポインティングデバイスは、プログラムコード３０２中に新たにコードを挿入する挿入場所を指定するためのインタフェースである。
【００９８】
少なくとも１つの補助画面３１０には、プログラムコード３０２を編集するにあたりプログラマが参照する情報が表示される。図４では、少なくとも１つの補助画面３１０として、第１補助画面３１２と第２補助画面３１４とが表示されている。しかし、図４の例に限らず、少なくとも１つの補助画面３１０は、１つの補助画面もしくは３つ以上の補助画面が表示されてもよい。図４を参照すると、プログラム編集画面３００と少なくとも１つの補助画面３１０は並んで表示されている。図４の例では、プログラム編集画面３００は、表示画面３０の左側、第１補助画面３１２と第２補助画面３１４は表示画面３０の右側に表示されている。しかし、プログラム編集画面３００と少なくとも１つの補助画面３１０の表示態様はこれに限らず、プログラム編集画面３００と少なくとも１つの補助画面３１０の位置が左右逆であってもよい。また、プログラム編集画面３００と少なくとも１つの補助画面３１０が上下もしくは斜めに並んで表示されてもよい。
【００９９】
また、少なくとも１つの補助画面３１０（例えば、第１補助画面３１２と第２補助画面３１４）がプログラム編集画面３００の片側に固まって表示されてなくてもよい。例えば、少なくとも１つの補助画面３１０の一部（例えば、第１補助画面３１２）と、少なくとも１つの補助画面３１０の残り（例えば、第２補助画面３１４）とが、プログラム編集画面３００を挟み込むように、プログラム編集画面３００と少なくとも１つの補助画面３１０とが表示されてもよい。
【０１００】
また、プログラム編集画面３００と少なくとも１つの補助画面３１０とが一方向に並んで表示されていなくてもよい。例えば、第１補助画面３１２がプログラム編集画面３００の右側、第２補助画面３１４がプログラム編集画面３００の下側に表示されてもよく、少なくとも１つの補助画面３１０がプログラム編集画面３００を取り囲むように表示されてもよい。つまり、少なくとも１つの補助画面３１０の各々がプログラム編集画面３００に並んで表示されていればよい。なお、プログラマの便宜のため、少なくとも１つの補助画面３１０の各々がプログラム編集画面３００の近傍に表示されることが好ましい。さらに、図４では、少なくとも１つの補助画面３１０は、プログラム編集画面３００と重畳しない態様で表示されているが、図４では、少なくとも１つの補助画面３１０は、プログラム編集画面３００と一部重畳してもよい。
【０１０１】
本実施形態において少なくとも１つの補助画面３１０に表示される表示情報は、工作機械１００に装着可能な工具Ｔａの工具情報と当該工具Ｔａの制御方法とのうち少なくとも１つである。つまり、ディスプレイ２４０（１５４）は、工作機械１００を制御するための加工プログラム１５７のプログラムコード３０２を表示するプログラム編集画面３００と、工作機械１００に装着可能な工具Ｔａの工具情報と当該工具Ｔａの制御方法とのうち少なくとも１つを表示する少なくとも１つの補助画面３１０とを並べて(side by side)表示する。ディスプレイ２４０（１５４）が複数のディスプレイから構成されるときは、並べて設けられたディスプレイのうちの一方に、プログラム編集画面３００が表示され、他方に、少なくとも１つの補助画面３１０が表示されてもよい。工具情報とは、例えば、工具Ｔａに対応するＴ番号（T number）、工具Ｔａの名称、工具Ｔａの寸法(dimension)、並びに、切削加工における誤差を補正するためのパラメータの少なくとも１つを含む。当該工具Ｔａの制御方法とは、上述するＧコード、Ｍコードを含む。つまり、当該制御方法は、Ｇコードと、Ｇコード以外のカスタマイズドコードとを含む。したがって、ディスプレイ２４０（１５４）は、少なくとも１つの補助画面３１０のうちの１つの補助画面で、Ｇコードと、Ｇコード以外のカスタマイズドコードとのいずれか一方のコードを表示する。
【０１０２】
図４では、使用したい切削工具に対応するＴ番号を入力することを主目的とする工具データ画面(Tool Data window)３４０が第１補助画面３１２として、Ｇコードを入力することを主目的とするＧコード一覧画面(G-Code List window)３２０が第２補助画面３１４として表示されている。しかし、図４の例において、第１補助画面３１２においてＧコード一覧画面３２０が表示されてもよく、第２補助画面３１４として工具データ画面３４０が表示されてもよい。
【０１０３】
また、第１補助画面３１２、第２補助画面３１４として表示される画面はこれらの画面に限られない。後述するように、第１補助画面３１２の第２補助画面３１４の夫々には、工具主軸１１４の基準点に対する切削工具の切刃位置の位置ずれ量を入力するための工具オフセット画面(Tool Offset window)３６０、Ｍコードを入力するためのＭコード一覧画面(M-Code List window)３３０、マクロ変数をプログラム中に入力するためのマクロ変数画面(Macro Variables window)３８０、プログラミングにおいて利用される文字セット(character set)を簡単に入力するためのマクロ入力画面（Macro Input window）３９０のうちのいずれかが代わりに表示されてもよい。つまり、少なくとも１つの補助画面３１０に表示される情報は、上述する工具Ｔａの工具情報と工具Ｔａの制御方法以外の他の情報を含んでもよい。当該他の情報は、プログラムコード３０２において規定するマクロ変数、プログミングにおいて利用される文字セットの少なくとも１つを含む。当該文字セットは、数学関数(mathematical function)を規定する関数コード、外部出力コマンド（external output command）、及び演算子（operator）の少なくとも１つを含む。
【０１０４】
表示画面３０は、少なくとも１つの補助画面３１０に表示する情報（この情報を、以下表示情報と呼ぶ）を、上述する、工具情報、制御方法、並びに、他の情報の中から選択するための表示情報選択画面（displayed information selection window）３１６をさらに含む。つまり、ディスプレイ２４０（１５４）は、少なくとも１つの補助画面３１０に表示する情報を、上述する、工具情報、制御方法、並びに、他の情報の中から選択するための表示情報選択画面３１６をさらに表示する。図４では、表示情報選択画面３１６は、プログラム編集画面３００と少なくとも１つの補助画面３１０との間に表示されている。しかし、表示情報選択画面３１６の表示位置は、これに限られない。例えば、図４において、表示情報選択画面３１６は、プログラム編集画面３００の下側や左側に表示されてもよい。しかし、プログラマの視認性の観点から、表示情報選択画面３１６は、プログラム編集画面３００と少なくとも１つの補助画面３１０との間に表示されることが好ましい。
【０１０５】
図４では、表示情報選択画面３１６に、工具データ画面３４０、工具オフセット画面３６０、マクロ変数画面３８０、マクロ入力画面３９０、Ｇコード一覧画面３２０、Ｍコード一覧画面３３０のそれぞれに対応する文字列がセレクトボックス内に表示されている。プログラマがこれらの文字列のうちの１つをタップもしくはクリックすることによって、少なくとも１つの補助画面３１０に表示する情報が選択される。なお、表示情報選択画面３１６では、セレクトボックスに代えて、ラジオボタンやチェックボックスなどの他の入力手段が表示されてもよい。図４の例では、工具データ画面を表す「工具データ」の文字列が選択された状態になっている。表示情報選択画面３１６の下方には、第１補助画面３１２と第２補助画面３１４とのいずれかを指定するための切替設定画面３１８が表示される。つまり、ディスプレイ２４０（１５４）は、第１補助画面３１２と第２補助画面３１４とのいずれかを指定するための切替設定画面３１８を表示する。図４では、切替設定画面３１８において、第１補助画面３１２、第２補助画面３１４の夫々の模式化した位置がアイコン化されていて、どちらかのアイコンで選択するとそのアイコンがアクティブとなる。図４の例では、第１補助画面３１２を示す「１」のアイコンがアクティブになっている。
【０１０６】
この状態で、表示情報選択画面３１６の下側に表示されているＯＫボタン３１７をクリックもしくはタップ等で操作されると、第１補助画面３１２の表示が工具データ画面の表示に切り替えられる。つまり、ディスプレイ２４０（１５４）は、表示情報選択画面３１６において選択された表示情報を少なくとも１つの補助画面３１０に表示する。より具体的には、ディスプレイ２４０（１５４）は、切替設定画面３１８にて指定された補助画面に、表示情報選択画面３１６において選択された表示情報を表示する。図４は、上記切替操作によって第１補助画面３１２に工具データ画面が表示された状態を示している。以降に、Ｇコード一覧画面、Ｍコード一覧画面、工具データ画面、工具オフセット画面、マクロ変数画面、マクロ入力画面の詳細について説明する。
＜Ｇコード一覧画面＞
図５及び図６は、Ｇコード一覧画面３２０の表示例である。図５及び図６を参照すると、Ｇコード一覧画面３２０の画面左側にＧコード３２１が表示される。Ｇコード３２１の右隣りには、Ｇコード３２１の属するグループ番号３２１Ｇが表示される。同じグループ番号の複数のＧコードが１つのブロック（プログラムコード中の「；」（ＥＯＢ：End of Block）と「；」との間）に記載されると、最後に記載されたＧコードのみが実行される。グループ番号３２１Ｇの右隣りには、Ｇコード３２１の制御内容３２２が表示される。お気に入りのＧコード３２１の左側には、お気に入りのマーク３２３が付加的に表示される。
【０１０７】
Ｇコード一覧画面３２０の上端には、お気に入り表示ボタン３２４が表示されている。図５は、お気に入り表示ボタン３２４がオフの状態のＧコード一覧画面３２０を示している。図６は、お気に入り表示ボタン３２４がオンの状態のＧコード一覧画面３２０を示している。図５に示すように、お気に入り表示ボタン３２４がオフの状態では、すべてのＧコードが番号順に表示される。Ｇコード一覧画面３２０の右端にはスクロールバー３２０Ｓが表示されている。プログラマは、スクロールバー３２０Ｓを動かすことによって、所望の範囲のＧコードをＧコード一覧画面３２０に表示させることができる。図６に示すように、お気に入り表示ボタン３２４がオンの状態では、お気に入りのＧコードのみがＧコード３２１として表示される。図６では、全てのお気に入りのＧコードの数がＧコード一覧画面３２０の最大表示行数よりも少ないため、スクロールバーが表示されていない。しかし、お気に入りのＧコードの数がＧコード一覧画面３２０の最大表示行数よりも多い場合、スクロールバーが表示される。なお、図５及び図６では、Ｇコードの番号順に表示されているが、過去の使用回数の多い順、または、過去の所定期間内において使用回数の多い順にＧコード３２１が表示されてもよい。
【０１０８】
Ｇコード一覧画面３２０の右下端には、お気に入りの登録・解除に係るボタン３２５〜３２６が表示されている。Ｇコード３２１、グループ番号３２１Ｇ、制御内容３２２、及び、マーク３２３は、行ごとに対応づけされて管理される。このため、Ｇコード３２１、グループ番号３２１Ｇ、及び、制御内容３２２のどれか１つがクリックまたはタップされると、クリックまたはタップされた項目と同じ行に係るＧコード３２１、グループ番号３２１Ｇ、及び、制御内容３２２が選択され、白黒反転表示などがされる。その状態でお気に入り登録ボタン３２５がクリックまたはタップされると、選択されているＧコード３２１の左側に、お気に入りのマーク３２３が表示され、選択されているＧコード３２１がお気に入りとして管理される。逆に、お気に入りとなっているＧコード３２１の行のＧコード３２１、グループ番号３２１Ｇ、制御内容３２２、及び、マーク３２３のどれか１つがクリックまたはタップされ、お気に入り解除ボタン３２６がクリックまたはタップされると、選択されているＧコード３２１がお気に入りから解除され、選択されているＧコード３２１の左側のお気に入りのマーク３２３が消滅する。お気に入り全解除ボタン３２７がクリックまたはタップされると、全てのお気に入りを解除するかどうか確認するポップアップウィンドウが表示され、プログラマが解除を承諾すると、すべてのお気に入りのＧコード３２１においてお気に入りの管理が解除され、すべてのマーク３２３が消滅する。
【０１０９】
Ｇコード一覧画面３２０の下端左端には、入力ボタン３２８が表示される。プログラマは、プログラム編集画面３００と、Ｇコード一覧画面３２０を参照して、以下のように、Ｇコードをプログラム中に入力することができる。（１）プログラム編集画面３００中においてＧコードを挿入する挿入箇所をタップ・クリック・カーソル移動等の操作で指定する（以下、このように指定される箇所を挿入箇所と呼ぶ）。（２）Ｇコード一覧画面３２０を参照し、入力したいＧコード３２１の行をタップまたはクリックで選択する。（３）入力ボタン３２８をタップまたはクリックする。これによって、プログラムコード３０２中の（１）によって指定された挿入箇所に、（２）で選択されたＧコード３２１が挿入される。
【０１１０】
Ｇコード一覧画面３２０の下端には、さらに、改行キーボタン３２９が表示されている。プログラムコード３０２中の改行文字（「；」(ＥＯＢ)）を挿入する挿入箇所がタップ・クリック・カーソル移動等の操作で指定された後に、改行キーボタン３２９がクリックまたはタップされると、改行文字（「；」(ＥＯＢ)）がプログラムコード３０２中の挿入箇所に挿入される。改行キーボタン３２９を利用した入力においては、入力ボタン３２８への入力は不要である。Ｇコードの前後には、改行文字（「；」(ＥＯＢ)）が挿入される頻度が高く、Ｇコード一覧画面３２０に表示される改行キーボタン３２９からＥＯＢを入力できるようにすることによって、特に工作機械１００のタッチパネル付きディスプレイ１５４においてＥＯＢを入力するために別途のスクリーンキーボードを表示させなくて済む。その結果、工作機械１００でのプログラミングが効率化される。
【０１１１】
なお、図５及び図６に示されたＧコード一覧画面３２０の表示態様は、単なる一例であって、他の表示態様であってもよい。例えば、ボタンやテキストの表示位置は、図５及び図６に示されたものでなくてもよい。また、入力ボタン３２８はテキストではなく、記号や図柄によって表されてもよく、改行キーボタン３２９は他の記号や図柄、テキストによって表されてもよい。お気に入りに関わるマーク・ボタン３２３〜３２７は、他の記号や図柄、テキストによって表されてもよく、削除されてもよい。
＜Ｍコード一覧画面＞
図７及び図８は、Ｍコード一覧画面３３０の表示例である。図７及び図８を参照すると、Ｍコード一覧画面３３０の画面左側にＭコード３３１が表示される。Ｍコード３３１の右隣りには、Ｍコード３３１の制御内容３３２が表示される。お気に入りのＭコード３３１の左側には、お気に入りのマーク３３３が付加的に表示される。
【０１１２】
Ｍコード一覧画面３３０の上端には、お気に入り表示ボタン３３４が表示されている。図７は、お気に入り表示ボタン３３４がオフの状態のＭコード一覧画面３３０を示している。図８は、お気に入り表示ボタン３３４がオンの状態のＭコード一覧画面３３０を示している。図７に示すように、お気に入り表示ボタン３３４がオフの状態では、すべてのＭコードが番号順に表示される。Ｍコード一覧画面３３０の右端にはスクロールバー３３０Ｓが表示されている。プログラマは、スクロールバー３３０Ｓを動かすことによって、所望の範囲のＭコードをＭコード一覧画面３３０に表示させることができる。図８に示すように、お気に入り表示ボタン３３４がオンの状態では、お気に入りのＭコードのみがＭコード３３１として表示される。図８では、全てのお気に入りのＭコードの数がＭコード一覧画面３３０の最大表示行数よりも少ないため、スクロールバーが表示されていない。しかし、お気に入りのＭコードの数がＭコード一覧画面３３０の最大表示行数よりも多い場合、スクロールバーが表示される。なお、図７及び図８では、Ｍコードの番号順に表示されているが、過去の使用回数の多い順、または、過去の所定期間内において使用回数の多い順にＭコード３３１が表示されてもよい。
【０１１３】
Ｍコード一覧画面３３０の右下端には、お気に入りの登録・解除に係るボタン３３５〜３３６が表示されている。Ｍコード３３１、制御内容３３２、及び、マーク３３３は、行ごとに対応づけされて管理される。このため、Ｍコード３３１、及び、制御内容３３２のどれか１つがクリックまたはタップされると、クリックまたはタップされた項目と同じ行に係るＭコード３３１、及び、制御内容３３２が選択され、白黒反転表示などがされる。その状態でお気に入り登録ボタン３３５がクリックまたはタップされると、選択されているＭコード３３１の左側に、お気に入りのマーク３３３が表示され、選択されているＭコード３３１がお気に入りとして管理される。逆に、お気に入りとなっているＭコード３３１の行のＭコード３３１、制御内容３３２、及び、マーク３３３のどれか１つがクリックまたはタップされ、お気に入り解除ボタン３３６がクリックまたはタップされると、選択されているＭコード３３１がお気に入りから解除され、選択されているＭコード３３１の左側のお気に入りのマーク３３３が消滅する。お気に入り全解除ボタン３３７がクリックまたはタップされると、全てのお気に入りを解除するかどうか確認するポップアップウィンドウが表示され、プログラマが解除を承諾すると、すべてのお気に入りのＭコード３３１においてお気に入りの管理が解除され、すべてのマーク３３３が消滅する。
【０１１４】
Ｍコード一覧画面３３０の下端左端には、入力ボタン３３８が表示される。プログラマは、プログラム編集画面３００と、Ｍコード一覧画面３３０を参照して、以下のように、Ｍコードをプログラム中に入力することができる。（１）プログラム編集画面３００中においてＭコードを挿入する挿入箇所をタップ・クリック・カーソル移動等の操作で指定する。（２）Ｍコード一覧画面３３０を参照し、入力したいＭコード３３１の行をタップまたはクリックで選択する。（３）入力ボタン３３８をタップまたはクリックする。これによって、プログラムコード３０２中の挿入箇所に、選択されたＭコード３３１が挿入される。
【０１１５】
Ｍコード一覧画面３３０の下端には、さらに、改行キーボタン３３９が表示されている。プログラムコード３０２中の改行文字（「；」(ＥＯＢ)）を挿入する挿入箇所がタップ・クリック・カーソル移動等の操作で指定された後に、改行キーボタン３３９がクリックまたはタップされると、改行文字（「；」(ＥＯＢ)）がプログラムコード３０２中の挿入箇所に挿入される。改行キーボタン３３９を利用した入力においては、入力ボタン３３８への入力は不要である。Ｍコードの前後には、改行文字（「；」(ＥＯＢ)）が挿入される頻度が高く、Ｍコード一覧画面３３０に表示される改行キーボタン３３９からＥＯＢを入力できるようにすることによって、特に工作機械１００のタッチパネル付きディスプレイ１５４においてＥＯＢを入力するために別途のスクリーンキーボードを表示させなくて済む。その結果、工作機械１００でのプログラミングが効率化される。
【０１１６】
なお、図７及び図８に示されたＭコード一覧画面３３０の表示態様は、単なる一例であって、他の表示態様であってもよい。例えば、ボタンやテキストの表示位置は、図７及び図８に示されたものでなくてもよい。また、入力ボタン３３８はテキストではなく、記号や図柄によって表されてもよく、改行キーボタン３３９は他の記号や図柄、テキストによって表されてもよい。お気に入りに関わるマーク・ボタン３３３〜３３７は、他の記号や図柄、テキストによって表されてもよく、削除されてもよい。
＜工具データ画面＞
図９及び図１０は、工具データ画面３４０の表示例である。図９及び図１０を参照すると、工具データ画面３４０では、左端に工具Ｔａの各々に対応するＴ番号３４１が表示される。Ｔ番号３４１の右隣りには、工具Ｔａの各々を模式的に表したシンボル３４２が表示される。シンボル３４２は省略可能である。シンボル３４２の右隣りには、工具Ｔａの各々の工具名３４３が表示される。旋削工具（本例では、Ｔ０６）などの一部の工具については、加工部位を示す名称３４４が工具名３４３の右隣りに表示される。工具名３４３（名称３４４がある場合は名称３４４）の右隣りには、工具Ｔａの各々の呼び（size）または呼び径（nominal diameter）の数値３４５が表示される。数値３４５の最後には小数点が記載されているが、小数点以上がｍｍ単位であるという意味である。図９及び図１０の例では、旋削工具（Ｔ０６）のみにおいて呼びが表示されており、残りの工具においては呼び径が表示されている。呼びまたは呼び径のいずれが数値３４５として表示されるかは、工具の種類に依存する。
【０１１７】
数値３４５よりもさらに右側には、複数のパラメータが表示される。工具名３４３と数値３４５とのいずれかによってＴ番号３４１に対応する工具の対応が容易である場合、これら複数のパラメータは表示が省略されてもよい。図９及び図１０の例では、エンドミル（Ｔ０１）のパラメータ表示が省略されている。また、工具データ画面３４０の右下隅には、矢印ボタン３４９ａ、３４９ｂが表示されており、矢印ボタン３４９ａ、３４９ｂのクリックまたはタップによって、工具データ画面３４０に表示されるＴ番号３４１の範囲を変更することができる。
【０１１８】
図９を参照すると、数値３４５の右隣には、工具長または軸方向オフセットの数値３４６が表示される。工具長とは、工具Ｔａが工具主軸１１４に取り付けられた状態での回転軸線Ａ２に沿う向き（以下、軸方向と呼ぶ）の工具Ｔａの長さである。別の言い方をすれば、工具長とは、機械座標系での工具ＴａのＺｍ軸方向の長さである。軸方向オフセットとは、工具Ｔａが工具主軸１１４に取り付けられた状態での、工具Ｔａの基端点から工具Ｔａの切刃先端部（tool tip）までの軸方向の距離である。工具Ｔａの基端点とは、工具Ｔａが工具主軸１１４に取り付けられた状態での工具Ｔａの軸方向に沿う２つの端点のうち、工具主軸１１４に把持される工具Ｔａの部分に属する端点である。別の言い方をすれば、軸方向オフセットとは、機械座標系での工具Ｔａの基端点から切刃先端部までのＺｍ軸方向の距離である。図９の例では、旋削工具（Ｔ０６）のみにおいて軸方向オフセットが表示されており、残りの工具においては工具長が表示されている。工具長または軸方向オフセットのいずれが数値３４６として表示されるかは、工具の種類に依存する。
【０１１９】
図９を参照すると、工具データ画面３４０の右端に工具半径（tool radius）または径方向オフセットの数値３４７が表示される。なお、本実施例では工具半径が表示されているが、工具半径の代わりに工具直径が表示されてもよい。工具半径（tool radius）とは、摩耗のない（新品の）工具Ｔａが工具主軸１１４に取り付けられた状態での回転軸線Ａ２に対して垂直な向き（以下、径方向と呼ぶ）の工具Ｔａの半径である。径方向オフセットとは、摩耗のない（新品の）工具Ｔａが工具主軸１１４に取り付けられた状態での、工具Ｔａの基端点から工具Ｔａの刃先(cutting edge)までの径方向の座標値である。この座標値は、工具主軸台１１２が図１に示される姿勢であるときに、工具Ｔａが工具主軸１１４に取り付けられた状態での工具Ｔａの刃先のＸｍ座標の値である。図９の例では、ドリル（Ｔ０３）の工具半径（tool radius）は、呼び径から算出できるため、数値３４７の記載が省略されている。旋削工具（Ｔ０６）においては径方向オフセットが数値３４７として表示されており、フェイスミル（Ｔ０８）においては工具半径が数値３４７として表示されている。工具半径または軸方向オフセットのいずれが数値３４７として表示されるか、数値３４７の表示が省略されるか否かは、工具の種類に依存する。
【０１２０】
図１０を参照すると、数値３４５の右隣には、軸方向累積摩耗量の数値３５１が表示される。軸方向累積摩耗量とは、工具Ｔａの切刃先端部(tool tip)の軸方向の累積摩耗量である。累積摩耗量は、工具Ｔａの使用により累積した摩耗量であって、工具Ｔａの使用態様や使用時間から工作機械１００が算出することが可能である。あるいは、プログラマもしくは作業者が工具Ｔａの使用態様を見ながら累積摩耗量を入力してもよい。累積摩耗量を確認することによってプログラマが当該工具Ｔａの使用の適否や交換時期を把握することができる。なお、累積摩耗量の表示は省略されてもよい。図１０の例では、エンドミル（Ｔ０１）やドリル（Ｔ０３）においては数値３５１の表示が省略されている。さらに、工具データ画面３４０の右端に径方向累積摩耗量の数値３５２が表示される。径方向累積摩耗量とは、工具Ｔａの刃先(cutting edge)の径方向の累積摩耗量である。図１０の例では、エンドミル（Ｔ０１）やドリル（Ｔ０３）においては数値３５２の表示が省略されている。工具データ画面３４０には、上述する以外の工具情報も表示可能であるが、後段の工具データ画面の変形例３４０ａにおいて詳細に説明する。
【０１２１】
Ｔ番号３４１、シンボル３４２、工具名３４３、加工部位を示す名称３４４、数値３４５〜３４７、３５１、３５２は、行ごとに対応づけられ、プログラムコード３０２中のＴ番号に関連づけられる。このように、プログラムコード３０２中のＴ番号３４１に関連づけられる工具情報１５８を第１工具情報と呼ぶ。工具情報は、第１工具情報を含み、第１工具情報は、後述するように、参照番号３６１、Ｘ値３６２、Ｙ値３６３、Ｚ値３６４、Ｒ値３６５、Ｔ番号３４１、シンボル３４２、工具名３４３、加工部位を示す名称３４４、数値３４５〜３４７、３５１、３５２のうちの少なくとも１つを含む。第１工具情報は工具の使用により累積した累積摩耗量３５１、３５２を含む。
【０１２２】
工具データ画面３４０の下端左端には、入力ボタン３４８が表示されている。プログラマは、プログラム編集画面３００と、工具データ画面３４０を参照して、以下のように、プログラム中に加工に適した工具に係るＴ番号をプログラム中に入力することができる。（１）プログラム編集画面３００中においてＴ番号を挿入する挿入箇所をタップ・クリック・カーソル移動等の操作で指定する。（２）工具データ画面３４０を参照し、加工に適した工具が表示されている行をタップまたはクリックで選択する。（３）入力ボタン３４８をタップまたはクリックする。これによって、プログラムコード３０２中の（１）によって指定された挿入箇所に（２）で選択された工具に対応するＴ番号が挿入される。なお、本実施形態ではＴ番号としてＴ番号３４１にある数字２桁の後ろに「００」を追加挿入してもよい。
【０１２３】
さらに、プログラマは、工具データ画面３４０において表示される値のうち、軸方向オフセット・径方向オフセット・摩耗量を工具データ画面３４０で編集可能である。この編集は、例えば、以下のような手順で行うことができる。（１）工具データ画面３４０上で編集する箇所をタップ・長押し・クリックなどで選択し、編集可能な状態（例えば、フォームタグとして表示）とする。（２）工作機械１００の制御装置１５０のようにタッチパネル付きディスプレイで表示している場合、スクリーンキーボード、スクリーンテンキーボードのような入力インタフェースを追加表示する。（３）キーボードもしくは（２）で示されたスクリーン上の入力インタフェースで値を入力する。なお、上述するタップ・クリックは、それぞれ、シングルタップ・シングルクリックでも、ダブルタップ・ダブルクリックでもよい。また、編集方法は、上記の方法に限らず、別のＧＵＩ・音声入力などの他の手段が用いられてもよい。また、加工プログラム編集プログラム２２１（１５９）以外のプログラムによって、軸方向オフセット・径方向オフセット・摩耗量などが編集されてもよい。
【０１２４】
工具データ画面３４０の下端には、さらに、Ｍ０６指令をプログラムコード３０２に入力するためのＭ０６指令入力ボタン３５３が表示されている。Ｍ０６指令とは、工具交換指令である。プログラムコード中では、
＜交換される工具のＴコード＞  ＜次に交換する予定の工具のＴコード＞  Ｍ０６；
と記述される。プログラムコード３０２中のＭ０６指令を挿入する挿入箇所がタップ・クリック・カーソル移動等の操作によって指定されている状態で、Ｍ０６指令入力ボタン３５３がクリックまたはタップされると、指定された挿入箇所にＭ０６指令のコードが挿入される。Ｍ０６指令入力ボタン３５３を利用した入力においては、入力ボタン３４８への入力は不要である。Ｍ０６指令をＭコード一覧画面３３０から入力することも可能であるが、Ｍ０６指令はＴコードと関連性が高いため、工具データ画面３４０からＭ０６指令を直接入力できるほうがプログラミング上の利便性が高い。このため、Ｍ０６指令入力ボタン３５３が工具データ画面３４０に表示されることによってプログラミングが効率化される。
【０１２５】
工具データ画面３４０の下端には、さらに、工具を指定しないＴ番号をプログラムコード３０２に入力するためのＴ００入力ボタン３５４が表示されている。Ｔ００は、工具主軸１１４に工具を装着しないことを指定する、または、マガジンアーム１３２に工具を装着しないことを指定するためのＴ番号である。例えば、工具交換時に次に交換する予定がないときに、上述の＜次に交換する予定の工具のＴコード＞にＴ００を示すコードがプログラムコード中に記述される。プログラムコード３０２中のＴ００を挿入する挿入箇所がタップ・クリック・カーソル移動等の操作で指定されている状態で、Ｔ００入力ボタン３５４がクリックまたはタップされると、指定された挿入箇所にＴ００を示すコードが挿入される。Ｔ００入力ボタン３５４を利用した入力においては、入力ボタン３４８への入力は不要である。Ｔ００は、他の入力手段（キーボード（入力インタフェース２５０の１つ）、もしくは表示画面３０に別途に表示されるスクリーンキーボード）から入力することも可能であるが、Ｍ０６指令と組み合わせて利用する頻度が多い。このため、Ｔ００入力ボタン３５４がＭ０６指令入力ボタン３５３と同じ画面（工具データ画面３４０）に表示されることによってプログラミングが効率化される。
【０１２６】
図９及び図１０において示された工具データ画面３４０の表示態様は、単なる一例であって、他の表示態様であってもよい。例えば、ボタンやテキストの表示位置は、図９及び図１０に示されたものでなくてもよい。また、入力ボタン３４８はテキストではなく、記号や図柄によって表されてもよく、矢印ボタン３４９ａ、３４９ｂは他の記号や図柄によって表されてもよい。なお、図９及び図１０では、工具データ画面３４０において工具ＴａがＴ番号順に表示されているが、過去の使用回数の多い順、または、過去の所定期間内において使用回数の多い順に工具Ｔａが表示されてもよい。さらに、数値３４６、３４７については、後述する工具長オフセットの１つとして利用することもできるが、これについては後段の工具データ画面の変形例３４０ａで説明する。
＜工具オフセット＞
次に、工具オフセット画面３６０を説明するにあたり、工具オフセット画面３６０で指定する工具長補正、工具径補正、ノーズＲ補正の概念について説明する。工具長補正(tool length compensation)とは、基準点Ｐｓと工具Ｔａの切刃先端部の位置ずれ（オフセット）を補正することをいう。図１１・図１２に示すように、基準点Ｐｓは、機械原点Ｏｍを通るＺｍ軸に位置し、上述する、工具Ｔａが工具主軸１１４に取り付けられた状態での工具Ｔａの基端点に一致する。機械原点Ｏｍに対する工具Ｔａの切刃先端部の位置は、工具Ｔａの種類、摩耗状態によって千差万別である。このため、加工プログラム１５７では、あたかも機械原点ＯｍがワークＷ１の切削位置を通るかのようにプログラムコードが記述されるが、機械原点Ｏｍに対する工具Ｔａの切刃先端部の位置は工具長オフセット(tool length offset)としてプログラムされる動きとは別に管理され、工作機械１００は、工具長オフセットを補正して加工プログラム１５７を実行する。
【０１２７】
具体的には、図１１・図１２に示すように、工具長オフセットは、機械座標系での機械原点Ｏｍに対する工具Ｔａの切刃先端部Ｅｇの位置（Ｘｆ，Ｙｆ，Ｚｆ）で定義される。Ｘｆは、工具Ｔａの切刃先端部ＥｇのＸｍ座標である。Ｙｆは、工具Ｔａの切刃先端部ＥｇのＹｍ座標である。Ｚｆは、工具Ｔａの切刃先端部ＥｇのＺｍ座標である。Ｘｆは、工具主軸１１４内の基準点Ｐｓを機械座標系の原点としたときの切刃先端部ＥｇのＸｍ座標Ｘｓｄと一致する。Ｙｆは、当該基準点Ｐｓを機械座標系の原点としたときの切刃先端部ＥｇのＹｍ座標Ｙｓｄと一致する。Ｚｆは、当該基準点ＰｓのＺｍ座標Ｚｐと、当該基準点Ｐｓを機械座標系の原点としたときの切刃先端部ＥｇのＺｍ座標Ｚｓｄとの和である。Ｚｐは、工作機械１００の仕様によってあらかじめ定められている。
【０１２８】
（Ｘｓｄ，Ｙｓｄ，Ｚｓｄ）は、形状オフセットと摩耗補正パラメータの２つの和によって求められる。形状オフセットとは、摩耗のない（新品の）工具Ｔａが工具主軸１１４に取り付けられた状態での、工具Ｔａの基端点（工具主軸１１４内の基準点Ｐｓ）を原点としたときの、切刃先端部ＥｇまでのＸｍ座標、Ｙｍ座標、Ｚｍ座標（Ｘｓ，Ｙｓ，Ｚｓ）である。Ｚｓは、上述する工具Ｔａの軸方向オフセットと一致する。ドリルのような径方向の形状が略円形である工具においては、Ｘｓ及びＹｓは、上述する径方向オフセットと一致する。摩耗補正パラメータは、工具Ｔａが摩耗したことにより、上述する形状オフセットからずれたずれ量を機械座標系で表現したものである。摩耗補正パラメータのＸｍ座標の値、Ｙｍ座標の値、Ｚｍ座標の値を、それぞれＸｄ、Ｙｄ、Ｚｄとするとき、工具長オフセットＸｆ，Ｙｆ，Ｚｆは、以下の式により表される。
Ｘｆ＝Ｘｓｄ＝Ｘｓ＋Ｘｄ
Ｙｆ＝Ｙｓｄ＝Ｙｓ＋Ｙｄ
Ｚｆ＝Ｚｐ＋Ｚｓｄ＝Ｚｐ＋Ｚｓ＋Ｚｄ
つぎに、工具径補正(tool radius compensation)の概念について説明する。工具径補正とは、ミル加工・削孔加工において、基準点Ｐｓと工具Ｔａの刃先(cutting edge)（工具Ｔａの回転軸Ａ２方向からみた工具Ｔａの最大径をなす周縁部（periphery））の位置ずれ（オフセット）を補正することをいう。機械原点Ｏｍに対する工具Ｔａの刃先の位置は、工具Ｔａの種類、摩耗状態によって千差万別である。このため、加工プログラム１５７では、あたかも機械原点ＯｍがワークＷ１の切削位置を通るようにプログラムコードが記述されるが、機械原点Ｏｍに対する工具Ｔａの刃先の位置は工具径オフセット(tool radius offset)として別に管理され、工作機械１００は、工具径オフセットを補正して加工プログラム１５７を実行する。
【０１２９】
図１３は、目標外形(target contour)Ｃｔの外側をミル加工する場合に、工具径補正を行った場合の工具の経路Ｌｃの一例を示す。図１３では、工具径オフセットＤｆは、工具Ｔａの回転軸Ａ２方向から見た機械原点Ｏｍと工具Ｔａの刃先との間の距離である。工具径補正によって、工具Ｔａの機械原点Ｏｍが、目標外形Ｃｔから工具径オフセットＤｆ以上離間した経路Ｌｃを移動するように制御される。目標外形Ｃｔ内側と目標外形Ｃｔ外側のどちら側に補正するか（ＮＣプログラムではＧ４１指令またはＧ４２指令のいずれを用いるかによって切刃進行方向の左右どちら側かで規定する）を与えれば、経路Ｌｃを公知の方法で数学的に求めることができる。
【０１３０】
図１４は、ミル工具における工具径オフセットＤｆを示す図である。図１４では、ミル工具の工具径オフセットＤｆを例示しているが、削孔加工に利用されるドリルにおいても同様に考えてよい。工具半径（tool radius）をＲｓとし、工具Ｔａの回転軸Ａ２に対する径方向の摩耗量Ｒｄとするとき、工具径オフセットＤｆは、以下の式により表される。
Ｄｆ＝Ｒｓ＋Ｒｄ
つぎに、ノーズＲ補正(nose radius compensation)の概念について説明する。工具の刃先(nose)は、一般に丸みをもっているため、工具長オフセットから規定される仮想刃先点(imaginary tool tip)ＥｇｖがワークＷ１と接触せず、仮想刃先点Ｅｇｖとは別の曲率半径Ｒの円弧によって形状が定義された刃先(cutting edge)ＥｇがワークＷ１と接触することとなる。このような状況で、仮想刃先点Ｅｇｖを工具の先端とみなしてプログラミングすると、図１５に示すように目標外形Ｃｔとずれた外形Ｃｒに加工されてしまう。図１５は、仮想刃先点Ｅｇｖが刃先Ｅｇの外部にあるために、曲率半径Ｒの円弧の中心Ｅｏが目標外形Ｃｔから曲率半径Ｒよりも大きく離間する経路Ｌｏを通ることにより目標外形Ｃｔとずれた外形Ｃｒに加工されてしまう例を示している。ノーズＲ補正は、ワーク座標系における刃先Ｅｇの形状を規定する円弧の中心Ｅｏから仮想刃先点Ｅｇｖに向かう方向（刃先方向(nose direction)）、及び、当該円弧の曲率半径Ｒに基づいて、当該円弧の中心Ｅｏの経路が目標外形Ｃｔから曲率半径Ｒだけ離間する経路Ｌｃとなるように仮想刃先点Ｅｇｖの移動経路を補正することをいう。これにより、図１５に示すように、仮想刃先点Ｅｇｖの経路は、目標外形ＣｔよりもワークＷ１内側を通る経路Ｌｖｃとなるように補正される。なお、仮想刃先点Ｅｇｖの経路Ｌｖｃから機械原点Ｏｍの移動経路を求めるのは、工具長補正を用いて行うことができる。
【０１３１】
図１６は、刃先方向を例示したものである。図１６は、８通りの刃先方向に加えて、ワーク座標系のＹ軸に垂直な全ての刃先方向に対応した特殊な刃先を刃先方向[０]（及び、刃先方向[９]）とした合計９つの刃先方向を図示している。刃先方向[１]は、ワーク座標系のＸ軸正方向且つＺ軸正方向に向かう方向である。刃先方向[２]は、ワーク座標系のＸ軸正方向且つＺ軸負方向に向かう方向である。刃先方向[３]は、ワーク座標系のＸ軸負方向且つＺ軸負方向に向かう方向である。刃先方向[４]は、ワーク座標系のＸ軸負方向且つＺ軸正方向に向かう方向である。刃先方向[５]は、ワーク座標系のＺ軸正方向に向かう方向である。刃先方向[６]は、ワーク座標系のＸ軸正方向に向かう方向である。刃先方向[７]は、ワーク座標系のＺ軸負方向に向かう方向である。刃先方向[８]は、ワーク座標系のＸ軸負方向に向かう方向である。
【０１３２】
ワーク座標系での円弧の中心Ｅｏの座標を（Ｘｏ，Ｙｏ，Ｚｏ）とするとき、ワーク座標系における仮想刃先点Ｅｇｖの座標（Ｘｇｖ，Ｙｇｖ，Ｚｇｖ）は、以下のように定められる。
刃先方向［１］：（Ｘｇｖ，Ｙｇｖ，Ｚｇｖ）＝（Ｘｏ＋Ｒ，Ｙｏ，Ｚｏ＋Ｒ）
刃先方向［２］：（Ｘｇｖ，Ｙｇｖ，Ｚｇｖ）＝（Ｘｏ＋Ｒ，Ｙｏ，Ｚｏ−Ｒ）
刃先方向［３］：（Ｘｇｖ，Ｙｇｖ，Ｚｇｖ）＝（Ｘｏ−Ｒ，Ｙｏ，Ｚｏ−Ｒ）
刃先方向［４］：（Ｘｇｖ，Ｙｇｖ，Ｚｇｖ）＝（Ｘｏ−Ｒ，Ｙｏ，Ｚｏ＋Ｒ）
刃先方向［５］：（Ｘｇｖ，Ｙｇｖ，Ｚｇｖ）＝（Ｘｏ，Ｙｏ，Ｚｏ＋Ｒ）
刃先方向［６］：（Ｘｇｖ，Ｙｇｖ，Ｚｇｖ）＝（Ｘｏ＋Ｒ，Ｙｏ，Ｚｏ）
刃先方向［７］：（Ｘｇｖ，Ｙｇｖ，Ｚｇｖ）＝（Ｘｏ，Ｙｏ，Ｚｏ−Ｒ）
刃先方向［８］：（Ｘｇｖ，Ｙｇｖ，Ｚｇｖ）＝（Ｘｏ−Ｒ，Ｙｏ，Ｚｏ）
刃先方向［０］、［９］：（Ｘｇｖ，Ｙｇｖ，Ｚｇｖ）＝（Ｘｏ，Ｙｏ，Ｚｏ）
目標外形Ｃｔ内側と目標外形Ｃｔ外側のどちら側に補正するか（ＮＣプログラムではＧ４１指令またはＧ４２指令のいずれを用いるかによって切刃進行方向の左右どちら側かで規定する）を与えれば、該円弧の中心Ｅｏの経路Ｌｃを公知の方法で数学的に求めることができる。そして、刃先方向が与えられると、上述の（Ｘｏ，Ｙｏ，Ｚｏ）と（Ｘｇｖ，Ｙｇｖ，Ｚｇｖ）との対応関係から仮想刃先点Ｅｇｖの経路Ｌｖｃが求められる。経路Ｌｖｃが求められると、仮想刃先点Ｅｇｖを切刃先端部Ｅｇとみなした工具長補正によって経路Ｌｖｃから機械原点Ｏｍの移動経路を求められる。
【０１３３】
また、ノーズＲ補正においても摩耗の概念を導入することができる。この場合、摩耗のない（新品の）工具Ｔａの工具長に工具長補正で使用される摩耗補正パラメータを加えることによって工具長オフセット（Ｘｆ，Ｙｆ，Ｚｆ）を求め、摩耗がないときの曲率半径Ｒｏから、摩耗量Ｒｄを減じることによって曲率半径Ｒを求めればよい。
＜工具オフセット画面＞
図１７及び図１８は、工具オフセット画面３６０の表示例である。図１７及び図１８を参照すると、Ｇ４３指令／Ｇ４４指令（工具長補正）でのオフセット値を参照するためのＨ番号、Ｇ４１指令／Ｇ４２指令（工具径補正）でのオフセット値を参照するためのＤ番号のいずれかとして参照される参照番号３６１が、工具オフセット画面３６０の左端に表示される。この参照番号３６１は、工具Ｔａと直接関連づけられない。図１７と図１８とは、図示しない切替ボタンによって切り替えられる。
【０１３４】
図１７において、参照番号３６１の右隣には、工具長補正の際に利用される摩耗のない（新品の）工具Ｔａが工具主軸１１４に取り付けられた状態での切刃先端部ＥｇのＸｍ座標、あるいは、ノーズＲ補正の際に利用される摩耗のない（新品の）工具Ｔａが工具主軸１１４に取り付けられた状態での仮想刃先点ＥｇｖのＸｍ座標を表すＸ値３６２が表示される。Ｘ値３６２の右隣には、工具長補正の際に利用される摩耗のない（新品の）工具Ｔａが工具主軸１１４に取り付けられた状態での切刃先端部ＥｇのＹｍ座標、あるいは、刃先丸み補正の際に利用される摩耗のない（新品の）工具Ｔａが工具主軸１１４に取り付けられた状態での仮想刃先点ＥｇｖのＹｍ座標を表すＹ値３６３が表示される。Ｙ値３６３の右隣には、工具長補正の際に利用される摩耗のない（新品の）工具Ｔａが工具主軸１１４に取り付けられた状態での切刃先端部ＥｇのＺｍ座標、あるいは、ノーズＲ補正の際に利用される摩耗のない（新品の）工具Ｔａが工具主軸１１４に取り付けられた状態での仮想刃先点ＥｇｖのＺｍ座標を表すＺ値３６４が表示される。工具オフセット画面３６０の右端には、工具径補正の際に利用される工具半径Ｒｓ、あるいは、ノーズＲ補正の際に利用される摩耗がないときの刃先Ｅｇの形状を規定する円弧の曲率半径Ｒｏを表すＲ値３６５が表示される。
【０１３５】
工具オフセット画面３６０の右下隅には、矢印ボタン３６９ａ、３６９ｂが表示されている。矢印ボタン３６９ａ、３６９ｂのクリックまたはタップによって、工具オフセット画面３６０に表示される参照番号３６１の範囲を変更することができる。
【０１３６】
図１８において、参照番号３６１の右隣には、工具長補正あるいはノーズＲ補正の際に利用される摩耗補正パラメータのＸｍ座標を表すＸｄ値３７１が表示される。Ｘｄ値３７１の右隣には、工具長補正あるいはノーズＲ補正の際に利用される摩耗補正パラメータのＹｍ座標を表すＹｄ値３７２が表示される。Ｙｄ値３７２の右隣には、工具長補正あるいはノーズＲ補正の際に利用される摩耗補正パラメータのＺｍ座標を表すＺｄ値３７３が表示される。Ｚｄ値３７３の右隣には、工具径補正あるいはノーズＲ補正の際に利用される径方向の摩耗量Ｒｄを表すＲｄ値３７４が表示される。工具オフセット画面３６０の右端には、上述する刃先方向［０］〜［９］に対応する方向値３７５が表示される。工具径補正のとき、方向値３７５は０として表示される。
【０１３７】
参照番号３６１、Ｘ値３６２、Ｙ値３６３、Ｚ値３６４、Ｒ値３６５、Ｘｄ値３７１、Ｙｄ値３７２、Ｚｄ値３７３、Ｒｄ値３７４、及び方向値３７５は、行ごとに対応づけられ、プログラムコード３０２中のＨ番号とＤ番号とのうちの少なくとも１つに関連づけられる。このように、プログラムコード３０２中のＨ番号とＤ番号とのうちの少なくとも１つに関連づけられる工具情報１５８を第２工具情報と呼ぶ。工具情報は、第２工具情報を含み、第２工具情報は、参照番号３６１、Ｘ値３６２、Ｙ値３６３、Ｚ値３６４、Ｒ値３６５、Ｘｄ値３７１、Ｙｄ値３７２、Ｚｄ値３７３、Ｒｄ値３７４、及び方向値３７５のうちの少なくとも１つを含む。１つの参照番号３６１は、工具長補正、工具径補正、ノーズＲ補正のいずれか１つのオフセット値を管理する。つまり、第２工具情報は、工具長補正を行うためのパラメータ、工具径補正を行うためのパラメータ、ノーズＲ補正を行うためのパラメータのいずれかである。このような管理方法が採用されているため、工具長補正に対応する参照番号３６１と同じ行にあるＲ値３６５、Ｒｄ値３７４、及び方向値３７５には０が表示される。工具径補正に対応する参照番号３６１と同じ行にあるＸ値３６２、Ｙ値３６３、Ｚ値３６４、Ｘｄ値３７１、Ｙｄ値３７２、及びＺｄ値３７３には０が表示される。
【０１３８】
工具オフセット画面３６０の下端には、Ｄ番号入力ボタン３６７、Ｈ番号入力ボタン３６８が表示されている。工具長補正を行う場合、（１）Ｇコード一覧画面３２０、キーボード（入力インタフェース２５０の１つ）等で先にＧ４３指令又はＧ４４指令をプログラムコード３０２に入力した後、プログラム編集画面３００中においてＨ番号を挿入する挿入箇所をタップ・クリック・カーソル移動等の操作で指定する。（２）工具オフセット画面３６０を参照し、工具長補正に適したＸ値３６２、Ｙ値３６３、Ｚ値３６４、Ｘｄ値３７１、Ｙｄ値３７２、及びＺｄ値３７３が表示されている行をタップまたはクリックで選択する。（３）Ｈ番号入力ボタン３６８をタップまたはクリックする。これによって、プログラムコード３０２中の（１）によって指定された挿入箇所に、（２）で選択された列の参照番号３６１の先頭に文字Ｈが付加されたＨ番号が挿入される。例えば、参照番号３６１として「３」が選択されている場合、Ｈ０３もしくはＨ００３がプログラムコード３０２に入力される。このように入力された参照番号３６１を参照するＧ４３指令／Ｇ４４指令は、Ｇ４９指令が呼ばれて工具長補正がキャンセルされるか、追加のＧ４３指令／Ｇ４４指令によってオフセット値が変更されるまで有効となる。
【０１３９】
工具径補正を行う場合、（１）Ｇコード一覧画面３２０、キーボード（入力インタフェース２５０の１つ）等で先にＧ４１指令またはＧ４２指令をプログラムコード３０２に入力した後、プログラム編集画面３００中においてＤ番号を挿入する挿入箇所をタップ・クリック・カーソル移動等の操作で指定する。（２）工具オフセット画面３６０を参照し、工具径補正に適したＲ値３６５、Ｒｄ値３７４、及び方向値３７５が表示されている行をタップまたはクリックで選択する。なお、工具径補正とノーズＲ補正とのいずれの場合においてもＧ４１指令またはＧ４２指令が利用されるため、方向値３７５が参照される。このため、工具径補正においては、方向値３７５が０または９である行が選択される必要がある。一般的には、方向値３７５は０に指定される。最後に、（３）Ｄ番号入力ボタン３６７をタップまたはクリックする。これによって、プログラムコード３０２中の（１）によって指定された挿入箇所に、（２）で選択された列の参照番号３６１の先頭に文字Ｄが付加されたＤ番号が挿入される。例えば、参照番号３６１として「５」が選択されている場合、Ｄ０５もしくはＤ００５がプログラムコード３０２に入力される。このように入力された参照番号３６１を参照するＧ４１指令／Ｇ４２指令は、Ｇ４０指令が呼ばれて工具径補正がキャンセルされるか、追加のＧ４１指令／Ｇ４２指令によってオフセット値が変更されるまで有効となる。
【０１４０】
ノーズＲ補正を行う場合、まず、（１）仮想刃先点Ｅｇｖに係る工具長オフセットを上述する工具長補正によって補正する。工具長補正は、Ｇ４３指令／Ｇ４４指令によってなされてもよいが、Ｔ番号によってなされることもある。これについては後段の工具データ画面の変形例３４０ａで説明する。つぎに、（２）Ｇコード一覧画面３２０、キーボード（入力インタフェース２５０の１つ）等で先にＧ４１指令またはＧ４２指令をプログラムコード３０２に入力した後、プログラム編集画面３００中においてＤ番号を挿入する挿入箇所をタップ・クリック・カーソル移動等の操作で指定する。（３）工具オフセット画面３６０を参照し、ノーズＲ補正に適したＲ値３６５、Ｒｄ値３７４、及び方向値３７５が表示されている行をタップまたはクリックで選択する。ノーズＲ補正では、仮想刃先点Ｅｇｖと円弧の中心Ｅｏとの位置ずれを、工作機械１００が方向値３７５を参照して補正するため、（１）に係る補正においては、仮想刃先点Ｅｇｖに係る工具長オフセットをプログラマは考慮すればよい。最後に、（４）Ｄ番号入力ボタン３６７をタップまたはクリックする。これによって、プログラムコード３０２中の（２）によって指定された挿入箇所に、（３）で選択された列の参照番号３６１の先頭に文字Ｄが付加されたＤ番号が入力される。例えば、参照番号３６１として「８」が選択されている場合、Ｄ０８もしくはＤ００８がプログラムコード３０２に挿入される。このように入力された参照番号３６１を参照するＧ４１指令／Ｇ４２指令は、Ｇ４０指令が呼ばれて工具径補正がキャンセルされるか、追加のＧ４１指令／Ｇ４２指令によってオフセット値が変更されるまで有効となる。
【０１４１】
工具オフセット画面３６０は、このように、参照番号３６１、Ｘ値３６２、Ｙ値３６３、Ｚ値３６４、Ｒ値３６５、Ｘｄ値３７１、Ｙｄ値３７２、Ｚｄ値３７３、Ｒｄ値３７４、及び方向値３７５を表示し、Ｄ番号・Ｈ番号に係るパラメータを１つの補助画面で管理しているため、補助画面３１０の数を減少させることができる。さらには、工具オフセット画面３６０には、Ｄ番号入力ボタン３６７、Ｈ番号入力ボタン３６８が表示され、これらのボタン操作によって参照番号３６１をＤ番号・Ｈ番号に変換してプログラムコード３０２へ挿入することができる。これによってプログラマは、選択したパラメータをプログラムコード３０２に簡単に入力することができる。
【０１４２】
なお、図１７及び図１８において示された工具オフセット画面３６０の表示態様は、単なる一例であって、他の表示態様であってもよい。例えば、ボタンやテキストの表示位置は、図１７及び図１８に示されたものでなくてもよい。また、Ｄ番号入力ボタン３６７、Ｈ番号入力ボタン３６８はテキストではなく、記号や図柄によって表されてもよく、矢印ボタン３６９ａ、３６９ｂは他の記号や図柄によって表されてもよい。なお、図１７及び図１８では、工具オフセット画面３６０において参照番号３６１順にパラメータが表示されているが、過去の使用回数の多い順、または、過去の所定期間内において使用回数の多い順にパラメータが表示されてもよい。
＜マクロ変数画面＞
図１９は、マクロ変数画面３８０の表示例である。マクロ変数画面３８０とは、加工プログラム１５７で使用されるマクロ変数の数値、及び、マクロ変数の内容を表示する画面である。マクロ変数とは、プログラムコード中において、繰り返し利用される数値に対応づけられる変数である。マクロ変数によって、プログラムコード中において繰り返し利用される数値の変更を容易とすることができる。マクロ変数には、工作機械１００で実行される全ての加工プログラム中で共通に利用できるコモン変数（１００番台、５００番台が多く用いられる）と、１つの加工プログラム内で利用できるローカル変数（一般的に、＃１〜＃３３が用いられる）と、工作機械１００のシステムパラメータを管理するシステム変数（一般的に、１０００番台以降が用いられる）がある。
【０１４３】
図１９では、マクロ変数画面３８０は、コモン変数の数値、及び、内容を表示している。マクロ変数画面３８０は、ローカル変数、システム変数についても同様に表示してもよいが、ローカル変数・システム変数の表示例については説明を省略する。マクロ変数画面３８０では、左端に変数名３８１が表示される。変数名３８１の右隣りには、変数名３８１で示されるマクロ変数に入力される数値３８２が表示される。
【０１４４】
マクロ変数画面３８０の右端には、変数名３８１で示されるマクロ変数に対応するコメント３８３が表示される。変数名３８１、数値３８２、コメント３８３は、行ごとに対応づけられている。マクロ変数画面３８０の右上隅には、コメント表示切替ボタン３８４が表示される。コメント表示切替ボタン３８４のクリックまたはタップによって、マクロ変数画面３８０中のコメント３８３の表示／非表示が切り替えられる。また、マクロ変数画面３８０の右下隅には、矢印ボタン３８９ａ、３８９ｂが表示されており、矢印ボタン３８９ａ、３８９ｂのクリックまたはタップによって、マクロ変数画面３８０に表示される変数名３８１の範囲を変更することができる。
【０１４５】
マクロ変数画面３８０の下端左側には、変数入力ボタン３８５、及び、コメント入力ボタン３８６が表示される。変数名３８１、数値３８２、及び、コメント３８３は、行ごとに対応づけされて管理されるため、変数名３８１、数値３８２、及びコメント３８３のうちのどれか１つがクリックまたはタップされると、クリックまたはタップされた項目と同じ行に係る変数名３８１、数値３８２、コメント３８３が選択され、白黒反転表示などがされる。その状態で変数入力ボタン３８５がクリックまたはタップされると、選択されている変数名３８１に係るマクロ変数が、プログラムコード３０２中の挿入箇所に挿入される。また、その状態でコメント入力ボタン３８６がクリックまたはタップされると、選択されているコメント３８３の両側に丸括弧を追加した文字列が、プログラムコード３０２中の挿入箇所に挿入される。具体的には、図１９において例えば、＃１００が選択されているときに、コメント入力ボタン３８６がクリックまたはタップされると、文字列（ＷＯＲＫ−ＮＵＭ）がプログラムコード３０２中の挿入箇所に挿入される。
【０１４６】
さらに、特定の変数名３８１、数値３８２、コメント３８３がクリックまたはタップされると、選択された変数名３８１、数値３８２、コメント３８３を編集するためのポップアップウィンドウが表示される。プログラマは、当該ポップアップウィンドウ中で数値３８２、コメント３８３を編集したり、まだ数値３８２が割り当てられていないマクロ変数を設定したりすることができる。
【０１４７】
図１９において示されたマクロ変数画面３８０の表示態様は、単なる一例であって、変数名３８１と数値３８２とが表示されていれば他の表示態様であってもよい。例えば、ボタンやテキストの表示位置は、図１９に示されたものでなくてもよい。また、コメント表示切替ボタン３８４、変数入力ボタン３８５、コメント入力ボタン３８６はテキストではなく、記号や図柄によって表されてもよく、矢印ボタン３８９ａ、３８９ｂは他の記号や図柄によって表されてもよい。また、コメント３８３、コメント表示切替ボタン３８４、コメント入力ボタン３８６は省略されてもよい。さらに、図１９では、マクロ変数画面３８０においてマクロ変数の番号順に変数名３８１が表示されているが、過去の使用回数の多い順、または、過去の所定期間内において使用回数の多い順に変数名３８１が表示されてもよい。
＜マクロ入力画面＞
図２０は、マクロ入力画面３９０の表示例である。マクロ入力画面３９０とは、マクロをＧＵＩによって簡単に入力するための画面である。本実施形態においては、マクロとは、プログラミングにおいて利用される文字セット（character set）のことを指す。当該文字セットは、汎用的もしくは頻繁に用いられる文字セットであることが望ましい。マクロは、プログラムコードにおいて制御構造(control structure)を規定するための演算子３９１（以下、制御命令(control command)３９１と呼ぶ）、数学関数を表す関数コード３９２、比較演算子（comparative operator）３９３、及び、外部出力コマンド３９４を含む。
【０１４８】
ここで、関数コード３９２のうち、ＢＣＤとは、バイナリデータをＢＣＤ（Binary-Coded Decimal）データに変換する関数である。ＢＩＮとは、ＢＣＤデータをバイナリデータに変換する関数である。ＦＩＸとは、小数点以下切り捨ての関数である。ＦＵＰとは、小数点以下切り上げの関数である。ＲＯＵＮＤとは、四捨五入によって整数を出力する関数である。比較演算子３９３のうち、ＥＱは"equal"を表し、ＮＥは"not equal"を表し、ＧＴは、"greater than"を表し、ＬＴは"less than"を表し、ＧＥは"greater than or equal to"を表し、ＬＥは"less than or equal to"を表す。外部出力コマンド（external output command）３９４のうち、ＰＯＰＥＮはＲＳ２３２Ｃポートオープンのコマンドである。ＰＯＰＥＮは、外部データ出力の前に呼び出される。ＰＣＬＯＳはＲＳ２３２Ｃポートクローズのコマンドである。ＰＣＬＯＳは外部データ出力が完了した時点で呼び出される。ＤＰＲＮＴは引数（文字列及び／又は数値）をＩＳＯコードで出力するコマンドである。ＢＰＲＮＴは引数（文字列及び／又は数値）をバイナリ形式で出力するコマンドである。ＢＣＤ・ＢＩＮ・ＦＩＸ・ＦＵＰ・ＲＯＵＮＤ以外の関数コード３９２及び制御命令３９１については、汎用的なプログラム言語でも用いられており、広く知られているため説明を省略する。
【０１４９】
マクロ入力画面３９０の下端には、入力ボタン３９５が表示される。制御命令３９１、関数コード３９２、比較演算子３９３、及び、外部出力コマンド３９４のどれか１つがクリックまたはタップされると、クリックまたはタップされたコードが選択され、白黒反転表示などがされる。その状態で入力ボタン３９５がクリックまたはタップされると、選択されているコードがプログラムコード３０２中の挿入箇所に挿入される。
【０１５０】
マクロ入力画面３９０では、さらに、上述する文字セット３９１〜３９４と組み合わせて利用される記号(symbol)の入力ボタン―算術演算子（arithmetic operator）キーボタン３９６、スペースキーボタン３９７、及び改行キーボタン３９８が表示されている。つまり、当該記号とは、算術演算子、空白文字、改行文字を含む。ＮＣプログラムにおいて、改行文字とは、「；」(ＥＯＢ)を含む。なお、図２０には表示されていないが、マクロ入力画面３９０には、０から９までの数字キー(numeric key)ボタン、小数点キー（decimal key）ボタンが付加的に表示されてもよい。マクロ入力画面３９０は、上述のマクロを表示するばかりでなく、マクロと組み合わせて利用される記号の入力ボタン３９６〜３９８も併せて表示しているため、プログラミング補助画面（programming assistance screen）と称してもよい。
【０１５１】
算術演算子キーボタン３９６がクリックまたはタップされると、クリックまたはタップされたボタンに対応する演算子がプログラムコード３０２中の挿入箇所に挿入される。スペースキーボタン３９７がクリックまたはタップされると、スペースがプログラムコード３０２中の挿入箇所に挿入される。改行キーボタン３９８がクリックまたはタップされると、改行文字（「；」(ＥＯＢ)）がプログラムコード３０２中の挿入箇所に挿入される。算術演算子キーボタン３９６、スペースキーボタン３９７、及び改行キーボタン３９８を利用した入力においては、入力ボタン３９５への入力は不要である。なお、加工プログラム編集プログラム２２１は、入力ボタン３９６〜３９８以外に、コンピュータ２００に接続されているキーボード（入力インタフェース２５０の１つ）、もしくは表示画面３０に別途に表示されるスクリーンキーボードから算術演算子・スペース・改行の入力を受け付けてもよい。加工プログラム編集プログラム１５９は、入力ボタン３９６〜３９８以外に、表示画面３０に別途に表示されるスクリーンキーボードから算術演算子・スペース・改行の入力を受け付けてもよい。
【０１５２】
数学関数を規定する関数コード３９２、外部出力コマンド３９４、及び演算子３９１、３９３の少なくとも１つを含む文字セットを表示する補助画面（プログラミング補助画面）であるマクロ入力画面３９０では、当該文字セット（マクロ）３９１〜３９４と組み合わせて利用される記号の入力ボタン３９６〜３９８も併せて表示される。このため、特に工作機械１００のタッチパネル付きディスプレイ１５４において別途のスクリーンキーボードの表示を行った上で入力する手間を省くことができる。その結果、工作機械１００でのプログラミングが効率化される。
【０１５３】
関数コード３９２の引数、比較演算子３９３の比較対象値、及び、外部出力コマンド３９４の引数には、上述のマクロ変数が入力される場合も多い。このような場合、マクロ変数画面３８０を第１補助画面３１２と第２補助画面３１４とのうちの一方、マクロ入力画面３９０を第１補助画面３１２と第２補助画面３１４とのうちの他方に表示することによってプログラムをより効率的に行うことができる。
【０１５４】
なお、図２０において示されたマクロ入力画面３９０の表示態様は、単なる一例であって、他の表示態様であってもよい。例えば、ボタンやテキストの表示位置は、図２０に示されたものでなくてもよい。入力ボタン３９５、スペースキーボタン３９７はテキストではなく、記号や図柄によって表されてもよい。スペースキーボタン３９７は、無地のスペースバーボタンとして表示されてもよい。改行キーボタン３９８は、テキストまたは、他の記号や図柄によって表されてもよい。また、算術演算子キーボタン３９６、スペースボタン３９７、及び改行キーボタン３９８の少なくとも１つは省略されてもよい。制御命令３９１、関数コード３９２、比較演算子３９３、及び、外部出力コマンド３９４は、図２０に表示されたコードの以外のコードを含んでもよく、図２０に表示されたコードの一部が省略されてもよい。
＜工具データ画面の変形例＞
基本的な表示画面３０の説明は以上である。しかし、拡張的な機能として、工具データ画面３４０において工具オフセット画面３６０で管理されるパラメータ３６１〜３６５、３７１〜３７５を、Ｔ番号に紐づけて管理することも可能である。この場合、Ｔ番号にかかる工具Ｔａに交換される際に、プログラムコード３０２中のＧ４３指令、Ｇ４４指令の有無に関わらず、Ｔ番号に紐づけられて管理されたパラメータ３６１〜３６５、３７１〜３７５に基づいて工具長補正が実行される。工作機械１００の設定によって、Ｇ４３指令及びＧ４４指令による工具長補正のみを有効にしたり、Ｔ番号による工具長補正のみを有効にしたり、両方の指定による工具長補正を有効にしたりすることが可能である。両方の指定による工具長補正が有効であるとき、Ｔ番号による補正値と、Ｇ４３指令及びＧ４４指令による補正値が合算されて、工具長補正が行われる。なお、工具径補正及びノーズＲ補正は、工具データ画面３４０の表示の有無に関わらず、プログラムコード中にＧ４１指令またはＧ４２指令を記載する必要がある。
【０１５５】
工具Ｔａによっては異なる刃の端面を利用して異なる切削加工を可能とするものもある。そのような工具における工具Ｔａの端面のそれぞれは、異なるパラメータ３６１〜３６５、３７１〜３７５を有することとなる。このような端面を管理するにあたり、Ｔ番号３４１の整数部分（もしくは上から所定桁分）で工具Ｔａを特定し、小数点以下（もしくは上記所定桁分以降）で異なる端面を指定することができる。このような端面を規定する符号をサフィックスと呼ぶ。Ｔ番号３４１の数値とサフィックスとを組み合わせて１つの工具Ｔａを指定する場合もあるが、そのような場合については説明を省略する。
【０１５６】
図２１は、工具データ画面３４０の変形例３４０ａを示す。図２１では、複数の用途で用いられるＴ番号が３であるドリルと、Ｔ番号が５である旋削工具とが表示されている。これらの工具については、数値３４５の右隣にサフィックス３４１ａが表示されている。サフィックス３４１ａはアルファベットで表記されているが、プログラムコードにＴ番号として入力される際には、ＡＢＣ…Ｚが「０１」「０２」「０３」…「２６」に変換されるか、ＡＢＣ…Ｚが「６１」「６２」「６３」…「８６」に変換される。サフィックス３４１ａが表示されていない工具については、プログラムコード３０２に入力されるＴ番号の最後には、サフィックスとして００が付加される。以降の説明において、図２１の工具を説明する際には、プログラムコード３０２にて出力されるＴ番号を利用して説明する。例えば、旋削ドリルについては、Ｔ番号が３．０８といった形で説明する。なお、サフィックス３４１ａがアルファベットで表示されるのではなく、数字で表示されてもよい。また、サフィックス３４１ａの表示位置は他の場所（例えば、Ｔ番号３４１とシンボル３４２との間）であってもよい。
【０１５７】
本変形例では、Ｔ番号３４１とサフィックス３４１ａとの組み合わせから参照される情報として、工具オフセット画面３６０で管理されるＸ値３６２、Ｙ値３６３、Ｚ値３６４、Ｒ値３６５、Ｘｄ値３７１、Ｙｄ値３７２、Ｚｄ値３７３、Ｒｄ値３７４、及び方向値３７５の少なくとも１つに相当する数値を含む。また、数値３４５は、Ｒ値３６５またはＸ値３６２に相当するものであるとして、数値３４６は、Ｚ値３６４に相当するものとして、数値３４７は、Ｘ値３６２またはＲ値３６５に相当するものとして管理されてもよい。
【０１５８】
Ｔ番号が３．００のドリルと、Ｔ番号が３．０８の旋削ドリルは工具としては同一である。しかし、Ｔ番号が３．００のドリルは、削孔加工に用いられるため、加工においては工具径補正が必要となる。一方、Ｔ番号が３．０８の旋削ドリルは旋削加工に用いられるため、加工においては工具長補正（もしくはノーズＲ補正）が必要となる。このように同じ工具であっても別の補正が必要であるパラメータを管理するのにサフィックス３４１ａは有効である。Ｔ番号による工具長補正、工具径補正、及び、ノーズＲ補正が有効である場合において、Ｔ０３．００（Ｔ００３．００）がプログラムコード３０２において指定されると、例えば呼び径５.０ｍｍを考慮した工具径補正が設定される。Ｔ０３．０８（Ｔ００３．０８）がプログラムコード０３２において指定されると、例えば工具長オフセットが（５．０,０．０,１２３．０）となる工具長補正が設定される。工作機械１００のプロセッサ１５１は、加工プログラム１５７の実行時には、Ｇ４１指令、Ｇ４２指令、Ｇ４３指令、Ｇ４４指令の代わりに、加工部位を示す名称３４４、サフィックス３４１ａの範囲などを参照し、工具長補正、工具径補正、及び、ノーズＲ補正のいずれの補正が適切か判定してもよい。
【０１５９】
プログラマは、プログラム編集画面３００と、工具データ画面３４０を参照して、以下のように、プログラム中に加工に適した工具長補正、工具径補正、及び、ノーズＲ補正に係るＴ番号をプログラム中に入力することができる。（１）プログラム編集画面３００中においてＴ番号を挿入する挿入箇所をタップ・クリック・カーソル移動等の操作で指定する。（２）工具データ画面３４０を参照し、加工に適した工具及び切削加工における誤差を補正するためのパラメータが表示されている行をタップまたはクリックで選択する。（３）入力ボタン３４８をタップまたはクリックする。これによって、プログラムコード３０２中の（１）によって指定された挿入箇所に（２）で選択された工具に対応するサフィックス入りのＴ番号が入力される。
＜加工プログラムの編集方法、加工プログラム編集プログラムの処理の流れ＞
次に、本実施形態における旋削加工を説明する。図２２は、本実施形態における加工プログラムの編集方法、及び、加工プログラム編集プログラム２２１（１５９）の処理を示すフローチャートである。プロセッサ２１０（１５１）は、加工プログラム編集プログラム２２１（１５９）を実行すると、図２２に示す動作を行う。まず、プロセッサ２１０（１５１）は、工作機械１００に装着可能な工具Ｔａの工具情報１５８を取得する（ステップＳ１）。工具情報１５８とは、例えば、工具Ｔａに対応するＴ番号３４１、工具Ｔａの名称（工具名）３４３、工具Ｔａの寸法３４５〜３４７、並びに、切削加工における誤差を補正するためのパラメータ３６２〜３６５、３７１〜３７５の少なくとも１つを含む。切削加工における誤差を補正するためのパラメータは、工具長補正を行うためのパラメータ３６２〜３６４・３７１〜３７３、工具径補正を行うためのパラメータ３６５・３７４・３７５、及びノーズＲ補正を行うためのパラメータ３６５・３７４・３７５の少なくとも１つを含む。
【０１６０】
工具情報１５８は、工具Ｔａの使用により累積した累積摩耗量３５１、３５２をさらに含むことが好ましい。工具情報１５８は、加工プログラム編集プログラム２２１（１５９）を実行する機械中のメモリ２２０（１５２）に保存されているものを読み込んでもよいが、工作機械１００のメモリ１５２に記憶されている最新の工具情報１５８を取得してもよい。特に、累積摩耗量３５１・３５２は、工作機械１００が工具Ｔａの使用態様や使用時間から工作機械１００（プロセッサ１５１）によって算出され、メモリ１５２によって記憶され、プロセッサ２１０によってネットワーク２９０経由で読みだされてもよい。これによって、様々な加工プログラム１５７に利用される工具Ｔａの累積摩耗量３５１、３５２を一元的に管理することができる。
【０１６１】
つぎに、プロセッサ２１０（１５１）は、工作機械１００を制御するための加工プログラム１５７のプログラムコード３０２を表示するプログラム編集画面３００をディスプレイ２４０（１５４）に表示する処理を実行する（ステップＳ２）。プログラムコード３０２が編集中である場合、プロセッサ２１０（１５１）は、編集中のプログラムコードをメモリ２２０（１５２）から読み込んでディスプレイ２４０（１５４）に表示する。つぎに、少なくとも１つの補助画面３１０（第１補助画面３１２及び第２補助画面３１４）に表示する最初の表示情報を指定する（ステップＳ３）。表示情報とは、工具データ画面３４０、工具オフセット画面３６０、マクロ変数画面３８０、マクロ入力画面３９０、Ｇコード一覧画面３２０、Ｍコード一覧画面３３０のいずれかから選択される。ステップＳ３においては、デフォルトであらかじめ選択された表示画面、プログラマの利用頻度の高い表示画面、または、プログラムコード３０２が編集中である場合前回の編集終了時に表示されていた表示画面であることが好ましい。
【０１６２】
つぎに、プロセッサ２１０（１５１）は、少なくとも１つの補助画面３１０を表示する処理を実行する（ステップＳ４）。より具体的には、プロセッサ２１０（１５１）は、少なくとも１つの補助画面３１０として、第１補助画面３１２と第２補助画面３１４とをディスプレイ２４０（１５４）に表示する処理を実行する。プロセッサ２１０（１５１）は、ディスプレイ２４０（１５４）に、プログラム編集画面３００と少なくとも１つの補助画面３１０とをディスプレイ２４０（１５４）に並べて表示する処理を実行する。ステップＳ４においては、プロセッサ２１０（１５１）は、少なくとも１つの補助画面３１０に表示する情報（表示情報）を、工具情報、制御方法、並びに、工具情報及び制御情報以外の他の情報との中から選択するための表示情報選択画面３１６をディスプレイ２４０（１５４）にさらに表示する処理を実行する。当該他の情報は、プログラムコード３０２において規定するマクロ変数（マクロ変数画面３８０で表示されるマクロ変数）、プログミングにおいて利用される文字セット３９１〜３９４（マクロ入力画面３９０で表示される文字セット）の少なくとも１つを含む。さらに、プロセッサ２１０（１５１）は、第１補助画面３１２と第２補助画面３１４とのいずれかを指定する切替設定画面３１８をディスプレイ２４０（１５４）に表示する処理を実行する。
【０１６３】
つぎに、プロセッサ２１０（１５１）は、表示情報の切替要求があるか否かを判定する（ステップＳ５）。プロセッサ２１０（１５１）は、表示情報選択画面３１６のＯＫボタン３１７が操作されたイベントを検出することによって当該切替要求の有無を判定することができる。表示情報の切替要求があるとき（ステップＳ５でＹｅｓ）、プロセッサ２１０（１５１）は、切替設定画面３１８において指定されている補助画面の情報を取得して、当該情報に基づいて表示情報を切り替える補助画面を指定する（ステップＳ６）。そして、プロセッサ２１０（１５１）は、表示情報選択画面３１６において選択された表示情報をメモリ２２０（１５２）から読み込む（ステップＳ７）。そして、ステップＳ４に戻り、プロセッサ２１０（１５１）は、表示情報選択画面３１６において選択された表示情報を少なくとも１つの補助画面３１０に表示する処理を実行する（ステップＳ４）。より具体的には、プロセッサ２１０（１５１）は、切替設定画面３１８にて指定された補助画面に、表示情報選択画面３１６において選択された表示情報を表示する。
【０１６４】
ここで、ステップＳ３においてマクロ変数画面３８０とマクロ入力画面３９０とが指定された直後のステップＳ４においては、第１補助画面３１２及び第２補助画面３１４は、工具Ｔａの工具情報と工具Ｔａの制御方法とのうちのいずれも表示しない。しかし、仮にステップＳ３において、マクロ変数画面３８０とマクロ入力画面３９０とが指定された場合であっても、上述したステップＳ７において工具データ画面３４０、工具オフセット画面３６０、Ｇコード一覧画面３２０、Ｍコード一覧画面３３０のいずれかが表示されることとなるため、その後再び実行されるステップＳ４においては、少なくとも１つの補助画面３１０は、工具Ｔａの工具情報と工具Ｔａの制御方法とのうち少なくとも１つを表示することとなる。なお、工具Ｔａの制御方法の表示とは、Ｇコード一覧画面３２０とＭコード一覧画面３３０とのうちのいずれかの表示を意味する。
【０１６５】
以上により、ステップＳ４においては、プロセッサ２１０（１５１）は、工具データ画面３４０、工具オフセット画面３６０、マクロ変数画面３８０、マクロ入力画面３９０、Ｇコード一覧画面３２０、Ｍコード一覧画面３３０を少なくとも１つの補助画面３１０（第１補助画面３１２及び第２補助画面３１４）に表示する処理を実行することが可能である。プロセッサ２１０（１５１）、ディスプレイ２４０（１５４）は、それらを表示するにあたり以下のような特徴的な動作を行う。
（１）プロセッサ２１０（１５１）は、少なくとも１つの補助画面３１０のうちの１つの補助画面に、Ｇコードと、Ｇコード以外のカスタマイズドコード（Ｍコード）とのいずれか一方のコードを表示する処理を実行する。ディスプレイ２４０（１５４）は、少なくとも１つの補助画面３１０のうちの１つの補助画面に、Ｇコードと、Ｇコード以外のカスタマイズドコードとのいずれか一方のコードを表示する。
（２）プロセッサ２１０（１５１）は、当該１つの補助画面に、当該いずれか一方のコードの制御内容３２２、３３２をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、少なくとも１つの補助画面３１０のうちの１つの補助画面に、Ｇコードと、Ｇコード以外のカスタマイズドコードとのいずれか一方の制御内容を表示する。
（３）プロセッサ２１０（１５１）は、当該１つの補助画面に、ＥＯＢを入力するためのキーボタン３２９、３３９をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、少なくとも１つの補助画面３１０のうちの１つの補助画面に、ＥＯＢを入力するためのキーボタン３２９、３３９を表示する。
（４）プロセッサ２１０（１５１）は、少なくとも１つの補助画面３１０のうちの１つの補助画面に、第１工具情報（プログラムコード３０２中のＴ番号３４１に関連づけられる工具情報１５８：３４１〜３４７、３５１、３５２の少なくとも１つ）と第２工具情報（プログラムコード３０２中のＨ番号とＤ番号とのうちの少なくとも１つに関連づけられる工具情報１５８：３６１〜３６５、３７１〜３７５のうちの少なくとも１つ）とのいずれか一方を表示する処理を実行する。ディスプレイ２４０（１５４）は、少なくとも１つの補助画面３１０のうちの１つの補助画面に、第１工具情報と第２工具情報とのいずれか一方を表示する。
（５）プロセッサ２１０（１５１）は、当該第１工具情報を表示する補助画面（工具データ画面３４０）に、Ｍ０６指令をプログラムコード３０２に入力するためのＭ０６指令入力ボタン３５３をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、当該第１工具情報を表示する補助画面（工具データ画面３４０）に、Ｍ０６指令をプログラムコード３０２に入力するためのＭ０６指令入力ボタン３５３をさらに表示する。
（６）プロセッサ２１０（１５１）は、当該第１工具情報を表示する補助画面（工具データ画面３４０）に、工具Ｔａを指定しないＴ番号をプログラムコード３０２に入力するためのＴ００入力ボタン３５４をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、当該第１工具情報を表示する補助画面（工具データ画面３４０）に、工具Ｔａを指定しないＴ番号をプログラムコード３０２に入力するためのＴ００入力ボタン３５４をさらに表示する。
（７）プロセッサ２１０（１５１）は、当該第２工具情報を表示する補助画面（工具オフセット画面３６０）に、当該第２工具情報と関連付けられた参照番号３６１と、当該参照番号３６１をプログラムコード３０２中にＨ番号として入力するためのＨ番号入力ボタン３６８と、当該参照番号３６１をプログラムコード３０２中にＤ番号として入力するためのＤ番号入力ボタン３６７と、をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、当該第２工具情報を表示する補助画面（工具オフセット画面３６０）に、当該第２工具情報と関連付けられた参照番号３６１と、当該参照番号３６１をプログラムコード３０２中にＨ番号として入力するためのＨ番号入力ボタン３６８と、当該参照番号３６１をプログラムコード３０２中にＤ番号として入力するためのＤ番号入力ボタン３６７と、をさらに表示する。
（８）プロセッサ２１０（１５１）は、文字セット３９１〜３９４を表示する補助画面（マクロ入力画面３９０）に、文字セット３９１〜３９４と組み合わせて利用される記号の入力ボタン３９６〜３９８をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、文字セット３９１〜３９４を表示する補助画面（マクロ入力画面３９０）に、文字セット３９１〜３９４と組み合わせて利用される記号の入力ボタン３９６〜３９８をさらに表示する。
【０１６６】
つぎに、表示情報の切替要求がないとき（ステップＳ５でＮｏ）、プロセッサ２１０（１５１）は、プログラムコード３０２中において、新たにコードを挿入する挿入箇所を指定する（ステップＳ８）。制御装置１５０においては、プロセッサ１５１は、タッチパネル付きディスプレイ１５４のタッチパネルによるタップによって挿入箇所を指定することができる。コンピュータ２００においては、プロセッサ２１０は、入力インタフェース２５０のうちのマウスによるクリックや入力インタフェース２５０のうちのキーボードによるカーソル移動によって挿入箇所を指定することができる。
【０１６７】
つぎに、少なくとも１つの補助画面３１０において、プログラムコード３０２に挿入される少なくとも１つの挿入情報が選択される（ステップＳ９）。少なくとも１つの補助画面３１０に工具データ画面３４０、工具オフセット画面３６０、Ｇコード一覧画面３２０、Ｍコード一覧画面３３０が表示されている場合、上述の工具情報と上述の制御方法とのうちの少なくとも１つの情報が選択される。例えば以下のように挿入情報が選択される。
（１）Ｇコード一覧画面３２０において、Ｇコード３２１の行がタップまたはクリックで選択される。
（２）Ｍコード一覧画面３３０において、Ｍコード３３１の行がタップまたはクリックで選択される。
（３）工具データ画面３４０において、工具（及び切削加工における誤差を補正するためのパラメータが表示されている行）がタップまたはクリックで選択される。
（４）工具オフセット画面３６０において、切削加工における誤差を補正するためのパラメータが表示されている行がタップまたはクリックで選択される。
（５）マクロ変数画面３８０において、変数名３８１が表示されている行がクリックまたはタップされる。
（６）マクロ入力画面３９０において、制御命令３９１、関数コード３９２、比較演算子３９３、及び、外部出力コマンド３９４のどれか１つがクリックまたはタップされる。
【０１６８】
つぎに、プロセッサ２１０（１５１）は、選択された挿入情報のプログラムコード３０２への挿入要求を受け付ける（ステップＳ１０）。挿入要求とは、入力ボタン３２８・３３８・３４８・３９５、Ｄ番号入力ボタン３６７、Ｈ番号入力ボタン３６８、変数入力ボタン３８５、または、コメント入力ボタン３８６が操作された（クリップまたはタップされた）イベントである。また、挿入要求は、改行キーボタン３２９・３３９・３９８、Ｍ０６指令入力ボタン３５３、Ｔ００入力ボタン３５４、算術演算子キーボタン３９６、または、スペースキーボタン３９７が操作された（クリップまたはタップされた）イベントを含んでもよい。
【０１６９】
挿入要求を受け付けると、プロセッサ２１０（１５１）は、挿入情報をコードへ変換する（ステップＳ１１）。入力ボタン３２８・３３８・３４８・３９５、及び、変数入力ボタン３８５が操作されたとき、それぞれ、選択されたＧコード３２１、選択されたＭコード３３１、選択された工具に係るＴ番号、選択された制御命令３９１・関数コード３９２・比較演算子３９３・外部出力コマンド３９４のいずれか、選択された変数名３８１がプログラムコードとなる。Ｄ番号入力ボタン３６７が操作されたとき、プロセッサ２１０（１５１）は、選択された参照番号３６１を、その先頭に文字Ｄを付加したＤ番号に変換する。Ｈ番号入力ボタン３６８が操作されたとき、プロセッサ２１０（１５１）は、選択された参照番号３６１を、その先頭に文字Ｈを付加したＨ番号に変換する。コメント入力ボタン３８６が操作されたとき、プロセッサ２１０（１５１）は、選択されているコメント３８３を、その両側に丸括弧を追加した文字列に変換する。
【０１７０】
つぎに、プロセッサ２１０（１５１）は、変換したコードをプログラムコード３０２へ挿入する（ステップＳ１２）。ステップＳ８からステップＳ１２によって、プロセッサ２１０（１５１）は、少なくとも１つの補助画面３１０において、工具情報と制御方法とのうちの少なくとも１つの情報が選択されると、少なくとも１つの情報に対応する命令をプログラムコード３０２の挿入箇所に挿入する。例えば、プロセッサ２１０（１５１）は、上述する第２工具情報を表示する補助画面（工具オフセット画面３６０）において参照番号３６１が指定された状態で、Ｈ番号入力ボタン３６８が操作されると、プログラムコード３０２中の挿入箇所に参照番号を含むＨ番号を挿入する。プロセッサ２１０（１５１）は、上述する第２工具情報を表示する補助画面（工具オフセット画面３６０）において参照番号３６１が指定された状態で、Ｄ番号入力ボタン３６７が操作されると、プログラムコード３０２中の挿入箇所に参照番号３６１を含むＤ番号を挿入する。プロセッサ２１０（１５１）は、マクロ変数画面３８０においてコメント３８３が指定された状態で、コメント入力ボタン３８６が操作されると、プログラムコード３０２中の挿入箇所にコメント３８３を含む文字列を挿入する。
【０１７１】
つぎに、プロセッサ２１０（１５１）は、プログラム終了要求を待つ（ステップＳ１３）。プログラム終了要求とは、加工プログラム編集プログラム２２１（１５９）の終了イベントである。プログラム終了要求がない（ステップＳ１３でＮｏ）と、ステップＳ４に戻る。プログラム終了要求がある（ステップＳ１３でＹｅｓ）と、プロセッサ２１０（１５１）は、編集したプログラムコード３０２をメモリ２２０（１５２）に保存して（ステップＳ１４）、終了する。
＜実施形態の作用及び効果＞
本実施形態に係る工作機械１００、工作機械１００の加工プログラム作成編集方法、及び、工作機械の加工プログラム編集のための加工プログラム編集プログラム２２１（１５９）においては、工作機械１００に装着可能な工具Ｔａの工具情報１５８が取得される。そして、プログラム編集画面３００と、工具Ｔａの工具情報１５８と工具Ｔａの制御方法とのうち少なくとも１つを表示する少なくとも１つの補助画面３１０とが並べて表示される。プログラムコード３０２中において新たにコードを挿入する挿入箇所を指定し、少なくとも１つの補助画面３１０において工具情報と制御方法とのうちの少なくとも１つの情報が選択されると、少なくとも１つの情報に対応する命令がプログラムコード３０２の挿入箇所に挿入される。これにより、プログラムコード３０２の編集に必要な工具Ｔａの工具情報１５８と工具Ｔａの制御方法の参照及び挿入を容易とすることができる。その結果、加工プログラム１５７のプログラミングが効率化される。
【０１７２】
図２２におけるフローチャートにおける各ステップの実行順序は、処理結果が変わらない範囲で変更可能である。また、図２２において、ステップＳ１３，Ｓ１４は省略されてもよい。この場合、ステップＳ１２の処理後、ステップＳ４に戻る。少なくとも１つの補助画面３１０が１つの補助画面のみを有する場合、ステップＳ６は省略可能である。また、本実施形態において、工具データ画面３４０、工具オフセット画面３６０、マクロ変数画面３８０、マクロ入力画面３９０、Ｇコード一覧画面３２０、Ｍコード一覧画面３３０の一部が省略されてもよい。ただし、工具データ画面３４０、工具オフセット画面３６０、Ｇコード一覧画面３２０、Ｍコード一覧画面３３０の少なくとも１つが省略されないことが望ましい。
【０１７３】
表示情報選択画面３１６、切替設定画面３１８は、省略されてもよい。この場合、工具データ画面３４０、工具オフセット画面３６０、マクロ変数画面３８０、マクロ入力画面３９０、Ｇコード一覧画面３２０、Ｍコード一覧画面３３０のうち少なくとも１つの補助画面３１０に表示されるものが切り替えられることなく表示されることになる。この場合、図２２においてステップＳ３、Ｓ５〜Ｓ７が省略されてもよい。
【０１７４】
本願においては、「備える」およびその派生語は、構成要素の存在を説明する非制限用語であり、記載されていない他の構成要素の存在を排除しない。これは、「有する」、「含む」およびそれらの派生語にも適用される。
【０１７５】
「〜部材」、「〜部」、「〜要素」、「〜体」、および「〜構造」という文言は、単一の部分や複数の部分といった複数の意味を有し得る。
【０１７６】
「第１」や「第２」などの序数は、単に構成を識別するための用語であって、他の意味（例えば特定の順序など）は有していない。例えば、「第１要素」があるからといって「第２要素」が存在することを暗に意味するわけではなく、また「第２要素」があるからといって「第１要素」が存在することを暗に意味するわけではない。
【０１７７】
程度を表す「実質的に」、「約」、および「およそ」などの文言は、最終結果が大きく変わらないような合理的なずれ量を意味し得る。本願に記載される全ての数値は、「実質的に」、「約」、および「およそ」などの文言を含むように解釈され得る。
【０１７８】
本願において「Ａ及びＢの少なくとも一方」という文言は、Ａだけ、Ｂだけ、及びＡとＢの両方を含むように解釈されるべきである。
【０１７９】
上記の開示内容から考えて、本発明の種々の変更や修正が可能であることは明らかである。したがって、本発明の趣旨を逸脱しない範囲で、本願の具体的な開示内容とは別の方法で本発明が実施されてもよい。
【符号の説明】
【０１８０】
１００                      ：工作機械
１５１，２１０              ：プロセッサ
１５２,２２０               ：メモリ
１５４，２４０              ：ディスプレイ
１５４，２５０              ：インタフェース
１５７                      ：加工プログラム
１５８                      ：工具情報
１５９，２２１              ：加工プログラム編集プログラム
３００                      ：プログラム編集画面
３１０                      ：少なくとも１つの補助画面
３１２                      ：第１補助画面
３１４                      ：第２補助画面
３１６                      ：表示情報選択画面
３１８                      ：切替設定画面
【要約】
工作機械の加工プログラム編集方法は、工作機械に装着可能な工具の工具情報を取得し、工作機械を制御するための加工プログラムのプログラムコードを表示するプログラム編集画面と、工具の工具情報と工具の制御方法とのうち少なくとも１つを表示する少なくとも１つの補助画面とを並べて表示し、プログラムコード中において、新たにコードを挿入する挿入箇所を指定し、少なくとも１つの補助画面において、工具情報と制御方法とのうちの少なくとも１つの情報が選択されると、少なくとも１つの情報に対応する命令をプログラムコードの挿入箇所に挿入する。【図１】
0006654740.tif 000002
【図２】
0006654740.tif 000003
【図３】
0006654740.tif 000004
【図４】
0006654740.tif 000005
【図５】
0006654740.tif 000006
【図６】
0006654740.tif 000007
【図７】
0006654740.tif 000008
【図８】
0006654740.tif 000009
【図９】
0006654740.tif 000010
【図１０】
0006654740.tif 000011
【図１１】
0006654740.tif 000012
【図１２】
0006654740.tif 000013
【図１３】
0006654740.tif 000014
【図１４】
0006654740.tif 000015
【図１５】
0006654740.tif 000016
【図１６】
0006654740.tif 000017
【図１７】
0006654740.tif 000018
【図１８】
0006654740.tif 000019
【図１９】
0006654740.tif 000020
【図２０】
0006654740.tif 000021
【図２１】
0006654740.tif 000022
【図２２】
0006654740.tif 000023