(57)【特許請求の範囲】
【請求項１】
マルチロボットシステムを較正するためのシステムであって、
被加工物がコンベア上を移動する実ロボット作業セルの予め定められたレイアウトに基づいてシミュレーション作業セルを作成するためのロボットシミュレーション装置であって、プロセッサを内蔵し、前記実ロボット作業セル内のロボットを制御するロボット制御システムと通信する、ロボットシミュレーション装置と、
前記シミュレーション作業セル内の被加工物の位置と、前記実ロボット作業セル内の前記被加工物の位置との差に相当する変換行列である部品追跡オフセットを計算するために、前記ロボットシミュレーション装置及び前記ロボット制御システムの少なくとも一方によって実行されるソフトウェアプログラムと、を備え、
前記ロボット制御システムは、前記ロボットを制御するために前記部品追跡オフセットを使用し、
前記ロボットシミュレーション装置は、前記実ロボット作業セルのツールで、前記被加工物上の識別可能なポイントを、該実ロボット作業セル内の該被加工物の第１の位置で接触し、該被加工物上の識別可能なポイントを、該実ロボット作業セル内の該被加工物の第２の位置で接触するのに応じて、前記部品追跡オフセットを計算する、システム。
【請求項２】
前記ロボットシミュレーション装置は、前記ロボット制御システムからオフラインで動作する、請求項１に記載のシステム。
【請求項３】
前記ロボットシミュレーション装置は、前記実ロボット作業セル内の前記マルチロボットシステム及び被加工物の３次元モデルを提供する表示装置を有する、請求項１に記載のシステム。
【請求項４】
前記予め定められたレイアウトは、前記マルチロボットシステムの製造設計図面に基づいている、請求項１に記載のシステム。
【請求項５】
前記ソフトウェアプログラムは、前記ロボットシミュレーション装置を通して、前記ロボットの教示ポイントをシフトさせるために使用される追跡座標系を前記シミュレーション作業セルに設定する、請求項１に記載のシステム。
【請求項６】
前記部品追跡オフセットは、前記ロボット制御システムによって実行される、前記シミュレーション作業セルにおける前記ロボットを前記実ロボット作業セルにおける前記ロボットの位置に一致させるように再配置するための座標系較正と、前記シミュレーション作業セルにおける前記被加工物を前記実ロボット作業セルにおける前記被加工物の位置に一致させるように再配置するための較正パスと、の少なくとも一方に基づいて計算される、請求項１に記載のシステム。
【請求項７】
前記座標系較正は、前記実ロボット作業セル内の任意の位置に設定された作業セル座標系を基準として、該実ロボット作業セル内の前記ロボットに前記識別可能なポイントを接触させる動作を教示することによって、新たな追跡座標系を計算することを含み、
前記較正パスは、前記実ロボット作業セル内の前記被加工物上の少なくとも３つのポイントを前記ロボットに教示することを含む、請求項６に記載のシステム。
【請求項８】
前記新たな追跡座標系は、前記実ロボット作業セル内のコンベア上を移動する前記被加工物を用いて計算される、請求項７に記載のシステム。
【請求項９】
マルチロボットシステムを較正するための方法であって、
予め定められたレイアウトに基づく、被加工物がコンベア上を移動する実ロボット作業セルの動作のシミュレーション作業セルを、ロボットシミュレーション装置を通して作成することと、
前記ロボットシミュレーション装置を通して、ロボットの教示ポイントをシフトさせるために使用される追跡座標系を前記シミュレーション作業セルに設定することと、
前記実ロボット作業セル内のロボットのためのロボット制御システムを通して、前記シミュレーション作業セルと前記実ロボット作業セルとの間にずれがあるか否かを判定することと、
前記シミュレーション作業セルと実ロボット作業セルとの間に前記ずれがある場合に、前記ロボット制御システムを通して、前記シミュレーション作業セルにおけるロボットを、前記実ロボット作業セルにおける前記ロボットの位置に一致させるように再配置するための座標系較正を実行し、前記ロボットの制御のために前記シミュレーション作業セルを前記実ロボット作業セルで較正することと、
前記マルチロボットシステムの複数の前記ロボットの各々に、新たな追跡座標系を教示することと、を備え、
前記教示することは、前記複数のロボットの少なくとも１つのツールで、前記被加工物上の識別可能なポイントを、前記実ロボット作業セル内の該被加工物の第１の位置で接触し、該被加工物上の識別可能なポイントを、該実ロボット作業セル内の該被加工物の第２の位置で接触することを含む、方法。
【請求項１０】
前記ロボットシミュレーション装置は、前記ロボット制御システムからオフラインの関係にある、請求項９に記載の方法。
【請求項１１】
前記予め定められたレイアウトは、前記マルチロボットシステムの製造設計図面に基づいている、請求項９に記載の方法。
【請求項１２】
前記シミュレーション作業セルと前記実ロボット作業セルとの間に前記ずれがある場合に、前記座標系較正を実行し、
前記座標系較正は、
前記実ロボット作業セル内の任意の位置に作業セル座標系を設定することと、
前記作業セル座標系を基準として、前記実ロボット作業セル内の前記ロボットに前記識別可能なポイントを接触させる動作を、前記ロボット制御システムを通して該ロボットに教示することによって、前記新たな追跡座標系を計算することと、を含む、請求項９に記載の方法。
【請求項１３】
前記新たな追跡座標系を計算することは、前記ツールを第３の位置へ、前記実ロボット作業セルを通過する前記被加工物の移動方向と直交する方向へ寸動することを含む、請求項１２に記載の方法。
【請求項１４】
前記新たな追跡座標系を計算するときに、前記ロボット制御システムを通して、
前記実ロボット作業セル内のコンベア上で被加工物を、予め指定された位置から第１の位置まで移動させ、
前記予め指定された位置から前記第１の位置までの距離を表すオフセットを記録し、
前記オフセットに基づいて前記新たな追跡座標系を計算する、請求項１２に記載の方法。
【請求項１５】
前記ロボット制御システムを通して、前記シミュレーション作業セルにおける前記被加工物を、前記実ロボット作業セルにおける前記被加工物の位置に一致させるように再配置するための較正パスを実行し、
前記較正パスは、前記実ロボット作業セル内の前記被加工物上の少なくとも３つの非線形ポイントを前記ロボットに教示することを含む、請求項９に記載の方法。
【請求項１６】
前記座標系較正を実行した後に、前記実ロボット作業セルと実質一致させるように、前記ロボットシミュレーション装置を通して前記シミュレーション作業セルを再配置することと、
前記ロボットシミュレーション装置を通して、前記シミュレーション作業セルにおける被加工物の位置と、前記実ロボット作業セルにおける被加工物の位置との差に相当する変換行列である部品追跡オフセットを、前記シミュレーション作業セルの前記再配置に基づいて計算することと、を有する、請求項９に記載の方法。
【請求項１７】
ユーザが前記シミュレーション作業セルを再配置するのを補助するために、前記シミュレーション作業セル内の前記被加工物から前記実ロボット作業セル内の前記被加工物への較正パスを表すノードマップを前記ロボットシミュレーション装置に表示する、請求項１６に記載の方法。
【請求項１８】
マルチロボットシステムを較正するための方法であって、
予め定められたレイアウトに基づく、被加工物がコンベア上を移動する実ロボット作業セルの動作のシミュレーション作業セルを、ロボットシミュレーション装置を通して作成することと、
前記ロボットシミュレーション装置を通して、ロボットの教示ポイントをシフトさせるために使用される追跡座標系を前記シミュレーション作業セルに設定することと、
前記実ロボット作業セル内のロボットのためのロボット制御システムを通して、前記シミュレーション作業セルと前記実ロボット作業セルとの間にずれがあるか否かを判定することと、
前記シミュレーション作業セルと実ロボット作業セルとの間に前記ずれがある場合に、前記ロボット制御システムを通して、前記シミュレーション作業セルにおけるロボットを、前記実ロボット作業セルにおける前記ロボットの位置に一致させるように再配置するための座標系較正と、前記シミュレーション作業セルにおける被加工物を、前記実ロボット作業セルにおける被加工物の位置に一致させるように再配置するための較正パスと、の少なくとも一方を実行し、前記シミュレーション作業セルを前記実ロボット作業セルで較正することと、
前記実ロボット作業セルと実質一致させるように、前記ロボットシミュレーション装置を通して前記シミュレーション作業セルを再配置することと、
前記ロボットシミュレーション装置を通して、前記シミュレーション作業セルにおける被加工物の位置と、前記実ロボット作業セルにおける前記被加工物の位置との差に相当する変換行列である部品追跡オフセットを、前記シミュレーション作業セルの前記再配置に基づいて計算し、前記ロボットを制御するために該部品追跡オフセットを使用することと、
前記マルチロボットシステムの複数の前記ロボットの各々に、新たな追跡座標系を教示することと、を備え、
前記教示することは、前記複数のロボットの少なくとも１つのツールで、前記被加工物上の識別可能なポイントを、前記実ロボット作業セル内の該被加工物の第１の位置で接触し、該被加工物上の識別可能なポイントを、該実ロボット作業セル内の該被加工物の第２の位置で接触することを含む、方法。
【請求項１９】
前記シミュレーション作業セルと実ロボット作業セルとの間に前記ずれがある場合に、前記座標系較正を実行し、
前記座標系較正は、
前記実ロボット作業セル内の任意の位置に作業セル座標系を設定することと、
前記作業セル座標系を基準として、前記実ロボット作業セルの前記ロボットに前記識別可能なポイントを接触させる動作を、前記ロボット制御システムを通して該ロボットに教示することによって、前記新たな追跡座標系を計算することと、を有する、請求項１８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、本明細書中にその全体が参照として援用されている、２０１２年１１月２９日付で出願された米国仮特許出願第６１／７３１，１３７号明細書に対して優先権を主張する。
【０００２】
本発明は、生産施設内においてマルチロボットシステムを較正する方法に関する。
【背景技術】
【０００３】
現在において、グラフィカルオフラインプログラミングソリューション（ｇｒａｐｈｉｃａｌ  ｏｆｆｌｉｎｅ  ｐｒｏｇｒａｍｍｉｎｇ  ｓｏｌｕｔｉｏｎ）が、ロボティックパス教示（ｒｏｂｏｔｉｃ  ｐａｔｈ  ｔｅａｃｈ）および塗装工程開発を容易化している。このソリューションは、特に、ロボットコントローラアプリケーションソフトウェアによって使用されることが可能なロボットパス（ｒｏｂｏｔｉｃ  ｐａｔｈ）を作成するように設計されている。このソリューションは、オフセットデータが計算される較正特徴要素を含み、および、教示されたパスを手作業でシフトまたはオフセットさせる方法がユーザに提供される。
【０００４】
塗装工程のために使用されるロボットの現在の実装例では、追跡座標系（ｔｒａｃｋｉｎｇ  ｆｒａｍｅ）とユーザ定義座標系（ｕｓｅｒ  ｄｅｆｉｎｅｄ  ｆｒａｍｅ）とが、一般的に、実行時において教示されたポイントをグローバルにシフトさせるために使用可能である。しかし、これらの座標系は、通常は、ユーザによって手作業で計算および設定されなければならない。非塗装システムでは、視覚（ｖｉｓｉｏｎ）が、この作業においてユーザを補助するために使用されることがある。
【０００５】
これに加えて、オフラインシミュレーションソリューション（ｏｆｆｌｉｎｅ  ｓｉｍｕｌａｔｉｏｎ  ｓｏｌｕｔｉｏｎ）が、塗装されるべき部品のシミュレートされたＣＡＤモデル上における教示およびタッチアップ（ｔｏｕｃｈ  ｕｐ）ポイントに基づいてオフセットデータ（ｏｆｆｓｅｔ  ｄａｔａ）を計算するための較正ユーティリティを有するだろう。しかし、既存の較正ユーティリティは、ロボットの教示されたパスに手作業で適用するためのオフセットデータをユーザに提供するだけである。さらに、既存の較正ユーティリティによって提供されるオフセットデータは、適正な座標系（ｆｒａｍｅ）の形で表現されることがないだろう。
【０００６】
最後に、生産環境内で使用されるロボット作業セル（ｒｏｂｏｔ  ｗｏｒｋ  ｃｅｌｌ）における固定座標系（ｓｔａｔｉｏｎａｒｙ  ｆｒａｍｅ）を計算するための較正ユーティリティが当業で公知である。しかし、こうした較正ユーティリティは、固定された作業区域内の固定された被加工物のための座標系を計算することだけが可能であるにすぎず、移動中のコンベア上の被加工物を考慮しない。現在の較正ユーティリティは、さらに、較正を行うための特殊な機械設備（ｔｏｏｌｉｎｇ）またはハードウェアを必要とする。
【０００７】
従来の技術は、幾つかの点で不適切であった。第１に、既知の較正ユーティリティは、ユーザ側において少なくとも幾らかの量の手作業の計算が必要とされるので、著しく制約されている。第２に、塗装作業においては、この既知の較正を用いてユーザを補助するために視覚を採用するという方法が、有害な塗装環境と制限されたカメラ視界とのために、必ずしも常に実行可能とはかぎらない。第３に、現行の較正ユーティリティが特殊なハードウェアを必要とするので、較正ユーティリティ全体が非常に高コストなものとなる可能性がある。第４に、座標系とオフセットとを計算する既存の較正方法は、移動中のコンベア上の被加工物を適正には計算に入れない。ロボットを較正するシステムおよび方法が改良されることが可能であるならば、これは有利であるだろう。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】米国特許出願２０１０／２６２２８８号
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本開示によって、マルチロボットシステムを較正する改良されたシステムおよび方法が、驚くべきことに発見されている。
【課題を解決するための手段】
【００１０】
本発明の実施態様によって、マルチロボットシステムを較正するためのシステムが開示されている。このシステムは、中に配置されているプロセッサを有しており、かつ、実ロボット作業セルの動作のシミュレーション作業セルを作成するように構成されているロボットシミュレーション装置であって、実ロボット制御システムと通信するように構成されているロボットシミュレーション装置と、シミュレーション作業セルと実ロボット作業セルとの間の部品追跡オフセット（ｐａｒｔ  ｔｒａｃｋｉｎｇ  ｏｆｆｓｅｔ）を計算するための、ロボットシミュレーション装置と実ロボット制御システムとの少なくとも一方によって実行されるソフトウェアプログラムとを含む。
【００１１】
別の実施態様では、マルチロボットシステムを較正するための方法が、ロボットシミュレーション装置によって実ロボット作業セルの動作のシミュレーション作業セルを作成し、かつ、このシミュレーション作業セルが実ロボット作業セルの予め決められたレイアウトに基づいている段階と、ロボットシミュレーション装置によってシミュレーション作業セル内の追跡座標系を設定する段階と、シミュレーション作業セルと実ロボット作業セルとの間に逸脱（ずれ：ｄｅｖｉａｔｉｏｎ）が存在するかどうかを実ロボット制御システムによって判定する段階と、シミュレーション作業セルを実ロボット作業セルによって較正するために、実ロボット制御システムによって，座標系較正および較正パスの少なくとも一方を実行する段階とを含む。
【００１２】
さらに別の実施態様では、マルチロボットを較正するための方法が、ロボットシミュレーション装置によって実ロボット作業セルの動作のシミュレーション作業セルを作成し、かつ、このシミュレーション作業セルが実ロボット作業セルの予め決められたレイアウトに基づいている段階と、ロボットシミュレーション装置によってシミュレーション作業セル内の追跡座標系を設定する段階と、シミュレーション作業セルと実ロボット作業セルとの間に逸脱が存在するかどうかを実ロボット制御システムによって判定する段階と、シミュレーション作業セルを実ロボット作業セルによって較正するために、実ロボット制御システムによって、座標系較正および較正パスの少なくとも一方を実行する段階と、ロボットシミュレーション装置によって、実ロボット作業セルと実質的に同等であるようにシミュレーション作業セルを再配置する段階と、シミュレーション作業セルの再配置に基づいてロボットシミュレーション装置によって部品追跡オフセットを計算する段階とを含む。
【００１３】
本発明の上述の利点と他の利点とが、次の添付図面を参照しながら考察される時に、好ましい実施態様の以下の詳細な説明から、当業者に容易に明らかになるだろう。
【図面の簡単な説明】
【００１４】
【図１】図１は、本発明の実施形態による方法を行うためのシステムの略ブロック図である。
【図２】図２は、本発明によるマルチロボットシステムを較正するための方法の流れ図である。
【図３】図３は、本発明の実施形態による追跡座標系を定義することの略平面図である。
【図４】図４は、本発明の実施形態による公称追跡座標系を教示するための方法の流れ図である。
【図５】図５は、図４の方法による公称追跡座標系を教示することの例示的な略平面図である。
【図６】図６は、本発明の実施形態による部品追跡座標系を計算するために使用されるシミュレーション作業セルの例示的な斜視図である。
【発明を実施するための形態】
【００１５】
以下の詳細な説明と添付図面とが、本発明の種々の例示的な実施形態を説明および図示する。この説明と図面は、当業者が本発明を作成および使用することを可能にする役割を果たすが、本発明の範囲を限定することは全く意図されていない。開示されている方法に関しては、示されている諸段階は本質的に例示的であり、および、したがって、これらの諸段階の順序は必須でも重要でもない。
【００１６】
図１は、本発明の一実施形態による方法を行うためのシステムの略ブロック図である。実ロボット作業セル１０が、ロボットを利用した製造工程が行われることを可能にすることを容易化する。図１に示されている実施形態では、実ロボット作業セル１０は、塗装ブース作業セルを概略的に示している。しかし、この実ロボット作業セル１０は、必要に応じて、任意の製造工程のための作業セルであることが可能である。この実ロボット作業セル１０は、ロボット制御システム２０によって制御および監視される複数のロボット１１、１２、１３、１４、１５、１６を含むことが可能である。これらのロボット１１、１２、１３、１４、１５、１６は、塗装ロボット、自動車ドア開けロボット、自動車フードオープナロボット（ｖｅｈｉｃｌｅ  ｈｏｏｄ  ｏｐｅｎｅｒ  ｒｏｂｏｔ）、自動車トランク開けロボット、または、必要に応じて任意の他の作業を行うために使用されるロボットであることが可能である。これに加えて、６つのロボット１１、１２、１３、１４、１５、１６が図１に示されているが、例えば６つのロボットより少ないかまたは多い任意の数のロボットのような任意の数のロボットがこの実ロボット作業セル１０内に含まれることが可能である。
【００１７】
図１を続けて参照すると、２つのロボット１１、１２は、ロボット制御システム２０のコントローラ＃１  １７に接続されている。２つのロボット１３、１４はロボット制御システム２０のコントローラ＃２  １８に接続されている。２つのロボット１５、１６はロボット制御システム２０のコントローラ＃３  １９に接続されている。１つまたは複数のロボットの動作を協調させるために、必要に応じて、任意の数のロボットが各コントローラに接続されることが可能であるということを理解されたい。さらに、任意の数のコントローラが、１つまたは複数のロボットの動作を互いに協調させるために、必要に応じて使用されることが可能である。コントローラ１７、１８、１９は、例えば塗装工程のような選択された工程を行うように、ロボット１１、１２、１３、１４、１５、１６の協調動作のために、通信プロトコルによって直接的または間接的に通信するだろう。コントローラ１７、１８、１９は、必要に応じて、任意のネットワークを介して有線通信または無線通信を行うことが可能である。例えば、図１に示されているように、コントローラ１７、１８、１９はイーサネットネットワーク２６を経由して通信することが可能である。
【００１８】
ロボット制御システム２０は、コントローラ１７、１８、１９から通信されるデータを取得して記憶するためのデータ記憶装置２２を含む。このデータ記憶装置２２は、コントローラ１７、１８、１９のいずれかと共に含まれることも可能である。データ記憶装置２２は、実ロボット作業セル１０と、実ロボット作業セル１０の外部に位置しているロボットシミュレーション装置３０とに接続されることが可能である。このロボットシミュレーション装置３０は、ロボット１１、１２、１３、１４、１５、１６の動作をシミュレートするために、および、ロボット１１、１２、１３、１４、１５、１６の最適な配置および移動を実現することを容易化するために使用される装置である。このロボットシミュレーション装置３０はプロセッサ３１と記憶装置３２とを有する。図１には示されていないが、ロボットシミュレーション装置３０は、さらに、ユーザの編集と修正と指示等のためのデータを入力するためのユーザ入力装置と、必要に応じて、ロボット１１、１２、１３、１４、１５、１６と、被加工物５０（図３）と、実ロボット作業セル１０内のあらゆる他の装置との３次元シミュレーションを同時に表示するための表示装置とを含むことが可能である。
【００１９】
プロセッサ３１が、ロボット制御システム２０のコントローラ１７、１８、１９と通信させられるデータ３４としてシミュレーション作業セルのオフライン構成を作成するように、ロボットシミュレーション装置３０上に記憶されているソフトウェアプログラム３３によって指示される。このソフトウェアプログラム３３は、３次元ロボット作業セルをシミュレートするように構成されている任意のソフトウェアプログラム、または、ＣＡＤに対して適合性がありかつマルチロボット作業セルの動作をシミュレートすることが可能である任意の他のソフトウェアプログラムであることが可能である。他のデータが、ロボットシミュレーション装置３０とロボット制御システム２０のデータ記憶装置２２との間で転送されることが可能である。このデータは、座標系較正データ３５、較正パスデータ３６、または、マルチロボットシステムのためのパスを作成することとマルチロボットシステムを較正することとを容易化するための必要に応じた任意の他のデータを含むことが可能である。さらに、このソフトウェアプログラム３３は、コントローラ１７、１８、１９による使用のために後でデータ記憶装置２２にダウンロードされることが可能である、部品追跡オフセットデータ３７を計算することが可能である。
【００２０】
図２に示されているように、マルチロボットシステムを較正するための方法が提供される。ステップ１００では、シミュレーション作業セル３４が、リアルタイムで動作する実ロボット作業セル座標系１０のロボット制御システム２０から分離してオフラインで作成される。このシミュレーション作業セル３４は、ロボットシミュレーション装置３０に対してＣＡＤモデルからインポートされる製造設備設計図面および設計図に基づいた、実ロボット作業セル１０内のあらゆる装置の予め決められたシミュレートされたレイアウトである。この予め決められたシミュレートされたレイアウトは、ロボットを利用した製造工程サイトにおいて実ロボット作業セル１０内の全装置の実際の設置中に逸脱が生じることがある前の、設置設計図面に基づいた「理想的な」設置またはレイアウトを表す。シミュレーション作業セル３４は、ロボットを利用した製造工程現場において、実ロボット作業セル１０の設置前、設置中、または、設置後のような、任意の時点において必要に応じて構成されることが可能である。
【００２１】
図３は、本発明の一実施形態による、追跡座標系の計算（ステップ１１０）の略平面図である。この図では、シミュレーション作業セル３４が、予め決められたレイアウトによって両方の実ロボット作業セルがリアルタイムでどのように見えるべきかを表している。このシミュレーション作業セル３４は、ロボットシミュレーション装置３０で何が表示されることがあるかの一例である。この例示的なシミュレーション作業セル３４は、コンベア５４上に置かれている被加工物５０と、作業区域５２内で動作するロボット１１、１２、１３、１４、１５、１６とを示す。示されている被加工物５０は、自動車の車体であり、特に、自動車車体の１つのスタイルまたはモデルによる車体である。被加工物５０は、自動車のあらゆるスタイルまたはモデルにしたがって、任意のタイプの自動車車体であるように交換されることが可能である。ロボット１１、１２、１３、１４、１５、１６は、必要に応じて、被加工物５０上で所望の動作を行うようにプログラムされることが可能である。
【００２２】
ステップ１１０では、シミュレーション作業セル３４が構成され終わった後に、各ロボット１１、１２、１３、１４、１５、１６に関する公称追跡座標系と作業セル座標系とのような追跡座標系が、ロボットシミュレーション装置３０によってオフラインで設定される。このオフラインのシミュレーション装置３０は、作業セル座標系に対応するために、必要に応じて、シミュレーション作業セル３４上の任意の位置を設定することが可能である。図３に示されている非限定的な具体例では、作業セル座標系は、被加工物５０がコンベア５４上で移動する時にその被加工物５０の指定された位置５６に位置するように、シミュレーション作業セル３４上で設定されることが可能である。作業区域５２に入る前に被加工物５０が部品検出スイッチ（ｐａｒｔ  ｄｅｔｅｃｔ  ｓｗｉｔｃｈ）（図示されていない）に到達する時に、位置５６が設定されることが可能である。この部品検出スイッチは、コントローラ１７、１８、１９がロボット１１、１２、１３、１４、１５、１６がその工程を行うようにこれらのロボットを制御し始めるように、被加工物５０の位置を信号で知らせる。
【００２３】
ステップ１２０では、ステップ１１０において追跡座標系の計算中にオフラインで生成されたシミュレーション作業セル３４データが、ロボットシミュレーション装置３０上に記憶されているデータ追跡ファイル内に格納される。ステップ１３０では、このデータ追跡ファイルは、シミュレーション作業セル３４データと共に、ロボット１１、１２、１３、１４、１５、１６のコントローラ１７、１８、１９に対して通信されるように、ロボット制御システム２０のデータ記憶装置２２に転送またはダウンロードされる。このファイルは、例えばＸＭＬデータファイルのような、ロボットシミュレーション装置３０とコントローラ１７、１８、１９の両方による読み取りおよび書き込みに適合可能であるように構成されている任意のファイル形式であることが可能である。
【００２４】
ステップ１４０では、設置データがロボット制御システム２０内で検証される。ステップ１５０では、ロボット作業セル１０の実際の設置が、ロボット作業セル１０とシミュレーション作業セル３４との間に逸脱があるかどうかを判定するために、「理想的な」設置に基づいて設定されたシミュレーション作業セル３４に対して比較される。このシミュレーション作業セル３４の構成が実ロボット作業セル１０の構成に十分には近似していない場合は、座標系較正３５手続きがステップ１６０、１７０で行われる。ロボット作業セル１０の実際の設置が「理想的な」設置に十分に近似している場合には、ステップ１８０に示されているように、較正パス３６が教示されることが可能である。
【００２５】
ステップ１６０では、各ロボット１１、１２、１３、１４、１５、１６に関する公称追跡座標系が、ロボット制御システム２０によって実ロボット作業セル７０においてリアルタイムでユーザによって教示される。各ロボット１１、１２、１３、１４、１５、１６に関する公称追跡座標系は、ロボット教示プログラムによってユーザによって教示される。この教示プログラムはオフセット計算を含む。ロボット制御システム２０によって、実ロボット作業セル１０の作業セル座標系を判定するための方法が実行される。この作業セル座標系は、各ロボット１１、１２、１３、１４、１５、１６に関する同一の公称追跡座標系が設定されている実ロボット作業セル１０内の任意の位置である。この同一の場所が、ロボット制御システム２０において、ロボットコントローラ１７、１８、１９の全てにわたって共通の作業セル座標系を設定するという目的のための作業セル座標系の場所となる。各ロボット１１、１２、１３、１４、１５、１６に関する公称追跡座標系が同一の位置であるという結果を得るために、必要に応じてあらゆる手続きが使用されることが可能である。作業セル座標系が設定される実際の位置は重要ではなく、必要に応じて選択されることが可能である。非限定的な例では、図３に示されているように、作業セル座標系は、コンベア５４の縦方向の中心線ｃがコンベア５４上の被加工物５０の移動方向に関して第１の上流側のロボット１１のワールド座標系原点（ｗｏｒｌｄ  ｆｒａｍｅ  ｏｒｉｇｉｎ）の軸線ａと交差する通常の場所５８に位置するように選択されることが可能である。したがって、各ロボット１１、１２、１３、１４、１５、１６に関する公称追跡座標系は、作業セル座標系の通常の場所５８に位置するように教示されることが可能である。必要に応じて任意の位置が作業セル座標系であるように選択されることが可能であるということを理解されたい。
【００２６】
図４と図５に示されているように、ステップ１６０の公称追跡座標系を教示する方法が、本発明の実施形態にしたがって示されている。示されているように、実ロボット作業セル１０は「理想的な」ロボットレイアウトから逸脱している。この方法は、実ロボット作業セル１０内の各ロボット１１、１２、１３、１４、１５、１６に対して行われる。第１のステップ１６１では、被加工物５０が、部品検出スイッチを通過して、教示のために作業区域５２の中に移動させられる。公称追跡座標系に関する各々の教示ポイントから部品検出スイッチ場所へのコンベアに沿った距離が測定されるように、ステップ１６１が行われる。図５は、作業セル座標系として通常の場所５８を選択する時に、公称追跡を教示するための方法の例示的な略平面図を示す。図示されているように、被加工物５０は、ステップ１６２に示されているように、部品検出スイッチにおける指定された位置５６から、第１の上流側のロボット１１によって到達可能な指定された位置５７へ移動させられる。第１の上流側のロボット１１のツールが、ステップ１６３において、被加工物５０上の識別可能なポイント６２に接触する。非限定的な例では、この識別可能なポイント６２は、被加工物５０の縦方向の中心線ｗに位置している被加工物５０上のポイントとして示されている。しかし、この識別可能なポイント６２は、必要に応じて、被加工物５０上の任意の場所に位置することが可能である。
【００２７】
続けて図４と図５とを参照すると、ステップ１６４では、識別可能なポイント６２の第１の位置が、ロボット制御システム２０内の原点として記録される。図４に示されている非限定的な例では、この第１の位置における識別可能なポイント６２の記録は、この識別可能なポイント６２が作業セル座標系として定義されている通常の場所５８と位置合わせされる時に行われ得る。部品検出スイッチからの被加工物５０のオフセットまたは距離も、ステップ１６４で記録される。識別可能なポイント６２は、必要に応じて、作業セル１０内の任意の位置で記録されることが可能である。その次に、ステップ１６５では、被加工物５０は、コンベアの移動方向６０に関してコンベア５４上をさらに下流に移動させられる。ステップ１６５では、識別可能なポイント６２は第２の位置で再び接触される。その次に、ステップ１６６において、この第２の位置はコンベアポイント（ｃｏｎｖｅｙｏｒ  ｐｏｉｎｔ）として記録される。ステップ１６７では、ロボット１１のツールが、コンベア５４の移動方向６０に対して垂直または直角の方向にある第３の位置へと寸動させられる。被加工物５０は、ステップ１６７中はコンベアに沿って移動させられなくともよい。第３の位置が標準ポイント（ｎｏｒｍａｌ  ｐｏｉｎｔ）として記録される。ステップ１６８では、この結果として得られた公称追跡座標系が計算される。この手順がロボット１１、１２、１３、１４、１５、１６の各々に関して繰り返されることが可能である。
【００２８】
本発明の一実施形態では、公称追跡座標系は次式によって表されることが可能であり、
Ｔfinal＝Ｔinitial*Ｐ
前式中で、Ｔfinalは、ステップ１６８で算出された結果としての公称追跡座標系（新たな追跡座標系）である。Ｔinitialは、４×４変換行列によって表されている既存の教示プログラムによって計算される公称追跡座標系である。Ｔinitialのｘ方向は、ベクトル（ＰC−Ｐ0）によって定義されることが可能であり、この場合にＰ0は原点でありかつＰCはコンベアポイントである。ｚ方向はベクトル外積［（ＰC−Ｐ0）Ｘ（ＰN−ＰC）］によって決められ、前式においてＰNは標準ポイントである。ｘ方向とｚ方向が与えられているので、ｙ方向が、右手の法則にしたがってｘ方向ベクトルとｚ方向ベクトルに対して垂直なものとして自動的に定義されることが可能である。Ｐは、ステップ１６４で記録されているオフセットである。このオフセットは、Ｐ＝［ｘｙｚｗｐｒ］＝［（オフセット値）０００００］であるように、ｘ座標だけにおける値を伴う４×４変換行列によって表され、この場合に、このオフセット値は、部品検出スイッチからの被加工物５０の距離である。部品検出スイッチからのオフセットを測定することと、公称追跡座標系の計算にこのオフセットを使用することとによって、実ロボット作業セル１０内における全てのロボット１１、１２、１３、１４、１５、１６に共通している公称追跡座標系が確保される。この共通の公称追跡座標系は作業セル座標系になる。
【００２９】
図２に示されているように、ステップ１７０では、座標系較正３５がデータ追跡ファイル内に格納される。特定のマルチロボットシステムでは、そのマルチロボットシステム内のロボットの必ずしも全てが被加工物５０上の識別可能なポイント６２に接触可能であるわけではないということが当てはまるだろう。このシナリオでは、作業セル座標系は、作業セル座標系が、既に設定されている作業セル座標系を有するロボットからマルチロボットシステム内のその他のロボットにコピーされることが可能であるように、ロボット−ロボット較正方法（ｒｏｂｏｔ−ｔｏ−ｒｏｂｏｔ  ｃａｌｉｂｒａｔｉｏｎ  ｔｅｃｈｎｉｑｕｅ）によって決定されることが可能である。これに加えて、作業セル座標系を設定するように公称追跡座標系を教示するために視覚を使用することのような他の方法が、必要に応じて、公称追跡座標系を教示するために使用されることがあるということを理解されたい。
【００３０】
図２を続けて参照すると、較正パス３６は、ステップ１８０において、本発明の実施形態にしたがって被加工物５０上で教示される。シミュレーション作業セル３４が「理想的な」ロボットレイアウトに十分に近似している場合には、較正パス３６が教示されることが可能であり、または、座標系較正３５が決定された後に較正パス３６が教示されることが可能である。較正パス３６は、被加工物５０の各スタイルに関して教示される。較正パス３６は、ロボット１１、１２、１３、１４、１５、１６の１つのロボットの上で教示プログラムによって教示される。較正パス３６は、被加工物５０上の少なくとも３つの非線形ポイントを教示することによって、実ロボット作業セル１０内のロボット１１、１２、１３、１４、１５、１６の１つのロボットの上で教示されることが可能である。この３つの非線形ポイントは、被加工物５０上において、および、ロボットシミュレーション装置３０上に表示されるＣＡＤ上において視覚的に目視されることが可能な被加工物５０自体上の識別可能な特徴要素に相当する、被加工物５０上のポイントであることが可能である。較正パス３６は、１つのロボット１１、１２、１３、１４、１５、１６上で教示されることが必要とされるだけである。非限定的な例では、較正パス３６は、コンベア５４の移動方向６０に関して第１の上流側のロボット１１上で教示されることが可能である。ステップ１９０では、較正パス３６と、座標系較正３５を伴うデータ追跡ファイルとが、ロボットシミュレーション装置３０に再びロードされて戻される。
【００３１】
ステップ２００では、ロボット１１、１２、１３、１４、１５、１６は、座標系較正３５に基づいてロボットシミュレーション装置３０のシミュレーション作業セル３４によって再配置または再位置合わせされる。ステップ２１０において、ロボット１１、１２、１３、１４、１５、１６が再配置された後に、その次に、ロボットシミュレーション装置３０上のＣＡＤによってシミュレーション作業セル３４上に表示されているように、被加工物５０は、較正パス３６に基づいて再配置される。図６は、較正パス３６がロボットシミュレーション装置３０にロードされた後の、ロボットシミュレーション装置３０上のシミュレーション作業セル３４のＣＡＤ表示の一例を示す。この図は、「理想的な」レイアウトによる被加工物５０′と、較正パス３６による実ロボット作業セル１０内の被加工物５０″の描写とを示す。実ロボット作業セル１０内の被加工物５０″上で教示される較正パス３６を表すノードマップ（ｎｏｄｅ  ｍａｐ）６４が、表示される。ノードマップ６４は、ユーザが、ロボットシミュレーション装置３０によって、「理想的な」レイアウトにしたがった被加工物５０′を実ロボット作業セル１０内の被加工物５０″と物理的に位置合わせすることが可能であるように表示される。位置合わせするために、「理想的な」レイアウトの被加工物５０′が、ロボットシミュレーション装置３０上で表示されるノードマップ６４と整列（ｌｉｎｅ  ｕｐ）させられる。このステップ２１０は、被加工物５０の各スタイルに関して行われる。
【００３２】
ステップ２２０では、ロボットシミュレーション装置３０は、部品追跡オフセット（ｐａｒｔ  ｔｒａｃｋｉｎｇ  ｏｆｆｓｅｔ）３７を計算する。部品追跡オフセット３７は、実ロボット作業セル１０内の被加工物５０″の位置からの「理想的な」レイアウトの被加工物５０′の位置の変化に相当する変数４×４変換である。この４×４変換は、各ロボット１１、１２、１３、１４、１５、１６に関する公称追跡座標系として表現される。各ロボットに関する公称追跡座標系が同一の場所または作業セル座標系にあるので、部品追跡オフセット３７は、１つのロボット１１、１２、１３、１４、１５、１６に関してだけ計算されるだけで済む。この場合に、部品追跡オフセット３７の計算から結果的に生じるデータが、コンベアの同一の側にある全てのロボットに関して有効であることが可能である。例えば、部品追跡オフセット３７は第１の上流側のロボット１１に関して計算されることが可能であり、および、この計算は、コンベア５４の同一の側にあるロボット１３、１５に関して有効だろう。その次に、この部品追跡オフセット３７は、必要に応じて、例えばロボット１２、１４、１６の公称追跡座標系の方向成分と回転成分における単純な正負変換（ｓｉｇｎ  ｃｈａｎｇｅ）を使用することによって、コンベアの他方の側に位置することがあるロボット１２、１４、１６に関して使用されることが可能である。
【００３３】
部品追跡オフセット３７が計算され終わると、ステップ２３０に示されているように、この部品追跡オフセット３７が追跡データファイル内に格納される。その次に、ステップ２４０において、この部品追跡オフセット３７を伴う追跡データファイルは、データ記憶装置２２を経由してロボットコントローラ１７、１８、１９によって使用されるように、ロボット制御システム２０にアップロードされる。ロボット制御システム２０上で、被加工物５０の各スタイルに関する部品追跡オフセット３７は、実マルチロボットシステムの生産および教示中に使用される。この部品追跡オフセット３７は、被加工物５０が加工または生産されている時に生産位置データ（ｐｒｏｄｕｃｔｉｏｎ  ｐｏｓｉｔｉｏｎａｌ  ｄａｔａ）をシフトさせるために使用されることが可能である。
【００３４】
特許法規の規定にしたがって、本発明は、その好ましい実施形態を提示すると見なされるものにおいて説明されてきた。しかし、本発明の着想または範囲から逸脱することなしに、本発明が、具体的に図示され説明されているものとは異なる形で実施されることが可能であるということに留意されたい。
【符号の説明】
【００３５】
１０    実ロボット作業セル
１１、１２、１３、１４、１５、１６    ロボット
２０    ロボット制御システム
２２    データ記憶装置
３０    ロボットシミュレーション装置
３１    プロセッサ
３２    記憶装置
３３    ソフトウェアプログラム
３４    シミュレーション作業セル
３５    座標系較正データ
３６    較正パスデータ
５０    被加工物
【図１】
0006577163.tif 000002
【図２】
0006577163.tif 000003
【図３】
0006577163.tif 000004
【図４】
0006577163.tif 000005
【図５】
0006577163.tif 000006
【図６】
0006577163.tif 000007