IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ ファナック株式会社の特許一覧

特許7605968機械学習装置、加減速調整装置及びコンピュータ読み取り可能な記憶媒体
<>
  • 特許-機械学習装置、加減速調整装置及びコンピュータ読み取り可能な記憶媒体 図1
  • 特許-機械学習装置、加減速調整装置及びコンピュータ読み取り可能な記憶媒体 図2
  • 特許-機械学習装置、加減速調整装置及びコンピュータ読み取り可能な記憶媒体 図3
  • 特許-機械学習装置、加減速調整装置及びコンピュータ読み取り可能な記憶媒体 図4
  • 特許-機械学習装置、加減速調整装置及びコンピュータ読み取り可能な記憶媒体 図5
  • 特許-機械学習装置、加減速調整装置及びコンピュータ読み取り可能な記憶媒体 図6
  • 特許-機械学習装置、加減速調整装置及びコンピュータ読み取り可能な記憶媒体 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-16
(45)【発行日】2024-12-24
(54)【発明の名称】機械学習装置、加減速調整装置及びコンピュータ読み取り可能な記憶媒体
(51)【国際特許分類】
   G05B 19/4155 20060101AFI20241217BHJP
   G05B 19/416 20060101ALI20241217BHJP
   B23Q 15/00 20060101ALI20241217BHJP
【FI】
G05B19/4155 V
G05B19/416 K
B23Q15/00 301C
【請求項の数】 9
(21)【出願番号】P 2023516011
(86)(22)【出願日】2021-04-23
(86)【国際出願番号】 JP2021016479
(87)【国際公開番号】W WO2022224450
(87)【国際公開日】2022-10-27
【審査請求日】2023-11-08
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】110001151
【氏名又は名称】あいわ弁理士法人
(72)【発明者】
【氏名】青木 俊祐
(72)【発明者】
【氏名】相澤 誠彰
【審査官】野口 絢子
(56)【参考文献】
【文献】特開2017-030067(JP,A)
【文献】特開2018-181217(JP,A)
【文献】特開2017-164801(JP,A)
【文献】特開2017-068325(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B19/18-19/416
G05B19/42-19/46
B23Q 15/00
(57)【特許請求の範囲】
【請求項1】
ワークの加工を行う工作機械が備える各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータを推定する機械学習装置であって、
前記加工における加工精度及び加工面品位の少なくともいずれかに係る情報と、前記加工に掛かった加工時間とを、前記工作機械の動作状態を示すデータとして観測する状態観測部と、
前記状態観測部が観測したデータに係る目標値を判定データとして取得する判定条件取得部と、
前記状態観測部が観測したデータと、前記判定条件取得部が取得した前記判定データとに基づいて前記パラメータに基づく加工に対する報酬を算出する報酬計算部と、
前記報酬に基づいて前記パラメータに基づく加工状態の価値を算出するための価値関数を更新する価値関数更新部と、
更新された前記価値関数に基づいて前記加工により適している前記パラメータの設定値の組合せを推定し、推定した前記パラメータの設定値の組み合わせを出力する意思決定部と、
を備える機械学習装置。
【請求項2】
前記加工精度及び加工面品位の少なくともいずれかを評価可能な評価用プログラムを登録可能であり、該評価用プログラムを用いて前記加工精度及び加工面品位の少なくともいずれかに係る報酬を算出する、
請求項1に記載の機械学習装置。
【請求項3】
前記意思決定部は、更新された前記価値関数に基づいて前記加工における加工時間がより短い、前記加工により適している前記パラメータの設定値の組合せを推定し、推定した前記パラメータの設定値の組み合わせを出力する、
請求項1に記載の機械学習装置。
【請求項4】
ワークの加工を行う工作機械が備える各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータを調整する加減速調整装置であって、
前記加工における加工精度及び加工面品位の少なくともいずれかに係る情報と、前記加工に掛かった加工時間とを、前記工作機械の動作状態を示すデータとして観測する状態観測部と、
前記状態観測部が観測したデータに係る目標値を判定データとして取得する判定条件取得部と、
前記パラメータに基づく加工状態の価値を算出するための価値関数を記憶する価値関数記憶部と、
前記価値関数に基づいて前記加工により適している前記パラメータの設定値の組合せを推定し、推定した前記パラメータの設定値の組み合わせを出力する意思決定部と、
前記意思決定部が出力した前記パラメータの設定値の組み合わせに基づいて、前記工作機械の前記パラメータを調整する行動出力部と、
を備える加減速調整装置。
【請求項5】
前記判定条件取得部は、複数の目標値を設定可能である、
請求項に記載の加減速調整装置。
【請求項6】
前記意思決定部が出力する前記パラメータの設定値の範囲を設定可能である、
請求項に記載の加減速調整装置。
【請求項7】
前記パラメータの調整回数を設定可能である、
請求項に記載の加減速調整装置。
【請求項8】
ワークの加工を行う工作機械が備える各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータを推定する機械学習装置としてコンピュータを動作させるプログラムを記憶したコンピュータ読み取り可能な記憶媒体であって、
前記加工における加工精度及び加工面品位の少なくともいずれかに係る情報と、前記加工に掛かった加工時間とを、前記工作機械の動作状態を示すデータとして観測する状態観測部と、
前記状態観測部が観測したデータに係る目標値を判定データとして取得する判定条件取得部と、
前記状態観測部が観測したデータと、前記判定条件取得部が取得した前記判定データとに基づいて前記パラメータに基づく加工に対する報酬を算出する報酬計算部と、
前記報酬に基づいて前記パラメータに基づく加工状態の価値を算出するための価値関数を更新する価値関数更新部と、
更新された前記価値関数に基づいて前記加工により適している前記パラメータの設定値の組合せを推定し、推定した前記パラメータの設定値の組み合わせを出力する意思決定部と
してコンピュータを動作させるプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【請求項9】
ワークの加工を行う工作機械が備える各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータを調整する加減速調整装置としてコンピュータを動作させるプログラムを記憶したコンピュータ読み取り可能な記憶媒体であって、
前記加工における加工精度及び加工面品位の少なくともいずれかに係る情報と、前記加工に掛かった加工時間とを、前記工作機械の動作状態を示すデータとして観測する状態観測部と、
前記状態観測部が観測したデータに係る目標値を判定データとして取得する判定条件取得部と、
前記パラメータに基づく加工状態の価値を算出するための価値関数を記憶する価値関数記憶部と、
前記価値関数に基づいて前記加工により適している前記パラメータの設定値の組合せを推定し、推定した前記パラメータの設定値の組み合わせを出力する意思決定部と、
前記意思決定部が出力した前記パラメータの設定値の組み合わせに基づいて、前記工作機械の前記パラメータを調整する行動出力部と
してコンピュータを動作させるプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、機械学習装置、加減速調整装置及びコンピュータ読み取り可能な記憶媒体に関する。
【背景技術】
【0002】
加工プログラムに基づいて工作機械を制御してワークを加工し、部品や金型などの製品を製造することが行われている。ワークを加工する際の加工速度は、加工プログラム内で軸の移動速度として指令される。加工プログラム内で指令される軸の移動速度は、工具とワークとの相対移動(工具移動)の最大速度である。工作機械は、指令された最大速度を超えない範囲で、加工開始時やコーナ部、曲線部分などにおいて、各軸の制御に係るパラメータに従って軸の移動速度を変動させる。
【0003】
製品の製造においては、あらかじめ目標とする許容誤差や加工面品位が設定される。また、目標とする加工時間もあらかじめ定められている。工作機械のオペレータは、加工後の製品の加工誤差や加工面品位などを確認しながら、加減速時定数などのパラメータを調整したり、加工プログラム内で指令される移動速度を調整したりする。
【0004】
製品の加工において各軸の制御に係るパラメータを調整するための従来技術として、機械学習の技術により加工誤差や加工面品位と加工時間のバランスの取れた最適な速度分布を得るといった内容の特許が出願されている(例えば、特許文献1など)。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2017-068325号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
速度分布に係るデータをパラメータ調整の判定基準として用いる場合、その基準とする加速度、加加速度などの閾値を指定する必要がある。しかしながら、閾値をどう設定すれば、どの程度の加工誤差、加工面品位となるのかが把握できていないと、目標としている許容誤差や加工面品位を定量的に制御することは難しい。
【0007】
また、適切な速度分布は所定の工作機械における所定の加工目的に合わせて設定されるものである。そのため、加工を行う工作機械が変わるたびに、また、加工目的が変わるたびに、適切な速度分布の再設定が必要になるという課題もある。
そのため、速度分布以外の基準に基づいて加工におけるパラメータの調整を行える技術が望まれている。
【課題を解決するための手段】
【0008】
本開示による加減速調整装置では、許容できる形状誤差・位置偏差等の加工誤差や加工面品位を直接指定して定量的に制御できるようにすることで、上記課題を解決する。本開示による加減速調整装置では、各軸の速度のN階時間微分要素(Nは自然数)を含む制御周期毎の各軸の移動量を制御するパラメータの設定値の組合せを最適化する機械学習を導入する。
【0009】
そして、本開示の一態様は、ワークの加工を行う工作機械が備える各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータを推定する機械学習装置であって、前記加工における加工精度及び加工面品位の少なくともいずれかに係る情報と、前記加工に掛かった加工時間とを、前記工作機械の動作状態を示すデータとして観測する状態観測部と、前記状態観測部が観測したデータに係る目標値を判定データとして取得する判定条件取得部と、前記状態観測部が観測したデータと、前記判定条件取得部が取得した前記判定データとに基づいて前記パラメータに基づく加工に対する報酬を算出する報酬計算部と、前記報酬に基づいて前記パラメータに基づく加工状態の価値を算出するための価値関数を更新する価値関数更新部と、更新された前記価値関数に基づいて前記加工により適している前記パラメータの設定値の組合せを推定し、推定した前記パラメータの設定値の組み合わせを出力する意思決定部と、を備える機械学習装置である。
【0010】
本開示の他の態様は、ワークの加工を行う工作機械が備える各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータを調整する加減速調整装置であって、前記加工における加工精度及び加工面品位の少なくともいずれかに係る情報と、前記加工に掛かった加工時間とを、前記工作機械の動作状態を示すデータとして観測する状態観測部と、前記状態観測部が観測したデータに係る目標値を判定データとして取得する判定条件取得部と、前記パラメータに基づく加工状態の価値を算出するための価値関数を記憶する価値関数記憶部と、前記価値関数に基づいて前記加工により適している前記パラメータの設定値の組合せを推定し、推定した前記パラメータの設定値の組み合わせを出力する意思決定部と、前記意思決定部が出力した前記パラメータの設定値の組み合わせに基づいて、前記工作機械の前記パラメータを調整する行動出力部と、を備える加減速調整装置である。
【0011】
本開示の他の態様は、ワークの加工を行う工作機械が備える各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータを推定する機械学習装置としてコンピュータを動作させるプログラムを記憶したコンピュータ読み取り可能な記憶媒体であって、前記加工における加工精度及び加工面品位の少なくともいずれかに係る情報と、前記加工に掛かった加工時間とを、前記工作機械の動作状態を示すデータとして観測する状態観測部と、前記状態観測部が観測したデータに係る目標値を判定データとして取得する判定条件取得部と、前記状態観測部が観測したデータと、前記判定条件取得部が取得した前記判定データとに基づいて前記パラメータに基づく加工に対する報酬を算出する報酬計算部と、前記報酬に基づいて前記パラメータに基づく加工状態の価値を算出するための価値関数を更新する価値関数更新部と、更新された前記価値関数に基づいて前記加工により適している前記パラメータの設定値の組合せを推定し、推定した前記パラメータの設定値の組み合わせを出力する意思決定部として、コンピュータを動作させるプログラムを記憶したコンピュータ読み取り可能な記憶媒体である。
【0012】
本開示の他の態様は、ワークの加工を行う工作機械が備える各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータを調整する加減速調整装置としてコンピュータを動作させるプログラムを記憶したコンピュータ読み取り可能な記憶媒体であって、前記加工における加工精度及び加工面品位の少なくともいずれかに係る情報と、前記加工に掛かった加工時間とを、前記工作機械の動作状態を示すデータとして観測する状態観測部と、前記状態観測部が観測したデータに係る目標値を判定データとして取得する判定条件取得部と、前記パラメータに基づく加工状態の価値を算出するための価値関数を記憶する価値関数記憶部と、前記価値関数に基づいて前記加工により適している前記パラメータの設定値の組合せを推定し、推定した前記パラメータの設定値の組み合わせを出力する意思決定部と、前記意思決定部が出力した前記パラメータの設定値の組み合わせに基づいて、前記工作機械の前記パラメータを調整する行動出力部としてコンピュータを動作させるプログラムを記憶したコンピュータ読み取り可能な記憶媒体である。
【発明の効果】
【0013】
本開示の一態様により、実際の加工精度・加工面品位の目標の値(形状誤差・位置偏差など)を設定することでより適したパラメータへと調整可能となるため、当該加工精度・加工面品位の定量的な制御が可能となる。
【図面の簡単な説明】
【0014】
図1】加減速調整装置のハードウェア構成図である。
図2】加減速調整装置の機能を示すブロック図である。
図3】加工精度の算出について説明する図である。
図4】加工面品位の算出について説明する図である。
図5】加減速調整装置の概略的な動作例を示すフローチャートである。
図6】パラメータの調整について説明する図である。
図7】他の実施形態による加減速調整装置の機能を示すブロック図である。
【発明を実施するための形態】
【0015】
以下、本発明の実施形態を図面と共に説明する。
図1は本発明の一実施形態による加減速調整装置の要部を示す概略的なハードウェア構成図である。本発明の加減速調整装置1は、例えば加工プログラムに基づいて工作機械を制御する制御装置として実装することができる。また、本発明の加減速調整装置1は、加工プログラムに基づいて工作機械を制御する制御装置に併設されたパソコンや、有線/無線のネットワークを介して制御装置と接続されたパソコン、セルコンピュータ、フォグコンピュータ6、クラウドサーバ7などのコンピュータ上に実装することができる。本実施形態では、加減速調整装置1を、ネットワーク介して工作機械を制御する制御装置と接続されたパソコンの上に実装した例を示す。
【0016】
本実施形態による加減速調整装置1が備えるCPU11は、加減速調整装置1を全体的に制御するプロセッサである。CPU11は、バス22を介してROM12に格納されたシステム・プログラムを読み出し、該システム・プログラムに従って加減速調整装置1全体を制御する。RAM13には一時的な計算データや表示データ、及び外部から入力された各種データなどが一時的に格納される。
【0017】
不揮発性メモリ14は、例えば図示しないバッテリでバックアップされたメモリやSSD(Solid State Drive)などで構成され、加減速調整装置1の電源がオフされても記憶状態が保持される。不揮発性メモリ14には、インタフェース15を介して外部機器72から読み込まれたデータ、入力装置71を介して入力されたデータ、工作機械3から取得されたデータ(センサ4により検出されたデータを含む)などが記憶される。不揮発性メモリ14に記憶されたデータは、実行時/利用時にはRAM13に展開されても良い。また、ROM12には、公知の解析プログラムなどの各種システム・プログラムがあらかじめ書き込まれている。
【0018】
工作機械3には、工作機械3の動作時において各部の電流、電圧、振動などの物理量を検出するセンサ4が取り付けられている。工作機械3としては、マシニングセンタや旋盤などが例示される。工作機械3は加減速調整装置1からの要求に応じて、加工時の各軸の位置、速度、加速度、加加速度、振動、加工時間などのデータを、ネットワーク5を介し送信する。
【0019】
インタフェース15は、加減速調整装置1のCPU11とUSB装置などの外部機器72と接続するためのインタフェースである。外部機器72側からは、例えば予め記憶されている加工プログラムや各工作機械3の動作に係るデータなどを読み込むことができる。また、加減速調整装置1内で編集した加工プログラムや設定データなどは、外部機器72を介して外部記憶手段に記憶させることができる。
【0020】
インタフェース20は、加減速調整装置1のCPUと有線乃至無線のネットワーク5とを接続するためのインタフェースである。ネットワーク5には、工作機械3やフォグコンピュータ6、クラウドサーバ7などが接続され、加減速調整装置1との間で相互にデータのやり取りを行っている。
【0021】
表示装置70には、メモリ上に読み込まれた各データ、プログラムなどが実行された結果として得られたデータ、後述する機械学習装置100から出力されたデータなどがインタフェース17を介して出力されて表示される。また、キーボードやポインティングデバイスなどから構成される入力装置71は、作業者による操作に基づく指令,データなどをインタフェース18を介してCPU11に渡す。
【0022】
インタフェース21は、CPU11と機械学習装置100とを接続するためのインタフェースである。機械学習装置100は、機械学習装置100全体を統御するプロセッサ101と、システム・プログラムなどを記憶したROM102、機械学習に係る各処理における一時的な記憶を行うためのRAM103、及びモデルなどの記憶に用いられる不揮発性メモリ104を備える。機械学習装置100は、インタフェース21を介して加減速調整装置1で取得可能な各情報(例えば、工作機械3の加工時に検出されたデータ)を観測することができる。また、加減速調整装置1は、インタフェース21を介して機械学習装置100から出力される処理結果を取得し、取得した結果を記憶したり、表示したり、他の装置に対してネットワーク5などを介して送信する。
【0023】
図2は、本発明の第1実施形態による加減速調整装置1が備える機能を概略的なブロック図として示したものである。本実施形態による加減速調整装置1が備える各機能は、図1に示した加減速調整装置1が備えるCPU11と、機械学習装置100が備えるプロセッサ101とがシステム・プログラムを実行し、加減速調整装置1及び機械学習装置100の各部の動作を制御することにより実現される。
【0024】
本実施形態の加減速調整装置1は、状態観測部110、判定条件取得部120、行動出力部150を備える。また、加減速調整装置1の機械学習装置100は、学習部130、意思決定部140を備える。更に、機械学習装置100のRAM103乃至不揮発性メモリ104上には、学習部130による機械学習の結果としての価値関数を記憶する価値関数記憶部138が予め用意されている。
【0025】
状態観測部110は、加工精度及び加工面品位の少なくともいずれかに係る情報と、加工時間とを前記工作機械の動作状態を示すデータとして観測する。ここでいう観測するとは、環境からデータを取得すること、及び、取得したデータに基づいて所定のデータを算出することを意味する。まず、状態観測部110は、工作機械3の動作時に検出された各種データを、工作機械3による加工の動作状態を示すデータとして取得する。状態観測部110は、例えば工作機械3における加工時の各軸の位置、速度、加速度、加加速度、振動、加工時間などを、工作機械3による加工の動作状態を示すデータとして取得する。また、状態観測部110は、工作機械3の加工時に設定されている各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータ(直線の加速度、直線の加加速度、補間後加減速時定数、コーナ速度差、位置ループゲイン、フィードフォワード係数など)や、加工の制御に用いた加工プログラムを工作機械3による加工の動作状態を示すデータとして取得する。状態観測部110が取得するデータは、所定のタイミングに取得された瞬間値であってよい。また、状態観測部110が取得するデータは、所定時間にわたって取得された時系列データなどであってよい。
【0026】
更に、状態観測部110は、工作機械3による加工の動作状態を示すデータに含まれる各軸の位置データ、速度データ、加速度データ、加加速度データ、振動データなどに基づいて、当該加工における加工精度や加工面品位に係るデータを算出する。算出される加工精度や加工面品位に係るデータの例としては、形状誤差や位置偏差、振動誤差などが例示される。
【0027】
図3を用いて、状態観測部110による加工精度(形状誤差)や加工面品位(位置偏差)の算出例を説明する。図3は、工作機械3において実行されている加工プログラムにより指令される加工プログラム経路と、モータの位置に基づいて算出される移動経路を示している。図3において、横軸はX座標位置を示し、縦軸はY座標位置を示す。また、実線矢印は加工プログラムにより指令される加工プログラム経路を示し、点線矢印はモータの位置に基づいて算出される移動経路を示している。工作機械3による加工では、各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータに基づいて、加工プログラムにより指令された加工プログラム経路に沿って各軸のモータに対して出力する移動指令が算出される。この算出では、設定されたパラメータの範囲で加工速度や効率など優先した移動指令が算出される。そのため、算出された移動経路に基づいてモータを動かした場合、モータの位置に基づいて算出される移動経路(モータにより駆動される工具とワークとの相対的な移動経路)は加工プログラム経路の通りにならない。状態観測部110は、この加工プログラム経路と、モータの位置に基づいて算出される移動経路との差に基づいて、加工精度を示す形状誤差や加工面品位を表す位置偏差を算出する。形状誤差は、例えば形状誤差の最大値Emaxを用いてもよい。また、位置偏差については、平均値Emeanや分散値Edistなどを用いてもよい。
【0028】
図4を用いて、状態観測部110による加工面品位(振動誤差)の算出例を説明する。図4は、工作機械3において実行されている加工プログラムにより指令される加工プログラム経路と、モータの位置に基づいて算出される移動経路(振動あり/なし)を示している。モータの位置に基づいて算出される経路をより細かくみると、モータの位置データは振動している。この振動は加工した際の傷や筋目となって現れるため、加工面品位に影響する。状態観測部110は、モータに対して出力する移動指令と、モータから取得される位置との差に基づいて、加工面品位を示す振動誤差として計算する。振動誤差は、例えば振幅の最大値Amaxを用いてもよいし、振幅の平均値Ameanなどを用いてもよい。
【0029】
なお、センサ4として振動計測機器が用意できる場合には、振動誤差については、モータの位置データに加えて振動計測機器からの振動データを用いて算出してもよい。振動計測機器からの振動データでは、より加工点(工具とワークとの接触位置)に近い振動を得ることができる。
【0030】
状態観測部110は、ネットワーク5を介して工作機械3から直接データを取得してもよい。状態観測部110は、外部機器72や、フォグコンピュータ6、クラウドサーバ7などが取得して記憶しているデータを取得してもよい。状態観測部110が取得乃至算出したデータは学習部130、意思決定部140へと入力される。
【0031】
判定条件取得部120は、工作機械3での加工における加工目的に係る判定データを取得する。加工目的に係る判定データは、例えば所定の許容される加工精度(許容形状誤差)、許容される加工面品位(許容位置偏差)、許容できる加工面品位(許容振動誤差)などの、加工精度や加工面品位に係る許容値が挙げられる。また、加工目的に係る判定データは、例えば目標とする加工時間が挙げられる。判定条件取得部120は、ネットワーク5を介して工作機械3に設定されている加工精度や加工面品位に係る許容値を取得してもよい。判定条件取得部120は、外部機器72や、フォグコンピュータ6、クラウドサーバ7などが記憶しているデータを取得してもよい。判定条件取得部120は、オペレータに対して入力装置71から加工精度や加工面品位に係る許容値、目標とする加工時間を入力するように促しても良い。判定条件取得部120が取得したデータは学習部130、意思決定部140へと入力される。
【0032】
学習部130は、状態観測部110が取得した工作機械3による加工の動作状態を示すデータ、及び判定条件取得部120が取得した加工目的に係る判定データに基づいて機械学習に係る処理を実行する。学習部130は、報酬計算部132及び価値関数更新部134を備える。学習部130は、報酬計算部132により計算された報酬に基づいて、価値関数更新部134により価値関数を更新することで、各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータの組み合わせと、当該組合せの価値との相関性を学習する。
【0033】
報酬計算部132は、工作機械3による加工の動作状態を示すデータと加工目的に係る判定データとに基づいて、現在の工作機械3の動作状態に対する報酬を算出する。報酬計算部132は、状態観測部110が算出した加工精度や加工面品位を示す値と、加工目的に係る判定データとを比較し、その比較結果に基づいて予め設定された所定の報酬算出式により報酬を算出する。加工目的に係る判定データには、加工精度や加工面品位に係る許容値が含まれる。報酬計算部132は、算出した加工精度や加工面品位を示す値がこの許容値内に収まる場合に高い報酬を算出する。また、報酬計算部132は、算出した加工精度や加工面品位を示す値がこの許容値を超える場合に低い報酬を算出する。報酬計算部132は、許容値内に収まる度合いに応じてより高い報酬を算出してもよい。また、報酬計算部132は、許容値を超える度合いに応じてより低い報酬を算出してもよい。報酬計算部132は、マイナスの報酬を算出してもよい。
【0034】
報酬計算部132は、更に工作機械3における加工に掛かった加工時間を示す値と、加工目的に係る判定データに含まれる目標とする加工時間とを比較し、その比較結果に基づいて予め設定された所定の報酬算出式により追加の報酬を算出する。報酬計算部132は、加工に掛かった加工時間が目標とする加工時間内に収まる場合に高い報酬を算出する。また、報酬計算部132は、加工に掛かった加工時間が目標とする加工時間を超える場合に低い報酬を算出する。報酬計算部132は、加工に掛かった加工時間に収まる度合いに応じてより高い報酬を算出してもよい。また、報酬計算部132は、加工に掛かった加工時間を超える度合いに応じてより低い報酬を算出してもよい。報酬計算部132は、マイナスの報酬を算出してもよい。報酬計算部132は、このようにして算出した追加の報酬を、加工精度や加工面品に基づいて算出した報酬に加算する。
【0035】
なお、加工時間を報酬として考慮する場合、報酬計算部132は、加工精度や加工面品位が許容値内に収まる場合における加工時間を記憶するようにしてもよい。この時、記憶した加工時間の内で、最も短い加工時間を加工目的に係る判定データとする。そして、報酬計算部132は、加工精度や加工面品位が許容値内に収まる場合にのみ、その時の加工時間上記した記憶している最も短い加工時間を報酬算出の基準とした上で報酬を算出する。このようにすることで、目標とする加工精度や加工面品位の範囲内で、最も加工時間が短くなるパラメータを探索できるようになる。
【0036】
価値関数更新部134は、報酬計算部132が算出した報酬に基づいて、価値関数記憶部138に記憶される価値関数を更新する。本発明で用いる価値関数は、工作機械3の加工時に設定される各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータの組み合わせを状態とし、現在その状態にいることの価値を算出する状態価値関数である。本実施形態による状態価値関数Vは、例えば各々の状態(各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータの組み合わせ)を取って加工を行った場合に、報酬計算部132が算出する報酬を価値として返す関数として定義してもよい。なお、状態価値関数は、学習が開始される段階で、全ての取り得る状態に対して高い価値を出力するようにしておくとよい。状態価値関数は、工作機械3の加工時に設定される各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータの組み合わせを入力データとし、そのパラメータの組み合わせの状態の価値を出力データとした多層ニューラルネットワークなどとして構築してもよい。
【0037】
意思決定部140は、学習部130が機械学習することで作成された価値関数に基づいて、各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータの組み合わせを出力する。意思決定部140は、価値関数を用いることで、現在行っている加工において設定されているパラメータの組み合わせに対して、より高い価値を持つパラメータの組み合わせを求める。意思決定部140は、例えば現在設定されているパラメータの組み合わせから算出される価値と、それぞれのパラメータをあらかじめ定めた所定量だけ変化させた場合のパラメータの組み合わせから算出される価値とを比較する。例えば、現在設定されているパラメータの組み合わせと、直線の加速度を+ΔA変化させたパラメータの組み合わせ、直線の加速度を-ΔA変化させたパラメータの組み合わせ、補間後加減速時定数を+Δτ変化させたパラメータの組み合わせ、補間後加減速時定数を-Δτ変化させたパラメータの組み合わせ、…のそれぞれについて価値関数を用いて価値を算出し、より価値の高いパラメータの組み合わせを求める。そして、求めたパラメータの組み合わせを、現在の加工に対してより適したパラメータの組み合わせであるとして出力する。この時、現在設定されているパラメータの組み合わせから算出される価値が最も価値が高かった場合には、意思決定部140は、現在のパラメータの組み合わせをより価値の高いパラメータの組み合わせとして出力してもよい。意思決定部140は、同じ価値のパラメータの組み合わせがある場合には、現在設定されているもの以外のパラメータの組み合わせの中からランダムに出力するようにしてよい。意思決定部140は、学習部130による学習の初期の段階では、価値関数により算出される価値に関わらず、一定の確率でランダムなパラメータの組み合わせを出力するとよい(εグリーディ法)。このようにすることで、より適切なパラメータの組み合わせの探索を効率よく行うことができる。
【0038】
行動出力部150は、意思決定部140が出力したパラメータの組み合わせに基づいて、パラメータの調整を継続するか否かを判定する。そして、パラメータの調整を継続すると判定した場合、意思決定部140が出力したパラメータの組み合わせを工作機械3に対して設定し、再度加工動作をするように指令する。行動出力部150は、例えば意思決定部140が出力したパラメータの組み合わせが、現在工作機械3に設定されているパラメータの組み合わせと異なる場合に、パラメータの調整を継続すると判定するようにしてもよい。また、行動出力部150は、パラメータの調整を開始してから工作機械3のパラメータを変更した回数を記録しておき、パラメータを変更した回数が予め定めた所定の回数以内である場合に、パラメータの調整を継続すると判定するようにしてもよい。
【0039】
行動出力部150は、ネットワーク5を介して工作機械3に対して直接パラメータの組み合わせを設定してもよい。また、行動出力部150は、ネットワーク5を介してフォグコンピュータ6やクラウドサーバ7に対してパラメータの組み合わせを送信し、間接的に工作機械3にパラメータを設定するように促してもよい。更に、行動出力部150は、表示装置70に対してパラメータの組み合わせを表示し、オペレータに対して工作機械3に設定するように促してもよい。
【0040】
図5は、上記した構成を備えた加減速調整装置1を用いてパラメータの組み合わせを求める場合の処理を例示するフローチャートである。各軸のN階時間微分要素(Nは自然数)を含む制御周期毎の移動量の制御に係るパラメータの調整がオペレータなどから指令されると、加減速調整装置1は、最初にオペレータなどにより予め設定されたパラメータの組み合わせ(例えば、直線加速度4000mm/sec2、コーナ速度差800mm/min、補間後加減速時定数32msec、など)を工作機械3に対して設定する。そして、予め与えられた所定の加工プログラムにより空運転をするように工作機械3に指令する(ステップSA01)。
【0041】
この指令を受けて工作機械3が加工プログラムの空運転を行っている一方で、状態観測部110は、工作機械3の動作状態を示すデータ(モータ一の時系列データ、モータ速度の時系列データ、加工時間など)を取得する(ステップSA02)。そして、取得された工作機械3の動作状態を示すデータに基づいて、加工精度や加工面品位に係るデータ(例えば、加工精度(形状誤差):80μm、加工面品位(位置偏差):8μm、加工面品位(振動誤差):0.09μmなど)が算出される(ステップSA02)。また、判定条件取得部120は、工作機械3での加工における加工目的に係る判定データ(加工精度(許容形状誤差):100μm、加工面品位(許容位置偏差):10μm、加工面品位(許容振動誤差):0.1μm、許容加工時間12.0secなど)を取得する(ステップSA03)。
【0042】
報酬計算部132は、状態観測部110から入力された加工精度や加工面品位に係るデータと、判定条件取得部120から入力された加工目的に係る判定データとに基づいて、現在のパラメータの組み合わせに対する報酬を算出する(ステップSA04)。そして、算出された報酬に基づいて、価値関数更新部134が価値関数記憶部138に記憶された価値関数を更新する(ステップSA05)。
【0043】
意思決定部140が、更新された価値関数に基づいて、現在の加工に対してより適切であると思われるパラメータの組み合わせを求め、求めたパラメータの組み合わせを出力する。これを入力された行動出力部150は、パラメータの調整を継続するか否かを判定し、パラメータの調整を継続すると判定した場合、意思決定部140が出力したパラメータの組み合わせを工作機械3に対して設定し、設定したパラメータで再度加工プログラムによる空運転をするように指令する(ステップSA06)。
【0044】
上記構成を備えた加減速調整装置1は、実際の加工精度・加工面品位の目標の値(形状誤差・位置偏差など)を設定することで、当該加工精度・加工面品位により適したパラメータの定量的な制御が可能となる。パラメータの設定値の組合せを定量的に制御することで、所定の加工目的に適したそれぞれのパラメータの設定値の組合せを保持することが可能となり、加工の目的に応じて適宜切り替えることができる。更に、本実施形態による加減速調整装置1によるパラメータの設定値の組合せの最適化は、環境(制御装置、工作機械)を外部から観測しながら行うことができる。そのため、環境側に対して新たなソフトウェアなどを組み込む必要が無く、幅広い環境に対して使用することができる。
【0045】
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
例えば、上記した実施形態では、加工精度や加工面品位の評価を予め設定された所定の報酬算出式に基づいて行っているが、評価に係る評価用プログラムを外部から登録できるように構成してもよい。このように構成することで、加工の内容が変わって学習したいパラメータが追加された場合等においても、四角コーナやR角コーナなどの専用の評価用プログラムを提供することで効率よく加工精度・加工面品位を評価することができるようになる。
【0046】
意思決定部140が出力するそれぞれのパラメータの範囲を予め設定できるように構成してもよい。このように構成することで、パラメータの探索範囲を制限することができる。
【0047】
上記した実施形態では、意思決定部140は価値関数が出力する価値に基づいて、出力するパラメータの組み合わせを決定したが、例えば予め定められたルールに従って、より適切であると思われるパラメータを調整することで作成したパラメータの組み合わせを出力するようにしてもよい。図6は、加工結果から把握される解決したい課題に対して、当該課題を解決するためのパラメータの調整方向と、その優先順位を表に示したものである。このように、解決したい課題とパラメータの調整方法の関係をルール化して記憶しておくことで、意思決定部140は、当該ルールを参照して調整するべきパラメータを決定することができるようになる。
【0048】
報酬計算部132が算出する加工精度や加工面品位に係る報酬と、加工時間に係る追加の報酬とに対して、重みを設定できるように構成してもよい。このように構成することで、加工品質を重視する場合には加工精度や加工面品位に係る報酬の重みを増加させ、一方で加工時間を重視する場合には加工時間に係る報酬の重みを増加させる、といったように、加工の目的に合わせた微調整を行うことが可能となる。
【0049】
上記した実施形態では、学習部130による機械学習を行いながらパラメータを調整する構成を示したが、学習部130による学習が十分に行われた後であれば、価値関数記憶部138を残して学習部130を加減速調整装置1から削除してもよい。図7は、学習部130を削除した場合の構成例を示している。このような構成とすることで、価値関数の更新は行われなくなるが、加減速調整装置1に対して初期のパラメータを与えることで、意思決定部140がより適切なパラメータの探索を行い、工作機械3のパラメータの調整を行うことができる。
【符号の説明】
【0050】
1 加減速調整装置
3 工作機械
4 センサ
5 ネットワーク
6 フォグコンピュータ
7 クラウドサーバ
11 CPU
12 ROM
13 RAM
14 不揮発性メモリ
15 インタフェース
17,18,20,21 インタフェース
22 バス
70 表示装置
71 入力装置
72 外部機器
100 機械学習装置
101 プロセッサ
102 ROM
103 RAM
104 不揮発性メモ
10 状態観測部
120 判定条件取得部
130 学習部
132 報酬計算部
134 価値関数更新部
138 価値関数記憶部
140 意思決定部
150 行動出力部
図1
図2
図3
図4
図5
図6
図7