(57)【要約】【課題】入力部に対する操作の停止に応じてサーボモータを短時間で停止できる数値制御装置を提供する。【解決手段】数値制御装置のＣＰＵはハンドルに対する回転量の、所定周期毎の総量である回転総量を取得する（Ｓ６７）。ＣＰＵは第ｎ周期（ｎは整数）の間に取得した回転総量の絶対値が所定閾値よりも大きいか判定する（Ｓ６９）。ＣＰＵは回転総量が所定閾値よりも大きいと判定した時（Ｓ６９：ＹＥＳ）、回転総量に基づいて目標位置を特定する（Ｓ７１）。Ａ軸駆動制御部はＡ軸モータを目標位置迄回転する為のパルス信号を、第（ｎ＋１）周期の間に出力する。ＣＰＵは回転総量が所定閾値以下と判定した時、Ａ軸駆動制御部はＡ軸モータの回転を停止する為の停止信号を第（ｎ＋１）周期の開始時に出力する（Ｓ７５）。【選択図】図７
2018005440.tif 000002
【特許請求の範囲】
【請求項１】
第一入力部に対する操作量の、所定周期毎の総量である操作総量を取得する第一取得手段と、
前記第一取得手段によって第ｎ周期（ｎは整数）の間に取得した前記操作総量が、所定閾値よりも大きいか判定する判定手段と、
前記判定手段によって前記操作総量が前記所定閾値よりも大きいと判定した時、前記操作総量に基づいて目標位置を特定する第一特定手段と、
ステージを移動する為のサーボモータを、前記第一特定手段によって特定した前記目標位置迄回転する為の第一駆動信号を、第（ｎ＋１）周期の間に出力する第一出力手段と、
前記判定手段によって前記操作量が前記所定閾値以下と判定した時、前記サーボモータの回転を停止する為の停止信号を、第（ｎ＋１）周期の開始時に出力する第二出力手段と
を備えたことを特徴とする数値制御装置。
【請求項２】
前記第一特定手段は、
第二入力部を介して設定する倍率と前記操作総量とを乗算した値に基づいて前記目標位置を特定し、
前記第二出力手段によって前記停止信号を出力することに応じて停止した前記サーボモータの停止位置を取得する第二取得手段と、
前記倍率に対応し且つ等間隔に配列する複数の単位位置のうち、前記第二取得手段によって取得した前記停止位置に近接する近接単位位置を特定する第二特定手段と、
前記第二取得手段によって取得した前記停止位置から、前記第二特定手段によって特定した前記近接単位位置迄前記サーボモータを回転する為の第二駆動信号を、前記第二出力手段によって前記停止信号を出力した後に出力する第三出力手段と
を備えたことを特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記近接単位位置は、
前記停止信号に応じて停止した前記サーボモータの位置に対し、停止前の回転方向と同一方向に前記サーボモータが回転した時に到達する位置であることを特徴とする請求項２に記載の数値制御装置。
【請求項４】
前記近接単位位置は、
前記停止信号に応じて停止した前記サーボモータの位置に対し、停止前の回転方向と逆方向に前記サーボモータが回転した時に到達する位置であることを特徴とする請求項２に記載の数値制御装置。
【請求項５】
前記第一入力部は、回転操作可能なハンドルであり、
前記操作量は、前記ハンドルの回転量であることを特徴とする請求項１から４の何れかに記載の数値制御装置。
【請求項６】
前記所定閾値は０であることを特徴とする請求項１から５の何れかに記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は数値制御装置に関する。
【背景技術】
【０００２】
特許文献１は、ステージを駆動するサーボモータを備えた工作機械と数値制御装置を開示する。数値制御装置は、サーボモータを駆動する駆動制御部と、駆動制御部を制御する制御部を備える。制御部は、ステージを最終目標位置迄移動する為の複数の位置指令に対応する複数のポイント信号を、駆動制御部に順次出力する。駆動制御部は、各ポイント信号に応じてサーボモータを順次駆動する。ステージは、複数のポイント信号に応じたサーボモータの駆動が全て完了した時、最終目標位置に到達する。
【０００３】
ハンドルを備える手動パルス発生器を用いて工作機械を制御する技術が周知である。工作機械は、ハンドルの回転量を所定周期毎に蓄積する。工作機械は、蓄積した回転量に応じて目標位置を所定周期毎に更新する。制御部は、更新した目標位置迄ステージを移動する為のポイント信号を、所定周期で駆動制御部に出力する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１０６９３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
使用者は、ステージの移動を緊急停止する為にハンドルの回転を停止する時がある。該時、制御部は、ハンドルの回転停止に応じ、ハンドルの回転量０に応じたポイント信号を駆動制御部に出力する。しかし、ハンドルの回転を停止してから、制御部がハンドルの回転停止を検出する迄に、所定周期分の遅延が生じる時がある。又、駆動制御部は、制御部が出力したポイント信号を受けてからサーボモータの制御を開始する迄に、時間を要する時がある。故に、ハンドルの回転が停止してからサーボモータが回転停止する迄に、大きな遅延が生じる時がある。
【０００６】
本発明の目的は、入力部に対する操作の停止に応じてサーボモータを短時間で停止できる数値制御装置を提供することである。
【課題を解決するための手段】
【０００７】
本発明に係る数値制御装置は、第一入力部に対する操作量の、所定周期毎の総量である操作総量を取得する第一取得手段と、前記第一取得手段によって第ｎ周期（ｎは整数）の間に取得した前記操作総量が、所定閾値よりも大きいか判定する判定手段と、前記判定手段によって前記操作総量が前記所定閾値よりも大きいと判定した時、前記操作総量に基づいて目標位置を特定する第一特定手段と、ステージを移動する為のサーボモータを、前記第一特定手段によって特定した前記目標位置迄回転する為の第一駆動信号を、第（ｎ＋１）周期の間に出力する第一出力手段と、前記判定手段によって前記操作量が前記所定閾値以下と判定した時、前記サーボモータの回転を停止する為の停止信号を、第（ｎ＋１）周期の開始時に出力する第二出力手段とを備えている。
【０００８】
上記の数値制御装置は、第ｎ周期の間における第一入力部に対する操作総量が所定閾値よりも大きい時、操作総量に応じた目標位置を特定する。数値制御装置は、目標位置迄サーボモータを回転する為に、第一駆動信号を第（ｎ＋１）周期の間出力する。該時、サーボモータは、第（ｎ＋２）周期の開始時点から、第一駆動信号に応じた回転を開始する。一方、数値制御装置は、操作総量が所定閾値以下の時、停止信号を、第（ｎ＋１）周期の開始時に出力する。該時、サーボモータは、第（ｎ＋１）周期の開始時点で回転を停止する。故に、数値制御装置は、回転総量が所定閾値以下と判定した時に停止信号を即座に出力できる。従って、数値制御装置は、操作総量が所定閾値以下の時、サーボモータを短時間で停止できる。
【０００９】
本発明において、前記第一特定手段は、第二入力部を介して設定する倍率と前記操作総量とを乗算した値に基づいて前記目標位置を特定し、前記第二出力手段によって前記停止信号を出力することに応じて停止した前記サーボモータの停止位置を取得する第二取得手段と、前記倍率に対応し且つ等間隔に配列する複数の単位位置のうち、前記第二取得手段によって取得した前記停止位置に近接する近接単位位置を特定する第二特定手段と、前記第二取得手段によって取得した前記停止位置から、前記第二特定手段によって特定した前記近接単位位置迄前記サーボモータを回転する為の第二駆動信号を、前記第二出力手段によって前記停止信号を出力した後に出力する第三出力手段とを備えてもよい。該時、数値制御装置は、停止信号に応じてサーボモータが停止した後、近接単位位置迄サーボモータを回転できる。
【００１０】
本発明において、前記近接単位位置は、前記停止信号に応じて停止した前記サーボモータの位置に対し、停止前の回転方向と同一方向に前記サーボモータが回転した時に到達する位置であってもよい。該時、サーボモータの回転方向は、停止前と停止後とで一致する。故に、使用者は、停止後に手動パルス発生器を用いた段取り作業などを効率的に再開できる。
【００１１】
本発明において、前記近接単位位置は、前記停止信号に応じて停止した前記サーボモータの位置に対し、停止前の回転方向と逆方向に前記サーボモータが回転した時に到達する位置であってもよい。該時、サーボモータ回転方向は、停止前と停止後とで相違する。故に、数値制御装置は、回転再開後のサーボモータの位置が、停止前のサーボモータの位置よりも先に進むことを抑制できる。
【００１２】
本発明において、前記第一入力部は、回転操作可能なハンドルであり、前記操作量は、前記ハンドルの回転量であってもよい。該時、数値制御装置は、ハンドルの回転操作に応じてサーボモータの回転を制御できる。又、数値制御装置は、所定周期の間のハンドルの回転量が所定閾値以下の時、サーボモータの回転を停止できる。
【００１３】
本発明において、前記所定閾値は０であってもよい。該時、数値制御装置は、所定周期の間で使用者が第一入力部を操作しない時、サーボモータの回転を停止できる。
【図面の簡単な説明】
【００１４】
【図１】工作機械１の斜視図。
【図２】被削材支持装置８の斜視図。
【図３】数値制御装置４０と工作機械１の電気的構成を示すブロック図。
【図４】Ｘ軸モータ６１の制御時期を示すタイミングチャート。
【図５】Ａ軸モータ６５の制御時期を示すタイミングチャート。
【図６】回転量取得処理のフローチャート。
【図７】メイン処理のフローチャート。
【図８】Ａ軸モータ６５の制御時期を示すタイミングチャート。
【発明を実施するための形態】
【００１５】
本発明の実施形態を図面を参照し説明する。以下説明は、図中に矢印で示す左右、前後、上下を使用する。工作機械１の左右方向、前後方向、上下方向は夫々、工作機械１のＸ軸方向、Ｙ軸方向、Ｚ軸方向である。右方向、前方向、上方向は夫々、正方向であり、左方向、後方向、下方向は夫々、負方向である。図１に示す工作機械１は、被削材（図示略）の切削加工と旋削加工ができる複合機である。
【００１６】
＜工作機械１の構造＞
図１を参照し、工作機械１の構造を説明する。工作機械１は基台２、Ｙ軸移動機構（図示略）、Ｘ軸移動機構（図示略）、Ｚ軸移動機構（図示略）、移動体１５、立柱５、主軸ヘッド６、主軸（図示略）、被削材支持装置８、工具交換装置９、制御箱（図示略）、数値制御装置４０（図３参照）等を備える。基台２は架台１１、主軸基台１２、右側基台１３、左側基台１４等を備える。架台１１は前後方向に長い略直方体状の構造体である。主軸基台１２は前後方向に長い略直方体状に形成し、架台１１上面後方に設ける。右側基台１３は架台１１上面右前方に設ける。左側基台１４は架台１１上面左前方に設ける。右側基台１３と左側基台１４は夫々、上面に被削材支持装置８を支持する。
【００１７】
Ｙ軸移動機構は主軸基台１２上面に設け、Ｙ軸モータ６２（図３参照）等を備える。Ｙ軸移動機構はＹ軸モータ６２の駆動により、略平板状の移動体１５をＹ軸方向に移動する。Ｘ軸移動機構は移動体１５上面に設け、Ｘ軸モータ６１（図３参照）等を備える。Ｘ軸移動機構はＸ軸モータ６１の駆動により、立柱５をＸ軸方向に移動する。立柱５は、Ｙ軸移動機構、移動体１５、Ｘ軸移動機構により、基台２上をＸ軸方向とＹ軸方向に移動可能である。Ｚ軸移動機構は立柱５前面に設け、Ｚ軸モータ６３（図３参照）等を備える。Ｚ軸移動機構はＺ軸モータ６３の駆動により、主軸ヘッド６をＺ軸方向に移動する。主軸（図示略）は主軸ヘッド６内部に設け、主軸下部に工具装着穴（図示略）を備える。工具装着穴は工具を装着する。故に、Ｘ軸移動機構、Ｙ軸移動機構、Ｚ軸移動機構は夫々、主軸に装着した工具に対して被削材を、Ｘ軸方向、Ｙ軸方向、Ｚ軸方向に移動できる。主軸は主軸ヘッド６上部に設けた主軸モータ６６（図３参照）で回転する。
【００１８】
工具交換装置９は立柱５と主軸ヘッド６周囲を取り巻く略円環状である。工具交換装置９は主軸ヘッド６を昇降する間に、主軸に現在装着する工具を交換する。制御箱は工作機械１を覆うカバー（図示略）の外壁に取り付ける。数値制御装置４０（図３参照）は制御箱の内側に格納する。数値制御装置４０はＮＣプログラムに基づき工作機械１の動作を制御する。工作機械１を覆うカバーは外壁面に操作盤１０（図３参照）を備える。操作盤１０は操作部１８と表示部１９を備える。操作部１８は数値制御装置４０の各種設定を行う。表示部１９は各種画面、メッセージ、アラーム等を表示する。
【００１９】
被削材支持装置８は右側基台１３と左側基台１４の上面に固定する。図２に示すように、被削材支持装置８はＡ軸台２０、左側支持台２７、右側駆動機構部２８、回転台２９、Ｃ軸駆動部５０等を備える。Ａ軸台２０は台部２１、右連結部２２、左連結部２３を備える。台部２１は、Ａ軸台２０の傾斜角度が０度で上面が水平面となる平面視略長方形状の板状部である。右連結部２２は台部２１の右端部から右斜め上方に延び且つ右側駆動機構部２８と回動可能に連結する。左連結部２３は台部２１の左端部から左斜め上方に延び且つ後述する左側支持台２７と回動可能に連結する。左連結部２３はその左端面から左方に突出する略円柱状の支軸３１を有する。左側支持台２７は支軸３１を回転可能に支持する。左側支持台２７の底部は、左側基台１４（図１参照）の上面に固定する。
【００２０】
右側駆動機構部２８はＡ軸台２０右側に位置する。右側駆動機構部２８は内側に、右側支持台（図示略）、Ａ軸モータ６５（図３参照）等を格納する。右連結部２２はその右端面から右方に突出する略円柱状の支軸（図示略）を有する。右側支持台は右連結部２２の支軸を回転可能に支持する。右連結部２２の支軸とＡ軸モータ６５の出力軸は、互いに連結する。Ａ軸モータ６５の出力軸が回転すると、Ａ軸台２０はＸ軸方向に対して平行な支軸３１を中心に、右連結部２２と一体して回転する。Ａ軸台２０を回転する軸はＡ軸である。右側駆動機構部２８は工具に対して被削材を、Ａ軸を中心として回転できる。Ａ軸台２０はＡ軸回りに任意角度で傾くことで、主軸に装着する工具に対して被削材を任意方向に傾けることができる。Ａ軸を左側から見た時の時計回りの回転方向を正方向と称し、反時計回りの回転方向を負方向と称す。右側支持台の底部は、右側基台１３（図１参照）の上面に固定する。
【００２１】
回転台２９は台部２１上面略中央に回転可能に設ける。回転台２９は円盤状に形成し、Ａ軸台２０上面略中央に設ける。Ｃ軸駆動部５０は台部２１下面に設け且つ台部２１の略中央に設けた穴（図示略）を介して回転台２９と連結する。Ｃ軸駆動部５０は内部に回転軸（図示略）、Ｃ軸モータ６４（図３参照）等を備える。回転軸は回転台２９に対して直交する方向に延びる。回転軸は回転台２９に固定する。Ｃ軸モータ６４は回転軸に固定する。故に、Ｃ軸モータ６４が回転軸を回転すると、回転台２９はＺ軸方向に平行な軸を中心に回転可能である。回転台２９を回転する軸はＣ軸である。回転台２９上面の冶具２００は、被削材を固定する。Ｃ軸駆動部５０は工具に対して被削材を、Ｃ軸を中心として回転できる。Ｃ軸を上側から見た時の時計回りの回転方向を正方向と称し、反時計回りの回転方向を負方向と称す。
【００２２】
＜手動パルス発生器１６の構造＞
図１に示すように、手動パルス発生器１６は数値制御装置４０（図３参照）に接続する。手動パルス発生器１６は倍率スイッチ１６Ａ、軸スイッチ１６Ｂ、ハンドル１６Ｃを備える。倍率スイッチ１６Ａと軸スイッチ１６Ｂは夫々、ダイヤル式のスイッチである。倍率スイッチ１６Ａは倍率として、×１、×１０、×１００の何れかを選択できる。×１、×１０、×１００は夫々、１倍、１０倍、１００倍の倍率に対応する。以下、倍率スイッチ１６Ａにより選択した倍率を、選択倍率と称す。
【００２３】
軸スイッチ１６Ｂは軸として、ＯＦＦ、Ｘ、Ｙ、Ｚ、４の何れかを選択できる。ＯＦＦは、何れの軸も選択しないことに対応する。言い換えれば、ＯＦＦは後述するハンドル１６Ｃの操作が無効であることに対応する。Ｘ、Ｙ、Ｚは夫々、Ｘ軸、Ｙ軸、Ｚ軸に対応する。４は、表示部１９（図３参照）がＡ軸を示す情報（以下、Ａ軸情報と称す。）を表示する時、Ａ軸に対応し、Ｃ軸を示す情報（以下、Ｃ軸情報と称す。）を表示する時、Ｃ軸に対応する。以下、軸スイッチ１６Ｂにより選択した軸を選択軸と称す。表示部１９がＡ軸情報を表示し且つ軸スイッチ１６Ｂが４を選択した時、選択軸はＡ軸である。表示部１９がＣ軸情報を表示し且つ軸スイッチ１６Ｂが４を選択した時、選択軸はＣ軸である。
【００２４】
ハンドル１６Ｃは所定角度分ずつ左右両側に回転できるダイヤル式のハンドルである。以下、ハンドル１６Ｃの正面視で時計回りの回転方向を正方向と称し、反時計回りの回転方向を負方向と称す。手動パルス発生器１６はハンドル１６Ｃが所定角度分回転する毎に、数値制御装置４０に回転量を出力できる。回転量はハンドル１６Ｃが正方向に所定角度回転した時、正の値＋１となり、ハンドル１６Ｃが負方向に所定角度回転した時、負の値−１となる。
【００２５】
工作機械１は使用者が手動パルス発生器１６を使用した時、工具に対して被削材を移動する。例えば被削材は、選択軸がＸ軸、Ｙ軸、Ｚ軸の何れか且つハンドル１６Ｃが正方向に回転した時、選択軸に沿って正方向に移動する。被削材の移動距離は、回転量の総量をＮ（Ｎは整数）と表記する時、
Ｎ×単位長さ×選択倍率・・・（第一式）
である。単位長さは０．００１ｍｍである。以下、第一式により算出する距離を換算距離と称す。例えば換算距離は、Ｎが＋１、選択倍率が×１の時、＋０．００１ｍｍである。つまり、被削材は使用者が手動パルス発生器１６のハンドル１６Ｃを正方向に所定角度×１分回転した時、選択軸に沿って正方向に０．００１ｍｍ移動する。例えば換算距離は、Ｎが−２、選択倍率が×１００の時、−０．２ｍｍである。つまり、被削材は使用者が手動パルス発生器１６のハンドル１６Ｃを負方向に所定角度×２分回転した時、選択軸に沿って負方向に０．２ｍｍ移動する。
【００２６】
例えば被削材は、選択軸がＡ軸且つハンドル１６Ｃが正方向に回転した時、Ａ軸を中心として正方向に回転する。該時、被削材の回転角度は、回転量の総量がＮの時、
Ｎ×単位角度×選択倍率・・・（第二式）
である。単位角度は０．００１度である。以下、第二式により算出する角度を換算角度と称す。例えば換算角度は、Ｎが＋１、選択倍率が×１の時、＋０．００１度である。つまり、被削材は使用者が手動パルス発生器１６のハンドル１６Ｃを正方向に所定角度×１分回転した時、Ａ軸を中心として正方向に０．００１度回転する。例えば換算角度は、Ｎが−２、選択倍率が×１０の時、−０．０２度である。つまり、被削材は使用者が手動パルス発生器１６のハンドル１６Ｃを負方向に所定角度×２分回転した時、Ａ軸を中心として負方向に０．０２度回転する。
【００２７】
例えば被削材は、選択軸がＣ軸且つハンドル１６Ｃが正方向又は負方向に回転した時、Ｃ軸を中心として正方向又は負方向に換算角度分回転する。換算角度の算出式は第二式であり、選択軸がＡ軸の時と同一である。
【００２８】
＜電気的構成＞
図３を参照して数値制御装置４０と工作機械１の電気的構成を説明する。数値制御装置４０はＣＰＵ４１、ＲＯＭ４２、ＲＡＭ４３、フラッシュメモリ４４、入出力部４５、通信インタフェース（Ｉ／Ｆ）４６、駆動回路５１〜５４、５６、Ａ軸駆動制御部５５を備える。工作機械１はＸ軸モータ６１、Ｙ軸モータ６２、Ｚ軸モータ６３、Ｃ軸モータ６４、Ａ軸モータ６５、主軸モータ６６、エンコーダ７１〜７６を備える。
【００２９】
ＣＰＵ４１は工作機械１の動作を制御する。ＲＯＭ４２は後述する回転量取得処理（図６参照）、メイン処理（図７参照）を実行する為の制御プログラム等を記憶する。ＲＡＭ４３は各種処理実行中に発生する各種データを記憶する。ＲＡＭ４３はＸ軸方向位置、Ｙ軸方向位置、Ｚ軸方向位置を記憶する。Ｘ軸方向位置、Ｙ軸方向位置、Ｚ軸方向位置は夫々、所定の原点位置を基準とした時の被削材のＸ軸方向、Ｙ軸方向、Ｚ軸方向の位置を示す。ＲＡＭ４３は、Ａ軸方向角度、Ｃ軸方向角度を記憶する。Ａ軸方向角度、Ｃ軸方向角度は夫々、所定の原点角度を基準とした時の被削材のＡ軸、Ｃ軸を回転軸とした角度を示す。フラッシュメモリ４４はＮＣプログラム等を記憶する。入出力部４５は駆動回路５１〜５４、５６、エンコーダ７１〜７６、操作部１８、表示部１９、手動パルス発生器１６との間で各種信号の入出力を行う。通信Ｉ／Ｆ４６はＡ軸駆動制御部５５との間で各種信号の入出力を行う。
【００３０】
駆動回路５１はＣＰＵ４１が出力するパルス信号（後述）を、Ｘ軸モータ６１に出力する。エンコーダ７１はＸ軸モータ６１の回転位置を検出し、該検出信号を入出力部４５に出力する。駆動回路５２はＣＰＵ４１が出力するパルス信号を、Ｙ軸モータ６２に出力する。エンコーダ７２はＹ軸モータ６２の回転位置を検出し、該検出信号を入出力部４５に出力する。駆動回路５３はＣＰＵ４１が出力するパルス信号を、Ｚ軸モータ６３に出力する。エンコーダ７３はＺ軸モータ６３の回転位置を検出し、該検出信号を入出力部４５に出力する。駆動回路５４はＣＰＵ４１が出力するパルス信号を、Ｃ軸モータ６４に出力する。エンコーダ７４はＣ軸モータ６４の回転位置を検出し、該検出信号を入出力部４５に出力する。駆動回路５６はＣＰＵ４１が出力するパルス信号を、主軸モータ６６に出力する。エンコーダ７６は主軸モータ６６の回転位置を検出し、該検出信号を入出力部４５に出力する。Ａ軸駆動制御部５５はＣＰＵ４１が出力するパルス信号を、Ａ軸モータ６５に出力する。エンコーダ７５はＡ軸モータ６５の回転位置を検出し、該検出信号を入出力部４５に出力する。
【００３１】
駆動回路５１〜５４とＡ軸駆動制御部５５は、モータ６１〜６５に対するパルス信号の出力に要する時間が互いに相違する。Ａ軸駆動制御部５５がパルス信号をＡ軸モータ６５に出力する為に必要な時間は、駆動回路５１〜５４がパルス信号をモータ６１〜６４に出力する為に必要な時間よりも長い。
【００３２】
モータ６１〜６６は何れもサーボモータである。エンコーダ７１〜７６は一般的な絶対値エンコーダであり、回転位置の絶対位置を検出して出力する位置センサである。
【００３３】
＜手動パルス発生器１６使用時の動作タイミング（モータ６１〜６４）＞
図４を参照し、使用者が手動パルス発生器１６を用いて工作機械１を制御する時のモータ６１〜６４の動作タイミングを説明する。駆動回路５１〜５４がパルス信号をモータ６１〜６４に出力する為に必要な時間を、ｔ（ｍｓ）とする。ＣＰＵ４１は手動パルス発生器１６の倍率スイッチ１６Ａの状態に基づき、選択倍率を取得する。ＣＰＵ４１は表示部１９の表示内容と手動パルス発生器１６の軸スイッチ１６Ｂの状態に基づき、選択軸を取得する。以下では、使用者が軸スイッチ１６ＢによりＸ軸を選択軸として選択した時を例示する。使用者は手動パルス発生器１６のハンドル１６Ｃを、時間０ｔから３２ｔ迄等速で正方向に回転し、時間３２ｔでハンドル１６Ｃの回転を停止する。
【００３４】
ＣＰＵ４１はハンドル１６Ｃが所定角度分回転する毎に、手動パルス発生器１６から回転量を取得する（Ｐ１１）。ＣＰＵ４１は周期ｔの間の回転量の総量（以下、回転総量と称す。）を繰り返し算出する。具体的には、ＣＰＵ４１は時間ｎ×ｔ（ｎは整数）から時間（ｎ＋１）×ｔ迄の周期ｔ（以下、第ｎ周期と称す。）の間に取得したハンドル１６Ｃの回転総量ｒを、第ｎ周期の終了時点で算出する。ＣＰＵ４１は算出した回転総量ｒ、選択倍率に基づき、第一式を適用して換算距離を算出する。
換算距離  ＝  回転総量ｒ×単位長さ（０．００１ｍｍ）×選択倍率
ＣＰＵ４１はＲＡＭ４３に記憶したＸ軸方向位置に換算距離を加算し、Ｘ軸方向位置を更新する。ＣＰＵ４１は、原点位置から更新後のＸ軸方向位置迄被削材が移動した時のＸ軸モータ６１の回転位置を、Ｘ軸モータ６１の目標位置として特定する。
【００３５】
ＣＰＵ４１は特定した目標位置を示すパルス信号を、入出力部４５を介して駆動回路５１に出力する（Ｐ１２）。駆動回路５１はＸ軸モータ６１が目標位置迄回転する為のパルス信号を、Ｘ軸モータ６１に出力する（Ｐ１３）。前述のように、駆動回路５１がパルス信号をＸ軸モータ６１に出力する為に必要な時間は、ｔである。つまり、駆動回路５１は第ｎ周期の回転総量ｒに基づくパルス信号を、次の第（ｎ＋１）周期の間にＸ軸モータ６１に出力する。Ｘ軸モータ６１はパルス信号を全て入力した後、該パルス信号に応じた回転を開始する。Ｘ軸モータ６１はパルス信号に基づき、所定の回転速度ｖで目標位置迄回転する。
【００３６】
上記のように、Ｘ軸モータ６１は第ｎ周期の回転総量ｒに応じた回転を、第（ｎ＋１）周期の終了時点から開始する。故に、ＣＰＵ４１がパルス信号を駆動回路５１に出力してから、Ｘ軸モータ６１が該パルス信号に応じた回転を開始する迄に、周期ｔ分の遅延が生じる。このため例えば、ハンドル１６Ｃの回転開始直後の第０周期（時間０ｔ〜１ｔ）の回転総量ｒ（Ｐ１４）に応じてＸ軸モータ６１が開始を回転する時期は、時間２ｔとなる（Ｐ１５）。
【００３７】
ＣＰＵ４１はハンドル１６Ｃの回転が時間３２ｔで停止した時、第３２周期（時間３２ｔ〜３３ｔ）の間の回転総量として０を、第３２周期の終了時点で算出する。取得した回転総量０に基づき第一式を適用して算出する換算距離は、０である（Ｐ１６）。該時、ＲＡＭ４３に記憶したＸ軸方向位置に換算距離を加算しても、Ｘ軸方向位置は変化しない。故に、更新後のＸ軸方向位置に基づいて特定するＸ軸モータ６１の目標位置も変化しない。
【００３８】
駆動回路５１は該目標位置迄Ｘ軸モータ６１を回転する為のパルス信号を、第３３周期（時間３３ｔ〜３４ｔ）の間にＸ軸モータ６１に出力する。Ｘ軸モータ６１は入力したパルス信号に対応する目標位置が変化しない為、目標位置迄回転した時回転を停止する（Ｐ１７）。図４において、Ｘ軸モータ６１は時間３４ｔで回転を停止する。つまり、ハンドル１６Ｃの回転が停止した時間３２ｔから、Ｘ軸モータ６１が回転を停止する時間３４ｔ迄、時間２ｔ分遅延する。
【００３９】
尚、詳細説明は省略するが、ＣＰＵ４１は使用者が軸スイッチ１６ＢによりＹ軸、Ｚ軸を選択軸として選択した時、上記と同じ方法で換算距離を算出する。ＣＰＵ４１は算出した換算距離を、ＲＡＭ４３に記憶したＹ軸方向位置、Ｚ軸方向位置に夫々加算し、Ｙ軸方向位置、Ｚ軸方向位置を夫々更新する。ＣＰＵ４１は更新後のＹ軸方向位置、Ｚ軸方向位置迄被削材を移動した時のＹ軸モータ６２、Ｚ軸モータ６３の回転位置を、Ｙ軸モータ６２、Ｚ軸モータ６３の目標位置として夫々特定する。ＣＰＵ４１は特定した目標位置に基づき、パルス信号を駆動回路５２、５３に出力する。
【００４０】
ＣＰＵ４１は使用者が軸スイッチ１６ＢによりＣ軸を選択軸として選択した時、取得した回転総量ｒ、選択倍率に基づき、第二式を適用して換算角度を算出する。
換算角度  ＝  回転総量ｒ×単位角度（０．００１度）×選択倍率
ＣＰＵ４１はＲＡＭ４３に記憶したＣ軸方向角度に換算角度を加算し、Ｃ軸方向角度を更新する。ＣＰＵ４１は、原点角度から更新後のＣ軸方向角度迄被削材が回転した時のＣ軸モータ６４の回転位置を、Ｃ軸モータ６４の目標位置として特定する。ＣＰＵ４１は特定した目標位置に基づき、パルス信号を駆動回路５４に出力する。
【００４１】
＜手動パルス発生器１６使用時の動作タイミング（Ａ軸モータ６５）＞
図５を参照し、ＣＰＵ４１が駆動回路５１〜５４に対する制御と同じ方法でＡ軸駆動制御部５５を制御したと仮定し、Ａ軸モータ６５の動作タイミングを説明する。Ａ軸駆動制御部５５がパルス信号をＡ軸モータ６５に出力する為に必要な時間を、駆動回路５１〜５４にて必要な時間ｔ（図４参照）よりも長い８ｔとする。使用者は軸スイッチ１６ＢによりＡ軸を選択軸として選択する。図４と同様、使用者は手動パルス発生器１６のハンドル１６Ｃを、時間０ｔから３２ｔ迄等速で正方向に回転し、時間３２ｔでハンドル１６Ｃの回転を停止する。
【００４２】
ＣＰＵ４１はハンドル１６Ｃが所定角度分回転する毎に、手動パルス発生器１６から回転量を取得する（Ｐ２１）。ＣＰＵ４１は時間ｎ×８ｔから時間（ｎ＋１）×８ｔ迄の周期８ｔ（第ｎ周期）の間に取得したハンドル１６Ｃの回転総量８ｒを、第ｎ周期の終了時点で算出する。ＣＰＵ４１は算出した回転総量８ｒ、選択倍率に基づき、第二式を適用して換算角度を算出する。ＣＰＵ４１はＲＡＭ４３に記憶したＡ軸方向角度に換算角度を加算し、Ａ軸方向角度を更新する。ＣＰＵ４１は、原点角度から更新後のＡ軸方向角度迄被削材が回転した時のＡ軸モータ６５の回転位置を、Ａ軸モータ６５の目標位置として特定する。
【００４３】
ＣＰＵ４１は特定した目標位置に基づき、通信Ｉ／Ｆ４６を介してパルス信号をＡ軸駆動制御部５５に出力する（Ｐ２２）。Ａ軸駆動制御部５５はＡ軸モータ６５が目標位置迄回転する為のパルス信号を、Ａ軸モータ６５に出力する（Ｐ２３）。つまり、Ａ軸駆動制御部５５は第ｎ周期の回転総量８ｒに基づくパルス信号を、次の第（ｎ＋１）周期の間にＡ軸モータ６５に出力する。Ａ軸モータ６５はパルス信号を全て入力した後、パルス信号に応じた回転を開始する。故に、ＣＰＵ４１がパルス信号をＡ軸駆動制御部５５に出力してから、Ａ軸モータ６５が回転を開始する迄に、周期８ｔ分の遅延が生じる。このため例えば、ハンドル１６Ｃの回転開始直後の第０周期（時間０ｔ〜８ｔ）の回転総量８ｒ（Ｐ２４）に対応する回転をＡ軸モータ６５が開始する時期は、時間１６ｔとなる（Ｐ２５）。
【００４４】
ＣＰＵ４１はハンドル１６Ｃの回転が時間３２ｔで停止した時、第４周期（時間３２ｔ〜４０ｔ）の間の回転総量として０を、第４周期の終了時点で算出する。取得した回転総量０に基づき第二式を適用して算出する換算角度は、０である（Ｐ２６）。該時、ＲＡＭ４３に記憶したＡ軸方向角度に換算角度を加算しても、Ａ軸方向角度は変化しない。故に、更新後のＡ軸方向角度に基づいて特定するＡ軸モータ６５の目標位置も変化しない。
【００４５】
ＣＰＵ４１は該目標位置を示すパルス信号を、Ａ軸駆動制御部５５に出力する。Ａ軸駆動制御部５５は該目標位置迄Ａ軸モータ６５を回転する為のパルス信号を、第５周期（時間４０ｔ〜４８ｔ）の間にＡ軸モータ６５に出力する。Ａ軸モータ６５は入力したパルス信号に対応する目標位置が変化しない為、目標位置迄回転した時回転を停止する。図５において、Ｘ軸モータは時間４８ｔで回転を停止する（Ｐ２７）。つまり、ハンドル１６Ｃの回転が停止した時間３２ｔから、Ａ軸モータ６５が回転を停止する時間４８ｔ迄、時間１６ｔ分遅延する。このように、Ａ軸モータ６５の回転停止迄の遅延は、モータ６１〜６４の回転停止迄の時間２ｔ（図４参照）に比べて大きくなる。
【００４６】
ＣＰＵ４１は本実施形態において、上記の遅延を小さくする為、回転量取得処理（図６参照）、メイン処理（図７参照）を実行する。ＣＰＵ４１は数値制御装置４０の電源を投入するに応じ、ＲＯＭ４２に記憶したプログラムを実行する。これにより、ＣＰＵ４１は回転量取得処理、メイン処理を開始する。
【００４７】
＜回転量取得処理＞
図６を参照し回転量取得処理を説明する。ＣＰＵ４１は手動パルス発生器１６のハンドル１６Ｃが所定角度回転したか判定する（Ｓ５１）。ＣＰＵ４１は手動パルス発生器１６が回転量を出力していない時、ハンドル１６Ｃが所定角度回転していないと判定する（Ｓ５１：ＮＯ）。ＣＰＵ４１は処理をＳ５１に戻す。ＣＰＵ４１は手動パルス発生器１６が回転量を出力したと判定した時（Ｓ５１：ＹＥＳ）、処理をＳ５３に進める。ＣＰＵ４１は手動パルス発生器１６が出力した回転量を取得する（Ｓ５３）。ＣＰＵ４１は取得した回転量を、ＲＡＭ４３に記憶する。ＣＰＵ４１は処理をＳ５１に戻す。
【００４８】
図７を参照しメイン処理を説明する。ＣＰＵ４１は軸スイッチ１６Ｂにより選択した選択軸を取得する。ＣＰＵ４１は取得した選択軸がＯＦＦの時、手動パルス発生器１６による制御を行わない動作モード（以下、通常モードと称す。）と判定する（Ｓ６１：ＮＯ）。該時、ＣＰＵ４１は処理をＳ６１に戻す。ＣＰＵ４１は取得した選択軸がＯＦＦ以外の時、手動パルス発生器１６による制御を行う動作モード（以下、ハンドルモードと称す。）と判定する（Ｓ６１：ＹＥＳ）。該時、ＣＰＵ４１は処理をＳ６３に進める。ＣＰＵ４１は選択軸がＡ軸であるか判定する（Ｓ６３）。ＣＰＵ４１は選択軸がＡ軸以外と判定した時（Ｓ６３：ＮＯ）、図４を参照して説明した処理（Ｐ１１、Ｐ１２、Ｐ１４、Ｐ１６等）を実行する。ＣＰＵ４１は処理をＳ６１に戻す。尚、図４を参照して説明した処理は従来の処理と同様（回転総量に基づき、パルス信号を出力する）である為、図７に図示していない。ＣＰＵ４１は選択軸がＡ軸と判定した時（Ｓ６３：ＹＥＳ）、処理をＳ６５に進める。
【００４９】
ＣＰＵ４１は時間８ｔの周期が到来したか判定する（Ｓ６５）。ＣＰＵ４１は時間８ｔの周期が到来していないと判定した時（Ｓ６５：ＮＯ）、処理をＳ６１に戻す。ＣＰＵ４１は、時間８ｔの周期が到来したと判定した時（Ｓ６５：ＹＥＳ）、処理をＳ６７に進める。ＣＰ４１はＲＡＭ４３に記憶した回転量の総量を、回転総量として算出する（Ｓ６７）。ＣＰＵ４１は回転総量の算出後、ＲＡＭ４３に記憶した回転量を削除する。これによりＣＰＵ４１は、第ｎ周期の間に取得したハンドル１６Ｃの回転総量８ｒを、第ｎ周期の終了時点で算出する。
【００５０】
ＣＰＵ４１は第ｎ周期でハンドル１６Ｃが回転したかを、算出した回転総量に基づいて判定する（Ｓ６９）。ＣＰＵ４１は算出した回転総量の絶対値が０より大きい時、第ｎ周期でハンドル１６Ｃが回転したと判定する（Ｓ６９：ＹＥＳ）。該時、ＣＰＵ４１は処理をＳ７１に進める。ＣＰＵ４１は倍率スイッチ１６Ａにより選択した選択倍率を取得する。ＣＰＵ４１は算出した回転総量、取得した選択倍率、単位角度に基づき、第二式を適用して換算角度を特定する。ＣＰＵ４１はＲＡＭ４３に記憶したＡ軸方向角度に換算角度を加算し、Ａ軸方向角度を更新する。ＣＰＵ４１は、原点角度から更新後のＡ軸方向角度迄被削材が回転した時のＡ軸モータ６５の回転位置を、Ａ軸モータ６５の目標位置として特定する（Ｓ７１）。ＣＰＵ４１は特定した目標位置に応じたパルス信号を、Ａ軸駆動制御部５５に出力する（Ｓ７３）。ＣＰＵ４１は処理をＳ６１に戻す。
【００５１】
図８に示すように、ＣＰＵ４１は上記処理を周期８ｔで繰り返した時、ハンドル１６Ｃが所定角度分回転する毎に、手動パルス発生器１６から回転量を取得する（Ｐ３１、図６参照）。ＣＰＵ４１は時間ｎ×８ｔから（ｎ＋１）×８ｔ迄の周期８ｔ（第ｎ周期）の間に取得したハンドル１６Ｃの回転総量８ｒを、第ｎ周期の終了時点で算出する（Ｓ６７（図７参照））。ＣＰＵ４１は算出した回転総量８ｒ、選択軸、選択倍率に基づき、第二式を適用して換算角度を算出する。ＣＰＵ４１は算出した換算角度に基づき、Ａ軸モータ６５の目標位置を特定する（Ｓ７１（図７参照））。ＣＰＵ４１は特定した目標位置に応じたパルス信号を、通信Ｉ／Ｆ４６を介してＡ軸駆動制御部５５に出力する（Ｐ３２、Ｓ７３（図７参照））。
【００５２】
Ａ軸駆動制御部５５はＡ軸モータ６５が目標位置迄回転する為パルス信号を、Ａ軸モータ６５に出力する（Ｐ３３）。図５の時と同様、Ａ軸駆動制御部５５は第ｎ周期の回転総量８ｒに基づくパルス信号を、次の第（ｎ＋１）周期の間にＡ軸モータ６５に出力する。故に、ＣＰＵ４１がパルス信号をＡ軸駆動制御部５５に出力してから（Ｐ３４）、Ａ軸モータ６５が該パルス信号に応じた回転を開始する（Ｐ３５）迄に、周期８ｔ分の遅延が生じる。
【００５３】
図７に示すように、ＣＰＵ４１は算出した回転総量の絶対値が０の時、第ｎ周期でハンドル１６Ｃが所定角度以上回転していないと判定する（Ｓ６９：ＮＯ）。該時、ＣＰＵ４１は処理をＳ７５に進める。ＣＰＵ４１はＡ軸モータ６５の回転を停止する停止信号を、Ａ軸駆動制御部５５に出力する（Ｓ７５）。
【００５４】
図８に示すように、ＣＰＵ４１は時間ｔ４０で停止信号をＡ軸駆動制御部５５に出力した時（Ｐ３６）、Ａ軸駆動制御部５５は停止信号を、時間ｔ４０でＡ軸モータ６５に出力する（Ｐ３７）。つまり、第４周期（時間ｔ３２〜ｔ４０）の終了時、言い換えれば、次の第５周期（時間ｔ４０〜ｔ４８）の開始時にＣＰＵ４１が出力した停止信号（Ｐ３６）は、略同時期にＡ軸駆動制御部５５からＡ軸モータ６５に出力する（Ｐ３７）。Ａ軸モータ６５はＡ軸駆動制御部５５が出力した停止信号を検出した時、Ａ軸モータ６５の回転を停止する（Ｐ３８）。故に、ＣＰＵ４１が停止信号をＡ軸駆動制御部５５に出力してから、Ａ軸モータ６５が回転を停止する迄の遅延は略０になる（Ｐ３６、Ｐ３７、Ｐ３８参照）。該時、ハンドル１６Ｃの回転が停止した時間３２ｔから、Ａ軸モータ６５が回転を停止する時間４０ｔ迄、時間８ｔ分遅延する。このように、Ａ軸モータ６５の回転停止迄の遅延は、ＣＰＵ４１が停止信号を出力しない図５の時の遅延時間１６ｔと比べて、小さくなる。
【００５５】
図７に示すように、ＣＰＵ４１はＡ軸駆動制御部５５に停止信号を出力した（Ｓ７５）後、停止したＡ軸モータ６５の回転位置（以下、停止位置と称す。）を、エンコーダ７５を介して取得する（Ｓ７７）。ＣＰＵ４１は原点角度におけるＡ軸モータ６５の回転位置（以下、基準位置と称す。）を基準としてＡ軸モータ６５が単位角度分ずつ回転したときの夫々の回転位置（以下、単位位置と称す。）を特定する。単位角度は、選択倍率と単位角度を乗算した値である。複数の単位位置は夫々、基準位置に対して等間隔に配列される。 
【００５６】
例えば図８に示すように、選択倍率が×１００の時、複数の単位位置は夫々、Ａ軸モータ６５が基準位置（原点角度０度）から正負両側に０．１度（＝０．００１度×１００倍）ずつ回転した時の回転位置（±０．１度、±０．２度、±０．３度・・・）に対応する。尚、図８では、説明を容易とする為、Ａ軸モータ６５により回転するＡ軸台２０を図示してＡ軸モータ６５の回転位置を説明する。
【００５７】
図７に示すように、ＣＰＵ４１はハンドル１６Ｃの正方向の回転が停止した時、複数の単位位置のうち停止位置に対して正方向に最も近接する単位位置を、近接単位位置として特定する（Ｓ７９）。ＣＰＵ４１はハンドル１６Ｃの負方向の回転が停止した時、複数の単位位置のうち停止位置に対して負方向に最も近接する単位位置を、近接単位位置として特定する（Ｓ７９）。つまり、ＣＰＵ４１は複数の単位位置のうち、停止前のＡ軸モータ６５の回転方向と同一方向にＡ軸モータ６５が回転したときに到達する最も近い位置を、近接単位位置として特定する。ＣＰＵ４１は停止位置から近接単位位置迄Ａ軸モータ６５を回転する為に、近接単位位置を示すパルス信号をＡ軸駆動制御部５５に出力する（Ｓ８１）。ＣＰＵ４１は処理をＳ６１に戻す。
【００５８】
図８において、ハンドル１６Ｃの回転に応じてＡ軸モータ６５が原点角度（Ｐ５１）から停止位置０．１８度（Ｐ５２）迄正方向に回転し、停止位置（Ｐ５２）で停止信号によりＡ軸モータ６５が回転を停止した時を例示する。選択倍率は×１００とする。該時、ＣＰＵ４１は複数の単位位置（±０．１度、±０．２度、±０．３度・・・）のうち停止位置０．１８度から正方向に近接する単位位置０．２度を、近接単位位置として特定する（Ｓ７９）。ＣＰＵ４１は近接単位位置を示すパルス信号を、時間ｔ４２にＡ軸駆動制御部５５に出力する（Ｐ３９、Ｓ８１（図７参照））。該時、Ａ軸駆動制御部５５はＡ軸モータ６５が停止位置０．１８度から近接単位位置０．２度迄正方向に回転する為のパルス信号を、周期８ｔ（時間４２ｔ〜５０ｔ）の間にＡ軸モータ６５に出力する（Ｐ４０）。Ａ軸モータ６５はパルス信号を全て入力した後、該パルス信号に応じた回転を開始する（Ｐ４１）。Ａ軸モータ６５は近接単位位置０．２度（Ｐ５３）迄正方向に０．０２度回転し、回転を停止する（Ｐ４２）。
【００５９】
＜本実施形態の主たる作用、効果＞
数値制御装置４０のＣＰＵ４１は第ｎ周期の間における手動パルス発生器１６のハンドル１６Ｃに対する回転総量の絶対値が０より大きい時（Ｓ６９：ＹＥＳ）、回転総量に応じた目標位置を特定する（Ｓ７１）。ＣＰＵ４１は目標位置に応じたパルス信号を、Ａ軸駆動制御部５５に出力する（Ｓ７３、Ｐ３２）。Ａ軸駆動制御部５５は目標位置迄Ａ軸モータ６５を回転する為にパルス信号を第（ｎ＋１）周期の間出力する（Ｐ３３）。Ａ軸モータ６５は第（ｎ＋２）周期の開始時点から、該パルス信号に応じた回転を開始する（Ｐ３５）。ＣＰＵ４１は、操作総量の絶対値が０以下の時（Ｓ６９：ＮＯ）、第（ｎ＋１）周期の開始時に停止信号をＡ軸駆動制御部５５に出力する（Ｓ７５、Ｐ３６）。Ａ軸駆動制御部５５は停止信号に応じ、Ａ軸モータ６５の回転を第（ｎ＋１）周期の開始時点で停止する（Ｐ３７、Ｐ３８）。故に、数値制御装置４０は、ハンドル１６Ｃの回転が停止した時にＡ軸モータ６５を短時間で停止できる。
【００６０】
使用者はハンドル１６Ｃの回転を停止した時、倍率スイッチ１６Ａで設定した選択倍率に応じた複数の単位位置の何れかでＡ軸モータ６５が停止することを所望する。複数の単位位置の何れかでＡ軸モータ６５が停止しない時、使用者は最終的に複数の単位位置の何れか迄Ａ軸モータ６５を回転する為に倍率スイッチ１６Ａを再設定する必要がある。これに対し、ＣＰＵ４１はＡ軸駆動制御部５５に停止信号を出力した（Ｓ７５）後で停止位置を取得する（Ｓ７７）。ＣＰＵ４１は複数の単位位置のうち停止位置に近接する位置を、近接単位位置として特定する（Ｓ７９）。ＣＰＵ４１は停止位置から近接単位位置迄Ａ軸モータ６５を回転する為に、近接単位位置を示すパルス信号をＡ軸駆動制御部５５に出力する（Ｓ８１）。Ａ軸モータ６５は停止信号に応じて回転停止した後、近接単位位置迄回転する（Ｐ４１）。該時、使用者はハンドル１６Ｃの回転を再開して最終的に複数の単位位置の何れか迄Ａ軸モータ６５を回転する時、倍率スイッチ１６Ａの再設定が不要となる。故に、使用者は容易に作業を再開できる。
【００６１】
ＣＰＵ４１は複数の単位位置のうち、停止前のＡ軸モータ６５の回転方向と同一方向にＡ軸モータ６５が回転したときに到達する最も近い位置を、近接単位位置として特定する（Ｓ７９）。該時、Ａ軸モータ６５の回転方向は、停止前と停止後とで一致する。故に、使用者は停止後に手動パルス発生器を用いた段取り作業などを効率的に再開できる。
【００６２】
手動パルス発生器１６はダイヤル式のハンドル１６Ｃを備える。該時、ＣＰＵ４１はハンドル１６Ｃの回転操作に応じてモータ６１〜６５の回転を制御できる。又、ＣＰＵ４１は所定周期の間のハンドル１６Ｃの回転総量の絶対値が０の時、モータ６１〜６５の回転を停止する。故に、ＣＰＵ４１は使用者がハンドル１６Ｃの回転を停止した時、モータ６１〜６５の回転を停止できる。
【００６３】
＜変形例＞
本発明は上記実施形態に限らない。駆動回路５１〜５４、Ａ軸駆動制御部５５が夫々モータ６１〜６５にパルス信号を送信する為に必要な時間ｔ、８ｔは一例であり、他の値でもよい。ＣＰＵ４１はＳ６７で算出した回転総量の絶対値が、０よりも大きい所定閾値（例えは、１、２等）よりも大きい時、第ｎ周期でハンドル１６Ｃが回転したと判定してもよい。
【００６４】
数値制御装置４０はモータ６１〜６５の少なくとも何れかを、Ａ軸駆動制御部５５と同じ方法で駆動する駆動制御部で駆動してもよい。該時、ＣＰＵ４１は該駆動制御部で駆動するモータ６１〜６５の何れかを、図７で示すメイン処理を実行することで制御してもよい。手動パルス発生器１６はハンドル１６Ｃの代わりに、ダイヤル式以外の入力機器を有してもよい。手動パルス発生器１６は正方向と負方向に対応する２つのボタンを有してもよい。手動パルス発生器１６は該ボタンの押下時間に応じた回転量を数値制御装置４０に出力してもよい。ＣＰＵ４１が回転総量を算出する周期と、Ａ軸駆動制御部５５がＡ軸モータ６５にパルス信号を出力する為に必要な時間は相違してもよい。
【００６５】
選択倍率は常に所定倍率（例えば１倍）でもよい。該時、手動パルス発生器１６は倍率スイッチ１６Ａを有さなくてもよい。ＣＰＵ４１は停止信号によるＡ軸モータ６５の停止後、複数の単位位置のうち２番目、３番目に近い位置迄Ａ軸モータ６５を回転してもよい。つまり、停止信号により停止したＡ軸モータ６５の回転を再開した時の最終的な回転位置は、複数の単位位置のうち停止状態のＡ軸モータ６５の回転位置から最も近い単位位置でなくてもよい。
【００６６】
ＣＰＵ４１は複数の単位位置のうち、Ａ軸モータ６５の停止前の回転方向と逆方向にＡ軸モータ６５が回転したときに到達する最も近い位置を、近接単位位置として特定してもよい。該時、Ａ軸モータ６５の回転方向は、停止前と停止後とで相違する。ＣＰＵ４１は、回転再開後のＡ軸モータ６５の位置が、停止前のＡ軸モータ６５の位置よりも先に進むことを抑制できる。
【００６７】
＜その他＞
手動パルス発生器１６のハンドル１６Ｃは本発明の第一入力部の一例である。手動パルス発生器１６の倍率スイッチ１６Ａは本発明の第二入力部の一例である。ハンドル１６Ｃの回転量は本発明の操作量の一例である。回転総量は本発明の操作総量の一例である。Ｓ６５の処理を行うＣＰＵ４１は本発明の第一取得手段の一例である。Ｓ６９の処理を行うＣＰＵ４１は本発明の判定処理の一例である。Ｓ７１の処理を行うＣＰＵ４１は本発明の第一特定手段の一例である。冶具２００は本発明のステージの一例である。Ｐ３３の処理を行うＡ軸駆動制御部５５は本発明の第一出力手段の一例である。Ｐ３７の処理を行うＡ軸駆動制御部５５は本発明の第二出力手段の一例である。Ｓ７７の処理を行うＣＰＵ４１は本発明の第二取得手段の一例である。Ｓ７９の処理を行うＣＰＵ４１は本発明の第二特定手段の一例である。Ｐ４０の処理を行うＡ軸駆動制御部５５は本発明の第三出力手段の一例である。
【符号の説明】
【００６８】
１        ：工作機械
１６      ：手動パルス発生器
１６Ａ    ：倍率スイッチ
１６Ｂ    ：軸スイッチ
１６Ｃ    ：ハンドル
４０      ：数値制御装置
４１      ：ＣＰＵ
【図１】
2018005440.tif 000003
【図２】
2018005440.tif 000004
【図３】
2018005440.tif 000005
【図４】
2018005440.tif 000006
【図５】
2018005440.tif 000007
【図６】
2018005440.tif 000008
【図７】
2018005440.tif 000009
【図８】
2018005440.tif 000010