(57)【特許請求の範囲】
【請求項１】
動作プログラムの外力従動命令に従って発生トルクを制限して外力に従動する外力従動の機能を有し、前記動作プログラムの外力従動終了命令を遂行して前記外力従動の機能を終了する産業用ロボットの制御方法において、
前記動作プログラムの外力従動終了命令の実行時の処理が、
ロボットの全軸について各軸のフィードバック速度を算出する第１ステップと、
算出した全軸について各軸のフィードバック速度と予め設定された基準値と比較判定する第２ステップと、
前記第２ステップで全軸について各軸のフィードバック速度が前記基準値以下と判定されなければ前記外力従動を継続し前記第１ステップへ戻る第３ステップと、
前記第２ステップで全軸について各軸のフィードバック速度が前記基準値以下と判定されると前記外力従動を終了する第４ステップと、からなることを特徴とする産業用ロボットの制御方法。
【請求項２】
動作プログラムの外力従動命令に従って発生トルクを制限して外力に従動する外力従動の機能を有し、前記動作プログラムの外力従動終了命令を遂行して前記外力従動の機能を終了するロボットにおいて、
ロボットの全軸について各軸のフィードバック速度が予め設定された基準値以下となったかを判定するフィードバック速度基準値以下判定回路を備え、
前記フィードバック速度基準値以下判定回路は、前記外力従動機能終了命令の遂行の時に、前記全軸について各軸のフィードバック速度が前記基準値以下と判定されなければ前記外力従動を継続し、
前記全軸について各軸のフィードバック速度が前記基準値以下と判定をした時に外力従動機能を終了することを特徴とする産業用ロボット。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は制御系のモード切替え機能を有するロボットの制御方法に関するもので、特に外力のない自由空間での通常のロボット制御機能と、接触面等への外力がある場合の発生トルクを制限して外力に従動する機能（以下、「外力従動機能」という。）との両機能を有していて、その間のモード切替えをすることにより、接触対象やワークを破損させたりロボットを破損させることのないようにするもので、その外力従動機能の終了の条件に関するものである。
【０００２】
【従来の技術】
接触面が幾何学的誤差を持ったり、接触状態で位置制御を行った場合に無理な力が作用して接触対象やワークを破損したり、ロボットを破損したり、逆に非接触状態で力制御を行うと力目標値と押し付け力を一致させようとしてロボットが暴走する等の危険があった。
そこで、このような場合、発生トルクを制限して外力に従動する外力従動機能を持たせている。これらの外力従動機能自体については、例えば、「計測自動制御学会論文集」Ｖｏｌ．２２，Ｎｏ．３“多自由度ロボットの仮想コンプライアンス制御”（昭和６１年３月）、特開平６−３９７６０号公報、特開昭６２−３５９１５号公報、特開平１１−７７５７４号公報、特開２０００−４２９６２号公報等に詳しく開示されている。
そこでこのような外力従動機能をもった産業用ロボットにおいて、外力従動機能を実行して外力に押されて作業している場合に、外力が加わっている間に発生トルクの制限を解除すると、外力に対して反抗するトルクが発生して、外力が圧倒的に大きい場合はロボットが破損する場合がある。
これに対して、従来技術では、外力を発生する機械からの外力発生状態をインタロック信号として、このインタロック信号が入らないと外力従動機能が終了しないようにしていた。
【０００３】
【発明が解決しようとする課題】
ところが、従来技術では、大型の外力を発生する機構などは油圧などを使用し、インタロック信号の出力と実際の外力の発生が同期しない場合がある。すなわち、インタロック信号が入っても、外力が残留しロボットに外力が加わる場合があり、タイマ命令などで調整を行っていた。
しかしながら、これらの調整は煩わしいばかりでなく、油圧を用いた機械などの場合は使用開始直後と開始後時間が経過した後では調整値も異なる場合があり、おのような調整は完全ではなかった。
また、インターロック信号を用いることによりリレー出力線、信号線などが必要となりコストアップにつながった。さらに、インタロック信号の誤動作も可能性としてあった。
本発明はこのような事情に鑑みてなされたもので、発生トルクを制限して外力に従動する機能の終了の条件として、本発明による条件を加えることにより、調整が簡単で、リレー出力線、信号線などが不要な、コストアップとならない、しかも誤動作の可能性のないロボットの制御方法を提供することにある。
【０００４】
【課題を解決するための手段】
前述した課題を解決するために、請求項１記載の産業用ロボットの制御方法の発明は、動作プログラムの外力従動命令に従って発生トルクを制限して外力に従動する外力従動の機能を有し、前記動作プログラムの外力従動終了命令を遂行して前記外力従動の機能を終了する産業用ロボットの制御方法において、前記動作プログラムの外力従動終了命令の実行時の処理が、ロボットの全軸について各軸のフィードバック速度を算出する第１ステップと、算出した全軸について各軸のフィードバック速度と予め設定された基準値と比較判定する第２ステップと、前記第２ステップで全軸について各軸のフィードバック速度が前記基準値以下と判定されなければ前記外力従動を継続し前記第１ステップへ戻る第３ステップと、前記第２ステップで全軸について各軸のフィードバック速度が前記基準値以下と判定されると前記外力従動を終了する第４ステップと、からなることを特徴としている。
また、請求項２記載の産業用ロボットの発明は、動作プログラムの外力従動命令に従って発生トルクを制限して外力に従動する外力従動の機能を有し、前記動作プログラムの外力従動終了命令を遂行して前記外力従動の機能を終了するロボットにおいて、ロボットの全軸について各軸のフィードバック速度が予め設定された基準値以下となったかを判定するフィードバック速度基準値以下判定回路を備え、前記フィードバック速度基準値以下判定回路は、前記外力従動機能終了命令の遂行の時に、前記全軸について各軸のフィードバック速度が前記基準値以下と判定されなければ前記外力従動を継続し、前記全軸について各軸のフィードバック速度が前記基準値以下と判定をした時に外力従動機能を終了することを特徴としている。
以上のように、本発明によれば外力従動機能の終了の条件として、全軸のフィードバック速度が予め設定された許容範囲内に入ったことを加えることにより、ロボットが外力によって従動している間はサーボフロート機能が終了しないようになるため、従動中に発生トルクの制限が解除され、過大なトルクによってロボットが破損するという上記問題が解決できる。また、本発明においては、外力従動機能の終了時に、ロボットに外力によって動作させられているか否かの判断を全軸のフィードバック速度が予め設定された許容範囲内に入ったか否かで判断することにしており、判断の結果外力によって動作させられていることになれば外力従動機能の終了を条件成立まで延期するので、外力が加わっている間に発生トルクの制限を解除することにより、外力に対して反抗するトルクが発生して、外力が圧倒的に大きい場合などにロボットが破損することがない。
【０００５】
【発明の実施の形態】
以下、本発明を実施の形態を図に基づいて具体的に説明する。
図３は、本発明によるロボット制御装置の制御ブロックを示している。
図において、３０はＣＰＵ、３２１はサーボモータ、３３１はサーボモータ３２１の位置検出器である。ＣＰＵ３０内には次の各機能ブロックが備わっている。すなわち、３０１は速度制御部、３０ａはロボット制御機能ブロック、３０ｂは外力従動機能ブロック、３０ｃはフィードバック速度基準値以下判定回路である。
位置検出器３３１の検出した位置フィードバック信号をＣＰＵ３０に戻して位置制御を行うと共に、速度制御部３０１で位置フィードバック信号を微分計算することによって速度フィードバック信号を得て、これを速度制御に用いている。このように、速度制御部３０１〜位置検出器３３１でサーボモータ３２１による１軸の制御が行なわれる。
このような軸制御が複数系（図ではｎ個）用いられている。ｎ個目の制御系においても、同じく、３２ｎはサーボモータ、３３ｎはサーボモータ３２ｎの位置検出器である。位置検出器３３ｎの検出した位置フィードバック信号をＣＰＵ３０に戻して、位置制御、速度制御を行っている。
ＣＰＵ３０は、自由空間における通常の指令通りのロボット制御機能ブロック３０ａの他に、前述の外力従動機能ブロック３０ｂを有している。さらに、本発明により設けられたフィードバック速度基準値以下判定回路３０ｃがある。
フィードバック速度基準値以下判定回路３０ｃには、位置検出器３３１〜３３ｎから得られたの全軸の位置フィードバック信号を前記速度制御部３０１で位置フィードバック信号を微分計算して得られた速度フィードバック信号が入力され、ここでフィードバック速度が予め設定された許容範囲である基準値以下となったかどうかが判定される。
そして、判定の結果、基準値より以下であればＣＰＵ３０は外力従動機能ブロック３０ｂによる外力従動機能を終了して、ロボット制御機能ブロック３０ａによる通常のロボット制御機能を実行する。
一方、基準値よりまだ高ければ、基準値より以下になるまで、外力従動機能ブロック３０ｂによる外力従動機能を続行するようにしている。
基準値は、例えばモータ１回転４０００パルス発生する場合、１００ＰＰＳ（パルス／秒）前後に選んでいる。これによれば、モータが１．５ｒｐｍという低速回転になってはじめて外力従動機能を終了することとなるので、ロボットが破損する怖れがなくなる。
【０００６】
図１は本発明が適用される対象となる外力従動機能を実施するためのロボットのアプリケーションプログラムの例（以下、ジョブと呼ぶ）である。
図１において、「ＦＬＯＡＴＯＮ」命令はロボットを外力に従動せしめる状態の開始となる。「ＭＯＶＬ」命令はロボットを予め教示した位置に移動するための命令である。「ＦＬＯＡＴＯＦＦ」命令は、「ＦＬＯＡＴＯＮ」命令で実行開始した外力従動機能の終了を行う命令である。
まず、「ＦＬＯＡＴＯＮ」命令の遂行で、ロボットは外力に従動する状態となり、次に、２つの「ＭＯＶＬ」命令で、ロボットを予め教示した位置に移動する。例示していないが、この命令は直線補間命令である必要はなく、また、２つに限定されるものでもなく、移動命令の替わりにタイマ命令などでも良い。そして、「ＦＬＯＡＴＯＦＦ」命令で外力には従動せずに、教示された教示位置に動作することとなる。この例の場合は、「ＦＬＯＡＴＯＦＦ」命令の後に次の命令がないので、「ＦＬＯＡＴＯＦＦ」命令を実行した位置を維持する。この時に加わった外力に対しては、最大限のトルクを発生して対抗する。
【０００７】
図２は本発明の実施の形態を示すフローチャートである。
ステップ１は全軸のフィードバック速度を算出する全軸フィードバック速度算出処理で、一般にはロボットの軸を駆動するためのサーボ制御にフィードバック制御を用いており、その際に算出したフィードバック速度が流用できる。
ステップ２は１の全軸フィードバック速度算出処理で求めた全軸のフィードバック速度が予めパラメータなどで設定されたフィードバック速度以下になっているか否かを判定するフィードバック速度基準値以下判定処理である。
全軸のフィードバック速度が予めパラメータなどで設定されたフィードバック速度より大きければステップ３の外力従動機能継続処理に進み、外力従動機能の終了を行わず、再度１の全軸フィードバック速度算出処理に戻って、これを実行する。
また、全軸のフィードバック速度が予めパラメータなどで設定されたフィードバック速度以下であれば、ステップ４の外力従動機能終了処理に進み、通常のサーボ制御動作に移り、外力に対して従動しないようにする。
このように、本発明によれば、外力従動機能の終了時に、外力によってロボットに動作させられているか否かの判断を全軸のフィードバック速度が予め設定された許容範囲内に入ったか否かで判断しているので、タイマ命令などで調整を行なう必要がなく、したがってこれらの煩わしい調整の不要となる。
さらに、インターロック信号を用いなくてすむため、リレー出力線、信号線などが不要となり、コストダウンでき、さらに、インタロック信号による誤動作の可能性もなくなる。
【０００８】
【発明の効果】
以上、述べてきたように、本発明によれば、外力従動機能の終了時に、ロボットに外力によって動作させられているか否かの判断を全軸のフィードバック速度が予め設定された許容範囲内に入ったか否かで判断し、外力によって動作させられていれば外力従動機能の終了を条件成立まで延期するので、外力が加わっている間に発生トルクの制限を解除することにより、外力に対して反抗するトルクが発生して、外力が圧倒的に大きい場合などにロボットが破損することがない。
【図面の簡単な説明】
【図１】外力従動機能の実施プログラミング例を示している。
【図２】本発明の実施例を示すフローチャートを示している。
【図３】本発明によるロボット制御装置の制御ブロックを示している。
【符号の説明】
３０  ＣＰＵ
３０１  速度制御部
３０ａ  ロボット制御機能
３０ｂ  外力従動機能
３０ｃ  フィードバック速度基準値以下判定回路
３２１  第１軸サーボモータ
３２ｎ  第ｎ軸サーボモータ
３３１  第１軸位置検出器
３３ｎ  第ｎ軸位置検出器
Ｓ１  全軸フィードバック速度算出処理
Ｓ２  フィードバック速度基準値以下判定処理
Ｓ３  外力従動機能継続処理
Ｓ４  外力従動機能終了処理
【図１】
0004051526.tif 000002
【図２】
0004051526.tif 000003
【図３】
0004051526.tif 000004