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

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

▶ ユニバーサル ロボッツ アクツイエセルスカプの特許一覧

<>
  • 特許6182143-ロボットの較正およびプログラミング 図000017
  • 特許6182143-ロボットの較正およびプログラミング 図000018
  • 特許6182143-ロボットの較正およびプログラミング 図000019
  • 特許6182143-ロボットの較正およびプログラミング 図000020
  • 特許6182143-ロボットの較正およびプログラミング 図000021
  • 特許6182143-ロボットの較正およびプログラミング 図000022
  • 特許6182143-ロボットの較正およびプログラミング 図000023
  • 特許6182143-ロボットの較正およびプログラミング 図000024
  • 特許6182143-ロボットの較正およびプログラミング 図000025
  • 特許6182143-ロボットの較正およびプログラミング 図000026
  • 特許6182143-ロボットの較正およびプログラミング 図000027
  • 特許6182143-ロボットの較正およびプログラミング 図000028
  • 特許6182143-ロボットの較正およびプログラミング 図000029
  • 特許6182143-ロボットの較正およびプログラミング 図000030
  • 特許6182143-ロボットの較正およびプログラミング 図000031
  • 特許6182143-ロボットの較正およびプログラミング 図000032
  • 特許6182143-ロボットの較正およびプログラミング 図000033
  • 特許6182143-ロボットの較正およびプログラミング 図000034
  • 特許6182143-ロボットの較正およびプログラミング 図000035
  • 特許6182143-ロボットの較正およびプログラミング 図000036
  • 特許6182143-ロボットの較正およびプログラミング 図000037
  • 特許6182143-ロボットの較正およびプログラミング 図000038
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6182143
(24)【登録日】2017年7月28日
(45)【発行日】2017年8月16日
(54)【発明の名称】ロボットの較正およびプログラミング
(51)【国際特許分類】
   B25J 9/10 20060101AFI20170807BHJP
【FI】
   B25J9/10 A
【請求項の数】15
【全頁数】29
(21)【出願番号】特願2014-532317(P2014-532317)
(86)(22)【出願日】2012年9月18日
(65)【公表番号】特表2014-527920(P2014-527920A)
(43)【公表日】2014年10月23日
(86)【国際出願番号】EP2012068337
(87)【国際公開番号】WO2013045314
(87)【国際公開日】20130404
【審査請求日】2015年9月15日
(31)【優先権主張番号】61/540,150
(32)【優先日】2011年9月28日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】514075530
【氏名又は名称】ユニバーサル ロボッツ アクツイエセルスカプ
(74)【代理人】
【識別番号】100103816
【弁理士】
【氏名又は名称】風早 信昭
(74)【代理人】
【識別番号】100120927
【弁理士】
【氏名又は名称】浅野 典子
(72)【発明者】
【氏名】セー−クヌーセン, ルーン
(72)【発明者】
【氏名】エステルゴー, エスベン ハルンドベク
(72)【発明者】
【氏名】ピーターセン, ヘンリク ゴードン
【審査官】 木原 裕二
(56)【参考文献】
【文献】 特開平05−261682(JP,A)
【文献】 特開平09−011167(JP,A)
【文献】 米国特許出願公開第2005/0273198(US,A1)
【文献】 米国特許第05392384(US,A)
【文献】 特開2005−342885(JP,A)
【文献】 特開2001−050741(JP,A)
【文献】 David J. Bennett,Autonomous Calibration of Single-Loop Closed Kinematic Chains Formed by Manipulators with Passive Endpoint Constraints,IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION,米国,IEEE,1991年10月,VOL.7,NO.5,P.597-606
(58)【調査した分野】(Int.Cl.,DB名)
B25J 9/10
(57)【特許請求の範囲】
【請求項1】
ロボットを較正する方法であって、
(a)各々のロボット(R、R)が2つのフランジ、すなわちベースフランジおよびツールフランジを接続する関節および/またはリンクを有して成る、少なくとも2つのロボット(RおよびR)を提供するステップと、
(b)少なくとも2つのロボット(R、R)を少なくともそれらのベースフランジで、かつ/またはそれらのツールフランジで、物理的に接続することによって、前記少なくとも2つのロボット(R、R)から拘束連鎖を形成するステップと、ただし、少なくとも2つのロボット(R、R)の接続フランジは、同一回転軸を共有しない、
(c)連鎖におけるリンクまたは関節の少なくとも1つを操作し、それによって連鎖における他のリンクまたは関節の一部の操作を誘発するステップと、次いで、
(d)少なくとも2つのロボット(R、R)の各々の関節に関連付けられるセンサ情報に基づいて、各ロボット(R、R)の運動学的モデル(M、M)を推定するステップと、
を含む方法。
【請求項2】
センサ情報は、ロボット関節および/またはリンクを駆動するために使用されるのと同じセンサから得られる、請求項1に記載の方法。
【請求項3】
ステップ(c)は、
− 関節位置を変更し、それによって少なくとも2つのロボット(R、R)の各ロボットの関節の位置(Q)を変更するサブステップと、
− 対応する位置対(<RQ、RQ>)を収集するサブステップと、
を含む、請求項1または2に記載の方法。
【請求項4】
センサ情報は関節の位置(Q)に関する情報であり、ステップ(d)は、収集された位置対(<RQ、RQ>)に基づいて運動学的モデル(M、M)を推定することを含む、請求項3に記載の方法。
【請求項5】
センサ情報は、角度、位置座標、力、トルク、もしくはそれらの派生物のいずれか、および/またはそれらのいずれかの変化を含む、請求項1〜4のいずれかに記載の方法。
【請求項6】
少なくとも2つのロボット(R、R)から拘束連鎖を形成するステップ(b)はさらに、
なくとも2つのロボット(R、R)の間の少なくとも1つの距離を定めること
によって実行される、請求項1〜5のいずれかに記載の方法。
【請求項7】
運動学的モデル(M、M)を推定するステップ(d)はさらに、少なくとも2つのロボット(R、R)間のそれらのベースフランジおよびそれらのツールフランジにおけるオフセットの推定または測定に基づく、請求項1〜6のいずれかに記載の方法。
【請求項8】
充分な位置対データ(<RQ、RQ>)が、ステップ()の後で、しかしステップ()の前に、得られるか否かを評価するステップと、次いで、
− 運動学的モデル(M、M)を更新するために充分な位置対データ(<RQ、RQ>)が得られない場合、ステップ()を繰返し、あるいは
− 運動学的モデル(M、M)を更新するために充分な位置対データ(<RQ、RQ>)が得られる場合、ステップ()を実行する、
ことをさらに含む、請求項3〜7のいずれかに記載の方法。
【請求項9】
充分なセンサ情報が多数の未知のものに相当し、それは、運動学的モデル(M、M)を推定するために解かれる方程式の数を越えない、請求項8に記載の方法。
【請求項10】
運動学的モデル(M、M)を推定するために方程式を解くために必要なものに加えて、センサ情報のオーバヘッドパーセンテージ(OPI)を収集するステップを含む、請求項9に記載の方法。
【請求項11】
− センサ情報の前記オーバヘッドパーセンテージ(OPI)の少なくとも一部分を、運動学的モデル(M、M)を更新するために使用しないでおくステップと、
− センサ情報の前記オーバヘッドパーセンテージ(OPI)の前記一部分をデータ記憶装置に保存するステップと、
− センサ情報の前記オーバヘッドパーセンテージ(OPI)の前記一部分を用いて較正を検証するステップと、
をさらに含む、請求項10に記載の方法。
【請求項12】
較正を検証するステップは、センサ情報の収集されたオーバヘッドパーセンテージの前記一部分を、ロボットのための推定された運動学的モデル(M、M)によって予測された対応する値と比較するステップを含む、請求項11に記載の方法。
【請求項13】
前記比較は、センサ情報の収集されたオーバヘッドパーセンテージの前記一部分の各々と、ロボットのための推定された運動学的モデル(M、M)によって予測された対応する値との間の差を算出し、前記差またはその数値を閾値と比較することによって実行される、請求項12に記載の方法。
【請求項14】
連鎖における少なくとも1つのロボット(R、R)のリンクおよび/または関節の少なくとも1つを操作するステップ(c)は、
− 前記2つのロボット(R、R)のうちの1つのロボットの関節の位置調整器の少なくとも1つを停止し、それをもう1つのロボットによって操作させること、または
− 前記2つのロボット(R、R)の各々の関節の位置調整器の少なくとも1つを停止し、関節位置を外部から変化させること、または
− 前記2つのロボット(R、R)の各々の関節の位置調整器の少なくとも1つを停止し、関節位置を手動で変化させること
によって実行される、請求項1〜13のいずれかに記載の方法。
【請求項15】
少なくとも2つのロボット(R、R)と並列または直列にN個の追加ロボット(Nは自然数である)を接続するステップと、請求項1に記載の方法のステップを追加のN個のロボットの各々に対して実行するステップとをさらに含む、請求項1〜14のいずれかに記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボット較正(calibrate)方法およびロボットプログラミング方法に関する。
【背景技術】
【0002】
産業用ロボット工学(industrial robotics)の分野において、ロボットの物理的特性の知識は、ロボットの正確な位置を算出するために重要である。これらの特性はロボットの設計図表(diagram of robot design)によって規定されるが、ロボットの組立工程(assembling process)およびその構成部品の公差によって変動する。知識を精緻化し、それによってロボットの精度を向上するために、それを記述するモデルを較正する必要がある。
【0003】
ロボットのプログラミングのための幾つかの方法および装置が特許文献で提案されてきた。米国特許第6535794号明細書には、ロボットを較正するのに使用されるデータの誤差マップを作成するために既知の寸法を有する機械的測定アームを利用する、三次元座標測定機が開示されている。
【0004】
米国特許出願公開第2011/0022216号明細書は、ロボット座標系を有する少なくとも1つのロボットと、ポジショナ座標系を有しておりワークを保持しかつ回転軸を中心にワークを回転させることによってワークの向きを変えるように適応されたポジショナとを含む産業用ロボットシステム(industrial robot system)を較正するための方法および装置を開示している。ロボットの目標点は物体座標系に対してプログラムされる。装置は、ロボットコントローラと、ポジショナに配設された少なくとも3つの較正物体と、ロボットによって保持される較正ツールとを備える。較正物体の位置は物体座標系で既知である。ロボットコントローラは、ロボット座標系に対する較正物体の位置を決定し、ポジショナの回転軸の少なくとも3つの異なる角度について前記較正物体のうちの第1および第2物体の位置を決定し、軸の3つの角度に対する第1および第2較正物体の決定された位置に基づいてロボット座標系におけるポジショナの回転軸の方向を決定し、かつ較正物体の既知の位置と決定された位置との間の最良適合を実施することによって第1物体座標系とポジショナ座標系との間の関係を決定するように構成される。
【0005】
米国特許出願公開第2008/0188986号明細書には、運動学的ロボット・モデル・パラメータの決定を通して多関節ロボットの精度の向上を達成する方法およびシステムが開示されている。多関節ロボットは、ロボット・モデル・パラメータの変動に応じた基準物体の基準点の算出姿勢の変動に対し、ヤコビアン微分(Jacobian derivation)における微分のための連鎖律(chain rule for differentiation)を用いることによって、較正される。該方法はまた、2つのそのような基準物体およびそれらの間の既知の距離を利用して、長さスケールを確立し、こうしてロボットの1つのリンク長を知る必要性を回避する。結果として得られるモデルパラメータの精度を向上するための最適解を求めるために反復法が使用される。さらに、ツール取付機構フレームを定義するパラメータを含むロボットの端部関節パラメータ(end joint parameter)の決定が開示され、それはツールの交換をその後の較正無しに可能にする。
【0006】
米国特許出願公開第2008/0188983号明細書にも、多関節産業用ロボットの較正のための装置および方法が開示されている。
【0007】
米国特許第6070109号明細書は、ロボット基部に対して固定されたままである第1基準点がロボットアームに位置する第2基準点から一定距離にあるときに、そのことを示す較正センサを含む、ロボット較正システムに関する。ロボットアームは複数の向きを経て移動し、2つの基準点の間の一定距離が達成されるたびに、ロボット関節位置情報が決定される。好適な較正センサは、2つの基準点の間に延びるストリングを含み、ストリングは、ロボットアームの向きの結果としてストリングがピンと張られるたびに、信号発生器を作動させる。発生した信号は、2つの基準点が一定距離だけ離れていることを示す。決定されたロボットの関節位置は次いで、特定状況のニーズに応じて変化する較正係数(calibration factor)を決定するために使用される。例示的較正係数は、ロボットの運動学的情報における誤りを訂正し、ワークセル基準フレームを位置決めし、かつツール中心点基準フレームを位置決めするのに有用である。
【0008】
米国特許出願公開第2009/0157226号明細書には、ロボットおよびその周辺機器のための較正システムが開示されている。該システムは、ロボットまたはその周辺機器に取り付けられたエミッタを含む。エミッタはレーザビームを出射し、レシーバは、較正を可能にする位置で、レーザビームを受光するために、エミッタとレシーバとの間の寸法を決定するための計算が可能になるように、同じくロボットまたはその周辺機器に取り付けられる。
【0009】
米国特許第4753569号明細書は、コンピュータ誘導ロボット装置(computer guided robotic apparatus)を較正するための方法および装置に関する。ロボットアームに取り付けられるかワークステーションに固定された少なくとも1つのカメラは、ロボットアームまたはワークステーションの他方に固定された少なくとも3つのドットのパターンを含む目標を監視する。そのような監視は、ロボットアームが意図された動作を実行するためにワークステーションに接近するときに行われる。予め定められた目標パターンに対するずれの検知は、ロボットのコンピュータ化誘導システムをリセットするために、コンピュータに伝達される。
【0010】
このように、ロボットを較正する多くの方法が存在するが、それらは全て、ある種の追加的能動測定装置、すなわちセンサを備えた測定装置を必要とし、また前記測定装置をいかに使用するかについての専門的知識を必要とし、さらにそれらは前記装置の物理的特性の精度に依存する。
【発明の概要】
【0011】
したがって、本発明の目的は、実現が容易でありかつ外部の能動測定装置の使用を必要としない、多関節ロボットを較正する方法を提供することである。
【0012】
本発明のさらなる目的は、未較正ロボット間で作業プログラムを複製する方法を提供することである。
【0013】
本発明によると、上述および他の目的は、ロボットを較正する方法によって達成され、該方法は、
(a)各々のロボット(R、R)が2つのフランジすなわちベースフランジおよびツールフランジを接続する関節および/またはリンクを有して成る、少なくとも2つのロボット(RおよびR)を提供するステップと、
(b)少なくとも2つのロボット(R、R)から拘束連鎖(closed chain)を形成するステップと、
(c)連鎖におけるリンクまたは関節の少なくとも1つを操作し、それによって連鎖における他のリンクまたは関節の一部の操作を誘発するステップと、次いで、
(d)少なくとも2つのロボット(R、R)の各々の関節に関連付けられるセンサ情報に基づいて、各ロボット(R、R)の運動学的モデル(kinematic model)(M、M)を推定するステップと、
を含む。
【0014】
これによって、外部の能動測定装置の精度に依存しない較正方法が達成される。すなわちロボット自体だけが使用される。本発明の方法は、情報を得るためにロボットを拘束連鎖状に結合し、情報は次いでロボットの運動学的パラメータを調整するために使用され、すなわちロボットの運動学的モデルを更新するために使用され、それによってロボットは較正される。較正プロセスで使用される必要な情報は、利用可能な作業空間全体に分散された様々な構成で連鎖を調整することによって、すなわち連鎖における少なくとも2つのロボットの関節の少なくとも1つを操作し、それにより連鎖における他のリンクおよび/または関節の一部の操作を誘発することによって、生成される。次いで、拘束連鎖の特性および様々な連鎖構成におけるリンクおよび/または関節からの知識を用いることによって、較正、すなわち数学的運動学的モデルの推定が行われる。連鎖のスケーリングサイズを定義するために、少なくとも1つの距離または距離変化を知る必要がある。連鎖で使用されるリンクおよび/または関節は、解くことのできる連立方程式で表され、こうしてロボットを較正する。こうして、拘束連鎖の原理を使用することによって、ロボットの作業空間の大きい領域を探査することが可能であり、したがってこの高度の較正方法の結果は、前記ロボットの作業空間全体を表す。これは、ロボット自体以外の測定装置無しに幾つかのロボットの同時較正を可能にする。拘束連鎖のモデル表現を複数の物理的観測と比較することによって、モデルのパラメータを精緻化し、こうして較正することができる。
【0015】
ここでは、拘束連鎖において、各リンクが、拘束連鎖全体の制約を満たすように、リンク自体の制約によって誘導されることを利用する。これは、連鎖における位置、速度、加速度、および力等に適用される。この特性を利用することにより、各リンクの運動学的特性を推定し、こうしてロボットの運動学を較正することが可能である。
【0016】
本特許明細書全体を通して、関節という用語は、回転関節、直動関節、または球面関節を表すために使用することができることを理解されたい。関節の種類によっては、関節は回転および/または位置を制御かつ登録することができる。以下で、「位置」は回転および/または位置の両方を記述するために使用される。さらに、連鎖は、関節またはリンクではなく、関節であるリンクを含むことができることを理解されたい。
【0017】
本発明に係る方法のある実施形態では、少なくとも2つのロボットを提供するステップ(a)は、少なくとも2つのロボットアームを有する単一のロボットを提供することによって行うことができ、次いで前記アームの各々を1つのロボットとして取り扱うことができる。この種のロボットは、ツールフランジと同数のベースフランジを持たない。
【0018】
ロボットを較正する方法のさらなる実施形態では、センサ情報は、ロボット関節および/またはリンクを駆動するために使用されるのと同じセンサから得られる。
【0019】
ロボットを較正する方法のさらなる実施形態では、センサ情報は、ロボット関節および/またはリンクを駆動するために使用されるのと同じセンサのみから得られる。
【0020】
ロボットを較正する方法のさらなる実施形態では、ステップ(c)は、
− 関節位置を変更し、それによって少なくとも2つのロボット(R、R)の各ロボットの関節の位置(Q)を変更するサブステップと、
− 対応する位置対(<RQ、RQ>)を収集するサブステップと、
を含む。
【0021】
ロボットを較正する方法のさらなる実施形態では、センサ情報は関節の位置(Q)に関する情報であり、ステップ(d)は、収集された位置対(<RQ、RQ>)に基づいて運動学的モデル(M、M)を推定することを含む。
【0022】
ロボットを較正する方法のさらなる実施形態では、センサ情報は、角度、位置座標、もしくはそれらの派生物のいずれか、および/またはそれらのいずれかの変化を含む。
【0023】
ロボットを較正する方法のさらなる実施形態では、センサ情報は、力、トルク、もしくはそれらの派生物のいずれか、および/またはそれらのいずれかの変化を含む。
【0024】
ロボットを較正する方法のさらなる実施形態では、少なくとも2つのロボット(R、R)から拘束連鎖を形成するステップ(b)は、前記少なくとも2つのロボット(R、R)を少なくともそれらのベースフランジで、かつ/またはそれらのツールフランジで、物理的に接続することによって実行される。
【0025】
ロボットを較正する方法のさらなる実施形態では、少なくとも2つのロボット(R、R)から拘束連鎖を形成するステップ(b)はさらに、少なくとも2つのロボット(R、R)の間の少なくとも1つの距離を定めるステップを含む。
【0026】
ロボットを較正する方法のさらなる実施形態では、少なくとも2つのロボット(R、R)から拘束連鎖を形成するステップ(b)はさらに、少なくとも2つのロボット(R、R)の間の少なくとも1つの接続方向を定めるステップを含む。
【0027】
ロボットを較正する方法のさらなる実施形態では、少なくとも2つのロボット(R、R)から拘束連鎖を形成するステップ(b)は、測定装置を使用して、少なくとも2つのロボット(R、R)の間の相対位置を測定するステップを含む。
【0028】
ロボットを較正する方法のさらなる実施形態では、測定装置は、少なくとも2つのロボット(R、R)の部分の間の距離を測定するように構成される。
【0029】
ロボットを較正する方法のさらなる実施形態では、測定装置は、少なくとも2つのロボット(R、R)の部分の間の方向を決定するように構成される。
【0030】
ロボットを較正する方法のさらなる実施形態では、測定装置は、少なくとも2つのロボット(R、R)を接続する少なくとも1つのボールバーである。
【0031】
さらなる実施形態では、センサ情報は、較正の静的部分および動的部分の両方に関してモデルを満たすように、拘束連鎖におけるリンクによってもたらされる任意の情報を含み、例えば位置および力の情報ならびにその派生物があるが、それらに限定されない。
【0032】
他の種類のセンサ情報を使用できることは理解されるが、角度を使用することは、回転関節を持つロボットの関節の位置を表す非常に実用的な方法である。ロボットの寸法だけでなく、力およびトルクの読み/推定値ならびに/または運動量計算も、本発明の方法に従って較正することができる。
【0033】
連鎖を拘束するための情報が提供される限り、ロボットを相互に物理的に接続する必要があることは、制約ではない。したがって、さらなる好適な実施形態では、少なくとも2つのロボットから拘束連鎖を形成するステップ(b)は、少なくとも2つのロボットをそれらのベースフランジおよびそれらのツールフランジで一体に固定するステップを含む。これは2つの明確に定義された距離をもたらし、それによってモデルをスケーリングすることができる。別の可能性は、ロボットの統計的知識を用いて、(例えばチホノフ正則化法によって)モデルをスケーリングすることである。この統計的知識は、同一種類の多数のロボット、および/またはロボット自体の製図(technical drawing)に基づくことができる。
【0034】
さらなる実施形態では、少なくとも2つのロボットから拘束連鎖を形成するステップ(b)は、連鎖を拘束するために使用される情報以外の情報または特性をもたらす連鎖内の余分のリンクを使用するステップを含む。例えばボールバー(ball bar)は、較正で使用するために調整することのできる少なくとも1つの寸法の特性をもたらす、ロボットを接続するリンクの距離を決定または測定することができる。
【0035】
さらなる実施形態では、少なくとも2つのロボットから拘束連鎖を形成するステップ(b)は、測定装置を用いて少なくとも2つのロボットの相対位置を測定するステップを含む。例えば測定装置は、ロボットのフランジ間の距離を測定するボールバーとすることができる。
【0036】
さらなる実施形態では、少なくとも2つのロボットのベースフランジまたはツールフランジは、ロボットの接続された関節間の依存性を低減するために、同一回転軸を共有しない。これは全てのリンクを較正する可能性を低減するが、拘束連鎖をモデル化するために、必要な運動学的特性を推定することができるので、依然として使用可能である。
【0037】
さらなる実施形態では、運動学的モデルを推定するステップ(d)はさらに、少なくとも2つのロボット間のそれらのベースフランジおよびそれらのツールフランジにおけるオフセットの推定または測定に基づく。これにより、これらの2つの距離の一方または両方を使用してモデルのサイズをスケーリング(scaling)することが可能になる。代替的可能性は、ロボットの統計的知識を用いて、(例えばチホノフ正則化法(Tikhonov regularization)によって)モデルをスケーリングすることである。
【0038】
さらなる実施形態では、運動学的モデル(M、M)を推定するステップ(d)はさらに、連鎖の少なくとも1つの部分に関する統計情報に基づく。
【0039】
さらなる実施形態では、統計情報は、統計情報無しに解くべき方程式の数を超えるセンサ情報に基づいて、モデル(M、M)を推定するために使用される。
【0040】
さらに別の好適な実施形態では、本発明の方法はさらに、少なくとも2つのロボットの各々の関節に関連付けられる充分なセンサ情報が、ステップ(d)の後で、しかしステップ(e)の前に、得られるか否かを評価するステップを含む。これにより、未知数の数は解くべき方程式の数を超えないことが達成される。
【0041】
該方法のさらなる好適な実施形態はさらに、充分な位置対データ(<RQ、RQ>)が、ステップ(d)の後で、しかしステップ(e)の前に、得られるか否かを評価するステップと、次いで、
− 運動学的モデルを推定するために充分な位置対データ(<RQ、RQ>)が得られない場合、ステップ(d)を繰返し、あるいは
− 運動学的モデルを推定するために充分な位置対データ(<RQ、RQ>)が得られる場合、ステップ(e)を実行する、
ことを含む。
【0042】
本発明のさらなる実施形態では、該方法は、運動学的モデルを更新するために方程式を解くために必要なものに加えて、センサ情報のオーバヘッドパーセンテージ(overhead percentage)(OPI)を収集するステップを含む。これにより、運動学的モデルの安定した収束が確保される。
【0043】
さらなる実施形態では、該方法はまた、
− センサ情報の前記オーバヘッドパーセンテージ(OPI)の少なくともわずかな部分を、運動学的モデルを更新するために使用しないでおくステップと、
− センサ情報の前記オーバヘッドパーセンテージ(OPI)の前記わずかな部分をデータ記憶装置に保存するステップと、
− センサ情報の前記オーバヘッドパーセンテージ(OPI)の前記わずかな部分を用いて較正を検証するステップと、
をも含む。
【0044】
OPIの前記わずかな部分はモデルを更新するために使用されないので、それを使用してモデルを検証すること、すなわち位置の角度が、推定されたモデルによって予測されたものと一致するか否かを検証することができる。こうして、較正を検証するステップは、ある実施形態では、センサ情報の収集されたオーバヘッドパーセンテージの前記わずかな部分を、ロボットのための更新された運動学的モデルによって予測された対応する値と比較するステップを含むことができる。好ましくは、前記比較は、センサ情報の収集されたオーバヘッドパーセンテージの前記わずかな部分の各々と、ロボットのための推定運動学的モデルによって予測された対応する値との間の差を算出し、前記差またはその数値を閾値と比較することによって実行される。さらなる実施形態では、センサ情報の前記オーバヘッドパーセンテージ(OPI)は10%から200%の間の範囲、好ましくは20%から80%の間、さらにいっそう好ましくは20%から60%の間、または代替的に10%から20%の間の範囲、または20%から40%の間の範囲、または40%から60%の間の範囲、または60%から80%の間の範囲、または80%から100%の間の範囲、または100%から120%の間の範囲、または120%から140%の間の範囲、または140%から160%の間の範囲、または160%から200%の間の範囲である。
【0045】
ある実施形態では、該方法はさらに、更新された運動学的モデルを、ロボットに作動的に接続されたロボットコントローラに配置することのできるデータ記憶装置に、または別の装置に保存するステップを含む。
【0046】
さらなる実施形態では、連鎖における少なくとも1つのロボットのリンクおよび/または関節の少なくとも1つを操作するステップ(c)は、前記2つのロボットのうちの1つのロボットの関節の位置調整器の少なくとも1つを停止し、それをもう1つのロボットによって操作させることによって実行される。
【0047】
さらなる実施形態では、連鎖における少なくとも1つのロボットの関節の少なくとも1つをロボットの全作業空間の少なくとも一部分で操作するステップ(c)は、前記2つのロボットの各々の関節の位置調整器の少なくとも1つを、例えば全部を停止し、関節位置を外部から、例えばオペレータが手動で変化させることによって実行される。
【0048】
さらに別の実施形態では、連鎖における少なくとも1つのロボット(R、R)の関節の少なくとも1つを操作するステップ(c)は、前記2つのロボット(R、R)の各々の関節の位置調整器の少なくとも1つを停止し、関節位置を手動で変化させることによって実行される。
【0049】
さらなる実施形態では、運動学的モデル(M、M)は、変換を定義するパラメータによって決定される。
【0050】
さらなる実施形態では、パラメータは2種類のデナビット‐ハーテンバーグ(Denavit−Hartenberg)パラメータである。2種類のデナビット‐ハーテンバーグパラメータはそれぞれ、シリング(Schilling)パラメータおよび並列変形パラメータ(parallel variant parameter)によって表すことができる。
【0051】
本発明のさらに別の実施形態では、該方法はさらに、少なくとも2つのロボット(R、R)を作動させる力を調整するステップを含む。さらなる実施形態では、各々のモデル(M、M)は各関節の変換を含む。
【0052】
既述の通り、少なくとも2つのロボットの運動学的モデルは、2種類のデナビット‐ハーテンバーグパラメータによって決定されることが好ましい。2種類のデナビット‐ハーテンバーグパラメータはそれぞれ、シリングパラメータ、および平行回転軸用に設計された変形によって表すことができる。以下、変形を並列DHパラメータと呼ぶ。4つのパラメータによる選択された表記法は、回転軸間の変換を既述する最小限かつ完全な方法である。しかし、他の表記法を使用することもできる。
【0053】
該方法は、さらなる実施形態では、少なくとも2つのロボットを作動させる力を調整するステップをさらに含むことができる。好ましくは、各々のモデルは、少なくとも2つのロボットの各々の各関節の変換を含む。
【0054】
上述した方法は、3つ以上のロボットを含むように拡張することができる。したがって、さらなる実施形態では、該方法は、少なくとも2つのロボットと並列または直列にN個の追加ロボット(Nは自然数である)を接続するステップと、本発明の方法のステップを追加のN個のロボットの各々に対して実行するステップとをさらに含む。
【0055】
さらなる実施形態では、前記少なくとも2つのロボット(R、R)は、単一のロボットの2つのロボットアームである。さらなる実施形態では、前記アームの少なくとも1つは、多関節ロボットアーム(articulated robot arm)とすることができる。さらに、前記アームの少なくとも1つは、直動関節(prismatic joint)を含むことができる。前記単一のロボットは少なくとも1つのベースフランジおよび少なくとも2つのツールフランジを有し、いかなる場合もベースフランジより多くのツールフランジを有する。
【0056】
別のロボットから直接作業プログラムを使用するには、両方のロボットのプロポーションが同一であること、および位置センサが同等に調整されていることが必要である。これは達成することが非常に難しいので、ロボットの間でプログラムを複製することは難しい。したがって、本発明のさらなる目的は、おそらく未較正のロボット間でプログラムを複製する方法を提供することである。
【0057】
この目的およびさらなる目的は、第1ロボットRから第2ロボットRへ作業プログラムを変換する方法に関する本発明の第2態様によって達成される。各ロボット(R、R)は、2つのフランジすなわちベースフランジおよびツールフランジを接続する関節を有し、該方法は、
(a)第1ロボットRを第2ロボットRと置き換えるステップと、
(b)第1ロボットRに関連付けられる作業プログラムRPを提供するステップと、
(c)作業プログラムRPに従って多数の位置または角度を選択し、かつ第2ロボットRをこれらの位置に移動させ、それによって位置または角度対データセット<RQ、RQ>を提供するステップと、次いで、
(d)位置対データセット<RQ、RQ>を使用して、前記少なくとも2つのロボットの運動学的モデル(M、M)、ベースフランジオフセット(Tbase)、およびツール中心点オフセット(Ttcp)を推定するステップと、次いで、
(e)前記推定された運動学的モデル(M、M)に基づいて作業プログラム変換を実行するステップと、
を含む。
【0058】
しばしば、1つのロボットを新しいロボットと交換する必要性が生じる。しかし、新しいロボットの較正を実行する代わりに、「古い」ロボットの関節角度を数学モデルにおける連鎖の半分として使用し、「新しい」ロボットの対応する角度を連鎖の残り半分として使用することができる。これにより、既述の通り、上記ステップ(c)で1組の角度対データが達成され、それはロボットの運動学的モデルを更新するために使用される。
【0059】
本発明の第2態様のある実施形態は、適切に選択された許容範囲内でプログラムを第2ロボットで実行することができるか否かを評価するステップをさらに含む。
【0060】
本発明の第2態様のさらなる実施形態は、適切に選択された許容範囲内でプログラムを第2ロボットで実行することができない場合、作業プログラムRPに従って追加数の位置を選択し、第2ロボットRをこれらの追加位置に移動させ、それによって延長位置対データセットを提供し、次いでこの延長位置対データセットを用いてステップ(d)および(e)を実行するステップをさらに含む。
【0061】
本発明の第2態様のさらなる実施形態は、推定された運動学的モデル(M、M)に基づいて別の作業プログラムを変換するステップをさらに含む。
【0062】
本発明の第2態様のさらなる実施形態は、前記推定された運動学的モデルに基づいて作業プログラムの変換を実行するステップ(e)が、
− 第1ロボットRに関連付けられる推定された運動学的モデルMでRP内の全てのRQに順運動学(forward kinematics)を適用し、結果としてプログラムRKを生じるサブステップと、
− 第2ロボットRの推定された運動学的モデルMでRKに逆運動学(inverse kinematics)を適用し、それによって位置RQをもたらすサブステップと、次いで、
− プログラムRPでRQを対応するRQに置き換え、それによって第2ロボットRに関連付けられる作業プログラムRPをもたらし、それによりプログラム変換を完了するサブステップと、
を含む。
【0063】
本発明の第2態様のさらなる実施形態では、運動学的モデル(M、M)は、変換を定義するパラメータによって決定される。
【0064】
本発明の第2態様のさらなる実施形態では、運動学的モデル(M、M)は、3種類のデナビット‐ハーテンバーグパラメータによって決定される。
【0065】
本発明の第2態様に係る方法のさらなる実施形態では、3種類のデナビット‐ハーテンバーグパラメータは、シリングパラメータ、並列DH変形パラメータ、および平行移動を伴うロール‐ピッチ‐ヨー回転パラメータ(Roll−Pitch−Yaw rotation with translation parameters)(以下、RPYという)によって表される。
【0066】
本発明の第2態様に係る方法の実施形態では、RPYパラメータは、ロボットの最後の関節を調整するために使用される。全回転および平行移動を調整する他の表記法も使用することができる。しかしRPY回転は、小さい回転変化に対する6パラメータの最小限かつ完全な表記法である。
【0067】
本発明の第2態様のさらなる実施形態では、運動学的モデル(M、M)は、予め定められたモデルを出発点として使用することによって推定される。これらの予め定められたモデルは、例えば上述した種類の統計情報を用いることによって決定された近似モデルとすることができる。
【図面の簡単な説明】
【0068】
本発明の本質及び利点のさらなる理解は、明細書の残りの部分及び図面を参照して実現されることができる。以下において、本発明の好適な実施態様が図面を参照して詳細に説明される。
【0069】
図1図1は、シリング・デナビット‐ハーテンバーグ表記法を示す。
【0070】
図2図2は、並列デナビット‐ハーテンバーグ表記法変形を示す。
【0071】
図3図3は、2つのロボットの拘束連鎖構成を示す。
【0072】
図4図4は、2つのロボットの代替的拘束連鎖構成を示す。
【0073】
図5図5は、拘束連鎖構成で接続された2つの6リンクロボットの変換を概略的に示す。
【0074】
図6図6は、2つのロボットの未較正連鎖の表現を概略的に示す。
【0075】
図7図7は、モデルのスケールを定めるために距離をいかに使用することができるかを概略的に示す。
【0076】
図8図8は、2つの回転軸間の共通法線を定めるアダプタを示す。
【0077】
図9図9は、表1の変換がシステム内で行われる場所を示す。
【0078】
図10図10は、R個のロボットを較正する方法の実施形態を説明する流れ図を示す。
【0079】
図11図11は、ロボットを較正する方法の最高レベルの実施形態を示す。
【0080】
図12図12は、較正ループの実施形態の自動バージョンの流れ図を示す。
【0081】
図13図13は、較正ループの実施形態の手動バージョンの流れ図を示す。
【0082】
図14図14は、非同期ロボットのセンサ情報を保存する方法の実施形態の流れ図を示す。
【0083】
図15図15は、同期したロボットのセンサ情報を保存する方法の実施形態の流れ図を示す。
【0084】
図16図16は拘束連鎖を示し、ここで新しいロボットは古いロボットの仮想画像と共に示されている。
【0085】
図17図17は、表2の変換がシステム内で行われる場所を示す。
【0086】
図18図18は、プログラム変換で使用されるデータ対を収集するための流れ図の実施形態を示す。
【0087】
図19図19は、プログラム変換のための流れ図の実施形態を示す。
【0088】
図20図20は、プログラム変換のための方法の実施形態の流れ図を示す。
【0089】
図21図21は、関節の角度を定めるための方法の実施形態の流れ図を示す。
【0090】
図22図22は、未較正ロボット間のプログラム変換を実行する方法の実施形態の流れ図を示す。
【発明を実施するための形態】
【0091】
本発明の例示的な実施態様が示される添付図面を参照して本発明がより完全に以下に説明されるだろう。しかし、本発明は異なる形態で実現されることができ、ここに記載された実施態様に限定される解釈されるべきでない。むしろ、これらの実施態様は、この開示が完全かつ完成したものであるようにかつ完全に当業者に本発明の範囲を完全に伝達するように与えられる。同様の参照番号は、全体を通して同様の要素を示す。従って、要素は、各図の説明に関して詳細に述べられないだろう。
【0092】
古典的運動学を使用してロボットをモデル化する。これは、ロボット関節からの情報を、それらの関節を比較可能にするために、直交座標系に移し替えることを可能にする。
【0093】
【0094】
ロボットの表現
ロボットは、2種類のデナビット‐ハーテンバーグ(DH)パラメータによりモデル化される。第1種類のDHは、z軸が平行であるときに特異点を有する表記法であるため(下の方程式1を参照)、シリング表記法(内容全体を参照によって本書に組み込む、R.J.Schilling,「Fundamentals of Robotics:Analysis and Control」,Simon & Schuster Trade,1st ed.1996を参照)を用いて、2つの非平行なz軸間の変換を記述する。
【0095】
第2種類は、この特異点を回避するためにDH並列変形を使用する(下の方程式2を参照)。並列DH変形は元来のDHと同一原理を利用するが、最初のy軸と次のz軸がそれぞれ平行である場合に特異点を有する。最初のz軸との垂直交点までの距離がパラメータとして使用されるので(図1の図解を参照)、シリングDHの特異点は最初のz軸と次のz軸との間の法線によって定義される。並列DH変形の特異点はシリング表記法と同様に定められるが、最初のy軸と次のz軸との間に法線を使用することによって特異点は移動する(図2参照)。
【0096】
各関節要素に対し正しい表記法を選ぶことにより、DHパラメータの特異点の無いロボットの表現がもたらされる。
【0097】
拘束連鎖モデル
表現は連鎖内の各要素を1つのモデルに結合する。モデルは拘束連鎖の物理的特性を反映し、各要素を互いに関連させることを可能にする。ロボットを接続するために用いられる装置に応じて、様々な手法を用いることができる。基本的な設置において、ツールフランジは剛性の固体アダプタ2を介して接続され、ベースフランジは剛性の固体アダプタ4と接続され、連鎖内の全ての関節は、上述の通り、DHパラメータによって表される。これは、システムにおける関節の回転軸を相互に対して記述する最小限の完全な表現であるという利点を有する。拘束連鎖においてアダプタ2および4を介して互いに接続された2つのロボット6および8を示す、図3の図解を参照されたい。図4には、ロボットのツールフランジがアダプタ2を介して接続された、2つのロボット6、8の代替的拘束連鎖構成が示されている。ベースフランジ10は表面に取り付けられており、そこからベースフランジ10間の距離を決定することができ、それは「連鎖を拘束する」ための充分な情報である。図3および図4には、Universal Robots社によって製造されたUR5型の2つの産業用ロボット6および8が示されている。
【0098】
高度連鎖結合
より高度のアダプタを使用して、ツールおよびベースフランジ10を接続することができる。好ましくは、モデルは使用する装置を反映するように構成される。ロボット6、8のベースフランジ10を接続する高度の方法の実施例は、ロボット6、8を既知の距離だけ変位させることのできる直動関節を含むことができる。より高度の関節を連鎖に追加する別の実施例は、ボールバーまたは追加の関節により行うことができる。ボールバーは単一ロボットの較正用の一般的な公知のツールである(内容全体を参照によって本書に組み込む、M.R.Driels:Using passive end‐point motion constraints to calibrate robot manipulators,Journal of Dynamic Sytems,Measurement,and Control,115(3):560〜566;1993を参照されたい)。この方法は、ボールバーの一端を固定位置に、他端をロボットに取り付けることによって動作する。これは、全ての観測が固定位置に対して行われ、したがってそれによって制限されることを意味する。固定位置のため、動きもまた制限される。本発明の文脈で装置が使用される場合、各端は各ロボット6、8に取り付けられ、したがって測定は固定位置に制限されない。これは、ロボット6、8の作業空間全体に関連する測定を行う可能性をもたらす。
【0099】
一部のロボットは複数の肢部を有する。それらを個々のロボットアームとして取り扱うことにより、本特許明細書に記載する本発明に係る方法を使用して、追加的能動測定装置無しにこれらの肢部を較正することができる。
【0100】
本発明に係る方法は、図6に示す通り、拘束連鎖の原理に基づく。この原理をモデルに移し替えることによって、追加的測定装置の必要が無く、フィードバックが埋め込まれる較正方法を達成することができる。次いでそれを数学的にモデル化して、拘束連鎖の原理を満たすようにモデルを調整し、こうしてロボット6、8の物理的関節の数学モデルを較正することができる。連鎖を解放し、次いで2つの関節端部間の差を算出することによって、数学的にモデルにおける誤差が算出される。図7の図解を参照されたい。誤差を決定するために、ロボットは物理的に切り離されない―これは純粋に数学的技巧である。運動学的モデルの調整プロセスは、ソルバ(solver)を正しい解に導く連立方程式で作業空間全体を記述するために、ニュートン‐ラフソン法(Newton−Raphson approach)により、ロボット6、8から充分な観測結果を収集することによって行われる。非常に多くの観測結果、すなわちセンサ情報が収集されて、優決定連立方程式(over−determined system of equations)が達成され、それにより正しい解への安定収束が導かれることが好ましい。
【0101】
最小二乗関数
好ましくは優決定の連立方程式は、二乗誤差を表す最小二乗関数によって解かれる。方程式3において、変換は、図7に示された開いた連鎖における関節の誤差を表す。
【0102】
位置誤差は、誤差の平行移動部(error’s translation part)の二乗長さを計算することによって考慮される。方程式4を参照されたい。
【0103】
回転誤差は軸角表記法AAによって算出される(Robert J Schilling:Fundamentals of Robotics:Analysis and Control,Simon & Schuster Trade,1st edition,1996を参照)。角度の誤差は、誤差回転部からAAを計算することによって求められる。方程式5を参照されたい。
【0104】
結果的に得られる最小二乗方程式は、N個の観測結果に対する方程式4および5の二乗和である。方程式6を参照されたい。
これは図6に示すように連鎖端部間の誤差間隙を表す。
【0105】
制約条件
モデルを適切にスケーリングするために、モデルにおける既知の距離または距離変化を持つ必要がある。これは、図7のように三角法によって表すことができる。図7では、三角形の角度は同じであるが、スケールは異なる。モデルのスケールファクタを推定する方法は、既知の距離を定義しかつ固定することのできるモデルを実現するか、あるいは使用されているモデルで固定することのできる距離を設計することによる。別の可能性は、ロボットの期待寸法に関する統計情報を使用し、かつそれを使用してスケールの推測を調整することである。これは例えばチホノフ正則化法によって行われる。
【0106】
観測結果の収集
上述の通り、該方法を使用するためには、物理的連鎖からの観測結果を収集しかつ保存して、数学的表現でそれを模倣することが必要である。観測結果はオペレータの監督下で手動的に、または作業空間を自律的に動き回るロボットによって自動的に、収集することができる。作業空間全体に分布する充分な測定値を収集する必要がある。これは、較正が使用された作業空間を表すと想定することしかできないという事実による。ロボット6、8を相互に接続して従動させる必要があるので、一部の関節の位置調整器は作動を停止し、他の関節の位置調整器によって操作することができることがさらに好ましい。較正の欠如のため運動学が不明であるので、逆運動学を使用することなくロボット6、8の連鎖を操作する必要がある。
【0107】
評価
最終較正の信頼できる評価は、推定数学モデルを使用し、それを観測結果と比較することによる。これらの観測結果は、較正手順に使用されかつロボットの作業空間全体に分布する観測結果とは独立していることが重要である。較正からの観測結果を使用して較正を評価する場合、結果を支持するための新しい情報が追加されていないので、結果は信頼できない。結果の品質に対する別の信頼性指標は、較正を物理的な既知のパラメータについて調整させ、その後でそれを既知の値と比較することである。
【0108】
ロボット6、8の関節を拘束連鎖に接続させることにより、位置の決定に関係するパラメータ以外のパラメータを調整する可能性が開ける。これらのパラメータの例は、連鎖における力に関係するパラメータの調整とすることができる。
【0109】
較正実施例
この実施例の目的は、本発明に係る方法を、出願人であるUniversal Robots社によって製造された特定のロボットでどのように使用することができるかを例証し、説明することである。セットアップは、2つのUR‐6‐85‐5‐A産業用シリアルロボット6、8およびツールフランジおよびベースフランジを接続する2つの固体受動アダプタを含む。図8には、ツールフランジを接続するために使用される固定アダプタ2だけが示される。この特定のタイプのロボット6、8は、平行である2つの回転関節および前の回転軸に対し垂直な4つの回転関節に分割される、6度の自由度を有する。2つのロボット6、8の純粋に静的な運動学的較正を行うには、それらを互いに対して固定された位置に取り付ける必要がある。連鎖を拘束するアダプタ2は、接続された端部関節が同一回転軸を共有すると関節間に何らかの望ましくないモデル依存性が導入されるので、共有しないように設計される。この実施例では、セットアップをシリングDH表記法に対し最適化するために、ツールフランジおよびベースフランジは、既知の変位を置いてかつ90度回転して接続される。拘束連鎖モデルのスケールを定義するために、ロボットに関する統計情報またはモデルの固定寸法を使用することが可能である。この実現では、既知の固定寸法を使用することを選択した。既知の寸法は、2つの回転軸18、20の間の共通法線16の長さである。この法線の長さはDH「a」パラメータによって直接表され、したがって定義しかつ固定することができる(図8参照)。
【0110】
表現
拘束連鎖のモデルは、図9に示すように各関節の変換を含む。両方のロボットに同一表現を使用するために、誤差計算は変化するが、下の方程式7の通り、依然として同一誤差を算出する。
【0111】
ロボット間の接続は、DHの拡張バージョンにより表すことができる(下の方程式8および9参照)。この表現は、変換をDHと同様の仕方で表すことを可能にし、同一利点をもたらす。
【0112】
拘束連鎖モデルの各変換のためのパラメータを下の表1に記載する。固定距離はモデルにおいて「a」パラメータにより表される(表1参照)。同じ設計上の技巧は、ツールフランジおよびベースフランジ両方の接続に対して行われ、それらは両方とも既知の法線の長さにより固定することができる。上述の通り、システムに複数の予め分かっているパラメータを有することが好ましいが、必須ではない。これは、パラメータの1つを、較正の結果を評価するためのグラウンドトゥルース(ground true)として含めることを可能にする。
【0113】
【0114】
【0115】
図10は、R個のロボットを較正する方法の実施形態を説明する流れ図を示す。Rは2以上の自然数である。図示した実施形態は、複数の関節、ベースフランジ、およびツールフランジを有するR個のロボットを提供するステップを含む。ステップ22で、R個のロボットから拘束連鎖が形成される。次いでステップ28で、対応する位置対(<RQ、RQ>)が収集される。次いでステップ30で、モデルを推定するために充分なデータが収集されたか否かが評価される。否である場合、次いでステップ26で、ロボットの関節位置が変更され、ブロック28に示される通り、対応する位置対(<RQ、RQ>)が収集される。次いで再びステップ30で、充分なデータが収集されたか否かが評価される。否である場合、矢印29によって示される通り、ステップ26および28が繰り返される。しかし、充分なデータが収集された場合には、ステップ32によって示される通り、収集された位置対データセット<RQ、RQ>の知識を使用することによって、モデルが更新または精緻化または推定される。これらの更新されたモデルは次いでステップ34で保存され、それによって較正は、ステップ36によって示される通り、終了する。
【0116】
図11は、本発明に係るロボットを較正する方法の最高レベルの実施形態を示す。ステップ38で該方法は開始され、次いでステップ40で、ロボットは一緒に、拘束運動学的連鎖状態に取り付けられ、次いでステップ42で、完全な較正に出発点を与えるために、高不確実性パラメータについて本発明の実施形態に係る較正ループが実行される。このループが成功すると、ステップ44で完全なモデルが決定される。これが成功すると、ブロック46によって示される通り、較正が行われる。しかし、矢印50および52によって示される通り、ステップ42または44のいずれかが失敗すると、ブロック48によって示されるように較正は失敗する。
【0117】
図12および図13は、図11の流れ図に示されたブロック42および44を実現するための2つの代替的方法を示す。
【0118】
図12は、図11の較正ループ42および44の自動バージョンの実施形態を示す。ステップ54で、次の目標関節角度が生成またはロードされ、次いでステップ56で、1つを除く全てのロボットが、目標角度を目指して力制御するように設定される。次いでステップ58で、最後に残ったロボットは、位置制御により目標角度を目指すように設定される。次いでステップ60で、同一または略同一の測定値を回避するために、センサ情報の変化が、適切に選択された閾値より大きいか否かが評価される。これが真である場合には、ステップ62によって示される通り、センサ情報は保存される。他方、センサ情報の変化が前記適切に選択された閾値より低い場合には、次のステップ64で、較正を進めるために充分なデータが収集されたか否かが評価される。これが真である場合には、ステップ66によって示される通り、ロボットは動きを停止し、その後、ステップ68によって示される通り、較正が実行され、すなわちモデルが精緻化される。次いでステップ70で、較正が適正であるか否かが評価される。これが真である場合には、ステップ72によって示される通り、較正ループが実行される。ステップ64の評価で、較正を完了するために充分なデータが収集されていないことが示された場合には、ステップ74で、ロボットがまだ動いているか否かが検査され、肯定ならば、ステップ60〜64が繰り返される。ロボットが動いていない場合には、ステップ76で、ロボットが予想外に停止したか否かが確認される。これが真である場合には、ステップ80で、物理的不都合が無いかどうか、例えばロボットが周囲環境またはロボット自体と衝突したか否か、誤り検査が行われる。ステップ76における評価の結果が否定的であった場合には、ステップ54以降が繰り返される。
【0119】
図13は、図11の較正ループ42および44の手動バージョンの実施形態を示す。本方法のステップの多くは、図12に示した方法のステップと同様であるので、以下では相違点だけを説明する。本質的な相違は、ステップ60の前に、ステップ81で全てのロボットが力制御するように設定され、次いでステップ82で関節角度が手動で操作されることである。
【0120】
図14および図15は、図12および図13でステップ62によって示される通り、センサ情報を保存するための流れ図を示す。図14は非同期ロボットのセンサ情報を保存するための流れ図を示し、図15は同期ロボットの場合の流れ図を示す。図14の最初のステップ84で、ロボットの動きは中断され、次いでステップ86で、ロボットが停止しているか否かが評価される。肯定ならば、ステップ88で、センサ情報、例えば関節角度は保存され、その後、ステップ90で、ロボットの動きは続行される。しかし、ロボットが同期している場合には、図15の流れ図でサブステップ88によって示される通り、センサ情報は直接保存される。これが可能になるのは、同期化により、全てのセンサからの情報が同時に収集されることが確保されるためである。これが同時に行われない場合、収集されたデータセットは拘束連鎖を反映せず、その場合測定値は使用できない。ロボットが同期しない場合、無矛盾性を確保するために、位置対が収集される前にロボットを停止させる必要がある。
【0121】
プログラム複製の実施例
本節は、一方または両方のロボットが較正されていない場合に、1つのロボットから別のロボットに作業プログラムを複製するために、いかに拘束連鎖法を使用することができるかについての実施例として記載する。この実施例は、複製されるプログラムを利用する。複製されるプログラムはロボット構成のウェイポイント(way−point)を含む。ここで拘束連鎖は、ウェイポイントを使用して連鎖の第1部分を表し、次いで、第1ロボットのタスクを実行するように意図された新しいロボットで同じウェイポイントを再教示することにより、数学的に連鎖を拘束することによって得られる。図16を参照されたい。ここで新しいロボット6は、古いロボット8の仮想画像と共に示される。
【0122】
データ
生成された参照データは、複製されるロボットのプログラムに基づく。データは、プログラムのタスクに不可欠の主要なウェイポイント位置を再学習することによって手動的に収集される。これらの本質的な位置はプログラムによって精度が変化することがあるが、大抵の場合、最も明確でありかつ複製が最も容易な位置である。これらの本質的な位置を再学習することにより、新しいロボットの結果的に得られるプログラムが、これらの主要位置で合致することも達成される。同じ2つのロボット間で幾つかのプログラムを複製しようとする場合には、これらの主要位置を再使用することができ、それによってロボットの間の高レベルのコンプライアンスが導かれる。タスクおよびロボットツールによっては、正しい位置および回転を決定することが難しい場合がある。特に回転は、ツールが回転に依存しない場合、正しく複製することが難しい場合がある。これは知識のレベルを低減させることがあり得るが、回転に依存しないことからこれらのタスクにおける回転はそれほど重要ではないので、依然として使用可能である。ロボットのタスクによっては、収集されたデータは典型的には、ロボットの本質的な動作が行われるグループ別に分類される。これは、2つのロボットの作業空間の間の関係が部分的にしか分からないこと、および正確な対応構成が主要位置付近でしか得られないことを意味する。しかし、他のウェイポイントはロボットのタスクにとって不可欠ではないので、大抵の場合、ロボットがプログラムのタスクを実行するには、それで充分である。プログラムを元のロボットに逆複製する必要がある場合には、対応する同じ主要位置を再使用することができる。これは、元のプログラムのみならず、その変更をも元のロボットに逆移植することを可能にする。これは、同様のロボットセルで同一プログラムが使用される場合に特に興味深く、それにより、柔軟性を失うこと無くプログラムを複製することによって、生産のアップスケーリングが可能になる。
【0123】
ロボットベースの表現
本実施例では、両方のロボット6、8に同一ツールが取り付けられること、およびツール中心点の位置が同一であることを想定している(図16参照)。ロボット6、8の2つのベースの回転中心の間の変換の調整は、オイラ角(Euler angle)、RPY、および3D位置ベクトルによって行われる。オイラ角を使用することにより、できるだけ少数のパラメータによる表現が達成され、それは、ロボットの変位の回転に対する調整がわずかまたは皆無であり、そのための特異点が無く、かつ制約条件付き最適化アルゴリズム(constrained optimization algorithm)を使用する必要性が回避される。選択された表現は下の方程式10で公式化される。
【0124】
ロボットの表現
ロボット6、8は3種類のデナビット‐ハーテンバーグパラメータにより調整される。最初の2つは、上記の較正実施例で用いてものと同じである。しかし、最後の関節の調整に対しては、どの位置および回転も調整できることを確実にするために、RPY表記法が選択される(下の方程式11参照)。この表記法が使用されるのは、他のDH表記法では、ツールフランジの変換を調整するために必要な変換を表すことができないからである。ベースの表現と同様に、RPYは、モデル化する必要のある回転がごくわずかまたは皆無であるため、適正な選択である。各関節に正しい表記法を選択することによって、結果的にパラメータ特異点無しにロボットが表現される。
【0125】
【0126】
【0127】
【0128】
図17には、システムのどこで表2の変換が行われるかの概略図が示される。
【0129】
図18には、図19に示すプログラム変換で使用される位置対を収集するための流れ図の実施形態が示される。以下では、ロボットjがロボットiに置き換えられたと想定する。各ロボットは複数の関節、ベースフランジ、およびツールフランジを有する。最初のステップ92で、プログラムセットRPがロードされ、次いで次のステップ94で、作業プログラムRPに従って多数の位置または角度RQが選択される。これらの位置およびしたがって対応する角度RQは、プログラムされたタスクにおいて不可欠なウェイポイントであることが好ましい。次いでステップ96で、リストRQにおける全てのRに対し、ステップ98が実行される。ステップ98で、ロボットRは、R個の位置のうちの対応する位置に移動し、次いでそれらはステップ100で、位置または角度対セット<RQ、RQ>として保存される。ループが終わらない場合、ブロック102によって示される通り、ステップ96〜ステップ100は繰り返される。しかし、ループが終了すると、ブロック104によって示される通り、結果として位置または角度対データセット<RQ、RQ>が得られる。
【0130】
図19には、プログラム変換のための、すなわち上述した収集されたデータセットを用いてロボットiからロボットjに作業プログラムをコピーするための流れ図の実施形態が示される。ステップ92でプログラムRPがロードされる。次いでステップ106で、対応する位置または角度対データセット<RQ、RQ>がロードされる。次いでステップ108で、収集された位置または角度対データセット<RQ、RQ>および拘束連鎖律を用いて、運動学的モデルM、M、Tbase、およびTtcpが推定される。次いでステップ110で、MによりRPにおける全てのRQに対し順運動学が適用され、それにより結果的にRKが得られる。その後、ステップ112で、Mにより全てのRKに対し逆運動学が適用され、それにより結果的にRQが得られる。次いでステップ114でRPの全てのRQは、対応するRQに置き換えられ、結果的にRPが得られ、それによってブロック116によって示される通り、プログラム変換が完了する。
【0131】
図20は、プログラム補正のための最上レベルの流れ図を示す。出発点は、ステップ188に示す通りそのプログラムに記載されたタスクを実行する作業用ロボットの据付である。次いで、例えば機械的故障が発生した場合、ステップ120で、セットアップの変更が行われる。これは、ロボットの取替え、例えばブロック122によって示されるようにロボットの関節の置換、またはブロック124によって示されるようにロボットの置換、またはブロック126によって記載されるようにセットアップにおける他の変更とすることができる。次いで、次のステップ128で、新しいロボット部分(例えば新しいロボット全体)を用いて、プログラムにおける古い重要な位置の一部に対応する新しい関節角度が決定される。それにより新旧ロボットの関節角度対データが決定される。次いでステップ130で、これらのデータは、拘束連鎖特性を用いて新旧ロボットの運動学的モデルを精緻化するために使用される。その後、ステップ132で、上述の通りプログラム変換が実行される。プログラムの訂正が失敗すると、ステップ128〜132が繰り返される。しかし、プログラムの訂正が成功すると、次いでステップ134で、プログラムが使用可能であるか否かが、例えば新しいロボットでそれを実行させることによって決定される。これは例えば、適切に選択された許容範囲内で、プログラムが第2ロボットで実行することができるか否かを評価することによって行なうことができる。
【0132】
プログラムが使用可能である場合には、次のステップ、すなわちオプショナルステップ136で、変換が必要なプログラムがまだ残っているか否かが評価され、肯定ならば、次いでステップ132〜136が実行され、所与の角度対を調整することができ、あるいはさらなる角度対を追加することができる。そうでなければ、図示する流れ図でブロック138によって示すように、プログラムを使用することができる。
【0133】
図21は、図20に示した上記の流れ図のステップ128をいかに実行することができるかの実施形態をより詳細に説明する流れ図を示す。図示した方法は反復的である。最初に、ステップ140で、プログラムからの1つの重要なウェイポイントが使用され、次いでステップ142で、新しいロボットの関節角度の新しいセットが、それを正しい位置に動かすことによって定義される。次いで、ステップ144で、関節角度の新旧両方のセットが、対応する対として保存される。次いで、最後のステップ146で、他の重要なウェイポイントを定義する必要があるか否かが決定される。「はい」ならば、ステップ140〜146が繰り返される。「いいえ」ならば、次いで角度対は、モデルを更新する次のステップで使用される(図20のステップ130を参照)。
【0134】
図22には、プログラムの訂正/変換のステップ132をいかに実行することができるかの実施形態がより詳細に示される。図示する通り、最初のステップは訂正するプログラム148をロードすることであり、次いで、次のステップで、最初のウェイポイントが決定される。ステップ152で、対応する位置がステップ128によってすでに定義されているか否かが評価される。否である場合、ステップ154で、古いロボットを表すモデルを用いて順運動学が適用され、それにより得られた結果に基づいて、ステップ156によって示されるように、新しいロボットを表すモデルを用いて逆運動学が計算される。次いでステップ158で、計算が成功したか否かが評価される。「はい」ならば、次いでステップ160で、逆運動学によって算出された最も近い解が選択される。次いで次のステップ162で、古いウェイポイントが計算された新しいウェイポイントに置き換えられる。最後に、ステップ164で、ウェイポイントがもっと必要であるか否かが評価され、「はい」ならば、ステップ150〜164が実行される。ステップ152の評価の結果が真である場合には、ステップ166によって示されるように、すでに定義されている対応する関節角度が使用される。
【0135】
説明した通り、較正されていないロボット間でプログラム変換を実行することが、本発明によって可能である。
【符号の説明】
【0136】
以下において本発明の「発明を実施するための形態」で使用されている参照符号のリストが与えられる。
2 ツールフランジアダプタ
4 ベースフランジアダプタ
6,8 ロボット
10 ベースフランジ
16 回転軸間の共通法線
16,20 回転軸
22−36 方法ステップ、較正
38−52 方法ステップ、較正
54−82 方法ステップ、自動および手動の較正ループ
84−90 方法ステップ、センサ情報の保存
92−104 方法ステップ、角度データ対の収集
106−116 方法ステップ、プログラム変換
118−138 方法ステップ、プログラム補正
140−146 方法ステップ、関節角度の決定
148−166 方法ステップ、プログラムの補正
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22