JP2008253132A - サーボモータおよび多関節ロボットの異常負荷検出制御方法 - Google Patents
サーボモータおよび多関節ロボットの異常負荷検出制御方法 Download PDFInfo
- Publication number
- JP2008253132A JP2008253132A JP2008134038A JP2008134038A JP2008253132A JP 2008253132 A JP2008253132 A JP 2008253132A JP 2008134038 A JP2008134038 A JP 2008134038A JP 2008134038 A JP2008134038 A JP 2008134038A JP 2008253132 A JP2008253132 A JP 2008253132A
- Authority
- JP
- Japan
- Prior art keywords
- servo motor
- abnormal load
- robot
- value
- torque
- 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.)
- Withdrawn
Links
Images
Landscapes
- Testing And Monitoring For Control Systems (AREA)
- Control Of Electric Motors In General (AREA)
Abstract
【課題】サーボモータあるいはサーボモータを備えた多関節ロボットが障害物等に接触して異常負荷を検知した時に、速やかに前記障害物等から離れて前記異常負荷を回避する方法を提供する。
【解決手段】外乱推定オブザーバを用いてロボットが受ける外乱トルクを推定し、該外乱推定値が設定基準値以上になることによって異常負荷を検出するロボットの異常負荷検出制御方法において、前記ロボットが、プログラムにより作業を開始する前に前記設定基準値を所定値に設定し、前記作業が終了後、前記設定基準値を前記所定値と異なる値に設定するものである。
【選択図】図1
【解決手段】外乱推定オブザーバを用いてロボットが受ける外乱トルクを推定し、該外乱推定値が設定基準値以上になることによって異常負荷を検出するロボットの異常負荷検出制御方法において、前記ロボットが、プログラムにより作業を開始する前に前記設定基準値を所定値に設定し、前記作業が終了後、前記設定基準値を前記所定値と異なる値に設定するものである。
【選択図】図1
Description
この発明は、ロボットや工作機械等のサーボモータを動力源とする機械において、工作機械のカッタやロボットのアーム等のサーボモータで駆動される可動部がワーク等の他の物体に衝突したとき等の異常負荷を検出した時のサーボモータの制御方法に関する。
工作機械の可動部(カッタ若しくはテーブル等)やロボットのアーム等が障害物に衝突したとき、これら可動部やアームを駆動するサーボモータは移動指令に従って移動しようとして、大きなトルクを発生する。そのため、可動部やアームの機構部を破損させる場合がある。この衝突等を検出する方法として、外乱推定オブザーバによって外乱トルクを推定し、この推定外乱トルクが設定値以上になったとき、衝突等による異常負荷が生じているものとして検出する方法が公知である(例えば、電気学会研究会資料「産業電力電気応用研究会」IEA−89−10〜14 村上俊之他「多軸加速制御における自己診断機能」)。また、外乱推定オブザーバによって異常負荷を検出すると、異常負荷が生じたサーボモータの速度指令を「0」としてサーボモータを急停止させる方法(例えば特開平3−196313号公報)、あるいはサーボモータをそれまでの進行方向とは逆方向に所定量移動させて停止させる方法(例えば特開平6−245561号公報)などの異常負荷検出制御方法が提案されている。
ところが、速度指令を「0」としてサーボモータを急停止させる方法では、サーボモータは機械を押したまま停止するので、サーボモータの停止後も機械に負荷がかかったままであるという問題がある。特開平6−245561号公報で開示された発明はこの問題を解決するためになされたものであるが、この発明では位置・速度ループによるクローズドループ制御回路をそのまま使用して、所定の位置偏差を入力してサーボモータをそれまでの進行方向とは逆方向に動作させる方法をとっているので、逆方向に動作させるための位置偏差速度指令に対する実際のサーボモータへのトルク指令にも、位置・速度クローズドループ処理を施すことにより遅れが生じることになる。その結果、異常負荷検出時に速度が0になるまでの時間および、負荷がかからない状態に移動するまでの時間が遅れることになる。機械の受けるダメージは異常負荷がかかりはじめてから、速度が0になり、さらに負荷がかからない状態に移動するまでの時間に依存するので、ダメージを小さくするためには、できるだけその時間を短くすることが必要である。そこで本発明はサーボモータあるいはサーボモータを備えた多関節ロボットが障害物等に接触して異常負荷を検知した時に、速やかに停止して、さらに前記障害物等から離れて前記異常負荷を除去する方法を提供することを目的とする。
上記の目的を達成するために、本発明では、以下のようにしたものである。
請求項1記載の発明は、外乱推定オブザーバを用いてロボットが受ける外乱トルクを推定し、該外乱推定値が設定基準値以上になることによって異常負荷を検出するロボットの異常負荷検出制御方法において、前記ロボットが、プログラムにより作業を開始する前に前記設定基準値を所定値に設定し、前記作業が終了後、前記設定基準値を前記所定値と異なる値に設定するものである。
請求項1記載の発明は、外乱推定オブザーバを用いてロボットが受ける外乱トルクを推定し、該外乱推定値が設定基準値以上になることによって異常負荷を検出するロボットの異常負荷検出制御方法において、前記ロボットが、プログラムにより作業を開始する前に前記設定基準値を所定値に設定し、前記作業が終了後、前記設定基準値を前記所定値と異なる値に設定するものである。
以上述べたように、本発明によれば、衝突検出後ただちに大きな逆転トルクを指令するので、衝突後速やかにロボットアーム等を停止させたうえ、さらに障害物から引き離して、障害物から受ける反力を速やかに除去できるので、ロボットアーム等および被衝突側の障害物の破損を最小限に抑えることが可能になるという効果がある。
以下、本発明の実施例を図に基づいて説明する。図1は本発明の実施例を示すブロック図である。図において、1はサーボモータであり、2はサーボモータ1で駆動されるロボットアームであり、3はサーボモータ1の回転速度を検出する速度検出器であり、4はサーボモータ1を駆動するディジタルサーボ回路であり、5はクローズドループ制御とオープンループ制御を切り替えるスイッチであり、図示しない上位の制御装置の指令によって作動する。スイッチ5が閉じている時はサーボモータ1はクローズドループで制御され、スイッチ5が開くとオープンループで制御される。次にこの実施例の作用を説明する。通常の制御においてはスイッチ5は閉じられてクローズドループによる制御が選択される。この時、前記上位の制御装置からディジタルサーボ回路4に位置指令VSPが入力される。位置指令VSPはディジタルサーボ回路4の内部で位置ループ比例ゲインKP 、速度ループ比例ゲインKv,およびモータトルク定数KT を順に乗じて、サーボモータ1に指令するトルクに応じた電流指令値Iref に変換され、スイッチ5を通ってサーボモータ1に流れる。電流指令値Iref がサーボモータ1に流れるとサーボモータ1が回転し、ロボットアーム2を駆動する。サーボモータ1の回転速度は速度検出器3で検出され、速度フィードバック信号Vref として出力して、ディジタルサーボ回路4にフィードバックする。以上が通常のクローズドループによる制御である。ここで、ロボットアーム2が障害物に衝突したとする。この衝突を図示しない外乱推定オブザーバが検出すると、前記外乱推定オブザーバの作用によって前記上位の制御装置からの信号でスイッチ5が開き、オープンループ制御に切り替えられる。次に前記上位の制御装置が所定のトルクTqを所定の時間Tmの間だけサーボモータ1に指令する。通常、トルクTqの大きさはサーボモータ1の最大トルクを設定し、その方向はサーボモータ1の衝突直前の回転方向の逆方向に設定する。トルクTqの方向はロボットアーム2と障害物の接触によってサーボモータ1が受ける反力トルクと同じ方向であると言い換えることもできる。サーボモータ1はこのようなトルクTqを指令されるので、急激に減速し、さらに反転し、衝突前の位置にロボットアーム2を引き戻す。所定の時間Tmが経過すると、再びスイッチ5を閉じてクローズドループ制御に切り替え、ロボットアーム2を停止させる。ロボットアーム2が重力による負荷を受ける場合、トルクTqを前記重力による負荷と釣り合う大きさと方向に設定すれば、ロボットアーム2の重力による落下を防ぐことができる。この時、ロボットアーム2は障害物から受ける反力によって、衝突前の位置まで戻される。また、トルクTqの大きさを、次のようなサーボモータ1の運転条件によって切り替えてもよい。
(1)異常負荷の検出すなわち衝突の直前のサーボモータの実際の回転速度に応じて、回転速度が大きいときはトルクTqの大きさを大きい値に、回転速度が小さいときはトルクTqの大きさを小さい値に設定する。
(2)異常負荷の検出すなわち衝突の直前のサーボモータの回転速度指令に応じて、回転速度指令が大きいときはトルクTqの大きさを大きい値に、回転速度指令が小さいときはトルクTqの大きさを小さい値に設定する。
(3)サーボモータが多関節ロボットの駆動用に用いられている場合、プレイバック動作時にはトルクTqの大きさを大きい値に、教示動作時にはトルクTqの大きさを小さい値に設定する。
(4)サーボモータが多関節ロボットの駆動用に用いられている場合、エンドエフェクタの姿勢に影響する軸についてはトルクTqの大きさを大きい値に、それ以外の軸についてはトルクTqの大きさを小さい値に設定する。
またトルクTqを指令する時間Tmおよび外乱推定オブザーバにおいて異常を検出するための設定基準値Lsについても大小2つの値を用意して、トルクTqと同様にサーボモータ1の運転条件によって切り替えてもよい。さらにまた、トルクTqと時間Tmおよび設定基準値Lsをサーボモータの回転速度Vを基準にして次のような式で求めてもよい。
(数1)
(1)異常負荷の検出すなわち衝突の直前のサーボモータの実際の回転速度に応じて、回転速度が大きいときはトルクTqの大きさを大きい値に、回転速度が小さいときはトルクTqの大きさを小さい値に設定する。
(2)異常負荷の検出すなわち衝突の直前のサーボモータの回転速度指令に応じて、回転速度指令が大きいときはトルクTqの大きさを大きい値に、回転速度指令が小さいときはトルクTqの大きさを小さい値に設定する。
(3)サーボモータが多関節ロボットの駆動用に用いられている場合、プレイバック動作時にはトルクTqの大きさを大きい値に、教示動作時にはトルクTqの大きさを小さい値に設定する。
(4)サーボモータが多関節ロボットの駆動用に用いられている場合、エンドエフェクタの姿勢に影響する軸についてはトルクTqの大きさを大きい値に、それ以外の軸についてはトルクTqの大きさを小さい値に設定する。
またトルクTqを指令する時間Tmおよび外乱推定オブザーバにおいて異常を検出するための設定基準値Lsについても大小2つの値を用意して、トルクTqと同様にサーボモータ1の運転条件によって切り替えてもよい。さらにまた、トルクTqと時間Tmおよび設定基準値Lsをサーボモータの回転速度Vを基準にして次のような式で求めてもよい。
(数1)
Tq=(V/Vmax )*Tq_max (数1)
(数2)
(数2)
Tm=(V/Vmax )*Tm_max (数2)
(数3)
(数3)
Ls=(V/Vmax )*Ls_max (数3)
ここで、Tq_max 、Tm_max およびLs_max はそれぞれトルク、時間および設定基準値の最大値である。また、Vmax はサーボモータの最高回転速度である。さらに、サーボモータの回転速度Vは実際の速度であっても速度指令値であってもよい。また、速度との関係は、状況に応じて任意の式を用いてよい。例えば、以下の様な式も有効である。
(数4)
(数4)
Tq=sin (π/2*(V/Vmax ))*Tq_max (数4)
(数5)
(数5)
Tm=sin (π/2*(V/Vmax ))*Tm_max (数5)
(数6)
(数6)
Ls=sin (π/2*(V/Vmax ))*Ls_max (数6)
サーボモータが低速で回転しているときは、もともとの速度が低いのでサーボモータを逆回転するためには大きなトルクや時間は不要であり、必要以上に大きなトルクを指令するとロボットアーム等が必要以上に移動するので、かえって危険な場合がある。そこでこのように速度に応じて設定値を変えるようにするのである。
一般に多関節ロボットは6軸の自由度を有し、エンドエフェクタの位置の決定する3軸を基本軸とよび、エンドエフェクタの姿勢を決定する3軸を手首軸とよび、各軸はサーボモータで駆動される。本発明をこのような多関節ロボットに適用する場合は、これらの軸の性格に応じてつぎのような応用が考えられる。
(1)ある軸のサーボモータについて異常負荷を検知したときに、該軸のサーボモータだけに逆転トルクを指令し、他の軸にはその場での停止を指令する。
(2)ある軸のサーボモータについて異常負荷を検知したときに、該軸のサーボモータだけに逆転トルクを指令し、加えて該軸以外の他の軸についても逆転トルクを指令する。
(3)ある軸のサーボモータについて異常負荷を検知したときに、手首軸のサーボモータだけに逆転トルクを指令し、基本軸にはその場での停止を指令する。
(1)ある軸のサーボモータについて異常負荷を検知したときに、該軸のサーボモータだけに逆転トルクを指令し、他の軸にはその場での停止を指令する。
(2)ある軸のサーボモータについて異常負荷を検知したときに、該軸のサーボモータだけに逆転トルクを指令し、加えて該軸以外の他の軸についても逆転トルクを指令する。
(3)ある軸のサーボモータについて異常負荷を検知したときに、手首軸のサーボモータだけに逆転トルクを指令し、基本軸にはその場での停止を指令する。
以上、サーボモータあるいはサーボモータで駆動される多関節ロボット等の工作機械に加わる異常負荷を検出したときに、前記サーボモータを速やかに停止させる異常負荷検出制御方法について説明した。次に、異常負荷を検出するための設定基準値を変更する方法を説明する。例えば、ロボットにグラインダを取り付けて研磨作業を行う際、ロボットは研磨対象のワークから大きな反力を受ける。この反力を異常負荷であると認識してロボットが停止すると困るので、このような場合は外乱推定オブザーバの設定基準値を大きく設定する必要がある。しかし、ロボットが研磨作業以外の動作を行う場合、つまり研磨対象のワークのある場所から別の場所に高速で移動する(いわゆるエアカット)場合は前記設定基準値が大きいと衝突を検出できない。そこで、ロボットあるいはサーボモータの動作を指令するプログラム中に研磨作業を開始する命令の前に前記設定基準値を大きくする命令を記載し、研磨作業を終了後に前記設定基準値を小さくする命令を記載すればよい。また、外乱推定オブザーバによる外乱の推定値はサーボモータが高速で回転している時に大きく、低速で回転している時に小さくなるので、高速回転時にあわせて設定基準値を決定すると低速回転時には衝突検出の感度が低下する。そこで、前記外乱推定オブザーバの設定基準値をサーボモータの動作速度指令値の大小に応じて変更するようにプログラムすればよい。さらにまた、前記の研磨作業開始の命令やサーボモータの動作速度指令値を変更する命令がプログラム中で読み込まれるタイミングと実際に研磨作業が始まるタイミングおよびサーボモータの動作速度が変わるタイミングにはずれがある。これは、サーボ系のゲインに依存する遅れに起因するものであるが、この遅れを考慮して、前記設定基準値を変更するタイミングを一定時間遅らせば、さらに適切な異常負荷検出制御が行える。
1:サーボモータ
2:ロボットアーム
3:速度検出器
4:ディジタルサーボ回路
5:スイッチ
2:ロボットアーム
3:速度検出器
4:ディジタルサーボ回路
5:スイッチ
Claims (1)
- 外乱推定オブザーバを用いてロボットが受ける外乱トルクを推定し、該外乱推定値が設定基準値以上になることによって異常負荷を検出するロボットの異常負荷検出制御方法において、
前記ロボットが、プログラムにより作業を開始する前に前記設定基準値を所定値に設定し、前記作業が終了後、前記設定基準値を前記所定値と異なる値に設定することを特徴とするロボットの異常負荷検出制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008134038A JP2008253132A (ja) | 1999-05-20 | 2008-05-22 | サーボモータおよび多関節ロボットの異常負荷検出制御方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14063199 | 1999-05-20 | ||
JP2008134038A JP2008253132A (ja) | 1999-05-20 | 2008-05-22 | サーボモータおよび多関節ロボットの異常負荷検出制御方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP27567499A Division JP4240517B2 (ja) | 1999-05-20 | 1999-09-29 | サーボモータおよび多関節ロボットの異常負荷検出制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008253132A true JP2008253132A (ja) | 2008-10-16 |
Family
ID=39977421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008134038A Withdrawn JP2008253132A (ja) | 1999-05-20 | 2008-05-22 | サーボモータおよび多関節ロボットの異常負荷検出制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008253132A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020010447A (ja) * | 2018-07-04 | 2020-01-16 | 富士電機株式会社 | 電動機制御装置及び衝突検出方法 |
JP2020097069A (ja) * | 2018-12-17 | 2020-06-25 | 株式会社安川電機 | ロボットシステム及びロボットの制御方法 |
-
2008
- 2008-05-22 JP JP2008134038A patent/JP2008253132A/ja not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020010447A (ja) * | 2018-07-04 | 2020-01-16 | 富士電機株式会社 | 電動機制御装置及び衝突検出方法 |
JP7176255B2 (ja) | 2018-07-04 | 2022-11-22 | 富士電機株式会社 | 電動機制御装置及び衝突検出方法 |
JP2020097069A (ja) * | 2018-12-17 | 2020-06-25 | 株式会社安川電機 | ロボットシステム及びロボットの制御方法 |
JP7135823B2 (ja) | 2018-12-17 | 2022-09-13 | 株式会社安川電機 | ロボットシステム及びロボットの制御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9461569B2 (en) | Motor control device, robot hand, robot, and motor control method | |
KR102015664B1 (ko) | 매니퓰레이터 공정을 실행하기 위한 방법 및 장치 | |
CN100453237C (zh) | 焊接***及自耗电极式焊接方法 | |
KR0144650B1 (ko) | 서보모터의 이상부하 검출 제어방법 | |
US9409295B2 (en) | Method for controlling a robot | |
US20050104549A1 (en) | Drive control method and drive controller | |
JPH03281194A (ja) | 産業用ロボットの停止制御方法 | |
JPH01252340A (ja) | 力センサを用いた加工制御装置 | |
JP4240517B2 (ja) | サーボモータおよび多関節ロボットの異常負荷検出制御方法 | |
JP3529010B2 (ja) | 可動ユニットの衝突検出装置 | |
JPH1170490A (ja) | 産業用ロボットの衝突検出方法 | |
JP2008253132A (ja) | サーボモータおよび多関節ロボットの異常負荷検出制御方法 | |
JP3460761B2 (ja) | ロボットの制御装置 | |
JPH1110580A (ja) | 産業用ロボットの駆動軸制御方法及びその装置 | |
JPH09305235A (ja) | サーボモータの位置制御方法および制御装置 | |
JPH11245191A (ja) | 産業用ロボットの駆動軸制御方法及びその装置 | |
JPH0739190A (ja) | 自動機械のブレーキ異常検出方法 | |
JPH07194157A (ja) | サーボモータ制御装置 | |
JPH11165240A (ja) | 数値制御における送り軸制御方法および装置 | |
JPH10277887A (ja) | 位置検出器異常時の電動機制御方法 | |
JPH0792702B2 (ja) | 制御装置 | |
JPH0584681A (ja) | ロボツトアームの異物との衝突検出方法 | |
US11086300B2 (en) | Control method, control device and program recording medium | |
JP3301190B2 (ja) | 主軸運転切り換え方法 | |
JP2505394B2 (ja) | 産業用ロボットの加速度変化を利用した制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090513 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20090709 |