(57)【要約】【課題】オーバライドを用いた速度変更において、滑らかな加減速を短時間で実現することと、微小な量ずつオーバライドを変化させる手法を実現すること。【解決手段】本発明の送り速度の算出は、指令プログラム解析手段１１で指令速度を取得し、オーバライド入力手段１７でオーバライドを取得し、段階的オーバライド変更手段１８で入力前のオーバライドから入力されたオーバライドまでをあらかじめ指定された時間またはあらかじめ指令されたオーバライドの変化量で段階的に変化させて実オーバライドとして出力し、速度演算手段１２において補間周期で段階的オーバライド変更手段１８の実オーバライドを取得し、指令速度と乗算して送り速度を算出する。本発明の段階的オーバライド変更手段１８は速度演算手段１２に属する。【選択図】図１０
2014241074.tif 000002
【特許請求の範囲】
【請求項１】
テーブルに取付られたワーク（加工物）に対して、加工プログラムで指令された送り速度で相対的に工具を移動させることによって加工する工作機械を制御する数値制御装置において、
前記加工プログラムの指令速度を解析する指令プログラム解析手段と、
前記指令速度の倍率であるオーバライドを入力するオーバライド入力手段と、
前記オーバライド入力手段による入力前のオーバライドから前記入力されたオーバライドまでを補間周期ごとに所定量ずつ段階的に変化させて実オーバライドとして出力する段階的オーバライド変更手段と、
前記実オーバライドと前記指令速度を乗算して前記送り速度を算出する速度演算手段、
とを有することを特徴とする数値制御装置。
【請求項２】
前記オーバライド入力手段による入力前のオーバライドから前記入力されたオーバライドまで変化させる時間を指定する指定手段を有し、
前記段階的オーバライド変更手段は、該指定した時間内で前記オーバライドが段階的に変化するように１補間周期の増加量または減少変化量を求め、前記実オーバライドを出力することを特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記段階的オーバライド変更手段における１補間周期のオーバライドの変化量を指定する指定手段を有し、
前記段階的オーバライド変更手段は、前記オーバライド入力手段による入力前のオーバライドから前記入力されたオーバライドまで前記指定した変化量ずつ段階的に変化させて、前記実オーバライドを出力することを特徴とする請求項１に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オーバライドで送り速度の変更が可能な数値制御装置に関する。
【背景技術】
【０００２】
特許文献１には、同じ動作を繰返し実行する高速サイクル加工の移動量とＮＣプログラム指令を重畳させる技術が開示されている。高速サイクル加工とは、変数領域に格納した分配データを高速で実行することができる機能である。変数領域に格納する高速サイクル加工データは、ヘッダーと分配データで構成される。図１はヘッダーと分配データの例である。図２はある軸における分配データの例である。
【０００３】
高速サイクル加工データは、ＮＣプログラム指令で呼び出して実行することができる。上述したように特許文献１に開示された技術は、図３のように高速サイクル加工による繰返し動作とＮＣプログラムによる任意動作を重畳させるものである。これにより、高速サイクル加工は一周期分の高速サイクル加工データを繰返して実行するため、高速サイクル加工データの容量が削減できる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−９０９４号公報
【特許文献２】特開２０１２−３２９６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、機械のショックや加工誤差を抑えるために滑らかな速度変更を行う場合は、以下の２つのいずれかの手法が必要である。  
（１）加減速を考慮した高速サイクル加工データを作成して実行する。  
（２）オーバライドをラダープログラムで微小な量ずつ変化させる。  
これらの手法は、高速サイクル加工は高速な応答を実現するために補間後加減速を行わないために必要である。
【０００６】
図４は加減速を考慮した高速サイクル加工データの例である。一定速部は一周期分の高速サイクル加工データを繰返し実行するが、加速部と減速部は専用の高速サイクル加工データを実行する必要がある。また荒加工や仕上げ加工などの加工工程において送り速度が異なる場合、各加工工程ごとに加速部／一定速部／減速部の高速サイクル加工データを実行する必要がある。そのため、高速サイクル加工データの容量が増大し、また高速サイクル加工データ作成の負担も増える問題点がある。
【０００７】
オーバライドとは、入力信号によりプログラムの指令速度の倍率（％）を指定して、送り速度を変更することが可能な機能である。入力信号で指定したオーバライドから指令速度に対して乗算することによって実際の送り速度を得るための実オーバライドを計算し、実オーバライドを指令速度に乗算して送り速度を算出する。オーバライドを変化させて加減速をかけた場合、加減速用の高速サイクル加工データが不要であるため高速サイクル加工データの容量が削減でき、また高速サイクル加工データ作成の負担も軽減することができる。
【０００８】
図５は加減速を考慮した高速サイクル加工データを実行する場合とオーバライドを変化させる場合で同じ変化量ずつ送り速度を変化させる例である。オーバライドの更新周期は信号の入力周期（例えば４ｍｓｅｃ）であり、従来はオーバライドをそのまま実オーバライドとしている。それにより実オーバライドが変化する周期は補間周期（例えば１ｍｓｅｃ）に比べて長いため、オーバライドを変化させる場合の方が加減速に時間がかかる問題点がある。
【０００９】
オーバライドを微小な量ずつ変化させる場合について  
オーバライドは、高速サイクル加工に限らずＮＣプログラム指令による加工でも使用可能である。例えばウォータージェット加工機で送り速度が速い場合、図６のように水流の遅れが発生する。このような場合に従来はラダープログラムでオーバライドを微小な量ずつ更新し、オーバライドをそのまま実オーバライドとしている。そのことにより、移動速度が遅くなるように速度変更を行い、水流の遅れを軽減することができる。このオーバライドを使用した速度変更は、補間後加減速とは独立して実行することができるため、緩やかな加減速が行える。ただしラダープログラム作成の負担がかかる問題点がある。
【００１０】
特許文献２には、非常停止やオーバライドなどの速度変更を行う特別指令が入力された場合に、設定単位時間の長さを特別指令が指示する移動対象物の速度変化に応じた長さに変化させ、変化後の設定単位時間当たりの移動量を算出する技術が開示されている。しかし、特許文献２は速度変更を行う特別指令が入力された後に簡潔な手法で移動量を算出し直し、そして動作の応答性を高める技術であり、オーバライドを微小な量ずつ変化させながら緩やかに速度変更を行う場合には適用できない。
【００１１】
そこで本発明の目的は、上記従来技術の問題点に鑑み、オーバライドを用いた速度変更において、滑らかな加減速を短時間で実現することと、微小な量ずつオーバライドを変化させる手法を実現することである。
【課題を解決するための手段】
【００１２】
本願の請求項１に係る発明は、テーブルに取付られたワーク（加工物）に対して、加工プログラムで指令された送り速度で相対的に工具を移動させることによって加工する工作機械を制御する数値制御装置において、前記加工プログラムの指令速度を解析する指令プログラム解析手段と、前記指令速度の倍率であるオーバライドを入力するオーバライド入力手段と、前記オーバライド入力手段による入力前のオーバライドから前記入力されたオーバライドまでを補間周期ごとに所定量ずつ段階的に変化させて実オーバライドとして出力する段階的オーバライド変更手段と、前記実オーバライドと前記指令速度を乗算して前記送り速度を算出する速度演算手段、とを有することを特徴とする数値制御装置である。  請求項２に係る発明は、前記オーバライド入力手段による入力前のオーバライドから前記入力されたオーバライドまで変化させる時間を指定する指定手段を有し、前記段階的オーバライド変更手段は、該指定した時間内で前記オーバライドが段階的に変化するように１補間周期の増加量または減少変化量を求め、前記実オーバライドを出力することを特徴とする請求項１に記載の数値制御装置である。  
請求項３に係る発明は、前記段階的オーバライド変更手段における１補間周期のオーバライドの変化量を指定する指定手段を有し、前記段階的オーバライド変更手段は、前記オーバライド入力手段による入力前のオーバライドから前記入力されたオーバライドまで前記指定した変化量ずつ段階的に変化させて、前記実オーバライドを出力することを特徴とする請求項１に記載の数値制御装置である。
【発明の効果】
【００１３】
本発明により、オーバライドを用いた速度変更において、滑らかな加減速を短時間で実現でき、また、微小な量ずつオーバライドを変化させる手法を実現できる。
【図面の簡単な説明】
【００１４】
【図１】高速サイクル加工データの例を説明する図である。
【図２】高速サイクル加工データのある軸における分配データの例である。
【図３】高速サイクル加工による繰返し動作とＮＣプログラムによる任意動作を重畳させる技術を説明する図である。
【図４】加減速を考慮した高速サイクル加工データを説明する図である。
【図５】高速サイクル加工における加減速を説明する図である。
【図６】ウォータージェット加工機を説明する図である。
【図７】オーバライドと実オーバライドを説明する図である。
【図８】あらかじめ指定した時間で実オーバライド変化を説明する図である。
【図９】あらかじめ指定したオーバライドの変化量ずつ実オーバライド変化を説明する図である。
【図１０】本発明の実施形態の数値制御装置を説明する概略ブロック図である。
【図１１】段階的オーバライド変更手段のフローチャートを説明する図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態を図面と共に説明する。
＜実施形態１＞
実オーバライドを補間周期で更新  
オーバライドにより実オーバライドを変化させる周期は、従来は信号の入力周期（例えば４ｍｓｅｃ）であり補間周期（例えば１ｍｓｅｃ）に比べて長い。本発明の実施形態では、実オーバライドを補間周期で計算し、また実オーバライドを細かく変化させる。これによりラダープログラムでオーバライドを微小な量ずつ変化させるときにかかる時間を短縮することができる。
【００１６】
実オーバライドを細かく変化させる方法は、以下の２つがある。  
あらかじめ指定した時間で変化させる（実施形態２）  
あらかじめ指定したオーバライドの変化量ずつ変化させる（実施形態３）
図７は信号の入力周期（ＣＹＣｓ）が４ｍｓｅｃで、補間周期（ＣＹＣｐ）が１ｍｓｅｃで、１補間周期で実オーバライドを変化させる量が１％の場合の例である。従来は実オーバライドが信号の入力周期（ＣＹＣｓ）で変化するため、実オーバライドを１％変化させるのにかかる時間は４ｍｓｅｃであり、オーバライドを信号の入力周期で変化させることができる量は１％であった。本発明は実オーバライド（ＯＶＲｐ）が補間周期（ＣＹＣｐ）で変化するため、実オーバライドを１％変化させるのにかかる時間は１ｍｓｅｃとなり、オーバライドを信号の入力周期で変化させることができる量は４％となる。
【００１７】
＜実施形態２＞（図８参照）
あらかじめ指定した時間で実オーバライド変化
例えば、時刻Ｔ０においてオーバライドが０％（ＯＶＲ０）から５０％（ＯＶＲ１）へ変化したとき、従来は一度で実オーバライドが５０％（ＯＶＲ１）へ変化していた。本発明の実施形態では、あらかじめ指定した時間Ｔｓで段階的に５０％（ＯＶＲ１）になるように補間周期ごとに実オーバライド（ＯＶＲｐ）を変化させる。
【００１８】
あらかじめ指定した時間Ｔｓの時間内において、ある補間周期の時刻Ｔｐにおける実オーバライドＯＶＲｐは数１式となる。ここで、実施形態１で述べたように補間周期で実オーバライドを変化させる。
【００１９】
【数１】
2014241074.tif 000003
【００２０】
＜実施形態３＞（図９参照）
あらかじめ指定したオーバライドの変化量ずつ実オーバライド変化  
例えば、時刻Ｔ０においてオーバライドが１００％（ＯＶＲ０）から５０％（ＯＶＲ１）へ変化したとき、従来は一度で実オーバライドが５０％（ＯＶＲ１）へ変化していた。本発明の実施形態ではあらかじめ指定したオーバライドの変化量（ＯＶＲｓ）ずつ段階的に５０％（ＯＶＲ１）になるように補間周期ごとに実オーバライド（ＯＶＲｐ）を変化させる。ある補間周期の時刻Ｔｐにおける実オーバライドＯＶＲｐは数２式となる。ここで実施形態１で述べたように補間周期で実オーバライドを変化させる。
【００２１】
【数２】
2014241074.tif 000004
【００２２】
図１０は本発明の実施形態の数値制御装置を説明する概略ブロック図である。数値制御装置１０は、ＮＣプログラム指令による加工の場合、指令プログラム解析手段１１でプログラムを解析し指令速度を取得し、速度演算手段１２で補間周期ごとに送り速度を演算し、送り速度に基づいて補間手段１３で補間し、補間後加減速手段１４で加減速を行い、サーボ制御部１５を介してサーボモータ２０を駆動し、ワークと工具を相対的に移動させる。
【００２３】
高速サイクル加工の場合、図１０の太線矢印のように、指令プログラム解析手段１１において高速サイクル加工データ取得手段１６から高速サイクル加工データを取得し、速度演算手段１２で送り速度を演算し送り速度を高速サイクル加工データに乗算し、補間手段１３と補間後加減速手段１４は介さず、サーボモータ２０を駆動制御するサーボモータ制御部１５に出力する。これによって、ワークと工具を相対的に移動させる。
【００２４】
従来の送り速度の算出は、指令プログラム解析手段１１で指令速度を取得し、オーバライド入力手段１７でオーバライドを取得し、速度演算手段１２において信号の入力周期でオーバライドをそのまま実オーバライドに設定し補間周期で指令速度と実オーバライドを乗算して送り速度を算出する。
【００２５】
これに対して、本発明の送り速度の算出は、指令プログラム解析手段１１で指令速度を取得し、オーバライド入力手段１７でオーバライドを取得し、段階的オーバライド変更手段１８で入力前のオーバライドから入力されたオーバライドまでをあらかじめ指定された時間またはあらかじめ指令されたオーバライドの変化量で段階的に変化させて実オーバライドとして出力し、速度演算手段１２において補間周期で段階的オーバライド変更手段１８の実オーバライドを取得し、指令速度と乗算して送り速度を算出する。本発明の段階的オーバライド変更手段１８は速度演算手段１２に属する。
【００２６】
図１１は段階的オーバライド変更手段のフローチャートを説明する図である。実施形態３における段階的オーバライド変更手段のフローチャートを以下に示す（図９参照）。本処理は補間周期で速度演算手段から呼び出される。本処理が実行される条件は以下の通りである。  
条件：
実オーバライド変更中フラグをＦ０とする。（初期状態はＦ０＝０）
本処理が呼び出されたときの補間周期の時刻をＴｐとする。
時刻Ｔ０でオーバライドがＯＶＲ０からＯＶＲ１に変化したとき、段階的オーバライド変更手段により、実オーバライド（ＯＶＲｐ）をあらかじめ指定したオーバライドの変化量（ＯＶＲｓ）ずつ段階的に変化させる。
ＯＶＲ０からＯＶＲ１への変化が増加または減少かを示すＦｓとする（増加はＦｓ＝１で、減少はＦｓ＝−１）。
【００２７】
以下、各ステップに従って説明する。  
●［ステップＳＡ０１］実オーバライド変更中フラグＦ０が１であるか否か判断し、実オーバライド変更中で、実オーバライド変更中フラグＦ０が１である場合（ＹＥＳ）、ステップＳＡ０７へ移行し、そうではない場合（ＮＯ）、ステップＳＡ０２へ移行する。  
●［ステップＳＡ０２］オーバライドが変化したか否か判断し、オーバライドが変化した場合（ＹＥＳ）、ステップＳＡ０３へ移行し、オーバライドが変化しなかった場合（ＮＯ）、処理を終了する。なお、オーバライドが変化したかは、オーバライド入力手段で取得したオーバライドを前回のオーバライドと比較して判断する。
●［ステップＳＡ０３］ＴｐをＴ０とする。変化する前のオーバライドをＯＶＲ０とする。変化した後のオーバライドをＯＶＲ１とする。実オーバライド変更中フラグＦ０を１とする。  
●［ステップＳＡ０４］ＯＶＲ１はＯＶＲ０より大きいか否か判断し、大きい場合（ＹＥＳ）、ステップＳＡ０５へ移行し、大きくない場合（ＮＯ）、ステップＳＡ０６へ移行する。  
●［ステップＳＡ０５］Ｆｓを１とし、ステップＳＡ０７へ移行する。  
●［ステップＳＡ０６］Ｆｓを−１とし、ステップＳＡ０７へ移行する。
●［ステップＳＡ０７］Ｔｐの実オーバライド（ＯＶＲｐ）を数２式で計算する。  
●［ステップＳＡ０８］Ｆｓが１であるか否か判断し、Ｆｓ＝１の場合（ＹＥＳ）、ステップＳＡ０９へ移行し、Ｆｓ＝−１の場合（ＮＯ）、ステップＳＡ１０へ移行する。
●［ステップＳＡ０９］実オーバライドＯＶＲｐが最大値ＯＶＲ１より大きいか否か判断し、大きい場合（ＹＥＳ）、ステップＳＡ１１へ移行し、大きくない場合（ＮＯ）、この周期の処理を終了する。つまり、このステップでは、実オーバライドの変更が終了か否かを判断する。
●［ステップＳＡ１０］実オーバライドＯＶＲｐが最小値ＯＶＲ１より小さいか否か判断し、小さい場合（ＹＥＳ）、ステップＳＡ１１へ移行し、小さくない場合（ＮＯ）、処理を終了する。つまり、このステップでは、実オーバライドの変更が終了か否かを判断する。  
●［ステップＳＡ１１］実オーバライド（ＯＶＲｐ）をＯＶＲ１とするとともに、実オーバライド変更中フラグＦ０を０とし、この周期の処理を終了する。
【符号の説明】
【００２８】
１０  数値制御装置
１１  指令プログラム解析手段
１２  速度演算手段
１３  補間手段
１４  補間後加減速手段
１５  サーボモータ制御部
１６  高速サイクル加工データ取得手段
１７  オーバライド入力手段
１８  段階的オーバライド変更手段
２０  サーボモータ
ＣＹＣｓ  入力周期
ＣＹＣｐ  補間周期
ＯＶＲｐ  実オーバライド
【図１】
2014241074.tif 000005
【図３】
2014241074.tif 000006
【図４】
2014241074.tif 000007
【図５】
2014241074.tif 000008
【図６】
2014241074.tif 000009
【図７】
2014241074.tif 000010
【図８】
2014241074.tif 000011
【図９】
2014241074.tif 000012
【図１０】
2014241074.tif 000013
【図１１】
2014241074.tif 000014
【図２】
2014241074.tif 000015