The present disclosure relates to additive manufacturing systems and methods, and more particularly to systems and methods for generating an optimal toolpath for a tool used by an additive manufacturing system.
This section provides background information related to the present disclosure which is not necessarily prior art.
Composite materials are integral in the design of countless types of structures due to their excellent mechanical properties. Indeed, the mechanical properties of composite materials are designed to be superior to those of their individual constituent materials. But realizing this benefit requires the optimal placement of the constituents of a composite material within the composite material so as to tailor the material properties for optimal structural performance. And now, Additive Manufacturing (AM) technology can do just this by building up structures, layer-upon-layer, by depositing various materials including Fiber Reinforced Composites (FRC). Therefore, it is expected that the popularity of composites will continue to increase over the coming years. This is especially so since AM processes enable optimum placement of the constituents, as well as rapid, inexpensive, small volume processing.
Structural optimization of laminated composite structures has been studied extensively. Problems have been solved to find optimal shape, thickness, number of plies, and/or stacking sequence of the laminates so as to maximize stiffness, failure load, etc. These challenging problems are often nonlinear, non-convex, multi-modal, multi-dimensional and can be expressed with discrete and/or continuous design variables. To solve these problems, researchers have used gradient-based, direct search, heuristic, and hybrid optimization techniques. In general, gradient-based methods are the most efficient although they only find local minimums. Unfortunately many optimized composite structures are not practical because current structural optimization software does not accommodate manufacturing constraints imposed by an AM process. Therefore, substantial modifications are imposed on the optimized designs to make them manufacturable and, as a result, non-optimal. To make matters even more challenging, Topology Optimized (TO) designs are geometrically complex and difficult to manufacture with traditional manufacturing processes. Fortunately, AM has the capacity to accommodate such complexities, however, there are still restrictions. To these ends, research in TO for isotropic materials has incorporated AM constraints that quantify minimum feature size, maximum feature size, self-support requirements, and build direction. Quantifying support structure constraints is an especially active research topic. This is because support structures serve as building platforms and heat sinks that reduce residual stress and deformation (e.g., distortion/curling). However, supports also increase manufacturing effort and cost. Moreover, some challenges like the anisotropy induced by the layer-by-layer AM fabrication process, and the intrinsic anisotropy of the material, warrant additional research.
Additional research must further integrate TO designs with their manufacturing processes. For instance, TO designs require conversion to transform them to Stereo Lithography (STL) Computed Aided Design (CAD) models. Then, another software slices these CAD models into layers and generates the AM printer commands into a suitable code, for example, G-code. G-code is presently the prominent programming language used in Computer Numerical Control (CNC) machines.
It is also important to comment on some manufacturing considerations of composite structures fabricated via AM, autoclave molding, filament winding, Automated Tape Laying (ATL), Advance Fiber Placement (AFP), and resin transfer molding processes. AM, ATL and AFP technologies allow for curvilinear fiber paths, offering structures with greater potential for mechanical performance improvements verses straight fiber laminates. As expected, however, curvilinear paths require more manufacturing restrictions than straight fiber laminates. These restrictions include constraints on path continuity, gaps, overlaps, maximum curvature, minimum cut length, fiber angle deviation, jagged boundaries and fiber bridging.
The structural optimization begins by discretizing the structure by finite elements. In the most naive approaches, the fiber orientation is optimized in each element. However, rapid changes of the optimized fiber orientations produce discontinuous fiber paths which cannot be manufactured. To combat this, a post-processing step is required to produce continuous and manufacturable fiber paths that best fit the optimized fiber orientations; this is not straight forward. To improve fiber path continuity, Abdalla et al., Structural Design Using Optimality Based Cellular Automata. In Proceedings of 43rd AIAA/ASME/ASCE/AHS/ASC Structures, Structural Dynamics, and Materials Conference, 2002; Abdalla et al., Design of Variable Stiffness Composite Panels for Maximum Fundamental Frequency Using Lamination Parameters. Composite Structures, 81, No. 2, 2007, pp. 283-291; Setoodeh et al., In Proceedings of the 47th AIAA/ASME/ASCE/AHS/ASC Structures, Structural Dynamics and Materials (SDM) Conference, Newport, R.I., 2006, use classical lamination theory and define the elasticity coefficients in terms of four nodal lamination parameters. The stiffness of the laminate is continuous, however a post-processing technique is required to obtain the fiber orientations. Setoodeh et al., Generating Curvilinear Fiber Paths From Lamination Parameters Distribution, In Proceedings of the 47th AIAA/ASME/ASCE/AHS/ASC Structures, Structural Dynamics and Materials (SDM) Conference, New Port, R.I., 2006 and Blom et al., Optimization of Course Locations in Fiber-Placed Panels for General Fiber Angle Distributions, Composites Science and Technology, 70(4): 564-570, 2010) retrieve the fiber paths from the stiffness distribution in a post-processing step using a curve fitting technique that imposes a curvature constraint. Later, Setoodeh et al., Design of Variable-Stiffness Composite Layers Using Cellular Automata, Computer Methods in Applied Mechanics and Engineering, 195(9):836-851, 2006, use nodal rather than elemental fiber orientation parameters to obtain a continuous fiber orientation, however the spatial derivatives and thus fiber curvature is discontinuous across the element edges. They also propose a heuristic pattern matching technique to improve manufacturing issues. Again in a post-processing technique, Blom et al., use a streamline method to generate continuous fiber paths from the fiber orientation distribution. Kiyono et al., A Novel Fiber Optimization Method Based on Normal Distribution Function With Continuously Varying Fiber Path, Composite Structures, 160:503-515, 2017, filter the orientation distribution to improve smoothness, however the fiber paths are still discontinuous due to the element-based discretization.
To ensure continuous fiber paths, researchers have replaced the finite element based fiber orientation description with functional representations, for example, NURBS, Lagrangian polynomials, Bezier curves, constant angle and constant curvature paths. To overcome overlaps issues, Tatting et al., Design and Manufacture of Elastically Tailored Tow Placed Plates, Technical Report CR-211919, NASA, August 2002, use a post-processing tow-dropping method, however this creates small wedge-like gap regions. Waldhart et al., Analysis of Tow-Placed, Variable-Stiffness Laminates, Master's Thesis, Virginia Polytechnic Institute and State University, 1996 and Waldhart et al., Analysis of Tow Placed, Parallel Fiber, Variable Stiffness Laminates, In 37th Structure, Structural Dynamics and Materials Conference, p. 1569, 1196, define the fiber path by a curve that is parameterized by a single variable allowing them to satisfy a maximum curvature constraint. Other researchers define a point-wise curvature constraint via a single global maximum curvature violation constraint. However, it is well known that the non-differentiable max function produces numerical issues which inhibit the effectiveness of gradient-based optimization algorithms.
Brampton et al., New Optimization Method for Steered Fiber Composites Using the Level Set Method, Structural and Multidisciplinary Optimization, 52(3): 493-505, 2015, proposed a level-set method to describe continuously varying fiber paths that can be manufactured with AFP technology. This approach defines a primary fiber path as the zero level-set. Adjacent fiber paths are obtained from the primary path using the “fast marching” method. This extrapolation obtains evenly spaced fiber paths, but discontinuities can appear, reducing manufacturability. The zero level-set, i.e., design, is updated with a Hamilton-Jacobi formulation using approximate sensitivities that are obtained using an energy based method. The inefficiency of the Hamilton-Jacobi formulation, and the approximated sensitivities, result in an optimization algorithm that convergences slowly and is highly dependent on the initial design, however, there is much potential offered from the level-set method.
Roberge and Norato, Computational Design of Curvilinear Bone Scaffolds Fabricated Via Direct Ink Writing, Computer-Aided Design, 2017, use element path spacing and orientation parameters to optimize curvilinear scaffolds that are fabricated via Direct Ink Writing (DIW). To obtain manufacturable toolpaths, they transform the path spacing and orientation distribution into a scalar field whose level-set contours represent the toolpaths. This post-processing transformation uses linear least squares and a smoothing filter. Liu and Yu, Concurrent Deposition Path Planning and Structural Topology Optimization For Additive Manufacturing, Rapid Prototyping Journal, 23(5):930-942, 2017, integrate TO with the level-set description for path planning in the AM process. The zero level-set is interpreted as the domain boundary, and level-set contours in the domain are interpreted as the deposition paths. A heuristic multi-step algorithm is required to overcome issues related to approximated sensitivities. Liu and To, Deposition Path Planning-Integrated Structural Topology Optimization For 3d Additive Manufacturing Subject to Self-Support Constraint,” Computer-Aided Design, 91:27-45, 2017, extended this work to three-dimensional structures subject to self-support constraints wherein a multi-level-set interpolation ensures that the upper layers are supported by the lower layers. Again, due to sensitivity approximations, the optimization algorithm exhibits poor convergence.
All these post-process, yield fabricated parts suffer in that they do not match the original TO designs, and therefore optimality is compromised.
This section provides a general summary of the disclosure, and is not a comprehensive disclosure of its full scope or all of its features.
In one aspect the present disclosure relates to a system for optimizing an additive manufacturing (AM) process. The system may comprise a printing component for using a material to form a component in a layer-by-layer process, and a motion control subsystem for controlling movement of at least one of the printing nozzle or a substrate on which the component is being formed. An electronic controller may be included for controlling the movement of one of the printing component or a substrate on which the component is being formed, in a manner to optimize a toolpath for the printing component as each layer of the component is formed. An optimization subsystem may be included to enable manufacturability constraints of a printing process to be defined, to define optimized toolpaths for each layer of the component using contours of a level set function, and to use the optimized toolpaths to generate code for controlling movement of the printing component relative to the substrate. The electronic controller may further be configured to use the code to control the motion control subsystem to move one of the printing component or the substrate, in accordance with the optimized toolpaths, to create the component in a layer-by-layer operation.
In another aspect the present disclosure relates to a system for optimizing an additive manufacturing (AM) process. The system may comprise a printing nozzle for printing a flowable material to form a component in a layer-by-layer printing process, and a motion control subsystem for controlling movement of at least one of the printing nozzle or a substrate on which the component is being formed. An electronic controller may also be included for controlling the movement of one of the printing nozzle or a substrate on which the component is being formed, in a manner to optimize a toolpath for the printing nozzle as the flowable material is deposited on the substrate or on a previously formed layer. An optimization subsystem to may be included to enable manufacturability constraints of a printing process to be defined. The optimization subsystem may also be used to define optimized toolpaths for each layer of the component using contours of a level set function, and to define the level set function with a set of control points and polynomial functions that are defined within a fixed grid. Still further, the optimization subsystem may be used to generate the optimized toolpaths for each layer in part by carrying out an initialize angle optimization operation which includes defining optimization parameters including at least one of tolerances, a maximum number of iterations and a minimum spacing between adjacent ones of the optimized toolpaths, and wherein the initialize angle optimization operation further comprises defining an initial angle orientation for each one of a plurality of predetermined number of layers of the component. The optimization subsystem may further be configured to use angle and spacing of the level-set function to define DIW constraints including at least one of: no overlapping toolpath with minimum separation; no turns exceeding a minimum radius of curvature; and a constraint to minimize sagging of the flowable material after initially being deposited by the printing nozzle. The electronic controller may be further configured to use the code to control the motion control subsystem to move one of the printing nozzle or the substrate, in accordance with the optimized toolpaths, to create the component in a layer-by-layer operation.
In still another aspect the present disclosure relates to a method for carrying out and optimizing an additive manufacturing (AM) process. The method may include using an electronic controller to control movement of one of a printing component or a substrate, in a manner to optimize a toolpath for the printing component as the printing component forms a layer of a component. The method may further include using an optimization subsystem to:
enable manufacturability constraints of a printing process to be defined;
define optimized toolpaths for each layer of the component using contours of a level set function, wherein the level set function is defined using a fixed, predetermined grid;
use the optimized toolpaths to generate code for controlling movement of the printing nozzle relative to the substrate; and
to cause the electronic controller to use the code to control movement of one of the printing component or the substrate, in accordance with the optimized toolpaths, to create the component in a layer-by-layer operation.
Further areas of applicability will become apparent from the description provided herein. The description and specific examples in this summary are intended for purposes of illustration only and are not intended to limit the scope of the present disclosure.
The drawings described herein are for illustrative purposes only of selected embodiments and not all possible implementations, and are not intended to limit the scope of the present disclosure. In the drawings:
and
Corresponding reference numerals indicate corresponding parts throughout the several views of the drawings.
Example embodiments will now be described more fully with reference to the accompanying drawings.
The present disclosure describes a method for optimizing additively manufactured structures (e.g., parts) fabricated by using an AM process that accommodates manufacturability constraints of the process of choice. In the case of the examples outlined herein, that process is Direct Ink Writing (DIW), although as noted above, the present disclosure is not limited to use of only a DIW process. The embodiments and methods described herein maintain computational efficiency and virtually guarantee optimality of the finished 3D part.
The toolpaths of each layer of the part may be defined by the contours of a level-set function. With this parametrization, the toolpaths are continuous and defined with a small number of design variables in a fixed grid independent of the finite element mesh used for structural analysis. The toolpath spacing, angle and curvature are defined with the gradient of the level-set function. In this way, it is easy to impose DIW manufacturing constraints such as no overlap, no sag of just-printed material, minimum radius of curvature of each toolpath, and toolpath continuity. For each layer, these local constraints are enforced globally, using a ramp function, resulting in a small number of constraints.
The DIW toolpaths affect the orientation of the reinforce fibers in the flowable material passing through the printing nozzle, and hence the structural response of the composite structure. The material properties, i.e., the volume fraction and elastic stiffness, are modeled using the level-set function parametrization. This allows computation of a structure's mass and compliance as well as its design sensitivities via the finite element method. This is combined with nonlinear programming to efficiently update the design parameters and find locally optimal solutions.
The optimized toolpaths start and finish at the boundary of each layer. To minimize manufacturing cost, the system formulates and solves a Travelling Salesman Problem (“TSP”) to obtain the shortest continuous toolpath for each layer that avoids overlap and crossing holes. This continuous toolpath is subsequently used to generate the G-code for the CNC fabrication.
The efficacy of the approach described herein has been validated through specific examples by obtaining minimum compliance composite structures, which can be fabricated, and by results which have been validated by fabrication and testing.
Referring to
Referring further to
The system 10 may also include a motion control subsystem 34 for controlling movement of the nozzle 12 or the laser 14, assuming the substrate 18 is held stationary during the formation of each layer of the part, or alternatively a motion stage 34′ which may be controlled for movement in an X-Y coordinate system while the nozzle 12 (or light source such as laser 14) is held stationary. Optionally, both the nozzle 12 (or the light source, for example laser 14) and the motion stage 34′ may be controlled for movement during the formation of each layer of the part. It is anticipated, however, that in many implementations, it may be preferred to use the motion stage 34′ to move the substrate 18 as needed while the nozzle 12 (or laser 14) is held stationary.
The electronic controller 20 may also control opening and closing of a flow control valve 36 to admit the flowable material into the nozzle 12 during a DIW process. Optionally, the electronic controller 20 could control a separate valve (not shown) to control depositing of the powdered material from the powdered material reservoir 16′ onto the substrate 18 as each new layer of the part is formed using a SLS system.
The system 10 and method described herein is able to optimize the design of fiber reinforced composite (FRC) structures that are amenable to an AM process. The present disclosure, in one specific implementation described herein, uses DIW wherein FRC is extruded through the moving nozzle 12 of the AM system 10 and quickly cured or semi-cured on the substrate 18, thereby forming the structure. During the extrusion, the fibers of the FRC orient themselves with the flow direction. And since the stiffness of the FRC is significantly higher in the fiber direction, this provides the ability to tailor the structural properties by tailoring the toolpath (i.e., nozzle) trajectory. However, not all toolpaths are realizable. For example, an important limitation is that the toolpath cannot change direction abruptly, and the toolpaths on each layer cannot overlap.
To accommodate the DIW fabrication restrictions, the present disclosure defines the toolpaths of each printed layer of the part by the contours of a level-set function. The level-set surface is defined from a B-surface and the heights of the B-surface control points serve as the design variables in the optimization. This parametrization allows the DIW constraints and the structural mass and stiffness to be explicitly defined. This technique is applied to minimize the compliance of FRC three-dimensional structures fabricated via DIW. A sensitivity analysis is performed with respect to the level-set parametrization, making it amenable to gradient-based optimization algorithms. As such, the present disclosure does not use level-set method techniques like Hamilton-Jacobi update formulation and fast marching methods to update the design. Rather, the present disclosure uses a nonlinear programming optimizer so as to attain fast convergence and verify satisfaction of the optimality conditions.
With the methods of the present disclosure, the optimal toolpaths for an optimized design start and stop at the domain boundary. To enable the DIW process, these start and stop points are linked together to form a continuous path. And to minimize manufacturing time, it is important that the shortest path is obtained. To these ends, the present disclosure formulates and solves a Traveling Salesman Problem (TSP). Having the layer toolpaths, the present disclosure is able to easily generate the G-code with their coordinates. Optimized designs can then be readily validated via fabrication and testing.
The system 10 of
The toolpaths are defined for the layer Ωi at its mid-plane Pi={x∈Ωi|x·ê3=(i−1)h+h/2}, as defined by shaded region 50 in
C
i
k
={x|ϕ
i(x)=kb}, k∈. (Equation 1)
The contours that define the toolpaths are multiples of an arbitrary parameter “b”. In
The level-set function ϕi: 2→ for the layer Ωi is defined over the plane Pi by:
ϕi(x)={circumflex over (N)}(x)Tdi (Equation 2)
where the vector of basis functions is:
{circumflex over (N)}(x)=[N1(x),{circumflex over (N)}2(x), . . . ,{circumflex over (N)}n(x)]T∈n, (Equation 3)
and the vector of control point height parameters, which serve as the design variables in the optimization, is:
d
i=[di1,di2, . . . ,din]T∈n. (Equation 4)
As discussed in the following section Section 2 on “DIW Constraints”, to accommodate the DIW constraints, we require C2-continuous toolpaths, i.e., level-set functions. Cubic B-splines are C2-continuous curves defined with piecewise cubic polynomials. Thus, we represent the level-set functions using B-surfaces constructed with bi-cubic B-splines. For convenience, we define the B-surface over a fixed rectangular grid of control points. In this way, it is independent of the finite element mesh that will eventually be used for structural analysis. Additionally, large changes in the curves and topological changes do not require the addition or subtraction of control points as opposed to explicit curve definitions. As such, the present methodology drastically reduces the number of design variables versus finite element based parameterization schemes, and ensures that the toolpaths on each layer are smooth and well (i.e., adequately) spaced.
As will be appreciated, the toolpath orientation is a function of the level-set function. To see this, we define derivatives of the basis functions as {circumflex over (B)}1=(∂{circumflex over (N)}/∂x1)T and {circumflex over (B)}2=(∂{circumflex over (N)}/∂x2)T, and calculate the gradient of the level-set function by:
Next, we let rik(t) be any parameterization of the toolpath Cik. By the chain rule dϕi(rik (t))/dt=∇Δi(rik (t))·drik (t)/dt=0, which implies ∇ϕi(rik) is perpendicular to the path tangent vector tik(t)=drik(t)/dt (see
The toolpath orientation angle α is given by the inclination of “t” with respect to the êi axis as seen in
atan 2(a1, a2) is the arctangent function of the two arguments a1 and a2 that returns the appropriate angle α such that sin α=α1√{square root over (α12+α22)} and cos α=α2√{square root over (α12+α22)}.
As discussed in Section 2 below, overlap and sagging constraints are functions of the distance between the toolpaths. To evaluate the distance between adjacent toolpaths Cik and Cik−1 at the point x in each layer Ωi (as indicated in
The solution to the above satisfies the Karush-Kuhn-Tucker (KKT) optimal conditions,
2(xk*−x)+λ*∇ϕi(xk*)=0 (Equation 9)
ϕi(xk*)−kb=0 (Equation 10)
where λ is the Lagrange multiplier. However, we instead define xk*=x+Δxk and assume Δxk and λ*∇2ϕi(x)ΔxkT are small. Whence the first order Taylor series expansions give:
ϕi(xk*)≈ϕi(x)+∇ϕi(x)·Δxk, (Equation 11)
∇Δi(xk*)≈∇ϕi(x)+∇2ϕi(x)·ΔxkT (Equation 12)
which when combined with Equations (9) and (10), gives
The closest point on the toolpath Cik−1 to x is similarly approximated as xk−1*=x+Δxk−1 where
Finally, the distance between two toolpaths Cik and Cik−1 at x, is approximated as:
Thus, the spacing between toolpaths depends on the gradient of the level-set function. We use the spacing between toolpaths and the toolpath orientation angle in the following sections to define the DIW constraints and the material model.
Section 2. DIW Constraints
In this section the DIW constraints are described. As mentioned in the previous section, spacing between toolpaths is related to the gradient of the level-set function. Even spacing between toolpaths indicates the level-set function has a uniform gradient. Closely spaced toolpaths are indicative of large |∇ϕi| values, whereas widely spaced toolpaths are indicative of small values.
|∇ϕi(x)|≤1. (Equation 16)
This constraint holds for every point x in each layer Ωi, which means that it is a local constraint.
To consolidate local constraints into a single global constraint, Amstutz et al. Topological Derivative-Based Topology Optimization of Structures Subject to Drucker-Prager Stress Constraints, Computer Methods in Applied Mechanics and Engineering, 233:123-136, 2012, use a penalty function. Similar to Amstutz et al., we express one overlap global constraint for each layer ni as:
G
i
α=·P
where R is a ramp function such that
where m>0. It is easily seen that if for some region in the domain |∇Δi|>1, then the constraint is violated, i.e., Giα>0. We thus have one overlap constraint per layer.
To use numerical methods to solve the optimization problem, we redefine R as the continuous differentiable piecewise function:
where a smaller δ corresponds to a sharper transition at θ=0, (see
To enforce evenly spaced toolpaths, researchers have extrapolated the zero level-set using the “Fast Marching Method” (see, e.g., Sethian. Level Set Methods and Fast Marching Methods: Evolving Interfaces in Computational Geometry, Fluid Mechanic, Computer Vision, and Materials Science, Vol. 3, Cambridge University Press, 1999. As mentioned previously, this extrapolation does not always guarantee continuous paths. If required, a “no gap” constraint can be added to the problem formulation if we enforce the separation of the toolpaths to be constant (i.e., l=b or |∇ϕ|=1). However, the toolpaths do not need to be evenly spaced with the methodology described herein when implemented in a DIW process. That said, it has been noted that somewhat evenly spaced toolpaths naturally appear in the designs which have been created and tested because the optimizer subsystem 24 wants a stiffer, fully dense, structure.
In DIW typical processes, the extruded material deposited by the nozzle 12 may sag if it does not have proper support. This is shown by sagging material portion 54 in
where li is the approximated distance between toolpaths Cik and Cik−1, and αi+1j is the orientation angle of toolpath Ci+1j. Sag occurs if lAC is larger than the maximum allowed distance lmax, and thus at each x∈Ωi we require lAC≤lmax. These local no sag constraints are agglomerated for each layer Ωi as:
where R is the smooth ramp function of Equation (19), and we use Equations (15) and (20) and (7) to express αik−1 and αi+1j in terms of ϕi and ϕi+1.
The Gib no sag constraints, forces toolpaths to be close between each other, and to form a cross-pattern with respect of the toolpaths of their adjacent layers. And because 0≤sin2 (αi+1j−αik−1)≤1, the slope of the level-set function is bounded from below as |ϕ(x)|≥b/lmax. An important consequence of this constraint is that toolpaths cannot form internal loops, which guarantees continuous toolpaths across the domain. Using a similar argument with Equations (15), (16) and (20), we determine that the angle difference between the toolpaths of the adjacent layers is bounded by:
i.e., toolpaths on an upper layer should not be parallel to the toolpaths of its supporting layer. This constraint further enforces a well supported cross-pattern of toolpaths between adjacent layers.
Manufacturable toolpaths have a minimum allowable radius of curvature rmin (see
where the second derivatives are computed by differentiating Equation (5). As seen above, the curvature is continuous since we require ∈C2, and it is bounded due to the constraints on |∇ϕi|.
The DIW printing capabilities of the system 10 require |κik−1|<rmin. Thus, in each layer Ωi, the global curvature constraint:
G
i
c
=∫f
p
R(rmin2κi2−1)da≤0, (Equation 24)
is enforced. This constraint also proves useful to control numerical instabilities due to rapid changes in orientation angle of the fibers which often manifests itself in finite element base parameterizations. See, Setoodeh et al. Design of Variable-Stiffness Composite Layers Using Cellular Automata, Computer Methods in Applied Mechanics and Engineering, 195(9):836-851, 2006.
The structure is modeled as a variable stiffness composite laminate in which the material volume fraction and stiffness are homogenized using our level-set function. To approximate the volume fraction of material at x∈Ωi, we introduce a rectangular parallelepiped as a Representative Volume Element (RVE) of size li×li×h oriented with the angle α with respect to the ê1 axis, cf.
We compute the total volume fraction of the design as:
where VΩ is the total volume of the domain Ω.
We homogenize the stiffness in the layer Ωi at each point x using the volume fraction, v, and the fiber orientation α, i.e.,
i*(x)=vi(x)(αi(x)), (Equation 27)
where (α)=(Rz(α)Rz(α))0(Rz(α)Rz(α))T, (Equation 28)
0 is the stiffness of the full volume fraction material with fibers parallel to ê1 and Rz is an α rotation tensor about the ê3 axis. The material properties for each layer Ωi vary in the plane Pi; they are uniform in the ê3 direction.
The sensitivity of the stiffness is given by:
where the components of ∂/∂αi are obtained by differentiating Equation 28. The derivative of the orientation angle with respect to the design variables follows from Equations (5) and (7), i.e.,
The derivative of the volume fraction follows from Equations (5) and (25), i.e.,
The governing equations for the displacement u of our linear elastic body 60, as shown in
div σ+fb=0 in Ω, (Equation 32)
where fb is the body force, σ is the stress tensor, ϵ is the strain tensor, n is the normal vector to the domain boundary ∂Ω, the displacement is fixed on the boundary Γu, the traction ft is prescribed on the boundary Γt, and Γ0=∂Ω\(Γu∪Γt).
In this study, the cost function is the usual compliance, i.e.,
c=∫
Ω
u·f
b
dv+∫
Γ
u·f
t
da, (Equation 33)
Using the adjoint method, the sensitivities are described in Bensøe et al. Topology Optimization by Distribution of Isotropic Material, Springer, 2004 and Tortorelli et al. Design Sensitivity Analysis: Overview and Review, Inverse Problems in Engineering, 1(1): 71-105, 1994, and may be represented as:
Note that we compute this integral for each layer Ωi to evaluate the sensitivities with respect to its layer Ωi design variable vector di.
As alluded to above, the goal is to design a fiber reinforced composite (FRC) structure that minimizes compliance and satisfies manufacturing constraints. To these ends, we solve the optimization problem:
where vmax is the maximum allowable volume fraction.
The present disclosure may use nonlinear programming software, in one example the IPOPT (Interior Point Optimizer) software library, to solve this optimization problem. Exact sensitivities may be provided to the IPOPT software library to solve the problem accurately and efficiently. In the previous section, we described how to evaluate sensitivities of the compliance cost function. The sensitivity computation of the constraints is straightforward as they are explicit functions of d.
It is well known that nonlinear programming optimizers usually converge to local minimizers, making the initial design very important. We start from a feasible design in which each layer is made of parallel-straight toolpaths with volume fraction v=vmax. To do this, we define the layer vectors ai=vmax[−sin(αi),cos(α1),0]T and ϕi=ai·x so that ∇ϕi=ai is uniform and |∇ϕ|i=|ai|=vmax. We then solve the optimization problem:
where
the is the no sag constraint, (see Equation 21). The solution of Equation (36) i.e., optimal angles αi, is used to define the initial design variables di such that (di)j=ϕi(xj)=ai·xj where xj are the control point coordinates for layer Ωi.
Since |∇ϕ|>0, we are assured the level-set contours on each layer Ωi are continuous and contain no loops (cf. Section 2). However, these toolpaths start and finish at a boundary, and they still need to be linked to form a continuous toolpath to generate the layer Ωi G-code. Ideally, the shortest toolpath possible is most desirable as this helps to minimize production time when printing each layer of the structure. Traditional zigzag (see
Before we formulate our TSP, recall that we define the level-set functions over a rectangular domain that encompasses the layers Ωi, which may include holes (see
The goal is to connect all of the nt layer Ωi toolpaths Ci1, Ci2, . . . , Cint, into one contiguous path which is as short as possible. To do this, we formulate a TSP problem in which the first and last point of each toolpath Cik are the cities (k) and (nt+k) respectively. We formulate a symmetric TSP where the cost of travel between the cities (k) and (j) is their distance ck,j=Cj,k=d(xk, xj). Additionally, we define a halfway city (2nt+k) located in between the first (k) and last (nt+k) points of each toolpath Cik. The exact location of the halfway city is arbitrary, however to enforce that the toolpath follows Cik we define the distances such that c2nt+k,j=c2nt+k,nt+j=C2n t+k, 2nt=Dj, where:
These distance definitions ensure that we respectively visit the cities along each toolpath Cik in the order (k), (2nt+k), (nt+k) or vice versa (nt+k), (2nt+k), (k).
To avoid connecting hole boundary cities to external boundary cities, we impose cj,k=∞ if xj∈∂PiHr, and xk∈∂PiE. Similarly to avoid connecting cities on different hole boundaries, we define cj,k=∞ if xj∈∂PiHr, xk∈∂PiHs and r≠s.
For distances between cities, we use the Euclidean distance d(xk,xj)=√{square root over ((xk−xj)·(xk−x1))}. However, the distance between non adjacent cities on the external boundary, is defined as:
d(xk,xj)=∫x
where ds=∂r/∂t is the differential arc of the segment r(t) that connects the cities. To generate a continuous toolpath that does not overlap, the trajectory r(t) follows the boundary ∂PiE at the offset distance de (cf.
Since we do not need to start and finish in the same city, we may add a dummy city (3nt+1) with the following distance definition:
In this way, two external cities on ∂PiE are connected to the dummy city; these external boundary cities are the first and last cities visited (cf.
Our TSP has 3nt+1 cities and the symmetric cost matrix cj,k is computed using the above definitions. The TSP solution is the shortest linking sequence between the toolpaths for every layer Ωi. To solve the TSPs, we may use, for example, the efficient TSP solver Concorde (see Applegate et al. The Traveling Salesman Problem: A Computational Study, Princeton University Press, 2011]. Once the shortest toolpath coordinates are obtained, the G-code generating module 32 may be used to readily write the G-code that the AM system 10 will follow to print the structure.
We apply our method to generate five designs modeling the composite as a transverse isotropic material with longitudinal Young's modulus Ei=7.48 GPa, the transverse Young's modulus Et=4.47 GPa, the longitudinal-transverse shear modulus Git=1.7 GPa, the transverse-transverse shear modulus Gtt=1.63 GPa, the longitudinal-transverse Poisson's ratio vit=0.33, the transverse-transverse Poisson's ratio vtt=0.37, and the longitudinal-transverse Poisson's ratio vti=vitEt/Ei. The thickness of the layers in this example is h=0.3 mm and the thickness of the toolpaths is b=0.6 mm. We model the structures using (8-noded) tri-linear prismatic elements in, for example, NIKE3D finite element software. For numerical integration, the NIKE3D software uses 2×2×2 Gauss point rule for each element. The level-set function for each layer is modeled using bi-cubic B-splines with patch size 10 mm×10 mm (cf. Appendix A) unless otherwise stated. For the numerical integration of the constraints, we use 16×16 Gauss quadrature points in each B-surface patch. The parameters of the smooth ramp function R are δ=0.01 and m=10. The maximum sag distance is lmax=1.6 mm and the minimum radius of curvature is rmin=2 mm which is larger than lmax. We compute the compliance c0 for a design with horizontal minimally spaced parallel toolpaths, i.e., ϕi(x)=x·ê2 for i=1, 2, . . . , ni. We use this reference compliance c0 to normalize the objective function. IPOPT converges successfully if the norm of the KKT optimality conditions, is smaller than the tolerance εtol=10−4 (cf. Equation (5) and (6) in [54]), unless otherwise stated.
7.1 Short Cantilever Beam
Our first example is a 2 layer short cantilever beam 70 with dimensions shown in
To find the optimal solution for this short cantilever beam 70, we start with the initial angle orientation of ±45° for each layer and solve Equation 36 to find the optimal layer angles ±51.07° with a compliance c/c0=0.852. We use these optimal angles to define the initial level-set functions using the method described in Section 5 (see
We form a continuous toolpath for every layer by solving the TSP described in Section 6 (see
The optimizer subsystem 24 solves the same problem for different volume fraction constraints. Table 1 of
This increasing number of DIW constraints, and the increasing number of design iterations (It.), occurs for large maximum volume fraction designs for which the “no overlap” constraint is active and for low maximum volume fraction designs for which the “no sag” constraint is active. The designs have similar patterns but different spacings between toolpaths 80. However, in all cases toolpaths are closer together at the load region 82. At the bottom and top of the left edge in each of
In this example, we solve a 4 layer cantilever beam 90 with dimensions shown in
We find the optimal designs for vmax=0.7 and 5 different stacking sequences: ABCD, ABCA, ABCB, ABAC, and ABAB, where each capital letter represent an independent layer of the stack. There are 2×4 B-surface patches with 35 design parameters per layer, so the 5 stacking sequences respectively have 140, 105, 105, and 70 design parameters. In Table 2 (
For the sequence ABCA the optimizer subsystem 24 is not able to find a feasible solution due to the conflict between the “no sag” constraint and the stack pattern. Toolpaths 80 of adjacent layers make a crossed pattern with an angle difference greater than a minimum given by Equation (22). Consequently, the first and fourth layers tend to make a crossed pattern as well, which is not possible since they are both layer A.
The optimal designs for the different stack sequences have similar patterns as we see in
The next example is a Messerschmitt-Bölkow-Blohm (MBB) 100 beam made of 50 layers with dimensions shown in
The next example problem solved is the two-hole plate 110 problem illustrated in
In this example, we solve a five-hole plate 150 problem with forces and dimensions shown in
If we modify the TSP distance definitions, results will vary accordingly. For instance, to avoid crossing the holes, we penalize the distance of non adjacent cities that are on the hole boundaries. We impose cj,k=∞ if xj∈∂piHr, xk∈∂PiHr and cities (j) and (k) are non adjacent. In
Referring to
Referring to
Referring briefly to
Referring to
Referring to
The present disclosure thus demonstrates a system and method for optimizing FRC structures fabricated by AM that accommodates manufacturability constraints of the DIW process, maintains computational efficiency, and guarantees optimality. The toolpaths of each layer are defined by the contours of a level-set function. With this parameterization, the toolpaths are continuous and defined with a small number of design variables in a fixed, predetermined grid independent of the finite element mesh used for structural analysis. The toolpath spacing, angle and curvature are defined with the gradient of the level-set function. In this way, it is easy to impose DIW manufacturing constraints such as no overlap, no sag, minimum radius of curvature, and toolpaths continuity. For each layer, these local constraints are enforced globally, using a ramp function, resulting in a small number of constraints.
The DIW toolpaths affect the orientation of the reinforce fibers and hence the structural response of the composite structure. We model the material properties, i.e., the volume fraction and elastic stiffness using the level-set function parametrization. This allow the system 10 to compute a structure's mass and compliance as well as their design sensitivities via the finite element method. This is combined with nonlinear programming to efficiently update the design parameters and find locally optimal solutions.
The optimized toolpaths start and finish at the boundary of each layer. To minimize manufacturing cost, the present disclosure formulates and solves a TSP to obtain the shortest continuous toolpath for each layer which avoids overlap and crossing holes. This continuous toolpath is subsequently used to generate the G-code for the CNC fabrication of the 3D structure or part.
The approaches described herein have been validated through examples by obtaining minimum compliance composite structures which can be readily fabricated. In one example, results were validated by fabricating and testing.
The foregoing description of the embodiments has been provided for purposes of illustration and description. It is not intended to be exhaustive or to limit the disclosure. Individual elements or features of a particular embodiment are generally not limited to that particular embodiment, but, where applicable, are interchangeable and can be used in a selected embodiment, even if not specifically shown or described. The same may also be varied in many ways. Such variations are not to be regarded as a departure from the disclosure, and all such modifications are intended to be included within the scope of the disclosure.
Example embodiments are provided so that this disclosure will be thorough, and will fully convey the scope to those who are skilled in the art. Numerous specific details are set forth such as examples of specific components, devices, and methods, to provide a thorough understanding of embodiments of the present disclosure. It will be apparent to those skilled in the art that specific details need not be employed, that example embodiments may be embodied in many different forms and that neither should be construed to limit the scope of the disclosure. In some example embodiments, well-known processes, well-known device structures, and well-known technologies are not described in detail.
The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting. As used herein, the singular forms “a,” “an,” and “the” may be intended to include the plural forms as well, unless the context clearly indicates otherwise. The terms “comprises,” “comprising,” “including,” and “having,” are inclusive and therefore specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. The method steps, processes, and operations described herein are not to be construed as necessarily requiring their performance in the particular order discussed or illustrated, unless specifically identified as an order of performance. It is also to be understood that additional or alternative steps may be employed.
When an element or layer is referred to as being “on,” “engaged to,” “connected to,” or “coupled to” another element or layer, it may be directly on, engaged, connected or coupled to the other element or layer, or intervening elements or layers may be present. In contrast, when an element is referred to as being “directly on,” “directly engaged to,” “directly connected to,” or “directly coupled to” another element or layer, there may be no intervening elements or layers present. Other words used to describe the relationship between elements should be interpreted in a like fashion (e.g., “between” versus “directly between,” “adjacent” versus “directly adjacent,” etc.). As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items.
Although the terms first, second, third, etc. may be used herein to describe various elements, components, regions, layers and/or sections, these elements, components, regions, layers and/or sections should not be limited by these terms. These terms may be only used to distinguish one element, component, region, layer or section from another region, layer or section. Terms such as “first,” “second,” and other numerical terms when used herein do not imply a sequence or order unless clearly indicated by the context. Thus, a first element, component, region, layer or section discussed below could be termed a second element, component, region, layer or section without departing from the teachings of the example embodiments.
Spatially relative terms, such as “inner,” “outer,” “beneath,” “below,” “lower,” “above,” “upper,” and the like, may be used herein for ease of description to describe one element or feature's relationship to another element(s) or feature(s) as illustrated in the figures. Spatially relative terms may be intended to encompass different orientations of the device in use or operation in addition to the orientation depicted in the figures. For example, if the device in the figures is turned over, elements described as “below” or “beneath” other elements or features would then be oriented “above” the other elements or features. Thus, the example term “below” can encompass both an orientation of above and below. The device may be otherwise oriented (rotated 90 degrees or at other orientations) and the spatially relative descriptors used herein interpreted accordingly.
The United States Government has rights in this invention pursuant to Contract No. DE-AC52-07NA27344 between the U.S. Department of Energy and Lawrence Livermore National Security, LLC, for the operation of Lawrence Livermore National Laboratory.