DYNAMICALLY CREATING THREE-DIMENSIONAL OBJECT FILES FOR COMPONENTS NEEDING TO BE REPLACED AT POINT OF NEED
20230021899 ยท 2023-01-26
Inventors
Cpc classification
International classification
Abstract
A method and system for dynamically generating object files for a component that needs to be replaced at time and location the component is needed. An operator can navigate a graphical user interface to select generic component types, representative of the overall component, and then generic configuration sub-types of the component. The operator is then able to input parameters to customize the component to their specific application. Design checking algorithms confirm the inputs are below predefined risk thresholds before generating the file for the component. The system enables less skilled operators (no computer aided design experience required) to create custom parts, while mitigating potential design risk. The object files (e.g., 3D object files) are then seamlessly sent to a 3-D printer's slicing algorithm and prepared for manufacture. The operator can then make the custom part when ready.
Claims
1. A method for generating an object file for a component that needs to be replaced at time and location the component is needed, the method comprising: presenting a user with images for a plurality of generic components that are available for local manufacturing; receiving a selection from the user of one of the plurality of generic components; receiving specific parameters from the user for the selected generic component to define a desired component that can be utilized in place of the component that needs to be replaced; analyzing the desired component against at least some subset of engineering best practices and design rules to determine if the desired component can be safely manufactured; and generating the object file for the desired component if the analyzing determines the desired component may be safely manufactured.
2. The method of claim 1, further comprising converting the object file into commands for producing the desired component on a manufacturing machine.
3. The method of claim 2, further comprising producing the desired component on the manufacturing machine from the commands for producing the desired component.
4. The method of claim 3, wherein the manufacturing machine is a 3D printer.
5. The method of claim 1, further comprising presenting the user with issues associated with the desired component if the analysis determines the desired component cannot be safely manufactured.
6. The method of claim 5, further comprising receiving modified specific parameters from the user.
7. The method of claim 1, further comprising determining if the desired component can be produced within a build envelope of a manufacturing machine, wherein the generating the object file is performed subsequent to a determination the desired component can be produced with the build envelope.
8. The method of claim 7, further comprising determining if the desired component can be split into two or more pieces without degradation if it cannot be produced as a single piece within the build envelope; and determining if the two or more pieces of the desired component can be produced together within the build envelope, wherein the generating the object file includes generating the object file for each of the two or more pieces.
9. The method of claim 1, further comprising presenting the user with images of a plurality of generic configurations of the selected generic component; and receiving a selection from the user of one of the plurality of generic configurations, wherein the receiving the specific parameters includes receiving the specific parameters for the selected generic configuration for the selected generic component.
10. The method of claim 1, further comprising presenting images of the desired component to the user to enable the user to confirm the desired component matches the component to be replaced, wherein the generating the object file is performed subsequent to the user confirming the desired component matches.
11. A system for generating an object file for a component that needs to be replaced at time and location the component is needed, the system comprising: a database containing information for a plurality of generic components available for local manufacturing; a user interface to enable communications with a user; a processor; and a computer readable storage medium storing instructions that when executed by the processor cause the processor to: present the user with images for the plurality of generic components that are available for local manufacturing; receive a selection from the user of one of the plurality of generic components; receive specific parameters from the user for the selected generic component to define a desired component that can be utilized in place of the component that needs to be replaced; analyze the desired component against at least some subset of engineering best practices and design rules to determine if the desired component can be safely manufactured; and generate the object file for the desired component if the analyzing determines the desired component may be safely manufactured.
12. The system of claim 11, wherein the instructions further cause the processor to convert the object file into commands for producing the desired component on a manufacturing machine.
13. The system of claim 12, further comprising a manufacturing machine.
14. The system of claim 13, wherein the manufacturing machine is a 3D printer.
15. The system of claim 11, wherein the instructions further cause the processor to present the user with issues associated with the desired part if the analysis determines the desired component cannot be safely manufactured.
16. The system of claim 11, wherein the instructions further cause the processor to determine if the desired part can be produced within a build envelope of a manufacturing machine, wherein the object file is generated subsequent to a determination the desired component can be produced within the build envelope.
17. The system of claim 16, wherein the instructions further cause the processor to determine if the desired part can be split into two or more pieces without degradation if it cannot be produced as a single piece within the build envelope; and determine if the two or more pieces of the desired component can be produced together within the build envelope, wherein the generating the object file includes generating the object file for each of the two or more pieces.
18. The system of claim 11, wherein the instructions further cause the processor to present the user with images of a plurality of generic configurations of the selected generic component; and receive a selection from the user of one of the plurality of generic configurations, wherein the specific parameters received from the user include specific parameters for the selected generic configuration for the selected generic component.
19. The system of claim 11, wherein the instructions further cause the processor to present images of the desired component to the user to enable the user to confirm the desired component matches the component to be replaced, wherein the object file is generated subsequent to the user confirming the desired component matches.
20. A three-dimensional (3-D) printer for manufacturing a component that needs to be replaced at time and location the component is needed, the 3-D printer comprising an apparatus for manufacturing the component layer by layer; a processor coupled to a computer readable storage medium storing instructions that when executed by the processor causes the processor to: present a user with images for the plurality of generic components that are available for local manufacturing; receive a selection from the user of one of the plurality of generic components; receive specific parameters from the user for the selected generic component to define a desired component that can be utilized in place of the component that needs to be replaced; analyze the desired component against at least some subset of engineering best practices and design rules to determine if the desired component can be safely manufactured; generate the object file for the desired component if the analyzing determines the desired component may be safely manufactured; and convert the object file into commands for the apparatus to produce the desired component.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The features and advantages of the various embodiments will become apparent from the following detailed description in which:
[0012]
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
DETAILED DESCRIPTION OF THE EMBODIMENTS
[0026] In the following detailed description of embodiments section for the present invention, exhaustive specific details are delineated to provide a comprehensive understanding of the invention. However, it is apparent to a person skilled in art that the embodiments of invention may be practiced with or without each specific detail. As appropriate, well-known methods, procedures, and components have been described with limited detail in order to maintain focus on the embodiments of the invention.
[0027] Furthermore, it is obvious that the invention is not limited to only these embodiments. Any number of changes, variations, modifications, substitutions and/or equivalents will be apparent to those skilled in the art, without derailing the scope of the invention.
[0028] The present invention provides a method and system for creating dynamically configurable three-dimensional object files at the point of need to be fabricated with additive manufacturing. The method and system enable the user to pick from pre-defined generic configurations of components and input the specific parameters for the application, which are checked against design rules, in order to produce a safe and manufacturable component. The method is applicable to additive manufacturing methods such as material extrusion, material jetting, binder jetting, powder bed fusion, vat polymerization, sheet lamination, or direct energy deposition, or the like, but could also be used to produce 3-D object files that utilize other manufacturing methods such as milling, drilling, turning, casting, and the like.
[0029]
[0030]
[0031] After the component has been designed, the design can be sent to a manufacturer. The manufacturer will make a determination whether the current design of the device can be manufactured within the constraints provided to them (e.g., timing, cost) 240. Typically, the manufacturer will quote a cost for the component to be fabricated based on delivery time and quantity, where faster times and lower qualities equate to higher cost. The manufacturer will also assess if the component design is manufacturable given the process. A design may not be able to be fabricated, for example, if a wall thickness is below the minimum capability of the manufacturing process. If there is an issue with the time or cost to manufacture the part, or the ability to manufacture the current design of the component (240 No), then the engineering team and the manufacturers may communicate therebetween 250. The communications may include ways to modify cost/schedule or to determine design changes that may be required for the component to be fabricated. Depending on the severity of the issue, the engineering team may have to reach back to the field technician for further information 220, greatly increasing the length of the timeline.
[0032] Once a determination is made that the component can be manufactured within the constraints provided (240 Yes), then the component can be manufactured at the requested quantity 260. Once manufactured, the manufacturer ships the component(s) to a defined destination 270. It should be noted that the shipping from the manufacturer may simply be an initial step in providing the component(s) to where they are needed. The components may need to be shipped several more times depending on how the logistics of the sustainment effort are networked. Upon receiving the component(s), the technician can install the component 140 in order to return the system to operation.
[0033] Often, the components in these situations are not overly complex in nature, but are very specific in their configuration, requiring engineering expertise to draft, design, evaluate structurally, evaluate material selection, or the like, to confirm the component will fulfill the designated requirements. The workflow 200 is illustrated with a sustainment example that is mechanical in nature but can be applied to other uses cases as well. Other explanations could be where the system could be the human body, where the same process would be required to replace a tooth or create a retainer in the medical industry, a broken part on an oil drilling rig, a broken arm rest on a transportation system, or the like.
[0034]
[0035] The process flow 300 is not limited to the specific steps and specific order described above. Rather steps may be added, deleted, modified, combined, split apart, or rearranged without departing from the current scope. One or more algorithms may be utilized to perform the processing functions defined therein. The one or more algorithms can be written in a programming language such as Python, Java, C#, C, C++, R, or the like. The algorithms may be stored in one or more storage mediums. The storage medium(s) may located in (a) in a device manufacturing the components (3-D printer), (b) a computing device connected (via wired or wireless connection) to the manufacturing device, (c) a cloud-based medium, or (d) some combination thereof. The algorithms may be executed by one or more processors with access to the storage medium(s). The processor(s) may perform the defined functions when executing the algorithms. The processor(s) may be located in (a) a device manufacturing the components (3-D printer), (b) a computing device connected (via wired or wireless connection) to the manufacturing device, (c) a cloud-based medium, or (d) some combination thereof.
[0036] While the process flow 300 and the dynamic inventory system can be most effectively leveraged by being implemented with an additive manufacturing system, it is not limited to just additive manufacturing systems, and could be included in other forms such as integration into a computer numerical controlled milling machine, a standalone system, or the like.
[0037] Because the technician can interface with the dynamic inventory system directly, the process of producing a sustainment component is significantly faster given there are fewer required interactions. Additionally, although not specifically required, technologies such as 3-D printing can be leveraged to manufacture the part on site, further speeding up the process. Due to the design rules checking the input parameters in real time, the risk of a technician creating a part with insufficient design methodologies is mitigated. The dynamic inventory system may be designed so that the technician does not need to be familiar with computer aided design (CAD) software in order to utilize the system to design the component(s).
[0038]
[0039] After selecting the generic component configuration type, the system operator can begin inputting the specific design parameters for the specific component being created 420. These parameters may include dimensions, environmental temperature ranges, structural loads, chemical exposures, or the like. The system then determines if all the appropriate inputs required to make the component have accurately been provided 425. If all the inputs have not accurately been provided (425 No), then the system notifies the operator that additional or corrected information is required so that the operator can enter the missing information or correct the inaccurate information 420. If all the inputs have accurately been provided (425 Yes), then the system will perform a design check on the information provided to determine if the design is sufficient 320.
[0040] The design checking algorithms are to ensure that risk is mitigated for the custom configuration entered by the system operator 420. The design rules are defined based on best known data and engineering practices. This may include checks such as ensuring a hole is positioned correctly, ensuring a component is sufficiently thick, maintain material compatibility with environmental conditions, or the like. If the component does not pass the design check (320 No), then the operator will be alerted that one or more parameters is insufficient and must be evaluated. The design checking algorithms may identify the issue, such as component too thin, holes in component too large or too close to edge, or the like. The checking algorithms may suggest possible inputs that conform to the rules, such as a minimal thickness, a material with a sufficient chemical resistance, maximum hole size, minimum distance hole must be from edge, or the like. Upon receiving the notification that the component did not pass the design, the user will then have to update at least some of the design parameters 420.
[0041] If the component passes the design check (320 Yes), then the system will proceed with generating the 3-D object file 330. Initially, the system may prepare a 3-D illustration of the 3-D object generated for the component and present the illustration to the system operator 450. The system operator may preview the 3-D illustration of the component to confirm it represents the desired component 455. It is possible that even though all the parameters have been accurately provided (425 Yes) and that the design passed the design check (320 Yes), that the component may be incorrect for the intended outcome. That is, when previewing the 3-D illustration of the component, the system operator may realize that, for example, a hole in a bracket is too small for a particular bolt size, or a shaft that is not long enough. If the previewed 3-D illustration of the component does not represent the component as intended by the system operator (455 No), then the system operator can navigate back to the parameter inputs 420 and correct one or more of the parameters.
[0042] If the previewed 3-D illustration of the component represents the component as intended by the system operator (455 Yes), then the system will check to make sure the design will fit within the build envelope of the given manufacturing machine the process is configured for 460. If the 3-D model can fit in the desired machine's build envelope (460 Yes), then the 3-D model is saved 465. The saved 3-D model can be exported, emailed, downloaded, or the like. If the 3-D model cannot fit in the desired machine's build envelope (460 No), then the system determines if the configuration allows the 3-D model to be split into multiple pieces without creating risk 470.
[0043] If the component cannot be split in a manner that does not create unnecessary risk (470 No), then the operation must be aborted 475 because the part is too large for the designated machine, and is either not possible to manufacture, or requires an alternative machine, method, or the like. If the component can be split in a manner that does not create unnecessary risk (470 Yes), then the model will be split based on predetermined methods 480. The split models can then be saved 485. The saved 3-D split models can be exported, emailed, downloaded, or the like.
[0044] The process flow 400 is not limited to the specific steps and specific order described above. Rather steps may be added, deleted, modified, combined, split apart, or rearranged without departing from the current scope. One or more algorithms (e.g., written in for example Python, Java, C#, C, C++, R) may be utilized to perform the processing functions defined therein. The algorithms may be stored in storage medium(s) and executed by processor(s). The storage medium(s) and the processor(s) may be located in (a) a device manufacturing the components (3-D printer), (b) a computing device connected (via wired or wireless connection) to the manufacturing device, (c) a cloud-based medium, or (d) some combination thereof. While the process flow 400 and the dynamic inventory system can be most effectively leveraged by being implemented with an additive manufacturing system, it is not limited to just additive manufacturing systems.
[0045]
[0046] The computing system 500 includes a file repository 512, the dynamic inventory system 514 and slicing software 516. The file repository 512 may include object files (STL files) for a plurality of components that were created and downloaded thereto. The components within the file repository 512 may have been created by individuals skilled in or familiar with CAD programs. The dynamic inventory system 514 provides a user unskilled/unfamiliar in CAD the ability to utilize a user interface to create custom components for certain standard type components as described above in
[0047] The control system 530 controls the operation of the 3-D printer. The control system 530 includes a mother board 532. The control system 530 may receive the G-code for the component to be made and based on the G-code provide control signals (logic) to the electrical system 550. The control signals may control various elements of the electrical system 550. The electrical system 550 may provide feedback signals to the control system 530 that the control system 530 utilizes to possibly modify the control signals.
[0048] The electrical system 550 includes drivers 552, motors 554 and other items 556 including, but not limited to, an extruder, hot bed, end stops temperature sensors and fans. The drivers 552 provide the necessary pulses to the motors 554. The motors 554 may include a motor for each axis (x, y, z) or one or more motors may be utilized alone or in conjunction to control movement in x, y and z directions. The control signals may control the operation of the other items 556 including, but not limited to when and where to have the extruder extrude the filament, what temperature to have the heat bed, and when to turn the fans on. The temperature sensors may provide temperature measurements to the control system 530 as part of the feedback provided to the control system 530.
[0049] The torque and speed of the motors 554 is provided to the mechanical system 570. The mechanical system may include a power transmission 572 that moves the extruder (shown under electrical system). The movement and operation of the extruder may result in the object (component) being created 574.
[0050]
[0051] The 3-D printer 600 includes a computing system 660 for providing the dynamic inventory system. The computing system 660 may include a user interface 665 (e.g., display, keyboard, mouse) that can be used by the technician to enter information about the component that they desire to produce. The computing system 660 may also include one or more processors and one of more processor readable storage mediums. The one or more storage mediums may include instructions that when executed by the processor(s) cause the processors to take specific actions (for example, those discussed above in
[0052] The computing system 660 may be part of the printer 600, may be one or more external components connected to the printer 600 or some combination thereof.
[0053]
[0054] The generic configurations 710-750 are not limited to those illustrated. The generic configurations of the bracket could include various arrangements of holes, slots or the like that may be fairly common therefore. The generic configurations can also include a variety of dimensional features (e.g., longer vertical portion, longer horizontal portion). Once the generic component (410 of
[0055]
[0056] The generic configurations 810-830 are not limited to those illustrated. The generic configurations of the gear could include various tooth types (e.g., size, style), hub types or the like that may be fairly common therefore. Once the generic component (410 of
[0057]
[0058] As described above, the dynamic inventory system enables a technician to select generic components, generic configurations for the components and then define specific parameters for the components. The specific parameters may be modifications to what the original component was based on conditions and/or actions that may have been taken in the field.
[0059]
[0060]
[0061]
[0062] A first example of a custom bracket 1100 is a bracket that would pass the design check. That is, the design parameters are with specification dimensions. The specifications may include, for example, the horizontal and vertical portions having a sufficient thickness, the various holes have diameters within an appropriate range, and the various holes are spaced apart from each other and the appropriate edges a sufficient distance. A second example of a custom bracket 1110 is a bracket that would not pass the design check as the component 1110 may be deemed neither structurally sufficient nor manufacturable. The component 1100 includes a hole in the vertical surface that is open to an edge thereof. The system may provide feedback to the user of the issue (open hole, hole too large for vertical portion) and may provide potential solutions to the issue (increase size of vertical portion, reduce size of hole).
[0063] A third example of a custom bracket 1120 is a bracket that would not pass the design check. For example, engineering best practices may suggest that the center of a hole should be a certain distance (e.g., at least one and a half diameters) from the edge of the component. Thus, while the hole in the vertical portion may be sufficiently sized for the size of the vertical portion, the placement of the hole is positioned too close to the edge. A fourth example of a custom bracket 1130 is a bracket that would not pass the design check. For example, engineering best practices may suggest that the centers of holes within a same surface should be a certain distance (at least one and a half diameters) from each other. The orientation of the holes on the horizontal surface are too close to one another (the holes actually overlap).
[0064] The example of components that fail the design check is not limited to those illustrated in
[0065]
[0066] The plate can be split along a stepped line 1240 to create a first side 1250 and a second side 1260 without compromising the primary role (prevent contact with wires) of the five-gang switch 1200. The split models 1250, 1260 can fit within the build envelope 1210 (470 Yes of
[0067] The dynamic inventory system has been described above regarding fairly simple mechanical parts that may be grouped into generic component types and generic configurations thereof and the number of specific parameters that may vary may be fairly limited. However, the system is not limited thereto. Rather the system could be utilized to provide a generic design that may involve specific inputs to meet the performance requirements for the component's application. In the certain cases, there may be components that do not require many variations in the generic component type (configurations) but may alter greatly from one customization to another. For example, in the medical industry there are many patient specific components that are of the same generic type of component but are specifically tailored to the individual patient.
[0068]
[0069] In this application, there may not be a huge catalog of generic component types (410 of
[0070] Although the disclosure has been illustrated by reference to specific embodiments, it will be apparent that the disclosure is not limited thereto as various changes and modifications may be made thereto without departing from the scope. The various embodiments are intended to be protected broadly within the spirit and scope of the appended claims.