(57)【要約】【課題】移動指令実行時に、サーボのポジションゲインやフィードフォワード係数が変化しても、予め指定された許容位置偏差量以下となる送り速度以下の速度で移動指令を実行することが可能な数値制御装置を提供すること。【解決手段】本発明の数値制御装置は、加工プログラムを解析して指令データを生成するプログラム解析部と、指令データに基づいてサーボ制御に実際に用いるサーボのポジションゲイン、およびフィードフォワード係数を設定するパラメータ設定部と、該サーボのポジションゲイン、および該フィードフォワード係数、および予め指定された許容位置偏差量に基づいて、許容位置偏差量以下となる送り速度を算出し、指令データにより指令される送り速度が、算出した送り速度より大きい場合、指令データにより指令される送り速度を算出した送り速度でクランプする速度制御部とを備える。【選択図】図１
2016152019.tif 000002
【特許請求の範囲】
【請求項１】
加工プログラムに基づいて機械を制御する数値制御装置において、
前記加工プログラムを解析して指令データを生成するプログラム解析部と、
前記指令データに基づいてサーボ制御に実際に用いるパラメータを設定するパラメータ設定部と、
前記パラメータ、および予め指定された許容位置偏差量に基づいて、前記許容位置偏差量以下となる送り速度を算出し、前記指令データにより指令される送り速度が、前記算出した送り速度より大きい場合、前記指令データにより指令される送り速度を前記算出した送り速度でクランプする速度制御部と、
を備えたことを特徴とする数値制御装置。
【請求項２】
前記パラメータは、少なくともサーボのポジションゲイン、およびフィードフォワード係数を含む、
ことを特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記速度制御部は、前記許容位置偏差量以下となる送り速度を、
【数２】
2016152019.tif 000005
を満足する最大速度として算出する、
ことを特徴とする請求項１に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御装置に関し、特に速度制御を行う数値制御装置に関する。
【背景技術】
【０００２】
加工中は通常、数値制御装置からの位置指令とサーボモータの実位置との間には差が生じており、この差を位置偏差量と呼ぶ。位置偏差量が予め指定された許容位置偏差量を超えると、数値制御装置は位置偏差過大アラームを発生させ、サーボモータが異常状態だと判断して、サーボモータの励磁を切ることで、加減速を行わずにサーボモータを停止させる。
【０００３】
この場合、サーボモータの急停止に伴い機械にショックが生じる、重力軸の場合にはブレーキが働くまでの間に落下する危険性がある、加工中であれば加工物や工具に影響がある、復旧作業や原因特定などに時間を要して加工に時間がかかる、などの問題が発生する。なお、許容位置偏差量は以下の数１式によりオペレータが求めた値を数値制御装置に設定する。
【０００４】
【数１】
2016152019.tif 000003
【０００５】
通常、この許容位置偏差量は、サーボのポジションゲインとフィードフォワード係数を固定値として、最も早い早送りの速度の１．２倍程度の送り速度をもとに算出して設定する。また、切削用に別途設定可能にしてある場合もある。
【０００６】
しかしながら、実際には、サーボのポジションゲインとフィードフォワード係数は切削送り、早送り、主軸とサーボモータとの同期時、など、移動指令などサーボモータを動作させる各用途によって切換えて使用する場合がある。この位置偏差過大アラーム発生時の問題を回避するための先行技術としては、代表的なものとして特許文献１，２が開示されている。
【０００７】
特許文献１は、サーボモータ制御として、位置指令や速度指令などと、それらのフィードバックとの偏差を作成して、電流指令を所定の電流制限値でクランプする制御を行う技術である。また、特許文献２は、送りモータに過大な負荷がかかった時だけ、実位置偏差量と理論位置偏差量、サーボループゲインから速度適正値を算出して、速度をクランプすることを目的とする技術である。
【０００８】
上記のように従来技術では、サーボモータのフィードバックである実位置偏差量が予め指定された許容位置偏差量を超えていた場合にアラームを発生させたり、許容位置偏差量を越えない速度でクランプを行ったり、サーボ制御として位置指令や速度指令などと、それらのフィードバックとの偏差を作成して、電流指令を所定の電流制限値でクランプしたりしていた。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特許第４１３７８４９号公報
【特許文献２】特開平０４−２９３１０７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
許容位置偏差量は速度、サーボのループゲイン、フィードフォワード係数から求められるが、これらは移動指令などによって変化しうるため、移動指令などによってゲインやフィードフォワードが変更される場合がある。また、切削送りと早送りのようにサーボのループゲイン、フィードフォワード係数が異なる移動指令がオーバラップする場合、オーバラップ中にサーボのループゲイン、フィードフォワード係数が切換る場合がある。
【００１１】
また、プレス機などで使用する機能においては、１つの移動指令の移動中に、位置によってサーボのループゲインが変化していく場合がある。こういった場合、その時の送り速度に対する許容位置偏差量が正しくチェックできず、不正に位置偏差過大アラームが発生する問題があった。
【００１２】
加えて、特許文献１，２共に位置フィードバックや実位置偏差量などのフィードバック値をチェックするため、チェック時にタイムラグが発生し、フィードバックされた位置偏差量がチェックしたい位置偏差量を超えてしまう場合があった。また、フィードバックされた位置偏差量をもとに、許容位置偏差量以下となる電流指令や速度に変更する必要がある為、制御したい加減速で動作させることができないといった問題があった。
【００１３】
そこで本発明の目的は、移動指令実行時に、サーボのポジションゲインやフィードフォワード係数が変化しても、予め指定された許容位置偏差量以下となる送り速度以下の速度で移動指令を実行することが可能な数値制御装置を提供することである。
【課題を解決するための手段】
【００１４】
本願の請求項１に係る発明は、加工プログラムに基づいて機械を制御する数値制御装置において、前記加工プログラムを解析して指令データを生成するプログラム解析部と、前記指令データに基づいてサーボ制御に実際に用いるパラメータを設定するパラメータ設定部と、前記パラメータ、および予め指定された許容位置偏差量に基づいて、前記許容位置偏差量以下となる送り速度を算出し、前記指令データにより指令される送り速度が、前記算出した送り速度より大きい場合、前記指令データにより指令される送り速度を前記算出した送り速度でクランプする速度制御部と、を備えたことを特徴とする数値制御装置である。
【００１５】
本願の請求項２に係る発明は、前記パラメータは、少なくともサーボのポジションゲイン、およびフィードフォワード係数を含む、ことを特徴とする請求項１に記載の数値制御装置である。
【００１６】
本願の請求項３に係る発明は、前記速度制御部は、前記許容位置偏差量以下となる送り速度を、後述する数２式を満足する最大速度として算出する、ことを特徴とする請求項１に記載の数値制御装置である。
【発明の効果】
【００１７】
本発明により、移動指令実行時に、実際に使用するサーボのポジションゲインやフィードフォワード係数が変化しても、予め指定された許容位置偏差量以下となる送り速度以下の速度で移動指令を実行することが可能となり、位置偏差量過大アラームの発生を事前に抑制することが可能となる。また、設定された加減速値に従った移動指令が可能となる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態１における数値制御装置の機能ブロック図である。
【図２】本発明の実施形態１における数値制御装置のフローチャートである。
【図３】本発明の実施形態２における数値制御装置の機能ブロック図である。
【図４】本発明の実施形態２における数値制御装置のフローチャートである。
【発明を実施するための形態】
【００１９】
以下、本発明の実施の形態を図面と共に説明する。
本発明では、移動指令実行時に、その移動指令で実際に使用するサーボのポジションゲインと、その移動指令で実際に使用するフィードフォワード係数と、予め指定された許容位置偏差量とから、予め指定された許容位置偏差量以下となる送り速度を求め、移動指令の指令速度がこの許容位置偏差量以下となる送り速度より大きい場合には、予め指定された許容位置偏差量以下となる送り速度で指令速度をクランプして移動指令を実行する。また、前記の速度のクランプを加減速の実行より前に行うことで、設定された加減速によって動作することを可能とする。
【００２０】
＜実施形態１＞
本実施形態では、本発明の基本的な構成例を示す。
図１は、本発明の一実施形態における数値制御装置の機能ブロック図である。本実施形態の数値制御装置１は、プログラム解析部１１、パラメータ設定部１２、速度制御部１３、補間部１４、加減速部１５、サーボ制御部１６を備える。
プログラム解析部１１は、図示しないメモリに記憶されている加工プログラム２１から指令ブロックを読み込んで解析し、指令データを生成して出力する。
【００２１】
パラメータ設定部１２は、プログラム解析部１１が出力した指令データに基づいて、該指令データで指令される移動指令によりサーボのループゲインＰＧやフィードフォワード係数αに変更が必要であるか否かを判定し、変更が必要である場合にサーボのループゲインＰＧとフィードフォワード係数αを変更する。
【００２２】
速度制御部１３は、パラメータ設定部１２が設定した、指令データで指令される移動指令において実際に使用されるループゲインＰＧ、フィードフォワード係数αと、予め指定された許容位置偏差量ＥＲＲとに基づいて、以下の数２式を用いて許容位置偏差量以下となる速度Ｖを算出する。
【００２３】
【数２】
2016152019.tif 000004
【００２４】
そして、速度制御部１３は、算出した速度Ｖと、指令データにより指令される移動指令の指令速度とを比較し、指令速度が速度Ｖより大きい場合には、指令データにより指令される移動指令の送り速度をＶになるように変更する（クランプする）。
【００２５】
補間部１４は、指令データにより指令される移動指令と速度制御部１３で定まった速度とに基づいて指令経路上の点を補間周期で補間計算したデータを生成する。
加減速部１５は、補間部１４が出力した補間データに基づいて、加減速処理を行い補間周期毎の各駆動軸の速度を算出し、結果データをサーボ制御部１６へ出力する。
【００２６】
そして、サーボ制御部１６は、加減速部１５の出力と、パラメータ設定部１２が設定したサーボのループゲインＰＧやフィードフォワード係数αなどの各パラメータに基づいてサーボモータ２を制御する。
【００２７】
図２は、本発明の一実施形態における数値制御装置１上で実行される処理のフローチャートである。本処理は、数値制御装置１の制御周期毎に実行される。
●［ステップＳＡ０１］プログラム解析部１１が、加工プログラム２１から指令ブロックを読み込んで解析し、指令データを生成する。
【００２８】
●［ステップＳＡ０２］パラメータ設定部１２が、ステップＳＡ０１で生成された指令データに基づいて、該指令データで指令される移動指令によりサーボのループゲインＰＧに変更が必要であるか否かを判定する。ループゲインＰＧに変更が必要である場合にはステップＳＡ０３へ進み、必要ない場合にはループゲインＰＧをサーボ制御部１６に設定してステップＳＡ０４へ進む。
●［ステップＳＡ０３］パラメータ設定部１２が、ループゲインＰＧを移動指令で使用するサーボのループゲインに変更してサーボ制御部１６に設定する。
【００２９】
●［ステップＳＡ０４］パラメータ設定部１２が、ステップＳＡ０１で生成された指令データに基づいて、該指令データで指令される移動指令によりフィードフォワード係数αに変更が必要であるか否かを判定する。フィードフォワード係数αに変更が必要である場合にはステップＳＡ０５へ進み、必要ない場合にはフィードフォワード係数αをサーボ制御部１６に設定してステップＳＡ０６へ進む。
●［ステップＳＡ０５］パラメータ設定部１２が、フィードフォワード係数αを移動指令で使用するフィードフォワード係数に変更してサーボ制御部１６に設定する。
【００３０】
●［ステップＳＡ０６］速度制御部１３が、予め指定された許容位置偏差量ＥＲＲを取得してサーボ制御部１６に設定する。
●［ステップＳＡ０７］速度制御部１３が、指令データにより指令される移動指令において使用するフィードフォワード係数αが１であるか否かを判定する。フィードフォワード係数αが１である場合にはステップＳＡ１０へ進み、そうでない場合にはステップＳＡ０８へ進む。
【００３１】
●［ステップＳＡ０８］速度制御部１３が、ステップＳＡ０６で設定した許容位置偏差量ＥＲＲと、指令データにより指令される移動指令において使用するループゲインＰＧ、フィードフォワード係数αとに基づいて、数２式により許容位置偏差量以下となる速度を算出し、速度Ｖとして定める。
●［ステップＳＡ０９］速度制御部１３が、指令データにより指令される移動指令の指令速度が、ステップＳＡ０８で算出した速度Ｖより小さいか否かを判定する。小さい場合にはステップＳＡ１０へ進み、そうでない場合にはステップＳＡ１１に進む。
【００３２】
●［ステップＳＡ１０］速度制御部１３が、指令データにより指令される移動指令の指令速度を速度Ｖとして定める。
●［ステップＳＡ１１］補間部１４が、指令データにより指令される移動指令と速度制御部１３で定まった速度Ｖとに基づいて補間処理を実行し、補間データを作成する。
●［ステップＳＡ１２］加減速部１５が、ステップＳＡ１０で作成された補間データに基づいて加減速処理を実行し、結果データをサーボ制御部１６へと出力する。
【００３３】
ここまで、本発明の数値制御装置における基本的な構成と処理フローについて説明した。以下では、本発明の数値制御装置における、より具体的な実施形態を示す。
【００３４】
＜実施形態２＞
本実施形態では、補間前加減速、補間後加減速を行う構成を備えた数値制御装置に対して本発明を適用した例を示す。
図３は、本実施形態における数値制御装置の機能ブロック図である。本実施形態の数値制御装置１は、実施形態１の数値制御装置１の加減速部１５に換えて、補間前加減速部１７と補間後加減速部１８を備える。
本実施形態の数値制御装置１の各機能ブロックの動作は、補間部１４、補間前加減速部１７、補間後加減速部１８を除いて実施形態１の数値制御装置１と同様である。
【００３５】
補間前加減速部１７は、補間前加減速が有効に設定されている場合、指令データにより指令される移動指令と速度制御部１３で定まった速度に基づいて補間前加減速処理を行い、結果データを補間部１４へと出力する。
補間部１４は、補間前加減速が有効に設定されている場合は、補間前加減速部１７が出力した結果データに基づいて、また、無効に設定されている場合は、指令データにより指令される移動指令と速度制御部１３で定まった速度に基づいて指令経路上の点を補間周期で補間計算したデータを生成する。
【００３６】
そして、補間後加減速部１８は、補間後加減速が有効に設定されている場合、補間部１４が出力した補間データに基づいて、補間後加減速処理を行い補間周期毎の各駆動軸の速度を算出し、結果データをサーボ制御部１６へ出力する。なお、補間後加減速が無効に設定されている場合には、補間部１４の出力がサーボ制御部１６へ出力される。
【００３７】
図４は、本実施形態における数値制御装置１上で実行される処理のフローチャートである。本処理は、数値制御装置１の制御周期毎に実行される。また、本フローチャートにおいては、補間後加減速処理は常に有効に設定されているものとする。
なお、ステップＳＢ０１〜ステップＳＢ０６までは、実施形態１のステップＳＡ０１〜ステップＳＡ０６と同様の処理なので、以下ではステップＳＢ０７〜ステップＳＢ１５について説明する。
【００３８】
●［ステップＳＢ０７］速度制御部１３が、指令データにより指令される移動指令において使用するフィードフォワード係数αが１であるか否かを判定する。フィードフォワード係数αが１である場合にはステップＳＢ１１へ進み、そうでない場合にはステップＳＢ０８へ進む。
●［ステップＳＢ０８］速度制御部１３が、ステップＳＢ０６で設定した許容位置偏差量ＥＲＲと、指令データにより指令される移動指令において使用するループゲインＰＧ、フィードフォワード係数αとに基づいて、数２式により許容位置偏差量以下となる速度を算出し、速度Ｖとして定める。
●［ステップＳＢ０９］速度制御部１３が、指令データにより指令される移動指令の指令速度が、ステップＳＢ０８で算出した速度Ｖより小さいか否かを判定する。小さい場合にはステップＳＢ１１へ進み、そうでない場合にはステップＳＢ１０に進む。
【００３９】
●［ステップＳＢ１０］速度制御部１３が、ステップＳＢ０８で算出した速度Ｖを送り速度Ｆとして定める。
●［ステップＳＢ１１］速度制御部１３が、指令データにより指令される移動指令の指令速度を送り速度Ｆとして定める。
【００４０】
●［ステップＳＢ１２］補間前加減速が有効に設定されているか否かを判定する。有効に設定されている場合には、ステップＳＢ１４へ進み、そうでない場合にはステップＳＢ１３へ進む。
●［ステップＳＢ１３］補間部１４が、指令データにより指令される移動指令と速度制御部１３で定まった速度に基づいて補間処理を実行して補間データを生成し、ステップＳＢ１５へ進む。
【００４１】
●［ステップＳＢ１４］補間前加減速部１７が、指令データにより指令される移動指令と速度制御部１３で定まった速度に基づいて補間前加減速処理を実行し、該補間前加減速処理の結果データに基づいて、補間部１４が補間処理を実行し、補間データを生成する。
●［ステップＳＢ１５］補間後加減速部１８が、生成された補間データに基づいて補間後加減速処理を実行し、結果データをサーボ制御部１６へと出力する。
【００４２】
＜実施形態３＞
本実施形態においては、切削送りと早送りのようにサーボのループゲイン、フィードフォワード係数が異なる移動指令がオーバラップする制御に対して本発明を適用する例を示す。
切削送りと早送りの移動指令がオーバラップする場合、切削送りと早送りの切り換わりにおいて、オーバラップにより移動しながらサーボのループゲイン、フィードフォワード係数が切り換わっていく。
【００４３】
本実施形態の数値制御装置では、オーバラップ時にサーボのループゲイン、フィードフォワード係数が切り換わる前後においても、実際に使用されるサーボのポジションゲインおよびフィードフォワード係数と、予め指定された許容位置偏差量とから、逐次前記許容位置偏差量以下となる送り速度を求め、出力しようとする送り速度が前記許容位置偏差量以下となる速度より大きい場合には、前記許容位置偏差量以下の速度でクランプした速度を送り速度とする。そして、実施例１と同様にして、速度制御処理、加減速処理、補間処理を行う。
【００４４】
このように、本実施形態においては、切削送りと早送りの移動指令がオーバラップする場合、オーバラップにより移動しながらサーボのループゲイン、フィードフォワード係数が切り換わったとしても、逐次前記許容位置偏差量以下となる速度が算出され、該算出された速度により速度が制御されるため、位置偏差量過大アラームの発生を事前に抑制することが可能となり、また、設定された加減速値に従った移動指令が可能となる。
【００４５】
＜実施形態４＞
本実施形態においては、プレス機などで使用する機能で、１つの移動指令の移動中に、その時のサーボモータの位置によってサーボのループゲインが変化していく制御に対して本発明を適用する例を示す。
本実施形態の数値制御装置では、実際に使用される位置によって変化していくサーボのループゲインと、実際に使用されるフィードフォワード係数と、予め指定された許容位置偏差量とから、逐次前記許容位置偏差量以下となる送り速度を求め、出力しようとする送り速度が前記許容位置偏差量以下となる速度より大きい場合には、前記許容位置偏差量以下の速度でクランプした速度を送り速度とする。そして、実施例１と同様にして、速度制御処理、加減速処理、補間処理を行う。
【００４６】
このように、本実施形態においては、プレス機などで使用する機能のように、１つの移動指令の移動中に、その時のサーボモータの位置によってサーボのループゲインが変化したとしても、逐次前記許容位置偏差量以下となる速度が算出され、該算出された速度により速度が制御されるため、位置偏差量過大アラームの発生を事前に抑制することが可能となり、また、設定された加減速値に従った移動指令が可能となる。
【００４７】
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例に限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
【符号の説明】
【００４８】
１  数値制御装置
２  サーボモータ
１１  プログラム解析部
１２  パラメータ設定部
１３  速度制御部
１４  補間部
１５  加減速部
１６  サーボ制御部
１７  補間前加減速部
１８  補間後加減速部
２１  加工プログラム
【図１】
2016152019.tif 000006
【図２】
2016152019.tif 000007
【図３】
2016152019.tif 000008
【図４】
2016152019.tif 000009