JP7094037B2 - Porous structure design equipment, design methods and programs - Google Patents

Porous structure design equipment, design methods and programs Download PDF

Info

Publication number
JP7094037B2
JP7094037B2 JP2020136793A JP2020136793A JP7094037B2 JP 7094037 B2 JP7094037 B2 JP 7094037B2 JP 2020136793 A JP2020136793 A JP 2020136793A JP 2020136793 A JP2020136793 A JP 2020136793A JP 7094037 B2 JP7094037 B2 JP 7094037B2
Authority
JP
Japan
Prior art keywords
boundary
porous
tetraheadron
point cloud
points
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.)
Active
Application number
JP2020136793A
Other languages
Japanese (ja)
Other versions
JP2022032714A (en
Inventor
シャリフ ウラ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kitami Institute of Technology NUC
Original Assignee
Kitami Institute of Technology NUC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Kitami Institute of Technology NUC filed Critical Kitami Institute of Technology NUC
Priority to JP2020136793A priority Critical patent/JP7094037B2/en
Publication of JP2022032714A publication Critical patent/JP2022032714A/en
Application granted granted Critical
Publication of JP7094037B2 publication Critical patent/JP7094037B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

特許法第30条第2項適用 令和1年11月12日公益社団法人精密工学会が発行した「The 8th International Conference of Asian Society for Precision Engineering and Nanotechnology(ASPEN2019)プロシーディングス」で公開Application of Article 30, Paragraph 2 of the Patent Law Reiwa November 12, 1st, "The 8th International Conference of Asian Society for Precision Engineering for Precision Engineering and Nanotechnology" published by the Precision Engineering Society of Japan (19)

特許法第30条第2項適用 令和1年11月14日島根県立産業交流会館(くにびきメッセ)において開催された「The 8th International Conference of Asian Society for Precision Engineering and Nanotechnology(ASPEN2019)」で発表Application of Article 30, Paragraph 2 of the Patent Act Reiwa Announced at "The 8th International Conference of Asian Society for Precision Engineering for Engineering 20" held at Shimane Prefectural Industrial Exchange Center (Kunibiki Messe) on November 14, 1st.

本発明は、多孔質構造体の設計装置、設計方法及びプログラムに関する。 The present invention relates to a design device, a design method and a program for a porous structure.

内部の細孔を気体や流体が通過可能な多孔質構造体が知られている。多孔質構造体は複雑な内部構造を有するため、その立体モデルを、CAD(Computer-Aided Design)を用いて手作業で作成することは現実的でない。そこで、例えば、特許文献1に開示されているように、多孔質構造体の立体モデルを、コンピュータの計算処理で作成する方法の開発が進められている。 Porous structures that allow gas and fluid to pass through the internal pores are known. Since the porous structure has a complicated internal structure, it is not realistic to manually create a three-dimensional model using CAD (Computer-Aided Design). Therefore, for example, as disclosed in Patent Document 1, a method for creating a three-dimensional model of a porous structure by a computer calculation process is being developed.

特開2019-115724号公報Japanese Unexamined Patent Publication No. 2019-115724

特許文献1の方法では、同一の多孔性のタイルを積み重ねることで、任意のサイズ又は形状の多孔質構造体の立体モデルを生成している。このため、特許文献1の方法で設計された多孔質構造体は、ポーラスに周期性が存在しており、自然に存在する多孔質構造体に類似しているとは言い難い。 In the method of Patent Document 1, a three-dimensional model of a porous structure of an arbitrary size or shape is generated by stacking the same porous tiles. Therefore, it cannot be said that the porous structure designed by the method of Patent Document 1 has periodicity in the porous structure and is similar to the naturally occurring porous structure.

本発明は、このような背景に基づいてなされたものであり、自然に存在する多孔質構造体に類似した多孔質構造体を容易に設計することが可能な多孔質構造体の設計装置、設計方法及びプログラムを提供することを目的とする。 The present invention has been made based on such a background, and is a design device and design for a porous structure capable of easily designing a porous structure similar to a naturally occurring porous structure. The purpose is to provide methods and programs.

上記目的を達成するために、本発明の第1の観点に係る設計装置は、
複数のファセットで表現されたバウンダリの立体モデルを取得する取得部と、
前記バウンダリを覆う三次元領域内にランダムに分布する複数の点からなるランダム点群を生成するランダム点群生成部と、
前記ランダム点群から前記バウンダリの内側に配置された点を判別し、前記バウンダリを構成する複数のファセットの各頂点と、前記バウンダリの内側に配置された前記ランダム点群の各点とに基づいて、ポーラスを含む多孔質構造体の立体モデルを生成するポーラス生成部と、
を備える。
In order to achieve the above object, the design apparatus according to the first aspect of the present invention is
The acquisition unit that acquires the 3D model of the boundary expressed by multiple facets,
A random point cloud generator that generates a random point cloud consisting of a plurality of points randomly distributed in a three-dimensional region that covers the boundary.
From the random point cloud, the points arranged inside the boundary are determined, and based on each vertex of the plurality of facets constituting the boundary and each point of the random point cloud arranged inside the boundary. , A porous generator that creates a three-dimensional model of a porous structure containing vertices,
To prepare for.

前記ポーラス生成部は、前記バウンダリの内側に配置された前記ランダム点群の各点に基づいて複数のテトラヘッドロンを生成し、前記バウンダリを構成するファセットと、前記テトラヘッドロンを構成するファセットとに基づいて、前記ポーラスに対応する複数のポリヘッドロンを生成してもよい。 The porous generation unit generates a plurality of tetraheadrons based on each point of the random point cloud arranged inside the boundary, and has a facet constituting the boundary and a facet constituting the tetraheadron. A plurality of polyheadrons corresponding to the porous may be generated based on the above.

前記ポーラス生成部は、前記バウンダリの内側に配置された前記ランダム点群の各点から1つの点を選択し、選択された1つの点に最も近い3つの点を前記バウンダリの内側に配置された前記ランダム点群の各点から判別し、選択された1つの点と判別された3つの点とを頂点とするテトラヘッドロンを生成してもよい。 The porous generation unit selected one point from each point of the random point cloud arranged inside the boundary, and arranged the three points closest to the selected one point inside the boundary. It may be discriminated from each point of the random point cloud, and a tetraheadron having one selected point and three discriminated points as vertices may be generated.

前記ポーラス生成部は、前記バウンダリの内側に配置された前記ランダム点群のうち前記テトラヘッドロンの外側にある点から前記テトラヘッドロンを構成する一つのファセットに最も近い点を判別し、前記テトラヘッドロンを構成する一つのファセットに最も近いと判別された点と前記テトラヘッドロンを構成する一つのファセットの3つの頂点とからなる他のテトラヘッドロンを生成し、前記テトラヘッドロンを構成する一つのファセットを削除することで、前記テトラヘッドロンと前記他のテトラヘッドロンとが組み合わされたポリヘッドロンを生成してもよい。 The porous generation unit determines a point closest to one facet constituting the tetraheadron from a point outside the tetraheadron among the random points group arranged inside the boundary, and the tetra. Another tetraheadron consisting of a point determined to be the closest to one facet constituting the headlon and three vertices of one facet constituting the tetraheadron is generated to constitute the tetraheadron. By deleting one facet, the polyheadron may be produced by combining the tetraheadron with the other tetraheadron.

前記ポーラス生成部は、前記テトラヘッドロンを構成する一つのファセットに最も近いと判別された点が、前記テトラヘッドロンから離れて配置されたテトラヘッドロンの頂点である場合に、前記他のテトラヘッドロンを構成するファセットの一つと、前記テトラヘッドロンから離れて配置されたテトラヘッドロンを構成するファセットの一つとを複数のファセットで接続することで、前記テトラヘッドロン、前記他のテトラヘッドロン及び前記テトラヘッドロンから離れて配置されたテトラヘッドロンを一体化したポリヘッドロンを生成してもよい。 When the point determined to be the closest to one facet constituting the tetraheadron is the apex of the tetraheadron arranged away from the tetraheadron, the porous generation unit is the other tetra. By connecting one of the facets constituting the headlon and one of the facets constituting the tetraheadron arranged apart from the tetraheadron with a plurality of facets, the tetraheadron and the other tetraheads are connected. Polyheadron may be produced by integrating Ron and a tetraheadron arranged apart from the tetraheadron.

前記ランダム点群生成部は、前記バウンダリを覆う三次元領域を設定し、前記三次元領域を互いに直交する平面で分割してメッシュを生成し、点の発生確率に基づいて前記メッシュの各交点に確率的に点を配置してもよい。 The random point group generation unit sets a three-dimensional region covering the boundary, divides the three-dimensional region into planes orthogonal to each other to generate a mesh, and at each intersection of the mesh based on the probability of occurrence of points. You may arrange the points probabilistically.

上記目的を達成するために、本発明の第2の観点に係る設計方法は、
取得部が、複数のファセットで表現されたバウンダリの立体モデルを取得するステップと、
ランダム点群生成部が、前記バウンダリを覆う三次元領域内にランダムに分布する複数の点からなるランダム点群を生成するステップと、
ポーラス生成部が、前記ランダム点群から前記バウンダリの内側に配置された点を判別し、前記バウンダリを構成する複数のファセットの各頂点と、前記バウンダリの内側に配置された前記ランダム点群の各点とに基づいて、ポーラスを含む多孔質構造体の立体モデルを生成するステップと、
を含む。
In order to achieve the above object, the design method according to the second aspect of the present invention is:
The step that the acquisition part acquires the three-dimensional model of the boundary expressed by multiple facets,
A step in which the random point cloud generation unit generates a random point cloud consisting of a plurality of points randomly distributed in a three-dimensional region covering the boundary.
The porous generation unit determines from the random point cloud the points arranged inside the boundary, each of the vertices of the plurality of facets constituting the boundary, and each of the random point cloud arranged inside the boundary. Steps to generate a three-dimensional model of a porous structure containing a porous structure based on points,
including.

上記目的を達成するために、本発明の第3の観点に係るプログラムは、
コンピュータを、
複数のファセットで表現されたバウンダリの立体モデルを取得する取得手段、
前記バウンダリを覆う三次元領域内にランダムに分布する複数の点からなるランダム点群を生成するランダム点群生成手段、
前記ランダム点群から前記バウンダリの内側に配置された点を判別し、前記バウンダリを構成する複数のファセットの各頂点と、前記バウンダリの内側に配置された前記ランダム点群の各点とに基づいて、ポーラスを含む多孔質構造体の立体モデルを生成するポーラス生成手段、
として機能させる。
In order to achieve the above object, the program according to the third aspect of the present invention is
Computer,
Acquisition method to acquire a 3D model of a boundary expressed by multiple facets,
A random point cloud generation means for generating a random point cloud consisting of a plurality of points randomly distributed in a three-dimensional region covering the boundary.
From the random point cloud, the points arranged inside the boundary are determined, and based on each vertex of the plurality of facets constituting the boundary and each point of the random point cloud arranged inside the boundary. , Porous generation means, which generates a three-dimensional model of a porous structure containing vertices,
To function as.

本発明によれば、自然に存在する多孔質構造体に類似した多孔質構造体を容易に設計することが可能な多孔質構造体の設計装置、設計方法及びプログラムを提供できる。 INDUSTRIAL APPLICABILITY According to the present invention, it is possible to provide a design device, a design method and a program for a porous structure capable of easily designing a porous structure similar to a naturally occurring porous structure.

本発明の実施の形態に係る製造システムの構成を示す図である。It is a figure which shows the structure of the manufacturing system which concerns on embodiment of this invention. 本発明の実施の形態に係る設計装置の構成を示すブロック図である。It is a block diagram which shows the structure of the design apparatus which concerns on embodiment of this invention. 本実施の形態に係る表示画面の一例を示す図である。It is a figure which shows an example of the display screen which concerns on this embodiment. 本実施の形態に係る表示画面の他の一例を示す図である。It is a figure which shows another example of the display screen which concerns on this embodiment. ランダム点群を生成する手順を模式的に説明した図である。It is a figure which schematically explained the procedure for generating a random point cloud. ランダム点群とバウンダリとの関係を示す図である。It is a figure which shows the relationship between a random point cloud and a boundary. 点とファセットが配置された平面との位置関係を示す図である。It is a figure which shows the positional relationship between a point and a plane in which facets are arranged. (a)、(b)は、いずれも点及びファセットをz=0の平面に投影した様子を示す図である。Both (a) and (b) are diagrams showing how points and facets are projected onto a plane of z = 0. (a)、(b)は、いずれもランダム点群からテトラヘッドロンを生成する手順を模式的に示す図であり、(c)は、ランダム点群の一例を示す図であり、(d)は、(c)のランダム点群から生成されたテトラヘッドロンの集合を示す図である。(A) and (b) are both diagrams schematically showing a procedure for generating a tetraheadron from a random point cloud, and (c) is a diagram showing an example of a random point cloud, (d). Is a diagram showing a set of tetraheadrons generated from the random point cloud of (c). (a)、(b)は、いずれもバウンダリ及びテトラヘッドロンを構成するファセットからポリヘッドロンを生成する手順を模式的に示す図である。Both (a) and (b) are diagrams schematically showing a procedure for producing polyheadron from the facets constituting the boundary and tetraheadron. (a)、(b)は、いずれもテトラヘッドロンに他のテトラヘッドロンを組み合わせる手順を模式的に示す図である。Both (a) and (b) are diagrams schematically showing a procedure for combining a tetraheadron with another tetraheadron. 図11(b)に示す頂点を共有する複数のポリヘッドロンを1つのポリヘッドロンに一体化する手順を模式的に示す図である。FIG. 11 is a diagram schematically showing a procedure for integrating a plurality of polyheadrons sharing a vertex shown in FIG. 11B into one polyheadron. 本実施の形態に係る多孔質構造体の設計処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the design process of the porous structure which concerns on this embodiment. 本実施の形態に係るランダム点群生成処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the random point cloud generation processing which concerns on this embodiment. 本実施の形態に係るポーラス生成処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the porous generation processing which concerns on this embodiment. 本実施の形態に係るモデル断面解析処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the model cross-section analysis processing which concerns on this embodiment. 実施例1におけるポーラスモデルの作成手順を示す図である。It is a figure which shows the procedure of making a porous model in Example 1. FIG. (a)~(p)は、いずれも実施例1におけるポーラスモデルの横断面を示す断面図である。(A) to (p) are cross-sectional views showing a cross section of the porous model in Example 1. 実施例1におけるポーラスの実物の横断面とポーラスモデルの横断面とを比較した図である。It is a figure which compared the cross section of the real thing of a porous and the cross section of a porous model in Example 1. FIG. (a)は、実施例2におけるポーラスモデルの横断面を示す断面図であり、(b)は、実施例1、2におけるポーラスモデルの高さと横断面の断面積との関係を示すグラフである。(A) is a cross-sectional view showing a cross section of the porous model in Example 2, and (b) is a graph showing the relationship between the height of the porous model in Examples 1 and 2 and the cross-sectional area of the cross section. .. (a)は、実施例3におけるポーラスモデルの作成手順を示す図であり、(b)は、実施例3におけるポーラスモデルの横断面を示す断面図である。(A) is a diagram showing a procedure for creating a porous model in Example 3, and (b) is a cross-sectional view showing a cross section of the porous model in Example 3. (a)は、実施例4におけるポーラスモデルの作成手順を示す図であり、(b)は、実施例4におけるポーラスモデルの横断面を示す断面図である。(A) is a diagram showing a procedure for creating a porous model in Example 4, and (b) is a cross-sectional view showing a cross section of the porous model in Example 4. (a)は、実施例5におけるポーラスモデルの作成手順を示す図であり、(b)は、実施例5におけるポーラスモデルの縦断面を示す断面図である。(A) is a diagram showing a procedure for creating a porous model in Example 5, and (b) is a cross-sectional view showing a vertical cross section of the porous model in Example 5.

以下、本発明に係る多孔質構造体の設計装置、設計方法及びプログラムの実施の形態を、図面を参照しながら詳細に説明する。 Hereinafter, embodiments of a design apparatus, design method, and program for a porous structure according to the present invention will be described in detail with reference to the drawings.

図1は、実施の形態に係る製造システム1の構成を示す図である。製造システム1は、多孔質構造体の立体モデル(ポーラスモデル)を作成し、作成されたポーラスモデルに基づいて多孔質構造体を製造するシステムである。多孔質構造体には、表面や内部に微細な多数の細孔(ポーラス)が設けられている。 FIG. 1 is a diagram showing a configuration of a manufacturing system 1 according to an embodiment. The manufacturing system 1 is a system that creates a three-dimensional model (porous model) of a porous structure and manufactures the porous structure based on the created porous model. The porous structure is provided with a large number of fine pores (porous) on the surface and inside.

製造システム1は、設計装置100と、製造装置200と、を備える。設計装置100と製造装置200とは、有線又は無線の通信回線を介して互いに通信可能に接続されている。 The manufacturing system 1 includes a design device 100 and a manufacturing device 200. The design device 100 and the manufacturing device 200 are connected to each other so as to be communicable with each other via a wired or wireless communication line.

設計装置100は、多孔質構造体の外形を示すバウンダリ(境界)のSTL(stereolithography)データと、3次元空間にランダムに配置された点の集合であるランダム点群と、に基づいてポーラスモデルを生成し、生成されたポーラスモデルに基づいて多孔質構造体の付加製造に好適なSTLデータを生成する。 The design device 100 creates a porous model based on boundary (boundary) STL (stereolithography) data showing the outer shape of the porous structure and a random point cloud which is a set of points randomly arranged in a three-dimensional space. Generate and generate STL data suitable for additional production of porous structures based on the generated porous model.

STLは、三次元CADソフトのファイルフォーマットであり、任意の三次元形状をファセットと呼ばれる三角形の集合体で表現する。ファセットの位置及び向きは、三角形の3つの頂点の座標点A(x,y,z)、B(x,y,z)、C(x,y,z)及び法線ベクトルN(x,y,z)で表現される。法線ベクトルN(x,y,z)は、座標点Aから座標点Bに向かうベクトルと座標点Aから座標点Cに向かうベクトルとの外積で表される。 STL is a file format of 3D CAD software, and any 3D shape is represented by a set of triangles called facets. The positions and orientations of the facets are the coordinate points A (x A , y A , z A ), B (x B , y B , z B ), C (x C , y C , z C ) of the three vertices of the triangle. And the normal vector N (x N , y N , z N ). The normal vector N (x N , y N , z N ) is represented by the outer product of the vector from the coordinate point A to the coordinate point B and the vector from the coordinate point A to the coordinate point C.

製造装置200は、設計装置100で生成されたポーラスモデルのSTLデータに基づいて、多孔質構造体を製造する装置である。製造装置200は、例えば、付加製造機(3Dプリンター)である。付加製造機は、例えば、溶解した樹脂を噴射し、幾つもの樹脂の層を積層することで、多孔質構造体を製造する。 The manufacturing apparatus 200 is an apparatus for manufacturing a porous structure based on the STL data of the porous model generated by the design device 100. The manufacturing apparatus 200 is, for example, an additional manufacturing machine (3D printer). The addition manufacturing machine manufactures a porous structure by injecting a melted resin, for example, and laminating a number of layers of the resin.

図2は、実施の形態に係る設計装置100の構成を示すブロック図である。設計装置100は、例えば、汎用コンピュータである。設計装置100は、操作部110と、表示部120と、通信部130と、記憶部140と、制御部150と、を備える。設計装置100の各部は、内部バス(図示せず)を介して互いに通信可能に接続されている。 FIG. 2 is a block diagram showing the configuration of the design device 100 according to the embodiment. The design device 100 is, for example, a general-purpose computer. The design device 100 includes an operation unit 110, a display unit 120, a communication unit 130, a storage unit 140, and a control unit 150. Each part of the design apparatus 100 is communicably connected to each other via an internal bus (not shown).

操作部110は、ユーザの指示を受け付け、受け付けた操作に対応する操作信号を制御部150に供給する。操作部110は、例えば、キーボード、マウスを備える。操作部110は、例えば、バウンダリのSTLデータを取り込む旨のユーザの指示、ランダム点群の生成に必要なメッシュのグリッド数及び点の発生確率に関するユーザの指示を受け付ける。 The operation unit 110 receives a user's instruction and supplies an operation signal corresponding to the accepted operation to the control unit 150. The operation unit 110 includes, for example, a keyboard and a mouse. The operation unit 110 receives, for example, a user's instruction to capture boundary STL data, a user's instruction regarding the number of mesh grids required for generating a random point cloud, and the probability of occurrence of points.

表示部120は、制御部150から供給される画像データに基づいて、設計装置100を操作するユーザに向けて各種の画像を表示する。表示部120は、例えば、バウンダリの立体モデル(バウンダリモデル)、ポーラスモデル及びその断面形状を表示する。 The display unit 120 displays various images to the user who operates the design device 100 based on the image data supplied from the control unit 150. The display unit 120 displays, for example, a three-dimensional boundary model (boundary model), a porous model, and a cross-sectional shape thereof.

図3は、実施の形態に係る表示画面の一例である。図3の左側には、バウンダリモデルとバウンダリモデルに対して設定されるランダム点群とが重ねて表示されている。このランダム点群は、図3の画面中央にあるグリッド数及び点の発生確率の入力欄に入力された数値に基づいて生成される。また、図3の右側には、生成されたポーラスモデルが表示されている。 FIG. 3 is an example of a display screen according to the embodiment. On the left side of FIG. 3, the boundary model and the random point cloud set for the boundary model are superimposed and displayed. This random point cloud is generated based on the numerical values input in the input fields of the number of grids and the probability of occurrence of points in the center of the screen of FIG. Further, on the right side of FIG. 3, the generated porous model is displayed.

図4は、実施の形態に係る表示画面の他の一例である。図4の左側には、ポーラスモデルが切断面と共に表示されている。ユーザが操作部110を操作して切断面の高さを調整し、ポーラスモデルの断面画像の解析を指示すると、図4の右側に断面積が表示されると共に、別のフォームにポーラスモデルの断面画像が表示される。ポーラスモデルの切断面の断面積は、多孔質構造体を構成する材料が配置された部分の断面積であり、細孔の断面積は含まれない。 FIG. 4 is another example of the display screen according to the embodiment. On the left side of FIG. 4, the porous model is displayed together with the cut surface. When the user operates the operation unit 110 to adjust the height of the cut surface and instruct to analyze the cross-sectional image of the porous model, the cross-sectional area is displayed on the right side of FIG. 4, and the cross-sectional area of the porous model is displayed in another form. The image is displayed. The cross-sectional area of the cut surface of the porous model is the cross-sectional area of the portion where the material constituting the porous structure is arranged, and does not include the cross-sectional area of the pores.

図2に戻り、操作部110と表示部120とは、タッチパネルによって構成されてもよい。タッチパネルは、所定の操作を受け付ける操作画面を表示すると共に、操作画面において作業員が接触操作を行った位置に対応する操作信号を制御部150に供給する。 Returning to FIG. 2, the operation unit 110 and the display unit 120 may be configured by a touch panel. The touch panel displays an operation screen for accepting a predetermined operation, and supplies an operation signal corresponding to the position where the worker has performed a contact operation on the operation screen to the control unit 150.

通信部130は、例えば、インターネット回線のような通信ネットワークに接続することが可能なインターフェースである。 The communication unit 130 is an interface capable of connecting to a communication network such as an Internet line.

記憶部140は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、ハードディスクドライブに例示される。記憶部140は、制御部150に実行されるプログラムや各種のデータ、例えば、ランダム点群の位置データやバウンダリモデル及びポーラスモデルのSTLデータを記憶する。また、記憶部140は、制御部150が処理を実行するためのワークメモリとして機能する。 The storage unit 140 is exemplified by a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, and a hard disk drive. The storage unit 140 stores programs and various data executed in the control unit 150, for example, position data of a random point cloud and STL data of a boundary model and a porous model. Further, the storage unit 140 functions as a work memory for the control unit 150 to execute the process.

制御部150は、CPU(Central Processing Unit)等を備え、設計装置100の各部の制御を行う。制御部150は、例えば、図13の多孔質構造体の設計処理、図14のランダム点群生成処理、図15のポーラス生成処理及び図16のモデル断面解析処理を実行する。 The control unit 150 includes a CPU (Central Processing Unit) and the like, and controls each unit of the design device 100. The control unit 150 executes, for example, a design process for the porous structure of FIG. 13, a random point cloud generation process of FIG. 14, a porous generation process of FIG. 15, and a model cross-section analysis process of FIG.

制御部150は、機能的には、取得部151と、ランダム点群生成部152と、ポーラス生成部153と、STLデータ生成部154と、モデル断面解析部155と、出力部156と、を備える。 The control unit 150 functionally includes an acquisition unit 151, a random point cloud generation unit 152, a porous generation unit 153, an STL data generation unit 154, a model cross-section analysis unit 155, and an output unit 156. ..

取得部151は、多孔質構造体の外形を示すバウンダリのSTLデータを取得する。バウンダリは、例えば、ユーザが三次元CADを用いて作成し、三次元CADで作成されたバウンダリのSTLデータを設計装置100に取り込んでもよい。また、三次元CADで作成されたバウンダリのジオメトリデータを設計装置100に取り込み、設計装置100でSTLデータに変換してもよい。また、取得部151は、ランダム点群を生成するのに必要なメッシュのグリッド数及び点の発生確率を取得する。 The acquisition unit 151 acquires boundary STL data indicating the outer shape of the porous structure. The boundary may be created by the user using the three-dimensional CAD, and the STL data of the boundary created by the three-dimensional CAD may be incorporated into the design device 100. Further, the boundary geometry data created by the three-dimensional CAD may be imported into the design device 100 and converted into STL data by the design device 100. Further, the acquisition unit 151 acquires the number of grids of the mesh and the probability of occurrence of points necessary for generating the random point cloud.

ランダム点群生成部152は、取得部151で取得したSTLデータが表すバウンダリを覆う三次元領域を設定し、当該三次元領域の内部にランダムに分布する点群を生成する。 The random point cloud generation unit 152 sets a three-dimensional region covering the boundary represented by the STL data acquired by the acquisition unit 151, and generates a point cloud randomly distributed inside the three-dimensional region.

図5は、ランダム点群を生成する手順を模式的に示す図である。まず、図5に示すように、多孔質構造体のバウンダリを覆う三次元領域を設定する。三次元領域は、例えば、バウンダリモデルが配置された直交座標系においてxy平面、yz平面及びzx平面を有するように設定された立方体形状の領域である。次に、ユーザが指定したグリッド数Nで三次元領域をxy平面、yz平面及びzx平面で等分割し、(N+1)個の交点を有するメッシュを生成する。メッシュの各交点(ポイント)は、xy平面、yz平面及びzx平面が交差する点であり、座標点(x,y、z)で表現される(i=1,2,…)。次に、ユーザが指定した点の発生確率に基づいて、メッシュの各交点に確率的に点を配置する。その結果、バウンダリの内外でランダムに点が分布したランダム点群が得られる。 FIG. 5 is a diagram schematically showing a procedure for generating a random point cloud. First, as shown in FIG. 5, a three-dimensional region covering the boundary of the porous structure is set. The three-dimensional region is, for example, a cube-shaped region set to have an xy plane, an yz plane, and a zx plane in a Cartesian coordinate system in which a boundary model is arranged. Next, the three-dimensional region is equally divided by the xy plane, the yz plane, and the zx plane with the number of grids N specified by the user, and (N + 1) a mesh having three intersections is generated. Each intersection (point) of the mesh is a point where the xy plane, the yz plane, and the zx plane intersect, and is represented by coordinate points ( xi , y i , z i ) (i = 1, 2, ...). Next, points are stochastically placed at each intersection of the mesh based on the probability of occurrence of the points specified by the user. As a result, a random point cloud in which points are randomly distributed inside and outside the boundary is obtained.

図2に戻り、ポーラス生成部153は、ランダム点群生成部152で生成されたランダム点群の各点と、バウンダリを構成する複数のファセットの各頂点とに基づいて、ポーラスを含むポーラスモデルを生成する。具体的には、ランダム点群の各点及びファセットの各頂点のいずれかを頂点とする複数のテトラヘッドロン(4面体)を繰り返し演算により大量に生成する。その後、複数のテトラヘッドロンを繋ぎ合わせることで、ポーラスに対応するポリヘッドロン(多面体)を生成する。 Returning to FIG. 2, the porous generation unit 153 creates a porous model including the porous based on each point of the random point cloud generated by the random point cloud generation unit 152 and each vertex of a plurality of facets constituting the boundary. Generate. Specifically, a large number of tetraheadrons (tetrahedrons) having any of the points of the random point cloud and the vertices of the facets as the vertices are generated in large quantities by iterative calculation. After that, by connecting a plurality of tetraheadrons, a polyheadron (polyhedron) corresponding to the porous is generated.

以下、図6~図12を参照して、ランダム点群からポーラスを生成する一連の手順を説明する。図6は、ランダム点群とバウンダリとの関係を示す図である。まず、第1のステップとして、複数の点P(j=1,2,…)で構成されたランダム点群の中から、バウンダリの表面より内側に位置する全ての点を選別する。バウンダリは、前述したように複数のファセットF(i=1,2,…)で構成されている。 Hereinafter, a series of procedures for generating a porous from a random point cloud will be described with reference to FIGS. 6 to 12. FIG. 6 is a diagram showing the relationship between the random point cloud and the boundary. First, as a first step, all points located inside the surface of the boundary are selected from a random point cloud composed of a plurality of points P j (j = 1, 2, ...). As described above, the boundary is composed of a plurality of facets Fi ( i = 1, 2, ...).

図7は、点PとファセットFが配置された平面Hとの位置関係を示す図である。ファセットFは、3つの座標点A、B、C及び法線ベクトルNで表現され、平面Hは、3つの座標点A、B、Cを含むように設定されている。ランダム点群の中からバウンダリの表面より内側に位置する点を選別するには、まず、ランダム点群の各点Pが平面Hの面上、表側及び裏側のいずれに位置するかを判別する必要がある。平面Hの表側は、バウンダリが配置されていない側であるのに対し、平面Hの裏側は、バウンダリが配置されている側である。 FIG. 7 is a diagram showing the positional relationship between the point P j and the plane Hi on which the facet Fi is arranged. The facet F i is represented by three coordinate points A i , Bi , C i and a normal vector Ni , and the plane Hi is set to include the three coordinate points A i , Bi , Ci . ing. In order to select points located inside the boundary surface from the random point cloud, first, it is determined whether each point Pj of the random point cloud is located on the surface, the front side, or the back side of the plane Hi . There is a need to. The front side of the plane Hi is the side on which the boundary is not arranged, while the back side of the plane Hi is the side on which the boundary is arranged.

図8(a)、(b)は、それぞれ図7に示すような点P及びファセットFをz=0の平面に投影した様子を示す図である。点P及びファセットFをそれぞれz=0の平面に投影すると、z=0の平面上に点Ppj及びファセットFpjが得られる。z=0に投影されたファセットFpjは、z=0の平面上の3つの座標点Api、Bpi、Cpiで定義される。ランダム点群の点Pの中からバウンダリの表面より内側に位置する点を選別するには、z=0の平面上の点Ppjが図8(a)に示すようにファセットFpjの内側に位置するか、図8(b)に示すようにファセットFpjの外側に位置するかを判別する必要がある。 8 (a) and 8 (b) are diagrams showing how points P j and facet Fi as shown in FIG. 7 are projected onto a plane of z = 0, respectively. When the points P j and the facet Fi are projected onto the plane of z = 0 , respectively, the points P pj and the facet F pj are obtained on the plane of z = 0. The facet F pj projected at z = 0 is defined by three coordinate points A pi , B pi , and C pi on the plane of z = 0. To select a point located inside the boundary surface from the points P j of the random point cloud, the point P pj on the plane of z = 0 is inside the facet F pj as shown in FIG. 8 (a). It is necessary to determine whether it is located at or outside the facet F pj as shown in FIG. 8 (b).

点Pが平面Hの裏側に位置し、かつ、z=0に平面上に投影された点Ppjがz=0に平面上に投影されたファセットFpjの三角形の内側に位置する2つのファセットFが存在する場合に、点Pがバウンダリの内側に位置すると判別できる。これは、点Pがバウンダリの内側に位置する場合、点Pは少なくともZ軸方向に対向する一対のファセットFに挟まれるためである。上記の手順を各点Pに適用することで、ランダム点群の中からバウンダリの内側に位置する全ての点を選別できる。 The point P j is located on the back side of the plane Hi, and the point P pj projected on the plane at z = 0 is located inside the triangle of the facet F pj projected on the plane at z = 0. When two facets Fi are present, it can be determined that the point P j is located inside the boundary. This is because when the point P j is located inside the boundary, the point P j is sandwiched between a pair of facets Fi facing at least in the Z-axis direction. By applying the above procedure to each point Pj , all points located inside the boundary can be selected from the random point cloud.

次に、第2のステップとして、バウンダリの内側にあると選別された点の集合に基づいて、バウンダリ内部の空間を満たすようにテトラヘッドロンを繰り返し生成する。以下、点の集合からテトラヘッドロンを生成する手順を説明する。 Next, as a second step, tetraheadrons are repeatedly generated so as to fill the space inside the boundary based on the set of points selected to be inside the boundary. The procedure for generating tetraheadron from a set of points will be described below.

図9(a)、(b)は、ランダム点群の点からテトラヘッドロンを生成する手順を模式的に示す図である。まず、図9(a)に示すように、ある任意の点P(j=s)において、点Pに近い順に3つの点Ps,1、Ps,2、Ps,3を抽出し、これらの4点を頂点とするテトラヘッドロンPYを生成する。テトラヘッドロンPYを構成するファセットの法線方向は、それぞれテトラヘッドロンPYの内側を向いている。この手順を他の点Ps+1、…、Ps+iにも適用し、テトラヘッドロンPYs+1、…、PYs+iを繰り返し生成する。 9 (a) and 9 (b) are diagrams schematically showing a procedure for generating tetraheadron from a point cloud of a random point cloud. First, as shown in FIG. 9A, at an arbitrary point P s (j = s), three points P s , 1 , P s, 2 , P s, and 3 are extracted in order of proximity to the point P s. Then, a tetraheadron PY s having these four points as vertices is generated. The normal directions of the facets constituting the Tetraheadron PY s face the inside of the Tetraheadron PY s , respectively. This procedure is also applied to other points P s + 1 , ..., P s + i to repeatedly generate tetraheadron PY s + 1 , ..., PY s + i .

図9(b)は、2つのテトラヘッドロンが頂点を共有している場合の一例を示す。図9(b)では、図9(a)と同様の手順でテトラヘッドロンPYs+iを生成したところ、テトラヘッドロンPYs+iの点Ps+j,1がテトラヘッドロンPYの点Ps,2と同一になっている。テトラヘッドロンを繰り返し生成すると、テトラヘッドロンの頂点のいずれかが既出の他のテトラヘッドロンの頂点の1つと共有されることがある。このような場合には、新たに生成されたテトラヘッドロンを削除し、以後のテトラヘッドロンの生成を停止する。これは以後の手順が複雑になることを避けるためである。 FIG. 9B shows an example in which two tetraheadrons share a vertex. In FIG. 9B, when the tetraheadron PY s + i is generated by the same procedure as in FIG. 9A, the points P s + j, 1 of the tetraheadron PY s + i are the points P s, 2 of the tetraheadron PY s. Is the same as. When tetraheadrons are repeatedly generated, one of the vertices of the tetraheadron may be shared with one of the other tetraheadron vertices already mentioned. In such a case, the newly generated tetraheadron is deleted, and the subsequent production of tetraheadron is stopped. This is to avoid complicating the subsequent steps.

図9(c)は、ランダム点群の一例を示す図であり、図9(d)は、図9(c)のランダム点群から生成されたテトラヘッドロンの集合を示す図である。上記の手順により、図9(c)に示すようなランダム点群から、図9(d)に示すようなテトラヘッドロンの集合が生成される。以上が、ランダム点群からテトラヘッドロンを生成する手順である。 9 (c) is a diagram showing an example of a random point cloud, and FIG. 9 (d) is a diagram showing a set of tetraheadrons generated from the random point cloud of FIG. 9 (c). By the above procedure, a set of tetraheadrons as shown in FIG. 9 (d) is generated from a random point cloud as shown in FIG. 9 (c). The above is the procedure for generating tetraheadron from a random point cloud.

次に、第3のステップとして、バウンダリ及びテトラヘッドロンを構成するファセットからポリヘッドロンを生成する。図10(a)、(b)は、いずれもバウンダリ及びテトラヘッドロンを構成するファセットからポリヘッドロンを生成する手順を模式的に示す図である。図10(a)、(b)における未使用の点とは、バウンダリやテトラヘッドロンを構成するファセットの頂点として使用されていないランダム点群の点である。図10(a)に示すようなバウンダリ及びテトラヘッドロンを構成するファセットを未使用の点を含むファセットで接続すると、図10(b)に示すような多様な形状のポリヘッドロンが得られる。以下、具体的な方法を説明する。 Next, as a third step, polyheadron is produced from the facets constituting the boundary and tetraheadron. 10 (a) and 10 (b) are both diagrams schematically showing a procedure for producing polyheadron from the facets constituting the boundary and tetraheadron. The unused points in FIGS. 10A and 10B are points of a random point cloud that are not used as the vertices of facets constituting the boundary or tetraheadron. By connecting the facets constituting the boundary and the tetraheadron as shown in FIG. 10 (a) with facets including unused points, polyheadrons having various shapes as shown in FIG. 10 (b) can be obtained. Hereinafter, a specific method will be described.

図11(a)、(b)は、いずれもテトラヘッドロンに他のテトラヘッドロンを組み合わせる手順を模式的に示す図である。以下、テトラヘッドロンのファセットを選択しているが、この手順では、パウンダリを構成するファセットとテトラヘッドロンを構成するファセットとは、同等のファセットとして取り扱えるため、バウンダリのファセットを選択してもよい。 11 (a) and 11 (b) are both diagrams schematically showing a procedure for combining a tetraheadron with another tetraheadron. Hereinafter, the facet of the tetraheadron is selected, but in this procedure, the facet constituting the boundary and the facet constituting the tetraheadron can be treated as equivalent facets, so that the facet of the boundary may be selected. ..

図11(a)に示す複数のファセットからランダムに任意の1つのファセットF(0)を選び、ファセットF(0)の裏側が見える位置にある点の中で、ファセットF(0)の裏側にある最も近い点Pvr(0)を特定する。具体的には、全ての点からファセットF(0)の裏側にある全ての点を判別し、ファセットF(0)の裏側にあるそれぞれ点について、ファセットF(0)の各頂点までの距離の和を算出し、距離の和が最小となる点をファセットF(0)の裏側にある最も近い点Prv(0)と判別する。なお、点とファセットF(0)との位置関係において、ファセットF(0)の裏側に点が位置するとは、ファセットF(0)を構成要素とするテトラヘッドロンの外側に点が位置することを意味する。 Arbitrary one facet F r (0) is randomly selected from the plurality of facets shown in FIG. 11 (a), and the facet F r (0) is in a position where the back side of the facet F r (0) can be seen. Identify the closest point P vr (0) on the back side of. Specifically, all the points on the back side of the facet F r (0) are discriminated from all the points, and each point on the back side of the facet F r (0) is reached to each vertex of the facet F r (0). The sum of the distances is calculated, and the point where the sum of the distances is the smallest is determined to be the closest point Prv (0) on the back side of the facet Fr (0). In the positional relationship between the point and the facet Fr (0), the point is located on the back side of the facet Fr (0), that is, the point is located on the outside of the tetraheadron having the facet Fr (0) as a component. Means to be located.

次に、点Pvr(0)とファセットF(0)の3つの頂点の4つの点を用いて新しいテトラヘッドロンを生成する。新しいテトラヘッドロンはファセットFr-jを含む。その後、ファセットF(0)を消去すると、既出のテトラヘッドロンと新しいテトラヘッドロンとは空間的に繋がり、1つのポリヘッドロンが生成される。 Next, a new tetraheadron is generated using the four points of the three vertices of the point P vr (0) and the facet Fr (0). The new Tetra Headlon includes Facet Frj. After that, when the facet Fr (0) is erased, the existing tetraheadron and the new tetraheadron are spatially connected to generate one polyheadron.

他方、ファセットF(0)の裏側に最も近い点Pvr(0)が別のファセットの頂点を構成している場合もある。図11(b)では、新しいテトラヘッドロンを生成する前に、点Pvr(0)を頂点とするファセットが3つ存在している。このような場合には、以下の手順により頂点を共有するファセットが含まれる2つのテトラヘッドロンを1つのポリヘッドロンに一体化することを試みる。 On the other hand, the point P vr (0) closest to the back side of the facet Fr (0) may constitute the vertex of another facet. In FIG. 11B, there are three facets with the point P vr (0) as the apex before the new tetraheadron is generated. In such a case, we try to integrate two tetraheadrons containing facets that share vertices into one polyheadron by the following procedure.

図12は、図11(b)に示す頂点を共有する複数のポリヘッドロンを1つのポリヘッドロンに一体化する手順を説明する図である。新しいテトラヘッドロンが生成される前に点Pvr(0)を頂点に持つ既出のファセットが3つ以上存在していた場合、既出のファセットのうちの1つと、新しく生成した3つのファセットの1つとを選択し、選択されたファセットのペアで空間的な接続作業を実行する。 FIG. 12 is a diagram illustrating a procedure for integrating a plurality of polyheadrons sharing the apex shown in FIG. 11B into one polyheadron. If there are three or more existing facets with the point P vr (0) at the apex before the new tetraheadron is generated, one of the existing facets and one of the three newly generated facets Select one and perform the spatial connection work with the selected pair of vertices.

以下、ファセットFr-j(0)とファセットFCvri(0)とを接続する場合を例に説明する。ファセットFr-j(0)は、3つの頂点Pvr(0)、αr-j(0)、βr-j(0)を備え、ファセットFCvri(0)は、3つの頂点Pvr(0)、Afri(0)、Bfri(0)を備える。 Hereinafter, a case where the facet Frj (0) and the facet FC vr (0) are connected will be described as an example. The facet F r-j (0) has three vertices P vr (0), α r-j (0), β r-j (0), and the facet FC vr (0) has three vertices P vr . (0), A fri (0), B fri (0) are provided.

まず、ファセットFr-j(0)の点αf-j(0)が、ファセットFCvri(0)が配置された平面の裏側に位置するかどうかを判別し、ファセットFr-j(0)の点βr-j(0)が、ファセットFCvri(0)が配置された平面の裏側に位置するかどうかを判別する。また、ファセットFCvri(0)の点Afri(0)が、ファセットFrj(0)が配置された平面の裏側に位置するかどうかを判別し、ファセットFCvri(0)の点Bfri(0)が、ファセットFrj(0)が配置された平面の裏側に位置するかどうかを判別する。 First, it is determined whether or not the point α fj (0) of the facet F r-j ( 0) is located on the back side of the plane on which the facet FC vri (0) is arranged, and the facet F r-j (0) is determined. ) Is located on the back side of the plane on which the facet FC vr ( 0) is arranged. Further, it is determined whether or not the point A fri (0) of the facet FC vri (0) is located on the back side of the plane on which the facet F rj (0) is arranged, and the point B fri (0) of the facet FC vri (0) is determined. It is determined whether 0) is located on the back side of the plane on which the facet Frj (0) is arranged.

ファセットFr-j(0)の点αf-j(0)が、ファセットFCvri(0)が配置された平面の裏側に位置し、かつ、ファセットFCvri(0)の点Avri(0)が、ファセットFr-j(0)が配置された平面の裏側に位置する場合に、新しい4つのファセットFrji-1(0)、Frji-2(0)、Frji-3(0)、Frji-4(0)を順次追加する。このとき、4つのファセットの座標点は、Frji-1(0)={Pvr(0),αr-j(0),Bvri(0)}、Frji-2(0)={Pvr(0),βr-j(0),Avri(0)}、Frji-3(0)={αr-j(0),βr-j(0),Avri(0)}、Frji-4(0)={Avri(0),Bvri(0),αr-j(0)}である。 The point α fj (0) of the facet F r-j ( 0) is located on the back side of the plane on which the facet FC vri (0) is arranged, and the point A vri (0) of the facet FC vri (0) is located. ) Is located behind the plane on which the facets F r-j (0) are placed, the new four facets F rji-1 (0), F rji-2 (0), F rji-3 (0). ), Frji-4 (0) are added in sequence. At this time, the coordinate points of the four facets are F rji-1 (0) = {P vr (0), α r-j (0), B vri (0)}, F rji-2 (0) = {. P vr (0), β r-j (0), A vri (0)}, F rji-3 (0) = {α r-j (0), β r-j (0), A vri (0) )}, F rji-4 (0) = {A vri (0), B vri (0), α r-j (0)}.

また、ファセットFr-j(0)の点βf-j(0)が、ファセットFCvri(0)が配置された平面の裏側に位置し、かつ、ファセットFCvri(0)の点Bvri(0)が、ファセットFr-j(0)が配置された平面の裏側に位置する場合にも、新しい4つのファセットFrji-1(0)、Frji-2(0)、Frji-3(0)、Frji-4(0)を順次追加する。ただし、上記の場合と比較すると、ファセットFrji-3(0)、Frji-4(0)の座標点が異なる。これらのファセットの座標点は、図12で図示するように、Frji-3(0)={αr-j(0),βr-j(0),Bvri(0)}、Frji-4(0)={Avri(0),Bvri(0),βr-j(0)}となる。 Further, the point β fj (0) of the facet F r-j ( 0) is located on the back side of the plane on which the facet FC vri (0) is arranged, and the point B vri of the facet FC vri (0) is located. Even if (0) is located behind the plane on which the facets F r-j (0) are placed, the four new facets F rji-1 (0), F rji-2 (0), F rji- 3 (0) and Frji-4 (0) are added in sequence. However, as compared with the above case, the coordinate points of the facets F rji-3 (0) and F rji-4 (0) are different. As shown in FIG. 12, the coordinate points of these facets are F rji-3 (0) = {α r-j (0), β r-j (0), B vri (0)}, F rji . -4 (0) = {A vri (0), B vri (0), β r-j (0)}.

他方、上記の2つの条件のいずれにも該当しない場合には、ファセットを追加しない。以上が、ポリヘッドロンを生成する手順である。 On the other hand, if neither of the above two conditions is met, the facet is not added. The above is the procedure for producing polyheadron.

図2に戻り、STLデータ生成部154は、ポーラス生成部153で生成されたポーラスモデルに基づいて、多孔質構造体のSTLデータを生成し、STLデータを記憶部140に記憶させる。ポーラスモデルをSTLデータに変換するには公知の手法を用いればよい。 Returning to FIG. 2, the STL data generation unit 154 generates STL data of the porous structure based on the porous model generated by the porous generation unit 153, and stores the STL data in the storage unit 140. A known method may be used to convert the porous model into STL data.

モデル断面解析部155は、ポーラスモデルの断面を解析する旨のユーザの指示を受け付けると、STLデータ生成部154で生成された多孔質構造体のSTLデータに基づいて、ポーラスモデルを切断して得られた断面図を生成すると共に、当該断面の断面積を算出する。ポーラスモデルの断面を解析する旨のユーザの指示には、ポーラスモデルに対する切断面の位置を指定することも含まれる。 Upon receiving the user's instruction to analyze the cross section of the porous model, the model cross-section analysis unit 155 obtains by cutting the porous model based on the STL data of the porous structure generated by the STL data generation unit 154. Along with generating the cross-sectional view, the cross-sectional area of the cross-sectional area is calculated. The user's instruction to analyze the cross section of the porous model also includes specifying the position of the cut surface with respect to the porous model.

出力部156は、ポーラス生成部153で生成された多孔質構造体のSTLデータを出力する。出力部156は、例えば、通信部130を制御して、ポーラス生成部153で生成した多孔質構造体のSTLデータを製造装置200に向けて送信する。
以上が、設計装置100のハードウェア構成である。
The output unit 156 outputs the STL data of the porous structure generated by the porous generation unit 153. For example, the output unit 156 controls the communication unit 130 to transmit the STL data of the porous structure generated by the porous generation unit 153 to the manufacturing apparatus 200.
The above is the hardware configuration of the design device 100.

(多孔質構造体の設計処理)
次に、図13のフローチャートを参照して、実施の形態に係る設計装置100の制御部150が実行する多孔質構造体の設計処理を説明する。多孔質構造体の設計処理は、バウンダリのSTLデータ及びランダム点群の位置データからポーラスモデルのSTLデータを生成する処理である。多孔質構造体の設計処理は、ユーザが設計装置100のアプリケーションを起動させた時点で開始される。
(Design processing of porous structure)
Next, with reference to the flowchart of FIG. 13, the design process of the porous structure executed by the control unit 150 of the design apparatus 100 according to the embodiment will be described. The design process of the porous structure is a process of generating the STL data of the porous model from the STL data of the boundary and the position data of the random point cloud. The design process of the porous structure is started when the user activates the application of the design device 100.

設計装置100は、バウンダリのSTLデータ並びに点の密度及び発生確率の指示をユーザに要求する。取得部151は、バウンダリのSTLデータ並びにメッシュのグリッド数及び点の発生確率を取得し、記憶部140に記憶させる(ステップS1)。 The design device 100 requests the user to instruct the boundary STL data as well as the density and probability of occurrence of points. The acquisition unit 151 acquires the boundary STL data, the number of grids of the mesh, and the probability of occurrence of points, and stores them in the storage unit 140 (step S1).

次に、ランダム点群生成部152は、バウンダリに対してランダム点群を生成するランダム点群生成処理を実行する(ステップS2)。以下、図14を参照して、ステップS2の処理でランダム点群生成部152が実行するランダム点群生成処理の流れを説明する。 Next, the random point cloud generation unit 152 executes a random point cloud generation process for generating a random point cloud for the boundary (step S2). Hereinafter, the flow of the random point cloud generation process executed by the random point cloud generation unit 152 in the process of step S2 will be described with reference to FIG.

(ランダム点群生成処理)
まず、ランダム点群生成部152は、ステップS1で入力したバウンダリを覆う大きさの立方体の領域を設定する(ステップS21)。例えば、図5に示されるように立方体の領域を設定する。
(Random point cloud generation process)
First, the random point cloud generation unit 152 sets a cubic region having a size that covers the boundary input in step S1 (step S21). For example, set the area of the cube as shown in FIG.

次に、ランダム点群生成部152は、ステップS21の処理で設定された領域をユーザが指定したグリッド数Nで3つの直交する方向に等分割し、領域にメッシュを生成する(ステップS22)。例えば、図5に示すように立方体の領域を、それぞれN個のxy平面、yz平面及びzx平面で分割すると、メッシュに(N+1)個の交点が出現する。 Next, the random point cloud generation unit 152 equally divides the area set in the process of step S21 into three orthogonal directions with the number of grids N specified by the user, and generates a mesh in the area (step S22). For example, as shown in FIG. 5, when the cube region is divided into N xy planes, yz planes, and zx planes, respectively, three (N + 1) intersections appear in the mesh.

次に、ランダム点群生成部152は、ユーザにより指定された点の発生確率に基づいて、メッシュの各交点に確率的に点を配置する(ステップS23)。例えば、メッシュの各交点を順番に走査し、点の発生確率に基づいてランダムに交点に点を配置すればよい。 Next, the random point cloud generation unit 152 probabilistically arranges points at each intersection of the mesh based on the occurrence probability of the points designated by the user (step S23). For example, each intersection of the mesh may be scanned in sequence, and points may be randomly arranged at the intersections based on the probability of occurrence of the points.

次に、ランダム点群生成部152は、ステップS33で配置されたランダム点群を表示部120に表示させ(ステップS24)、処理をリターンする。ランダム点群は、図3の左側に示すような表示画面で表示部120に表示させるとよい。
以上が、ランダム点群生成処理の流れである。
Next, the random point cloud generation unit 152 causes the display unit 120 to display the random point cloud arranged in step S33 (step S24), and returns the process. The random point cloud may be displayed on the display unit 120 on a display screen as shown on the left side of FIG.
The above is the flow of the random point cloud generation process.

図13の設計処理に戻り、ポーラス生成部153は、ステップS1の処理で取得したバウンダリのSTLデータと、ステップS2の処理で生成されたランダム点群の位置データとに基づいて、ポーラスを生成するポーラス生成処理を実行する(ステップS3)。以下、図15のフローチャートを参照して、ステップS3の処理でポーラス生成部153が実行するポーラス生成処理の流れを説明する。 Returning to the design process of FIG. 13, the porous generation unit 153 generates a porous based on the boundary STL data acquired in the process of step S1 and the position data of the random point cloud generated in the process of step S2. The porous generation process is executed (step S3). Hereinafter, the flow of the porous generation process executed by the porous generation unit 153 in the process of step S3 will be described with reference to the flowchart of FIG.

(ポーラス生成処理)
まず、ポーラス生成部153は、ステップS2で生成されたランダム点群の点の中から、ステップS1の処理で取得したバウンダリの表面より内側に位置する全ての点を判別する(ステップS31)。例えば、図7の点Pが、ファセットFが配置された平面Hの裏側にあり、かつ、図8(a)に示すようにz=0の平面上に投影した点Ppjが同じくz=0の平面上に投影したファセットFpiの三角形の内部にある2つのファセットFが存在する場合に、点Pはバウンダリの表面よりも内側にあると判別する。なお、平面Hの裏側は、平面Hに対してバウンダリが配置されている側である。
(Porus generation process)
First, the porous generation unit 153 determines all the points located inside the surface of the boundary acquired in the process of step S1 from the points of the random point cloud generated in step S2 (step S31). For example, the point P j in FIG. 7 is on the back side of the plane Hi on which the facet Fi is arranged, and the point P pj projected onto the plane of z = 0 as shown in FIG. 8 (a) is also the same. When there are two facets Fi inside the triangle of facets F pi projected on the plane of z = 0, it is determined that the point P j is inside the surface of the boundary. The back side of the plane Hi is the side on which the boundary is arranged with respect to the plane Hi .

次に、ポーラス生成部153は、ステップS31の処理で判別されたバウンダリ内側のランダム点群から任意の1つの点を選択する(ステップS32)。例えば、点はランダムに選択すればよい。 Next, the porous generation unit 153 selects an arbitrary one point from the random point cloud inside the boundary determined in the process of step S31 (step S32). For example, points may be randomly selected.

次に、ポーラス生成部153は、ステップS32の処理で選択された任意の1つの点を基準にしてテトラヘッドロンを生成する(ステップS33)。例えば、図9に示すようにj=sの点Pを選択すると、点Pと点Pに最も近い3つの点Ps-1、Ps-2、Ps-3とを頂点とするテトラヘッドロンPYを生成する。 Next, the porous generation unit 153 generates a tetraheadron with reference to any one point selected in the process of step S32 (step S33). For example, when the point P s with j = s is selected as shown in FIG. 9, the point P p and the three points P s-1 , P s-2 , and P s-3 closest to the point P p are used as vertices. Produces Tetra Headlon PY s .

次に、ポーラス生成部153は、ステップS33の処理で生成されたテトラヘッドロンが他のテトラヘッドロンと頂点を共有しているかどうかを判定する(ステップS34)。例えば、図9(b)に示すように、他のテトラヘッドロンと頂点を共有していると判定された場合(ステップS34;Yes)、他のテトラヘッドロンと頂点を共有しているテトラヘッドロンを削除し、処理をステップS35に移動する。他方、例えば、図9(a)に示すように、他のテトラヘッドロンと頂点を共有していないと判定された場合(ステップS34;No)、処理をステップS32に戻す。 Next, the porous generation unit 153 determines whether or not the tetraheadron generated in the process of step S33 shares the apex with another tetraheadron (step S34). For example, as shown in FIG. 9B, when it is determined that the vertex is shared with another tetraheadron (step S34; Yes), the tetrahead sharing the vertex with another tetraheadron. Ron is deleted and the process is moved to step S35. On the other hand, for example, as shown in FIG. 9A, when it is determined that the vertex is not shared with another tetraheadron (step S34; No), the process returns to step S32.

次に、ポーラス生成部153は、ステップS33の処理で生成されたテトラヘッドロンを構成する複数のファセット及びバウンダリを構成する複数のファセットから任意の1つのファセットを選択する(ステップS35)。例えば、ファセットはランダムに選択すればよい。 Next, the porous generation unit 153 selects any one facet from the plurality of facets constituting the tetraheadron generated in the process of step S33 and the plurality of facets constituting the boundary (step S35). For example, facets may be randomly selected.

次に、ポーラス生成部153は、ステップS35の処理で選択されたファセットに基づいてポリヘッドロンを生成する(ステップS36)。例えば、図11(a)、(b)に示すように、選択したテトラヘッドロンのファセットF(0)の裏側にある中でファセットF(0)に最も近い点Pvr(0)を判別し、点Pvr(0)とファセットF(0)の3つの頂点とを用いて新たなテトラヘッドロンを生成する。 Next, the porous generation unit 153 generates polyheadron based on the facet selected in the process of step S35 (step S36). For example, as shown in FIGS. 11A and 11B, the point P vr (0) closest to the facet Fr (0) on the back side of the selected tetraheadron facet Fr (0). Discrimination is made and a new tetraheadron is generated using the three vertices of the point P vr (0) and the facet Fr (0).

次に、ポーラス生成部153は、ステップS36の処理で生成されたポリヘッドロンを構成するファセットが他のファセットと頂点を共有しているかどうかを判定する(ステップS37)。例えば、図11(b)に示すように、ポリヘッドロンを構成するファセットが他のファセットと頂点を共有していると判定された場合(ステップS37;Yes)、ステップS38に処理を進める。他方、例えば、図11(a)に示すように、ポリヘッドロンを構成するファセットが他のファセットと頂点を共有していないと判定された場合(ステップS37;No)、ステップS39に処理を進める。 Next, the porous generation unit 153 determines whether or not the facets constituting the polyheadron generated in the process of step S36 share vertices with other facets (step S37). For example, as shown in FIG. 11B, when it is determined that the facets constituting the polyheadron share vertices with other facets (step S37; Yes), the process proceeds to step S38. On the other hand, for example, as shown in FIG. 11A, when it is determined that the facets constituting the polyheadron do not share vertices with other facets (step S37; No), the process proceeds to step S39. ..

ステップS37の処理でYesの場合、ポーラス生成部153は、ステップS36の処理で生成されたポリヘッドロンのファセットと、当該ファセットと頂点を共有するファセットと、を接続する(ステップS36)。例えば、図12に示すように、ファセットFr-j(0)の頂点とファセットFCvri(0)の頂点とを用いて新たなファセットFrij-1(0)、Frij-2(0)、Frij-3(0)、Frij-4(0)を生成し、ファセットFr-j(0)とファセットFCvri(0)とを接続する。 In the case of Yes in the process of step S37, the porous generation unit 153 connects the facet of the polyheadron generated in the process of step S36 and the facet sharing the vertex with the facet (step S36). For example, as shown in FIG. 12, new facets Frij -1 (0) and Frij-2 (0) are used by using the vertices of facet F r-j (0) and the vertices of facet FC vr (0). , Frij-3 (0), Frij-4 (0) are generated, and the facet Frj (0) and the facet FC vri (0) are connected.

次に、ポーラス生成部153は、ステップS35の処理でユーザにより指定された個数のファセットが選択されたかどうかを判定する(ステップS39)。ユーザにより設定された個数のファセットが選択されたと判定された場合(ステップS39;Yes)、ポリヘッドロンで構成されたポーラスモデルを表示部120に表示させ、処理をリターンする。他方、ユーザにより設定された個数のファセットが選択されていないと判定された場合(ステップS39;No)、処理をステップS35に戻す。ポーラスモデルは、図3の右側に示すような表示画面で表示部120に表示させるとよい。
以上が、ポーラス生成部153が実行するポーラス生成処理の流れである。
Next, the porous generation unit 153 determines whether or not the number of facets specified by the user has been selected in the process of step S35 (step S39). When it is determined that the number of facets set by the user has been selected (step S39; Yes), the porous model composed of the polyheadron is displayed on the display unit 120, and the process is returned. On the other hand, when it is determined that the number of facets set by the user has not been selected (step S39; No), the process returns to step S35. The porous model may be displayed on the display unit 120 on a display screen as shown on the right side of FIG.
The above is the flow of the porous generation process executed by the porous generation unit 153.

再び図13の設計処理に戻り、STLデータ生成部154は、ポーラス生成部153で生成されたポーラスモデルに基づいて、多孔質構造体のSTLデータを生成する(ステップS4)。 Returning to the design process of FIG. 13 again, the STL data generation unit 154 generates STL data of the porous structure based on the porous model generated by the porous generation unit 153 (step S4).

次に、ユーザが多孔質構造体のSTLデータを保存する旨を指示すると、ポーラス生成部153は、ステップS3で生成された多孔質構造体のSTLデータを記憶部140に記憶させる(ステップS5)。 Next, when the user instructs to save the STL data of the porous structure, the porous generation unit 153 stores the STL data of the porous structure generated in step S3 in the storage unit 140 (step S5). ..

次に、ユーザが製造装置200での多孔質構造体の実物の製造を指示すると、出力部156は、通信部130を制御して、多孔質構造体のSTLデータを製造装置200に送信させ(ステップS6)、処理を終了する。
以上が、多孔質構造体の設計処理の流れである。
Next, when the user instructs the manufacturing apparatus 200 to actually manufacture the porous structure, the output unit 156 controls the communication unit 130 to transmit the STL data of the porous structure to the manufacturing apparatus 200 (). Step S6), the process is terminated.
The above is the flow of the design process of the porous structure.

製造装置200は、設計装置100から多孔質構造体のSTLデータを取得すると、STLデータに基づいて工具経路を決定するスライシングを実行する。工具経路は、製造装置200の噴射ノズルが移動する経路である。そして、製造装置200が、スライシングの結果に基づいて付加製造を実行することで、多孔質構造体の立体モデルに基づく多孔質構造体の実物が得られる。 When the manufacturing apparatus 200 acquires the STL data of the porous structure from the design apparatus 100, the manufacturing apparatus 200 executes slicing to determine the tool path based on the STL data. The tool path is a path through which the injection nozzle of the manufacturing apparatus 200 moves. Then, the manufacturing apparatus 200 executes additional manufacturing based on the result of slicing, whereby the actual porous structure based on the three-dimensional model of the porous structure can be obtained.

(モデル断面解析処理)
以下、図16を参照して、設計装置100のモデル断面解析部155が実行するモデル断面解析処理を説明する。モデル断面解析処理は、ポーラスモデルの任意の位置における断面画面を作成し、断面積を算出する処理である。モデル断面解析処理は、ポーラスモデルの生成終了後にユーザの指示を受け付けた時点で開始される。
(Model cross-section analysis processing)
Hereinafter, the model cross-section analysis process executed by the model cross-section analysis unit 155 of the design apparatus 100 will be described with reference to FIG. The model cross-section analysis process is a process of creating a cross-section screen at an arbitrary position of the porous model and calculating the cross-section area. The model cross-section analysis process is started when a user's instruction is received after the generation of the porous model is completed.

ユーザが解析対象となるポーラスモデルのSTLデータを選択すると、モデル断面解析部155は、記憶部140から選択されたポーラスモデルを取得する(ステップS51)。 When the user selects the STL data of the porous model to be analyzed, the model cross-section analysis unit 155 acquires the porous model selected from the storage unit 140 (step S51).

ユーザが断面の位置、例えば、断面の高さを指定すると、モデル断面解析部155は、指定された断面における断面画面を生成する(ステップS52)。断面画面は、ポーラスモデルを切断した断面の形状を示す画面である。 When the user specifies the position of the cross section, for example, the height of the cross section, the model cross section analysis unit 155 generates a cross section screen in the specified cross section (step S52). The cross-section screen is a screen showing the shape of the cross-section obtained by cutting the porous model.

次に、モデル断面解析部155は、指定された断面の断面積を算出する(ステップS53)。 Next, the model cross-section analysis unit 155 calculates the cross-sectional area of the designated cross-section (step S53).

次に、モデル断面解析部155は、ステップS52で生成された断面画面と、ステップS53で生成された断面積とを表示部120に表示させ(ステップS54)、処理を終了する。断面の表示画面は、図4の右側に示すように別フォームで表示させてもよい。 Next, the model cross-section analysis unit 155 displays the cross-section screen generated in step S52 and the cross-section area generated in step S53 on the display unit 120 (step S54), and ends the process. The cross-section display screen may be displayed in a separate form as shown on the right side of FIG.

ユーザは、表示部120に表示された表示画面を参照し、断面画像や断面積を把握することで、多孔質構造体を付加製造機で製造する前に、多孔質構造体のポーラスモデルが適切に生成されたかどうかを評価できる。
以上が、モデル断面解析処理の流れである。
The user refers to the display screen displayed on the display unit 120, and by grasping the cross-sectional image and the cross-sectional area, the porous model of the porous structure is appropriate before the porous structure is manufactured by the addition manufacturing machine. You can evaluate whether it was generated in.
The above is the flow of the model cross-section analysis process.

以上説明したように、実施の形態に係る設計装置100は、バウンダリを覆う三次元領域内にランダムに分布する複数の点からなるランダム点群を生成するランダム点群生成部152と、ランダム点群からバウンダリの内側に配置された点を判別し、バウンダリを構成する複数のファセットの各頂点と、バウンダリの内側に配置されたランダム点群の各点とに基づいて、ポーラスを含む多孔質構造体の立体モデルを生成するポーラス生成部153と、を備える。ランダムに分布する点群に基づいてポーラスを設定するため、自然に存在する多孔質構造体に類似した多孔質構造体の立体モデルを設計できる。 As described above, the design device 100 according to the embodiment includes a random point cloud generation unit 152 that generates a random point cloud consisting of a plurality of points randomly distributed in a three-dimensional region covering the boundary, and a random point cloud. Determines the points placed inside the boundary from, and based on each vertex of the multiple facets that make up the boundary and each point of the random point cloud placed inside the boundary, a porous structure containing a porous structure. It is provided with a porous generation unit 153 that generates a three-dimensional model of the above. Since the porous structure is set based on a randomly distributed point cloud, it is possible to design a three-dimensional model of a porous structure similar to a naturally occurring porous structure.

また、ユーザがバウンダリの形状を設定するだけで多孔質構造体の立体モデルを生成できるため、多孔質構造体の立体モデルを簡単に生成できる。 Further, since the user can generate a three-dimensional model of the porous structure only by setting the shape of the boundary, the three-dimensional model of the porous structure can be easily generated.

本発明は上記実施の形態に限られず、以下に述べる変形も可能である。 The present invention is not limited to the above embodiment, and the modifications described below are also possible.

(変形例)
上記実施の形態では、設計装置100がユーザに指定されたグリッド数及び発生確率に基づいてランダム点群を生成していたが、本発明はこれに限られない。例えば、ユーザが事前に用意した任意のランダム点群を設計装置100に読み込んでもよく、事前に設計装置100で様々なサイズ及び密度のランダム点群を生成しておいてもよい。また、グリッド数及び発生確率は、事前に記憶部140に記憶された値を読み出してもよい。
(Modification example)
In the above embodiment, the design device 100 generates a random point cloud based on the number of grids specified by the user and the probability of occurrence, but the present invention is not limited to this. For example, an arbitrary random point cloud prepared in advance by the user may be read into the design device 100, or the random point cloud of various sizes and densities may be generated in advance by the design device 100. Further, as the number of grids and the probability of occurrence, the values stored in the storage unit 140 in advance may be read out.

上記実施の形態では、各種の立体モデルをSTLデータで表現していたが、本発明はこれに限られない。立体モデルは、STLデータなどのメッシュデータに限られず、例えば、STEP(Standard for the Exchange of Product Model Data)などのジオメトリデータで表現してもよい。また、多孔質構造体の立体モデルは、付加製造のために最終的にメッシュデータで表現する必要があるが、STLデータに限られず、例えば、VRML(Virtual Reality Modeling Language)データで表現してもよい。 In the above embodiment, various three-dimensional models are represented by STL data, but the present invention is not limited to this. The three-dimensional model is not limited to mesh data such as STL data, and may be represented by geometry data such as STEP (Standard for the Exchange of Product Model Data). Further, the three-dimensional model of the porous structure needs to be finally expressed by mesh data for additional manufacturing, but it is not limited to STL data, and may be expressed by VRML (Virtual Reality Modeling Language) data, for example. good.

上記実施の形態では、ランダム点群の各点に基づいてテトラヘッドロンを生成していたが、本発明はこれに限られない。例えば、複数のファセットから構成された6面体、8面体を生成してもよい。 In the above embodiment, tetraheadron is generated based on each point in the random point cloud, but the present invention is not limited to this. For example, a hexahedron or an octahedron composed of a plurality of facets may be generated.

上記実施の形態では、ランダム点群の各点から任意の1つの点を選択し、選択された1つの点から最も近い3つの点を判別し、これらの4つの点でテトラヘッドロンを生成していたが、本発明はこれに限られない。例えば、選択された点から最も近い点を除外し、除外された点を除く選択された点から2番目から4番目に近い3つの点を選択し、テトラヘッドロンを生成してもよい。 In the above embodiment, any one point is selected from each point in the random point cloud, the three closest points are determined from the selected one point, and tetraheadrons are generated at these four points. However, the present invention is not limited to this. For example, the nearest point may be excluded from the selected points, and the three points closest to the second to the fourth selected points excluding the excluded points may be selected to generate a tetraheadron.

上記実施の形態では、指定された断面における断面画面を生成し、その後、指定された断面の断面積を算出していたが、本発明はこれに限られない。例えば、指定された断面の断面積を算出し、その後、指定された断面における断面画面を生成してもよく、これらの処理を同時に実行してもよい。 In the above embodiment, a cross-sectional screen with a designated cross section is generated, and then the cross-sectional area of the designated cross section is calculated, but the present invention is not limited to this. For example, the cross-sectional area of the specified cross-section may be calculated, and then the cross-section screen in the specified cross-section may be generated, or these processes may be executed at the same time.

上記実施の形態では、熱溶解積層法を用いて溶解した樹脂を噴射することで多孔質構造体を製造していたが、本発明はこれに限られない。熱溶解積層法以外の他の製造法、例えば、光造形法を用いてもよい。 In the above embodiment, the porous structure is manufactured by injecting the melted resin by using the fused deposition modeling method, but the present invention is not limited to this. A production method other than the Fused Deposition Modeling method, for example, a stereolithography method may be used.

上記実施の形態では、溶解した樹脂を噴射することで多孔質構造体を製造していたが、本発明はこれに限られない。例えば、噴射する材料は、金属、セラミック、コンクリートであってもよい。 In the above embodiment, the porous structure is manufactured by injecting the melted resin, but the present invention is not limited to this. For example, the material to be jetted may be metal, ceramic, or concrete.

上記実施の形態では、ポーラスモデルを対象としてモデル断面解析処理を実行していたが、本発明はこれに限られない。STLデータで表現可能なモデルであれば、いかなる形状のモデルを対象としてもよい。 In the above embodiment, the model cross-section analysis process is executed for the porous model, but the present invention is not limited to this. A model of any shape may be targeted as long as it is a model that can be expressed by STL data.

上記実施の形態は例示であり、本発明はこれらに限定されるものではなく、特許請求の範囲に記載した発明の趣旨を逸脱しない範囲でさまざまな実施の形態が可能である。各実施の形態や変形例で記載した構成要素は自由に組み合わせることが可能である。また、特許請求の範囲に記載した発明と均等な発明も本発明に含まれる。 The above embodiments are examples, and the present invention is not limited thereto, and various embodiments are possible without departing from the spirit of the invention described in the claims. The components described in each embodiment and modification can be freely combined. The present invention also includes inventions equivalent to those described in the claims.

以下、実施例を挙げて本発明を具体的に説明する。ただし、本発明はこれらの実施例に限定されるものではない。 Hereinafter, the present invention will be specifically described with reference to examples. However, the present invention is not limited to these examples.

(実施例1)
実施例1では、設計装置100を用いてポーラスモデルを生成し、各高さにおけるポーラスモデルの横断面を観察した。図17は、実施例1におけるポーラスモデルの作成手順を示す。多孔質構造体の外形を示すバウンダリモデルは、断面正方形の貫通孔を有する立方体である。バウンダリモデルの寸法は、縦30mm、横30mm、高さ15mmであり、その貫通孔の寸法は、縦10mm、横10mmである。xyz各軸方向のグリッド数75、点の発生確率3%の条件でランダム点群を生成したところ、点の総数は13169個であり、そのうちバウンダリモデル内側の点の総数は4937個であった。ファセットの数は、ポーラス生成処理によって32個から42752個に増加した。ポーラスモデルの生成時間は、1.5分であった。
(Example 1)
In Example 1, a porous model was generated using the design device 100, and the cross section of the porous model at each height was observed. FIG. 17 shows a procedure for creating a porous model in the first embodiment. The boundary model showing the outer shape of the porous structure is a cube having through holes with a square cross section. The dimensions of the boundary model are 30 mm in length, 30 mm in width, and 15 mm in height, and the dimensions of the through hole are 10 mm in length and 10 mm in width. When a random point cloud was generated under the condition that the number of grids in each axis of xyz was 75 and the probability of occurrence of points was 3%, the total number of points was 13169, of which the total number of points inside the boundary model was 4937. The number of facets increased from 32 to 42752 by the porous generation process. The generation time of the porous model was 1.5 minutes.

図18(a)~(p)は、実施例1におけるポーラスモデルの横断面を示す断面図である。図18(a)は、高さ0.5mmにおける横断面の様子を示し、図18(b)、(c)、(d)、…は、それぞれ順に高さ1mm、2mm、3mm、…における横断面を示す。各横断面を観察すると、どの横断面にも不規則な細孔が多数形成され、表面から内側に延びている細孔も存在していた。ポーラスモデルの横断面の断面積を高さ0.5mm毎に算出すると、その断面積は、620mm~690mmの範囲内であり、平均値は646.41mmであった。また、空洞化率の平均値は、19.2%であった。 18 (a) to 18 (p) are cross-sectional views showing a cross section of the porous model in the first embodiment. FIG. 18 (a) shows the state of the cross section at a height of 0.5 mm, and FIGS. 18 (b), (c), (d), ... Are cross sections at heights of 1 mm, 2 mm, 3 mm, ... Show the surface. When observing each cross section, a large number of irregular pores were formed in each cross section, and some pores extended inward from the surface. When the cross-sectional area of the cross section of the porous model was calculated for each height of 0.5 mm, the cross-sectional area was in the range of 620 mm 2 to 690 mm 2 , and the average value was 646.41 mm 2 . The average value of the hollowing rate was 19.2%.

次に、付加製造機を用いてポーラスモデルに基づく実物を作製した。使用した付加製造機は、RAISE Pro2であり、ノズル径は0.4mm、印刷速度は50mm/sであった。ポーラスを構成する材料は、ポリ乳酸(Polylactic Acid:PLA)樹脂であり、ノズル噴出時の材料の温度は205℃であった。作製時間は、486分であった。 Next, an actual product based on a porous model was produced using an addition manufacturing machine. The additional manufacturing machine used was RAISE Pro2, the nozzle diameter was 0.4 mm, and the printing speed was 50 mm / s. The material constituting the porous was a polylactic acid (PLA) resin, and the temperature of the material at the time of nozzle ejection was 205 ° C. The production time was 486 minutes.

図19は、実施例1におけるポーラスの実物の横断面とポーラスモデルの横断面とを比較した図である。切断面の高さは、4mm、7mm、11mmとした。ポーラスの実物の横断面は拡大電子顕微鏡を用いて撮影した。ポーラスモデル及びその実物の横断面を観察すると、両者の形状が概ね同一であることが確認できた。 FIG. 19 is a diagram comparing the cross section of the actual porous body in Example 1 with the cross section of the porous model. The height of the cut surface was 4 mm, 7 mm, and 11 mm. The actual cross section of the porous was photographed using a magnifying electron microscope. By observing the cross section of the porous model and its actual product, it was confirmed that the shapes of both were almost the same.

(実施例2)
実施例2では、ランダム点群の密度を増加させたポーラスモデルを作成した。その他の条件は実施例1の場合と同一である。グリッド数150、発生確率3%の条件でランダム点群を生成したところ、点の総数は、103288個であり、実施例1の場合の8倍となった。そのうちバウンダリモデル内側の点の総数は40909個であった。ファセットの数は、ポーラス生成処理によって32個から303268個に増加した。ポーラスモデルの作成時間は、56.9分であった。
(Example 2)
In Example 2, a porous model in which the density of the random point cloud was increased was created. Other conditions are the same as in the case of the first embodiment. When a random point cloud was generated under the condition that the number of grids was 150 and the probability of occurrence was 3%, the total number of points was 103,288, which was eight times that of Example 1. The total number of points inside the boundary model was 40909. The number of facets increased from 32 to 303268 by the porous generation process. The creation time of the porous model was 56.9 minutes.

図20(a)は、実施例2におけるポーラスモデルの横断面を示す断面図である。図20(a)では、それぞれ高さ3mm、6mm、9mm、12mmにおける各横断面を図示している。図18に示す実施例1のポーラスモデルの横断面と比較すると、各横断面の空洞がより細かくなっている。それぞれの断面積は、648.4mm、648.3mm、648.4mm、652.6mmであり、空洞化率は19.0%、19.0%、19.0%、18.4%であった。また、空洞化率の平均値は、19.5%であった。 FIG. 20A is a cross-sectional view showing a cross section of the porous model according to the second embodiment. FIG. 20A illustrates each cross section at heights of 3 mm, 6 mm, 9 mm, and 12 mm, respectively. Compared with the cross section of the porous model of Example 1 shown in FIG. 18, the cavities in each cross section are finer. The cross-sections are 648.4 mm 2, 648.3 mm 2, 648.4 mm 2, 652.6 mm 2 , and the cavitation rates are 19.0%, 19.0%, 19.0%, and 18.4. %Met. The average value of the hollowing rate was 19.5%.

図20(b)は、実施例1、2の各条件におけるポーラスモデルの高さと横断面の断面積との関係を示すグラフである。このグラフからは、多孔質構造体の空洞が細かくなっても、断面積がほとんど変化しないことが理解できる。 FIG. 20B is a graph showing the relationship between the height of the porous model and the cross-sectional area of the cross section under each of the conditions of Examples 1 and 2. From this graph, it can be understood that the cross-sectional area hardly changes even if the cavity of the porous structure becomes finer.

(実施例3)
実施例3では、実施例1、2と異なる形状のバウンダリモデルを用いてポーラスモデルを作成した。図21(a)は、実施例3におけるポーラスモデルの作成手順を示す。バウンダリモデルは、直径40mm、高さ40mmの円柱である。この円柱には、直径30mm、深さ25mmの凹みを設けた。グリッド数150、発生確率3%の条件でランダム点群を生成したところ、点の総数は103288個であり、そのうちバウンダリモデル内側の点の総数は50738個であった。ファセットの数は、ポーラス生成処理によって430個から503434個に増加した。ポーラスモデルの作成時間は、130.9分であった。
(Example 3)
In Example 3, a porous model was created using a boundary model having a shape different from that of Examples 1 and 2. FIG. 21A shows a procedure for creating a porous model in Example 3. The boundary model is a cylinder with a diameter of 40 mm and a height of 40 mm. The cylinder was provided with a recess having a diameter of 30 mm and a depth of 25 mm. When a random point cloud was generated under the condition that the number of grids was 150 and the probability of occurrence was 3%, the total number of points was 103288, of which the total number of points inside the boundary model was 50738. The number of facets was increased from 430 to 503434 by the porous generation process. The creation time of the porous model was 130.9 minutes.

図21(b)は、実施例3におけるポーラスモデルの横断面を示す断面図である。図21(b)では、それぞれ高さ8mm、16mm、24mm、32mmにおける各横断面を図示している。ポーラスモデルの横断面の断面積は、それぞれ990.2mm、938.0mm、549.9mm、447.3mmであり、空洞化率は、20.0%、18.9%、16.8%、16.7%であった。また、空洞化率の平均値は、18.5%であった。 FIG. 21B is a cross-sectional view showing a cross section of the porous model according to the third embodiment. FIG. 21B illustrates the cross sections at heights of 8 mm, 16 mm, 24 mm, and 32 mm, respectively. The cross-sectional areas of the cross section of the porous model are 990.2 mm 2 , 938.0 mm 2 , 549.9 mm 2 , and 447.3 mm 2 , respectively, and the cavitation rates are 20.0%, 18.9%, and 16. It was 8% and 16.7%. The average value of the hollowing rate was 18.5%.

次に、付加製造機を用いてポーラスモデルに基づくポーラスの実物を作製した。作製の条件は実施例1の場合と同一である。作製時間は2138分であった。実物の凹みに水を入れると、側面や底面から徐々に水がしみ出ることを確認できた。以上から、ポーラスの実物の内部に液体が透過可能なチャンネルが形成されていることが確認できた。 Next, an actual porous body based on the porous model was produced using an addition manufacturing machine. The production conditions are the same as in the case of Example 1. The production time was 2138 minutes. When water was poured into the dent of the real thing, it was confirmed that the water gradually exuded from the side and bottom. From the above, it was confirmed that a channel through which the liquid can permeate is formed inside the actual porous material.

(実施例4)
実施例4では、実施例1~3の場合と異なる形状のバウンダリモデルを用いてポーラスモデルを作成した。図22(a)は、実施例4におけるポーラスモデルの作成手順を示す。バウンダリモデルは、外直径50mm、内直径35mm、高さ10mmのリングである。グリッド数75、発生確率3%の条件でランダム点群を生成したところ、点の総数は13169個であり、そのうちバウンダリモデル内側の点の総数は736個であった。ファセットの数は、ポーラス生成処理によって192個から12458に増加した。ポーラスモデルの作成時間は、0.4分であった。
(Example 4)
In Example 4, a porous model was created using a boundary model having a shape different from that of Examples 1 to 3. FIG. 22A shows a procedure for creating a porous model in Example 4. The boundary model is a ring having an outer diameter of 50 mm, an inner diameter of 35 mm, and a height of 10 mm. When a random point cloud was generated under the condition that the number of grids was 75 and the probability of occurrence was 3%, the total number of points was 13169, of which the total number of points inside the boundary model was 736. The number of facets increased from 192 to 12458 by the porous generation process. The creation time of the porous model was 0.4 minutes.

図22(b)は、実施例4におけるポーラスモデルの横断面を示す断面図である。図22(b)では、高さ2mm、4mm、6mm、8mmにおける各横断面を図示している。ポーラスモデルの各横断面の断面積は、それぞれ812.3mm、801.5mm、781.7mm、842.4mmであり、空洞化率は、それぞれ19.5%、20.0%、22.5%、16.5%であった。また、空洞化率の平均値は、18.7%であった。 FIG. 22B is a cross-sectional view showing a cross section of the porous model in Example 4. FIG. 22B illustrates each cross section at heights of 2 mm, 4 mm, 6 mm, and 8 mm. The cross-sectional areas of each cross section of the porous model are 812.3 mm 2 , 801.5 mm 2 , 781.7 mm 2 , and 842.4 mm 2 , respectively, and the cavitation rates are 19.5% and 20.0%, respectively. It was 22.5% and 16.5%. The average value of the hollowing rate was 18.7%.

(実施例5)
実施例5では、底面からの高さが高くなるに従って点の密度が減少する密度勾配を有する点群を用いてポーラスモデルを作成した。その他の条件は、実施例1の場合と同一である。図23(a)は、実施例5におけるポーラスモデルの作成手順を示し、図23(b)は、実施例5におけるポーラスモデルの縦断面を示す断面図である。この断面図からは、高さが高くなるに従って空洞の大きさが徐々に大きくなっている様子を確認できた。
(Example 5)
In Example 5, a porous model was created using a point cloud having a density gradient in which the density of points decreases as the height from the bottom surface increases. Other conditions are the same as in the case of Example 1. FIG. 23 (a) shows a procedure for creating a porous model in Example 5, and FIG. 23 (b) is a cross-sectional view showing a vertical cross section of the porous model in Example 5. From this cross-sectional view, it was confirmed that the size of the cavity gradually increased as the height increased.

1 製造システム
100 設計装置
110 操作部
120 表示部
130 通信部
140 記憶部
150 制御部
151 取得部
152 ランダム点群生成部
153 ポーラス生成部
154 STLデータ生成部
155 モデル断面解析部
156 出力部
200 製造装置
1 Manufacturing system 100 Design device 110 Operation unit 120 Display unit 130 Communication unit 140 Storage unit 150 Control unit 151 Acquisition unit 152 Random point cloud generation unit 153 Porous point cloud generation unit 154 STL data generation unit 155 Model cross-sectional analysis unit 156 Output unit 200 Manufacturing equipment

Claims (8)

複数のファセットで表現されたバウンダリの立体モデルを取得する取得部と、
前記バウンダリを覆う三次元領域内にランダムに分布する複数の点からなるランダム点群を生成するランダム点群生成部と、
前記ランダム点群から前記バウンダリの内側に配置された点を判別し、前記バウンダリを構成する複数のファセットの各頂点と、前記バウンダリの内側に配置された前記ランダム点群の各点とに基づいて、ポーラスを含む多孔質構造体の立体モデルを生成するポーラス生成部と、
を備える設計装置。
The acquisition unit that acquires the 3D model of the boundary expressed by multiple facets,
A random point cloud generator that generates a random point cloud consisting of a plurality of points randomly distributed in a three-dimensional region that covers the boundary.
From the random point cloud, the points arranged inside the boundary are determined, and based on each vertex of the plurality of facets constituting the boundary and each point of the random point cloud arranged inside the boundary. , A porous generator that creates a three-dimensional model of a porous structure containing vertices,
Design equipment equipped with.
前記ポーラス生成部は、前記バウンダリの内側に配置された前記ランダム点群の各点に基づいて複数のテトラヘッドロンを生成し、前記バウンダリを構成するファセットと、前記テトラヘッドロンを構成するファセットとに基づいて、前記ポーラスに対応する複数のポリヘッドロンを生成する、
請求項1に記載の設計装置。
The porous generation unit generates a plurality of tetraheadrons based on each point of the random point cloud arranged inside the boundary, and has a facet constituting the boundary and a facet constituting the tetraheadron. To generate a plurality of polyheadrons corresponding to the porous, based on
The design apparatus according to claim 1.
前記ポーラス生成部は、前記バウンダリの内側に配置された前記ランダム点群の各点から1つの点を選択し、選択された1つの点に最も近い3つの点を前記バウンダリの内側に配置された前記ランダム点群の各点から判別し、選択された1つの点と判別された3つの点とを頂点とするテトラヘッドロンを生成する、
請求項2に記載の設計装置。
The porous generation unit selected one point from each point of the random point cloud arranged inside the boundary, and arranged the three points closest to the selected one point inside the boundary. It discriminates from each point of the random point cloud, and generates a tetraheadron having one selected point and three discriminated points as vertices.
The design apparatus according to claim 2.
前記ポーラス生成部は、前記バウンダリの内側に配置された前記ランダム点群のうち前記テトラヘッドロンの外側にある点から前記テトラヘッドロンを構成する一つのファセットに最も近い点を判別し、前記テトラヘッドロンを構成する一つのファセットに最も近いと判別された点と前記テトラヘッドロンを構成する一つのファセットの3つの頂点とからなる他のテトラヘッドロンを生成し、前記テトラヘッドロンを構成する一つのファセットを削除することで、前記テトラヘッドロンと前記他のテトラヘッドロンとが組み合わされたポリヘッドロンを生成する、
請求項2又は3に記載の設計装置。
The porous generation unit determines a point closest to one facet constituting the tetraheadron from a point outside the tetraheadron among the random points group arranged inside the boundary, and the tetra. Another tetraheadron consisting of a point determined to be the closest to one facet constituting the headlon and three vertices of one facet constituting the tetraheadron is generated to constitute the tetraheadron. By removing one facet, a polyheadron that is a combination of the tetraheadron and the other tetraheadron is produced.
The design apparatus according to claim 2 or 3.
前記ポーラス生成部は、前記テトラヘッドロンを構成する一つのファセットに最も近いと判別された点が、前記テトラヘッドロンから離れて配置されたテトラヘッドロンの頂点である場合に、前記他のテトラヘッドロンを構成するファセットの一つと、前記テトラヘッドロンから離れて配置されたテトラヘッドロンを構成するファセットの一つとを複数のファセットで接続することで、前記テトラヘッドロン、前記他のテトラヘッドロン及び前記テトラヘッドロンから離れて配置されたテトラヘッドロンを一体化したポリヘッドロンを生成する、
請求項4に記載の設計装置。
When the point determined to be the closest to one facet constituting the tetraheadron is the apex of the tetraheadron arranged away from the tetraheadron, the porous generation unit is the other tetra. By connecting one of the facets constituting the headlon and one of the facets constituting the tetraheadron arranged apart from the tetraheadron with a plurality of facets, the tetraheadron and the other tetraheads are connected. Produces a polyheadron that integrates Ron and a tetraheadron that is located away from the tetraheadron.
The design apparatus according to claim 4.
前記ランダム点群生成部は、前記バウンダリを覆う三次元領域を設定し、前記三次元領域を互いに直交する平面で分割してメッシュを生成し、点の発生確率に基づいて前記メッシュの各交点に確率的に点を配置する、
請求項1から5のいずれか1項に記載の設計装置。
The random point group generation unit sets a three-dimensional region covering the boundary, divides the three-dimensional region into planes orthogonal to each other to generate a mesh, and at each intersection of the mesh based on the probability of occurrence of points. Arrange points probabilistically,
The design apparatus according to any one of claims 1 to 5.
取得部が、複数のファセットで表現されたバウンダリの立体モデルを取得するステップと、
ランダム点群生成部が、前記バウンダリを覆う三次元領域内にランダムに分布する複数の点からなるランダム点群を生成するステップと、
ポーラス生成部が、前記ランダム点群から前記バウンダリの内側に配置された点を判別し、前記バウンダリを構成する複数のファセットの各頂点と、前記バウンダリの内側に配置された前記ランダム点群の各点とに基づいて、ポーラスを含む多孔質構造体の立体モデルを生成するステップと、
を含む設計方法。
The step that the acquisition part acquires the three-dimensional model of the boundary expressed by multiple facets,
A step in which the random point cloud generation unit generates a random point cloud consisting of a plurality of points randomly distributed in a three-dimensional region covering the boundary.
The porous generation unit determines from the random point cloud the points arranged inside the boundary, each of the vertices of the plurality of facets constituting the boundary, and each of the random point cloud arranged inside the boundary. Steps to generate a three-dimensional model of a porous structure containing a porous structure based on points,
Design method including.
コンピュータを、
複数のファセットで表現されたバウンダリの立体モデルを取得する取得手段、
前記バウンダリを覆う三次元領域内にランダムに分布する複数の点からなるランダム点群を生成するランダム点群生成手段、
前記ランダム点群から前記バウンダリの内側に配置された点を判別し、前記バウンダリを構成する複数のファセットの各頂点と、前記バウンダリの内側に配置された前記ランダム点群の各点とに基づいて、ポーラスを含む多孔質構造体の立体モデルを生成するポーラス生成手段、
として機能させるためのプログラム。
Computer,
Acquisition method to acquire a 3D model of a boundary expressed by multiple facets,
A random point cloud generation means for generating a random point cloud consisting of a plurality of points randomly distributed in a three-dimensional region covering the boundary.
From the random point cloud, the points arranged inside the boundary are determined, and based on each vertex of the plurality of facets constituting the boundary and each point of the random point cloud arranged inside the boundary. , Porous generation means, which generates a three-dimensional model of a porous structure containing vertices,
A program to function as.
JP2020136793A 2020-08-13 2020-08-13 Porous structure design equipment, design methods and programs Active JP7094037B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020136793A JP7094037B2 (en) 2020-08-13 2020-08-13 Porous structure design equipment, design methods and programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020136793A JP7094037B2 (en) 2020-08-13 2020-08-13 Porous structure design equipment, design methods and programs

Publications (2)

Publication Number Publication Date
JP2022032714A JP2022032714A (en) 2022-02-25
JP7094037B2 true JP7094037B2 (en) 2022-07-01

Family

ID=80350270

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020136793A Active JP7094037B2 (en) 2020-08-13 2020-08-13 Porous structure design equipment, design methods and programs

Country Status (1)

Country Link
JP (1) JP7094037B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023190762A1 (en) * 2022-03-31 2023-10-05 国立大学法人北海道大学 Design device, design method, program, porous structure, and manufacturing method therefor

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108121881A (en) 2018-01-06 2018-06-05 石家庄铁道大学 A kind of regular definition method to random engraved structure product data form
CN108197399A (en) 2018-01-11 2018-06-22 武汉大学 Relative density and the controllable nanoporous medium modeling method and system of rib diameter size
CN108526824A (en) 2018-04-18 2018-09-14 中国工程物理研究院机械制造工艺研究所 A kind of micropore combined machining method
CN109388905A (en) 2018-10-29 2019-02-26 南京工程学院 Porous structure modeling method based on Grasshopper Yu UG secondary development
CN109388886A (en) 2018-10-09 2019-02-26 山东理工大学 A kind of calculation method of porous material acoustic absorptivity
CN110543742A (en) 2019-09-25 2019-12-06 江苏双恩智能科技有限公司 artificial joint surface type coating structure and 3D printing data model generation method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108121881A (en) 2018-01-06 2018-06-05 石家庄铁道大学 A kind of regular definition method to random engraved structure product data form
CN108197399A (en) 2018-01-11 2018-06-22 武汉大学 Relative density and the controllable nanoporous medium modeling method and system of rib diameter size
CN108526824A (en) 2018-04-18 2018-09-14 中国工程物理研究院机械制造工艺研究所 A kind of micropore combined machining method
CN109388886A (en) 2018-10-09 2019-02-26 山东理工大学 A kind of calculation method of porous material acoustic absorptivity
CN109388905A (en) 2018-10-29 2019-02-26 南京工程学院 Porous structure modeling method based on Grasshopper Yu UG secondary development
CN110543742A (en) 2019-09-25 2019-12-06 江苏双恩智能科技有限公司 artificial joint surface type coating structure and 3D printing data model generation method

Also Published As

Publication number Publication date
JP2022032714A (en) 2022-02-25

Similar Documents

Publication Publication Date Title
US10611091B2 (en) Additive manufacturing of a three-dimensional object
US11684478B2 (en) High fatigue strength porous structure
Zhang et al. Two-dimensional placement optimization for multi-parts production in additive manufacturing
Jaiswal et al. Build orientation optimization for additive manufacturing of functionally graded material objects
Taufik et al. Role of build orientation in layered manufacturing: a review
US10802467B2 (en) Methods of defining internal structures for additive manufacturing
JP2017205975A (en) Three-dimensional data generation apparatus, three-dimensional forming apparatus, method of forming object, and program
US11073824B1 (en) System and method of simulating and optimizing surface quality based on location and orientation of additively manufactured build parts
JP6711394B2 (en) Information processing device, program, information processing method, modeling system
CN106777807B (en) Powder metallurgy random particle size distribution 3D finite element modeling and simulation method
Choi et al. Visualisation of rapid prototyping
JP7094037B2 (en) Porous structure design equipment, design methods and programs
US20240085881A1 (en) Computer aided generative design with layer boundary determination to facilitate 2.5-axis subtractive manufacturing processes
WO2006104479A2 (en) Three-dimensional data extraction using ray casting
JP3571564B2 (en) Computer-readable recording medium recording display method and display program, and display device
Kumar et al. Preprocessing and postprocessing in additive manufacturing
Qiu et al. Intelligent toolpath for extrusion‐based LM process
EP3122540B1 (en) Method and equipment for generating a numerical representation of a three-dimensional object, said numerical representation being suited to be used for making said three-dimensional object through stereolithography
US11498124B1 (en) Method for sintering porous structures from powder using additive manufacturing
JP2017517418A (en) 3D printing using high-speed STL file conversion
Hattab et al. Interactive fabrication of csg models with assisted carving
EP4339898A2 (en) System and method for generating an infill geometry of a body
WO2017055853A1 (en) A device and method for generating scan data for an additive manufacturing process
Ozbolat et al. A continuous multi-material toolpath planning for tissue scaffolds with hollowed features
CN116136917A (en) Computer aided design with geometry filtering to facilitate manufacturing

Legal Events

Date Code Title Description
A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20200821

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210929

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20210929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220104

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220607

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220614

R150 Certificate of patent or registration of utility model

Ref document number: 7094037

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350