JP6687584B2 - 加工プログラム解析装置およびこれを備えた工作機械、ならびに加工プログラム解析プログラムおよび加工プログラム解析方法 - Google Patents

加工プログラム解析装置およびこれを備えた工作機械、ならびに加工プログラム解析プログラムおよび加工プログラム解析方法 Download PDF

Info

Publication number
JP6687584B2
JP6687584B2 JP2017232531A JP2017232531A JP6687584B2 JP 6687584 B2 JP6687584 B2 JP 6687584B2 JP 2017232531 A JP2017232531 A JP 2017232531A JP 2017232531 A JP2017232531 A JP 2017232531A JP 6687584 B2 JP6687584 B2 JP 6687584B2
Authority
JP
Japan
Prior art keywords
command
machining
unit
point
points
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017232531A
Other languages
English (en)
Other versions
JP2019101799A (ja
Inventor
陽司 津久井
陽司 津久井
路彦 伊藤
路彦 伊藤
貴人 穂積
貴人 穂積
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DMG Mori Co Ltd
Original Assignee
DMG Mori Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by DMG Mori Co Ltd filed Critical DMG Mori Co Ltd
Priority to JP2017232531A priority Critical patent/JP6687584B2/ja
Publication of JP2019101799A publication Critical patent/JP2019101799A/ja
Application granted granted Critical
Publication of JP6687584B2 publication Critical patent/JP6687584B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

本発明は、工作機械を数値制御するための加工プログラムを解析する加工プログラム解析装置およびこれを備えた工作機械、ならびに加工プログラム解析プログラムおよび加工プログラム解析方法に関するものである。
従来、工作機械を数値制御して自由曲面等を加工する場合、図23に示すように、加工経路を微小線分に区分する指令点の点列データ(指令点列)を含む加工プログラムが使用されている。この加工プログラムは、近年の加工内容の複雑化に伴い、CAD(Computer-Aided Design:コンピュータ支援設計)機能およびCAM(Computer Aided Manufacturing:コンピュータ支援製造)機能を兼ね備えたCAD/CAM装置によって生成されることが多い。
しかしながら、当該CAD/CAM装置の性能によっては、図24に示すように、生成された加工プログラムに含まれる指令点列が不揃いになってしまうことが知られている。そして、このような不揃いの指令点列を含む加工プログラムによってワークを加工した場合、加工経路に誤差が生じるため、加工面に傷や筋目等の痕跡が残ってしまうという問題がある。
なお、加工プログラムの良否や問題点等を解析するものとして、例えば、特開2004−21954号公報には、加工プログラムの工具軌跡の各微小線分について、特定軸に対する傾きの正、負、または0を判定し、各傾きに対して異なる表示属性により微小線分あるいは微小線分の端点を表示する工具軌跡表示方法が開示されている(特許文献1)。
特開2004−21954号公報
しかしながら、加工プログラムに含まれる指令点列は、各指令点についての単なる位置座標にしか過ぎない。このため、上記特許文献1では、いずれか一つの特定軸に対する加工経路上の凹凸程度は識別できるものの、それ以外の有用な情報を加工プログラムから直接取得することができないという問題がある。
例えば、加工プログラムによって加工されるワークがどのような加工面を有するかの情報や、各指令点が隣接する加工経路を含む周囲の指令点との位置関係において不揃いか否かの情報を解析できれば、加工面の品位の向上に資するものと考えられる。しかしながら、従来、位置座標以外の情報を含まない加工プログラムからは、上述したような情報を直接取得することができず、限られた解析しか行うことができないという問題がある。
そこで、本発明者らは、特願2016−248154号において、各指令点の位置座標を用いて所定の物理量を算出し、当該物理量に対してクラスター分析を行うことにより、加工プログラムから有用な情報を直接取得し、様々な解析を行うことが可能な加工プログラムの解析方法を提案している。この解析方法によれば、加工プログラムの指令点列を構成する各指令点のうち、周囲の指令点との位置関係において不揃いの指令点、すなわち、加工面において傷が発生する箇所を特定することができる。
ただし、上述したクラスター分析は、いわゆる教師なし学習の一種であるため、収束するまで演算処理を反復する必要がある。このため、演算回数が予測困難であり、適切な解析結果が得られるまでに要する解析時間が長期化する可能性がある。また、不適切な局所解に収束すると、期待した解析結果が得られない可能性もある。そこで、本発明者らは、クラスター分析を用いることなく、加工面における傷の発生箇所を特定可能な別のアプローチを模索していた。
本発明は、このような背景技術のもとになされたものであって、解析時間が予測可能でありながら、加工面における傷の発生箇所を高精度に特定することができる加工プログラム解析装置およびこれを備えた工作機械、ならびに加工プログラム解析プログラムおよび加工プログラム解析方法を提供することを目的としている。
本発明に係る加工プログラム解析装置は、解析時間が予測可能でありながら、加工面における傷の発生箇所を高精度に特定するという課題を解決するために、加工プログラムによって指令される加工経路を、複数の隣接する単位加工経路ごとに分割する加工経路分割部と、前記隣接する単位加工経路のそれぞれを構成する各指令点の位置関係に基づいて、前記単位加工経路同士で隣り合う指令点が抜けている指令点を孤立指令点として検出する孤立指令点検出部と、を有する。
また、本発明の一態様として、孤立指令点を簡便かつ正確に検出するという課題を解決するために、前記孤立指令点検出部は、前記隣接する単位加工経路である第1単位加工経路および第2単位加工経路において、前記第1単位加工経路を構成する全ての指令点について、前記第2単位加工経路を構成する各指令点との距離である指令点間距離を算出し、前記指令点間距離が最短である指令点を隣接指令点として特定するとともに、前記第2単位加工経路を構成する各指令点のうち、前記第1単位加工経路を構成するいずれの指令点からも前記隣接指令点として特定されなかった指令点を前記孤立指令点として検出してもよい。
また、本発明の一態様として、孤立指令点を簡便かつ正確に検出するとともに解析時間を短縮するという課題を解決するために、前記孤立指令点検出部は、前記隣接する単位加工経路である第1単位加工経路および第2単位加工経路において、前記第1単位加工経路を構成するいずれかの指令点である第1始点から当該第1始点よりも後方の指令点である第1終点までの指令点間距離と、前記第2単位加工経路を構成するいずれかの指令点であって前記第1始点と隣り合う第2始点から、当該第2始点よりも後方の指令点である第2終点までの指令点間距離とを算出し、各指令点間距離の差が任意の閾値を超える場合、前記指令点間距離が短い方の終点となっている指令点を前記孤立指令点として検出してもよい。
さらに、本発明の一態様として、特定立体物の外周面に沿う加工経路を適切に単位加工経路ごとに分割するという課題を解決するために、前記加工プログラムが、ある基準点を中心として前記指令点が周上に分布する形状である特定立体物を加工するための加工プログラムである場合、前記加工経路分割部は、前記加工経路を構成する全ての指令点の位置座標を平均した平均座標を原点として算出するとともに、前記原点に関して前記全ての指令点の位置座標を極座標に変換し、1周分の指令点列ごとに前記単位加工経路として分割してもよい。
また、本発明の一態様として、特定立体物以外の立体物における同一の加工面上で一方向のみに移動する加工経路についても、適切に単位加工経路ごとに分割するという課題を解決するために、前記加工プログラムが、ある基準点を中心として前記指令点が周上に分布する形状である特定立体物以外の立体物を加工するための加工プログラムである場合、前記加工プログラムの指令点列を構成する各指令点について、1または複数の指令点の位置座標を用いて所定の物理量を算出する物理量算出部と、各指令点の前記物理量に対してクラスター分析を行うことにより、前記物理量を複数のグループに分類する物理量分類部と、をさらに有し、前記加工経路分割部は、前記物理量分類部による分類結果に基づいて、同一の加工面に属する指令点列を抽出するとともに、当該指令点列の加工順序における前後の指令点間の距離が任意の閾値以上である指令点間で前記加工経路を分割してもよい。
さらに、本発明の一態様として、特定立体物以外の立体物における同一の加工面上で双方向に移動する加工経路や、同一の加工面における移動方向の変化が小さく、次の指令点までの移動距離が長いことによって折り返されるような加工経路についても、適切に単位加工経路ごとに分割するという課題を解決するために、前記加工プログラムが、ある基準点を中心として前記指令点が周上に分布する形状である特定立体物以外の立体物を加工するための加工プログラムである場合、前記加工プログラムの指令点列を構成する各指令点について、1または複数の指令点の位置座標を用いて所定の物理量を算出する物理量算出部と、各指令点の前記物理量に対してクラスター分析を行うことにより、前記物理量を複数のグループに分類する物理量分類部と、をさらに有し、前記加工経路分割部は、前記物理量分類部による分類結果に基づいて、同一の加工面に属する指令点列を抽出するとともに、当該指令点列の加工順序における前後の指令点間の方向がピックフィード方向へ任意の閾値以上に変化した指令点間または前後の指令点間の角度が閾値以上に変化した指令点間で前記加工経路を分割してもよい。
また、本発明の一態様として、孤立指令点を漏れなく検出して解析の精度をさらに向上するという課題を解決するために、前記孤立指令点検出部は、前記単位加工経路のそれぞれについて、加工方向に沿った順方向に前記孤立指令点を順次検出するとともに、前記順方向とは逆方向にも前記孤立指令点を順次検出してもよい。
また、本発明に係る工作機械は、上述したいずれかの態様の加工プログラム解析装置を備えてなる。
さらに、本発明に係る加工プログラム解析プログラムは、解析時間が予測可能でありながら、加工面における傷の発生箇所を高精度に特定するという課題を解決するために、加工プログラムによって指令される加工経路を、複数の隣接する単位加工経路ごとに分割する加工経路分割部と、前記隣接する単位加工経路のそれぞれを構成する各指令点の位置関係に基づいて、前記単位加工経路同士で隣り合う指令点が抜けている指令点を孤立指令点として検出する孤立指令点検出部としてコンピュータを機能させる。
本発明に係る加工プログラム解析方法は、解析時間が予測可能でありながら、加工面における傷の発生箇所を高精度に特定するという課題を解決するために、加工プログラムによって指令される加工経路を、複数の隣接する単位加工経路ごとに分割する加工経路分割ステップと、前記隣接する単位加工経路のそれぞれを構成する各指令点の位置関係に基づいて、前記単位加工経路同士で隣り合う指令点が抜けている指令点を孤立指令点として検出する孤立指令点検出ステップと、を有する。
本発明によれば、解析時間が予測可能でありながら、加工面における傷の発生箇所を高精度に特定することができる。
本発明に係る加工プログラム解析装置およびこれを備えた工作機械の第1実施形態を示すブロック図である。 本第1実施形態において、解析結果記憶部に記憶される解析結果の一例を示す図である。 本第1実施形態における、特定立体物の一例を示す図である。 本第1実施形態における、特定立体物以外の立体物の一例を示す図である。 本第1実施形態において、特定立体物の加工経路を単位加工経路に分割する方法を示す図である。 本第1実施形態において、円柱の加工経路を単位加工経路に分割した状態を示す図である。 本第1実施形態において、同一の加工面を加工する軸が一方向のみに移動する加工経路を単位加工経路に分割する方法を示す図である。 本第1実施形態において、同一の加工面を加工する軸が双方向に移動する加工経路を単位加工経路に分割する方法を示す図である。 本第1実施形態において、指令点列の加工順序における前後の指令点間の角度を示す図である。 本第1実施形態において、孤立指令点を検出する方法を示す図である。 本第1実施形態において、(a)加工経路に沿った順方向に孤立指令点を検出した場合、および(b)当該順方向とは逆方向に孤立指令点を検出した場合を示す図である。 本第1実施形態の加工プログラム解析装置および加工プログラム解析プログラムによって実行される加工プログラム方法を示すフローチャートである。 本第1実施形態における、加工経路分割処理の詳細を示すフローチャートである。 本第1実施形態における、孤立指令点検出処理の詳細を示すフローチャートである。 本第2実施形態において、(a)孤立指令点が検出されない場合、および(b)孤立指令点が検出される場合を示す図である。 本第2実施形態において、(a)指令点P13が孤立指令点として検出されない場合、および(b)指令点P13が孤立指令点として検出される場合を示す図である。 本第2実施形態における、孤立指令点検出処理の詳細を示すフローチャートである。 本実施例で解析対象としたブレード加工プログラムの加工経路を示す(a)平面図、(b)正面図および(c)側面図である。 (a)実施例の解析結果および(b)比較例の解析結果を示す斜視図である。 (a)実施例の解析結果および(b)比較例の解析結果を示す正面図である。 単純な形状の特定立体物において、(a)加工経路によって形成される図形の内側に原点を設定して加工経路を分割した場合、および(b)前記図形の外側に原点を設定して加工経路を分割した場合の図である。 複雑な形状の特定立体物において、(a)加工経路によって形成される図形の内側に原点を設定しても、加工経路が複数箇所で切断される場合、および(b)平均座標を原点として設定した場合の図である。 加工プログラムの指令点列を構成する指令点およびその加工経路を示す図である。 不揃いの指令点が生じた加工プログラムの加工経路を示す図である。
以下、本発明に係る加工プログラム解析装置およびこれを備えた工作機械、ならびに加工プログラム解析プログラムおよび加工プログラム解析方法の第1実施形態について、図面を用いて説明する。
本第1実施形態の加工プログラム解析装置1は、工作機械10を数値制御するための加工プログラムを解析するためのものであり、コンピュータ数値制御(CNC:Computer Numerical Control)可能な数値制御装置によって構成されている。そして、加工プログラムに基づいて工作機械10を制御し、ワーク(加工対象物)を加工するようになっている。以下、各構成について詳細に説明する。
工作機械10は、旋盤、ボール盤、中ぐり盤、フライス盤、歯切り盤、研削盤等のように、金属、木材、石材、樹脂等のワークに対して、切断、穿孔、研削、研磨、圧延、鍛造、折り曲げ等の各種の加工を施すための機械である。本第1実施形態において、工作機械10は、加工プログラム解析装置1に備えられており、解析された加工プログラムに基づいて数値制御されるようになっている。
加工プログラム解析装置1は、図1に示すように、主として、データの入力や解析結果の表示を行うための表示入力手段2と、本第1実施形態の加工プログラム解析プログラム1aや各種データを記憶するとともに、演算処理手段4が各種処理を行う際のワーキングエリアとして機能する記憶手段3と、記憶手段3にインストールされた加工プログラム解析プログラム1aを実行することにより、各種の演算処理を実行する演算処理手段4とから構成されている。以下、各構成手段について詳細に説明する。
なお、本第1実施形態において、加工プログラム解析装置1は、数値制御装置によって構成されているが、この構成に限定されるものではない。例えば、パーソナルコンピュータ、タブレット端末またはスマートフォン等の一般的なコンピュータや、上述したCAD/CAM装置等の特殊なコンピュータに本発明に係る加工プログラム解析機能を実装し、加工プログラム解析装置1として構成してもよい。
表示入力手段2は、タッチパネル等で構成されており、入力機能と表示機能とを兼ね備えたものである。本第1実施形態において、表示入力手段2は、後述する加工対象物の種類等を受け付ける入力機能と、加工プログラムの解析結果等を表示する表示機能とを有している。なお、本第1実施形態では、表示機能および入力機能を兼ね備えた表示入力手段2を使用しているが、この構成に限定されるものではなく、表示機能のみを備えた液晶ディスプレイ等の表示手段、および入力機能のみを備えたキーボードやマウス等の入力手段をそれぞれ別個に有していてもよい。
記憶手段3は、ハードディスク、ROM(Read Only Memory)、RAM(Random Access Memory)、フラッシュメモリ等で構成されており、各種データを記憶するとともに、演算処理手段4が各種処理を行う際のワーキングエリアとして機能するものである。本第1実施形態において、記憶手段3は、図1に示すように、解析プログラム記憶部31と、加工プログラム記憶部32と、解析結果記憶部33とを有している。
解析プログラム記憶部31には、本第1実施形態の加工プログラム解析装置1を制御するための加工プログラム解析プログラム1aがインストールされている。そして、演算処理手段4が、当該加工プログラム解析プログラム1aを実行することにより、加工プログラム解析装置1としてのコンピュータを後述する各構成部として機能させるようになっている。
なお、加工プログラム解析プログラム1aの利用形態は、上記構成に限られるものではない。例えば、CD−ROMやUSBメモリ等のように、コンピュータで読み取り可能な非一時的な記録媒体に加工プログラム解析プログラム1aを記憶させておき、当該記録媒体から直接読み出して実行してもよい。また、外部サーバ等からクラウドコンピューティング方式やASP(Application Service Provider)方式等で利用してもよい。
加工プログラム記憶部32は、解析対象となる加工プログラムを記憶するものである。本第1実施形態において、加工プログラムは、各種の工作機械10を数値制御するためのものであり、CAD/CAM装置によって生成される。また、加工プログラムには、行番号に対応付けて、加工経路を微小線分に区分する各指令点の位置座標が指令点列として含まれている。
解析結果記憶部33は、加工プログラムの解析結果を記憶するものである。本第1実施形態において、解析結果記憶部33は、図2に示すように、データテーブル形式で構成されている。そして、加工プログラムの指令点列を構成する各指令点について、加工方向に沿ってシーケンシャルに振られた指令点番号と、X軸、Y軸およびZ軸の各座標値で表された位置座標と、後述する加工経路分割部43によって分割された単位加工経路の番号と、後述する孤立指令点検出部46によって検出された孤立指令点とが記憶されるようになっている。
また、本第1実施形態において、後述する特定立体物以外の立体物を加工するための加工プログラムを解析する場合、図2に示すように、解析結果記憶部33には、後述する物理量算出部44によって算出された物理量と、後述する物理量分類部45によって分類されたグループのグループ番号とが別途記憶される。なお、図2に示す例では、孤立指令点となる指令点にのみ「1」の値が付与されるようになっている。
つぎに、演算処理手段4は、CPU(Central Processing Unit)等によって構成されており、記憶手段3にインストールされた加工プログラム解析プログラム1aを実行することにより、図1に示すように、指令点取得部41と、対象物種類取得部42と、加工経路分割部43と、物理量算出部44と、物理量分類部45と、孤立指令点検出部46として機能するようになっている。以下、演算処理手段4の各構成部についてより詳細に説明する。
指令点取得部41は、加工プログラムから指令点を取得するものである。本第1実施形態において、指令点取得部41は、加工プログラム記憶部32から加工プログラムを読み出し、当該加工プログラムによって指令される加工経路を構成する各指令点の位置座標を取得して、解析結果記憶部33に順次記憶させるようになっている。
対象物種類取得部42は、加工対象物の種類を取得するものである。本第1実施形態において、対象物種類取得部42は、加工プログラムによって加工される加工対象物が、後述する特定立体物であるか、当該特定立体物以外の立体物であるかについての選択を表示入力手段2を介して受け付け、当該選択された種類を加工経路分割部43に提供するようになっている。
加工経路分割部43は、加工プログラムによって指令される加工経路を、複数の隣接する単位加工経路ごとに分割するものである。本第1実施形態において、加工経路分割部43は、加工対象物の種類に応じて、加工経路を所定の単位加工経路に分割する。そして、分割された各単位加工経路を構成する各指令点に対して、加工方向に沿ってシーケンシャルな単位加工経路番号を付し、解析結果記憶部33に記憶するようになっている。以下、具体的に説明する。
加工プログラムによって加工される加工対象物には、多種多様な形状がある。そこで、本第1実施形態では、ある基準点を中心として指令点が周上に分布する形状である特定立体物と、当該特定立体物以外の立体物との2種類に加工対象物を大別した。そして、その種類に応じて、異なる方法によって加工経路を単位加工経路に分割した。
なお、本発明において、「周上」とは、円周上に限定されるものではなく、任意の図形を囲む閉じた曲線または折れ線からなる周の上を含む概念である。このため、特定立体物としては、図3に示すような円柱、三角柱および四角柱の他、楕円柱や多角柱等のように、ある基準点を中心として指令点が周上に分布する形状を備えた全ての立体物が含まれる。一方、特定立体物以外の立体物としては、例えば図4に示すような金型のように、ある基準点を中心として指令点が周上に分布しない任意の形状を備えた全ての立体物が含まれる。
以下、加工プログラムが、特定立体物を加工するための加工プログラムである場合と、特定立体物以外の立体物を加工するための加工プログラムである場合とに分けて、加工経路分割部43による加工経路の分割方法について説明する。
対象物種類取得部42によって取得された種類が、特定立体物であった場合、加工経路分割部43は、図5に示すように、まず、加工経路を構成する全ての指令点の位置座標を平均した平均座標を原点として算出する。つぎに、加工経路分割部43は、算出した原点(平均座標)に関して全ての指令点の位置座標を極座標に変換する。これにより、各指令点の位置座標が、動径座標r(原点から指令点までの距離)と、偏角座標φ(任意の始線に対して、原点と指令点とを結ぶ直線がなす角度)とによって表される。
そして、加工経路分割部43は、一つ目の指令点から偏角φが360度(2π)回転するたびに、すなわち、1周分の指令点列ごとに単位加工経路として分割する。これにより、例えば、特定立体物が円柱の場合、図6に示すように、円柱の外周面に沿って螺旋状に連続する加工経路が、1周分の指令点列ごとに分割され、その指令点列のそれぞれが単位加工経路としてグルーピングされることとなる。
一方、対象物種類取得部42によって取得された種類が、特定立体物以外の立体物であった場合、当該立体物の形状が複雑であるため、単純に加工経路を分割することができない。そこで、本第1実施形態では、本発明者らによって考案された特願2016−248154号における、物理量算出部44および物理量分類部45と同等の機能部を使用し、立体物の加工面のうち、同一の加工面に属する指令点列を抽出した後、加工経路を分割するようになっている。
具体的には、物理量算出部44は、各指令点について物理量を算出するものである。本第1実施形態において、物理量算出部44は、指令点取得部41によって取得された各指令点の位置座標を解析結果記憶部33から読み出すとともに、加工プログラムの解析に使用する1または2以上の物理量に対応する定義式を記憶手段3から読み出す。そして、物理量算出部44は、読み出した定義式に基づき、1または複数の指令点の位置座標を用いて、各指令点についての物理量を算出し、解析結果記憶部33に記憶するようになっている。
なお、本第1実施形態において、物理量とは、物理系の性質を表現し、その測定方法や、大きさの単位が規定された全ての量を含む概念である。また、本第1実施形態に係る定義式としては、加工プログラムの指令点列を構成する各指令点について、1または複数の指令点の位置座標を用いて算出される物理量が定義されている。
具体的には、下記式(1)で定義される移動量、下記式(2)で定義される角度、または下記式(3)で定義される曲率半径が使用可能である。そして、当該物理量を算出するための定義式として、下記式(1)〜(3)等の定義式が記憶手段3に予め登録されている。
=Pi+1−Pi−1 ・・・式(1)
ただし、各符号は以下を表す。
i:指令点番号
:第i番目の指令点の位置座標
:第i番目の指令点の移動量
θ:第i番目の指令点の角度
ρ:第i番目の指令点の曲率半径
:P、Pi+1間の移動を示す曲線を近似したn次多項式の1次の項の係数
:P、Pi+1間の移動を示す曲線を近似したn次多項式の2次の項の係数
物理量分類部45は、各指令点の物理量に対してクラスター分析を行うことにより、物理量を複数のグループに分類するものである。本発明において、クラスター分析とは、いわゆる非階層的クラスター分析に相当するものである。具体的には、分類するグループ数を予め定めておき、互いに性質が類似するものを同一のグループに分類し、そうでないものを異なるグループに分類することで、予め定めたグループ数にグルーピングする手法である。
よって、本第1実施形態において、物理量分類部45は、物理量算出部44によって算出された各指令点の物理量を解析結果記憶部33から読み出し、任意のグループ数となるように、各指令点の物理量をクラスター分析し分類する。そして、物理量分類部45は、分類結果として得られたグループ番号を各指令点の物理量に対応付けて解析結果記憶部33に記憶する。これにより、同一の加工面に属する指令点列については、同一のグループ番号が付与される。
なお、クラスター分析に使用するアルゴリズムとしては、計算時間と分析精度の観点から、K−means法(K平均法)が好ましいが、物理量をグルーピング可能な手法であれば、特に限定されるものではなく、他のクラスタリングアルゴリズムを使用してもよい。また、本第1実施形態において、各指令点の物理量をクラスター分析する際のグループ数(クラスタ数)は、解析に使用する物理量や、加工対象物の形状等によって最適値が異なるため、ユーザが所望のグループ数を設定しうるようになっている。
上述した物理量算出部44および物理量分類部45によって、同一の加工面に属する指令点列を抽出した後、加工経路分割部43は、同一の加工面上に分布する加工経路を複数の隣接する単位加工経路ごとに分割する。ただし、同一の加工面を加工する軸の移動方向としては、図7に示すように、一方向のみに移動する場合と、図8に示すように、双方向に移動する場合の2パターンがある。このため、いずれのパターンであっても、加工経路を適切に単位加工経路ごとに分割しうる方法を考案した。
具体的には、加工経路分割部43は、まず、物理量分類部45による分類結果が記憶された解析結果記憶部33を参照し、同一のグループ番号が付与された指令点列を抽出する。そして、加工経路分割部43は、抽出した指令点列の加工順序における前後の指令点間の距離が任意の閾値以上である指令点間で加工経路を分割する。これにより、図7に示すように、一方向のみに移動する加工経路においては、移動距離が急激に変化する箇所で加工経路が分断される。
また、加工経路分割部43は、抽出した指令点列の加工順序における前後の指令点間の方向がピックフィード方向へ任意の閾値以上に変化した指令点間で加工経路を分割する。具体的には、加工経路分割部43は、各指令点の位置座標を用いて各指令点間の加工ベクトルを算出し、当該加工ベクトルが加工経路に垂直なピックフィード方向へ任意の閾値以上に変化する箇所を検出する。これにより、図8に示すように、双方向に移動する加工経路においては、移動方向が急激に変化する箇所で加工経路が分断される。
さらに、加工経路分割部43は、抽出した指令点列の加工順序における前後の指令点間の角度が任意の閾値以上に変化した指令点間で加工経路を分割する。具体的には、加工経路分割部43は、図9に示すように、i−1番目の指令点Pi−1とi番目の指令点Pとを結ぶ加工経路に対して、i番目の指令点Pとi+1番目の指令点Pi+1とを結ぶ加工経路のなす角度を上記式(2)を用いて算出し、当該角度が任意の閾値以上となる箇所を検出する。これにより、移動方向の変化が小さく、次の指令点までの移動距離が長いことによって折り返されるような移動経路についても分断される。
以上のように、加工経路が単位加工経路ごとに分断されると、加工経路分割部43は、加工順序に沿って各単位加工経路にシーケンシャルな単位加工経路番号を付与する。これにより、解析結果記憶部33には、図2に示すように、同一の単位加工経路に属する指令点のそれぞれについて、同一の単位加工経路番号が記憶される。
孤立指令点検出部46は、隣接する単位加工経路のそれぞれを構成する各指令点の位置関係に基づいて、単位加工経路同士で隣り合う指令点が抜けている指令点を孤立指令点として検出するものである。具体的には、孤立指令点検出部46は、まず、解析結果記憶部33に記憶されている単位加工経路番号を参照し、隣接する単位加工経路である第1単位加工経路および第2単位加工経路を抽出する。
つぎに、孤立指令点検出部46は、図10に示すように、互いに隣接する第1単位加工経路および第2単位加工経路において、第1単位加工経路を構成する全ての指令点について、第2単位加工経路を構成する各指令点との指令点間距離を算出する。そして、当該指令点間距離が最短である指令点を隣接指令点として特定する。図10に示す例では、第1単位加工経路の指令点P11については、第2単位加工経路の指令点P21が隣接指令点となり、第1単位加工経路の指令点P12については、第2単位加工経路の指令点P22が隣接指令点となり、第1単位加工経路の指令点P13については、第2単位加工経路の指令点P24が隣接指令点となる。
以上のように、第1単位加工経路を構成する全ての指令点について隣接指令点を特定した後、孤立指令点検出部46は、第2単位加工経路を構成する各指令点のうち、第1単位加工経路を構成するいずれの指令点からも隣接指令点として特定されなかった指令点があれば、当該指令点が単位加工経路同士で隣り合う指令点が抜けている指令点であるため、孤立指令点として検出する。図10に示す例では、第2単位加工経路の指令点P23が、第1単位加工経路を構成するいずれの指令点からも隣接指令点として特定されないため、孤立指令点として検出される。そして、検出された指令点に対しては、孤立指令点である旨が解析結果記憶部33に記憶される。
以上のように、全ての単位加工経路に属する全ての指令点について、隣接指令点を特定することにより、解析対象の加工プログラム内に存在する孤立指令点がほぼ検出される。ただし、本第1実施形態において、孤立指令点検出部46は、単位加工経路のそれぞれについて、加工方向に沿った順方向に孤立指令点を順次検出している。具体的には、最初に単位加工経路番号が1番と2番の単位加工経路のそれぞれを第1単位加工経路および第2単位加工経路として、次に単位加工経路番号が2番と3番の単位加工経路のそれぞれを第1単位加工経路および第2単位加工経路とし、以下、同様である。
しかしながら、上記のように、一方向においてのみ孤立指令点を探索すると、図11(a)に示すように、当該方向の前方側の単位加工経路において指令点が抜けている場合、後方側の単位加工経路において孤立指令点が検出されるものの、後方側の単位加工経路において指令点が抜けている場合、前方側の指令点は孤立指令点として検出されない。
そこで、本第1実施形態において、孤立指令点検出部46は、単位加工経路のそれぞれについて、加工方向に沿った順方向に孤立指令点を順次検出するとともに、当該順方向とは逆方向にも孤立指令点を順次検出するようになっている。例えば、図11(b)に示す例では、最初に単位加工経路番号が5番と4番の単位加工経路のそれぞれを第1単位加工経路および第2単位加工経路とし、次に単位加工経路番号が4番と3番の単位加工経路のそれぞれを第1単位加工経路および第2単位加工経路とし、以下、同様である。これにより、順方向における探索だけでは検出されない孤立指令点が漏れなく検出される。なお、図11において、実線の矢印は、基端部の指令点の隣接指令点を指し示している。
つぎに、本第1実施形態の加工プログラム解析装置1およびこれを備えた工作機械10、ならびに加工プログラム解析プログラム1aおよび加工プログラム解析方法の作用について、図12から図14を参照しつつ説明する。
本第1実施形態の加工プログラム解析装置1によって加工プログラムを解析する場合、まず、指令点取得部41が、加工プログラム記憶部32内の解析対象となる加工プログラムから指令点列を構成する指令点を取得する(ステップS1)。これにより、図2に示すように、各指令点の位置座標が解析結果記憶部33に記憶される。
つぎに、対象物種類取得部42が、表示入力手段2を介したオペレータの選択操作に応じて、加工プログラムによる加工対象物の種類を取得すると(ステップS2)、当該種類に応じて、加工経路分割部43が複数の隣接する単位加工経路ごとに加工経路を分割する(ステップS3:加工経路分割ステップ)。以下、本ステップS3に係る加工経路分割処理について、図13を参照しつつ説明する。
加工経路分割ステップでは、図13に示すように、対象物種類取得部42によって取得された加工対象物の種類が特定立体物であった場合(ステップS11:YES)、加工経路分割部43は、まず、加工経路を構成する全ての指令点の位置座標を平均した平均座標を原点として算出する(ステップS12)。
つぎに、加工経路分割部43は、算出した原点(平均座標)に関して全ての指令点の位置座標を極座標に変換する(ステップS13)。これにより、原点を中心として周上に分布する各指令点について、原点周りの偏角が算出される。そして、加工経路分割部43は、1周分の指令点列ごとに単位加工経路として分割する(ステップS14)。これにより、特定立体物の外周面に沿う加工経路が、1周分の指令点列ごとに分割され、その指令点列のそれぞれが単位加工経路としてグルーピングされる。なお、加工経路が単位加工経路ごとに分割されると、図12の処理に戻る。
一方、対象物種類取得部42によって取得された加工対象物の種類が特定立体物以外の立体物であった場合(ステップS11:NO)、まず、物理量算出部44が、各指令点について任意の物理量を算出する(ステップS15)。これにより、図2に示すように、各指令点について1つの物理量または2以上の物理量群が、解析結果記憶部33に記憶される。
つぎに、物理量分類部45が、ステップS15で算出された物理量(群)に対してクラスター分析を行うことにより、物理量(群)を複数のグループに分類する(ステップS16)。これにより、図2に示すように、物理量(群)が類似する指令点には同一のグループ番号が付与され、物理量が類似しない指令点には異なるグループ番号が付与される。このため、同一のグループ番号に分類された指令点列は、同一の加工面に属する指令点列であることが識別される。
つづいて、加工経路分割部43は、物理量分類部45による分類結果に基づいて、同一の加工面に属する指令点列を抽出する(ステップS17)。これにより、加工経路全体のうち、単位加工経路ごとに簡単に分割しうる加工経路が部分的に抽出される。そして、加工経路分割部43は、抽出した指令点列について、前後の指令点間の距離が、任意の閾値以上である指令点間で加工経路を分割する(ステップS18)。これにより、特定立体物以外の立体物における同一の加工面上で一方向のみに移動する加工経路については、移動距離が急激に変化する箇所で加工経路が分断されるため、適切に単位加工経路ごとに分割される。
また、加工経路分割部43は、ステップS17で抽出した指令点列について、前後の指令点間の方向が、ピックフィード方向へ任意の閾値以上に変化した指令点間で加工経路を分割する(ステップS19)。これにより、特定立体物以外の立体物における同一の加工面上で双方向に移動する加工経路についても、移動方向が急激に変化する箇所で加工経路が分断されるため、適切に単位加工経路ごとに分割される。
さらに、加工経路分割部43は、ステップS17で抽出した指令点列について、前後の指令点間の角度が、任意の閾値以上に変化した指令点間で加工経路を分割する(ステップS20)。これにより、同一の加工面における移動方向の変化が小さく、次の指令点までの移動距離が長いことによって折り返されるような加工経路についても、適切に単位加工経路ごとに分割される。
以上のように、ステップS16で特定された全ての加工面における加工経路が、単位加工経路ごとに分割されると、図12の処理に戻る。つづいて、孤立指令点検出部46が、隣接する単位加工経路のそれぞれを構成する各指令点の位置関係に基づいて、孤立指令点を検出する(ステップS4:孤立指令点検出ステップ)。以下、本ステップS4に係る孤立指令点検出処理について、図14を参照しつつ説明する。
孤立指令点検出ステップでは、図14に示すように、孤立指令点検出部46が、単位加工経路の順番(単位加工経路番号)を示すパラメータiを1に初期化した後(ステップS21)、i番目の単位加工経路を構成する全指令点について、i+1番目の単位加工経路の各指令点との指令点間距離が最短である指令点を隣接指令点として特定する(ステップS22)。これにより、任意の単位加工経路を構成する全ての指令点について、隣接する単位加工経路において隣り合う指令点が特定される。
つぎに、孤立指令点検出部46は、i+1番目の単位加工経路を構成する各指令点のうち、隣接指令点として特定されなかった指令点を孤立指令点として検出する(ステップS23)。これにより、隣接する単位加工経路において、隣り合う指令点が抜けている指令点が孤立指令点として検出される。
その後、孤立指令点検出部46は、上記パラメータiをインクリメントし、加工順序が次の単位加工経路を選択する(ステップS24)。そして、上記パラメータiが単位加工経路の総数(M)に一致しない限り(ステップS25:NO)、ステップS22からステップS24までの処理を繰り返し、全ての単位加工経路における孤立指令点を検出する。これにより、加工方向に沿った順方向に、孤立指令点が簡便かつ正確に順次検出される。
一方、上記パラメータiが単位加工経路の総数(M)に到達すると(ステップS25:YES)、孤立指令点検出部46は、i番目の単位加工経路を構成する全指令点について、i−1番目の単位加工経路の各指令点との指令点間距離が最短である指令点を隣接指令点として特定する(ステップS26)。これにより、加工方向に沿った順方向とは逆方向に検出処理が実行される。
つぎに、孤立指令点検出部46は、i−1番目の単位加工経路を構成する各指令点のうち、隣接指令点として特定されなかった指令点を孤立指令点として検出する(ステップS27)。これにより、逆方向に隣接する単位加工経路において、隣り合う指令点が抜けている指令点が孤立指令点として検出される。
その後、孤立指令点検出部46は、上記パラメータiをデクリメントし、加工順序が一つ前の単位加工経路を選択する(ステップS28)。そして、上記パラメータiが初期値(1)に一致しない限り(ステップS29:NO)、ステップS26からステップS28までの処理を繰り返し、全ての単位加工経路における孤立指令点を検出する。これにより、加工方向に沿った順方向とは逆方向にも、孤立指令点が簡便かつ正確に順次検出される。このため、順方向の探索だけでは検出されない孤立指令点も漏れなく検出され、解析精度が向上する。
一方、上記パラメータiが初期値(1)に到達すると(ステップS29:YES)、図12における孤立指令点検出ステップ(ステップS4)が完了し、加工プログラムの解析処理が終了する。以上の解析処理により、加工面における傷の発生箇所となる孤立指令点が高精度に特定される。
なお、本第1実施形態において、N個の指令点からなる単位加工経路をM本有する加工経路を解析する場合、一つの単位加工経路を構成する全指令点(N)について、隣接する単位加工経路を構成する全指令点(N)との指令点間距離を算出し、当該計算を単位加工経路の総数より1少ない数(M−1)だけ繰り返すため、総演算回数はN×N×(M−1)回であることが簡単に算出される。このため、解析時間も予測可能であり、解析作業を効率的に行うことが可能になる。
以上のような本第1実施形態によれば、以下のような効果を奏する。
1.解析時間が予測可能でありながら、加工面における傷の発生箇所を高精度に特定することができる。
2.加工面における傷の発生箇所となる孤立指令点を簡便かつ正確に検出することができる。
3.特定立体物の外周面に沿う加工経路を適切に単位加工経路ごとに分割することができる。
4.特定立体物以外の立体物における同一の加工面上で一方向のみに移動する加工経路についても、適切に単位加工経路ごとに分割することができる。
5.特定立体物以外の立体物における同一の加工面上で双方向に移動する加工経路についても、適切に単位加工経路ごとに分割することができる。
6.特定立体物以外の立体物における同一の加工面上での移動方向の変化が小さく、次の指令点までの移動距離が長いことによって折り返されるような加工経路についても、適切に単位加工経路ごとに分割することができる。
7.加工方向に沿った順方向および逆方向の双方向で孤立指令点を探索することで、孤立指令点を漏れなく検出して解析の精度をさらに向上することができる。
つぎに、本発明に係る加工プログラム解析装置1およびこれを備えた工作機械10、ならびに加工プログラム解析プログラム1aおよび加工プログラム解析方法の第2実施形態について説明する。なお、本第2実施形態における構成のうち、上述した第1実施形態と同一もしくは相当する構成については同一の符号を付し、再度の説明を省略する。
本第2実施形態の特徴は、孤立指令点検出部46が、上述した第1実施形態とは異なる方法で孤立指令点を検出する点にある。すなわち、孤立指令点検出部46は、隣接する単位加工経路の一方における2つの指令点間の距離と、他方の単位加工経路において対応する2つの指令点間の距離とを比較し、当該距離の差が大きい箇所を見つけて孤立指令点を検出するようになっている。以下、本第2実施形態における孤立指令点検出部46の処理について、具体的に説明する。
本第2実施形態において、孤立指令点検出部46は、まず、図15(a)に示すように、隣接する単位加工経路である第1単位加工経路および第2単位加工経路において、第1単位加工経路を構成するいずれかの指令点である第1始点から当該第1始点よりも後方の指令点である第1終点までの指令点間距離を算出する。
つぎに、孤立指令点検出部46は、図15(a)に示すように、第2単位加工経路を構成するいずれかの指令点であって第1始点と隣り合う第2始点から、当該第2始点よりも後方の指令点である第2終点までの指令点間距離を算出する。そして、孤立指令点検出部46は、第1単位加工経路における指令点間距離と、第2単位加工経路における指令点間距離との差が任意の閾値を超える場合、指令点間距離が短い方の終点となっている指令点を孤立指令点として検出するようになっている。
図15(a)に示す例では、第1単位加工経路上の第1始点P11から第1終点P12までの指令点間距離LA12と、第1始点P11と隣り合う第2単位加工経路上の第2始点P21から第2終点P22までの指令点間距離LB12との差が、任意の閾値Δ以下である(|LA12−LB12|≦Δ)。このため、第1終点P12と第2終点P22とは、隣接する単位加工経路同士で揃っており、隣り合う指令点は抜けていない。
一方、図15(b)に示す例では、第1単位加工経路上の第1始点P12から第1終点P13までの指令点間距離LA23と、第2単位加工経路上の第2始点P22から第2終点P23までの指令点間距離LB23との差が、任意の閾値Δを超えている(|LA23−LB23|>Δ)。この場合、比較対象となっている指令点間距離のうち、短い方の指令点間距離LB23の終点(第2終点P23)では、隣接する単位加工経路上に隣り合う指令点がない。このため、当該終点が孤立指令点として検出される。
なお、図15(b)に示す例において、比較対象となっている指令点間距離のうち、長い方の指令点間距離LA23の終点(第1終点P13)は、別途、孤立指令点であるか否かを判別する必要がある。このため、孤立指令点検出部46は、第2単位加工経路で孤立指令点として検出された第2終点P23をスキップし、その次の指令点P24を新たな第2終点に設定する。そして、第1単位加工経路上の第1始点P12から第1終点P13までの指令点間距離LA23と、第2単位加工経路上の第2始点P22から第2終点P24までの指令点間距離LB24との差が、任意の閾値Δを超えているか否か判別する。
当該判別の結果、図16(a)に示すように、指令点間距離の差が任意の閾値以下の場合(|LA23−LB24|≦Δ)、第1終点P13と第2終点P24とは、隣接する単位加工経路同士で揃っており、隣り合う指令点は抜けていない。このため、孤立指令点検出部46は、孤立指令点を検出しない。
一方、上記の判別の結果、図16(b)に示すように、指令点間距離の差が任意の閾値を超える場合(|LA23−LB24|>Δ)、比較対象となっている指令点間距離のうち、短い方の指令点間距離LA23の終点(第1終点P13)では、隣接する単位加工経路上に隣り合う指令点がない。このため、当該終点が孤立指令点として検出されるようになっている。
つぎに、本第2実施形態の加工プログラム解析装置1およびこれを備えた工作機械10、ならびに加工プログラム解析プログラム1aおよび加工プログラム解析方法の作用のうち、図12における孤立指令点検出ステップ(ステップS4)の詳細について、図17を参照しつつ説明する。
本第2実施形態では、まず、孤立指令点検出部46が、図17に示すように、単位加工経路の順番(単位加工経路番号)を示すパラメータiを1に初期化する(ステップS31)。つぎに、孤立指令点検出部46は、i番目の単位加工経路における始点となる指令点番号を示すパラメータjと、i+1番目の単位加工経路における始点となる指令点番号を示すパラメータkのそれぞれを1に初期化する(ステップS32)。これにより、各単位加工経路を構成する指令点のうち、加工順序における最初の指令点から順次解析される。なお、本処理において、隣接する単位加工経路同士における第1番目の各指令点は隣り合っていることが前提となる。
さらに、孤立指令点検出部46は、i番目の単位加工経路における終点の始点からの指令点数を示すパラメータmと、i+1番目の単位加工経路にける終点の始点からの指令点数を示すパラメータnのそれぞれを1に初期化する(ステップS33)。そして、孤立指令点検出部46は、i番目の単位加工経路における終点の指令点番号(j+m)が、i番目の単位加工経路の指令点の総数Aを超えているか否かを判定するとともに、i+1番目の単位加工経路における終点の指令点番号(k+n)が、i+1番目の単位加工経路の指令点の総数Bを超えているか否かを判定する(ステップS34)。
当該判定の結果、i番目の単位加工経路における終点の指令点番号(j+m)が、i番目の単位加工経路の指令点の総数Aを超えている場合、またはi+1番目の単位加工経路における終点の指令点番号(k+n)が、i+1番目の単位加工経路の指令点の総数Bを超えている場合(ステップS34:YES)、後述するステップS44へ進む。
一方、ステップS34における判定の結果、i番目の単位加工経路における終点の指令点番号(j+m)が、i番目の単位加工経路の指令点の総数A以下であり、かつ、i+1番目の単位加工経路における終点の指令点番号(k+n)が、i+1番目の単位加工経路の指令点の総数B以下である場合(ステップS34:NO)、孤立指令点検出部46は、i番目の単位加工経路における第1始点Pから第1終点Pj+mまでの指令点間距離Lと、i+1番目の単位加工経路における第2始点Pから第2終点Pk+nまでの距離Lとを算出する(ステップS35)。そして、孤立指令点検出部46は、各指令点間距離の差(|L−L|)が、任意の閾値以下であるか否かを判定する(ステップS36)。
当該判定の結果、上記指令点間距離の差が任意の閾値以内である場合(ステップS36:YES)、i番目の単位加工経路とi+1番目の単位加工経路とにおいて、隣り合う指令点が存在しているといえる。このため、孤立指令点検出部46は、i番目の単位加工経路における第1始点P、およびi+1番目の単位加工経路における第2始点Pのそれぞれを変更する(ステップS37)。
具体的には、孤立指令点検出部46は、i番目の単位加工経路における第1終点Pj+mの指令点番号(j+m)をパラメータjに代入することで、それまでの第1終点Pj+mをi番目の単位加工経路における新たな第1始点Pとする。同様に、孤立指令点検出部46は、i+1番目の単位加工経路における第2終点Pk+nの指令点番号(k+n)をパラメータkに代入することで、それまでの第2終点Pk+nをi+1番目の単位加工経路における新たな第2始点Pとする。これにより、隣接する単位加工経路同士で終点となる指令点が揃っている場合、各指令点が新たな始点として設定される。なお、新たな始点が設定された後は、ステップS33からの処理を繰り返す。
一方、ステップS36における判定の結果、上記指令点間距離の差が任意の閾値を超える場合(ステップS36:NO)、孤立指令点検出部46は、i番目の単位加工経路における指令点間距離Lと、i+1番目の単位加工経路における距離Lのうち、どちらが大きいかを判定する(ステップS38)。
当該判定の結果、i番目の単位加工経路における指令点間距離Lの方が小さい場合(ステップS38:YES)、i番目の単位加工経路における第1終点Pj+mに関しては、i+1番目の単位加工経路において、隣り合う指令点が抜けているといえる。このため、孤立指令点検出部46は、当該第1終点Pj+mを孤立指令点として検出する(ステップS39)。そして、パラメータmをインクリメントすることで、i番目の単位加工経路におけ第1終点Pj+mを1つ後方の指令点に変更し(ステップS40)、ステップS43へ進む。
同様に、ステップS38における判定の結果、i+1番目の単位加工経路における距離Lの方が小さい場合(ステップS38:NO)、i+1番目の単位加工経路における第2終点Pk+nに関しては、i番目の単位加工経路において、隣り合う指令点が抜けているといえる。このため、孤立指令点検出部46は、当該第2終点Pk+nを孤立指令点として検出する(ステップS41)。そして、パラメータnをインクリメントすることで、i+1番目の単位加工経路におけ第2終点Pk+nを1つ後方の指令点に変更し(ステップS42)、ステップS43へ進む。
以上のように、孤立指令点が検出された単位加工経路においては、始点を変更することなく孤立指令点をスキップし、後方の指令点が順次新たな終点として設定される。
いずれかの単位加工経路における終点が変更されると(ステップS40またはステップS42)、孤立指令点検出部46は、上記ステップS34と同様に、当該変更後の終点の指令点番号と、各単位加工経路における総数とを比較する(ステップS43)。そして、i番目の単位加工経路における変更後の終点の指令点番号(j+m)が、i番目の単位加工経路の指令点の総数A以下であり、かつ、i+1番目の単位加工経路における変更後の終点の指令点番号(k+n)が、i+1番目の単位加工経路の指令点の総数B以下である限り(ステップS43:NO)、ステップS35へ戻り、それ以降の処理を繰り返す。
一方、ステップS43における判定の結果、i番目の単位加工経路における変更後の終点の指令点番号(j+m)が、i番目の単位加工経路の指令点の総数Aを超えている場合、またはi+1番目の単位加工経路における変更後の終点の指令点番号(k+n)が、i+1番目の単位加工経路の指令点の総数Bを超えている場合(ステップS43:YES)、孤立指令点検出部46は、パラメータiをインクリメントし、次の単位加工経路を選択する(ステップS44)。
最後に、孤立指令点検出部46は、インクリメントしたパラメータiが単位加工経路の総数(M)に到達したか否かを判定する(ステップS45)。そして、上記パラメータiが単位加工経路の総数(M)に到達しない限り(ステップS45:NO)、上述したステップS32に戻り、それ以降の処理を繰り返す。これにより、隣接する単位加工経路のそれぞれを構成する各指令点の位置関係に基づいて、単位加工経路同士で隣り合う指令点が抜けている指令点が順次、孤立指令点として検出される。
以上のような本第2実施形態の加工プログラム解析装置1およびこれを備えた工作機械10、ならびに加工プログラム解析プログラム1aおよび加工プログラム解析方法によれば、上述した第1実施形態と同様の作用効果を奏する。
また、本第2実施形態によれば、N個の指令点からなる単位加工経路をM本有する加工経路を解析する場合、隣接する2本の単位加工経路のそれぞれを構成する全指令点(N)間に存在するN−1個の指令点間距離を算出し、当該計算を単位加工経路の総数より1少ない数(M−1)だけ繰り返すため、総演算回数は2×(N−1)×(M−1)回となる。このため、本第2実施形態による演算回数は、上述した第1実施形態による演算回数N×N×(M−1)よりも低減するため、解析時間を短縮することができるという効果を奏する。
つぎに、本発明に係る加工プログラム解析装置1およびこれを備えた工作機械10、ならびに加工プログラム解析プログラム1aおよび加工プログラム解析方法の具体的な実施例について説明する。
本実施例では、本発明に係る加工プログラム解析装置1を用いて、実際の加工プログラムを解析し、加工面で傷が発生する箇所(孤立指令点)を検出した。また、比較例として、本発明者らによって考案された特願2016−248154号に係る加工プログラム解析装置1を用いて同様の解析を行った。その結果を図19および図20に示す。
なお、本実施例では、解析対象の加工プログラムとして、工具刃先を螺旋状に移動させることにより、図18に示すようなブレード状の加工対象物を削り出すブレード加工プログラムを使用した。また、図19において、孤立指令点はグレーの点で表示されており、図20において、孤立指令点は三角の印で表示されている。
図19に示すように、本実施例によれば、比較例と比較して、指令点間距離が短く、指令点の密集度が高い箇所においても、孤立指令点が高精度に検出されていた。なお、指令点の密集度がどの程度高い箇所で孤立指令点を検出するのかは、パラメータによって調整することができる。
また、図20に示すように、比較例では、孤立指令点が多数検出されたものの、実際には傷にならない箇所が多かった。これに対し、本実施例では、孤立指令点がピンポイントで検出されており、高い確度で加工面における傷の発生箇所を推定できていた。
以上の本実施例によれば、比較例(特願2016−248154号に係る解析処理)と比較して、指令点の密集度が高い箇所でも孤立指令点を高精度に検出できることが示されるとともに、孤立指令点を高確度で推定できることが示された。
なお、本発明に係る加工プログラム解析装置1およびこれを備えた工作機械10、ならびに加工プログラム解析プログラム1aおよび加工プログラム解析方法は、上述した各実施形態や実施例に限定されるものではなく、適宜変更することができる。
例えば、上述した本第1実施形態では、加工対象物が特定立体物以外の立体物である場合にのみ、クラスター分析によって同一の加工面に属する指令点列を抽出していたが、この構成に限定されるものでない。すなわち、時間に余裕がある場合には、特定立体物についても、クラスター分析によって同一の加工面に属する指令点列を抽出し、単位加工経路ごとに分割してもよい。これにより、特定立体物を構成する各加工面に分布する指令点の密集度に応じて、高精細な解析作業を行うことができる。
また、上述した第1実施形態では、加工対象物が特定立体物であった場合、加工経路分割部43が、加工経路を構成する全ての指令点の位置座標を平均した平均座標を原点として算出しているが、この構成に限定されるものではない。すなわち、原点としては、平均座標を使用することが最適と考えられるが、平均座標以外の位置座標を原点としてもよい。
具体的には、図21(a)に示すように、特定立体物が単純な形状である場合には、加工経路によって形成される図形の内側に原点を設定すればよい。これにより、平均座標でない位置に原点を設定しても、加工経路が1周分の指令点列ごとに単位加工経路として分割される。なお、この場合、原点は上記図形の内側であれば、上記図形の中心である必要はない。
一方、図21(b)に示すように、加工経路によって形成される図形の外側に原点を設定してもよい。ただし、この場合、加工経路が周上の2箇所で分割される。また、上記図形の内側に原点を設定しても、特定立体物の形状によっては、図22(a)に示すように、周上の複数箇所で加工経路が分割される場合がある。
以上のように、加工経路が周上のx箇所で切断される場合、切断された加工経路のそれぞれは、(x−1)個おきに隣接した状態となる。そこで、このような場合には、同一形状の加工経路群のそれぞれをグルーピングすることが好ましい。これにより、各グループにおける加工経路が、互いに隣接する単位加工経路として分割されることとなる。
一方、特定立体物の形状が複雑であっても、加工経路を構成する全ての指令点の位置座標を平均した平均座標は、図22(b)に示すように、上記図形のほぼ中心位置近傍となることが多い。このため、平均座標を原点として設定した場合、加工経路が1周分の指令点列ごとに分割される可能性が高くなる。よって、上記のようなグルーピングを行う必要がなく、加工経路を隣接する単位加工経路ごとに簡単に分割することができる。
1 加工プログラム解析装置
1a 加工プログラム解析プログラム
2 表示入力手段
3 記憶手段
4 演算処理手段
10 工作機械
31 解析プログラム記憶部
32 加工プログラム記憶部
33 解析結果記憶部
41 指令点取得部
42 対象物種類取得部
43 加工経路分割部
44 物理量算出部
45 物理量分類部
46 孤立指令点検出部

Claims (10)

  1. 加工プログラムによって指令される加工経路を、複数の隣接する単位加工経路ごとに分割する加工経路分割部と、
    前記隣接する単位加工経路のそれぞれを構成する各指令点の位置関係に基づいて、前記単位加工経路同士で隣り合う指令点が抜けている指令点を孤立指令点として検出する孤立指令点検出部と、
    を有する、加工プログラム解析装置。
  2. 前記孤立指令点検出部は、前記隣接する単位加工経路である第1単位加工経路および第2単位加工経路において、前記第1単位加工経路を構成する全ての指令点について、前記第2単位加工経路を構成する各指令点との距離である指令点間距離を算出し、前記指令点間距離が最短である指令点を隣接指令点として特定するとともに、前記第2単位加工経路を構成する各指令点のうち、前記第1単位加工経路を構成するいずれの指令点からも前記隣接指令点として特定されなかった指令点を前記孤立指令点として検出する、請求項1に記載の加工プログラム解析装置。
  3. 前記孤立指令点検出部は、前記隣接する単位加工経路である第1単位加工経路および第2単位加工経路において、前記第1単位加工経路を構成するいずれかの指令点である第1始点から当該第1始点よりも後方の指令点である第1終点までの指令点間距離と、前記第2単位加工経路を構成するいずれかの指令点であって前記第1始点と隣り合う第2始点から、当該第2始点よりも後方の指令点である第2終点までの指令点間距離とを算出し、各指令点間距離の差が任意の閾値を超える場合、前記指令点間距離が短い方の終点となっている指令点を前記孤立指令点として検出する、請求項1に記載の加工プログラム解析装置。
  4. 前記加工プログラムが、ある基準点を中心として前記指令点が周上に分布する形状である特定立体物を加工するための加工プログラムである場合、
    前記加工経路分割部は、前記加工経路を構成する全ての指令点の位置座標を平均した平均座標を原点として算出するとともに、前記原点に関して前記全ての指令点の位置座標を極座標に変換し、1周分の指令点列ごとに前記単位加工経路として分割する、請求項1から請求項3のいずれかに記載の加工プログラム解析装置。
  5. 前記加工プログラムが、ある基準点を中心として前記指令点が周上に分布する形状である特定立体物以外の立体物を加工するための加工プログラムである場合、
    前記加工プログラムの指令点列を構成する各指令点について、1または複数の指令点の位置座標を用いて所定の物理量を算出する物理量算出部と、
    各指令点の前記物理量に対してクラスター分析を行うことにより、前記物理量を複数のグループに分類する物理量分類部と、をさらに有し、
    前記加工経路分割部は、前記物理量分類部による分類結果に基づいて、同一の加工面に属する指令点列を抽出するとともに、当該指令点列の加工順序における前後の指令点間の距離が任意の閾値以上である指令点間で前記加工経路を分割する、請求項1から請求項4のいずれかに記載の加工プログラム解析装置。
  6. 前記加工プログラムが、ある基準点を中心として前記指令点が周上に分布する形状である特定立体物以外の立体物を加工するための加工プログラムである場合、
    前記加工プログラムの指令点列を構成する各指令点について、1または複数の指令点の位置座標を用いて所定の物理量を算出する物理量算出部と、
    各指令点の前記物理量に対してクラスター分析を行うことにより、前記物理量を複数のグループに分類する物理量分類部と、をさらに有し、
    前記加工経路分割部は、前記物理量分類部による分類結果に基づいて、同一の加工面に属する指令点列を抽出するとともに、当該指令点列の加工順序における前後の指令点間の方向がピックフィード方向へ任意の閾値以上に変化した指令点間または前後の指令点間の角度が任意の閾値以上に変化した指令点間で前記加工経路を分割する、請求項1から請求項5のいずれかに記載の加工プログラム解析装置。
  7. 前記孤立指令点検出部は、前記単位加工経路のそれぞれについて、加工方向に沿った順方向に前記孤立指令点を順次検出するとともに、前記順方向とは逆方向にも前記孤立指令点を順次検出する、請求項1から請求項6のいずれかに記載の加工プログラム解析装置。
  8. 請求項1から請求項7のいずれかに記載の加工プログラム解析装置を備えてなる工作機械。
  9. 加工プログラムによって指令される加工経路を、複数の隣接する単位加工経路ごとに分割する加工経路分割部と、
    前記隣接する単位加工経路のそれぞれを構成する各指令点の位置関係に基づいて、前記単位加工経路同士で隣り合う指令点が抜けている指令点を孤立指令点として検出する孤立指令点検出部と
    してコンピュータを機能させる、加工プログラム解析プログラム。
  10. 加工プログラムによって指令される加工経路を、複数の隣接する単位加工経路ごとに分割する加工経路分割ステップと、
    前記隣接する単位加工経路のそれぞれを構成する各指令点の位置関係に基づいて、前記単位加工経路同士で隣り合う指令点が抜けている指令点を孤立指令点として検出する孤立指令点検出ステップと、
    を有する、加工プログラム解析方法。
JP2017232531A 2017-12-04 2017-12-04 加工プログラム解析装置およびこれを備えた工作機械、ならびに加工プログラム解析プログラムおよび加工プログラム解析方法 Active JP6687584B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017232531A JP6687584B2 (ja) 2017-12-04 2017-12-04 加工プログラム解析装置およびこれを備えた工作機械、ならびに加工プログラム解析プログラムおよび加工プログラム解析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017232531A JP6687584B2 (ja) 2017-12-04 2017-12-04 加工プログラム解析装置およびこれを備えた工作機械、ならびに加工プログラム解析プログラムおよび加工プログラム解析方法

Publications (2)

Publication Number Publication Date
JP2019101799A JP2019101799A (ja) 2019-06-24
JP6687584B2 true JP6687584B2 (ja) 2020-04-22

Family

ID=66973722

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017232531A Active JP6687584B2 (ja) 2017-12-04 2017-12-04 加工プログラム解析装置およびこれを備えた工作機械、ならびに加工プログラム解析プログラムおよび加工プログラム解析方法

Country Status (1)

Country Link
JP (1) JP6687584B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022066086A (ja) * 2020-10-16 2022-04-28 オムロン株式会社 軌道生成装置、軌道生成方法、及び軌道生成プログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000311010A (ja) * 1999-04-27 2000-11-07 Mitsubishi Electric Corp 軌跡制御装置、プログラム作成装置およびプログラム変換装置
JP3920144B2 (ja) * 2002-05-17 2007-05-30 オークマ株式会社 Ncデータの工具軌跡表示方法
JP3834268B2 (ja) * 2002-06-20 2006-10-18 オークマ株式会社 Ncデータの工具軌跡表示方法
JP2007021692A (ja) * 2005-07-20 2007-02-01 Makino Milling Mach Co Ltd 切削加工方法及び装置
JP4571592B2 (ja) * 2006-01-26 2010-10-27 オークマ株式会社 数値制御装置
KR101485932B1 (ko) * 2010-10-26 2015-01-23 마키노 밀링 머신 주식회사 공구경로의 생성방법 및 생성장치
JP6716446B2 (ja) * 2016-12-21 2020-07-01 Dmg森精機株式会社 加工プログラム解析装置、加工プログラム解析プログラムおよび加工プログラム解析方法

Also Published As

Publication number Publication date
JP2019101799A (ja) 2019-06-24

Similar Documents

Publication Publication Date Title
JP5349713B1 (ja) Ncプログラム検索方法、ncプログラム検索装置、ncプログラム作成方法およびncプログラム作成装置
US10599126B2 (en) Tool-path correcting apparatus and tool-path correcting method
JP5309288B2 (ja) 加工誤差予測のためのコンピュータプログラム、加工誤差予測装置およびその予測結果に基づいて工具経路を修正する装置
JP5804367B2 (ja) 加工誤差予測方法、加工誤差予測装置、工具経路修正方法及び工具経路修正装置
KR100772304B1 (ko) 가공 정보 작성 장치, 컴퓨터 판독가능 기록매체, 및 가공 정보 작성 방법
JP6370821B2 (ja) ロボットプログラムの教示を行うロボットプログラミング装置
WO2014045383A1 (ja) 加工工程決定方法および加工工程設計装置
CN104793560A (zh) 用于生成轨迹的方法和系统
JP6011353B2 (ja) 加工条件予測装置および加工条件予測方法
Van Tuong et al. A practical approach for partitioning free-form surfaces
JP2013054431A5 (ja)
US10921779B2 (en) Process and system for providing a machining method for manufacturing a feature in a part
US11097420B2 (en) Interference determination apparatus for articulated robot, interference determination method for articulated robot, interference determination program for articulated robot, and path planning apparatus
US8255077B2 (en) Apparatus, method and program for creating tool reference plane
JP2017109277A (ja) 切削工具選択システム及び切削工具選択方法
JP6687584B2 (ja) 加工プログラム解析装置およびこれを備えた工作機械、ならびに加工プログラム解析プログラムおよび加工プログラム解析方法
JP2013045141A (ja) 画像処理装置、そのプログラムおよび画像処理方法
JP5610883B2 (ja) 加工シミュレーション装置及び方法
CN104145223B (zh) 加工程序生成装置以及加工程序生成方法
CN111598364B (zh) 用于机械零部件的数字化工艺编排系统
JP6716446B2 (ja) 加工プログラム解析装置、加工プログラム解析プログラムおよび加工プログラム解析方法
JP2019138820A (ja) 3次元測定装置
CN111837080B (zh) 刀具路径生成方法
JP5595146B2 (ja) 加工シミュレーション装置および最適工程決定装置
JP4622987B2 (ja) 工具参照面データの作成装置と作成方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190313

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20191220

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200331

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200330

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200402

R150 Certificate of patent or registration of utility model

Ref document number: 6687584

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250