(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022157537
(43)【公開日】2022-10-14
(54)【発明の名称】数値制御装置、制御プログラム、及び記憶媒体
(51)【国際特許分類】
G05B 19/18 20060101AFI20221006BHJP
B23Q 17/00 20060101ALI20221006BHJP
B23Q 3/155 20060101ALI20221006BHJP
B23B 31/00 20060101ALI20221006BHJP
【FI】
G05B19/18 W
B23Q17/00 B
B23Q3/155 F
B23B31/00 D
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2021061818
(22)【出願日】2021-03-31
(71)【出願人】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】100104178
【弁理士】
【氏名又は名称】山本 尚
(74)【代理人】
【識別番号】100152515
【弁理士】
【氏名又は名称】稲山 朋宏
(72)【発明者】
【氏名】寺田 弦
【テーマコード(参考)】
3C002
3C029
3C032
3C269
【Fターム(参考)】
3C002AA03
3C002AA04
3C002FF03
3C002HH06
3C029EE05
3C032FF04
3C269AB03
3C269AB05
3C269AB06
3C269BB12
3C269CC02
3C269EF02
3C269EF15
3C269GG01
3C269MN07
3C269MN16
3C269MN27
3C269MN29
(57)【要約】
【課題】主軸に対する工具の装着状態の僅かな変化を高精度に判定できる数値制御装置、制御プログラム、及び制御プログラムを記憶した記憶媒体を提供する。
【解決手段】数値制御装置は、主軸に対する工具の装着機構の駆動源であるモータのトルクを取得する(S19)。数値制御装置は、取得したトルクを補間して補間トルクを生成する(S25)。数値制御装置は、補間トルクを微分演算し(S29)、微分値の内最大又は最小となる値に対応付けた変位情報を、ピーク情報として決定する(S35)。数値制御装置は、ピーク情報に基づき統計処理を行う。数値制御装置は、統計値に基づき、主軸に対する工具の装着状態を判定する。
【選択図】
図9
【特許請求の範囲】
【請求項1】
主軸に装着した工具と作業台に固定した被削材を相対的に移動して前記被削材を加工する工作機械を制御する数値制御装置であって、
前記主軸に対する前記工具の装着機構の駆動源であるモータのトルクを、前記工具の装着動作時に所定の時期で取得する取得部と、
前記取得部が取得した前記トルクを補間して補間トルクを生成する補間部と、
前記補間部が補間した前記補間トルクを微分演算する微分演算部と、
前記微分演算部が演算した微分値の内、最大又は最小となる値に対応する前記装着機構の位置又は角度を示す変位情報を、ピーク情報として決定する決定部と、
前記決定部が決定した前記ピーク情報を前記主軸に対する前記工具の使用回数または使用時間と対応付けて記憶する記憶部と、
前記記憶部が記憶した前記ピーク情報に基づき統計処理を行う統計処理部と、
前記統計処理部が統計処理した統計値に基づき、前記主軸に対する前記工具の装着状態を判定する判定部と
を備えたことを特徴とする数値制御装置。
【請求項2】
前記補間部は、線形近似により前記トルクを補間して前記補間トルクを生成することを特徴とする請求項1に記載の数値制御装置。
【請求項3】
前記補間部は、曲線近似により前記トルクを補間して前記補間トルクを生成することを特徴とする請求項1に記載の数値制御装置。
【請求項4】
前記補間部が補間した前記補間トルクにローパスフィルタを適用する第一フィルタ処理部を備え、
前記微分演算部は、
前記第一フィルタ処理部が前記ローパスフィルタを適用した前記補間トルクを微分演算することを特徴とする請求項2に記載の数値制御装置。
【請求項5】
前記取得部が取得した前記トルクにローパスフィルタを適用する第二フィルタ処理部を備え、
前記補間部は、
前記第二フィルタ処理部が前記ローパスフィルタを適用した前記トルクを補間して前記補間トルクを生成することを特徴とする請求項2又は3に記載の数値制御装置。
【請求項6】
前記統計処理部は、
前記統計値として前記記憶部が記憶した前記ピーク情報から最新の前記ピーク情報である第一ピーク情報及び異常発生時の前記ピーク情報を除いた対象ピーク情報のうち最新の前記対象ピーク情報である第二ピーク情報から数えて所定数の平均値を算出し、
前記判定部は、
前記統計処理部が算出した前記平均値に基づき、前記装着状態を判定する
ことを特徴とする請求項1から5の何れかに記載の数値制御装置。
【請求項7】
前記判定部は、
前記第一ピーク情報と、前記統計処理部が算出した前記平均値に基づき決定した閾値とに基づき、前記装着状態を判定する
ことを特徴とする請求項6に記載の数値制御装置。
【請求項8】
前記統計処理部は、
前記対象ピーク情報のうち前記第二ピーク情報から数えて前記所定数の標準偏差を更に算出し、
前記判定部は、
前記第一ピーク情報と、前記平均値と前記標準偏差に基づき決定した前記閾値とに基づき、前記装着状態を判定する
ことを特徴とする請求項7に記載の数値制御装置。
【請求項9】
前記装着機構は、前記モータの駆動で所定方向に往復移動可能であり、前記主軸を回転可能に支持する主軸ヘッドを備え、
前記モータは、前記主軸ヘッドを前記所定方向に移動することで前記主軸に対して前記工具を装着し、
前記変位情報は、前記主軸ヘッドの前記所定方向における位置である
ことを特徴とする請求項1から8の何れかに記載の数値制御装置。
【請求項10】
前記装着機構は、
前記モータの駆動で回転する回転軸と、
前記回転軸の回転と同期して回転し、前記主軸に装着する前記工具を支持可能なアームと
を備え、
前記モータは、前記回転軸を回転することで、前記アームと共に回転する前記工具を前記主軸に対して装着し、
前記変位情報は、前記回転軸の回転角度である
ことを特徴とする請求項1から8の何れかに記載の数値制御装置。
【請求項11】
主軸に装着した工具と作業台に固定した被削材を相対的に移動して前記被削材を加工する工作機械を制御するコンピュータに、
前記主軸に対する前記工具の装着機構の駆動源であるモータのトルクを、前記工具の装着動作時に所定の時期で取得する取得工程と、
前記取得工程が取得した前記トルクを補間して補間トルクを生成する補間工程と、
前記補間工程が補間した前記補間トルクを微分演算する微分演算工程と、
前記微分演算工程が演算した微分値の内、最大又は最小となる値に対応する前記装着機構の位置又は角度を示す変位情報を、ピーク情報として決定する決定工程と、
前記決定工程が決定した前記ピーク情報を前記主軸に対する前記工具の使用回数または使用時間と対応付けて記憶する記憶工程と、
前記記憶工程が記憶した前記ピーク情報に基づき統計処理を行う統計処理工程と、
前記統計処理工程が統計処理した統計値に基づき、前記主軸に対する前記工具の装着状態を判定する判定工程と
を実行させるための制御プログラム。
【請求項12】
主軸に装着した工具と作業台に固定した被削材を相対的に移動して前記被削材を加工する工作機械を制御するコンピュータに、
前記主軸に対する前記工具の装着機構の駆動源であるモータのトルクを、前記工具の装着動作時に所定の時期で取得する取得工程と、
前記取得工程が取得した前記トルクを補間して補間トルクを生成する補間工程と、
前記補間工程が補間した前記補間トルクを微分演算する微分演算工程と、
前記微分演算工程が演算した微分値の内、最大又は最小となる値に対応する前記装着機構の位置又は角度を示す変位情報を、ピーク情報として決定する決定工程と、
前記決定工程が決定した前記ピーク情報を前記主軸に対する前記工具の使用回数または使用時間と対応付けて記憶する記憶工程と、
前記記憶工程が記憶した前記ピーク情報に基づき統計処理を行う統計処理工程と、
前記統計処理工程が統計処理した統計値に基づき、前記主軸に対する前記工具の装着状態を判定する判定工程と
を実行させるための数値制御プログラムを記憶した記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、数値制御装置、制御プログラム、及び記憶媒体に関する。
【背景技術】
【0002】
工作機械の主軸に工具を装着したか否かを判定可能な数値制御装置が公知である。特許文献1は、タレット式の工作機械の主軸に対して工具が装着したか否かを判定可能な数値制御装置を開示する。工作機械は、主軸、主軸ヘッド、Z軸モータ、ドローバ、及びアンクランプ操作部を備える。主軸は主軸ヘッドに回転可能に設ける。Z軸モータは、主軸ヘッドを上下方向に移動する。Z軸モータが主軸ヘッドを下方に移動した時、ドローバはクランプばねの付勢力により、工具ホルダを主軸にクランプする。Z軸モータが主軸ヘッドを上方に移動した時、ドローバはクランプばねの付勢力に抗し、工具ホルダのクランプ状態を解除する。Z軸モータの駆動電流値は、主軸に対する工具ホルダの装着状態に応じて変動する。故に、数値制御装置は、Z軸モータの駆動電流値と判定基準値とを比較することで、主軸に対する工具ホルダの装着状態を判断する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記方法では、主軸に対する工具の装着状態の僅かな変化を精度良く判定できない時がある。
【0005】
本発明の目的は、主軸に対する工具の装着状態の僅かな変化を高精度に判定できる数値制御装置、制御プログラム、及び制御プログラムを記憶した記憶媒体を提供することである。
【課題を解決するための手段】
【0006】
本発明の第一態様に係る数値制御装置は、主軸に装着した工具と作業台に固定した被削材を相対的に移動して前記被削材を加工する工作機械を制御する数値制御装置であって、前記主軸に対する前記工具の装着機構の駆動源であるモータのトルクを、前記工具の装着動作時に所定の時期で取得する取得部と、前記取得部が取得した前記トルクを補間して補間トルクを生成する補間部と、前記補間部が補間した前記補間トルクを微分演算する微分演算部と、前記微分演算部が演算した微分値の内、最大又は最小となる値に対応する前記装着機構の位置又は角度を示す変位情報を、ピーク情報として決定する決定部と、前記決定部が決定した前記ピーク情報を前記主軸に対する前記工具の使用回数または使用時間と対応付けて記憶する記憶部と、前記記憶部が記憶した前記ピーク情報に基づき統計処理を行う統計処理部と、前記統計処理部が統計処理した統計値に基づき、前記主軸に対する前記工具の装着状態を判定する判定部とを備えたことを特徴とする。
【0007】
数値制御装置は、トルクを補間した補間トルクに基づいて工具の装着状態を判定することにより、工具の装着状態の僅かな変化を高精度に判定できる。
【0008】
第一態様において、前記補間部は、線形近似により前記トルクを補間して前記補間トルクを生成してもよい。該時、数値制御装置は、簡易な方法で補間トルクを生成できるので、処理負荷の増大を抑制できる。
【0009】
第一態様において、前記補間部は、曲線近似により前記トルクを補間して前記補間トルクを生成してもよい。数値制御装置は、実際のトルクと良好に近似した補間トルクを生成できるので、工具の装着状態の僅かな変化を更に高精度に判定できる。
【0010】
第一態様において、前記補間部が補間した前記補間トルクにローパスフィルタを適用する第一フィルタ処理部を備え、前記微分演算部は、前記第一フィルタ処理部が前記ローパスフィルタを適用した前記補間トルクを微分演算してもよい。数値制御装置は、補間トルクの雑音成分を除去できるとともに、補間トルクをなだらかにすることで正確なピーク情報を決定できる。
【0011】
第一態様において、前記取得部が取得した前記トルクにローパスフィルタを適用する第二フィルタ処理部を備え、前記補間部は、前記第二フィルタ処理部が前記ローパスフィルタを適用した前記トルクを補間して前記補間トルクを生成してもよい。数値制御装置は、雑音成分を除去したトルクから補間トルクを生成することにより、実際のトルクと良好に近似した補間トルクを生成できる。
【0012】
第一態様において、前記統計値として前記記憶部が記憶した前記ピーク情報から最新の前記ピーク情報である第一ピーク情報及び異常発生時の前記ピーク情報を除いた対象ピーク情報のうち最新の前記対象ピーク情報である第二ピーク情報から数えて所定数の平均値を算出し、前記判定部は、前記統計処理部が算出した前記平均値に基づき、前記装着状態を判定してもよい。ピーク情報の平均値に基づく判定は、モータの駆動電流値に基づく判定と比べ、工具の経年変化による影響を受け難い。従って数値制御装置は、装着状態を更に精度良く判定できる。
【0013】
第一態様において、前記判定部は、前記第一ピーク情報と、前記統計処理部が算出した前記平均値に基づき決定した閾値とに基づき、前記装着状態を判定してもよい。工具の装着状態に応じ、平均値に対してピーク情報は大きく変動する。数値制御装置は、平均値に基づいて決定した閾値を用いて工具の装着状態を判定することで、装着状態を高精度に判定できる。
【0014】
第一態様において、前記統計処理部は、前記対象ピーク情報のうち前記第二ピーク情報から数えて前記所定数の標準偏差を更に算出し、前記判定部は、前記第一ピーク情報と、前記平均値と前記標準偏差に基づき決定した前記閾値とに基づき、前記装着状態を判定してもよい。該時、数値制御装置は、ピーク情報の変動の度合いを考慮して閾値を決定できる。従って数値制御装置は、工具の装着状態を高精度に判定できる。
【0015】
第一態様において、記装着機構は、前記モータの駆動で所定方向に往復移動可能であり、前記主軸を回転可能に支持する主軸ヘッドを備え、前記モータは、前記主軸ヘッドを前記所定方向に移動することで前記主軸に対して前記工具を装着し、前記変位情報は、前記主軸ヘッドの前記所定方向における位置であってもよい。数値制御装置は、所謂タレット式の工作機械について、工具の装着状態を精度良く判定できる。
【0016】
第一態様において、前記装着機構は、前記モータの駆動で回転する回転軸と、前記回転軸の回転と同期して回転し、前記主軸に装着する前記工具を支持可能なアームとを備え、前記モータは、前記回転軸を回転することで、前記アームと共に回転する前記工具を前記主軸に対して装着し、前記変位情報は、前記回転軸の回転角度であってもよい。数値制御装置は、所謂アーム式の工作機械について、工具の装着状態を精度良く判定できる。
【0017】
本発明の第二態様に係る制御プログラムは、主軸に装着した工具と作業台に固定した被削材を相対的に移動して前記被削材を加工する工作機械を制御するコンピュータに、前記主軸に対する前記工具の装着機構の駆動源であるモータのトルクを、前記工具の装着動作時に所定の時期で取得する取得工程と、前記取得工程が取得した前記トルクを補間して補間トルクを生成する補間工程と、前記補間工程が補間した前記補間トルクを微分演算する微分演算工程と、前記微分演算工程が演算した微分値の内、最大又は最小となる値に対応する前記装着機構の位置又は角度を示す変位情報を、ピーク情報として決定する決定工程と、前記決定工程が決定した前記ピーク情報を前記主軸に対する前記工具の使用回数または使用時間と対応付けて記憶する記憶工程と、前記記憶工程が記憶した前記ピーク情報に基づき統計処理を行う統計処理工程と、前記統計処理工程が統計処理した統計値に基づき、前記主軸に対する前記工具の装着状態を判定する判定工程とを実行させる。第二態様によれば、第一態様と同様の効果を奏する。
【0018】
本発明の第三態様に係る記憶媒体は、主軸に装着した工具と作業台に固定した被削材を相対的に移動して前記被削材を加工する工作機械を制御するコンピュータに、前記主軸に対する前記工具の装着機構の駆動源であるモータのトルクを、前記工具の装着動作時に所定の時期で取得する取得工程と、前記取得工程が取得した前記トルクを補間して補間トルクを生成する補間工程と、前記補間工程が補間した前記補間トルクを微分演算する微分演算工程と、前記微分演算工程が演算した微分値の内、最大又は最小となる値に対応する前記装着機構の位置又は角度を示す変位情報を、ピーク情報として決定する決定工程と、前記決定工程が決定した前記ピーク情報を前記主軸に対する前記工具の使用回数または使用時間と対応付けて記憶する記憶工程と、前記記憶工程が記憶した前記ピーク情報に基づき統計処理を行う統計処理工程と、前記統計処理工程が統計処理した統計値に基づき、前記主軸に対する前記工具の装着状態を判定する判定工程とを実行させるための数値制御プログラムを記憶する。第三態様によれば、第一態様と同様の効果を奏する。
【図面の簡単な説明】
【0019】
【
図4】工作機械1Aと数値制御装置30Aの電気的構成を示すブロック図。
【
図5】Z軸モータ51Aのトルクと微分値を示すグラフ。
【
図6】線形近似前において、完全装着状態(A)と不完全装着状態(B)(C)との夫々におけるピーク位置を示すグラフ。
【
図8】線形近似後において、完全装着状態(A)と不完全装着状態(B)(C)との夫々におけるピーク位置を示すグラフ。
【
図16】本体部401B内における旋回軸43BとATC駆動軸46B周囲の断面図。
【
図17】数値制御装置50Bと工作機械1Bの電気的構成を示すブロック図。
【発明を実施するための形態】
【0020】
<第一実施形態>
本発明の第一実施形態を説明する。以下説明は図中に矢印で示す左右、前後、上下を使用する。
図1に示す工作機械1Aの左右方向、前後方向、上下方向は、夫々、X軸方向、Y軸方向、Z軸方向である。工作機械1Aは主軸9Aに装着した工具体40A(
図2参照)の工具4Aを回転し、テーブル13A上面に保持した被削材に切削加工を施す機械である。数値制御装置30Aは工作機械1Aの動作を制御する。
【0021】
<工作機械1Aの概要>
図1、
図2の如く、工作機械1Aは基台2A、コラム5A、主軸ヘッド7A、主軸9A、テーブル装置10A、工具交換装置20A、制御箱6A、操作盤15A(
図4参照)等を備える。基台2Aは略直方体状の金属製土台である。コラム5Aは基台2A上部後方に固定する。
【0022】
主軸ヘッド7Aはコラム5A前面に設けたZ軸移動機構(図示略)でZ軸方向に昇降する。Z軸移動機構はZ軸モータ51A(
図4参照)等を備える。Z軸移動機構はZ軸モータ51Aの駆動に応じて主軸ヘッド7AをZ軸方向に移動する。主軸ヘッド7Aは上部に主軸モータ52Aを備える。主軸9Aは主軸ヘッド7Aの内部に回転可能に設ける。主軸9Aは下端部(先端部)に装着穴92Aを有する。主軸9Aは装着穴92Aに工具ホルダ17Aを装着し、主軸モータ52Aの駆動に応じて回転する。工具ホルダ17Aは工具4Aを保持する。工具4A及び工具ホルダ17Aは、工具体40Aを構成する。
【0023】
テーブル装置10Aはテーブル13A、Y軸モータ54A(
図4参照)、X軸モータ53A(
図4参照)等を備える。テーブル13AはX軸モータ53AとY軸モータ54Aにより、基台2A上をX軸方向とY軸方向に移動可能である。
【0024】
工具交換装置20Aは主軸ヘッド7A前側に設け、工具マガジン21Aを備える。工具マガジン21Aは円状に配列した複数のグリップアーム90Aを外周に備える。グリップアーム90Aは工具ホルダ17Aを把持する。工具交換装置20Aはマガジンモータ55A(
図4参照)の駆動に応じて工具マガジン21Aを回転する。
【0025】
制御箱6Aはコラム5Aの背面側に固定し、数値制御装置30A(
図4参照)を格納する。数値制御装置30AはZ軸モータ51A、主軸モータ52A、X軸モータ53A、Y軸モータ54Aを夫々制御し、テーブル13A上に保持した被削材と主軸9Aに装着した工具4Aを相対移動することで各種加工を被削材に施す。各種加工とは、ドリル、タップ等を用いた穴空け加工、エンドミル、フライス等を用いた側面加工等である。
【0026】
操作盤15Aは工作機械1Aを覆うカバー(図示略)の外壁等に設ける。操作盤15Aは入力部24A(
図4参照)と表示部25A(
図4参照)を備える。入力部24Aは各種情報、操作指示等の入力を受付け、数値制御装置30Aに入力情報を出力する。表示部25Aは数値制御装置30Aからの指令に基づき各種画面、異常情報等を表示する。
【0027】
<主軸ヘッド7Aと主軸9Aの内部構造>
図2、
図3の如く、主軸ヘッド7Aは前方下部の内側に主軸9Aを回転可能に支持する。主軸9Aは上下方向に回転軸を有する。主軸9Aは主軸モータ52Aの駆動軸に連結し、主軸モータ52Aの駆動で回転する。
図3の如く、主軸9Aは軸穴91A、装着穴92A、空間93A、下部摺動穴94A、クランプ軸81A、ばね82Aを備える。軸穴91Aは主軸9Aの中心を通る。装着穴92Aは主軸9Aの先端部に設ける。工具ホルダ17Aは装着穴92Aに装着する。工具ホルダ17Aは一端側に工具4Aを保持し、他端側にテーパ装着部180Aとプルスタッド181Aを備える。テーパ装着部180Aは円錐状である。プルスタッド181Aは円柱部182Aと頂上部183Aを備える。円柱部182Aは円柱形状で、テーパ装着部180Aの上端部から上方に延びる。頂上部183Aは円柱部182Aの上端部に設け、径方向の大きさが円柱部182Aより大きい。テーパ装着部180Aは主軸9Aの装着穴92Aに密着して装着する。空間93Aは装着穴92A上部に連続して設ける。下部摺動穴94Aは軸穴91Aの下端部と空間93Aとの間に連続して設ける。
【0028】
クランプ軸81Aは軸穴91A内に挿入し且つ上下方向に移動可能に設ける。クランプ軸81Aはピン支持部811A、軸部812A、ホルダ把持部813Aを備える。ピン支持部811Aは円柱形状でクランプ軸81Aの上端に位置し、後述するピン58Aを支持する。軸部812Aは円柱形状でありピン支持部811Aから下方に延びる。ホルダ把持部813Aは軸部812Aの下端に位置し、複数の鋼球(図示略)を有する。ばね82Aは軸穴91Aの中に挿入し、ばね82Aの上端はピン支持部811Aと係合し、クランプ軸81Aをばね力で上方に常時付勢する。クランプ軸81Aがばね82Aの弾性力に抗して下方向に移動し、ばね82Aが縮むことで、ホルダ把持部813Aは下部摺動穴94Aから空間93Aに出て、工具ホルダ17Aのプルスタッド181Aの固定を解除する。クランプ軸81Aが下方移動した状態からばね82Aの弾性力により上に移動すると、ホルダ把持部813Aは空間93Aから下部摺動穴94Aに移動し、プルスタッド181Aの頂上部183Aを保持して固定する。故にクランプ軸81Aは工具ホルダ17Aをばね82Aにより上方に引張り上げた状態で、工具体40Aを主軸9Aに固定する。
【0029】
図2の如く、主軸ヘッド7Aは後方上部にレバー60Aを備える。レバー60Aは略L字型であり支軸61Aを中心に揺動する。支軸61Aは主軸ヘッド7A内に固定する。レバー60Aは縦方向レバー63Aと横方向レバー62Aを備える。縦方向レバー63Aは支軸61Aからコラム5A側に対して斜め上方に延びて中間部65Aで上方に折曲して更に上方に延びる。横方向レバー62Aは支軸61Aからコラム5A前方に略水平に延びる。横方向レバー62Aの先端部はクランプ軸81Aに直交して突設したピン58Aに上方から係合可能である。縦方向レバー63Aは上端部の背面に板カム体66Aを備える。板カム体66Aはコラム5A側にカム面を備える。板カム体66Aのカム面は上側軸受部27Aに固定したカムフォロア67Aと接離可能である。カムフォロア67Aは板カム体66Aのカム面を摺動する。引張コイルバネ(図示略)は縦方向レバー63Aと主軸ヘッド7Aとの間に設ける。レバー60Aを右側面から見た時、引張コイルバネはレバー60Aを時計回りに常時付勢する。故にレバー60Aは横方向レバー62Aによるピン58Aの下方向への押圧を常時解除する。
【0030】
<工具体40Aの着脱、交換動作>
図2の如く、工具ホルダ17Aのテーパ装着部180Aを装着穴92Aに装着した状態で、Z軸モータ51Aの回転により主軸ヘッド7Aが上昇する。レバー60Aの板カム体66Aはカムフォロア67Aに接触して摺動する。板カム体66Aのカム形状に沿ってカムフォロア67Aが摺動すると、レバー60Aは右側方から見た時に支軸61Aを中心に反時計回りに回転する。横方向レバー62Aはピン58Aに上方から係合してクランプ軸81Aを下方に押圧する。クランプ軸81Aはばね82Aのばね力に抗してホルダ把持部813Aを下方に付勢する。ホルダ把持部813Aは工具ホルダ17Aのプルスタッド181Aの固定を解除する。工具ホルダ17Aが主軸9Aの装着穴92Aから外れ、工具体40Aは主軸9Aから脱離する。主軸9Aから脱離した工具体40Aを、第一工具体と称す。工具交換装置20Aの複数のグリップアーム90Aのうち、工具交換位置にある一のグリップアーム90A(以下、第一グリップアームと称す)は、主軸9Aから脱離した第一工具体を把持する。工具交換位置は工具マガジン21Aの最下部位置である。
【0031】
工具交換装置20Aはマガジンモータ55Aにより工具マガジン21Aを回転し、NCプログラムの工具交換指令が指示する工具4Aを含む工具体40A(以下、第二工具体と称す)を、工具交換位置に位置決めする。該時、工具マガジン21Aは主軸9Aから脱離した工具体40Aである第一工具体が工具交換位置にある状態から、新たに主軸9Aに装着する工具体40Aである第二工具体が工具交換位置にある状態まで回転する。工具マガジン21Aは第二工具体を他のグリップアーム90A(以下、第二グリップアームと称す)に把持した状態で回転する。
【0032】
工具交換位置に第二工具体が配置した状態で、Z軸モータ51Aの回転により主軸ヘッド7Aが下降する。第二工具体の工具ホルダ17Aのテーパ装着部180Aが装着穴92Aに挿入する。板カム体66Aはカムフォロア67Aに摺動すると、レバー60Aは右側方から見た時に支軸61Aを中心に時計回りに回転する。故に横方向レバー62Aはピン58Aから離れ、クランプ軸81Aの下方への押圧を解除する。クランプ軸81Aはホルダ把持部813Aの下方への付勢を解除し、ばね82Aのばね力で上方に移動する。ホルダ把持部813Aはプルスタッド181Aを上方に引張り、プルスタッド181Aを固定する。工具交換装置20Aの第二グリップアームから第二工具体が脱離する。主軸9Aの装着穴92Aに対して工具ホルダ17Aのテーパ装着部180Aの装着が完了し、主軸9Aに対する第二工具体の装着が完了する。
【0033】
主軸9Aに工具体40Aを装着する時のクランプ軸81A、レバー60Aの動作を、装着動作と称す。装着動作時にZ軸モータ51Aの回転で駆動する主軸ヘッド7A、レバー60A等を、装着機構と称す。
【0034】
<電気的構成>
図4を参照し、数値制御装置30Aと工作機械1Aの電気的構成を説明する。数値制御装置30AはCPU31A、ROM32A、RAM33A、記憶装置34A、入力インタフェイス351A、出力インタフェイス352A等を備える。CPU31Aは数値制御装置30Aを統括制御する。ROM32Aは各種プログラムを記憶する。RAM33Aは処理実行中の各種データを記憶する。記憶装置34Aは不揮発性メモリであり、NCプログラム等を記憶する。NCプログラムは複数のブロックで構成し、各ブロックは工具交換指令等の少なくとも一つの指令を含む。又、記憶装置34Aは主軸9Aに工具体40Aを装着した装着回数(使用回数に相当)を、工具体40A毎に記憶する。CPU31Aは主軸9Aに対する工具体40Aの装着動作時、装着動作を行う工具体40Aに対応する装着回数に1加算する。CPU31Aは主軸9Aに装着した工具体40Aを脱離して別の工具体40Aに付替えた時、脱離した工具体40Aに対応する装着回数を0とする。
【0035】
操作盤15Aの入力部24Aは入力インタフェイス351Aに電気的に接続する。操作盤15Aの表示部25Aは出力インタフェイス352Aに電気的に接続する。Z軸モータ51A、主軸モータ52A、X軸モータ53A、Y軸モータ54A、マガジンモータ55Aは出力インタフェイス352Aに電気的に接続する。Z軸モータ51A、主軸モータ52A、X軸モータ53A、Y軸モータ54A、マガジンモータ55Aは、出力インタフェイス352Aが出力するパルス信号に応じて回転するサーボモータである。Z軸モータ51Aはエンコーダ511Aを備える。主軸モータ52Aはエンコーダ521Aを備える。X軸モータ53Aはエンコーダ531Aを備える。Y軸モータ54Aはエンコーダ541Aを備える。マガジンモータ55Aはエンコーダ551Aを備える。エンコーダ511A、521A、531A、541A、551Aは主軸モータ52A、X軸モータ53A、Y軸モータ54A、マガジンモータ55Aの回転角度を夫々検出する。エンコーダ511A、521A、531A、541A、551Aは入力インタフェイス351Aに電気的に接続する。
【0036】
<装着状態の判定方法>
工具4Aにより被削材を加工でき且つ切削精度に影響が出ない態様で主軸9Aに工具体40Aが装着した状態を、完全装着状態と称す。これに対し、主軸9Aに対する工具体40Aの装着が不完全な状態(以下、不完全装着状態と称す。)で切削加工を実行した時、工作機械1Aは切削精度が低下する可能性がある。不完全装着状態はテーパ装着部180Aと装着穴92Aの間に異物が付着したまま工具体40Aを装着した状態である。不完全装着状態において、装着動作時でのホルダ把持部813Aがプルスタッド181Aを引張り上げて固定する位置は、完全装着状態における位置より下方になる。完全装着状態と不完全装着状態を、装着状態と総称する。
【0037】
装着動作を行う為に主軸ヘッド7AをZ軸方向に移動する時、Z軸モータ51Aのトルクの経時変化は装着状態に応じて変動する。該理由は主軸ヘッド7Aの移動時にレバー60Aの板カム体66Aがカムフォロア67Aに接触または離れる時機が主軸9Aに対する工具体40Aの装着状態に応じて変化する為である。
【0038】
図5(A)は装着動作時における主軸ヘッド7AのZ軸方向の位置(横軸)とZ軸モータ51Aのトルク(縦軸)との関係を示すグラフである。
図5(A)は工作機械1Aの振動等による影響を除く為、工作機械1Aの固有振動を除去可能なローパスフィルタによる処理を施してある。横軸の基準0[mm]は、工具装着動作完了時の主軸ヘッド7AのZ軸方向の位置に対応する。具体的には基準0は機械原点であり、加工可能な再上端位置である。横軸の正方向は上方向に対応する。装着動作時に主軸ヘッド7Aは工具マガジン21Aが回転可能な上端位置から、基準0である下方に移動する。
【0039】
図5(B)は装着動作時における主軸ヘッド7AのZ軸方向の位置(横軸)とZ軸モータ51Aのトルクの時間微分値(以下、微分値と称す)(縦軸)との関係を示すグラフである。
図5(B)おいて、装着動作時における微分値が最小となる場合の主軸ヘッド7AのZ軸方向の位置を、ピーク位置と称す。ピーク位置は、ホルダ把持部813Aがプルスタッド181Aを引っ張り上げて固定する位置に起因する。装着状態の違いにより、ピーク位置は変化する。より詳細には、装着状態が不完全装着状態の時、ピーク位置は完全装着状態のピーク位置より上方になる。
【0040】
故に、数値制御装置30AのCPU31AはZ軸モータ51Aのトルクを装着動作時に時系列で周期的に取得する。CPU31Aは取得したZ軸モータ51Aのトルクを時間微分して微分値を算出する。CPU31Aは微分値とZ軸モータ51Aの駆動で下降する主軸ヘッド7AのZ軸方向の位置とを対応付けてRAM33Aに記憶する。CPU31AはRAM33Aが記憶する微分値からピーク位置を決定する。CPU31Aは装着動作を実行する度に、決定したピーク位置を工具体40A毎の装着回数に対応付けて、記憶装置34Aに順次記憶する。CPU31Aはピーク位置を記憶装置34Aに記憶する度に、該ピーク位置を統計処理して統計値を算出する。より具体的には、CPU31Aは記憶装置34Aに記憶したピーク位置から最新のピーク位置(以下、第一ピーク位置と称す)と不完全装着状態となった時のピーク位置を除いたピーク位置(以下、対象ピーク位置と称す)のうち最新の対象ピーク位置(以下、第二ピーク位置と称す)から数えて所定数のピーク位置を抽出し、その平均値μと標準偏差σを統計値として算出する。CPU31Aは第一ピーク位置、即ち、装着動作時のピーク位置が、平均値μと標準偏差σの6倍との和(μ+6σ。以下、判定閾値と称す。)より大きい場合、装着動作後の装着状態が不完全装着状態であると判定する。
【0041】
上記判定方法において、CPU31AがZ軸モータ51Aのトルクを取得する周期(取得周期と称す)は、装着状態の判定精度に影響する。取得周期は短い方が判定精度は向上するが、取得周期を短くする程CPU31Aの処理負荷は増大する。
【0042】
図6は、0.5ms周期で取得したZ軸モータ51Aのトルクに対してローパスフィルタを適用後の微分値から求めたピーク位置の度数(回数)と、ピーク位置の平均値μを示す。
図6(A)は、完全装着状態の結果であり、トルクを50回取得している。更に
図6(A)では、標準偏差σと判定閾値μ+6σを示す。
図6(B)は、テーパ装着部180Aと装着穴92Aの間に85μmの紙が1枚付着した不完全装着状態の結果であり、トルクを10回取得している。
図6(C)は、テーパ装着部180Aと装着穴92Aの間に85μmの紙が2枚付着した不完全装着状態の結果であり、トルクを10回取得している。
【0043】
図6(A)に示す完全装着状態の結果では、標準偏差σが非常に小さくなり、判定閾値μ+6σは平均値μと略一致する。該時、工具体40Aを主軸9Aに装着して完全装着状態となった時も、ピーク位置が判定閾値μ+6σより大きくなり不完全装着状態と誤って判定する可能性がある。
【0044】
また、
図6(B)に示す不完全装着状態の結果では、ピーク位置の分布が2つの山に分かれている。該分布はとなる理由は、0.5ms周期とZ軸モータ51Aの移動速度の関係から、取得したピーク位置が飛び飛びになることが原因であると示唆される。このように正規分布からかけ離れたデータからは正しく標準偏差を求めることは出来ない。
【0045】
これに対し、第一実施形態においてCPU31Aは、線形近似によりトルクを補間して補間トルクを生成する。補間トルクの生成方法について、
図7を参照して具体的に説明する。
図7(A)は、取得したZ軸モータ51Aのトルク(y軸)と、トルクを取得した時の主軸ヘッド7AのZ軸方向の位置(x軸。以下、変位情報と称す)との関係を示すグラフである。CPU31AがZ軸モータ51AのトルクT(1)、T(5)、T(9)を連続して取得した場合を例示する。トルクT(1)、T(5)、T(9)を取得した時の変位情報は、s(1)、s(5)、s(9)である。
【0046】
図7(B)に示すように、CPU31Aは、連続して取得した2つのトルクT(1)、T(5)の間を直線で連結する。CPU31Aは、連結した直線上の複数の点であってx軸方向に等時間間隔に配置した複数の点を決定する。CPU31Aは、該複数の点の各々のy座標を、トルクT(2)、T(3)、T(4)として決定する。CPU31Aは、該複数の点の各々のx座標を、トルクT(2)、T(3)、T(4)に対応する変位情報s(2)、s(3)、s(4)として決定する。CPU31Aは同様の方法で、連続して取得した2つのトルクT(5)、T(9)からトルクT(6)、T(7)、T(8)を決定し、対応する変位情報s(6)、s(7)、s(8)を決定する。以上により生成したトルクT(1)~(9)を、補間トルクと称す。
【0047】
CPU31Aは、0.5ms周期で取得したトルクから生成した補間トルクにローパスフィルタを適用後、時間微分して微分値を算出し、ピーク位置を決定する。
図8は、ピーク位置の度数(回数)と、該微分値に基づき算出した平均値μを示す。
図8(A)は、完全装着状態の結果であり、補間トルクの数を50に設定してある。更に
図8(A)では、標準偏差σと判定閾値μ+6σを示す。
図8(B)は、テーパ装着部180Aと装着穴92Aの間に85μmの紙が1枚付着した不完全装着状態の結果であり、補間トルクの数を10に設定してある。
図8(C)は、テーパ装着部180Aと装着穴92Aの間に85μmの紙が2枚付着した不完全装着状態の結果であり、補間トルクの数を10に設定してある。
【0048】
図8(A)に示す完全装着状態の結果では、標準偏差σは0.0243となり、判定閾値μ+6σは35、3875となった。これに対し、
図8(B)に示す不完全装着状態の結果では平均値μが35.8403となり、
図8(C)に示す不完全装着状態の結果では平均値μが36.3724となった。何れの場合も、判定閾値μ+6σより大きくなるため、不完全装着状態を判定可能であることが分かる。
【0049】
また、
図6(A)~(C)と比較し、
図8(A)~(C)におけるピーク位置の分布は正規分布に近く、標準偏差を求めることができる。
【0050】
<主処理>
図9、
図10を参照し、主処理を説明する。作業者は主軸9Aに装着する工具体40Aを交換する時、入力部24Aを操作する。入力部24Aは作業者の操作に応じてCPU31Aに工具交換指令を送信する。CPU31Aは工具交換指令を受信した時、ROM32Aに記憶した制御プログラムを読出して実行することにより主処理を開始する。主処理の開始時、主軸ヘッド7Aは最下位(例えば基準点0)にある。
【0051】
図9の如く、CPU31Aは主軸ヘッド7Aが最上位に達するまで上昇処理を実行する(S11)。上昇処理において、CPU31AはZ軸モータ51Aを回転し、主軸ヘッド7Aが上昇する。CPU31Aは主軸ヘッド7Aが最上位に達したか否かを判定する(S13)。主軸ヘッド7Aが最上位に達していないと判定時(S13:NO)、CPU31Aは処理をS11に戻す。CPU31Aは主軸ヘッド7Aが最上位に達する迄、S13の判定を所定周期で繰り返す。主軸ヘッド7Aが最上位に達したか否かは、エンコーダ511Aから取得したZ軸モータ51Aの回転角度に基づく主軸ヘッド7AのZ軸方向の位置で判断する。
【0052】
主軸ヘッド7Aが最上位に達したと判定時(S13:YES)、CPU31Aはマガジン回転処理を実行する(S15)。マガジン回転処理において、CPU31Aはマガジンモータ55Aを駆動して工具マガジン21Aを回転し、工具体40A(第二工具体)を工具交換位置に位置決めする。
【0053】
CPU31Aは主軸ヘッド7Aが最下位に達するまで下降処理を実行する(S17)。下降処理において、CPU31AはZ軸モータ51Aを回転する。下降処理におけるZ軸モータ51Aの回転方向は上昇処理と逆方向である。CPU31AはZ軸モータ51Aのトルクの取得を開始する(S19)。以降、CPU31Aは所定の取得周期(例えば0.5ms)でZ軸モータ51Aのトルクを取得する。
【0054】
CPU31Aは主軸ヘッド7Aが最下位に達したか否かを判定する(S21)。主軸ヘッド7Aが最下位に達したか否かは、エンコーダ511Aから取得したZ軸モータ51Aの回転角度に基づく主軸ヘッド7AのZ軸方向の位置で判断する。主軸ヘッド7Aが最下位に達していないと判定時(S21:NO)、CPU31Aは新規でトルクを取得したか否かを判定する(S23)。新規でトルクを取得していない時(S23:NO)、CPU31Aは処理をS21に戻す。新規でトルクを取得した時(S23:YES)、CPU31Aは、前回取得したトルクと、新規で取得したトルクに基づき、線形近似により補間トルクを生成する(S25)。CPU31Aは、生成した補間トルクにローパスフィルタを適用する(S27)。ローパスフィルタの適用は、移動平均フィルタを2回適用することにより実現する。
【0055】
CPU31AはS25でローパスフィルタを適用した補間トルクを時間微分する微分演算処理を実行する(S29)。CPU31Aは微分演算した微分値と、該微分値に対応する変位情報とを対応付けてRAM33Aに記憶する(S31)。CPU31Aは主軸ヘッド7Aが最下位に達する迄、S23からS31の処理を繰り返し、微分値及び変位情報をRAM33Aに記憶する。
【0056】
主軸ヘッド7Aが最下位に達したと判定時(S21:YES)、主軸9Aは工具体40A(第二工具体)を装着している。CPU31AはS19で開始したトルクの取得を停止する(S33)。CPU31AはS31の処理でRAM33Aに記憶した微分値のうち最小の微分値を決定する。CPU31Aは、決定した最小の微分値に対応付けた変位情報を、ピーク位置として決定する(S35)。CPU31Aは、記憶装置34Aに記憶した装着回数のうち主軸9Aに装着した工具体40Aに対応する装着回数を取得する。CPU31Aは、決定したピーク位置と取得した装着回数とを対応付けて記憶装置34Aに記憶する(S37)。CPU31Aは処理をS39(
図10参照)に進める。
【0057】
図10に示すように、CPU31Aは、主軸ヘッド7Aの下降時、工具交換位置に工具体40Aがあるか判定する(S39)。CPU31Aは、工具交換位置に工具体40Aがないと判定した場合(S39:NO)、処理をS53に進める。CPU31Aは、工具交換位置に工具体40Aがあると判定した場合(S39:YES)、処理をS41に進める。
【0058】
CPU31Aは、S37(
図9参照)の処理で記憶装置34Aに記憶したピーク位置のうち対象ピーク位置の合計が所定数以上か判定する(S41)。CPU31Aは、記憶装置34Aに記憶した対象ピーク位置の数が所定数未満の場合(S41:NO)、主処理を終了する。CPU31Aは、記憶装置34Aに記憶した対象ピーク位置の合計が所定数以上の場合(S41:YES)、統計処理を実行する(S47)。CPU31Aは統計処理において、記憶装置34Aに記憶した対象ピーク位置のうち第二ピーク位置から新しい順に数えて所定数分の対象ピーク位置を、装着回数に基づいて取得する。CPU31Aは取得した対象ピーク位置の平均値μと標準偏差σを算出する。CPU31Aは、統計処理において算出した平均値μ及び標準偏差σに基づき、μ+6σを判定閾値として決定する(S49)。
【0059】
CPU31Aは記憶装置34Aに記憶した第一ピーク位置が、S49の処理で決定した判定閾値(μ+6σ)より大きいか判定する(S51)。CPU31Aは、第一ピーク位置が判定閾値より大きいと判定時(S51:YES)、装着動作後の装着状態が不完全装着状態であると判定する。該時、CPU31Aは装着動作後の装着状態が不完全状態であることを報知するアラーム報知を、表示部25Aに表示する(S53)。CPU31Aは、記憶装置34Aに記憶した第一ピーク位置を削除する(S55)。CPU31Aは主処理を終了する。CPU31Aは、第一ピーク位置が判定閾値より大きくないと判定時(S51:NO)、は主処理を終了する。
【0060】
<第一実施形態の作用、効果>
数値制御装置30Aは、取得したZ軸モータ51Aのトルクを補間して補間トルクを生成する(S25)。数値制御装置30Aは、生成した補間トルクを時間微分した微分値に基づき、ピーク位置を決定する(S35)。数値制御装置30Aは、決定したピーク位置を統計処理して平均値μ及び標準偏差σを算出し、判定閾値(μ+6σ)を決定する(S47、S49)。数値制御装置30Aは、決定した判定閾値と第一ピーク位置との関係に基づき、装着動作後における工具体40Aの装着状態を判定する(S51)。数値制御装置30Aは、補間トルクを生成することで、ピーク位置の決定に用いるトルクの数を多くできるので、工具体40Aの装着状態の僅かな変化を高精度に判定できる。
【0061】
数値制御装置30Aは、線形近似によりトルクを補間して補間トルクを生成することにより、簡易な方法で補間トルクを生成できる。従って、数値制御装置30Aは、補間トルクの生成時における処理負荷の増大を抑制できる。
【0062】
数値制御装置30Aは、生成した補間トルクにローパスフィルタを適用し(S27)、ローパスフィルタを適用した補間トルクを微分演算する(S29)。該時、数値制御装置30Aは、生成した補間トルクの雑音成分を除去できるとともに、補間トルクをなだらかにすることで正確なピーク位置を決定できる。
【0063】
数値制御装置30Aは、ピーク位置に基づき平均値μを算出し(S47)、平均値μに基づき装着状態を判定する(S51)。尚、ピーク位置の平均値に基づく判定は、Z軸モータ51Aの駆動電流値に基づく判定と比べ、工具体40Aの経年変化による影響を受け難い。故に、数値制御装置30Aは、装着状態を精度良く判定できる。
【0064】
工具体40Aの装着状態に応じ、平均値μに対してピーク位置は大きく変動する。これに対し、数値制御装置30Aは、判定閾値(μ+6σ)と第一ピーク位置との関係に基づき装着状態を判定する(S51)。該時、判定閾値(μ+6σ)は、ピーク位置の変動度合を考慮した値となる。故に、数値制御装置30Aは、平均値μに対してピーク位置の測定値にばらつきがあっても、装着状態を高精度に判定できる。
【0065】
数値制御装置30Aは、所謂タレット式の工作機械1Aについて、工具体40Aの装着状態を精度良く判定できる。尚、実施形態のトルクを取得する所定の時期は所定の周期であったが、所定の位置でもよい。
【0066】
S19の処理を行うCPU31Aは、本発明の「取得部」の一例である。S25の処理を行うCPU31Aは、本発明の「補間部」の一例である。S29の処理を行うCPU31Aは、本発明の「微分演算部」の一例である。S35の処理を行うCPU31Aは、本発明の「決定部」の一例である。S37の処理を行うCPU31Aは、本発明の「記憶部」の一例である。S47の処理を行うCPU31Aは、本発明の「統計処理部」の一例である。S51の処理を行うCPU31Aは、本発明の「判定部」の一例である。S27の処理を行うCPU31Aは、本発明の「第一フィルタ処理部」の一例である。S19の処理は、本発明の「取得工程」の一例である。S25の処理は、本発明の「補間工程」の一例である。S29の処理は、本発明の「微分演算工程」の一例である。S35の処理は、本発明の「決定工程」の一例である。S37の処理は、本発明の「記憶工程」の一例である。S47の処理は、本発明の「統計処理工程」の一例である。S51の処理は、本発明の「判定工程」の一例である。
【0067】
<第二実施形態>
本発明の第二実施形態を説明する。以下説明は図中に矢印で示す左右、前後、上下を使用する。
図11に示す工作機械1Bの左右方向、前後方向、上下方向は、夫々、工作機械1BのX軸方向、Y軸方向、Z軸方向である。工作機械1Bは主軸7B(
図14参照)に装着した工具体40A(
図2参照)の工具4A(
図2参照)を回転し、回転台11Bに固定した被削材に切削加工を施す機械である。数値制御装置50B(
図17参照)は工作機械1Bの動作を制御する。
【0068】
<工作機械1Bの概要>
図11~
図16を参照し、工作機械1Bの構造を説明する。工作機械1Bは基台部2B、立柱5B、主軸ヘッド6B、主軸7B、工作台装置10B、工具交換装置40B(以下、ATC装置40Bと呼ぶ)等を備える。
【0069】
基台部2Bは平面視略矩形状の鉄製部材であり、上面後部側に台座部20Bを備える。台座部20BはX軸モータ21B(
図17参照)、Y軸モータ24B(
図17参照)等を備える。台座部20Bは立柱5BをX軸方向とY軸方向に移動可能に支持する。X軸モータ21B、Y軸モータ24Bの駆動により、立柱5Bは基台部2Bに対してX軸方向とY軸方向に移動する。立柱5Bは前面にZ軸移動機構103Bを備える。Z軸移動機構103Bは主軸ヘッド6BをZ軸方向に移動可能に支持する。工作台装置10Bは基台部2Bの台座部20B前方に設ける。工作台装置10Bは上部に回転台11Bを備える。回転台11Bは回転台モータ(図示略)の駆動によりZ軸方向に平行な回転軸線を中心に回転可能に設ける。被削材は回転台11Bに固定する。
【0070】
<主軸ヘッド6B>
図14の如く、主軸ヘッド6Bは内部に主軸7Bを回転可能に支持する。主軸7BはZ軸方向に延びる。主軸ヘッド6Bは上部に主軸モータ8Bを固定する。主軸モータ8Bの駆動軸は主軸7Bに連結する。主軸7Bは装着穴(図示略)、クランプ機構部(図示略)、ドローバ70B等を備える。装着穴は主軸7B下端部に設ける。主軸7B下端部は所定位置に凸状のキー(図示略)を有する。キーは工具4Aを保持する工具ホルダ17Aと係合可能である。クランプ機構部は主軸7Bの中心を通る軸穴(図示略)内で且つ装着穴上方に設ける。ドローバ70Bは主軸7Bの軸穴内に同軸上に挿入する。ドローバ70Bはバネ(図示略)で上方に常時付勢する。バネは弾性力により工具体40Aの工具ホルダ17Aを主軸7Bの装着穴に固定する。装着穴に工具ホルダ17Aを装着すると、クランプ機構部は工具ホルダ17Aを装着する。ドローバ70Bがクランプ機構部を下方に押圧すると、クランプ機構部は工具ホルダ17Aを主軸7Bから脱離する。
【0071】
主軸ヘッド6Bは後方上部内側に揺動腕部材60Bを備える。揺動腕部材60Bは略L字型で支軸61Bを中心に揺動自在である。支軸61Bは主軸ヘッド6B内部を左右方向に延び、主軸ヘッド6Bの左右両側壁に固定する。揺動腕部材60Bは縦腕部63Bと横腕部62Bを備える。縦腕部63Bは支軸61Bから立柱5B側に対して斜め上方に延びる。横腕部62Bは支軸61Bから前方に略水平に延びる。ピン71Bはドローバ70Bに直交して突設する。横腕部62Bの先端部621は二股状に形成し、ドローバ70Bは先端部621の間に配置する。先端部621はピン71Bに上方から係合可能である。揺動腕部材60Bを左側方から見た時、引張バネ(図示略)は揺動腕部材60Bを反時計回りに常時付勢する。故に揺動腕部材60Bは横腕部62Bによるピン71Bの下方向への押圧を常時解除する。
【0072】
図14、
図15の如く、主軸ヘッド6Bは該上部且つATC装置40B側にロッド支持部91Bを備える。ロッド支持部91Bはプッシュロッド92Bを前後方向に移動可能に支持する。プッシュロッド92Bは前後方向に延びる。揺動腕部材60Bの縦腕部63Bは上端部右側面に当接部631を備える。当接部631はプッシュロッド92B前端部に当接し、引張バネで常時後方に付勢する。故にプッシュロッド92B後端部はロッド支持部91Bから後方に向けて所定距離だけ常時突出する。プッシュロッド92B後端部を前方に押圧すると、揺動腕部材60Bは支軸61Bを中心に時計回り(左側面視)に揺動し、引張バネの付勢力に抗してドローバ70Bを押し下げる。クランプ機構部は工具ホルダ17Aを脱離する。工具体40Aは主軸7Bの装着穴から脱離可能となる。
【0073】
<ATC装置40B>
ATC装置40Bは所謂アーム式の交換装置である。
図11の如く、ATC装置40Bは支柱31B、32Bで主軸ヘッド6Bの右側方に支持する。ATC装置40Bは数値制御装置50Bからの制御信号を受け、主軸7Bの装着穴に装着する工具体40A(第一工具体201)を後述するNCプログラムで指定した他の工具体40A(第二工具体202)と入替え交換する。ATC装置40Bは本体部401Bと工具マガジン41B等を備える。
【0074】
図11~
図16の如く、本体部401Bは略直方体状であり、支柱31B、32Bで支持する。本体部401Bは操作部材47B、旋回軸43B、工具交換アーム44B、ATCモータ45B、ATC駆動軸46B、揺動レバー22B、23B等を備える。操作部材47Bは本体部401B内部に設け、Z軸方向に対して略平行に延びる棒状部材である。操作部材47B上端部は本体部401B上面に設けた開口部(図示略)から上方に突出する。操作部材47B下端部は揺動軸49Bを中心に揺動可能に軸支する。揺動軸49Bは本体部401B内部を左右方向に延び、本体部401Bの左右両側壁に固定する。故に操作部材47B上端部は揺動軸49Bを中心に前後方向に移動可能である。操作部材47BがZ軸方向に平行に延びる姿勢は基本姿勢である。操作部材47Bは上端部左側面に当接部48Bを備える。当接部48Bは左側方に突出する略円筒形状である。工具交換を行う為、主軸ヘッド6Bが
図12に示す位置(工具交換位置と称す)に移動した時、プッシュロッド92B後端部は当接部48B前方に位置する(
図15参照)。
【0075】
旋回軸43Bは本体部401B下部から下方に突出する円筒状に形成し、本体部401Bは旋回軸43Bを軸線回りに回転可能に支持する。旋回軸43BはZ軸方向に平行に延び且つ、上端部にスプライン15Bとスプライン副軸17Bを備える。スプライン15Bは段付孔16Bを備える。段付孔16Bはスプライン15Bの軸線に沿って所定深さを有する。支持部材39Bは長軸状に形成し、本体部401B上部に固定した上部機械フレーム38Bに固定する。支持部材39Bは段付孔16Bの上段に配設したブッシュ(図示略)を介して段付孔16Bに挿入する。
【0076】
スプライン副軸17Bは円筒状に形成し、スプライン15Bの外側に装着する。スプライン15Bはスプライン副軸17Bの内側を上下方向に移動可能である。軸受75B、76Bは本体部401Bの上方に固定し、スプライン副軸17Bを回転可能に支持する。故に旋回軸43Bは本体部401Bに対して支持部材39Bを中心に回転する。スプライン副軸17Bは外周にフランジ部171を備える。フランジ部171は上下面に従動ローラ182、183の軸を固定する。旋回軸43Bは軸方向中央部に円筒部34Bを同軸上に備える。円筒部34Bは外周面に円周溝342を有する。円筒部34Bを上下方向に移動すると、旋回軸43Bは支持部材39Bに沿って上下方向に移動する。
【0077】
本体部401B内部の下部は外軸ギヤ431Bを備える。外軸ギヤ431Bは中央に開口を有し、該開口に旋回軸43Bを挿入する。旋回軸43Bは外軸ギヤ431Bに対して上下に移動可能である。旋回軸43Bが後述する上死点に移動した時、外軸ギヤ431Bは工具交換アーム44Bに嵌合し、外軸ギヤ431Bの回転に伴い工具交換アーム44Bは回転する。旋回軸43Bが上死点から下方に移動した時、外軸ギヤ431Bは工具交換アーム44Bから離れ、外軸ギヤ431Bが回転しても工具交換アーム44Bは回転しない。外軸ギヤ431Bは上端部の外周に歯部432Bを備える。本体部401B内部の下部はセグメントギヤ66Bを回転可能に支持する。歯部432Bは、セグメントギヤ66Bに噛合する。セグメントギヤ66Bは揺動子571Bを支持する。揺動子571Bは円柱部37B下面に設けた平面溝カム33Bに従動する。
【0078】
工具交換アーム44Bは旋回軸43B下端部に直交し且つ水平方向に延びる。工具交換アーム44Bは外軸ギヤ431Bの回転に応じて回転し、且つ旋回軸43Bの上下動に応じて上死点から下死点までの間を上下に移動する。工具交換アーム44Bは両端部に把持部441、442を備える。詳述しないが、把持部441、442は、例えば平面視C状に形成し、且つ工具体40Aの工具ホルダ17Aに嵌り工具ホルダ17Aを把持する。工具交換アーム44Bは把持部441、442が把持した工具ホルダ17Aを固定するロック機構(図示略)を備え、ATCモータ45Bの回転角度に応じて工具ホルダ17Aの固定及び固定の解除を行う。故に把持部441、442は工具体40Aを着脱可能に把持する。
【0079】
本体部401Bは上面の前後方向略中央部に箱450を固定する。箱450は底壁が開口し、該開口周囲に軸受27Bを固定する。箱450上部はATCモータ45Bを固定し、上壁に設けた開口からATCモータ45Bの出力軸451Bが下方に突出する。ATC駆動軸46Bは旋回軸43Bの後方に設け、且つ旋回軸43Bと平行に上下方向に延びる。軸受27Bと軸受28BはATC駆動軸46Bを回転自在に支持する。軸受28Bは本体部401B底壁に固定する。ATC駆動軸46B上端部は箱450内部でカップリング45Cを介して出力軸451Bと連結する。ATC駆動軸46Bは軸方向中央部に円柱部37Bを同軸上に備える。円柱部37Bは外周面に溝カム371Bと溝カム372Bを備える。
【0080】
本体部401Bは内部に揺動レバー22Bの一端部に設けた支持点221Bを揺動可能に支持する。揺動レバー22Bは長軸状に形成し、その中央部に設けた係合子222Bは溝カム372Bに係合する。揺動レバー22Bの他端部に設けた接触子223Bは、円筒部34Bに設けた円周溝342に係合する。故にATC駆動軸46Bが一回転すると、揺動レバー22Bは溝カム372Bに従動して揺動し、旋回軸43Bと工具交換アーム44Bは軸方向に一往復する。揺動レバー23Bは長軸状に形成し、長さ方向一端部は溝カム371Bに係合する。揺動レバー23Bの他端部は、操作部材47Bに回転可能に軸支する。故にATC駆動軸46Bが回転すると、揺動レバー23Bは溝カム371Bに従動して揺動することに依り、操作部材47Bを基本姿勢の状態から前方に揺動する。上記の通り、操作部材47Bがプッシュロッド92B後端部を前方に押圧すると、工具ホルダ17Aは主軸7Bの装着穴から脱離可能となる。
【0081】
ATC駆動軸46Bは軸方向上部に円柱状のパラレルカム59Bを同軸上に備える。パラレルカム59Bは鍔状の板カム591B、592Bを有する複合カムである。板カム591B、592Bはスプライン副軸17Bの従動ローラ182、183に夫々当接する。故にATC駆動軸46Bが回転し、板カム591B,592Bと従動ローラ182,183が当接する時、工具交換アーム44Bは回転する。
【0082】
工具マガジン41Bは本体部401B右側面に固定し、側面視Y軸方向に長い略楕円形状である。工具マガジン41Bは内側に略楕円形状の工具通路を有し、該工具通路内に沿って複数の工具ポット411を収納する。工具ポット411は工具ホルダ17Aを着脱可能に装着する。工具マガジン41Bは下部前側に工具交換部(図示略)を備える。工具交換部は下方へ開口する。マガジンモータ42Bは工具マガジン41B上部前側に固定する。複数の工具ポット411はマガジンモータ42Bの駆動で工具通路内を移動する。数値制御装置50Bはマガジンモータ42Bを駆動し、第二工具体202(
図18参照)を装着する工具ポット411を工具交換部に搬送する。本実施形態にて、第一工具体201(
図18参照)は主軸7Bに現在装着し且つATC装置40Bによる工具交換時に主軸7Bから脱離する工具体に対応する。第二工具体202はATC装置40Bによる工具交換後、第一工具体201の代わりに主軸7Bに装着する工具体に対応する。
【0083】
<電気的構成>
図17を参照し、数値制御装置50Bと工作機械1Bの電気的構成を説明する。数値制御装置50BはCPU51B、ROM52B、RAM53B、記憶装置54B、入力インタフェイス55B、出力インタフェイス56B等を備える。CPU51Bは数値制御装置50Bを統括制御する。ROM52Bは各種プログラムを記憶する。RAM53Bは処理実行中の各種データを記憶する。記憶装置54Bは不揮発性メモリであり、NCプログラムの他、各種データを記憶する。NCプログラムは複数のブロックで構成し、各ブロックは工具交換指令等の少なくとも一つの指令を含む。又、記憶装置54Bは主軸7Bに工具体40Aを装着した装着回数を、工具体40A毎に記憶する。CPU51Bは主軸7Bに対する工具体40Aの装着動作時、装着動作を行う工具体40Aに対応する装着回数に1加算する。CPU51Bは主軸7Bに装着した工具体40Aを脱離して別の工具体40Aに付替えた時、脱離した工具体40Aに対応する装着回数を0とする。
【0084】
工作機械1Bは入力部82B、表示部90B、エアシリンダ88B等を更に備える。入力部82Bと表示部90Bは操作パネル(図示略)に設ける。入力部82Bは各種入力を受付ける。表示部90Bは各種画面を表示する。エアシリンダ88BはATC装置40Bに設ける。エアシリンダ88Bは工具ポット411を後述の垂直姿勢と水平姿勢との間で昇降するポット昇降機構(図示略)の駆動源である。工具ポット41Aは垂直姿勢の時、主軸ヘッド6Bが工具交換位置にある時の主軸7Bに対して左方に位置する。入力部82Bは入力インタフェイス55Bに電気的に接続する。エアシリンダ88B、表示部90Bは出力インタフェイス56Bに電気的に接続する。
【0085】
Z軸モータ19B、主軸モータ8B、X軸モータ21B、Y軸モータ24B、マガジンモータ42B、ATCモータ45Bは出力インタフェイス56Bに電気的に接続する。Z軸モータ19B、主軸モータ8B、X軸モータ21B、Y軸モータ24B、マガジンモータ42B、ATCモータ45Bは出力インタフェイス56Bが出力するパルス信号に応じて回転するサーボモータである。Z軸モータ19Bはエンコーダ19Cを備える。主軸モータ8Bはエンコーダ8Cを備える。X軸モータ21Bはエンコーダ21Cを備える。Y軸モータ24Bはエンコーダ24Cを備える。マガジンモータ42Bはエンコーダ42Cを備える。ATCモータ45Bはエンコーダ45Dを備える。エンコーダ19C、8C、21C、24C、42C、45DはZ軸モータ19B、主軸モータ8B、X軸モータ21B、Y軸モータ24B、マガジンモータ42B、ATCモータ45Bの回転角度を夫々検出する。エンコーダ19C、8C、21C、24C、42C、45Dは入力インタフェイス55Bに電気的に接続する。
【0086】
<工具体40Aの着脱、工具交換動作>
図18、
図19を参照し、工具交換動作を説明する。CPU51Bは主軸ヘッド6Bを工具交換位置(
図12参照)に移動する。プッシュロッド92B後端部は当接部48B前方に離間して位置する。該時のATC駆動軸46Bの回転角度を0°と称す。工具交換アーム44Bは上下方向において上死点に位置し、回転方向において待機位置に位置する。待機位置は把持部441、442が主軸7Bと工具交換部の中間に配置する位置である。
図18(1)(2)の如く、CPU51Bは第二工具体202を装着する工具ポット411を水平状態から垂直下方に90°倒すことに依り、第二工具体202を工具交換部の開口から下降する。工具ポット411は垂直状態となる。CPU51BはATCモータ45Bの駆動を開始する。
【0087】
図19の如く、ATCモータ45Bは時機T0で駆動を開始し、ATC駆動軸46Bを正転する。平面溝カム33Bは正転し、揺動子571Bを介してセグメントギヤ66Bと外軸ギヤ431Bが回転する。旋回軸43Bは時機T1で第一方向(平面視反時計回り)に回転を開始する。旋回軸43Bの回転に依り、工具交換アーム44Bは待機位置から第一方向に回転する。以下、工具交換アーム44Bが待機位置から第一方向に回転した時の角度を、旋回角度と称す。
【0088】
ATC駆動軸46Bの回転に伴い、揺動レバー23Bが揺動し、操作部材47Bは前方に揺動する。故に操作部材47Bの当接部48Bはプッシュロッド92B後端部に当接し前方に押圧する。プッシュロッド92Bは前方に移動し、揺動腕部材60Bの当接部631を前方に付勢する。揺動腕部材60Bは引張バネの付勢力に抗して支軸61Bを中心に右側面視時計回りに回転を開始する。揺動腕部材60Bの傾斜角度は3.7°から0°に向けて変化する(時機T2)。該時、横腕部62Bはピン71Bに対して上方から係合し、主軸7B内部に設けたバネの付勢力に抗してドローバ70Bを下方に押圧する。ドローバ70Bはクランプ機構部を下方に付勢する。
【0089】
ATC駆動軸46Bの回転角度が60°に達した時(時機T3)、工具交換アーム44Bの旋回角度は70°に達する。
図18(3)の如く、把持部441は主軸7Bに装着する第一工具体201を把持し、把持部442は工具交換部に位置する第二工具体202を把持する。
図19の如く、時機T3~T6の間、板カム591B、592Bは従動ローラ18A、18Bから離れ、工具交換アーム44Bの旋回角度は70°で維持する。
【0090】
ATC駆動軸46Bの回転角度が80°に達した時(時機T4)、
図18(4)の如く、主軸7B内部のクランプ機構部から第一工具体201が抜ける。工具交換アーム44Bは上死点から下死点に向けて下降を開始する。ATC駆動軸46Bの回転角度が90°位置に達した時(時機T5)、揺動腕部材60Bの傾斜角度は0°となり、第一工具体201と第二工具体202は主軸7Bと工具ポット411から下方に脱離する。
【0091】
時機T6で、板カム591B、592Bは従動ローラ18A、18Bに当接し、旋回軸43Bは旋回角度70°から再び第一方向に回転を開始する。工具交換アーム44Bは第一工具体201及び第二工具体202を把持した状態で、下死点に向けて下降しながら回転する。ATC駆動軸46Bの回転角度が130°の時(時機T7)、工具交換アーム44Bは下死点に達する。ATC駆動軸46Bの回転角度が230°の時(時機T8)、工具交換アーム44Bは下死点から上死点に向けて、回転しながら上昇を開始する。ATC駆動軸46Bの回転角度が260°の時(時機T9)、工具交換アーム44Bの旋回角度は250°となる。
図18(5)の如く、第一工具体201と第二工具体202の夫々の位置は互いに入替わる。第二工具体202は主軸7Bの下方に配置し、第一工具体201は工具交換部の工具ポット411の下方に配置する。板カム591B、592Bは従動ローラ18A、18Bから離れ、工具交換アーム44Bの旋回角度は250°で維持する。工具交換アーム44Bは上死点に向けて上昇し続ける。該時、第二工具体202は主軸7Bの装着穴に挿入し、第一工具体201は工具ポット411に挿入する。
【0092】
ATC駆動軸46Bの回転角度が270°に達した時(時機T10)、操作部材47Bは後方に揺動し始め、プッシュロッド92Bは後方に移動する。揺動腕部材60Bは引張バネの付勢力で支軸61Bを中心に右側面視反時計回りに回転を開始し、傾斜角度は0°から3.7°に向けて変化する。ATC駆動軸46Bの回転角度が280°位置に達した時(時機T11)、
図18(6)の如く、工具交換アーム44Bは上死点に達する。第二工具体202は主軸7Bの装着穴に装着し、第一工具体201は工具ポット411に装着する。工具ホルダ17Aは主軸7B下端のキーに係合し、第二工具体202は主軸7Bの装着穴に装着する。
【0093】
ATC駆動軸46Bの回転角度が300°に達した時(時機T12)、揺動子571Bが平面溝カム33Bに沿って所定方向に揺動する。揺動子571Bに従動するセグメントギヤ66Bは回転し、該セグメントギヤ66Bに歯部432Bを介して噛合する外軸ギヤ431Bは回転する。外軸ギヤ431Bの回転に伴い、工具交換アーム44Bは逆転して第二方向(平面視時計回り)に回転する。ATC駆動軸46Bの回転角度が330°に達した時(時機T13)、揺動腕部材60Bの傾斜角度は3.7°に戻る。ATC駆動軸46Bの回転角度が350°に到達した時(時機T14)、工具交換アーム44Bは旋回角度が180°の状態で回転を停止する。ATC駆動軸46Bの回転角度が360°に到達した時、CPU51BはATCモータ45Bを停止する。
図18(8)の如く、CPU51Bは工具マガジン41Bの工具交換部に位置する工具ポット411を垂直姿勢から水平姿勢に戻して上昇する。以上により、工具交換動作は完了する。主軸7Bに工具体40Aを装着する時のATC駆動軸46B、揺動腕部材60B、ドローバ70B、クランプ機構部の動作を、装着動作と称す。
【0094】
<装着状態の判定方法>
主軸7Bに対する工具体40Aの装着状態は、第一実施形態と同様、完全装着状態、不完全装着状態の何れかである。装着動作時におけるATC駆動軸46Bの回転角度とATCモータ45Bのトルクとの関係は、完全装着状態と不完全装着状態とで相違する。装着動作時において、ATCモータ45Bのトルクの時間微分値が最小となる場合のATC駆動軸46Bの回転角度を、ピーク角度と称す。第一実施形態同様、装着状態の違いにより、ピーク角度は変化する。より詳細には、装着状態が不完全装着状態の時、ピーク角度は完全装着状態のピーク角度より大きくなる。
【0095】
故に、数値制御装置50BのCPU51Bは第一実施形態と同様、装着動作時にATCモータ45Bのトルクを時系列で周期的に取得する。CPU51Bは装着動作を実行する度に、取得したATCモータ45Bのトルクを補完し、補間トルクを生成する。CPU51Bは生成した補間トルクを時間微分して微分値を算出する。CPU51Bは微分値とATC駆動軸46Bの回転角度とを対応付けてRAM53Bに記憶する。CPU51BはRAM53Bに記憶した微分値からピーク角度を決定する。CPU51Bは決定したピーク角度を工具体40A毎の装着回数に対応付けて、記憶装置54Bに順次記憶する。CPU51Bはピーク角度を記憶装置54Bに記憶する度に、該ピーク角度を統計処理して平均値μと標準偏差σを算出する。より具体的には、CPU51Bは記憶装置54Bに記憶したピーク角度から最新のピーク角度(以下、第一ピーク角度と称す)と不完全装着状態となった時のピーク角度を除いたピーク角度(以下、対象ピーク角度と称す)のうち最新のピーク角度(以下、第二ピーク角度と称す)から数えて所定数のピーク角度を抽出し、その平均値μと標準偏差σを統計値として算出する。CPU51Bは第一ピーク角度、即ち、装着動作時のピーク角度が、平均値μから標準偏差σの6倍の値を減算した判定閾値(μ-6σ)より大きい場合、装着動作後の装着状態が不完全装着状態であると判定する。
【0096】
第二実施形態では、補間トルクの生成方法が第一実施形態と相違する。第二実施形態においてCPU51Bは、曲線近似によりトルクを補間して補正トルクを生成する。補間トルクの生成方法について、
図20を参照して具体的に説明する。
図20(A)は、取得したATCモータ45Bのトルク(y軸)と、トルクを取得した時のATC駆動軸46Bの回転角度(x軸)との関係を示すグラフである。ATC駆動軸46Bの回転角度は、第一実施形態における主軸ヘッド7AのZ軸方向の位置に対応するため、第一実施形態と同様、変位情報と称す。CPU31AがATCモータ45BのトルクU(1)、U(5)、U(9)、U(13)を連続して取得した場合を例示する。トルクU(1)、U(5)、U(9)、U(13)を取得した時の変位情報は、a(1)、a(5)、a(9)、a(13)である。
【0097】
図20(B)に示すように、CPU51Bは、周知の曲線近似法により、連続して取得したトルクU(1)、U(5)、U(9)、U(13)との距離が最小となるような近似曲線を算出する。CPU31Aは、算出した近似曲線上の複数の点であってx軸方向に等時間間隔に配置した複数の点を決定する。CPU51Bは、該複数の点の各々のy座標を、トルクU(1)、U(2)´~U(12)´、U(13)として決定する。CPU51Bは、該複数の点の各々のx座標を、U(1)、U(2)´~U(12)´、U(13)に対応する変位情報a(1)~a(13)として決定する。以上により生成したトルクU(1)、U(2)´~U(12)´、U(13)を、第一実施形態と同様、補間トルクと称す。曲線近似は最小二乗法により求める方法、スプライン曲線等の多項式曲線、三角関数等がある。
【0098】
<主処理>
図21、
図10を参照し、主処理を説明する。作業者は主軸7Bに装着する工具体40Aを交換する時、入力部82Bを操作する。入力部82Bは作業者の操作に応じてCPU51Bに工具交換指令を送信する。CPU51Bは工具交換指令を受信した時、ROM52Bに記憶した制御プログラムを読出して実行することにより主処理を開始する。主処理の開始時、ATC駆動軸46Bの回転角度は0°である。以下説明では、第一実施形態の主処理と同様の処理は説明を簡略化する。
【0099】
図21に示すように、CPU51BはATC駆動軸46Bの回転角度が360°に達するまでATCモータ45Bを回転する(S111)。ATC駆動軸46Bの回転角度が360°に達したか否かは、エンコーダ45Dから取得したATCモータ45Bの回転角度に基づき判断する。CPU51BはATC駆動軸46Bの回転角度が270°(時機T10)に達したか否かを判定する(S113)。該時機は装着動作時に揺動腕部材60Bが回転を開始する時機である。ATC駆動軸46Bの回転角度が270°に達していないと判定時(S113:NO)、CPU51Bは処理をS113に戻す。CPU51BはATC駆動軸46Bの回転角度が270°に達する迄、S113の判定を所定周期で繰り返す。ATC駆動軸46Bの回転角度が270°に達したと判定時(S113:YES)、CPU51BはATCモータ45Bのトルクの取得を開始する(S115)。以降、CPU51Bは取得周期(例えば0.5ms)でATCモータ45Bのトルクを取得する。
【0100】
CPU51BはATC駆動軸46Bの回転角度が360°に達したか否かを判定する(S121)。ATC駆動軸46Bの回転角度が360°に達していないと判定時(S21:NO)、CPU51Bは新規でトルクを取得したか否かを判定する(S123)。新規でトルクを取得していない時(S123:NO)、CPU51Bは処理をS121に戻す。新規でトルクを取得した時(S123:YES)、CPU51Bは取得したトルクと、該トルクを取得した時の変位情報を対応付けて、RAM53Bに記憶する(S124)。CPU51Bは、処理をS121に戻す。ATC駆動軸46Bの回転角度が360°に達したと判定時(S121:YES)、主軸7Bは工具体40A(第二工具体202)を装着している。CPU51BはS115で開始したトルクの取得を停止する(S133)。
【0101】
CPU31Aは、RAM53Bに記憶したトルクにローパスフィルタを適用する(S145)。ローパスフィルタの適用は、移動平均フィルタを2回適用することにより実現する。CPU51Bは、ローパスフィルタを適用した後のトルクに基づき、曲線近似により補間トルクを生成する(S147)。CPU51Bは、保管した補間トルクを時間微分する微分演算処理を実行する(S149)。CPU51Bは微分演算した微分値と、該微分値に対応する変位情報とを対応付けてRAM53Bに記憶する(S151)。CPU51BはRAM53Bに記憶した微分値のうち最小の微分値を決定する。CPU51Bは、決定した最小の微分値に対応付けた変位情報を、ピーク角度として決定する(S135)。CPU51Bは、記憶装置54Bに記憶した装着回数のうち主軸9Aに装着した工具体40Aに対応する装着回数を取得する。CPU51Bは、決定したピーク角度と取得した装着回数とを対応付けて記憶装置54Bに記憶する(S137)。CPU51Bは処理をS41(
図10参照)に進める。
【0102】
図10に示すように、CPU51Bは、工具交換アーム44Bが上死点に達した時、工具交換位置に工具体40Aがあるか判定する(S39)。CPU51Bは、工具交換位置に工具体40Aがないと判定した場合(S39:NO)、処理をS53に進める。CPU51Bは、工具交換位置に工具体40Aがあると判定した場合(S39:YES)、処理をS41に進める。
【0103】
CPU51Bは、S137(
図21参照)の処理で記憶装置54Bに記憶したピーク角度のうち対象ピーク角度の合計が所定数以上か判定する(S41)。CPU31Aは、記憶装置54Bに記憶した対象ピーク角度の数が所定数未満の場合(S41:NO)、主処理を終了する。CPU51Bは、記憶装置54Bに記憶した対象ピーク角度の合計が所定数以上の場合(S41:YES)、統計処理を実行する(S47)。CPU51Bは統計処理において、記憶装置54Bに記憶した対象ピーク角度のうち第二ピーク角度から新しい順に数えて所定数分の対象ピーク角度を、装着回数に基づいて取得する。CPU51Bは取得した対象ピーク角度の平均値μと標準偏差σを算出する。CPU51Bは、統計処理において算出した平均値μ及び標準偏差σに基づき、μ-6σを判定閾値として決定する(S49)。
【0104】
CPU51Bは記憶装置54Bに記憶した第一ピーク角度が、S49の処理で決定した判定閾値(μ-6σ)より大きいか判定する(S51)。CPU51Bは、第一ピーク角度が判定閾値より小さいと判定時(S51:YES)、装着動作後の装着状態が不完全装着状態であると判定する。該時、CPU51Bは装着動作後の装着状態が不完全状態であることを報知するアラーム報知を、表示部90Bに表示する(S53)。CPU51Bは、記憶装置54Bに記憶した第一ピーク角度を削除する(S55)。CPU51Bは主処理を終了する。CPU51Bは、第一ピーク角度が判定閾値より小さくないと判定時(S51:NO)、主処理を終了する。
【0105】
<第二実施形態の作用、効果>
数値制御装置30Bは、取得したATCモータ45Bのトルクを補間して補間トルクを生成する(S147)。数値制御装置30Bは、生成した補間トルクを時間微分した微分値に基づき、ピーク角度を決定する(S135)。数値制御装置30Bは、決定したピーク角度を統計処理して平均値μ及び標準偏差σを算出し、判定閾値(μ-6σ)を決定する(S47、S49)。数値制御装置30Bは、決定した判定閾値と第一ピーク角度との関係に基づき、装着動作後における工具体40Aの装着状態を判定する(S51)。数値制御装置30Bは、補間トルクを生成することで、ピーク角度の決定に用いるトルクの数を多くできるので、工具体40Aの装着状態の僅かな変化を高精度に判定できる。
【0106】
数値制御装置30Bは、曲線近似により近似曲線を算出し、該近似曲線に基づいて補間トルクを生成する(S147)。該時、数値制御装置30Bは、実際のトルクと良好に近似した補間トルクを生成できるので、装着状態の僅かな変化を高精度に判定できる。
【0107】
数値制御装置30Bは、取得したトルクにローパスフィルタを適用し(S145)、ローパスフィルタを適用したトルクを補間して補間トルクを生成する(S147)。該時、数値制御装置30Bは、雑音成分を除去したトルクから補間トルクを生成することにより、実際のトルクと良好に近似した補間トルクを生成できる。
【0108】
数値制御装置30Bは、ピーク角度に基づき平均値μを算出し(S47)、平均値μに基づき装着状態を判定する(S51)。尚、ピーク角度の平均値に基づく判定は、ATCモータ45Bの駆動電流値に基づく判定と比べ、工具体40Aの経年変化による影響を受け難い。故に、数値制御装置30Bは、装着状態を精度良く判定できる。
【0109】
工具体40Aの装着状態に応じ、平均値μに対してピーク角度は大きく変動する。これに対し、数値制御装置30Bは、判定閾値(μ-6σ)と第一ピーク角度との関係に基づき装着状態を判定する(S51)。該時、判定閾値(μ-6σ)は、ピーク角度の変動度合を考慮した値となる。故に、数値制御装置30Bは、平均値μに対してピーク角度の測定値にばらつきがあっても、装着状態を高精度に判定できる。尚、実施形態のトルクを取得する所定の時期は所定の周期であったが、所定の位置でもよい。
【0110】
数値制御装置30Bは、所謂アーム式の工作機械1Bについて、装着状態を精度良く判定できる。
【0111】
<第二実施形態の特記事項>
S115の処理を行うCPU51Bは、本発明の「取得部」の一例である。S147の処理を行うCPU51Bは、本発明の「補間部」の一例である。S149の処理を行うCPU51Bは、本発明の「微分演算部」の一例である。S135の処理を行うCPU51Bは、本発明の「決定部」の一例である。S137の処理を行うCPU51Bは、本発明の「記憶部」の一例である。S47の処理を行うCPU51Bは、本発明の「統計処理部」の一例である。S51の処理を行うCPU51Bは、本発明の「判定部」の一例である。S145の処理を行うCPU51Bは、本発明の「第二フィルタ処理部」の一例である。S115の処理は、本発明の「取得工程」の一例である。S147の処理は、本発明の「補間工程」の一例である。S149の処理は、本発明の「微分演算工程」の一例である。S135の処理は、本発明の「決定工程」の一例である。S137の処理は、本発明の「記憶工程」の一例である。S47の処理は、本発明の「統計処理工程」の一例である。S51の処理は、本発明の「判定工程」の一例である。
【0112】
<変形例>
本発明は種々の変更が可能である。以下、説明のない限り、第一実施形態に係る数値制御装置30Aを例示して変形例を説明するが、該変形例は、第二実施形態に係る数値制御装置30Bにも適宜適用可能であることは言うまでもない。
【0113】
数値制御装置30Aは、工具体40Aの装着動作を実行する度、ピーク位置を工具体40A毎の装着回数に対応付けて記憶装置34Aに順次記憶した。これに対し、数値制御装置30Aは、装着回数と異なるパラメータを、ピーク位置に対応付けて記憶装置34Aに記憶してもよい。例えば、該パラメータの一例として使用時間と、ピーク位置とを対応付けて記憶装置34Aに記憶してもよい。
【0114】
数値制御装置30Aは、装着動作時における微分値が最大となる場合の主軸ヘッド7AのZ軸方向の位置を、ピーク位置に決定してもよい。補間トルクを生成する方法は、線形近似、曲線近似に限定されず、他の方法でもよい。例えば数値制御装置30Aは、最小二乗法により線形近似した近似直線に基づき、補間トルクを生成してもよい。数値制御装置30Aは、取得したトルクに対してローパスフィルタを適用してもよい。数値制御装置30Aは、ローパスフィルタを適用したトルクから補間トルクを生成してもよい。数値制御装置30Aは、生成した補間トルクに対し、更にローパスフィルタを適用してもよい。適用されるローパスフィルタは、移動平均フィルタとしてもよい。移動平均フィルタのウィンドウサイズは、平均値μ及び標準偏差σを算出するときに取得されるピーク角度の数(所定数)と同一でもよいし、所定数より小さくてもよい。
【0115】
数値制御装置30Aは、生成した補間トルクに対してローパスフィルタを適用しなくてもよい。数値制御装置30Bは、取得したトルクに対してローパスフィルタを適用しなくてもよい。
【0116】
数値制御装置30Aは、対象ピーク位置のうち第二ピーク位置から数えて所定数の対象ピーク位置を抽出し、抽出した所定数のピーク位置から一意に決定した値を、平均値μの代わりに統計値として算出してもよい。例えば数値制御装置30Aは、所定数の対象ピーク位置の中央値を、統計値として算出してもよい。判定閾値は、「μ+6σ」以外の値でもよい。例えば標準偏差σに乗算される値は、工作機械1Aの種類、切削加工の状況等に応じ、適宜切り替えられてもよい。
【0117】
数値制御装置30Aは、工作機械1Aの電源がOFFした状態で所定時間以上経過した時、又は、工作機械1Aが切削加工を行わない状態で所定時間以上経過した時、記憶装置34Aに記憶した装着回数を0としてもよい。
【符号の説明】
【0118】
1A、1B :工作機械
7A :主軸ヘッド
7B、9A :主軸
51A :Z軸モータ
30B :数値制御装置
31A、51B :CPU
34A :記憶装置
40A :工具体
43B :旋回軸
44B :工具交換アーム
45B :ATCモータ