JP5439548B2 - 加工指令変換プログラム、記憶媒体及び加工指令変換装置 - Google Patents

加工指令変換プログラム、記憶媒体及び加工指令変換装置 Download PDF

Info

Publication number
JP5439548B2
JP5439548B2 JP2012147468A JP2012147468A JP5439548B2 JP 5439548 B2 JP5439548 B2 JP 5439548B2 JP 2012147468 A JP2012147468 A JP 2012147468A JP 2012147468 A JP2012147468 A JP 2012147468A JP 5439548 B2 JP5439548 B2 JP 5439548B2
Authority
JP
Japan
Prior art keywords
machine axis
axis direction
path
conversion
transfer
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.)
Expired - Fee Related
Application number
JP2012147468A
Other languages
English (en)
Other versions
JP2014010678A (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.)
Shin Nippon Koki KK
Original Assignee
Shin Nippon Koki KK
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 Shin Nippon Koki KK filed Critical Shin Nippon Koki KK
Priority to JP2012147468A priority Critical patent/JP5439548B2/ja
Priority to PCT/JP2013/003400 priority patent/WO2014002380A1/ja
Publication of JP2014010678A publication Critical patent/JP2014010678A/ja
Application granted granted Critical
Publication of JP5439548B2 publication Critical patent/JP5439548B2/ja
Expired - Fee Related 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/4155Numerical 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 programme execution, i.e. part programme or machine function execution, e.g. selection of a programme

Description

本発明は、各種工作機械に用いられる加工指令変換プログラム、記憶媒体及び加工指令変換装置に関するものである。
従来、各種工作機械では、ワークやそのワークを加工するための工具を移送する移送装置を加工指令(NCプログラム)に従って数値制御することによりワークの加工が行われている。下記特許文献1には、そのような移送装置の数値制御を行う数値制御装置が開示されている。
特許文献1に示された数値制御装置では、加工プログラムからワーク上に固定された座標系における工具の位置座標の変化を媒介変数の関数として表すツールパスを求めるとともに、そのツールパスから移送装置の各駆動軸毎の駆動軸パスを求め、その求めた各駆動軸毎の駆動軸パスに基づいて当該各駆動軸における基準単位時間(サイクルタイム)毎の移動量を示す指令パルスを求め、その求めた指令パルスを各駆動軸に対応する移送装置のモータへ出力することにより各移送装置の制御を行っている。また、この数値制御装置では、駆動軸パスに対してブロック滑らか補間とコーナー滑らか補間とを行い、それらの滑らか補間後の駆動軸パスからパルス補間により前記指令パルスを求めている。なお、前記ブロック滑らか補間は、多数の指令点を直線で結んだ形状の駆動軸パスを滑らかな曲線に補間し、前記コーナー滑らか補間は、駆動軸パスのうち所定の指令点においてその前後で位置座標の変化量が大きく変化しているようなコーナー部を滑らかに曲がるコーナーとすべく当該コーナー部を補間するものである。
しかし、この特許文献1に記載の技術では、位置座標の変化量が微小な間隔で繰り返し急変しているような思わぬ異常データ(ノイズ等)が駆動軸パスに含まれている場合には、その異常データの部分を滑らかに補間することは困難である。そして、駆動軸パスにこのような異常データが含まれており、その駆動軸パスに従って移送装置が制御された場合には、移送装置の動作が当該異常データに対応する部分で急変し、加工機械に機械ショックが発生する。このため、駆動軸パス中の異常データを補正することが重要な課題となる。
そこで、下記特許文献2には、このような課題を解決することが可能な数値制御装置が示されている。
この特許文献2の数値制御装置では、機械ショックの要因となる異常データを補正することが可能な補間後加減速処理を行っている。具体的には、この数値制御装置では、加工プログラムを実行形式に変換したパスを補間処理(パルス補間)することによって各駆動軸毎のサーボモータに出力する移動指令を求め、その求めた移動指令に対して加減速処理を行っている。この補間後加減速処理によれば、駆動軸パス中の異常データに対応する部分がパルス補間によって得られた移動指令中に含まれていても、その移動指令中の前記異常データに対応する部分を補正することができ、機械ショックの発生を抑制することが可能である。
特開2008−225825号公報 特開2010−140312号公報
しかしながら、上記の補間後加減速処理を行うと、ワークの加工形状の誤差が発生するという欠点がある。具体的には、特許文献2における補間後加減速では、移動指令のうち加減速処理を適用する部分を限定していないため、加減速処理が移動指令のうち異常データに対応する部分以外の部分にも適用され得る。例えば、移動指令のうち加工プログラムにおいて実際に工具又はワークの加速又は減速を指示する部分と対応している部分に当該加減速処理が行われると、その部分に基づいて実施される工具又はワークの加速又は減速が緩和され、その結果、実際に加工されたワークの形状に加工プログラムが指示する加工形状に対する誤差が発生する。このため、このような補間後加減速処理に伴う加工形状の誤差を低減することが求められている。しかし、補間後加減速処理を行う数値制御装置が組み込まれた工作機械は、既に多くの生産現場で使用されており、例えば、その数値制御装置で用いられている制御プログラム全体を前記加工形状の誤差を低減するための改変を施した新たな制御プログラムに入れ替えることは、費用面及び作業面において負担が大きい。また、現在使用されている制御プログラムに対して前記誤差の低減のための改変を行おうとすると、そのような改変作業は非常に困難であるとともに、長期間に亘って工作機械を停止させることになり、生産ロスが甚大なものとなる。
本発明は、上記の課題を解決するためになされたものであり、費用面及び作業面における負担を軽減しつつ、短期間で、補間後加減速処理に伴って生じるワークの加工形状の誤差の低減のための処置を行えるようにすることである。
上記目的を達成するために、本発明による加工指令変換プログラムは、ワーク又はそのワークを加工する工具を対象物としてその対象物を前記ワークを加工するために移送する複数の移送装置を備え、前記各移送装置は、前記対象物を支持するための支持体と、その支持体を特定の機械軸方向に移送することにより前記対象物を移送する移送部とをそれぞれ有する工作機械に設けられる演算処理装置であって、前記各支持体を対応する前記各機械軸方向において所定のサイクルタイム間隔の各時刻に移送すべき位置を示す機械軸パスを求め、その求めた機械軸パスから前記各機械軸方向における前記各時刻間のブロックでの前記各支持体の移送量を示す移送パルスを求め、その求めた前記各機械軸方向毎の各移送パルスを対応する機械軸方向について設定された特定の時定数の区間幅を有する分配区間内に分配して積算する補間後加減速処理を行うことによって補間後加減速処理後の移送パルスを求め、その求めた補間後加減速処理後の移送パルスに応じて前記各移送装置の前記移送部による前記支持体の移送を制御する数値制御装置との間でデータの授受が可能となるように構成された演算処理装置に適用される加工指令変換プログラムであって、前記ワークの加工時の前記工具の移動軌跡を前記各時刻毎の指令点の前記各機械軸方向についての座標で表す加工指令に基づいて、前記工具を前記移動軌跡に従って移動させるために前記各支持体を前記各時刻に移送すべき前記各機械軸方向の位置を示す基準機械軸パスを導出するパス導出ステップと、導出した前記各機械軸方向についての前記基準機械軸パスに特定の変換処理を行うことによって前記各機械軸方向についての変換後機械軸パスを導出するパス変換ステップと、前記各機械軸方向についての前記変換後機械軸パスを前記加工指令の形式で表す変換後加工指令に変換する加工指令変換ステップと、前記数値制御装置が前記変換後加工指令に基づいて前記各機械軸方向についての前記機械軸パスを求めるように前記数値制御装置へ前記変換後加工指令を出力する出力ステップとを、前記演算処理装置に実行させ、前記パス変換ステップでは、前記特定の変換処理として、前記各機械軸方向についての前記補間後加減速処理後の移送パルスから得られる機械軸パスと対応する前記機械軸方向についての前記基準機械軸パスとの誤差の近似値に相当する補正量を前記各機械軸方向毎に算出し、その算出した前記各機械軸方向毎の補正量で前記誤差を相殺する方向に前記各機械軸方向についての前記基準機械軸パスを補正した前記変換後機械軸パスを算出する演算処理を前記演算処理装置に実行させ、前記演算処理装置に前記特定の変換処理として実行させる前記演算処理では、前記各機械軸方向についての前記基準機械軸パスに前記補間後加減速処理に相当する処理をそれぞれ行い、その処理後の各機械軸方向についての機械軸パスと対応する前記機械軸方向についての前記基準機械軸パスとの誤差である基準誤差を前記各機械軸方向毎に算出し、その算出した前記各機械軸方向毎の前記基準誤差を前記各機械軸方向毎の前記補正量とし、前記補間後加減速処理に相当する処理では、前記数値制御装置が前記各移送パルスを分配する分配形式に相当する分配形式を表す分配関数を用いて前記基準機械軸パスの一次微分関数である速度関数を分配するとともにその分配した値を積分し、その積分によって得られる関数をさらに積分することによって前記補間後加減速処理に相当する処理後の機械軸パスを算出する処理を前記演算処理装置に実行させる
この加工指令変換プログラムでは、各機械軸方向についての補間後加減速処理後の移送パルスから得られる機械軸パスと対応する機械軸方向についての前記基準機械軸パスとの誤差の近似値に相当する補正量を各機械軸方向毎に算出し、その算出した各機械軸方向毎の補正量で前記誤差を相殺する方向に各機械軸方向についての基準機械軸パスを補正した変換後機械軸パスを算出する演算処理と、その演算処理によって算出された各機械軸方向についての変換後機械軸パスを前記変換後加工指令に変換する処理と、数値制御装置がその変換後加工指令に基づいて各機械軸方向についての機械軸パスを求めるように数値制御装置へ当該変換後加工指令を出力する処理とを演算処理装置に実行させるため、数値制御装置には、演算処理装置から、補間後加減速処理によって生じる各機械軸方向毎の誤差を予め見込んでその誤差を相殺する方向に各機械軸方向毎に補正した変換後加工指令を入力することができる。このため、数値制御装置が補間後加減速処理を行ったときには、その補間後加減速処理によって生じる全ての機械軸方向についての誤差を微小なものとすることができ、その結果、補間後加減速処理に伴って生じるワークの加工形状の誤差を低減することができる。さらに、この加工指令変換プログラムは、数値制御装置との間でデータの授受が可能となるように構成された演算処理装置に適用されるだけで補間後加減速処理によって生じる誤差を低減可能であるから、既存の工作機械の数値制御装置で現在用いられている制御プログラムはそのまま使用することができる。このため、数値制御装置で用いられている制御プログラム全体を入れ替えたり、その制御プログラムの改変作業を行ったりするような場合に比べて、費用面及び作業面における負担を軽減しつつ、短期間で、補間後加減速処理によって生じる誤差を低減するための処置を実施することができる。
上記加工指令変換プログラムにおいて、前記補間後加減速処理に相当する処理では、前記時刻をtとし、当該処理を行う前記機械軸方向について設定された前記時定数の半分の値をaとし、t−aからt+aに亘る区間内の各時刻Tにおける前記基準機械軸パスの一次微分関数である速度関数をP’(T)とし、前記数値制御装置が前記移送パルスを分配する分配形式を表し且つ次式(1)を満たす分配関数をf(T)とした場合に、前記補間後加減速処理に相当する処理後の機械軸パスの一次微分関数である速度関数Q’(t)を次式(2)に基づいて算出し、その算出した速度関数Q’(t)を積分することによって、前記補間後加減速処理に相当する処理後の機械軸パスQ(t)を算出する処理を前記演算処理装置に実行させることが好ましい。
Figure 0005439548
Figure 0005439548
この構成によれば、演算処理装置に実行させる補間後加減速処理に相当する処理を具体的に構成することができる。また、この構成によれば、補間後加減速処理に相当する処理後の機械軸パスQ(t)と前記基準機械軸パスとの誤差を算出するときに、その機械軸パスQ(t)と基準機械軸パスとの間で互いに減算する点同士の時刻の対応付けを行うことなく、補間後加減速処理に相当する処理時の基準機械軸パスの速度の分配形式に起因して生じる位相誤差の要素を機械軸パスQ(t)と基準機械軸パスとの誤差から排除することができる。具体的には、仮に、基準機械軸パスのある区間中の各時刻における速度をその時刻以降の時定数に相当する区間幅を有する分配区間内にそれぞれ分配し、その分配した各分配値を積算して速度関数を算出し、その算出した速度関数をさらに積分するような算出式に従って、補間後加減速処理に相当する処理を行った後の機械軸パスを算出する場合には、補間後加減速処理に相当する処理後の機械軸パスにおける時刻が上記基準機械軸パスの速度の分配形式に起因して基準機械軸パスの各時刻に対して後にずれる。このため、この時刻のずれを考慮せずに補間後加減速処理に相当する処理後の機械軸パスから基準機械軸パスを減算して誤差を求めると、その誤差の中に位相誤差が含まれることになる。このような場合に、位相誤差の要素を排除しようとすると、補間後加減速処理に相当する処理後の機械軸パスと基準機械軸パスとの間で前記時刻のずれを解消するための対応付け(時刻調整)を行った上で、処理後の機械軸パスと基準機械軸パスとの誤差を求める必要があり、その対応付けの処理が煩雑である。これに対して、本構成では、上記式(1)を満たす分配関数により、t−aからt+aに亘る区間内の各時刻Tにおける速度関数P’(T)をその各時刻Tを中心として前後に均等に広がるT−aからT+aまでの分配区間内にそれぞれ分配するため、上記のような基準機械軸パスの速度の分配形式に起因した後への時刻のずれは生じない。このため、分配区間内に分配した基準機械軸パスの速度の分配値P’(T)・f(t−T)を上記式(2)に従って積分して速度関数Q’(t)を算出し、さらにその算出した速度関数Q’(t)を積分することによって補間後加減速処理に相当する処理後の機械軸パスQ(t)を算出すると、等速での移送を指示する区間では、処理後の機械軸パスQ(t)と基準機械軸パスとの間で同一時刻tでの座標値が一致する。その結果、処理後の機械軸パスQ(t)と基準機械軸パスとの誤差を算出するときに、機械軸パスQ(t)と基準機械軸パスとの間で互いに減算する点同士の時刻の対応付けを行うことなく、その誤差から基準機械軸パスの速度の分配形式に起因する位相誤差の要素を排除することができる。
上記加工指令変換プログラムにおいて、前記各機械軸方向についてそれぞれ設定された複数の前記時定数の中には他の機械軸方向についての時定数と異なる値の時定数が含まれ、前記数値制御装置が、前記補間後加減速処理において、前記各機械軸方向における前記各ブロックの前記移送パルスを分配するときに、その分配対象である機械軸方向について設定された前記時定数に相当する区間幅だけそのブロックの終点から後に及ぶ前記分配区間内にその移送パルスを分配する場合に、前記加工指令変換ステップでは、前記変換後機械軸パスを前記加工指令の形式で表す仮変換加工指令に一旦変換する仮変換ステップと、前記仮変換加工指令を構成する各指令点の前記各機械軸方向についての座標を調整して前記変換後加工指令とする調整ステップとを前記演算処理装置に実行させ、前記調整ステップでは、前記補間後加減速処理において前記各機械軸方向毎の前記時定数に応じた前記分配区間に前記各機械軸方向における前記移送パルスが分配されることによって生じる前記各機械軸方向毎の前記補間後加減速処理後の前記移送パルス同士の前記時刻の遅れの差が相殺されるように前記仮変換加工指令の前記各指令点の前記各機械軸方向についての座標を調整する処理を前記演算処理装置に実行させることが好ましい。
この構成によれば、各機械軸方向毎の時定数の差に起因して補間後加減速処理の際に生じる各機械軸方向同士の間での時刻の遅れの差を解消することができ、その結果、当該各機械軸方向同士の間での時刻の遅れの差に起因する各機械軸方向同士の間での位相誤差の発生を防止することができる。
本発明による記憶媒体は、上記加工指令変換プログラムが記憶された記憶媒体であって、当該記憶媒体に記憶されている前記加工指令変換プログラムを前記演算処理装置に導入するために前記演算処理装置に結合される。
この構成によれば、当該記憶媒体を演算処理装置に結合させるだけで、上記加工指令変換プログラムを演算処理装置に導入可能な状態になるため、既存の演算処理装置に対して上記加工指令変換プログラムを導入する作業を容易に実施することができる。
本発明による加工指令変換装置は、ワーク又はそのワークを加工する工具を対象物としてその対象物を前記ワークを加工するために移送する複数の移送装置を備え、前記各移送装置は、前記対象物を支持するための支持体と、その支持体を特定の機械軸方向に移送することにより前記対象物を移送する移送部とをそれぞれ有する工作機械に設けられ、前記各支持体を対応する前記各機械軸方向において所定のサイクルタイム間隔の各時刻に移送すべき位置を示す機械軸パスを求め、その求めた機械軸パスから前記各機械軸方向における前記各時刻間のブロックでの前記各支持体の移送量を示す移送パルスを求め、その求めた前記各機械軸方向毎の各移送パルスを対応する機械軸方向について設定された特定の時定数の区間幅を有する分配区間内に分配して積算する補間後加減速処理を行うことによって補間後加減速処理後の移送パルスを求め、その求めた補間後加減速処理後の移送パルスに応じて前記各移送装置の前記移送部による前記支持体の移送を制御する数値制御装置に適用される加工指令変換装置であって、前記ワークの加工時の前記工具の移動軌跡を前記各時刻毎の指令点の前記各機械軸方向についての座標で表す加工指令に基づいて、前記工具を前記移動軌跡に従って移動させるために前記各支持体を前記各時刻に移送すべき前記各機械軸方向の位置を示す基準機械軸パスを導出し、その導出した前記各機械軸方向についての前記基準機械軸パスに特定の変換処理を行うことによって前記各機械軸方向についての変換後機械軸パスを導出し、その導出した前記各機械軸方向についての前記変換後機械軸パスを前記加工指令の形式で表す変換後加工指令に変換し、前記数値制御装置が当該変換後加工指令に基づいて前記各機械軸方向についての前記機械軸パスを求めるように前記数値制御装置へ当該変換後加工指令を出力する変換部を備え、前記変換部は、前記特定の変換処理として、前記各機械軸方向についての前記補間後加減速処理後の移送パルスから得られる機械軸パスと対応する前記機械軸方向についての前記基準機械軸パスとの誤差の近似値に相当する補正量を前記各機械軸方向毎に算出し、その算出した前記各機械軸方向毎の補正量で前記誤差を相殺する方向に前記各機械軸方向についての前記基準機械軸パスを補正した前記変換後機械軸パスを算出する演算処理を行い、前記変換部は、前記特定の変換処理として行う前記演算処理では、前記各機械軸方向についての前記基準機械軸パスに前記補間後加減速処理に相当する処理をそれぞれ行い、その処理後の前記各機械軸方向についての機械軸パスと対応する前記機械軸方向についての前記基準機械軸パスとの誤差である基準誤差を前記各機械軸方向毎に算出し、その算出した前記各機械軸方向毎の前記基準誤差を前記各機械軸方向毎の前記補正量とし、前記補間後加減速処理に相当する処理では、前記数値制御装置が前記各移送パルスを分配する分配形式に相当する分配形式を表す分配関数を用いて前記基準機械軸パスの一次微分関数である速度関数を分配するとともにその分配した値を積分し、その積分によって得られる関数をさらに積分することによって前記補間後加減速処理に相当する処理後の機械軸パスを算出する演算処理を行う
この加工指令変換装置では、上記加工指令変換プログラムと同様の理由により、費用面及び作業面における負担を軽減しつつ、短期間で、補間後加減速処理に伴って生じるワークの加工形状の誤差の低減のための処置を実施することができる。
上記加工指令変換装置において、前記変換部は、前記補間後加減速処理に相当する処理では、前記時刻をtとし、当該処理を行う前記機械軸方向について設定された前記時定数の半分の値をaとし、t−aからt+aに亘る区間内の各時刻Tにおける前記基準機械軸パスの一次微分関数である速度関数をP’(T)とし、前記数値制御装置が前記各移送パルスを分配する分配形式を表し且つ次式(3)を満たす分配関数をf(T)とした場合に、前記補間後加減速処理に相当する処理後の機械軸パスの一次微分関数である速度関数Q’(t)を次式(4)に基づいて算出し、その算出した速度関数Q’(t)を積分することによって、前記補間後加減速処理に相当する処理後の機械軸パスQ(t)を算出する演算処理を行うことが好ましい。
Figure 0005439548
Figure 0005439548
この構成によれば、上記式(1),(2)を用いた演算処理を演算処理装置に実行させる加工指令変換プログラムと同様の理由により、補間後加減速処理に相当する処理後の機械軸パスQ(t)と前記基準機械軸パスとの誤差を算出するときに、機械軸パスQ(t)と基準機械軸パスとの間で互いに減算する点同士の時刻の対応付けを行うことなく、補間後加減速処理に相当する処理時の基準機械軸パスの速度の分配形式に起因して生じる位相誤差の要素を機械軸パスQ(t)と基準機械軸パスとの誤差から排除することができる。
上記加工指令変換装置において、前記各機械軸方向についてそれぞれ設定された複数の前記時定数の中には他の機械軸方向についての時定数と異なる値の時定数が含まれ、前記数値制御装置が、前記補間後加減速処理において、前記各機械軸方向における前記各ブロックの前記移送パルスを分配するときに、その分配対象である機械軸方向について設定された前記時定数に相当する区間幅だけそのブロックの終点から後に及ぶ前記分配区間内にその移送パルスを分配する場合には、前記変換部は、前記各機械軸方向についての前記変換後機械軸パスを前記変換後加工指令に変換するときに、前記変換後機械軸パスを前記加工指令の形式で表す仮変換加工指令に一旦変換した後、前記仮変換加工指令を構成する各指令点の前記各機械軸方向についての座標を調整して前記変換後加工指令とし、前記仮変換加工指令を構成する前記各指令点の座標を調整するときには、前記変換部は、前記補間後加減速処理において前記各機械軸方向毎の前記時定数に応じた前記分配区間に前記各機械軸方向における前記移送パルスが分配されることによって生じる前記各機械軸方向毎の前記補間後加減速処理後の前記移送パルス同士の前記時刻の遅れの差が相殺されるように前記仮変換加工指令の前記各指令点の前記各機械軸方向についての座標を調整することが好ましい。
この構成によれば、各機械軸方向毎の時定数の差に起因して補間後加減速処理の際に生じる各機械軸方向同士の間での時刻の遅れの差を解消することができ、その結果、当該各機械軸方向同士の間での時刻の遅れの差に起因する各機械軸方向同士の間での位相誤差の発生を防止することができる。
以上説明したように、本発明によれば、費用面及び作業面における負担を軽減しつつ、短期間で、補間後加減速処理に伴って生じるワークの加工形状の誤差の低減のための処置を行うことができる。
本発明の一実施形態による加工指令変換プログラム及び加工指令変換装置が適用される工作機械の一例を示す斜視図である。 本発明の一実施形態による加工指令変換装置及びその加工指令変換装置が適用される数値制御装置の機能ブロック図である。 一例による基準機械軸パス(指令パス)が指示する対象物の軌跡を示す図である。 基準機械軸パス(指令パス)が図3に示すような形状のものである場合に、その基準機械軸パスと、補間後加減速処理後の移送パルスから得られる機械軸パスと、変換部加減速処理後の機械軸パス(変換後機械軸パス)との相対関係のイメージを示す模式図である。 本発明の一実施形態の加工指令変換装置によるNCプログラムの変換処理プロセスを示すフローチャートである。 図5中の変換後機械軸パスを導出するステップS6のサブルーチンの内容を示すフローチャートである。 本発明の一実施形態における変換部加減速処理において、基準機械軸パスの速度関数の分配対象となるブロックの区間幅が時定数よりも大きい場合の分配のイメージを示す図である。 本発明の一実施形態における変換部加減速処理において、基準機械軸パスの速度関数の分配対象となるブロックの区間幅が時定数よりも小さい場合の分配のイメージを示す図である。 本発明の一実施形態における変換部加減速処理において、基準機械軸パスの速度関数の分配対象となるブロックの区間幅が時定数よりも小さい場合の分配のイメージを示す図である。 本発明の他の実施形態における変換部加減速処理において、基準機械軸パスの速度関数の分配対象となるブロックの区間幅が時定数よりも大きい場合の分配のイメージを示す図である。 本発明の他の実施形態における変換部加減速処理において、基準機械軸パスの速度関数の分配対象となるブロックの区間幅が時定数よりも小さい場合の分配のイメージを示す図である。 本発明の他の実施形態における変換部加減速処理において、基準機械軸パスの速度関数の分配対象となるブロックの区間幅が時定数よりも小さい場合の分配のイメージを示す図である。 本発明の一実施形態の変形例による演算処理装置及び記憶媒体とそれらが適用される数値制御装置の機能ブロック図である。
以下、本発明の実施形態を図面を参照して説明する。
まず、図1を参照して、本発明の一実施形態による加工指令変換プログラム及び加工指令変換装置が適用される工作機械の一例について説明する。
この工作機械は、いわゆる門型フレームを備えた工作機械であり、テーブル102a上にセットされた被加工物であるワーク500をその上で動かす工具104により切削加工するものである。工作機械は、ワーク移送装置102と、工具104と、主軸ヘッド106と、揺動装置108と、回動装置110と、第1鉛直移送装置112と、水平移送装置114と、第2鉛直移送装置116とを備えている。なお、ワーク移送装置102、揺動装置108、回動装置110、第1鉛直移送装置112、水平移送装置114及び第2鉛直移送装置116は、ワーク500又は工具104を対象物としてその対象物をワーク500を加工するために移送するものであり、それぞれ、本発明の「移送装置」の概念に含まれるものである。
ワーク移送装置102は、ワーク500を下から支持するためのテーブル102aと、テーブル102aを水平面内において特定方向に延びるX軸方向に移送することによりそのテーブル102a上に設置されたワークをX軸方向に移送するテーブル移送部102bとを有する。テーブル移送部102bは、サーボモータ102c(図2参照)を有しており、そのサーボモータ102cが発する動力によって作動し、テーブル102aを移送する。
工具104は、ワーク500を切削加工するためのものであり、主軸ヘッド106によって保持される。主軸ヘッド106は、保持した工具104をその軸回りに回転させる。この主軸ヘッド106によって回転させられた工具104がワーク500に当接することによってワーク500の加工が行われる。
揺動装置108は、テーブル102aの上面に平行な水平方向に延びる軸を中心としたA軸方向に工具104を揺動させる。揺動装置108は、揺動支持体108aと、揺動支持体移送部108bとを有する。揺動支持体108aは、主軸ヘッド106を支持しているとともに、A軸方向に揺動可能となるように回動装置110に支持されている。揺動支持体移送部108bは、揺動支持体108aをA軸方向に揺動させることにより、当該揺動支持体108aとともに主軸ヘッド106及び工具104をA軸方向に揺動させる。揺動支持体移送部108bは、サーボモータ108c(図2参照)を有しており、そのサーボモータ108cが発する動力によって作動し、揺動支持体108aを揺動させる。
回動装置110は、揺動装置108による工具104の揺動中心となる軸に対して垂直な方向に延びる軸を中心とした回動方向であるC軸方向に工具104、主軸ヘッド106及び揺動装置108を回動させる。回動装置110は、回動支持体110aと、回動支持体移送部110bとを有する。回動支持体110aは、揺動装置108を支持しているとともに、C軸方向に回動可能となるように第1鉛直移送装置112に支持されている。回動支持体移送部110bは、回動支持体110aをC軸方向に回動させることにより、当該回動支持体110aとともに揺動装置108、主軸ヘッド106及び工具104をC軸方向に回動させる。回動支持体移送部110bは、サーボモータ110c(図2参照)を有しており、そのサーボモータ110cが発する動力によって作動し、回動支持体110aを回動させる。
第1鉛直移送装置112は、鉛直方向に延びるZ軸に沿って工具104、主軸ヘッド106、揺動装置108及び回動装置110を移送する。第1鉛直移送装置112は、ラム112aと、ラム移送部112bとを有する。ラム112aは、テーブル102aの上方に配置され、回動装置110を支持しているとともに、Z軸方向に移動可能となるように水平移送装置114に支持されている。ラム移送部112bは、ラム112aをZ軸方向に移送することにより、当該ラム112aとともに回動装置110、揺動装置108、主軸ヘッド106及び工具104をZ軸方向に移送する。ラム移送部112bは、サーボモータ112c(図2参照)を有しており、そのサーボモータ112cが発する動力によって作動し、ラム112aを移送する。
水平移送装置114は、X軸とZ軸の両方に直交するY軸に沿って工具104、主軸ヘッド106、揺動装置108、回動装置110及び第1鉛直移送装置112を移送する。水平移送装置114は、サドル114aと、サドル移送部114bとを有する。サドル114aは、第1鉛直移送装置112を支持しているとともに、Y軸方向に移動可能となるようにクロスレール116aに支持されている。サドル移送部114bは、サーボモータ114cを有しており、そのサーボモータ114cが発する動力によって作動し、サドル114aを移送する。
第2鉛直移送装置116は、Z軸と平行なW軸に沿って、工具104、主軸ヘッド106、揺動装置108、回動装置110、第1第1鉛直移送装置112及び水平移送装置114を移送する。第2鉛直移送装置116は、クロスレール116aと、クロスレール移送部116bとを有する。クロスレール116aは、水平移送装置114を支持しているとともに、W軸方向に移動可能となっている。クロスレール移送部116bは、サーボモータ116cを有しており、そのサーボモータ116cが発する動力によって作動し、クロスレール116aを移送する。
上記X軸、A軸、C軸、Z軸、Y軸及びW軸は、それぞれ、本発明の「機械軸」の概念に含まれるものである。また、テーブル102a、揺動支持体108a、回動支持体110a、ラム112a、サドル114a及びクロスレール116aは、それぞれ、本発明の「支持体」の概念に含まれるものである。以下、場合によっては、簡略化のために、これらテーブル102a、揺動支持体108a、回動支持体110a、ラム112a、サドル114a及びクロスレール116aを、支持体102a,108a,110a,112a,114a,116aという。上記各移送部102b,108b,110b,112b,114b,116bは、それぞれ、本発明の「移送部」の概念に含まれるものである。上記各移送部102b,108b,110b,112b,114b,116bのサーボモータ102c,108c,110c,112c,114c,116cは、数値制御装置200から対応する各機械軸方向(X軸方向、A軸方向、C軸方向、Z軸方向、Y軸方向、W軸方向)についての移送パルスがそれぞれ入力されることにより、その入力された移送パルスが示す各機械軸方向への各サイクルタイム毎の移送量に従って各支持体102a,108a,110a,112a,114a,116aを対応する機械軸方向へ移送するように作動する。そして、各支持体102a,108a,110a,112a,114a,116aが対応する各機械軸方向へ移送されることによって、工具104が、ワーク500に対して相対移動されてそのワーク500を切削加工するようになっている。
以上のような工作機械には、後述のCLデータ(カッターロケーションデータ)を供給する加工データ供給装置150と、工作機械によるワーク500の加工を数値制御する数値制御装置200と、加工データ供給装置150から供給されるCLデータからNCプログラムを読み取るとともにそのNCプログラムに特定の変換処理を施与してその変換処理後のNCプログラムを数値制御装置200へ出力する加工指令変換装置2とが付設されている。加工指令変換装置2には、本実施形態による加工指令変換プログラムが組み込まれている。以下、これらの加工データ供給装置150、数値制御装置200及び加工指令変換装置2の構成について説明する。
加工データ供給装置150は、ワーク500の加工時に工具104をワーク500に対してどのように動かすかを規定するCLデータを供給するものである。この加工データ供給装置150は、パーソナルコンピュータ等の外部端末からなり、いわゆるCAD/CAM(Computer Aided Design / Computer Aided Manufacturing)システムが組み込まれている。加工データ供給装置150は、CAD/CAMシステムによって作成されたCLデータを供給する。
数値制御装置200は、ワーク500の加工時のワーク500又は工具104の移動軌跡を指示するNCプログラムに基づいた各種演算処理を行って、各機械軸方向における各支持体102a,108a,110a,112a,114a,116aの所定のサイクルタイム間隔の各時刻間の移送量を示す移送パルスを導出し、その移送パルスを各移送部102b,108b,110b,112b,114b,116bのサーボモータ102c,108c,110c,112c,114c,116cへ出力することによって各移送部102b,108b,110b,112b,114b,116bによる各支持体102a,108a,110a,112a,114a,116aの移送を制御するものである。
具体的には、数値制御装置200は、加工指令変換装置2が後述のように導出して当該数値制御装置200に入力する変換後NCプログラムに基づいて、工具104がそのNCプログラムが示す移動軌跡に従ってワーク500に対して相対的に移送されるように各支持体102a,108a,110a,112a,114a,116aを対応する各機械軸方向(X軸方向、A軸方向、C軸方向、Z軸方向、Y軸方向、W軸方向)において所定のサイクルタイム間隔の各時刻に移送すべき位置を示す機械軸パスを求める。なお、NCプログラムは、本発明の「加工指令」の概念に含まれるものであり、変換後NCプログラムは、本発明の「変換後加工指令」の概念に含まれるものである。また、数値制御装置200は、導出した機械軸パスから各サイクルタイム毎の移送パルスを求めるパルス補間を行い、そのパルス補間によって求めた各移送パルスを特定の時定数の区間幅を有する分配区間内に分配して積算する補間後加減速処理(パルス補間後の加減速処理)を行う。さらに、数値制御装置200は、補間後加減速処理後の移送パルスを各移送部102b,108b,110b,112b,114b,116bのサーボモータ102c,108c,110c,112c,114c,116cに出力することによってその各移送部102b,108b,110b,112b,114b,116bによる支持体102a,108a,110a,112a,114a,116aの移送を制御する。
本実施形態による加工指令変換装置2は、上記のような加工データ供給装置150及び数値制御装置200に適用され、数値制御装置200が用いるNCプログラムを前記補間後加減速処理によって生じる誤差が低減する方向に事前に変換するための変換処理を行うものであり、既存の数値制御工作機械にオプション的に適用されることも可能である。
具体的には、加工指令変換装置2は、加工データ供給装置150との間でデータの授受が可能となるように加工データ供給装置150と接続されるとともに、数値制御装置200との間でデータの授受が可能となるように数値制御装置200に対して接続された外部端末としての演算処理装置によって構成される。加工指令変換装置2には、いわゆるポストプロセッサのシステムと本実施形態の加工指令変換プログラムが組み込まれており、当該加工指令変換装置2は、CLデータからのNCプログラムの導出と、その導出したNCプログラムの変換処理(後述)とを行う。加工指令変換装置2としては、例えば、数値制御装置200で行われる演算処理のうちの一部の処理内容を変更したり、新たな処理を付加したりするために用いられるいわゆるカスタマーズボードが利用される。なお、NCプログラムの導出及び変換処理専用に設置されて数値制御装置200に接続される演算処理装置を加工指令変換装置2として用いてもよい。加工指令変換装置2は、変換部4と、メモリ5とを備えている。
変換部4は、各種演算処理を行う演算部であり、加工データ供給装置150から供給されるCLデータを読み込むとともにそのCLデータからNCプログラムを読み取る。具体的には、変換部4は、CLデータを数値制御装置200が使用可能なデータ形式にしたNCプログラムを求める。そして、変換部4は、導出したNCプログラムに基づいて、工具104を当該NCプログラムが示す移動軌跡に従って移動させるために各支持体102a,108a,110a,112a,114a,116aを各時刻に移送すべき各機械軸方向の位置を示す基準機械軸パスを数値制御装置200が行う機械軸パスの導出方法と同じ導出方法によって導出する。また、変換部4は、導出した各機械軸方向についての基準機械軸パスに特定の変換処理を行うことによって各機械軸方向についての変換後機械軸パスを導出し、その導出した各機械軸方向についての変換後機械軸パスをNCプログラムと同じ形式で表す変換後NCプログラムに変換する処理を行う。
変換部4が実行する変換後機械軸パスを導出するための前記特定の変換処理としては、各機械軸方向についての基準機械軸パスの後述するブロックの各終点のうち変換後基準パスとの誤差が補正境界値以下である点については、数値制御装置200による各機械軸方向についての補間後加減速処理後の移送パルスから得られる機械軸パスと対応する機械軸方向についての基準機械軸パスとの誤差の近似値に相当する補正量を各機械軸方向毎に算出し、その算出した各機械軸方向毎の補正量で、前記補間後加減速処理後の移送パルスから得られる機械軸パスと基準機械軸パスとの誤差を相殺する方向(打ち消す方向)に各機械軸方向についての基準機械軸パスを補正する演算処理が行われる。また、前記特定の変換処理として、各機械軸方向についての基準機械軸パスの後述するブロックの各終点のうち変換後基準パスとの誤差が補正境界値を超えている点については、その点の前後の直近の2つの指令点についての補正量から比例配分によって補正量を算出し、その算出した補正量で上記と同様に基準機械軸パスを補正する演算処理が行われる。
基準機械軸パスから得られる工具104の軌跡が、例えば、図3に示すようなXY平面上の円を示すものである場合には、仮に、数値制御装置200がこの基準機械軸パスをパルス補間して移送パルスを求め、その求めた移送パルスを補間後加減速処理して補間後加減速処理後の移送パルスを求めた場合にその補間後加減速処理後の移送パルスから得られる機械軸パスに基いて指示される工具104の軌跡は、図4に示すように基準機械軸パスから得られる軌跡の径方向内側にずれる。変換部4は、このずれを発生させる、各機械軸方向(X軸、Y軸)についての補間後加減速処理後の移送パルスから得られる機械軸パスと基準機械軸パスとの誤差の近似値に相当する補正量を各機械軸方向(X軸、Y軸)毎に算出してその算出した各機械軸方向毎の補正量で当該誤差を相殺する方向に各機械軸方向(X軸、Y軸)についての基準機械軸パスをそれぞれ補正する。これにより、変換部4は、例えば図4に示すような工具104の軌跡が得られる変換後機械軸パスを算出する。すなわち、図4に示す形態では、変換後機械軸パスから得られる工具104の軌跡は、結果的に、基準機械軸パスから得られる工具104の軌跡を径方向外側に補正した軌跡となる。
また、変換部4は、各機械軸方向についてそれぞれ設定された複数の時定数の中に他の機械軸方向についての時定数と異なる値の時定数が含まれている場合には、各機械軸方向についての変換後機械軸パスを変換後NCプログラムに変換するときに、変換後機械軸パスをNCプログラムの形式で表す仮変換NCプログラムに一旦変換した後、その仮変換NCプログラムを構成する各指令点の各機械軸方向についての座標を調整することによって変換後NCプログラムを導出する。具体的には、変換部4は、仮変換NCプログラムを構成する各指令点の座標を調整するときには、補間後加減速処理において各機械軸方向毎の時定数に応じた分配区間に各機械軸方向における移送パルスが分配されることによって生じる各機械軸方向毎の補間後加減速処理後の移送パルス同士の時刻の遅れの差が相殺されるように仮変換NCプログラムの各指令点の各機械軸方向についての座標を調整する。
本実施形態による加工指令変換プログラムは、変換部4に組み込まれており、変換部4が実行する各種処理(演算処理)は、この加工指令変換プログラムの命令に従って実行されるようになっている。変換部4が行う演算処理の詳細については、後述する。
また、変換部4は、数値制御装置200が変換後NCプログラムに基づいて各機械軸方向についての機械軸パスを求めるように数値制御装置200へ変換後NCプログラムを出力する。数値制御装置200が入力された変換後NCプログラムから機械軸パスを求めてパルス補間を行い、補間後加減速処理を行った後の移送パルスから得られる機械軸パスは、基準機械軸パスに近似したものとなり、基準機械軸パスに対する誤差は許容できる程度の微小なものとなる。
メモリ5は、変換部4が機械軸パスを補正するために用いる補正量等の各種データや設定値を記憶するものである。
次に、図5及び図6のフローチャートを参照して、加工指令変換装置2が行う処理について詳しく説明する。
当該処理では、まず、加工指令変換装置2の変換部4が、加工データ供給装置150から供給されるCLデータを読み込み、そのCLデータからNCプログラムを導出する(ステップS2)。
次に、変換部4は、導出したNCプログラムから各機械軸方向についての基準機械軸パスを導出する(ステップS4)。具体的には、変換部4が読み取るNCプログラムは、ワーク500の加工時の工具104の移動軌跡を所定のサイクルタイム間隔の各時刻毎の指令点の座標で表されており、変換部4は、このNCプログラムを逆運動学関係式を用いて変換することにより、前記各時刻に各支持体102a,108a,110a,112a,114a,116aを対応する機械軸方向において移送すべき位置を表す基準機械軸パスを導出する。
次に、変換部4は、導出した各機械軸方向についての基準機械軸パスに変換処理を行うことによって各機械軸方向についての変換後機械軸パスを導出する(ステップS6)。変換部4は、前記変換処理として、各機械軸方向についての基準機械軸パスに補間後加減速処理に相当する処理(以下、変換部加減速処理という)をそれぞれ行い、その処理後の各機械軸方向についての機械軸パスと対応する機械軸方向についての基準機械軸パスとの誤差である基準誤差を各機械軸方向毎に算出し、その算出した各機械軸方向毎の基準誤差を、各機械軸方向についての補間後加減速処理後の移送パルスから得られる機械軸パスと対応する機械軸方向についての基準機械軸パスとの誤差の近似値に相当する補正量とし、その各機械軸方向毎の補正量で前記誤差を相殺する(打ち消す)方向に各機械軸方向についての基準機械軸パスを補正することによって各機械軸方向についての変換後機械軸パスを導出する演算処理を行う。このとき、変換部4は、図6に示すフローチャートに沿った演算処理を行う。以下、この演算処理について具体的に説明する。
まず、変換部4は、以下のような演算処理からなる変換部加減速処理を各機械軸方向についての基準機械軸パスに対してそれぞれ行う(ステップS22)。なお、説明を簡略にするために、以下、1つの機械軸方向の基準機械軸パスの変換部加減速処理に絞って説明するが、他の全ての機械軸方向の基準機械軸パスについてもその各機械軸方向毎に同様の変換部加減速処理が行われる。
変換部4は、基準機械軸パスP(t)を所定の時間間隔(サイクルタイム)t[i−1]≦t≦t[i]毎の複数のブロックPi(t) (i=1,2,3,4,…)に分割する。そして、変換部4は、その分割した各ブロックPi(t)毎に速度関数Qi’(t)を算出する。詳しくは、変換部4は、基準機械軸パスP(t)の所定のブロックPi(t)内におけるある時刻をtとし、変換部加減速処理を行う対象の機械軸方向について設定された特定の時定数(数値制御装置200が用いる時定数と同じ時定数)をTiとし、その時定数Tiの半分の値をaとし、数値制御装置200が補間後加減速処理において移送パルスを分配する分配形式を表し且つ次式(5)を満たす分配関数をf(T)とし、変換部加減速処理後の前記ブロックPi(t)に対応する機械軸パスをQi(t)とし、t−aからt+aに亘る分配対象区間内の各時刻Tにおける基準機械軸パスP(t)の速度関数をP’(T)とした場合に、変換部加減速処理後の前記所定のブロックPi(t)の時刻tによる一次微分関数である速度関数Qi’(t)を次式(6)に基づいて算出する。
Figure 0005439548
Figure 0005439548
なお、本実施形態では、数値制御装置200が移送パルスを分配するときに直線型の分配形式(移送パルスを分配区間内全体に亘って均等に分配する形式)で分配を行うため、その分配形式に対応する分配関数f(T)は、次式(7)で表される直線型の分配関数である。
f(T)=1/2a・・・(7)
ただし、当該式(7)において、時刻Tの範囲は、−a≦T≦aである。
上記式(6)によって求められる速度関数Qi’(t)は、その速度関数に対応するブロックPi(t)の区間幅t[i+1]−t[i]が時定数Ti=2aよりも大きい場合と小さい場合とで異なった形で表される。その各場合における速度関数Qi’(t)は、以下の通りである。
ブロックPi(t)の区間幅t[i+1]−t[i]が時定数Ti=2aよりも大きい場合には、t[i]−a<t[i]<t[i]+a<t[i+1]−a<t[i+1]<t[i+1]+aの関係が成り立つ(図7参照)。この場合におけるブロックPi(t)内の基準機械軸パスP(t)の速度関数Pi’(T)は、図7中の太線で表される。この場合において、速度関数Qi’(t)は、下記のt[i]−aからt[i]+aまでの区間の速度関数qi11’(t)と、t[i]+aからt[i+1]−aまでの区間の速度関数qi12’(t)と、t[i+1]−aからt[i+1]+aまでの区間の速度関数qi13’(t)とに細分化される。
t[i]−aからt[i]+aまでの区間の速度関数qi11’(t)は、次式(8)で表される。
Figure 0005439548
t[i]+aからt[i+1]−aまでの区間の速度関数qi12’(t)は、次式(9)で表される。
Figure 0005439548
t[i+1]−aからt[i+1]+aまでの区間の関数qi13’(t)は、次式(10)で表される。
Figure 0005439548
次に、ブロックPi(t)の区間幅t[i+1]−t[i]が時定数Ti=2aよりも小さい場合には、その区間幅t[i+1]−t[i]が時定数Ti=2aよりも小さく且つ時定数Tiの半分の値aよりも大きい場合と、区間幅t[i+1]−t[i]が時定数Tiの半分の値aよりも小さい場合とに分類される。図8は、ブロックPi(t)の区間幅t[i+1]−t[i]が時定数Ti=2aよりも小さく且つ時定数Tiの半分の値aよりも大きい場合を示しており、この場合には、t[i]−a<t[i]<t[i+1]−a<t[i]+a<t[i+1]<t[i+1]+aの関係が成り立つ。また、図9は、ブロックPi(t)の区間幅t[i+1]−t[i]が時定数Ti=2aの半分の値aよりも小さい場合を示しており、この場合には、t[i]−a<t[i+1]−a<t[i]<t[i+1]<t[i]+a<t[i+1]+aの関係が成り立つ。これらの場合におけるブロックPi(t)内の基準機械軸パスP(t)の速度関数Pi’(T)は、図8及び図9中の太線で表される。そして、これらの場合において、速度関数Qi’(t)は、下記のt[i]−aからt[i+1]−aまでの区間の速度関数qi21’(t)と、t[i+1]−aからt[i]+aまでの区間の速度関数qi22’(t)と、t[i]+aからt[i+1]+aまでの区間の速度関数qi23’(t)とに細分化される。
t[i]−aからt[i+1]−aまでの区間の関数qi21’(t)は、次式(11)で表される。
Figure 0005439548
t[i+1]−aからt[i]+aまでの区間の関数qi22’(t)は、次式(12)で表される。
Figure 0005439548
t[i]+aからt[i+1]+aまでの区間の関数qi23’(t)は、次式(13)で表される。
Figure 0005439548
そして、変換部4は、以上のように算出した各ブロック毎の速度関数Qi’(t)が繋がるようにそれらの速度関数Qi’(t)を積算することによって全体の速度関数Q’(t)を算出し、その算出した全体の速度関数Q’(t)を積分することによって変換部加減速処理後の機械軸パスQ(t)を算出する。
その後、変換部4は、算出した各機械軸方向についての変換部加減速処理後の機械軸パスQ(t)から対応する機械軸方向についての基準機械軸パスP(t)を減じることによって、各機械軸方向についての変換部加減速処理後の機械軸パスQ(t)と基準機械軸パスP(t)との誤差である基準誤差を算出する(ステップS24)。このとき、変換部4は、前記各ブロックPi(t)の終点毎に基準誤差を算出する。具体的には、変換部4は、各ブロックPi(t)の終点毎の基準誤差e[i]を次式(14)によって算出する。
e[i]=Q(t[i])−P(t[i])・・・(14)
なお、本実施形態の変換部4による変換部加減速処理では、上記数式(5),(6)に示されているように、時刻tの前後に亘る分配対象区間[t−a,t+a]内の各時刻Tにおける速度関数P’(T)をT−aからT+aに亘る区間内に分配関数f(T)に従って分配したときの時刻tへの分配値P’(T)・f(t−T)を、t−aからt+aまでの区間に亘って積分している。しかし、数値制御装置200による補間後加減速処理では、サイクルタイム毎の各時刻間のブロックの移送パルスをそのブロックの終点に対応する時刻以降で時定数に等しい区間幅を有する分配区間内に分配するため、上記の数式(5),(6)の代わりに以下の数式(15),(16)を用いて各ブロック毎の速度関数Qi’(t)を算出し、その算出した各ブロック毎の速度関数Qi’(t)を積算して全体の速度関数Q’(t)を求め、その求めた全体の速度関数Q’(t)を積分することによって変換部加減速処理後の機械軸パスQ(t)を算出するのが、上記の分配方法を用いた補間後加減速処理に、より直接的に対応する算出方法である。
Figure 0005439548
Figure 0005439548
上記数式(15),(16)は、時刻tの前の分配対象区間[t−2a,t]内の各時刻Tにおける速度関数P’(T)をTからT+2aに亘る区間内に分配関数f(T)に従って分配するときの時刻tへの分配値P’(T)・f(t−T)を、t−2aからtまでの区間に亘って積分することで速度関数Qi’(t)を算出するためのものである。ただし、この数式(15),(16)によって各ブロックPi(t)毎の速度関数Qi’(t)を算出し、その算出した速度関数Qi’(t)から各ブロックPi(t)毎の変換部加減速処理後の機械軸パスQi(t)を求める場合には、その求めたブロックの変換部加減速処理後の機械軸パスQi(t)における時刻tは、基準機械軸パスP(t)の対応するブロックPi(t)における時刻tから後にずれる。このため、この時刻tのずれを考慮せずに、変換部加減速処理後の機械軸パスQ(t)と基準機械軸パスP(t)との基準誤差e[i]を上記式(14)によって求めると、その求めた基準誤差e[i]の中に位相誤差が含まれることになる。この位相誤差は、基準機械軸パスP(t)のうち対象物の移送の加減速を指示する箇所のみならず等速での移送を指示する箇所においても生じる。このような位相誤差は、各機械軸方向についての時定数が同じである場合には、ワーク500の加工形状に誤差を生じさせる要因とはならないため、求める基準誤差e[i]の中から排除してもよい。
ただし、上記式(15),(16)によって算出した各ブロックPi(t)毎の速度関数Qi’(t)から変換部加減速処理後の機械軸パスQi(t)を求める場合に、基準誤差e[i]から当該位相誤差の要素を排除しようとすると、変換部加減速処理後の機械軸パスQi(t)と基準機械軸パスP(t)の対応するブロックPi(t)との間でずれた時刻tの対応付けをした上で上記式(14)による基準誤差e[i]の算出を行う必要があり、この時刻tの対応付けが煩雑な処理となる。このため、本実施形態では、上記式(5),(6)を用いた変換部加減速処理を採用している。上記式(5),(6)を用いた変換部加減速処理では、各時刻Tにおける速度関数P’(T)をその時刻Tを中心として前後に均等な区間[T−a,T+a]内に均等に分配するので、基準機械軸パスP(t)のうち等速での移送を指示する領域では、変換部加減速処理後の機械軸パスQi(t)と基準機械軸パスP(t)の対応するブロックPi(t)との間で時刻tのずれが生じない。このため、上記のような変換部加減速処理後の機械軸パスQi(t)と基準機械軸パスP(t)の対応するブロックPi(t)との間でずれた時刻tの対応付けを行うことなく、上記式(14)によって基準誤差e[i]を求めても、その求めた基準誤差e[i]から上記位相誤差の要素を排除することができる。
なお、上記式(15),(16)を用いて算出される速度関数Qi’(t)は、具体的には、以下のように表される。
基準機械軸パスP(t)のブロックPi(t)の区間幅t[i+1]−t[i]が時定数Ti=2aよりも大きい場合には、t[i]<t[i]+a<t[i]+2a<t[i+1]<t[i+1]+a<t[i+1]+2aの関係が成り立つ(図10参照)。この場合におけるブロックPi(t)内の基準機械軸パスP(t)の速度関数Pi’(T)は、図10中の太線で表される。この場合において、速度関数Qi’(t)は、下記のt[i]からt[i]+2aまでの区間の速度関数qi31’(t)と、t[i]+2aからt[i+1]までの区間の速度関数qi32’(t)と、t[i+1]からt[i+1]+2aまでの区間の速度関数qi33’(t)とに細分化される。
t[i]からt[i]+2aまでの区間の速度関数qi31’(t)は、次式(17)で表される。
Figure 0005439548
t[i]+2aからt[i+1]までの区間の速度関数qi32’(t)は、次式(18)で表される。
Figure 0005439548
t[i+1]からt[i+1]+2aまでの区間の速度関数qi33’(t)は、次式(19)で表される。
Figure 0005439548
次に、ブロックPi(t)の区間幅t[i+1]−t[i]が時定数Ti=2aよりも小さい場合には、その区間幅t[i+1]−t[i]が時定数Ti=2aよりも小さく且つ時定数Tiの半分の値aよりも大きい場合と、区間幅t[i+1]−t[i]が時定数Tiの半分の値aよりも小さい場合とに分類される。図11は、ブロックPi(t)の区間幅t[i+1]−t[i]が時定数Ti=2aよりも小さく且つ時定数Tiの半分の値aよりも大きい場合を示しており、この場合には、t[i]<t[i]+a<t[i+1]<t[i]+2a<t[i+1]+a<t[i+1]+2aの関係が成り立つ。また、図12は、ブロックPi(t)の区間幅t[i+1]−t[i]が時定数Ti=2aの半分の値aよりも小さい場合を示しており、この場合には、t[i]<t[i+1]<t[i]+a<t[i+1]+a<t[i]+2a<t[i+1]+2aの関係が成り立つ。これらの場合におけるブロックPi(t)内の基準機械軸パスP(t)の速度関数Pi’(T)は、図11及び図12中の太線で表される。そして、これらの場合において、速度関数Qi’(t)は、下記のt[i]からt[i+1]までの区間の速度関数qi41’(t)と、t[i+1]からt[i]+2aまでの区間の速度関数qi42’(t)と、t[i]+2aからt[i+1]+2aまでの区間の速度関数qi43’(t)とに細分化される。
t[i]からt[i+1]までの区間の速度関数qi41’(t)は、次式(20)で表される。
Figure 0005439548
t[i+1]からt[i]+2aまでの区間の速度関数qi42’(t)は、次式(21)で表される。
Figure 0005439548
t[i]+2aからt[i+1]+2aまでの区間の速度関数qi43’(t)は、次式(22)で表される。
Figure 0005439548
上記式(8)〜(10)と上記式(17)〜(19)とを比較してみると、上記式(8)〜(10)で得られる速度関数qi11’(t),qi12’(t),qi13’(t)は、上記式(17)〜(19)で得られる速度関数qi31’(t),qi32’(t),qi33’(t)の時刻tを時定数Tiの半分の値aだけ後にずらした速度関数であることが判る。また、上記式(11)〜(13)と上記式(20)〜(22)とを比較してみると、上記式(11),(13)で得られる速度関数qi21’(t),qi23’(t)は、上記式(20),(22)で得られる速度関数qi41’(t),qi43’(t)の時刻tを時定数Tiの半分の値aだけ後にずらした速度関数であることが判る。これらの時定数Tiの半分の値aの分の時刻の差は、上記した速度関数Pi’(T)の分配形式の差に起因して生じるものである。
そして、変換部4が上記式(5)〜(14)に基づいて算出する基準誤差e[i]は、数値制御装置200による補間後加減速処理が行われた場合にその補間後加減速処理後の移送パルスから得られる機械軸パスと基準機械軸パスとの誤差からワーク500の加工形状に影響を及ぼす位相誤差の要素を排除した値と実質的に等しくなる。以下、この点について説明する。
数値制御装置200は、入力されるNCプログラムから機械軸パス(指令パス)を求め、その求めた機械軸パスをパルス補間することによって移送パルスを導出する。数値制御装置200が導出する機械軸パスをp(t)とし、サイクルタイムをΔt秒とし、時定数をA=n・Δt(秒)とし、起動後の最初の0番目のサイクル、すなわち時刻0から時刻Δtまでの間のサイクルをサイクル(0)とし、第i番目のサイクル、すなわち時刻i・Δtから時刻(i+1)・Δtまでのサイクルをサイクル(i)とすると、サイクル(i)における移送量を示す移送パルスΔp(i)は、次式(23)で表せる。
Δp(i)=p((i+1)・Δt)−p(i・Δt)・・・(23)
そして、数値制御装置200は、導出した移送パルスに対して直線型の分配関数を用いた補間後加減速処理を行う。直線型の分配関数を用いた補間後加減速処理では、サイクル(i)の移送パルスΔp(i)をサイクル(i)からサイクル(i+n−1)までの間の時定数Aに等しい長さを有する分配区間内の各サイクルに(p((i+1)・Δt)−p(i・Δt))/nずつ均等に分配するという分配方法に従って全てのサイクルの移送パルスを分配し、その後、各サイクル毎に移送パルスの分配値を積算することによって、補間後加減速処理後の移送パルスを算出する。このことから、補間後加減速処理後の第j番目のサイクル(j)の移送パルスΔq[j]は、サイクル(j−n+1)からサイクル(j)までの各サイクルの移送パルスΔp[i](i=j−n+1,j−n+2,・・・・,j−2,j−1,j)を1/n倍した各分配値を積算することによって求められる。数値制御装置200は、具体的には次式(24)によって補間後加減速処理後の移送パルスΔq[j]を算出する。
Figure 0005439548
この補間後加減速処理後の移送パルスΔq[j]は、サイクル(j)におけるサイクルタイムΔt秒の間の移送量に相当するため、上記式(24)の両辺をΔtで除することによって、サイクル(j)における平均速度が求められる。すなわち、次式(25)によってサイクル(j)における平均速度が求められる。
Figure 0005439548
ここで、時定数A=n・Δtであることから1/n=1/(A・Δt)と表すことができ、j・Δtを時刻t、i・Δtを時刻Tとすると、上記式(25)を式変形して次式(26)のように表せる。
Figure 0005439548
この数式(26)は、サイクル(i)における平均速度(p(T+Δt)−p(T))/ΔtをA・Δtの区間幅を有する分配区間内に均等に分配したときの分配値を、i=j−n+1のサイクルからi=jのサイクルまでの各サイクルの分、積算することを意味している。そして、サイクル(j)における平均速度は、時刻tにおける平均速度Δq(t)/Δtに等しいので、次式(27)が成り立つ。
Figure 0005439548
ここで、nを無限大にすると、Δtはdtと表すことができ、Δq(t)/Δtはq’(t)と表すことができ、(p(T+Δt)−p(T))/Δtはp’(T)と表すことができる。また、上記したようにj・Δt=tであり、(j−n+1)・Δt=j・Δt−n・Δt+Δt=t−A+Δtとなる。nを無限大にするときには、Δtは0に近似されるので、t−A+Δtは、t−Aとなる。これらのことから、上記式(27)に基づいて次式(28)を導くことができる。
Figure 0005439548
上記の変換部4による変換部加減速処理では分配関数が1/2aで一定であるものを用いる(上記式(7)参照)ため、上記式(16)によって変換部加減速処理後の速度関数Qi’(t)を求める場合には、その速度関数Qi’(t)は、次式(29)で表される。
Figure 0005439548
この式(29)において、2aは、時定数であり、上記式(28)におけるAに相当するため、当該式(29)によって得られる速度関数Qi’(t)と上記式(28)によって得られる速度関数q’(t)とは、等しくなる。このことから、数値制御装置200による補間部加減速処理後の移送パルスから得られる機械軸パスと、上記式(16)によって求めた速度関数Qi’(t)を積分することによって得られる変換部加減速処理後の機械軸パスQi(t)とは、実質的に等しいことが判り、それら両機械軸パスと基準機械軸パスとの誤差は、実質的に等しくなることが判る。そして、上記したように、上記式(6)によって求めた速度関数Qi’(t)を積分することによって得られる変換部加減速処理後の機械軸パスQi(t)と基準機械軸パスPi(t)との基準誤差e[i]は、上記式(16)によって求めた速度関数Qi’(t)を積分することによって得られる変換部加減速処理後の機械軸パスQi(t)と基準機械軸パスPi(t)との誤差からワーク500の加工形状に影響を及ぼさない時刻tのずれに起因する位相誤差の要素を排除した値に等しくなるので、結果的に、本実施形態の変換部4が上記式(5)〜(14)に基づいて算出する基準誤差e[i]は、数値制御装置200が補間後加減速処理を行った後の移送パルスから得られる機械軸パスと基準機械軸パスとの誤差からワーク500の加工形状に影響を及ぼさない前記位相誤差の要素を排除した値に実質的に等しくなる。
変換部4は、以上のように前記各ブロックPi(t)の終点毎の基準誤差e[i]を算出した後、各ブロックPi(t)の各終点を補正境界値に基づいて第1補正対象点と第2補正対象点とに分類する(ステップS26)。第2補正対象点には、コーナー部(例えば、機械軸パスが示す軌跡が多角形状の軌跡を示すものである場合には、その多角形の頂点)、機械軸パスの最初の始点直後の特定区間(移送開始直後の一定区間)に位置する終点、機械軸パスの最後の終点の直前の特定区間(移送停止直前の一定区間)に位置する終点、速度変化が急激で和らげる必要のある特定区間に位置する終点などが含まれる。また、第1補正対象点は、第2補正対象点以外の終点であり、機械軸パスのうち滑らかな移送を指示する区間に位置する終点である。補正境界値は、メモリ5に設定値として記憶されており、変換部4は、各ブロックPi(t)の終点のうち、基準誤差e[i]が当該補正境界値以下である点を第1補正対象点とし、基準誤差e[i]が当該補正境界値を超えている点を第2補正対象点とする。
そして、変換部4は、第1補正対象点と第2補正対象点とについてそれぞれ補正量を算出する(ステップS28)。具体的には、変換部4は、第1補正対象点については、その点の基準誤差e[i]に等しい値を当該第1補正対象点についての補正量h1[i]とする。また、変換部4は、第2補正対象点については、その第2補正対象点とその第2補正対象点の前の直近の第1補正対象点との間の距離Lと、その第2補正対象点とその第2補正対象点の後の直近の第1補正対象点との間の距離Lとを求め、次式(30)により比例配分することによって当該第2補正対象点についての補正量h2[i]を求める。なお、次式(30)において、e[i]は、前記第2補正対象点の前の直近の第1補正対象点についての基準誤差であり、e[i]は、前記第2補正対象点の後の直近の第1補正対象点についての基準誤差である。
h2[i]=(e[i]×L+e[i]×L)/(L+L)・・・(30)
そして、変換部4は、上記のように求めた各ブロックPi(t)の終点毎の補正量h1[i],h2[i]をメモリ5に記憶させる。
この後、変換部4は、メモリ5に記憶させた各ブロックPi(t)の終点毎の補正量h1[i],h2[i]で基準機械軸パスP(t)を補正することによって変換後機械軸パスを導出する。具体的には、変換部4は、各ブロックPi(t)の終点のうち第1補正対象点についてはその第1補正対象点の値からその点について設定された補正量h1[i]を減じることによって当該第1補正対象点を補正し、各ブロックPi(t)の終点のうち第2補正対象点についてはその第2補正対象点の値からその点ついて設定された補正量h2[i]を減じることによって当該第2補正対象点を補正する(ステップS30)。
次に、変換部4は、上記のように導出した各機械軸方向についての変換後機械軸パスをNCプログラムの形式で表す変換後NCプログラムに変換する(図5のステップS8)。この変換処理では、変換部4は、各機械軸方向についてそれぞれ設定されている時定数が同じである場合には、上記各機械軸方向についての変換後機械軸パスをそのままNCプログラムの形式に変換することによって変換後NCプログラムを導出する一方、各機械軸方向についてそれぞれ設定されている複数の時定数の中に他の機械軸方向についての時定数と異なる値の時定数が含まれている場合には、それらの時定数の差に起因して補間後加減速処理において各機械軸方向同士の間で生じる時刻の遅れの差を解消するための時定数差調整処理を行って変換後NCプログラムを導出する。
この時定数差調整処理では、変換部4は、上記各機械軸方向についての変換後機械軸パスをNCプログラムの形式で表す仮変換NCプログラムに一旦変換した後、その仮変換NCプログラムを構成する各指令点の各機械軸方向についての座標を調整して変換後NCプログラムとする。変換部4は、仮変換NCプログラムから以下のようにして変換後NCプログラムを導出する。
ここで、仮変換NCプログラムは、所定のサイクルタイム間隔の各時刻t[k](k=0,1,2,・・・,n)における複数の指令点によって構成されているとする。また、複数の機械軸方向のうち最も大きい時定数が設定された機械軸方向をm軸方向とし、そのm軸方向について設定された時定数をTmとし、そのm軸方向と異なる機械軸方向でそのm軸方向についての時定数Tmよりも小さい時定数が設定された所定の機械軸方向をn軸方向とし、そのn軸方向について設定された時定数をToとする。変換部4は、仮変換NCプログラムの各時刻t[k]における各指令点について、m軸方向の座標はそのままにし、n軸方向の座標を(Tm−To)/2だけ遅れた時刻での座標に調整する。
具体的には、変換部4は、仮変換NCプログラムの各時刻t[k]における各指令点のm軸方向の座標をそのまま変換後NCプログラムの各時刻t[k]における各指令点のm軸方向の座標とする一方、仮変換NCプログラムから各時刻t[k]+(Tm−To)/2におけるn軸方向の座標を求めて、その求めた各座標を変換後NCプログラムの各時刻t[k]における各指令点のn軸方向の座標とする。変換部4は、仮変換NCプログラムから各時刻t[k]+(Tm−To)/2におけるn軸方向の座標をそれぞれ求めるときにその各時刻のうちのある時刻t[c]+(Tm−To)/2が前記各時刻t[k]のうちのいずれかの時刻に一致する場合には、その一致した時刻における仮変換NCプログラムの指令点のn軸方向の座標を当該時刻t[c]+(Tm−To)/2におけるn軸方向の座標とし、前記時刻t[c]+(Tm−To)/2が各時刻t[k]のいずれとも一致しない場合には、各時刻t[k]のうち時刻t[c]+(Tm−To)/2の前後の直近の2つの時刻における仮変換NCプログラムの指令点のn軸方向の座標から比例配分により当該時刻t[c]+(Tm−To)/2におけるn軸方向の座標を求める。
変換部4は、以上のように仮変換NCプログラムを時定数差調整処理した後のNCプログラムを変換後NCプログラムとし、その変換後NCプログラムを数値制御装置200へ出力する(ステップS10)。加工指令変換装置2が行う処理は、以上のようにして行われる。
本実施形態では、加工指令変換装置2の変換部4が、数値制御装置200による補間後加減速処理後の各機械軸方向についての移送パルスから得られる機械軸パスと対応する機械軸方向についての基準機械軸パスとの誤差の近似値に相当する補正量を各機械軸方向毎に算出し、その各機械軸方向毎の補正量で前記誤差を相殺する方向に各機械軸方向についての基準機械軸パスを補正した変換後機械軸パスを算出し、その算出した各機械軸方向についての変換後機械軸パスを変換後NCプログラムに変換し、数値制御装置200が変換後NCプログラムに基づいて各機械軸方向についての機械軸パスを導出するように当該変換後NCプログラムを数値制御装置200へ出力するため、数値制御装置200には、当該数値制御装置200が行う補間後加減速処理によって生じる各機械軸方向毎の誤差を予め見込んでその誤差を相殺する方向に各機械軸方向毎に補正した変換後NCプログラムを入力することができる。このため、数値制御装置200が補間後加減速処理を行ったときには、その補間後加減速処理後の移送パルスから得られる各機械軸方向についての機械軸パスと対応する機械軸方向についての基準機械軸パスとの間に生じる誤差を微小なものとすることができ、その結果、補間後加減速処理に伴って生じるワーク500の加工形状の誤差を微小な値に低減することができる。
また、本実施形態では、数値制御装置200との間でデータの授受が可能となるように構成された演算処理装置に加工指令変換プログラムを組み込むことによって構成された加工指令変換装置2により、数値制御装置200が行う補間後加減速処理によって生じる誤差を低減させることが可能であるから、既存の工作機械の数値制御装置200で現在用いられている制御プログラムはそのまま使用することができる。このため、数値制御装置200で用いられている制御プログラム全体を入れ替えたり、その制御プログラムの改変作業を行ったりするような場合に比べて、費用面及び作業面における負担を軽減しつつ、短期間で、補間後加減速処理によって生じる誤差を低減するための処置を実施することができる。
また、本実施形態では、変換後NCプログラムの導出において上記の時定数差調整処理が行われるので、各機械軸方向毎の時定数の差に起因して数値制御装置200による補間後加減速処理の際に生じる各機械軸方向同士の間での時刻の遅れの差を解消することができ、その結果、当該各機械軸方向同士の間での時刻の遅れの差に起因する各機械軸方向同士の間での位相誤差の発生を防止することができる。具体的には、上記の時定数差調整処理では、最大の時定数Tmが設定された前記m軸方向の座標については時刻t[k]から遅らせず、その最大の時定数よりも小さい時定数Toが設定された前記n軸方向の座標については時刻t[k]から(Tm−To)/2だけ遅らせている。本実施形態による数値制御装置200が行う補間後加減速処理では、当該補間後加減速処理後の移送パルスから得られる機械軸パスは、数値制御装置200に入力される変換後NCプログラムから得られる機械軸パスに対して、m軸方向についてはTm/2だけ遅れるとともに、n軸方向についてはTo/2だけ遅れる。このため、結果的に、当該補間後加減速処理後の移送パルスから得られる機械軸パスは、基準機械軸パスに対して、m軸方向についてはTm/2だけ遅れ、n軸方向については時定数差調整処理による遅れ(Tm−To)/2と補間後加減速処理による遅れTo/2との和であるTm/2だけ遅れる。すなわち、m軸方向とn軸方向とにおいて同じTm/2だけ遅れが生じるので、それらの機械軸方向同士の間で位相誤差が発生するのを防ぐことができる。
なお、今回開示された実施形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施形態の説明ではなく特許請求の範囲によって示され、さらに特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれる。
上記実施形態では、加工指令変換装置2に既に加工指令変換プログラムが組み込まれている形態を例にとって説明したが、本願発明による加工指令変換プログラムは、各種記憶媒体に記憶され、その記憶媒体が、数値制御装置200との間でデータの授受が可能な演算処理装置に結合されることによってその記憶媒体から演算処理装置に導入されてもよい。このような変形例による構成は、図13に示されている。この変形例では、加工指令変換プログラムが記憶される記憶媒体22として、CD−R等のディスク状の記憶媒体や、カード状の各種記憶媒体、演算処理装置内に組み込まれる又は演算処理装置に対して外部接続される各種メモリやハードディスク等が挙げられる。そして、この変形例では、加工指令変換装置を構成する演算処理装置12は、加工指令変換プログラムが記憶された記憶媒体22が結合可能な結合部8を備えている。結合部8は、変換部4と電気的に接続されており、記憶媒体22が当該結合部8に結合されると、変換部4がその記憶媒体22から当該結合部8を介して加工指令変換プログラムを読み取り可能となる。
この構成によれば、記憶媒体22を演算処理装置12の結合部8に結合させるだけで、その記憶媒体22に記憶されている加工指令変換プログラムを演算処理装置12に導入可能な状態になるため、既存の演算処理装置12に対して加工指令変換プログラムを導入する作業を容易に実施することができる。
また、本発明による加工指令変換装置、加工指令変換プログラム及びそのプログラムを記憶した記憶媒体は、図1に示したような門型フレームを備えた工作機械を制御するための数値制御装置に適用が限定されるものではない。例えば、パラレルメカニズムを有する工作機械や、旋盤、その他の各種工作機械を制御するための数値制御装置にも、本発明による加工指令変換装置、加工指令変換プログラム及びそのプログラムを記憶した記憶媒体を適用することが可能である。
また、上記実施形態では、変換部加減速処理において直線型の分配関数を用いたが、変換部加減速処理において用いる分配関数は、このような直線型の分配関数以外の種類の分配関数であってもよい。ただし、その分配関数は、数値制御装置が補間後加減速処理において移送パルスを分配区間に分配するときの分配形式に対応したものであることを要する。
例えば、数値制御装置が補間後加減速処理において移送パルスをいわゆるベル型の分配形式で分配区間内に分配する場合には、変換部は、変換部加減速処理においていわゆるベル型の分配関数を用いればよい。このようなベル型の分配関数f(t)は、例えば、次式で表される。
Figure 0005439548
なお、分配区間−a≦t≦aの外側では、f(t)=0である。
また、変換部加減速処理では、上記数式(5),(6)の代わりに上記数式(15),(16)を用いてもよい。ただし、この場合には、変換部加減速処理後の機械軸パスと基準機械軸パスとの誤差を算出するに際して、変換部加減速処理後の機械軸パスと基準機械軸パスとの互いに減算する点同士の時刻の対応付け(時刻調整)を行った上でそれらの点同士の減算を行って誤差を算出する。
また、変換部4が基準機械軸パスの補正量を求めるときに、変換部加減速処理後の機械軸パスと基準機械軸パスとの誤差を算出し、その算出した誤差で補正量を修正し、その修正後の補正量で基準機械軸パスを補正し、再度、その補正後の機械軸パスを変換部加減速処理するというルーチンを複数回(例えば2〜3回程度)繰り返してもよい。この場合には、数値制御装置200による補間後加減速処理後の移送パルスから得られる機械軸パスを基準機械軸パスにより近づけることができ、補間後加減速処理によって生じる誤差をより低減することができる。
また、加工指令変換装置の変換部は、NCプログラムから媒介変数表示の機械軸パスを作成するとともに、各種補間を行うための媒介変数と時間との相関関係を表す媒介変数時間関数を求め、その媒介変数時間関数と前記媒介変数表示の機械軸パスから時刻表示の基準機械軸パスを求めて、その基準機械軸パスから変換後機械軸パスを求めてもよい。
また、上記実施形態では、加工データ供給装置は、CLデータを供給するものとして説明したが、このような形態に限定されない。例えば、加工データ供給装置は、NCプログラムを供給するものであってもよい。この場合には、加工データ供給装置は、CLデータを作成するための機能(CAD/CAMシステム)及びその作成したCLデータからNCプログラムを導出して出力する機能(ポストプロセッサ)を有していればよい。そして、この場合には、加工指令変換装置は、ポストプロセッサの機能を有しておらず、加工データ供給装置から供給されるNCプログラムに基づいて基準機械軸パスを導出し、その基準機械軸パスを変換後機械軸パスに変換し、その基準機械軸パスから変換後NCプログラムを導出して出力する機能を有していればよい。
また、CAD/CAMシステムが組み込まれた装置と、ポストプロセッサが組み込まれた装置と、数値制御装置とからなる既存の処理装置に、本願発明のNCプログラムを変換後NCプログラムに変換する加工指令変換装置を付加的に適用してもよい。
2 加工指令変換装置
4 変換部
8 結合部
12 演算処理装置
22 記憶媒体
102 ワーク移送装置(移送装置)
102a テーブル(支持体)
102b テーブル支持体移送部(移送部)
104 工具
108 揺動装置(移送装置)
108a 揺動支持体(支持体)
108b 揺動支持体移送部(移送部)
110 回動装置(移送装置)
110a 回動支持体(支持体)
110b 回動支持体移送部(移送部)
112 第1鉛直移送装置(移送装置)
112a ラム(支持体)
112b ラム移送部(移送部)
114 水平移送装置(移送装置)
114a サドル(支持体)
114b サドル移送部(移送部)
116 第2鉛直移送装置(移送装置)
116a クロスレール(支持体)
116b クロスレール移送部(移送部)
500 ワーク

Claims (7)

  1. ワーク又はそのワークを加工する工具を対象物としてその対象物を前記ワークを加工するために移送する複数の移送装置を備え、前記各移送装置は、前記対象物を支持するための支持体と、その支持体を特定の機械軸方向に移送することにより前記対象物を移送する移送部とをそれぞれ有する工作機械に設けられる演算処理装置であって、前記各支持体を対応する前記各機械軸方向において所定のサイクルタイム間隔の各時刻に移送すべき位置を示す機械軸パスを求め、その求めた機械軸パスから前記各機械軸方向における前記各時刻間のブロックでの前記各支持体の移送量を示す移送パルスを求め、その求めた前記各機械軸方向毎の各移送パルスを対応する機械軸方向について設定された特定の時定数の区間幅を有する分配区間内に分配して積算する補間後加減速処理を行うことによって補間後加減速処理後の移送パルスを求め、その求めた補間後加減速処理後の移送パルスに応じて前記各移送装置の前記移送部による前記支持体の移送を制御する数値制御装置との間でデータの授受が可能となるように構成された演算処理装置に適用される加工指令変換プログラムであって、
    前記ワークの加工時の前記工具の移動軌跡を前記各時刻毎の指令点の前記各機械軸方向についての座標で表す加工指令に基づいて、前記工具を前記移動軌跡に従って移動させるために前記各支持体を前記各時刻に移送すべき前記各機械軸方向の位置を示す基準機械軸パスを導出するパス導出ステップと、
    導出した前記各機械軸方向についての前記基準機械軸パスに特定の変換処理を行うことによって前記各機械軸方向についての変換後機械軸パスを導出するパス変換ステップと、
    前記各機械軸方向についての前記変換後機械軸パスを前記加工指令の形式で表す変換後加工指令に変換する加工指令変換ステップと、
    前記数値制御装置が前記変換後加工指令に基づいて前記各機械軸方向についての前記機械軸パスを求めるように前記数値制御装置へ前記変換後加工指令を出力する出力ステップとを、前記演算処理装置に実行させ、
    前記パス変換ステップでは、前記特定の変換処理として、前記各機械軸方向についての前記補間後加減速処理後の移送パルスから得られる機械軸パスと対応する前記機械軸方向についての前記基準機械軸パスとの誤差の近似値に相当する補正量を前記各機械軸方向毎に算出し、その算出した前記各機械軸方向毎の補正量で前記誤差を相殺する方向に前記各機械軸方向についての前記基準機械軸パスを補正した前記変換後機械軸パスを算出する演算処理を前記演算処理装置に実行させ
    前記演算処理装置に前記特定の変換処理として実行させる前記演算処理では、前記各機械軸方向についての前記基準機械軸パスに前記補間後加減速処理に相当する処理をそれぞれ行い、その処理後の各機械軸方向についての機械軸パスと対応する前記機械軸方向についての前記基準機械軸パスとの誤差である基準誤差を前記各機械軸方向毎に算出し、その算出した前記各機械軸方向毎の前記基準誤差を前記各機械軸方向毎の前記補正量とし、
    前記補間後加減速処理に相当する処理では、前記数値制御装置が前記各移送パルスを分配する分配形式に相当する分配形式を表す分配関数を用いて前記基準機械軸パスの一次微分関数である速度関数を分配するとともにその分配した値を積分し、その積分によって得られる関数をさらに積分することによって前記補間後加減速処理に相当する処理後の機械軸パスを算出する処理を前記演算処理装置に実行させる、加工指令変換プログラム。
  2. 記補間後加減速処理に相当する処理では、前記時刻をtとし、当該処理を行う前記機械軸方向について設定された前記時定数の半分の値をaとし、t−aからt+aに亘る区間内の各時刻Tにおける前記基準機械軸パスの一次微分関数である速度関数をP’(T)とし、前記数値制御装置が前記移送パルスを分配する分配形式を表し且つ次式(1)を満たす分配関数をf(T)とした場合に、前記補間後加減速処理に相当する処理後の機械軸パスの一次微分関数である速度関数Q’(t)を次式(2)に基づいて算出し、その算出した速度関数Q’(t)を積分することによって、前記補間後加減速処理に相当する処理後の機械軸パスQ(t)を算出する処理を前記演算処理装置に実行させる、請求項1に記載の加工指令変換プログラム。
    Figure 0005439548
    Figure 0005439548
  3. 前記各機械軸方向についてそれぞれ設定された複数の前記時定数の中には他の機械軸方向についての時定数と異なる値の時定数が含まれ、前記数値制御装置が、前記補間後加減速処理において、前記各機械軸方向における前記各ブロックの前記移送パルスを分配するときに、その分配対象である機械軸方向について設定された前記時定数に相当する区間幅だけそのブロックの終点から後に及ぶ前記分配区間内にその移送パルスを分配する場合に、前記加工指令変換ステップでは、前記変換後機械軸パスを前記加工指令の形式で表す仮変換加工指令に一旦変換する仮変換ステップと、前記仮変換加工指令を構成する各指令点の前記各機械軸方向についての座標を調整して前記変換後加工指令とする調整ステップとを前記演算処理装置に実行させ、
    前記調整ステップでは、前記補間後加減速処理において前記各機械軸方向毎の前記時定数に応じた前記分配区間に前記各機械軸方向における前記移送パルスが分配されることによって生じる前記各機械軸方向毎の前記補間後加減速処理後の前記移送パルス同士の前記時刻の遅れの差が相殺されるように前記仮変換加工指令の前記各指令点の前記各機械軸方向についての座標を調整する処理を前記演算処理装置に実行させる、請求項1又は2に記載の加工指令変換プログラム。
  4. 請求項1〜3のいずれか1項に記載の加工指令変換プログラムが記憶された記憶媒体であって、当該記憶媒体に記憶されている前記加工指令変換プログラムを前記演算処理装置に導入するために前記演算処理装置に結合される、記憶媒体。
  5. ワーク又はそのワークを加工する工具を対象物としてその対象物を前記ワークを加工するために移送する複数の移送装置を備え、前記各移送装置は、前記対象物を支持するための支持体と、その支持体を特定の機械軸方向に移送することにより前記対象物を移送する移送部とをそれぞれ有する工作機械に設けられ、前記各支持体を対応する前記各機械軸方向において所定のサイクルタイム間隔の各時刻に移送すべき位置を示す機械軸パスを求め、その求めた機械軸パスから前記各機械軸方向における前記各時刻間のブロックでの前記各支持体の移送量を示す移送パルスを求め、その求めた前記各機械軸方向毎の各移送パルスを対応する機械軸方向について設定された特定の時定数の区間幅を有する分配区間内に分配して積算する補間後加減速処理を行うことによって補間後加減速処理後の移送パルスを求め、その求めた補間後加減速処理後の移送パルスに応じて前記各移送装置の前記移送部による前記支持体の移送を制御する数値制御装置に適用される加工指令変換装置であって、
    前記ワークの加工時の前記工具の移動軌跡を前記各時刻毎の指令点の前記各機械軸方向についての座標で表す加工指令に基づいて、前記工具を前記移動軌跡に従って移動させるために前記各支持体を前記各時刻に移送すべき前記各機械軸方向の位置を示す基準機械軸パスを導出し、その導出した前記各機械軸方向についての前記基準機械軸パスに特定の変換処理を行うことによって前記各機械軸方向についての変換後機械軸パスを導出し、その導出した前記各機械軸方向についての前記変換後機械軸パスを前記加工指令の形式で表す変換後加工指令に変換し、前記数値制御装置が当該変換後加工指令に基づいて前記各機械軸方向についての前記機械軸パスを求めるように前記数値制御装置へ当該変換後加工指令を出力する変換部を備え、
    前記変換部は、前記特定の変換処理として、前記各機械軸方向についての前記補間後加減速処理後の移送パルスから得られる機械軸パスと対応する前記機械軸方向についての前記基準機械軸パスとの誤差の近似値に相当する補正量を前記各機械軸方向毎に算出し、その算出した前記各機械軸方向毎の補正量で前記誤差を相殺する方向に前記各機械軸方向についての前記基準機械軸パスを補正した前記変換後機械軸パスを算出する演算処理を行い、
    前記変換部は、前記特定の変換処理として行う前記演算処理では、前記各機械軸方向についての前記基準機械軸パスに前記補間後加減速処理に相当する処理をそれぞれ行い、その処理後の前記各機械軸方向についての機械軸パスと対応する前記機械軸方向についての前記基準機械軸パスとの誤差である基準誤差を前記各機械軸方向毎に算出し、その算出した前記各機械軸方向毎の前記基準誤差を前記各機械軸方向毎の前記補正量とし、前記補間後加減速処理に相当する処理では、前記数値制御装置が前記各移送パルスを分配する分配形式に相当する分配形式を表す分配関数を用いて前記基準機械軸パスの一次微分関数である速度関数を分配するとともにその分配した値を積分し、その積分によって得られる関数をさらに積分することによって前記補間後加減速処理に相当する処理後の機械軸パスを算出する演算処理を行う、加工指令変換装置。
  6. 前記変換部は、前記補間後加減速処理に相当する処理では、前記時刻をtとし、当該処理を行う前記機械軸方向について設定された前記時定数の半分の値をaとし、t−aからt+aに亘る区間内の各時刻Tにおける前記基準機械軸パスの一次微分関数である速度関数をP’(T)とし、前記数値制御装置が前記各移送パルスを分配する分配形式を表し且つ次式(3)を満たす分配関数をf(T)とした場合に、前記補間後加減速処理に相当する処理後の機械軸パスの一次微分関数である速度関数Q’(t)を次式(4)に基づいて算出し、その算出した速度関数Q’(t)を積分することによって、前記補間後加減速処理に相当する処理後の機械軸パスQ(t)を算出する演算処理を行う、請求項5に記載の加工指令変換装置。
    Figure 0005439548
    Figure 0005439548
  7. 前記各機械軸方向についてそれぞれ設定された複数の前記時定数の中には他の機械軸方向についての時定数と異なる値の時定数が含まれ、前記数値制御装置が、前記補間後加減速処理において、前記各機械軸方向における前記各ブロックの前記移送パルスを分配するときに、その分配対象である機械軸方向について設定された前記時定数に相当する区間幅だけそのブロックの終点から後に及ぶ前記分配区間内にその移送パルスを分配する場合には、前記変換部は、前記各機械軸方向についての前記変換後機械軸パスを前記変換後加工指令に変換するときに、前記変換後機械軸パスを前記加工指令の形式で表す仮変換加工指令に一旦変換した後、前記仮変換加工指令を構成する各指令点の前記各機械軸方向についての座標を調整して前記変換後加工指令とし、
    前記仮変換加工指令を構成する前記各指令点の座標を調整するときには、前記変換部は、前記補間後加減速処理において前記各機械軸方向毎の前記時定数に応じた前記分配区間に前記各機械軸方向における前記移送パルスが分配されることによって生じる前記各機械軸方向毎の前記補間後加減速処理後の前記移送パルス同士の前記時刻の遅れの差が相殺されるように前記仮変換加工指令の前記各指令点の前記各機械軸方向についての座標を調整する、請求項5又は6に記載の加工指令変換装置。
JP2012147468A 2012-06-29 2012-06-29 加工指令変換プログラム、記憶媒体及び加工指令変換装置 Expired - Fee Related JP5439548B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012147468A JP5439548B2 (ja) 2012-06-29 2012-06-29 加工指令変換プログラム、記憶媒体及び加工指令変換装置
PCT/JP2013/003400 WO2014002380A1 (ja) 2012-06-29 2013-05-29 加工指令変換プログラム、記憶媒体及び加工指令変換装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012147468A JP5439548B2 (ja) 2012-06-29 2012-06-29 加工指令変換プログラム、記憶媒体及び加工指令変換装置

Publications (2)

Publication Number Publication Date
JP2014010678A JP2014010678A (ja) 2014-01-20
JP5439548B2 true JP5439548B2 (ja) 2014-03-12

Family

ID=49782582

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012147468A Expired - Fee Related JP5439548B2 (ja) 2012-06-29 2012-06-29 加工指令変換プログラム、記憶媒体及び加工指令変換装置

Country Status (2)

Country Link
JP (1) JP5439548B2 (ja)
WO (1) WO2014002380A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6845202B2 (ja) * 2018-10-11 2021-03-17 ファナック株式会社 数値制御方法及び処理装置
CN109240215B (zh) * 2018-11-22 2019-05-24 山东易码智能科技股份有限公司 一种基于改进型s曲线加减速的pvt控制方法
CN109959892B (zh) * 2019-04-11 2023-03-10 中国电子科技集团公司第三十六研究所 一种均匀圆阵双通道干涉仪测向方法、装置和系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01156803A (ja) * 1987-12-14 1989-06-20 Toshiba Mach Co Ltd 送り速度制御方法
JPH11149306A (ja) * 1997-11-14 1999-06-02 Fanuc Ltd 加工機の制御装置
JP2007200121A (ja) * 2006-01-27 2007-08-09 Hitachi Ltd 工具経路作成方法および工具経路作成プログラム
JP5336217B2 (ja) * 2009-02-06 2013-11-06 新日本工機株式会社 補正装置及び数値制御装置

Also Published As

Publication number Publication date
WO2014002380A1 (ja) 2014-01-03
JP2014010678A (ja) 2014-01-20

Similar Documents

Publication Publication Date Title
Tajima et al. Accurate interpolation of machining tool-paths based on FIR filtering
Sencer et al. High speed cornering strategy with confined contour error and vibration suppression for CNC machine tools
JP5417392B2 (ja) 数値制御装置
CN108732989B (zh) 进行摆动切削的机床的控制装置
Erkorkmaz et al. High speed CNC system design. Part I: jerk limited trajectory generation and quintic spline interpolation
US9063536B2 (en) Numerical controller having workpiece mounting error compensation unit for three-axis machine tool
JP5417390B2 (ja) 数値制御装置
JP3592628B2 (ja) 数値制御方法
JP6450732B2 (ja) 数値制御装置
JP5159997B1 (ja) 数値制御装置
JP5762625B2 (ja) 軌跡制御装置
WO2014061395A1 (en) Determining trajectories of redundant actuators jointly tracking reference trajectory
KR20130071486A (ko) 공구경로의 생성방법 및 생성장치
JP2005182437A (ja) 数値制御装置及び数値制御方法
JP5439548B2 (ja) 加工指令変換プログラム、記憶媒体及び加工指令変換装置
CN105278449B (zh) 具有工具前端点控制功能的数值控制装置
JP4796936B2 (ja) 加工制御装置
JP5399537B2 (ja) 数値制御装置
Yang et al. Kinematics model and trajectory interpolation algorithm for CNC turning of non-circular profiles
US11559851B2 (en) Laser machining device and laser machining method
Tounsi et al. Optimized feed scheduling in three axes machining: Part II: Experimental validation
JP6666234B2 (ja) 数値制御装置
WO2022254638A1 (ja) 動作制御装置及びプログラム
WO2022138843A9 (ja) 数値制御装置
JP6068614B2 (ja) 工具先端点制御中に生じるバックラッシを抑制することを特徴とする数値制御装置

Legal Events

Date Code Title Description
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: 20131203

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131216

R150 Certificate of patent or registration of utility model

Ref document number: 5439548

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees