特許第6238421号(P6238421)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ コグニボティクス アクチエボラグの特許一覧

特許6238421関節の少なくとも1つの特性を求める方法およびシステム
<>
  • 特許6238421-関節の少なくとも1つの特性を求める方法およびシステム 図000002
  • 特許6238421-関節の少なくとも1つの特性を求める方法およびシステム 図000003
  • 特許6238421-関節の少なくとも1つの特性を求める方法およびシステム 図000004
  • 特許6238421-関節の少なくとも1つの特性を求める方法およびシステム 図000005
  • 特許6238421-関節の少なくとも1つの特性を求める方法およびシステム 図000006
  • 特許6238421-関節の少なくとも1つの特性を求める方法およびシステム 図000007
  • 特許6238421-関節の少なくとも1つの特性を求める方法およびシステム 図000008
  • 特許6238421-関節の少なくとも1つの特性を求める方法およびシステム 図000009
  • 特許6238421-関節の少なくとも1つの特性を求める方法およびシステム 図000010
  • 特許6238421-関節の少なくとも1つの特性を求める方法およびシステム 図000011
  • 特許6238421-関節の少なくとも1つの特性を求める方法およびシステム 図000012
  • 特許6238421-関節の少なくとも1つの特性を求める方法およびシステム 図000013
  • 特許6238421-関節の少なくとも1つの特性を求める方法およびシステム 図000014
  • 特許6238421-関節の少なくとも1つの特性を求める方法およびシステム 図000015
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6238421
(24)【登録日】2017年11月10日
(45)【発行日】2017年11月29日
(54)【発明の名称】関節の少なくとも1つの特性を求める方法およびシステム
(51)【国際特許分類】
   B25J 9/10 20060101AFI20171120BHJP
【FI】
   B25J9/10 A
【請求項の数】19
【全頁数】29
(21)【出願番号】特願2015-537664(P2015-537664)
(86)(22)【出願日】2013年10月21日
(65)【公表番号】特表2015-536249(P2015-536249A)
(43)【公表日】2015年12月21日
(86)【国際出願番号】SE2013051224
(87)【国際公開番号】WO2014065744
(87)【国際公開日】20140501
【審査請求日】2015年6月17日
(31)【優先権主張番号】1251196-0
(32)【優先日】2012年10月23日
(33)【優先権主張国】SE
(73)【特許権者】
【識別番号】515107502
【氏名又は名称】コグニボティクス アクチエボラグ
【氏名又は名称原語表記】Cognibotics AB
(74)【代理人】
【識別番号】110001302
【氏名又は名称】特許業務法人北青山インターナショナル
(72)【発明者】
【氏名】ニルソン,クラス
【審査官】 臼井 卓巳
(56)【参考文献】
【文献】 特開昭62−150405(JP,A)
【文献】 特開平06−222817(JP,A)
【文献】 実開平05−003697(JP,U)
【文献】 特開昭52−009785(JP,A)
【文献】 特開2006−101605(JP,A)
【文献】 特開平08−152910(JP,A)
【文献】 特開2005−001013(JP,A)
【文献】 特表2005−538462(JP,A)
【文献】 特開2009−198203(JP,A)
【文献】 米国特許第06060854(US,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 9/10
G05B 13/02−19/405
G05D 3/00
F16H 1/06− 1/32
(57)【特許請求の範囲】
【請求項1】
マニピュレータ(110)の関節(112、114、116〜119、180)の少なくとも1つの特性を求める方法であって、前記関節(112、114、116〜119、180)は、少なくとも1つのアクチュエータによって駆動されるように構成され、前記アクチュエータは、駆動系を介して前記関節(112、114、116〜119)を駆動するように構成され、コントローラ(140)は、前記関節(112、114、116〜119、180)の動作を制御するように構成され、前記方法は、
前記マニピュレータ(110)の端部を空間内の一地点にクランプすることによって、関節の動作が制限されるように、前記関節(112、114、116〜119)をクランプする(200)ことと、
−前記アクチュエータのトルクを表す少なくとも1つの量と、モータ角度センサで検知された前記アクチュエータの位置を表す少なくとも1つの量とを観測しながら、前記駆動系を駆動し(210)、前記アクチュエータは、前記コントローラ(140)の制御によって、第1および第2の位置間を往復運動して、両方向の駆動系トルク伝達が両方の位置で十分に進展するように前記駆動系を駆動し、それに対して、前記アクチュエータのトルクを表す前記観測された少なくとも1つの量と、前記アクチュエータの位置を表す前記少なくとも1つの量とがヒステリシスサイクルのデータを形成することと、
−前記得られたヒステリシスサイクルのデータに基づいて、前記アクチュエータの少なくとも1つの出力値セットを求め(220)、前記出力値セットは、少なくとも1つの関節位置に関係することと、
−前記出力値セットに基づいて、前記関節(112、114、116〜119)の前記少なくとも1つの特性を求める(230)ことと、
を含むことを特徴とする方法。
【請求項2】
請求項1に記載の方法において、前記関節の前記少なくとも1つの特性は空動きであり、前記方法は、
−前記十分に進展した駆動系のトルク伝達が、最大位置ヒステリシスを得るほど十分に大きくなるように、許容されたトルク範囲内で前記駆動系を駆動する(210)ことと、
−前記得られた位置ヒステリシスに基づいて、前記空動きを求める(220)ことと、
をさらに含むことを特徴とする方法。
【請求項3】
請求項2に記載の方法において、前記ヒステリシスサイクルは曲線によって近似され、前記方法は、
−前記近似された曲線のそれぞれの末尾に漸近的に接近する2つの曲線を合わせることと、
−少なくとも1つのトルク値に対して、前記空動きを前記曲線間の位置差として求めることと、
をさらに含むことを特徴とする方法。
【請求項4】
請求項1乃至3の何れか1項に記載の方法において、前記関節(112、114、116〜119、180)の前記少なくとも1つの特性は、前記関節(112、114、116〜119、180)のバックラッシュであり、前記関節(112、114、116〜119、180)の前記バックラッシュを求める(230)ことには、
−前記駆動系入力トルクが、基本的にゼロの駆動系入力トルクを特徴とするクランプ位置の両側で、基本的にゼロでない値に達するような、実質的に同じ駆動系入力トルクに対する位置の差を求めることにより、位置ヒステリシスを求めることが含まれることを特徴とする方法。
【請求項5】
請求項4に記載の方法において、前記バックラッシュを求める(230)ことには、
−前記位置ヒステリシスを求める前に、摩擦の効果に対してアクチュエータトルクを補償することにより、駆動系入力トルクを求めることをさらに含むことを特徴とする方法。
【請求項6】
請求項1乃至5の何れか1項に記載の方法において、前記関節(112、114、116〜119、180)の少なくとも1つの特性は、前記関節(112、114、116〜119、180)のコンプライアンスであり、前記方法は、
−前記得られたバックラッシュの効果を前記ヒステリシスサイクルのデータから除去することで、前記コンプライアンスを求める(230)ことをさらに含むことを特徴とする方法。
【請求項7】
請求項1乃至6の何れか1項に記載の方法が、前記関節(112、114、116〜119)を自動的にクランプすることを含むことを特徴とする方法。
【請求項8】
請求項1乃至7の何れか1項に記載の方法において、前記ヒステリシスサイクルは、様々な熱的条件下で観測され、前記熱的条件は、環境の、および/または前記関節の機械要素のどれかの、測定した、および/またはシミュレーションした温度で示され、前記ヒステリシスサイクルは、前記求めた特性が温度と共に変わるような温度依存性であり、
−前記少なくとも1つの関節特性の温度依存性を求めることを特徴とする方法。
【請求項9】
請求項1乃至8の何れか1項に記載の方法において、少なくとも2つのクランプされた関節(112、114、116〜119、180)の関節特性値を求めるために、前記少なくとも1つのアクチュエータを、前記駆動系を介して繰り返して駆動することを含み、前記個々の関節(112、114、116〜119、180)のクランプ構成は、前記駆動(210)および観測段階全体にわたって変わらないままであることを特徴とする方法。
【請求項10】
少なくとも、第1の関節(112、114、116〜119、180)を第1のクランプ構成でクランプするステップと、
少なくとも、前記第1の関節(112、114、116〜119、180)を第2のクランプ構成でクランプするステップと、
各クランプ構成に対して、請求項1乃至9の何れか1項の方法を実施するステップと、
を含むことを特徴とする方法。
【請求項11】
マニピュレータ(110)の関節(112、114、116〜119、180)の少なくとも1つの特性を求める方法であって、前記マニピュレータ(110)の作業空間内で、クランプ物品(160)の位置に前記マニピュレータ(110)の可動部分を位置決めし、前記クランプ物品(160)上の1つの地点を前記可動部分と接触させることを含み、請求項1乃至10の何れか1項の方法を実施することをさらに含むことを特徴とする方法。
【請求項12】
請求項1乃至11の何れか1項に記載の方法において、
−前記マニピュレータ(110)の標準運動パラメータを得ることと、
−前記少なくとも1つの関節(112、114、116〜119、180)の前記少なくとも1つの求めた特性に基づいて、前記標準運動パラメータを更新することと、
をさらに含むことを特徴とする方法。
【請求項13】
請求項1乃至12の何れか1項に記載の方法において、マニピュレータの前記関節の駆動系を駆動するように構成されたコントローラを、前記関節の前記求めた少なくとも1つの特性に基づいて更新することをさらに含むことを特徴とする方法。
【請求項14】
マニピュレータ(110)の関節(112、114、116〜119、180)の少なくとも1つの特性を求めるシステム(100)であって、
駆動系を介して前記関節(112、114、116〜119、180)を駆動するように構成された少なくとも1つのアクチュエータを含むシステムにおいて、
前記マニピュレータ(110)の端部をクランプするための空間内の一地点を提供することによって、前記関節(112、114、116〜119、180)の関節動作を制限するように構成されたクランプ手段(160)と、
−前記関節(112、114、116〜119、180)の動作を制御し、前記駆動系を駆動して、前記アクチュエータを第1および第2の位置間で往復運動させて、両方向の駆動系トルク伝達が両方の位置で十分に進展するように構成されたコントローラ(140)と、
−前記駆動系を駆動しながら、前記アクチュエータのトルクを表す少なくとも1つの量と、モータ角度センサで検知された前記アクチュエータの位置を表す少なくとも1つの量とを観測する手段であって、それに対して、前記アクチュエータのトルクを表す前記観測された少なくとも1つの量と、前記アクチュエータの位置を表す前記少なくとも1つの量とはヒステリシスサイクルのデータを形成する、手段と、
−前記得られたヒステリシスサイクルのデータに基づいて、前記アクチュエータの少なくとも1つの出力値を求める手段であって、前記出力値は、少なくとも1つの関節位置に対応する、手段と、
−前記少なくとも1つの出力値に基づいて、前記関節(112、114、116〜119、180)の前記少なくとも1つの特性を求める手段と、
を含むことを特徴とするシステム(100)。
【請求項15】
請求項14に記載のシステム(100)において、マニピュレータ(110)をさらに含み、前記関節(112、114、116〜119、180)は前記マニピュレータ(110)の一部であり、コントローラ(140)は、前記マニピュレータ(110)を制御するように構成され、クランプ手段(160)は、前記マニピュレータ(110)の端部部分の合体およびクランプを可能にするように構成されて、前記マニピュレータ(110)は、前記クランプ手段(160)に合体およびクランプされたときに、クランプされた姿勢を取ることを特徴とするシステム(100)。
【請求項16】
請求項14または15に記載のシステム(100)において、請求項1乃至13の何れか1項の方法に従って、前記マニピュレータ(110)の前記関節の少なくとも1つの特性を求めるために、前記マニピュレータ(110)をクランプする、空間内の少なくとも1つの地点を提供するように構成されたクランプ物品(160)をさらに含むことを特徴とするシステム(100)。
【請求項17】
請求項14乃至16の何れか1項に記載のシステム(100)において、当該システム(100)が、前記マニピュレータ(110)の端部を前記クランプ手段(160)に自動的にクランプするように構成されていることを特徴とするシステム。
【請求項18】
請求項14乃至17の何れか1項に記載のシステム(100)にあるコンピュータプログラム(P)であって、請求項1乃至13のいずれかに記載の方法を実施するためのコンピュータ命令を含むことを特徴とするコンピュータプログラム(P)。
【請求項19】
コンピュータ可読媒体に保存されたコンピュータ命令を含むコンピュータプログラム製品であって、前記コンピュータ命令は、請求項1乃至13の何れか1項に記載の方法を実行するように構成されることを特徴とするコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、マニピュレータの関節などのサーボ制御式機械動作の少なくとも1つの特性を求める方法およびシステムに関する。
【0002】
ロボットは、多くの産業分野で幅広く応用されている。特に、産業分野の中には、人間の健康にとって危険な作業を行うもの、または人間が耐えることができない条件下で行われる労働を含むものがある。他の産業分野は、ロボットによって、遙かに効率的に、かつ正確に実施できる反復性の作業を含む。
【0003】
産業ロボットは通常、加工物および材料を取り扱う、または加工するために考案されたマニピュレータを含む。マニピュレータは通常、それぞれがリンクと呼ばれる一連のセグメントからなるアーム状の装置を有する。これらの各セグメントの動作は、多くの場合、並進動作と軸のまわりの回転との組み合わせである。他の場合では、動作は、排他的に並進動作または回転動作からなる。これらの動作バリエーションは共に、各リンクに、以下に関節と呼ばれるもののまわりの、または沿った機械自由度を付与する。球面関節などの関節の変形型は、これらの単純な並進または回転する関節の組み合わせと考えることができ、これらのタイプの関節の形式的等価は、ロボット工学文献に存在する一般化座標の概念と合致する。相応して、力およびトルクは、それぞれ位置および角度の場合と同様に等価と考えられる。
【0004】
関節は通常、モータの測定された動作からのフィードバックによって制御されるサーボ制御式モータによって駆動される。モータは、モータ回転を関節回転まで減速するためのギヤおよび他の伝動要素を含む駆動系を介して関節を駆動する。この用途において、駆動系という用語は、モータを除くと解釈することができる。伝動要素の目的は、減速してトルクを増大させることである。
【0005】
駆動系は、いわゆる直動式のロボットでは不必要であるが、固有の問題のために、この種のロボットは、特に、エンドエフェクタ(工具)と加工物との間の力の相互作用中の制御剛性に関して悩まされており、ほとんどすべての最新ロボットは、各関節に対して専用の駆動系を用いて構築されている。
【0006】
アクチュエータは、(出力シャフトを備えた)モータ、またはエネルギを駆動系に作用する機械効果に変換できる別のタイプの装置と解釈することができる。駆動系は、この用途においてアクチュエータの一部とみなされないが、モータ角を測定するセンサが存在する。このセンサの出力値は、アクチュエータ位置と呼ばれる。関節角は通常、アクチュエータを介して測定されるだけである。この理由から、伝動要素は、マニピュレータの動作が、行われる駆動と正確に合致するように、高い精度および品質で製造される必要がある。しかし、最終顧客は通常、高品質材料の使用によって課される価格の上昇を認めようとはせず、このため、製造業者は、低価格セグメントの構成要素でマニピュレータを製造せざるを得なくなる。
【0007】
最新の産業マニピュレータは、6自由度(DOF)を有する、すなわち、直列に連結された6対の回転関節およびリンクを有する。最終リンクは、エンドエフェクタ(工具)を取り付けるための工具フランジまたは端部フランジで終端する。エンドエフェクタのフランジへの直接取り付けの代替として、マニピュレータの端部フランジに取り付けられるマニピュレータ部分と、それぞれの工具に取付面を提供する工具部分とで構成される工具交換器が使用される。2つの工具交換器部分は取り外し可能であり、例えば、空気で駆動されるロック機構を用いて所定の位置にロックすることができる。これは、工具の簡単な交換を可能にする。この場合に、工具の自動交換、すなわち、手作業を必要としない工具の交換が、選択された工具に合体したロボットによって行われ、次いで、選択された工具は、工具交換器のロック機構を用いてマニピュレータに固定して取り付けられる。
【0008】
マニピュレータの動作は、オペレータにより手動またはロボット作業を定めるユーザプログラムに従って命令を実行することにより、自動的に行うことができる。後者の場合、マニピュレータは、マニピュレータを制御して、プログラムされた姿勢を取るようにマニピュレータを誘導するコントローラにロードされた、または入力されたユーザプログラムによって制御される。そのような姿勢は、望み通りにエンドエフェクタを配置するための位置および向きで構成される。したがって、コントローラは、マニピュレータの関節を含めたマニピュレータの動作を制御するロボットの一部である。
【0009】
エンドエフェクタの姿勢の効率的な特定化を手動か、またはユーザプログラムの何れかで、場合によってはCADデータで支援するために、コントローラは、マニピュレータの運動力学モデルを内蔵する。そのようなモデルには、関節と、リンクと、関節およびリンクの幾何学的関係からなるモデルが含まれる。
【0010】
例えば、製造プラントにおける産業ロボットなどのロボット用途では、得られた物理的姿勢が、特定の許容範囲内で、プログラムされた姿勢と一致するならば、それはきわめて有効である。そうでない場合、プログラムされた姿勢と物理的姿勢との間にずれがあることを意味する。このずれは、経路に沿った単一の位置または複数の位置か、あるいはロボットの任意の使用で生じ得る。ユーザプログラムの調整を通じたユーザによる、または(若干偏差した)プログラムされた姿勢の教示によるずれの管理は、ロボット作業の再利用を制限し、ロボットのプログラミングおよび配備に対するコストを上げる。
【0011】
ロボット工学の初期では、主な偏差は不完全な制御によるものであったが、1980年代の半ばから以降、ロボットは、主に、マニピュレータ特性と、マニピュレータ特性に反映されるような駆動系誤差の制御補償の欠如とが相まって、プログラムされた動作から逸脱する。より具体的には、コントローラは、多くの場合、適切な構造および機能性を有するが、そのような補償を支援する、個々のマニピュレータに対する実際のロボットの特有データが欠如している。したがって、これらの欠点に対処して、プログラムされた動作と物理的動作との間のずれを最小限にする必要がある。
【0012】
それにもかかわらず、プログラムされた動作からのずれのさらなる原因が当技術分野において公知である。特に、そのような原因の1つは、例えば、運動誤差によるリンクおよび関節の幾何学配置の不正確さであり得る。運動誤差は、通常ロボットメーカから入手可能な運動校正によって管理することができる。ずれの別の原因は、関節およびアーム機構の不正確さ、および/または関節効果、または多体効果によるトルク飽和などの、高速動作時のアーム動態の制御に関係する。通常、そのようなずれは、ロボットメーカから提供されるモデル式制御によって管理される。プログラムされた姿勢からのずれのさらに別の原因は、マニピュレータのエンドエフェクタと加工物との間の力の相互作用によるが、マニピュレータに作用する重力および他の力にもよる不正確さから生じる。そのようなずれは、ベアリングおよび駆動系の伝動要素などの他の関節部品のコンプライアンスおよび許容誤差による、関節動作のまわりの、または関節動作に沿った関節動態にも関係する。
【0013】
前に言及したずれの原因のタイプの分析および特定に対処する、いくつかのタイプの問題解決策が存在する。これらの中で、光学追跡システムを用いた測定が最も一般的である。問題解決策の1つのタイプは、関節またはエンドエフェクタのトルクまたは位置を検出する外部センサを備えた外部校正システムを使用する。多数のロボットを備えた大規模生産設備に適用可能であるが、そのような外部校正システムのコストは、多くの場合、単一ロボットのコストを超える。1つまたは複数のロボットの動作を利用する、より小規模の生産設備では、そのような外部校正システムは、法外に高いコストのために適用できない。外部校正システムの一例が、国際公開第2012/076038号パンフレットに記載されている。
【0014】
上記の種類の校正システムの若干の修正版が、論文“Kinematic Calibration by Direct estimation of the Jacobian Matrix”by Bennet,Hollerbach and Henri(presented at ICRA,1992,in Nice,France)に提示されている。その論文では、ロボットに対するヤコビアン行列中のパラメータ(終点速度と関節速度との間の依存性を表す、または力/トルクに対して同様のものを表す)が、最初にロボットを所定の姿勢にクランプし、次いで、クランプ地点に接近して工具フランジに取り付けられた外部力/トルクセンサからの情報に基づいて、ロボットの関節を駆動することで評価される。あるいは、両端に連結された剛性ロッド、または明確に定義された方法で、周囲物に対するマニピュレータの動作を制限する何らかの他の機構を使用して、1つまたは複数の自由度を拘束するが、特定の関節動作は、固定された構成においても可能であるようにする。そのような一連の駆動から得られたデータが、行列のセットをもたらし、この行列を使用して、運動パラメータを計算する。しかし、クランプを含む力/トルクに基づく方法を用いて、運動校正が行われたとしても、アクチュエータ−関節間の動的特性は無視されたままである。結果として精度が低下するので、関節のクランプを含むこの方法は、実際には使用されない。さらに、各関節の駆動系の特性のために、動的な力および加工物との力の相互作用によって生じたずれは、現在の産業用途では補償されないままである。
【0015】
上記を背景として、本発明の目的は、当技術分野に存在する現在の問題の少なくともいくつかを多少とも解決することである。
【0016】
より具体的には、ロボットの姿勢および動作を校正するために、ロボットの関節パラメータを正確に求める、簡単で安価な方法が必要である。
【0017】
本発明の一態様によれば、マニピュレータの関節などの関節の少なくとも1つの特性を求める方法が提案され、前記関節は、少なくとも1つのアクチュエータによって駆動されるように構成され、アクチュエータは、駆動系を介して前記関節を駆動するように構成され、方法は、
−関節の動作が制限されるように、前記関節をクランプすることと、
−前記アクチュエータのトルクに関係する少なくとも1つの量と、アクチュエータ位置に関係する少なくとも1つの量とを観測しながら、前記駆動系を駆動することと、
−観測した量に基づいて、前記アクチュエータの少なくとも1つの出力値セットを求め、前記出力値セットは、少なくとも1つの関節位置に関係することと、
−前記出力値セットに基づいて、関節の少なくとも1つの特性を求めることと、
を含む。
【0018】
この場合に、関節特性という用語は、これまで、コストがかかりすぎるか、またはロボット用途で実際に使用するために入手するのがあまりにも困難であった情報に相当する、アクチュエータ−関節間の動態の特性を包含すると解釈することができる。
【0019】
上記の方法の1つの利点は、関節特性が、ロボットマニピュレータ自体から直接求められることであり、これは、ロボットの校正を、これまで公知であった校正技術を使用するよりも遙かに安価にする。これらのパラメータは、ロボット自体の位置およびトルク信号から直接読み取るか(両方が入手可能な場合)、または既存のモータ信号またはセンサから得られた、測定したアクチュエータ位置からのデータを含めた他の信号および物理特性から推定するかの何れかとすることができる。例えば、モータ電流は、トルク信号を供給するセンサ以外のセンサによって測定することができ、それに対して、アクチュエータ位置は、既存のモータ角センサによって検知することができる。
【0020】
一部の物理特性を使用して、ずれが物理的に生じないようにずれを補償することができる。物理特性を得る方法の実行に関連する制御を調整するために、物理特性を使用することもできる。動作を調整するための物理特性の一例には、関節駆動に使用されるアクチュエータトルクに関係するモータ電流の周波数応答があり得る。
【0021】
上記の方法は、標準運動パラメータを得るステップと、前に説明した方法ステップに従って求めた関節の少なくとも1つの決定特性に基づいて、標準運動パラメータを更新するステップとを含むこともできる。これは、マニピュレータ関節の不正確さによるロボットマニピュレータの運動モデルの誤差が、既存の校正技術と比較して小さくなり得るという利点を有する。このようにして、関節特性を、更新された運動パラメータと併せて使用するマニピュレータの校正は、既存の運動校正のみからのパラメータを使用するよりも、高い精度の位置および再現性をもたらす。
【0022】
本発明の別の態様は、マニピュレータの関節などの関節の少なくとも1つの特性を求めるシステムに関し、そのシステムは、
駆動系を介して前記関節を駆動するように構成された少なくとも1つのアクチュエータと、
関節の動作を制限するように構成されたクランプ手段と、
前記アクチュエータのトルクに関係する少なくとも1つの量と、アクチュエータ位置に関係する少なくとも1つの量とを観測する手段と、
前記アクチュエータの少なくとも1つの出力値を求める手段であって、前記出力値は、少なくとも1つの関節位置に対応する、手段と、
前記少なくとも1つの出力値に基づいて、関節の少なくとも1つの特性を求める手段と、
を含む。
【0023】
前に述べた利点に加えて、そのようなシステムの1つのさらなる利点は、このシステムは、得られた駆動系モデルを既存の容易に入手可能なセンサおよび信号と共に使用して、ロボット自体を用いて関節パラメータを求めることを可能にすることである。この場合に、これらのパラメータは、ユーザプログラムを更新するために直接的に、または測定が行われた特定のロボットモデル(または、例えば、一定の使用もしくは摩耗時間後の個々のロボット)に対してマニピュレータ関節のサーボ制御を更新するために間接的に使用することができる。これはすべて、単純で比較的安価な方法で行われ、その理由は、関節特性測定に必要とされる外部物品がクランプ物品だけであるからであり、クランプ物品は、ロボットの作業空間の1つまたは複数の地点でマニピュレータの可動部分をクランプするために使用される。
【0024】
本発明の好ましい実施形態は、従属請求項に記載される。
【0025】
以下に、添付図を参照して本発明が詳細に説明される。
【図面の簡単な説明】
【0026】
図1a図1aは、本発明の一実施形態による、マニピュレータの関節特性を求めるためのシステムを示している。
図1b図1bは、単一の関節の関節特性を求めるための構成を示しており、この単一の関節は、図1aに示された1つの軸2などのマニピュレータ関節と同様であるが、明瞭にするために、露出した駆動系および単純な手動式クランプ物品と共に示されている。
図1c図1cは、図1bの一部である駆動系に属する複数の歯車を示す、図1bの細部の拡大図であり、前記歯車は、片側での係合と他方の側でのバックラッシュとを示されている。
図2図2は、本発明の一実施形態による、マニピュレータの関節特性を求める方法の流れ図を示している。
図3図3は、本発明の1つの他の実施形態による、マニピュレータの関節特性を求める方法の流れ図を示している。
図4図4は、本発明のさらに別の実施形態による、マニピュレータの関節特性を求める方法の流れ図を示している。
図5図5は、本発明の別の実施形態による、マニピュレータの関節特性を求める方法の流れ図を示している。
図6図6は、本発明のさらに別の実施形態による、マニピュレータの関節特性を求める方法の流れ図を示している。
図7図7は、本発明のさらに別の実施形態による、マニピュレータの関節特性を求める方法の流れ図を示している。
図8a図8aは、本発明の一実施形態の作用を示す図を示している。
図8b図8bは、バックラッシュの特性を説明する目的で、理想的なバックラッシュを示している。
図8c図8cは、空動きの特性を説明する目的で、理想的な空動きを示している。
図8d図8dは、バックラッシュおよび理想的な摩擦を有する撓み性関節から得られる理想的なヒステリシスサイクルを示している。
図8e図8eは、様々な位置に対して得られた、したがって、様々な最大トルクを示す、2つの重なった実際の、つまり、理想的でないヒステリシスサイクルを示している。
【発明を実施するための形態】
【0027】
以下において、ロボットという用語は、加工物品に作用するように構成されたマニピュレータと、マニピュレータの動作を制御するコントローラと、マニピュレータの1つ以上の関節との組み合わせとして定義される。本発明の以下の例示的な実施形態は、単に例示目的であり、本発明自体を限定するものではないとみなされるべきである。例えば、一時的に、または永続的にサーボ制御される、または任意の他の方法で、駆動系パラメータの情報から恩恵を受けることができる任意の(回転または直進)関節動作は、技術的に等価な系を形成する。
【0028】
図1aは、クランプ物品160を使用して、マニピュレータ110の関節特性を求めるためのシステム100を示している。コントローラ140は、マニピュレータ110、および必要に応じてクランプ物品の動作を制御するために設けられている。好みに応じて、コントローラ140は、手動で、または自動で動作する制御ユニットまたはデジタルコンピュータの形態で外付けするか、あるいは内部、すなわち、マニピュレータ110自体に内蔵することができる。同様に、マニピュレータの選択された可動部分をクランプするためのクランプ物品または同様な装置は、マニピュレータの可動部分がクランプされるように、手動で、または(マニピュレータ用のコントローラまたは別の制御によって)自動で配置される。
【0029】
図に示すように、マニピュレータ110は、当業者に公知の態様で、マニピュレータの様々なリンクを連結する複数の関節112、114、116、117、118、119を含む。マニピュレータ110の各関節は、モータによって駆動される駆動系(図示せず)によって駆動されて、モータの回転は、関節112、114、116〜119の低速回転に変換される。ここで、システム100は、いくつかの関節、すなわち、1つまたは複数の関節を含むことができ、マニピュレータ関節の数量は、本発明を実施するのに重要ではないことに言及しておかなければならない。
【0030】
前に説明したように、駆動系は、ギヤホイールまたは他の伝動要素を含むことができる。1つには、ロボットは、(関節空間にわたる)内部座標系に関するアクチュエータ位置を知る必要があり、第2に、(通常、直交座標空間にわたる)外部座標系に関するアクチュエータ位置を記述する必要があることから、ほとんどのマニピュレータは、モータシャフトに取り付けられたエンコーダまたはレゾルバなどの内蔵センサ、あるいは関節のアクチュエータ位置を検知する同様な内蔵センサを含む。
【0031】
図1aの本発明の実施形態では、前述の内蔵センサを使用して、マニピュレータ110の各関節112、114、116〜119の関節特性を求める。関節および直交座標空間類比を使用して、力またはトルクで進む関節モータ角などのアクチュエータ空間を記述するパラメータが、運動校正から分かる関節位置などの関節空間を記述するパラメータに変換される。
【0032】
図1aから明らかなように、関節112、114、116〜119は、マニピュレータ110が、全体で6自由度(DOF)を有するように構成され、DOFは、回転軸1〜6のまわりの回転の方向を示す太い矢印で示されている。さらに、(明瞭にするために取り外して示された)工具交換器121のマニピュレータ側を取り付けることができる工具取り付けフランジ120が図1aに示されており、工具交換器のマニピュレータ側は、様々な工具(図示せず)に取り付けられる工具交換器の工具側(図示せず)と嵌合し、これは、人手による助けのない工具の交換を可能にする。マニピュレータ構造物は、今日、産業ロボットに頻繁に見られるが、平行運動機械(PKM)のものなどの他の構造物も存在する。運動構造に関係なく、駆動部および駆動系は同様の態様で機能し(ただし、通常、PKMの場合の方が幾分単純である)、駆動系モデルのパラメータを得るための方法/システムは事実上同一である。
【0033】
図1aに示すシステムは、ヘッド163と、ベースプレート169に取り付けられた3対の脚168とを含むクランプ物品160をさらに含む。図1aの実施形態にあるクランプ物品160の形状および構造は、本発明によるシステムで使用されるクランブ物品の形状および構造を限定するものと決して解釈すべきでないことを強調しておかなければならない。実際上、クランプ物品160は、マニピュレータ110が合体される空間内の地点を提供できる限り、任意の構造および形状を有することができる。ここで、工具交換器の工具側に対応した合体用の突起162が、クランプ物品のヘッド163の上に配置され、突起162は、マニピュレータ110によって到達可能であり、工具交換器121の対応するマニピュレータ側と嵌合する。さらに、ヘッド163と3対の脚168の一端とは関節164を介して連結されて、ヘッド163は、関節164の1つまたは複数のまわりに回転することができる。さらに、脚168の他端も、それぞれがそれ自体の回転軸(図示せず)を含む関節165〜167を介してベースプレート169に取り付けることができる。一定長さの各脚168と共に、クランプ物品のヘッド163もロックされる。1つまたは複数の脚のロック用ブッシュ161を解放すると、クランプ物品ヘッド163も解放される。さらに、ブッシュ161のロックは、コントローラ140から制御することができて、クランプ物品160の(解放モードにおいて伸縮自在の)脚168は、様々な長さでロックすることができる。このようにして、ヘッド163、ひいては突起164は、実質的に空間内の任意の地点に移動することができる。しかし、本発明によるシステム100のクランプ物品160は、非常に単純な構造を有し、マニピュレータ110をクランプできる空間内の地点を提供できる場合に、すでにクランプ物品としてのその機能を果たしていることに留意されたい。図1aに示す自由に移動可能なクランプ物品の利点は、互いに接近した複数のクランプされた姿勢を容易に提供することができ、これは、内部の歯車またはベアリングの角度、あるいは関連する伝動要素の同様の細部によって変わる恐れのある駆動系の特性の特定を容易にする。
【0034】
ここで、工具交換器の工具側(図示せず)に対応するクランプ物品のヘッド163を有する、図1aの本発明の実施形態は、エンドエフェクタの交換が、工具の観点から、マニピュレータがクランプ物品と合体するのと等価とみなすことができるという原則を利用する。交換は、手動または自動の何れかで行うことができ、後者の場合は、ロボットが、工具スタンドの工具に連結するための工具交換器を使用して、その端部エフェクタを交換するようにプログラムされていることを意味する。工具交換器を装備していないマニピュレータ110は、標準操作中に、特に、校正段階の間、工具交換器を手作業で装備することができる。あるいは、クランプ物品は、マニピュレータリンクまたはエンドエフェクタのどこかの側に取り付けることができる。したがって、任意のロボットマニピュレータを校正することができる。
【0035】
この実施形態では、クランプ工具は、クランプ物品160、または、より具体的には、クランプ物品のヘッド163に配置された突起162である。突起162は、工具交換器121が合体する空間内の地点を提供するように構成されている。クランプ物品のヘッド163は、広範な範囲内に配置されるように構成されているので、工具交換器121が合体する、空間内の可能な地点の幅広い選択を可能にする。クランプ地点は、一実施形態によれば、各6つの軸のまわりのマニピュレータセグメントの回転動作が、一義的に特定できるように、例えば、特異点が回避されるように選択される。これは、各関節112、114、116〜119の関節パラメータを求める1つの方法である。しかし、別の実施形態によれば、突起162用の1つの任意の位置が選択されて、特異点であり得る空間内のクランプ地点が、マニピュレータ110の工具交換器121用に得られる。このような場合であっても、コントローラ140は、マニピュレータを空間内の第1のクランプ地点から第2および、場合によっては第3のクランプ地点に移動させるように構成され、空間内の各クランプ地点に対する関節動力学方程式の解を計算することによって、マニピュレータ110の各関節112、114、116〜119の関節パラメータを一義的に求めることができるという点で、各関節の関節パラメータを求めることができる。コントローラ140は、同じ目的のために、マニピュレータ110を空間内の第2または第3または、場合によってはさらに多くのクランプ地点に対応する1つまたは複数のさらなる位置に移動させながら、マニピュレータ110をクランプ物品160にクランプされた状態に保つこともできる。
【0036】
この場合に、クランプ物品160の突起162を使用して、空間内の地点に合わせて工具交換器121を合体させるだけでなく、工具交換器121またはマニピュレータ110の他の任意の部分が、空間内の明確に定義された地点に到達してクランプされ得るクランプ物品160の任意の部分も、クランプ機能を十分に果たすと考えることができることに言及しておかなければならない。ここで、工具交換器121をクランプできる、空間内の1つまたは複数の地点は一義的に画定されるが、マニピュレータは、相互に関係のある複数の関節位置に達するようにコントローラ140によって制御することができ、この相互に関係のある複数の関節位置のすべては、工具交換器121か、またはマニピュレータのどこかの他の部分の何れかが、突起162、またはクランプ物品160のどこかの他の部分によって提供された空間内の同じ地点に合わせてクランプされるのを可能にするので、マニピュレータが空間内のこの地点で取る姿勢は、一義的ではないことがある。
【0037】
工具交換器121は、空間内の1つまたは複数の地点でクランプされ、コントローラ140は、マニピュレータ110の関節の内部センサからの出力値を読み取るように構成されている。これらの値は、バックラッシュ、コンプライアンス、および他の可能なパラメータなどの関節パラメータに変換することができる駆動系特性を反映する。
【0038】
しかし、工具交換器121が、空間内の1つまたは複数の地点にクランプされる前に、コントローラ140は、各関節112、114、116〜119の動摩擦、場合によっては粘性摩擦を求めるように構成することができる。同様に、工具交換器121がクランプされる前に、マニピュレータ110は強い衝撃を受け、コントローラ140は、マニピュレータ110の1つまたは複数の関節に対して観測したトルクおよび位置から、マニピュレータ110の1つまたは複数の共振周波数を求め、1つまたは複数の共振周波数から、クランプし/クランプされる動作の制御と、関節アクチュエータトルクおよび関節位置の観測とに適切なバンド幅を求めるように構成することができる。
【0039】
これは、図5〜7の実施形態に関連して、さらに詳細に説明される。
【0040】
ここで、一実施形態によれば、コントローラ140は、各関節の内部センサ出力から直接的に関節モータトルクおよび関節位置を読み取るように構成される。別の実施形態によれば、関節モータトルクが、直接的に入手できない場合、コントローラ140は、他のサーボ制御状態に基づくモータトルク制御またはトルク観測器の動的特性などの、モータトルクを間接的に計算できる他のアクチュエータ量を観測するように構成される。モータトルクはまた、モータ電流を測定し、使用されるモータのタイプに対する実際のトルクを計算することで求めることができる。一方、ほとんどの場合、産業ロボットは、対応する位置センサを装備しているので、コントローラ140は、現在の関節位置を容易に入手可能であると考えることができる。
【0041】
マニピュレータをクランプするとは、クランプ物品160によって提供された空間内の地点に合わせて、マニピュレータ110の可動部分をクランプすることを意味すると規定することもできる。マニピュレータの他端(ベース部分)の地面板または床への取り付けは、クランプ操作であるとみなされず、本明細書ではそれ自体論じられない。マニピュレータ110のベース部とクランプ物品160のベースプレート169とは、クランプ動作中に互いに堅固に連結されるが、当然、ベース部は、例えば、ベースプレート169が堅固に取り付けられた周囲物に可動ロボットを合体させる(図示せず)ことによって、互いにクランプすることもできる。
【0042】
リンクを空間内の固定地点に合わせてクランプすることで、マニピュレータ110の単一の関節に対する技術的に等価なクランプ状況を得ることができる。例えば、マニピュレータ110は、すぐ前の軸112(軸1)に対して垂直に動く第2のリンク(軸2の動作)の前部に取り付けられた工具交換器の一部を有することができ、したがって、軸112は、関節114のクランプに干渉しない。さらに、関節116〜119はクランプされないままであり、関節114のクランプの一部ではない。クランプ物品160または他の任意の専用クランプ物品上の工具交換器との合体の代替案として、市販のクランプ装置を使用することができる。引き続き関節114のクランプを検討すると、そのような標準クランプ物品は、参照数字188で図1bに示すタイプとすることができる。図1bは、そのような関節を、駆動系のカバーの一部が削除されて、伝動要素を露出させた状態で示しており、この場合に、伝動装置は、撓み性シャフト186を介してモータ182をリンク184に連結する遊星ギヤボックスである。リンク184は、リンク184の重力で生じたトルクをシャフト186に作用させ、シャフト186のねじれは、ねじれたエッジ線で見ることができる。単純にするために、摩擦力および内力をさしあたって無視すると、重力は、駆動系に作用するモータトルクによって相殺され、したがって、歯車の歯の対応する側は、図1cに示すように接触状態にある。バックラッシュ源として、歯ギャップ192、196がある。摩擦は、ベアリング194と、伝動要素間の他の摺動または転がり接触部とで生じる。ねじれ186は線形であり得るが、遊星ギヤを保持するプレートを含めたコンプライアンスは、漸進的な歯接触と相まって、通常、非線形のコンプライアンス特性をもたらす。
【0043】
手動式クランプ物品188と併せて、システム180は、マニピュレータの関節とみなすことができる。等価的に、システム180は、任意で1つのサーボ制御式機構の任意で1つの関節を示すことができる。このように、クランプ物品160、188は、それぞれ図1aおよび図1bに提示した形態および形状に限定されるのではなくて、基本的にバックラッシュがなく、マニピュレータ110の可動部分のクランプ用の空間内の地点を提供できる限り、任意の形状および形態を有することができる。したがって、クランプ物品は弾性とすることができて、クランプ物品への最初のクランプ後のマニピュレータは、クランプ物品の位置での休止位置を取った後、マニピュレータが後でクランプされる空間内の地点に到達することができる。弾性クランプ物品の場合、弾性クランプ物品の剛性は既知でなければならず、クランプ物品の弾性変位は、工具交換器の力に基づいて求める必要があり、一方、工具交換器の力は、関節トルクおよび運動モデルを通じて、または外部のリスト取付式力/トルクセンサを使用して求めることができる。
【0044】
本発明によるマニピュレータの関節パラメータを求めるシステムはまた、2つ以上のロボット、すなわち、他方のロボットのマニピュレータ用に、それぞれが空間内のクランプ地点を提供するクランプ物品として、互いを使用する2つ以上のマニピュレータを含むことができて、例えば、いくつかの実施形態が図2〜7に示される本発明の方法に従って、各マニピュレータの各関節の関節特性を求めることができることにも言及しておかなければならない。堅固に固定されるクランプ地点がない場合、双腕ロボットは、すべての関節パラメータを一義的に求めるために、より多くの姿勢および測定データを必要とすることがある。
【0045】
さらに、図1aのマニピュレータ110は、単一のアームマニピュレータとして示されているが、同様に双腕ロボットとすることができ、前の段落での説明と同様に、アームは、各アームの各関節の関節特性を求めるために、各アームを、他方のアームによって提供された空間内の地点にクランプするクランプ物品として使用することができる。双腕ロボットはまた、任意で適切なリンクを有する他方のアームが、他方のアームのリンクを剛性周囲物(または既知のコンプライアンスを有する周囲物)に押し付けるようにすることで、リンクをクランプすることもできる。これらの場合でさえ、いくつかの実施形態が図2〜7に示される本発明の方法に従って、マニピュレータの各アームの関節特性を求めることができる。
【0046】
少なくとも1つの関節特性の特定が、図2〜7を用いて以下に説明される。
【0047】
図2は、本発明による方法の一実施形態を示す流れ図を示している。
【0048】
ステップ200で、コントローラ140は、マニピュレータ110の各関節112、114、116〜119ごとのアクチュエータに命令して、マニピュレータ110が、クランプ物品160によって提供された空間内の地点に合わせて合体するように各関節を回転させる。空間内のこの地点は、クランプ物品160の突起162か、またはクランプ物品160の他のどこかの部分かの何れかによって画定することができる。クランプ物品160が剛性の場合、クランプ物品160によって提供されるクランプ地点は、工具交換器121またはマニピュレータ110のどこか他の部分がクランプされた空間内の地点と実質的に同じである。それ以外に、軟性または弾性のクランプ物品の場合、クランプ物品によって提供される最初のクランプ地点は、工具交換器121またはマニピュレータ110のどこか他の部分が最終的にクランプされる空間内の地点とは異なる。前に説明したように、コントローラ140は、マニピュレータ110がクランプ物品160によって提供された接触地点に到達するように、各関節112、114、116〜119ごとのアクチュエータに命令して関節を回転させることができるか、またはコントローラ140は、工具交換器121またはマニピュレータ110のどこか他の部分の合体/クランプを完了するために、(例えば、校正手順全体を自動化する、コントローラにロードされたロボットユーザプログラムの命令にすべて従って、リンク168のロックブッシュ161を解放し、突起162を移動させながらマニピュレータ110を合体させることによって)クランプ物品160を動かすことができる。
【0049】
上記の各場合において、マニピュレータ110は、この時点で、空間内の明確に定義された地点に到達しており、特定の姿勢でこの明確に定義された地点にクランプされたままである。この姿勢は、各関節に対する関節パラメータを一義的に求める出発点とすることができ、この場合に、空間内の単一の地点だけで十分である。それ以外に、空間内の地点が、2つ以上の関節の特性を求めるのに不適切な場合、コントローラ140は、マニピュレータ110またはクランプ物品160に命令して、関節パラメータを求めることができる1つまたは複数の地点に移動させることができる。それにより、各関節112、114、116〜119に対する関節パラメータを一義的に求めることが可能である。この場合に、対象となる関節パラメータは、バックラッシュおよびコンプライアンスであるが、各関節の機械的な状態についての十分な情報をもたらすことができる他のパラメータも求めることができる。
【0050】
方法ステップ210〜230に進む前に、方法をより深く理解するために、ステップ210〜230は、1つの関節だけに関して実行されることに言及しておかなければならない。しかし、コントローラ140は、各関節112、114、116〜119の駆動系を駆動するように、アクチュエータに信号を送り、各関節に対してステップ210〜230を実行することが可能である。代替案として、およびマニピュレータの運動力学的構造に応じて、ステップ210〜230は、2つ以上の関節に対して平行して実行することができる。
【0051】
本発明の当面の理解を容易にするために、図2〜7に示したステップ210〜230の詳述は、それぞれほぼ理想的な特性を有する関節パラメータが得られる特定の制御シーケンスに基づく。その後、実用的に修正された手法が、図8b〜8eを参照して説明される。その修正された手法は、コントローラ140が、アクチュエータトルクの直接制御を制限した場合に、関節特性を求める実用的な方法である。マニピュレータの提供者と同様に、トルク制御へのアクセスが可能な場合、以下の特定の制御シーケンスは、方法を使用する明示的な形を提示する。
【0052】
図2に戻って、ステップ210で、コントローラ140は、前に説明した空間内の地点を画定する、クランプ物品160上のクランプ位置にマニピュレータ110を保持しながら、関節112、114、116〜119の1つの駆動系を駆動するようにアクチュエータに信号を送る。同時に、コントローラ140は、マニピュレータ110の関節112、114、116〜119の1つの関節モータトルクおよび関節位置を観測する。
【0053】
ステップ220で、コントローラ140は、マニピュレータ110の関節112、114、116〜119の1つの特性を得るために、対象となる特定の関節位置に対応するモータトルクの出力値を選択および記録する。モータトルクのそのような出力値および関節位置の一例は、モータトルクが実質的にゼロである関節位置とすることができる。
【0054】
最後に、ステップ230で、コントローラは、ステップ220で記録した出力値および関節位置から所望する1つまたは複数の関節特性を求める。1つまたは複数の関節特性は、バックラッシュ、コンプライアンス、または単独の、もしくは組み合わせた他の関節特性とすることができる。
【0055】
図3は、コントローラ140が、関節112、114、116〜119を駆動する駆動系のバックラッシュを求める本発明による方法の別の実施形態を示している。前の方法の実施形態と同様に、図3の方法の実施形態は、マニピュレータ110の関節112、114、116〜119の1つについて説明されている。
【0056】
ステップ300で、コントローラ140は、マニピュレータ110の各関節112、114、116〜119ごとのアクチュエータに命令して、マニピュレータ110が、クランプ物品160によって提供された空間内の地点に合わせて合体するように各関節を回転させる。このステップは、図2に示す方法の実施形態のステップ200と同一であり、これ以上詳述しない。
【0057】
ステップ310で、コントローラ140は運転位置制御に入り、(障害検出などのコントローラ問題により)必要ならば、許容可能なトルクで定常状態位置に到達するように、関節の位置基準を調整する。
【0058】
ステップ320で、コントローラ140は、関節112、114、116〜119の1つの動摩擦値を得る。この場合に、動摩擦値には、単に、マニピュレータ110がクランプ物品160にクランプされる前に行った測定から既知の動摩擦が含まれてよいし、またはマニピュレータ110が、クランプ物品160にクランプされた後の動摩擦値が含まれてもよい。後者の場合、流れ図は、以下のサブステップ(図示せず)、すなわち、
−コントローラ140は、アクチュエータに信号を送って、関節モータを2つの反対方向に回転させ、関節モータのトルクを観測するサブステップと、
−コントローラ140は、両方のモータ方向でモータトルクの最小合計値を得ることにより、モータ動摩擦を推定するサブステップと、
−モータ動摩擦パラメータとしてトルク値を使用するサブステップと、
を含むことができる。
【0059】
ステップ330で、コントローラ140は、駆動系が関節位置基準を調整するように、アクチュエータに信号を送る。関節の位置調整は、設定された/プログラムされた関節制御基準を増減させてコントローラ140によって行うことができ、関節制御基準は、分解能が低すぎる場合に、滑らかなトルク信号を得るために、モータ制御のデチューニングを要することがある。
【0060】
ステップ335で、コントローラ140は、関節が定常位置に到達したかどうか、すなわち、重力が存在するとしても、関節モータの速度およびトルクが実質的にゼロであるかどうかをチェックする。
【0061】
ゼロでない場合、方法はステップ330に戻り、駆動系を動かし続け、それによって、関節基準位置を調整するように、引き続き信号をアクチュエータに送る。
【0062】
ゼロである場合、コントローラ140は、ステップ340で、駆動系を駆動して、関節モータトルクが上昇を始めるまで、関節位置基準を調整するように、アクチュエータに信号を送る。関節の位置調整は、ギヤホイールなどの駆動系の要素間の接触が確立されるまで、関節112、114、116〜119の1つの設定された/プログラムされた関節基準駆動系を一方向に増減させることによって行うことができる。マニピュレータサーボ制御の積分動作が駆動系の制限された剛性と相まって、関節モータトルクは、摩擦よりもかなり高いレベルで安定化する。
【0063】
ステップ345で、コントローラは、駆動系位置が安定しているかどうか、すなわち、(その機構が駆動系に使用されている場合)駆動系のギヤホイールが接触を達成したかどうかをチェックする。
【0064】
接触していない場合、方法はステップ340に戻り、コントローラ140は、駆動系を駆動し続けるように、引き続きアクチュエータに信号を送る。
【0065】
コントローラが、駆動系の安定位置、すなわち、接触を検出すると、コントローラ140は、ステップ350で関節モータの第1の出力値を記録し、第1の出力値は、この場合、関節モータのモータ角X1である。
【0066】
ステップ360で、コントローラ140は、駆動系を駆動するようにアクチュエータに信号を送り、それにより、駆動系は、ステップ330での方向と反対の方向に回転する。これは、ステップ340と同様にして位置基準をデクリメントするために、アクチュエータに信号を送って駆動系を駆動することで、コントローラ140によって実施することができる。
【0067】
ステップ365で、コントローラ140は、駆動系の安定位置が得られたかどうか、すなわち、(この場合も実装にかかっている)駆動系のギヤホイール間の接触が、バックラッシュとは反対の側で得られたかどうかをチェックする。
【0068】
接触していない場合、方法はステップ360に戻り、コントローラ140は、反対方向に駆動系を駆動するように、アクチュエータに信号を送り続ける。
【0069】
ステップ370で、コントローラ140は、安定位置での第2の出力値を記録し、この場合に、第2の出力値は、ステップ345の安定位置に対してN回デクリメントした後に得られた関節モータのモータ角X2である。
【0070】
最後に、コントローラ140は、ステップ380で、差分値Δ=X1−X2から関節駆動系のバックラッシュを算出する。Nが小さい(1または2)場合、バックラッシュが実質的にゼロである可能性があるし、またはインクリメンタル動作の分解能が不十分な可能性がある。後者の場合、モータ制御のデチューニングが、ステップ330での手順と同様に適用され得る。
【0071】
手順がユーザプログラミングレベルで実施される場合、ロボットメーカは、通常のロボットプログラマにとって入手可能な分解能よりも遙かに高い分解能を有するシステムレベルのインターフェイスまたは実装を提供しなければならない。必要に応じて、一部のシステムで、サーボ制御での積分動作は、データの平坦性が改善され、そのときの主要比例動作が適切なトルク効果に対して調整され得るように、無効にするか、または制限することができる。
【0072】
準静的状態(スローモーション)のもとで、アクチュエータの(例えば、電気)モータトルクからの、駆動系への入力(機械)トルクは、モータトルクから動摩擦をマイナスしたものであることに言及しておかなければならない。設定アクチュエータ動作は既知であり、クランプのために駆動系の出力動作は実質的にないので、これは、クランプ動作時に、駆動系の入力トルクを制御できることを意味する。さらには、これは、クランプ状態でバックラッシュを求める間、バックラッシュを求めるのは、(モータ摩擦が補償された)駆動系の入力トルクに基づいて行うことができる、すなわち、バックラッシュの特定原理は、(ゆっくりであるがゼロ動作ではないという仮定のもとで)摩擦がない場合と同様に構築することができる。
【0073】
図4は、本発明による方法のさらに別の実施形態を示しており、マニピュレータ110のリンクの1つまたは複数のコンプライアンスが求められる。
【0074】
コンプライアンスは、すべての駆動系が示す剛性の欠如として定義することができる。各リンク(通常小部分)のコンプライアンスは、デフォルトで、関節コンプライアンスとみなされる。
【0075】
図2および図3に示す前の方法の実施形態と同様に、図4の方法の実施形態は、マニピュレータ110の関節モータ(図示せず)の1つだけを使用して説明される。今日のほとんどすべてのロボットは、各関節の駆動系に主コンプライアンスを有し、したがって、この関節パラメータは求めると有用である。
【0076】
図4の方法の実施形態によれば、関節の摩擦およびバックラッシュ値がコントローラ140にとって既知の場合、またはコントローラ140が、前に説明したステップに従ってこれらの値を求めている場合、コントローラ140は、以下のステップに従って、1つの関節のコンプライアンスを求めるように構成されている。
【0077】
ステップ400で、コントローラ140は、マニピュレータ110の各関節112、114、116〜119ごとのアクチュエータに命令して、マニピュレータ110が、クランプ物品160によって提供された空間内の地点に合わせて合体するように各関節を回転させる。このステップは、図2に示す方法の実施形態のステップ200と同一であり、これ以上詳述しない。
【0078】
ステップ410で、コントローラ140は、バックラッシュの片側での接触が確立されるように、必要ならば、上記のバックラッシュの特定に関する制御を修正して、関節位置基準を調整するために、駆動系を駆動するようにアクチュエータに信号を送る。関節の駆動系がギヤホイールを用いて構築されている場合、そのような接触は、協働して関節を駆動する各ホイールのギヤ間の接触を特徴とすることができる。
【0079】
ステップ420で、コントローラ140は、接触トルクを大きくするために、関節位置基準をインクリメントして、駆動系を駆動するようにアクチュエータに信号を送り、コントローラ140は、それと同時に、関節モータトルクおよび位置の両方の量の絶対値が増加している間、関節モータトルクおよび位置を観測する。
【0080】
ステップ430で、コントローラ140は、アクチュエータに命令して、関節モータトルクが、前のステップ420による高い関節モータトルクからゼロに向かって減ぜられるように駆動系を駆動するようにし、コントローラ140は、それと同時に、関節モータトルクおよび位置を観測する。ほとんどのギヤボックスの構成により、剛性はトルクの上昇と共に高くなり、例えば、摩擦の2倍のヒステリシスを有する、観測した関節モータトルクおよび位置のデータに3次多項式を当てはめることができる。
【0081】
ステップ440で、関節モータトルクが実質的にゼロであるかどうかをチェックする。
【0082】
ゼロでない場合、方法はステップ430に戻り、アクチュエータは、引き続き駆動系を駆動するように、コントローラ140から信号を送られる。
【0083】
ゼロである場合、コントローラ140は、ステップ450で関節位置を記録し、ステップ460に進む。
【0084】
ステップ460で、コントローラ140は、ステップ420での方向と反対の方向に関節位置基準を増加させるために、駆動系を駆動するようにアクチュエータに信号を送り、ステップ420と同様に関節モータトルクおよび位置を観測する。
【0085】
ステップ470で、コントローラ140は、駆動系のギヤホイール間の接触が確立されたかどうかを再度チェックする。
【0086】
接触していない場合、方法はステップ460に戻り、アクチュエータは、引き続きステップ420と反対の方向に駆動系を駆動するように、コントローラ140から信号を送られる。
【0087】
接触している場合、コントローラコントローラ140は、ステップ470で関節位置を記録する。
【0088】
2つの関節位置は、典型的なギヤボックスの場合、対称でなければならない。
【0089】
バックラッシュおよび摩擦値と共に、求めたコンプライアンスは、(駆動系および関節の)回転軸(軸1〜6)のまわりの特性を含む図1による関節特性を規定する。図1では、関節のまわりのリンクの回転は、軸1〜6および太い矢印で示されている。一実施形態によれば、方法は、検証または(例えば、力制御動作による)精度の改善のために、工具交換器の位置で力−トルクセンサを使用する。
【0090】
図5は、本発明による方法の実施形態を示しており、1つまたは複数の関節112、114、116〜119の動摩擦は未知であり、コントローラ140によって求められる必要がある。このシナリオにおいて、動摩擦は、マニピュレータ110がクランプ物品160にクランプされる前に求められる。
【0091】
ステップ500で、コントローラ140は、各関節112、114、116〜119を一方向に低速で回転させ、動作中に動摩擦に対応する関節モータトルクを観測するために、駆動系を駆動するようにアクチュエータに信号を送る。これに関連して、低速とは、関節を閾速度値未満の速度で回転させることを意味する。
【0092】
その後、ステップ510で、コントローラ140は、駆動系を駆動して、関節112、114、116〜119の動作を停止させるようにアクチュエータに信号を送る。
【0093】
ステップ520で、コントローラ140は、各関節112、114、116〜119を低速で反対方向に回転させ、動作中に動摩擦に対応する関節モータトルクを観測するために、駆動系を駆動するようにアクチュエータに信号を送る。
【0094】
ステップ530で、コントローラ140は、最初に動摩擦としてモータトルクのピークを検出し、方向、温度、重力/負荷、または摩擦値に影響を及ぼし得る他の任意の条件に対する依存性を検証/モデル化する。
【0095】
次いで、方法はステップ540〜570に進み、ステップ540〜570は、図2の方法の実施形態のステップ200〜230と同じであり、ここでは繰り返して説明しない。
【0096】
標準的な産業ロボットは、関節当たり1つの静摩擦値を有し、この静摩擦値は、関節の動摩擦値に近い。一部の機構の場合、機械的にかなりの差があり得るが、例えば、精度の高いロボットが必要とするような高ゲインフィードバック制御の影響下では、センサノイズによる小さい振動があり、より高い静摩擦はあまり問題にならない。いずれにせよ、静摩擦と動摩擦との間の差は、低レベルのサーボ制御で取り扱う問題であり、求められる特性に関して本発明が取り扱う高いレベルの補償には必要とされない。
【0097】
それに対して、ほとんどのロボットは、駆動系のモータ側に主な関節摩擦効果があり、高い予圧をかけられた関節側ベアリング、または大きな摩擦による潤滑の封止を含む一部のロボットは、極めて高い関節側の摩擦を示す。自由なクランプされていない動作とクランプされた動作との両方で、関節の動摩擦を求めることで、これらの2つの異なる動摩擦パラメータを求め、互いに区別することができる。モータの動摩擦は、駆動系のバックラッシュの前に関節に作用し、一方、残りの関節摩擦は、これらの駆動系パラメータの後に関節動作に作用し、当然、これらの駆動系パラメータは、関節特性に基づいて、補償の範囲内で利用される。当技術分野で公知のように、関節側のそのような高い動摩擦は、特に、コンプライアンスは有するが、バックラッシュがない場合に、図8eのプロットした観測量が示すように、動摩擦のヒステリシス効果が、実際上負荷依存性であり得ることの目安である。
【0098】
コントローラ140は、やはり、工具交換器121がクランプ物品160の突起163に合体される前に、上記で動摩擦を求めるために実施したステップと同様な態様で、各関節に対して粘性摩擦を求めることもできる。
【0099】
マニピュレータ110がクランプ物品160にクランプされる前に、動摩擦が求められる方法の一実施形態が図6に示されている。
【0100】
ステップ600で、コントローラ140は、関節112、114、116〜119の1つを一方向に様々な速度で回転させるようにアクチュエータに信号を送り、それと同時に、コントローラ140は、動作中に関節モータトルクを観測する。
【0101】
ステップ610で、コントローラ140は、駆動系を駆動して関節動作を停止させるようにアクチュエータに信号を送る。
【0102】
ステップ620で、コントローラ140は、駆動系を駆動するようにアクチュエータに信号を送り、関節を反対方向に再度様々な速度で回転させ、この様々な速度は、ステップ610の速度と等しくてよいし、または異なってもよい。同時に、コントローラ140は、反対方向の動作中に、関節モータトルクを観測する。
【0103】
ステップ630で、コントローラ140は、次いで、両方向の関節動作中に観測したモータトルクから粘性摩擦を求める。
【0104】
ステップ640〜670は、図2のステップ200〜230と同一であり、ここでこれ以上詳述しない。
【0105】
いくつかの実施形態が、図2〜6で前に説明された関節パラメータを求める方法の性能を改善する1つの方法は、物品でマニピュレータ110を打撃することである。この実施形態が図7に示されている。
【0106】
ステップ700で、マニピュレータ110は、自動的に、またはロボットオペレータによって何らかの物品で打撃されて、すべての関節112、114、116〜119の、すべての自由度での動作が誘発される。
【0107】
ステップ710で、コントローラ140は、マニピュレータ110のすべての関節の関節モータトルクおよび関節位置を観測する。これは、通常、ステップ700の打撃中および打撃後に行うことができる。
【0108】
ステップ720で、コントローラ140は、各関節112、114、116〜119の、特に、最も大きい慣性を有する関節の観測した関節モータトルクおよび関節位置から、マニピュレータ110の共振周波数を求める。共振周波数は、ステップ700での工具交換器110の打撃中および打撃後に記録した関節モータ電流の周波数とすることができる。最も低い共振周波数は、前に説明した、摩擦、バックラッシュ、およびコンプライアンスなどの関節パラメータの特定時の可能な関節性能についての目安を示す。
【0109】
ステップ730で、コントローラ140は、ステップ720で求めた最も低い共振周波数に対応する、関節モータトルクおよび関節位置の間隔を決める。コントローラ140が、前に説明した図2〜6の方法の実施形態に従って、関節パラメータを求めるのはこの間隔ごとである。
【0110】
次に、方法はステップ740〜770に進み、このステップ740〜770は、図2の方法の実施形態に関連して説明したステップ200〜230と同一である。この理由から、これらのステップはこれ以上詳述しない。
【0111】
図2〜7の方法の実施形態はまた、マニピュレータが、マニピュレータ110の駆動系の動特性を求めるための運動パラメータを得るステップ(図示せず)を含むことができる。コントローラ140は、保存された標準(未校正)パラメータを含むことができる。そのようなパラメータは、代わりとして、データシートからコントローラ140に入力することができる。このステップは、図2〜7による方法の実施形態でのステップの前にある。最後に、各関節112、114、116〜119の関節特性が、図2〜7に示す方法の実施形態に従って求められた後、標準運動パラメータは、求めた関節特性に基づいて更新することができる。
【0112】
図8aは、ロボットのマニピュレータ110の1つの関節のヒステリシス線図800を示している。図は、アクチュエータの静摩擦および動摩擦が実質的にゼロの理想化された場合であるが、駆動系の粘性摩擦を考慮に入れて、アクチュエータ位置xに応じた関節モータトルクFを示している。図は動作速度を示していないが、動作速度がかかわっていることは、位置xの変化中のトルクヒステリシス値から明らかであり、曲線の終端点は同じ値に合流しており、これは、動摩擦値がごくわずかか、または制御誘起振動によって相殺されたことを意味する。ここで、仮定動作は、粘性効果がないように準静的とする。準静的とは、遅い動作を意味するが、クランプされた姿勢での対応した動作距離は非常に短いので、校正時間という点での問題はない。前に説明した実用的に修正された手法が、それぞれが少なくとも1つのヒステリシス効果を含む図8b〜8eを参照しながら、基本としてヒステリシス曲線を用いて以下にさらに完全に説明される。
【0113】
図8aに示すヒステリシス曲線は、中間に負荷のかかっていないクランプ位置がある2つの位置の間の往復動作を示している。モータ座標xは、例えば、駆動系に対する取り付けのために、どうしても中心からのずれを伴うので、単純化するために、x座標がバックラッシュの中心でゼロになり、したがって、バックラッシュがある場合に、2Xのバックラッシュに対して、−XとXで接触が得られるようにずれを選択することができる。ヒステリシストルク−位置曲線の任意の方向、例えば、801−802−803−804の順序(またはその反対)に動作するが、両側でバックラッシュがなくなると仮定することができる。これは、モータ、すなわちアクチュエータが、バックラッシュ範囲に対して両方向に第1および第2の位置間を往復運動して、両方の位置で駆動系のトルク伝達が十分に進展するように駆動系を駆動する(210)ことを意味する。動摩擦の効果を含めて、アクチュエータトルクおよびアクチュエータ位置を観測することで、図8dのような曲線が得られる。実線は、得られたトルク−位置サイクルに関する、観測した動作である。摩擦は対称であると仮定すると、この場合に、平均値である点線は、8dで、バックラッシュの中心のまわりに水平方向に対称である位置ヒステリシスをその位置依存性でとらえた摩擦補償アクチュエータトルクを表す。
【0114】
十分に発達した駆動系トルクという概念は、物理的な関節特性自体と、求められる関節特性の意図した使用法とに左右される。図8dに示す2つの例は、所定の位置でのそれぞれアクチュエータトルクのヒステリシスである。これらの例が、以下に簡単に説明される。
【0115】
トルクヒステリシスは動摩擦を示し、この動摩擦は、通常、アクチュエータに起因するが、複数の要素を有する駆動系の、ベアリング194などの様々な段階での摩擦があり得る。図8dのようなヒステリシスサイクルに対して、ならびに特定の往復位置および特定の最大トルクに対して、動摩擦は一定であり、これは、上側曲線と下側曲線との間に2μの一定の距離があることを意味し、動摩擦はμで表される。前に説明したように、全動摩擦は、自由空間動作で調べることもできる。トルク履歴をとらえた状態によって決まる作用であり得る摩擦特性を求めた後、摩擦補償アクチュエータトルクを定めることができる。理想的な場合、摩擦補償アクチュエータトルクは、図8dの点線に一致する。
【0116】
ヒステリシスサイクルが、X1とX3との間に非線形曲線を有する図8dのような場合に、関節特性として使用される位置ヒステリシスは、高いトルクと低いトルクとの差である。高トルクに対して、ヒステリシスを空動きと称し、この空動きは、図8dで、各2つの動作方向においてそれぞれLM1、LM2で示されている。ここで、LM1およびLM2は同じであるが、物理的に得られる値は、図8eに示すように相違を見せる。摩擦補償した点線は、図8dの対称で理想的な場合に、さらに空動きを求めるために使用することができる。バックラッシュは、基本的に駆動系トルクがない位置ヒステリシスである。図8dにおいて、間隔B1にわたってゼロ(摩擦補償された)トルクがあるが、実用的には(検知および制御の観点から)、低負荷補償するために、バックラッシュとして間隔B2を使用するのがより適切である。
【0117】
前に説明したように、当技術分野で公知の校正およびモデル化方法は、間隔の定義における決定問題と、マニピュレータの使用中の実際のサーボ制御に比較して、反対の方向から駆動系に負荷をかけることによる同一化問題とを有する。それに対して、本発明は、通常の動作の方向で駆動系に負荷をかけ、バックラッシュ(低トルク)および空動き(高トルク)の定義は、これらの意図された使用事例に合わせることができる。したがって、本方法のユーザは、当面の用途またはシステムに適した間隔定義を自由に選択することができる。
【0118】
バックラッシュおよびコンプライアンスに関して同様な決定が行われ、後者は、図8dでB2の外で、かつNL間隔内の曲線としてどれも非線形である。これを背景として、および図8a〜8eに示す様々な実施形態を参照して、2つの事例が、以下に、より完全に説明される。
【0119】
最初に、NL間隔が、B1またはB2の外の非線形コンプライアンスによってモデル化される。第2に、X1(選択されたB1またはB2間隔の座標)およびX3が互いに接近している場合、図8bまたは図8cの事例に属する点線になる。しかし、実際は、コンプライアンス814間に明瞭なバックラッシュ812はなく、代わりとして、モデルは、低負荷コンプライアンス813が高負荷コンプライアンス814をつなぐ図8cのものとなる。図8cは、駆動系が予圧をかけられたギヤボックスを含む場合の典型的な事例であり、図8bは、より単純な低コスト駆動系の典型である。図8eは、ギヤボックスが与圧されたマニピュレータの関節に対して、最大トルクが異なる、2つの得られたヒステリシスサイクルを示している。得られたヒステリシスサイクルが理想的であるか、ないかにかかわらず、本発明は、所望の特性を求めることができるようなヒステリシスサイクルを得る方法を含む。
【0120】
ユーザプログラミングレベルのコントローラ140で、マニピュレータのプログラムを組む、またはマニピュレータに命令することにより、マニピュレータ110のユーザとして方法を実行することは、デジタルコントローラ140では離散的プログラム可能量であるトルクおよび位置基準を設定するためのアクセスを制限されることを意味する。物理特性の代表値である、得られたデータにとって、量子化効果は小さくする必要がある。そのために、ロボットメーカは、通常のロボットプログラマにとって入手可能な分解能よりも遙かに高い分解能を有することができるシステムレベルのインターフェイスまたは実装を提供しなければならない。代替案として、および等価的に、マニピュレータコントローラ140は、通常、サーボ制御の積分動作が無効にされる(または重力トルクを相殺する値に設定される)のを可能にし、次いで、観測された量を平滑化し、設定位置からアクチュエータトルクにまで十分な影響を及ぼす適切なトルク効果を得るために、サーボ制御の主要比例動作を調整することができる。図8eはそのようにして得られる。
【0121】
図8b〜8eを参照して、本発明の方法を実施するために実用的に修正された手法が以下に詳述される。
【0122】
高速な統合された手順として、関節の位置参照が、最初に、様々な摩擦および重力特性を求めるために自由空間で、次いで、駆動系の動的特性を含む他の特性を求めるためにクランプされた構成で、様々な方法により繰り返される。これらのサイクル中に、トルクおよび位置を観測し、コントローラの特性に応じて、制御パラメータを最良の精度になるように調整する必要がある。次いで、対象となる特性が、マニピュレータの動的特性およびコントローラ特性のために明白に変化する、観測した信号から特定される。関節特性の全特定は、典型的なマニピュレータ110のすべての関節に対して、1分から数分を要する。しかし、方法をさらに詳細に説明するために、以下は、様々な特性の特定を分離して説明する。
【0123】
方法によれば、関節180、すなわち、マニピュレータ110の連結された可動部分は、関節の動作が制限される、またはロックされるようにクランプされ(200)、関節を駆動する駆動系は、アクチュエータによって駆動され(210)、一方で、前記アクチュエータのトルクに関係する少なくとも1つの量と、アクチュエータ位置に関係する少なくとも1つの量とを観測する。観測した量に基づいて、前記アクチュエータの出力値の少なくとも1つのセットを求め(220)、前記出力値セットは、少なくとも1つの関節位置に関係し、前記出力値セットに基づいて、関節の少なくとも1つの特性を求める(230)。
【0124】
一実施形態によれば、方法は、アクチュエータが第1および第2の位置間を往復運動して、両方向の駆動系トルク伝達が両方の位置で十分に進展し、それに対して、前記アクチュエータのトルクに関係する、観測した少なくとも1つの量と、アクチュエータ位置に関係する少なくとも1つの量とがヒステリシスサイクルデータを構成するように前記駆動系を駆動する(210)ことにより、ヒステリシスサイクルデータを得ることをさらに含み、前記クランプされた関節の初期関節位置は、駆動(210)の前に確立され、その後、得られたヒステリシスサイクルデータに基づいて、前記アクチュエータの少なくとも1つの出力値セットを求める(220)。
【0125】
第1および第2の地点間の往復運動が、対象となる全トルク範囲に及ぶように構成されたアクチュエータ動作を用いて、ヒステリシスサイクルデータを得ることが実用的である、つまり、全動作中に1回観測が行われ、次いで、対象となる様々な特性が、データを後で解析することで、ロボットシステム100などの装置を必ずしも占有することなく求められるが、制限された動作は、共に技術的に等価な方法を形成する、より小規模な専用実験として行うこともできる。図3〜5で詳述されているステップは、そのような専用実験のある程度の例であるが、ヒステリシスサイクルデータは、サイクルの様々な部分を反映した部分で得ることもできる。例えば、通常動作中に、高い重力で一方向に、常に負荷をかけられる関節の場合、負荷をかけられていない側と、アクチュエータトルクの方向の側を表す片側との間のヒステリシスサイクルを得るのに、通常の動作だけで十分であり得る。したがって、完全な両方向ヒステリシスサイクルは、負荷のかけられていない、クランプされた姿勢のまわりの2つの部分で得ることもでき、次いで、求めた関節特性をコントローラ140で組み合わせるか、または別々に使用することができる。少なくとも1つの関節の少なくとも1つの特性のそのような任意の部分的な特定は、省略してこれ以上説明しない特別で自明な場合である。駆動系の高速駆動などの説明した量を使用し、次いで、(例えば、図6に従って得られた)粘性摩擦を差し引く、開示した原理を含む別の変形型も技術的に等価の方法を形成する。
【0126】
求める少なくとも1つの関節特性は、非対称ヒステリシスサイクルの場合の、1つまたは複数の空動きとすることができ、この場合に、前記方法は、十分に進展した駆動系のトルク伝達が、最大位置ヒステリシスを得るほど十分に大きくなるように、許容されたトルク範囲内で前記駆動系を駆動して(210)、次いで、得られた位置ヒステリシスに基づいて、前記空動きを求める(220)ことを含む。さらに、得られたトルク−位置データに基づいて、空動きを平均化および特定する方法として、ヒステリシスサイクルは、曲線によって近似することができ、前記方法は、近似された曲線のそれぞれの末尾に漸近的に接近する2つの曲線を合わせることをさらに含み、アクチュエータは、動摩擦が十分に生じるように回転する。次いで、少なくとも1つのトルク値に対して、空動きを曲線間の位置差として求めることができる。
【0127】
ヒステリシスサイクルデータから得ることができる他の特性はバックラッシュであり、バックラッシュは、前記駆動系入力トルクが、実質的にゼロの駆動系入力トルクを特徴とするクランプ位置の両側で、基本的にゼロでない値に達するような、基本的に同じ前記駆動系入力トルクに対する位置の差を求めることにより、位置ヒステリシスから求めることができる(230)。バックラッシュの特定(230)は、位置ヒステリシスを求める前に、摩擦の効果に対してアクチュエータトルクを補償することにより得られた、求めた駆動系入力トルクに基づくことができる。
【0128】
方法は、関節の少なくとも1つの特性が、関節のコンプライアンスである関節に適用することもでき、前記方法は、得られたバックラッシュの効果をヒステリシスサイクルデータから除去することで、コンプライアンスを求める(230)ことをさらに含む。等価的に、コンプライアンスを求める場合に、図8dのB1またはB2などの定義したバックラッシュ間隔が考慮される。コンプライアンスが駆動系の方向および前の負荷に対してステートレスである場合に、コンプライアンスは、アクチュエータトルクが、アクチュエータ位置の増減に応じて増減する割合を特定することで求めることができる(230)。その割合が、クランプ位置の両側で同じ場合、または両側用の単一の値を使用する必要がある場合、実質的に負荷がかけられていない駆動系に対して得られた割合の平均を取ることで、負荷のない/低負荷のコンプライアンス特性を求めることができる。これに対して、より大きい駆動系トルクの場合、方法は、十分に負荷をかけられた駆動系に対して適用することができ、この場合に、負荷をかけられたコンプライアンス特性を求める。
【0129】
コンプライアンスがステートレスである、またはステートレスでないという概念は、駆動系トルクが単調増加または単調減少である場合に、観測したヒステリシスサイクルからの値が、単に、実質的に一定の値だけ外れているかどうかに関係する。ステートレスの場合に、(図8dのNL間隔にわたる)単一のコンプライアンス特性関数を負荷のかけられていないコンプライアンス特性と、十分に負荷のかけられたコンプライアンス特性とに合わせることができる。図8eなど、ヒステリシスサイクルが最大トルクに依存する場合、コンプライアンス特性に関係するある種の状態があり、コンプライアンス特性関数は、前に説明したように、必要とされる効果を反映した状態変数を有するべきである。あり得るコンプライアンス特性状態の別の例は、例えば、破損しつつある、または何か別の形で欠陥のある駆動系に起因する再現性の欠如に関係する。それとは反対に、ヒステリシスサイクルデータが、同じ最大負荷で数サイクルにわたって同じ場合、関節は、再現性のある動作を得るための十分な品質がある。これは図8eの事例であり、各重なったサイクルは、実際に5つのサイクルを含む。したがって、その関節は、補償された、または補償されない動作を再現するための十分な品質がある。
【0130】
方法の別の実施形態では、関節の少なくとも1つの特性はアクチュエータ動摩擦であり、その特定(230)には、少なくとも1つの位置値に対して、ヒステリシスサイクルデータからトルクヒステリシスを特定することが含まれ、アクチュエータ動摩擦の値は、特定したトルクヒステリシスの値の半分である。多少簡略化して、この摩擦特性は、クーロン摩擦と呼ばれることもある。静摩擦と、いわゆるスティクションの危険性の目安である静止摩擦と動摩擦との差とは、クランプされた、またはクランプされない条件下で、低ゲインで徐々に始まる動作中に得ることができるが、ヒステリシスサイクルの観測中の動作は、スティクションが現れないように調整すべきである。
【0131】
方法のさらなる実施形態によれば、ヒステリシスサイクルは、様々な熱的条件下で観測することができ、実際の熱的条件は、環境の、および/または関節の機械要素のどれかの、測定した、および/またはシミュレーションした温度で示され、ヒステリシスサイクルは、求めた特性が温度と共に変わるような温度依存性であり得る。そのような場合に、少なくとも1つの関節特性の温度依存性を求めるのは、直接的手法である。
【0132】
方法は、少なくとも2つのクランプされた関節の関節特性値を求めるために、少なくとも1つのアクチュエータを、駆動系を介して繰り返して駆動することをさらに含む。方法はまた、クランプ構成を含むことができ、個々の関節は、駆動(210)および観測段階を通して変わらないままである。
【0133】
方法はまた、複数の関節をクランプし、マニピュレータ110が、1つまたは複数の運動学的構成でクランプされるように関節をクランプすることを含み、各構成において、および各関節に対して、方法の実施形態を適用することができる。
【0134】
前記方法のさらに別の実施形態は、マニピュレータ110の関節の少なくとも1つの特性を求めることを含み、前記方法は、マニピュレータの作業空間内で、図1aに示すクランプ物品160の位置に前記マニピュレータの可動部分を位置決めし、クランプ物品上の1つの地点を前記可動部分と接触させることを含み、方法ステップの何れかを実施することをさらに含む。
【0135】
方法はまた、マニピュレータの運動校正を用いて、特定の運動パラメータを求め、少なくとも1つの求めた関節特性に基づいて、マニピュレータの運動パラメータを更新することを含む。このように、マニピュレータは、得られた少なくとも1つの特性を使用して、より良好に校正することができる。更新される運動パラメータは、マニピュレータの標準パラメータまたは従来の校正方法を用いて得られる運動パラメータとすることができる。
【0136】
本開示はまた、マニピュレータの標準運動パラメータを更新するために、本明細書で開示した任意の方法ステップの何れかに従って求めた特定の少なくとも1つの特性の使用に関する。さらに、求めた少なくとも1つの特定の関節特性を使用して、任意の制御型関節の駆動系の動作を更新するか、求めたずれを補償するためにロボットプログラム姿勢を更新するか、または関節特性に基づいて、マニピュレータの動作制御パラメータを更新することができる。このように、コントローラ140と、制御ユニット141と、コンピュータで読み取り可能な記憶装置142に存在するロボット姿勢に関する命令との更新によって、関節180またはマニピュレータ110の精度が改善される。
【0137】
本発明の別の態様によれば、方法の使用は、マニピュレータ110の関節などの関節112、114、116〜119、180の少なくとも1つの特性を求めるためのシステムによって行われ、このシステムは、駆動系を介して前記関節を駆動するように構成された少なくとも1つのアクチュエータと、関節の動作を制限するように構成されたクランプ手段と、前記アクチュエータのトルクに関係する少なくとも1つの量、およびアクチュエータ位置に関係する少なくとも1つの量を観測する手段と、少なくとも1つの関節位置に対応する、前記アクチュエータの少なくとも1つの出力値を求めるための手段と、前記少なくとも1つの出力値に基づいて、関節の少なくとも1つの特性を求めるための手段とを含む。システムは、少なくとも1つのマニピュレータ110をさらに含み、前記関節112、114、116〜119、180はマニピュレータの一部であり、コントローラ140は、マニピュレータを制御するように構成され、クランプ手段160は、マニピュレータの端部部分の合体およびクランプを可能にするように構成されて、マニピュレータは、クランプ手段に合体およびクランプされたときに、クランプされた姿勢を取る。
【0138】
クランプ手段160は、マニピュレータ110の作業空間の固定位置にある単一の工具交換器とすることができる。クランプ手段はまた、複数の関節用の、または単一の関節180用の手動式クランプ物品とすることができ、単一の関節180は、手動式クランプ物品188によってクランプすることができる。最も適切なクランプ物品は、関節の運動学的配置と、関節特性と、方法の一部としてクランプを自動化する必要性とに応じて決まる。要求の厳しい事例は、様々な方向に回転する、マニピュレータ110用としての複数の関節をクランプする必要がある場合と、これらの関節が、互いにきわめて接近した複数の位置でクランプされる必要がある場合とである。図1bから分かるように、駆動系は、それぞれが様々な角度/位置で動作できる複数の伝動要素を含むことができ、これは、バックラッシュ192、196などの関節特性が、たとえ近い位置としても、アクチュエータの位置で変わる駆動系特性をもたらし得ることを意味する。多数のクランプ姿勢が必要とされることから、好ましくは自動的にそのような変化を求めるために、クランプ物品160は、自動化された精細な位置決めを可能にし、これは、本発明によるシステムの最終的な態様を形成する。
【0139】
本発明はさらに、コンピュータプログラム(P)に関し、コンピュータプログラム(P)は、開示した方法の実施形態の何れかを実行するためのコンピュータ命令を含む。最後に、本発明は、コンピュータプログラム製品に関し、コンピュータプログラム(P)は、担体、典型的にはコンピュータ可読媒体142に記録される。
【0140】
図面および明細書において、本発明の好ましい典型的な実施形態が開示されており、特有の用語が使用されたが、これらの特有の用語は、単に一般的に説明する意図で使用され、限定するためのものではなく、本発明の範囲は、添付の特許請求の範囲に記載されている。
図1a
図1b
図1c
図2
図3
図4
図5
図6
図7
図8a
図8b
図8c
図8d
図8e