(58)【調査した分野】(Int.Cl.,DB名)
前記複数回の加工のうち、前記最終仕上げ前のある時点での工作物の加工の際に収集される前記状態データは、前記工作機械の主軸モータ負荷及び各軸モータ負荷の1つ以上を含む、請求項1記載の制御システム。
前記加工状態データは、前記工作機械の主軸モータ負荷、各軸モータ負荷及び主軸振動、ワーク加工時に予め設定されている加工条件である送り速度、回転数及び切込量の1つ以上を含む、請求項1又は2記載の制御システム。
前記設備状態データは、工作機械内部もしくは周囲の環境温度、冷却水温度、冷却水流量、冷却水濃度、治具温度、主軸冷却油温度、ボールネジ温度、各軸サーボモータ温度、工具直径、工具長、工具直径または工具長の補正量、工具使用回数、工具取付状態及びワーク把握力の1つ以上を含む、請求項1乃至3何れか一項記載の制御システム。
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上述したような従来の工作機械制御技術では、製造された工作物の品質は考慮されていない。
【0006】
本開示では、製造された工作物の品質を考慮した工作機械の制御技術を提案する。
【課題を解決するための手段】
【0007】
本開示の一態様は、
加工状態データ、設備状態データ及び素材状態データの1つ以上を含む、工作機械に関する状態データを収集する状態観測部と、
前記工作機械による工作物の精度データを取得する精度結果観測部と、
前記収集した状態データ及び前記取得した精度データによって機械学習モデルを学習する学習部と、
複数回に分けて同一箇所を加工する工作物の加工の際に、前記学習済み機械学習モデルによって、前記工作機械による複数回の加工のうち、最終仕上げ前のある時点での前記工作物の加工の際に収集される前記状態データから、前記工作機械に対する指令データを決定し、前記指令データによって前記工作機械に前記工作物に対する最終仕上げ加工を実行させる指令決定部と、
を有する制御システムに関する。
【0008】
本態様によると、製造された工作物の品質を考慮して工作機械を制御することができる。
【0009】
一実施例では、前記複数回の加工のうち、前記最終仕上げ前のある時点での工作物の加工の際に収集される前記状態データは、前記工作機械の主軸モータ負荷及び各軸モータ負荷の1つ以上を含んでもよい。
【0010】
一実施例では、前記加工状態データは、前記工作機械の主軸モータ負荷、各軸モータ負荷及び主軸振動、ワーク加工時に予め設定されている加工条件である送り速度、回転数及び切込量の1つ以上を含んでもよい。
【0011】
一実施例では、前記設備状態データは、工作機械内部もしくは周囲の環境温度、冷却水温度、冷却水流量、冷却水濃度、治具温度、主軸冷却油温度、ボールネジ温度、各軸サーボモータ温度、工具直径、工具長、工具直径または工具長の補正量、工具使用回数、工具取付状態及びワーク把握力の1つ以上を含んでもよい。
【0012】
一実施例では、前記素材状態データは、素材硬度、素材強度及び加工前寸法の1つ以上を含んでもよい。
【0013】
一実施例では、前記精度データは、加工後の前記工作物の寸法、粗さ及び幾何精度の1つ以上を含んでもよい。
【0014】
一実施例では、前記学習部は、所定の再学習タイミングで前記機械学習モデルを再学習し、前記指令決定部は、前記再学習された機械学習モデルによって前記指令データを決定してもよい。
【0015】
本実施例によると、機械学習モデルを動的に再学習することが可能である。
【0016】
一実施例では、前記指令決定部は、前記工作機械による工作物の加工の際に収集された状態データに対する線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークからの前記精度データの予測値と、前記工作機械による加工後の前記工作物の前記精度データの実測値との間の誤差によって、前記学習済み機械学習モデルとして前記線形重回帰分析モデル、前記非線形重回帰分析モデル又は前記ニューラルネットワークを選択してもよい。
【0017】
本実施例によると、予測値と実測値の誤差に応じて適切な機械学習モデルを選択することができる。
【0018】
一実施例では、前記指
令決定部は、回帰分析モデルを選択した場合、前記回帰
分析モデルの回帰式の逆モデルを解くことによって前記指令データを決定してもよい。
【0019】
本開示の一態様は、
加工状態データ、設備状態データ及び素材状態データの1つ以上を含む、工作機械に関する状態データを収集する状態観測部と、
前記工作機械による工作物の精度データを取得する精度結果観測部と、
前記収集した状態データ及び前記取得した精度データによって機械学習モデルを学習する学習部と、
を有するモデル生成装置に関する。
【0020】
本態様によると、製造された工作物の品質を考慮して工作機械を制御することができる。
【0021】
一実施例では、前記機械学習モデルは、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークの1つ以上を含んでもよい。
【0022】
本実施例によると、様々な機械学習モデルを選択的に利用することができる。
【0023】
一実施例では、前記学習部は、前記収集した状態データ及び前記取得した精度データによって前記線形重回帰分析モデル、前記非線形重回帰分析モデル及び前記ニューラルネットワークの1つ以上を学習してもよい。
【0024】
一実施例では、前記加工状態データは、前記工作機械の主軸モータ負荷、各軸モータ負荷及び主軸振動、ワーク加工時に予め設定されている加工条件である送り速度、回転数及び切込量の1つ以上を含んでもよい。
【0025】
一実施例では、前記設備状態データは、工作機械内部もしくは周囲の環境温度、冷却水温度、冷却水流量、冷却水濃度、治具温度、主軸冷却油温度、ボールネジ温度、各軸サーボモータ温度、工具直径、工具長、工具直径または工具長の補正量、工具使用回数、工具取付状態及びワーク把握力の1つ以上を含んでもよい。
【0026】
一実施例では、前記素材状態データは、素材硬度、素材強度及び加工前寸法の1つ以上を含んでもよい。
【0027】
一実施例では、前記精度データは、加工後の前記工作物の寸法、粗さ及び幾何精度の1つ以上を含んでもよい。
【0028】
本開示の他の態様は、
工作機械による工作物の加工の際に加工状態データ、設備状態データ及び素材状態データの1つ以上を含む、前記工作機械に関する状態データを収集する状態観測部と、
学習済み機械学習モデルによって前記収集した状態データから前記工作機械に対する指令データを決定する指令決定部と、
を有する制御装置に関する。
【0029】
本態様によると、製造された工作物の品質を考慮して工作機械を制御することができる。
【0030】
一実施例では、前記学習済み機械学習モデルは、前記工作機械に関して収集された状態データ及び前記工作機械による工作物に関して取得された精度データによって学習されてもよい。
【0031】
一実施例では、前記指令決定部は、前記工作機械による工作物の加工の際に収集された状態データに対する線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークからの前記精度データの予測値と、前記工作機械による加工後の前記工作物の前記精度データの実測値との間の誤差によって、前記学習済み機械学習モデルとして前記線形重回帰分析モデル、前記非線形重回帰分析モデル又は前記ニューラルネットワークを選択してもよい。
【0032】
本実施例によると、予測値と実測値の誤差に応じて適切な機械学習モデルを選択することができる。
【0033】
一実施例では、前記指令データは、前記状態データの何れかのデータ項目の値を示してもよい。
【0034】
本開示の他の態様は、
加工状態データ、設備状態データ及び素材状態データの1つ以上を含む、工作機械に関する状態データを収集する状態観測部と、
前記工作機械による工作物の精度データを取得する精度結果観測部と、
前記収集した状態データ及び前記取得した精度データによって機械学習モデルを学習する学習部と、
前記学習済み機械学習モデルによって、前記工作機械による工作物の加工の際に収集される前記状態データから前記工作機械に対する指令データを決定する指令決定部と、
を有する制御システムに関する。
【0035】
本態様によると、製造された工作物の品質を考慮して工作機械を制御することができる。
【0036】
一実施例では、前記学習部は、所定の再学習タイミングで前記機械学習モデルを再学習し、前記指令決定部は、前記再学習された機械学習モデルによって前記指令データを決定してもよい。
【0037】
本実施例によると、機械学習モデルを動的に再学習することが可能である。
【発明を実施するための形態】
【0040】
以下の実施形態では、加工状態データ、設備状態データ、素材状態データなどの工作機械に関する各種状態データと、当該工作機械による工作物の精度データとの関係を予測する機械学習モデルを生成するモデル生成装置と、モデル生成装置によって生成された機械学習モデルを利用して工作機械を制御する制御装置とが開示される。
[本開示の概略]
図1に示されるように、本開示の実施例によるモデル生成装置100は、加工状態データ、設備状態データ、素材状態データなどの工作機械50に関する各種状態データと、工作機械50による工作物の精度データとを訓練データとして利用して、状態データと精度データとの関係を予測する機械学習モデル1〜Nを学習する。例えば、学習対象の機械学習モデル1〜Nは、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークの1つ以上を含んでもよい。機械学習モデル1〜Nの学習後、モデル生成装置100は、学習済みの機械学習モデル1〜Nを制御装置200に提供する。制御装置200は、学習済み機械学習モデル1〜Nを利用して、入力された状態データから工作機械50を制御するための指令データを生成し、生成した指令データに従って工作機械50を制御する。
【0041】
このようにして、工作機械50に関する状態データだけでなく工作物の品質を示す精度データもまた機械学習モデルの学習に取り入れることによって、生成された機械学習モデルは、一定の品質を確保した工作物を製造するための指令データを決定することができる。
【0042】
さらに、当該指令データに従って制御された工作機械によって加工された工作物の品質を示す精度データが収集され、収集された精度データはフィードバックデータとしてモデル生成装置100に提供されてもよい。工作機械50の1つの工作物(ワーク)の製造完了などの所定の更新イベントの発生に応答して、モデル生成装置100は、フィードバックデータを利用して機械学習モデル1〜Nを再学習してもよい。これにより、適時的に再学習された機械学習モデル1〜Nを利用して、各時点の状態に適した指令データを決定することが可能になり、一定の品質を確保した工作物を安定的に製造することが可能になる。
[モデル生成装置]
まず、
図2〜4を参照して、本開示の一実施例によるモデル生成装置100を説明する。
図2は、本開示の一実施例によるモデル生成装置100の機能構成を示すブロック図である。
【0043】
図2に示されるように、モデル生成装置100は、状態観測部110、精度結果観測部120及び学習部130を有する。
【0044】
状態観測部110は、加工状態データ、設備状態データ及び素材状態データの1つ以上を含む、工作機械50に関する状態データを収集する。具体的には、状態観測部110は、機械学習モデル1〜Nを学習するための訓練データとして利用するため、工作機械50による工作物(ワーク)の加工処理の際、加工状態データ、設備状態データ及び素材状態データの1つ以上を予め取得する。
【0045】
例えば、加工状態データは、工作機械50の主軸モータ負荷、各軸モータ負荷及び主軸振動、ワーク加工時に予め設定されている加工条件である送り速度、回転数及び切込量の1つ以上を含んでもよい。ここで、主軸モータ負荷、各軸モータ負荷及び主軸振動は、工作機械50によるワーク加工時の加工負荷に関するものであり、送り速度、回転数及び切込量は、工作機械50のワーク加工においてオペレータなどによって設定された加工条件に関するものである。なお、送り速度、回転数、切込量などの加工条件の各データ項目は、工作機械50の動作を制御するための指令データとして制御装置200によって利用されうる。
【0046】
また、設備状態データは、例えば、工作機械50内部もしくは周囲の環境温度、冷却水温度、冷却水流量、冷却水濃度、治具温度、主軸冷却油温度、ボールネジ温度、各軸サーボモータ温度、工具直径、工具長、工具直径または工具長の補正量、工具使用回数、工具取付状態及びワーク把握力の1つ以上を含んでもよい。ここで、工作機械50内部もしくは周囲の環境温度、冷却水温度、冷却水流量、冷却水濃度、治具温度、主軸冷却油温度、ボールネジ温度及びモータ温度などの温度データは、温度計などのセンサを取付けることによって測定されてもよいし、工作機械メーカや装置メーカ独自であらかじめ設けたセンサにより測定している状態データを利用してもよい。また、工具直径、工具長、工具直径または工具長の補正量、工具使用回数、工具取付状態及びワーク把握力などの工具関連データは、当該工具の取付時及び使用中に設定又は測定されてもよい。なお、工具直径、工具長、工具使用回数などの工具データの各データ項目は、工作機械50を設定するための指令データとして制御装置200によって利用されうる。
【0047】
さらに、素材状態データは、素材硬度、素材強度及び加工前寸法の1つ以上を含んでもよい。当該素材状態データは、工作機械50への素材の投入時に設定又は測定されてもよい。
【0048】
これらの加工状態データ、設備状態データ及び素材状態データは、工作機械50による加工処理に影響を与えると考えられ、工作物の精度は、加工状態データ、設備状態データ及び素材状態データに依存すると考えられる。しかしながら、状態データは、加工状態データ、設備状態データ及び素材状態データに限定されず、工作機械50による加工処理又は工作物の精度に影響を与えると考えられる他の何れか適切なデータを含んでもよい。また、加工状態データ、設備状態データ及び素材状態データは、上述したデータ項目に限定されず、工作機械50による加工処理又は工作物の精度に影響を与えると考えられる他の何れか適切なデータ項目から構成されてもよい。本実施例では、工作機械50は、切削などにより工作物を製造するが、本開示による工作機械50は、これに限定されず、他の何れかのタイプの工作物を加工、処理、製造等する装置であってもよい。また、本開示による工作機械50は、研削加工、塑性加工などの他のタイプの加工、処理、製造等を実行する装置であってもよい。状態データは、工作機械50及び工作物のタイプに応じた適切なデータ項目から構成されてもよい。
【0049】
精度結果観測部120は、工作機械50による工作物の精度データを取得する。具体的には、精度結果観測部120は、機械学習モデル1〜Nを学習するための訓練データとして利用するため、上述した状態データによる加工状態、設備状態及び素材状態の下で工作機械50によって製造された工作物(ワーク)の品質を示す精度データを測定する。例えば、精度データは、加工後の工作物の寸法、表面の粗さ(表面の平面度など)及び幾何精度の1つ以上を含んでもよい。精度データは、何れか適切な測定装置などを利用して、加工後の工作物を測定することによって生成及び取得されうる。測定された精度データは、加工処理時の加工状態データ、設備状態データ及び素材状態データと関連付けされる。
【0050】
学習部130は、収集した状態データ及び取得した精度データによって機械学習モデルを学習する。具体的には、学習部130は、状態観測部110によって予め収集された加工状態データ、設備状態データ及び素材状態データの1つ以上を含む状態データと、精度結果観測部120によって予め取得された精度データとを訓練データとして利用して、複数の機械学習モデル1〜Nを学習する。
【0051】
一実施例では、これらの機械学習モデル1〜Nは、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークの1つ以上を含んでもよい。
【0052】
例えば、線形重回帰分析モデルの学習では、状態データと精度データとのペアが訓練データとして多数準備される。学習部130は、状態データの各データ項目を説明変数とし、精度データを目的変数として、準備された訓練データに対して線形重回帰分析を実行し、説明変数の値を引数とし、出力される値を目的変数の値とする線形の回帰式を導出する。なお、線形重回帰分析は周知の統計解析手法であり、ここでの線形重回帰式の導出の具体的処理の説明は省略する。
【0053】
さらに、学習部130は、以下のように、制御装置200によって出力される指令データの各データ項目(例えば、送り速度、回転数、切込量、工具直径、工具長、工具直径または工具長の補正量、工具使用回数など)が解となるように、導出した線形重回帰式を変形してもよい。一般に、
図3に示されるように、線形重回帰式は、
y=b
1x
1+b
2x
2+・・・+b
kx
k+e
により表される。ここで、x
iは状態データの各データ項目を表す説明変数であり、yは精度データを表す目的変数である。また、b
iは偏回帰係数であり、eは誤差である。例えば、x
jが指令データのあるデータ項目を示す説明変数である場合、学習部130は、線形重回帰式を
x
j=(y−b
1x
1−・・・−b
j−1x
j−1−b
j+1x
j+1−・・・−b
kx
k−e)/b
j
と変形することによって、指令データx
jを導出することができる。このようにして、学習部130は、指令データの各データ項目x
jに対して、上述したように線形重回帰式を変形し、指令データの各データ項目x
jの関数を導出してもよい。
【0054】
非線形重回帰分析モデルの学習では、状態データと精度データとのペアが訓練データとして多数準備される。学習部130は、状態データの各データ項目を説明変数とし、精度データを目的変数として、準備された訓練データに対して非線形重回帰分析を実行し、説明変数の値を引数とし、出力される値を目的変数の値とする非線形の回帰式を導出する。線形重回帰式が一次関数の形式により表されるのに対して、非線形重回帰式は説明変数の二次以上の高次関数の形式により表される。非線形重回帰式は、一般には、
y=f(x
1,x
2,・・・,x
k)
により表され、例えば、
y=b
1x
1α1+b
2x
2α2+・・・+b
kx
kαk+e
により表されてもよい。ここで、x
iは状態データの各データ項目を表す説明変数であり、yは精度データを表す目的変数である。また、b
iは偏回帰係数であり、eは誤差である。また、α1,α2,・・・αkは、正の整数である。なお、非線形重回帰分析もまた周知の統計解析手法であり、ここでの非線形重回帰式の導出の具体的処理の説明は省略する。
【0055】
線形重回帰式と異なって、非線形重回帰式は必ずしも説明変数に関して解析的に解くことができるとは限らない。このため、例えば、指令データ以外の状態データ及び精度データの値を導出された非線形重回帰式に代入し、何れかの数値計算手法を利用して、指令データの値を求めてもよい。
【0056】
ニューラルネットワークの学習では、状態データと精度データとのペアが訓練データとして多数準備される。学習部130は、何れか適切なネットワークアーキテクチャを有するニューラルネットワークに状態データを入力し、ニューラルネットワークからの出力と入力した状態データに対応する精度データとの誤差に応じて、例えば、誤差逆伝播法に従ってニューラルネットワークのパラメータを更新する。準備された全ての訓練データに対してパラメータ更新処理が終了するなどの所定の終了条件を充足するまで、学習部130は上述したパラメータ更新処理を繰り返し、最終的なニューラルネットワークを学習済み機械学習モデルとして取得する。
図4(a)に示されるように、このようにして学習された機械学習モデルは、状態データx
i(1≦i≦k)から精度データyを予測することが可能である。
【0057】
また、学習部130は、準備された訓練データを利用して、状態データ及び精度データから指令データを予測するニューラルネットワークを取得してもよい。例えば、状態データのあるデータ項目を指令データx
jとして提供するため、学習部130は、訓練データにおける当該指令データx
j以外の状態データx
iと精度データyとを入力用の訓練データとし、指令データx
jを出力用の訓練データとして利用して、何れか適切なネットワークアーキテクチャを有するニューラルネットワークを学習してもよい。このようにして学習されたニューラルネットワークは、状態データ及び精度データから指令データを予測することが可能である。このようにして、学習部130は、指令データの各データ項目に対して、状態データ及び精度データから当該データ項目の値を予測する学習済み機械学習モデルを取得することが可能である。
図4(b)に示されるように、このようにして学習された機械学習モデルは、状態データx
i(1≦i≦j−1,j+1≦i≦k)及び精度データyから指令データx
jを予測することが可能である。
【0058】
なお、上述した実施例では、精度データは単一のデータ項目から構成されたが、本開示の精度データはこれに限定されず、複数のデータ項目から構成されてもよい。この場合、重回帰式は、
y
k=f
k(x
1,x
2,・・・,x
k)
により表される。また、状態データから精度データを出力するニューラルネットワークは、精度データの各データ項目に対して別々に生成されてもよいし、全てのデータ項目を出力するようなネットワークアーキテクチャによって構成されてもよい。
[モデル生成処理]
次に、
図5を参照して、本開示の一実施例によるモデル生成処理を説明する。当該モデル生成処理は、モデル生成装置100によって実現され、具体的には、モデル生成装置100のプロセッサがプログラムを実行することによって実現されてもよい。
図5は、本開示の一実施例によるモデル生成処理を示すフローチャートである。
【0059】
図5に示されるように、ステップS101において、モデル生成装置100は、工作機械50に関する状態データを収集する。具体的には、モデル生成装置100は、機械学習モデルの訓練データとして利用するため、工作機械50に関する状態データを予め収集し、収集した状態データをメモリなどの記憶装置に保持する。例えば、状態データは、工作機械50の加工状態データ、設備状態データ及び素材状態データの1つ以上を含んでもよく、工作機械50のオペレータによって設定されてもよいし、工作機械50による加工処理中に取得されてもよいし、センサから検知されてもよい。
【0060】
ステップS102において、モデル生成装置100は、工作物の精度データを取得する。具体的には、モデル生成装置100は、機械学習モデルの訓練データとして利用するため、各状態データの下で工作機械50によって加工された工作物の精度データを取得し、取得した精度データを状態データと関連付けてメモリなどの記憶装置に保持する。例えば、精度データは、加工後の工作物の寸法、粗さ及び幾何精度の1つ以上を含んでもよく、加工後の工作物を測定する測定器などから取得されてもよい。しかしながら、本開示による精度データは、これらに限定されず、工作機械50及び工作物のタイプに応じて他の適切なデータ項目を示すものであってもよい。
【0061】
ステップS103において、モデル生成装置100は、状態データ及び精度データによって機械学習モデルを学習する。具体的には、モデル生成装置100は、ステップS101において収集した状態データと、ステップS102において取得した精度データとを訓練データとして利用して、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークを生成する。
【0062】
線形重回帰分析モデルの生成では、モデル生成装置100は、状態データを説明変数とし、精度データを目的変数とする線形重回帰式を導出し、導出した線形重回帰式を変形することによって、各指令データを求める関数を導出してもよい。
【0063】
非線形重回帰分析モデルの生成では、モデル生成装置100は、状態データを説明変数とし、精度データを目的変数とする非線形重回帰式を導出する。ここで、導出された非線形重回帰式が解析的に解ける場合、モデル生成装置100は、導出した非線形重回帰式を変形することによって、各指令データを求める関数を導出してもよい。
【0064】
ニューラルネットワークの生成では、モデル生成装置100は、訓練データによって状態データから精度データを出力するニューラルネットワークを学習する。さらに、モデル生成装置100は、訓練データによって状態データ及び精度データから各指令データを出力するニューラルネットワークを学習してもよい。
【0065】
モデル生成装置100は、以降の工作機械50の制御のため、学習した機械学習モデルを制御装置200に提供する。
[制御装置]
次に、
図6及び7を参照して、本開示の一実施例による制御装置200を説明する。制御装置200は、工作機械50に関して収集された状態データ及び工作機械50によって製造された工作物に関して取得された精度データを訓練データとして用いてモデル生成装置100によって学習された機械学習モデルを利用して、工作機械50の加工処理を制御する。
図6は、本開示の一実施例による制御装置200の機能構成を示すブロック図である。
【0066】
図6に示されるように、制御装置200は、状態観測部210及び指令決定部220を有する。
【0067】
状態観測部210は、工作機械50による工作物の加工の際に加工状態データ、設備状態データ及び素材状態データの1つ以上を含む、工作機械50に関する状態データを収集する。具体的には、状態観測部210は、工作機械50による工作物の加工前及び加工中、加工状態データ、設備状態データ及び素材状態データの1つ以上を収集する。
【0068】
例えば、状態観測部210は、加工状態データとして、工作機械50の主軸モータ負荷、各軸モータ負荷及び主軸振動、ワーク加工時に予め設定されている加工条件である送り速度、回転数及び切込量の1つ以上を収集してもよい。工作機械50の主軸モータ負荷、各軸モータ負荷及び主軸振動は、工作物の加工中に工作機械50の動作データから収集されてもよく、送り速度、回転数及び切込量は、工作物の加工前にオペレータによって設定されてもよい。
【0069】
また、状態観測部210は、設備状態データとして、工作機械50内部もしくは周囲の環境温度、冷却水温度、冷却水流量、冷却水濃度、治具温度、主軸冷却油温度、ボールネジ温度、各軸サーボモータ温度、工具直径、工具長、工具直径または工具長の補正量、工具使用回数、工具取付状態及びワーク把握力の1つ以上を収集してもよい。環境温度、冷却水温度、冷却水流量、冷却水濃度、治具温度、主軸冷却油温度、ボールネジ温度及び各軸サーボモータ温度は、工作物の加工前及び加工中に温度計などのセンサを取り付けることによって収集されてもよいし、工作機械メーカや装置メーカ独自であらかじめ設けたセンサにより測定している状態データを利用してもよい。また、工具直径、工具長、工具直径または工具長の補正量、工具使用回数、工具取付状態及びワーク把握力は、工作物の加工前に当該工具の工具データから収集されてもよい。
【0070】
また、状態観測部210は、素材状態データとして、素材硬度、素材強度及び加工前寸法の1つ以上を収集してもよい。素材硬度、素材強度及び加工前寸法は、加工対象の素材に対して予め保持している素材状態データから抽出されてもよい。
【0071】
指令決定部220は、学習済み機械学習モデルによって収集した状態データから工作機械50に対する指令データを決定する。具体的には、指令決定部220は、モデル生成装置100から提供された学習済み機械学習モデルを利用して、収集した状態データと所与の精度データとを機械学習モデルに入力し、機械学習モデルから工作機械50を制御するための指令データを決定する。
【0072】
指令データは、機械学習モデルの訓練データに利用される状態データの何れかのデータ項目の値を示すものであってもよく、例えば、送り速度、回転数、切込量、工具直径、工具長、工具使用回数などであってもよい。しかしながら、本開示による指令データは、これらに限定されず、工作機械50及び工作物のタイプに応じて工作機械50の制御に関する何れか適切なデータ項目であってもよい。
【0073】
例えば、モデル生成装置100の線形重回帰分析によって、
図7(a)に示されるような線形重回帰式が導出された場合、モデル生成装置100は、導出された線形重回帰式を変形することによって、
図7(b)に示されるような指令データとしての加工取り代補正値を求めるための等価な関数を導出することができる。指令決定部220は、
図7(b)に示される加工取り代補正値の関数において、精度データとしての加工精度a1をゼロに設定し、さらに状態データとしての主軸モータ負荷を一定値に設定することによって、
図7(c)に示される式によって加工取り代補正値を決定することができる。指令決定部220は、決定した加工取り代補正値を示す指令データを工作機械50に送信する。工作機械50は、受信した加工取り代補正値及び主軸モータ負荷の設定値に従って動作することによって、加工誤差がほぼゼロになる工作物を製造できると考えられる。
【0074】
ここでは、線形重回帰分析モデルを参照して指令決定部220による指令データの決定処理を説明したが、同様にして非線形重回帰分析モデル及びニューラルネットワークに基づき指令データを決定できることは当業者に理解できるであろう。例えば、非線形重回帰分析モデルでは、指令決定部220は、導出された非線形重回帰式に、指令データの説明変数x
j以外の状態データの説明変数x
iの値と目的変数yの設定値とを入力し、数値計算によって説明変数x
jの値を計算してもよい。また、ニューラルネットワークでは、指令決定部220は、指令データx
jを出力する学習済みニューラルネットワークに、指令データx
j以外の状態データx
iの値と精度データyの設定値とを入力し、指令データx
jの値を取得してもよい。
【0075】
一実施例では、指令決定部220は、工作機械50による工作物の加工の際に収集された状態データに対する線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークからの精度データの予測値と、工作機械50による加工後の工作物の精度データの実測値との間の誤差によって、学習済み機械学習モデルとして線形重回帰分析モデル、非線形重回帰分析モデル又はニューラルネットワークを選択してもよい。具体的には、モデル生成装置100から線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークの複数の学習済み機械学習モデルが提供されると、指令決定部220は、提供された学習済み機械学習モデルのうち、予測精度の最も高い学習済み機械学習モデルを利用して指令データを決定する。例えば、指令決定部220は、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークのそれぞれを利用して決定した指令データによる制御下で工作機械50によって製造された工作物の精度の測定結果と、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークそれぞれの精度データの予測値とを比較し、その誤差が最小となる機械学習モデルを利用して、以降の加工処理のための指令データを決定してもよい。
[制御処理]
次に、
図8を参照して、本開示の一実施例による制御処理を説明する。当該制御処理は、制御装置200によって実現され、具体的には、制御装置200のプロセッサがプログラムを実行することによって実現されてもよい。
図8は、本開示の一実施例による制御処理を示すフローチャートである。
【0076】
図8に示されるように、ステップS201において、制御装置200は、工作機械50に関する状態データを収集する。具体的には、制御装置200は、工作機械50による加工処理前及び加工処理中、工作機械50に関する状態データを収集し、収集した状態データをメモリなどの記憶装置に保持する。例えば、状態データは、工作機械50の加工状態データ、設備状態データ及び素材状態データの1つ以上を含んでもよく、工作機械50のオペレータによって設定されてもよいし、工作機械50による加工処理中に取得されてもよいし、センサから検知されてもよい。
【0077】
ステップS202において、制御装置200は、学習済み機械学習モデルによって状態データから工作機械50に対する指令データを決定する。具体的には、制御装置200は、モデル生成装置100から提供された学習済み機械学習モデルを利用して、収集した状態データと所与の精度データとを機械学習モデルに入力し、機械学習モデルから工作機械50を制御するための指令データを決定する。
【0078】
例えば、学習済み線形重回帰分析モデルを利用する場合、制御装置200は、モデル生成装置100から提供された線形重回帰式に、指令データ以外の状態データの収集された値と精度データの設定値とを入力し、指令データの値を算出してもよい。
【0079】
また、学習済み非線形重回帰分析モデルを利用する場合、制御装置200は、モデル生成装置100から提供された非線形重回帰式に、指令データ以外の状態データの収集された値と精度データの設定値とを入力し、指令データの値を算出してもよい。
【0080】
また、学習済みニューラルネットワークを利用する場合、制御装置200は、モデル生成装置100から提供された指令データを出力するニューラルネットワークに、指令データ以外の状態データの収集された値と精度データの設定値とを入力し、指令データの値を予測してもよい。
【0081】
制御装置200は、このようにして決定した指令データを工作機械50に送信する。当該指令データによる制御下で製造された工作物の精度を示す測定結果を取得すると、制御装置200は、取得した測定結果と精度データの設定値とを比較し、その誤差が最小となる機械学習モデルを、以降の加工処理における指令データを決定するのに利用してもよい。
[制御システム]
次に、
図9〜11を参照して、本開示の一実施例による制御システム300を説明する。制御システム300は、上述したモデル生成装置100及び制御装置200の機能を併せ持ち、機械学習モデルを学習すると共に、学習された機械学習モデルを利用した指令データを決定する。例えば、制御システム300は、モデル生成装置100と制御装置200との物理構成又は機能構成の双方を含むように実現されてもよい。
図9は、本開示の一実施例による制御システム300の機能構成を示すブロック図である。
【0082】
図9に示されるように、制御システム300は、状態観測部310、精度結果観測部320、学習部330及び指令決定部340を有する。
【0083】
状態観測部310は、加工状態データ、設備状態データ及び素材状態データの1つ以上を含む、工作機械50に関する状態データを収集する。具体的には、状態観測部310は、機械学習モデルを学習するための訓練データの収集のため、工作機械50に関する状態データを収集する。さらに、状態観測部310は、学習済み機械学習モデルを利用した工作機械50の制御のため、加工処理前及び加工処理中の工作機械50に関する状態データを収集する。
【0084】
精度結果観測部320は、工作機械50による工作物の精度データを取得する。具体的には、精度結果観測部320は、機械学習モデルを学習するための訓練データの収集のため、工作機械50によって製造された工作物の精度データを収集する。さらに、精度結果観測部320は、指令決定部340によって決定された指令データに従って制御された工作機械50によって製造された工作物の精度データを収集する。
【0085】
学習部330は、収集した状態データ及び取得した精度データによって機械学習モデルを学習する。具体的には、学習部330は、状態観測部310によって収集された状態データと精度結果観測部320によって取得された精度データとのペアから構成される訓練データを利用して、指令決定部340によって利用される機械学習モデルを学習する。例えば、上述したように、機械学習モデルは、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークの1つ以上を含んでもよく、モデル生成装置100の学習部130について上述したように学習される。
【0086】
指令決定部340は、学習済み機械学習モデルによって、工作機械50による工作物の加工の際に収集される状態データから工作機械50に対する指令データを決定する。具体的には、指令決定部340は、制御装置200の指令決定部220と同様に、学習部330によって学習された機械学習モデルを利用して、状態観測部310によって加工処理前及び加工処理中に収集された工作機械50に関する状態データの値と精度データの設定値とから、指令データを決定する。指令決定部340は、決定した指令データを工作機械50に送信する。
【0087】
一実施例では、指定決定部340は、複数回に分けて同一箇所を加工する工作物の加工の際に、学習済み機械学習モデルによって、工作機械50による複数回の加工のうち、最終仕上げ前のある時点での工作物の加工の際に収集される状態データから、工作機械50に対する指令データを決定し、指令データによって工作機械50に工作物に対する最終仕上げ加工を実行させてもよい。すなわち、一般的な工作物の加工では、工作物は、複数回の加工を通じて徐々に最終製品として形成される。精緻な加工精度が要求されるのは最終仕上げ段階であるため、最終仕上げのために機械学習モデルが訓練及び利用されてもよい。例えば、学習部330は、最終仕上げ時の状態データと精度データとを訓練データとして利用して、機械学習モデルを訓練してもよい。状態観測部310は、最終仕上げ前のある時点で工作物の状態データを収集し、指令決定部340は、訓練済み機械学習モデルを利用して、収集した状態データから工作機械50に対する指令データを決定し、工作機械50に指令データを送信する。ここで、収集される状態データは、工作機械50の主軸モータ負荷及び各軸モータ負荷の1つ以上を含むものであってもよい。指令データを受信すると、工作機械50は、受信した指令データに従って工作物に対する最終仕上げを実行する。
【0088】
図10は、本開示の一実施例による制御処理を示すフローチャートである。当該制御処理は、制御システム300によって実現され、具体的には、制御システム300のプロセッサがプログラムを実行することによって実現されてもよい。
【0089】
図10に示されるように、ステップS301において、制御システム300は、工作機械に関する状態データを収集する。具体的には、制御システム300は、機械学習モデルの訓練データとして利用するため、工作機械50に関する状態データを予め収集する。例えば、状態データは、工作機械50の加工状態データ、設備状態データ及び素材状態データの1つ以上を含んでもよく、工作機械50のオペレータによって設定されてもよいし、工作機械50による加工処理中に取得されてもよいし、センサから検知されてもよい。
【0090】
ステップS302において、制御システム300は、工作物の精度データを取得する。具体的には、制御システム300は、機械学習モデルの訓練データとして利用するため、各状態データの下で工作機械50によって加工された工作物の精度データを取得する。例えば、精度データは、加工後の工作物の寸法、粗さ及び幾何精度の1つ以上を含んでもよく、加工後の工作物を測定する測定器などから取得されてもよい。しかしながら、本開示による精度データは、これらに限定されず、工作機械50及び工作物のタイプに応じて他の適切なデータ項目を示すものであってもよい。
【0091】
ステップS303において、制御システム300は、状態データ及び精度データによって機械学習モデルを学習する。具体的には、制御システム300は、ステップS301において収集した状態データと、ステップS302において取得した精度データとを訓練データとして利用して、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークを生成する。
【0092】
ステップS304において、制御システム300は、学習済み機械学習モデルによって状態データから工作機械50に対する指令データを決定する。具体的には、制御システム300は、ステップS303において学習した機械学習モデルを利用して、収集した状態データと所与の精度データとを機械学習モデルに入力し、機械学習モデルから工作機械50を制御するための指令データを決定する。
【0093】
一実施例では、制御システム300は、複数回に分けて同一箇所を加工する工作物の加工の際に、学習済み機械学習モデルによって、工作機械50による複数回の加工のうち、最終仕上げ前のある時点での工作物の加工の際に収集される状態データから、工作機械50に対する指令データを決定し、指令データによって工作機械50に工作物に対する最終仕上げ加工を実行させてもよい。制御システム300は、最終仕上げ時の状態データと精度データとを訓練データとして利用して、機械学習モデルを訓練してもよい。ここで、収集される状態データは、工作機械50の主軸モータ負荷及び各軸モータ負荷の1つ以上を含むものであってもよい。制御システム300は、最終仕上げ前のある時点で工作物の状態データを収集し、訓練済み機械学習モデルを利用して、収集した状態データから工作機械50に対する指令データを決定し、工作機械50に指令データを送信する。制御システム300から指令データを受信すると、工作機械50は、受信した指令データに従って工作物に対する最終仕上げを実行する。
【0094】
一実施例では、学習部330は、所定の再学習タイミングで機械学習モデルを再学習し、指令決定部340は、再学習された機械学習モデルによって指令データを決定してもよい。例えば、所定数の工作物が製造される毎に、学習部330は、精度結果観測部320から製造された工作物の精度データを取得し、取得した精度データと当該工作物の製造時に利用された指令データ及び状態データとを既存の訓練データに取り込み、更新後の訓練データによって機械学習モデルを再学習してもよい。指令決定部340は、再学習された機械学習モデルに基づき、以降の加工処理に用いる指令データを決定してもよい。このように、最新の状態データ及び精度データを訓練データとして利用して機械学習モデルを動的に再学習することによって、より精度の高い指令データによって工作機械50を制御することが可能になる。
【0095】
図11は、本開示の一実施例による制御処理を示すフローチャートである。当該制御処理は、制御システム300によって実現され、具体的には、制御システム300のプロセッサがプログラムを実行することによって実現されてもよい。なお、
図11のステップS401〜S404は、
図10のステップS301〜S304と同様であり、重複を避けるため、説明を省略する。
【0096】
ステップS405において、制御システム300は、指令データに従って工作機械50に加工処理を実行させる。具体的には、制御システム300は、ステップS404において決定した指令データを工作機械50に送信し、工作機械50の動作を制御する。
【0097】
ステップS406において、制御システム300は、工作機械50によって製造された工作物の精度データを取得する。具体的には、制御システム300は、製造された工作物の精度を測定器に測定させ、測定器から測定結果を示す精度データを取得する。
【0098】
ステップS407において、制御システム300は、更なるワークが有るか判断し、更なるワークが有る場合(ステップS407:YES)、ステップS401に戻って、ステップS406において取得した精度データを利用して機械学習モデルを再学習する。他方、更なるワークがない場合(ステップS407:NO)、制御システム300は、当該制御を終了する。
【0099】
上述したように、最終仕上げの際に機械学習モデルを利用する場合、制御システム300は、工作物の最終仕上げを実行する前に、所定数の直近に加工済みの工作物の最終仕上げの際の状態データと精度データとを訓練データとして利用して機械学習モデルを動的に再学習し、再学習した機械学習モデルによって当該工作物の最終仕上げを実行してもよい。これにより、直近の状態データを反映した機械学習モデルに基づく指令データの決定が可能になり、より精度の高い最終仕上げが可能になる。
[モデル生成装置及び制御装置のハードウェア構成]
モデル生成装置100、制御装置200及び制御システム300は、例えば、
図12に示されるようなハードウェア構成を有してもよい。すなわち、モデル生成装置100、制御装置200及び制御システム300は、バスBを介し相互接続されるドライブ装置101、補助記憶装置102、メモリ装置103、CPU(Central Processing Unit)104、インタフェース装置105及び通信装置106を有する。
【0100】
モデル生成装置100、制御装置200及び制御システム300における上述した各種機能及び処理を実現するプログラムを含む各種コンピュータプログラムは、CD−ROM(Compact Disk−Read Only Memory)などの記録媒体107によって提供されてもよい。プログラムを記憶した記録媒体107がドライブ装置101にセットされると、プログラムが記録媒体107からドライブ装置101を介して補助記憶装置102にインストールされる。但し、プログラムは必ずしも記録媒体107からインストールされる必要はなく、ネットワークなどを介し何れかの外部装置からダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータなどを格納する。メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムやデータを読み出して格納する。プロセッサとして機能するCPU104は、メモリ装置103に格納されたプログラムやプログラムを実行するのに必要なパラメータなどの各種データに従って、上述したモデル生成装置100、制御装置200及び制御システム300の各種機能及び処理を実行する。インタフェース装置105は、ネットワーク又は外部装置に接続するための通信インタフェースとして用いられる。通信装置106は、外部装置と通信するための各種通信処理を実行する。
【0101】
しかしながら、モデル生成装置100、制御装置200及び制御システム300は、上述したハードウェア構成に限定されるものでなく、他の何れか適切なハードウェア構成により実現されてもよい。
【0102】
以上、実施形態を説明したが、特許請求の範囲の趣旨及び範囲から逸脱することなく、形態や詳細の多用な変更が可能なことが理解されるであろう。