(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025093867
(43)【公開日】2025-06-24
(54)【発明の名称】異なる独立した座標測定システムの座標フレームを整合させるための方法およびシステム
(51)【国際特許分類】
G06T 7/30 20170101AFI20250617BHJP
【FI】
G06T7/30
【審査請求】未請求
【請求項の数】15
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024194246
(22)【出願日】2024-11-06
(31)【優先権主張番号】202311623860.6
(32)【優先日】2023-11-30
(33)【優先権主張国・地域又は機関】CN
(71)【出願人】
【識別番号】515322297
【氏名又は名称】ゼネラル エレクトリック テクノロジー ゲゼルシャフト ミット ベシュレンクテル ハフツング
【氏名又は名称原語表記】General Electric Technology GmbH
【住所又は居所原語表記】Brown Boveri Strasse 8, 5400 Baden, Switzerland
(74)【代理人】
【識別番号】100105588
【弁理士】
【氏名又は名称】小倉 博
(74)【代理人】
【識別番号】110002848
【氏名又は名称】弁理士法人NIP&SBPJ国際特許事務所
(72)【発明者】
【氏名】マウ、ザオ ミン
(57)【要約】
【課題】異なる独立した座標測定システムの座標フレームを整合させる。
【解決手段】第2のシステムに配置されたコンポーネントの第2の座標フレームおよび第2のパーツ座標系を初期化し、第2のシステムに関連する第2のデータ点セットを生成し、第1のシステムに関連する第1のデータ点セットを受信し、第2のパーツ座標系と第1のパーツ座標系との間の角度オフセットまたは並進オフセットを推定することにより、第2のパーツ座標系と第1のパーツ座標系とのアライメントを決定する。この方法は、決定されたアライメントが第2のパーツ座標系と第1のパーツ座標系とのアライメントを示さない場合、第2のシステムに位置決めされたコンポーネントに角度回転または並進変位を繰り返し適用し、第2のパーツ座標系と第1のパーツ座標系とのアライメントを決定することを含む。
【選択図】
図2
【特許請求の範囲】
【請求項1】
少なくとも2つの異なる座標測定システムから得られた座標フレームを整列させる方法であって、
第2のシステムに位置決めされたコンポーネントの第2の座標フレームおよび第2のパーツ座標系を初期化するステップと、
第2のシステムに関連する第2のデータ点セットを生成するステップであって、第2のデータ点セットは、第2のパーツ座標系に関連してコンポーネント上で特定された複数の制御点の空間測定データを含む、前記ステップと、
第1のシステムに関連する第1のデータ点セットを受けるステップであって、第1のデータ点セットは、コンポーネントが第1のシステムに位置決めされた際に、第1のシステムに関連する第2のパーツ座標系に関連してコンポーネント上で特定された複数の制御点の空間測定データを含む、前記ステップと、
第2のパーツ座標系と第1のパーツ座標系との間の角度オフセットおよび並進オフセットの少なくとも一方を推定することにより、第2のパーツ座標系と第1のパーツ座標系とのアライメントを決定するステップと、
決定されたアライメントが第2のパーツ座標系と第1のパーツ座標系とのアライメントを示さない場合、
第2のシステムに位置決めされたコンポーネントに角度回転および並進変位の少なくとも一方を適用するステップと、
第2のパーツ座標系と第1のパーツ座標系とのアライメントを決定すること、および、角度回転および並進変位の少なくとも一方を適用することを、第2のパーツ座標系が第1のパーツ座標系とのアライメントが得られるまで繰り返すステップと、を含む、方法。
【請求項2】
第2のパーツ座標系を初期化することが、1つまたは複数の仮想データムを定義するための少なくとも6つの制御点を使用して第2のパーツ座標系を初期化することをさらに含む、請求項1に記載の方法。
【請求項3】
角度オフセットを推定することが、反復最小二乗アルゴリズムを使用して角度オフセットを推定することを含む、請求項1に記載の方法。
【請求項4】
反復最小二乗法を使用して角度オフセットを推定することが、第2のパーツ座標系の仮想データムに関連する単位法線ベクトルの方向を反復的に更新することを含む、請求項3に記載の方法。
【請求項5】
角度オフセットを推定することが、グラムシュミット直交化プロセスおよび連鎖回転方程式を使用して結果変換行列を推定することを含む、請求項1に記載の方法。
【請求項6】
並進オフセットを推定することが、重み付き最小二乗アルゴリズムを使用して並進オフセットを推定することを含む、請求項1に記載の方法。
【請求項7】
コンポーネント上で特定される複数の制御点が、一次仮想データムに対応する複数の制御点の制御点の第1のサブセット、二次仮想データムに対応する複数の制御点の制御点の第2のサブセット、および三次仮想データムに対応する複数の制御点の制御点の第3のサブセットを含む、請求項1に記載の方法。
【請求項8】
第2のシステムがコンピュータ数値制御(CNC)機械を含み、第1のシステムが座標測定機械(CMM)を含む、請求項1に記載の方法。
【請求項9】
角度オフセットを推定することは、第1のパーツ座標系および第2のパーツ座標系の複数の制御点のそれぞれの重心を通る少なくとも一次仮想データムおよび二次仮想データムに対応する角度オフセットを推定することを含む、請求項1に記載の方法。
【請求項10】
並進オフセットを推定することは、第2のパーツ座標系の任意の軸に沿った並進オフセットを推定することを含む、請求項1に記載の方法。
【請求項11】
少なくとも2つの異なる座標測定サブシステムから得られた座標フレームを整列させるために使用するシステムであって、
命令を保存するように構成された少なくとも1つのメモリと、
保存された命令を実行するようにプログラムされた少なくとも1つのプロセッサと、を含み、命令はシステムに、
第2のシステムに位置決めされたコンポーネントの第2の座標フレームおよび第2のパーツ座標系を初期化するステップと、
コンポーネントおよび第2のパーツ座標系上で特定された複数の制御点の空間測定データを含む第2のデータ点セットを生成するステップと、
第1のシステムに関連付けられた第1のデータ点セットを受けるステップであって、第1のデータ点セットは、コンポーネントが第1のシステムに位置決めされた際に、第1のシステムに関連付けられた第1のパーツ座標系に対するコンポーネント上で特定された複数の制御点の空間測定データを含む、前記ステップと、
第2のパーツ座標系と第1のパーツ座標系とのアライメントを、第2のパーツ座標系と第1のパーツ座標系との間の角度オフセットおよび並進オフセットの少なくとも一方を推定することにより決定するステップと、
決定されたアライメントが第2のパーツ座標系と第1のパーツ座標系とのアライメントを示さない場合、
コンポーネントに角度回転または並進変位の少なくとも一方を適用するステップと、
第2のパーツ座標系と第1のパーツ座標系とのアライメントを決定し、角度回転または並進変位の少なくとも一方を適用することを、第2のパーツ座標系が第1のパーツ座標系とアライメントするまで繰り返すステップと、を行わせる、システム。
【請求項12】
第1のパーツ座標系または第2のパーツ座標系は、1つまたは複数の仮想データムを定義するための少なくとも6つの制御点を含む、請求項11に記載のシステム。
【請求項13】
角度オフセットは、反復最小二乗アルゴリズムを使用して推定される、請求項11に記載のシステム。
【請求項14】
反復最小二乗法を使用する角度オフセットは、第2のパーツ座標系の仮想データムに関連する単位法線ベクトルの方向を反復的に更新することにより推定される、請求項13に記載のシステム。
【請求項15】
角度オフセットは、グラムシュミット直交化プロセスおよび連鎖回転方程式を使用して結果変換行列を推定することにより得られる、請求項11に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に座標フレームを整合させるための方法およびシステムに関し、特に、異なる独立した座標測定システム(independent coordinate measurement systems)を使用して取得した座標フレームを整合させるためのアルゴリズムに関する。
【背景技術】
【0002】
現代の製造工程は、一般的に、コンピュータ支援設計(CAD:computer aided design)によるコンポーネントの設計からコンピュータ支援製造(CAM:computer aided manufacturing)まで、すべてデジタルで開始される。製造または修理中、物理的なコンポーネントは、例えば、コンピュータ数値制御(CNC:computerized numerical control)機械内に固定され、2つのコンポーネントを結合したり、コンポーネントの様々な位置で材料を追加または除去したりするなど、様々な作業を完了できるようにすることがある。
【0003】
しかし、一部のコンポーネント、特に作業中に動くコンポーネントは、著しい摩耗および/または歪みが生じることがあり、その結果、コンポーネントの現在の寸法、形状、および/または形状は、オリジナルまたは公称CADファイルで表されるコンポーネントのオリジナル寸法、形状、および/または形状から大幅に逸脱することがある。したがって、オリジナルCADファイルは、CNC機械を使用してコンポーネントの修理作業を行う際には限定的な用途しか提供しない可能性がある。このような場合、CNC工作機械を使用してコンポーネントを修理する前に、例えば座標測定機(CMM)、3Dスキャナー、レーザーラインスキャナー、ファローアーム(a coordinate measurement machine (CMM), a 3D scanner, a laser line scanner, and/or a FaroArm)などを使用して、コンポーネントの現在の寸法、形状、および/または形状を測定する。CMMを使用して収集された測定データは、座標測定システムで表現され、CNC工作機械用の適応型ツールパスを生成するために使用される場合がある。しかし、様々な理由により、CNC機械を使用して修理作業を行っている間にコンポーネントが公称位置からずれる可能性があり、それにより生成された適応型ツールパスには、コンポーネントの位置ずれに関連する固有の誤差が含まれる可能性がある。適応型ツールパスに含まれる固有の誤差には、並進誤差および/または回転誤差が含まれる可能性があり、これらは大量生産環境において決定および補償するには一般的に非経済的である。
【0004】
異なる座標測定システムは、異なる測定装置を備えており、同じコンポーネントに対応する座標フレームを生成するために異なる測定技術および/または測定アルゴリズムを使用することがある。そのため、ある測定技術を使用する座標測定システムの座標フレームを、別の測定技術を使用する座標測定システムに整合させることは困難である。したがって、可動部品が修理のためにCNC工作機械に固定される場合、コンポーネントの摩耗および/または歪みの量によっては、そのコンポーネントがCNC工作機械に正しく配置されているか否かの判断を含め、そのコンポーネントの相対位置を、CMM(または座標測定技術)を使用して収集したコンポーネントの測定データに基づく第1の座標フレームが、別の座標測定技術に基づく第2の座標フレームと一致しているかどうかを判断しなければ、正確に決定することはできない。このような座標フレームのずれは、コンポーネントの複雑な3D形状や、コンポーネントの製造上のばらつきによっても生じることがある。このようなプロセスは、時間のかかる、または手間のかかる作業となる可能性がある。そして、CNC工作機械におけるコンポーネントの位置に対応する座標フレームが、CMMを使用したコンポーネントの測定に対応する座標フレームと一致していない場合、上述の固有の誤差により、適応型ツールパスセットは適切でない可能性がある。
【0005】
したがって、異なる独立した座標測定システムおよび測定技術を用いて得られた座標フレームを整合させるための方法または技術が必要とされている。
【発明の概要】
【0006】
一つの側面において、少なくとも二つの異なる座標測定システムから得られた座標フレームを整合させる方法が開示される。この方法は、(i)第2の座標系および第2のシステムに位置決めされたコンポーネントの第2のパーツ座標系を初期化すること、(ii)第2のシステムに関連する第2のデータ点セットを生成することであって、第2のデータ点セットは、第2のパーツ座標系に関連するコンポーネント上で識別された複数の制御点の空間測定データを含み、(iii)第1のシステムに関連する第1のデータ点セットを受けることであって、第1のデータ点セットはコンポーネントが第1のシステム内に位置決めされた際に、第1のシステムに関連する第1のパーツ座標系に対してコンポーネント上で特定された複数の制御点の空間測定データを含み、(iv)第2のパーツ座標系と第1のパーツ座標系との間の角度オフセットおよび並進オフセットの少なくとも一方を推定することにより、第2のパーツ座標系と第1のパーツ座標系とのアライメントを決定する。および/または(v)決定されたアライメントが第2のパーツ座標系と第1のパーツ座標系とのアライメントが行われていないことを示す場合、(a)第2のシステムに位置決めされたコンポーネントに角度回転および並進変位の少なくとも一方を適用し、(b)第2のパーツ座標系と第1のパーツ座標系との位置合わせを決定し、角度回転変位および並進変位の少なくとも一方を適用することを、第2のパーツ座標系が第1のパーツ座標系と位置合わせされるまで繰り返す。
【0007】
別の側面では、少なくとも2つの異なる座標測定サブシステムから得られた座標フレームを整列させるために使用するシステムが提供される。このシステムは、命令を記憶するように構成された少なくとも1つのメモリと、記憶された命令を実行するようにプログラムされた少なくとも1つのプロセッサとを含み、命令は、システムに(i)第2のシステムに位置決めされたコンポーネントの第2の座標フレームおよび第2のパーツ座標系を初期化させ、(ii)第2のパーツ座標系に対してコンポーネント上で識別された複数の制御点の空間測定データを含む第2のデータ点群を生成させ、(iii)第1のシステムに関連する第1のデータ点群を受けさせ第1のシステムに関連付けられた第1のデータ点セットを受けさせ、第1のデータ点セットは、コンポーネントが第1のシステムに位置決めされた際に、第1のシステムに関連付けられた第1のパーツ座標系に対してコンポーネント上で特定された複数の制御点の空間測定データを含い、(iv)第2のパーツ座標系と第1のパーツ座標系との間の角度オフセットおよび並進オフセットの少なくとも一方を推定することにより、第2のパーツ座標系と第1のパーツ座標系との位置合わせを決定し、および/またはまたは(v)決定された位置合わせが第2のパーツ座標系と第1のパーツ座標系との位置合わせを示さない場合、次に(a)コンポーネントに角度回転および並進変位のうち少なくとも1つを適用し、(b)第2のパーツ座標系と第1のパーツ座標系との位置合わせを決定し、角度回転および並進変位のうち少なくとも1つを適用することを、第2のパーツ座標系が第1のパーツ座標系と位置合わせされるまで繰り返すことを行わせる。
【図面の簡単な説明】
【0008】
【
図1】座標フレームを得るために使用され得る例示的なコンポーネントおよびコンポーネントの例示的な制御点を示している。
【
図2】例えばCNC工作機械などの機械用に取得された
図1に示すコンポーネントの第1の座標フレームを、CMMから取得されたコンポーネントの第2の座標フレームに整合させる例示的なフローチャートを示す。
【
図3】2つの異なる独立した座標測定システムの2つの座標フレームを整合させるために実行される可能性がある方法の例示的なフローチャートを示す。
【
図4】例えばCNC工作機械やレーザー穿孔機などの第2のシステムのパーツ座標系を、例えばCMMなどの第1のシステムのパーツ座標系と同じ向きになるように変換するために必要な回転オフセット補正を推定する方法の例示的なフローチャートを示す。
【
図5】例えばCNC工作機械である第2のシステムのパーツ座標系を、その原点が例えばCMMである第1のシステムのパーツ座標系の原点と一致するように移動させるために必要な並進オフセット補正を推定する方法の例示的なフローチャートを示す。
【
図6】本開示で説明されている実施形態を実施するために使用され得る例示的な演算装置のブロック図を示す。
【発明を実施するための形態】
【0009】
本明細書で開示する様々な実施形態の要素を導入する際、「a」、「an」、「the」、および「前記:said」という冠詞は、その要素が1つ以上存在することを意味する。「含む:comprising」、「包含する:including」、および「有する:having」という用語は、包括的な意味であり、列挙した要素以外の追加の要素が存在し得ることを意味する。
【0010】
別段の指示がない限り、本明細書で使用される「概ね」、「実質的に」、「約」などの近似の表現は、その用語が、絶対的または完璧な度合いではなく、当業者であれば認識するであろう近似の度合いにのみ適用されることを示す。したがって、「約」、「概ね」、「実質的」などの用語によって修正された値は、特定された正確な値に限定されるものではない。少なくとも一部の事例では、概算の表現は、その値を測定する機器の精度に対応する場合がある。さらに、別段の指定がない限り、「第1」、「第2」などの用語は、本明細書では単にラベルとして使用されており、これらの用語が参照する項目に順序、位置、または階層的な要件を課すことを意図したものではない。さらに、「第2」の項目への参照は、「第1」またはそれより小さい番号の項目、または「第3」またはそれより大きい番号の項目の存在を必要とするものでも、排除するものでもない。
【0011】
本明細書で説明する実施形態は、異なる座標測定システムからの異なる座標フレームを整列させるために使用できる様々な方法に関する。各座標測定システムは、それぞれの測定技術を使用して座標フレームを生成する。本明細書で説明する手法を使用することで、異なる座標系を整合させて、座標測定機(CMM)がコンポーネント(部品)を測定するために使用する座標測定システムとは異なる座標測定システムに基づくCNC機械を使用して、コンポーネントに対して有益な作業を行うために使用することができる。本開示におけるCMMおよび/またはCNC機械への言及は例示的なものであり、本明細書で説明する実施形態の範囲を限定するものではない。
【0012】
一般に、CNC機械を使用して修理する必要があるコンポーネントについては、まずCMMを使用してコンポーネントを測定し、そのコンポーネントのパーツ座標系(part coordinate system、または座標フレーム)を生成することができる。CMMを使用して生成されたコンポーネントのパーツ座標系に基づいて、CNC機械を使用してコンポーネントの修理作業を行うための適応型ツールパス(adaptive tool paths:適応型工具経路)を生成することができる。しかし、コンポーネントがCNC工作機械に移送されて修理作業が行われる場合、CMMにおける位置決めからCNC工作機械における位置決めへの変更により、修理作業が必要な特徴点に対応する固有誤差(例えば、並進誤差および/または回転誤差)が生じる可能性がある。したがって、CMMを使用してコンポーネントの座標系に基づいて生成された適応型ツールパスを使用して特徴点で修復作業を行う前に、並進誤差および/または回転誤差が許容誤差範囲内またはほぼゼロになるように、CNC工作機械内のコンポーネントの座標系を同期または調整する必要がある。
【0013】
一般に、精密な固定具および/またはアダプタが使用される場合、コンポーネントはCNC機械内にその公称位置(nominal position)に配置される可能性があり、したがって座標フレームの整合は必要ない可能性がある。しかし、精密な固定具および/またはアダプタが使用されない場合、コンポーネントはCNC機械内のその公称位置に配置されない可能性があり、座標フレームの整合が必要になる可能性がある。
【0014】
しかしながら、本明細書に記載されるような座標系の位置合わせは、座標系の位置合わせのために現在使用されている方法よりも、収束速度の向上や座標系の正確な位置合わせなどの利点をもたらす可能性がある。例示的な実施形態による座標系の位置合わせ方法では、CNC工作機械におけるCMMに対応するコンポーネントのパーツ座標系の方向および/または位置を決定し、CNC工作機械に対応するコンポーネントのパーツ座標系に適用する並進オフセット補正および/または回転オフセット補正を決定して、三次元(3D)空間においてCMMとCNC機械のパーツ座標系を互いに整合させることができる。
【0015】
パーツ座標系は一般的に座標フレームを用いて表現または参照され、最小二乗法を用いてCMMのパーツ座標系に対応する座標フレームがCNC機械のパーツ座標系に対応する座標フレームと整合される。しかし、最小二乗法は一般的に時間がかかる。なぜなら、各誤差は、座標フレームのすべての基準(例えば、座標フレームの面積および/または座標フレームの方向)に対応する等しい重みで最小化されるからである。ただし、誤差が他の誤差と比較して特定の方向にある場合、一部の誤差はより重要になる可能性があり、その逆もまた同様である。
【0016】
本開示における様々な実施形態では、誤差が発生した場所に基づいて誤差に異なる重みが与えられる座標フレームの整列方法について説明する。言い換えれば、回転オフセット補正の決定および適用は、並進オフセット補正の決定および適用から切り離されている。さらに、または代替として、回転オフセット補正に適用または使用される重みは、並進オフセット補正に適用または使用される重みとは異なる場合がある。同様に、回転オフセット補正に適用または使用される制約は、並進オフセット補正に適用または使用される制約とは異なる場合がある。2つの独立した座標ベースの測定技術の座標フレーム(または座標系の一部)を整合させる方法は、以下、
図1~6を用いて詳細に説明する。
【0017】
図1は、ガスタービン(図示せず)の例示的なコンポーネント102の
図100を示す。例示的な実施形態では、コンポーネント102は、例えばガスタービンに使用されるタービンブレードであってもよい。コンポーネント102は、修理が必要な領域に摩耗の兆候を示す場合がある。コンポーネント102の場合、摩耗したコンポーネント102の形状および表面(geometry:幾何学、ジオメトリ)は、コンポーネントの元のCADファイルと大幅に異なる可能性があるため、その元の公称CADファイルは一般的に使用できない。そのため、コンポーネント102は、CMMを使用してコンポーネントの真のジオメトリを得るために再測定する必要がある。
【0018】
コンポーネント102の104a-104hなどの1つまたは複数の制御点の各制御点に対応する参照データは、各制御点の座標および表面法線ベクトル(coordinates and surface normal vectors)、ならびに各制御点に対応する測定方向を含んでもよい。コンポーネント上の1つまたは複数の制御点の各制御点に対応する基準データは、コンポーネント上の各制御点の座標(例えば、3D座標値)を取得するためにCMMおよびCNC工作機械によって使用される共通の測定プログラムを作成するために使用することができる。さらに、各制御点に対応する基準データは、CMMのパーツ座標系とCNC工作機械のパーツ座標系を整合させる際に、初期推定値と制約(initial estimates and constraints)を決定するために使用される場合がある。
【0019】
測定プログラム(または共通測定プログラム:common measurement program)は、一次、二次、および/または三次仮想データム(primary, secondary, and/or tertiary virtual datums)用の少なくとも6つの制御点を定義することによって作成することができる。仮想データムは、平面、線、および/または点の組み合わせ(combination of planes, lines, and/or points)である場合がある。さらに、または代替的に、参照データの一部として、各仮想データムに対して法線ベクトルが定義される。限定するものではない例として、CMMを使用してコンポーネント102を再測定するために、コンポーネント102上の8つの制御点104a、104b、104c、104d、104e、104f、104g、および104hが特定される。制御点104a~104dは、一次データム平面(primary datum plane:一次基準平面)106を定義するために使用され、制御点104e~104gは、二次データム平面108を定義するために使用され、制御点104hは、三次データム点(tertiary datum point)を定義するために使用される。言い換えれば、制御点104a~104dは、一次仮想データムに関してパーツ座標系(または座標フレーム)を整合させるための制御点セットを定義し、制御点104e~104gは、二次仮想データムに関してパーツ座標系(または座標フレーム)を整合させるための一連の制御点を定義し、制御点104hは三次仮想データムに関してパーツ座標系(または座標フレーム)を整合させるための一連の制御点を定義する。
【0020】
各制御点は、特定の開始位置(
図1では球体で示す)から特定の方向(
図1では矢印で示す)に移動するタッチプローブで測定されてもよい。このようにして三次元測定機で収集された各制御点に対応する基準データ(Reference data)は、三次元測定機のローカルメモリおよび/またはクラウドストレージに保存されてもよい。同様に、例えばCNC工作機械のタッチプローブを使用して、コンポーネント102の1つまたは複数の制御点104a~104hの各制御点に対応する基準データをCNC工作機械に収集してもよい。このようにしてCNC工作機械に収集された各制御点に対応する基準データは、CNC工作機械のローカルメモリおよび/またはクラウドストレージに保存してもよい。
【0021】
本明細書で説明するように、コンポーネント102が修理作業を行うためにCNC機械に配置されると、コンポーネント102のCNC機械内での向きおよび/または姿勢の変化(changes in an orientation and/or a pose)により、1つまたは複数の制御点104a~104hに対応する基準データは、異なる実測値を有することがある。その結果、CMM用のコンポーネント102のパーツ座標系がCNC工作機械用のコンポーネント102のパーツ座標系と一致しない場合があり、CMMを使用してコンポーネント102用に作成または生成された適応型ツールパスがCNC工作機械では機能しない場合もある。また、CMMを使用してコンポーネント102の実際の測定データに基づいて生成された適応型ツールパスを使用してコンポーネント102の修理作業を行うには、CNC機械用のコンポーネント102のパーツ座標系をCMM用のコンポーネント102のパーツ座標系と整合させる必要がある。
【0022】
図2は、CMMおよびCNC工作機械を使用して、コンポーネント102(
図1に示す)の1つまたは複数の制御点104a~104h(
図1に示す)に対応する基準データを収集するための例示的なフローチャート200を示している。
図1に示す)コンポーネント102のパーツ座標系をCMMに対応するパーツ座標系と整合させるために、CMMおよびCNC工作機械を使用して、コンポーネント102の1つまたは複数の制御点104a-104h(
図1に示す)に対応する基準データを収集するための例示的なフローチャート200を示す。したがって、フローチャート200は、例えばCMMである第1のシステム202と、例えばCNC機械またはレーザー穿孔機である第2のシステム210とによって実行され得る動作を説明する。
【0023】
本明細書で説明されているように、第1のシステム202と第2のシステム210は、それぞれ独自の座標測定技術を使用してコンポーネントを測定し得る。第1のシステム202によって使用される座標測定技術は、第2のシステム210によって使用される座標測定技術とは異なり、独立したものであってもよい。非限定的な例として、第1のシステム202は、コンポーネント102に関連する座標フレームを構築するための3D測定データを生成または取得するために、三次元GOMスキャナーおよび/またはステレオカメラシステム(2つ以上のレンズを含む)を使用してもよく、第2のシステム210は、コンポーネント102用の座標フレームを構築するための3D測定データを生成または取得するために、カメラ(単一レンズを含む)および光学センサ(例えば、コーンプローブ:ConoProbe)を使用してもよい。
【0024】
フローチャート200に示されているように、第1のシステム202は、第1のシステム202に対応するグローバル座標系を初期化および/または較正204してもよい。本明細書で説明されているように、グローバル座標系は、空間におけるノードおよびキーポイントの座標位置を定義する。グローバル座標系は、点の位置を(X,Y,Z)として表すグローバル直交座標系(CS0)、点の位置を(R,θ,Z)で、グローバル球座標系(CS2)は点の位置を(R,θ,φ)で、および/またはグローバル円筒座標系(CS5)は点の位置を(R,θ,γ)で表す(a global cartesian system (CS 0) representing a point's position as (X, Y, Z), a global cylindrical system (CS 1) representing a point’s position as (R, θ, Z), a global spherical system (CS 2) representing a point’s position as (R, θ, φ), and/or a global cylindrical system (CS 5) representing a point’s position as (R, θ, γ))。しかし、本開示では、グローバル直交座標系(CS0)をグローバル座標系として選択し、さまざまな実施形態について説明する。
【0025】
第1のシステム202のパーツ座標系は、測定されるコンポーネント102の様々な側面に対して初期化される。第1のシステム202によって測定および較正される様々な側面には、寸法、長さ、直径、距離、角度、位置、同心度、対称性、角度、平行度、垂直度、直線度、円形度、平面度、円筒度、輪郭、コンポーネントのランアウト(a size, a length, a diameter, a distance, an angle, a position, a concentricity, a symmetry, an angularity, a parallelism, a perpendicularity, a straightness, a roundness, a flatness, a cylindricity, a profile, a runout(振れ変動) of the component)などが含まれるが、これらに限定されない。
【0026】
第1のシステム202のグローバル座標系の初期化204が成功した後、第1のシステム202のパーツ座標系が確立206される。パーツ座標系は、第1のシステム202および/または第2のシステム210を使用してコンポーネント102を測定するための方向、位置合わせ(アライメント)、および/または原点(orientation, alignment, and/or origin)を確立するために使用される。非限定的な例として、パーツ座標系は、特徴点および制御点の位置が定義される座標フレームであってもよい。第1のシステム202のパーツ座標系は、第1のシステム202のグローバル座標系に従って表現される。コンポーネント102に対して、確立されたパーツ座標系に基づいて適応型ツールパスが生成されてもよい。適応型ツールパスに対応する測定データは、第1のシステムのローカルメモリ(またはローカルデータベース)に保存される場合がある。あるいは、または追加的に、測定データはクラウドデータベースに保存される場合がある。
【0027】
オリジナルのCADファイルまたは公称CADファイル(original or nominal CAD file)によって表されるコンポーネント102のオリジナルの寸法、ジオメトリ、および/または形状が有用でない場合がある一方で、コンポーネント102が再測定される間、適応型ツールパス用の測定データが第1のシステム202を使用して生成される場合がある。コンポーネント102が修理作業を行うために第2のシステム210に配置されると、修理されるコンポーネント102のために第2のシステム210のグローバル座標系が初期化212される。
【0028】
第2のシステム210のグローバル座標系の初期化212が成功した後、第2のシステム210のパーツ座標系が確立214される。本明細書で説明するように、パーツ座標系は、第1のシステム202および/または第2のシステム210を使用しながらコンポーネント102を測定するための方向、位置合わせ、および/または原点を確立するために使用される。非限定的な例として、パーツ座標系は、特徴点および制御点の位置が定義される座標フレームであってもよい。第2のシステム210のパーツ座標系は、第2のシステム210のグローバル座標系に従って表現される。コンポーネント102に対して確立されたパーツ座標系に基づいて、適応型ツールパスが生成されてもよい。適応型ツールパスに対応する測定データは、第1のシステムのローカルメモリ(またはローカルデータベース)に記憶208されてもよい。あるいは、または追加的に、測定データはクラウドデータベースに記憶されてもよい。
【0029】
第2のシステム210のパーツ座標系は、第1のシステム202のパーツ座標系とアライメント216されてもよい。第2のシステム210のパーツ座標系と第1のシステム202のパーツ座標系とのアライメント216は、以下、
図3を用いて詳細に説明する。第2のシステム210のパーツ座標系と第1のシステム202のパーツ座標系とのアラインメント216が成功すると、第1のシステム202(またはクラウドデータベース)から第2のシステム210で受信した適応型ツールパスに対応する測定データ218を、第2のシステム210でコンポーネント102の修理作業を行うために使用することができる。
【0030】
一部の実施形態では、第1のシステム202と第2のシステム210は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネット、3Gネットワーク、4GまたはLTE(long-termevolution)ネットワーク、5Gネットワーク、6Gネットワークなどを介して通信可能に結合されてもよい。あるいは、追加的に、第1のシステム202のパーツ座標系に対応する座標フレームおよび/または測定データを、フラッシュメモリ、ハードディスク、ソリッドステートドライブ、リードオンリーメモリ(ROM)、コンパクトディスク、ユニバーサルシリアルバス(USB)フラッシュドライブなどを含むがこれらに限定されないメモリを使用して、第2のシステム210に通信および/または転送してもよい。
【0031】
図3は、CMMおよびCNC工作機械を含む、2つの異なる独立した座標測定システムの2つの座標フレームを整合(アライン:位置合わせ)させるために実行され得る方法の例示的なフローチャート300を示す。フローチャート300は、CMMとCNC工作機械を使用して、コンポーネント102(
図1に示す)の制御点104a~104h(
図1に示す)に対応する実際の値を測定することを含んでもよい。これにより、CNC工作機械に対応するコンポーネント102のパーツ座標系を、CMMに対応するコンポーネント102のパーツ座標系に整合させることができる。したがって、フローチャート300は、例えばCMMである第1のシステム302と、例えばCNC機械またはレーザー穿孔機である第2のシステム314とによって実行される可能性がある動作を説明する。
【0032】
本明細書で説明されているように、第1のシステム302と第2のシステム314は、それぞれ独自の座標測定技術を使用してコンポーネントを測定することができる。第1のシステム302によって使用される座標測定技術は、第2のシステム314によって使用される座標測定技術とは異なる独立したものであってもよい。非限定的な例として、第1のシステム302は、コンポーネント102に関連する座標フレームを構築するための3D測定データを生成または取得するために、3次元GOMスキャナーおよび/またはステレオカメラシステム(2つ以上のレンズを含む)を使用してもよく、第2のシステム314は、コンポーネント102用の座標フレームを構築するための3D測定データを生成または取得するために、カメラ(単一レンズを含む)および光学センサ(例えば、コーンプローブ:ConoProbe)を使用してもよい。
【0033】
フローチャート300に示されているように、第1のシステム302は、第1のシステム302に対応する機械座標系を初期化および/またはリセット304してもよい。本明細書で説明されているように、機械座標系は、空間におけるノードおよびキーポイントの座標位置を定義する。機械座標系は、点の位置を(X、Y、Z)として表すグローバル直交座標系(CS0)、点の位置を(R,θ,Z)で、グローバル球座標系(CS2)で点の位置を(R,θ,φ)で、および/またはグローバル円筒座標系(CS5)で点の位置を(R,θ,γ)で表す。しかし、本開示では、グローバル直交座標系(CS0)を機械座標系として選択した様々な実施形態が説明される。
【0034】
第1のシステム302のパーツ座標系は、測定されるコンポーネント102の様々な側面について初期化され、起動される306。第1のシステム302によって測定および較正される様々な側面には、寸法、長さ、直径、距離、角度、位置、同心度、対称性、角度、平行度、垂直度、直線度、円形度、平面度、円筒度、プロファイル、コンポーネントの振れ(ランアウト)などが含まれるが、これらに限定されない。
【0035】
さらに、パーツ座標系は、第1のシステム302および/または第2のシステム314を使用してコンポーネント102を測定するための方向付け、位置合わせ、および/または原点を確立するために使用される。非限定的な例として、パーツ座標系は、特徴点および/または制御点の位置が定義される座標フレームであってもよい。第1のシステム302のパーツ座標系は、第1のシステム302の機械座標系に従って表現される。コンポーネント102に対して確立されたパーツ座標系に基づいて、適応型ツールパスが生成されてもよい。コンポーネント102は、補修領域(または特徴点)の実測プロファイルを取得するため、および/または適応型ツールパスを生成するために、測定308されてもよい。さらに、本明細書で説明されているような制御点104a-104hなどの制御点の実測値を取得するために、公称測定プログラムが実行される場合がある。公称測定プログラムは、本開示で説明されている3DGOMスキャナーおよび/またはステレオカメラシステムを使用して実行される場合がある。制御点および特徴点に対応して収集された測定データは、適応型ツールパスを生成するために使用されてもよい。測定データは、第1のシステム302のローカルメモリ(またはローカルデータベース)に保存されてもよい。あるいは、または追加的に、測定データはクラウドデータベースに保存されてもよい。測定データをローカルメモリ、またはクラウドデータベースに保存すると、第1のシステム302によって実行された動作は終了312してもよい。
【0036】
本開示で説明したように、オリジナルまたはノミナルCADファイルで表されるコンポーネント102のオリジナルの寸法、ジオメトリ、および/または形状が有用でない場合があるため、コンポーネント102は再測定され、適応型ツールパスの測定データは、このようにして第1のシステム202を使用して生成される。コンポーネント102が修理作業を行うために第2のシステム314に配置されると、修理されるコンポーネント102のために第2のシステム314の機械座標系が初期化され、リセット316される。
【0037】
第2のシステム314の機械座標系の初期化およびリセット316が正常に完了した後、第2のシステム314のパーツ座標系が初期化および起動318される。本明細書で説明したように、パーツ座標系は、第1のシステム302および/または第2のシステム314を使用している間にコンポーネント102を測定するための方向、位置合わせ、および/または原点を確立するために使用される。非限定的な例として、パーツ座標系は、特徴点および/または制御点の位置が定義される座標フレームであってもよい。第2のシステム314のパーツ座標系は、第2のシステム314の機械座標系に従って表現される。カメラ(単眼レンズを含む)および光学センサ(例えばコノプローブ)を使用して、例えば
図1に示す制御点104a~104hなどの制御点の実測値を取得するための公称測定プログラム320が実行される場合がある。
【0038】
第1のシステム302によって制御点および特徴点に対応して収集された測定データは、第2のシステム314によって受信されてもよい。測定データは、制御点および/または特徴点に対応する測定値に基づいて第1のシステム302によって生成された適応型ツールパスも含んでもよい。第1のシステム302から第2のシステム314が受信した制御点に対応する測定データは、第2のシステム314の座標フレーム(またはパーツ座標系)が第1のシステム302の座標フレーム(またはパーツ座標系)と整合していることを確認するために、第2のシステム314によって比較322されてもよい。比較322に基づいて、第2のシステム314の座標フレームが第1のシステム302の座標フレームと整列していると判定された場合、第1のシステム302によって生成された適応型ツールパスを第2のシステム314が使用して、コンポーネント102に対する修理作業332を実施してもよい。そして、修理作業332を成功裏に実行すると、第2のシステム314は方法操作334を終了してもよい。しかし、比較322に基づいて第1のシステム302の座標フレームが第2のシステム314の座標フレームと整列していないと判断された場合、回転オフセット補正を推定し、並進オフセット補正を推定し、回転オフセット補正および並進オフセット補正をアクティブなパーツ座標系に適用し、公称測定プログラム(nominal measurement program)を実行して、例えば
図1に示す制御点104a~104hなどの制御点の実測値を取得する前に、回転オフセット補正の推定326および並進オフセット補正の推定328については、以下、
図4および
図5を用いて詳細に説明する。
【0039】
第2のシステム314のパーツ座標系を第1のシステム302のパーツ座標系に整合させる更新を行う際に、制御点の実測値、例えば
図1に示す制御点104a~104hの実測値を取得するために、第2のシステム314の公称測定プログラムを再度実行320してもよい。第2のシステム314によるコンポーネント102の再測定に基づく制御点の実測データは、第1のシステム302から受信した制御点の測定データと再度比較322されてもよい。このとき、比較322に基づいて、第1のシステム302の座標フレームが第2のシステム314の座標フレームと整合していると判定324され、したがって、第1のシステム302によって生成された適応型ツールパスが、第2のシステム314によって使用されて、コンポーネント102の修理作業332が実行される場合がある。そして、修理作業332を成功裏に実行すると、第2のシステム314は、方法操作334を終了することができる。
【0040】
図4は、例えばCNC工作機械またはレーザー穿孔機である第2のシステム210のパーツ座標系を、例えばCMMである第1のシステム202のパーツ座標系と同じ向きになるように変換するために必要な回転オフセット補正を推定326する方法を示す。本明細書で説明されているように、第1のシステム202のパーツ座標系は、補修領域および適応されたツールパスの実際のデータを格納する座標フレームである。第2のシステム210のパーツ座標系に対する第1のシステム202のパーツ座標系の姿勢(pose)を推定することにより、対応する回転オフセット補正をその後決定することができる。
【0041】
本明細書で説明されているように、第1のシステム302に対応する測定プログラム310は、それぞれ一次、二次および三次仮想データムに対して定義されている基準制御点セット402の実測値を測定する。実際の制御点セット402は、第1のシステム302のアクティブなパーツ座標系306で表現される。第1のシステム202に対応する各仮想データムは、単位法線ベクトルによって表される。回転整列方法では、第1および第2の仮想データムは、パーツ座標系318の第1および第2の基底(first and second bases)を整列するために使用される。パーツ系318の第3の基底は、第1および第2の基底に対して垂直である。したがって、第1のシステム202に対応する一次および二次仮想データム面は、面-面または面-線の組み合わせ(plane-plane or plane-line combination)であり、回転オフセット補正を計算する際に面外誤差または線外誤差(out-of-plane or the out-of-line errors)のみが最小化される。
【0042】
第1のシステム302の一次および二次仮想データムのそれぞれの重心(respective centroids for the primary and the secondary virtual datums)が決定される404。そして、一次および二次仮想データムの法線ベクトルが基準データに基づいて初期化される406。実際の一次および二次仮想データムは、それぞれの法線ベクトル406に垂直で、それぞれの重心404を通るように作成される408。面外または線外の距離(out-of-plane or out-of-line distances)は、実際の制御点402とそれぞれの実際の一次仮想データム408および二次仮想データム408との間の垂直距離(perpendicular distances)410を計算することによって決定される。
【0043】
同様に、第2のシステム314に対応する測定プログラム320は、それぞれ一次、二次、三次仮想データムに対して定義される基準制御点セット412の実測値を測定する。基準制御点セット412は、第2のシステム314のアクティブパーツ座標系(active part coordinate system)318で表現される。第2のシステム210に対応する各仮想データムは、単位法線ベクトルによって表される。回転整列方法では、第1および第2の仮想データムは、パーツ座標系318の第1および第2の基底を整列するために使用される。パーツ座標系318の第3の基底は、第1および第2の基底に対して垂直である。したがって、第2のシステム314に対応する一次および二次仮想データム面は、面-面または面-線の組み合わせである。そして、回転オフセット補正を計算する際、面外誤差または線外誤差(out-of-plane or the out-of-line errors)が最小化される。
【0044】
第2のシステム210の一次および二次仮想データムのそれぞれの重心が決定される414。一次および二次仮想データムの法線ベクトルは、基準データに基づいて初期化される416。実際の一次および二次仮想データムは、それぞれの重心414を通り、それぞれの法線ベクトル416に垂直に作成される418a。面外の面外距離は、それぞれの実際の一次仮想データムおよび二次仮想データム418aからの実際の制御点412間の垂直距離418bを計算することによって決定される。
【0045】
本明細書で説明したように、一次仮想データムは、例えば制御点104a-104dの4つの制御点を使用して決定または定義することができる。第1のシステム202の一次仮想データムを仮想データム面Aとし、第2のシステム210の一次仮想データムを仮想データム面Bとすると、一次仮想データム面AおよびBは、例えば制御点104a-104dの4つの共通参照制御点によって定義される。実際の仮想データム面Aは、第1のシステム202の実際の制御点の重心を通る408を通る。仮想データム面Bは、第2のシステム210の実際の制御点の重心を通る418aを通る。第1のシステム202の実測制御点から実測一次仮想データムまでの垂直距離は、dA1からdA4として決定または計算される。同様に、第2のシステム210の実測制御点から実測一次仮想データムまでの垂直距離は、dB1からdB4として決定または計算される。
【0046】
第1のシステム202の実測制御点の実測一次仮想データムからの垂直距離と、第2のシステム210の実測制御点の実測一次仮想データムからの垂直距離とを比較418cして、その差を求める。したがって、第1の制御点の面外誤差または線外誤差は、e1=dB1-dA1として決定され、同様に、残りの制御点の各制御点の面外誤差も決定され得る。
【0047】
収束するか、またはすべての面外誤差または線外誤差がゼロまたは特定の事前定義された閾値内にドライブ(drive:駆動)されるかが、418dの418で決定される。本明細書で説明されているように、すべての面外誤差がゼロに駆動される場合、基準点Bの実際の法線ベクトルは、基準点Aの法線ベクトルと平行となる。いくつかの例では、第2のシステム210の実際の制御点は、一般的に第1のシステム202の実際の制御点とは異なるため、反復最小二乗法418は、反復的に基準Bの単位法線ベクトルの方向を反復的に更新することにより、線外誤差の面外誤差を最小化する(minimize 418e of 418 the out-of-plane of out-of-line errors)418e、418必要がある。最適解では、基準Bの最終的な単位法線ベクトルは、基準Aの単位法線ベクトルに極めて近似するはずである。言い換えれば、第1のシステム202と第2のシステム210間の一次仮想データムは平行または整列している。
【0048】
回転アライメント方法326では、第2のシステム314の一次仮想データムおよび二次仮想データムの実際の単位法線ベクトルを、第1のシステム302の仮想データムの対応する単位法線ベクトルと平行になるように推定することが目的である。推定された単位法線ベクトルを使用して、第2のシステム314の機械座標系316に対する第1のシステム302のパーツ座標系306を、420のグランドシュミットプロセス420aおよび420のチェーン回転方程式420bを使用して再構築することができる。その後、回転オフセット補正を計算して、第2のシステム314のアクティブなパーツ座標系を、第1のシステム302のパーツ座標系306の向きに整合するように更新することができる。
【0049】
さらに、または代替的に、収束に達すると、最適な単位法線ベクトルが、第2のシステム314の機械座標系316に対して第1のシステム302のパーツ座標系306を再構成するために使用される。最後に、変換行列に基づいて、第2のシステム314のアクティブなパーツ座標系の回転オフセット補正を計算することができる。
【0050】
図5は、第2のシステム210のパーツ座標系をシフトして、その原点が第1のシステム202のパーツ座標系の原点と一致するようにするために必要な並進オフセット補正を推定する方法328を示す。本明細書で説明したように、回転オフセットアライメント326は、一次および二次仮想データムの面外または線外誤差を最小化することを目的とするという点で、並進オフセットアライメント328から分離されている。一方、並進オフセット補正328は、それぞれの局所接線面(respective local tangent surfaces)上のすべての制御点における面内または線内誤差(in-plane or in-line errors)を最小化することを目的としている。制御点に個別の重みを割り当てることができ、重み付き最小二乗法を使用して面内誤差を最小化する。
【0051】
並進オフセット補正328の方法は、
図5を使用して説明する。例えば、第2のシステム210の参照制御点104a~104hの実制御点(actual control points)の1つである点L2に対して、例えば点L1は、第1のシステム202の参照制御点104a~104hの実制御点に対応する。点L2の局所表面法線ベクトルが回転オフセット補正502を用いて回転504された後、新しい表面法線ベクトルを用いて点L2で局所接平面(local tangent plane)が作成506される。
【0052】
いくつかの例では、タッチプローブは、公称測定プログラム(nominal measurement program)320に従って、例えばアクティブなパーツ座標系318のy軸などの特定のプローブベクトルに沿って移動する。プローブベクトルは第2のシステム314のアクティブなパーツ座標系の方向によって決まるため、実際の制御点L2の新しい位置は点L2’で示される。制御点L2のプローブベクトルに回転オフセット補正502を適用した後、対応する点L2’は、回転したプローブベクトルを局所接平面(local tangent plane)506と交差させることにより推定508される。面内誤差を求めるには、第1のシステム202の実際の点L1を、例えば点L1’として、表面法線に沿って局所接平面に投影510する必要がある。面内誤差は、L1’とL2’の制御点を差し引くことで計算512される。1つの制御点のみを考慮すると、回転したプローブベクトルが点L1’を通過するようにパーツ座標系をシフトさせることで、面内誤差をゼロにすることができる。
【0053】
アライメント方法は少なくとも6つの制御点が必要であるため、最適な並進オフセット補正は、加重最小二乗法(weighted least squares method)を使用して、すべての制御点の局所的な面内誤差を最小化することで決定または計算される。重み付けにより、例えば、曲面にある制御点よりも平坦な表面にある制御点に、より重点を置くことができるという柔軟性が得られる。また、重み付けにより、各仮想データムに対する制御点の量を正規化する手段が得られる。例えば、合計6つの制御点に対して、平面、線、点の仮想データムにそれぞれ1/3、1/2、1の重み付けを割り当てることができる。
【0054】
図6は、本開示の実施形態が実装され得る例示的なコンピューティング装置または例示的なコンピュータシステム600のブロック図を示す。コンピュータシステム600は、情報を通信するためのバス602または他の通信機構と、情報を処理するためのバス602に結合されたハードウェアプロセッサ604とを含む。ハードウェアプロセッサ604は、例えば汎用マイクロプロセッサであってもよい。
【0055】
コンピュータシステム600は、ランダムアクセスメモリ(RAM)などの主記憶装置606、またはプロセッサ604によって実行される情報および命令を格納するためにバス602に結合された他の動的記憶装置も含む。主記憶装置606は、プロセッサ604によって実行される命令の実行中に、一時変数またはその他の中間情報を保存するためにも使用される。このような命令は、プロセッサ604がアクセス可能な一時的でない記憶媒体に保存されると、命令で指定された操作を実行するようにカスタマイズされた専用マシンとしてコンピュータシステム600を機能させる。
【0056】
コンピュータシステム600は、プロセッサ604用の静的情報および命令を格納するためにバス602に結合されたリードオンリーメモリ(ROM)608または他の静的記憶装置をさらに含む。磁気ディスク、光ディスク、フラッシュメモリ記憶装置などの記憶装置610が、情報および命令を格納するためにバス602に結合されて設けられる。
【0057】
コンピュータシステム600は、バス602を介して、コンピュータユーザーに情報を表示するための液晶ディスプレイ(LCD)などのディスプレイ612に結合され得る。英数字キーおよびその他のキーを含む入力装置614が、情報およびコマンド選択をプロセッサ604に伝達するためにバス602に結合されている。別のタイプのユーザ入力装置は、方向情報およびコマンド選択をプロセッサ604に伝達し、ディスプレイ612上のカーソルの移動を制御するための、マウス、トラックボール、またはカーソル方向キーなどのカーソル制御装置616である。この入力デバイスは、通常、2つの軸における2つの自由度、すなわち第1の軸(例えば、X軸)と第2の軸(例えば、Y軸)を有し、これによりデバイスは平面内の位置を特定することができる。
【0058】
コンピュータシステム600は、カスタマイズされたハードワイヤードロジック、1つまたは複数の特定用途向け集積回路(ASIC)、またはフィールドプログラマブルゲートアレイ(FPGA)、ファームウェアおよび/またはプログラムロジックを使用して、本明細書に記載の技術を実装してもよい。これらのハードウェアは、コンピュータシステムと組み合わせて使用することで、コンピュータシステム600を特殊目的の機械として動作またはプログラムさせる。一実施形態によると、本明細書に記載の技術は、プロセッサ604が主メモリ606に含まれる1つまたは複数の命令の1つまたは複数のシーケンスを実行することに応じて、コンピュータシステム600によって実行される。このような命令は、記憶装置610などの別の記憶媒体から主メモリ606に読み込まれる場合がある。主メモリ606に含まれる命令のシーケンスが実行されると、プロセッサ604が本明細書に記載される処理ステップを実行する。代替の実施形態では、ハードワイヤード回路がソフトウェア命令の代わりに使用されるか、またはソフトウェア命令と組み合わせて使用される場合がある。
【0059】
本明細書で使用される用語「記憶媒体」は、データを保存し、かつ/または特定の方法で機械を動作させる命令を保存する、一時的でない媒体を指す。このような記憶媒体は、不揮発性媒体および/または揮発性媒体で構成される場合がある。不揮発性媒体には、例えば、記憶装置610などの光ディスク、磁気ディスク、フラッシュメモリ記憶装置などが含まれる。揮発性媒体には、主メモリ606などのダイナミックメモリが含まれる。一般的な記憶媒体には、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、ソリッドステートドライブ、磁気テープ、またはその他の磁気データ記憶媒体、CD-ROM、その他の光データ記憶媒体、穴のパターンを有する物理的媒体、RAM、プログラム可能なROM(PROM)、電気的プログラム可能なROM(EPROM)、FLASH-EPROM、不揮発性RAM(NVRAM)、その他のメモリチップまたはカートリッジ、内容アドレス指定メモリ(CAM)、および3値内容アドレス指定メモリ(TCAM)である。
【0060】
記憶媒体は伝送媒体とは別個のものであるが、伝送媒体と組み合わせて使用される場合がある。伝送媒体は、記憶媒体間の情報転送に関与する。例えば、伝送媒体には、バス602を構成するワイヤを含む同軸ケーブル、銅線、光ファイバーが含まれる。伝送媒体は、電波や赤外線データ通信中に生成される電波や光波のような形態を取ることもできる。
【0061】
プロセッサ604で実行するために、1つまたは複数の命令を伝達する際に、さまざまな形態のメディアが関与する場合がある。例えば、命令は、最初にリモートコンピュータの磁気ディスクまたはソリッドステートドライブ上で伝達される場合がある。リモートコンピュータは、命令をリモートコンピュータのダイナミックメモリにロードし、モデムを使用して電話回線上で命令を送信することができる。コンピュータシステム600にローカルなモデムは、電話回線上のデータを受信し、赤外線送信機を使用してデータを赤外線信号に変換することができる。赤外線検出器は、赤外線信号で伝送されたデータを受信することができ、適切な回路により、データはバス602上に配置される。バス602はデータを主メモリ606に伝送し、プロセッサ604がそこから命令を取得して実行する。主メモリ606が受信した命令は、オプションとして、プロセッサ604による実行の前または後に、記憶装置610に保存することができる。
【0062】
コンピュータシステム600は、バス602に結合された通信インターフェース618も含む。通信インターフェース618は、ローカルネットワーク622に接続されたネットワークリンク620に双方向のデータ通信結合を提供する。例えば、通信インターフェース618は、統合デジタル通信網(ISDN)カード、ケーブルモデム、衛星モデム、または対応するタイプの電話回線、ケーブル回線、および/または光ファイバー回線にデータ通信接続を提供する任意のタイプのモデムであってもよい。別の例として、通信インターフェース618は、互換性のあるLANにデータ通信接続を提供するローカルエリアネットワーク(LAN)カードであってもよい。無線リンクも実装されてもよい。このような実装のいずれにおいても、通信インターフェース618は、様々なタイプの情報を表すデジタルデータストリームを伝送する電気信号、電磁信号、または光信号を送受信する。
【0063】
ネットワークリンク620は、通常、他のデータ装置に対して、1つ以上のネットワークを介したデータ通信を提供する。例えば、ネットワークリンク620は、ローカルネットワーク622を介して、ホストコンピュータ624またはインターネットサービスプロバイダ(ISP)626が運用するデータ装置への接続を提供する。ISP626は、現在一般的にインターネット628と呼ばれる世界的なパケットデータ通信ネットワークを通じてデータ通信サービスを提供する。ローカルネットワーク622およびインターネット628は、いずれもデジタルデータストリームを伝送する電気、電磁気、または光信号を使用する。コンピュータシステム600との間でデジタルデータを送受信する、各種ネットワークを介した信号、およびネットワークリンク620を介した信号、通信インターフェース618を介した信号は、伝送媒体の一形態である。
【0064】
コンピュータシステム600は、ネットワーク(複数可)、ネットワークリンク620、および通信インターフェース618を介して、メッセージを送信し、プログラムコードを含むデータを取得することができる。インターネットの例では、サーバー630が、インターネット628、ISP626、ローカルネットワーク622、および通信インターフェース618を介して、アプリケーションプログラム用の要求されたコードを送信することがある。受信したコードは、プロセッサ604によって実行され、また、ストレージデバイス610または他の不揮発性ストレージに保存され、後で実行される場合がある。
【0065】
上記の説明は例示的なものにすぎず、当業者であれば、開示された発明の範囲から逸脱することなく、説明された実施形態に変更を加えることができることを認識するであろう。当業者であれば、本開示の検討により、本発明の範囲内である修正が明らかになるであろう。このような修正は、添付の特許請求の範囲に含まれることを意図している。本明細書に記載されたシステムは、本明細書に記載された特定の実施形態に限定されるものではなく、むしろ様々なシステムの一部分は、本明細書に記載された他のシステムから独立して個別に利用されてもよい。
【0066】
図面によっては、本願発明の様々な実施形態の特定の特徴が示されている場合もあれば、示されていない場合もあるが、これは便宜上の理由によるものである。さらに、上述の説明における「一実施形態」という表現は、記載された特徴を組み込んだ追加の実施形態の存在を排除するものと解釈されることを意図したものではない。本願発明の原則に従い、図面の任意の特徴は、他の図面の任意の特徴と組み合わせて参照および/または請求される場合がある。
【0067】
本発明のさらなる側面は、以下の条項の主題によって提供される。
[実施形態1]
少なくとも2つの異なる座標測定システムから得られた座標フレームを整列させる方法(A method of aligning coordinate frames obtained from at least two different coordinate measurement systems)であって、(i)第2のシステムに位置決めされたコンポーネントの第2の座標フレームおよび第2のパーツ座標系を初期化する工程(initializing a second coordinate frame and a second part coordinate system of a component positioned in a second system)、(ii)前記第2のシステムに関連する第2のデータ点セットを生成する工程であって、前記第2のデータ点セットは、前記第2のパーツ座標系に関連する前記コンポーネント上で識別された複数の制御点の空間測定データを含む、前記工程(generating a second data pointset associated with the second system, wherein the second data pointset includes spatial measurement data of a plurality of control points identified on the component relative to the second part coordinate system)と、(iii)第1のシステムに関連する第1のデータ点セットを受ける工程であって、前記第1のデータ点セットは、前記コンポーネントが前記第1のシステムに位置決めされたときに、前記第1のシステムに関連する第1のパーツ座標系に対して前記コンポーネント上で特定された複数の制御点の空間測定データを含む、前記工程(receiving a first data pointset associated with a first system, wherein the first data pointset includes spatial measurement data of the plurality of control points identified on the component relative to a first part coordinate system associated with the first system when the component is positioned in the first system)と、(iv)前記第2のパーツ座標系と前記第1のパーツ座標系との間の角度オフセットおよび並進オフセットの少なくとも一方を推定することにより、前記第2のパーツ座標系と前記第1のパーツ座標系とのアライメントを決定する工程(determining an alignment of the second part coordinate system with the first part coordinate system by estimating at least one of an angular offset and a translational offset between the second part coordinate system and the first part coordinate system)と、(v)前記決定されたアライメントが前記第2のパーツ座標系と前記第1のパーツ座標系とのアライメントなしを示している場合(if the determined alignment indicates no alignment of the second part coordinate system with the first part coordinate system)、次に、(a)前記第2のシステムに位置付けられた前記コンポーネントに、角度回転および並進変位のうち少なくとも1つを適用する工程(applying at least one of an angular rotation and a translational displacement to the component positioned in the second system)と、(b)前記第2のシステムが前記第1のシステムと整列するまで、前記第2のシステムと前記第1のシステムとの前記アライメントを決定し、前記角度回転および前記並進変位のうち少なくとも1つを適用することを繰り返す工程(repeating the determining the alignment of the second part coordinate system with the first part coordinate system and the applying at least one of the angular rotation and the translational displacement until the second part coordinate system is aligned with the first part coordinate system)と、を含む、方法。
[実施形態2]
前記第2のパーツ座標系を初期化することが、1つ以上の仮想データムを定義するための少なくとも6つの制御点を使用して前記第2のパーツ座標系を初期化することをさらに含む(initializing the second part coordinate system further comprises initializing the second part coordinate system using at least 6 control points for defining one or more virtual datums)、先行するいずれかの実施形態に記載の座標フレームの整合方法。
[実施形態3]
前記角度オフセットを推定することが、反復最小二乗アルゴリズムを使用して前記角度オフセットを推定することを含む(estimating the angular offset comprises estimating the angular offset using an iterative least squares algorithm)、先行するいずれかの実施形態に記載の座標フレームの整合方法。
[実施形態4]
前記反復最小二乗法を使用して前記角度オフセットを推定することが、前記第2のパーツ座標系の仮想データムに関連する単位法線ベクトルの方向を反復的に更新することを含む(estimating the angular offset using the iterative least squares method comprises iteratively updating a direction of a unit normal vector associated with a virtual datum of the second part coordinate system)、先行するいずれかの実施形態に記載の座標フレームの整合方法。
[実施形態5]
前記角度オフセットを推定することは、グラムシュミット直交化プロセスおよび連鎖回転方程式を使用して結果変換行列を推定することを含む(estimating the angular offset comprises estimating a resultant transformation matrix using a Gram-Schmidt orthogonalization process and chained-rotation equations)、先行するいずれかの実施形態に記載の座標フレームの整合方法。
[実施形態6]
前記並進オフセットを推定することは、加重最小二乗アルゴリズムを使用して前記並進オフセットを推定することを含む(estimating the translational offset comprises estimating the translational offset using a weighted least squares algorithm)、先行するいずれかの実施形態に記載の座標フレームの整合方法。
[実施形態7]
前記コンポーネント上で特定された前記複数の制御点が、一次仮想データムに対応する前記複数の制御点の制御点の第1のサブセット、二次仮想データムに対応する前記複数の制御点の制御点の第2のサブセット、および三次仮想データムに対応する前記複数の制御点の制御点の第3のサブセットを含む(the plurality of control points identified on the component includes a first subset of control points of the plurality of control points corresponding to a primary virtual datum, a second subset of control points of the plurality of control points corresponding to a secondary virtual datum, and a third subset of control points of the plurality of control points corresponding to a tertiary virtual datum)、先行するいずれかの実施形態に記載の座標フレームの整合方法。
[実施形態8]
前記第2のシステムがコンピュータ数値制御(CNC)機械を含み(the second system includes a computerized numerical control (CNC) machine)、前記第1のシステムが座標測定機(CMM)を含む(the first system includes a coordinate measurement machine (CMM))、先行するいずれかの実施形態に記載の座標フレームの整合方法。
[実施形態9]
前記角度オフセットを推定することは、前記第1のパーツ座標系および前記第2のパーツ座標系の前記複数の制御点のそれぞれの重心を通る少なくとも1つの一次仮想データムおよび1つの二次仮想データムに対応する前記角度オフセットを推定することを含む(estimating the angular offset comprises estimating the angular offset corresponding to at least a primary virtual datum and a secondary virtual datum passing through a respective centroid of the plurality of control points of the first part coordinate system and the second part coordinate system)、先行するいずれかの実施形態に記載の座標フレームの整合方法。
[実施形態10]
前記並進オフセットを推定することは、前記第2のパーツ座標系の任意の軸に沿った前記並進オフセットを推定することを含む(estimating the translational offset comprises estimating the translational offset along any axis of the second part coordinate system)、先行するいずれかの実施形態に記載の座標フレームの整合方法。
[実施形態11]
少なくとも2つの異なる座標測定サブシステムから得られた座標フレームを整合させるためのシステムであって、命令を保存するように構成された少なくとも1つのメモリと、保存された前記命令を実行するようにプログラムされた少なくとも1つのプロセッサと、を含み、前記命令は前記システムに(i)第2の座標フレームおよび第2のシステムに位置決めされたコンポーネントの第2のパーツ座標系を初期化するステップと、(ii)前記コンポーネント上で識別され、前記第2のパーツ座標系に対して相対的な複数の制御点の空間測定データを含む第2のデータ点セットを生成するステップと、(iii)前記第2のシステムに関連する第1のデータ点セットを受けるステップであって、前記第1のデータ点セットは、前記コンポーネントが前記第1のシステムに位置決めされたときに、第1のシステムに関連する第1のパーツ座標系に対して前記コンポーネント上で特定された複数の制御点の空間測定データを含む、前記ステップと、(iv)前記第2のパーツ座標系と前記第1のパーツ座標系との間の角度オフセットおよび並進オフセットの少なくとも一方を推定することにより、前記第2のパーツ座標系と前記第1のパーツ座標系とのアライメントを決定するステップと、(v)決定された前記アライメントが前記第2のパーツ座標系と前記第1のパーツ座標系との位置合わせを示さない場合、(a)前記コンポーネントに角度回転または並進変位の少なくとも一方を適用するステップと、(b)前記第2のパーツ座標系と前記第1のパーツ座標系との前記アライメントの決定と、前記角度回転または前記並進変位の少なくとも一方の適用とを、前記第2のパーツ座標系が前記第1のパーツ座標系とアライメントするまで繰り返すステップと、を実行させる、システム。
[実施形態12]
前記第1のパーツ座標系または前記第2のパーツ座標系は、1つまたは複数の仮想データムを定義するための少なくとも6つの制御点を含む、先行するいずれかの実施形態に記載のシステム。
[実施形態13]
前記角度オフセットは反復最小二乗アルゴリズムを使用して推定される、先行するいずれかの実施形態に記載のシステム。
[実施形態14]
前記反復最小二乗法による前記角度オフセットは、前記第2のパーツ座標系の仮想データムに関連する単位法線ベクトルの方向を反復的に更新することにより推定される、先行するいずれかの実施形態に記載のシステム。
[実施形態15]
前記角度オフセットは、グラムシュミット直交化プロセスおよび連鎖回転方程式を使用して結果変換行列を推定することにより取得される、先行するいずれかの実施形態に記載のシステム。
[実施形態16]
前記並進オフセットは、加重最小二乗アルゴリズムを使用して推定される、先行するいずれかの実施形態に記載のシステム。
[実施形態17]
前記コンポーネント上で特定される複数の制御点が、一次仮想データムに対応する複数の制御点の制御点の第1のサブセット、二次仮想データムに対応する複数の制御点の制御点の第2のサブセット、および三次仮想データムに対応する複数の制御点の制御点の第3のサブセットを含む、先行するいずれかの実施形態に記載のシステム。
[実施形態18]
前記第2のシステムは数値制御(CNC)機械であり、前記第1のシステムは座標測定機(CMM)である、先行するいずれかの実施形態に記載のシステム。
[実施形態19]
前記角度オフセットは、前記第1のパーツ座標系および前記第2のパーツ座標系の複数の制御点のそれぞれの重心を通る少なくとも一次仮想データムおよび二次仮想データムに対応する角度オフセットである、先行するいずれかの実施形態に記載のシステム。
[実施形態20]
前記並進オフセットは、前記第2のパーツ座標系の任意の軸に沿った並進オフセットである、先行するいずれかの実施形態に記載のシステム。
【0068】
様々な具体的な実施形態に関して本発明を説明してきたが、当業者であれば、特許請求の範囲の精神と範囲内で、本発明を修正して実施できることを認識するであろう。
【符号の説明】
【0069】
102:コンポーネント 104a-104h:制御点 106:一次仮想データム平面/一次データム平面 108:二次仮想データム平面/二次データム平面 202:第1のシステム 204:初期化/較正 206:パーツ座標系 208:測定データ 210:第2のシステム 212:初期化/較正 214:パーツ座標系 216:位置合わせ/アライメント 218:修理作業 600:コンピュータシステム 602:バス 604:ハードウェアプロセッサ 606:主記憶装置 608:リードオンリーメモリ(ROM) 610:記憶装置 612:ディスプレイ 614:入力装置 616:カーソル制御装置 618:通信インターフェース 620:ネットワークリンク 622:ローカルネットワーク 624:ホストコンピュータ 626:インターネットサービスプロバイダ(ISP) 628:インターネット 630:サーバ
【外国語明細書】