(57)【特許請求の範囲】
【請求項１】
加工状態データ、設備状態データ及び素材状態データの１つ以上を含む、工作機械に関する状態データを収集する状態観測部と、
前記工作機械による工作物の精度データを取得する精度結果観測部と、
前記収集した状態データ及び前記取得した精度データによって機械学習モデルを学習する学習部と、
複数回に分けて同一箇所を加工する工作物の加工の際に、前記学習済み機械学習モデルによって、前記工作機械による複数回の加工のうち、最終仕上げ前のある時点での前記工作物の加工の際に収集される前記状態データから、前記工作機械に対する指令データを決定し、前記指令データによって前記工作機械に前記工作物に対する最終仕上げ加工を実行させる指令決定部と、
を有し、
前記指令決定部は、前記工作機械による工作物の加工の際に収集された状態データに対する線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークからの前記精度データの予測値と、前記工作機械による加工後の前記工作物の前記精度データの実測値との間の誤差によって、前記学習済み機械学習モデルとして前記線形重回帰分析モデル、前記非線形重回帰分析モデル又は前記ニューラルネットワークを選択する制御システム。
【請求項２】
前記複数回の加工のうち、前記最終仕上げ前のある時点での工作物の加工の際に収集される前記状態データは、前記工作機械の主軸モータ負荷及び各軸モータ負荷の１つ以上を含む、請求項１記載の制御システム。
【請求項３】
前記加工状態データは、前記工作機械の主軸モータ負荷、各軸モータ負荷及び主軸振動、ワーク加工時に予め設定されている加工条件である送り速度、回転数及び切込量の１つ以上を含む、請求項１又は２記載の制御システム。
【請求項４】
前記設備状態データは、工作機械内部もしくは周囲の環境温度、冷却水温度、冷却水流量、冷却水濃度、治具温度、主軸冷却油温度、ボールネジ温度、各軸サーボモータ温度、工具直径、工具長、工具直径または工具長の補正量、工具使用回数、工具取付状態及びワーク把握力の１つ以上を含む、請求項１乃至３何れか一項記載の制御システム。
【請求項５】
前記素材状態データは、素材硬度、素材強度及び加工前寸法の１つ以上を含む、請求項１乃至４何れか一項記載の制御システム。
【請求項６】
前記精度データは、加工後の前記工作物の寸法、粗さ及び幾何精度の１つ以上を含む、請求項１乃至５何れか一項記載の制御システム。
【請求項７】
前記学習部は、所定の再学習タイミングで前記機械学習モデルを再学習し、
前記指令決定部は、前記再学習された機械学習モデルによって前記指令データを決定する、請求項１乃至６何れか一項記載の制御システム。
【請求項８】
前記指令決定部は、回帰分析モデルを選択した場合、前記回帰分析モデルの回帰式の逆モデルを解くことによって前記指令データを決定する、請求項１乃至７何れか一項記載の制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、工作機械の制御技術に関する。
【背景技術】
【０００２】
工作機械を用いた機械加工において、最適な条件の下で工作物を加工するため、工具に加わる負荷トルクの変化に応じて工具の送り速度を制御する適応制御が利用されている。
【０００３】
一方、近年の機械学習技術の進展によって、機械学習モデルが様々な技術分野に適用されている。例えば、特開２０１８−１５３９０１号公報では、熱膨張する機械要素を有する工作機械において、当該機械要素の熱変位量予測計算式を設定する機械学習装置と、設定された熱変位量予測式に基づき機械要素の補正量を算出する熱変位補正装置とが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１８−１５３９０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述したような従来の工作機械制御技術では、製造された工作物の品質は考慮されていない。
【０００６】
本開示では、製造された工作物の品質を考慮した工作機械の制御技術を提案する。
【課題を解決するための手段】
【０００７】
本開示の一態様は、
加工状態データ、設備状態データ及び素材状態データの１つ以上を含む、工作機械に関する状態データを収集する状態観測部と、
前記工作機械による工作物の精度データを取得する精度結果観測部と、
前記収集した状態データ及び前記取得した精度データによって機械学習モデルを学習する学習部と、
複数回に分けて同一箇所を加工する工作物の加工の際に、前記学習済み機械学習モデルによって、前記工作機械による複数回の加工のうち、最終仕上げ前のある時点での前記工作物の加工の際に収集される前記状態データから、前記工作機械に対する指令データを決定し、前記指令データによって前記工作機械に前記工作物に対する最終仕上げ加工を実行させる指令決定部と、
を有する制御システムに関する。
【０００８】
本態様によると、製造された工作物の品質を考慮して工作機械を制御することができる。
【０００９】
一実施例では、前記複数回の加工のうち、前記最終仕上げ前のある時点での工作物の加工の際に収集される前記状態データは、前記工作機械の主軸モータ負荷及び各軸モータ負荷の１つ以上を含んでもよい。
【００１０】
一実施例では、前記加工状態データは、前記工作機械の主軸モータ負荷、各軸モータ負荷及び主軸振動、ワーク加工時に予め設定されている加工条件である送り速度、回転数及び切込量の１つ以上を含んでもよい。
【００１１】
一実施例では、前記設備状態データは、工作機械内部もしくは周囲の環境温度、冷却水温度、冷却水流量、冷却水濃度、治具温度、主軸冷却油温度、ボールネジ温度、各軸サーボモータ温度、工具直径、工具長、工具直径または工具長の補正量、工具使用回数、工具取付状態及びワーク把握力の１つ以上を含んでもよい。
【００１２】
一実施例では、前記素材状態データは、素材硬度、素材強度及び加工前寸法の１つ以上を含んでもよい。
【００１３】
一実施例では、前記精度データは、加工後の前記工作物の寸法、粗さ及び幾何精度の１つ以上を含んでもよい。
【００１４】
一実施例では、前記学習部は、所定の再学習タイミングで前記機械学習モデルを再学習し、前記指令決定部は、前記再学習された機械学習モデルによって前記指令データを決定してもよい。
【００１５】
本実施例によると、機械学習モデルを動的に再学習することが可能である。
【００１６】
一実施例では、前記指令決定部は、前記工作機械による工作物の加工の際に収集された状態データに対する線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークからの前記精度データの予測値と、前記工作機械による加工後の前記工作物の前記精度データの実測値との間の誤差によって、前記学習済み機械学習モデルとして前記線形重回帰分析モデル、前記非線形重回帰分析モデル又は前記ニューラルネットワークを選択してもよい。
【００１７】
本実施例によると、予測値と実測値の誤差に応じて適切な機械学習モデルを選択することができる。
【００１８】
一実施例では、前記指令決定部は、回帰分析モデルを選択した場合、前記回帰分析モデルの回帰式の逆モデルを解くことによって前記指令データを決定してもよい。
【００１９】
本開示の一態様は、
加工状態データ、設備状態データ及び素材状態データの１つ以上を含む、工作機械に関する状態データを収集する状態観測部と、
前記工作機械による工作物の精度データを取得する精度結果観測部と、
前記収集した状態データ及び前記取得した精度データによって機械学習モデルを学習する学習部と、
を有するモデル生成装置に関する。
【００２０】
本態様によると、製造された工作物の品質を考慮して工作機械を制御することができる。
【００２１】
一実施例では、前記機械学習モデルは、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークの１つ以上を含んでもよい。
【００２２】
本実施例によると、様々な機械学習モデルを選択的に利用することができる。
【００２３】
一実施例では、前記学習部は、前記収集した状態データ及び前記取得した精度データによって前記線形重回帰分析モデル、前記非線形重回帰分析モデル及び前記ニューラルネットワークの１つ以上を学習してもよい。
【００２４】
一実施例では、前記加工状態データは、前記工作機械の主軸モータ負荷、各軸モータ負荷及び主軸振動、ワーク加工時に予め設定されている加工条件である送り速度、回転数及び切込量の１つ以上を含んでもよい。
【００２５】
一実施例では、前記設備状態データは、工作機械内部もしくは周囲の環境温度、冷却水温度、冷却水流量、冷却水濃度、治具温度、主軸冷却油温度、ボールネジ温度、各軸サーボモータ温度、工具直径、工具長、工具直径または工具長の補正量、工具使用回数、工具取付状態及びワーク把握力の１つ以上を含んでもよい。
【００２６】
一実施例では、前記素材状態データは、素材硬度、素材強度及び加工前寸法の１つ以上を含んでもよい。
【００２７】
一実施例では、前記精度データは、加工後の前記工作物の寸法、粗さ及び幾何精度の１つ以上を含んでもよい。
【００２８】
本開示の他の態様は、
工作機械による工作物の加工の際に加工状態データ、設備状態データ及び素材状態データの１つ以上を含む、前記工作機械に関する状態データを収集する状態観測部と、
学習済み機械学習モデルによって前記収集した状態データから前記工作機械に対する指令データを決定する指令決定部と、
を有する制御装置に関する。
【００２９】
本態様によると、製造された工作物の品質を考慮して工作機械を制御することができる。
【００３０】
一実施例では、前記学習済み機械学習モデルは、前記工作機械に関して収集された状態データ及び前記工作機械による工作物に関して取得された精度データによって学習されてもよい。
【００３１】
一実施例では、前記指令決定部は、前記工作機械による工作物の加工の際に収集された状態データに対する線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークからの前記精度データの予測値と、前記工作機械による加工後の前記工作物の前記精度データの実測値との間の誤差によって、前記学習済み機械学習モデルとして前記線形重回帰分析モデル、前記非線形重回帰分析モデル又は前記ニューラルネットワークを選択してもよい。
【００３２】
本実施例によると、予測値と実測値の誤差に応じて適切な機械学習モデルを選択することができる。
【００３３】
一実施例では、前記指令データは、前記状態データの何れかのデータ項目の値を示してもよい。
【００３４】
本開示の他の態様は、
加工状態データ、設備状態データ及び素材状態データの１つ以上を含む、工作機械に関する状態データを収集する状態観測部と、
前記工作機械による工作物の精度データを取得する精度結果観測部と、
前記収集した状態データ及び前記取得した精度データによって機械学習モデルを学習する学習部と、
前記学習済み機械学習モデルによって、前記工作機械による工作物の加工の際に収集される前記状態データから前記工作機械に対する指令データを決定する指令決定部と、
を有する制御システムに関する。
【００３５】
本態様によると、製造された工作物の品質を考慮して工作機械を制御することができる。
【００３６】
一実施例では、前記学習部は、所定の再学習タイミングで前記機械学習モデルを再学習し、前記指令決定部は、前記再学習された機械学習モデルによって前記指令データを決定してもよい。
【００３７】
本実施例によると、機械学習モデルを動的に再学習することが可能である。
【図面の簡単な説明】
【００３８】
【図１】本開示の一実施例による機械学習モデルによる工作機械の制御処理を示す概略図である。
【図２】本開示の一実施例によるモデル生成装置の機能構成を示すブロック図である。
【図３】本開示の一実施例による一例となる線形重回帰分析モデルを示す図である。
【図４】本開示の一実施例による一例となるニューラルネットワークを示す図である。
【図５】本開示の一実施例によるモデル生成処理を示すフローチャートである。
【図６】本開示の一実施例による制御装置の機能構成を示すブロック図である。
【図７】本開示の一実施例による一例となる線形重回帰式による指令データの決定を示す図である。
【図８】本開示の一実施例による制御処理を示すフローチャートである。
【図９】本開示の一実施例による制御システムの機能構成を示すブロック図である。
【図１０】本開示の一実施例による制御処理を示すフローチャートである。
【図１１】本開示の一実施例による制御処理を示すフローチャートである。
【図１２】本開示の一実施例によるモデル生成装置、制御装置及び制御システムのハードウェア構成を示すブロック図である。
【発明を実施するための形態】
【００３９】
以下、実施形態を説明する。
【００４０】
以下の実施形態では、加工状態データ、設備状態データ、素材状態データなどの工作機械に関する各種状態データと、当該工作機械による工作物の精度データとの関係を予測する機械学習モデルを生成するモデル生成装置と、モデル生成装置によって生成された機械学習モデルを利用して工作機械を制御する制御装置とが開示される。
［本開示の概略］
図１に示されるように、本開示の実施例によるモデル生成装置１００は、加工状態データ、設備状態データ、素材状態データなどの工作機械５０に関する各種状態データと、工作機械５０による工作物の精度データとを訓練データとして利用して、状態データと精度データとの関係を予測する機械学習モデル１〜Ｎを学習する。例えば、学習対象の機械学習モデル１〜Ｎは、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークの１つ以上を含んでもよい。機械学習モデル１〜Ｎの学習後、モデル生成装置１００は、学習済みの機械学習モデル１〜Ｎを制御装置２００に提供する。制御装置２００は、学習済み機械学習モデル１〜Ｎを利用して、入力された状態データから工作機械５０を制御するための指令データを生成し、生成した指令データに従って工作機械５０を制御する。
【００４１】
このようにして、工作機械５０に関する状態データだけでなく工作物の品質を示す精度データもまた機械学習モデルの学習に取り入れることによって、生成された機械学習モデルは、一定の品質を確保した工作物を製造するための指令データを決定することができる。
【００４２】
さらに、当該指令データに従って制御された工作機械によって加工された工作物の品質を示す精度データが収集され、収集された精度データはフィードバックデータとしてモデル生成装置１００に提供されてもよい。工作機械５０の１つの工作物（ワーク）の製造完了などの所定の更新イベントの発生に応答して、モデル生成装置１００は、フィードバックデータを利用して機械学習モデル１〜Ｎを再学習してもよい。これにより、適時的に再学習された機械学習モデル１〜Ｎを利用して、各時点の状態に適した指令データを決定することが可能になり、一定の品質を確保した工作物を安定的に製造することが可能になる。
［モデル生成装置］
まず、図２〜４を参照して、本開示の一実施例によるモデル生成装置１００を説明する。図２は、本開示の一実施例によるモデル生成装置１００の機能構成を示すブロック図である。
【００４３】
図２に示されるように、モデル生成装置１００は、状態観測部１１０、精度結果観測部１２０及び学習部１３０を有する。
【００４４】
状態観測部１１０は、加工状態データ、設備状態データ及び素材状態データの１つ以上を含む、工作機械５０に関する状態データを収集する。具体的には、状態観測部１１０は、機械学習モデル１〜Ｎを学習するための訓練データとして利用するため、工作機械５０による工作物（ワーク）の加工処理の際、加工状態データ、設備状態データ及び素材状態データの１つ以上を予め取得する。
【００４５】
例えば、加工状態データは、工作機械５０の主軸モータ負荷、各軸モータ負荷及び主軸振動、ワーク加工時に予め設定されている加工条件である送り速度、回転数及び切込量の１つ以上を含んでもよい。ここで、主軸モータ負荷、各軸モータ負荷及び主軸振動は、工作機械５０によるワーク加工時の加工負荷に関するものであり、送り速度、回転数及び切込量は、工作機械５０のワーク加工においてオペレータなどによって設定された加工条件に関するものである。なお、送り速度、回転数、切込量などの加工条件の各データ項目は、工作機械５０の動作を制御するための指令データとして制御装置２００によって利用されうる。
【００４６】
また、設備状態データは、例えば、工作機械５０内部もしくは周囲の環境温度、冷却水温度、冷却水流量、冷却水濃度、治具温度、主軸冷却油温度、ボールネジ温度、各軸サーボモータ温度、工具直径、工具長、工具直径または工具長の補正量、工具使用回数、工具取付状態及びワーク把握力の１つ以上を含んでもよい。ここで、工作機械５０内部もしくは周囲の環境温度、冷却水温度、冷却水流量、冷却水濃度、治具温度、主軸冷却油温度、ボールネジ温度及びモータ温度などの温度データは、温度計などのセンサを取付けることによって測定されてもよいし、工作機械メーカや装置メーカ独自であらかじめ設けたセンサにより測定している状態データを利用してもよい。また、工具直径、工具長、工具直径または工具長の補正量、工具使用回数、工具取付状態及びワーク把握力などの工具関連データは、当該工具の取付時及び使用中に設定又は測定されてもよい。なお、工具直径、工具長、工具使用回数などの工具データの各データ項目は、工作機械５０を設定するための指令データとして制御装置２００によって利用されうる。
【００４７】
さらに、素材状態データは、素材硬度、素材強度及び加工前寸法の１つ以上を含んでもよい。当該素材状態データは、工作機械５０への素材の投入時に設定又は測定されてもよい。
【００４８】
これらの加工状態データ、設備状態データ及び素材状態データは、工作機械５０による加工処理に影響を与えると考えられ、工作物の精度は、加工状態データ、設備状態データ及び素材状態データに依存すると考えられる。しかしながら、状態データは、加工状態データ、設備状態データ及び素材状態データに限定されず、工作機械５０による加工処理又は工作物の精度に影響を与えると考えられる他の何れか適切なデータを含んでもよい。また、加工状態データ、設備状態データ及び素材状態データは、上述したデータ項目に限定されず、工作機械５０による加工処理又は工作物の精度に影響を与えると考えられる他の何れか適切なデータ項目から構成されてもよい。本実施例では、工作機械５０は、切削などにより工作物を製造するが、本開示による工作機械５０は、これに限定されず、他の何れかのタイプの工作物を加工、処理、製造等する装置であってもよい。また、本開示による工作機械５０は、研削加工、塑性加工などの他のタイプの加工、処理、製造等を実行する装置であってもよい。状態データは、工作機械５０及び工作物のタイプに応じた適切なデータ項目から構成されてもよい。
【００４９】
精度結果観測部１２０は、工作機械５０による工作物の精度データを取得する。具体的には、精度結果観測部１２０は、機械学習モデル１〜Ｎを学習するための訓練データとして利用するため、上述した状態データによる加工状態、設備状態及び素材状態の下で工作機械５０によって製造された工作物（ワーク）の品質を示す精度データを測定する。例えば、精度データは、加工後の工作物の寸法、表面の粗さ（表面の平面度など）及び幾何精度の１つ以上を含んでもよい。精度データは、何れか適切な測定装置などを利用して、加工後の工作物を測定することによって生成及び取得されうる。測定された精度データは、加工処理時の加工状態データ、設備状態データ及び素材状態データと関連付けされる。
【００５０】
学習部１３０は、収集した状態データ及び取得した精度データによって機械学習モデルを学習する。具体的には、学習部１３０は、状態観測部１１０によって予め収集された加工状態データ、設備状態データ及び素材状態データの１つ以上を含む状態データと、精度結果観測部１２０によって予め取得された精度データとを訓練データとして利用して、複数の機械学習モデル１〜Ｎを学習する。
【００５１】
一実施例では、これらの機械学習モデル１〜Ｎは、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークの１つ以上を含んでもよい。
【００５２】
例えば、線形重回帰分析モデルの学習では、状態データと精度データとのペアが訓練データとして多数準備される。学習部１３０は、状態データの各データ項目を説明変数とし、精度データを目的変数として、準備された訓練データに対して線形重回帰分析を実行し、説明変数の値を引数とし、出力される値を目的変数の値とする線形の回帰式を導出する。なお、線形重回帰分析は周知の統計解析手法であり、ここでの線形重回帰式の導出の具体的処理の説明は省略する。
【００５３】
さらに、学習部１３０は、以下のように、制御装置２００によって出力される指令データの各データ項目（例えば、送り速度、回転数、切込量、工具直径、工具長、工具直径または工具長の補正量、工具使用回数など）が解となるように、導出した線形重回帰式を変形してもよい。一般に、図３に示されるように、線形重回帰式は、
ｙ＝ｂ１ｘ１＋ｂ２ｘ２＋・・・＋ｂｋｘｋ＋ｅ
により表される。ここで、ｘｉは状態データの各データ項目を表す説明変数であり、ｙは精度データを表す目的変数である。また、ｂｉは偏回帰係数であり、ｅは誤差である。例えば、ｘｊが指令データのあるデータ項目を示す説明変数である場合、学習部１３０は、線形重回帰式を
ｘｊ＝（ｙ−ｂ１ｘ１−・・・−ｂｊ−１ｘｊ−１−ｂｊ＋１ｘｊ＋１−・・・−ｂｋｘｋ−ｅ）／ｂｊ
と変形することによって、指令データｘｊを導出することができる。このようにして、学習部１３０は、指令データの各データ項目ｘｊに対して、上述したように線形重回帰式を変形し、指令データの各データ項目ｘｊの関数を導出してもよい。
【００５４】
非線形重回帰分析モデルの学習では、状態データと精度データとのペアが訓練データとして多数準備される。学習部１３０は、状態データの各データ項目を説明変数とし、精度データを目的変数として、準備された訓練データに対して非線形重回帰分析を実行し、説明変数の値を引数とし、出力される値を目的変数の値とする非線形の回帰式を導出する。線形重回帰式が一次関数の形式により表されるのに対して、非線形重回帰式は説明変数の二次以上の高次関数の形式により表される。非線形重回帰式は、一般には、
ｙ＝ｆ（ｘ１，ｘ２，・・・，ｘｋ）
により表され、例えば、
ｙ＝ｂ１ｘ１α１＋ｂ２ｘ２α２＋・・・＋ｂｋｘｋαｋ＋ｅ
により表されてもよい。ここで、ｘｉは状態データの各データ項目を表す説明変数であり、ｙは精度データを表す目的変数である。また、ｂｉは偏回帰係数であり、ｅは誤差である。また、α１，α２，・・・αｋは、正の整数である。なお、非線形重回帰分析もまた周知の統計解析手法であり、ここでの非線形重回帰式の導出の具体的処理の説明は省略する。
【００５５】
線形重回帰式と異なって、非線形重回帰式は必ずしも説明変数に関して解析的に解くことができるとは限らない。このため、例えば、指令データ以外の状態データ及び精度データの値を導出された非線形重回帰式に代入し、何れかの数値計算手法を利用して、指令データの値を求めてもよい。
【００５６】
ニューラルネットワークの学習では、状態データと精度データとのペアが訓練データとして多数準備される。学習部１３０は、何れか適切なネットワークアーキテクチャを有するニューラルネットワークに状態データを入力し、ニューラルネットワークからの出力と入力した状態データに対応する精度データとの誤差に応じて、例えば、誤差逆伝播法に従ってニューラルネットワークのパラメータを更新する。準備された全ての訓練データに対してパラメータ更新処理が終了するなどの所定の終了条件を充足するまで、学習部１３０は上述したパラメータ更新処理を繰り返し、最終的なニューラルネットワークを学習済み機械学習モデルとして取得する。図４（ａ）に示されるように、このようにして学習された機械学習モデルは、状態データｘｉ（１≦ｉ≦ｋ）から精度データｙを予測することが可能である。
【００５７】
また、学習部１３０は、準備された訓練データを利用して、状態データ及び精度データから指令データを予測するニューラルネットワークを取得してもよい。例えば、状態データのあるデータ項目を指令データｘｊとして提供するため、学習部１３０は、訓練データにおける当該指令データｘｊ以外の状態データｘｉと精度データｙとを入力用の訓練データとし、指令データｘｊを出力用の訓練データとして利用して、何れか適切なネットワークアーキテクチャを有するニューラルネットワークを学習してもよい。このようにして学習されたニューラルネットワークは、状態データ及び精度データから指令データを予測することが可能である。このようにして、学習部１３０は、指令データの各データ項目に対して、状態データ及び精度データから当該データ項目の値を予測する学習済み機械学習モデルを取得することが可能である。図４（ｂ）に示されるように、このようにして学習された機械学習モデルは、状態データｘｉ（１≦ｉ≦ｊ−１，ｊ＋１≦ｉ≦ｋ）及び精度データｙから指令データｘｊを予測することが可能である。
【００５８】
なお、上述した実施例では、精度データは単一のデータ項目から構成されたが、本開示の精度データはこれに限定されず、複数のデータ項目から構成されてもよい。この場合、重回帰式は、
ｙｋ＝ｆｋ（ｘ１，ｘ２，・・・，ｘｋ）
により表される。また、状態データから精度データを出力するニューラルネットワークは、精度データの各データ項目に対して別々に生成されてもよいし、全てのデータ項目を出力するようなネットワークアーキテクチャによって構成されてもよい。
［モデル生成処理］
次に、図５を参照して、本開示の一実施例によるモデル生成処理を説明する。当該モデル生成処理は、モデル生成装置１００によって実現され、具体的には、モデル生成装置１００のプロセッサがプログラムを実行することによって実現されてもよい。図５は、本開示の一実施例によるモデル生成処理を示すフローチャートである。
【００５９】
図５に示されるように、ステップＳ１０１において、モデル生成装置１００は、工作機械５０に関する状態データを収集する。具体的には、モデル生成装置１００は、機械学習モデルの訓練データとして利用するため、工作機械５０に関する状態データを予め収集し、収集した状態データをメモリなどの記憶装置に保持する。例えば、状態データは、工作機械５０の加工状態データ、設備状態データ及び素材状態データの１つ以上を含んでもよく、工作機械５０のオペレータによって設定されてもよいし、工作機械５０による加工処理中に取得されてもよいし、センサから検知されてもよい。
【００６０】
ステップＳ１０２において、モデル生成装置１００は、工作物の精度データを取得する。具体的には、モデル生成装置１００は、機械学習モデルの訓練データとして利用するため、各状態データの下で工作機械５０によって加工された工作物の精度データを取得し、取得した精度データを状態データと関連付けてメモリなどの記憶装置に保持する。例えば、精度データは、加工後の工作物の寸法、粗さ及び幾何精度の１つ以上を含んでもよく、加工後の工作物を測定する測定器などから取得されてもよい。しかしながら、本開示による精度データは、これらに限定されず、工作機械５０及び工作物のタイプに応じて他の適切なデータ項目を示すものであってもよい。
【００６１】
ステップＳ１０３において、モデル生成装置１００は、状態データ及び精度データによって機械学習モデルを学習する。具体的には、モデル生成装置１００は、ステップＳ１０１において収集した状態データと、ステップＳ１０２において取得した精度データとを訓練データとして利用して、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークを生成する。
【００６２】
線形重回帰分析モデルの生成では、モデル生成装置１００は、状態データを説明変数とし、精度データを目的変数とする線形重回帰式を導出し、導出した線形重回帰式を変形することによって、各指令データを求める関数を導出してもよい。
【００６３】
非線形重回帰分析モデルの生成では、モデル生成装置１００は、状態データを説明変数とし、精度データを目的変数とする非線形重回帰式を導出する。ここで、導出された非線形重回帰式が解析的に解ける場合、モデル生成装置１００は、導出した非線形重回帰式を変形することによって、各指令データを求める関数を導出してもよい。
【００６４】
ニューラルネットワークの生成では、モデル生成装置１００は、訓練データによって状態データから精度データを出力するニューラルネットワークを学習する。さらに、モデル生成装置１００は、訓練データによって状態データ及び精度データから各指令データを出力するニューラルネットワークを学習してもよい。
【００６５】
モデル生成装置１００は、以降の工作機械５０の制御のため、学習した機械学習モデルを制御装置２００に提供する。
［制御装置］
次に、図６及び７を参照して、本開示の一実施例による制御装置２００を説明する。制御装置２００は、工作機械５０に関して収集された状態データ及び工作機械５０によって製造された工作物に関して取得された精度データを訓練データとして用いてモデル生成装置１００によって学習された機械学習モデルを利用して、工作機械５０の加工処理を制御する。図６は、本開示の一実施例による制御装置２００の機能構成を示すブロック図である。
【００６６】
図６に示されるように、制御装置２００は、状態観測部２１０及び指令決定部２２０を有する。
【００６７】
状態観測部２１０は、工作機械５０による工作物の加工の際に加工状態データ、設備状態データ及び素材状態データの１つ以上を含む、工作機械５０に関する状態データを収集する。具体的には、状態観測部２１０は、工作機械５０による工作物の加工前及び加工中、加工状態データ、設備状態データ及び素材状態データの１つ以上を収集する。
【００６８】
例えば、状態観測部２１０は、加工状態データとして、工作機械５０の主軸モータ負荷、各軸モータ負荷及び主軸振動、ワーク加工時に予め設定されている加工条件である送り速度、回転数及び切込量の１つ以上を収集してもよい。工作機械５０の主軸モータ負荷、各軸モータ負荷及び主軸振動は、工作物の加工中に工作機械５０の動作データから収集されてもよく、送り速度、回転数及び切込量は、工作物の加工前にオペレータによって設定されてもよい。
【００６９】
また、状態観測部２１０は、設備状態データとして、工作機械５０内部もしくは周囲の環境温度、冷却水温度、冷却水流量、冷却水濃度、治具温度、主軸冷却油温度、ボールネジ温度、各軸サーボモータ温度、工具直径、工具長、工具直径または工具長の補正量、工具使用回数、工具取付状態及びワーク把握力の１つ以上を収集してもよい。環境温度、冷却水温度、冷却水流量、冷却水濃度、治具温度、主軸冷却油温度、ボールネジ温度及び各軸サーボモータ温度は、工作物の加工前及び加工中に温度計などのセンサを取り付けることによって収集されてもよいし、工作機械メーカや装置メーカ独自であらかじめ設けたセンサにより測定している状態データを利用してもよい。また、工具直径、工具長、工具直径または工具長の補正量、工具使用回数、工具取付状態及びワーク把握力は、工作物の加工前に当該工具の工具データから収集されてもよい。
【００７０】
また、状態観測部２１０は、素材状態データとして、素材硬度、素材強度及び加工前寸法の１つ以上を収集してもよい。素材硬度、素材強度及び加工前寸法は、加工対象の素材に対して予め保持している素材状態データから抽出されてもよい。
【００７１】
指令決定部２２０は、学習済み機械学習モデルによって収集した状態データから工作機械５０に対する指令データを決定する。具体的には、指令決定部２２０は、モデル生成装置１００から提供された学習済み機械学習モデルを利用して、収集した状態データと所与の精度データとを機械学習モデルに入力し、機械学習モデルから工作機械５０を制御するための指令データを決定する。
【００７２】
指令データは、機械学習モデルの訓練データに利用される状態データの何れかのデータ項目の値を示すものであってもよく、例えば、送り速度、回転数、切込量、工具直径、工具長、工具使用回数などであってもよい。しかしながら、本開示による指令データは、これらに限定されず、工作機械５０及び工作物のタイプに応じて工作機械５０の制御に関する何れか適切なデータ項目であってもよい。
【００７３】
例えば、モデル生成装置１００の線形重回帰分析によって、図７（ａ）に示されるような線形重回帰式が導出された場合、モデル生成装置１００は、導出された線形重回帰式を変形することによって、図７（ｂ）に示されるような指令データとしての加工取り代補正値を求めるための等価な関数を導出することができる。指令決定部２２０は、図７（ｂ）に示される加工取り代補正値の関数において、精度データとしての加工精度ａ１をゼロに設定し、さらに状態データとしての主軸モータ負荷を一定値に設定することによって、図７（ｃ）に示される式によって加工取り代補正値を決定することができる。指令決定部２２０は、決定した加工取り代補正値を示す指令データを工作機械５０に送信する。工作機械５０は、受信した加工取り代補正値及び主軸モータ負荷の設定値に従って動作することによって、加工誤差がほぼゼロになる工作物を製造できると考えられる。
【００７４】
ここでは、線形重回帰分析モデルを参照して指令決定部２２０による指令データの決定処理を説明したが、同様にして非線形重回帰分析モデル及びニューラルネットワークに基づき指令データを決定できることは当業者に理解できるであろう。例えば、非線形重回帰分析モデルでは、指令決定部２２０は、導出された非線形重回帰式に、指令データの説明変数ｘｊ以外の状態データの説明変数ｘｉの値と目的変数ｙの設定値とを入力し、数値計算によって説明変数ｘｊの値を計算してもよい。また、ニューラルネットワークでは、指令決定部２２０は、指令データｘｊを出力する学習済みニューラルネットワークに、指令データｘｊ以外の状態データｘｉの値と精度データｙの設定値とを入力し、指令データｘｊの値を取得してもよい。
【００７５】
一実施例では、指令決定部２２０は、工作機械５０による工作物の加工の際に収集された状態データに対する線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークからの精度データの予測値と、工作機械５０による加工後の工作物の精度データの実測値との間の誤差によって、学習済み機械学習モデルとして線形重回帰分析モデル、非線形重回帰分析モデル又はニューラルネットワークを選択してもよい。具体的には、モデル生成装置１００から線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークの複数の学習済み機械学習モデルが提供されると、指令決定部２２０は、提供された学習済み機械学習モデルのうち、予測精度の最も高い学習済み機械学習モデルを利用して指令データを決定する。例えば、指令決定部２２０は、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークのそれぞれを利用して決定した指令データによる制御下で工作機械５０によって製造された工作物の精度の測定結果と、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークそれぞれの精度データの予測値とを比較し、その誤差が最小となる機械学習モデルを利用して、以降の加工処理のための指令データを決定してもよい。
［制御処理］
次に、図８を参照して、本開示の一実施例による制御処理を説明する。当該制御処理は、制御装置２００によって実現され、具体的には、制御装置２００のプロセッサがプログラムを実行することによって実現されてもよい。図８は、本開示の一実施例による制御処理を示すフローチャートである。
【００７６】
図８に示されるように、ステップＳ２０１において、制御装置２００は、工作機械５０に関する状態データを収集する。具体的には、制御装置２００は、工作機械５０による加工処理前及び加工処理中、工作機械５０に関する状態データを収集し、収集した状態データをメモリなどの記憶装置に保持する。例えば、状態データは、工作機械５０の加工状態データ、設備状態データ及び素材状態データの１つ以上を含んでもよく、工作機械５０のオペレータによって設定されてもよいし、工作機械５０による加工処理中に取得されてもよいし、センサから検知されてもよい。
【００７７】
ステップＳ２０２において、制御装置２００は、学習済み機械学習モデルによって状態データから工作機械５０に対する指令データを決定する。具体的には、制御装置２００は、モデル生成装置１００から提供された学習済み機械学習モデルを利用して、収集した状態データと所与の精度データとを機械学習モデルに入力し、機械学習モデルから工作機械５０を制御するための指令データを決定する。
【００７８】
例えば、学習済み線形重回帰分析モデルを利用する場合、制御装置２００は、モデル生成装置１００から提供された線形重回帰式に、指令データ以外の状態データの収集された値と精度データの設定値とを入力し、指令データの値を算出してもよい。
【００７９】
また、学習済み非線形重回帰分析モデルを利用する場合、制御装置２００は、モデル生成装置１００から提供された非線形重回帰式に、指令データ以外の状態データの収集された値と精度データの設定値とを入力し、指令データの値を算出してもよい。
【００８０】
また、学習済みニューラルネットワークを利用する場合、制御装置２００は、モデル生成装置１００から提供された指令データを出力するニューラルネットワークに、指令データ以外の状態データの収集された値と精度データの設定値とを入力し、指令データの値を予測してもよい。
【００８１】
制御装置２００は、このようにして決定した指令データを工作機械５０に送信する。当該指令データによる制御下で製造された工作物の精度を示す測定結果を取得すると、制御装置２００は、取得した測定結果と精度データの設定値とを比較し、その誤差が最小となる機械学習モデルを、以降の加工処理における指令データを決定するのに利用してもよい。
［制御システム］
次に、図９〜１１を参照して、本開示の一実施例による制御システム３００を説明する。制御システム３００は、上述したモデル生成装置１００及び制御装置２００の機能を併せ持ち、機械学習モデルを学習すると共に、学習された機械学習モデルを利用した指令データを決定する。例えば、制御システム３００は、モデル生成装置１００と制御装置２００との物理構成又は機能構成の双方を含むように実現されてもよい。図９は、本開示の一実施例による制御システム３００の機能構成を示すブロック図である。
【００８２】
図９に示されるように、制御システム３００は、状態観測部３１０、精度結果観測部３２０、学習部３３０及び指令決定部３４０を有する。
【００８３】
状態観測部３１０は、加工状態データ、設備状態データ及び素材状態データの１つ以上を含む、工作機械５０に関する状態データを収集する。具体的には、状態観測部３１０は、機械学習モデルを学習するための訓練データの収集のため、工作機械５０に関する状態データを収集する。さらに、状態観測部３１０は、学習済み機械学習モデルを利用した工作機械５０の制御のため、加工処理前及び加工処理中の工作機械５０に関する状態データを収集する。
【００８４】
精度結果観測部３２０は、工作機械５０による工作物の精度データを取得する。具体的には、精度結果観測部３２０は、機械学習モデルを学習するための訓練データの収集のため、工作機械５０によって製造された工作物の精度データを収集する。さらに、精度結果観測部３２０は、指令決定部３４０によって決定された指令データに従って制御された工作機械５０によって製造された工作物の精度データを収集する。
【００８５】
学習部３３０は、収集した状態データ及び取得した精度データによって機械学習モデルを学習する。具体的には、学習部３３０は、状態観測部３１０によって収集された状態データと精度結果観測部３２０によって取得された精度データとのペアから構成される訓練データを利用して、指令決定部３４０によって利用される機械学習モデルを学習する。例えば、上述したように、機械学習モデルは、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークの１つ以上を含んでもよく、モデル生成装置１００の学習部１３０について上述したように学習される。
【００８６】
指令決定部３４０は、学習済み機械学習モデルによって、工作機械５０による工作物の加工の際に収集される状態データから工作機械５０に対する指令データを決定する。具体的には、指令決定部３４０は、制御装置２００の指令決定部２２０と同様に、学習部３３０によって学習された機械学習モデルを利用して、状態観測部３１０によって加工処理前及び加工処理中に収集された工作機械５０に関する状態データの値と精度データの設定値とから、指令データを決定する。指令決定部３４０は、決定した指令データを工作機械５０に送信する。
【００８７】
一実施例では、指定決定部３４０は、複数回に分けて同一箇所を加工する工作物の加工の際に、学習済み機械学習モデルによって、工作機械５０による複数回の加工のうち、最終仕上げ前のある時点での工作物の加工の際に収集される状態データから、工作機械５０に対する指令データを決定し、指令データによって工作機械５０に工作物に対する最終仕上げ加工を実行させてもよい。すなわち、一般的な工作物の加工では、工作物は、複数回の加工を通じて徐々に最終製品として形成される。精緻な加工精度が要求されるのは最終仕上げ段階であるため、最終仕上げのために機械学習モデルが訓練及び利用されてもよい。例えば、学習部３３０は、最終仕上げ時の状態データと精度データとを訓練データとして利用して、機械学習モデルを訓練してもよい。状態観測部３１０は、最終仕上げ前のある時点で工作物の状態データを収集し、指令決定部３４０は、訓練済み機械学習モデルを利用して、収集した状態データから工作機械５０に対する指令データを決定し、工作機械５０に指令データを送信する。ここで、収集される状態データは、工作機械５０の主軸モータ負荷及び各軸モータ負荷の１つ以上を含むものであってもよい。指令データを受信すると、工作機械５０は、受信した指令データに従って工作物に対する最終仕上げを実行する。
【００８８】
図１０は、本開示の一実施例による制御処理を示すフローチャートである。当該制御処理は、制御システム３００によって実現され、具体的には、制御システム３００のプロセッサがプログラムを実行することによって実現されてもよい。
【００８９】
図１０に示されるように、ステップＳ３０１において、制御システム３００は、工作機械に関する状態データを収集する。具体的には、制御システム３００は、機械学習モデルの訓練データとして利用するため、工作機械５０に関する状態データを予め収集する。例えば、状態データは、工作機械５０の加工状態データ、設備状態データ及び素材状態データの１つ以上を含んでもよく、工作機械５０のオペレータによって設定されてもよいし、工作機械５０による加工処理中に取得されてもよいし、センサから検知されてもよい。
【００９０】
ステップＳ３０２において、制御システム３００は、工作物の精度データを取得する。具体的には、制御システム３００は、機械学習モデルの訓練データとして利用するため、各状態データの下で工作機械５０によって加工された工作物の精度データを取得する。例えば、精度データは、加工後の工作物の寸法、粗さ及び幾何精度の１つ以上を含んでもよく、加工後の工作物を測定する測定器などから取得されてもよい。しかしながら、本開示による精度データは、これらに限定されず、工作機械５０及び工作物のタイプに応じて他の適切なデータ項目を示すものであってもよい。
【００９１】
ステップＳ３０３において、制御システム３００は、状態データ及び精度データによって機械学習モデルを学習する。具体的には、制御システム３００は、ステップＳ３０１において収集した状態データと、ステップＳ３０２において取得した精度データとを訓練データとして利用して、線形重回帰分析モデル、非線形重回帰分析モデル及びニューラルネットワークを生成する。
【００９２】
ステップＳ３０４において、制御システム３００は、学習済み機械学習モデルによって状態データから工作機械５０に対する指令データを決定する。具体的には、制御システム３００は、ステップＳ３０３において学習した機械学習モデルを利用して、収集した状態データと所与の精度データとを機械学習モデルに入力し、機械学習モデルから工作機械５０を制御するための指令データを決定する。
【００９３】
一実施例では、制御システム３００は、複数回に分けて同一箇所を加工する工作物の加工の際に、学習済み機械学習モデルによって、工作機械５０による複数回の加工のうち、最終仕上げ前のある時点での工作物の加工の際に収集される状態データから、工作機械５０に対する指令データを決定し、指令データによって工作機械５０に工作物に対する最終仕上げ加工を実行させてもよい。制御システム３００は、最終仕上げ時の状態データと精度データとを訓練データとして利用して、機械学習モデルを訓練してもよい。ここで、収集される状態データは、工作機械５０の主軸モータ負荷及び各軸モータ負荷の１つ以上を含むものであってもよい。制御システム３００は、最終仕上げ前のある時点で工作物の状態データを収集し、訓練済み機械学習モデルを利用して、収集した状態データから工作機械５０に対する指令データを決定し、工作機械５０に指令データを送信する。制御システム３００から指令データを受信すると、工作機械５０は、受信した指令データに従って工作物に対する最終仕上げを実行する。
【００９４】
一実施例では、学習部３３０は、所定の再学習タイミングで機械学習モデルを再学習し、指令決定部３４０は、再学習された機械学習モデルによって指令データを決定してもよい。例えば、所定数の工作物が製造される毎に、学習部３３０は、精度結果観測部３２０から製造された工作物の精度データを取得し、取得した精度データと当該工作物の製造時に利用された指令データ及び状態データとを既存の訓練データに取り込み、更新後の訓練データによって機械学習モデルを再学習してもよい。指令決定部３４０は、再学習された機械学習モデルに基づき、以降の加工処理に用いる指令データを決定してもよい。このように、最新の状態データ及び精度データを訓練データとして利用して機械学習モデルを動的に再学習することによって、より精度の高い指令データによって工作機械５０を制御することが可能になる。
【００９５】
図１１は、本開示の一実施例による制御処理を示すフローチャートである。当該制御処理は、制御システム３００によって実現され、具体的には、制御システム３００のプロセッサがプログラムを実行することによって実現されてもよい。なお、図１１のステップＳ４０１〜Ｓ４０４は、図１０のステップＳ３０１〜Ｓ３０４と同様であり、重複を避けるため、説明を省略する。
【００９６】
ステップＳ４０５において、制御システム３００は、指令データに従って工作機械５０に加工処理を実行させる。具体的には、制御システム３００は、ステップＳ４０４において決定した指令データを工作機械５０に送信し、工作機械５０の動作を制御する。
【００９７】
ステップＳ４０６において、制御システム３００は、工作機械５０によって製造された工作物の精度データを取得する。具体的には、制御システム３００は、製造された工作物の精度を測定器に測定させ、測定器から測定結果を示す精度データを取得する。
【００９８】
ステップＳ４０７において、制御システム３００は、更なるワークが有るか判断し、更なるワークが有る場合（ステップＳ４０７：ＹＥＳ）、ステップＳ４０１に戻って、ステップＳ４０６において取得した精度データを利用して機械学習モデルを再学習する。他方、更なるワークがない場合（ステップＳ４０７：ＮＯ）、制御システム３００は、当該制御を終了する。
【００９９】
上述したように、最終仕上げの際に機械学習モデルを利用する場合、制御システム３００は、工作物の最終仕上げを実行する前に、所定数の直近に加工済みの工作物の最終仕上げの際の状態データと精度データとを訓練データとして利用して機械学習モデルを動的に再学習し、再学習した機械学習モデルによって当該工作物の最終仕上げを実行してもよい。これにより、直近の状態データを反映した機械学習モデルに基づく指令データの決定が可能になり、より精度の高い最終仕上げが可能になる。
［モデル生成装置及び制御装置のハードウェア構成］
モデル生成装置１００、制御装置２００及び制御システム３００は、例えば、図１２に示されるようなハードウェア構成を有してもよい。すなわち、モデル生成装置１００、制御装置２００及び制御システム３００は、バスＢを介し相互接続されるドライブ装置１０１、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０４、インタフェース装置１０５及び通信装置１０６を有する。
【０１００】
モデル生成装置１００、制御装置２００及び制御システム３００における上述した各種機能及び処理を実現するプログラムを含む各種コンピュータプログラムは、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）などの記録媒体１０７によって提供されてもよい。プログラムを記憶した記録媒体１０７がドライブ装置１０１にセットされると、プログラムが記録媒体１０７からドライブ装置１０１を介して補助記憶装置１０２にインストールされる。但し、プログラムは必ずしも記録媒体１０７からインストールされる必要はなく、ネットワークなどを介し何れかの外部装置からダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータなどを格納する。メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムやデータを読み出して格納する。プロセッサとして機能するＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムやプログラムを実行するのに必要なパラメータなどの各種データに従って、上述したモデル生成装置１００、制御装置２００及び制御システム３００の各種機能及び処理を実行する。インタフェース装置１０５は、ネットワーク又は外部装置に接続するための通信インタフェースとして用いられる。通信装置１０６は、外部装置と通信するための各種通信処理を実行する。
【０１０１】
しかしながら、モデル生成装置１００、制御装置２００及び制御システム３００は、上述したハードウェア構成に限定されるものでなく、他の何れか適切なハードウェア構成により実現されてもよい。
【０１０２】
以上、実施形態を説明したが、特許請求の範囲の趣旨及び範囲から逸脱することなく、形態や詳細の多用な変更が可能なことが理解されるであろう。
【符号の説明】
【０１０３】
５０  工作機械
１００  モデル生成装置
１１０、２１０、３１０  状態観測部
１２０、３２０  精度結果観測部
１３０、３３０  学習部
２００  制御装置
２２０、３４０  指令決定部
３００  制御システム
【図１】
0006856162.tif 000002
【図２】
0006856162.tif 000003
【図３】
0006856162.tif 000004
【図４】
0006856162.tif 000005
【図５】
0006856162.tif 000006
【図６】
0006856162.tif 000007
【図７】
0006856162.tif 000008
【図８】
0006856162.tif 000009
【図９】
0006856162.tif 000010
【図１０】
0006856162.tif 000011
【図１１】
0006856162.tif 000012
【図１２】
0006856162.tif 000013