特開2019-217560(P2019-217560A)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ DMG森精機株式会社の特許一覧
特開2019-217560工作機械、算出方法、および算出プログラム
<>
  • 特開2019217560-工作機械、算出方法、および算出プログラム 図000003
  • 特開2019217560-工作機械、算出方法、および算出プログラム 図000004
  • 特開2019217560-工作機械、算出方法、および算出プログラム 図000005
  • 特開2019217560-工作機械、算出方法、および算出プログラム 図000006
  • 特開2019217560-工作機械、算出方法、および算出プログラム 図000007
  • 特開2019217560-工作機械、算出方法、および算出プログラム 図000008
  • 特開2019217560-工作機械、算出方法、および算出プログラム 図000009
  • 特開2019217560-工作機械、算出方法、および算出プログラム 図000010
  • 特開2019217560-工作機械、算出方法、および算出プログラム 図000011
  • 特開2019217560-工作機械、算出方法、および算出プログラム 図000012
  • 特開2019217560-工作機械、算出方法、および算出プログラム 図000013
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2019-217560(P2019-217560A)
(43)【公開日】2019年12月26日
(54)【発明の名称】工作機械、算出方法、および算出プログラム
(51)【国際特許分類】
   B23Q 17/09 20060101AFI20191129BHJP
【FI】
   B23Q17/09 B
   B23Q17/09 A
【審査請求】有
【請求項の数】8
【出願形態】OL
【全頁数】17
(21)【出願番号】特願2018-114330(P2018-114330)
(22)【出願日】2018年6月15日
(71)【出願人】
【識別番号】000146847
【氏名又は名称】DMG森精機株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】特許業務法人深見特許事務所
(72)【発明者】
【氏名】河合 謙吾
(72)【発明者】
【氏名】西川 静雄
【テーマコード(参考)】
3C029
【Fターム(参考)】
3C029DD11
3C029EE01
(57)【要約】
【課題】工具とワークとの接触時間を正確に算出することができる工作機械を提供する。
【解決手段】工作機械は、ワークを加工するための工具と、工具またはワークを回転するための主軸と、工具または主軸にかかる負荷を検知するための検知部と、工作機械を制御するための制御装置とを備える。制御装置は、工具がワークと接触してから非接触状態となるまでの間において負荷の増加度合いが最大となる第1タイミングを特定し、工具がワークと接触してから非接触状態となるまでの間において負荷の減少度合いが最大となる第2タイミングを特定し、第1タイミングから、第2タイミングの所定時間後である第3タイミングまでの期間を、工具とワークとの接触時間として算出する。
【選択図】図5
【特許請求の範囲】
【請求項1】
工作機械であって、
ワークを加工するための工具と、
前記工具または前記ワークを回転するための主軸と、
前記工具または前記主軸にかかる負荷を検知するための検知部と、
前記工作機械を制御するための制御装置とを備え、
前記制御装置は、
前記工具が前記ワークと接触してから非接触状態となるまでの間において前記負荷の増加度合いが最大となる第1タイミングを特定し、
前記工具が前記ワークと接触してから非接触状態となるまでの間において前記負荷の減少度合いが最大となる第2タイミングを特定し、
前記第1タイミングから、前記第2タイミングの所定時間後である第3タイミングまでの期間を、前記工具と前記ワークとの接触時間として算出する、工作機械。
【請求項2】
前記制御装置は、前記工具の半径と、前記工具の移動速度とに基づいて、前記所定時間を算出する、請求項1に記載の工作機械。
【請求項3】
前記制御装置は、
前記工具による前記ワークの切込み幅が前記工具の半径よりも大きい場合、前記工具の半径と、前記工具の移動速度とに基づいて、前記所定時間を算出し、
前記切込み幅が前記工具の半径よりも小さい場合、前記工具の半径と、前記工具の移動速度と、前記切込み幅とに基づいて、前記所定時間を算出する、請求項2に記載の工作機械。
【請求項4】
前記制御装置は、前記接触時間の累積値に基づいて、前記工具の摩耗の度合いを推定する、請求項1〜3のいずれか1項に記載の工作機械。
【請求項5】
前記制御装置は、前記接触時間の累積値に基づいて、前記工具の寿命に達するまでの残りの加工時間を推定する、請求項1〜4のいずれか1項に記載の工作機械。
【請求項6】
前記制御装置は、
前記検知部によって順次検出される負荷の移動平均を算出し、
順次算出される前記移動平均の単位時間当たりの変化量を算出し、
順次算出される前記変化量の移動平均を前記増加度合いおよび前記減少度合いの指標として用いる、請求項1〜5のいずれか1項に記載の工作機械。
【請求項7】
工具とワークとの接触時間を算出する算出方法であって、
前記工具または前記ワークを回転するための主軸を駆動し、前記工具が前記ワークを加工するステップと、
前記工具または前記主軸にかかる負荷を検知するステップと、
前記工具が前記ワークと接触してから非接触状態となるまでの間において前記負荷の増加度合いが最大となる第1タイミングを特定するステップと、
前記工具が前記ワークと接触してから非接触状態となるまでの間において前記負荷の減少度合いが最大となる第2タイミングを特定するステップと、
前記第1タイミングから、前記第2タイミングの所定時間後である第3タイミングまでの期間を、前記工具と前記ワークとの接触時間として算出するステップとを備える、算出方法。
【請求項8】
工具とワークとの接触時間を算出する算出プログラムであって、
前記算出プログラムは、工作機械に、
前記工具または前記ワークを回転するための主軸を駆動し、前記工具が前記ワークを加工するステップと、
前記工具または前記主軸にかかる負荷を検知するステップと、
前記工具が前記ワークと接触してから非接触状態となるまでの間において前記負荷の増加度合いが最大となる第1タイミングを特定するステップと、
前記工具が前記ワークと接触してから非接触状態となるまでの間において前記負荷の減少度合いが最大となる第2タイミングを特定するステップと、
前記第1タイミングから、前記第2タイミングの所定時間後である第3タイミングまでの期間を、前記工具と前記ワークとの接触時間として算出するステップとを実行させる、算出プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、工具とワークとの接触時間を正確に算出するための技術に関する。
【背景技術】
【0002】
工作機械内の工具の摩耗が進むと様々な問題が生じる。たとえば、所望する加工精度が得られなかったり、工具の破損によって工作機械が故障したりする。これらの問題に対処するために、工具の摩耗の度合いを推定するための技術が開発されている。
【0003】
工具の摩耗の度合いを推定するための技術に関し、特開2017−24112号公報(特許文献1)は、「予め加工負荷等の事前データを用意する必要がなく、工具の状態を簡単に把握できる」工作機械を開示している。当該工作機械は、工具の摩耗が進むと工具に作用する負荷が増大することに着目して、当該負荷の平均値が所定閾値を超えた場合に工具が摩耗していると判断する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2017−24112号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
他の例として、工具の摩耗の度合いは、工具とワークとの接触時間から推定され得る。より具体的には、工作機械は、ワークの加工中において、工具負荷が予め設定された閾値を超えたタイミングを工具がワークに接触した瞬間の第1タイミングとして特定する。次に、工作機械は、ワークの加工中において、予め設定された閾値を下回ったタイミングを工具がワークから離れた瞬間の第2タイミングとして特定する。そして、工作機械は、第1タイミングから第2タイミングまでの間をワークと工具との接触時間として算出する。この接触時間が長くなるほど、工具の摩耗の度合いが進んでいることを示す。
【0006】
しかしながら、発明者らは、工具がワークから離れる瞬間が上記第2タイミングではないという新たな知見を得た。そのため、上記第2タイミングに基づいて工具とワークとの接触時間が算出されると、誤差が蓄積し、工作機械は、工具の摩耗や寿命を正確に推定することができない。したがって、ワークの加工中における工具とワークとの接触時間をより正確に算出することが望まれている。
【0007】
本開示は上述のような問題点を解決するためになされたものであって、ある局面における目的は、ワークの加工中における工具とワークとの接触時間をより正確に算出することができる工作機械を提供することである。他の局面における目的は、ワークの加工中における工具とワークとの接触時間をより正確に算出することができる算出方法を提供することである。他の局面における目的は、ワークの加工中における工具とワークとの接触時間をより正確に算出することができる算出プログラムを提供することである。
【課題を解決するための手段】
【0008】
本開示の一例では、工作機械は、ワークを加工するための工具と、上記工具または上記ワークを回転するための主軸と、上記工具または上記主軸にかかる負荷を検知するための検知部と、上記工作機械を制御するための制御装置とを備える。上記制御装置は、上記工具が上記ワークと接触してから非接触状態となるまでの間において上記負荷の増加度合いが最大となる第1タイミングを特定し、上記工具が上記ワークと接触してから非接触状態となるまでの間において上記負荷の減少度合いが最大となる第2タイミングを特定し、上記第1タイミングから、上記第2タイミングの所定時間後である第3タイミングまでの期間を、上記工具と上記ワークとの接触時間として算出する。
【0009】
好ましくは、上記制御装置は、上記工具の半径と、上記工具の移動速度とに基づいて、上記所定時間を算出する。
【0010】
好ましくは、上記制御装置は、上記工具による上記ワークの切込み幅が上記工具の半径よりも大きい場合、上記工具の半径と、上記工具の移動速度とに基づいて、上記所定時間を算出し、上記切込み幅が上記工具の半径よりも小さい場合、上記工具の半径と、上記工具の移動速度と、上記切込み幅とに基づいて、上記所定時間を算出する。
【0011】
好ましくは、上記制御装置は、上記接触時間の累積値に基づいて、上記工具の摩耗の度合いを推定する。
【0012】
好ましくは、上記制御装置は、上記接触時間の累積値に基づいて、上記工具の寿命に達するまでの残りの加工時間を推定する。
【0013】
好ましくは、上記制御装置は、上記検知部によって順次検出される負荷の移動平均を算出し、順次算出される上記移動平均の単位時間当たりの変化量を算出し、順次算出される上記変化量の移動平均を上記増加度合いおよび上記減少度合いの指標として用いる。
【0014】
本開示の他の例では、工具とワークとの接触時間を算出する算出方法は、上記工具または上記ワークを回転するための主軸を駆動し、上記工具が上記ワークを加工するステップと、上記工具または上記主軸にかかる負荷を検知するステップと、上記工具が上記ワークと接触してから非接触状態となるまでの間において上記負荷の増加度合いが最大となる第1タイミングを特定するステップと、上記工具が上記ワークと接触してから非接触状態となるまでの間において上記負荷の減少度合いが最大となる第2タイミングを特定するステップと、上記第1タイミングから、上記第2タイミングの所定時間後である第3タイミングまでの期間を、上記工具と上記ワークとの接触時間として算出するステップとを備える。
【0015】
本開示の他の例では、工具とワークとの接触時間を算出する算出プログラムは、工作機械に、上記工具または上記ワークを回転するための主軸を駆動し、上記工具が上記ワークを加工するステップと、上記工具または上記主軸にかかる負荷を検知するステップと、上記工具が上記ワークと接触してから非接触状態となるまでの間において上記負荷の増加度合いが最大となる第1タイミングを特定するステップと、上記工具が上記ワークと接触してから非接触状態となるまでの間において上記負荷の減少度合いが最大となる第2タイミングを特定するステップと、上記第1タイミングから、上記第2タイミングの所定時間後である第3タイミングまでの期間を、上記工具と上記ワークとの接触時間として算出するステップとを実行させる。
【発明の効果】
【0016】
ある局面において、ワークの加工中における工具とワークとの接触時間をより正確に算出することができる。
【0017】
本発明の上記および他の目的、特徴、局面および利点は、添付の図面と関連して理解される本発明に関する次の詳細な説明から明らかとなるであろう。
【図面の簡単な説明】
【0018】
図1】実施の形態に従う工作機械の一例を示す図である。
図2】ワークの加工態様の一例を示す図である。
図3図2に示される加工態様をZ方向から表わす図である。
図4】工具がワークに接触してから非接触状態になるまでの加工態様の例を示す図である。
図5図4に示される加工過程における、工具負荷の時間的推移と、工具負荷の変化率の時間的推移とを示す図である。
図6】ワークの切込み幅が工具の半径よりも大きい場合における加工態様を示す図である。
図7】ワークの切込み幅が工具の半径よりも小さい場合における加工態様を示す図である。
図8】実施の形態に従う工作機械の機能構成の一例を示す図である。
図9】加工履歴情報のデータ構造の一例を示す図である。
図10】工具の加工時間の算出処理を表わすフローチャートである。
図11】実施の形態に従う工作機械の主要なハードウェア構成を示すブロック図である。
【発明を実施するための形態】
【0019】
以下、図面を参照しつつ、本発明に従う各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。なお、以下で説明される各実施の形態および各変形例は、適宜選択的に組み合わされてもよい。
【0020】
<A.工作機械100の構成>
図1を参照して、工作機械100の構成について説明する。図1は、工作機械100の一例を示す図である。
【0021】
図1には、マシニングセンタとしての工作機械100が示されている。以下では、マシニングセンタとしての工作機械100について説明するが、工作機械100は、マシニングセンタに限定されない。たとえば、工作機械100は、旋盤であってもよいし、その他の切削機械や研削機械であってもよい。また、工作機械100は、工具が鉛直方向に取り付けられる横形のマシニングセンタであってもよいし、工具が水平方向に取り付けられる立形のマシニングセンタであってもよい。
【0022】
図1に示されるように、工作機械100は、主軸頭21を有する。主軸頭21は、主軸22と、ハウジング23とで構成されている。主軸22は、ハウジング23の内部に配置されている。主軸22には、被加工物であるワークを加工するための工具が装着される。図1の例では、エンドミルとしての工具32が主軸22に装着されている。
【0023】
主軸頭21は、ボールねじ25に沿ってZ軸方向に駆動可能に構成されている。ボールねじ25にはサーボモータなどの駆動機構が接続されている。当該駆動機構は、ボールねじ25を駆動することで主軸頭21を移動させ、Z軸方向の任意の位置に主軸頭21を移動する。
【0024】
また、主軸22にはサーボモータなどの駆動機構が接続される。当該駆動機構は、Z軸方向(鉛直方向)に平行な中心軸AX1を中心に主軸22を回転駆動する。その結果、主軸22に装着された工具32は、主軸22の回転と連動して中心軸AX1を中心に回転する。なお、工作機械100が旋盤である場合には、主軸22には、ワークが装着される。この場合、主軸22の回転に伴って、主軸22に装着されたワークが回転する。
【0025】
工作機械100は、自動工具交換装置(ATC:Automatic Tool Changer)30をさらに有する。自動工具交換装置30は、マガジン31と、押出し機構33と、アーム36とで構成されている。マガジン31は、ワークを加工するための種々の工具32を収容するための装置である。マガジン31は、複数の工具保持部34と、スプロケット35とで構成されている。
【0026】
工具保持部34は、種々の工具32を保持可能なように構成されている。複数の工具保持部34は、スプロケット35の周囲に環状に配列されている。スプロケット35は、モータ駆動により、X軸に平行な中心軸AX2を中心に回転可能に設けられている。スプロケット35の回転に伴って、複数の工具保持部34が中心軸AX2を中心に回転移動する。
【0027】
自動工具交換装置30は、工具の交換命令を受けたことに基づいて、マガジン31から装着対象の工具32を抜き取り、当該工具32を主軸22に装着する。より具体的には、自動工具交換装置30は、目的の工具32を保持する工具保持部34を押出し機構33の前に移動する。次に、押出し機構33は、アーム36による交換位置に向けて目的の工具32を押し出す。その後、アーム36は、目的の工具32を工具保持部34から抜き取るとともに、現在装着されている工具32を主軸22から抜き取る。その後、アーム36は、これらの工具32を保持した状態で半回転し、目的の工具32を主軸22に装着するとともに、元の工具32を工具保持部34に収容する。これにより、工具32の交換が行われる。
【0028】
工作機械100は、加工対象のワークをXY平面上で移動するための移動機構50をさらに有する。移動機構50は、ガイド51,53と、ボールねじ52,54と、ワークを保持するためのテーブル55(ワーク保持部)とで構成されている。
【0029】
ガイド51は、Y軸に対して平行に設置されている。ガイド53は、ガイド51上に設けられており、X軸に対して平行に設置されている。ガイド53は、ガイド51に沿って駆動可能に構成されている。テーブル55は、ガイド53上に設けられており、ガイド53に沿って駆動可能に構成されている。
【0030】
ボールねじ52にはサーボモータなどの駆動機構が接続されている。当該駆動機構は、ボールねじ52を駆動することでガイド53をガイド51に沿って移動し、Y軸方向の任意の位置にガイド53を移動する。同様に、ボールねじ54にもサーボモータなどの駆動機構が接続されている。当該駆動機構は、ボールねじ54を駆動することでテーブル55をガイド53に沿って移動し、X軸方向の任意の位置にテーブル55を移動する。すなわち、工作機械100は、ボールねじ52,54のそれぞれに接続される駆動機構を協働して制御することで、XY平面上の任意の位置にテーブル55を移動する。これにより、工作機械100は、テーブル55上で保持されるワークをXY平面上で移動させながら加工を行うことができる。
【0031】
テーブル55上のワークWの設置部分には、動力計110が設けられる。動力計110は、工具32がワークWに及ぼす力を検知することで、主軸22または工具32にかかる負荷を間接的に検知する。詳細については後述するが、検知された負荷は、工具32とワークWとの接触時間を推定するために用いられる。
【0032】
<B.ワークの加工態様>
図2および図3を参照して、工具32によるワークWの加工態様について説明する。図2は、ワークWの加工態様の一例を示す図である。図3は、図2に示される加工態様をZ方向から表わす図である。
【0033】
図2および図3には、エンドミルとしての工具32が示されている。工具32は、その側面に複数の刃を有し、回転しながらワークWに接触することでワークWを加工する。
【0034】
図2および図3の例では、工具32は、予めプログラミングされた加工経路Lに沿ってワークWを繰り返し切削している。設定され得る加工パラメータの一例として、ワークWの切込み幅がある。ここでいう「切込み幅」は、主軸22の軸方向において工具32がワークWを切込む幅(以下、「切込み幅a」ともいう。)と、主軸22の軸方向の直交方向であってワークWに対する工具32の移動方向の直交方向において工具32がワークWを切込む幅(以下、「切込み幅a」ともいう。)とを含む概念である。
【0035】
図2および図3の例では、径方向の切込み幅aと軸方向の切込み幅aとがパラメータとして設定されている。このパラメータに従って加工が開始されると、工具32は、切込み幅aの1段目の加工部分を切込み幅aごとに順次切削する。次に、工具32は、切込み幅aの2段目の加工部分を切込み幅aごとに順次切削する。次に、切込み幅aの3段目の加工部分を切込み幅aごとに順次切削する。次に、切込み幅aの4段目の加工部分を切込み幅aごとに順次切削する。このように、工具32は、予めプログラミングされた加工経路Lに沿ってワークWを順次切削することでワークWを任意の形状に加工する。
【0036】
<C.工具とワークとの接触時間の算出方法>
以下では、図4および図5を参照して、工具32とワークWとの接触時間の算出処理について説明する。図4は、工具32がワークWに接触してから非接触状態になるまでの加工態様の例を示す図である。図5は、図4に示される加工過程における、工具負荷の時間的推移と、工具負荷の変化率の時間的推移とを示す図である。
【0037】
図5に示される「工具負荷」は、たとえば、ワークWを除去する際に工具32の刃面に作用する力で表わされる。「工具負荷の変化率」とは、単位時間当たりにおける、主軸22または工具32に作用する力の変化量のことをいう。当該単位時間の長さは任意である(たとえば、1秒)。工具負荷の変化率は、工具負荷の時間微分(すなわち、傾き)に相当する。工具負荷は、たとえば、上述の動力計110(図1参照)から取得される。
【0038】
図4の例では、エンドミルとしての工具32が紙面左方向から紙面右方向に向かってダウンカットでワークWを加工する様子が示されている。この加工過程のタイミングT1において、工具32がワークWに接触したとする。このとき、工具32によるワークWの切削量が変化し、工具負荷は急激に増大する(図5参照)。このことに着目して、工作機械100は、工具32がワークWと接触してから非接触状態となるまでの間において工具負荷の増加度合いが最大となるタイミングT1(第1タイミング)を、工具32がワークWに接触した瞬間とする。
【0039】
その後、工具負荷は、多少の増減を繰り返しながら安定する。すなわち、工具負荷の変化率が略ゼロになる。
【0040】
その後、タイミングT2において、工具32がワークWの端に到達したとする。このとき、工具32によるワークWの切削量が変化し、工具負荷は、急激に減少する。その後、工具負荷は、多少の増減を繰り返しながら安定する。すなわち、工具負荷の変化率が略ゼロになる。その後、タイミングT3において、工具32によるワークWの切削量がゼロになり、工具32とワークWとが非接触状態となる。
【0041】
このように、工具負荷の減少度合いが最大となるタイミングT2においては、工具32は、ワークWに未だ接触している。そのため、工作機械100は、タイミングT2の所定時間ΔT後であるタイミングT3を、工具32がワークWから離れた瞬間とする。
【0042】
工作機械100は、タイミングT1からタイミングT3までの期間を工具32とワークWとの接触時間(以下、「加工時間」ともいう。)とする。工作機械100は、タイミングT1,T2ではなく、タイミングT1,T3に基づいて加工時間を算出することで、工具32がワークWを実際に加工している時間をより正確に算出することができる。
【0043】
なお、上述では、エンドミルとしての工具32で切削を行う前提で説明を行ったが、工具32は、エンドミルに限定されない。工具32は、平面加工を行うための切削工具であればよく、たとえば、フライスであってもよい。
【0044】
<D.所定時間ΔTの算出方法>
図4および図5で説明したように、工作機械100は、工具負荷の減少度合いが最大となるタイミングT2の所定時間ΔT後であるタイミングT3を、工具32がワークWから離れた瞬間とする。以下では、所定時間ΔTの算出方法について説明する。
【0045】
上述の通り、タイミングT2は、工具32によるワークWの切削量が減少し始める瞬間である。このタイミングT2から、工具32がその半径の距離をさらに進むと、工具32とワークWとが確実に非接触状態となる。この点に着目して、工作機械100は、工具32の半径と、工具32の移動速度とに基づいて、所定時間ΔTを算出する。
【0046】
好ましくは、工作機械100は、工具32によるワークWの切込み幅aが工具32の半径よりも大きいか否かによって、上記所定時間ΔTの算出方法を変える。図6は、ワークWの切込み幅aが工具32の半径rよりも大きい場合における加工態様を示す図である。
【0047】
図6に示されるように、ワークWの切込み幅aが工具32の半径rよりも大きい場合、工具32は、タイミングT2から半径rの距離を進むと、工具32とワークWとが非接触状態となり、ワークWの切削量がゼロになる。そのため、この場合には、工作機械100は、工具32の半径rと、工具32の移動速度vとに基づいて、所定時間ΔTを算出する。より具体的には、工作機械100は、下記算出式(1)に基づいて、所定時間ΔTを算出する。
【0048】
ΔT=r/v ・・・(1)
図7は、ワークWの切込み幅aが工具32の半径rよりも小さい場合における加工態様を示す図である。
【0049】
図7に示されるように、ワークWの切込み幅aが工具32の半径rよりも小さい場合、切削量が変化するタイミングT2において、工具32がワークWの端からある程度突き出ている。そのため、この場合には、工作機械100は、工具32の半径rと、工具32の移動速度vと、切込み幅aとに基づいて、所定時間Δを算出する。より具体的には、工作機械100は、下記算出式(2)に基づいて、所定時間ΔTを算出する。
【0050】
ΔT=√{r−(r−a}/v ・・・(2)
以上のように、工作機械100は、工具32によるワークWの切込み幅aが工具32の半径rよりも大きいか否かによって、所定時間ΔTの算出方法を変える。これにより、工作機械100は、工具32の加工時間をより正確に算出することができる。
【0051】
なお、所定時間ΔTは、必ずしも上記式(1),(2)に基づいて算出される必要はなく、工具32の種類ごとに予め決められていてもよい。また、所定時間ΔTの算出タイミングは、ワークWの加工中であってもよいし、ワークWの加工開始前であってもよい。
【0052】
<E.工作機械100の機能構成>
図8を参照して、工作機械100の機能について説明する。図8は、工作機械100の機能構成の一例を示す図である。
【0053】
図8に示されるように、工作機械100は、ハードウェア構成として、制御装置101と、記憶装置120とを含む。制御装置101は、たとえば、NC(Numerical Control)プログラムを実行可能なNC制御装置である。NC制御装置は、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU(Central Processing Unit)、少なくとも1つのASIC(Application Specific Integrated Circuit)、少なくとも1つのFPGA(Field Programmable Gate Array)、またはそれらの組み合わせなどによって構成される。
【0054】
制御装置101は、負荷取得部152と、移動平均部154と、変化率算出部156と、移動平均部158と、加工時間算出部160と、摩耗推定部162と、寿命推定部164とを含む。
【0055】
負荷取得部152は、動力計110(図1参照)などの負荷検知部から工具負荷を所定のサンプリンレートで取得する。取得された工具負荷は、時間情報に対応付けられた上で工具負荷m(t)として移動平均部154に出力される。
【0056】
なお、工具負荷を検知するための負荷検知部は、動力計110に限定されず、種々の検知手段(検出部)が採用される。一例として、主軸22を駆動するサーボモータへの指令値は、工具負荷に相関する。そのために、工作機械100は、当該サーボモータへの指令値を工具負荷の指標として用いてもよい。
【0057】
移動平均部154は、時系列の工具負荷m(t)の移動平均を算出する。より具体的には、移動平均部154は、ある区間における工具負荷m(t)の平均値を算出する処理と、当該区間をずらす処理とを繰り返すことで、工具負荷m(t)から移動平均m(t)を算出する。算出された移動平均m(t)は、変化率算出部156に順次出力される。
【0058】
移動平均m(t)が算出されることで、断続切削に伴って発生する工具負荷m(t)の周期的変化が平滑化される。また、突発的な工具負荷の変化が吸収される。
【0059】
変化率算出部156は、移動平均m(t)の単位時間当たりの変化率m(t)を算出する。一例として、変化率算出部156は、移動平均m(t)の時間微分を工具負荷の変化率m(t)として算出する。算出された変化率m(t)は、移動平均部158に順次出力される。
【0060】
移動平均部154は、時系列の変化率m(t)の移動平均を算出する。より具体的には、移動平均部154は、ある区間における変化率m(t)の平均値を算出する処理と、当該区間をずらす処理とを繰り返すことで、変化率m(t)から移動平均m(t)を算出する。算出された移動平均m(t)は、加工時間算出部160に出力される。
【0061】
移動平均m(t)が算出されることで、変化率m(t)が平滑化される。その結果、移動平均部154は、突発的な工具負荷の変化を吸収することができ、工具32の加工時間を算出する際にノイズの影響を受けにくくなる。
【0062】
加工時間算出部160は、工具32がワークWを実際に加工している時間(すなわち、加工時間)を算出する。より具体的には、加工時間算出部160は、移動平均m(t)の増加度合いが最大となるタイミングT1を特定し、当該タイミングT1を工具32がワークWに接触した瞬間とする。また、加工時間算出部160は、移動平均m(t)の減少度合いが最大となるタイミングT2を特定し、当該タイミングT2から所定時間ΔT後であるタイミングT3を、工具32がワークWから離れた瞬間とする。そして、加工時間算出部160は、タイミングT1からT3までの期間を工具32の加工時間とする。
【0063】
上述のように、所定時間ΔTは、工具32の半径と、工具32の移動速度とに基づいて算出される。工具32の半径は、種々の方法で取得される。一例として、工具32の半径は、工具32の各種情報を規定している後述の工具情報124(図11参照)から取得される。あるいは、工具32の半径は、ユーザによって予め設定されてもよい。
【0064】
また、工具32の移動速度は、種々の方法で特定される。一例として、工具32の移動速度は、実行中の加工プログラムを解析することにより特定される。あるいは、工具32の移動速度は、後述のサーボモータ112A〜112D(図11参照)に出力される指令値から特定される。あるいは、工具32の移動速度は、後述のエンコーダ113A〜113D(図11参照)から出力されるフィードバック信号に基づいて特定される。
【0065】
算出された加工時間は、記憶装置120に格納されている加工履歴情報126に書き込まれる。図9は、加工履歴情報126のデータ構造の一例を示す図である。
【0066】
図9に示されるように、加工履歴情報126において、時刻情報と工具32の加工時間とが対応付けられている。当該時刻情報は、たとえば、工具32がワークWに接触した時刻であってもよいし、工具32がワークWから離れた時刻であってもよい。また、加工履歴情報126において、工具32の加工時間の累積値が加工総時間として管理される。好ましくは、加工履歴情報126は、工具32ごとに複数準備され、加工総時間は、工具32ごとに管理される。
【0067】
摩耗推定部162は、加工履歴情報126を参照して、摩耗推定対象の工具32の加工総時間を取得し、当該加工総時間に基づいて、工具32の摩耗度合いを推定する。典型的には、加工総時間が長くなるほど、工具32の摩耗度合いは大きくなる。異なる言い方をすれば、加工総時間が短くなるほど、工具32の摩耗度合いは小さくなる。
【0068】
一例として、工具32の摩耗度合いは、加工総時間と摩耗度合いとの予め定められた相関関係に基づいて算出される。ある局面において、当該相関関係は、加工総時間を説明変数とし、工具32の工具摩耗を目的変数とする相関式で規定される。他の局面において、当該相関関係は、加工総時間ごとに工具32の工具摩耗を対応付けたテーブル形式で規定される。
【0069】
寿命推定部164は、加工履歴情報126を参照して、寿命推定対象の工具32の加工総時間を取得し、当該加工総時間に基づいて、工具32が寿命に達するまでの残りの加工時間(以下、「工具寿命」ともいう。)を推定する。ここでいう「工具寿命」とは、工具32の交換推奨タイミングまたは故障タイミングが到来するまでの期間の長さを意味する。
【0070】
典型的には、加工総時間が長くなるほど、工具寿命は短くなる。異なる言い方をすれば、加工総時間が短くなるほど、工具寿命は長くなる。
【0071】
一例として、工具寿命は、加工総時間と工具寿命との予め定められた相関関係に基づいて算出される。ある局面において、当該相関関係は、加工総時間を説明変数とし、工具寿命を目的変数とする相関式で規定される。他の局面において、当該相関関係は、加工総時間ごとに工具寿命を対応付けたテーブル形式で規定される。
【0072】
<F.工作機械100の制御構造>
図10を参照して、工作機械100の制御構造について説明する。図10は、工具32の加工時間の算出処理を表わすフローチャートである。図10の処理は、工作機械100の制御装置101がプログラムを実行することにより実現される。他の局面において、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
【0073】
ステップS110において、制御装置101は、加工が開始されたか否かを判断する。一例として、制御装置101は、加工プログラムが実行されたことに基づいて、加工が開始されたと判断する。制御装置101は、ワークWの加工が開始されたと判断した場合(ステップS110においてYES)、制御をステップS112に切り替える。そうでない場合には(ステップS110においてNO)、制御装置101は、ステップS110の処理を再び実行する。
【0074】
ステップS112において、制御装置101は、上述の負荷取得部152(図8参照)として、所定のサンプリングレートで工具負荷を取得する。一例として、工具負荷は、動力計110(図1参照)などの負荷検知部から取得される。
【0075】
ステップS114において、上述の移動平均部154(図8参照)として、ステップS112で取得した時系列の工具負荷の移動平均を算出する。
【0076】
ステップS120において、制御装置101は、工具32がワークWに接触したか否かを判断する。一例として、制御装置101は、ステップS114で算出した工具負荷の移動平均が所定値を超えたことに基づいて、工具32がワークWに接触したと判断する。制御装置101は、工具32がワークWに接触したと判断した場合(ステップS120においてYES)、制御をステップS122に切り替える。そうでない場合には(ステップS120においてNO)、制御装置101は、制御をステップS112に戻す。
【0077】
ステップS122において、制御装置101は、上述の変化率算出部156(図8参照)として、工具負荷の変化率を算出する。一例として、工具負荷の変化率は、ステップS114で算出された工具負荷の移動平均の時間微分によって算出される。
【0078】
ステップS124において、制御装置101は、ステップS122で算出した工具負荷の変化率を現在の時刻情報に関連付けて記憶装置120に記憶する。
【0079】
ステップS130において、制御装置101は、工具32とワークWとが確実に非接触状態になったか否かを判断する。一例として、制御装置101は、工具負荷の移動平均が所定値を下回ったことに基づいて、工具32とワークWとが確実に非接触状態になったと判断する。制御装置101は、工具32とワークWとが確実に非接触状態になったと判断した場合(ステップS130においてYES)、制御をステップS132に切り替える。そうでない場合には(ステップS130においてNO)、制御装置101は、制御をステップS122に戻す。
【0080】
ステップS132において、制御装置101は、上述の加工時間算出部160(図8参照)として、ステップS124で記憶された時系列の工具負荷の変化率に基づいて、ワークWと工具32との接触時間(すなわち、加工時間)を算出する。当該加工時間の算出方法については、図4図7で説明した通りであるので、その説明については繰り返さない。
【0081】
ステップS134において、制御装置101は、ステップS132で算出した加工時間を上述の加工履歴情報126(図9参照)に書き込む。
【0082】
ステップS140において、制御装置101は、ワークWの加工が終了したか否かを判断する。制御装置101は、ワークWの加工が終了したと判断した場合(ステップS140においてYES)、図10に示される処理を終了する。そうでない場合には(ステップS140においてNO)、制御装置101は、制御をステップS112に戻す。
【0083】
なお、図10の例では、ワークWの加工中において加工時間を算出する例について説明を行ったが、加工時間の算出は、加工の終了後に算出されてもよい。一例として、制御装置101は、ステップS122で算出される工具負荷の変化率を記憶装置120に蓄積しておき、加工の終了後の任意の時点で、当該データーベースを参照して、工具32の加工時間を算出してもよい。
【0084】
<G.工作機械100のハードウェア構成>
図11を参照して、工作機械100のハードウェア構成の一例について説明する。図11は、工作機械100の主要なハードウェア構成を示すブロック図である。
【0085】
工作機械100は、主軸22と、ボールねじ25,52,54と、制御装置101と、ROM102と、RAM103と、通信インターフェイス104と、表示インターフェイス105と、入力インターフェイス109と、動力計110と、サーボドライバ111A〜111Dと、サーボモータ112A〜112Dと、エンコーダ113A〜113Dと、記憶装置120とを含む。
【0086】
制御装置101は、工作機械100の加工プログラム122(NCプログラム)など各種プログラムを実行することで工作機械100の動作を制御する。制御装置101は、加工プログラム122の実行命令を受け付けたことに基づいて、記憶装置120からROM102に加工プログラム122を読み出す。RAM103は、ワーキングメモリとして機能し、加工プログラム122の実行に必要な各種データを一時的に格納する。
【0087】
通信インターフェイス104には、LANやアンテナなどが接続される。工作機械100は、通信インターフェイス104を介して、外部の通信機器との間でデータをやり取りする。外部の通信機器は、たとえば、サーバーや、その他の通信端末などを含む。工作機械100は、当該通信端末から加工プログラム122をダウンロードできるように構成されてもよい。
【0088】
表示インターフェイス105は、ディスプレイ130などの表示機器と接続され、制御装置101などからの指令に従ってディスプレイ130に対して画像を表示するための画像信号を送出する。ディスプレイ130は、たとえば、液晶ディスプレイ、有機ELディスプレイ、またはその他の表示機器である。一例として、ディスプレイ130は、工具32の摩耗の度合いや、工具32の寿命や、工具32の摩耗の度合いが限界値を超えた場合の警告などを表示する。
【0089】
入力インターフェイス109は、入力デバイス131に接続され得る。入力デバイス131は、たとえば、マウス、キーボード、タッチパネル、またはユーザ操作を受け付けることが可能なその他の入力機器である。
【0090】
サーボドライバ111Aは、制御装置101から目標回転数(または目標位置)の入力を逐次的に受け、サーボモータ112Aが目標回転数で回転するようにサーボモータ112Aを制御する。より具体的には、サーボドライバ111Aは、エンコーダ113Aのフィードバック信号からサーボモータ112Aの実回転数(または実位置)を算出し、当該実回転数が目標回転数よりも小さい場合にはサーボモータ112Aの回転数を上げ、当該実回転数が目標回転数よりも大きい場合にはサーボモータ112Aの回転数を下げる。このように、サーボドライバ111Aは、サーボモータ112Aの回転数のフィードバックを逐次的に受けながらサーボモータ112Aの回転数を目標回転数に近付ける。サーボドライバ111Aは、ボールねじ54に接続されるテーブル55(図1参照)をX軸方向に沿って移動し、テーブル55をX軸方向の任意の位置に移動する。
【0091】
同様のモータ制御により、サーボドライバ111Bは、ボールねじ52に接続されるガイド53(図1参照)をY軸方向に沿って移動し、ガイド53上のテーブル55(図1参照)をY軸方向の任意の位置に移動する。同様のモータ制御を行うことにより、サーボドライバ111Cは、ボールねじ25に接続される主軸頭21(図1参照)をZ軸方向の任意の位置に移動する。同様のモータ制御を行うことにより、サーボドライバ111Dは、主軸22の回転数を制御する。
【0092】
サーボドライバ111Dがサーボモータ112Dに出力する制御信号(電流値)は、工具負荷の大きさに相関する。そのため、制御装置101は、動力計110の出力値の代わりに、サーボドライバ111Dから出力される制御信号から工具負荷を検知してもよい。典型的には、制御装置101は、サーボドライバ111Dから出力される電流値をサーボモータ112Dの回転数で除算した結果を工具負荷として算出する。このように、工具負荷を検知するための構成には、動力計110やサーボドライバ111Dなど種々の検知部が採用され得る。
【0093】
記憶装置120は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。記憶装置120は、本実施の形態に従う加工プログラム122、工具32の半径などを規定した工具情報124、および上述の加工履歴情報126(図9参照)などを格納する。加工プログラム122、工具情報124および加工履歴情報126の格納場所は、記憶装置120に限定されず、制御装置101の記憶領域(たとえば、キャッシュ領域など)、ROM102、RAM103、外部機器(たとえば、サーバー)などに格納されていてもよい。
【0094】
加工プログラム122は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、本実施の形態に従う制御処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う加工プログラム122の趣旨を逸脱するものではない。さらに、加工プログラム122によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも1つのサーバーが加工プログラム122の処理の一部を実行する所謂クラウドサービスのような形態で工作機械100が構成されてもよい。
【0095】
<H.まとめ>
以上のように、工作機械100は、工具32がワークWと接触してから非接触状態となるまでの間において、工具負荷の増加度合いが最大となるタイミングT1を特定し、当該タイミングT1を工具32がワークWに接触した瞬間とする。その後、工作機械100は、工具32がワークWと接触してから非接触状態となるまでの間において、工具負荷の減少度合いが最大となるタイミングT2を特定し、当該タイミングT2の所定時間ΔT後であるタイミングT3を工具32がワークWから離れた瞬間とする。そして、工作機械100は、タイミングT1からタイミングT3までの期間を実際の加工時間として算出する。これにより、工作機械100は、実際の加工時間をより正確に算出することができる。
【0096】
今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【0097】
21 主軸頭、22 主軸、23 ハウジング、25,52,54 ボールねじ、30 自動工具交換装置、31 マガジン、32 工具、33 押出し機構、34 工具保持部、35 スプロケット、36 アーム、50 移動機構、51,53 ガイド、55 テーブル、100 工作機械、101 制御装置、102 ROM、103 RAM、104 通信インターフェイス、105 表示インターフェイス、109 入力インターフェイス、110 動力計、111A,111B,111C,111D サーボドライバ、112A,112B,112C,112D サーボモータ、113A,113B,113C,113D エンコーダ、120 記憶装置、122 加工プログラム、124 工具情報、126 加工履歴情報、130 ディスプレイ、131 入力デバイス、152 負荷取得部、154,158 移動平均部、156 変化率算出部、160 加工時間算出部、162 摩耗推定部、164 寿命推定部。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11