JPH10105247A - サーボモータのオーバーシュート防止方法 - Google Patents

サーボモータのオーバーシュート防止方法

Info

Publication number
JPH10105247A
JPH10105247A JP27689696A JP27689696A JPH10105247A JP H10105247 A JPH10105247 A JP H10105247A JP 27689696 A JP27689696 A JP 27689696A JP 27689696 A JP27689696 A JP 27689696A JP H10105247 A JPH10105247 A JP H10105247A
Authority
JP
Japan
Prior art keywords
value
overshoot
servomotor
speed
position deviation
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.)
Granted
Application number
JP27689696A
Other languages
English (en)
Other versions
JP3556779B2 (ja
Inventor
Heisuke Iwashita
平輔 岩下
Hiroyuki Kawamura
宏之 河村
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.)
Fanuc Corp
Original Assignee
Fanuc 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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP27689696A priority Critical patent/JP3556779B2/ja
Publication of JPH10105247A publication Critical patent/JPH10105247A/ja
Application granted granted Critical
Publication of JP3556779B2 publication Critical patent/JP3556779B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Feedback Control In General (AREA)
  • Control Of Position Or Direction (AREA)

Abstract

(57)【要約】 【課題】 サーボモータの移動停止時におけるオーバー
シュートの発生を防止し、また位置決め時の位置決め精
度の悪化をも防止する。 【解決手段】 移動指令がある間は、フラグFを「0」
にセットし通常の比例積分処理の速度ループ処理を行
い、トルク指令Tcを求め出力する(S1〜S3、S
9、S10、S7、S8)。移動指令が「0」、かつ位
置偏差が設定しきい値幅ε以下になると、前周期までの
積分値Σn-1 に、1より小さい係数K3 を乗じて小さな
積分値にしてトルク指令Tc を求める(S5、S6、S
7)。またフラグFを「1」にセットする。以後の周期
からは通常の速度ループ処理(S10、S7)を行う。
移動指令が「0」となり位置偏差がしきい値幅ε内にな
ったとき、1度だけ積分値を小さな値に切り替える。こ
れにより、オーバーシュートを防止し、位置決め精度を
向上させ、停止時の振動発生を小さくすることができ
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、工作機械やロボッ
ト等の各種産業機械の可動部を駆動し位置決めを行うサ
ーボモータの駆動方法に関し、特にオーバーシュートの
発生を防止する方法に関する。
【0002】
【従来の技術】サーボモータを用いて駆動される工作機
械の送り軸やロボットのアーム等の各種産業機械の可動
部の制御において、該可動部を目標位置に位置決めする
ときの停止間際にオーバーシュートが発生する。このオ
ーバーシュート発生を防止する方法として、指令目標位
置にサーボモータもしくは可動部の実際の位置が到達し
た瞬間に、すなわち、目標指令位置と実際の位置との差
である位置偏差が設定しきい値幅内になった時、速度制
御ループ内の積分器の内容をクリアしてサーボモータへ
のトルク指令を減少させ、該サーボモータの出力トルク
を動摩擦レベル以下に下げてオーバーシュートを防止す
る方法が採用されている。
【0003】
【発明が解決しようとする課題】応答性をよくするため
に、位置ループにフィードフォワードをかけてサーボモ
ータの位置を制御する方法が採用されているが、この位
置ループにフィードフォワードをかけてサーボモータを
制御する方法において、位置決め時にオーバーシュート
発生を防止するために、上述した位置偏差がしきい値幅
内になった時速度ルーの積分器の値を「0」にする方法
を採用すると、移動途中で積分器の値を「0」にする場
合が生じる。それは、非常に遅い速度でサーボモータを
駆動している時、フィードフォワード制御が有効に作用
し、位置偏差が小さな状態でサーボモータが駆動され、
位置偏差が設定しきい値幅内になり速度ループの積分器
の値を「0」にする場合が生じるからである。
【0004】また、移動指令終了後、実際の位置が目標
位置近傍に達し、位置偏差が設定しきい値幅内にいって
積分器が「0」にされると、サーボモータの出力トルク
が減少し、該サーボモータで駆動する機械のバネ要素等
によって逆にモータが機械によって押し戻されて、再び
しきい値幅外に位置偏差が出てしまう場合がある。位置
偏差がしきい値幅外に出ると位置偏差を減らすようにト
ルク指令が増大しモータ出力トルクも増大して再度位置
偏差はしきい値幅内になり、再び積分値が「0」にクリ
アされる。これを繰り返し、結果として、機械の位置が
しきい値を中心に振動する場合があった。また、しきい
値幅のどちら側(+側、−側)から位置決めするかによ
って振動中心が、しきい値幅の+側となるか、−側のと
なるか、その場所が異なり、結果として位置決め精度が
損なわれる現象が発生していた。
【0005】そこで、本発明は、上記従来技術の欠点を
解消し、サーボモータの移動停止時におけるオーバーシ
ュートの発生を防止し、また位置決め時の位置決め精度
の悪化をも防止することを目的とするものである。
【0006】
【課題を解決するための手段】本発明は、移動指令が零
になった後、位置偏差が設定しきい値幅内になったとき
上記速度ループの積分器の値を小さな値に切り替えるこ
とによってオーバーシュートを防止し、移動途中で積分
器が小さな値に切り替え移動が停止するようなことを防
止した。また、上記速度ループの積分器の値を小さな値
に切り替えは、移動指令が零になった後、位置偏差が設
定しきい値幅内に最初になったときのみとすることによ
って位置決め時の振動発生を防止した。
【0007】
【発明の実施の形態】図2は、本発明を適用した工作機
械等におけるサーボモータ制御系の一実施形態の概要ブ
ロック図であり、従来の構成と同一であることから概要
のみを図示している。1は工作機械等を制御するコンピ
ュータ内蔵の数値制御装置(CNC)、2は該数値制御
装置1から出力される移動指令や各種信号をディジタル
サーボ回路3のプロセッサに引き渡し、またディジタル
サーボ回路3からの各種制御信号、状態信号を数値制御
装置1に引き渡すために利用される共有メモリである。
ディジタルサーボ回路3は、プロセッサ及びROM、R
AM等のメモリ等で構成され、サーボモータ5の位置、
速度のフィードバック制御をソフトウエア制御で行うも
のである。4はトランジスタインバータ等で構成されサ
ーボモータ5を駆動するサーボアンプ、6は該サーボモ
ータ5の位置、速度を検出しディジタルサーボ回路3に
フィードバックするパルスコーダ等の位置、速度検出器
である。
【0008】ディジタルサーボ回路3のプロセッサは、
位置・速度ループ処理周期毎に図1に示す処理を実行
し、サーボモータ5の制御を行う。ディジタルサーボ回
路3のプロセッサは、従来と同様に、数値制御装置1か
ら共有メモリ2を介して送られてくる分配周期毎の移動
指令を読み、位置・速度ループ処理周期毎の移動指令に
変換し、該移動指令を位置偏差を記憶するレジスタに加
算すると共に位置・速度検出器6からフィードバックさ
れてくるサーボモータ5の移動量をレジスタに減算入力
することによって位置偏差を求め、この位置偏差に位置
ループゲインを乗じて速度指令Vc を求める位置ループ
処理を行う(ステップS1,S2)。
【0009】次に上記レジスタに入力される移動指令が
「0」か否か判断し、「0」でなければ、フラグFを
「0」にして(ステップS9)、ステップS2の位置ル
ープ処理によって求められた速度指令Vc から、位置・
速度検出器6からフィードバックされてくるサーボモー
タ5の実速度Vfbを減じた速度偏差に積分ゲインk1 を
乗じ、その値を積分器として機能するレジスタに記憶さ
れている前周期までの積分値Σn-1 に加算して当該周期
における積分値Σn を求める(ステップS10)。すな
わち、速度ループ制御における積分処理をこのステップ
S10で行う。
【0010】その後、上記速度偏差(Vc −Vfb)に比
例ゲインK2 を乗じた値を上記当該周期の積分値Σn に
加算してトルク指令Tc を求める。このステップS10
とステップS7の処理が速度ループ処理に対応し、この
実施形態では比例積分(PI)処理の速度ループ処理が
なされる。こうして求められたトルク指令Tc を電流ル
ープに引き渡し(ステップS8)、当該位置・速度ルー
プ処理周期の処理を終了する。なお、電流ループ処理で
は、このトルク指令Tc に基づいて、サーボモータの各
相に流す電流を制御してサーボモータ5を駆動すること
になる。
【0011】以下、移動指令がある限り各位置・速度ル
ープ処理周期毎、ステップS1〜S3、S9、S10、
S7、S8の処理を繰り返し実行し、サーボモータ5位
置、速度をフィードバック制御する。一方、移動指令が
なくなり、ステップS3で移動指令が「0」と判断され
ると、フラグFが「1」か否か判断し(ステップS
4)、最初は該フラグFはステップS9で「0」にセッ
トされているから、ステップS4からステップS5に移
行し、ステップS2の位置ループ処理によってレジスタ
に記憶されている位置偏差を読み取り、該位置偏差が設
定しきい値幅ε以下か否か判断する。該位置偏差がしき
い値幅εよりも大きいときには、前述したステップS1
0の通常の積分処理を行いステップS7でトルク指令T
c を求めて電流ループに引き渡す。すなわち通常の速度
ループ処理を行うものである。
【0012】位置偏差がしきい値幅εより大きい限りス
テップS1〜S5、S10、S7、S8の処理を各位置
・速度ループ処理周期毎実施し、サーボモータ5の実際
位置が指令された目標位置近傍に達し、位置偏差がしき
い値幅ε内になると、ステップS5からステップS6に
移行し、前周期までの積分値Σn-1 に設定係数k3 を乗
じて当該周期の積分値Σn とする。この係数の3 は0よ
りも大きく1よりも小さい値(0<K3 <1)を設定し
ておくものであり、その結果、積分値は小さな値とな
る。また、フラグFを「1」にセットする。そして、速
度偏差(Vc −Vf )に比例ゲインK2 を乗じた値と上
記積分値Σn を加算して当該周期のトルク指令Tc を求
め(ステップS7)、電流ループに出力する(ステップ
S8)。積分値が小さな値に切り替えられることから、
トルク指令Tc は小さなものとなり、サーボモータ5の
出力トルクも小さくなりオーバーシュートの発生が防止
される。
【0013】次の周期からは、フラグFが「1」にセッ
トされているから、ステップS1〜S4の処理を行った
後ステップS10に移行し、通常の積分処理を行うが、
すでに積分値が小さな値に切り替えられていることか
ら、ステップS10の積分処理を実行しても積分値は大
きなものにならない。次にステップS7に移行し、この
積分値に速度偏差に比例ゲインK2 を乗じた値を加算し
トルク指令Tc を求め電流ループに引き渡す(ステップ
S8)。これによってサーボモータの移動停止時のオー
バーシュート発生を防止する。以後、移動指令が再び出
力されない限り上記ステップS1〜S4、S10、S
7、S8の処理を各周期毎実行することになる。その結
果、積分値が小さな値に切り替えられトルク指令Tc が
小さなものとなってサーボモータ5の出力トルクが小さ
くなり、機械のバネ要素によってサーボモータが逆方向
に押し戻され位置偏差が増大したとしても、フラグFが
「1」にセットされてステップS4からステップS10
に移行するから、ステップS5、S6の処理は行われ
ず、再度積分値が小さな値に切り替えられることがない
から振動の発生を防止できる。
【0014】次に、再び移動指令が出力されステップS
3で移動指令が「0」でないことを検出すると、ステッ
プS9に移行してフラグFを「0」にセットし通常の速
度ループ処理(ステップS10,S7)を行ってトルク
指令Tc を求めることになる。なお、位置のフィードフ
ォワード制御を行う場合にはステップS2の位置ループ
処理と共に位置のフィードフォワード制御処理が実行さ
れ速度指令Vc が求められるが、この位置のフィードフ
ォワード処理は従来から公知であるので説明を省略す
る。
【0015】図3は上記処理の動作説明図で、図3
(a)に示されるような移動指令が出力され、サーボモ
ータ5が駆動され、サーボモータ5の速度が安定してい
る状態では、図3(b)、(c)に示すように位置偏差
及び積分器の積分値はほぼ一定な値を保持している。そ
して移動指令がなくなると(ステップS3)、位置偏差
は小さくなり、この位置偏差が設定されたしきい値幅の
一方のしきい値以下になると(ステップS5)、積分器
の積分値を小さな値に切り替え、フラグFを「1」にセ
ットする(ステップS6及び図3(c)、(d)参
照)。位置偏差がしきい値幅ε内にいっているときには
速度は低下していることから速度偏差も大きくはなく積
分器の積分値の増大も小さい。そして、次の移動指令が
出力されるとフラグFは「0」にセットされ、積分値は
徐々に増大し通常の位置・速度ループの処理がなされる
ことになる。
【0016】図4〜図6は、本実施形態の効果をみるた
めに行った実験結果を示す図である。0.1mmの位置
に位置決めのために、該位置より小さい方から移動して
来たときと、該位置より大きい位置より移動してきたと
き(正方向移動による位置決め、及び負方向移動による
位置決め)の2つの例の実験結果である。図4は、移動
停止の際の積分値を小さくするオーバーシュート防止を
行わなかったときの実験結果である。この図4に示す通
り、停止時にオーバーシュートが生じている。
【0017】図5は、従来行われていた位置偏差がしき
い値以下になったとき積分値を小さな値にしたときの実
験結果である。オーバーシュートの発生は防止されてい
るが、位置決め方向によって位置決め位置に段差が生じ
位置決め精度を悪化させている。また、停止時の振動が
大きくなっている。図6は本発明を実施した時の実験結
果である。この図6に示されるように、オーバーシュー
トは発生せず、かつ位置決め方向によって段差も発生せ
ず、しかも、停止時の振動も図5に比べ小さくなってい
ることが分かる。
【0018】なお、上記実施の形態では、ステップS6
において積分値を小さくするために前周期までの積分値
Σn-1 に1より小さな係数K3 を乗じて積分値を小さく
したが、この処理に代えて予め設定された小さな値の積
分値に切り替えるようにしてもよい。
【0019】
【発明の効果】本発明は、サーボモータの移動停止時に
オーバーシュートを発生させず、位置決め方向によって
位置決め位置に対する段さをも発生させず位置決め精度
を向上させ、かつ停止時の振動を小さくすることができ
る。
【図面の簡単な説明】
【図1】本発明の一実施形態のにおける位置・速度ルー
プ処理周期における処理のフローチャートである。
【図2】同実施形態の制御系のブロック図である。
【図3】同実施形態における動作説明図である。
【図4】オーバシュート発生防止対策を行わずに従来の
制御方法でサーボモータを位置決めしたときの実験結果
を示す図である。
【図5】位置偏差がしきい値以下になったとき積分値を
小さな値にする従来のオーバシュート防止方法を適用し
てサーボモータを位置決めしたときの実験結果である。
【図6】本発明を適用してサーボモータを位置決めした
ときの実験結果である。
【符号の説明】
1 数値制御装置(CNC) 2 共有メモリ 3 ディジタルサーボ回路 4 サーボアンプ 5 サーボータ 6 位置・速度検出器

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 位置ループ内に速度ループを有するサー
    ボモータの制御方法において、移動指令が零になった
    後、位置偏差が設定しきい値幅内になったとき上記速度
    ループの積分器の値を小さな値に切り替えてオーバーシ
    ュートを防止することを特徴とするサーボモータのオー
    バーシュート防止方法。
  2. 【請求項2】 位置ループ内に速度ループを有するサー
    ボモータの制御方法において、移動指令が零になった
    後、位置偏差が設定しきい値幅内に最初になったときの
    み上記速度ループの積分器の値を小さな値に切り替えて
    オーバーシュートを防止することを特徴とするサーボモ
    ータのオーバーシュート防止方法。
JP27689696A 1996-09-30 1996-09-30 サーボモータのオーバーシュート防止方法 Expired - Fee Related JP3556779B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27689696A JP3556779B2 (ja) 1996-09-30 1996-09-30 サーボモータのオーバーシュート防止方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27689696A JP3556779B2 (ja) 1996-09-30 1996-09-30 サーボモータのオーバーシュート防止方法

Publications (2)

Publication Number Publication Date
JPH10105247A true JPH10105247A (ja) 1998-04-24
JP3556779B2 JP3556779B2 (ja) 2004-08-25

Family

ID=17575909

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27689696A Expired - Fee Related JP3556779B2 (ja) 1996-09-30 1996-09-30 サーボモータのオーバーシュート防止方法

Country Status (1)

Country Link
JP (1) JP3556779B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102588394A (zh) * 2012-03-13 2012-07-18 中联重科股份有限公司 液压执行机构的运动控制装置、方法、***和工程机械
CN102621991A (zh) * 2012-03-27 2012-08-01 中联重科股份有限公司 运动机构的定位控制装置、***、方法和工程机械
CN103031958A (zh) * 2012-12-14 2013-04-10 中联重科股份有限公司 控制臂架展收的控制***、方法和混凝土泵送设备
CN112130597A (zh) * 2020-09-23 2020-12-25 珠海格力智能装备有限公司 伺服电机的控制方法及控制***、电机控制器
CN115298951A (zh) * 2022-06-17 2022-11-04 广东逸动科技有限公司 电机的控制方法、船舶、设备及存储介质
WO2024079786A1 (ja) * 2022-10-11 2024-04-18 ファナック株式会社 モータ制御装置及びモータ制御方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102588394A (zh) * 2012-03-13 2012-07-18 中联重科股份有限公司 液压执行机构的运动控制装置、方法、***和工程机械
CN102621991A (zh) * 2012-03-27 2012-08-01 中联重科股份有限公司 运动机构的定位控制装置、***、方法和工程机械
CN103031958A (zh) * 2012-12-14 2013-04-10 中联重科股份有限公司 控制臂架展收的控制***、方法和混凝土泵送设备
CN103031958B (zh) * 2012-12-14 2015-04-15 中联重科股份有限公司 控制臂架展收的控制***、方法和混凝土泵送设备
CN112130597A (zh) * 2020-09-23 2020-12-25 珠海格力智能装备有限公司 伺服电机的控制方法及控制***、电机控制器
CN115298951A (zh) * 2022-06-17 2022-11-04 广东逸动科技有限公司 电机的控制方法、船舶、设备及存储介质
CN115298951B (zh) * 2022-06-17 2024-02-20 广东逸动科技有限公司 电机的控制方法、船舶、设备及存储介质
WO2024079786A1 (ja) * 2022-10-11 2024-04-18 ファナック株式会社 モータ制御装置及びモータ制御方法

Also Published As

Publication number Publication date
JP3556779B2 (ja) 2004-08-25

Similar Documents

Publication Publication Date Title
JP2709969B2 (ja) サーボモータの制御方法
US5107193A (en) Feedforward control apparatus for a servomotor
JPH03201106A (ja) 数値制御装置のバックラッシュ補正方式
EP0790543B1 (en) Method for switching a control mode of a servo control system
JPH05118302A (ja) サーボモータの制御装置
JPH06245561A (ja) サーボモータの異常負荷検出制御方法
EP0547239B1 (en) Back-lash acceleration control method
JP3285681B2 (ja) サーボモータの制御方法
JP3556779B2 (ja) サーボモータのオーバーシュート防止方法
JPH06339292A (ja) 外乱負荷推定による力制御方法
JP2003216243A (ja) ロボットの制御装置
TW525045B (en) Servo control method
JPH0317703A (ja) 速度依存型外乱推定オブザーバによるゼロイング方法
KR970002259B1 (ko) 서보모터의 제어방법
JP2826391B2 (ja) バックラッシ加速制御方法
US6122998A (en) Force control method for a bar feeder of a lathe
JP2733881B2 (ja) Pi制御ループをベースにした適応スライディングモード制御方式
JP3253022B2 (ja) サーボモータのバックラッシュ補正制御方法
JPH07266190A (ja) 数値制御装置
JP3308656B2 (ja) サーボモータの制御方法
JP3982308B2 (ja) 位置決め制御装置
JP2709766B2 (ja) サーボモータのフィードフォワード制御方式
JP3197898B2 (ja) サーボモータの制御方式
JPH04233608A (ja) サーボモータの制御方法
JPH09167023A (ja) サーボ制御方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Effective date: 20031203

Free format text: JAPANESE INTERMEDIATE CODE: A971007

A131 Notification of reasons for refusal

Effective date: 20040106

Free format text: JAPANESE INTERMEDIATE CODE: A131

A521 Written amendment

Effective date: 20040223

Free format text: JAPANESE INTERMEDIATE CODE: A523

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040420

A61 First payment of annual fees (during grant procedure)

Effective date: 20040513

Free format text: JAPANESE INTERMEDIATE CODE: A61

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080521

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090521

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees