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

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

▶ オークマ株式会社の特許一覧

<>
  • 特開-三次元形状測定システム 図1
  • 特開-三次元形状測定システム 図2
  • 特開-三次元形状測定システム 図3
  • 特開-三次元形状測定システム 図4
  • 特開-三次元形状測定システム 図5
  • 特開-三次元形状測定システム 図6
  • 特開-三次元形状測定システム 図7
  • 特開-三次元形状測定システム 図8A
  • 特開-三次元形状測定システム 図8B
  • 特開-三次元形状測定システム 図9
  • 特開-三次元形状測定システム 図10
  • 特開-三次元形状測定システム 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024058314
(43)【公開日】2024-04-25
(54)【発明の名称】三次元形状測定システム
(51)【国際特許分類】
   G01B 11/24 20060101AFI20240418BHJP
   G01B 11/25 20060101ALI20240418BHJP
   G01B 11/245 20060101ALI20240418BHJP
【FI】
G01B11/24 K
G01B11/25 H
G01B11/245 H
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022165592
(22)【出願日】2022-10-14
(71)【出願人】
【識別番号】000149066
【氏名又は名称】オークマ株式会社
(74)【代理人】
【識別番号】110001210
【氏名又は名称】弁理士法人YKI国際特許事務所
(72)【発明者】
【氏名】片岡 章人
【テーマコード(参考)】
2F065
【Fターム(参考)】
2F065AA53
2F065BB05
2F065FF01
2F065FF04
2F065FF05
2F065FF07
2F065FF09
2F065GG12
2F065HH05
2F065HH06
2F065JJ03
2F065JJ05
2F065JJ26
2F065QQ21
2F065QQ31
2F065RR08
(57)【要約】
【課題】対象物の位置やサイズが変化する場合でも、対象物を撮像した画像から不要なデータを容易に除去できる三次元形状測定システムを提供する。
【解決手段】三次元形状測定システム10は、対象物40を撮像して、基礎画像42を取得するカメラ32と、コントローラ12と、を備え、前記コントローラ12は、複数の既知構造物の三次元形状データを予め記憶しており、前記複数の既知構造物の中から1以上の構造物を、1以上の参照構造物52として特定し、前記三次元形状データに基づいて、前記1以上の参照構造物52それぞれを所定の押し出し方向に押し出した押し出し領域56を1以上算出し、前記1以上の押し出し領域56と前記基礎画像42とに基づいて、前記基礎画像42を部分的にトリミングした演算用画像44を生成し、前記演算用画像44に基づいて、前記対象物40の形状を測定する、ように構成されている。
【選択図】図1
【特許請求の範囲】
【請求項1】
対象物を撮像して、基礎画像を取得するカメラと、
前記対象物の形状を測定するコントローラと、
を備え、前記コントローラは、
複数の既知構造物の三次元形状データを予め記憶しており、
前記複数の既知構造物の中から1以上の構造物を、1以上の参照構造物として特定し、
前記三次元形状データに基づいて、前記1以上の参照構造物それぞれを所定の押し出し方向に押し出した押し出し領域を1以上算出し、
前記1以上の押し出し領域と前記基礎画像とに基づいて、前記基礎画像を部分的にトリミングした演算用画像を生成し、
前記演算用画像に基づいて、前記対象物の形状を測定する、
ように構成されたことを特徴とする三次元形状測定システム。
【請求項2】
請求項1に記載の三次元形状測定システムであって、
前記1以上の参照構造物は、前記対象物と連動して移動または姿勢変更する構造物を含む、ことを特徴とする三次元形状測定システム。
【請求項3】
請求項1に記載の三次元形状測定システムであって、
前記コントローラは、前記カメラに対して、前記対象物を互いに異なる撮像条件で撮像した複数の基礎画像の取得を指示し、前記複数の基礎画像それぞれに対応する前記演算用画像を生成する、ように構成されており、
前記コントローラは、前記基礎画像の前記撮像条件が変更されても、前記演算用画像の生成に利用する前記1以上の参照構造物および前記1以上の押し出し領域を変更しないように構成されている、
ことを特徴とする三次元形状測定システム。
【請求項4】
請求項1に記載の三次元形状測定システムであって、
前記基礎画像の撮像方向は、常に、前記1以上の押し出し方向の一つと平行または直交する方向である、ことを特徴とする三次元形状測定システム。
【請求項5】
請求項1に記載の三次元形状測定システムであって、
前記コントローラは、
前記参照構造物が単一の場合、前記参照構造物の前記押し出し領域を対象領域として特定し、
前記参照構造物が複数の場合、複数の前記参照構造物それぞれの前記押し出し領域の論理積領域または論理和領域を前記対象領域として特定し、
前記基礎画像から前記対象領域以外の部分をトリミングして前記演算用画像を生成する、
ように構成されていることを特徴とする三次元形状測定システム。
【請求項6】
請求項5に記載の三次元形状測定システムであって、
前記コントローラは、前記押し出し方向が互いに平行な複数の前記押し出し領域の論理和領域と、前記押し出し方向が互いに直交する複数の前記押し出し領域の論理積領域と、を前記対象領域として特定する、ように構成されていることを特徴とする三次元形状測定システム。
【請求項7】
請求項1に記載の三次元形状測定システムであって、
前記1以上の参照構造物は、前記対象物が取り付けられる対象物設置装置を含み、
前記対象物の前記対象物設置装置への取り付け方向が、前記対象物設置装置の前記押し出し方向として規定されている、
ことを特徴とする三次元形状測定システム。
【請求項8】
請求項7に記載の三次元形状測定システムであって、
前記コントローラは、前記演算用画像に基づいて前記対象物の三次元形状データを生成するように構成され、
前記コントローラは、
前記対象物設置装置に取り付けられる前記対象物の特性に応じた属性を前記対象物設置装置に対応付けて予め記憶し、
前記対象物設置装置が前記参照構造物の一つとして選択された場合、前記対象物の三次元形状データに、前記対象物設置装置に対応付けられた属性を付与する、
ように構成されていることを特徴とする三次元形状測定システム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書は、対象物を撮像した画像に基づいて、対象物の形状を測定する三次元形状測定システムを開示する。
【背景技術】
【0002】
従来から、対象物を撮像した画像に基づいて、対象物の形状を測定する技術が知られている。
【0003】
例えば、特許文献1には、ステージに載置された対象物に、パターン光を照射し、対象物をカメラで撮像し、得られた画像に基づいて対象物の立体形状を表す点群データを生成する技術が開示されている。ここで、通常、カメラで撮像された画像には、対象物以外の不要な領域も含まれている。かかる不要な領域を含む画像に基づいて、点群データを生成した場合、演算量が多くなるばかりでなく、対象物の形状が誤って測定される可能性もある。そこで、特許文献1では、予め、ステージ上の空間に対して有効領域と無効領域とを識別するための領域情報を記憶しておき、有効領域に対応する点群データのみを生成している。かかる構成とすることで、対象物の形状測定に要する演算量を低減できる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2018-4277号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1の技術は、有効領域が不変であるため、対象物のサイズやカメラに対する位置が、常に一定の範囲内に収まる場合にしか利用できない。一方で、三次元形状測定システムの中には、対象物の位置やサイズが適宜、変更されるものもある。例えば、三次元形状測定システムが、工作機械に組み込まれる場合がある。この場合、三次元形状測定システムは、ワークや工具等を対象物とし、これらの形状を測定する。ここで、工作機械では、様々な品種の製品の加工を行う。製造する製品の品種が変更されるたびに、ワークや工具等の位置およびサイズが大きく変化する。また、一つのワークを加工する期間中においても、加工の進捗に応じて、ワークや工具等の位置が変化する。かかる場合には、特許文献1の技術を利用できず、対象物(ワーク等)を撮像した画像から不要領域を除去することが難しかった。
【0006】
そこで、本明細書では、対象物の位置やサイズが変化する場合でも、対象物を撮像した画像から不要なデータを容易に除去できる三次元形状測定システムを開示する。
【課題を解決するための手段】
【0007】
本明細書で開示する三次元形状測定システムは、対象物を撮像して、基礎画像を取得するカメラと、前記対象物の形状を測定するコントローラと、を備え、前記コントローラは、複数の既知構造物の三次元形状データを予め記憶しており、前記複数の既知構造物の中から1以上の構造物を、1以上の参照構造物として特定し、前記三次元形状データに基づいて、前記1以上の参照構造物それぞれを所定の押し出し方向に押し出した押し出し領域を1以上算出し、前記1以上の押し出し領域と前記基礎画像とに基づいて、前記基礎画像を部分的にトリミングした演算用画像を生成し、前記演算用画像に基づいて、前記対象物の形状を測定する、ように構成されていることを特徴とする。
【0008】
この場合、前記1以上の参照構造物は、前記対象物と連動して移動または姿勢変更する構造物を含んでもよい。
【0009】
また、前記コントローラは、前記カメラに対して、前記対象物を互いに異なる撮像条件で撮像した複数の基礎画像の取得を指示し、前記複数の基礎画像それぞれに対応する前記演算用画像を生成する、ように構成されており、前記コントローラは、前記基礎画像の前記撮像条件が変更されても、前記演算用画像の生成に利用する前記1以上の参照構造物および前記1以上の押し出し領域を変更しないように構成されていてもよい。
【0010】
また、前記基礎画像の撮像方向は、常に、前記1以上の押し出し方向の一つと平行または直交する方向でもよい。
【0011】
前記コントローラは、前記参照構造物が単一の場合、前記参照構造物の前記押し出し領域を対象領域として特定し、前記参照構造物が複数の場合、複数の前記参照構造物それぞれの前記押し出し領域の論理積領域または論理和領域を前記対象領域として特定し、前記基礎画像から前記対象領域以外の部分をトリミングして前記演算用画像を生成する、ように構成されていてもよい。
【0012】
また、前記コントローラは、前記押し出し方向が互いに平行な複数の前記押し出し領域の論理和領域と、前記押し出し方向が互いに直交する複数の前記押し出し領域の論理積領域と、を前記対象領域として特定する、ように構成されていてもよい。
【0013】
また、前記1以上の参照構造物は、前記対象物が取り付けられる対象物設置装置を含み、前記対象物の前記対象物設置装置への取り付け方向が、前記対象物設置装置の前記押し出し方向として規定されていてもよい。
【0014】
この場合、前記コントローラは、前記演算用画像に基づいて前記対象物の三次元形状データを生成するように構成され、前記コントローラは、前記対象物設置装置に取り付けられる前記対象物の特性に応じた属性を前記対象物設置装置に対応付けて予め記憶し、前記対象物設置装置が前記参照構造物の一つとして選択された場合、前記対象物の三次元形状データに、前記対象物設置装置に対応付けられた属性を付与する、ように構成されてもよい。
【発明の効果】
【0015】
本明細書で開示する三次元形状測定システムによれば、参照構造物の押し出し領域に基づいて演算用画像を生成するため、対象物の位置やサイズが変化する場合でも、対象物を撮像した画像から不要なデータを容易に除去できる。
【図面の簡単な説明】
【0016】
図1】三次元形状測定システムの構成を示すブロック図である。
図2】三次元形状測定システムの構成を示すブロック図である。
図3】対象物のモデルデータの生成の様子を示す図である。
図4】対象物の一例を示す図である。
図5】対象物を矢印A方向から撮像した場合に得られる第一基礎画像を示す図である。
図6】第一基礎画像から第一演算画像を算出する様子を示す図である。
図7】第二基礎画像から第二演算画像を算出する様子を示す図である。
図8A】マシニングセンタ用の構造物テーブルの一例を示す図である。
図8B】タレット旋盤用の構造物テーブルの一例を示す図である。
図9】参照構造物が複数ある場合における演算用画像の算出の様子を示す図である。
図10】対象物のモデルデータを生成する処理の流れを示すフローチャートである。
図11】演算用画像を生成する処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0017】
以下、図面を参照して三次元形状測定システム10の構成について説明する。図1は三次元形状測定システム10の構成を示すブロック図である。図1の例において、三次元形状測定システム10は、工作機械80と組み合わせて使用される。
【0018】
工作機械80は、製品を製造するためにワーク90に対して所定の加工を施す。かかる工作機械80の種類は、特に限定されない。例えば、工作機械80は、ワーク90をプレスするプレス装置や、ワーク90に塗装を施す塗装装置、ワーク90に対して切削加工を施す切削加工機でもよい。図1において、工作機械80は、並進可能なテーブル86を有するマシニングセンタである。この工作機械80は、主軸頭94と、テーブル86と、を含む。
【0019】
かかる工作機械80は、数値制御装置82を含む。数値制御装置82は、加工プログラム(「NCプログラム」ともいう)を解析して、ワークに対する工具経路、加工に必要な作業の工程等を、数値および符号で構成した数値情報を生成する。数値制御装置82は、この数値情報に基づいて、工作機械80の駆動を制御する。かかる数値制御装置82は、物理的には、プロセッサとメモリとを含むコンピュータである。工作機械80は、さらに、オペレータに情報を提示するとともにオペレータからの指令を受け付ける操作パネル84も含む。数値制御装置82は、有線通信または無線通信により、三次元形状測定システム10のコントローラ12と通信可能である。
【0020】
三次元形状測定システム10は、対象物40の形状を示す点群データ46および三次元形状データ48(例えば、CADデータ等)を生成する。以下では、三次元形状データを「モデルデータ」と略す。ここで、対象物40は、後述する撮像ユニット30で撮像可能な物品であれば、特に限定されない。したがって、対象物40は、例えば、ワーク90や工具92、治具等でもよい。対象物40のモデルデータ48は、数値制御装置82に送られ、各種シミュレーションや、判定に利用される。例えば、対象物40がワーク90の場合、数値制御装置82は、ワーク90のモデルデータ48に基づいて、工具92とワーク90との干渉チェックや、工具92の経路生成、加工精度の判定、対象物40の形状が基準形状と一致するかの判定、対象物40が所定の位置にあるか否かの判定等を行う。また、対象物40が工具92の場合、数値制御装置82は、工具92のモデルデータ48に基づいて、工具92の摩耗判定や、工具92の種類判定、工具92の取付状態の良否判定等を行う。
【0021】
三次元形状測定システム10は、コントローラ12と、撮像ユニット30と、を含む。撮像ユニット30は、コントローラ12から送信される撮像条件70に従って、対象物40を撮像し、基礎画像42を取得する。なお、撮像条件70は、基礎画像42を撮像する際の条件であり、例えば撮像方向や、撮像位置、撮像倍率等を含む。撮像ユニット30は、基礎画像42をコントローラ12に送信する。
【0022】
コントローラ12は、撮像ユニット30による撮像処理を制御するとともに、対象物40の形状を把握するために、基礎画像42に基づいて対象物40の点群データ46およびモデルデータ48を生成する。生成されたモデルデータ48は、数値制御装置82に送信される。また、後に詳説する通り、コントローラ12は、数値制御装置82から加工情報66を取得する。加工情報66は、工作機械80に設けられた既知構造物の制御状態を含む。すなわち、工作機械80は、テーブル86や主軸頭94等、その形状が既知の構造物を複数含む。こうした既知構造物の中には、加工の進捗に伴い、位置や姿勢が変化するものがある。加工情報66は、こうした既知構造物の位置や姿勢に関する情報を含む。
【0023】
次に、三次元形状測定システム10の構成について、より詳細に説明する。図2は、三次元形状測定システム10の構成を示すブロック図である。図2に示すように、また、上述した通り、三次元形状測定システム10は、コントローラ12と、撮像ユニット30と、を含む。
【0024】
コントローラ12は、物理的には、プロセッサ14と、メモリ16と、通信I/F22と、UI装置24と、を有したコンピュータである。この「コンピュータ」には、コンピュータシステムを一つの集積回路に組み込んだマイクロコントローラも含まれる。また、プロセッサ14とは、広義的なプロセッサを指し、汎用的なプロセッサ(例えばCPU:Central Processing Unit、等)や、専用のプロセッサ(例えばGPU:Graphics Processing Unit、ASIC:Application Specific Integrated Circuit、FPGA:Field Programmable Gate Array、プログラマブル論理デバイス、等)を含むものである。
【0025】
メモリ16は、各種データを記憶する装置で、プロセッサ14が直接アクセスする主記憶装置、および、プロセッサ14が入出力チャネルを介してアクセスする補助記憶装置の双方を含む。主記憶装置は、例えば、半導体メモリを含む。補助記憶装置は、例えば半導体メモリや、磁気記憶装置を含む。
【0026】
メモリ16は、モデルDB18および構造物テーブル20を記憶している。モデルDB18は、複数の既知構造物それぞれのモデルデータを記憶したデータベースである。既知構造物は、予め形状が既知の構造物であれば、特に限定されない。したがって、既知構造物は、例えば、テーブル86、主軸頭94、バイス88、カバー、および、固定台の少なくとも一つを含んでもよい。また、工作機械80が旋盤または複合加工機等の場合、既知構造物は、上記に替えて、または、加えて、ワーク主軸、タレット、刃物台、心押台の少なくとも一つを含んでもよい。こうした既知構造物のモデルデータを、コントローラ12が生成してもよいし、他のコンピュータ(例えば数値制御装置82等)が生成してもよい。他のコンピュータが生成したモデルデータは、通信I/F22を介してコントローラ12に送信され、モデルDB18に登録される。構造物テーブル20は、複数の既知構造物それぞれの情報を記録したテーブル86である。この構造物テーブル20に記録される情報については、後に詳説する。
【0027】
通信I/F22は、外部の他の電子機器と、有線通信または無線通信により、データを送受する。通信I/F22は、例えば、数値制御装置82および撮像ユニット30と通信する。UI装置24は、オペレータに各種情報を提示するとともに、オペレータからの指示を受け付ける。かかるUI装置24は、例えば、ディスプレイやスピーカ等の出力装置と、キーボードやマウス、マイク、タッチパネル等の入力装置と、を含む。なお、本例では、UI装置24を、コントローラ12の構成要素として記載しているが、UI装置24の一部または全ては、コントローラ12とは、完全に異なる別の装置として構成されてもよい。例えば、UI装置24の一部機能は、オペレータが所有するとともにコントローラ12と通信可能な情報端末(例えばスマートホン等)のユーザインターフェースで実現されてもよい。また、コントローラ12は、単一のコンピュータである必要はなく、物理的に離隔した複数のコンピュータを組み合わせて構成されてもよい。
【0028】
撮像ユニット30は、工作機械80の加工室内に存在する対象物40を撮像する。撮像ユニット30は、図2に示すように、カメラ32と、光源34と、を含む。カメラ32は、対象物40を撮像し、基礎画像42を取得する。カメラ32は、基礎画像42をコントローラ12に送信する。なお、カメラ32は、一つでもよいし、複数でもよい。光源34は、対象物40を照射する。かかる光源34は、対象物40を単純に照らし出すライトでもよいし、対象物40に所定のパターン光を照射するプロジェクタでもよい。
【0029】
次に、三次元形状測定システム10による対象物40のモデルデータ48の生成について図3を参照して説明する。対象物40のモデルデータ48を生成する場合、コントローラ12は、撮像ユニット30を駆動して、対象物40の基礎画像42を取得する。このとき、対象物40の一部の面または全ての面について基礎画像42が得られるように、カメラ32に対する対象物40の相対的な位置および角度を変更して、複数回撮像を行う。なお、カメラ32に対する対象物40の相対的な位置および角度を変更するために、対象物40を動かしてもよいし、カメラ32を動かしてもよいし、対象物およびカメラ32の双方を動かしてもよい。また、撮像ユニット30は、専用の可動機構を有してもよい。また、撮像ユニット30は、工作機械80の可動体(例えば、マシニングセンタにおける主軸頭94、旋盤における刃物台等)に取り付けられてもよい。この場合、可動体が動くことで、撮像ユニット30の対象物40に対する相対的な位置および角度を変更できる。
【0030】
コントローラ12は、得られた基礎画像42を部分的にトリミングし、演算用画像44を生成する。図3の上段は、2つの基礎画像42から抽出された2つの演算用画像44a,44bを示している。この演算用画像44の生成手順については後述する。次に、コントローラ12は、演算用画像44に基づいて、対象物40の点群データ46を生成する。図3の例では、コントローラ12は、対象物40を第一の方向から撮像した演算用画像44aと、対象物40を第一の方向と異なる第二の方向から撮像した演算用画像44bと、を取得する。コントローラ12は、この二つの演算用画像44a,44bそれぞれから、対象物40の点群データ46a,46bを生成する。コントローラ12は、複数の点群データ46a,46bを合成したうえで、合成後の点群データ46に基づいてモデルデータ48を生成する。
【0031】
なお、点群データ46は、光切断法または位相シフト法または三角法またはステレオ法またはこれらの組み合わせで、算出される。なお、光切断法または位相シフト法を用いる場合、光源34は、これらの手法に適したパターン光を対象物40に照射する。また、三角法を用いる場合、撮像ユニット30は、互いに離隔して配置された2以上のカメラ32で、一つの対象物40を並行して撮像する。
【0032】
また、点群データ46からモデルデータ48を生成する手順は、従来技術を利用できるため、ここでの詳説は、省略する。また、上記の例では、複数の点群データ46a,46bを合成した後にモデルデータ48を生成しているが、この順序は、逆でもよい。例えば、複数の点群データ46a,46bそれぞれに基づいて、サーフェースデータを生成し、その後、複数のサーフェースデータを合成して、モデルデータ48を生成してもよい。
【0033】
ところで、上述した通り、本例では、基礎画像42を部分的にトリミングして演算用画像44を生成し、この演算用画像44に基づいて点群データ46を生成する。このように演算用画像44を生成するのは、誤測定を防止し、また、演算量を低減するためである。すなわち、通常、カメラ32で取得される基礎画像42には、対象物40以外の像も多数含まれている。かかる基礎画像42から直接、点群データ46を算出した場合、対象物40の形状が誤って測定される可能性がある。また、この場合、対象物40と関係ない箇所の点も算出する必要があり、演算量が多くなる。そこで、本例では、基礎画像42のうち不要部分をトリミングした演算用画像44を生成している。
【0034】
以下、この演算用画像44の生成について説明する。本例においては、既知構造物のモデルデータを利用して演算用画像44を生成する。図4図7は、演算用画像44の生成の様子を示す模式図である。
【0035】
本例においては、特定の既知構造物を参照構造物52とし、この参照構造物52を所定の押し出し方向に押し出した押し出し領域56に基づいて演算用画像44を生成する。すなわち、上述した通り、工作機械80には、テーブル86やバイス88などの既知構造物が多数設けられている。対象物40の形状を測定する場合、オペレータは、この複数の既知構造物のうち、1以上の構造物を参照構造物52として指定する。コントローラ12は、参照構造物52を所定の押し出し方向に押し出した押し出し領域56を演算する。そして、得られた押し出し領域56を基礎画像42に重ね合わせ、押し出し領域56の内側の領域を対象領域60として残し、押し出し領域56の外側の領域を不要領域としてトリミングする。このトリミングにより得られる画像が演算用画像44となる。
【0036】
例えば、図4に示すように、テーブル86の上にバイス88が固定され、バイス88に対象物40であるワーク90が、取り付けられているとする。なお、テーブル86は、加工の進捗に伴い、並進する。こうしたテーブル86の動きは数値制御装置82によって制御される。バイス88は、手動でテーブル86に固定される。バイス88のテーブル86に対する相対位置は、工作機械80に設けられたセンサ(図示せず)により、予め測定される。数値制御装置82からコントローラ12に送られる加工情報66は、こうしたテーブル86の位置および姿勢に関する情報、および、バイス88の固定位置に関する情報を含む。
【0037】
図4に示す状態で、バイス88が、参照構造物52として選択され、矢印A方向が、押し出し方向として特定された場合を考える。この場合、コントローラ12は、押し出し方向と平行な方向または直交する方向を、撮像方向として撮像ユニット30に指示する。図5は、対象物40であるワーク90を矢印A方向から撮像した場合に得られる第一基礎画像42aである。図5から明らかな通り、この場合、第一基礎画像42aには、ワーク90以外の像も多数含まれている。なお、基礎画像42の解像度を向上するために、もしくは、1ショットの画角より広い領域を基礎画像とするために、同一方向かつ互いに異なる位置から対象物40を複数回撮像し、得られた複数の画像を合成した画像を、一つの基礎画像42として取り扱ってもよい。
【0038】
コントローラ12は、第一基礎画像42aから不要部分を除去するために、参照構造物52であるバイス88を押し出し方向(すなわち矢印A方向)に押し出した押し出し領域56を演算する。そして、得られた押し出し領域56を第一基礎画像42aに重ね合わせる。図6は、第一基礎画像42aと押し出し領域56とを重ね合わせた様子を示す図である。コントローラ12は、押し出し領域56の内側を対象領域60、押し出し領域56の外側を不要領域として特定する。図6において、クロスハッチングを施した領域が不要領域である。コントローラ12は、第一基礎画像42aのうち対象領域60のみを抽出した画像、換言すれば、第一基礎画像42aから不要領域をトリミングした画像を、第一演算用画像44aとして算出する。その後は、この第一演算用画像44aに基づいて、対象物40の点群データ46を生成する。
【0039】
ワーク90を別の方向から撮像して得られる別の基礎画像42に対しても、同様の処理を施す。例えば、図7は、ワーク90を矢印B方向から撮像した場合に得られる第二基礎画像42bを示す図である。この場合も、コントローラ12は、バイス88を押し出し方向(すなわち矢印A方向)に押し出した押し出し領域56を演算し、得られた押し出し領域56を第二基礎画像42bに重ねあわせる。そして、押し出し領域56の内側を対象領域60、押し出し領域56の外側を不要領域として特定する。図7において、クロスハッチングを施した領域が不要領域である。コントローラ12は、第二基礎画像42bのうち対象領域60のみを抽出した画像を、第二演算用画像44bとして算出する。その後、コントローラ12は、この第二演算用画像44bに基づいて、点群データ46を生成する。
【0040】
以上の説明から明らかな通り、本例では、基礎画像42を部分的にトリミングした演算用画像44を算出し、この演算用画像44に基づいて点群データ46を生成する。これにより点群データ46の算出に必要な演算量を低減でき、また、対象物40以外の物体を対象物40として誤測定するリスクを低減できる。
【0041】
ところで、基礎画像42の不要部分をトリミングする場合、他の技術も考えられる。例えば、特許文献1では、基礎画像42から演算用画像44として抽出すべき領域を予め記憶している。しかし、特許文献1の技術の場合、記憶されている領域が不変であるため、対象物40の位置やサイズが大きく変化すると、演算用画像44を適切に抽出できないという問題がある。一方、本例の場合、対象物40に応じて、オペレータが参照構造物52を指定するため、対象物40の位置やサイズが大きく変化しても、対象領域60を適切に設定できる。
【0042】
また、別の技術として、オペレータが、基礎画像42を観察しながら、マウス等の入力手段を用いて、対象領域60となる矩形範囲指定する技術も考えられる。以下では、このようにオペレータが対象領域60を直接指定する技術を「直接指定方式」と呼ぶ。直接指定方式によれば、対象物40の位置やサイズが大きく変化したとしても、対象領域60を適切に設定できる。しかし、直接指定方式の場合、オペレータは、複数の基礎画像42それぞれについて対象領域60の指定作業を行わなければならず、手間であった。例えば、図6および図7における第一演算用画像44aおよび第二演算用画像44bを直接指定方式で指定する場合を考える。この場合、オペレータは、対象領域60の指定作業を2回行わなければならず、オペレータの手間が多くなる。
【0043】
一方、本例のように、参照構造物52の押し出し領域56を対象領域60として抽出する技術の場合、複数の基礎画像42から複数の演算用画像44を算出するために必要なオペレータの手間を削減できる。例えば、図6および図7における第一演算用画像44aおよび第二演算用画像44bを算出する場合を考える。本例の場合、オペレータは、最初に、参照構造物52(すなわちバイス88)および押し出し方向(すなわち矢印A方向)を指定さえすれば、撮像方向が変化しても、適切な演算用画像44を算出できる。結果として、本例によれば、オペレータの手間を、直接指定方式に比べて大幅に低減できる。
【0044】
さらに、本例では、参照構造物52として、対象物40とともに動く構造物を選択している。すなわち、図4の例では、参照構造物52として、ワーク90が取り付けられたバイス88が選択されている。そのため、テーブル86の位置および姿勢の変化に伴い、ワーク90(すなわち対象物40)の位置および姿勢が変化したとしても、ワーク90に対するバイス88(すなわち参照構造物52)の相対位置は変化しない。そして、この場合、ワーク90の位置および姿勢が変化しても、演算用画像44を適切に抽出できる。
【0045】
特に、工作機械80では、一つのワーク90の形状測定を、加工の進捗に応じて、複数回行うことがある。例えば、加工開始前、荒加工完了後、仕上げ加工完了後のそれぞれのタイミングで、一つのワーク90の形状を測定する場合がある。このとき、タイミングによって、ワーク90の位置が変化する可能性がある。参照構造物52として対象物40とともに動く構造物を選択しておけば、ワーク90の位置が変化した場合でも、参照構造物52を再度指定しなくても、演算用画像44を適切に抽出できる。結果として、オペレータの手間を大幅に軽減できる。
【0046】
次に、押し出し方向の決定について説明する。繰り返し説明する通り、本例では、参照構造物52を押し出し方向に押し出した押し出し領域56に基づいて演算用画像44を抽出している。ここで、押し出し方向は、オペレータにより指定されてもよいし、予め規定されていてもよい。例えば、対象物40が取り付けられる対象物設置装置の場合、対象物40の取り付け方向を押し出し方向として事前に規定してもよい。ここで、対象物40がワークの場合、バイス88、テーブル86、および、ワーク主軸等が、対象物設置装置に該当する。そして、例えば、ワーク90は、A方向からバイス88に取り付けられるため、A方向をバイス88の押し出し方向として事前に規定してもよい。同様に、旋盤において、ワーク90は、ワーク回転軸方向からワーク主軸に取り付けられるため、ワーク回転軸方向をワーク主軸の押し出し方向として事前に規定してもよい。
【0047】
また、対象物40が工具92の場合、マシニングセンタにおける主軸頭94や、タレット旋盤におけるタレット等が対象物設置装置に該当する。ただし、通常、タレットは、工具取り付け部を複数有している。換言すれば、タレットへの対象物40(工具)の取り付け方向は、複数存在する。かかる場合、コントローラ12は、複数の取り付け方向を押し出し方向の候補としてオペレータに提示してもよい。オペレータは、複数の候補の中から一つの押し出し方向を選択する。
【0048】
さらに、別の形態として、オペレータが押し出し方向を指定してもよい。押し出し方向の指定手順は、特に限定されない。例えば、オペレータは、二つの点の座標を指定し、コントローラ12は、この二つの点を通る直線と平行な方向を押し出し方向として特定してもよい。また、別の形態として、オペレータは、特定の平面を指定し、コントローラ12は、指定された面に対して直交する方向を押し出し方向として特定してもよい。
【0049】
構造物テーブル20には、既知構造物と、押し出し方向と、が対応付けて記録されている。図8Aは、マシニングセンタ用の構造物テーブル20の一例を示す図であり、図8Bは、タレット旋盤用の構造物テーブル20の一例を示す図である。コントローラ12は、オペレータにより参照構造物52が指定された場合、当該参照構造物52を構造物テーブル20に照らし合わせ、当該参照構造物52の押し出し方向を特定する。構造物テーブル20において、参照構造物52の押し出し方向として単一の方向が記録されている場合、コントローラ12は、当該単一の方向を押し出し方向として自動的に決定する。また、構造物テーブル20において、押し出し方向として複数の方向が記録されている場合、コントローラ12は、この複数の方向を押し出し方向の候補としてオペレータに提示する。また、構造物テーブル20において、押し出し方向として「オペレータ指定」が記録されている場合、コントローラ12は、オペレータに対して押し出し方向の指定を促す。
【0050】
次に、参照構造物52の指定について説明する。上述した通り、本例では、オペレータが1以上の参照構造物52を指定する。この参照構造物52の指定の形態は、特に限定されない。したがって、参照構造物52の指定のために、UI装置24のディスプレイに既知構造物の画像(例えばイラストやCG画像等)を表示してもよい。例えば、参照構造物52の指定をオペレータから受け付ける場合、コントローラ12は、対象物40の撮像画像を取得し、この撮像画像に、参照構造物52として指定可能な既知構造物の画像を重畳してディスプレイに表示してもよい。この場合、オペレータは、参照構造物52として利用したい既知構造物の画像を選択すればよい。かかる構成とすることで、オペレータは、参照構造物52に適した既知構造物を視覚的に判断できる。もちろん、こうした指定手順に替えて、他の指定手順を採用してもよい。例えば、オペレータは、参照構造物52として利用したい既知構造物のモデルデータファイルのファイルパスを入力してもよい。
【0051】
また、指定される参照構造物52は、一つに限らず、複数でもよい。複数の参照構造物52が選択された場合、コントローラ12は、複数の押し出し領域56の論理和または論理積をとり、この論理演算により得られる領域を対象領域60として特定する。
【0052】
より具体的に説明すると、コントローラ12は、複数の参照構造物52の押し出し領域56が互いに平行な場合、複数の押し出し領域56の論理和領域を対象領域60として特定する。また、コントローラ12は、複数の参照構造物52の押し出し領域56が互いに非平行である場合、複数の押し出し領域56の論理積領域を対象領域60として特定する。
【0053】
例えば、図9に示すように、テーブル86の上にワーク90が載置されており、ワーク90の側方に、複数のカバー96a~96dが配置されている場合を考える。テーブル86の押し出し方向は、Z方向(すなわち紙面垂直方向)であり、カバー96a~96dの押し出し方向は、Y方向(すなわち紙面上下方向)である。かかる場合において、ワーク90の形状を測定するために、テーブル86とカバー96bとカバー96cとが参照構造物52として選択されたとする。
【0054】
この場合、コントローラ12は、押し出し方向が互いに平行な参照構造物52が同一グループに属するように、複数の参照構造物52を、押し出し方向に基づいてグルーピングする。続いて、コントローラ12は、同一グループに属する参照構造物52の押し出し領域56の論理和を演算する。続いて、コントローラ12は、1以上のグループそれぞれの押し出し領域56の論理積を演算し、演算で得られた領域を対象領域60とする。
【0055】
図9の例において、コントローラ12は、二つのカバー96b,96cが属する第一グループと、テーブル86が属する第二グループと、にグルーピングする。続いて、コントローラ12は、カバー96bの押し出し領域56bと、カバー96cの押し出し領域56cと、の論理和領域57を求める。その後、コントローラ12は、この論理和領域57と、テーブル86の押し出し領域56tと、の論理積領域を対象領域60として算出する。図9の下段において、ハッチングが施されていない領域が対象領域60である。なお、本例では、押し出し方向に基づいて、論理和および論理積のいずれを算出するかを自動的に決定しているが、オペレータが、こうした決定を行ってもよい。したがって、オペレータが希望する場合には、押し出し方向が互いに異なる二つの押し出し領域56の論理和を演算してもよい。
【0056】
ところで、参照構造物52の中には、対象物40が取り付けられる対象物設置装置がある。かかる対象物設置装置に、予め、または、オペレータの指示により、対象物40のモデルデータ48に付与すべき属性情報を関連付けてもよい。
【0057】
すなわち、三次元形状測定システム10は、対象物40のモデルデータ48を生成する。このモデルデータ48は、干渉チェック等のシミュレーションに利用される。こうしたシミュレーションを適切に行うためには、対象物40のモデルデータ48に、予め、種々の属性情報、例えば、切削可能か否か等の情報が付与されていることが求められる。しかし、こうした属性情報を、モデルデータ48の生成の度に、オペレータが設定することは手間であった。
【0058】
そこで、対象物設置装置に、属性情報を、予め関連付けていてもよい。対象物設置装置が参照構造物52として選択された場合、コントローラ12は、参照構造物52(すなわち対象物設置装置)を利用して生成されたモデルデータ48に、属性情報を自動的に付与する。こうした属性情報は、例えば、構造物テーブル20に事前に記録されてもよい。図8A図8Bの例の場合、属性情報として削り取りの可否が記録されている。テーブル86やバイス88等のようにワーク90が取り付けられる対象物設置装置は、削り取りが「可」として記録されている。そのため、コントローラ12は、参照構造物52としてテーブル86が選択された場合、当該参照構造物52(テーブル86)を利用して生成されたモデルデータ48に削り取り「可」の属性情報を自動的に付与する。また、図8の例の場合、主軸頭94やタレット等のように、工具92が取り付けられる対象物設置装置は、削り取りが「不可」として記録されている。そのため、コントローラ12は、参照構造物52として主軸頭94が選択された場合、当該参照構造物52(主軸頭94)を利用して生成されたモデルデータ48に削り取り「不可」の属性情報を自動的に付与する。かかる構成とすることで、オペレータの手間をより軽減できる。なお、こうした属性情報は、構造物テーブル20に事前記録するのではなく、オペレータが指定してもよい。
【0059】
次に、対象物40のモデルデータ48を生成する処理の流れについて図10図11を参照して説明する。対象物40の三次元形状データ48を生成したい場合、コントローラ12は、参照構造物52および押し出し方向を決定する(S10)。参照構造物52は、オペレータにより指定される。また、指定される参照構造物52は、一つでもよいし複数でもよい。押し出し方向は、コントローラ12が自動的に決定してもよいし、オペレータが指定してもよい。
【0060】
次に、コントローラ12は、決定された押し出し方向に基づいて、対象物40の撮像条件70を決定する(S12)。ここで、コントローラ12は、撮像方向ごとに、一つの撮像条件70を決定する。したがって、対象物40を五つの撮像方向から撮像する場合、コントローラ12は、五つの撮像条件70を決定する。また、通常、撮像方向、ひいては、撮像条件70は、複数となる。すなわち、対象物40の全体の形状を把握するためには、撮像方向を変えながら、対象物40を複数回、撮像する必要がある。そこで、ステップS12において、コントローラ12は、撮像方向が互いに異なる複数の撮像条件70を決定する。また、コントローラ12は、押し出し方向に対して平行する方向および直交する方向を撮像方向として決定する。
【0061】
撮像条件70は、少なくとも撮像方向を含み、さらに、撮像位置、撮像倍率、および、撮像回数の少なくとも一つを含んでもよい。ここで、上述した通り、一つの撮像方向に関して、参照構造物52を複数回撮像してもよい。例えば、カメラ32の光軸をA方向と平行に保ったまま、カメラ32を並進させながら、参照構造物52を複数回撮像してもよい。そして、得られた複数の画像を合成して、一つの基礎画像42としてもよい。そのため、コントローラ12は、撮像方向ごとに、参照構造物52全体の像が得られるような撮像位置、撮像倍率、撮像回数を撮像条件70として決定してもよい。なお、参照構造物52が不動で位置固定の場合、当該参照構造物52の位置は、モデルDB18に記録されている。一方、参照構造物52の位置が変化する場合、例えば、参照構造物52が主軸頭94等である場合、当該参照構造物52の位置は、数値制御装置82から送られる加工情報66に基づいて特定される。
【0062】
続いて、コントローラ12は、パラメータiを、初期値「1」に設定する(S14)。その後、コントローラ12は、撮像ユニット30に対して、i番目の撮像条件70に基づく撮像を指示し、i番目の基礎画像42を取得する(S16)。なお、繰り返し述べる通り、i番目の基礎画像42は、1回の撮像で取得してもよいし、2以上の画像を合成して生成されてもよい。i番目の基礎画像42が得られれば、コントローラ12は、ステップS10で決定した参照構造物52および押し出し方向を利用して、基礎画像42からi番目の演算用画像44を抽出する(S18)。
【0063】
具体的には、図11に示すように、コントローラ12は参照構造物52のモデルデータと、加工情報66と、に基づいて、機械座標における参照構造物52の位置および形状を特定する(S30)。次に、撮像条件70に基づいて、参照構造物52の位置を機械座標からカメラ座標に変換する(S32)。
【0064】
参照構造物52のカメラ座標が取得できれば、コントローラ12は、1以上の参照構造物52それぞれについて、基礎画像42における押し出し領域56を特定する(S34)。さらに、コントローラ12は、算出された1以上の押し出し領域56に基づいて対象領域60を特定する(S36)。具体的には、押し出し領域56が単一の場合、コントローラ12は、当該押し出し領域56を対象領域60として特定する。一方、押し出し領域56が複数の場合、コントローラ12は、押し出し方向に基づいて、複数の押し出し領域56の論理和または論理積を求め、論理演算で得られた領域を対象領域60として特定する。
【0065】
対象領域60が特定できれば、コントローラ12は基礎画像42から対象領域60のみを演算用画像44として抽出する(S38)。演算用画像44が抽出できれば、図10のステップS20に進む。ステップS20において、コントローラ12は、i番目の演算用画像44から対象物40の点群データ46を算出する。算出された点群データ46は、撮像条件70とともにメモリ16に一時記憶される。
【0066】
次に、コントローラ12はパラメータiと、数値imaxと、を比較する(S22)。なお、imaxは、ステップS12で特定された撮像条件70、ひいては、撮像方向の個数である。imaxは、通常、2以上の自然数である。i<imaxの場合、パラメータiをインクリメントしたうえで(S24)、ステップS16~S22を再度繰り返す。一方、i≧imaxとなれば、コントローラ12は、メモリ16に一時記憶されているimax個の点群データ46を合成したうえで(S26)、対象物40のモデルデータ48を生成する(S28)。
【0067】
以上の説明から明らかな通り、本例では、基礎画像42の撮像方向が変更されても、演算用画像44の生成に利用する参照構造物52および押し出し領域56を変更しない。そのため、オペレータは、ステップS10で、参照構造物52のみを指定、または、参照構造物52と押し出し方向の双方を指定するだけでよく、複数の演算用画像44を生成するために必要なオペレータの手間を軽減できる。
【0068】
ただし、これまで説明した構成はいずれも一例であり、1以上の参照構造物52それぞれを、対応する押し出し方向に押し出して、1以上の押し出し領域56を算出し、この1以上の押し出し領域56に基づいて、基礎画像42を部分的にトリミングした演算用画像44を生成するのであれば、その他の構成は適宜変更されてもよい。例えば、撮像方向が変化するたびに、参照構造物52を指定するようにしてもよい。また、上述の例においては、押し出し領域56の内側を対象領域60として特定している。しかし、押し出し領域56の内側をトリミング領域とし、押し出し領域56の外側を対象領域60として特定してもよい。
【0069】
また、三次元形状測定システム10は、工作機械80ではなく、他の装置と組み合わせて使用されてもよい。三次元形状測定システム10は、いずれの装置とも組み合わされることなく、単独で使用されてもよい。また、これまでの説明では、三次元形状測定システム10を、工作機械80と独立した別の装置として説明している。しかし、三次元形状測定システム10は、工作機械80と一体化されてもよい。例えば、工作機械80の数値制御装置82および操作パネル84により、三次元形状測定システム10のコントローラ12を構成し、撮像ユニット30は、工具92またはワーク90の替わりに、工作機械80に設けられた保持装置に取り付けられてもよい。
【符号の説明】
【0070】
10 三次元形状測定システム、12 コントローラ、14 プロセッサ、16 メモリ、18 モデルDB、20 構造物テーブル、22 通信I/F、24 UI装置、30 撮像ユニット、32 カメラ、34 光源、40 対象物、42 基礎画像、44 演算用画像、46 点群データ、48 三次元形状データ(モデルデータ)、52 参照構造物、56 押し出し領域、57 論理和領域、60 対象領域、66 加工情報、70 撮像条件、80 工作機械、82 数値制御装置、84 操作パネル、86 テーブル、88 バイス、90 ワーク、92 工具、94 主軸頭、96 カバー。
図1
図2
図3
図4
図5
図6
図7
図8A
図8B
図9
図10
図11