説明

NCプログラム編集装置、NCプログラム編集プログラム及びNCプログラム編集プログラムを記録したコンピュータ読取可能な記録媒体

【課題】プログラム命令の入力操作の負荷を軽減したNCプログラム編集装置、NCプログラム編集プログラム、及びこれを記録した記録媒体を提供する。
【解決手段】入力文字によって全プログラム命令の中から候補となるプログラム命令に絞込を行い(S101)、さらに、工具情報記憶エリアを参照して使用中の工具がある場合には(S102:YES)、その工具を使用するプログラム命令に絞り込む(S103:YES、S104)。また、開始指令記憶エリアを参照して開始指令が記憶されていれば(S105:YES)、対応する終了指令に絞り込む(S106:YES、S107)。また、複数の候補がある場合には優先順位に従って並び替え(S108)、上位の4個を入力候補に確定する(S109)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、NCプログラム編集装置、NCプログラム編集プログラム及びNCプログラム編集プログラムを記録したコンピュータ読取可能な記録媒体に関するものである。
【背景技術】
【0002】
一般に、工作機械を数値制御(NC)プログラムに従って動作させる場合、プログラムは英数字の組合せによるプログラム命令により指定される。このようなプログラム命令を入力・編集する場合、操作者が表示画面を見ながら直接キー入力を行う。プログラム命令を入力・編集するためには、プログラム命令の文法を知って、加工したい作業の内容をプログラム命令で表現しつつ入力を行う必要がある。さらに、1つ1つの英数字をキー入力するのが煩雑であり、1行ごとにプログラムを表示画面で確認するにも時間がかかっていた。そこで、入力・編集作業を効率よく行うために、プログラム命令を動作ブロックと必要データに分け、対話形式で動作ブロックとそのパラメータを入力するNCプログラム編集装置が提案されている(例えば、特許文献1参照)。
【特許文献1】特開平5−88735号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、上記従来のNCプログラム編集装置では、対話形式で入力が可能であるためにプログラム命令の文法に慣れていない操作者でも容易に入力ができるものの、目的とするプログラム命令にたどりつくまでに時間がかかり、ある程度慣れた操作者にとってはかえって煩わしく感じられるという問題があった。
【0004】
本発明は上記問題を解決するためになされたものであり、プログラム命令の入力操作の負荷を軽減したNCプログラム編集装置、NCプログラム編集プログラム、及びこれを記録した記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0005】
上記目的を達成するため、本発明の請求項1に記載のNCプログラム編集装置は、文字を入力する入力手段と、当該入力手段により入力された文字を表示する表示手段とを備えたNCプログラム編集装置において、実行可能なプログラム命令を記憶した記憶手段と、前記入力手段により入力された文字に基づいて、前記記憶手段に記憶されたプログラム命令の中から所定のプログラム命令を抽出する抽出手段と、前記抽出手段による抽出結果を入力候補として前記表示手段に表示させる表示制御手段と、前記表示手段に表示された入力候補の中から一の候補を選択する選択手段とを備えたことを特徴とする。
【0006】
また、本発明の請求項2に記載のNCプログラム編集装置は、請求項1に記載の発明の構成に加え、前記選択手段により選択された選択候補が工具に関する情報を含む場合に、当該工具に関する情報である工具情報を記憶する工具情報記憶手段と、前記工具情報記憶手段に記憶された工具情報に基づき、前記抽出結果を絞り込む第一絞込手段とを備え、前記表示制御手段は、前記第一絞込手段により絞り込まれた前記抽出結果を入力候補として表示させることを特徴とする。
【0007】
また、本発明の請求項3に記載のNCプログラム編集装置は、請求項1又は2に記載の発明の構成に加え、所定の動作の開始指令と終了指令とからなる一対のプログラム命令を対応づけて記憶した対応記憶手段と、前記選択手段により選択された選択候補が前記対応記憶手段に記憶されたプログラム命令の開始指令である場合に、当該開始指令を記憶する開始指令記憶手段と、前記開始指令記憶手段に記憶された開始指令に対応する終了指令が前記抽出結果に含まれている場合に、当該抽出結果を前記終了指令に絞り込む第二絞込手段とを備え、前記表示制御手段は、前記第二絞込手段により絞り込まれた前記抽出結果を入力候補として表示させることを特徴とする。
【0008】
また、本発明の請求項4に記載のNCプログラム編集装置は、請求項1乃至3のいずれかに記載の発明の構成に加え、前記記憶手段に記憶されたプログラム命令の優先順位を記憶した優先順位記憶手段と、前記優先順位記憶手段に記憶された優先順位に従って、前記抽出結果を絞り込む第三絞込手段とを備え、前記入力候補決定手段は、前記第三絞込手段により絞り込まれた前記抽出結果を表示させることを特徴とする。
【0009】
また、本発明の請求項5に記載のNCプログラム編集装置は、請求項4に記載の発明の構成に加え、前記選択手段による選択の際に、前記選択候補の選択回数を累積して計数する計数手段を備え、前記優先順位は、前記計数手段により計数された値に基づくものであることを特徴とする。
【0010】
また、本発明の請求項6に記載のNCプログラム編集プログラムは、請求項1乃至5のいずれかに記載のNCプログラム編集装置の各種処理手段としてコンピュータを機能させる。
【0011】
また、本発明の請求項7に記載の記録媒体は、請求項6に記載の発明のNCプログラム編集プログラムを記録している。
【発明の効果】
【0012】
本発明の請求項1に記載のNCプログラム編集装置は、記憶されているプログラム命令の中から、入力手段により入力された文字に従って、その文字で開始されるプログラム命令等、次に入力される可能性のある候補を抽出し、表示手段に表示させて選択可能とする。従って、入力したいプログラム命令の全ての文字を直接入力手段から入力しなくてもよいため、入力・編集の効率を高めることができる。
【0013】
また、本発明の請求項2に記載のNCプログラム編集装置は、請求項1に記載の発明の効果に加え、以前に確定されたプログラム命令が工具の情報を含む場合には、これを記憶しておき、その工具情報を参照して、その工具を用いたプログラム命令などに絞り込むので、精度の高い抽出を行うことができ、限られた表示領域でも所望のプログラム命令が入力候補として表示される可能性が高くなる。
【0014】
また、本発明の請求項3に記載のNCプログラム編集装置は、請求項1又は2に記載の発明の効果に加え、継続して実行される動作の開始指令と終了指令とを対応づけて記憶しておき、開始指令が選択されたときには、それを記憶しておき、その情報を参照して、次には終了指令が来ると予測して絞り込むので、精度の高い抽出を行うことができ、限られた表示領域でも所望のプログラム命令が入力候補として表示される可能性が高くなる。
【0015】
また、本発明の請求項4に記載のNCプログラム編集装置は、請求項1乃至3のいずれかに記載の発明の効果に加え、優先順位に従ってその上位の候補に抽出結果を絞り込むので、候補数が多いときにも精度の高い表示を行うことができる。
【0016】
また、本発明の請求項5に記載のNCプログラム編集装置は、請求項4に記載の発明の効果に加え、プログラムの選択頻度を優先順位に反映させるようにしたので、一連のプログラムで実行させたい加工の種類によって頻出するプログラム命令が変動する場合に、精度の高い絞込を行うことができる。
【0017】
また、本発明の請求項6に記載のNCプログラム編集プログラムは、コンピュータに実行させることにより、請求項1乃至5のいずれかに記載のNCプログラム編集装置の作用効果を奏することができる。
【0018】
また、本発明の請求項7に記載の記録媒体は、コンピュータに読み取らせ、実行させることにより、請求項1乃至5のいずれかに記載のNCプログラム編集装置の作用効果を奏することができる。
【発明を実施するための最良の形態】
【0019】
以下、本発明の実施の形態を図面を参照して説明する。本実施形態のNCプログラム編集装置1は、工作機械等の加工を自動で行うための命令である数値制御(NC)プログラムを入力・編集するためのものである。まず、図1〜図5を参照してNCプログラム編集装置1の構成について説明する。図1は、NCプログラム編集装置1の電気的構成を示すブロック図である。図2は、プログラム命令100の例を示す説明図である。図3は、RAM12の入力候補記憶エリア125の構成を示す模式図である。図4は、RAM12の選択回数記憶エリア124の構成を示す模式図である。図5は、ディスプレイ24に表示されたプログラム命令の編集画面の例を示す説明図である。
【0020】
図1に示すように、NCプログラム編集装置1には、自身の制御を行うCPU10が設けられている。CPU10は、NCプログラム編集装置1の全体の制御の中心となるプロセッサであり、バス16を介して、ROM11,RAM12,不揮発メモリ13,入出力インタフェイス14に接続されている。ROM11には、NCプログラム編集装置1の制御を行う制御プログラムやNCプログラム編集プログラムが記憶されている。これらのプログラムは実行時にはROM11から読み出され、RAM12の所定の記憶エリア(図示外)にロードされ、CPU10がRAM12から読み出して実行する。
【0021】
入出力インタフェイス14には、入力手段であるキーボード21及び表示手段であるディスプレイ24が接続されている。キーボード21は、英数字や各種記号を入力することができ、これによってプログラム命令の入力・編集が行われる。ディスプレイ24には、図5に示すように入力されたプログラム命令が表示される。
【0022】
RAM12には、入力情報記憶エリア120,工具情報記憶エリア121,開始指令記憶エリア122,優先順位記憶エリア123,選択回数記憶エリア124,入力候補記憶エリア125が少なくとも設けられている。入力情報記憶エリア120は、キーボード21から入力される文字列を保存しておくバッファである。ここに記憶された入力情報に基づいて入力候補の選定が行われる(後述)。工具情報記憶エリア121は、入力が確定したプログラム命令(図2参照)に使用すべき工具の情報が含まれている場合に、それを記憶しておくエリアである。開始指令記憶エリア122は、入力が確定したプログラム命令(図2参照)が、継続して実行される動作についての開始指令だった場合にその開始指令を記憶するエリアであり、終了指令だった場合には記憶内容がクリアされる。優先順位記憶エリア123は、プログラム命令の優先順位が記憶されるエリアである。この優先順位が入力候補を表示させるときに参照される。選択回数記憶エリア124は、編集開始から現在までに入力された各プログラム命令の選択回数をプログラム命令ごとに対応づけて記憶しておくエリアである(図4参照。後述)。ここで記憶された各プログラム命令の選択回数に従って、優先順位記憶エリア123の順位が更新される。入力候補記憶エリア125は、入力情報から予測した入力候補を保存しておくバッファである(図3参照。後述)。
【0023】
不揮発メモリ13には、プログラム命令記憶エリア131及び対応記憶エリア132が少なくとも設けられている。プログラム命令記憶エリア131には、NCプログラム編集装置1で使用可能な全てのプログラム命令が記憶されている。入力候補の予測(後述)を行う際には、このプログラム命令記憶エリア131に記憶されているプログラム命令を母数として絞込を行う。尚、プログラム命令記憶エリア131が本発明の記憶手段に相当する。
【0024】
また、対応記憶エリア132には、継続する動作の開始指令と終了指令の組合せが対応づけられて記憶される。この組合せは、例えば、「M8」(クーラント液ON)と「M9」(クーラント液OFF)の組合せのなど、以下のようなものがある。「M260」:高精度モードON、「M269」:高精度モードOFF。「M400」:チップシャワーON、「M401」:チップシャワーOFF。「M418」:治具シャワーON、「M419」:治具シャワーOFF。「M490」:センタースルークーラントON、「M495」:センタースルークーラントOFF。このような開始指令と終了指令の組合せからなり、Mで開始されるプログラムは、「特殊Mコード」と称される。この対応記憶エリア132を参照して、開始指令に対応する終了指令を入力候補とする処理が行われる(後述)。尚、対応記憶エリア132が本発明の対応記憶手段に相当する。
【0025】
次に、図2を参照して、プログラム命令について説明する。図2に示すように、プログラム命令は、1行を1ブロックとして加工に使用する工具やテーブルの動作が定義されている。尚、図2では、ブロックごとに符号を付与している。ブロック101の「G90」はアブソリュート指令であり、軸移動の終点の位置をワーク座標系の座標値で指令するモードに切り替える。ブロック101の「G54」はワーク座標系選択指令であり、これ以後、あらかじめ設定した54番の座標系にて軸移動を行う。ブロック102及びブロック105の「G100」は、工具交換指令であり、「T1」が1番の工具の指定、「T2」が2番の工具の指定を意味する。従って、「G100T1」で「1番の工具への交換」が、「G100T2」で「2番の工具への交換」が指示されている。ブロック103の「G0」は位置決め指令であり、指定座標へ移動する。ブロック103の例では、X0Y0の座標位置に移動される。
【0026】
ブロック104の「M8」は、クーラント液の投入を開始する「クーラント液ON」指令である。この「M8」で開始されたクーラント液投入は、「M9」の「クーラント液OFF」で終了される。このような開始指令が入力された場合には、RAM12の開始指令記憶エリア122に記憶される。また、開始指令の後、終了指令が入力された場合には、記憶内容がクリアされる。開始指令の入力後、終了指令の入力が予測できるため、ここに記憶された開始指令が入力候補を絞り込むために利用される。
【0027】
次に、図3を参照して、入力候補記憶エリア125について説明する。入力候補記憶エリア125は、入力候補を格納するためのバッファ(配列)であり、入力候補の予測(絞込)処理が実行され、候補が確定するたびにその候補が各バッファに記憶される。本実施形態では、ディスプレイ24の表示画面の大きさから、バッファの数を4個としているが、これに限られるものではない。図3の例では、「G001」、「G100」、「G010」、「G012」の4個の入力候補が確定しており、図5に示すディスプレイ24にこの順で表示される。
【0028】
次に、図4を参照して、選択回数記憶エリア124について説明する。選択回数記憶エリア124には、プログラム命令の編集処理が開始されてから入力されたプログラム命令が、その入力回数とともに記憶されている。例えば、図4の例では、「G90」は1回入力されたプログラム命令である。一方、「G100」は、2回選択されたプログラム命令である。入力候補の選択や英数字キーの入力によりプログラム命令の入力が確定すると、その確定されたプログラム命令についての選択回数が1加算されて記憶される。
【0029】
次に、図5を参照して、ディスプレイ24に表示された画面について説明する。図5に示すように、ディスプレイ24の上部の画面領域には、入力されたプログラム命令が順に表示され、入力中でまだ確定していない命令の入力文字が最終行に表示される。本実施形態では、表示できるプログラム命令の数は3行分のみとなっているので、順次入力が行われると、3以上前に入力された命令は表示から見えなくなる。図5の例では、現在「G」の文字が入力されたところを示しており、直前に入力され確定された命令は「M8」、その前に入力され確定された命令は「G100T1」となっている。また、下部の画面領域には、入力された文字から予測される入力候補が4個表示され、選択可能となっている。図5の例では、「G」が入力された時点での予測候補が表示されている。この後、文字や数字の入力に従って、候補が変更されるとその結果がまた表示されることとなる。
【0030】
次に、以上の構成のNCプログラム編集装置1の動作について図6〜図8を参照して説明する。図6は、NCプログラム編集処理の全体の流れを示すフローチャートである。図7は、図6で実行される入力候補予測処理のフローチャートである。図8は、入力候補予測処理の中で実行される絞込処理のフローチャートである。
【0031】
図6に示すように、編集処理が開始されると、キー入力の発生を待つ(S1)。キー入力がない間は(S1:NO)、そのまま待機する。キー入力が発生したら(S1:YES)、入力されたキーが英数字キー又は削除キーかどうかを判断する(S5)。英数字キーや削除キーの場合には(S5:YES)、その入力内容に従って入力候補の予測を行い、ディスプレイ24に表示する処理を実行する(S10〜S30)。
【0032】
まず、入力候補記憶エリア125を初期化する(S10)。そして、入力内容に応じて入力情報記憶エリアを更新する(S15)。例えば、図5に示すように、いま「G」が入力されたとすると、入力情報記憶エリアの最初のバッファに「G」が記憶される。さらに、「G」が入力されている状態で、次の文字、例えば「1」が入力されたとすると、2番目のバッファに「1」が記憶される。逆に、「G1」となっている状態で削除キーが押されると、入力情報記憶エリア120の「1」が格納されていたバッファの内容は消去され、「G」のみとなる。「G」の状態で削除キーが押された場合には、入力情報記憶エリア120のバッファはすべて消去された状態となる。
【0033】
次に、入力情報記憶エリア120に記憶されている文字数が「0」かどうかを判断する(S20)。削除キーが押されたために、文字が全く格納されていない場合には(S20:YES)、S1に戻ってキー入力の発生を待つ。文字が1つでもある場合には(S20:NO)、その文字に基づいて入力候補の予測処理を実行する(S25)。入力候補予測処理の詳細については図7及び図8を参照して後述する。そして、予測処理において出力された入力候補をディスプレイ24に表示して(S30、図5参照)、S1に戻り、再度キー入力の発生を待つ。
【0034】
入力されたキーが英数字キーでも削除キーでもない場合には(S5:NO)、次に、それが終了キーであるかを判断する(S35)。終了キーの場合には(S35:YES)、編集処理を終了する。
【0035】
終了キーの入力でなかった場合には(S35:NO)、次に、候補選択キーの入力であったかを判断する(S40)。候補選択キーは、図5に示す入力画面上で、下部領域に表示されている入力候補の中から1つの候補を選択して確定するためのキーである。候補選択キーでもない場合には(S40:NO)、入力されたキーに対応したその他の処理を実行し(S45)、S1に戻ってキー入力の発生を待つ。
【0036】
候補選択キーの入力だった場合には(S40:YES)、選択された候補のプログラム命令を入力確定してディスプレイ24の上部領域に表示する(S50、図5参照)。そして、確定したプログラム命令に工具情報が含まれているかどうかを判断する(S55)。例えば、図2に示すブロック102やブロック105では、工具が指定されている。このような工具情報を含むプログラム命令であれば(S55:YES)、工具情報記憶エリア121に記憶する(S60)。この記憶エリアを参照して後述する入力候補予測処理における絞込が行われる。
【0037】
工具情報が含まれていない場合には(S55:NO)、次に、確定したプログラム命令が継続動作の開始指令かどうかを判断する(S65)。前述したように、「特殊Mコード」と称されるプログラム命令の組合せは、開始指令と終了指令からなっている。このような組合せにおける開始指令である場合には(S65:YES)、その開始指令を開始指令記憶エリア122に記憶する(S70)。この記憶エリアを参照して後述する入力候補予測処理における絞込が行われる。
【0038】
開始指令でなかった場合には(S65:NO)、確定したプログラム命令が継続動作の終了指令かどうかを判断する(S75)。終了指令であった場合には(S75:YES)、開始指令記憶エリア122の記憶内容をクリアする(S80)。すなわち、「特殊Mコード」の開始指令と終了指令の組合せが両方入力完了したので、以後の入力候補予測には用いる必要がないため、記憶内容を消去するものである。
【0039】
終了指令でなかった場合(S75:NO)、及び、工具情報の更新(S60)、開始指令の記憶(S70)もしくは開始指令記憶エリア122のクリア(S80)の後、確定したプログラム命令が選択された回数を選択回数記憶エリア124に記憶する(S85)。これは、そのプログラム命令に対応する選択回数に1を加算して記憶される。そして、S1に戻り、再度キー入力の発生を待つ。以上の処理を繰り返し実行し、編集処理が行われる。
【0040】
次に、編集処理のS25で実行される入力候補予測処理について、図7及び図8を参照して説明する。まず、入力情報記憶エリア120に格納されている入力情報を参照して、入力候補となるプログラム命令を絞り込む絞込処理を実行する(S101)。
【0041】
ここで、絞込処理について、図8を参照して説明する。本実施形態では、プログラム命令のうち、「G」で開始される「Gコード」及び「M」で開始される「Mコード」の場合に入力候補予測の対象としている。そこで、絞込処理では、まず、入力情報記憶エリア120に格納されている先頭文字が「G」又は「M」であるかを判断する(S200)。
【0042】
先頭文字が「G」や「M」でなかった場合には(S200:NO)、入力予測不能として候補を出力せず(S205)、そのまま入力予測処理に戻る。先頭文字が「G」又は「M」である場合(S200:YES)、次に、入力情報記憶エリア120に格納されている文字数が「1」かどうかを判断する(S210)。入力文字数が「1」の場合(S210:YES)、Gコード又はMコードの全てのプログラム命令が入力候補として考えられるので、先頭文字に従って、全てのGコード又はMコードを候補とする(S215)。そして入力予測処理に戻る。
【0043】
入力文字数が「1」でない場合には(S210:NO)、次に、入力情報記憶エリア120に格納されている文字数が「2」かどうかを判断する(S220)。入力文字数が「2」の場合(S220:YES)、2文字目を変数Xに代入する(S225)。そして、Xが数字かどうかを判断し(S230)、数字でない場合は(S230:NO)、入力予測不能として候補を出力せず(S235)、そのまま入力予測処理に戻る。本実施形態では、Gコード及びMコードは、先頭の「G」又は「M」以降の3桁は数字で構成されているため、2文字目のXが数字でない場合、入力ミスの可能性がある。
【0044】
2文字目Xが数字の場合は(S230:YES)、G又はMの次の3桁のいずれかがXとなるコードを入力候補とする(S240)。そして入力予測処理に戻る。例えば、Xが「1」であれば、Gコードの場合、「G001」、「G01*」、「G1**」、Mコードの場合、「M001」、「M01*」、「M1**」となる。このように、1の桁がXの場合には、10の位と100の位は0とし、10の位又は100の位がXの場合には、その下の桁はどんな数字でも候補とする。これによって、操作者は、前に来る「0」を入力する手間を省くことができる。
【0045】
入力文字数が「2」でない場合(S220:NO)、次に、入力情報記憶エリア120に格納されている文字数が「3」かどうかを判断する(S245)。入力文字数が「3」の場合(S245:YES)、2文字目を変数Xに、3文字目を変数Yに代入する(S250)。そして、X及びYが数字かどうかを判断し(S255)、数字でない場合は(S255:NO)、入力予測不能として候補を出力せず(S285)、そのまま入力予測処理に戻る。
【0046】
2文字目X及び3文字目Yが数字の場合は(S255:YES)、G又はMの次の3桁の下2桁又は上2桁がXYとなるコードを入力候補とする(S260)。そして入力予測処理に戻る。例えば、Xが「1」でY「2」であれば、Gコードの場合、「G012」、「G12*」、Mコードの場合、「M012」、「M12*」となる。
【0047】
入力文字数が「3」でない場合(S245:NO)、次に、入力情報記憶エリア120に格納されている文字数が「4」かどうかを判断する(S265)。入力文字数が「4」の場合(S265:YES)、2文字目を変数Xに、3文字目を変数Yに、4文字目を変数Zに代入する(S270)。そして、X、Y及びZが数字かどうかを判断し(S275)、数字でない場合は(S275:NO)、入力予測不能として候補を出力せず(S285)、そのまま入力予測処理に戻る。
【0048】
2文字目X、3文字目Y、4文字目Zの全てが数字の場合は(S275:YES)、G又はMの次の3桁がXYZとなるコードを入力候補とする(S280)。そして入力予測処理に戻る。例えば、Xが「1」、Yが「2」、Zが「3」であれば、Gコードの場合、「G123」、Mコードの場合、「M123」となる。
【0049】
以上の絞込処理が終了すると、図7の入力候補予測処理に戻り、次に、工具情報記憶エリア121を参照して、プログラムの今の位置で使用中の工具があるかどうかを判断する(S102)。例えば、図2に示すプログラムでは、ブロック102で工具交換が指示されている。この状態で、以降のプログラムを入力していれば(S102:YES)、交換された工具を用いたプログラム命令が入力されるのではないかという予想が可能である。そこで、絞込処理において出力された候補の中に、使用中の工具に対応するプログラム命令が存在するかどうかを判断する(S103)。例えば、工具情報記憶エリア121に記憶されている工具がタップであれば、G77のコード(タッピングサイクル:右ネジの穴の切削加工)及びG78のコード(逆タッピングサイクル:左ネジ穴の切削加工)が考えられる。
【0050】
使用中の工具に対応するプログラム命令が候補の中にあれば(S103:YES)、その対応命令を候補として確定する(S104)。確定後、又は、対応するプログラム命令が存在しない場合(S103:NO)、及び、工具情報記憶エリア121に現在使用中の工具情報が記憶されていない場合には(S102:NO)、そのままS105に進む。
【0051】
S105では、開始指令記憶エリア122に開始指令が記憶されているかを判断する(S105)。図6の編集処理において、開始指令が選択されたときにはこれを開始指令記憶エリア122に記憶し(S70)、終了指令が選択されたときには開始指令記憶エリア122をクリアしている(S80)。従って、これを参照することにより、現在のプログラム位置で継続動作を実行中であるかどうかがわかる。すなわち、開始指令が記憶されていれば、その動作が継続中となる。
【0052】
開始指令が記憶されている場合には(S105:YES)、出力されている候補の中に、その開始指令に対応する終了指令が存在するかどうかを判断する(S106)。対応する終了指令が存在すれば(S106:YES)、その終了指令を候補として確定する(S107)。例えば、入力文字が「M」1文字の場合、図8の絞込処理では全てのMコードが候補として出力されてくる(図8,S215)。そして、図2のブロック104のように、以前に「M8」が入力されているとき、開始指令記憶エリア122には「M8」(クーラント液ON)が記憶されている(S105:YES)。そして、「M8」に対応する終了指令は「M9」(クーラント液OFF)であり、これはMコードであるから絞込結果に含まれている(S106:YES)。そこで、「M9」を入力候補として確定する(S107)。
【0053】
確定後、又は、開始指令が記憶されていない場合(S105:NO)、及び、開始指令は記憶されているが対応する終了指令が候補中に存在しない場合(S106:NO)には、現在の候補を優先順位記憶エリア123に記憶されている順位に従って並び替える(S108)。例えば、開始指令記憶エリア122に「M8」が記憶されているが、入力文字が「G」の場合には、絞込結果がGコードのみであるから終了指令の「M9」は含まれていない(S106:NO)。そこで、絞込結果である全てのGコードを優先順位順に並び替えることになる(S108)。
【0054】
前述のように、優先順位記憶エリア123には予め定められた優先順位が記憶されており、プログラム命令選択確定の際に頻度情報が選択回数記憶エリア124に記憶されると、その頻度に従って書き換えられる。従って、選択回数を加味した優先順位に従って入力候補が並び替えられることとなる。例えば、図4に示す例では「G100」が他のプログラム命令よりも頻度が高いので、優先順位が高くなり、全Gコードの並び替えでは1位とされる。
【0055】
そして、並び替えた候補を、順位の高い順に4つまで入力候補として確定し、入力候補記憶エリア125に記憶する(S109)。そして、編集処理に戻り、ここで確定され記憶された入力候補がディスプレイ24に表示される(図6,S30)。
【0056】
以上説明したように、本実施形態のNCプログラム編集装置1によれば、文字を入力したときに入力候補を予測して表示させるので、わずかな文字数の入力により所望のプログラム命令を入力することができる。特に、GコードやMコードの場合、次に数字が入力されるたびに可能性のある候補が絞り込まれて表示される。さらに、工具情報や継続動作の開始指令が以前の行に存在する場合には、対応するプログラム命令に絞り込まれるので、高い精度で入力候補を出力できる。
【0057】
尚、上記実施形態において、図6のS25で入力予測処理を実行するCPU10が本発明の抽出手段に相当する。また、図6のS30で入力候補を表示させるCPU10が本発明の表示制御手段に相当する。また、図6のS50で選択された候補を確定するCPU10が本発明の選択手段に相当する。また、図7のS102〜S104で工具情報を参照して入力候補を確定する処理を実行するCPUが本発明の第一絞込手段に相当する。また、図7のS105〜S107で開始指令が記憶されている場合に入力候補を確定する処理を実行するCPU10が本発明の第二絞込手段に相当する。また、図7のS108及びS109で優先順位に従って入力候補を並び替え、上位候補を確定するCPU10が本発明の第三絞込手段に相当する。
【図面の簡単な説明】
【0058】
【図1】NCプログラム編集装置1の電気的構成を示すブロック図である。
【図2】プログラム命令100の例を示す説明図である。
【図3】RAM12の入力候補記憶エリア125の構成を示す模式図である。
【図4】RAM12の選択回数記憶エリア124の構成を示す模式図である。
【図5】ディスプレイ24に表示されたプログラム命令の編集画面の例を示す説明図である。
【図6】NCプログラム編集処理の全体の流れを示すフローチャートである。
【図7】図6で実行される入力候補予測処理のフローチャートである。
【図8】入力候補予測処理の中で実行される絞込処理のフローチャートである。
【符号の説明】
【0059】
1 プログラム編集装置
10 CPU
12 RAM
13 不揮発メモリ
21 キーボード
24 ディスプレイ
120 入力情報記憶エリア
121 工具情報記憶エリア
122 開始指令記憶エリア
123 優先順位記憶エリア
124 選択回数記憶エリア
125 入力候補記憶エリア
131 プログラム命令記憶エリア

【特許請求の範囲】
【請求項1】
文字を入力する入力手段と、当該入力手段により入力された文字を表示する表示手段とを備えたNCプログラム編集装置において、
実行可能なプログラム命令を記憶した記憶手段と、
前記入力手段により入力された文字に基づいて、前記記憶手段に記憶されたプログラム命令の中から所定のプログラム命令を抽出する抽出手段と、
前記抽出手段による抽出結果を入力候補として前記表示手段に表示させる表示制御手段と、
前記表示手段に表示された入力候補の中から一の候補を選択する選択手段とを備えたことを特徴とするNCプログラム編集装置。
【請求項2】
前記選択手段により選択された選択候補が工具に関する情報を含む場合に、当該工具に関する情報である工具情報を記憶する工具情報記憶手段と、
前記工具情報記憶手段に記憶された工具情報に基づき、前記抽出結果を絞り込む第一絞込手段とを備え、
前記表示制御手段は、前記第一絞込手段により絞り込まれた前記抽出結果を入力候補として表示させることを特徴とする請求項1に記載のNCプログラム編集装置。
【請求項3】
所定の動作の開始指令と終了指令とからなる一対のプログラム命令を対応づけて記憶した対応記憶手段と、
前記選択手段により選択された選択候補が前記対応記憶手段に記憶されたプログラム命令の開始指令である場合に、当該開始指令を記憶する開始指令記憶手段と、
前記開始指令記憶手段に記憶された開始指令に対応する終了指令が前記抽出結果に含まれている場合に、当該抽出結果を前記終了指令に絞り込む第二絞込手段とを備え、
前記表示制御手段は、前記第二絞込手段により絞り込まれた前記抽出結果を入力候補として表示させることを特徴とする請求項1又は2に記載のNCプログラム編集装置。
【請求項4】
前記記憶手段に記憶されたプログラム命令の優先順位を記憶した優先順位記憶手段と、
前記優先順位記憶手段に記憶された優先順位に従って、前記抽出結果を絞り込む第三絞込手段とを備え、
前記入力候補決定手段は、前記第三絞込手段により絞り込まれた前記抽出結果を表示させることを特徴とする請求項1乃至3のいずれかに記載のNCプログラム編集装置。
【請求項5】
前記選択手段による選択の際に、前記選択候補の選択回数を累積して計数する計数手段を備え、
前記優先順位は、前記計数手段により計数された値に基づくものであることを特徴とする請求項4に記載のNCプログラム編集装置。
【請求項6】
請求項1乃至5のいずれかに記載のNCプログラム編集装置の各種処理手段としてコンピュータを機能させるためのNCプログラム編集プログラム。
【請求項7】
請求項6に記載のNCプログラム編集プログラムを記録したコンピュータ読取可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2009−110273(P2009−110273A)
【公開日】平成21年5月21日(2009.5.21)
【国際特許分類】
【出願番号】特願2007−281937(P2007−281937)
【出願日】平成19年10月30日(2007.10.30)
【出願人】(000005267)ブラザー工業株式会社 (13,856)
【Fターム(参考)】