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

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

▶ インクビット, エルエルシーの特許一覧

<>
  • 特許-積層製造のための表面の再構築 図1
  • 特許-積層製造のための表面の再構築 図2
  • 特許-積層製造のための表面の再構築 図3
  • 特許-積層製造のための表面の再構築 図4
  • 特許-積層製造のための表面の再構築 図5
  • 特許-積層製造のための表面の再構築 図6
  • 特許-積層製造のための表面の再構築 図7
  • 特許-積層製造のための表面の再構築 図8
  • 特許-積層製造のための表面の再構築 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-27
(45)【発行日】2024-10-07
(54)【発明の名称】積層製造のための表面の再構築
(51)【国際特許分類】
   B29C 64/393 20170101AFI20240930BHJP
   B29C 64/112 20170101ALI20240930BHJP
   B33Y 50/02 20150101ALI20240930BHJP
【FI】
B29C64/393
B29C64/112
B33Y50/02
【請求項の数】 2
(21)【出願番号】P 2021539514
(86)(22)【出願日】2020-01-08
(65)【公表番号】
(43)【公表日】2022-04-21
(86)【国際出願番号】 US2020012714
(87)【国際公開番号】W WO2020146481
(87)【国際公開日】2020-07-16
【審査請求日】2022-12-27
(31)【優先権主張番号】62/789,780
(32)【優先日】2019-01-08
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】521165035
【氏名又は名称】インクビット, エルエルシー
【氏名又は名称原語表記】INKBIT, LLC
(74)【代理人】
【識別番号】100117606
【弁理士】
【氏名又は名称】安部 誠
(72)【発明者】
【氏名】チェン, デサイ
(72)【発明者】
【氏名】マトゥシック, ウォーチエック
【審査官】和瀬田 芳正
(56)【参考文献】
【文献】米国特許出願公開第2018/0297113(US,A1)
【文献】米国特許出願公開第2018/0169953(US,A1)
【文献】中国特許出願公開第107498874(CN,A)
【文献】特表2017-528342(JP,A)
【文献】国際公開第2016/042810(WO,A1)
【文献】特開2012-213970(JP,A)
【文献】Pitchaya Sitthi-Amorn,MultiFab: A Machine Vision Assisted Platform for Multi-material 3D Printing,ACM Transactions on Graphics,2015年08月,Volume 34, Issue 4, Article 129,pp. 1-11,https://doi.org/10.1145/2766962
(58)【調査した分野】(Int.Cl.,DB名)
B29C 64/00-64/40
B33Y 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
オブジェクトの積層造形中に前記オブジェクトに関する推定深度データを決定する方法であって:
前記オブジェクトをスキャンすることにより、前記オブジェクトの領域に対応するスキャンデータを生成すること、ここで前記オブジェクトをスキャンすることは、前記オブジェクトを連続スキャンして連続スキャンデータを生成することを含み、前記オブジェクトの前記領域上における材料層の介在する積層造形は、前記オブジェクトの連続スキャンの間に生じる;及び、
前記オブジェクトの連続スキャンを行った後、前記連続スキャンデータを組み合わせることにより、前記オブジェクトの表面を表す推定深度データを決定すること;
を含む方法。
【請求項2】
前記推定深度データをフィードバックループで使用して、前記推定深度データによって表される前記オブジェクトの表面上の前記材料層の積層造形を制御すること、を更に含む、請求項1に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2019年1月8日に出願された米国仮特許出願第62/789,780号明細書の利益を主張するものであり、その内容は、参照により本明細書に援用される。
【0002】
本発明は、積層製造中の表面の再構築に関する。
【背景技術】
【0003】
積層製造は、オブジェクトが材料の選択的追加によって造形されることを可能にする一連の方法である。一般的な積層製造プロセスは、デジタルモデル(例えば、STLファイルを使用して表される)を一連の層にスライスすることによって機能する。次に、これらの層は、底部から最上部まで1つずつ層を堆積する造形装置に送られる。積層製造は、自動車、航空宇宙、医療デバイス、調剤及び工業用工具を含む様々な市場で急速に支持を得ている。
【0004】
インクジェット3Dプリンティングは、プリントヘッドが、印刷可能な材料(インクとも呼ばれる)の液滴を堆積させる積層製造の方法である。プリントヘッドは、一般的に、ガントリーシステム上に取り付けられ、ビルドボリュームの異なる場所において、印刷可能な液体マトリクス材料を堆積できるようにする。ビルドプラットフォームは、定置型であり得るプリントヘッドに対して移動することもできる。印刷可能な液体マトリクス材料は、UV又は可視光放射を用いて固化される。
【0005】
複数のベース材料を用いてオブジェクトを構築するために、複数のプリントヘッドが1つのシステム内で使用され得る。例えば、異なる光学的特性、機械的特性、熱的特性、電磁的特性を有する材料が使用され得る。これらの材料は、広範囲の材料特性を有する複合材料を実現するために組み合わされ得る。
【0006】
表面再構築は、様々なマシンビジョンアプリケーションにとって重要である。幾つかの例では、表面を再構築するために、センサシステムを使用して表面の深度(例えば、オブジェクトの上方にあるセンサとオブジェクトの表面との間の距離)を測定する。オブジェクトが造形されているプラットフォームからの既知の距離が与えられると、オブジェクトの厚さは表面の深度に基づいて決定され得る。しかし、深度測定に基づく表面再構築は、潜在的に信頼性を欠く。例えば、センサは、曖昧なデータ又は測定誤差が大きいデータを受信し得る(例えば、測定値と矛盾しない深度に関する値が2つ以上存在する可能性があるか、又は正しい深度値における信号が弱く、測定誤差が大きくなる可能性がある)。
【発明の概要】
【課題を解決するための手段】
【0007】
ある態様では、一般に、1つ又は複数の層の堆積を介在させて測定された深度の追跡は、表面再構築の精度を向上させる方法を提供する。例えば、スキャンデータと組み合わせた各層の所望の厚さ又は予測される厚さの知識が統合されて、単一のスキャンのみのスキャンデータから得られるものよりも高い精度をもたらす。このような正確な表面再構築の1つの用途は、スキャニング後に堆積される1つ又は複数の後続の層の所望の厚さが、表面深度の推定及び造形されているオブジェクトのモデルから決定されるフィードバック構成におけるものである。表面深度推定の精度を高めることにより、オブジェクトの造形の精度が向上され得る。
【0008】
ある態様では、一般に、積層造形中にオブジェクトに関する推定深度データを決定する方法は、オブジェクトをスキャンして、オブジェクトの領域に対応するスキャンデータを生成することを含む。このスキャンは、オブジェクトを連続スキャンして、連続スキャンデータを生成することを含み、オブジェクトの領域上における材料層の介在する積層造形は、オブジェクトの少なくとも幾つかの連続スキャン間に生じる。連続スキャンデータを組み合わせることにより、連続スキャニング後、オブジェクトの表面を表す推定深度データが決定される。
【0009】
態様は、以下の特徴の1つ又は複数を含み得る。
【0010】
連続スキャンデータを統合することは、それぞれのスキャンデータから推定連続深度データを決定すること、及び、スキャニング後に回帰及び確率ベースの手順の少なくとも一方を推定連続深度データに適用して推定深度データを生じさせること、を含む。幾つかの例では、介在する積層造形に関連する予測深度変化データが決定され、連続スキャニング後に推定深度データを決定することは、連続スキャンデータ及び予測深度変化データを統合することを含む。幾つかの例では、予測深度変化データを決定することは、それぞれの介在する積層造形に関連する材料層の平均厚さを決定することを含む。
【0011】
本方法は、介在する積層造形に関連する深度変化の統計的表現を決定することをさらに含み、連続スキャニング後に推定深度データを決定することは、連続スキャンデータと深度変化の統計的表現とを組み合わせて深度推定を生成することを含む。
【0012】
連続スキャンデータを組み合わせることにより、連続スキャニング後にオブジェクトの表面を表す推定深度データを決定することは、オブジェクトの事前モデルをさらに使用する。
【0013】
オブジェクトをスキャンしてスキャンデータを生成することは、オブジェクトの領域にわたってスキャンデータを空間的に平滑化することを含む。
【0014】
態様は、以下の利点の1つ又は複数を有し得る。
【0015】
本明細書に記載される態様は、プリンティングプロセス中、連続するスキャン間に存在する時間コヒーレンスを有利に使用して、造形中のオブジェクトの経時的な向上した表面再構築を決定する。この時間情報が(部分的)デジタルモデルによるオブジェクトの予測表面と統合されることにより、各3Dスキャンの表面再構築がさらに向上され得る。
【0016】
本発明の他の特徴及び利点は、以下の説明及び特許請求の範囲から明らかである。
【図面の簡単な説明】
【0017】
図1】例示的積層造形システムである。
図2】深度再構築手順のフローチャートである。
図3】特定の(x,y)座標における連続スキャンデータである。
図4図3の連続スキャンデータの削減バージョンである。
図5図4に示されるデータの削減バージョンのシフトされたバージョンである。
図6図5に示されるデータのシフトされたバージョンのフィルタリングされたバージョンである。
図7図6に示されるデータのフィルタリングされたバージョンから決定されたエネルギー画像/アレイである。
図8図7に示されるエネルギー画像/アレイの最適経路である。
図9】特定の(x,y)座標に関する連続スキャンデータ、予測深度シーケンス及び再構築された深度シーケンスを示す。
【発明を実施するための形態】
【0018】
1 一般的なシステムの概要
以下の記載は、例えば、図1に示されるような噴射ベースの3Dプリンタ100を使用する積層造形に関する。プリンタ100は、部分的に造形されたオブジェクト121上に層を堆積させるために、材料を発射するジェット120(インクジェット)を使用する。図1に示されたプリンタでは、オブジェクトは、ビルドプラットフォーム130上で造形され、ビルドプラットフォーム130は、連続層を形成するために、ラスタのようなパターンでジェットに関連して(すなわちx-y平面に沿って)移動し、またこの例では、ジェットと、部分的に造形されたオブジェクト121の表面との望ましい分離を維持するためにジェットに対して(すなわちz軸に沿って)移動するように制御される。図示されるように、複数のジェット122、124が存在し、1つのジェット122は、オブジェクトの支持構造142を形成するための支持材料を発射するために使用され、別のジェット124は、オブジェクト144自体を形成するための構築材料を発射するために使用される。紫外線照射などの励起信号によって硬化が引き起こされる材料の場合、硬化信号発生器170(例えば、UVランプ)は、材料がオブジェクト上に噴射された直後に、材料の硬化を引き起こす。他の実施形態では、複数の異なる材料は、例えば、材料毎に別個のジェットを使用して、複数の異なる材料が使用され得る。さらに他の実装形態は、必ずしも励起信号(例えば、光、RFなど)を使用するのではなく、例えば噴射前に複数の成分を混合するか、又はオブジェクト上で混合し、且つ硬化を引き起こす別個の成分を噴射することによって硬化が化学的に引き起こされる。幾つかの例では、積層堆積の完了後、例えばオブジェクトをUV放射にさらに曝露させることにより、オブジェクトは、(例えば、硬化を完了するために)さらに硬化させることができることに留意されたい。
【0019】
センサ160(スキャナとも呼ばれる得る)は、造形中のオブジェクト121の上に位置付けられ、部分的に造形されたオブジェクトの物理的特性を決定するために使用される。例えば、センサ160は、表面形状(例えば、部分的に造形されたオブジェクトの厚さ/深度を特徴付ける深度マップ)及び表面下特徴(表面近くの層を含む、例えば数十又は数百の堆積層を含む)の1つ又は複数を測定する。検知され得る特徴には、材料密度、材料識別及び硬化状態の1つ又は複数が含まれ得る。非常に一般的に、センサ160からの測定値は、3次元(すなわちx,y,z)座標系に関連付けられ、この座標系では、x軸及びy軸は、構築物の平面内における空間軸として扱われ、z軸は、高さ軸である(すなわちオブジェクトが造形されるにつれて大きくなる)。
【0020】
幾つかの例では、積層製造のためのデジタルフィードバックループに関連して、積層製造システムは、層を印刷することによってオブジェクトを構築する。システム100が1つ又は複数の層を印刷した後、センサ160は、3Dスキャン情報をキャプチャする。例えば、センサ160は、部分的なオブジェクト(又は空のビルドプラットフォーム)をスキャンし、その後、プリンタは、材料の1つの層(又は複数の層)を印刷する。次に、センサ160は、(部分的に構築された)オブジェクトを再びスキャンする。センサ160によって検知された新しい深度は、おおよそ古い深度から層の厚さを引いた距離にあるべきである(これは、センサ160が構築中のオブジェクトの上に配置され、オブジェクトが最下層から最上層まで構築中であり、センサ160とビルドプラットフォームとの間の距離が不変であることを前提とする)。
【0021】
様々なタイプの検知が使用され得るが、ここで説明する例は、光コヒーレンストモグラフィ(OCT)を使用して、製造中のオブジェクトに関連する深度及び体積情報を決定することに関するものである。非常に一般的に、光コヒーレンストモグラフィ(OCT)は、深度の関数(一般的に、これは、この深度におけるコヒーレント反射量に対応する)として応答を出力する。オブジェクトよりも上の深度では、応答がないはずであり、応答は、表面高さに対応する深度から始まる。応答は、表面下の反射でオブジェクトの本体内に続き、最終的に、表面から近い距離範囲内において、例えば信号の減衰のために応答が再び小さくなる。その結果、生OCT信号は、表面深度の推定を直接提供せず、これは、応答の開始時の深度に対応する表面高さで深度の関数としての応答の形状から推測する必要がある。以下に示す幾つかの図では、zの関数としてのOCT応答は、グレースケールで表され、黒は応答なしを表し、白は高レベルの応答を表す。幾つかの例では、生OCTデータは、曖昧さを含む(例えば、オブジェクトの表面は、生OCTデータの最強又は最大信号成分に関連付けられていないことがあり得る)ことに留意されたい。このような場合、(以下により詳細に記載されるように)生OCTデータの曖昧さを解消するために、生OCTデータの時間的進行が使用される。
【0022】
コントローラ110は、(例えば、3つの運動度を提供する)運動アクチュエータ150を使用してビルドプラットフォーム130の運動を制御し、且つセンサ160によって決定されたオブジェクト特徴の非接触フィードバックに従い、ジェット120からの材料の発射を制御するために、造形されるオブジェクトのモデル190を使用する。
【0023】
コントローラ110は、(以下により詳細に記載される)深度再構築手順を実施するセンサデータプロセッサ111を含む。センサデータプロセッサ111は、モデル190及びセンサ160からのスキャンデータを入力として受信する。下記の通り、センサデータプロセッサ111は、モデル190及びセンサ160からのスキャンデータの時間履歴(「連続スキャンデータ」と呼ばれる)を処理して、造形中の3Dオブジェクトの高品質な深度再構築を決定する。深度再構築は、深度再構築に基づいて3Dオブジェクトの造形計画を修正するプランナ112に提供される。
【0024】
2 深度再構築モジュール
図2を参照すると、深度再構築モジュール111は、深度再構築手順300において、製造中の部分のモデル190及び連続スキャンデータ301を処理して、造形中の3Dオブジェクト上の特定の(x,y)座標について、積層製造プロセス中に行われるスキャンごとに最適な深度推定を決定する。
【0025】
以下の記載は、経時的な(又はスキャンにわたる)単一の(x,y)位置に関する深度の再構築に適用された場合の深度再構築手順300に関する。しかし、深度再構築手順300は、プリンティングシステムに関連する複数の又は全ての(x,y)位置に関する深度の再構築に拡張され得ることに留意されたい。
【0026】
2.1 深度再構築手順への入力
深度再構築手順300の第1のステップ302では、モデル190及び連続スキャンデータ301が受信される。
【0027】
連続スキャンデータ301は、3Dオブジェクトの造形中に堆積された連続層又は複数の層のサブシーケンスに関する3Dスキャンを含む。図3を参照すると、連続スキャンデータ301のグラフィック表現では、オブジェクトの特定の(x,y)に対して、等しい厚さの層の連続堆積後のオブジェクトの連続スキャンが左から右に配置されている。幾つかの例では、連続スキャンデータ301は、2Dアレイとして編成され、図において黒色を表す値がOCT応答がないことに対応し、図において白色を表す値が高OCT応答に対応する。プリンタがより多くの材料を印刷するにつれて、オブジェクトの体積が大きくなり、且つ最上面の高さが上昇していくため、層が堆積されるにつれて、表面高さが上昇し、スキャンはそれに対応する表面高さの上昇を示す。
【0028】
モデル190は、深度再構築手順300によって使用されて、部分的に造形されたオブジェクト121の各層に関する予測される表面高さを導出する。図3では、予測される表面高さは、線418として表される。予測される表面高さは、実際の印刷された表面高さと比較するのに役立つ。例えば、オブジェクト121を造形する際、モデル190と、実際の堆積された材料との間に不一致がしばしば発生する。計画された厚さを堆積するようにジェットが制御される場合でも、達成された層の厚さは、噴射の可変又は予測不可能な特徴により、及び/又は硬化中若しくは硬化前の表面上の流出などの噴射後の変化により計画から逸脱し得る。さらに、例えば、噴射の制御がx又はy方向にオフセットされ、それにより、材料が、計画された場所からオフセットされた場所に堆積されるため、オブジェクトとその3Dモデルとの間に不整合が生じ調整得る。モデル190から導出された予測される高さ418は、それが3Dスキャニングプロセスにおける曖昧さを解消するために使用され得る点において、深度再構築手順300に対する制約として機能し得る。センサ160(例えば、OCTセンサ又はレーザプロフィロメータ)は、強度信号の周波数領域表現において複数のピークを提供することができ、各ピークは、ぼやけている可能性がある。プリンタが次の層の噴射を行ったか否かの知識に加えて、前の層からの推定を用いて、予測される場合に次の深度測定の推定が取得され得る。次に、予測される高さに近いピークに向かうバイアスが設定される(すなわち、予測される深度に近いより薄暗いピークは、予測される深度から遠く離れた明るいピークよりも好ましい)。
【0029】
より一般的に、スキャニングプロセスは、センサノイズ、間接的な光反射、表面形状による信号の減衰、オクルージョンなどが原因で信頼性が低くなり得る。さらに、生OCTデータにおける最も強い信号が必ずしもスキャン中のオブジェクトの実際の最上部/表面に関連付けられていないことが起こり得る。時間データ(例えば、前のスキャン)及び/又は印刷されたモデルのデータは、これらの場合の曖昧さを解消するのに役立ち得る。これは、オブジェクトが造形されるにつれて、深度は、ほとんど連続的/離散的なステップで変化していることが分かっているためである。幾つかの例では、空間的近傍からの時間データも使用され得る。これは、印刷された表面が一般的に連続している/平滑である(一般的に不連続性がほとんどない)ことが分かっているためである。
【0030】
2.2 データ削減
図2を再度参照すると、第1のステップ302で受信された連続スキャンデータ301及びモデル190は、入力として第2のステップ304に提供される。第2のステップ304は、データ削減プロセスにおいて、連続スキャンデータ301及びモデル190を処理して、連続スキャンデータ301の削減データ表現305を生成する。
【0031】
データ削減プロセスの一例は、固定座標(x,y)に関して、プリンタ100が必ずしもスキャンごとに材料を堆積しない可能性があることを活用する。システムがスキャンの間に特定の場所を印刷しない場合、これは、スキャンデータがこれらの2つのスキャンで同じである必要があることを意味する。これらの場合、データ削減プロセスは、スキャンデータを平均するか又はスキャンの一方から値を選択してデータを削減し得る。データを平均化すると、一般的に、測定ノイズが減少する。このデータ削減は、一般に、全体的な計算時間を減少させ、ストレージコストを減少させる。図4を参照すると、特定の(x,y)場所に関する削減データセット305が示されている。
【0032】
2.3 層の平均厚さの計算
図2を再度参照すると、削減データセット305は、受信されたデータの層の平均厚さ307のアレイを計算する第3のステップ306への入力として提供される。層の平均厚さは、様々な方法で計算され得る。これは、座標(x,y)ごとに独立して実行し得る。これは、全ての座標に対して(例えば、印刷されたオブジェクト全体に対して)実行し得る。マルチマテリアルAMシステムでは、材料の種類(例えば、ビルド材料1、ビルド材料2、支持材料など)ごとに層の平均厚さを計算すると便利な場合がある。これは、特に、液滴サイズが材料の種類に応じて変動し得るインクジェットベースの3Dプリンティングに役立つ。
【0033】
幾つかの例では、層の平均厚さは、初期深度をスキャンすることと、n(例えば、n=20)個の材料層を印刷すること、深度を再度スキャンすること、深度の差に基づいて層の平均厚さを計算すること、によって計算される。これは、異なる材料の種類ごとに別個に実行され得る。幾つかの実施形態では、これは、前処理として又はプリンタ較正プロセス中に行われ得る。
【0034】
他の例では、層の平均厚さは、スキャンごとに、干渉信号の周波数領域表現における第1のピークを識別することによって計算される(OCTスキャニングプロセスにおいて)。線は、時間の経過に伴うスキャンで識別されたピークに適合され、この線の傾きは、事実上、層の厚さである。
【0035】
2.4 調整(Alignment)
図2を再度参照すると、削減データセット305及び層の平均厚さ307は、層の平均厚さ307に基づいて削減データセット305のデータをシフトさせることにより、調整されたデータセット309を生成する第4のステップ308に提供される。
【0036】
幾つかの例では、調整されたデータセット309は、削減データセット305において層ごとに生成され、削減データセット305は、層のスキャンデータ又は予測深度(又はこれらの2つの組み合わせ)から層の平均厚さ分だけシフトされる。調整操作は、削減データセット305から印刷されるオブジェクトの高さが増え続けるため、本質的に傾きを取り除く。プリンタが完璧に印刷するとすれば、調整されたデータセット309中の全データは、1つの水平線に沿って調整されるであろう。例えば、データを平坦にすることは、問題から可変差分(すなわち印刷された材料の量)が削除される。ある点(x,y)において、変数zは、あるレベル(すなわち水平線)の上下でわずかに変動する。換言すれば、(各層の印刷後に)予測される深度分だけデータをシフトすると、(各層の印刷後に)全ての表面が1つの水平線に沿って効果的に調整される。印刷の不正確さにより、これは、一般的に、当てはまらないが、(例えば、図の左から右への)連続した線が存在するべきであり、これは、それが印刷されているときに表面において連続性が存在するためである。
【0037】
図5を参照すると、調整されたデータセット309の一例を示すグラフが示されている。
【0038】
2.5 正規化/フィルタリング
図2を再度参照すると、調整されたデータ309は、調整されたデータ309を正規化するために、調整されたデータ309を平滑化することにより、平滑化されたデータセット311を生成する第5のステップ310に、入力として提供される。実際には、このような平滑化操作は、例えば、ガウスフィルタ、メジアンフィルタ又は範囲が限られた(例えば、3~8)を有する平均フィルタを用いて、調整されたデータセット309をフィルタリングすることによって実行され得る。
【0039】
図6を参照すると、図5の調整されたデータセット309を平滑化することによって生成された平滑化されたデータセット311の一例が示されている。平滑化操作は、水平(スキャン)方向に沿ってデータを局所的に平滑化する。幾つかの実施形態では、データが調整されるとき、単純な水平フィルタがアレイ/画像に適用される。他の実施形態では、データが調整されていないとき、フィルタは、深度変化に追従する(例えば、深度変化に適応する)必要がある。このフィルタリングステップは、ノイズの除去に役立ち、欠測データを減少させる。それは、予測される深度データに従わない深度値も減少させる。事実上、このステップは、入力モデル(例えば、印刷データ)を利用する。印刷データ/モデルが有効であるとみなされる場合、より大きいフィルタが使用されるべきである。加えて、印刷データの信頼度が低い場合、より小さいフィルタサイズが使用され得る。
【0040】
2.6 エネルギーアレイ/画像計算
図2を再度参照すると、平滑化されたデータセット311は、平滑化データセット311を処理して、エネルギーアレイ/画像313を生成する第6のステップ312への入力として提供される。上述の通り、OCTデータは、深度の関数として応答を提供するが、表面高さ又はさらに表面がどこにあり得るかを表す値を直接生じさせない。表面高さの識別を促進するために、エネルギーアレイ/画像313が決定される。エネルギーアレイ/画像313は、表面が存在する(黒色又は濃い灰色によって表される)場所で低い値を有し、表面が存在しない場所で高い値を有する関数として表され得る。t番目のスキャンに関して、この関数は、EI(t,z)と表記される。幾つかの例では、EI(t,z)は、前記スキャンデータとオブジェクトの表面の複数の高さとの整合性の度合いを表す表面データである。
【0041】
エネルギーアレイ/画像313を決定するための複数の方法が存在する。幾つかの実施形態では、エネルギー画像は、画像の最上部により近い勾配が、より後の勾配よりも重み付けされる重み関数と組み合わされた垂直方向の勾配の関数として構築される。すなわち、OCT応答における低応答から高応答への大きい正の変化率がEI(t,z)の低い値に対応する。幾つかの例では、エッジ検出アルゴリズムを使用して、エネルギーアレイ/画像313を決定する。
【0042】
図7を参照すると、第6のステップ312において、図6の平滑化されたデータセット311を処理することによって生成されたエネルギーアレイ/画像313の一例が示されている。図7では、時間の経過(又はスキャン)にわたって印刷されるオブジェクトの表面高さの進行に対応するグラフデータの領域は、濃い線として示されている。
【0043】
2.7 最適深度推定を解くこと
図2を再度参照すると、エネルギーアレイ/画像313は、エネルギーアレイ/画像を処理して、(x,y)位置に関する最適な深度推定317を決定する第7のステップ316にへの入力として提供される。
【0044】
幾つかの例では、最適深度は、最小エネルギーを生成するスキャン方向の左から右(又は右から左)への経路を解くことによって決定される。この経路は、各インスタンス時間インスタンスにおける深度値に対応する。経路は、ほぼ連続している必要がある(例えば、隣接する列間を移動する際、大きい垂直の跳びが存在しない必要がある)。この経路を解くことは、最適化問題である。幾つかの例では、最適化問題に対する大域的最小値は、動的プログラミングを使用して求められる。
【0045】
例えば、動的プログラミング解において、累積エネルギー画像
CEI(t,z)
は、左から右に(又は右から左に)列を扱うことによって計算され、CEI(t,z)の値は、EI(t,z)の値及び小さい近傍における前の列のCEIの最小値の和として計算され、例えば、
【数1】
である。より大きい近傍が使用され得る。第1の列に関して、CEI(0,z)=EI(0,z)である。CEIが計算されると、最後の列の最小値を求め、次にその最小値がどのように計算されたかをバックトラッキングすること(例えば、CEI(t,z)を計算する際、前の列(t-1)におけるどのzが最小であったか)によって最適経路が得られる。最適経路は、最適な深度推定317として出力される。
【0046】
図8を参照すると、図7のエネルギーアレイ/画像313に関する最適深度推定317が示されている。
【0047】
2.8 データ再マッピング
図2を再度参照すると、最適な深度推定317は、列シフトステップ(すなわちステップ308)を反転させることにより、最適な深度推定317を入力空間に戻すようにマッピングし、圧縮された列(例えば、データ削減プロセスステップ304で圧縮された列)を展開する第8のステップ318に入力として提供される。第8のステップ318の出力(ときに「推定深度データ」と呼ばれる)321は、オリジナルの入力空間内の各(x,y)位置におけるスキャンに関する最適な深度推定である。
【0048】
図9を参照すると、入力空間321にマッピングされた最適な深度推定が、連続スキャンデータ301及び(x,y)位置に関する予測高さデータ418と共に示されている。
【0049】
3 代替形態
最適な深度推定を識別するために、上記の動的プログラミング手法に対する代替形態が使用され得ることに留意されたい。生スキャンデータのシーケンス及び予測される高さのシーケンスが与えられた場合、最適な深度推定を推定するために他の方法(例えば、回帰、カルマンフィルタリング、ニューラルネットワーク、曲線適合及びグラフカット手法)が代替的に使用され得、同様の結果をもたらし得る。
【0050】
上記の記述は、主に深度再構築を向上させるための時間データの使用に関するが、上記の手法は、時空間データも使用できることに留意されたい(例えば、単に、経時的に単一の(x,y)位置を追跡するのではなく、アルゴリズムは、追加的に、(x,y)位置の周囲(及びz方向の下方)の位置の空間的近傍を追跡し、深度再構築を向上させ得る。さらに、印刷されたオブジェクトのモデルも使用することができ、それにより、どのように印刷深度が経時的に増大すべきかに関する予測を提供する。
【0051】
上記の記述では、データ処理手順は、予測される層の厚さを効果的に使用して、エネルギー関数は、表面高さ推定の分布を効果的に表すとみなすことができ、層が追加されるにつれて高さを追跡するために制約最適化を行う。この目的のために、代替手順も使用され得る。例えば、上記の動的プログラミング手法ではなく、直線又は水平線回帰が行われ得る。別の代替形態として、各堆積層に関して、予測される達成された厚さ及びその厚さの分散(標準偏差の二乗)が存在する統計的手法が使用され得る。例えば、校正データを使用して、平均及び分散の両方を決定することができる。同様に、OCTデータは、(例えば、低応答から高応答への変化率に基づいて)高さの推定を生じさせることができ、その推定の分散は、データ自体から想定又は決定され得る。このような統計値を使用して、第t番目の層の後の高さの推定は、例えば、カルマンフィルタ又は他の関連する統計的手法を用いて追跡され得る。さらに別の代替形態として、再帰型ニューラルネットワーク手法を使用して連続するOCTスキャンを処理し、且つ表面場所の標識を出力するためにニューラルネットワーク技法が使用され得る。
【0052】
上記の例の特定のステップは、手順が最適な深度推定を決定することを依然として可能にしながら、それらが省略され得る点で任意選択的であることに留意されたい。例えば、データ削減ステップ、層の平均厚さ計算ステップ、調整ステップ及びフィルタリング/正規化ステップなどのステップは、特定の実装形態では省略され得る。
【0053】
幾つかの例では、OCT検知の代わりに、三角測量ベースの検知技法が使用される。アルゴリズムは、(上記のような)OCTデータが処理される方法とほぼ同じ方法で三角測量ベースの検知データを処理する。
【0054】
上記のプリンティングシステムは、複数のジェットを含む。しかし、本出願に記載される態様は、単一のジェットのみを有するプリンティングシステムにも適用可能であることに留意されたい。
【0055】
4 実装形態
図1に示されるプリンタは、単なる例であり、使用され得る他のプリンタ構成は、例えば、米国特許第10,252,466号明細書“Systems and methods of machine vision assisted additive fabrication”、米国特許第10,456,984号明細書“Adaptive material deposition for additive manufacturing”、米国特許出願公開第2018/0056582号明細書“System,Devices,and Methods for Injet-Based Three-Dimensional Printing”及びSitthi-Amorn et al.”MultiFab:a machine vision assisted platform for multi-material 3D printing.”ACM Transactions on Graphics(TOG)34,no.4(2015):129に記載されている。深度データの上記の推定は、同時係属中の米国特許出願公開第2016/0023403号明細書及び米国特許出願公開第2018/0169953号明細書に記載されるフィードバック制御プロセスに組み込まれ得る。上述の文献は、全て参照により本明細書に援用される。
【0056】
積層製造システムは、一般的に、以下のコンポーネントを有する:コントローラアセンブリは、一般的に、プロセッサ、メモリ、ストレージ、ネットワーク、IO及びディスプレイを備えたコンピュータである。それは、処理プログラムを実行する。処理プログラムは、データの読み取りと書き込みもできる。コントローラアセンブリは、製造ハードウェアを効果的に制御する。それは、センサ(例えば、3Dスキャナ、カメラ、IMU、加速度計など)にもアクセスできる。
【0057】
より一般的に、上記の手法は、例えば、適切なソフトウェア命令を実行するプログラマブルコンピューティングシステムを使用して実施され得るか、又はそれは、フィールドプログラマブルゲートアレイ(FPGA)などの適切なハードウェア若しくはいくつかのハイブリッド形態において実施され得る。例えば、プログラムによる手法では、1つ又は複数のプログラムされた又はプログラマブルコンピューティングシステム上で実行する1つ又は複数のコンピュータシステム(分散、クライアント/サーバ又はグリッドなどの様々なアーキテクチャのものであり得る)上で実行される少なくとも1つまたは複数のコンピュータプログラムにおける手順を含み得る、ソフトウェアは、それぞれ少なくとも1つのプロセッサ、少なくとも1つのデータストレージシステム(揮発性及び/又は不揮発性メモリ及び/又はストレージ素子を含む)、少なくとも1つのユーザインタフェース(少なくとも1つの入力デバイス又はポートを使用して入力を受け取り、少なくとも1つの出力デバイス又はポートを使用して出力を提供するための)を含み得る。ソフトウェアは、例えば、データフローグラフの設計、構成及び実行に関係するサービスを提供する、より大きいプログラムの1つ又は複数のモジュールを含み得る。プログラムのモジュール(例えば、データフローグラフの要素)は、データ構造又はデータリポジトリに保存されたデータモデルに適合する他の整理されたデータとして実装され得る。
【0058】
ソフトウェアは、ある期間(例えば、ダイナミックRAMなどのダイナミックメモリデバイスのリフレッシュ期間の間の時間)にわたり、媒体の物理的特性(例えば、表面ピット及びランド、磁区又は電荷)を使用して、揮発性若しくは不揮発性記憶媒体又は他の非一時的媒体で具現化されるような非一時的形態で保存され得る。命令をロードする準備として、ソフトウェアは、CD-ROM又は他のコンピュータ可読媒体(例えば、汎用若しくは特殊用途コンピューティングシステム若しくはデバイスによって読み取り可能な)などの有形の非一時的媒体上で提供され得るか、又はネットワークの通信媒体により、それが実行されるコンピューティングシステムの有形の非一時的媒体に配信(例えば、伝搬信号において符号化)され得る。処理の一部又は全ては、専用コンピュータ上において又はコプロセッサ、若しくはフィールドプログラマブルゲートアレイ(FPGA)、若しくは専用の特定用途向け集積回路(ASIC)などの特殊用途ハードウェアを使用して行われ得る。処理は、ソフトウェアによって指定される計算の異なる部分が異なるコンピューティング素子によって行われる分散方式で実施され得る。このようなコンピュータプログラムのそれぞれは、好ましくは、汎用又は特殊用途プログラマブルコンピュータによってアクセス可能な記憶装置のコンピュータ可読記憶媒体(例えば、固体メモリ若しくは媒体又は磁気若しくは光学媒体)上に保存されるか又はそれにダウンロードされる、このようなコンピュータプログラムは、記憶装置媒体が、本明細書に記載される処理を行うためにコンピュータによって読み出される際にコンピュータを構成し、且つそれを動作させるためのものである。本発明のシステムは、コンピュータプログラムを用いて構成された有形の非一時的媒体として実装されると見なすこともでき、このように構成された媒体は、本明細書に記載される処理ステップの1つ又は複数を行うための特定の且つ予め定義された方法でコンピュータを動作させる。
【0059】
本発明の幾つかの実施形態を記載した。しかし、上述の記載は、以下の特許請求の範囲によって定義される本発明の範囲を限定するのではなく、例示することを意図したものであることが理解されるものとする。従って、他の実施形態も以下の特許請求の範囲内である。例えば、本発明の範囲から逸脱することなく、様々な変更形態がなされ得る。加えて、上記のステップの幾つかは、順序に依存しない場合があり、従って記載されたものと異なる順序で行われ得る。
図1
図2
図3
図4
図5
図6
図7
図8
図9