JP4361285B2 - Numerical controller - Google Patents

Numerical controller Download PDF

Info

Publication number
JP4361285B2
JP4361285B2 JP2003020482A JP2003020482A JP4361285B2 JP 4361285 B2 JP4361285 B2 JP 4361285B2 JP 2003020482 A JP2003020482 A JP 2003020482A JP 2003020482 A JP2003020482 A JP 2003020482A JP 4361285 B2 JP4361285 B2 JP 4361285B2
Authority
JP
Japan
Prior art keywords
control
command value
transfer function
correction
friction
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.)
Expired - Lifetime
Application number
JP2003020482A
Other languages
Japanese (ja)
Other versions
JP2004234205A (en
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
Priority to JP2003020482A priority Critical patent/JP4361285B2/en
Publication of JP2004234205A publication Critical patent/JP2004234205A/en
Application granted granted Critical
Publication of JP4361285B2 publication Critical patent/JP4361285B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Control Of Position Or Direction (AREA)
  • Numerical Control (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、例えば、テーブルなどの制御対象の位置を制御する数値制御装置に関するものである。
【0002】
【従来の技術】
例えば、ボールネジを用いている駆動機構において、リニアスケールなどのセンサが制御対象の位置情報を検出してフィードバックするフルクローズド制御方式が採用されている場合、その制御対象の移動方向の反転時に機械端で生じるロストモーション(ガタや弾性変形)をセンサで検出することが可能であるが、フィードバック制御系の応答遅れに起因して象限突起を生じることがある。
従来の数値制御装置は、象限突起の発生を抑制するため、制御対象の移動方向が反転すると、所定の幅の台形、あるいは、矩形のバックラッシュ補正量を制御対象の位置指令値に加算するようにしている。なお、台形の幅は、予め、補正を加えない場合に生じる突起形状をセンサで計測して決定している(以下の特許文献1を参照)。
【0003】
【特許文献1】
特開2000−35814公報(第5頁から第9頁、図5)
【0004】
【発明が解決しようとする課題】
従来の数値制御装置は以上のように構成されているので、制御対象の移動速度や円弧半径などの制御条件が変わる度に、補正を加えない場合に生じる突起形状をセンサで計測して、台形の幅を決定する必要がある。そのため、色々な移動速度と円弧半径が組み合わされた連続動作で制御対象を駆動する場合には、多くの手間を要する課題があった。
また、バックラッシュ補正量の形状が台形又は矩形であるものとして制御対象の位置指令値に加算しているが、実際に生じる誤差の形状は必ずしも台形や矩形にはならないため、精度よく象限突起の発生を抑制することができない課題があった。
【0005】
この発明は上記のような課題を解決するためになされたもので、制御対象の移動方向が反転するときに生じる弾性変形を精度よく補償することができる数値制御装置を得ることを目的とする。
【0006】
【課題を解決するための手段】
この発明に係る数値制御装置は、制御対象の位置情報を検出してフィードバックするフルクローズド制御方式が採用されている駆動機構において、制御対象の制御方向が反転すると、その反転が発生してからの経過時間に応じて、制御対象に作用する摩擦から、制御対象の位置指令値に対する制御対象の位置の追従誤差に至るまでの伝達関数がモデル化され、伝達関数がラプラス演算子sの多項式で表され、かつ、定数が0である分子多項式および定数が0でない分母多項式で表されたものである伝達関数型フィルタを用いてバックラッシュの補正指令値を更新する補正指令値更新手段を設け、その補正指令値更新手段により更新されたバックラッシュの補正指令値を位置指令値に加算し、その加算結果に基づいて制御対象を駆動するモータの回転を制御するようにしたものである。
【0007】
【発明の実施の形態】
以下、この発明の実施の一形態を説明する。
実施の形態1.
図1はこの発明の実施の形態1による数値制御装置を示す構成図であり、図において、サーボモータ1は制御対象であるテーブル6を図中左方向又は右方向に駆動するものであり、エンコーダ2はサーボモータ1の回転量を検出する。カップリング3はサーボモータ1とボールネジ4を結合し、ボールネジナット5はボールネジ4と嵌合されている。制御対象であるテーブル6は被加工物や工具などが固定され、ボールネジナット5と結合されている。
【0008】
リニアスケール7は図示外のベース部分に固定され、テーブル6の位置を検出する。リニアスケールヘッド8はテーブル6に固定され、リニアスケール7と嵌合されている。
なお、ボールネジ4とボールネジナット5はサーボモータ1の回転運動を直線運動に変換し、テーブル6はボールネジ4とボールネジナット5などの駆動伝達部材と、図示外の直動案内機構(ガイドレール)とに従って所定の位置に移動される。
【0009】
位置指令生成部9はテーブル6の位置(所定の一軸方向の位置)を数値制御する際、例えば加工プログラムなどにしたがって位置指令値を生成する。制御方向検出部10は位置指令生成部9により生成された位置指令値を監視して、テーブル6の軸方向の制御方向を検出し、その制御方向に応じて正又は負の大きさ“1”のステップ状の制御方向信号を出力する。ただし、その制御方向が反転しない場合には、前回と同じ制御方向信号を出力する。初期状態では零値の制御方向信号を出力する。なお、制御方向検出部10は制御方向検出手段を構成している。
【0010】
摩擦補償ゲイン部11は制御方向検出部10から出力された制御方向信号に所定の摩擦補償ゲインを乗算し、その乗算結果をテーブル6に作用する摩擦を打ち消す補正トルク量に相当する電流指令補正値として加算器17に出力する。
最大バックラッシュ補正ゲイン部12は制御方向検出部10から出力された制御方向信号に所定の最大バックラッシュ補正量を乗算し、その乗算結果をステップ状の最大バックラッシュ補正信号として伝達関数型フィルタ13に出力する。伝達関数型フィルタ13はテーブル6に作用する摩擦から、テーブル6の位置とサーボモータ1の位置との偏差に至るまでの伝達関数がモデル化され、最大バックラッシュ補正ゲイン部12から出力された最大バックラッシュ補正信号を入力すると、テーブル6の制御方向の反転が発生してからの経過時間に応じたバックラッシュの補正指令値を出力する。なお、最大バックラッシュ補正ゲイン部12及び伝達関数型フィルタ13から補正指令値更新手段が構成されている。
【0011】
加算器14は位置指令生成部9により生成された位置指令値と伝達関数型フィルタ13により更新された補正指令値を加算し、位置制御部15は加算器14の加算結果とリニアスケールヘッド8から出力されたテーブル6の位置情報との差に基づいて速度指令値を生成する。
速度制御部16はエンコーダ2から出力されたサーボモータ1の回転角度情報を位置座標系に換算してサーボモータ1の速度情報を求め、その速度情報と位置制御部15により生成された速度指令値との差に基づいて電流指令値を生成する。加算器17は速度制御部16により生成された電流指令値と摩擦補償ゲイン部11から出力された電流指令補正値を加算して補正電流指令値(制御信号)を生成する。電流制御部18は加算器17により生成された補正電流指令値に基づいてサーボモータ1の回転を制御する。なお、摩擦補償ゲイン部11、加算器14、位置制御部15、速度制御部16、加算器17及び電流制御部18から制御手段が構成されている。
【0012】
次に動作について説明する。
まず、位置指令生成部9は、テーブル6の位置(所定の一軸方向の位置)を数値制御する際、例えば加工プログラムなどにしたがって位置指令値を生成する。
制御方向検出部10は、位置指令生成部9が位置指令値の生成を開始すると、その位置指令値を監視して、テーブル6の軸方向の制御方向を検出する。
例えば、テーブル6が図中右方向に移動している場合、“+1”の制御方向信号を出力し、左方向に移動している場合、“−1”の制御方向信号を出力する。
【0013】
最大バックラッシュ補正ゲイン部12は、制御方向検出部10から“+1”又は“−1”の制御方向信号を受けると、その制御方向信号に所定の最大バックラッシュ補正量を乗算し、その乗算結果を最大バックラッシュ補正信号として伝達関数型フィルタ13に出力する。
伝達関数型フィルタ13は、最大バックラッシュ補正ゲイン部12から最大バックラッシュ補正信号を受けると、その最大バックラッシュ補正信号を入力条件として、テーブル6の制御方向の反転が発生してからの経過時間に応じたバックラッシュの補正指令値を出力する。
【0014】
加算器14は、伝達関数型フィルタ13がバックラッシュの補正指令値を更新すると、その補正指令値と位置指令生成部9により生成された位置指令値を加算し、位置制御部15は、加算器14の加算結果とリニアスケールヘッド8から出力されたテーブル6の位置情報との差に基づいて速度指令値を生成する。
摩擦補償ゲイン部11は、制御方向検出部10から“+1”又は“−1”の制御方向信号を受けると、その制御方向信号に所定の摩擦補償ゲインを乗算し、その乗算結果を電流指令補正値として加算器17に出力する。
【0015】
加算器17は、速度制御部16により生成された電流指令値と摩擦補償ゲイン部11から出力された電流指令補正値を加算して補正電流指令値を生成する。
電流制御部18は、加算器17が補正電流指令値を生成すると、その補正電流指令値に基づいてサーボモータ1の回転を制御する。即ち、サーボモータ1の駆動電流を制御する。
これにより、サーボモータ1の駆動電流に応じた角度だけサーボモータ1の回転軸が回転し、その回転に応じた距離だけテーブル6が移動する。
【0016】
ここで、図2はサーボモータ1とテーブル6の間で生じる弾性変形を説明する説明図である。
Mはサーボモータ1の回転運動をテーブル6の直線運動座標系に等価変換して表現したものであり、Lはテーブル6を示し、Kはボールネジ4などの駆動伝達部材に含まれる弾性要素をまとめてテーブル6の座標系で表現したものであり、Cは駆動伝達部材に含まれるダンピング要素をまとめてテーブル6の座標系で表現したものである。
【0017】
図2(a)はサーボモータMとテーブルLが右に移動している場合を示している。即ち、サーボモータMに作用する駆動力Uと、テーブルLに作用する動摩擦Fとが釣合い、弾性要素Kが縮んでいることを示している。
図2(b)はサーボモータMとテーブルLが左に移動している場合を示している。即ち、駆動力Uと動摩擦Fの方向が反転し、弾性要素Kは伸びていることを示している。
テーブル6に対する位置指令値が右方向から左方向に反転する場合、テーブル6の位置をリニアスケール7とリニアスケールヘッド8で検出してフィードバック制御するため、テーブル6とサーボモータ1の間に弾性変形が生じていても、テーブル6を位置指令値に追従させることができる。しかし、フィードバック制御系には応答遅れがあるため、フィードバック制御だけでは追従誤差が生じてしまう。
【0018】
図3はこの実施の形態1による数値制御装置の制御系を示すブロック図であり、テーブル6とサーボモータ1は、慣性モーメントとその間に介在するバネを使って力学的にモデル化している。JLはテーブル6の慣性モーメント、JMはサーボモータ1の慣性モーメント、Kはボールネジ4などの駆動伝達部材の剛性を表すバネ定数、Cはバネに作用する粘性摩擦係数、sは微分を表すラプラス演算子である。
また、Fはテーブル6に作用する動摩擦トルク、F0はこの動摩擦を打ち消すための摩擦補償トルクである。V(s)は速度制御部16であり、例えば、Kv(1+Ki/s)で表現され、Kvは速度比例ゲイン、Kiは速度積分ゲインである。P(s)は位置制御部15であり、例えば、位置比例ゲインKpで表現される。θrは位置指令値、θMはサーボモータ1の位置、θLはテーブル6の位置である。
ただし、図3では電流制御部18は、その応答が位置制御部15や速度制御部16と比べて十分早いものとみなして省略している。
【0019】
例えば、テーブル6に対する位置指令が正方向から負方向に反転する場合、反転直前まではテーブル6の位置θLは位置指令値θrに追従しているが、反転時にテーブル6に作用する動摩擦Fの方向が反転するために、バネKが伸びて縮む分だけ大きく動く必要が生じる。
バネKの変位量をθL−θMとすると、動摩擦FからθL−θMまでの伝達関数は下記の式(1)で与えられる。

Figure 0004361285
ただし、J=(JL+JM)であり、(F/K)は最大バックラッシュ補正ゲイン部12における最大バックラッシュ補正量に相当し、B(s)は最大バックラッシュ補正量の時間変化を表す伝達関数である。
【0020】
位置指令値θrからテーブル6の位置θLまでの伝達関数をQ(s)とすると、位置指令値θrに対するテーブル6の位置θLの追従誤差は1−Q(s)となる。
速度制御部16をV(s)=Kv(1+Ki/s)とし、位置制御部15をP(s)=Kpとすると、伝達関数Q(s)は下記の式(2)で与えられる。
Figure 0004361285
【0021】
テーブル6に対する位置指令値θrの移動方向が反転するときに生じる誤差Δθは、下記の式(3)で与えられる。
Δθ=(1−Q(s))・B(s) (3)
したがって、最大バックラッシュ補正ゲイン部12及び伝達関数型フィルタ13に対して式(3)に相当する伝達関数を設定すれば、テーブル6の誤差を補正することができる。
また、Q(s)で表される制御系の応答が遅い場合には、その応答遅れを考慮して、下記の式(4)で表される伝達関数を伝達関数型フィルタ13に設定すれば、高精度にテーブル6の誤差を補正することができる。
Δθ/Q(s)=(1−Q(s))・B(s)/Q(s) (4)
【0022】
例えば、JL、JM、Cと比べてKが十分大きい場合には、式(1)は下記の式(5)で近似することができる。
B(s)=1 (5)
更に、速度制御部16の応答が位置制御部15と比べて十分速いとみなせる場合には、制御系の応答Q(s)は下記の式(6)で近似することができる。
Q(s)=1/(s/Kp+1) (6)
以上より、伝達関数型フィルタ13には下記の式(7)あるいは式(8)で与えられる伝達関数を設定すればよい。
(1−Q(s))・B(s)=(s/Kp)/(s/Kp+1) (7)
(1−Q(s))・B(s)/Q(s)=s/Kp (8)
【0023】
また、JL,JMと比べてC,Kが十分大きい場合には、式(1)は下記の式(9)で近似することができる。
B(s)=1/{(C/K)s+1} (9)
したがって、伝達関数型フィルタ13には下記の式(10)あるいは式(11)で与えられる伝達関数を設定すればよい。
(1−Q(s))・B(s)=(s/Kp)
/[{C/(K・Kp)}s2+{(C/K)
+(1/Kp)}s+1] (10)
(1−Q(s))・B(s)/Q(s)=s/[Kp{(C/K)s+1}] (11)
【0024】
なお、図4(a)は直交するX−Yの2軸に時計周りの円弧位置指令を与えて運動させた場合のX軸とY軸の時間応答を示しており、図4(b)は象限切り替え近傍のY軸指令値の時間応答を拡大表示している。実線がバックラッシュの補正指令値が加算された位置指令値を示し、点線が補正前の位置指令値を示している。
図4(c)はバックラッシュ補正を実施せず、位置指令値に対するフィードバック制御を実施した場合の円弧の一部を、誤差を拡大して表示したものである。実線がテーブル6の運動軌跡を示し、破線がサーボモータ1の運動軌跡を示している。実線のテーブル6の運動軌跡は、ほぼ円を描いているが、最下端で大きな突起を生じている。これが応答遅れが原因で生じる象限突起である。
図4(d)はバックラッシュ補正を実施して、補正後の位置指令に対するフィードバック制御を実施した場合の円弧の一部を拡大して表示したものである。実線で示されるテーブル6の軌跡は象限切り替え部でも滑らかに円弧を描いている。
【0025】
以上で明らかなように、この実施の形態1によれば、テーブル6の制御方向が反転すると、その反転が発生してからの経過時間に応じてバックラッシュの補正指令値を更新して、その補正指令値を位置指令値に加算し、その加算結果に基づいてテーブル6を駆動するサーボモータ1の回転を制御するように構成したので、テーブル6の移動方向が反転するときに生じる弾性変形を精度よく補償することができるようになり、その結果、テーブル6の位置θLを位置指令値θrに精度よく追従させることができる効果を奏する。
【0026】
また、この実施の形態1によれば、テーブル6の制御方向を考慮してテーブル6に作用する摩擦を打ち消す補正トルク量を求め、その補正トルク量を考慮してサーボモータ1の制御信号を生成するように構成したので、テーブル6に作用する摩擦が大きい場合でも、テーブル6の移動方向が反転するときに生じる弾性変形を精度よく補償することができる効果を奏する。
また、この実施の形態1によれば、テーブル6に作用する摩擦から、テーブル6の位置θLとサーボモータ1の位置θMとの偏差に至るまでの伝達関数がモデル化された伝達関数型フィルタ13を用いてバックラッシュの補正指令値を更新するように構成したので、予め、補正を加えない場合に生じる突起形状をセンサで計測することなく、テーブル6の移動方向が反転するときに生じる弾性変形を補償することができる効果を奏する。
更に、この実施の形態1によれば、テーブル6の制御方向が反転すると、所定のバックラッシュ量を伝達関数型フィルタ13に入力するように構成したので、構成の複雑化を招くことなく、テーブル6の移動方向が反転するときに生じる弾性変形を精度よく補正することができる効果を奏する。
また、この実施の形態は、以下の効果を奏する。
(1)この実施の形態1によれば、テーブル6に作用する摩擦から、テーブル6の位置θLとサーボモータ1の位置θMとの偏差に至るまでの伝達関数がモデル化され、上記伝達関数がラプラス演算子sの多項式で表され、かつ、定数が0である分子多項式および定数が0でない分母多項式で表されたものである伝達関数型フィルタ13を用いてバックラッシュの補正指令値を更新するように構成したので、予め、補正を加えない場合に生じる突起形状をセンサで計測することなく、テーブル6の移動方向が反転するときに生じる弾性変形を補償することができる効果を奏する。
(2)この実施の形態1によれば、上記(1)に加え、テーブル6の制御方向を考慮してテーブル6に作用する摩擦を打ち消す補正トルク量を求め、その補正トルク量を考慮してサーボモータ1の制御信号を生成するように構成したので、テーブル6に作用する摩擦が大きい場合でも、テーブル6の移動方向が反転するときに生じる弾性変形を精度よく補償することができる効果を奏する。
(3)この実施の形態1によれば、上記(1)に加え、テーブル6の制御方向が反転すると、所定のバックラッシュ量を伝達関数型フィルタ13に入力するように構成したので、構成の複雑化を招くことなく、テーブル6の移動方向が反転するときに生じる弾性変形を精度よく補正することができる効果を奏する。
【0027】
実施の形態2.
図5はこの発明の実施の形態2による数値制御装置を示す構成図であり、図において、図1と同一符号は同一または相当部分を示すので説明を省略する。
最大バックラッシュ補正ゲイン算出部19は位置指令生成部9により生成された位置指令値から最大バックラッシュ補正量を算出し、制御方向検出部10から出力された制御方向信号に当該最大バックラッシュ補正量を乗算し、その乗算結果を最大バックラッシュ補正信号として伝達関数型フィルタ13に出力する。なお、最大バックラッシュ補正ゲイン算出部19は補正指令値更新手段を構成している。
【0028】
図6は最大バックラッシュ補正ゲイン算出部19における最大バックラッシュ補正量の算出法を説明する説明図である。
テーブル6に作用する動摩擦Fは、機械の組み立て具合により、位置に依存して値が増減する。ボールネジ4が両端で軸受に支持されている構造の場合には、両端で動摩擦が大きく、中央では小さくなる場合が多い。予め、等速直線運動をさせた場合の制御電流を計測する方法などで、位置指令値θrと動摩擦Fの関係を計測し、関数F(θr)で近似表現する。この場合、例えば、下記の式(12)で表現される。
Figure 0004361285
ただし、a1,a2,b1,b2は適当な定数である。
【0029】
機械のバネ定数は位置に依存して変化する。サーボモータ1からボールネジナット5までの長さが位置に依存して変化するためである。機械の設計データあるいは計測値に基づいて、位置指令値θrとバネ定数Kの関係を関数K(θr)で近似表現する。この場合、例えば、下記の式(13)で表現される。
K(θr)=1/(a3・θr+b3) (13)
ただし、a3,b3は適当な定数である。
上記のように、関数表現された動摩擦F(θr)とバネ定数K(θr)から、最大バックラッシュ補正量maxΔは位置指令値θrの関数として下記の式(14)で与えられる。
maxΔ=F(θr)/K(θr) (14)
【0030】
次に動作について説明する。
最大バックラッシュ補正ゲイン算出部19は、位置指令生成部9から位置指令値を受けると、その位置指令値から最大バックラッシュ補正量を算出する。
例えば、テーブル6がボールネジ4の端部にある場合は、図6に示すように、最大バックラッシュ補正量を大きくし、テーブル6がボールネジ4の中央部にある場合は、最大バックラッシュ補正量を小さくする。
そして、最大バックラッシュ補正ゲイン算出部19は、上記実施の形態1と同様にして、制御方向検出部10から制御方向信号を受けると、その制御方向信号に当該最大バックラッシュ補正量を乗算し、その乗算結果を最大バックラッシュ補正信号として伝達関数型フィルタ13に出力する。
【0031】
以上で明らかなように、この実施の形態2によれば、位置指令生成部9により生成された位置指令値から最大バックラッシュ補正量を算出し、制御方向検出部10から出力された制御方向信号に当該最大バックラッシュ補正量を乗算し、その乗算結果を伝達関数型フィルタ13に出力するように構成したので、テーブル6の移動方向が反転するときに生じる弾性変形が位置に応じて変化する場合でも精度よく弾性変形を補償することができるようになり、その結果、テーブル6の位置θLを位置指令値θrに高精度に追従させることができる効果を奏する。
【0032】
なお、この実施の形態2では、位置指令値θrと最大バックラッシュ補正量maxΔの関係を近似関数で表現するものについて示したが、これらを実測データに基づいて数値表化し、最大バックラッシュ補正量maxΔを補間計算する算出法を用いても同様な効果を奏することができる。
【0033】
実施の形態3.
図7はこの発明の実施の形態3による数値制御装置を示す構成図であり、図において、図1と同一符号は同一または相当部分を示すので説明を省略する。
摩擦推定部20は位置指令生成部9により生成された位置指令値と加算器17により生成された補正電流指令値(制御信号)からテーブル6に作用する摩擦を推定し、その推定摩擦信号を出力する。最大バックラッシュ補正ゲイン算出部21は摩擦推定部20から出力された推定摩擦信号と位置指令生成部9により生成された位置指令値から最大バックラッシュ補正量を算出し、その最大バックラッシュ補正量を伝達関数型フィルタ13に出力する。なお、摩擦推定部20及び最大バックラッシュ補正ゲイン算出部21は補正指令値更新手段を構成している。
【0034】
摩擦推定部20は、下記の式(15)に基づいてテーブル6に作用する推定摩擦F^を計算する。
F^=KT・i−{Jαr+Dωr+FM・sign(ωr)} (15)
ただし、KTはサーボモータ1のトルク定数、iは摩擦補償を含む補正電流指令値、αrは位置指令値θrの2階微分値である加速度指令値、ωrは位置指令値θrの1階微分値である速度指令値、J(=JL+JM)はテーブル6とサーボモータ1など機械系の慣性モーメントの合計値、Dはサーボモータ1及びテーブル6に作用する粘性摩擦係数の合計値、FMはサーボモータ1に作用する摩擦、sign(ωr)はωrが正のときは“1”を出力し、負のときは“−1”を出力する符号関数を示している。
【0035】
最大バックラッシュ補正ゲイン算出部21は、下記の式(16)に基づいて最大バックラッシュ補正量maxΔを算出する。
maxΔ=F^/K(θr) (16)
ただし、F^は摩擦推定部20から出力された推定摩擦、K(θr)は位置指令値θrとバネ定数Kの関係を表す関数である。
【0036】
次に動作について説明する。
摩擦推定部20は、加算器17から補正電流指令値を受けると、式(15)を用いて、その補正電流指令値と位置指令生成部9により生成された位置指令値からテーブル6に作用する摩擦を推定し、その推定摩擦信号を出力する。
最大バックラッシュ補正ゲイン算出部21は、摩擦推定部20から推定摩擦信号を受けると、式(16)を用いて、その推定摩擦信号と位置指令生成部9により生成された位置指令値から最大バックラッシュ補正量を算出し、その最大バックラッシュ補正量を伝達関数型フィルタ13に出力する。
【0037】
以上で明らかなように、この実施の形態3によれば、位置指令生成部9により生成された位置指令値と加算器17により生成された補正電流指令値からテーブル6に作用する摩擦を推定し、その推定値と位置指令生成部9により生成された位置指令値から最大バックラッシュ補正量を算出し、その最大バックラッシュ補正量を伝達関数型フィルタ13に出力するように構成したので、テーブル6の移動方向が反転するときに生じる弾性変形が位置・速度・移動距離・円弧半径・機械の潤滑状態・温度などの動作条件に応じて変化する場合でも、精度よく弾性変形を補償することができるようになり、その結果、テーブル6の位置θLを位置指令値θrに高精度に追従させることができる効果を奏する。
【0038】
実施の形態4.
図8はこの発明の実施の形態4による数値制御装置を示す構成図であり、図において、図7と同一符号は同一または相当部分を示すので説明を省略する。
摩擦補償値算出部22は制御方向検出部10から出力された制御方向信号に摩擦推定部20から出力された推定摩擦信号を乗算し、その乗算結果を補正トルク量に相当する電流指令補正値として加算器17に出力する。なお、摩擦補償値算出部22は制御手段を構成している。
【0039】
次に動作について説明する。
摩擦補償値算出部22は、制御方向検出部10から制御方向信号を受けると、その制御方向信号に摩擦推定部20から出力された推定摩擦信号F^を乗算し、その乗算結果を補正トルク量に相当する電流指令補正値として加算器17に出力する。
加算器17は、速度制御部16により生成された電流指令値と摩擦補償値算出部22から出力された電流指令補正値を加算して補正電流指令値を生成する。
【0040】
以上で明らかなように、この実施の形態4によれば、制御方向検出部10から出力された制御方向信号に摩擦推定部20から出力された推定摩擦信号を乗算し、その乗算結果を補正トルク量に相当する電流指令補正値として加算器17に出力するように構成したので、テーブル6に作用する摩擦量が位置・速度・移動距離・円弧半径・機械の潤滑状態・温度などの動作条件に応じて変化する場合でも、精度よく弾性変形を補償することができるようになり、その結果、テーブル6の位置θLを位置指令値θrに高精度に追従させることができる効果を奏する。
【0041】
【発明の効果】
以上のように、この発明によれば、制御対象の位置情報を検出してフィードバックするフルクローズド制御方式が採用されている駆動機構において、制御対象の制御方向が反転すると、その反転が発生してからの経過時間に応じて、制御対象に作用する摩擦から、制御対象の位置指令値に対する制御対象の位置の追従誤差に至るまでの伝達関数がモデル化され、伝達関数がラプラス演算子sの多項式で表され、かつ、定数が0である分子多項式および定数が0でない分母多項式で表されたものである伝達関数型フィルタを用いてバックラッシュの補正指令値を更新する補正指令値更新手段を設け、その補正指令値更新手段により更新されたバックラッシュの補正指令値を位置指令値に加算し、その加算結果に基づいて制御対象を駆動するモータの回転を制御するように構成したので、制御対象の移動方向が反転するときに生じる弾性変形を精度よく補償することができる効果がある。
【図面の簡単な説明】
【図1】 この発明の実施の形態1による数値制御装置を示す構成図である。
【図2】 サーボモータとテーブルの間で生じる弾性変形を説明する説明図である。
【図3】 この実施の形態1による数値制御装置の制御系を示すブロック図である。
【図4】 象限突起の抑制効果を説明する説明図である。
【図5】 この発明の実施の形態2による数値制御装置を示す構成図である。
【図6】 最大バックラッシュ補正ゲイン算出部における最大バックラッシュ補正量の算出法を説明する説明図である。
【図7】 この発明の実施の形態3による数値制御装置を示す構成図である。
【図8】 この発明の実施の形態4による数値制御装置を示す構成図である。
【符号の説明】
1 サーボモータ、2 エンコーダ、3 カップリング、4 ボールネジ、5ボールネジナット、6 テーブル、7 リニアスケール、8 リニアスケールヘッド、9 位置指令生成部、10 制御方向検出部(制御方向検出手段)、11 摩擦補償ゲイン部(制御手段)、12 最大バックラッシュ補正ゲイン部(補正指令値更新手段)、13 伝達関数型フィルタ(補正指令値更新手段)、14 加算器(制御手段)、15 位置制御部(制御手段)、16 速度制御部(制御手段)、17 加算器(制御手段)、18 電流制御部(制御手段)、19最大バックラッシュ補正ゲイン算出部(補正指令値更新手段)、20 摩擦推定部(補正指令値更新手段)、21 最大バックラッシュ補正ゲイン算出部(補正指令値更新手段)、22 摩擦補償値算出部(制御手段)。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a numerical controller that controls the position of a control target such as a table, for example.
[0002]
[Prior art]
For example, in a drive mechanism that uses a ball screw, when a fully closed control method is employed in which a sensor such as a linear scale detects and feeds back position information of the control target, the machine end is turned on when the direction of movement of the control target is reversed. It is possible to detect the lost motion (backlash or elastic deformation) generated by the sensor with a sensor, but quadrant protrusions may be generated due to a response delay of the feedback control system.
In order to suppress the occurrence of quadrant protrusions, the conventional numerical control device adds a trapezoidal or rectangular backlash correction amount having a predetermined width to the position command value of the control object when the movement direction of the control object is reversed. I have to. Note that the trapezoidal width is determined in advance by measuring the shape of the protrusion that occurs when correction is not performed with a sensor (see Patent Document 1 below).
[0003]
[Patent Document 1]
JP 2000-35814 A (from page 5 to page 9, FIG. 5)
[0004]
[Problems to be solved by the invention]
Since the conventional numerical control device is configured as described above, each time the control conditions such as the moving speed or arc radius of the controlled object change, the protrusion shape that occurs when correction is not applied is measured with a sensor, and a trapezoidal shape is obtained. It is necessary to determine the width of. For this reason, when the control target is driven by a continuous operation in which various moving speeds and arc radii are combined, there is a problem that requires a lot of labor.
Although the shape of the backlash correction amount is trapezoidal or rectangular and is added to the position command value to be controlled, the actual error shape is not necessarily trapezoidal or rectangular. There was a problem that generation could not be suppressed.
[0005]
The present invention has been made to solve the above-described problems, and an object of the present invention is to obtain a numerical control device capable of accurately compensating for elastic deformation that occurs when the moving direction of a controlled object is reversed.
[0006]
[Means for Solving the Problems]
  The numerical control device according to the present invention employs a full-closed control system that detects and feeds back position information of a controlled object. When the control direction of the controlled object is reversed, Depending on the elapsed time, from the friction acting on the controlled object,Tracking error of control target position with respect to control target position command valueThe transfer function up toThe transfer function is represented by a polynomial of the Laplace operator s, and is represented by a numerator polynomial whose constant is 0 and a denominator polynomial whose constant is not 0.A correction command value update means for updating the backlash correction command value using a transfer function type filter is provided, and the backlash correction command value updated by the correction command value update means is added to the position command value, and the addition is performed. Based on the result, the rotation of the motor that drives the controlled object is controlled.
[0007]
DETAILED DESCRIPTION OF THE INVENTION
An embodiment of the present invention will be described below.
Embodiment 1 FIG.
FIG. 1 is a block diagram showing a numerical control apparatus according to Embodiment 1 of the present invention. In the figure, a servo motor 1 drives a table 6 to be controlled leftward or rightward in the figure, and is an encoder. 2 detects the rotation amount of the servo motor 1. The coupling 3 connects the servo motor 1 and the ball screw 4, and the ball screw nut 5 is fitted with the ball screw 4. A workpiece 6 or a tool is fixed to the table 6 to be controlled, and is coupled to the ball screw nut 5.
[0008]
The linear scale 7 is fixed to a base portion (not shown) and detects the position of the table 6. The linear scale head 8 is fixed to the table 6 and is fitted to the linear scale 7.
The ball screw 4 and the ball screw nut 5 convert the rotational motion of the servo motor 1 into a linear motion, and the table 6 has a drive transmission member such as the ball screw 4 and the ball screw nut 5 and a linear motion guide mechanism (guide rail) (not shown). Is moved to a predetermined position.
[0009]
The position command generation unit 9 generates a position command value according to, for example, a machining program when numerically controlling the position of the table 6 (a predetermined one-axis direction position). The control direction detection unit 10 monitors the position command value generated by the position command generation unit 9, detects the control direction in the axial direction of the table 6, and has a positive or negative magnitude “1” according to the control direction. The step-like control direction signal is output. However, if the control direction is not reversed, the same control direction signal as the previous time is output. In the initial state, a zero value control direction signal is output. The control direction detector 10 constitutes a control direction detector.
[0010]
The friction compensation gain unit 11 multiplies the control direction signal output from the control direction detection unit 10 by a predetermined friction compensation gain, and the multiplication result is a current command correction value corresponding to a correction torque amount that cancels the friction acting on the table 6. To the adder 17.
The maximum backlash correction gain unit 12 multiplies the control direction signal output from the control direction detection unit 10 by a predetermined maximum backlash correction amount, and uses the multiplication result as a step-like maximum backlash correction signal. Output to. The transfer function type filter 13 models the transfer function from the friction acting on the table 6 to the deviation between the position of the table 6 and the position of the servo motor 1, and the maximum output from the maximum backlash correction gain unit 12. When the backlash correction signal is input, a backlash correction command value corresponding to the elapsed time after the control direction inversion of the table 6 occurs is output. The maximum backlash correction gain unit 12 and the transfer function type filter 13 constitute correction command value update means.
[0011]
The adder 14 adds the position command value generated by the position command generation unit 9 and the correction command value updated by the transfer function type filter 13, and the position control unit 15 calculates the addition result of the adder 14 and the linear scale head 8. A speed command value is generated based on the difference from the output position information of the table 6.
The speed control unit 16 converts the rotation angle information of the servo motor 1 output from the encoder 2 into a position coordinate system to obtain the speed information of the servo motor 1, and the speed information and the speed command value generated by the position control unit 15. A current command value is generated based on the difference between The adder 17 adds the current command value generated by the speed control unit 16 and the current command correction value output from the friction compensation gain unit 11 to generate a corrected current command value (control signal). The current control unit 18 controls the rotation of the servo motor 1 based on the corrected current command value generated by the adder 17. The friction compensation gain unit 11, the adder 14, the position control unit 15, the speed control unit 16, the adder 17 and the current control unit 18 constitute a control means.
[0012]
Next, the operation will be described.
First, the position command generation unit 9 generates a position command value according to a machining program, for example, when numerically controlling the position of the table 6 (a predetermined one-axis direction position).
When the position command generation unit 9 starts generating the position command value, the control direction detection unit 10 monitors the position command value and detects the control direction in the axial direction of the table 6.
For example, when the table 6 is moving in the right direction in the figure, a control direction signal of “+1” is output, and when it is moving in the left direction, a control direction signal of “−1” is output.
[0013]
When receiving the control direction signal “+1” or “−1” from the control direction detection unit 10, the maximum backlash correction gain unit 12 multiplies the control direction signal by a predetermined maximum backlash correction amount, and the multiplication result Is output to the transfer function type filter 13 as a maximum backlash correction signal.
When the transfer function type filter 13 receives the maximum backlash correction signal from the maximum backlash correction gain unit 12, the elapsed time after the control direction inversion of the table 6 occurs using the maximum backlash correction signal as an input condition. The backlash correction command value corresponding to the is output.
[0014]
When the transfer function type filter 13 updates the backlash correction command value, the adder 14 adds the correction command value and the position command value generated by the position command generation unit 9, and the position control unit 15 A speed command value is generated based on the difference between the addition result of 14 and the position information of the table 6 output from the linear scale head 8.
When the friction compensation gain unit 11 receives a control direction signal of “+1” or “−1” from the control direction detection unit 10, the friction compensation gain unit 11 multiplies the control direction signal by a predetermined friction compensation gain, and corrects the multiplication result as a current command correction. The value is output to the adder 17.
[0015]
The adder 17 adds the current command value generated by the speed control unit 16 and the current command correction value output from the friction compensation gain unit 11 to generate a corrected current command value.
When the adder 17 generates the corrected current command value, the current control unit 18 controls the rotation of the servo motor 1 based on the corrected current command value. That is, the drive current of the servo motor 1 is controlled.
As a result, the rotation shaft of the servo motor 1 rotates by an angle corresponding to the drive current of the servo motor 1, and the table 6 moves by a distance corresponding to the rotation.
[0016]
Here, FIG. 2 is an explanatory view for explaining elastic deformation occurring between the servo motor 1 and the table 6.
M represents the rotational motion of the servo motor 1 by equivalent conversion to the linear motion coordinate system of the table 6, L represents the table 6, and K represents the elastic elements included in the drive transmission member such as the ball screw 4. The reference numeral C represents the coordinate system of the table 6, and C represents the dumping elements included in the drive transmission member together in the coordinate system of the table 6.
[0017]
FIG. 2A shows a case where the servo motor M and the table L are moved to the right. That is, the driving force U acting on the servo motor M and the dynamic friction F acting on the table L are balanced, indicating that the elastic element K is contracted.
FIG. 2B shows a case where the servo motor M and the table L are moved to the left. That is, the directions of the driving force U and the dynamic friction F are reversed, and the elastic element K is extended.
When the position command value for the table 6 is reversed from the right direction to the left direction, the position of the table 6 is detected by the linear scale 7 and the linear scale head 8, and feedback control is performed. Even if this occurs, the table 6 can be made to follow the position command value. However, since there is a response delay in the feedback control system, a tracking error occurs only with the feedback control.
[0018]
FIG. 3 is a block diagram showing a control system of the numerical control apparatus according to the first embodiment. The table 6 and the servo motor 1 are dynamically modeled using an inertia moment and a spring interposed therebetween. JL is the moment of inertia of the table 6, JM is the moment of inertia of the servo motor 1, K is a spring constant representing the rigidity of the drive transmission member such as the ball screw 4, C is the viscous friction coefficient acting on the spring, and s is the Laplace calculation representing the differentiation A child.
Further, F is a dynamic friction torque acting on the table 6, and F0 is a friction compensation torque for canceling this dynamic friction. V (s) is the speed control unit 16 and is expressed by, for example, Kv (1 + Ki / s), where Kv is a speed proportional gain and Ki is a speed integral gain. P (s) is the position control unit 15 and is represented by, for example, a position proportional gain Kp. θr is a position command value, θM is a position of the servo motor 1, and θL is a position of the table 6.
However, in FIG. 3, the current control unit 18 is omitted because it is assumed that the response is sufficiently faster than the position control unit 15 and the speed control unit 16.
[0019]
For example, when the position command for the table 6 is reversed from the positive direction to the negative direction, the position θL of the table 6 follows the position command value θr until just before the reversal, but the direction of the dynamic friction F acting on the table 6 at the time of reversal. In order to reverse, it is necessary to move largely by the amount that the spring K expands and contracts.
When the displacement amount of the spring K is θL−θM, the transfer function from the dynamic friction F to θL−θM is given by the following equation (1).
Figure 0004361285
However, J = (JL + JM), (F / K) corresponds to the maximum backlash correction amount in the maximum backlash correction gain unit 12, and B (s) is a transfer function representing the time change of the maximum backlash correction amount. It is.
[0020]
If the transfer function from the position command value θr to the position θL of the table 6 is Q (s), the tracking error of the position θL of the table 6 with respect to the position command value θr is 1−Q (s).
When the speed control unit 16 is set to V (s) = Kv (1 + Ki / s) and the position control unit 15 is set to P (s) = Kp, the transfer function Q (s) is given by the following equation (2).
Figure 0004361285
[0021]
The error Δθ that occurs when the moving direction of the position command value θr with respect to the table 6 is reversed is given by the following equation (3).
Δθ = (1−Q (s)) · B (s) (3)
Therefore, if a transfer function corresponding to Expression (3) is set for the maximum backlash correction gain unit 12 and the transfer function type filter 13, the error in the table 6 can be corrected.
Further, when the response of the control system represented by Q (s) is slow, the transfer function represented by the following formula (4) is set in the transfer function type filter 13 in consideration of the response delay. The error of the table 6 can be corrected with high accuracy.
Δθ / Q (s) = (1−Q (s)) · B (s) / Q (s) (4)
[0022]
  For example, when K is sufficiently larger than JL, JM, and C, equation (1) can be approximated by equation (5) below.
  B (s) = 1 (5)
  Furthermore, when the response of the speed control unit 16 can be considered to be sufficiently faster than the position control unit 15, the response Q (s) of the control system can be approximated by the following equation (6).
  Q (s) = 1 / (s / Kp + 1) (6)
  From the above, the transfer function given by the following formula (7) or formula (8) may be set in the transfer function type filter 13.
  (1-Q (s)) · B (s) = (s / Kp) / (s / Kp + 1) (7)
  (1-Q (s)) ・ B (s)/ Q (s)= S / Kp (8)
[0023]
  Further, when C and K are sufficiently larger than JL and JM, the equation (1) can be approximated by the following equation (9).
  B (s) = 1 / {(C / K) s + 1} (9)
  Therefore, a transfer function given by the following formula (10) or formula (11) may be set in the transfer function type filter 13.
  (1-Q (s)) · B (s) = (s / Kp)
                          / [{C / (K · Kp)} s2 + {(C / K)
                          + (1 / Kp)} s + 1] (10)
  (1-Q (s)) ・ B (s)/ Q (s)= S / [Kp {(C / K) s + 1}] (11)
[0024]
4A shows the time response of the X axis and the Y axis when a clockwise arc position command is given to the two orthogonal X-Y axes and moved, and FIG. 4B shows the time response. The time response of the Y-axis command value in the vicinity of quadrant switching is enlarged and displayed. The solid line indicates the position command value to which the backlash correction command value is added, and the dotted line indicates the position command value before correction.
FIG. 4C shows an enlarged part of the arc when the backlash correction is not performed and the feedback control for the position command value is performed. The solid line indicates the motion trajectory of the table 6, and the broken line indicates the motion trajectory of the servo motor 1. The movement trajectory of the solid table 6 is almost circular, but has a large protrusion at the lowermost end. This is a quadrant projection caused by response delay.
FIG. 4D is an enlarged display of a part of the arc when the backlash correction is performed and the feedback control for the corrected position command is performed. The trajectory of the table 6 indicated by the solid line smoothly draws an arc even in the quadrant switching unit.
[0025]
As is apparent from the above, according to the first embodiment, when the control direction of the table 6 is reversed, the backlash correction command value is updated according to the elapsed time since the occurrence of the reversal. Since the correction command value is added to the position command value and the rotation of the servo motor 1 that drives the table 6 is controlled based on the addition result, the elastic deformation that occurs when the moving direction of the table 6 is reversed. As a result, the position θL of the table 6 can be caused to follow the position command value θr with high accuracy.
[0026]
  Further, according to the first embodiment, the correction torque amount that cancels the friction acting on the table 6 is calculated in consideration of the control direction of the table 6, and the control signal of the servo motor 1 is generated in consideration of the correction torque amount. Thus, even if the friction acting on the table 6 is large, there is an effect that it is possible to accurately compensate for the elastic deformation that occurs when the moving direction of the table 6 is reversed.
  Further, according to the first embodiment, the transfer function type filter 13 in which the transfer function from the friction acting on the table 6 to the deviation between the position θL of the table 6 and the position θM of the servo motor 1 is modeled. Is used to update the backlash correction command value, so that the elastic deformation that occurs when the moving direction of the table 6 is reversed without measuring the protrusion shape that occurs when the correction is not applied in advance with the sensor. There is an effect that can compensate.
  Further, according to the first embodiment, when the control direction of the table 6 is reversed, the predetermined backlash amount is input to the transfer function type filter 13, so that the table is not complicated. There is an effect that the elastic deformation that occurs when the moving direction of 6 is reversed can be accurately corrected.
Further, this embodiment has the following effects.
(1) According to the first embodiment, the transfer function from the friction acting on the table 6 to the deviation between the position θL of the table 6 and the position θM of the servo motor 1 is modeled. The backlash correction command value is updated using a transfer function type filter 13 that is expressed by a polynomial of the Laplace operator s and expressed by a numerator polynomial whose constant is 0 and a denominator polynomial whose constant is not 0. Since it comprised in this way, there exists an effect which can compensate the elastic deformation which arises when the moving direction of the table 6 reverses, without measuring beforehand the protrusion shape which arises when correction | amendment is not added with a sensor.
(2) According to the first embodiment, in addition to the above (1), the correction torque amount for canceling the friction acting on the table 6 is obtained in consideration of the control direction of the table 6, and the correction torque amount is taken into consideration. Since the control signal for the servo motor 1 is generated, even when the friction acting on the table 6 is large, there is an effect that it is possible to accurately compensate for the elastic deformation that occurs when the moving direction of the table 6 is reversed. .
(3) According to the first embodiment, in addition to the above (1), when the control direction of the table 6 is reversed, the predetermined backlash amount is input to the transfer function type filter 13. There is an effect that the elastic deformation generated when the moving direction of the table 6 is reversed can be accurately corrected without causing complication.
[0027]
Embodiment 2. FIG.
FIG. 5 is a block diagram showing a numerical control apparatus according to Embodiment 2 of the present invention. In the figure, the same reference numerals as those in FIG.
The maximum backlash correction gain calculation unit 19 calculates the maximum backlash correction amount from the position command value generated by the position command generation unit 9, and adds the maximum backlash correction amount to the control direction signal output from the control direction detection unit 10. And the multiplication result is output to the transfer function type filter 13 as a maximum backlash correction signal. The maximum backlash correction gain calculation unit 19 constitutes a correction command value update unit.
[0028]
FIG. 6 is an explanatory diagram for explaining a method for calculating the maximum backlash correction amount in the maximum backlash correction gain calculation unit 19.
The value of the dynamic friction F acting on the table 6 increases or decreases depending on the position depending on how the machine is assembled. In the case of a structure in which the ball screw 4 is supported by the bearings at both ends, the dynamic friction is large at both ends and often decreases at the center. The relationship between the position command value θr and the dynamic friction F is measured in advance by, for example, a method of measuring a control current when a constant-velocity linear motion is performed, and approximated by a function F (θr). In this case, for example, it is expressed by the following formula (12).
Figure 0004361285
However, a1, a2, b1, and b2 are appropriate constants.
[0029]
The spring constant of the machine varies depending on the position. This is because the length from the servo motor 1 to the ball screw nut 5 changes depending on the position. Based on the machine design data or measured values, the relationship between the position command value θr and the spring constant K is approximated by a function K (θr). In this case, for example, it is expressed by the following formula (13).
K (θr) = 1 / (a3 · θr + b3) (13)
However, a3 and b3 are appropriate constants.
As described above, the maximum backlash correction amount maxΔ is given by the following equation (14) as a function of the position command value θr from the dynamic friction F (θr) and the spring constant K (θr) expressed as a function.
maxΔ = F (θr) / K (θr) (14)
[0030]
Next, the operation will be described.
When receiving the position command value from the position command generation unit 9, the maximum backlash correction gain calculation unit 19 calculates the maximum backlash correction amount from the position command value.
For example, when the table 6 is at the end of the ball screw 4, as shown in FIG. 6, the maximum backlash correction amount is increased, and when the table 6 is at the center of the ball screw 4, the maximum backlash correction amount is increased. Make it smaller.
Then, when the maximum backlash correction gain calculation unit 19 receives the control direction signal from the control direction detection unit 10 as in the first embodiment, the maximum backlash correction amount is multiplied by the control direction signal. The multiplication result is output to the transfer function type filter 13 as a maximum backlash correction signal.
[0031]
As is apparent from the above, according to the second embodiment, the maximum backlash correction amount is calculated from the position command value generated by the position command generation unit 9 and the control direction signal output from the control direction detection unit 10 is calculated. Is multiplied by the maximum backlash correction amount, and the multiplication result is output to the transfer function type filter 13, so that the elastic deformation that occurs when the moving direction of the table 6 reverses changes according to the position. However, it becomes possible to compensate the elastic deformation with high accuracy, and as a result, there is an effect that the position θL of the table 6 can be made to follow the position command value θr with high accuracy.
[0032]
In the second embodiment, the relationship between the position command value θr and the maximum backlash correction amount maxΔ is expressed by an approximate function. However, these are expressed numerically based on actual measurement data, and the maximum backlash correction amount is expressed. A similar effect can be obtained even by using a calculation method for interpolating maxΔ.
[0033]
Embodiment 3 FIG.
FIG. 7 is a block diagram showing a numerical control apparatus according to Embodiment 3 of the present invention. In the figure, the same reference numerals as those in FIG.
The friction estimation unit 20 estimates the friction acting on the table 6 from the position command value generated by the position command generation unit 9 and the corrected current command value (control signal) generated by the adder 17 and outputs the estimated friction signal. To do. The maximum backlash correction gain calculation unit 21 calculates the maximum backlash correction amount from the estimated friction signal output from the friction estimation unit 20 and the position command value generated by the position command generation unit 9, and calculates the maximum backlash correction amount. Output to the transfer function type filter 13. The friction estimation unit 20 and the maximum backlash correction gain calculation unit 21 constitute a correction command value update unit.
[0034]
The friction estimation unit 20 calculates an estimated friction F ^ acting on the table 6 based on the following equation (15).
F ^ = KT · i− {Jαr + Dωr + FM · sign (ωr)} (15)
Where KT is a torque constant of the servo motor 1, i is a correction current command value including friction compensation, αr is an acceleration command value that is a second-order differential value of the position command value θr, and ωr is a first-order differential value of the position command value θr. Is the speed command value, J (= JL + JM) is the total value of the moment of inertia of the mechanical system such as the table 6 and the servo motor 1, D is the total value of the viscous friction coefficient acting on the servo motor 1 and the table 6, and FM is the servo motor Friction acting on 1, sign (ωr) indicates a sign function that outputs “1” when ωr is positive and outputs “−1” when ωr is negative.
[0035]
The maximum backlash correction gain calculation unit 21 calculates the maximum backlash correction amount maxΔ based on the following equation (16).
maxΔ = F ^ / K (θr) (16)
However, F ^ is the estimated friction output from the friction estimation unit 20, and K (θr) is a function representing the relationship between the position command value θr and the spring constant K.
[0036]
Next, the operation will be described.
When the friction estimation unit 20 receives the correction current command value from the adder 17, the friction estimation unit 20 acts on the table 6 from the correction current command value and the position command value generated by the position command generation unit 9 using Expression (15). Friction is estimated and the estimated friction signal is output.
When receiving the estimated friction signal from the friction estimation unit 20, the maximum backlash correction gain calculation unit 21 calculates the maximum backlash from the estimated friction signal and the position command value generated by the position command generation unit 9 using Equation (16). The lash correction amount is calculated, and the maximum backlash correction amount is output to the transfer function type filter 13.
[0037]
As apparent from the above, according to the third embodiment, the friction acting on the table 6 is estimated from the position command value generated by the position command generation unit 9 and the corrected current command value generated by the adder 17. Since the maximum backlash correction amount is calculated from the estimated value and the position command value generated by the position command generator 9, and the maximum backlash correction amount is output to the transfer function type filter 13, the table 6 Even when the elastic deformation that occurs when the moving direction of the motor is reversed varies depending on the operating conditions such as position, speed, moving distance, arc radius, machine lubrication state, temperature, etc., the elastic deformation can be compensated accurately. As a result, the position θL of the table 6 can be caused to follow the position command value θr with high accuracy.
[0038]
Embodiment 4 FIG.
8 is a block diagram showing a numerical control apparatus according to Embodiment 4 of the present invention. In the figure, the same reference numerals as those in FIG.
The friction compensation value calculation unit 22 multiplies the control direction signal output from the control direction detection unit 10 by the estimated friction signal output from the friction estimation unit 20, and uses the multiplication result as a current command correction value corresponding to the correction torque amount. The result is output to the adder 17. The friction compensation value calculation unit 22 constitutes a control means.
[0039]
Next, the operation will be described.
When the friction compensation value calculation unit 22 receives the control direction signal from the control direction detection unit 10, the friction compensation value calculation unit 22 multiplies the control direction signal by the estimated friction signal F ^ output from the friction estimation unit 20, and calculates the corrected torque amount. Is output to the adder 17 as a current command correction value corresponding to.
The adder 17 adds the current command value generated by the speed control unit 16 and the current command correction value output from the friction compensation value calculation unit 22 to generate a corrected current command value.
[0040]
As apparent from the above, according to the fourth embodiment, the control direction signal output from the control direction detection unit 10 is multiplied by the estimated friction signal output from the friction estimation unit 20, and the multiplication result is corrected torque. Since the current command correction value corresponding to the amount is output to the adder 17, the amount of friction acting on the table 6 depends on the operating conditions such as position, speed, moving distance, arc radius, machine lubrication state, and temperature. Even when it changes accordingly, it becomes possible to compensate the elastic deformation with high accuracy, and as a result, there is an effect that the position θL of the table 6 can be made to follow the position command value θr with high accuracy.
[0041]
【The invention's effect】
  As described above, according to the present invention, when the control direction of the control object is reversed in the drive mechanism that adopts the fully closed control method that detects and feeds back the position information of the control object, the reversal occurs. From the friction acting on the controlled object according to the elapsed time fromTracking error of control target position with respect to control target position command valueThe transfer function up toThe transfer function is represented by a polynomial of the Laplace operator s, and is represented by a numerator polynomial whose constant is 0 and a denominator polynomial whose constant is not 0.A correction command value update means for updating the backlash correction command value using a transfer function type filter is provided, and the backlash correction command value updated by the correction command value update means is added to the position command value, and the addition is performed. Since the configuration is such that the rotation of the motor that drives the controlled object is controlled based on the result, there is an effect that the elastic deformation that occurs when the moving direction of the controlled object is reversed can be compensated with high accuracy.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a numerical control apparatus according to Embodiment 1 of the present invention.
FIG. 2 is an explanatory diagram illustrating elastic deformation that occurs between a servo motor and a table.
FIG. 3 is a block diagram showing a control system of the numerical controller according to the first embodiment.
FIG. 4 is an explanatory diagram for explaining the effect of suppressing quadrant protrusions.
FIG. 5 is a block diagram showing a numerical control apparatus according to Embodiment 2 of the present invention.
FIG. 6 is an explanatory diagram illustrating a method for calculating a maximum backlash correction amount in a maximum backlash correction gain calculation unit.
FIG. 7 is a block diagram showing a numerical control apparatus according to Embodiment 3 of the present invention.
FIG. 8 is a block diagram showing a numerical control apparatus according to Embodiment 4 of the present invention.
[Explanation of symbols]
1 Servo motor, 2 Encoder, 3 Coupling, 4 Ball screw, 5 Ball screw nut, 6 Table, 7 Linear scale, 8 Linear scale head, 9 Position command generator, 10 Control direction detector (Control direction detector), 11 Friction Compensation gain section (control means), 12 Maximum backlash correction gain section (correction command value update means), 13 Transfer function type filter (correction command value update means), 14 Adder (control means), 15 Position control section (control) Means), 16 speed control section (control means), 17 adder (control means), 18 current control section (control means), 19 maximum backlash correction gain calculation section (correction command value update means), 20 friction estimation section ( Correction command value update means), 21 maximum backlash correction gain calculation section (correction command value update means), 22 friction compensation value calculation Outlet (control means).

Claims (6)

制御対象の位置情報を検出してフィードバックするフルクローズド制御方式が採用されている駆動機構において、上記制御対象の位置指令値を監視して当該制御対象の制御方向を検出する制御方向検出手段と、上記制御方向検出手段により検出された制御方向が反転すると、その反転が発生してからの経過時間に応じて、制御対象に作用する摩擦から、上記制御対象の位置指令値に対する上記制御対象の位置の追従誤差に至るまでの伝達関数がモデル化され、上記伝達関数がラプラス演算子sの多項式で表され、かつ、定数が0である分子多項式および定数が0でない分母多項式で表されたものである伝達関数型フィルタを用いてバックラッシュの補正指令値を更新する補正指令値更新手段と、上記補正指令値更新手段により更新されたバックラッシュの補正指令値を上記位置指令値に加算し、その加算結果に基づいて上記制御対象を駆動するモータの回転を制御する制御手段とを備えた数値制御装置。In the driving mechanism in which the full-closed control system for feedback by detecting the position information of the control object is employed, the control direction detecting means for detecting the control direction of the control object monitors the position command value of the control object, When the control direction detected by the control direction detection unit is reversed, the position of the control target with respect to the position command value of the control target is determined from the friction acting on the control target according to the elapsed time after the occurrence of the reverse. The transfer function up to the following error is modeled, the transfer function is expressed by a polynomial of the Laplace operator s, and is expressed by a numerator polynomial whose constant is 0 and a denominator polynomial whose constant is not 0. a correction command value updating means for updating the correction command value of backlash using a certain transfer function filter, buffer updated by the corrected command value updating means Rush corrected command value is added to the position command value, the numerical control apparatus and a control means for controlling the rotation of the motor for driving the controlled object on the basis of the addition result. 制御手段は、制御方向検出手段により検出された制御方向を考慮して制御対象に作用する摩擦を打ち消す補正トルク量を求め、その補正トルク量を考慮してモータの制御信号を生成することを特徴とする請求項1記載の数値制御装置。  The control means obtains a correction torque amount that cancels the friction acting on the control target in consideration of the control direction detected by the control direction detection means, and generates a motor control signal in consideration of the correction torque amount. The numerical control apparatus according to claim 1. 補正指令値更新手段は、制御方向検出手段により検出された制御方向が反転すると、所定のバックラッシュ量を伝達関数型フィルタに入力することを特徴とする請求項1または2に記載の数値制御装置。 3. The numerical controller according to claim 1, wherein the correction command value update means inputs a predetermined backlash amount to the transfer function type filter when the control direction detected by the control direction detection means is reversed. . 補正指令値更新手段は、制御方向検出手段により検出された制御方向が反転すると、制御対象の位置指令値に対応するバックラッシュ量を伝達関数型フィルタに入力することを特徴とする請求項1または2に記載の数値制御装置。Corrected instruction value updating means, when the detected control direction reversed by the control direction detection unit, according to claim 1, characterized in that inputting the amount of backlash in the transfer function filter corresponding to the position command value of the control object or 2. The numerical control device according to 2. 補正指令値更新手段は、制御対象の位置指令値とモータの制御信号から当該制御対象に作用する摩擦を推定し、制御方向検出手段により検出された制御方向が反転すると、その摩擦の推定値と当該制御対象の位置指令値からバックラッシュ量を算出して、そのバックラッシュ量を伝達関数型フィルタに入力することを特徴とする請求項1または2に記載の数値制御装置。The correction command value update means estimates the friction acting on the control target from the position command value of the control target and the control signal of the motor, and when the control direction detected by the control direction detection means is reversed, the estimated value of the friction and It calculates the amount of backlash from the position command value of the control object, the numerical control device according to claim 1 or 2, characterized in that inputting the amount of backlash in the transfer function filter. 制御手段は、制御対象の位置指令値とモータの制御信号から当該制御対象に作用する摩擦を推定し、その摩擦の推定値から補正トルク量を求めることを特徴とする請求項2記載の数値制御装置。  3. The numerical control according to claim 2, wherein the control means estimates a friction acting on the control target from a position command value of the control target and a motor control signal, and obtains a correction torque amount from the estimated value of the friction. apparatus.
JP2003020482A 2003-01-29 2003-01-29 Numerical controller Expired - Lifetime JP4361285B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003020482A JP4361285B2 (en) 2003-01-29 2003-01-29 Numerical controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003020482A JP4361285B2 (en) 2003-01-29 2003-01-29 Numerical controller

Publications (2)

Publication Number Publication Date
JP2004234205A JP2004234205A (en) 2004-08-19
JP4361285B2 true JP4361285B2 (en) 2009-11-11

Family

ID=32950105

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003020482A Expired - Lifetime JP4361285B2 (en) 2003-01-29 2003-01-29 Numerical controller

Country Status (1)

Country Link
JP (1) JP4361285B2 (en)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101090708B1 (en) * 2009-03-16 2011-12-08 기아자동차주식회사 Method for reducing vibration from gear backlash of hybrid vehicle
JP5402125B2 (en) * 2009-03-18 2014-01-29 株式会社デンソーウェーブ Robot controller
CN102298394B (en) * 2010-06-28 2014-04-09 北京北方微电子基地设备工艺研究中心有限责任公司 Method and device for improving operation accuracy of electric cylinder and electric cylinder
EP2634655B1 (en) * 2010-10-27 2019-02-20 Makino Milling Machine Co., Ltd. Numerical control method of machine tool, and numerical control device
JP5269158B2 (en) 2011-09-01 2013-08-21 株式会社神戸製鋼所 Control method and control apparatus
JP5739400B2 (en) 2012-11-30 2015-06-24 ファナック株式会社 Servo control device having position correction function of driven body
JP5657633B2 (en) * 2012-12-14 2015-01-21 ファナック株式会社 Servo control device for correcting position error when moving body is reversed
CN105190462B (en) 2013-03-14 2018-01-16 三菱电机株式会社 Servocontrol device
WO2015114811A1 (en) * 2014-01-31 2015-08-06 株式会社牧野フライス製作所 Cutting method and control device
JP5890473B2 (en) * 2014-06-13 2016-03-22 ファナック株式会社 Motor control device for controlling a motor
JP5905556B1 (en) 2014-10-07 2016-04-20 ファナック株式会社 Motor control device for correcting reverse rotation of motor
JP6514034B2 (en) * 2015-05-27 2019-05-15 オークマ株式会社 Position control device
WO2018073873A1 (en) * 2016-10-17 2018-04-26 三菱電機株式会社 Servo control device
CN116300687B (en) * 2023-05-11 2023-08-08 深圳市正和楚基科技有限公司 Machining precision prediction method, system and medium based on numerical control machining

Also Published As

Publication number Publication date
JP2004234205A (en) 2004-08-19

Similar Documents

Publication Publication Date Title
JP4361285B2 (en) Numerical controller
TWI514099B (en) Servo control device
JP5096019B2 (en) Servo motor control device
JP6457569B2 (en) Servo motor control device, servo motor control method, and servo motor control program
JP4014162B2 (en) Machine tool position control device and machine tool position control method
JP5657633B2 (en) Servo control device for correcting position error when moving body is reversed
JP7117827B2 (en) MOTOR CONTROL SYSTEM, CONTROL METHOD FOR MOTOR CONTROL SYSTEM, AND ROBOT SYSTEM
WO2013031465A1 (en) Control method and control device
JP6091523B2 (en) Servo control device
JP2019181610A (en) Robot system for learning by use of motor encoder and sensor
CN103853099A (en) SERVO CONTROL device WITH POSITION COMPENSATION FUNCTION FOR DRIVEN MEMBER
JP4867105B2 (en) Numerical controller
JP6370866B2 (en) Servo motor control device, servo motor control method, and servo motor control program
JP5667147B2 (en) Servo control device that performs correction processing based on the amount of expansion and contraction of the ball screw
JP5836206B2 (en) Servo control device
JP2020064576A (en) Control system, control method, and control program
JP4183057B2 (en) Numerical control system
JP6568035B2 (en) Servo motor control device, servo motor control method, and servo motor control program
JP2003071760A (en) Assembly robot
JP6333495B1 (en) Servo control device
JP2001202136A (en) Method for correcting dynamic deflection of motion controller and the motion controller
JP2019221032A (en) Electric motor control device
JP4507071B2 (en) Motor control device
JP2003076425A (en) Control device for feeding driving system
JP2021136824A (en) Motor controller, motor control system, and motor control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051026

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070903

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070904

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071026

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20071101

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20071101

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071101

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080414

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20080428

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20080620

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080813

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090710

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090812

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4361285

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120821

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120821

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130821

Year of fee payment: 4

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

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

EXPY Cancellation because of completion of term