IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ ヘキサゴン メトロロジー,インコーポレイテッドの特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-07
(45)【発行日】2024-06-17
(54)【発明の名称】バッチ生産のための自動検査プロセス
(51)【国際特許分類】
   G01B 5/008 20060101AFI20240610BHJP
   G01B 5/02 20060101ALI20240610BHJP
   G01B 5/28 20060101ALI20240610BHJP
   G05B 19/418 20060101ALI20240610BHJP
【FI】
G01B5/008
G01B5/02
G01B5/28 102
G05B19/418 B
【請求項の数】 6
(21)【出願番号】P 2021566116
(86)(22)【出願日】2020-05-07
(65)【公表番号】
(43)【公表日】2022-07-06
(86)【国際出願番号】 US2020031900
(87)【国際公開番号】W WO2020227547
(87)【国際公開日】2020-11-12
【審査請求日】2023-04-07
(31)【優先権主張番号】62/844,160
(32)【優先日】2019-05-07
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/868,800
(32)【優先日】2020-05-07
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/844,162
(32)【優先日】2019-05-07
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】509287304
【氏名又は名称】ヘキサゴン メトロロジー,インコーポレイテッド
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【弁理士】
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【弁理士】
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】ジョナサン ジェー. オヘア
(72)【発明者】
【氏名】ジョナサン ダヴ
(72)【発明者】
【氏名】ジョゼフ ヴァンペルト
【審査官】山▲崎▼ 和子
(56)【参考文献】
【文献】特開昭60-035210(JP,A)
【文献】米国特許出願公開第2019/0101889(US,A1)
【文献】登録実用新案第3141561(JP,U)
【文献】特表2015-514205(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01B 5/00-5/30
G01B 21/00-21/32
G05B 19/418
(57)【特許請求の範囲】
【請求項1】
バッチ検査システムを動作させる方法であって、
前記バッチ検査システムは、
制御コンピュータと、
CMM座標系を有する座標測定器を含む検査機器と、
前記CMM座標系から独立した座標系を有する貯蔵システムと、
ロボットの座標系を有するロボットと、
を備え、
前記貯蔵システムは貯蔵コンテナを有し、前記貯蔵コンテナは、2次元座標系を定義する表面を有し、かつ、前記2次元座標系における前記コンテナの向きを集合的に定義する物理的な参照特徴部のセットを含み、
前記方法は、
前記ロボットにより前記物理的な参照特徴部のそれぞれを順次に位置特定し、前記物理的な参照特徴部のそれぞれの、前記ロボットの3次元座標系における座標を、前記制御コンピュータに記録することにより、前記コンテナの前記2次元座標系を前記ロボットの前記3次元座標系に方向決めするステップと、
前記検査システムにジョブオブジェクトを提供するステップであって、前記ジョブオブジェクトは、前記ロボットが貯蔵情報を使用して前記貯蔵システムから各ワークピースを取り出すことができるように、前記貯蔵システム内のワークピースのセットの場所を定義する貯蔵場所情報を含む、ステップと、
前記ロボットにより、前記検査システムによって検査されるべき前記ワークピースのセットを提供するステップであって、前記ワークピースのセットは、
前記検査システムの前記検査機器による第1の検査オペレーションのセットを必要とする第1のワークピースと、
前記検査システムの前記検査機器による第2の検査オペレーションのセットを必要とする第2のワークピースと、
を含み、
前記第2のワークピースは、前記第1のワークピースと同一ではなく、前記第2の検査オペレーションのセットは、前記第1の検査オペレーションのセットと同一ではない、
ステップと、
前記制御コンピュータにより、前記第1のワークピースのために、前記第1の検査オペレーションのセットのインスタンス(第1のインスタンス)をインスタンス化するステップと、
前記ロボットにより、前記第1のワークピースを前記検査システムに自動的に提供するステップと、
前記検査機器により、前記第1のインスタンスに従って前記第1のワークピースに対して前記第1の検査オペレーションのセットを実行するステップと、その後、
前記制御コンピュータにより、前記第2のワークピースのために、前記第2の検査オペレーションのセットのインスタンス(第2のインスタンス)をインスタンス化するステップと、
前記第1のワークピースの後、介在するワークピースを前記検査システムに提供することなく、前記ロボットにより前記第2のワークピースを前記検査システムに同時にかつ自動的に提供するステップと、
前記検査機器により、前記第2のインスタンスに従って前記第2のワークピースに対して前記第2の検査オペレーションのセットを実行するステップと、
を含む、方法。
【請求項2】
前記バッチ検査システムは、複数のジョブオブジェクトを格納するデータベースをさらに備え、
前記複数のジョブオブジェクトのうちのそれぞれのジョブオブジェクトは、前記第1の検査オペレーションのセットおよび前記第2の検査オペレーションのセットを含み、
当該方法は、前記制御コンピュータにより、前記第1のワークピースに合わせて製作された第1の検査オペレーションのセットと、前記第2のワークピースに合わせて製作された第2の検査オペレーションのセットとを有する前記ジョブオブジェクトを、前記データベースから検索するステップをさらに含む、
請求項1記載の方法。
【請求項3】
前記第1のワークピースを前記検査機器に自動的に提供するステップは、前記第1のワークピースを前記座標測定器に自動的に提供するステップを含み、
前記第1のインスタンスに従って前記第1のワークピースに対して前記第1の検査オペレーションのセットを実行するステップは、前記第1のワークピースを測定するために前記第1のインスタンスに従って前記座標測定器を動作させるステップを含む、
請求項1記載の方法。
【請求項4】
前記第1の検査オペレーションのセットは、前記第1のワークピースの物理的な寸法を測定するためのオペレーションのセットを含む、請求項1記載の方法。
【請求項5】
前記第1の検査オペレーションのセットは、前記第1のワークピースの表面粗さを測定するためのオペレーションのセットを含む、請求項1記載の方法。
【請求項6】
前記第2の検査オペレーションのセットは、前記座標測定器によって別のプローブを自動的に取得するステップを含む、請求項1記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願
本願は、2019年5月7日に出願された“Systems and Methods for Scheduling and Monitoring an Automated Inspection Process for Batch Production”なる表題の、発明者としてJonathan J. O’Hare[代理人整理番号第37401-17001号]を指名する米国仮特許出願第62/844,160号の優先権を主張し、また、2019年5月7日に出願された“Graphical User Interface for Scheduling and Monitoring and Automated Inspection Process for Batch Production”なる表題の、発明者としてJonathan J.O’Hare[代理人整理番号第37401-17101号]を指名する米国仮特許出願第62/844,162号の優先権を主張する。
【0002】
本願は、2020年5月7日に出願された“Graphical User Interface for Scheduling and Monitoring an Automated Inspection Process for Batch Production”なる表題の、発明者としてJ. O’HareおよびJonathan Dove[代理人整理番号第37401-17103号]を指名する米国非仮特許出願第16/868,800号の優先権を主張する。
【0003】
前述の全ての開示の全内容を、参照により本明細書に援用するものとする。
【0004】
発明の分野
例示的な実施形態は、一般に、製造に関し、より具体的には、バッチ生産方法に関する。
【0005】
発明の背景
座標測定器(coordinate measuring machines;CMM)は、多種異なる種類の物理的なオブジェクト/ワークピースを正確に測定するためのゴールドスタンダードである。例えば、CMMは、航空機エンジンコンポーネント(例えば、ジェットエンジンブレード)、手術器具、およびタービンブレードの重要な寸法を測定することができる。精確かつ正確な測定は、航空機コンポーネントの場合における航空機のようなそれぞれの基盤となるシステムが、指定されたように動作することを保証するのに役立つ。
【0006】
CMMは、多くの場合、比較的単純な幾何形状を有するオブジェクトを迅速かつ効率的に測定する。例えば、CMMプローブ(すなわち、CMMのうちの、測定データを直接的に収集する部分)は、典型的に、所望の情報を収集するためにタービンブレードの表面にわたって比較的高速で移動することができる。このような場合には、タービンブレードを測定するための時間を、タービンブレードを製造するための時間よりも大幅に短縮することが可能である。
【0007】
CMMは、非常に用途の広い資産であるが、オペレーションのためには多数のオペレータ入力を必要とする。熟練したオペレータは、CMMを使用して、様々なワークピースを測定することができる。
【0008】
歴史的に、CMMは、品質研究室に設置されており、測定タスクを実行するためにオペレータに大きく依存してきた。しかしながら、CMMがオペレータに大きく依存していることにより、CMMオペレーションの自動化は困難であることが判明している。
【0009】
また、測定ルーチンがロードされた後に単一のワークピースを自動的に測定する、CMMを超えたオペレーションを含む、完全に自動化された検査プロセスを実装することも非常にコストがかかる。
【0010】
その結果、量産型の環境において見られるCMMは、歴史的に、ハードコーディングされていて、特定の測定オペレーションのために高度に専用化されている。具体的には、そのようなCMMは、自身が測定するそれぞれのワークピースに対して同じオペレーションを反復するように構成されている。
【0011】
バッチ生産とは、製造者が市場の需要の変化に対してより柔軟に対応することができるように、複数の製品のバッチまたは同様の製品のバリエーションが作成される手法である。バッチ生産は、ほんの数例を挙げると、自動車産業および航空宇宙産業のような多くの産業における多くの一次および二次サプライヤにとって典型的である。これらのサプライヤは、改善のために継続的に変更される同様の製品のバリエーションを要求する複数の顧客を有することが一般的である。これらのサプライヤがこのような変動的な環境において競争力を維持することができる唯一の方法は、各自の製造プロセスを迅速に適合させることができるようにすることである。しかしながら、柔軟性をより高めるためにこれらの迅速なプロセス変更を行うための能力は、通常、動作効率を犠牲にすることとなる。その結果、CMMは、歴史的にバッチ生産に適していなかったのである。
【0012】
最も基本的なレベルでは、材料の運搬または「パーツテンディング」は、バッチ生産環境における大幅な改善である。バッチ生産の効率のいくつかの低下は、単に、バッチ変更間での機械のダウンタイムが原因である。ダウンタイムは、(1)複数の異なるバッチの部品のためのサイクル時間、および(2)切り替え時間(これら複数の異なる部品に対応するために工具および/またはワーク保持装置を変更可能な速度)を含む要因に帰する可能性がある。ここが、ロボットと共に使用される新しいインテリジェントソフトウェアが大きな影響を与える可能性があるところである。
【0013】
他の殆どの自動製造プロセスと同様に、自動検査プロセスの効率は、変動する部品サイクル時間と、バッチ間の切り替え時間との両方によって大きく影響される。例えば、CMMを伴う自動検査プロセスは、典型的に、複数の異なる部品バッチ間において固定具のセットアップ、プローブセンサ工具、および検査ソフトウェアルーチンを変更することを必要とする。これらの変更は、典型的に、オペレータによって手動で実施される。また、自動検査のためにセットアップされている複数の異なる部品バッチが、それぞれ大幅に異なるサイクルタイムを有していることも典型的である。この結果、バッチの合計サイクルタイムに一貫性がなくなるので、オペレータは、CMMにおいていつセットアップを変更すべきかを効果的に計画することが不可能となる。これに該当する製造環境では、一般的な解決策は、オペレータに、CMMでの検査プロセスを継続的に監視させるか、または生産を柔軟に見て回って検査プロセスのためのダウンタイムを予測させることである。
【0014】
当業界では、より柔軟になること、すなわち「柔軟な製造」が求められている。より競争力を高めるために、多くの中小企業は、如何なるときでも需要のあるものだけを供給するために、種々異なる製品の短期間での生産運転を追求してきた。その結果、多くの中小企業は、これに対処するために機械類のセットアップを頻繁に変更することとなるが、CMMは、オペレーションが比較的複雑であり、測定を実行するためには総製造サイクル時間のうちのかなりの時間がかかるので、ボトルネックになってしまう。
【0015】
種々の実施形態の概要
例示的な実施形態は、複数のワークピースのバッチのそれぞれのワークピースのバッチ検査ジョブを実行するために、検査システムの複数の装置の行動同士を調整する。この目的のために、例示的な実施形態は、ジョブオブジェクトを検査システムに提供する。座標測定器のための測定ルーチン、またはロボットのためのプログラムとは異なり、ジョブオブジェクトは、検査システム内の複数の装置が、複数のワークピース(またはバッチ)のうちのそれぞれのワークピースを順次に検査するために一緒に動作するように、これらの複数の装置の行動同士を構成および調整するために使用される。ジョブオブジェクトのいくつかの実施形態は、ロボットのオペレーションを座標測定器のオペレーションと調整して、複数のオブジェクトを、これらのオブジェクトが相互に同一である場合に、順次検査する。ジョブオブジェクトのいくつかの実施形態は、ロボットのオペレーションを座標測定器のオペレーションと調整して、複数のオブジェクトを、これらのオブジェクトが相互に同一でなく、したがってロボットまたは座標測定器またはその両方の行動がオブジェクトごとに変化するような場合に、順次検査する。
【0016】
一実施形態によれば、バッチ検査システムを動作させるコンピュータ実装方法は、検査システムによって検査されるべきワークピースのセットを提供することを含む。ワークピースのセットは、検査システムの検査機器による第1の検査オペレーションのセットを必要とする第1のワークピースと、検査システムの検査機器による第2の検査オペレーションのセットを必要とする第2のワークピースとを含み、第2のワークピースは、第1のワークピースと同一ではなく、第2のオペレーションのセットは、第1のオペレーションのセットと同一ではない。
【0017】
当該方法は、第1のワークピースのために、第1の検査オペレーションのセットのインスタンス(第1のインスタンス)をインスタンス化することも含み、当該方法は、第1のワークピースを検査システムに自動的に提供することと、第1のインスタンスに従って第1のワークピースに対して第1の検査オペレーションのセットを実行することも含む。
【0018】
その後、当該方法は、第2のワークピースのために、第2の検査オペレーションのセットのインスタンス(第2のインスタンス)をインスタンス化することも含み、当該方法は、第1のワークピースの後、介在するワークピースを検査システムに提供することなく第2のワークピースを検査システムに同時にかつ自動的に提供することと、第2のインスタンスに従って第2のワークピースに対して第2の検査オペレーションのセットを実行することも含む。いくつかの実施形態では、第1の検査オペレーションのセットは、第1のワークピースの物理的な寸法を測定するためのオペレーションのセットを含む。いくつかの実施形態では、第1の検査オペレーションのセットは、第1のワークピースの表面粗さを測定するためのオペレーションのセットを含む。
【0019】
いくつかの実施形態は、複数のジョブオブジェクトを格納するデータベースを提供することも含み、複数のジョブオブジェクトのうちのそれぞれのジョブオブジェクトは、第1の検査オペレーションのセットおよび第2の検査オペレーションのセットを含む。そのような実施形態では、当該方法は、第1のオブジェクトに合わせて製作された第1の検査オペレーションのセットと、第2のオブジェクトに合わせて製作された第2の検査オペレーションのセットとを有するジョブオブジェクトを、データベースから取得することも含む。
【0020】
例示的な実施形態では、検査機器は、座標測定器を含む。そのような実施形態では、第1のワークピースを検査機器に自動的に提供することは、第1のワークピースを座標測定器に自動的に提供することを含み、第1のインスタンスに従って第1のワークピースに対して第1の検査オペレーションのセットを実行することは、第1のワークピースを測定するために第1のインスタンスに従って座標測定器を動作させることを含む。
【0021】
例示的な実施形態では、検査機器は、座標測定器を含み、第2の検査オペレーションのセットは、座標測定器によって別のプローブを自動的に取得することを含む。
【0022】
別の実施形態は、検査装置と、一時保管装置と、ディスプレイ装置を備えるコントローラとを有するバッチ検査システムを構成する方法に関する。当該方法は、レイアウトマネージャを含むグラフィカルユーザインターフェースを、ディスプレイ装置上に表示することを含み、グラフィカルユーザインターフェースは、対応する物理的なコンテナを表現しているグラフィカルなコンテナであって、かつ対応する物理的なコンテナ内の対応する場所を精確に表現するための精確なグリッド場所のグリッドパターンを有するグラフィカルなコンテナと、アイコンのセットを表示するレイアウト領域とを含み、アイコンのセット内のそれぞれのアイコンは、(a)バッチ検査システムによって検査されるべきワークピース、または(b)バッチ検査システムによって検査されるべきワークピースのセットを保持するパレット、のうちの一方をグラフィカルに表現している。
【0023】
当該方法は、バッチジョブデータオブジェクトを定義することも含む。バッチジョブデータオブジェクトを定義することは、レイアウト領域からアイコンのセットのうちのそれぞれのアイコンを選択し、それぞれのそのようなアイコンをグラフィカルなコンテナのそれぞれの精確なグリッド場所に配置するための配置入力を、グラフィカルユーザインターフェースを介してオペレータから受信することを含み、前述のそれぞれの精確なグリッド場所は、一時保管装置内での、それぞれのグリッド場所に対応するワークピースまたは固定具の物理的な場所を表現している。
【0024】
当該方法は、検査システムによる実行のために、バッチジョブデータオブジェクトを検査システムに提供することも含み、当該方法は、バッチジョブデータオブジェクトに従って複数のワークピースのうちのそれぞれのワークピースを検査するためのバッチジョブを、検査システムに実行させることも含む。
【0025】
いくつかの実施形態では、当該方法は、部品プログラムのセットの仕様をオペレータから受信してバッチジョブデータオブジェクト内に格納するための部品プログラム入力フィールドを、ディスプレイ装置上に表示することをさらに含み、部品プログラムのセット内のそれぞれの部品プログラムは、複数のワークピースからのそれぞれのワークピースに対応し、当該方法は、部品プログラム入力フィールドを介して部品プログラムのセットの仕様を受信することと、前述の仕様をバッチジョブデータオブジェクト内に格納することとをさらに含む。
【0026】
いくつかの実施形態では、複数のワークピースのうちのそれぞれのワークピースは、当該複数のワークピース内のそれぞれ他のワークピースとは異なる種類のワークピースである。そのような実施形態では、部品プログラムのセット内のそれぞれの部品プログラムは、当該部品プログラムのセット内のそれぞれ他の部品プログラムとは異なっており、したがって、検査システムは、複数のワークピースのうちのそれぞれのワークピースの種類にそれぞれ対応する別個の検査オペレーションのセットを実行する。
【0027】
当該方法のいくつかの実施形態は、データ入力フィールドのセットをディスプレイ装置上に表示することをも含み、データ入力フィールドのセット内のそれぞれのデータ入力フィールドは、それぞれのジョブデータの仕様を受信するように構成されており、データ入力フィールドのセットは、オペレータ名と、部品シリアル番号のセットであって、当該部品シリアル番号のセット内のそれぞれの部品シリアル番号は、複数のワークピースのうちのそれぞれのワークピースにそれぞれ対応する、部品シリアル番号のセットと、部品重量のセットであって、当該部品重量のセット内のそれぞれの部品重量は、複数のワークピースのうちのそれぞれのワークピースにそれぞれ対応する、部品重量のセットと、グリッパ幅のセットであって、当該グリッパ幅のセット内のそれぞれのグリッパ幅は、複数のワークピースのうちのそれぞれのワークピースにそれぞれ対応する、グリッパ幅のセットと、グリッドサイズまたはセルの番号のうちの少なくとも1つと、コンテナのための参照系とを含む、部品コンテナの仕様と、のうちの少なくとも1つまたは複数を含む。
【0028】
さらに別の実施形態は、複数のワークピースを有するバッチを検査するためのバッチジョブを実行するためのバッチ検査システムである。当該システムは、測定空間を有する座標測定器と、座標測定器によって検査されるべきワークピースのバッチを貯蔵するための貯蔵装置と、ワークピースのバッチのうちのそれぞれのワークピースを貯蔵装置から順次取り出すように、かつそれぞれのそのようなワークピースを座標測定器の測定空間に送達するように構成されたロボットと、ディスプレイを有する制御コンピュータとを含み、制御コンピュータは、座標測定器およびロボットと制御通信しており、制御コンピュータは、実行されるとユーザインターフェースのディスプレイ装置上に表示を引き起こす命令を実行するように構成されている。ユーザインターフェースは、グラフィカルユーザインターフェースを含み、グラフィカルユーザインターフェースは、対応する物理的なコンテナを表現しているグラフィカルなコンテナであって、かつ対応する物理的なコンテナ内の対応する物理的な場所を精確に表現するためのグラフィカルな場所を有するグラフィカルなコンテナと、アイコンのセットを表示するレイアウト領域とを含み、アイコンのセット内のそれぞれのアイコンは、(a)バッチ検査システムによって検査されるべきワークピース、または(b)バッチ検査システムによって検査されるべきワークピースのセットを保持するパレット、のうちの一方をグラフィカルに表現している。
【0029】
そのようなシステムでは、制御コンピュータは、バッチ内の複数のワークピースの各々を検査するように座標測定器およびロボットを構成するためのバッチジョブデータオブジェクトを定義するオペレータ入力を、グラフィカルユーザインターフェースを介して受信し、バッチジョブデータオブジェクト内に格納するようにさらに構成されている。
【0030】
いくつかの実施形態では、制御コンピュータは、座標測定器およびロボットによってバッチジョブデータオブジェクトに従ってバッチジョブを実行するために、バッチジョブデータオブジェクトを座標測定器およびロボットに提供するようにさらに構成されている。
【0031】
いくつかの実施形態では、制御コンピュータは、バッチジョブの実行を制御するための制御入力を、オペレータから受信するようにさらに構成されている。
【0032】
いくつかの実施形態では、グラフィカルユーザインターフェースは、レイアウト領域からアイコンを選択するための入力を、オペレータから受信し、そのアイコンに対応するワークピースの、貯蔵装置内での場所を精確に示すために、そのアイコンをグラフィカルなコンテナ内に配置するように構成されている。
【0033】
いくつかの実施形態では、グラフィカルユーザインターフェースは、レイアウト領域から複数のアイコンのうちのそれぞれのアイコンを選択するための入力を、オペレータから受信し、対応するワークピースの、貯蔵装置内での場所を精確に示すために、それぞれのそのようなアイコンをグラフィカルなコンテナ内に配置するように構成されている。
【0034】
いくつかの実施形態では、コンテナは、所定の方向決め点を含み、グラフィカルユーザインターフェースは、方向決め点を使用してグラフィカルなコンテナをコンテナに対して方向決めするための入力を、オペレータから受信するように構成されている。
【0035】
いくつかの実施形態では、コンテナは、所定の方向決め点を含み、グラフィカルなコンテナは、基準点のセットを含み、基準点のセット内のそれぞれの基準点は、コンテナ上の方向決め点のうちの1つに対応し、グラフィカルユーザインターフェースは、グラフィカルなコンテナをコンテナに対して方向決めするための入力を、オペレータおよびロボットから受信するように構成されている。
【0036】
ユーザインターフェースのいくつかの実施形態は、部品プログラムのセットの仕様をオペレータから受信してバッチジョブデータオブジェクト内に格納するための部品プログラム入力フィールドをさらに含み、部品プログラムのセット内のそれぞれの部品プログラムは、複数のワークピースからのそれぞれのワークピースに対応する。
【0037】
ユーザインターフェースのいくつかの実施形態は、データ入力フィールドのセットも含み、データ入力フィールドのセット内のそれぞれのデータ入力フィールドは、それぞれのジョブデータの仕様を受信するように構成されており、データ入力フィールドのセットは、オペレータ名と、部品シリアル番号のセットであって、当該部品シリアル番号のセット内のそれぞれの部品シリアル番号は、複数のワークピースのうちのそれぞれのワークピースにそれぞれ対応する、部品シリアル番号のセットと、グリッドサイズまたはセルの番号のうちの少なくとも1つと、コンテナのための参照系とを含む、部品コンテナの仕様と、のうちの少なくとも1つまたは複数を含む。
【0038】
ユーザインターフェースのいくつかの実施形態は、データ入力フィールドのセットも含み、データ入力フィールドのセット内のそれぞれのデータ入力フィールドは、それぞれのジョブデータの仕様を受信するように構成されており、データ入力フィールドのセットは、部品重量のセットであって、当該部品重量のセット内のそれぞれの部品重量は、複数のワークピースのうちのそれぞれのワークピースにそれぞれ対応する、部品重量のセットと、グリッパ幅のセットであって、当該グリッパ幅のセット内のそれぞれのグリッパ幅は、複数のワークピースのうちのそれぞれのワークピースにそれぞれ対応する、グリッパ幅のセットと、のうちの少なくとも1つまたは複数を含む。
【0039】
種々の実施形態は、連続的な自動プロセスのためにワークピースのバリエーションを管理するために、テンプレートのデータベースを使用するシステムおよび方法を含む。
【0040】
図面の簡単な説明
当業者は、真下に要約されている図面を参照しながら論じられる以下の「例示的な実施形態の説明」から、本発明の種々の実施形態の利点をより完全に理解すべきである。
【図面の簡単な説明】
【0041】
図1A】少なくとも1つの検査機器を含むワークピース処理システムの実施形態を概略的に示す図である。
図1B】座標測定器の実施形態を概略的に示す図である。
図1C】ワークピースの実施形態を概略的に示す図である。
図1D】座標測定器のための制御システムの実施形態を示す図である。
図1E】座標測定器のための手動ユーザインターフェースの実施形態を概略的に示す図である。
図1F】中央コンピュータの実施形態を概略的に示す図である。
図2A】ワークピース保持装置の実施形態を概略的に示す図である。
図2B】ワークピース保持装置の実施形態を概略的に示す図である。
図2C】パレットの実施形態を概略的に示す図である。
図3】ワークピース配置ロボットの実施形態を概略的に示す図である。
図4A】データ構造の実施形態を概略的に示す図である。
図4B】ジョブオブジェクトの実施形態を概略的に示す図である。
図5A】事前定義されたデータオブジェクトの実施形態を概略的に示す図である。
図5B】ジョブデータオブジェクトの実施形態を概略的に示す図である。
図5C】データオブジェクトおよびジョブオブジェクトを定義するためのユーザインターフェースを概略的に示す図である。
図6A】ジョブ定義インターフェースの実施形態を概略的に示す図である。
図6B】新しいオブジェクトを追加するためのユーザインターフェースの実施形態を概略的に示す図である。
図6C】引き出し定義インターフェースの実施形態を概略的に示す図である。
図6D】引き出し定義インターフェースの実施形態を概略的に示す図である。
図6E】引き出し定義インターフェースの実施形態を概略的に示す図である。
図7A】ジョブ追跡インターフェースの実施形態を概略的に示す図である。
図7B】バッチ検査ジョブを監視および制御するためのグラフィカルユーザインターフェースの実施形態を示す図である。
図7C】バッチジョブのステータスを伝達する情報をオペレータにグラフィカルに提供するユーザインターフェース660の実施形態を示す図である。
図7D】座標測定器のステータスを伝達する情報をオペレータにグラフィカルに提供するユーザインターフェースの実施形態を示す図である。
図7E】オペレータがバッチ検査システムを制御することを可能にするユーザインターフェースの実施形態を示す図である。
図8A】システムの実施形態におけるワークフローを概略的に示す図である。
図8B】検査システムを動作させる方法の実施形態を示すフローチャートである。
図8C】複数のワークピースのバッチをバッチ検査する方法の実施形態のフローチャートである。
図8D】バッチ検査システムを構成する方法の実施形態のフローチャートである。
図9】バッチ検査システムを監視し、かつ動作させる方法の実施形態のフローチャートである。
【0042】
例示的な実施形態の説明
本明細書に開示されている種々の実施形態は、ワークピースを検査する技術におけるいくつかの欠点および問題に対処するものである。ワークピースの検査は、例えば座標測定器のような検査機器によって実施可能であるが、従来の方法およびシステムは、多くの問題をもたらす。例えば、座標測定器のセットアップおよび使用の複雑さにより、座標測定器の使用は、従前、複数の製造されたワークピースのサブセットのみをサンプリングする品質管理研究室に、または製造ラインの一部ではない他のオペレーションに限定されていた。
【0043】
従来、座標測定器をセットアップするためには、高度な訓練を受けたオペレータが、検査されるべきワークピースに適したプローブまたは他のセンサを座標測定器に提供して取り付けることが必要であり、かつ測定されるべきワークピースを検査するために特殊化された測定オペレーションのルーチンを実行するために、制御コンピュータを動作させることが必要である。高度な訓練を受けたオペレータを必要とすることに加えて、そのようなセットアップは、従来、座標測定器のためのかなりのダウンタイムを必要とし、その結果、座標測定器、および座標測定器が含まれるワークフローの生産性が低下してしまう。
【0044】
高度な訓練を受けたオペレータおよび/または経験豊富なオペレータを必要とすることに加えて、座標測定器のオペレーションは、従来、オペレータが座標測定器に継続的に立ち会うことを必要とし、これにより、そのオペレータが他の機械に立ち会うこと、またはワークピースの製造に関連する他のタスクを実行することを阻止することとなる。
【0045】
これらの問題は、一般的な検査手順において見受けられるが、複数の同一でないワークピースを検査すべき場合には、特に深刻である。例えば、それぞれ他の構成部品とは異なる(すなわち、名目上同一ではない)複数の構成部品を組み立てることによって、1つのアセンブリを製造することができる。いくつかのアセンブリの製造するためには、構成部品を事前に選択して、例えばキットの形態のようなコレクションにする必要があり、それらの特定の構成部品がアセンブリへと成功裏に統合可能であることを確認するために、これらの構成部品を組み立て前に検査する必要がある。換言すれば、それぞれの構成部品がそれぞれ各自の仕様を満たしている場合であっても、事前に選択された部品のコレクションを、アセンブリの仕様を満たすようなアセンブリへと統合することに失敗する可能性がある。所与の座標測定器によるそれぞれのそのような部品(例えば、所与のアセンブリのためのコレクション内のそれぞれの部品)を検査するためには、それぞれの座標測定器プローブと、それぞれの座標測定器ルーチンとが必要となる可能性があるが、1つ目のそのような部品のために座標測定器をセットアップし、次に、座標測定器を停止して、それぞれ後続する同一でない部品のために座標測定器を再構成するために必要とされるダウンタイムおよび労力は、相当なものであり、座標測定器の生産性および効率的な使用を妨げる。
【0046】
これらの目的のために、本明細書に記載されているいくつかの実施形態は、前述の問題のうちの一部または全部に対処して、解決するシステム、方法、およびユーザインターフェースを提示する。例えば、例示的な実施形態は、バッチ検査プロセスの不可欠な部分として、検査機器(例えば、座標測定器)を製造ラインに統合することを可能にする。とりわけ、そのような実施形態は、それぞれのワークピースが他の一連のワークピースと同一であるかどうか、またはそれぞれのワークピースが各自の順次先行および/または順次後続するワークピースと異なる(同一でない種)であるかどうかに関係なく、全て、上述したダウンタイムおよびオペレータなしで、一連のワークピースの自動的な順次検査を可能にする。
【0047】
いくつかの実施形態は、ロボットが一連のワークピースにおけるそれぞれのワークピースを順次取得して、それぞれのそのようなワークピースをバッチ検査プロセスでの検査のために座標測定器に送達することを可能にするシステム、方法、およびユーザインターフェースも提示する。他の利点の中でも、これにより、エントリーレベルの労働者が(例えば、高度な訓練を受けたオペレータおよび/または経験豊富なオペレータを必要とせずに)システムを監視し、かつ動作させることが可能となる。直感的なユーザインターフェースにより、このようなオペレータのためのトレーニング要件が緩和される。
【0048】
いくつかの実施形態は、オペレータがバッチ検査プロセスを効率的に監視および制御することを可能にするシステム、方法、およびユーザインターフェースも提示する。例えば、例示的な実施形態は、オペレータが、バッチ検査プロセスをスケジューリングすること、バッチ検査プロセスを開始すること、実行中のバッチ検査プロセスを一時停止すること、および/またはバッチ検査プロセスの優先度レベルを変更することを可能にする。
【0049】
本開示の特定の態様は、例えばバッチローディングシステムの監督制御を実施するために、統合されたソフトウェアプログラムと相互作用するためのグラフィカルユーザインターフェースを提供する。座標測定器と共に使用するための従来のグラフィカルユーザインターフェースは、バッチ検査プロセスを確立し、そのようなプロセスを監視し、複数の装置のオペレーション同士を調整し、かつ/またはそのようなプロセスを制御するための能力を欠いている。むしろ、座標測定器と共に使用するための従来のグラフィカルユーザインターフェースは、例えば、座標測定器の診断手順または較正手順を実行するための、または座標測定器によって測定されるべき1つの特定のワークピースに合わせて測定機を適合させるためのグラフィカルユーザインターフェースに限定されていた。
【0050】
グラフィカルユーザインターフェースの特定の例は、以下の能力、すなわち:
(i)バッチローディングシステムを使用する前に、複数の異なる部品バッチに関する部品プロパティを含むデータオブジェクトを作成して、これにより、新しいジョブをスケジューリングする際にオペレータがこのデータオブジェクトを再利用できるようにする能力と、
(ii)ジョブ追跡のためのユーザ定義のトレースフィールドを使用してデータ構造を定義して、これにより、このデータ構造をオペレータ入力テンプレートとして保存して、オペレータがこのデータ構造を再利用できるようにする能力と、
(iii)自動測定システムまたはCMMにおいてこれらのバッチ内の部品を実行するために、それらのバッチをスケジューリングするためのキューを定義する能力と、
(iv)自動測定システムまたはCMMにおいて実行する前に、いつでもシステム上でまたはリモートで、スケジュールを変更する能力、またはキュー内のジョブに優先度を付け直す能力と、
(v)自動測定システムまたはCMMの実行ステータスを、いつでもシステム上でまたはリモートで監視する能力と、
(vi)ロボットの実行ステータスを、いつでもシステム上でまたはリモートで監視する能力と、
(vii)自動測定システムまたはCMMによって処理されているジョブの進行状況を、それぞれのオペレーションが完了しているかどうか監視する能力と
を提供する。
【0051】
いくつかの実施形態では、グラフィカルユーザインターフェースは、パレット、引き出し、または棚の視覚的表現を介してバッチの進行状況を監視することを可能にし、ここでは、部品は、各自のそれぞれの幾何学的な場所における幾何形状または画像として表現可能であり、各自のステータスを表示するために色分け可能である。いくつかの実施形態では、部品のそれぞれのトレースデータおよび詳細なステータス情報を表示するために、それぞれ個々の部品を表現している幾何形状または画像を選択することができる。
【0052】
そのような実施形態は、検査プロセスが、製造ラインの一部として実行されること、継続的に実行されること、ならびに検査プロセスと、検査プロセスおよび検査機器が含まれる製造ラインとの効率およびスループットを向上させることを可能にする。
【0053】
例示的な実施形態は、バッチ検査システムを有するシステムに関し、バッチ検査システムは、ワークピース検査システム40(例えば、座標測定器)と、部品一時保管装置20と、自動部品移送機構30と、システム全体を監督制御するためのソフトウェアおよび/またはハードウェアとを含む。いくつかの実施形態では、監督制御は、コンピュータ50(例えば、パーソナルコンピュータ)上に常駐するソフトウェアとして、しばしばSCADAソフトウェア(“supervisory control and data acquisition”ソフトウェア)の形態で実装されており、「スレーブ」を調整する「マスター」として、自動部品移送機構のコントローラ(例えば、ロボット)として、かつ検査機(例えば、座標測定器)として機能する。いくつかの例示的な実施形態は、自動測定/自動検査プロセスのために使用されるワークピースおよびワークピース関連情報の記述を支援するために、テンプレートを使用する。
【0054】
したがって、例示的な実施形態は、ユーザが、部品一時保管装置に送達される複数の部品に対する検査ジョブを編成し、検査されるべき部品の複数の異なる特性を追跡することを可能にし、かつ多くの利点を可能にする。とりわけ、これらの利点には、(1)バッチプロセスにおいて種々異なる種類の部品をシームレスに検査可能にするバッチ検査システムと、(2)複数の異なるシステムコンポーネントのステータスを監視する能力と、(3)検査プロセスの進捗状況およびステータスならびに個々のワークピースの検査のステータスおよび進捗状況を追跡する能力とが含まれる。
【0055】
以下、本明細書に開示されている装置および方法の構造、機能、製造、および使用の原理の全体的な理解を提供するために、特定の例示的な実施形態について説明する。添付の図面には、これらの実施形態の1つまたは複数の例が例示されている。当業者は、本明細書に具体的に記載され、かつ添付の図面に例示されている装置および方法が非限定的かつ例示的な実施形態であること、および本開示の範囲が特許請求の範囲のみによって規定されることを理解するであろう。ある1つの例示的な実施形態に関連して例示または説明されている特徴を、他の実施形態の特徴と組み合わせることができる。そのような修正および変形は、本開示の範囲内に含まれることが意図されている。
【0056】
定義:本明細書および添付の特許請求の範囲において使用されている場合、以下の用語は、文脈上別段の要求がない限り、以下に提示する意味を有するものとする。
【0057】
検査システムにワークピースを提供するという文脈での「同時に」という用語は、手動での再設定のために検査システムをオフラインにすることなく、少なくとも2つのワークピースを順次かつ連続的に検査システムに提供することを意味する。
【0058】
「セット」は、少なくとも1つのメンバーを含む。例えば、定義の一般性を制限することなく、ワークピースのセットは、少なくとも1つのワークピースを含む。
【0059】
「ワークピース」という用語は、例えば、製造された部品のような、座標測定器によって測定されるべきオブジェクトを意味する。本明細書においてオブジェクトを指すために使用される「部品」という用語は、「ワークピース」という用語と同義である。
【0060】
以下で説明するいくつかの例示的な実施形態におけるワークピースは、ほんの数例を挙げると、ジェットタービンブレード、整形外科用インプラント、自動車のパワートレインコンポーネント、および家庭用電化製品を含むことができる。
【0061】
「ワークホルダ」は、例えば、ワークピースが座標測定器上または貯蔵装置上にあるとき、かつ/または移動されている間に、ワークピースに結合される装置である。「CMM固定具」は、ワークピースが座標測定器によって検査されている間に、ワークピースを保持するために使用される一種のワークホルダである。「部品固定具」は、ワークピースが貯蔵装置または一時保管設備に貯蔵されている間に、かついくつかの実施形態では、ワークピースが貯蔵装置または一時保管設備から座標測定器へと移動されるときに、ワークピースを保持するために使用される一種のワークホルダである。
【0062】
環境
図1Aは、種々の実施形態に関する作業環境を概略的に示す。図示のように、この環境は、検査システム10を概略的に示し、検査システム10は、複数のワークピースの各々を検査するための検査装置40を含む。検査装置40に到着する前に、ワークピースを、1つまたは複数の上流のワークステーションによって処理して、一時保管装置20上に提供することができる。次に、それぞれのワークピースは、ワークピース処理装置30(例えば、ロボット)によって一時保管装置20から取り出されて、このワークピース処理装置30によって検査装置40に送達される。
【0063】
検査システム10は、検査システム10の少なくとも1つの装置と通信している制御コンピュータ50によって制御可能である。とりわけ、制御コンピュータ50は、制御情報または制御信号を検査システム10の装置に提供する。いくつかの実施形態では、制御コンピュータ50は、検査システム10の複数の装置と制御通信しており、これにより、それぞれのそのような装置は、制御コンピュータ50から直接的に制御通信を受信する。他の実施形態では、制御コンピュータ50は、検査システム10の複数の装置のサブセットと通信しており、検査システムのそれぞれの装置は、制御情報を後続する装置に転送し、これにより、制御情報は、関連するワークピースと一緒にシステム10中に伝搬する。
【0064】
座標測定器100
図1Aの検査装置40は、例示的な実施形態では、座標測定器であり得る。当業者には周知のように、座標測定器(または「CMM」)100は、ワークピースの1つまたは複数の特徴を測定するように構成されたシステムである。
【0065】
図1B図1Eは、例示的な実施形態に従って構成することができる座標測定器100(以下、「CMM100」)を概略的に示す。
【0066】
当業者には周知のように、CMMは、ワークピース180の1つまたは複数の特徴を測定するように構成されたシステムである。ワークピース180の例示的な実施形態は、図1Cに概略的に示されている。典型的に、ワークピース180は、指定された寸法を有する指定された形状を有し、この形状は、ワークピース180の「幾何形状」181と総称可能である。一例として、ワークピース180は、縁部182および角部183を有することができる。ワークピース180は、平坦な表面184および湾曲した表面185のような表面も有することができる。2つの表面の合流部は、内角187を形成することができる。さらに、それぞれの表面は、当技術分野で周知のように、うねり188および/または表面仕上げ189のような物理的特性を有することができる。ワークピース180は、キャビティ186も有することができ、このキャビティ186は、ワークピース180を貫通するアパーチャであってもよい。当技術分野で周知のように、キャビティ186は、幅および深さのような寸法を有することができ、この寸法自体は、キャビティ186のアスペクト比を定義することができる。
【0067】
CMMベース
図1Bの例示的な実施形態では、CMM100は、テーブル111を有するベース110を含む。CMM100のテーブル111は、典型的には床101の平面に対して平行であるA-R平面112、およびA-R平面に対して垂直なS軸、ならびに対応するQ-S平面およびR-S平面を定義する。テーブル111は、テーブル111の上方の測定空間113の境界も定義する。いくつかの実施形態では、CMM100は、1つまたは複数の測定センサ140を保持するように構成されたプローブラック115を含む。CMM100の可動部分は、プローブラック115へと移動して、プローブラック115に測定センサ140を配置すること、および/またはプローブラック115から別の測定センサ140を取り外すことができる。
【0068】
可動部分
CMM100は、測定センサ140(およびいくつかの実施形態では、複数のそのような装置)をワークピース180に対して移動させて方向決めするように配置された可動特徴部(総称的に120)も有する。以下で説明するように、CMM100の可動特徴部は、測定センサ140をワークピース180に対して1次元(Q軸;R軸;またはS軸)で、2次元(Q-R平面;Q-S平面;またはR-S平面)で、または3次元(Q軸、R軸、およびS軸によって定義される体積)で移動させて方向決めするように構成されている。したがって、CMM100は、ワークピース180の1つまたは複数の特徴の場所を測定するように構成されている。
【0069】
図1BのCMM100は、「ブリッジ型」CMMとして知られている。ブリッジ型CMM100の可動特徴部120は、脚部121によってベース110に移動可能に結合されたブリッジ123を含む。ブリッジ123および脚部121は、ベース110に対してR軸に沿って制御可能に移動可能である。
【0070】
ベース110に対する脚部の動きを容易にするために、脚部121は、1つまたは複数の軸受128によってベース110に結合可能である。当技術分野で周知のように、軸受は、ほんの数例を挙げると、転がり軸受または空気軸受であり得る。
【0071】
可動特徴部は、ブリッジ123に移動可動に結合されたキャリッジ125も含む。キャリッジは、Q軸上をブリッジ123に沿って制御可能に移動するように構成されている。ブリッジ123に沿ったキャリッジ125の位置は、ブリッジ123に動作可能に結合されたブリッジスケール124によって決定可能である。
【0072】
キャリッジ125には、スピンドル126が移動可能に結合されている。スピンドル126は、S軸上を制御可能に移動するように構成されている。S軸上でのスピンドル126の位置は、スピンドル126に動作可能に結合されたスピンドルスケール127によって決定可能である。スピンドル126には、測定センサ140が動作可能に結合されている。その結果、測定センサ140は、測定空間113内でワークピース180に対して3次元で制御可能に移動可能である。
【0073】
いくつかの実施形態では、測定センサ140は、関節式アーム130によってスピンドル126に移動可能に結合されている。例えば、測定センサ140は、可動ジョイント311によってアーム130に移動可能に結合可能である。可動ジョイント131は、Q軸、R軸、および/またはS軸上における追加の自由度を測定センサ140に提供するために、測定センサ140の向きをアーム130に対して制御可能に調節することを可能にする。
【0074】
一般に「ガントリ型」CMMと呼ぶことができる他の実施形態では、脚部121が床101の上に立っており、測定空間113が床101に対して定義されている。
【0075】
さらに他の実施形態では、測定センサ140がベース110に固定されており(すなわち、ベース110に対して移動可能ではない)、テーブル111が測定センサ140に対して1、2、または3次元で移動可能となっている。いくつかの座標測定器では、テーブル111は、Q-R平面内で回転可能であってもよい。そのような実施形態では、CMM100は、ワークピース180を測定センサに対して移動させる。
【0076】
一般に「ホリゾンタルアーム型」CMMと呼ぶことができる他の実施形態では、ブリッジ123は、ベース110に移動可能に結合されていて、S軸上に延在しており、かつR軸に沿って制御可能に移動可能である。そのようなCMMでは、アーム130は、S軸上で制御可能に延在可能であり、S軸上でブリッジ123を上下に制御可能に移動可能である。
【0077】
さらに他の実施形態では、アーム130は、関節式である。アーム130の一方の端部は、ベース110に固定されており、アーム130の遠位の端部は、測定空間113内でワークピース180に対して1、2、または3次元でベース110に対して移動可能である。
【0078】
センサ
いくつかの実施形態では、測定センサ140は、ほんの数例を挙げると、(当技術分野で周知のように、プローブ先端をワークピース180に接触させることによってワークピース180上の点の場所を検出するように構成されている)触覚プローブであり得るか、当技術分野で周知の容量性プローブまたは誘導性プローブのような(ワークピース180上の点の場所をワークピース180に物理的に接触することなく検出するように構成されている)非接触プローブであり得るか、または(ワークピース180上の点の場所を光学的に検出するように構成されている)光学プローブであり得る。
【0079】
いくつかの実施形態では、測定センサ140は、ワークピース180を「見る」視覚センサである。そのような視覚センサは、ワークピース180または測定空間113に焦点を合わせることができ、かつ静止画像またはビデオ画像を捕捉および記録するように構成されたカメラであり得る。そのような画像、および/またはそのような画像内のピクセルを分析して、ほんの数例を挙げると、ワークピース180を位置特定すること、ワークピース180の配置および/または向きを決定すること、ワークピース180を識別すること、および/またはワークピース180を測定することができる。
【0080】
CMM100のいくつかの実施形態は、測定空間113がカメラ141の視野内にあるように構成された1つまたは複数のカメラ141を含むことができる。測定センサ140に加えて、そのようなカメラ141を使用することができる。カメラ141は、測定空間113、CMM100上のワークピース180および/またはCMM100の周囲の環境の静止画像および/またはビデオ画像を捕捉するように構成されたデジタルカメラであり得る。そのような画像は、カラー画像、白黒画像、および/またはグレースケール画像であり得、カメラ141は、そのような画像をデジタルデータとして、離散ピクセルとして、またはアナログ形式で出力することができる。
【0081】
CMM100のいくつかの実施形態は、CMMが配置されている環境102の1つまたは複数の特性を測定するように構成された環境センサ142も含むことができ、いくつかの実施形態は、2つ以上のそのような環境センサ142を有することができる。例えば、環境センサ142は、CMM100の周囲の大気の温度、圧力、または化学物質含有量を測定するように構成可能である。環境センサ142は、例えば、CMM100の近くの人または物の動きによって引き起こされるCMMの振動を測定するように構成された、加速度計またはジャイロスコープのような動きセンサであってもよい。環境センサ142は、環境102内の、例えば光学センサまたは視覚センサの動作を妨害する可能性のある周囲光を測定するように構成された光検出器であってもよい。さらに別の実施形態では、環境センサ142は、環境内の音響エネルギを検出するように構成された、マイクロフォンのような音響センサであり得る。
【0082】
動作中、CMM100は、ワークピース180を測定するためにワークピース180に対して測定センサ140を移動させることによってワークピース180を測定する。
【0083】
CMM制御システム
CMM100のいくつかの実施形態は、CMM100を制御して、CMMによって取得されたデータを処理するように構成された制御システム150(または「コントローラ」または「制御ロジック」)を含む。図1Dは、バス151を介して電子通信しているいくつかのモジュールを有する制御システム150の実施形態を概略的に示す。
【0084】
一般に、これらのモジュールのうちの一部または全部は、ASIC、ゲートアレイ、マイクロコントローラ、またはカスタム回路のような1つまたは複数の集積回路の形態で実装可能であり、これらのモジュールのうちの少なくともいくつかは、コンピュータプロセッサ157上で実行可能な非一時的なコンピュータ実装コードの形態で実装可能である。
【0085】
いくつかの実施形態は、コンピュータプロセッサ157を含み、コンピュータプロセッサ157は、ほんの数例を挙げると、インテル社から入手可能なマイクロプロセッサであり得るか、またはARMコアのようなプロセッサコアの実装であり得る。コンピュータプロセッサ157は、制御システムのオペレーションおよび方法の一部または全部を実装するための非一時的な命令を含む、データおよび/またはコンピュータコードを格納するためのオンボードの非一時的なデジタルメモリ(例えば、RAMまたはROM)を有することができる。代替的または追加的に、コンピュータプロセッサ157は、RAMまたはROMのような他の非一時的なデジタルメモリに、またはそのようなコンピュータコードおよび/または制御データを格納するためのプログラミング可能な非一時的なメモリ回路に、動作可能に結合可能である。その結果、コントローラ150の機能のうちの一部または全部は、コンピュータプロセッサ上で実行されるように構成されたソフトウェアの形態で実装可能である。
【0086】
制御システム150は、通信リンク176を介してCMM100の他の部分と、またはコンピュータ170のような外部装置と通信するように構成された通信インターフェース152を含む。この目的のために、通信インターフェース152は、ほんの数例を挙げると、イーサネット接続、USBポート、またはファイアワイヤポートのような種々の通信インターフェースを含むことができる。
【0087】
制御システム150は、測定センサ140またはカメラ141のような1つまたは複数のセンサに動作可能に結合されたセンサ入力部155も含む。センサ入力部155は、センサから電子信号を受信するように構成されており、いくつかの実施形態では、デジタル-アナログ(「D/A」)変換器を使用してそのような信号をデジタル化するように構成されている。センサ入力部155は、制御システム150の他のモジュールに結合されており、そのような他のモジュールに、センサから受信した(デジタル化された)信号を提供する。
【0088】
動きコントローラ153は、CMM100の1つまたは複数の可動特徴部の動きを引き起こすように構成されている。例えば、コンピュータプロセッサ157の制御下で、動きコントローラ153は、CMM100内の1つまたは複数のモータに電気制御信号を送信して、CMM100の可動特徴部が、測定空間113内の種々の点へと測定センサ140を移動させるようにし、かつそのような点でワークピース180の測定を行うことができる。動きコントローラ153は、ほんの数例を挙げると、メモリモジュール156内またはコンピュータ170内に格納されている測定プログラムに応答して、または手動コントローラ160を使用するオペレータによる手動制御に応答して、そのような動きを制御することができる。
【0089】
CMM100によって行われた測定は、非一時的なメモリを含むメモリモジュール156内に格納可能である。メモリモジュール156は、例えば、ほんの数例を挙げると、測定されるべきワークピース180に関する仕様と、較正アーチファクトに関する仕様と、エラーマップと、コンピュータプロセッサ157上で実行可能な非一時的な命令とを格納するようにも構成されている。そのような命令は、とりわけ、ワークピース180および/または較正アーチファクトを測定するためのCMM100の可動特徴部を制御するための命令と、測定データを分析するための命令と、(例えば、エラーマップを用いて)測定データを訂正するための命令とを含むことができる。
【0090】
測定分析器154は、測定センサ140のような1つまたは複数のセンサから受信した測定データを処理するように構成されている。いくつかの実施形態では、測定分析器154は、例えば、エラーマップを使用して測定データを修正することによって測定データを補正することができ、かつ/または例えば、ワークピース180とそのワークピース180の仕様との間の偏差を評価するために測定データと仕様とを比較することができる。この目的のために、測定分析器154は、当技術分野で周知のような、プログラミングされたデジタル信号プロセッサ集積回路であり得る。
【0091】
代替的または追加的に、いくつかの実施形態は、CMM100を外部コンピュータ(または「ホストコンピュータ」)170と結合する。制御システム150と同様に、ホストコンピュータ170は、CMM100のプロセッサと通信している上述したようなコンピュータプロセッサと、非一時的なコンピュータメモリ174とを有する。メモリ174は、プロセッサによって実行可能な非一時的なコンピュータ命令を保持するように構成されており、かつ/またはベース110上のオブジェクト180を測定した結果として取得されるデータのような非一時的なデータを格納するように構成されている。
【0092】
とりわけ、ホストコンピュータ170は、デル社から入手可能であるようなデスクトップコンピュータ、タワーコンピュータ、またはラップトップコンピュータであり得るか、またはそれどころか、アップル社から入手可能なiPad(登録商標)のようなタブレットコンピュータであり得る。コンピュータメモリ174に加えて、ホストコンピュータ170は、非一時的なコンピュータ可読媒体と結合されるように、かつコンピュータ170とコンピュータ可読媒体との間でのコンピュータコードまたはデータ等の転送を可能にするように構成された、USBポートまたはメモリカード用のスロットのようなメモリインターフェース175を含むことができる。
【0093】
CMM100とホストコンピュータ170との間の通信リンク176は、イーサネットケーブルのようなハードワイヤード接続であり得るか、またはBluetoothリンクまたはWi-Fiリンクのような無線リンクであり得る。ホストコンピュータ170は、例えば、使用中または較正中にCMM100を制御するためのソフトウェアを含むことができ、かつ/またはCMM100の動作中に取得したデータを処理するように構成されたソフトウェアを含むことができる。さらに、ホストコンピュータ170は、ユーザがCMM100を手動で操作することを可能にするように構成されたユーザインターフェースを含むことができる。いくつかの実施形態では、CMMおよび/またはホストコンピュータ170は、ネットワーク178を介してサーバ179のような1つまたは複数の他のコンピュータに結合可能である。ネットワーク178は、2つの例を挙げると、ローカルエリアネットワークまたはインターネットであり得る。
【0094】
CMM100の可動特徴部の行動によって各自の相対的な位置が決定されるので、CMM100は、ベース110およびワークピース180の相対的な位置を把握していると見なすことができる。より具体的には、コンピュータプロセッサ157および/またはコンピュータ170は、可動特徴部の動きに関する情報を制御および格納する。代替的または追加的に、いくつかの実施形態の可動特徴部120は、テーブル111および/または測定センサ140の場所を検知して、そのデータをコンピュータ170および/またはコントローラ150に報告するセンサを含む。CMM100のテーブルおよび/または測定センサ140の動きおよび位置に関する情報は、CMM100上の点を基準とする1次元(例えば、Q、R、S)、2次元(例えば、Q-R;Q-S;R-S)、または3次元(Q-R-S)の座標系に関連して記録可能である。
【0095】
手動ユーザインターフェース
いくつかのCMMは、手動ユーザインターフェース160も含む。図示のように、手動ユーザインターフェース160は、オペレータがCMM100を手動で操作することを可能にする制御部(例えば、ボタン、ノブ等)を有することができる。とりわけ、インターフェース160は、オペレータがワークピース180に対する測定センサ140の位置を変更することを可能にする制御部を含むことができる。例えば、オペレータは、制御部161を使用してQ軸上で、制御部162を使用してR軸上で、かつ/または制御部163を使用してS軸上で、測定センサ140を移動させることができる。
【0096】
測定センサ140が視覚センサである場合、またはCMM100がカメラ141を含む場合には、オペレータは、制御部165を使用して手動で、センサ140、カメラ141を移動させることができるか、または視覚センサおよび/またはカメラの視野を変更することができる。オペレータは、(いくつかの実施形態では回転可能なノブであり得る)制御部166を使用して視覚センサおよび/またはカメラ141の焦点を合わせ、制御部167を使用してビデオの記録を捕捉および撮像または制御することもできる。
【0097】
したがって、可動特徴部は、ベース110および/または測定センサ140を相互に対して移動させるために、手動制御に応答することができるか、またはコンピュータプロセッサ157の制御下にあることができる。したがって、この構成は、測定中のオブジェクトを様々な角度から様々な位置で測定センサ140に提供することを可能にする。
【0098】
CMM100の実施形態は、ジョグボックス(または「ペンダント」)190と呼ぶことができるモバイルコントローラを含む。ジョグボックス190は、座標測定器100のオペレータの制御を容易にするいくつかの特徴を含む。
【0099】
図1Fは、中央コンピュータシステム(または「制御コンピュータ」)50の実施形態を概略的に示す。いくつかの実施形態では、中央コンピュータ50は、実行可能コードによって本明細書に記載されている機能を実行するように構成されている。例えば、例示的な方法およびデータ構造は、本明細書に記載されているシステム10によって実行可能であるか、または本明細書に記載されているシステム10を制御するために使用可能である。
【0100】
中央コンピュータ50は、プロセッサ51と、メモリ52と、記憶装置53と、入力/出力装置54とを含む。コンポーネント51,52,53,および54の各々を、例えば、システムバス55を使用して相互接続することができる。プロセッサ51は、コンピュータシステム50内で実行するための命令を処理することができる。プロセッサ51は、シングルスレッドプロセッサ、マルチスレッドプロセッサ、または同様の装置であり得る。プロセッサ51は、メモリ52内、記憶装置53上、またはデータベース13内に格納されている命令を処理することができる。プロセッサ51は、バッチローディングシステム10に1つまたは複数の対応する部品固定具200を使用して1つまたは複数の異なる種類の部品180の検査ジョブを実行させるなどのオペレーションを実行することができる。
【0101】
メモリ52は、システム50内に情報を格納する。いくつかの実装形態では、メモリ52は、コンピュータ可読媒体である。メモリ52は、例えば、揮発性メモリユニットまたは不揮発性メモリユニットであり得る。いくつかの実装形態では、メモリ52は、ジョブパラメータまたは部品トレースデータに関連する情報を格納する。
【0102】
記憶装置53は、システム50のための大容量ストレージを提供することができる。いくつかの実装形態では、記憶装置53は、非一時的なコンピュータ可読媒体である。記憶装置53は、例えば、ハードディスク装置、光ディスク装置、ソリッドデートドライブ、フラッシュドライブ、磁気テープ、または他のいくつかの大容量記憶装置を含むことができる。代替的に、記憶装置53は、クラウド記憶装置であり得、例えば、ネットワーク上に分散され、かつネットワークを使用してアクセスされる複数の物理的な記憶装置を含む論理的な記憶装置であり得る。いくつかの実装形態では、メモリ52内に格納されている情報を、追加的または代替的に記憶装置53内に格納することができる。
【0103】
入力/出力装置54は、システム500のための入力/出力オペレーションを提供する。いくつかの実装形態では、入力/出力装置54は、1つまたは複数のネットワークインターフェース装置(例えば、イーサネットカード)、シリアル通信装置(例えば、RS-232 10ポート)、および/またはワイヤレスインターフェース装置(例えば、短距離無線通信装置、802.11カード、3G無線モデム、または4G無線モデム)を含む。いくつかの実装形態では、入力/出力装置540は、入力データを受信して、出力データを他の入力/出力装置に、例えばキーボード、プリンタ、およびディスプレイ装置(GUIなど)に送信するように構成されたドライバ装置を含む。いくつかの実装形態では、モバイルコンピューティング装置、モバイル通信装置、および他の装置が使用される。
【0104】
いくつかの実装形態では、システム50は、マイクロコントローラである。マイクロコントローラは、コンピュータシステムの複数の素子が単一の電子回路パッケージ内に含まれている装置である。例えば、単一の電子回路パッケージは、プロセッサ51、メモリ52、記憶装置53、および入力/出力装置54を含むことができる。
【0105】
これらのコンポーネントの各々は、任意の従来の相互接続メカニズムによって動作可能に接続されている。図1Fは、それぞれのコンポーネントと通信するバスを簡単に示す。当業者は、この一般化された表現を、他の従来の直接的または間接的な接続を含むように修正してもよいことを理解すべきである。したがって、バスの説明は、種々の実施形態を限定することを意図するものではない。
【0106】
貯蔵装置200
いくつかの実施形態における一時保管装置20は、貯蔵装置200を含む。貯蔵装置200の例示的な実施形態は、図2Aに概略的に示されている。この実施形態では、貯蔵システム200は、1つまたは複数の貯蔵コンテナ201(例えば、引き出し;棚;1つまたは複数のパレットを含むものもある)201を含む。図2Aの例示的な実施形態は、いくつかの貯蔵コンテナ221,222,および223を含む。
【0107】
貯蔵システム200は、3つの相互に直交する軸(図2AのX軸、Y軸、およびZ軸)を有する貯蔵システム座標系を定義する。貯蔵システム座標系は、CMMの座標系(例えば、Q-R-S)から独立している。
【0108】
図2Aに概略的に示されているように、貯蔵システム200のそれぞれの引き出しまたは棚211は、1つまたは複数のワークピース180またはパレット240を保持するように構成および配置された1つまたは複数の貯蔵プレート203を有することができる。貯蔵プレート203は、プレート表面202を有することができる。
【0109】
コンテナ201の表面202は、図2BのX-Y平面における2次元座標系を定義する。コンテナ201の例示的な実施形態は、その2次元座標系におけるコンテナ201の向きを集合的に定義する物理的な参照特徴部233のセットを含む。ロボットによって(例えば、ロボット300のロボットアーム302に結合されたロボットプローブ340によってそれぞれのそのような物理的な参照特徴部に接触することにより)それぞれのそのような物理的な参照特徴部233を順次に位置特定し、そして、ロボット300の3次元座標系におけるそれぞれのそのような物理的な参照特徴部233の座標を(例えば、コンピュータ50によって表示されるユーザインターフェースを介して)制御コンピュータ50に記録することによって、コンテナ201の2次元(X-Y)座標系をロボット300の3次元座標系に対して方向決めすることができる。
【0110】
コンテナ201のいくつかの実施形態は、表面202上に可視のグリッドパターン232を含み、このグリッドパターン232は、コンテナ201の2次元座標系を表現している。
【0111】
複数のワークピース180は、それぞれのコンテナ201上に直接的に格納可能である。代替的または追加的に、複数のワークピース180を、それぞれのコンテナ201上の1つまたは複数のパレット240上に格納してもよい。
【0112】
図2Cは、パレット240の実施形態を概略的に示す。パレット240は、コンテナ201上に配置可能であり、コンテナ201上に再配置可能であり、かつコンテナ201から取り出し可能であるという点で、移動可能である。
【0113】
パレット240の表面は、2次元座標系(図2CのM-N)を定義する。
【0114】
パレット240の例示的な実施形態は、その2次元座標系におけるパレット240の向きを集合的に定義する物理的な参照特徴部243のセットを含む。ロボットによって(例えば、ロボット300のロボットアーム302に結合されたロボットプローブ340によってそれぞれのそのような物理的な参照特徴部に接触することにより)それぞれのそのような物理的な参照特徴部243を順次に位置特定し、そして、ロボット300の3次元座標系におけるそれぞれのそのような物理的な参照特徴部243の座標を(例えば、コンピュータ50によって表示されるユーザインターフェースを介して)制御コンピュータ50に記録することによって、パレット240の2次元(M-N)座標系をロボット300の3次元座標系に対して方向決めすることができる。代替的に、ロボット300座標系に対して方向決めされているか、または方向決めされるコンテナ201上にパレットを配置することによって、パレット240の2次元(M-N)座標系をロボット300の3次元座標系に対して方向決めしてもよい。
【0115】
パレット240の例示的な実施形態は、可視のグリッドパターン242を含む。
【0116】
ロボット300
ロボット300は、図3に概略的に示されている。
【0117】
例示的な実施形態では、ロボット300は、貯蔵装置200の引き出しまたは棚201と、貯蔵装置200に配置されたワークピースのセットのうちのそれぞれのワークピース180とに到達することができるように配置されていると共に、座標測定器のテーブル111と、座標測定器100上のワークピースとにも到達することができるように配置されている。そのように配置されている場合、ロボット300は、引き出しまたは棚201から座標測定器100の測定空間113へとワークピース180を搬送することができ、かつ座標測定器100の測定空間113から引き出しまたは棚201へとワークピース180を搬送することができる。この目的のために、この実施形態のロボット300は、可動の関節式アーム302の端部303にグリッパ311を有する。
【0118】
いくつかの実施形態では、グリッパ311は、ギャップ317によって離隔された2つ以上のフィンガ314,315を有する。グリッパ311は、ワークピース180を(それぞれ)把持および解放するために、(それぞれ)フィンガ314,315を制御可能に開閉してギャップ317を増減させるように構成されている。
【0119】
例示的な実施形態では、ロボット300(例えば、ロボットアーム302の動きおよび/またはグリッパ311の動き)は、ロボットコントローラによって制御される。例えば、いくつかの実施形態では、ロボット300は、ロボット制御コンピュータ379またはロボット制御インターフェース390によって制御される。代替的な実施形態では、ロボット300は、座標測定器100の動きコントローラ153またはホストコンピュータ170によって制御され、座標測定器100の動きコントローラ153またはホストコンピュータ170は、ロボット制御コンピュータ379およびロボット制御インターフェース390とは別個であり、かつ異なるものである。
【0120】
例示的な実施形態では、ロボットアーム302は、ロボット300のベース301に対するアーム302の端部303の場所を測定するように構成されたセンサを含む。
【0121】
動作中、システム10は、部品一時保管装置20によって提供された部品180に対して1つまたは複数の検査ジョブを実施する。これらのジョブは、CMM100を使用したそれぞれの部品180の検査を含むことができる。部品180が部品一時保管装置20に到着すると、ロボット300は、貯蔵コンテナのうちの1つから部品180を取り出し、取り出した部品180の種類に応じてその部品180をCMM100上に、またはCMM100の対応する部品固定具上に配置する。CMM上の部品180に対して、CMM100は、処理中のジョブのパラメータに従って測定プロセスを実行する。
【0122】
データ構造
図4Aは、本発明の一実施形態と共に使用するための例示的なデータ構造400(または「テンプレート」)の実施形態を示す。データ構造は、ユーザ定義のジョブ情報410を含むことができ、ジョブ情報410は、例えば、オペレータ名フィールド411と、バッチ検査ジョブの一部として検査されるべき物理的なワークピース180に関連するシリアル番号のための部品シリアル番号フィールド412とを含むことができ、バッチ検査ジョブは、バッチ処理システム10を使用して実施され、本明細書に開示されているデータ構造を有するソフトウェアを実行する1つまたは複数のコントローラ50によって制御される。
【0123】
データ構造は、システム定義の部品特性のような、システムセットアップ中に事前定義された入力のためのフィールド420も含むことができ、このフィールド420は、例えば、部品プログラム名(すなわち、座標測定器100によって実行されるべき測定ルーチンの名前)のためのフィールド421を含み、この部品プログラム名のためのフィールド421は、フィールド412内のシリアル番号によって挙げられたワークピースのような所与の種類のワークピースに対して検査オペレーションのセットを実行するために、検査機器40(例えば、CMM100)によって実行されるべきプログラムの名前を受信および格納するように構成されている。
【0124】
システムセットアップ中に事前定義された入力のためのフィールド420は、例えば、バッチ内のそれぞれのワークピース180のピックアップ場所を受信および格納するためのフィールド422も含むことができる。それぞれのそのようなピックアップ場所は、ロボット300がそれぞれのワークピース180を貯蔵装置200から取り出して検査機器40へと送達することを可能にするために、貯蔵装置200の座標系に対して定義可能である。
【0125】
システムセットアップ中に事前定義された入力のためのフィールド420は、例えば、それぞれのワークピースの重量を受信および格納するためのフィールド423も含むことができる。
【0126】
システムセットアップ中に事前定義された入力のためのフィールド420は、例えば、グリッパ幅を受信および格納するためのフィールド424も含むことができ、このグリッパ幅は、グリッパ311がワークピース180を取り出して測定機器50へと送達している間にそれぞれのワークピース180を把持することが可能となるように、ロボット300のグリッパ311を構成するために指定される。
【0127】
いくつかの実施形態では、そのようなフィールドは、(a)所定の種類の部品のために必要とされる特定のワーク保持装置またはワーク固定具、および/または(b)ロボット300によってそのバッチ内の部品をピックアップして配置するために使用される、部品を収容しているパレット、引き出し、または棚の座標参照系、を受信および格納するためのフィールドも含むことができる。
【0128】
データ構造は、グリッドサイズおよび/またはコンテナ内のセルの番号のためのフィールド431のような、システム定義のコンテナ特性430を受信および格納するためのフィールド430も含むことができる。いくつかの実施形態は、ロボット300によってそのバッチ内の部品をピックアップして配置するために使用される、部品を収容しているパレット、引き出し、または棚(例えば、ロボット300が部品180と精確に相互作用し、部品180を取り外し、部品180を返却することを可能にするための、コンテナ内の部品180の特定の場所)の特定の座標参照系を識別する情報を受信および格納するためのフィールド432を含む。
【0129】
いくつかの実施形態では、図4Aは、上述した情報を入力するためのユーザインターフェースである。
【0130】
データオブジェクト
使用中、オペレータは、図4Aのテンプレートを使用して、バッチジョブを定義するデータオブジェクトを作成することができる。図4Bは、図4Aのデータ構造を含むデータオブジェクトの実施形態を示し、このデータ構造の種々のフィールドには、それぞれ、オペレータ(例えば、バッチ検査ジョブを実行するエンティティ)または顧客(例えば、部品180の製造者)からのデータが記入されている。
【0131】
事前定義されたデータオブジェクト
図5Aは、検査システム10のオペレーションに関連する種々の事前定義されたデータオブジェクトを示す。事前定義されたデータオブジェクトは、それぞれのワークピースのために使用するための固定具、それぞれのワークピース180の実施のための検査ルーチン、およびそれぞれのワークピースための検査に合格するための閾値のような、送達されるべき1つまたは複数の部品種類(例えば、「部品A」)に関連するデータ510を含むことができる。
【0132】
事前定義されたデータオブジェクト500は、コンテナ内の部品の特定の場所(例えば、座標参照)、および例えば、同じ種類の部品に対する同様の検査タスクを効率的にバッチ化することを容易にするための、コンテナ内の種々の種類の部品のレイアウトのような、部品を送達する1つまたは複数の種類のコンテナ(例えば、「引き出し1左」521、「引き出し1右」522、「引き出し2左」523、「引き出し2右」524)に関連するデータ520も含むことができる。
【0133】
ジョブデータオブジェクトアセンブリ
事前定義されたデータオブジェクト500を使用して、図5Bのジョブデータオブジェクトアセンブリ550を定義することができる。ジョブデータオブジェクトアセンブリ550は、バッチ検査ジョブを実行するための検査システムの複数の装置のオペレーション同士を調整するために使用される情報を、検査システム10に提供する。例えば、いくつかの実施形態では、ジョブデータオブジェクトアセンブリ550は、バッチ内の複数のワークピースのうちのそれぞれのワークピース180を測定するための座標測定器100のオペレーションとロボット300のオペレーションとを調整するために制御コンピュータ50によって使用される情報を、制御コンピュータ50に提供する。
【0134】
使用中、オペレータは、それぞれのジョブデータをジョブデータオブジェクトアセンブリ550に追加することによって、バッチ検査ジョブをセットアップするためのいくつかの初期入力を提供する。ジョブデータオブジェクトアセンブリは、部品種類およびコンテナ種類のような、実行されるべき検査プロセスに関連する他のデータオブジェクトを含むことができる。
【0135】
ジョブが実行されて、貯蔵コンテナ221,222,223内の種々のワークピース180がCMM100によって検査されると、ジョブオペレーションは、それぞれのワークピース180のトレースデータを、例えばデータオブジェクトとして出力することができる。
【0136】
トレースデータは、一般に、実行されたジョブの実行後分析(例えば、検査後分析)、または実行中のジョブの実行中監視および実行中分析を可能にするデータである。この目的のために、トレースデータのそれぞれのインスタンスは、システム10による特定のジョブの実行に一意に相関されている。トレースデータは、例えば、検査プロセスの結果と、検査中のワークピース180に関する対応する情報(例えば、シリアル番号)とを含む。トレースデータ560内の例示的なトレースフィールドは、(a)ジョブにロードされたそれぞれの部品のシリアル番号または一意の部品識別子(UID)、(b)バッチまたはバッチプロセスに関するセットアップ情報の一部、(c)ジョブにおけるそれぞれの部品に関する一意の情報が含まれたデータ、(d)オペレータの名前のようなオペレータ情報、および(e)ジョブの開始時刻、を含むことができる。
【0137】
図示のようなバッチジョブにおいて編成されたデータオブジェクトを使用することにより、システム10は、検査されたそれぞれのワークピース180に関するトレースデータを生成しながら、単一のジョブで大量および/または多種のワークピース180を処理することが可能となる。
【0138】

以下の例は、部品180の種々のバッチに対する検査オペレーションを含むジョブプロセスを実行するためのコンピュータ実装方法において、これらのデータオブジェクトをどのようにして一緒に編成することができるかを示す。
【0139】
例1
以下は、本開示の(「Job_1」と題する)擬似コードの例であり、ここでは、Job_1は、(1)ジョブに関するユーザ定義のトレース可能な情報と、(2)Part_Aとして参照される、事前定義された部品種類データオブジェクト情報と、(3)Drawer_1Rと呼ばれる、Part_Aのためのコンテナとを含み、このPart_Aのためのコンテナは、コンテナ内のセルの場所のような各自の部品特有のデータが含まれた、シリアル番号001,002,003の形式の一意の部品識別子を有する3つの部品の配列を含む:
【表1】
【0140】
さらに、いくつかの例では、種々の実施形態は、ジョブに関するユーザ定義のトレース可能な情報を含むように構成されたトレースフィールドを事前作成するための能力を含む。これらのトレースフィールドは、各自の固有のデータ構造として格納可能であり、このデータ構造は、トレーサビリティの目的で同じ情報を必要とするジョブのために、オペレータによって再利用することができるジョブトレーステンプレートとして呼び出し可能である。例えば:
【表2】
【0141】
この例では、ユーザ定義のジョブトレーステンプレートは、オペレータによる新しいジョブのセットアップを簡単にするために呼び出すことができるという点で、バッチセットアップ情報のデータ構造に類似している。しかしながら、場合により、データフィールドは、ユーザ定義ではない。
【0142】
例2
ワークフローおよびデータ管理に関して、本開示の別の実施形態は、(1)部品のバッチに関する情報と、(2)バッチの一部としての個々の部品に関する情報とを別々に定義するために、データテンプレートを使用することを含む。
【0143】
以下は、(1)部品のバッチに関する情報の擬似コードの例である:
【表3】
【0144】
以下は、(2)バッチの一部としての個々の部品に関する情報の擬似コードの例である:
【表4】
【0145】
上記の例のデータ構造を実装することにより、バッチが何であるかを事前定義することが可能となり、これによって、オペレータは、バッチの種類(この事例では「OP_40」)を選択し、そして、一時保管システム(この事例では引き出し)に部品がローディングされる際に、最小限の部品特有の情報を定義するだけでよくなる。
【0146】
さらに、実施形態は、必要に応じてより多くの情報フィールドを追加するために、より高度なレベルのオペレータがこれらのデータテンプレートを変更することを可能にする。例えば、医療機器を製造している会社は、より高いトレーサビリティを必要とし、自社の医療機器において使用されたバッチ情報またはそれぞれの部品に関してより多くの情報フィールドを追加する可能性がある。
【0147】
図5Cは、オペレータ99がデータオブジェクトを定義すること、およびデータオブジェクトを使用してジョブデータオブジェクトアセンブリを定義することを可能にするように構成されたユーザインターフェース570を概略的に示す。
【0148】
ユーザインターフェース570は、オペレータ99がジョブセットアップオブジェクト460のようなジョブセットアップオブジェクトを定義することを可能にするように構成されたボタン571を含む。オペレータ99がボタン571をクリックすると、ユーザインターフェース570は、ユーザ定義のジョブ情報410(例えば、オペレータ名フィールド411、部品シリアル番号フィールド412)に対応する複数の入力ボックスを有する入力領域を提示する。オペレータは、ジョブセットアップオブジェクト460を作成するためにそのようなデータを入力して保存する。
【0149】
ユーザインターフェース570は、オペレータ99が部品種類オブジェクト470を定義することを可能にするように構成されたボタン572も含む。オペレータ99がボタン572をクリックすると、ユーザインターフェース570は、システムセットアップ420中に事前定義された入力(例えば、部品プログラム名421;ピックアップ場所422等)のためのフィールド420に対応する複数の入力ボックスを有する入力領域を提示する。オペレータは、部品種類オブジェクト470を作成するためにそのようなデータを入力して保存する。
【0150】
ユーザインターフェース570は、オペレータ99が部品コンテナオブジェクト480を定義することを可能にするように構成されたボタン573も含む。オペレータ99がボタン573をクリックすると、ユーザインターフェース570は、コンテナを定義する入力のためのフィールド430(例えば、グリッドサイズおよび/またはコンテナ内のセルの番号のためのフィールド431;コンテナのための特定の座標参照系を識別する情報を受信および格納するためのフィールド432)に対応する複数の入力ボックスを有する入力領域を提示する。オペレータは、部品コンテナオブジェクト480を作成するためにそのようなデータを入力して保存する。
【0151】
ユーザインターフェース570は、バッチジョブが追跡および生成するためのトレースデータ560をオペレータ99が定義することを可能にするように構成されたボタン574も含む。
【0152】
ユーザインターフェース570は、オペレータ99が事前定義されたデータオブジェクト500からジョブデータオブジェクトアセンブリ550を作成することを可能にするための領域を含む。図5Cの例示的な実施形態は、利用可能な事前定義されたデータオブジェクトのセット576を表示するための領域575を含む。動作中、オペレータ99は、利用可能な事前定義されたデータオブジェクトのうちの1つまたは複数を選択して、それぞれのそのような事前定義されたデータオブジェクトをジョブデータオブジェクトアセンブリ領域577内に配置する。図5Cは、データオブジェクトアセンブリ領域577内に配置された後の、事前定義されたデータオブジェクトのセット578を概略的に示す。
【0153】
前述の特徴のうちの任意の1つまたは複数を使用した後、オペレータ99は、保存ボタン579を使用することによってデータオブジェクトまたはジョブデータオブジェクトアセンブリ550への入力を保存することができる。
【0154】
従来のソフトウェアシステムは、本明細書に記載されている実施形態の柔軟性を有していない。むしろ、従来の自動化環境は、通常、ターンキー検査システムとして実装されており、1つの方式で動作するように、かつ多くの場合、単一の種類の部品に対して動作するようにハードコードされている。
【0155】
グラフィカルユーザインターフェース
図6A図6B図6C図6D;および図6Eは、バッチ検査システム10上でバッチプロセスをセットアップするためのグラフィカルユーザインターフェースの実施形態を概略的に示す。
【0156】
図6Aは、複数の追加のページへのタブ601,602,603,604,および605(「01」,「02」,「03」,「04」,および「05」)を含む、ジョブ定義ページ600の実施形態を示す。タブ601,602,603,604,および605は、バッチ検査システム10によって実施されるべき1つまたは複数のジョブを定義するための種々のユーザインターフェースへのアクセスをオペレータに提供する。例えば、ジョブ定義ページ600を使用することにより、オペレータ99は、図4Aおよび図4Bと、図5A図5B、および図5Cとに関連して説明したように、データ構造400からジョブ450をオーサリングするためのデータを入力することが可能となる。
【0157】
図6Aにおいてアクティブ化されているタブ611は、本明細書に記載されているデータ構造420を完成させるためのフィールドのような、検査されるべき1つまたは複数の部品をオペレータが定義することを可能にするフィールドを提示する。いくつかの実施形態では、タブ601は、オペレータが追加の部品を定義するための追加のオプションを提供する「新しいオブジェクトの追加」ページ620を開く。図6Bには、「新しいオブジェクトの追加」ページ620の実施形態が示されており、このページ620は、複数の部品に対応する複数の画面のうちの対応する1つの画面にそれぞれアクセスするためのタブ621,622,623,624をオペレータに提供し、オペレータが、それぞれの部品について対応する固定具626、パレット627、不良な部品(例えば、検査に不合格であった部品)を配置するための場所628、部品のための図面番号628、および部品の検査を実行するための検査装置によって実行されるべきルーチン629を識別することを可能にする。
【0158】
タブ602は、図7A図7Eに示されているジョブ追跡ページ650のようなジョブ追跡ページを開く。
【0159】
タブ603は、オペレータがCMM固定具を定義することを可能にするためのフィールドをオペレータ99に提示する。いくつかのワークピース180は、座標測定器100によって検査される際に、対応するCMM固定具によって保持される。それぞれのそのようなワークピース180について対応するCMM固定具を指定することにより、ロボット300は、その指定されたCMM固定具へとワークピース180を適切に配置することが可能となる。
【0160】
タブ604は、オペレータが部品固定具を定義することを可能にするためのフィールドをオペレータに提示する。いくつかのワークピース180は、コンテナ201内に貯蔵される際に、対応する部品固定具(例えば、ワークホルダ)によって保持される。それぞれのそのようなワークピース180について対応する部品固定具を指定することにより、ロボット300は、例えば、部品固定具自体によってワークピース180を適切に把持することが可能となる。
【0161】
タブ605は、例えばワークピースのセットを保持するコンテナ201またはパレット240をオペレータ99が定義することを可能にするグラフィカルユーザインターフェース630を、オペレータ99に提示する。そのようなグラフィカルユーザインターフェース630の実施形態は、図6C図6D、および図6Eに概略的に示されている。
【0162】
グラフィカルユーザインターフェース630は、とりわけ、グラフィカルなコンテナ641を提示し、グラフィカルなコンテナ641は、検査されるべきワークピース180のセットを保持するための、または既に検査済みのワークピース180のセットを収容および保持するための対応する物理的なコンテナ201を、いずれの場合にも、例えば貯蔵コンテナ221として表現している。グラフィカルなコンテナ641は、検査されるべき1つまたは複数のワークピース180の、物理的なコンテナ201内での精確な位置、および/または既に検査済みのワークピースの、物理的なコンテナ201内での精確な位置を、オペレータ99が指定することを可能にする。それぞれのそのようなワークピース180の、物理的なコンテナ内での精確に指定された位置によって、ロボット300は、それぞれのそのようなワークピース180を位置特定および把持して、それぞれのそのようなワークピース180を物理的な貯蔵コンテナ201から座標測定器100の測定空間へと移送することが可能となり、いくつかの実施形態では、そのワークピース180を座標測定器100から物理的な貯蔵コンテナ201上のその精確に定義された場所へと移送または返送することが可能となる。
【0163】
これらの目的のために、例示的な実施形態では、グラフィカルなコンテナ641は、コンテナ201の貯蔵プレート203の表面202を正確に表現したものである。例えば、いくつかの実施形態では、グラフィカルなコンテナ641は、コンテナ201の表面202と同じ形状を有する。例えば、コンテナ201の表面202が長方形である場合には、グラフィカルなコンテナ641の形状もまた、コンテナ201の表面202の形状と同じ比率(例えば、長さ対幅)を有する長方形である。
【0164】
また、これらの目的のために、グラフィカルなコンテナ641のいくつかの実施形態は、グラフィカルなコンテナ641上の複数の特定の場所を識別するためのグラフィカルなグリッドパターン642も含み、それぞれの場所は、コンテナ201の表面202の特定の場所に対応する。いくつかの実施形態は、コンテナ201の幾何形状に対してグリッドを定義するために、それぞれグリッドパターン642に対する既知の位置を有する1つまたは複数のグラフィカルな基準点643のセットも含む。例えば、基準点643のセットの場所は、ロボット300または制御コンピュータ50に提供されると、ロボット300が、グリッド642上のそれぞれの点の場所を特定することを可能にし、ひいては、コンテナ201上のそれぞれのワークピース180の場所を特定することを可能にする。例えば、図6Cにおいて、基準点643は、コンテナ201の2次元の表面202に対応する2次元(X,Y)座標系を、グラフィカルなコンテナ641内に構築する。いくつかの実施形態では、オペレータ99は、ロボットのプローブ340をコンテナ201上の対応する物理的な参照特徴部233に接触させて(例えば、図2Bを参照)、基準点643をクリックすることにより、それぞれの基準点643をロボット300の座標系に相関させることができる。
【0165】
同様に、オペレータ99は、ロボットのプローブ340をパレット240上の対応する物理的な参照特徴部243に接触させて、グラフィカルユーザインターフェース内のそのパレットのグラフィカルな描写の上の基準点643をクリックすることにより、パレット240のそれぞれの基準点643をロボット300の座標系に相関させることができる。
【0166】
グラフィカルユーザインターフェース630は、それぞれ対応するワークピース180を表現しているアイコンのセット639(例えば、アイコン635,636)を表示するように構成されたレイアウト領域631も含む。好ましい実施形態では、それぞれのそのようなアイコンは、グラフィカルなコンテナ641に対してスケーリングするためのものである。換言すれば、それぞれのアイコン639は、グラフィカルなコンテナ641のサイズに対するアイコン639のサイズの比率が、物理的なコンテナ201のサイズに対する対応するワークピース180のサイズの比率と同じになるような、グラフィカルなスケールを有する。
【0167】
使用中、オペレータ99は、図6Dに示されているように、レイアウト領域631からアイコン635を選択して、そのアイコン635をグラフィカルなコンテナ641にドラッグする。次に、オペレータ99は、図6Eに示されているように、アイコン635をグラフィカルなコンテナ641上の所望の位置にドロップし、ドロップされるアイコン635の位置は、このドロップされるアイコン635に対応するワークピース180の、コンテナ201上での精確な場所に一致するように、(例えば、グリッド642を介して)精確に定義される。
【0168】
アイコン639(例えば、アイコン635,636)のうちの1つまたは複数は、複数のワークピースを保持するパレット240を表現することもでき、コンテナ201上でのパレット240の場所を表現するために上述したように選択可能および移動可能であることに留意すべきである。
【0169】
グラフィカルユーザインターフェース630の例示的な実施形態は、複数のタブ631,632,633を含み、これらのタブの各々は、オペレータ99によってアクティブ化されると、別のグラフィカルなコンテナ641の表示をもたらす。このようにして、グラフィカルユーザインターフェース630は、オペレータ99が、対応する複数のコンテナ201を管理することを可能にする。さらに、オペレータ99は、座標測定器100が第2のコンテナ201上のワークピース180を検査している間に、第1のコンテナ201を定義することができる。このことにより、座標測定器100および複数のコンテナ201の効率的かつ連続的なオペレーションが促進および改善される。
【0170】
図7Aは、1つまたは複数のジョブのステータスをオペレータに提示するように構成されたジョブ追跡ユーザインターフェースページ650を概略的に示す。この実施形態では、グラフィカルユーザインターフェース630のジョブ追跡ページ650は、グラフィカルなコンテナ641を含み、コンテナ201上の1つまたは複数のワークピース180のステータスのグラフィカルな表現を提供する。
【0171】
例えば、図7Aは、特定の位置にパレット636を有するグラフィカルなコンテナ641を概略的に示す。パレット636は、それぞれステータスアイコン651,652,653によって表現されている複数のワークピースを保持している。図7Aの実施形態では、グラフィカルなコンテナ641は、空のアイコン656もグラフィカルに表示しており、この空のアイコン656は、例えば、現在のところ座標測定器100上にあるワークピース180の、グラフィカルなコンテナ641上での位置を示す。それぞれのステータスアイコン651,652,653は、各自の対応するワークピース180の検査ステータスを示す。例えば、ステータスアイコン651は、対応するワークピース180が検査に不合格であったことを示すグラフィカル要素(この事例では「X」)を含む。対照的に、ステータスアイコン652は、対応するワークピース180が検査に合格したことを示すグラフィカル要素(この事例ではチェックマーク)を含む。これにより、ステータスページ650は、オペレータ99が、それぞれのワークピース180の検査ステータスだけでなく、アイコン636によって表現されているパレット上のワークピース180のコレクションの検査ステータスも、一目で見ることを可能にする。
【0172】
図7Bは、バッチ検査ジョブを監視および制御するためのグラフィカルユーザインターフェース(GUI)650の実施形態を示す。
【0173】
他の利点の中でも、グラフィカルユーザインターフェース650は、バッチジョブの進捗に関する迅速かつ容易に理解可能なステータス報告をオペレータに提供する。いくつかの実施形態では、グラフィカルユーザインターフェース650は、コンテナ201内のワークピース180のレイアウトの描写を含み、この描写は、実行中の検査ジョブの進捗の視覚的な表示を提供することによって検査プロセスの同時監視を可能にする。
【0174】
図示されているGUI650は、コンテナ201(例えば、引き出し、棚、またはパレット;貯蔵コンテナ121,122,123)のグラフィカルな表現641を介してジョブの進捗を監視することを可能にする。グラフィカルな表現641は、ジョブの部品キュー内の一意の部品180の配置を示している複数の幾何形状659(例えば、ここでは正方形として図示されている形状651,652,653)を含む。場合により、幾何形状659の場所は、グラフィカルな表現641内の幾何形状の場所によって示されているように、コンテナ201内の部品の180の場所に直接的に対応する。
【0175】
それぞれの幾何形状659は、ジョブ内の対応する部品180の現在のステータスまたは検査結果の1つまたは複数の標識を含む。例えば、標識は、これらの幾何形状の複数の異なる色を含むことができ、これらの色は、これらの一意の部品のステータスを以下のようにして示す。すなわち、第1の(例えば、緑色の)標識(652,653)は、対応する部品180が検査を完了し、かつ合格したことを示す。第2の(例えば、赤色の)標識(651)は、対応する部品180が検査を完了し、かつ不合格であったことを示す。ボーダーの標識(例えば、白色またはコントラスト色のボーダー)(656)は、対応する部品180が現在検査中であることを示す。そして、第3の(例えば、灰色の)標識(657)は、対応する部品180が検査されるべきアクティブなジョブのキュー内にあることを示す。
【0176】
いくつかの実施形態では、幾何形状659の場所および標識は、これらの幾何形状659の対応する物理的な場所がグラフィカルな表現641に対して変化すると、かつ/またはこれらの幾何形状659の標識がジョブの進捗とともに変化すると、リアルタイムで更新される。場合により、ユーザは、対応する部品180に関する追加の特性、および/または現在のジョブの進捗および/または結果(例えば、検査の実施および分類に関する任意の関連パラメータを含む、CMM100を使用した検査の結果)を検索するために、GUI650内の1つまたは複数の幾何形状(例えば、651,652,653)と対話することができる。例えば、オペレータ99は、GUI650内の幾何形状(例えば、651,652,653)をクリックすることができ、これに応答して、システムは、その幾何形状に対応するワークピース180の検査に関する情報を表示する。
【0177】
いくつかの実施形態では、グラフィカルユーザインターフェース650は、オペレータ99が、測定空間113を有する座標測定器100と、複数のワークピースの各々を測定空間113に送達するように配置されたロボット300と、座標測定器100およびロボット300に動作可能に結合された、ディスプレイ装置54を有する制御コンピュータ50とを有するバッチ検査システム10を動作させることを可能にするように構成されている。
【0178】
図7Cは、検査システム10上で実行されているバッチジョブのステータスを伝達する情報を、オペレータ99にグラフィカルに提供するユーザインターフェース660の実施形態を示し、このユーザインターフェース660は、検査に不合格であったワークピース180の数を報告するアイコン661と、検査に合格したワークピース180の数を報告するアイコン662とを含む。アイコン663は、完了したバッチ検査ジョブのパーセンテージを報告し、ディスプレイ664は、バッチ検査ジョブにおける、かつ/または検査中のワークピース180のセットを保持するコンテナ201に関する、残り時間を推定する。
【0179】
図7Dは、バッチ検査ジョブの実行に参加している座標測定器100のステータスを伝達する情報を、オペレータ99にグラフィカルに提供するユーザインターフェース670の実施形態を示す。アイコン671は、現在検査中のワークピース180の検査のための残り時間を示す。アイコン672は、座標測定器100によって現在使用中のプローブ140を示す。
【0180】
オペレーション
図8Aは、本発明の例示的な実施形態に従って構成されたシステム10を概略的に示す。図示のように、コンピュータ50は、監視ソフトウェア51と(例えば、CMMを制御する)測定ソフトウェア52とを含み、これらのソフトウェアは、種々の他のシステムコンポーネントと通信する。具体的に、これらの他のシステムコンポーネントには、パレットを有する引き出しローダのような部品一時保管装置20と、ロボットのような自動部品移送装置30と、CMM100のような自動検査機40とが含まれる。図8Aは、オペレータ99がどのようにしてシステム10とインターフェースするか、ならびに一時保管装置20から検査機40への製造された部品の流れを示す。
【0181】
図8Bは、検査システム10を動作させる方法800の実施形態を示すフローチャートである。
【0182】
ステップ801は、少なくとも一時保管装置20と、ワークピース処理装置30(例えば、ロボット300)と、ワークピース検査機器40とを含む検査システム10を提供することを含む。例示的な実施形態では、検査システム10を提供することは、ロボットが一時保管装置200からワークピース180を取り出して、そのワークピース180を座標測定器100による検査のために座標測定器100の測定空間内へと配置することができるように相互に方向決めされた一時保管装置200と、ロボット300と、座標測定器100とを提供することを含む。
【0183】
ステップ802は、バッチ検査ジョブによって検査されるべき複数のワークピース180を検査システム10に提供することを含む。これらの複数のワークピースを、1つの「バッチ」と呼ぶことができる。ワークピースのバッチは、例えば、コンテナ201内またはパレット上に提供可能である。
【0184】
ステップ803は、少なくとも、ジョブオブジェクト(例えば、ジョブデータオブジェクトアセンブリ550)を検査システム10に提供することを含む。ジョブオブジェクトは、ワークピースの特定のバッチに合わせて製作されたバッチ検査ジョブのような検査ジョブの実行を可能にする情報を、検査システム10に提供する。座標測定器100のための測定ルーチン、またはロボット300のためのプログラムとは異なり、ジョブオブジェクトは、検査システム内の複数の装置が、複数のワークピースのうちのそれぞれのワークピース180を順次に検査するために一緒に動作するように、これらの複数の装置の行動同士を構成および調整するために使用される。ジョブオブジェクトのいくつかの実施形態は、ロボット300のオペレーションを座標測定器100のオペレーションと調整して、複数のオブジェクトを、これらのオブジェクトが相互に同一である場合にも、これらのオブジェクトが名目上相互に同一でなく、したがってロボット300または座標測定器またはその両方の行動がオブジェクトごとに変化するような場合にも、順次検査する。これらの目的のために、ジョブオブジェクトは、図4A図4B図5A、および図5Bに関連して上述した情報のうちの一部または全部を含むことができる。
【0185】
例示的な実施形態では、ジョブオブジェクトは、貯蔵装置200内のワークピース180のセットの場所を定義する貯蔵場所情報を含み、これにより、その場所情報を使用するロボット300は、貯蔵装置200からワークピース180のバッチ内のそれぞれのワークピース180を取り出すことが可能となる。
【0186】
例示的な実施形態におけるジョブオブジェクトは、座標測定器100の測定空間の場所を定義するCMM場所情報も含むことができ、これにより、そのCMM場所情報を使用するロボット300は、それぞれのワークピース180を座標測定器100の測定空間に配置すること(および/または測定空間から取り出すこと)が可能となる。
【0187】
例示的な実施形態におけるジョブオブジェクトは、ワークピース180のセット内のそれぞれのワークピース180について、それぞれのそのようなワークピース180を測定または検査するために座標測定器によって実行されるべきルーチンを識別する情報も含むことができる。
【0188】
ワークピースのセット内のそれぞれのワークピース180は、ワークピースのバッチ内の1つまたは複数の他のワークピース180とは異なる(例えば、別の設計のワークピース;別の種類のワークピースのように、他のワークピース180と名目上同一ではないワークピースである)場合があることに留意すべきである。その結果、それぞれ連続するワークピース180に提供されるルーチンは、所与のワークピース180に先行するワークピース180のために座標測定器100に提供されたワークピース180、および所与のワークピース180に後続するワークピース180のために座標測定器に提供されるルーチンとは異なる(すなわち、別である)可能性がある。その結果、ジョブオブジェクトは、ワークピースのセット内の複数のワークピース180のうちの対応する1つのワークピース180に対してそれぞれ設計された複数のルーチンを識別することができる。
【0189】
いくつかの実施形態では、ステップ803におけるジョブオブジェクトを提供することは、例えばユーザインターフェースを使用するなどによって、上述したようなそのジョブオブジェクトの内容を提供することにより、ジョブオブジェクトを生成することを含む。いくつかの実施形態では、ステップ803におけるジョブオブジェクトを提供することは、制御コンピュータ50のメモリ52またはデータベース13から、事前定義されたジョブオブジェクトを検索することを含む。
【0190】
ステップ804は、システム10による検査ジョブの実行を制御することを含む。この制御は、ほんの数例を挙げると、バッチ検査ジョブの実行のスケジューリング、バッチ検査ジョブの実行の開始、バッチ検査ジョブの実行の一時停止、バッチ検査ジョブの優先度の変更、バッチ検査ジョブの終了のような行動を含むことができる。ジョブの実行を制御することは、グラフィカルユーザインターフェースを介してジョブの進捗および/または検査の結果を監視することも含むことができる。そのような制御は、コンピュータ50を介してオペレータ99によって提供可能である。
【0191】
ステップ805は、実行すべき追加のバッチジョブが存在するかどうかを決定する。そうである場合、方法800のステップ806は、ステップ802にループバックし、そうでない場合には、方法800が終了する。
【0192】
図8Cは、複数のワークピース180のバッチをバッチ検査する方法820の実施形態のフローチャートである。
【0193】
ステップ821は、複数のワークピース180のバッチを提供することを含む。いくつかの実施形態では、ワークピース180のバッチは、検査システムによる第1の検査オペレーションのセットを必要とする第1のワークピース180と、検査システムによる第2の検査オペレーションのセットを必要とする第2のワークピースとを含み、第2のワークピースは、第1のワークピースと同一ではなく、第2のオペレーションのセットは、第1のオペレーションのセットと同一ではない。
【0194】
ステップ822は、ワークピース180を測定機器(例えば、座標測定器100)に送達することを含む。
【0195】
ステップ823は、ステップ821で提供されたワークピースのバッチのうちの特定のワークピース180のために、検査システム10を構成することを含む。ワークピースのバッチに、同一でない第1のワークピースと第2のワークピースとが含まれている場合には、ステップ823は、第1のワークピース180のために、第1の検査オペレーションのセットのインスタンス(第1のインスタンス)をインスタンス化することを含む。
【0196】
第1のインスタンスの検査オペレーションは、例えば、第1のワークピース180が貯蔵されているコンテナ201の識別情報と、その識別されたコンテナ内の第1のワークピース180の場所とをロボット300に提供することも含むことができ、これにより、ロボットは、自動的にコンテナ201から第1のワークピースを取り出して、その第1のワークピースを座標測定器の測定空間に提供することが可能となる。この目的のために、コンテナ201内の第1のワークピース180の場所は、そのコンテナ201の表面202上の特定の場所、またはコンテナ201内の指定されたパレット240上の特定の場所であり得る。
【0197】
検査オペレーションは、例えば、ワークピース180(例えば、第1または第2のワークピース180)の物理的な寸法を測定するためのオペレーションのセット、および/またはそのようなワークピース180の表面粗さを測定するためのオペレーションのセットを含むことができる。
【0198】
検査システム10を構成することは、座標測定器100によって使用するためのプローブ140を自動的に取得することも含むことができる。例えば、第1のワークピース180のための検査オペレーションを、第1のプローブ140によって実行されるように指定することができ、第2のワークピース180のための検査オペレーションを、第1のプローブとは異なる第2のプローブ140によって実行されるように指定することができる。例えば、検査機器が座標測定器100を含むいくつかの実施形態では、第1のプローブを用いて第1のワークピース180を検査した後に第2のワークピースを検査するための第2の検査オペレーションのセットは、座標測定器100によって(例えば、プローブラック115から)第2の別のプローブ140を自動的に取得することを含む。
【0199】
いくつかの実施形態は、複数のジョブオブジェクトを格納するデータベース13を提供することも含み、複数のジョブオブジェクトのうちのそれぞれのジョブオブジェクトは、第1の検査オペレーションのセットおよび第2の検査オペレーションのセットを含み、ステップ822は、バッチのワークピースに特有の検査オペレーションを有するジョブオブジェクトを、データベース13から取得することを含む。
【0200】
次に、ステップ824は、第1のワークピースを検査するための第1のインスタンスの検査オペレーションを実行する。
【0201】
ステップ825は、ワークピースのバッチから、座標測定器100によってまだ検査されていない別のワークピース180(例えば、第2のワークピース180)が存在するかどうかを決定する。そうである場合、ステップ825は、ステップ822にループバックして、その第2のワークピース180を検査するように検査システムを構成する。第2のワークピース180が第1のワークピースと同一である場合には、第1のワークピース180のための検査ルーチンを維持して再び使用することができるが、コンテナ201内の第2のワークピースの場所のようなその他の構成の詳細は、更新可能である。
【0202】
第2のワークピース180が第1のワークピースと同一でない場合には、第2のワークピースのために検査システムを構成するステップは、その第2のワークピースのために指定される第2の検査オペレーションのセット(「第2のインスタンス」)を提供することを含む。
【0203】
好ましい実施形態では、方法820は、第1のワークピース180の後、介在するワークピースを座標測定器100に提供することなく第2のワークピース180を座標測定器100に同時にかつ自動的に提供することと、第2のインスタンスに従って第2のワークピース180に対して第2の検査オペレーションのセットを実行することとを含む。
【0204】
バッチ内に追加のワークピース180が存在しない場合には、方法820が終了する。
【0205】
図8Dは、検査装置(例えば、座標測定器100)と、一時保管装置(例えば、貯蔵装置200)と、ディスプレイ装置54を備えるコントローラ50とを有するバッチ検査システムを構成する方法830の実施形態のフローチャートである。
【0206】
ステップ831は、バッチ検査ジョブを定義する情報をオペレータ99から受信するように構成されたユーザインターフェース620を、ディスプレイ装置54上に表示することを含む。ユーザインターフェース620の例示的な実施形態は、レイアウトマネージャを有するグラフィカルユーザインターフェース630を含み、レイアウトマネージャは、対応する物理的なコンテナ201を表現しているグラフィカルなコンテナ641であって、かついくつかの実施形態では、対応する物理的なコンテナ内の対応する場所を精確に表現するための精確なグリッド場所のグリッドパターンを有するグラフィカルなコンテナ641と、アイコンのセットを表示するレイアウト領域631とを含み、アイコンのセット内のそれぞれのアイコンは、(a)バッチ検査システムによって検査されるべきワークピース、または(b)バッチ検査システムによって検査されるべきワークピースのセットを保持するパレット、のうちの一方をグラフィカルに表現している。
【0207】
いくつかの実施形態では、ステップ831におけるユーザインターフェースを表示することは、データ入力フィールドのセットをディスプレイ装置上に表示することを含み、データ入力フィールドのセット内のそれぞれのデータ入力フィールドは、それぞれのジョブデータの仕様を受信するように構成されている。そのような実施形態では、データ入力フィールドのセットは、オペレータ名と、部品シリアル番号のセットであって、当該部品シリアル番号のセット内のそれぞれの部品シリアル番号は、複数のワークピースのうちのそれぞれのワークピースにそれぞれ対応する、部品シリアル番号のセットと、部品重量のセットであって、当該部品重量のセット内のそれぞれの部品重量は、複数のワークピースのうちのそれぞれのワークピースにそれぞれ対応する、部品重量のセットと、グリッパ幅のセットであって、当該グリッパ幅のセット内のそれぞれのグリッパ幅は、複数のワークピースのうちのそれぞれのワークピースにそれぞれ対応する、グリッパ幅のセットと、グリッドサイズまたはセルの番号のうちの少なくとも1つと、コンテナのための参照系とを含む、部品コンテナの仕様と、のうちの少なくとも1つまたは複数を含む。
【0208】
そのような実施形態は、部品プログラムのセットの仕様をオペレータから受信してバッチジョブデータオブジェクト内に格納するための部品プログラム入力フィールドも、ディスプレイ装置上に表示し、部品プログラムのセット内のそれぞれの部品プログラムは、複数のワークピースからのそれぞれのワークピースに対応する。そのような実施形態は、部品プログラム入力フィールドを介して部品プログラムのセットの仕様を受信することと、前述の仕様をバッチジョブデータオブジェクト内に格納することも含む。
【0209】
ステップ832は、ユーザインターフェース620を介してオペレータから情報を受信することによってバッチジョブを定義することを含む。例示的な実施形態では、バッチジョブを定義することは、レイアウト領域631からアイコンのセットのうちのそれぞれのアイコン635,636を選択し、それぞれのそのようなアイコン635,636をグラフィカルなコンテナ641のそれぞれの精確なグリッド場所に配置するための配置入力を、グラフィカルユーザインターフェース630を介して受信することを含み、前述のそれぞれの精確なグリッド場所は、一時保管装置20内でのそれぞれのグリッド場所に対応するワークピース180または固定具(例えば、パレット)の物理的な場所を表現している。
【0210】
ステップ833は、検査システム10による実行のために、バッチジョブ(例えば、バッチジョブデータオブジェクト)を検査システム10に提供することを含む。
【0211】
ステップ834は、バッチジョブデータオブジェクトに従って複数のワークピースのうちのそれぞれのワークピース180を検査するためのバッチジョブを、検査システム10に実行させることを含む。
【0212】
図9は、バッチ検査システム10を動作させる方法910の実施形態のフローチャートである。方法910は、ステップ911において、オペレータ99がバッチ検査システム10によるバッチ検査ジョブの実行を監視および制御することを可能にするように構成されたグラフィカルユーザインターフェース650を、ディスプレイ装置54上に表示することを含む。
【0213】
グラフィカルユーザインターフェース650は、対応する物理的なコンテナ201をグラフィカルに表現するグラフィカルなコンテナ641を含み、物理的なコンテナ201は、複数のワークピースを有し、複数のワークピース内のそれぞれのワークピース180は、コンテナ201内の対応する一意の位置を有する。
【0214】
グラフィカルユーザインターフェース650は、複数のグラフィカルなアイコンも含み、複数のグラフィカルなアイコンのうちのそれぞれのグラフィカルなアイコンは、バッチジョブ内の複数のワークピースの中からの一意のワークピースに対応し、物理的なコンテナ上のワークピースの位置に対応する、グラフィカルなコンテナ内のグラフィカルな位置において表示される。
【0215】
いくつかの実施形態では、複数のグラフィカルなアイコンは、グラフィカルなコンテナ内の行列の形態で配置されており、それぞれのグラフィカルなアイコンは、複数のグラフィカルなアイコン内の他のグラフィカルなアイコンの各々に対する、グラフィカルなコンテナ内での各自の対応するワークピースの位置を示す。
【0216】
それぞれのこのようなグラフィカルなアイコンは、(a)幾何形状と、(b)対応するワークピースの検査のステータスを伝達する標識のセットとを有する。いくつかの実施形態では、標識のセットは、対応するワークピースが検査を完了したことを示すグラフィカルな標識、対応するワークピースが検査を完了し、かつ合格したことを示すグラフィカルな標識、対応するワークピースが検査に不合格であったことを示すグラフィカルな標識、対応するワークピースが現在検査中であることを示すグラフィカルな標識、および対応するワークピースが検査されるべきアクティブなバッチ検査プロセスのキュー内にあることを示すグラフィカルな標識、のうちの少なくとも1つを含む。
【0217】
ステップ912は、グラフィカルユーザインターフェース650を介してオペレータ99からの制御入力を受信することを含み、ステップ913は、制御入力に従って複数のワークピースのうちのそれぞれのワークピースを検査するために、制御コンピュータ50によってバッチ検査システム10のオペレーションを制御することを含む。
【0218】
いくつかの実施形態では、制御入力は、バッチ検査プロセスのスケジュールを定義する入力、バッチ検査プロセスの実行を開始する入力、バッチ検査プロセスの実行を一時停止する入力、進行中のバッチ検査プロセスの実行を修正する入力、および別のバッチ検査プロセスに対するバッチ検査プロセスの優先度を変更する入力、のうちの1つまたは複数を含む。いくつかの実施形態では、制御入力は、グラフィカルなアイコンのうちの1つに対応するワークピースの再検査を命令することを含む。いくつかの実施形態では、制御入力は、グラフィカルなアイコンの1つに対応するワークピースの検査ルーチンを変更することを含む。いくつかの実施形態では、制御入力は、実行のためにそれらの検査ジョブのキューをスケジューリングすることを含む。
【0219】
いくつかの実施形態では、それぞれの幾何学的なアイコンは、オペレータからの要求を受信し、前述の要求に応答して、対応するワークピースの部品特性に関する情報、対応するワークピースのトレースフィールド情報、検査プロセスにわたる対応するワークピースの進捗の進捗情報、および対応するワークピースの検査の結果情報、のうちの少なくとも1つを表示するように構成されている。
【0220】
物理的なコンテナ201からのワークピースのバッチ内の複数のワークピース180を検査するためのバッチ検査システムの実施形態は、測定空間113を有する座標測定器100と、複数のワークピースの各々を測定空間113に送達するように配置されたロボット300と、座標測定器100およびロボット300に動作可能に結合された、ディスプレイ装置54を有する制御コンピュータ50とを含む。制御コンピュータ50は、対応する物理的なコンテナ201をグラフィカルに表現するグラフィカルなコンテナ641と、複数のグラフィカルなアイコンとを含むグラフィカルユーザインターフェースを、ディスプレイ装置54上に表示するように構成されており、複数のグラフィカルなアイコンのうちのそれぞれのグラフィカルなアイコン659は、バッチジョブ内の複数のワークピースの中からの一意の対応するワークピースを表現しており、前述のアイコンに対応するワークピース180の、物理的なコンテナ201上での対応する位置に対応する位置において、グラフィカルなコンテナ642上に表示される。いくつかの実施形態では、制御コンピュータは、グラフィカルなコンテナ内の行列の形態で配置された複数のグラフィカルなアイコンを表示するようにさらに構成されており、それぞれのグラフィカルなアイコンは、複数のグラフィカルなアイコン内の他のグラフィカルなアイコンの各々に対する、グラフィカルなコンテナ内での各自の対応するワークピースの位置を示す。それぞれのグラフィカルなアイコンは、(a)幾何形状と、(b)対応するワークピースの検査のステータスを伝達する標識のセットとを有する。
【0221】
グラフィカルユーザインターフェース650は、オペレータからの制御入力を受信するようにさらに構成されており、制御コンピュータ50は、制御入力に従って複数のワークピースのうちのそれぞれのワークピース180を検査するために、ロボット300および座標測定器100を制御するようにさらに構成されている。
【0222】
いくつかの実施形態では、制御コンピュータは、グラフィカルユーザインターフェースを介して受信したオペレータ入力に応答して、以下のうちの少なくとも1つ、すなわち、受信したオペレータ入力に応答して、前述のバッチ検査ジョブのスケジュールを定義するバッチ検査ジョブをスケジューリングすること、バッチ検査ジョブの実行を開始する入力に応答して、バッチ検査ジョブの実行を開始すること、前述の実行を一時停止するための入力に応答して、バッチ検査ジョブの実行を一時停止すること、進行中のバッチ検査ジョブの実行を修正する入力に応答して、バッチ検査ジョブの実行を修正すること、および別のバッチ検査ジョブに対するバッチ検査ジョブの優先度を変更する入力に応答して、バッチ検査ジョブの優先度を変更すること、のうちの少なくとも1つを実行するようにさらに構成されている。
【0223】
いくつかの実施形態では、制御コンピュータは、グラフィカルユーザインターフェースを介してオペレータから受信した制御入力に応答して、特定のワークピースを再検査するようにさらに構成されており、この制御入力は、特定のワークピースを識別して、指定されたワークピースの再検査を指示する。
【0224】
いくつかの実施形態では、制御コンピュータは、ワークピースに関連する検査ルーチンの置換を、そのような置換を指示する制御入力に応答して実行するようにさらに構成されている。
【0225】
別の実施形態では、非一時的なコンピュータ可読媒体は、複数の命令のシーケンスを格納しており、これらの命令のシーケンスは、少なくとも1つのプロセッサによって実行されると、少なくとも1つのプロセッサに、オペレータがバッチ検査システムによるバッチ検査ジョブの実行を制御することを可能にするように構成されたグラフィカルユーザインターフェースを、表示画面上に表示させる。グラフィカルユーザインターフェースは、対応する物理的なコンテナ201をグラフィカルに表現するグラフィカルなコンテナ641と、複数のグラフィカルなアイコンとを含み、複数のグラフィカルなアイコンのうちのそれぞれのグラフィカルなアイコンは、バッチジョブ内の複数のワークピースの中からの一意の対応するワークピースを表現しており、前述のアイコンに対応するワークピースの、物理的なコンテナ上での対応する位置に対応する位置において、グラフィカルなコンテナ上に表示される。いくつかの実施形態では、複数のグラフィカルなアイコンは、グラフィカルなコンテナ内の行列の形態で配置されており、それぞれのグラフィカルなアイコンは、複数のグラフィカルなアイコン内の他のグラフィカルなアイコンの各々に対する、グラフィカルなコンテナ内での各自の対応するワークピースの位置を示す。それぞれのこのようなグラフィカルなアイコンは、(a)幾何形状と、(b)対応するワークピースの検査のステータスを伝達する標識のセットとを有する。命令はさらに、少なくとも1つのプロセッサに、グラフィカルユーザインターフェースを介してオペレータからの制御入力を受信させ、制御入力に従って複数のワークピースのうちのそれぞれのワークピースを検査するために、座標測定器およびロボットを制御させる。
【0226】
いくつかの実施形態では、制御入力は、バッチ検査プロセスのスケジュールを定義する入力、バッチ検査プロセスの実行を開始する入力、バッチ検査プロセスの実行を一時停止する入力、進行中のバッチ検査プロセスの実行を修正する入力、および別のバッチ検査プロセスに対するバッチ検査プロセスの優先度を変更する入力、のうちの1つを含む。
【0227】
いくつかの実施形態では、命令は、少なくとも1つのプロセッサによって実行されると、グラフィカルなアイコンのうちの1つに対応する特定のワークピースを再検査するために、少なくとも1つのプロセッサに座標測定器およびロボットを制御させる。
【0228】
いくつかの実施形態では、命令は、少なくとも1つのプロセッサによって実行されると、少なくとも1つのプロセッサに、グラフィカルなアイコンのうちの1つに対応するワークピースの検査ルーチンを変更させる。
【0229】
いくつかの実施形態では、命令は、少なくとも1つのプロセッサによって実行されると、少なくとも1つのプロセッサに、実行のためにそれらの検査ジョブのキューをスケジューリングさせる。
【0230】
これらの目的のために、図7Eは、オペレータがバッチ検査システムを制御することを可能にするユーザインターフェース680の実施形態を示す。
【0231】
ユーザインターフェース680は、バッチジョブのキューを表示するバッチジョブキュー領域683を含む。オペレータは、バッチジョブの名前を打ち込むことによりそのバッチジョブをキューに追加することができる。オペレータ99は、キューからバッチジョブを選択し、そのバッチジョブをキュー内の新しい場所にドラッグすることによって、キュー内のバッチジョブの順序を変更することができる。
【0232】
ユーザインターフェース680は、選択されたバッチジョブを開始するため、選択されたバッチジョブを一時停止するため、かつ/または選択されたバッチジョブを停止するための、オペレータ99からの入力を受信するように構成された制御入力部681を含む。例えば、オペレータ99は、バッチジョブキュー領域683内においてバッチジョブの名前をクリックすることによってそのバッチジョブを選択することができ、制御入力部681において「開始」、「停止」、または「一時停止」をクリックすることによってその選択されたバッチジョブの実行を制御することができる。
【0233】
ユーザインターフェース680は、オペレータ99が選択したバッチジョブを修正することを可能にするように構成されたボタン682を含む。例えば、オペレータ99は、バッチジョブキュー領域683内においてバッチジョブの名前をクリックすることによってそのバッチジョブを選択することができる。次に、ボタン682をクリックすると、コンピュータ50は、図5Cに概略的に示されているユーザ入力画面を表示し、これにより、オペレータは、選択したバッチジョブを修正することが可能となる。
【0234】
ユーザインターフェース680は、利用可能なバッチジョブのリストと、それぞれのバッチジョブのための優先度レベルとを表示するバッチジョブ優先度領域684を含む。例えば、この例示的な実施形態では、ジョブ1およびジョブ7は、それぞれ「A」(最高の優先度)の優先度レベルを有し、ジョブWは、「B」(2番目に高い優先度)の優先度レベルを有し、ジョブ19は、「C」(優先度レベルAおよびBより低い)の優先度レベルを有する。いくつかの実施形態では、制御コンピュータ50は、オペレータ99が領域683を介するなどしてバッチジョブの順序を変更しない限り、領域683内のキュー内のジョブを、それらのジョブのそれぞれの優先度レベルに従って順序付ける。
【0235】
参照符号
本明細書で使用されている参照符号は、以下のものを含む:
10:ワークピースバッチ処理システム
13:データベース
20:製造ステーションのセット
30:ワークピース処理装置
40:ワークピース検査システム
50:中央コンピュータ
51:監視ソフトウェア
52:測定ソフトウェア
53:ネットワークインターフェース
54:ディスプレイ装置
99:オペレータ
100:座標測定器
101:床
102:環境
110:ベース
111:テーブル
112:平面
113:測定エンベロープ
115:プローブラック
120:可動特徴部
121:ブリッジの脚部
122:テーブルスケール
123:ブリッジ
124:ブリッジスケール
125:キャリッジ
126:スピンドル
127:スピンドルスケール
128:軸受
130:アーム
131:可動ジョイント
132:ロータリーエンコーダ
140:測定センサ
141:カメラ
142:環境センサ
150:制御システム
151:バス
152:通信インターフェース
153:動きコントローラ
154:測定分析器
155:センサ入力
156:メモリ
157:コンピュータプロセッサ
160:ユーザインターフェース
161:X軸制御部
162:Y軸制御部
163:Z軸制御部
165:カメラの動き制御部
166:カメラの焦点制御部
167:カメラの記録制御部
170:ホストコンピュータ
171:画面
172:キーボード
173:マウス
174:コンピュータメモリ
175:メモリインターフェース/通信ポート
176:通信リンク
178:ネットワーク
179:コンピュータ
180:ワークピース
181:幾何形状
182:縁部
183:角部
184:平坦な表面
185:湾曲した表面
186:キャビティ
187:内角
188:うねり
189:表面仕上げ
190:ジョグボックス
191:ケーブル
200:ワークピース貯蔵装置
201:貯蔵コンテナ
202:貯蔵プレートの表面
203:貯蔵プレート
221:第1のコンテナ
222:第2のコンテナ
223:第3のコンテナ
300:ロボット
610:トップページ
620:オブジェクト定義ページ
630:引き出し定義ページ
631:レイアウト領域
639:ワークピースまたはパレットのアイコン
641:引き出しのビュー
642:グリッドパターン
643:方向キー
650:ジョブ追跡テンプレート
【0236】
本発明の種々の実施形態は、少なくとも部分的に、任意の従来のコンピュータプログラミング言語で実装可能である。例えば、いくつかの実施形態は、手続き型プログラミング言語(例えば、「C」)またはオブジェクト指向プログラミング言語(例えば、「C++」)で実装可能である。本発明の他の実施形態は、事前にプログラミングされたハードウェア要素(例えば、特定用途向け集積回路、FPGA、およびデジタル信号プロセッサ)、または他の関連するコンポーネントとして実装可能である。
【0237】
代替的な実施形態では、開示されている装置および方法は、コンピュータシステムと共に使用するためのコンピュータプログラム製品として実装可能である。そのような実装は、非一時的なコンピュータ可読媒体(例えば、ディスケット、CD-ROM、ROM、フラッシュメモリ、またはハードディスク)のような有形媒体のいずれかに固定された一連のコンピュータ命令を含むことができる。一連のコンピュータ命令は、システムに関して本明細書で前述した機能のうちの全部または一部を具現化することができる。
【0238】
当業者は、そのようなコンピュータ命令が、多くのコンピュータアーキテクチャまたはオペレーティングシステムと共に使用するための多数のプログラミング言語で記述可能であることを理解すべきである。さらに、そのような命令は、半導体、磁気的、光学的、または他のメモリ装置のような任意のメモリ装置内に格納可能であり、光学的、赤外線、マイクロ波、または他の伝送技術のような任意の通信技術を使用して伝送可能である。
【0239】
他の手段の中でも、そのようなコンピュータプログラム製品は、付随する印刷文書または電子文書(例えば、シュリンクラップされたソフトウェア)を有するリムーバブル媒体として配布可能であるか、コンピュータシステムによって(例えば、システムROM上または固定ディスク上に)プリロード可能であるか、またはネットワーク(例えば、インターネットまたはワールドワイドウェブ)を介してサーバまたは電子掲示板から配布可能である。もちろん、本発明のいくつかの実施形態は、ソフトウェア(例えば、コンピュータプログラム製品)とハードウェアとの両方の組み合わせとして実装可能である。本発明のさらに他の実施形態は、完全にハードウェアとして、または完全にソフトウェアとして実装される。
【0240】
本明細書で前述した機能のうちの全部または一部を実装するコンピュータプログラムロジックは、単一のプロセッサ上でそれぞれ異なる時間に(例えば、同時に)実行可能であるか、または複数のプロセッサ上でそれぞれ同じ時間または異なる時間に実行可能であり、単一のオペレーティングシステムプロセス/スレッドの下で、または複数の異なるオペレーティングシステムプロセス/スレッドの下で実行可能である。したがって、「コンピュータプロセス」という用語は、一般に、複数の異なるコンピュータプロセスがそれぞれ同じまたは異なるプロセッサ上で実行されるかに関係なく、また、複数の異なるコンピュータプロセスがそれぞれ同じオペレーティングシステムプロセス/スレッドの下で、または異なるオペレーティングシステムのプロセス/スレッドの下で実行されるかに関係なく、一連のコンピュータプログラム命令の実行を指す。
【0241】
上述した本発明の実施形態は、単なる例示であることが意図されている。すなわち、当業者には、多数の変形形態および修正形態が明らかであろう。そのような全ての変形形態および修正形態は、添付の特許請求の範囲において規定されている本発明の範囲内にあることが意図されている。
図1A
図1B
図1C
図1D
図1E
図1F
図2A
図2B
図2C
図3
図4A
図4B
図5A
図5B
図5C
図6A
図6B
図6C
図6D
図6E
図7A
図7B
図7C
図7D
図7E
図8A
図8B
図8C
図8D
図9