JP2015153097A - 指令経路圧縮機能を有する数値制御装置 - Google Patents

指令経路圧縮機能を有する数値制御装置 Download PDF

Info

Publication number
JP2015153097A
JP2015153097A JP2014025758A JP2014025758A JP2015153097A JP 2015153097 A JP2015153097 A JP 2015153097A JP 2014025758 A JP2014025758 A JP 2014025758A JP 2014025758 A JP2014025758 A JP 2014025758A JP 2015153097 A JP2015153097 A JP 2015153097A
Authority
JP
Japan
Prior art keywords
point sequence
command
path
partial
point
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.)
Granted
Application number
JP2014025758A
Other languages
English (en)
Other versions
JP5850963B2 (ja
Inventor
大樹 村上
Daiki Murakami
大樹 村上
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.)
Fanuc Corp
Original Assignee
Fanuc Corp
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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP2014025758A priority Critical patent/JP5850963B2/ja
Priority to DE102015001526.5A priority patent/DE102015001526B4/de
Priority to US14/620,279 priority patent/US9645568B2/en
Priority to CN201510076316.3A priority patent/CN104850064B/zh
Publication of JP2015153097A publication Critical patent/JP2015153097A/ja
Application granted granted Critical
Publication of JP5850963B2 publication Critical patent/JP5850963B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/41Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
    • G05B19/4103Digital interpolation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/41Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34095Look ahead segment calculation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34101Data compression, look ahead segment calculation, max segment lenght
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42338Position tracking control

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Numerical Control (AREA)
  • Image Generation (AREA)

Abstract

【課題】同一の指令点列を順向き、逆向きのどちらで与えたとしても、前記指令点列を逐次的に読み込みつつ同一の指令点列圧縮結果を得ることが可能な、指令経路圧縮機能を有する数値制御装置を提供する。【解決手段】加工曲線作成機能を有する数値制御装置は、複数個の点列による指令経路および送り速度指令を読み取る指令読み取り手段10と、前記複数個の点列による指令経路をより少数の直線または曲線で表現する点列圧縮手段12と、前記直線または曲線で表現された指令経路および送り速度指令に基づいて前記移動経路上を指令された送り速度で移動するよう補間周期ごとに各軸位置を求める補間手段14と、前記補間手段14により求められた各軸位置へ移動するように各軸モータを駆動する手段(15X,15Y,15Z)を有する。【選択図】図6

Description

本発明は、少なくとも直線2軸を含む複数の駆動軸を有する工作機械に対して加工プログラムから得られる指令点列にもとづいて加工用の経路を作成し前記経路を補間し、補間した位置に前記駆動軸を駆動することによって加工を行う数値制御装置に関する。
特許文献1には、点列として指令された経路を、直線経路により近似し、その直線経路に沿って加工を行う技術が開示されている。
特許文献2には、点列として指令された経路を、指令点からのずれが設定された閾値(トレランス)以内となるなるべく少ない本数の曲線で近似し、その曲線に沿うようにサーボモータを駆動し加工を行う技術が開示されている。
特許第3459155号公報 特開2013−171376号公報
広範囲にわたる多数の指令点列を、その指令点列からの距離が許容閾値(トレランス)以内となる直線または曲線で近似する技術を指令点列の圧縮と呼ぶ。多数の指令点を1本の曲線で表すことで、広範囲の指令点列に対応した曲線が作成でき、指令点列間の間隔が微小であっても、数値制御装置の加工曲線を作成し補間する能力の不足による減速を軽減できる。
特許文献1、2に記載された方法は、圧縮方法が方向依存性を持つ、つまり点列に対しどちらから圧縮するかで圧縮結果が相違するため、同一の指令を逆向きに指令したとき同一の圧縮結果となる保証がなく、このため往復経路による加工において経路段差が生じるという問題がある。
そこで本発明の目的は、上記従来技術で述べた指令点列圧縮において、同一の指令点列を順向き、逆向きのどちらで与えたとしても、前記指令点列を逐次的に読み込みつつ同一の指令点列圧縮結果を得ることが可能な、指令経路圧縮機能を有する数値制御装置を提供することである。
本願の請求項1に係る発明は、テーブルに取付けられた加工物に対して加工を行う少なくとも直線軸2軸を含む複数の駆動軸によって構成される工作機械を制御する数値制御装置において、複数個の指令点列による指令経路および前記加工物と工具との相対送り速度指令を読み取る指令読み取り手段と、前記指令読み取り手段によって前記指令点列を指令方向から抽出しても指令方向と逆方向から抽出しても同じ経路となるように前記点列から部分点列を抽出して該点列を分割する部分点列抽出手段と、前記部分点列から指令方向に作成しても指令方向と逆方向に作成しても同じ直線または曲線に近似して圧縮した経路となるよう前記部分点列の各指令点からの距離が予め設定されたトレランス以内となる前記直線または曲線に近似して圧縮した経路を作成する点列圧縮手段と、工具が前記点列圧縮手段により圧縮した経路を、指令された前記相対送り速度で移動するよう補間周期ごとに各軸位置を求める補間手段と、前記補間手段により求められた各軸位置へ移動するように各軸モータを駆動する手段を有する数値制御装置である。
請求項2に係る発明は、前記指令点列から前記部分点列を抽出して分割する際の分割基準長を設定する分割基準長設定手段を有し、前記部分点列抽出手段における分割の判定は、指令点間の長さが前記分割基準長以内かどうかにより判定する請求項1に記載の数値制御装置である。
請求項3に係る発明は、前記指令点列から前記部分点列を抽出して分割する際の分割基準角度を設定する分割基準角度設定手段を有し、前記部分点列抽出手段における分割の判定は、指令点間を結ぶ直線のなす角が、前記分割基準角度以内かどうかにより判定する請求項1に記載の数値制御装置である。
請求項4に係る発明は、前記点列圧縮手段における圧縮した経路は、部分点列の内いくつかの点を直線で繋ぐ経路とする請求項1〜3のいずれか一つに記載の数値制御装置である。
請求項5に係る発明は、前記点列圧縮手段における圧縮した経路は、部分点列の内いくつかの点を通過する曲線経路とする請求項1〜3のいずれか一つに記載の数値制御装置である。
本発明により、指令点列圧縮において、同一の指令点列を順向き、逆向きのどちらで与えたとしても、前記指令点列を逐次的に読み込みつつ同一の指令点列圧縮結果を得ることが可能な、指令経路圧縮機能を有する数値制御装置を提供できる。
P0が始点、Pn(n≧1)が終点である指令点列{P0,P1, ・・・Pn}入力された指令点列を示す図である。 Pm-1からPmのベクトルをvm、vm-1とvmのなす角をamと表すことを示す図である。 QcからQdへのベクトルをVc,dと表すことを示す図である。 図1で示されたP0,P1,・・・,Pnの経路が圧縮の結果、n以下の数の直線で表現されることを示す図である。 図1で示されたP0,P1,・・・,Pnの経路が圧縮の結果、いくつかの指令点を通る曲線で表現されることを示す図である。 本発明の実施形態を説明する機能ブロック図である。 実施形態1の部分点列抽出手段における処理を示すフローチャートである。 実施形態1の点列圧縮手段における処理を示すフローチャートである。 実施形態2の点列圧縮手段における処理を示すフローチャートである。
以下、本発明の実施形態を図面と共に説明する。
<実施例1>
入力された指令点列を、指令点列の圧縮により近似直線で表現する例を説明する。図1のようにP0が始点、Pn(n≧1)が終点である指令点列{P0,P1, ・・・Pn} がNCプログラムとして指令される例を考える。
指令点列{P0,P1, ・・・Pn} を部分点列抽出手段において部分点列に分割し、点列圧縮手段へと渡す。点列圧縮手段では部分点列抽出手段により分割された部分点列を直線で近似する。部分点列抽出手段と点列圧縮手段とを以下に説明する。
[部分点列抽出手段]
部分点列抽出手段では、指令点列{P0,P1,・・・,Pn}を逐次的に読み込んで部分点列を抽出し、点列圧縮手段に渡す。その手順を以下で説明する。指令点列読み込みループ内では、P0から順に逐次的に指令点を読み込んでいき(先読み)、指令点間の距離および角度の条件によって停止されるまで先読みを繰り返す。先読みが停止された場合、読み込んだ点列を部分点列として点列圧縮手段へと渡し、まだ指令点が残っていれば、残った指令点列を入力として部分点列抽出手段を繰り返す。指令点列読み込みループ内で読み込む指令点をPm(0≦m≦n)とする。
図2のようにPm-1からPmのベクトルをvmとし、vm-1とvmのなす角をamとすると、両者は数1式、数2式で表される。
Figure 2015153097
Figure 2015153097
(A−1)m=0の場合
P0が読み込まれる。
m=1として先読みを継続する。
(A−2)m=1の場合
P1を読み込み、すでに読み込まれているP0とP1からv1を数3式により計算する。
Figure 2015153097
v1の長さが、分割基準長設定手段によって予め設定されている分割基準長vmax以下であれば先読みを継続する。すなわち、数4式であれば先読みを継続し、そうでなければ先読みを停止する。
Figure 2015153097
先読みを停止した場合、{P0,P1}を部分点列として抽出し、点列圧縮手段へと渡す。n≠1であれば、残った指令点列{P1,・・・,Pn}を{P'0, ・・・,P'n-1}として再度部分点列抽出手段を実行する。
(A−3) m≧2の場合
Pmを読み込み、既に読み込まれているPm-1とPmからvmを数5式により計算する。
Figure 2015153097
また、既に計算されているvm-1とvmからamを計算する。
Figure 2015153097
vmの長さがvmax以下であり、かつ、cos(am)が分割基準角度の余弦cosmax以上であれば、先読みを継続する。分割基準角度は分割基準角度設定手段により予め設定されている。
すなわち
Figure 2015153097
Figure 2015153097
であれば、先読みを継続し、そうでなければ先読みを停止する。
数7式または数8式により先読みを停止した場合、{P0,・・・,Pm-1}を部分点列として抽出し、点列圧縮手段へと渡し、残った指令点列{Pm-1,・・・,Pn}を入力点列{P'0, ・・・,P'n-m+1}として部分点列抽出手段を初めから実行する。
m=nであれば、{P0,・・・,Pn}を部分点列として抽出し、部分点列抽出手段を終了する。
ここで、指令点列{P0,P1,・・・,Pn}がこの順に指令されても、逆から{Pn,Pn-1,・・・,P0}の順に指令されても数4式、数7式および数8式は同じ判断となる。
なお、ここでは分割基準長と分割基準角度によって部分点列を抽出したが、指令方向に依らない判定基準であれば、他の判定基準を用いてもよい。例えば隣り合う3つの指令点を頂点とする三角形の面積を判定基準としてもよいし、前記三角形の外接円の曲率を判定基準としてもよい。
[点列圧縮手段]
部分点列抽出手段より入力されたs+1個の部分点列{Q0,Q1, ・・・,Qs}(s≧1)を圧縮する。ここで圧縮とは、部分点列に対して、部分点列の点数より少ない数の曲線または直線で近似することである。これらの部分点列は部分点列抽出手段によりQ0からQsまで全て読み込まれており、逐次的に読み込む必要はない。ここでは圧縮結果は直線とする。圧縮結果は媒介変数tの関数である経路Path(t)として補間手段へ渡す。tは0から1を変化する。tを用いて表現した、点Qcから点Qdまで直線で結ぶ経路をLine[c,d](t)は数9式で表される。
Figure 2015153097
(B−1) s=1の場合
数10式で表されるQ0からQ1を直線で結んだ経路を圧縮結果として補間手段へ渡す。
Figure 2015153097
(B−2) s>1の場合
図3に示すように部分点Qc,Qdとする。QcからQdへのベクトルをVc,dと表す。ベクトルVc,dは数11式により表される。
Figure 2015153097
また、Vc,d方向の単位ベクトルをEc,dと表す。単位ベクトルEc,dは数12式により表される。
Figure 2015153097
ここで、部分点列の両端以外の点をQq(0<q<s)とする。
V0,qとV0,sのなす角の正弦sinθは数13式により表される。
Figure 2015153097
Q0からQsを直線で結んだ経路Line[0,s](t)とQq(0<q<s)との距離Lqは数14式により表される。
Figure 2015153097
各距離Lqと予め設定されたトレランスTを比較し、数15式を満たすqが存在するか否かを判別する。
Figure 2015153097
数15式を満たすqが存在しない場合、Path(t)=Line[0,s](t)を圧縮結果として補間手段へ渡す。
数15式を満たすqが存在する場合、各qのうちLqが最大となるqを抽出し、このq前後で部分点列を分割する。すなわち、q=wのときLqが最大になるとした場合、入力された部分点列(P0,P1, ・・・Ps) は(P0,・・・Pw) と(Pw, ・・・Ps) の2つの部分点列に分割する。全ての分割された部分点列を入力として点列圧縮手段を再帰的に実行する。
ここで、入力された部分点列{Q0,Q1, ・・・,Qs}はこの順で入力されても、逆から{Qs,Qs-1, ・・・,Q0}の順に入力されても、直線作成方法(数9式)およびトレランス判定(数15式)は同じ結果となる。
[圧縮結果]
以上の手段(部分点列抽出手段および点列圧縮手段)により、図1で示されたP0,P1,・・・,Pnの経路は図4のようにn以下の数の直線で表現される。図1中の黒点は、圧縮された直線経路の端点を表し、白点はそれ以外の指令点を表している。最終的な経路は黒点を繋ぐ直線経路となり、白点はその直線経路からトレランスT以内離れた点となる。これにより元の指令経路をトレランス以内に守りつつ補間による負荷を軽減し、また、微小なコーナによる不要な減速を回避でき、高速な加工が期待できる。
今回、指令点列(P0,P1, ・・・,Pn) の順に入力した例を示した。本手法では指令点列を逆から(Pn,Pn-1, ・・・,P0) の順に入力しても、得られる経路は図4と同一のものとなる。これは、部分点列抽出手段の分割点判定(数4式)(数7式)(数8式)と点列圧縮手段の直線作成方法(数9式)およびトレランス判定(数15式)が全て、指令点の指令方向に依らない手法となっているためである。これにより往復加工パスの往路と復路のように隣接した曲線の間に形状の類似性が求められる時に、経路間の段差を少なくすることが期待される。
<実施形態2>
実施形態1では入力された指令点列を指令点列の圧縮により近似直線で表現する例を説明した。実施形態2では入力された指令点列を指令点列の圧縮により近似曲線で表現する例を説明する。
実施形態1と同様に、P0が始点、Pn(n≧1)が終点である指令点列{P0,P1, ・・・Pn} がNCプログラムとして指令される例を考える。指令点列{P0,P1, ・・・Pn} を部分点列抽出手段において部分点列に分割し、点列圧縮手段へと渡す。点列圧縮手段では部分点列抽出手段により分割された部分点列を曲線で近似する。部分点列抽出手段は実施形態1と同様のため省略する。以下で実施形態2の点列圧縮手段の詳細を示す。
[点列圧縮手段]
部分点列抽出手段より入力されたs+1個の部分点列{Q0,Q1, ・・・,Qs}(s≧1)を圧縮する。これらの部分点列は部分点列抽出手段によりQ0からQsまで全て読み込まれており、逐次的に読み込む必要はない。ここでは圧縮結果は3次のBスプライン曲線による曲線経路とするが、NURBS曲線や円弧曲線など他の形式の曲線を用いてもよい。圧縮結果は媒介変数tの関数である経路Path(t)として補間手段へ渡す。tは0から1を変化する。
部分点列{Q0,Q1, ・・・,Qs}のうち、点Q0を始点、点Qsを終点とし、i個の点Qe1,・・・,Qeiを通過するBスプライン曲線による曲線経路をBSpline[0,e1,e2,・・・,ei,s](t)とする。ここで1≦i≦s-1である。曲線経路は数16式により表される。
Figure 2015153097
ここでNj,3(t)はBスプライン曲線の基底関数であり、RjはBスプライン曲線の制御点である。このBスプライン曲線は、始点Q0、終点Qsにおける接線方向ベクトルがそれぞれ数17式、数18式となるように作成する。
Figure 2015153097
Figure 2015153097
このように作成したBスプライン曲線は数19式によって表され、始点Q0、終点Qs、通過点Qe1,・・・,Qeiを逆から入力しても同一の曲線経路となる。
Figure 2015153097
このようなBスプライン曲線を作成する手法は周知の技術であるため省略する。
(C−1) s=1の場合
数20式で表されるQ0からQ1をBスプライン曲線で結んだ経路を圧縮結果として補間手段へ渡す。
Figure 2015153097
(C−2) s>1の場合
数21式で表されるQ0からQsをBスプライン曲線で結んだ経路を初期曲線として作成する。つまり上述の通過点Qe1, …, Qei はないとしてBスプライン曲線を作成する。
Figure 2015153097
部分点列(Q0,Q1, ・・・,Qs)のうち、Q0とQs以外の全ての点Qe(1≦e≦s-1)と、Path(t)との距離をLeとする。すなわち、距離Leを数22式により表す。
Figure 2015153097
ここでDistは、曲線と点との距離を与える関数であり、解析的もしくは近似的な手法により計算する。Distの詳細については周知技術であるため省略する。各Leと予め設定されたトレランスTを数23式により比較し、各LeがトレランスTを超えるかを判定する。
Figure 2015153097
数23式を満たすeが存在しない場合、Path(t)を圧縮結果として補間手段へ渡す。
数23式を満たすeが存在する場合、各eのうちLeが最大となるeを抽出し、このeをemaxとする。これらのemaxに対応する点Qemaxを通過する点に追加し、Bスプライン曲線を作り直す。すなわち、作り直したBスプライン曲線は数24式により表される。
Figure 2015153097
この新しいPath(t)に対して数22式によりLeを再計算し、数23式を判定する。数23式を満たすeが存在しない場合、Path(t)を圧縮結果として補間手段へ渡す。数23式を満たすeが存在する場合、各eのうちLeが最大となるeを抽出し、このeをemax2とし、点Qemax2を追加する点に追加し、Bスプライン曲線を作り直す。すなわち、作り直したBスプライン曲線は数25式により表される。
Figure 2015153097
これを繰り返し、数23式を満たすeが存在しなくなるまで通過する点を追加し、Path(t)を圧縮結果として補間手段へ渡す。ここで、入力された部分点列{Q0,Q1, ・・・,Qs}はこの順で入力されても、逆から{Qs,Qs-1, ・・・,Q0}の順に入力されても、Bスプライン作成方法(数16式)(数17式)(数18式)およびトレランス判定(数23式)は同じ結果となる。
また、ここではBスプライン曲線における始点Q0、終点Qsにおける接線方向ベクトルを3(Q−Q)、3(Q−Qs−1)としたが、Q0に対する1つ前の点Q-1とQsに対する1つ先の点Qs+1を読み込むことによって、3(Q−Q−1)/2、3(Qs+1−Qs−1)/2を接線方向ベクトルとしてもよいし、Q-1,Q0,Q1を通る円にQ0で接する方向、Qs-1,Qs,Qs+1 を通る円にQsで接する方向を接線方向ベクトルとしてもよい。
[圧縮結果]
以上の手段により、図1で示されたP0,P1,・・・,Pnの経路は図5のようにいくつかの指令点を通る曲線で表現される。図5中の黒点は、通過する指令点を表し、白点はそれ以外の指令点を表している。
最終的な経路は黒点を繋ぐなめらかな曲線経路となり、白点はその直線経路からトレランスT以内離れた点となる。実施形態1と同様に指令点列を逆から{Pn,Pn-1, ・・・,P0} の順に入力しても、得られる経路は図5と同一のものとなる。
これにより実施形態2においても実施形態1と同様に、これにより元の指令経路をトレランス以内に守りつつ補間による負荷を軽減することができ、また、往復加工パスの往路と復路のように隣接した曲線の間に形状の類似性が求められる時に、経路間の段差を少なくすることができる。さらに実施形態2では3次のBスプライン曲線により圧縮されるため、広範囲にわたる指令点を少数の2次微分連続な曲線で表現され、滑らかな加工面が得られる。
(機能ブロック図)
図6は、本発明の実施形態を説明する機能ブロック図である。一般に数値制御装置において指令読み取り手段10は加工プログラムを解析し実行形式に変換する。補間手段14は実行形式に基づいて補間処理を行い各軸への移動指令を出力し、各軸移動指令に基づき各軸サーボ(X軸サーボ15X,Y軸サーボ15Y,Z軸サーボ15Z)を駆動制御する。
本発明は指令読み取り手段10に属する部分点列抽出手段11と、指令読み取り手段10に属する点列圧縮手段12を有する。部分点列抽出手段11は逐次的に読み取った指令点列を、その形状から分割点を判定することで経路の指令方向に依らず同一の結果となるように分割し、点列圧縮手段12へと出力する。点列圧縮手段12は補間手段14の負荷を軽減するために、入力された部分点列からなる経路を、方向に依らない手法により曲線または直線で近似し、補間手段14へと出力する。点列圧縮手段12は予め設定されたトレランス13を参照する。
(フローチャート)
実施形態1の部分点列抽出手段のフローチャートを図7に示す。
[ステップsa01]mを初期値(=0)とする。
[ステップsa02]指令点Pmのデータを読み込む。
[ステップsa03]mの値によって場合分けを行う。m=0の場合にはステップsa04へ移行する。m=1の場合にはステップsa12へ移行する。m≧2の場合にはステップsa05へ移行する。
[ステップsa04]mに1を加算した値をmとし、ステップsa02に戻る。
[ステップsa05]vmとamを計算する。
[ステップsa06]vmの絶対値はvmax以下であるか否かを判断し、以下である場合(YES)にはステップsa07へ移行し、以下ではない場合(NO)にはステップsa10へ移行する。
[ステップsa07]cos(am)はcosmax以上であるか否か判断し、以上である場合(YES)にはステップsa08へ移行し、以上ではない場合(NO)にはステップsa10へ移行する。
[ステップsa08]mとnは等しいか否か判断し、等しい場合(YES)にはステップsa09へ移行し、等しくない場合(NO)にはステップsa04へ戻る。
[ステップsa09]指令点列{P0,・・・,Pn}を点列圧縮手段へ渡し、部分点列抽出手段の処理を終了する。
[ステップsa10]部分点列{P0,・・・,Pm−1}を点列圧縮手段へ渡す。
[ステップsa11]部分点列{Pm−1,・・・,Pn}を部分点列抽出手段の入力とする。つまり、ステップsa01に戻り、部分点列抽出手段を再実行する。
[ステップsa12]mとnとは等しいか否か判断し、等しい場合(YES)にはステップsa13へ移行し、等しくない場合(NO)にはステップsa14へ移行する。
[ステップsa13]{P0,P1}を点列圧縮手段へ渡し、処理を終了する。
[ステップsa14]vmを計算する。
[ステップsa15]vmの絶対値はvmax以下であるか否か判断し、以下である場合(YES)にはステップsa16へ移行し、以下でない場合(NO)にはステップsa17へ移行する。
[ステップsa17]{P0,P1}を点列圧縮手段へ渡す。
[ステップsa18]指令点列{P0,・・・,Pn}を部分点列抽出手段の入力とする。つまり、ステップsa01に戻り、部分点列抽出手段を再実行する。
実施形態1の点列圧縮手段のフローチャートを図8に示す。
[ステップsb01]Path(t)を、P0とPsを結ぶ線分とする。
[ステップsb02]Q0,Qs以外の点QeについてLeを計算する。
[ステップsb03]Le>Tとなるeが存在するか否か判断し、存在する場合(YES)にはステップsb04へ移行し、存在しない場合(NO)にはステップsb06へ移行する。
[ステップsb04]Leが最大となる点の前後で入力点列を分割する。
[ステップsb05]分割された点列をそれぞれ入力として点列圧縮手段を再実行し、
ステップsb01へ戻る。
[ステップsb06]Path(t)を補間手段へ渡し、点列圧縮手段の処理を終了する。
実施形態2の点列圧縮手段のフローチャートを図9に示す。
[ステップsc01]通過点は“なし”とする。
[ステップsc02]Path(t)を、通過点を通るBspline曲線とする。
[ステップsc03]Q0,Qs以外の点QeについてLeを計算する。
[ステップsc04]LeがTより大きいeが存在するか否か判断し、存在する場合(YES)にはステップsc05へ移行し、存在しない場合(NO)にはステップsc06へ移行する。
[ステップsc05]Leが最大となる点を全て通過点へ追加し、ステップsc02へ戻る。
[ステップsc06]Path(t)を補間手段へ渡し、点列圧縮手段の処理を終了する。
10 指令読み取り手段
11 部分点列抽出手段
12 点列圧縮手段
13 トレランス
14 補間手段
15X X軸サーボ
15Y Y軸サーボ
15Z Z軸サーボ
本願の請求項1に係る発明は、テーブルに取付けられた加工物に対して加工を行う少なくとも直線軸2軸を含む複数の駆動軸によって構成される工作機械を制御する数値制御装置において、複数個の指令点により形成される指令点列による指令経路および前記加工物と工具との相対送り速度指令を読み取る指令読み取り手段と、前記指令読み取り手段によって前記指令点列を指令方向から抽出しても指令方向と逆方向から抽出しても同じ経路となるように前記点列から部分点列を抽出して該点列を分割する部分点列抽出手段と、前記部分点列から指令方向に作成しても指令方向と逆方向に作成しても同じ直線または曲線に近似して圧縮した経路となるよう前記部分点列の各指令点からの距離が予め設定されたトレランス以内となる前記直線または曲線に近似して圧縮した経路を作成する点列圧縮手段と、工具が前記点列圧縮手段により圧縮した経路を、指令された前記相対送り速度で移動するよう補間周期ごとに各軸位置を求める補間手段と、前記補間手段により求められた各軸位置へ移動するように各軸モータを駆動する手段を有する数値制御装置である。
請求項2に係る発明は、前記指令点列から前記部分点列を抽出して分割する際の分割基準長を設定する分割基準長設定手段を有し、前記部分点列抽出手段における分割の判定は、指令点間の長さが前記分割基準長以内かどうかにより判定する請求項1に記載の数値制御装置である。
以下、本発明の実施形態を図面と共に説明する。
<実施形態1>
入力された指令点列を、指令点列の圧縮により近似直線で表現する例を説明する。図1のようにP0が始点、Pn(n≧1)が終点である指令点列{P0,P1, ・・・Pn} がNCプログラムとして指令される例を考える。
指令点列{P0,P1, ・・・Pn} を指令読み取り手段により指令方向から抽出し、部分点列抽出手段において部分点列に分割し、点列圧縮手段へと渡す。点列圧縮手段では部分点列抽出手段により分割された部分点列を直線で近似する。部分点列抽出手段と点列圧縮手段とを以下に説明する。
実施形態1と同様に、P0が始点、Pn(n≧1)が終点である指令点列{P0,P1, ・・・Pn} がNCプログラムとして指令される例を考える。指令点列{P0,P1, ・・・Pn} を指令読み取り手段により指令方向から抽出し、部分点列抽出手段において部分点列に分割し、点列圧縮手段へと渡す。点列圧縮手段では部分点列抽出手段により分割された部分点列を曲線で近似する。部分点列抽出手段は実施形態1と同様のため省略する。以下で実施形態2の点列圧縮手段の詳細を示す。

Claims (5)

  1. テーブルに取付けられた加工物に対して加工を行う少なくとも直線軸2軸を含む複数の駆動軸によって構成される工作機械を制御する数値制御装置において、
    複数個の指令点列による指令経路および前記加工物と工具との相対送り速度指令を読み取る指令読み取り手段と、
    前記指令読み取り手段によって前記指令点列を指令方向から抽出しても指令方向と逆方向から抽出しても同じ経路となるように前記点列から部分点列を抽出して該点列を分割する部分点列抽出手段と、
    前記部分点列から指令方向に作成しても指令方向と逆方向に作成しても同じ直線または曲線に近似して圧縮した経路となるよう前記部分点列の各指令点からの距離が予め設定されたトレランス以内となる前記直線または曲線に近似して圧縮した経路を作成する点列圧縮手段と、
    工具が前記点列圧縮手段により圧縮した経路を、指令された前記相対送り速度で移動するよう補間周期ごとに各軸位置を求める補間手段と、
    前記補間手段により求められた各軸位置へ移動するように各軸モータを駆動する手段を有する数値制御装置。
  2. 前記指令点列から前記部分点列を抽出して分割する際の分割基準長を設定する分割基準長設定手段を有し、前記部分点列抽出手段における分割の判定は、指令点間の長さが前記分割基準長以内かどうかにより判定する請求項1に記載の数値制御装置。
  3. 前記指令点列から前記部分点列を抽出して分割する際の分割基準角度を設定する分割基準角度設定手段を有し、
    前記部分点列抽出手段における分割の判定は、指令点間を結ぶ直線のなす角が、前記分割基準角度以内かどうかにより判定する請求項1に記載の数値制御装置。
  4. 前記点列圧縮手段における圧縮した経路は、部分点列の内いくつかの点を直線で繋ぐ経路とする請求項1〜3のいずれか一つに記載の数値制御装置。
  5. 前記点列圧縮手段における圧縮した経路は、部分点列の内いくつかの点を通過する曲線経路とする請求項1〜3のいずれか一つに記載の数値制御装置。
JP2014025758A 2014-02-13 2014-02-13 指令経路圧縮機能を有する数値制御装置 Active JP5850963B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2014025758A JP5850963B2 (ja) 2014-02-13 2014-02-13 指令経路圧縮機能を有する数値制御装置
DE102015001526.5A DE102015001526B4 (de) 2014-02-13 2015-02-06 Numerische Steuerung mit Befehlspfad-Komprimierungsfunktion
US14/620,279 US9645568B2 (en) 2014-02-13 2015-02-12 Numerical controller having command path compression function
CN201510076316.3A CN104850064B (zh) 2014-02-13 2015-02-12 具有指令路径压缩功能的数值控制装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014025758A JP5850963B2 (ja) 2014-02-13 2014-02-13 指令経路圧縮機能を有する数値制御装置

Publications (2)

Publication Number Publication Date
JP2015153097A true JP2015153097A (ja) 2015-08-24
JP5850963B2 JP5850963B2 (ja) 2016-02-03

Family

ID=53676953

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014025758A Active JP5850963B2 (ja) 2014-02-13 2014-02-13 指令経路圧縮機能を有する数値制御装置

Country Status (4)

Country Link
US (1) US9645568B2 (ja)
JP (1) JP5850963B2 (ja)
CN (1) CN104850064B (ja)
DE (1) DE102015001526B4 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018101347A (ja) * 2016-12-21 2018-06-28 Dmg森精機株式会社 加工プログラム解析装置、加工プログラム解析プログラムおよび加工プログラム解析方法
JPWO2022071588A1 (ja) * 2020-10-02 2022-04-07

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109739179B (zh) * 2018-11-28 2020-10-23 大族激光科技产业集团股份有限公司 插补控制方法及装置、计算机设备及可读存储介质
JP6871280B2 (ja) * 2019-01-07 2021-05-12 ファナック株式会社 数値制御装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62204313A (ja) * 1986-03-05 1987-09-09 Hitachi Denshi Ltd 数値制御装置
JPS63136209A (ja) * 1986-11-28 1988-06-08 Nec Corp 数値制御装置の補間器
JPH03230201A (ja) * 1990-02-06 1991-10-14 Amada Co Ltd 加工形状データの圧縮処理方法及び装置
JPH1049215A (ja) * 1996-07-29 1998-02-20 Roland D G Kk 形状加工システムにおける加工形状データの圧縮処理方法
JPH10301614A (ja) * 1997-04-28 1998-11-13 Fanuc Ltd 数値制御装置
JP2006139503A (ja) * 2004-11-11 2006-06-01 Shinko Electric Ind Co Ltd 工具軌跡生成プログラム及び記録媒体、並びに工具軌跡生成装置及び工具軌跡生成方法
JPWO2010140390A1 (ja) * 2009-06-03 2012-11-15 三菱電機株式会社 数値制御装置および生産システム
JP2013171376A (ja) * 2012-02-20 2013-09-02 Fanuc Ltd 加工曲線作成機能を有する数値制御装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05324046A (ja) * 1992-05-18 1993-12-07 Mitsubishi Electric Corp 多系統数値制御方法及びその装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62204313A (ja) * 1986-03-05 1987-09-09 Hitachi Denshi Ltd 数値制御装置
JPS63136209A (ja) * 1986-11-28 1988-06-08 Nec Corp 数値制御装置の補間器
JPH03230201A (ja) * 1990-02-06 1991-10-14 Amada Co Ltd 加工形状データの圧縮処理方法及び装置
JPH1049215A (ja) * 1996-07-29 1998-02-20 Roland D G Kk 形状加工システムにおける加工形状データの圧縮処理方法
JPH10301614A (ja) * 1997-04-28 1998-11-13 Fanuc Ltd 数値制御装置
JP2006139503A (ja) * 2004-11-11 2006-06-01 Shinko Electric Ind Co Ltd 工具軌跡生成プログラム及び記録媒体、並びに工具軌跡生成装置及び工具軌跡生成方法
JPWO2010140390A1 (ja) * 2009-06-03 2012-11-15 三菱電機株式会社 数値制御装置および生産システム
JP2013171376A (ja) * 2012-02-20 2013-09-02 Fanuc Ltd 加工曲線作成機能を有する数値制御装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018101347A (ja) * 2016-12-21 2018-06-28 Dmg森精機株式会社 加工プログラム解析装置、加工プログラム解析プログラムおよび加工プログラム解析方法
JPWO2022071588A1 (ja) * 2020-10-02 2022-04-07
WO2022071588A1 (ja) * 2020-10-02 2022-04-07 川崎重工業株式会社 処理方法、プログラム及びロボットシステム
JP7145357B2 (ja) 2020-10-02 2022-09-30 川崎重工業株式会社 処理方法、プログラム及びロボットシステム

Also Published As

Publication number Publication date
CN104850064B (zh) 2017-12-08
CN104850064A (zh) 2015-08-19
US9645568B2 (en) 2017-05-09
US20150227131A1 (en) 2015-08-13
DE102015001526B4 (de) 2020-12-24
DE102015001526A1 (de) 2015-08-13
JP5850963B2 (ja) 2016-02-03

Similar Documents

Publication Publication Date Title
JP5326015B2 (ja) 加工曲線作成機能を有する数値制御装置
JP5192578B2 (ja) 加工プログラムの移動経路を修正する機能を備えた数値制御装置
JP5850963B2 (ja) 指令経路圧縮機能を有する数値制御装置
JP6267156B2 (ja) 微小ブロックのコーナ制御を行うワイヤカット放電加工機用数値制御装置
JP5255108B2 (ja) 指令経路速度条件による速度制御を行う数値制御装置
Lai et al. On the development of a parametric interpolator with confined chord error, feedrate, acceleration and jerk
JP6200456B2 (ja) 工作機械とロボット間の干渉チェックシステム
US10416613B2 (en) Machining time estimating apparatus
JP2014021759A (ja) コーナ複数曲線挿入部を有する数値制御装置
CN108303952B (zh) 一种适用于数控装置刀具的小线段的速度曲线规划方法
JP6321583B2 (ja) 速度変化に対応した3次元干渉チェックを行う数値制御装置
CN103941647A (zh) 用于嵌入式数控设备的柔性加减速控制插补方法
JP6081954B2 (ja) 工作機械の反転動作を高速化する数値制御装置
JP6396273B2 (ja) ワークとの干渉を避ける位置決めを行う数値制御装置
JP2013069123A (ja) コーナ部の許容内回り量による速度制御を行う数値制御装置
JP5715189B2 (ja) オーバライドの変化時に送り速度を円滑に変更する機能を有する数値制御装置
KR880002420B1 (ko) 수치 제어방법
JP5734336B2 (ja) ワークに対する相対的工具方向の表示および入力を可能とする数値制御装置
JP2007279899A (ja) 数値制御装置
JP2016081470A (ja) 運転停止時に送り速度を円滑に変更する数値制御装置
Yau et al. PC-based controller with real-time look-ahead NURBS interpolator
CN112424712B (zh) 用于由给定轮廓确定粗略轨迹的方法
Tseng et al. A nurbs curve interpolator with jerk‐limited trajectory planning
JP2000347715A (ja) 数値制御装置
Kelekçi et al. Fast and High Precision Control Approach: Polyline Analysis and Optimal NURBS Interpolation for CNC Machine Tools

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150714

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150821

TRDD Decision of grant or rejection written
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20151023

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151201

R150 Certificate of patent or registration of utility model

Ref document number: 5850963

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150