JP6180688B1 - 数値制御装置 - Google Patents

数値制御装置 Download PDF

Info

Publication number
JP6180688B1
JP6180688B1 JP2017516527A JP2017516527A JP6180688B1 JP 6180688 B1 JP6180688 B1 JP 6180688B1 JP 2017516527 A JP2017516527 A JP 2017516527A JP 2017516527 A JP2017516527 A JP 2017516527A JP 6180688 B1 JP6180688 B1 JP 6180688B1
Authority
JP
Japan
Prior art keywords
drive shaft
unit
movement amount
drive
speed
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
JP2017516527A
Other languages
English (en)
Other versions
JPWO2018105085A1 (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 JP6180688B1 publication Critical patent/JP6180688B1/ja
Publication of JPWO2018105085A1 publication Critical patent/JPWO2018105085A1/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/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
    • 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
    • B23Q15/007Automatic control or regulation of feed movement, cutting velocity or position of tool or work while the tool acts upon the workpiece
    • B23Q15/12Adaptive control, i.e. adjusting itself to have a performance which is optimum according to a preassigned criterion
    • 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/402Numerical 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 positioning, e.g. centring a tool relative to a hole in the workpiece, additional detection means to correct position
    • 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/416Numerical 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 of velocity, acceleration or deceleration
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37077Relative movement
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37436Prediction of displacement, relative or absolute, motion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42044Adapt model as function of difference between real and calculated position
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49176Compensation of vibration of machine base due to slide movement

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)
  • Automatic Control Of Machine Tools (AREA)

Abstract

数値制御装置(10)は、第1の駆動信号を用いて、第1の駆動軸が移動させる対象の第1の物体の第1の移動量を予測する駆動軸移動量予測部(11)と、第1の駆動信号を用いて、第1の駆動軸の駆動力に起因して生じる3次元空間での第2の物体の第2の移動量を予測する駆動対象外物体移動量予測部(12)と、第1の移動量と第2の移動量とに基づいて第1の駆動信号の補正量を算出する補正量算出部(13)と、第1の駆動信号を補正量で補正した第1の補正後駆動信号を第1の駆動軸を駆動する駆動部に出力する第1の補正信号出力部(16)と、を備える。

Description

本発明は、加工プログラムにしたがって工作機械を制御する数値制御装置に関する。
工作機械で加工を実施する際、駆動軸の動作が機械振動の原因となり、加工精度または加工面品位を悪化させる場合がある。特に、駆動軸が移動させる物体の移動方向と機械振動の振動方向とが異なる場合に、駆動軸にフィードバック制御を実施して駆動軸が移動させる物体の移動方向の誤差を抑制しても、駆動軸が移動させる物体の移動方向と方向が異なる機械振動の誤差を抑制することができない。このため、駆動軸の動作が原因で生じる振動であって、駆動軸の移動方向と異なる方向の振動について抑制する技術が提案されている。
例えば、特許文献1には、可動体と被可動体との相対位置または相対速度を、位置または速度の検出器によって検出し、可動体の位置または速度を制御するリニアモータの制御方法が開示されている。この制御方法では、重心位置伝達関数および回転量伝達関数を含むリニアモータ振動モデルと、振動補償器伝達関数と、を含むリニアモータ振動補償モデルが使用される。リニアモータ振動モデルでは、可動体の推力が入力され、可動体重心位置と、可動体の回転によって検出器に検出される変位と、が出力される。また、リニアモータ振動モデルは、動体重心位置と可動体の回転による変位の和である相対位置を出力する。振動補償器伝達関数は、可動体の回転によって検出器に検出される変位を入力とし、推力補償値を出力する。そして、推力と推力補償値との差である推力をリニアモータ振動モデルに与えることで、相対位置に現れる振動が補償される。
特開2002−165474号公報
ところで、工作機械に発生する振動の中には、ワークを移動させる際の駆動力が反力となって伝播し、ワーク以外の構造体に発生する振動が存在する。このような振動が発生すると、ワークを基準とした場合の工具の相対位置も振動的となり、加工精度または加工面品位を悪化させるという問題が生じる。
上記の特許文献1の技術では、可動体の移動と回転に起因する相対的振動のみ抑制している。そのため、可動体であるワークを移動させることで工具に駆動力が伝わり工具が振動するような場合に、工具とワークとの間の相対振動を抑制することができないという問題点があった。
本発明は、上記に鑑みてなされたものであって、ワーク以外の構造物に発生する振動を抑制することができる数値制御装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明の数値制御装置は、第1の駆動信号を用いて、第1の駆動軸が移動させる対象の第1の物体の第1の移動量を予測する第1の予測部と、第1の駆動信号を用いて、第1の駆動軸の駆動力に起因して生じる3次元空間での第2の物体の移動量のうち第1の駆動軸の移動方向と異なる方向の移動量である第2の移動量を予測する第2の予測部と、を備える。また、数値制御装置は、第1の移動量と第2の移動量とに基づいて第1の駆動信号の補正量を算出する補正量算出部と、第1の駆動信号を補正量で補正した第1の補正後駆動信号を第1の駆動軸を駆動する駆動部に出力する第1の補正信号出力部と、を備える。
本発明にかかる数値制御装置は、ワーク以外の構造物に発生する振動を抑制することができるという効果を奏する。
工作機械の構成の一例を模式的に示す図 本発明の実施の形態1にかかる数値制御装置の機能構成の一例を示すブロック図 本発明の実施の形態1にかかる駆動軸移動量予測部の機能構成の一例を模式的に示すブロック図 本発明の実施の形態1にかかる駆動対象外物体移動量予測部の機能構成の一例を模式的に示すブロック図 本発明の実施の形態1にかかる数値制御装置の振動抑制処理の手順の一例を示すフローチャート 本発明の実施の形態1にかかる駆動軸移動量予測部での処理手順の一例を示すフローチャート 本発明の実施の形態1にかかる駆動対象外物体移動量予測部での処理手順の一例を示すフローチャート 本発明の実施の形態1にかかる数値制御装置の機能構成を状態空間モデルを用いて表現したブロック図 本発明の実施の形態1による数値制御装置の機能構成を状態空間モデルを用いて表現したブロック図 図1に示される概略を有する工作機械において、水平方向にワークを移動させたときのワークを基準とした工具の相対位置について、垂直方向の振動振幅のシミュレーション結果の一例を示す図 本発明の実施の形態1にかかる数値制御装置の機能構成の他の例を模式的に示すブロック図 図11の数値制御装置の機能構成を状態空間モデルを用いて表現した図 本発明の実施の形態2にかかる数値制御装置の機能構成の一例を示すブロック図 本発明の実施の形態2にかかる数値制御装置の振動抑制処理の手順の一例を示すフローチャート 実施の形態1および2にかかる数値制御装置の機能をコンピュータで実現する場合のハードウェア構成の一例を示す図
以下に、本発明の実施の形態にかかる数値制御装置を図面に基づいて詳細に説明する。なお、これらの実施の形態によりこの発明が限定されるものではない。
実施の形態1.
図1は、工作機械の構成の一例を模式的に示す図である。工作機械1は、ベースとなるベッド2と、加工対象であるワーク3を保持し、水平方向に移動可能でまた水平面内で回転可能なワークテーブル4と、工具5を保持し、垂直方向に移動可能なヘッド6と、ベッド2に固定され、ヘッド6を支持するコラム7と、を有する。この工作機械1に数値制御装置が接続され、数値制御装置からの指示に従って、ワークテーブル4が水平方向に移動しもしくは水平面内で回転し、またはヘッド6が垂直方向に移動し、工具5によってワーク3が所望の形状に加工される。
この工作機械1において、ワークテーブル4を移動させる際の駆動力が反力となって伝播し、ワーク3以外の構造体に振動が発生する。振動が発生する構造体には、コラム7を挙げることができる。このような振動が発生すると、ワーク3を基準とした場合の工具5の相対位置が振動する。以下の実施の形態では、このような振動が発生した場合に、加工精度または加工面品位の悪化を抑制する数値制御装置について説明する。
図2は、本発明の実施の形態1にかかる数値制御装置の機能構成の一例を示すブロック図である。数値制御装置10は、ワークを加工する加工プログラムにしたがって、工作機械1の駆動軸31に駆動信号を出力する装置である。駆動軸31は、駆動部を介して図1のワークテーブル4またはヘッド6を移動させるための軸であり、並進駆動軸または回転駆動軸を含む。駆動部には、モータが含まれる。駆動軸31には、駆動対象の位置および速度を検出するエンコーダ32が接続される。
数値制御装置10は、駆動軸31の予測移動量を算出する第1の予測部である駆動軸移動量予測部11と、駆動軸31の移動に伴う駆動対象外の物体の予測移動量を算出する第2の予測部である駆動対象外物体移動量予測部12と、駆動信号の補正量を算出する補正量算出部13と、位置フィードバック補償値を算出する位置フィードバック補償部14と、速度フィードバック補償値を算出する速度フィードバック補償部15と、補正後駆動信号を算出する補正信号出力部16と、を備える。
また、数値制御装置10は、駆動信号を受け付ける駆動信号入力部51と、駆動軸31により移動させられる第1の物体の移動量の予測に用いるモデルを表現するパラメータおよび駆動軸31の移動に伴う駆動対象外の第2の物体の移動量の予測に用いるモデルを表現するパラメータを受け付ける移動量予測パラメータ入力部52と、位置および速度のフィードバックパラメータの入力を受け付けるフィードバックパラメータ入力部53と、を備える。ここで、駆動対象外の物体は、駆動軸31の移動対象となっている物体以外の工作機械1を構成する部材である。たとえば、駆動軸31がワークテーブル4を移動させるものである場合には、駆動対象外の物体は、ヘッド6、コラム7となる。
駆動軸移動量予測部11は、移動量予測パラメータ入力部52から受け取る駆動軸31の変位を予測する際に用いるモデルを表現するパラメータと、駆動信号入力部51から受け取る駆動信号と、補正量算出部13から受け取る補正量と、から予め定められたモデルを用いて、駆動軸31が移動させる対象の第1の物体の第1の移動量である駆動軸移動量を予測する。第1の物体の駆動軸移動量には、物体の位置、変位、速度、加速度、姿勢、姿勢変化、姿勢変化速度および姿勢変化加速度のうち少なくとも1つを例示することができる。なお、以下の説明では、駆動軸移動量に、駆動軸予測位置および駆動軸予測速度を用いる場合を例に挙げる。駆動軸移動量予測部11は、算出した駆動軸予測位置および駆動軸予測速度を補正量算出部13に渡し、算出した駆動軸予測位置を位置フィードバック補償部14に渡し、算出した駆動軸予測速度を速度フィードバック補償部15に渡す。
駆動対象外物体移動量予測部12は、移動量予測パラメータ入力部52から受け取る駆動対象外物体移動量を予測する際に用いるモデルを表現するパラメータと、駆動信号入力部51から受け取る駆動信号と、補正量算出部13から受け取る補正量と、から予め定められたモデルを用いて、駆動軸31の駆動力に起因して生じる3次元空間での駆動軸31が移動させる対象以外の第2の物体の第2の移動量である駆動対象外物体移動量を予測する。駆動対象外物体移動量予測部12は、算出した駆動対象外物体移動量を補正量算出部13に渡す。
なお、駆動対象外物体移動量には、ワーク3の位置を基準とした工具5の相対位置の変位である相対変位、ワーク3の位置を基準とした工具5の相対位置の速度である相対速度、ワーク3の位置を基準とした工具5の相対位置の加速度である相対加速度、ワーク3の姿勢を基準とした工具5の姿勢である相対姿勢変化、ワーク3の姿勢を基準とした工具5の姿勢変化の速度である相対姿勢変化速度、およびワーク3の姿勢を基準とした工具5の姿勢変化の加速度である相対姿勢変化加速度のいずれかを含むことが望ましい。これらの情報を使用することによって、ワーク3と工具5の間の相対的振動を抑制することが可能となる。
また、駆動対象外物体移動量を予測する際には、駆動軸31の移動方向と異なる方向の3次元空間での移動量を予測してもよい。具体的には、駆動軸31が移動させる第1の物体の移動方向と異なる方向の変位、駆動軸31が移動させる第1の物体の移動方向と異なる方向の速度、駆動軸31が移動させる第1の物体の移動方向と異なる方向の加速度、駆動軸31が移動させる第1の物体の回転中心軸と異なる方向の中心軸周りの姿勢変化、駆動軸31が移動させる第1の物体の回転中心軸と異なる方向の中心軸周りの姿勢変化速度、あるいは駆動軸31が移動させる第1の物体の回転中心軸と異なる方向の中心軸周りの姿勢変化加速度を予測してもよい。これらの情報を予測することによって、工作機械1の振動方向が駆動軸31の移動させる第1の物体の移動方向と異なる場合でも振動抑制が可能となる。
さらに、駆動対象外物体移動量予測部12は、駆動軸31に指令される駆動軸31の位置、速度、加速度および駆動力のうちの少なくとも1つを入力の一部とし、第2の物体の変位、速度、加速度、姿勢変化、姿勢変化速度もしくは姿勢変化加速度を出力の一部または内部状態の一部とする状態空間モデルにより構成される。多入力多出力のシステムを表現できる状態空間モデルを用いることで、第2の物体の振動について、駆動軸31と同じ方向の振動および駆動軸31と異なる方向の振動といった複数方向の振動を同時に抑制することができるようになる。
上述のような、ワーク3と工具5との間の3次元空間内での相対変位を表現可能な状態空間モデルを構築するには、有限要素法または動力学モデルに基づくシミュレーションが用いられる。また、事前に駆動軸31を動作させたときの相対変位を計測しておき、システム同定を行なうこともできる。なお、システム同定を行なう場合、事前に測定するときだけ追加のセンサを使用して計測し、モデルの精度を向上させることもできる。ただし、実施の形態がこれらの方法に限定されるものではない。
補正量算出部13は、駆動軸移動量予測部11から受け取る駆動軸移動量と、駆動対象外物体移動量予測部12から受け取る駆動対象外物体移動量と、から予め定められたモデルにしたがって駆動信号への補正量を算出する。この補正量の算出処理は、駆動軸31の駆動力に起因して生じる第2の物体の移動量が第1の物体に与える影響を考慮するためのものである。補正量算出部13は、算出した補正量を駆動軸移動量予測部11、駆動対象外物体移動量予測部12および補正信号出力部16に渡す。補正量の算出では、予め、駆動対象外物体移動量予測部12の持つモデルに基づき最適レギュレータの設計でフィードバックゲインを算出しておき、駆動対象外物体移動量に算出しておいたゲインを乗算することができる。ただし、実施の形態がこれに限定されるものではない。
位置フィードバック補償部14は、フィードバックパラメータ入力部53から受け取る位置フィードバック補償に用いるパラメータと、駆動軸移動量予測部11から受け取る駆動軸予測位置と、エンコーダ32から受け取るフィードバック位置と、から予め定められたモデルにしたがって、位置フィードバック補償値を算出する。位置フィードバック補償部14は、算出した位置フィードバック補償値を速度フィードバック補償部15に渡す。
速度フィードバック補償部15は、フィードバックパラメータ入力部53から受け取る速度フィードバック補償に用いるパラメータと、駆動軸移動量予測部11から受け取る駆動軸予測速度と、位置フィードバック補償部14から受け取る位置フィードバック補償値と、エンコーダ32から受け取るフィードバック速度と、から予め定められたモデルにしたがって、速度フィードバック補償値を算出する。速度フィードバック補償部15は、算出した速度フィードバック補償値を補正信号出力部16に渡す。
補正信号出力部16は、駆動信号入力部51から受け取る駆動信号と、補正量算出部13から受け取る補正量と、速度フィードバック補償部15から受け取る速度フィードバック補償値と、から補正後駆動信号を算出する。補正信号出力部16は、算出した補正後駆動信号を、駆動軸31を駆動する駆動部に渡す。
駆動信号入力部51は、駆動信号の入力を受け付け、駆動軸移動量予測部11、駆動対象外物体移動量予測部12および補正信号出力部16に駆動信号を渡す。
移動量予測パラメータ入力部52は、駆動対象外物体移動量の予測に用いるモデルを表現する駆動対象外物体移動量予測パラメータの入力を受け付ける。移動量予測パラメータ入力部52は、駆動対象外物体移動量予測パラメータを駆動対象外物体移動量予測部12に渡す。駆動対象外物体移動量予測パラメータを用いることで、工作機械1の個体差に合わせた振動抑制が可能となる。また、移動量予測パラメータ入力部52は、駆動軸移動量の予測に用いるモデルを表現する駆動軸移動量予測パラメータの入力を受け付け、駆動軸移動量予測パラメータを駆動軸移動量予測部11に渡してもよい。このように、駆動軸移動量予測パラメータを用いることで、指令との誤差を予測することができ、駆動対象外物体移動量予測パラメータのみを用いる場合に比して、より好適な効果を得ることができる。この明細書では、移動量予測パラメータ入力部52は、駆動対象外物体移動量予測パラメータを駆動対象外物体移動量予測部12に渡し、駆動軸移動量予測パラメータを駆動軸移動量予測部11に渡す場合を例に挙げる。
フィードバックパラメータ入力部53は、位置フィードバック補償に用いる位置補償パラメータと、速度フィードバック補償に用いる速度補償パラメータと、の入力を受け付ける。また、フィードバックパラメータ入力部53は、位置補償パラメータを位置フィードバック補償部14に渡し、速度補償パラメータを速度フィードバック補償部15に渡す。
駆動軸31は、補正信号出力部16から補正後駆動信号を受け取り、ワーク3または工具5を駆動し、エンコーダ32に駆動軸31の移動または回転を伝える。
エンコーダ32は、駆動軸31の動作に伴い、エンコーダ32の内部の図示しない可動部と固定部との間に生じる変位から、駆動軸31のフィードバック位置およびフィードバック速度を取得する。エンコーダ32は、フィードバック位置を位置フィードバック補償部14に渡し、フィードバック速度を速度フィードバック補償部15に渡す。
つぎに、駆動軸移動量予測部11および駆動対象外物体移動量予測部12のさらに詳細な機能構成について説明する。図3は、本発明の実施の形態1にかかる駆動軸移動量予測部の機能構成の一例を模式的に示すブロック図である。
駆動軸移動量予測部11は、駆動軸状態量の変化を算出する駆動軸状態量加算部111と、入力信号がない場合のつぎの時刻の駆動軸状態量を算出する駆動軸状態量更新部112と、駆動軸状態量の変化量およびつぎの時刻の駆動軸状態量を保持する駆動軸状態量保持部113と、駆動軸予測位置を抽出する駆動軸位置抽出部114と、駆動軸予測速度を抽出する駆動軸速度抽出部115と、を備える。
ここで、駆動軸状態量は、駆動軸移動量を予測する際に用いる物理量である。たとえば位置を予測する際には、駆動軸状態量となる位置と速度を保持しておく。次回位置の予測は、前回からの時間差に速度を掛けた値に前回位置を加算することによって行われる。また、駆動軸状態量となる位置と速度以外にさらに加速度も保持しておくことも可能である。この場合には、前回の時間から次回の時間までの間の速度の変化を加速度から算出して、算出した速度の平均を用いて次回位置を予測する。あるいは、単に駆動軸31への位置指令と速度指令をそのまま次回の位置と速度とすることもできる。ただし、実施の形態がこれらに限定されるものではない。
駆動軸状態量加算部111は、駆動信号入力部51から受け取る駆動信号と、補正量算出部13から受け取る補正量と、の差分が駆動軸状態量に与える変化量を、予め定められたモデルにしたがって算出し、駆動軸状態量保持部113に渡す。
駆動軸状態量更新部112は、駆動軸状態量保持部113から駆動軸状態量を受け取り、入力信号がない場合のつぎの時刻の駆動軸状態量を算出し、駆動軸状態量保持部113に渡す。
駆動軸状態量保持部113は、駆動軸状態量加算部111から受け取る駆動信号と補正量の差分が駆動軸状態量に与える変化量と、駆動軸状態量更新部112から受け取る入力信号がない場合のつぎの時刻の駆動軸状態量と、の和である駆動軸状態量を格納する。また、駆動軸状態量保持部113は、補正量算出部13、駆動軸位置抽出部114および駆動軸速度抽出部115に駆動軸状態量を渡す。
駆動軸位置抽出部114は、駆動軸状態量から駆動軸予測位置を抽出し、位置フィードバック補償部14に渡す。
駆動軸速度抽出部115は、駆動軸状態量から駆動軸予測速度を抽出し、速度フィードバック補償部15に渡す。
このような構成によって、駆動軸移動量予測部11は、駆動信号入力部51からの駆動信号と、補正量算出部13からの補正量と、の差分から、駆動軸状態量、駆動軸予測位置および駆動軸予測速度を予測する。そして、駆動軸状態量が補正量算出部13に出力され、駆動軸予測位置が位置フィードバック補償部14に出力され、駆動軸予測速度が速度フィードバック補償部15に出力される。
図4は、本発明の実施の形態1にかかる駆動対象外物体移動量予測部の機能構成の一例を模式的に示すブロック図である。駆動対象外物体移動量予測部12は、駆動対象外物体状態量の変化を算出する駆動対象外物体状態量加算部121と、入力信号がない場合のつぎの時刻の駆動対象外物体状態量を算出する駆動対象外物体状態量更新部122と、駆動対象外物体状態量の変化量およびつぎの時刻の駆動対象外物体状態量を保持する駆動対象外物体状態量保持部123と、を備える。
ここで、駆動対象外物体状態量は、駆動対象外物体移動量を予測する際に用いる物理量である。たとえば位置を予測する際には、駆動対象外物体状態量となる位置と速度を保持しておく。次回位置の予測は、前回からの時間差に速度を掛けた値に前回位置を加算することによって行われる。また、駆動対象外物体状態量となる位置と速度以外にさらに加速度も保持しておくことも可能である。この場合には、前回の時間から次回の時間までの間の速度の変化を加速度から算出して、算出した速度の平均を用いて次回位置を予測する。ただし、実施の形態がこれらに限定されるものではない。
駆動対象外物体状態量加算部121は、駆動信号入力部51から受け取る駆動信号と、補正量算出部13から受け取る補正量と、の差分が駆動対象外物体状態量に与える変化量を、予め定められたモデルにしたがって算出し、駆動対象外物体状態量保持部123に渡す。
駆動対象外物体状態量更新部122は、駆動対象外物体状態量保持部123から駆動対象外物体状態量を受け取り、入力信号がない場合のつぎの時刻の駆動対象外物体状態量を算出し、駆動対象外物体状態量保持部123に渡す。
駆動対象外物体状態量保持部123は、駆動対象外物体状態量加算部121から受け取る駆動信号と補正量の差分が駆動対象外物体状態量に与える変化量と、駆動対象外物体状態量更新部122から受け取る入力信号がない場合のつぎの時刻の駆動対象外物体状態量と、の和である駆動対象外物体状態量を格納する。また、駆動対象外物体状態量保持部123は、補正量算出部13に駆動対象外物体状態量を渡す。
このような構成によって、駆動対象外物体移動量予測部12は、駆動信号入力部51からの駆動信号と、補正量算出部13からの補正量と、の差分から、駆動対象外物体状態量を予測する。そして、駆動対象外物体状態量を補正量算出部13に出力する。
つぎに、実施の形態1による数値制御装置での振動抑制処理について説明する。図5は、本発明の実施の形態1にかかる数値制御装置の振動抑制処理の手順の一例を示すフローチャートである。なお、ここでは、図2の数値制御装置10の機能構成についての処理の流れを説明する。
まず、移動量予測パラメータ入力部52が、駆動軸移動量予測パラメータおよび駆動対象外物体移動量予測パラメータの入力を受け付ける。ついで、ステップS101において、駆動軸移動量予測部11および駆動対象外物体移動量予測部12は、移動量予測パラメータ入力部52から、それぞれ駆動軸移動量予測パラメータおよび駆動対象外物体移動量予測パラメータを受け取る。駆動軸移動量予測パラメータは、駆動軸移動量予測部11で駆動軸予測位置と駆動軸予測速度とを、状態空間モデルで計算するのに必要な情報である。駆動対象外物体移動量予測パラメータは、駆動対象外物体移動量予測部12で駆動対象外物体移動量を、状態空間モデルで計算するのに必要な情報である。
また、フィードバックパラメータ入力部53が、位置補償パラメータおよび速度補償パラメータの入力を受け付ける。ついで、ステップS102において、位置フィードバック補償部14および速度フィードバック補償部15は、フィードバックパラメータ入力部53から、それぞれ位置補償パラメータおよび速度補償パラメータを受け取る。
ついで、ステップS103において、駆動軸移動量予測部11は、初期の駆動軸移動量を補正量算出部13に渡す。また、ステップS104において、駆動対象外物体移動量予測部12は、初期の駆動対象外物体移動量を補正量算出部13に渡す。
その後、ステップS105において、駆動信号入力部51への駆動信号の入力があるかを確認する。駆動信号入力部51への駆動信号の入力がない場合、すなわちステップS105でNoの場合には、全体の処理を終了する。
一方、駆動信号入力部51への駆動信号の入力がある場合、すなわちステップS105でYesの場合には、ステップS106において、補正量算出部13は、駆動軸移動量と駆動対象外物体移動量とに基づき、補正量を算出する。
ついで、ステップS107において、駆動軸移動量予測部11は、駆動信号入力部51からの駆動信号と、ステップS106で算出された補正量と、に基づき、駆動軸予測位置および駆動軸予測速度を予測する。また、ステップS108において、駆動対象外物体移動量予測部12は、駆動信号と補正量とに基づき、駆動対象外物体移動量を予測する。
その後、ステップS109において、駆動軸移動量予測部11は、駆動軸予測位置を位置フィードバック補償部14に渡し、駆動軸予測速度を速度フィードバック補償部15に渡す。また、ステップS110において、駆動軸移動量予測部11は、予測した駆動軸予測位置および駆動軸予測速度を補正量算出部13に渡す。さらに、ステップS111において、駆動対象外物体移動量予測部12は、予測した駆動対象外物体移動量を補正量算出部13に渡す。これらの駆動軸予測位置、駆動軸予測速度および駆動対象外物体移動量は、つぎの駆動信号の入力の際に使用される。
ついで、ステップS112において、エンコーダ32は、駆動軸31のフィードバック情報を取得する。フィードバック情報は、フィードバック位置およびフィードバック速度を含む。その後、ステップS113において、エンコーダ32は、駆動軸31のフィードバック情報を位置フィードバック補償部14と速度フィードバック補償部15とに渡す。ここでは、エンコーダ32は、フィードバック位置を位置フィードバック補償部14に渡し、フィードバック速度を速度フィードバック補償部15に渡す。
ついで、ステップS114において、位置フィードバック補償部14は、ステップS109で受け取った駆動軸予測位置と、ステップS113で受け取ったフィードバック位置と、ステップS102で受け取った位置補償パラメータと、に基づき、位置フィードバック補償値を算出する。そして、位置フィードバック補償部14は、位置フィードバック補償値を速度フィードバック補償部15に渡す。
その後、ステップS115において、速度フィードバック補償部15は、ステップS109で受け取った駆動軸予測速度と、ステップS113で受け取ったフィードバック速度と、ステップS114で受け取った位置フィードバック補償値と、ステップS102で受け取った速度補償パラメータとに基づき、速度フィードバック補償値を算出する。そして、速度フィードバック補償部15は、速度フィードバック補償値を補正信号出力部16に渡す。
ついで、補正信号出力部16は、駆動信号入力部51からの駆動信号から、補正量算出部13で算出された補正量を減算し、さらに速度フィードバック補償部15で算出された速度フィードバック補償値を加算して、補正後駆動信号を算出する。そして、ステップS116において、補正信号出力部16は、補正後駆動信号を駆動軸31に渡す。その後は、ステップS105まで戻り、駆動信号が入力される間、ステップS106からステップS116までの処理が繰り返される。
ここで、駆動軸移動量予測部11での処理の詳細について説明する。図6は、本発明の実施の形態1にかかる駆動軸移動量予測部での処理手順の一例を示すフローチャートである。ここでは、図3の駆動軸移動量予測部11の機能構成にしたがって処理を説明する。
まず、ステップS131において、駆動軸状態量加算部111、駆動軸状態量更新部112および駆動軸状態量保持部113は、移動量予測パラメータ入力部52から、駆動軸移動量予測パラメータを受け取る。ついで、ステップS132で、駆動軸状態量保持部113は、駆動軸状態量の初期値を補正量算出部13に渡す。
その後、ステップS133において、駆動信号入力部51への駆動信号の入力があるかを確認する。駆動信号入力部51への駆動信号の入力がない場合、すなわちステップS133でNoの場合には、全体の処理を終了する。
一方、駆動信号入力部51への駆動信号の入力がある場合、すなわちステップS133でYesの場合には、ステップS134において、駆動軸状態量加算部111は、駆動信号入力部51からの駆動信号と、補正量算出部13からの補正量と、を受け取り、駆動信号から補正量を減算した信号に起因する駆動軸状態量の変化量を算出する。このとき、ステップS131で受け取った駆動軸移動量予測パラメータが使用される。
ついで、ステップS135において、駆動軸状態量更新部112は、駆動軸状態量保持部113から駆動軸状態量を受け取り、入力信号がない場合のつぎの時刻の駆動軸状態量の更新値を算出する。このとき、ステップS131で受け取った駆動軸移動量予測パラメータが使用される。
ステップS136において、駆動軸状態量保持部113は、駆動軸状態量の変化量と入力信号がない場合のつぎの時刻の駆動軸状態量の更新値との和である駆動軸状態量を格納する。また、駆動軸状態量保持部113は、駆動軸位置抽出部114および駆動軸速度抽出部115に駆動軸状態量の更新値を渡す。
その後、ステップS137において、駆動軸位置抽出部114は、駆動軸状態量から駆動軸予測位置を抽出し、位置フィードバック補償部14に渡す。また、ステップS138において、駆動軸速度抽出部115は、駆動軸状態量から駆動軸予測速度を抽出し、速度フィードバック補償部15に渡す。さらに、ステップS139において、駆動軸状態量保持部113は、駆動軸状態量を補正量算出部13に渡す。以上によって、駆動軸移動量予測部11での処理が終了する。
つぎに、駆動対象外物体移動量予測部12での処理の詳細について説明する。図7は、本発明の実施の形態1にかかる駆動対象外物体移動量予測部での処理手順の一例を示すフローチャートである。ここでは、図4の駆動対象外物体移動量予測部12の機能構成にしたがって処理を説明する。
まず、ステップS151において、駆動対象外物体状態量加算部121、駆動対象外物体状態量更新部122および駆動対象外物体状態量保持部123は、移動量予測パラメータ入力部52から、駆動対象外物体状態量予測パラメータを受け取る。ついで、ステップS152で、駆動対象外物体状態量保持部123は、駆動対象外物体状態量の初期値を補正量算出部13に渡す。
その後、ステップS153において、駆動信号入力部51への駆動信号の入力があるかを確認する。駆動信号入力部51への駆動信号の入力がない場合、すなわちステップS153でNoの場合には、全体の処理を終了する。
一方、駆動信号入力部51への駆動信号の入力がある場合、すなわちステップS153でYesの場合には、ステップS154において、駆動対象外物体状態量加算部121は、駆動信号入力部51からの駆動信号と、補正量算出部13からの補正量と、を受け取り、駆動信号から補正量を減算した信号に起因する駆動対象外物体状態量の変化量を算出する。このとき、ステップS151で受け取った駆動対象外物体状態量予測パラメータが使用される。
ついで、ステップS155において、駆動対象外物体状態量更新部122は、駆動対象外物体状態量保持部123から駆動対象外物体状態量を受け取り、入力信号がない場合のつぎの時刻の駆動対象外物体状態量の更新値を算出する。
ステップS156において、駆動対象外物体状態量保持部123は、駆動対象外物体状態量の変化量と入力信号がない場合のつぎの時刻の駆動対象外物体状態量の更新値との和である駆動対象外物体状態量を格納する。
その後、ステップS157において、駆動対象外物体状態量保持部123が、駆動対象外物体状態量を補正量算出部13に渡す。以上によって、駆動対象外物体移動量予測部12での処理が終了する。
以下に、本実施の形態での振動抑制処理の効果について説明する。図8は、本発明の実施の形態1にかかる数値制御装置の機能構成を状態空間モデルを用いて表現したブロック図である。図8では、図2の移動量予測パラメータ入力部52とフィードバックパラメータ入力部53とが省略されている。また、駆動軸移動量予測部11については、図3に示す内部構成要素が状態空間モデルで表現され、駆動対象外物体移動量予測部12については、図4に示す内部構成要素が状態空間モデルで表現される。さらに、駆動軸31と工具とワークとの相互作用60を補正信号出力部16からの補正信号の出力先に表現している。相互作用60は、状態空間モデルAm1,Bm1,Am2,Bm2で表現される。また、エンコーダ32による位置の検出をCpm1で表現し、エンコーダ32による速度の検出をCvm1で表現している。
なお、図8において、図2から図4で説明した構成要素に相当する要素には、同一の符号が付されている。また、Am1およびBm1は、駆動力と駆動軸31の動作の関係を状態空間モデルで表現したものであり、Am2およびBm2は、駆動軸31の駆動力に起因する工具の変位とワークの変位との差分である相対変位と駆動力の関係を状態空間モデルで表現したものである。
さらに、図8中で、信号x1(ti)は、時刻ti(i=1,2)での駆動軸状態量であり、信号x2(ti)は、時刻tiでの駆動対象外物体状態量である。信号uは、駆動信号であり、信号pは、駆動軸予測位置であり、信号vは、駆動軸予測速度であり、信号umは、補正信号出力部16が出力する補正後駆動信号である。信号xm1(ti)は、時刻tiでの駆動軸31の内部状態量であり、信号xm2(ti)は、時刻tiでの工具の変位とワークの変位との差分である相対変位の状態量である。信号pmは、エンコーダ32で検出される駆動軸位置であり、信号vmは、エンコーダ32で検出される駆動軸速度である。
図8中の信号線で伝達される各信号には以下の(1)式から(4)式の関係がある。
x1(t2)=A1・x1(t1)+B1・u ・・・(1)
x2(t2)=A2・x2(t1)+B2・u ・・・(2)
p=Cp1・x1(t1) ・・・(3)
v=Cv1・x1(t1) ・・・(4)
ここで、(5)式から(9)式とおくことによって、(1)式から(4)式は、(10)式から(12)式の形式にまとめることができる。
Figure 0006180688
Figure 0006180688
Figure 0006180688
Cp=(Cp1 0) ・・・(8)
Cv=(Cv1 0) ・・・(9)
x(t2)=A・x(t1)+B・u ・・・(10)
p=Cp・x(t1) ・・・(11)
v=Cv・x(t1) ・・・(12)
図9は、本発明の実施の形態1による数値制御装置の機能構成を状態空間モデルを用いて表現したブロック図である。図9は、(10)式から(12)式の結果に従って、図8と本質的に等価な構成を表現したものである。図9は、図8に比して効果を分かりやすくするための図である。図9では、図8の駆動軸状態量加算部111と駆動対象外物体状態量加算部121とが、状態量加算部111aと表現され、駆動軸状態量更新部112と駆動対象外物体状態量更新部122とが、状態量更新部112aと表現され、駆動軸状態量保持部113と駆動対象外物体状態量保持部123とが、状態量保持部113aと表現される。また、駆動軸31と工具とワークとの相互作用60においては、状態空間モデルAm1,Am2が状態空間モデルAmと表現され、状態空間モデルBm1,Bm2が状態空間モデルBmと表現される。
図9において、駆動軸移動量予測部11および駆動対象外物体移動量予測部12の内部状態量は、次式(13)で表現される。
x(t2)=A・x(t1)+B{u−K・x(t1)}
=(A−B・K)・x(t1)+B・u ・・・(13)
また、駆動軸31と工具とワークの状態量xm(t2)は、以下の式展開によって、(14)式のように変形できる。
p=Cp・x(t1)
v=Cv・x(t1)
pm=Cpm・xm(t1)
vm=Cvm・xm(t1)
um=u−K・x(t1)+Kv{v−vm+Kp(p−pm)}
=u−K・x(t1)+Kv(v−vm)+Kv・Kp(p−pm)
=u−K・x(t1)+Kv{Cv・x(t1)−Cvm・xm(t1)}+Kv・Kp{Cp・x(t1)−Cpm・xm(t1)}
xm(t2)=Am・xm(t1)+Bm・um
=Am xm(t1)+Bm・[u−K・x(t1)+Kv{Cv・x(t1)−Cvm・xm(t1)}+Kv・Kp{Cp・x(t1)−Cpm・xm(t1)}]
={Am・xm(t1)−Bm・K・x(t1)}+Bm・u+Bm[Kv{Cv・x(t1)−Cvm・xm(t1)}+Kv・Kp{Cp・x(t1)−Cpm・xm(t1)}] ・・・(14)
ここで、駆動軸移動量予測部11および駆動対象外物体移動量予測部12の状態空間モデルが、対象とする駆動軸31と工具とワークの状態空間モデルを十分近似できていたとすると、以下の(15)式から(17)式が成立する。その結果、(14)式は、以下の(18)式で表されることになる。
Cv・x(t1)−Cvm・xm(t1)→0 ・・・(15)
Cp・x(t1)−Cpm・xm(t1)→0 ・・・(16)
{Am・xm(t1)−Bm・K・x(t1)}+Bm・u→{A・x(t1)−B・K・x(t1)}+B・u ・・・(17)
xm(t2)→{A・x(t1)−B・K・x(t1)}+B・u(=x(t2)) ・・・(18)
これは、駆動軸移動量予測部11および駆動対象外物体移動量予測部12の内部状態量が、駆動軸31と工具とワークの相互関係を精度よく反映していることを意味し、(13)式で駆動軸移動量予測部11および駆動対象外物体移動量予測部12の内部状態量に適用される制御則が、(18)式に示されるように、駆動軸31と工具とワークの相互関係に反映されることとなる。つまり、駆動軸移動量予測部11および駆動対象外物体移動量予測部12の内部状態量に対して、駆動対象外物体の振動を抑制する制御則を適用すれば、実際の駆動軸31と工具とワークの相互関係においても、工具とワークの相対的な振動が抑制可能となる。
図10は、図1に示される概略を有する工作機械において、水平方向にワークを移動させたときのワークを基準とした工具の相対位置について、垂直方向の振動振幅のシミュレーション結果の一例を示す図である。この図において、横軸は時間を示し、縦軸は相対振動を示している。この図の曲線L1は、本実施の形態が適用される場合の垂直方向の振動振幅を示し、曲線L2は、本実施の形態が適用されない場合の垂直方向の振動振幅を示している。ここでは、ベッド2、ワーク3、ワークテーブル4、工具5、ヘッド6、コラム7のそれぞれが質量を持ち、各要素間の結合が粘性、弾性を持つ動力学モデルを構築し、このモデルに対してシミュレーションを実施した。
本実施の形態の適用がない場合には、曲線L2に示されるように、ワークを基準とした工具の相対位置について、垂直方向の振動振幅が発生している。一方、本実施の形態の適用がある場合には、曲線L1に示されるように、垂直方向の振動振幅が曲線L2に比して十分に小さくなるとともに、振動の終了時間が曲線L2に比して早まることが分かる。
なお、上述の説明では、位置フィードバック補償部14および速度フィードバック補償部15が位置および速度の比例制御であるP(Proportional)制御のみを行なっている場合を挙げたが、これに実施の形態が限定されるものではない。たとえば、電流または加速度のフィードバック制御を実施してもよく、P制御のみならず、PI(Proportional-Integral)制御またはPID(Proportional-Integral-Differential)制御を用いてもよい。
また、上記した説明では、数値制御装置10が位置フィードバック補償部14および速度フィードバック補償部15を含む構成について説明したが、本実施の形態の数値制御装置においては、位置フィードバック補償部14および速度フィードバック補償部15が含まれなくてもよい。
図11は、本発明の実施の形態1にかかる数値制御装置の機能構成の他の例を模式的に示すブロック図である。数値制御装置10は、図2の構成と比較して、位置フィードバック補償部14と速度フィードバック補償部15とが削除された構成を有する。図2と同一の構成要素には同一の符号を付して、説明を省略する。この例では、補正信号出力部16は、駆動信号入力部51から受け取った駆動信号から、補正量算出部13から出力された補正量を差し引いたものである補正後駆動信号を駆動軸31に出力する。
図12は、図11の数値制御装置の機能構成を状態空間モデルを用いて表現した図である。図12の数値制御装置10は、図9と比較して、位置フィードバック補償部14、速度フィードバック補償部15、駆動軸位置抽出部114、駆動軸速度抽出部115およびエンコーダ32が削除された構成である。
この図12において、以下の(19)式から(21)式の関係がある。
x(t2)=A・x(t1)+B{u−K・x(t1)}
=(A−B・K)・x(t1)+B・u ・・・(19)
um=u−K・x(t1) ・・・(20)
xm(t2)=Am・xm(t1)+Bm・um
=Am・xm(t1)+Bm{u−K・x(t1)}
=[Am・xm(t1)−Bm・K・x(t1)]+Bm・u ・・・(21)
また、駆動軸移動量予測部11および駆動対象外物体移動量予測部12の状態空間モデルが、対象とする駆動軸31と工具とワークの状態空間モデルを十分近似できていたとすると、以下の(22)式が成立する。その結果、(21)式は、以下の(23)式のように近似される。
[Am・xm(t1)−Bm・K・x(t1)]+Bm・u→[A・x(t1)−B・K・x(t1)]+B・u ・・・(22)
xm(t2)→[A・x(t1)−B・K・x(t1)]+B・u (=x(t2)) ・・・(23)
図11と図12に示される位置フィードバック補償部14と速度フィードバック補償部15を含まない構成においても、(19)式から(23)式によって、位置フィードバック補償部14と速度フィードバック補償部15を含む構成と同様の効果が得られる。
また、ここでは、線形な状態空間モデルを用いて説明したが、実施の形態がこれに限定されるものではなく、非線形な状態空間モデルを用いてもよい。
以上のように、実施の形態1では、駆動対象外物体移動量予測部12が、駆動軸31の動作対象でない第2の物体の変位である駆動対象外物体移動量を、状態空間モデルなどを用いて3次元空間上で予測し、補正量算出部13が、駆動対象外物体移動量と事前に最適レギュレータで決定したゲインを含む情報を用いて駆動対象外物体移動量を抑制するように補正量を算出する。これによって、ワークを移動させた際に工具が振動するような場合でも、追加の駆動軸または検出器を常設することなく、駆動軸31の移動方向と異なる方向の振動についても抑制することが可能となる。
具体的には、駆動対象外物体移動量に、ワーク位置を基準とした工具の相対変位、ワーク位置を基準とした工具の相対速度、ワーク位置を基準とした工具の相対加速度、ワーク姿勢を基準とした工具の相対姿勢変化、ワーク姿勢を基準とした工具の相対姿勢変化速度およびワーク姿勢を基準とした工具の相対姿勢変化加速度のうちの少なくとも1つを持つことで、ワークと工具の間の相対的振動を抑制することが可能となる。
また、駆動対象外物体移動量を予測する際には、駆動軸31の移動方向と異なる方向の3次元空間での変位を予測することで、工具の振動方向が駆動軸31の移動方向と異なる場合でも振動抑制が可能となる。
さらに、駆動対象外物体移動量予測部12を、駆動軸31に指令される駆動位置、駆動速度、駆動加速度および駆動力のうちの少なくとも1つを入力の一部とし、駆動対象外物体の変位、速度、加速度、姿勢変化、姿勢変化速度および姿勢変化加速度のうちの少なくとも1つを出力の一部もしくは内部状態の一部とする状態空間モデルにより構成する。状態空間モデルは複数の駆動対象外物体移動量をモデルとして保持できるので、駆動対象外物体の振動について、駆動軸31と同じ方向の振動および駆動軸31と異なる方向の振動といった複数方向の振動を同時に抑制可能となる。また、複数の物体の振動を抑制可能となる。
また、数値制御装置10に移動量予測パラメータ入力部52を備えることで、環境の変化、経年劣化あるいは機械の個体差などに応じた移動量予測パラメータを使用することができる。その結果、環境の変化、経年劣化あるいは機械の個体差などに応じた振動を抑制することが可能となる。
なお、本実施の形態では、工具を固定しワークを移動させる場合を例に挙げたが、本実施の形態がこれに限定されるものではなく、ワークを固定し工具を移動させるような場合にも、本実施の形態を適用することができる。また、本実施の形態では、工作機械1において工具でワークを加工する場合を例に記載したが、本実施の形態がこれに限定されるものではなく、ロボットのハンドで組立作業を行うような場合にも本実施の形態を適用することができる。
実施の形態2.
図13は、本発明の実施の形態2にかかる数値制御装置の機能構成の一例を示すブロック図である。数値制御装置10aには、第1の駆動軸31aと第2の駆動軸31bとが接続されている。第1の駆動軸31aには、駆動対象の位置および速度を検出する第1のエンコーダ32aが接続され、第2の駆動軸31bには、駆動対象の位置および速度を検出する第2のエンコーダ32bが接続される。
数値制御装置10aは、第1の駆動軸31aの予測移動量を算出する第1の予測部である駆動軸移動量予測部11と、第1の駆動軸31aの移動に伴う第2の物体の予測移動量を算出する第2の予測部である駆動対象外物体移動量予測部12と、第1の駆動信号の補正量を算出する補正量算出部13と、第1の位置フィードバック補償値を算出する第1の位置フィードバック補償部14aと、第1の速度フィードバック補償値を算出する第1の速度フィードバック補償部15aと、第1の補正後駆動信号を算出する第1の補正信号出力部16aと、を備える。
また、数値制御装置10aは、第1の駆動軸31aおよび第2の駆動軸31bの軌跡を算出する軌跡算出部17と、補正後の第1の駆動軸31aの移動量を算出する第1の算出部である補正後第1の駆動軸移動量算出部18と、補正後の第1の駆動軸31aの指令に対応する軌跡上位置、および軌跡上の位置に対応する第2の駆動軸31bの位置、速度および加速度を算出する第2の算出部である補正後指令位置算出部19と、第2の位置フィードバック補償値を算出する第2の位置フィードバック補償部14bと、第2の速度フィードバック補償値を算出する第2の速度フィードバック補償部15bと、第2の補正後駆動信号を算出する第2の補正信号出力部16bと、を備える。
さらに、数値制御装置10aは、第1の駆動軸31aを駆動させる第1の駆動信号を受け付ける第1の駆動信号入力部51aと、第2の駆動軸31bを駆動させる第2の駆動信号を受け付ける第2の駆動信号入力部51bと、第1の駆動軸31aの移動対象の第1の物体の移動量の予測に用いるモデルを表現するパラメータおよび第1の駆動軸31aの移動に伴う駆動対象外の第2の物体の移動量の予測に用いるモデルを表現するパラメータを受け付ける移動量予測パラメータ入力部52と、位置および速度のフィードバックパラメータの入力を受け付けるフィードバックパラメータ入力部53と、を備える。
駆動軸移動量予測部11は、移動量予測パラメータ入力部52から受け取る第1の駆動軸31aの変位を予測する際に用いるモデルを表現するパラメータと、第1の駆動信号入力部51aから受け取る第1の駆動信号と、補正量算出部13から受け取る補正量と、から予め定められたモデルを用いて、第1の物体の第1の移動量である駆動軸移動量を予測する。なお、実施の形態2でも、駆動軸移動量が、駆動軸予測位置および駆動軸予測速度である場合を例に挙げる。駆動軸移動量予測部11は、算出した駆動軸予測位置および駆動軸予測速度を補正量算出部13に渡し、算出した駆動軸予測位置を第1の位置フィードバック補償部14aに渡し、算出した駆動軸予測速度を第1の速度フィードバック補償部15aに渡す。
駆動対象外物体移動量予測部12は、移動量予測パラメータ入力部52から受け取る駆動対象外物体移動量を予測する際に用いるモデルを表現するパラメータと、第1の駆動信号入力部51aから受け取る第1の駆動信号と、補正量算出部13から受け取る補正量と、から予め定められたモデルを用いて、第2の移動量である駆動対象外物体移動量を予測する。駆動対象外物体移動量予測部12は、算出した駆動対象外物体移動量を補正量算出部13に渡す。
補正量算出部13は、駆動軸移動量予測部11から受け取る駆動軸移動量と、駆動対象外物体移動量予測部12から受け取る駆動対象外物体移動量と、から予め定められたモデルにしたがって駆動信号への補正量を算出する。補正量算出部13は、算出した補正量を駆動軸移動量予測部11、駆動対象外物体移動量予測部12、第1の補正信号出力部16aおよび補正後第1の駆動軸移動量算出部18に渡す。補正量の算出では、予め、駆動対象外物体移動量予測部12の持つモデルに基づき最適レギュレータの設計でフィードバックゲインを算出しておき、駆動対象外物体移動量に算出しておいたゲインを乗算することができる。ただし、実施の形態がこれに限定されるものではない。
第1の位置フィードバック補償部14aは、フィードバックパラメータ入力部53から受け取る位置フィードバック補償に用いるパラメータと、駆動軸移動量予測部11から受け取る駆動軸予測位置と、第1のエンコーダ32aから受け取る第1のフィードバック位置と、から予め定められたモデルにしたがって、第1の位置フィードバック補償値を算出する。第1の位置フィードバック補償部14aは、算出した第1の位置フィードバック補償値を第1の速度フィードバック補償部15aに渡す。
第1の速度フィードバック補償部15aは、フィードバックパラメータ入力部53から受け取る速度フィードバック補償に用いるパラメータと、駆動軸移動量予測部11から受け取る駆動軸予測速度と、第1の位置フィードバック補償部14aから受け取る第1の位置フィードバック補償値と、第1のエンコーダ32aから受け取る第1のフィードバック速度と、から予め定められたモデルにしたがって、第1の速度フィードバック補償値を算出する。第1の速度フィードバック補償部15aは、算出した第1の速度フィードバック補償値を第1の補正信号出力部16aに渡す。
第1の補正信号出力部16aは、第1の駆動信号入力部51aから受け取る第1の駆動信号と、補正量算出部13から受け取る補正量と、第1の速度フィードバック補償部15aから受け取る第1の速度フィードバック補償値と、から、第1の補正後駆動信号を算出する。第1の補正信号出力部16aは、算出した第1の補正後駆動信号を、第1の駆動軸31aを駆動する駆動部に渡す。
軌跡算出部17は、第1の駆動信号入力部51aから受け取る第1の駆動軸31aの第1の駆動信号と、第2の駆動信号入力部51bから受け取る第2の駆動軸31bの第2の駆動信号と、から予め定められたモデルにしたがって、第1の駆動軸31aおよび第2の駆動軸31bの軌跡を算出する。軌跡算出部17は、算出した軌跡を補正後指令位置算出部19に渡す。
補正後第1の駆動軸移動量算出部18は、第1の駆動信号入力部51aから受け取る第1の駆動軸31aの第1の駆動信号と、補正量算出部13から受け取る補正量と、から予め定められたモデルにしたがって、補正後の第1の駆動軸31aの移動量を算出する。補正後第1の駆動軸移動量算出部18は、算出した補正後の第1の駆動軸31aの移動量を補正後指令位置算出部19に渡す。
補正後指令位置算出部19は、軌跡算出部17から受け取る第1の駆動軸31aおよび第2の駆動軸31bの軌跡と、補正後第1の駆動軸移動量算出部18から受け取る補正後の第1の駆動軸31aの移動量と、から予め定められたモデルにしたがって、補正後の第1の駆動軸31aの指令に対応する軌跡上の位置を算出し、さらに、軌跡上の位置に対応する第2の駆動軸31bの位置、速度および加速度を算出する。補正後指令位置算出部19は、軌跡上の位置に対応する第2の駆動軸31bの位置を、第2の位置フィードバック補償部14bに渡し、軌跡上の位置に対応する第2の駆動軸31bの速度を、第2の速度フィードバック補償部15bに渡し、軌跡上の位置に対応する第2の駆動軸31bの加速度を第2の補正信号出力部16bに渡す。
第2の位置フィードバック補償部14bは、フィードバックパラメータ入力部53から受け取る位置フィードバック補償に用いるパラメータと、補正後指令位置算出部19から受け取る軌跡上の第2の駆動軸31bの位置と、第2のエンコーダ32bから受け取る第2のフィードバック位置と、から予め定められたモデルにしたがって、第2の位置フィードバック補償値を算出する。第2の位置フィードバック補償部14bは、算出した第2の位置フィードバック補償値を第2の速度フィードバック補償部15bに渡す。
第2の速度フィードバック補償部15bは、フィードバックパラメータ入力部53から受け取る速度フィードバック補償に用いるパラメータと、補正後指令位置算出部19から受け取る軌跡上の第2の駆動軸31bの速度と、第2の位置フィードバック補償部14bから受け取る第2の位置フィードバック補償値と、第2のエンコーダ32bから受け取る第2のフィードバック速度と、から予め定められたモデルにしたがって、第2の速度フィードバック補償値を算出する。第2の速度フィードバック補償部15bは、算出した第2の速度フィードバック補償値を第2の補正信号出力部16bに渡す。
第2の補正信号出力部16bは、補正後指令位置算出部19から受け取る軌跡上の位置に対応する第2の駆動軸31bの加速度と、第2の速度フィードバック補償部15bから受け取る第2の速度フィードバック補償値と、から、第2の補正後駆動信号を算出する。第2の補正信号出力部16bは、算出した第2の補正後駆動信号を、第2の駆動軸31bを駆動する駆動部に渡す。
第1の駆動信号入力部51aは、第1の駆動軸31aへの第1の駆動信号の入力を受け付け、第1の駆動信号を、駆動軸移動量予測部11、駆動対象外物体移動量予測部12、第1の補正信号出力部16a、軌跡算出部17および補正後第1の駆動軸移動量算出部18に渡す。
第2の駆動信号入力部51bは、第2の駆動軸31bへの駆動信号の入力を受け付け、第2の駆動信号を軌跡算出部17に渡す。
移動量予測パラメータ入力部52は、駆動対象外物体移動量の予測に用いるモデルを表現する駆動対象外物体移動量予測パラメータの入力を受け付ける。移動量予測パラメータ入力部52は、駆動対象外物体移動量予測パラメータを駆動対象外物体移動量予測部12に渡す。また、移動量予測パラメータ入力部52は、駆動軸移動量の予測に用いるモデルを表現する駆動軸移動量予測パラメータを受け付け、駆動軸移動量予測パラメータを駆動軸移動量予測部11に渡してもよい。
フィードバックパラメータ入力部53は、第1の駆動軸31aの位置フィードバック補償に用いる第1の位置補償パラメータと、第1の駆動軸31aの速度フィードバック補償に用いる第1の速度補償パラメータと、第2の駆動軸31bの位置フィードバック補償に用いる第2の位置補償パラメータと、第2の駆動軸31bの速度フィードバック補償に用いる第2の速度補償パラメータと、の入力を受け付ける。また、フィードバックパラメータ入力部53は、第1の位置補償パラメータを第1の位置フィードバック補償部14aに渡し、第1の速度補償パラメータを第1の速度フィードバック補償部15aに渡し、第2の位置補償パラメータを第2の位置フィードバック補償部14bに渡し、第2の速度補償パラメータを第2の速度フィードバック補償部15bに渡す。
第1の駆動軸31aおよび第2の駆動軸31bは、それぞれ第1の補正信号出力部16aから第1の補正後駆動信号および第2の補正信号出力部16bから第2の補正後駆動信号を受け取り、ワーク3または工具5を駆動する。また、第1の駆動軸31aおよび第2の駆動軸31bは、第1のエンコーダ32aに第1の駆動軸31aの移動または回転、および第2のエンコーダ32bに第2の駆動軸31bの移動または回転をそれぞれ伝える。
第1のエンコーダ32aは、第1の駆動軸31aの動作に伴い、第1のエンコーダ32aの内部の図示しない可動部と固定部との間に生じる変位から、第1の駆動軸31aの第1のフィードバック位置および第1のフィードバック速度を取得する。第1のエンコーダ32aは、第1のフィードバック位置を第1の位置フィードバック補償部14aに渡し、第1のフィードバック速度を第1の速度フィードバック補償部15aに渡す。
第2のエンコーダ32bも、同様に、第2の駆動軸31bの第2のフィードバック位置および第2のフィードバック速度を取得し、第2のフィードバック位置を第2の位置フィードバック補償部14bに渡し、第2のフィードバック速度を第2の速度フィードバック補償部15bに渡す。
なお、駆動軸移動量予測部11および駆動対象外物体移動量予測部12のさらに詳細な機能構成は、実施の形態1の図3および図4に示したものと同様である。ただし、実施の形態2では、駆動軸移動量予測部11の駆動軸状態量加算部111は、第1の駆動信号入力部51aから第1の駆動信号を受け取り、駆動軸位置抽出部114は、第1の位置フィードバック補償部14aに駆動軸予測位置を渡し、駆動軸速度抽出部115は、第1の速度フィードバック補償部15aに駆動軸予測速度を渡す。
また、実施の形態2では、駆動対象外物体移動量予測部12の駆動対象外物体状態量加算部121は、第1の駆動信号入力部51aから第1の駆動信号を受け取る。
つぎに、実施の形態2による数値制御装置での振動抑制処理について説明する。図14は、本発明の実施の形態2にかかる数値制御装置の振動抑制処理の手順の一例を示すフローチャートである。なお、ここでは、図13の数値制御装置10aの機能構成についての処理の流れを説明する。
まず、ステップS201からステップS204では、実施の形態1の図5のステップS101からステップS104の処理と同様の処理が行われる。すなわち、駆動軸移動量予測部11および駆動対象外物体移動量予測部12は、移動量予測パラメータ入力部52から、それぞれ駆動軸移動量予測パラメータおよび駆動対象外物体移動量予測パラメータを受け取る。また、第1の位置フィードバック補償部14aおよび第2の位置フィードバック補償部14bは、フィードバックパラメータ入力部53から、位置補償パラメータを受け取り、第1の速度フィードバック補償部15aおよび第2の速度フィードバック補償部15bは、フィードバックパラメータ入力部53から、速度補償パラメータを受け取る。位置補償パラメータは、第1の位置補償パラメータおよび第2の位置補償パラメータを含み、速度補償パラメータは、第1の速度補償パラメータおよび第2の速度補償パラメータを含む。ついで、駆動軸移動量予測部11は、初期の駆動軸移動量を補正量算出部13に渡し、駆動対象外物体移動量予測部12は、初期の駆動対象外物体移動量を補正量算出部13に渡す。
ついで、ステップS205において、第1の駆動信号入力部51aへの第1の駆動信号の入力があるか確認する。第1の駆動信号入力部51aへの第1の駆動信号の入力がない場合、すなわちステップS205でNoの場合には、全体の処理を終了する。
一方、第1の駆動信号入力部51aへの第1の駆動信号の入力がある場合、すなわちステップS205でYesの場合には、ステップS206において、補正量算出部13が、駆動軸移動量と駆動対象外物体移動量とに基づき、補正量を算出する。
ついで、ステップS207において、駆動軸移動量予測部11は、第1の駆動信号入力部51aからの第1の駆動信号と、ステップS206で算出された補正量と、に基づき、駆動軸予測位置および駆動軸予測速度を予測する。また、ステップS208において、駆動対象外物体移動量予測部12は、第1の駆動信号と補正量とに基づき、駆動対象外物体移動量を予測する。
その後、ステップS209において、駆動軸移動量予測部11は、駆動軸予測位置を第1の位置フィードバック補償部14aに渡し、駆動軸予測速度を第1の速度フィードバック補償部15aに渡す。また、ステップS210において、駆動軸移動量予測部11は、予測した駆動軸予測位置および駆動軸予測速度を補正量算出部13に渡す。さらに、ステップS211において、駆動対象外物体移動量予測部12は、予測した駆動対象外物体移動量を補正量算出部13に渡す。これらの駆動軸予測位置、駆動軸予測速度および駆動対象外物体移動量は、つぎの駆動信号の入力の際に使用される。
ついで、ステップS212において、第1のエンコーダ32aは、第1の駆動軸31aの第1のフィードバック情報を取得する。第1のフィードバック情報は、第1のフィードバック位置および第1のフィードバック速度を含む。その後、ステップS213において、第1のエンコーダ32aは、第1の駆動軸31aの第1のフィードバック情報を第1の位置フィードバック補償部14aと第1の速度フィードバック補償部15aとに渡す。ここでは、第1のエンコーダ32aは、第1のフィードバック位置を第1の位置フィードバック補償部14aに渡し、第1のフィードバック速度を第1の速度フィードバック補償部15aに渡す。
ついで、ステップS214において、第1の位置フィードバック補償部14aは、ステップS209で受け取った駆動軸予測位置と、ステップS213で受け取った第1のフィードバック位置と、ステップS202で受け取った第1の位置補償パラメータと、に基づき、第1の位置フィードバック補償値を算出する。そして、第1の位置フィードバック補償部14aは、第1の位置フィードバック補償値を第1の速度フィードバック補償部15aに渡す。
その後、ステップS215において、第1の速度フィードバック補償部15aは、ステップS209で受け取った駆動軸予測速度と、ステップS213で受け取った第1のフィードバック速度と、ステップS214で受け取った第1の位置フィードバック補償値と、ステップS202で受け取った第1の速度補償パラメータと、に基づき、第1の速度フィードバック補償値を算出する。そして、第1の速度フィードバック補償部15aは、第1の速度フィードバック補償値を第1の補正信号出力部16aに渡す。
ついで、第1の補正信号出力部16aは、第1の駆動信号入力部51aからの第1の駆動信号から、補正量算出部13で算出された補正量を減算し、さらに第1の速度フィードバック補償部15aで算出された第1の速度フィードバック補償値を加算して、第1の補正後駆動信号を算出する。そして、ステップS216において、第1の補正信号出力部16aは、第1の補正後駆動信号を第1の駆動軸31aに渡す。
ついで、ステップS217において、軌跡算出部17は、元の指令での第1の駆動軸31aと第2の駆動軸31bの軌跡を算出する。元の指令は、補正が行われていない駆動信号であり、この例では、第1の駆動信号入力部51aから受け取る第1の駆動軸31aの第1の駆動信号、および第2の駆動信号入力部51bから受け取る第2の駆動軸31bの第2の駆動信号である。
その後、ステップS218において、補正後第1の駆動軸移動量算出部18は、第1の駆動信号入力部51aから第1の駆動軸31aの第1の駆動信号を受け取り、補正量算出部13から補正量を受け取り、第1の駆動軸31aの補正後の移動量を算出する。
ついで、補正後指令位置算出部19は、軌跡算出部17から第1の駆動軸31aと第2の駆動軸31bの軌跡を受け取り、補正後第1の駆動軸移動量算出部18から第1の駆動軸31aの補正後の移動量を受け取る。また、ステップS219において、補正後指令位置算出部19は、これらの情報から、軌跡上で補正後の第1の駆動軸31aの移動量に対応する点である補正後指令位置を算出する。さらに、ステップS220において、補正後指令位置算出部19は、補正後指令位置での第2の駆動軸31bの補正後位置、補正後速度および補正後加速度を算出する。
ついで、ステップS221において、第2のエンコーダ32bは、第2の駆動軸31bの第2のフィードバック情報を取得する。第2のフィードバック情報は、第2の駆動軸31bの第2のフィードバック位置および第2のフィードバック速度を含む。その後、ステップS222において、第2のエンコーダ32bは、第2の駆動軸31bの第2のフィードバック情報を、第2の位置フィードバック補償部14bと第2の速度フィードバック補償部15bとに渡す。ここでは、第2のエンコーダ32bは、第2のフィードバック位置を第2の位置フィードバック補償部14bに渡し、第2のフィードバック速度を第2の速度フィードバック補償部15bに渡す。
ついで、ステップS223において、第2の位置フィードバック補償部14bは、ステップS220で算出された第2の駆動軸31bの補正後位置と、ステップS222で受け取った第2のフィードバック位置と、ステップS202で受け取った第2の位置補償パラメータと、に基づき、第2の位置フィードバック補償値を算出する。そして、第2の位置フィードバック補償部14bは、第2の位置フィードバック補償値を第2の速度フィードバック補償部15bに渡す。
その後、ステップS224において、第2の速度フィードバック補償部15bは、ステップS220で算出された第2の駆動軸31bの補正後速度と、ステップS222で受け取った第2のフィードバック速度と、ステップS223で算出された第2の位置フィードバック補償値と、ステップS202で受け取った第2の速度補償パラメータと、に基づき、第2の速度パラメータ補償値を算出する。そして、第2の速度フィードバック補償部15bは、第2の速度フィードバック補償値を第2の補正信号出力部16bに渡す。
ついで、第2の補正信号出力部16bは、ステップS220で算出された第2の駆動軸31bの補正後加速度に、第2の速度フィードバック補償値を加算して、第2の補正後駆動信号を算出し、第2の駆動軸31bに渡す。その後は、ステップS205まで戻り、第1の駆動信号が入力される間、ステップS206からステップS225までの処理が繰り返される。
なお、駆動軸移動量予測部11での処理の詳細は、実施の形態1の図6のフローチャートと同様であり、駆動対象外物体移動量予測部12での処理の詳細は、実施の形態1の図7のフローチャートと同様である。
以上のように、実施の形態2では、第1の駆動軸31aの第1の駆動信号を補正して振動を抑制する場合に、元の指令である第1の駆動信号および第2の駆動軸31bの第2の駆動信号で第1の駆動軸31aおよび第2の駆動軸31bが形成する軌跡上にとどまるように、第2の駆動軸31bの指令を補正する。これによって、振動抑制の効果を得つつ、元の指令に従った第1の駆動軸31aと第2の駆動軸31bが形成する軌跡を実現することができるという効果を有する。
なお、上記した説明では、第1の駆動軸31aに合わせて第2の駆動軸31bの指令を補正したが、実施の形態がこれに限定されるものではない。複数の駆動軸31を備えた工作機械1で、第3の駆動軸、第4の駆動軸など他の駆動軸が存在する場合にも、第1の駆動軸31aに合わせて指令を補正するようにしてもよい。
また、本実施の形態では、工作機械1において工具でワークを加工する場合を例に記載したが、本実施の形態がこれに限定されるものではなく、ロボットのハンドで組立作業を行うような場合にも本実施の形態を適用することができる。
図15は、実施の形態1および2にかかる数値制御装置の機能をコンピュータで実現する場合のハードウェア構成の一例を示す図である。数値制御装置10,10aは、演算処理を行うCPU(Central Processing Unit)といった演算装置71と、演算装置71がワークエリアに用いるメモリ72と、加工プログラムといったソフトウェアを記憶する記憶装置73と、ユーザとの間の入力インタフェースである入力装置74と、ユーザに情報を表示する表示装置75と、工作機械1との通信機能を有する通信装置76と、を備える。
図2および図13に示した、駆動軸移動量予測部11、駆動対象外物体移動量予測部12、補正量算出部13、位置フィードバック補償部14、第1の位置フィードバック補償部14a、第2の位置フィードバック補償部14b、速度フィードバック補償部15、第1の速度フィードバック補償部15a、第2の速度フィードバック補償部15b、補正信号出力部16、第1の補正信号出力部16a、第2の補正信号出力部16b、軌跡算出部17、補正後第1の駆動軸移動量算出部18および補正後指令位置算出部19の機能は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアまたはファームウェアはプログラムとして記述され、メモリ72に格納される。演算装置71は、メモリ72に記憶されたプログラムを読み出して実行することにより、各部の機能を実現する。メモリ72には、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable ROM)といった不揮発性または揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、DVD(Digital Versatile Disk)が該当する。
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
1 工作機械、2 ベッド、3 ワーク、4 ワークテーブル、5 工具、6 ヘッド、7 コラム、10,10a 数値制御装置、11 駆動軸移動量予測部、12 駆動対象外物体移動量予測部、13 補正量算出部、14 位置フィードバック補償部、14a 第1の位置フィードバック補償部、14b 第2の位置フィードバック補償部、15 速度フィードバック補償部、15a 第1の速度フィードバック補償部、15b 第2の速度フィードバック補償部、16 補正信号出力部、16a 第1の補正信号出力部、16b 第2の補正信号出力部、17 軌跡算出部、18 補正後第1の駆動軸移動量算出部、19 補正後指令位置算出部、31 駆動軸、31a 第1の駆動軸、31b 第2の駆動軸、32 エンコーダ、32a 第1のエンコーダ、32b 第2のエンコーダ、51 駆動信号入力部、51a 第1の駆動信号入力部、51b 第2の駆動信号入力部、52 移動量予測パラメータ入力部、53 フィードバックパラメータ入力部、111 駆動軸状態量加算部、112 駆動軸状態量更新部、113 駆動軸状態量保持部、114 駆動軸位置抽出部、115 駆動軸速度抽出部、121 駆動対象外物体状態量加算部、122 駆動対象外物体状態量更新部、123 駆動対象外物体状態量保持部。

Claims (6)

  1. 第1の駆動信号を用いて、第1の駆動軸が移動させる対象の第1の物体の第1の移動量を予測する第1の予測部と、
    前記第1の駆動信号を用いて、前記第1の駆動軸の駆動力に起因して生じる3次元空間での第2の物体の移動量のうち前記第1の駆動軸の移動方向と異なる方向の移動量である第2の移動量を予測する第2の予測部と、
    前記第1の移動量と前記第2の移動量とに基づいて前記第1の駆動信号の補正量を算出する補正量算出部と、
    前記第1の駆動信号を前記補正量で補正した第1の補正後駆動信号を前記第1の駆動軸を駆動する駆動部に出力する第1の補正信号出力部と、
    を備えることを特徴とする数値制御装置。
  2. 前記第1の移動量は、前記第1の物体の位置、変位、速度、加速度、姿勢、姿勢変化、姿勢変化速度および姿勢変化加速度のうち少なくとも一つを含み、
    前記第2の移動量は、前記第2の物体の3次元空間での前記第1の駆動軸の移動方向と異なる方向の変位、速度、加速度、姿勢変化、姿勢変化速度および姿勢変化加速度のうち少なくとも一つを含むことを特徴とする請求項1に記載の数値制御装置。
  3. 前記第1の移動量は、前記第1の物体の位置、変位、速度、加速度、姿勢、姿勢変化、姿勢変化速度および姿勢変化加速度のうち少なくとも一つを含み、
    前記第2の移動量は、前記第1の物体および前記第2の物体のどちらか一方の位置を基準としたときの他方の位置である相対位置の変位のうち第1の物体の移動方向と異なる方向の変位を示す相対変位、前記相対位置の速度のうち第1の物体の移動方向と異なる方向の速度である相対速度、前記相対位置の加速度のうち第1の物体の移動方向と異なる方向の加速度である相対加速度、前記第1の物体および前記第2の物体のどちらか一方の姿勢を基準としたときの他方の姿勢である相対姿勢の変化のうち第1の物体の回転中心軸と異なる方向の中心軸周りの姿勢変化である姿勢変化、前記相対姿勢の姿勢変化の速度のうち第1の物体の回転中心軸と異なる方向の中心軸周りの姿勢変化速度である相対姿勢変化速度、および前記相対姿勢の姿勢変化の加速度のうち第1の物体の回転中心軸と異なる方向の中心軸周りの姿勢変化加速度である相対姿勢変化加速度のうち少なくとも1つを含むことを特徴とする請求項1に記載の数値制御装置。
  4. 前記第2の予測部は、前記第1の駆動軸の位置、速度、加速度および駆動力のうち少なくとも一つを入力の一部とし、前記第2の移動量を出力の一部または内部状態量の一部とする状態空間モデルであることを特徴とする請求項1、2または3に記載の数値制御装置。
  5. 前記第2の予測部で前記第2の移動量を予測する際に用いるモデルを表現する第2の移動量予測パラメータの入力を受け付ける移動量予測パラメータ入力部をさらに備えることを特徴とする請求項1から4のいずれか1つに記載の数値制御装置。
  6. 前記第1の駆動信号および第2の駆動軸への第2の駆動信号から、前記第1の駆動軸および前記第2の駆動軸の軌跡を算出する軌跡算出部と、
    前記第1の駆動信号と前記補正量とから補正後の前記第1の駆動軸の移動量を算出する第1の算出部と、
    前記補正後の前記第1の駆動軸の移動量に対応する前記軌跡上の位置での、前記第2の駆動軸の移動量を算出する第2の算出部と、
    前記第2の駆動軸に前記第2の駆動軸の移動量にしたがって第2の補正後駆動信号を前記第2の駆動軸を駆動する駆動部に出力する第2の補正信号出力部と、
    をさらに備えることを特徴とする請求項1から5のいずれか1つに記載の数値制御装置。
JP2017516527A 2016-12-08 2016-12-08 数値制御装置 Active JP6180688B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/086599 WO2018105085A1 (ja) 2016-12-08 2016-12-08 数値制御装置

Publications (2)

Publication Number Publication Date
JP6180688B1 true JP6180688B1 (ja) 2017-08-16
JPWO2018105085A1 JPWO2018105085A1 (ja) 2018-12-06

Family

ID=59604780

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017516527A Active JP6180688B1 (ja) 2016-12-08 2016-12-08 数値制御装置

Country Status (5)

Country Link
US (1) US11003159B2 (ja)
JP (1) JP6180688B1 (ja)
CN (1) CN110035867B (ja)
DE (1) DE112016007507T5 (ja)
WO (1) WO2018105085A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6494897B1 (ja) * 2018-07-05 2019-04-03 三菱電機株式会社 数値制御装置
JP2019171561A (ja) * 2018-03-20 2019-10-10 ウィルミン−マッコデル・エスア ワークピース/ツール間境界における振動現象を制限するための方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06113579A (ja) * 1992-09-30 1994-04-22 Mitsubishi Electric Corp 位置制御方法および位置制御装置
JP2006198742A (ja) * 2005-01-21 2006-08-03 Hitachi Via Mechanics Ltd 穴明け加工機
JP2012176456A (ja) * 2011-02-25 2012-09-13 Okuma Corp 構造体の振動抑制装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62213945A (ja) * 1986-03-12 1987-09-19 Toshiba Mach Co Ltd 工作機械の熱変位補正装置
JPH0688192B2 (ja) * 1989-04-21 1994-11-09 株式会社牧野フライス製作所 5軸nc工作機械
JPH0775937A (ja) * 1993-09-07 1995-03-20 Sodick Co Ltd 工作機械及びその制御方法
US5459915A (en) * 1994-04-15 1995-10-24 Devlieg-Bullard, Inc. High accuracy machining station for a multiple spindle rotary indexing machine tool
JP4182311B2 (ja) 1999-11-11 2008-11-19 株式会社安川電機 リニアモータの制御方法とその装置
US6738679B2 (en) * 2000-05-08 2004-05-18 Toshiba Kikai Kabushiki Kaisha Positional control system and positional control method
JP3470754B2 (ja) 2000-11-24 2003-11-25 株式会社安川電機 リニアモータの制御方法およびその制御装置
JP2003175439A (ja) * 2001-12-11 2003-06-24 Mori Seiki Co Ltd Nc工作機械の加工時間推定装置
GB0400144D0 (en) * 2004-01-06 2004-02-11 Renishaw Plc Inspection system
JP4474328B2 (ja) 2005-05-20 2010-06-02 日立ビアメカニクス株式会社 穴明け加工機
JP4532577B2 (ja) * 2008-05-23 2010-08-25 ファナック株式会社 数値制御装置と機上計測装置を有する工作機械
US8700201B2 (en) * 2010-09-13 2014-04-15 Okuma Corporation Vibration suppressing device
JP4927985B1 (ja) * 2010-11-22 2012-05-09 ファナック株式会社 工作機械のテーブル又は工具を移動させる互いに直交した少なくとも二つの送り軸を有するサーボモータの駆動制御装置
JP5908342B2 (ja) * 2012-05-17 2016-04-26 オークマ株式会社 工作機械の加工振動抑制方法及び加工振動抑制装置
CN103853093A (zh) * 2012-11-29 2014-06-11 大连龙泽机械有限公司 车床数控系统
WO2015087455A1 (ja) * 2013-12-13 2015-06-18 三菱電機株式会社 数値制御装置および数値制御方法
CN105122161B (zh) * 2014-03-17 2017-10-20 三菱电机株式会社 数控装置
CN104536380A (zh) * 2014-11-06 2015-04-22 成都迅德科技有限公司 一种数控设备系统
CN105171521B (zh) * 2015-10-13 2017-06-27 北京卫星制造厂 一种基于多次检测和补偿的高精度轴类零件加工方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06113579A (ja) * 1992-09-30 1994-04-22 Mitsubishi Electric Corp 位置制御方法および位置制御装置
JP2006198742A (ja) * 2005-01-21 2006-08-03 Hitachi Via Mechanics Ltd 穴明け加工機
JP2012176456A (ja) * 2011-02-25 2012-09-13 Okuma Corp 構造体の振動抑制装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019171561A (ja) * 2018-03-20 2019-10-10 ウィルミン−マッコデル・エスア ワークピース/ツール間境界における振動現象を制限するための方法
JP7302994B2 (ja) 2018-03-20 2023-07-04 ウィルミン-マッコデル・エスア ワークピース/ツール間境界における振動現象を制限するための方法
JP6494897B1 (ja) * 2018-07-05 2019-04-03 三菱電機株式会社 数値制御装置
WO2020008587A1 (ja) * 2018-07-05 2020-01-09 三菱電機株式会社 数値制御装置
CN110914770A (zh) * 2018-07-05 2020-03-24 三菱电机株式会社 数控装置
US10663945B2 (en) 2018-07-05 2020-05-26 Mitsubishi Electric Corporation Numerical control device
DE112018000172T5 (de) 2018-07-05 2020-06-10 Mitsubishi Electric Corporation Numerische Steuervorrichtung
DE112018000172B4 (de) * 2018-07-05 2020-09-24 Mitsubishi Electric Corporation Numerische Steuervorrichtung

Also Published As

Publication number Publication date
US20190302729A1 (en) 2019-10-03
CN110035867A (zh) 2019-07-19
US11003159B2 (en) 2021-05-11
WO2018105085A1 (ja) 2018-06-14
CN110035867B (zh) 2020-07-28
JPWO2018105085A1 (ja) 2018-12-06
DE112016007507T5 (de) 2019-09-05

Similar Documents

Publication Publication Date Title
US9724825B2 (en) Robot controller for robot which sets two objects in combined state
JP6400750B2 (ja) 学習制御機能を備えた制御システム及び制御方法
JP5968572B1 (ja) 制御パラメータ調整装置
JP5209810B1 (ja) イナーシャと摩擦係数とばね定数を同時に推定する機能を備える電動機の制御装置
JP5078891B2 (ja) 機械における機械要素の移動案内のための方法および装置
JP2020032481A (ja) ロボット制御装置、ロボット装置、ロボット制御のパラメータ調整方法、およびプログラム
JP6450732B2 (ja) 数値制御装置
JP6457569B2 (ja) サーボモータ制御装置、サーボモータ制御方法、及びサーボモータ制御用プログラム
JP6880853B2 (ja) 処理装置、パラメータ調整方法、及びパラメータ調整プログラム
CN109562518B (zh) 并联连杆机构的控制装置
CN110914770B (zh) 数控装置
CN110662636B (zh) 减速机角度传递误差辨识系统和减速机角度传递误差辨识方法
CN111347421A (zh) 用于扭矩估计的方法和装置
JP6180688B1 (ja) 数値制御装置
JP2019181610A (ja) モータエンコーダ及びセンサを用いて学習制御を行うロボットシステム
JP5897645B2 (ja) 機械先端点のたわみを低減するサーボ制御装置
JP2011145884A (ja) 軌跡制御装置
JP5283804B1 (ja) サーボ制御装置
JPWO2019082394A1 (ja) 数値制御装置
da Silva et al. Design of mechatronic systems with configuration-dependent dynamics: simulation and optimization
JP6237039B2 (ja) ロボット制御装置およびロボット制御方法
CN112512758B (zh) 挠曲量推断装置、机器人控制装置以及挠曲量推断方法
JP7399357B1 (ja) 軌道生成装置
JP6647477B1 (ja) 数値制御装置および機械学習装置
JP7183489B1 (ja) 電動機制御装置及び機械装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170324

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170324

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20170324

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170612

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170718

R150 Certificate of patent or registration of utility model

Ref document number: 6180688

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250