(57)【特許請求の範囲】
【請求項１】
加工プログラムを解析するプログラム解析部と、
前記加工プログラムに従ってプログラム実行指令を出力するプログラム実行部と、
を有する数値制御装置において、
前記プログラム解析部は、
前記加工プログラムを先読みして１又は複数の連続する非切削ブロックを検出し、
前記非切削ブロックの実行時間中、機器を省電力状態に移行させ、前記省電力状態で動作させ、前記省電力状態移行前の状態に復帰させる場合に必要な第１の消費電力と、前記機器を前記省電力状態に移行させずに動作させる場合に必要な第２の消費電力とをそれぞれ算出し、
前記第１の消費電力のほうが前記第２の消費電力よりも小さい場合に 、前記機器を前記省電力状態に移行させ、前記省電力状態で動作させ、前記省電力状態移行前の状態に復帰させるための機器動作変動パターンを作成し、
前記省電力状態は、揺動動作又は円動作を含む連続した軸動作を変更した状態、あるいは、クーラント装置、切粉排出装置、エアブロー装置又は加工状態監視装置を含む周辺機器の動作を変更した状態であることを特徴とする
数値制御装置。
【請求項２】
前記機器動作変動パターンに従って前記機器を前記省電力状態に移行させ、前記省電力状態で動作させ、前記省電力状態移行前の状態に復帰させる機器動作変動パターン実行部をさらに有し、
前記プログラム実行部は、前記非切削ブロックの実行時に、前記機器動作変動パターン実行部を動作させることを特徴とする
請求項１記載の数値制御装置。
【請求項３】
前記プログラム実行部は、工具の温度、ワークの温度、切粉の量、軸の温度又は軸の負荷状態が所定のしきい値を超える場合、前記機器動作変動パターン実行部を動作させないことを特徴とする
請求項２記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は数値制御装置に関し、特に非切削状態における消費電力を低減することが可能な数値制御装置に関する。
【背景技術】
【０００２】
従来の数値制御装置は、ワークの切削加工を行う切削ブロックにおいては勿論、切削加工を行わない非切削ブロックにおいても、軸、主軸、クーラント等の周辺機器（以下、これらをまとめて機器と称する）を動作させ続ける（図１）。本来、非切削ブロックにおいては機器を動作させ続ける必要はないことも多いため、非切削ブロックにおける機器の動作は無駄な消費電力の発生源となり得る。
【０００３】
しかしながら、単純に非切削ブロックにおいて機器の動作を止めてしまうと、逆に消費電力が増えてしまう場合がある。図２に、機器を動作状態から省電力状態に移行させ、さらに省電力状態から動作状態に移行させる場合の電力消費の例を示す。ここで、省電力状態とは、例えば、主軸の回転数を所定の回転数まで下げた状態（停止状態を含む）、又は周辺機器の電力消費を動作状態よりも抑えた所定の状態（電源を切った状態を含む）などをいう。図２において、Ｗ１は、機器が動作状態から省電力状態に移行する際及び省電力状態から動作状態に移行する際に要する消費電力、Ｗ２は、機器が動作状態にあるときと省電力状態にあるときとの消費電力差を示している。ここで、Ｗ１＞Ｗ２ならば、非切削ブロックにおいて機器を動作状態から省電力状態に移行させると、かえって消費電力が増えることになる。
【０００４】
また、非切削ブロックにおいて機器の動作を単純な方法で変更すると、機器及び加工に影響が出る場合がある。例えば、主軸やワークの温度が高温になっている場合、クーラントを停止させると加工に影響が出る場合がある。また、軸や主軸は加減速を繰り返すとモータが発熱してしまうため、注意が必要である。
【０００５】
このような省電力に関連する先行技術として、特許文献１には、動力源を停止可能なブロックを特定して、当該ブロックの実行時に動力源を停止させる操作コードをＮＣプログラム（加工プログラム）に挿入し、当該ブロックの実行後に動力源を再起動させる操作コードを該ＮＣプログラムに挿入することを特徴とするＮＣプログラム生成装置が記載されている。
【０００６】
特許文献２には、加工プログラム中に非切削ブロックがある場合、その非切削ブロックから切削送りが開始されるまでの主軸停止時間及び主軸の加減速時間を得、主軸停止時間と主軸の加減速時間とを比較して前者が後者より長いとき、主軸回転指令中であっても主軸を停止させることを特徴とする数値制御装置が記載されている。
【０００７】
特許文献３には、切削送りを実行する際を除いては、切削液供給の停止を指示することを特徴とする数値制御装置が記載されている。
【０００８】
特許文献４には、周辺装置の消費電力の合計が上限値に達しないように周辺装置の作業開始タイミングを決定することを特徴とする、周辺装置の制御装置が記載されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１５−１３５６４９号公報
【特許文献２】国際公開第２００２／０６７０６８号
【特許文献３】特開２０００−３１７７６９号公報
【特許文献４】特許第５７１７８０２号
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献１記載の技術では、動力操作コードが加工プログラムに挿入されるため、プログラム指令の増加によりサイクルタイムが増加するという問題がある。また、動力源の状態の変化がプログラム指令実行のタイミングに左右されるという問題がある。
【００１１】
特許文献２記載の技術は、主軸の停止の可否を時間的要因のみで判断しているため、主軸の加減速によって消費電力が逆に大きくなってしまうことがある問題や、主軸の加減速によりモータが異常発熱してしまう問題に、適切に対処することができない。
【００１２】
特許文献３記載の技術は、切削液の供給を非切削時に単純に停止してしまうため、非切削時間が短い場合には、切削液を停止させることで逆に消費電力が増加してしまうことがある問題や、工具が熱を持っている場合に切削液を停止させると、工具が過剰な熱を持ったままになってしまう問題に、適切に対処することができない。
【００１３】
特許文献４記載の技術は、消費電力が所定の上限値を超えないようピーク電力を制御する技術であり、非切削時における省電力技術とは異なる。
【００１４】
本発明は、このような問題点を解決するためになされたものであり、非切削状態における消費電力を低減することが可能な数値制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明の一実施の形態にかかる数値制御装置は、加工プログラムを解析するプログラム解析部と、前記加工プログラムに従ってプログラム実行指令を出力するプログラム実行部と、を有する数値制御装置において、前記プログラム解析部は、前記加工プログラムを先読みして１又は複数の連続する非切削ブロックを検出し、前記非切削ブロックの実行時間中、機器を省電力状態に移行させ、前記省電力状態で動作させ、前記省電力状態移行前の状態に復帰させる場合に必要な第１の消費電力と、前記機器を前記省電力状態に移行させずに動作させる場合に必要な第２の消費電力とをそれぞれ算出し、前記第１の消費電力のほうが前記第２の消費電力よりも小さい場合に 、前記機器を前記省電力状態に移行させ、前記省電力状態で動作させ、前記省電力状態移行前の状態に復帰させるための機器動作変動パターンを作成し、前記省電力状態は、揺動動作又は円動作を含む連続した軸動作を変更した状態、あるいは、クーラント装置、切粉排出装置、エアブロー装置又は加工状態監視装置を含む周辺機器の動作を変更した状態であることを特徴とする。
【００１６】
他の実施の形態にかかる数値制御装置は、前記機器動作変動パターンに従って前記機器を前記省電力状態に移行させ、前記省電力状態で動作させ、前記省電力状態移行前の状態に復帰させる機器動作変動パターン実行部をさらに有し、前記プログラム実行部は、前記非切削ブロックの実行時に、前記機器動作変動パターン実行部を動作させることを特徴とする。
【００１７】
他の実施の形態にかかる数値制御装置は、前記プログラム実行部は、工具の温度、ワークの温度、切粉の量、軸の温度又は軸の負荷状態が所定のしきい値を超える場合、前記機器動作変動パターン実行部を動作させないことを特徴とする。
【発明の効果】
【００１８】
本発明により、非切削状態における消費電力を低減することが可能な数値制御装置を提供することができる。
【図面の簡単な説明】
【００１９】
【図１】従来の数値制御装置の動作を示す図である。
【図２】機器を省電力状態に移行させる際の電力消費の例を示す図である。
【図３】本発明の実施の形態に係る数値制御装置１００の構成を示す図である。
【図４Ａ】数値制御装置１００の動作を示す図である。
【図４Ｂ】数値制御装置１００の動作を示す図である。
【図４Ｃ】数値制御装置１００の動作を示す図である。
【図５】数値制御装置１００の動作を示す図である。
【図６】数値制御装置１００の動作を示す図である。
【図７】数値制御装置１００の動作を示す図である。
【図８】実施例１に係る数値制御装置１００の動作を示す図である。
【図９】実施例２に係る数値制御装置１００の動作を示す図である。
【発明を実施するための形態】
【００２０】
はじめに、本発明の概要について説明する。本発明の実施の形態にかかる数値制御装置１００は、非切削時に、サイクルタイム、その後の加工、及び機器の状態に影響を与えないよう配慮しながら、機器を省電力状態に移行させることにより、消費電力を抑制することに特徴を有する。例えば、数値制御装置１００は、非切削時に主軸の回転数を減少又は停止させ、かつ次の切削開始時までに元の回転数に戻す制御を行っても、当該制御を行わない場合に比べて消費電力が減少するか否かを、計算により評価する。そして、消費電力が減少する場合に、実際に回転数を変更させる制御を行う。
【００２１】
また、数値制御装置１００は、主軸の回転数を変更する場合は、主軸回転数指令を実行することなく、自動的に、非切削ブロック中には主軸回転数が減少し、切削再開時には回転数が回復するよう制御する。
【００２２】
また、数値制御装置１００は、連続した軸動作によって加工を行う軸がある場合、その軸の動作を変更する指令を実行することなく、自動的に、非切削ブロック中に軸動作を変更し、切削再開時には元の軸動作に戻るように自動的に軸動作を制御する。連続した軸動作による加工とは、例えば、チョッピングなどの研削を行うための揺動動作、連続した円運動により工具よりも幅の広い溝を加工するような軸の円動作等である。
【００２３】
また、数値制御装置１００は、周辺機器の動作を変更する場合は、周辺機器の制御指令を行うプログラム指令を実行することなく、自動的に、非切削ブロック中に周辺機器を省電力状態とし、切削再開時には周辺機器が定常状態すなわち通常の動作状態となるよう制御する。周辺機器とは、例えば、クーラント（切削液）装置、切粉排出装置、エアブロー出力装置、カメラなどによる加工状態監視装置等である。
【００２４】
このように、数値制御装置１００によれば、使用するユーザ側は、機器の制御指令を行う必要がない。数値制御装置１００が、諸条件を基に、機器を省電力状態にすることが可能か否かを判断し、可能な場合には自律的に省電力状態への移行及び動作状態への回復の制御を行う。
【００２５】
次に、図３のブロック図を用いて、数値制御装置１００の構成について説明する。数値制御装置１００は、プログラム解析部１１０、プログラム実行部１２０、機器動作変動パターン実行部１３０、パラメータ設定部１４０を有する。
【００２６】
プログラム解析部１１０は、加工プログラムに従ってプログラム実行情報を作成する。また、プログラム解析部１１０は、加工プログラムを先読みして、非切削ブロック又は複数の連続する非切削ブロック群（以降、単に非切削ブロックと称する）を発見する。また、プログラム解析部１１０は、非切削ブロックの実行時間を算出する。
【００２７】
ここで、加工プログラムの先読みによる非切削ブロックの判断は、公知の技術であって、例えば特許第４３７４０４５号などがある。数値制御装置のプログラム実行による加工時間を予測する技術は、公知の技術であって、例えば特許第４９８０４５８号、特開２０１４−３８４８２などがある。なお、プログラム解析部１１０は、例えば以下のような比較的単純な方法を使用して非切削ブロックの実行時間を算出することとしてもよい。
【００２８】
非切削ブロックが位置決めブロックである場合、例えば、移動距離、動作軸の早送り速度、加減速の設定値から、非切削ブロックの実行時間を算出できる。ここで、加減速の設定値とは、例えば、数値制御装置１００毎に予め定められている、時定数（動作軸が早送り速度に達するまでに要する時間）又は加速度をいう。非切削ブロックが補助機能指令ブロックである場合、例えば、予めその補助機能が動作する際の実行時間を図示しない記憶領域に登録しておき、プログラム解析部１１０はその登録値を読み出す。非切削ブロックがドウェル指令であれば、指令された時間を実行時間とする。なお、加速度の設定値は上述のものに限定されず、例えば加速度を変化させる時定数、又は加速度変化量を含めても良い。
【００２９】
さらに、プログラム解析部１１０は、非切削ブロックの実行時間中に機器が動作し続けた場合の消費電力を計算する。また、プログラム解析部１１０は、非切削ブロックの実行時間中、機器を省電力状態へと移行させ、省電力状態で動作させ、次の切削ブロックの実行が開始されるまでに機器を元の動作状態へと回復させることによる消費電力を計算する。そして、機器を省電力状態とした場合の消費電力が、機器が動作し続けた場合の消費電力以下になるか否かを判断する。
【００３０】
ここで、プログラム解析部１１０は、動作状態及び省電力状態における単位時間あたりの消費電力、並びに、動作状態から省電力状態への移行及び省電力状態から動作状態への移行に要する消費電力を予め測定しておき、その値を格納しておくことができる。プログラム解析部１１０は、これら格納された値を用いて、機器の様々な状態における消費電力を計算できる。例えば、軸動作については、加速、一定速、減速時の消費電力をそれぞれ予め測定、格納しておく。
【００３１】
また、機器の省電力状態は、機器を停止させた状態であっても良く、切削ブロックでの動作状態よりも消費電力が低くなるような任意の動作を実行する状態であっても良い。省電力状態は一つである必要はなく、複数存在することもあり得る。例えば、軸動作については、軸の速度や加減速を切削ブロックでの動作状態よりも低い値に調整することにより、省電力状態を作り出すことができる。
【００３２】
プログラム解析部１１０は、機器を省電力状態としたほうが消費電力を抑制できると判断された場合、機器の動作を変化させるためのシナリオである機器動作変動パターンを作成する。機器動作変動パターンは、動作状態から省電力状態へ変化するために必要な時間、省電力状態から動作状態へ変化するために必要な時間、及び省電力状態を維持する時間の情報を含む。
【００３３】
ここで、動作状態から省電力状態への移行に要する時間、及び省電力状態から動作状態への移行に要する時間は、予め測定しておいた値を格納しておき、その値を使用しても良い。また、軸動作の速度を減少させることで省電力状態へ移行する場合は、予め数値制御装置１００に設定された加速度と、速度の変化幅とから移行時間を求めることができる。あるいは、予め数値制御装置１００に設定された時定数から移行時間を求めることもできる。
【００３４】
機器の省電力状態が１つに決まっている場合、プログラム解析部１１０は、上述の移行時間と、非切削ブロックの実行時間とに基づいて機器動作変動パターンを作成できる。省電力状態が複数存在する場合、プログラム解析部１１０は、消費電力がより小さくなる機器動作変動パターンを選択することが好ましい。消費電力がより小さくなる機器動作変動パターンは、典型的には全数チェック（図６参照。詳細は後述する）や２分法によって求めることができる。
【００３５】
ここで、２分法による機器動作変動パターンの選択手法について説明する。例えば、主軸の回転数を０とした省電力状態に移行する機器動作変動パターンＡと、現在の回転数の１／２とした省電力状態に移行する機器動作変動パターンＢとの消費電力を比較する。仮に機器動作変動パターンＢのほうが消費電力が小さければ、パターンＢを仮の解とする。次に、主軸の回転数を、仮の解より小さい現在の回転数の１／４とした省電力状態に移行する機器動作変動パターンＣと、仮の解より大きい現在の回転数の３／４とした省電力状態に移行する機器動作変動パターンＤとの消費電力を比較する。以降、同様の演算を繰返し行うことにより、解として、最も消費電力の小さい機器動作変動パターンを得ることができる。
【００３６】
また、軸動作の場合は、加速度を小さくして加速、減速を行うことでも消費電力は低くなる。そのため、加速度や時定数を変更することで省電力状態を作り出しても良い。この場合、プログラム解析部１１０は、加速度や時定数の異なる機器動作変動パターンを複数作成し、加速度や時定数、及び軸の動作状態の組合せからなる複数の機器動作変動パターンから、消費電力がより小さくなるものを選択することとしても良い。
【００３７】
プログラム実行部１２０は、プログラム実行情報に従ってプログラム実行指令を作成する。また、プログラム実行部１２０は、非切削ブロックの実行が開始されたならば、機器動作変動可能条件が満たされているか否かを判断する。機器動作変動可能条件とは、機器動作変動パターンに従って機器を省電力状態へと移行させるべきか否かを判定するための条件である。例えば、周辺機器の場合であれば、工具の温度、ワークの温度、切粉量など、軸動作の場合であれば、軸の温度、軸の負荷状態などが、所定の閾値を超えていないことなどを条件とすることができる。具体的には、プログラム実行部１２０は、工具の温度がＸ度を超えていれば、クーラントを止めない（省電力状態への移行を行わない）といった制御を行うことができる。
【００３８】
これらの条件判断に用いる種々の値は、典型的には、数値制御装置１００に入力される信号から取得することができる。例えば軸動作の場合には、モータに付属するセンサからの値が数値制御装置１００に入力され、プログラム実行部１２０は、入力値と予め設定された閾値との比較による判断を行う。また、非切削ブロック中の補助機能指令によって、判断に用いる値を取得することも可能である。あるいは、任意の外部機器から値を取得することもできる。例えば、サーモグラフィが工具やワークの温度を測定し、数値制御装置１００がサーモグラフィからその温度を取得することができる。なお、機器動作変動可能条件の内容、すなわち判断に用いる値や閾値などは、機器ごとに任意に設定することができる。また、機器動作変動可能条件は必ずしも設定しなくても良い。
【００３９】
プログラム実行部１２０は、機器動作変動可能条件が満たされている場合、又は機器動作変動可能条件が設定されていない場合、機器動作変動パターン実行要求を行う。
【００４０】
機器動作変動パターン実行部１３０は、機器動作変動パターン実行要求に応じ、機器動作変動パターンに従って機器の動作を変動させる。すなわち、機器を省電力状態へと移行させ、省電力状態で一定時間動作させた後、次の切削ブロックの実行開始までに動作状態へと回復させる。
【００４１】
なお、非切削ブロックの実行時間はあくまで予測時間であるため、機器動作変動パターン実行部１３０は、非切削ブロックの実際の実行時間に合わせて、機器動作変動パターンを補正しながら実行してもよい。例えば、非切削ブロックの実行時間が延びた場合は、その時間分だけ省電力状態の維持時間を伸ばし、動作状態への移行開始を遅らせることができる。
【００４２】
パラメータ設定部１４０は、上述の機器動作変動可能条件を設定するためのインターフェイスである。ユーザは、パラメータ設定部１４０を介し、機器動作変動可能条件の内容、すなわち判断に用いる値や閾値などを設定することができる。
【００４３】
続いて、図４乃至図７のフローチャートを用いて、数値制御装置１００の動作について説明する。
【００４４】
図４Ａは、プログラム解析部１１０の動作を示すフローチャートである。
Ｓ１０１：
プログラム解析部１１０は、加工プログラムを先読みして、非切削ブロックを発見し、非切削ブロックの実行時間を算出する。
【００４５】
Ｓ１０２：
プログラム解析部１１０は、非切削ブロックの実行時間中に機器が動作し続けた場合の消費電力を計算する。
【００４６】
Ｓ１０３：
プログラム解析部１１０は、機器を省電力状態へと移行させることで消費電力を抑制することが可能か否か判断する。不可能である場合は処理を終了する。可能である場合はステップＳ１０４に遷移する。
【００４７】
Ｓ１０４：
プログラム解析部１１０は、消費電力を抑制することが可能な機器動作変動パターンを作成する。これにより、動作状態から省電力状態へ変化するために必要な時間、省電力状態から動作状態へ変化するために必要な時間、及び省電力状態を維持する時間が確定する。また、機器をどのような省電力状態に移行させるべきかが確定する。
【００４８】
図４Ｂは、プログラム実行部１２０の動作を示すフローチャートである。
Ｓ２０１：
プログラム実行部１２０は、非切削ブロックの実行開始を検知したならば、ステップＳ２０２に遷移する。条件が満たされていなければ処理を終了する。
【００４９】
Ｓ２０２：
プログラム実行部１２０は、機器動作変動可能条件が満たされているか否かを判断する。条件が満たされていなければ処理を終了する。条件が満たされているか、条件が設定されていない場合はステップＳ２０３に遷移する。
【００５０】
Ｓ２０３：
プログラム実行部１２０は、機器動作変動パターン実行要求を行い、機器動作変動パターン実行部１３０を呼出す。
【００５１】
図４Ｃは、機器動作変動パターン実行部１３０の動作を示すフローチャートである。
Ｓ３０１：
機器動作変動パターン実行部１３０は、機器動作変動パターン実行要求に応じ、機器動作変動パターンを取得する。機器動作変動パターンを正常に取得できない場合は処理を終了する。その他の場合はステップＳ３０２に遷移する。
【００５２】
Ｓ３０２：
機器動作変動パターン実行部１３０は、機器動作変動パターンに従って機器の動作を変動させる。
【００５３】
図５は、プログラム解析部１１０が機器動作変動パターンを作成する処理を示すフローチャートである。
Ｓ４０１：
プログラム解析部１１０は、機器を動作状態から省電力状態へ移行させるのに要する時間Ｔ１を算出する。
【００５４】
Ｓ４０２：
プログラム解析部１１０は、機器を省電力状態から動作状態へ移行させるのに要する時間Ｔ２を算出する。
【００５５】
Ｓ４０３：
プログラム解析部１１０は、非切削ブロックの実行時間Ｔを算出する。
【００５６】
Ｓ４０４：
プログラム解析部１１０は、Ｔ＞Ｔ１＋Ｔ２であるか否か判断する。Ｔ＞Ｔ１＋Ｔ２である場合、ステップＳ４０５に遷移する。一方、Ｔ≦Ｔ１＋Ｔ２であれば、この機器動作変動パターンは成り立たないので、処理を終了する。
【００５７】
Ｓ４０５：
プログラム解析部１１０は、機器を動作状態から省電力状態へ移行させるのに要する消費電力Ｐ１を算出する。
【００５８】
Ｓ４０６：
プログラム解析部１１０は、機器を省電力状態から動作状態へ移行させるのに要する消費電力Ｐ２を算出する。
【００５９】
Ｓ４０７：
プログラム解析部１１０は、機器が省電力状態に維持される時間（Ｔ−Ｔ１−Ｔ２）における消費電力Ｐ３を算出する。
【００６０】
Ｓ４０８：
プログラム解析部１１０は、機器が非切削ブロックにおいて動作状態に維持された場合の消費電力Ｐを算出する。ここで、機器が動作状態に維持される時間はＴである。
【００６１】
Ｓ４０９：
プログラム解析部１１０は、Ｐ＞Ｐ１＋Ｐ２＋Ｐ３であるか否か判断する。Ｐ＞Ｐ１＋Ｐ２＋Ｐ３である場合、ステップＳ４１０に遷移する。一方、Ｐ≦Ｐ１＋Ｐ２＋Ｐ３であれば、この機器動作変動パターンは成り立たないので、処理を終了する。
【００６２】
Ｓ４１０：
プログラム解析部１１０は、機器動作変動パターンを作成する。ここで作成される機器動作変動パターンは、非切削ブロックの開始時刻に、機器の省電力状態への移行を開始させ、それから時間Ｔ−Ｔ２後に、機器の動作状態への移行を開始させるものである。
【００６３】
図６は、プログラム解析部１１０が機器動作変動パターンを全数チェックにより選択する処理を示すフローチャートである。プログラム解析部１１０は、Ｎ個の省電力状態全てについて、機器動作変動パターンの消費電力を算出し、最も消費電力の小さい機器動作変動パターンを特定する。
【００６４】
Ｓ５０１：
省電力状態ｎについて、消費電力の計算を開始する。
【００６５】
Ｓ５０２乃至Ｓ５１１：
プログラム解析部１１０は、ステップＳ４０１乃至Ｓ４０９と同様に、機器を動作状態から省電力状態ｎに移行させるのに要する時間Ｔｎ１及び消費電力Ｐｎ１、省電力状態を維持する時間Ｔ及びその間の消費電力Ｐｎ３、省電力状態から動作状態に移行させるのに要する時間Ｔｎ２及び消費電力Ｐｎ２を算出する。また、省電力状態ｎの場合の機器動作変動パターンの消費電力Ｐｎ＝Ｐｎ１＋Ｐｎ２＋ｐｎ３を算出する。
【００６６】
なお、省電力状態ｎにおける機器動作変動パターンが成り立たない場合（Ｓ５０５，Ｓ５１０でＮｏの場合）は、ステップＳ５１５に遷移する。
【００６７】
Ｓ５１２乃至Ｓ５１４：
省電力状態ｎにおける機器動作変動パターンが作成できた場合、プログラム解析部１１０は、省電力状態ｎにおける機器動作変動パターンの消費電力Ｐｎと、それまでに作成された他の機器動作変動パターンの消費電力のうち最も小さいものＰｎ’とを比較する。Ｐｎ’＞Ｐｎであれば、省電力状態ｎにおける機器動作変動パターンが、現時点で最も消費電力の小さい機器動作変動パターンであることになる。この場合、省電力状態ｎを、ｎ’に保存する。
【００６８】
Ｓ５１５乃至Ｓ５１６：
プログラム解析部１１０は、ステップＳ５０２以降の処理を、Ｎ個の省電力状態全てが網羅されるまで繰り返す。
【００６９】
Ｓ５１７乃至Ｓ５１９：
プログラム解析部１１０は、最も消費電力の小さい機器動作変動パターンとして、省電力状態ｎにおける機器動作変動パターンを選択する。なお、ｎ’が０、すなわち有効な機器動作変動パターンが一つも作成できなかった場合は、省電力状態へ移行することはできないこととなる。
【００７０】
図７は、機器動作変動パターン実行部１３０が、機器動作変動パターンに従って機器の動作を変動させる処理を示すフローチャートである。
Ｓ６０１：
機器動作変動パターン実行部１３０は、機器動作変動パターン実行要求を検知すると、機器を動作状態から省電力状態に移行させる処理を開始する。
【００７１】
Ｓ６０２：
機器動作変動パターン実行部１３０は、機器を動作状態から省電力状態に移行させるのに要する時間Ｔｄのカウントダウンを開始する。
【００７２】
Ｓ６０３：
時間Ｔｄが経過するまでの間、省電力状態への移行処理が継続する。時間Ｔｄが経過したならば、ステップＳ６０４に遷移する。
【００７３】
Ｓ６０４：
機器動作変動パターン実行部１３０は、機器の省電力状態での動作を開始させる。
【００７４】
Ｓ６０５：
機器動作変動パターン実行部１３０は、機器を省電力状態に維持すべき時間Ｔｃのカウントダウンを開始する。
【００７５】
Ｓ６０６：
時間Ｔｃが経過するまでの間、省電力状態での動作が継続する。時間Ｔｃが経過したならば、ステップＳ６０７に遷移する。
【００７６】
Ｓ６０７：
機器動作変動パターン実行部１３０は、機器を省電力状態から動作状態に移行させる処理を開始する。
【００７７】
Ｓ６０８：
機器動作変動パターン実行部１３０は、機器を省電力状態から動作状態に移行させるのに要する時間Ｔａのカウントダウンを開始する。
【００７８】
Ｓ６０９：
時間Ｔａが経過するまでの間、動作状態への移行処理が継続する。時間Ｔａが経過したならば、処理を終了する。
【００７９】
＜実施例１＞
実施例１として、数値制御装置１００が、非切削ブロックにおいて、周辺機器であるクーラントをＯＦＦ（射出停止）にすることにより、消費電力を抑制する例を示す。
【００８０】
本実施例では、数値制御装置１００には、クーラント射出定常時の単位時間の消費電力、及びクーラント停止時の待機状態の単位時間の消費電力が予め設定されており、プログラム解析部１１０がこれらの値を参照可能であるものとする。また、数値制御装置１００には、機器動作変動可能条件として、クーラントをＯＦＦにすることが可能な工具の温度の上限値が予め設定されており、プログラム実行部１２０がこの値を参照可能であるものとする。工具温度は、数値制御装置１００が把握可能であるものとする。
【００８１】
また、本実施例では、クーラントをＯＦＦにした状態を省電力状態とする。機器動作変動パターン実行部１３０は、Ｍ０８及びＭ０９に割り付けられた信号により、クーラントのＯＮ（射出）又はＯＦＦを制御できる。すなわち、機器動作変動パターン実行部１３０は、機器動作変動パターンに従って、クーラントをＯＮ又はＯＦＦとすべきタイミングで、割り付けられた信号操作を実行する。
【００８２】
通常、機器動作変動パターン実行部１３０がクーラントに対して実施できる制御は、ＯＮ又はＯＦＦの切替えだけである。但し、クーラントＯＦＦ指令後からクーラントが停止するまでには一定の時間を要し、その際には消費電力（回生電力）が発生する。また、クーラントＯＮ指令後からクーラント射出が定常になるまでの間も、一定の時間と消費電力を要する。そこで、数値制御装置１００は、これらの時間及び消費電力を予め測定、格納しておくこととし、プログラム解析部１１０がこの値を参照可能であるものとする。
【００８３】
プログラム解析部１１０は、加工プログラムを先読みし、切削ブロック間にある非切削ブロックを検出し、非切削ブロックの実行時間Ｔｎを算出する。Ｔｎは、位置決め時間、補助機能指令の実行時間、ドウェル指令の実行時間を含む。位置決め時間は、設定値と指令移動量から算出できる。補助機能指令の実行時間は、予め指令ごとに設定された実行時間を使用する。ドウェル指令の実行時間は、指令時間である。
【００８４】
プログラム解析部１１０は、時間ＴｎにわたってクーラントをＯＮとした場合の消費電力を算出する。また、時間Ｔｎの間に、クーラントをＯＦＦとし、待機状態を経て、クーラントをＯＮとした場合の総消費電力を算出する。プログラム解析部１１０は、クーラントをＯＦＦとした方が消費電力が小さくなる場合には、クーラントの動作変動パターンを作成する。
【００８５】
プログラム実行部１２０は、切削ブロック直後の非切削ブロックの実行開始時に、クーラントの動作変動可能条件が満足されているか、すなわち工具温度が所定の閾値以内であるか判定する。動作変動可能条件が満足されている場合、機器動作変動パターン実行部１３０が、クーラント動作変動パターンに従って、クーラントの動作を変動させる。
【００８６】
図８に、本実施例における機器動作変動制御の態様を示す。非切削ブロック（非切削１）の開始直後に、機器動作変動パターン実行部１３０が、クーラントを省電力状態に移行させる処理を実行し、クーラントはＯＦＦとなる。このとき、クーラントをＯＦＦとする制御を行うために消費電力が一時的に上昇する。クーラントの流量は徐々に減少し、一定時間後に０となる。このときの消費電力は、動作状態の消費電力よりも低くなる。機器動作変動パターン実行部１３０は、非切削ブロック（非切削３）が終了する時刻より一定時間前、すなわちクーラントの流量が定常状態に戻るのに要する時間だけ前に、クーラントを動作状態に回復させる。このとき、クーラントをＯＮとする制御を行うために消費電力が一時的に上昇する。クーラントの流量は徐々に増加し、切削ブロックの開始時刻には定常状態に移行する。
【００８７】
本実施例では周辺機器の一例としてクーラントを例示したが、周辺機器はクーラントに限定されるものではない。周辺機器は、切削時に使用され、かつ非切削時には使用しない又は使用しなくても構わないものであれば、いかなるものであっても良い。また、省電力状態は、周辺機器を停止させた状態に限定されるものではなく、通常の動作状態より消費電力が抑制できるのであればいかなる状態であっても良い。
【００８８】
＜実施例２＞
実施例２として、数値制御装置１００が、非切削ブロックにおいて、主軸回転速度を減少させることにより、消費電力を抑制する例を示す。
【００８９】
本実施例では、プログラム解析部１１０は、軸動作を省電力状態に移行させ、元の動作状態に戻す動作における消費電力を評価し、動作変動パターンを作成する。この際、軸動作については、数値制御装置１００に設定された軸の加速度や時定数に従う必要は無く、消費電力を減少させられるのであれば、任意の動作変動パターンを用いて軸動作を制御してよい。
【００９０】
例えば、主軸のように一定回転数で動作しているような軸動作の場合は、減速させて一定速度にするのではなく、単に駆動電力をカットすることでフリーラン状態とし、摩擦による減速を行うこととしてもよい。この場合、予め摩擦による減速度を測定、格納しておくことにより、プログラム解析部１１０は、電力カットからの経過時間に基づいて、任意の時点における主軸の回転数を求めることができる。そして、その回転数を定常状態における回転数まで加速させるための消費電力を予測する。これがこの動作変動パターンにおける消費電力となる。
【００９１】
次に、主軸の回転数をω１からω２に減速させる場合、及びω２からω１に加速させる場合の消費電力量の予測方法を示す。モータ固有の物理特性を次のように定義する。
主軸の回転数      ω１，ω２（ｒａｄ／ｓｅｃ）
主軸の巻線抵抗    Ｒ（Ω）
トルク定数        Ｋｔ（Ｎｍ／Ａ）
負荷イナーシャ    Ｊ（ｋｇｍ２）
主軸の摩擦トルク  Ｔｆ（Ｎｍ）
主軸の加速度      ａ（ｒａｄ／ｓｅｃ２）
【００９２】
このとき、主軸の加速時の電流Ｉ（Ａ）は次式（Ｉ）により求めることができる。
Ｉ＝（Ｊ×ａ）／Ｋｔ      ・・・（Ｉ）
【００９３】
モータ損失として銅損のみを考慮すると、主軸のω２からω１への加速時の消費電力量Ｅａ（Ｗｓ）は、加減速時間ｔｆ１を用いて次式（ＩＩ）により求めることができる。
Ｅａ＝１／２×Ｊ×（ω１２−ω２２）＋Ｒ×Ｉ２×ｔｆ１
＝Ｊ×（ω１２−ω２２）／２＋（Ｒ×Ｊ２×（ω１−ω２）／Ｋｔ２）×ａ
・・・（ＩＩ）
【００９４】
運動エネルギーが回生される割合を表す係数をＫｒとすると、主軸がω１からω２へと減速する時の消費電力量Ｅｄ（Ｗｓ）は、次式（ＩＩＩ）により求めることができる。
Ｅｄ＝−１／２×Ｊ×（ω１２−ω２２）×Ｋｒ＋Ｒ×Ｉ２×ｔｆ１
＝−Ｊ×Ｋｒ×（ω１２−ω２２）／２
＋（Ｒ×Ｊ２×（ω１−ω２）／Ｋｔ２）×ａ      ・・・（ＩＩＩ）
【００９５】
主軸が一定速度ω２で回転しているときの消費電力量Ｅｃは、一定速度時間ｔｆ２を用いて次式（ＩＶ）により求めることができる。
Ｅｃ＝Ｔｆ×ω２×ｔｆ２＋Ｒ×（Ｔｆ／Ｋｔ）２×ｔｆ２
＝Ｔｆ×ω２×ｔｆ２＋Ｒ×ｔｆ２×（Ｔｆ／Ｋｔ）２      ・・・（ＩＶ）
【００９６】
プログラム解析部１１０が先読みにより求めた非切削ブロック実行時間Ｔ内において、主軸の加減速および一定速の領域の各消費電力量を加算することによって、主軸の消費電力量Ｅｍは次式（Ｖ）により求めることができる。
Ｅｍ＝Ｅａ＋Ｅｄ＋Ｅｃ      ・・・（Ｖ）
【００９７】
プログラム解析部１１０は、Ｅｍが動作状態における主軸回転指令Ｓによりω１の回転数を指定した場合の非切削ブロック実行時間Ｔ内での消費電力Ｅ＝Ｔｆ×ω１×Ｔ＋Ｒ×Ｔ×（Ｔｆ／Ｋｔ）２よりも低くなる（Ｅ＞Ｅｍ）ようなω２があるかを確認し、ある場合には最も消費電力が低くなるω２を求める。なおω１＝ω２の場合はＥ＝Ｅｍとなる。
【００９８】
プログラム解析部１１０は、ω２と、そこから求められる加減速時間、一定速時間によって、主軸動作変動パターンを作成する。
【００９９】
また、本実施例では、プログラム実行部１２０は、機器動作変動可能条件として、モータ温度の上限値を参照する。非切削ブロック実行開始時点において、主軸のモータ温度が機器動作変動可能条件を満たしていれば、プログラム実行部１１０は機器動作変動パターン実行要求を行う。これに応じ、機器動作変動パターン実行部１３０は主軸の動作変動パターンの実行を開始し、主軸の速度を上記方法で求めたω２となるよう制御する。なお、本実施例では主軸の回転速度を動作変動制御の対象とし、動作変動可能条件としてモータ温度を使用したが、本発明はこれに限定されるものではない。
【０１００】
図９に、本実施例における機器動作変動制御の態様を示す。非切削ブロック（非切削１）の開始直後に、機器動作変動パターン実行部１３０が、主軸を省電力状態に移行させる処理を実行し、主軸の回転数はω１からω２に向けて減速し始める。このとき、回生電力が発生するため消費電力が一時的に下降する。主軸の回転数は徐々に減少し、一定時間後にω２となる。このときの消費電力は、動作状態の消費電力よりも低くなる。機器動作変動パターン実行部１３０は、非切削ブロック（非切削３）が終了する時刻より一定時間前、すなわち主軸の回転数がω１に戻るのに要する時間だけ前に、主軸の回転数の加速を開始する。このとき、加速を行うために消費電力が一時的に上昇する。主軸の回転数は徐々に回復し、切削ブロックの開始時刻には定常状態ω１に移行する。
【０１０１】
＜実施例３＞
実施例３として、数値制御装置１００が、非切削ブロックにおいて、研削を行うためのチョッピング動作などの連続した軸の揺動動作を停止状態とすることにより、消費電力を抑制する例を示す。また、本実施例では、機器動作変動可能条件を設定しない。
【０１０２】
揺動動作時の１往復あたりの動作時間Ｔは、揺動動作の指令速度Ｖｏ、揺動距離Ｄｏ、揺動動作の加減速に要する時間Ｔｏａによって求められる。（加速と減速は同じ直線形の加減速パターンとする）
Ｔ＝２＊｛（Ｄｏ−Ｖｏ＊Ｔｏａ）／Ｖｏ  ＋  Ｔｏａ｝
【０１０３】
揺動動作時の１往復あたりの消費電力量は、上述の実施例２で示した式により導出しても良く、それとは異なる手法（例えば特許第５３８３２９３号参照）で導出しても良く、又は加工前又は切削中に測定しておいた１往復あたりの実消費電力を使用しても良い。
【０１０４】
プログラム解析部１１０は、非切削ブロックの実行時間Ｔｒ、時間Ｔｒでの定常状態の消費電力Ｅｒ、定常状態から減速停止に要する時間Ｔｄと消費電力Ｅｄ、停止状態から定常状態への加速に要する時間Ｔａと消費電力Ｅａ、停止状態の時間Ｔｓと消費電力Ｅｓ（０とする）から機器動作変動パターン求めることになる。ここで、軸が常に揺動動作をしていることから、揺動動作の加減速の時間ＴｏａよりＴｒが大きい（Ｔｒ＞Ｔｏａ）ならば省電力が可能と判断し、機器動作変動パターンを作成することができる。
【０１０５】
＜実施例４＞
実施例４として、数値制御装置１００が、非切削ブロックにおいて、工具が連続した円運動を行うことで工具よりも広い溝の加工を行う軸動作を停止状態とすることにより、消費電力を抑制する例を示す。本実施例では、機器動作変動可能条件は設定しないものとする。
【０１０６】
円動作時の１周あたりの動作時間Ｔは、円動作の指令速度Ｖｃ、円弧半径Ｒから求められる。
Ｔ＝Ｖｃ／２πＲ
【０１０７】
Ｖｃからの減速停止、Ｖｃへの加速は、円動作時の加減速とは別に、円弧２軸の加減速時定数Ｔａによって行うものとする。
【０１０８】
円動作時の１周あたりの消費電力量Ｅ１、Ｖｃからの減速停止及びＶｃへの加速に要する消費電力量は、上述の実施例２で示した式により導出しても良く、それとは異なる手法（例えば特許第５３８３２９３号参照）で導出しても良く、加工前又は切削中に測定しておいた１往復あたりの実消費電力を使用しても良い。
【０１０９】
プログラム解析部１１０は、非切削ブロックの実行時間Ｔｒ、時間Ｔｒでの定常状態の消費電力Ｅｒ、定常状態から減速停止に要する時間Ｔｄと消費電力Ｅｄ、停止状態から定常状態への加速に要する時間Ｔａと消費電力Ｅａ、停止状態の時間Ｔｓと消費電力Ｅｓ（０とする）から機器動作変動パターンを求めることになる。ここで、軸が常に円動作をしていることから、Ｅ１＞Ｅｄ＋Ｅａであれば、Ｔｒ＞Ｔｄ＋Ｔａの場合には、省電力が可能と判断し、機器動作変動パターンを作成することができる。
【０１１０】
上述の実施の形態によれば、数値制御装置１００は、機器を省電力状態に移行させる場合に要する消費電力と、動作状態を継続する場合の消費電力とを算出、比較し、機器を省電力状態に移行させるほうが消費電力が少ない場合に、機器動作変動パターンに従って機器の動作を変化させる。これにより、機器を省電力状態に移行させることによって逆に消費電力が大きくなる問題を解消できる。
【０１１１】
また、数値制御装置１００は、非切削ブロック実行時に、加工プログラムに手を加えることなく、自律的に機器を省電力状態に移行させる。これにより、使用するユーザ側は、機器の制御指令を行う必要がない。また、サイクルタイムに影響を与えることなく、消費電力を低減できる。
【０１１２】
また、数値制御装置１００は、機器動作変動可能条件を満足した場合に、機器を省電力状態に移行させる。これにより、その後の加工、及び機器の状態に影響を与えないよう配慮しながら、消費電力を抑制することができる。
【０１１３】
なお、本発明は上述の種々の実施の形態に限られたものではなく、趣旨を逸脱しない範囲で、構成要素の置換、省略、付加、順序の入れ替え等の変更を施すことが可能である。
【符号の説明】
【０１１４】
１００  数値制御装置
１１０  プログラム解析部
１２０  プログラム実行部
１３０  機器動作変動パターン実行部
１４０  パラメータ設定部
【図１】
0006444933.tif 000002
【図２】
0006444933.tif 000003
【図３】
0006444933.tif 000004
【図４Ａ】
0006444933.tif 000005
【図４Ｂ】
0006444933.tif 000006
【図４Ｃ】
0006444933.tif 000007
【図５】
0006444933.tif 000008
【図６】
0006444933.tif 000009
【図７】
0006444933.tif 000010
【図８】
0006444933.tif 000011
【図９】
0006444933.tif 000012