(57)【要約】【課題】  造形システムを提供すること。【解決手段】本造形システム（１００，１５０）は、基準となる形状を取得する取得手段（３１０，３２０）と、造形中または造形後の造形物の形状を測定する測定手段３４０と、基準となる形状に基づいて、該基準となる形状を代表する複数の代表点を設定する設定手段３５１と、測定手段３４０により測定された形状に基づいて、複数の代表点の変位で表現される変形として、基準となる形状と造形物の測定された形状との差分を表す差分データを算出する算出手段３５２とを含む。【選択図】  図３
2020138535.tif 000002
【特許請求の範囲】
【請求項１】
立体造形するための造形システムであって、
基準となる形状を取得する取得手段と、
造形中または造形後の造形物の形状を測定する測定手段と、
前記基準となる形状に基づいて、該基準となる形状を代表する複数の代表点を設定する設定手段と、
前記測定手段により測定された形状に基づいて、複数の代表点の変位で表現される変形として、前記基準となる形状と前記造形物の前記測定された形状との差分を表す差分データを算出する算出手段と
を含む、造形システム。
【請求項２】
前記造形物の前記測定された形状は、断面形状であり、前記差分データは、前記造形物の前記測定された断面形状と、基準となる形状に基づく断面形状とを比較することにより算出されることを特徴とする、請求項１に記載の造形システム。
【請求項３】
前記算出手段により算出された差分データは、入力された立体形状を修正するために用いられ、前記基準となる形状は、前記入力された立体形状、前記入力された立体形状を修正して得られる修正後の立体形状、これら立体形状から得られる断面形状である、請求項１または２に記載の造形システム。
【請求項４】
前記測定手段は、造形中または造形後の一方または両方における各時点で造形された造形物の形状を測定することを特徴とし、造形途中に修正後の立体形状に基づく造形の継続、または、修正後の立体形状に基づく造形のやり直しを指示する手段をさらに含む、請求項３に記載の造形システム。
【請求項５】
前記測定手段は、造形中に複数回の測定を行うことを特徴とし、前記算出手段は、複数回の測定各々で差分データを算出することを特徴とし、得られた複数回の測定に基づく複数の差分データは、入力された立体形状を修正するために用いられることを特徴とする、請求項３または４に記載の造形システム。
【請求項６】
前記算出手段により算出された差分データに基づき修正された修正結果を蓄積する蓄積手段を含み、同一条件で、少なくとも部分的に形状が一致する箇所を有する立体形状の造形の際に、少なくとも部分的に形状が一致する箇所が、蓄積された修正結果に基づいて修正されることを特徴とする、請求項３〜５のいずれか１項に記載の造形システム。
【請求項７】
前記修正後の立体形状と、前記修正後の立体形状を造形した造形物の形状との差分データに基づいて、さらに前記修正後の立体形状が修正されて、保持している修正結果が更新されることを特徴とする、請求項３〜６のいずれか１項に記載の造形システム。
【請求項８】
前記造形システムは、立体形状を高さ方向に対して分割して、断面形状とし、造形データを生成する生成手段と、前記造形データに基づいて造形する造形手段とを含み、前記測定手段は、造形中の複数の時点でそれぞれ形状の測定を行うことを特徴とし、前記算出手段は、複数の時点の測定それぞれで、高さ方向に対して分割された断面形状と、測定した形状に基づく断面形状との差分データを算出することを特徴とし、複数測定で得られた複数の差分データを用いて入力された立体形状が修正される、請求項３〜７のいずれか１項に記載の造形システム。
【請求項９】
前記測定手段によって測定された形状を修正する修正手段をさらに含む、請求項１〜８のいずれか１項に記載の造形システム。
【請求項１０】
前記修正手段が行う修正処理における修正量は、ダミー造形処理によって算出されることを特徴とする、請求項９に記載の造形システム。
【請求項１１】
前記ダミー造形処理は、複数の寸法の溝部を有する造形物を造形することを特徴とする、請求項１０に記載の造形システム。
【請求項１２】
前記ダミー造形処理は、溝部の寸法を変更して行われることを特徴とする、請求項１０に記載の造形システム。
【請求項１３】
前記修正手段は、前記造形中に修正量を算出すことを特徴とする、請求項９に記載の造形システム。
【請求項１４】
前記修正手段は、周辺環境の条件が変動した場合に前記修正量を算出する、請求項１０〜１３のいずれか１項に記載の造形システム。
【請求項１５】
前記測定手段は、複数の段階に測定精度が切替可能であり、前記造形システムは、
前記形状を測定する範囲を分割する分割手段と
分割された範囲ごとに前記複数の段階のいずれかの段階の測定精度を設定する精度設定手段と
をさらに含む、請求項１〜１４のいずれか１項に記載の造形システム。
【請求項１６】
前記造形システムは、熱溶解フィラメント製造法または粉末焼結積層造形法に基づくものであり、前記造形システムは、
前記差分データに基づいて、造形量に対する補正量を算出する補正量算出手段と、
前記補正量に従って、造形量を変更する造形量変更手段と
をさらに含む、請求項１〜１４のいずれか１項に記載の造形システム。
【請求項１７】
基準となる形状を取得する第１取得手段と、
造形中または造形後の造形物の測定された形状を取得する第２取得手段と、
前記基準となる形状に基づいて、該基準となる形状を代表する複数の代表点を設定する設定手段と、
前記第２取得手段により取得された形状に基づいて、複数の代表点の変位で表現される変形として、前記基準となる形状と前記造形物の前記測定された形状との差分を表す差分データを算出する算出手段と
を含む、情報処理装置。
【請求項１８】
造形物の形状を表現する方法であって、コンピュータが、
基準となる形状を取得するステップと、
造形中または造形後の造形物の測定された形状を取得するステップと、
前記基準となる形状に基づいて、該基準となる形状を代表する複数の代表点を設定するステップと、
取得された形状に基づいて、複数の代表点の変位で表現される変形として、前記基準となる形状と前記造形物の前記測定された形状との差分を表す差分データを算出するステップと
を含む、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、造形システム、情報処理装置および方法に関する。
【背景技術】
【０００２】
入力されたデータに基づいて、金型のようなものを用意することなく、樹脂や金属の立体造形物を造形する造形装置（いわゆる「３Ｄプリンタ」）あるいは付加製造（Additive Manufacturing）と呼ばれる技術が開発されている。立体造形を行う方式としては、例えば、ＦＦＦ（Fused Filament Fabrication、熱溶解フィラメント製造法）、ＳＬＳ（Selective Laser Sintering、粉末焼結積層造形法）、ＭＪ（Material Jetting、マテリアルジェッティング）、ＥＢＭ（Electron Beam Melting、電子ビーム溶解法）、ＳＬＡ（Stereolithography Apparatus、光造形法）など、種々の方式が提案されている。
【０００３】
しかしながら、従来技術では、造形物の形状の精度が低く、また同じ条件で同じ材料、同じ形状を造形しても、歪みなどに起因して得られる造形物の形状が異なり、安定した造形品質が得られないという点で充分なものではなかった。
【０００４】
造形処理を補正する技術として、特開２０１６−２１５６４１号公報（特許文献１）も知られている。特許文献１は、画像形成ユニットによって造形材料からなるキャリブレーションマーカを形成し、ステージ上に積層されたキャリブレーションマーカをセンサにより検出し、その検出結果からステージ上に積層された前キャリブレーションマーカの画像歪みを計測する構成を開示する。そして、特許文献１の従来技術では、形物を形成するときに、予め計測された画像歪みに基づいて、画像形成ユニットに与えるスライス画像データに対し画像歪みを低減する補正を行う。
【０００５】
特許文献１の従来技術は、造形物の品質及び精度を向上することを目的としており、誤差を検出して形状をある程度補正することができる。一方、造形精度を劣化させる要因は、造形装置の機械的・光学的な要因のほか、材料の収縮・変形、材料の固化前の流動性による変形など多様である。特許文献１の従来技術は、造形装置の機械的・光学的な誤差要因に起因した造形形状および積層時の位置合わせを補正するキャリブレーションおよびレジストレーションを可能とするものであるが、材料の収縮・変形、材料の固化前の流動性による変形などに対応することができるものではなく、この点から充分なものではなかった。また、特定の形状を有するキャリブレーションマーカを用いているため、複雑な形状の造形精度を向上させることは難しく、複雑な形状に対応できたとしても、予測のための計算負荷が高くなってしまい、精度も十分なものではなかった。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本開示では、上記点に鑑みてなされたものであり、造形される造形物の立体形状の精度および安定性の向上を、低い計算負荷で図ることが可能な造形システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本開示では、上記課題を解決するために、下記特徴を有する、立体造形するための造形システムを提供する。本造形システムは、基準となる形状を取得する取得手段と、造形中または造形後の造形物の形状を測定する測定手段と、基準となる形状に基づいて、該基準となる形状を代表する複数の代表点を設定する設定手段と、上記測定手段により測定された形状に基づいて、複数の代表点の変位で表現される変形として、上記基準となる形状と上記造形物の測定された形状との差分を表す差分データを算出する算出手段とを含む。
【発明の効果】
【０００８】
上記構成により、造形される造形物の立体形状の精度および安定性の向上を、低い計算負荷で図ることが可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態における立体造形システム全体の概略構成を示す図。
【図２】本実施形態の造形装置に含まれるハードウェア構成を示す図。
【図３】本実施形態の造形装置に含まれるソフトウェアブロック図。
【図４】（Ａ）測定データとしてのハイトマップ情報、（Ｂ）造形物の測定形状を表す多角形データ、（Ｃ）本実施形態による測定形状データの生成のための初期状態の差分データ（最適化前）および（Ｄ）造形物の測定形状を表す最適解としての測定形状データ（差分データ）のデータ構造を示す図。
【図５】他の実施形態による測定形状データの生成のための初期状態の差分データ（最適化前）のデータ構造を示す図。
【図６】本実施形態において測定形状データ（差分データ）を生成する処理のフローチャート。
【図７】特定の実施形態において複数時点で取得した測定形状データ（差分データ）の例を示す実験結果をプロットした図。
【図８】特定の実施形態において、特定の形状の補正結果を保持し、あらかじめ補正する処理（測定形状データを用いたフィードフォワード補正）について説明する図。
【図９】造形物の形状が変形する例とそれに対するフィードバック補正について説明する図。
【図１０】本実施形態におけるデータフローを示す図。
【図１１】特定の実施形態において、積層造形において造形層の形状の変形を追跡する処理について説明する図。
【図１２】図１１（Ｃ）に示す立体物を造形するとして、上辺上の５点に関して、積層するたびに各層の対応点の変形量をプロットしたグラフ（補正無しの場合（上図）と補正有りの場合（下図）との比較）。
【図１３】本実施形態において造形装置が立体造形物を造形する処理のフローチャート。
【図１４】本実施形態における造形物の形状の変形とそれに対するフィードフォワード補正について説明する図。
【図１５】本実施形態におけるダミー造形処理のフローチャート。
【図１６】本実施形態におけるメイン造形処理のフローチャート。
【図１７】形状センサが検出する端部を説明する図。
【図１８】形状センサが検出する端部に基づいて補正された造形層の例を示す図。
【図１９】本実施形態におけるオフセット値に基づく測定データの修正を説明する図。
【図２０】オフセット値を算出するためのダミー造形物の形状の例を示す図。
【図２１】オフセット値の算出処理のフローチャート。
【図２２】メイン造形処理中にオフセット値を算出する例について説明する図。
【図２３】他の実施形態の造形装置に含まれるソフトウェアブロック図。
【図２４】他の実施形態の造形装置において、測定範囲を分割して行う造形物の形状測定について説明する図。
【図２５】特定の実施形態において、差分データに基づいて吐出量の補正量を算出し、補正量に基づいて造形する造形処理を説明する図。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態を、特定の実施形態をもって説明するが、本発明は後述する実施形態に限定されるものではない。なお、以下に参照する各図においては、共通する要素について同じ符号を用い、適宜その説明を省略するものとする。また、以下の説明では、主としてＦＦＦ方式の造形装置で以て説明するが、実施形態を限定するものではない。
【００１１】
また、以下では、説明の便宜上、立体造形物の高さ方向をｚ軸方向とし、ｚ軸に直交する面をｘｙ平面として説明する。
【００１２】
図１は、本発明の実施形態における立体造形システム全体の概略構成を示す図である。図１（Ａ）に示すように、立体造形システムには、立体造形物を造形する造形装置１００が含まれる。造形装置１００は、例えば情報処理端末１５０から、造形したい立体造形物の形状データが送信され、当該形状データに基づいて、立体造形物を造形する。また、情報処理端末１５０は、造形装置１００が実行する処理を制御する制御装置として動作してもよい。なお、造形装置１００の中に、情報処理端末１５０の機能が組み込まれていてもよい。
【００１３】
図１（Ｂ）に示すように、ｘｙ平面と平行に移動可能なヘッド１１０から、ステージ１２０上に造形材料１４０が吐出され、ｘｙ平面に造形層が造形される。線描を、同一平面内に描画することで、立体造形物のうち１層分の造形層を造形する。１層目の造形層が造形されると、ステージ１２０は、ｚ軸に沿う方向に１層分の高さ（積層ピッチ）だけ下がる。その後、１層目と同様にヘッド１１０が駆動して、２層目の造形層を造形する。造形装置１００は、これらの動作を繰り返すことで、造形層を積層し、立体造形物を造形する。なお、ヘッド１１０がｘｙ平面を移動し、ステージ１２０がｚ軸方向を移動する構成を例に説明したが、上述した構成は本実施形態を限定するものではなく、これ以外の構成であってもよい。
【００１４】
また、本実施形態の造形装置１００は、造形中の造形層もしくは造形後の立体造形物の形状を測定するためのセンサ１３０を具備する。センサ１３０は、造形層のｘｙ平面を測定してもよい。図１（Ｃ）に示すように、好ましい実施形態では、センサ１３０は、造形中として、例えば、ヘッド１１０による造形動作に連動して、造形層の形状を測定してもよい。また、立体造形物の測定は、１層の造形層が造形されるごとに行ってもよい。なお、立体造形物の測定をどのタイミングで、どの範囲で行うかは、任意に選択することができ、特に実施形態を限定するものではない。
【００１５】
次に、造形装置１００のハードウェア構成について説明する。図２は、本実施形態の造形装置１００に含まれるハードウェア構成を示す図である。造形装置１００は、ＣＰＵ２０１と、ＲＡＭ２０２と、ＲＯＭ２０３と、記憶装置２０４と、インターフェース２０５と、造形ユニット２０６と、形状センサ２０７とを含んで構成される。各ハードウェアは、バスを介して接続されている。
【００１６】
ＣＰＵ２０１は、造形装置１００の動作を制御するプログラムを実行し、所定の処理を行う装置である。ＲＡＭ２０２は、ＣＰＵ２０１が実行するプログラムの実行空間を提供するための揮発性の記憶装置であり、プログラムやデータの格納用、展開用として使用される。ＲＯＭ２０３は、ＣＰＵ２０１が実行するプログラムやファームウェアなどを記憶するための不揮発性の記憶装置である。
【００１７】
記憶装置２０４は、造形装置１００を機能させるＯＳや各種アプリケーション、設定情報、各種データなどを記憶する、読み書き可能な不揮発性の記憶装置である。インターフェース２０５は、造形装置１００と他の機器とを接続する装置である。インターフェース２０５は、例えば、情報処理端末１５０や、ネットワーク、外部記憶装置などと接続することができ、インターフェース２０５を介して、造形動作の制御データや、立体造形物の形状データなどを受信することができる。
【００１８】
造形ユニット２０６は、造形手段として、造形データに基づいて造形層を造形する装置である。造形ユニット２０６は、ヘッド１１０や、ステージ１２０などを含んで、造形方式に応じて構成される。例えば、ＦＦＦ方式における造形ユニット２０６は、造形材料１４０を溶融する加熱機構や、造形材料１４０を吐出するノズルなどを含む。ＳＬＳ方式における造形ユニット２０６は、レーザ光源などを含む。
【００１９】
形状センサ２０７は、造形中の造形層もしくは造形後の立体造形物の形状を測定する装置である。形状センサ２０７は、造形層のｘｙ平面を測定してもよい。また、形状センサ２０７は、立体造形物のｘ軸、ｙ軸およびｚ軸方向の寸法などを測定してもよい。形状センサ２０７の例としては、赤外線センサ、カメラ、および３Ｄ計測センサ（例えば、光切断プロファイルセンサ）などが挙げられる。
【００２０】
なお、図２を参照しながら、造形装置１００のハードウェア構成について説明したが、情報処理端末１５０も、造形ユニット２０６および形状センサ２０７を備えなくとも良いが、おおむね同様なハードウェア構成を採用することができる。
【００２１】
次に、本実施形態における各ハードウェアによって実行される機能手段について、図３を以て説明する。図３は、本実施形態の造形装置１００に含まれるソフトウェアブロック図である。
【００２２】
造形装置１００は、データ入力部３１０、造形データ生成部３２０、造形ユニット制御部３３０、造形物形状測定部３４０、測定形状データ生成部３５０、補正部３６０、記憶部３７０を含む。
【００２３】
データ入力部３１０は、立体造形物を造形するための形状データなどの入力を受け付ける手段である。形状データは、一例として、情報処理端末１５０などで作成され、インターフェース２０５を介して、データ入力部３１０に入力される。入力された形状データは、後述する測定形状データを生成する際の基準となる形状を生成するために用いることができる。
【００２４】
造形データ生成部３２０は、データ入力部３１０に入力された形状データにより規定される立体形状を高さ方向に対して分割し、断面形状とし、複数の造形層の造形データを生成する生成手段である。造形データは、造形される立体造形物を積層ピッチ単位で分割することで、積層される各層を造形するための造形層を示すデータとして生成される。造形データは、頂点座標とそれらを結ぶ線分からなるベクターデータとして表現することもできるし、各層のｘｙ平面座標において、造形するかしないかを示す二値データからなるラスターデータとして表現することもできる。また、好ましい実施形態では、単に各座標での造形の有無だけでなく、各座標における造形量や造形材料の吐出量などをパラメータとして含んでもよい。造形データは、またツールの移動経路を規定するツールパスを規定する情報を含んでいてもよい。この造形データは、後述する測定形状データを生成する際の基準となる形状を生成するために用いることができる。なお、図３では、造形データ生成部３２０は造形装置１００に含まれているが、情報処理端末１５０に含まれてもよい。この場合、情報処理端末１５０で生成された造形データが、造形装置１００に送信され、造形処理が実行される。
【００２５】
造形ユニット制御部３３０は、造形データに基づいて、造形ユニット２０６が造形する動作を制御する手段である。造形ユニット制御部３３０は、造形データに基づいてヘッド１１０の位置やステージ１２０の高さを調整することで、造形の速度、積層ピッチなどの種々のパラメータやアルゴリズムを制御しながら造形できる。また、造形ユニット制御部３３０は、造形データに基づいて造形量を制御することができる。例えば、ＦＦＦ方式では、造形材料１４０の吐出量を制御でき、ＳＬＳ方式では、レーザの強度を制御できる。
【００２６】
造形物形状測定部３４０は、測定手段として、形状センサ２０７を制御し、造形中の造形層（造形途中の造形物）もしくは造形後の立体造形物の形状として、寸法や高さなどの測定データを測定する手段である。造形物形状測定部３４０は、測定した結果を測定データとして取得する。
【００２７】
形状センサ２０７によって造形物の形状を測定するタイミングは、特に限定されるものではないが、造形中の各時点（例えば各１層を形成する時点）および造形後の各時点（例えば造形後に充分に時間が経過した時点や所定の間隔をあけた各時点）であってよい。測定データは、立体形状または断面形状として表現される。立体形状として測定する場合は、造形中および造形後の任意の時点で、その時点までに造形が完了した造形物の形状を測定することができる。一方、断面形状として測定する場合は、典型的には、測定時点の最上層のｘｙ平面の形状を測定する。ただし、任意の時点で立体形状を測定し、測定された立体形状から任意の断面で切り出して得られるものをその時点で測定された断面形状としてもよい。造形物形状測定部３４０は、本実施形態における造形中または造形後の造形物の形状を測定する測定手段を構成する。
【００２８】
図４（Ａ）は、測定データとしてのハイトマップ情報のデータ例を示す。造形物形状測定部３４０が取得する測定データは、図４（Ａ）に示すような、ｘｙ平面上を格子状に等間隔並んだ点のｚ方向座標（高さ）からなるハイトマップ情報であってよい。
【００２９】
実際に造形される立体造形物の形状は、造形材料１４０の種類や、周囲温度などの各種条件によって変動することがある。また、造形材料１４０が冷却や硬化した後では、造形直後と比べて、収縮や反りが生じることもある。収縮などが生じたまま積層を続けると、所望する立体造形物と異なる立体造形物が造形される場合がある。したがって、所望の形状と実際に造形された形状とを比較し、誤差を検出し、全体の立体形状を修正して造形し直したり、あるいは、次層以降の造形にフィードバックして補正を行ったりすることが望ましい。
【００３０】
上述したハイトマップ情報を形状比較のために用いることができるが、ハイトマップ情報のままではデータサイズが大きく、各種処理に時間を要し、形状比較の計算負荷も大きい。さらに、ハイトマップ情報には測定ノイズも含まれる。このため、ハイトマップ情報をそのまま使用することは現実的ではない。図４（Ｂ）は、造形物の測定形状を表す多角形の集合データを例示するものである。図４（Ｂ）に示すように、図４（Ａ）に示すハイトマップ情報を、隣接しておよそ同一平面上にある複数点をひとつの多角形の面としてまとめて、立体物をそれら多角形の面の集合として表現することもできる。しかしながら、測定ノイズを除去しながら、造形物の寸法や形状を高精度に抽出して、図４（Ｂ）に示す表現方式で多角形データを生成することは通常困難である。
【００３１】
そこで、本実施形態による測定形状データ生成部３５０は、測定データと、立体形状を規定する形状データ（あるいはそれから生成された断面形状を規定する造形データ）とに基づいて、測定データとは異なる表現形式の測定形状データを生成する。ここで、測定形状データとは、基準となる形状からの微小な変位として、測定された形状を表現するデータである。測定形状データは、立体形状、または、ｘｙ平面、ｘz平面またはｙｚ平面の断面形状として表現され得る。基準となる形状（立体形状または断面形状）に基づいて、その形状が微小変形したものとして、測定した形状（立体形状または断面形状）を表現することで、ノイズ除去および高精度な形状抽出の両立を図っている。測定形状データ生成部３５０は、上記目的のために、より具体的には、代表点設定部３５１と、差分データ算出部３５２とを含んで構成される。
【００３２】
代表点設定部３５１は、基準となる形状に基づいて、該形状を代表する複数の代表点を設定する設定手段である。図４（Ｃ）および図４（Ｄ）は、それぞれ、本実施形態による測定形状データの生成のための初期状態の差分データ（図４（Ｃ）はランダムで与えた初期状態を示す。しかしながら、初期状態は、ゼロでもよいし、１層前の最適解を適用してもよい。）および最適解としての差分データのデータ構造を例示する。図４（Ｃ）および図４（Ｄ）には、基準となる形状４００に設定される代表点４０２も併せて示されている。なお、図４（Ｃ）および図４（Ｄ）は、ｘｙ平面の断面形状として、測定形状データが生成される場合に対応する。そのため、代表点は、ｘｙ平面上に設定されている。
【００３３】
図４（Ｃ）において、４００は、入力された形状データに基づくｘｙ平面の断面形状を示し、４０２は、ｘｙ平面の断面形状（の輪郭）に設定された代表点を示している。代表点設定部３５１は、好ましくは、形状の変化の緩やかな部分には比較的荒い粒度で、形状の変化が急な部分にはより細かい粒度で、複数の代表点４０２を設定することができる。代表点４０２は、例えば、コーナーなど形状の顕著な変化が生じる箇所（例えばコーナーの頂点）およびこれらに隣接した位置（例えばコーナーの頂点から一定距離離れた位置）に複数設定されてもよい。代表点４０２は、さらに、形状の直線部分や曲線部分に所定の間隔で設定されてもよい。
【００３４】
差分データ算出部３５２は、測定された形状を表す測定データに基づいて、設定した複数の代表点の変位で表現される変形として、基準となる形状と造形物の測定された形状との差分を表す差分データを算出する。
【００３５】
なお、図４（Ｃ）および図４（Ｄ）に示すようにｘｙ平面の断面形状として測定形状データを生成する場合は、基準となるｘｙ平面の断面形状と、造形物の測定されたｘｙ平面の断面形状との差分を表す差分データが算出される。このとき、測定データは、測定時点の最上層のｘｙ平面の形状、または、造形中または造形後の測定時点の測定された立体形状を、対応するｘｙ平面で切り出して得られる断面形状として与えられる。同様に、基準となるｘｙ平面の断面形状は、対応する造形データか、または、形状データが規定する立体形状を対応するｘｙ平面で切り出すことで得られる。
【００３６】
より具体的には、差分データ算出部３５２は、基準となる形状を代表する複数の代表点各々に対して、初期値として、ランダムな変位、ゼロの変位、または１層前の最適解の変位を与える。代表点以外の変位は、例えば、補間により与えられ、これにより、形状全体の微小変形結果を算出することができる。図４（Ｃ）において、４０４は、初期値として与えられたランダムな変位を表すベクトルであり、４０６は、初期値としての形状全体の微小変形結果を表す。そして、差分データ算出部３５２は、代表点の変位ベクトルにより規定される形状と、測定データにより規定される形状との誤差が最も少なくなるように、複数の代表点の位置およびその変位を少しずつ変化させて更新しながら、代表点４０２の位置および変位４０４の最適解を得る。ここで、複数の代表点の位置自体も更新の対象としているが、変位のみを更新対象としてもよい。
【００３７】
図４（Ｃ）および（Ｄ）において、４１０は、測定データにより規定される測定断面形状を示す。変位ベクトル４０４は、基準となる断面形状４００における代表点４０２から測定断面形状４１０上の対応点を結ぶベクトルとして最適化される。４０６’は、最適解としての形状全体の微小変形結果を表す。得られた代表点の位置およびその変位は、入力された立体形状の断面形状と、測定した断面形状との差分データを構成する。差分データは、ベクターデータとして表現されているので、精度の高い形状表現が可能となる。例えば、３００ｄｐｉ相当（約８０μｍ分解能）のスキャナを用いて測定した場合、スキャンピッチの数分の一程度の寸法精度（約１０μｍの精度）で求めることができる。
【００３８】
また、基準となる形状に応じて、複数点で変位を代表して表現しているため、高周波ノイズを除去することができる。一方で、基準となる形状を基本としてそれからの変位として形状を表現しているため、微細な形状が無視されて判別できなくなるというわけではない。つまり、基準となる形状の単調で低い空間周波数成分しか有さない部分は、代表点が比較的まばらに設定されて、高周波成分をノイズとして遮断しつつ、基準となる形状の複雑で高い空間周波数成分を持つ部分は、その高い空間周波数成分も維持されることになる。このため、形状の再現性およびノイズの除去容易性を両立することができる。
【００３９】
なお、図４（Ｃ）および図４（Ｄ）では、基準となる形状、測定された形状および生成される測定形状データの差分データは、共に、ｘｙ平面の断面形状として表現されるものとして説明した。しかしながら、形状は、図５（Ａ）に示すように３次元の立体形状として求めてもよい。立体形状として測定形状データを生成する場合は、図５（Ａ）に示すように、基準となる立体形状４２０に基づいて、該立体形状を代表する複数の代表点４２２が３次元空間（立体形状の表面）において設定される。なお、図５（Ａ）では、立体形状４２０の１つの面のみ詳細に代表点を描き、残りの点については簡略化されている点に留意されたい。そして、各代表点に適切な変位４２４が与えられて、測定された立体形状との誤差が少なくなるように最適解が求められ、基準となる立体形状４２０と造形物の測定された立体形状との差分を表す差分データが算出される。また、基準となる立体形状４２０は、その測定時点で造形されているべき形状である。基準となる立体形状４２０は、造形後であれば、入力された形状データが規定する立体形状であり、造形中であれば、全体としての立体形状のうちのその時点で造形されているべき部分の形状である。
【００４０】
あるいは、図５（Ｂ）に示すように、ｘｚ面またはｙｚ面の変形として求めてもよい。高さ方向を含むｘｚ平面／ｙｚ平面の断面形状として測定形状データを生成する場合は、図５（Ｂ）に示すように、基準となる断面形状４４０に基づいて、該断面形状を代表する複数の代表点４４２が該当断面の平面内で設定される。そして、各代表点にランダムもしくは隣接断面をもとに初期変位４４４が与えられて、測定された形状との誤差が少なくなるように最適解が求められ、基準となる断面形状４４０と造形物の測定された断面形状との差分を表す差分データが算出される。また、基準となる断面形状４４０は、その測定時点で造形されているべき立体形状における断面形状である。基準となる断面形状４４０は、造形後であれば、入力された形状データが規定する立体形状における断面形状であり、造形中であれば、全体としての立体形状のうちのその時点で造形されているべき部分における断面形状である。
【００４１】
なお、図５（Ａ）に示すように三次元形状としてではなく、図４（Ｃ）および図４（Ｄ）や図５（Ｂ）に示すように断面形状の比較を行って差分データを算出することにより、計算コストをより一層減らすことが可能になる。
【００４２】
補正部３６０は、立体造形物を造形する造形データを補正する手段である。補正部３６０は、測定形状データ生成部３５０が算出した測定形状データ（差分データ）に基づいて、造形ユニット制御部３３０が実行する造形の動作が変更されるように、造形データを補正することができる。ここで、造形の動作を変更とは、造形データに含まれるパラメータやアルゴリズムの変更、形状データそのものの変更などを示す。パラメータやアルゴリズムの一例として、造形される立体造形物の形状、造形層ごとの寸法や、高さ、造形データに基づく造形量、造形材料の溶融温度、造形の速度、積層ピッチなどが含まれる。
【００４３】
立体造形は、所望の形状を輪切りにした断面形状を有する造形層を積層することにより造形されて行くので、隣接する造形層間では形状が同一であったり、類似していたりすることが期待される。そこで、例えば、測定時点までに完了した造形層までの所望の形状と、測定された造形物との誤差が小さくなるように差分データ（変位ベクトル）を計算し、それに対して逆方向に歪ませて形状を出力するように以降の造形層の造形データを補正することができる。造形データが補正された場合には、造形ユニット制御部３３０は、補正造形データに基づいて、造形処理を実行することができる。
【００４４】
また、得られる立体造形物の最終的な形状の誤差は、立体造形物の形状自体によるところが多く、条件が同一であれば、同じような形状部分は同じような変形を生じることが期待される。そこで、補正部３６０は、また、造形データのうち、一部または全部が、事前に登録された所定の形状に一致する場合に、あらかじめ定められた補正を適用して、事前に補正造形データを出力することができる。その場合、所定の形状は１つまたは複数を用意しておき、それぞれにあらかじめ有効な補正データを求めておけばよい。同一条件で、少なくとも部分的に形状が一致する箇所を有する立体形状の造形の際に、少なくとも部分的に形状が一致する箇所を蓄積された修正結果に基づいて修正することができる。
【００４５】
記憶部３７０は、形状データ、造形データ、測定データ、測定形状データ（差分データ）などの種々のデータを記憶装置２０４に記憶する手段である。記憶部３７０は、各機能手段によって、各種データが書き込まれ、また、読み出される。そのほか、あらかじめ定められた補正を適用して、補正造形データを出力するために、記憶部３７０は、算出された差分データに基づき修正された修正結果を蓄積する蓄積手段として機能することができる。
【００４６】
また、造形データの補正は、所定の層までの形状を測定した結果を以降の造形層の造形に対してフィードバックする形としてもよいし、最初の層から補正を反映させて造形処理を最初からやり直してもよい。造形装置１００は、この目的で、以降の層にフィードバックをかけたり、造形をやり直したりするための指示を受け付ける指示受付部３８０を含んでもよい。指示受付部３８０は、オペレータからの、造形途中に修正後の立体形状に基づく造形の継続、または、修正後の立体形状に基づく造形のやり直しの指示を受け付けることができる。
【００４７】
上記の各機能手段によって、精度の高い立体造形物を造形することが可能となる。なお、図３に示す実施形態では、図３に示すすべての機能手段が造形装置１００に含まれているように説明したが、特に限定されるものではなく、一部または全部が情報処理端末１５０に含まれていてもよいし、その一部がさらに、情報処理端末１５０とネットワークを介して接続する他の情報処理装置（例えばクラウド上のコンピュータ）などに含まれていてもよい。
【００４８】
次に、本実施形態の造形装置１００（あるいは情報処理端末１５０）が実行する具体的な処理について説明する。図６は、本実施形態において測定形状データを生成する処理のフローチャートである。造形装置１００は、ステップＳ１００から計算処理を開始する。
【００４９】
ステップＳ１０１では、造形装置１００は、基準となる形状を取得する。上述したように、基準となる形状は、測定時点で造形されているべき立体形状（全体または部分）または断面形状（全体または部分）である。また、立体形状および断面形状も、入力された形状データに基づく立体形状やその形状データから生成された造形データに基づく断面形状のほか、入力された形状データに対し補正をかけた後の補正後の立体形状や補正後の立体形状の断面形状、入力された形状データから生成された造形データに対し補正をかけた後の補正後の断面形状、補正後の立体形状や断面形状にさらに補正をかけた再補正後の立体形状や断面形状、所定の立体形状および断面形状からシミュレーションで予測される所定時点の予測立体形状および予測断面形状であってもよい。
【００５０】
ステップＳ１０２では、造形装置１００は、形状センサ２０７により、測定データにより規定される造形物の測定された形状を取得する。上述したように、測定データは、立体形状または断面形状として表現される。
【００５１】
ステップＳ１０３では、造形装置１００は、基準となる形状に基づいて、基準となる形状を代表する複数の代表点を設定し、変位の適切な初期値を付与する。ステップＳ１０４では、造形装置１００は、測定された形状との誤差が少なくなるように、複数の代表点の位置および変位を少し変化させて更新する。
【００５２】
ステップＳ１０５では、造形装置１００は、複数の代表点の位置および変位を更新した結果、最適化が完了したと判断できるか否かを判定する。最適化の完了は、例えば、前回の誤差と、今回の誤差との変化が所定閾値未満となったこと（誤差がこれ以上改善しなくなったこと）という収束条件で判断してもよいし、収束条件に加えて所定の上限回数での打ち切り条件を加えて判断してもよい。
【００５３】
ステップＳ１０５で、未だ最適化が完了していないと判定された場合（ＮＯ）は、ステップＳ１０４へループさせ、複数の代表点の位置および変位の更新を継続する。一方、ステップＳ１０５で、既に最適化が完了したと判定された場合（ＹＥＳ）は、ステップＳ１０６へ処理を進める。
【００５４】
ステップＳ１０６では、造形装置１００は、最適化された複数の代表点の位置および変位を測定形状データ（差分データ）として出力し、ステップＳ１０７で本処理を終了させる。以降、測定形状データに基づいて立体形状の修正などがされることになる。
【００５５】
図７は、特定の実施形態において造形中の複数時点で取得した測定形状データ（差分データ）に基づいて立体形状の推移を示す実験結果である。図７は、立体形状上の特定の点（例えば図５（Ｂ）のＡで示す代表点）について、造形中の時間の経過とともにどのように変形が推移するかを追跡し、ＸＺ平面上での目標位置との誤差をベクトルとして表示しプロットしたものである。図７を参照すると、熱収縮によって変形が起き、誤差ベクトルが変化していく様子が定量的に観測できる。そのような造形中に複数回の測定を行って計算した測定形状データ（差分データ）に基づいて造形を補正することが可能となる。また、以後どのように変位していくか、最終的にどの変位で収束するのかの予測が可能となる。これにより、造形プロセス条件の変動による造形結果のばらつきを抑えることができる。また、もし同じ形状を造形する場合は、同様の変形が期待できるとして、あらかじめ変形を見込んで立体形状を修正の上で造形することも可能である。
【００５６】
以下、上述した処理により求められる測定形状データを用いて、立体形状を修正する方法について説明する。
【００５７】
図８は、特定の実施形態において、特定の形状の補正結果を保持し、あらかじめ補正する処理（データ依存性の変形をフィードフォワード制御により補正する処理）について説明する図である。造形装置では、入力された形状を、その通りに造形しようとしても、意図通りに造形されない場合がある。この一要因としては、材料を加熱、融解して造形、形状を付与したのち、冷却して固化するまでの間に、材料が流動し、変形してしまうことが考えられる。
【００５８】
このような要因により、例えば図８（Ａ）で示すような六角形５０４の穴５００ａがあいた立体造形物５００を造形しようとしても、図８（Ｂ）で示すように、本来造形したい六角形５１４の角がとれて丸くなった形状５１２の穴５１０ａになってしまうという場合が発生する。このような変形は、同じ材料で同じ造形条件、同じ形状であれば毎回決まって同じように発生する。そこで、造形物形状測定部３４０が形状を測定し、測定形状データ生成部３５０が測定形状データ（差分データ）を算出し、補正部３６０が図８（Ｃ）に示すようにあらかじめ角をより強調するような形状５２４に修正した上で造形することにより、所望の六角形５２２の穴５２０ａを有する造形体５２０を造形することができるようになる。
【００５９】
この修正は、毎回同じなので、一度修正を行った場合、その内容を蓄積しておき、次回同じような形状が現れた場合に適用することで、最初から修正を適用して誤差をなるべく生じさせずに造形することが可能になる。これにより、既知の変形による造形誤差を抑えることができる。また、一度の修正結果のみでは、その時々のばらつきによって誤差が大きい可能性もあるため、繰り返し同じ形状を造形した結果を蓄積することで、誤差をより小さくできると期待される。また、このとき、所望の立体形状と、修正後の立体形状を造形した造形物５２０を測定した形状との差分データに基づいて、プリンタ特性（六角形５１４から形状５１２への変化や修正後の形状５２４から六角形５２２への変化を表す。）を修正し、さらに修正後の立体形状を再修正して、保持している修正結果が更新されてもよい。これにより、造形プロセス条件の変動による造形結果のばらつきを抑えることができる。
【００６０】
次に本実施形態において所望の立体造形物を造形するより具体的な例について説明する。以下の説明では、図９および図１０を適宜参照しながら説明するものとする。図９は、造形物の形状が変形する例と、それに対するフィードバック補正について説明する図であり、図１０は、本実施形態におけるデータフローを示す図である。
【００６１】
上述したように、造形された立体造形物は、造形処理の過程で誤差が生じ、造形データと異なる形状で造形されることがある。また、造形装置１００によって造形された立体造形物は、時間の経過に伴って冷却されることによって熱収縮などが起こり、造形直後と、冷却後とでは立体造形物の形状が変化することがある。例えば、図９（Ａ）に造形直後と、冷却後の立体造形物の形状を示す。破線は、造形直後の形状で、実線は、冷却後の形状である。立体造形物は、冷却により、破線の形状から実線の形状に収縮するので、所望の形状と異なる立体造形物が造形される。本実施形態では、測定形状データ生成部３５０が、各層の造形誤差や収縮による平面形状の変形を測定形状データ（差分データ）として算出し、それに基づき各層の平面形状を補正することができる。
【００６２】
図１０に示すように、ｎ層まで造形された立体造形物の第ｎ層のｘｙ平面の形状を造形物形状測定部３４０が測定し、測定データを取得する。測定形状データ生成部３５０は、第ｎ層造形データ（平面形状）と、第ｎ層の測定データ（平面形状）とに基づいて、第ｎ層の基準となる形状からの実際の形状の差分データを算出する。
【００６３】
ここで、造形層の誤差の例を、図９（Ｂ）に示す。破線は、造形データに基づく基準平面形状を表し、実線は、実際に造形された造形層の測定平面形状を表す。図９（Ｃ）は、得られる測定形状データ（差分データ）を示す。差分データは、図９（Ｃ）に例示するような基準平面形状の代表点からの変位ベクトルで表され、造形された造形層の端部が変位した方向および変位量を示す。
【００６４】
補正は、図９に示す変位ベクトルに基づいて、次層の造形誤差を補正する補正ベクトルを算出する。例えば、第ｎ層と第ｎ＋１層が同じ形状である場合には、第ｎ層で発生した変形が第ｎ＋１層でも発生する蓋然性が高いものとみなして、第ｎ層の平面形状の変位ベクトルに基づいて補正ベクトルを算出することができる。また、第ｎ層と第ｎ＋１層が異なる形状である場合でも、変位ベクトルと、次の図１１で示す区間や代表点と対応点との関係に基づいて、補正ベクトルを算出することができる。
【００６５】
図９（Ｄ）に算出した補正ベクトルの例を示す。補正ベクトルは、基本的には変位ベクトルを反転したものになる。補正しすぎて発振することがないよう、変位ベクトルの大きさよりは小さくなるように補正ベクトルを決める。
【００６６】
図９（Ｅ）に、第ｎ層と第ｎ＋１層が異なる形状である場合の補正の例を示す。第ｎ層の造形データ（平面形状）１３０に対して、第ｎ＋１層の造形データ（平面形状）１３１が与えられたとする。このとき、次の図１１で示すように第ｎ層と第ｎ＋１層の形状の対応関係にもとづき、第ｎ層の誤差をフィードバックして第ｎ＋１層の補正ベクトルを求め、１３２を得る。
【００６７】
補正部３６０は、補正ベクトルに基づいて、第ｎ＋１層造形データを補正し、第ｎ＋１層補正造形データを生成する。すなわち、第ｎ＋１層補正造形データは、第ｎ層までの測定結果に基づく、造形誤差による変位が補正された造形データである。そして、造形データに基づいて、造形ユニット制御部３３０は、造形ユニット２０６を制御する。
【００６８】
図１１は、積層造形において造形層の形状の変形を追跡し、次層以降の層で形状のフィードバック補正をする処理について説明する図である。積層造形において、積層する層の形状は、毎層異なる。しかし、上下の隣接する層間は似たような形状になることが期待される。そして、立体形状の変形のうち、熱収縮による反りのような立体全体の変形現象では、異なる層の平面形状は同じような変形を示すことが多い。このため、層毎に形状が多少異なっても、下層においておよそどのような変形が起きているかを追跡することで、その上層の造形でも同じような変形が起きるという想定にもとづいてフィードバック補正することができる。
【００６９】
そこで、事前に層間で対応する区間を決定し、下層の代表点ａに対応する上層の対応点ａ’を求めておく。図１１（Ａ）および図１１（Ｂ）は、層間の対応関係の決定の仕方を説明する図である。図１１（Ａ）は、上層および下層が類似する場合の対応関係の決定し方を説明し、図１１（Ｂ）は、上層および下層で形状が異なる場合の対応関係の決定し方を説明する。図１１（Ｂ）に示すように、層間で形状が急に変化する場合は、対応する区間がない範囲も想定される。いずれにせよ、層間で対応する区間を定めておくことにより、ある層のある点が、別の層でどの点に対応する点が決まる。そして、下層の断面形状について、複数の代表点の変位ベクトルとして差分データを計算し、それを上層の断面形状の造形にフィードバックする際には、上層の対応点ａ’に変位ベクトルによる変形が起こるものとして補正することができるようになる。
【００７０】
図１１（Ｃ）は、例示としての造形物およびその層構成を示す図である。図１２は、図１１（Ｃ）に示す層毎に形状、サイズがことなる立体物を造形するとして、上辺上の５点に関して、積層する毎にどのように変形したかを対応点の変形の推移としてプロットしたグラフである。なお、図１２は、横軸が層、縦軸が測定形状データとして得られた差分（単位ｍｍ）で、上段が補正無しの場合、下段が補正有りの場合を示す。図１２によると、層毎に形状が異なっていても、層間で対応区間を決めて、対応する点の誤差をフィードバックして形状を補正することで造形誤差を抑えることができる。
【００７１】
次に、本実施形態の造形装置が実行する具体的な処理について説明する。図１３は、本実施形態において造形装置が立体造形物を造形する処理のフローチャートである。
【００７２】
造形装置は、ステップＳ１０００から造形処理を開始する。ステップＳ１００１で、造形装置は、補正ベクトルを修正するためのダミー造形処理を行う。なお、ダミー造形は省略することもできる。
【００７３】
ステップＳ１００２では、造形装置は、所望する形状の立体造形物を造形する、メイン造形処理を行う。メイン造形を行った後、ステップＳ１００３で造形装置は処理を終了する。
【００７４】
以下に、造形される形状と、ダミー造形処理、メイン造形処理の詳細について説明する。図１４は、本実施形態における造形物の形状の変形とそのフィードフォワード補正とその修正について説明する図である。図１５は、本実施形態におけるダミー造形処理のフローチャートである。図１６は、本実施形態におけるメイン造形処理のフローチャートである。また、図１５および図１６の説明では、適宜図１４を参照しながら説明するものとする。
【００７５】
例えば、所望する形状が図１４（Ａ）に示すように、ｘｙ平面に９０度の角を含む形状であった場合について説明する。この造形データに基づいて造形すると、造形材料の表面張力や粘度によって、図１４（Ｂ）に示す形状の造形物が造形されるものとする。つまり、造形データに示される９０度の角は含まれずに、角が丸みを帯びた形状となる。補正部３６０は、あらかじめ図１４（Ａ）のような形状に対して、図１４（Ｃ）のような形状になるように補正を行う。その結果、実際に造形される造形物は図１４（Ｄ）のような形状となり、所望の造形データの形状（図１４（Ａ））に近い形状を造形することができる。
【００７６】
図１５に示すように、造形装置は、ステップＳ２０００からダミー造形処理を開始する。ステップＳ２００１では、造形ユニット２０６は、所定の形状をしたダミー造形物を造形する。ここでは、一例として、図１４（Ａ）に示す９０度の角度を含む造形データに基づいて、あらかじめ所定の補正を行い、図１４（Ｃ）の造形物を造形したものとする。
【００７７】
ステップＳ２００２では、造形物形状測定部３４０は、造形されたダミー造形物の形状を測定する。ここでは、ダミー造形物は、図１４（Ｅ）のような形状が造形され、測定されたものとする。すなわち、図１４（Ａ）の形状に対して、角がとがった形状で造形されたものとする。図１４（Ｆ）は、図１４（Ｅ）の破線で示す領域を拡大した図であり、変位ベクトルを矢線で以て示している。
【００７８】
ステップＳ２００３では、測定形状データ生成部３５０は、測定されたダミー造形物の形状データに基づいて、造形の基となった造形データから測定形状データ（差分データ）を算出する（例では図１４（Ｆ））。
【００７９】
ステップＳ２００４で、補正部３６０は、測定形状データ（差分データ）に基づいて、図９に示したものと同様の手順で補正ベクトルを算出する（例では、図１４（Ｇ））。以降、補正部３６０では、修正された補正ベクトルを使って補正をおこなう。なお、ステップＳ２００４において、補正ベクトルは、新たに算出されてもよいし、あらかじめ設定されていた補正ベクトルを修正することとしてもよい。修正された補正ベクトルを適用して再度同じ形状を造形し、所望の形状になるまで繰り返してもよい。ステップＳ２００４で修正された補正ベクトルは、記憶部３７０に記憶することができる。結果として、例えば図１４（Ａ）の造形データに対しては、補正部３６０でもともとは図１４（Ｃ）のように補正されるはずであったが、図１４（Ｇ）のように補正されるように修正された。
【００８０】
なお、ダミー造形物によって補正ベクトルを算出する場合には、補正の精度を向上するために、複数のダミー造形物に基づいて補正ベクトルを算出してもよい。このような場合には、ステップＳ２００５では、全てのダミー造形物を造形し、補正ベクトルを算出したか否かによって処理を分岐する。
【００８１】
全てのダミー造形物について造形、補正ベクトルの算出をした場合には（ＹＥＳ）、ステップＳ２００６に進み、ダミー造形処理を終了する。全てのダミー造形物について造形、補正ベクトルの算出をしていない場合には（ＮＯ）、ステップＳ２００１に戻り、他のダミー造形物についてもステップＳ２００１〜Ｓ２００４の処理を繰り返す。
【００８２】
このようにしてダミー造形物を造形して、補正ベクトルを算出することで造形物の造形精度を向上できる。例えば、ダミー造形物の基となる造形データが図１４（Ａ）のような形状であって、あらかじめ図１４（Ｃ）のような形状に補正することになっていたとして、ダミー造形によって実際には図１４（Ｅ）になることがわかれば、補正形状は図１４（Ｃ）ではなく図１４（Ｇ）とするように修正することで、造形物の角の収縮に対応でき、所望の形状の立体造形物を造形することができる。
【００８３】
ダミー造形処理によって補正ベクトルを算出することで、その後に行うメイン造形処理での造形精度を向上できる。造形装置は、図１６に示すように、ステップＳ３０００からメイン造形処理を開始する。
【００８４】
ステップＳ３００１では、造形データ生成部３２０は、データ入力部３１０に入力された立体形状データを層ごとに分割したスライスデータとして、平面形状の造形データを生成する。ここでは、一例として、所望の形状は、図１４（Ａ）に示す形状であって、ステップＳ３００１では、この形状を造形するための造形データを生成したものとする。
【００８５】
ステップＳ３００２では、補正部３６０は、造形データの平面形状に応じた測定形状データを適用して、造形データを補正する。まず、造形データの中で、所定の形状に一致する部分を探索する。例えば、造形データの中で図１４（Ａ）に一致する部分があったとする。所定の形状に対しては、あらかじめ補正ベクトルが定められており、それを適用して補正する。ダミー造形をおこなって、あらかじめ定められた補正ベクトルが修正されている場合は、その修正された補正ベクトルを適用して補正する。すなわち、造形データを図１４（Ｃ）の造形データに補正することで、造形誤差や収縮による変形が考慮されるので、図１４（Ｄ）に示す形状の立体造形物が造形できる蓋然性が高い。したがって、ステップＳ３００２では、適用し得る形状の補正ベクトルによって、造形データを補正する（形状データ依存性の変形をフィードフォワード制御で補正する）。なお、適用する補正ベクトルは、同じ形状のものでなくてもよく、例えば、類似する形状の補正ベクトルによって補正してもよい。
【００８６】
ステップＳ３００３では、補正部３６０は、必要に応じて、前の層の造形データ（平面形状）と、造形結果（平面形状）の測定データに基づいて算出した測定形状データ（差分データ）を適用して、造形データを補正する（平面形状をフィードバック制御で補正する）。具体的には、図９および図１０に示した手順に従って補正ベクトルを算出する。
【００８７】
ステップＳ３００４では、造形ユニット制御部３３０が、補正された造形データに基づいて造形ユニット２０６を制御して、造形層を造形する。その後、ステップＳ３００５では、全ての造形層を造形したかによって処理を分岐する。全ての造形層を造形した場合には（ＹＥＳ）、立体造形物が完成したことから、ステップＳ３０１０に進み、メイン造形処理を終了する。全ての造形層を造形していない場合には（ＮＯ）、次層を造形するために、ステップＳ３００６に進む。
【００８８】
ステップＳ３００６では、次層の造形層を補正するために、造形物の平面形状を測定する。ステップＳ３００４で造形された造形層は、補正された造形データに基づくので、所望の形状で造形されている。しかしながら、造形物の形状は、種々の条件によって変わり得るものであり、補正してもなお所望の形状からの変形が生じる場合がある。例えば、図１４（Ｃ）に示すように補正したとしても、補正量が過剰であった場合には、図１４（Ｅ）のように補正箇所が突出するような形状となることがある。したがって、ステップＳ３００６以降では、図１０に示したように、造形した層（第ｎ層）の測定データに基づく測定形状データ（差分データ）に基づいて、次層（第ｎ＋１層）以降の造形データを補正して造形する。
【００８９】
ステップＳ３００６では、造形物形状測定部３４０が、造形物の形状を測定し、測定データを測定形状データ生成部３５０に出力する。ステップＳ３００７では、測定形状データ生成部３５０は、造形物形状測定部３４０で得られた測定データに基づき測定形状データを算出する。
【００９０】
ステップＳ３００７の後、ステップＳ３００３に戻り、全ての造形層を造形するまで、上記の各処理を繰り返す。これによって、所望の形状の立体造形物を造形することができる。
【００９１】
なお、上述したようにダミー造形物の形状は、任意の形状であってもよい。ダミー造形物は、様々な角度の角であってもよい。様々な平面形状において、あらかじめ補正ベクトルを定めておき、ダミー造形によって補正ベクトルを修正することで、任意形状においても最初から最適な補正ベクトルを適用できる部分が多くなり、造形精度を向上できる。
【００９２】
ところで、上述した実施形態においては、測定形状データ生成部３５０は、造形物形状測定部３４０が測定した測定データを処理することによって、差分データを算出する。ここで、測定データは、造形物の端部の集合として表現される外形を示すデータであり、これによって造形物の形状が示される。したがって、適切な補正を行うために、造形物の端部を正確に測定することが求められる。
【００９３】
図１７は、形状センサ２０７が検出する端部（以下、「検出端部」として参照する）を説明する図である。図１７（Ａ）は、造形された立体造形物の断面図である。ここで形状センサ２０７が第ｎ＋１層の造形層の端部を検出する場合について考える。造形層の端部は、形状センサ２０７によって検出されることから、造形層のどの位置を端部として定義するかによって、測定される造形層の形状が変わり得ることとなる。例えば、図１７（Ａ）に示すように、端部の位置をｘ１、ｘ２、ｘ３などのうち、どれを選択するかによって、測定データが示す造形層の形状が変わることになる。また、１つの造形層で定義した端部の位置を、他の造形層でも適用しないと正確な測定データが得られず、その後の補正処理に影響を及ぼすこととなる。
【００９４】
例えば、形状センサ２０７が赤外線光源と赤外線センサで構成される場合には、図１７（Ｂ）に示すように、光源から照射された赤外線が造形層に反射し、その反射光を検知することで、形状センサ２０７は、造形層の端部を検出する。一方で、図１７（Ｂ）に示すように、造形層の端部近傍の断面の形状が丸みを帯びている場合などには、当該丸み部分に照射された光は、様々な方向に反射し、どのような形状として検出されるかはセンサの形状検出アルゴリズムに依存する。したがって、図１７（Ｃ）に示すように、検出端部の位置と、物理的な端部の位置とが異なる場合がある。このような両者間の差異は、測定誤差となり、補正処理に影響を及ぼす。
【００９５】
補正が測定誤差の影響を受けると、所望の形状の立体造形物が造形できなくなる。例えば、所望の立体造形物の端部が図１７（Ｄ）の破線で示されるような形状の場合には、第ｎ層の造形層が所望の形状で造形されても、検出端部は、図１７（Ｃ）において示したように、物理的な端部よりも内側の位置で検出される。すなわち、第ｎ層の造形層は小さく造形されたものと判定され、第ｎ＋１層の造形層は、形状が大きくなるよう造形データが補正される。そのため、第ｎ＋１層の造形層は、物理的な端部が所望の形状の端部よりも外側に位置することとなる。その後も同様に、造形層を積層するごとに下層の造形誤差の影響を受けるため、所望の立体造形物が造形できなくなる。なお、ここでは赤外線光源と赤外線センサから構成されるセンサを例に説明したが、形状センサ２０７が赤外線光源と赤外線センサから構成されるもの以外のものであっても、同様である。
【００９６】
図１７では、検出端部の位置と、物理的な端部の位置との差に起因する測定誤差について説明した。このような誤差が生じると、造形される立体造形物の機能を損なうことにもなる。図１８は、検出端部に基づいて補正された造形層の例を示す図である。図１８（Ａ）は、造形される立体造形物の断面図であり、一例として、寸法がｄの孔が開けられ、当該孔部に物体をはめ込むことが可能な構造を示している。このような構造の場合、孔部が大きく造形されると、挿入される物体が抜け落ちやすくなる。一方で、孔部が小さく造形されると、物体を挿入することができなくなる。したがって、物理的な端部を基準とした孔部の寸法を正確に造形することが求められる。
【００９７】
しかしながら、図１７で説明したように、形状センサ２０７による端部の測定では測定誤差が生じうる。したがって、図１８（Ｂ）に示すように、物理的な端部を基準とした寸法がｄである孔部を造形した場合であっても、形状センサ２０７が測定する孔部の寸法はｄ’として検出されることとなる。その結果、孔部を構成する造形層の形状が形状誤差の影響を受けて補正され、図１８（Ｃ）のように、上層の孔が塞がり、物体が挿入できなくなる。
【００９８】
そこで、検出端部の位置を所定のオフセット値で以て修正することで、物理的な端部を基準とした測定データを出力することができ、適切な補正を行うことができる。図１９は、本実施形態におけるオフセット値に基づく測定データの修正を説明する図であり、立体造形物の断面図を示している。図１９において、実線は、立体造形物の物理的な端部を示し、破線は、検出端部を示している。
【００９９】
例えば、図１９（Ａ）のような形状の立体造形物が造形された場合には、検出端部の形状が、測定データとして出力される。この測定データを所定のオフセット値で修正することで、立体造形物の物理的な端部が求まる。なお、オフセット値の算出や、物理的な端部の算出を行う機能手段は特に限定されないが、造形物形状測定部３４０が行ってもよいし、測定形状データ生成部３５０が行ってもよく、または、両者の協働によって行ってもよい。ここで求まった物理的な端部の形状に基づいて、測定形状データ生成部３５０は、差分データを算出する。これによって、補正部３６０は、造形データを適切に補正することができ、所望の立体造形物を造形することができる。
【０１００】
また、形状センサ２０７の方式、配置、走査方向などによっては、図１９（Ｂ）に示すように、立体造形物の物理的な端部と検出端部との差分が、ｘ軸方向とｙ軸方向で異なって測定される場合がある。このような場合には、ｘ軸方向とｙ軸方向とで異なるオフセット値を設定し、それぞれの方向について測定データを修正することで、立体造形物の物理的な端部を求めることができる。
【０１０１】
測定データを修正するためのオフセット値は、例えば溝部を有する造形物を造形し、その溝部が形成される具合によって算出することができる。また、オフセット値は、ダミー造形物を造形することによっても算出することができる。なお、オフセット値を算出するタイミングは、特に限定されない。オフセット値は、例えば、メイン造形前にダミー造形して算出してもよいし、メイン造形中に一定時間が経過した場合に算出してもよいし、造形材料や、周辺温度、周囲の明るさなど、種々の環境条件が変化した際などに算出してもよい。このようにして、オフセット値を適宜算出することで、検出端部を正確に修正することができ、所望の立体造形物を造形することできる。
【０１０２】
図２０は、本実施形態においてオフセット値を算出するためのダミー造形物の形状の例を示す図である。図２０（Ａ）は、本実施形態において造形されるダミー造形物の形状の一例であり、ダミー造形物の上面図、側面図、正面図を示している。本実施形態のダミー造形物は、寸法がａ，ｂ，ｃである溝部を有している。ここで、各溝部の寸法は、物理的な端部を基準とした寸法を指すものとする。図２０（Ａ）の例では、溝部の寸法が、ａ＞ｂ＞ｃの場合を示している。なお、以下の説明では、寸法がａの溝部を「溝部Ａ」として参照し、同様に、寸法がｂの溝部を「溝部Ｂ」、寸法がｃの溝部を「溝部Ｃ」としてそれぞれ参照する。また、図２０（Ａ）に示すダミー造形物は一例であって、実施形態を限定するものではない。したがって、図２０（Ａ）に示される形状以外のダミー造形物であってもよく、また、溝部の数なども特に限定されるものではない。
【０１０３】
図２０（Ｂ）は、ダミー造形物の溝部を拡大した断面図である。造形されるダミー造形物の溝部が形状センサ２０７によって測定された場合には、各溝部は所定の寸法（ａ，ｂ，ｃなど）が測定されることが望ましい。しかしながら、ダミー造形を行った場合に、造形誤差などによって、ダミー造形物が所望の形状とならない場合がある。例えば、図２０（Ｃ）に示すように、溝部が塞がってしまう場合などが生じうる。
【０１０４】
そこで、本実施形態の造形装置１００は、種々の寸法の溝部を有するダミー造形物を造形して形状を測定し、溝部が塞がれた寸法と、塞がれなかった寸法とに基づいて、測定データのオフセット値を推定する。例えば、図２０（Ａ）に示すダミー造形物の形状データに基づいて造形した場合を例に考える。ここで、寸法には以下の３種類がある。造形装置１００に対して造形を指令する寸法と、実際に造形した造形物の物理的な端部の位置から計測できる寸法と、造形物形状測定部３４０が検出する寸法との３種類である。
【０１０５】
ダミー造形物は、造形誤差によって、図２０（Ｄ）のように、溝部が所定の寸法よりも小さくなって造形される場合がある。図２０（Ｄ）では、ダミー造形物の各溝部はいずれも所定の寸法よりも小さく造形され、特に最も寸法の小さい溝部Ｃが塞がって造形された場合を示している。このような場合、塞がった溝部Ｃの所定の寸法ｃと、塞がらなかった溝部のうち最も小さい寸法であるｂとに基づいて、測定データを修正するためのオフセット値を推定することができる。
【０１０６】
例えば、溝部Ｂの寸法ｂが４ｍｍ、溝部Ｃの寸法ｃが３ｍｍであるダミー造形物を造形し、図２０（Ｄ）に示す形状のダミー造形物が造形されたものとする。この結果、造形物形状測定部３４０は、溝部Ｂは塞がらず、寸法３．８ｍｍ（＝ｂ’）として検出し、溝部Ｃは塞がっていると検出できたものとする。造形装置１００には、寸法ｂ＝４ｍｍの溝部Ｂの造形を指令したにもかかわらず、造形物形状測定部３４０の測定結果は寸法ｂ’＝３．８ｍｍであった。溝部Ｃについても、寸法ｃ＝３ｍｍの造形を指令すれば、造形物形状測定部３４０の測定結果は寸法ｃ’＝２．８ｍｍになると期待できるが、実際には溝がふさがっていると検出できた。これは、検出端部と物理的な端部の位置との差で発生していることによるものである。
【０１０７】
このような場合、測定データを物理的な端部に基づく形状に修正するためのオフセット値は、ｂ’の半分の値（１．９ｍｍ）と、ｃ’の半分の値（１．４ｍｍ）の間にあるものと推定することができる。ここで、各寸法の半分の値を求めるのは、溝部の両側のオフセットを考慮するためである。
【０１０８】
したがって、オフセット値は、１．４ｍｍ〜１．９ｍｍと推定することができる。なぜならば、仮にオフセット値が１．４ｍｍよりも小さい場合には、溝部Ｃは溝として検出できるはずだからである。また、仮にオフセット値が１．９ｍｍよりも大きい場合には、溝部Ｂも塞がれて検出できないはずである。すなわち、オフセット値は、１．４ｍｍ〜１．９ｍｍと推定することができ、このオフセット値で検出端部を修正することで、物理的な端部に基づく形状の測定データを得ることができる。
【０１０９】
図２０では、種々の寸法の溝部を有するダミー造形物によってオフセット値を求める例について説明したが、オフセット値を求める方法はこれに限定されない。例えば、溝部の寸法を変えながらダミー造形を繰り返すことで、より正確なオフセット値を算出することができる。図２１は、本実施形態におけるオフセット値の算出処理のフローチャートである。
【０１１０】
造形装置１００は、図１３のステップＳ１００１のダミー造形処理において、図２１に示す処理を行うことで、オフセット値を算出することができる。造形装置１００は、ステップＳ１００１を契機に、ステップＳ４０００から、オフセット値を算出する処理を開始する。ステップＳ４００１では、初期値として、溝がふさがらない最小の溝寸法指令幅Ｍｉｎ（Ｗｏｐｅｎ）＝０、溝がふさがる最大の溝寸法指令幅Ｍａｘ（Ｗｃｌｏｓｅ）＝０、造形する溝寸法指令値Ｗ＝Ｗ０とおく。なお、初期値Ｗ０は、任意の値とすることができる。
【０１１１】
造形ユニット制御部３３０は、ステップＳ４００２で、造形ユニット２０６を制御し、幅の寸法がＷである溝部を有するダミー造形物を造形する。なお、ステップＳ４００２で造形されるダミー造形物は、１層の造形層であってもよい。
【０１１２】
造形物形状測定部３４０は、ステップＳ４００３において、ステップＳ４００２で造形したダミー造形物の形状を測定する。ステップＳ４００３では、溝部を検出したか否かによって、処理を分岐する。溝部が検出された場合には（ＹＥＳ）、ステップＳ４００４に進む。溝部が検出されなかった場合には（ＮＯ）、ステップＳ４００６に進む。
【０１１３】
まず、ステップＳ４００３で溝部が検出された場合について説明する。この場合、溝部が検出されたというだけではオフセット値を算出できず、より正確なオフセット値を算出するために、Ｗの値をさらに細くして、再度溝部をダミー造形することが好ましい。
【０１１４】
ステップＳ４００４で、溝部の幅の検出値は、Ｗｓｃａｎであったとする。また、溝が塞がらない最小の溝寸法検出値Ｍｉｎ（Ｗｓｃａｎ）＝Ｗｓｃａｎ、Ｍｉｎ（Ｗｏｐｅｎ）＝Ｗと更新する。そして、ステップＳ４００５では、Ｗの値を（Ｍｉｎ(Ｗｏｐｅｎ)＋Ｍａｘ(Ｗｃｌｏｓｅ)）／２として更新する。このようにしてＷの値を更新することで、さらに細い幅の溝部を造形することができる。ステップＳ４００５においてＷの値を更新した後、ステップＳ４０１０の処理に進む。
【０１１５】
次に、ステップＳ４００３で溝部が検出されなかった場合について説明する。この場合、溝部の幅Ｗを大きくして、再度溝部をダミー造形することが好ましい。ステップＳ４００６では、Ｍａｘ（Ｗｃｌｏｓｅ）＝Ｗと更新する。その後、ステップＳ４００７において、Ｍｉｎ（Ｗｏｐｅｎ）の値が０より大きいか否か（Ｍｉｎ(Ｗｏｐｅｎ)が初期値のままでないかどうか）によって処理を分岐する。Ｍｉｎ(Ｗｏｐｅｎ)の値が０より大きい場合には（ＹＥＳ、初期値ではない）、ステップＳ４００８に進む。ステップＳ４００８では、Ｗの値を（Ｍｉｎ(Ｗｏｐｅｎ)＋Ｍａｘ(Ｗｃｌｏｓｅ)）／２として更新する。ステップＳ４００８においてＷの値を更新した後、ステップＳ４０１０の処理に進む。
【０１１６】
ステップＳ４００６において、Ｍｉｎ（Ｗｏｐｅｎ）の値が０以下の場合には（ＮＯ、初期値のまま）、ステップＳ４００９に進む。ステップＳ４００９では、Ｗの値を２Ｍａｘ（Ｗｃｌｏｓｅ）として更新する。ステップＳ４００９においてＷの値を更新した後、ステップＳ４０１０の処理に進む。
【０１１７】
ステップＳ４００５、Ｓ４００８またはＳ４００９においてＷの値を更新した後、ステップＳ４０１０の処理を行う。ステップＳ４０１０では、Ｍｉｎ（Ｗｏｐｅｎ）の値が０ではなく（条件１）、かつ、（Ｍｉｎ(Ｗｏｐｅｎ)−Ｍａｘ(Ｗｃｌｏｓｅ)）の値が閾値以下である（条件２）か否かによって処理を分岐する。条件１は、溝部が塞がらなかった造形と、溝部が塞がった造形とを少なくとも１回ずつ行うことを保証するための条件である。また、条件２は、溝が塞がらない最小の溝部寸法指令値と、溝が塞がる最大の溝部寸法指令値との差が充分に小さくなれば、実用的なオフセット値が得られることから、閾値以下になった場合には、それ以上のループ処理を行わないようにするための条件である。ステップＳ４０１０の条件を満たさない場合には（ＮＯ）、ステップＳ４００２に戻り、条件を満たすまで上記の各処理を繰り返す。ステップＳ４０１０の条件を満たす場合には（ＹＥＳ）、ステップＳ４０１１に進む。
【０１１８】
ステップＳ４０１１では、Ｍｉｎ（Ｗｓｃａｎ）の値をオフセット値として設定する。その後、ステップＳ４０１２で造形装置１００は、ダミー造形処理によるオフセット値の算出処理を終了する。
【０１１９】
上述した図２１の処理によれば、許容範囲内に収束するまでオフセット値の算出を繰り返すことができるため、より正確なオフセット値で検出端部の測定データを修正することができる。
【０１２０】
図２０、図２１では、ダミー造形に基づいてオフセット値を求めたが、さらに別の実施形態では、メイン造形処理時にオフセット値を算出することとしてもよい。図２２は、メイン造形処理中にオフセット値を算出する例について説明する図である。
【０１２１】
図２２（Ａ）に示す形状の立体造形物を造形する場合には、造形データ生成部３２０は、入力された立体形状データを層ごとに分割したスライスデータとして、平面形状の造形データを生成する。また、造形データ生成部３２０は、併せてツールパスを生成する。図２２（Ｂ）はツールパスの一例を示しており、造形層の輪郭部分を造形したあと、当該輪郭を充填するように造形層の内部を造形する。造形層の内部は、図２２（Ｂ）に示すように、所定の角度に平行して造形される。一般に、平行するツールパスの間隔が狭いと、内部充填率が高くなり、立体造形物の強度が強くなる。一方で、ツールパスの間隔が広いと、造形材料の使用量を低減でき、また、造形に要する時間を短縮できる。このツールパスの間隔は、ユーザが目的に応じて指定する。
【０１２２】
ここで、メイン造形処理において、平行するツールパスの間隔を部分的に変化することが許容される場合、当該部分のツールパスの間隔を変化させながら造形することで、上述したダミー造形物と同様に、溝部が生じたか否かの判定が可能となる。上述したメイン造形処理中におけるオフセット値の算出では、造形層の一部についてツールパスの間隔を変更するものである。したがって、立体造形物に及ぼす影響は小さく、ユーザが所望する形状の立体造形物を造形しつつ、オフセット値を算出することができる。
【０１２３】
例えば、隣接する線状の造形物が接触する場合には、ツールパスの間隔を広くする。また、隣接する線状の造形物間に溝部が形成される場合には、ツールパスの間隔を狭める。このようにして、平行するツールパスの間隔を変化させて造形し、造形物形状測定部３４０が溝部の有無を測定することで、溝部が発生するツールパスの間隔と、溝部が発生しないツールパスの間隔との閾値を算出することができる。これによって、ダミー造形物によるオフセット値の算出と同様にして、オフセット値を推定することができる。
【０１２４】
ところで、上述した実施形態においては、測定形状データ生成部３５０は、造形物形状測定部３４０が形状センサ２０７を制御することによって測定した測定データを処理することで、差分データを算出する。したがって、差分データの精度、および、差分データを計算するためにかかる計算時間や必要な計算リソース量は、測定データの測定精度に依存する。形状を測定する手段である形状センサ２０７の方式としては、複数の種類の方式があるが、ここでは光切断方式の３Ｄスキャナを用いた場合を一例にして、以下、測定データの測定精度に関して説明する。
【０１２５】
光切断方式の３Ｄスキャナは、線状にレーザ光を照射するレーザ光源およびカメラなどの撮像装置を含み構成される。３Ｄスキャナは、レーザ光源から線状のレーザ光を対象物に照射し、対象物上でレーザ光が描く線（輝線）を撮像装置で撮影する。輝線の位置とレーザ光源およびカメラとの位置関係に基づいて、対象物の輝線の部分の奥行きが算出され、立体情報が得られる。
【０１２６】
撮像装置で撮影した１枚の画像から、輝線があたった線状の箇所の奥行きが得られる。測定対象物全体の奥行きを得るためには、３Ｄスキャナを走査しながら連続して撮影が行われ、奥行き情報が計算されて、立体データが再構成される。ここで、高精度に形状を測定するためには、高解像度の画像を撮像できるカメラを用いたり、走査速度を遅くしたりして、高解像度の奥行き情報を取得することが望ましい。しかしながら、奥行き情報を高解像度化すると、計算処理するデータ量が増大し、ひいては計算処理の時間が長くなったり、より多くの計算資源を消費したりすることになる。また、高解像度化のため走査速度を低下させる場合は、走査時間が長くなる。すなわち、測定精度と、要する時間や計算リソースとの間には、トレードオフの関係があり、このトレードオフの関係は、例示した光切断方式の３Ｄスキャナ以外の測定方式にも共通した事項である。
【０１２７】
以下、図２４を参照しながら、上述した測定精度と要する時間や計算リソースとの間のトレードオフに対処することができる他の実施形態について説明する。図２４は、他の実施形態の造形装置１００に含まれるソフトウェアブロック図である。なお、図２４に示すソフトウェアブロック図は、図３に示したものと共通する部分が有り、以下、相違点を中心に説明する。
【０１２８】
造形装置１００は、図３を参照して説明した実施形態と同様に、データ入力部３１０、造形データ生成部３２０、造形ユニット制御部３３０、造形物形状測定部３４０、測定形状データ生成部３５０、補正部３６０および記憶部３７０を含む。
【０１２９】
造形データ生成部３２０は、造形層毎の造形データを生成する生成手段である。本実施形態においては、造形データ生成部３２０は、さらに、生成した造形データを造形物形状測定部３４０に入力することができる。
【０１３０】
造形物形状測定部３４０は、測定手段として、形状センサ２０７を制御し、造形中の造形層（造形途中の造形物）もしくは造形後の立体造形物の形状として、寸法や高さなどの測定データを測定する手段である。ここで、形状センサ２０７は、複数の段階で測定精度を切替可能に構成されている。複数の段階の測定精度は、例えば３Ｄスキャナの走査速度を複数の値設けることで実現することができるが、走査速度と組み合わせて、あるいは、走査速度に代えて、形状センサ２０７を構成する撮像装置で取得ないし保存する画像の解像度の設定（画質設定）が用いられてもよい。
【０１３１】
図２４に示すソフトウェアブロック図においては、造形物形状測定部３４０は、より詳細には、範囲分割部３４１および範囲別測定精度設定部３４２を含み構成される。
【０１３２】
範囲分割部３４１は、造形物形状測定部３４０に入力された造形データに基づいて、形状測定範囲を分割する。ユーザが形状データにおいて各部分に対して属性値（形状の複雑度を表す値）を事前に付している場合には、形状データに基づいて生成された造形データ内の各形状の領域に対しても属性値が付されており、範囲分割部３４１は、その予め指定された属性値に基づいて、全測定範囲を１または複数の範囲に分割する。そのような属性値が与えられない場合でも、範囲分割部３４１は、入力された造形データを解析して、上述した基準となる形状に代表点を設定する処理と同様に、単調で低い空間周波数成分しか有さない形状の部分と、複雑で高い空間周波数成分を持つ形状の部分とに２分割したり、あるいは、３以上の複雑度で分割したりすることができる。範囲分割部３４１は、本実施形態における分割手段を構成する。
【０１３３】
なお、測定範囲を分割できる粒度は、形状センサ２０７にも依存する。このため、所定の複雑性を有する形状に対応する１または複数の領域を包含するように各範囲が設定される。その際に、複雑性の高い領域と複雑性の低い領域が入り組んでおり、複雑性の低い領域を包含する範囲に、複雑性の高い形状の部分が含まれてしまう場合には、複雑性の高い形状を優先することができる。
【０１３４】
範囲別測定精度設定部３４２は、範囲分割部３４１により分割された範囲ごとに、形状センサ２０７に切替可能な複数の段階のいずれかの段階の測定精度を設定する。範囲別測定精度設定部３４２は、より複雑であるとされた領域を包含する範囲に対しては、より高い測定精度を設定し、より単純であるとされた領域を包含する範囲に対しては、より低い測定精度を設定する。範囲別測定精度設定部３４２は、本実施形態における精度設定手段を構成する。造形物形状測定部３４０は、範囲毎に形状センサ２０７に設定する測定精度を切り替えて、測定データを測定する。
【０１３５】
図２４は、積層中のある一層分の造形データ６００を例として示している。図２４において、造形すべき造形物を構成する領域として、領域６１０と領域６２０との２つの領域が示されている。領域６１０の形状は、直線的でサイズも大きいが、領域６２０は、比較的複雑な形状を有している。このような例では、範囲分割部３４１は、全測定範囲を、領域６１０を包含する第１の測定範囲６３０と、領域６２０を包含する第２の測定範囲６４０とに分割する。そして、範囲別測定精度設定部３４２は、第１の測定範囲６３０に対しては低精度に設定し、第２の測定範囲６４０に対しては、高精度に設定する。これにより、第１の測定範囲６３０ついては、より高速な測定が可能となり、あるいは、データの処理時に短時間・低リソースで処理できるようになる。一方、第２の測定範囲６４０については、測定は低速となり、データの処理時も長時間・高リソースを要することになるが、高精度の形状データが取得される。
【０１３６】
高精度で形状を測定する必要がある場合は、測定に要する時間を犠牲にしても高解像度で測定データが取得される。逆にそれほど精度を必要としない場合は、測定に要する時間を短くするために低解像度で測定データが取得される。これにより、全体として測定に要する時間や必要なリソース量を抑制しつつ、必要十分な精度で造形物を測定することが可能となる。
【０１３７】
測定形状データ生成部３５０は、造形物形状測定部３４０により測定された測定データに基づいて、測定形状データ（差分データ）を算出する。そして、補正部３６０は、測定形状データ生成部３５０が算出した測定形状データ（差分データ）に基づいて、造形データを補正する。
【０１３８】
ところで、上述した実施形態においては、補正部３６０は、測定形状データ生成部３５０が算出した測定形状データ（差分データ）に基づいて、それに対して逆方向に歪ませて形状を出力するように造形データを補正するものとして説明した。しかしながら、形状の変形に代えて、あるいは、形状の変形とともに、造形量（ＦＦＦ方式では、造形材料１４０の吐出量、ＳＬＳ方式では、レーザの強度やスポット径）を補正することも可能である。
【０１３９】
以下、再び図３を参照し、さらに図２５を参照しながら、上述した造形量を補正する特定の実施形態について説明する。
【０１４０】
補正部３６０は、測定形状データ生成部３５０が算出した測定形状データ（差分データ）に基づいて、造形ユニット制御部３３０が実行する造形の動作が変更されるように、造形データを補正する。本特定の実施形態において、造形の動作を変更は、造形量を含む。補正部３６０は、測定形状データ生成部３５０が算出した測定形状データ（差分データ）に基づいて、造形量に対する補正量を算出する。補正量は、基準となる造形量（既定値や基準値など）からの変化量として算出される。算出された補正量は、補正造形データに反映される。補正部３６０は、本実施形態において補正量算出手段を構成する。
【０１４１】
造形ユニット制御部３３０は、造形データに基づいて、造形ユニット２０６が造形する動作を制御する。造形ユニット制御部３３０は、補正部３６０によって造形量に対する補正量が算出された補正造形データに基づいて、最終的な造形量を変更する制御を行う。例えば、ＦＦＦ方式では、造形材料１４０の吐出量を変更する制御を行う。例えば、ＳＬＳ方式では、レーザの強度やスポット径変更する制御を行う。造形ユニット制御部３３０は、本実施形態において、造形量を変更する造形量変更手段を構成する。
【０１４２】
図２５は、差分データに基づいてＦＦＦ方式の吐出量の補正量を算出し、補正量に基づいて造形する造形処理を説明する図である。
【０１４３】
ここでは、一例として、図２５（Ａ）に示した、造形物をスライスした１層分の形状があるものとする。ＦＦＦ方式では、例えば図２５（Ｂ）に示すように、ツールパスに従って、溶融した樹脂をノズルから吐出しながら、ノズルを移動させて積層することになる。
【０１４４】
ここで、図２５（Ｃ）に示すように、実線が所望の形状を表すとして、形状を測定した結果、端部が、実線よりも形状の内側の点線の位置にあったとする。つまり、所望の形状よりもへこんだ形状（細い形状）として造形されたことが、測定の結果判明したとする。これを補正して所望の形状を造形するためには、次の層で同様の形状を造形する際には、もっとふくらませた形状（太い形状）を造形することが望ましい。そのような補正のひとつの手段として、図２５（ｄ）に示すようにノズルを移動させる経路を変更することもできるが、ここでは、図２５（ｄ）に示すように、ノズルを移動させる経路を図２５（Ｂ）と同一としつつ、外周を吐出する際の樹脂の吐出量を増大することで、所望の形状（ふくらませた形状，太い形状）を造形する。
【０１４５】
同様に、図２５（Ｅ）に示すように、形状を測定した結果、端部が、実線よりも形状の外側の点線の位置にあったとする。つまり、所望の形状よりもふくらんだ形状（太い形状）として造形されたことが、測定の結果判明したとする。これを補正して所望の形状を造形するためには、次の層で同様の形状を造形する際には、よりへこませた形状（細い形状）を造形することが好ましい。そのような補正のひとつの手段として、図２５（Ｆ）に示すように、ノズルを移動させる経路を図２５（Ｂ）と同一としつつ、外周を吐出する際の樹脂を吐出量を減少させることで、所望の形状（へこませた形状，細い形状）を造形する。
【０１４６】
なお、ここでは、ノズルを移動させる経路を変更せずに吐出量を変化させるものとして説明したが、ノズルを移動させる経路を変更しつつ吐出量を変化させることも妨げられるものではない。
【０１４７】
以上、本実施形態について説明したが、本実施形態によれば、造形される造形物の立体形状の精度および安定性の向上を、低い計算負荷で図ることが可能な造形システム、情報処理装置および方法を提供することができる。
【０１４８】
特に本実施形態による測定された形状の表現方式では、造形装置の機械的誤差や光学誤差に起因すると考えられるもののほか、材料の収縮・変形に起因するもの、材料が固化する前に流動して変形するものなど材料の経時的な変形にも対応可能である。適切な代表点を設定することで、基準となる形状において、単調で低い空間周波数成分しか有さない部分では、高周波成分をノイズとして遮断しつつ、複雑で高い空間周波数成分を持つ部分は、その高い空間周波数成分も維持される形で、測定形状を表現することが可能となる。このため、形状の再現性およびノイズの除去容易性を両立することができる。
【０１４９】
上述した本発明の各実施形態の各機能は、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）等で記述された装置実行可能なプログラムにより実現でき、本実施形態のプログラムは、ハードディスク装置、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、フレキシブルディスク、ＥＥＰＲＯＭ、ＥＰＲＯＭ等の装置可読な記録媒体に格納して頒布することができ、また他装置が可能な形式でネットワークを介して伝送することができる。
【０１５０】
以上、本発明について実施形態をもって説明してきたが、本発明は上述した実施形態に限定されるものではなく、当業者が推考しうる実施態様の範囲内において、本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【０１５１】
１００…造形装置、１１０…ヘッド、１２０…ステージ、１３０…センサ、１４０…造形材料、１５０…情報処理端末、２０１…ＣＰＵ、２０２…ＲＡＭ、２０３…ＲＯＭ、２０４…記憶装置、２０５…インターフェース、２０６…造形ユニット、２０７…形状センサ、３１０…データ入力部、３２０…造形データ生成部、３３０…造形ユニット制御部、３４０…造形物形状測定部、３５０…測定形状データ生成部、３５１…代表点設定部、３５２・・・差分データ算出部、３６０…補正部、３７０…記憶部、３８０…指示受付部
【先行技術文献】
【特許文献】
【０１５２】
【特許文献１】特開２０１６−２１５６４１号公報
【図１】
2020138535.tif 000003
【図２】
2020138535.tif 000004
【図３】
2020138535.tif 000005
【図４】
2020138535.tif 000006
【図５】
2020138535.tif 000007
【図６】
2020138535.tif 000008
【図７】
2020138535.tif 000009
【図８】
2020138535.tif 000010
【図９】
2020138535.tif 000011
【図１０】
2020138535.tif 000012
【図１１】
2020138535.tif 000013
【図１２】
2020138535.tif 000014
【図１３】
2020138535.tif 000015
【図１４】
2020138535.tif 000016
【図１５】
2020138535.tif 000017
【図１６】
2020138535.tif 000018
【図１７】
2020138535.tif 000019
【図１８】
2020138535.tif 000020
【図１９】
2020138535.tif 000021
【図２０】
2020138535.tif 000022
【図２１】
2020138535.tif 000023
【図２２】
2020138535.tif 000024
【図２３】
2020138535.tif 000025
【図２４】
2020138535.tif 000026
【図２５】
2020138535.tif 000027