以下、本発明の第一実施形態及び第二実施形態について、図面を参照して説明する。最初に第一実施形態について説明する。図1の左斜め下方、右斜め上方、右斜め下方、左斜め上方は、夫々、工作機械1の前方、後方、右方、左方である。工作機械1の左右方向、前後方向、上下方向を、夫々、工作機械1のX軸方向、Y軸方向、Z軸方向とする。図1に示す工作機械1は複合加工機である。複合加工機はワーク(被加工物)に回転加工及び旋削加工を選択的に施すことができる。
図1〜図3を参照して、工作機械1の構造について説明する。工作機械1は、基台部2、Y軸移動機構、運搬体12、X軸移動機構、コラム5、Z軸移動機構、主軸ヘッド7、主軸8、ワーク保持装置80、自動工具交換装置(以下「ATC」と呼ぶ)30等を備える。
基台部2はY軸方向に長い矩形箱状の鉄製部材である。基台部2は下部四隅に脚3を夫々備える。脚3は高さ調節可能である。基台部2は上面に台座部4、右側支持部18、左側支持部19を備える。台座部4は基台部2上面後部側に設けてある。台座部4は例えば略直方体状である。右側支持部18及び左側支持部19は台座部4よりも低い高さの台座である。右側支持部18は基台部2上面右前側に配置する。左側支持部19は基台部2上面左前側に配置する。右側支持部18及び左側支持部19はワーク保持装置80を下方から支持する。
Y軸移動機構は台座部4上面に設けてある。Y軸移動機構は運搬体12をY軸方向に移動する。Y軸移動機構は一対のY軸レール61,62、Y軸ボールネジ63、Y軸モータ52(図6参照)等を備える。Y軸レール61,62は台座部4上面の左右方向両端部に沿って設けてある。Y軸ボールネジ63はY軸レール61,62の間に設けてある。運搬体12はY軸レール61,62に沿って移動可能である。運搬体12は例えば所定厚を有する金属製板部材である。運搬体12は下面にナット(図示略)を備える。ナットはY軸ボールネジ63に螺合する。Y軸モータ52はY軸ボールネジ63を回転する。運搬体12はナットと共にY軸方向に移動する。
X軸移動機構は運搬体12上面に設けてある。X軸移動機構はコラム5をX軸方向に移動する。X軸移動機構は一対のX軸レール71,72、X軸ボールネジ73、X軸モータ51等を備える。X軸レール71,72、X軸ボールネジ73はX軸方向に延設する。X軸レール71は運搬体12上面後側、X軸レール72は運搬体12上面前側に配置する。X軸ボールネジ73はX軸レール71,72の間に配置する。コラム5はX軸レール71,72に沿って移動可能である。コラム5は下面にナット(図示略)を備える。ナットはX軸ボールネジ73に螺合する。X軸モータ51はX軸ボールネジ73を回転する。コラム5はナットと共にX軸方向に移動する。コラム5は運搬体12を介してY軸方向に移動する。即ち、コラム5はY軸移動機構、X軸移動機構、運搬体12によって、X軸方向及びY軸方向に移動可能となる。
コラム5は右側面下部に保護カバー16、左側面下部に保護カバー17、背面下部にカバー13を備える。保護カバー16はコラム5右側面から右側において露出するX軸移動機構を覆う。保護カバー17はコラム5左側面から左側において露出するX軸移動機構を覆う。保護カバー16,17はコラム5のX軸方向への移動に追従して移動する。カバー13はコラム5の背面後方において露出するY軸移動機構を覆う。カバー13はコラム5のY軸方向への移動に追従して伸縮する。保護カバー16,17、カバー13はX軸移動機構及びY軸移動機構内に切粉及び切削液が侵入するのを防止する。
Z軸移動機構はコラム5前面に設けてある。Z軸移動機構は主軸ヘッド7をZ軸方向に移動する。Z軸移動機構は一対のZ軸レール(図示略)、Z軸ボールネジ(図示略)、Z軸モータ53(図6参照)等を備える。Z軸レール、Z軸ボールネジはZ軸方向に延設する。Z軸ボールネジは一対のZ軸レールの間に配置する。主軸ヘッド7はZ軸レールに沿って移動可能である。主軸ヘッド7は背面にナット(図示略)を備える。ナットはZ軸ボールネジに螺合する。Z軸モータ53はZ軸ボールネジを回転する。主軸ヘッド7はZ軸方向に移動する。保護カバー28は主軸ヘッド7上部後側に固定してある。保護カバー28は主軸ヘッド7と共に上下動することでコラム5前面を覆う。コラム5は前面にZ軸シャッター27を備える。Z軸シャッター27は主軸ヘッド7の上下動に従い伸縮する。Z軸シャッター27はZ軸移動機構内に切粉及び切削液が侵入するのを防止する。
主軸ヘッド7はZ軸駆動機構によりコラム5前面に沿って昇降する。主軸8は主軸ヘッド7下部に設けてある。主軸8は工具装着部(図示略)を備える。工具装着部は例えばテーパ状の孔部である。工具装着部は工具TA,TBを装着する。工具TAは回転加工用の工具である。工具TBは旋削加工用の工具である。以下、工具TA,TBを総称する場合は工具Tと称する。主軸モータ54は主軸ヘッド7上面前側に設けてある。主軸モータ54は主軸8を回転する。ケーブルベア(登録商標)29は主軸ヘッド7上部とコラム5上部との間に設けてある。
図1〜図3を参照して、ワーク保持装置80の構造について説明する。ワーク保持装置80は、右側固定部88、左側固定部89、治具固定テーブル81、C軸モータ56、C軸82、チルトモータ57等を備える。右側固定部88は右側支持部18の上面に固定する。左側固定部89は左側支持部19の上面に固定する。
治具固定テーブル81は、テーブル部81A、右連結部81B、左連結部81Cを備える。C軸モータ56は治具固定テーブル81の下面側に設けてある。C軸82は治具固定テーブル81の略中央に設けてある。C軸82は円柱状である。C軸82はC軸モータ56の回転軸に連結する。治具(図示略)はC軸82の上面に固定する。治具は例えば円柱状で且つC軸82と同軸上に配置する。治具はワークを保持する。C軸82の軸線方向はテーブル部81A表面に対して直交する。故に治具はC軸82と共に回転可能である。
右連結部81Bはテーブル部81Aから右上方向に延出し且つ右側固定部88にX軸回りに回転可能に連結する。左連結部81Cはテーブル部81Aから左上方向に延出し且つ左側固定部89にX軸回りに回転可能に連結する。チルトモータ57は右側固定部88に固定してある。チルトモータ57は治具固定テーブル81をX軸回りに回転する。チルトモータ57の回転軸は右連結部81Bと連結する。
治具に固定したワークは、C軸モータ56の駆動によりC軸82の軸回りで回転する。治具に固定したワークは、チルトモータ57による治具固定テーブル81の回転に関わらず、C軸モータ56の駆動によりテーブル部81Aに対して直角な軸回りで回転する。
図1〜図3を参照して、ATC30の構造について説明する。ATC30は、工具マガジン31、マガジン支持部材32、マガジンモータ55、駆動ギヤ35等を備える。マガジン支持部材32は楕円状の金属製板部材である。マガジン支持部材32は、主軸ヘッド7及びコラム5を内側に挿入した状態で、コラム5に取り付けてある。工具マガジン31は前方から後方に従って上方に向かっている。
工具マガジン31はマガジン支持部材32の外周に沿って取り付けてある。工具マガジン31はチェーン34、複数のポット37を備える。チェーン34はマガジン支持部材32の外周に沿って移動可能に取り付けてある。複数のポット37はチェーン34に夫々取り付けてある。ポット37は工具Tを保持可能である。ポット37は例えばアーム状に形成し且つ揺動可能に取り付けてある。
マガジンモータ55はマガジン支持部材32の上部に取り付けてある。マガジンモータ55の駆動軸はマガジン支持部材32の上面に直交する。マガジンモータ55の駆動軸は正逆何れの方向にも回転可能である。駆動ギヤ35はマガジンモータ55の駆動軸に取り付けてある。駆動ギヤ35はマガジンモータ55の駆動軸と共に回転する。駆動ギヤ35は工具マガジン31のチェーン34に噛合する。チェーン34は駆動ギヤ35の駆動によりマガジン支持部材32の外周に沿って正逆何れかの方向に移動する。故にポット37はチェーン34と共にマガジン支持部材32の外周に沿って移動する。工具マガジン31の最下部に位置するポット37の位置は、工具交換位置である。工具交換位置は主軸8に最も近接する位置である。ATC30は、工具交換位置にあるポット37が保持する次工具を、主軸8に装着する現工具と交換する。
工作機械1による加工方法について説明する。工作機械1は回転加工と旋削加工が可能である。回転加工は固定したワークに回転する工具TAを当てて移動する加工方法である。例えばドリル、タップ等の孔空け加工の際に用いる。回転加工は回転加工用の工具TAを用いる。工具TAは主軸8に装着した状態で回転可能である。旋削加工は回転するワークに工具TBを当てて移動する加工方法である。例えばフェイシング加工等に用いる。旋削加工は旋削加工用の工具TBを用いる。工具TBは主軸8に装着した状態では回転不能となる。
図4の如く、工具TBは、テーパシャンク101、プルスタッド102、フランジ103等を備える。テーパシャンク101は略円錐状である。テーパシャンク101は主軸8の工具装着部(図示略)に装着する。プルスタッド102はテーパシャンク101の頂上部に設けてある。プルスタッド102は工具装着部内に設けた把持部(図示略)が把持する部分である。フランジ103は工具TBとテーパシャンク101との間に設けてある。フランジ103は工具TBの径方向外側に延出する略円盤状である。
フランジ103は一対のキー溝105,106を備える。キー溝105,106は長方形状に形成してあるが形状は限定しない。キー溝105,106はフランジ103の中心を挟んで互いに対向する位置にある。キー溝105,106は旋削加工用の工具TBに特有である。図5の如く、主軸ヘッド7は下端面に一対のキー91,92を備える。キー91,92は例えば凸状である。キー91,92の形状はキー溝105,106の形状に対応する。キー91,92は主軸8の工具装着部を挟んで互いに対向する位置関係である。
図5の如く、主軸8(図5では図示略)は工具TBを装着した状態である。工具TBのテーパシャンク101は主軸8の工具装着部に装着する。フランジ103は主軸ヘッド7の下端面に接触する。キー91,92はキー溝105,106に係合する。キー91,92はキー溝105,106の内面に係止する。工具TBは主軸ヘッド7に対して機械的に固定した状態なので、主軸8は回転不能となる。回転加工用の工具TAは、工具TBと同様に、テーパシャンク、プルスタッドを備えるがフランジは無い。故に工具TAは主軸8の工具装着部に装着した場合、キー91,92と係合しないので、工具TAは主軸8と共に回転可能である。
図1〜図3を参照して、工作機械1を用いた回転加工工程について説明する。作業者はC軸82に治具を用いてワークを固定する。ATC30は主軸8に工具TAを装着する。工具TAは主軸ヘッド7に対して回転可能状態である。工作機械1は主軸モータ54を駆動する。工具TAは主軸8と共に回転する。工作機械1はC軸モータ56を駆動しないので、C軸82上の治具に固定したワークは回転しない。工作機械1はX軸モータ51〜Z軸モータ53を駆動して主軸8の位置を移動し、且つ主軸8を回転させて治具に固定したワークに対して回転加工ができる。
図1〜図3を参照して、工作機械1を用いた旋削加工工程について説明する。作業者はC軸82の上面に治具を用いてワークを固定する。ATC30は主軸8に工具TBを装着する。工具TBは主軸ヘッド7に対して回転不能な状態である。工作機械1はC軸モータ56を駆動する。C軸82上の治具に固定したワークは回転する。工作機械1はX軸モータ51〜Z軸モータ53を駆動して主軸8の位置を移動し、回転したワークに対して工具TBによる旋削加工ができる。
工作機械1はチルトモータ57によりX軸回りのワーク姿勢を調整可能である。故にワークの所望の部位を加工できる。なお工作機械1は主軸モータ54及びC軸モータ56を同時に回転してワークを加工してもよい。
図6を参照して、工作機械1の電気的構成について説明する。工作機械1は数値制御部20を備える。数値制御部20はCPU21、ROM22、RAM23、フラッシュメモリ24、入力部25、入出力部26等を備える。CPU21は工作機械1の動作を統括制御する。ROM22は各種プログラムを記憶する。RAM23は各種データを記憶する。フラッシュメモリ24はNCプログラム、装着工具情報等を記憶する。NCプログラムは複数のブロックで構成したものである。各ブロックは各種NCコマンドを含む。NCコマンドは制御指令である。装着工具情報は、電源切断時の主軸8の装着工具が工具TA及び工具TBの何れであるかを示す情報である。
操作部38、Z軸原点センサ39は入力部25に接続する。操作部38は例えば工作機械1を覆うカバー(図示略)に設けてある。操作部38は例えば作業者が工作機械1の動作について各種入力及び設定を行う機器である。Z軸原点センサ39は主軸ヘッド7のZ軸方向の原点を検出する。駆動回路41〜49は入出力部26に接続する。
駆動回路41はX軸モータ51を駆動する。エンコーダ51AはX軸モータ51と入出力部26に接続する。エンコーダ51AはX軸モータ51の回転量を検出し該検出信号を入出力部26に入力する。駆動回路42はY軸モータ52を駆動する。エンコーダ52AはY軸モータ52と入出力部26に接続する。エンコーダ52AはY軸モータ52の回転量を検出し該検出信号を入出力部26に入力する。駆動回路43はZ軸モータ53を駆動する。エンコーダ53AはZ軸モータ53と入出力部26に接続する。エンコーダ53AはZ軸モータ53の回転量を検出し該検出信号を入出力部26に入力する。
駆動回路44は主軸モータ54を駆動する。エンコーダ54Aは主軸モータ54と入出力部26に接続する。エンコーダ54Aは主軸モータ54の回転量を検出し該検出信号を入出力部26に入力する。駆動回路45はマガジンモータ55を駆動する。エンコーダ55Aはマガジンモータ55と入出力部26に接続する。エンコーダ55Aはマガジンモータ55の回転量を検出し該検出信号を入出力部26に入力する。駆動回路46はC軸モータ56を駆動する。エンコーダ56AはC軸モータ56と入出力部26に接続する。エンコーダ56AはC軸モータ56の回転量を検出し該検出信号を入出力部26に入力する。
駆動回路47はチルトモータ57を駆動する。エンコーダ57Aはチルトモータ57と入出力部26に接続する。エンコーダ57Aはチルトモータ57の回転量を検出し該検出信号を入出力部26に入力する。駆動回路48はクランプ装置58を駆動する。クランプ装置58は治具固定テーブル81の裏面側に設けてある。クランプ装置58は治具の回転軸を固定保持する。駆動回路49は表示部11を駆動する。表示部11は例えばスプラッシュカバー(図示略)に設けてある。表示部11は工作機械1の設定画面、操作画面等の各種画面を表示する。
X軸モータ51、Y軸モータ52、Z軸モータ53、主軸モータ54、マガジンモータ55、C軸モータ56、チルトモータ57は例えばサーボモータである。
図7を参照して、電源切断時処理について説明する。CPU21は、作業者による電源切断の操作により、ROM22に記憶した電源切断時処理プログラムを読み出して本処理を実行する。先ずCPU21は主軸モータ54の電流制限を実行する(S1)。
電流制限を実行する理由は以下の通りである。例えば主軸8に回転加工用の工具TAを装着している場合、工具TAは回転する。例えば主軸8に旋削加工用の工具TBを装着している場合、工具TBは主軸ヘッド7に対して機械的に固定した状態であるので回転しない。主軸8に旋削加工用の工具TBを装着している場合、上述の通り、工具TBは主軸ヘッド7に対して機械的に固定した状態であるので、主軸8は回転不可能である。CPU21は例えば工具TBを機械的に主軸ヘッド7に固定した状態で、主軸モータ54に主軸指令を出力すると、主軸モータ54に流れる電流は継続的に増大し過電流となる。過電流は主軸モータ54に負荷を与え、故障の原因となる。故にCPU21は主軸モータ54に所定レベルを超える電流が流れないように駆動回路44を制御する。該制御は電流制御である。
CPU21は主軸8の回転指令を実行する(S2)。CPU21は主軸指令を実行してから所定時間経過したか否か判断する(S3)。CPU21は所定時間経過するまでは(S3:NO)、S3に戻って待機状態となる。CPU21は所定時間経過した場合(S3:YES)、主軸8は所定量回転したか否か判断する(S4)。主軸8の回転量は、エンコーダ54Aからの検出信号に基づき、主軸モータ54の回転量で算出可能である。例えば主軸8に工具TAを装着した状態で主軸8を回転する場合、主軸8は所定時間で所定量回転可能である。
CPU21は主軸8が所定量回転したと判断した場合(S4:YES)、主軸8に装着した装着工具は工具TAと判定する(S5)。CPU21は所定量回転していないと判断した場合(S4:NO)、主軸8に装着した装着工具は工具TBと判定する(S6)。CPU21は判定結果を装着工具情報としてフラッシュメモリ24に記憶する(S7)。CPU21は本処理を終了し、工作機械1の電源は切断する。
図8を参照して、起動時処理について説明する。CPU21は、電源起動時、ROM22に記憶した起動時処理プログラムを読み出して本処理を実行する。主軸指令が有るか否か判断する(S10)。CPU21は主軸指令が有るまで(S10:NO)、S10に戻って待機状態となる。
CPU21は主軸指令があると判断した場合(S10:YES)、該主軸指令は工具交換時のオリエント指令か否か判断する(S11)。CPU21は主軸指令がオリエント指令であると判断した場合(S11:YES)、フラッシュメモリ24に記憶した装着工具情報を取得する(S12)。装着工具情報は電源切断時の主軸8の装着工具が工具TA、工具TBの何れであるかを示す。CPU21は装着工具情報に基づき、装着工具を特定する(S13)。CPU21は特定した装着工具が工具TBか否か判断する(S14)。
CPU21は装着工具が工具TAであると判断した場合(S14:NO)、主軸オリエントを実行する(S15)。主軸オリエントは主軸8を原点位置に割り出す処理である。
その後、CPU21はZ軸上昇を実行する(S16)。Z軸上昇は主軸ヘッド7を工具交換準備位置まで上昇する処理である。CPU21はATC30による工具交換を実行する(S17)。主軸8はS15で原点位置に割り出してある。故に工作機械1はATC30による工具交換の際に工具TAを主軸8に対して正常に着脱できる。
その後、CPU21はZ軸下降を実行し(S18)、本処理を終了する。Z軸下降は主軸ヘッド7をZ軸原点位置まで下降する処理である。
CPU21は装着工具が工具TBであると判断した場合(S14:YES)、主軸オリエントを実行せず、Z軸上昇を実行する(S16)。主軸8に工具TBを装着した場合、キー91,92はキー溝105,106に係合するので、主軸ヘッド7に対する工具TBの位置は決まる。工具TBを装着した主軸8の位置は原点位置である。即ち主軸8は既に原点位置に割り出した状態(オリエント状態)である。故にCPU21は主軸オリエントを実行しない。CPU21はS17,S18を上記同様に実行し本処理を終了する。
CPU21は主軸指令がオリエント指令ではなく、通常の主軸指令であると判断した場合(S11:NO)、フラッシュメモリ24に記憶した装着工具情報を取得する(S19)。通常の主軸指令はオリエント指令以外の主軸8を回転する指令である。CPU21は装着工具情報に基づき、装着工具を特定する(S20)。CPU21は特定した装着工具が工具TBか否か判断する(S21)。
CPU21は装着工具が工具TAであると判断した場合(S21:NO)、主軸指令を実行する(S22)。CPU21は本処理を終了する。CPU21は装着工具が工具TBであると判断した場合(S21:YES)、回転しない工具TBを主軸8に装着した状態で主軸指令を出力する状態は、例えばプログラムミスが原因である。工作機械1は工具TBを装着した状態で主軸8を回転しようとすると、主軸8に過剰な負荷がかかり、故障の原因になる。CPU21は主軸指令を実行することなく、その旨を報知し(S23)、本処理を終了する。報知は、例えば表示部11に異常メッセージ等を表示する処理、音声で報知する処理、ランプ等を点灯又は点滅する処理等の何れでもよい。故に作業者は工作機械1の異常を早期に認識できるので速やかな対応が可能である。
以上説明において、図4に示すキー溝105,106が本発明の係合部の一例である。図5に示すキー91,92が本発明の被係合部の一例である。図6に示す主軸モータ54は本発明の駆動部の一例である。フラッシュメモリ24は本発明の第一記憶手段の一例である。図7のS7の処理を実行するCPU21は本発明の第一記憶処理手段の一例である。図8のS10の処理を実行するCPU21は本発明の主軸指令判断手段の一例である。S12,S19の処理を実行するCPU21は本発明の取得手段の一例である。S13,S20の処理を実行するCPU21は本発明の第二工具特定手段の一例である。S14,S15,S21,S22の処理を実行するCPU21は主軸駆動制御手段の一例である。図7のS2の処理を実行するCPU21は駆動出力手段の一例である。S3,S4の処理を実行するCPU21は回転判断手段の一例である。S1の処理を実行するCPU21は電流制限手段の一例である。
以上説明したように、本実施形態の工作機械1は、回転加工用の工具TA及び旋削加工用の工具TBを共通の主軸8に選択的に装着可能である。工作機械1はワークに回転加工及び旋削加工を選択的に施すことができる。主軸ヘッド7は下端面に一対のキー91,92を備える。工具TBは一対のキー溝105,106を備える。主軸8は工具TBを装着する。キー91,92はキー溝105,106に係合する。キー91,92は工具TBの回転を規制する。工作機械1は数値制御部20を備える。数値制御部20はCPU21を備える。CPU21は電源切断時に主軸の装着工具が工具TA及び工具TBの何れであるかを特定する。CPU21は装着工具情報をフラッシュメモリ24に記憶する。装着工具情報は装着工具が工具TA及び工具TBの何れであるかを特定する為の情報である。CPU21は電源投入後に主軸指令があるか否か判断する。CPU21は主軸指令があると判断した場合、フラッシュメモリ24に記憶した装着工具情報を取得する。CPU21は取得した装着工具情報を参照し装着工具を特定する。CPU21は装着工具が工具TAであると特定した場合、主軸指令に基づき主軸モータ54を駆動する。CPU21は装着工具が工具TBであると特定した場合、主軸指令を無視する。故に工作機械1は主軸8に過剰な負荷がかかるのを防止できる。
本実施形態では特に、CPU21は電源切断時において装着工具を特定する為に以下の処理を行う。CPU21は主軸を回転する回転指令を主軸モータ54に出力する。CPU21は主軸モータ54に回転指令を出力してから所定時間内に主軸8が回転したか否か判断する。CPU21は所定時間内に主軸8が回転したと判断した場合、装着工具は回転加工用の工具TAであり、回転しなかったと判断した場合、装着工具は旋削加工用の工具TBであると特定する。故に工作機械1は装着工具が工具TA及び工具TBの何れであるかを簡単かつ確実に特定できる。
本実施形態では特に、主軸モータ54はサーボモータである。CPU21は主軸指令があると判断した場合、サーボモータに電流制限を設ける。故に工作機械1はサーボモータが過電流になるのを防止できる。工作機械1の安全性は向上する。
本実施形態では特に、主軸8に装着してある工具が旋削加工用の工具TBであると特定した場合、報知する。回転しない工具TBを主軸8に装着した状態で主軸指令を出力する状態は、例えばプログラムミスが原因である。工作機械1は報知するので、作業者は工作機械1の異常を早期に認識できるので速やかな対応が可能である。
なお上記第一実施形態は様々な変形が可能である。上記実施形態は、所定時間内に所定量回転したか否かで、主軸8の回転の有無を判断しているが(S16,S17)、例えば主軸モータ54が回転したか否かで判断するようにしてもよい。
また上記実施形態は、主軸モータ54に電流制限をかけ、主軸8の回転量に基づき主軸8に装着する工具Tの種類を判断する。即ち上記実施形態は所定時間内に主軸8が回転したか否かを主軸8の回転量で判断する。例えば工作機械1は主軸モータ54に電流制限をかけずに主軸モータ54に流れる電流値で主軸8に装着する工具Tの種類を判断してもよい。
変形例である工作機械1のCPU21は、図9に示す電源切断時処理を実行する。電源切断時処理は上記実施形態の電源切断時処理(図7参照)と共通する処理を備え、S1、S4の処理を行わず、S4の処理の代わりに、S25の処理を実行する。S1の処理は電流制限に関係する処理である。本変形例はサーボモータの性質を利用するものであるので、S1の処理は実行しない。
図9の如く、作業者による電源切断の操作により、CPU21は回転指令を実行する(S2)。主軸8に旋削加工用の工具TBを装着している場合、上述の通り、工具TBは主軸ヘッド7に対して機械的に固定した状態である。故に主軸8は回転できない。CPU21は例えば工具TBを機械的に固定した状態で、主軸モータ54に主軸指令を出力する。主軸モータ54に流れる電流は継続的に増大する。CPU21は主軸指令を実行してから所定時間経過した場合(S3:YES)、主軸モータ54に流れる電流値は所定値以下か否か判断する(S25)。
CPU21は電流値が所定値以下であると判断した場合(S25:YES)、主軸モータ54に流れる電流は増加していないので、装着工具は工具TAと判定する(S5)。CPU21は電流値が所定値を超えていると判断した場合(S25:NO)、主軸8に装着する装着工具は旋削加工用の工具TBと判定する(S6)。CPU21は判定結果を装着工具情報としてフラッシュメモリ24に記憶し(S7)、本処理を終了する。その後、工作機械1の電源は切断する。故に本変形例は上記第一実施形態と同様に所定時間内に主軸8が回転したか否かを判断できる。
本発明の第二実施形態について、図面を参照して説明する。第二実施形態は、第一実施形態における工作機械1の構成、及び電気的構成と同じ構成を備える。第二実施形態のCPU21は電源切断時における装着工具の特定方法が第一実施形態と異なる。CPU21は、第一実施形態の電源切断時処理(図7参照)の代わりに、図11に示す工具特定処理を実行する。工具特定処理はNCプログラムに基づき電源切断時の装着工具を特定する。起動時処理は第一実施形態と同じである。変形例は図10に示すNCプログラムP1を実行した場合を想定して説明する。
図10の如く、表示部11は例えばNCプログラムP1を表示する。NCプログラムP1は複数行の制御ブロックで構成する。各制御ブロックはNCコマンドを含む。NCコマンドは制御指令である。NCプログラムP1は例えば(1)、(2)の各制御ブロックを備える。
(1)の制御ブロックはG100T1M3S1000;である。G100は工具交換指令である。工具交換はATC30による主軸8の工具交換である。T1は工具番号1番の工具である。M3は主軸8を回転する主軸指令である。S1000は主軸8の回転数(1000RPM)である。故に(1)の制御ブロックは、工具番号1番の工具に工具交換し且つ主軸8を1000RPMで回転する指令である。(2)の制御ブロックはG100T2M303S1000;である。T2は工具番号2番の工具である。M303はC軸82を回転するC軸指令である。故に(2)の制御ブロックは工具番号2番の工具に工具交換し且つC軸82を1000RPMで回転する指令である。
図11を参照して、工具特定処理について説明する。CPU21は電源起動時、ROM22に記憶した工具特定処理プログラムを読み出して本処理を実行する。CPU21はNCプログラムの実行を開始したか否か判断する(S31)。CPU21はNCプログラムの実行を開始していないと判断した場合(S31:NO)、電源が切断したか否か判断する(S37)。CPU21は電源が切断していないと判断した場合(S37:NO)、S31に戻って処理を繰り返す。
CPU21はNCプログラムの実行を開始したと判断した場合(S31:YES)、工具交換指令を実行したか否か判断する(S32)。CPU32は工具交換指令を実行していないと判断した場合(S32:NO)、NCプログラムが終了したか否か判断する(S36)。CPU21はNCプログラムが終了していないと判断した場合(S36:NO)、S32に戻り処理を繰り返す。
工作機械1は(1)の制御ブロックのG100T1で工具T1に工具交換する。工作機械1は(2)の制御ブロックでG100T2で工具T2に工具交換する。CPU21は工具交換指令を実行したと判断した場合(S32:YES)、主軸指令かC軸指令か判断する(S33)。CPU21は主軸指令と判断した場合(S33:YES)、主軸8を回転する加工は回転加工である。主軸8の装着工具は回転加工用の工具TAである。故にCPU21は装着工具が工具TAであることをRAM23に一旦記憶する(S34)。CPU21はC軸指令と判断した場合(S33:NO)、C軸82を回転する加工は旋削加工である。主軸8の装着工具は旋削加工用の工具TBである。故にCPU21は装着工具が工具TBであることをRAM23に一旦記憶する(S35)。
例えばCPU21は制御ブロック(1)を実行することにより、装着工具は工具TAであることをRAM23に記憶する(S34)。CPU21は制御ブロック(2)を実行することにより、装着工具は工具TBであることをRAM23に記憶する(S35)。
CPU21はNCプログラムが終了したか否か判断する(S36)。CPU21はNCプログラムが終了していないと判断した場合(S36:NO)、S32に戻り処理を繰り返す。CPU21はNCプログラムが終了したと判断した場合(S36:YES)、電源が切断したか否か判断する(S37)。CPU21は電源が切断したと判断した場合(S37:YES)、RAM23に記憶した情報をフラッシュメモリ24に装着工具情報として記憶し(S38)、本処理を終了する。
以上説明において、図12のS33〜S35の処理を実行するCPU21は第一工具特定手段の一例である。
以上説明したように、第二実施形態の工作機械1のCPU21は、第一実施形態の電源切断時処理(図7参照)の代わりに、工具特定処理(図11参照)を実行する。工具特定処理はNCプログラムの実行中に、現在の装着工具が工具TAか工具TBかを特定し、電源切断時にフラッシュメモリ24に装着工具情報を記憶する。主軸指令を実行した際の主軸8の装着工具は回転加工用の工具TAである。C軸指令を実行した際に主軸8の装着工具は旋削加工用の工具TBである。故にCPU21は装着工具が工具TA及び工具TBの何れであるかを簡単かつ容易に特定できる。
なお本発明は上記第一、第二実施形態に限定されず、様々な変形が可能である。例えば工作機械1はATC30を備えたものである。本発明の第二実施形態はATC30を備えていない工作機械1にも適用可能である。
また上記実施形態の工作機械1は、コラム5がX軸及びY軸方向に移動可能なものであるが、これに限定しない。