(57)【要約】【課題】位置制御の精度向上を実現すること。【解決手段】モータの回転運動を直線運動に変換するねじ送り部と、ねじ送り部によって直線移動させられる被駆動部と、ねじ送り部及び被駆動部が支持される支持体とを備える数値制御機器に適用され、被駆動部の位置を位置指令に一致させるようにモータを制御するサーボ制御装置であって、支持体の振動反力による被駆動部の振動を補償する支持体反力補償部３１１を備え、支持体反力補償部３１１が備える伝達関数には、被駆動部の剛性項が含まれているサーボ制御装置を提供する。【選択図】図３
2011003137.tif 000002
【特許請求の範囲】
【請求項１】
モータの回転運動を直線運動に変換するねじ送り部と、前記ねじ送り部によって直線移動させられる被駆動部と、前記ねじ送り部及び前記被駆動部が支持される支持体とを備える数値制御機器に適用され、前記被駆動部の位置を位置指令に一致させるように前記モータを制御するサーボ制御装置であって、
前記支持体の振動反力による前記被駆動部の振動を補償する支持体反力補償部を備え、
前記支持体反力補償部が備える伝達関数には、前記被駆動部の剛性項が含まれているサーボ制御装置。
【請求項２】
前記支持体反力補償部は、前記モータの速度制御用のフィードフォワード制御系に設けられている請求項１に記載のサーボ制御装置。
【請求項３】
前記支持体反力補償部が備える前記伝達関数には、前記支持体の剛性項が含まれており、前記支持体の剛性項は、前記支持体または前記被駆動部に衝撃を与えて振動させたときの振動共振周波数に基づいて同定される請求項１または請求項２に記載のサーボ制御装置。
【請求項４】
前記支持体の剛性項を同定する定数同定部を備え、
前記定数同定部は、
前記被駆動部に対して衝撃を与えて前記被駆動部を振動させる衝撃発生部と、
衝撃が与えられたときの前記被駆動部または前記支持体の振動を検出する振動検出部と、
前記振動検出部によって検出された振動信号から前記被駆動部の共振周波数を算出し、この共振周波数から前記支持体の剛性項を同定する支持体剛性項同定部と
を有する請求項３に記載のサーボ制御装置。
【請求項５】
前記支持体反力補償部が備える前記伝達関数には、前記支持体の粘性項が含まれており、前記支持体の粘性項は、前記支持体または前記被駆動部に衝撃を与えて振動させたときの振動の減衰状態に基づいて同定される請求項１または請求項２に記載のサーボ制御装置。
【請求項６】
前記支持体反力補償部が備える前記伝達関数に含まれる定数を同定する定数同定部を備え、
前記定数同定部は、
前記被駆動部に対して衝撃を与えて前記被駆動部を振動させる衝撃発生部と、
衝撃が与えられたときの前記被駆動部または前記支持体の振動を検出する振動検出部と、
前記振動検出部によって検出された振動信号から前記被駆動部の振動の減衰率を算出し、該振動の減衰率から前記支持体の粘性項を同定する支持体粘性項同定部と
有する請求項５に記載のサーボ制御装置。
【請求項７】
前記衝撃発生部は、前記被駆動部を所定の加速度以上で移動させることにより、前記被駆動部を振動させる請求項４から請求項６のいずれかに記載のサーボ制御装置。
【請求項８】
前記定数同定部は、前記定数を同定した後において、前記振動検出部によって検出された前記被駆動部の振動の振幅が既定の閾値を超えていた場合には、該振動検出部によって検出された振動信号に基づいて定数の調整を行う請求項４から請求項７のいずれかに記載のサーボ制御装置。
【請求項９】
前記定数同定部は、前記数値制御機器が駆動している期間において、前記振動検出部によって検出された振動信号と前記支持体反力補償部のモデルから算出される前記被駆動部の推定振動信号とを比較し、この比較結果に基づいて前記支持体反力補償部が備える伝達関数の機械定数を調整する請求項４から請求項８のいずれかに記載のサーボ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーボ制御装置に関するものである。
【背景技術】
【０００２】
例えば、工作機械に用いられるサーボ制御装置においては、位置制御の精度向上のために、いろいろな制御手法が提案されている。図１３に、工作機械の概略構成の一例を簡単に示す。図１３に示すように、工作機械は、ベッド１と、ベッド１上に配置されたテーブル２を備えている。テーブル２は、ベッド１上でＸ軸方向に沿い移動可能に設けられている。門形のコラム３には、クロスレールがＹ軸方向に沿って配置されている。クロスレール４には、ラム６を備えたサドル５が螺合されており、Ｙ軸方向に沿い移動可能に設けられている。
テーブル２のＸ軸方向における移動は、ボールねじ駆動機構により行なわれるようになっている。また、ラム６を備えたサドル５のＹ軸方向の移動も、コラム３に設置された別のボールねじ駆動機構により行なわれるようになっている。
【０００３】
図１３に示されるような比較的大型の工作機械においては、精度の高いサドル５の位置制御やテーブル２の速度制御が要求されるが、加工中においては、クレスレール４やサドル５並びにラム６が移動することにより、コラム等に低周波振動が発生し、サドル５やラム６の位置制御を正確に行うことができないという問題がある。
このような問題を解消するために、例えば、サーボ系や機械系をモデル化し、そのモデルの逆特性をもった伝達関数を用いてフィードフォワード補償することが提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２５９６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、特許文献１に開示されている発明では、コラム自体の振動によるサドル５の位置補償はできるものの、コラムの振動に起因するサドル５固有の振動には対応することができず、所望の位置制御精度を維持することが難しいという問題があった。
更に、特許文献１等に記載されている発明では、フィードフォワード補償制御用の伝達関数における機械定数を同定する必要があるが、このような機械定数の同定を正確に行うことは難しく、また、機械定数の同定が適切に行われないと、折角フィードフォワード補償制御を行ったとしても所望の精度を維持できないという問題があった。
【０００６】
本発明は、このような事情に鑑みてなされたものであって、位置制御の精度向上を実現することのできるサーボ制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明は以下の手段を採用する。
本発明は、モータの回転運動を直線運動に変換するねじ送り部と、前記ねじ送り部によって直線移動させられる被駆動部と、前記ねじ送り部及び前記被駆動部が支持される支持体とを備える数値制御機器に適用され、前記被駆動部の位置を位置指令に一致させるように前記モータを制御するサーボ制御装置であって、前記支持体の振動反力による前記被駆動部の振動を補償する支持体反力補償部を備え、前記支持体反力補償部が備える伝達関数には、前記被駆動部の剛性項が含まれているサーボ制御装置を提供する。
【０００８】
このような構成によれば、支持体反力補償部により、支持体が振動することに起因する被駆動部の振動による位置制御誤差を補償することが可能となる。これにより、被駆動部の位置制御の精度を向上させることが可能となる。また、支持体反力補償部が備える伝達関数には、被駆動部の剛性項が含まれているので、支持体の振動が被駆動部に伝達される度合いを相当の精度を持って推定することができる。
【０００９】
上記サーボ制御装置において、支持体反力補償部は、前記モータの速度制御用のフィードフォワード制御系に設けられていてもよい。
このように、モータの速度制御用のフィードフォワード制御系に設けることで、モータの速度補償を正確に行うことが可能となる。
【００１０】
上記サーボ制御装置において、前記支持体反力補償部が備える前記伝達関数には、前記支持体の剛性項が含まれており、前記支持体の剛性項は、前記支持体または前記被駆動部に衝撃を与えて振動させたときの振動共振周波数に基づいて同定されることとしてもよい。
【００１１】
このように、振動共振周波数を用いるので、例えば、力と歪みの関係から同定する方法に比べて高い測定精度を得ることができ、高い同定精度を得ることができる。
【００１２】
上記サーボ制御装置は、前記支持体の剛性項を同定する定数同定部を備えていてもよく、前記定数同定部は、前記被駆動部に対して衝撃を与えて前記被駆動部を振動させる衝撃発生部と、衝撃が与えられたときの前記被駆動部または前記支持体の振動を検出する振動検出部と、前記振動検出部によって検出された振動信号から前記被駆動部の共振周波数を算出し、この共振周波数から前記支持体の剛性項を同定する支持体剛性項同定部とを有していてもよい。
【００１３】
このように、被駆動部に衝撃を与えることにより被駆動部を振動させ、この振動の状態に基づいて支持体の剛性項を同定するので、支持体の剛性項の同定の信頼度を高めることができる。
【００１４】
上記サーボ制御装置において、前記支持体反力補償部が備える前記伝達関数には、前記支持体の粘性項が含まれており、前記支持体の粘性項は、前記支持体または前記被駆動部に衝撃を与えて振動させたときの振動の減衰状態に基づいて同定されることとしてもよい。
【００１５】
このように、振動の減衰状態に基づいて支持体の粘性項を同定するので、支持体の粘性項を容易に同定することができる。
【００１６】
上記サーボ制御装置は、前記支持体反力補償部が備える前記伝達関数に含まれる定数を同定する定数同定部を備えていてもよく、前記定数同定部は、前記被駆動部に対して衝撃を与えて前記被駆動部を振動させる衝撃発生部と、衝撃が与えられたときの前記被駆動部または前記支持体の振動を検出する振動検出部と、前記振動検出部によって検出された振動信号から前記被駆動部の振動の減衰率を算出し、該振動の減衰率から前記支持体の粘性項を同定する支持体粘性項同定部とを有することとしてもよい。
【００１７】
このように、被駆動部に衝撃を与えることにより被駆動部を振動させ、この振動の状態に基づいて支持体の粘性項を同定するので、支持体の粘性項の同定の信頼度を高めることができる。
【００１８】
上記サーボ制御装置において、前記衝撃発生部は、前記被駆動部を所定の加速度以上で移動させることにより、前記被駆動部を振動させることとしてもよい。
【００１９】
このように、被駆動部を移動させることにより、被駆動部に衝撃を与え振動を発生させるので、より実際の運用に近い態様で振動の様子を確認することが可能となる。
【００２０】
上記サーボ制御装置において、前記定数同定部は、前記定数を同定した後において、前記振動検出部によって検出された前記被駆動部の振動の振幅が既定の閾値を超えていた場合には、該振動検出部によって検出された振動信号に基づいて定数の調整を行うこととしてもよい。
【００２１】
このように、定数を同定した後においてその定数が適切であるか否かを確認し、適切でなかった場合には、適切な値が設定されるまで定数が調整されるので、定数の同定精度を高めることができる。
【００２２】
上記サーボ制御装置において、前記定数同定部は、前記数値制御機器が駆動している期間において、前記振動検出部によって検出された振動信号と前記支持体反力補償部のモデルから算出される前記被駆動部の推定振動信号とを比較し、この比較結果に基づいて前記支持体反力補償部が備える伝達関数の機械定数を調整することとしてもよい。
【００２３】
このような構成によれば、数値制御機器が駆動している期間においても定数の調整が行われるので、常に定数を適切な値に設定することができる。これにより、被駆動部の位置制御の精度を向上させることができる。
【発明の効果】
【００２４】
本発明によれば、位置制御の精度向上を図ることができるという効果を奏する。
【図面の簡単な説明】
【００２５】
【図１】本発明の第１の実施形態に係るサーボ制御装置の制御対象機器の概略構成を示した図である。
【図２】本発明の第１の実施形態に係るサーボ制御装置のブロック線図を示した図である。
【図３】図２に示した速度フィードフォワード部のブロック線図を示した図である。
【図４】コラムを含む制御対象機器の機械系モデルを示した図である。
【図５】速度フィードフォワード部を構成する要素の中からコラム反力補償部に関する要素を抽出して示した図である。
【図６】本発明の第１の実施形態に係る定数同定部の概略構成を示した図である。
【図７】衝撃発生部によってサドルに与えられる衝撃について説明するための図である。
【図８】コラム粘性の同定方法について説明するための図である。
【図９】本発明の第１の実施形態に係る補償部の効果を示した図である。
【図１０】本発明の第２の実施形態に係る定数同定部の概略構成を示した図である。
【図１１】本発明の第３の実施形態に係る機械定数調整部の概略構成を示した図である。
【図１２】図１１に示した機械定数調整部によって実施される処理内容を説明するためのフローチャートである。
【図１３】本発明の第１の実施形態に係るサーボ制御装置が適用される工作機械の概略構成を示した図である。
【発明を実施するための形態】
【００２６】
以下、本発明のサーボ制御装置を図１３に示した工作機械（数値制御機器）に適用する場合の実施形態について説明する。
〔第１の実施形態〕
図１３は、本発明の第１の実施形態に係るサーボ制御装置が適用される工作機械の概略構成を示した図である。図１３に示すように、工作機械は、ベッド１と、ベッド１上に配置され、Ｘ軸方向に沿い移動可能なテーブル２を備えている。また、テーブル２を跨ぐように門形のコラム（支持体）３が配置されている。コラム３には、Ｙ軸方向にクロスレールが取り付けられており、このクロスレール上をサドル（被駆動部）５が移動することにより、サドル５がＹ軸方向に沿い移動可能とされている。サドル５は、Ｚ軸方向に沿い移動可能なラム６を備えている。ラム６の先端には、切削加工等を行う機械先端が取り付けられている。本実施形態では、このラム６のＹ軸方向における機械先端位置を指令位置θに一致させるようにサドル５の位置を制御することを目的としている。
【００２７】
図１に、本実施形態に係るサーボ制御装置の制御対象機器の概略構成を示す。図１に示すように、制御対象機器は、モータ１２の回転運動をボールねじナット１０とボールねじ軸１１からなるボールねじ送り部（ねじ送り部）９により直線運動に変換して、負荷であるサドル５を直線移動（Ｙ軸方向に移動）させる工作機械のボールネジ駆動機構である。モータ１２には、モータ速度ωMを検出して出力するモータエンコーダ１３が配置されている。リニアスケール１４は、サドル５の位置を示す負荷位置θLを検出して出力する。ボールねじ駆動機構では、モータ１２が回転駆動してボールねじ軸１１が回転すると、ボールねじナット１０及びこれに固定連結したサドル５が直線移動するようになっている。
【００２８】
図２は、本実施形態に係るサーボ制御装置のブロック線図を示した図である。本実施形態に係るサーボ制御装置１００は、サドル５に取り付けられたラム６のＹ軸方向における機械先端位置を指令位置θに一致させるための指令トルクτを演算し、この指令トルクτを出力信号としてモータ１２に出力する装置である。
【００２９】
ところで、サドル５は、図１３に示されるように、コラム３に取り付けられている。切削加工等を行う際に、サドル５がＹ軸方向に移動したり、ラム６がＺ軸方向に移動したりすると、コラム３に振動が発生し、この振動がサドル５やラム６の位置制御の精度に影響を及ぼすこととなる。本実施形態に係るサーボ制御装置１００は、このようなコラム３の振動に起因する位置制御誤差を補償するための機械たわみ補償部２００を備えている。また、更に、モータ１２やサドル５に生ずる「ひずみ」、「たわみ」、「粘性」等の位置誤差要因を補償して、サドル５の位置制御の精度を向上させるための速度フィードフォワード部２０１が設けられている。なお、機械たわみ補償部２００及び速度フィードフォワード部２０１の詳細については後述する。
【００３０】
図２に示すように、サーボ制御装置１００は、機械たわみ補償部２００、速度フィードフォワード部２０１、減算部１０１、乗算部１０２、減算部１０３、及び比例積分演算部１０４を有している。
【００３１】
機械たわみ補償部２００は、指令位置θを後述する伝達関数にて補償し、補償後の指令位置θ´を出力する。減算部１０１は、コラム補償された指令位置θ´と負荷位置θLとの差である偏差位置Δθを出力する。乗算部１０２は、偏差位置Δθに位置ループゲインＫPを乗算して偏差速度ΔＶを出力する。減算部１０３は、偏差速度ΔＶに、速度フィードフォワード部２０１から出力される補償速度Ｖ´を加えた値からモータ速度ωMを減算した指令速度Ｖを出力する。比例積分演算部１０４は、指令速度Ｖを比例積分演算して指令トルクτを出力する。比例積分演算部１０４では、速度ループゲインＫv、積分時定数Ｔv、及びトルク定数ＫTを用いて、τ＝ＶＫT｛Ｋv（１＋（１／Ｔvｓ））｝という演算をして指令トルクτを求めている。
【００３２】
この指令トルクτは、図２に示した制御対象機器に与えられ、この指令トルクτに基づく各部の制御が行われる。例えば、モータ１２は、電流制御器（図示省略）から指令トルクτに応じた電流が供給されることにより回転駆動する。この場合、図示は省略するが、指令トルクτに応じた電流値になるように、電流のフィードバック制御を行なっている。モータ１２の回転運動はボールねじ送り部９により直線運動に変換され、この結果、ボールねじ送り部９に螺合されるボールねじナット１０が直線移動させられ、このボールねじナット１０に固定されているサドル５がボールねじナット１０とともに移動し、サドル５が備えるラム６の先端に取り付けられた機械先端位置が指令位置θに移動させられる。
【００３３】
次に、速度フィードフォワード部２０１について説明する。速度フィードフォワード部２０１は、図３に示すように、１次微分項演算部３０１と、２次微分項演算部３０２と、３次微分項演算部３０３と、４次微分項演算部３０４と、１次微分項に１次微分係数を乗じる乗算部３０５と、２次微分項に２次微分係数を乗じる乗算部３０６と、３次微分項に３次微分係数を乗じる乗算部３０７と、４次微分項に４次微分係数を乗じる乗算部３０８と、加算部３０９と、速度ループ補償部３１０と、コラム反力補償部（支持体反力補償部）３１１と、減算部３１２とを備えている。なお、図３において、ｓはラプラス演算子（微分演算子）である。
【００３４】
上記１次微分係数から４次微分係数は、機械系モデルにおけるトルク及び速度の逆特性モデルの伝達関数に設定されている。また、上記速度ループ補償部３１０の伝達関数は、位置ゲインＫP、積分時定数Ｔvを用いて、｛ＫP／（１＋Ｔvｓ）｝で表わされ、コラム反力補償部３１１の伝達関数は、コラムのイナーシャＪC、サドル及びラムのイナーシャＪL、コラム粘性ＣC、送り系剛性ＫR、コラムのばね剛性ＫCを用いて、｛（ＪCＪL／ＫR）s2／（２ＪCs2＋ＣCs＋ＫC)}で表わされる。
【００３５】
速度フィードフォワード部２０１では、機械たわみ補償器２００により位置補償が行われた指令位置θ´が入力されると、１次微分係数が乗算された１次微分項、２次微分係数が乗算された２次微分項、３次微分係数が乗算された３次微分項、４次微分係数が乗算された４次微分項がそれぞれ加算部３０９に入力されることにより、これら各異なる微分係数値が加算され、速度ループ補償部３１０に与えられる。速度ループ補償部３１０では、上記伝達関数で表わされる位置補償が施された後、減算部３１２に出力される。
【００３６】
また、３次微分項演算部３０３から出力された３次微分項は、コラム反力補償部３１１にも入力され、上記伝達関数で表わされる位置補償がされた後、減算部３１２に出力される。減算部３１２においては、速度ループ補償部３１０からの出力からコラム反力補償部３１１による位置補償量が減算されて補償速度Ｖ´が算出され、この補償速度Ｖ´が図２の減算部１０３に出力されることとなる。
【００３７】
図２に示したサーボ制御装置では、減算部１０３において補償速度Ｖ´が偏差速度ΔＶに加算されることにより、質点であるモータ１２やサドル５に対する「ひずみ」、「たわみ」、「粘性」といった誤差要因が補償される。この結果、サドル５の位置制御の精度向上が図られる。
【００３８】
次に、本実施形態の主たる特徴の一つである図２に示した機械たわみ補償部２００及び図３に示したコラム位置補償部３１１について説明する。
上述したように、本実施形態に係るサーボ制御装置１００は、サドル５やラム６等の移動によってコラム３が振動し、このコラム３の振動によって起因するサドル５の振動による位置制御の精度低下を防止することを目的としている。
【００３９】
コラム３が振動する場合、このコラム３そのものの振動を考慮してサドル５の位置制御を行わなければならないとともに、コラム３の振動の反力によるサドル５やラム６の振動をも考慮してサドル５の位置制御を行わなければならない。
【００４０】
すなわち、コラム３及びサドル５の剛性がともに高い場合には、サドル５はコラム３にあわせて同じ振幅、同じ周波数で振動することとなる。従って、この場合には、サドル５固有の振動を考慮する必要はなく、コラム３の振動による位置誤差のみを考慮すればよいこととなる。
【００４１】
これに対し、サドル５の剛性が低い場合、サドル５はコラム３の反力により振動し、また、この振動もコラム３の振動とは必ずしも同じとはならず、コラム３とは異なる周期や位相で振動することとなる。この場合、コラム３の振動による位置誤差だけではなく、コラム３の振動の反力に起因するサドル５の固有の振動による位置誤差についても考慮し、これに伴う位置制御誤差を補償する必要が生ずる。
このように、本発明は、コラム３の振動の反力に起因するサドル５の固有の振動に着目したもので、このサドル５の固有の振動による位置誤差を補償することを特徴の一つとしている。
【００４２】
このため、本実施形態に係るサーボ制御装置１００は、上述したようなコラム３自身の振動だけでなく、コラム３の振動の反力によるサドル５の振動に起因する位置誤差を補償するための補償モデルを有している。そして、この補償モデルが図３に示したコラム反力補償部３１１である。
このように、本実施形態に係るサーボ制御装置１００は、コラム３そのものの振動による位置制御誤差を補償する機械たわみ補償部２００と、コラム３の振動の反力によるサドル５の振動に起因する位置誤差を補償するためのコラム反力補償部３１１とからなる２つの補償モデルを有している。このように、２つの補償モデルを有することにより、コラムの振動に起因する位置制御の誤差を効率的に解消することができ、図１３に示した工作機械におけるＹ軸方向の位置制御の精度を向上させることができる。
【００４３】
次に、上述した機械たわみ補償部２００及びコラム位置補償部３１１の伝達関数の導出過程について簡単に説明する。
図４は、コラム３を含む制御対象機器の機械系モデルを示した図である。図４に示すように、本実施形態では、機械系のモデルをモータ１２、負荷であるサドル５、及びコラム３を質点とした３質点系の機械系のモデルとして特定している。
【００４４】
図４に示すように、モータ１２の特性をモデル化して伝達関数で示すと、ブロック１２−１とブロック１２−２とで示される。なお、ＪMはモータイナーシャを示し、ＤMはモータ粘性を示す。ブロック１２−１からはモータ速度ωMが出力され、ブロック１２−２からはモータ位置θMが出力される。
【００４５】
負荷であるサドル５の特性をモデル化して伝達関数で示すと、ブロック５−１とブロック５−２とで示される。なお、θMはモータ位置、θLは負荷位置、ＣRは送り系の並進減衰、ＫRは送り系剛性、ＪLはサドル・ラムイナーシャ、ＤLは負荷粘性（サドル粘性）をそれぞれ示している。
ブロック５−１は、モータ位置θMと負荷位置θLとの偏差（θM−θL）が入力されると、反力トルクを出力する。この反力トルク及びコラム振動の反力を加算した値がブロック５−２に入力されると、負荷位置θLが出力される。
【００４６】
コラム３の特性をモデル化して伝達関数で示すと、ブロック３−１とブロック３−２とで示される。なお、ＪCはコラムイナーシャを示し、ＣCはコラム粘性を示し、ＫCはコラム剛性を示す。
【００４７】
次に、図４に示した機械系モデルに基づいて、図２に示した機械たわみ補償部２００の伝達関数及び速度フィードフォワード部２０１内に設けられたコラム反力補償部３１１の伝達関数の導出方法について説明する。
【００４８】
まず、図４に示した機械系モデルにおいて、ブロック１０１、ブロック１０２、ブロック１０３における運動方程式は、以下の（１）から（３）式でそれぞれ示される。
【００４９】
τ−（θM−θL）ＫR＋θCＪCｓ2＝θM（ＪMｓ2＋ＤMｓ）      （１）
（θM−θL）ＫR−θCＪCｓ2＝θL（ＪLｓ2＋ＤLｓ）      （２）
−（θM−θL）ＫR−θC（ＫC＋ＣCs）＝θCＪCｓ2      （３）
【００５０】
上記（２）式と（３）式とを加算することにより、以下の（４）式が導出される。
【００５１】
−θCＪCｓ2−θC（ＫC＋ＣCs）＝θL（ＪLｓ2＋ＤLｓ）＋θCＪCｓ2
−θL（ＪLｓ2＋ＤLｓ）＝θC（２ＪCｓ2＋ＣCs＋ＫC）      （４）
【００５２】
機械先端位置θは、θ＝θL＋θCなので、
【００５３】
θC＝θ−θL      （５）
【００５４】
上記（４）式と（５）式とから以下の（６）式が最終的に得られる。
【００５５】
−（ＪLｓ2＋ＤLｓ）θL＝（θ−θL）・（２ＪCｓ2＋ＣCs＋ＫC）
｛（２ＪCｓ2＋ＣCs＋ＫC）−（ＪLｓ2＋ＤLｓ）｝θL＝θ（２ＪCｓ2＋ＣCs＋ＫC）
θL＝θ（２ＪCｓ2＋ＣCs＋ＫC）／｛（２ＪC−ＪL）ｓ2＋（ＣC−ＤL）s＋ＫC｝  （６）
【００５６】
ここで、機械先端位置を指令位置θに一致させるためには、リニアスケール（位置センサ）１４によって検出されるサドルの位置θLを（６）式に従ってずらす必要がある。したがって、機械たわみ補償部２００は、以下の（７）式で表される（図２参照）。
【００５７】
Ｇ１（ｓ）＝（２ＪCｓ2＋ＣCs＋ＫC）／｛（２ＪC−ＪL）ｓ2＋（ＣC−ＤL）s＋ＫC｝      （７）
【００５８】
次に、速度フィードフォワード部２０１内のコラム反力補償部３１１の伝達関数について説明する。
図４に示した機械系モデルからサドル５の検出位置θLとモータ速度θMsの関係を求めると、上述の（２）式より、以下の（８）式が導出される。
【００５９】
θC＝｛（θM−θL）ＫR−θLＪLｓ2｝／ＪCｓ2      （８）
【００６０】
上記（３）式と（８）式とから以下の（９）式が導出される。
【００６１】
−（θM−θL）ＫR−〔｛（θM−θL）ＫR−θLＪLｓ2｝／ＪCｓ2〕＊（ＫC＋ＣCs）
＝（θM−θL）ＫR−θLＪLｓ2      （９）
【００６２】
更に、
θM〔−２ＫR−ＫR（ＫC＋ＣCs）／ＪCｓ2〕
＝θL〔−２ＫR−ＪLｓ2−（ＪL／ＪC）＊（ＫC＋ＣCs）−ＫR／ＪCｓ2＊（ＫC＋ＣCs）〕
【００６３】
整理すると、
θM〔−２ＫRＪCｓ2−ＫR（ＫC＋ＣCs）〕
＝θL〔−２ＫRＪCｓ2−ＪLｓ2＊ＪCｓ2−ＪL＊（ＫC＋ＣCs）ｓ2−ＫR＊（ＫC＋ＣCs）〕
【００６４】
よって、以下の（１０）式が得られる。
【００６５】
【数１】
2011003137.tif 000003
【００６６】
ここで、コラムの反力補償のみを抽出するために、上記（２）式の２質系での補償分である以下の（１１）式を上記（１０）式から減算すると、（１２）式が得られる。
【００６７】
θMs＝θLｓ〔（ＪL／ＫR）ｓ2＋１〕      （１１）
【００６８】
【数２】
2011003137.tif 000004
【００６９】
モータ速度をするために、両辺にラプラス係数を乗算すると（１３）式が得られる。
【００７０】
【数３】
2011003137.tif 000005
【００７１】
そして、上記（１３）式を図３に示したコラム反力補償部３１１のブロック線図、即ち、図５に示すブロック線図に適用させると、コラム反力補償部の伝達関数は、以下の（１４）式で得られる。
【００７２】
【数４】
2011003137.tif 000006
【００７３】
次に、上記機械たわみ補償部２００の伝達関数及び速度フィードフォワード部２０１におけるコラム反力補償部３１１の伝達関数に用いられている機械定数の同定方法について説明する。
【００７４】
まず、上記（７）式に示したように、機械たわみ補償部２００の伝達関数Ｇ１（ｓ）及び速度フィードフォワード部２０１におけるコラム反力補償部３１１の伝達関数Ｇ２（ｓ）は、コラムイナーシャＪC、コラム粘性ＣC、コラム剛性ＫC、サドル・ラムイナーシャＪL、負荷粘性ＤL、送り系剛性ＫRの６つの機械定数を含んでいる。このうち、コラムイナーシャＪC、コラム粘性ＣC、コラム剛性ＫC、及び送り系剛性ＫRについては、変化する定数であり、簡単な同定方法が望まれる。
そして、この４つの機械定数のうち、コラムイナーシャＪCについては、各部の機械重量が既知であることから推定することができ、同定は不要である。また、送り系剛性ＫRについても、ボールねじ剛性理論値から推定することができることから、同定は不要である。
よって、残りのコラム粘性ＣC及びコラム剛性ＫCについて、同定を行って決定をすることで、各補償部の機械定数を全て決定することができる。
【００７５】
以下、上記コラム粘性ＣC及びコラム剛性ＫCについての同定方法について説明する。
本実施形態では、コラム３に対して衝撃を与え、その衝撃の応答振動からコラム粘性ＣC及びコラム剛性ＫCを同定する。
コラム剛性ＫCの同定は、コラム３に対して衝撃を与えてサドル５を振動させたときのその共振周波数に基づいて行われる。
そこで、まずは、共振周波数からコラム剛性ＫCを算出するための演算式の導出について説明する。
【００７６】
図４に示した機械系モデルにおいて、コラム剛性ＫCの計算式は上述した（２）式及び（３）式においてθM＝０とした下記（１５）、（１６）式から得ることができる。なお、共振中において、モータ１２はコラム３の反力では動かないものと考える。
【００７７】
−θLＫR−θCＪCｓ2＝θLＪLｓ2      （１５）
θLＫR−θC（ＫC＋ＣCs）＝θCＪCｓ2      （１６）
【００７８】
（１５）式より、
θL＝−θcＪcｓ2／（ＪLｓ2＋ＫR）      （１７）
【００７９】
（１６）及び（１７）式から
−θc（Ｊcｓ2ＫR）／（ＪLｓ2＋ＫR）−θc（ＫC＋ＣCｓ）＝θcＪcｓ2
Ｊcｓ2＋ＣCｓ＋ＫC＋（Ｊcｓ2ＫR）／（ＪLｓ2＋ＫR）＝０
Ｊcｓ2（ＪLｓ2＋ＫR）＋（Ｋc＋ＣCｓ）＊（ＪLｓ2＋ＫR）＋Ｊcｓ2ＫR＝０
ＪcＪLｓ4＋ＣCＪLｓ3＋（２ＪcＫR＋ＪLＫC）ｓ2＋ＣCＫRｓ＋ＫRＫC＝０      （１８）
【００８０】
このとき、共振周波数に関係する項（ＣCは共振に関係ない）のみとし、ｓ＝ｊωとすると、以下の（１９）式が得られる。
【００８１】
ＪcＪLω4−（２ＪcＫR＋ＪLＫC）ω2＋ＫRＫC＝０      （１９）
【００８２】
上記（１９）式を解き、更に、コラム剛性Ｋcについての式にすると、以下の（２０）式が得られる。
【００８３】
ＫC＝（８ＪC2ＪLＫRω2−（２ＪcＪL）2ω4／（−４ＪcＪL2）ω２＋４ＪCＪLＫR）     （２０）
【００８４】
上記（２０）式をコラム共振周波数ｑで表わすと、以下の（２１）式が得られる。
ＫC＝Ｊc（８ＫRｑ2−ＪLｑ4）／（ＫR−ＪLｑ2）      （２１）
【００８５】
上記（２１）式において、ＫRは送り系剛性、ＪLはサドルイナーシャ、ＪCはコラムイナーシャ、ｑはコラム共振周波数であり、このうち、コラムイナーシャＪC、サドルイナーシャＪL、及び送り系剛性ＫRは、既知である。従って、コラム共振周波数を検出することで、上記（２１）式に従ってコラム剛性ＫCを同定することができる。
【００８６】
次に、実際に上記（２１）式を用いてコラム剛性ＫCを同定する手順について説明する。
図６は、定数同定部５０の概略構成を示した図である。図６に示すように、定数同定部５０は、衝撃発生部５１、加速度センサ（振動検出部）５２、コラム剛性同定部（支持体剛性項同定部）５３、コラム粘性同定部（支持体粘性項同定部）５４、及び機械定数設定部５５を備えている。
【００８７】
衝撃発生部５１は、例えば、サドル５に対してＹ軸方向に所定の衝撃を与える。所定の衝撃は、例えば、ステップ応答のような衝撃である。本実施形態においては、図７に示すように、ＹＺ平面上にほぼ四角形を描くようにサドル５及びラム６を移動させることで、サドル５に対してＹ軸方向の衝撃を与える。
【００８８】
なお図７に示した四角形において、各角部は、所定の曲率を有する円弧状に設定されている。衝撃発生部５２は、図７に示すようなＹＺ平面上における略四角形の移動軌跡を有しており、この移動軌跡に応じた位置指令を図２に示したサーボ制御装置１００に与えることでモータ１２を回転駆動させ、図７に示した移動軌跡に沿ってサドル５を移動させる。このときのサドル５の移動速度としては、許容加速度を０．２Ｇ以上に設定しておくことが好ましい。本実施形態では、速度４６００ｍｍ／分で移動させ、半径３ｍｍの円弧から直線に移るところにおいて、加速度０．２Ｇから０Ｇの衝撃を発生させることとしている。
【００８９】
なお、機械定数同定のためのサーボ制御においては、サーボ制御装置１００内の機械たわみ補償部２００及びコラム反力補償部３１１は、オフ状態とされており、機械のたわみ補償やコラム反力補償等がされないようになっている。
【００９０】
加速度センサ５２は、コラム３またはサドル５に取り付けられており、衝撃発生部５１によってサドル５に与えられた衝撃によるサドル５の振動を検出し、この検出信号をコラム剛性同定部５３及びコラム粘性同定部５４に出力する。
【００９１】
コラム剛性同定部５３は、衝撃発生部５１によりサドル５に衝撃が与えられた場合に、加速度センサ５２によって取得された検出信号からコラム共振周波数ｑを求め、これを上述した（２１）式に代入することで、コラム剛性ＫCを同定する。
【００９２】
コラム粘性同定部５４は、衝撃発生部５１によりサドル５に衝撃が与えられた場合に、加速度センサ５２によって取得された検出信号から振動の減衰率を求め、この減衰率に基づいてコラム粘性ＣCを同定する。以下、コラム粘性ＣCの同定方法について図８を用いて説明する。
図８に示すような減衰振動が得られた場合、振動の振幅Ｐ１，Ｐ２，Ｐ３・・・をそれぞれ測定する。続いて、これらの振幅値Ｐ１，Ｐ２，Ｐ３・・・から対数減衰率の平均δを求める。例えば、４波形を対象とした場合、ＬＮ（Ｐ１／Ｐ２）、ＬＮ（Ｐ２／Ｐ３）、ＬＮ（Ｐ３／Ｐ４）の平均を計算して対数減衰率の平均δを求める。続いて、対数減衰率δ、コラムイナーシャＪc、及び上述のコラム剛性同定部５３によって同定されたコラム剛性Ｋcを用いて、以下の式からコラム粘性ＣCを算出する。
【００９３】
ＣC＝δ＊ＳＱＲＴ(Ｊc＊Ｋc)／π
【００９４】
機械定数設定部５５は、コラム剛性同定部５３によって同定されたコラム剛性ＫC及びコラム粘性同定部５４によって同定されたコラム粘性ＣCを機械たわみ補償器２００及び速度フィードフォワード部２０１のコラム反力補償部３１１に設定する。また、機械定数設定部５５は、Ｗ軸位置、アタッチメント等の機械状態と上記コラム剛性ＫC及びコラム粘性ＣC以外の機械定数とが対応付けられたテーブルを保有しており、そのときの機械状態に応じた機械定数をテーブルから読み出し、読み出した各機械定数を機械たわみ補償器２００及び速度フィードフォワード部２０１のコラム反力補償部３１１に設定する。
【００９５】
そして、このようにして、機械たわみ補償器２００及び速度フィードフォワード部２０１のコラム反力補償部３１１の機械定数が全て設定されると、サーボ制御装置１００は機械たわみ補償器２００及びコラム反力補償部３１１を作動させ、これらの補償モデルを用いた位置制御を行う。
【００９６】
以上、説明してきたように、本実施形態に係るサーボ制御装置によれば、コラム３の振動による位置制御誤差の補償を行う機械たわみ補償部２００だけではなく、コラム３の反力によるサドル５の振動による位置制御誤差を補償するコラム反力補償部３１１を備えるので、コラム３の反力によるサドル５の振動を補償でき、コラム３が振動している場合でも高い精度でサドル５の位置制御を行うことが可能となる。
【００９７】
図９は、機械たわみ補償部２００及びコラム反力補償部３１１による補償を行う前と、行った後の位置制御の精度を示したグラフである。図９において、横軸は時間、縦軸はＹ軸方向におけるラム先端の位置である。
今回の試験では、図１３に示されるテーブルの上面に５００ｍｍの厚みの治具（イケール）を配置し、その治具の上に格子スケールを配置した。この状態で、図７に示すようなＹＺ平面上における略四角形の移動軌跡に応じた位置指令を図２に示したサーボ制御装置１００に与えることによりモータ１２を回転駆動させ、図７に示した移動軌跡に沿ってサドル５及びラム６を移動させた。この試験では、速度４６００ｍｍ／ｍｉｎでサドル５及びラム６を移動させた。図９は、このような試験を行ったときのラム先端位置を格子スケールで測定したものである。図９は、ラム先端がＹ軸に沿って移動した後に、円弧を描き停止するまでの動作部分の波形を切り出して示した図であり、Ｙ＝−１０３の位置を停止位置（基準位置）としている。図９から、補償を行うことにより、サドル５及びラム６の振動が効果的に抑制され、位置制御の精度が向上していることがわかる。
【００９８】
〔第２の実施形態〕
上述したように、定数同定部５０によって機械たわみ補償部２００及びコラム反力補償部３１１の定数が設定された場合でも、設定された定数が適切ではなく、これらの補償部を作動させたとしても依然としてサドル５が振動してしまい、位置制御の精度が低下してしまうということが考えられる。
【００９９】
そこで、第２の実施形態に係るサーボ制御装置では、一度設定した定数が適切か否かを確認するために、機械たわみ補償部２００及びコラム反力補償部３１１を作動させている状態において、衝撃発生部５１がサドル５に対してＹ軸方向に衝撃を与え、このときのサドル５の振動の様子を加速度センサによる検出信号で確認する。この場合において、加速度センサ５２からの検出信号において振動の振幅が既定の閾値を超えていた場合には、一度設定した機械定数を調整する。このため、図１０に示すように、第２の実施形態に係るサーボ制御装置の定数同定部５０´は、振動判定部５６と、定数調整部５７とを更に備えている。
【０１００】
振動判定部５６によって、加速度センサ５２からの検出信号に基づくサドル５の振動の振幅が既定の閾値を超えていると判定された場合には、定数調整部５７は、機械定数設定部５５によって一度設定された機械定数を調整する。具体的には、定数調整部５７は、衝撃を与えた直後における振動が比較的大きい場合には、コラム粘性ＣCが大きくなる方向に変更し、衝撃を与えてしばらくたってから振動が比較的大きくなる場合には、補償周波数を変更することで、機械定数を調整する。そして、機械定数を変更した場合には、再度同様の過程を実施することにより、振動判定部５６によって、サドル５の振動の振幅が既定の閾値以下であると判定されるまで、機械定数の調整を繰り返し行う。
【０１０１】
このように、本実施形態に係るサーボ制御装置によれば、一度設定した機械定数が適切であるか否かを確認する手段を有し、機械定数が適切であるとの判定結果が得られるまで、機械定数の調整を繰り返し行うので、サドル５の位置制御の精度をより向上させることができる。
【０１０２】
なお、本実施形態においては、サドル５に加速度センサ５２を取り付けておくことが必要である。これは、機械たわみ補償部２００及びコラム反力補償部３１１を作動させることにより、サドル５の位置制御は精度が向上するのに対し、コラム３は依然として振動したままであるからである。従って、コラム３に加速度センサ５２を取り付けていた場合には、機械たわみ補償部２００及びコラム反力補償部３１１による位置補償の効果を確認することができず、よって、機械定数が適切であるか否かの判断もできないからである。
【０１０３】
〔第３の実施形態〕
上述した第１の実施形態及び第２の実施形態においては、サドル５に対して外的な衝撃を与えることによりわざとサドル５を振動させ、この振動の状態に基づいて機械定数の同定を行っていた。
これに対し、本実施形態は、一度機械定数が設定された後の状態を前提としたものであり、サーボ制御装置による位置制御が行われている状態において、換言すると、工作機械を駆動している状態において、位置制御の精度が低下してきた場合に、機械定数の調整を徐々に行っているものである。
【０１０４】
具体的には、本実施形態に係るサーボ制御装置は、機械定数調整部６０を備えている。機械定数調整部６０は、図１１に示すように、指令位置θが入力されるコラム共振モデル６１と、コラム共振モデル６１によって補償された指令位置θをフィルタリングするバンドパスフィルタ６２と、加速度センサ５２からの信号をフィルタリングするバンドパスフィルタ６３と、バンドパスフィルタ６２，６３を通過したそれぞれの信号を比較し、差がなくなるまで機械定数を調整する調整部６４とを備えている。
【０１０５】
このような機械定数調整部６０において、指令位置θが入力されると（図１２のステップＳＡ１）、この指令位置θはコラム共振モデル６１を通過した後にバンドパスフィルタ６２によりフィルタリングされ、調整部６４に出力される（図１２のステップＳＡ２）。一方、加速度センサ５２からの振動の検出信号は、バンドパスフィルタ６３を通過した後、調整部６４に出力される。調整部６４では、コラム共振モデル６１側からの信号の周波数と加速度センサ５２側からの信号の周波数とが比較される（図１２のステップＳＡ３）。
【０１０６】
この結果、コラム共振モデル６１側からの信号の周波数が加速度センサ５２側からの信号の周波数よりも大きかった場合には、調整部６４は、コラム剛性ＫCを所定量小さくする。一方、コラム共振モデル６１側からの信号の周波数が加速度センサ５２側からの信号の周波数よりも小さかった場合には、調整部６４は、コラム剛性ＫCを所定量大きくする（図１２のステップＳＡ４）。調整部６４は、両者の周波数が一致する又は両者の周波数の差分が既定の閾値以内と判定するまで、上記のようなコラム剛性ＫCの調整を繰り返し行う（図１２のステップＳＡ５）。
【０１０７】
続いて、調整部６４において、両者の周波数が一致すると判定された場合には、続いて、両者の振幅が比較される（図１２のステップＳＡ６）。この結果、コラム共振モデル６１側からの信号の振幅が加速度センサ５２側からの信号の振幅よりも大きかった場合には、調整部６４は、コラム粘性ＣCを所定量大きくする。一方、コラム共振モデル６１側からの信号の振幅が加速度センサ５２側からの信号の振幅よりも小さかった場合には、調整部６４は、コラム粘性ＣCを所定量小さくする（図１２のステップＳＡ７）。調整部６４は、両者の振幅が一致する又は両者の振幅の差分が既定の閾値以内と判定するまで、上記のようなコラム粘性ＣCの調整を繰り返し行う（図１２のステップＳＡ８）。
そして、両者の振幅が一致すると判定した場合には、ステップＳＡ１に戻り、上述した処理を繰り返し行う。
【０１０８】
以上、説明してきたように本実施形態に係るサーボ制御装置によれば、通常の駆動状態においても一定の時間間隔で、機械たわみ補償部２００及びコラム反力補償部３１１における機械定数が適切な値に設定されているか否かを確認し、適切でない場合には、適切な値に調整するので、サドル５の位置制御の精度を所定の精度以上に常に維持することができる。
【符号の説明】
【０１０９】
３  コラム
５  サドル
６  ラム
９  ボールねじ送り部
１０  ボールねじナット
１１  ボールねじ軸
１２  モータ
１３  モータエンコーダ
１４  リニアスケール
５０，５０´  定数同定部
５１  衝撃発生部
５２  加速度センサ
５３  コラム剛性同定部
５４  コラム粘性同定部
５５  機械定数設定部
５６  振動判定部
５７  定数調整部
６０  機械定数調整部
６１  コラム共振モデル
６２，６３  バンドパスフィルタ
６４  調整部
１００  サーボ制御装置
２００  機械たわみ補償部
２０１  速度フィードフォワード部
３１１  コラム反力補償部
【図１】
2011003137.tif 000007
【図２】
2011003137.tif 000008
【図３】
2011003137.tif 000009
【図４】
2011003137.tif 000010
【図５】
2011003137.tif 000011
【図６】
2011003137.tif 000012
【図７】
2011003137.tif 000013
【図８】
2011003137.tif 000014
【図９】
2011003137.tif 000015
【図１０】
2011003137.tif 000016
【図１１】
2011003137.tif 000017
【図１２】
2011003137.tif 000018
【図１３】
2011003137.tif 000019