(57)【特許請求の範囲】
【請求項１】
プログラムに基づいて機械を運転する数値制御装置において、
オペレータによるオーバライド値に対する操作を受け付けるオーバライド入力部と、
前記オーバライド入力部によるオーバライド値に対する操作に基づいて、前記機械の送り速度を制御する速度制御部と、
前記オーバライド入力部によるオーバライド値に対する操作を検出し、検出した操作に基づく通知を出力するオーバライド監視部と、
前記オーバライド監視部から出力される通知に基づいて前記運転の一時停止および再開の制御を行う実行ブロック制御部と、
を備え、
前記オーバライド監視部は、前記運転中に、前記オーバライド入力部から第１の操作パターンを検出した場合に終点停止要求の通知を出力し、
前記実行ブロック制御部は、前記終点停止要求の通知を受けると、前記加工プログラムの現在実行中のブロックの終点において前記運転を一時停止する制御を行う、
ことを特徴とする数値制御装置。
【請求項２】
前記オーバライド監視部は、前記一時停止中に、前記オーバライド入力部から第２の操作パターンを検出した場合に終点停止要求の通知の出力を停止し、
前記実行ブロック制御部は、前記一時停止中に前記終点停止要求の通知の出力が停止したことを検出すると、前記加工プログラムに基づく前記運転を再開する制御を行う、
ことを特徴とする請求項１に記載された数値制御装置。
【請求項３】
前記オーバライド監視部は、前記運転中に、所定のパラメータまたは所定の信号の少なくともいずれかがあらかじめ定めた所定の状態となったことを検出した場合に終点停止要求の通知を出力し、
前記実行ブロック制御部は、前記終点停止要求の通知を受けると、前記加工プログラムの現在実行中のブロックの終点において前記運転を一時停止する制御を行う、
ことを特徴とする請求項１または２に記載された数値制御装置。
【請求項４】
前記オーバライド監視部は、前記運転中に、現在実行中のブロックがあらかじめ設定された所定のブロック長よりも短い、または、現在実行中のブロックの実行時間があらかじめ設定された所定の実行時間よりも短い場合に終点停止要求の通知を出力し、
前記実行ブロック制御部は、前記終点停止要求の通知を受けると、前記加工プログラムの現在実行中のブロックの終点において前記運転を一時停止する制御を行う、
ことを特徴とする請求項１〜３のいずれか１つに記載された数値制御装置。
【請求項５】
前記オーバライド監視部は、前記運転中に、前記オーバライド入力部から第３の操作パターンを検出した場合に次ブロック終点停止要求の通知を出力し、
前記実行ブロック制御部は、前記次ブロック終点停止要求の通知を受けると、前記加工プログラムの現在実行中のブロックの次のブロックの終点において前記運転を一時停止する制御を行う、
ことを特徴とする請求項１〜４のいずれか１つに記載された数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御装置に関し、特にオーバライドスイッチによるプログラムチェック機能を備えた数値制御装置に関する。
【背景技術】
【０００２】
加工プログラムの動作チェックをする際に、ブロックの指令値に誤りがないかを確認する時は、数値制御装置上でシングルブロック運転を行って加工プログラムを１ブロックずつ実行し、各ブロックの終点で機械位置や座標値を確認している。シングルブロック運転では、起動釦を押下するごとに１ブロック実行されて運転が停止する。プログラムの続きを実行するには、再度起動釦を押下する。
【０００３】
また、動作確認の済んでいないプログラムを実行する場合、安全のため、あらかじめオーバライドスイッチを０％に合わせてから起動釦を押下し、その後オーバライドを変化させながら機械の動作を確認する、といった操作を行うことがある。オーバライドスイッチは即座に送り速度に反映され、オーバライドを０％にすればブロックの途中で停止させることもできる。この特性を利用して、速度を遅くして動作を確認したり、プログラムの誤りや危険に気付いた場合はオーバライドを０％にして停止させ干渉を避けたりする、といった使用方法が可能である。上記のように、プログラムの確認作業においては、起動釦とオーバライドスイッチの両方を併用することがある。
【０００４】
このような加工プログラムの動作チェックに関する従来技術として、特許文献１，２には、加工プログラムの動作チェックにおいて複数ブロックをまとめて実行することができるようにする技術が開示されている。また、特許文献３には、起動釦の代わりに手動パルス発生器を用いることにより、起動釦とオーバライドスイッチの両方を操作しなくても加工プログラムのシングルブロック運転をすることを可能とする技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第４９７２４４７号公報
【特許文献２】特開平０１−２７６２１２号公報
【特許文献３】特許第５３５７０８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
シングルブロック運転の場合、１ブロックごとに運転が停止するので、その都度、起動釦を押下しなければならない。このため、ブロック数の多いプログラムでは何度も起動釦を押下する必要がある。一方で、シングルブロック運転を使用しない場合は何度も起動釦を押下する必要はないが、正確にブロック終点の座標値、機械位置を確認することが難しい。例えば、オーバライドスイッチを操作してオーバライドを０％にすることで送り速度を０にすると、多くの場合ブロックの途中で停止してしまい、ブロックの終点ちょうどで停止させることが難しい。
【０００７】
また、プログラム中にすでに動作確認済みの部分がある場合など、必ずしもすべてのブロックの終点を確認する必要がなく、動作確認されていない一部分だけをシングルブロック運転で確認したい場合もある。このようにプログラムの一部だけをシングルブロック運転するには、その部分の前にプログラムストップ（Ｍ００）等を追加し、そこまで連続で実行してから、シングルブロック運転に切換えて動作確認後、シングルブロック運転を解除して続きを実行する必要がある。また、そのためにプログラムストップ（Ｍ００）を挿入したり、確認後は削除したりしなければならず、操作が煩雑となるという課題があった。
【０００８】
そこで本発明の目的は、オーバライドスイッチのみの操作で容易に加工プログラムの確認を行うことを可能とする数値制御装置を提供することである。
【課題を解決するための手段】
【０００９】
本発明では、オーバライドスイッチの操作だけで、ブロックの終点ちょうどの位置で一時停止できるようにし、更に一時停止の状態からオーバライドスイッチを変更すると、起動釦を押下することなくプログラムの続きを実行する制御を行う機能手段を数値制御装置に設ける。このような構成を設けることで、シングルブロック運転のように何度も起動釦を押下する必要がなく、かつ、ブロックの終点位置を確認できる。また、オーバライドスイッチの操作を行わなければブロックの終点で停止しないことも選択可能とし、プログラムの一部分だけブロックの終点を確認したい場合にも対応できるようにする。
【００１０】
そして、本願の請求項１に係る発明は、プログラムに基づいて機械を運転する数値制御装置において、オペレータによるオーバライド値に対する操作を受け付けるオーバライド入力部と、前記オーバライド入力部によるオーバライド値に対する操作に基づいて、前記機械の送り速度を制御する速度制御部と、前記オーバライド入力部によるオーバライド値に対する操作を検出し、検出した操作に基づく通知を出力するオーバライド監視部と、前記オーバライド監視部から出力される通知に基づいて前記運転の一時停止および再開の制御を行う実行ブロック制御部と、を備え、前記オーバライド監視部は、前記運転中に、前記オーバライド入力部から第１の操作パターンを検出した場合に終点停止要求の通知を出力し、前記実行ブロック制御部は、前記終点停止要求の通知を受けると、前記加工プログラムの現在実行中のブロックの終点において前記運転を一時停止する制御を行う、ことを特徴とする数値制御装置である。
【００１１】
本願の請求項２に係る発明は、前記オーバライド監視部は、前記一時停止中に、前記オーバライド入力部から第２の操作パターンを検出した場合に終点停止要求の通知の出力を停止し、前記実行ブロック制御部は、前記一時停止中に前記終点停止要求の通知の出力が停止したことを検出すると、前記加工プログラムに基づく前記運転を再開する制御を行う、ことを特徴とする請求項１に記載された数値制御装置である。
【００１２】
本願の請求項３に係る発明は、前記オーバライド監視部は、前記運転中に、所定のパラメータまたは所定の信号の少なくともいずれかがあらかじめ定めた所定の状態となったことを検出した場合に終点停止要求の通知を出力し、前記実行ブロック制御部は、前記終点停止要求の通知を受けると、前記加工プログラムの現在実行中のブロックの終点において前記運転を一時停止する制御を行う、ことを特徴とする請求項１または２に記載された数値制御装置である。
【００１３】
本願の請求項４に係る発明は、前記オーバライド監視部は、前記運転中に、現在実行中のブロックがあらかじめ設定された所定のブロック長よりも短い、または、現在実行中のブロックの実行時間があらかじめ設定された所定の実行時間よりも短い場合に終点停止要求の通知を出力し、前記実行ブロック制御部は、前記終点停止要求の通知を受けると、前記加工プログラムの現在実行中のブロックの終点において前記運転を一時停止する制御を行う、ことを特徴とする請求項１〜３のいずれか１つに記載された数値制御装置である。
【００１４】
本願の請求項５に係る発明は、前記オーバライド監視部は、前記運転中に、前記オーバライド入力部から第３の操作パターンを検出した場合に次ブロック終点停止要求の通知を出力し、前記実行ブロック制御部は、前記次ブロック終点停止要求の通知を受けると、前記加工プログラムの現在実行中のブロックの次のブロックの終点において前記運転を一時停止する制御を行う、ことを特徴とする請求項１〜４のいずれか１つに記載された数値制御装置である。
【発明の効果】
【００１５】
本発明により、オーバライドスイッチの操作だけで、シングルブロック運転のようにブロックの終点を確認しながらの運転と、ブロックを連続して実行する通常運転との両者を切換えることができる。このため、例えばプログラムの中で既に動作確認済みの部分では連続で実行し、確認の必要な部分のみをシングルブロックと同様に終点で停止させながら実行するこができる。そして、その動作を起動釦を使用せず、オーバライドスイッチの操作のみで実現できるため、プログラム確認時の操作性が向上する。
【図面の簡単な説明】
【００１６】
【図１】オーバライドスイッチ操作による運転の一時停止を説明する図である。
【図２】オーバライドスイッチ操作による運転の再開を説明する図である。
【図３】本発明におけるオーバライドスイッチ操作による運転制御の例を示すタイミングチャートである。
【図４】本発明の実施形態における数値制御装置の機能ブロック図である。
【図５】本発明の実施形態におけるオーバライド監視部上で実行される運転中の一時停止に係る監視処理の概略フローチャートである。
【図６】本発明の実施形態におけるオーバライド監視部上で実行される加工運転の一時停止中の運転再開に係る監視処理の概略フローチャートである。
【図７】本発明の実施形態における実行ブロック制御部上で実行される運転中の一時停止に係る処理の概略フローチャートである。
【図８】本発明の実施形態における実行ブロック制御部上で実行される運転の一時停止中における運転再開に係る処理の概略フローチャートである。
【図９】本発明の他の実施形態について説明する図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態を図面と共に説明する。  
図１，２は、本発明の数値制御装置におけるオーバライドスイッチ操作による運転制御の概要を説明する図である。図１（ａ）に示すように、本発明の数値制御装置は、加工プログラムのブロック（図中ではブロックｎ）の実行中に、オペレータによるオーバライドスイッチの所定の操作が行われたことを検出すると、現在実行中のブロックの実行を継続し、図１（ｂ）に示すように現在実行中のブロックの実行が終了した時点で加工プログラムの実行を一時停止する。
【００１８】
一方で、図２（ａ）に示すように、本発明の数値制御装置は、加工プログラムに基づく運転の一時停止中に、オペレータによるオーバライドスイッチの所定の操作が行われたことを検出すると、図２（ｂ）に示すように、ただちに次ブロック（図中ではブロックｎ＋１）から加工プログラムの運転を再開する。
【００１９】
図３は、本発明の数値制御装置での加工プログラムに基づく加工運転中におけるオーバライドスイッチの操作と、制御中の機械の軸の送り速度と、加工プログラムのブロックの実行状態の変化と、および軸の一時停止状態を示す終点停止中信号の変化との時間的な関係を示すタイミングチャートである。加工プログラムに基づく加工運転において、ブロックｎの実行中（＜１＞）に、オペレータがオーバライドスイッチに対して所定の操作（図中ではオーバライド値を一旦０％とした後に即上昇させる操作）を行うと、それに伴い送り速度が変化するものの、ブロックｎの実行は継続される。その後、ブロックｎの終点に軸が到達すると加工プログラムに基づく加工運転が一時停止し、軸の移動が停止する（＜２＞）。そして、一時停止中は終点停止中信号が出力される。その後、オペレータがオーバライドスイッチを操作してオーバライド値を変化させると、ブロックｎ＋１から運転が再開され、終点停止中信号の出力が停止する（＜３＞）。なお、再開後の軸の送り速度は、ブロックｎ＋１の指令値とオーバライドスイッチの値に基づいて決定される。
【００２０】
加工運転を一時停止するためのオーバライドスイッチの操作は、加工運転中に一般的に用いられるオーバライド値を変更するための操作と区別できる操作であれば、どのような操作を採用してもよく、また複数の操作を所定の操作として検出するようにしてもよい。本発明はハンドル型やダイヤル型のオーバライドスイッチ以外にも、複数のオーバライド値に対応する釦を備えた釦式のオーバライドスイッチなどに対しても、当該スイッチを普通に操作する際に行われない操作（釦式であれば短時間に同じ釦を２回押下する、一定時間長押しするなど）を所定の操作として採用することで適用することができる。  
また、運転を再開する時の所定の操作は、運転を一時停止する際の所定の操作と異なる操作としてもよい。例えば、ブロックの実行中に加工運転を一時停止する操作を、オーバライド値をいったん０％に下げた直後に上昇させる操作とし、加工運転の一時停止中に加工運転を再開するための所定の操作を単にオーバライドスイッチの値を変更する操作としてもよい。
【００２１】
図４は、本発明の位置実施形態における数値制御装置の機能ブロック図を示している。本実施形態の数値制御装置１は、指令プログラム解析部１０、実行ブロック制御部１１、速度制御部１２、補間部１３、サーボモータ制御部１４、オーバライド監視部１５、オーバライド入力部１６を備える。
指令プログラム解析部１０は、図示しないメモリに記憶されるプログラム等から加工プログラムのブロックを逐次読み出して解析し、解析結果に基づいて各軸の移動を指令する移動指令データを作成し、作成した該移動指令データを実行ブロック制御部１１へと出力する。
【００２２】
実行ブロック制御部１１は、オーバライド監視部１５からの通知に基づく加工プログラムの運転の一時停止と運転再開の制御を行う。本実施形態の実行ブロック制御部１１は、オーバライド監視部１５からの終点停止要求を受けると現在実行中のブロックの終点において加工運転を一時停止し、オーバライド監視部１５からの終点停止要求が停止すると一時停止したブロックの次ブロックから加工運転を再開する。
【００２３】
速度制御部１２は、オーバライド入力部１６から入力されたオーバライド信号に応じて移動指令データにより指令される軸の送り速度を計算する。例えば、オーバライドが０％であれば軸の移動を停止し、１００％ならば移動指令データで指定された送り速度、５０％であれば半分の送り速度で軸を動作させる。
【００２４】
補間部１３は、速度制御部１２が決定した速度に基づいて、移動指令データにより指令される指令経路上の点を補間周期で補間計算した補間データを生成する。また、補間データに対して補間後加減速処理を行い補間周期毎の各駆動軸の速度を算出し、結果データをサーボモータ制御部１４へ出力する。  
サーボモータ制御部１４は、補間部１３の出力に基づいて制御対象となる機械の各軸の駆動部を制御する。
【００２５】
オーバライド監視部１５は、オーバライド入力部１６を介して入力されるオーバライド信号に対して上記した所定の操作が行われたかどうかを監視し、その結果を実行ブロック制御部１１に通知する。オーバライド監視部１５は、加工運転中は加工運転の一時停止を要求する所定の操作を監視し、該所定の操作が検出されると終点停止要求を実行ブロック制御部１１へと通知する。また、加工運転の一時停止中においては加工運転の再開を要求する所定の操作を監視し、該所定の操作が検出されると実行ブロック制御部１１に対する終点停止要求の通知を停止する。
オーバライド入力部１６は、オーバライドスイッチと信号の伝達機構により構成されており、オペレータによるオーバライドスイッチの操作をオーバライド信号へと変換し、オーバライド監視部１５と速度制御部１２とに出力する。
【００２６】
図５は、オーバライド監視部１５上で実行される加工運転中の一時停止に係る監視処理の概略的なフローチャートである。本フローチャートは、加工運転の一時停止を要求する所定の操作としての「オーバライド値を一旦０％とした後に即上昇させる操作」を検出するための処理を示している。また、本フローチャートはオーバライド値が０％以外に設定されている時に開始される。
【００２７】
●［ステップＳＡ０１］オーバライド信号の変化を監視し、オーバライド値が０％以外の値から０％へと変更されたか否かを判定する。オーバライド値が０％へと変更された場合にはステップＳＡ０２へ進み、そうでない場合には監視処理を継続する。
●［ステップＳＡ０２］オーバライド値が０％へと変更されたことが検出された後、オーバライド値が０％以外の値へと変更されたか否かを判定する。オーバライド値が０％から０％以外の値へと変更された場合にはステップＳＡ０３へ進み、そうでない場合には監視処理を継続する。
【００２８】
●［ステップＳＡ０３］所定の操作が行われたと判断し、終点停止要求を実行ブロック制御部１１へと通知する状態として本処理を終了する。
●［ステップＳＡ０４］現在のオーバライド値を終点時オーバライド値として一時的に記憶する。
【００２９】
図６は、オーバライド監視部１５上で実行される加工運転の一時停止中の運転再開に係る監視処理の概略的なフローチャートである。本フローチャートは、加工運転の一時停止中における運転再開を要求する所定の操作としての「オーバライド値を変更する操作」を検出するための処理を示している。また、本フローチャートは加工運転の一時停止中に開始される。
【００３０】
●［ステップＳＢ０１］オーバライド信号の変化を監視し、オーバライド値がステップＳＡ０４で記憶した終点時オーバライド値から変更されたか否かを判定する。オーバライド値が変更された場合にはステップＳＢ０２へ進み、そうでない場合には監視処理を継続する。
●［ステップＳＢ０２］所定の操作が行われたと判断し、実行ブロック制御部１１への終点停止要求の通知を停止し、本処理を終了する。
【００３１】
図７は、実行ブロック制御部１１上で実行される加工運転中の一時停止に係る処理の概略的なフローチャートである。本処理は、加工プログラムの加工運転中において数値制御装置１の制御周期ごとに実行される。
●［ステップＳＣ０１］現在実行しているブロックに基づく軸の制御が終了したか否かを判定する。終了した場合にはステップＳＣ０２へ進み、終了していない場合には今周期における本処理を終了する。
●［ステップＳＣ０２］オーバライド監視部１５からの終点停止要求が通知されているか否かを判定する。終点停止要求が通知されている場合にはステップＳＣ０３へ進み、通知されていない場合にはステップＳＣ０４へ進む。
【００３２】
●［ステップＳＣ０３］終点停止中信号の出力、終点停止中であることを示す表示処理を行い、今周期における本処理を終了する。
●［ステップＳＣ０４］次ブロックの開始処理（加工運転の継続）を行い、今周期における本処理を終了する。
【００３３】
図８は、実行ブロック制御部１１上で実行される加工運転の一時停止中における運転再開に係る処理の概略的なフローチャートである。本処理は、加工運転の一時停止中において数値制御装置１の制御周期ごとに実行される。
●［ステップＳＤ０１］オーバライド監視部１５からの終点停止要求の通知がなくなっているか否かを判定する。終点停止要求の通知がない場合にはステップＳＤ０２へ進み、通知されている場合には今周期における本処理を終了する。
【００３４】
●［ステップＳＤ０２］終点停止中信号の出力停止、終点停止中であることを示す表示停止を行う。
●［ステップＳＤ０３］次ブロックの開始処理（加工運転の再開）を行い、今周期における本処理を終了する。
【００３５】
このように構成した本実施形態の数値制御装置では、オーバライドスイッチの操作だけで、シングルブロック運転のようにブロックの終点を確認しながらの運転と、ブロックを連続して実行する通常運転と、の両者を切換えることができる。オペレータは、例えばプログラムの中で既に動作確認済みの部分では連続で実行し、確認の必要な部分のみをシングルブロックと同様に終点で停止させながら実行することができるようになり、また、その動作を起動釦を使用せず、オーバライドスイッチの操作のみで実現できるため、プログラム確認時の操作性を向上させることができる。
【００３６】
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例にのみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。  
例えば、上記した実施形態ではオーバライドスイッチの操作による運転の切換えの機能を説明したが、本機能のみでは、あまりにも短いブロックの場合に、オーバライドスイッチを操作する前に当該ブロックの終点を通り過ぎてしまうことが考えられる。このような状況に対応するため、オーバライドスイッチの操作なしでもブロック終点に達したら停止する条件停止モードを設けることが考えられる。
【００３７】
条件停止モードにおいては、パラメータや操作盤のスイッチ（信号）の状態を監視し、パラメータにより一時停止が指令された場合、または、信号状態により一時停止が指令された場合に、現在運転中のブロックの終点で一時停止することが考えらえる。また、あらかじめパラメータ等で所定のブロック長やブロックの所定の実行時間を設定しておき、設定された値よりもブロック長またはブロックの実行時間が短いブロックの終点において一時停止するようにしてもよい。更に、これらを組み合わせて、パラメータや信号の状態により一時停止が指令されている時に限って、パラメータとして設定された値よりもブロック長またはブロックの実行時間が短いブロックの終点において一時停止するようにしてもよい。
【００３８】
このような構成を設ける場合には、前記オーバライド監視部において、オーバライド信号の変化を監視するのに加えて、前記パラメータや操作盤のスイッチ（信号）の状態、またはブロック長やブロックの実行時間をチェックして、終点停止要求を通知することで実現できる。
【００３９】
また、上記した実施形態では加工運転中に所定の操作を検出した時に、現在実行中のブロックの終点において加工運転を一時停止する例を示したが、このような所定の操作として複数の区別することが可能な操作を検出できるように構成し、検出した操作の種類に応じて加工運転の一時停止方法を異ならしめるように構成してもよい。例えば、過去運転中に「オーバライド値を一旦０％とした後に即上昇させる操作」を検出した場合には現在実行中のブロックの終点において加工運転を一時停止し、「オーバライド値を一旦０％とした後に即上昇させる操作を短時間に２回繰り返す操作」を検出した場合には、現在実行中のブロックの次のブロックの終点において加工運転を一時停止するようにすることが考えられる。このようにすることで、図９に示すように、短いブロックｎ＋１の終点で一時停止したい場合に、ブロックｎ＋１の実行中に慌てて操作せずとも、その前の長いブロックｎにおいて「オーバライド値を一旦０％とした後に即上昇させる操作を短時間に２回繰り返す操作」を行うことで目的のブロックｎ＋１の終点で一時停止させることができるようになる。
【符号の説明】
【００４０】
１  数値制御装置
１０  指令プログラム解析部
１１  実行ブロック制御部
１２  速度制御部
１３  補間部
１４  サーボモータ制御部
１５  オーバライド監視部
１６  オーバライド入力部
【図１】
0006276234.tif 000002
【図２】
0006276234.tif 000003
【図３】
0006276234.tif 000004
【図４】
0006276234.tif 000005
【図５】
0006276234.tif 000006
【図６】
0006276234.tif 000007
【図７】
0006276234.tif 000008
【図８】
0006276234.tif 000009
【図９】
0006276234.tif 000010