(57)【特許請求の範囲】
【請求項１】
モータにより駆動されるロボットアームを有するロボットの動作制御を行うロボット制御装置であって、
前記ロボットアームと該ロボットアームを駆動するモータとの間に配設され、保護対象として選定された保護対象部品にかかる負荷トルクを、前記モータの速度及びトルク指令に基づいて推定する推定手段と、
前記推定された負荷トルクの値を予め設定した閾値と比較して異常を検知する検知手段と、
異常が検知されたときに前記保護対象部品を保護する処理を行う処理手段と、
を備えたことを特徴とする、ロボット制御装置。
【請求項２】
前記推定手段は、前記保護対象部品のイナーシャ、前記モータのイナーシャ、及び前記保護対象部品の動摩擦係数を用いて、前記保護対象部品にかかる負荷トルクを推定する、請求項１に記載のロボット制御装置。
【請求項３】
前記推定手段は外乱推定オブザーバである、請求項１又は２に記載のロボット制御装置。
【請求項４】
外気温又は前記ロボットの所定部位の温度を取得又は推定し、前記外気温又は前記所定部位の温度に基づいて前記閾値を調整する手段をさらに有する、請求項１〜３のいずれか１項に記載のロボット制御装置。
【請求項５】
前記処理手段は、異常が検知されたときに前記ロボットを即時停止させる、請求項１〜４のいずれか１項に記載のロボット制御装置。
【請求項６】
前記処理手段は、異常が検知されたときに前記ロボットを減速させる、請求項１〜４のいずれか１項に記載のロボット制御装置。
【請求項７】
前記処理手段は、異常が検知されたときに、前記ロボットの各軸の負荷トルクが減少する方向に一定時間、前記ロボットに退避動作を行わせる、請求項１〜４のいずれか１項に記載のロボット制御装置。
【請求項８】
前記保護対象部品は、前記ロボットに使用される減速機、歯車及びケーブルの少なくとも１つを含む、請求項１〜７のいずれか１項に記載のロボット制御装置。
【請求項９】
モータにより駆動されるロボットアームを有するロボットの動作制御を行うロボット制御方法であって、
前記ロボットアームと該ロボットアームを駆動するモータとの間に配設され、保護対象として選定された保護対象部品にかかる負荷トルクを、前記モータの速度及びトルク指令に基づいて推定するステップと、
前記推定された負荷トルクの値を予め設定した閾値と比較して異常を検知するステップと、
異常が検知されたときに前記保護対象部品を保護する処理を行うステップと、
を備えたことを特徴とする、ロボット制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、広くは多関節ロボット（以下、単にロボットと称する）の制御装置に関し、特には、ロボットの各構成部品を保護する機能を備えたロボット制御装置及びロボット制御方法に関する。
【背景技術】
【０００２】
ロボットを過負荷から保護する機能として、衝突検出機能が知られている。例えば特許文献１には、ロボットの各軸を駆動するモータに作用する外乱を推定し、推定値が予め定めた閾値を越えた場合に衝突発生と判断する技術が記載されている。
【０００３】
また特許文献２には、産業用ロボットの異常判断方法が開示されている。この方法では、サーボモータを駆動するためのトルク指令値、実位置の微分値及び既知の外乱トルクに基づいて総オブザーバフィードバック量を算出し、さらに総オブザーバフィードバック量及び推定速度に基づいて算出される異常検知閾値を算出して、異常状態を判断する、とされている。
【０００４】
【特許文献１】特開平１１−１５５１１号公報
【特許文献２】特開２００５−１８６１８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来の衝突や外乱の検出機能は、モータ又はロボットアーム先端にかかるトルクを推定するものであった。しかし、このような機能を用いて衝突等を検出してモータの停止処理等を行っても、減速機、ケーブル等のロボットの個々の構成部品は十分に保護できない場合がある。すなわち、モータやアーム先端に作用するトルクが閾値以下であっても、減速機等の構成部品には局所的に大きな負荷がかかることがあり、このような場合、従来の方法では効果的な異常検知が行えず、当該構成部品の破損に至る虞もある。
【０００６】
また、衝突時以外（すなわちロボットが正常に動作している状態）においても、従来技術では各構成部品にかかるトルクが安全と考えられる範囲内に収まるという保証がなかった。
【０００７】
そこで本発明は、上述の問題を解決し、ロボットの各構成部品を確実に保護する機能を備えたロボット制御装置及びロボット制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、請求項１に記載の発明は、モータにより駆動されるロボットアームを有するロボットの動作制御を行うロボット制御装置であって、前記ロボットアームと該ロボットアームを駆動するモータとの間に配設され、保護対象として選定された保護対象部品にかかる負荷トルクを、前記モータの速度及びトルク指令に基づいて推定する推定手段と、前記推定された負荷トルクの値を予め設定した閾値と比較して異常を検知する検知手段と、異常が検知されたときに前記保護対象部品を保護する処理を行う処理手段と、を備えたことを特徴とする、ロボット制御装置を提供する。
【０００９】
請求項２に記載の発明は、請求項１に記載のロボット制御装置において、前記推定手段は、前記保護対象部品のイナーシャ、前記モータのイナーシャ、及び前記保護対象部品の動摩擦係数を用いて、前記保護対象部品にかかる負荷トルクを推定する、ロボット制御装置を提供する。
【００１０】
請求項３に記載の発明は、請求項１又は２に記載のロボット制御装置において、前記推定手段は外乱推定オブザーバである、ロボット制御装置を提供する。
【００１１】
請求項４に記載の発明は、請求項１〜３のいずれか１項に記載のロボット制御装置において、外気温又は前記ロボットの所定部位の温度を取得又は推定し、前記外気温又は前記所定部位の温度に基づいて前記閾値を調整する手段をさらに有する、ロボット制御装置を提供する。
【００１２】
請求項５に記載の発明は、請求項１〜４のいずれか１項に記載のロボット制御装置において、前記処理手段は、異常が検知されたときに前記ロボットを即時停止させる、ロボット制御装置を提供する。
【００１３】
請求項６に記載の発明は、請求項１〜４のいずれか１項に記載のロボット制御装置において、前記処理手段は、異常が検知されたときに前記ロボットを減速させる、ロボット制御装置を提供する。
【００１４】
請求項７に記載の発明は、請求項１〜４のいずれか１項に記載のロボット制御装置において、前記処理手段は、異常が検知されたときに、前記ロボットの各軸の負荷トルクが減少する方向に一定時間、前記ロボットに退避動作を行わせる、ロボット制御装置を提供する。
【００１５】
請求項８に記載の発明は、請求項１〜７のいずれか１項に記載のロボット制御装置において、前記保護対象部品は、前記ロボットに使用される減速機、歯車及びケーブルの少なくとも１つを含む、ロボット制御装置を提供する。
【００１６】
また請求項９に記載の発明は、モータにより駆動されるロボットアームを有するロボットの動作制御を行うロボット制御方法であって、前記ロボットアームと該ロボットアームを駆動するモータとの間に配設され、保護対象として選定された保護対象部品にかかる負荷トルクを、前記モータの速度及びトルク指令に基づいて推定するステップと、前記推定された負荷トルクの値を予め設定した閾値と比較して異常を検知するステップと、異常が検知されたときに前記保護対象部品を保護する処理を行うステップと、を備えたことを特徴とする、ロボット制御方法を提供する。
【発明の効果】
【００１７】
本発明に係るロボット制御装置又はロボット制御方法によれば、保護対象として着目した保護対象部品にかかる負荷トルクを、モータの速度及びトルク指令に基づいて推定することができる。従ってロボットの各部品にかかる力が予め決定した範囲内に収まることを保証でき、同時に部品の確実な保護が保証される。
【００１８】
また保護対象部品にかかる負荷トルクは、保護対象部品のイナーシャを含むイナーシャ及び保護対象部品の動摩擦係数を用いた比較的簡易な推定手段によって求めることができる。但し保護対象部品にかかる負荷トルクは、時間遅れのない値を得るために外乱推定オブザーバを用いて求めることもできる。
【００１９】
外気温又はロボットの所定部位の温度を用いて閾値を調整することにより、より正確な異常検知を行うことが可能となる。
【００２０】
異常が検知された場合には、ロボットを即時停止、減速、又は退避動作を行わせることにより、対象保護部品の確実な保護が図られる。
【００２１】
また本発明によれば、保護対象部品の好適な具体例が提供される。
【発明を実施するための最良の形態】
【００２２】
図１は、本発明の一実施形態のロボット制御装置の要部ブロック図である。ロボット制御装置１０は、メインＣＰＵ１と、ＲＡＭ、ＲＯＭ及び不揮発性メモリ（ＥＥＰＲＯＭ等）からなるメモリ２と、教示操作盤用インターフェイス３と、サーボ制御部５と、外部装置用のインターフェイス６とを有し、これらはバス７を介して互いに接続されている。またロボット制御装置１０は、教示操作盤用インターフェイス３に接続された教示操作盤４を有する。
【００２３】
ロボット制御装置１０及びロボット制御装置１０が制御するロボット（図示せず）の基本機能を支えるシステムプログラムは、メモリ２のＲＯＭに格納されている。また、アプリケーションに応じて教示されるロボットの動作プログラム及びそれに関連する設定データは、メモリ２の不揮発性メモリに格納される。そして、メモリ２のＲＡＭは、メインＣＰＵ１が行う各種演算処理におけるデータの一時記憶の記憶領域として使用される。
【００２４】
サーボ制御部５は、複数のサーボ制御器５ａ1〜５ａn（ｎ：通常、ロボットの総軸数にロボット手首に取り付けるツールの可動軸数を加算した数）と、図示しないプロセッサ、ＲＯＭ、ＲＡＭ等とを備え、ロボットの各軸を駆動するサーボモータＭ1〜Ｍnの位置・速度のループ制御、さらには電流ループ制御を行う。本実施形態ではサーボ制御部５は、ソフトウエアで位置、速度、電流のループ制御を行ういわゆるデジタルサーボ制御器を構成している。サーボ制御器５ａ1〜５ａnの出力は各サーボアンプ５ｂ1〜５ｂnを介して各軸サーボモータＭ1〜Ｍnを駆動制御する。なお、図示はしていないが、各サーボモータＭ1〜Ｍnには位置・速度検出器が取り付けられており、該位置・速度検出器で検出した各サーボモータの位置、速度は各サーボ制御器５ａ1〜５ａnにフィードバックされるようになっている。また、入出力インターフェイス６には、ロボットに設けられたセンサや、周辺機器のアクチュエータ等が接続されている。
【００２５】
本発明は、上述のようなロボット制御装置において、ロボットアーム（又はリンク）と該アームを駆動するモータとの間にある各構成部品又は部品を保護する機能を提供するものである。
【００２６】
図２は、本発明によって保護可能な構成部品の１つである減速器を模式的に表す図である。減速器１２は、サーボモータ１４とロボットアーム１６との間に配置され、サーボモータ１４の駆動力をロボットアーム１６に伝達するように構成されている。減速器１２はモータ１４と一体となって１つの剛体を形成すると考えることができ、ここでは、その最も外側（モータ１４と反対側）を保護対象部分とする。
【００２７】
図３は、保護すべき対象部品にかかる負荷トルクを推定し、対象部品を保護する処理のフローチャートを示す。また、保護対象部品を上述の減速機１２とした、処理系のブロック図の一例を図４に示す。以下に、この場合の処理手順を説明する。
【００２８】
まず、サーボモータ１４に付属したロータリーエンコーダ（図示せず）の出力θを読み取り、前速度ループの値との差分を計算してモータ速度Ｖ（θドット）を取得する（ステップＳ１）。次に、ロボットアーム１６の各リンクのサーボ制御器のプロセッサが通常の速度ループ処理を行い、モータ１４のトルク指令Ｔcを求める（ステップＳ２）。すなわち、メインＣＰＵ１から指令された移動指令と、モータ速度Ｖとに基づいて、上述した比例積分制御等の速度ループ制御処理を実行することにより、トルク指令Ｔcが求められる。
【００２９】
次のステップＳ３では、求められたＴc及びＶから、減速機１２にかかる負荷トルクＴrを求める。具体的には図４にブロック図として示す推定器２０を用いて、Ｔc及びＶから負荷トルクＴrの推定値を求める。推定器２０では、項２２においてモータ速度Ｖをラプラス変換した値と、トルク指令Ｔcとの差分を差分器２４によって算出して、減速機１２の負荷トルクＴrとする。ここでＪはモータ１４のイナーシャ（正確にはモータのロータイナーシャ）と減速器１２のイナーシャとを足し合わせたイナーシャであり、Ａは対象部品（ここでは減速機１２）の動摩擦係数であり、ｓはラプラス演算子である。以上より、次式（１）が成立する。
Ｔr ＝ Ｔc −（Ｊｓ＋Ａ）Ｖ                                （１）
【００３０】
上式（１）により、減速器１２にかかると推定される負荷トルクＴrが計算できる。なお負荷トルクを推定する他の手段としては、後述する外乱推定オブザーバや、他のシミュレーションモデル、有限要素法によるもの等が挙げられる。
【００３１】
次にステップＳ４において、速度ループ毎に求められたＴrを、予め各軸に決定しておいた許容値である閾値Ｌと比較する。ここで、１軸でもＴr ＞ Ｌとなった場合には異常が生じたと判断し、アラーム又はワーニングを発生させる（ステップＳ５）。なお、Ｌの決定方法としては、最初からロボット毎に又は各対象部品毎に調整した一定値を利用する方法の他に、外部入出力インターフェイスに接続したパーソナルコンピュータ（図示せず）等の入力手段より適時設定又は更新を行う方法も可能である。また再設定の際には、例えば外気温又はモータ温度等のロボットの所定部位の温度を測定又は推定し、その結果を用いて閾値を変化させることができる。一般に、温度が低いほどグリースの粘度上昇等により外乱が大きくなる傾向にあるので、温度が低いときは閾値Ｌを高くして誤検出を防ぐ処理がなされる。また、外気温等のＬ値に影響し得るパラメータを自動計測し、パーソナルコンピュータ等により自動的にＬ値を最適値に更新することもできる。
【００３２】
アラーム又はワーニングが発生したら、対象部品を保護するための動作をロボットに行わせる（ステップＳ６）。例えば、各軸の速度指令をゼロにすれば、ロボットを即時停止させることができる。また、速度指令に予め決定しておいたゼロ以上１未満の値をかけることでロボットを減速させ緩やかに停止させることもできる。或いは、好ましくは各軸が出力できる最大トルクで、各軸の負荷トルクが減少する方向に一定時間動作させる退避動作を先ず行い、その後に停止させることもできる。或いは、自動的には保護動作を行わず、警告等の表示のみ行うこともできる。この場合は、作業者が手動で適宜必要な保護動作を実行する。
【００３３】
図５は、外乱推定オブザーバにより減速器１２に作用するトルクＴrを推定する場合の推定器２６を示すブロック線図である。オブザーバに関する理論は一般的であり、公知のものであるから詳細な説明は省略する。図５のオブザーバは、モータ速度及び加速度外乱を推定するものの一例である。項２８、３０のＫ1、Ｋ2はそれぞれ外乱推定オブザーバのオブザーバゲインであり、項３２のＫtはトルク定数である。項３４は、項２８、３０及び３２の出力を全て加算した値を積分する積分項である。また項３６は項３４の出力にＡ／Ｊを乗じる項であり、項３８は項３０からの出力にＪを乗じて推定トルクＴrを求める項である。なお上述と同様に、Ｊはモータ１４のイナーシャと減速器１２のイナーシャとを足し合わせたイナーシャであり、Ａは減速機１２の動摩擦係数であり、ｓはラプラス演算子である。この場合のロボットモデルの状態変数は、次式（２）のように表される。
【００３４】
【数１】
0004335286.tif 000002
【００３５】
但し式（２）において、入力をトルク指令（ｕ＝Ｔc）、出力をモータ速度（ｙ＝Ｖ）、状態変数をモータ速度・加速度外乱（ｘ1＝Ｖ、ｘ2＝Ｔr／Ｊ）とし、状態変数ｘ1、ｘ2の微分値をそれぞれｘ1ドット、ｘ2ドットとした。また、加速度外乱は時間により変化しないものとした（ｘ2ドット＝０）。
【００３６】
ｘ1、ｘ2の推定値をそれぞれｚ1、ｚ2とし、さらにｚ1、ｚ2の微分値をそれぞれｚ1ドット、ｚ2ドットとすると、式（２）のモデルのオブザーバは次式（３）のように表される。
【００３７】
【数２】
0004335286.tif 000003
【００３８】
式（３）から、オブザーバにより推定された加速度外乱ｚ2が計算でき、減速器にかかる推定負荷トルクＴrは次式（４）により求められる。
Ｔr ＝ Ｊ・ｚ2                                              （４）
【００３９】
図６は、保護すべき対象部品が歯車である場合を模式的に示す図である。図６には、サーボモータ４０と係合する歯車４２ａと、ロボットアーム４４に係合する歯車４２ｃと、歯車４２ａと４２ｃとの間の歯車４２ｂとが示されている。３つの歯車は協働して、サーボモータ４０の駆動力をロボットアーム４４に伝達するように構成されている。この例では、モータ４０と係合する歯車４２ａの外側（歯車４２ｂと係合する部分）を保護対象部分とする。
【００４０】
図６の例では、歯車４２ａに作用する推定負荷トルクは、上述の減速器の場合とほぼ同様に求めることができる。すなわち、式（１）においてＪをモータ４０のイナーシャと歯車４２ａのイナーシャとを足し合わせたイナーシャとし、Ａを歯車４２ａの動摩擦係数とすれば、歯車４２ａ自体に係る外乱トルクと歯車４２ｂから歯車４２ａに伝わるトルクの合計として、歯車４０ａに作用する負荷トルクＴrを推定することができる。
【００４１】
図７は、保護すべき対象部品がケーブルである場合を模式的に示す図である。図７に示す構成は、前リンク５０により駆動される第１アーム５２と、後リンク５４により駆動される第２アーム５６と、第１アーム上及び第２アーム上を延びるケーブル５８とを有する。ケーブル５８は、各リンク内を固定されずに貫通し、第１固定具６０及び第２固定具６２によってそれぞれ第１アーム５２及び第２アーム５６に固定されているものとする。
【００４２】
この場合、第２固定具６２においてケーブル５８に作用する負荷トルクＴrは以下の式（５）により求めることができる。但し、簡単のため、後リンク５４以外のリンクは、前リンク５０も含め全て停止しているものとする。
Ｔr ＝ Ｔc − Ｋ・Ｖ／ｓ −（Ｊｓ＋Ａ）Ｖ                （５）
【００４３】
式（５）において、Ｔcは後リンク５４を駆動するサーボモータ（図示せず）の負荷トルクであり、Ｖは該サーボモータの速度である。またＪは該サーボモータ、後リンク５４、第２アーム５６及びケーブル５８のそれぞれのイナーシャを足し合わせたイナーシャとし、Ａは後リンク５４と第２アーム５６との間の動摩擦係数であり、ｓはラプラス演算子である。式（５）ではさらに、ケーブル５８の捻り方向のバネ定数であるＫを考慮した構成となっている。
【００４４】
このように、保護すべき対象部品が種々異なる場合であっても、前述のステップＳ３において、Ｊ及びＡを対象部品に応じて変更し、さらに必要に応じてバネ定数やダンパ定数等の要素を加味することにより、推定負荷トルクを計算できる。
【００４５】
上述の特許文献１及び２はいずれも、本発明の特徴である、アーム先端以外の力を推定してロボットの各構成部品を保護することは開示していない。本発明は、保護対象部品にかかるトルクをモータの速度及びトルクに基づいて推定するものであり、これにより当該対象部品の確実な保護を図ることができる。
【００４６】
なお上述の実施形態ではいずれも保護対象部品に作用するトルクを推定しているが、一般にトルクと力とは容易に換算可能であるので、上述の負荷トルクＴrを保護対象部品に作用する推定力に置換しても、本発明が適用可能であることは容易に理解されよう。
【図面の簡単な説明】
【００４７】
【図１】本発明の一実施形態に係るロボット制御装置の要部ブロック図である。
【図２】本発明のロボット制御装置により保護可能な減速器周りの概略構成を示す図である。
【図３】対象部品にかかる負荷トルクを推定し対象部品を保護する方法を示すフローチャートである。
【図４】保護対象部品が減速器である場合に、減速器にかかる負荷トルクを推定する手段を説明するブロック図である。
【図５】図４の推定器の代替例として外乱推定オブザーバを使用する場合を説明するブロック図である。
【図６】本発明のロボット制御装置により保護可能な歯車周りの概略構成を示す図である。
【図７】本発明のロボット制御装置により保護可能なケーブル周りの概略構成を示す図である。
【符号の説明】
【００４８】
１０    ロボット制御装置
１２    減速器
１４、４０    サーボモータ
１６、４４、５２、５６    ロボットアーム
２０、２６    推定器
４２ａ〜４２ｃ    歯車
５０、５４    リンク
５８    ケーブル
６０、６２    固定具
【図１】
0004335286.tif 000004
【図２】
0004335286.tif 000005
【図３】
0004335286.tif 000006
【図４】
0004335286.tif 000007
【図５】
0004335286.tif 000008
【図６】
0004335286.tif 000009
【図７】
0004335286.tif 000010