(57)【要約】【課題】工作機械のプログラム編集における作業者の手間を軽減するとともに、工作機械の作業環境に応じたインタフェイスを実現する。【解決手段】工作機械１は、ワークＷを搬送するローダ装置１０と、ワークＷを加工する加工装置２０とがプログラム３２ａ，３２ｂに基づいて動作する。工作機械１の一部に備えたプログラム編集装置４０は、文字入力ボタン１４１，１５１の選択操作に応じて文字を入力する文字入力部４２ａと、特定ボタン１８１の選択操作に応じて、予め定められた命令コードの中から文字入力部３２ａで入力された文字に関連する命令コードを選択する選択部４２ｂと、プログラム３２ａ，３２ｂを表示部４１に表示するとともに、選択部３２ｂで選択された命令コード及び該命令コードの説明を表示部４１に表示する表示制御部４２ｃとを含んでいる。【選択図】図２
2015207147.tif 000002
【特許請求の範囲】
【請求項１】
ワークを搬送するローダ装置と、前記ワークを加工する加工装置とを備え、前記ローダ装置及び前記加工装置がプログラムに基づいて駆動する工作機械であって、
前記工作機械の一部に、前記プログラムを編集可能なプログラム編集装置を備え、
前記プログラム編集装置は、
文字入力ボタンの選択操作に応じて文字を入力する文字入力部と、
特定ボタンの選択操作に応じて、予め定められた命令コードの中から前記文字入力部で入力された前記文字に関連する命令コードを選択する選択部と、
前記プログラムを表示部に表示するとともに、前記選択部で選択された前記命令コード及び該命令コードの説明を前記表示部に表示する表示制御部と、を含む
ことを特徴とする工作機械。
【請求項２】
前記選択部は、前記文字入力部で入力された前記文字が先頭の文字となる命令コードを選択することを特徴とする請求項１に記載の工作機械。
【請求項３】
前記プログラム編集装置は、挿入ボタンの選択操作に応じて、前記文字入力部で入力された文字を前記プログラム内に挿入する挿入部を備えることを特徴とする請求項１または請求項２に記載の工作機械。
【請求項４】
前記表示制御部は、前記プログラムを表示する表示領域の一部の表示領域に前記命令コード及び該命令コードの説明を表示することを特徴とする請求項１〜請求項３のうちいずれか１項に記載の工作機械。
【請求項５】
前記表示制御部は、前記命令コード及び該命令コードの説明を所定方向にスクロール可能に一覧表示することを特徴とする請求項１〜請求項４のうちいずれか１項に記載の工作機械。
【請求項６】
ローダ装置によるワークの搬送と、加工装置による前記ワークの加工とを行うためのプログラムを編集する工作機械のプログラム編集方法であって、
前記プログラムを表示部に表示する第１表示ステップと、
文字入力ボタンの選択操作に応じて文字を入力する文字入力ステップと、
特定ボタンの選択操作に応じて、予め定められた命令コードの中から前記文字入力ステップで入力された前記文字に関連する命令コードを選択する選択ステップと、
前記選択ステップで選択された前記命令コード及び該命令コードの説明を前記表示部に表示する第２表示ステップと、を含む
ことを特徴とするプログラム編集方法。
【請求項７】
ローダ装置によるワークの搬送と、加工装置による前記ワークの加工とをプログラムに基づいて行う工作機械の制御部に、
前記プログラムを表示部に表示する第１表示処理と、
文字入力ボタンの選択操作に応じて文字を入力する文字入力処理と、
特定ボタンの選択操作に応じて、予め定められた命令コードの中から前記文字入力処理で入力された前記文字に関連する命令コードを選択する選択処理と、
前記選択処理で選択された前記命令コード及び該命令コードの説明を前記表示部に表示する第２表示処理と、を実行させることを特徴とする制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークの搬送とワークの加工とを行うためのプログラムを編集可能な工作機械、プログラム編集方法、及び制御プログラムに関する。
【背景技術】
【０００２】
工作機械は、ワークを搬送するローダ装置と、ワークを加工する加工装置と、ローダ装置及び加工装置をプログラムに基づいて制御する制御装置とを備える。また、工作機械は、作業者がプログラムの切り替えや制御装置の各種設定などを行うためのコントローラを備える。また、コントローラにはプログラム等を表示する表示部が設けられている。作業者は、コントローラを操作することにより、表示部に表示されたプログラムを編集することも可能である。
【０００３】
特許文献１，２には、それぞれ、プログラムの入力を支援する装置が記載されている。特許文献１，２に記載された装置は、作業者によって入力された文字に関連する命令コードなどを一覧表示して作業者に提示する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−２５９０８４号公報
【特許文献２】特開２０１１−２８５５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、上記の特許文献１，２に記載された装置では、キーボードなどの入力装置を用いた操作が想定されている。一方、作業者が工作機械に設けられたコントローラ上でプログラムの編集を行う場合は、作業スペースの制約などの観点から、作業者がキーボードなどを操作することは困難である。従って、上記の特許文献１，２に記載された構成をそのまま工作機械に適用することはできない。
【０００６】
本発明は、前述した事情に鑑みてなされたものであり、工作機械のプログラム編集における作業者の手間を軽減するとともに、作業者が工作機械の作業環境に応じたインタフェイスでプログラム編集を実行可能な工作機械、プログラム編集方法、及び制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明では、ワークを搬送するローダ装置と、ワークを加工する加工装置とを備え、ローダ装置及び加工装置がプログラムに基づいて駆動する工作機械であって、工作機械の一部に、プログラムを編集可能なプログラム編集装置を備え、プログラム編集装置は、文字入力ボタンの選択操作に応じて文字を入力する文字入力部と、特定ボタンの選択操作に応じて、予め定められた命令コードの中から文字入力部で入力された文字に関連する命令コードを選択する選択部と、プログラムを表示部に表示するとともに、選択部で選択された命令コード及び該命令コードの説明を表示部に表示する表示制御部と、を含むことを特徴とする。
【０００８】
また、選択部は、文字入力部で入力された文字が先頭の文字となる命令コードを選択する構成でもよい。また、プログラム編集装置は、挿入ボタンの選択操作に応じて、文字入力部で入力された文字をプログラム内に挿入する挿入部を備える構成でもよい。
【０００９】
また、表示制御部は、プログラムを表示する表示領域の一部の表示領域に命令コード及び該命令コードの説明を表示してもよい。また、表示制御部は、命令コード及び該命令コードの説明を所定方向にスクロール可能に一覧表示してもよい。
【００１０】
また、本発明では、ローダ装置によるワークの搬送と、加工装置によるワークの加工とを行うためのプログラムを編集する工作機械のプログラム編集方法であって、プログラムを表示部に表示する第１表示ステップと、文字入力ボタンの選択操作に応じて文字を入力する文字入力ステップと、特定ボタンの選択操作に応じて、予め定められた命令コードの中から文字入力ステップで入力された文字に関連する命令コードを選択する選択ステップと、選択ステップで選択された命令コード及び該命令コードの説明を表示部に表示する第２表示ステップと、を含むことを特徴とする。
【００１１】
また、本発明では、ローダ装置によるワークの搬送と、加工装置によるワークの加工とをプログラムに基づいて行う工作機械の制御部に、プログラムを表示部に表示する第１表示処理と、文字入力ボタンの選択操作に応じて文字を入力する文字入力処理と、特定ボタンの選択操作に応じて、予め定められた命令コードの中から文字入力処理で入力された文字に関連する命令コードを選択する選択処理と、選択処理で選択された命令コード及び該命令コードの説明を表示部に表示する第２表示処理と、を実行させることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、文字入力部が文字入力ボタンの選択操作に応じて文字を入力し、選択部が特定ボタンの選択操作に応じて、予め定められた命令コードの中から文字入力部で入力された文字に関連する命令コードを選択し、表示制御部がプログラムを表示部に表示するとともに、選択部で選択された命令コード及び該命令コードの説明を表示部に表示する。このような構成によれば、作業者が入力候補として表示される命令コード及び説明を参照して命令コードを入力することができるので、工作機械のプログラム編集における作業者の手間を軽減し、命令コードの入力ミスを防止することができる。また、作業者が工作機械の作業環境に応じたインタフェイスでプログラム編集を実行することができる。
【００１３】
また、選択部は、文字入力部で入力された文字が先頭の文字となる命令コードを選択するので、命令コードの階層構造を利用して命令コードを選択し、選択した命令コードの一覧を作業者に提示することが可能となる。また、プログラム編集装置は、挿入ボタンの選択操作に応じて、文字入力部で入力された文字をプログラム内に挿入する挿入部を備えるので、入力候補を参照して入力した文字（命令コード）をプログラム内に反映させることができる。
【００１４】
また、表示制御部は、プログラムを表示する表示領域の一部の表示領域に命令コード及び該命令コードの説明を表示するので、命令コード（入力候補）を表示するための表示領域を特別に設けることなく命令コードを表示することができる。従って、表示画面の表示領域を有効に活用して命令コードを含む様々な情報を表示することができる。また、表示制御部は、命令コード及び該命令コードの説明を所定方向にスクロール可能に一覧表示するので、入力候補としての命令コードの数が多い場合でも、すべての命令コードをスクロールに応じて作業者に提示することができる。
【図面の簡単な説明】
【００１５】
【図１】実施形態に係る工作機械の一例を示す図である。
【図２】図１に示す制御装置及びコントローラの構成を示すブロック図である。
【図３】命令コードの階層構造を示す図である。
【図４】図２に示す表示部の表示画面の表示例を示す図である。
【図５】実施形態に係るプログラム編集処理を説明するためのフォローチャートである。
【図６】作業者によるプログラム編集の作業手順を説明するための表示画面の表示例を示す図である。
【図７】作業者によるプログラム編集の作業手順を説明するための表示画面の表示例を示す図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態について図面を参照しながら説明する。ただし、本発明はこれに限定されるものではない。また、図面においては実施形態を説明するため、一部分を大きくまたは強調して記載するなど適宜縮尺を変更して表現している。以下の各図において、ＸＹＺ座標系を用いて図中の方向を説明する。このＸＹＺ座標系においては、水平面に平行な平面をＸＺ平面とする。このＸＺ平面に平行な主軸（後述する主軸２１，２２）の方向をＺ方向と表記し、Ｚ方向に直交する方向（ワークＷに対する切削量を規定する方向）をＸ方向と表記する。また、ＸＺ平面に垂直な方向はＹ方向と表記する。Ｘ方向、Ｙ方向及びＺ方向のそれぞれは、図中の矢印の方向が＋方向であり、矢印の方向とは反対の方向が−方向であるものとして説明する。
【００１７】
図１（ａ）及び（ｂ）は、実施形態に係る工作機械１の一例を示す図である。図１（ａ）は、工作機械１を＋Ｚ側から見たときの例を示している。図１（ｂ）は、工作機械１を＋Ｙ側から見たときの例を示している。この工作機械１は、例えば平行２軸旋盤である。図１において、工作機械１の＋Ｚ側が正面であり、−Ｚ側が背面である。また、工作機械１の±Ｘ側は側面であり、Ｘ方向は工作機械１の左右方向である。図１（ａ）及び（ｂ）に示すように、工作機械１は、ローダ装置１０と、加工装置２０、制御装置３０と、コントローラ（プログラム編集装置）４０と、を備えている。
【００１８】
ローダ装置１０は、ワーク保持部１１と、ローダ駆動部１３とを備えている。ローダ装置１０は、例えば、後述する主軸２１，２２とワーク搬入部２５との間の搬送経路ＴにおいてワークＷを搬送する。ワーク保持部１１は、ワークＷを複数の把持爪によって把持するローダチャック１２を有している。ローダチャック１２は、例えば、ワークＷを把持して−Ｙ方向に向けた姿勢と、−Ｚ方向に向けた姿勢（後述する主軸２１，２２にワークＷを向けた姿勢）とに移動可能に形成される。なお、ローダ装置１０は、複数のローダチャック１２が形成されてもよい。
【００１９】
ローダ駆動部１３は、Ｘ駆動部１４と、Ｚ駆動部１５と、Ｙ駆動部１６とを有している。Ｘ駆動部１４は、不図示の駆動源により、Ｘ移動体１４ａをガイドレール１４ｂに沿ってＸ方向に移動可能に構成している。Ｚ駆動部１５は、Ｘ移動体１４ａに形成され、不図示の駆動源により、Ｚ移動体１５ａを不図示のガイド部に沿ってＺ方向に移動可能に構成している。Ｙ駆動部１６は、Ｚ移動体１５ａに形成され、不図示の駆動源により、Ｙ移動体１６ａをガイド部１６ｂに沿ってＹ方向に移動可能に構成している。
【００２０】
ワーク保持部１１は、Ｙ移動体１６ａの下部に形成される。ワーク保持部１１のローダチャック１２により把持したワークＷは、Ｘ駆動部１４、Ｚ駆動部１５、及びＹ駆動部１６がそれぞれ駆動することにより、Ｘ〜Ｚ方向またはこれらを合成した方向に搬送される。以上のように構成されるローダ装置１０の駆動は、後述する制御装置３０によって制御される。
【００２１】
加工装置２０は、主軸２１，２２と、タレット２３，２４と、ワーク搬入部２５とを有している。主軸２１，２２は、Ｘ方向に並んで配置され、それぞれ不図示の駆動装置によって中心軸ＡＸ１，ＡＸ２まわりに回転する。主軸２１，２２の＋Ｚ側の端部には、それぞれワークＷを把持可能な複数の把握爪２１ａ，２２ａが設けられている。タレット２３は、主軸２１の−Ｘ側に配置されている。タレット２４は、主軸２２の＋Ｘ側に配置されている。
【００２２】
タレット２３，２４は、それぞれ不図示の駆動装置によって、Ｚ方向に平行な軸まわりに回転する。また、タレット２３，２４の周面には、不図示の複数の切削工具が保持されており、タレット２３，２４を回転させることにより、所望の切削工具が選択される。切削工具としては、ワークＷに対して切削加工を施すバイト等の他、ドリルやエンドミル等の回転工具が用いられてもよい。また、タレット２３，２４は、不図示の駆動装置により、ワークＷに対して例えばＸ方向、Ｙ方向、及びＺ方向、またはこれらを合成した方向に移動可能となっている。ただし、主軸２１，２２やタレット２３，２４は２つであることに限定されず、例えば主軸及びタレットのいずれか一方または双方が１つあってもよい。
【００２３】
ワーク搬入部２５には、加工対象であるワークＷが載置される。ワーク搬入部２５としては、例えば固定台が用いられるが、これに限定されるものではなく、コンベアやロータリー式の載置台などが用いられてもよい。なお、ワーク搬入部２５は、ワークＷの搬出部を兼ねてもよく、この搬出部をワーク搬入部２５と異なる部分に配置してもよい。以上のように構成される加工装置２０の駆動は、後述する制御装置３０によって制御される。
【００２４】
制御装置３０は、所定のプログラムに基づいてローダ装置１０や加工装置２０の動作を統括的に制御する。なお、制御装置３０は、有線または無線を介して上位制御装置５０に接続されてもよい。制御装置３０は、上位制御装置５０の記憶部に記憶されたプログラムに基づいてローダ装置１０や加工装置２０の動作を制御してもよい。
【００２５】
コントローラ４０は、作業者（オペレータ）により操作される工作機械１の操作装置である。コントローラ４０は、制御装置３０に有線または無線を介して接続されている。コントローラ４０は、ローダ装置１０や加工装置２０を囲むように配置されたパネルＰＬに保持される。コントローラ４０は、各種スイッチを備えるとともに、液晶ディスプレイのような表示部（図２参照）を備えている。コントローラ４０は、例えば作業者によるプログラムの切り替えや制御装置３０の各種設定などの操作（入力）に用いられる。また、コントローラ４０は、作業者によるプログラムの編集の操作（入力）にも用いられる。
【００２６】
図２は、図１に示す制御装置３０及びコントローラ４０の構成を示すブロック図である。図２に示すように、制御装置３０は、ＣＰＵ（Central Processing Unit ）などの演算装置３１及び第１記憶部３２を有している。演算装置３１は、第１記憶部３２に記憶されている第１プログラム３２ａ（ローダプログラム）に基づいてローダ装置１０の動作を制御するとともに、第１記憶部３２に記憶されている第２プログラム３２ｂ（ＮＣプログラム；Numerical Controlプログラム）に基づいて加工装置２０の動作を制御する。第１記憶部３２は、第１プログラム３２ａ及び第２プログラム３２ｂを記憶するほかに、ローダ装置１０や加工装置２０の制御に必要な各種情報を記憶する。なお、ローダ装置１０の動作を制御する第１プログラム３２ａと加工装置２０の動作を制御する第２プログラム３２ｂは異なるプログラム言語で作成されている。以下の説明においては、第１プログラム３２ａと第２プログラム３２ｂとを総称する場合は単にプログラムという。
【００２７】
コントローラ４０は、表示部４１、制御部４２、及び第２記憶部４３を備えている。表示部４１は、液晶表示パネルなどで構成された表示画面４１ａと、この表示画面４１ａ上に形成されたタッチパネル４１ｂとを備えている。表示画面４１ａは、プログラムを表示するとともに、作業者によって選択（押下）されるボタンやキーの画像を表示する。タッチパネル４１ｂは、作業者がプログラムの編集などを行う際に、作業者が触れた位置を示す信号を制御部４２に出力する。
【００２８】
制御部４２は、コントローラ４０の制御全般を司る処理部である。図２に示すように、制御部４２は、文字入力部４２ａ、選択部４２ｂ、表示制御部４２ｃ、及び挿入部４２ｄを有している。文字入力部４２ａは、文字入力ボタン（後述するアルファベットキー１４１及びテンキー１５１：図４参照）の選択操作に応じて文字（アルファベット、数字など）を入力する処理を行う。選択部４２ｂは、特定ボタン（後述する入力候補ボタン１８１：図４参照）の選択操作に応じて、予め定められた命令コードの中から文字入力部４２ａで入力された文字に関連する命令コードを選択する処理を行う。
【００２９】
表示制御部４２ｃは、プログラムを表示部４１に表示するとともに、選択部４２ｂで選択された命令コード及びこの命令コードの説明を表示部４１に表示する処理を行う。挿入部４２ｄは、挿入ボタン（後述するインサートキー１６５：図４参照）の選択操作に応じて、文字入力部４２ａで入力された文字をプログラム内に挿入する処理を行う。なお、制御部４２（文字入力部４２ａ、選択部４２ｂ、及び挿入部４２ｄ）は、タッチパネル４１ｂからの信号に基づいて作業者が選択（押下）した画像の位置を認識することにより、作業者が選択したボタンを認識する。
【００３０】
ここで、プログラム（第１プログラム３２ａ、第２プログラム３２ｂ）は、プログラム番号（プログラム名）、コメント（注釈）、シーケンス番号（シーケンス名）、命令コード（指令コードともいう。）などから構成される。プログラム番号は、プログラムを識別する番号である。例えばＮＣプログラムの場合、プログラム番号はプログラムの先頭を表す記号‘％’の後（すなわち次のブロック）に例えば１桁〜４桁の数字で記述される。コメントは、プログラムの説明や、プログラム内の処理の説明などである。このコメントは、プログラム内においてローダ装置１０や加工装置２０の制御とは無関係な文字（キャラクタ）または文字列である。
【００３１】
シーケンス番号は、プログラムを認識しやすくするために付される目印である。例えばＮＣプログラムの場合、シーケンス番号はアルファベット‘Ｎ’と数字との組合せで表される。命令コードは、ローダ装置１０や加工装置２０に対して動作を実行させるための文字または文字列である。例えばＮＣプログラムの場合、命令コードはＭ，Ｓ，Ｇなどのアルファベットと数字との組合せで構成される。具体的には、「Ｍ０３」は主軸を時計回りに回転させる制御を指示する命令コードである。また、「Ｍ０５」は主軸を停止させる制御を指示する命令コードである。
【００３２】
図３は、命令コードの階層構造を示す図である。なお、図３においては、ローダプログラム（第１プログラム３２ａ）におけるアルファベット「Ｍ」から始まる命令コードの階層構造を示している。図３に示す例では、アルファベット「Ｍ」の命令コードのグループが予め規定されている。また、アルファベット「Ｍ」の命令コードのグループの中に、アルファベット「Ｍ」と１桁目の数字「１」「２」「３」「４」「５」「６」・・・との組合せからなる「Ｍ１」Ｍ２」「Ｍ３」「Ｍ４」「Ｍ５」「Ｍ６」・・・の各グループが予め規定されている。また、アルファベット「Ｍ」と１桁目の数字との組合せからなる命令コードの各グループの中に、命令コード「Ｍ００、Ｍ０１、・・・」「Ｍ１０、Ｍ１１、・・・」「Ｍ２０、Ｍ２１、・・・」「Ｍ３０、Ｍ３１、・・・」「Ｍ４０、Ｍ４１、・・・」「Ｍ５０、Ｍ５１、・・・」「Ｍ６０、Ｍ６１、・・・」・・・が予め規定されている。なお、命令コードの階層構造は、ＮＣプログラムにおいても同様である。
【００３３】
図２の説明に戻り、第２記憶部４３は、制御部４２に処理または制御を実行させるための制御プログラム４３ａや各種情報を記憶する。第２記憶部４３は、図３に示したような階層構造によってグループ化された命令コード及びその命令コードの説明（解説）についても記憶している。なお、制御部４２はＣＰＵなどの演算装置を有し、制御部４２の演算装置が制御プログラム４３ａに基づいて実行する処理または制御が制御部４２の各部の構成（文字入力部４２ａ、選択部４２ｂ、表示制御部４２ｃ、及び挿入部４２ｄ）に相当する。
【００３４】
図４は、図２に示す表示部４１の表示画面４１ａの表示例を示す図である。図４に示すように、表示画面４１ａの左側には、プログラム（第１プログラム３２ａ、第２プログラム３２ｂ）を表示するプログラム表示領域１１０が設けられている。図４に示す例では、プログラム表示領域１１０には第１プログラム３２ａ（ローダプログラム）の具体例が表示されている。プログラム内の行の先頭からセミコロン‘；’までをブロックという。つまり、ブロックは１行分のプログラムである。また、アルファベットと数字との組合せからなる１つの命令コードをワードという。このワードがプログラムの最小単位となる。なお、プログラム表示領域１１０内にはカーソル２００が表示される。
【００３５】
また、表示画面４１ａの右側の上部には、作業者がプログラム表示領域１１０に書き込む文字（アルファベット、数字、記号など）を入力するための入力欄であるキーインバッファ部１２０が設けられている。また、キーインバッファ部１２０の下には、プログラム表示領域１１０の表示範囲（ページ）を上下にスクロール（移動）させるページキー１３１と、プログラム表示領域１１０上に表示されるカーソル２００を上下及び左右に移動させるカーソルキー１３２と、プログラム表示領域１１０やカーソル２００を元の位置に戻すリセットキー１３３とが設けられている。
【００３６】
また、ページキー１３１、カーソルキー１３２、及びリセットキー１３３の下には、アルファベット（ローマ字）を入力するためのアルファベットキー（文字入力ボタン）１４１と、数字や演算記号（丸括弧、ドット、スラッシュなど）などを入力するためのテンキー（文字入力ボタン）１５１とが設けられている。
【００３７】
また、アルファベットキー１４１及びテンキー１５１の下には、シフトキー１６１（ＳＨＩＦＴと表記しているキー）、キャンセルキー１６２（ＣＡＮＣＥＬと表記しているキー）、インプットキー１６３（ＩＮＰＵＴと表記しているキー）、オルトキー１６４（ＡＬＴＥＲと表記しているキー）、インサートキー１６５（ＩＮＳＥＲＴと表記しているキー）、及びデリートキー１６６（ＤＥＬＥＴＥと表記しているキー）が設けられている。なお、シフトキー１６１、キャンセルキー１６２、インプットキー１６３、オルトキー１６４、インサートキー１６５、及びデリートキー１６６を総称して特殊キーという。また、インサートキー１６５を挿入ボタンという。
【００３８】
また、表示画面４１ａの下部には、第１操作メニューボタン１７０ｍが設けられている。第１操作メニューボタン１７０ｍは、プログラム入力ボタン１７１を含んでいる。プログラム入力ボタン１７１は、作業者がアルファベットキー１４１、テンキー１５１、及び特殊キー１６１〜１６６などを選択操作して、直接、命令コードなどの文字をプログラム内に入力する際に選択されるボタンである。図４に示すように、作業者によってプログラム入力ボタン１７１が選択されると、第１操作メニューボタン１７０ｍに代えて第２操作メニューボタン１８０ｍが表示される。
【００３９】
第２操作メニューボタン１８０ｍは、入力候補ボタン（特定ボタン）１８１を含んでいる。入力候補ボタン１８１は、作業者によってキーインバッファ部１２０に入力された文字に関連する命令コードの一覧を入力候補の一覧として入力候補表示領域（図６及び図７参照）に表示させるためのボタンである。
【００４０】
次に、上記の制御部４２が実行する処理について説明する。
【００４１】
図５は、実施形態に係るプログラム編集処理を説明するためのフォローチャートである。また、図６及び図７は、作業者によるプログラム編集の作業手順を説明するための表示画面４１ａの表示例を示す図である。図５に示す処理において、表示制御部４２ｃは、表示部４１の表示画面４１ａに図４に示したキーやボタンの画像を表示するとともに、作業者による所定のボタンの操作に応じて編集対象のプログラムをプログラム表示領域１１０に表示する（ステップＳ１）。次に、制御部４２は、作業者によりプログラム入力ボタン１７１が選択されたか否かを判定する（ステップＳ２）。制御部４２は、作業者によりプログラム入力ボタン１７１が選択されたと判定した場合は（ステップＳ２のＹＥＳ）、ステップＳ３〜Ｓ１２に示す処理を実行する。
【００４２】
文字入力部４２ａは、プログラム入力ボタン１７１が選択された場合（ステップＳ２のＹＥＳ）、カーソルキー１３２が選択されたか否かを判定する（ステップＳ３）。文字入力部４２ａは、カーソルキー１３２が選択されたと判定した場合は（ステップＳ３のＹＥＳ）、その選択されたカーソルキー１３２の操作に応じてカーソル２００の位置を移動させる（ステップＳ４）。これにより、文字の挿入位置が決定される。
【００４３】
なお、表示制御部４２ｃは、プログラム入力ボタン１７１の選択操作に応じて、第１操作メニューボタン１７０ｍを第２操作メニューボタン１８０ｍに切り替えて表示する。
【００４４】
次に、表示制御部４２ｃは、作業者により入力候補ボタン１８１が選択されたか否かを判定する（ステップＳ５）。表示制御部４２ｃは、入力候補ボタン１８１が選択されていないと判定した場合は（ステップＳ５のＮＯ）、処理を終了する。表示制御部４２ｃは、入力候補ボタン１８１が選択されたと判定した場合は（ステップＳ５のＹＥＳ）、プログラム表示領域１１０の一部に、命令コード及びこの命令コードの説明を表示するための入力候補表示領域１１０Ｎを表示する（ステップＳ６）。図６に示す例では、プログラム表示領域１１０の略下半分の領域が入力候補表示領域１１０Ｎとなっている。また、図６に示す例では、未だ文字がキーインバッファ部１２０に入力されていないので、入力候補表示領域１１０Ｎには、「文字を入力してください。」という文字が表示されている。
【００４５】
文字入力部４２ａは、作業者により文字入力ボタン（アルファベットキー１４１やテンキー１５１）の選択操作がされたことに応じて（ステップＳ７のＹＥＳ）、キーインバッファ部１２０に文字を入力する（ステップＳ８）。そして、選択部４２ｂは、文字入力部４２ａによりキーインバッファ部１２０に入力された文字に関連する命令コードの一覧を選択する（ステップＳ９）。また、表示制御部４２ｃは、選択部４２ｂにより選択された命令コード及び命令コードの説明（解説）の一覧を入力候補の一覧として入力候補表示領域１１０Ｎに表示する（ステップＳ１０）。
【００４６】
例えば、作業者により「Ｍ」がキーインバッファ部１２０に入力された場合は、選択部４２ｂは、図３に示すような命令コードの階層構造に基づいて、先頭の文字が「Ｍ」となる命令コードを選択する。表示制御部４２ｃは、選択部４２ｂにより選択された命令コードの名称と、命令コードの各々に対応する説明とを第２記憶部４３から読み出す。そして、表示制御部４２ｃは、読み出した命令コードの名称及びその命令コードの説明を対応付けて入力候補表示領域１１０Ｎに表示する。
【００４７】
上記のステップＳ７〜Ｓ１０の処理は、作業者によりインサートキー１６５の選択操作がされるまで繰り返し実行される。例えば、図７に示すように、作業者が「Ｍ」に続いて「６」を入力した場合は、文字入力部４２ａはキーインバッファ部１２０に「６」を入力する（すなわち、キーインバッファ部１２０に入力された文字が「Ｍ６」となる）。そして、選択部４２ｂは、「Ｍ６」に関連する命令コードを選択する。また、表示制御部４２ｃは、選択部４２ｂが選択した命令コードとその説明とを入力候補表示領域１１０Ｎに表示する。図７に示す例では、入力候補表示領域１１０Ｎには、入力候補一覧として、「Ｍ６０：Ａチャック開、Ｍ６１：Ａチャック閉、・・・などが表示されている。入力候補表示領域１１０Ｎに表示すべき命令コード（入力候補）の数が多い場合には、すべての命令コードが入力候補表示領域１１０Ｎに表示することができない。この場合、表示制御部４２ｃは、入力候補表示領域１１０Ｎに表示すべき命令コードの一部を表示するとともに、作業者によるボタン（例えばページキー１３１）の選択操作に応じて入力候補表示領域１１０Ｎを上下にスクロールさせる。
【００４８】
作業者は、入力候補表示領域１１０Ｎに表示された入力候補（つまり、入力した文字に関連する命令コード）を参照してテンキー１５１などを操作し、入力したい命令コード（例えばＭ６２など）をキーインバッファ部１２０に入力する。
【００４９】
挿入部４２ｄは、作業者によりインサートキー１６５の選択操作がされたか否かを判定する（ステップＳ１１）。挿入部４２ｄは、インサートキー１６５の選択操作がされていないと判定した場合は（ステップＳ１１のＮＯ）、ステップＳ７の処理に移行させる。一方、挿入部４２ｄは、インサートキー１６５の選択操作がされたと判定した場合は（ステップＳ１１のＹＥＳ）、キーインバッファ部１２０に入力されている文字（例えば命令コードのワード）をプログラム表示領域１１０のカーソル２００の位置に挿入する（ステップＳ１２）。
【００５０】
以上に説明したように、本実施形態では、工作機械１の一部に、プログラム３２ａ，３２ｂを編集可能なプログラム編集装置４０を備え、プログラム編集装置４０は、文字入力ボタン１４１，１５１の選択操作に応じて文字を入力する文字入力部４２ａと、特定ボタン１８１の選択操作に応じて、予め定められた命令コードの中から文字入力部３２ａで入力された文字に関連する命令コードを選択する選択部４２ｂと、プログラム３２ａ，３２ｂを表示部４１に表示するとともに、選択部３２ｂで選択された命令コード及び該命令コードの説明を表示部４１に表示する表示制御部４２ｃとを含む。このような構成によれば、作業者が入力候補を参照して命令コードを入力することができるので、工作機械１のプログラム編集における作業者の手間を軽減し、命令コードの入力ミスを防止することができる。また、作業者が工作機械１の作業環境に応じたインタフェイスでプログラム編集を実行することができる。
【００５１】
また、第１実施形態では、選択部４２ｂは、文字入力部４２ａで入力された文字が先頭の文字となる命令コードを選択するので、命令コードの階層構造を利用して命令コードを選択し、選択した命令コードの一覧を作業者に提示することが可能となる。また、プログラム編集装置４０は、挿入ボタン１６５の選択操作に応じて、文字入力部３２ａで入力された文字をプログラム３２ａ，３２ｂ内に挿入する挿入部４２ｄを備えるので、入力候補を参照して入力した文字（命令コード）をプログラム３２ａ、３２ｂ内に反映させることができる。
【００５２】
また、第１実施形態では、表示制御部４２ｃは、プログラム３２ａ，３２ｂを表示する表示領域１１０の一部の表示領域１１０Ｎに命令コード及び該命令コードの説明を表示するので、入力候補を表示するための表示領域を特別に設けることなく入力候補を表示することができる。従って、表示画面３１ａの表示領域を有効に活用して入力候補を含む様々な情報を表示することができる。また、表示制御部４２ｃは、命令コード及び該命令コードの説明を所定方向にスクロール可能に一覧表示するので、入力候補としての命令コードの数が多い場合でも、すべての命令コードをスクロールに応じて作業者に提示することができる。
【００５３】
以上の実施形態について説明したが、本発明は図示の構成等に限定されるものではなく、各構成の機能や用途などを逸脱しない範囲で変更は可能である。
【００５４】
例えば、上記した実施形態において、図１に示したローダ装置１０及び加工装置２０の構成は一例であって、このような構成以外のローダ装置及び加工装置に対してもプログラム編集装置を適用することができる。また、上記した実施形態では、制御装置３０とコントローラ４０とが別構成とされていたが、制御装置３０とコントローラ４０とは一体構成とされてもよい。
【００５５】
また、ローダ装置１０と加工装置２０とは別々の第１プログラム３２ａと第２プログラム３２ｂとで制御されていたが、同じプログラムで制御されてもよい。また、第１プログラム３２ａと第２プログラム３２ｂは異なるプログラム言語で作成されていたが、同一のプログラム言語で作成されてもよい。
【００５６】
また、上記した実施形態におけるキーやボタンの配置は、図３に示した配置に限定されず、適宜変更可能である。また、操作メニューボタン１７０ｍ，１８０ｍ，１９０ｍもプログラム表示領域１１０の近傍に設けられていればよく、作業環境などに合わせて適宜配置される。また、操作メニューボタン１７０ｍ，１８０ｍ，１９０ｍは、作業者によるタッチパネル４１ｂのタッチ操作によって選択されていたが、これらのボタンを機械的なボタンとし、作業者による押下操作で選択されてもよい。また、カーソル２００も指定位置を指し示すものであれば、どのようなポインディングデバイスであってもよい。
【００５７】
また、上記した実施形態では、表示制御部４２ｃは、選択部４２ｂによって選択されたすべての命令コードを表示していたが、選択部４２ｂによって選択された命令コードのうち、優先度の高い命令コード（例えば使用頻度の高い命令コード）を優先的に入力候補表示領域１１０Ｎに表示してもよい。また、表示制御部４２ｃは、選択部４２ｂによって選択された命令コードの数に応じて入力候補表示領域１１０Ｎの大きさや位置などを変更してもよい。
【００５８】
また、選択部４２ｂは、命令コードの先頭からの文字に基づいて命令コードを選択していたが、命令コードの後の文字や中間の文字などに基づいて命令コードを選択してもよい。また、選択部４２ｂは、「Ａチャック」などの文字（ひらがな、カタカナなど）に基づいて、それに関連する命令コードを選択してもよい。
【符号の説明】
【００５９】
１  工作機械
１０  ローダ装置
２０  加工装置
３０  制御装置
３２  第１記憶部
３２ａ  第１プログラム（プログラム）
３２ｂ  第２プログラム（プログラム）
４０  コントローラ（プログラム編集装置）
４１  表示部
４１ａ  表示画面
４１ｂ  タッチパネル
４２  制御部
４２ａ  文字入力部
４２ｂ  選択部
４２ｃ  表示制御部
４２ｄ  挿入部
４３  第２記憶部
４３ａ  制御プログラム
１１０  プログラム表示領域（表示領域）
１１０Ｎ  入力候補表示領域
１４１  アルファベットキー（文字入力ボタン）
１５１  テンキー（文字入力ボタン）
１６５  インサートキー（挿入ボタン）
１８１  入力候補ボタン（特定ボタン）
【図１】
2015207147.tif 000003
【図２】
2015207147.tif 000004
【図３】
2015207147.tif 000005
【図４】
2015207147.tif 000006
【図５】
2015207147.tif 000007
【図６】
2015207147.tif 000008
【図７】
2015207147.tif 000009