(57)【要約】      （修正有）【課題】製造の（又は他の）オペレーション中に誤差又は他のエラーを引き起こさないようにする。【解決手段】ビジョンベース操作システム２０は、前記システムの複数のワークステーション２４、２６においてハンドアイ・キャリブレーションを実行し、前記システムについてクロスステーション・キャリブレーションを実行し、そして前記ハンドアイ・キャリブレーションと前記クロスステーション・キャリブレーションとの間の関係を決定するよう構成することができる及びそのような工程を含む方法において動作できる。前記クロスステーション・キャリブレーションに基づき、前記システムを用いて作業対象物体を前記ワークステーション間で移動させることができる。【選択図】図１
2019115974.tif 000002
【特許請求の範囲】
【請求項１】
第１ワークステーションと、前記第１ワークステーションから少なくとも部分的に離隔した第２ワークステーションと、前記第１ワークステーション及び前記第２ワークステーション内の１以上の作業対象物体の画像を取り込むよう構成されたカメラシステムと、制御可能モーションシステムと、を含むビジョンベース操作（「ＶＢＭ」）システムをキャリブレートする方法であって、
前記制御可能モーションシステムと前記第１ワークステーションにおける前記カメラシステムとで、ハンドアイ・キャリブレーション（「ＨＥＣ」）を実行する工程と、
前記制御可能モーションシステムと前記第２ワークステーションにおける前記カメラシステムとで、ＨＥＣを実行する工程と、
前記制御可能モーションシステム並びに前記第１ワークステーション及び前記第２ワークステーションについて、クロスステーション・キャリブレーション（「ＣＳＣ」）を実行する工程と、
前記ＣＳＣと前記第１ワークステーションのＨＥＣとの間の関係を決定する工程と、
前記ＣＳＣと前記第２ワークステーションのＨＥＣとの間の関係を決定する工程と、を含む  
ことを特徴とする方法。
【請求項２】
前記ＣＳＣを実行する工程が、
キャリブレーション物体座標系のインスタンスを定義するキャリブレーション物体を前記制御可能モーションシステムで掴む工程と、
前記キャリブレーション座標系の第１インスタンスを定義するために、前記キャリブレーション物体を、前記制御可能モーションシステムを介して、前記第１ワークステーションにおける第１ポイントに移動させる工程と、
前記カメラシステムを用いて、前記第１ポイントにおける前記キャリブレーション物体を画像化する工程と、
前記キャリブレーション座標系の第２インスタンスを定義するために、前記キャリブレーション物体を、前記制御可能モーションシステムを介して、前記第２ワークステーションにおける第２ポイントに移動させる工程と、
前記カメラシステムを用いて、前記第２ポイントにおける前記キャリブレーション物体を画像化する工程と、
前記カメラシステムの少なくとも１つのカメラについて、前記キャリブレーション物体座標系の前記第１インスタンス及び前記第２インスタンスと、前記カメラの各画素空間座標系と、の間の変換を決定する工程と、を含む
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記カメラシステムが、前記第１ワークステーションにおける第１カメラと、前記第２ワークステーションにおける第２カメラと、を含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記第１カメラ及び前記第２カメラの少なくとも一方が固定位置カメラであることを特徴とする請求項３に記載の方法。
【請求項５】
前記カメラシステムが少なくとも１つのモバイルカメラを含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記少なくとも１つのモバイルカメラは、画像を取り込むために異なる位置の間で移動するよう構成されたことを特徴とする請求項５に記載の方法。
【請求項７】
第１ワークステーションと前記第１ワークステーションから少なくとも部分的に離隔した第２ワークステーションとにおいて作業対象物体を用いてオペレーションを実行するためのビジョンベース操作（「ＶＢＭ」）システムを使用する方法であって、
前記ＶＢＭシステムが、前記第１ワークステーション及び前記第２ワークステーションの画像を取り込むよう構成されたカメラシステムと、モーション座標系における動作を命令するよう構成された制御可能モーションシステムと、を含み、
前記カメラシステム及び前記制御可能モーションシステムは、前記第１ワークステーションについての第１ハンドアイ・キャリブレーション（「ＨＥＣ」）及び第２ワークステーションについての第２ＨＥＣを定義するものであって、
前記方法が、
キャリブレーション物体座標系の第１インスタンスと前記第１ＨＥＣとの間の第１クロスキャリブレーション関係を決定するとともに、前記キャリブレーション物体座標系の第２インスタンスと前記第２ＨＥＣとの間の第２クロスキャリブレーション関係を決定するために、クロスステーション・キャリブレーションを実行する工程と、
前記カメラシステムを用いて、前記第１ワークステーションにおいて前記作業対象物体の１以上の特徴部の位置を特定する工程と、
前記クロスステーション・キャリブレーションに少なくとも部分的に基づき、前記作業対象物体を前記第２ワークステーションにおけるターゲット位置に移動させるためにクロスステーション変換を計算する工程と、
計算されたクロスステーション変換に基づき、前記制御可能モーションシステムを用いて、前記作業対象物体を前記ターゲット位置に移動させる工程と、を含み、
前記キャリブレーション関係は、前記制御可能モーションシステムにより掴まれるとともに前記第１ワークステーション及び前記第２ワークステーションにおいて画像化されたキャリブレーション物体に基づき決定される
ことを特徴とする方法。
【請求項８】
前記作業対象物体を移動させる工程が、前記第１クロスキャリブレーション関係に少なくとも部分的に基づき、前記第１ワークステーションにおいて前記作業対象物の位置を特定することを含むことを特徴とする請求項７に記載の方法。
【請求項９】
前記作業対象物体を移動させる工程が、前記第１ＨＥＣを用いた前記キャリブレーション物体座標系の前記第１インスタンスから前記モーション座標系への変換に基づき、前記制御可能モーションシステムを用いて、前記第１ワークステーションにおける前記作業対象物を拾い上げることを含むことを特徴とする請求項８に記載の方法。
【請求項１０】
前記作業対象物体を前記ターゲット位置に移動させる工程が、
前記制御可能モーションシステムを用いて前記第１ワークステーションにおける前記作業対象物体を拾い上げる工程と、
前記制御可能モーションシステムを用いて前記作業対象物体を前記第１ワークステーションの第１リファレンスポイントに移動させる工程と、
前記作業対象物体が前記第１リファレンスポイントにある状態で、前記カメラシステムを用いて、前記作業対象物体の１以上の特徴部の位置を再度特定する工程と、
前記作業対象物体を前記リファレンスポイントから前記ターゲット位置に移動させるために、更新されたクロスステーション変換を計算する工程と、を含む
ことを特徴とする請求項７に記載の方法。
【請求項１１】
前記第１リファレンスポイントが、前記クロスステーション・キャリブレーションのために前記第１ワークステーションにおいて前記キャリブレーション物体が画像化されたポイントであることを特徴とする請求項１０に記載の方法。
【請求項１２】
前記作業対象物体が前記第１リファレンスポイントにある状態で、前記キャリブレーション物体座標系の前記第１インスタンスにおいて、前記作業対象物体の前記１以上の特徴部の位置を再度特定することを含むことを特徴とする請求項１０に記載の方法。
【請求項１３】
前記キャリブレーション物体が２Ｄキャリブレーションプレートであることを特徴とする請求項７に記載の方法。
【請求項１４】
前記第２ワークステーションにおいて第２作業対象物体の１以上の特徴部の位置を特定することに基づき前記ターゲット位置を決定することを特徴とする請求項７に記載の方法。
【請求項１５】
前記第２クロスキャリブレーション関係に少なくとも部分的に基づき、前記第２ワークステーションにおいて前記第２作業対象物体の前記１以上の特徴部の位置を特定することを特徴とする請求項１４に記載の方法。
【請求項１６】
前記キャリブレーション物体座標系の前記第２インスタンスにおいて、前記第２ワークステーションにおいて前記第２作業対象物体の１以上の特徴部の位置を特定することを特徴とする請求項１５に記載の方法。
【請求項１７】
第１ワークステーションと、
前記第１ワークステーションから少なくとも部分的に離隔した第２ワークステーションと、
前記第１ワークステーション及び前記第２ワークステーションにおいて１以上の作業対象物体の画像を取り込むよう構成されたカメラシステムと、
モーション座標系における動作を命令するよう構成された制御可能モーションシステムと、
１以上の処理装置と、を備えたビジョンベース操作（「ＶＢＭ」）システムであって、
前記１以上の処理装置が、
前記第１ワークステーションにおいて前記カメラシステム及び前記制御可能モーションシステムについて第１ハンドアイ・キャリブレーション（「ＨＥＣ」）を実行し、
前記第２ワークステーションにおいて前記カメラシステム及び前記制御可能モーションシステムについて第２ＨＥＣを実行し、そして
キャリブレーション物体座標系の第１インスタンスと前記第１ＨＥＣとの間の第１クロスキャリブレーション関係と、前記キャリブレーション物体座標系の第２インスタンスと前記第２ＨＥＣとの間の第２クロスキャリブレーション関係と、を決定するためにクロスステーション・キャリブレーションを実行するよう構成され、
前記第１クロスキャリブレーション関係及び前記第２クロスキャリブレーション関係は、前記カメラシステムによって、前記第１ワークステーション及び前記第２ワークステーションにおいて、前記制御可能モーションシステムにより掴まれたキャリブレーション物体の１以上の画像を取得することに基づき決定される
ことを特徴とするシステム。
【請求項１８】
前記１以上の処理装置は、さらに、
前記カメラシステムによって取得された１以上の画像に基づき、前記第１ワークステーションにおいて作業対象物体の１以上の特徴部の位置を特定し、
前記クロスステーション・キャリブレーションに少なくとも部分的に基づき、前記制御可能モーションシステムを用いて前記作業対象物体を前記第２ワークステーションにおけるターゲット位置に移動させるためにクロスステーション変換を計算し、
計算されたクロスステーション変換に基づき、前記制御可能モーションシステムによって前記作業対象物体を前記ターゲット位置に移動させるように構成される
ことを特徴とする請求項１７に記載のシステム。
【請求項１９】
前記制御可能モーションシステムによって前記作業対象物体を前記ターゲット位置に移動させることが、
前記制御可能モーションシステムによって、前記第１ワークステーションにおける前記作業対象物体を拾い上げるとともに前記作業対象物体を前記第１ワークステーションの第１リファレンスポイントに移動させ、
前記カメラシステムによって前記作業対象物体が前記第１リファレンスポイントにある状態で前記作業対象物を画像化させて、前記作業対象物体の１以上の特徴部の位置を再度特定させ、
前記作業対象物体を前記第１リファレンスポイントから前記ターゲット位置に移動させるために、更新されたクロスステーション変換を計算させることを含む
ことを特徴とする請求項１８に記載のシステム。
【請求項２０】
前記カメラシステムが、前記第１ワークステーションの画像を取得するために配置された第１固定２Ｄカメラと、前記第２ワークステーションの画像を取得するために配置された第２固定２Ｄカメラと、を含み、
前記第１クロスキャリブレーション関係は前記第１カメラについて決定され、前記第２クロスキャリブレーション関係は前記第２カメラについて決定される
ことを特徴とする請求項１９に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
該当無し。
【０００２】
（連邦政府の支援による研究に関する言明）
該当無し。
【０００３】
本発明は、関連マシンビジョンシステムに基づき少なくとも部分的に制御可能な製造用ロボットシステムなどの物体の制御された操作のためのシステムのキャリブレーション及びオペレーションに関する。
【背景技術】
【０００４】
組み立てオペレーションにおける組立部品の位置決めなどの製造（又は他の）タスクの正確な遂行をサポートするために、制御可能ロボット（又は他の制御可能モーションシステム）のための１以上の座標系及びこれらの間の関係（例えば１つの座標系から別の座標系への数学的変換）を比較的精密に定義することは有用である。多くの設定において、この取り組みにおいてマシンビジョンシステムによる援助が可能である。例えば、１以上のカメラ（例えば固定又は可動カメラ）を特定のロボット（又は複数のロボット）や特定の製造ワークステーション（又は複数のワークステーション）などと関連付けることができる。マシンビジョンアルゴリズムを用いることで、カメラを用いて組み立て及び他の製造オペレーションを含むロボットのオペレーションのガイドを助けることができる。本明細書において、１以上のカメラの配置及び１以上の関連ロボット（又は他の制御可能モーションシステム）を総称してビジョンベース操作（「ＶＢＭ」）システムという。
【０００５】
特定のオペレーションのための位置及び／又は動作（移動）を計算するときに、ＶＢＭシステムの異なるコンポーネントは、通常、「モーション」座標系とも称される共通統合リファレンス座標系にしばしば関係付けられる複数の異なる座標系のうちの１つ又は複数に依存（又はこれらを参照）し得る。例えば、ＶＢＭシステムのためのロボットが内部（バーチャル）座標系に基づき動作を実行する一方で、ＶＢＭシステムのカメラが２次元（「２Ｄ」）画素座標系上の画像を取り込んでもよい。いくつかの実施形態において、特定のロボットの内部座標系をモーション座標系として用いることができ、これに対して画素座標系を１以上の数学的変換により関係付けることができる。
【０００６】
ロボット（又は他のモーションシステム）が完璧に製造され維持された場合、関連モーション座標系に対する命じられた移動によって、実際の物理空間においてロボットのマニピュレータ（又は他のコンポーネント）による完璧に複製された実際の動作が得られる。しかしながら、実世界のロボットは内部誤差又は他の欠陥を示す場合があり、これによって、モーション座標系内の命じられた（及び予期された）動作と実空間におけるロボットの実際の動作との間にエラーが生じる可能性がある。これに対応して、これにより、ロボットの部品が、実空間においてモーション座標系の仮想空間とは異なって位置付けられる可能性もある。そして、これにより、製造の（又は他の）オペレーション中に誤差又は他のエラーを引き起こすことがある。
【発明の概要】
【０００７】
本発明のいくつかの実施形態は、第１ワークステーションと、前記第１ワークステーションから少なくとも部分的に離隔した第２ワークステーションと、前記第１ワークステーション及び前記第２ワークステーション内の１以上の作業対象物体の画像を取り込むよう構成されたカメラシステムと、制御可能モーションシステムと、を含むＶＢＭシステムをキャリブレートする方法を含む。前記方法は、前記第１ワークステーション及び前記第２ワークステーションにおいて前記制御可能モーションシステムと前記カメラシステムとでハンドアイ・キャリブレーションを実行する工程を含むことができる。前記制御可能モーションシステム並びに前記第１ワークステーション及び前記第２ワークステーションについて、クロスステーション・キャリブレーションを実行することができる。前記クロスステーション・キャリブレーションと前記第１ワークステーションのハンドアイ・キャリブレーションとの間の関係を決定することができるとともに、前記クロスステーション・キャリブレーションと前記第２ワークステーションのハンドアイ・キャリブレーションとの間の関係を決定することができる。
【０００８】
本発明のいくつかの実施形態は、第１ワークステーションと前記第１ワークステーションから少なくとも部分的に離隔した第２ワークステーションとにおいて作業対象物体を用いてオペレーションを実行するためのＶＢＭシステムを使用する方法を含む。前記ＶＢＭシステムは、前記第１ワークステーション及び前記第２ワークステーション内の１以上の物体の画像を取り込むよう構成されたカメラシステムと、モーション座標系における動作を命令するよう構成された制御可能モーションシステムと、を含み、前記カメラシステム及び前記制御可能モーションシステムは、前記第１ワークステーションについての第１ハンドアイ・キャリブレーション及び第２ワークステーションについての第２ハンドアイ・キャリブレーションを定義する。前記方法は、キャリブレーション物体座標系と前記第１ハンドアイ・キャリブレーションとの間の第１クロスキャリブレーション関係を決定するとともに、前記キャリブレーション物体座標系と前記第２ハンドアイ・キャリブレーションとの間の第２クロスキャリブレーション関係を決定するために、クロスステーション・キャリブレーションを実行する。前記キャリブレーション関係は、前記制御可能モーションシステムにより掴まれて前記第１ワークステーション及び前記第２ワークステーションにおいて画像化されたキャリブレーション物体に基づき決定される。前記カメラシステムを用いて前記第１ワークステーションにおいて前記作業対象物体の１以上の特徴部の位置が特定される。前記クロスステーション・キャリブレーションに少なくとも部分的に基づき、前記作業対象物体を前記第２ワークステーションにおけるターゲット位置に移動させるためにクロスステーション変換を計算することができる。計算されたクロスステーション変換に基づき、前記制御可能モーションシステムを用いて、前記作業対象物体を前記ターゲット位置に移動させることができる。  
【０００９】
本発明のいくつかの実施形態は、ＶＢＭシステムの制御可能モーションシステムの自動制御のためのコンピュータシステムをキャリブレートするコンピュータベースの方法を含む。ＶＢＭシステムは、制御可能モーションシステムと、第１ワークステーションと、前記第１ワークステーションから少なくとも部分的に離隔した第２ワークステーションと、前記第１ワークステーション及び前記第２ワークステーション内の１以上の作業対象物体の画像を取り込むよう構成されたカメラシステムと、を含む。そのようにして、前記方法に含まれるオペレーションを、様々な度合いの自動化で、１以上の処理装置を利用する１以上のコンピュータシステムによって実行することができる。
【００１０】
本発明のいくつかの実施形態は、第１ワークステーションと、前記第１ワークステーションから少なくとも部分的に離隔した第２ワークステーションと、前記第１ワークステーション及び前記第２ワークステーション内の１以上の作業対象物体の画像を取り込むよう構成されたカメラシステムと、モーション座標系における動作を命令するよう構成された制御可能モーションシステムと、１以上の処理装置と、を備えたＶＢＭシステムを含む。前記１以上の処理装置は、前記第１ワークステーションにおいて前記カメラシステム及び前記制御可能モーションシステムについて第１ハンドアイ・キャリブレーションを実行し、前記第２ワークステーションにおいて前記カメラシステム及び前記制御可能モーションシステムについて第２ハンドアイ・キャリブレーションを実行し、そしてキャリブレーション物体座標系と前記第１ハンドアイ・キャリブレーションとの間の第１クロスキャリブレーション関係及び前記キャリブレーション物体座標系と前記第２ハンドアイ・キャリブレーションとの間の第２クロスキャリブレーション関係を決定するためにクロスステーション・キャリブレーションを実行するよう構成される。前記キャリブレーション関係は、前記カメラシステムによって、前記第１ワークステーション及び前記第２ワークステーションにおいて、前記制御可能モーションシステムにより掴まれたキャリブレーション物体の１以上の画像を取得することに基づき決定することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明のいくつかの実施形態に係わる、複数のワークステーションにわたるキャリブレーション及びオペレーションのために構成されたＶＢＭシステムを説明する概図である。
【図２】本発明のいくつかの実施形態に係わる、図１のＶＢＭシステムなどのＶＢＭシステムのためのキャリブレーション方法を説明するフローチャートである。
【図３】本発明のいくつかの実施形態に係わる、図１のＶＢＭシステムなどのＶＢＭシステムのためのオペレーション方法を説明するフローチャートである。
【発明を実施するための形態】
【００１２】
以下の詳細な記載において、添付の図面を参照して説明する。図面において、特に記載のない限り、類似の参照符号は類似の構成要素を示している。詳細な説明に記載の例示的な実施形態、図面及び特許請求の範囲の記載は限定を意図していない。本明細書に示す技術的事項の精神又は範囲を逸脱することなく、他の実施形態を用いてもよいし、他の変更を加えてもよい。本明細書に大まかに記載される及び図面に示される本開示の側面を、アレンジ、入れ替え、結合、分離及び異なる構成の幅広いバリエーションとして設計してもよいこと、そしてその全てが本明細書において明確に考慮されていることは、容易に理解できる。
【００１３】
いくつかの実施形態において、本発明に係わる方法のコンピュータによる実行を含む本発明の側面は、以下に詳細に記載の側面を実施するためのコンピュータ又はプロセッサベースの装置を制御するためのシステム、方法、装置又はソフトウェアを作成するための標準プログラミング及び／若しくはエンジニアリング技法を用いた製品、ファームウェア、ハードウェア又はこれらの任意の組み合わせとして、実施することができる。本明細書に記載の「製品」との用語は、いかなる種類のコンピュータ可読装置、キャリア（例えば持続性信号）又は媒体（例えば持続性媒体）からアクセス可能なコンピュータプログラムを包含することを意図して用いている。例えば、コンピュータ可読の媒体は、磁気記憶装置（例えばハードディスク、フロッピーディスク、磁気帯など）、光ディスク（例えばコンパクトディスク（ＣＤ）、デジタル多用途ディスク（ＤＶＤ）など）、スマートカード及びフラッシュメモリ装置（例えばカード、スティック）を含むことができるが、これらに限定されない。加えて、当然ながら、電子メールの送受信又はインターネット若しくはローカルエリアネットワーク（ＬＡＮ）などのネットワークへのアクセスに用いられるコンピュータ可読の電子データを搬送するために搬送波を採用することもできる。勿論、特許請求の範囲に記載の技術的事項の範囲又は精神を逸脱せずにこれらの構成に対して修正を加えてもよいことは、当業者が認識できるものである。
【００１４】
本発明の実施形態は、システム及び／又はコンピュータにより実行される方法を含む方法として実施することができる。本発明のいくつかの実施形態は、以下の議論と整合した、自動化装置及び種々のコンピュータハードウェア、ソフトウェア、ファームウェアを含む特殊用途又は汎用コンピュータなどの装置を含む（又は利用する）ことができる。
【００１５】
本明細書において、特に記載又は限定のない限り、「Ａ，Ｂ及びＣのうちの少なくとも１つ」及び類似の記載は、Ａ、Ｂ若しくはＣ、又はＡ，Ｂ及び／若しくはＣの任意の組み合わせを示すことを意味する。したがって、当該記載及び類似の他の記載は、Ａ，Ｂ及び／又はＣの単一又は複数の例を含むことができ、そして、Ａ，Ｂ及び／又はＣの何れかのカテゴリが要素を示す場合、そのカテゴリ（又は複数のカテゴリ）の何れかの要素の単一又は複数の例を含むことができる。
【００１６】
また、本明細書において、特に特定又は限定のない限り、「コンポーネント」、「システム」、「モジュール」などの用語は、ハードウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア又は実行中のソフトウェアの何れかであるコンピュータ関連の実体を参照することを意図する。例えば、コンポーネントは、プロセッサ上で動くプロセス、プロセッサ、物体、実行ファイル、スレッド(a thread of execution)、プログラム及び／又はコンピュータであってもよいが、これらに限定されない。例として、コンピュータ上を動くアプリケーション及びコンピュータの両方をコンポーネントとすることができる。１以上のコンポーネント（若しくはシステム、モジュールなど）は、プロセス及び／若しくはスレッド内に属してもよく、１つのコンピュータ上に局在してもよく、２以上のコンピュータ若しくはプロセッサ間に分配されてもよく、並びに／又は別のコンポーネント（若しくはシステム、モジュールなど）内に含まれてもよい。
【００１７】
また、本明細書で用いる場合、特に特定又は限定のない限り、「カメラ」との用語は、２Ｄプラナーイメージング装置、ライン走査イメージング装置、３Ｄイメージング装置、ビデオイメージング装置などを含むいかなる種類の画像化装置並びに可視光及び／若しくは非可視光から画像を取り込むよう構成された装置を含んでもよい。これに関し、「カメラシステム」は１以上のカメラを含むシステムを含んでもよい。同様に、特に特定又は限定のない限り、「掴む」との記載は、マニピュレータ又は他の装置による、機械的作用、吸引、磁気的作用若しくは他の係合作用を介する作業対象物体の固定又は保持によりもたらされる動きを示すことができる。
【００１８】
精密製造における組み立て又は他のタスクなどの特定のプロセスの実行は、自動化されコンピュータ制御されたモーションシステムの使用を必要とし得る。例えば、電子システムの所定のコンポーネントを正確に組み立てるためには、制御コンピュータシステムに対して、掴みアームを有するロボットの一連の独立した及び／又は相互に関連した動作の比較的精密な自動制御が要求され得る。本質的に、そのような制御を適切な精度で実行するためには、コンピュータシステムが、ロボットの内部コントローラが使用するリファレンス座標系に対するロボットの動作を命令可能でなければならず、その際、高い信頼性で、リファレンス座標系（複数のリファレンス座標系）に対する命令が関連製造エリアの物理空間内のロボットの所望の動作に適切に対応しなければならない。したがって、精密タスクの有効な自動実行のために、コンピュータシステムは、ロボット（又は他のモーションシステム）に関連する１以上のリファレンス座標システムと関連物理環境の１以上の座標系との間の適宜に正確な関係を決定するよう構成されなければならない。
【００１９】
これに関連して、また上述したように、ロボット又は他の制御可能モーションシステムによる動作の不正確さ（即ち、実際の動作と関連座標系における命令された動作との対比における不正確さ）は、製造及び他のオペレーションに悪影響を及ぼす可能性がある。例えば、制御可能モーションシステム内に特定のタイプの不正確制が存在する場合、リファレンス座標系と物理座標系との間の関係を決定するためのコンピュータシステムの従来のアプローチでは、これらの関係にかなりの不正確さが生じる。結果的に、コンピュータシステムからの命令に応じたモーションシステムの実際の物理動作は、命令により意図された物理動作とは正確に合致しない場合がある。
【００２０】
制御可能モーションシステムにおける不正確さは、これらのシステムの自動コンピュータ制御に悪影響を及ぼす可能性があるため、様々な形で現れる可能性がある。場合によっては、そのような不正確さは、大きいスケールの動作に関しては（例えば小さいスケールの動作に関してよりも）比較的一般的であるかもしれない。例えば、特定のＶＢＭシステムのためのロボットは、第１ワークステーションと第２ワークステーションとにおける比較的小さい（例えばミリメートル）スケールの動作にわたっては比較的正確であるものの、２つのワークステーション間のより大きい（例えばメートル）スケールの動作にわたっては比較的不正確な場合がある。これに関連して、例えば、ロボットは、いくらかの回転エラーを伴う比較的大きいスケールの命令された並進運動を実行するかもしれず、又は他のエラー（例えばスケール、アスペクト比、スキュー、ずれ又は他の線形エラー）を示すかもしれない。
【００２１】
場合によっては、上記の大きいスケールのエラーにより、ワークステーション間の移動（例えば第１ワークステーションから第２ワークステーションにおける異なる部品への部品の取り付け）を必要とするタスクの性能が比較的低くなる可能性がある。しかしながら、有用なことに、これらのエラーの源の性質（例えば関連ロボットの比較的不変の物理的側面）のために、それらは通常繰り返し可能である。以下にさらに説明するように、これにより、本発明の異なる実施形態に基づき、制御可能モーションシステムの自動コンピュータ制御の実行に応じて、上記のリファレンス座標系と物理座標系との関係の必要な決定への特定のアプローチを介して、エラーを効果的に除去することができる。
【００２２】
具体的には、例えば、ロボット（又は他の）オペレーションの精度を向上させるために、マルチステーションＶＢＭシステムについて一連のキャリブレーションを実行することができる。いくつかの実施形態においては、例えば、ロボットを、互いにいくらかの比較的大きい距離（例えば１ｍ以上）離れた２つ（又はそれ以上）のワークステーションにおいてオペレーションを実行するよう構成してもよい。第１及び第２ワークステーションにおけるロボットのオペレーションをコーディネートするために、例えば、各ワークステーションにおいてロボットのために別のハンドアイ・キャリブレーション（「ＨＥＣ」）を実行することができる。このようにして、例えば、モーション座標系内のロボットの局所的動作を各関連カメラの座標系（例えば２Ｄ画素座標系）に相互に関連付けることができる。ＨＥＣオペレーションのいくつかの周知の側面が、米国特許第５，９６０，１２５号及び第９，２３０，３２６号並びに米国特許出願公開第２０１７／０１３２８０７号、第２０１４／０２６７６８１号及び第２０１４／０２４０５２０号において議論されており、その全てが参照により本願に盛り込まれるものとする。
【００２３】
上記ＨＥＣキャリブレーションに加えて、キャリブレーション物体座標系と２つの異なるワークステーションにおけるカメラ（又はカメラのフィールドオブビュー）との間の関係を決定するために、クロスステーション（ステーションをまたぐ）キャリブレーション（「ＣＳＣ」）を実行することもできる。このことは、例えば、２つのワークステーションを比べたときに、実際のロボット動作とロボット命令との相違を無くすのに有用である。例えば、ロボットにより掴まれたキャリブレーションプレート（又は他の物体）を、各ワークステーション内の所定ポイントにおいて画像化し、ＣＳＣ計算を相応に行うことができる。その後、キャリブレーション物体座標系内の座標又は動作を関連モーション座標系（例えば関連ロボットの座標系）内の対応する座標又は動作に容易に変換できるよう、ＣＳＣとＨＥＣの関係を決定することができる。
【００２４】
ＣＳＣ及びＨＥＣ座標系及びこれらの間の関係が（例えば上で概要を説明したように）規定されると、両方のワークステーションにわたるオペレーションについても関連ロボットの比較的正確な制御を実行することが可能となる。例えば、第１ワークステーションにおける第１部品を拾い上げる（pick）オペレーション及び第２ワークステーションにおける第２部品に対する対応する配置オペレーションを実行するために、第１及び第２部品の特徴部をＣＳＣ座標系内で特定することができる。その後、キャリブレーション物体座標系内でこれらの部品を組み立てるための変換及びキャリブレーション物体座標系からモーション座標系への変換（例えばＣＳＣから及び第１ＨＥＣから決定された変換に基づく）を相応に計算することができ、そして第１部品を相応に拾い上げることができる。このようにして、例えば、第１ワークステーション内の第１部品を拾い上げるため及び第１部品を第２ワークステーション内の所望の位置に移動させるために、ロボットモーションについての命令の適切なセットを決定することができる。
【００２５】
いくつかの実施形態において、「配置」オペレーションの精度を潜在的に向上させるために、第１部品は、第１ワークステーション内で拾い上げられると、第１ワークステーションにおける所定ポイント（例えばＣＳＣの実行に用いられる所定ポイントと同じ）に移動させられ、第１部品の特徴部の位置が再び特定される（例えば１以上のカメラによる画像化に基づきキャリブレーション物体座標系において位置が特定される）。このことは、例えばロボットによる第１部品の適切な掴みを確定するために有用である。必要に応じて、その後、第１部品を第１ワークステーションにおける所定ポイントから第２座標系内のターゲット位置（例えば第２部品上）に移動させるために、ＣＳＣ及び第２ＨＥＣの結果を用いて、アップデートされた変換を計算することができる。
【００２６】
本明細書において、本開示の側面について、各ステーションが単一のロボット及び単一の、ユニークな、固定位置の２Ｄカメラを有する２つのワークステーションＶＢＭシステムを含む例に関連しておおまかに説明する。これらの側面の基本的な原理を他のタイプのＶＢＭシステム（例えば、モバイルカメラ又は３Ｄカメラを含むシステム、複数のロボットを含むシステム、３以上のワークステーションを含むシステムなど）に容易に拡張できることは、当業者が認識できるものである。
【００２７】
同様に、本明細書に記載の特定の座標系及びこれらの間の変換は、例として示されているに過ぎない。他の実施形態においては、本開示の同じ一般原理の下で他の座標系及び変換の使用も可能である。例えば、本明細書における一部の議論は、キャリブレーション物体座標系内での部品の特徴部（又は他の関連ポイント）の位置特定及びその座標系から他への対応する変換の計算を、参照し得る。他の実施形態では、例えば、部品の特徴部（又は他の関連ポイント）を、異なる座標系において位置特定することができ、対応する変換を相応に実行することができる。
【００２８】
さらに、本明細書に記載の一部の例では、特定の制御可能モーションシステムの内部座標系を、関連ＶＢＭシステムのためのモーション座標系として適用してもよい。しかしながら、統合リファレンス座標系を特定の制御可能モーションシステムに関係付ける必要は無いことが理解されるであろう。例えば、一部のＶＢＭシステムについて、統合リファレンス座標系は、ＶＢＭシステムの１以上の制御可能モーションシステムについての１以上の内部座標系と異なってもよく、ここで適切な変換によって統合リファレンス座標系と１以上の内部座標系との間の関係が相応に定義される。
【００２９】
この観点から、そして本発明の原理の実施の一例として、図１は、６軸ロボット２２として構成された制御可能モーションシステムと、第１ワークステーション２４と、第１ワークステーションから既知の距離（例えば１７５ｃｍ）離れた第２ワークステーション２６と、第１ワークステーション２４の画像（例えばワークステーション２４内の作業対象物体の画像）を取り込むよう構成された固定位置(fixed-location)２Ｄ第１カメラ２８と、第２ワークステーション２６の画像（例えばワークステーション２６内の作業対象物体の画像）を取り込むよう構成された固定位置２Ｄ第２カメラ３０と、を含むＶＢＭシステム２０を示す。
【００３０】
また、システム２０は、処理装置３２ａを含むことができるとともに、一般的に第１カメラ２８と、第２カメラ３０と、ロボット２２と、汎用（又は特殊用途）コンピュータ３４と、種々の他のコンポーネント（他のＶＢＭシステムのコンポーネントを含む）と、のうちの１以上に対して信号を送受信するよう構成可能なコントローラ３２を含んでもよい。したがって、スタンドアロン装置又は上記のコンポーネントのうちの１以上の一部とすることができるコントローラ３２を用いて、ＶＢＭシステム２０のオペレーションの各種側面を制御する及び／又はＶＢＭシステム２０の１以上のコンポーネントから有用なデータを受信することができる。
【００３１】
通常、ロボット２２は、第１ワークステーション２４及び第２ワークステーション２６の両方で作業を行うよう構成される。例えば、ロボット２２は、何れかのワークステーション２４，２６において作業対象物体（即ちタスクの実行に用いられる物体又はタスクの実行対象となる物体）（例えばタッチスクリーンディスプレイのコンポーネントなどの概して平坦な物体３６，３８）を掴んで、物体をワークステーション２４，２６内で（例えば所定ポイント２４ａ，２６ａに）移動させる及び物体をワークステーション２４，２６間で移動させるよう構成することができる。したがって、例えば、ロボット２２は、通常、他のオペレーションの中でも特に、第１ワークステーション２４から物体３６（又は他の物体）を拾い上げて、物体３６を第２ワークステーション２６内の物体３８の上（又は別の位置）に配置するのに有用である。
【００３２】
概要が上記されかつ概略が図１に示された構成において、ＶＢＭシステム２０は、数々の異なる座標系を定める。例えば、ロボット２２は、通常、モーション座標系５０に対して（例えばコントローラ３２によって）制御され、第１カメラ２８は画素座標系５２内で画像を取り込み、第２カメラ３０は画素座標系５４内で画像を取り込み、そして実世界座標系はワークステーション２４，２６の何れか又は両方にある（図示しない）、などである。以下でも議論するように、キャリブレーション物体座標系（又は複数の系）５６をキャリブレーションプレート５８（又は他のキャリブレーション物体若しくは複数の物体）に基づき規定することが可能である。
【００３３】
上でも述べたように、図１に示す別の座標系が、単なる例として示される。例えば、本発明のいくつかの実施形態では、３Ｄ画素座標系を定めることができるように３Ｄカメラ（例えばレーザプロファイラー、飛行時間型センサなど）を利用することができる。同様に、いくつかの実施形態では、キャリブレーション物体座標系は、プラナー（平面上のもの）ではなく３Ｄでもよい。加えて、いくつかの実施形態では、座標系５０以外の座標系を統合座標系として選択してもよい。
【００３４】
図示の実施形態では、キャリブレーションプレート５８が、目に見える形で形成された（可視の）特徴的なドット状グリッドを含む表面を有する概して平坦な物体として構成される。他の例示的なパターンとしては、線状グリッド（例えば市松模様又は軸）、ハニカムパターン、三角形の市松模様などが挙げられる。通常、プレート５８でもそうであるように、リファレンス位置に対する位置及び／若しくは配向並びに／又はデザイン内で明確に定められた座標系などの各可視特徴部の特徴は、特定のプレートのデザインから既知である。
【００３５】
図２は、上記のＶＢＭシステム２０に対して又は任意の数の他のＶＢＭシステムに対して通常実行することができるキャリブレーション方法７０を示す。上でもおおまかに記載したように、方法７０で採用される具体的な座標系及び他のパラメータは、単なる例として示されているに過ぎないことが理解されるであろう。同様に、以下に記載のオペレーションの具体的な順序もまた単なる例として示されているに過ぎない。
【００３６】
通常、ワークステーション２４，２６の両方にわたるオペレーションのためのＶＢＭシステム２０をキャリブレートするために、ロボット２２及び１以上の（例えば各）カメラ２８，３０についてそれぞれハンドアイ・キャリブレーション（「ＨＥＣ」）を実行（即ち遂行）（７２，７４）することができる。通常、ＶＢＭシステム２０との関係において、各ＨＥＣの遂行（７２，７４）により、カメラ２８，３０の座標系５２，５４をそれぞれモーション座標系５０にキャリブレートすることができる。
【００３７】
通常、実行（７２，７４）されるＨＥＣの目標は、カメラ（複数のカメラ）とモーション座標系の関係を決定することにある（例えば、モーション座標系内のカメラ又はキャリブレーション物体の剛体姿勢、レンズ又は射影ひずみなどのカメラの固有パラメータ、モーションステージの各自由度及びモーション軸間のスキューのスケーリングなどのモーションステージの非剛性パラメータなどを決定）。上記のように、ＶＢＭシステム２０の例示的なキャリブレーションでは、ロボット２２の座標系５０がモーション座標系として利用され、これによりＨＥＣによってモーション座標系５０において記述／解釈される姿勢及びモーションが得られるよう構成される。他の実施形態では他の選択肢も可能である。
【００３８】
ＨＥＣは数々の異なる方法で実行することができる。場合によっては、例えば、キャリブレーションプレート５８を各カメラ２８，３０に対して数々の異なる姿勢で示し、各カメラ２８，３０はそれらの各姿勢でのキャリブレーションプレート５８の画像を取得することができる。その後、座標系５２，５４のそれぞれと座標系５０との間の変換を決定するために、結果として得られる連立方程式を解く（又は近似的に解く）ことができる。
【００３９】
本明細書に示す例では、カメラ２８，３０は所定位置に固定され、キャリブレーションプレート５８が移動される。他の実施形態では、カメラ２８，３０のうちの１つ又は両方がプレート５８に対して移動することができる。
【００４０】
図２をさらに参照すると、方法７０は、ロボット２２及びワークステーション２４，２６についてクロスステーション・キャリブレーション（「ＣＳＣ」）を実行（７６）することを含むことができる。通常、ＣＳＣは、各カメラ２８，３０を、キャリブレーションプレート５８によって定義されるキャリブレーション物体座標系５６などの共通座標系の別々のインスタンスにキャリブレートすることができる。
【００４１】
ＣＳＣは様々な方法で実行（７６）することができる。いくつかの実施形態では、ＣＳＣは、「単一ビュー」キャリブレーションとは異なるがこれにいくらか関連しているかたちで実行（７６）することができる。例えば、従来の単一ビューアプローチにおいては、各システムカメラは、固定されたキャリブレーションプレートの座標系に対してキャリブレートしてもよい。一方で、方法７０においては、キャリブレーションプレートを、２つのカメラ２８，３０のそれぞれによる所定ポイントでの画像化のために、２つのワークステーション２４，２６間で移動させることができる。
【００４２】
例えば、ＣＳＣの実行（７６）は、キャリブレーションプレート５８をロボット２２で掴む（７８）ことと、その後ロボット２２を用いてキャリブレーションプレート５８をワークステーション２４におけるポイント２４ａ（又は他の所定ポイント）に移動（８０）することと、を含んでもよい。次にカメラ２８を用いてポイント２４ａにおけるキャリブレーションプレート５８の１以上の画像を取得（８２）することができる。
【００４３】
さらに、ＣＳＣの実行（７６）は、依然としてロボット２２でキャリブレーションプレート５８を掴む（７８）ことと、その後ロボット２２を用いてキャリブレーションプレート５８をワークステーション２６におけるポイント２６ａ（又は他の所定ポイント）に移動（８０）することと、を含んでもよい。その後カメラ３０を用いてポイント２６ａにおけるキャリブレーションプレート５８の１以上の画像を取得（８２）することができる。
【００４４】
各ポイント２４ａ，２６ａにおいてキャリブレーションプレート５８を用いて取得された少なくとも１つの画像について、方法７０は、その後、キャリブレーション物体座標系５６とカメラ２８，３０の座標系５２，５４のそれぞれとの関係を決定（８４）することを含んでもよい。例えば、キャリブレーション物体座標系５６と第１ワークステーション２４でのカメラ座標系５２との間において変換を決定することができるとともに、キャリブレーション物体座標系５６と第２ワークステーション２６でのカメラ座標系５４との間において異なる可能性がある変換を決定することができる。
【００４５】
必要に応じて、方法７０は、その後、さらに、前回実行されたＣＳＣ及びＨＥＣオペレーション（例えば上記したようなもの）に基づき、各ワークステーション２４，２６におけるキャリブレーション物体座標系５６とモーション座標系５０との間の関係（例えば変換）を決定（８６）することができる。例えば、上記のＣＳＣオペレーションの結果を用いて何れかのワークステーション２４，２６においてキャリブレーション物体座標系５６から画素座標系５２，５４に変換することができ、その後、上記のＨＥＣオペレーションの結果を用いて何れかのワークステーション２４，２６における画素座標系５２，５４からそのワークステーション２４，２６におけるモーション座標系５０に変換することができる。
【００４６】
通常、上記の関係（又は他の適切な座標系関係）が規定されると、ワークステーション間の移動中に生じ得るエラー（例えば、要求され得る制御可能モーションシステムの比較的大きいスケールの移動に起因する）を無くしながら、関連するワークステーション（例えばワークステーション２４，２６）にわたるオペレーションを実行することが可能となる。
【００４７】
これに関して、図３は、２つのワークステーションにわたって２つの部品を組み立てるための例示的な方法１００を示す。同様の原理及び上で大まかに記載したコンセプトに基づく他のオペレーションも可能である。
【００４８】
図示の例では、方法１００は、キャリブレーション物体座標系、関連するカメラの種々の座標系及び関連するモーション座標系（例えば関連する制御可能モーションシステムの座標系）の間の関係を規定するために、キャリブレーションオペレーションの先の実行に概して基づいてもよい。例えば、方法１００のオペレーションの基礎として、キャリブレーション物体と他の座標系との間の適切な関係の決定（８６）を含む方法７０（図２参照）の１以上のオペレーションの実行が有用と考えられる。
【００４９】
関連するＶＢＭシステムを（例えば方法７０又はそのバリエーションを介して）適切にキャリブレートすることで、方法１００の組み立てが進行することができる。例えば、カメラ２８を用いて、物体３６上の１以上の特徴部（例えば１以上の角部又は縁部）の位置を特定（located）（１０２）することができる。同様に、カメラ３０を用いて、物体３８の１以上の特徴部の位置を特定（１０４）することができる。
【００５０】
通常、特徴部（又は他の位置）について、任意の適切な座標系においてその位置を特定（１０２，１０４）することができる。場合によっては、各ワークステーション２４，２６におけるキャリブレーション物体座標系５６において所定の特徴部の位置を特定（１０２，１０４）することが有用である。他の場合においては他の座標系を用いることができる。
【００５１】
関連する特徴部の位置が特定（１０２，１０４）されると、その後、物体３６を第１ワークステーション２４から第２ワークステーション２６内の適切な位置に移動させるためのクロスステーション変換を計算（１０６）することができる。例えば、第１物体３６を第１ワークステーション２４内の位置から第２ワークステーション２６の第２物体３８と精密に整列するよう移動させるために、クロスステーション変換を計算（１０６）することができる。
【００５２】
上述のように、適切なクロスステーション変換を任意の数の適切な座標系に対して計算（１０６）することができる。いくつかの実施形態では、上記の例と合致するように、キャリブレーション物体座標系５６において関連する特徴部の位置が特定（１０２，１０４）されたときに、キャリブレーション物体座標系５６に対する変換を計算（１０６）することもまた有用となり得る。
【００５３】
その後、物体３６についてのクロスステーション（ステーションをまたぐ）移動を、計算（１０６）された変換に基づいて実行することができる。例えば、ロボット２２に対して、位置特定（１０２）された特徴部に基づいて第１ワークステーション内で物体３６を拾い上げ、次に計算（１０６）された変換に基づいて第２ワークステーション内の位置に物体３６を移動させるよう、命令を与えることができる。これに関し、座標系間の適切な変換が通常は必要であると認識される。例えば、キャリブレーション座標系５６において物体３６の特徴部の位置が特定された場合、その特徴部の関連座標系をモーション座標系５０に変換し（例えば上で概要を述べたようにＣＳＣ及びＨＥＣオペレーションの結果に基づいて）、その後ロボット２２の動きを相応に命令することが必要となるであろう。
【００５４】
場合によっては、クロスステーション移動の実行（１０８）は、作業エラーをさらに修正するよう指定されたオペレーションを含み得る複数の移動オペレーションを含んでもよい。例えば、物体３６に対するロボット２２による拾い上げエラーを無くすために、物体３６を拾い上げ（１１０）、物体３６を第１リファレンスポイント（例えば、ＣＳＣを実行（７６）する時に用いられた（図１及び２参照）所定ポイント２４ａ）に移動（１１２）し、その後、第１物体３６上の特徴部の位置を再び特定（１１４）する（例えば前回位置特定（１０２）したように同じ特徴部について再び位置特定する）ことが有用となるであろう。
【００５５】
第１物体３６を拾い上げた後の第１物体３６の特徴部の位置特定（１１４）に基づいて、いかなる拾い上げエラー（例えばすべりに起因するもの）もが特定され、物体３６の第１リファレンスポイントから第２ワークステーション２６における所望の位置（例えば物体３８の上部における物体３６のための配置位置）への移動のために、更新されたクロスステーション変換を計算（１１６）することができる。その後、物体３６を所望の位置に移動（１１８）することができる。
【００５６】
この最終移動（又は先行する一連の移動）において、いくつかの実施形態では有用であるものの、位置特定又は変換は必ずしもキャリブレーション物体座標系内で特定又は計算されなくともよいことを再度認識すべきである。むしろ、（例えばＨＥＣ及びＣＳＣオペレーションの実行（７２，７４，７６）により決定された）座標系間の事前に規定された関係を用いることで、異なる関連座標系を適切に用いるため及び異なる座標系間を適切に移動するために、十分な柔軟性が与えられるであろう。
【００５７】
さらに、本明細書での議論に関し、物体を位置に移動させることが、物体がその位置を物理的に占めるよう物体を移動させること、又は物体を掴んでいるマニピュレータをマニピュレータがその位置を物理的に占めるよう移動させることを含んでもよいことが理解される。例えば、上での議論では、物体３６をリファレンス位置（例えば所定ポイント２４ａ）に移動（１１２）させるオペレーションは、ロボット２２のエンドエフェクタをリファレンス位置を占めるように移動させることを含んでもよく、必ずしも物体３６自体がリファレンス位置を占めるように移動させなくともよい。
【００５８】
別の実施形態では、上記のアプローチの変形が可能である。例えば、上記のオペレーションの内のいくつかの側面が、いくつかの実施形態では明確に（例えば離散的に）実行されてもよく、一方で他の実施形態では連続的な移動の一部として実行されてもよい。例えば、図３を再び参照すると、いくつかの実施形態は、以下の離散的なオペレーションを含んでもよい。即ち、物体を、基本的な繰り返し可能クロスステーション移動の開始ポイントとしての第１リファレンスポイント（例えば所定ポイント２６ａ）に移動（１１２）させること、基本的な繰り返し可能クロスステーション移動を実行するために物体を第１リファレンスポイントから第２ポイント（例えば所定ポイント２４ａ）に移動（１１８）させること、及び、物体が最終的に所望位置に配置されるよう、拾い上げ時のすべり及び配置オフセットなどの因子を補うために調整モーションを実行すること、を含んでもよい。
【００５９】
一方で、いくつかの実施形態では、特定の潜在的に離散的なオペレーションを組み合わせて連続的な（例えば結合された）オペレーション（例えば連続的な移動）としてもよい。例えば、すべり又は他のエラーを補う調整に係わる、第１及び第２ワークステーション内の第１及び第２リファレンスポイント（例えば所定ポイント２４ａ，２６ａ）間の移動並びに第２リファレンスポイントから最終位置への潜在的に離散的な移動を場合によっては組み合わせて、第２リファレンスポイント（例えば所定ポイント２６ａ）への実際の移動を全く含まない単一の連続的な移動としてもよい。この連続的なアプローチは、時として精度の低下をもたらし得るものの（例えば上記の離散的アプローチと比較した場合）、許容範囲内の精度でサイクル時間が速まるという有用な結果をもたらし得る。
【００６０】
いくつかの実施形態では、非組み立てオペレーションを含む種々のオペレーションに適用するために方法１００（及び本発明に係わる他の方法）を一般化することができる。例えば特徴部の位置特定に代えて、第１ワークステーション（又は他の場所）内の１以上のオペレーションについて位置（例えば具体的な部品上以外の位置）を特定するよう、方法１００を実施することができる。
【００６１】
したがって、本発明の実施形態は、ＶＢＭシステムのオペレーションのための改善されたシステム又は方法を提供することができる。いくつかの実施形態では、例えば、本明細書に開示されたシステム又は方法の実施により、比較的精度の高いクロスステーション・モーション（例えば作業対象物体の機械的運送）を、関連モーションシステムについて極めて高い精度を達成可能でなくとも（しかし、例えばモーションシステムエラーが実質的に繰り返し可能であるとき）、提供することができる。
【００６２】
例えば、いくつかの実施形態において、比較的正確なクロスステーション移動を提供するために、異なるワークステーションにおけるＨＥＣ間の関係を決定することができる。例えば、いくつかの配置構成では、キャリブレーション物体座標系の位置（Ｘ，Ｙ）は、第１ＨＥＣ（例えば第１ワークステーションにおけるもの）の下でのモーション座標系内の位置（Ｕ１，Ｖ１）として、及び第２ＨＥＣ（例えば第２ワークステーションにおけるもの）の下でのモーション座標系内の位置（Ｕ２，Ｖ２）として、決定することができる。上記の例のようなシステム又は方法を用いることで、関連モーションシステムが、（Ｕ１，Ｖ１）と（Ｕ２，Ｖ２）との間でクロスステーション移動を適切に実行できる集合オペレーションを実行することが可能となる。
【００６３】
これに関し、本発明の実施形態においては、関連モーションシステムが必ずしも極めて高い精度を有さないときでも適切なオペレーション動作を得ることができる。例えば、直前に記載した例では、記載のクロスステーション移動が比較的繰り返し可能なすべり（又はモーションシステムにおける他の比較的繰り返し可能エラー）にさらされた場合であっても、（Ｕ１，Ｖ１）と（Ｕ２，Ｖ２）との間の対応関係を維持することができる。そのようにして、例えば、２つの記載されたＨＥＣ間の絶対的、独立的関係の決定は、必ずしも必要でないことが分かる。むしろ、適度に正確な実行時間オペレーションは、通常、関連のある「偶発的」クロスステーション移動により関係付けられるような、２つのＨＥＣ間の特定の「偶発的」関係のみに依存してもよい。ＨＥＣ間の異なるマッピングにより異なるクロス−ステーション移動がもたらされ得るものの、各特定のクロスステーション移動について特定のマッピングを容易に決定して繰り返し可能なオペレーションに使用することができる。これに関し、例えば、クロスステーション・キャリブレーションの数学的特性評価を、通常、関連ＨＥＣ及び特定のクロスステーション移動の関数としてみることができる。
【００６４】
上でも議論したように、本明細書に開示のオペレーションは、デジタル電子回路又はコンピュータハードウェア、ファームウェア若しくはソフトウェア又はこれらの組み合わせで実行することができる。実行は、例えばプログラム可能プロセッサ、コンピュータ又は複数のコンピュータなどのデータ処理装置による遂行のために又はこのようなデータ処理装置のオペレーションを制御するために、コンピュータプログラム製品即ち例えば機械可読記憶装置又は伝搬信号などの情報媒体内で有形に実行されたコンピュータプログラムとして、行うことができる。コンピュータプログラムは、コンパイラ型又はインタープリタ型言語を含むいかなる形のプログラミング言語で書くことができるとともに、スタンドアロンプログラムとして又はモジュール、コンポーネント、サブルーチン若しくは他のコンピュータ環境での使用に適したユニットとしての形を含むいかなる形で展開することができる。コンピュータプログラムは、１つのコンピュータ又は１つの場所における若しくは複数の場所に分配され通信ネットワークによって相互接続された複数のコンピュータ上で実行されるために、展開することができる。記述したプロセッサ、コンポーネント若しくはモジュールは、いかなる種類の他のプロセッサ、コンポーネント若しくはモジュールと組み合わせることができ、又は種々のサブプロセッサ、サブコンポーネント若しくはサブモジュールに分けることができる。これらは本明細書に記載の実施形態に応じて様々に組み合わせることができる。
【００６５】
本明細書に開示の方法のオペレーションは、入力データで動作するとともに出力を生成することによって技術の機能を実施するためにコンピュータプログラムを実行する１以上のプログラム可能プロセッサによって、工程を実行することができる。また、例えばＦＰＧＡ（フィールド・プログラマブル・ゲート・アレイ）又はＡＳＩＣ（特定用途向け集積回路）などの特殊用途論理回路により方法のオペレーションを実行することができる及びそのような特殊用途論理回路として装置を実行することができる。モジュールは、コンピュータプログラムの一部及び／又はその機能を実行するプロセッサ／特殊回路を参照することができる。
【００６６】
コンピュータプログラムの遂行に適したプロセッサは、例えば、汎用及び特殊用途マイクロプロセッサの両方を含んでもよく、いかなる種類のデジタルコンピュータの任意の１以上のプロセッサを含んでもよい。通常、プロセッサは、読取り専用メモリ又はランダムアクセスメモリ又はその両方から指示及びデータを受信する。コンピュータの必須要素は、指示を実行するためのプロセッサ並びに指示及びデータを記憶するための１以上のメモリ装置である。通常、コンピュータは、例えば磁気、光磁気若しくは光ディスクなどのデータを記憶するための１以上の大容量記憶装置を含む、又は前記１以上の大容量記憶装置に動作可能に接続される、又はその両方である。また、データ伝送及び指示は、通信ネットワークにわたって起こることができる。コンピュータプログラム指示及びデータを具現化するために適した情報媒体は、例えば、ＥＰＲＯＭ、ＥＥＰＲＯＭなどの半導体メモリ装置及びフラッシュメモリ装置、例えば内蔵ハードディスク又は取外し可能ディスクなどの磁気ディスク、光磁気ディスク並びにＣＤ−ＲＯＭ及びＤＶＤ−ＲＯＭディスクを含むあらゆる形の不揮発性メモリを含む。プロセッサ及びメモリは、特殊用途論理回路が補充されてもよく、又は特殊用途論理回路に組み込まれてもよい。
【００６７】
ユーザとの相互作用を提供するために、上記のオペレーションを、ユーザに情報を表示するためのＣＲＴ（ブラウン管）又はＬＣＤ（液晶ディスプレイ）モニタなどの表示装置と、ユーザがコンピュータに対して入力を行う（ユーザインターフェース要素と相互作用する）ためのキーボード及びマウス又はトラックボールなどのポインティングデバイスと、を有するコンピュータ上で実行することができる。ユーザとの相互作用を提供するためにその他の種類の装置を用いてもよく、例えば、ユーザに提供されるフィードバックは、視覚フィードバック、聴覚フィードバック又は触覚フィードバックなどのいかなる感覚フィードバックでもよく、ユーザからの入力は音響、発話又は触覚入力などのいかなる形でも受信することができる。
【００６８】
上記のオペレーションは、例えばデータサーバとしての後端コンポーネント、例えばアプリケーションサーバであるミドルウェアコンポーネント、例えばユーザが例示的な実行との相互作用に使用できるグラフィカル・ユーザー・インターフェース及び／若しくはウェブブラウザを有するクライアントコンピュータである前端コンポーネント又はこれら後端、ミドルウェア及び前端コンポーネントの任意の組み合わせを含む分散型計算システムにおいて実行することができる。システムのコンポーネントは、いかなる形で又は通信ネットワークなどのデジタルデータ通信の媒体によって相互接続することができる。通信ネットワークの例には、例えばインターネットなどのローカルエリアネットワーク（「ＬＡＮ」）及び広域ネットワーク（「ＷＡＮ」）が含まれ、有線及び無線ネットワークが含まれる。
【００６９】
本発明について例示的な実施形態を参照して記載したが、本発明の範囲を逸脱せずにその構成要素に対して種々の変更及び同等のものとの置換を行ってもよいことは当業者に理解されるであろう。加えて、本発明の必須の範囲を逸脱せずに、本発明の教示に対して、特定の機器、状況又は材料を適用するような様々な修正が当業者に明らかであろう。したがって、本発明が、本発明を実施するために考えられる最良の実施形態として開示された特定の実施形態に限定されることは意図されておらず、本発明は特許請求の範囲に含まれる全ての実施形態を含むことが意図されている。
【図１】
2019115974.tif 000003
【図２】
2019115974.tif 000004
【図３】
2019115974.tif 000005
【外国語明細書】
2019115974.tif 000006
2019115974.tif 000007
2019115974.tif 000008
2019115974.tif 000009
2019115974.tif 000010
2019115974.tif 000011
2019115974.tif 000012
2019115974.tif 000013
2019115974.tif 000014
2019115974.tif 000015
2019115974.tif 000016
2019115974.tif 000017
2019115974.tif 000018
2019115974.tif 000019
2019115974.tif 000020
2019115974.tif 000021
2019115974.tif 000022
2019115974.tif 000023
2019115974.tif 000024
2019115974.tif 000025
2019115974.tif 000026
2019115974.tif 000027
2019115974.tif 000028
【図１】
2019115974.tif 000029
【図２】
2019115974.tif 000030
【図３】
2019115974.tif 000031