JP2017109478A - 情報処理装置、3dプリンタシステム、情報処理方法及びコンピュータプログラム - Google Patents
情報処理装置、3dプリンタシステム、情報処理方法及びコンピュータプログラム Download PDFInfo
- Publication number
- JP2017109478A JP2017109478A JP2016210974A JP2016210974A JP2017109478A JP 2017109478 A JP2017109478 A JP 2017109478A JP 2016210974 A JP2016210974 A JP 2016210974A JP 2016210974 A JP2016210974 A JP 2016210974A JP 2017109478 A JP2017109478 A JP 2017109478A
- Authority
- JP
- Japan
- Prior art keywords
- model
- information processing
- processing apparatus
- modeling
- adhesive force
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
【課題】ユーザにモデル操作の手間や複雑な算出を求めることなく、反りの発生しない向きにモデルを自動回転させる。【解決手段】3Dモデルの接地面積を算出する接地面積算出部と、3Dモデルの接地面に発生する粘着力を算出する粘着力算出部と、3Dモデルを任意の向きに回転させる回転制御部と、3Dモデルをある向きで造形するときに発生する反り上がる力を算出する反り上がり力算出部と、発生する反り上がる力が、接地面から得られる粘着力より小さくなるようなモデルの向きを探索する向き探索部と、を備える。【選択図】図2
Description
本発明は、情報処理装置、3Dプリンタシステム、情報処理方法及びコンピュータプログラムに関する。
3Dプリンタによる造形方式には、例えば熱溶解積層方式(FDM法)、光造形方式(STL法)、粉末焼結方式、インクジェット方式あるいはプロジェクション方式などの種々の方式が知られている。そのうち積層造形の方式の1つである熱溶解積層方式では、ABSやPLAといった樹脂をフィラメントとし、熱で溶かし、予め積層する各層のデータに基づいて設定された造形プレート上の位置に吐出する。造形プレート上に吐出されたフィラメントは冷えて固まり、1つの層が造形される。次いで上の層も溶けたフィラメントを同様に吐出し、固めて形成するという工程を繰り返す。
FDM方式の造形では、熱で溶かされたフィラメントが冷えて固まるとき、フィラメントには「熱収縮」という力が発生する。積層していくに連れ、上の層のフィラメントが熱収縮する力によって、下の層が上方向に引っ張られる「反り上がり力」が発生する。この反り上がり力が、造形物と造形プレートの間に発生している吸着力を上回ると、造形物が反り上がるという「変形」現象が発生してしまい、ユーザが意図した通りの造形物ができ上がらない。
一方、反りを押さえる技術として、例えば特開2001−328175号公報(特許文献1)に開示された技術が知られている。この技術は、光造形物を作成するプレート上面に接着層を形成した後、該接着層上に光造形物を作成することを特徴とするものである。接着層としては、透明性を有する樹脂を塗布、硬化させ、接着層を形成した後、光造形を行い、プレートとその上に形成される光造形物との接合強化し、反りを低減するというものである。
他方、反りを抑えるため、FDM方式を採用している3Dプリンタの多くでは、造形プレート上に粘着性のテープを貼り付け、このテープから発生する粘着力により反り上がる力を押さえ付け、反りの発生を抑制するという方法が取られている。
接着等あるいは粘着テープにより得られる粘着力は、造形されるモデルと接着層あるいは粘着テープとの接地面積に依存する。接地面積が小さいと粘着力が十分に得られず、反り上がる力に負けてしまい、造形物に反りが発生してしまう。
このためユーザは、接着層あるいは粘着テープにより得られる粘着力が、熱収縮により反り上がる力よりも大きくなるように、モデルの向きを適切に調整する必要がある。しかし、反らない向きを検討するには多くの要素が関与するため、ユーザ自身が検討するのは難しく、また、「検討した向きへ正確に手動でモデルを回転させる」という手間もかかることになる。
一方で、反り上がる力はモデルの形状によって異なるものであり、接地面積を最大にする向きにしても、上の層からかかる反り上がる力が大きくなってしまう場合には、結果として反りができてしまう。よって、ユーザは得られる粘着力と発生する反り上がる力のバランスを考慮する必要があり、単に接地面積を最大にすることが必ずしも反りを発生させないことに繋がるわけではない。
そこで、本発明が解決しようとする課題は、FDM方式での3D造形に関して、ユーザにモデル操作の手間や複雑な算出を求めることなく、反りの発生しない向きにモデルを自動回転させることにある。
上記の課題を解決するために、本発明は、3Dモデルの接地面積を算出する接地面積算出部と、前記3Dモデルの接地面に発生する粘着力を算出する粘着力算出部と、前記3Dモデルを任意の向きに回転させる回転制御部と、前記3Dモデルをある向きで造形するときに発生する反り上がる力を算出する反り上がり力算出部と、発生する反り上がる力が、接地面から得られる粘着力より小さくなるようなモデルの向きを探索する向き探索部と、を備えることを特徴とする。
本発明によれば、ユーザにモデル操作の手間や複雑な算出を求めることなく、反りの発生しない向きにモデルを自動回転することができる。尚、上記した以外の課題、構成及び効果は、以下の実施形態の説明において明らかにされる。
<実施の形態1>
以下、図面を参照して、本発明の実施形態について説明する。本実施形態においては、
CAD(Computer Aided Design)データなどの立体物の形状を示
す3Dデータを変換したツールパス等の造形用データを受信し、その造形用データに基づ
いて成形材であるフィラメントの層を堆積させることにより立体物を形成する3Dプリン
タと、3Dプリンタに造形用データを送信するPC(Personal Compute
r)と、によって構成されるシステムを例として説明する。このようなシステムにおいて、3Dプリンタに造形用データを送信する際のPCによるデータ処理機能が本実施形態に係る要旨の1つである。
以下、図面を参照して、本発明の実施形態について説明する。本実施形態においては、
CAD(Computer Aided Design)データなどの立体物の形状を示
す3Dデータを変換したツールパス等の造形用データを受信し、その造形用データに基づ
いて成形材であるフィラメントの層を堆積させることにより立体物を形成する3Dプリン
タと、3Dプリンタに造形用データを送信するPC(Personal Compute
r)と、によって構成されるシステムを例として説明する。このようなシステムにおいて、3Dプリンタに造形用データを送信する際のPCによるデータ処理機能が本実施形態に係る要旨の1つである。
また、本発明は、FDM方式での3D造形におけるモデル配置に際して、モデルをあらゆるx,y,z方向の角度で回転させ、その向きにおける「収縮力による反り上がる力」と「造形プレートから得られる粘着力」を算出し、「反り上がる力 < 粘着力」となる向きを探索する。そしてモデルを「反り上がる力 < 粘着力」となる向きに自動で回転させた状態にすることが特徴になっている。
図1は、本実施形態に係る立体造形システムの運用形態を示す図である。本実施形態に係る立体造形システムは、入力された3Dデータを解析してデータを変換した上で立体造形装置である3Dプリンタ2に立体造形出力を実行させるPC1と、PC1の制御に従って立体造形出力を実行する3Dプリンタ2と、を含む。従って、3Dプリンタ2が立体物の製造装置としても用いられる。ここで、PC1のハードウェア構成について図2を参照して説明する。
図2に示すように、本実施形態に係るPC1は、一般的な情報処理装置と同様の構成を含む。即ち、本実施形態に係るPC1は、CPU(Central Processing Unit)10、RAM(Random Access Memory)20、ROM(Read Only Memory)30、HDD(Hard Disk Drive)40及びI/F50がバス80を介して接続されている。また、I/F50にはLCD(Liquid Crystal Display)60及び操作部70が接続されている。
CPU10は演算手段であり、PC1全体の動作を制御する。RAM20は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、CPU10が情報を処理する際の作業領域として用いられる。ROM30は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムが格納されている。HDD40は、情報の読み書きが可能な不揮発性の記憶媒体であり、OS(Operating System)や各種の制御プログラム、アプリケーション・プログラム等が格納される。
I/F50は、バス80と各種のハードウェアやネットワーク等を接続し制御する。LCD60は、ユーザがPC1の状態を確認するための視覚的ユーザインタフェースである。操作部70は、キーボードやマウス等、ユーザがPC1に情報を入力するためのユーザインタフェースである。
このようなハードウェア構成において、ROM30に格納されたプログラムや、HDD40若しくは光学ディスク等の記憶媒体からRAM20にロードされたプログラムに従ってCPU10が演算を行うことにより、ソフトウェア制御部が構成される。このようにして構成されたソフトウェア制御部と、ハードウェアとの組み合わせによって、本実施形態に係るPC1の機能を実現する機能ブロックが構成される。
次に、本実施形態に係る3Dプリンタ2の構成について図3を参照して説明する。本実施形態に係る3Dプリンタ2は、基盤211、吐出ヘッド201、アーム202を含む。基盤211は、立体物を成形するためにフィラメントを積層していくための平板状のものである。吐出ヘッド201は、基盤211上にフィラメントを吐出する。アーム202は、吐出ヘッド201を支持し、基盤211上の空間において吐出ヘッド201を移動させる。
3Dプリンタ2は、入力された造形用データによって確定される立体造形物を水平方向に輪切りにして生成される輪切り画像に応じて吐出ヘッド201からフィラメントを吐出して一層分の成形を行い、その層を積層していくことによって立体造形を行う。具体的には、吐出ヘッド201から輪切り状の画像データに応じた位置にフィラメントが吐出される。これにより、フィラメントが吐出された部分が、輪切り状の画像データに応じた形状となる。すなわち、吐出ヘッド201及びアーム202は、成形対象の立体物の情報に基づいて決定される位置に選択的にフィラメントを吐出させるフィラメント吐出部として機能する。
一層分の成形が完了すると、既に成形が完了した層の上に新たな層のためのフィラメントの層を形成する。このような動作を繰り返すことにより、フィラメントを供給して形成された成形層を積層させていき、立体成形が行われる。即ち、基盤211は、フィラメントを吐出する際のステージとして機能する。
尚、3Dプリンタ2も、図2において説明した構成に準ずる情報処理機能を含む。そして、そのような情報処理機能によってPC1からの制御を受け付けると共に、情報処理機能によって実現される制御部によって、アーム202の移動や吐出ヘッド201からのフィラメントの吐出が制御される。
また、図4はPCソフトウェア上における造形エリアイメージを示す図である。図4に示すように、造形エリア45は一般的に直方体で表現される。
次に、本実施形態に係る3Dプリンタ2の制御構成について図5を参照して説明する。図5に示すように、本実施形態に係る3Dプリンタ2は、吐出ヘッド201に加え、吐出ヘッド201を制御するコントローラ220を含む。
コントローラ220は、主制御部221、ネットワーク制御部222、及び吐出ヘッドドライバ224を含む。主制御部221は、コントローラ220において全体を制御する制御部であり、OSやアプリケーション・プログラムに従ってCPU10が演算を行うことにより構成される。ネットワーク制御部222は、3Dプリンタ2がPC1等の他の機器と情報をやり取りするためのインタフェースであり、Ethernet(登録商標)やUSB(Universal Serial Bus)インタフェースが用いられる。吐出ヘッドドライバ224は、吐出ヘッド201を駆動制御部するためのドライバソフトウェアであり、主制御部221の制御に従って吐出ヘッド201を駆動制御する。
次に、本実施形態に係るPC1の機能構成について図6を参照して説明する。図6に示すように、本実施形態に係るPC1は、図2において説明したLCD60及び操作部70に加えて、コントローラ100及びネットワークI/F101を含む。ネットワークI/F101は、PC1がネットワークを介して他の機器と通信するためのインタフェースであり、Ethernet(登録商標)やUSB(Universal Serial Bus)インタフェースが用いられる。
コントローラ100は、ソフトウェアとハードウェアとの組み合わせによって構成され、PC1全体を制御する制御部として機能する。図6に示すように、コントローラ100は、立体データアプリ110、3Dデータ変換処理部120、3Dプリンタドライバ130を含む。
立体データアプリ110は、CAD(Computer Aided Design)ソフトウェア等、物体の3次元的形状を表現するデータを処理するソフトウェアアプリケーションである。3Dデータ変換処理部120は、本実施形態の要旨に係る機能であり、入力された3Dデータを取得して変換処理を行う立体情報処理部である。即ち、3Dデータ変換処理部120を実現するためのプログラムが、情報処理プログラムとして用いられる。
3Dデータ変換処理部120への3Dデータの入力は、ネットワークを介してPC1に入力されたデータを3Dデータ変換処理部120が取得する場合や、立体データアプリ110が3Dデータ変換処理部120の機能を呼び出すことによって実行される。また、操作部70に対するユーザの操作によって指定されたファイルパスのデータを3Dデータ変換処理部120が取得してもよよい。
3Dデータ変換処理部120は、上記に説明したようにして取得した3Dデータを解析し、本実施形態の要旨に係るデータ処理を行うことにより3Dデータを変換し、ツールパス等の造形データを作成する。本実施形態に係る3Dデータ変換処理部120は、入力された3Dデータによって表現される立体物が基盤211上に造形された場合に、造形された立体物にフィラメントの隙間が小さくなるようにするための造形用データを生成する。即ち、3Dデータ変換処理部120を含むPC1が、情報処理装置として機能する。詳細は後述する。
3Dプリンタドライバ130は、PC1から3Dプリンタ2を動作させるためのソフトウェア・モジュールであり、一般的な3Dプリンタのドライバソフトウェアと同様の機能を有する。3Dプリンタドライバ130は、例えば一般的な紙のプリンタにおけるプリンタドライバに準じた機能を有している。3Dプリンタドライバ130は、3Dデータによって形作られる立体物を輪切り状にした各層の断面形状のデータ(以降、「スライスデータ」とする)を生成して、制御するための情報と共に3Dプリンタ2に送信する。
次に、本実施形態に係る3Dデータ変換処理部120の機能について、図7を参照して説明する。図7は、本実施形態に係る3Dデータ変換処理部120の内部構成を示す機能ブロック図である。3Dデータ変換処理部は、移動制御部121、位置修正制御部122、位置探索部123、向き探索部124、接地面積算出部125、粘着力算出部126、回転制御部127、反り上がり力算出部128を含む。
移動制御部121は、3Dモデルを任意の位置に移動するための制御を行う。また、移動制御部121は、モデルを造形エリア45に収めるように移動させる制御を実行する。具体的には、反りが発生しない向きを見つける処理において、回転したモデルが造形エリア45からはみ出してしまった場合に、モデルの向きを維持した状態のまま造形エリア45に収まるように移動するための処理である。また、移動制御部121は、回転したモデルが造形エリア45からはみ出した場合に、モデルの向きを維持した状態のまま造形エリア45に収まるように移動させる制御を行う。
尚、移動制御部121は、位置修正制御部122が行う3Dモデルが造形エリア45からはみ出していないかどうか検知した結果及び3Dモデルが造形エリア45からはみ出さない位置を探索した結果に基づいて、3Dモデルを任意の位置に移動させる。
位置修正制御部122は、3Dモデルが造形エリア45からはみ出さないように当該3Dモデルの配置を修正するための制御を行う。具体的に、位置修正制御部122は、現在の向きにおけるモデルのポリゴン情報と、造形エリアサイズに相当する3Dプリンタ2の造形可能サイズ情報とに基づいて、3Dモデルが造形エリア45からはみ出していないかどうか検知する。
位置探索部123は、造形エリア45からはみ出さない位置を探索するための基準位置(すなわち、指定座標データのことである)に基づいて造形エリア45からはみ出さない位置を探索する。具体的に、位置探索部123は、所定のアルゴリズムに従って、モデルの移動、及び、そこでのはみ出しの検知を位置修正制御部122に実行させ、はみ出さない位置を探索する。
尚、3Dプリンタ2の造形可能サイズ情報の準備方法においては特に制限はない。例えば、予めソフトウェアに固定パラメータとして3Dプリンタ2の造形可能サイズ情報が保持されていてもよいし、ユーザが3Dプリンタ2の造形可能サイズ情報を手動入力する方法で用意されてもよい。
向き探索部124は、造形モデルに発生する反り上がる力が、接地面から得られる粘着力より小さくなるようなモデルの向きを探索する。
接地面積算出部125は、造形モデルを構築するためのポリゴンデータに基づいて、造形モデルが現在の向きにおいて造形プレートに接する面積である接地面積を算出する。
粘着力算出部126は、3Dモデルの接地面に発生する粘着力を算出する。粘着力算出部126は、接地面積と3Dプリンタ2の造形プレート上に用意した粘着テープの物理特性、及び、3Dプリンタ2内部の温度に基づいて粘着力を算出する。
尚、粘着テープは、温度に依存して粘着力が変化する特徴を有しているため、3Dプリンタ内部の温度情報が必要になる。また、粘着テープの物理特性情報の準備方法について特に制限はなく、例えば、予めソフトウェア4に固定パラメータとして保持されていてもよいし、処理実行時にユーザが手動入力する方法で用意されてもよい。
また、3Dプリンタ2内部の温度情報とは、主に造形プレートの温度、装置内部全体の温度、フィラメントを溶かす装置の温度(すなわち、吐出時のフィラメントの温度に相当する)、の3つの温度情報である。3Dプリンタ2による造形において、これらの値はそれぞれ常に一定に保たれるため、その温度が何度であるかを示す値をパラメータとして用意する必要がある。これらのパラメータの準備方法について特に制限はなく、例えば、予めソフトウェアに固定パラメータとして保持させていてもよいし、ユーザが手動入力する方法で用意してもよい。
回転制御部127は、3Dモデルを構成するポリゴンデータを任意の角度に回転させ、造形モデル全体の向きを変更する。
反り上がり力算出部128は、3Dモデルをとある向きで造形する際に発生する反り上がり力を算出する。尚、反り上がり力とは、フィラメントの熱収縮現象で発生する力のことである。熱収縮による力は、フィラメントの収縮率などの物理特性情報と、造形中の3Dプリンタ2内部の温度情報、造形モデルの形状が影響する。従って、反り上がり力算出部128は、物理特性情報、物理特性情報及び造形モデルの形状などのパラメータに基づいて反り上がり力を算出する。
尚、フィラメントの物理特性情報の準備方法について特に制限はなく、例えば、予めソフトウェアに固定パラメータとして物理特性情報を保持させてもよく、また、ユーザが手動入力する方法で用意されてもよい。
3Dプリンタ2が実際に造形できるサイズは、3Dプリンタ2の機械的な構造に依存して制限される。このため、3Dデータ変換処理部120は、使用する3Dプリンタ2における造形可能サイズを模した3次元領域(図4の造形エリア45)を用意し、その領域内にモデルを配置することによって、目的のスライスデータを生成する。このように、3Dデータ変換処理部120は、造形モデルが3次元領域からはみだすことなく、スライスデータが本来の造形物を表すものと同じものにし、正しい造形が実行できるようにする。
以上説明したように、3Dデータ変換処理部120は、接地面積と反り上がり力とを算出して造形モデルを回転させ、モデルが造形エリア45からはみ出ていないかどうかを検知し、モデルを造形エリア45に収めるように移動させる。これらの処理は、3Dデータ変換処理部120によって実行され、3Dプリンタドライバ130に送信される3Dモデルデータに反映される。
図8は3Dモデルが反らない向きに自動回転する機能を実現するための具体的な処理手順を示すフローチャートである。
同図において、モデルを反らない向きに自動回転する機能は、下記の条件から開始される(S100)。その条件とは、
・初期状態としてモデルのx,y,z各軸への回転角θx,θy,θz,が0として与えられている。
・各軸への回転角を徐々に増やしながら、反らない向きを探していくことになるため、各軸の回転角増加量パラメータΔx, Δy, Δzが与えられている。各軸の回転角増加量パラメータΔx, Δy, Δzの指定方法は特に制限はなく、例えば、予めソフトウェア4に固定パラメータとして保持されていてもよいし、ユーザが手動入力する方法で意されてもよい。
・初期状態としてモデルのx,y,z各軸への回転角θx,θy,θz,が0として与えられている。
・各軸への回転角を徐々に増やしながら、反らない向きを探していくことになるため、各軸の回転角増加量パラメータΔx, Δy, Δzが与えられている。各軸の回転角増加量パラメータΔx, Δy, Δzの指定方法は特に制限はなく、例えば、予めソフトウェア4に固定パラメータとして保持されていてもよいし、ユーザが手動入力する方法で意されてもよい。
次いで、モデルをθx,θy,θzの角度で回転させ(S101)、回転後のモデルについて、反り発生の有無を予想する処理を実行する(S102)。この反り発生の有無の予想で、予想の結果が「反り発生する」である場合(S103/NO)、別の向きを探索するため、回転角度を変更して回転し、再度、反るかどうか確認していく。
本実施形態では、反らない向きが見つからない限りは、x,y,zが360°回転し終わるまで繰り返す。すなわち、x→y→zの順で固定し、zの角度θzをΔz分増加して、回転させていく(S104/YES→S105→S101)。
S101からS102〜S104の処理を繰り返し、zを回転し終えると(S104/NO)、次はy回転角を増加して再度zを0から回転していく(S106/YES→S107→S108→S101)。そして、S101からS102〜S106の処理を繰り返し、yを回転し終えると(S106/NO)、xの回転角を増加して再度y,zを0から回転していく(S109/YES→S110→S111→S112→S101)。そして、S101からS102〜S109の処理を繰り返し、モデルのあらゆる向きで反らないものを探していく。x、y、zの固定順には特別制限はなく、例えばz,x,yの順で固定するように実装してもよい。
x,y,zを360°回転し終えても反らない向きが見つからなかった場合、その旨フィードバックとしてユーザにメッセージを通知する(S113)。ただし、この処理は必須ではない。このようにして上記S101からS113の処理を実行し、自動回転機能の実行を終了する。
一方、予想の結果が「反り発生しない」である場合(S103/YES)、モデルを造形プレートに接するように移動する(S114)。すなわち、Z軸最小の値が0になるようにする。また、モデルを造形エリア45からはみ出さないように配置を自動修正する場合には、モデルを造形エリア45に収める処理(S115)を実行し、その結果としてモデルが造形エリア内に収まったかどうかを確認する(S116)。
モデルが造形エリア内に収まった場合(S116/YES)、その向きと位置でモデルを造形することが確定し(S117)、反らない向きへの自動回転機能の実行を終了する。
モデルが造形エリア内に収まる位置が見つからなかった場合(S116/NO)、その向きでの造形はできないことになる。別の適切な向きを探すため、S104に移行し、前述の予想の結果が「反り発生する」である場合と同じ処理を実行する。
図9はS102における反り発生の有無を予想する処理の詳細な処理手順を示すフローチャートである。
この処理手順では、まず、現在の向きを示すモデルデータを基に、モデルの最下層部の、x−y平面と平行になっている領域の面積、すなわち、接地面積を算出する(S201)。次いで、接地面積と粘着テープの特性、及び3Dプリンタ2の内部温度から、接地面が得られる粘着力を算出する(S202)。
そして、現在の向きにおいて造形する場合に、モデルの接地面にかかる「反り上がり力」を算出する(S203)。反り上がり力は、接地面の上部に重ねて造形される層のフィラメントが熱収縮することによって発生する。よってモデルの形状(すなわち、モデルデータ)、フィラメント熱収縮の特性、熱収縮の力に影響を与える3Dプリンタ2の内部温度の情報が必要となる。
その後、S202とS203の算出で求めた粘着力と反り上がり力を比較する(S204)。粘着力が反り上がり力を上回る場合(S204/YES)、反らないと予想できるので、上位には「反らない」という旨の結果を返して(S205)処理を終える。粘着力が反り上がり力を下回る場合(S204/NO)、反ると予想できるので、上位には「反る」という旨の結果を返して(S206)処理を終える。
図10はS115におけるモデルを造形エリア45に収める処理の詳細な処理手順を示すフローチャートである。
この処理手順では、3Dプリンタ2の造形可能サイズ情報から、それを模した造形エリア情報を生成する。すなわち、現在の向きにおいて、モデルデータを構成するポリゴンが持つx,y,z軸の最大/最小座標データを取得し、それらの座標が造形エリア45の内部に収まっているかを確認する(S301)。
この判定をS302で行い、造形エリア45の内部に収まっているとき(S302/NO)、「はみ出さない」という結果が検知される。上位には「造形エリア内に収まっている」ことを通知し(S303)、処理を終了する。
造形エリア45の内部に収まっていないとき、「はみ出す」という結果が検知される(S302/YES)。この場合は、モデルを造形エリア45に収めるため、はみ出さない位置の探索処理を実行する(S304)。結果としてはみ出さない位置を発見し、その位置に移動できた場合(S304/YES)、上位には「造形エリア内に収まっている」ことを通知し(S306)、処理を終了する。はみ出さない位置を発見できなかった場合(S305/NO)、上位には「造形エリア内に収まらない」ことを通知し(S307)、処理を終了する。
図11はS304におけるはみ出さない位置の探索処理の詳細な処理手順を示すフローチャートである。
この処理手順では、モデルを接地(z=0)するように移動する(S401)。そして、モデルが造形エリア45からZ軸方向にはみ出しているかを確認する(S402、S403)。ここではZ軸方向しか確認しないが、確認の方法は通常のはみ出し検出と同様に、モデルを形成するポリゴンデータの座標と造形エリア45のZ軸座標を比較すればよい。
この時点ではみ出している場合(S403/YES)、モデルを移動させてもはみ出さない位置は存在しないため、「はみ出さない位置がない」ことを上位に通知して終了する(S404)。Z軸方向にはみ出していない場合(S403/NO)、次の処理として、造形可能サイズ情報に基づいて造形エリア45の隅の座標を抽出する(S405)。隅とは、(X軸方向最小、Y方向最小)の座標のことである。隅と言える座標は全部で4つ考えられる(例えばX軸方向最大、Y方向最大など)。ここでは隅の座標であればどれでもよく、その中の1つを抽出できればよい。
次いで、モデルをその隅に接するように移動する(S406)。その位置でモデルがはみ出しているかを確認する(S407、S408)。はみ出していれば(S408/YES)、モデルはその向きでは造形エリア45に収まらないため、上位に「はみ出さない位置がない」ことを通知し(S409)、処理を終了する。はみ出していなければ(S408/NO)、その位置であれば現在の向きで造形可能であるので、上位には「はみ出さない位置を発見し、移動した」ことを通知し(S410)、処理を終了する。
<実施の形態2>
実施の形態2は、ユーザが指定した座標に近い位置で、モデルが造形エリア45に収まる場所を探索するユーザが指定した位置を基準とする「はみ出さない位置の探索処理」の例である。実施の形態1において、図1から図10に示した事項は、実施の形態2においても同一なので、重複する説明は省略する。
実施の形態2は、ユーザが指定した座標に近い位置で、モデルが造形エリア45に収まる場所を探索するユーザが指定した位置を基準とする「はみ出さない位置の探索処理」の例である。実施の形態1において、図1から図10に示した事項は、実施の形態2においても同一なので、重複する説明は省略する。
図12は、実施の形態2のS304において、はみ出さない位置の探索処理の詳細な処理手順を示すフローチャートである。この処理手順は、ユーザが指定した位置を基準として「はみ出さない位置の探索処理」を行う例である。この処理手順では、図11の処理手順とS401からS405まで同一で、406の処理を省略し、S407の処理及びS408の判定を行うので、重複する説明は省略し、図11と異なる処理手順についてのみ説明する。
図11の処理手順では、S408ではみ出していると判断されたとき、S409ではみ出さない位置が発見できないことを上位に通知して処理を終了する。しかし、図12の処理手順では、S409の処理を行う前に、S411からS414の処理を実行する。すなわち、はみ出していると判断されると、まず、はみ出している長さを求める(S411)。はみ出していれば、モデルが造形エリア45に対して、x軸マイナス/プラス方向、及びy軸マイナス/プラス方向にどれだけはみ出しているかを算出する。これは造形エリアのx,y最大・最小座標と、モデルの(現在の位置・向きでの)x,y最大・最小座標をから算出可能である。
次いで、ユーザ指定座標から、上記のはみ出し量分ずらした位置を最終的なモデルの位置として、モデルを移動させる(S412)。そして、モデルがはみ出しているか否かを再度確認する(S413、S414)。はみ出していなければ(S414/NO)、その位置であれば現在の向きで造形可能であるので、上位には「はみ出さない位置を発見し、移動した」ことを通知し(S415)、処理を終了する。
これに対し、はみ出していれば(S414/NO)、上位に「はみ出さない位置がない」ことを通知し(S415)、処理を終了する。はみ出していれば(S414/YES)、はみ出さない位置が発見できないことを上位に通知して(S409)処理を終了する。
その他、特に説明しない各部は実施の形態1と同様に構成され、同様に機能する。
<実施の形態3>
実施の形態3は、始めに大まかな角度で回転しながら探索し、反りにくい向きの見当をつけ、次に、見当をつけた向きを基準にそれに近い向きを詳しく調べていく例である。実施の形態1における図8の「モデルを反らない向きへ自動回転する機能」に代わる処理例である。図13及び図14は、実施の形態3の処理手順を示すフローチャートで、前者は絞込み探索(1)を、後者は絞込み探索(2)をそれぞれ示す。
実施の形態3は、始めに大まかな角度で回転しながら探索し、反りにくい向きの見当をつけ、次に、見当をつけた向きを基準にそれに近い向きを詳しく調べていく例である。実施の形態1における図8の「モデルを反らない向きへ自動回転する機能」に代わる処理例である。図13及び図14は、実施の形態3の処理手順を示すフローチャートで、前者は絞込み探索(1)を、後者は絞込み探索(2)をそれぞれ示す。
実施の形態3は、図8における反らない向きの絞り込み探索で、始めに反りにくい向きの見当をつけ、見当をつけた向きを基準にそれに近い向きを詳しく調べることにより、探索する向きの範囲を絞り込む手法である。実施の形態1において、図8を除いて図1から図10に示した事項は、実施の形態3においても同一なので、重複する説明は省略する。
本実施の形態では、角度の増加量Δx,Δy、Δzの値を、5°〜10°のような、比較的大きい増加量に設定する。この増加量は、ユーザの任意で設定できるようにしてもよい。そして、設定した角度増加量でモデルを回転させながら(S501)、反り発生の有無を予想する処理を実行する。その際、その向きでの粘着力と反り上がり力のギャップ値(粘着力−反り上がり力)を、データとして保持しておく(S502)。データの保持は、例えば、回転角とギャップ値をセットにして1つのデータとして保持する。この際、反らない向きが見つかれば(S503/YES)造形エリア45に収められた場合には(S515/YES)、この向きで確定する(S513→S516)。
この処理手順の処理の内容は、既に説明した図8のS113を除くS103からS117までの処理に対応する。
x,y,z方向360°探索し終えると、図10の絞込み探索(2)の処理(S600)に移行する。この処理手順では、角度増加量(Δx,Δy,Δz)を更新し(S601)、各探索で作成したギャップ値(S502)を大きい順にソートする(S602)。そして、ソートしたギャップ値を比較し、この値が正の方向に大きいうちの上位の幾つか(例えば上位N個)をピックアップして、図15に示す処理を実行する(S603)。
図15は、本実施形態に係る絞込み探索(2)においてくり返し行われる絞込み探索の処理の流れを示すシーケンス図である。図15に示すように、その向きの回転角のプラスマイナスΔw(ユーザの任意で設定してよい)の範囲を探索範囲として限定し(S604)、探索範囲を絞りこみ、絞込み探索を実行する。
その範囲に対して、角度の増加量Δx,Δy、Δzの値を、1°未満などの高い精度に設定し(ユーザの任意で設定してよい)、反らない向きを繰り返し、探索していく(S605〜S621)。
ピックアップしたギャップ値となる各向きで探索した結果「反らない」向きが見つからなかった場合、次にギャップ値が大きい回転角に設定して同様の動作を繰り返す(S617)。尚、S617において、S603でピックアップしたギャップ値上位N個の回転角に対して図15に示す処理を実行し(S622)、反らない向きが見つからない場合には(S622/YES)、そのフィードバックとしてユーザにメッセージを通知し(必須ではない)、絞り込み探索及び、自動回転機能の実行を終了する。
図15の手順では、ギャップ値の上位N個それぞれの回転角(θxn,θyn,θzn)に対してS604以降の処理を実行する(図14、S603)。ただし、Nは2以上の正の整数。S604では、
θx=θxn―Δw
θy=θyn―Δw
θz=θzn―Δw
に設定する。
θx=θxn―Δw
θy=θyn―Δw
θz=θzn―Δw
に設定する。
そして、モデルを角度(θx,θy,θz)に回転させ(S605)、反り発生の有無を予想する(S606、S607)。予想で反らない向きが見つからない限りは、x,y,z方向の角度θx,θy,θzの増加量Δx,Δy,Δzを加えた角度と、ギャップ値の上位N個それぞれの回転角θxn,θyn,θznにユーザが設定した回転角の増分Δwを加えた角度の大小をそれぞれ比較する(S608、S610、S613)。
後者が大きい場合に角度θx,θy,θzに増加量Δx,Δy,Δzをそれぞれ加え(S609、S611、S614)、回転角の増分Δwをそれぞれ減じた(S612、S615、S616)角度θx,θy,θzに回転させ(S605)同様の動作を繰り返して反らない角度を求める。
反らない角度が見つからない場合には(S613/NO)、ギャップ値予想結果が反らないものとなれば(S607/YES)、モデルを造形プレートに接するように移動する(S618)。また、モデルを造形エリア45からはみ出さないように配置を自動修正する場合には、モデルを造形エリア45に収める処理(S619)を実行し、その結果としてモデルが造形エリア内に収まったかどうかを確認する(S620)。
モデルが造形エリア内に収まった場合(S620/YES)、絞込み探索を終了する(S621)。
また、探索速度の目標値次第では、図15に示す処理を複数回繰り返し、探索範囲の絞り込み回数を増やしてもよい。
図8から図15に記載したフローチャートは、コンピュータプログラムとして構成され、コンピュータ、ここではPC3にダウンロードされ、プログラムの手順に従って実行される。また、当該プログラムは、記録媒体に記憶させてもよい。その場合、この記録媒体を用いてコンピュータに当該プログラムをインストールすることができる。尚、記録媒体は、非一過性の記録媒体であってもよい。非一過性の記憶媒体は特に限定されないが、例えばCD−ROM等の記録媒体が使用できる。
以上説明したように、本実施の形態によれば、次のような効果を奏する。尚、以下の説明において、特許請求の範囲に記載された各構成要素と実施の形態に記載された各部とを対応させるため、両者の用語が異なる場合には後者をかっこ書きで示す。
(1):本発明の実施の形態に係る情報処理装置は、3Dモデルの接地面積を算出する接地面積算出部と、3Dモデルの接地面に発生する粘着力を算出する粘着力算出部と、3Dモデルを任意の向きに回転させる回転制御部と、3Dモデルをある向きで造形するときに発生する反り上がる力を算出する反り上がり力算出部と、発生する反り上がる力が、接地面から得られる粘着力より小さくなるようなモデルの向きを探索する向き探索部と、を備えている。そのため、ユーザにモデル操作の手間や複雑な算出を求めることなく、反りの発生しない向きにモデルを自動回転することができる。すなわち、向き探索部によってFDM方式での3D造形に関して、造形物と造形プレートの間に発生する粘着力がフィラメントの熱収縮により発生する「反り上がる力」よりも大きくなるような、すなわち、反りが発生しない向きに、モデルを自動回転させることができる。
(2):(1)の情報処理装置が、3Dモデルを任意の位置に移動させる移動制御部と、3Dモデルが造形エリア45からはみ出さないように当該3Dモデルの配置を修正する位置修正制御部と、を備えているので、回転によってモデルが造形エリア45からはみ出す場合に、位置修正制御部によってはみ出さない位置に修正し、移動制御部によってモデルを自動で配置することができる。
(3):(2)の情報処理装置が、造形エリア45からはみ出さない位置を探索するための基準位置に基づいて造形エリア45からはみ出さない位置を探索する位置探索部と、を備えたので、基準位置に基づいて反らない向きでモデルを配置することができる。
(4):(3)の情報処理装が、基準位置を入力する基準位置入力部備えているので、ユーザが入力する任意の座標を基準に、反らない向きでモデルを配置することができる。
(5):(3)の情報処理装置が、予め設定された基準位置に基づいて造形エリア45からはみ出さない位置を探索するので、例えば予め設定された造形エリアの隅を基準に自動的にはみ出さない位置を探索することができる。
(6):(1)の情報処理装置において、向き探索部が、3Dモデルを初期位置からx,y,z方向の全方向に予め設定された均等な角度範囲を探索範囲として当該探索範囲毎に、反り上がる力と接地面から得られる粘着力を算出し、反り上がる力が粘着力よりも小さくなる向きを探索するので、精度よく探索する探索手法を使用して3Dモデルが反らない方向を探索することができる。
(7):(1)の情報処理装置において、向き探索部が、3Dモデルを初期位置からx,y,z方向の全方向にユーザが設定した角度範囲を探索範囲として当該探索範囲毎に、反り上がる力と接地面から得られる粘着力を算出し、両者の差を記憶して、当該差の大きい角度を選択して反り上がる力と粘着力を算出し、反り上がる力が粘着力よりも小さくなる向きを探索するので、ユーザ指定で効率よく探索する探索手法を使用して3Dモデルが反らない方向を探索することができる。
(8):3Dプリンタシステム1が、(1)〜(7)のいずれかの情報処理装置と、情報処理装置からの3Dプリンタ制御データに基づいて造形する3Dプリンタ2と、を備えているので、(1)〜(7)で述べた効果を奏する3Dプリンタシステムを提供することができる。
(9):本発明の実施の形態に係る情報処理方法によれば、3Dモデルの接地面積を算出する工程と、3Dモデルの接地面に発生する粘着力を算出する工程と、3Dモデルを任意の向きに回転させる工程、3Dモデルをある向きで造形するときに発生する反り上がる力を算出する工程と、発生する反り上がる力が、接地面から得られる粘着力より小さくなるようなモデルの向きを探索する工程と、を備えているので、当該方法を実行することにより(1)で述べた効果を奏することができる。
(10):本発明の実施の形態に係るコンピュータプログラムによれば、コンピュータに、3Dモデルの接地面積を算出する手順と、3Dモデルの接地面に発生する粘着力を算出する手順と、3Dモデルを任意の向きに回転させる手順と、3Dモデルをある向きで造形するときに発生する反り上がる力を算出する手順と、発生する反り上がる力が、接地面から得られる粘着力より小さくなるようなモデルの向きを探索する手順と、を実行させるので、当該プログラムをコンピュータが実行することにより(1)で述べた効果を奏することができる。
さらに、本発明は前述した実施の形態に限定されず、本発明の要旨を逸脱しない範囲で種々の変形が可能であり、特許請求の範囲に記載された技術思想に含まれる技術的事項の全てが本発明の対象となる。また、実施の形態は、好適な例を示したものであるが、当業者ならば、本明細書に開示の内容から、各種の代替例、修正例、変形例あるいは改良例を実現することができ、これらは添付の特許請求の範囲に記載された技術的範囲に含まれる。
1 3Dプリンタシステム
2 3Dプリンタ
3 PC(情報処理装置)
4 3Dプリント向けソフトウェア
5 3Dモデルデータ
6 入力装置
45 造形エリア
2 3Dプリンタ
3 PC(情報処理装置)
4 3Dプリント向けソフトウェア
5 3Dモデルデータ
6 入力装置
45 造形エリア
Claims (10)
- 3Dモデルの接地面積を算出する接地面積算出部と、
前記3Dモデルの接地面に発生する粘着力を算出する粘着力算出部と、
前記3Dモデルを任意の向きに回転させる回転制御部と、
前記3Dモデルをある向きで造形するときに発生する反り上がる力を算出する反り上がり力算出部と、
発生する反り上がる力が、接地面から得られる粘着力より小さくなるようなモデルの向きを探索する向き探索部と、
を備えることを特徴とする情報処理装置。 - 請求項1に記載の情報処理装置であって、
前記3Dモデルを任意の位置に移動させる移動制御部と、
前記3Dモデルが造形エリアからはみ出さないように当該3Dモデルの配置を修正する位置修正制御部と、
を備えることを特徴とする情報処理装置。 - 請求項2に記載の情報処理装置であって、
前記造形エリアからはみ出さない位置を探索するための基準位置に基づいて前記造形エリアからはみ出さない位置を探索する位置探索部と、
を備えることを特徴とする情報処理装置。 - 請求項3に記載の情報処理装置であって、
前記基準位置を入力する基準位置入力部を備えることを特徴とする情報処理装置。 - 請求項3に記載の情報処理装置であって、
前記基準位置は予め設定されたものであることを特徴とする情報処理装置。 - 請求項1に記載の情報処理装置であって、
前記向き探索部は、前記3Dモデルを初期位置からx,y,z方向の全方向に予め設定された均等な角度範囲を探索範囲として当該探索範囲毎に、前記反り上がる力と前記接地面から得られる粘着力を算出し、前記反り上がる力が前記粘着力よりも小さくなる向きを探索することを特徴とする情報処理装置。 - 請求項1に記載の情報処理装置であって、
前記向き探索部は、前記3Dモデルを初期位置からx,y,z方向の全方向にユーザが設定した角度範囲を探索範囲として当該探索範囲毎に、前記反り上がる力と前記接地面から得られる粘着力を算出し、両者の差を記憶し、当該差の大きい角度を選択して、さらに前記反り上がる力と前記粘着力を算出し、前記反り上がる力が前記粘着力よりも小さくなる向きを探索することを特徴とする情報処理装置。 - 請求項1から請求項7のいずれか1項に記載の情報処理装置と、
前記情報処理装置からの3Dプリンタ制御データに基づいて造形する3Dプリンタと、
を備えることを特徴とする3Dプリンタシステム。 - 3Dモデルの接地面積を算出し、
前記3Dモデルの接地面に発生する粘着力を算出し、
前記3Dモデルを任意の向きに回転させ、
前記3Dモデルをある向きで造形するときに発生する反り上がる力を算出し、
発生する反り上がる力が、接地面から得られる粘着力より小さくなるようなモデルの向きを探索する、
ことを特徴とする情報処理方法。 - コンピュータに、
3Dモデルの接地面積を算出するステップと、
前記3Dモデルの接地面に発生する粘着力を算出するステップと、
前記3Dモデルを任意の向きに回転するステップと、
前記3Dモデルをある向きで造形するときに発生する反り上がる力を算出するステップと、
発生する反り上がる力が、接地面から得られる粘着力より小さくなるようなモデルの向きを探索するステップと、
を実行させることを特徴とするコンピュータプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/361,923 US20170165918A1 (en) | 2015-12-14 | 2016-11-28 | Information processing apparatus for additive manufacturing system, information processing method for additive manufacturing system, and storage medium |
EP16201838.6A EP3181335A1 (en) | 2015-12-14 | 2016-12-02 | Information processing apparatus for additive manufacturing system, information processing metod for additive manufacturing system, and carrier medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015243409 | 2015-12-14 | ||
JP2015243409 | 2015-12-14 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017109478A true JP2017109478A (ja) | 2017-06-22 |
Family
ID=59079370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016210974A Pending JP2017109478A (ja) | 2015-12-14 | 2016-10-27 | 情報処理装置、3dプリンタシステム、情報処理方法及びコンピュータプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017109478A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019012539A1 (en) * | 2017-07-13 | 2019-01-17 | Stratasys Ltd. | METHOD OF PRINTING A 3D MODEL FROM POINT CLOUD DATA |
US11693389B2 (en) | 2018-11-30 | 2023-07-04 | Mimaki Engineering Co., Ltd. | Information processing device for shaping device, shaping data combining method, and shaping data combining program |
-
2016
- 2016-10-27 JP JP2016210974A patent/JP2017109478A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019012539A1 (en) * | 2017-07-13 | 2019-01-17 | Stratasys Ltd. | METHOD OF PRINTING A 3D MODEL FROM POINT CLOUD DATA |
US11543800B2 (en) | 2017-07-13 | 2023-01-03 | Stratasys Ltd. | Method of printing a 3D model from point cloud data |
US11693389B2 (en) | 2018-11-30 | 2023-07-04 | Mimaki Engineering Co., Ltd. | Information processing device for shaping device, shaping data combining method, and shaping data combining program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3181335A1 (en) | Information processing apparatus for additive manufacturing system, information processing metod for additive manufacturing system, and carrier medium | |
JP2019177494A (ja) | 制御システム、造形システムおよびプログラム | |
JP5615667B2 (ja) | 三次元造形装置用の設定データ作成装置、三次元造形装置用の設定データ作成方法及び三次元造形装置用の設定データ作成プログラム並びにコンピュータで読み取り可能な記録媒体 | |
US10603893B2 (en) | 3D printing device and printing correction method | |
US9731452B2 (en) | Three dimensional printer and method for adjusting working coordinate of platform thereof | |
EP3536500B1 (en) | Fabricating apparatus, fabricating system, and fabricating method | |
US20160354980A1 (en) | Three-dimensional printing appratus and method for calibrating printing inaccuracy thereof | |
JP5615668B2 (ja) | 三次元造形装置用の設定データ作成装置、三次元造形装置用の設定データ作成方法及び三次元造形装置用の設定データ作成プログラム並びにコンピュータで読み取り可能な記録媒体 | |
US20160107393A1 (en) | Optimization of a production process | |
US11914932B2 (en) | User-assisted parts packing optimization | |
JP2020001302A (ja) | 造形予測システム、造形予測表示システム、情報処理装置およびプログラム | |
AU2017234493B2 (en) | Information processing device, program, information processing method and molding system | |
US20150251358A1 (en) | Three dimensional printing apparatus and method for controlling printing head thereof | |
JP2019181752A (ja) | 三次元形状データの編集装置、三次元造形装置、三次元造形システム、及び三次元形状データの編集プログラム | |
KR20160137344A (ko) | 인쇄 온도의 제어 방법 및 제어 장치 | |
JP2018001725A (ja) | 3次元データ生成装置、3次元造形装置、造形物の製造方法及びプログラム | |
US20200009878A1 (en) | Inkjet position adjustment method and three-dimensional printing equipment | |
JP2017109478A (ja) | 情報処理装置、3dプリンタシステム、情報処理方法及びコンピュータプログラム | |
US20190315066A1 (en) | Information processing device, modeling device, modeling system, method and computer-readable recording medium | |
CN114311679B (zh) | 三维造型用数据的生成方法以及三维造型物的制造方法 | |
JP2020001295A (ja) | 造形予測システム、情報処理装置、プログラムおよび造形予測方法 | |
CN114043726A (zh) | 用于3d打印的方法及装置、存储介质和程序产品 | |
CN112004654B (zh) | 打包三维构建床 | |
EP3378630B1 (en) | 3d printing device and resume printing method thereof | |
JP2018049335A (ja) | データ生成装置、造形装置、造形方法及びプログラム |