SYSTEM AND METHOD FOR PLANNING SUPPORT REMOVAL IN HYBRID MANUFACTURING WITH THE AID OF A DIGITAL COMPUTER
20210191362 · 2021-06-24
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/393
PERFORMING OPERATIONS; TRANSPORTING
B29C64/40
PERFORMING OPERATIONS; TRANSPORTING
B33Y50/00
PERFORMING OPERATIONS; TRANSPORTING
Abstract
Algorithmic reasoning about a cutting tool assembly's space of feasible configurations can be effectively harnessed to construct a sequence of motions that guarantees a collision-free path for the tool assembly to remove each support structure in the sequence. A greedy algorithm models the motion of the cutting tool assembly through the free-spaces around the intermediate shapes of the part as the free-spaces iteratively reduce in size to the near-net shape to determine feasible points of contact for the cutting tool assembly. Each support beam is evaluated for a contact feature along the boundary of the near-net shape that constitutes a feasible point of contact. If a support beam has at least one feasible configuration at each point, the support beam is deemed ‘accessible’ and a collection of tool assembly configurations that are guaranteed to be non-colliding but which can access all points of contact of each accessible support beam can be generated.
Claims
1. A system for planning support removal in hybrid manufacturing with the aid of a digital computer, comprising the steps of: a computer, comprising: a storage device, comprising: parameters for a machining tool assembly, each parameter comprising orientations and positions of the machining tool assembly; a model of a part defining surfaces and the interior of the part and one or more support structures that were added to the part during additive manufacturing; and a near-net shape initially modeled as the part combined with the support structures; and a processor and memory within which code for execution by the processor is stored to perform the steps comprising: setting up a configuration space comprising geometric transformations that represent the spatial motions of the machining tool assembly based upon the machining tool assembly's parameters; determining a manner of construction of each of the support structures to provide contact features at an intersection of the support structures and the part; evaluating each of the support structures for the existence of a contact feature within free-space that is available within the configuration space around the near-net shape that comprises a feasible region of contact for the tool assembly to remove all of the support structures that are accessible from the near-net shape, wherein the support structure is added to a support removal sequence and the near-net shape is continually updated as each support structure is incrementally removed; constructing for each of the support structures in the support removal sequence a set of collision-free contact configurations of the machining tool assembly at the contact feature, provided that contact features are found for all of the support structures; creating process plans comprising machining operations by the machining tool assembly based upon the sets of collision-free contact configurations of the machining tool assembly for the support structures; and programming the machining tool assembly with the process plans and operating the machining tool assembly per the machining operations in the process plans by machining off the support structures.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0017]
[0018]
[0019]
[0020]
[0021]
DETAILED DESCRIPTION
[0022] 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.
[0023] A support removal process plan for SM processes includes sequences of support beams to be removed.
[0024] 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.
[0025] 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.
[0026] 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.
[0027] 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
[0028] 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.
[0029] 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.
[0030] 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.
[0031] 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.
[0032] 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.
[0033] 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.
[0034] 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
[0035] 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)
[0036] 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.
[0037] 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.
[0038] 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.
[0039] 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.
[0040] The part 11 is then evaluated for manufacturability (step 63), as further described infra with reference to
[0041] 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.
[0042] 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.
[0043] 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.
[0044] In practical situations, several collision-free support removal sequences may be possible and various combinations of collision-free contact configurations .sub.F.sub.
[0045] 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.
[0046] 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.
[0047] 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.
[0048] 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.