(57)【特許請求の範囲】
【請求項１】
工作機械の加工プログラムの編集を支援する加工プログラム編集支援装置において、
表示装置と、
該表示装置の画面上の任意の点を指定する入力装置と、
前記画面を、プログラムデータ表示領域および工程一覧表示領域を含む少なくとも２つの表示領域に分割して表示する表示制御部と、を備え、
前記加工プログラムは、各加工工程に区切られたデータを含むプログラムデータを有し、該プログラムデータは、各加工工程での加工の方法を定義する加工方法データと、各加工工程での加工に寄与する形状を定義する形状定義データとを含み、
前記加工方法データは、当該加工方法データに対応する前記加工工程の工程名称を示す工程名称データを含み、
前記表示制御部は、
前記プログラムデータ表示領域の表示候補を前記プログラムデータとし、該プログラムデータの少なくとも一部を表示対象として前記プログラムデータ表示領域に表示し、
前記工程一覧表示領域の表示候補を前記工程名称データとし、該工程名称データの少なくとも一部を表示対象として前記工程一覧表示領域に表示し、
前記プログラムデータ表示領域および前記工程一覧表示領域のいずれか一方の表示領域に当該一方の表示領域の前記表示対象が表示されているときに、前記一方の表示領域の特定箇所が前記入力装置を介して指定されると、前記一方の表示領域の前記表示対象と前記特定箇所と、により特定される表示対象を、当該一方の表示領域の指定表示対象として、当該一方の表示領域における他の表示対象とは差別化して表示し、また、他方の表示領域の表示候補のなかで前記一方の表示領域の指定表示対象に対応する表示候補を、当該他方の表示領域の指定表示対象として、当該他方の表示領域の表示対象に含めて且つ、当該他方の表示領域における他の表示対象とは差別化して表示する
ことを特徴とする加工プログラム編集支援装置。
【請求項２】
前記加工方法データは、加工を行う工具を指定する工具交換指令コードと、座標系を選択するための座標系指令コードと、加工動作に何ら寄与しないコメントを前記プログラムデータ中に記載するためのコメント指令コードと、を含み、
前記形状定義データは、工具の移動経路を定義する形状指令コードを含み、
前記加工プログラムは、前記加工方法データおよび前記形状定義データを、実行順に１行ずつ定義されており、
前記表示制御部は、前記工具交換指令コードと、前記座標系指令コードと、前記コメント指令コードとの少なくとも一つを前記工程名称データとして認識し、前記加工プログラムにおいて、前記工程名称データとして認識した指令コードを含む行から、次に前記工程名称データとして認識した指令コードを含む行の直前の行までを、先に認識した前記工程名称データの前記加工工程として認識する
ことを特徴とする請求項１記載の加工プログラム編集支援装置。
【請求項３】
前記加工プログラムは、ＥＩＡ／ＩＳＯで規定される指令コードを実行順に１行ずつ定義されるプログラムであり、
前記表示制御部は、少なくとも１つの特定の指令コードを加工工程の区切りとする旨の指示を、前記入力装置を介して受け付け、該受け付けた特定の指令コードを加工工程抽出コードとして定め、当該加工工程抽出コードを前記工程名称データとして認識し、前記加工プログラムにおいて、前記工程名称データとして認識した指令コードを含む行から、次に前記工程名称データとして認識した指令コードを含む行の直前の行までを、先に認識した前記工程名称データの前記加工工程として認識する
ことを特徴とする請求項１に記載の加工プログラム編集支援装置。
【請求項４】
前記表示制御部は、前記画面に、更に、１行ずつ定義された前記形状定義データから得られる定義形状を表示候補とする表示領域を形状表示領域として設け、前記定義形状の少なくとも一部を表示対象として表示すると共に、
前記プログラムデータ表示領域、前記工程一覧表示領域、および前記形状表示領域のいずれか１つの表示領域に当該表示領域の前記表示対象が表示されているときに、該いずれか１つの表示領域の特定箇所が前記入力装置を介して指定されると、当該いずれか１つの表示領域に表示された表示対象と前記特定箇所と、により特定される表示対象を、該いずれか１つの表示領域の指定表示対象として、該いずれか１つの表示領域における他の表示対象とは差別化して表示し、また、残りの２つの表示領域における表示候補のなかで前記いずれか１つの表示領域の指定表示対象に対応する、残りの２つの表示領域のそれぞれの表示候補を、当該残りの２つの表示領域のそれぞれの指定表示対象として、前記それぞれの表示領域の表示対象に含めて且つ、当該それぞれの表示領域の他の表示対象とは差別化して表示する
ことを特徴とする請求項２に記載の加工プログラム編集支援装置。
【請求項５】
前記形状指令コードは、座標値データを有し、
前記表示制御部は、前記加工プログラムを解析して、前記形状指令コードと前記座標値データとこれら２つのデータの格納場所を示すプログラム行数と、を、それぞれ格納した座標値テーブルを作成し、該座標値テーブルの前記座標値データが示す座標点を順次接続線で接続して前記定義形状を作成する
ことを特徴とする請求項４に記載の加工プログラム編集支援装置。
【請求項６】
前記形状表示領域の指定表示対象の候補が登録されるテーブルが、加工形状テーブルであり、
前記表示制御部は、前記形状表示領域に前記表示対象が表示されているときに該形状表示領域の特定箇所が前記入力装置を介して指定されると、少なくとも一部が前記特定箇所を中心とした所定領域に含まれる表示対象の前記接続線を、前記形状表示領域の前記指定表示対象の候補として前記加工形状テーブルに登録し、該加工形状テーブルの先頭に登録された指定表示対象の候補を指定表示対象として前記形状表示領域に表示し、
前記表示制御部は、前記特定箇所との距離が所定量以内の箇所が前記入力装置を介して連続して指定される場合、前記加工形状テーブルに登録された順に従って次の前記指定表示対象の候補を前記形状表示領域の指定表示対象として前記形状表示領域に表示する
ことを特徴とする請求項５に記載の加工プログラム編集支援装置。
【請求項７】
前記プログラムデータ表示領域および前記形状表示領域のいずれか一方の表示領域で前記特定箇所を指定した結果、前記形状表示領域における前記指定表示対象が特定された場合、
前記形状表示領域の前記指定表示対象は、前記１行ずつ定義された前記座標点を終点とする前記接続線であり、
前記表示制御部は、前記指定表示対象とされた前記接続線を、前記形状表示領域における他の表示対象の前記接続線を示す線の線種、太さ、色の少なくとも１つを変更した線で表示することにより、前記形状表示領域における指定表示対象を差別化して表示する
ことを特徴とする請求項６に記載の加工プログラム編集支援装置。
【請求項８】
前記表示制御部は、前記工程一覧表示領域に前記表示対象が表示されているときに、前記工程一覧表示領域の特定箇所が前記入力装置を介して指定されて前記指定表示対象が特定されたとき、前記工程一覧表示領域で前記指定表示対象とされた前記工程名称データに対応する前記プログラムデータを、前記工程名称データが指令された行のデータとする単独行処理と、前記工程名称データが属する前記加工工程のすべての行のデータとする全行処理と、を選択的に行うと共に、
前記プログラムデータ表示領域の指定表示対象は前記単独行処理によって得られる行のプログラムデータとし、前記形状表示領域の指定表示対象は前記全行処理によって得られるプログラムデータに基づく定義形状とし且つ、前記指定表示対象とされた前記加工工程の定義形状を除く定義形状を表示しないことで前記指定表示対象を差別化して表示する
ことを特徴とする請求項６に記載の加工プログラム編集支援装置。
【請求項９】
前記加工方法データは、加工を行う工具を指定する工具交換指令コードを含み、
前記形状定義データは、工具の移動経路を定義する形状指令コードを含み、
前記加工プログラムは、前記加工方法データおよび前記形状定義データを、実行順に１行ずつ定義されており、
前記表示制御部は、前記工具交換指令コードを前記工程名称データとして認識し、前記加工プログラムにおいて前記工程名称データとして認識した指令コードを含む行から次に前記工程名称データとして認識した指令コードを含む行の直前の行までを、先に認識した前記工程名称データの前記加工工程として認識する
ことを特徴とする請求項１記載の加工プログラム編集支援装置。
【請求項１０】
前記加工方法データは、加工を行う工具を指定する工具交換指令コードと、座標系を選択するための座標系指令コードと、加工動作に何ら寄与しないコメントを前記プログラムデータ中に記載するためのコメント指令コードと、を含み、
前記形状定義データは、工具の移動経路を定義する形状指令コードを含み、
前記加工プログラムは、前記加工方法データおよび前記形状定義データを、実行順に１行ずつ定義されており、
前記表示制御部は、前記工具交換指令コードと、前記座標系指令コードと、前記コメント指令コードと、のそれぞれを加工工程の区切りとするか否かの指示を、前記入力装置を介して受け付け、該受け付けた指令コードを加工工程抽出コードとして定め、当該加工工程抽出コードを前記工程名称データとして認識し、前記加工プログラムにおいて、前記工程名称データとして認識した指令コードを含む行から、次に前記工程名称データとして認識した指令コードを含む行の直前の行までを、先に認識した前記工程名称データの前記加工工程として認識する
ことを特徴とする請求項１記載の加工プログラム編集支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械によるワークの加工の仕方を定義するデータが各加工工程に区切られている加工プログラムの編集を支援する加工プログラム編集支援装置に関する。
【背景技術】
【０００２】
たとえば特許文献１には、加工プログラムの試し加工時に、加工工程毎に再加工を行うために、加工プログラムに加工工程単位毎に付加された工程識別情報を基に加工工程の区切りを認識し、認識した加工工程毎に実行、停止を制御する技術が開示されている。特に、加工プログラムが長くなると、目的の加工工程を加工プログラム上で見付けることに時間を要するようになり、この機能によって試し加工時の再加工を行う際の再加工開始位置の設定が容易となった。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平５−１５８５１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、上記特許文献１は、試し加工時の操作を容易にはしたが、加工プログラムの編集を容易にしようとする観点がなく、特に加工プログラムが複雑で長い場合には、加工プログラムの加工の構成が俯瞰できないため、編集すべき加工箇所を見付けることが困難である。【０００５】
本発明は、そうした実情に鑑みてなされたものであり、その目的は、加工工程を記述するデータと、加工工程との対応を迅速に把握することのできる加工プログラム編集支援装置を提供することにある。
【課題を解決するための手段】
【０００６】
以下、上記課題を解決するための手段およびその作用効果について記載する。
技術的思想１：工作機械の加工プログラムの編集を支援する加工プログラム編集支援装置において、表示装置と、該表示装置の画面上の任意の点を指定する入力装置と、前記画面を、プログラムデータ表示領域および工程一覧表示領域を含む少なくとも２つの表示領域に分割して表示する表示制御部と、を備え、前記加工プログラムは、各加工工程に区切られたデータを含むプログラムデータを有し、該プログラムデータは、各加工工程での加工の方法を定義する加工方法データと、各加工工程での加工に寄与する形状を定義する形状定義データとを含み、前記加工方法データは、当該加工方法データに対応する前記加工工程の工程名称を示す工程名称データを含み、前記表示制御部は、前記プログラムデータ表示領域の表示候補を前記プログラムデータとし、該プログラムデータの少なくとも一部を表示対象として前記プログラムデータ表示領域に表示し、前記工程一覧表示領域の表示候補を前記工程名称データとし、該工程名称データの少なくとも一部を表示対象として前記工程一覧表示領域に表示し、前記プログラムデータ表示領域および前記工程一覧表示領域のいずれか一方の表示領域に当該一方の表示領域の前記表示対象が表示されているときに、前記一方の表示領域の特定箇所が前記入力装置を介して指定されると、前記一方の表示領域の前記表示対象と前記特定箇所と、により特定される表示対象を、当該一方の表示領域の指定表示対象として、当該一方の表示領域における他の表示対象とは差別化して表示し、また、他方の表示領域の表示候補のなかで前記一方の表示領域の指定表示対象に対応する表示候補を、当該他方の表示領域の指定表示対象として、当該他方の表示領域の表示対象に含めて且つ、当該他方の表示領域における他の表示対象とは差別化して表示することを特徴とする加工プログラム編集支援装置。【０００７】
上記装置では、表示制御部によって、以下の少なくとも一方の処理がなされる。
（ａ）プログラムデータ表示領域に表示対象が表示されているときに入力装置を介してプログラムデータ表示領域の特定箇所が指定されると、プログラムデータ表示領域に表示されている表示対象と特定箇所とにより特定されるプログラムデータを、プログラムデータ表示領域の指定表示対象に特定し、他の表示対象と差別化して表示する。また、工程一覧表示領域の指定表示対象を、当該プログラムデータに対応する工程名称データとし、他の表示対象と差別化して表示する。【０００８】
（ｂ）工程一覧表示領域に表示対象が表示されているときに入力装置を介して工程一覧表示領域の特定箇所が指定されると、工程一覧表示領域に表示されている表示対象と特定箇所とにより特定される工程名称データを指定表示対象に特定し、他の表示対象と差別化して表示する。また、プログラムデータ表示領域の指定表示対象を、当該工程名称データに対応するプログラムデータとし、他の表示対象と差別化して表示する。【０００９】
上記（ａ）の処理によれば、プログラムデータ表示領域に表示されているプログラムデータに気になるものを感じたユーザが、該当する特定箇所を指定することで、工程一覧表示領域において該当する工程名称データが指定表示対象として差別化して表示される。このため、気になったプログラムデータが記述する加工工程が加工工程全体のどの工程に該当するかを迅速に把握することができる。また、上記（ｂ）の処理によれば、工程一覧表示領域に表示されている特定の工程名称データに対応するプログラムデータを知りたい場合、同工程名称データを指定することで、プログラムデータ表示領域においてその工程名称データに対応するプログラムデータが差別化されて表示される。このため、ユーザは、所望の工程名称データに対応するプログラムデータを迅速に把握することができる。【００１０】
以上より、上記装置によれば、加工工程を記述するデータと、加工工程との対応を迅速に把握することができる。特に、プログラムデータが長大な場合は、プログラムデータ表示領域には加工プログラムの一部しか表示されないため、加工の全容を理解するのに困難を伴う。しかし、上記装置によれば、ユーザは、加工の概要を工程一覧表示領域に表示される加工工程の流れで理解し、加工工程の詳細をプログラムデータ表示領域で確認できるため、ユーザが、加工プログラムの編集を行ったり、内容の確認を行ったりするときに、短時間でプログラムデータの目的の箇所を特定することができる。【００１１】
技術的思想２：前記加工方法データは、加工を行う工具を指定する工具交換指令コードと、座標系を選択するための座標系指令コードと、加工動作に何ら寄与しないコメントを前記プログラムデータ中に記載するためのコメント指令コードと、を含み、前記形状定義データは、工具の移動経路を定義する形状指令コードを含み、前記加工プログラムは、前記加工方法データおよび前記形状定義データを、実行順に１行ずつ定義されており、前記表示制御部は、前記工具交換指令コードと、前記座標系指令コードと、前記コメント指令コードとの少なくとも一つを前記工程名称データとして認識し、前記加工プログラムにおいて、前記工程名称データとして認識した指令コードを含む行から、次に前記工程名称データとして認識した指令コードを含む行の直前の行までを、先に認識した前記工程名称データの前記加工工程として認識することを特徴とする技術的思想１に記載の加工プログラム編集支援装置。【００１２】
加工を行う工具を指定する指令コードや、加工の形状を定義するための座標系の選択を行う指令コードは、加工プログラムのなかに必ず含まれるデータである。上述した構成であれば、加工工程の区切りとしてそれを専用とするデータが入力されていない加工プログラムであっても、これらの指令コードの少なくとも一つを加工工程の区切りとして加工工程一覧表を表示させることができる。【００１３】
例えば、上記工具交換指令コードが加工工程の区切りとして採用される場合、工具が相違する工程ごとに加工工程が表示されることとなる。このため、ユーザは、工程一覧表示領域に表示された加工工程から、それら加工工程がいずれの工具を用いた加工工程に関するものかを容易に把握することができる。【００１４】
上記座標系指令コードは、たとえば複数のワークの加工工程を１つの加工プログラムで記述する場合に、ワーク毎に座標系を設定するために利用される。この場合、座標系指令コードが加工工程として採用される場合、ユーザは、工程一覧表示領域に表示された加工工程から、それら各加工工程がいずれのワークを加工する加工工程に関するものかを容易に把握することができる。【００１５】
上記コメント指令コードは、ユーザが加工プログラムに適宜挿入するものである。このため、コメント指令コードが加工工程として採用される場合、ユーザが加工工程として分かり易い表現でコメントをプログラムデータのなかに入力することで、編集すべき加工プログラムの箇所をユーザがより分かり易く、また素早く特定することができる。【００１６】
技術的思想３：前記加工プログラムは、ＥＩＡ／ＩＳＯで規定される指令コードを実行順に１行ずつ定義されるプログラムであり、前記表示制御部は、少なくとも１つの特定の指令コードを加工工程の区切りとする旨の指示を、前記入力装置を介して受け付け、該受け付けた特定の指令コードを加工工程抽出コードとして定め、当該加工工程抽出コードを前記工程名称データとして認識し、前記加工プログラムにおいて、前記工程名称データとして認識した指令コードを含む行から、次に前記工程名称データとして認識した指令コードを含む行の直前の行までを、先に認識した前記工程名称データの前記加工工程として認識することを特徴とする技術的思想１に記載の加工プログラム編集支援装置。【００１７】
ＥＩＡ／ＩＳＯ規格に準じた加工プログラムには、加工工程を定義するコードが含まれないことが多い一方で、加工工程を実質的に定義することを可能にした指令コードは存在する。上述した構成であれば、こうした特定の指令コードを加工工程抽出コードとして定義することによって、加工プログラム編集支援装置は、加工プログラムを加工工程に分割することができ、加工プログラムとしては長いＥＩＡ／ＩＳＯ規格に準じた加工プログラムであっても、所望の編集対象箇所をユーザは短時間で特定することができる。【００１８】
技術的思想４：前記表示制御部は、前記画面に、更に、１行ずつ定義された前記形状定義データから得られる定義形状を表示候補とする表示領域を形状表示領域として設け、前記定義形状の少なくとも一部を表示対象として表示すると共に、前記プログラムデータ表示領域、前記工程一覧表示領域、および前記形状表示領域のいずれか１つの表示領域に当該表示領域の前記表示対象が表示されているときに、該いずれか１つの表示領域の特定箇所が前記入力装置を介して指定されると、当該いずれか１つの表示領域に表示された表示対象と前記特定箇所と、により特定される表示対象を、該いずれか１つの表示領域の指定表示対象として、該いずれか１つの表示領域における他の表示対象とは差別化して表示し、また、残りの２つの表示領域における表示候補のなかで前記いずれか１つの表示領域の指定表示対象に対応する、残りの２つの表示領域のそれぞれの表示候補を、当該残りの２つの表示領域のそれぞれの指定表示対象として、前記それぞれの表示領域の表示対象に含めて且つ、当該それぞれの表示領域の他の表示対象とは差別化して表示することを特徴とする技術的思想２に記載の加工プログラム編集支援装置。【００１９】
上記装置では、各加工工程での工具の移動経路を定義する形状指令コードを含む形状定義データから得られる定義形状が、プログラムデータや工程名称と対応付けられて表示されるため、ユーザは編集すべき箇所をさらに迅速に特定することができる。例えば、加工形状を定義する基準となる座標系の設定データをユーザが間違えたりすると、その座標系を採用した加工形状のみが他の加工形状とはかけ離れた場所に表示されたりする。その加工形状が特定されることにより、関連する加工工程やプログラムデータが具体的に特定できるため、容易に間違ったデータを修正することができる。また、単純な座標値データの入力ミス、例えば座標値データの入力される行が１桁間違えられて入力されたような場合も、その座標点だけが他の座標点とは全く関係のない場所に表示されるため、間違って入力されたプログラムデータの特定は極めて容易である。【００２０】
技術的思想５：前記形状指令コードは、座標値データを有し、前記表示制御部は、前記加工プログラムを解析して、前記形状指令コードと前記座標値データとこれら２つのデータの格納場所を示すプログラム行数と、を、それぞれ格納した座標値テーブルを作成し、該座標値テーブルの前記座標値データが示す座標点を順次接続線で接続して前記定義形状を作成することを特徴とする技術的思想４に記載のプログラム編集支援装置。【００２１】
加工プログラムを、工具の移動経路を定義する形状指令コードを用いて作成すると、加工サイクルや特殊加工サイクル等と組み合わされた座標値データに基づいて、移動経路が計算される場合がある。実際の移動経路が定義形状として表示されると、移動経路を算出するための前処理に要する時間の分だけ、表示に要する時間が長くなってしまう。上記構成であれば、指令された座標値データが示す点が単純に接続されることによって定義形状が表示されるため、定義形状を表示するための前処理が行われることなく定義形状が表示される。定義形状の表示に要する時間が短縮されるため、加工プログラムの編集箇所をユーザが特定しようとしてプログラムデータの複数個所を指定しても、関連する定義形状が瞬時に表示され、ユーザはストレスを感じることなくこれらの操作が可能となる。また、ユーザが、表示された加工形状に誤りを発見し、関連するプログラムデータを特定して誤りを修正した後も、瞬時に関連する加工形状が再表示されるので、プログラムデータの編集作業においても、ユーザはストレスを感じることなく作業を行うことができる。なお厳密には、表示される定義形状は実際の移動経路とは若干異なるが、加工工程に対応する加工形状をユーザが識別するには十分な形状が得られるため、特に問題とはならない。【００２２】
技術的思想６：前記形状表示領域の指定表示対象の候補が登録されるテーブルが、加工形状テーブルであり、前記表示制御部は、前記形状表示領域に前記表示対象が表示されているときに該形状表示領域の特定箇所が前記入力装置を介して指定されると、少なくとも一部が前記特定箇所を中心とした所定領域に含まれる表示対象の前記接続線を、前記形状表示領域の前記指定表示対象の候補として前記加工形状テーブルに登録し、該加工形状テーブルの先頭に登録された指定表示対象の候補を指定表示対象として前記形状表示領域に表示し、前記表示制御部は、前記特定箇所との距離が所定量以内の箇所が前記入力装置を介して連続して指定される場合、前記加工形状テーブルに登録された順に従って次の前記指定表示対象の候補を前記形状表示領域の指定表示対象として前記形状表示領域に表示することを特徴とする技術的思想５に記載の加工プログラム編集支援装置。【００２３】
上記構成によれば、多数の定義形状が特定箇所の近傍に入り乱れているとしても、ユーザは、編集の目的とする定義形状に関する情報を取得することができる。
技術的思想７：前記プログラムデータ表示領域および形状表示領域のいずれか一方の表示領域で前記特定箇所を指定した結果、前記形状表示領域における前記指定表示対象が特定された場合、前記形状表示領域の前記指定表示対象は、前記１行ずつ定義された前記座標点を終点とする前記接続線であり、前記表示制御部は、前記指定表示対象とされた前記接続線を、前記形状表示領域における他の表示対象の前記接続線を示す線の線種、太さ、色の少なくとも１つを変更した線で表示することにより、前記形状表示領域における指定表示対象を差別化して表示することを特徴とする技術的思想６に記載の加工プログラム編集支援装置。【００２４】
プログラムデータ表示領域と形状表示領域で指定表示対象を特定することによって、形状表示領域の指定表示対象を特定した場合は、プログラムデータ１行単位に対応する定義形状が、他の定義形状とは差別化されて表示される。つまり、形状とプログラムデータが１行単位で特定できるため、編集すべきプログラムデータの行を、形状を参照しながら特定することができ、正確なプログラムデータを素早く特定することができる。【００２５】
技術的思想８：前記表示制御部は、前記工程一覧表示領域に前記表示対象が表示されているときに、前記工程一覧表示領域の特定箇所が前記入力装置を介して指定されて前記指定表示対象が特定されたとき、前記工程一覧表示領域で前記指定表示対象とされた前記工程名称データに対応する前記プログラムデータを、前記工程名称データが指令された行のデータとする単独行処理と、前記工程名称データが属する前記加工工程のすべての行のデータとする全行処理と、を選択的に行うと共に、前記プログラムデータ表示領域の指定表示対象は前記単独行処理によって得られる行のプログラムデータとし、前記形状表示領域の指定表示対象は前記全行処理によって得られるプログラムデータに基づく定義形状とし且つ、前記指定表示対象とされた前記加工工程の定義形状を除く定義形状を表示しないことで前記指定表示対象を差別化して表示することを特徴とする技術的思想６に記載の加工プログラム編集支援装置。【００２６】
行毎に移動経路を指令する加工プログラムにおいては、加工に要する移動経路が非常に多く、また、互いに異なる移動経路が狭い領域に密集するように、多数の移動経路が描画されるため、編集の目的とされる加工工程での定義形状を特定することが容易ではない。上記装置であれば、特定の加工工程の定義形状を除く他の定義形状が表示されないため、編集の目的とされる加工工程での定義形状を特定することが容易である。【００２７】
技術的思想９：前記加工方法データは、加工を行う工具を指定する工具交換指令コードを含み、前記形状定義データは、工具の移動経路を定義する形状指令コードを含み、前記加工プログラムは、前記加工方法データおよび前記形状定義データを、実行順に１行ずつ定義されており、前記表示制御部は、前記工具交換指令コードを前記工程名称データとして認識し、前記加工プログラムにおいて前記工程名称データとして認識した指令コードを含む行から次に前記工程名称データとして認識した指令コードを含む行の直前の行までを、先に認識した前記工程名称データの前記加工工程として認識することを特徴とする技術的思想１記載の加工プログラム編集支援装置。【００２８】
加工を行う工具を指定する工具交換指令コードは、加工プログラムのなかに必ず含まれる。単純に、加工する工具で加工工程を分割して加工工程一覧を表示するだけであっても、十分効果的に対応可能な加工プログラムは多い。上記構成は、簡易的に工程一覧表示を実現し、加工プログラム編集箇所の特定を容易にすることができる。【００２９】
技術的思想１０：前記加工方法データは、加工を行う工具を指定する工具交換指令コードと、座標系を選択するための座標系指令コードと、加工動作に何ら寄与しないコメントを前記プログラムデータ中に記載するためのコメント指令コードと、を含み、前記形状定義データは、工具の移動経路を定義する形状指令コードを含み、前記加工プログラムは、前記加工方法データおよび前記形状定義データを、実行順に１行ずつ定義されており、前記表示制御部は、前記工具交換指令コードと、前記座標系指令コードと、前記コメント指令コードと、のそれぞれを加工工程の区切りとするか否かの指示を、前記入力装置を介して受け付け、該受け付けた指令コードを加工工程抽出コードとして定め、当該加工工程抽出コードを前記工程名称データとして認識し、前記加工プログラムにおいて、前記工程名称データとして認識した指令コードを含む行から、次に前記工程名称データとして認識した指令コードを含む行の直前の行までを、先に認識した前記工程名称データの前記加工工程として認識することを特徴とする技術的思想１記載の加工プログラム編集支援装置。【００３０】
前述した通り、加工を行う工具を指定する指令コードや、加工の形状を定義するための座標系の選択を行う指令コードは、加工プログラムのなかに必ず含まれる。あるいは、加工プログラム中に加工動作に影響を与えることなくユーザのコメントを挿入するコメント指令コードを用いて、独自に工程管理を行っているユーザは存在する。技術的思想２の構成は、これらの加工プログラムを解析して、工程一覧表を表示させる機能を実現するものである。しかし、加工プログラムによっては、これらの指令コードを選択的に使用しないと、分割された加工工程が無意味に多数に分割されたりして、使用に際して更なる改善を求められる場合がある。上記構成によれば、加工プログラムに応じてどの指令コードを採用するかをユーザが選択できるため、どの様な加工プログラムであっても、工程一覧表の機能を適切に使用できるよう、調整することが可能となる。
【図面の簡単な説明】
【００３１】
【図１】第１の実施形態にかかるシステム構成図。
【図２】同実施形態にかかる加工プログラムの構成ファイルを示す図。
【図３】同実施形態にかかる加工ユニットの種類を示す図。
【図４】同実施形態にかかる製品形状を示す斜視図。
【図５】同実施形態にかかる加工プログラムを例示する図。
【図６】同実施形態にかかる編集支援画像を例示する平面図。
【図７】同実施形態にかかる初期表示処理の手順を示す流れ図。
【図８】同実施形態にかかる一工程における加工ユニットを例示する図。
【図９】上記加工ユニットによって定まる加工形状を示す斜視図。
【図１０】同実施形態にかかる一工程における加工ユニットを例示する図。
【図１１】上記加工ユニットによって定まる加工形状を示す斜視図。
【図１２】同実施形態の形状表示領域がタップされた際の処理の手順を示す流れ図。
【図１３】（ａ）および（ｂ）は、同実施形態の形状表示領域がタップされた際の処理を例示する図。
【図１４】（ａ）および（ｂ）は、同実施形態の形状表示領域がタップされた際の処理を例示する図。
【図１５】同実施形態の工程一覧表示領域がタップされた際の処理の手順を示す流れ図。
【図１６】同実施形態のプログラムデータ表示領域がタップされた際の処理の手順を示す流れ図。
【図１７】同実施形態のプログラムデータ表示領域のデータが更新された際の処理の手順を示す流れ図。
【図１８】（ａ）および（ｂ）は、同実施形態のプログラムデータ表示領域のデータが更新された際の画像を例示する図。
【図１９】第２の実施形態にかかる加工プログラムを例示する図。
【図２０】同実施形態にかかる編集支援画像を例示する平面図。
【図２１】同実施形態にかかる初期表示処理の手順を示す流れ図。
【図２２】同実施形態にかかる工程情報テーブルを示す図。
【図２３】同実施形態における座標値テーブルを示す図。
【図２４】同実施形態の工程一覧表示領域がタップされた際の処理の手順を示す流れ図。
【図２５】（ａ）および（ｂ）は、同実施形態の工程一覧表示領域がタップされた際の処理を示す図。
【図２６】（ａ）および（ｂ）は、同実施形態の工程一覧表示領域がタップされた際の処理を示す図。
【図２７】同実施形態の形状表示領域がタップされた際の処理の手順を示す流れ図。
【図２８】同実施形態のプログラムデータ表示領域がタップされた際の処理の手順を示す流れ図。
【図２９】第３の実施形態にかかる工程一覧表示領域の見出しとされるコードを例示する図。
【図３０】同実施形態における工程の見出しの選択処理の手順を示す流れ図。
【発明を実施するための形態】
【００３２】
＜第１の実施形態＞
以下、加工プログラム編集支援装置の第１の実施形態について、図面を参照しつつ説明する。
【００３３】
図１に、本実施形態のシステム構成図を示す。
ワーク１０は、加工対象である。複合加工機２０は、ワーク１０を回転させながら工具によってワーク１０を加工する機能と、ワーク１０を固定し、工具を変位させることでワーク１０を加工する機能とを備える。換言すると、複合加工機２０は、旋盤、フライス盤、ドリル盤等の機能を併せ持つ工作機械である。
【００３４】
数値制御装置３０は、複合加工機２０がワーク１０を加工するための指令信号を複合加工機２０に送信する。数値制御装置３０は、中央処理装置（ＣＰＵ）３２、表示装置３４、タッチパネル３６、ボタン３７，およびメモリ３８を備えている。表示装置３４は、たとえば液晶表示パネルや有機ＥＬ表示パネル等を備え、画面に文字列やグラフィック画像を表示する。タッチパネル３６は、表示装置３４の画面に重ねて配置されている。タッチパネル３６は、指や指示棒等の指示部材が接触するか、所定以上近接した点を指定点として検知する機能を有した入力装置である。ボタン３７は、タッチパネル３６とは別に、ユーザが数値制御装置３０に対して特定の指示をする際に用いる専用の入力装置である。
【００３５】
メモリ３８は、数値制御装置３０に予め搭載されているプログラム等のデータを記憶するとともに、ＣＰＵ３２が処理を行う際に一時的にデータを記憶する機能を有する。特に、メモリ３８には、加工プログラム４０や、編集支援プログラム４２が記憶されている。
【００３６】
図２に、本実施形態にかかる加工プログラム４０を構成するユニットの例を示す。ユニットとは、ここでは加工や工作機械の周辺装置の動作、あるいはワークの設置場所等を定義するためのデータであって、加工プログラムが有するプログラムデータの一例である。
【００３７】
本実施形態にかかる加工プログラム４０は、大きくは、共通ユニット５０、座標系・ワーク姿勢設定ユニット５２、加工ユニット５４、およびエンドユニット５６によって構成されている。ここで、共通ユニット５０は、加工プログラム４０の先頭に必ず設定するユニットであり、プログラム全体に共通するデータ、例えば素材材質や素材形状等を設定するものであり、素材の形状を定義するデータである素材形状データを含む。座標系・ワーク姿勢設定ユニット５２は、機械座標系における加工プログラム原点の座標値（基本座標）や加工時のワークの姿勢等を設定するものである。加工ユニット５４は、加工工程の内容を設定するものであり、加工方法を宣言し、使用する工具の指定や、加工時の取り代や、主軸の回転数や、工具の送り速度などの切削条件等のデータである各加工工程での加工方法データを含む。また、加工ユニット５４は、各加工工程によって加工する加工形状、詳しくは、各加工工程を実行することによって除去される形状である除去形状を加工工程単位に定義するデータである除去形状データを含む。
【００３８】
なお、加工におけるワークの形状を定義する形状定義データは、上記素材形状データと上記除去形状データとを含む。加工プログラムを実行する前のワーク形状は、素材形状データによって定義される。各加工工程が行われた後のワーク形状は、加工工程が行われる前のワーク形状と、加工工程の除去形状との差集合演算によって求められる。形状定義データから得られる形状である定義形状は、加工に寄与する形状であり、これら素材の形状、除去形状、各加工工程後の形状であるワーク形状、全ての加工が完了した後のワーク形状である製品形状を含む。また、加工工程単位とは、加工方法データと加工の形状を定義するデータとを１つずつ含む範囲を１つとして加工プログラム編集支援装置で取り扱われる単位である。
【００３９】
エンドユニット５６は、加工プログラム４０の最後に設定する、加工プログラムの終了を示すユニットである。
図３に、加工ユニット５４の種類を示す。
【００４０】
加工ユニット５４で定義される加工方法は、「点加工ユニット」、「Ｃ軸点加工ユニット」、「線加工ユニット」、「Ｃ軸線加工ユニット」、「面加工ユニット」、および「旋削加工ユニット」に分類され、それらは更に細分化されている。すなわち、たとえば、「点加工ユニット」は、「ドリル」ユニットや「タップ」ユニット等に細分化されている。なお、これら各ユニットに含まれるデータのうちユニットの名称やユニットの番号を示すデータは、加工工程の工程名称を示す工程名称データの一例である。
【００４１】
図４に、本実施形態の説明に利用するワーク１０に対し全ての加工が完了した後のワーク形状である製品形状６０を示す。製品形状６０は、第１円柱部６２、第１円柱部６２よりも外径が大きい第２円柱部６４、第２円柱部６４よりも外形が大きい第３円柱部６６、第３円柱部６６から外径を縮めるように形成されたテーパ部６８、およびテーパ部６８につながる第４円柱部７０を備えている。そして、第３円柱部６６には、一部がフラットな面とされたフェイスミル面７４が形成され、フェイスミル面７４には、ドリル穴７６が形成されている。また、第４円柱部７０には、凹部７８が形成されている。
【００４２】
図５は、ワーク１０を製品形状６０に加工するための加工プログラム４０である。加工プログラム４０は、複数のユニットから構成され、各ユニットは、加工方法データを構成するユニットデータを備えている。なお、加工ユニット５４は、さらに、加工方法データを構成する工具シーケンスデータ（ＳＮｏ）、および、除去形状データの一例である形状シーケンスデータ（ＦＩＧ）を備えている点で、他のユニットとは相違している。
【００４３】
ここで、ユニット番号「Ｕｎｏ」が「０」となるユニット、すなわち加工プログラム４０の先頭データは、上記共通ユニット５０となっている。またユニット番号が「１」、「２」、「３」、「５」、「７」、「８」、「１１」については、座標系・ワーク姿勢設定ユニット５２である。「ＦＲＭ」ユニット、「ＦＲＭシフト」ユニットは、加工原点の設定である。「ヘッド選択」ユニットはワーク主軸が複数ある機械においてどのワーク主軸に関する加工であるかを宣言するユニットである。単一ワーク主軸の機械では、このユニットは存在しない。「インデックス」ユニットは機械を構成する回転軸の姿勢を設定するユニットである。この場合、「棒材」ユニットの前の「インデックス」ユニットでは、工具主軸のＢ軸角度を設定することで旋削加工時の工具主軸の姿勢を指令することができる。また、「フェイスミル」ユニット、「ドリル」ユニットの前の「インデックス」ユニットでは、ワーク主軸のＣ軸角度を設定することで、ワークのどの面に加工を行うかを指令したり、工具主軸のＢ軸角度を設定することで、斜めの面に加工を行うように指令したりすることができる。ユニット番号が「４」である「棒材」ユニットは、加工ユニット５４の「旋削加工ユニット」に分類されたうちの１つである。「旋削加工ユニット」はワークを回転させながら工具によって加工する加工法であり、「棒材」ユニットは棒状のワークを旋削加工する加工法である。なお、加工プログラム４０は、ワーク１０の加工のために複合加工機２０や数値制御装置３０が行う処理（加工処理）を、その加工工程の順に記述したものであるが、必ずしも記載された工程順に加工を行うわけではなく、設定によっては、例えば仕上げ加工のみ最後に行うようにすることもできる。
【００４４】
上記編集支援プログラム４２は、加工プログラム４０の作成および編集を支援するプログラムである。
図６に、ＣＰＵ３２が編集支援プログラム４２を実行することで、表示装置３４の画面３５に表示される編集支援画像を例示する。
【００４５】
編集支援画像が表示される画面３５は、図６の上側の縁部を除けば、工程一覧表示領域３５ａ、形状表示領域３５ｂ、およびプログラムデータ表示領域３５ｃに分割されている。工程一覧表示領域３５ａは、加工工程として、工程名称の一例である加工プログラム４０の各ユニットの名称と、ユニットの番号を表示候補とする表示領域である。そして、表示候補のうちの少なくとも一部（図では、ユニット番号が「０」〜「１１」まで）が、表示対象として工程一覧表示領域３５ａに表示される。
【００４６】
形状表示領域３５ｂは、加工プログラム４０で定義される形状（３Ｄモデル）を表示候補とする表示領域である。なお、実際に形状表示領域３５ｂに形状が表示されるときには、３Ｄのモデルを２次元図形に変換した画像が形状として表示される。更に詳しく言えば、加工プログラム４０の各加工工程で定義される除去形状と、加工プログラム４０を実行することによって変遷するワークの形状であって、素材形状から始まり、加工工程を経るに従い除去形状が除去されて変形し、最終的に製品形状６０となる、各段階におけるワーク形状、つまり、各加工工程の前後で異なるワーク形状と、が、形状表示領域３５ｂの表示候補である。
【００４７】
プログラムデータ表示領域３５ｃは、加工プログラム４０の内容を記述するデータ（詳細データ）を表示候補とする表示領域である。詳細データは、加工プログラム４０によって記述される加工工程の内容を記述するデータであり、加工ユニット５４の工具シーケンスデータや形状シーケンスデータ等を含む。そして、加工プログラム４０を構成する詳細データのうちの少なくとも一部（図では、ユニット番号が「０」〜「３」のデータと、「４」のデータの一部）が表示対象としてプログラムデータ表示領域３５ｃに表示される。
【００４８】
なお、図６において、工程一覧表示領域３５ａの図中右端部のスクロール機能によって、よりユニット番号が大きいユニットも表示可能である。また、形状表示領域３５ｂにおいて、ピンチアウト操作によって、製品形状モデル６０Ｍを拡大して表示したり、ピンチイン操作によって、製品形状モデル６０Ｍを縮小して表示したり、あるいは、モデルを平行移動したり、回転したりすることが可能である。また、図６において、プログラムデータ表示領域３５ｃの右端のスクロール機能によって、より後の加工工程を記述する加工プログラム４０のデータも表示可能である。
【００４９】
図７に、図６に示した編集支援画像の表示処理の手順を示す。図７に示す処理は、編集支援プログラム４２がＣＰＵ３２によって実行されることで実現される。図７に示す処理は、表示制御部による制御を構成する。
【００５０】
図７に示す一連の処理において、ＣＰＵ３２は、まず、指定された加工プログラムがメモリ３８に存在するか否かを判断する（Ｓ１０）。ＣＰＵ３２は、指定された加工プログラムがメモリ３８に存在しないと判断する場合（Ｓ１０：ＮＯ）、この一連の処理を一旦終了する。これに対し、ＣＰＵ３２は、指定された加工プログラムが存在すると判断する場合（Ｓ１０：ＹＥＳ）、加工プログラム４０を読み込み、表示装置３４を操作して、加工プログラム４０のデータ（詳細データ）の先頭からプログラムデータ表示領域３５ｃに表示可能なだけのデータを表示対象とし、その文字列の画像をプログラムデータ表示領域３５ｃに表示する（Ｓ１２）。
【００５１】
次に、ＣＰＵ３２は、加工プログラム４０から工程一覧表示領域３５ａに表示するデータを取得する（Ｓ１４）。詳しくは、ＣＰＵ３２は、加工プログラム４０を構成する各ユニットの番号とユニットの名称とをセットで取得する。続いてＣＰＵ３２は、表示装置３４を操作して、取得したセットを表示候補とし、取得したセットの先頭から工程一覧表示領域３５ａに表示可能なだけのセットを表示対象として、その文字列の画像を工程一覧表示領域３５ａに表示する（Ｓ１６）。
【００５２】
次に、ＣＰＵ３２は、加工プログラム４０からワーク１０の素材形状データを取得し、３Ｄモデル化する（Ｓ１８）。次に、ＣＰＵ３２は、加工プログラム４０のデータに基づいて加工ユニット毎の加工形状を取得する（Ｓ２０）。加工ユニット毎の加工形状は、加工ユニットで加工され、それによって、除去される部位の形状を定義するデータであり、定義形状に含まれ、以後除去形状と称する場合がある。ＣＰＵ３２は、加工ユニットのデータに基づいて除去形状を計算することができ、これも３Ｄモデル化する。次に、ＣＰＵ３２は、ステップＳ１８において取得した素材形状モデルと、ステップＳ２０において取得した加工ユニット毎の除去形状である加工形状モデルとを用いて、製品形状モデル６０Ｍを作成する（Ｓ２４）。換言すれば、ＣＰＵ３２は、加工ユニット実行前のワーク形状を示すワークモデルから、加工ユニットの加工形状モデルの差集合演算によって、ワーク形状の一例である加工後のワークモデルを作成する処理を、加工プログラムに従って加工プログラムの最初から最後まで実行して、製品形状モデル６０Ｍを生成する。以下に、製品形状モデル６０Ｍの生成処理について詳細に説明する。
【００５３】
図８は、図５に示した加工プログラム４０のうちユニット番号が「４」である「棒材」ユニットのプログラムデータを例示している。「棒材」ユニットは、図３に示したように、「旋削加工ユニット」のうちの１つである。本実施形態では、ユニット番号が「４」の「棒材」ユニットは、同ユニットを規定する情報の１つである「加工部」の指定が「外径」となっており、図４に示した製品形状６０の外周を形成する加工工程のうち旋削加工によって形成する工程部分に対応する。
【００５４】
図８に示されるように、加工ユニット５４は、工具およびその工具の切削条件を設定する工具シーケンスデータ（ＳＮｏ）と、このユニットで加工される加工形状を規定する形状シーケンスデータ（ＦＩＧ）とを有する。工具シーケンスデータ（ＳＮｏ）の行数はこのユニットで使用する工具の本数であり、先頭の「Ｒ」、「Ｆ」は、荒加工用、仕上げ加工用の工具であることを示し、「Ｒ」、「Ｆ」の次に記載されている数字が、使用される順を示す。形状シーケンスデータ（ＦＩＧ）は、特に行数の制限はない。
【００５５】
形状シーケンスデータ（ＦＩＧ）内の各行で設定される点は、図４に例示した座標系におけるＸ軸、Ｙ軸、およびＺ軸の座標値によって規定されている。座標系は、図５に示した加工プログラム４０のユニット番号が「１」で定義されている。「旋削加工ユニット」の形状シーケンスデータ（ＦＩＧ）は、回転体の断面形状をＸＺ平面で定義したものであり、この形状シーケンスデータ（ＦＩＧ）を用いてこの加工ユニットで加工によって除去すべき形状（加工形状）を特定することができる。図８に示した例では、形状シーケンスデータ（ＦＩＧ）が、５行のシーケンスデータとなっており、「１」行目の「線」は、図４の第１円柱部６２の形状に対応し、「２」行目の「線」は、第２円柱部６４に対応し、以下のデータも、第３円柱部６６、テーパ部６８、第４円柱部７０にそれぞれ対応する。以上のように規定したＸＺ平面における断面形状を回転させることにより、加工して得られる棒材モデルを得ることができる。そして、ユニット番号「４」の加工前のワークモデルである素材形状モデルから棒材モデルを差集合演算して、定義形状である除去形状の一例である、図９に示す「棒材」ユニットの加工形状モデル６２Ｍを得ることができる。図９や図１３（ｂ）、図１４（ａ）に示されるように、形状表示領域３５ｂに表示される加工形状モデル６２Ｍには、「棒材」ユニットの加工形状を定義する座標値の基準となる座標系の原点の位置と、Ｘ、Ｙ、Ｚ各軸の「＋」の方向を示す矢印と、を表現した直交座標系のシンボルが合わせて表示される。加工プログラムの作成に習熟していないユーザが、間違った座標系を基準として座標値を入力した場合であっても、ユーザの意図した形状とは異なる形状とともに、直交座標系のシンボルも表示されるため、入力された座標値が座標系の勘違いにより正しい値ではなかったことにユーザは瞬時に気付くことができる。
【００５６】
図１０は、図５に示した加工プログラム４０のうちユニット番号が「９」である「フェイスミル」ユニットのプログラムデータを例示している。「フェイスミル」ユニットは、図３に示したように、「面加工ユニット」のうちの１つである。本実施形態では、「フェイスミル」ユニットの加工によって、図４に示したフェイスミル面７４を形成する。
【００５７】
図１０に示す形状シーケンスデータ（ＦＩＧ）は、４行からなり、それらによって、「フェイスミル」ユニットのＸＹ平面における加工範囲を規定し、ユニットデータを規定する情報である「深さ」および「取代−Ｚ」で、加工面の高さ位置（Ｚ軸原点から「深さ」データの位置が加工面の高さ位置）および厚み（加工面から「取代−Ｚ」の厚み）を規定している。以上の加工範囲、加工面の高さ位置および厚みのデータを用いて、定義形状である除去形状の一例である、図１１に示す編みかけ部分の「フェイスミル」ユニットの加工形状モデル７４Ｍを生成することができる。図１１および図１４（ａ）に示されるように、形状表示領域３５ｂに表示される加工形状モデル７４Ｍには、形状シーケンスデータ（ＦＩＧ）で規定された座標値データ（各コーナのＸＹ座標値（５０，４０）、（０、４０）、（０、−４０）、（５０、−４０））が、ユニット番号「８」の「ＦＲＭシフト」で定義された座標系の、原点位置と、Ｘ、Ｙ、Ｚ各軸の「＋」方向を示す矢印と、を表現する直交座標系シンボルとともに表示されている。このため、設定されている座標系をユーザが勘違いしたり、プログラムデータで定義された座標系の設定が間違っていたりした場合、ユーザの意図した形状とは異なる加工形状モデルが表示されるが、加工形状モデルと合わせて表示されている直交座標系シンボルにより、ユーザはその間違いに容易に気づくことができる。また、座標値データをユーザが誤入力した場合も、加工形状モデルが規定された座標点の近傍に座標値データが表示されているため、ユーザが注目する加工形状モデルの一部と、その周りに表示されている他の部分との間において、大きさと座標値データとを比較することにより、ユーザは容易に誤入力に気付くことができる。また、後述するように、加工形状モデルを規定する座標値データとは異なるラフな数値を入力することが許されてはいるが、実際の形状を示す数値とは大幅に異なる数値が入力されると、ワークの存在しない箇所で加工動作が行われるため非効率な加工となる。これに対し、座標値データの数字と加工形状モデルとを比較しながら座標値データをユーザが変更することで、より効率的な加工となるように加工プログラムを改善することが、上記装置の操作に習熟していないユーザであっても容易である。
【００５８】
図１０には、形状シーケンスデータ（ＦＩＧ）に規定された座標値が、実際のフェイスミル面７４の境界の座標値と一致しない例を示している。これは、加工プログラム４０の作成を簡易に行ったためのものである。すなわち、フェイスミル面７４の境界座標として正確な値を入力することは、ユーザに複雑な計算を要求することになる。しかし、たとえば第３円柱部６６の外周に図１１に示すＺ軸に直交する平面を形成することが目的であるなら、そもそも境界座標は必要ではない。フェイスミル面７４は、Ｚ軸上の座標値が定まれば一義的に定まる。このため、加工プログラム４０の作成時には、Ｘ軸およびＹ軸の各成分の値として、実際のフェイスミル面７４から外れた外側にくると想定される値をラフに入力することで入力を簡便化することができる。このような入力がなされ、図１１に示されるような実際の加工面より広い加工形状を設定したとしても、加工後の製品形状を特定することができる。すなわち、定義形状の一例である素材形状モデルから、これもまた定義形状の一例である図９に示した「棒材」ユニットの加工形状モデル６２Ｍを差集合演算し、更に、これもまた定義形状の一例である図１１に示した「フェイスミル」ユニットの加工形状モデル７４Ｍを差集合演算処理することで、ワークモデルにフェイスミル面７４が創成される。
【００５９】
こうした手法を加工プログラム４０の先頭からエンドユニットまで適用することで、図４に示した製品形状モデル６０Ｍが得られる。
図７に戻り、ＣＰＵ３２は、形状表示領域３５ｂに、得られたワークモデル（ワーク形状）を表示する（Ｓ２６）。指定された加工プログラムの初期表示時は、表示された加工プログラムの全てのプログラムデータに対して上記手法を適用した結果のワークモデルが形状表示領域３５ｂに表示され、完成した加工プログラムの場合は、製品形状モデル６０Ｍが表示される。なお、前述の処理は全て３Ｄモデルに基づいて行っており、形状表示領域３５ｂに表示するために、上記３Ｄモデルを設定された視点に基づいて２次元図形に変換する。すなわち３Ｄモデルを表示用平面に投影する。その２次元図形を形状表示領域３５ｂに表示する。そして、ＣＰＵ３２は、図７に示した一連の処理を一旦終了する。
【００６０】
以上により、ＣＰＵ３２は、図６に示した編集支援画像を画面３５に表示する。
ＣＰＵ３２は、上記編集支援プログラム４２を実行することで、図６に例示する編集支援画像を用いて、ユーザが加工プログラム４０を編集する支援を行う機能を実現する。すなわち、上述したように、画面３５にはタッチパネル３６が重ねて配置されている。このため、ユーザが画面３５に表示された編集支援画像に基づき、タッチパネル３６のうち画面３５内の特定箇所の直上部分をタップする場合、ＣＰＵ３２は、タッチパネル３６の出力信号に基づき、ユーザが編集支援画像のどの部分を指定したかを特定することができる。そして、ＣＰＵ３２は、工程一覧表示領域３５ａ、形状表示領域３５ｂ、およびプログラムデータ表示領域３５ｃのいずれか１つの表示領域におけるいずれか１つの表示対象が指定されることで、それ以外の表示領域の表示対象を上記指定された表示対象に対応するように変更する。すなわち、工程一覧表示領域３５ａ、形状表示領域３５ｂ、およびプログラムデータ表示領域３５ｃのいずれか１つの表示領域が対象表示領域であり、ＣＰＵ３２は、対象表示領域におけるいずれか１つの表示対象が指定されることで、対象表示領域以外の表示領域の表示対象を、上記指定された表示候補との間で加工工程が一致するように変更する。なお、以下では、タッチパネル３６のうち編集支援画像の特定箇所の直上に位置する部分がタップされたことを、編集支援画像の特定箇所がタップされたと称することもある。
【００６１】
図１２に、形状表示領域３５ｂの特定箇所が指定される場合の処理を示す。図１２に示す処理は、編集支援プログラム４２がＣＰＵ３２によって実行されることで実現される。図１２に示す処理は、表示制御部の制御を構成する。
【００６２】
ＣＰＵ３２は、形状表示領域３５ｂに表示対象が表示された状態で形状表示領域３５ｂの特定箇所がタップされると、タッチパネル３６の出力値からタップされた点（指定点）の画面３５上の座標値を取得する（Ｓ３０）。そして、ＣＰＵ３２は、取得した座標値が前回取得した指定点の座標値と同一であるか否かを判断する（Ｓ３２）。なお、この判断においては、前回取得した指定点から所定の半径を有する領域を定義しておき、今回取得した座標値がその領域内に入る場合には、同一であると判断してもよい。
【００６３】
そして、ＣＰＵ３２は、同一ではないと判断する場合（Ｓ３２：ＮＯ）、形状表示領域３５ｂに表示されている表示対象と上記指定点とに基づき、これらから特定される表示候補を、形状表示領域３５ｂの表示候補のうちユーザが指定した表示候補として抽出し、加工形状テーブルを作成する（Ｓ３４）。具体的には、ＣＰＵ３２は、形状表示領域３５ｂに表示されている製品形状モデル６０Ｍにおいて、明示的には表示されていないが、各加工ユニットの加工形状モデル（除去形状）も、製品形状モデル６０Ｍと同一条件で２次元形状に変換して保持する。先に説明したように、加工ユニットの加工前のワークモデル（ワーク形状）と加工ユニットの加工形状モデル（除去形状）との差集合演算により加工後のワークモデル（ワーク形状）が生成されるので、製品形状モデル６０Ｍにおける各加工ユニットによる加工箇所には、当該加工箇所に対応する加工ユニットの加工形状モデル（除去形状）が必ず存在する。そして、ＣＰＵ３２は、指定点の座標値が、２次元化された各加工形状モデルの領域に含まれるか否かを判断して、指定点の座標値が含まれる加工形状モデルの加工ユニットを抽出し、加工形状テーブルを作成する。図１２には、加工形状テーブルとして、ユニット番号が「４」および「９」の２つのユニットが抽出されるものを例示している。なお、ここで、抽出された加工ユニットは、その除去形状を形状表示領域３５ｂに表示した場合に、特定箇所（指定点）がその除去形状の内側に含まれる加工ユニットである。
【００６４】
図１３（ａ）に、形状表示領域３５ｂに表示されている製品形状モデル６０Ｍのフェイスミル面７４がタップされる場合を示している。ここで、ＣＰＵ３２は、フェイスミル面７４を加工する加工ユニットのみならず、形状表示領域３５ｂの２次元画像上で上記指定点が除去形状に含まれる加工ユニットを抽出し、抽出された加工ユニットを加工プログラム４０のプログラム順に並べて加工形状テーブルを作成する。ここでは、図１３（ａ）から明らかなように、上記指定点は、フェイスミル面７４および「棒材」ユニットで定義された第３円柱部６６近傍の「棒材」ユニットの加工形状に含まれるため、これらのユニットを抽出して加工順に並べることで、ユニット番号「４」および「９」の加工形状テーブルが作成される。
【００６５】
図１２に戻り、ＣＰＵ３２は、表示装置３４を操作し、加工形状テーブルによって指定される加工ユニット５４の加工形状モデルの中から加工形状テーブルの順番が最先のものを、すなわち、加工形状テーブルの先頭に登録されたものを、指定表示対象としてハイライト表示する（Ｓ３６）。
【００６６】
図１３（ｂ）に、形状表示領域３５ｂに表示されたフェイスミル面７４部分のタッチパネル３６がタップされた結果を例示する。ＣＰＵ３２は加工形状テーブルからユニット番号「４」を取得し、図１３（ｂ）に示すように、形状表示領域３５ｂにユニット番号「４」の加工前のワークモデルに重ねて「棒材」ユニットの加工形状モデル６２Ｍを表示する。本実施形態では、加工形状モデル６２Ｍの色を変えつつ輝度を高くすることでハイライト表示を行うが、図では、これを網掛けで表現している。ここで、ハイライト表示は、形状表示領域３５ｂに表示された他の表示対象であるワークモデルに対して加工形状モデル６２Ｍを差別化して目立たせるものである。なおこの場合、ユニット番号「４」の前に加工ユニットが存在していないため、この時点におけるワークモデルは素材形状モデルと同一であり、「棒材」ユニットの加工形状モデルの生成手法の説明において既に述べたように、素材形状モデルは「棒材」ユニットの加工形状モデル６２Ｍの一部として表現されている。
【００６７】
図１２に戻り、ＣＰＵ３２は、表示装置３４を操作し、工程一覧表示領域３５ａに表示されている表示対象のうちの指定表示対象であるハイライト表示部分を、形状表示領域３５ｂのハイライト表示部分に対応したものに更新する（Ｓ３８）。すなわち、図１３（ａ）に示すように、ユニット番号が「０」の「共通」を指定表示対象としてこれがハイライト表示された状態から、図１３（ｂ）に示すように、ユニット番号が「４」の「棒材」を指定表示対象としてこれがハイライト表示された状態に変更する。なお、本実施形態では、加工工程（ユニット名称）の色を変えつつ輝度を高くすることでハイライト表示を行うが、図では、これを網掛けで表現している。
【００６８】
図１２に戻り、ＣＰＵ３２は、表示装置３４を操作し、プログラムデータ表示領域３５ｃにおいて、ユニット番号が「４」の「棒材」ユニットのプログラムを指定表示対象とし、これを頭出しするとともに、その部分にカーソルＫを移動させる（Ｓ４０）。すなわち、図１３（ａ）に示すように、ユニット番号が「０」のプログラムのデータが指定表示対象として頭出しされていた状態から、図１３（ｂ）に示すように、ユニット番号が「４」のプログラムのデータが指定表示対象として頭出しされた状態に変更される。頭出し処理は、プログラムデータ表示領域３５ｃの表示候補のうち指定表示対象を差別化して表示するためのものである。
【００６９】
なお、図１３（ｂ）には、ユニット番号が「４」であることを示す部分の右側に表示された文字「棒材」にカーソルＫが移動している例を示している。カーソルＫの位置にあるデータは、変更が可能であることを示す。ただし、このカーソルＫは、指定表示対象をそれ以外の表示候補に対して差別化して目立たせることをも狙っている。
【００７０】
図１２に戻り、ＣＰＵ３２は、ステップＳ３２において前回と同じ座標であると判断する場合（Ｓ３２：ＹＥＳ）、加工形状テーブルの次のユニット番号の加工ユニット５４を、指定表示対象として、これをハイライト表示する（Ｓ４２）。
【００７１】
図１４（ａ）は、形状表示領域３５ｂにユニット番号「４」の「棒材」ユニットが指定表示対象とされてこれがハイライト表示されているときに、もう一度フェイスミル面７４がタップされる場合を示す。ＣＰＵ３２は、タップされた座標が前回と同じと判断して、加工形状テーブルから前回のハイライト対象としたユニット番号「４」の次に位置するユニット番号「９」を取得し、図１４（ｂ）に示すように形状表示領域３５ｂのユニット番号「９」の加工前のワークモデルにおいて、「フェイスミル」ユニットによる加工形状を指定表示対象としてこれをハイライト表示する。そして、ＣＰＵ３２は、図１２のステップＳ３８，Ｓ４０を実行することで、工程一覧表示領域３５ａの表示およびプログラムデータ表示領域３５ｃの表示を更新する。図１４（ｂ）には、工程一覧表示領域３５ａにおいて、ユニット番号が「９」の「フェイスミル」が指定表示対象とされ、これがハイライト表示されるとともに、プログラムデータ表示領域３５ｃにおいて、ユニット番号が「９」の「フェイスミル」の詳細データが指定表示対象とされ、これが頭出しされた状態を示している。なお、ユニット番号「９」の「フェイスミル」ユニットが指定表示対象とされ、ハイライト表示されているときに、更にフェイスミル面７４がタップされた場合、加工形状テーブルのユニット番号「９」の次にユニット番号が登録されていなければ、加工形状テーブルの先頭のユニット番号が採用され、再度ユニット番号「４」の「棒材」ユニットが指定表示対象とされ、ハイライト表示される。すなわち、加工形状テーブルに登録された順に従って、循環的に次の指定表示対象の候補を指定表示対象とする。
【００７２】
図１２に戻り、ＣＰＵ３２は、ステップＳ４０の処理を完了する場合、この一連の処理を一旦終了する。
図１２に示す処理によれば、形状表示領域３５ｂに表示されている加工形状に気になる部分があると感じたユーザは、その部分をタップすることで、その加工形状を加工する加工工程が一連の加工工程全体のどこに該当するかを工程一覧表示領域３５ａのハイライトによって迅速に把握することができる。また、プログラムデータ表示領域３５ｃにおいて頭出しされた加工プログラム４０の詳細データによって、詳細データの内容を迅速に把握することができる。
【００７３】
図１５に、工程一覧表示領域３５ａの特定箇所が指定される場合の処理を示す。図１５に示す処理は、編集支援プログラム４２がＣＰＵ３２によって実行されることで実現される。図１５に示した処理は、表示制御部の制御を構成する。
【００７４】
工程一覧表示領域３５ａに表示されたユニットの番号またはユニットの名称の文字列の１つがタップされると、ＣＰＵ３２は、タッチパネル３６の出力値に基づき、タップされた特定箇所を含む領域に表示された画像が示すユニット番号を指定されたユニット番号として取得する（Ｓ５０）。次に、ＣＰＵ３２は、取得したユニット番号が、現在選択中のユニット番号であるか否かを判断する（Ｓ５２）。そしてＣＰＵ３２は、現在選択中のユニット番号ではないと判断する場合（Ｓ５２：ＮＯ）、表示装置３４を操作し、工程一覧表示領域３５ａに表示されるユニットのうちハイライトする対象を選択されたユニット番号のユニットに変更する（Ｓ５４）。換言すれば、指定表示対象を更新する。続いて、ＣＰＵ３２は、表示装置３４を操作し、プログラムデータ表示領域３５ｃにおいて、ステップＳ５０において取得したユニット番号に対応する加工プログラム４０の詳細データを頭出しし、また、頭出しした詳細データ中のデータにカーソルを移動させる（Ｓ５６）。そしてＣＰＵ３２は、表示装置３４を操作し、指定されたユニット番号に対応する加工工程によって加工される除去形状を指定表示対象としてハイライト表示する（Ｓ５８）。ここで、ステップＳ５８の処理以前に、形状表示領域３５ｂにおいて別の部分が指定表示対象としてハイライト表示されていた場合、形状表示領域３５ｂの全ての表示対象を一旦消去した後に、新たに設定された指定表示対象をワークモデルに対してハイライト表示する。これにより、たとえば、形状表示領域３５ｂの表示が図１４（ａ）に例示した状態であるとき、工程一覧表示領域３５ａのユニット番号が「９」のフェイスミルの文字列がタップされると、図１４（ｂ）に示すように、形状表示領域３５ｂの表示が更新される。ちなみに、ステップＳ５０でタップされたユニット番号が加工ユニット５４のデータを指定するものではない場合、加工形状のハイライトは行わない。
【００７５】
ＣＰＵ３２は、上記ステップＳ５２において肯定判断する場合や、ステップＳ５８の処理が完了する場合には、この一連の処理を一旦終了する。
図１５の処理によれば、工程一覧表示領域３５ａに表示された工程の一覧に基づき、特定の加工工程が気になったユーザが、その加工工程を表現する画像が表示されている領域をタップすることで、形状表示領域３５ｂのハイライト表示によって、その加工工程による加工形状を迅速に把握することができる。また、プログラムデータ表示領域３５ｃにおいて頭出しされた加工プログラム４０のデータによって、加工工程を記述するデータの内容を迅速に把握することができる。
【００７６】
図１６に、プログラムデータ表示領域３５ｃの特定箇所が指定される場合の処理を示す。図１６に示す処理は、編集支援プログラム４２がＣＰＵ３２によって実行されることで実現される。なお、図１６に示す処理は、表示制御部の制御を構成する。
【００７７】
プログラムデータ表示領域３５ｃの特定箇所がタップされると、ＣＰＵ３２は、タッチパネル３６の出力値に基づき、表示装置３４を操作し、特定箇所を含む領域に表示されているデータがユーザにより指定されたとして、同データにカーソルＫを移動する（Ｓ６０）。次に、ＣＰＵ３２は、カーソルＫの移動先に対応するユニット番号を取得する（Ｓ６２）。そして、ＣＰＵ３２は、取得されたユニット番号が、現在選択されているユニット番号であるか否かを判断する（Ｓ６４）。換言すれば、指定表示対象として表示されているユニット番号であるか否かを判断する。そして、ＣＰＵ３２は、現在選択されているユニット番号ではないと判断する場合（Ｓ６４：ＮＯ）、表示装置３４を操作し、工程一覧表示領域３５ａにおけるハイライト対象を更新する（Ｓ６６）。また、ＣＰＵ３２は、表示装置３４を操作し、形状表示領域３５ｂにおけるハイライト対象を更新する（Ｓ６８）。ここで、ＣＰＵ３２は、ユニット番号によって指定されたデータが加工ユニット５４である場合、ハイライト対象を変更する。これにより、たとえば、形状表示領域３５ｂの表示が図１４（ａ）に例示した状態であるとき、プログラムデータ表示領域３５ｃがスクロールされ、ユニット番号が「９」のフェイスミルのデータの文字列が表示された状態で、その文字列がタップされると、図１４（ｂ）に示すように、形状表示領域３５ｂの表示が更新される。一方、ＣＰＵ３２は、ユニット番号によって指定されたデータが加工ユニット５４ではない場合、ハイライト表示を行わない。
【００７８】
なお、ＣＰＵ３２は、上記ステップＳ６４において肯定判断する場合や、ステップＳ６８の処理が完了する場合には、図１６に示す一連の処理を一旦終了する。
図１６の処理によれば、ユーザがプログラムデータ表示領域３５ｃに表示されたデータをタップすることで、工程一覧表示領域３５ａのハイライト表示によって上記タップされたデータによって記述される加工工程を迅速に把握することができる。また、形状表示領域３５ｂのハイライト表示によって、同加工工程によって加工される加工形状を迅速に把握することができる。
【００７９】
図１２、図１５、および図１６の処理によれば、ユーザは、加工工程と、加工工程による加工形状と、加工工程のプログラムの詳細データとを互いに関連づけて容易に認識することができる。
【００８０】
図１７に、プログラムデータ表示領域３５ｃに表示されたデータが上記ボタン３７等の操作によって変更される場合の処理を示す。図１７に示す処理は、編集支援プログラム４２がＣＰＵ３２によって実行されることで実現される。図１７に示す処理は、表示制御部の制御を構成する。
【００８１】
図１７に示す一連の処理において、ＣＰＵ３２は、プログラムデータ表示領域３５ｃに表示されたプログラム値に変更があるか否かを判断する（Ｓ７０）。そして、ＣＰＵ３２は、プログラム値に変更がある場合（Ｓ７０：ＹＥＳ）、プログラムデータ表示領域３５ｃに表示されているプログラムの画像を更新する（Ｓ７２）。さらに、ＣＰＵ３２は、変更されたプログラム値に基づき、形状表示領域３５ｂに表示される加工形状を変更する（Ｓ７４）。なお、ＣＰＵ３２は、ステップＳ７４の処理が完了する場合や、上記ステップＳ７０において否定判断する場合には、この一連の処理を一旦終了する。
【００８２】
図１８に、図１７の処理例を示す。図１８（ａ）には、カーソルＫによって指定され、変更が可能となっている数値が「１５０」である例を示す。この数値は、図４に示した製品形状６０におけるテーパ部６８の「終点−Ｚ」（テーパ部小径側Ｚ軸座標値）に対応している。図１８（ｂ）には、同数値を「２００」に変更した例を示す。この場合、形状表示領域３５ｂにおいて、テーパ部６８が変更された画像に更新される。なお、この処理は、ＣＰＵ３２が、ユニット番号が「４」の棒材の加工ユニットによって定義される加工形状を再計算し、素材形状等に対するこの再計算された加工形状の差集合演算を行うことで実現することができる。ちなみに、図１８（ｂ）においては、カーソルＫの位置が図１８（ａ）の位置とは相違しているが、これは、図１８（ｂ）において数値を「２００」に確定させることでカーソルＫが移動したためである。
【００８３】
これにより、ユーザは、加工プログラム４０のデータの変更によって、加工形状がどのように変更されるかを迅速に把握することができる。このため、データの入力ミス等に迅速に気づくことができる。
【００８４】
なお、図１２、図１５、図１６、および図１７の処理は、ワーク１０を製品形状６０とする加工プログラム４０を一旦入力した後にのみ実行されるものではない。すなわち、加工プログラム４０がワーク１０を製品形状６０に加工するものとしては未完成であって作成途中のものであっても実行される。このため、作成途中において新たに入力したデータがいかなる加工形状となるかを迅速に把握することもできる。
【００８５】
＜第２の実施形態＞
以下、加工プログラム編集支援装置の第２の実施形態について、第１の実施形態との相違点を中心に図面を参照しつつ説明する。
【００８６】
本実施形態にかかる加工プログラム４０は、ＥＩＡ／ＩＳＯの規格に従ったものである。図１９に、本実施形態にかかる加工プログラム４０を例示する。
図示されるように、本実施形態では、国際規格ＥＩＡ／ＩＳＯで規定された指令コードの一例であるＧコードやＴコードを用いてプログラムを記述する。工具交換指令コードの一例であって切削を行う工具を指令するＴコード、工具またはワークを回転させるときの回転数を指令するＳコード、および、切削時の工具とワークとの相対的な移動速度を指令するＦコードは、加工方法データの一例である。これに対し、工具の移動経路を定義する指令コードの一例であるＧコードの少なくとも一部や指令位置座標を示す座標値データは、形状定義データの一例であり、一部のＧコードとそれに伴う座標値データを形状指令コードとも称す。図示されるように、本実施形態にかかる加工プログラム４０は、加工工程のみを表現するものが定められていない。そこで、本実施形態の加工プログラム編集支援装置は、ワーク１０の加工に用いる工具を指令するＴコードを加工工程の区切りとし、Ｔコードを工程名称データとして取り扱う。
【００８７】
図２０に、本実施形態にかかる編集支援画像を例示する。図２０に示されるように、形状表示領域３５ｂには、定義形状の一例であるワーク１０の加工形状として、工具のプログラム指令位置によって特定された加工形状が実線にて表示されている。また、形状表示領域３５ｂ内の破線は、位置決め指令（あるいは、早送り指令とも言う）時の工具の移動経路であって、定義形状の一例を示す。なお、図２０に示した実線と破線とは、接続線の一例であって、実際には双方の線の形状が同一（たとえば同一の太さの実線）であって、色が互いに相違することを想定しているが、図面の記載の制約のために、実線および破線によって区別して記載した。なお、プログラムデータ表示領域３５ｃの表示候補は、プログラムデータの一例であって、加工プログラム４０の内容を記述するデータ（詳細データ）である。すなわち、詳細データは、加工プログラム４０によって記述される加工工程の内容を記述するデータであり、本実施形態では、加工工程の区切りとして用いる指令コード以外のＧコード等をも含めたものが詳細データとなっている。
【００８８】
図２１に、図２０に示す編集支援画像の表示処理の手順を示す。なお、図２１において、図７に示した処理に対応する処理については、便宜上、同一のステップ番号を付して説明を省略している。図２１に示す処理は、表示制御部の制御を構成する。
【００８９】
この一連の処理において、ＣＰＵ３２は、ステップＳ１２において、プログラムデータ表示領域３５ｃへの表示処理が完了すると、ステップＳ１４ａにおいて、加工プログラム４０からＴコードを抽出することで、工程情報テーブルを作成する。図２２に、工程情報テーブルを示す。工程情報テーブルは、加工プログラム４０に含まれるＴコードのうちプログラム先頭からの行数（以後、プログラム行数と言う）の小さいものから順に並べられたものである。ただし、工程番号が「１」となるものは、Ｔコードに対応していない。これは、プログラムの先頭を意味するものである。なお、本実施形態では、このように作成された工程情報テーブルにおいて、加工工程の先頭の行から次の加工工程の前の行までのブロックで行われる動作を、総称して加工工程と称す。すなわち、ＣＰＵ３２は、工程名称データとして認識したＴコードを含む行から、次に認識したＴコードを含む行の直前の行までを、先に認識したＴコードの加工工程として認識する。
【００９０】
図２１に戻り、ＣＰＵ３２は、ステップＳ１６において、工程情報テーブルに基づき、表示装置３４を操作し、工程一覧表示領域３５ａに加工工程としてＴコードを示す文字列を表示する。なお、図２０に示したように、工程番号が「１」となるものは、加工プログラム４０のトップ（Program Top）である旨を表示している。
【００９１】
次に、ＣＰＵ３２は、ステップＳ２３において、加工プログラム４０の先頭から座標系設定に関連するＧコードに付随する座標値データを除く座標値データを順次サーチして、プログラム行数、Ｇコードの種類、および座標値データ（指令位置座標）を抽出し、メモリ３８に座標値テーブルを作成する。なお、Ｇコードを伴わない座標値データの場合は、それ以前の最後のＧコードが省略されたものとして取り扱う。こうして作成された座標値テーブルの座標値は、そのＧコードによる終点位置の座標値か、あるいは加工形状を定義する点の座標値である。なお、移動経路を加工形状として描画する前提として、初期位置は機械原点に位置するものとして扱う。
【００９２】
図２１に戻り、ＣＰＵ３２は、座標値テーブルを生成した後、ステップＳ２６ａにおいて形状表示領域３５ｂにワーク１０の加工形状を表示する。ここでは、ＣＰＵ３２は、まず、３次元仮想空間に上記座標値テーブルの値に基づいて、座標値テーブルの先頭から最終行まで、座標値データが示す座標点とその点に接続される接続線を配置して３Ｄモデルを作成し、加工形状モデルとしてメモリ３８に記憶する。次に、ＣＰＵ３２は、上記加工形状モデルを、設定された視点に基づいて２次元図形に変換する（表示用平面に投影する）。そして、ＣＰＵ３２は、その２次元図形を形状表示領域３５ｂに表示する。なお、３Ｄモデルおよび２次元図形における点および線は、大きさを持っておらず、従って図形を拡大したとしても線の太さが太くなることはない。なお、座標値テーブルによって形成される接続線は、座標値テーブルの先頭の座標値データが示す点と初期位置である機械原点とを接続する接続線が座標値テーブル先頭の接続線であり、それ以降に関しては、座標値テーブルの座標値データが示す座標点と、当該座標値データの１つ前の座標値データが示す座標点とを接続する線である。言い換えると、座標値テーブルのある行が示す接続線とは、その行の座標値データが示す座標点と、その前の行の座標値データが示す座標点とを接続する接続線であり、その行の座標値データが示す座標点を終点とする接続線である、とも言うことができる。
【００９３】
なお、加工プログラムによって得られる定義形状の一例として挙げた、上記の処理で表示された加工形状は、厳密には加工の結果として得られる加工形状と異なるが、簡易的な上記処理によって得られる加工形状であっても、加工部位の特定には、十分実用に耐える。そして、上記加工プログラム編集支援装置は、加工形状モデルを作成するための処理が簡易的であるがゆえに、実際の工具の移動経路を演算して表示する従来の移動経路表示方法に比較して、処理に要する時間が極めて短時間で済み、加工プログラムの編集箇所を特定するための支援機能として適している。また、上記加工形状は形状表示領域３５ｂの表示候補であり、グラフィック画像の２次元図形に変換する際の視点や表示倍率の設定により、表示対象となる加工形状は可変である。
【００９４】
図２４に、工程一覧表示領域３５ａの特定箇所が指示される場合の処理を示す。図２４に示す処理は、編集支援プログラム４２がＣＰＵ３２によって実行されることで実現される。図２４に示す処理は、表示制御部の制御を構成する。なお、図２４において、図１５に示した処理に対応する処理については、便宜上、同一のステップ番号を付与して、説明を省略している。
【００９５】
図２４に示す処理において、ＣＰＵ３２は、ステップＳ５６の処理の後、形状表示領域３５ｂにおいて、指定された加工工程の加工形状を指定表示対象として選択的に表示する（Ｓ５９）。
【００９６】
図２５（ａ）は、工程一覧表示領域３５ａにおいて工程番号が「３」の加工工程「ＴＮｏ．３」がタップされた状態を示し、図２５（ｂ）は、形状表示領域３５ｂにおいて、工程番号が「３」である加工工程「ＴＮｏ．３」の加工形状のみが選択的に表示された状態を示す。具体的には、ＣＰＵ３２は、形状表示領域３５ｂをまず画面消去した後、工程情報テーブルより工程番号が「３」の開始プログラム行数および終了プログラム行数を取得し、座標値テーブルより前記開始プログラム行から終了プログラム行までのデータを取得して加工形状表示することにより、工程番号「３」のみの加工形状を表示する。つまり、工程一覧表示領域３５ａに表示されている加工工程をユーザが指定して、ＣＰＵ３２が加工工程を特定した場合は、形状表示領域３５ｂにおいては、ＣＰＵ３２は、特定した加工工程のプログラムデータをすべて選択して、そのプログラムデータによる定義形状を指定表示対象としたことになる。これを全行処理と称す。一方、以下に述べるが、プログラムデータ表示領域３５ｃにおいては、ＣＰＵ３２は、特定された加工工程の先頭の行、つまり、工程名称データとして認識された行が指定表示対象とされ、既にその行が表示されていればカーソルを移動させることでその行が指定表示対象であることを示しており、これを単独行処理と称す。
【００９７】
なお、図２５（ｂ）には、ステップＳ５６の処理がなされた後のプログラムデータ表示領域３５ｃに表示対象として表示される加工プログラム４０の詳細データを示しており、これは、図２５（ａ）においてプログラムデータ表示領域３５ｃに表示対象として表示される加工プログラム４０の詳細データと同一となっており、カーソルＫのみが移動している。これは、プログラムデータ表示領域３５ｃに表示される加工プログラム４０の詳細データを変更しなくても、選択された加工工程を記述するデータを表示可能であるために、頭出しを行わなかった例である。ちなみに、カーソルＫは、「Ｔ３Ｔ７Ｍ６」と記載された行に表示されている。ここで、左側のＴコードである「Ｔ３」が今回加工に利用される工具データであり、右側のＴコードである「Ｔ７」は、次回加工に利用される工具データである。加工プログラム４０の、より下の行には、「Ｔ７」が冒頭に現れる行が存在し、この行が、Ｔコードが「Ｔ７」である工具を利用した加工を規定するものとなる。なお、図２５（ｂ）においては、「Ｔ３Ｔ７Ｍ６」と記載された行にカーソルＫが移動していることによって、その部分が指定表示対象となっている。
【００９８】
図２６（ａ）は、工程一覧表示領域３５ａにおいて工程番号が「６」の加工工程「ＴＮｏ．２７」がタップされた状態を示し、図２６（ｂ）は、形状表示領域３５ｂにおいて、工程番号が「６」である加工工程「ＴＮｏ．２７」の加工形状のみが指定表示対象として選択的に表示された状態を示す。この場合、頭出しが行われた結果、図２６（ｂ）においてプログラムデータ表示領域３５ｃに表示されるプログラムの詳細データは、図２６（ａ）においてプログラムデータ表示領域３５ｃに表示されるプログラムの詳細データとは相違している。
【００９９】
図２４の処理によれば、ユーザは、工程一覧表示領域３５ａに表示された加工工程の１つをタップすることで、形状表示領域３５ｂの画像によって、指定した加工工程の加工形状を迅速に把握することができる。また、プログラムデータ表示領域３５ｃに表示された加工プログラム４０の詳細データによって、その加工工程を記述するデータを迅速に把握することができる。なお、図２５および図２６の説明においては、ともに、特定された加工工程の加工形状が、元々表示された状態で加工工程が特定されて、その後、指定表示対象以外の表示対象が消えて、指定表示対象のみが表示される。これに対し、ユーザがグラフィック画像の２次元図形への変換のための視点を変更する等して、特定された加工工程の加工形状が表示されていない状態で加工工程が特定された場合は、形状表示領域３５ｂのサイズに合わせて２次元図形の倍率が変更され、且つ、視点の平行移動によって、形状表示領域３５ｂの中央に指定表示対象が表示される。
【０１００】
図２７に、形状表示領域３５ｂの特定箇所が指定される場合の処理を示す。図２７に示す処理は、編集支援プログラム４２がＣＰＵ３２によって実行されることで実現される。図２７に示す処理は、表示制御部の制御を構成する。なお、図２７において、図１２に示した処理に対応する処理については、便宜上、同一のステップ番号を付与して、説明を省略している。
【０１０１】
図２７に示すように、ＣＰＵ３２は、ステップＳ３４ａにおいて加工形状テーブルを作成する。すなわち、ＣＰＵ３２は、形状表示領域３５ｂの特定箇所がタップされると、タッチパネル３６の出力値に基づき、形状表示領域３５ｂに表示されている２次元化された加工形状モデルにおいて、指定点を中心とした所定の半径の円内の領域に存在する線を抽出する。これは、本実施形態では、形状表示領域３５ｂに表示される加工形状が線であることに鑑み、同円内の領域が特定箇所として指定されたと見なすための処理である。そして、図２３に示した座標値テーブルに基づき、抽出した線が作成された元のプログラム行数を取得する。そして、取得されたプログラム行数を列挙することで加工形状テーブルを生成する。なお、座標値テーブルに代えて、形状表示領域３５ｂに線を表示するに際して、表示した線とプログラム行数とをセットでメモリ３８に記憶させておいてもよい。これによれば、より迅速にプログラム行数を取得することができる。
【０１０２】
そして、ＣＰＵ３２は、ステップＳ３６ａにて表示装置３４を操作し、形状表示領域３５ｂにおいて、加工形状テーブルに列挙されたプログラム行数の最初のデータにより定まる加工形状（接続線）を、すなわち、加工形状テーブルの先頭に登録された加工形状（接続線）を、指定表示対象としてハイライト表示する。すなわち、該当部分の線のみ色を変えるようにしたり、線を太くしたりする。次に、ＣＰＵ３２は、ステップＳ３８ａにて表示装置３４を操作し、工程一覧表示領域３５ａにおいて、工程情報テーブルに基づいて該当するプログラム行数を含む加工工程を検索し、得られた加工工程の工程番号の文字列を指定表示対象としてハイライト表示する。さらに、ＣＰＵ３２は、ステップＳ４０において、工程情報テーブルに基づき、表示装置３４を操作し、プログラムデータ表示領域３５ｃにおいて該当するプログラムの詳細データを指定表示対象として頭出しし、また、その行、つまり、形状表示領域３５ｂにて指定表示対象として採用された加工形状テーブルのプログラム行数が示す行にカーソルを移動させる。
【０１０３】
図２７に示す処理によれば、形状表示領域３５ｂに表示されている加工形状に気になる部分があると感じたユーザは、その部分をタップすることで、その加工形状に加工する加工工程が加工工程全体のどこに該当するかを工程一覧表示領域３５ａのハイライトによって迅速に把握することができる。また、プログラムデータ表示領域３５ｃにおいて頭出しされた加工プログラム４０の詳細データによって、プログラムの内容を迅速に把握することができる。また、ワークの同一部位を多数の工具で繰り返し加工するような場合、加工形状が錯綜してどの工具の加工形状であるかが、判別困難なことがあるが、このような場合であっても、工程一覧表示領域３５ａで工程番号や工具名称をタップしてその加工工程のみの加工形状を一旦表示させた後に、形状表示領域３５ｂをタップすることで、目的の加工形状を素早く特定することができる。
【０１０４】
図２８に、プログラムデータ表示領域３５ｃの特定箇所が指定される場合の処理を示す。図２８に示す処理は、編集支援プログラム４２がＣＰＵ３２によって実行されることで実現される。この処理は、表示制御部の制御を構成する。なお、図２８において、図１６に示した処理に対応する処理については、便宜上、同一のステップ番号を付している。
【０１０５】
ＣＰＵ３２は、ステップＳ６０の処理が完了すると、ステップＳ８０でカーソル位置のプログラム行数が以前と同一か否かを判断し、違うプログラム行数に移動したと判断した場合（Ｓ８０：ＮＯ）、カーソルの位置するプログラム行数により定まる加工形状（接続線）を形状表示領域３５ｂにおける指定表示対象とし、ハイライト表示する（Ｓ８２）。次にＣＰＵ３２は、工程情報テーブルに基づき、カーソルが位置するプログラム行数に対応した工程番号を取得する（Ｓ６２ａ）。すなわち、工程情報テーブルには、各加工工程のはじめのプログラム行数が記載されているため、これに基づき工程番号を取得することができる。たとえばカーソルの位置のプログラム行数が「８」である場合、工程番号が「３」であるプログラム行数「６」よりも大きく、工程番号が「４」であるプログラム行数「３２」よりも小さい。このため、工程番号が「３」であると特定できる。
【０１０６】
そして、ＣＰＵ３２は、ステップＳ６２ａにおいて特定した工程番号が現在選択中のものであるか否かを判断する（Ｓ６４ａ）。そして、現在選択中の工程番号ではないと判断する場合（Ｓ６４ａ：ＮＯ）、工程一覧表示領域３５ａの表示を更新する（Ｓ６６）。
【０１０７】
図２８の処理によれば、ユーザがプログラムデータ表示領域３５ｃ内に表示された加工プログラム４０の詳細データのうちの任意のデータの文字列をタップすることで、工程一覧表示領域３５ａのハイライト表示によって上記データが加工工程のどの部分に対応するかを迅速に把握することができる。また、形状表示領域３５ｂのハイライト表示によって、上記データによって決定される加工形状を迅速に把握することができる。
【０１０８】
＜第３の実施形態＞
以下、加工プログラムの編集支援装置の第３の実施形態について、第２の実施形態との相違点を中心に図面を参照しつつ説明する。
【０１０９】
上記第２の実施形態では、工程一覧表示領域３５ａに表示する加工工程の区切りを、予めＴコードに定めた。これに対し、本実施形態の加工プログラム編集支援装置では、加工工程の区切りとするコードとして、いくつかのコードをユーザが選択可能とする。すなわち、加工プログラム編集支援装置は、ＥＩＡ／ＩＳＯの規格に従った加工プログラムにおいて、加工工程の区切りとして扱う特定の指令コードを加工工程抽出コードと定義し、加工工程抽出コードをユーザによって設定することを可能とする。言い換えれば、加工プログラム編集支援装置が備える表示制御部は、加工工程の区切りとする少なくとも１つの指令コードを、入力装置を介して受け付け、その受け付けた特定の指令コードを加工工程抽出コードとして定め、加工工程抽出コードを工程名称データとして取り扱う。
【０１１０】
図２９に本実施形態にかかる加工工程の設定例を示す。
図２９において右端には、本実施形態にかかる加工プログラム４０が記載されている。本実施形態にかかる加工プログラム４０も、ＥＩＡ／ＩＳＯの規格に従ったものである。ただし、本実施形態では、加工プログラム４０内で括弧が用いられており、括弧内にコメントが記載されている。本実施形態では、これをコメント指令コードＣＣと称する。コメント指令コードＣＣは、数値制御装置３０が複合加工機２０に出力する指令信号には何ら寄与するものではなく、ユーザが任意に記載したものである。
【０１１１】
図２９には、一例として、加工工程抽出コードが、工具交換指令コードとされた例が示されている。ここで、工具交換指令コードは、工具の交換を指令するコードである。これは基本的には、Ｔコードである。ただし、本実施形態では、Ｔコードを２つ並べて記載する代わりに、ＴコードとＭコードをセットで用いて、「Ｔ＊＊Ｍ０６：＊は任意の数字」によって実際に自動工具交換で主軸に装着される工具を記載し、「Ｔ＊＊Ｍ＃＃：＃＃は、０６以外の数字」によって工具交換準備をすべき工具を記載する例を示している。そして、本実施形態では、「Ｍ０６」と同一に指令されているＴコードを加工工程とする。
【０１１２】
図２９には、別の例として、加工工程抽出コードが、工具交換指令コードと、座標系指令コードとの２つとされた例が示されている。ここで、座標系指令コードは、ワーク１０の座標系を選択するための指令コードであり、具体的には「Ｇ５４〜５９」である。ここで、これら「Ｇ５４〜５９」は、複数のワークの加工を単一の加工プログラム４０によって加工するときに利用される。そしてこの場合、ユーザは、「Ｇ５４〜５９」によって、いずれのワークが加工される工程かを把握できる。
【０１１３】
図２９には、さらに別の例として、加工工程抽出コードが、コメント指令コードＣＣとされた例が示されている。コメント指令コードは、ユーザが任意に記載するものであるため、これを加工工程とすることで、ユーザは、自分にとって分かり易い表現を用いることができ、加工内容の把握が容易となり、目的の加工工程を迅速に見つけることができる。なお、本実施形態では、コメント指令コードＣＣは、プログラムデータ表示領域３５ｃの表示候補に含まれている。
【０１１４】
図３０に、本実施形態にかかる加工工程抽出コードの設定処理の手順を示す。この処理は、ＣＰＵ３２が編集支援プログラム４２を実行することによって実現される。
図３０に示す一連の処理において、ＣＰＵ３２は、まず、ユーザに加工工程抽出コードを設定するように要求する加工工程抽出コード設定要求処理を実行する（Ｓ９０）。具体的には、たとえば表示装置３４の画面３５に、「加工工程とするコードを選択してください」といったメッセージを表示するとともに、工具交換指令コード、座標系指令コード、およびコメント指令コードのそれぞれについて、「選択する」または「選択しない」の２つの文字を隣接して表示すればよい。これに対し、ユーザは、たとえば、工具交換指令コードおよび座標系指令コードの２つを加工工程とすることを希望する場合、工具交換指令コードおよび座標系指令コードについては「選択する」と表示された領域をタップし、コメント指令コードについては「選択しない」と表示された領域をタップすればよい。
【０１１５】
ＣＰＵ３２は、たとえばタッチパネル３６等の出力値によってユーザが選択を終了した旨を通知したと判断すると、工具交換指令コードが選択されたか否かを判断する（Ｓ９２）。そして、ＣＰＵ３２は、工具交換指令コードが選択されたと判断する場合（Ｓ９２：ＹＥＳ）、加工工程抽出コードに工具交換指令コードを含める（Ｓ９４）。
【０１１６】
ＣＰＵ３２は、ステップＳ９４の処理が完了する場合や、ステップＳ９２において否定判断する場合、座標系指令コードが選択された否かを判断する（Ｓ９６）。そして、ＣＰＵ３２は、座標系指令コードが選択されたと判断する場合（Ｓ９６：ＹＥＳ）、加工工程抽出コードに「Ｇ５４〜Ｇ５９」を含める（Ｓ９８）。
【０１１７】
ＣＰＵ３２は、ステップＳ９８の処理が完了する場合や、ステップＳ９６において否定判断する場合、コメント指令コードが選択されたか否かを判断する（Ｓ１００）。そして、ＣＰＵ３２は、コメント指令コードが選択されたと判断する場合（Ｓ１００：ＹＥＳ）、加工工程抽出コードにコメント指令コードを含める（Ｓ１０２）。
【０１１８】
なお、ＣＰＵ３２は、ステップＳ１０２の処理が完了する場合や、ステップＳ１００において否定判断する場合には、この一連の処理を一旦終了する。
ＣＰＵ３２は、こうして加工工程抽出コードを決定すると、図２１のステップＳ１４ａの処理において、加工プログラム４０から加工工程を抽出して工程情報テーブルを作成する。なお、本実施形態にかかる工程情報テーブルは、たとえば、工程番号と、プログラム行数とを関連付けるテーブルとし、Ｔコード等を記憶しないものであってもよい。この場合、ＣＰＵ３２は、ステップＳ１６において工程一覧表示領域３５ａに表示する画像データを生成するに際して、工程情報テーブルに規定されたプログラム行数に基づき、加工プログラム４０から加工工程を抽出すればよい。この場合、抽出した加工工程の文字列の画像が、工程一覧表示領域３５ａに表示する画像となる。もっとも、工程情報テーブルを、工程番号と、加工工程と、プログラム行数とを関連付けるテーブルとすることも可能である。
【０１１９】
＜その他の実施形態＞
なお、上記各実施形態は、以下のように変更して実施してもよい。
・「指定表示対象の表示手法について」
図１３や図２６等においては、工程一覧表示領域３５ａにおいて、指定表示対象の画像の色を変えつつ輝度を高くする手法を例示したがこれに限らない。たとえば、色を変えることなく、輝度を高くしてもよい。また、たとえば、輝度を高くすることなく色を変えてもよい。また、たとえば指定表示対象付近にカーソルを表示してもよい。
【０１２０】
図１３や図１４，図２４、図２６等においては、プログラムデータ表示領域３５ｃにおいて、指定表示対象を頭出しするとともに、そのうちの特定の部分にカーソルＫを移動したがこれに限らない。たとえば、頭出しした直後においては、カーソルＫの位置を定義せず、カーソルＫを表示しなくてもよい。この場合、たとえば、プログラムデータ表示領域３５ｃ内の特定の文字列の画像等がタップされることで、その部分にカーソルＫを出現させればよい。
【０１２１】
図１３や図１６、図２７、図２８において、工程一覧表示領域３５ａに表示されている加工工程の中に、ハイライトの対象となるものがない場合は、頭出し処理を行って且つハイライト表示を実行してもよい。
【０１２２】
図１３においては、形状表示領域３５ｂにおいて加工形状のハイライトを行ったが、これに限らない。ハイライト表示に代えて、たとえば色を変えてもよい。また、たとえば、ハイライト表示に併せてハイライト表示している部分を指し示す矢印を表示してもよく、またたとえば、ハイライト表示を行うことなく矢印のみを表示してもよい。
【０１２３】
図１５や図１６においては、特定の加工工程が指示されると、ＣＰＵ３２は、形状表示領域３５ｂにおいて、その加工工程によって加工される加工形状をハイライト表示したが、これに限らない。たとえば、その加工形状のみを実線とし、残りを破線にて表示してもよい。
【０１２４】
・「表示領域の分割について」
上記実施形態では、工程一覧表示領域３５ａ、形状表示領域３５ｂ、およびプログラムデータ表示領域３５ｃのそれぞれの領域の大きさや配置座標が固定されているものとしていたが、これに限らない。たとえば、タッチパネル３６上でのピンチイン操作やピンチアウト操作等によって、特定の領域自体の拡大や縮小を指示可能としてもよい。これにより、たとえば、工程一覧表示領域３５ａおよび形状表示領域３５ｂを拡大すべく、図６の下方にそれらの領域を拡大する旨を指示することで、プログラムデータ表示領域３５ｃが縮小され、工程一覧表示領域３５ａおよび形状表示領域３５ｂが拡大される。
【０１２５】
なお、この際、画面３５内に、工程一覧表示領域３５ａ、形状表示領域３５ｂ、およびプログラムデータ表示領域３５ｃが全て常時表示されていることは必須ではない。たとえば、工程一覧表示領域３５ａおよび形状表示領域３５ｂを拡大することで、プログラムデータ表示領域３５ｃが表示されないようにすることを可能としてよい。この場合であっても、必要に応じてプログラムデータ表示領域３５ｃを表示可能とすることで、互いの領域に表示された情報をユーザが容易に関連づけることができることには相違ない。
【０１２６】
・「加工工程抽出コードについて」
工具変換指令コード、座標系指令コード、およびコメント指令コードのそれぞれについて、加工工程の区切りとして採用するか否かをユーザの指示によって定めるものに限らない。たとえば、工具交換指令コードおよび座標系指令コードのいずれを加工工程の区切りとして採用するかをユーザの指示によって定めるものであってもよい。またたとえば、座標系指令コードおよびコメント指令コードのいずれを加工工程の区切りとして採用するかをユーザの指示によって定めるものであってもよい。また、たとえば、工具交換指令コードおよびコメント指令コードのいずれを加工工程の区切りとして採用するかをユーザの指示によって定めるものであってもよい。
【０１２７】
さらに、工具交換指令コード、座標系指令コード、およびコメント指令コードのうちの少なくとも１つと、これら３種類のコード以外のコードとのそれぞれを、加工工程の区切りとして採用するか否かをユーザの指示によって定めるものであってもよい。
【０１２８】
さらに、加工工程の区切りとする候補を予め設定しておくものにも限らず、たとえば、加工工程の区切りとするコードをユーザに入力させ、入力されたコードを加工工程の区切りとして定めるものであってもよい。
【０１２９】
・「形状指令コード（Ｇコード）に基づく形状表示について」
上記第２実施形態や第３の実施形態では、形状表示領域３５ｂに表示された加工形状のうち指示された箇所を除けば、工具がワーク１０に接触する際の軌跡と、接触しない軌跡とを色分けする例のみを示したがこれに限らない。たとえば、工具がワーク１０に接触する際の軌跡についても、Ｇコードの種類に応じて色を変更してもよい。もっとも、Ｇコードの種類のみに基づき色を相違させるものにも限らない。たとえば、Ｔコードに基づき、いずれの工具を利用した際の軌跡かに応じて色分けしてもよい。
【０１３０】
・「形状の画像のデータ生成手法について」
上記第１の実施形態では、形状シーケンスデータ（ＦＩＧ）によって規定される形状（座標情報）の差集合に基づき、形状表示領域３５ｂに表示する形状を生成した。また、第２の実施形態では、加工プログラム４０において設定された複数の座標値データで示される空間上の点をＧコードによって決定された属性を有する線で接続して加工形状データを生成した。しかし、これらのように、加工プログラムによって規定された座標情報の差集合や線の接続処理に基づき形状表示領域３５ｂに表示する加工形状のデータを生成するものに限らない。たとえば、加工プログラム４０を数値制御装置３０が用いるコードに変換してワーク１０を加工するシミュレーションを実行し、シミュレーションによって生成されるデータを、形状表示領域３５ｂに表示する加工形状のデータとしてもよい。この場合、シミュレーション結果のうち、各加工工程の終了時のデータを記憶しておくことで、各加工工程の加工形状の画像を形状表示領域３５ｂに表示することも可能となる。
【０１３１】
・「加工プログラムについて」
加工されたワークの形状情報を含む加工形状データを有するものとしては、図２、図３に例示したデータに限らない。たとえば、点加工、線加工、面加工について、工具とは独立に加工形状を定義したユニットを複数備え、それらユニットに組み合わせ可能な工具を規定するデータ（ユニット）を別途備えるものであってもよい。この場合、加工形状を定義したユニットの後に工具を規定したユニットを記載することで加工プログラムを作成すればよい。
【０１３２】
・「プログラム編集支援装置について」
編集支援プログラム４２がＣＰＵ３２によって実行されるものに限らない。たとえば、上記実施形態において編集支援プログラム４２がＣＰＵ３２によって実行されることで実現された機能の少なくとも一部を専用のハードウェア手段によって実現してもよい。
【０１３３】
・「編集支援プログラムのインストール対象について」
数値制御装置３０に限らず、たとえば汎用のコンピュータであってもよい。
・「工作機械について」
複合加工機としては、上記実施形態で例示したものに限らない。たとえば、旋盤のようにワーク１０を回転させて切削する機能を搭載しつつも、フライス盤のようにワーク１０を固定して工具を回転させて加工する機能を搭載しないものであってもよい。
【０１３４】
・「入力装置について」
タッチパネル３６を備えるものに限らない。たとえば、マウス等、表示領域の特定箇所を指示可能な装置であってもよい。この際、特定箇所は、点にも限らず、幅を持った領域であってもよい。ただし、この場合、工程一覧表示領域３５ａやプログラムデータ表示領域３５ｃ内の特定箇所が指定される場合、特定箇所の一部を含む加工工程の画像やデータの画像が指定されたとすることが望ましい。
【符号の説明】
【０１３５】
１０…ワーク、２０…複合加工機、３０…数値制御装置、３２…中央処理装置、３２…ＣＰＵ、３４…表示装置、３５…画面、３５ａ…工程一覧表示領域、３５ｂ…形状表示領域、３５ｃ…プログラムデータ表示領域、３６…タッチパネル、３７…ボタン、３８…メモリ、４０…加工プログラム、４２…編集支援プログラム、５０…共通ユニット、５２…座標系・ワーク姿勢設定ユニット、５４…加工ユニット、５６…エンドユニット、６０…製品形状、６０Ｍ…製品形状モデル、６２…第１円柱部、６２Ｍ…加工形状モデル、６４…第２円柱部、６６…第３円柱部、６８…テーパ部、７０…第４円柱部、７４…フェイスミル面、７４Ｍ…加工形状モデル、７６…ドリル穴、７８…凹部。
【要約】
表示制御部は、プログラムデータ表示領域および工程一覧表示領域のいずれか一方の表示領域に当該一方の表示領域の前記表示対象が表示されているときに、前記一方の表示領域の特定箇所が前記入力装置を介して指定されると、前記一方の表示領域の前記表示対象と前記特定箇所と、により特定される表示対象を、当該一方の表示領域の指定表示対象として、当該一方の表示領域における他の表示対象とは差別化して表示する。また、他方の表示領域の表示候補のなかで前記一方の表示領域の指定表示対象に対応する表示候補を、当該他方の表示領域の指定表示対象として、当該他方の表示領域の表示対象に含めて且つ、当該他方の表示領域における他の表示対象とは差別化して表示する。【図１】
0005925976.tif 000002
【図２】
0005925976.tif 000003
【図３】
0005925976.tif 000004
【図４】
0005925976.tif 000005
【図５】
0005925976.tif 000006
【図６】
0005925976.tif 000007
【図７】
0005925976.tif 000008
【図８】
0005925976.tif 000009
【図９】
0005925976.tif 000010
【図１０】
0005925976.tif 000011
【図１１】
0005925976.tif 000012
【図１２】
0005925976.tif 000013
【図１３】
0005925976.tif 000014
【図１４】
0005925976.tif 000015
【図１５】
0005925976.tif 000016
【図１６】
0005925976.tif 000017
【図１７】
0005925976.tif 000018
【図１８】
0005925976.tif 000019
【図１９】
0005925976.tif 000020
【図２０】
0005925976.tif 000021
【図２１】
0005925976.tif 000022
【図２２】
0005925976.tif 000023
【図２３】
0005925976.tif 000024
【図２４】
0005925976.tif 000025
【図２５】
0005925976.tif 000026
【図２６】
0005925976.tif 000027
【図２７】
0005925976.tif 000028
【図２８】
0005925976.tif 000029
【図２９】
0005925976.tif 000030
【図３０】
0005925976.tif 000031