JP6719684B1 - 数値制御装置 - Google Patents

数値制御装置 Download PDF

Info

Publication number
JP6719684B1
JP6719684B1 JP2019555997A JP2019555997A JP6719684B1 JP 6719684 B1 JP6719684 B1 JP 6719684B1 JP 2019555997 A JP2019555997 A JP 2019555997A JP 2019555997 A JP2019555997 A JP 2019555997A JP 6719684 B1 JP6719684 B1 JP 6719684B1
Authority
JP
Japan
Prior art keywords
error
model
processing unit
correction
fitting
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
JP2019555997A
Other languages
English (en)
Other versions
JPWO2020208783A1 (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 JP6719684B1 publication Critical patent/JP6719684B1/ja
Publication of JPWO2020208783A1 publication Critical patent/JPWO2020208783A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/401Numerical 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 measuring, e.g. calibration and initialisation, measuring workpiece for machining purposes
    • 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

Landscapes

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

Abstract

NC装置は、工具を用いてワークを加工する工作機械において工具またはワークを回転動作させる機構の駆動源であるモータを制御する。NC装置は、機構が有する回転軸の位置がずれる現象である芯振れを表すモデル関数を求めることによって、芯振れによる機械誤差の仮モデルを設定する仮モデル設定部(23)と、機構の動作を測定した結果である測定データにモデル関数をフィッティングさせることによって機械誤差のモデルである誤差モデルを求めるフィッティング処理部(24)と、誤差モデルに基づいてモータへの指令を補正する補正部と、を備える。

Description

本発明は、産業用機械を制御する数値制御装置に関する。
産業用機械である工作機械には、加工対象物であるワークまたは工具の回転角度を変化させるための機構である主軸等の駆動軸を有するものがある。かかる工作機械を制御する数値制御装置は、駆動軸を制御する。なお、以下の説明では、数値制御装置をNC(Numerical Control)装置と称することがある。特許文献1には、工作機械が有する主軸を制御するNC装置が開示されている。
特開平2−309401号公報
NC装置による駆動軸の制御において、例えば主軸は、主軸の構造に起因して、指令に従った動作と実際の動作との間に誤差を生じることがある。このように、機構が持つ構造に起因して生じる誤差は、機械誤差と称される。主軸において生じる機械誤差には、回転軸の位置が本来の位置からずれる現象である芯振れに起因する機械誤差が挙げられる。工作機械による高精度な加工を可能とするために、上記特許文献1に開示される従来のNC装置は、芯振れに起因する機械誤差を高精度に補正することが求められている。
本発明は、上記に鑑みてなされたものであって、回転軸の位置がずれることに起因する機械誤差の高精度な補正を可能とする数値制御装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明にかかる数値制御装置は、工具を用いてワークを加工する工作機械において工具またはワークを回転動作させる機構の駆動源であるモータを制御する。本発明にかかる数値制御装置は、機構が有する回転軸の位置がずれる現象である芯振れによる機械誤差を表すモデル関数を求めることによって、機械誤差の仮モデルを設定する仮モデル設定部と、機構の動作を測定した結果である測定データにモデル関数をフィッティングさせることによって機械誤差のモデルである誤差モデルを求めるフィッティング処理部と、誤差モデルに基づいてモータへの指令を補正する補正部と、を備える。
本発明にかかる数値制御装置は、回転軸の位置がずれることに起因する機械誤差の高精度な補正が可能となるという効果を奏する。
本発明の実施の形態1にかかるNC装置と、NC装置によって制御される工作機械とを示す図 図1に示すNC装置によって制御される主軸における芯振れ誤差と周期誤差とについて説明する図 図1に示すNC装置が有する芯振れ誤差処理部を示すブロック図 図1に示すNC装置によって制御される主軸のうち回転角度の検出のための構成を示す図 図1に示すNC装置によって制御される主軸における芯振れ誤差について説明する第1の図 図1に示すNC装置によって制御される主軸における芯振れ誤差について説明する第2の図 図1に示すNC装置によって制御される主軸における芯振れ誤差について説明する第3の図 図1に示すNC装置が有する表示部に表示される画面の例を示す図 本発明の実施の形態1にかかるNC装置のハードウェア構成を示すブロック図
以下に、本発明の実施の形態にかかる数値制御装置を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
図1は、本発明の実施の形態1にかかるNC装置1と、NC装置1によって制御される工作機械2とを示す図である。工作機械2は、工具を用いてワーク5を加工する。工作機械2は、ワーク5と工具との相対位置を直線運動によって変化させる直線駆動軸3と、工具またはワーク5の回転角度を回転運動によって変化させる主軸4とを有する。図1には、ワーク5を回転させる主軸4を示している。主軸4は、回転軸であるシャフト37を有する。図1では、工具の図示を省略している。
直線駆動軸3は、直線駆動軸3の駆動源であるサーボモータ32と、サーボモータ32を動作させるサーボアンプ31と、サーボモータ32の駆動によって回転するボールねじ33と、ボールねじ33の回転によってボールねじ33の中心軸に平行な軸方向へ移動する移動体34とを有する。直線駆動軸3は、ボールねじ33の回転運動を直線運動に変換する機構である。サーボアンプ31は、NC装置1から出力される軸指令にしたがってサーボモータ32を動作させる。NC装置1は、サーボアンプ31へ軸指令を出力することによって、サーボモータ32を制御する。
主軸4は、主軸4の駆動源である主軸モータ36と、主軸モータ36を動作させる主軸アンプ35とを有する。チャック38は、主軸モータ36の出力軸であるシャフト37にワーク5を固定させる。主軸4は、シャフト37に取り付けられたワーク5を回転させる機構である。主軸アンプ35は、NC装置1から出力される軸指令にしたがって主軸モータ36を動作させる。NC装置1は、主軸アンプ35へ軸指令を出力することによって、主軸モータ36を制御する。
NC装置1は、加工プログラムを取得するプログラム取得部10と、取得された加工プログラムを解析するプログラム解析部11と、プログラム解析部11による解析結果を基に軸指令を生成する軸指令生成部12とを有する。軸指令生成部12は、直線駆動軸3に対する軸指令と主軸4に対する軸指令とを生成する。軸指令生成部12は、生成された軸指令を加算器18と補正量決定部16とへ出力する。
NC装置1は、機械誤差の測定データを取得するデータ取得部13と、情報入力のための操作を受け付ける入力部14と、測定データの処理を実行するデータ処理部15と、情報を表示する表示部20とを有する。データ処理部15は、芯振れ誤差補正についてのデータ処理を担う芯振れ誤差処理部21と、周期誤差補正についてのデータ処理を担う周期誤差処理部22とを有する。芯振れ誤差処理部21と周期誤差処理部22との詳細については後述する。
主軸4の機械誤差は、測定機器によって測定される。図1では、測定機器の図示を省略している。データ取得部13は、測定機器による測定結果である測定データを取り込む。入力部14には、NC装置1のユーザの操作によって、データ処理部15における処理に関する情報が入力される。データ処理部15は、データ取得部13から取り込んだ測定データと入力部14へ入力された情報とを基に、データ処理を実行する。表示部20は、データ処理部15における処理に関する情報を表示する。
データ処理部15は、データ処理の結果である誤差データを誤差データ格納部17へ出力する。誤差データ格納部17は、誤差データを格納する。補正量決定部16は、誤差データ格納部17から読み出された誤差データを基に、機械誤差を補正するための補正量を決定する。補正量決定部16は、主軸4について、指令された回転角度とのずれを相殺するための角度である補正量を決定する。補正量決定部16は、決定された補正量を加算器18へ出力する。
加算器18は、主軸4に対する指令角度の値に、決定された補正量を加算する。補正量決定部16および加算器18は、主軸モータ36への指令を補正する補正部として機能する。加算器18は、補正量の加算を経た軸指令を駆動指令部19へ出力する。駆動指令部19は、主軸4に対する軸指令を主軸アンプ35へ出力する。なお、NC装置1は、主軸4が工具を回転させる機構である場合も、主軸4がワーク5を回転させる機構である場合と同様に、主軸4に対する軸指令を補正することができる。
NC装置1は、直線駆動軸3についても、補正量決定部16と加算器18とにより軸指令の補正を行う。実施の形態1では、直線駆動軸3に対する軸指令の補正については説明を省略する。
次に、芯振れ誤差補正と周期誤差補正とについて説明する。図2は、図1に示すNC装置1によって制御される主軸4における芯振れ誤差と周期誤差とについて説明する図である。主軸4は、チャック38、ワーク5または工具の重量の偏りに起因して、芯振れを生じる。芯振れは、シャフト37の位置が本来の位置からずれる現象である。芯振れにより、シャフト37の回転中心位置は、シャフト37の中心軸に垂直な方向においてシフトする。主軸4の芯振れによる誤差は、主軸4に生じる機械誤差の主な成分となる。上記の測定機器は、主軸4の1回転の角度範囲を複数に分割して、シャフト37の実際の回転角度と指令角度との誤差を分割点ごとに測定する。NC装置1は、測定データから得られた誤差モデルまたは測定データから得られた補間データを基に指令角度を補正する。このように、NC装置1は、主軸4について、分割点ごとの誤差の測定データを基に機械誤差を低減し得る。NC装置1は、分割点ごとの誤差の測定データを基に指令位置または指令角度を補正することにより、芯振れ誤差補正を行う。
ここで、図2に示される芯振れ誤差を表す波形の周期は、主軸4の回転周期と同期している。図2に示される芯振れ誤差の周期は、主軸4の回転周期と一致している。
主軸4に生じる機械誤差には、芯振れ誤差成分と、周期的に発生する誤差である周期誤差成分とが含まれている。主軸4の周期誤差は、主軸モータ36に取り付けられている位置検出器に起因して生じる。位置検出器は、主軸モータ36の回転角度を検出する。主軸アンプ35は、位置検出器によって検出された回転角度の値が指令位置に追従するように主軸モータ36を駆動する。図1では、主軸モータ36における位置検出器の図示を省略している。以下の説明にて、周期誤差補正とは、誤差モデルを任意の波形と定め、かつ任意の周期を定めて周期的に誤差を補正することを指すものとする。なお、図2に示すように、周期誤差は芯振れ誤差の周期よりも短い周期で振動する特性を有する。NC装置1は、主軸4について、芯振れ誤差成分についての補正である芯振れ誤差補正と周期誤差成分についての補正である周期誤差補正との併用によって、機械誤差を補正する。
データ取得部13は、主軸4について、分割点ごとにおける誤差の測定データを取得する。芯振れ誤差処理部21は、かかる測定データを基に、芯振れ誤差補正のためのデータ処理を実行する。誤差データ格納部17は、芯振れ誤差処理部21でのデータ処理によって得られた誤差モデルまたは補間データである誤差データを格納する。芯振れ誤差処理部21の詳細については後述する。
データ取得部13は、主軸4に生じる周期誤差の測定データを取得する。周期誤差処理部22は、かかる測定データを基に、周期誤差補正のためのデータ処理を実行する。周期誤差処理部22は、測定データを基に任意の周期を定めるとともに、周期的な補正のための誤差データを求める。誤差データ格納部17は、周期誤差処理部22でのデータ処理によって得られた誤差データを格納する。
補正量決定部16は、主軸4の芯振れ誤差補正と主軸4の周期誤差補正とについて、軸指令における指令位置に対応する誤差量を誤差データ格納部17から読み出す。補正量決定部16は、読み出された誤差量の値を符号反転させることによって、指令位置に対応する補正量の値を求める。補正量決定部16は、芯振れ誤差補正と周期誤差補正とについて、指令位置に対応する補正量を決定する。補正量決定部16は、主軸4について、芯振れ誤差補正のための補正量と周期誤差補正のための補正量との和を求め、求めた和を加算器18へ出力する。このようにして、NC装置1は、芯振れ誤差補正のための補正量と周期誤差補正のための補正量との和を、機械誤差を補正するための補正量に設定して、主軸4についての軸指令を補正する。
次に、芯振れ誤差処理部21について説明する。図3は、図1に示すNC装置1が有する芯振れ誤差処理部21を示すブロック図である。芯振れ誤差処理部21は、機構に生じ得る機械誤差の要因である現象を表すモデル関数を求めることによって、機械誤差の仮モデルを設定する仮モデル設定部23を有する。芯振れ誤差処理部21は、機構の動作を測定した結果である測定データにモデル関数をフィッティングさせることによって機械誤差のモデルである誤差モデルを求めるフィッティング処理部24を有する。また、芯振れ誤差処理部21は、測定データの補間処理を実行する補間処理部25を有する。
NC装置1は、機構が持つ構造を考慮した仮モデルを設定し、仮モデルのモデル関数を測定データにフィッティングさせることによって誤差モデルを求める。モデル関数の周期は、シャフト37の回転周期と同期している。NC装置1は、誤差モデルを基に、ピッチ誤差補正のための補正量を決定する。NC装置1は、誤差モデルが実際の誤差とは外れる場合、または、仮モデルの設定が困難である場合において、測定データのスプライン補間によって補正量を決定可能とする。
以下、芯振れ誤差処理部21による処理について説明する。図4は、図1に示すNC装置1によって制御される主軸4のうち回転角度の検出のための構成を示す図である。図4では、図1に示す主軸4のうちのシャフト37と位置検出器40とを示している。位置検出器40は、発光体である発光ダイオード41と、固定スリット42と、受光体であるフォトダイオード43とを有する。
フォトダイオード43は、発光ダイオード41からの光を検出する。固定スリット42は、発光ダイオード41とフォトダイオード43との間に配置されている。固定スリット42には、それぞれ光が通過可能なA相スリット45とB相スリット46とが設けられている。フォトダイオード43は、A相スリット45を通過した光とB相スリット46を通過した光とを検出する。フォトダイオード43は、A相スリット45を通過した光の検出結果を示すA相信号とB相スリット46を通過した光の検出結果を示すB相信号とを出力する。
シャフト37には、シャフト37とともに回転する回転盤44が取り付けられている。回転盤44の中心は、シャフト37の軸心に一致している。回転盤44は、シャフト37を中心に回転する。回転盤44の外周には、等間隔に並べられた複数の歯が設けられている。発光ダイオード41からの光は、歯に到達することによってフォトダイオード43への入射が遮られ、歯と歯の間を通過した場合にフォトダイオード43へ入射する。
位置検出器40は、A相信号のパルス数とB相信号のパルス数とを基に、A相スリット45およびB相スリット46の双方の前を通過した歯の数をカウントする。位置検出器40は、歯のカウント数を基に、シャフト37の回転角度を検出する。位置検出器40は、A相信号とB相信号との位相差を基に、シャフト37の回転方向を検出する。
図5は、図1に示すNC装置1によって制御される主軸4における芯振れ誤差について説明する第1の図である。図6は、図1に示すNC装置1によって制御される主軸4における芯振れ誤差について説明する第2の図である。図5および図6では、位置検出器40と回転盤44との位置関係の変化について説明する。主軸モータ36の芯振れによる機械誤差が主軸4に生じた場合に、シャフト37とともに回転盤44が移動することによって、位置検出器40と回転盤44との位置関係が変化する。
図5には、芯振れが生じていない場合における回転盤44について、回転盤44が有する複数の歯のうちの1つの歯47が位置検出器40によって検出されたときの状態を示している。点Oは、芯振れが生じていない場合における回転盤44の中心とする。
図6には、芯振れが生じた場合における回転盤44を示している。点Cは、芯振れが生じた場合における回転盤44の中心とする。図6に示す例では、芯振れによる回転盤44の移動量、すなわち点Oと点Cとの間の長さは「d」であるものとする。また、回転盤44の移動によって、回転盤44が有する複数の歯のうち、上記の歯47とは異なる1つの歯48が位置検出器40によって検出されたとする。歯47と歯48との間の角度が、主軸モータ36の芯振れによる主軸4の機械誤差である誤差Eに相当する。
図7は、図1に示すNC装置1によって制御される主軸4における芯振れ誤差について説明する第3の図である。図7では、図6に示す芯振れの現象のモデル化を例として、仮モデル設定部23に設定される仮モデルについて説明する。図7において、第1の軸であるX軸と第2の軸であるY軸とは、互いに垂直な2軸とする。X軸とY軸との原点は、点Oとする。また、図7には、回転盤44の平面形状を単純化した円51,52を表している。円51は、芯振れが生じていない場合における回転盤44を表している。円52は、芯振れが生じた場合における回転盤44を表している。また、円51,52の半径はそれぞれ「P」であるものとする。円51の中心点は、点Oに一致している。
図7では、図6と同様に、芯振れによる回転盤44の移動量は「d」である。回転盤44の中心点は、芯振れによって移動する。円52の中心である点Cは、芯振れが生じているときにおける回転盤44の中心点である。点Cは、芯振れによって、円53に沿って移動するものとする。円53は、点Oが中心であってかつ半径が「d」である円である。芯振れの現象によって、シャフト37が1回転する間に点Cが円53を1周するものとする。
円51は、次の式(1)によって表される。また、円53は、次の式(2)によって表される。
Figure 0006719684
Figure 0006719684
X軸上の点C’について、線分OC’と線分C’Cとが互いに垂直であるとして、∠COC’=θとする。ここで、θは、芯振れによって移動した中心点である点Cと点Oとを結ぶ線分OCとX軸とがなす角度である。円52は、次の式(3)によって表される。なお、円52とY軸との交点である点Aは、図6に示す歯48の位置を表している。Y>0における線分C’Cの延長線と円52との交点である点B’は、図6に示す歯47の位置を表している。
Figure 0006719684
線分CB’上の点Bについて、線分CBと線分ABとが互いに垂直であるとして、線分ABの長さは、次の式(4)によって表される。式(4)において、「AB」は線分ABの長さ、「O’C」は線分O’Cの長さ、「OC’」は線分OC’の長さをそれぞれ表すものとする。
Figure 0006719684
線分ACの長さは、円52の半径である「P」である。∠ACB=αとすると、上記の数4により、次の式(5)が成り立つ。また、式(5)により、次の式(6)が成り立つ。式(5)において、「AB」は線分ABの長さ、「AC」は線分ACの長さをそれぞれ表すものとする。
Figure 0006719684
Figure 0006719684
ここで、上記の式(6)に示す「P/d」を「P’」と置き換える。また、上記の「θ」の基準位置が未知であることを考慮し、上記の式(6)に示す「θ」を「θ+φ」と置き換える。「+φ」は、φの位相が付加されたことを表す。これらの置き換えにより、上記の式(6)は、次の式(7)のように表される。θ+φは、点Oを基準とする回転盤44の中心点の方角を示す角度の、芯振れによる変化量を表す。
Figure 0006719684
上記の式(7)に示す「α」は、上記の誤差Eに相当する角度である。式(7)は、主軸モータ36の芯振れによる主軸4の機械誤差についてのモデル関数を表す。図3に示す仮モデル設定部23は、芯振れの現象による機械誤差について、上記の式(7)に示すようなモデル関数を、仮モデルに設定する。このように、仮モデル設定部23は、芯振れの現象について、簡易的なモデル化によって仮モデルを設定することができる。
仮モデル設定部23は、ユーザによる入力操作にしたがって、仮モデルを設定するまでの処理を行う。仮モデル設定部23は、ユーザによって入力された条件値を用いて仮モデルを生成する。条件値は、上記の「P」および「d」などである。仮モデル設定部23は、NC装置1の外部の装置によって作成されたモデル関数を取得することによって、仮モデルを設定することとしても良い。なお、仮モデル設定部23は、芯振れによる点Cの軌跡を、円に限られず、楕円としても良い。仮モデル設定部23は、主軸モータ36の特性に応じて、点Cの軌跡を示す形状を適宜設定可能であっても良い。
次に、芯振れによる主軸4の機械誤差についてのモデル関数を例として、測定データへの仮モデルのフィッティングについて説明する。フィッティング処理部24は、最小二乗法によるフィッティングを行う。上記の式(7)は、「θ」、「φ」および「P’」を引数とする多変数関数である。上記の式(7)は、次の式(8)のように書き換えられる。
Figure 0006719684
主軸4の1回転の角度範囲をm分割したとして、主軸4の芯振れによる誤差についての測定データが{(θ,z);i=1,・・・,m}であったとする。「m」は2以上の整数とする。「θ」は、指令に応じた回転角度であって、分割点の1つであるi番目のポイントにおける回転角度とする。「z」は、i番目のポイントにおいて測定された誤差とする。
フィッティング処理部24は、次の式(9)に示される「J」の関数を最小化させる「φ」および「P’」を求めることにより、フィッティングを行う。
Figure 0006719684
フィッティング処理部24は、非線形最小二乗法によって、非線形の誤差モデルを求める。フィッティング処理部24によるフィッティングには、代表的な非線形最小二乗法であるガウス・ニュートン法を用いることができる。フィッティングには、ガウス・ニュートン法以外の方法を用いても良い。フィッティング処理部24は、フィッティングによって求めた誤差モデルを誤差データ格納部17へ出力する。
フィッティング処理部24は、上記の仮モデルへのフィッティングに代えて、1変数の多項式を測定データへフィッティングさせることによって誤差モデルを求めることもできる。フィッティング処理部24は、上記の式(9)によって求めた誤差モデルが実際の誤差から外れたものとなる場合に、多項式によるフィッティングによって、実際の誤差に近い誤差モデルを得られる場合がある。
多項式によるフィッティングにおいて、フィッティング処理部24は、誤差モデルを、次の式(10)によって表されるn次多項式と仮定する。式(10)は、「θ」を変数とする多項式である。「c」は、k次の項の係数を表す。「n」は2以上の整数とする。「k」は0からnの整数を表す変数とする。
Figure 0006719684
フィッティング処理部24は、次の式(11)に示される「J」の関数を最小化させる「c」を求めることによって、フィッティングを行う。
Figure 0006719684
フィッティング処理部24は、最小化させる変数である「c」が線形となることから、公知の最小二乗法によって「c」を求めることができる。フィッティング処理部24には、多項式の最高次数である「n」の値があらかじめ設定される。「n」の値は、ユーザによる入力操作によって設定されても良い。NC装置1は、仮モデルによるフィッティングに基づいた補正と多項式によるフィッティングによる補正との選択を可能とすることで、機械誤差の高精度な補正を行い得る。
フィッティング処理部24は、多項式である誤差モデルに正則化項を付加しても良い。フィッティング処理部24は、上記の式(11)に正則化項を付加することによって、次の式(12)を得ることができる。フィッティング処理部24は、式(12)に示される「J」の関数を最小化させる「c」を求めることによって、フィッティングを行う。
Figure 0006719684
上記の式(12)において、「λ」は、正則化パラメータとする。フィッティング処理部24には、あらかじめ「λ」の値が設定される。「λ」の値は、ユーザによる入力操作によって設定されても良い。上記の「n」の値が大きくなるにしたがって生じ得るオーバーフィッティングは、多項式の各係数が過大となることによって発生する。正則化項の付加は、各係数が過大となることを防ぐ効果がある。
フィッティング処理部24は、正則化項の付加によって、オーバーフィッティングを効果的に抑制することができる。これにより、フィッティング処理部24は、汎用性が高い誤差モデルを得ることができる。
次に、補間処理部25による補間処理について説明する。補間処理部25は、測定データ{(θ,z);i=1,・・・,m}のスプライン補間を行う。補間処理部25には、スプライン補間に用いられる多項式の次数があらかじめ設定される。補間処理部25には、任意の次数を設定することができる。次数は、ユーザによる入力操作によって設定されても良い。補間処理部25は、スプライン補間によって得られた補間データを誤差データ格納部17へ出力する。
NC装置1は、フィッティング処理部24によって求めた誤差モデルが実際の誤差から外れたものとなる場合、または、仮モデルの設定が困難である場合において、測定データのスプライン補間によってピッチ誤差補正を行うことができる。NC装置1は、上記の誤差モデルに基づいた補正とスプライン補間に基づいた補正との選択を可能とすることで、機械誤差の高精度な補正を行い得る。
このように、NC装置1は、フィッティング処理部24によって求めた上記の誤差モデルに基づいた補正と、補間処理部25による上記のスプライン補間に基づいた補正との一方を選択して、ピッチ誤差補正を行い得る。NC装置1は、ユーザによる入力部14への入力操作にしたがって、誤差モデルに基づいた補正とスプライン補間に基づいた補正とを選択することができる。
NC装置1は、誤差モデルに基づいた補正について、仮モデルのフィッティングによって求めた誤差モデルである第1の誤差モデルと、多項式のフィッティングによって求めた誤差モデルである第2の誤差モデルとの一方を選択可能とする。NC装置1は、ユーザによる入力部14への入力操作にしたがって、誤差モデルに基づいた補正について、第1の誤差モデルに基づいた補正と第2の誤差モデルに基づいた補正とを選択することができる。
補間処理部25は、スプライン補間とは別に、測定データの直線補間を行い得るものであっても良い。この場合、NC装置1は、補間処理の結果に基づいた補正について、スプライン補間と直線補間との一方を選択可能とする。NC装置1は、ユーザによる入力部14への入力操作にしたがって、スプライン補間に基づいた補正と直線補間に基づいた補正とを選択することができる。
以上により、NC装置1は、第1の誤差モデルに基づいた補正と、第2の誤差モデルに基づいた補正と、スプライン補間に基づいた補正と、直線補間に基づいた補正とから任意の補正を選択して、芯振れ誤差補正を行うことができる。
図8は、図1に示すNC装置1が有する表示部20に表示される画面の例を示す図である。図8において、「直線補間」は、上記の直線補間に基づいた補正形式を表す。「スプライン補間」は、上記のスプライン補間に基づいた補正形式を表す。「多項式フィッティング」は、上記の第2の誤差モデルに基づいた補正形式を表す。「仮モデルフィッティング」は、上記の第1の誤差モデルに基づいた補正形式を表す。ユーザは、表示部20の画面に表示された内容を参照して、各補正形式のうちの1つを入力部14の操作によって指定する。
芯振れ誤差処理部21は、入力操作に応じた信号を入力部14から受けると、指定された補正を行うための誤差データを誤差データ格納部17へ出力する。「直線補間」が指定された場合、誤差データ格納部17には、誤差データとして、補間処理部25による直線補間の結果である補間データが格納される。「スプライン補間」が指定された場合、誤差データ格納部17には、誤差データとして、補間処理部25によるスプライン補間の結果である補間データが格納される。
「多項式フィッティング」が指定された場合、誤差データ格納部17には、誤差データとして、第2の誤差モデルが格納される。「仮モデルフィッティング」が指定された場合、誤差データ格納部17には、誤差データとして、第1の誤差モデルが格納される。補正量決定部16は、誤差データ格納部17から読み出された誤差データを基に、芯振れ誤差補正のための補正量を決定する。これにより、NC装置1は、任意の補正を選択して、芯振れ誤差補正を行う。さらに、「多項式フィッティング」が指定された場合、NC装置1は、ユーザによる入力によって、正則化項の付加の有無を決定しても良い。
表示部20は、測定データと、誤差モデルに基づいた補正量のデータとをフィッティング処理部24から取得して、測定データと補正量のデータとを表示しても良い。補正量のデータは、誤差データの符号反転によって得られる。また、表示部20は、測定データと、補間処理に基づいた補正量のデータとを補間処理部25から取得して、測定データと補正量のデータとを表示しても良い。これにより、ユーザは、測定された誤差に対する補正の効果を補正形式ごとに確認することができる。
NC装置1は、第2の誤差モデルに基づいた誤差量について、多項式の最高次数である「n」の値を変化させる入力操作に伴って、画面に表示される誤差量の値を変化させることとしても良い。これにより、ユーザは、誤差量を確認しながら「n」の値を調整することができる。また、NC装置1は、正則化項が付加された第2の誤差モデルについて、正則化パラメータである「λ」の値を変化させる入力操作に伴って、画面に表示される誤差量の値を変化させることとしても良い。これにより、ユーザは、誤差量を確認しながら「λ」の値を調整することができる。
NC装置1は、主軸4について、芯振れ誤差補正を行った場合における指令角度と芯振れ誤差補正を行わなかった場合における指令角度とのサンプリングを行うこととしても良い。ユーザは、かかるサンプリングの結果を基に双方の指令角度の差分を確認することによって、芯振れ誤差補正による改善の効果を判断することができる。ユーザは、芯振れ誤差補正を行った場合における回転角度と芯振れ誤差補正を行わなかった場合における回転角度とを測定機器によって測定し、測定結果を基に双方の回転角度を確認しても良い。
次に、NC装置1のハードウェア構成について説明する。図1に示すNC装置1の各機能部は、実施の形態1にかかる数値制御方法を実行するためのプログラムである数値制御プログラムがハードウェアを用いて実行されることによって実現される。
図9は、本発明の実施の形態1にかかるNC装置1のハードウェア構成を示すブロック図である。NC装置1は、各種処理を実行するCPU(Central Processing Unit)61と、データ格納領域を含むRAM(Random Access Memory)62と、不揮発性メモリであるROM(Read Only Memory)63と、外部記憶装置64とを有する。また、NC装置1は、NC装置1への情報の入力のための入力インタフェース65と、入力操作を受け付ける入力デバイス66と、画面において情報を表示するディスプレイ67とを有する。図9に示す各部は、バス68を介して相互に接続されている。
CPU61は、ROM63および外部記憶装置64に記憶されているプログラムを実行する。図1に示すプログラム取得部10、プログラム解析部11、軸指令生成部12、データ処理部15、補正量決定部16、加算器18および駆動指令部19の各機能は、CPU61を使用して実現される。外部記憶装置64は、HDD(Hard Disk Drive)あるいはSSD(Solid State Drive)である。外部記憶装置64は、数値制御プログラムと、各種情報とを記憶する。図1に示す誤差データ格納部17の機能は、外部記憶装置64を使用して実現される。
ROM63には、NC装置1であるコンピュータまたはコントローラの基本となる制御のためのプログラムであるBIOS(Basic Input/Output System)あるいはUEFI(Unified Extensible Firmware Interface)といったブートローダであって、ハードウェアを制御するソフトウェアまたはプログラムが記憶されている。なお、数値制御プログラムは、ROM63に記憶されても良い。
ROM63および外部記憶装置64に記憶されているプログラムは、RAM62にロードされる。CPU61は、RAM62に数値制御プログラムを展開して各種処理を実行する。入力インタフェース65は、NC装置1の外部の装置との接続インタフェースである。図1に示すデータ取得部13の機能は、入力インタフェース65を使用して実現される。
入力デバイス66は、キーボードあるいはポインティングデバイスといった、情報入力のためのデバイスである。図1に示す入力部14の機能は、入力デバイス66を使用して実現される。ディスプレイ67は、液晶ディスプレイあるいは有機ELディスプレイといった表示装置である。図1に示す表示部20の機能は、ディスプレイ67を使用して実現される。
数値制御プログラムは、コンピュータによる読み取りが可能とされた記憶媒体に記憶されたものであっても良い。NC装置1は、記憶媒体に記憶された数値制御プログラムを外部記憶装置64へ格納しても良い。記憶媒体は、フレキシブルディスクである可搬型記憶媒体、あるいは半導体メモリであるフラッシュメモリであっても良い。数値制御プログラムは、他のコンピュータあるいはサーバ装置から通信ネットワークを介して、NC装置1となるコンピュータあるいはコントローラへインストールされても良い。
NC装置1の機能は、専用のハードウェアである処理回路によって実現されても良い。処理回路は、単一回路、複合回路、プログラム化されたプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、又はこれらの組み合わせである。NC装置1の機能は、一部を専用のハードウェアで実現し、他の一部をソフトウェアまたはファームウェアで実現するようにしても良い。
NC装置1は、工作機械2の外部の装置に限られず、工作機械2に含まれるものであっても良い。NC装置1の各機能部は、1つの装置に集約されたものに限られず、複数の装置に分散されたものであっても良い。NC装置1は、1つの装置を用いて実現されるものであっても良く、複数の装置を用いて実現されるものであっても良い。なお、NC装置1による芯振れ誤差補正の手法は、工作機械2以外の産業用機械の制御に適用されても良い。
実施の形態1によると、NC装置1は、機構に生じ得る現象を表すモデル関数を求めることによって、機構が持つ構造を考慮した仮モデルを設定して、測定データにモデル関数をフィッティングさせる。NC装置1は、仮モデルのフィッティングによって、機械誤差の高精度な補正を行うことができる。NC装置1は、分割点の数を多くすることによる補正精度の向上を図る場合と比べて、誤差の測定に要する負担を少なくすることができる。NC装置1は、仮モデルのフィッティングに基づいた補正と、多項式のフィッティングに基づいた補正と、スプライン補間に基づいた補正との選択を可能とすることで、機械誤差の高精度な補正を行い得る。以上により、NC装置1は、回転軸の位置がずれることに起因する機械誤差の高精度な補正が可能となるという効果を奏する。
本実施の形態1では、主軸4の芯振れ誤差を補正する場合について説明したが、主軸4以外の駆動軸が回転する場合の芯振れ誤差の補正においても本実施の形態1が適用できることは言うまでもない。
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
1 NC装置、2 工作機械、3 直線駆動軸、4 主軸、5 ワーク、10 プログラム取得部、11 プログラム解析部、12 軸指令生成部、13 データ取得部、14 入力部、15 データ処理部、16 補正量決定部、17 誤差データ格納部、18 加算器、19 駆動指令部、20 表示部、21 芯振れ誤差処理部、22 周期誤差処理部、23 仮モデル設定部、24 フィッティング処理部、25 補間処理部、31 サーボアンプ、32 サーボモータ、33 ボールねじ、34 移動体、35 主軸アンプ、36 主軸モータ、37 シャフト、38 チャック、40 位置検出器、41 発光ダイオード、42 固定スリット、43 フォトダイオード、44 回転盤、45 A相スリット、46 B相スリット、47,48 歯、51,52,53 円、61 CPU、62 RAM、63 ROM、64 外部記憶装置、65 入力インタフェース、66 入力デバイス、67 ディスプレイ、68 バス。

Claims (9)

  1. 工具を用いてワークを加工する工作機械において前記工具または前記ワークを回転動作させる機構の駆動源であるモータを制御する数値制御装置であって、
    前記機構が有する回転軸の位置がずれる現象である芯振れによる機械誤差を表すモデル関数を求めることによって、前記機械誤差の仮モデルを設定する仮モデル設定部と、
    前記機構の動作を測定した結果である測定データに前記モデル関数をフィッティングさせることによって前記機械誤差のモデルである誤差モデルを求めるフィッティング処理部と、
    前記誤差モデルに基づいて前記モータへの指令を補正する補正部と、
    を備えることを特徴とする数値制御装置。
  2. 前記測定データのスプライン補間を行う補間処理部を備え、
    前記補正部は、前記誤差モデルに基づいた補正と前記スプライン補間に基づいた補正とのうち選択された一方を行うことを特徴とする請求項1に記載の数値制御装置。
  3. 前記フィッティング処理部は、前記誤差モデルである第1の誤差モデルを求め、かつ、前記測定データに多項式をフィッティングさせることによって第2の誤差モデルを求め、
    前記補正部は、前記第1の誤差モデルに基づいた補正と前記第2の誤差モデルに基づいた補正とのうち選択された一方を行うことを特徴とする請求項1に記載の数値制御装置。
  4. 前記フィッティング処理部は、正則化項が付加された前記多項式を前記測定データにフィッティングさせることによって前記第2の誤差モデルを求めることを特徴とする請求項3に記載の数値制御装置。
  5. 前記測定データと、前記誤差モデルに基づいた補正量のデータとを表示する表示部を備えることを特徴とする請求項1から4のいずれか1つに記載の数値制御装置。
  6. 前記モデル関数の周期は、前記回転軸の回転周期と同期していることを特徴とする請求項1から5のいずれか1つに記載の数値制御装置。
  7. 前記回転軸に取り付けられている回転盤について、互いに垂直な2つの軸である第1の軸と第2の軸との原点に、前記芯振れが生じていないときにおける前記回転盤の中心点が一致するとして、
    前記回転盤の半径をP、および前記芯振れによって移動した前記中心点と前記原点との距離をdとして、P/d=P’が成り立ち、前記芯振れによって移動した前記中心点と前記原点とを結ぶ線分と前記第1の軸とがなす角度をθとして、前記原点を基準とする前記中心点の方角を示す角度の前記芯振れによる変化量をθ+φと表し、かつ、前記機械誤差をαとした場合において、
    記モデル関数は、以下の式(1)によって表されることを特徴とする請求項1から6のいずれか1つに記載の数値制御装置。
    Figure 0006719684
  8. nを2以上の整数として、前記フィッティング処理部は、前記誤差モデルをn次多項式と仮定し、
    mを2以上の整数、kを0からnの整数を表す変数として、前記回転軸が回転する角度範囲をm個に分割した場合における分割点の1つであるi番目のポイントについて、指令に応じた回転角度である指令角度をθ、測定された誤差をzとし、かつ、θを変数とする前記n次多項式をf(θ)、前記n次多項式におけるk次の項の係数をcとした場合において、
    前記フィッティング処理部は、次の式(2)によって表されるJを最小化させるcを求めることによって、測定された誤差に前記n次多項式をフィッティングさせることを特徴とする請求項1から7のいずれか1つに記載の数値制御装置。
    Figure 0006719684
  9. nを2以上の整数として、前記フィッティング処理部は、前記誤差モデルをn次多項式と仮定し、
    mを2以上の整数、kを0からnの整数として、前記回転軸が回転する角度範囲をm個に分割した場合における分割点の1つであるi番目のポイントについて、指令に応じた回転角度である指令角度をθ、測定された誤差をzとし、かつ、θを変数とする前記n次多項式をf(θ)、前記n次多項式におけるk次の項の係数をc、正則化パラメータをλとした場合において、
    前記フィッティング処理部は、次の式(3)によって表されるJを最小化させるcを求めることによって、測定された誤差に前記n次多項式をフィッティングさせることを特徴とする請求項8に記載の数値制御装置。
    Figure 0006719684
JP2019555997A 2019-04-11 2019-04-11 数値制御装置 Active JP6719684B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/015841 WO2020208783A1 (ja) 2019-04-11 2019-04-11 数値制御装置

Publications (2)

Publication Number Publication Date
JP6719684B1 true JP6719684B1 (ja) 2020-07-08
JPWO2020208783A1 JPWO2020208783A1 (ja) 2021-04-30

Family

ID=71402376

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019555997A Active JP6719684B1 (ja) 2019-04-11 2019-04-11 数値制御装置

Country Status (3)

Country Link
JP (1) JP6719684B1 (ja)
CN (1) CN113711143A (ja)
WO (1) WO2020208783A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002500567A (ja) * 1996-09-04 2002-01-08 ウィリー,ジョセフ ビー. 横方向の芯振れを自動的に補償するための装置と方法
WO2010143227A1 (ja) * 2009-06-10 2010-12-16 三菱電機株式会社 数値制御装置及び数値制御工作システム
WO2012057235A1 (ja) * 2010-10-27 2012-05-03 株式会社牧野フライス製作所 数値制御方法
JP2017087400A (ja) * 2015-11-17 2017-05-25 ローランドディー.ジー.株式会社 補正方法および補正装置
JP2019053598A (ja) * 2017-09-15 2019-04-04 オークマ株式会社 工作機械の数値制御装置及び数値制御方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0731532B2 (ja) * 1989-05-24 1995-04-10 オ−クマ株式会社 数値制御装置
CN102033509B (zh) * 2011-01-18 2012-10-10 上海交通大学 数控机床误差虚拟补偿***
CN105843780B (zh) * 2016-04-11 2018-06-26 西安交通大学 一种机械结构冲击载荷识别的稀疏解卷积方法
CN106774152B (zh) * 2016-10-08 2019-03-22 西南交通大学 一种数控机床位置相关几何误差项的建模方法
CN106338970B (zh) * 2016-11-17 2018-09-07 沈阳工业大学 一种五轴联动数控机床伺服***控制方法
KR102230321B1 (ko) * 2017-05-25 2021-03-19 미쓰비시덴키 가부시키가이샤 레이저 가공 장치
JP6844462B2 (ja) * 2017-07-21 2021-03-17 株式会社デンソーウェーブ 角度検出器の偏心誤差補正方法、ロボットシステム
CN109597315B (zh) * 2018-10-31 2020-08-18 华中科技大学 一种机械设备健康退化状态辨识方法、设备及***
CN109506627B (zh) * 2018-10-31 2021-05-07 中国资源卫星应用中心 一种基于rpc模型的卫星影像***误差修正方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002500567A (ja) * 1996-09-04 2002-01-08 ウィリー,ジョセフ ビー. 横方向の芯振れを自動的に補償するための装置と方法
WO2010143227A1 (ja) * 2009-06-10 2010-12-16 三菱電機株式会社 数値制御装置及び数値制御工作システム
WO2012057235A1 (ja) * 2010-10-27 2012-05-03 株式会社牧野フライス製作所 数値制御方法
JP2017087400A (ja) * 2015-11-17 2017-05-25 ローランドディー.ジー.株式会社 補正方法および補正装置
JP2019053598A (ja) * 2017-09-15 2019-04-04 オークマ株式会社 工作機械の数値制御装置及び数値制御方法

Also Published As

Publication number Publication date
WO2020208783A1 (ja) 2020-10-15
JPWO2020208783A1 (ja) 2021-04-30
CN113711143A (zh) 2021-11-26

Similar Documents

Publication Publication Date Title
CN105965505B (zh) 机器人控制方法、机器人装置、程序和记录介质
JP6143885B2 (ja) ロータリエンコーダを自己較正するための方法
AU2006336718A1 (en) Rotary encoder
JP2008129018A (ja) 位置測定装置
JP6719684B1 (ja) 数値制御装置
US9046384B2 (en) Self-calibration method for angle detector, angle detector, circumferential scale calibration device, and angle detector calibration device
US8712013B2 (en) Motion control system and X-ray measurement apparatus
JP2005180924A (ja) 歯車破損検出装置および歯車破損検出方法
JP7240387B2 (ja) 角度検出器
JP2019096219A (ja) 工作機械の制御装置
CN111412939B (zh) 用于编码器的实时校正方法及其***
US20220412782A1 (en) Calibration apparatus, calibration method, and non-transitory computer readable medium having recorded thereon calibration program
CN108927533B (zh) 旋转轴的角度校正方法以及计算机可读存储介质
CN115373433A (zh) 转台运动补偿方法、装置、设备及存储介质
TW201202879A (en) On-line compensation apparatus for feedback position of encoder and method for operating the same
WO2018092416A1 (ja) ロータリーエンコーダ信号処理装置及びロータリーエンコーダ信号処理方法
JP5300831B2 (ja) 機械角度測定装置
JPH08328629A (ja) Nc工作機械の移動位置誤差補正方法および移動位置誤差補正確認方法
CN106610277B (zh) 自动角度测量装置及其方法
US10146205B2 (en) Method for checking the positioning accuracy of a machine part that is displaceable with respect to at least one axis by means of a drive and a controller
JP6038063B2 (ja) 軌跡誤差表示装置
JP7395067B1 (ja) 機上計測装置、機上計測システムおよび機上計測方法
JP2018128350A (ja) 位置検出装置、ステージ装置、および形状測定装置
JPH01270784A (ja) モータの制御装置
WO2024009514A1 (ja) 位置検出システム、アクチュエータおよび位置検出方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191011

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20191011

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20191112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200407

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: 20200519

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200616

R150 Certificate of patent or registration of utility model

Ref document number: 6719684

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250