(57)【特許請求の範囲】
【請求項１】
ワーク又はそのワークを加工する工具を移動対象物として前記ワークの加工時に前記移動対象物を移送する複数の移送装置と、前記ワークの加工時における前記移動対象物の通常の移送とは別に当該移動対象物の速度変化を伴う動作を指示するための特別指令を外部から入力するための特別指令入力装置とを備え、前記各移送装置は、前記移動対象物を支持する支持体と、その支持体を特定の移動軸方向に移送することにより前記移動対象物を移送する駆動装置とをそれぞれ有する工作機械に設けられ、前記各移送装置の数値制御を行う数値制御装置であって、
前記ワークの加工時に前記移動対象物が基準時刻の経過に伴って移動すべき経路を表す加工パスが規定された加工指令プログラムを記憶する記憶部と、
前記加工パスに基づいてある設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量をそれぞれ算出する演算部と、
前記各駆動装置の駆動の基準となる基準単位時間毎にその各駆動装置を駆動してその各駆動装置に前記基準単位時間当たりに前記演算部によって算出された前記移動量の分、対応する前記支持体を対応する前記移動軸方向へ移送させる駆動制御部とを備え、
前記特別指令入力装置は、前記特別指令として前記移動対象物の移動を緊急に減速させて停止させるための緊急停止指令を入力するための停止指令入力装置を含み、
前記演算部は、前記設定単位時間を前記基準単位時間とは別の単位時間として設定し、前記停止指令入力装置に前記緊急停止指令が入力されたことに応じて、前記設定単位時間の長さが所定の減速停止期間に前記停止指令入力装置への前記緊急停止指令の入力直前の状態における長さから０まで減少するような停止時単位時間変動関数に基づいて前記減速停止期間における前記設定単位時間を算出するとともにその算出した設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量を前記加工パスから算出する、数値制御装置。
【請求項２】
前記特別指令入力装置は、前記特別指令として移動停止した前記移動対象物の移動を再開させて加速させるための再始動指令を入力するための再始動指令入力装置を含み、
前記演算部は、前記停止指令入力装置に前記緊急停止指令が入力された後に前記再始動指令入力装置に前記再始動指令が入力されたことに応じて、前記設定単位時間の長さが所定の再始動加速期間に０から特定の長さまで増加するような再始動時単位時間変動関数に基づいて前記再始動加速期間における前記設定単位時間を算出し、その算出した設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量を前記加工パスから算出する、請求項１に記載の数値制御装置。
【請求項３】
前記特別指令入力装置は、前記特別指令として前記移動対象物の移動速度を上昇させる指示とその移動速度の上昇率である加速率の情報を含む加速指令又は前記移動対象物の移動速度を低下させる指示とその移動速度の低下率である減速率の情報を含む減速指令を入力することが可能な速度変更指令入力装置を含み、
前記演算部は、前記速度変更指令入力装置に前記加速指令が入力されたことに応じて、前記設定単位時間の長さが所定の加速期間に前記速度変更指令入力装置への前記加速指令の入力直前の状態における長さから前記加速指令に含まれる前記加速率に応じた長さまで増加するような加速時単位時間変動関数に基づいて前記加速期間における前記設定単位時間を算出し、その算出した設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量を前記加工パスから算出する一方、前記速度変更指令入力装置に前記減速指令が入力されたことに応じて、前記設定単位時間の長さが所定の減速期間に前記速度変更指令入力装置への前記減速指令の入力直前の状態における長さから前記減速指令に含まれる前記減速率に応じた長さまで減少するような減速時単位時間変動関数に基づいて前記減速期間における前記設定単位時間を算出し、その算出した設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量を前記加工パスから算出する、請求項１又は２に記載の数値制御装置。
【請求項４】
ワーク又はそのワークを加工する工具を移動対象物として前記ワークの加工時に前記移動対象物を移送する複数の移送装置と、前記ワークの加工時における前記移動対象物の通常の移送とは別に当該移動対象物の速度変化を伴う動作を指示するための特別指令を外部から入力するための特別指令入力装置とを備え、前記各移送装置は、前記移動対象物を支持する支持体と、その支持体を特定の移動軸方向に移送することにより前記移動対象物を移送する駆動装置とをそれぞれ有する工作機械に設けられ、前記各移送装置の数値制御を行う数値制御装置であって、
前記ワークの加工時に前記移動対象物が基準時刻の経過に伴って移動すべき経路を表す加工パスが規定された加工指令プログラムを記憶する記憶部と、
前記加工パスに基づいてある設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量をそれぞれ算出する演算部と、
前記各駆動装置の駆動の基準となる基準単位時間毎にその各駆動装置を駆動してその各駆動装置に前記基準単位時間当たりに前記演算部によって算出された前記移動量の分、対応する前記支持体を対応する前記移動軸方向へ移送させる駆動制御部とを備え、
前記特別指令入力装置は、前記特別指令として前記移動対象物の移動速度を上昇させる指示とその移動速度の上昇率である加速率の情報を含む加速指令又は前記移動対象物の移動速度を低下させる指示とその移動速度の低下率である減速率の情報を含む減速指令を入力することが可能な速度変更指令入力装置を含み、
前記演算部は、前記設定単位時間を前記基準単位時間とは別の単位時間として設定し、前記速度変更指令入力装置に前記加速指令が入力されたことに応じて、前記設定単位時間の長さが所定の加速期間に前記速度変更指令入力装置への前記加速指令の入力直前の状態における長さから前記加速指令に含まれる前記加速率に応じた長さまで増加するような加速時単位時間変動関数に基づいて前記加速期間における前記設定単位時間を算出するとともにその算出した設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量を前記加工パスから算出する一方、前記速度変更指令入力装置に前記減速指令が入力されたことに応じて、前記設定単位時間の長さが所定の減速期間に前記速度変更指令入力装置への前記減速指令の入力直前の状態における長さから前記減速指令に含まれる前記減速率に応じた長さまで減少するような減速時単位時間変動関数に基づいて前記減速期間における前記設定単位時間を算出するとともにその算出した設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量を前記加工パスから算出する、数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御装置に関するものである。
【背景技術】
【０００２】
従来の各種工作機械では、ワークやそのワークを加工する工具を移送する移送装置を加工指令プログラム（ＮＣプログラム）に従って数値制御することによりワークの加工が行われている。そして、このような工作機械では、一般的に手動操作によりワークや工具の加減速を伴う動作を指示可能な指示装置が設けられており、オペレータ等がこの指示装置により指示を行うことで前記加工指令プログラムに従ったワークや工具の通常の移動とは別にワークや工具の加減速を伴う動作を実施可能である。
【０００３】
具体的には、工作機械には、前記指示装置として緊急停止装置、再始動装置、オーバーライド装置等が設けられている。緊急停止装置は、ワーク又は工具を移動対象物としてその移動対象物が移送装置によって移送されている時にその移動対象物の移送の緊急停止を指示するためのものである。この緊急停止装置は、緊急停止ボタンを備えており、その緊急停止ボタンが押されることによって、移送装置に移動対象物の移送を緊急に停止するように指示を行う。また、再始動装置は、緊急停止後の移動対象物の再始動を指示するためのものである。この再始動装置は、再始動ボタンを備えており、その再始動ボタンが押されることによって、移送装置に移動対象物の移送の再開を指示する。また、オーバーライド装置は、オーバーライドダイヤルを備えており、そのオーバーライドダイヤルが操作されることによってその操作量に応じて移送装置に移動対象物の移送速度の加減速を指示する。上記緊急停止の場合には、移動対象物の急激な減速を伴い、上記再始動の場合には、移動対象物の急激な加速を伴い、また、上記オーバーライド装置により加減速が指示されると、通常の移動対象物の移動時に比べて急激な加減速が行われる。
【０００４】
ところで、工作機械において上記のような移動対象物の加減速を伴う動作が行われるときには、工作機械に機械ショックが与えられる。移動対象物の急激な加減速に起因する機械ショックを低減するための技術は、従来提案されている。その技術の一例としては、加減速フィルタによる補間後加減速がある。この補間後加減速は、加工指令プログラムから補間演算によって得られた移動指令を加減速フィルタにより所定の指令時定数に応じた時間の分遅らせることによって、加工指令プログラムが指示する急激な加減速及び指示装置によって指示される急激な加減速を緩和する技術である。
【０００５】
しかし、この補間後加減速では、移動対象物の急激な加減速に起因する機械ショックを緩和できるという利点がある反面、ワークの加工形状の誤差が発生するという欠点がある。具体的には、この補間後加減速は、加工指令プログラムが指示する急激な加減速の緩和と前記指示装置によって指示される急激な加減速の緩和の両方に有効である反面、加工指令プログラムが指示する急激な加減速の緩和に適用されれば、加工指令プログラムが指示する加工形状（加工パス）に対して誤差が発生し、指示装置によって指示される急激な加減速の緩和に適用されれば、加工指令プログラムが指示する急激な加減速を前記補間後加減速で緩和した後の加工パスに対して更なる誤差が発生するため、ワークに思わぬ傷がつく原因になる。
【０００６】
この問題点に対して、下記特許文献１には、補間後加減速によって発生する加工形状の誤差を補正するために移動対象物の各移動軸間に生じる位相誤差を抹消するための演算を行う技術が提案されている。
【０００７】
また、下記特許文献２には、補間後加減速を全く用いない加減速技術が提案されている。この加減速技術では、加工指令プログラムから移動対象物の各移動軸毎の移動パルスを算出する前に行う補間前加減速演算により、加工指令プログラムが指示する急激な加減速を緩和した加工パスが予め計算され、その結果、機械ショックを起こさない加工パスで移動対象物を移動させることが可能となる。このため、この加減速技術によれば、上記のような補間後加減速に起因する誤差を生じることなく、移動対象物の急激な加減速に起因する機械ショックを低減可能である。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１０−５５１６１号公報
【特許文献２】特開２００８−２２５８２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかし、上記特許文献１及び特許文献２のいずれの技術においても、前記指示装置による急激な加減速の緩和を行うには、その要求に応じて再計算する演算が複雑となり、前記指示装置により移動対象物の加減速を伴う動作が指示されてから実際にその移動対象物の動作が行われるまでの応答性が悪化するという問題点がある。
【００１０】
具体的には、工作機械において上記のような緊急停止、再始動に伴う加速、オーバーライド装置による加減速等の加減速を伴う動作が行われるときには、その加減速の動作の指示（緊急停止ボタンや再始動ボタンのオン、オーバーライドダイヤルの操作）が行われてから迅速に、かつ、予定されている加工パスからずれることなくその加減速動作が実行されることが要求されるが、上記特許文献１及び上記特許文献２のいずれの技術においても、移動指令の演算が複雑であることからその演算に時間が掛かり、その結果、加減速動作の指示が行われてから実際にその加減速動作が実施されるまでの応答性が悪化する。
【００１１】
本発明は、上記の課題を解決するためになされたものであり、その目的は、工作機械においてワークの加工時における移動対象物の通常の移送とは別にその移動対象物の速度変化を伴う動作を実施する場合に、移動対象物が加工指令プログラムによって指示される加工パスからずれるのを防ぎつつ、その速度変化を伴う動作が指示されてからその動作が実行されるまでの応答性を向上することが可能な数値制御装置を提供することである。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、本発明による数値制御装置は、ワーク又はそのワークを加工する工具を移動対象物として前記ワークの加工時に前記移動対象物を移送する複数の移送装置と、前記ワークの加工時における前記移動対象物の通常の移送とは別に当該移動対象物の速度変化を伴う動作を指示するための特別指令を外部から入力するための特別指令入力装置とを備え、前記各移送装置は、前記移動対象物を支持する支持体と、その支持体を特定の移動軸方向に移送することにより前記移動対象物を移送する駆動装置とをそれぞれ有する工作機械に設けられ、前記各移送装置の数値制御を行う数値制御装置であって、前記ワークの加工時に前記移動対象物が基準時刻の経過に伴って移動すべき経路を表す加工パスが規定された加工指令プログラムを記憶する記憶部と、前記加工パスに基づいてある設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量をそれぞれ算出する演算部と、前記各駆動装置の駆動の基準となる基準単位時間毎にその各駆動装置を駆動してその各駆動装置に前記基準単位時間当たりに前記演算部によって算出された前記移動量の分、対応する前記支持体を対応する前記移動軸方向へ移送させる駆動制御部とを備え、前記特別指令入力装置は、前記特別指令として前記移動対象物の移動を緊急に減速させて停止させるための緊急停止指令を入力するための停止指令入力装置を含み、前記演算部は、前記設定単位時間を前記基準単位時間とは別の単位時間として設定し、前記停止指令入力装置に前記緊急停止指令が入力されたことに応じて、前記設定単位時間の長さが所定の減速停止期間に前記停止指令入力装置への前記緊急停止指令の入力直前の状態における長さから０まで減少するような停止時単位時間変動関数に基づいて前記減速停止期間における前記設定単位時間を算出するとともにその算出した設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量を前記加工パスから算出する。
【００１３】
この数値制御装置では、特別指令入力装置に特別指令を入力して工作機械に移動対象物の速度変化を伴うイレギュラーな動作を実施させる際、各移動軸方向に共通の設定単位時間の長さが前記特別指令の入力直前の状態における長さからその特別指令が指示する速度変化に応じた長さに変化させられるとともに、加工パスから算出されたその変化後の設定単位時間当たりの各支持体の対応する移動軸方向への移動量に応じて各支持体が移送される。このため、ワークの加工時における移動対象物の通常の移送とは別にその移動対象物のイレギュラーな速度変化を伴う動作を実行させる場合に、移動対象物が加工パスからずれるのを防ぐことができる。
【００１４】
具体的には、この数値制御装置のように前記特別指令に応じて各移動軸方向に共通の設定単位時間の長さを変化させる場合には、加工パスからその設定単位時間当たりに算出される各移動軸方向への支持体の移動量が加工パスによって規定される各移動軸間の相対的な位置関係が維持された状態で算出される。このため、その算出された設定単位時間当たりの各移動軸方向への移動量に応じて対応する支持体が駆動装置によって移送されると、加工パスによって規定される各移動軸間の相対的な位置関係が維持された状態で移動対象物の速度変化を伴う動作が実施される。その結果、上記のようなイレギュラーな移動対象物の速度変化を伴う動作が実施されたとしても、移動対象物が前記加工パスからずれるのを防ぐことができる。
【００１５】
また、この数値制御装置では、前記補間後加減速によって生じる誤差を抹消するための演算を別途行う上記特許文献１の技術や前記補間前加減速演算を行う上記特許文献２の技術のように複雑な処理を特別指令入力装置に特別指令が入力された際に行わなくても、各移動軸方向に共通の設定単位時間の長さを変化させるという単純な処理で移動対象物が加工パスからずれるのを防ぎつつその移動対象物のイレギュラーな速度変化を伴う動作を実施することができるため、特別指令入力装置に特別指令が入力されることによって移動対象物の速度変化を伴う動作が指示されてから移送装置が実際にその移動対象物の速度変化を伴う動作を実行するまでの応答性を向上することができる。また、この数値制御装置では、駆動装置の駆動の基準となる基準単位時間に影響を与えずに、移動対象物のイレギュラーな速度変化を伴う動作を実施するための各駆動装置による対応する支持体の基準単位時間当たりの移送量（移動量）を算出して、その移送量に応じた各支持体の対応する移動軸方向への移送を行うことができるため、各駆動装置の駆動に影響を与えることなく、移動対象物のイレギュラーな速度変化を伴う動作を実施することができる。また、この数値制御装置では、停止指令入力装置に緊急停止指令を入力することにより、前記減速停止期間に各支持体の対応する移動軸方向への設定単位時間当たりの移動量を０まで減少させて移動対象物を停止させることができる。そして、この構成では、各移動軸方向に共通の設定単位時間の長さを０まで減少させることによって各支持体の対応する移動軸方向への設定単位時間当たりの移動量を０まで減少させるので、移動対象物を緊急停止させる際にその移動対象物が加工パスからずれるのを防ぎつつ、緊急停止指令が停止指令入力装置に入力されてから移動対象物の緊急停止が実際に実行されるまでの応答性を向上することができる。
【００１６】
上記数値制御装置において、前記特別指令入力装置は、前記特別指令として移動停止した前記移動対象物の移動を再開させて加速させるための再始動指令を入力するための再始動指令入力装置を含み、前記演算部は、前記停止指令入力装置に前記緊急停止指令が入力された後に前記再始動指令入力装置に前記再始動指令が入力されたことに応じて、前記設定単位時間の長さが所定の再始動加速期間に０から特定の長さまで増加するような再始動時単位時間変動関数に基づいて前記再始動加速期間における前記設定単位時間を算出し、その算出した設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量を前記加工パスから算出することが好ましい。
【００１７】
この構成によれば、前記緊急停止指令により移動対象物が停止している状態で再始動指令入力装置に再始動指令を入力することにより、前記再始動加速期間に各支持体の対応する移動軸方向への設定単位時間当たりの移動量を０からその設定単位時間の増加に応じた特定の移動量まで増加させて移動対象物の加速を伴う再始動を実施することができる。そして、この構成では、各移動軸方向に共通の設定単位時間の長さを０から特定の長さまで増加させることによって各支持体の対応する移動軸方向への設定単位時間当たりの移動量を特定の移動量まで増加させるので、移動停止した移動対象物を再始動させる際にその移動対象物が加工パスからずれるのを防ぎつつ、再始動指令が再始動指令入力装置に入力されてから移動対象物の再始動及び加速が実際に実行されるまでの応答性を向上することができる。
【００１８】
上記数値制御装置において、前記特別指令入力装置は、前記特別指令として前記移動対象物の移動速度を上昇させる指示とその移動速度の上昇率である加速率の情報を含む加速指令又は前記移動対象物の移動速度を低下させる指示とその移動速度の低下率である減速率の情報を含む減速指令を入力することが可能な速度変更指令入力装置を含み、前記演算部は、前記速度変更指令入力装置に前記加速指令が入力されたことに応じて、前記設定単位時間の長さが所定の加速期間に前記速度変更指令入力装置への前記加速指令の入力直前の状態における長さから前記加速指令に含まれる前記加速率に応じた長さまで増加するような加速時単位時間変動関数に基づいて前記加速期間における前記設定単位時間を算出し、その算出した設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量を前記加工パスから算出する一方、前記速度変更指令入力装置に前記減速指令が入力されたことに応じて、前記設定単位時間の長さが所定の減速期間に前記速度変更指令入力装置への前記減速指令の入力直前の状態における長さから前記減速指令に含まれる前記減速率に応じた長さまで減少するような減速時単位時間変動関数に基づいて前記減速期間における前記設定単位時間を算出し、その算出した設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量を前記加工パスから算出することが好ましい。
【００１９】
この構成によれば、速度変更指令入力装置に加速指令を入力することにより、前記加速期間に各支持体の対応する移動軸方向への設定単位時間当たりの移動量を速度変更指令入力装置への加速指令の入力直前の移動量から加速指令に含まれる加速率に応じた移動量まで増加させて移動対象物の加速を実施することができる一方、速度変更指令入力装置に減速指令を入力することにより、前記減速期間に各支持体の対応する移動軸方向への設定単位時間当たりの移動量を速度変更指令入力装置への減速指令の入力直前の移動量から減速指令に含まれる減速率に応じた移動量まで減少させて移動対象物の減速を実施することができる。そして、この構成では、各移動軸方向に共通の設定単位時間を増加させることによって各支持体の対応する移動軸方向への設定単位時間当たりの移動量を増加させ、また、各移動軸方向に共通の設定単位時間を減少させることによって各支持体の対応する移動軸方向への設定単位時間当たりの移動量を減少させるので、ワークの加工時に移動対象物の移動速度を速度変更指令入力装置への加速指令又は減速指令の入力により変動させる際にその移動対象物が加工パスからずれるのを防ぎつつ、加速指令又は減速指令が速度変更指令入力装置に入力されてから移動対象物の加速又は減速が実際に実行されるまでの応答性を向上することができる。
【００２０】
また、本発明による数値制御装置は、ワーク又はそのワークを加工する工具を移動対象物として前記ワークの加工時に前記移動対象物を移送する複数の移送装置と、前記ワークの加工時における前記移動対象物の通常の移送とは別に当該移動対象物の速度変化を伴う動作を指示するための特別指令を外部から入力するための特別指令入力装置とを備え、前記各移送装置は、前記移動対象物を支持する支持体と、その支持体を特定の移動軸方向に移送することにより前記移動対象物を移送する駆動装置とをそれぞれ有する工作機械に設けられ、前記各移送装置の数値制御を行う数値制御装置であって、前記ワークの加工時に前記移動対象物が基準時刻の経過に伴って移動すべき経路を表す加工パスが規定された加工指令プログラムを記憶する記憶部と、前記加工パスに基づいてある設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量をそれぞれ算出する演算部と、前記各駆動装置の駆動の基準となる基準単位時間毎にその各駆動装置を駆動してその各駆動装置に前記基準単位時間当たりに前記演算部によって算出された前記移動量の分、対応する前記支持体を対応する前記移動軸方向へ移送させる駆動制御部とを備え、前記特別指令入力装置は、前記特別指令として前記移動対象物の移動速度を上昇させる指示とその移動速度の上昇率である加速率の情報を含む加速指令又は前記移動対象物の移動速度を低下させる指示とその移動速度の低下率である減速率の情報を含む減速指令を入力することが可能な速度変更指令入力装置を含み、前記演算部は、前記設定単位時間を前記基準単位時間とは別の単位時間として設定し、前記速度変更指令入力装置に前記加速指令が入力されたことに応じて、前記設定単位時間の長さが所定の加速期間に前記速度変更指令入力装置への前記加速指令の入力直前の状態における長さから前記加速指令に含まれる前記加速率に応じた長さまで増加するような加速時単位時間変動関数に基づいて前記加速期間における前記設定単位時間を算出するとともにその算出した設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量を前記加工パスから算出する一方、前記速度変更指令入力装置に前記減速指令が入力されたことに応じて、前記設定単位時間の長さが所定の減速期間に前記速度変更指令入力装置への前記減速指令の入力直前の状態における長さから前記減速指令に含まれる前記減速率に応じた長さまで減少するような減速時単位時間変動関数に基づいて前記減速期間における前記設定単位時間を算出するとともにその算出した設定単位時間当たりの前記各支持体の対応する前記移動軸方向への移動量を前記加工パスから算出する。
【発明の効果】
【００２１】
以上説明したように、本発明によれば、工作機械においてワークの加工時における移動対象物の通常の移送とは別にその移動対象物の速度変化を伴う動作を実施する場合に、移動対象物が加工指令プログラムによって指示される加工パスからずれるのを防ぎつつ、その速度変化を伴う動作が指示されてからその動作が実行されるまでの応答性を向上することができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の一実施形態による数値制御装置が適用される工作機械の概略的な側面図である。
【図２】本発明の一実施形態による数値制御装置の機能ブロック図である。
【図３】移動指令パス導出部及びメモリの機能ブロック図である。
【図４】本発明の一実施形態の数値制御装置による数値制御プロセスを示すフローチャートである。
【図５】加減速要求監視部による特別指令の監視プロセスを示すフローチャートである。
【図６】移動対象物の緊急停止プロセスを示すフローチャートである。
【図７】移動対象物の再始動プロセスを示すフローチャートである。
【図８】移動対象物の速度変更プロセスを示すフローチャートである。
【図９】加減速を伴う動作に要する期間ｔｉｍｅとその期間における単位時間の変動を表す単位時間変動関数ｇ（ｔ）の算出プロセスを示すフローチャートである。
【図１０】一定速度で移動している移動対象物の緊急停止プロセスを実行する場合における停止時単位時間変動関数を示す図である。
【図１１】移動対象物の加速中に緊急停止プロセスを実行する場合における停止時単位時間変動関数を示す図である。
【図１２】移動対象物の減速中に緊急停止プロセスを実行する場合における停止時単位時間変動関数を示す図である。
【図１３】３つの区間からなる停止時単位時間変動関数を説明するための図である。
【図１４】移動対象物の再始動プロセスを実行する場合における３つの区間からなる再始動時単位時間変動関数を示す図である。
【図１５】移動対象物の再始動プロセスを実行する場合における２つの区間からなる再始動時単位時間変動関数を示す図である。
【図１６】一定速度で移動している移動対象物の加速プロセスを実行する場合における速度変更時単位時間変動関数を示す図である。
【図１７】移動対象物の加速中にさらにその移動対象物の加速プロセスを実行する場合における速度変更時単位時間変動関数を示す図である。
【図１８】移動対象物の減速中に加速プロセスを実行する場合における速度変更時単位時間変動関数を示す図である。
【図１９】一定速度で移動している移動対象物の減速プロセスを実行する場合における速度変更時単位時間変動関数を示す図である。
【図２０】移動対象物の加速中に減速プロセスを実行する場合における速度変更時単位時間変動関数を示す図である。
【図２１】移動対象物の減速中にさらにその移動対象物の減速プロセスを実行する場合における速度変更時単位時間変動関数を示す図である。
【発明を実施するための形態】
【００２３】
以下、本発明の実施形態を図面を参照して説明する。
【００２４】
まず、図１及び図２を参照して、本発明の一実施形態による数値制御装置２が適用される工作機械の構成について説明する。
【００２５】
本実施形態による数値制御装置２（図２参照）が設けられている工作機械は、被加工物であるワーク１００を切削加工するためのものであり、ワーク移送装置１０２と、コラム１０４と、工具１０５と、工具鉛直移送装置１０６と、工具第１水平移送装置１０８と、工具第２水平移送装置１１０と、主軸ヘッド１１２と、制御盤１１４とを備えている。なお、ワーク移送装置１０２、工具鉛直移送装置１０６、工具第１水平移送装置１０８及び工具第２水平移送装置１１０は、それぞれ本発明の移送装置の概念に含まれるものである。
【００２６】
ワーク移送装置１０２は、ワーク１００を図１の紙面に垂直な方向であるＸ軸方向に移送するための装置である。このワーク移送装置１０２は、所定の設置場所上に固設されるベース１０２ａと、そのベース１０２ａ上にＸ軸方向に移動可能に設けられるワーク支持体１０２ｂと、そのワーク支持体１０２ｂをＸ軸方向に移送するワーク駆動装置１０２ｃ（図２参照）とを有する。ワーク支持体１０２ｂは、ワーク１００を支持するものである。ワーク１００は、このワーク支持体１０２ｂ上に垂直に立った状態で設置される。ワーク駆動装置１０２ｃは、駆動源としてのサーボモータを有する。なお、前記Ｘ軸は、本発明の移動軸の概念に含まれるものであり、ワーク支持体１０２ｂは、本発明の支持体の概念に含まれるものであり、ワーク駆動装置１０２ｃは、本発明の駆動装置の概念に含まれるものである。
【００２７】
コラム１０４は、前記ベース１０２ａの設置場所から水平方向でかつ前記Ｘ軸と直交する方向に離間した設置場所に立設されており、鉛直方向に延びている。
【００２８】
工具鉛直移送装置１０６は、コラム１０４に設けられており、ワーク１００を切削加工するための工具１０５を鉛直方向に延びるＹ軸方向に移送するための装置である。この工具鉛直移送装置１０６は、Ｙ軸方向に移動可能にコラム１０４に取り付けられる鉛直支持体１０６ａと、コラム１０４に設けられ、鉛直支持体１０６ａをコラム１０４に沿ってＹ軸方向に移送する鉛直駆動装置１０６ｂ（図２参照）とを有する。鉛直支持体１０６ａは、工具第１水平移送装置１０８を支持しており、この工具第１水平移送装置１０８は、後述するように工具第２水平移送装置１１０及び主軸ヘッド１１２を介して工具１０５を支持するため、鉛直支持体１０６ａは間接的に工具１０５を支持する。鉛直駆動装置１０６ｂは、駆動源としてのサーボモータを有する。なお、前記Ｙ軸方向は、本発明の移動軸の概念に含まれるものであり、鉛直支持体１０６ａは、本発明の支持体の概念に含まれるものであり、鉛直駆動装置１０６ｂは、本発明の駆動装置の概念に含まれるものである。
【００２９】
工具第１水平移送装置１０８は、鉛直支持体１０６ａに設けられており、工具１０５を前記Ｘ軸と前記Ｙ軸の両方に対して垂直に延びるＷ軸方向に移送するための装置である。この工具第１水平移送装置１０８は、Ｗ軸方向に移動可能に鉛直支持体１０６ａに設けられる第１水平支持体１０８ａと、鉛直支持体１０６ａに設けられ、第１水平支持体１０８ａをＷ軸方向に進退するように移送する第１水平駆動装置１０８ｂ（図２参照）とを有する。第１水平支持体１０８ａは、工具第２水平移送装置１１０を支持しており、この工具第２水平移送装置１１０は、後述するように主軸ヘッド１１２を介して工具１０５を支持するため、第１水平支持体１０８ａ間接的に工具１０５を支持する。第１水平駆動装置１０８ｂは、駆動源としてのサーボモータを有する。なお、前記Ｗ軸は、本発明の移動軸の概念に含まれるものであり、第１水平支持体１０８ａは、本発明の支持体の概念に含まれるものであり、第１水平駆動装置１０８ｂは、本発明の駆動装置の概念に含まれるものである。
【００３０】
工具第２水平移送装置１１０は、第１水平支持体１０８ａに設けられており、工具１０５を前記Ｗ軸と平行なＺ軸方向に移送するための装置である。この工具第２水平移送装置１１０は、Ｚ軸方向に移動可能に第１水平支持体１０８ａに設けられる第２水平支持体１１０ａと、第１水平支持体１０８ａに設けられ、第２水平支持体１１０ａをＺ軸方向に進退するように移送する第２水平駆動装置１１０ｂとを有する。第２水平支持体１１０ａは、主軸ヘッド１１２を支持しており、その主軸ヘッド１１２を介して工具１０５を支持する。第２水平駆動装置１１０ｂは、駆動源としてのサーボモータを有する。なお、前記Ｚ軸は、本発明の移動軸の概念に含まれるものであり、第２水平支持体１１０ａは、本発明の支持体の概念に含まれるものであり、第２水平駆動装置１１０ｂは、本発明の駆動装置の概念に含まれるものである。
【００３１】
主軸ヘッド１１２は、その回転軸が前記Ｗ軸及び前記Ｚ軸と平行となるように第２水平支持体１１０ａに設けられている。この主軸ヘッド１１２は、工具１０５を保持してその軸回りに工具１０５を回転させる。工具１０５は、主軸ヘッド１１２によって回転させられることによりその先端部でワーク１００を切削加工する。
【００３２】
制御盤１１４は、前記各移送装置１０２，１０６，１０８，１１０の駆動制御や、主軸ヘッド１１２の駆動制御、その他、工作機械の各部の制御を行うための機能を有する。この制御盤１１４は、前記各駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂ及び主軸ヘッド１１２の駆動源と電気的に接続されている。
【００３３】
また、制御盤１１４は、特別指令入力装置１２２（図２参照）を備えている。この特別指令入力装置１２２は、ワーク１００の加工時におけるワーク１００及び工具１０５の通常の移送とは別の加速又は減速を伴う動作を指示するための特別指令を外部から入力するための装置である。なお、以下、移送装置１０２，１０６，１０８，１１０が移送する対象物であるワーク１００又は工具１０５を移動対象物という。
【００３４】
特別指令入力装置１２２は、停止指令入力装置１２４と、再始動指令入力装置１２６と、オーバーライド装置１２８とを含む。
【００３５】
停止指令入力装置１２４は、移動対象物の移動を緊急に減速させて停止させるための緊急停止指令を入力するための装置である。前記緊急停止指令は、本発明の特別指令の概念に含まれる。この停止指令入力装置１２４は、制御盤１１４の外面に設けられた緊急停止ボタン１２４ａと、その緊急停止ボタン１２４ａが押されることに応じて緊急停止信号を後述の加減速要求監視部１０へ発信する停止信号発信部１２４ｂとを有する。なお、本実施形態では、緊急停止ボタン１２４ａを押すことが緊急停止指令の入力に相当する。
【００３６】
再始動指令入力装置１２６は、移動停止した移動対象物の移動を再開させて加速させるための再始動指令を入力するための装置である。前記再始動指令は、本発明の特別指令の概念に含まれる。この再始動指令入力装置１２６は、制御盤１１４の外面に設けられた再始動ボタン１２６ａと、その再始動ボタン１２６ａが押されることに応じて再始動信号を後述の加減速要求監視部１０へ発信する再始動信号発信部１２６ｂとを有する。なお、本実施形態では、再始動ボタン１２６ａを押すことが再始動指令の入力に相当する。
【００３７】
オーバーライド装置１２８は、移動対象物の移動速度を上昇させる指示とその移動速度の上昇率である加速率の情報を含む加速指令又は移動対象物の移動速度を低下させる指示とその移動速度の低下率である減速率の情報を含む減速指令を入力するための装置である。このオーバーライド装置１２８は、本発明の速度変更指令入力装置の概念に含まれる。また、前記加速指令及び前記減速指令は、本発明の特別指令の概念に含まれる。
【００３８】
このオーバーライド装置１２８は、制御盤１１４の外面に設けられたオーバーライドダイヤル１２８ａと、そのオーバーライドダイヤル１２８ａの操作方向及び操作量に応じた速度変更信号を後述の加減速要求監視部１０へ発信する速度変更信号発信部１２８ｂとを有する。
【００３９】
オーバーライドダイヤル１２８ａは、オペレータ等が加速指令又は減速指令を入力するときに操作する操作部である。このオーバーライドダイヤル１２８ａは、その軸回りに回動可能に制御盤１１４に設けられている。このオーバーライドダイヤル１２８ａをいずれかの方向に回動させることによって、オーバーライド装置１２８に加速指令又は減速指令を入力することが可能である。本実施形態では、オーバーライドダイヤル１２８ａを一方側へ回動させる操作が加速指令の入力に相当し、オーバーライドダイヤル１２８ａを前記一方側に対して反対側である他方側へ回動させる操作が減速指令の入力に相当する。また、オーバーライドダイヤル１２８ａの前記一方側への回動量が移動対象物の加速率と対応しており、オーバーライドダイヤル１２８ａの前記他方側への回動量が移動対象物の減速率に対応している。
【００４０】
速度変更信号発信部１２８ｂは、オーバーライドダイヤル１２８ａが前記一方側（加速側）へ回動されたことに応じて、その一方側へのオーバーライドダイヤル１２８ａの回動量に対応するオーバーライド係数の情報を含む速度変更信号を加減速要求監視部１０へ発信し、オーバーライドダイヤル１２８ａが前記他方側（減速側）へ回動されたことに応じて、その他方側へのオーバーライドダイヤル１２８ａの回動量に対応するオーバーライド係数の情報を含む速度変更信号を加減速要求監視部１０へ発信する。前記一方側へのオーバーライドダイヤル１２８ａの回動量に対応するオーバーライド係数が本発明の加速率の概念に含まれるものであり、前記他方側へのオーバーライドダイヤル１２８ａの回動量に対応するオーバーライド係数が本発明の減速率の概念に含まれるものである。オーバーライド係数は、１を基準としてオーバーライドダイヤル１２８ａが加速側へ回動されることに応じて１から増加し、オーバーライドダイヤル１２８ａが減速側へ回動されることに応じて１から減少する。
【００４１】
そして、本実施形態の数値制御装置２は、制御盤１１４の中に組み込まれており、前記各移送装置１０２，１０６，１０８，１１０の数値制御を行う。次に、図１〜図３を参照して本実施形態の数値制御装置２の構成について詳細に説明する。
【００４２】
数値制御装置２は、図２に示すように、記憶部４と、メモリ５と、演算処理装置６とを有する。
【００４３】
記憶部４は、加工指令プログラムとしてのＮＣプログラムを記憶している。このＮＣプログラムは、ワーク１００の加工時に移動対象物が基準時刻の経過に伴って移動すべき経路を表す加工パスを規定している。
【００４４】
メモリ５は、特別指令入力装置１２２に特別指令が入力される直前の時点でのオーバーライド係数や、前記速度変更信号に含まれるオーバーライド係数等の情報を記憶する。
【００４５】
演算処理装置６は、記憶部４に記憶されたＮＣプログラムに含まれる加工パスに基づく設定単位時間当たりの各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの移動量の演算や、各駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂの駆動制御、特別指令入力装置１２２への特別指令の入力の監視等の各種処理を行う。この演算処理装置６は、加減速要求監視部１０と、演算部１２と、駆動制御部１４とを有する。
【００４６】
加減速要求監視部１０は、特別指令入力装置１２２に前記特別指令が入力されたか否かを監視する。
【００４７】
具体的には、加減速要求監視部１０は、停止指令入力装置１２４に減速停止指令が入力されたか否か、すなわち停止指令入力装置１２４の緊急停止ボタン１２４ａが押されたか否かを停止信号発信部１２４ｂから発信される緊急停止信号を検出することによって監視している。詳しくは、加減速要求監視部１０は、停止信号発信部１２４ｂから緊急停止信号が発信された場合には、緊急停止ボタン１２４ａが押されたと判断し、停止信号発信部１２４ｂから緊急停止信号が発信されていない場合には、緊急停止ボタン１２４ａが押されていないと判断する。そして、加減速要求監視部１０は、停止指令入力装置１２４に減速停止指令が入力されたこと、すなわち停止信号発信部１２４ｂから緊急停止信号が発信されたことに応じて緊急停止要求を演算部１２の後述する移動量算出部２２へ出力する。
【００４８】
また、加減速要求監視部１０は、再始動指令入力装置１２６に再始動指令が入力されたか否か、すなわち再始動指令入力装置１２６の再始動ボタン１２６ａが押されたか否かを再始動信号発信部１２６ｂから発信される再始動信号を検出することによって監視している。詳しくは、加減速要求監視部１０は、再始動信号発信部１２６ｂから再始動信号が発信された場合には、再始動ボタン１２６ａが押されたと判断し、再始動信号発信部１２６ｂから再始動信号が発信されていない場合には、再始動ボタン１２６ａが押されていないと判断する。そして、加減速要求監視部１０は、停止指令入力装置１２４に緊急停止指令が入力された後に再始動指令入力装置１２６に再始動指令が入力されたこと、すなわち停止信号発信部１２４ｂから緊急停止信号が発信された後に再始動信号発信部１２６ｂから再始動信号が発信されたことに応じて再始動要求を後述する移動量算出部２２へ出力する。
【００４９】
また、加減速要求監視部１０は、オーバーライド装置１２８に加速指令又は減速指令が入力されたか否か、すなわちオーバーライドダイヤル１２８ａが回動されたか否かを速度変更信号発信部１２８ｂから発信される速度変更信号を検出することによって監視している。詳しくは、加減速要求監視部１０は、速度変更信号発信部１２８ｂから速度変更信号が発信された場合には、オーバーライドダイヤル１２８ａが回動されたと判断し、速度変更信号発信部１２８ｂから速度変更信号が発信されていない場合には、オーバーライドダイヤル１２８ａが回動されていないと判断する。そして、加減速要求監視部１０は、速度変更信号発信部１２８ｂから発信される速度変更信号を受けてその速度変更信号に含まれるオーバーライド係数の情報を含む速度変更要求を後述する移動量算出部２２へ出力する。
【００５０】
演算部１２は、記憶部４に記憶されたＮＣプログラムの加工パスに基づいて、前記特別指令入力装置１２２への特別指令の入力の有無及びその特別指令の種類に応じた設定単位時間当たりの前記各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの対応する移動軸方向（Ｘ軸方向、Ｙ軸方向、Ｗ軸方向、Ｚ軸方向）への移動量をそれぞれ算出する。
【００５１】
具体的には、演算部１２は、特別指令入力装置１２２に特別指令の入力がない場合には、前記加工パスに基づいてある設定単位時間当たりの各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの対応する移動軸方向への移動量をそれぞれ算出する。また、演算部１２は、特別指令入力装置１２２に特別指令が入力された場合には、それに応じて、設定単位時間の長さをその特別指令入力装置１２２への特別指令の入力直前の状態における長さからその特別指令が指示する移動対象物の速度変化に応じた長さに変化させ、その変化させた後の設定単位時間当たりの各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの対応する移動軸方向への移動量を前記加工パスから算出する。
【００５２】
詳しくは、演算部１２は、停止指令入力装置１２４に緊急停止指令が入力された場合には、それに応じて、停止時単位時間変動関数に基づいて減速停止期間における設定単位時間を算出し、その算出した設定単位時間当たりの各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの対応する移動軸方向への移動量を前記加工パスから算出する。なお、前記減速停止期間は、移動対象物の緊急停止のための減速動作を開始してから移動対象物が実際に停止するまでに要する時間のことである。また、前記停止時単位時間変動関数は、設定単位時間（減速時設定単位時間）の長さが前記減速停止期間に停止指令入力装置１２４への緊急停止指令の入力直前の状態における長さから０まで減少するような関数である。
【００５３】
また、演算部１２は、停止指令入力装置１２４に緊急停止指令が入力された後に再始動指令入力装置１２６に再始動指令が入力された場合には、それに応じて、再始動時単位時間変動関数に基づいて再始動期間における設定単位時間を算出し、その算出した設定単位時間当たりの各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの対応する移動軸方向への移動量を前記加工パスから算出する。なお、前記再始動加速期間は、移動停止している移動対象物の再始動が開始してから移動対象物がその時点でのオーバーライド係数に応じた移動速度まで加速するのに要する時間のことである。また、前記再始動時単位時間変動関数は、設定単位時間（加速時設定単位時間）の長さが前記再始動加速期間に０からその再始動時点でのオーバーライド係数に応じた長さまで増加するような関数である。
【００５４】
また、演算部１２は、オーバーライド装置１２８に加速指令が入力された場合には、それに応じて、設定単位時間の長さが所定の加速期間にオーバーライド装置１２８への加速指令の入力直前の状態における長さから加速指令に含まれる加速率に応じた長さまで増加するような加速時単位時間変動関数に基づいて加速期間における設定単位時間を算出し、その算出した設定単位時間当たりの各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの対応する移動軸方向への移動量を前記加工パスから算出する。なお、前記加速期間は、前記加速指令に応じた移動対象物の加速が開始してから移動対象物が前記加速指令に含まれる前記加速率（オーバーライド係数）に応じた移動速度まで加速するのに要する時間のことである。また、前記加速時単位時間変動関数は、設定時間（加速時設定単位時間）の長さが前記加速期間においてオーバーライド装置１２８への加速指令の入力直前の状態における長さから前記加速指令に含まれる前記加速率に応じた長さまで増加するような関数である。
【００５５】
また、演算部１２は、オーバーライド装置１２８に減速指令が入力された場合には、それに応じて、設定単位時間の長さが所定の減速期間にオーバーライド装置１２８への減速指令の入力直前の状態における長さから減速指令に含まれる減速率に応じた長さまで減少するような減速時単位時間変動関数に基づいて減速期間における設定単位時間を算出し、その算出した設定単位時間当たりの各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの対応する移動軸方向への移動量を前記加工パスから算出する。なお、前記減速期間は、前記減速指令に応じた移動対象物の減速が開始してから移動対象物が前記減速指令に含まれる前記減速率（オーバーライド係数）に応じた移動速度まで減速するのに要する時間のことである。また、前記減速時単位時間変動関数は、設定時間（減速時設定単位時間）の長さが前記減速期間においてオーバーライド装置１２８への減速指令の入力直前の状態における長さから前記減速指令に含まれる前記減速率に応じた長さまで減少するような関数である。
【００５６】
なお、演算部１２は、前記各設定時間を各駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂの駆動の基準となる基準単位時間とは別の単位時間として設定し、その設定単位時間当たりの前記各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの移動量を算出する。
【００５７】
そして、この演算部１２は、移動指令パス導出部２０と、移動量算出部２２とを有する。
【００５８】
移動指令パス導出部２０は、前記加工パスに基づいて各移動軸毎の移動指令パスｐａｔｈ（Ｔ）を求める。この移動指令パスｐａｔｈ（Ｔ）は、前記基準時刻とは別に設定される設定時刻Ｔの経過に伴って各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａが対応する移動軸方向に移動すべき位置を表す。
【００５９】
移動指令パス導出部２０は、図３に示すように、プログラム読取部２４と、曲面補間部２６と、移動指令パス演算部２８と、加減速演算部３０と、局部加減速フィルタ３２とを有する。
【００６０】
プログラム読取部２４は、記憶部４に記憶されたＮＣプログラムから加工パス（ツールパス）を読み取る。このプログラム読取部２４によって読み取られた加工パスは、メモリ５に記憶される。
【００６１】
曲面補間部２６は、加工パスを必要に応じて滑らかなパスとなるように補間演算を行う。この曲面補間部２６によって加工パスの補間演算が行われた場合には、その補間演算後の加工パスがメモリ５に記憶される。
【００６２】
移動指令パス演算部２８は、メモリ５に記憶された加工パスから各移動軸方向への移動成分である移動指令パスを算出する。この算出された各移動軸方向毎の移動指令パスは、メモリ５に記憶される。
【００６３】
加減速演算部３０は、メモリ５に記憶された各移動軸毎の移動指令パスについて各移動軸毎の加減速条件、すなわち各移動軸毎の許容加速度や許容ジャークに従って加減速計算を行い、前記設定時刻Ｔの関数として各移動軸毎の移動指令パスｐａｔｈ（Ｔ）を算出する。この算出された移動指令パスｐａｔｈ（Ｔ）は、メモリ５に記憶される。
【００６４】
局部加減速フィルタ３２は、移動指令パスｐａｔｈ（Ｔ）のうち工作機械に機械ショックが発生し得る急激な加減速を指示する部分のみを局部的に滑らかに補間する。この局部加減速フィルタ３２によって補間された後の移動指令パスｐａｔｈ（Ｔ）のうち元々速度変化が滑らかで機械ショックを発生させない部分については補間されていないため、その部分については加工指令からの誤差が生じない。
【００６５】
移動量算出部２２は、移動指令パス導出部２０によって求められた移動指令パスｐａｔｈ（Ｔ）から特別指令入力装置１２２への特別指令の入力の有無及びその特別指令の種類に応じて設定単位時間当たりの各支持体各１０２ｂ，１０６ａ，１０８ａ，１１０ａの対応する移動軸方向への移動量を算出する。
【００６６】
具体的には、移動量算出部２２は、停止指令入力装置１２４に緊急停止指令が入力されると、それに応じて、移動対象物の各移動軸方向の合成移動方向における許容加速度及び許容ジャークと緊急停止指令の入力直前の状態における設定単位時間とに基づいて前記減速停止期間及び前記停止時単位時間変動関数を算出するとともに、その算出した減速停止期間及び停止時単位時間変動関数に基づいて当該減速停止期間における減速時設定単位時間を算出し、その算出した減速時設定単位時間当たりの各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの対応する移動軸方向への移動量を前記移動指令パスｐａｔｈ（Ｔ）からそれぞれ算出する。
【００６７】
また、移動量算出部２２は、停止指令入力装置１２４に緊急停止指令が入力された後に再始動指令入力装置１２６に再始動指令が入力されると、それに応じて、移動対象物の前記許容加速度及び前記許容ジャークと再始動指令の入力時点におけるオーバーライド係数とに基づいて前記再始動加速期間及び前記再始動時単位時間変動関数を算出するとともに、その算出した再始動加速期間及び再始動時単位時間変動関数に基づいて当該再始動加速期間における加速時設定単位時間を算出し、その算出した加速時設定単位時間当たりの各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの対応する移動軸方向への移動量を前記指令パスｐａｔｈ（Ｔ）からそれぞれ算出する。
【００６８】
また、移動量算出部２２は、オーバーライド装置１２８に加速指令が入力されると、それに応じて、移動対象物の前記許容加速度及び前記許容ジャークと、加速指令の入力時点における設定単位時間と、加速指令に含まれる加速率（オーバーライド係数）とに基づいて前記加速期間及び前記加速時単位時間変動関数を算出するとともに、その算出した加速期間及び加速時単位時間変動関数に基づいて当該加速期間における加速時設定単位時間を算出し、その算出した加速時設定単位時間当たりの各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの対応する移動軸方向への移動量を前記指令パスｐａｔｈ（Ｔ）からそれぞれ算出する。
【００６９】
また、移動量算出部２２は、オーバーライド装置１２８に減速指令が入力されると、それに応じて、移動対象物の前記許容加速度及び前記許容ジャークと、減速指令の入力時点における設定単位時間と、減速指令に含まれる減速率（オーバーライド係数）とに基づいて前記減速期間及び前記減速時単位時間変動関数を算出するとともに、その算出した減速期間及び減速時単位時間変動関数に基づいて当該減速期間における減速時設定単位時間を算出し、その算出した減速時設定単位時間当たりの各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの対応する移動軸方向への移動量を前記指令パスｐａｔｈ（Ｔ）からそれぞれ算出する。
【００７０】
駆動制御部１４は、演算部１２の移動量算出部２２によって算出された各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの移動量に応じて各駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂに対応する支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａを対応する移動軸方向へ移送させる。具体的には、駆動制御部１４は、前記基準単位時間毎に各駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂを駆動してその各駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂに前記基準単位時間当たりに、演算部１２の移動量算出部２２によって算出された設定単位時間当たりの移動量の分、対応する支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａを対応する移動軸方向へ移送させる制御を行う。駆動制御部１４は、この制御を各駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂへサーボ指令パルスを送ることによって実行する。
【００７１】
次に、本実施形態の数値制御装置２による数値制御のプロセスについて説明する。
【００７２】
まず、演算部１２の移動指令パス導出部２０が、加工パスに基づいて、各移動軸毎の前記移動指令パスｐａｔｈ（Ｔ）を導出する（図４のステップＳ２）。この導出された移動指令パスｐａｔｈ（Ｔ）のデータは、メモリ５に蓄積される。
【００７３】
次に、移動量算出部２２が、メモリ５に蓄積された移動指令パスのデータが有るかないかを判断する（ステップＳ４）。この際、移動量算出部２２は、メモリ５に蓄積された移動指令パスのデータがないと判断した場合には、当該ステップＳ４の判断を再度行う。一方、移動量算出部２２は、メモリ５に蓄積された移動指令パスのデータがあると判断した場合には、設定時刻Ｔを０に初期セットするとともに、設定単位時間ΔＴを１に初期セットする（ステップＳ６）。
【００７４】
次に、移動量算出部２２は、設定時刻Ｔを基準時刻ｔに対する関数として表した設定時刻関数Ｔ（ｔ）を基準時刻ｔで微分して得られる値ｇ（ｔ）をさらに基準時刻ｔで微分した値ｄｇを０に初期セットする（ステップＳ８）。
【００７５】
次に、移動量算出部２２は、前記移動指令パスｐａｔｈ（Ｔ）のデータに基づいて、設定単位時間ΔＴ当たりの各移動軸毎の単位時間移動量ｄＰ［ａｘｉｓ］を次式（１）によってそれぞれ算出する（ステップＳ１０）。
【００７６】
ｄＰ［ａｘｉｓ］＝ｐａｔｈ（Ｔ＋ΔＴ）［ａｘｉｓ］−ｐａｔｈ（Ｔ）［ａｘｉｓ］・・・（１）
【００７７】
次に、移動量算出部２２は、上記のように算出した各移動軸毎の単位時間移動量ｄＰ［ａｘｉｓ］から各移動軸方向を合成した方向である合成移動方向における移動対象物の現在の移動速度Ｖ（以下、合成移動速度Ｖという）を次式（２）によって算出する（ステップＳ１１）。
【００７８】
Ｖ＝|ｄＰ［ ］|／ΔＴ・・・（２）
【００７９】
なお、この式（２）においてｄＰ［ ］は合成移動方向における移動対象物の移動量であり、移動量算出部２２が前記各移動軸毎の単位時間移動量ｄＰ［ａｘｉｓ］を合成することによって求める。
【００８０】
次に、駆動制御部１４が、移動量算出部２２によって算出された単位時間移動量ｄＰ［ａｘｉｓ］に応じて各駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂを駆動する（ステップＳ１２）。この際、駆動制御部１４は、基準単位時間（本実施形態では１ｍｓｅｃ）当たりに各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａを前記単位時間移動量ｄＰ［ａｘｉｓ］だけ移送することを指示するためのサーボ指令パルスを各移動軸毎に作成し、その作成した各移動軸毎のサーボ指令パルスを各駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂのうち対応するものへそれぞれ出力する。これにより、各駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂのサーボモータは、駆動制御部１４からのサーボ指令パルスに従って１つの基準単位時間当たりに前記単位時間移動量ｄＰ［ａｘｉｓ］だけ支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａのうち対応するものを対応する移動軸方向へ移送する。
【００８１】
次に、移動量算出部２２は、メモリ５に蓄積された移動指令パスｐａｔｈ（Ｔ）の全期間の処理が終了したか否かを判断する（ステップＳ１４）。具体的には、メモリ５に蓄積された移動指令パスｐａｔｈ（Ｔ）のデータは、上記のように設定単位時間ΔＴ毎に順番に演算処理されて前記単位時間移動量ｄＰ［ａｘｉｓ］が求められていくため、当該ステップＳ１４では、その演算処理がメモリ５に蓄積された移動指令パスｐａｔｈ（Ｔ）の全期間について終了したかが判断される。ここで、移動量算出部２２がメモリ５に蓄積された移動指令パスの全期間の処理が終了したと判断した場合には、数値制御装置２による数値制御のプロセスが終了する。
【００８２】
なお、上記のような演算部１２での演算処理と並行して、加減速要求監視部１０は、図５に示すようなプロセスで特別指令入力装置１２２に特別指令が入力されたか否かの監視を行っている。
【００８３】
具体的には、加減速要求監視部１０は、まず、工作機械が連続運転中であるか否かを判断する（ステップＳ１０２）。ここで、加減速要求監視部１０は、工作機械が連続運転中であると判断した場合には、次に、緊急停止ボタン１２４ａが押されたか否かを判断する（ステップＳ１０４）。
【００８４】
そして、加減速要求監視部１０は、停止信号発信部１２４ｂから発信される緊急停止信号を検知して緊急停止ボタン１２４ａが押されたと判断した場合には、緊急停止要求を発行し（ステップＳ１０６）、その後、前記ステップＳ１０２の処理を再度行う。一方、加減速要求監視部１０は、緊急停止ボタン１２４ａが押されていないと判断した場合には、次に、オーバーライドダイヤル１２８ａが回動されたか否かを判断する（ステップＳ１０８）。
【００８５】
ここで、加減速要求監視部１０は、速度変更信号発信部１２８ｂから発信される速度変更信号を検知してオーバーライドダイヤル１２８ａが回動されたと判断した場合には、そのオーバーライドダイヤル１２８ａの回動方向及び回動量に応じたオーバーライド係数ｋの情報を含む速度変更要求を発行し（ステップＳ１１０）、その後、前記ステップＳ１０２の処理を再度行う。また、加減速要求監視部１０は、オーバーライドダイヤル１２８ａが回動されていないと判断した場合には、速度変更要求を発行することなく、前記ステップＳ１０２の処理を再度行う。
【００８６】
また、加減速要求監視部１０は、前記ステップＳ１０２の判断において工作機械が連続運転中ではないと判断した場合には、前記緊急停止要求により各駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂによる各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの移送が停止中であるか否かを判断する（ステップＳ１１２）。
【００８７】
加減速要求監視部１０は、各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの移送が停止中であると判断した場合には、次に、再始動ボタン１２６ａが押されたか否かを判断する（ステップＳ１１４）。この際、加減速要求監視部１０は、再始動信号発信部１２６ｂから発信される再始動信号を検知して再始動ボタン１２６ａが押されたと判断した場合には、再始動要求を発行し（ステップＳ１１６）、その後、前記ステップＳ１０２の処理を再度行う。また、加減速要求監視部１０は、再始動ボタン１２６ａが押されていないと判断した場合には、再始動要求を発行することなく、前記ステップＳ１０２の処理を再度行う。
【００８８】
一方、移動量算出部２２は、前記ステップＳ１４の判断において、メモリ５に蓄積された移動指令パスｐａｔｈ（Ｔ）の全期間の処理が終了していないと判断した場合には、次に、緊急停止要求が加減速要求監視部１０から出されているか否かを判断する（図４のステップＳ１６）。ここで、移動量算出部２２は、緊急停止要求が出されていると判断した場合には、図６に示す緊急停止プロセスを実行する。
【００８９】
具体的には、移動量算出部２２は、まず、現時点での移動対象物の合成移動速度Ｖの値を一時的にメモリ５に記憶させ（ステップＳ２２）、その後、減速停止期間ｔｉｍｅと停止時単位時間変動関数ｇ（ｔ）を算出する（ステップＳ２４）。ここで、移動量算出部２２は、減速停止期間ｔｉｍｅの始期における停止時単位時間変動関数ｇ（ｔ）の値ｇｓが設定単位時間ΔＴに等しく、減速停止期間ｔｉｍｅの終期における停止時単位時間変動関数ｇ（ｔ）の値ｇｅが０であり、減速停止期間ｔｉｍｅの始期における合成移動速度が前記Ｖであるという条件を満たすような減速停止期間ｔｉｍｅ及び停止時単位時間変動関数ｇ（ｔ）を算出する。この減速停止期間ｔｉｍｅ及び停止時単位時間変動関数ｇ（ｔ）の算出プロセスは、図９に示されている。なお、この図９は、後述する再始動プロセスにおける再始動加速期間ｔｉｍｅ及び再始動時単位時間変動関数ｇ（ｔ）の算出と速度変更プロセスにおける速度変更期間ｔｉｍｅ及び速度変更時単位時間変動関数ｇ（ｔ）の算出にも共通して適用可能なプロセスを示している。すなわち、移動量算出部２２は、特別指令入力装置１２２への特別指令の入力に伴って実施される移動対象物の速度変化を伴う速動作において共通の算出プロセスでその速度変動を伴う動作に要する期間ｔｉｍｅとその期間ｔｉｍｅ内での単位時間の変動を表す単位時間変動関数ｇ（ｔ）を算出する。
【００９０】
停止時単位時間変動関数ｇ（ｔ）は、減速停止期間ｔｉｍｅの始期（移動量算出部２２が緊急停止要求を受けた時点）において移動対象物が一定速度で移動している場合には、例えば図１０に示すような曲線で表され、減速停止期間ｔｉｍｅの始期において移動対象物が加速中である場合には、例えば図１１に示すような曲線で表され、減速停止期間ｔｉｍｅの始期において移動対象物が減速中である場合には、例えば図１２に示すような曲線で表される。
【００９１】
移動量算出部２２は、減速停止期間ｔｉｍｅ及び停止時単位時間変動関数ｇ（ｔ）の算出にあたって、まず、停止時単位時間変動関数ｇ（ｔ）の二次微分値ｊと、停止時単位時間変動関数ｇ（ｔ）の一次微分の傾きａを求める（ステップＳ４２）。この際、前記二次微分値ｊは、次式（３）で求められ、前記一次微分の傾きａは、次式（４）で求められる。
【００９２】
ｊ＝Ｊ／Ｖ・・・（３）
ａ＝Ａ／Ｖ・・・（４）
【００９３】
なお、Ｊは移動対象物の合成移動方向における許容ジャークであり、Ａは移動対象物の合成移動方向における許容加速度である。これらＪ及びＡの値は、本実施形態のｔｉｍｅ及びｇ（ｔ）の算出プロセスのために設定されるパラメータであり、工作機械の機械特性から規定される加減速条件としての許容ジャーク及び許容加速度の半分程度の値に設定される。
【００９４】
次に、移動量算出部２２は、停止時単位時間変動関数ｇ（ｔ）の基準時刻ｔによる一次微分値ｄｇのｔ＝０の点での値が０以上であるか否かを判断する（ステップＳ４４）。ここで、移動量算出部２２は、このｄｇの値が０以上であると判断した場合には、停止時単位時間変動関数ｇ（ｔ）で表される二次曲線の前半部の二次微分値ｊ１を−ｊに設定する（ステップＳ４６）一方、このｄｇの値が０よりも小さいと判断した場合には、前記二次微分値ｊ１をｊに設定する（ステップＳ４８）。
【００９５】
次に、移動量算出部２２は、減速停止期間ｔｉｍｅにおける停止時単位時間変動関数ｇ（ｔ）の始点に対する当該停止時単位時間変動関数ｇ（ｔ）の二次曲線の前半部の頂点の相対位置（ｔ０，Ｅ０）を以下の式（５）及び（６）によって仮算出するとともに、その二次曲線の前半部の頂点から当該二次曲線の後半部の終点までの範囲における停止時単位時間変動関数ｇ（ｔ）の値の変化量Ｅを以下の式（７）によって仮算出する（ステップＳ５０）。
【００９６】
ｔ０＝−ｄｇ／ｊ１・・・（５）
Ｅ０＝（ｄｇ／２）×ｔ０・・・（６）
Ｅ＝ｇｅ−ｇｓ−Ｅ０・・・（７）
【００９７】
次に、移動量算出部２２は、前記停止時単位時間変動関数ｇ（ｔ）の値の変化量Ｅが０以上であるか否かを判断する（ステップＳ５２）。ここで、移動量算出部２２は、前記変化量Ｅが０以上であると判断した場合には、停止時単位時間変動関数ｇ（ｔ）の二次曲線の前半部の二次微分値ｊ１をｊに設定するとともに、停止時単位時間変動関数ｇ（ｔ）の二次曲線の後半部の二次微分値ｊ２を−ｊに設定する（ステップＳ５４）。一方、移動量算出部２２は、前記変化量Ｅが０よりも小さいと判断した場合には、前記二次曲線の前半部の二次微分値ｊ１を−ｊに設定するとともに、前記二次曲線の後半部の二次微分値ｊ２をｊに設定し、さらに、前記ｇ（ｔ）の一次微分の傾きａを正負逆に設定する（ステップＳ５６）。
【００９８】
次に、移動量算出部２２は、停止時単位時間変動関数ｇ（ｔ）の二次曲線の始点に対する当該二次曲線の前半部の頂点の相対位置（ｔ０，Ｅ０）を上記式（５），（６）によって再算出するとともに、その二次曲線の前半部の頂点から後半部の終点までのｇ（ｔ）の変化量Ｅを上記式（７）によって再算出する（ステップＳ５８）。
【００９９】
次に、移動量算出部２２は、停止時単位時間変動関数ｇ（ｔ）の二次曲線の前半部の頂点のｇ（ｔ）の値ｇｕと、当該二次曲線の始点から変曲点までにかかる時間ｔ１と、当該二次曲線の変曲点から終点までにかかる時間ｔ２と、当該二次曲線の始点から変曲点までの範囲におけるｇ（ｔ）の変化量Ｇ１と、当該二次曲線の変曲点から終点までの範囲におけるｇ（ｔ）の変化量Ｇ２と、当該二次曲線の始点から終点までの範囲におけるｇ（ｔ）の変化量Ｇとをそれぞれ算出する（ステップＳ６０）。この際、移動量算出部２２は、前記ｇｕを以下の式（８）によって算出し、前記ｔ１を以下の式（９）によって算出し、前記ｔ２を以下の式（１０）によって算出する。また、移動量算出部２２は、前記Ｇ１を以下の式（１１）によって算出し、前記Ｇ２を以下の式（１２）によって算出し、前記Ｇを以下の式（１３）によって算出する。
【０１００】
ｇｕ＝ｇｓ＋Ｅ０・・・（８）
ｔ１＝ａ／ｊ１・・・（９）
ｔ２＝−ａ／ｊ２・・・（１０）
Ｇ１＝（ａ／２）×ｔ１・・・（１１）
Ｇ２＝（ａ／２）×ｔ２・・・（１２）
Ｇ＝Ｇ１＋Ｇ２・・・（１３）
【０１０１】
次に、移動量算出部２２は、前記二次曲線の前半部の頂点から後半部の終点までの範囲におけるｇ（ｔ）の変化量の絶対値|Ｅ|が前記二次曲線の始点から終点までの範囲におけるｇ（ｔ）の変化量の絶対値|Ｇ|以上であるか否かを判断する（ステップＳ６２）。ここで、前記|Ｅ|が前記|Ｇ|以上である場合は、図１３に示すように前記二次曲線の前半の曲線部と後半の曲線部との間に直線部が介在している場合に対応するため、移動量算出部２２は、その前半の曲線部の区間０≦ｔ≦Ｔ１、直線部の区間Ｔ１＜ｔ＜Ｔ２及び後半の曲線部の区間Ｔ２≦ｔ≦ｔｉｍｅの３つの区間のそれぞれにおける停止時単位時間変動関数ｇ（ｔ）を個別に求める（ステップＳ６４）。
【０１０２】
具体的には、移動量算出部２２は、０≦ｔ≦Ｔ１の区間の停止時単位時間変動関数ｇ（ｔ）を次式（１４）で求める。
【０１０３】
ｇ（ｔ）＝ｇｕ＋（ｊ１／２）×（ｔ−ｔ０）２・・・（１４）
【０１０４】
また、移動量算出部２２は、Ｔ１＜ｔ＜Ｔ２の区間の停止時単位時間変動関数ｇ（ｔ）を次式（１５）で求める。
【０１０５】
ｇ（ｔ）＝ｇｕ＋Ｇ１＋ａ×（ｔ−Ｔ１）・・・（１５）
【０１０６】
また、移動量算出部２２は、Ｔ２≦ｔ≦ｔｉｍｅの区間の停止時単位時間変動関数ｇ（ｔ）を次式（１６）で求める。
【０１０７】
ｇ（ｔ）＝ｇｅ＋（ｊ２／２）×（ｔ−ｔｉｍｅ）２・・・（１６）
【０１０８】
なお、この場合において、前記Ｔ１は、前記二次曲線の始点から第１の変曲点（前半の曲線部の終点）までにかかる時間であり、以下の式（１７）によって求められ、前記Ｔ２は、前記二次曲線の始点から第２の変曲点（直線部の終点）までにかかる時間であり、以下の式（１８）によって求められる。また、減速停止期間ｔｉｍｅは、前記二次曲線の始点から終点までにかかる時間であるため、以下の式（１９）によって求められる。
【０１０９】
Ｔ１＝ｔ０＋ｔ１・・・（１７）
Ｔ２＝Ｔ１＋（Ｅ−Ｇ）／ａ・・・（１８）
ｔｉｍｅ＝Ｔ２＋ｔ２・・・（１９）
【０１１０】
一方、前記|Ｅ|が前記|Ｇ|よりも小さい場合は、前記二次曲線の前半の曲線部と後半の曲線部との間に直線部が介在せず、それら両曲線部が連続している場合に対応するため、移動量算出部２２は、その前半の曲線部の区間０≦ｔ≦Ｔ１及び後半の曲線部の区間Ｔ１＜ｔ≦ｔｉｍｅの２つの区間のそれぞれにおける停止時単位時間変動関数ｇ（ｔ）を個別に求める（ステップＳ６５）。
【０１１１】
具体的には、移動量算出部２２は、０≦ｔ≦Ｔ１の区間の停止時単位時間変動関数ｇ（ｔ）を次式（２０）で求める。
【０１１２】
ｇ（ｔ）＝ｇｕ＋（ｊ１／２）×（ｔ−ｔ０）２・・・（２０）
【０１１３】
また、移動量算出部２２は、Ｔ１＜ｔ≦ｔｉｍｅの区間の停止時単位時間変動関数ｇ（ｔ）を次式（２１）で求める。
【０１１４】
ｇ（ｔ）＝ｇｅ＋（ｊ２／２）×（ｔ−ｔｉｍｅ）２・・・（２１）
【０１１５】
なお、この場合において、減速停止期間ｔｉｍｅは、次式（２２）によって求められる。
【０１１６】
ｔｉｍｅ＝Ｔ１＋ｔ２・・・（２２）
【０１１７】
ここで、Ｔ１は、前記二次曲線の始点から変曲点（前半の曲線部の終点）までにかかる時間であり、次式（２３）によって求められる。
【０１１８】
Ｔ１＝ｔ０＋ｔ１・・・（２３）
【０１１９】
また、ｔ１は、以下の式（２４）によって求められ、ｔ２は、以下の式（２５）によって求められる。
【０１２０】
ｔ１＝［２×Ｅ×ｊ２／｛ｊ１×（ｊ２−ｊ１）｝］１／２・・・（２４）
ｔ２＝−ｊ１／ｊ２×ｔ１・・・（２５）
【０１２１】
以上のようにして、停止時単位時間変動関数ｇ（ｔ）と減速停止期間ｔｉｍｅが求められる。
【０１２２】
次に、移動量算出部２２は、基準時刻ｔを０に初期セットする（図６のステップＳ２６）。
【０１２３】
その後、移動量算出部２２は、基準時刻ｔを１だけカウントアップし（ステップＳ２８）、続いて、この緊急停止プロセス（減速停止期間ｔｉｍｅ）における設定時刻Ｔの単位時間である減速時設定単位時間ｄＴ２を上記のように求めた停止時単位時間変動関数ｇ（ｔ）に基づいて算出する（ステップＳ３０）。この際、算出される減速時設定単位時間ｄＴ２の長さは、緊急停止要求が加減速要求監視部１０から出される直前の状態、すなわち停止指令入力装置１２４の緊急停止ボタン１２４ａが押される直前の状態における設定単位時間ΔＴの長さから減少した長さとなる。移動量算出部２２は、前記ステップＳ２８でカウントアップした基準時刻ｔを停止時単位時間変動関数ｇ（ｔ）に代入することによって減速時設定単位時間ｄＴ２を算出する。
【０１２４】
次に、移動量算出部２２は、減速時設定単位時間ｄＴ２当たりの各移動軸毎の移動量ｄＰ［ａｘｉｓ］、すなわち設定時刻ＴからＴ＋ｄＴ２までの各移動軸毎の移動量ｄＰ［ａｘｉｓ］を次式（２７）によって算出する（ステップＳ３２）。
【０１２５】
ｄＰ［ａｘｉｓ］＝ｐａｔｈ（Ｔ＋ｄＴ２）［ａｘｉｓ］−ｐａｔｈ（Ｔ）［ａｘｉｓ］・・・（２７）
【０１２６】
このように求められた減速時設定単位時間ｄＴ２当たりの各移動軸毎の移動量ｄＰ［ａｘｉｓ］は、緊急停止要求が加減速要求監視部１０から出される直前の状態における設定単位時間ΔＴ当たりの各移動軸毎の移動量よりも小さくなる。
【０１２７】
その後、前記ステップＳ１２と同様に、駆動制御部１４が、移動量算出部２２によって算出された減速時設定単位時間ｄＴ２当たりの各移動軸毎の移動量ｄＰ［ａｘｉｓ］に応じて各駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂを駆動してそれら駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂに対応する支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａを基準単位時間当たりに対応する各移動軸毎の移動量ｄＰ［ａｘｉｓ］だけ移送させる（ステップＳ３４）。
【０１２８】
次に、移動量算出部２２は、設定時刻Ｔに前記ステップＳ３０で算出した減速時設定単位時間ｄＴ２を加算して設定時刻Ｔを更新する（ステップＳ３６）。
【０１２９】
その後、移動量算出部２２は、基準時刻ｔが減速停止期間ｔｉｍｅ以上になったか否かを判断する（ステップＳ３８）。ここで、移動量算出部２２が基準時刻ｔが減速停止期間ｔｉｍｅ以上であると判断した場合には、移動対象物の移動が停止していることになり、移動量算出部２２は、次に、メモリ５に記憶されている合成移動速度Ｖの値を読み込む（ステップＳ４０）。この後、再始動指令入力装置１２６に再始動指令が入力された場合には、移動対象物の移動を再開させる再始動プロセス（図７参照）が行われる。一方、移動量算出部２２は、前記ステップＳ３８において、基準時刻ｔが減速停止期間ｔｉｍｅを経過していないと判断した場合には、前記ステップＳ２８以降の処理を再度行う。
【０１３０】
次に、移動対象物の再始動プロセスについて説明する。この再始動プロセスでは、移動量算出部２２が加減速要求監視部１０から再始動要求が出力されているか否かを判断する（ステップＳ６８）。ここで、移動量算出部２２は、加減速要求監視部１０から再始動要求が出されていないと判断した場合には、当該ステップＳ６８の判断を繰り返し行う。一方、移動量算出部２２は、加減速要求監視部１０から再始動要求が出されていると判断した場合には、次に、再始動加速期間ｔｉｍｅと再始動時単位時間変動関数ｇ（ｔ）を算出する（ステップＳ７０）。この際、移動量算出部２２は、再始動加速期間ｔｉｍｅの始期における再始動時単位時間変動関数ｇ（ｔ）の値ｇｓが０であり、再始動加速期間ｔｉｍｅの終期における再始動時単位時間変動関数ｇ（ｔ）の値ｇｅが現時点でのオーバーライド係数ｋに等しくなり、再始動加速期間ｔｉｍｅの終期における合成移動速度が前記Ｖとなるという条件を満たす再始動加速期間ｔｉｍｅ及び再始動時単位時間変動関数ｇ（ｔ）を算出する。この再始動加速期間ｔｉｍｅ及び再始動時単位時間変動関数ｇ（ｔ）の算出プロセスは、上記した減速停止期間ｔｉｍｅ及び停止時単位時間変動関数ｇ（ｔ）の算出プロセス（図９のステップＳ４２〜Ｓ６５）と同様である。また、この算出プロセスでは、前記ｔ０及び前記Ｅ０は共に０となり、前記ｄｇは０である。
【０１３１】
再始動時単位時間変動関数ｇ（ｔ）は、その関数によって表される前半の二次曲線の頂点から後半の二次曲線の終点までの区間におけるｇ（ｔ）の変化量の絶対値|Ｅ|が再始動加速期間ｔｉｍｅにおけるｇ（ｔ）の変化量の絶対値|Ｇ|以上である場合には、図１４に示すような前半の曲線部と後半の曲線部との間に直線部が介在するような曲線で表され、前記|Ｅ|が前記|Ｇ|よりも小さい場合には、図１５に示すような前半の曲線部と後半の曲線部とが直線部を介することなく連続している曲線で表される。
【０１３２】
そして、移動量算出部２２は、再始動加速期間ｔｉｍｅ及び再始動時単位時間変動関数ｇ（ｔ）を算出した後、図７のステップＳ７２〜Ｓ８４のプロセスを上記図６のステップＳ２６〜Ｓ３８のプロセスと同様に行う。この際、移動量算出部２２は、ステップＳ７６において、ステップＳ７０で算出した再始動時単位時間変動関数ｇ（ｔ）に基づいて加速時設定単位時間ｄＴ２を算出し、ステップＳ７８において、その算出した加速時設定単位時間ｄＴ２当たりの各移動軸毎の移動量ｄＰ［ａｘｉｓ］を算出する。以上のような再始動プロセスが行われることによって、移動停止していた移動対象物は、移動を再開し、現時点でのオーバーライド係数ｋに応じた速度まで加速する。
【０１３３】
そして、移動量算出部２２がステップＳ８４の判断において基準時刻ｔが再始動加速期間ｔｉｍｅ以上であると判断した場合には、移動量算出部２２は、図４のステップＳ８以降の処理を再度行う。
【０１３４】
ところで、移動量算出部２２が前記ステップＳ１６において加減速要求監視部１０から緊急停止要求が出されていないと判断した場合には、その後、加減速要求監視部１０から速度変更要求が出されているか否かを判断する（ステップＳ１８）。
【０１３５】
ここで、移動量算出部２２は、加減速要求監視部１０から速度変更要求が出されていると判断した場合には、図８に示す移動対象物の速度変更プロセスを実施する。
【０１３６】
具体的には、移動量算出部２２は、まず、速度変更期間ｔｉｍｅと速度変更時単位時間変動関数ｇ（ｔ）を算出する（ステップＳ８６）。この際、移動量算出部２２は、速度変更期間ｔｉｍｅの始期における速度変更時単位時間変動関数ｇ（ｔ）の値ｇｓが設定単位時間ΔＴに等しくなり、速度変更期間ｔｉｍｅの終期における速度変更時単位時間変動関数ｇ（ｔ）の値ｇｅが速度変更後のオーバーライド係数ｋに等しくなり、速度変更期間ｔｉｍｅの始期における合成移動速度が前記Ｖとなるという条件を満たす速度変更期間ｔｉｍｅ及び速度変更時単位時間変動関数ｇ（ｔ）を算出する。
【０１３７】
なお、速度変更期間ｔｉｍｅは、オーバーライド装置１２８に加速指令が入力された場合には、本発明の加速期間の概念に含まれるものであり、オーバーライド装置１２８に減速指令が入力された場合には、本発明の減速期間の概念に含まれるものである。また、速度変更時単位時間変動関数ｇ（ｔ）は、オーバーライド装置１２８に加速指令が入力された場合には、本発明の加速時単位時間変動関数の概念に含まれるものであり、オーバーライド装置１２８に減速指令が入力された場合には、本発明の減速時単位時間変動関数の概念に含まれるものである。
【０１３８】
移動対象物の加速動作を行う場合の速度変更時単位時間変動関数ｇ（ｔ）は、速度変更期間ｔｉｍｅの始期（移動量算出部２２が速度変更要求を受けた時点）において移動対象物が一定速度で移動している場合には、例えば図１６に示すような曲線で表される。一方、速度変更期間ｔｉｍｅの始期において移動対象物が加速中である場合に、さらにその移動対象物の加速動作が実行される場合の速度変更時単位時間変動関数ｇ（ｔ）は、図１７に示すような曲線で表され、速度変更期間ｔｉｍｅの始期において移動対象物が減速中である場合にその移動対象物の加速動作が実行される場合の速度変更時単位時間変動関数ｇ（ｔ）は、図１８に示すような曲線で表される。
【０１３９】
また、移動対象物の減速動作を行う場合の速度変更時単位時間変動関数ｇ（ｔ）は、速度変更期間ｔｉｍｅの始期（移動量算出部２２が速度変更要求を受けた時点）において移動対象物が一定速度で移動している場合には、例えば図１９に示すような曲線で表される。一方、速度変更期間ｔｉｍｅの始期において移動対象物が加速中である場合にその移動対象物の減速動作が実行される場合の速度変更時単位時間変動関数ｇ（ｔ）は、図２０に示すような曲線で表され、速度変更期間ｔｉｍｅの始期において移動対象物が減速中である場合にさらにその移動対象物の減速動作が実行される場合の速度変更時単位時間変動関数ｇ（ｔ）は、図２１に示すような曲線で表される。
【０１４０】
なお、前記図１６〜図２１は、いずれも、速度変更時単位時間変動関数ｇ（ｔ）によって表される前半の二次曲線の頂点から後半の二次曲線の終点までの区間におけるｇ（ｔ）の変化量の絶対値|Ｅ|が速度変更期間ｔｉｍｅにおけるｇ（ｔ）の変化量の絶対値|Ｇ|よりも小さい場合に対応しており、これらの場合には、速度変更時単位時間変動関数ｇ（ｔ）は、前半の曲線部と後半の曲線部とが直線部を介することなく連続した形状の曲線によって表される。一方、前記|Ｅ|が前記|Ｇ|以上である場合には、これら各図の前半の曲線部と後半の曲線部とが直線部を介して繋げられた形状の曲線によって速度変更時単位時間変動関数ｇ（ｔ）が表される。
【０１４１】
そして、移動量算出部２２は、速度変更期間ｔｉｍｅ及び速度変更時単位時間変動関数ｇ（ｔ）を算出した後、基準時刻ｔを０にセットし（ステップＳ８８）、その後、基準時刻ｔを１だけカウントアップする（ステップＳ８９）。
【０１４２】
次に、移動量算出部２２は、ステップＳ８６で算出した速度変更時単位時間変動関数ｇ（ｔ）に基づいて設定単位時間ΔＴを算出する（ステップＳ９０）。この設定単位時間ΔＴは、前記ステップＳ８９でカウントアップした基準時刻ｔを速度変更時単位時間変動関数ｇ（ｔ）に代入することによって求められる。
【０１４３】
次に、移動量算出部２２は、この算出した設定単位時間ΔＴ当たりの各移動軸毎の単位時間移動量ｄＰ［ａｘｉｓ］を前記ステップＳ１０と同様にして算出する（ステップＳ９１）。
【０１４４】
次に、移動量算出部２２は、前記ステップＳ９１で算出した各移動軸毎の単位時間移動量ｄＰ［ａｘｉｓ］から現時点での移動対象物の合成移動速度Ｖを算出する（ステップＳ９２）。この合成移動速度Ｖの算出方法は、前記ステップＳ１１における合成移動速度Ｖの算出方法と同様である。
【０１４５】
その後、駆動制御部１４が、前記ステップＳ９１で算出した移動量ｄＰ［ａｘｉｓ］に応じて前記ステップＳ１２と同様に各駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂを駆動する（ステップＳ９３）。その後、移動量算出部２２は、設定時刻Ｔに前記ステップＳ９０で算出した設定単位時間ΔＴを加算してその設定時刻Ｔを更新する（ステップＳ９４）。
【０１４６】
次に、移動量算出部２２は、前記ステップＳ８６で求めた速度変更時単位時間変動関数ｇ（ｔ）を基準時刻ｔで微分することにより前記ｄｇを算出する（ステップＳ９５）。
【０１４７】
その後、移動量算出部２２は、基準時刻ｔが速度変更期間ｔｉｍｅ以上であるか否かを判断し、基準時刻ｔが速度変更期間ｔｉｍｅ以上であると判断した場合には、前記ステップＳ８以降の処理を再度行う一方、基準時刻ｔが速度変更期間ｔｉｍｅを経過していないと判断した場合には、次に、加減速要求監視部１０から緊急停止要求が出されているか否かを前記ステップＳ１６と同様に判断する（ステップＳ９７）。
【０１４８】
ここで、移動量算出部２２が加減速要求監視部１０から緊急停止要求が出されていると判断した場合には、前記ステップＳ２２〜Ｓ３８の緊急停止プロセスが実施され、加減速要求監視部１０から緊急停止要求が出されていないと判断した場合には、移動量算出部２２は、次に、加減速要求監視部１０から速度変更要求が出されているか否かを前記ステップＳ１８と同様に判断する（ステップＳ９８）。移動量算出部２２が加減速要求監視部１０から速度変更要求が出されていると判断した場合には、前記ステップＳ８６以降の速度変更プロセスが再度実施される。一方、移動量算出部２２が加減速要求監視部１０から速度変更要求が出されていないと判断した場合には、前記ステップＳ８９以降のプロセスが再度行われる。
【０１４９】
ところで、移動量算出部２２が上記ステップＳ１８の判断において加減速要求監視部１０から速度変更要求が出されていないと判断した場合には、次に、移動量算出部２２は、設定時刻Ｔに設定単位時間ΔＴを加算して設定時刻Ｔを更新する（ステップＳ２０）。その後、前記ステップＳ１０以降のプロセスが再度行われる。
【０１５０】
以上のようにして、本実施形態の数値制御装置２による数値制御プロセスが実施される。
【０１５１】
以上説明したように、本実施形態では、移送装置１０２，１０６，１０８，１１０に移動対象物の速度変化を伴うイレギュラーな動作（緊急停止、加速を伴う再始動及び移動中の移動対象物の加減速）を実施させる際、各移動軸方向に共通の設定単位時間の長さが特別指令入力装置１２２への特別指令の入力直前の状態における長さからその特別指令が指示する速度変化に応じた長さに変化させられるとともに、加工パスから算出されたその変化後の設定単位時間当たりの各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの対応する移動軸方向への移動量に応じて各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａが移送される。このため、加工パスから算出された前記変化後の設定単位時間当たりの各移動軸方向への支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの移動量は、加工パスによって規定される各移動軸間の相対的な位置関係が維持された移動量となり、その移動量に応じた各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの移送は、加工パスによって規定される各移動軸間の相対的な位置関係が維持された状態での移送となる。その結果、移送装置１０２，１０６，１０８，１１０にワーク１００の加工時における移動対象物の通常の移送とは別にその移動対象物のイレギュラーな速度変化を伴う動作（緊急停止、再始動からの加速、移動中の移動対象物の加減速）を実行させる場合に、移動対象物が加工パスからずれるのを防ぐことができる。
【０１５２】
また、本実施形態では、前記補間後加減速によって生じる誤差を抹消するための演算を別途行う上記特許文献１の技術や前記補間前加減速演算を行う上記特許文献２の技術のように複雑な処理を特別指令入力装置１２２に特別指令が入力された際に行わなくても、各移動軸方向に共通の設定単位時間の長さを変化させるという単純な処理で移動対象物が加工パスからずれるのを防ぎつつその移動対象物のイレギュラーな速度変化を伴う動作を実施することができるため、特別指令入力装置１２２に特別指令が入力されることによって移動対象物の速度変化を伴う動作が指示されてから移送装置１０２，１０６，１０８，１１０が実際にその移動対象物の動作を実行するまでの応答性を向上することができる。具体的には、停止指令入力装置に緊急停止指令が入力されてから移送装置１０２，１０６，１０８，１１０が実際に移動対象物の移動を緊急停止させるまでの応答性を向上することができる。また、再始動指令入力装置１２６に再始動指令が入力されてから移送装置１０２，１０６，１０８，１１０が実際に移動対象物の移動を再開させるまでの応答性を向上することができる。また、オーバーライド装置１２８に速度変更指令が入力されてから移送装置１０２，１０６，１０８，１１０が実際に移動対象物の移動を加速又は減速させるまでの応答性を向上することができる。
【０１５３】
また、本実施形態では、移送装置１０２，１０６，１０８，１１０に移動対象物の速度変化を伴うイレギュラーな動作を実施させる場合に、駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂの駆動の基準となる基準時刻及び基準単位時間とは異なる設定時刻及び設定単位時間が設定されてその設定単位時間当たりの各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの対応する移動軸方向への移動量が加工パスから算出されることにより、各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａを基準単位時間当たりに移動させるべき移動量が算出される。すなわち、本実施形態では、駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂの駆動の基準となる基準時刻及び基準単位時間に影響を与えずに、移動対象物の速度変化を伴うイレギュラーな動作を実施するための各支持体１０２ｂ，１０６ａ，１０８ａ，１１０ａの基準単位時間当たりの移動量が算出される。このため、各駆動装置１０２ｃ，１０６ｂ，１０８ｂ，１１０ｂの通常の駆動に影響を与えることなく、移動対象物のイレギュラーな速度変化を伴う動作を実施することができる。
【０１５４】
なお、今回開示された実施形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施形態の説明ではなく特許請求の範囲によって示され、さらに特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれる。
【０１５５】
例えば、本発明による数値制御装置は、上記実施形態で示したような工作機械以外の工作機械に適用してもよい。
【０１５６】
また、移動指令パス導出部は、必ずしも補間演算部や加減速フィルタを備えてなくてもよい。すなわち、移動指令パス導出部が加工指令プログラムの加工パスから補間演算を行うことなく導出した各移動軸毎の移動指令パスに基づいて、移動量算出部が設定単位時間当たりの各支持体の対応する移動軸方向への移動量を算出してもよい。
【０１５７】
また、本発明の数値制御装置による移送装置の制御は、必ずしも、移動対象物の緊急停止時の減速、再始動時の加速及びオーバーライド装置による加減速の全てに適用されなくてもよい。例えば、移動対象物の緊急停止時の減速にのみ本発明の数値制御装置による移送装置の制御が適用されてもよく、移動対象物の再始動時の加速にのみ本発明の数値制御装置による移送装置の制御が適用されてもよく、オーバーライド装置による移動対象物の加減速にのみ本発明の数値制御装置による移送装置の制御が適用されてもよい。また、移動対象物の緊急停止時の減速、再始動時の加速及びオーバーライド装置による加減速のうちいずれか２つに対して本発明の数値制御装置による移送装置の制御が適用されてもよい。これらの場合には、停止信号入力装置、再始動信号入力装置及びオーバーライド装置のうち本発明の数値制御装置による制御が適用される移動対象物の速度変化を伴う動作を指示するための装置が、本発明の特別指令入力装置に含まれる。
【符号の説明】
【０１５８】
２  数値制御装置
４  記憶部
１２  演算部
１４  駆動制御部
２０  移動指令パス導出部
２２  移動量算出部
１０２  ワーク移送装置（移送装置）
１０２ｂ  ワーク支持体（支持体）
１０２ｃ  ワーク駆動装置（駆動装置）
１０５  工具
１０６  鉛直移送装置（移送装置）
１０６ａ  鉛直支持体（支持体）
１０６ｂ  鉛直駆動装置（駆動装置）
１０８  工具第１水平移送装置（移送装置）
１０８ａ  第１水平支持体（支持体）
１０８ｂ  第１水平駆動装置（駆動装置）
１１０  工具第２水平移送装置（移送装置）
１１０ａ  第２水平支持体（支持体）
１１０ｂ  第２水平駆動装置（駆動装置）
１２２  特別指令入力装置
１２４  停止指令入力装置
１２６  再始動指令入力装置
１２８  オーバーライド装置（速度変更指令入力装置）
Ｗ  ワーク
【図１】
0005331068.tif 000002
【図２】
0005331068.tif 000003
【図３】
0005331068.tif 000004
【図４】
0005331068.tif 000005
【図５】
0005331068.tif 000006
【図６】
0005331068.tif 000007
【図７】
0005331068.tif 000008
【図８】
0005331068.tif 000009
【図９】
0005331068.tif 000010
【図１０】
0005331068.tif 000011
【図１１】
0005331068.tif 000012
【図１２】
0005331068.tif 000013
【図１３】
0005331068.tif 000014
【図１４】
0005331068.tif 000015
【図１５】
0005331068.tif 000016
【図１６】
0005331068.tif 000017
【図１７】
0005331068.tif 000018
【図１８】
0005331068.tif 000019
【図１９】
0005331068.tif 000020
【図２０】
0005331068.tif 000021
【図２１】
0005331068.tif 000022