JP7224541B1 - 数値制御装置、加工システム、数値制御方法および加工方法 - Google Patents

数値制御装置、加工システム、数値制御方法および加工方法 Download PDF

Info

Publication number
JP7224541B1
JP7224541B1 JP2022519584A JP2022519584A JP7224541B1 JP 7224541 B1 JP7224541 B1 JP 7224541B1 JP 2022519584 A JP2022519584 A JP 2022519584A JP 2022519584 A JP2022519584 A JP 2022519584A JP 7224541 B1 JP7224541 B1 JP 7224541B1
Authority
JP
Japan
Prior art keywords
operation command
machining
tool
command
workpiece
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022519584A
Other languages
English (en)
Other versions
JPWO2023053399A1 (ja
JPWO2023053399A5 (ja
Inventor
一樹 高幣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP7224541B1 publication Critical patent/JP7224541B1/ja
Publication of JPWO2023053399A1 publication Critical patent/JPWO2023053399A1/ja
Publication of JPWO2023053399A5 publication Critical patent/JPWO2023053399A5/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q15/00Automatic control or regulation of feed movement, cutting velocity or position of tool or work
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/404Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4069Simulating machining process on screen
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)

Abstract

数値制御装置(3)は、数値制御プログラム(4)に基づいて運転指令である基本運転指令を生成するとともに、基本運転指令を修正した運転指令である修正運転指令を生成する指令生成部(31)と、基本運転指令および修正運転指令のそれぞれを工作機械(2)に与えた場合の加工をシミュレーションした結果を示すプロセス情報を、駆動系(20)の動作と、工作機械(2)の動作中に振動を生じる構造物のダイナミクスとが、工具(23)による加工対象物(W)の加工プロセス(M)に与える影響を含めて算出する連成シミュレーション部(33)と、複数のプロセス情報に基づいて、複数の運転指令のそれぞれを用いたときの加工誤差の大きさを評価し、基本運転指令および修正運転指令の中から工作機械(2)に与える運転指令を選択するプロセス評価部(34)と、を備えることを特徴とする。

Description

本開示は、工作機械を制御する数値制御装置、加工システム、数値制御方法および加工方法に関する。
工作機械は、工具を用いて加工対象物に力またはエネルギーを与えることで加工対象物から不要部分を除去する加工である除去加工を行うことができる加工装置である。工作機械は、工具または加工対象物を回転させる主軸駆動系と、工具および加工対象物の相対位置を変化させる送り駆動系とを有し、数値制御装置が数値制御プログラムに基づいて生成した運転指令に基づいて主軸駆動系および送り駆動系を駆動することで、加工対象物を加工する。ここで、数値制御プログラムに記述された指令の通りに工作機械を制御しても、様々な要因によって指令の通りに加工されず、加工誤差が生じることがある。
特許文献1には、切削加工中に工具に加わる切削抵抗によって生じる工具の変位を演算することで、加工面の性状を再現する技術が提案されている。特許文献1に記載の方法では、工具の動特性を表すパラメータを予め記憶しておくことで、シミュレーションで計算した工具の切り取り厚さに応じた切削抵抗が発生したときの工具中心の変位を加工誤差とみなしている。
特開2013-132733号公報
しかしながら、上記従来の技術によれば加工誤差を精度よく低減することができないという問題があった。特許文献1に記載の技術では、工具のたわみ量を予測して、工具中心の変位を加工誤差とみなしていたが、実際には、工作機械の動作中には、加工プロセスと、駆動系の動作と、工作機械の動作中に振動を生じる構造物の機械ダイナミクスとが相互に影響し合う。ここで加工プロセスとは工具の刃先が加工対象物に侵入することで切りくずを生成しながら加工面を形成するという一連の過程を表し、機械ダイナミクスとは、工作機械内外の振動源から振動が伝搬したときに振動する構造物の動的な特性を表す。このため、特許文献1に記載の方法では、加工誤差を正確に評価することができず、加工誤差を精度よく低減することができなかった。
本開示は、上記に鑑みてなされたものであって、工作機械の加工誤差を精度よく低減することが可能な数値制御装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本開示の数値制御装置は、加工対象物を加工するための工具または加工対象物を回転させる主軸を駆動する主軸駆動系と、工具および加工対象物の相対位置を変化させる送り軸を駆動する送り駆動系と、を含む駆動系を有する工作機械に運転指令を与えることによって、工作機械を制御する数値制御装置であって、数値制御プログラムに基づいて運転指令である基本運転指令を生成するとともに、基本運転指令を修正した運転指令である修正運転指令を生成する指令生成部と、基本運転指令および修正運転指令のそれぞれを工作機械に与えた場合の加工をシミュレーションした結果を示すプロセス情報を、駆動系の動作と、工作機械の動作中に振動を生じる構造物のダイナミクスとが、工具による加工対象物の加工プロセスに与える影響を含めて算出する連成シミュレーション部と、複数のプロセス情報に基づいて、複数の運転指令のそれぞれを用いたときのプロセス情報を評価し、評価結果に基づいて、基本運転指令および修正運転指令の中から工作機械に与える運転指令を選択するプロセス評価部と、を備え、指令生成部は、プロセス情報から新たな修正運転指令を推論するために機械学習によって生成された学習済モデルを利用して、連成シミュレーション部が出力したプロセス情報から修正運転指令を推論する推論装置を有することを特徴とする。
本発明によれば、工作機械の加工誤差を精度よく低減することが可能であるという効果を奏する。
実施の形態1にかかる加工システムの機能構成を示す図 図1に示す工作機械の物理構成の一例を示す図 基本運転指令の主軸回転速度および送り速度の時間波形を示す図 図3に示す主軸回転速度および送り速度を用いて加工を行うときの工具および加工対象物を示す図 修正運転指令の主軸回転速度および送り速度の時間波形を示す図 図5に示す主軸回転速度および送り速度を用いて加工を行うときの工具および加工対象物を示す図 図1に示す主軸駆動系と機械ダイナミクスと加工プロセスとの関係を示す図 図7に示す物理量を工作機械の物理構成と共に示す図 図1に示す送り駆動系と機械ダイナミクスと加工プロセスとの関係を示す図 図9に示す物理量を工作機械の物理構成と共に示す図 図1の主軸駆動制御モデルの一例を説明するための図 図1の送り駆動制御モデルの一例を説明するための図 図1に示す数値制御装置の動作を説明するためのフローチャート 実施の形態2にかかる加工システムの機能構成を示す図 図14に示す数値制御装置の動作を説明するためのフローチャート 図14に示す数値制御装置に関する学習装置の構成の一例を示す図 図16に示す学習装置の学習処理を説明するためのフローチャート 図14に示す数値制御装置に関する推論装置の構成の一例を示す図 図18に示す推論装置の動作を説明するためのフローチャート 実施の形態3にかかる加工システムの構成を示す図 実施の形態1~3にかかる数値制御装置、学習装置、および、推論装置の機能を実現するための専用のハードウェアを示す図 実施の形態1~3にかかる数値制御装置、学習装置、および、推論装置の機能を実現するための制御回路の構成を示す図
以下に、本開示の実施の形態にかかる数値制御装置、加工システム、数値制御方法および加工方法を図面に基づいて詳細に説明する。なお、以下の説明中において、同様の機能を有する複数の構成要素に共通の数字の後にハイフンおよび数字を付して区別することがある。同様の機能を有する複数の構成要素のそれぞれを区別する必要がない場合、共通の数字のみを記す。
実施の形態1.
図1は、実施の形態1にかかる加工システム1の機能構成を示す図である。加工システム1は、工作機械2と、数値制御装置3とを有する。数値制御装置3は、数値制御プログラム4に記述された指令に基づいて生成する運転指令を工作機械2に与えることによって、工作機械2を制御する。
工作機械2は、1つの主軸駆動系21と、1または複数の送り駆動系22と、加工対象物Wを加工するための工具23と、加工対象物Wを保持するテーブル24とを有する。
主軸駆動系21は、主軸モータ211と、主軸モータ211によって駆動される主軸駆動機構212とを有する。主軸駆動系21には、工具23が接続されており、主軸駆動系21は、工具23を回転させることができる。主軸モータ211または主軸駆動機構212には、主軸駆動系21の角度情報を表すエンコーダ(不図示)が備わる。
送り駆動系22は、サーボモータ221と、サーボモータ221によって駆動される送り駆動機構222とを有する。送り駆動系22は、工具23および加工対象物Wの相対位置を変化させることができる。サーボモータ221および送り駆動機構222には、送り駆動系22の位置情報を表すエンコーダ(不図示)が備わる。送り駆動系22には、加工対象物Wが保持されたテーブル24または工具23が接続されており、送り駆動系22は、テーブル24または工具23を移動させることで、工具23および加工対象物Wの相対位置を変化させることができる。なお、図1に示す例では、工作機械2は、工具23を移動させる送り駆動系22-1と、テーブル24を移動させる送り駆動系22-2とを有し、工具23およびテーブル24の両方を移動させることとしたが、工具23だけを移動させてもよいし、テーブル24だけを移動させてもよい。工具23と、テーブル24に保持された加工対象物Wとの相対位置を変化させることができればよい。送り駆動系22が工具23および加工対象物Wの相対位置を変化させることで、工具23が加工経路に沿って加工対象物Wを切削することになる。
主軸駆動系21および送り駆動系22は、数値制御装置3に接続され、数値制御装置3から与えられる運転指令によって主軸モータ211およびサーボモータ221が制御される。以下では、主軸駆動系21および送り駆動系22の両方を指す場合、単に駆動系20と称する。なお、工具23の刃先が加工対象物Wに侵入することで切りくずを生成しながら加工面を形成するという一連の過程は、加工プロセスMと呼ばれる。
図2は、図1に示す工作機械2の物理構成の一例を示す図である。テーブル24は、水平面を有するテーブル状であり、この水平面に加工対象物Wが載置される。主軸駆動機構212は、工具23がテーブル24に保持された加工対象物Wの上方に位置するように設けられている。主軸モータ211は、主軸駆動機構212に隣接して設けられる。主軸モータ211および主軸駆動機構212を有する主軸駆動系21の主軸は、テーブル24の水平面と垂直な方向であり、主軸駆動系21は、主軸を中心に工具23を回転させる。
工具23を移動させる送り駆動系22-1の送り駆動機構222-1は、工具23が取り付けられた主軸駆動機構212を含む構造物を介して工具23と接続されている。送り駆動系22-1のサーボモータ221-1は、送り駆動機構222-1に隣接して設けられる。送り駆動系22-1の送り軸は、主軸と平行であり、送り駆動系22-1は、工具23を送り軸に沿って上下に移動させる。
テーブル24を移動させる送り駆動系22-2の送り駆動機構222-2は、テーブル24と接続されている。送り駆動系22-2のサーボモータ221-2は、送り駆動機構222-2に隣接して設けられる。送り駆動系22-2の送り軸は、テーブル24の水平面内の方向であり、送り駆動系22-2は、テーブル24を水平方向に移動させる。なお、ここでは、テーブル24を移動させる送り駆動系22を1つだけ説明したが、工作機械2は、送り駆動系22-2の送り軸と垂直であってテーブル24の水平面内の方向に送り軸を有する送り駆動系22をさらに有してもよい。
なお、ここで示す物理構成は説明を容易にするための一例であり、工作機械2の物理構成は図2に示す例に限定されるものではない。例えば、工作機械2の送り駆動系22は1つであってもよいし、3つ以上であってもよい。主軸および送り軸の方向についても、一例である。また、テーブル状のテーブル24は加工対象物Wを保持する機構の一例であり、加工対象物Wを保持することができ、工具23に対する相対的な位置を制御可能な構成であればよい。
図1の説明に戻る。数値制御装置3は、指令生成部31と、記憶部32と、連成シミュレーション部33と、プロセス評価部34と、駆動制御部35とを有する。
数値制御プログラム4には、工作機械2の主軸および送り軸の運動を指示する複数の指令が含まれている。数値制御プログラム4に含まれる指令は、例えば、工具23が移動する経路を加工対象物Wに対する相対的な位置で指定する指令である。工具23の経路を指定する指令は、経路上の位置を指定する複数の位置指令を含む。また、数値制御プログラム4は、各位置指令が示す位置における、主軸の回転速度を示す主軸回転速度指令と、送り軸の移動速度を示す送り速度指令とをさらに含む。数値制御プログラム4は、数値制御装置3の外部から数値制御装置3に対して与えられてもよいし、数値制御装置3が内部に保持していてもよい。
指令生成部31は、数値制御プログラム4に記述された指令を解析し、工作機械2を制御するために工作機械2に与えられる時々刻々の運転指令を生成する。指令生成部31は、数値制御プログラム4に記述された指令を、修正せずにそのまま工作機械2に実行させるための運転指令である基本運転指令と、基本運転指令を修正した運転指令である修正運転指令とを生成する。指令生成部31は、1または複数の修正運転指令を生成することができる。修正運転指令は、加工対象物Wに対して工具23の移動する相対的な経路が基本運転指令と同一であり、送り軸の送り量および加工対象物Wの切り取り厚さの少なくとも一方が変更された運転指令とすることができる。送り量は、単位工程当たりの送り量であり、例えば、工具23が有する刃の1刃当たりの送り量である。この場合、修正運転指令では、工具23に備わる複数の刃先のそれぞれが加工対象物Wに切り込む瞬間の主軸回転数指令および送り速度指令の少なくともいずれかが工具刃先毎に異なる。工具23に備わる複数の刃先のそれぞれの角度と、工具23および加工対象物W間の相対位置とに対応して、各時刻の主軸回転速度指令と送り速度指令とが変調される。指令生成部31は、指令生成部31の内部または外部で設定された工具23の刃先毎の1刃あたりの送り量または加工対象物Wの切り取り厚さに対応して、基本運転指令の各時刻の主軸回転速度指令および送り速度指令の少なくとも一方を変更した運転指令を、修正運転指令として生成することができる。指令生成部31は、生成した基本運転指令および修正運転指令を連成シミュレーション部33および駆動制御部35のそれぞれに出力する。
図3は、基本運転指令の主軸回転速度および送り速度の時間波形を示す図である。ここでは、簡単のため、数値制御プログラム4で2点の位置P1およびP2が指定されており、位置P1およびP2の間の指令軌跡に対して、一定値の主軸回転速度および送り速度が指定されている場合について説明する。図3は、位置P1およびP2の間の指令軌跡に対する主軸回転速度および送り速度を示している。基本運転指令は、数値制御プログラム4に記述された指令を、修正せずにそのまま工作機械2に実行させるための運転指令である。このため、数値制御プログラム4で記述された通り、基本運転指令が、位置P1およびP2の間の指令軌跡に対して指定する主軸回転速度および送り速度はそれぞれ一定である。
図4は、図3に示す主軸回転速度および送り速度を用いて加工を行うときの工具23および加工対象物Wを示す図である。工具23は、回転方向R1に回転しながら位置P1から位置P2に向けて移動しており、加工対象物Wに接触すると、工具23の有する刃が加工対象物Wを切削する。基本運転指令では、主軸回転速度および送り速度はそれぞれ一定であるため、1刃当たりの送り量cは一定となる。この場合、1刃当たりの切削領域A1も一定となる。
図5は、修正運転指令の主軸回転速度および送り速度の時間波形を示す図である。ここでは、図3および図4で説明した基本運転指令の指令軌跡を保ったまま、主軸回転数および送り速度を、数値制御プログラム4に記述された一定値を基準として正弦波状に変動させている。
図6は、図5に示す主軸回転速度および送り速度を用いて加工を行うときの工具23および加工対象物Wを示す図である。工具23は、回転方向R1に回転しながら位置P1から位置P2に向けて移動しており、加工対象物Wに接触すると、工具23の有する刃が加工対象物Wを切削する。修正運転指令では、主軸回転速度および送り速度はそれぞれ常に変化している。このため、1刃当たりの送り量cが経時的に変化し、結果として、1刃当たりの切削領域A1も1刃ごとに変化する。
図5の例では、指令生成部31は、基本運転指令に基づく1刃当たり送り量cまたは加工対象物Wの切り取り厚さを基準として、主軸回転速度および送り速度のそれぞれを正弦波状の変動パターンに変化させて修正運転指令を生成することとした。しかしながら、使用される変動パターンは正弦波状に限らず、三角波形状、ランダム波形状を含む様々な変動パターンが用いられてもよい。指令生成部31は、基本運転指令の主軸回転速度および送り速度の少なくとも一方に、予め定められたプロファイルの変動を重畳することによって修正運転指令を生成することもできる。指令生成部31は、基本運転指令に重畳する変動のプロファイルを示す情報を、予め保持しておくことができる。また、ここでは指令生成部31は、1つの基本運転指令から1つの修正運転指令を生成する場合について説明したが、指令生成部31は、1つの基本運転指令から複数の修正運転指令を生成してもよい。
図1の説明に戻る。記憶部32は、加工プロセスモデル321と、ダイナミクスモデル322と、主軸駆動制御モデル323と、送り駆動制御モデル324と、加工条件情報325とを記憶する。記憶部32は、記憶された情報を連成シミュレーション部33に出力することができる。加工条件情報325は、工具23の刃数、工具径およびねじれ角を含む工具形状情報と、その工具23を用いた場合の切り込み量とを含む。加工プロセスモデル321、ダイナミクスモデル322、主軸駆動制御モデル323および送り駆動制御モデル324の詳細については後述される。
工作機械2が実行する切削加工は、加工プロセスと機械ダイナミクスとが相互に影響する物理現象であるため、加工状態を管理または制御するためには、加工プロセスおよび機械ダイナミクスの両者を統合した解析を行うことが望ましい。ここで、加工プロセスとは、工具23の刃先が加工対象物Wに侵入することで切りくずを生成しながら加工面を形成するという一連の過程を表す。機械ダイナミクスとは、工作機械2の内外の振動源によって、振動を生じる構造物の動的な振る舞いを表す。ここでいう構造物は、工作機械2を構成する構造物に加えて、工具23および加工対象物Wを含むことができる。
駆動系20が数値制御装置3によって制御されることで、工具23が回転しながら加工対象物Wに対して予め定められた経路を通過するように運動する。工具23が加工対象物Wを切削している間、工具23と加工対象物Wとの間で発生する切削力Fcが構造物を通じて外乱力Fdとして送り駆動系22に伝達され、外乱トルクTdとして主軸駆動系21に伝達される。送り駆動系22に外乱力Fdが加わるため、送り駆動系22の位置は、工具23が加工対象物Wを切削していない場合の位置を基準としたときに、外乱力Fdの振幅および周波数に応じて変動する。同様に、主軸駆動系21に外乱トルクTdが加わると、主軸駆動系21の回転角度は、工具23が加工対象物Wを切削していない場合の回転角度に対して変動する。
上記の関係について図を用いて説明する。図7は、図1に示す主軸駆動系21と機械ダイナミクスと加工プロセスMとの関係を示す図である。図8は、図7に示す物理量を工作機械2の物理構成と共に示す図である。数値制御装置3が運転指令を主軸駆動系21に与えると、主軸モータ211が主軸駆動機構212を駆動して、工具23を含めた工作機械2の構造物が回転し、加工対象物Wを加工する。ここで、主軸駆動系21が運転指令に基づいて主軸駆動系角度θ1に制御されると、実際の工具23の角度は、工具側機械ダイナミクスMD1の影響を受けて、工具角度θ2となる。工具23が加工対象物Wに侵入し、切りくずを生成しながら加工面を形成するという一連の加工プロセスMが実行される。このとき生じる切削トルクTcは、構造物を通じて工具側機械ダイナミクスMD1の影響を受けて外乱トルクTdとして主軸駆動系21に帰還する。工作機械2は、フィードバック信号を数値制御装置3に出力する。外乱トルクTdを受けた主軸駆動系21の状態が運転指令と異なる場合、数値制御装置3は、主軸駆動系21から伝達されるフィードバック信号に基づいて、運転指令を変化させる。
図9は、図1に示す送り駆動系22-2と機械ダイナミクスと加工プロセスMとの関係を示す図である。図10は、図9に示す物理量を工作機械2の物理構成と共に示す図である。数値制御装置3が運転指令を送り駆動系22-2に与えると、工具23と加工対象物Wの相対運動によって加工対象物Wが加工される。このとき、送り駆動系22-2のサーボモータ221-2が運転指令に基づいて送り駆動機構222-2を駆動した結果、テーブル24に駆動系変位r1が生じる。加工対象物Wにおいて発生する実際の変位は、駆動系変位r1が生じたときの加工対象物側機械ダイナミクスMD2の影響を受けて、構造物変位r2となる。このとき生じる切削力Fcは、構造物を通じて外乱力Fdとして送り駆動系22-2に帰還する。外乱力Fdを受けた送り駆動系22-2の状態が運転指令と異なる場合、数値制御装置3は、送り駆動系22-2から伝達されるフィードバック信号に基づいて運転指令を変化させる。
なお、上記では説明のため図7から図10を用いて、主軸駆動系21および送り駆動系22のそれぞれを分けて説明したが、加工中における変位と力の伝搬とは主軸駆動系21および送り駆動系22で同時になされる。
このように、切削加工では、加工プロセスMと機械ダイナミクスと駆動系20とが連成した系を成し、数値制御装置3は、駆動系20および機械ダイナミクスを介して加工プロセスMに関与する。また、工具23と加工対象物Wとの間の切削プロセスにおいて、切削力Fcが発生している加工点は、切りくずの生成と共に消失するため、センサを設置して切削力Fcを直接的に検出することはできない。したがって、工具23および加工対象物Wの運動を含めた切削加工を正確に評価するには、加工プロセスMおよび機械ダイナミクスに加えて、主軸駆動系21および送り駆動系22の動作を含めたシミュレーションを行う必要がある。
続いて、記憶部32が記憶する加工プロセスモデル321、ダイナミクスモデル322、主軸駆動制御モデル323および送り駆動制御モデル324の具体例について説明する。これらのモデルは、後述の連成シミュレーション部33がシミュレーションを行う際に使用される。
加工プロセスモデル321は、工具23と加工対象物Wとの間の加工特性を表す。より具体的には、加工プロセスモデル321は、工具23および加工対象物Wの位置関係に応じて発生する切削力Fcを表現する数理モデルである。以下に示す数式(1)は、工具23の刃先が加工対象物Wに接触している間の切削力Fcを表現する数式の一例である。数式(1)は、比切削抵抗Kc、エッジフォース係数Ke、工具23の断面の微小厚さΔa、加工対象物Wの切り取り厚さh、工具23の回転角度φおよび時刻tを用いて工具23の断面あたりの微小切削力ΔFcを表している。工具23の切り込みによって発生する合計の切削力Fcは、数式(1)に示される微小切削力ΔFcを工具23の軸方向に足し合わせることで算出することができる。加工対象物Wの切り取り厚さhは、工具23の半径方向における前加工面と今回加工面との間の距離である。数式(1)は、切り取り厚さhに比例する力と、エッジフォースと呼ばれる一定量の力との和によって切削力Fcを算出することができることを表している。
Figure 0007224541000001
切り取り厚さhは、以下の数式(2)によって表現することができる。切り取り厚さhは、1刃あたりの工具23の送り量cによって決定されるノミナルな切り取り厚さを表す成分と、工具23および加工対象物Wの相対的な振動を表す成分と、工具23が複数の刃先を備える場合に各刃先の回転半径の差異による切り取り厚さの増減を表す成分との和で表される。工具23および加工対象物Wの相対的な振動を表す成分は、今回加工面を切り取る瞬間の工具23および加工対象物Wの間の相対変位の工具23の半径方向成分urと、前加工面に転写された工具23および加工対象物Wの間の相対変位の工具半径方向成分wrとの差異で表される。各刃先の回転半径の差異による切り取り厚さの増減を表す成分は、工具23の刃先の回転半径補正量Δeで表される。
Figure 0007224541000002
数式(1)は加工プロセスモデル321の一例であり、加工プロセスモデル321は、上記のものに限定されない。例えば、工具23の形状と加工対象物Wの形状とを表現したボクセルを用いて切削力Fcを算出するモデルであってもよい。
ダイナミクスモデル322は、工作機械2の動作中に振動を生じる構造物の動特性を表す。具体的には、ダイナミクスモデル322は、構造物に動的な力が加わったときにその構造物が動的に変位することを表す数理モデルである。例えば、駆動系20に接続された加工対象物Wに対して切削力Fcがかかったときの加工対象物Wの挙動は、以下に示す数式(3)で表すことができる。
Figure 0007224541000003
数式(3)は、加工対象物Wの振動を表現する数式の一例である。工具23および加工対象物Wの間で発生した切削力Fcは、工具23および加工対象物Wの間の相対変位uと、駆動系20の相対変位vと、加工対象物Wの等価質量mと、加工対象物Wの等価粘性係数Cと、加工対象物Wの等価ばね定数Kとを用いて表される。数式(3)は、切削力Fcが加工対象物Wを通じて駆動系20に外乱力Fdとして伝達する機械ダイナミクスを表す。
なお、ダイナミクスモデル322は、数式(3)に限定されない。例えば、加工対象物Wの形状をボクセルで表現し、FEM(Finite Element Method)解析を用いて構造物が加振されたときの変位を算出するモデルであってもよい。なお、ここで説明したダイナミクスモデル322は加工対象物Wの振動のみを表現しているが、ダイナミクスモデル322は、加工対象物Wの代わりに工具23、またはその他の構造物の振動を表現してもよい。或いは、ダイナミクスモデル322は、工具23および加工対象物Wの両方の振動を表現してもよい。
主軸駆動制御モデル323は、工作機械2が有する主軸駆動系21と、数値制御装置3の駆動制御部35内に存在し、主軸駆動系21を制御する主軸駆動制御器とを表す数理モデルである。図11は、図1の主軸駆動制御モデル323の一例を説明するための図である。主軸駆動制御モデル323は、主軸回転角度指令が与えられたときに、切削トルクTcに起因する外乱トルクTdが主軸駆動系21に伝達される状況下において、主軸駆動制御器が有する位置制御器および速度制御器によって、主軸駆動系21の位置および速度が制御される場合の数理モデルである。この数理モデルは、制御器に主軸回転角度指令θrを入力すると、主軸実回転角度θを出力する。ここで、Kpp1,Kvp1,Kvi1は制御ゲインであり、それぞれ位置制御のための比例ゲインKpp1、速度制御のための比例ゲインKvp1、速度制御のための積分ゲインKvi1である。P1(s)は主軸駆動系21全体のトルクから位置の伝達関数であり、sは複素数である。P1(s)は既知のシステム同定手法によって主軸駆動系21の実際の応答から同定することができる。なお、ここでは主軸駆動系21を1慣性系としてモデル化しているが、主軸駆動系21は多慣性系としてモデル化してもよい。また、主軸駆動制御器にフィードフォワード制御器を追加してもよい。
送り駆動制御モデル324は、工作機械2が有する送り駆動系22と、数値制御装置3の駆動制御部35内に存在する送り駆動制御器とを表す数理モデルである。図12は、図1の送り駆動制御モデル324の一例を説明するための図である。送り駆動制御モデル324は、送り駆動系位置指令が与えられたときに、切削力Fcに起因する外乱力Fが主軸駆動系21に伝達される状況下において、送り駆動制御器が有する位置制御器および速度制御器によって、送り駆動系22の位置および速度が制御される場合の数理モデルである。この数理モデルは、送り駆動系位置指令xrを入力すると、送り駆動系実位置xを出力する。ここで、Kpp2,Kvp2,Kvi2は制御ゲインであり、それぞれ位置制御のための比例ゲインKpp2、速度制御のための比例ゲインKvp2、速度制御のための積分ゲインKvi2である。P2(s)は送り駆動系22全体の力から位置の伝達関数であり、sは複素数である。P2(s)は既知のシステム同定手法によって送り駆動系22の実際の応答から同定することができる。なお、ここでは送り駆動系22を1慣性系としてモデル化しているが、送り駆動系22は多慣性系としてモデル化してもよい。また、送り駆動制御器にフィードフォワード制御器を追加してもよい。
連成シミュレーション部33は、指令生成部31が出力した複数の運転指令のそれぞれを工作機械2に与えた場合の加工をシミュレーションし、シミュレーション結果を示すプロセス情報を算出する。プロセス情報は、加工誤差を比較可能なパラメータを含み、例えば、加工対象物Wの切り取り厚さ、切削力Fc、外乱力Fdなどを含む。ここで加工対象物Wの切り取り厚さは、例えば、工具23の1刃当たりの加工対象物Wの切り取り厚さである。連成シミュレーション部33は、主軸駆動系21および送り駆動系22を含む駆動系20の動作と、工作機械2の動作中に振動を生じる構造物のダイナミクスとが加工プロセスMに与える影響を含めて、工作機械2が行う加工をシミュレーションすることができる。連成シミュレーション部33は、指令生成部31が生成した運転指令の数だけシミュレーションを行い、シミュレーション結果を示すプロセス情報を運転指令の数だけ生成する。連成シミュレーション部33は、生成した複数のプロセス情報をプロセス評価部34に出力する。
連成シミュレーション部33は、加工プロセスモデル321、ダイナミクスモデル322、主軸駆動制御モデル323、および、送り駆動制御モデル324に対して、指定された加工条件で指令生成部31が出力した運転指令を与えることで、工作機械2が行う加工をシミュレーションして、シミュレーション結果を示すプロセス情報を算出する。このとき連成シミュレーション部33は、記憶部32に記憶された加工プロセスモデル321、ダイナミクスモデル322、主軸駆動制御モデル323、送り駆動制御モデル324、および、加工条件情報325を用いることができる。記憶部32に記憶された加工条件情報325を用いる場合、指定された加工条件は、加工条件情報325が示す加工条件となる。
連成シミュレーション部33は、工具23および加工対象物Wの間の加工プロセスMと、工作機械2の構造物の機械ダイナミクスと、主軸駆動系21の動作と、送り駆動系22の動作とが連成されたシミュレーションを実行する。連成シミュレーション部33では、図7から図10に示した関係に基づいて、加工プロセスモデル321、ダイナミクスモデル322、主軸駆動制御モデル323および送り駆動制御モデル324の各モデルを組み合わせた連成モデルに対して、加工条件情報325に記述された加工条件の下、基本運転指令および修正運転指令のそれぞれを与えたときの駆動信号と主軸駆動系角度θ1と駆動系変位r1と工具角度θ2と送り系の構造物変位r2と加工対象物の切り取り厚さhと切削トルクTcと切削力Fcと外乱トルクTdと外乱力Fdとフィードバック信号とをシミュレーションし、それらの時系列情報および周波数成分情報を演算する連成シミュレーションを行う。
プロセス評価部34は、連成シミュレーション部33が出力する複数のプロセス情報に基づいて、複数の運転指令のそれぞれを用いたときの加工誤差の大きさを評価し、指令生成部31が生成した基本運転指令および修正運転指令の中から、工作機械2に与える運転指令を選択する。プロセス評価部34は、選択した運転指令を示す指令選択信号を駆動制御部35に出力する。
以下、プロセス評価部34における評価方法の一例を説明する。プロセス評価部34は、加工対象物Wの切り取り厚さhの時間変化に基づいて、加工誤差の大きさを評価することができる。プロセス評価部34は、加工対象物Wの切り取り厚さhの増大が小さいほど加工誤差の大きさが小さいと評価する。プロセス評価部34は、切り取り厚さhの増大が最小となる運転指令を、工作機械2に与える運転指令として選択することができる。切り取り厚さhは、工具23および加工対象物Wの間の振動を表す。工具23および加工対象物Wの間で、びびり振動と呼ばれる振動が発生すると、時間経過とともに振幅が増大して加工誤差の悪化を招く。このため、切り取り厚さhの経時変化を評価することで、プロセス評価部34は、工具23および加工対象物Wの間の振動が最小となる運転指令を選択することができる。工具23および加工対象物Wの間の振動が最小となる運転指令は、工具23および加工対象物Wの間の振動に起因する加工誤差を最小化することができる。
また、プロセス評価部34は、それぞれの運転指令を実行したときの外乱力Fdまたは外乱トルクTdの最大振幅に基づいて、加工誤差の大きさを評価することができる。プロセス評価部34は、外乱力Fdまたは外乱トルクTdの最大振幅が小さいほど加工誤差の大きさが小さいと評価する。プロセス評価部34は、最大振幅が最小となる運転指令を、工作機械2に与える運転指令として選択することができる。外乱力Fdまたは外乱トルクTdの最大振幅が小さいほど、外乱力Fdまたは外乱トルクTdに起因する駆動系20の振動が小さくなる。このため、外乱力Fdまたは外乱トルクTdの最大振幅が最小となる運転指令を選択することで、駆動系20の振動に起因する加工誤差を最小化することができる。
また、プロセス評価部34は、連成シミュレーション部33が算出したプロセス情報の時間波形を、予め設定された目標プロファイルと比較して、目標プロファイルとの乖離に基づいて、加工誤差の大きさを評価することができる。目標プロファイルは、加工誤差が許容値以下となるプロファイルであり、例えば、プロセス評価部34の内部に予め設定される。プロセス評価部34は、目標プロファイルとの乖離が小さいほど加工誤差の大きさが小さいと評価する。プロセス評価部34は、2乗和誤差などの損失関数に基づいて、目標プロファイルとの乖離を評価してもよいし、パターンマッチングなどの機械学習手法に基づいて、目標プロファイルとの乖離を評価してもよい。プロセス評価部34は、目標プロファイルとの乖離が最小となる運転指令を選択することで、加工誤差を最小化することができる。
プロセス評価部34は、上記の複数の評価方法のいずれか1つを用いて加工誤差の大きさを評価してもよいし、上記の複数の評価方法を組み合わせて用いてもよい。
駆動制御部35は、指令生成部31が生成した複数の運転指令のうち、プロセス評価部34が出力する指令選択信号が示す運転指令に基づいて、工作機械2の駆動系20を制御する。駆動制御部35は、主軸駆動系21を制御するための主軸駆動制御器と、送り駆動系22を制御するための送り駆動制御器とを内部に有する。主軸駆動制御器は、主軸駆動系21に備わるエンコーダの信号を監視しながら、主軸駆動系21の位置および速度が運転指令で指定された量になるように、主軸モータ211に対して指令を出力する。送り駆動制御器は、送り駆動系22に備わるエンコーダの信号を監視しながら、送り駆動系22の位置および速度が運転指令で指定された量になるように、サーボモータ221に対して指令を出力する。
図13は、図1に示す数値制御装置3の動作を説明するためのフローチャートである。加工システム1が運転を開始すると、数値制御装置3の指令生成部31は、数値制御プログラム4を読み込んで、読み込んだ数値制御プログラム4を解析し、数値制御プログラム4に記述された指令を工作機械2に実行させるための基本運転指令と、基本運転指令を修正した修正運転指令とを生成する(ステップS101)。指令生成部31は、1つの基本運転指令と、1パターン以上の修正運転指令とを生成すると、生成した運転指令を連成シミュレーション部33に出力する。
連成シミュレーション部33は、指令生成部31が出力した運転指令毎に連成シミュレーションを実行して複数のプロセス情報を算出する(ステップS102)。連成シミュレーション部33は、算出したプロセス情報をプロセス評価部34に出力する。
プロセス評価部34は、複数のプロセス情報を比較評価して、各運転指令のそれぞれを用いたときの加工誤差の大きさを評価し、基本運転指令および修正運転指令の中から工作機械2に与える運転指令を選択する(ステップS103)。プロセス評価部34は、選択した運転指令を示す指令選択信号を駆動制御部35に出力する。
駆動制御部35は、プロセス評価部34が出力した指令選択信号に基づいて、選択された運転指令を用いて工作機械2の運転を制御する(ステップS104)。指令生成部31は、数値制御プログラム4に記述された全ての指令の読み取りが完了したか否かを判断する(ステップS105)。読み取りが完了していない場合(ステップS105:No)、指令生成部31は、ステップS101から処理を繰り返す。読み取りが完了した場合(ステップS105:Yes)、加工システム1は運転を終了する。
以上説明したように、実施の形態1の加工システム1において、数値制御装置3は、数値制御プログラムに基づいて生成した基本運転指令と、基本運転指令を修正した修正運転指令とを工作機械2に与えた場合の加工をシミュレーションした結果を示すプロセス情報を、駆動系20の動作と、工作機械2の動作中に振動を生じる構造物のダイナミクスとが、工具23による加工対象物Wの加工プロセスに与える影響を含めて算出し、プロセス情報の評価結果に基づいて工作機械2に与える運転指令を選択する。したがって、数値制御装置3は、加工プロセスと、駆動系20の動作と、工作機械2の動作中に振動を生じる構造物の機械ダイナミクスとが相互に影響し合って加工誤差が生じる場合においても、加工誤差を低減することが可能になる。
連成シミュレーション部33は、工具23と加工対象物Wとの間の加工特性を表す加工プロセスモデル321と、工作機械2の動作中に振動を生じる構造物の動特性を表すダイナミクスモデル322と、主軸駆動系21と主軸駆動系21を制御する主軸駆動制御器とを表す主軸駆動制御モデル323と、送り駆動系22と送り駆動系22を制御する送り駆動制御器とを表す送り駆動制御モデル324と、に対して、指定された加工条件で運転指令を与えたときのプロセス情報を算出する。数理モデルを用いて連成シミュレーションを行うことで、運転指令が駆動系20および機械ダイナミクスを介して加工プロセスMに与える影響を正確に評価することが可能になる。
実施の形態1では、加工プロセスモデル321と、ダイナミクスモデル322と、主軸駆動制御モデル323と、送り駆動制御モデル324と、加工条件を示す加工条件情報325とを記憶する記憶部32は、数値制御装置3に備わることとしたが、記憶部32は、数値制御装置3の外部に備わっていてもよい。
指令生成部31は、加工対象物Wに対して工具23の移動する相対的な経路が基本運転指令と同一であり1刃当たりの送り量または加工対象物Wの切り取り厚さhが変更された指令を修正運転指令として生成することができる。例えば、指令生成部31は、基本運転指令の主軸回転速度および送り速度の少なくとも一方を、1刃当たりの送り量または加工対象物Wの切り取り厚さhに対して変更した指令を修正運転指令とすることができる。具体的には、指令生成部31は、基本運転指令の主軸回転速度および送り速度の少なくとも一方に、予め定められたプロファイルの変動を重畳することによって修正運転指令を生成することができる。このように修正運転指令を生成することで、加工対象物Wの形状を変化させずに加工誤差を低減する運転指令を生成することが可能になる。
なお、記憶部32は、数値制御プログラム4に記述された加工工程に応じて異なるモデルおよび加工条件を記憶してもよい。連成シミュレーション部33は、加工工程に応じて異なるモデルおよび加工条件を用いて、シミュレーションを行うことが可能になる。また、実施の形態1では、工作機械2が1つの主軸駆動系21と、1または複数の送り駆動系22とを備えることとしたが、工作機械2は複数の主軸駆動系21を有してもよい。工作機械2が複数の主軸駆動系21を有する場合であっても、図13に示した動作を同様に行えばよい。
また、実施の形態1では、例えばマシニングセンタのように、主軸駆動系21に工具23が接続されており、工具23が回転する工作機械2について説明したが、工作機械2は、例えばNC(Numerically Control)旋盤のように主軸駆動系21に加工対象物Wが接続され、加工対象物Wが回転する構成であってもよい。この場合、1刃当たりの送り量を主軸1回転あたりの送り量と読み替えることで、指令生成部31は、数値制御プログラム4で指定された経路を変更せずに、複数の運転指令から加工誤差を低減する運転指令を選択することが可能になる。
実施の形態2.
図14は、実施の形態2にかかる加工システム1aの機能構成を示す図である。実施の形態1と同様の機能を有する機能構成は実施の形態1と同一の符号を付して、重複する説明を省略する。以下、実施の形態1と異なる点について主に説明する。加工システム1aは、シミュレーション結果に基づいて運転指令を生成する点が、加工システム1と異なる。
加工システム1aは、工作機械2と、数値制御装置3aとを有する。数値制御装置3aは、数値制御装置3と同様に、数値制御プログラム4に記述された指令に基づいて工作機械2を制御する。数値制御装置3aは、指令生成部31aと、記憶部32aと、連成シミュレーション部33aと、プロセス評価部34と、駆動制御部35とを有する。
指令生成部31aは、修正運転指令を生成する際に、連成シミュレーション部33aが出力するプロセス情報を用いることができる。指令生成部31aは、基本運転指令をプロセス情報に基づいて修正した運転指令を修正運転指令とすることができる。このとき、指令生成部31aは、記憶部32aに記憶された加工プロセスモデル321、ダイナミクスモデル322、主軸駆動制御モデル323、送り駆動制御モデル324および加工条件情報325を用いることができる。具合的には、指令生成部31aは、プロセス情報に含まれる加工対象物Wの切り取り厚さに重畳されている動的な振動成分の振幅または位相を補償する変動を基本運転指令に加えることで、修正運転指令を生成する。動的な振動成分は、上記の数式(2)の右辺の第2項に相当する。指令生成部31aは、加工対象物Wの切り取り厚さに重畳されている動的な振動成分の振幅を減衰させるバンドストップフィルタを用いたり、工具23の刃先が切削するタイミングを基準とした当該振動成分の位相遅れを補償する位相補償フィルタを用いたりして、振動成分の振幅または位相を補償する変動を基本運転指令に加えることができる。
記憶部32aは、記憶部32と同様に、加工プロセスモデル321と、ダイナミクスモデル322と、主軸駆動制御モデル323と、送り駆動制御モデル324と、加工条件情報325とを記憶し、記憶した情報を連成シミュレーション部33aに出力する。記憶部32aは、さらに、指令生成部31aにも記憶した情報を出力することができる。
連成シミュレーション部33aは、連成シミュレーション部33と同様に、基本運転指令および修正運転指令のそれぞれを工作機械2に与えた場合の加工をシミュレーションした結果を示すプロセス情報を算出する。連成シミュレーション部33aは、算出したプロセス情報をプロセス評価部34に出力すると共に、指令生成部31aにも出力する。
図15は、図14に示す数値制御装置3aの動作を説明するためのフローチャートである。加工システム1aが運転を開始すると、数値制御装置3aの指令生成部31aは、数値制御プログラム4を読み込んで、読み込んだ数値制御プログラム4を解析し、数値制御プログラム4に記述された指令を工作機械2に実行させるための基本運転指令を生成する(ステップS201)。指令生成部31aは、生成した基本運転指令を連成シミュレーション部33aに出力する。
連成シミュレーション部33aは、指令生成部31aが出力した基本運転指令を工作機械2が実行するときの連成シミュレーションを実行してプロセス情報を生成する(ステップS202)。連成シミュレーション部33aは、生成したプロセス情報をプロセス評価部34および指令生成部31aのそれぞれに出力する。
指令生成部31aは、ステップS202を実行した結果出力されるプロセス情報に基づいて基本運転指令を修正して、修正運転指令を生成する(ステップS203)。指令生成部31aは、生成した修正運転指令を連成シミュレーション部33aに出力する。
連成シミュレーション部33aは、指令生成部31aが出力した修正運転指令を工作機械2が実行するときの連成シミュレーションを実行してプロセス情報を生成する(ステップS204)。連成シミュレーション部33aは、生成したプロセス情報をプロセス評価部34および指令生成部31aのそれぞれに出力する。
プロセス評価部34は、複数のプロセス情報を比較評価して、各運転指令のそれぞれを用いたときの加工誤差の大きさを評価し、基本運転指令および修正運転指令の中から工作機械2に与える運転指令を選択する(ステップS205)。プロセス評価部34は、選択した運転指令を示す指令選択信号を駆動制御部35に出力する。
駆動制御部35は、プロセス評価部34が出力した指令選択信号に基づいて、選択された運転指令を用いて工作機械2の運転を制御する(ステップS206)。指令生成部31aは、数値制御プログラム4に記述された全ての指令の読み取りが完了したか否かを判断する(ステップS207)。読み取りが完了していない場合(ステップS207:No)、指令生成部31aは、ステップS201から処理を繰り返す。読み取りが完了した場合(ステップS207:Yes)、加工システム1aは運転を終了する。
なお、上記の例では、指令生成部31aは、基本運転指令を工作機械2に与えた場合のシミュレーション結果を示すプロセス情報に基づいて修正運転指令を生成することとしたが、修正運転指令を工作機械2に与えた場合のシミュレーション結果を示すプロセス情報に基づいてさらに修正運転指令を生成してもよい。この場合、加工対象物Wの切り取り厚さの振動成分の振幅または位相を評価値として機械学習手法を用いて、加工対象物Wの切り取り厚さの振動を低減することが可能な修正運転指令を探索する手法を採用することができる。
図16は、図14に示す数値制御装置3aに関する学習装置50の構成の一例を示す図である。学習装置50は、例えば、図14に示す数値制御装置3aが備えてもよいし、数値制御装置3aと異なる情報処理装置であってもよい。学習装置50は、学習用データ取得部51とモデル生成部52とを有する。
学習用データ取得部51は、指令生成部31aが生成した運転指令と、運転指令に対応するプロセス情報、つまり、運転指令を工作機械2に与えた場合のシミュレーション結果を示すプロセス情報とを学習用データとして取得する。学習用データ取得部51は、取得した学習用データをモデル生成部52に出力することができる。なお、学習用データ取得部51は、プロセス情報の全てを取得してもよいし、プロセス情報の一部を取得してもよい。例えば、学習用データ取得部51は、プロセス情報のうち、加工誤差の大きさを示すパラメータを学習用データとして取得することができる。例えば学習用データ取得部51は、加工対象物Wの切り取り厚さ、或いは、加工対象物Wの切り取り厚さの振動成分の振幅または位相を学習用データとして取得することができる。
モデル生成部52は、運転指令と、運転指令を工作機械2に与えた場合のシミュレーション結果を示すプロセス情報とを含む学習用データに基づいて、新たな修正運転指令を学習する。すなわち、モデル生成部52は、数値制御装置3aのプロセス情報から新たな修正運転指令を推論するための学習済モデルを生成する。モデル生成部52は、生成した学習済モデルを学習済モデル記憶部53に出力する。
モデル生成部52が用いる学習アルゴリズムは教師あり学習、教師なし学習、強化学習(Reinforcement Learning)等の公知のアルゴリズムを用いることができる。一例として、強化学習を適用した場合について説明する。強化学習では、ある環境内における行動主体であるエージェントが、現在の状態を示す環境のパラメータを観測し、取るべき行動を決定する。エージェントの行動により環境が動的に変化し、エージェントには環境の変化に応じて報酬が与えられる。エージェントはこれを繰り返し、一連の行動を通じて報酬が最も多く得られる行動方針を学習する。強化学習の代表的な手法として、Q学習(Q-Learning)やTD学習(TD-Learning)が知られている。例えば、Q学習の場合、行動価値関数Q(s,a)の一般的な更新式は以下の数式(4)で表される。
Figure 0007224541000004
数式(4)において、stは時刻tにおける環境の状態を表し、atは時刻tにおける行動を表す。行動atにより、状態はst+1に変わる。rt+1はその状態の変化によってもらえる報酬を表し、γは割引率を表し、αは学習係数を表す。なお、γは0<γ≦1、αは0<α≦1の範囲の値をとる。修正運転指令が行動atとなり、プロセス情報が状態stとなり、学習装置50は、時刻tの状態における最良の行動atを学習する。
数式(4)で表される更新式は、時刻t+1における最もQ値の高い行動aの行動価値Qが、時刻tにおいて実行された行動aの行動価値Qよりも大きければ、行動価値Qを大きくし、逆の場合は、行動価値Qを小さくする。換言すれば、時刻tにおける行動aの行動価値Qを、時刻t+1における最良の行動価値に近づけるように、行動価値関数Q(S,a)を更新する。それにより、ある環境における最良の行動価値Qが、それ以前の環境における行動価値Qに順次伝搬していくようになる。
上記のように、強化学習によって学習済モデルを生成する場合、モデル生成部52は、報酬計算部54と、関数更新部55とを備えている。
報酬計算部54は、運転指令と、プロセス情報とに基づいて報酬を計算する。報酬計算部54は、報酬増大基準D1および報酬減少基準D2を含む報酬基準Dに基づいて、報酬rを計算する。例えば、報酬基準Dは、プロセス情報が示す、加工誤差の大きさに基づいて定められる。加工誤差の大きさを示すパラメータとしては、例えば、加工対象物Wの切り取り厚さの振動成分の振幅が用いられる。例えば、報酬増大基準D1は、加工対象物Wの切り取り厚さの振動成分の振幅が閾値未満であることとし、報酬減少基準D2は、加工対象物Wの切り取り厚さの振動成分の振幅が閾値以上であることとすることができる。報酬計算部54は、報酬増大基準D1を満たす場合、例えば「+1」の報酬を与えることで、報酬rを増大させ、報酬減少基準D2を満たす場合、例えば「-1」の報酬を与えることで、報酬rを減少させる。報酬計算部54は、計算した報酬rを関数更新部55に出力する。また、別の例として、加工誤差の大きさを示すパラメータとしては、切りくず厚さの振動成分の振幅の他に、加工対象物Wの切り取り厚さの振動成分の位相を用いることもできる。ここで切り取り厚さの振動成分の位相とは、工具23の刃先が加工対象物Wを切り取り始める瞬間に切りくず形状に重畳する振動の位相である。この場合、報酬増大基準D1は加工対象物Wの切り取り厚さの振動成分の位相が予め定められた範囲内の値であることとし、報酬減少基準D2は加工対象物Wの切り取り厚さの振動成分の位相が上記の範囲外の値であることとすることができる。
関数更新部55は、報酬計算部54によって計算される報酬rに従って、修正運転指令を決定するための関数を更新し、学習済モデル記憶部53に出力する。例えばQ学習の場合、数式(4)で表される行動価値関数Q(st,at)を、修正運転指令を算出するための関数として用いる。
以上のような学習を繰り返し実行する。学習済モデル記憶部53は、関数更新部55によって更新された行動価値関数Q(st,at)、すなわち、学習済モデルを記憶する。
次に、図17を用いて、学習装置50が学習する処理について説明する。図17は、図16に示す学習装置50の学習処理を説明するためのフローチャートである。
学習用データ取得部51は、指令生成部31aが生成した運転指令と、運転指令を工作機械2に与えた場合のシミュレーション結果を示すプロセス情報とを学習用データとして取得する(ステップS301)。
モデル生成部52は、学習用データ取得部51が取得した学習用データに含まれる運転指令と、プロセス情報とに基づいて、報酬rを計算する(ステップS302)。具体的には、報酬計算部54は、運転指令およびプロセス情報を取得し、予め定められた報酬基準Dに基づいて報酬rを増加させるかまたは報酬rを減少させるかを判断する(ステップS303)。
報酬計算部54は、報酬rを増大させると判断した場合(ステップS303:増大)、報酬rを増大させる(ステップS304)。報酬計算部54は、報酬rを減少させると判断した場合(ステップS303:減少)、報酬rを減少させる(ステップS305)。
関数更新部55は、報酬計算部54によって計算された報酬rに基づいて、学習済モデル記憶部53が記憶する行動価値関数Q(st,at)を更新する(ステップS306)。
学習装置50は、以上のステップS301からステップS306までの処理を繰り返し実行し、生成された行動価値関数Q(st,at)を学習済モデルとして記憶する。
なお、図16では学習済モデル記憶部53は、学習装置50の外部に備わることとしたが、学習装置50が学習済モデル記憶部53を内部に備えていてもよい。なお、学習装置50が数値制御装置3aに備わっている場合、学習済モデル記憶部53は、記憶部32aと同一の記憶装置に備わっていてもよいし、別の記憶装置に備わっていてもよい。
図18は、図14に示す数値制御装置3aに関する推論装置60の構成の一例を示す図である。推論装置60は、データ取得部61と、推論部62とを有する。推論装置60は、数値制御装置3aに備わっていてもよいし、数値制御装置3aと異なる情報処理装置であってもよい。推論装置60は、例えば数値制御装置3aの指令生成部31aに備わる。
データ取得部61は、連成シミュレーション部33aが出力するプロセス情報を取得する。データ取得部61は、取得したデータを推論部62に出力する。
推論部62は、学習済モデル記憶部53に記憶された学習済モデルを利用して、データ取得部61が取得したプロセス情報から新たな修正運転指令を推論する。すなわち、推論部62は、学習済モデルにデータ取得部61が出力するプロセス情報を入力することで、プロセス情報に適した修正運転指令を推論することができる。
なお、上記では、推論装置60は、数値制御装置3aから取得したデータを用いて機械学習を行った結果の学習済モデルを用いて修正運転指令を出力することとしたが、他の数値制御装置3aから学習済モデルを取得して、この学習済モデルに基づいて修正運転指令を出力するようにしてもよい。
図19は、図18に示す推論装置60の動作を説明するためのフローチャートである。推論装置60のデータ取得部61は、プロセス情報を推論用のデータとして取得し(ステップS401)、取得したプロセス情報を推論部62に出力する。
推論部62は、学習済モデル記憶部53に記憶された学習済モデルに、ステップS401で取得された推論用のデータであるプロセス情報を入力する(ステップS402)。推論部62は、学習済モデルにプロセス情報を入力した結果である修正運転指令を出力する(ステップS403)。なお、数値制御装置3aの指令生成部31aは、推論部62が出力する修正運転指令を取得して、取得した修正運転指令を、連成シミュレーション部33aに出力する。
なお、上記では、推論部62は学習アルゴリズムとして強化学習を用いることとしたが、推論部62が用いる学習アルゴリズムは強化学習に限られない。推論部62は、強化学習以外にも、教師あり学習、教師なし学習、または半教師あり学習等を学習アルゴリズムとして使用することもできる。
また、モデル生成部52が用いる学習アルゴリズムとしては、特徴量そのものの抽出を学習する、深層学習(Deep Learning)を用いることもでき、他の公知の方法、例えばニューラルネットワーク、遺伝的プログラミング、機能推理プログラミング、サポートベクターマシンなどに従って機械学習を実行してもよい。
なお、学習装置50および推論装置60のそれぞれは、例えば、ネットワークを介して数値制御装置3aに接続され、この数値制御装置3aとは別個の装置であってもよい。また、学習装置50および推論装置60のそれぞれは、数値制御装置3aに内蔵されていてもよい。さらに、学習装置50および推論装置60のそれぞれは、クラウドサーバ上に存在していてもよい。
また、モデル生成部52は、複数の数値制御装置3aから取得される学習用データを用いて、修正運転指令を学習するようにしてもよい。なお、モデル生成部52は、同一のエリアで使用される複数の数値制御装置3aから学習用データを取得してもよいし、異なるエリアで独立して動作する複数の数値制御装置3aから収集される学習用データを利用して修正運転指令を学習してもよい。また、学習用データを収集する数値制御装置3aを途中で対象に追加したり、対象から除外することも可能である。さらに、ある数値制御装置3aに関して修正運転指令を学習した学習装置50を、これとは別の数値制御装置3aに適用し、当該別の数値制御装置3aに関して修正運転指令を再学習して更新するようにしてもよい。
以上説明したように、実施の形態2にかかる数値制御装置3aは、数値制御プログラム4から生成した基本運転指令と、プロセス情報を用いて基本運転指令を修正した修正運転指令とを生成し、それぞれの運転指令の評価結果に基づいて工作機械2に与える運転指令が選択される。指令生成部31aは、連成シミュレーション部33aで実行したシミュレーション結果に基づいて新たに修正運転指令を生成するため、駆動系20と機械ダイナミクスと加工プロセスMの特性に基づいた修正運転指令を生成することができる。したがって、数値制御装置3aは、効率的に加工誤差を低減することが可能になる。
また、数値制御装置3aは、修正運転指令からさらに別の修正運転指令を生成してもよい。この場合、学習装置50を用いて、機械学習により、修正運転指令およびプロセス情報を含む学習用データに基づいて、修正運転指令が学習される。数値制御装置3aは、学習装置50の学習結果である学習済モデルを用いて修正運転指令を推論する推論装置60が出力する修正運転指令を利用することができる。機械学習を用いることで、数値制御装置3aは、探索的に修正運転指令を生成することができるため、加工システム1aは、事前に運転指令を修正する規則を準備することなく、加工誤差を低減することができる修正運転指令を生成することが可能になる。
実施の形態3.
図20は、実施の形態3にかかる加工システム1bの構成を示す図である。なお、実施の形態1と同様の機能を有する構成要素は実施の形態1と同一の符号を付して重複する説明を省略する。以下、実施の形態1,2と異なる部分について主に説明する。
加工システム1bは、工作機械2bと、数値制御装置3bとを有する。工作機械2bは、主軸駆動系21と、送り駆動系22と、工具23と、テーブル24と、センサ25とを有する。
センサ25は、工作機械2bの動作中に振動を生じる構造物の振動を検知する。センサ25は、例えば、加速度センサ、力センサである。或いは、センサ25は、駆動系20のフィードバック制御のために予め駆動系20の内部に備わっているエンコーダであってもよい。センサ25は、数値制御装置3bに接続されており、センサ25が取得した信号であるセンサ信号は、数値制御装置3bに出力される。
数値制御装置3bは、指令生成部31bと、記憶部32と、連成シミュレーション部33と、プロセス評価部34と、駆動制御部35とを有する。数値制御装置3bは、センサ25の出力するセンサ信号に基づいて運転指令を生成する点が実施の形態1,2と異なる。
指令生成部31bは、実施の形態1の指令生成部31と同様に基本運転指令を生成する。さらに指令生成部31bは、センサ25が出力するセンサ信号に基づいて、基本運転指令を修正することで修正運転指令を生成することができる。具体的には、指令生成部31bは、修正運転指令を生成する際の1刃あたりの送り量または加工対象物Wの切り取り厚さをセンサ信号に基づいて決定する。例えば、センサ信号の時間波形または周波数スペクトルに対応した1刃あたりの送り量または加工対象物Wの切り取り厚さを予め学習しておき、指令生成部31bは、センサ信号が入力されたときにパターンマッチング等の機械学習手法を用いて1刃あたりの送り量または加工対象物Wの切り取り厚さを決定する。或いは、センサ信号の振幅と1刃あたりの送り量または加工対象物Wの切り取り厚さとの対応表を予め内部に記録しておき、指令生成部31bは、その対応表に基づいて1刃あたりの送り量または加工対象物Wの切り取り厚さを決定してもよい。
数値制御装置3bの動作は、修正運転指令を生成する際にセンサ信号を用いる点以外は図13に示した数値制御装置3の動作と同様であるため、ここでは詳細な説明を省略する。
なお、上記では、指令生成部31bは、センサ信号を用いて基本運転指令を修正することで修正運転指令を生成することとしたが、運転指令の修正は逐次的に行うこととしてもよい。すなわち、指令生成部31bは、センサ信号を用いて生成した修正運転指令を工作機械2bに与えたときに検出したセンサ信号を用いて、さらに修正運転指令を生成してもよい。この場合、センサ信号の振動成分の振幅または位相を評価値として強化学習などの機械学習手法を用いて、センサ信号の振動を低減する修正運転指令を探索する手法を用いることができる。
機械学習を用いる場合、例えば、図16に示した学習装置50を用いて学習済モデルを取得し、図18に示す推論装置60を用いて、学習済モデルから修正運転指令を得ることができる。この場合、上記の実施の形態2で行った説明のうち、学習用データ取得部51およびデータ取得部61が取得する「プロセス情報」を「センサ信号」と読み替えることにより、実施の形態3にかかる数値制御装置3bが用いる修正運転指令を生成する方法の説明を省略する。この場合、学習用データ取得部51が取得する運転指令は、センサ信号に対応する運転指令、具体的には、センサ信号を取得したときに工作機械2bに与えられている運転指令となる。
以上説明したように、実施の形態3にかかる数値制御装置3bは、工作機械2bがセンサ25を備え、数値制御装置3bの指令生成部31bは、センサ信号に基づいて修正運転指令を生成することができる。このため、指令生成部31bは、工作機械2bにおいて実際に発生する振動の状態に応じて運転指令を修正することが可能であり、効率的に加工誤差を低減する運転指令を生成することができる。
また、機械学習を用いて探索的に修正運転指令を生成することで、加工システム1bは、事前に運転指令の修正則を準備することなく、加工誤差を低減する修正運転指令を生成することが可能になる。
続いて、実施の形態1~3にかかる数値制御装置3,3a,3b、学習装置50、および、推論装置60のハードウェア構成について説明する。数値制御装置3,3a,3bの指令生成部31,31a,31b、連成シミュレーション部33,33a、プロセス評価部34、および、駆動制御部35と、学習装置50の学習用データ取得部51およびモデル生成部52と、推論装置60のデータ取得部61および推論部62とは、処理回路により実現される。これらの処理回路は、専用のハードウェアにより実現されてもよいし、CPU(Central Processing Unit)を用いた制御回路であってもよい。
上記の処理回路が、専用のハードウェアにより実現される場合、これらは、図21に示す処理回路90により実現される。図21は、実施の形態1~3にかかる数値制御装置3,3a,3b、学習装置50、および、推論装置60の機能を実現するための専用のハードウェアを示す図である。処理回路90は、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、またはこれらを組み合わせたものである。
上記の処理回路が、CPUを用いた制御回路で実現される場合、この制御回路は例えば図22に示す構成の制御回路91である。図22は、実施の形態1~3にかかる数値制御装置3,3a,3b、学習装置50、および、推論装置60の機能を実現するための制御回路91の構成を示す図である。図22に示すように、制御回路91は、プロセッサ92と、メモリ93とを備える。プロセッサ92は、CPUであり、演算装置、マイクロプロセッサ、マイクロコンピュータ、DSP(Digital Signal Processor)などとも呼ばれる。メモリ93は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)などの不揮発性または揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD(Digital Versatile Disk)などである。
上記の処理回路が制御回路91により実現される場合、プロセッサ92がメモリ93に記憶された、各構成要素の処理に対応するプログラムを読み出して実行することにより実現される。また、メモリ93は、プロセッサ92が実行する各処理における一時メモリとしても使用される。
なお、プロセッサ92が実行するプログラムは、記憶媒体に記憶されて提供されてもよいし、通信路を介して提供されてもよい。また、実施の形態1~3にかかる数値制御装置3,3a,3b、学習装置50、および、推論装置60の機能は、図21に示す処理回路90または図22に示す制御回路91のいずれか一方を用いて実現されてもよいし、処理回路90と制御回路91とが組み合わせて用いられてもよい。
以上の実施の形態に示した構成は、一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、実施の形態同士を組み合わせることも可能であるし、要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
1,1a,1b 加工システム、2,2b 工作機械、3,3a,3b 数値制御装置、4 数値制御プログラム、20 駆動系、21 主軸駆動系、22,22-1,22-2 送り駆動系、23 工具、24 テーブル、25 センサ、31,31a,31b 指令生成部、32,32a 記憶部、33,33a 連成シミュレーション部、34 プロセス評価部、35 駆動制御部、50 学習装置、51 学習用データ取得部、52 モデル生成部、53 学習済モデル記憶部、54 報酬計算部、55 関数更新部、60 推論装置、61 データ取得部、62 推論部、90 処理回路、91 制御回路、92 プロセッサ、93 メモリ、211 主軸モータ、212 主軸駆動機構、221,221-1,221-2 サーボモータ、222,222-1,222-2 送り駆動機構、321 加工プロセスモデル、322 ダイナミクスモデル、323 主軸駆動制御モデル、324 送り駆動制御モデル、325 加工条件情報、A1 1刃当たりの切削領域、c 送り量、Fc 切削力、Fd 外乱力、M 加工プロセス、MD1 工具側機械ダイナミクス、MD2 加工対象物側機械ダイナミクス、P1,P2 位置、R1 回転方向、r1 駆動系変位、r2 構造物変位、Tc 切削トルク、Td 外乱トルク、W 加工対象物、θ1 主軸駆動系角度、θ2 工具角度。

Claims (11)

  1. 加工対象物を加工するための工具または前記加工対象物を回転させる主軸を駆動する主軸駆動系と、前記工具および前記加工対象物の相対位置を変化させる送り軸を駆動する送り駆動系と、を含む駆動系を有する工作機械に運転指令を与えることによって、前記工作機械を制御する数値制御装置であって、
    数値制御プログラムに基づいて前記運転指令である基本運転指令を生成するとともに、前記基本運転指令を修正した前記運転指令である修正運転指令を生成する指令生成部と、
    前記基本運転指令および前記修正運転指令のそれぞれを前記工作機械に与えた場合の加工をシミュレーションした結果を示すプロセス情報を、前記駆動系の動作と、前記工作機械の動作中に振動を生じる構造物のダイナミクスとが、前記工具による前記加工対象物の加工プロセスに与える影響を含めて算出する連成シミュレーション部と、
    複数の前記運転指令のそれぞれを用いたときの前記プロセス情報を評価し、評価結果に基づいて、前記基本運転指令および前記修正運転指令の中から前記工作機械に与える前記運転指令を選択するプロセス評価部と
    を備え、
    記指令生成部は、前記プロセス情報から新たな修正運転指令を推論するために機械学習によって生成された学習済モデルを利用して、前記連成シミュレーション部が出力した前記プロセス情報から前記修正運転指令を推論する推論装置を有することを特徴とする数値制御装置。
  2. 前記連成シミュレーション部は、前記工具と前記加工対象物との間の加工特性を表す数理モデルである加工プロセスモデル、前記構造物の動特性を表す数理モデルであるダイナミクスモデル、前記主軸駆動系と前記主軸駆動系を制御する主軸駆動制御器とを表す数理モデルである主軸駆動制御モデル、および、前記送り駆動系と前記送り駆動系を制御する送り駆動制御器とを表す数理モデルである送り駆動制御モデルに対して、指定された加工条件で前記運転指令を与えたときの前記プロセス情報を算出することを特徴とする請求項1に記載の数値制御装置。
  3. 前記加工プロセスモデルと、前記ダイナミクスモデルと、前記主軸駆動制御モデルと、前記送り駆動制御モデルと、前記加工条件を表す加工条件情報と、を記憶する記憶部、
    をさらに備え、
    前記連成シミュレーション部は、前記記憶部に記憶された前記加工プロセスモデル、前記ダイナミクスモデル、前記主軸駆動制御モデル、前記送り駆動制御モデル、および、前記加工条件情報を用いて、前記プロセス情報を算出することを特徴とする請求項2に記載の数値制御装置。
  4. 前記指令生成部は、前記加工対象物に対して前記工具の移動する相対的な経路が前記基本運転指令と同一であり前記送り軸の送り量および前記加工対象物の切り取り厚さの少なくとも一方が変更された指令を前記修正運転指令として生成することを特徴とする請求項1から3のいずれか1項に記載の数値制御装置。
  5. 前記指令生成部は、前記送り量または前記加工対象物の切り取り厚さに対応して、前記基本運転指令の主軸回転速度および送り速度の少なくとも一方を変更した運転指令を前記修正運転指令とすることを特徴とする請求項4に記載の数値制御装置。
  6. 前記指令生成部は、前記基本運転指令の主軸回転速度および送り速度の少なくとも一方に、予め定められたプロファイルの変動を重畳することによって前記修正運転指令を生成することを特徴とする請求項1から5のいずれか1項に記載の数値制御装置。
  7. 前記指令生成部は、前記修正運転指令を前記工作機械に与えた場合の前記プロセス情報に基づいて、さらに修正運転指令を生成することを特徴とする請求項1から6のいずれか1項に記載の数値制御装置。
  8. 前記プロセス情報と、前記プロセス情報に対応する前記運転指令とを含む学習用データを取得する学習用データ取得部と、
    前記学習用データを用いて、前記プロセス情報から新たな修正運転指令を推論するための学習済モデルを生成するモデル生成部と、
    をさらに有することを特徴とする請求項6または7に記載の数値制御装置。
  9. 加工対象物を加工するための工具または前記加工対象物を回転させる主軸を駆動する主軸駆動系と、前記工具および前記加工対象物の相対位置を変化させる送り軸を駆動する送り駆動系とを含む駆動系を有し、数値制御プログラムに基づいて生成された運転指令に基づいて加工対象物を加工する工作機械と、
    前記工作機械に前記運転指令を与えることで前記工作機械を制御する数値制御装置と
    を備え、
    前記数値制御装置は、
    前記数値制御プログラムに基づいて前記運転指令である基本運転指令を生成するとともに、前記基本運転指令を修正した前記運転指令である修正運転指令を生成する指令生成部と、
    前記基本運転指令および前記修正運転指令のそれぞれを前記工作機械に与えた場合の加工をシミュレーションした結果を示すプロセス情報を、前記駆動系の動作と、前記工作機械の動作中に振動を生じる構造物のダイナミクスとが、前記工具による前記加工対象物の加工プロセスに与える影響を含めて算出する連成シミュレーション部と、
    複数の前記運転指令のそれぞれを用いたときの前記プロセス情報を評価し、評価結果に基づいて、前記基本運転指令および前記修正運転指令の中から前記工作機械に与える前記運転指令を選択するプロセス評価部と、
    を有し
    前記指令生成部は、
    前記プロセス情報から新たな修正運転指令を推論するために機械学習によって生成された学習済モデルを利用して、前記連成シミュレーション部が出力した前記プロセス情報から前記修正運転指令を推論する推論装置を有することを特徴とする加工システム。
  10. 加工対象物を加工するための工具または前記加工対象物を回転させる主軸を駆動する主軸駆動系と、前記工具および前記加工対象物の相対位置を変化させる送り軸を駆動する送り駆動系と、を含む駆動系を有する工作機械に運転指令を与えることによって、前記工作機械を制御する数値制御装置が実行する数値制御方法であって、
    数値制御プログラムに基づいて前記運転指令である基本運転指令を生成するステップと
    前記基本運転指令を前記工作機械に与えた場合の加工をシミュレーションした結果を示すプロセス情報を、前記駆動系の動作と、前記工作機械の動作中に振動を生じる構造物のダイナミクスとが、前記工具による前記加工対象物の加工プロセスに与える影響を含めて算出するステップと、
    前記プロセス情報から前記基本運転指令を修正した前記運転指令である修正運転指令を推論するために機械学習によって生成された学習済モデルを利用して、算出された前記プロセス情報から前記修正運転指令を推論するステップと、
    前記修正運転指令を前記工作機械に与えた場合の加工をシミュレーションした結果を示す前記プロセス情報を、前記駆動系の動作と、前記工作機械の動作中に振動を生じる構造物のダイナミクスとが、前記工具による前記加工対象物の加工プロセスに与える影響を含めて算出するステップと、
    複数の前記運転指令のそれぞれを用いたときの前記プロセス情報を評価し、評価結果に基づいて、前記基本運転指令および前記修正運転指令の中から前記工作機械に与える前記運転指令を選択するステップと、
    を含ことを特徴とする数値制御方法。
  11. 加工対象物を加工するための工具または前記加工対象物を回転させる主軸を駆動する主軸駆動系と、前記工具および前記加工対象物の相対位置を変化させる送り軸を駆動する送り駆動系と、を含む駆動系を有する工作機械に運転指令を与えることによって、前記加工対象物を加工する加工方法であって、
    数値制御プログラムに基づいて前記運転指令である基本運転指令を生成するステップと
    前記基本運転指令を前記工作機械に与えた場合の加工をシミュレーションした結果を示すプロセス情報を、前記駆動系の動作と、前記工作機械の動作中に振動を生じる構造物のダイナミクスとが、前記工具による前記加工対象物の加工プロセスに与える影響を含めて算出するステップと、
    前記プロセス情報から前記基本運転指令を修正した前記運転指令である修正運転指令を推論するために機械学習によって生成された学習済モデルを利用して、算出された前記プロセス情報から前記修正運転指令を推論するステップと、
    前記修正運転指令を前記工作機械に与えた場合の加工をシミュレーションした結果を示す前記プロセス情報を、前記駆動系の動作と、前記工作機械の動作中に振動を生じる構造物のダイナミクスとが、前記工具による前記加工対象物の加工プロセスに与える影響を含めて算出するステップと、
    複数の前記運転指令のそれぞれを用いたときの前記プロセス情報を評価し、評価結果に基づいて、前記基本運転指令および前記修正運転指令の中から前記工作機械に与える前記運転指令を選択するステップと、
    選択された前記運転指令を前記工作機械に与えるステップと、
    前記運転指令に従って前記駆動系が動作することによって、前記工具を用いて前記加工対象物を加工するステップと、
    を含ことを特徴とする加工方法。
JP2022519584A 2021-09-30 2021-09-30 数値制御装置、加工システム、数値制御方法および加工方法 Active JP7224541B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/036265 WO2023053399A1 (ja) 2021-09-30 2021-09-30 数値制御装置、加工システム、数値制御方法および加工方法

Publications (3)

Publication Number Publication Date
JP7224541B1 true JP7224541B1 (ja) 2023-02-17
JPWO2023053399A1 JPWO2023053399A1 (ja) 2023-04-06
JPWO2023053399A5 JPWO2023053399A5 (ja) 2023-09-06

Family

ID=85226236

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022519584A Active JP7224541B1 (ja) 2021-09-30 2021-09-30 数値制御装置、加工システム、数値制御方法および加工方法

Country Status (3)

Country Link
JP (1) JP7224541B1 (ja)
CN (1) CN117957088A (ja)
WO (1) WO2023053399A1 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0395605A (ja) * 1989-09-08 1991-04-22 Toshiba Mach Co Ltd Ncサーボシミュレータ
JP2001125613A (ja) * 1999-10-28 2001-05-11 Mitsubishi Electric Corp 数値制御シミュレーション装置
JP2009006447A (ja) * 2007-06-28 2009-01-15 Jtekt Corp 工作物の研削方法及び加工装置
JP2018199189A (ja) * 2017-05-26 2018-12-20 ファナック株式会社 制御装置及び機械学習装置
JP2019021235A (ja) * 2017-07-21 2019-02-07 ファナック株式会社 機械学習装置、数値制御装置、数値制御システム、及び機械学習方法
WO2019043852A1 (ja) * 2017-08-30 2019-03-07 三菱電機株式会社 数値制御システムおよびモータ制御装置
JP2019101680A (ja) * 2017-11-30 2019-06-24 三菱重工工作機械株式会社 加工シミュレーションの条件の適正化方法、加工シミュレーション装置、加工シミュレーションシステム及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6266572B1 (en) * 1996-11-07 2001-07-24 Okuma Corporation Apparatus for generating a numerical control command according to cut resistance value and cut torque value of machining simulation
JP2000084794A (ja) * 1998-09-14 2000-03-28 Makino Milling Mach Co Ltd 加工処理装置
CN103392156B (zh) * 2011-09-14 2015-03-11 株式会社捷太格特 加工控制装置以及加工控制方法
JP6606967B2 (ja) * 2014-11-07 2019-11-20 株式会社ジェイテクト 歯車加工装置及び歯車加工方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0395605A (ja) * 1989-09-08 1991-04-22 Toshiba Mach Co Ltd Ncサーボシミュレータ
JP2001125613A (ja) * 1999-10-28 2001-05-11 Mitsubishi Electric Corp 数値制御シミュレーション装置
JP2009006447A (ja) * 2007-06-28 2009-01-15 Jtekt Corp 工作物の研削方法及び加工装置
JP2018199189A (ja) * 2017-05-26 2018-12-20 ファナック株式会社 制御装置及び機械学習装置
JP2019021235A (ja) * 2017-07-21 2019-02-07 ファナック株式会社 機械学習装置、数値制御装置、数値制御システム、及び機械学習方法
WO2019043852A1 (ja) * 2017-08-30 2019-03-07 三菱電機株式会社 数値制御システムおよびモータ制御装置
JP2019101680A (ja) * 2017-11-30 2019-06-24 三菱重工工作機械株式会社 加工シミュレーションの条件の適正化方法、加工シミュレーション装置、加工シミュレーションシステム及びプログラム

Also Published As

Publication number Publication date
JPWO2023053399A1 (ja) 2023-04-06
CN117957088A (zh) 2024-04-30
WO2023053399A1 (ja) 2023-04-06

Similar Documents

Publication Publication Date Title
JP6169655B2 (ja) 工作機械、シミュレーション装置、及び機械学習器
JP6219897B2 (ja) 最適な加減速を生成する工作機械
JP6567205B1 (ja) 機械学習装置、補正パラメータ調整装置および機械学習方法
JP6077617B1 (ja) 最適な速度分布を生成する工作機械
JP7010877B2 (ja) 機械学習装置、数値制御システム及び機械学習方法
JP6748135B2 (ja) 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法
JP2020032481A (ja) ロボット制御装置、ロボット装置、ロボット制御のパラメータ調整方法、およびプログラム
JP6811908B1 (ja) 数値制御装置、機械学習装置および数値制御方法
JP6577508B2 (ja) 制御装置
JP6841852B2 (ja) 制御装置及び制御方法
JP2018077778A (ja) 数値制御装置
JP6841801B2 (ja) 機械学習装置、制御システム及び機械学習方法
JP7175403B2 (ja) 加工プログラム変換装置、数値制御装置および加工プログラムの変換方法
JP7166488B1 (ja) 数値制御装置、加工システム、数値制御方法および加工方法
US20200257252A1 (en) Machine learning device, control device, and machine learning search range setting method
JP6664561B1 (ja) 位置決め制御装置及び位置決め方法
JP7224541B1 (ja) 数値制御装置、加工システム、数値制御方法および加工方法
JP6469320B1 (ja) サーボ制御装置
JP7000371B2 (ja) 機械学習装置、制御システム及び機械学習方法
US20210302921A1 (en) Controller with neural network and improved stability
WO2022064666A1 (ja) 数値制御装置および学習装置
JP7275389B2 (ja) サーボ制御装置
WO2017195257A1 (ja) 電子制御装置、数式モデル構築方法
JP7313585B1 (ja) 駆動条件決定装置および駆動条件決定方法
JP7415100B1 (ja) パラメータ調整装置およびパラメータ調整方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220328

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220328

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20220328

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220621

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220726

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220913

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221108

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230207

R150 Certificate of patent or registration of utility model

Ref document number: 7224541

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150