Method and apparatus for optimally positioning an object for automated machining

By generating construction files and determining the object layout, the problem that objects are difficult to fix and perform post-manufacturing processes after the additive manufacturing process is solved, and efficient post-manufacturing processes and productivity are achieved.

CN110032343BActive Publication Date: 2025-06-17FISHER CONTROLS INT LLC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN201811479043.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2017-12-15
Filing Date
2018-12-05
Publication Date
2025-06-17
Estimated Expiration
2038-12-05

AI Technical Summary

Technical Problem

After the additive manufacturing process, the object needs to undergo a post-manufacturing process to improve accuracy and performance, but due to the complex geometry and dense layout of the object, it is difficult to keep the object fixed and perform the post-manufacturing process simultaneously, resulting in low efficiency and productivity.

Method used

By generating a construction file, the high-density layout of the object is determined, and based on the relationship between the object and the post-manufacturing tool path volume, the layout of the object and the order of the post-manufacturing process are determined, so that the object remains fixed on the substrate and undergoes post-manufacturing processing.

Benefits of technology

It realizes that while maintaining the high object density, the efficiency and productivity of the post-manufacturing process are improved, the total object construction time is reduced, and the collision problem between the post-manufacturing process tool path and the object is solved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN110032343B_ABST
    Figure CN110032343B_ABST
Patent Text Reader

Abstract

This document describes methods and apparatuses for optimally positioning objects for automated machining. The example build file generator described herein includes an object file manager that is used to identify a first tool path volume associated with a first object to be formed via an additive manufacturing (AM) process. The first tool path volume is based on a first tool path for using a first post-manufacturing process on the first object. The object file manager is also used to identify a second tool path volume associated with a second object to be formed via the AM process. The second tool path volume is based on a second tool path for using a second post-manufacturing process on the second object. The example build file generator further includes a layout determiner that is used to determine a layout of the first object and the second object to be formed on a substrate via the AM process based on the first tool path volume and the second tool path volume.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure generally relates to automated machining, and more particularly, to methods and apparatus for optimally positioning an object for automated machining. Background Art

[0002] Additive manufacturing (AM) (sometimes referred to as 3D printing) generally refers to various processes that can be used to create a three-dimensional structure by adding layer-upon-layer of material. While the resolution of the structures sometimes produced by AM machines is sufficient for a given application, typically one or more subtractive manufacturing processes (e.g., drilling, cutting, etc.) are performed on the structure after the AM process to achieve a higher precision of the structure. Summary of the Invention

[0003] An example build file generator disclosed herein includes an object file manager that is configured to identify a first tool path volume associated with a first object to be formed via an additive manufacturing (AM) process. The first tool path volume is based on a first tool path of a first post-manufacturing process to be used on the first object. The object file manager is further configured to identify a second tool path volume associated with a second object to be formed via the AM process. The second tool path volume is based on a second tool path of a second post-manufacturing process to be used on the second object. The exemplary build file generator further includes a layout determiner that is configured to determine a layout of the first object and the second object to be formed on a substrate via the AM process based on the first tool path volume and the second tool path volume. According to the layout, the first object is at least partially disposed within the second tool path volume.

[0004] An example method of generating an object disclosed herein includes building a first object and a second object on a substrate via an additive manufacturing (AM) machine according to a build file. The build file defines a layout of the first object and the second object on the substrate. According to the layout, the second object is at least partially disposed within a first tool path volume associated with the first object. The first tool path volume is based on a first tool path of a first post-manufacturing process to be performed on the first object. The exemplary method further includes removing the second object from the substrate, and after removing the second object from the substrate, performing the first post-manufacturing process on the first object via a first post-manufacturing machine while the first object is fixed to the substrate.

[0005] A non-transitory machine-readable storage medium disclosed herein includes instructions that, when executed, cause at least one machine to at least: identify a first tool-path volume associated with a first object to be formed via an additive manufacturing (AM) process, wherein the first tool-path volume is based on a first tool path of a first post-manufacturing process to be performed on the first object; and identify a second tool-path volume associated with a second object to be formed via the AM process, wherein the second tool-path volume is based on a second tool path of a second post-manufacturing process to be performed on the second object. The instructions, when executed, further cause at least one machine to generate a build file for an AM machine based at least on the first tool-path volume and the second tool-path volume. The build file includes a layout of the first object and the second object to be formed by the AM machine on a substrate. BRIEF DESCRIPTION OF THE DRAWINGS

[0006] Figure 1 FIG. 1 shows an example build file generator for generating an example build file implemented in conjunction with an example automated machining system in accordance with the teachings of the present disclosure.

[0007] Figure 2 FIG. 2 shows an example additive manufacturing machine for building one or more objects in accordance with an example layout defined by an example build file that may be implemented in the example automated machining system of FIG. 1. Figure 1 FIG. 3 is a side view of an example object built by the example additive manufacturing machine of FIG. 2.

[0008] Figure 3 FIG. 4 shows an example computer numerical control (CNC) machine that may be implemented in the example automated machining system of FIG. 1 and that is configured to perform one or more post-manufacturing processes on the example object of FIG. 3. Figure 2 FIG. 5 shows an example tool-path volume that may be defined around the example object of FIG. 3 and that is used by the example build file generator of FIG. 1.

[0009] Figure 4 FIG. 6 shows an example object and an example substrate on which the example object may be built. Figure 1 FIG. 7 shows an example layout of the example object of FIG. 6 on the example substrate, the example layout being defined by an example build file generated by the example build file generator of FIG. 1. Figure 3 FIG. 8 shows an example build file generator for generating an example build file implemented in conjunction with an example automated machining system in accordance with the teachings of the present disclosure.

[0010] Figure 5 FIG. 9 shows an example additive manufacturing machine for building one or more objects in accordance with an example layout defined by an example build file that may be implemented in the example automated machining system of FIG. 8. Figure 3 FIG. 10 is a side view of an example object built by the example additive manufacturing machine of FIG. 9. Figure 1 FIG. 11 shows an example computer numerical control (CNC) machine that may be implemented in the example automated machining system of FIG. 8 and that is configured to perform one or more post-manufacturing processes on the example object of FIG. 10.

[0011] Figure 6 FIG. 12 shows an example tool-path volume that may be defined around the example object of FIG. 10 and that is used by the example build file generator of FIG. 8.

[0012] Figure 7 FIG. 13 shows an example object and an example substrate on which the example object may be built. Figure 6 FIG. 14 shows an example layout of the example object of FIG. 13 on the example substrate, the example layout being defined by an example build file generated by the example build file generator of FIG. 8. Figure 1 FIG. 15 shows an example build file generator for generating an example build file implemented in conjunction with an example automated machining system in accordance with the teachings of the present disclosure.

[0013] Figures 8A - 8J shows Figure 6 and Figure 7 an example order of post - manufacturing processes and removals for exemplary objects, which order can be determined by Figure 1 an example build file generator.

[0014] Figure 9A and Figure 9B show example machines that can be implemented in an example automated machining system of Figure 1 and used to spray protective foam on one or more objects.

[0015] Figure 10 is a flowchart of example machine - readable instructions that can be executed to implement Figure 1 an example build file generator.

[0016] Figure 11 is a flowchart of an example method that can be executed by one or more example machines of an example automated machining system of Figure 1 to build one or more objects according to the order of post - manufacturing processes and removals determined by an example build file generator.

[0017] Figure 12 is a processor platform structured to execute Figure 10 example instructions to implement Figure 1 an example build file generator.

[0018] The figures are not necessarily drawn to scale. Instead, to clarify multiple layers and regions, the thickness of a layer may be enlarged in the figures. Whenever possible, the same reference numerals will be used throughout the figures and the accompanying written description to refer to the same or like parts. As used in this patent, stating that any part (e.g., a layer, film, region, or plate) is positioned in any way on another part (e.g., on top of, located on, disposed on, or formed on, etc.) indicates that the referenced part is in contact with the other part, or that the referenced part is above the other part and there is one or more intermediate parts therebetween. Stating that any part is in contact with another part means that there is no intermediate part between the two parts. Detailed Description

[0019] Additive manufacturing (AM) (sometimes referred to as three-dimensional (3D) printing) generally refers to various manufacturing processes that can be used to create a three-dimensional structure by adding layer upon layer of material. As used herein, the terms object, component, and part are defined to represent any 3D article that can be built via one or more processing techniques (such as via an AM process). AM processes are now used to create objects for almost any type of product, such as process control equipment (e.g., valves, regulators, sensors, etc.), vehicle components, cellular phone components, etc. In some types of AM processes (such as powder bed fusion), the object is built on a substrate. As used herein, a substrate is defined to represent any piece of material (e.g., a metal piece, a plastic piece, etc.) on which one or more objects can be built. For example, using a powder bed fusion machine, the object is welded and / or otherwise coupled to the substrate at its / their base. After the object is built on the substrate, the object can be separated from the substrate.

[0020] In some examples, in order to achieve the necessary specifications or improve the properties of the object (such as, by way of example, surface quality, geometric accuracy, mechanical properties, etc.), it may be desirable or necessary to perform one or more post-manufacturing processes on the object. The terms "post-processing", "post-manufacturing process", and / or their variants are used herein to represent any process that can be performed on an object after the overall shape of the object has been formed (e.g., via an AM process). For example, one or more subtractive manufacturing processes (such as drilling, cutting, etc.) can be used to remove temporary support structures that were built during the AM process to improve the surface resolution of the object, to create additional edges or openings, etc. Additionally, other post-manufacturing processes (such as, by way of example, powder removal, cleaning, 3D scanning, spraying, heat treatment, shot peening, electrochemical treatment, etc.) can be used to improve the mechanical and / or tactile properties of the surface of an additively manufactured component.

[0021] In some cases, it is beneficial to keep the object on the substrate while performing one or more post-manufacturing processes. For example, some objects may not have suitable fixation points (e.g., due to their complex geometry) to fix the object to a machine for post-manufacturing processing. Thus, if the object is removed, appropriate fixation points must be added to the object during the AM process or additional structures (which act as fixation points) must be created. Moreover, fixing the object to a machine takes a significant amount of time and thus reduces cost efficiency.

[0022] To increase the efficiency of an AM process, it is generally desirable to build multiple objects on a substrate simultaneously. These objects can be arranged in a relatively dense layout to fit as many objects as possible on the substrate, which increases (e.g., maximizes) the number of objects that can be produced in a single batch. Additionally, as described above, one or more post-manufacturing processes are generally desirable or required to finish the objects. However, these post-manufacturing processes require room or space around the respective object to accommodate the tool paths of the respective post-manufacturing processes. As such, the objects will need to be spaced apart from each other to accommodate the tool paths of the post-manufacturing machines. However, increasing the spacing between the objects results in fewer objects being built on a common substrate and thus reduces the efficiency of the build process. For example, although a high-density layout can maximize build efficiency, such a high-density layout generally prevents access by post-manufacturing process tools (such as the drill bit of a computer numerical control (CNC) machine) to each object. In other words, other objects on the build substrate may obstruct the tool paths of the post-manufacturing machines. Although it is possible to remove these objects from the substrate and post-process these objects separately, as explained above, individually securing the objects to the post-manufacturing machines is extremely time-consuming, which reduces efficiency and productivity. Any increased efficiency and productivity gained through the use of a high-density layout may not offset the inefficiencies introduced by post-processing each object in a batch separately.

[0023] Exemplary methods, apparatuses, systems, and articles for generating a build file or model are disclosed herein that enable a high-density layout of objects while allowing the objects to be processed while still secured to the substrate. The examples disclosed herein select a plurality of objects and determine an optimal layout of the objects to be built or formed on a common substrate based on the tool path volumes associated with the respective objects. As used herein, "tool path volume" represents the volume around an object that is occupied by the tool of a post-manufacturing machine during a post-manufacturing process performed on the object, and this volume will remain clear to avoid collision with another object. Thus, the tool path volume can be represented by a set of coordinates or distances, for example, relative to the object (e.g., relative to the center point of the object, relative to the edges or surfaces of the object, etc.), that define one or more boundaries around the object.

[0024] The example build file generator disclosed herein analyzes multiple object files (representing objects to be built via an AM process) and machining files associated with these object files that define the tool path volume around each of these objects. The example build file generator can select two or more objects (e.g., from a larger set of possible objects) and define a layout of the objects to be built on a common substrate based on the tool path volumes associated with these objects. The example build file can be used by an AM machine to build the objects on the substrate according to the defined layout.

[0025] In some examples, the build file generator also determines the order of post-manufacturing processes to be performed on and removal of the objects on the substrate. The order (which can be stored as a separate file (e.g., a machining file for the build) or included as part of the build file) defines the order in which one or more post-manufacturing processes will be performed on each of these objects and / or the order of removal of these objects. For example, the order can specify that: (1) a first post-manufacturing process will be performed on a first object and then the first object will be removed, (2) a second post-manufacturing process (which can be the same as or different from the first post-manufacturing process) will be performed on a second object and then the second object will be removed, and so on. By using this example order, one or more of these objects can be positioned within (or partially within) the tool path volume of another object because this example order ensures that the tool path volume around each of these objects is cleared before the post-manufacturing and / or removal of the next object is initiated. For example, the layout can specify that a first object and a second object will be built on the substrate, where the first object is set within (or partially within) the tool path volume of the second object. The order can specify that first the one or more post-manufacturing processes to be performed on the first object are performed and then the first object is removed. Then, the one or more post-manufacturing processes to be performed on the second object can be performed because the area around the second object (previously occupied by the first object) is now cleared, and so on. As a result, the objects can be arranged in a layout that increases (e.g., maximizes) the object density on the substrate, thereby reducing the total build time of the objects and improving the efficiency of the machining process.

[0026] Accordingly, the example methods, apparatuses, systems, and articles disclosed herein implement a high-density object layout on a substrate while permitting the objects to be processed while attached to the substrate. The high-density object layout reduces the total production time required to produce a set of objects (e.g., two or more objects), thereby increasing efficiency and productivity. Additionally, these example methods, apparatuses, systems, and articles address issues associated with performing post-manufacturing processes on a high-density object layout by using the tool path volume of each object and defining a layout and removal order based on the tool path volume. Accordingly, these example methods, apparatuses, systems, and articles enable the objects to remain fixed to the substrate during post-manufacturing processing. By eliminating the need to remove each object from the substrate, individually fixture each object to a post-manufacturing machine, and process each part separately, the examples disclosed herein further increase the efficiency and productivity of the manufacturing and post-manufacturing processes.

[0027] Turning now to the drawings, Figure 1 FIG. 5 shows an example automated processing system 100 that can be used to fabricate one or more objects. The automated processing system 100 can be part of a processing or manufacturing facility (e.g., a 3D printing facility) that, for example, receives a work order and produces objects according to the specifications of the work order. In the illustrated example, the automated processing system 100 includes an additive manufacturing (AM) machine 102 that builds one or more objects via an AM process and one or more post-manufacturing machines 104 that perform one or more post-manufacturing processes on the objects after they are built by the AM machine 102. In the illustrated example, the AM machine 102 builds the objects on a substrate 106 according to a build file 108 (sometimes referred to as a build model) that defines the shape, boundaries, orientation, etc. of the one or more objects to be built or formed, as further disclosed in detail herein. An example substrate 106 (with multiple example objects) is shown in Figure 1 FIG. 6 being transferred from the AM machine 102 to the post-manufacturing machine 104. After the object is created on the substrate 106 by the AM machine 102, one or more post-manufacturing processes can be performed on the object, including removing the object from the substrate 106.

[0028] Briefly referring to Figure 2 FIG. 14, Figure 2 shows an example powder bed fusion machine 200, which is a type of AM machine that can be implemented as Figure 1 the AM machine 102. The powder bed fusion machine 200 can be used to build objects according to a build file (such as build file 108 ( Figure 1))One or more objects are built on a substrate (such as substrate 106). Substrate 106 can be, for example, a metal plate. In the example shown, the powder bed fusion machine 200 includes a build platform 202 that can be moved up and down via a platform motor 204. To create one or more objects, substrate 106 is placed on build platform 202. Then, a roller 206 spreads a thin layer (e.g., 40 microns) of powder material from a reservoir 210 (e.g., a hopper) over the top of substrate 106 and build platform 202. The powder material 208 can be any metal- and / or polymer-based material. Then, a laser 212 applies energy to the layer of powder material 208 (in the shape of a cross-section of the 3D object according to a build file), which sinters, melts, and / or otherwise hardens the powder material 208 to form a layer of the object. In this example, the first layer of the object is welded to substrate 106. Next, build platform 202 is moved down a small amount (e.g., 0.1 millimeters (mm)) via platform motor 204, and roller 206 spreads another layer of powder material 208 over build platform 202 and over the first hardened layer. Then, laser 212 applies energy to powder material 208 to harden the material onto the previous layer. This process is repeated to build the object layer by layer. Figure 2 An example object 214 is shown welded to substrate 106.

[0029] The loose, unfused powder material 208 around the object on build platform 202 remains in place throughout the process and is removed at the end (e.g., via a powder removal unit). Other types of powder bed fusion AM processes can be accomplished by various techniques (such as, by way of example direct metal laser sintering, electron beam melting, selective heat sintering, selective laser melting, selective laser sintering, etc.). Powder bed fusion methods use a laser or electron beam to melt and fuse material powders together. Although some of the examples disclosed herein are described in connection with powder bed fusion AM machines, the examples disclosed herein can equally be implemented with any other type of AM process or machine, such as VAT photopolymerization, material jetting, binder jetting, material extrusion, sheet lamination, and / or directed energy deposition.

[0030] Building an object using an AM machine, such as powder melting forming machine 200, takes a significant amount of time because the object is built by creating thousands of thin layers of material (or even more). For example, an object with 10,000 layers may take several hours or even days to produce. One of the main efficiency factors contributing to the AM process time is the recoating process / time. Thus, if multiple objects can be built adjacent to each other simultaneously, the total number of recoats that would otherwise be required (compared to building multiple objects at separate times) is significantly reduced because the cross-sections of multiple objects can be created using the same recoat. Thus, it is generally desirable to select a set of objects and position the selected objects on substrate 106 in a high-density layout. Increasing the density of the layout is one way to maximize the number of objects that can be produced in a single batch, thereby reducing the number of batches required to produce the set of objects.

[0031] However, after building an object via an AM process, one or more post-manufacturing processes are typically required or desired to complete the corresponding object according to the desired specifications. For example, an object may be built to have one or more temporary support structures within an opening or arch of the object. After building the object, the temporary support structures are removed. Additionally, one or more processes may be desired to smooth the surface of the object (since the surface texture created via the AM process) may be rough (non-smooth). Thus, it may be necessary or desired to perform one or more post-manufacturing processes on the object.

[0032] For example, Figure 3 shows an enlarged side view of an exemplary object 214 built using Figure 2 the powder melting forming machine 200. As shown, object 214 includes an opening 300 that extends through object 214. During the AM process, one or more temporary support structures 302 are built inside the opening 300 to support the arch (the top side of the opening). Thus, it may be desirable to use a subtractive manufacturing machine (e.g., drilling) to remove the support structures 302. Additionally or alternatively, in some examples, it may be desirable to smooth one or more surfaces or edges of object 214.

[0033] Figure 4 shows one of the post-manufacturing machines 104 that can be implemented as Figure 1 and can be used for one or more objects such as Figure 2 and 3An exemplary CNC machine 400 that performs one or more subtractive manufacturing processes on an object 214. The CNC machine 400 includes a robotic arm 402 having a drill bit 404 for removing material from the object 214. The robotic arm 402 can be controlled to move the drill bit 404 to various positions around or through the object 214 to remove material. Thus, in order to perform one or more post-manufacturing processes on the object 214, there cannot be other objects in the tool path (e.g., the path of the robotic arm 402 and / or the drill bit 404) around the object 214, otherwise potential collisions may occur. However, as described above, when performing post-manufacturing processes, it is generally desirable to keep the objects as close together as possible and keep the objects fixed to a substrate.

[0034] Specifically, it is often beneficial to hold the objects on a substrate 106 when performing one or more post-manufacturing processes. For example, some objects (due to their geometry) may not have suitable attachment points to fix the object to the post-manufacturing machine. Thus, if the object is removed, appropriate attachment points must be added to the object during the AM process or additional structures must be created. Otherwise, a dedicated fixture must be built to dock with the object, which is expensive and time-consuming. Similarly, fixing each object to the machine takes a significant amount of time and thus reduces cost efficiency. In addition, in some cases, it may be desirable to perform the same post-manufacturing process (e.g., cleaning, heat treatment, spraying, sandblasting, etc.) on multiple objects. Thus, rather than performing the process on each object separately, it may be more economical to perform the process on a batch of objects simultaneously. Thus, in many cases, it is more economical and efficient to keep the objects fixed to the substrate 106 during post-manufacturing processes. However, as described above, post-manufacturing processes typically include tools (e.g., drill bits, laser nozzles, etc.) that need to move around the object to perform the corresponding process. Thus, the space or volume around the object needs to be kept clear to accommodate the tool path of the corresponding post-manufacturing process so that the tool does not contact another object on the substrate.

[0035] Referring back to Figure 1, in the example, the additive manufacturing system 100 includes a build file generator 110 that can generate a build file defining a high-density layout of objects to improve the efficiency and productivity of the additive manufacturing system 100. In this example, the build file generator 110 can be implemented on a computer 112. The example build file generator 110 can be implemented as an application or software program executed by a processor of the computer 112. For example, the example build file generator 110 can be implemented as a computer-aided design (CAD) and / or computer-aided manufacturing (CAM) application or software program or a part thereof. Although in the illustrated example the build file generator 110 is implemented on the computer 112, in other examples, the build file generator 110 can be implemented on another type of computing device (such as a laptop computer, a tablet computer, a phone (e.g., a smart phone), a server, and / or any other electronic device).

[0036] In the illustrated example, the computer 112 receives a plurality of object files 114a - 114n that define corresponding objects 116a - 116n to be built in the example additive manufacturing system 100 via an AM process (e.g., via Figure 2 a powder bed fusion machine 200). The object files 114a - 114n define the dimensions of the corresponding objects 116 - 116n and / or any other parameters or characteristics of the objects 116 - 116n (e.g., the type of material used to build the objects, desired finish characteristics, tolerances, etc.). In some examples, the object files 114a - 114n can include or define the location of one or more support structures (e.g., Figure 3 a support structure 302) to be built with the corresponding objects 116a - 116n.

[0037] In some examples, one or more of the object files 114a - 114n include associated machining files 117a - 117n, which include instructions to perform one or more post - manufacturing processes on the corresponding objects 116a - 116n. In some examples, the machining files 117a - 117n include tool - path volumes for the corresponding objects 116a - 116n. Each tool - path volume represents the boundaries in 3D space that are to be kept clear for a tool of the post - manufacturing machine 104 to perform a post - manufacturing process on the corresponding object 116a - 116n. In some examples, one or more of the machining files 117a - 117n include multiple tool paths for the corresponding object. For example, there can be multiple tool - path routes for a certain post - manufacturing machine to complete the same machining process and / or there can be different types of post - manufacturing machines that can use different tool - path routes to complete the same machining process. The tool - path volume of an object can be determined, for example, manually by a machinist and / or via a software program. For example, an object can be built via an AM process (from its object file), and then the machinist can develop a machining file for the object based on one or more post - manufacturing processes to be performed on the object. The machinist can define the tool - path volume of the object based on the space or clearance required during one or more post - manufacturing processes. The tool - path volume can be included as part of the machining files 117a - 117n and / or the corresponding object files 114a - 114n of the objects 116a - 116n. Although the example machining files 117a - 117n are depicted as separate files in Figure 1 the figures, in other examples, the machining files 117a - 117n can be part of the corresponding object files 114a - 114n of the objects 116a - 116n.

[0038] In some examples, the object files 114a - 114n can be received as work orders. The work orders can include other information such as the request date, the expected delivery date, special instructions for delivery, etc. In some examples, one or more of the object files 114a - 114n and / or the machining files 117a - 117n are part of an object library. In such an example, one or more work orders can be received to build one or more of the objects 116a - 116n according to the library. For example, the object files 114a - 114n and / or the associated machining files 117a - 117n can be stored in the memory 120. In this way, the object files 114a - 114n and the corresponding tool path volumes for each of the objects 116a - 116n can be stored in the memory 120. Additionally or alternatively, the computer 112 can receive one or more of the object files 114a - 114n and / or the associated machining files 117a - 117n via a wired or wireless connection. For example, one or more of the object files 114 - 114n and / or the associated machining files 117a - 117n can be transmitted to the computer 112 over the Internet, uploaded via a thumb drive or other storage medium, etc. In some examples, one or more of the object files 114 - 114n and / or the associated machining files 117a - 117n are generated on the computer 112 (e.g., via a CAD software program).

[0039] In the example shown, the build file generator 110 includes an object file manager 118 that receives and manages the object files 114 - 114n and / or the associated machining files 117a - 117n. In some examples, the object file manager 118 extracts information from the object files 114 - 114n and / or the associated machining files 117a - 117n and organizes or classifies the object files 114 - 114n and / or the associated machining files 117a - 117n based on, for example, the number of objects to be built, the size of the corresponding objects to be built, the size of the associated tool path volumes, the request date, the expected delivery date, etc. In some examples, the object files 114 - 114n (and the associated machining files 117a - 117n) to be built are saved in the memory 120.

[0040] In some examples, as disclosed above, the tool path volumes of objects 116a - 116n can be predefined (e.g., included in associated machining files 117a - 117n). In other examples, such as with new objects or object files, build file generator 110 can include volume definer 122. Volume definer 122 can define one or more tool path volumes around an object based on the desired post - manufacturing processes to be performed on the corresponding object. In some examples, the tool path volumes (e.g., defined by a distance from the object surface) are stored in memory 120 along with the associated object files.

[0041] As noted above, in many cases, after objects 116a - 116n are built by AM machine 102 on substrate 106, one or more post - manufacturing processes will be performed on objects 116a - 116n by post - manufacturing machine 104. Exemplary post - manufacturing machines 104 and / or processes can include subtractive manufacturing processes such as, by way of example, CNC machining (e.g., performed by Figure 4 CNC machine 400), laser etching (e.g., to etch a serial number into the object), electrical discharge machining (EDM), electrochemical etching, laser cutting, water jet cutting, polishing, turning, boring, drilling, reaming, milling, forming, planing, broaching, sawing, cutting, abrasive flow machining, etc. Additionally or alternatively, exemplary post - manufacturing machines 104 and / or processes can include other types of machines and / or processes such as a powder removal unit, a cleaning unit, spraying, media blasting, filling, heat treatment, 3D scanning, a coordinate measuring machine (CMM), shot peening, etc.

[0042] For example, briefly referring to Figure 5 , Figure 5 shows an example tool path volume (shown in dashed lines) around object 214 (which can correspond to one of objects 116a - 116n). The tool path volume represents the space around object 214 that one or more tools of post - manufacturing machine 104 can travel in when performing operations (e.g., drilling, cleaning, measuring, spraying, etc.) on object 214.

[0043] In some examples, the specific post - manufacturing processes to be performed on an object are defined by an associated machining file. For example, one or more post - manufacturing processes can be pre - selected based on certain specifications of the object (e.g., based on a specific tolerance or surface smoothness to be achieved). In such an example, after the object is built by the AM machine 102 and defined in the associated machining file, one or more post - manufacturing processes can be selected to smooth the surface of the object. Additionally or alternatively, a user (e.g., a customer) can request that one or more post - manufacturing processes (e.g., sandblasting, cutting, spraying, etc.) be performed on the object after it is built by the AM machine. In other examples, one or more post - manufacturing processes can be selected in other ways and / or based on other considerations. The tool - path volume can depend on one or more factors, such as the size and shape of the respective object, the type of post - manufacturing process to be performed, the type of post - manufacturing machine used to perform the process (e.g., the CNC machine model), etc. Different post - manufacturing machines 104 and / or processes in the post - manufacturing machine 104 and / or processes can result in different tool - path volumes around the object to perform the respective post - manufacturing processes.

[0044] To determine the layout of the objects and / or the post - manufacturing processes of the objects and the order of removal, an exemplary build file generator 110 includes a layout and order determiner 124 (sometimes referred to as a layout determiner). The layout and order determiner 124 analyzes the size of the objects 116a - 116n (and / or the possible orientations of the objects 116a - 116n), the size of the tool - path volume associated with the objects 116a - 116n, and / or the size of the substrate 106, and determines a layout of the plurality of objects 116a - 116n on the substrate 106 that results in a dense arrangement (e.g., an arrangement that consumes the minimum area of the substrate 106). Additionally or alternatively, the layout and order determiner 124 can consider one or more other factors or parameters when selecting the objects 116a - 116n to be built on the same substrate, such as other possible tool - path routes or volumes associated with the objects, the request date of the object (e.g., the date the work order was issued), the promised date of the work order, the expected time to complete the object, etc. In some examples, the user may be able to weight these factors based on importance.

[0045] An example layout and order determiner 124 determines a layout that maximizes the density of the objects to be built. In some examples, the layout and order determiner 124 selects a subset of objects (e.g., two or more objects) from the plurality of objects 116a - 116n. Additionally, the layout and order determiner 124 determines the post - manufacturing processes to be performed on the objects 116a - 116n and the order of removal of the objects 116a - 116n. In combination Figures 8A - 8JExamples of the process are disclosed in more detail. In some examples, one or more objects 116a - 116n built on the same substrate 106 are of the same type of object. In other examples, multiple different types of objects will be built on the same substrate 106.

[0046] In some examples, the example build file generator 110 includes an AM formatter 126 that formats, renders, and / or otherwise generates a build file 108 for building in the AM machine 102 based on the layout and order determined by the layout and order determiner 124. For example, the AM formatter 126 can format the build file 108 for a particular type of machine on which objects are to be built and / or acted upon. For example, the AM formatter 126 can convert the layout into a stereolithography file (STL file) or other type of AM file for use by the AM machine 102. In some examples, the AM formatter 126 includes a slicer that creates or defines each of the layers to be built by the AM machine 102 and thus provides instructions for building the objects 116a - 116n according to the layout. In other examples, the AM formatter 126 can perform one or more other processes (e.g., numerical control (NC) deposition control) to format the layout to be built by the AM machine 102. In other examples, the build file 108 can include an unformatted version of the layout and the shape of the objects, and the AM machine 102 can perform any formatting to create instructions for creating the objects 116a - 116n (e.g., instructions for a laser).

[0047] Once the build file 108 is generated, the AM machine 102 can build the objects 116a - 116n on the substrate 106 according to the layout defined by the build file 108. In some examples, the build file 108 is transferred to the AM machine 102 via a wired or wireless connection (e.g., an intranet system of a processing or manufacturing facility). In some examples, the build file 108 is transferred to the AM machine 102 via a storage medium (e.g., a thumb drive, CD, etc.). In other examples, the computer 112 can be a computer or workstation associated with the AM machine 102 to facilitate operation of the AM machine 102, and thus, the build file 108 is not transferred outside of the computer 112.

[0048] After the objects 116 - 116n are built or formed on the substrate 106, one or more post - manufacturing processes are performed on the objects 116 - 116n via the post - manufacturing machine 104 and the objects are removed from the substrate 106. The post - manufacturing processes and the removal are performed according to the order defined by the layout and sequence determiner 124. In some examples, one or more post - manufacturing processes can be performed simultaneously on multiple objects 116a - 116n on the substrate 106. For example, after the objects 116a - 116n are built on the substrate 106, the substrate 106 (along with the associated objects 116a - 116n) can be sent to a depowdering unit to depowder the substrate 106, can be sent to a washer for cleaning, can be sent to a heater for heat treatment, can be sent to a 3D scanner or CMM to identify / confirm the measurements and shape of the objects 116 - 116n, etc. Thus, in some examples, one or more post - manufacturing processes can be performed on multiple ones of these objects 116 - 116n before removing the objects 116 - 116n in sequence (and / or performing additional post - manufacturing processes on the objects 116 - 116n).

[0049] In some examples, the layout and sequence determiner 124 can determine the layout and sequence based on a common post - manufacturing process to be performed on multiple ones of the objects 116a - 116n. For example, the sequence can include performing the post - manufacturing process on multiple objects among the objects 116a - 116n that require the same post - manufacturing process simultaneously or in an immediate sequence (e.g., using a specific cutter) before further processing the objects 116a - 116n and / or removing the objects 116a - 116n, rather than performing every processing sequence for each individual one of the objects 116a - 116n. In some examples, the object files 114a - 114n and / or the processing files 117a - 117n of the objects 116a - 116n can define a separate or discrete tool - path volume for each of the post - manufacturing processes to be performed on the corresponding object, rather than defining one total tool - path volume for all the tool paths used for a certain object. In some such examples, the layout and sequence determiner 124 can consider the individual tool - path volumes for each of the post - manufacturing processes to be performed on each of the objects 116a - 116n when determining the layout and sequence to ensure that no collisions occur when using the same post - manufacturing process to process multiple ones of the objects 116a - 116n simultaneously or in sequence. Thus, instead of implementing a sequence where the substrate 106 is sent back to the same post - manufacturing machine at different times, the sequence can include performing the post - manufacturing processes on the corresponding objects simultaneously or in an immediate sequence (depending on space limitations), which improves efficiency and productivity.

[0050] In some examples, build file generator 110 includes a machining file generator 128 that generates a machining file 130 for the build (e.g., the batch of objects on substrate 106), the machining file 130 including the determined order. The machining file 130 can be stored in memory 120 (e.g., associated with the build file 108). The machining file 130 can be transferred (via a wired or wireless connection) to a post-manufacturing machine 104, which can perform post-manufacturing processes on objects 116a-116n according to the order. In some examples, the machining file 130 includes individual machining files 117a-117n for objects 116a-116n on substrate 106, such that the post-processing machine 104 can perform the specified post-manufacturing processes according to the corresponding machining files 117a-117n. In some examples, the machining file generator 128 generates one or more inspection files associated with the build and / or transfers the one or more inspection files together with the machining file 130. The inspection files can include instructions for 3D scanning or CMM programs, e.g., the instructions can occur before or after removing one or more of the objects 116a-116n from the substrate 106. The inspection files can be used to ensure that the objects 116a-116n are built (e.g., by the AM machine 102) according to appropriate specifications (e.g., within a threshold) before starting one or more other post-manufacturing processes (e.g., machining), and / or that the objects 116a-116n meet their final dimensional specifications (e.g., conform to a threshold) before being removed from the substrate 106.

[0051] Figure 6 is a top view showing exemplary objects to be built on substrate 106. Specifically, Figure 6 shows nine objects 116a-116i. For illustrative purposes, the tool path volume around each of the objects 116a-116i is shown as a dashed line. For example, the tool path volume can be obtained from the machining files 117a-117i associated with the objects 116a-116i and / or defined by the volume definer 122 ( Figure 1 ). As disclosed herein, the tool path volume represents the space around the corresponding objects 116a-116i required for one or more post-manufacturing processes to be performed on the objects 116a-116i. In the example shown, the first object 116a and the second object 116b are of the same type of object, and the third object 116c, the fourth object 116d, the seventh object 116g, and the eighth object 116h are of the same type of object. By observing Figure 6It is understood that the tool path volumes around objects 116a - 116i create relatively large areas, while the substrate 106 has a relatively small area. If objects 116a - 116i were to be spaced apart on substrate 106 such that no tool path volumes overlap, only a few components could be built, or a much larger substrate and AM machine would be required. The layout and sequence determiner 124 determines a layout and removal sequence such that objects 116a - 116i can be post - processed and removed without interfering with each other, while still arranging these objects in a relatively dense spatial arrangement to fit the maximum number of objects on the same substrate 106.

[0052] Figure 7 An exemplary layout 700 determined by the layout and sequence determiner 124 is shown. The use of the build file generator 110 enables objects 116a - 116i to be densely arranged on substrate 106 in a layout that would otherwise not be achievable. As shown, many of the objects 116a - 116i are set within (or partially within) the tool path volumes of other objects 116a - 116i. For example, according to layout 700, the first object 116a is set within the tool path volume associated with the second object 116b. However, because objects 116a - 116i are removed in sequence, the tool path volume of each subsequent object is opened. An example sequence for post - processing and removal of objects 116a - 116i can be, for example, (1) the first object 116a, (2) the second object 116b, (3) the third object 116c, (4) the fourth object 116d, (5) the fifth object 116e, (6) the sixth object 116f, (7) the seventh object 116g, (8) the eighth object 116h, and (9) the ninth object 116i. In some examples, as disclosed herein, an object can have multiple tool path volumes (which may have associated objects), and the layout and sequence determiner 124 can select between different tool path volumes within the tool path volumes to create the densest layout with other objects. For example, as Figure 7 shown, the tool path volumes of the seventh object 116g and the eighth object 116h are opposite compared to the tool path volumes of the third object 116c and the fourth object 116d. Thus, in some examples, multiple tool path volumes (or different orientations of the same tool path volume) are analyzed by the layout and sequence determiner 124 to determine the optimal arrangement of the objects.

[0053] For example, Figures 8A - 8J An exemplary sequence for processing and / or removing objects 116a - 116i from substrate 106 in sequence (via one or more post - manufacturing processes) is shown. For illustrative purposes, in the example Figures 8A - 8JThe tool path volume is also shown in dashed lines. As described above, it is assumed that, for example, the first object 116a is the first object to be post-processed (if post-manufacturing processes are required) and removed from the substrate 106 in this sequence. As Figure 8A shown, no other objects are disposed within the tool path volume of the first object 116a. Thus, post-manufacturing processes for the first object 116a can be performed on the first object 116a without the risk of tool collisions. After performing the post-manufacturing processes on the first object 116a, the first object 116a is removed from the substrate 106, as Figure 8B shown. The first object 116a can be removed via the same post-manufacturing machine that performs the post-manufacturing processes (e.g., Figure 4 the CNC machine 400) or a tool on another post-manufacturing machine (e.g., a grooving tool, a milling machine, etc.).

[0054] Once the first object 116a is removed from the substrate 106, the tool path volume associated with the second object 116b is cleared. Then, post-manufacturing processes to be performed on the second object 116b can be performed on the second object 116b (e.g., which can be the same as the post-manufacturing processes performed on the first object 116a). Then, similar to the first object 116a, the second object 116b is removed from the substrate 106 (e.g., via a grooving tool, a milling machine, etc.), and the exemplary sequence continues. As Figures 8A - 8J shown, whenever one of the objects 116a - 116i is processed and removed from the substrate 106, the tool path volume of the next object in the sequence is cleared. Although in this example, nine objects are built on the substrate 106, in other examples, more or fewer objects can be built on the substrate 106. In some examples, only two objects are built on the same substrate.

[0055] In some examples, when removing one or more of the objects 116 - 116i from the substrate 106, the substrate 106 can be flipped or tilted to allow the corresponding objects 116a - 116i to fall into a collection device, such as a pick-and-place device or an improved chip evacuation device. In some examples, the objects 116a - 116i can be protected to prevent damage to the objects 116a - 116i when removing and / or collecting the objects 116a - 116i. For example, in some cases, one or more protective covers (e.g., corrugated polymer socks) can be placed on one or more of the objects 116a - 116i (e.g., via an operator or an automated machine) before removing the corresponding objects 116a - 116i from the substrate 106. Then, when the objects 116a - 116i are removed from the substrate 106, the objects 116a - 116i are protected from potential damage when falling from the substrate 106.

[0056] In another example, protective foam can be sprayed onto objects 116a - 116i. For example, Figure 9A and 9B illustrate an example machine 900 that can be used to spray protective foam 902 onto one or more of the objects 116 - 116i on the substrate 106. In Figure 9A and Figure 9B the objects 116a - 116i depicted are not exactly the same or in the same positions as those shown in Figures 8A - 8J but are depicted for illustrative purposes only. For example, the machine 900 can correspond to one of the post - manufacturing machines 104( Figure 1 ). In the example shown, the machine 900 includes a movable nozzle 904 that sprays the protective foam 902 (shown as moving between Figure 9A and 9B ). The protective foam 902 can harden or semi - harden to provide a buffer layer on the surfaces of the objects 116a - 116i. The protective foam 902 can be, for example, expanded polyurethane foam, dual foam, and / or other types of foam. In some examples, a foam is selected that does not leave a residue on the objects 116a - 116i after being removed (e.g., dissolved). One or more post - manufacturing processes can be performed on the objects 116a - 116i even with the protective foam 902. In this way, the protective foam 902 remains attached to the unprocessed areas on the objects 116 - 116i. The protective foam 902 protects the objects 116a - 116i when the objects 116a - 116i are removed from the substrate 106 and collected (e.g., dropped into a collection device). Additionally, the protective foam 902 can also reduce chatter in relatively large (taller) components and / or dampen machining chatter or vibration during post - manufacturing processes. Then, once the objects 116a - 116i are removed, the protective foam 902 can be removed. For example, the protective foam 902 can be a soluble material (e.g., water - soluble) that dissolves in a liquid solution (e.g., a non - toxic solvent). In other examples, the protective foam 902 can be removed via media spraying.

[0057] In some examples, instead of using the layout and order determiner 124 to determine the layout and order, the layout and / or order can be determined manually by a user. For example, the build file generator 110 can display an image of the substrate 106 and the plurality of objects 116a - 116n on the display screen of the computer 112 to enable the user to position the objects 116a - 116n on the substrate 106 in a desired layout (e.g., by clicking and dragging). The objects 116a - 116n can be displayed as 2D or 3D representations and have a toolpath volume around the respective objects 116a - 116n such that the user can see how the objects 116a - 116n are positioned relative to each other and the toolpath volumes of the other objects 116a - 116n. As disclosed in accordance with the teachings of the present disclosure, the user can select one or more of the objects 116a - 116n and position one or more of the objects 116 - 116n in a layout on the substrate 106 in which one or more of the objects 116a - 116n are disposed within the toolpath volume of one or more of the objects 116a - 116n. The user can also select the order of removal based on the layout. Then, when the desired layout is achieved, the build file generator 110 can remove the toolpath volume, the build file formatter 126 can create a build file 108 for the AM machine 102 based on the final layout, and the machining file generator 128 can create a machining file 130 based on the determined order.

[0058] Although in Figure 1 the example shown, the build file generator 110 is shown as part of the automated machining system 100 (e.g., part of a machining or manufacturing facility), in other examples, the build file generator 110 can be implemented by a computing device remote from the automated machining system 100. For example, the build file generator 110 can be implemented by a cloud-based computing device (e.g., a server, virtual machine, etc.) that is remote from the machining facility that includes the AM machine 102 and the post-manufacturing machine 104. In such an example, the build file generator 110 can transmit the generated build file and / or the determined order to the facility to be manufactured via the AM machine 102 and / or the post-manufacturing machine 104. In some examples, the computer 112 can be the same computing device that controls the operation of the AM machine 102 and / or the post-manufacturing machine 104. In other examples, one or more separate computing devices can be used to control the operation of the AM machine 102 and / or the post-manufacturing machine 104.

[0059] In addition, although in the illustrated example the post-manufacturing machine 104 is shown as separate from the AM machine 102, it should be understood that one or more of the post-manufacturing processes may be performed directly by the AM machine. For example, the AM machine 102 may include one or more tools for removing powder from the substrate 106, cleaning the objects 116a - 116n, cutting the material, drilling the material, etc. Thus, in some examples, after the objects 116 - 116n are built using the AM machine 102, the objects 116 - 116n (along with the substrate 106) remain in the AM machine 102 for one or more post-manufacturing processes.

[0060] In addition, although in some examples disclosed herein the toolpath volume is defined as the volume or 3D space around the respective object, in other examples, a toolpath region or zone having only two dimensions may be implemented. For example, a toolpath region or zone defined by X, Y coordinates may be used to define a region or zone relative to the respective object without considering the Z direction.

[0061] In some examples, one or more parts of the sequence or order (e.g., as part of the machining file 130) are sent to the post-manufacturing machine 104 to perform post-manufacturing processes and removals according to the sequence. In other examples, the sequence of post-manufacturing processes and removal of objects from the substrate is included in the build file 108. In such examples, the build file 108 (and the sequence) may be sent to the post-manufacturing machine 104 (and / or the machine for removing the objects).

[0062] As disclosed herein, in some examples, the build file generator 110 selects a subset (e.g., a first batch) of the objects 116a - 116n to be built on the substrate 106. The example build file generator 110 may continue to generate build files for the remaining objects among the objects 116a - 116n until all work orders are satisfied. In addition, in some examples, multiple AM machines may be implemented in the automated machining system 100. Thus, in some examples, multiple AM processes may be used simultaneously to build objects.

[0063] Although Figure 1 shows an example manner of implementing the example build file generator 110, Figure 1 one or more of the elements, processes, and / or devices shown in Figure 1The example object file manager 118, example volume definer 122, example layout and order determiner 124, example AM formatter 126, example machining file generator, and / or more generally example build file generator 110 may be implemented by hardware, software, firmware, and / or any combination of hardware, software, and / or firmware. Thus, for example, any one of the example object file manager 118, example volume definer 122, example layout and order determiner 124, example AM formatter 126, example machining file generator 128, and / or more generally example build file generator 110 may be implemented by one or more analog or digital circuits, logic circuits, programmable processors, application specific integrated circuits (ASICs), programmable logic devices (PLDs), and / or field programmable logic devices (FPLDs). When reading any of the apparatus or system claims of this patent to cover pure software and / or firmware implementations, at least one of the example object file manager 118, example volume definer 122, example layout and order determiner 124, example AM formatter 126, and / or example machining file generator 128 is hereby expressly defined to include a non-transitory computer readable storage device or storage disk containing software and / or firmware, such as a memory, digital versatile disk (DVD), compact disc (CD), Blu-ray disc, etc. Further, Figure 1 the example build file generator 110 may include one or more elements, processes, and / or devices that supplement or replace those shown in Figure 1 and / or may include more than one of any one or all of the shown elements, processes, and devices.

[0064] In Figure 10 is shown a flowchart representing exemplary machine readable instructions for implementing Figure 1 the build file generator 110. In this example, the machine readable instructions include a program for execution by a processor (such as the processor 1212 shown in the exemplary processor platform 1200 discussed below in connection with Figure 12 ). The program may be embodied in software stored on a non-transitory computer readable storage medium (such as a CD-ROM, floppy disk, hard drive, digital versatile disk (DVD), Blu-ray disc, or memory associated with the processor 1212), but the entire program and / or portions thereof may alternatively be executed by a device other than the processor 1212 and / or embodied in firmware or dedicated hardware. Further, although reference is made to Figure 10The flowcharts shown describe exemplary procedures, but many other methods for implementing the exemplary build file generator 110 may alternatively be used. For example, the order of execution of the blocks may be changed, and / or some of the described blocks may be changed, eliminated, or combined. Additionally or alternatively, any one or all of the blocks may be implemented by one or more hardware circuits (e.g., discrete and / or integrated analog and / or digital circuits, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), comparators, operational amplifiers (op-amps), logic circuits, etc.) configured to perform the corresponding operations without executing software or firmware).

[0065] As described above, Figure 10 the exemplary process may be implemented using encoded instructions (e.g., computer and / or machine readable instructions) stored on a non-transitory computer and / or machine readable medium such as a hard disk drive, flash memory, read only memory, optical disk, digital versatile disk, cache, random access memory, and / or any other storage device or storage disk in which information is stored for any duration (e.g., an extended period of time, permanently, for brief instances, for temporary buffering, and / or for caching information). Figure 10 the exemplary process. As used herein, the term non-transitory computer readable medium is expressly defined to include any type of computer readable storage device and / or storage disk and to exclude propagating signals and to exclude transmission media. "Comprising" and "including" (and all forms and tenses thereof) are used herein as open-ended terms. Thus, whenever a claim lists any form of "comprising" or "including" (e.g., comprises, includes, comprising, including, etc.) followed by any content, it will be understood that additional elements, terms, etc. may exist without falling outside the scope of the corresponding claim. As used herein, when the phrase "at least" is used as a transitional term in the preamble of a claim, it is open-ended in the same manner as the terms "comprising" and "including" are open-ended.

[0066] Figure 10 is a flowchart 1000 that represents example machine readable instructions that may be executed by a processor (e.g., the processor of computer 112) to implement Figure 1 the build file generator 110. Figure 10 The example process of Figure 1 is described in conjunction with Figure 1 the exemplary automated machining system 100 of Figure 10The exemplary process may be implemented in conjunction with other types of systems or manufacturing facilities having more or fewer AM machines and / or post-manufacturing machines.

[0067] At block 1002, the object file manager 118 receives a plurality of object files (e.g., work orders) corresponding to objects to be manufactured via an AM process, such as object files 114a - 114n. At block 1004, the object file manager 118 identifies or determines one or more tool path volumes associated with each of these objects. The tool path volume is associated with one or more tool paths for one or more post-manufacturing processes to be performed on the corresponding object. The tool path volume represents the boundaries or coordinates defining the space to be cleared by the tool of the post-manufacturing machine 104 to perform the post-manufacturing process on the corresponding object. In some examples, the object file manager 118 identifies the tool path volume from machining files 117a - 117n associated with one or more object files 114a - 114n. For example, the object files 114a - 114n and the associated tool path volumes may be stored in a library. In some examples, one or more of the objects may have multiple tool path volumes representing multiple possible tool paths. Additionally or alternatively, the example volume definer 122 may define one or more tool path volumes for one or more of the objects 116a - 116n. For example, the volume definer 122 may define a first tool path volume associated with a first object, a second tool path volume associated with a second object, and so on. In such an example, identifying the tool path volume at block 1004 includes defining volumes associated with one or more objects. In some examples, no post-manufacturing process is to be performed on the object. In such an example, no tool path volume is identified and / or defined.

[0068] At block 1006, the layout and order determiner 124 performs an analysis based on the tool path volume (and / or one or more other parameters) and selects two or more objects (e.g., a set of objects) among the objects 116a - 116n to be built on the same substrate, and determines the layout for the objects and the order of post-manufacturing and removal. For example, the layout and order determiner 124 may perform mathematical calculations analyzing the size of the objects 116a - 116n (and / or the possible orientations of the objects 116a - 116n), the size of one or more tool path volumes associated with each of the objects 116a - 116n, and / or the size of the substrate 106. Additionally or alternatively, one or more other factors may be considered when selecting the objects to be built on the same substrate, such as the request date of the object (e.g., the date the work order was issued), the promised date of the work order, the expected time to complete the object, etc. In some examples, the example layout and order determiner 124 determines a layout that maximizes the population density of the objects to be built (i.e., maximizes the number of objects on a given substrate).

[0069] In some examples, in a determined layout, one or more of the selected objects 116a - 116n are arranged within (or partially within) the tool - path volume of one or more other objects among the objects 116a - 116n. For example, as in the example layout 700 of Figure 7 , the first object 116a is set within the tool - path volume associated with the second object 116b. However, as disclosed above in connection with Figures 8A - 8J , the post - fabrication and removal order of the objects 116a - 116i is such that the corresponding tool - path volumes can be emptied before the post - fabrication processes for the corresponding objects are performed.

[0070] At block 1008, the AM formatter 126 generates a build file 108 for the selected objects based on the determined layout. In some examples, the AM formatter 126 formats the build file 108 for a particular type of AM machine (e.g., generates instructions for creating each layer of the object). Once the build file 108 is generated, the build file 108 can be used by the AM machine 102 to create the objects on the substrate 106 according to the layout. At block 1010, the machining file generator 128 generates a machining file 130 that contains the post - fabrication and removal order of the objects. In some such examples, the machining file 130 is used by the post - fabrication machine 104 to perform the post - fabrication processes and removal of the objects. In other examples, the determined order can be included as part of the build file 108, which can alternatively be used by the post - fabrication machine 104. In some examples, the machining file generator 128 generates one or more inspection files before machining and / or removal, and the one or more inspection files can be used by one or more of the post - fabrication machines 104 (e.g., 3D scanners or CMMs) to ensure that the objects 116a - 116n are built according to their proper specifications.

[0071] Figure 11 is a flowchart 1100 that represents an example method that can be performed by an AM machine and one or more post - fabrication machines to build one or more objects in an order determined by a build file generator 110. Figure 11 The example process of Figure 1 is described in connection with the example automated machining system 100 having an AM machine 102 and a post - fabrication machine 104 of Figure 11 . However, in other examples, the example process of

[0072] At block 1102, an AM machine 102 builds objects 116a - 116n on a substrate 106 according to a build file 108 that defines the layout of the selected objects among the objects 116a - 116n. At block 1104, one of the post - manufacturing machines 104 (e.g., Figure 4 the CNC machine 400 of Figure 4 ) performs a first post - manufacturing process on the first object in the sequence among the objects 116a - 116n. The sequence can be part of a machining file 130 and / or the build file 108 and is provided to the post - manufacturing machine 104. For example, the post - manufacturing process can include machining the object (e.g., via

[0073] the CNC machine 400). In some examples, only one post - manufacturing process is performed on the first object in the sequence. In other examples, multiple post - manufacturing processes are performed on the first object in the sequence via the same post - manufacturing machine or different post - manufacturing machines.

[0074] After performing the post - manufacturing process on the first object in the sequence, at block 1106, the first object is removed from the substrate 106 according to the sequence. For example, a grooving tool can be used to remove the first object from the substrate 106. The same post - manufacturing machine can be used to remove the first object from the substrate 106. For example, the CNC machine 400 that performs the first post - manufacturing process on the first object can also use a grooving tool or a milling tool to remove the first object from the substrate 106. Thus, in some examples, the substrate 106 remains with the same machine that previously performed the post - manufacturing process at block 1104. In other examples, the removal operation is performed by a different post - manufacturing machine. Thus, in some examples, the substrate 106 can be transferred (e.g., via automated equipment) to another machine to facilitate the removal of the first object. Figure 4 the CNC machine 400 of

[0075] At block 1112, the example method includes determining whether there are more objects on the substrate to be processed and / or removed. If there are more objects, the example method returns to blocks 1108 and 1110 and performs one or more post-manufacturing processes on the next object in sequence and / or removes the objects in sequence. The example processes of blocks 1108 - 1112 can continue until all objects have been processed and / or all objects have been removed from the substrate 106. Although in the illustrated example the objects are removed after the associated post-manufacturing processes have been performed on the objects, in other examples the sequence can include performing one or more post-manufacturing processes on a plurality of the objects before removing the objects.

[0076] In some examples, an initial post-manufacturing process that may occur before removing the first object at block 1106 includes spraying one or more of the objects 116a - 116n with protective foam. The protective foam can be sprayed manually or with a machine (such as machine 900 of FIG. 9). The protective foam can provide a buffer layer for the objects 116a - 116n to prevent damage to the objects when removing the objects 116a - 116n from the substrate 106 and collecting the objects.

[0077] Although Figure 10 and 11 the exemplary processes are described in connection with an AM-type process of creating objects on a substrate, the exemplary processes can similarly be performed using other types of processing processes that can produce objects on an adjacent substrate. For example, alternatively a large-capacity CNC machine or a casting process can be used to build the objects on the substrate. The exemplary layout and sequence determination and post-manufacturing / removal processes disclosed herein can similarly be used to enable components to be produced on a substrate in a more compact manner and remain on the substrate during the post-manufacturing processes, similar to the examples disclosed herein. Thus, the examples disclosed herein can be applied to other types of manufacturing processes besides AM.

[0078] Figure 12 is constructed to execute Figure 10 the instructions to implement Figure 1 is a block diagram of an exemplary processor platform 1200 of a build file generator 10. The processor platform 1200 can be, for example, a server, a personal computer (e.g., Figure 1 computer 112), a mobile device (e.g., a cell phone, a smart phone, a tablet computer such as an iPad TM or the like, a personal digital assistant (PDA), or any other type of computing device).

[0079] The processor platform 1200 of the illustrated example includes a processor 1212. The processor 1212 of the illustrated example is hardware. For example, the processor 1212 can be implemented by one or more integrated circuits, logic circuits, microprocessors, or controllers from any desired family or manufacturer. The hardware processor can be a semiconductor-based (e.g., silicon-based) device. In this example, the processor 1212 can implement Figure 1 the example object file manager 118, the example volume definer 122, the example layout and sequencing determiner 124, the example AM formatter 126, the example machining file generator 128, and / or more generally, the example build file generator 110.

[0080] The processor 1212 of the illustrated example includes local memory 1213 (e.g., a cache). The processor 1212 of the illustrated example communicates with main memory including volatile memory 1214 and non-volatile memory 1216 via a bus 1218. The volatile memory 1214 can be implemented by synchronous dynamic random access memory (SDRAM), dynamic random access memory (DRAM), RAMBUS dynamic random access memory (RDRAM), and / or any other type of random access memory device. The non-volatile memory 1216 can be implemented by flash memory and / or any other desired type of memory device. Access to the main memory 1214, 1216 is controlled by a memory controller.

[0081] The processor platform 1200 of the illustrated example also includes interface circuitry 1220. The interface circuitry 1220 can be implemented by any type of interface standard, such as an Ethernet interface, a universal serial bus (USB), and / or a PCI Express interface.

[0082] In the illustrated example, one or more input devices 1222 are connected to the interface circuitry 1220. The input devices 1222 allow a user to input data and / or commands into the processor 1212. The input devices can be implemented by, for example, audio sensors, microphones, cameras (still or video), keyboards, buttons, mice, touchscreens, trackpads, trackballs, isopoints, and / or voice recognition systems.

[0083] One or more output devices 1224 are also connected to the interface circuitry 1220 of the illustrated example. The output devices 1224 can be implemented by, for example, display devices (e.g., light-emitting diodes (LEDs), organic light-emitting diodes (OLEDs), liquid crystal displays, cathode ray tube displays (CRTs), touchscreens, haptic output devices, printers, and / or speakers). Thus, the interface circuitry 1220 of the illustrated example generally includes a graphics driver card, a graphics driver chip, and / or a graphics driver processor.

[0084] The interface circuit 1220 of the illustrated example also includes a communication device (such as a transmitter, receiver, transceiver, modem, and / or network interface card) to facilitate data exchange with an external machine (such as any type of computing device) via a network 1226 (e.g., Ethernet connection, digital subscriber line (DSL), telephone line, coaxial cable, cellular telephone system, etc.).

[0085] The processor platform 1200 of the illustrated example also includes one or more mass storage devices 1228 for storing software and / or data. Examples of such mass storage devices 1228 include floppy disk drives, hard disk drives, optical disk drives, Blu-ray disk drives, RAID systems, and digital versatile disk (DVD) drives. In this example, the mass storage device 1228 may implement the memory 120.

[0086] Figure 10 The encoded instructions 1232 can be stored in the mass storage device 1228, volatile memory 1214, non-volatile memory 1216, and / or on a removable tangible computer-readable storage medium (such as a CD or DVD).

[0087] In accordance with the foregoing, it can be appreciated that exemplary methods, apparatuses, systems, and articles for generating build files that define high-density layouts of objects have been disclosed. Accordingly, more objects can be built or formed using an AM machine in a shorter period of time. Additionally, the exemplary methods, apparatuses, systems, and articles disclosed herein enable an object to remain fixed to a substrate during one or more post-manufacturing processes, which may be advantageous, for example, for objects having complex geometries that are not easily fixed to post-manufacturing machines.

[0088] Although certain exemplary methods, apparatuses, systems, and articles have been described herein, the scope of this patent is not limited thereto. Instead, this patent covers all methods, apparatuses, systems, and articles that fall literally or under the doctrine of equivalents within the scope of the appended claims.

Claims

1. A build file generator, comprising: An object file manager, the object file manager being configured to: Identify a first tool path volume associated with a first object to be formed via an additive manufacturing (AM) process, the first tool path volume being based on a first tool path of a first post-manufacturing process to be used on the first object; Identify a second tool path volume associated with a second object to be formed via the AM process, the second tool path volume being based on a second tool path of a second post-manufacturing process to be used on the second object; And A layout determiner, the layout determiner being configured to: Determine a layout of the first object and the second object to be formed on a substrate via the AM process based on the first tool path volume and the second tool path volume, according to which the first object is at least partially disposed within the second tool path volume; And Determine an order defining one or more post-manufacturing processes to be performed on the first object and the second object and removal of the first object and the second object from the substrate, the order indicating that the first post-manufacturing process will be performed on the first object and the first object will be removed from the substrate before the second post-manufacturing process is performed on the second object.

2. The build file generator according to claim 1, wherein At least one of the first post-manufacturing process or the second post-manufacturing process is a subtractive manufacturing process.

3. The build file generator according to claim 1, wherein Further comprising an AM formatter for generating a build file based on the layout, the build file to be used by an AM machine to build the first object and the second object.

4. A method of generating an object, the method comprising: Build a first object and a second object on a substrate via an additive manufacturing (AM) machine according to a build file, the build file defining a layout of the first object and the second object on the substrate, according to which the second object is at least partially disposed within a first tool path volume associated with the first object, the first tool path volume being based on a first tool path of a first post-manufacturing process to be performed on the first object; While both the first object and the second object are fixed to the substrate, perform a second post-manufacturing process on the second object via a second post-manufacturing machine; After performing the second post-manufacturing process on the second object, remove the second object from the substrate; And After removing the second object from the substrate, while the first object is fixed to the substrate, perform the first post-manufacturing process on the first object via a first post-manufacturing machine.

5. The method according to claim 4, wherein According to the layout, the first object is not disposed within a second tool path volume associated with the second object, the second tool path volume being based on a second tool path of a second post-manufacturing process to be performed on the second object.

6. The method according to claim 4, wherein The first post-manufacturing process is a subtractive manufacturing process.

7. The method according to claim 6, wherein The first post-manufacturing machine is a computer numerical control (CNC) machine.

8. The method according to claim 4, wherein The AM machine is a powder melting forming machine.

9. The method according to claim 4, wherein Further comprising: Before removing the second object from the substrate, spray at least one of the first object or the second object with protective foam.

10. A non-transitory machine-readable storage medium comprising instructions that, when executed, cause at least one machine to perform at least the following operations: Identify a first tool path volume associated with a first object to be formed via an additive manufacturing (AM) process, the first tool path volume being based on a first tool path of a first post-manufacturing process to be performed on the first object; Identify a second tool - path volume associated with a second object to be formed via the AM process, the second tool - path volume being based on a second tool - path of a second post - manufacturing process to be performed on the second object; Generate a build file for the AM machine based on the first tool - path volume and the second tool - path volume, the build file including a layout of the first object and the second object to be formed on a substrate by the AM machine, wherein the first object is at least partially disposed within the second tool - path volume associated with the second object; And Determine an order of post - manufacturing processes and removals for the first object and the second object, the order indicating that the first post - manufacturing process will be performed on the first object and the first object will be removed from the substrate before the second post - manufacturing process is performed on the second object.

11. The non-transitory machine-readable storage medium according to claim 10, wherein The first post - manufacturing process and the second post - manufacturing process are post - manufacturing processes of the same type.

12. The non-transitory machine-readable storage medium according to claim 10, wherein At least one of the first post - manufacturing process or the second post - manufacturing process is a subtractive manufacturing process.

13. The non-transitory machine-readable storage medium according to claim 10, wherein The first object and the second object are objects of the same type.

14. The non-transitory machine-readable storage medium according to claim 10, wherein The instructions, when executed, further cause the at least one machine to select the first object and the second object from a plurality of objects to be formed on the substrate based on at least one of: the first tool - path volume, the second tool - path volume, a promised date of at least one of the first object or the second object, or a requested date of at least one of the first object or the second object, before generating the build file.

Citation Information

Patent Citations

  • Generation of three-dimensional objects

    US20170113414A1

  • Multi-tool manufacturing system

    WO2017044892A1