A Method For Generation of Random Lattice Structure For Additive Manufacturing
A Method For Generation of Random Lattice Structure For Additive Manufacturing
A Method For Generation of Random Lattice Structure For Additive Manufacturing
Manufacturing
and the length of bars in these structures are also different The part out of the design space will be removed and the
(see Fig. 1c.). rest of the random lattice structure will be assembled in the
All lattice structures can be fabricated easily thanks to final designed product.
the appearance of additive manufacturing technologies. So,
1) Voronoi diagrams
it is becoming a useful application as its special
characteristics as high strength, lightweight and stiffness. A Voronoi diagram is to partition a plane into different
Thus, lattice structures were applicated in many different regions based on the distance between center points to
fields in the industry such as automotive engineering [3], points in a specific subset of the plane. The definition of
thermal industry [1, 2] and biomedical engineering [4]. It Voronoi diagrams is presented in [11]. Let S ⊂ \3 be a set
is very difficult to design and create a 3D geometric model of n ≥ 3 points in the space. For points p = (p1, p2, p3) and
of lattice structures in the current commercial CAD q = (q1, q2, q3), the Euclidean distance d(p,q) between the
software. However, the methods proposed by [5-7] aim to point p and q is calculated by equation (1).
design non-conformal and conformal lattice structure.
These methods allow helping to design and create a 3D d ( p, q ) = ( p1 − q1 ) 2 + ( p2 − q2 ) 2 − ( p3 − q3 ) 2 (1)
geometric model and integrate it into the design zone of the We denote by B(p,q) a bisector between two point sites p
product. There is some commercial CAD software that and q. The bisector B(p,q) is the set of points equidistant to
supports to design only the non-conformal lattice structure. p and q under the distance d(p,q). It is defined by the
There are some studies concerning the random lattice following expression.
structures and their application [8-10]. Meanwhile, the
creation of the random lattice structures in the CAD B( p, q ) = {r ∈ \ 3 | d ( p, r ) = d (q, r )} (2)
environment is less concerned. Therefore, the paper It separates the half-region containing point p from the
proposes a method based on the Voronoi diagrams. It half-region D(q, p) containing point q.
allows product designers to be able to generate a geometric
model of the random lattice structures automatically and D( p, q) = {r ∈ \3 | d ( p, r ) < d (q, r )} (3)
integrate it into the model of the product in the CAD Let VR( p, S ) be the Voronoi region of point p with respect
environment. to S. It is defined by the following expression.
II. METHODOLOGY VR ( p, S ) =
q∈S , q ≠ p
D ( p, q ) (4)
The random lattice structure is a type of lattice Finally, the Voronoi diagram of S is defined by the
structure in which bars are randomly connected with each following expression.
other in the design space. Especially, the value of the radius V (S ) = * VR( p, S ) ∩ VR( p, S ) (5)
and length of each bar can be also changed randomly. The p , q∈S , q ≠ p
random lattice structure is really difficult to be built Where Voronoi region V(p,S) is the intersection of n-1
compared to the conformal and non-conformal lattice open half-regions containing the point p.
structures. In order to generate a 3D geometric model in A set of randomized points is used as a set of seed
the CAD environment, the paper presents an approach points to generate the Voronoi diagrams by using the
based on the Voronoi diagrams. The overview of the algorithm proposed by [12, 13]. The data of the Voronoi
proposed approach is given in Fig. 2. diagrams including the edge of the Voronoi cell and
coordinates of points are used in order to build the frame
model of structure.
2) A frame model of random lattice structures
In order to form the frame model of the structure in a
design space, two different approaches are proposed in the
paper. The first approach as shown in Fig. 3 includes the
following steps:
• Step 1: Creating a box space
Fig. 2. The proposed method to create the random lattice structure.
From a set of randomized points, the Voronoi The geometry of the creation zone of the random
polyhedrons are created by using the randomized points as lattice structure is often very complicated, so it is
the centers of Voronoi cells. The data of the Voronoi necessary to create a box space surrounding the
polyhedrons generated by the Voronoi tessellation design space. The box space aims to generate a set
algorithm include coordinates of points and edges of of randomized points easier.
Voronoi cells. The frame model of this structure including • Step 2: Generating a set of randomized points
points and lines is built by using the data of Voronoi cells.
The 3D geometric model of this structure is established by A set of randomized points is generated uniformly
using the frame model and the value of the radius of bars. inside the box space. The density distribution of
bars in the random lattice structure depends on the • Step 2: Generating a set of randomized points
number of randomized points.
A set of randomized points is generated randomly
inside each box space. Obviously, the density
distribution of bars in the random lattice structure
depends on the set of the randomized points. The
number of randomized points NP is calculated by
equation (6).
V
N P = DS (6)
S
Solid bar
Round
Square
Rectangular
Hollow bar
Model of
random lattice
(e)
Design Non-design
Fig. 8. The process to create the random lattice structure.
Fig. 6. A model of helical gear and design space.
A function Populate3D of Grasshopper is used to
In order to generate automatically a geometric model of generate a set of randomized points in a box space as given
the random lattice structure in a CAD environment, a in Fig. 8a. The box space is defined so that it can
Python script function is developed in Grasshopper based completely contain the design space. The function
on the proposed method. A pseudocode algorithm is used Voronoi3D in the library ghpythonlib.components is also
to develop the program in Grasshopper by using Python used in this case to create a volumetric Voronoi diagram
programming language as shown in Fig. 7. based on the randomized points (see Fig. 8b). The diagrams
built in a box space are larger than the design space, so the