Temperature prediction method for 3D printing, and system
By adjusting the time step of the temperature prediction time window and using the vector matrix method, the problem of low temperature prediction efficiency in 3D printing was solved, achieving more efficient and stable temperature prediction, and improving print quality and the accuracy of parameter settings.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- SUZHOU HELIO ADDITIVE INFORMATION TECH CO LTD
- Filing Date
- 2024-11-08
- Publication Date
- 2026-05-15
AI Technical Summary
In existing 3D printing technologies, temperature prediction calculations are inefficient and unstable, affecting print quality and parameter settings.
The calculation process is optimized by adjusting the time step of the temperature prediction time window and using vector and matrix methods for temperature prediction.
It improves the computational efficiency and stability of temperature prediction, reduces program execution time and memory usage, and enhances print quality and the accuracy of parameter settings.
Smart Images

Figure CN2024131002_15052026_PF_FP_ABST
Abstract
Description
3D Printing Temperature Prediction Methods and Systems Technical Field
[0001] This specification relates to the field of data processing technology, and in particular to a method and system for predicting temperature in 3D printing. Background Technology
[0002] Additive manufacturing (AM), also known as 3D printing, uses energy sources such as lasers, resistance heating, and electric arcs to melt materials and rapidly manufacture parts by stacking them layer by layer from the bottom up. During the printing process, the data on material temperature changes over time (also known as thermal history) is a key factor determining the mechanical properties of additive manufacturing materials and is the core of the additive manufacturing process. Accurately predicting material temperature changes during printing is of great significance for additive manufacturing process analysis, metallurgical analysis, stress-deformation analysis, process control, and the setting of printing parameters.
[0003] The information in the background section is merely information known only to the inventor and does not imply that such information had entered the public domain before the date of this application, nor does it imply that it can be considered prior art in this disclosure.
[0004] Summary of the Invention
[0005] This specification provides a method and system for predicting temperature in 3D printing. The time step of the temperature prediction time window can be adjusted before temperature prediction, thereby improving the calculation efficiency of material temperature prediction and ensuring the stability and accuracy of temperature prediction calculation.
[0006] Firstly, this specification provides a temperature prediction method for 3D printing, comprising: determining a temperature prediction time window based on the start time and time step of the current temperature prediction, wherein the time step is determined based on the printing length of a target printing unit located within the heat-affected zone of the unit being printed in the previous temperature prediction; determining the printing status of multiple printing units in the 3D model within the temperature prediction time window, wherein the printing status includes units being printed and units that have been printed; determining temperature prediction data of the multiple printing units within the temperature prediction time window; and outputting the temperature prediction data.
[0007] In some embodiments, determining the temperature prediction time window based on the start time and time step of the temperature prediction includes: taking the end time of the previous temperature prediction as the start time of the current temperature prediction; determining the target printing unit from the units that have been printed in the previous temperature prediction; determining a first duration and a second duration corresponding to the target printing unit, wherein the first duration is related to the length of the target printing unit and the moving speed of the print head, and the second duration is related to at least the length of the target printing unit, the density of the material, the specific heat capacity, and the thermal conductivity; taking the shorter of the first duration and the second duration as the time step of the current temperature prediction; and determining the end time of the current temperature prediction based on the start time of the temperature prediction and the time step, thereby determining the temperature prediction time window.
[0008] In some embodiments, determining the target printing unit from the units that have completed printing in the previous temperature prediction includes: determining the position coordinates of the units that have completed printing in the previous temperature prediction and the position coordinates of the units that are currently printing in the previous temperature prediction; determining the interval distance between the units that have completed printing in the previous temperature prediction and the units that are currently printing in the previous temperature prediction based on the position coordinates of the units that have completed printing in the previous temperature prediction and the units that are currently printing in the previous temperature prediction; and selecting the units whose interval distance is less than a first preset distance threshold from the units that have completed printing in the previous temperature prediction as the target printing unit.
[0009] In some embodiments, determining the target printing unit from the units that have completed printing in the previous temperature prediction includes: determining the cooling rate of the units that have completed printing in the previous temperature prediction; and selecting the units whose cooling rate is less than a preset cooling rate threshold from the units that have completed printing in the previous temperature prediction as the target printing unit.
[0010] In some embodiments, determining the target printing unit from the units that have completed printing in the previous temperature prediction includes: determining the printing time of the units that have completed printing in the previous temperature prediction; and selecting units whose time interval between the printing time of the units that have completed printing in the previous temperature prediction and the start time of the current temperature prediction is less than the heat-affected time as the target printing unit.
[0011] In some embodiments, determining the printing state corresponding to each printing unit among multiple printing units in a 3D model includes: determining the start printing time of each printing unit; and determining the printing state based on the start printing time.
[0012] In some embodiments, determining the printing status based on the start printing time includes: if the start printing time is within the temperature prediction time window, determining the printing status as the unit that is printing; or if the start printing time is before the temperature prediction time window, determining the printing status as the unit that has completed printing.
[0013] In some embodiments, determining the temperature prediction data of the plurality of printing units in the temperature prediction time window includes: determining the temperature prediction data of the plurality of printing units in the current temperature prediction time window based on a temperature prediction method corresponding to the printing state, wherein the temperature prediction method includes a first temperature prediction method corresponding to the unit that is printing and a second temperature prediction method corresponding to the unit that has completed printing, wherein the computational complexity of the first temperature prediction method is less than that of the second temperature prediction method.
[0014] In some embodiments, the printing status of the plurality of printing units is represented by vectors, wherein the vector value corresponding to the unit that is printing is a first state value, the vector value corresponding to the unit that has completed printing is a second state value, the second state value is different from the first state value, and the temperature prediction data is calculated by vectors, the temperature prediction data includes the product of the vectors of the printing status of the plurality of printing units and the vector corresponding to the temperature prediction method.
[0015] In some embodiments, the first state value is 1 and the second state value is 0.
[0016] In some embodiments, the temperature prediction method further includes: outputting temperature prediction curves of the plurality of printing units in a plurality of temperature prediction time windows.
[0017] Second aspect. This specification provides a computing device for temperature prediction in 3D printing, the computing device comprising: at least one storage medium storing at least one instruction set for performing temperature prediction processing for 3D printing; and at least one processor communicatively connected to the at least one storage medium, wherein, when the computing device is running, the at least one processor reads the at least one instruction set and executes the method described in any of the first aspects above according to the instructions of the at least one instruction set.
[0018] As can be seen from the above technical solutions, the temperature prediction method provided in this specification can automatically adjust the time step of the temperature prediction time window during temperature prediction. This reduces the number of calculations or rounds while ensuring the stability and accuracy of the temperature prediction results, thereby reducing program execution time and memory usage, and improving the computational efficiency of temperature prediction. Furthermore, the temperature prediction method provided in this specification can also use vectors and matrices for temperature prediction, thus processing multiple data points simultaneously, further reducing program execution time and memory usage, and improving the computational efficiency of temperature prediction.
[0019] The temperature prediction methods and other functions of the system for 3D printing provided in this specification are partially listed in the following description. The inventive aspects of the temperature prediction methods and systems for 3D printing provided in this specification can be fully explained through practice or use of the methods, apparatus, and combinations described in the detailed examples below. Attached Figure Description
[0020] To more clearly illustrate the technical solutions in the embodiments of this specification, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this specification. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0021] Figure 1 shows a hardware structure diagram of a computing device provided according to some embodiments of this specification;
[0022] Figure 2 shows a flowchart of a temperature prediction method for 3D printing provided according to some embodiments of this specification;
[0023] Figure 3 illustrates a flowchart of determining a temperature prediction window according to some embodiments of this specification;
[0024] Figure 4 shows a flowchart of determining a target printing unit based on positional relationships according to some embodiments of this specification;
[0025] Figure 5A shows a schematic diagram of the heat-affected zone when the interval distance is 1R according to some embodiments of this specification;
[0026] Figure 5B shows a schematic diagram of the heat-affected zone when the interval distance is 2R according to some embodiments of this specification;
[0027] Figure 5C shows a schematic diagram of the heat-affected zone when the interval distance is 3R according to some embodiments of this specification;
[0028] Figure 6 shows a flowchart of determining a target printing cell based on cooling rate according to some embodiments of this specification;
[0029] Figure 7 illustrates a flowchart of determining a target printing cell based on cooling time according to some embodiments of this specification;
[0030] Figure 8 shows a schematic diagram of some connection relationships provided according to some embodiments of this specification;
[0031] Figure 9 illustrates a schematic diagram of some other connection relationships provided according to some embodiments of this specification;
[0032] Figure 10 shows a schematic diagram of a linear arc additive manufacturing wall structure and temperature prediction sampling points provided according to some embodiments of this specification;
[0033] Figure 11 illustrates a schematic diagram comparing temperature prediction data obtained using a vectorized and time-step-adjusted method according to some embodiments of this specification with those obtained using a non-vectorized fixed-step method; and
[0034] Figure 12 shows a schematic diagram comparing the computation time obtained by a vectorized and time-step-adjusting method according to some embodiments of this specification with that obtained by using a non-vectorized fixed-step method. Detailed Implementation
[0035] The following description provides specific application scenarios and requirements for this specification, intended to enable those skilled in the art to make and use the contents of this specification. Various partial modifications to the disclosed embodiments will be apparent to those skilled in the art, and the general principles defined herein can be applied to other embodiments and applications without departing from the spirit and scope of this specification. Therefore, this specification is not limited to the embodiments shown, but rather to the widest scope consistent with the claims.
[0036] The terminology used herein is for the purpose of describing particular exemplary embodiments only and is not restrictive. For example, unless the context clearly indicates otherwise, the singular forms “a,” “an,” and “the” used herein may also include the plural forms. When used in this specification, the terms “comprising,” “including,” and / or “containing” mean that the associated integers, steps, operations, elements, and / or components are present, but do not exclude the presence of one or more other features, integers, steps, operations, elements, components, and / or groups, or that other features, integers, steps, operations, elements, components, and / or groups may be added to the system / method.
[0037] Considering the following description, these and other features of this specification, as well as the operation and function of the related components of the structure, and the economy of assembly and manufacture of the parts, can be significantly improved. All of these form part of this specification with reference to the accompanying drawings. However, it should be clearly understood that the drawings are for illustrative and descriptive purposes only and are not intended to limit the scope of this specification. It should also be understood that the drawings are not drawn to scale.
[0038] The flowcharts used in this specification illustrate operations implemented according to some embodiments of this specification. It should be clearly understood that the operations in the flowcharts may not be implemented in a sequential order. Instead, the operations may be implemented in reverse order or simultaneously. Furthermore, one or more additional operations may be added to the flowcharts. One or more operations may be removed from the flowcharts.
[0039] Before describing the specific embodiments in this specification, the application scenarios of this specification will be introduced as follows:
[0040] The 3D printing temperature prediction method provided in this specification can be applied to any 3D printing scenario, such as medical devices, architectural models, parts printing, toys, and daily necessities. This method can be used to predict the temperature during the printing process of the item to be printed, and adjustments can be made to the printing process based on the prediction results to improve the quality of the printed item. Those skilled in the art should understand that the 3D printing temperature prediction method and system described in this specification, when applied to other scenarios, are also within the scope of protection of this specification.
[0041] The temperature prediction method for 3D printing provided in this manual can be applied to the simulated printing process, for example, to simulated printing programs, such as finite element simulation programs.
[0042] Figure 1 shows a hardware structure diagram of a computing device 200 provided according to some embodiments of this specification. The computing device 200 can be used for temperature prediction in 3D printing.
[0043] The computing device 200 can be a device for predicting the temperature of materials during the 3D printing process. In some embodiments, the 3D printing temperature prediction method can be executed on the computing device 200. In this case, the computing device 200 can store data or instructions for executing the 3D printing temperature prediction method described herein, and can execute or be used to execute the data or instructions. In some embodiments, the computing device 200 may include hardware devices with data processing capabilities and necessary programs to drive the hardware devices. In some embodiments, the computing device 200 may include mobile devices, tablets, laptops, personal computers, servers, server clusters, distributed servers, cloud servers, etc., or any combination thereof. In some embodiments, the computing device 200 may have one or more applications (APPs) installed. These APPs include, but are not limited to: web browser APPs, search APPs, chat APPs, shopping APPs, video APPs, financial management APPs, instant messaging tools, email terminals, social platform software, etc. In some embodiments, a target APP may be installed on the computing device 200. The target APP can provide the computing device 200 with a simulation of the 3D printing process and perform temperature prediction during the simulation. The target APP can be simulation software such as finite element simulation software. In this specification, the finite element simulation software uses mathematical approximation methods to simulate real physical systems (such as geometry and load conditions). In particular, the finite element simulation software provided in this application can be used to simulate real-world 3D printing processes.
[0044] As shown in FIG1, the computing device 200 may include at least one storage medium 230 and at least one processor 220. In some embodiments, the computing device 200 may further include a communication port 250 and an internal communication bus 210. Additionally, the computing device 200 may also include I / O components 260.
[0045] The internal communication bus 210 can connect different system components, including storage medium 230, processor 220 and communication port 250.
[0046] I / O component 260 supports input / output between computing device 200 and other components.
[0047] Communication port 250 is used for data communication between computing device 200 and the outside world. For example, communication port 250 can be used for data communication between computing device 200 and an external network. Communication port 250 can be a wired communication port or a wireless communication port.
[0048] Storage medium 230 may include a data storage device. The data storage device may be a non-transitory storage medium or a temporary storage medium. For example, the data storage device may include one or more of a disk 232, a read-only storage medium (ROM) 234, or a random access storage medium (RAM) 236. Storage medium 230 also includes at least one set of instructions stored in the data storage device. The instructions are computer program code, which may include programs, routines, objects, components, data structures, processes, modules, etc., that execute the temperature prediction method for 3D printing provided in this specification.
[0049] At least one processor 220 can be communicatively connected to at least one storage medium 230 and a communication port 250 via an internal communication bus 210. At least one processor 220 is used to execute at least one instruction set described above. When the computing device 200 is running, at least one processor 220 reads the at least one instruction set and, according to the instructions of the at least one instruction set, executes the 3D printing temperature prediction method provided in this specification. Processor 220 can execute all the steps included in the 3D printing temperature prediction method. Processor 220 can be in the form of one or more processors. In some embodiments, processor 220 may include one or more hardware processors, such as a microcontroller, microprocessor, reduced instruction set computer (RISC), application-specific integrated circuit (ASIC), application-specific instruction set processor (ASIP), central processing unit (CPU), graphics processing unit (GPU), physical processing unit (PPU), microcontroller unit, digital signal processor (DSP), field-programmable gate array (FPGA), advanced RISC machine (ARM), programmable logic device (PLD), any circuit or processor capable of performing one or more functions, or any combination thereof. For illustrative purposes only, only one processor 220 is described in this specification for computing device 200. However, it should be noted that computing device 200 may also include multiple processors. Therefore, the operation and / or method steps disclosed in this specification may be executed by one processor as described herein, or they may be executed jointly by multiple processors. For example, if processor 220 of computing device 200 in this specification executes steps A and B, it should be understood that steps A and B may also be executed jointly or separately by two different processors 220 (e.g., a first processor executes step A, a second processor executes step B, or the first and second processors jointly execute steps A and B).
[0050] As mentioned earlier, finite element method (FEM) simulation software can simulate the actual 3D printing process. In actual 3D printing, the printing material is added to the printing equipment in a high-temperature fluid state and then extruded and cooled through the print head. During printing, the material is gradually added in a molten state, or kept in a molten state by a moving heat source (such as a heating element), and then stacked layer by layer on a continuously evolving surface to finally form the product to be printed. Finite element method (FEM) simulation software can simulate the actual 3D printing process by setting printing parameters. For ease of demonstration, before describing the temperature prediction method provided in this specification, we will first introduce the parameter setting process of the finite element method (FEM) simulation software.
[0051] First, the computing device 200 can acquire a 3D model for 3D printing. This 3D model can be a software simulation model corresponding to the 3D printed object. The 3D model can be obtained by modeling the object using computer graphics software, downloaded directly from a 3D printing model website, or obtained by scanning the object using scanning software. Software used for 3D modeling includes, but is not limited to, AutoCAD, Aurodesk 123D, Tinkercad, Solidworks, Pro-E, Catia, Cimatron, SketchUp, OpenScad, UG, 3ds Max, Maya, Rhino, Blender, etc. This manual does not limit the specific software used.
[0052] The computing device 200 can divide the 3D model into M printing units based on a predetermined partitioning rule, where M is a positive integer. The M printing units can be obtained in the following way: for example, after receiving the printing command, the computing device 200 determines the length L of the printing path based on the printing command. road Based on the length L of the printing path road and average cell length Δx avg Determine the number of print cells corresponding to the print path; and based on the length L of the print path... road The number of printing units determines the length Δx of each printing unit; and the printing path is divided based on the length Δx of each printing unit to obtain the corresponding printing units under the printing path.
[0053] The computing device 200 can read the print file Gcode to obtain print instructions. The Gcode includes G1 instructions. The Gcode may also include other print parameters, such as layer width W, layer height H, and print head temperature T. nozzleG1 instructions, also known as print instructions, consist of several coordinate points arranged in a sequential or chronological order. The computing device 200 can control the print head to move along these coordinate points in chronological order based on the G1 instructions, from its current position to a specified position, to achieve printing. The distance the print head travels from its current position to the specified position is called the print path. For ease of description, we define G1 instructions as print paths. A 3D model can include multiple print paths. The computing device 200 can number these multiple print paths. For example, Road(J,K) could be the Kth print path on layer J. The computing device 200 can also classify these print paths to select the print path from which the actual printing operation was performed. For ease of description, we define the print path from which the actual printing operation was performed as the target print path. It should be noted that the target print path is the execution target of the temperature prediction method. For ease of description, the following print paths can all be considered target print paths.
[0054] The computing device 200 can also calculate the length L of each printing path based on the coordinate points corresponding to each printing path. road Furthermore, the computing device 200 can determine the number of printing units corresponding to each printing path using the following formula (1):
[0055] n road =Round(L road / Δx avg (1)
[0056] In formula (1), Round represents the rounding operator; L road The length of the printing path can be determined based on the distance between the coordinates of the current position and the coordinates of the specified position along the printing path; Δx avg The average cell length (computation parameter) can be obtained from the initial parameter table. The initial parameter table contains the print parameters for the initial time step and can be set by the user. The initial parameter table is shown in Table 1 below:
[0057] Table 1 Initial Parameters
[0058] The computing device 200 can determine the length Δx of the printing unit using the following formula (2):
[0059] Δx=L road / n road (2)
[0060] In formula (2), L road n represents the length of the printing path. road It can be obtained based on formula (1).
[0061] The computing device 200 performs the above steps for each of all printing paths to obtain M printing units corresponding to all printing paths. The computing device 200 can select multiple printing units from the M printing units as sampling points for temperature prediction. The multiple printing units can be a subset of the M printing units or all M printing units; this specification does not impose any restrictions on this.
[0062] It is worth noting that, due to the different print path lengths L... road These may differ, therefore the lengths of the M printing cells may also be different. For example, suppose Δx avg The length L of the third printing path Road(2,3) in the second layer is 0.2mm. road(2,3) = 1.62mm, the length L of the fourth printing path Road(2,4) in the second layer. road(2,4) =1.56mm. Using the above formulas (1) and (2), it can be calculated that Road(2,3) contains 9 printing units, each with a length of 0.18mm; Road(2,4) contains 8 printing units, each with a length of 0.195mm.
[0063] In some embodiments, the computing device 200 can number multiple printing units. For example, the I-th printing unit in the K-th printing path of the J-th layer can be numbered as printing unit (J,K,I). For instance, assuming Road (2,3) contains 9 printing units, the 5th printing unit in Road (2,3) can be denoted as printing unit (2,3,5). Assuming Road (2,4) contains 8 printing units, the 8th printing unit in Road (2,3) can be denoted as printing unit (2,4,8).
[0064] The computing device 200 can also calculate the length L of each printing path based on the coordinates of each printing path and the time sequence. road Start time t start and end time t end Furthermore, the computing device 200 can also use the following formula (3) to determine the occurrence time t of the printing unit corresponding to the printing path. active :
[0065] In formula (3), t start Characterizes the start time of the printing path; t end The value represents the end time of the print path; I represents the number of the print cell on the current print path; n roadIt can be obtained based on formula (1). The time of appearance of the printing unit can be the time when the print head starts to extrude the printing unit material, or it can be any time when the print head is extruded into the printing unit material.
[0066] During the printing process, the printed material extruded from the printhead carries a temperature. This can affect the temperature of other printing units, such as those that have already been extruded. The data on material temperature changes over time during printing (also known as thermal history) is a key factor determining the mechanical properties of additive manufacturing and is central to the additive manufacturing process. Accurately predicting material temperature changes during printing is crucial for additive manufacturing process analysis, metallurgical analysis, stress-deformation analysis, process control, and setting printing parameters.
[0067] Therefore, the computing device 200 needs to predict the temperature of the printing material or printing unit. The computing device 200 can perform temperature prediction within a temperature prediction time window. When performing temperature prediction, the computing device 200 can update the temperature based on the time step Δt of each temperature prediction time window. In some embodiments, each time the computing device 200 updates the temperature after one temperature prediction time window, it can be considered that the computing device 200 has performed one round or one step of data calculation.
[0068] In some embodiments, the time step Δt of the multiple temperature prediction time windows can be fixed. For example, the time step Δt can be determined based on the minimum element length and the material parameters of the three-dimensional model. For example, the time step Δt can be calculated based on the following formula (4):
[0069] In equation (4), ρ represents the density of the printing material; C represents the specific heat of the printing material; λ represents the thermal conductivity of the printing material; ρ, C, and λ can all be obtained from Table 1; η represents the step size adjustment factor, which can be 0.5 or 1; Δx min The minimum cell length among the cell lengths corresponding to the print path can be obtained by the computing device 200 after determining the cell lengths of the print cells corresponding to multiple print paths based on formulas (1) and (2), and then selecting the minimum cell length from the cell lengths of the print cells corresponding to multiple print paths.
[0070] In the actual temperature prediction process, the printing cell corresponding to the minimum cell length may not affect the temperature prediction of other printing cells. For example, the printing cell corresponding to the minimum cell length may be extruded earlier. In subsequent temperature prediction processes, the printing cell corresponding to the minimum cell length will not affect the stability and accuracy of subsequent temperature prediction results. However, since all time steps Δt are determined by the minimum cell length, the time step Δt of the temperature prediction time window for temperature updates is relatively small. When using a fixed-step temperature prediction method, it may require multiple temperature prediction time windows to complete the extrusion of a single printing cell. Therefore, a large number of temperature prediction time windows are needed to complete the temperature update after all printing cells are extruded. The computing device 200 will perform more rounds or more data calculations, resulting in longer program execution time and memory usage time for the computing device 200.
[0071] This specification provides a temperature prediction method P100 (hereinafter referred to as method P100). When performing temperature prediction, method P100 can automatically adjust the time step of the temperature prediction time window, thereby reducing the program execution time and memory usage time of the computing device 200 and improving the computational efficiency of temperature prediction while ensuring the stability and accuracy of the temperature prediction results. Furthermore, method P100 provided in this specification can also use vectors and matrices for temperature prediction. Compared with non-vectorized methods, the computing device 200 can process multiple data simultaneously, thereby further reducing program execution time and memory usage, and improving the computational efficiency of temperature prediction.
[0072] Figure 2 shows a flowchart of a temperature prediction method P100 for 3D printing provided according to some embodiments of this specification. The computing device 200 can execute the temperature prediction method P100 for 3D printing according to this specification. Specifically, the computing device 200 can read an instruction set stored in its local storage medium and then execute the temperature prediction method P100 for 3D printing according to the instructions in the instruction set.
[0073] Method P100 may involve predicting the material temperature for some or all of the multiple temperature prediction time windows corresponding to all printing paths. As shown in Figure 2, method P100 may include performing the following steps S120 to S180 for each of the multiple temperature prediction time windows.
[0074] S120: Determine the temperature prediction time window based on the start time and time step of the current temperature prediction.
[0075] Let the starting time of the current temperature prediction be defined as t. n-1The time step is defined as Δt. That is, the length of the temperature prediction time window is Δt. Therefore, the end time of the current temperature prediction can be expressed as t. n-1 +Δt. For ease of description, the end time of the current temperature prediction is denoted as t. n , where t n =t n-1 +Δt. The temperature prediction time window can be represented as [t] n-1 ,t n ].
[0076] When performing temperature prediction, the computing device 200 can update the temperature based on the time step Δt of each temperature prediction time window. The time step Δt is determined based on the print length of the target print unit located within the heat-affected zone of the currently being printed unit, among the units that have already been printed in the previous temperature prediction. The target print unit can be considered a print unit that may be affected by the temperature of the unit currently being printed in the current temperature prediction. Within the current temperature prediction time window, the temperature data of the target print unit may be updated or significantly affected. Therefore, when the computing device 200 updates the temperature data based on the time step Δt using method P100, it needs to ensure the stability and accuracy of the temperature prediction result for the target print unit. In other words, the target print unit is a print unit that has not yet reached a steady state, and the computing device 200 needs to update its temperature within the current temperature prediction time window. Therefore, when the computing device 200 updates the temperature data based on the time step Δt using method P100, it needs to ensure the stability and accuracy of the temperature prediction result for the target print unit.
[0077] Figure 3 shows a flowchart of determining a temperature prediction window S120 according to some embodiments of this specification.
[0078] S121: Use the end time of the previous temperature forecast as the start time of the current temperature forecast.
[0079] For example, the time window for the last temperature forecast was [t]. n-2 ,t n-1 If the last temperature prediction ended at time t, then... n-1 The starting time for the current temperature prediction can be defined as the aforementioned t. n-1 .
[0080] S123: Determine the target printing cell from the cells that have already been printed in the previous temperature prediction.
[0081] During the printing process, the printing material extruded from the printhead carries heat. Some printed cells may be located within the heat-affected zone (HAZ) of the cell being printed, and are affected by the heat transfer from the cell being printed. The HAZ characterizes the area affected by heat transfer. The extent of the HAZ can be related to the cooling rate of the printing material, the heat transfer rate, and the temperature of the printhead. If a printed cell is within the HAZ of the cell being printed, it indicates that the printed cell is significantly affected by the heat transfer from the cell being printed. Conversely, if a printed cell is outside the HAZ of the cell being printed, it indicates that the printed cell is not affected by the heat transfer from the cell being printed, or is minimally affected and can be ignored.
[0082] The target printing cell can be a printing cell that was printed during the last temperature prediction and is located within the heat-affected zone of the cell that was previously being printed.
[0083] In some embodiments, the computing device 200 can determine whether a unit that has been printed is located within the heat-affected zone of the unit being printed, based on the positional relationship between the unit that has been printed in the previous temperature prediction and the unit that is being printed in the previous temperature prediction, thereby determining whether the unit that has been printed is the target printing unit. The positional relationship can be described by distance. The positional relationship can also be described by orientation. For example, when the positional relationship between the unit that has been printed and the unit being printed is far (i.e., the distance is large), the unit that has been printed is less affected by the heat transfer from the unit being printed; when the positional relationship between the unit that has been printed and the unit being printed is close (i.e., the distance is large), the unit that has been printed is more affected by the heat transfer from the unit being printed.
[0084] Figure 4 illustrates a flowchart of determining a target printing unit based on positional relationships according to some embodiments of this specification. As shown in Figure 4, step S123 may include:
[0085] S123-1: Determine the position coordinates of the cells that have been printed in the previous temperature prediction and the position coordinates of the cells that are being printed in the previous temperature prediction.
[0086] In some embodiments, the position coordinates of the printing units can be obtained from a Gcode file. In some embodiments, the position coordinates of the printing units can be obtained by linear interpolation of their numbers and the position coordinates of the printing path they belong to. For example, if the printing path includes three printing units that are evenly distributed, then the first printing unit is at 1 / 3 of the printing path, the second printing unit is at 2 / 3 of the printing path, and the third printing unit is at 3 / 3 of the printing path. Therefore, the computing device 200 can obtain the position coordinates of the printing units using the position coordinates of the printing path.
[0087] S123-2: Based on the position coordinates of the cells that have been printed in the previous temperature prediction and the position coordinates of the cells that are being printed in the previous temperature prediction, determine the interval distance between the cells that have been printed in the previous temperature prediction and the cells that are being printed in the previous temperature prediction.
[0088] For example, the coordinates of the printed cell are (x1, y1), and the coordinates of the cell being printed are (x2, y2). The computing device 200 can determine the distance L between the printed cell and the cell being printed based on the following formula (5):
[0089] S123-3: Select the units that have been printed in the previous temperature prediction and whose spacing is less than the first preset distance threshold as the target printing units.
[0090] The range of the first preset distance threshold can be obtained in various ways, such as experimental methods, statistical methods, machine learning methods, or any combination thereof. The range of the first preset distance threshold can be related to the cooling rate of the printing material, the heat transfer rate, and the temperature of the print head.
[0091] Figure 5A shows a schematic diagram of the heat-affected zone when the interval distance is 1R according to some embodiments of this specification. Figure 5B shows a schematic diagram of the heat-affected zone when the interval distance is 2R according to some embodiments of this specification. Figure 5C shows a schematic diagram of the heat-affected zone when the interval distance is 3R according to some embodiments of this specification. Referring to Figures 5A, 5B, and 5C, when the cross-section of the printing unit is a regular octagon, the first preset distance threshold can be the radius R of one printing unit, the radius 2R of two printing units, or the radius 3R of three printing units. Taking Figure 5A as an example, the printing unit shown in Figure 5A is the unit being printed, the printing unit shown in Figure 5A is the printed unit within the heat-affected zone of the unit being printed, and the printing unit shown in Figure 5A is the printed unit outside the heat-affected zone of the unit being printed.
[0092] In other embodiments, the computing device 200 may determine whether a printed cell is a target printing cell based on the cooling rate of the printed cell.
[0093] Figure 6 illustrates a flowchart of determining a target printing cell based on cooling rate according to some embodiments of this specification. As shown in Figure 6, step S123 may include:
[0094] S123-4: Determine the cooling rate of the cells that have been printed in the previous temperature prediction.
[0095] S123-5: Select the cells whose cooling rate is less than the preset cooling rate threshold from the cells that have been printed in the previous temperature prediction as the target printing cells.
[0096] When the cooling rate of a printed cell is greater than the preset cooling threshold, it indicates that the printed cell is not affected by the heat transfer from the cell being printed, or is only minimally affected. Simultaneously, the cooling rate of the printed cell has decreased, indicating that the temperature of the printed cell is approaching ambient temperature. Conversely, when the cooling rate of a printed cell is less than the preset cooling threshold, it indicates that the printed cell is affected by the heat transfer from the cell being printed, or is significantly affected.
[0097] The preset cooling rate threshold can be obtained in various ways, such as experimental methods, statistical methods, machine learning methods, etc., or any combination thereof. For example, the preset cooling rate threshold can be 0.01℃ / s, 1℃ / s, etc. Those skilled in the art can set the preset cooling rate threshold according to actual needs, and this specification does not limit this.
[0098] In other embodiments, the computing device 200 can determine whether a printed cell is located within the heat-affected zone of a cell being printed, based on the printing time of the printed cell, thereby determining whether the printed cell is the target printing cell.
[0099] Figure 6 illustrates a flowchart of determining a target printing cell based on cooling time according to some embodiments of this specification. As shown in Figure 6, step S123 may include:
[0100] S123-6: Determine the printing time of the cells that have been printed in the previous temperature prediction.
[0101] The printing time of a completed cell can be the time when the cell started printing, the time when the cell ended printing, or any time between the start and end of printing.
[0102] S123-7: Select the cells that were printed in the previous temperature prediction and whose time interval between the printing time and the start time of the current temperature prediction is less than the heat-affected time as the target printing cells.
[0103] Heat-affected time t HAZ This can be obtained from Table 1. When the time interval between the printing time of a completed cell and the start time of the current temperature prediction is greater than the heat-affected time t... HAZ When the time interval between the printing time of the completed cell and the start time of the current temperature prediction is less than the heat-affected time t, it indicates that the cell that has finished printing will not be affected by the heat transfer of the cell being printed or will be minimally affected; when the time interval between the printing time of the completed cell and the start time of the current temperature prediction is less than the heat-affected time t. HAZ This indicates that the cells that have already been printed will be affected by the heat transfer from the cells that are being printed, or will be significantly affected.
[0104] The target printing unit can be determined using the method described above. The target printing unit may include multiple printing units. For example, the previous temperature prediction included units A, B, C, and D, which have already been printed. The target printing unit may include units B and D.
[0105] Referring again to Figure 3, step S120 of determining the temperature prediction time window may further include:
[0106] S125: Determine the first duration and the second duration corresponding to the target printing unit.
[0107] The first duration can be a default time interval for simulating temperature changes in the printing cell. The first duration can be a default time step. In some embodiments, the first duration can be related to the length of the target printing cell and the travel rate of the print head. For example, the first duration can be defined as Δt. default The computing device 200 can obtain Δt using the following formula (6). default :
[0108] In formula (6), Δx can be obtained based on formula (2); F represents the moving speed of the print head on the printing path where the printing unit is located. The first duration Δt is obtained through formula (6). default This is the time required for the print head to travel through the printing unit. In the first time interval Δt... default Within this range, the printing unit completes the extrusion process. Each target printing unit can determine its corresponding first duration based on its own unit length. Different target printing units can have different first durations. A first duration can include multiple durations. For example, if S is the set of target printing units, the first duration can be represented as... i represents the number of the target printing cell.
[0109] The second duration can be a stable time interval for simulating temperature changes in the printing cell. This second duration can be referred to as the stable time step. In some embodiments, the second duration can be related at least to the length of the target printing cell, the density of the material, its specific heat capacity, and its thermal conductivity. For example, the second duration can be defined as Δt. stable The computing device 200 can obtain Δt using the following formula (7). stable :
[0110] In formula (7), Δx can be obtained based on formula (2); ρ represents the material density; C represents the material specific heat; and λ represents the thermal conductivity. ρ, C, and λ can all be obtained based on Table 1. The second duration obtained through formula (7) is the time required to ensure the stability of the temperature prediction calculation process and results. Each target printing unit can determine its corresponding second duration based on its own length. The second duration can be different for different target printing units. The second duration can include multiple second durations. For example, if S is the set of target printing units, the second duration can be expressed as... i represents the number of the target printing cell.
[0111] Formula (7) can be considered as the time step obtained based on the length of the target printing unit when the step size adjustment factor η in Formula (4) takes the value of 1.
[0112] Referring again to Figure 3, step S120 of determining the temperature prediction time window may further include:
[0113] S127: Use the shorter of the first duration and the second duration as the time step for the current temperature prediction.
[0114] The time step selected by computing device 200 needs to ensure the stability and accuracy of the calculation process and results. The first time duration is Δt. default This is the time required for the print nozzle to travel through the print cell. In the first time Δt... default Inside, the printing unit can complete the extrusion precisely. The computing device 200 uses a time step Δt as the first duration Δt. default Temperature prediction is performed more accurately. The computing device 200 uses a time step Δt as the second time step Δt. stable Temperature prediction ensures the stability of the calculation method, resulting in more consistent results.
[0115] When the time step Δt is greater than the first time length Δt default At times, multiple printing cells may erode within a single temperature prediction time window, leading to poor accuracy in temperature prediction calculations. This is especially true when the time step Δt is greater than the second time step Δt. stableHowever, the calculation method for temperature prediction may be unstable, thus reducing the stability of the calculation results. Therefore, the computing device 200 uses the shorter of the first and second durations as the time step for the current temperature prediction, which can simultaneously ensure the stability and accuracy of the calculation.
[0116] When the first duration Δt default Less than the second duration Δt stable At that time, the computing device 200 can calculate the first time duration Δt. default As the time step Δt. When the first time step Δt... default Greater than the second duration Δt stable At that time, the computing device 200 can calculate the second duration Δt. stable The time step Δt is Δt stable .
[0117] For multiple target printing units, the computing device 200 can obtain the time step Δt using the following formula (8):
[0118] In formula (8), S represents the set of numbers of the target printing units. Characterizing the first duration of the i-th printing unit, The second duration represents the i-th printing unit.
[0119] Each target printing unit has a corresponding first duration and second duration. The computing device 200 can select the minimum duration from all the first durations and second durations as the time step for the current temperature prediction, thereby ensuring the stability and accuracy of the temperature prediction results for each target printing unit.
[0120] In some embodiments, when the temperature prediction is the first prediction in the entire temperature prediction process, the time step of the first temperature prediction time window can be the minimum of the first duration and the second duration corresponding to the first printing unit. In other embodiments, when the temperature prediction is the first prediction in the entire temperature prediction process, the time step of the first temperature prediction time window can be set empirically. This specification does not impose any limitations on this.
[0121] Referring again to Figure 3, step S120 of determining the temperature prediction time window may further include:
[0122] S129: Based on the start time and time step of the temperature prediction, determine the end time of the current temperature prediction, thereby determining the temperature prediction time window.
[0123] Determine the starting time t of the current temperature prediction n-1 After setting the time step Δt, the temperature prediction time window can be determined as [t]. n-1 ,tn-1 +Δt]. The computing device 200 can execute the temperature prediction method P100 within the temperature prediction time window.
[0124] Compared to the aforementioned method of determining the time step Δt of the temperature prediction time window based on the minimum cell length, the method P100 provided in this specification can automatically adjust the time step Δt of the temperature prediction time window when performing temperature prediction. Since the interference of the shortest printing cell is eliminated, the time step of some temperature prediction time windows will be larger, thereby reducing the number of temperature prediction time windows required to extrude one printing cell. This reduces the number of rounds or steps that the computing device 200 needs to perform data calculations, resulting in lower program execution time and memory usage time for the computing device 200, thus improving the computational efficiency of temperature prediction.
[0125] Assume there are a total of 1000 printing units across all paths. The first printing unit has a length of 1 and a time step of Δt. min The remaining printing units have a length of 100 and a time step of 100Δt. min Furthermore, the previous printing unit only affects the next printing unit.
[0126] When using the method of determining the time step Δt of the temperature prediction time window based on the minimum cell length of formula (2), the time step of all temperature prediction time windows should be a small time step, for example, Δt. min For the other 999 printing units, each printing unit requires 100 temperature prediction time windows to be extruded. Assuming that the computing device 200 performs one round or one step of data calculation for each temperature prediction, the computing device 200 needs to perform (1 + 999 × 100) rounds or (1 + 999 × 100) steps of data calculation.
[0127] Using the method P100 provided in this application, the time step of the first temperature prediction time window is Δt. min The first printing cell can be extruded within the first temperature prediction time window. During the second temperature prediction, since the first printing cell is the target printing cell, the time step of the second temperature prediction time window needs to take the first printing cell into account; therefore, the time step of the second temperature prediction time window is also Δt. min The second printing cell requires 100 temperature prediction time windows to be extruded. During the third temperature prediction, since the first printing cell is no longer the target printing cell, the time step for the third temperature prediction time window is 100Δt. minThe third printing unit only requires one temperature prediction time window to be extruded. Similarly, each subsequent printing unit requires only one temperature prediction time window to be extruded. Therefore, the computing device 200 needs to perform (1+1×100+998) rounds or (1+1×100+998) steps of data calculation. Consequently, the program execution time and memory usage time of the computing device 200 are significantly reduced, improving the computational efficiency of temperature prediction.
[0128] Referring again to Figure 2, method P100 may also include:
[0129] P140: Determine the printing status of multiple printing units in the 3D model within the temperature prediction time window. The printing status includes units that are being printed and units that have been printed.
[0130] Method P100 allows for the selection of temperature prediction methods with varying computational loads based on the corresponding printing status of the printing unit, thereby improving the computational efficiency of temperature prediction.
[0131] Specifically, step P140 may include:
[0132] P142: Determine the start time for printing each printing unit.
[0133] P144: Determine the printing status based on the start time of printing.
[0134] In some embodiments, if the start of printing falls within the temperature prediction time window, the cell is determined to be in the process of printing. In some embodiments, if the start of printing falls before the temperature prediction time window, the cell is determined to be in the process of printing. In some embodiments, if the start of printing falls after the temperature prediction time window, the cell is determined to be in the process of printing. In some embodiments, unprinted cells may not require temperature prediction, or the temperature of unprinted cells may be considered zero.
[0135] Referring again to Figure 2, method P100 may also include:
[0136] P160: Determine the temperature prediction data for multiple printing units within the temperature prediction time window.
[0137] In some embodiments, determining the temperature prediction data of multiple printing units within a temperature prediction time window may include: determining the temperature prediction data of multiple printing units within the current temperature prediction time window based on a temperature prediction method corresponding to the printing state.
[0138] As described above, the printing status of a printing unit can include units that are currently printing and units that have completed printing. The temperature prediction method can include a first temperature prediction method and a second temperature prediction method. Units currently printing can correspond to the first temperature prediction method, and units that have completed printing can correspond to the second temperature prediction method. The computational complexity of the first temperature prediction method is less than that of the second temperature prediction method.
[0139] For example, the first temperature prediction method can be expressed as formula (9):
[0140] In formula (9), i represents the number of the printing unit; Characterizing the printing unit at t n Temperature at time; t n T represents the end time of the current temperature prediction time window. nozzle The temperature of the printhead can be read from the Gcode file; α represents the printhead temperature correction coefficient, which can be obtained from Table 1. When the printing state is in progress, the computing device 200 can use the first temperature prediction method corresponding to this state to predict the temperature. As can be seen from formula (9), the temperature of the unit being printed is mainly determined by the temperature of the printhead.
[0141] The second temperature prediction method can be expressed as formula (10):
[0142] In formula (10), i represents the number of the printing unit; Characterizing the printing unit at t n Temperature at time; t n Characterizes the end time of the temperature prediction time window; For printing cells in t n-1 Temperature at time t n-1 Q represents the end time of the previous temperature prediction time window; Δt represents the time step, obtained from formula (6); ρ and C represent the material density and specific heat, respectively, which can be obtained from Table 1; cond Q conv Q radi Q plat And Q cont These represent the heat change vectors of the printed unit caused by heat conduction, heat convection, heat radiation, thermal contact with the base plate, and thermal contact with the unit, respectively; δ HAZ The Dirac function characterizes whether a printing cell is within the heat-affected zone (HAZ). For example, δ is the function when a printing cell is within the HAZ of the current printing cell. HAZ It can be 1; when the printing unit is not within the heat-affected zone of the current printing unit, δ HAZIt can be 0. Whether the printing unit is within the heat-affected zone can be determined by the methods mentioned above, such as distance, cooling time, and cooling rate, which will not be elaborated here.
[0143] Comparing formulas (9) and (10) above, it can be seen that the computational load of the first temperature prediction method is less than that of the second temperature prediction method. Therefore, by classifying the printing status and using temperature prediction methods corresponding to different printing statuses, this specification can reduce the computational load in the temperature prediction process, thereby improving the efficiency of temperature prediction and ensuring the accuracy of temperature prediction.
[0144] In some embodiments, the printing states of multiple printing units are represented by vectors. The vector value corresponding to the unit currently printing is a first state value, and the vector value corresponding to the unit that has completed printing is a second state value. The second state value differs from the first state value. Temperature prediction data is calculated using vectors, and includes the product of the vectors representing the printing states of the multiple printing units and the vector corresponding to the temperature prediction method. The specific process of temperature prediction using vector and matrix methods is described below.
[0145] Assume that the multiple printing units comprise M printing units, where M is a positive integer. As mentioned earlier, the computing device 200 can first read the Gcode, and then receive the printing parameters set by the user or stored on the device.
[0146] The computing device 200 can also create a static vector group based on the read Gcode and / or print parameters. In some embodiments, the computing device 200 may perform the following steps to create a static vector group:
[0147] Establish a length vector Δx for M printing cells, where Δx = (Δx i |i∈N,1≤i≤M), where i represents the number of the printing unit; Δx i The length of the i-th printing unit is represented.
[0148] Establish the cross-sectional area vector A of M printing cells. sec A sec =βWH. Where β represents the cross-section correction coefficient, which can be obtained from Table 1; W represents the layer width of the printing unit; H represents the layer height of the printing unit, and the layer width and layer height can be obtained after calculating the number of printing units.
[0149] Establish the surface area vector A of M printing cells. surf ,
[0150] Establish a volume vector V for M printing cells, where V = βWHΔx.
[0151] Establish the base plate contact area vector A for M printing cells. plat , When the i-th printing unit contacts the printing base plate, When the i-th printing unit is not in contact with the printing base plate
[0152] Establish the contact area matrix A of M printing units. cont , Where S is the number of printing units that come into contact with the i-th printing unit. The contact area between the i-th printing unit and the j-th contact unit can be obtained through geometric calculation based on the position coordinates of the i-th printing unit and the j-th printing unit.
[0153] It is worth noting that the steps for establishing the static vector group described above can be completed in advance by the computing device 200 and stored in the storage medium 230, or they can be executed in real time before the computing device 200 executes the temperature prediction method P100, or some steps can be completed in advance and others can be executed in real time. The steps for establishing the static vector group described above are only an example. The computing device 200 can establish different static vector groups in the order described above, or it can establish different static vector groups in any other order. This specification does not limit this.
[0154] To update the temperature data of the printing unit, the computing device 200 can also establish a dynamic vector group. The dynamic vector group is updated within part or all of the temperature prediction time windows. Specifically, the computing device 200 can perform the following steps to establish the dynamic vector group:
[0155] Establish the initial temperature vector T for the printing cell, T = (T i |i∈N,1≤i≤M), and initialize it to zero. The initial temperature vector T includes M initial temperature data for M printing cells.
[0156] Establish the predicted temperature vector T for the printing cell new T new =(T i |i∈N,1≤i≤M), and initialize it to zero. The temperature prediction vector T includes M initial temperature data for M printing cells.
[0157] Establish an extrusion vector δ to determine whether a printing cell is extruding. extrude , And initialize it to zero.
[0158] Establish a vector δ to determine whether a printed cell is within the heat-affected zone. HAZ , And initialize it to zero.
[0159] Establish a front-connect vector δ to determine whether a printing cell has a front-connect unit along the printing path direction. front , It is then initialized to zero. The connection relationship of the previous connection will be introduced later.
[0160] Establish a post-connect vector δ to determine whether there is a post-connect unit in the print path direction of the print cell. rear , It is then initialized to zero. The connection relationships of subsequent joins will be introduced later.
[0161] Establish an extrusion matrix δ to determine whether the contact units of the printing unit have been extruded. cont , And initialize it to zero.
[0162] Based on surface area vector A surf The base plate contact area vector A plat The preceding connection vector δ front Then connect the vector δ rear Cross-sectional area vector A sec Contact area matrix A cont and the extrusion matrix δ cont Determine the free surface area vector A of M printing cells. free , where A free =A surf -A plat -δ front A sec -δ rear A sec -δ cont A cont .
[0163] It is worth noting that the steps for establishing the dynamic vector group described above can be completed in advance by the computing device 200 and stored in the storage medium 230, or they can be executed in real time before the computing device 200 executes the temperature prediction method P100, or some steps can be completed in advance and others can be executed in real time. The steps for establishing the dynamic vector group described above are only an example. The computing device 200 can establish different dynamic vector groups in the order described above, or it can establish different dynamic vector groups in any other order. This specification does not limit this.
[0164] The computing device 200 can execute the above-described method P100 in a vector-based manner to calculate the temperature prediction data. In some embodiments, the computing device 200 can perform the following step of updating the dynamic vector group to obtain the temperature prediction data:
[0165] Determine the time step Δt of the temperature prediction time window. in, Characterizing the first duration of the i-th printing unit, S represents the second duration of the i-th printing unit, and S represents the set of target printing unit numbers.
[0166] Update the extrusion vector δ used to determine whether a printing cell is being extruded. extrude Vector δ extrude Characterizes the printing state of the printing unit, with the first state corresponding to The second state corresponds to
[0167] Update the vector δ used to determine whether a printing cell is within the heat-affected zone. HAZ The printing unit corresponds to δ in the heat-affected zone. HAZ =1, the printing unit is not in the heat-affected zone corresponding to δ HAZ =0.
[0168] Update the vector δ used to determine whether a printing cell exists in the direction of the printing path. front Each printing unit has a corresponding front connection unit. Each printing unit does not have a corresponding front connection unit.
[0169] Update the vector δ of the unit to determine if there is a subsequent connected unit in the print path direction of the print cell. rear , And initialize it to zero.
[0170] Update the matrix δ that determines whether the contact unit of the printing unit has been extruded. cont , (i≤M, 1≤j≤M), and initialize it to zero. Each print cell has a corresponding subsequent connection cell. Each printing unit does not have a corresponding subsequent connection unit.
[0171] Update the M×M dimensional extrusion matrix δ of the contact units of M printing units. cont The i-th printed cell corresponds to the already printed cell. When the i-th printed unit is an unprinted unit When the j-th print unit corresponds to a printed unit When the j-th printed unit is an unprinted unit
[0172] Update the free surface area vector A of the M printing cells. free .
[0173] Update the predicted temperature vector T new T new =δ extrude (αT nozzle )+(1-δ extrude )T change T change Characterizes the temperature change vector caused by heat conduction, heat convection, heat radiation, thermal contact with the base plate, and thermal contact with the unit. Q cond Q conv Q radi Q plat Q cont These represent the temperature change vectors caused by heat conduction, heat convection, and heat radiation, respectively.
[0174] In some embodiments, Q conv =h conv A free (TT amb ), Q radi =εσA free ((T) 4 -(T amb ) 4 ), Q plat =h plat A plat (TT plat ), Q cont =δ cont h cont A cont (TT j ), where λ, ε, h conv h plat T plat T amb These are all printing parameters, which can be obtained from Table 1. σ represents the Stefan-Boltzmann constant, and T... j The temperature of the left connecting unit, right connecting unit, upper connecting unit, or lower connecting unit of the printing unit.
[0175] The front connecting unit, rear connecting unit, upper connecting unit, lower connecting unit, left connecting unit, and right connecting unit represent the connection relationships between printing units. The connection relationships are described below with reference to the accompanying drawings:
[0176] Figure 8 illustrates a schematic diagram of some connection relationships provided according to some embodiments of this specification. As shown in Figure 6, reference numerals 41, 42, and 43 are printed units, and reference numeral 40 is the current printed unit. If printed units 41, 42, and 43 are located on the same printing layer as the current printed unit 40, and printed unit 41 is located in front of the current printed unit, then printed unit 41 is the front connecting unit of the current printed unit 40. Similarly, if printed units 41, 42, and 43 are located on the same layer as the current printed unit 40, and printed units 41, 42, and 43 are located behind, to the left, and to the right of the current printed unit 40, respectively, then currently printed units 42 and 43 are the rear connecting unit, left connecting unit, and right connecting unit of the current printed unit, respectively. The front, rear, left, and right connection relationships are determined with reference to the direction of the printing path of the printing unit. For example, if the two ends of the current printing unit are A and B, where A is the starting printing position and B is the specified printing position, then the printed unit located at B is the front connecting unit of the current printing unit, and the printed unit located at A is the rear connecting unit of the current printing unit. The units located on either side of the currently printed unit are the left and right connecting units of the current printing unit, respectively.
[0177] Figure 9 illustrates schematic diagrams of other connection relationships provided according to some embodiments of this specification. As shown in Figure 9, currently printed units 51 and 52 are the front and rear connecting units of the current printing unit 50, respectively. Currently printed units 53 and 54 are located on different printing layers from the current print sheet 50, and currently printed unit 53 is located above the current printing unit 50, so currently printed unit 53 is the upper connecting unit of the current printing unit 50; currently printed unit 54 is located below the current printing unit 50, so currently printed unit 54 is the lower connecting unit of the current printing unit 50. The terms "upper" and "lower" can be determined with reference to the base plate. For example, if the currently printed unit is located on a different printing layer from the current printing unit, and the currently printed unit is located between the current printing unit and the base plate, then it is the lower connecting unit of the current printing unit; otherwise, it is the upper connecting unit of the current printing unit.
[0178] As mentioned above, the computing device 200 can number multiple printing units, designating the I-th printing unit in the K-th printing path of the J-th layer as printing unit (J,K,I). The specific implementation process by which the computing device 200 determines the connection units for printing unit (J,K,I) can be as follows:
[0179] When the computing device 200 determines that the printing unit (J,K,I) is the first printing unit of Road (J,K), and when Road (J,K-1) is a printing type, the last printing unit in Road (J,K-1) is used as the preceding unit of printing unit (J,K,I).
[0180] The computing device 200 determines that the printing unit (J,K,I) is the last printing unit of Road (J,K), and when Road ((J,K+1) is a printing type, the printing unit (J,K+1,0) is used as its corresponding subsequent connection unit.
[0181] When the computing device 200 determines that the printing unit (J,K,I) is neither the first printing unit of Road (J,K) nor the last printing unit of Road (J,K), it designates the printing unit (J,K,I-1) as its corresponding preceding unit.
[0182] The computing device 200 determines that the printing unit (J,K,I) is not the last printing unit of Road (J,K), and designates the printing unit (J,K,I+1) as its corresponding subsequent connection unit.
[0183] After determining the front and rear connecting units of the printing unit (J,K,I), the computing device 200 can use other printed units located in the I layer and connected to the printing unit (J,K,I) as their corresponding left or right connecting units.
[0184] The computing device 200 determines the printed unit located on layer I+1 or layer I-1 and connected to the printing unit (J,K,I) as its corresponding upper connection unit or lower connection unit.
[0185] The computing device 200 can continue to execute the temperature prediction method P100:
[0186] Update the initial temperature vector T of the printing cell, T = T new .
[0187] The computing device 200 can repeat the above update steps until printing is complete.
[0188] Referring again to Figure 2, method P100 also includes:
[0189] P180: Output temperature prediction data.
[0190] The computing device 200 predicts the temperature of multiple printing units within each temperature prediction time window and outputs the corresponding temperature prediction data for the multiple printing units within the temperature prediction time window.
[0191] The computing device 200 can output temperature prediction data in several ways. For example, it can visualize the temperature prediction data. Specifically, the computing device 200 can generate a temperature prediction curve based on the temperature prediction data for each printing unit within the temperature prediction time window. Alternatively, the computing device 200 can also generate temperature prediction bar charts, temperature prediction line charts, etc., based on the temperature prediction data for each printing unit within the temperature prediction time window, and display these charts on a monitor.
[0192] The following section uses experimental data to illustrate the beneficial effects of the 3D printing temperature prediction method and system provided in this manual:
[0193] Figure 10 shows a schematic diagram of the fused wire manufacturing wall structure and temperature prediction sampling points provided according to some embodiments of this specification; Figure 11 shows a schematic diagram comparing the temperature prediction results obtained by the vectorized and time-step-adjusted method provided according to some embodiments of this specification with those obtained by the non-vectorized fixed-step method. In Figure 11, discrete point W1 represents the temperature prediction data obtained using the non-vectorized and fixed-step method, and solid line W2 represents the temperature prediction data obtained using P100 provided in this application, which is the vectorized and time-step-adjusted method. As shown in Figures 10 and 11, it can be seen that the two data match well, proving the effectiveness and accuracy of the temperature prediction method P100 of this specification.
[0194] Figure 12 illustrates a comparison of computation time obtained using a vectorized and time-step-adjusted method according to some embodiments of this specification with that obtained using a non-vectorized and fixed-step method. As shown in Figure 12, Z1 represents the computation time obtained using the fixed-step and non-vectorized computation method, and Z2 represents the computation time using the temperature prediction method P100 with a vectorized approach. The vertical axis represents the computation time. It can be seen that the computation time of the temperature prediction method P100 in this specification is significantly shorter than that using the fixed-step method, reaching approximately one-quarter of the computation time of the cell birth and death technique. This demonstrates that using the temperature prediction method P100 in this specification can improve the computational efficiency of temperature prediction in additive manufacturing.
[0195] It should be noted that the steps in the above embodiments are all performed based on the printing path being a printing type. When the printing path is a blank line type, layer change type, extrusion type, or other types, temperature prediction is not performed.
[0196] This specification, in another aspect, provides a non-transitory storage medium storing at least one set of executable instructions for calibrating a lidar. When the executable instructions are executed by a processor, they instruct the processor to perform the steps of the lidar calibration method P100 described herein. In some possible embodiments, various aspects of this specification can also be implemented as a program product comprising program code. When the program product is run on a computing device 200, the program code causes the computing device 200 to perform the steps of the lidar calibration method P100 described herein. The program product for implementing the above method may employ a portable compact disc read-only memory (CD-ROM) containing program code and may run on the computing device 200. However, the program product of this specification is not limited thereto. In this specification, a readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system. The program product may employ any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a readable storage medium include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. The computer-readable storage medium may include a data signal propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable storage medium can also be any readable medium other than a readable storage medium that can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the readable storage medium can be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof. Program code for performing the operations described herein can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java and C++, and conventional procedural programming languages such as C or similar languages. The program code can be executed entirely on computing device 200, partially on computing device 200, as a standalone software package, partially on computing device 200 and partially on a remote computing device, or entirely on a remote computing device.
[0197] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require a specific or sequential order to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.
[0198] In summary, after reading this detailed disclosure, those skilled in the art will understand that the foregoing detailed disclosure is presented by way of example only and is not restrictive. Although not explicitly stated herein, those skilled in the art will understand that this specification requires various reasonable changes, improvements, and modifications to the embodiments. These changes, improvements, and modifications are intended to be made by this specification and are within the spirit and scope of the exemplary embodiments described herein.
[0199] Furthermore, certain terms in this specification have been used to describe embodiments of this specification. For example, "an embodiment," "an embodiment," and / or "some embodiments" mean that a particular feature, structure, or characteristic described in connection with that embodiment may be included in at least one embodiment of this specification. Therefore, it is to be emphasized and understood that two or more references to "an embodiment" or "an embodiment" or "alternative embodiment" in various parts of this specification do not necessarily refer to the same embodiment. Moreover, specific features, structures, or characteristics may be suitably combined in one or more embodiments of this specification.
[0200] It should be understood that in the foregoing description of the embodiments in this specification, various features are combined in a single embodiment, drawing, or description for the purpose of simplifying the description and aiding in the understanding of a feature. However, this does not mean that the combination of these features is necessary, and those skilled in the art may readily identify some of the devices as separate embodiments when reading this specification. That is, the embodiments in this specification can also be understood as an integration of multiple secondary embodiments. It is also valid when each secondary embodiment contains fewer than all the features of a single foregoing disclosed embodiment.
[0201] Every patent, patent application, publication of a patent application, and other material such as articles, books, specifications, publications, documents, articles, etc., cited herein, except for any related historical prosecution documents, any identical ones that may be inconsistent with or conflict with this document, or any identical historical prosecution documents that may have a limiting effect on the widest scope of the claims, may be incorporated herein by reference and used for all purposes now or hereafter in connection with this document. Furthermore, in the event of any inconsistency or conflict between the description, definition, and / or use of terms related to any included material and those related to this document, the terminology used herein shall prevail.
[0202] Finally, it should be understood that the embodiments disclosed herein are illustrative of the principles of the embodiments described in this specification. Other modified embodiments are also within the scope of this specification. Therefore, the embodiments disclosed in this specification are merely examples and not limitations. Those skilled in the art can implement the applications described in this specification using alternative configurations based on the embodiments in this specification. Therefore, the embodiments in this specification are not limited to the embodiments precisely described in the applications.
Claims
1. A method for predicting temperature in 3D printing, characterized in that, include: Based on the start time and time step of the current temperature prediction, a temperature prediction time window is determined. The time step is determined based on the printing length of the target printing unit located within the heat-affected zone of the unit being printed in the previous temperature prediction. The printing status of multiple printing units in the 3D model within the temperature prediction time window is determined, and the printing status includes units that are being printed and units that have been printed. Determine the temperature prediction data of the plurality of printing units within the temperature prediction time window; as well as Output the temperature prediction data.
2. The method according to claim 1, characterized in that, The determination of the temperature prediction time window based on the start time and time step of temperature prediction includes: The end time of the previous temperature prediction is taken as the start time of the current temperature prediction. The target printing unit is determined from the units that have already been printed in the previous temperature prediction. A first duration and a second duration corresponding to the target printing unit are determined. The first duration is related to the length of the target printing unit and the moving speed of the print head. The second duration is at least related to the length of the target printing unit, the density of the material, the specific heat capacity, and the thermal conductivity. The shorter of the first duration and the second duration is used as the time step for the current temperature prediction; and Based on the start time of the temperature prediction and the time step, the end time of the current temperature prediction is determined, thereby determining the temperature prediction time window.
3. The method according to claim 2, characterized in that, Determining the target printing unit from the units that have already been printed in the previous temperature prediction includes: Determine the position coordinates of the units that have been printed in the previous temperature prediction and the position coordinates of the units that are being printed in the previous temperature prediction; Based on the position coordinates of the units that were already printed in the previous temperature prediction and the position coordinates of the units that were being printed in the previous temperature prediction, determine the interval distance between the units that were already printed in the previous temperature prediction and the units that were being printed in the previous temperature prediction; and The units whose interval distance is less than a first preset distance threshold among the units that have been printed in the previous temperature prediction are designated as the target printing units.
4. The method according to claim 2, characterized in that, Determining the target printing unit from the units that have already been printed in the previous temperature prediction includes: Determine the cooling rate of the cells that were printed in the previous temperature prediction; and The unit whose cooling rate is less than a preset cooling rate threshold among the units that have been printed in the previous temperature prediction is selected as the target printing unit.
5. The method according to claim 2, characterized in that, Determining the target printing unit from the units that have already been printed in the previous temperature prediction includes: Determine the printing time of the cells that were printed in the previous temperature prediction; and The target printing unit is the unit in which the time interval between the printing time of the unit that was printed in the previous temperature prediction and the start time of the current temperature prediction is less than the heat-affected time.
6. The method according to claim 1, characterized in that, Determining the printing state of each printing unit among multiple printing units in the 3D model includes: Determine the start printing time for each printing unit; and The printing status is determined based on the start printing time.
7. The method according to claim 6, characterized in that, Determining the printing status based on the start printing time includes: If the start printing time falls within the temperature prediction time window, the printing state is determined to be the unit that is currently printing; or If the start printing time is before the temperature prediction time window, the printing status is determined to be the unit that has completed printing.
8. The method according to claim 1, characterized in that, Determining the temperature prediction data of the plurality of printing units within the temperature prediction time window includes: Based on the temperature prediction method corresponding to the printing state, the temperature prediction data of the plurality of printing units corresponding to the current temperature prediction time window is determined. The temperature prediction method includes a first temperature prediction method corresponding to the unit being printed, and a second temperature prediction method corresponding to the unit that has been printed. The computational complexity of the first temperature prediction method is less than that of the second temperature prediction method.
9. The method according to claim 8, characterized in that, The printing status of the multiple printing units is represented by vectors, wherein the vector value corresponding to the unit that is printing is a first status value, the vector value corresponding to the unit that has completed printing is a second status value, and the second status value is different from the first status value. The temperature prediction data is calculated by vectors, and the temperature prediction data includes the product of the vectors of the printing status of the multiple printing units and the vector corresponding to the temperature prediction method.
10. The method according to claim 9, characterized in that, The first state value is 1, and the second state value is 0.
11. The method according to claim 1, characterized in that, Also includes: Output the temperature prediction curves of the multiple printing units in multiple temperature prediction time windows.
12. A computing device, characterized in that, Temperature prediction for 3D printing includes: At least one storage medium storing at least one instruction set for temperature prediction processing in 3D printing; and At least one processor is communicatively connected to the at least one storage medium. When the computing device is running, the at least one processor reads the at least one instruction set and executes the method according to any one of claims 1-11 according to the instructions of the at least one instruction set.