System and method for planning support removal in hybrid manufacturing with the aid of a digital computer
11537104 · 2022-12-27
Assignee
Inventors
Cpc classification
G05B2219/49041
PHYSICS
G05B2219/49038
PHYSICS
B33Y50/00
PERFORMING OPERATIONS; TRANSPORTING
B29C64/40
PERFORMING OPERATIONS; TRANSPORTING
B29C64/393
PERFORMING OPERATIONS; TRANSPORTING
G05B2219/49012
PHYSICS
G05B19/4099
PHYSICS
Y02P90/02
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
B33Y50/02
PERFORMING OPERATIONS; TRANSPORTING
International classification
G05B19/4099
PHYSICS
B29C64/40
PERFORMING OPERATIONS; TRANSPORTING
B33Y50/00
PERFORMING OPERATIONS; TRANSPORTING
B33Y50/02
PERFORMING OPERATIONS; TRANSPORTING
Abstract
Parameters of a set of tools are stored on a storage device. The tools are part of a manufacturing assembly usable for removing one or more support structures from a part. The support structures are formed with the part to facilitate additive manufacturing of the part. A near-net shape is modeled which includes the part combined with the support structures. A process plan is developed that includes subtractive manufacturing operations by the manufacturing assembly that remove the support structures. The process plan repeatedly updates the near-net shape as each one of the support structures is incrementally removed.
Claims
1. A method comprising: storing parameters of a set of tools of a manufacturing assembly usable for removing one or more support structures from a part, the support structures formed with the part to facilitate additive manufacturing of the part; modeling a near-net shape comprising the part combined with the support structures; and developing a process plan comprising subtractive manufacturing operations by the manufacturing assembly that remove the support structures, wherein the process plan repeatedly updates the near-net shape as each one of the support structures is incrementally removed.
2. The method of claim 1, wherein the process plan removes only those parts of the support structures that are in contact with the part.
3. The method of claim 1, wherein developing the process plan comprises: representing a set of states, each state identifying an orientation of the manufacturing assembly and describing the near-net shape with selected ones of the support structures that remain at the state, with one of the states representing an initial state; representing a set of actions, each action describing one of the orientations of the manufacturing assembly and describing removal of at least one of the support structures from the near-net shape; starting at the initial state, repetitively transitioning from one of the states to another of the states by choosing one of the actions as guided by a cost constraint function until a goal condition is satisfied; and using the chosen actions to form the process plan.
4. The method of claim 3, wherein each of the orientations of the set of states is selected from a limited set of total orientations, the limited set of total orientations reducing a deviation of the tools from a surface normal of the part.
5. The method of claim 4, wherein the reducing the deviation of the tools from the surface normal of the part minimizes scalloping of the part.
6. The method of claim 1, wherein a greedy algorithm is used to plan the incremental removal of the support structures from the near-net shape.
7. A system comprising: a storage device that stores a model of a part and parameters of a set of tools of a manufacturing assembly usable for removing one or more support structures from the part, the support structures formed with the part to facilitate additive manufacturing of the part; and a processor and memory coupled to the storage device and operable to perform steps comprising: modeling a near-net shape comprising the part combined with the support structures; and developing a process plan comprising subtractive manufacturing operations by the manufacturing assembly that remove the support structures, wherein the process plan repeatedly updates the near-net shape as each one of the support structures is incrementally removed.
8. The system of claim 7, wherein the process plan removes only those parts of the support structures that are in contact with the part.
9. The system of claim 7, wherein developing the process plan comprises: representing a set of states, each state identifying an orientation of the manufacturing assembly and describing the near-net shape with selected ones of the support structures that remain at the state, with one of the states representing an initial state; representing a set of actions, each action describing one of the orientations of the manufacturing assembly and describing removal of at least one of the support structures from the near-net shape; starting at the initial state, repetitively transitioning from one of the states to another of the states by choosing one of the actions as guided by a cost constraint function until a goal condition is satisfied; and using the chosen actions to form the process plan.
10. The system of claim 9, wherein each of the orientations of the set of states is selected from a limited set of total orientations, the limited set of total orientations reducing a deviation of the tools from a surface normal of the part.
11. The system of claim 10, wherein the reducing the deviation of the tools from the surface normal of the part minimizes scalloping of the part.
12. The system of claim 7, wherein a greedy algorithm is used to plan the incremental removal of the support structures from the near-net shape.
13. A method comprising: storing parameters of a machining tool assembly usable for removing one or more support structures from a part, the support structures formed with the part to facilitate additive manufacturing of the part; representing a set of states, each state identifying an orientation of the machining tool assembly and describing a near-net shape comprising the part combined with selected ones of the support structures that remain at the state, with one of the states representing an initial state; representing a set of actions, each action describing one of the orientations of the machining tool assembly and describing removal of at least one of the support structures from the near-net shape; starting at the initial state, repetitively transitioning from one of the states to another of the states by choosing one of the actions as guided by a cost constraint function until a goal condition is satisfied; and using the chosen actions to form a process plan comprising subtractive manufacturing operations used by the machining tool assembly to remove the support structures.
14. The method of claim 13, wherein each of the orientations of the set of states is selected from a limited set of total orientations, the limited set of total orientations reducing a deviation of the machining tool assembly from a surface normal of the part.
15. The method of claim 14, wherein the reducing the deviation of the machining tool assembly from the surface normal of the part minimizes scalloping of the part.
16. The method of claim 13, wherein the cost constraint function minimizes a time to perform to perform the operations by the machining tool assembly.
17. The method of claim 13, wherein the cost constraint function maximizes a surface finish of the part.
18. The method of claim 13, wherein choosing one of the actions as guided by the cost constraint function comprises using an A* algorithm.
19. The method of claim 13, wherein a greedy algorithm is used to plan the removal of the at least one of the support structures from the near-net shape.
20. The method of claim 13, wherein each action removes only those parts of the support structures that are in contact with the part.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
DETAILED DESCRIPTION
(6) Planning SM processes for removing scaffolding from an AM-produced near-net shape requires analysis of feasible non-colliding cutting tool configurations in a dynamically-changing space. As each support is removed from the near-net shape, the space available to the cutting tool for collision-free motion around the near-net shape changes, usually by increasing the amount of free space within which a cutting tool assembly can move. For each type of cutting tool to be used, a tool's configuration includes a position and orientation. Thus, the combination of the part and scaffolding, which constitute the near-net shape, and tool assembly configuration geometries together creates a complex problem space for determining support removability through SM processes.
(7) A support removal process plan for SM processes includes sequences of support beams to be removed.
(8) For each support removal sequence generated, a tool path planner, such as a computer-aided manufacturing (CAM) system, or a system using motion planning algorithms, for instance, the Open Motion Planning Library (OMPL), generates a tool path to be used in a process plan.
(9) In one embodiment, through the tool path planner 21, the Web-based service 23 generates process plans 30 that each contain support removal sequences. Each sequence includes CNC machining instructions that have been generated by the tool path planner 21 by modeling the inherent capabilities of a hybrid manufacturing setup 29. The hybrid manufacturing setup 29 includes a cutting or machining tool assembly 31 for performing SM operations. The machining tool assembly 29 can be programmed with the machining instructions in the process plans 30 generated by the tool path planner 21 and operated to remove supporting beams 12 from the near-net shape 10.
(10) The tool path planner 21 implements a geometric engine that executes a set of spatial planning algorithms for automated manufacturability analysis of arbitrary geometric models, without making assumptions on the tool geometry and degrees of freedom, or the existence of surrounding tooling and fixtures, such as described in U.S. Pat. No. 9,292,626, issued Mar. 22, 2016, to Nelaturi et al., the disclosure of which is incorporated by reference. The manufacturing setup model corresponds to the library of cutting or machining tools 26 with specifications for each operable tool, and the tool path planner 21 connects the available capability of each tool to the uploaded geometric model of each part 25 to provide qualitatively distinct process plans, represented in the form of a JSON (“JavaScript Object Notation”) file or similar structured encoding or human-readable format, with detailed feedback for each individual plan.
(11) The geometric reasoning algorithms use tooling information from the library 26 to allow the tool path planner 21 to generate a collision-free path for the tool assembly to remove one support beam 12 at a time, as further described infra with reference to
(12) In modeling an SM process plan problem space, begin by assuming that there are finitely many (say k) support beams 12 that contact the fabricated part 11. Each support beam 12 can be numbered and indexed, so as to generate all k! permutations of support structure removal sequences. Considering that a single part 11 being fabricated may consist of several hundred support beams 12, an enumeration of all k! permutations would result in an astronomically large set of possible support removal sequences. Generating and testing each possible sequence would be impracticable.
(13) On the other hand, human engineers may be able to visually inspect a near-net shape and recommend a candidate set of support beam removal sequences based on their own experience. Importantly, a human engineer may be able to quickly decide if a near-net shape 10 has support beams 12 that cannot be removed, for example, when supports support beams 12 are placed in internal voids 13, and that knowledge can be used to pare down the size of the problem space.
(14) Nevertheless, relying upon human expertise can present shortcomings due to the limitations inherent in the human reasoning of three-dimensional space and a fully automated process plan generate and test approach for candidate sequences of support removal is needed.
(15) Algorithmic reasoning about a cutting tool assembly's space of feasible configurations can be effectively harnessed by the tool path planner to construct a sequence of supports structures 12 that guarantees a collision-free path for the tool assembly to remove each support structure 12 in the sequence.
(16) Initially, a model of the manufacturing setup, including a library of the cutting tools 26 to be used to machine the near-net shape 12, as well as knowledge of the part 11 as designed and the scaffolding 12 (available through the stored models of designed parts 25), are respectively retrieved (steps 41 and 42). Note that initially, the near-net shape 10 is the combination of the part 11 and the scaffolding 12. The library 26 stores information on each type of milling tool, including the orientations and positions in which the milling tool can operate.
(17) Next, for process planning purposes, the tip of the machining tool assembly 29 is logically located (step 43) to coincide with the origin of a coordinate system in R.sup.3. The tool assembly's tip would ordinarily be the aspect of the machining tool 31 that makes actual physical contact with the near-net shape 10 to remove a support beam 12 from the part 11. This coordinate system is used to measure the relative positions and orientations of the tool assembly T with respect to the near-net shape N. Next, logically assume that there are finitely many support beams S={S.sub.1, . . . , S.sub.k} added on to the part P that is intended to be fabricated by the AM process (step 44). In general, k will represent the actual number of support beams 12. Therefore, N=P∪.sub.i=1.sup.kS.sub.i.
(18) Unlike traditional machining, the entire scaffolding 12 need not be completely machined off the near-net shape 10, though that is a feasible strategy. Rather, in SM processes, fracturing the region (or point) of contact between the support beam 12 and the part 11, so that the part 11 can be disengaged from the support beam 12, will suffice. Therefore, at a minimum, collision-free contacts between the cutting tool's tip and the region of a near-net shape 10 where a support beam 12 touches the part's surface must be found. A greedy algorithm to plan the removal of the support beams 12 from the near-net shape 10 is performed (step 45), as further described infra with reference to
(19) The greedy algorithm models the motion of the tool assembly 31 through the free-spaces around the near-net shape 10 and the part 10 to determine feasible points of contact for the tool assembly 31.
π.sub.1:C.fwdarw.R.sup.3 (1)
π.sub.2:C.fwdarw.SO(3) (2)
(20) Now, define the free-space .sub.N around the near-net shape N as the set of all of tool assembly T's configurations that do not collide with the near-net shape N, that is, all non-colliding orthogonal transformations of the machining tool assembly within the configuration space C, and any workholding devices W that are used to fixture the part as scaffolding is removed:
.sub.N={g∈Cs.t.T.sub.g∩*{N∪W}=∅} (3)
where the letter g emphasizing that C is also a Lie group called the Special Euclidean group SE(3). Here T.sub.g refers to the tool assembly T transformed by an element g∈C, and ∩* refers to regularized intersection. The complement of the free space .sub.N is called the obstacle space O that delineates configurations of the tool assembly T that cause collision with the near-net shape N. Therefore, the boundary shared by O and
.sub.N delineates all of the tool configurations that cause contact, but no collision between the tool assembly T and the near-net shape N.
(21) Similarly, define the free-space .sub.P around the part P as the set of all of tool assembly configurations that do not collide with P∪W, which is the part P and any workholding devices W:
.sub.P={g∈Cs.t.T.sub.g∩*{P∪W}=∅} (4)
Notice that after the AM processes complete and before the SM processes start, .sub.p⊃
.sub.N, that is, the free-space
.sub.P around the part P is a superset of the free-space
.sub.N around the near-net shape N because the support beams 12 will prevent the tool assembly T from being able to reach the physical space otherwise available to access the part P. As the support beams 12 are removed, the near-net shape N will get smaller and converge in size towards the size of the part P, while the free-space
.sub.N around the near-net shape N will get larger and converge towards the free-space
.sub.p around the part P.
(22) Given a boundary feature F⊂∂P, where boundary of a set Y is denoted ∂Y, two sets of collision-free contact configurations of tool assembly Tat the boundary feature F can be defined as:.sub.F.sup.P={g∈∂F.sub.P|π.sub.1(T.sub.g)∈F} (5)
.sub.F.sup.N={g∈∂F.sub.N|π.sub.1(T.sub.g)∈F} (6)
The intersection of each support beam S.sub.i∈S with the part P will be a boundary feature F.sub.i. For simplicity, assume that boundary feature F.sub.i is a point set, which is consistent with AM practice, where support beams S are often designed to have minimal contact with the boundary of the part ∂P to minimize surface roughness and enable easier fracture and removal of the support beams S by SM processes.
(23) Next, the manner of construction of the support beams 12 is determined (step 62) to provide boundary features at the intersection of the individual support beam S.sub.i and the part P. Preferably, support beams are constructed from a surface of ∂P to a stationary base plate or fixture. However, in some situations, the support beams 12 may have to be constructed from one location of ∂P to another location of ∂P. Also, an individual support beam S.sub.i may contact the part P at multiple locations when the contacting support beams are “branched” outwards from a main “trunk,” such as occurs when the scaffolding is organized in tree-like shapes. To accommodate these situations, a specific boundary feature F.sub.i=S.sub.i∩P can be a discrete point set, which is the intersection of the individual support beam S.sub.i and the part P. Therefore, if .sub.F.sub.
.sub.F.sub.
.sub.F.sub.
(24) The part 11 is then evaluated for manufacturability (step 63), as further described infra with reference to
(25) On the other hand, if a part being fabricated 11 is manufacturable (step 64), that is, boundary features F.sub.i have been found for all of the support beams S, a collection of tool assembly configurations that are guaranteed to be non-colliding but which can access all points in the boundary features F.sub.i can be generated (step 65) using the support removal sequence, after which the greedy algorithm terminates. In a further embodiment, human engineers can validate the process plans and, if desired, re-order the support removal sequence. The reordered support removal sequence is resubmitted to the greedy algorithm to attempt to re-plan the tool motions to remove the supports without collision, starting with determining the manner of construction of the support beams 12 (step 62) based upon the reordered support removal sequence.
(26) Hybrid manufacturability hinges upon the ability to remove the support beams 12 from a near-net shape 10 to yield the part 11. .sub.F.sub.
.sub.F.sub.
(27) There may be multiple individual support beams S.sub.i that are eligible for removal at each recursion (or iteration), that is, multiple support beams S.sub.i may satisfy the condition that π.sub.1(.sub.F.sub.
.sub.F.sup.N of tool assembly Tat the boundary feature F. A tool path planner 21 that uses motion planning algorithms, for instance, the OMPL, cited supra, may be used to choose a particular support beam 12 and plan the individual tool assembly trajectories from the chosen support beam 12 to the next support beam 12 in the support removal sequence. The challenge with this approach, though, is computing the collision-free contact configurations
.sub.F.sub.
(28) In practical situations, several collision-free support removal sequences may be possible and various combinations of collision-free contact configurations .sub.F.sub.
(29) More generally, to optimize the sequencing of SM processes, a search space can be iteratively built where each search node stores distinct boundary features F.sub.N for the near-net shape N as obtained by calculating the free-space .sub.N around the near-net shape N resulting from subtracting a distinct support beam S.sub.i∈S from the near-net shape N. Several practical heuristics may be used to pick the support beams 12 that are good candidates for removal. For example, visibility analysis for manufacturing algorithms may be used to decide which of the F.sub.i have the most visibility because visibility can be used as a weak condition for accessibility. Furthermore, there may be practical considerations about how much deviation from the surface normal can be allowed for the tool contact orientations to minimize scalloping the part surface. Therefore, a limited set of cutting tool assembly orientations may be chosen a priori to minimize the number of cutting tool assembly orientations for which the free-spaces need to be computed.
(30) The six-dimensional configuration space of obstacles and free-space for complex cutting tool and fixture assemblies can be effectively modeled to compute the collision-free contact configurations .sub.F.sub.
.sub.F.sub.
(31) More generally, given a collection of free-spaces obtained by iteratively reducing the number of support beams, standard search algorithms, such as A* (with an implemented cost function), can be used to find the best sequence of free-spaces that will provide a low-level tool path planner that uses motion planning algorithms, for instance, the OMPL, cited supra, all the available configurations to find a tool path from one support beam to the next support beam, and execute the support removal.
(32) While the invention has been particularly shown and described as referenced to the embodiments thereof, those skilled in the art will understand that the foregoing and other changes in form and detail may be made therein without departing from the spirit and scope of the invention.