JP3911258B2 - 制御装置による駆動装置の制御方法および制御装置 - Google Patents

制御装置による駆動装置の制御方法および制御装置 Download PDF

Info

Publication number
JP3911258B2
JP3911258B2 JP2003294610A JP2003294610A JP3911258B2 JP 3911258 B2 JP3911258 B2 JP 3911258B2 JP 2003294610 A JP2003294610 A JP 2003294610A JP 2003294610 A JP2003294610 A JP 2003294610A JP 3911258 B2 JP3911258 B2 JP 3911258B2
Authority
JP
Japan
Prior art keywords
current
command value
collision
movable body
value
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
JP2003294610A
Other languages
English (en)
Other versions
JP2005059171A (ja
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.)
Kawasaki Motors Ltd
Original Assignee
Kawasaki Jukogyo KK
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 Kawasaki Jukogyo KK filed Critical Kawasaki Jukogyo KK
Priority to JP2003294610A priority Critical patent/JP3911258B2/ja
Publication of JP2005059171A publication Critical patent/JP2005059171A/ja
Application granted granted Critical
Publication of JP3911258B2 publication Critical patent/JP3911258B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

本発明は、駆動装置の制御方法および制御装置に関する。さらに詳しくは、ロボットアームが障害物に衝突した場合、その衝突を検知して、この衝突により発生する各部材の損傷を最小限に留めるようにロボットアームのモータを制御する制御方法および制御装置に関する。
ロボットアームと障害物との衝突を検知する技術に関して、さまざまな提案がなされている。たとえばロボットに設けられるサーボモータにトルクセンサを取付け、トルクセンサの乱れから衝突を検知する方法が開示されている(特許文献1参照)。
また他の従来技術として、ロボットアームの衝突が検知された後に、衝突前に与えられるトルクとは逆向きのトルクをロボットアームに与えるように、サーボモータに電流を与える技術が開示されている(たとえば特許文献2および特許文献3参照)。
特開平5−208394号公報 特開平7−143780号公報 特開2001−117618号公報
上述したサーボモータの制御方法では、ロボットアームの衝突によって発生する各部材の損傷を抑制する点に関し、充分に考慮されているとは言えない。というのは、衝突してから逆向きのトルクをロボットアームに与えるまでに遅れが生じるからである。この遅れた時間の間、ロボットアームは障害物を押し続ける。
遅れ時間の経過中には、ロボットアームが障害物を押付けているので、ロボットアームおよび障害物の損傷の程度を抑制することができない。またロボットアームの衝突によって発生する衝撃を緩和することが困難である。このことは、電動モータを備えるロボット以外のモータの制御方法であっても同様である。
したがって本発明の目的は、衝突によって発生する衝撃を緩和し、各部材の損傷を低減することができる駆動装置の制御方法および制御装置を提供することである。
請求項1記載の本発明は、回転量を検出するエンコーダが設けられる電動モータを備えて構成され、電動モータによって可動体を変位駆動する駆動装置と、
時間経過毎に移動すべき可動体の位置を表わす位置指令値と、エンコーダによって検出されるエンコーダ値とに基づいて、電動モータに与える電流値を表わす指示電流指令値を決定する制御装置であって、可動体が障害物に衝突しない正常状態において、指示電流指令値が予め定められる設定電流範囲内である場合、指示電流指令値を駆動電流指令値とし、指示電流指令値が設定電流範囲以上である場合には、設定電流範囲の上限値を駆動電流指令値とし、指示電流指令値が設定電流範囲以下である場合には、設定電流範囲の下限値を駆動電流指令値とする制御装置と、
制御装置によって決定される駆動電流指令値が与えられ、駆動電流指令値の表わす電流の値に応じた駆動電流を発生し、発生した電流を電動モータに与える電流発生回路と、
可動体が障害物に衝突したか否かを検出し、可動体が障害物に衝突したことを示す衝突検知信号を出力する衝突検知手段とを含むシステムにおいて、制御装置による駆動装置の制御方法であって、
衝突検知手段から与えられる衝突検知信号与に応答して、可動体が障害物に衝突したことを検知する衝突検知工程と、
衝突検知工程で可動体の衝突を検知すると、設定電流範囲よりもさらに制限される制限範囲で制限して駆動電流指令値を生成し、制限した駆動電流指令値を電流発生回路に与える電流制限工程と、
衝突検知工程で可動体の衝突を検知すると、可動体が障害物に衝突するまでの進行移動経路を逆にたどるような時間経過毎の位置指令値を用いて、指示電流指令値を決定する電流反転工程とを含むことを特徴とする制御装置による駆動装置の制御方法である。
請求項2記載の本発明は、電流制限工程では、指示電流指令値を予め定める減少率で減少させた値を駆動電流指令値として生成することを特徴とする。
請求項3記載の本発明は、電流制限工程では、予め定める一定値を駆動電流指令値として生成することを特徴とする。
請求項記載の本発明は、電流制限工程では、衝突直前に生成された指示電流指令値と同じ向きの指示電流指令値であって、衝突後に生成される指示電流指令値についてのみ制限して、駆動電流指令値を生成することを特徴とする。
請求項記載の本発明は、衝突検知工程で可動体の衝突検知てから、衝突後に生成される指示電流指令値が、衝突直前に生成された指示電流指令値と反対の向きとなると、電流制限工程における駆動電流指令値の制限を解除する電流制限解除工程をさらに含むことを特徴とする。
請求項記載の本発明は、衝突検知工程で可動体の衝突検知てから、衝突後に生成される指示電流指令値が、衝突直前に生成された指示電流指令値と反対の向きとなると、電流制限工程を終了して、衝突前に予め設定される設定電流範囲よりも大きい駆動電流指令値が電流発生回路に与えられることを許容する過電流許容工程をさらに含むことを特徴とする。
請求項記載の本発明は、衝突検知工程で可動体の衝突検知てから、エンコーダ値に基づいて、可動体が予め定める距離後退することを判断すると、過電流許容工程を終了する過電流許容解除工程をさらに含むことを特徴とする。
請求項記載の本発明は、電流制限工程によって制限される駆動電流指令値は、可動体が力によって変位しないトルクを発生するに必要な電流値に応じた値以上に設定されることを特徴とする。
請求項9記載の本発明は、前記駆動装置による駆動装置の制御方法をコンピュータによって実行させるためのプログラムである。
請求項10記載の本発明は、前記プログラムを記憶するコンピュータ読取可能な記録媒体である。
請求項11記載の本発明は、駆動量を検出する駆動量検出手段が設けられる電動モータを備えて構成され、電動モータによって可動体を変位駆動する駆動装
時間経過毎に移動すべき可動体の位置を表わす位置指令値と、駆動量検出手段によって検出される検出値とに基づいて、電動モータに与える電流値を表わす指示電流指令値を決定する制御装置と、
制御装置によって決定される駆動電流指令値が与えられ、駆動電流指令値の表わす電流の値に応じた駆動電流を発生し、発生した電流を電動モータに与える電流発生回路と、
可動体が障害物に衝突したか否かを検出し、可動体が障害物に衝突したことを示す衝突検知信号を出力する衝突検知手段とを含むシステムの一部を構成する制御装置であって、
突検知手段から与えられる衝突検知信号に応答して、予め定められる制限範囲に制限した駆動電流指令値を生成し、制限した駆動電流指令値を電流発生回路に与える電流制限手段と、
衝突検知手段から与えられる衝突検知信号に応答して、可動体が障害物に衝突するまでの進行移動経路を逆にたどるような時間経過毎の位置指令値を用いて、指示電流指令値を決定する電流反転手段とを含むことを特徴とする制御装置である。
請求項12記載の本発明は、電流制限手段は、指示電流指令値を予め定める減少率で減少させた値を駆動電流指令値として生成することを特徴とする。
請求項1記載の本発明は、電流制限手段は、衝突直前に生成された指示電流指令値と同じ向きの指示電流指令値であって、衝突後に生成される指示電流値についてのみ制限して、駆動電流指令値を生成することを特徴とする。
請求項1記載の本発明は、可動体の衝突検知てから、衝突後に生成される指示電流指令値が、衝突直前に生成された指示電流指令値と反対の向きとなると、電流制限手段における駆動電流指令値の制限を解除する電流制限解除手段をさらに含むことを特徴とする。
請求項1記載の本発明は、電流制限手段によって制限される駆動電流指令値は、可動体が力によって変位しないトルクを発生するに必要な電流値に応じた値以上に設定されることを特徴とする。
請求項16記載の本発明は、電動モータを備えて構成される駆動装置と、
駆動装置の電気モータによって変位駆動される可動体となるロボットアームと、
前記制御装置とを含むことを特徴とするロボットである。
請求項1記載の本発明によれば、衝突検知工程で可動体が障害物に衝突したことを検知すると、電流反転工程で可動体が障害物に衝突するまでの進行移動経路を逆にたどるような時間経過毎の位置指令値を用いて、指示電流指令値を決定する。これによって衝突後に、可動体衝突前と逆向きの指示電流指令値を生成することができる。逆向きの指示電流指令値から決定した駆動電流指令値を電流発生回路に与え、電流発生回路によって発生された電流がモータに与えられることで、可動体に衝突前と逆向きのトルクが与えられる。これによって衝突前に移動していた方向と逆向きに可動体を移動させることができ、可動体が障害物を押付ける時間を短くすることができる。
また衝突検知工程で可動体が障害物に衝突したことを検知すると、電流制限工程で設定電流範囲よりもさらに制限される制限範囲で制限して駆動電流指令値を生成し、制限した駆動電流指令値を電流発生回路に与えて、モータに与える電流を制限する。衝突を検知してから、指示電流指令値を反転させてモータに与える電流を反転するまでにかかる時間と、駆動電流指令値を制限してモータに与える電流を制限するまでにかかる時間とでは、電流を制限する時間のほうが短い。
たとえば衝突検知時からモータへの電流の流れる向きが反転するような指示電流指令値を生成して、反転した電流をモータへ流すまでには、サーボ系の遅れによって時間遅れがある。これに対して駆動電流指令値を制限するには、サーボ系の遅れにかかわらずに行うことができる。このように衝突検知時から駆動電流指令値を制限して電流を減少させるまでにかかる時間は、駆動電流指令値を反転して、電流を逆方向に流すまでにかかる時間よりも短い。
このように本発明では、衝突を検知してから、電流反転工程でモータに与える電流の流れる向きを反転させるまでに遅れが生じる場合でも、アーム衝突後にモータに流れる電流を制限することで、可動体が障害物を押付けようとする力を抑制することができる。すなわち衝突によって発生する衝撃を緩和することができ、可動体および障害物の損傷を低減することができる。
言い換えると、衝突検知後に、電流を反転する指示電流指令値が演算されるまでに、電流を制限した駆動電流指令値を生成することができる。すなわち衝突検知後、モータに与えられる電流が反転する前に、モータに与えられる電流を低減することができ、可動体が衝突してから逆方向に移動するまでに、可動体が障害物を押付ける力をすばやく低減することができる。
また請求項2記載の本発明によれば、指示電流指令値を予め定める減少率で減少させた値を駆動電流指令値として生成する。これによって位置指令値と、エンコーダ値とに基づいて、決定される指示電流指令値よりも小さい駆動電流指令値を電流発生回路に与えることができ、衝突直後の指示電流指令値を減少させることができ、衝突後にモータに与えられる電流を減少させることができる。
また請求項3記載の本発明によれば、予め定める一定値を駆動電流指令値として生成することで、衝突直後の指示電流指令値の大小にかかわらず、衝突直後の指示電流指令値を減少させることができ、衝突後にモータに与えられる電流を減少させることができる。
また請求項記載の本発明によれば、衝突前に生成された指示電流指令値と同じ向きの指示電流指令値であって、衝突後に生成される指示電流指令値についてみ制限するによって、電流反転工程において進行移動経路を逆にたどる位置指令値を用いてモータへの電流の流れを反転した場合に、衝突前とは逆向きにモータへ流れる電流が制限されることがない。これによって衝突による衝撃を緩和したうえで、可動体が障害物を押付ける時間を短くすることができる。また電流の流れを反転させるまでに必要な時間がばらつく場合であっても、電流の流れが反転すると直ちに逆向きに流れる電流をモータに与えることができる。
また請求項記載の本発明によれば、電流制限解除工程で、可動体の衝突を検知してから、衝突後に生成される指示電流指令値が、衝突直前に生成された指示電流指令値と反対の向きとなると、電流の制限を解除する。これによって電流の反転前について電流を制限することができるとともに、電流の反転後について電流の制限を解除することで、可動体に与えられるトルクであって、衝突前と逆向きのトルクが制限されることを防ぐことができる。
たとえば衝突を検知してから電流が反転するまでに費やす反転時間を予め取得し、衝突検知してから反転時間が経過すると電流の制限を解除することで、電流の向きが反転するまで電流を制限することができる。またたとえば電流の向きが反転したことを検出すると、電流の制限を解除してもよい。
また請求項記載の本発明によれば、過電流許容工程で、可動体の衝突を検知してから、衝突後に生成される指示電流指令値が、衝突直前に生成された指示電流指令値と反対の向きとなると、設定電流範囲よりも大きい駆動電流指令値が電流発生回路に与えられることを許容する。これによって可動体に与えられる逆向きのトルクを大きくすることができ、可動体が障害物を押付ける時間をさらに短くすることができる。
また請求項記載の本発明によれば、可動体の衝突を検知してから、エンコーダ値に基づいて、可動体が予め定める距離後退することを判断すると、過電流許容工程を終了する。これによって、いつまでもモータに大きい電流が流れ続けることを防いで、モータの損傷を防ぐことができる。
また請求項記載の本発明によれば、電流制限工程で、モータに与えられる電流が制限されたとしても、可動体が力によって変位することを防止することができる。これによって電流制限工程において、可動体が不所望に変位することを防止することができる。たとえば可動体の自重による落下を防ぐことができる。
また請求項9記載の本発明によれば、コンピュータがプログラムを読取ることによって上述した制御方法が実行される。これによって瞬時にモータに流れる電流を制限することとができ、可動体が障害物に衝突して障害物を押付ける時間をさらに短縮することができる。すなわち衝突による衝撃をより確実に緩和することができる。
また請求項10記載の本発明によれば、記憶媒体に記憶されるプログラムをコンピュータが読取ることによって、上述した制御方法が実現される。
また請求項11記載の本発明によれば、衝突検知手段によって可動体が障害物に衝突したことを検知すると、電流反転手段によって可動体が障害物に衝突するまでの進行移動経路を逆にたどるような時間経過毎の位置指令値を用いて、指示電流指令値を決定する。これによって衝突後に、可動体の衝突前と逆向きの指示電流指令値を生成することができる。逆向きの指示電流指令値から決定した駆動電流指令値を電流発生回路に与え、電流発生回路によって発生された電流がモータに与えられることで、可動体に逆向きのトルク与えられ。これによって衝突前に移動していた方向と逆向きに可動体を移動させることができ、可動体が障害物を押付ける時間を短くすることができる。
また衝突検知手段によって可動体が障害物に衝突したことを検知すると、電流制限手段によって、予め定められる制限範囲に制限した駆動電流指令値を生成し、制限した駆動電流指令値を電流発生回路に与えて、モータに与えられる電流を制限する。衝突を検知してから、指示電流指令値を反転させてモータに与える電流を反転するまでにかかる時間と、駆動電流指令値を制限してモータに与える電流を制限するまでにかかる時間とでは、電流を制限する時間のほうが短い。
したがって可動体が障害物に衝突してから、モータに与える電流の流れる向きを反転させるまでに遅れが生じる場合でも、電流制限手段によって衝突後にモータに与えられる電流を制限することで、可動体が障害物を押付けようとする力を抑制することができる。すなわち衝突によって発生する衝撃を緩和することができ、可動体および障害物の損傷を低減することができる。
また請求項12記載の本発明によれば、指示電流指令値を予め定める減少率で減少させた値を駆動電流指令値として生成する。これによって位置指令値と、検出値とに基づいて、決定される指示電流指令値よりも小さい駆動電流指令値を電流発生回路に与えることができ、衝突直後の指示電流指令値を減少させることができ、衝突後にモータに与えられる電流を減少させることができる。
また請求項1記載の本発明によれば、衝突前に生成された指示電流指令値と同じ向きの指示電流指令値であって、衝突後に生成される指示電流指令値についてみを制限するによって、電流反転手段によって進行移動経路を逆にたどる位置指令値を用いてモータへの電流の流れを反転した場合に、衝突前とは逆向きにモータへ流れる流が制限されることがない。これによって衝突による衝撃を緩和したうえで、可動体が障害物を押付ける時間を短くすることができる。また電流の流れを反転するまでに必要な時間がばらつく場合であっても、電流の流れが反転すると直ちに逆向きに流れる電流をモータに与えることができる。
また請求項1記載の本発明によれば、電流制限解除手段によって可動体の衝突を検知してから、衝突後に生成される指示電流指令値が、衝突直前に生成された指示電流指令値と反対の向きとなると、電流の制限を解除する。これによって電流の反転前について電流を制限することができるとともに、電流の反転後について電流の制限を解除することで、可動体に与えられるトルクであって、衝突前と逆向きのトルクが制限されることを防ぐことができる。
たとえば衝突を検知してから電流が反転するまでに費やす反転時間を予め取得し、衝突検知してから反転時間が経過すると電流の制限を解除することで、電流の向きが反転するまで電流を制限することができる。またたとえば電流の向きが反転したことを検出すると、電流の制限を解除してもよい。
また請求項1記載の本発明によれば、電流制限手段によって、モータに与えられる電流が制限されたとしても、可動体が力によって不所望に変位することを防止することができる。たとえば外力として重力が可動体に与えられる場合、モータの電流を制限したとしても、可動体の自重による落下を防ぐことができる。
また請求項16記載の本発明によれば、ロボットアームが障害物に衝突した場合に、衝突によって発生する衝撃を緩和することができ、各部材の損傷を低減することができる。これによってロボットアームの移動経路が用途によって異なる場合であって、衝突位置が予想できない場合であっても、障害物とロボットアームとの衝突時の衝撃を有効に緩和することができる。また電流指令値を変更して、モータに与える電流を反転および制限することによって、ソフトウェアによって本発明の制御装置を実現することができ、ハードウェアに比べて容易に実現することができる。
図1は、本発明の実施の一形態であるロボット1の主要な構成を示すブロック図である。ロボット1は、ロボット本体8と、ロボット本体8を制御する制御装置20とを含む。たとえばロボット1は、汎用ロボットであって6自由度を有する垂直多関節型ロボットである。ロボット本体8は、ロボットアーム40と、サーボ機構41とを含んで構成される。ロボットアーム40は、変位可能に設けられる。サーボ機構41は、制御装置20の指令に従ってロボットアーム40を変位駆動する。
制御装置20は、ロボットアーム40が障害物Gに衝突したことを検知すると、サーボ機構41を制御し、衝突によって発生する各部材の損傷を可及的に抑制するようにロボットアーム40を動作させる。
サーボ機構41は、アーム40を変位駆動するための駆動装置である駆動手段と、駆動手段の動力をアーム40に伝達するための伝達機構とを含む。なお、駆動手段は、駆動量を検出する駆動量検出手段が設けられる。本実施の形態では、駆動手段は、電動モータ、たとえばサーボモータによって実現される。サーボモータには、駆動量検出手段としてモータの回転量を検出するエンコーダ28が設けられる。
制御装置20は、電流発生回路61と、移動量指令手段54と、衝突検知手段51と、後退指令手段53と、電流制限手段52とを含む。移動量指令手段54は、アーム40を予め定める位置に移動させるために必要な電流指令値を演算する。アーム40が障害物Gに衝突しない正常状態では、移動量指令手段54が演算した電流指令値が、電流発生回路61に与えられる。電流発生回路61は、与えられる電流指令値に基づいて電流を発生し、発生した電流をサーボモータに流す。電流発生回路61は、電流指令値に応じてモータの駆動電流を発生する増幅器、いわゆるサーボアンプである。
衝突検知手段51は、ロボットアーム40が障害物Gに衝突したことを検知し、衝突したことを示す衝突検知信号を出力する。後退指令手段53は、衝突検知手段51から衝突検知信号が与えられると、衝突するまでの進行移動径路を逆にたどるようなロボットアーム40の後退移動経路を演算し、演算した後退移動径路を示す情報を移動量指令手段54に与える。移動量指令手段54は、後退指令手段53から後退移動径路を示す情報が与えられると、その後退移動径路に基づいた電流指令値を演算して電流発生回路61に与える。
電流制限手段52は、衝突検知手段51から衝突検知信号が与えられると、移動量指令手段54が演算した電流指令値を制限し、制限した電流指令値を電流発生回路61に与える。これによってアーム衝突検知時には、電流発生回路61から出力される電流は、電流制限前に比べて減少されて、モータに与えられる。
本発明において電流を制限することは、移動量指令手段54の電流指令値を予め定める減少率で減少させる場合、移動量指令手段54の電流指令値にかかわらず予め定める一定値に制限する場合のいずれであってもよい。また予め定める減少率は、0%である場合も含む。この場合、電流制限時には、電流発生回路61からサーボモータに与えられる電流はゼロであり、モータに電流が流れることが阻止される。
制御装置20は、いわゆるロボットコントローラによって実現される。この場合、本発明のロボットコントローラは、通常のロボットコントローラに比べて、衝突検知手段51、電流制限手段52および後退指令手段53をさらに備える構成である。したがって衝突検知手段51、電流制限手段52および後退指令手段53以外の他の構成については、通常のロボットコントローラと同様の構成であってもよい。
図2は、本発明のロボットアーム40の関節構造を模式的に示す図である。ロボットアーム40は、第1〜第6の可動体44a〜44fを有する。各可動体44a〜44fは、アーム軸11〜16と、関節部2〜7とによってそれぞれ構成される。
各可動体44a〜44fは、直列に連結され、相互に変位可能に設けられる。各可動体44a〜44fのうち、直列方向一方側の第1可動体44aは、ベース43に固定される。また各可動体44a〜44fのうち、直列方向他方側の第6可動体44fは、エンドエフェクタ42が連結される。エンドエフェクタ42は、ロボットハンドや溶接ツールなどであり、ロボットアームの変形動作によって予め定める姿勢で予め定める位置に変位駆動される。
第1〜第6可動体44a〜44fは、第1可動体44aから第6可動体44fまで、順に連結され、それぞれ対応する角変位軸線を有する。各可動体44a〜44fは、対応する角変位軸線まわりに角変位可能に連結される。
第1可動体44aに対応する第1角変位軸線は鉛直に延びる。第1可動体44aは、第1関節部2によって、ベース43に対して第1角変位軸線まわりに角変位可能に設けられる。第2可動体44bに対応する第2角変位軸線は、第1角変位軸線に対して垂直に延びる。第2可動体44bは、第2関節部3によって、第1可動体44aに対して第2角変位軸線まわりに角変位可能に設けられる。
第3可動体44cに対応する第3角変位軸線は、第2角変位軸線に対して垂直に延びる。第3可動体44cは、第3関節部4によって、第2可動体44bに対して第3角変位軸線まわりに角変位可能に設けられる。第4可動体44dに対応する第4角変位軸線は、第3角変位軸線と同軸に延びる。第4可動体44dは、第4関節部5によって、第3可動体44cに対して第4角変位軸線まわりに角変位可能に設けられる。
第5可動体44eに対応する第5角変位軸線は、第4角変位軸線に対して垂直に延びる。第5可動体44eは、第5関節部6によって、第4可動体44dに対して第5角変位軸線まわりに角変位可能に設けられる。第6可動体44fに対応する第6角変位軸線は、第5角変位軸線と同軸に延びる。第6可動体44fは、第6関節部7によって、第5可動体44eに対して第6角変位軸線まわりに角変位可能に設けられる。
第1可動体44a、第4可動体44d、第6可動体44fは、いわゆる旋回軸を構成する。第2可動体44b、第3可動体44c、第5可動体44eは、いわゆる回転軸を構成する。また各可動体44a〜44fは、それぞれ対応する第1〜第6角変位軸線まわりに角変位駆動される各サーボ機構41がそれぞれ設けられる。
このように本発明の実施の一形態であるロボット1は、垂直多関節型の6自由度ロボットである。なお、上述したロボット1は、本発明の一例示であって、この構成に限定されない。たとえば本発明の制御装置20は、半導体ウェハを搬送する円筒座標型のロボットに搭載されてもよい。また図2において参照符号Gは、障害物を示す。
図3は、制御装置20の物理的構成を示すブロック図である。制御装置20は、コンピュータによって実現され、予め定められるプログラムを実行することによって、上述する移動量指令手段54、衝突検知手段51、後退指令手段53、電流制限手段52を実現することができる。またコンピュータによって制御装置20が実現されることで、モータを瞬時に制御することができる。
制御装置20は、演算部70と、記憶部71と、インターフェース部72と、電流発生回路61とを含んで構成される。記憶部71は、後述する各演算器の全てまたは一部の機能を実現するためのプログラムを記憶する。演算部70は、記憶部71に記憶されるプログラムを読取り、プログラムを実行することによって各演算器の全てまたは一部の機能を実現することができる。これによって本発明の各手段を物理的に有していない制御装置であっても、記憶媒体に記憶されるプログラムを読取ることによって構成を大きく変更することなく、本発明の制御装置20として機能させることができる。すなわち従来の制御装置61に比べて、ソフトウェアを変更するだけでよく、新たにハードウェアを加える必要がないので、容易に本発明の制御装置20を実現することができる。
演算部70は、たとえばCPU(Central Processing Unit)によって実現される。また記憶部71は、たとえばRAM(Random Access Memory)およびROM(Read Only
memory)などによって実現される。
各演算器の機能を実現するためのプログラムは、別途コンピュータ読取り可能な記憶媒体に記憶されてもよい。この場合、演算部70が記憶媒体に記憶されるプログラムを読取り、そのプログラムを実行することによって、各演算器全てまたは一部の機能を実現することができる。またインターフェース部72は、演算部70と記憶部71との情報伝達を行う。またインターフェース部72は、入力手段となるティーチングペンダント73、位置検知手段となるエンコーダ28および電流発生回路61と、演算部70との情報伝達を行う。
演算部70は、ティーチングペンダント73から与えられる情報または記憶部71に記憶される情報に基づいて外部位置指令値を生成する。また演算部70は、エンコーダ28から検出位置情報が与えられる。これらの情報に基づいて、電流指令値を演算し、演算した電流指令値を電流発生回路61に与える。電流発生回路61は、電流指令値に従って電流を発生し、その電流をモータMに与える。
またアーム40が障害物Gに衝突すると、演算部70は、位置指令値とエンコーダ値とに基づいて、アーム40が障害物Gに衝突したか否かを検知する。そして演算部70は、アーム40の衝突を検知すると、電流指令値を制限してモータMに与えられる電流を制限するとともに、可動体44が後退方向に移動するような電流指令値を生成して電流発生回路61に与える。
図4は、制御装置20の機能的構成を示すブロック図である。図3に示す演算部70が記憶部71に記憶されるプログラムを実行することによって、図4に示す移動量指令手段54、衝突検知手段51、後退指令手段53、電流制限手段52の機能を実現することができる。
移動量指令手段54は、予め定められる位置指令値とエンコーダ28によるエンコーダ値との偏差に基づいて、各サーボ機構のモータMを駆動するための移動指令値を決定する。具体的には、移動量指令手段54は、外部位置指令値生成部60と、位置偏差算出器32と、第1比例器33と、速度偏差算出器34と、第2比例器35と、第3比例器36と、積分器37と、加算器38と、電流発生回路61と、フィードバック速度算出器29とを含む。
外部位置指令値生成部60は、予め教示されるロボットアーム40の移動径路に従って位置指令値を生成する。位置指令値は、時間経過毎に移動すべき各可動体44a〜44fの位置を表わす情報である。したがって各可動体44a〜44fを移動させる場合には、位置指令値も時間毎に変化する。
動体44a〜44fの移動径路は、単にエンドエフェクタ42の移動径路が制御装置20に設けられる記憶手段に記憶されていてもよい。この場合、外部位置指令値生成部60は、記憶手段からエンドエフェクタ42の移動経路を読み出して、各動体44a〜44fの移動経路を算出して、各動体44a〜44fに対応する外部位置指令値をそれぞれ生成する。
以後、複数のうち1つの可動体44に対応するサーボ機構41のモータMに関する制御装置20の構成を説明する。残余の可動体44に対応するサーボ機構のモータMに関する制御装置20の構成は、1つの可動体44に関する構成と同様の構成であるので説明を省略する。
位置偏差算出器32は、ロボットアーム40が障害物Gに衝突しない正常状態では、外部位置指令値生成部60から位置指令値が与えられ、ロボットアーム40が障害物Gに衝突したアーム衝突時には、後述する内部指令値生成部30から位置指令値が与えられる。また位置偏差算出32は、エンコーダ28から検出位置情報が与えられる。検出位置情報は、エンコーダ28のエンコーダ値であって、可動体44の位置を表わす情報である。
位置偏差算出器32は、位置指令値の表わす位置から検出位置情報の表わす位置を減算して、位置偏差を表わす位置偏差情報を演算する。位置偏差算出器32は、第1比例器33に演算した位置偏差情報を与える。
第1比例器33は、位置偏差算出器32から与えられる位置偏差情報の表わす位置偏差に、予め定める第1係数Kpを乗算して、可動体44の速度を表わす速度情報を演算する。第1比例器33は、演算した速度情報を速度偏差算出器34に与える。
またフィードバック速度算出器29は、エンコーダ28から時間経過ごとに検出位置情報が随時与えられ、その検出位置情報の表わす位置を時間で微分して速度を表わすフィードバック速度情報を演算する。フィードバック速度算出器29は、演算したフィードバック速度情報を、速度偏差算出器34および後述する推定速度偏差算出器23に与える。
速度偏差算出器34は、第1比例器33から与えられる速度情報の表わす速度から、フィードバック速度情報の表わす速度を減算して、速度偏差を表わす速度偏差情報を演算する。速度偏差算出器34は、速度偏差情報を第2比例器35に与える。第2比例器35は、速度偏差算出器34から与えられる速度偏差情報の表わす速度偏差に、予め定める第2係数Kvpを乗算して、モータMに与える第1の電流の変化量を表わす1次電流指令値を演算する。
第3比例器36は、1次電流指令値の表わす電流の変化量に予め定める第3係数Kviを乗算して、第2の電流の変化量を表わす2次電流指令値を演算し、2次電流指令値を積分器37に与える。積分器37は、2次電流指令値の表わす第2の電流の変化量を時間で積分し、第2の電流の変化量の積分値を表わす積分電流指令値を演算する。
加算器38は、積分電流指令値と1次電流指令値とが与えられる。加算器38は、与えられるそれぞれの指令値の表わす電流値を互いに加算し、指示電流指令値を演算する。指示電流指令値は、モータMに与える電流の値を表わす情報である。加算器38は、指示電流指令値を電流制限手段52に与える。
電流制限手段52は、正常状態すなわちアーム40が障害物Gに衝突していない状態では、指示電流指令値を制限せずに、指示電流指令値を駆動電流指令値として電流発生回路61に与える。電流発生回路61は、駆動電流指令値の表わす電流の値に応じた駆動電流を発生し、発生した電流をモータMに流す。
電流制限手段52は、アーム40が障害物Gに衝突したアーム衝突状態以降では、指示電流指令値を予め定める減少率で減少して制限し、それを駆動電流指令値として電流発生回路61に与える。電流発生回路61は、駆動電流指令値の表わす電流の値に応じた駆動電流を発生し、発生した電流をモータMに流す。モータMは、電流発生回路61から電流が流れることによって可動体44を変位駆動する。
なお、加算器38で、1次電流指令値が示す電流値と、積分電流指令値が示す電流値とを加算して指示電流指令値として演算するのは、可動体44の移動動作を維持させるためである。たとえば可動体44を一定速度で移動させる場合、目標速度に到達して速度偏差がゼロとなり、1次電流指令値がゼロとなった場合であっても、積分電流指令値が加算器38に与えられることで、可動体44の速度を維持して動作させることができる。すなわち加算器38は、可動体44の現在動作を維持するための現在動作維持指令値生成器として機能する。
第1比較器33は、通常のロボットコントローラに用いられる位置指令値を速度に変換する比例器と同様であってもよい。第2比例器は、通常のロボットコントローラに用いられる速度を電流指令値に変換する比例器と同様であってもよい。
衝突検知手段51は、可動体44の推定移動偏差および推定加速度偏差のうちのいずれか一方がしきい値を超えた場合に、ロボットアーム40が障害物Gに衝突したとして判断する。具体的には、衝突検知手段51は、推定位置算出器21と、推定速度算出器22と、推定速度偏差算出器23と、第1判定器24と、推定加速度偏差算出器25と、第2判定器25と、OR回路27とを含む。
推定位置算出器21は、可動体44の理論上の位置を推定する。推定位置算出器21は、その時定数がロボット1の時定数とほぼ同等に設定される。推定位置算出器21は、外部位置指令値生成部60から外部位置指令値が与えられ、推定位置算出器21に設定される時定数に基づいて、サーボ系などの遅れ要素を考慮して、可動体44の理論上の位置である推定位置を演算する。推定位置算出器21は、演算した推定位置を表わす推定位置情報を推定速度算出器22に与える。
推定位置算出器21の時定数は、外部位置指令値が与えられてから可動体44が、その外部位置指令値の表わす位置に移動するまでの時間遅れに基づいて設定される。推定位置算出器21は、与えられる外部位置指令値をフィルタに通過させて、フィルタ処理することで時間遅れを考慮した可動体44の理論上の位置を演算する。
推定速度算出器22は、推定位置情報の表わす推定位置を時間で微分し、推定速度を表わす推定速度情報を演算する。推定速度算出器22は、推定速度情報を推定速度偏差算出器23に与える。また前述したフィードバック速度算出器29は、フィードバック速度情報を推定速度偏差算出器23に与える。推定速度偏差算出器23は、推定速度情報の表わす推定速度からフィードバック速度情報の表わす速度を減算し、推定速度偏差を表わす推定速度偏差情報を演算する。
第1判定器24は、推定速度偏差算出器23から推定速度偏差情報が与えられる。第1判定器24は、推定速度偏差情報の表わす推定速度偏差が予め定められる第1しきい値を超えているか否かを判定する。第1判定器24は、第1しきい値を超えている場合には、ロボットアーム40が障害物Gに衝突したことを表わす衝突検知信号を作成し、作成した衝突検知信号をOR回路27に与える。
推定加速度偏差算出器25は、推定速度偏差算出器23から推定速度偏差情報が与えられる。推定加速度偏差算出器25は、推定速度偏差情報の表わす推定速度偏差を時間で微分し、推定加速度偏差を表わす推定加速度偏差情報を演算して、その推定加速度偏差情報を第2判定器26に与える。
第2判定器26は、推定加速度偏差算出器25から推定加速度偏差が与えられる。第2判定器26は、推定加速度偏差情報の表わす推定加速度偏差が予め定める第2しきい値を超えているか否かを判定する。第2判定器26は、第2しきい値を超えている場合には、ロボットアーム40が障害物Gに衝突したことを表わす衝突検知信号を作成し、作成した衝突検知信号をOR回路27に与える。
OR回路27は、第1判定器24および第2判定器26の少なくともいずれか一方から衝突検知信号が与えられると、ロボットアーム40が障害物Gに衝突したことを検知し、衝突検知信号を出力する。OR回路27は、後述する内部位置指令値生成部30、切換スイッチ31、電流制限手段52に衝突検知信号を与える。
OR回路27は、推定速度偏差および推定加速度偏のいずれかのうち少なくとも一方に基づいて衝突検知信号を作成する。これによって制御装置20は、ロボットアームと障害物Gとの衝突を精度よく検知することができる。さらに加速度変化は、速度変化よりも速く衝突の影響が現れるので、推定加速度偏差を用いて衝突を検知することで、衝突後迅速に衝突検知信号を出力することができる。
比較例として、モータMに流れる電流に基づいてアーム衝突を検知する場合には、衝突検知にあたって、アーム40の関節に充填されている潤滑剤の粘度の影響を受けやすい。たとえば冬季には、潤滑剤の粘度が著しく上昇してしまう。この場合、正常状態であってもモータMの理論電流値が大きくなり、衝突と誤検知される場合がある。これに対して本実施形態では、エンコーダ値と位置指令値とに基づくことによって、モータMに流れる電流がばらついたとしても、精度よくアーム40の衝突を検知することができる。
このように制御装置20は、外部位置指令値から可動体44の推定位置を算出する推定位置演算手順と、推定位置から可動体44の推定速度を算出する推定速度演算手順と、推定速度から可動体44の推定速度偏差および推定加速度偏差を算出する偏差演算手順と、推定速度偏差および推定加速度偏差のいずれかが対応する各しきい値を超えているか否か判定する判定手順と、推定速度偏差または推定加速度偏差が対応する各しきい値を超えている場合に衝突検知信号を出力する衝突検知信号出力手順とを順に行うことによって、アーム衝突を検知することができる。
後退指令手段53は、ロボットアーム40が障害物Gに衝突した場合に、可動体44が衝突前に移動した径路を逆にたどるように、ロボットアームを移動させるために設けられる。後退指令手段53から移動量指令手段54に後退指令が与えられることによって、衝突が検知されたときに可動体44が移動していた移動方向と、逆向きに移動する後退方向に移動するような力が可動体44に与えられる。すなわち制御装置20は、アーム40が障害物Gに衝突すると、衝突前にモータMが可動体44に与えるトルクとは逆向きのトルクを与えるように、モータMに与える電流の向きを逆、すなわち反転する。
後退指令手段53は、内部位置指令値生成部30と、切換スイッチ31とを含む。内部位置指令値生成部30は、エンコーダ値であって可動体44の位置を表わす検出位置情報を随時記録する。内部位置指令値生成部30は、OR回路27から衝突検知信号が与えられると、記録している検出位置情報から内部位置指令値を生成し、生成した内部位置指令値を切換スイッチ31に与える。
内部位置指令値は、衝突前に可動体44が移動方向に移動した移動経路を逆にたどるような可動体44の位置の時間変化を表わす。内部位置指令値の表わす位置は、時間経過とともに可動体44の位置が衝突時の移動方向と逆向きとなる後退方向に移り変わる。これによって内部位置指令値に従うと、可動体44は後退方向に移動する。
内部位置指令値生成部30は、衝突検知信号が与えられると、記憶する検出位置情報のうち、最も新しい検出位置情報から古くなる順に検出位置情報を出力して内部位置指令値を演算する。内部位置指令値生成部30は、その記憶容量に制限がある場合には、時間順に記憶される検出位置情報のうち、衝突前であって、衝突時に最も近い時間に記憶される検出位置情報から内部位置指令値を生成してもよい。
切換スイッチ31は、外部位置指令値と内部位置指令値とを切換える。切換スイッチ31は、外部位置指令値生成部60から外部位置指令値が与えられるとともに内部位置指令値生成部30から内部位置指令値が与えられる。切換スイッチ31は、通常状態では、外部位置指令値を位置偏差算出器32に与える。また切換スイッチ31は、OR回路27から衝突検知信号が与えられると、内部位置指令値を位置偏差算出器32に与える。
位置偏差算出器32は、アーム40が障害物Gに衝突すると、切換スイッチ31によって内部位置指令値が与えられる。そして第2比例器35は、後退方向に可動体44が移動するような1次電流指令値を演算する。そして電流発生回路61は、後退方向に移動するような電流をモータMに流す。
このように本実施の形態では、後退指令手段53と移動量指令手段54とを含んで電流反転手段を構成する。電流反転手段は、アーム衝突後に、アーム衝突直前にモータMに流れる電流に対して向きを反転させた電流をモータMに流す。このようにしてアーム40が障害物Gに衝突すると、可動体44が障害物Gに対して後退方向に移動する。
なお、積分器37は、OR回路27から衝突検知信号が与えられると、現在の積分結果を一度ゼロにして、衝突検知信号が与えられてから新たに1次電流指令値の表わす電流の変化量を積分する。言い換えるとアーム衝突時には、積分電流指令値をリセットし、アーム衝突前における可動体44の移動動作の維持を解除する。
これによって衝突前の速度にかかわらず、アーム衝突後、後退方向に移動するような指示電流指令値を速く電流発生回路61に与えることができる。また電流指令値をリセットすることによって、アーム衝突前に比べて指示電流指令値を低減することができ、モータMに流れる電流を低減して、ロボットアーム40による障害物Gの押付け力を緩和することができる。
比較例としてアーム40が衝突しても積分電流指令値をリセットしない場合には、衝突後に後退方向に移動するような1次電流指令値を演算したとしても、加算器38で衝突前の速度を表わす積分電流指令値と1次電流指令値とが加算されるので、衝突後に後退方向に移動するような指示電流指令値を速く電流発生回路61に与えることができない。したがって、可動体44による障害物Gの押付け力を緩和するまでに時間がかかる。
これに対して上述したように、衝突後に積分電流指令値をリセットすることによって、可動体44の後退方向の動作を迅速に行うことができるとともに、可動体44による障害物Gの押し付け力を緩和することができる。そのうえ、衝突後に可動体44を後退方向に移動させることで、衝突後の再起動作を迅速に行うことができる。
電流制限手段52は、アーム衝突時にOR回路27から衝突検知信号が与えられて、与えられる指示電流指令値を制限して、駆動電流指令値として電流発生回路61に与える。電流発生回路61の直前に電流制限手段が設けられることによって、アーム衝突検知後、直ちにモータMに流れる電流を低減することができる。
後退指令手段53は、衝突検知信号が与えられてから、内部位置指令値を生成して移動量指令手段54に与えるまでに時間遅れが生じる。また移動量指令手段54は、フィードバック機構を有するので内部位置指令値が与えられてから、指示電流指令値を電流制限手段52に与えるまでに時間遅れが生じる。このようにアーム40が衝突してから、モータMに流れる電流を反転するまでには時間遅れが生じる。
後退方向に移動するような電流が流れるまでは、モータMには、可動体44が障害物Gを押付けるような電流が流れる。このような電流が流れつづけている期間中、可動体44は障害物Gを押付け続ける。また流れる電流が大きいほど、可動体44が障害物Gを押付ける力が大きくなる。
実施形態では、アーム衝突時に電流制限手段52によってモータMに流れる電流を制限する。これによって衝突検知信号を出力してから後退方向に移動するような電流を流すまでに遅れがある場合であっても、可動体44が障害物Gを押付けようとする力を抑制することができ、障害物Gおよびロボットアーム40が損傷することを防止することができる。
また本実施の形態では、電流制限手段52は、モータMの許容電流を越える電流が長時間与えられることを防ぐために、予め設定電流範囲が設定される。アーム40が衝突しない正常状態において、電流制限手段52は、指示電流指令値が設定電流範囲以上の電流である場合には、設定電流範囲の上限値となる駆動電流指令値を電流発生回路61に与える。また電流制限手段52は、指示電流指令値が設定電流範囲以下の電流である場合には、設定電流範囲の下限値となる駆動電流指令値を電流発生回路61に与える。
また内部位置指令値生成部30は、アーム衝突検知後に可動体44が予め定める移動距離後退して、可動体44が障害物Gから離反したことを判断すると、可動体44の移動を停止させる位置指令値を出力するとともに、電流制限手段52に衝突解除信号を与える。
図5は、電流制限手段52の具体的構成を示すブロック図である。本発明の実施の一形態である電流制限手段52は、衝突直前に電流モータMに与えられる電流と同じ向きに流れる電流に対応する指示電流指令値を予め定める減少率で減少する。
電流制限手段52は、制限部80と、電流方向検出部81とを有する。アーム衝突検知前では、制限部80は、指示電流指令値が設定電流範囲にある場合、制限せずに駆動電流指令値として電流発生回路61に与える。
電流方向検出部81は、衝突検知信号が与えられると、そのときに流れる電流の方向を検出し、電流の方向を含んだ電流制限指令を制限部80に与える。制限部80は、電流制限指令が与えられると、電流方向検出部81によって検出される方向のみに対応する指示電流指令値を予め定める減少率に減少して駆動電流指令値として電流発生回路61に与える。
制御部80は、電流方向検出部81によって与えられる方向と反対に流れる電流を表わす指示電流指令値が与えられると、指示電流指令値が設定電流範囲以上および設定電流範囲以下であっても制限せず、指示電流指令値を駆動電流指令値として電流発生回路61に与える。すなわち制御部80は、モータに与えられる電流の向きが反転すると、設定電流範囲よりも大きい電流がモータに流れる事を許容する過電流許容手段を兼用する。
また制限部80は、可動体44が障害物Gから離反して内部位置指令値生成部30から衝突解除信号が与えられると、指示電流指令値を無制限に駆動電流指令値として電流発生回路に与える状態を解除し、設定電流範囲内の駆動電流指令値を電流発生回路61に与える通常制限状態に移行する。したがって内部位置指令値生成部30は、可動体44が障害物Gから離反すると、大きい電流の許容を解除する過電流許容解除手段となる。
また他に、電流方向検出手段81が指示電流指令値が反転したことを検出して、電流制限解除指令を制御部80に与えることで、電流の制限を解除してもよい。
図6は、アーム衝突時における制御装置20の動作手順を示すフローチャートである。また図7は、現在位置と電流制限状態と駆動電流との時間変化を示すタイムチャートである。図7(1)は、現在位置の時間変化を示し、図7(2)は、電流制限手段52の電流制限状態の時間変化を示し、図7(3)は、理想的な駆動電流の時間変化を示す。
ステップS0で、制御装置20は、可動体44を移動させるために位置指令値を生成し、予め定める移動経路に従って可動体44が移動するように、モータMに与える駆動電流を調整する。一定速度で可動体44を移動させる場合、図7(1)に示すように、移動位置は、一定の時間変化率で変化する。このとき理想的には、図7(3)に示すように駆動電流は一定値に調整される。そしてロボットアーム40が衝突時刻T4で障害物Gに衝突すると、ステップS1に進み、アーム衝突時における動作を開始する。
ステップS1では、制御装置20は、ロボットアーム40が障害物Gに衝突して可動体44が停止すると、エンコーダ値と移動指令値との位置偏差が大きくなり、衝突前に比べて指示電流指令値を大きくする。このとき電流制限手段52によって、指示電流指令値が設定電流範囲以上となっても、駆動電流指令値が大きくなることが阻止され、設定電流範囲の上限値または下限値に応じた駆動電流がモータMに与えられる。
またアーム衝突後、衝突検知手段51によって衝突検知工程が行われ、図7に示す衝突検知時刻T1で、アーム40が衝突したことを検知すると、ステップS2に進む。
ステップS2では、電流制限手段52によって電流制限工程が行われ、モータMに与える駆動電流をさらに制限する。また電流反転手段によって電流反転工程が行われ、衝突前とは逆向きに駆動電流をモータMに流す。
衝突検知時刻T1から電流が制限されるまでには、第1遅れ時間W1がかかる。また衝突検知時刻T1から逆向きの電流がモータMに流れるまでには、第2遅れ時間W2がかかる。たとえばこの第1遅れ時間W1は、約数ミリ秒である。また第2遅れ時間W2は、約数十ミリ秒である。このように第1遅れ時間W1は、第2遅れ時間W2に比べて十分短い。衝突検知時刻T1から逆向きの駆動電流がモータMに流れる反転開始時刻T2に達すると、ステップS3に進む。
ステップS3では、反転開始時刻T2では、電流制限手段52は、電流制限を行わず、指示電流指令値を駆動電流指令値として電流発生回路61に与える。電流発生回路61は、衝突前とは逆方向の駆動電流をモータMに流す。これによって可動体44は、後退方向に移動するトルクが与えられる。
この場合、上述したように電流制限手段52は、過電流許容工程を行い、指示電流指令値を駆動電流指令値として無制限に電流発生回路61に与える。これによって大きな駆動電流を発生することが可能となり、可動体44を速やかに後退方向に移動させることができる。また衝突するまでの進行移動径路を逆にたどるような後退移動経路に従って可動体44が移動するので、後退時に他の障害物に衝突することがない。
内部位置指令値生成部30が、エンコーダ値に基づいて、可動体44が障害物から予め定める移動距離後退したことを判断し、可動体44が障害物Gから離れた状態となると、ステップS4に進む。
ステップS4では、内部位置指令値生成部30は、可動体44の変位駆動を停止するような内部指令値を生成する。また衝突解除信号を電流制限手段52に与え、電流制限手段52による電流の制限状態を衝突前の通常制限状態に移行して過電流許容解除工程を行い、ステップS5に進む。ステップS5では、制御装置20は、衝突時のモータ駆動動作を終了する。
作業者は、ロボットアーム40の移動径路プログラムを書き換え、障害物Gの除去などを行い、可動体44と障害物Gとが衝突しないことを確認した後で、ティーチングペンダント73などの入力手段によって、再起動信号を制御装置20に与える。これによって切換スイッチ31が切換り、外部位置指令値生成部60からの位置指令値に従って、ロボットアーム40を移動可能な状態となる。
なお上述の記載では、1つの可動体44の制御に関する構成について、説明したが他の可動体44についても同様である。複数の可動体44を同時に移動させる場合には、それぞれの可動体44に対応するモータMが、それぞれ制御される。
以上のように本発明の実施の形態に従えば、アーム40の衝突を検知してから電流の向きを反転してモータMに電流を流すまでに費やす第2遅れ時間W2に比べて、アーム40の衝突を検知してから電流を制限するまでに費やす第1遅れ時間W1のほうが短いので、電流制限手段52によって駆動電流を制限することで、反転開始時刻T2に達する前に可動体44が障害物Gを押付けようとする力を抑制することができ、衝突による衝撃を緩和することができる。
比較例として電流を制限しない場合には、ステップS2において、図7(3)に二点差線100で示すように、可動体44が障害物Gに衝突した後であっても、反転開始時刻T2に達するまで、アーム衝突前以上に大きな駆動電流がモータMに与えられつづけ、可動体44が障害物Gを大きな力で押付け続ける。したがって衝突による衝撃を緩和することができない。
これに対して本発明では、モータMに与える電流を制限することで、衝突による衝撃を緩和することができ、モータM、減速器、アーム本体および障害物Gなどの衝突による損傷を低減することができる。
また本発明の実施の形態における電流制限手段52の構成は、制御装置を構成する記憶部のプログラムを更新することによって実現することができ、非常に容易に実現することができる。また電流発生回路61からの電流を制限して、衝突による衝撃を緩和する方法は、アーム40の衝突検知方法に無関係であるので、アーム40の衝突検知が遅れることがない。
また本発明の実施の形態では、反転開始時刻T2に達すると、モータMに後退方向に移動するような電流が流れ、可動体44に後退方向のトルクを与えることができる。これによって可動体44を速やかに後退させて、可動体44が障害物Gを押付ける状態を短時間で解消することができる。
また電流制限手段52が、衝突前にモータMに流れる方向の電流についてのみ制限し、衝突前にモータMに流れる方向とは反対方向に流れる電流については、制限せずに通過させる。これによって可動体44の速度などによって、アーム40の衝突を検知してから電流の流れを反転するまでに費やす第2遅れ時間W2がばらつく場合であっても、電流の流れが反転すると直ちに逆向きの電流をモータMに与えることができる。言い換えると、電流の制限を解除する時間を正確に決定する必要が無く、さらに利便性を向上することができる。
また指示電流指令値が反転した後に、設定電流範囲よりも大きい電流指令値が与えられた場合には、電流制限手段52が制限せずにその指示電流指令値を駆動電流指令値として電流発生回路61に与えることによって、電動モータMに与える逆向きのトルクを大きくすることができ、可動体44が障害物Gを押付ける時間をさらに短くすることができる。また正常状態では、設定電流範囲を超える電流および設定電流範囲未満の電流が流れることが防止され、モータMおよび電流発生回路61が損傷することを防止することができる。
また可動体44が障害物Gから離反したことを判断すると、通常制限状態に移行することによって、モータMおよび電流発生回路61に長時間、大きい電流が流れることを防止することができ、モータMおよび電流発生回路61の損傷をさらに防止することができる。
また電流制限手段52が、移動量指令手段54によって演算された指示電流指令値を制限する。サーボ系の遅れによって衝突検知時から電流の流れる向きを反転する指示電流指令値を生成するまでには時間遅れがある。これに対して駆動電流指令値を制限することは、サーボ系の遅れにかかわらずに行うことができる。したがって衝突検知時から指示電流指令値を制限して駆動電流指令値として生成するまでにかかる時間は、電流の流れを反転する指示電流指令値を生成するまでにかかる時間よりも短い。したがって衝突検知後に、電流を反転する指示電流指令値が演算されるまでに、電流を制限した駆動電流指令値を演算することができる。これによって衝突検知後、モータMに与えられる電流が反転する前に、モータMに与えられる電流を速く低減することができる。
電流制限手段52によって制限されてモータMに流れる電流値は、ゼロまたは可及的に最小値にすることが好ましい。これによって可動体44および障害物Gの衝突による衝撃をより緩和することができる。これに対し、モータMに流れる電流が大きいと電流の制限が開始される制限開始時刻T3以降でも、可動体44が障害物Gを押付ける力を十分に低減することができない。
またロボットアーム40に重力などの外力が与えられる場合、電流制限手段52によって制限されてモータMに流れる電流は、可動体44が重力などの外力によって変位しないトルクを発生するに必要な電流値以上に設定される。これによって可動体44が、不所望に変位することを防止することができ、ロボットアーム40が自重によって落下することを防ぐことができる。
アーム40が外力を受ける場合には、アーム40の重量、モータMの発生可能トルクなどから、ロボットの姿勢に応じてその姿勢を維持し得る最低限の電流を演算し、その電流値を表わす駆動電流指令値を電流発生手段61に与えてもよい。また予め演算される電流指令値の減少率を設定していてもよい。また姿勢毎に演算される減少率と、予め定められる減少率とを、アーム40の状態に応じて切換えて用いてもよい。
さらに本実施の制御装置20は、外部位置指令値とエンコーダ値とに基づいて、アーム40の衝突を検知する。したがって実際にアーム40が障害物Gに衝突したことを検知するセンサを必要とせず、コンピュータの演算回路を用いて衝突検知手段を実現することができる。したがって近接センサ、リミットスイッチおよび加速度センサなどの衝突検知センサを設ける必要がない。
またロボットコントローラの制御プログラムを更新することによって、衝突検知および衝突検知後のアーム制御を実現することができるので、衝突検知手段54および反転指令手段のロボットへの実装に要する期間を短縮できる。また従来と同様の物理的構成で実現することができる。
また推定加速度偏差を用いてアーム衝突の検知を行うことによって、検知精度の向上が図られる。さらに推定速度偏差および推定加速度偏差を用いて衝突を判定することによって、衝突を検知するために複雑な計算、たとえばアーム40に関する運動方程式の解を演算する必要がなく、衝突検知に要する時間を短縮できる。
またアーム衝突後のモータMの制御方法において、アーム40の衝突を検知すると、衝突前にモータMの動作を継続させるために与えていた電流指令値を消去した後、アーム40が後退方向に移動する電流指令値を与える。すなわち、駆動手段の被駆動部材に対する現在動作の維持を停止させた後、駆動手段の被駆動部材に衝突前の経路を逆にたどらせる。これによって衝突後におけるロボットアーム40の後退動作を迅速になし得ることができる。さらに、衝突後に後退動作をさせているので、ロボットアーム40の再起動を迅速になし得る。
図8は、本発明の他の実施の形態である電流制限手段152を示すブロック図である。他の実施の形態である電流制限手段152は、電流方向検出部81に代えて反転開始時刻T2に達すると電流制限手段52による電流の制限を解除するタイマ部181を有していてもよい。タイマ部181は、衝突検知信号が与えられると、制限部180に電流制限指令を与える。制御部180は、電流の向きにかかわらず指示電流指令値を制限する。
タイマ部181は、電流の向きを反転するために必要な第2遅れ時間W2が経過したと判断すると、制限部180に電流制限解除指令を与える。制御部180は、電流制限解除指令が与えられることによって、指示電流指令値の制限を解除する。このとき制御部180は、設定電流範囲以上の電流が流れることを許容する。これによって電流が反転した場合には、モータに与えられる電流が制限されることを防いで、指示電流指令値を駆動電流指令値として与えることができる。そして制御部180に衝突解除信号が与えられると、過電流許容状態を解除し、衝突前の通常制限状態に移行する。
このような他の実施の形態の電流制限手段152を有する場合であっても、上述と同様の効果を得ることができる。またこの場合、指示電流指令値から衝突前に流れる電流の方向を検出する必要がない。
またさらに他の形態の電流制限手段として、電流制限手段は、演算部70またはィーチングペンダント73などの入力手段からの解除指令に基づいて、電流の制限を解除してもよい。
なお、上述した本発明の構成は、発明の一例示であって発明の範囲内で構成を変更することができる。本発明の実施の形態では、推定速度偏差と推定加速度偏差とに基づいて、アーム40の衝突を検知することが好ましいが、アーム40の衝突検知にあたっては、特に限定せず従来技術を用いてもよい。
またロボットの制御方法および制御装置について説明したが、電動モータMを有する駆動手段を備える装置であれば、同様の制御方法および制御装置を用いることができる。ロボット以外の産業機械、たとえばNC(Numerical Control、数値制御)機械、搬送装置
などであっても、上述した制御方法および制御装置を用いることで、上述した効果と同様の効果を達成することができる。
また移動量指令手段54の具体的な構成も、他の構成であってもよい。また制御装置20は、プログラムを読取ることによって各演算器の構成を実現したが、電気回路などの物理的な構成によって各演算器の構成を実現してもよい。また本発明の制御装置20は、ロボットコントローラと別体に設けられていてもよい。また指示電流指令値が反転した場合、与えられる指示電流指令値に対して予め定める増幅率で増大して駆動電流指令値を生成して、電流発生回路に与えてもよい。これによって可動体44が障害物Gに押付けられる時間をさらに短縮することができる。
本発明の実施の一形態であるロボット1の主要な構成を示すブロック図である。 本発明のロボットアーム40の関節構造を模式的に示す図である。 制御装置20の物理的構成を示すブロック図である。 制御装置20の機能的構成を示すブロック図である。 移動方向に流れる電流のみ制御する電流制限手段52の構成の一例を示すブロック図である。 アーム衝突時における制御装置20の動作手順を示すフローチャートである。 現在位置と電流制限状態と駆動電流との時間変化を示すタイムチャートである。 本発明の他の実施の形態である電流制限手段152を示すブロック図である。
符号の説明
1 ロボット
8 ロボット本体
20 制御装置
28 エンコーダ
40 ロボットアーム
41 サーボ機構
42 エンドエフェクタ
44 可動体
51 衝突検知手段
52,152 電流制限手段
53 後退指令手段
54 移動量指令手段
61 電流発生回路
M モータ

Claims (16)

  1. 回転量を検出するエンコーダが設けられる電動モータを備えて構成され、電動モータによって可動体を変位駆動する駆動装置と、
    時間経過毎に移動すべき可動体の位置を表わす位置指令値と、エンコーダによって検出されるエンコーダ値とに基づいて、電動モータに与える電流値を表わす指示電流指令値を決定する制御装置であって、可動体が障害物に衝突しない正常状態において、指示電流指令値が予め定められる設定電流範囲内である場合、指示電流指令値を駆動電流指令値とし、指示電流指令値が設定電流範囲以上である場合には、設定電流範囲の上限値を駆動電流指令値とし、指示電流指令値が設定電流範囲以下である場合には、設定電流範囲の下限値を駆動電流指令値とする制御装置と、
    制御装置によって決定される駆動電流指令値が与えられ、駆動電流指令値の表わす電流の値に応じた駆動電流を発生し、発生した電流を電動モータに与える電流発生回路と、
    可動体が障害物に衝突したか否かを検出し、可動体が障害物に衝突したことを示す衝突検知信号を出力する衝突検知手段とを含むシステムにおいて、制御装置による駆動装置の制御方法であって、
    衝突検知手段から与えられる衝突検知信号与に応答して、可動体が障害物に衝突したことを検知する衝突検知工程と、
    衝突検知工程で可動体の衝突を検知すると、設定電流範囲よりもさらに制限される制限範囲で制限して駆動電流指令値を生成し、制限した駆動電流指令値を電流発生回路に与える電流制限工程と、
    衝突検知工程で可動体の衝突を検知すると、可動体が障害物に衝突するまでの進行移動経路を逆にたどるような時間経過毎の位置指令値を用いて、指示電流指令値を決定する電流反転工程とを含むことを特徴とする制御装置による駆動装置の制御方法。
  2. 電流制限工程では、指示電流指令値を予め定める減少率で減少させた値を駆動電流指令値として生成することを特徴とする請求項1記載の制御装置による駆動装置の制御方法。
  3. 電流制限工程では、予め定める一定値を駆動電流指令値として生成することを特徴とする請求項1記載の制御装置による駆動装置の制御方法。
  4. 電流制限工程では、衝突直前に生成された指示電流指令値と同じ向きの指示電流指令値であって、衝突後に生成される指示電流指令値についてのみ制限して、駆動電流指令値を生成することを特徴とする請求項1〜3のいずれか1つに記載の制御装置による駆動装置の制御方法。
  5. 衝突検知工程で可動体の衝突を検知してから、衝突後に生成される指示電流指令値が、衝突直前に生成された指示電流指令値と反対の向きとなると、電流制限工程における駆動電流指令値の制限を解除する電流制限解除工程をさらに含むことを特徴とする請求項1〜のいずれか1つに記載の制御装置による駆動装置の制御方法。
  6. 衝突検知工程で可動体の衝突を検知してから、衝突後に生成される指示電流指令値が、衝突直前に生成された指示電流指令値と反対の向きとなると、電流制限工程を終了して、衝突前に予め設定される設定電流範囲よりも大きい駆動電流指令値が電流発生回路に与えられることを許容する過電流許容工程をさらに含むことを特徴とする請求項1〜のいずれか1つに記載の制御装置による駆動装置の制御方法。
  7. 衝突検知工程で可動体の衝突を検知してから、エンコーダ値に基づいて、可動体が予め定める距離後退することを判断すると、過電流許容工程を終了する過電流許容解除工程をさらに含むことを特徴とする請求項6記載の制御装置による駆動装置の制御方法。
  8. 電流制限工程によって制限される駆動電流指令値は、可動体が重力によって変位しないトルクを発生するに必要な電流値に応じた値以上に設定されることを特徴とする請求項1〜7のいずれか1つに記載の制御装置による駆動装置の制御方法。
  9. 請求項1〜8のいずれか1つに記載の駆動装置による駆動装置の制御方法をコンピュータによって実行させるためのプログラム。
  10. 請求項9記載のプログラムを記憶するコンピュータ読取可能な記録媒体。
  11. 駆動量を検出する駆動量検出手段が設けられる電動モータを備えて構成され、電動モータによって可動体を変位駆動する駆動装
    時間経過毎に移動すべき可動体の位置を表わす位置指令値と、駆動量検出手段によって検出される検出値とに基づいて、電動モータに与える電流値を表わす指示電流指令値を決定する制御装置と、
    制御装置によって決定される駆動電流指令値が与えられ、駆動電流指令値の表わす電流の値に応じた駆動電流を発生し、発生した電流を電動モータに与える電流発生回路と、
    可動体が障害物に衝突したか否かを検出し、可動体が障害物に衝突したことを示す衝突検知信号を出力する衝突検知手段とを含むシステムの一部を構成する制御装置であって、
    突検知手段から与えられる衝突検知信号に応答して、予め定められる制限範囲に制限した駆動電流指令値を生成し、制限した駆動電流指令値を電流発生回路に与える電流制限手段と、
    衝突検知手段から与えられる衝突検知信号に応答して、可動体が障害物に衝突するまでの進行移動経路を逆にたどるような時間経過毎の位置指令値を用いて、指示電流指令値を決定する電流反転手段とを含むことを特徴とする制御装置。
  12. 電流制限手段は、指示電流指令値を予め定める減少率で減少させた値を駆動電流指令値として生成することを特徴とする請求項11記載の制御装置。
  13. 電流制限手段は、衝突直前に生成された指示電流指令値と同じ向きの指示電流指令値であって、衝突後に生成される指示電流値についてのみ制限して、駆動電流指令値を生成することを特徴とする請求項11または12記載の制御装置。
  14. 可動体の衝突を検知してから、衝突後に生成される指示電流指令値が、衝突直前に生成された指示電流指令値と反対の向きとなると、電流制限手段における駆動電流指令値の制限を解除する電流制限解除手段をさらに含むことを特徴とする請求項11〜13のいずれか1つに記載の制御装置。
  15. 電流制限手段によって制限される駆動電流指令値は、可動体が重力によって変位しないトルクを発生するに必要な電流値に応じた値以上に設定されることを特徴とする請求項11〜14のいずれか1つに記載の制御装置。
  16. 電動モータを備えて構成される駆動装置と、
    駆動装置の電気モータによって変位駆動される可動体となるロボットアームと、
    請求項11〜15のいずれか1つに記載の制御装置とを含むことを特徴とするロボット。
JP2003294610A 2003-08-18 2003-08-18 制御装置による駆動装置の制御方法および制御装置 Expired - Lifetime JP3911258B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003294610A JP3911258B2 (ja) 2003-08-18 2003-08-18 制御装置による駆動装置の制御方法および制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003294610A JP3911258B2 (ja) 2003-08-18 2003-08-18 制御装置による駆動装置の制御方法および制御装置

Publications (2)

Publication Number Publication Date
JP2005059171A JP2005059171A (ja) 2005-03-10
JP3911258B2 true JP3911258B2 (ja) 2007-05-09

Family

ID=34371129

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003294610A Expired - Lifetime JP3911258B2 (ja) 2003-08-18 2003-08-18 制御装置による駆動装置の制御方法および制御装置

Country Status (1)

Country Link
JP (1) JP3911258B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101925444B (zh) * 2008-01-22 2012-07-04 松下电器产业株式会社 机械臂

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007251088A (ja) * 2006-03-20 2007-09-27 Tokyo Electron Ltd 縦型熱処理装置及び縦型熱処理装置における移載機構の制御方法
JP4382052B2 (ja) * 2006-03-28 2009-12-09 川崎重工業株式会社 駆動体の制御装置および制御方法
JP4996577B2 (ja) * 2008-10-28 2012-08-08 川田工業株式会社 簡易設置型ロボット用出力制限機能付電力供給システムおよびそのシステムを具えた簡易設置型ロボット
JP2011062794A (ja) * 2009-09-18 2011-03-31 Denso Wave Inc ロボットシステム
JP5807604B2 (ja) * 2012-04-03 2015-11-10 トヨタ自動車株式会社 制御装置、制御方法及びロボット
WO2016103310A1 (ja) * 2014-12-26 2016-06-30 川崎重工業株式会社 搬送装置の制御装置
JP5896058B2 (ja) * 2015-03-06 2016-03-30 トヨタ自動車株式会社 制御装置、制御方法及びロボット
CN111511510A (zh) * 2018-01-10 2020-08-07 索尼公司 控制设备、控制方法和程序
CN112106289A (zh) 2018-09-26 2020-12-18 松下知识产权经营株式会社 多轴电动机驱动装置
WO2021186518A1 (ja) * 2020-03-16 2021-09-23 株式会社Fuji 多関節ロボット

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101925444B (zh) * 2008-01-22 2012-07-04 松下电器产业株式会社 机械臂

Also Published As

Publication number Publication date
JP2005059171A (ja) 2005-03-10

Similar Documents

Publication Publication Date Title
JP4382052B2 (ja) 駆動体の制御装置および制御方法
JP6238021B2 (ja) ロボット、ロボットの制御装置及び制御方法、並びに、ロボット用制御プログラム
WO2003068464A1 (fr) Procede de commande d'entrainement et controleur d'entrainement
JP3911258B2 (ja) 制御装置による駆動装置の制御方法および制御装置
JP4550849B2 (ja) アーム搭載移動ロボット
JP5365524B2 (ja) ロボット動作規制方法およびロボットシステム
JP6364096B2 (ja) ロボットシステム
JP5218524B2 (ja) ロボットシステムおよびロボット動作規制方法
JP6472214B2 (ja) ロボット装置の制御方法及びロボット装置
JP6392825B2 (ja) 学習制御機能を備えたロボット制御装置
US11040449B2 (en) Robot control system and method of controlling a robot
JP2009184095A (ja) 部品保護機能を備えたロボット制御装置及びロボット制御方法
JP6464205B2 (ja) ロボット制御装置
JP3367641B2 (ja) ロボットの制御装置
JP5375522B2 (ja) ロボットアーム制御装置、その制御方法及びプログラム
CN110919627A (zh) 机器人的控制方法及控制装置
JP2013169609A (ja) ロボットの衝突検出方法
JP5436160B2 (ja) 力制御装置
JP2018062026A (ja) ロボットの速度や加速度を制限する機能を備えたロボット制御装置
JPH1177580A (ja) ロボットの制御装置
JP4323351B2 (ja) 制動性能検出方法および制動性能検出装置
JP5666920B2 (ja) 粗倣い制御を行うロボットの制御装置
JPH1110580A (ja) 産業用ロボットの駆動軸制御方法及びその装置
JP4470058B2 (ja) パワーアシスト装置
JPH11245191A (ja) 産業用ロボットの駆動軸制御方法及びその装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060410

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060523

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060724

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: 20070123

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070126

R150 Certificate of patent or registration of utility model

Ref document number: 3911258

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110202

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120202

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120202

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130202

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130202

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140202

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140202

Year of fee payment: 7

EXPY Cancellation because of completion of term