(57)【特許請求の範囲】
【請求項１】
サイクル指令を含む加工プログラムの入力を受け付ける加工プログラム作成部と、
前記加工プログラムに基づいて複数の工具経路を作成する工具経路作成部と、
前記加工プログラム及び前記複数の工具経路を表示する表示部と、を含む数値制御装置であって、
前記サイクル指令の引数と、前記複数の工具経路と、の関係を情報テーブルに記録する対応関係管理部をさらに含み、
前記対応関係管理部は、前記複数の工具経路の１つである選択工具経路の選択を受け付け、前記情報テーブルを参照して、前記選択工具経路に対応する前記サイクル指令の引数を特定し、
前記表示部は、前記加工プログラムのうち、前記特定された引数を他とは異なる形態で表示し、
前記対応関係管理部は、前記情報テーブルを参照して、前記特定された引数に対応する全ての前記工具経路を特定し、
前記表示部は、前記複数の工具経路のうち、前記特定された工具経路を他とは異なる形態で表示することを特徴とする
数値制御装置。
【請求項２】
サイクル指令を含む加工プログラムの入力を受け付ける加工プログラム作成部と、
前記加工プログラムに基づいて複数の工具経路を作成する工具経路作成部と、
前記加工プログラム及び前記複数の工具経路を表示する表示部と、を含む数値制御装置であって、
前記サイクル指令の引数と、前記複数の工具経路と、の関係を情報テーブルに記録する対応関係管理部をさらに含み、
前記対応関係管理部は、前記サイクル指令の引数の１つの選択を受け付け、前記情報テーブルを参照して、前記選択された引数に対応する全ての前記工具経路を特定し、
前記表示部は、前記複数の工具経路のうち、前記特定された工具経路を他とは異なる形態で表示することを特徴とする
数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御装置に関し、特にサイクル指令の引数と工具経路との関係を表示可能とする数値制御装置に関する。
【背景技術】
【０００２】
入力された加工プログラムに従って工作機械を制御する数値制御装置が広く知られている。加工プログラムでは、ＥＩＡ／ＩＳＯコードのＧｘｘ（ｘは数値）コードを用いて直線、円弧動作等を実現できる。例えば、加工プログラム中に
Ｇ００  Ｘ１．  Ｙ１．
等の記述を行うことにより、工具を座標ｘ１，ｙ１に動かす指令等を出力することができる。
【０００３】
また近年は、工具に複雑な動作をさせることが可能なサイクル指令が実現されている。サイクル指令を出力するには、例えば加工プログラム中に
Ｇｘｘｘｘ（ｘは数値）  Ｐ１  Ｑ２．４５  Ｈ１００．…
等の記述を行う。ここでＧｘｘｘｘの後に指定された引数の値によって、工具の動きが決定される。
【０００４】
数値制御装置は、入力された加工プログラムによって工具がどのように動くかをシミュレーションし、その結果すなわち工具経路を画面上に表示する機能を有している。ユーザは加工プログラムを作成する際、加工プログラムと、シミュレーション結果とを比較しながら、所望の工具の動きを得るために加工プログラムを修正するなどの作業を行う。
【０００５】
ところが、サイクル指令のような複雑な指令においては、どの引数を変えれば工具経路を望みどおりに変更できるか、加工プログラムを見ただけで直ぐに把握することが難しい。そこで、ユーザは、取扱説明書を参照するなどして、どの引数を変更すれば所望の結果を得られるかを判断して、引数の修正作業を行っていた。
【０００６】
この点に関する先行技術として、特許文献１及び２がある。特許文献１には、ＥＩＡ／ＩＳＯコードを用いて作成された加工プログラムのシミュレーションを行って工具経路を描画すること、描画された工具経路の一部を選択すると、加工プログラムのうち選択された工具経路に対応する部分を修正可能とすることが記載されている。
【０００７】
特許文献２には、編集中の加工プログラムのうち、カーソルが位置している部分に対応する工具経路の色を他の経路とは異なる色で描画することが記載されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開昭６１−１７０８０７号公報
【特許文献２】特開平６−２０２９０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１及び２記載の技術では、加工プログラムがサイクル指令の場合に、選択した工具経路とサイクル指令の引数との関係を知ることができない。従って、サイクル指令のどの引数を変更すれば工具経路を望みどおりに変更できるかが把握できないという問題があった。
【００１０】
本発明は、このような問題点を解決するためになされたものであり、サイクル指令の引数と工具経路との関係を表示可能とする数値制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の一実施の形態にかかる数値制御装置は、サイクル指令を含む加工プログラムの入力を受け付ける加工プログラム作成部と、前記加工プログラムに基づいて複数の工具経路を作成する工具経路作成部と、前記加工プログラム及び前記複数の工具経路を表示する表示部と、を含む数値制御装置であって、前記サイクル指令の引数と、前記複数の工具経路と、の関係を情報テーブルに記録する対応関係管理部をさらに含み、前記対応関係管理部は、前記複数の工具経路の１つである選択工具経路の選択を受け付け、前記情報テーブルを参照して、前記選択工具経路に対応する前記サイクル指令の引数を特定し、前記表示部は、前記加工プログラムのうち、前記特定された引数を他とは異なる形態で表示することを特徴とするものである。
【００１２】
他の実施の形態にかかる数値制御装置において、前記対応関係管理部は、前記情報テーブルを参照して、前記特定された引数に対応する全ての前記工具経路を特定し、前記表示部は、前記複数の工具経路のうち、前記特定された工具経路を他とは異なる形態で表示することを特徴とする。
【００１３】
他の実施の形態にかかる数値制御装置は、サイクル指令を含む加工プログラムの入力を受け付ける加工プログラム作成部と、前記加工プログラムに基づいて複数の工具経路を作成する工具経路作成部と、前記加工プログラム及び前記複数の工具経路を表示する表示部と、を含む数値制御装置であって、前記サイクル指令の引数と、前記複数の工具経路と、の関係を情報テーブルに記録する対応関係管理部をさらに含み、前記対応関係管理部は、前記サイクル指令の引数の１つの選択を受け付け、前記情報テーブルを参照して、前記選択された引数に対応する全ての前記工具経路を特定し、前記表示部は、前記複数の工具経路のうち、前記特定された工具経路を他とは異なる形態で表示することを特徴とするものである。
【発明の効果】
【００１４】
本発明により、サイクル指令の引数と工具経路との関係を表示可能とする数値制御装置を提供することができる。
【図面の簡単な説明】
【００１５】
【図１】数値制御装置１００における工具経路及び加工プログラムの引数の表示例を示す図である。
【図２】情報テーブル１０７の作成処理を示す図である。
【図３】選択工具経路の特定手法を示す図である。
【図４】実施例１にかかる数値制御装置１００の動作を示すフローチャートである。
【図５】情報テーブル１０７の作成処理を示すフローチャートである。
【図６】座標変換処理を示すフローチャートである。
【図７】引数Ａの特定処理を示すフローチャートである。
【図８】描画処理を示すフローチャートである。
【図９】実施例２にかかる数値制御装置１００の動作を示すフローチャートである。
【図１０】本発明の実施の形態にかかる数値制御装置１００の構成を示すブロック図である。
【図１１】本発明の実施の形態にかかる数値制御装置１００の構成を示すブロック図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態を図面と共に説明する。
図１０は、本発明の実施の形態にかかる数値制御装置１００の典型的なハードウェア構成を示すブロック図である。また、図１１は、数値制御装置１００の機能構成を示すブロック図である。数値制御装置１００では、図１０に示すＣＰＵがプログラムに従って所定の処理を実行することにより、図１１に示す機能部を論理的に実現される。
【００１７】
図１１に示すように、数値制御装置１００は、加工プログラム作成部１０１、工具経路作成部１０３、対応関係管理部１０５、情報テーブル１０７及び表示部１０９を有する。
【００１８】
加工ブログラム作成部１０１は、数値制御装置１００上で加工プログラムを入力、編集する機能を提供する。加工プログラムの例を図２（右上）に示す。
【００１９】
工具経路作成部１０３は、加工ブログラム作成部１０１で作成された加工プログラムに基づき、工具の動作シミュレーションを行って工具経路を作成し、表示部１０９に工具経路を描画させる処理を行う。工具経路の例を図２（左上）に示す。
【００２０】
対応関係管理部１０５は、加工ブログラム作成部１０１で作成された加工プログラム内のサイクル指令の引数と、工具経路作成部１０３で作成された工具経路との対応関係を、情報テーブル１０７に記録する処理を行う。また、工具経路選択の受付と、情報テーブルを参照して選択された工具経路に対応するサイクル指令の引数を特定する処理を行う。あるいは、引数選択の受付と、情報テーブルを参照して選択された引数に対応する全ての工具経路を特定する処理を行う。
【００２１】
情報テーブル１０７は、加工ブログラム作成部１０１で作成された加工プログラム内のサイクル指令の引数と、工具経路作成部１０３で作成された工具経路との対応関係を格納する。情報テーブル１０７の例を図２（下）に示す。
【００２２】
表示部１０９は、加工プログラム作成部１０１や工具経路作成部１０３の指示により、加工プログラムや工具経路を表示デバイス上に描画する。また、対応関係管理部１０５で特定された工具経路またはサイクル指令の引数を他とは異なる形態で表示する。
【００２３】
＜実施例１＞
実施例１にかかる数値制御装置１００は、描画された工具経路の一部がカーソルで選択されたとき、その工具経路に関連するサイクル指令の引数を、他の引数とは異なる形態で表示する。また、選択された工具経路以外に、その引数に関連する工具経路があれば、当該工具経路を他の工具経路とは異なる形で表示する。
【００２４】
図４のフローチャートを参照して、実施例１にかかる数値制御装置１００の動作について説明する。
Ｓ１０１：
加工プログラム作成部１０１は、加工プログラムの入力を受け付ける。加工シミュレーションの実行が開始される。
【００２５】
Ｓ１０２：
工具経路作成部１０３は、加工プログラム作成部１０１で作成された加工プログラムを読み込んで、工具経路を計算する。工具経路作成部１０３は、サイクル指令の引数に基づいて、各工具経路の終点座標を決定していく。なお、工具経路の計算処理自体は公知であるので、ここでは詳細な説明は省略する。
【００２６】
対応関係管理部１０５が、工具経路の終点座標と、その終点座標を決定するために使われたサイクル指令の引数と、実行ブロックＮｏ．を対応付けて、情報テーブル１０７に記録する。ここで、実行ブロックＮｏ．とは、複数の工具経路の組み合わせによって一連の工具経路が構成されている場合に、当該複数の工具経路を個々に識別するためのユニークな番号である（図２参照）。なお、情報テーブル１０７の作成処理については、後に図５を用いて再度説明する。
【００２７】
Ｓ１０３：
工具経路作成部１０３は、表示部１０９に、Ｓ１０２で計算した工具経路を描画させる。
【００２８】
Ｓ１０４：
工具経路作成部１０３は、Ｓ１０３で描画した工具経路を構成する１つの工具経路を選択するための操作が画面上で行われたことを検出したなら、Ｓ１０５に遷移する。典型的には、工具経路作成部１０３は、ユーザが画面上に表示されたポインタを操作して画面上の位置Ｐを指示したことを検出する。
【００２９】
Ｓ１０５：
工具経路作成部１０３は、Ｓ１０４でユーザが指示した画面上の位置Ｐのグラフィック座標系上の座標を取得する。工具経路作成部１０３は、位置Ｐのグラフィック座標系上の座標を、ワーク座標系上の座標に変換する。これにより、画面上でユーザが指示した位置Ｐと、工具経路との位置関係を評価できるようになる。なお、この座標変換処理については、後に図６を用いて再度説明する。
【００３０】
Ｓ１０６：
対応関係管理部１０５は、情報テーブル１０７を参照し、位置Ｐと一致する工具経路を選択工具経路として特定する。典型的には、位置Ｐの座標と、情報テーブル１０７に格納された工具経路それぞれとの距離Ｄを計算し、距離Ｄが所定の許容量以下である場合に、その工具経路を選択工具経路として特定できる。そして、対応関係管理部１０５は、選択工具経路を決定するために使用されたサイクル指令の引数Ａを、情報テーブル１０７に基づいて特定する。なお、この引数の特定処理については、後に図７及び図３を用いて再度説明する。
【００３１】
Ｓ１０７：
加工プログラム作成部１０１は、Ｓ１０６で特定された引数Ａを他の引数とは異なる表示形態として、加工プログラムを表示部１０９に表示させる。典型的には、引数Ａについては、他とは異なる色、大きさ、太さ、フォント等で表示させることができる。
【００３２】
図１（右）に表示例を示す。この例において、背景がグレイで表示された「Ｇ１１２０」から始まる指令がサイクル指令である。ここでは、引数Ａにあたる「Ｕ１．０」が、他の文字とは異なり太字で表示されている。
【００３３】
Ｓ１０８：
さらに、対応関係管理部１０５は、情報テーブル１０７を参照し、引数Ａに関係する工具経路を全て抽出する。すなわち、Ｓ１０６で特定した引数Ａを含む全てのレコードを、情報テーブル１０７から選択する。
【００３４】
工具経路作成部１０３は、ここで抽出された工具経路を他の工具経路とは異なる表示形態として、表示部１０９に表示させる。典型的には、選択工具経路と、Ｓ１０８で抽出された工具経路については、他とは異なる色、太さ等で表示させることができる。
【００３５】
図１（左）に表示例を示す。この例において、ここでは、選択工具経路及びＳ１０８で抽出された工具経路が、他の工具経路とは異なり太線で表示されている。なお、この表示処理については、後に図８を用いて再度説明する。
【００３６】
次に、図５を用いて、Ｓ１０２の情報テーブル１０７の作成処理についてさらに詳しく説明する。
Ｓ２０１：
工具経路作成部１０３は、加工プログラム作成部１０１で作成された加工プログラムを読み込み、構文を解析する。
【００３７】
Ｓ２０２：
解析の結果、加工プログラムにサイクル指令が含まれることが分かった場合、Ｓ２０３に遷移する。一方、サイクル指令が存在しない場合は処理を終了する。例えば、図５に示す加工プログラムには、「Ｇ１１２０」で始まるサイクル指令が含まれている。
【００３８】
Ｓ２０３：
工具経路作成部１０３は、公知の手法を用いて、サイクル指令に基づき一連の工具経路を作成する。この処理において、工具経路作成部１０３は、サイクル指令の引数に基づいて、個々の工具経路の終点座標を決定していく。
【００３９】
例えば、図５に示す加工プログラムによれば、「Ｇ１１２０」に続く引数と、「Ｇ１４５ｘ」（ｘは数値）に続く形状データに基づき、個々の工具経路の終点座標を計算することができる。そして、計算された一連の終点座標を繋ぐ線分を描画することで、一連の工具経路を描画することができる。ここで、工具経路作成部１０３は、個々の工具経路に実行ブロックＮｏ．を割り当てる。
【００４０】
Ｓ２０４：
対応関係管理部１０５が、工具経路の終点座標と、その終点座標を決定するために使われたサイクル指令の引数と、実行ブロックＮｏ．を対応付けて、情報テーブル１０７に記録する。例えば、図５に示す情報テーブル１０７には、実行ブロックＮｏ．が「５２」である工具経路は、終点座標が引数「Ｕ」により決定され、その座標値は「Ｘ５２，Ｚ５２」であることが記録されている。
【００４１】
Ｓ２０５：
工具経路作成部１０３は、サイクル指令に基づいて作成すべき全ての工具経路を作成したなら、処理を終了する。一方、未だ作成していない工具経路があるならば、Ｓ２０３に戻って処理を継続する。
【００４２】
次に、図６を用いて、Ｓ１０４乃至Ｓ１０５の座標変換処理についてさらに詳しく説明する。
Ｓ３０１：
工具経路作成部１０３は、画面上で１つの工具経路を選択するため、ポインタによる指示等が画面上で行われたことを検出したなら、Ｓ３０２に遷移する。
【００４３】
Ｓ３０２：
工具経路作成部１０３は、Ｓ３０１でユーザが指示した画面上の位置Ｐのグラフィック座標系上の座標を取得する。グラフィック座標系とは、モデル化された工具経路を数値制御装置１００が画面表示するために用いる座標系である。
【００４４】
Ｓ３０３：
工具経路作成部１０３は、位置Ｐのグラフィック座標系上の座標を、ワーク座標系上の座標値に変換する。ワーク座標系とは、工作機械の加工対象であるワークの物理的な形状を表現するための座標系である。典型的には、工具経路作成部１０３は、所定の変換行列を使用することにより、グラフィック座標系とワーク座標系とを相互に変換することができる。
【００４５】
次に、図７及び図３を用いて、Ｓ１０６の引数Ａの特定処理についてさらに詳しく説明する。
Ｓ４０１：
初期状態では、選択工具経路は発見されていない。
【００４６】
Ｓ４０２：
対応関係管理部１０５は、情報テーブル１０７を参照し、実行ブロックＮｏ．、引数、終点座標を含むレコードを１つ読みだす。
【００４７】
Ｓ４０３：
対応関係管理部１０５は、読みだした実行ブロックＮｏ．の工具経路と、点Ｐとの距離を評価する。
【００４８】
図３は、この評価手法の概念を示す図である。ここで、終点（Ｘｎ，Ｚｎ）は、Ｓ４０２で読み出したレコードに含まれる終点座標である。始点（Ｘｎ−１，Ｚｎ−１）は、１回前のループで読み出したレコードに含まれていた終点座標である（Ｓ４０２乃至Ｓ４０５の処理はループ処理である）。この始点と終点を結んだ線分が、この実行ブロックＮｏ．の工具経路である。
【００４９】
この線分で示される工具経路と、点Ｐと、の距離が所定の許容量以下である場合、対応関係管理部１０５は、ユーザがこの工具経路を指示したものと判断する。対応関係管理部１０５は、この工具経路を選択工具経路として特定し、Ｓ４０４に遷移する。その他の場合はＳ４０５に遷移する。
【００５０】
Ｓ４０４：
対応関係管理部１０５は、Ｓ４０３で発見された選択工具経路の実行ブロックＮｏ．と引数を加工プログラム作成部１０１に出力する。
【００５１】
Ｓ４０５：
対応関係管理部１０５は、情報ブロック１０７の全てのレコードの読み出しと評価が終了したか否か判断する。終了したなら処理を終了する。終了していない場合、Ｓ４０２に戻り、前回のループで読み出したレコードの次のレコードを読み出す。
【００５２】
次に、図８を用いて、Ｓ１０８の描画処理についてさらに詳しく説明する。
Ｓ５０１：
対応関係管理部１０５は、情報テーブル１０７を参照し、実行ブロックＮｏ．、引数、終点座標を含むレコードを１つ読みだす。
【００５３】
Ｓ５０２：
対応関係管理部１０５は、Ｓ５０１で読み出したレコードの「引数」が、引数Ａと一致するか否かを判断する。一致する場合、Ｓ５０３に遷移する。一致しない場合はＳ５０５に遷移する。
【００５４】
Ｓ５０３乃至Ｓ５０４：
工具経路作成部１０３は、Ｓ５０２で一致すると判断された工具経路を、表示部１０９に描画させるための指令を作成する。ここで、工具経路作成部１０３は、当該工具経路については、他とは異なる色、太さ等で表示させることができる。
【００５５】
Ｓ５０５：
対応関係管理部１０５は、情報ブロック１０７の全てのレコードの読み出しと評価が終了したか否か判断する。終了したなら処理を終了する。終了していない場合、Ｓ５０１に戻り、前回のループで読み出したレコードの次のレコードを読み出す。
【００５６】
本実施例によれば、数値制御装置１００は、ユーザが画面上で指示した工具経路を決定するために使用されたサイクル指令中の引数を、他とは異なる形態で表示する。これにより、ユーザは、工具経路とサイクル指令の引数との関係を容易に把握できる。
【００５７】
また、本実施例によれば、数値制御装置１００は、ユーザが画面上で指示した工具経路を決定するために使用されたサイクル指令中の引数に関連する他の工具経路を、他とは異なる形態で表示する。これにより、ユーザは、サイクル指令の引数を変更した場合の影響範囲を容易に把握できる。
【００５８】
＜実施例２＞
実施例２にかかる数値制御装置１００は、加工プログラム中のサイクル指令の引数がカーソルで選択されたとき、その引数に関連する工具経路を、他の工具経路とは異なる形態で表示する。
【００５９】
図９のフローチャートを参照して、実施例２にかかる数値制御装置１００の動作について説明する。
Ｓ１０１乃至１０３：
実施例１と同様に、加工プログラム作成部１０１は、加工プログラムの入力を受け付ける。工具経路作成部１０３は、加工プログラム作成部１０１で作成された加工プログラムを読み込んで、工具経路を計算する。そして、対応関係管理部１０５が、工具経路の終点座標と、その終点座標を決定するために使われたサイクル指令の引数と、実行ブロックＮｏ．を対応付けて、情報テーブル１０７に記録する。工具経路作成部１０３は、表示部１０９に、計算した工具経路を描画させる。
【００６０】
Ｓ６０４：
加工プログラム作成部１０１は、加工プログラム中の引数を選択する操作が画面上で行われたことを検出したなら、Ｓ６０５に遷移する。典型的には、加工プログラム作成部１０１は、ユーザが画面上に表示されたポインタを操作して引数Ａを指示したことを検出する。
【００６１】
Ｓ６０５：
実施例１のＳ１０８と同様に、対応関係管理部１０５は、情報テーブル１０７を参照し、引数Ａに関係する工具経路を全て抽出する。すなわち、Ｓ１０６で特定した引数Ａを含む全てのレコードを、情報テーブル１０７から選択する。工具経路作成部１０３は、ここで抽出された工具経路を他の工具経路とは異なる表示形態として、表示部１０９に表示させる。
【００６２】
本実施例によれば、数値制御装置１００は、ユーザが画面上で指示した引数に関連する工具経路を、他とは異なる形態で表示する。これにより、ユーザは、サイクル指令の引数と工具経路との関係を容易に把握できる。また、サイクル指令の引数を変更した場合の影響範囲を容易に把握できる。
【００６３】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で、構成要素の置換、省略、付加、順序の入れ替え等の変更を施すことが可能である。例えば、実施例１では、数値制御装置１００が、選択工具経路に対応する引数Ａの表示形態を変える処理と、引数Ａに関連する工具経路の表示形態を変える処理と、を両方行う例を示した。しかし、本実施形態はこれに限定されず、数値制御装置１００は、選択工具経路に対応する引数Ａの表示形態を変える処理のみを実行してもよい。
【符号の説明】
【００６４】
１００  数値制御装置
１０１  加工プログラム作成部
１０３  工具経路作成部
１０５  対応関係管理部
１０７  情報テーブル
１０９  表示部
【図１】
0006333798.tif 000002
【図２】
0006333798.tif 000003
【図３】
0006333798.tif 000004
【図４】
0006333798.tif 000005
【図５】
0006333798.tif 000006
【図６】
0006333798.tif 000007
【図７】
0006333798.tif 000008
【図８】
0006333798.tif 000009
【図９】
0006333798.tif 000010
【図１０】
0006333798.tif 000011
【図１１】
0006333798.tif 000012