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

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

▶ 株式会社ジェイテクトの特許一覧

<>
  • 特許-研削盤の支援装置及び支援方法 図1
  • 特許-研削盤の支援装置及び支援方法 図2
  • 特許-研削盤の支援装置及び支援方法 図3
  • 特許-研削盤の支援装置及び支援方法 図4
  • 特許-研削盤の支援装置及び支援方法 図5
  • 特許-研削盤の支援装置及び支援方法 図6
  • 特許-研削盤の支援装置及び支援方法 図7
  • 特許-研削盤の支援装置及び支援方法 図8
  • 特許-研削盤の支援装置及び支援方法 図9
  • 特許-研削盤の支援装置及び支援方法 図10
  • 特許-研削盤の支援装置及び支援方法 図11
  • 特許-研削盤の支援装置及び支援方法 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-06-26
(45)【発行日】2023-07-04
(54)【発明の名称】研削盤の支援装置及び支援方法
(51)【国際特許分類】
   B24B 49/03 20060101AFI20230627BHJP
   B24B 49/14 20060101ALI20230627BHJP
   B24B 49/16 20060101ALI20230627BHJP
   B24B 49/18 20060101ALI20230627BHJP
   B24B 53/00 20060101ALI20230627BHJP
   B23Q 15/00 20060101ALI20230627BHJP
   G05B 19/4155 20060101ALI20230627BHJP
【FI】
B24B49/03 Z
B24B49/14
B24B49/16
B24B49/18
B24B53/00 A
B23Q15/00 301C
G05B19/4155 V
【請求項の数】 14
(21)【出願番号】P 2019059569
(22)【出願日】2019-03-27
(65)【公開番号】P2020157425
(43)【公開日】2020-10-01
【審査請求日】2022-02-07
(73)【特許権者】
【識別番号】000001247
【氏名又は名称】株式会社ジェイテクト
(74)【代理人】
【識別番号】110000648
【氏名又は名称】弁理士法人あいち国際特許事務所
(74)【代理人】
【識別番号】110000604
【氏名又は名称】弁理士法人 共立特許事務所
(72)【発明者】
【氏名】増田 祐生
(72)【発明者】
【氏名】河原 徹
(72)【発明者】
【氏名】村上 慎二
【審査官】小川 真
(56)【参考文献】
【文献】特開2018-120453(JP,A)
【文献】特開2018-106417(JP,A)
【文献】特開平03-239469(JP,A)
【文献】特開2018-097680(JP,A)
【文献】特開2017-068566(JP,A)
【文献】特開2019-162712(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B24B 49/00-49/18
B23Q 15/00
G05B 19/4155
(57)【特許請求の範囲】
【請求項1】
研削盤の制御装置によって制御可能な複数の動作指令データの設定状態を含む研削条件を、状態情報として取得する状態情報取得部と、
予め設定された複数の評価対象に関して、前記研削条件の下で得られる前記評価対象の評価結果を取得する評価結果取得部と、
前記評価結果に基づいて、前記状態情報に対する報酬を算出する報酬算出部と、
前記状態情報と前記報酬とに基づく強化学習において生成された価値関数を記憶する価値関数記憶部と、
前記価値関数から得られた政策であって、前記評価結果が最適となるように前記状態情報に応じた前記動作指令データの調整に関する前記政策を記憶する政策記憶部と、
前記状態情報及び前記政策に基づき、調整可能な複数の前記動作指令データの候補の中から、調整する前記動作指令データ、及び、前記動作指令データの調整量を決定する行動決定部と、
前記行動決定部による決定内容を、行動情報として前記制御装置に出力可能な行動情報出力部と、
前記状態情報を前記行動情報に基づいて調整した調整後状態情報、及び、前記調整後状態情報に対する前記報酬に基づき、前記価値関数記憶部に記憶された前記価値関数を更新可能な価値関数更新部と、
更新された前記価値関数に基づいて前記政策を更新する政策更新部と、
前記状態情報と前記評価結果との関係を表す評価結果推定モデルを記憶する評価結果推定モデル記憶部と、
前記状態情報と前記評価結果推定モデルとに基づき、調整後の前記研削条件の下で得られる前記評価結果を推定する評価結果推定部と、
を備え、
前記評価対象は、前記研削盤により研削加工された工作物の研削品質、研削加工後における砥石車の表面状態又は摩耗量、及び、前記工作物の研削加工に要する加工時間の少なくとも一つを含み、
前記評価結果取得部は、前記評価結果推定部が推定した推定評価結果を前記評価結果として取得可能である、研削盤の支援装置。
【請求項2】
前記報酬算出部は、前記研削品質が予め設定された基準以上である場合に、プラスの前記報酬を与える、請求項1に記載の研削盤の支援装置。
【請求項3】
前記報酬算出部は、前記砥石車の表面状態が予め設定された基準以上である場合、又は、前記砥石車の摩耗量が予め設定された基準以下である場合に、プラスの前記報酬を与える、請求項1に記載の研削盤の支援装置。
【請求項4】
前記報酬算出部は、前記加工時間が予め設定された基準以下である場合に、プラスの前記報酬を与える、請求項1に記載の研削盤の支援装置。
【請求項5】
前記評価対象は、前記研削盤の消費電力を含み、
前記報酬算出部は、前記消費電力が予め設定された基準以下である場合に、プラスの前記報酬を与える、請求項1に記載の研削盤の支援装置。
【請求項6】
前記評価対象は、加工時に前記工作物に加わる加工負荷を含み、
前記報酬算出部は、前記加工負荷が予め設定された基準以下である場合に、プラスの前記報酬を与える、請求項1に記載の研削盤の支援装置。
【請求項7】
前記評価対象は、複数の前記研削盤が設けられた研削盤ラインにおける各々の前記研削盤の稼働率を含み、
前記報酬算出部は、前記稼働率が予め設定された基準以上である場合に、プラスの前記報酬を与える、請求項1に記載の研削盤の支援装置。
【請求項8】
前記研削盤の支援装置は、前記報酬算出部が複数の前記評価対象の各々に対して付与する前記報酬の重み付けを行う重み付け部を備える、請求項1-7の何れか一項に記載の研削盤の支援装置。
【請求項9】
前記研削条件は、前記研削盤が配置される場所の温度、又は、前記研削盤の温度を含む、請求項1-8の何れか一項に記載の研削盤の支援装置。
【請求項10】
前記評価対象は、前記研削品質のバラつき度合を含み、
前記報酬算出部は、前記バラつき度合が予め設定された基準以下である場合に、プラスの前記報酬を与える、請求項9に記載の研削盤の支援装置。
【請求項11】
前記評価結果取得部は、前記評価結果推定部が推定した前記推定評価結果、及び、前記研削盤を用いて実際に研削加工した際に得られる前記評価結果の少なくとも一方を取得可能である、請求項1-10の何れか一項に記載の研削盤の支援装置。
【請求項12】
前記評価結果推定モデル記憶部は、前記評価結果推定モデルとして、前記状態情報と前記研削品質との関係を表す研削品質推定モデルを記憶し、
前記評価結果推定部は、前記状態情報と前記研削品質推定モデルとに基づき、前記研削条件の下で研削加工した前記工作物の前記研削品質を推定する、請求項1-11の何れか一項に記載の研削盤の支援装置。
【請求項13】
前記評価結果推定モデル記憶部は、前記評価結果推定モデルとして、前記状態情報と前記研削盤の構造部材の熱変位量との関係を表す熱変位量算出モデルを記憶し、
前記評価結果推定部は、前記状態情報及び前記熱変位量算出モデルに基づいた算出された前記熱変位量と、前記状態情報とに基づき、前記砥石車の摩耗量を算出する、請求項1-11の何れか一項に記載の研削盤の支援装置。
【請求項14】
請求項1-13の何れか一項に記載の研削盤の支援装置を用いた研削盤の支援方法であって、
前記評価結果推定部による前記推定評価結果を前記評価結果として前記報酬を算出し、前記価値関数記憶部に記憶された前記価値関数を更新すると共に、更新された前記価値関数に基づいて前記政策を更新する第一学習工程と、
実際に研削加工した際に得られる前記評価結果に基づいて前記報酬を算出し、前記価値関数記憶部に記憶された前記価値関数を更新する第二学習工程と、
を備える、研削盤の支援方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、研削盤の支援装置及び支援方法に関するものである。
【背景技術】
【0002】
特許文献1には、条件記憶部に記憶された加工条件に従って研削装置の各構成要素を制御することにより、同一の加工結果が得られるようにする技術が開示されている。特許文献1に記載の技術は、工作物に加わる荷重又はスピンドルモータの負荷電流を基準値と比較し、その差が大きくなった場合に加工条件の調整を行うことにより、加工条件の最適化を図っている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2018-51646号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に記載の技術において、工作物に加わる荷重又はスピンドルモータの負荷電流と基準値との差が大きくなった要因を特定することは容易でない。そのため、制御可能な複数の構成要素の中から、どの構成要素を調整すれば加工条件が最適化されるかについての判断が難しい。
【0005】
本発明は、研削条件を最適化するための支援を行う研削盤の支援装置及び支援方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
(1.研削盤の支援装置)
本発明の一態様は、研削盤の制御装置によって制御可能な複数の動作指令データの設定状態を含む研削条件を、状態情報として取得する状態情報取得部と、
予め設定された複数の評価対象に関して、前記研削条件の下で得られる前記評価対象の評価結果を取得する評価結果取得部と、
前記評価結果に基づいて、前記状態情報に対する報酬を算出する報酬算出部と、
前記状態情報と前記報酬とに基づく強化学習において生成された価値関数を記憶する価値関数記憶部と、
前記価値関数から得られた政策であって、前記評価結果が最適となるように前記状態情報に応じた前記動作指令データの調整に関する前記政策を記憶する政策記憶部と、
前記状態情報及び前記政策に基づき、調整可能な複数の前記動作指令データの候補の中から、調整する前記動作指令データ、及び、前記動作指令データの調整量を決定する行動決定部と、
前記行動決定部による決定内容を、行動情報として前記制御装置に出力可能な行動情報出力部と、
前記状態情報を前記行動情報に基づいて調整した調整後状態情報、及び、前記調整後状態情報に対する前記報酬に基づき、前記価値関数記憶部に記憶された前記価値関数を更新可能な価値関数更新部と、
更新された前記価値関数に基づいて前記政策を更新する政策更新部と、
前記状態情報と前記評価結果との関係を表す評価結果推定モデルを記憶する評価結果推定モデル記憶部と、
前記状態情報と前記評価結果推定モデルとに基づき、調整後の前記研削条件の下で得られる前記評価結果を推定する評価結果推定部と、
を備え、
前記評価対象は、前記研削盤により研削加工された工作物の研削品質、研削加工後における砥石車の表面状態又は摩耗量、及び、前記工作物の研削加工に要する加工時間の少なくとも一つを含み、
前記評価結果取得部は、前記評価結果推定部が推定した推定評価結果を前記評価結果として取得可能である、研削盤の支援装置にある。
【0007】
当該研削盤の支援装置は、強化学習において生成された価値関数から得られた政策に基づき、状態情報に応じた行動の決定(即ち、調整する動作指令データ及び動作指令データの調整量の決定)を行う。また、当該支援装置は、決定された行動に応じた行動情報を制御装置に出力することで、研削盤による研削加工における研削条件の設定を支援する。
【0008】
特に、研削盤による研削加工では、切削加工等に比べて精度の高い加工が要求される。その一方で、研削盤による研削加工では、研削加工が進むにつれて砥石車が摩耗し、砥石車の径が変化する。このように、研削条件が刻々と変化する中で、複数の評価対象の各々に対して高い評価結果を得られるような動作指令データの調整を行うことは容易でない。
【0009】
これに対し、支援装置は、状態情報に応じて決定した行動に関する行動情報を制御装置に出力し、研削盤は、支援装置から出力された行動情報に基づいて動作指令データを調整する。よって、研削盤は、研削条件が最適化された状態で研削加工を行うことができ、その結果、最適な評価結果を得ることができる。
【0011】
当該研削盤の支援装置は、複数の動作指令データの設定状態を含む研削条件を状態情報とし、調整する動作指令データ及び動作指令データの調整量を行動情報とする強化学習を行う。そして、当該支援装置は、状態情報と、当該状態情報に対する報酬とに基づく強化学習を行いながら、行動情報を決定するための価値関数及び政策を更新することにより、政策の向上を図ることができる。
【0013】
2.研削盤の支援方法)
本発明の他の態様は、上述した研削盤の支援装置を用いた研削盤の支援方法であって、
前記評価結果推定部による前記推定評価結果を前記評価結果として前記報酬を算出し、前記価値関数記憶部に記憶された前記価値関数を更新すると共に、更新された前記価値関数に基づいて前記政策を更新する第一学習工程と、
実際に研削加工した際に得られる前記評価結果に基づいて前記報酬を算出し、前記価値関数記憶部に記憶された前記価値関数を更新する第二学習工程と、
を備える、研削盤の支援方法にある。
【0014】
当該研削盤の支援方法は、第一学習工程において、評価結果推定部による推定評価結果を評価結果として報酬を算出するので、支援装置は、実際の研削加工を行うことなく強化学習を行うことができる。よって、支援装置は、第一学習工程において、不良品の発生や砥石車の早期摩耗に伴うコストの発生を回避できると共に、短時間での政策の向上を図ることができる。また、当該研削盤の支援方法は、第二学習工程において、実際に研削加工した際に得られる評価結果に基づいて報酬を算出する。つまり、支援装置は、研削盤を用いた実際の研削加工を通して得られる評価結果に基づき、強化学習を行うので、政策の更なる向上を図ることができる。
【図面の簡単な説明】
【0015】
図1】研削盤支援システムの概略構成を示す図である。
図2】研削盤の平面図である。
図3】研削盤支援システムの構成を示す機能ブロック図である。
図4】研削品質推定装置の構成を示す機能ブロック図である。
図5】摩耗量推定装置の構成を示す機能ブロック図である。
図6】粗研送り動作の開始位置での工作物と砥石車との相対位置を示す図である。
図7】支援装置の学習フェーズの構成を示す機能ブロック図である。
図8】研削盤支援システムにより実行される学習工程を示すフローチャートである。
図9】学習工程の中で実行される第一学習工程を示すフローチャートである。
図10】学習工程の中で実行される第二学習工程を示すフローチャートである。
図11】支援装置の推定フェーズの構成を示す機能ブロック図である。
図12】研削盤支援システムにより実行される支援程を示すフローチャートである。
【発明を実施するための形態】
【0016】
(1.研削盤支援システム1の概要)
最初に、図1を参照して、研削盤支援システム1の概要を説明する。研削盤支援システム1は、研削盤ライン2と、外部装置3と、推定装置4と、支援装置100とを備える。
【0017】
研削盤ライン2は、工作物Wを研削加工する複数の研削盤10により構成される。研削盤10は、円筒研削盤、カム研削盤等、種々の構成の研削盤を適用可能である。外部装置3は、研削盤10により研削加工された工作物Wの研削品質や、研削加工後の砥石車16(図2参照)の表面状態を検出する際に用いられる。推定装置4は、研削盤10により研削加工された工作物Wの研削品質や、研削加工後の砥石車16の摩耗量を推定する際に用いられる。つまり、研削盤支援システム1は、工作物Wの研削品質や砥石車16の表面状態を把握するにあたり、外部装置3による検出結果を取得することも可能であり、推定装置4による推定結果を取得することも可能である。
【0018】
支援装置100は、研削盤ライン2を構成する各研削盤10、外部装置3及び推定装置4と通信可能に設けられる。なお、支援装置100は、研削盤10に組み込まれた装置とすることもできる。支援装置100は、予め設定された複数の評価対象に関して、各々の評価を最大化するための支援を行う。評価対象としては、例えば、工作物Wの研削品質や砥石車16の表面状態等が例示される。支援装置100は、評価対象の評価結果に応じて、研削盤10の制御装置20によって制御可能な動作指令データを適宜調整する。
【0019】
具体的に、支援装置100には、強化学習において生成された価値関数から得られた政策が記憶されている。そして、支援装置100は、政策に基づき、現在の研削条件の下で調整可能な複数の動作指令データの候補の中から、調整する動作指令データの選択、及び、選択した動作指令データの調整量を決定する。これにより、研削盤支援システム1は、各々の研削盤10において研削条件の最適化を図ることができる。
【0020】
(2.研削盤10の構成)
次に、図2及び図3を参照して、研削盤10の構成を説明する。本実施形態では、研削盤10が砥石台トラバース型の円筒研削盤である場合を例に挙げる。ただし、研削盤支援システム1は、研削盤10として、テーブルトラバース型の研削盤を用いることも可能である。研削盤10は、主として、ベッド11、主軸台12、心押台13、トラバースベース14、砥石台15、砥石車16、定寸装置17、砥石車修正装置18、及び、制御装置20を備える。
【0021】
ベッド11は、設置面上に固定されている。主軸台12は、ベッド11の上面に設けられ、工作物Wを工作物Wの中心軸線回り(Z軸回り)に回転可能に支持する。心押台13は、ベッド11の上面において、主軸台12に対向する位置に設けられている。そして、主軸台12及び心押台13が、工作物Wを回転可能に両端支持する。工作物Wは、主軸台12に設けられたモータ12aの駆動により回転される。
【0022】
トラバースベース14は、ベッド11の上面において、工作物Wの中心軸線方向(Z軸方向)に移動可能に設けられている。トラバースベース14は、ベッド11に設けられたモータ14aの駆動により移動する。砥石台15は、トラバースベース14の上面において、工作物Wに接近及び離間する方向(X軸方向)に移動可能に設けられている。砥石台15は、トラバースベース14に設けられたモータ15aの駆動により移動する。
【0023】
砥石車16は、円盤状に形成され、砥石台15に回転可能に支持されている。砥石車16は、砥石台15に設けられたモータ16aの駆動により回転する。砥石車16は、複数の砥粒を結合材により固定されて構成されている。砥粒には、一般砥粒と超砥粒が存在する。一般砥粒としては、アルミナや炭化ケイ素などのセラミックス質の材料などが良く知られている。超砥粒は、ダイヤモンドやCBNである。定寸装置17は、ベッド11の上面に設けられ、工作物Wの外周面に接触可能な一対の接触子を備えており、工作物Wの加工部位の寸法(径)を計測する。
【0024】
砥石車修正装置18は、砥石車16の表面状態を修正する。砥石車修正装置18は、砥石車16の修正として、ツルーイングとドレッシングの少なくとも一方を行う。さらに、砥石車修正装置18は、砥石車16の寸法(径)を測定する機能も有する。
【0025】
ここで、ツルーイングは、形直し作業であり、研削によって砥石車16が摩耗した場合に工作物Wの形状に合わせて砥石車16を成形する作業、偏摩耗によって砥石車16の振れを取り除く作業等である。ドレッシングは、目直し(目立て)作業であり、砥粒の突き出し量を調整したり、砥粒の切れ刃を創成したりする作業である。ドレッシングは、目つぶれ、目詰まり、目こぼれ等を修正する作業であって、通常ツルーイング後に行われる。また、ツルーイングとドレッシングは、特段区別することなく実施される場合もある。
【0026】
図3に示すように、制御装置20は、NCプログラム及びPLCの制御プログラムに基づいて、各駆動装置を制御する。NCプログラムは、後述する動作指令データに基づいて生成され、制御装置20は、当該NCプログラムに基づいて、各駆動装置12a,14a,15a,16a,17,18(図3では「12a等」と記載する)を制御する。PLCの制御プログラムは、入力機器の指令信号のON/OFFに応じて出力機器を動作する。
【0027】
例えば、制御装置20は、定寸装置17により測定される工作物Wの径に基づいて、工作物Wが仕上げ形状となるまで研削を行う。また、制御装置20は、砥石車16の交換、修正(ツルーイング、ドレッシング)を実施する場合に、各モータ14a,15a,16a、及び、砥石車修正装置18等を制御する。なお、図3では、工作物Wにおいて砥石車16によって研削される部位が研削部位として示される。
【0028】
研削盤10は、さらに、駆動装置12a等の実動作データを検出するセンサ21、構造部材15等の状態(構造部材15等の状態を表すデータ)を検出するセンサ22、研削によって変化する研削部位Wに関するデータ(研削部位データ)を検出するセンサ23を備える。センサ21は、例えば、モータ12aの駆動電流を検出する電流センサ、モータ12aの現在位置(回転角度)を検出する位置センサ等である。センサ21は、他の駆動装置14a,15a,16a,17,18についても同様の情報を検出する。センサ22は、例えば、構造部材15等の振動を検出する振動センサ、構造部材15等の変形量を検出する歪センサ、構造部材15等の温度、研削盤10が配置される場所の気温を検出する温度センサ等である。振動センサは、振動に対応する加速度を検出するセンサ、振動に対応する音波を検出するセンサ等を適用できる。センサ23は、研削によって変化する工作物Wの寸法(径)を検出する定寸装置17、研削時における研削点温度を検出する温度センサ等である。
【0029】
(3.外部装置3の例)
次に、外部装置3の例について説明する。本実施形態において、研削盤支援システム1には、外部装置3として、研削盤10にて砥石車16によって研削加工された工作物Wの研削品質データを工作物W毎に検出する研削品質検出装置が設けられている。
【0030】
研削品質データには、例えば、加工変質層データ(研削焼け等のデータ)、表面性状データ(表面粗さ等のデータ)、びびり模様データ等が含まれる。つまり、外部装置3は、加工変質層データ(研削焼け、研削による軟化層等に関するデータ)を取得する加工変質層検出器、表面性状データ(表面粗さ等に関するデータ)を取得する表面性状測定器、びびり模様データを取得するびびり検出器等である。なお、外部装置3は、当該データを直接取得する装置としてもよい。また、外部装置3は、相関を有する別データを取得して、当該別データを用いて演算することにより目的のデータを取得する装置、即ち、目的のデータを間接的に取得する装置としてもよい。
【0031】
加工変質層データは、加工変質層の有無に関するデータとしてもよいし、加工変質層の程度に関するスコアとしてもよい。表面性状データは、例えば表面粗さの値そのものとしてもよいし、表面粗さの程度に関するスコアとしてもよい。また、びびり模様データは、びびり模様の有無に関するデータとしてもよいし、びびり模様の程度に関するスコアとしてもよい。各スコアは、例えば、複数段階の評点などで表される。
【0032】
また、研削盤支援システム1は、研削品質検出装置によって検出された工作物Wの研削品質データを、砥石車16の表面状態に対応する表面状態データとして取得することも可能である。なお、研削盤支援システム1は、外部装置3として、上記した研削品質検出装置以外の外部装置3(例えば、砥石車16の表面状態を検出する装置等)を設けることも可能である。
【0033】
(4.推定装置4の例)
次に、推定装置4について説明する。推定装置4は、予め設定された研削加工に関する評価対象に関して、所定の研削条件の下で研削盤10が工作物Wを研削加工した際の評価対象の評価結果を推定する。推定装置4は、例えば、工作物Wの研削品質を推定する研削品質推定装置50と、砥石車16の摩耗量を推定する摩耗量推定装置60とを備える。なお、推定装置4は、研削盤10に組み込まれた装置とすることもでき、研削盤10とは別ユニットとすることもできる。
【0034】
また、推定装置4は、研削加工のシミュレーション装置としても機能する。例えば、推定装置4は、研削盤支援システム1の使用者による入力を受け付ける入力装置4aと、入力装置4aへの入力内容、及び、支援装置100から出力された情報(行動情報)を取得する研削条件取得部41を備える。また、推定装置4は、研削条件取得部41が取得した入力内容及び情報に基づいて設定された仮想の研削条件を記憶する研削条件記憶部42を備える。
【0035】
そして、推定装置4は、研削条件記憶部42に記憶された仮想の研削条件に基づいて研削加工のシミュレーションを行い、当該研削条件の下で研削盤10が工作物Wを研削加工した場合の評価対象に対する評価結果を推定することも可能である。つまり、推定装置4は、仮想の研削条件に基づく研削加工のシミュレーションを行うことにより、研削盤10による実際の研削加工を行うことなく、評価対象の評価結果を推定することができる。
【0036】
また、推定装置4は、研削盤10が実際に研削加工した際に得られる研削条件データに基づいて、評価対象の評価結果を推定することも可能である。この場合、支援装置100は、外部装置3による検出結果を評価結果として取得する代わりに、推定装置4による推定結果を評価結果として取得することも可能である。
【0037】
(4-1.研削品質推定装置50)
図4に示すように、研削品質推定装置50は、データ取得部51と、研削品質推定モデル記憶部52と、研削品質推定部53とを備える。データ取得部51は、工作物Wの研削品質を推定するのに必要となる研削条件データを取得する。具体的に、データ取得部51は、研削条件データとして、動作指令データを取得する。動作指令データは、工程毎の指令切込速度、工程切替時の移動体14,15の指令位置、砥石車16の指令回転速度、工作物Wの指令回転速度等である。なお、研削盤10による工作物Wの研削加工は、粗研、精研、微研及びスパークアウト等の複数の研削工程により行われ、研削盤10は、動作指令データに基づいて工程の切替を行う。
【0038】
また、データ取得部51は、研削条件データとして、制御装置20により制御される駆動装置12a等の実動作データをセンサ21から取得する。センサ21が検出する実動作データとしては、モータ12a等の駆動電流、モータ12a等の実位置等が例示される。さらに、データ取得部51は、研削条件データとして、砥石車16により工作物Wの研削を行う際の実測データをセンサ22及びセンサ23から取得する。センサ22が検出する実測データとしては、構造部材15等の振動、構造部材15等の変形量、構造部材15等の温度、研削盤10が配置される場所の気温等が例示され、センサ23が検出する実測データとしては、工作物Wの寸法(外径)、研削点温度等が例示される。そして、データ取得部51は、工作物W毎に、研削初期から研削終期までの実動作データ及び実測データを取得する。
【0039】
なお、推定装置4が仮想の研削条件に基づく研削加工のシミュレーションを行う場合において、データ取得部51は、研削条件記憶部42に記憶された仮想の研削条件データを取得する。つまり、研削条件データには、動作指令データや実動作データ、実測データが含まれる。
【0040】
研削品質推定モデル記憶部52は、研削条件データと工作物Wの研削品質との関係を表す研削品質推定モデルを記憶する。研削品質推定モデルは、機械学習を用いて生成された学習モデルである。研削品質推定モデルは、工作物Wの研削品質として、工作物Wの加工変質層の状態、工作物Wの表面性状、及び工作物Wのびびり模様状態を推定する。なお、研削品質推定モデルは、上記した全ての研削品質を推定する場合に限られず、上記した全ての研削品質のうち一部のみを推定することも可能である。研削品質推定部53は、データ取得部51が取得した研削条件データと、研削品質推定モデル記憶部52に記憶された研削品質推定モデルとに基づき、工作物Wの研削品質を推定する。
【0041】
(4-2.摩耗量推定装置60)
図5に示すように、摩耗量推定装置60は、砥石台位置情報取得部61と、温度情報取得部62と、熱変位量算出モデル記憶部63と、熱変位量算出部64と、摩耗量算出部65とを備える。
【0042】
砥石台位置情報取得部61は、研削盤10に設けられた砥石台位置検出装置60aにより検出された砥石台15の位置情報を取得する。砥石台位置検出装置60aは、砥石台15のX軸方向における位置を検出する装置であり、砥石台位置検出装置60aとしては、モータ15aに取り付けられたエンコーダやトラバースベース14に取り付けられたリニアスケール等が例示される。本実施形態において砥石台位置情報取得部61は、位置情報として、研削加工完了時点での砥石台15のX軸方向における位置情報を取得する。
【0043】
温度情報取得部62は、砥石台位置検出装置60aにより検出された砥石台15の位置情報に対応するタイミングで、センサ23が検出した構造部材15等の温度を、温度情報として取得する。センサ23は、少なくとも、工作物Wと砥石車16との軸間距離の変動に影響を及ぼす構造部材15等の温度を検出する。例えば、センサ23は、ベッド11、トラバースベース14、砥石台15等に取り付けられる。
【0044】
なお、推定装置4が仮想の研削条件に基づく研削加工のシミュレーションを行う場合において、砥石台位置情報取得部61及び温度情報取得部62は、研削条件記憶部42に記憶された仮想の研削条件データを取得する。つまり、研削条件データには、研削加工完了時点での砥石台15のZ軸方向における位置情報、及び、工作物Wと砥石車16との軸間距離の変動に影響を及ぼす構造部材15等の温度が含まれる。
【0045】
熱変位量算出モデル記憶部63は、構造部材15等の温度と構造部材15等の熱変位量との関係を表す熱変位量算出モデルを記憶する。熱変位量算出モデルは、機械学習を用いて生成された学習モデルである。熱変位量算出モデルは、工作物Wの研削個数と位置情報との関係を表す回帰式とに基づいて算出される砥石車16の摩耗量を位置情報から差し引いた値を構造部材15等の熱変位量として算出する。なお、熱変位量算出モデルは、当該熱変位量と構造部材15等の温度を学習データセットとする教師有り学習により生成される。
【0046】
熱変位量算出部64は、構造部材15等の温度及び熱変位量算出モデルに基づいて、構造部材15等の熱変位量を算出する。具体的に、熱変位量算出部64は、センサ23により検出された構造部材15等の温度を入力データとして、熱変位量算出モデルを用いることにより、熱変位量を出力する。なお、熱変位量は、熱変位が存在しない状態を基準とした場合の熱変位量である。
【0047】
摩耗量算出部65は、砥石台15の位置情報、及び、熱変位量算出部64により算出された熱変位量に基づき、砥石車16の摩耗量を算出する。なお、砥石車16の摩耗量は、直前の工作物Wの研削加工完了時点を基準とした砥石車16の摩耗量であってもよく、前回補正した時点を基準とした砥石車16の摩耗量であってもよい。
【0048】
ここで、図6の(a)、(b)、(c)、(d)を参照して、工作物Wと砥石車16との相対位置について説明する。なお、本実施形態において、研削加工送り動作には、粗研を行うための粗研送り動作、精研を行うための精研送り動作、微研を行うための微研送り動作、スパークアウトを行うための送り停止動作が含まれる。そして、図6の(a)、(b)、(c)、(d)には、砥石車16が粗研を行うための粗研送り動作の開始位置まで移動したときの工作物Wと砥石車16との相対位置が図示されている。
【0049】
図6の(a)に示すように、工作物Wと砥石車16の軸間距離は、Xd1となる。このとき、砥石車16の外径は、Dt1であるとする。工作物Wの外径は、研削前の素材径となる。工作物Wと砥石車16の離間距離は、Xs1となる。
【0050】
図6の(b)には、研削盤10の構造部材15等の熱変位、例えば、ベッド11や砥石台15の熱変位によって、工作物Wと砥石車16の軸間距離が、Xd2になったとする。このときの熱変位量は、ΔXhとする。そうすると、工作物Wと砥石車16の離間距離は、Xs1よりも大きなXs2となる。
【0051】
図6の(c)では、砥石車16の摩耗及びツルーイングにより、砥石車16の外径が小さくなり、Dt2となる。工作物Wと砥石車16の軸間距離は、(a)と同一のXd1であるとする。このとき、工作物Wと砥石車16の離間距離は、Xs1よりも大きなXs3となる。
【0052】
図6の(d)では、研削盤10の構造部材15等の熱変位によって、工作物Wと砥石車16の軸間距離が、(b)と同一のXd2であるとする。熱変位量は、ΔXhであるとする。このとき、工作物Wと砥石車16の離間距離は、Xs1,Xs2,Xs3よりも大きなXs4となる。
【0053】
つまり、砥石車16の摩耗及びツルーイング、並びに、研削盤10の構造部材15等の熱変位により、工作物Wと砥石車16の離間距離が変化する。その結果、粗研送り動作の開始位置が一定であっても、粗研送り動作を開始してから、砥石車16が工作物Wに接触し、実際に粗研が行われるまでの時間(以下「空研削時間」と称す)は、砥石車16の摩耗量及びツルーイング量、研削盤10の構造部材15等の熱変位量Xhに伴って変化する。
【0054】
これに対し、図6の(b)に示す例では、熱変位量Xhを把握し、粗研送り動作の開始位置を熱変位量Xhの分だけ補正することにより、工作物Wと砥石車16の離間距離を、図6の(a)と同一のXs1とすることができる。また、図6の(c)に示す例では、砥石車16の外径の変化分(Dt1-Dt2)を把握し、研送り動作の開始位置を外径の変化分(Dt1-Dt2)だけ補正することにより、工作物Wと砥石車16の離間距離を、図6の(a)と同一のXs1とすることができる。このとき、工作物Wと砥石車16の軸間距離は、Xd3となる。
【0055】
同様に、図6の(d)に示す例では、熱変位量Xh及び砥石車16の外径の変化分(Dt1-Dt2)を把握し、粗研送り動作の開始位置を(Xh+(Dt1-Dt2))だけ補正することにより、工作物Wと砥石車16の離間距離を、図6の(a)と同一のXs1とすることができる。このとき、工作物Wと砥石車16の軸間距離は、Xd3となる。
【0056】
このように、研削盤10は、熱変位量Xh、及び、砥石車16の外径Dt1,Dt2を把握し、粗研送り動作の開始位置を補正することにより、工作物Wと砥石車16との離間距離を一定にする。これにより、研削盤10は、空研削時間を短縮することができ、その結果、研削サイクルタイムの短縮を図ることができる。また、研削盤支援システム1は、粗研送り動作の開始位置を補正する際に摩耗量算出部65が算出する砥石車16の摩耗量に基づいて、砥石車16の摩耗量又は表面状態を推定する。
【0057】
(5.学習フェーズにおいて機能する支援装置100の構成)
次に、図7を参照して、学習フェーズにおいて機能する支援装置100の構成を説明する。図7に示すように、支援装置100は、学習フェーズにおいて機能する構成として、以下の構成を備える。即ち、支援装置100は、状態情報取得部110と、評価結果取得部120と、報酬算出部130と、価値関数記憶部140と、政策記憶部150と、行動決定部160と、行動情報出力部170と、価値関数更新部180と、政策更新部190とを主に備える。
【0058】
状態情報取得部110は、制御装置20によって制御可能な複数の動作指令データの設定状態を含む研削条件を、状態情報として取得する。例えば、状態情報取得部110は、状態情報として、砥石車16と工作物Wとの回転速度比、砥石車16の切込量、砥石車16の送り速度、粗研、精研及び微研の時間配分や加工量等の割合、スパークアウト時における砥石車16の回転数、構造部材15等の温度、研削盤10が配置される場所の気温等を取得する。
【0059】
評価結果取得部120は、予め設定された評価対象に関して、所定の研削条件の下で得られる評価対象の評価結果を取得する。例えば、評価結果取得部120は、評価結果として、研削加工後の工作物Wの研削品質、研削加工後の砥石車16の表面状態又は摩耗量、工作物Wの加工に要する加工時間、研削盤10の消費電力、工作物Wに加わる加工負荷、研削盤ライン2における各々の研削盤10の稼働率等を取得する。評価結果取得部120は、評価対象に対する評価結果を、研削盤10に設けられた各種センサ等、外部装置3及び推定装置4から取得することができる。
【0060】
また、評価結果取得部120は、推定装置4に設けられた研削品質推定装置50や摩耗量推定装置60による推定評価結果を、評価結果として取得することができる。つまり、評価結果取得部120は、研削品質推定装置50や摩耗量推定装置60が推定した推定評価結果、及び、研削盤10を用いて実際に研削加工した際に得られる評価結果の双方を取得することができる。
【0061】
報酬算出部130は、所定の研削条件の下で得られる評価対象の評価結果に基づき、当該状態情報(研削条件)に対する報酬を算出する。報酬算出部130は、評価結果が良好である場合に、状態情報に対してプラスの報酬を与える一方、評価結果が良好でない場合に、状態情報に対してマイナスの報酬(罰則)を与える。
【0062】
例えば、報酬算出部130は、評価結果の一つである工作物Wの研削品質に関して、当該研削品質が予め設定された基準以上である場合に、プラスの報酬を与える。一方、報酬算出部130は、当該研削品質が当該基準を下回る場合に、マイナスの報酬を与える。また、報酬算出部130は、評価結果の一つである砥石車16の表面状態又は摩耗量に関して、当該表面状態が予め設定された基準以上である場合、又は、砥石車16の摩耗量が予め設定された基準以下である場合に、プラスの報酬を与える。一方、報酬算出部130は、当該表面状態が当該基準を下回る場合、又は、砥石車16の摩耗量が当該基準を上回る場合に、マイナスの報酬を与える。
【0063】
同様に、報酬算出部130は、評価結果の一つである加工時間に関して、当該加工時間が設定された基準以下である場合に、プラスの報酬を与える一方、当該加工時間が当該基準を超える場合に、マイナスの報酬を与える。さらに、報酬算出部130は、評価結果の一つである研削盤10の稼働率に関して、当該稼働率が予め設定された基準以上である場合に、プラスの報酬を与える一方、当該稼働率が当該基準を下回る場合に、マイナスの報酬を与える。
【0064】
また、報酬算出部130は、評価結果の一つである研削盤10の消費電力に関して、当該消費電力が予め設定された基準以下である場合に、プラスの報酬を与える一方、当該消費電力が当該基準を上回る場合に、マイナスの報酬を与える。さらに、報酬算出部130は、評価結果の一つである加工負荷に関して、当該加工負荷が予め設定された基準以下である場合に、プラスの報酬を与える一方、当該加工負荷が当該基準を上回る場合に、マイナスの報酬を与える。
【0065】
このように、報酬算出部130は、評価対象毎に報酬を算出する。また、報酬算出部130は、評価対象毎に設定された基準と評価結果との差に応じた報酬を付与する。即ち、評価結果と基準との差がプラス方向に大きい場合には、評価結果と基準との差がプラス方向に小さい場合よりも大きな報酬を与える。同様に、評価結果と基準との差がマイナス方向に大きい場合には、評価結果と基準との差がマイナス向に小さい場合よりも大きな罰則を与える。
【0066】
価値関数記憶部140は、状態情報取得部110が取得した状態情報と報酬算出部130が算出した報酬とに基づく強化学習において生成された価値関数を記憶する。価値関数は、学習フェーズにおいて、評価対象の評価結果が最適となるように状態情報に応じた動作指令データの調整に関する政策を得るために生成される関数である。価値関数は、例えば、Q学習、Sarsa、モンテカルロ法等の強化学習アルゴリズムにより生成される。
【0067】
政策記憶部150は、価値関数記憶部140に記憶された価値関数から得られた政策を記憶する。政策は、調整可能な複数の動作指令データの候補の中から、調整する動作指令データを選択し、選択した動作指令データの調整量を決定するための基準である。
【0068】
行動決定部160は、状態情報及び政策に基づき、調整する動作指令データを選択し、選択した動作指令データの調整量を決定する。このとき、行動決定部160は、政策及び強化学習アルゴリズムに従い、価値関数に基づく選択(利用)と、価値関数に基づかない選択(探査)とを折りませながら動作指令データの選択を行う。
【0069】
行動情報出力部170は、行動決定部160による決定内容を、行動情報として研削盤10の制御装置20に出力する。そして、制御装置20は、行動情報出力部170から取得した行動情報に基づいて動作指令データを調整し、研削盤10は、行動情報に基づいて調整された新たな研削条件(調整後状態情報)の下で、新たな工作物Wに対する研削加工を行う。その後、状態情報取得部110は、調整された新たな研削条件を新たな状態情報として取得し、評価結果取得部120は、新たな研削条件の下で得られる評価対象の評価結果を取得する。続いて、報酬算出部130は、新たな研削条件の下で得られた評価結果に基づき、新たな状態情報(調整後状態情報)に対する報酬を算出する。
【0070】
また、行動情報出力部170は、行動情報を推定装置4に出力することも可能である。この場合、推定装置4の研削条件取得部41は、行動情報を取得し、研削条件記憶部42に記憶された仮想の研削条件を更新する。そして、推定装置4は、更新された新たな仮想の研削条件に基づいて研削加工のシミュレーションを行い、当該研削条件の下で研削盤10が工作物Wを研削加工した場合の評価対象に対する評価結果を推定する。
【0071】
その後、状態情報取得部110は、研削条件取得部41に記憶された仮想の研削条件を新たな状態情報として取得し、評価結果取得部120は、推定装置4による評価対象の推定評価結果を取得する。続いて、報酬算出部130は、推定装置4による推定評価結果に基づき、新たな状態情報に対する報酬を算出する。つまり、報酬算出部130は、調整前の状態情報から調整後状態情報へ状態を遷移させた行動情報に対する評価を、調整後状態情報(新たな状態情報)に対する報酬として算出する。
【0072】
価値関数更新部180は、行動情報に基づいて調整した新たな状態情報(調整後状態情報)、及び、新たな状態情報(調整後状態情報)に対する報酬に基づき、価値関数記憶部140に記憶された価値関数を更新する。なお、価値関数更新部180は、強化学習アルゴリズムに基づいて価値関数を更新すればよく、例えば、マイナスの報酬が与えられた場合に、価値関数の更新をやめることも可能である。政策更新部190は、更新された価値関数に基づき、政策記憶部150に記憶された政策を更新する。
【0073】
(6.学習工程)
ここで、図8に示すフローチャートを参照しながら、学習フェーズにおいて研削盤支援システム1が行う学習工程を説明する。
【0074】
図8に示すように、研削盤支援システム1は、学習工程で行う最初の工程として、推定装置4による推定評価結果を用いて強化学習を行う第一学習工程(S1)を実行する。その後、研削盤支援システム1は、研削盤10による実際の研削加工後に得られた実際の評価結果を用いて強化学習を行う第二学習工程(S2)を実行する。
【0075】
この点に関して、支援装置100による強化学習を行う際に、価値関数記憶部140には、支援装置100の使用者が作成した暫定の価値関数が記憶され、政策記憶部150には、使用者が作成した暫定の政策が記憶される。また、最初の研削条件は、使用者が暫定的に設定する。
【0076】
つまり、学習フェーズの初期段階で価値関数記憶部140に記憶される価値関数は、改善の余地が多く、価値関数から得られる政策も未熟である。従って、研削盤10が未熟な政策に基づいて調整された新たな研削条件の下で研削加工を行った場合に、評価対象の評価結果が良好でない可能性も高くなる。その結果、不良品の発生や砥石車16の早期摩耗に伴うコストが嵩むことが懸念される。
【0077】
そこで、支援装置100は、学習工程の初期段階において、推定装置4による推定評価結果を用いて強化学習を行う。この場合、支援装置100は、実際の研削加工をすることなく、強化学習を行うことができるので、不良品の発生や砥石車16の早期摩耗に伴うコストの発生を回避できる。またこの場合、支援装置100は、実際に研削加工しながら強化学習を行う場合と比べて、評価対象に対する評価結果を短時間で得られるので、価値関数及び政策の更新を短時間で行うことができる。
【0078】
その後、支援装置100は、政策が向上した段階で、研削盤10で実際に研削加工した後に得られる実際の評価結果を用いて強化学習を行う。これにより、支援装置100は、不良品の発生及び砥石車16の早期摩耗を抑制しつつ、政策の更なる向上を図ることができる。
【0079】
(6-1.第一学習工程)
次に、図9に示すフローチャートを参照しながら、学習工程の中で実行される第一学習工程(S1)について説明する。
【0080】
図9に示すように、支援装置100は、第一学習工程(S1)の中で実行される最初の工程として、初期設定を行う(S11)。S11の工程において、支援装置100の使用者は、使用者が生成した暫定の価値関数及び政策を価値関数記憶部140及び政策記憶部150に記憶する。また、研削条件取得部41は、使用者が推定装置4の入力装置4aを用いて入力した暫定の研削条件を取得し、研削条件記憶部42に記憶する。
【0081】
S11の工程後、行動決定部160は、調整可能な複数の動作指令データの候補の中から、調整する動作指令データを選択し、選択した動作指令データの調整量を決定する(S12)。その後、行動情報出力部170は、行動決定部160による決定内容に基づき、行動情報を推定装置4に出力する(S13)。
【0082】
S13の工程後、推定装置4は、研削条件取得部41が行動情報出力部170から取得した行動情報に基づいて研削条件を調整し、調整後の研削条件を新たな研削条件として研削条件記憶部42に記憶する(S14)。その後、推定装置4は、調整後の新たな研削条件の下で得られる評価対象の評価結果を推定する(S15)。
【0083】
S15の工程後、支援装置100は、推定装置4の研削条件記憶部42に記憶された新たな研削条件を、新たな研削条件を状態情報として取得すると共に、評価対象の推定評価結果を評価結果として取得する(S16)。次に、報酬算出部130は、推定評価結果に基づき、調整後の研削条件に対する報酬(行動情報に対する評価)を算出する(S17)。
【0084】
S17の工程後、価値関数更新部180は、新たな状態情報、及び、当該状態情報に対する報酬に基づき、価値関数記憶部140に記憶された価値関数を更新する(S18)。なお、S18の工程において、価値関数更新部180は、強化学習アルゴリズムに従い、価値関数の更新を省略することも可能である。つまり、価値関数更新部180は、報酬が算出される毎に、当該報酬に基づいて価値関数の更新を行ってもよく、報酬の算出を所定回数行った後に報酬の平均値やバラつき(例えば、標準偏差)等を算出し、当該報酬の平均値に基づいて価値関数の更新を行ってもよい。また、価値関数更新部180は、算出された報酬がプラスの報酬である場合に限り、価値関数の更新を行ってもよく、算出された報酬又は罰則と予め設定された基準値との差が大きい場合に限り、価値関数の更新を行ってもよい。
【0085】
S18の工程後、政策更新部190は、更新された価値関数に基づき、政策記憶部150に記憶された政策の更新を行う(S19)。その後、支援装置100は、第一学習工程(S1)を終了するか否かの判定を行う(S20)。例えば、使用者は、推定装置4による研削加工のシミュレーションを所定回数(例えば1000回)行うことを、第一学習工程(S1)の終了条件として設定することができる。そして、支援装置100は、第一学習工程(S1)の終了条件が成立した場合(S20:Yes)、本工程を終了し、第一学習工程(S1)の終了条件が成立していない場合(S20:No)、S12の工程に戻る。
【0086】
このように、支援装置100は、第一学習工程(S1)において、実際の研削加工を行うことなく強化学習を行うことができる。よって、支援装置100は、学習フェーズの初期段階において、不良品の発生や砥石車16の早期摩耗に伴うコストの発生を回避できると共に、短時間での政策の向上を図ることができる。
【0087】
(6-2.第二学習工程)
次に、図10に示すフローチャートを参照しながら、学習工程の中で実行される第二学習工程(S2)について説明する。
【0088】
図10に示すように、行動決定部160は、第二学習工程(S2)の中で実行される最初の工程として、調整可能な複数の動作指令データの候補の中から、調整する動作指令データを選択し、選択した動作指令データの調整量を決定する(S21)。なお、S21の工程は、第一学習工程(S1)におけるS12の工程と同様である。その後、行動情報出力部170は、行動決定部160による決定内容に基づき、行動情報を制御装置20に出力する(S22)。
【0089】
S22の工程後、制御装置20は、行動情報出力部170から取得した行動情報に基づいて研削条件を調整し、調整後の新たな研削条件の下で、研削盤10による実際の研削加工を行う(S23)。その後、状態情報取得部110は、調整後の新たな研削条件を新たな状態情報(調整後状態情報)として取得し、評価結果取得部120は、調整後の研削条件の下で得られた評価対象の評価結果を取得する(S24)。
【0090】
S24の工程後、報酬算出部130は、評価結果取得部120が取得した評価結果に基づき、新たな状態情報に対する報酬(行動情報に対する評価)を算出する(S25)。続いて、価値関数更新部180は、新たな状態情報、及び、当該状態情報に対する報酬に基づき、価値関数記憶部140に記憶された価値関数を更新する(S26)。続いて、政策更新部190は、更新された価値関数に基づき、政策記憶部150に記憶された政策の更新を行う(S27)。なお、S25からS27までの工程は、第一学習工程(S1)におけるS17からS19までの工程と同様である。
【0091】
その後、支援装置100は、第二学習工程(S2)を終了するか否かの判定を行う(S28)。例えば、使用者は、研削盤10による研削加工を所定回数(例えば1000回)行うことを、第二学習工程(S2)の終了条件として設定することができる。そして、支援装置100は、第二学習工程(S2)の終了条件が成立した場合(S28:Yes)、本工程を終了し、第二学習工程(S2)の終了条件が成立していない場合(S28:No)、S21の工程に戻る。
【0092】
このように、支援装置100は、第二学習工程(S2)において、研削盤10を用いた実際の研削加工を通して得られる評価結果に基づき、強化学習を行うので、政策の更なる向上を図ることができる。
【0093】
以上説明したように、支援装置100は、学習フェーズにおいて、複数の動作指令データの設定状態を含む研削条件を状態情報とし、調整する動作指令データ及び動作指令データの調整量を行動情報とする強化学習を行う。そして、支援装置100は、状態情報と、当該状態情報に対する報酬とに基づく強化学習を行いながら、行動情報を決定するための価値関数及び政策を更新することにより、政策の向上を図ることができる。
【0094】
また、評価結果取得部120は、研削品質推定装置50や摩耗量推定装置60が推定した推定評価結果、及び、研削盤10を用いて実際に研削加工した際に得られる評価結果の双方を取得することができる。そして、支援装置100は、強化学習の進捗状況等に応じて、研削品質推定装置50や摩耗量推定装置60による推定評価結果、及び、実際に研削加工した際に得られる評価結果の何れかを取得することができる。これにより、支援装置100は、強化学習における学習効率を高めつつ、良品の発生や砥石車16の早期摩耗に伴うコストの発生を回避することができる。
【0095】
(7.推定フェーズにおいて機能する支援装置100の構成)
次に、図11を参照して、推定フェーズにおいて機能する支援装置100の構成を説明する。図11に示すように、支援装置100は、推定フェーズにおいて機能する構成として、以下の構成を備える。即ち、支援装置100は、状態情報取得部110と、評価結果取得部120と、報酬算出部130と、政策記憶部150と、行動決定部160と、行動情報出力部170とを主に備える。なお、上記した推定フェーズにおいて機能する支援装置100の各構成は、学習フェーズにおいて機能する支援装置100の対応する構成と同等である。
【0096】
これに加え、支援装置100は、報酬算出部130が複数の評価対象の各々に対して与える報酬の重み付けを行う重み付け部131を更に備える。重み付け部131は、複数の評価対象のうち一部の評価対象の重要度が他の評価対象の重要度よりも高い場合に、当該一部の評価対象に対し、他の評価対象よりも与える報酬又は罰則の程度を大きくする。なお、各々の評価対象に対する報酬の重み付けは、使用者による設定が可能である。
【0097】
例えば、評価対象の一部である工作物Wの研削品質の重要度が他の評価対象よりも高い場合において、重み付け部131は、研削品質が良好であった場合に、状態情報に対する報酬を通常よりも高くする一方、研削品質が良好でなかった場合に、状態情報に対する罰則を通常よりも重くする。これにより、支援装置100は、評価対象の重要度に応じた最適な研削条件となるような行動(調整する動作指令データ、及び、動作指令データの調整量)の決定を行うことができる。なお、重み付け部131は、学習フェーズにおける支援装置100の構成に含めることも可能である。
【0098】
(8.第二学習工程)
次に、図12に示すフローチャートを参照しながら、研削盤支援システム1により実行される支援工程について説明する。なお、図12に示すフローチャートにおいて、支援工程は、研削盤10による研削加工が終了した際に開始される。
【0099】
図12に示すように、支援工程の中で実行される最初の工程として、状態情報取得部110は、制御装置20に設定された研削条件を状態情報として取得し、評価結果取得部120は、当該研削条件の下で得られた評価対象の評価結果を取得する(S31)。なお、評価結果取得部120は、評価対象に対する評価結果を、研削盤10に設けられた各種センサ等、外部装置3及び推定装置4から取得することができる。また、評価結果取得部120は、外部装置3の代わりに、推定装置4に設けられた研削品質推定装置50及び摩耗量推定装置60による推定結果を、評価結果として取得してもよい。次に、報酬算出部130は、評価結果取得部120が取得した評価結果に基づき、状態情報に対する報酬を算出する(S32)。
【0100】
S32の工程後、行動決定部160は、状態情報取得部110が取得した状態情報と政策記憶部150に記憶された政策とに基づき、調整可能な複数の動作指令データの候補の中から、調整する動作指令データを選択し、選択した動作指令データの調整量を決定する(S33)。次に、行動情報出力部170は、行動決定部160による決定内容に基づき、行動情報を制御装置20に出力する(S34)。その後、制御装置20は、行動情報出力部170から取得した行動情報に基づいて研削条件を調整し、調整後の研削条件の下で、研削盤10による新たな研削加工を開始する(S35)。
【0101】
S35の工程が終了すると、研削盤支援システム1は、支援工程を終了する。そして、研削盤支援システム1は、研削盤10による研削加工が終了する毎に、支援工程を新たに開始する。
【0102】
以上説明したように、支援装置100は、推定フェーズにおいて、学習フェーズでの強化学習において生成された価値関数から得られた政策に基づき、状態情報に応じた行動(調整する動作指令データ及び動作指令データの調整量の決定)を行う。また、支援装置100は、決定された行動に応じた行動情報を制御装置20に出力することで、研削盤10による研削加工における研削条件の設定を支援する。
【0103】
この点に関して、特に、研削盤10による研削加工では、切削加工等に比べて精度の高い加工が要求される。その一方で、研削盤10による研削加工では、研削加工が進むにつれて砥石車16が摩耗し、砥石車16の径が変化する。このように、研削条件が刻々と変化する中で、複数の評価対象の各々に対して高い評価結果を得られるような動作指令データの調整を行うことは容易でない。
【0104】
これに対し、支援装置100は、状態情報に応じて決定した行動に関する行動情報を制御装置20に出力し、研削盤10は、支援装置100から出力された行動情報に基づいて動作指令データを調整する。よって、研削盤10は、研削条件が最適化された状態で研削加工を行うことができ、その結果、最適な評価結果を得ることができる。
【0105】
また、支援装置100は、政策に基づいて調整する動作指令データの選択、及び、選択した動作指令データの調整量の決定を行う。この場合、支援装置100は、複数の評価対象のうちの一部の評価結果が不良であった場合に、良好であった評価対象の評価結果を維持しつつ、不良であった評価結果が向上するような研削条件の調整を行うことができる。つまり、支援装置100は、複数の評価対象の各々について評価結果が良好となるような研削条件の設定を支援することができる。
【0106】
例えば、評価対象が研削加工後の工作物Wの研削品質である場合において、支援装置100は、工作物Wの研削品質が不良であれば、研削品質が改善されるような動作指令データの調整を行うことができる。なお、研削品質が不良であった場合とは、工作物Wに加工変質層が発生した場合、工作物Wの表面性状が所定閾値以上であった場合、工作物Wにびびり模様が発生した場合等が例示される。
【0107】
また、評価対象が砥石車16の表面状態である場合において、支援装置100は、砥石車16の表面状態に応じて、最適なタイミングで砥石車16のツルーイング又はドレッシングを行うことができる。この場合、研削盤10は、砥石車16の表面状態が良好なときにツルーイング又はドレッシングを行う場合と比べて、砥石車16の工具寿命を長期化することができる。またこの場合、研削盤10は、ツルーイング又はドレッシングの回数を少なくすることができる分、ツルーイング又はドレッシングに伴う研削加工の停止回数を減らすことができる。さらにこの場合、研削盤10は、砥石車16の表面状態が悪化した状態で研削加工が行われることを防止できるので、不良品の発生を抑制できる。
【0108】
さらに、評価対象が砥石車16の摩耗量である場合において、支援装置100は、例えば、一つの工作物Wの研削加工での砥石車16の摩耗量が基準を上回る場合に、摩耗量が少なくなるような動作指令データの調整を行うことができる。よって、研削盤10は、砥石車16の工具寿命の長期化を図ることができる。
【0109】
支援装置100は、評価対象が加工時間である場合において、加工時間が基準を上回る場合に、加工時間が短くなるような動作指令データの調整を行うことができる。これにより、研削盤10は、研削サイクルタイムの短縮を図ることができる。
【0110】
これに加え、支援装置100は、評価対象が研削盤ライン2の各々の研削盤10の稼働率である場合において、一の研削盤10の稼働率が基準を下回る場合に、当該一の研削盤10の稼働率が上がるような動作指令データの調整を行うことができる。また、設定された生産計画の中でボトルネックとなる工程がある場合に、研削盤ライン2を構成する研削盤10の一部の稼働率が低下することがある。これに対し、支援装置100は、ボトルネックとなる工程に応じて各々の研削盤10の加工時間を調整することができる。例えば、支援装置100は、ボトルネックとなる工程以外の工程での加工時間を長く確保することで、工作物Wの研削品質や砥石車16の摩耗量の向上を図ることができる。
【0111】
支援装置100は、評価対象が研削盤10の消費電力である場合において、消費電力が基準を上回る場合に、消費電力が小さくなるような動作指令データの調整を行うことができる。これにより、研削盤10は、消費電力の低減を図ることができる。また、支援装置100は、評価対象が研削加工時に工作物Wに加わる加工負荷である場合において、加工負荷が基準を上回る場合に、加工負荷が小さくなるような動作指令データの調整を行うことができる。これにより、研削盤10は、研削加工時における研削抵抗を抑制できる。
【0112】
支援装置100は、評価対象が研削品質のバラつきの度合である場合において、バラつきの度合いが基準を上回る場合に、バラつきが小さくなるような動作指令データの調整を行うことができる。例えば、研削盤10は、配置される場所の気温や、構造部材15等の温度の違いがある場合に、他の研削条件が同じであっても、研削品質の評価結果が異なる場合がある。これに対し、支援装置100は、学習フェーズにおいて、研削盤10が配置される場所の気温や構造部材15等の温度による研削品質のバラつきの度合いが大きくなる傾向があった場合に、研削盤10が配置される場所の気温や構造部材15等の温度に応じた動作指令データの調整を行うような政策を生成することができる。
【0113】
なお、支援装置100は、研削品質のバラつき度合を評価対象とする場合に、所定回数の研削加工又は研削加工のシミュレーションを行った時点で、研削品質のバラつき度合を算出する。例えば、支援装置100は、研削品質と基準との差に関する標準偏差を求めることにより、研削品質のバラつき度合を算出する。なお、研削品質のバラつき度合の算出は、外部装置3により行うことも可能である。
【0114】
(9.その他)
以上、上記実施形態に基づき本発明を説明したが、本発明は上記実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の変形改良が可能であることは容易に推察できるものである。例えば、学習工程は、第一学習工程(S1)を行った後に第二学習工程(S2)を行う場合を例に挙げて説明したが、学習工程は、第二学習工程(S2)のみを行ってもよい。
【符号の説明】
【0115】
2:研削盤ライン、 10:研削盤、 12:主軸台(構造部材の一例)、 13:心押台(構造部材の一例)、 14:トラバースベース(構造部材の一例)、 15:砥石台(構造部材の一例)、 16:砥石車、 20:制御装置、 52:研削品質推定モデル記憶部(評価結果推定モデルの一例)、 53:研削品質推定部(評価結果推定部の一例) 63:熱変位量算出モデル記憶部(評価結果推定モデルの一例)、 65:摩耗量算出部(評価結果推定部の一例)、 100:支援装置、 110:状態情報取得部、 120:評価結果取得部、 130:報酬算出部、 131:重み付け部、 140:価値関数記憶部、 150:政策記憶部、 160:行動決定部、 170:行動情報出力部、 180:価値関数更新部、 190:政策更新部、 W:工作物
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12