JP6795553B2 - 数値制御装置、数値制御方法及び数値制御プログラム - Google Patents

数値制御装置、数値制御方法及び数値制御プログラム Download PDF

Info

Publication number
JP6795553B2
JP6795553B2 JP2018129074A JP2018129074A JP6795553B2 JP 6795553 B2 JP6795553 B2 JP 6795553B2 JP 2018129074 A JP2018129074 A JP 2018129074A JP 2018129074 A JP2018129074 A JP 2018129074A JP 6795553 B2 JP6795553 B2 JP 6795553B2
Authority
JP
Japan
Prior art keywords
speed
command
block
numerical control
control 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.)
Active
Application number
JP2018129074A
Other languages
English (en)
Other versions
JP2020009102A (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.)
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 JP2018129074A priority Critical patent/JP6795553B2/ja
Priority to DE102019207432.4A priority patent/DE102019207432A1/de
Priority to KR1020190061871A priority patent/KR102409653B1/ko
Priority to US16/427,855 priority patent/US11215972B2/en
Priority to CN201910590175.5A priority patent/CN110687869B/zh
Publication of JP2020009102A publication Critical patent/JP2020009102A/ja
Application granted granted Critical
Publication of JP6795553B2 publication Critical patent/JP6795553B2/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/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/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/404Numerical 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 control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • 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/182Numerical 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 the machine tool function, e.g. thread cutting, cam making, tool direction control
    • 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/4093Numerical 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 part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • 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
    • 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/416Numerical 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 control of velocity, acceleration or deceleration
    • G05B19/4163Adaptive control of feed or cutting velocity
    • 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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4183Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by data acquisition, e.g. workpiece identification
    • 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/35Nc in input of data, input till input file format
    • G05B2219/35349Display part, programmed locus and tool path, traject, dynamic locus

Landscapes

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

Description

本発明は、加工中に指令速度を変化させる数値制御装置、数値制御方法及び数値制御プログラムに関する。
従来、工作機械を制御するための加工プログラムにおいては、送り速度が初期設定され、一定の速度で加工が行われることが多かった。
また、加工プログラムでは、指令ブロックの単位で速度の指令が可能なため(例えば、特許文献1参照)、形状又は加工箇所に応じて変わる加工負荷に応じて、指令ブロック毎に速度指令を変更して加工時間を短縮し、加工効率の向上を図る場合がある。
特開2017−204072号公報
しかしながら、加減速が高速な機械は、速度の指令に素早く追従できるため、加工中に指令値が変化する場合、スムーズな速度変化とはならない。したがって、加減速の衝撃による加工負荷の急激な増大で切削振動等が発生し、これによる工具寿命及び加工面質の低下が課題となっていた。
また、加減速を制御して衝撃を抑制することもできるが、これにより加工時間が延びるため、短時間での加減速が設定される。すると、同一加工面であっても、速度が変化する箇所で異なる加工面質が不連続に発生し、加工面質不良と判断される場合があった。
本発明は、加工効率を上げつつ、加工面質の低下を抑制できる数値制御装置、数値制御方法及び数値制御プログラムを提供することを目的とする。
(1) 本発明に係る数値制御装置(例えば、後述の数値制御装置1)は、工作機械を制御するための加工プログラムを解析し、指定された座標に基づいて、指令ブロック毎の累積の移動距離を算出するプログラム解析部(例えば、後述のプログラム解析部11)と、前記指令ブロック毎の前記移動距離、及び指定された速度に基づいて、当該指令ブロックの始点及び終点における前記移動距離及び前記速度の組である制御点を生成する制御点生成部(例えば、後述の制御点生成部12)と、前記制御点から、前記移動距離に対する指令速度を定義したパラメトリック曲線を生成する指令速度生成部(例えば、後述の指令速度生成部13)と、生成された前記指令速度を補間単位で出力する指令速度出力部(例えば、後述の指令速度出力部14)と、を備える。
(2) (1)に記載の数値制御装置において、前記指令速度生成部は、所定の係数により前記指令速度を調整してもよい。
(3) (1)又は(2)に記載の数値制御装置において、前記パラメトリック曲線は、B−スプライン曲線、ベジェ曲線、又はNURBS(Non−Uniform Rational B−Spline)曲線のいずれかであってもよい。
(4) (1)から(3)のいずれかに記載の数値制御装置において、前記制御点生成部は、前後の制御点それぞれと速度が等しい制御点を省略してもよい。
(5) (4)に記載の数値制御装置において、前記制御点生成部は、前後の制御点それぞれと速度の差が指定された速度範囲の制御点を省略してもよい。
(6) 本発明に係る数値制御装置方法は、工作機械を制御するための加工プログラムを解析し、指定された座標に基づいて、指令ブロック毎の累積の移動距離を算出するプログラム解析ステップと、前記指令ブロック毎の前記移動距離、及び指定された速度に基づいて、当該指令ブロックの始点及び終点における前記移動距離及び前記速度の組である制御点を生成する制御点生成ステップと、前記制御点から、前記移動距離に対する指令速度を定義したパラメトリック曲線を生成する指令速度生成ステップと、生成された前記指令速度を補間単位で出力する指令速度出力ステップと、をコンピュータ(例えば、後述の数値制御装置1)が実行する。
(7) 本発明に係る数値制御プログラムは、工作機械を制御するための加工プログラムを解析し、指定された座標に基づいて、指令ブロック毎の累積の移動距離を算出するプログラム解析ステップと、前記指令ブロック毎の前記移動距離、及び指定された速度に基づいて、当該指令ブロックの始点及び終点における前記移動距離及び前記速度の組である制御点を生成する制御点生成ステップと、前記制御点から、前記移動距離に対する指令速度を定義したパラメトリック曲線を生成する指令速度生成ステップと、生成された前記指令速度を補間単位で出力する指令速度出力ステップと、をコンピュータ(例えば、後述の数値制御装置1)に実行させるためのものである。
本発明によれば、数値制御装置は、加工効率を上げつつ、加工面質の低下を抑制できる。
第1実施形態に係る加工プログラムを例示する図である。 第1実施形態に係る加工プログラムの指令ブロック毎に指定された速度の推移を例示する図である。 第1実施形態に係る加工プログラムに基づいて、指定された速度への加減速を従来の技術により制御した場合の速度の推移を例示する図である。 第1実施形態に係る数値制御装置が加工プログラムから生成したパラメトリック曲線に沿って、工作機械への指令速度を制御した場合の速度の推移を例示する図である。 第1実施形態に係る数値制御装置の機能構成を示す図である。 第1実施形態に係る指令ブロックと、累積の移動距離及び指定速度との対応付けを示す図である。 第1実施形態に係る制御点の生成方法を示すフローチャートである。 第1実施形態に係る制御点の生成例を示す図である。 第1実施形態に係る制御点及びB−スプライン曲線の生成例を示す図である。 第2実施形態に係るパラメトリック曲線の次数による変化を示す図である。 第2実施形態に係る加工プログラムにおける係数の指定方法を例示する図である。 第2実施形態に係る指令速度の調整結果を例示する図である。 第3実施形態に係る加工プログラムにおけるモーダル速度情報を例示する図である。 第3実施形態に係る加工プログラムの指令ブロックに記述された速度及びモーダル速度情報を用いて生成した制御点と、これらの制御点に基づくパラメトリック曲線とを例示する図である。 第3実施形態に係る加工プログラムから省略して生成された制御点と、これらの制御点に基づくパラメトリック曲線とを例示する図である。 第3実施形態に係る制御点の生成方法を示すフローチャートである。 第3実施形態に係る加工プログラムから生成され得る制御点のうち、いずれも省略しない場合の制御点の生成例を示す図である。 第3実施形態に係る加工プログラムから生成され得る制御点のうち、一部を省略した場合の制御点の生成例を示す図である。 第3実施形態に係る加工プログラムにおける、制御点の省略機能の指定方法を例示する図である。
[第1実施形態]
以下、本発明の第1実施形態について説明する。
本実施形態に係る数値制御装置1は、指令ブロック単位で各軸の位置を示す座標及び送り速度が指定された加工プログラムを実行し、工作機械を制御する。
数値制御装置1は、加工プログラムを実行する際に各指令ブロックを解析し、指定された座標まで、指定された速度に基づいて実際の送り速度の制御を行う。このとき、数値制御装置1は、指令ブロック毎に指定された座標から算出される累積の移動距離と、指定された速度とを対応付けた複数の制御点に対して、速度変化を緩やかにしたパラメトリック曲線を生成し、このパラメトリック曲線に沿って、移動距離に対する指令速度を出力する。
図1は、本実施形態に係る加工プログラムを例示する図である。
この例では、ブロック番号1で指定された原点から、ブロック番号2において座標(10.0,10.0)まで送り速度F1000で加工することが指定されている。同様に、ブロック番号3において座標(15.0,13.0)まで送り速度F2000で、ブロック番号4において座標(18.0,11.0)まで送り速度F2500で、ブロック番号5において座標(20.0,5.0)まで送り速度F1100で加工することが指定されている。
図2は、本実施形態に係る加工プログラムの指令ブロック毎に指定された速度の推移を例示する図である。
この例では、図1に示した加工プログラムから読み取れる、原点からの累積の移動距離に対して、指令ブロック毎に指定された速度が描画されている。
指定された速度の通りに工作機械を制御すると、指令ブロックが切り替わる位置、例えば、ブロック番号2からブロック番号3に切り替わる位置A、及びブロック番号3からブロック番号4に切り替わる位置B等)で速度が不連続に変化する。このため、これらの位置で加工負荷が急激に上昇し、工具寿命及び加工面質の低下が懸念される。
図3は、本実施形態に係る加工プログラムに基づいて、指定された速度への加減速を従来の技術により制御した場合の速度の推移を例示する図である。
この場合、指令速度の変化が図2の場合よりも緩やかとなり、加工負荷の急激な上昇は抑制されるが、加減速に掛かる時間に応じて加工に要する時間が長くなる。そこで、加減速に掛ける時間を短くすると、速度の変化に伴う指令ブロック間での加工面質の変化も急となるため、連続した面質が要求される場合に加工面質不良と判断されやすい。
図4は、本実施形態に係る数値制御装置1が加工プログラムから生成したパラメトリック曲線に沿って、工作機械への指令速度を制御した場合の速度の推移を例示する図である。
この例では、指令ブロックの始点及び終点に対応する制御点が設けられ、これらの制御点に基づいてパラメトリック曲線が描画されている。
この場合、指令速度の変化が緩やかになり、かつ、加工プログラムで指定された速度に基づく加工時間と比較して、速度が高い部分及び低い部分が生じ、同等の加工時間が維持される。
図5は、本実施形態に係る数値制御装置1の機能構成を示す図である。
数値制御装置1は、制御部10及び記憶部20を備えた情報処理装置である。
加工プログラムの指令ブロックで指定された座標及び速度からパラメトリック曲線を生成し、このパラメトリック曲線に沿って実際の指令速度を出力するために、制御部10は、プログラム解析部11と、制御点生成部12と、指令速度生成部13と、指令速度出力部14とを備える。これらの各機能部は、制御部10が記憶部20に格納された数値制御プログラムを読み込み実行することにより実現される。
プログラム解析部11は、工作機械を制御するための加工プログラムを記憶部20又は外部機器から読み込み解析する。具体的には、本実施形態において、プログラム解析部11は、加工プログラムを構成する指令ブロックのそれぞれから、終点座標及び速度の指定値を抽出する。
さらに、プログラム解析部11は、抽出した座標に基づいて、加工開始点から各指令ブロックの終点までの累積の移動量Bを算出し、指令ブロック毎に累積の移動距離B及び指定速度Fを取得する。
図6は、本実施形態に係る指令ブロックと、累積の移動距離及び指定速度との対応付けを示す図である。
各指令ブロックからは、座標及び速度の指定値が抽出され、ブロック番号に累積の移動距離と指定速度とが対応付けられる。
ここで、指令ブロック毎の移動距離ΔBは、各軸の移動量ΔAを用いて、
Figure 0006795553
と定義される。例えば、XYの2軸の指令の場合、
Figure 0006795553
である。したがって、指令ブロック毎に指定された座標から、
Figure 0006795553
と計算でき、累積の移動距離は、
=ΔB=0
=ΔB+ΔB=14.142
=ΔB+ΔB+ΔB=19.973
となる。
制御点生成部12は、指令ブロック毎の終点までの累積の移動距離B及び速度Fに基づいて、これらの指令ブロックの始点及び終点における累積の移動距離及び速度の組である制御点P=(Pbi,Pfi)を生成する。
図7は、本実施形態に係る制御点の生成方法を示すフローチャートである。
ステップS1において、プログラム解析部11は、加工プログラムの指令ブロックそれぞれの指定内容に基づいて、指令ブロック毎の累積の移動距離B及び速度Fを算出する。
ステップS2において、制御点生成部12は、制御点のインデックスi、及び指令ブロックのインデックスpを0に初期化する。
ステップS3において、制御点生成部12は、i(≧0)番目の制御点を、Pfi=F、Pbi=Bと計算する。
ステップS4において、制御点生成部12は、p+1番目の指令ブロック、すなわちBp+1及びFp+1があるか否かを判定する。この判定がYESの場合、処理はステップS5に移り、判定がNOの場合、制御点の生成が完了したので、処理は終了する。
ステップS5において、制御点生成部12は、現在(p番目)の指令ブロックと次(p+1番目)の指令ブロックとで指定速度が等しいか否かを判定する。この判定がYESの場合、処理はステップS8に移り、判定がNOの場合、処理はステップS6に移る。
ステップS6において、制御点生成部12は、次(p+1番目)の指令ブロックの始点に相当し現在(p番目)と速度が異なる制御点を生成するために、インデックスiをカウントアップする。
ステップS7において、制御点生成部12は、i番目の制御点を、Pfi=Fp+1、Pbi=Bと計算する。
ステップS8において、次(p+1番目)の指令ブロックの終点に相当する制御点を生成するために、インデックスi及びpをカウントアップする。その後、処理は、ステップS3に戻る。
図8は、本実施形態に係る制御点の生成例を示す図である。
この例では、各指令ブロックの指定速度がそれぞれ異なる場合を示している。
この場合、まず、ブロック番号1からは、加工開始点に対応する制御点P=(B,F)が生成される。
ブロック番号i(i≧2)からは、始点に対応する制御点P2i−1=(Bi−1,F)と、終点に対応する制御点P2i=(B,F)が生成される。
指令速度生成部13は、生成された制御点に基づいて、移動距離に対する指令速度を定義したパラメトリック曲線を生成する。
パラメトリック曲線は、例えば、B−スプライン曲線、ベジェ曲線、又はNURBS(Non−Uniform Rational B−Spline)曲線のいずれかであってよい。以下、パラメトリック曲線は、B−スプライン曲線であるものとして説明する。
B−スプライン曲線C(t)は、基底関数(ブレンディング関数)N (t)、制御点P、ノット(ノットベクトル)t、次数n、制御点の数m+1によって定義される。また、移動距離B(t)及び指令速度F(t)は、それぞれPbi及びPfiから次のように求められる。
Figure 0006795553
ここで、最初の制御点P及び最後の制御点Pを通過する開一様B−スプラインを得るためには、次のように、最初と最後にn+1個の多重ノットが設けられる。なお、ノットベクトルの数pは、p=m+n+1である。
=t=・・・=t=0
p−n=tp−n+1=・・・=t=1
図9は、本実施形態に係る制御点及びB−スプライン曲線の生成例を示す図である。
この例では、移動距離Bと速度Fとを軸とする座標系において、図8の制御点P〜Pが設けられている。例えば、ブロック番号3の指令ブロックにおける始点に相当する制御点Pは、座標(Pb3,Pf3)に設けられる。
これらの制御点に基づいて、指定された次数、例えば2次のB−スプライン曲線C(t)が作成される。
指令速度出力部14は、生成された指令速度を補間単位である所定の移動量毎に出力し、工作機械を制御する。
具体的には、指令速度出力部14は、補間単位毎に移動距離B(t)が測定されると、次のようにノットtの2次方程式の解としてtを算出し、tから指令速度F(t)を計算して出力する。なお、α、β、γは、制御点における移動距離Pbi及び与えられたB(t)から定まる係数である。
Figure 0006795553
次に、B−スプライン曲線の計算例を示す。
(計算例1: セグメント数L=1、次数n=2、制御点数m+1=3の場合)
,P,Pを制御点とし、両端のP及びPを通り、1セグメントからなる2次のB−スプライン曲線C(t)は、次の式で表される。なお、制御点数m+1、次数n及びセグメント数Lの関係は、m=n+L−1である。
Figure 0006795553
ここで、ノットベクトル{t,・・・,t}の数pは、p=m+n+1=5である。
開一様B−スプライン曲線を得るために、始点及び終点において、n+1=3個の多重ノットを設けると、ノットベクトルは{t,・・・,t}={0,0,0,1,1,1}となる。
また、定義域がt≦t<tなので、0次の基底関数は、t≦t<tのみ1となり、0次から2次の基底関数は、それぞれ次のように計算される。
Figure 0006795553
したがって、補間単位で移動距離B(t)が与えられると、指令速度F(t)は、次のようにノットtを介して計算される。
Figure 0006795553
(計算例2: セグメント数L=2、次数n=2、制御点数m+1=4の場合)
,P,P,Pを制御点とし、両端のP及びPを通り、2セグメントからなる2次のB−スプライン曲線C(t)は、次の式で表される。
Figure 0006795553
ここで、ノットベクトル{t,・・・,t}の数pは、p=m+n+1=6である。
開一様B−スプライン曲線を得るために、始点及び終点において、n+1=3個の多重ノットを設けると、ノットベクトルは{t,・・・,t}={0,0,0,1,2,2,2}となる。なお、多重ノット区間外で一様の変化をすることで、開一様B−スプライン曲線が得られ、非一様の変化又は多重をさせることで、各制御点の重みを変化させた非一様B−スプライン曲線が得られる。
また、定義域がt≦t<tなので、0次の基底関数は、次のようにt≦t<tのみ1となる。
Figure 0006795553
また、1セグメント目のノットtの範囲0≦t<1において、1次及び2次の基底関数は、それぞれ次のように計算される。
Figure 0006795553
また、2セグメント目のノットtの範囲1≦t<2において、1次及び2次の基底関数は、それぞれ次のように計算される。
Figure 0006795553
したがって、補間単位で移動距離B(t)が与えられると、指令速度F(t)は、ノットtを介してセグメント別に計算される。
すなわち、1セグメント目の0≦t<1では、移動距離B(t)に対して、指令速度F(t)が次のように計算される。
Figure 0006795553
また、2セグメント目の1≦t<2では、移動距離B(t)に対して、指令速度F(t)が次のように計算される。
Figure 0006795553
本実施形態によれば、数値制御装置1は、加工プログラムの指令ブロック毎に指定された移動距離及び速度に基づいて、この指令ブロックの始点位置及び終点位置に対応した累積の移動距離及び速度の組で表される制御点を生成する。そして、数値制御装置1は、これらの制御点から、移動距離に対する指令速度を定義したパラメトリック曲線を生成し、補間単位毎の移動距離に対応する指令速度をパラメトリック曲線に沿って出力する。
したがって、数値制御装置1は、加工効率を図るために指令速度を指令ブロック単位で変化させた加工プログラムを用いた場合に、加減速による衝撃を低減し、かつ、指定速度の変更箇所で加工面質に連続性を持たせることができる。この結果、数値制御装置1は、加工効率を上げつつ、加工面質の低下を抑制できる。
数値制御装置1は、パラメトリック曲線として、B−スプライン曲線、ベジェ曲線、又はNURBS曲線を用いて、適切な指令速度を算出できる。
[第2実施形態]
以下、本発明の第2実施形態について説明する。
第1の実施形態では、数値制御装置1は、パラメトリック曲線を用いて、速度変化を緩やかに制御した。
このとき、パラメトリック曲線の特性により、次数nを増加させることで、速度変化がより滑らかに、すなわち変化率が一定に近づいていく。一方、パラメトリック曲線で示される指令速度は、加工プログラムにより指定された速度からは乖離してしまう。
図10は、本実施形態に係るパラメトリック曲線の次数による変化を示す図である。
2次のB−スプライン曲線に比べて、5次のB−スプライン曲線では、指定速度を大きく上回ったり、逆に下回ったりする。例えば、破線の円で示した極大部分では、5次のB−スプライン曲線が指定速度を下回っている。
そこで、本実施形態では、指令速度生成部13は、所定の係数を乗じることにより指令速度を調整する。
具体的には、指令速度生成部13は、加工プログラムにおいて指定された係数aを用いて、次のように、指令速度F(t)を増減させる。
Figure 0006795553
図11は、本実施形態に係る加工プログラムにおける係数の指定方法を例示する図である。
パラメトリック曲線による速度制御機能をオンにする際(M400)、例えば、パラメータCにより次元nが指定され、パラメータAにより係数aが指定される。
この例では、「C5」により5次のパラメトリック曲線が生成され、「A110」により指令速度は110%に増加する。
図12は、本実施形態に係る指令速度の調整結果を例示する図である。
実線で示したグラフは、係数を用いない(A0)又は等倍する(A100)指定がされた場合のパラメトリック曲線である。
破線で示したグラフは、「A110」等により倍率が指定された場合のパラメトリック曲線であり、調整前に比べて、加工中の全域にわたって指令速度が高く調整される。
本実施形態によれば、数値制御装置1は、係数を用いて指令速度を調整することにより、高次のパラメトリック曲線を用いた場合に、指令速度の過度な低下又は上昇を抑制できる。この結果、数値制御装置1は、加工の効率性を高め、かつ、高品質な加工を実現できる。
[第3実施形態]
以下、本発明の第3実施形態について説明する。
第1実施形態及び第2実施形態では、指令ブロックそれぞれにおいて、速度が明示的に指定されていたが、加工プログラムにおける速度の指定方法はこれに限られない。複数の連続した指令ブロックで同一の速度が求められる場合、連続した最初の指令ブロックのみに速度の指定値が記述されてもよい。この場合、プログラム解析部11により、省略した指定速度がモーダル速度情報として抽出される。
図13は、本実施形態に係る加工プログラムにおけるモーダル速度情報を例示する図である。
例えば、ブロック番号2で指定された「F1000」がブロック番号3においても、モーダル速度情報として継続して用いられる。同様に、ブロック番号4で指定された「F1005」がブロック番号5において、ブロック番号6で指定された「F2000」がブロック番号7において、ブロック番号8で指定された「F2500」がブロック番号9において、ブロック番号10で指定された「F1000」がブロック番号11において、それぞれモーダル速度情報として継続して用いられる。
図14は、本実施形態に係る加工プログラムの指令ブロックに記述された速度及びモーダル速度情報を用いて生成した制御点と、これらの制御点に基づくパラメトリック曲線とを例示する図である。
図13の加工プログラムに基づいて制御点P〜P14が生成されると、モーダル速度情報、又はブロック番号4の「F1005」のように前ブロックからの変化が小さい速度情報があるために、略直線上に制御点が多数(3個以上)配置される。
このような配置の制御点に基づくパラメトリック曲線は、その特性上、局所的に横軸方向への直進性を持つ。したがって、図のように、5次のB−スプライン曲線であっても、急激な速度変化が認められ、さらに高次であっても同様の特徴が現れ、加工面質が低下するおそれがある。
そこで、本実施形態では、制御点生成部12は、制御点の生成に際して、前後の制御点の両方と速度が等しい制御点を省略する。そして、指令速度生成部13は、一部が省略された制御点に基づいてパラメトリック曲線を生成する。
このとき、制御点生成部12は、前後の制御点の両方との速度の差が指定された速度範囲内の制御点を省略してもよい。
図15は、本実施形態に係る加工プログラムから省略して生成された制御点と、これらの制御点に基づくパラメトリック曲線とを例示する図である。
この例では、図14に示した制御点P〜P14のうち、前後の制御点と速度が等しいか又は近似している制御点が省かれている。この結果、略直線上に並んだ制御点のうち、両端の制御点のみが残っている。
省略後の制御点P〜Pに基づくパラメトリック曲線には、図14に見られた横軸方向への直進性がなく、速度変化が緩やかとなっている。
図16は、本実施形態に係る制御点の生成方法を示すフローチャートである。
ステップS1〜S8は、第1実施形態のフローチャート(図7)と同様であるが、ステップS5aが変更され、ステップS9及びS10が追加されている。
ステップS5aにおいて、制御点生成部12は、所定範囲D以内の速度変化を、等しい場合と同様に扱う。すなわち、制御点生成部12は、現在(p番目)の指令ブロックと次(p+1番目)の指令ブロックとで指定速度の差がD以内か否かを判定する。
また、ステップS8においてインデックスi及びpをカウントアップした後、ステップS9において、制御点生成部12は、現在(p番目)の指令ブロックと指定速度の差がD以内である次(p+1番目)の指令ブロックがあるか否かを判定する。この判定がYESの場合、処理はステップS10に移り、判定がNOの場合、処理はステップS3に移る。
ステップS10において、制御点生成部12は、現在(p番目)の指令ブロックの終点に相当する制御点の生成を省略し、インデックスpをカウントアップする。その後、処理はステップS9に戻る。
図17は、本実施形態に係る加工プログラムから生成され得る制御点のうち、いずれも省略しない場合の制御点の生成例を示す図である。
この場合、図13の加工プログラムからは、指定速度が等しい又は近似した制御点が連続して生成されている。具体的には、制御点P〜P、制御点P〜P、制御点P〜P11、制御点P12〜P14は、それぞれ横軸方向の略直線上に生成されている。
図18は、本実施形態に係る加工プログラムから生成され得る制御点のうち、一部を省略した場合の制御点の生成例を示す図である。
この場合、図17で生成された制御点P〜P14のうち、P〜P、P、P10、P13が省略され、新たな制御点P〜Pが生成されている。
図19は、本実施形態に係る加工プログラムにおける、制御点の省略機能の指定方法を例示する図である。
パラメトリック曲線による速度制御機能をオンにする際(M400)、例えば、パラメータBにより制御点の省略機能のオン(B1)又はオフ(B0)が指定され、パラメータDにより省略する速度範囲が指定される。
この例では、「D10」により、±10mm/minの速度変化が無視される。
本実施形態によれば、数値制御装置1は、速度が等しい連続した制御点の一部を省略することにより、これらの制御点から生成されるパラメトリック曲線の横軸(移動距離)方向への直進性を低減し、速度変化が緩やかにできる。
したがって、数値制御装置1は、連続する複数の指令ブロックから同一の速度(記述された速度又はモーダル速度情報)が抽出され場合であっても、適切なパラメトリック曲線を生成できるため、加工効率を上げつつ、加工面質の低下を抑制できる。
また、数値制御装置1は、前後の制御点と速度が同一の制御点に加えて、速度の差が指定された範囲内の制御点を省略することにより、パラメトリック曲線の横軸方向への直進性をさらに低減し、速度変化を緩やかにできる。
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、本実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本実施形態に記載されたものに限定されるものではない。
数値制御装置1による数値制御方法は、ソフトウェアにより実現される。ソフトウェアによって実現される場合には、このソフトウェアを構成するプログラムが、コンピュータにインストールされる。また、これらのプログラムは、リムーバブルメディアに記録されてユーザに配布されてもよいし、ネットワークを介してユーザのコンピュータにダウンロードされることにより配布されてもよい。
1 数値制御装置
10 制御部
11 プログラム解析部
12 制御点生成部
13 指令速度生成部
14 指令速度出力部
20 記憶部

Claims (7)

  1. 工作機械を制御するための加工プログラムを解析し、指令ブロック毎に指定された座標に基づいて、当該指令ブロック毎の累積の移動距離を算出するプログラム解析部と、
    前記指令ブロック毎の前記累積の移動距離、及び当該指令ブロックに指定された速度に基づいて、当該指令ブロックの始点及び終点における前記累積の移動距離及び前記指定された速度の組である制御点を生成する制御点生成部と、
    前記制御点から、前記移動距離に対する前記工作機械への実際の指令速度を定義したパラメトリック曲線を生成する指令速度生成部と、
    生成された前記パラメトリック曲線に基づいて、前記指令速度を補間単位で出力する指令速度出力部と、を備える数値制御装置。
  2. 前記指令速度生成部は、所定の係数により前記指令速度を調整する請求項1に記載の数値制御装置。
  3. 前記パラメトリック曲線は、B−スプライン曲線、ベジェ曲線、又はNURBS(Non−Uniform Rational B−Spline)曲線のいずれかである請求項1又は請求項2に記載の数値制御装置。
  4. 前記制御点生成部は、前後の制御点それぞれと速度が等しい制御点を省略する請求項1から請求項3のいずれかに記載の数値制御装置。
  5. 前記制御点生成部は、前後の制御点それぞれと速度の差が指定された速度範囲の制御点を省略する請求項4に記載の数値制御装置。
  6. 工作機械を制御するための加工プログラムを解析し、指令ブロック毎に指定された座標に基づいて、当該指令ブロック毎の累積の移動距離を算出するプログラム解析ステップと、
    前記指令ブロック毎の前記累積の移動距離、及び当該指令ブロックに指定された速度に基づいて、当該指令ブロックの始点及び終点における前記累積の移動距離及び前記指定された速度の組である制御点を生成する制御点生成ステップと、
    前記制御点から、前記移動距離に対する前記工作機械への実際の指令速度を定義したパラメトリック曲線を生成する指令速度生成ステップと、
    生成された前記パラメトリック曲線に基づいて、前記指令速度を補間単位で出力する指令速度出力ステップと、をコンピュータが実行する数値制御方法。
  7. 工作機械を制御するための加工プログラムを解析し、指令ブロック毎に指定された座標に基づいて、当該指令ブロック毎の累積の移動距離を算出するプログラム解析ステップと、
    前記指令ブロック毎の前記累積の移動距離、及び当該指令ブロックに指定された速度に基づいて、当該指令ブロックの始点及び終点における前記累積の移動距離及び前記指定された速度の組である制御点を生成する制御点生成ステップと、
    前記制御点から、前記移動距離に対する前記工作機械への実際の指令速度を定義したパラメトリック曲線を生成する指令速度生成ステップと、
    生成された前記パラメトリック曲線に基づいて、前記指令速度を補間単位で出力する指令速度出力ステップと、をコンピュータに実行させるための数値制御プログラム。
JP2018129074A 2018-07-06 2018-07-06 数値制御装置、数値制御方法及び数値制御プログラム Active JP6795553B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2018129074A JP6795553B2 (ja) 2018-07-06 2018-07-06 数値制御装置、数値制御方法及び数値制御プログラム
DE102019207432.4A DE102019207432A1 (de) 2018-07-06 2019-05-21 Numeriksteuerung, Numeriksteuerverfahren und Numeriksteuerprogramm
KR1020190061871A KR102409653B1 (ko) 2018-07-06 2019-05-27 수치 제어 장치, 수치 제어 방법 및 수치 제어 프로그램
US16/427,855 US11215972B2 (en) 2018-07-06 2019-05-31 Numerical controller, numerical control method, and numerical control program
CN201910590175.5A CN110687869B (zh) 2018-07-06 2019-07-02 数值控制装置、数值控制方法以及计算机可读介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018129074A JP6795553B2 (ja) 2018-07-06 2018-07-06 数値制御装置、数値制御方法及び数値制御プログラム

Publications (2)

Publication Number Publication Date
JP2020009102A JP2020009102A (ja) 2020-01-16
JP6795553B2 true JP6795553B2 (ja) 2020-12-02

Family

ID=68943911

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018129074A Active JP6795553B2 (ja) 2018-07-06 2018-07-06 数値制御装置、数値制御方法及び数値制御プログラム

Country Status (5)

Country Link
US (1) US11215972B2 (ja)
JP (1) JP6795553B2 (ja)
KR (1) KR102409653B1 (ja)
CN (1) CN110687869B (ja)
DE (1) DE102019207432A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240034603A (ko) 2022-09-07 2024-03-14 조대래 와이어컷 방전가공기를 이용하여 변형밀핀 형상을 가공하기 위한 nc 프로그램 생성 방법
CN116795044B (zh) * 2023-08-16 2023-11-14 通用技术集团机床工程研究院有限公司 速度规划方法、装置、机床控制系统和存储介质

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4514814A (en) * 1982-09-07 1985-04-30 General Electric Company Multi-processor axis control
JP3391036B2 (ja) * 1992-12-11 2003-03-31 三菱電機株式会社 エレベーターの運転装置
JP3068989B2 (ja) * 1993-08-31 2000-07-24 三菱電機株式会社 数値制御装置
JPH07146704A (ja) * 1993-11-25 1995-06-06 Nippon Telegr & Teleph Corp <Ntt> 速度教示方法
JP2933119B2 (ja) * 1995-05-09 1999-08-09 ファナック株式会社 数値制御装置
CN1105953C (zh) * 1998-05-28 2003-04-16 三菱电机株式会社 数控装置用加工程序的文件变换方法
JP2003015714A (ja) * 2001-06-29 2003-01-17 Toshiba Tungaloy Co Ltd 数値制御工作機械
JP2005352876A (ja) * 2004-06-11 2005-12-22 Toyoda Mach Works Ltd Ncデータ作成装置、5軸nc工作機械の制御装置及びclデータ作成装置
JP2006011808A (ja) * 2004-06-25 2006-01-12 Mori Seiki Co Ltd Ncプログラム生成装置
JP4467625B2 (ja) * 2008-03-31 2010-05-26 三菱電機株式会社 数値制御装置および数値制御方法
CN103797430B (zh) * 2011-09-15 2016-01-13 三菱电机株式会社 数控装置、加工系统以及数控方法
JP5326015B2 (ja) * 2012-02-20 2013-10-30 ファナック株式会社 加工曲線作成機能を有する数値制御装置
JP6410826B2 (ja) * 2014-08-12 2018-10-24 三菱電機株式会社 数値制御装置
TWI554856B (zh) * 2015-10-30 2016-10-21 財團法人工業技術研究院 加工程式轉換裝置及方法
JP6356658B2 (ja) * 2015-12-25 2018-07-11 ファナック株式会社 プレスの調整が容易な数値制御装置
JP6644630B2 (ja) 2016-05-10 2020-02-12 Dmg森精機株式会社 加工プログラム処理装置およびこれを備えた多軸加工機
US11402818B2 (en) * 2016-12-12 2022-08-02 Fanuc Corporation Numerical controller and data structure

Also Published As

Publication number Publication date
DE102019207432A1 (de) 2020-01-09
KR20200005435A (ko) 2020-01-15
US11215972B2 (en) 2022-01-04
KR102409653B1 (ko) 2022-06-16
JP2020009102A (ja) 2020-01-16
US20200012259A1 (en) 2020-01-09
CN110687869B (zh) 2024-04-26
CN110687869A (zh) 2020-01-14

Similar Documents

Publication Publication Date Title
CN108549328B (zh) 自适应速度规划方法及系统
CN110874082B (zh) 工件拐角的切割路径确定方法、设备和存储介质
Pateloup et al. Bspline approximation of circle arc and straight line for pocket machining
CN106814694B (zh) 一种高速高精度的参数曲线前瞻插补方法
JP5326015B2 (ja) 加工曲線作成機能を有する数値制御装置
WO2011052800A1 (ja) 工具経路の生成方法および装置
CN107817764A (zh) 一种基于s曲线加减速算法的nurbs曲线双向自适应插补算法
JP6795553B2 (ja) 数値制御装置、数値制御方法及び数値制御プログラム
JP6309986B2 (ja) 数値制御工作機械の加工時間予測装置
CN111857052A (zh) 机器学习装置、数值控制系统以及机器学习方法
KR19980086349A (ko) 가공능률을 향상시키기 위해 가공기의 능력을 고려하여 커터경로를 규정하는 개별점들을 결정하기 위한 방법
CN112486101B (zh) Nurbs曲线自适应前瞻插补方法
JP7012229B2 (ja) 数値制御用プログラム作成装置、数値制御工作システムおよび数値制御工作プログラム
JP2007094936A (ja) 数値制御装置
JP2018073097A (ja) 工具経路生成装置、工具経路生成方法及び工具経路生成プログラム
CN109643102B (zh) 指令值生成装置
US7444202B2 (en) Method for smoothing polylines in NC programs
CN104020719A (zh) 速度敏感点分段nurbs曲线的s型加减速控制插补算法
CN112346411A (zh) 使用双nurbs刀具轨迹叶轮数控加工速度控制方法及装置
JP2004171268A (ja) 数値制御装置の指令作成装置
JP2017113825A (ja) ワイヤ放電加工機
CN114237152B (zh) 一种用于激光切割的柔性速度规划及位移补偿方法
CN114296400B (zh) 一种用于激光切割高速插补的自适应前瞻处理方法
Wu et al. Research on Adaptive Feedrate Planning of NURBS Curves for CNC System
CN114019914A (zh) 终点速度的校正方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191209

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200218

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200313

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200811

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200907

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: 20201013

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201112

R150 Certificate of patent or registration of utility model

Ref document number: 6795553

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150