(57)【要約】【課題】ワークの加工中に加工の状態やワークの状態を考慮して、より適切な把持力を設定してくれる把持力調整装置を提供すること。【解決手段】本発明の把持力調整装置１は、工作機械２の加工状態を示すデータ、及び治具３によるワークの把持状態に係るデータを少なくとも取得するデータ取得部３４と、データ取得部３４が取得したデータに基づいて、機械学習に用いるデータを作成する前処理部３６と、前処理部３６が作成したデータに基づいて、工作機械２のワークの加工が行われる環境における、治具３によるワークの把持力に係る機械学習の処理を実行する機械学習装置１００と、を備える。【選択図】図２
2020149505.tif 000002
【特許請求の範囲】
【請求項１】
ワークを加工する工作機械において、該ワークを固定する治具による該ワークの把持力を調整する把持力調整装置であって、
前記工作機械の加工状態を示すデータ、及び前記治具による前記ワークの把持状態に係るデータを少なくとも取得するデータ取得部と、
前記データ取得部が取得したデータに基づいて、機械学習に用いるデータを作成する前処理部と、
前記前処理部が作成したデータに基づいて、前記工作機械の前記ワークの加工が行われる環境における、前記治具による前記ワークの把持力に係る機械学習の処理を実行する機械学習装置と、
を備えた把持力調整装置。
【請求項２】
前記前処理部は、前記工作機械による前記ワークの加工に用いられる工具に係る情報を含む工具データ、前記工作機械による前記ワークの加工での加工条件に係る情報を含む加工条件データ、前記工作機械により加工される前記ワークに係る情報を含むワークデータ、前記治具の種別に係る情報を含む治具データ、前記工作機械による前記ワークの加工工程に係る情報を含む加工工程データ、前記治具による前記ワークの把持力に係る情報を含む把持力データを少なくとも含む状態データと、前記治具によるワークの把持力の良否を示す把持力良否データを少なくとも含むラベルデータとを、前記機械学習装置による教師あり学習に用いるデータとして作成し、
前記機械学習装置は、
前記状態データ及び前記ラベルデータに基づいて、前記工作機械による加工状態及び前記治具による前記ワークの把持状態と、前記治具によるワークの把持力の良否と、を関連付けた学習モデルを生成する学習部を備える、
請求項１に記載の把持力調整装置。
【請求項３】
前記前処理部は、前記工作機械による前記ワークの加工に用いられる工具に係る情報を含む工具データ、前記工作機械による前記ワークの加工での加工条件に係る情報を含む加工条件データ、前記工作機械により加工される前記ワークに係る情報を含むワークデータ、前記治具の種別に係る情報を含む治具データ、前記工作機械による前記ワークの加工工程に係る情報を含む加工工程データ、前記治具による前記ワークの把持力に係る情報を含む把持力データを少なくとも含む状態データを、前記機械学習装置による推定に用いるデータとして作成し、
前記機械学習装置は、
前記工作機械による加工状態及び前記治具による前記ワークの把持状態と、前記治具によるワークの把持力の良否と、を関連付けた学習モデルを記憶する学習モデル記憶部と、
前記状態データに基づいて、前記学習モデル記憶部に記憶された学習モデルを用いた前記治具による前記ワークの把持力の良否を推定する推定部を備え、
前記把持力調整装置は、
前記推定部が良と推定する最小の前記ワークの把持力を探索し、探索した前記ワークの把持力を前記治具による前記ワークの把持力として決定する把持力決定部を更に備える、
請求項１に記載の把持力調整装置。
【請求項４】
前記前処理部は、前記工作機械による前記ワークの加工に用いられる工具に係る情報を含む工具データ、前記工作機械による前記ワークの加工での加工条件に係る情報を含む加工条件データ、前記工作機械により加工される前記ワークに係る情報を含むワークデータ、前記治具の種別に係る情報を含む治具データ、前記工作機械による前記ワークの加工工程に係る情報を含む加工工程データを少なくとも含む状態データと、前記治具による前記ワークの把持力に係る情報を含む適切把持力データを少なくとも含むラベルデータとを、前記機械学習装置による教師あり学習に用いるデータとして作成し、
前記機械学習装置は、
前記状態データ及び前記ラベルデータに基づいて、前記工作機械による加工状態及び前記治具による前記ワークの把持状態と、前記治具による前記ワークの把持力と、を関連付けた学習モデルを生成する学習部を備える、
請求項１に記載の把持力調整装置。
【請求項５】
前記前処理部は、前記工作機械による前記ワークの加工に用いられる工具に係る情報を含む工具データ、前記工作機械による前記ワークの加工での加工条件に係る情報を含む加工条件データ、前記工作機械により加工される前記ワークに係る情報を含むワークデータ、前記治具の種別に係る情報を含む治具データ、前記工作機械による前記ワークの加工工程に係る情報を含む加工工程データを少なくとも含む状態データを、前記機械学習装置による推定に用いるデータとして作成し、
前記機械学習装置は、
前記工作機械による加工状態及び前記治具による前記ワークの把持状態と、前記治具による前記ワークの把持力と、を関連付けた学習モデルを記憶する学習モデル記憶部と、
前記状態データに基づいて、前記学習モデル記憶部に記憶された学習モデルを用いた前記治具による前記ワークの把持力を推定する推定部を備え、
前記把持力調整装置は、
前記推定部の推定結果に基づいて、前記治具による前記ワークの把持力を決定する把持力決定部を更に備える、
請求項１に記載の把持力調整装置。
【請求項６】
前記前処理部は、前記工作機械による前記ワークの加工に用いられる工具に係る情報を含む工具データ、前記工作機械による前記ワークの加工での加工条件に係る情報を含む加工条件データ、前記工作機械により加工される前記ワークに係る情報を含むワークデータ、前記治具の種別に係る情報を含む治具データ、前記工作機械による前記ワークの加工工程に係る情報を含む加工工程データ、前記治具による前記ワークの把持力に係る情報を含む把持力データを少なくとも含む状態データと、前記治具による前記ワークの把持力の良否を示す把持力良否データを少なくとも含むラベルデータとを、前記機械学習装置による教師あり学習に用いるデータとして作成し、
前記機械学習装置は、
前記状態データ及び前記ラベルデータに基づいて、前記工作機械による加工状態及び前記治具による前記ワークの把持状態と、前記治具による前記ワークの把持力の良否と、を関連付けた第１学習モデルを生成する第１学習部と、
前記第１学習部が生成した第１学習モデルを用いた推定処理の結果に基づいて、前記工作機械による加工状態及び前記治具による前記ワークの把持状態と、前記治具による前記ワークの把持力と、を関連付けた第２学習モデルを生成する第２学習部と、
を備えた学習部を備える、
請求項１に記載の把持力調整装置。
【請求項７】
前記前処理部は、前記工作機械による前記ワークの加工に用いられる工具に係る情報を含む工具データ、前記工作機械による前記ワークの加工での加工条件に係る情報を含む加工条件データ、前記工作機械により加工される前記ワークに係る情報を含むワークデータ、前記治具の種別に係る情報を含む治具データ、前記工作機械による前記ワークの加工工程に係る情報を含む加工工程データ、前記治具による前記ワークの把持力に係る情報を含む把持力データを少なくとも含む状態データと、前記治具により前記ワークを固定できているのかを判定するための固定力判定データ、前記治具によるワークの変形を判定するための精度判定データを少なくとも含む判定データとを、前記機械学習装置による強化学習に用いるデータとして作成し、
前記機械学習装置は、
前記状態データ及び前記判定データに基づいて、前記工作機械による加工状態及び前記治具による前記ワークの把持状態と、前記治具による前記ワークの把持力の調整行動と、を関連付けた学習モデルを生成する学習部と、
前記状態データに基づいて、前記学習部が生成した学習モデルを用いた前記治具による前記ワークの把持力の調整を決定する意思決定部と、
を備え、
前記把持力調整装置は、
前記意思決定部の決定に基づいて、前記治具による前記ワークの把持力を決定する把持力決定部を更に備える、
請求項１に記載の把持力調整装置。
【請求項８】
複数の装置がネットワークを介して相互に接続されたシステムであって、
前記複数の装置は、少なくとも請求項２，４，６，７のいずれか１つに記載された把持力調整装置である第１の把持力調整装置を含む
把持力調整システム。
【請求項９】
前記複数の装置は、機械学習装置を備えたコンピュータを含み、
前記コンピュータは、前記第１の把持力調整装置の前記学習部における学習により生成された少なくとも１つの学習モデルを取得し、
前記コンピュータが備える機械学習装置は、取得した前記学習モデルに基づく最適化乃至効率化を行う、
請求項８に記載の把持力調整システム。
【請求項１０】
前記複数の装置は、前記第１の把持力調整装置とは異なる第２の把持力調整装置を含み、
前記第１の把持力調整装置が備える学習部による学習結果は、前記第２の把持力調整装置と共有される、
請求項８に記載の把持力調整システム。
【請求項１１】
前記複数の装置は、前記第１の把持力調整装置とは異なる第２の把持力調整装置を含み、
前記第２の把持力調整装置において観測されたデータは、前記ネットワークを介して前記第１の把持力調整装置が備える学習部による学習に利用可能である、
請求項８に記載の把持力調整システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、把持力調整装置及び把持力調整システムに関する。
【背景技術】
【０００２】
工作機械等でワークの加工を行う場合、加工対象となるワークをバイスやチャック等の治具に把持させて固定し、固定したワークを工具で加工する。この時、治具の把持力を弱くしてしまうと、ワークの加工中に工具から受ける切削力に治具の把持力が負けてワークが動いたり振動したりして、ワークの加工精度が低下する。また、ワークを横にして固定する場合等にはワーク自身の質量に負けてワークが動いてしまうこともある。一方、ワークが動かないように治具の把持力を強くすると、その把持力によりワークに歪みや反りが生じたりチャック爪等でワークに傷がついたりして、これが原因でワークの加工精度が低下することもある。そのため、治具にワークを把持させる際の把持力を切削力に負けない程度に強く、また、ワークに歪みが生じない程度に弱く、適切に設定する必要がある。従来は、この様な把持力の設定は、熟練した作業者の経験に頼っていた。
【０００３】
なお、特許文献１には、治具によりワークを把持した際に把持力を誤差なく測定し、また、その把持力でワークに生じた歪みを検出する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３７７４８０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、治具にワークを把持させる際の把持力を適切に設定する作業は、作業者にとって加工前に行う作業を増やし、負担となるという課題があった。また、一般的にワークの把持力を測定する技術は、ワークが停止している場合の把持力を測定するものであるが、例えばワークを回転させながら旋削工具を当ててワークを切削する旋盤での加工においては、ワークの回転時に生じる遠心力等が治具に掛かることによって把持力が低下するため、停止中に丁度良い把持力を設定したとしても、加工中にワークが動いてしまうこともあるという課題があった。
【０００６】
そのため、ワークの加工中に加工の状態やワークの状態を考慮して、より適切な把持力を設定してくれる把持力調整装置及び把持力調整システムが望まれている。
【課題を解決するための手段】
【０００７】
本発明の一態様は、ワークを加工する工作機械において、該ワークを固定する治具による該ワークの把持力を調整する把持力調整装置であって、前記工作機械の加工状態を示すデータ、及び前記治具による前記ワークの把持状態に係るデータを少なくとも取得するデータ取得部と、前記データ取得部が取得したデータに基づいて、機械学習に用いるデータを作成する前処理部と、前記前処理部が作成したデータに基づいて、前記工作機械の前記ワークの加工が行われる環境における、前記治具による前記ワークの把持力に係る機械学習の処理を実行する機械学習装置と、を備えた把持力調整装置である。
【０００８】
本発明の他の態様は、複数の装置がネットワークを介して相互に接続されたシステムであって、前記複数の装置は、少なくとも学習部を備えた把持力調整装置を含む把持力調整システムである。
【発明の効果】
【０００９】
本発明の一態様によれば、ワークの加工における主軸回転数や送り速度、切り込み量等の加工条件やワークの材質、形状などを考慮した、適切な治具によるワークの把持力の調整を行うことができるようになる。
【図面の簡単な説明】
【００１０】
【図１】一実施形態による把持力調整装置の概略的なハードウェア構成図である。
【図２】第１実施形態による制御装置の概略的な機能ブロック図である。
【図３】第２実施形態による把持力調整装置の概略的な機能ブロック図である。
【図４】把持力決定部の動作について説明する図である。
【図５】第４実施形態による把持力調整装置の概略的な機能ブロック図である。
【図６】第５実施形態による把持力調整装置の概略的な機能ブロック図である。
【図７】第６実施形態による把持力調整装置の概略的な機能ブロック図である。
【図８】クラウドサーバ、フォグコンピュータ、エッジコンピュータを含む３階層構造のシステムの例を示す図である。
【図９】コンピュータ上に実装した形態での把持力調整装置の概略的なハードウェア構成図である。
【図１０】第７実施形態による把持力調整システムの概略的な構成図である。
【図１１】第８実施形態による把持力調整システムの概略的な構成図である。
【図１２】第９実施形態による把持力調整システムの概略的な構成図である。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態を図面と共に説明する。
図１は一実施形態による機械学習装置を備えた把持力調整装置の要部を示す概略的なハードウェア構成図である。本実施形態の把持力調整装置１は、例えば工作機械を制御する制御装置上に実装することができる。また、本実施形態の把持力調整装置１は、工作機械を制御する制御装置と併設されたパソコンや、該制御装置と有線／無線のネットワークを介して接続された管理装置、エッジコンピュータ、フォグコンピュータ、クラウドサーバ等のコンピュータとして実装することができる。本実施形態では、把持力調整装置１を、工作機械を制御する制御装置上に実装した場合の例を示す。
【００１２】
本実施形態による把持力調整装置１が備えるＣＰＵ１１は、把持力調整装置１を全体的に制御するプロセッサである。ＣＰＵ１１は、ＲＯＭ１２に格納されたシステム・プログラムをバス２０を介して読み出し、該システム・プログラムに従って把持力調整装置１の全体を制御する。ＲＡＭ１３には一時的な計算データや表示データ、図示しない入力部を介してオペレータが入力した各種データ等が一時的に格納される。
【００１３】
不揮発性メモリ１４は、例えば図示しないバッテリでバックアップされるなどして、把持力調整装置１の電源がオフされても記憶状態が保持されるメモリとして構成される。不揮発性メモリ１４には、インタフェース１５を介して外部機器７２から読み込まれたプログラムや表示器／ＭＤＩユニット７０を介して入力されたプログラム、把持力調整装置１の各部や工作機械、治具３等から取得された各種データ（例えば、工具の種類等の工具に係る情報、主軸回転数、送り速度、切り込み量等の切削条件に係る情報、各軸を駆動するモータの電圧値／電流値、荒加工や仕上げ加工等の加工工程に係る情報、ワーク材質、ワーク形状等のワークに係る情報、治具の種別や治具の把持力等の治具に係る情報等）が記憶されている。不揮発性メモリ１４に記憶されたプログラムや各種データは、実行時／利用時にはＲＡＭ１３に展開されても良い。また、ＲＯＭ１２には、公知の解析プログラムなどの各種のシステム・プログラム（後述する機械学習装置１００とのやりとりを制御するためのシステム・プログラムを含む）があらかじめ書き込まれている。
【００１４】
インタフェース１５は、把持力調整装置１とアダプタ等の外部機器７２と接続するためのインタフェースである。外部機器７２側からはプログラムや各種パラメータ等が読み込まれる。また、把持力調整装置１内で編集したプログラムや各種パラメータ等は、外部機器７２を介して外部記憶手段に記憶させることができる。ＰＭＣ（プログラマブル・マシン・コントローラ）１６は、把持力調整装置１に内蔵されたシーケンス・プログラムで工作機械及び治具３等のような該工作機械の周辺装置との間でＩ／Ｏユニット１７を介して信号の入出力を行い制御する。
【００１５】
治具３は、バイスやチャック等のような、工作機械で加工するワークを把持して固定する装置である。把持力調整装置１は、ＰＭＣ１６から出力される信号を介して、治具３によるワークの把持力を調整する。また、治具３は、治具３によるワークの把持力等の情報を、ＰＭＣ１６を介してＣＰＵ１１に渡す。
【００１６】
表示器／ＭＤＩユニット７０はディスプレイやキーボード等を備えた手動データ入力装置であり、インタフェース１８は表示器／ＭＤＩユニット７０のキーボードからの指令，データを受けてＣＰＵ１１に渡す。インタフェース１９は各軸を手動で駆動させる際に用いる手動パルス発生器等を備えた操作盤７１に接続されている。
【００１７】
工作機械の各軸を制御するための軸制御回路３０はＣＰＵ１１からの軸の移動指令量を受けて、軸の指令をサーボアンプ４０に出力する。サーボアンプ４０はこの指令を受けて、工作機械が備える軸を移動させるサーボモータ５０を駆動する。軸のサーボモータ５０は位置・速度検出器を内蔵し、この位置・速度検出器からの位置・速度フィードバック信号を軸制御回路３０にフィードバックし、位置・速度のフィードバック制御を行う。なお、図１のハードウェア構成図では軸制御回路３０、サーボアンプ４０、サーボモータ５０は１つずつしか示されていないが、実際には制御対象となる工作機械に備えられた軸の数（例えば、直線３軸を備えた工作機械であれば３つ、５軸加工機であれば５つ）だけ用意される。
【００１８】
スピンドル制御回路６０は、工作機械の主軸への主軸回転指令を受け、スピンドルアンプ６１にスピンドル速度信号を出力する。スピンドルアンプ６１はこのスピンドル速度信号を受けて、主軸のスピンドルモータ６２を指令された回転速度で回転させ、工具を駆動する。スピンドルモータ６２にはポジションコーダ６３が結合され、ポジションコーダ６３が主軸の回転に同期して帰還パルスを出力し、その帰還パルスはＣＰＵ１１によって読み取られる。
【００１９】
インタフェース２１は、把持力調整装置１と機械学習装置１００とを接続するためのインタフェースである。機械学習装置１００は、機械学習装置１００全体を統御するプロセッサ１０１と、システム・プログラム等を記憶したＲＯＭ１０２、機械学習に係る各処理における一時的な記憶を行うためのＲＡＭ１０３、及び学習モデル等の記憶に用いられる不揮発性メモリ１０４を備える。機械学習装置１００は、インタフェース２１を介して把持力調整装置１で取得可能な各情報（例えば、工具の種類等の工具に係る情報、主軸回転数、送り速度、切り込み量等の切削条件に係る情報、各軸を駆動するモータの電圧値／電流値、荒加工や仕上げ加工等の加工工程に係る情報、ワーク材質、ワーク形状等のワークに係る情報、治具の種別や治具の把持力等の治具に係る情報等）を観測することができる。また、把持力調整装置１は、機械学習装置１００から出力される情報を受けて、工作機械や治具３の制御、表示器／ＭＤＩユニット７０への表示、図示しないネットワークを介した他の装置に対する情報の送信等を行う。
【００２０】
図２は、第１実施形態による把持力調整装置１と機械学習装置１００の概略的な機能ブロック図である。本実施形態の把持力調整装置１は、機械学習装置１００が教師あり学習を行う場合に必要とされる構成を備えている（学習モード）。図２に示した各機能ブロックは、図１に示した把持力調整装置１が備えるＣＰＵ１１、及び機械学習装置１００のプロセッサ１０１が、それぞれのシステム・プログラムを実行し、把持力調整装置１及び機械学習装置１００の各部の動作を制御することにより実現される。
【００２１】
本実施形態の把持力調整装置１は、制御部３２、データ取得部３４、前処理部３６を備え、把持力調整装置１が備える機械学習装置１００は、学習部１１０を備えている。また、図１で示した不揮発性メモリ１４上には、工作機械２、治具３等から取得されたデータが記憶される取得データ記憶部５２が設けられており、図１で示した機械学習装置１００の不揮発性メモリ１０４上には、学習部１１０による機械学習により構築された学習モデルを記憶する学習モデル記憶部１３０が設けられている。
【００２２】
制御部３２は、図１に示した把持力調整装置１が備えるＣＰＵ１１がＲＯＭ１２から読み出したシステム・プログラムを実行し、主としてＣＰＵ１１によるＲＡＭ１３、不揮発性メモリ１４を用いた演算処理と、軸制御回路３０、スピンドル制御回路６０、及びＰＭＣ１６を介した工作機械２及び治具３の制御処理が行われることで実現される。制御部３２は、図１で示した不揮発性メモリ１４に記憶された制御用プログラム５４に基づいて、工作機械２及び治具３の動作を制御する機能手段である。制御部３２は、制御用プログラム５４により工作機械２が備える各軸を駆動するサーボモータ５０（図１）、スピンドルモータ（図１）に対して制御周期毎に移動指令を出力する等といったように、工作機械２の各部を制御するために必要とされる一般的な制御のための機能を備える。また、制御部３２は、治具３に対して、ワークの把持力を調整する指令を出力する。更に、制御部３２は、工作機械２及び治具３から、工作機械２による加工状態及び治具３によるワークの把持状態に係る情報を受け取り、データ取得部３４に対して出力する。制御部３２が、工作機械２及び治具３から取得し、データ取得部３４に出力するデータは、例えば、工具の種類等の工具に係る情報、主軸回転数、送り速度、切り込み量等の切削条件に係る情報、各軸を駆動するモータの電圧値／電流値に係る情報、荒加工や仕上げ加工等の加工工程に係る情報、ワーク材質、ワーク形状等のワークに係る情報、治具の種別や治具の把持力等の治具に係る情報等が挙げられる。
【００２３】
データ取得部３４は、図１に示した把持力調整装置１が備えるＣＰＵ１１がＲＯＭ１２から読み出したシステム・プログラムを実行し、主としてＣＰＵ１１がＲＡＭ１３、不揮発性メモリ１４を用いた演算処理を行うことで実現される。データ取得部３４は、制御部３２から入力された工作機械２による加工状態に係るデータ及び治具３によるワークの把持状態に係るデータ、表示器／ＭＤＩユニット７０から作業者により入力された治具３の把持力に対する評価に係るデータ等を取得データ記憶部５２に対して記憶する機能手段である。データ取得部３４は、制御部３２から入力された工作機械２による加工状態に係るデータ及び治具３によるワークの把持状態に係るデータと、治具３によるワークの把持力に対する評価に係るデータとを関連付けて、取得データとして取得データ記憶部５２に記憶する。
【００２４】
前処理部３６は、図１に示した把持力調整装置１が備えるＣＰＵ１１がＲＯＭ１２から読み出したシステム・プログラムを実行し、主としてＣＰＵ１１がＲＡＭ１３、不揮発性メモリ１４を用いた演算処理を行うことで実現される。前処理部３６は、データ取得部３４が取得したデータに基づいて、機械学習装置１００による機械学習に用いられる学習データを作成する機能手段である。前処理部３６は、データ取得部３４が取得した（そして、取得データ記憶部５２に記憶された）データを機械学習装置１００において扱われる統一的な形式へと変換（数値化、サンプリング等）した学習データを作成する。例えば、前処理部３６は、機械学習装置１００が教師あり学習をする場合においては、該学習における所定の形式の状態データＳ及びラベルデータＬの組を学習データとして作成する。
【００２５】
本実施形態による前処理部３６が作成する状態データＳとしては、工作機械２によるワークの加工に用いられる工具に係る情報を含む工具データＳ１、工作機械２によるワークの加工での加工条件に係る情報を含む加工条件データＳ２、工作機械２により加工されるワークに係る情報を含むワークデータＳ３、治具３の種別に係る情報を含む治具データＳ４、工作機械２によるワークの加工工程に係る情報を含む加工工程データＳ５、治具３による把持力を含む把持力データＳ６を少なくとも含む。
【００２６】
工具データＳ１は、工作機械２によるワークの加工に用いられる工具の種別や工具の材質を示すデータ列として定義される。工具の種別に関しては、例えばバイト、フライス工具、ドリル工具等のように、工具の形状や加工時の使用方法に応じて分類して、それぞれ一意に識別可能な数値で表すようにしても良い。また、工具の材質については、例えばハイス鋼や超硬合金等のような工具材質をそれぞれ一意に識別可能な数値で表すようにしても良い。工具データＳ１は、作業者により把持力調整装置１や工作機械２に対して設定された工具に係る情報を取得して、該取得した工具に係る情報に基づいて作成すれば良い。
【００２７】
加工条件データＳ２は、工作機械２によるワークの加工において設定乃至指令される、主軸回転数、送り速度、切り込み量等の加工条件を要素としたデータ列として定義される。主軸回転数、送り速度、切り込み量等については、それぞれの加工条件の値を所定の単位で示した数値を用いれば良い。それぞれの加工条件の値は、制御用プログラム５４で指令されたり、制御用のデフォルト値として設定されているので、これらを取得して作成すれば良い。
【００２８】
ワークデータＳ３は、工作機械２により加工されるワークの材質や、加工中のワークの形状を示すデータ列として定義される。ワークの材質に関しては、例えばアルミ、鉄等のようなワーク材質をそれぞれ一意に識別可能な数値で表すようにしても良い。加工中のワークの形状については、ワークの奥行き／幅／高さの平均をデータ列として表してもよいし、より厳密にＣＡＤデータ等に基づいてワークの形状を表現したデータ列としても良い。ワークデータＳ３は、作業者により把持力調整装置１や工作機械２に対して設定されたワークに係る情報や、加工開始前に測定されるワークの形状やＣＡＤ／ＣＡＭ装置から取得されるデータ、制御用プログラム５４を解析して得られる加工経過に係るデータ等に基づいて作成すれば良い。
【００２９】
治具データＳ４は、ワークを把持する治具３の種別を示すデータ列として定義される。治具の種別に関しては、例えばバイス、チャック等のように、治具の種類はワークを把持する構造に応じて分類して、それぞれ一意に識別可能な数値で表すようにしても良い。治具データＳ４は、作業者により把持力調整装置１や工作機械２に対して設定された治具３に係る情報や、治具３から取得された該治具３に関する製造情報等に基づいて作成すれば良い。
【００３０】
加工工程データＳ５は、工作機械２によるワークの加工の工程を示すデータとして定義される。加工の工程に関しては、例えば荒加工、中仕上げ加工、仕上げ加工等のような加工工程をそれぞれ一意に識別可能な数値で表すようにしても良い。加工工程データＳ５は、加工開始前にＣＡＤ／ＣＡＭ装置から取得されるデータ、制御用プログラム５４を解析して得られる加工工程に係るデータ等に基づいて作成すれば良い。
【００３１】
把持力データＳ６は、治具３によるワークの把持力を示すデータとして定義される。治具３によるワークの把持力は、治具３より取得される把持力を所定の単位での数値で表したものとしてもよいし、例えば治具３より取得される把持力を複数の段階（例えば、１０段階）で示した数値で表すようにしても良い。把持力データＳ６は、治具３に取り付けられた図示しないトルクセンサにより検出された値を取得するようにしてもよいし、治具３を駆動するモータ等の電流値／電圧値等から間接的に求めるようにしても良い。
【００３２】
前処理部３６が作成するラベルデータＬは、前記した状態データＳが取得される加工の状態において、治具３によるワークの把持力が十分であるか否かを示す評価に係るデータである把持力良否データＬ１を少なくとも含む。
【００３３】
把持力良否データＬ１は、治具３によるワークの把持力が十分であるか否かを示す評価に係るラベル値を取るデータとして定義される。把持力良否データＬ１は、例えば工作機械２によるワークの加工状況を観察している作業者が表示器／ＭＤＩユニット７０を用いた入力操作に基づいて作成するようにしても良い。これは、作業者がワークの加工中にワークが動いたことに気づいて治具３によるワークの把持力が十分ではなかったことを入力するようにしても良いし、作業者が治具３の把持力を調整し、その状態で所定時間だけ同じ加工状態が継続した場合に、調整後の治具３によるワークの把持力が十分であるとして把持力良否データＬ１を作成するようにしても良い。また、把持力良否データＬ１は、例えば工作機械２の加工が完了した、又は、所定の工程の区切りに達した際に、距離センサなどを用いてワークの加工精度を計測し、その計測結果に基づいて作成するようにしても良い。例えば、加工精度が悪かった場合の加工中に取得された状態データＳに対して把持力が十分でなかったことを示す把持力良否データＬ１を作成するようにしても良い。
【００３４】
学習部１１０は、図１に示した把持力調整装置１が備えるプロセッサ１０１がＲＯＭ１０２から読み出したシステム・プログラムを実行し、主としてプロセッサ１０１がＲＡＭ１０３、不揮発性メモリ１０４を用いた演算処理を行うことで実現される。本実施形態による学習部１１０は、前処理部３６が作成した学習データを用いた機械学習を行う。学習部１１０は、公知の教師あり学習の手法により、工作機械２による加工状態及び治具３によるワークの把持状態に対する、治具３によるワークの把持力の評価を学習した学習モデルを生成し、生成した学習モデルを学習モデル記憶部１３０に記憶する。学習部１１０が行う教師あり学習の手法としては、ｍｕｌｔｉｌａｙｅｒ  ｐｅｒｃｅｐｔｒｏｎ法、ｒｅｃｕｒｒｅｎｔ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ法、Ｌｏｎｇ  Ｓｈｏｒｔ−Ｔｅｒｍ  Ｍｅｍｏｒｙ法、ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ法等が挙げられる。
【００３５】
本実施形態による学習部１１０は、治具３によるワークの把持力の評価と、工作機械２による加工状態及び治具３によるワークの把持状態とを関連付けて学習した学習モデルを生成する。学習部１１０は、前処理部３６から入力された学習データ（状態データＳと把持力データＬ１の組）を用いて学習モデルを生成する。このようにして本実施形態による学習部１１０が生成する学習モデルは、工作機械２による加工状態及び治具３によるワークの把持状態が与えられた時に、そのような状態において治具３によるワークの把持力が十分であるか否かを推定するものとなる。
【００３６】
なお、学習部１１０は、学習の段階では必須の構成となるが、学習部１１０による治具３によるワークの把持力の評価の学習が完了した後には必ずしも必須の構成ではない。例えば、学習が完了した機械学習装置１００を顧客に出荷する場合等には、学習部１１０を取り外して出荷するようにしても良い。
【００３７】
上記した構成を備えた本実施形態による把持力調整装置１は、治具３によるワークの把持力の評価と、工作機械２による加工状態及び治具３によるワークの把持状態とを関連付けて学習した学習モデルを生成する。そして、このようにして生成された学習モデルを用いて、後述する推定部１２０は、工作機械２及び治具３から取得された状態データＳに基づいて、取得された状態におけるより適切な把持力を決定するために必要な推定処理を行うことができるようになる。
【００３８】
本実施形態による把持力調整装置１の変形例として、前処理部３６は、工具データＳ１、加工条件データＳ２、ワークデータＳ３、治具データＳ４、加工工程データＳ５、把持力データＳ６に加えて、更に工作機械２によるワークの加工中に工具（乃至ワーク）に掛かる切削抵抗を示す切削抵抗データＳ７を状態データとして作成しても良い。切削抵抗データＳ７は、例えば工作機械２によるワークの加工中に、工具とワークを相対的に移動させる各軸に掛かる力を示すデータ列として定義することができる。工具とワークを相対的に移動させる各軸に掛かる力は、例えば各軸に取り付けたトルクセンサから取得してもよいし、各軸を駆動するモータの電圧値／電流値等から間接的に求めるようにしても良い。機械学習装置１００による学習処理及び推定処理に切削抵抗データＳ７に加えることで、ワークの加工時に必要とされる治具３によるワークの把持力をより高い精度で学習する事ができるようになり、ワークの加工時に必要とされる治具３によるワークの把持力の推定に活用することができるようになる。
【００３９】
本実施形態による把持力調整装置１の他の変形例として、前処理部３６は、更に工作機械２の主軸の位置を示す主軸位置データＳ８を状態データとして作成しても良い。工作機械２におけるワークの加工においては、ワークの治具３に近い位置を加工している場合と、治具３から遠い位置を加工している場合とでは、切削抵抗の治具３に対する影響の度合いが変化する。そのため、主軸位置データＳ８を学習に用いるデータに加えることで、工具とワークとが接触する位置に対する治具３によるワークの把持力に係る情報を学習する事ができるようになり、ワークの加工時に必要とされる治具３によるワークの把持力の推定に活用することができるようになる。
【００４０】
図３は、第２実施形態による把持力調整装置１と機械学習装置１００の概略的な機能ブロック図である。本実施形態の把持力調整装置１は、機械学習装置１００がそれぞれの治具３によるワークの把持力の評価を推定する場合に必要とされる構成を備えている（推定モード）。図３に示した各機能ブロックは、図１に示した把持力調整装置１が備えるＣＰＵ１１、及び機械学習装置１００のプロセッサ１０１が、それぞれのシステム・プログラムを実行し、把持力調整装置１及び機械学習装置１００の各部の動作を制御することにより実現される。
【００４１】
本実施形態の把持力調整装置１は、制御部３２、データ取得部３４、前処理部３６、把持力決定部３８を備え、把持力調整装置１が備える機械学習装置１００は、推定部１２０を備えている。また、図１で示した不揮発性メモリ１４上には、工作機械２、治具３等から取得されたデータが記憶される取得データ記憶部５２が設けられており、図１で示した機械学習装置１００の不揮発性メモリ１０４上には、第１実施形態で説明した学習部１１０による機械学習により構築された学習モデルを記憶する学習モデル記憶部１３０が設けられている。
【００４２】
本実施形態による制御部３２、データ取得部３４は、第１実施形態における制御部３２，データ取得部３４と同様の機能を備える。
【００４３】
本実施形態による前処理部３６は、機械学習装置１００による学習モデルを用いたそれぞれの治具３によるワークの把持力の評価の推定の段階において、データ取得部３４が取得したデータを、機械学習装置１００において扱われる統一的な形式へと変換（数値化、サンプリング等）して、機械学習装置１００による推定に用いられる所定の形式の状態データＳを作成する。本実施形態による前処理部３６は、状態データＳを作成するに際して、把持力決定部３８から指令された治具３に対して指令される仮の把持力を示す把持力データＳ６を作成する。例えば、前処理部３６は、データ取得部３４が取得したデータに基づいて、工具データＳ１、加工条件データＳ２、ワークデータＳ３、治具データＳ４、加工工程データＳ５を作成し、更に、把持力決定部３８からの指令に基づいて、治具３に指令される仮の把持力を示す把持力データＳ６を作成する。前処理部３６は、推定の初期においては、予め定められた把持力を示す把持力データＳ６を作成するようにしても良い。
【００４４】
推定部１２０は、図１に示した把持力調整装置１が備えるプロセッサ１０１がＲＯＭ１０２から読み出したシステム・プログラムを実行し、主としてプロセッサ１０１がＲＡＭ１０３、不揮発性メモリ１０４を用いた演算処理を行うことで実現される。推定部１２０は、前処理部３６が作成した状態データＳに基づいて、学習モデル記憶部１３０に記憶された学習モデルを用いたそれぞれの治具３によるワークの把持力の評価の推定を行う。本実施形態の推定部１２０では、学習部１１０により生成された（パラメータが決定された）学習モデルに対して、前処理部３６から入力された状態データＳを入力することで、それぞれの治具３によるワークの把持力の評価を推定して出力する。推定部１２０が推定した結果は、把持力決定部３８に対して出力される。
【００４５】
把持力決定部３８は、図１に示した把持力調整装置１が備えるＣＰＵ１１がＲＯＭ１２から読み出したシステム・プログラムを実行し、主としてＣＰＵ１１がＲＡＭ１３、不揮発性メモリ１４を用いた演算処理を行うことで実現される。把持力決定部３８は、推定部１２０により推定された、それぞれの治具３によるワークの把持力の評価の推定結果に基づいて、治具３によるワークの把持力を決定する機能手段である。把持力決定部３８は、推定部１２０から出力された把持力の評価の推定の結果を参照し、該推定の結果が「把持力は十分である」ことを示している場合には、治具３によるワークの把持力を１段階下げた状態データＳを作成するように前処理部３６に対して指令する。また、把持力決定部３８は、推定部１２０から出力された把持力の評価の推定の結果を参照し、該推定の結果が「把持力は不十分である」ことを示している場合には、治具３によるワークの把持力を１段階上げた状態データＳを作成するように前処理部３６に対して指令する。把持力決定部３８は、このような処理を繰り返して、「把持力は十分である」という推定の結果が得られる最小の把持力を探索し、探索された把持力を、治具３によるワークの把持力として決定する。
【００４６】
図４を用いて、把持力決定部３８による治具３によるワークの把持力として決定の流れを説明する。図４の例では、治具３によるワークの把持力は１０段階で調整できるものとしている。治具３によるワークの把持力を決定する際に、最初、前処理部３６は予め定められた把持力（例えば、最大値×１．０）を示す把持力データＳ６を含む状態データＳを作成する。推定部１２０は、前処理部３６が作成した状態データＳに基づいて、そのワークの把持力の評価を推定する。ここで、推定部１２０が「把持力は十分である」という推定結果を出力した場合、把持力決定部３８は、前処理部３６に対して、把持力を１段階下げた状態データＳを作成するように指令する。前処理部３６は、把持力決定部３８からの指令に基づいて把持力を１段階下げた状態データＳを作成し、作成された状態データＳに基づく推定部１２０による把持力の評価の推定が行われる。これを繰り返し、推定部１２０からの評価が「把持力は十分である」から「把持力は不十分である」に変わった場合、把持力決定部３８は、その時の１つ前に前処理部３６に対して指令した段階のワークの把持力が適切なワークの把持力（評価が「把持力は十分である」とされる最も少ないワークの把持力）であると判断して、該把持力を治具３によるワークの把持力として決定する。
【００４７】
把持力決定部３８による、ワークの把持力の探索は、上記したように把持力の最大値から探索を始めるようにしても良いし、把持力の最小値から上に向けて探索をしたり、把持力の中間値から上下に探索を始めたりするようにしても良い。また、二分探索等の公知のアルゴリズムを用いて、把持力の最小値を探索するようにしても良い。
把持力決定部３８は、治具３によるワークの把持力を決定すると、決定された把持力へと調整するように制御部３２へと指令する。
【００４８】
上記した構成を備えた本実施形態による把持力調整装置１は、治具３によるワークの把持力を、十分にワークの固定が可能であって、且つ、最も小さい力へと調整することができるようになる。
【００４９】
本実施形態による把持力調整装置１の変形例として、前処理部３６は、工具データＳ１、加工条件データＳ２、ワークデータＳ３、治具データＳ４、加工工程データＳ５、把持力データＳ６に加えて、更に工作機械２によるワークの加工中に工具（乃至ワーク）に掛かる切削抵抗を示す切削抵抗データＳ７を状態データＳとして作成しても良い。切削抵抗データＳ７は、例えば工作機械２によるワークの加工中に、工具とワークを相対的に移動させる各軸に掛かる力を示すデータ列として定義することができる。工具とワークを相対的に移動させる各軸に掛かる力は、例えば各軸に取り付けたトルクセンサから取得してもよいし、各軸を駆動するモータの電圧値／電流値等から間接的に求めるようにしても良い。機械学習装置１００による学習処理及び推定処理に切削抵抗データＳ７に加えることで、ワークの加工時に必要とされる治具３によるワークの把持力をより精度高く推定することができるようになる。
【００５０】
本実施形態による把持力調整装置１の他の変形例として、前処理部３６は、更に工作機械２の主軸の位置を示す主軸位置データＳ８を状態データとして作成しても良い。工作機械２におけるワークの加工においては、ワークの治具３に近い位置を加工している場合と、治具３から遠い位置を加工している場合とでは、切削抵抗の治具３に対する影響の度合いが変化する。そのため、主軸位置データＳ８を学習に用いるデータに加えることで、ワークの加工時に必要とされる治具３によるワークの把持力をより精度高く推定することができるようになる。
【００５１】
以下では、本発明の第３実施形態による把持力調整装置１について説明する。本実施形態による把持力調整装置１は、図２に示した第１実施形態と同じ機能ブロックを備える。本実施形態の把持力調整装置１は、機械学習装置１００が教師あり学習を行う場合に必要とされる構成を備えている（学習モード）。
【００５２】
本実施形態による制御部３２、データ取得部３４は、第１実施形態における制御部３２，データ取得部３４と同様の機能を備える。
【００５３】
本実施形態による前処理部３６は、状態データＳとして、工具データＳ１、加工条件データＳ２、ワークデータＳ３、治具データＳ４、加工工程データＳ５を作成し、また、ラベルデータＬとして、前記した状態データＳが取得される加工の状態において、治具３による適切なワークの把持力に係るデータである適切把持力データＬ２を作成する。
【００５４】
適切把持力データＬ２は、現在の工作機械２及び治具３の状態に対する適切なワークの把持力をラベル値として取るデータとして定義される。適切把持力データＬ２は、例えば工作機械２によるワークの加工を行っている熟練した作業者が表示器／ＭＤＩユニット７０を用いた入力操作に基づいて作成するようにしても良い。これは、例えば作業者が治具３によるワークの把持力を調整し、その状態で所定時間だけ同じ加工状態が継続した場合に、その時のワークの把持力を適切把持力データＬ２を作成するようにしても良い。
【００５５】
本実施形態による学習部１１０は、前処理部３６が作成した学習データを用いた機械学習を行う。学習部１１０は、公知の教師あり学習の手法により、工作機械２による加工状態及び治具３によるワークの把持状態に対する、治具３によるワークの把持力を学習した学習モデルを生成し、生成した学習モデルを学習モデル記憶部１３０に記憶する。学習部１１０が行う教師あり学習の手法としては、ｍｕｌｔｉｌａｙｅｒ  ｐｅｒｃｅｐｔｒｏｎ法、ｒｅｃｕｒｒｅｎｔ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ法、Ｌｏｎｇ  Ｓｈｏｒｔ−Ｔｅｒｍ  Ｍｅｍｏｒｙ法、ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ法等が挙げられる。
【００５６】
本実施形態による学習部１１０は、該治具３によるワークの把持力と、工作機械２による加工状態及び治具３によるワークの把持状態とを関連付けて学習した学習モデルを生成する。このようにして本実施形態による学習部１１０が生成する学習モデルは、工作機械２による加工状態及び治具３によるワークの把持状態が与えられた時に、そのような状態において治具３による適切なワークの把持力を推定するものとなる。
【００５７】
なお、学習部１１０は、学習の段階では必須の構成となるが、学習部１１０による治具３によるワークの把持力の評価の学習が完了した後には必ずしも必須の構成ではない。例えば、学習が完了した機械学習装置１００を顧客に出荷する場合等には、学習部１１０を取り外して出荷するようにしても良い。
【００５８】
上記した構成を備えた本実施形態による把持力調整装置１は、治具３によるワークの把持力と、工作機械２による加工状態及び治具３によるワークの把持状態とを関連付けて学習した学習モデルを生成する。本実施形態による把持力調整装置１は、作業者が設定した治具３による適切なワークの把持力に基づいて学習を行う必要があるため、十分な学習に必要な学習データを集めることが難しい面が有るが、一度十分な機械学習が完了すれば、このようにして生成された学習モデルを用いて、後述する推定部１２０は、工作機械２及び治具３から取得された状態データＳに基づいて、取得された状態における治具３による適切なワークの把持力を直接推定することができるようになる。
【００５９】
図５は、第４実施形態による把持力調整装置１と機械学習装置１００の概略的な機能ブロック図である。本実施形態の把持力調整装置１は、機械学習装置１００がそれぞれの治具３によるワークの把持力の評価を推定する場合に必要とされる構成を備えている（推定モード）。図５に示した各機能ブロックは、図１に示した把持力調整装置１が備えるＣＰＵ１１、及び機械学習装置１００のプロセッサ１０１が、それぞれのシステム・プログラムを実行し、把持力調整装置１及び機械学習装置１００の各部の動作を制御することにより実現される。
【００６０】
本実施形態の把持力調整装置１は、制御部３２、データ取得部３４、前処理部３６、把持力決定部３８を備え、把持力調整装置１が備える機械学習装置１００は、推定部１２０を備えている。また、図１で示した不揮発性メモリ１４上には、工作機械２、治具３等から取得されたデータが記憶される取得データ記憶部５２が設けられており、図１で示した機械学習装置１００の不揮発性メモリ１０４上には、第１実施形態で説明した学習部１１０による機械学習により構築された学習モデルを記憶する学習モデル記憶部１３０が設けられている。
【００６１】
本実施形態による制御部３２、データ取得部３４は、第２実施形態による制御部３２、データ取得部３４と同様の機能を備える。
【００６２】
本実施形態による前処理部３６は、機械学習装置１００による学習モデルを用いたそれぞれの治具３によるワークの把持力の評価の推定の段階において、データ取得部３４が取得したデータを、機械学習装置１００において扱われる統一的な形式へと変換（数値化、サンプリング等）して、機械学習装置１００による推定に用いられる所定の形式の状態データＳを作成する。本実施形態による前処理部３６は、データ取得部３４が取得したデータに基づいて、工具データＳ１、加工条件データＳ２、ワークデータＳ３、治具データＳ４、加工工程データＳ５を作成する。
【００６３】
本実施形態による推定部１２０は、前処理部３６が作成した状態データＳに基づいて、学習モデル記憶部１３０に記憶された学習モデルを用いたそれぞれの治具３によるワークの把持力の評価の推定を行う。本実施形態の推定部１２０では、学習部１１０により生成された（パラメータが決定された）学習モデルに対して、前処理部３６から入力された状態データＳを入力することで、治具３による適切なワークの把持力を推定して出力する。推定部１２０が推定した結果は、把持力決定部３８に対して出力される。
【００６４】
本実施形態による把持力決定部３８は、推定部１２０により推定された、それぞれの治具３によるワークの把持力の推定結果を、治具３によるワークの把持力として決定し、決定された把持力へと調整するように制御部３２へと指令する。
【００６５】
上記した構成を備えた本実施形態による把持力調整装置１は、治具３によるワークの把持力を、十分にワークの固定が可能であって、且つ、最も小さい力へと調整することができるようになる。
【００６６】
図６は、第５実施形態による把持力調整装置１と機械学習装置１００の概略的な機能ブロック図である。本実施形態の把持力調整装置１は、機械学習装置１００が教師あり学習を行う場合に必要とされる構成を備えている（学習モード）。図１０に示した各機能ブロックは、図１に示した把持力調整装置１が備えるＣＰＵ１１、及び機械学習装置１００のプロセッサ１０１が、それぞれのシステム・プログラムを実行し、把持力調整装置１及び機械学習装置１００の各部の動作を制御することにより実現される。
【００６７】
本実施形態の把持力調整装置１は、制御部３２、データ取得部３４、前処理部３６を備え、把持力調整装置１が備える機械学習装置１００は、第１学習部１１２、第２学習部１１４を含む学習部１１０を備えている。また、図１で示した不揮発性メモリ１４上には、工作機械２、治具３等から取得されたデータが記憶される取得データ記憶部５２が設けられており、図１で示した機械学習装置１００の不揮発性メモリ１０４上には、第１学習部１１２、第２学習部１１４による機械学習により構築された学習モデルを記憶する学習モデル記憶部１３０が設けられている。
【００６８】
本実施形態による制御部３２、データ取得部３４、前処理部３６は、第１実施形態による制御部３２、データ取得部３４，前処理部３６と同様の機能を備える。
【００６９】
本実施形態による学習部１１０は、第１学習部１１２及び第２学習部１１４を備える。
第１学習部１１２は、第１実施形態で説明した学習部１１０と同様に、前処理部３６が作成した学習データを用いた機械学習を行い、治具３によるワークの把持力の評価と、工作機械２による加工状態及び治具３によるワークの把持状態とを関連付けて学習した第１学習モデルを生成する。第１学習部１１２が生成する第１学習モデルは、工作機械２による加工状態及び治具３によるワークの把持状態が与えられた時に、そのような状態において治具３によるワークの把持力が十分であるか否かを推定するものとなる。
【００７０】
第２学習部１１４は、第３実施形態で説明した学習部１１０と同様に、学習データを用いた機械学習を行い、治具３によるワークの把持力と、工作機械２による加工状態及び治具３によるワークの把持状態とを関連付けて学習した第２学習モデルを生成する。第２学習部１１４は、第１学習部１１２が生成した第１学習モデルの学習結果を解析して、該解析結果に基づいた機械学習を行い、第２学習モデルを生成する。第２学習部１１４は、例えば第２実施形態で説明した把持力決定部３８が実行するのと同様の処理を第１学習モデルに対して実行し、工作機械２及び治具３の状態に対する、「把持力は十分である」という推定の結果が得られる最小のワークの把持力を探索する。そして、第２学習部１１４は、工作機械２及び治具３の状態と、探索されたワークの把持力とを用いた機械学習を行い、第２学習モデルを生成する。
【００７１】
本実施形態による把持力調整装置１は、第１実施形態で示した把持力調整装置１が備える学習部１１０と同様の機械学習方法で生成した第１学習モデルを用いて、第３実施形態で示した把持力調整装置１が備える学習部１１０と同様の機械学習方法に用いる学習データを生成し、生成した学習データを用いて第２学習モデルを生成する。第１実施形態で示した把持力調整装置１では、比較的容易に学習データを作成して学習を行うことができる半面、出来上がった学習モデルを用いて治具３によるワークの把持力を決定するために探索処理を行う必要があった。一方で、第３実施形態で示した把持力調整装置１では、学習モデルを用いてより適切な治具３によるワークの把持力を直接推定できる半面、学習データを収集することが難しいという問題があった。本実施形態による把持力調整装置１は、これら２つの学習方法を組み合わせることにより、比較的容易に学習データを収集でき、収集した学習データを用いてより適切な治具３によるワークの把持力を直接推定できる学習モデルを生成することができる。このようにして生成された学習モデル（第２学習モデル）は、例えば第４実施形態による把持力調整装置１における治具３によるワークの把持力の推定に用いることができる。
【００７２】
図１１は、第６実施形態による把持力調整装置１と機械学習装置１００の概略的な機能ブロック図である。図１１に示した各機能ブロックは、図１に示した把持力調整装置１が備えるＣＰＵ１１、及び機械学習装置１００のプロセッサ１０１が、それぞれのシステム・プログラムを実行し、把持力調整装置１及び機械学習装置１００の各部の動作を制御することにより実現される。
【００７３】
本実施形態の把持力調整装置１は、制御部３２、データ取得部３４、前処理部３６を備え、把持力調整装置１が備える機械学習装置１００は、学習部１１０、意思決定部１２２を備えている。また、図１で示した不揮発性メモリ１４上には、工作機械２、治具３等から取得されたデータが記憶される取得データ記憶部５２が設けられており、図１で示した機械学習装置１００の不揮発性メモリ１０４上には、学習部１１０による機械学習により構築された学習モデルを記憶する学習モデル記憶部１３０が設けられている。
【００７４】
本実施形態による制御部３２、データ取得部３４は、第１実施形態による制御部３２、データ取得部３４と同様の機能を備える。
【００７５】
本実施形態による前処理部３６は、機械学習装置１００が強化学習をする場合においては、該学習における所定の形式の状態データＳ及び判定データＤの組を学習データとして作成する。前処理部３６は、状態データＳとして、工具データＳ１、加工条件データＳ２、ワークデータＳ３、治具データＳ４、加工工程データＳ５、把持力データＳ６を作成し、また、判定データＤとして、前記した状態データＳが取得される加工の状態において、治具３によりワークが固定できるだけの把持力であるか判定するためのデータである固定力判定データＤ１、治具３によりワークに歪みや反り等の変形が発生しない程度の把持力であるかを判定するためのデータである精度判定データＤ２を作成する。
【００７６】
固定力判定データＤ１は、ワークの把持力が十分に大きいか否かを判定するための基準となるデータとして定義される。固定力判定データＤ１は、例えば治具３によるワークの把持力の調整が為された結果、切削加工中にワークにズレが生じたりワークに振動が発生したりしたか、又はその様な事象が発生しなくなったのかを示すデータであって良い。精度判定データＤ２は、例えば工作機械２によるワークの加工状況を観察している作業者が表示器／ＭＤＩユニット７０を用いた入力操作に基づいて作成するようにしても良いし、工作機械２の各軸のモータ等の電圧値／電流値、治具３のモータ等の電圧値／電流値、別途取り付けたワークの振動等を検出する振動センサで計測された値等に基づいてズレや振動の活性を検知して作成するようにしても良い。固定力判定データＤ１は、治具３により把持されるワークに発生するズレや振動の度合いを含むデータであって良い。
【００７７】
精度判定データＤ２は、ワークに歪みや反り等の変形が発生していないかを判定するための基準となるデータとして定義される。精度判定データＤ２は、例えば工作機械２によるワークの加工状況を観察している作業者が表示器／ＭＤＩユニット７０を用いた入力操作に基づいて作成するようにしても良い。また、精度判定データＤ２は、例えば工作機械２に取り付けた非接触の距離センサ等を用いてワークの所定の位置の変化を計測し、その計測結果に基づいて作成するようにしても良い。例えば、治具３によるワークの把持力の調整が為された前後で、ワークの所定の位置における定点からの距離に変位があった場合に、歪みが発生したとし、そうでない場合には把持力が適正であるとする精度判定データＤ２を作成しても良い。また、精度判定データＤ２は、治具３により把持されるワークに発生する歪みや反りの度合いを含むデータであって良い。
【００７８】
本実施形態による学習部１１０は、前処理部３６が作成した学習データを用いた機械学習を行う。学習部１１０は、公知の強化学習の手法により、工作機械２による加工状態及び治具３によるワークの把持状態に対する、治具３によるワークの把持力の調整行動を学習した学習モデルを生成し、生成した学習モデルを学習モデル記憶部１３０に記憶する。強化学習は、学習対象が存在する環境の現在状態（つまり入力）を観測すると共に現在状態で所定の行動（つまり出力）を実行し、その行動に対し何らかの報酬を与えるというサイクルを試行錯誤的に反復して、報酬の総計が最大化されるような方策（本願の機械学習装置１００では、治具３によるワークの把持力の調整行動）を最適解として学習する手法である。学習部１１０が行う強化学習の手法としては、Ｑ学習等が挙げられる。
【００７９】
学習部１１０によるＱ学習において、報酬Ｒは、例えば、固定力判定データＤ１が「ズレや振動が発生していない」を示している場合に正（プラス）の報酬Ｒとし、固定力判定データＤ１が「ズレや振動が発生した」を示している場合に負（マイナス）の報酬Ｒとすることができる。また、報酬Ｒは、例えば、精度判定データＤ２が「把持力が適正である」を示している場合に正（プラス）の報酬Ｒとし、精度判定データＤ２が「歪みが発生した」を示している場合に負（マイナス）の報酬Ｒとすることができる。更に、報酬Ｒは、操作判定データＤ１、精度判定データＤ２が示す度合いの大きさに応じて、より大きな正（プラス）の報酬Ｒ又は負（マイナス）の報酬Ｒと成るようにしても良い。
【００８０】
学習部１１０は、ニューラルネットワークを価値観数Ｑ（学習モデル）をとして用い、状態データＳと行動ａとをニューラルネットワークの入力とし、当該状態における当該行動ａの価値（結果ｙ）を出力するように構成しても良い。この様に構成する場合、学習モデルとしては入力層、中間層、出力層の三層を備えたニューラルネットワークを用いても良いが、三層以上の層を為すニューラルネットワークを用いた、いわゆるディープラーニングの手法を用いることで、より効果的な学習及び推論を行うように構成することも可能である。学習部１１０が生成した学習モデルは、不揮発性メモリ１０４上に設けられた学習モデル記憶部１３０に記憶され、意思決定部１２２による治具３によるワークの把持力の調整行動の決定に用いられる。
【００８１】
なお、学習部１１０は、学習の段階では必須の構成となるが、学習部１１０による治具３によるワークの把持力の調整行動の学習が完了した後には必ずしも必須の構成ではない。例えば、学習が完了した機械学習装置１００を顧客に出荷する場合等には、学習部１１０を取り外して出荷するようにしても良い。
【００８２】
意思決定部１２２は、図１に示した把持力調整装置１が備えるプロセッサ１０１がＲＯＭ１０２から読み出したシステム・プログラムを実行し、主としてプロセッサ１０１がＲＡＭ１０３、不揮発性メモリ１０４を用いた演算処理を行うことで実現される。意思決定部１２２は、前処理部３６から入力された状態データＳに基づいて、学習モデル記憶部１３０に記憶された学習モデルを用いた治具３によるワークの把持力の調整行動の最適解を求め、求めた治具３によるワークの把持力の調整行動を出力する。本実施形態の意思決定部１２２では、学習部１１０による強化学習により生成された（パラメータが決定された）学習モデルに対して、前処理部３６から入力された状態データＳ（工具データＳ１、加工条件データＳ２、ワークデータＳ３、治具データＳ４、加工工程データＳ５、把持力データＳ６）と、治具３によるワークの把持力の調整行動（治具３によるワークの把持力の決定）を入力データとして入力することで現在の状態において当該行動をとった場合の報酬を算出できるが、この報酬の算出を現在取り得るワークの把持力の調整行動について行い、算出された複数の報酬を比較して、最も大きな報酬が算出される治具３によるワークの把持力の調整行動を最適解として決定する。意思決定部１２２が決定した治具３によるワークの把持力の調整行動の最適解は、把持力決定部３８へと入力されて治具３によるワークの把持力の決定に用いられる他、例えば表示器／ＭＤＩユニット７０に表示出力したり、図示しない有線／無線ネットワークを介してフォグコンピュータやクラウドコンピュータ等に送信出力したりすることで利用しても良い。
【００８３】
上記した構成を備えた把持力調整装置１では、工作機械２及び治具３が動作している環境において、治具３によるワークの把持力を適切に調整することが可能となる。
【００８４】
以下の第７〜９実施形態では、第１〜６実施形態による把持力調整装置１が、クラウドサーバやホストコンピュータ、フォグコンピュータ、エッジコンピュータ（ロボットコントローラ、制御装置等）を含む複数の装置と有線／無線のネットワークを介して相互に接続したシステムの一部として実装されている実施形態について説明する。図８に例示されるように、以下の第７〜９実施形態では、複数の装置のそれぞれがネットワークに接続された状態でクラウドサーバ６等を含む層、フォグコンピュータ７等を含む層、エッジコンピュータ８（セル９に含まれるロボットコントローラ、制御装置等）等を含む層の、３つの階層に論理的に分けて構成されているシステムを想定する。この様なシステムに於いて、本発明による一態様による把持力調整装置１は、クラウドサーバ６、フォグコンピュータ７、エッジコンピュータ８のいずれの上にも実装することが可能であり、それぞれの複数の装置との間でネットワークを介して相互に機械学習に係る処理で用いるデータを共有して分散学習をしたり、生成した学習モデルをフォグコンピュータ７やクラウドサーバ６に収集して大規模な解析を行ったり、更に、生成した学習モデルの相互再利用等をしたりすることができる。図８に例示されるシステムにおいて、セル９は各地の工場にそれぞれ複数設けられ、それぞれのセル９を所定の単位（工場単位、同じ製造業者の複数の工場単位等）で上位層のフォグコンピュータ７が管理する。そして、これらフォグコンピュータ７が収集、解析したデータを、更に上位層のクラウドサーバ６で収集、解析等を行い、その結果として得られた情報を各々のエッジコンピュータ８における制御等に活用することができる。
【００８５】
図９はクラウドサーバ、フォグコンピュータ等のコンピュータ上に把持力調整装置を実装した場合の概略的なハードウェア構成図である。
【００８６】
本実施形態によるコンピュータ上に実装された把持力調整装置１’が備えるＣＰＵ３１１は、把持力調整装置１’を全体的に制御するプロセッサである。ＣＰＵ３１１は、ＲＯＭ３１２に格納されたシステム・プログラムをバス３２０を介して読み出し、該システム・プログラムに従って把持力調整装置１’の全体を制御する。ＲＡＭ３１３には一時的な計算データや表示データ、図示しない入力部を介してオペレータが入力した各種データ等が一時的に格納される。
【００８７】
不揮発性メモリ３１４は、例えば図示しないバッテリでバックアップされるなどして、把持力調整装置１’の電源がオフされても記憶状態が保持されるメモリとして構成される。不揮発性メモリ３１４には、入力装置３７１を介して入力されたプログラム、把持力調整装置１’の各部やネットワーク５を介してロボットから取得された各種データが記憶されている。不揮発性メモリ１４に記憶されたプログラムや各種データは、実行時／利用時にはＲＡＭ３１３に展開されても良い。また、ＲＯＭ３１２には、公知の解析プログラムなどの各種のシステム・プログラム（後述する機械学習装置１００とのやりとりを制御するためのシステム・プログラムを含む）があらかじめ書き込まれている。
【００８８】
把持力調整装置１’は、インタフェース３１９を介して有線／無線のネットワーク５と接続されている。ネットワーク５には、少なくとも１つの工作機械２’（制御装置を備えた工作機械）や、他の把持力調整装置１、エッジコンピュータ８、フォグコンピュータ７、クラウドサーバ６等が接続され、把持力調整装置１’との間で相互にデータのやり取りを行っている。
【００８９】
表示装置３７０には、メモリ上に読み込まれた各データ、プログラム等が実行された結果として得られたデータ等がインタフェース３１７を介して出力されて表示される。また、キーボードやポインティングデバイス等から構成される入力装置３７１は、作業者による操作に基づく指令，データ等をインタフェース３１８を介してＣＰＵ３１１に渡す。
【００９０】
インタフェース３２１は、把持力調整装置１’と機械学習装置１００とを接続するためのインタフェースである。機械学習装置１００については、図１で説明したものと同様の構成を備える。
【００９１】
この様に、クラウドサーバ、フォグコンピュータ等のコンピュータ上に把持力調整装置１’を実装する場合、工作機械２’及び治具３からの情報の取得や、治具３に対する把持力の調整の指令が、ネットワーク５を介してやり取りされる点を除けば、把持力調整装置１’が備える機能については第１〜第６実施形態で説明したものと同様のものとなる。この時、工作機械２’は制御装置を備えているため、把持力調整装置１’が備える制御部３２は、工作機械２’の制御は行わず、工作機械２’が備える制御装置から該工作機械２’の加工状態に係る情報の取得を行う。また、把持力調整装置１’が備える制御部３２は、工作機械２’が備える制御装置を介した治具３の間接的な制御を行うと共に、工作機械２’が備える制御装置を介した治具３による把持力の取得を行う。
【００９２】
図１０は、把持力調整装置１’を備えた第７実施形態による把持力量調整システムの概略的な構成図である。把持力調整システム５００は、複数の把持力調整装置１，１’、複数の工作機械２’、及びそれら把持力調整装置１，１’、工作機械２’を互いに接続するネットワーク５とを備える。
【００９３】
把持力調整システム５００では、機械学習装置１００を備える把持力調整装置１’は、学習部１１０の学習結果を用いて、工作機械２’による加工状態及び治具３によるワークの把持状態に基づいて、調整対象としている治具３によるワークの把持力を調整する。また、少なくとも１つの把持力調整装置１’が、他の複数の把持力調整装置１、１’のそれぞれが得た状態変数及びラベルデータＬ又は判定データＤに基づき、全ての把持力調整装置１、１’に共通する工作機械２，２’による加工状態及び治具３によるワークの把持状態に対する治具３によるワークの把持力の調整を学習し、その学習結果を全ての把持力調整装置１、１’が共有するように構成できる。したがって把持力調整システム５００によれば、より多様なデータ集合（状態変数Ｓ及びラベルデータＬ又は判定データＤを含む）を入力として、学習の速度や信頼性を向上させることができる。
【００９４】
図１１は、機械学習装置と把持力調整装置とを異なる装置上に実装した第８実施形態によるシステムの概略的な構成図である。把持力調整システム５００’は、クラウドサーバ、ホストコンピュータ、フォグコンピュータ等のコンピュータの一部として実装された少なくとも１台の機械学習装置１００（図１１では、フォグコンピュータ７の一部として実装された例を示している）と、複数の把持力調整装置１”と、それら把持力調整装置１”とコンピュータとを互いに接続するネットワーク５とを備える。なお、コンピュータのハードウェア構成は、図９に示した把持力調整装置１’の概略的なハードウェア構成と同様に、ＣＰＵ３１１、ＲＡＭ３１３，不揮発性メモリ３１４等の一般的なコンピュータが備えるハードウェアがバス３２０を介して接続して構成される。
【００９５】
上記構成を有する把持力調整システム５００’は、機械学習装置１００が、複数の把持力調整装置１”のそれぞれについて得られた状態変数Ｓ及びラベルデータＬ又は判定データＤに基づき、全ての把持力調整装置１”に共通する工作機械２による加工状態及び治具３によるワークの把持状態に対する、治具３によるワークの把持力の調整を学習し、その学習結果を用いて、治具３によるワークの把持力の調整を行うことができる。把持力調整システム５００’の構成によれば、複数の把持力調整装置１”のそれぞれが、存在する場所や時期に関わらず、必要なときに必要な数の把持力調整装置１”を機械学習装置１００に接続することができる。
【００９６】
図１２は、機械学習装置１００’と把持力調整装置１とを備えた第９実施形態による把持力調整システム５００”の概略的な構成図である。把持力調整システム５００”は、エッジコンピュータやフォグコンピュータ、ホストコンピュータ、クラウドサーバ等のコンピュータの上に実装された少なくとも１台の機械学習装置１００’（図１２では、フォグコンピュータ７の一部として実装された例を示している）と、複数の把持力調整装置１と、それら把持力調整装置１とコンピュータとを互いに接続する有線／無線のネットワーク５とを備える。
【００９７】
上記構成を有する把持力調整システム５００”では、機械学習装置１００’を備えるフォグコンピュータ７が、各々の把持力調整装置１から、該把持力調整装置１が備える機械学習装置１００による機械学習の結果として得られた学習モデルを取得する。そして、フォグコンピュータ７が備える機械学習装置１００’は、これら複数の学習モデルに基づく知識の最適化や効率化の処理を行うことで、新たに最適化乃至効率化された学習モデルを生成し、生成した学習モデルを各々の把持力調整装置１に対して配布する。
【００９８】
機械学習装置１００’が行う学習モデルの最適化乃至効率化の例としては、各把持力調整装置１から取得した複数の学習モデルに基づいた蒸留モデルの生成が挙げられる。この場合、本実施例による機械学習装置１００’は、学習モデルに対して入力する入力データを作成し、該入力データを各々の学習モデルに対して入力した結果として得られる出力を用いて、１から学習を行うことで新たに学習モデル（蒸留モデル）を生成する。このようにして生成された蒸留モデルは、上記でも説明したように、外部記憶媒体やネットワーク５を介して把持力調整装置１や他のコンピュータに対して配布して活用される。
【００９９】
機械学習装置１００’が行う学習モデルの最適化乃至効率化の他の例としては、各把持力調整装置１から取得した複数の学習モデルに対して蒸留を行う過程において、入力データに対する各学習モデルの出力データの分布を一般的な統計的手法で解析し、入力データと出力データの組の外れ値を抽出し、該外れ値を除外した入力データと出力データの組を用いて蒸留を行うことも考えられる。このような過程を経ることで、それぞれの学習モデルから得られる入力データと出力データの組から例外的な推定結果を除外し、例外的な推定結果を除外した入力データと出力データの組を用いて蒸留モデルを生成することができる。このようにして生成された蒸留モデルは、複数の把持力調整装置１で生成された学習モデルと比べてより汎用的な学習モデルとして活用することが可能となる。
なお、他の一般的な学習モデルの最適化乃至効率化の手法（各学習モデルを解析し、その解析結果に基づいて学習モデルのハイパパラメータを最適化する等）も適宜導入することが可能である。
【０１００】
本実施例による把持力調整システム５００”では、例えばエッジコンピュータとしての複数の把持力調整装置１に対して設置されたフォグコンピュータ７の上に機械学習装置１００’を配置し、各々の把持力調整装置１で生成された学習モデルをフォグコンピュータ７上に集約して記憶しておき、記憶した複数の学習モデルに基づいた最適化乃至効率化を行った上で、最適化乃至効率化された学習モデルを必要に応じて各把持力調整装置１に対して再配布するという運用を行うことができる。
【０１０１】
また、本実施例による把持力調整システム５００”では、例えばフォグコンピュータ７の上に集約して記憶された学習モデルや、フォグコンピュータ７上で最適化乃至効率化された学習モデルを、更に上位のホストコンピュータやクラウドサーバ上に集め、これら学習モデルを用いて工場や把持力調整装置１のメーカでの知的作業への応用（上位サーバでの更なる汎用的な学習モデルの構築及び再配布、学習モデルの解析結果に基づく保守作業の支援、各々の把持力調整装置１の性能等の分析、新しい機械の開発への応用等）を行うことができる。
【０１０２】
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
例えば、上記した実施形態では把持力調整装置１と機械学習装置１００が異なるＣＰＵ（プロセッサ）を有する装置として説明しているが、機械学習装置１００は把持力調整装置１が備えるＣＰＵ１１と、ＲＯＭ１２に記憶されるシステム・プログラムにより実現するようにしても良い。
【符号の説明】
【０１０３】
１，１’，１”  把持力調整装置
２  工作機械
３  治具
５  ネットワーク
６  クラウドサーバ
７  フォグコンピュータ
８  エッジコンピュータ
９  セル
１１  ＣＰＵ
１２  ＲＯＭ
１３  ＲＡＭ
１４  不揮発性メモリ
１５，１８，１９  インタフェース
１７  Ｉ／Ｏユニット
２０  バス
２１  インタフェース
３０  軸制御回路
３２  制御部
３４  データ取得部
３６  前処理部
３８  把持力決定部
４０  サーボアンプ
５０  サーボモータ
６０  スピンドル制御回路
６１  スピンドルアンプ
６２  スピンドルモータ
６３  ポジションコーダ
５２  取得データ記憶部
５４  制御用プログラム
７０  表示器／ＭＤＩユニット
１００，１００’  機械学習装置
１０１  プロセッサ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  不揮発性メモリ
１１０  学習部
１１２  第１学習部
１１４  第２学習部
１２０  推定部
１２２  意思決定部
１３０  学習モデル記憶部
５００，５００’，５００”  把持力調整システム
【図１】
2020149505.tif 000003
【図２】
2020149505.tif 000004
【図３】
2020149505.tif 000005
【図４】
2020149505.tif 000006
【図５】
2020149505.tif 000007
【図６】
2020149505.tif 000008
【図７】
2020149505.tif 000009
【図８】
2020149505.tif 000010
【図９】
2020149505.tif 000011
【図１０】
2020149505.tif 000012
【図１１】
2020149505.tif 000013
【図１２】
2020149505.tif 000014