(57)【要約】【課題】送り軸が反転する指令において、指令した反転位置に到達しつつ、サイクルタイムを最小化できる数値制御装置を提供すること。【解決手段】数値制御装置１００は、加工プログラムに基づいて駆動軸の移動を指令する指令データを出力する指令解析部１１０と、駆動軸の指令経路が反転する場合における、反転前後の駆動軸の加速度を算出する反転時加速度計算部１３０と、補間周期毎の駆動軸の速度を算出する速度制御部１２０と、補間周期毎の動作経路上の駆動軸の位置を示す補間データを算出する補間部１４０と、を備えている。反転時加速度計算部１３０は、駆動軸の指令経路が反転する際に制限加加速度を超えない範囲で反転前後の加速度を最大値として設定することで、指令した反転位置に到達しつつ、サイクルタイムの最小化を図る。【選択図】図２
2016048512.tif 000002
【特許請求の範囲】
【請求項１】
複数の駆動軸を備えた工作機械を加工プログラムに基づいて制御してワークの加工を行う数値制御装置において、
前記加工プログラムに基づいて前記駆動軸の動作を指令する指令データを出力する指令解析部と、
前記指令解析部が出力した前記指令データによる前記駆動軸の指令経路が反転する場合、前記駆動軸の制限加加速度を満足する前記反転前後の前記駆動軸の加速度を算出する反転時加速度計算部と、
前記指令解析部が出力した前記指令データと、前記反転時加速度計算部が算出した前記反転前後の前記駆動軸の加速度とに基づいて、補間周期毎の前記駆動軸の速度を算出する速度制御部と、
前記指令解析部が出力した前記指令データと、前記速度制御部が算出した前記駆動軸の速度とに基づいて、補間周期毎の動作経路上の前記駆動軸の位置を示す補間データを算出する補間処理を行う補間部と、
を備え、
前記反転時加速度計算部は、前記速度制御部が前記指令データによる前記駆動軸の指令経路が反転することを検出した場合に、前記反転前後における前記駆動軸の加速度を算出する、
ことを特徴とする数値制御装置。
【請求項２】
前記反転時加速度計算部は、前記反転前後における前記駆動軸の加速度を、全ての制御軸に対して
【数１】
2016048512.tif 000004
を満足する最大加速度として算出する、
ことを特徴とする請求項１に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御装置に関し、特に反転時の最適な加速度を算出する数値制御装置数値制御装置に関する。
【背景技術】
【０００２】
工作機械の送り軸の速度制御を行う際に、プログラムで指令された速度を即座に出力すると、送り軸に対して急激な加速度や加加速度が生じ、工作機械に大きなショックや加工誤差が発生する。特許文献１に開示される技術では、加減速をフィルタリングして加速度や加加速度を抑制することで、工作機械に大きなショックが発生しないように制御している。このような制御方式により、送り軸の移動方向が変化することで加工経路にコーナができるような場合において、工作機械に発生するショックを効果的に抑制することができる。
【０００３】
ところで、特許文献１に記載されるような技術を用いた場合、プログラムで指令された経路とフィルタリング処理後の経路に誤差が生じる。そのため、上述したような送り軸の移動方向が変化することで加工経路が反転するような場合において、加減速をフィルタリングすると、指令した反転地点まで到達しないという問題が発生する。そこで、反転地点における加速度を０にして一旦停止するように制御することで、フィルタリング処理による経路誤差を抑えて到達地点のズレを防いでいた。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特公平０４−００５２０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、加減速をフィルタリングした状態で反転地点の加速度を０にすると、再加速する時間が必要となるため、サイクルタイムが伸びてしまうという問題があった。
【０００６】
そこで、本発明の目的は、送り軸が反転する指令において、指令した反転位置に到達しつつ、サイクルタイムを最小化できる数値制御装置を提供することである。
【課題を解決するための手段】
【０００７】
本願の請求項１に係る発明は、複数の駆動軸を備えた工作機械を加工プログラムに基づいて制御してワークの加工を行う数値制御装置において、前記加工プログラムに基づいて前記駆動軸の動作を指令する指令データを出力する指令解析部と、前記指令解析部が出力した前記指令データによる前記駆動軸の指令経路が反転する場合における、前記反転前後の前記駆動軸の加速度を算出する反転時加速度計算部と、前記指令解析部が出力した前記指令データと、前記反転時加速度計算部が算出した前記反転前後の前記駆動軸の加速度とに基づいて、補間周期毎の前記駆動軸の速度を算出する速度制御部と、前記指令解析部が出力した前記指令データと、前記速度制御部が算出した前記駆動軸の速度とに基づいて、補間周期毎の動作経路上の前記駆動軸の位置を示す補間データを算出する補間処理を行う補間部と、を備え、前記反転時加速度計算部は、前記速度制御部が前記指令データによる前記駆動軸の指令経路が反転することを検出した場合に、前記反転前後における前記駆動軸の加速度を算出する、ことを特徴とする数値制御装置である。
【０００８】
本願の請求項２に係る発明は、前記反転時加速度計算部は、前記反転前後における前記駆動軸の加速度を、全ての制御軸に対して、後述する数１式を満足する最大加速度として算出することを特徴とする請求項１に記載の数値制御装置である。
【発明の効果】
【０００９】
本発明により、送り軸が反転する指令において、指令した反転位置に到達しつつ、サイクルタイムを最小化できる数値制御装置を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態における数値制御装置の要部ブロック図である。
【図２】本発明の実施の形態における数値制御装置の機能ブロック図である。
【図３】本発明の実施の形態における反転時加速度計算処理の概要を説明する図である。
【図４】本発明の実施の形態における反転時加速度計算処理のフローチャートである。
【図５】指令経路の反転方向に角度がある場合における、従来技術と本発明の速度制御を比較する図である。
【図６】指令経路が１８０°反転する場合における、従来技術と本発明の速度制御を比較する図である。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態を図面と共に説明する。  
図１は、本発明に係る実施の形態の数値制御装置（ＣＮＣ）１００の要部ブロック図である。ＣＰＵ１１は数値制御装置１００を全体的に制御するプロセッサである。ＣＰＵ１１は、ＲＯＭ１２に格納されたシステムプログラムをバス２０を介して読み出し、該システムプログラムに従って数値制御装置全体を制御する。ＲＡＭ１３には一時的な計算データや表示データ及び表示器／ＭＤＩユニット７０を介してオペレータが入力した各種データが格納される。
【００１２】
ＳＲＡＭ１４は図示しないバッテリでバックアップされ、数値制御装置１００の電源がオフされても記憶状態が保持される不揮発性メモリとして構成される。ＳＲＡＭ１４中には、インタフェース１５を介して読み込まれた加工プログラムや表示器／ＭＤＩユニット７０を介して入力された加工プログラム等が記憶される。また、ＲＯＭ１２には、加工プログラムの作成及び編集のために必要とされる編集モードの処理や自動運転のための処理を実施するための各種システムプログラムがあらかじめ書き込まれている。  
本発明を実行する加工プログラム等の各種加工プログラムはインタフェース１５や表示器／ＭＤＩユニット７０を介して入力し、ＳＲＡＭ１４に格納することができる。
【００１３】
インタフェース１５は、数値制御装置１００とアダプタ等の外部機器７２との接続を可能とするものである。外部機器７２側からは加工プログラムや各種パラメータ等が読み込まれる。また、数値制御装置１００内で編集した加工プログラムは、外部機器７２を介して外部記憶手段に記憶させることができる。ＰＭＣ（プログラマブル・マシン・コントローラ）１６は、数値制御装置１００に内蔵されたシーケンスプログラムで工作機械の補助装置（例えば、工具交換用のロボットハンドといったアクチュエータ）にＩ／Ｏユニット１７を介して信号を出力し制御する。また、工作機械の本体に配備された操作盤の各種スイッチ等の信号を受け、必要な信号処理をした後、ＣＰＵ１１に転送する。
【００１４】
表示器／ＭＤＩユニット７０はディスプレイやキーボード等を備えた手動データ入力装置であり、インタフェース１８は表示器／ＭＤＩユニット７０のキーボードからの指令やデータを受けてＣＰＵ１１に転送する。インタフェース１９は手動パルス発生器等を備えた操作盤７１に接続されている。
【００１５】
各軸の軸制御回路３０〜３４はＣＰＵ１１からの各軸の移動指令量を受けて、各軸の指令をサーボアンプ４０〜４４に出力する。サーボアンプ４０〜４４はこの指令を受けて、各軸のサーボモータ５０〜５４を駆動する。各軸のサーボモータ５０〜５４は位置・速度検出器を内蔵し、この位置・速度検出器からの位置・速度フィードバック信号を軸制御回路３０〜３４にフィードバックし、位置・速度のフィードバック制御を行う。なお、本ブロック図では、位置・速度のフィードバックについては省略している。
【００１６】
スピンドル制御回路６０は、工作機械への主軸回転指令を受け、スピンドルアンプ６１にスピンドル速度信号を出力する。スピンドルアンプ６１はこのスピンドル速度信号を受けて、工作機械のスピンドルモータ６２を指令された回転速度で回転させ、工具を駆動する。  
スピンドルモータ６２には歯車あるいはベルト等でポジションコーダ６３が結合され、ポジションコーダ６３が主軸の回転に同期して帰還パルスを出力し、その帰還パルスはバス２０を経由してプロセッサ１１によって読み取られる。
【００１７】
図２は、本発明の一実施の形態における数値制御装置の機能ブロック図である。本発明の数値制御装置１００は、指令解析部１１０、速度制御部１２０、反転時加速度計算部１３０、補間部１４０、各軸駆動部１５０を備えている。これら各機能ブロックは、数値制御装置１００のＣＰＵ１１が各種システムプログラムを実行することにより機能する。
【００１８】
指令解析部１１０は、ＳＲＡＭ１４から加工プログラムを読み出し、加工プログラムにより指令されるプログラム指令経路を解析する。
速度制御部１２０は、指令解析部１１０が解析したプログラム指令経路に基づいて、各軸の速度、加速度、加加速度などを計算する。この時、指令解析部１１０で解析したプログラム指令経路において、いずれかの軸の経路が反転することが判明した場合、速度制御部１２０は反転時加速度計算部１３０に指令して、後述する反転時加速度計算処理により、当該軸の反転時における適切な加速度を計算させ、反転時加速度計算部１３０が算出した反転時の加速度を元にして速度制御を行う。
【００１９】
補間部１４０は、速度制御部１２０が算出した速度に基づいて、各軸の単位時間当たり移動量を算出する。そして、各軸駆動部１５０は、補間部１４０が算出した単位時間当たり移動量を元に、サーボを制御して各軸を駆動する。
【００２０】
以下では、反転時加速度計算部１３０が実行する反転時加速度計算処理について詳述する。図３は、反転時加速度計算処理において、反転前後の加速度と制限加加速度ベクトルの関係式を導出する手法を説明する図である。図３では、各軸に対する移動指令による制御点の移動速度、加速度、加加速度をベクトルで示している。
【００２１】
図３の（１）は、指令解析部１１０が解析したプログラム指令経路において、指令経路が反転している場合の制御点の速度ベクトルを表したものである。図で示すように、反転前の指令により制御点が速度ベクトルＶ1で移動し、反転後の指令により制御点が速度ベクトルＶ2で移動する場合を考える。
【００２２】
このような場合において、それぞれの速度ベクトルＶ1、Ｖ2を微分することにより、図３の（２）に示すような制御点の加速度ベクトルａ1、ａ2を求めることができる。この場合、折り返し地点における速度は０となるので、加速度ベクトルａ1は、速度ベクトルＶ1とは逆となり減速方向に働いている。
【００２３】
このような場合における、制御点の加速度ベクトルａ1、ａ2と、制御点の加加速度ベクトルｊの関係式を図３の（３）に示す。図３の（３）において、ベクトルｅ1、ｅ2は、反転前後の速度の指令経路方向の単位ベクトルである。図に示すように、制御点の加加速度ベクトルｊは加速度の大きさａ1、ａ2と、反転前後の速度の指令経路方向の単位ベクトルｅ1、ｅ2で表すことが出来る。
そして、図３の（３）に示す式から反転前後の加速度と制御点の制限加加速度ベクトルｊmaxの関係式として数１式が求まる。
【００２４】
【数１】
2016048512.tif 000003
【００２５】
なお、制限加加速度ベクトルｊmaxは、制御点の加加速度の制限値であり、数値制御装置１００の設定値として事前にＳＲＡＭ１４の設定領域などに設定しておいてもよいし、加工プログラム内で指定できるようにしてもよい。
【００２６】
数１式において添え字［ｉ］は、制御軸の各軸成分を意味する。このようにして求めた数１式に示す関係式を満足する反転前後の加速度を決定することで、各軸の反転制御におけるサイクルタイムを最小にすることができる。
【００２７】
図４は、本発明の反転時加速度計算部１３０が実行する反転時加速度計算処理のフローチャートである。
●［ステップＳＡ０１］反転前の速度ベクトルＶ1の大きさと、反転後の速度ベクトルＶ2の大きさが同じか否かを判定する。同じである場合にはステップＳＡ０２へと進み、異なる場合にはステップＳＡ０３へと進む。
●［ステップＳＡ０２］反転前の加速度の大きさａ1と、反転後の加速度の大きさａ2が等しいものとして条件を仮定する。
●［ステップＳＡ０３］反転前の速度ベクトルＶ1の大きさを反転前の加速度の大きさａ1で除算した値と、反転後の速度ベクトルＶ2の大きさを反転後の加速度の大きさａ2で除算した値とが等しいものとして条件を仮定する。これは、加速度や加加速度の条件によって特に制限されている場合を除き、反転前後の指令速度と加速度の関係が上記条件を満足する時にサイクルタイムが最小となることに基づいたものである。
●［ステップＳＡ０４］ステップＳＡ０２またはステップＳＡ０３で仮定した条件と、数２式に示す関係式に基づいて、反転前の加速度の大きさａ1と反転後の加速度の大きさａ2の関係を解き、加加速度の条件として追加する。
【００２８】
●［ステップＳＡ０５］ステップＳＡ０４で求めた加加速度の条件を満足するような、最大のａ1、ａ2が加速度の条件ａ1＜ａmax、ａ2＜ａmaxを満足するか否かを判定する。ここで、ａmaxは、制御点の加速度の制限値であり、数値制御装置１００の設定値として事前にＳＲＡＭ１４の設定領域などに設定しておいてもよいし、加工プログラム内で指定できるようにしてもよい。判定の結果、加速度の条件を満足している場合にはステップＳＡ０６へ進み、満足していない場合にはステップＳＡ０７へ進む。
●［ステップＳＡ０６］ステップＳＡ０５で求めたａ1、ａ2を反転前後の加速度として決定する。
●［ステップＳＡ０７］ステップＳＡ０５の判定で用いた加速度の条件において、加速度の条件の厳しい方の値を加速度制限値に設定する。本実施の形態では、ａ1、ａ2のうち加速度制限値ａmaxを超えた量が大きい方を加速度の条件の厳しい方の値であるとして加速度制限値に設定する。
●［ステップＳＡ０８］ステップＳＡ０７で設定した加速度の値を数１式に代入し、もう一方の加速度を決定する。
【００２９】
図５は、指令の反転方向に角度がある場合における、従来技術における速度制御による速度波形と、本発明の手法における速度制御による速度波形をグラフとして表現した図である。図５において、（ａ１）の速度波形は、反転時において時間一定の加減速制御を行った場合の速度波形である。この場合、最も高速に軸の移動方向が反転するが、工作機械に大きなショックが発生するなどの問題がある。
【００３０】
図５の（ａ２）の速度波形は、特許文献１等に記載される加速度制御を行う場合に反転地点における加速度を０にした時の速度波形を示しており、（ａ３）の速度波形は本発明の加速度制御をした場合の速度波形を示している。このように、本発明の加速度制御により、予め指定された最大加速度を超えることなく、サイクルタイムを短縮できる。
【００３１】
図６は、指令の反転方向に角度がない場合における、従来技術における速度制御による速度波形と、本発明の手法における速度制御による速度波形をグラフとして表現した図である。図６において、（ｂ１）の速度波形は、反転時において時間一定の加減速制御を行った場合の速度波形である。この場合、最も高速に軸の移動方向が反転するが、工作機械に大きなショックが発生するなどの問題がある。
【００３２】
図６の（ｂ２）の速度波形は、特許文献１等に記載される加速度制御を行う場合に反転地点における加速度を０にした時の速度波形を示しており、（ｂ３）の速度波形は本発明の加速度制御をした場合の速度波形を示している。このように、本発明の加速度制御により、予め指定された最大加速度を超えることなく、サイクルタイムを短縮できる。
【符号の説明】
【００３３】
１１    ＣＰＵ
１２    ＲＯＭ
１３    ＲＡＭ
１４    ＳＲＡＭ
１５，１８，１９    インタフェース
１６    ＰＭＣ
１７    Ｉ／Ｏユニット
２０    バス
３０，３１，３２，３３，３４    軸制御回路
４０，４１，４２，４３，４４    サーボアンプ
５０，５１，５２，５３，５４    サーボモータ
７０    表示器／ＭＤＩユニット
７１    操作盤
７２    外部機器
１００    数値制御装置
１１０    指令解析部
１２０    速度制御部
１３０    反転時加速度計算部
１４０    補間部
１５０    各軸駆動部
【図１】
2016048512.tif 000005
【図２】
2016048512.tif 000006
【図３】
2016048512.tif 000007
【図４】
2016048512.tif 000008
【図５】
2016048512.tif 000009
【図６】
2016048512.tif 000010