JP3129622B2 - フルクローズド・ループ方式における象限突起補正方法 - Google Patents
フルクローズド・ループ方式における象限突起補正方法Info
- Publication number
- JP3129622B2 JP3129622B2 JP06336602A JP33660294A JP3129622B2 JP 3129622 B2 JP3129622 B2 JP 3129622B2 JP 06336602 A JP06336602 A JP 06336602A JP 33660294 A JP33660294 A JP 33660294A JP 3129622 B2 JP3129622 B2 JP 3129622B2
- Authority
- JP
- Japan
- Prior art keywords
- command
- motor
- deviation
- backlash
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical 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/19—Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
- G05B19/21—Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device
- G05B19/23—Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for point-to-point control
- G05B19/231—Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for point-to-point control the positional error is used to control continuously the servomotor according to its magnitude
- G05B19/232—Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for point-to-point control the positional error is used to control continuously the servomotor according to its magnitude with speed feedback only
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/37—Measurements
- G05B2219/37297—Two measurements, on driving motor and on slide or on both sides of motor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/37—Measurements
- G05B2219/37314—Derive position from speed
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/41—Servomotor, servo controller till figures
- G05B2219/41053—How to integrate position error, add to speed loop
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/41—Servomotor, servo controller till figures
- G05B2219/41085—Compensation pulses on inversion of direction of rotation, movement
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Numerical Control (AREA)
- Control Of Position Or Direction (AREA)
- Feedback Control In General (AREA)
Description
【0001】
【産業上の利用分野】本発明は、工作機械のテーブル等
の送り軸を駆動するサーボモータをフルクローズド・ル
ープ方式で制御する方法に関し、特に送り軸の移動方向
が反転するときの象限突起補正方法に関する。
の送り軸を駆動するサーボモータをフルクローズド・ル
ープ方式で制御する方法に関し、特に送り軸の移動方向
が反転するときの象限突起補正方法に関する。
【0002】
【従来の技術】一般に、サーボモータの制御方式として
フルクローズド・ループ方式が知られている。このフル
クローズド・ループ方式の制御においては、サーボモー
タに取り付けられたパルスコーダ等の速度検出器からの
フィードバックパルスに基づいて速度制御を行うととも
に、上記サーボモータによって駆動される機械の可動部
に取り付けられたリニアスケール等の位置検出器からの
位置フィードバック信号に基づいて、位置制御を行う。
図6はこのフルクローズド・ループ方式によるサーボモ
ータの制御方式を説明するためのブロック図である。図
6において、数値積分装置等から速度ループ周期T毎に
出力される移動指令のパルス数Pから、機械可動部に取
り付けられたリニースケール等の位置検出器からの速度
ループ周期T毎の位置フィードバックパルスpfを減じ
て位置偏差を求める。ポジションゲインのブロック11
は、この位置偏差に位置ループゲインKpを乗じて速度
指令Vcmdを算出する。この速度指令Vcmdからサ
ーボモータに取り付けられたパルスコーダからの速度フ
ィードバックVfを減じた後、速度ループ処理のブロッ
ク12は(積分ゲインk1、比例ゲインk2)はトルク
指令(電流指令)を算出し、モータへ出力する。
フルクローズド・ループ方式が知られている。このフル
クローズド・ループ方式の制御においては、サーボモー
タに取り付けられたパルスコーダ等の速度検出器からの
フィードバックパルスに基づいて速度制御を行うととも
に、上記サーボモータによって駆動される機械の可動部
に取り付けられたリニアスケール等の位置検出器からの
位置フィードバック信号に基づいて、位置制御を行う。
図6はこのフルクローズド・ループ方式によるサーボモ
ータの制御方式を説明するためのブロック図である。図
6において、数値積分装置等から速度ループ周期T毎に
出力される移動指令のパルス数Pから、機械可動部に取
り付けられたリニースケール等の位置検出器からの速度
ループ周期T毎の位置フィードバックパルスpfを減じ
て位置偏差を求める。ポジションゲインのブロック11
は、この位置偏差に位置ループゲインKpを乗じて速度
指令Vcmdを算出する。この速度指令Vcmdからサ
ーボモータに取り付けられたパルスコーダからの速度フ
ィードバックVfを減じた後、速度ループ処理のブロッ
ク12は(積分ゲインk1、比例ゲインk2)はトルク
指令(電流指令)を算出し、モータへ出力する。
【0003】ブロック13はモータータの伝達関数を示
しており、Ktはトルク定数、Jmはイナーシャであ
る。そして、サーボモータは機械の可動部を駆動する。
上記したフルクローズド・ループ方式によるサーボモー
タの制御においては、機械可動部の位置の検出がリニア
スケール等の位置検出器によって行われるから、位置の
検出精度は位置検出器等の分解能によって決まり、位置
決め精度も該分解能によって決まる。また、工作機械に
おいて、テーブル等を駆動するサーボモータの駆動方向
を反転させるとき、通常送りねじのバックラッシュや摩
擦の影響のため、機械は即座に反転することができな
い。そのため、工作機械で円弧切削等の処理を行ってい
るとき、象限が変わると切削円弧面に突起が生じる。
しており、Ktはトルク定数、Jmはイナーシャであ
る。そして、サーボモータは機械の可動部を駆動する。
上記したフルクローズド・ループ方式によるサーボモー
タの制御においては、機械可動部の位置の検出がリニア
スケール等の位置検出器によって行われるから、位置の
検出精度は位置検出器等の分解能によって決まり、位置
決め精度も該分解能によって決まる。また、工作機械に
おいて、テーブル等を駆動するサーボモータの駆動方向
を反転させるとき、通常送りねじのバックラッシュや摩
擦の影響のため、機械は即座に反転することができな
い。そのため、工作機械で円弧切削等の処理を行ってい
るとき、象限が変わると切削円弧面に突起が生じる。
【0004】図7は工作機械で円弧切削処理における切
削状態を説明する図である。図7において、X,Y2軸
の平面上でワークに対して円弧切削を行い、例えばX軸
をプラス方向に移動させY軸をマイナス方向に移動させ
るとき、点Aにおいて象限が変わる。このとき、X軸に
ついてはその移動方向がプラス方向からマイナス方向に
反転させ、Y軸についてはそのままマイナス方向への駆
動を続ける。このとき、X軸をマイナス方向に駆動する
よう切り換えた場合、Y軸についてはそのまま同一速度
で切削を続行するが、X軸は位置偏差が「0」になるこ
とからトルク指令が小さくなる。そのため、サーボモー
タが摩擦によって即座に反転できないこと、及び、テー
ブルを送る送りねじのバックラッシュ(図8参照)によ
ってテーブルの移動も即座に反転できないことから、X
軸方向のテーブルの移動は移動指令に対して追従するこ
とができなく遅れることとなる。その結果、図9に示す
ように切削の基準位置Bを越えて位置Cまで到達した後
に反転するため、切削円弧面に突起が生じる。
削状態を説明する図である。図7において、X,Y2軸
の平面上でワークに対して円弧切削を行い、例えばX軸
をプラス方向に移動させY軸をマイナス方向に移動させ
るとき、点Aにおいて象限が変わる。このとき、X軸に
ついてはその移動方向がプラス方向からマイナス方向に
反転させ、Y軸についてはそのままマイナス方向への駆
動を続ける。このとき、X軸をマイナス方向に駆動する
よう切り換えた場合、Y軸についてはそのまま同一速度
で切削を続行するが、X軸は位置偏差が「0」になるこ
とからトルク指令が小さくなる。そのため、サーボモー
タが摩擦によって即座に反転できないこと、及び、テー
ブルを送る送りねじのバックラッシュ(図8参照)によ
ってテーブルの移動も即座に反転できないことから、X
軸方向のテーブルの移動は移動指令に対して追従するこ
とができなく遅れることとなる。その結果、図9に示す
ように切削の基準位置Bを越えて位置Cまで到達した後
に反転するため、切削円弧面に突起が生じる。
【0005】フルクローズド・ループ方式の制御による
サーボモータでは、位置フィードバックによって機械位
置を検出しているため原則的には位置のバックラッシュ
補正を行なわず、従来、速度指令の次元において方向反
転時に適当な加速量を加えて、サーボモータの反転方向
に加速を行い象限突起を減少させる、いわゆるバックラ
ッシュ加速を行っている。図10は、前記図6に示した
従来のフルクローズド・ループ方式によるサーボモータ
の制御方式によるタイムチャートであり、図10の
(a)は位置指令Mcmdを表し、(b)はモータ位置
を表し、(c)は機械位置である位置フィードバックp
fを表し、(d)は位置偏差(Mcmd−pf)を表し
ている。図(a)中のTaにおいて位置指令Mcmdの
方向が反転すると、図6中の速度ループ処理のブロック
12にバックラッシュ加速の速度補償成分を加え、これ
によって、方向反転を早める。その結果、図(c)中の
機械位置における方向反転の早めるものである。
サーボモータでは、位置フィードバックによって機械位
置を検出しているため原則的には位置のバックラッシュ
補正を行なわず、従来、速度指令の次元において方向反
転時に適当な加速量を加えて、サーボモータの反転方向
に加速を行い象限突起を減少させる、いわゆるバックラ
ッシュ加速を行っている。図10は、前記図6に示した
従来のフルクローズド・ループ方式によるサーボモータ
の制御方式によるタイムチャートであり、図10の
(a)は位置指令Mcmdを表し、(b)はモータ位置
を表し、(c)は機械位置である位置フィードバックp
fを表し、(d)は位置偏差(Mcmd−pf)を表し
ている。図(a)中のTaにおいて位置指令Mcmdの
方向が反転すると、図6中の速度ループ処理のブロック
12にバックラッシュ加速の速度補償成分を加え、これ
によって、方向反転を早める。その結果、図(c)中の
機械位置における方向反転の早めるものである。
【0006】
【発明が解決しようとする課題】従来のフルクローズド
・ループ方式によるサーボモータの制御方式では、バッ
クラッシュ加速によって反転を早めることができるが、
このバックラッシュ加速を行うためのバックラッシュ加
速量を調整しなければならないという問題点がある。従
来のフルクローズド・ループ方式によるサーボモータの
制御方式において、方向反転時に補正するバックラッシ
ュ加速の加速量は、制御を行う機械における摩擦量に応
じて調節する必要があり、また、モータが反転した後
に、モータがバックラッシュ分を移動して機械が反転を
起こすまでの間の機械系に応じて調節する必要がある。
従来、この加速量の調整は試行錯誤的に行っており、調
整を容易に行うことができなかった。
・ループ方式によるサーボモータの制御方式では、バッ
クラッシュ加速によって反転を早めることができるが、
このバックラッシュ加速を行うためのバックラッシュ加
速量を調整しなければならないという問題点がある。従
来のフルクローズド・ループ方式によるサーボモータの
制御方式において、方向反転時に補正するバックラッシ
ュ加速の加速量は、制御を行う機械における摩擦量に応
じて調節する必要があり、また、モータが反転した後
に、モータがバックラッシュ分を移動して機械が反転を
起こすまでの間の機械系に応じて調節する必要がある。
従来、この加速量の調整は試行錯誤的に行っており、調
整を容易に行うことができなかった。
【0007】そこで、本発明は前記した従来の問題点を
解決して、フルクローズド・ループ方式によるサーボモ
ータの制御において、サーボモータの方向反転時におけ
るモータのバックラッシュ内における移動を素早く過不
足なく行わせることができるフルクローズド・ループ方
式における象限突起補正方法を提供することを目的とす
る。
解決して、フルクローズド・ループ方式によるサーボモ
ータの制御において、サーボモータの方向反転時におけ
るモータのバックラッシュ内における移動を素早く過不
足なく行わせることができるフルクローズド・ループ方
式における象限突起補正方法を提供することを目的とす
る。
【0008】
【課題を解決するための手段】本発明は、サーボモータ
で駆動される機械可動部に取り付けられた位置検出器に
よって機械可動位置を検出し、サーボモータに取り付け
られたパルスコーダを用いて速度を検出してフィードバ
ック制御するフルクローズド・ループ方式において、パ
ルスコーダから出力されるフィードバックパルスを積算
してモータ位置を求め、位置指令からモータ位置を減じ
た値を累積して指令位置とモータ位置の第1の偏差を求
め、位置指令から機械可動位置を減じた値を累積して指
令位置と機械可動位置の第2の偏差を求め、第1の偏差
と第2の偏差との差の低周波数成分を第1の偏差に加算
して得られた位置指令によりフィードバック制御を行
い、サーボモータの方向転換時に前記第1の偏差にバッ
クラッシュ補正分を加算することにより位置指令を補正
することにより、フルクローズド・ループ方式における
象限突起補正を行って、前記目的を達成するものであ
る。また、バックラッシュ補正分として、モータと機械
間のバックラッシュ分とすることができるものであり、
また、バックラッシュ補正分は、サーボモータの方向転
換に加算するものである。
で駆動される機械可動部に取り付けられた位置検出器に
よって機械可動位置を検出し、サーボモータに取り付け
られたパルスコーダを用いて速度を検出してフィードバ
ック制御するフルクローズド・ループ方式において、パ
ルスコーダから出力されるフィードバックパルスを積算
してモータ位置を求め、位置指令からモータ位置を減じ
た値を累積して指令位置とモータ位置の第1の偏差を求
め、位置指令から機械可動位置を減じた値を累積して指
令位置と機械可動位置の第2の偏差を求め、第1の偏差
と第2の偏差との差の低周波数成分を第1の偏差に加算
して得られた位置指令によりフィードバック制御を行
い、サーボモータの方向転換時に前記第1の偏差にバッ
クラッシュ補正分を加算することにより位置指令を補正
することにより、フルクローズド・ループ方式における
象限突起補正を行って、前記目的を達成するものであ
る。また、バックラッシュ補正分として、モータと機械
間のバックラッシュ分とすることができるものであり、
また、バックラッシュ補正分は、サーボモータの方向転
換に加算するものである。
【0009】
【作用】送り軸の反転と同期して、モータと機械間のバ
ックラッシュ分に応じてあらかじめ設定しておいたバッ
クラッシュ補正分を位置指令に加算するとともに、パル
スコーダから出力されるフィードバックパルスを積算し
て得られるモータ位置を減算して累積することによっ
て、指令位置とモータ位置の第1の偏差を求める。ま
た、位置指令から、サーボモータで駆動される機械可動
部に取り付けられた位置検出器によって検出される機械
可動位置を減じた値を累積することによって指令位置と
機械可動位置の第2の偏差を求める。そして、第1の偏
差に第2の偏差を加算することによってバックラッシュ
補正した位置指令を求める。この補正した位置指令を用
いて、サーボモータのフルクローズド・ループ制御を行
うと、モータの反転時において、モータは入力された位
置指令よりもバックラッシュ補正分だけ大きな移動を行
う。これによって、バックラッシュ補正を行わない場合
と比較して、モータはバックラッシュ分を移動する場合
に、より素早く過不足なく行うことができる。
ックラッシュ分に応じてあらかじめ設定しておいたバッ
クラッシュ補正分を位置指令に加算するとともに、パル
スコーダから出力されるフィードバックパルスを積算し
て得られるモータ位置を減算して累積することによっ
て、指令位置とモータ位置の第1の偏差を求める。ま
た、位置指令から、サーボモータで駆動される機械可動
部に取り付けられた位置検出器によって検出される機械
可動位置を減じた値を累積することによって指令位置と
機械可動位置の第2の偏差を求める。そして、第1の偏
差に第2の偏差を加算することによってバックラッシュ
補正した位置指令を求める。この補正した位置指令を用
いて、サーボモータのフルクローズド・ループ制御を行
うと、モータの反転時において、モータは入力された位
置指令よりもバックラッシュ補正分だけ大きな移動を行
う。これによって、バックラッシュ補正を行わない場合
と比較して、モータはバックラッシュ分を移動する場合
に、より素早く過不足なく行うことができる。
【0010】
【実施例】以下、本発明の実施例を図を参照しながら詳
細に説明する。 (本発明の実施例の構成)図1は本発明の一実施例のブ
ロック線図である。図1において、ブロック1は位置ル
ープの伝達関数でKpは位置ループゲイン、ブロック2
は速度ループの伝達関数でk1は積分ゲイン,k2は比
例ゲイン、ブロック3はサーボモータの伝達関数でkt
はトルク定数,Jmはモータイナーシャ、ブロック4は
サーボモータによって駆動されバックラッシュ分を含む
機械駆動系を表しており、該機械にはリニースケール等
の位置検出器が取り付けられ、機械可動部のスケール位
置pf2を位置フィードバック信号として出力してい
る。また、サーボモータにはパルスコーダが取り付けら
れ、サーボモータの回転速度を速度フィードバックパル
スvfとして出力し、また、該速度フィードバックパル
スvfは積分されてモータ位置pf1を表す位置フィー
ドバック信号として出力されている。
細に説明する。 (本発明の実施例の構成)図1は本発明の一実施例のブ
ロック線図である。図1において、ブロック1は位置ル
ープの伝達関数でKpは位置ループゲイン、ブロック2
は速度ループの伝達関数でk1は積分ゲイン,k2は比
例ゲイン、ブロック3はサーボモータの伝達関数でkt
はトルク定数,Jmはモータイナーシャ、ブロック4は
サーボモータによって駆動されバックラッシュ分を含む
機械駆動系を表しており、該機械にはリニースケール等
の位置検出器が取り付けられ、機械可動部のスケール位
置pf2を位置フィードバック信号として出力してい
る。また、サーボモータにはパルスコーダが取り付けら
れ、サーボモータの回転速度を速度フィードバックパル
スvfとして出力し、また、該速度フィードバックパル
スvfは積分されてモータ位置pf1を表す位置フィー
ドバック信号として出力されている。
【0011】ブロック5は位置指令Mcmdを入力する
第1のエラーカウンタであり、該位置指令Mcmdから
モータ位置pf1の位置フィードバック信号を減算し累
積した結果をモータ位置に対する第1の偏差Er1とし
て出力するものであり、該ブロック5には、サーボモー
タの方向反転時にバックラッシュ補正量BCPMが入力
可能となっている。また、ブロック6は位置指令Mcm
dを入力する第2のエラーカウンタであり、該位置指令
Mcmdからスケール位置pf2の位置フィードバック
信号を減算し累積した結果をスケール位置に対する第2
の偏差Er2として出力するするものである。
第1のエラーカウンタであり、該位置指令Mcmdから
モータ位置pf1の位置フィードバック信号を減算し累
積した結果をモータ位置に対する第1の偏差Er1とし
て出力するものであり、該ブロック5には、サーボモー
タの方向反転時にバックラッシュ補正量BCPMが入力
可能となっている。また、ブロック6は位置指令Mcm
dを入力する第2のエラーカウンタであり、該位置指令
Mcmdからスケール位置pf2の位置フィードバック
信号を減算し累積した結果をスケール位置に対する第2
の偏差Er2として出力するするものである。
【0012】ブロック7はローパスフィルタであり、第
2のエラーカウンタからのスケール位置に対する第2の
偏差Er2から第1のエラーカウンタからのモータ位置
に対する第1の偏差Er1を減算した値dEr(=Er
2−Er1)の低周波数成分dEr’を出力して、第1
のエラーカウンタ5の出力である第1の偏差Er1に加
算するものである。したがって、ブロック1の位置ルー
プの伝達関数には、(Er1+dEr’)の値が位置指
令として入力されることになる。上記したフルクローズ
ド・ループ方式のサーボモータの制御方式のブロック線
図は、ブロック5〜ブロック7が付加されている点が従
来のフルクローズド・ループ方式と相違し、その他の構
成は同一である。
2のエラーカウンタからのスケール位置に対する第2の
偏差Er2から第1のエラーカウンタからのモータ位置
に対する第1の偏差Er1を減算した値dEr(=Er
2−Er1)の低周波数成分dEr’を出力して、第1
のエラーカウンタ5の出力である第1の偏差Er1に加
算するものである。したがって、ブロック1の位置ルー
プの伝達関数には、(Er1+dEr’)の値が位置指
令として入力されることになる。上記したフルクローズ
ド・ループ方式のサーボモータの制御方式のブロック線
図は、ブロック5〜ブロック7が付加されている点が従
来のフルクローズド・ループ方式と相違し、その他の構
成は同一である。
【0013】図2は、本発明のフルクローズド・ループ
方式のサーボモータの制御を行う一実施例のブロック図
である。図2において、ブロック20は工作機械等の制
御を行なうコンピュータ内蔵の数値制御装置(CN
C)、ブロック21はCNC20から出力される移動指
令Mcmd等をサーボ制御を行なうデジタルサーボ回路
22に受け渡したり、デジタルサーボ回路22から出力
される信号をCNC20に受け渡す作用を行なう共有メ
モリである。また、この共有メモリには、本発明の象限
突起補正に使用するバックラッシュ補正量を格納してお
くことができる。デジタルサーボ回路22はプロセッサ
(CPU),ROM,RAM等を有し、工作機械等各可
動部のサーボモータを駆動するサーボ回路の処理をソフ
トウェアで実行し、各サーボモータを駆動制御する。
方式のサーボモータの制御を行う一実施例のブロック図
である。図2において、ブロック20は工作機械等の制
御を行なうコンピュータ内蔵の数値制御装置(CN
C)、ブロック21はCNC20から出力される移動指
令Mcmd等をサーボ制御を行なうデジタルサーボ回路
22に受け渡したり、デジタルサーボ回路22から出力
される信号をCNC20に受け渡す作用を行なう共有メ
モリである。また、この共有メモリには、本発明の象限
突起補正に使用するバックラッシュ補正量を格納してお
くことができる。デジタルサーボ回路22はプロセッサ
(CPU),ROM,RAM等を有し、工作機械等各可
動部のサーボモータを駆動するサーボ回路の処理をソフ
トウェアで実行し、各サーボモータを駆動制御する。
【0014】ブロック23はサーボモータであり、ボー
ルねじ等の結合部25を介して機械駆動系5における1
つの機械可動部を駆動している。このサーボモータ23
には高分解能のパルスコーダが取り付けられ、サーボモ
ータ23の速度を検出し、速度フィードバックパルスv
fとしてデジタルサーボ回路22に出力し、また、その
速度を積分して得られるモータ位置pf2をデジタルサ
ーボ回路22に出力している。また、機械駆動系5の機
械可動部には該可動部の移動位置を検出するリニアスケ
ール等の位置検出器26が取り付けられ、可動部の位置
を検出し、スケール位置信号pf2をデジタルサーボ回
路22に出力している。一般に、パルスコーダ24の分
解能は位置検出器26の分解能より高いものを使用して
いる。なお、図2におけるデジタルサーボモータ回路付
きのCNC工作機械は既に公知であるので、その詳細は
省略する。
ルねじ等の結合部25を介して機械駆動系5における1
つの機械可動部を駆動している。このサーボモータ23
には高分解能のパルスコーダが取り付けられ、サーボモ
ータ23の速度を検出し、速度フィードバックパルスv
fとしてデジタルサーボ回路22に出力し、また、その
速度を積分して得られるモータ位置pf2をデジタルサ
ーボ回路22に出力している。また、機械駆動系5の機
械可動部には該可動部の移動位置を検出するリニアスケ
ール等の位置検出器26が取り付けられ、可動部の位置
を検出し、スケール位置信号pf2をデジタルサーボ回
路22に出力している。一般に、パルスコーダ24の分
解能は位置検出器26の分解能より高いものを使用して
いる。なお、図2におけるデジタルサーボモータ回路付
きのCNC工作機械は既に公知であるので、その詳細は
省略する。
【0015】(本発明の実施例の作用)次に、本発明の
実施例の作用について説明する。図1において、速度ル
ープの伝達関数2は、速度指令Vcmdから速度検出器
によって得られた速度フィードバックパルスvfを減算
した値により速度ループ処理が行なう。また、この速度
フィードバックパルスvfを積分して得られるモータ位
置pf1をエラーカウンタ1にフィードバックする。エ
ラーカウンタ1は、位置指令Mcmdからこのモータ位
置pf1を減算し累積して得られる第1の偏差Er1
(=Σ(Mcmd−pf1)を求める。また、エラーカ
ウンタ2は、位置指令Mcmdからスケール位置pf2
を減算し累積して得られる第2の偏差Er2(=Σ(M
cmd−pf2)を求める。
実施例の作用について説明する。図1において、速度ル
ープの伝達関数2は、速度指令Vcmdから速度検出器
によって得られた速度フィードバックパルスvfを減算
した値により速度ループ処理が行なう。また、この速度
フィードバックパルスvfを積分して得られるモータ位
置pf1をエラーカウンタ1にフィードバックする。エ
ラーカウンタ1は、位置指令Mcmdからこのモータ位
置pf1を減算し累積して得られる第1の偏差Er1
(=Σ(Mcmd−pf1)を求める。また、エラーカ
ウンタ2は、位置指令Mcmdからスケール位置pf2
を減算し累積して得られる第2の偏差Er2(=Σ(M
cmd−pf2)を求める。
【0016】そして、この第2の偏差Er2から第1の
偏差Er1を減算して、その差dEr(=Er2−Er
1)を求め、ローパスフィルタ7によってこの差dEr
の低周波数成分dEr’を出力する。なお、このローパ
スフィルタ7は、デジタル信号による処理を行なう場
合、前回の出力値と今回のサンプリング値とを係数k
(0≦k≦1)によって比例配分する演算によって行な
うことができ、以下の式により求めることができる。 dEr(i)’=k・dEr(i−1)’+(1−k)・dEr(i) …(1) なお、”’”はローパスフィルタ通過後の信号を表
し、”i”はサンプリングを表している。
偏差Er1を減算して、その差dEr(=Er2−Er
1)を求め、ローパスフィルタ7によってこの差dEr
の低周波数成分dEr’を出力する。なお、このローパ
スフィルタ7は、デジタル信号による処理を行なう場
合、前回の出力値と今回のサンプリング値とを係数k
(0≦k≦1)によって比例配分する演算によって行な
うことができ、以下の式により求めることができる。 dEr(i)’=k・dEr(i−1)’+(1−k)・dEr(i) …(1) なお、”’”はローパスフィルタ通過後の信号を表
し、”i”はサンプリングを表している。
【0017】更に、第1の偏差Er1にこの低周波数成
分dEr’を加算して、位置ループの伝達関数1に入力
する補正された位置指令値とする。そして、補正された
位置指令値(Er1+dEr(i)’)にポジションゲ
インKpを乗じて速度指令Vcmdを求め、この速度指
令Vcmdからモータの実速度vfを減じて速度偏差を
求め、この速度偏差を積分(積算)して積分ゲインk1
を乗じた値からモータ実速度vfに比例ゲインk2を乗
じた値を減じてトルク指令(電流指令)を作り、サーボ
モータを駆動する。
分dEr’を加算して、位置ループの伝達関数1に入力
する補正された位置指令値とする。そして、補正された
位置指令値(Er1+dEr(i)’)にポジションゲ
インKpを乗じて速度指令Vcmdを求め、この速度指
令Vcmdからモータの実速度vfを減じて速度偏差を
求め、この速度偏差を積分(積算)して積分ゲインk1
を乗じた値からモータ実速度vfに比例ゲインk2を乗
じた値を減じてトルク指令(電流指令)を作り、サーボ
モータを駆動する。
【0018】そして、サーボモータに対して方向反転の
指令が出力されたときは、この方向反転に同期してバッ
クラッシュ補正量BCMPを第1のエラーカウンタ5に
入力して、位置指令Mcmdのバックラッシュ補正を行
なう。このバックラッシュ補正量BCMPは、モータと
機械間のバックラッシュ量に相当する値であり、例えば
共有メモリ21等にあらかじめ格納しておき、サーボモ
ータを反転させる指令と同期して読み出し第1のエラー
カウンタ5に出力する。このバックラッシュ補正量BC
MPが入力されたときには、補正された位置指令値は
(Er1+dEr(i)’+BCMP)となり、バック
ラッシュ補正量BCMPの分だけモータの移動量を補正
することになる。
指令が出力されたときは、この方向反転に同期してバッ
クラッシュ補正量BCMPを第1のエラーカウンタ5に
入力して、位置指令Mcmdのバックラッシュ補正を行
なう。このバックラッシュ補正量BCMPは、モータと
機械間のバックラッシュ量に相当する値であり、例えば
共有メモリ21等にあらかじめ格納しておき、サーボモ
ータを反転させる指令と同期して読み出し第1のエラー
カウンタ5に出力する。このバックラッシュ補正量BC
MPが入力されたときには、補正された位置指令値は
(Er1+dEr(i)’+BCMP)となり、バック
ラッシュ補正量BCMPの分だけモータの移動量を補正
することになる。
【0019】図3は本発明の一実施例のブロック線図に
おいて、バックラッシュ補正を行う場合のタイムチャー
トである。なお、図3のタイムチャートにおいては、位
置指令Mcmdが”4”の値から順に減少して時刻Ta
において反転する場合を例としており、また、一般にモ
ータ位置pf1の出力周期はスケール位置pf2の出力
周期より短いが、このタイムチャートでは同じ周期で出
力されるものとして表示している。また、各縦軸の値は
信号の変化を説明するために示した指標に過ぎず、実際
の値とは異なるものである。また、モータと機械間のバ
ックラッシュ分は図中の位置指令の1単位による移動よ
り大きいものとする。位置指令Mcmdが順に減少する
と、補正された位置指令Mcmd’によりモータの駆動
が始まり、位置指令Mcmdに追従するようにしてモー
タ位置が変化する。なお、このときdErは”0”であ
るため、ほぼ第1のエラーカウンタの値Er1に従って
駆動されることになる。
おいて、バックラッシュ補正を行う場合のタイムチャー
トである。なお、図3のタイムチャートにおいては、位
置指令Mcmdが”4”の値から順に減少して時刻Ta
において反転する場合を例としており、また、一般にモ
ータ位置pf1の出力周期はスケール位置pf2の出力
周期より短いが、このタイムチャートでは同じ周期で出
力されるものとして表示している。また、各縦軸の値は
信号の変化を説明するために示した指標に過ぎず、実際
の値とは異なるものである。また、モータと機械間のバ
ックラッシュ分は図中の位置指令の1単位による移動よ
り大きいものとする。位置指令Mcmdが順に減少する
と、補正された位置指令Mcmd’によりモータの駆動
が始まり、位置指令Mcmdに追従するようにしてモー
タ位置が変化する。なお、このときdErは”0”であ
るため、ほぼ第1のエラーカウンタの値Er1に従って
駆動されることになる。
【0020】位置指令Mcmdが”0”となった後、時
刻Taにおいて”1”となって方向反転が起こると、こ
の変化を読み取ったCPUは共有メモリに格納しておい
たバックラッシュ補正量BCMPを読み出して第1のエ
ラーカウンタEr1に出力して加算する。図3の(c)
に示す第1エラーカウンタ中の時刻Taにおいて矢印で
示す増加分は、このバックラッシュ補正量BCMPを示
している。モータは、図3の(b)中の時刻Tbに示す
ように、このバックラッシュ補正量BCMPを受けてバ
ックラッシュ分と位置指令の分との加算量に対応した移
動を行なう。なお、図3の(b)では時間隔T毎の位置
を示しているが、実際のモータはより短い時間間隔で移
動しており、時刻Taと時刻Tbとの間において、バッ
クラッシュ補正量BCMPに対応した移動が速やかに行
なわれているものである。そして、図3の(c)に示す
スケール位置pf2中の時刻Tbにおいては、バモータ
がバックラッシュ分を移動した後にさらに移動して、機
械の可動部が移動した移動量が示した状態を示してい
る。
刻Taにおいて”1”となって方向反転が起こると、こ
の変化を読み取ったCPUは共有メモリに格納しておい
たバックラッシュ補正量BCMPを読み出して第1のエ
ラーカウンタEr1に出力して加算する。図3の(c)
に示す第1エラーカウンタ中の時刻Taにおいて矢印で
示す増加分は、このバックラッシュ補正量BCMPを示
している。モータは、図3の(b)中の時刻Tbに示す
ように、このバックラッシュ補正量BCMPを受けてバ
ックラッシュ分と位置指令の分との加算量に対応した移
動を行なう。なお、図3の(b)では時間隔T毎の位置
を示しているが、実際のモータはより短い時間間隔で移
動しており、時刻Taと時刻Tbとの間において、バッ
クラッシュ補正量BCMPに対応した移動が速やかに行
なわれているものである。そして、図3の(c)に示す
スケール位置pf2中の時刻Tbにおいては、バモータ
がバックラッシュ分を移動した後にさらに移動して、機
械の可動部が移動した移動量が示した状態を示してい
る。
【0021】このバックラッシュ補正による効果を、本
発明の一実施例のブロック線図において、図4のバック
ラッシュ補正を行わない場合のタイムチャートとの比較
によって説明する。図4において、前記図3と同様に時
刻Taにおいて方向反転した場合に、バックラッシュ補
正を行わなれずバックラッシュ補正量が加わらないとき
の第1のエラーカウンタの値は、前記の図3と比較して
バックラッシュ補償量BCMPの分だけ少なくなってい
る。そのため、次のサンプリング時刻Tbにおいては、
モータ位置pf1の移動量は位置指令の増加分のみの移
動となる。このモータ位置pf1の移動量はバックラッ
シュ分より小さいため、時刻Tbにおいては、スケール
位置pf2は前回の位置のままとなり、位置変化を起こ
さない。方向反転によるスケール位置pf2の位置変化
は、さらに次のサンプリング時刻Tc以降において、バ
ックラッシュ分以上の移動が行なわれたとき、そのバッ
クラッシュ分を超えた移動量が表れることになる。
発明の一実施例のブロック線図において、図4のバック
ラッシュ補正を行わない場合のタイムチャートとの比較
によって説明する。図4において、前記図3と同様に時
刻Taにおいて方向反転した場合に、バックラッシュ補
正を行わなれずバックラッシュ補正量が加わらないとき
の第1のエラーカウンタの値は、前記の図3と比較して
バックラッシュ補償量BCMPの分だけ少なくなってい
る。そのため、次のサンプリング時刻Tbにおいては、
モータ位置pf1の移動量は位置指令の増加分のみの移
動となる。このモータ位置pf1の移動量はバックラッ
シュ分より小さいため、時刻Tbにおいては、スケール
位置pf2は前回の位置のままとなり、位置変化を起こ
さない。方向反転によるスケール位置pf2の位置変化
は、さらに次のサンプリング時刻Tc以降において、バ
ックラッシュ分以上の移動が行なわれたとき、そのバッ
クラッシュ分を超えた移動量が表れることになる。
【0022】これに対して、図3に示す本発明の象限突
起補正方法においては、バックラッシュ補正量を方向反
転時に印加することによって、時刻Tbにおいてスケー
ル位置pf2は位置指令に基づく位置が出力されてお
り、モータと機械間のバックラッシュ分を移動させてバ
ックラッシュ分が補償され、さらに位置指令に基づく移
動を行なわれている。このバックラッシュ分の補償は、
前記したように、工作機械において、テーブル等を駆動
するサーボモータの駆動方向を反転させるとき、通常送
りねじのバックラッシュや摩擦の影響によって機械が即
座に反転することができず、工作機械で円弧切削等の処
理を行っているとき、象限が変わると切削円弧面に突起
が生じるという現象を防止することができる。
起補正方法においては、バックラッシュ補正量を方向反
転時に印加することによって、時刻Tbにおいてスケー
ル位置pf2は位置指令に基づく位置が出力されてお
り、モータと機械間のバックラッシュ分を移動させてバ
ックラッシュ分が補償され、さらに位置指令に基づく移
動を行なわれている。このバックラッシュ分の補償は、
前記したように、工作機械において、テーブル等を駆動
するサーボモータの駆動方向を反転させるとき、通常送
りねじのバックラッシュや摩擦の影響によって機械が即
座に反転することができず、工作機械で円弧切削等の処
理を行っているとき、象限が変わると切削円弧面に突起
が生じるという現象を防止することができる。
【0023】図5は、上記したサーボモータの制御処理
を実行するデジタルサーボ回路22のプロセッサの位置
ループにおける処理のフローチャートであり、該プロセ
ッサは位置ループ及び速度ループ毎に処理を行なう。ま
た、プロセッサは速度ループ処理、電流ループ処理等も
実行するが、これらの処理は従来と同様であるため説明
を省略する。なお、以下の説明ではステップSの符号を
用いて説明する。 ステップS1:位置ループ及び速度ループ毎に、はじめ
にバックラッシュ補正量BCMPを表す値Aの値を”
0”にセットしておく。バックラッシュ補正量Aの値
が”0”は、バックラッシュ補正を行なわないことを意
味している。 ステップS2:プロセッサは、単位時間当たりの位置指
令Mcmdの取込みを行なう。なお、前記図3,4に示
す位置指令Mcmdはこの単位時間当たりの位置指令を
表しておらず、図3,4に示す位置指令Mcmdにおい
て1単位時間毎の位置指令の差を求めることによって、
この単位時間当たりの位置指令を得ることができる。
を実行するデジタルサーボ回路22のプロセッサの位置
ループにおける処理のフローチャートであり、該プロセ
ッサは位置ループ及び速度ループ毎に処理を行なう。ま
た、プロセッサは速度ループ処理、電流ループ処理等も
実行するが、これらの処理は従来と同様であるため説明
を省略する。なお、以下の説明ではステップSの符号を
用いて説明する。 ステップS1:位置ループ及び速度ループ毎に、はじめ
にバックラッシュ補正量BCMPを表す値Aの値を”
0”にセットしておく。バックラッシュ補正量Aの値
が”0”は、バックラッシュ補正を行なわないことを意
味している。 ステップS2:プロセッサは、単位時間当たりの位置指
令Mcmdの取込みを行なう。なお、前記図3,4に示
す位置指令Mcmdはこの単位時間当たりの位置指令を
表しておらず、図3,4に示す位置指令Mcmdにおい
て1単位時間毎の位置指令の差を求めることによって、
この単位時間当たりの位置指令を得ることができる。
【0024】以下で説明する位置指令は、単位時間当た
りの位置指令を用いることにする。
りの位置指令を用いることにする。
【0025】ステップS3:プロセッサは、速度検出器
からの速度フィードバックパルスvfに基づいてモータ
位置のフィードバック値pf1と、機械可動部に取り付
けられたスケールからスケール位置のフィードバック値
pf2との取込みを行なう。なお、このフィードバック
値pf1とフィードバック値pf2も単位時間当たりの
値とする。 ステップS4:位置ループ処理において、サーボモータ
が方向の反転を行なうか否かの判定を行なう。この判定
は、バックラッシュ補正量を加えるか否かを定める基準
となるものであり、例えば、位置指令の増減方向の反転
を検出することによって行なうことができる。モータの
方向反転が行なわれず移動方向に変化がない場合には、
バックラッシュ補正を行なわないため前記ステップS1
で設定したように、バックラッシュ補正量を”0”とし
たままとする。一方、モータの方向反転が行なわれて移
動方向に変化する場合には、次のステップS5に進む。
からの速度フィードバックパルスvfに基づいてモータ
位置のフィードバック値pf1と、機械可動部に取り付
けられたスケールからスケール位置のフィードバック値
pf2との取込みを行なう。なお、このフィードバック
値pf1とフィードバック値pf2も単位時間当たりの
値とする。 ステップS4:位置ループ処理において、サーボモータ
が方向の反転を行なうか否かの判定を行なう。この判定
は、バックラッシュ補正量を加えるか否かを定める基準
となるものであり、例えば、位置指令の増減方向の反転
を検出することによって行なうことができる。モータの
方向反転が行なわれず移動方向に変化がない場合には、
バックラッシュ補正を行なわないため前記ステップS1
で設定したように、バックラッシュ補正量を”0”とし
たままとする。一方、モータの方向反転が行なわれて移
動方向に変化する場合には、次のステップS5に進む。
【0026】ステップS5:モータの方向反転が行なわ
れた場合には、プロセッサは、例えば共有メモリに格納
しているバックラッシュ補正量BMCPを読み出し、バ
ックラッシュ補正量Aに”BMCP”を設定する。 ステップS6:プロセッサは、第1の偏差Er1と第2
の偏差Er2を演算によって求める。第1の偏差Er1
は、第1のエラーカウンタに次式で示される演算を行な
いその値を積算することによって求められ、この値は指
令位置とモータ位置との差を表すことになる。 Er1=Er1+Mcmd−pf1+A したがって、モータの方向反転が行なわれた場合には前
記式中のAはバックラッシュ補正量BMCPとなり、モ
ータの方向反転が行なわれない場合には前記式中のA
は”0”のままである。また、第2の偏差Er2は、第
2のエラーカウンタに次式で示される演算を行ないその
値を積算することによって求められ、この値は指令位置
と機械位置との差を表すことになる。 Er2=Er2+Mcmd−pf2 ステップS7:プロセッサは、前記ステップS6によっ
て求めた第2の偏差Er2から第1の偏差Er1を減算
して、次式で表される差dErを求める。 dEr=Er2−Er1 =(Er2+Mcmd−pf2)−(Er1+Mcmd−pf1+A) =Er2−Er1−(pf2−pf1)−A このdErは、位置指令を補正する補正値となるもので
あり、モータの方向反転の有無に応じてAの値が変更さ
れるものであり、モータの方向反転がある場合にはその
値をバックラッシュ補正量BMCPとするものである。
れた場合には、プロセッサは、例えば共有メモリに格納
しているバックラッシュ補正量BMCPを読み出し、バ
ックラッシュ補正量Aに”BMCP”を設定する。 ステップS6:プロセッサは、第1の偏差Er1と第2
の偏差Er2を演算によって求める。第1の偏差Er1
は、第1のエラーカウンタに次式で示される演算を行な
いその値を積算することによって求められ、この値は指
令位置とモータ位置との差を表すことになる。 Er1=Er1+Mcmd−pf1+A したがって、モータの方向反転が行なわれた場合には前
記式中のAはバックラッシュ補正量BMCPとなり、モ
ータの方向反転が行なわれない場合には前記式中のA
は”0”のままである。また、第2の偏差Er2は、第
2のエラーカウンタに次式で示される演算を行ないその
値を積算することによって求められ、この値は指令位置
と機械位置との差を表すことになる。 Er2=Er2+Mcmd−pf2 ステップS7:プロセッサは、前記ステップS6によっ
て求めた第2の偏差Er2から第1の偏差Er1を減算
して、次式で表される差dErを求める。 dEr=Er2−Er1 =(Er2+Mcmd−pf2)−(Er1+Mcmd−pf1+A) =Er2−Er1−(pf2−pf1)−A このdErは、位置指令を補正する補正値となるもので
あり、モータの方向反転の有無に応じてAの値が変更さ
れるものであり、モータの方向反転がある場合にはその
値をバックラッシュ補正量BMCPとするものである。
【0027】ステップS8:前記ステップS7で求めた
位置指令を補正する補正値であるdErを第1の偏差E
r1に加えて補正された位置指令を求める。このとき、
ローパスフィルタ7によって以下の式で示すようなデジ
タル演算処理を行なう。このデジタル演算処理は、前記
ステップS7で求めた補正量dErの高周波成分を除去
して低周波成分とし、その値を第1の偏差Er1に加え
る補正値とするものであり、これによって、補正値を印
加したことによる急激な位置指令の変化を防ぐものであ
る。 dEr(i)’=k・dEr(i−1)’+(1−k)・dEr(i) なお、前記式において、dEr(i)’は時刻iにおけ
るローパスフィルタ通過後の補正値,dEr(i−
1)’は時刻(i−1)におけるローパスフィルタ通過
後の補正値,dEr(i)は時刻iにおける補正値あ
り、kは0≦k≦1の係数である。
位置指令を補正する補正値であるdErを第1の偏差E
r1に加えて補正された位置指令を求める。このとき、
ローパスフィルタ7によって以下の式で示すようなデジ
タル演算処理を行なう。このデジタル演算処理は、前記
ステップS7で求めた補正量dErの高周波成分を除去
して低周波成分とし、その値を第1の偏差Er1に加え
る補正値とするものであり、これによって、補正値を印
加したことによる急激な位置指令の変化を防ぐものであ
る。 dEr(i)’=k・dEr(i−1)’+(1−k)・dEr(i) なお、前記式において、dEr(i)’は時刻iにおけ
るローパスフィルタ通過後の補正値,dEr(i−
1)’は時刻(i−1)におけるローパスフィルタ通過
後の補正値,dEr(i)は時刻iにおける補正値あ
り、kは0≦k≦1の係数である。
【0028】ステップS9:そして、第1の偏差Er1
に前記ステップS8で求めたローパスフィルタ通過後の
補正値dEr(i)’を加算して補正された位置指令を
求め、その位置指令にポジションゲインKpを乗じて速
度指令Vcmdを求める。該速度指令Vcmdは以下の
式によって表すことができる。 Vcmd=Kp{Er(i)+dEr(i)’} そして、この速度指令Vcmdによって、速度ループ処
理を行なう。この速度ループ処理では、速度指令Vcm
dからモータの実速度vfを減じて速度偏差を求め、こ
の速度偏差を積分(積算)して積分ゲインk1を乗じた
値からモータ実速度vfに比例ゲインk2を乗じた値を
減じてトルク指令(電流指令)を作り、サーボモータを
駆動するという処理を行なう。
に前記ステップS8で求めたローパスフィルタ通過後の
補正値dEr(i)’を加算して補正された位置指令を
求め、その位置指令にポジションゲインKpを乗じて速
度指令Vcmdを求める。該速度指令Vcmdは以下の
式によって表すことができる。 Vcmd=Kp{Er(i)+dEr(i)’} そして、この速度指令Vcmdによって、速度ループ処
理を行なう。この速度ループ処理では、速度指令Vcm
dからモータの実速度vfを減じて速度偏差を求め、こ
の速度偏差を積分(積算)して積分ゲインk1を乗じた
値からモータ実速度vfに比例ゲインk2を乗じた値を
減じてトルク指令(電流指令)を作り、サーボモータを
駆動するという処理を行なう。
【0029】(シミュレーション結果)図11は、本発
明によるシミュレーション結果を示す図である。図11
では、半径15mmの円弧を切削速度500mm/分で
切削する場合の切削面の切削制度を示しており、図11
の(a)は従来の方法による切削のシミュレーション結
果を示し、図11の(b)は本発明の方法による切削の
シミュレーション結果を示している。なお、図中の切削
面の切削制度は、径方向の1目盛りを50μmで表して
いる。図11の(a)の従来の方法では、回転方向が矢
印Aの方向の場合には、aの位置において象限突起が発
生し、また、回転方向が矢印bの方向の場合には、bの
位置において象限突起が発生する。これに対して、図1
1の(a)の本発明の方法では、充分に象限突起の発生
が抑制されている。
明によるシミュレーション結果を示す図である。図11
では、半径15mmの円弧を切削速度500mm/分で
切削する場合の切削面の切削制度を示しており、図11
の(a)は従来の方法による切削のシミュレーション結
果を示し、図11の(b)は本発明の方法による切削の
シミュレーション結果を示している。なお、図中の切削
面の切削制度は、径方向の1目盛りを50μmで表して
いる。図11の(a)の従来の方法では、回転方向が矢
印Aの方向の場合には、aの位置において象限突起が発
生し、また、回転方向が矢印bの方向の場合には、bの
位置において象限突起が発生する。これに対して、図1
1の(a)の本発明の方法では、充分に象限突起の発生
が抑制されている。
【0030】
【発明の効果】以上説明したように、本発明によれば、
フルクローズド・ループ方式によるサーボモータの制御
において、サーボモータの方向反転時におけるモータの
バックラッシュ内における移動を素早く過不足なく行わ
せることができるフルクローズド・ループ方式における
象限突起補正方法を提供することができる。
フルクローズド・ループ方式によるサーボモータの制御
において、サーボモータの方向反転時におけるモータの
バックラッシュ内における移動を素早く過不足なく行わ
せることができるフルクローズド・ループ方式における
象限突起補正方法を提供することができる。
【図1】本発明の一実施例のブロック線図である。
【図2】本発明のフルクローズド・ループ方式のサーボ
モータの制御を行う一実施例のブロック図である。
モータの制御を行う一実施例のブロック図である。
【図3】本発明の一実施例のブロック線図において、バ
ックラッシュ補正を行う場合のタイムチャートである。
ックラッシュ補正を行う場合のタイムチャートである。
【図4】本発明の一実施例のブロック線図において、バ
ックラッシュ補正を行なわない場合のタイムチャートで
ある。
ックラッシュ補正を行なわない場合のタイムチャートで
ある。
【図5】本発明のデジタルサーボ回路のプロセッサの位
置ループにおける処理のフローチャートである。
置ループにおける処理のフローチャートである。
【図6】従来のフルクローズド・ループ方式によるサー
ボモータの制御方式を説明するためのブロック図であ
る。
ボモータの制御方式を説明するためのブロック図であ
る。
【図7】工作機械で円弧切削処理における切削状態を説
明する図である。
明する図である。
【図8】バックラッシュを説明するための図である。
【図9】バックラッシュを説明するための図である。
【図10】従来のフルクローズド・ループ方式によるサ
ーボモータの制御方式によるタイムチャートである。
ーボモータの制御方式によるタイムチャートである。
【図11】本発明によるシミュレーション結果を示す図
である。
である。
1 位置ループの伝達関数 2 速度ループの伝達関数 3 サーボモータの伝達関数 4 機械駆動系 5 第1エラーカウンタ 6 第2エラーカウンタ 7 ローパスフィルタ Er1 第1の偏差 Er2 第2の偏差 pf1 モータ位置 pf2 スケール位置
Claims (3)
- 【請求項1】 サーボモータで駆動される機械可動部に
取り付けられた位置検出器によって機械可動位置を検出
し、サーボモータに取り付けられたパルスコーダを用い
て速度を検出してフィードバック制御するフルクロ−ズ
ド・ループ方式において、 前記パルスコーダから出力されるフィードバックパルス
を積算してモータ位置を求め、位置指令 から前記モータ位置を減じた値を累積して指令
位置とモータ位置の第1の偏差を求め、 前記位置指令から前記機械可動位置を減じた値を累積し
て指令位置と機械可動位置の第2の偏差を求め、 前記第1の偏差と第2の偏差の差の低周波成分を前記第
1の偏差に加算して得られた位置指令によりフィードバ
ック制御を行い、 サーボモータの方向転換時に前記第1の偏差にバックラ
ッシュ補正分を加算することにより位置指令を補正する
ことを特徴とするフルクロ−ズド・ループ方式における
象限突起補正方法。 - 【請求項2】 前記バックラッシュ補正分は、モータと
機械間のバックラッシュ分であることを特徴とする請求
項1記載のフルクローズド・ループ方式における象限突
起補正方法。 - 【請求項3】 前記バックラッシュ補正分は、サーボモ
ータへの反転指令時に加算される請求項1,又は2記載
のフルクロ−ズド・ループ方式における象限突起補正方
法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06336602A JP3129622B2 (ja) | 1994-12-26 | 1994-12-26 | フルクローズド・ループ方式における象限突起補正方法 |
US08/575,575 US5691616A (en) | 1994-12-26 | 1995-12-20 | Fully-closed-loop servomotor control system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06336602A JP3129622B2 (ja) | 1994-12-26 | 1994-12-26 | フルクローズド・ループ方式における象限突起補正方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08179831A JPH08179831A (ja) | 1996-07-12 |
JP3129622B2 true JP3129622B2 (ja) | 2001-01-31 |
Family
ID=18300858
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP06336602A Expired - Fee Related JP3129622B2 (ja) | 1994-12-26 | 1994-12-26 | フルクローズド・ループ方式における象限突起補正方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5691616A (ja) |
JP (1) | JP3129622B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103676779A (zh) * | 2012-09-05 | 2014-03-26 | 发那科株式会社 | 修正齿隙的电动机控制装置 |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19708894C2 (de) * | 1997-03-05 | 2003-04-30 | Pfauter Hermann Gmbh Co | Verfahren zur Lage- und/oder Geschwindigkeitsregelung von Achsen an einer Werkzeugmaschine sowie Vorrichtung zur Durchführung eines solchen Verfahrens |
JP3215067B2 (ja) * | 1997-03-21 | 2001-10-02 | ファナック株式会社 | 移動方向反転時の位置補正方法 |
JPH11305839A (ja) * | 1998-04-21 | 1999-11-05 | Fanuc Ltd | 複数のサーボモータの制御方法 |
US6069464A (en) * | 1998-10-01 | 2000-05-30 | Umax Data Systems Inc. | Driving apparatus for an image processing system |
DE19983362T1 (de) * | 1999-05-14 | 2001-08-16 | Mitsubishi Electric Corp | Servosteuervorrichtung |
JP3912286B2 (ja) * | 2000-11-01 | 2007-05-09 | 三菱電機株式会社 | サーボ制御方法及びその装置 |
JP4459463B2 (ja) * | 2001-02-19 | 2010-04-28 | 株式会社ハーモニック・ドライブ・システムズ | アクチュエータの位置決め誤差補正方法 |
US6658370B2 (en) * | 2001-08-15 | 2003-12-02 | Pitney Bowes Inc. | Adaptive servo motor retuning method and system |
JP3739749B2 (ja) * | 2003-01-07 | 2006-01-25 | ファナック株式会社 | 制御装置 |
JP4417332B2 (ja) | 2004-01-15 | 2010-02-17 | 独立行政法人科学技術振興機構 | 化学分析装置及び化学分析方法 |
US7317981B2 (en) * | 2004-11-19 | 2008-01-08 | Honeywell International, Inc. | Aircraft brake actuation system and method including anti-hysteresis control |
US7454254B2 (en) * | 2005-08-30 | 2008-11-18 | Honeywell International, Inc. | Aircraft cabin pressure control system and method for reducing outflow valve actuator induced cabin pressure oscillations |
JP4235210B2 (ja) * | 2006-02-16 | 2009-03-11 | ファナック株式会社 | サーボモータの制御装置 |
EP1857902A1 (en) * | 2006-05-18 | 2007-11-21 | Saab Ab | Method and device for controlling backlash |
CN101377664B (zh) * | 2007-08-31 | 2012-06-20 | 西门子公司 | 一种传动机构的状态监测方法及系统 |
US9568075B2 (en) * | 2013-10-28 | 2017-02-14 | Seiko Epson Corporation | Robot, robot control device, and robot system |
WO2015136696A1 (ja) * | 2014-03-14 | 2015-09-17 | 株式会社牧野フライス製作所 | 送り軸の制御方法および数値制御工作機械 |
JP6046182B2 (ja) * | 2015-02-27 | 2016-12-14 | ファナック株式会社 | 振動を抑制する機能を備えたモータ制御装置 |
JP6392726B2 (ja) * | 2015-10-30 | 2018-09-19 | ファナック株式会社 | バックラッシを補正するモータ制御装置 |
JP6568148B2 (ja) * | 2017-06-06 | 2019-08-28 | ファナック株式会社 | サーボモータ制御装置 |
CN107992109B (zh) * | 2017-12-06 | 2021-03-09 | 深圳易能电气技术股份有限公司 | 全闭环定位控制系统及方法 |
JP6999456B2 (ja) * | 2018-03-15 | 2022-01-18 | オークマ株式会社 | 位置制御システム |
CN108762064B (zh) * | 2018-06-13 | 2022-06-17 | 武汉久同智能科技有限公司 | 一种伺服驱动器的速度平滑方法 |
US11385139B2 (en) | 2018-11-21 | 2022-07-12 | Martin E. Best | Active backlash detection methods and systems |
CN110716505A (zh) * | 2019-10-22 | 2020-01-21 | 福建泉工股份有限公司 | 一种劈裂装置的全闭环控制方法 |
CN112611260B (zh) * | 2020-11-27 | 2023-04-14 | 河北汉光重工有限责任公司 | 基于动平台的光电瞄具全自动运动控制方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6327904A (ja) * | 1986-07-22 | 1988-02-05 | Hitachi Ltd | サ−ボ機構装置の位置修正制御方式 |
US5049797A (en) * | 1990-07-02 | 1991-09-17 | Utah State University Foundation | Device and method for control of flexible link robot manipulators |
JPH04233602A (ja) * | 1990-12-28 | 1992-08-21 | Fanuc Ltd | ロボットのたわみ補正方法及びたわみ認識方法 |
JPH07110717A (ja) * | 1993-08-19 | 1995-04-25 | Fanuc Ltd | モータの制御方式 |
-
1994
- 1994-12-26 JP JP06336602A patent/JP3129622B2/ja not_active Expired - Fee Related
-
1995
- 1995-12-20 US US08/575,575 patent/US5691616A/en not_active Expired - Lifetime
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103676779A (zh) * | 2012-09-05 | 2014-03-26 | 发那科株式会社 | 修正齿隙的电动机控制装置 |
US9018886B2 (en) | 2012-09-05 | 2015-04-28 | Fanuc Corporation | Motor control system which corrects backlash |
CN103676779B (zh) * | 2012-09-05 | 2015-09-30 | 发那科株式会社 | 修正齿隙的电动机控制装置 |
Also Published As
Publication number | Publication date |
---|---|
JPH08179831A (ja) | 1996-07-12 |
US5691616A (en) | 1997-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3129622B2 (ja) | フルクローズド・ループ方式における象限突起補正方法 | |
JP2762364B2 (ja) | サーボモータのフィードフォワード制御方法 | |
US5598077A (en) | Control apparatus and a control method for a servomotor | |
US6515442B1 (en) | Position controller | |
US6252368B1 (en) | Numerically controlled system and backlash compensation device for use with the system | |
JP3215067B2 (ja) | 移動方向反転時の位置補正方法 | |
JP3389417B2 (ja) | ロストモーションの補正方法 | |
JPH0569275A (ja) | 数値制御装置 | |
EP1505463B1 (en) | Position control device and position control method for machine tools | |
JP3169838B2 (ja) | サーボモータの制御方法 | |
US4890046A (en) | Numerical control apparatus | |
JP2875646B2 (ja) | バックラッシ加速補正装置 | |
WO1988008640A1 (en) | Device for controlling speed of servo motor | |
US5517100A (en) | Method of controlling a servo motor | |
JP2907164B2 (ja) | 数値制御装置 | |
JP2826391B2 (ja) | バックラッシ加速制御方法 | |
JP2001222324A (ja) | 位置決め制御装置および位置決め制御方法 | |
JP3253022B2 (ja) | サーボモータのバックラッシュ補正制御方法 | |
JP2003047269A (ja) | サーボ制御装置 | |
JP3308656B2 (ja) | サーボモータの制御方法 | |
JP2709766B2 (ja) | サーボモータのフィードフォワード制御方式 | |
JPS59195714A (ja) | 可動体の位置決め制御装置 | |
JPH01228005A (ja) | 送り軸の位置制御方式 | |
JP2728260B2 (ja) | サーボ制御装置 | |
JPH03246708A (ja) | サーボモータの加速度フィードバック制御方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 19991026 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081117 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081117 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091117 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |