【解決手段】工作機械1は、ワークWを搬送するローダ装置10と、ワークWを加工する加工装置20とがプログラム32a,32bに基づいて動作する。工作機械1の一部に備えたプログラム編集装置40は、文字入力ボタン141,151の選択操作に応じて文字を入力する文字入力部42aと、特定ボタン181の選択操作に応じて、予め定められた命令コードの中から文字入力部32aで入力された文字に関連する命令コードを選択する選択部42bと、プログラム32a,32bを表示部41に表示するとともに、選択部32bで選択された命令コード及び該命令コードの説明を表示部41に表示する表示制御部42cとを含んでいる。
前記プログラム編集装置は、挿入ボタンの選択操作に応じて、前記文字入力部で入力された文字を前記プログラム内に挿入する挿入部を備えることを特徴とする請求項1または請求項2に記載の工作機械。
前記表示制御部は、前記プログラムを表示する表示領域の一部の表示領域に前記命令コード及び該命令コードの説明を表示することを特徴とする請求項1〜請求項3のうちいずれか1項に記載の工作機械。
前記表示制御部は、前記命令コード及び該命令コードの説明を所定方向にスクロール可能に一覧表示することを特徴とする請求項1〜請求項4のうちいずれか1項に記載の工作機械。
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、上記の特許文献1,2に記載された装置では、キーボードなどの入力装置を用いた操作が想定されている。一方、作業者が工作機械に設けられたコントローラ上でプログラムの編集を行う場合は、作業スペースの制約などの観点から、作業者がキーボードなどを操作することは困難である。従って、上記の特許文献1,2に記載された構成をそのまま工作機械に適用することはできない。
【0006】
本発明は、前述した事情に鑑みてなされたものであり、工作機械のプログラム編集における作業者の手間を軽減するとともに、作業者が工作機械の作業環境に応じたインタフェイスでプログラム編集を実行可能な工作機械、プログラム編集方法、及び制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために、本発明では、ワークを搬送するローダ装置と、ワークを加工する加工装置とを備え、ローダ装置及び加工装置がプログラムに基づいて駆動する工作機械であって、工作機械の一部に、プログラムを編集可能なプログラム編集装置を備え、プログラム編集装置は、文字入力ボタンの選択操作に応じて文字を入力する文字入力部と、特定ボタンの選択操作に応じて、予め定められた命令コードの中から文字入力部で入力された文字に関連する命令コードを選択する選択部と、プログラムを表示部に表示するとともに、選択部で選択された命令コード及び該命令コードの説明を表示部に表示する表示制御部と、を含むことを特徴とする。
【0008】
また、選択部は、文字入力部で入力された文字が先頭の文字となる命令コードを選択する構成でもよい。また、プログラム編集装置は、挿入ボタンの選択操作に応じて、文字入力部で入力された文字をプログラム内に挿入する挿入部を備える構成でもよい。
【0009】
また、表示制御部は、プログラムを表示する表示領域の一部の表示領域に命令コード及び該命令コードの説明を表示してもよい。また、表示制御部は、命令コード及び該命令コードの説明を所定方向にスクロール可能に一覧表示してもよい。
【0010】
また、本発明では、ローダ装置によるワークの搬送と、加工装置によるワークの加工とを行うためのプログラムを編集する工作機械のプログラム編集方法であって、プログラムを表示部に表示する第1表示ステップと、文字入力ボタンの選択操作に応じて文字を入力する文字入力ステップと、特定ボタンの選択操作に応じて、予め定められた命令コードの中から文字入力ステップで入力された文字に関連する命令コードを選択する選択ステップと、選択ステップで選択された命令コード及び該命令コードの説明を表示部に表示する第2表示ステップと、を含むことを特徴とする。
【0011】
また、本発明では、ローダ装置によるワークの搬送と、加工装置によるワークの加工とをプログラムに基づいて行う工作機械の制御部に、プログラムを表示部に表示する第1表示処理と、文字入力ボタンの選択操作に応じて文字を入力する文字入力処理と、特定ボタンの選択操作に応じて、予め定められた命令コードの中から文字入力処理で入力された文字に関連する命令コードを選択する選択処理と、選択処理で選択された命令コード及び該命令コードの説明を表示部に表示する第2表示処理と、を実行させることを特徴とする。
【発明の効果】
【0012】
本発明によれば、文字入力部が文字入力ボタンの選択操作に応じて文字を入力し、選択部が特定ボタンの選択操作に応じて、予め定められた命令コードの中から文字入力部で入力された文字に関連する命令コードを選択し、表示制御部がプログラムを表示部に表示するとともに、選択部で選択された命令コード及び該命令コードの説明を表示部に表示する。このような構成によれば、作業者が入力候補として表示される命令コード及び説明を参照して命令コードを入力することができるので、工作機械のプログラム編集における作業者の手間を軽減し、命令コードの入力ミスを防止することができる。また、作業者が工作機械の作業環境に応じたインタフェイスでプログラム編集を実行することができる。
【0013】
また、選択部は、文字入力部で入力された文字が先頭の文字となる命令コードを選択するので、命令コードの階層構造を利用して命令コードを選択し、選択した命令コードの一覧を作業者に提示することが可能となる。また、プログラム編集装置は、挿入ボタンの選択操作に応じて、文字入力部で入力された文字をプログラム内に挿入する挿入部を備えるので、入力候補を参照して入力した文字(命令コード)をプログラム内に反映させることができる。
【0014】
また、表示制御部は、プログラムを表示する表示領域の一部の表示領域に命令コード及び該命令コードの説明を表示するので、命令コード(入力候補)を表示するための表示領域を特別に設けることなく命令コードを表示することができる。従って、表示画面の表示領域を有効に活用して命令コードを含む様々な情報を表示することができる。また、表示制御部は、命令コード及び該命令コードの説明を所定方向にスクロール可能に一覧表示するので、入力候補としての命令コードの数が多い場合でも、すべての命令コードをスクロールに応じて作業者に提示することができる。
【発明を実施するための形態】
【0016】
以下、本発明の実施形態について図面を参照しながら説明する。ただし、本発明はこれに限定されるものではない。また、図面においては実施形態を説明するため、一部分を大きくまたは強調して記載するなど適宜縮尺を変更して表現している。以下の各図において、XYZ座標系を用いて図中の方向を説明する。このXYZ座標系においては、水平面に平行な平面をXZ平面とする。このXZ平面に平行な主軸(後述する主軸21,22)の方向をZ方向と表記し、Z方向に直交する方向(ワークWに対する切削量を規定する方向)をX方向と表記する。また、XZ平面に垂直な方向はY方向と表記する。X方向、Y方向及びZ方向のそれぞれは、図中の矢印の方向が+方向であり、矢印の方向とは反対の方向が−方向であるものとして説明する。
【0017】
図1(a)及び(b)は、実施形態に係る工作機械1の一例を示す図である。
図1(a)は、工作機械1を+Z側から見たときの例を示している。
図1(b)は、工作機械1を+Y側から見たときの例を示している。この工作機械1は、例えば平行2軸旋盤である。
図1において、工作機械1の+Z側が正面であり、−Z側が背面である。また、工作機械1の±X側は側面であり、X方向は工作機械1の左右方向である。
図1(a)及び(b)に示すように、工作機械1は、ローダ装置10と、加工装置20、制御装置30と、コントローラ(プログラム編集装置)40と、を備えている。
【0018】
ローダ装置10は、ワーク保持部11と、ローダ駆動部13とを備えている。ローダ装置10は、例えば、後述する主軸21,22とワーク搬入部25との間の搬送経路TにおいてワークWを搬送する。ワーク保持部11は、ワークWを複数の把持爪によって把持するローダチャック12を有している。ローダチャック12は、例えば、ワークWを把持して−Y方向に向けた姿勢と、−Z方向に向けた姿勢(後述する主軸21,22にワークWを向けた姿勢)とに移動可能に形成される。なお、ローダ装置10は、複数のローダチャック12が形成されてもよい。
【0019】
ローダ駆動部13は、X駆動部14と、Z駆動部15と、Y駆動部16とを有している。X駆動部14は、不図示の駆動源により、X移動体14aをガイドレール14bに沿ってX方向に移動可能に構成している。Z駆動部15は、X移動体14aに形成され、不図示の駆動源により、Z移動体15aを不図示のガイド部に沿ってZ方向に移動可能に構成している。Y駆動部16は、Z移動体15aに形成され、不図示の駆動源により、Y移動体16aをガイド部16bに沿ってY方向に移動可能に構成している。
【0020】
ワーク保持部11は、Y移動体16aの下部に形成される。ワーク保持部11のローダチャック12により把持したワークWは、X駆動部14、Z駆動部15、及びY駆動部16がそれぞれ駆動することにより、X〜Z方向またはこれらを合成した方向に搬送される。以上のように構成されるローダ装置10の駆動は、後述する制御装置30によって制御される。
【0021】
加工装置20は、主軸21,22と、タレット23,24と、ワーク搬入部25とを有している。主軸21,22は、X方向に並んで配置され、それぞれ不図示の駆動装置によって中心軸AX1,AX2まわりに回転する。主軸21,22の+Z側の端部には、それぞれワークWを把持可能な複数の把握爪21a,22aが設けられている。タレット23は、主軸21の−X側に配置されている。タレット24は、主軸22の+X側に配置されている。
【0022】
タレット23,24は、それぞれ不図示の駆動装置によって、Z方向に平行な軸まわりに回転する。また、タレット23,24の周面には、不図示の複数の切削工具が保持されており、タレット23,24を回転させることにより、所望の切削工具が選択される。切削工具としては、ワークWに対して切削加工を施すバイト等の他、ドリルやエンドミル等の回転工具が用いられてもよい。また、タレット23,24は、不図示の駆動装置により、ワークWに対して例えばX方向、Y方向、及びZ方向、またはこれらを合成した方向に移動可能となっている。ただし、主軸21,22やタレット23,24は2つであることに限定されず、例えば主軸及びタレットのいずれか一方または双方が1つあってもよい。
【0023】
ワーク搬入部25には、加工対象であるワークWが載置される。ワーク搬入部25としては、例えば固定台が用いられるが、これに限定されるものではなく、コンベアやロータリー式の載置台などが用いられてもよい。なお、ワーク搬入部25は、ワークWの搬出部を兼ねてもよく、この搬出部をワーク搬入部25と異なる部分に配置してもよい。以上のように構成される加工装置20の駆動は、後述する制御装置30によって制御される。
【0024】
制御装置30は、所定のプログラムに基づいてローダ装置10や加工装置20の動作を統括的に制御する。なお、制御装置30は、有線または無線を介して上位制御装置50に接続されてもよい。制御装置30は、上位制御装置50の記憶部に記憶されたプログラムに基づいてローダ装置10や加工装置20の動作を制御してもよい。
【0025】
コントローラ40は、作業者(オペレータ)により操作される工作機械1の操作装置である。コントローラ40は、制御装置30に有線または無線を介して接続されている。コントローラ40は、ローダ装置10や加工装置20を囲むように配置されたパネルPLに保持される。コントローラ40は、各種スイッチを備えるとともに、液晶ディスプレイのような表示部(
図2参照)を備えている。コントローラ40は、例えば作業者によるプログラムの切り替えや制御装置30の各種設定などの操作(入力)に用いられる。また、コントローラ40は、作業者によるプログラムの編集の操作(入力)にも用いられる。
【0026】
図2は、
図1に示す制御装置30及びコントローラ40の構成を示すブロック図である。
図2に示すように、制御装置30は、CPU(Central Processing Unit )などの演算装置31及び第1記憶部32を有している。演算装置31は、第1記憶部32に記憶されている第1プログラム32a(ローダプログラム)に基づいてローダ装置10の動作を制御するとともに、第1記憶部32に記憶されている第2プログラム32b(NCプログラム;Numerical Controlプログラム)に基づいて加工装置20の動作を制御する。第1記憶部32は、第1プログラム32a及び第2プログラム32bを記憶するほかに、ローダ装置10や加工装置20の制御に必要な各種情報を記憶する。なお、ローダ装置10の動作を制御する第1プログラム32aと加工装置20の動作を制御する第2プログラム32bは異なるプログラム言語で作成されている。以下の説明においては、第1プログラム32aと第2プログラム32bとを総称する場合は単にプログラムという。
【0027】
コントローラ40は、表示部41、制御部42、及び第2記憶部43を備えている。表示部41は、液晶表示パネルなどで構成された表示画面41aと、この表示画面41a上に形成されたタッチパネル41bとを備えている。表示画面41aは、プログラムを表示するとともに、作業者によって選択(押下)されるボタンやキーの画像を表示する。タッチパネル41bは、作業者がプログラムの編集などを行う際に、作業者が触れた位置を示す信号を制御部42に出力する。
【0028】
制御部42は、コントローラ40の制御全般を司る処理部である。
図2に示すように、制御部42は、文字入力部42a、選択部42b、表示制御部42c、及び挿入部42dを有している。文字入力部42aは、文字入力ボタン(後述するアルファベットキー141及びテンキー151:
図4参照)の選択操作に応じて文字(アルファベット、数字など)を入力する処理を行う。選択部42bは、特定ボタン(後述する入力候補ボタン181:
図4参照)の選択操作に応じて、予め定められた命令コードの中から文字入力部42aで入力された文字に関連する命令コードを選択する処理を行う。
【0029】
表示制御部42cは、プログラムを表示部41に表示するとともに、選択部42bで選択された命令コード及びこの命令コードの説明を表示部41に表示する処理を行う。挿入部42dは、挿入ボタン(後述するインサートキー165:
図4参照)の選択操作に応じて、文字入力部42aで入力された文字をプログラム内に挿入する処理を行う。なお、制御部42(文字入力部42a、選択部42b、及び挿入部42d)は、タッチパネル41bからの信号に基づいて作業者が選択(押下)した画像の位置を認識することにより、作業者が選択したボタンを認識する。
【0030】
ここで、プログラム(第1プログラム32a、第2プログラム32b)は、プログラム番号(プログラム名)、コメント(注釈)、シーケンス番号(シーケンス名)、命令コード(指令コードともいう。)などから構成される。プログラム番号は、プログラムを識別する番号である。例えばNCプログラムの場合、プログラム番号はプログラムの先頭を表す記号‘%’の後(すなわち次のブロック)に例えば1桁〜4桁の数字で記述される。コメントは、プログラムの説明や、プログラム内の処理の説明などである。このコメントは、プログラム内においてローダ装置10や加工装置20の制御とは無関係な文字(キャラクタ)または文字列である。
【0031】
シーケンス番号は、プログラムを認識しやすくするために付される目印である。例えばNCプログラムの場合、シーケンス番号はアルファベット‘N’と数字との組合せで表される。命令コードは、ローダ装置10や加工装置20に対して動作を実行させるための文字または文字列である。例えばNCプログラムの場合、命令コードはM,S,Gなどのアルファベットと数字との組合せで構成される。具体的には、「M03」は主軸を時計回りに回転させる制御を指示する命令コードである。また、「M05」は主軸を停止させる制御を指示する命令コードである。
【0032】
図3は、命令コードの階層構造を示す図である。なお、
図3においては、ローダプログラム(第1プログラム32a)におけるアルファベット「M」から始まる命令コードの階層構造を示している。
図3に示す例では、アルファベット「M」の命令コードのグループが予め規定されている。また、アルファベット「M」の命令コードのグループの中に、アルファベット「M」と1桁目の数字「1」「2」「3」「4」「5」「6」・・・との組合せからなる「M1」M2」「M3」「M4」「M5」「M6」・・・の各グループが予め規定されている。また、アルファベット「M」と1桁目の数字との組合せからなる命令コードの各グループの中に、命令コード「M00、M01、・・・」「M10、M11、・・・」「M20、M21、・・・」「M30、M31、・・・」「M40、M41、・・・」「M50、M51、・・・」「M60、M61、・・・」・・・が予め規定されている。なお、命令コードの階層構造は、NCプログラムにおいても同様である。
【0033】
図2の説明に戻り、第2記憶部43は、制御部42に処理または制御を実行させるための制御プログラム43aや各種情報を記憶する。第2記憶部43は、
図3に示したような階層構造によってグループ化された命令コード及びその命令コードの説明(解説)についても記憶している。なお、制御部42はCPUなどの演算装置を有し、制御部42の演算装置が制御プログラム43aに基づいて実行する処理または制御が制御部42の各部の構成(文字入力部42a、選択部42b、表示制御部42c、及び挿入部42d)に相当する。
【0034】
図4は、
図2に示す表示部41の表示画面41aの表示例を示す図である。
図4に示すように、表示画面41aの左側には、プログラム(第1プログラム32a、第2プログラム32b)を表示するプログラム表示領域110が設けられている。
図4に示す例では、プログラム表示領域110には第1プログラム32a(ローダプログラム)の具体例が表示されている。プログラム内の行の先頭からセミコロン‘;’までをブロックという。つまり、ブロックは1行分のプログラムである。また、アルファベットと数字との組合せからなる1つの命令コードをワードという。このワードがプログラムの最小単位となる。なお、プログラム表示領域110内にはカーソル200が表示される。
【0035】
また、表示画面41aの右側の上部には、作業者がプログラム表示領域110に書き込む文字(アルファベット、数字、記号など)を入力するための入力欄であるキーインバッファ部120が設けられている。また、キーインバッファ部120の下には、プログラム表示領域110の表示範囲(ページ)を上下にスクロール(移動)させるページキー131と、プログラム表示領域110上に表示されるカーソル200を上下及び左右に移動させるカーソルキー132と、プログラム表示領域110やカーソル200を元の位置に戻すリセットキー133とが設けられている。
【0036】
また、ページキー131、カーソルキー132、及びリセットキー133の下には、アルファベット(ローマ字)を入力するためのアルファベットキー(文字入力ボタン)141と、数字や演算記号(丸括弧、ドット、スラッシュなど)などを入力するためのテンキー(文字入力ボタン)151とが設けられている。
【0037】
また、アルファベットキー141及びテンキー151の下には、シフトキー161(SHIFTと表記しているキー)、キャンセルキー162(CANCELと表記しているキー)、インプットキー163(INPUTと表記しているキー)、オルトキー164(ALTERと表記しているキー)、インサートキー165(INSERTと表記しているキー)、及びデリートキー166(DELETEと表記しているキー)が設けられている。なお、シフトキー161、キャンセルキー162、インプットキー163、オルトキー164、インサートキー165、及びデリートキー166を総称して特殊キーという。また、インサートキー165を挿入ボタンという。
【0038】
また、表示画面41aの下部には、第1操作メニューボタン170mが設けられている。第1操作メニューボタン170mは、プログラム入力ボタン171を含んでいる。プログラム入力ボタン171は、作業者がアルファベットキー141、テンキー151、及び特殊キー161〜166などを選択操作して、直接、命令コードなどの文字をプログラム内に入力する際に選択されるボタンである。
図4に示すように、作業者によってプログラム入力ボタン171が選択されると、第1操作メニューボタン170mに代えて第2操作メニューボタン180mが表示される。
【0039】
第2操作メニューボタン180mは、入力候補ボタン(特定ボタン)181を含んでいる。入力候補ボタン181は、作業者によってキーインバッファ部120に入力された文字に関連する命令コードの一覧を入力候補の一覧として入力候補表示領域(
図6及び
図7参照)に表示させるためのボタンである。
【0040】
次に、上記の制御部42が実行する処理について説明する。
【0041】
図5は、実施形態に係るプログラム編集処理を説明するためのフォローチャートである。また、
図6及び
図7は、作業者によるプログラム編集の作業手順を説明するための表示画面41aの表示例を示す図である。
図5に示す処理において、表示制御部42cは、表示部41の表示画面41aに
図4に示したキーやボタンの画像を表示するとともに、作業者による所定のボタンの操作に応じて編集対象のプログラムをプログラム表示領域110に表示する(ステップS1)。次に、制御部42は、作業者によりプログラム入力ボタン171が選択されたか否かを判定する(ステップS2)。制御部42は、作業者によりプログラム入力ボタン171が選択されたと判定した場合は(ステップS2のYES)、ステップS3〜S12に示す処理を実行する。
【0042】
文字入力部42aは、プログラム入力ボタン171が選択された場合(ステップS2のYES)、カーソルキー132が選択されたか否かを判定する(ステップS3)。文字入力部42aは、カーソルキー132が選択されたと判定した場合は(ステップS3のYES)、その選択されたカーソルキー132の操作に応じてカーソル200の位置を移動させる(ステップS4)。これにより、文字の挿入位置が決定される。
【0043】
なお、表示制御部42cは、プログラム入力ボタン171の選択操作に応じて、第1操作メニューボタン170mを第2操作メニューボタン180mに切り替えて表示する。
【0044】
次に、表示制御部42cは、作業者により入力候補ボタン181が選択されたか否かを判定する(ステップS5)。表示制御部42cは、入力候補ボタン181が選択されていないと判定した場合は(ステップS5のNO)、処理を終了する。表示制御部42cは、入力候補ボタン181が選択されたと判定した場合は(ステップS5のYES)、プログラム表示領域110の一部に、命令コード及びこの命令コードの説明を表示するための入力候補表示領域110Nを表示する(ステップS6)。
図6に示す例では、プログラム表示領域110の略下半分の領域が入力候補表示領域110Nとなっている。また、
図6に示す例では、未だ文字がキーインバッファ部120に入力されていないので、入力候補表示領域110Nには、「文字を入力してください。」という文字が表示されている。
【0045】
文字入力部42aは、作業者により文字入力ボタン(アルファベットキー141やテンキー151)の選択操作がされたことに応じて(ステップS7のYES)、キーインバッファ部120に文字を入力する(ステップS8)。そして、選択部42bは、文字入力部42aによりキーインバッファ部120に入力された文字に関連する命令コードの一覧を選択する(ステップS9)。また、表示制御部42cは、選択部42bにより選択された命令コード及び命令コードの説明(解説)の一覧を入力候補の一覧として入力候補表示領域110Nに表示する(ステップS10)。
【0046】
例えば、作業者により「M」がキーインバッファ部120に入力された場合は、選択部42bは、
図3に示すような命令コードの階層構造に基づいて、先頭の文字が「M」となる命令コードを選択する。表示制御部42cは、選択部42bにより選択された命令コードの名称と、命令コードの各々に対応する説明とを第2記憶部43から読み出す。そして、表示制御部42cは、読み出した命令コードの名称及びその命令コードの説明を対応付けて入力候補表示領域110Nに表示する。
【0047】
上記のステップS7〜S10の処理は、作業者によりインサートキー165の選択操作がされるまで繰り返し実行される。例えば、
図7に示すように、作業者が「M」に続いて「6」を入力した場合は、文字入力部42aはキーインバッファ部120に「6」を入力する(すなわち、キーインバッファ部120に入力された文字が「M6」となる)。そして、選択部42bは、「M6」に関連する命令コードを選択する。また、表示制御部42cは、選択部42bが選択した命令コードとその説明とを入力候補表示領域110Nに表示する。
図7に示す例では、入力候補表示領域110Nには、入力候補一覧として、「M60:Aチャック開、M61:Aチャック閉、・・・などが表示されている。入力候補表示領域110Nに表示すべき命令コード(入力候補)の数が多い場合には、すべての命令コードが入力候補表示領域110Nに表示することができない。この場合、表示制御部42cは、入力候補表示領域110Nに表示すべき命令コードの一部を表示するとともに、作業者によるボタン(例えばページキー131)の選択操作に応じて入力候補表示領域110Nを上下にスクロールさせる。
【0048】
作業者は、入力候補表示領域110Nに表示された入力候補(つまり、入力した文字に関連する命令コード)を参照してテンキー151などを操作し、入力したい命令コード(例えばM62など)をキーインバッファ部120に入力する。
【0049】
挿入部42dは、作業者によりインサートキー165の選択操作がされたか否かを判定する(ステップS11)。挿入部42dは、インサートキー165の選択操作がされていないと判定した場合は(ステップS11のNO)、ステップS7の処理に移行させる。一方、挿入部42dは、インサートキー165の選択操作がされたと判定した場合は(ステップS11のYES)、キーインバッファ部120に入力されている文字(例えば命令コードのワード)をプログラム表示領域110のカーソル200の位置に挿入する(ステップS12)。
【0050】
以上に説明したように、本実施形態では、工作機械1の一部に、プログラム32a,32bを編集可能なプログラム編集装置40を備え、プログラム編集装置40は、文字入力ボタン141,151の選択操作に応じて文字を入力する文字入力部42aと、特定ボタン181の選択操作に応じて、予め定められた命令コードの中から文字入力部32aで入力された文字に関連する命令コードを選択する選択部42bと、プログラム32a,32bを表示部41に表示するとともに、選択部32bで選択された命令コード及び該命令コードの説明を表示部41に表示する表示制御部42cとを含む。このような構成によれば、作業者が入力候補を参照して命令コードを入力することができるので、工作機械1のプログラム編集における作業者の手間を軽減し、命令コードの入力ミスを防止することができる。また、作業者が工作機械1の作業環境に応じたインタフェイスでプログラム編集を実行することができる。
【0051】
また、第1実施形態では、選択部42bは、文字入力部42aで入力された文字が先頭の文字となる命令コードを選択するので、命令コードの階層構造を利用して命令コードを選択し、選択した命令コードの一覧を作業者に提示することが可能となる。また、プログラム編集装置40は、挿入ボタン165の選択操作に応じて、文字入力部32aで入力された文字をプログラム32a,32b内に挿入する挿入部42dを備えるので、入力候補を参照して入力した文字(命令コード)をプログラム32a、32b内に反映させることができる。
【0052】
また、第1実施形態では、表示制御部42cは、プログラム32a,32bを表示する表示領域110の一部の表示領域110Nに命令コード及び該命令コードの説明を表示するので、入力候補を表示するための表示領域を特別に設けることなく入力候補を表示することができる。従って、表示画面31aの表示領域を有効に活用して入力候補を含む様々な情報を表示することができる。また、表示制御部42cは、命令コード及び該命令コードの説明を所定方向にスクロール可能に一覧表示するので、入力候補としての命令コードの数が多い場合でも、すべての命令コードをスクロールに応じて作業者に提示することができる。
【0053】
以上の実施形態について説明したが、本発明は図示の構成等に限定されるものではなく、各構成の機能や用途などを逸脱しない範囲で変更は可能である。
【0054】
例えば、上記した実施形態において、
図1に示したローダ装置10及び加工装置20の構成は一例であって、このような構成以外のローダ装置及び加工装置に対してもプログラム編集装置を適用することができる。また、上記した実施形態では、制御装置30とコントローラ40とが別構成とされていたが、制御装置30とコントローラ40とは一体構成とされてもよい。
【0055】
また、ローダ装置10と加工装置20とは別々の第1プログラム32aと第2プログラム32bとで制御されていたが、同じプログラムで制御されてもよい。また、第1プログラム32aと第2プログラム32bは異なるプログラム言語で作成されていたが、同一のプログラム言語で作成されてもよい。
【0056】
また、上記した実施形態におけるキーやボタンの配置は、
図3に示した配置に限定されず、適宜変更可能である。また、操作メニューボタン170m,180m,190mもプログラム表示領域110の近傍に設けられていればよく、作業環境などに合わせて適宜配置される。また、操作メニューボタン170m,180m,190mは、作業者によるタッチパネル41bのタッチ操作によって選択されていたが、これらのボタンを機械的なボタンとし、作業者による押下操作で選択されてもよい。また、カーソル200も指定位置を指し示すものであれば、どのようなポインディングデバイスであってもよい。
【0057】
また、上記した実施形態では、表示制御部42cは、選択部42bによって選択されたすべての命令コードを表示していたが、選択部42bによって選択された命令コードのうち、優先度の高い命令コード(例えば使用頻度の高い命令コード)を優先的に入力候補表示領域110Nに表示してもよい。また、表示制御部42cは、選択部42bによって選択された命令コードの数に応じて入力候補表示領域110Nの大きさや位置などを変更してもよい。
【0058】
また、選択部42bは、命令コードの先頭からの文字に基づいて命令コードを選択していたが、命令コードの後の文字や中間の文字などに基づいて命令コードを選択してもよい。また、選択部42bは、「Aチャック」などの文字(ひらがな、カタカナなど)に基づいて、それに関連する命令コードを選択してもよい。