(57)【要約】  ロボットを較正する方法が開示される。この方法は、（ａ）各々のロボット（Ｒ１、Ｒ２）が２つのフランジ、すなわちベースフランジおよびツールフランジを接続する関節および／またはリンクを有して成る、少なくとも２つのロボット（Ｒ１およびＲ２）を提供するステップと、（ｂ）少なくとも２つのロボット（Ｒ１、Ｒ２）から拘束連鎖を形成するステップと、（ｃ）連鎖におけるリンクまたは関節の少なくとも１つを操作し、それによって連鎖における他のリンクまたは関節の一部の操作を誘発するステップと、（ｄ）少なくとも２つのロボット（Ｒ１、Ｒ２）の各々の関節に関連付けられるセンサ情報に基づいて、各ロボット（Ｒ１、Ｒ２）の運動学的モデル（Ｍ１、Ｍ２）を推定するステップと、を含む。【選択図】図４
2014527920.tif 000002
【特許請求の範囲】
【請求項１】
ロボットを較正する方法であって、
（ａ）各々のロボット（Ｒ１、Ｒ２）が２つのフランジ、すなわちベースフランジおよびツールフランジを接続する関節および／またはリンクを有して成る、少なくとも２つのロボット（Ｒ１およびＲ２）を提供するステップと、
（ｂ）少なくとも２つのロボット（Ｒ１、Ｒ２）から拘束連鎖を形成するステップと、
（ｃ）連鎖におけるリンクまたは関節の少なくとも１つを操作し、それによって連鎖における他のリンクまたは関節の一部の操作を誘発するステップと、次いで、
（ｄ）少なくとも２つのロボット（Ｒ１、Ｒ２）の各々の関節に関連付けられるセンサ情報に基づいて、各ロボット（Ｒ１、Ｒ２）の運動学的モデル（Ｍ１、Ｍ２）を推定するステップと、
を含む方法。
【請求項２】
センサ情報は、ロボット関節および／またはリンクを駆動するために使用されるのと同じセンサから得られる、請求項１に記載の方法。
【請求項３】
センサ情報は、ロボット関節および／またはリンクを駆動するために使用されるのと同じセンサのみから得られる、請求項２に記載の方法。
【請求項４】
ステップ（ｃ）は、
−  関節位置を変更し、それによって少なくとも２つのロボット（Ｒ１、Ｒ２）の各ロボットの関節の位置（Ｑ）を変更するサブステップと、
−  対応する位置対（＜Ｒ１Ｑ、Ｒ２Ｑ＞ｍ）を収集するサブステップと、
を含む、請求項１〜３のいずれかに記載の方法。
【請求項５】
センサ情報は関節の位置（Ｑ）に関する情報であり、ステップ（ｄ）は、収集された位置対（＜Ｒ１Ｑ、Ｒ２Ｑ＞ｍ）に基づいて運動学的モデル（Ｍ１、Ｍ２）を推定することを含む、請求項４に記載の方法。
【請求項６】
センサ情報は、角度、位置座標、もしくはそれらの派生物のいずれか、および／またはそれらのいずれかの変化を含む、請求項１〜５のいずれかに記載の方法。
【請求項７】
センサ情報は、力、トルク、もしくはそれらの派生物のいずれか、および／またはそれらのいずれかの変化を含む、請求項１〜６のいずれかに記載の方法。
【請求項８】
少なくとも２つのロボット（Ｒ１、Ｒ２）から拘束連鎖を形成するステップ（ｂ）は、前記少なくとも２つのロボット（Ｒ１、Ｒ２）を少なくともそれらのベースフランジで、かつ／またはそれらのツールフランジで、物理的に接続することによって実行される、請求項１〜７のいずれかに記載の方法。
【請求項９】
少なくとも２つのロボット（Ｒ１、Ｒ２）から拘束連鎖を形成するステップ（ｂ）はさらに、少なくとも２つのロボット（Ｒ１、Ｒ２）の間の少なくとも１つの距離を定めるステップを含む、請求項１〜８のいずれかに記載の方法。
【請求項１０】
少なくとも２つのロボット（Ｒ１、Ｒ２）から拘束連鎖を形成するステップ（ｂ）はさらに、少なくとも２つのロボット（Ｒ１、Ｒ２）の間の少なくとも１つの接続方向を定めるステップを含む、請求項１〜９のいずれかに記載の方法。
【請求項１１】
少なくとも２つのロボット（Ｒ１、Ｒ２）から拘束連鎖を形成するステップ（ｂ）は、測定装置を使用して、少なくとも２つのロボット（Ｒ１、Ｒ２）の間の相対位置を測定するステップを含む、請求項１〜１０のいずれかに記載の方法。
【請求項１２】
測定装置は、少なくとも２つのロボット（Ｒ１、Ｒ２）の部分の間の距離を測定するように構成される、請求項１１に記載の方法。
【請求項１３】
測定装置は、少なくとも２つのロボット（Ｒ１、Ｒ２）の部分の間の方向を決定するように構成される、請求項１１または１２に記載の方法。
【請求項１４】
測定装置は、少なくとも２つのロボット（Ｒ１、Ｒ２）を接続する少なくとも１つのボールバーである、請求項１３に記載の方法。
【請求項１５】
少なくとも２つのロボット（Ｒ１、Ｒ２）の接続フランジは、同一回転軸を共有しない、請求項１〜１４のいずれかに記載の方法。
【請求項１６】
運動学的モデル（Ｍ１、Ｍ２）を推定するステップ（ｄ）はさらに、少なくとも２つのロボット（Ｒ１、Ｒ２）間のそれらのベースフランジおよびそれらのツールフランジにおけるオフセットの推定または測定に基づく、請求項１〜１５のいずれかに記載の方法。
【請求項１７】
運動学的モデル（Ｍ１、Ｍ２）を推定するステップ（ｄ）はさらに、連鎖の少なくとも１つの部分に関する統計情報に基づく、請求項１〜１６のいずれかに記載の方法。
【請求項１８】
統計情報は、統計情報無しに解くべき方程式の数を超えるセンサ情報に基づいて、モデル（Ｍ１、Ｍ２）を推定するために使用される、請求項１７に記載の方法。
【請求項１９】
少なくとも２つのロボットの各々の関節に関連付けられる充分なセンサ情報が、ステップ（ｃ）の後で、しかしステップ（ｄ）の前に、得られるか否かを評価するステップをさらに含む、請求項１〜１８のいずれかに記載の方法。
【請求項２０】
充分な位置対データ（＜Ｒ１Ｑ、Ｒ２Ｑ＞ｍ）が、ステップ（ｄ）の後で、しかしステップ（ｅ）の前に、得られるか否かを評価するステップと、次いで、
−  運動学的モデル（Ｍ１、Ｍ２）を更新するために充分な位置対データ（＜Ｒ１Ｑ、Ｒ２Ｑ＞ｍ）が得られない場合、ステップ（ｄ）を繰返し、あるいは
−  運動学的モデル（Ｍ１、Ｍ２）を更新するために充分な位置対データ（＜Ｒ１Ｑ、Ｒ２Ｑ＞ｍ）が得られる場合、ステップ（ｅ）を実行する、
ことをさらに含む、請求項４〜１９のいずれかに記載の方法。
【請求項２１】
充分なセンサ情報が多数の未知のものに相当し、それは、運動学的モデル（Ｍ１、Ｍ２）を推定するために解かれる方程式の数を越えない、請求項１９に記載の方法。
【請求項２２】
運動学的モデル（Ｍ１、Ｍ２）を推定するために方程式を解くために必要なものに加えて、センサ情報のオーバヘッドパーセンテージ（ＯＰＩ）を収集するステップを含む、請求項２１に記載の方法。
【請求項２３】
−  センサ情報の前記オーバヘッドパーセンテージ（ＯＰＩ）の少なくとも一部分を、運動学的モデル（Ｍ１、Ｍ２）を更新するために使用しないでおくステップと、
−  センサ情報の前記オーバヘッドパーセンテージ（ＯＰＩ）の前記一部分をデータ記憶装置に保存するステップと、
−  センサ情報の前記オーバヘッドパーセンテージ（ＯＰＩ）の前記一部分を用いて較正を検証するステップと、
をさらに含む、請求項２２に記載の方法。
【請求項２４】
較正を検証するステップは、センサ情報の収集されたオーバヘッドパーセンテージの前記一部分を、ロボットのための推定された運動学的モデル（Ｍ１、Ｍ２）によって予測された対応する値と比較するステップを含む、請求項２３に記載の方法。
【請求項２５】
前記比較は、センサ情報の収集されたオーバヘッドパーセンテージの前記一部分の各々と、ロボットのための推定された運動学的モデル（Ｍ１、Ｍ２）によって予測された対応する値との間の差を算出し、前記差またはその数値を閾値と比較することによって実行される、請求項２４に記載の方法。
【請求項２６】
センサ情報の前記オーバヘッドパーセンテージ（ＯＰＩ）は１０％から２００％の間の範囲、好ましくは２０％から８０％の間、さらにいっそう好ましくは２０％から６０％の間、または代替的に１０％から２０％の間の範囲、または２０％から４０％の間の範囲、または４０％から６０％の間の範囲、または６０％から８０％の間の範囲、または８０％から１００％の間の範囲、または１００％から１２０％の間の範囲、または１２０％から１４０％の間の範囲、または１４０％から１６０％の間の範囲、または１６０％から２００％の間の範囲である、請求項２２〜２５のいずれかに記載の方法。
【請求項２７】
推定された運動学的モデル（Ｍ１、Ｍ２）をデータ記憶装置に保存するステップをさらに含む、請求項１〜２６のいずれかに記載の方法。
【請求項２８】
連鎖における少なくとも１つのロボット（Ｒ１、Ｒ２）のリンクおよび／または関節の少なくとも１つを操作するステップ（ｃ）は、前記２つのロボット（Ｒ１、Ｒ２）のうちの１つのロボットの関節の位置調整器の少なくとも１つを停止し、それをもう１つのロボットによって操作させることによって実行される、請求項１〜２７のいずれかに記載の方法。
【請求項２９】
連鎖における少なくとも１つのロボット（Ｒ１、Ｒ２）の関節の少なくとも１つを操作するステップ（ｃ）は、前記２つのロボット（Ｒ１、Ｒ２）の各々の関節の位置調整器の少なくとも１つを停止し、関節位置を外部から変化させることによって実行される、請求項１〜２７のいずれかに記載の方法。
【請求項３０】
連鎖における少なくとも１つのロボット（Ｒ１、Ｒ２）の関節の少なくとも１つを操作するステップ（ｃ）は、前記２つのロボット（Ｒ１、Ｒ２）の各々の関節の位置調整器の少なくとも１つを停止し、関節位置を手動で変化させることによって実行される、請求項２９に記載の方法。
【請求項３１】
運動学的モデル（Ｍ１、Ｍ２）は、変換を定義するパラメータによって決定される、請求項１〜３０のいずれかに記載の方法。
【請求項３２】
パラメータは２種類のデナビット‐ハーテンバーグパラメータである、請求項３１に記載の方法。
【請求項３３】
２種類のデナビット‐ハーテンバーグパラメータはそれぞれ、シリングパラメータおよび並列変形パラメータによって表される、請求項３２に記載の方法。
【請求項３４】
少なくとも２つのロボット（Ｒ１、Ｒ２）を作動させる力を調整するステップをさらに含む、請求項１〜３３のいずれかに記載の方法。
【請求項３５】
各々のモデル（Ｍ１、Ｍ２）は各関節の変換を含む、請求項１〜３４のいずれかに記載の方法。
【請求項３６】
少なくとも２つのロボット（Ｒ１、Ｒ２）と並列または直列にＮ個の追加ロボット（Ｎは自然数である）を接続するステップと、請求項１に記載の方法のステップを追加のＮ個のロボットの各々に対して実行するステップとをさらに含む、請求項１〜３５のいずれかに記載の方法。
【請求項３７】
前記少なくとも２つのロボット（Ｒ１、Ｒ２）は、単一のロボットの２つのロボットアームである、請求項１〜３６のいずれかに記載の方法。
【請求項３８】
前記アームの少なくとも１つは、多関節ロボットアームである、請求項３７に記載の方法。
【請求項３９】
前記アームの少なくとも１つは、直動関節を含む、請求項３７または３８に記載の方法。
【請求項４０】
前記単一のロボットは１つのベースフランジおよび少なくとも２つのツールフランジを有する、請求項３７〜３９のいずれかに記載の方法。
【請求項４１】
第１ロボットＲ１から第２ロボットＲ２へ作業プログラムを変換する方法であって、各ロボット（Ｒ１、Ｒ２）は、２つのフランジ、すなわちベースフランジおよびツールフランジを接続する関節を有し、
（ａ）第１ロボットＲ１を第２ロボットＲ２と置き換えるステップと、
（ｂ）第１ロボットＲ１に関連付けられる作業プログラムＲ１Ｐを提供するステップと、
（ｃ）作業プログラムＲ１Ｐに従って多数の位置または角度を選択し、かつ第２ロボットＲ２をこれらの位置に移動させ、それによって位置または角度対データセット＜Ｒ１Ｑ、Ｒ２Ｑ＞を提供するステップと、次いで、
（ｄ）位置対データセット＜Ｒ１Ｑ、Ｒ２Ｑ＞を使用して、前記少なくとも２つのロボットの運動学的モデル（Ｍ１、Ｍ２）、ベースフランジオフセット（Ｔｂａｓｅ）、およびツール中心点オフセット（Ｔｔｃｐ）を推定するステップと、次いで、
（ｅ）前記推定された運動学的モデル（Ｍ１、Ｍ２）に基づいて作業プログラム変換を実行するステップと、
を含む、方法。
【請求項４２】
適切に選択された許容範囲内でプログラムを第２ロボットで実行することができるか否かを評価するステップをさらに含む、請求項４１に記載の方法。
【請求項４３】
適切に選択された許容範囲内でプログラムを第２ロボットで実行することができない場合、作業プログラムＲ１Ｐに従って追加数の位置を選択し、第２ロボットＲ２をこれらの追加位置に移動させ、それによって延長位置対データセットを提供し、次いでこの延長位置対データセットを用いてステップ（ｄ）および（ｅ）を実行するステップをさらに含む、請求項４２に記載の方法。
【請求項４４】
推定された運動学的モデル（Ｍ１、Ｍ２）に基づいて別の作業プログラムを変換するステップをさらに含む、請求項４１〜４３のいずれかに記載の方法。
【請求項４５】
前記推定された運動学的モデルに基づいて作業プログラムの変換を実行するステップ（ｅ）が、
−  第１ロボットＲ１に関連付けられる推定された運動学的モデルＭ１でＲ１Ｐ内の全てのＲ１Ｑに順運動学を適用し、結果としてプログラムＲ１Ｋを生じるサブステップと、
−  第２ロボットＲ２の推定された運動学的モデルＭ２でＲ１Ｋに逆運動学を適用し、それによって位置Ｒ２Ｑをもたらすサブステップと、次いで、
−  プログラムＲ１ＰでＲ１Ｑを対応するＲ２Ｑに置き換え、それによって第２ロボットＲ２に関連付けられる作業プログラムＲ２Ｐをもたらし、それによりプログラム変換を完了するサブステップと、
を含む、請求項４１〜４４のいずれかに記載の方法。
【請求項４６】
運動学的モデル（Ｍ１、Ｍ２）は、変換を定義するパラメータによって決定される、請求項４１〜４５のいずれかに記載の方法。
【請求項４７】
運動学的モデル（Ｍ１、Ｍ２）は、３種類のデナビット‐ハーテンバーグパラメータによって決定される、請求項４６に記載の方法。
【請求項４８】
３種類のデナビット‐ハーテンバーグパラメータは、シリングパラメータ、並列ＤＨ変形パラメータ、およびＲＰＹパラメータによって表される、請求項４７に記載の方法。
【請求項４９】
ＲＰＹパラメータは、ロボットの最後の関節を調整するために使用される、請求項４６〜４８のいずれかに記載の方法。
【請求項５０】
運動学的モデル（Ｍ１、Ｍ２）は、予め定められたモデルを出発点として使用することによって推定される、請求項１〜４９のいずれかに記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット較正（ｃａｌｉｂｒａｔｅ）方法およびロボットプログラミング方法に関する。
【背景技術】
【０００２】
産業用ロボット工学（ｉｎｄｕｓｔｒｉａｌ  ｒｏｂｏｔｉｃｓ）の分野において、ロボットの物理的特性の知識は、ロボットの正確な位置を算出するために重要である。これらの特性はロボットの設計図表（ｄｉａｇｒａｍ  ｏｆ  ｒｏｂｏｔ  ｄｅｓｉｇｎ）によって規定されるが、ロボットの組立工程（ａｓｓｅｍｂｌｉｎｇ  ｐｒｏｃｅｓｓ）およびその構成部品の公差によって変動する。知識を精緻化し、それによってロボットの精度を向上するために、それを記述するモデルを較正する必要がある。
【０００３】
ロボットのプログラミングのための幾つかの方法および装置が特許文献で提案されてきた。米国特許第６５３５７９４号明細書には、ロボットを較正するのに使用されるデータの誤差マップを作成するために既知の寸法を有する機械的測定アームを利用する、三次元座標測定機が開示されている。
【０００４】
米国特許出願公開第２０１１／００２２２１６号明細書は、ロボット座標系を有する少なくとも１つのロボットと、ポジショナ座標系を有しておりワークを保持しかつ回転軸を中心にワークを回転させることによってワークの向きを変えるように適応されたポジショナとを含む産業用ロボットシステム（ｉｎｄｕｓｔｒｉａｌ  ｒｏｂｏｔ  ｓｙｓｔｅｍ）を較正するための方法および装置を開示している。ロボットの目標点は物体座標系に対してプログラムされる。装置は、ロボットコントローラと、ポジショナに配設された少なくとも３つの較正物体と、ロボットによって保持される較正ツールとを備える。較正物体の位置は物体座標系で既知である。ロボットコントローラは、ロボット座標系に対する較正物体の位置を決定し、ポジショナの回転軸の少なくとも３つの異なる角度について前記較正物体のうちの第１および第２物体の位置を決定し、軸の３つの角度に対する第１および第２較正物体の決定された位置に基づいてロボット座標系におけるポジショナの回転軸の方向を決定し、かつ較正物体の既知の位置と決定された位置との間の最良適合を実施することによって第１物体座標系とポジショナ座標系との間の関係を決定するように構成される。
【０００５】
米国特許出願公開第２００８／０１８８９８６号明細書には、運動学的ロボット・モデル・パラメータの決定を通して多関節ロボットの精度の向上を達成する方法およびシステムが開示されている。多関節ロボットは、ロボット・モデル・パラメータの変動に応じた基準物体の基準点の算出姿勢の変動に対し、ヤコビアン微分（Ｊａｃｏｂｉａｎ  ｄｅｒｉｖａｔｉｏｎ）における微分のための連鎖律（ｃｈａｉｎ  ｒｕｌｅ  ｆｏｒ  ｄｉｆｆｅｒｅｎｔｉａｔｉｏｎ）を用いることによって、較正される。該方法はまた、２つのそのような基準物体およびそれらの間の既知の距離を利用して、長さスケールを確立し、こうしてロボットの１つのリンク長を知る必要性を回避する。結果として得られるモデルパラメータの精度を向上するための最適解を求めるために反復法が使用される。さらに、ツール取付機構フレームを定義するパラメータを含むロボットの端部関節パラメータ（ｅｎｄ  ｊｏｉｎｔ  ｐａｒａｍｅｔｅｒ）の決定が開示され、それはツールの交換をその後の較正無しに可能にする。
【０００６】
米国特許出願公開第２００８／０１８８９８３号明細書にも、多関節産業用ロボットの較正のための装置および方法が開示されている。
【０００７】
米国特許第６０７０１０９号明細書は、ロボット基部に対して固定されたままである第１基準点がロボットアームに位置する第２基準点から一定距離にあるときに、そのことを示す較正センサを含む、ロボット較正システムに関する。ロボットアームは複数の向きを経て移動し、２つの基準点の間の一定距離が達成されるたびに、ロボット関節位置情報が決定される。好適な較正センサは、２つの基準点の間に延びるストリングを含み、ストリングは、ロボットアームの向きの結果としてストリングがピンと張られるたびに、信号発生器を作動させる。発生した信号は、２つの基準点が一定距離だけ離れていることを示す。決定されたロボットの関節位置は次いで、特定状況のニーズに応じて変化する較正係数（ｃａｌｉｂｒａｔｉｏｎ  ｆａｃｔｏｒ）を決定するために使用される。例示的較正係数は、ロボットの運動学的情報における誤りを訂正し、ワークセル基準フレームを位置決めし、かつツール中心点基準フレームを位置決めするのに有用である。
【０００８】
米国特許出願公開第２００９／０１５７２２６号明細書には、ロボットおよびその周辺機器のための較正システムが開示されている。該システムは、ロボットまたはその周辺機器に取り付けられたエミッタを含む。エミッタはレーザビームを出射し、レシーバは、較正を可能にする位置で、レーザビームを受光するために、エミッタとレシーバとの間の寸法を決定するための計算が可能になるように、同じくロボットまたはその周辺機器に取り付けられる。
【０００９】
米国特許第４７５３５６９号明細書は、コンピュータ誘導ロボット装置（ｃｏｍｐｕｔｅｒ  ｇｕｉｄｅｄ  ｒｏｂｏｔｉｃ  ａｐｐａｒａｔｕｓ）を較正するための方法および装置に関する。ロボットアームに取り付けられるかワークステーションに固定された少なくとも１つのカメラは、ロボットアームまたはワークステーションの他方に固定された少なくとも３つのドットのパターンを含む目標を監視する。そのような監視は、ロボットアームが意図された動作を実行するためにワークステーションに接近するときに行われる。予め定められた目標パターンに対するずれの検知は、ロボットのコンピュータ化誘導システムをリセットするために、コンピュータに伝達される。
【００１０】
このように、ロボットを較正する多くの方法が存在するが、それらは全て、ある種の追加的能動測定装置、すなわちセンサを備えた測定装置を必要とし、また前記測定装置をいかに使用するかについての専門的知識を必要とし、さらにそれらは前記装置の物理的特性の精度に依存する。
【発明の概要】
【００１１】
したがって、本発明の目的は、実現が容易でありかつ外部の能動測定装置の使用を必要としない、多関節ロボットを較正する方法を提供することである。
【００１２】
本発明のさらなる目的は、未較正ロボット間で作業プログラムを複製する方法を提供することである。
【００１３】
本発明によると、上述および他の目的は、ロボットを較正する方法によって達成され、該方法は、
（ａ）各々のロボット（Ｒ１、Ｒ２）が２つのフランジすなわちベースフランジおよびツールフランジを接続する関節および／またはリンクを有して成る、少なくとも２つのロボット（Ｒ１およびＲ２）を提供するステップと、
（ｂ）少なくとも２つのロボット（Ｒ１、Ｒ２）から拘束連鎖（ｃｌｏｓｅｄ  ｃｈａｉｎ）を形成するステップと、
（ｃ）連鎖におけるリンクまたは関節の少なくとも１つを操作し、それによって連鎖における他のリンクまたは関節の一部の操作を誘発するステップと、次いで、
（ｄ）少なくとも２つのロボット（Ｒ１、Ｒ２）の各々の関節に関連付けられるセンサ情報に基づいて、各ロボット（Ｒ１、Ｒ２）の運動学的モデル（ｋｉｎｅｍａｔｉｃ  ｍｏｄｅｌ）（Ｍ１、Ｍ２）を推定するステップと、
を含む。
【００１４】
これによって、外部の能動測定装置の精度に依存しない較正方法が達成される。すなわちロボット自体だけが使用される。本発明の方法は、情報を得るためにロボットを拘束連鎖状に結合し、情報は次いでロボットの運動学的パラメータを調整するために使用され、すなわちロボットの運動学的モデルを更新するために使用され、それによってロボットは較正される。較正プロセスで使用される必要な情報は、利用可能な作業空間全体に分散された様々な構成で連鎖を調整することによって、すなわち連鎖における少なくとも２つのロボットの関節の少なくとも１つを操作し、それにより連鎖における他のリンクおよび／または関節の一部の操作を誘発することによって、生成される。次いで、拘束連鎖の特性および様々な連鎖構成におけるリンクおよび／または関節からの知識を用いることによって、較正、すなわち数学的運動学的モデルの推定が行われる。連鎖のスケーリングサイズを定義するために、少なくとも１つの距離または距離変化を知る必要がある。連鎖で使用されるリンクおよび／または関節は、解くことのできる連立方程式で表され、こうしてロボットを較正する。こうして、拘束連鎖の原理を使用することによって、ロボットの作業空間の大きい領域を探査することが可能であり、したがってこの高度の較正方法の結果は、前記ロボットの作業空間全体を表す。これは、ロボット自体以外の測定装置無しに幾つかのロボットの同時較正を可能にする。拘束連鎖のモデル表現を複数の物理的観測と比較することによって、モデルのパラメータを精緻化し、こうして較正することができる。
【００１５】
ここでは、拘束連鎖において、各リンクが、拘束連鎖全体の制約を満たすように、リンク自体の制約によって誘導されることを利用する。これは、連鎖における位置、速度、加速度、および力等に適用される。この特性を利用することにより、各リンクの運動学的特性を推定し、こうしてロボットの運動学を較正することが可能である。
【００１６】
本特許明細書全体を通して、関節という用語は、回転関節、直動関節、または球面関節を表すために使用することができることを理解されたい。関節の種類によっては、関節は回転および／または位置を制御かつ登録することができる。以下で、「位置」は回転および／または位置の両方を記述するために使用される。さらに、連鎖は、関節またはリンクではなく、関節であるリンクを含むことができることを理解されたい。
【００１７】
本発明に係る方法のある実施形態では、少なくとも２つのロボットを提供するステップ（ａ）は、少なくとも２つのロボットアームを有する単一のロボットを提供することによって行うことができ、次いで前記アームの各々を１つのロボットとして取り扱うことができる。この種のロボットは、ツールフランジと同数のベースフランジを持たない。
【００１８】
ロボットを較正する方法のさらなる実施形態では、センサ情報は、ロボット関節および／またはリンクを駆動するために使用されるのと同じセンサから得られる。
【００１９】
ロボットを較正する方法のさらなる実施形態では、センサ情報は、ロボット関節および／またはリンクを駆動するために使用されるのと同じセンサのみから得られる。
【００２０】
ロボットを較正する方法のさらなる実施形態では、ステップ（ｃ）は、
−  関節位置を変更し、それによって少なくとも２つのロボット（Ｒ１、Ｒ２）の各ロボットの関節の位置（Ｑ）を変更するサブステップと、
−  対応する位置対（＜Ｒ１Ｑ、Ｒ２Ｑ＞ｍ）を収集するサブステップと、
を含む。
【００２１】
ロボットを較正する方法のさらなる実施形態では、センサ情報は関節の位置（Ｑ）に関する情報であり、ステップ（ｄ）は、収集された位置対（＜Ｒ１Ｑ、Ｒ２Ｑ＞ｍ）に基づいて運動学的モデル（Ｍ１、Ｍ２）を推定することを含む。
【００２２】
ロボットを較正する方法のさらなる実施形態では、センサ情報は、角度、位置座標、もしくはそれらの派生物のいずれか、および／またはそれらのいずれかの変化を含む。
【００２３】
ロボットを較正する方法のさらなる実施形態では、センサ情報は、力、トルク、もしくはそれらの派生物のいずれか、および／またはそれらのいずれかの変化を含む。
【００２４】
ロボットを較正する方法のさらなる実施形態では、少なくとも２つのロボット（Ｒ１、Ｒ２）から拘束連鎖を形成するステップ（ｂ）は、前記少なくとも２つのロボット（Ｒ１、Ｒ２）を少なくともそれらのベースフランジで、かつ／またはそれらのツールフランジで、物理的に接続することによって実行される。
【００２５】
ロボットを較正する方法のさらなる実施形態では、少なくとも２つのロボット（Ｒ１、Ｒ２）から拘束連鎖を形成するステップ（ｂ）はさらに、少なくとも２つのロボット（Ｒ１、Ｒ２）の間の少なくとも１つの距離を定めるステップを含む。
【００２６】
ロボットを較正する方法のさらなる実施形態では、少なくとも２つのロボット（Ｒ１、Ｒ２）から拘束連鎖を形成するステップ（ｂ）はさらに、少なくとも２つのロボット（Ｒ１、Ｒ２）の間の少なくとも１つの接続方向を定めるステップを含む。
【００２７】
ロボットを較正する方法のさらなる実施形態では、少なくとも２つのロボット（Ｒ１、Ｒ２）から拘束連鎖を形成するステップ（ｂ）は、測定装置を使用して、少なくとも２つのロボット（Ｒ１、Ｒ２）の間の相対位置を測定するステップを含む。
【００２８】
ロボットを較正する方法のさらなる実施形態では、測定装置は、少なくとも２つのロボット（Ｒ１、Ｒ２）の部分の間の距離を測定するように構成される。
【００２９】
ロボットを較正する方法のさらなる実施形態では、測定装置は、少なくとも２つのロボット（Ｒ１、Ｒ２）の部分の間の方向を決定するように構成される。
【００３０】
ロボットを較正する方法のさらなる実施形態では、測定装置は、少なくとも２つのロボット（Ｒ１、Ｒ２）を接続する少なくとも１つのボールバーである。
【００３１】
さらなる実施形態では、センサ情報は、較正の静的部分および動的部分の両方に関してモデルを満たすように、拘束連鎖におけるリンクによってもたらされる任意の情報を含み、例えば位置および力の情報ならびにその派生物があるが、それらに限定されない。
【００３２】
他の種類のセンサ情報を使用できることは理解されるが、角度を使用することは、回転関節を持つロボットの関節の位置を表す非常に実用的な方法である。ロボットの寸法だけでなく、力およびトルクの読み／推定値ならびに／または運動量計算も、本発明の方法に従って較正することができる。
【００３３】
連鎖を拘束するための情報が提供される限り、ロボットを相互に物理的に接続する必要があることは、制約ではない。したがって、さらなる好適な実施形態では、少なくとも２つのロボットから拘束連鎖を形成するステップ（ｂ）は、少なくとも２つのロボットをそれらのベースフランジおよびそれらのツールフランジで一体に固定するステップを含む。これは２つの明確に定義された距離をもたらし、それによってモデルをスケーリングすることができる。別の可能性は、ロボットの統計的知識を用いて、（例えばチホノフ正則化法によって）モデルをスケーリングすることである。この統計的知識は、同一種類の多数のロボット、および／またはロボット自体の製図（ｔｅｃｈｎｉｃａｌ  ｄｒａｗｉｎｇ）に基づくことができる。
【００３４】
さらなる実施形態では、少なくとも２つのロボットから拘束連鎖を形成するステップ（ｂ）は、連鎖を拘束するために使用される情報以外の情報または特性をもたらす連鎖内の余分のリンクを使用するステップを含む。例えばボールバー（ｂａｌｌ  ｂａｒ）は、較正で使用するために調整することのできる少なくとも１つの寸法の特性をもたらす、ロボットを接続するリンクの距離を決定または測定することができる。
【００３５】
さらなる実施形態では、少なくとも２つのロボットから拘束連鎖を形成するステップ（ｂ）は、測定装置を用いて少なくとも２つのロボットの相対位置を測定するステップを含む。例えば測定装置は、ロボットのフランジ間の距離を測定するボールバーとすることができる。
【００３６】
さらなる実施形態では、少なくとも２つのロボットのベースフランジまたはツールフランジは、ロボットの接続された関節間の依存性を低減するために、同一回転軸を共有しない。これは全てのリンクを較正する可能性を低減するが、拘束連鎖をモデル化するために、必要な運動学的特性を推定することができるので、依然として使用可能である。
【００３７】
さらなる実施形態では、運動学的モデルを推定するステップ（ｄ）はさらに、少なくとも２つのロボット間のそれらのベースフランジおよびそれらのツールフランジにおけるオフセットの推定または測定に基づく。これにより、これらの２つの距離の一方または両方を使用してモデルのサイズをスケーリング（ｓｃａｌｉｎｇ）することが可能になる。代替的可能性は、ロボットの統計的知識を用いて、（例えばチホノフ正則化法（Ｔｉｋｈｏｎｏｖ  ｒｅｇｕｌａｒｉｚａｔｉｏｎ）によって）モデルをスケーリングすることである。
【００３８】
さらなる実施形態では、運動学的モデル（Ｍ１、Ｍ２）を推定するステップ（ｄ）はさらに、連鎖の少なくとも１つの部分に関する統計情報に基づく。
【００３９】
さらなる実施形態では、統計情報は、統計情報無しに解くべき方程式の数を超えるセンサ情報に基づいて、モデル（Ｍ１、Ｍ２）を推定するために使用される。
【００４０】
さらに別の好適な実施形態では、本発明の方法はさらに、少なくとも２つのロボットの各々の関節に関連付けられる充分なセンサ情報が、ステップ（ｄ）の後で、しかしステップ（ｅ）の前に、得られるか否かを評価するステップを含む。これにより、未知数の数は解くべき方程式の数を超えないことが達成される。
【００４１】
該方法のさらなる好適な実施形態はさらに、充分な位置対データ（＜Ｒ１Ｑ、Ｒ２Ｑ＞ｍ）が、ステップ（ｄ）の後で、しかしステップ（ｅ）の前に、得られるか否かを評価するステップと、次いで、
−  運動学的モデルを推定するために充分な位置対データ（＜Ｒ１Ｑ、Ｒ２Ｑ＞ｍ）が得られない場合、ステップ（ｄ）を繰返し、あるいは
−  運動学的モデルを推定するために充分な位置対データ（＜Ｒ１Ｑ、Ｒ２Ｑ＞ｍ）が得られる場合、ステップ（ｅ）を実行する、
ことを含む。
【００４２】
本発明のさらなる実施形態では、該方法は、運動学的モデルを更新するために方程式を解くために必要なものに加えて、センサ情報のオーバヘッドパーセンテージ（ｏｖｅｒｈｅａｄ  ｐｅｒｃｅｎｔａｇｅ）（ＯＰＩ）を収集するステップを含む。これにより、運動学的モデルの安定した収束が確保される。
【００４３】
さらなる実施形態では、該方法はまた、
−  センサ情報の前記オーバヘッドパーセンテージ（ＯＰＩ）の少なくともわずかな部分を、運動学的モデルを更新するために使用しないでおくステップと、
−  センサ情報の前記オーバヘッドパーセンテージ（ＯＰＩ）の前記わずかな部分をデータ記憶装置に保存するステップと、
−  センサ情報の前記オーバヘッドパーセンテージ（ＯＰＩ）の前記わずかな部分を用いて較正を検証するステップと、
をも含む。
【００４４】
ＯＰＩの前記わずかな部分はモデルを更新するために使用されないので、それを使用してモデルを検証すること、すなわち位置の角度が、推定されたモデルによって予測されたものと一致するか否かを検証することができる。こうして、較正を検証するステップは、ある実施形態では、センサ情報の収集されたオーバヘッドパーセンテージの前記わずかな部分を、ロボットのための更新された運動学的モデルによって予測された対応する値と比較するステップを含むことができる。好ましくは、前記比較は、センサ情報の収集されたオーバヘッドパーセンテージの前記わずかな部分の各々と、ロボットのための推定運動学的モデルによって予測された対応する値との間の差を算出し、前記差またはその数値を閾値と比較することによって実行される。さらなる実施形態では、センサ情報の前記オーバヘッドパーセンテージ（ＯＰＩ）は１０％から２００％の間の範囲、好ましくは２０％から８０％の間、さらにいっそう好ましくは２０％から６０％の間、または代替的に１０％から２０％の間の範囲、または２０％から４０％の間の範囲、または４０％から６０％の間の範囲、または６０％から８０％の間の範囲、または８０％から１００％の間の範囲、または１００％から１２０％の間の範囲、または１２０％から１４０％の間の範囲、または１４０％から１６０％の間の範囲、または１６０％から２００％の間の範囲である。
【００４５】
ある実施形態では、該方法はさらに、更新された運動学的モデルを、ロボットに作動的に接続されたロボットコントローラに配置することのできるデータ記憶装置に、または別の装置に保存するステップを含む。
【００４６】
さらなる実施形態では、連鎖における少なくとも１つのロボットのリンクおよび／または関節の少なくとも１つを操作するステップ（ｃ）は、前記２つのロボットのうちの１つのロボットの関節の位置調整器の少なくとも１つを停止し、それをもう１つのロボットによって操作させることによって実行される。
【００４７】
さらなる実施形態では、連鎖における少なくとも１つのロボットの関節の少なくとも１つをロボットの全作業空間の少なくとも一部分で操作するステップ（ｃ）は、前記２つのロボットの各々の関節の位置調整器の少なくとも１つを、例えば全部を停止し、関節位置を外部から、例えばオペレータが手動で変化させることによって実行される。
【００４８】
さらに別の実施形態では、連鎖における少なくとも１つのロボット（Ｒ１、Ｒ２）の関節の少なくとも１つを操作するステップ（ｃ）は、前記２つのロボット（Ｒ１、Ｒ２）の各々の関節の位置調整器の少なくとも１つを停止し、関節位置を手動で変化させることによって実行される。
【００４９】
さらなる実施形態では、運動学的モデル（Ｍ１、Ｍ２）は、変換を定義するパラメータによって決定される。
【００５０】
さらなる実施形態では、パラメータは２種類のデナビット‐ハーテンバーグ（Ｄｅｎａｖｉｔ−Ｈａｒｔｅｎｂｅｒｇ）パラメータである。２種類のデナビット‐ハーテンバーグパラメータはそれぞれ、シリング（Ｓｃｈｉｌｌｉｎｇ）パラメータおよび並列変形パラメータ（ｐａｒａｌｌｅｌ  ｖａｒｉａｎｔ  ｐａｒａｍｅｔｅｒ）によって表すことができる。
【００５１】
本発明のさらに別の実施形態では、該方法はさらに、少なくとも２つのロボット（Ｒ１、Ｒ２）を作動させる力を調整するステップを含む。さらなる実施形態では、各々のモデル（Ｍ１、Ｍ２）は各関節の変換を含む。
【００５２】
既述の通り、少なくとも２つのロボットの運動学的モデルは、２種類のデナビット‐ハーテンバーグパラメータによって決定されることが好ましい。２種類のデナビット‐ハーテンバーグパラメータはそれぞれ、シリングパラメータ、および平行回転軸用に設計された変形によって表すことができる。以下、変形を並列ＤＨパラメータと呼ぶ。４つのパラメータによる選択された表記法は、回転軸間の変換を既述する最小限かつ完全な方法である。しかし、他の表記法を使用することもできる。
【００５３】
該方法は、さらなる実施形態では、少なくとも２つのロボットを作動させる力を調整するステップをさらに含むことができる。好ましくは、各々のモデルは、少なくとも２つのロボットの各々の各関節の変換を含む。
【００５４】
上述した方法は、３つ以上のロボットを含むように拡張することができる。したがって、さらなる実施形態では、該方法は、少なくとも２つのロボットと並列または直列にＮ個の追加ロボット（Ｎは自然数である）を接続するステップと、本発明の方法のステップを追加のＮ個のロボットの各々に対して実行するステップとをさらに含む。
【００５５】
さらなる実施形態では、前記少なくとも２つのロボット（Ｒ１、Ｒ２）は、単一のロボットの２つのロボットアームである。さらなる実施形態では、前記アームの少なくとも１つは、多関節ロボットアーム（ａｒｔｉｃｕｌａｔｅｄ  ｒｏｂｏｔ  ａｒｍ）とすることができる。さらに、前記アームの少なくとも１つは、直動関節（ｐｒｉｓｍａｔｉｃ  ｊｏｉｎｔ）を含むことができる。前記単一のロボットは少なくとも１つのベースフランジおよび少なくとも２つのツールフランジを有し、いかなる場合もベースフランジより多くのツールフランジを有する。
【００５６】
別のロボットから直接作業プログラムを使用するには、両方のロボットのプロポーションが同一であること、および位置センサが同等に調整されていることが必要である。これは達成することが非常に難しいので、ロボットの間でプログラムを複製することは難しい。したがって、本発明のさらなる目的は、おそらく未較正のロボット間でプログラムを複製する方法を提供することである。
【００５７】
この目的およびさらなる目的は、第１ロボットＲ１から第２ロボットＲ２へ作業プログラムを変換する方法に関する本発明の第２態様によって達成される。各ロボット（Ｒ１、Ｒ２）は、２つのフランジすなわちベースフランジおよびツールフランジを接続する関節を有し、該方法は、
（ａ）第１ロボットＲ１を第２ロボットＲ２と置き換えるステップと、
（ｂ）第１ロボットＲ１に関連付けられる作業プログラムＲ１Ｐを提供するステップと、
（ｃ）作業プログラムＲ１Ｐに従って多数の位置または角度を選択し、かつ第２ロボットＲ２をこれらの位置に移動させ、それによって位置または角度対データセット＜Ｒ１Ｑ、Ｒ２Ｑ＞を提供するステップと、次いで、
（ｄ）位置対データセット＜Ｒ１Ｑ、Ｒ２Ｑ＞を使用して、前記少なくとも２つのロボットの運動学的モデル（Ｍ１、Ｍ２）、ベースフランジオフセット（Ｔｂａｓｅ）、およびツール中心点オフセット（Ｔｔｃｐ）を推定するステップと、次いで、
（ｅ）前記推定された運動学的モデル（Ｍ１、Ｍ２）に基づいて作業プログラム変換を実行するステップと、
を含む。
【００５８】
しばしば、１つのロボットを新しいロボットと交換する必要性が生じる。しかし、新しいロボットの較正を実行する代わりに、「古い」ロボットの関節角度を数学モデルにおける連鎖の半分として使用し、「新しい」ロボットの対応する角度を連鎖の残り半分として使用することができる。これにより、既述の通り、上記ステップ（ｃ）で１組の角度対データが達成され、それはロボットの運動学的モデルを更新するために使用される。
【００５９】
本発明の第２態様のある実施形態は、適切に選択された許容範囲内でプログラムを第２ロボットで実行することができるか否かを評価するステップをさらに含む。
【００６０】
本発明の第２態様のさらなる実施形態は、適切に選択された許容範囲内でプログラムを第２ロボットで実行することができない場合、作業プログラムＲ１Ｐに従って追加数の位置を選択し、第２ロボットＲ２をこれらの追加位置に移動させ、それによって延長位置対データセットを提供し、次いでこの延長位置対データセットを用いてステップ（ｄ）および（ｅ）を実行するステップをさらに含む。
【００６１】
本発明の第２態様のさらなる実施形態は、推定された運動学的モデル（Ｍ１、Ｍ２）に基づいて別の作業プログラムを変換するステップをさらに含む。
【００６２】
本発明の第２態様のさらなる実施形態は、前記推定された運動学的モデルに基づいて作業プログラムの変換を実行するステップ（ｅ）が、
−  第１ロボットＲ１に関連付けられる推定された運動学的モデルＭ１でＲ１Ｐ内の全てのＲ１Ｑに順運動学（ｆｏｒｗａｒｄ  ｋｉｎｅｍａｔｉｃｓ）を適用し、結果としてプログラムＲ１Ｋを生じるサブステップと、
−  第２ロボットＲ２の推定された運動学的モデルＭ２でＲ１Ｋに逆運動学（ｉｎｖｅｒｓｅ  ｋｉｎｅｍａｔｉｃｓ）を適用し、それによって位置Ｒ２Ｑをもたらすサブステップと、次いで、
−  プログラムＲ１ＰでＲ１Ｑを対応するＲ２Ｑに置き換え、それによって第２ロボットＲ２に関連付けられる作業プログラムＲ２Ｐをもたらし、それによりプログラム変換を完了するサブステップと、
を含む。
【００６３】
本発明の第２態様のさらなる実施形態では、運動学的モデル（Ｍ１、Ｍ２）は、変換を定義するパラメータによって決定される。
【００６４】
本発明の第２態様のさらなる実施形態では、運動学的モデル（Ｍ１、Ｍ２）は、３種類のデナビット‐ハーテンバーグパラメータによって決定される。
【００６５】
本発明の第２態様に係る方法のさらなる実施形態では、３種類のデナビット‐ハーテンバーグパラメータは、シリングパラメータ、並列ＤＨ変形パラメータ、および平行移動を伴うロール‐ピッチ‐ヨー回転パラメータ（Ｒｏｌｌ−Ｐｉｔｃｈ−Ｙａｗ  ｒｏｔａｔｉｏｎ  ｗｉｔｈ  ｔｒａｎｓｌａｔｉｏｎ  ｐａｒａｍｅｔｅｒｓ）（以下、ＲＰＹという）によって表される。
【００６６】
本発明の第２態様に係る方法の実施形態では、ＲＰＹパラメータは、ロボットの最後の関節を調整するために使用される。全回転および平行移動を調整する他の表記法も使用することができる。しかしＲＰＹ回転は、小さい回転変化に対する６パラメータの最小限かつ完全な表記法である。
【００６７】
本発明の第２態様のさらなる実施形態では、運動学的モデル（Ｍ１、Ｍ２）は、予め定められたモデルを出発点として使用することによって推定される。これらの予め定められたモデルは、例えば上述した種類の統計情報を用いることによって決定された近似モデルとすることができる。
【図面の簡単な説明】
【００６８】
本発明の本質及び利点のさらなる理解は、明細書の残りの部分及び図面を参照して実現されることができる。以下において、本発明の好適な実施態様が図面を参照して詳細に説明される。
【００６９】
【図１】図１は、シリング・デナビット‐ハーテンバーグ表記法を示す。
【００７０】
【図２】図２は、並列デナビット‐ハーテンバーグ表記法変形を示す。
【００７１】
【図３】図３は、２つのロボットの拘束連鎖構成を示す。
【００７２】
【図４】図４は、２つのロボットの代替的拘束連鎖構成を示す。
【００７３】
【図５】図５は、拘束連鎖構成で接続された２つの６リンクロボットの変換を概略的に示す。
【００７４】
【図６】図６は、２つのロボットの未較正連鎖の表現を概略的に示す。
【００７５】
【図７】図７は、モデルのスケールを定めるために距離をいかに使用することができるかを概略的に示す。
【００７６】
【図８】図８は、２つの回転軸間の共通法線を定めるアダプタを示す。
【００７７】
【図９】図９は、表１の変換がシステム内で行われる場所を示す。
【００７８】
【図１０】図１０は、Ｒ個のロボットを較正する方法の実施形態を説明する流れ図を示す。
【００７９】
【図１１】図１１は、ロボットを較正する方法の最高レベルの実施形態を示す。
【００８０】
【図１２】図１２は、較正ループの実施形態の自動バージョンの流れ図を示す。
【００８１】
【図１３】図１３は、較正ループの実施形態の手動バージョンの流れ図を示す。
【００８２】
【図１４】図１４は、非同期ロボットのセンサ情報を保存する方法の実施形態の流れ図を示す。
【００８３】
【図１５】図１５は、同期したロボットのセンサ情報を保存する方法の実施形態の流れ図を示す。
【００８４】
【図１６】図１６は拘束連鎖を示し、ここで新しいロボットは古いロボットの仮想画像と共に示されている。
【００８５】
【図１７】図１７は、表２の変換がシステム内で行われる場所を示す。
【００８６】
【図１８】図１８は、プログラム変換で使用されるデータ対を収集するための流れ図の実施形態を示す。
【００８７】
【図１９】図１９は、プログラム変換のための流れ図の実施形態を示す。
【００８８】
【図２０】図２０は、プログラム変換のための方法の実施形態の流れ図を示す。
【００８９】
【図２１】図２１は、関節の角度を定めるための方法の実施形態の流れ図を示す。
【００９０】
【図２２】図２２は、未較正ロボット間のプログラム変換を実行する方法の実施形態の流れ図を示す。
【発明を実施するための形態】
【００９１】
本発明の例示的な実施態様が示される添付図面を参照して本発明がより完全に以下に説明されるだろう。しかし、本発明は異なる形態で実現されることができ、ここに記載された実施態様に限定される解釈されるべきでない。むしろ、これらの実施態様は、この開示が完全かつ完成したものであるようにかつ完全に当業者に本発明の範囲を完全に伝達するように与えられる。同様の参照番号は、全体を通して同様の要素を示す。従って、要素は、各図の説明に関して詳細に述べられないだろう。
【００９２】
古典的運動学を使用してロボットをモデル化する。これは、ロボット関節からの情報を、それらの関節を比較可能にするために、直交座標系に移し替えることを可能にする。
【００９３】
2014527920.tif 000003
【００９４】
ロボットの表現
ロボットは、２種類のデナビット‐ハーテンバーグ（ＤＨ）パラメータによりモデル化される。第１種類のＤＨは、ｚ軸が平行であるときに特異点を有する表記法であるため（下の方程式１を参照）、シリング表記法（内容全体を参照によって本書に組み込む、Ｒ．Ｊ．Ｓｃｈｉｌｌｉｎｇ，「Ｆｕｎｄａｍｅｎｔａｌｓ  ｏｆ  Ｒｏｂｏｔｉｃｓ：Ａｎａｌｙｓｉｓ  ａｎｄ  Ｃｏｎｔｒｏｌ」，Ｓｉｍｏｎ  ＆  Ｓｃｈｕｓｔｅｒ  Ｔｒａｄｅ，１ｓｔ  ｅｄ．１９９６を参照）を用いて、２つの非平行なｚ軸間の変換を記述する。
【００９５】
第２種類は、この特異点を回避するためにＤＨ並列変形を使用する（下の方程式２を参照）。並列ＤＨ変形は元来のＤＨと同一原理を利用するが、最初のｙ軸と次のｚ軸がそれぞれ平行である場合に特異点を有する。最初のｚ軸との垂直交点までの距離がパラメータとして使用されるので（図１の図解を参照）、シリングＤＨの特異点は最初のｚ軸と次のｚ軸との間の法線によって定義される。並列ＤＨ変形の特異点はシリング表記法と同様に定められるが、最初のｙ軸と次のｚ軸との間に法線を使用することによって特異点は移動する（図２参照）。
【００９６】
各関節要素に対し正しい表記法を選ぶことにより、ＤＨパラメータの特異点の無いロボットの表現がもたらされる。
2014527920.tif 000004
【００９７】
拘束連鎖モデル
表現は連鎖内の各要素を１つのモデルに結合する。モデルは拘束連鎖の物理的特性を反映し、各要素を互いに関連させることを可能にする。ロボットを接続するために用いられる装置に応じて、様々な手法を用いることができる。基本的な設置において、ツールフランジは剛性の固体アダプタ２を介して接続され、ベースフランジは剛性の固体アダプタ４と接続され、連鎖内の全ての関節は、上述の通り、ＤＨパラメータによって表される。これは、システムにおける関節の回転軸を相互に対して記述する最小限の完全な表現であるという利点を有する。拘束連鎖においてアダプタ２および４を介して互いに接続された２つのロボット６および８を示す、図３の図解を参照されたい。図４には、ロボットのツールフランジがアダプタ２を介して接続された、２つのロボット６、８の代替的拘束連鎖構成が示されている。ベースフランジ１０は表面に取り付けられており、そこからベースフランジ１０間の距離を決定することができ、それは「連鎖を拘束する」ための充分な情報である。図３および図４には、Ｕｎｉｖｅｒｓａｌ  Ｒｏｂｏｔｓ社によって製造されたＵＲ５型の２つの産業用ロボット６および８が示されている。
【００９８】
高度連鎖結合
より高度のアダプタを使用して、ツールおよびベースフランジ１０を接続することができる。好ましくは、モデルは使用する装置を反映するように構成される。ロボット６、８のベースフランジ１０を接続する高度の方法の実施例は、ロボット６、８を既知の距離だけ変位させることのできる直動関節を含むことができる。より高度の関節を連鎖に追加する別の実施例は、ボールバーまたは追加の関節により行うことができる。ボールバーは単一ロボットの較正用の一般的な公知のツールである（内容全体を参照によって本書に組み込む、Ｍ．Ｒ．Ｄｒｉｅｌｓ：Ｕｓｉｎｇ  ｐａｓｓｉｖｅ  ｅｎｄ‐ｐｏｉｎｔ  ｍｏｔｉｏｎ  ｃｏｎｓｔｒａｉｎｔｓ  ｔｏ  ｃａｌｉｂｒａｔｅ  ｒｏｂｏｔ  ｍａｎｉｐｕｌａｔｏｒｓ，Ｊｏｕｒｎａｌ  ｏｆ  Ｄｙｎａｍｉｃ  Ｓｙｔｅｍｓ，Ｍｅａｓｕｒｅｍｅｎｔ，ａｎｄ  Ｃｏｎｔｒｏｌ，１１５（３）：５６０〜５６６；１９９３を参照されたい）。この方法は、ボールバーの一端を固定位置に、他端をロボットに取り付けることによって動作する。これは、全ての観測が固定位置に対して行われ、したがってそれによって制限されることを意味する。固定位置のため、動きもまた制限される。本発明の文脈で装置が使用される場合、各端は各ロボット６、８に取り付けられ、したがって測定は固定位置に制限されない。これは、ロボット６、８の作業空間全体に関連する測定を行う可能性をもたらす。
【００９９】
一部のロボットは複数の肢部を有する。それらを個々のロボットアームとして取り扱うことにより、本特許明細書に記載する本発明に係る方法を使用して、追加的能動測定装置無しにこれらの肢部を較正することができる。
【０１００】
本発明に係る方法は、図６に示す通り、拘束連鎖の原理に基づく。この原理をモデルに移し替えることによって、追加的測定装置の必要が無く、フィードバックが埋め込まれる較正方法を達成することができる。次いでそれを数学的にモデル化して、拘束連鎖の原理を満たすようにモデルを調整し、こうしてロボット６、８の物理的関節の数学モデルを較正することができる。連鎖を解放し、次いで２つの関節端部間の差を算出することによって、数学的にモデルにおける誤差が算出される。図７の図解を参照されたい。誤差を決定するために、ロボットは物理的に切り離されない―これは純粋に数学的技巧である。運動学的モデルの調整プロセスは、ソルバ（ｓｏｌｖｅｒ）を正しい解に導く連立方程式で作業空間全体を記述するために、ニュートン‐ラフソン法（Ｎｅｗｔｏｎ−Ｒａｐｈｓｏｎ  ａｐｐｒｏａｃｈ）により、ロボット６、８から充分な観測結果を収集することによって行われる。非常に多くの観測結果、すなわちセンサ情報が収集されて、優決定連立方程式（ｏｖｅｒ−ｄｅｔｅｒｍｉｎｅｄ  ｓｙｓｔｅｍ  ｏｆ  ｅｑｕａｔｉｏｎｓ）が達成され、それにより正しい解への安定収束が導かれることが好ましい。
【０１０１】
最小二乗関数
好ましくは優決定の連立方程式は、二乗誤差を表す最小二乗関数によって解かれる。方程式３において、変換は、図７に示された開いた連鎖における関節の誤差を表す。
2014527920.tif 000005
【０１０２】
位置誤差は、誤差の平行移動部（ｅｒｒｏｒ’ｓ  ｔｒａｎｓｌａｔｉｏｎ  ｐａｒｔ）の二乗長さを計算することによって考慮される。方程式４を参照されたい。
2014527920.tif 000006
【０１０３】
回転誤差は軸角表記法ＡＡによって算出される（Ｒｏｂｅｒｔ  Ｊ  Ｓｃｈｉｌｌｉｎｇ：Ｆｕｎｄａｍｅｎｔａｌｓ  ｏｆ  Ｒｏｂｏｔｉｃｓ：Ａｎａｌｙｓｉｓ  ａｎｄ  Ｃｏｎｔｒｏｌ，Ｓｉｍｏｎ  ＆  Ｓｃｈｕｓｔｅｒ  Ｔｒａｄｅ，１ｓｔ  ｅｄｉｔｉｏｎ，１９９６を参照）。角度の誤差は、誤差回転部からＡＡを計算することによって求められる。方程式５を参照されたい。
2014527920.tif 000007
【０１０４】
結果的に得られる最小二乗方程式は、Ｎ個の観測結果に対する方程式４および５の二乗和である。方程式６を参照されたい。
2014527920.tif 000008
これは図６に示すように連鎖端部間の誤差間隙を表す。
【０１０５】
制約条件
モデルを適切にスケーリングするために、モデルにおける既知の距離または距離変化を持つ必要がある。これは、図７のように三角法によって表すことができる。図７では、三角形の角度は同じであるが、スケールは異なる。モデルのスケールファクタを推定する方法は、既知の距離を定義しかつ固定することのできるモデルを実現するか、あるいは使用されているモデルで固定することのできる距離を設計することによる。別の可能性は、ロボットの期待寸法に関する統計情報を使用し、かつそれを使用してスケールの推測を調整することである。これは例えばチホノフ正則化法によって行われる。
【０１０６】
観測結果の収集
上述の通り、該方法を使用するためには、物理的連鎖からの観測結果を収集しかつ保存して、数学的表現でそれを模倣することが必要である。観測結果はオペレータの監督下で手動的に、または作業空間を自律的に動き回るロボットによって自動的に、収集することができる。作業空間全体に分布する充分な測定値を収集する必要がある。これは、較正が使用された作業空間を表すと想定することしかできないという事実による。ロボット６、８を相互に接続して従動させる必要があるので、一部の関節の位置調整器は作動を停止し、他の関節の位置調整器によって操作することができることがさらに好ましい。較正の欠如のため運動学が不明であるので、逆運動学を使用することなくロボット６、８の連鎖を操作する必要がある。
【０１０７】
評価
最終較正の信頼できる評価は、推定数学モデルを使用し、それを観測結果と比較することによる。これらの観測結果は、較正手順に使用されかつロボットの作業空間全体に分布する観測結果とは独立していることが重要である。較正からの観測結果を使用して較正を評価する場合、結果を支持するための新しい情報が追加されていないので、結果は信頼できない。結果の品質に対する別の信頼性指標は、較正を物理的な既知のパラメータについて調整させ、その後でそれを既知の値と比較することである。
【０１０８】
ロボット６、８の関節を拘束連鎖に接続させることにより、位置の決定に関係するパラメータ以外のパラメータを調整する可能性が開ける。これらのパラメータの例は、連鎖における力に関係するパラメータの調整とすることができる。
【０１０９】
較正実施例
この実施例の目的は、本発明に係る方法を、出願人であるＵｎｉｖｅｒｓａｌ  Ｒｏｂｏｔｓ社によって製造された特定のロボットでどのように使用することができるかを例証し、説明することである。セットアップは、２つのＵＲ‐６‐８５‐５‐Ａ産業用シリアルロボット６、８およびツールフランジおよびベースフランジを接続する２つの固体受動アダプタを含む。図８には、ツールフランジを接続するために使用される固定アダプタ２だけが示される。この特定のタイプのロボット６、８は、平行である２つの回転関節および前の回転軸に対し垂直な４つの回転関節に分割される、６度の自由度を有する。２つのロボット６、８の純粋に静的な運動学的較正を行うには、それらを互いに対して固定された位置に取り付ける必要がある。連鎖を拘束するアダプタ２は、接続された端部関節が同一回転軸を共有すると関節間に何らかの望ましくないモデル依存性が導入されるので、共有しないように設計される。この実施例では、セットアップをシリングＤＨ表記法に対し最適化するために、ツールフランジおよびベースフランジは、既知の変位を置いてかつ９０度回転して接続される。拘束連鎖モデルのスケールを定義するために、ロボットに関する統計情報またはモデルの固定寸法を使用することが可能である。この実現では、既知の固定寸法を使用することを選択した。既知の寸法は、２つの回転軸１８、２０の間の共通法線１６の長さである。この法線の長さはＤＨ「ａ」パラメータによって直接表され、したがって定義しかつ固定することができる（図８参照）。
【０１１０】
表現
拘束連鎖のモデルは、図９に示すように各関節の変換を含む。両方のロボットに同一表現を使用するために、誤差計算は変化するが、下の方程式７の通り、依然として同一誤差を算出する。
2014527920.tif 000009
【０１１１】
ロボット間の接続は、ＤＨの拡張バージョンにより表すことができる（下の方程式８および９参照）。この表現は、変換をＤＨと同様の仕方で表すことを可能にし、同一利点をもたらす。
2014527920.tif 000010
【０１１２】
拘束連鎖モデルの各変換のためのパラメータを下の表１に記載する。固定距離はモデルにおいて「ａ」パラメータにより表される（表１参照）。同じ設計上の技巧は、ツールフランジおよびベースフランジ両方の接続に対して行われ、それらは両方とも既知の法線の長さにより固定することができる。上述の通り、システムに複数の予め分かっているパラメータを有することが好ましいが、必須ではない。これは、パラメータの１つを、較正の結果を評価するためのグラウンドトゥルース（ｇｒｏｕｎｄ  ｔｒｕｅ）として含めることを可能にする。
【０１１３】
2014527920.tif 000011
【０１１４】
2014527920.tif 000012
【０１１５】
図１０は、Ｒ個のロボットを較正する方法の実施形態を説明する流れ図を示す。Ｒは２以上の自然数である。図示した実施形態は、複数の関節、ベースフランジ、およびツールフランジを有するＲ個のロボットを提供するステップを含む。ステップ２２で、Ｒ個のロボットから拘束連鎖が形成される。次いでステップ２８で、対応する位置対（＜ＲｉＱ、ＲｊＱ＞ｍ）が収集される。次いでステップ３０で、モデルを推定するために充分なデータが収集されたか否かが評価される。否である場合、次いでステップ２６で、ロボットの関節位置が変更され、ブロック２８に示される通り、対応する位置対（＜ＲｉＱ、ＲｊＱ＞ｍ）が収集される。次いで再びステップ３０で、充分なデータが収集されたか否かが評価される。否である場合、矢印２９によって示される通り、ステップ２６および２８が繰り返される。しかし、充分なデータが収集された場合には、ステップ３２によって示される通り、収集された位置対データセット＜ＲｉＱ、ＲｊＱ＞の知識を使用することによって、モデルが更新または精緻化または推定される。これらの更新されたモデルは次いでステップ３４で保存され、それによって較正は、ステップ３６によって示される通り、終了する。
【０１１６】
図１１は、本発明に係るロボットを較正する方法の最高レベルの実施形態を示す。ステップ３８で該方法は開始され、次いでステップ４０で、ロボットは一緒に、拘束運動学的連鎖状態に取り付けられ、次いでステップ４２で、完全な較正に出発点を与えるために、高不確実性パラメータについて本発明の実施形態に係る較正ループが実行される。このループが成功すると、ステップ４４で完全なモデルが決定される。これが成功すると、ブロック４６によって示される通り、較正が行われる。しかし、矢印５０および５２によって示される通り、ステップ４２または４４のいずれかが失敗すると、ブロック４８によって示されるように較正は失敗する。
【０１１７】
図１２および図１３は、図１１の流れ図に示されたブロック４２および４４を実現するための２つの代替的方法を示す。
【０１１８】
図１２は、図１１の較正ループ４２および４４の自動バージョンの実施形態を示す。ステップ５４で、次の目標関節角度が生成またはロードされ、次いでステップ５６で、１つを除く全てのロボットが、目標角度を目指して力制御するように設定される。次いでステップ５８で、最後に残ったロボットは、位置制御により目標角度を目指すように設定される。次いでステップ６０で、同一または略同一の測定値を回避するために、センサ情報の変化が、適切に選択された閾値より大きいか否かが評価される。これが真である場合には、ステップ６２によって示される通り、センサ情報は保存される。他方、センサ情報の変化が前記適切に選択された閾値より低い場合には、次のステップ６４で、較正を進めるために充分なデータが収集されたか否かが評価される。これが真である場合には、ステップ６６によって示される通り、ロボットは動きを停止し、その後、ステップ６８によって示される通り、較正が実行され、すなわちモデルが精緻化される。次いでステップ７０で、較正が適正であるか否かが評価される。これが真である場合には、ステップ７２によって示される通り、較正ループが実行される。ステップ６４の評価で、較正を完了するために充分なデータが収集されていないことが示された場合には、ステップ７４で、ロボットがまだ動いているか否かが検査され、肯定ならば、ステップ６０〜６４が繰り返される。ロボットが動いていない場合には、ステップ７６で、ロボットが予想外に停止したか否かが確認される。これが真である場合には、ステップ８０で、物理的不都合が無いかどうか、例えばロボットが周囲環境またはロボット自体と衝突したか否か、誤り検査が行われる。ステップ７６における評価の結果が否定的であった場合には、ステップ５４以降が繰り返される。
【０１１９】
図１３は、図１１の較正ループ４２および４４の手動バージョンの実施形態を示す。本方法のステップの多くは、図１２に示した方法のステップと同様であるので、以下では相違点だけを説明する。本質的な相違は、ステップ６０の前に、ステップ８１で全てのロボットが力制御するように設定され、次いでステップ８２で関節角度が手動で操作されることである。
【０１２０】
図１４および図１５は、図１２および図１３でステップ６２によって示される通り、センサ情報を保存するための流れ図を示す。図１４は非同期ロボットのセンサ情報を保存するための流れ図を示し、図１５は同期ロボットの場合の流れ図を示す。図１４の最初のステップ８４で、ロボットの動きは中断され、次いでステップ８６で、ロボットが停止しているか否かが評価される。肯定ならば、ステップ８８で、センサ情報、例えば関節角度は保存され、その後、ステップ９０で、ロボットの動きは続行される。しかし、ロボットが同期している場合には、図１５の流れ図でサブステップ８８によって示される通り、センサ情報は直接保存される。これが可能になるのは、同期化により、全てのセンサからの情報が同時に収集されることが確保されるためである。これが同時に行われない場合、収集されたデータセットは拘束連鎖を反映せず、その場合測定値は使用できない。ロボットが同期しない場合、無矛盾性を確保するために、位置対が収集される前にロボットを停止させる必要がある。
【０１２１】
プログラム複製の実施例
本節は、一方または両方のロボットが較正されていない場合に、１つのロボットから別のロボットに作業プログラムを複製するために、いかに拘束連鎖法を使用することができるかについての実施例として記載する。この実施例は、複製されるプログラムを利用する。複製されるプログラムはロボット構成のウェイポイント（ｗａｙ−ｐｏｉｎｔ）を含む。ここで拘束連鎖は、ウェイポイントを使用して連鎖の第１部分を表し、次いで、第１ロボットのタスクを実行するように意図された新しいロボットで同じウェイポイントを再教示することにより、数学的に連鎖を拘束することによって得られる。図１６を参照されたい。ここで新しいロボット６は、古いロボット８の仮想画像と共に示される。
【０１２２】
データ
生成された参照データは、複製されるロボットのプログラムに基づく。データは、プログラムのタスクに不可欠の主要なウェイポイント位置を再学習することによって手動的に収集される。これらの本質的な位置はプログラムによって精度が変化することがあるが、大抵の場合、最も明確でありかつ複製が最も容易な位置である。これらの本質的な位置を再学習することにより、新しいロボットの結果的に得られるプログラムが、これらの主要位置で合致することも達成される。同じ２つのロボット間で幾つかのプログラムを複製しようとする場合には、これらの主要位置を再使用することができ、それによってロボットの間の高レベルのコンプライアンスが導かれる。タスクおよびロボットツールによっては、正しい位置および回転を決定することが難しい場合がある。特に回転は、ツールが回転に依存しない場合、正しく複製することが難しい場合がある。これは知識のレベルを低減させることがあり得るが、回転に依存しないことからこれらのタスクにおける回転はそれほど重要ではないので、依然として使用可能である。ロボットのタスクによっては、収集されたデータは典型的には、ロボットの本質的な動作が行われるグループ別に分類される。これは、２つのロボットの作業空間の間の関係が部分的にしか分からないこと、および正確な対応構成が主要位置付近でしか得られないことを意味する。しかし、他のウェイポイントはロボットのタスクにとって不可欠ではないので、大抵の場合、ロボットがプログラムのタスクを実行するには、それで充分である。プログラムを元のロボットに逆複製する必要がある場合には、対応する同じ主要位置を再使用することができる。これは、元のプログラムのみならず、その変更をも元のロボットに逆移植することを可能にする。これは、同様のロボットセルで同一プログラムが使用される場合に特に興味深く、それにより、柔軟性を失うこと無くプログラムを複製することによって、生産のアップスケーリングが可能になる。
【０１２３】
ロボットベースの表現
本実施例では、両方のロボット６、８に同一ツールが取り付けられること、およびツール中心点の位置が同一であることを想定している（図１６参照）。ロボット６、８の２つのベースの回転中心の間の変換の調整は、オイラ角（Ｅｕｌｅｒ  ａｎｇｌｅ）、ＲＰＹ、および３Ｄ位置ベクトルによって行われる。オイラ角を使用することにより、できるだけ少数のパラメータによる表現が達成され、それは、ロボットの変位の回転に対する調整がわずかまたは皆無であり、そのための特異点が無く、かつ制約条件付き最適化アルゴリズム（ｃｏｎｓｔｒａｉｎｅｄ  ｏｐｔｉｍｉｚａｔｉｏｎ  ａｌｇｏｒｉｔｈｍ）を使用する必要性が回避される。選択された表現は下の方程式１０で公式化される。
2014527920.tif 000013
【０１２４】
ロボットの表現
ロボット６、８は３種類のデナビット‐ハーテンバーグパラメータにより調整される。最初の２つは、上記の較正実施例で用いてものと同じである。しかし、最後の関節の調整に対しては、どの位置および回転も調整できることを確実にするために、ＲＰＹ表記法が選択される（下の方程式１１参照）。この表記法が使用されるのは、他のＤＨ表記法では、ツールフランジの変換を調整するために必要な変換を表すことができないからである。ベースの表現と同様に、ＲＰＹは、モデル化する必要のある回転がごくわずかまたは皆無であるため、適正な選択である。各関節に正しい表記法を選択することによって、結果的にパラメータ特異点無しにロボットが表現される。
2014527920.tif 000014
【０１２５】
2014527920.tif 000015
【０１２６】
2014527920.tif 000016
【０１２７】
2014527920.tif 000017
【０１２８】
図１７には、システムのどこで表２の変換が行われるかの概略図が示される。
【０１２９】
図１８には、図１９に示すプログラム変換で使用される位置対を収集するための流れ図の実施形態が示される。以下では、ロボットｊがロボットｉに置き換えられたと想定する。各ロボットは複数の関節、ベースフランジ、およびツールフランジを有する。最初のステップ９２で、プログラムセットＲｉＰがロードされ、次いで次のステップ９４で、作業プログラムＲｉＰに従って多数の位置または角度ＲｉＱが選択される。これらの位置およびしたがって対応する角度ＲｊＱは、プログラムされたタスクにおいて不可欠なウェイポイントであることが好ましい。次いでステップ９６で、リストＲｉＱにおける全てのＲｉＱｍに対し、ステップ９８が実行される。ステップ９８で、ロボットＲｊは、ＲｉＱｍ個の位置のうちの対応する位置に移動し、次いでそれらはステップ１００で、位置または角度対セット＜ＲｉＱ、ＲｊＱ＞ｍとして保存される。ループが終わらない場合、ブロック１０２によって示される通り、ステップ９６〜ステップ１００は繰り返される。しかし、ループが終了すると、ブロック１０４によって示される通り、結果として位置または角度対データセット＜ＲｉＱ、ＲｊＱ＞が得られる。
【０１３０】
図１９には、プログラム変換のための、すなわち上述した収集されたデータセットを用いてロボットｉからロボットｊに作業プログラムをコピーするための流れ図の実施形態が示される。ステップ９２でプログラムＲｉＰがロードされる。次いでステップ１０６で、対応する位置または角度対データセット＜ＲｉＱ、ＲｊＱ＞がロードされる。次いでステップ１０８で、収集された位置または角度対データセット＜ＲｉＱ、ＲｊＱ＞および拘束連鎖律を用いて、運動学的モデルＭｉ、Ｍｊ、Ｔｂａｓｅ、およびＴｔｃｐが推定される。次いでステップ１１０で、ＭｉによりＲｉＰにおける全てのＲｉＱに対し順運動学が適用され、それにより結果的にＲｉＫが得られる。その後、ステップ１１２で、Ｍｊにより全てのＲｊＫに対し逆運動学が適用され、それにより結果的にＲｊＱが得られる。次いでステップ１１４でＲｉＰの全てのＲｉＱは、対応するＲｊＱに置き換えられ、結果的にＲｊＰが得られ、それによってブロック１１６によって示される通り、プログラム変換が完了する。
【０１３１】
図２０は、プログラム補正のための最上レベルの流れ図を示す。出発点は、ステップ１８８に示す通りそのプログラムに記載されたタスクを実行する作業用ロボットの据付である。次いで、例えば機械的故障が発生した場合、ステップ１２０で、セットアップの変更が行われる。これは、ロボットの取替え、例えばブロック１２２によって示されるようにロボットの関節の置換、またはブロック１２４によって示されるようにロボットの置換、またはブロック１２６によって記載されるようにセットアップにおける他の変更とすることができる。次いで、次のステップ１２８で、新しいロボット部分（例えば新しいロボット全体）を用いて、プログラムにおける古い重要な位置の一部に対応する新しい関節角度が決定される。それにより新旧ロボットの関節角度対データが決定される。次いでステップ１３０で、これらのデータは、拘束連鎖特性を用いて新旧ロボットの運動学的モデルを精緻化するために使用される。その後、ステップ１３２で、上述の通りプログラム変換が実行される。プログラムの訂正が失敗すると、ステップ１２８〜１３２が繰り返される。しかし、プログラムの訂正が成功すると、次いでステップ１３４で、プログラムが使用可能であるか否かが、例えば新しいロボットでそれを実行させることによって決定される。これは例えば、適切に選択された許容範囲内で、プログラムが第２ロボットで実行することができるか否かを評価することによって行なうことができる。
【０１３２】
プログラムが使用可能である場合には、次のステップ、すなわちオプショナルステップ１３６で、変換が必要なプログラムがまだ残っているか否かが評価され、肯定ならば、次いでステップ１３２〜１３６が実行され、所与の角度対を調整することができ、あるいはさらなる角度対を追加することができる。そうでなければ、図示する流れ図でブロック１３８によって示すように、プログラムを使用することができる。
【０１３３】
図２１は、図２０に示した上記の流れ図のステップ１２８をいかに実行することができるかの実施形態をより詳細に説明する流れ図を示す。図示した方法は反復的である。最初に、ステップ１４０で、プログラムからの１つの重要なウェイポイントが使用され、次いでステップ１４２で、新しいロボットの関節角度の新しいセットが、それを正しい位置に動かすことによって定義される。次いで、ステップ１４４で、関節角度の新旧両方のセットが、対応する対として保存される。次いで、最後のステップ１４６で、他の重要なウェイポイントを定義する必要があるか否かが決定される。「はい」ならば、ステップ１４０〜１４６が繰り返される。「いいえ」ならば、次いで角度対は、モデルを更新する次のステップで使用される（図２０のステップ１３０を参照）。
【０１３４】
図２２には、プログラムの訂正／変換のステップ１３２をいかに実行することができるかの実施形態がより詳細に示される。図示する通り、最初のステップは訂正するプログラム１４８をロードすることであり、次いで、次のステップで、最初のウェイポイントが決定される。ステップ１５２で、対応する位置がステップ１２８によってすでに定義されているか否かが評価される。否である場合、ステップ１５４で、古いロボットを表すモデルを用いて順運動学が適用され、それにより得られた結果に基づいて、ステップ１５６によって示されるように、新しいロボットを表すモデルを用いて逆運動学が計算される。次いでステップ１５８で、計算が成功したか否かが評価される。「はい」ならば、次いでステップ１６０で、逆運動学によって算出された最も近い解が選択される。次いで次のステップ１６２で、古いウェイポイントが計算された新しいウェイポイントに置き換えられる。最後に、ステップ１６４で、ウェイポイントがもっと必要であるか否かが評価され、「はい」ならば、ステップ１５０〜１６４が実行される。ステップ１５２の評価の結果が真である場合には、ステップ１６６によって示されるように、すでに定義されている対応する関節角度が使用される。
【０１３５】
説明した通り、較正されていないロボット間でプログラム変換を実行することが、本発明によって可能である。
【符号の説明】
【０１３６】
以下において本発明の「発明を実施するための形態」で使用されている参照符号のリストが与えられる。
２    ツールフランジアダプタ
４    ベースフランジアダプタ
６，８    ロボット
１０    ベースフランジ
１６    回転軸間の共通法線
１６，２０    回転軸
２２−３６    方法ステップ、較正
３８−５２    方法ステップ、較正
５４−８２    方法ステップ、自動および手動の較正ループ
８４−９０    方法ステップ、センサ情報の保存
９２−１０４    方法ステップ、角度データ対の収集
１０６−１１６    方法ステップ、プログラム変換
１１８−１３８    方法ステップ、プログラム補正
１４０−１４６    方法ステップ、関節角度の決定
１４８−１６６    方法ステップ、プログラムの補正
【図１】
2014527920.tif 000018
【図２】
2014527920.tif 000019
【図３】
2014527920.tif 000020
【図４】
2014527920.tif 000021
【図５】
2014527920.tif 000022
【図６】
2014527920.tif 000023
【図７】
2014527920.tif 000024
【図８】
2014527920.tif 000025
【図９】
2014527920.tif 000026
【図１０】
2014527920.tif 000027
【図１１】
2014527920.tif 000028
【図１２】
2014527920.tif 000029
【図１３】
2014527920.tif 000030
【図１４】
2014527920.tif 000031
【図１５】
2014527920.tif 000032
【図１６】
2014527920.tif 000033
【図１７】
2014527920.tif 000034
【図１８】
2014527920.tif 000035
【図１９】
2014527920.tif 000036
【図２０】
2014527920.tif 000037
【図２１】
2014527920.tif 000038
【図２２】
2014527920.tif 000039
【国際調査報告】
2014527920.tif 000040
2014527920.tif 000041
2014527920.tif 000042
2014527920.tif 000043
2014527920.tif 000044