3D printing failure prediction method based on multi-dimensional data and related devices
By acquiring and analyzing the multidimensional data stream of the printer, future faults can be predicted and controlled, solving the problem of lag in fault detection during 3D printing and realizing proactive fault prediction and effective utilization of materials and time.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHANTOU UNIV
- Filing Date
- 2026-02-06
- Publication Date
- 2026-06-16
AI Technical Summary
In the existing 3D printing process, fault detection is delayed, making it impossible to predict faults before they occur, resulting in a waste of materials and time.
By acquiring the thermodynamic data stream, kinetic data stream, and instruction data stream generated by the printer during the 3D printing process, multidimensional feature extraction and splicing are performed to form a multidimensional feature tensor. The 3D printing fault prediction model is then used to predict fault information at future moments, and control is implemented based on the fault probability.
It enables proactive fault prediction, reduces material and time waste caused by printing failures, enhances the system's applicability and robustness in complex scenarios, and extends the printer's lifespan.
Smart Images

Figure CN122220731A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of 3D printing technology, and in particular to a 3D printing fault prediction method and related equipment based on multidimensional data. Background Technology
[0002] In current 3D printing processes, fault monitoring primarily relies on AI-based computer vision technology. This involves using an external USB camera or other camera device to capture images of the printing platform in real time, then analyzing these images using a convolutional neural network to determine if extrusion is interrupted due to nozzle clogging or if the 3D model exhibits obvious stringing defects. However, this entire detection process is inherently delayed, failing to anticipate faults before they occur. At this point, the 3D model is often damaged and unusable, resulting in a waste of materials and time. Summary of the Invention
[0003] The main purpose of this application is to propose a 3D printing failure prediction method and related equipment based on multidimensional data. By realizing proactive prediction before failure occurs, the waste of materials and time caused by printing failure can be effectively reduced.
[0004] To achieve the above objectives, one aspect of this application proposes a 3D printing fault prediction method based on multidimensional data, the method comprising: Acquire thermodynamic data streams, kinetic data streams, and command data streams generated during 3D printing in a printer. The thermodynamic data streams include the temperature deviation of the nozzle at multiple consecutive moments. The kinetic data streams include the root mean square current of the extruder motor at the multiple moments. The command data streams include the occupancy status values of the command buffer at the multiple moments. After extracting statistical features from the nozzle temperature deviation, extruder motor root mean square current, and command buffer occupancy status value at the multiple time points, the thermodynamic data stream, the kinetic data stream, and the command data stream are combined to form a multidimensional feature tensor. The multidimensional feature tensor is input into the 3D printing fault prediction model to predict 3D printing fault information at future moments.
[0005] Furthermore, after extracting statistical features from the nozzle temperature deviation, extruder motor root mean square current, and command buffer occupancy values at the multiple time points, the data is then concatenated with the thermodynamic data stream, the kinetic data stream, and the command data stream to form a multidimensional feature tensor, including: Based on the preset window movement step size and preset window length, the temperature deviation of the nozzle at the multiple times is divided and the variance is calculated to obtain multiple first window feature data. Based on the preset window movement step size and the preset window length, the root mean square current of the extruder motor at the multiple times is divided and the peak-to-average power ratio is calculated to obtain multiple second window feature data. Based on the preset window movement step size and the preset window length, the occupancy status value of the instruction buffer at the multiple time points is divided and the change slope is calculated to obtain multiple third window feature data; The plurality of first window feature data, the plurality of second window feature data, the plurality of third window feature data, the thermodynamic data stream, the kinetic data stream, and the instruction data stream are concatenated according to window time to form the multidimensional feature tensor; Wherein, the preset window movement step size is less than the preset window length.
[0006] Furthermore, the 3D printing failure information includes the 3D printing failure probability; the method further includes: The printer is controlled based on the 3D printing failure probability.
[0007] Furthermore, controlling the printer based on the 3D printing failure probability includes: If the 3D printing failure probability is less than the first preset probability threshold, the nozzle is controlled according to the preset printing speed, and the throat cooling fan in the printer is controlled according to the preset PWM duty cycle. If the 3D printing failure probability is greater than or equal to the first preset probability threshold but less than the second preset probability threshold, then the preset printing speed is adjusted according to the 3D printing failure probability to obtain a target printing speed, and the nozzle is controlled according to the target printing speed. The preset PWM duty cycle is adjusted according to the 3D printing failure probability to obtain a target PWM duty cycle, and the throat cooling fan is controlled according to the target PWM duty cycle. If the 3D printing failure probability is greater than or equal to the second preset probability threshold, then the printer is controlled to pause 3D printing.
[0008] Furthermore, adjusting the preset printing speed according to the 3D printing failure probability to obtain the target printing speed includes: The probability deviation is calculated based on the 3D printing failure probability and the first preset probability threshold. The speed adjustment ratio is calculated based on the preset speed attenuation coefficient and the probability deviation. The target printing speed is calculated based on the preset printing speed and the speed adjustment ratio.
[0009] Further, adjusting the preset PWM duty cycle to obtain the target PWM duty cycle based on the 3D printing failure probability includes: The duty cycle compensation value is calculated based on the preset duty cycle compensation coefficient and the 3D printing failure probability. Calculate the candidate PWM duty cycle based on the preset PWM duty cycle and the duty cycle compensation value; The candidate PWM duty cycles are compared against a threshold to determine the target PWM duty cycle.
[0010] To achieve the above objectives, another aspect of this application proposes a 3D printing fault prediction system based on multidimensional data, the system comprising: The acquisition module is used to acquire thermodynamic data stream, kinetic data stream and command data stream generated during 3D printing by the printer. The thermodynamic data stream includes the temperature deviation of the nozzle at multiple consecutive moments. The kinetic data stream includes the root mean square current of the extruder motor at the multiple moments. The command data stream includes the occupancy status value of the command buffer at the multiple moments. The processing module is used to extract statistical features from the nozzle temperature deviation, the root mean square current of the extruder motor, and the occupancy status value of the command buffer at the multiple time points, and then combine them with the thermodynamic data stream, the kinetic data stream, and the command data stream to form a multidimensional feature tensor. The prediction module is used to input the multidimensional feature tensor into the 3D printing fault prediction model to predict 3D printing fault information at future moments.
[0011] Furthermore, the 3D printing fault information includes the 3D printing fault probability; the system also includes: The control module is used to control the printer based on the 3D printing failure probability.
[0012] To achieve the above objectives, another aspect of this application proposes an electronic device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the above-described 3D printing fault prediction method based on multidimensional data.
[0013] To achieve the above objectives, another aspect of this application proposes a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described 3D printing fault prediction method based on multidimensional data.
[0014] This application offers at least the following advantages: For the thermodynamic, kinetic, and command data streams generated during 3D printing, statistical features are extracted from the thermodynamic data stream (including nozzle temperature deviation at multiple consecutive moments), the kinetic data stream (including extruder motor root-mean-square current at multiple consecutive moments), and the command data stream (including command buffer occupancy values at multiple consecutive moments). These features are then combined to form a multidimensional feature tensor. This multidimensional feature tensor is then input into a 3D printing fault prediction model to predict future 3D printing fault information. This overcomes the lag in existing visual inspection technologies, achieving a fundamental shift from passive post-detection to proactive pre-detection. It allows for more time to reserve critical response time for timely intervention, effectively reducing material and time waste due to printing failures. Furthermore, by using multidimensional log data fed back from the printer's motherboard for analysis, without relying on image data collected by an external camera, its applicability in complex or constrained scenarios is enhanced. Attached Figure Description
[0015] Figure 1 This is a flowchart illustrating a 3D printing fault prediction method based on multidimensional data provided in an embodiment of this application; Figure 2 This is a schematic diagram of the composition of a 3D printing fault prediction system based on multidimensional data provided in an embodiment of this application; Figure 3 This is a schematic diagram of the hardware structure of the electronic device provided in the embodiments of this application. Detailed Implementation
[0016] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of this application and are not intended to limit it. In the following description, when referring to the accompanying drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with those of this application; they are merely examples of systems and methods consistent with some aspects of the embodiments of this application as detailed in the appended claims.
[0017] It is understood that the terms “first,” “second,” etc., used in this application may be used herein to describe various concepts, but unless otherwise stated, these concepts are not limited by these terms. These terms are only used to distinguish one concept from another. For example, without departing from the scope of the embodiments of this application, first information may also be referred to as second information, and similarly, second information may also be referred to as first information. Depending on the context, the words “if,” “when,” or “in response to a determination” as used herein may be interpreted as “when…” or “when…” or “in response to a determination.”
[0018] As used in this application, the terms "at least one", "multiple", "each", "any", etc., "at least one" includes one, two or more, "multiple" includes two or more, "each" refers to each of the corresponding multiples, and "any" refers to any one of the multiples.
[0019] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.
[0020] With the popularization of 3D printing technologies such as FDM (Fused Deposition Modeling), their applications in prototyping, industrial parts production, and other fields are becoming increasingly widespread. However, 3D printing is an extremely time-consuming process; printing a complex model often takes tens of hours or even days. During this process, issues such as nozzle clogging, filament entanglement, thermal runaway, stepper motor step loss, or loosening of mechanical structures can easily lead to 3D printing failure.
[0021] Current 3D printers typically operate in an open-loop or semi-blind state. Once printing begins, unless manually monitored by the user, the machine has little ability to detect its own health status. When a malfunction occurs (e.g., a clogged nozzle), the machine often continues to run idle, resulting in significant waste of consumables and electricity, and potentially posing safety hazards such as fires due to prolonged dry burning. To address the monitoring issues in the current 3D printing process, industry researchers have proposed two main technical solutions, detailed below.
[0022] The first type of solution uses single-state detection technology based on physical sensors for fault monitoring. This involves equipping existing mid-to-high-end 3D printers with simple physical sensors, such as filament depletion detection switches or Hall effect sensors. When the filament runs out, triggering a mechanical switch, or when the filament stops flowing, triggering an encoder, the printer is stopped from printing. However, this type of solution can only detect a binary state—the presence or absence of filament. It completely fails to detect progressive faults such as minor nozzle blockage, thermal creep caused by a stopped cooling fan in the nozzle throat, or excessive layer buildup. This can easily lead to the 3D printer continuing to operate even when progressive faults occur, resulting in damage.
[0023] The second approach employs AI-based fault monitoring technology using computer vision. This involves capturing images of the printing platform in real time using an external USB camera or other camera device, and then analyzing the images using a convolutional neural network. Based on the image analysis results, it can be determined whether there are issues such as nozzle blockage causing extrusion interruptions or obvious stringing defects in the 3D model. However, this entire detection process has a significant lag, failing to predict faults before they occur. By this time, the 3D model is often damaged and unusable, resulting in a waste of materials and time.
[0024] In view of this, embodiments of this application provide a 3D printing fault prediction method and related equipment based on multidimensional data. This solution proposes to extract statistical features from the thermodynamic data stream, kinetic data stream, and command data stream generated during 3D printing. These features include the nozzle temperature deviation at multiple consecutive moments in the thermodynamic data stream, the root mean square current of the extruder motor at multiple consecutive moments in the kinetic data stream, and the occupancy status value of the command buffer at multiple consecutive moments in the command data stream. These features are then combined to form a multidimensional feature tensor. This multidimensional feature tensor is then input into a 3D printing fault prediction model to capture subtle feature changes before a fault occurs, thereby predicting 3D printing fault information at future moments. This overcomes the lag of existing visual inspection technologies, achieving a fundamental shift from passive post-detection to proactive pre-detection. This allows for reserving critical response time for the system to take timely intervention measures, effectively reducing the waste of materials and time caused by printing failures. Furthermore, by using multi-dimensional log data fed back from the printer's motherboard for analysis, it does not rely on image data collected by external cameras and is not affected by external ambient light, shooting angle, or printhead obstruction. This enhances the system's applicability and robustness in complex or restricted scenarios, and enables a more comprehensive perception of the printer's internal sub-health status, filling the detection gaps of existing physical sensors and improving the printer's lifespan.
[0025] This application provides a 3D printing fault prediction method based on multidimensional data, relating to the field of 3D printing technology. It can be applied to terminals, servers, or software running on either a terminal or server. In some embodiments, the terminal can be a smartphone, tablet, laptop, desktop computer, etc., but is not limited to these. The server can be configured as an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms. The server can also be a node server in a blockchain network. The software can be an application implementing the above method, but is not limited to these forms.
[0026] Please see Figure 1 , Figure 1 This is an optional flowchart illustrating a 3D printing fault prediction method based on multidimensional data provided in an embodiment of this application. The method may include, but is not limited to, the following steps S101 to S103: Step S101: Obtain the thermodynamic data stream, kinetic data stream and command data stream generated during 3D printing in the printer. The thermodynamic data stream includes the temperature deviation of the nozzle at multiple consecutive moments. The kinetic data stream includes the root mean square current of the extruder motor at multiple consecutive moments. The command data stream includes the occupancy status value of the command buffer at multiple consecutive moments. Step S102: After extracting statistical features from the nozzle temperature deviation, extruder motor root mean square current, and command buffer occupancy status value at multiple consecutive moments, the thermodynamic data stream, the kinetic data stream, and the command data stream are combined to form a multidimensional feature tensor. Step S103: Input the multidimensional feature tensor into the 3D printing fault prediction model to predict 3D printing fault information at future moments.
[0027] Steps S101 to S103 as shown in the embodiments of this application, by acquiring and fusing the thermodynamic data stream, kinetic data stream and instruction data stream generated during 3D printing in the printer, can achieve proactive prediction before the occurrence of failure, which is beneficial to reducing the waste of materials and time caused by printing failure.
[0028] In step S101 of some embodiments, the thermodynamic data stream further includes the printhead temperature deviation change rate and PWM heating duty cycle at multiple consecutive moments. The printhead temperature deviation at each moment is obtained by subtracting the target set temperature and the actual temperature of the printhead at that moment. The printhead temperature deviation change rate at each moment is obtained by first subtracting the printhead temperature deviation at that moment from the printhead temperature deviation at the previous moment, and then dividing the subtraction result by the sampling interval. The sampling interval is preferably in the range of [20ms, 100ms]. The PWM heating duty cycle at each moment refers to the duty cycle of the PWM (Pulse Width Modulation) signal required to control the operation of the heating component, which is used to heat the printhead installed inside the printer.
[0029] In step S101 of some embodiments, the dynamic data stream further includes the root mean square current of the X-axis motor, the instantaneous load feedback of the X-axis motor, the root mean square current of the Y-axis motor, the instantaneous load feedback of the Y-axis motor, the root mean square current of the Z-axis motor, the instantaneous load feedback of the Z-axis motor, and the instantaneous load feedback of the E-axis motor (i.e., the extruder motor) at multiple consecutive moments. The X-axis motor, Y-axis motor, and Z-axis motor are used to drive the printhead to move in three dimensions within the printing area. The root mean square current and instantaneous load feedback of any axis motor can be read through the UART interface of the TMC driver configured for that axis motor. The TMC driver is preferably a stepper motor driver of model TMC2209. The instantaneous load feedback of any axis motor can be determined using StallGuard technology. StallGuard technology is a sensorless load detection technology applied to stepper motors, which estimates the current load of the motor in real time by monitoring the back electromotive force naturally generated when the motor is running.
[0030] In step S101 of some embodiments, the instruction data stream further includes G-code instruction type encoding executed at multiple consecutive time points, as well as the dwell time and execution latency of the executed G-code instructions. The occupancy status value of the instruction buffer at each time point refers to the number of all G-code instructions contained in the buffer queue at that time point, reflecting the supply and demand balance between instruction transmission and physical execution. The instruction buffer can be understood as a motion planner buffer. The dwell time and execution latency of the G-code instructions executed at each time point can be calculated after tracking the timestamp of the G-code instruction entering the instruction buffer and the timestamp of the firmware feedback instruction execution completion signal. For the G-code instruction type encoding executed at each time point, for example, when the G-code instruction type executed at that time point is G1 type (i.e., linear extrusion instruction type), the recorded G-code instruction type encoding is 1; when the G-code instruction type executed at that time point is G0 type (i.e., fast traverse instruction type), the recorded G-code instruction type encoding is 0.
[0031] In some embodiments, the specific implementation of step S102 may include, but is not limited to, the following steps S201 to S204.
[0032] Step S201: Based on the preset window movement step size and preset window length, the temperature deviation of the nozzle at multiple consecutive moments is divided and the variance is calculated to obtain multiple first window feature data; wherein, the preset window movement step size is smaller than the preset window length. Specifically, the preset window movement step size is denoted as... That is, each swipe At any given moment, the preset window length is recorded as... That is, each window contains a continuous At each moment, the total number of sampling moments is recorded as follows: The preferred time interval between the first and last sampling moments is 5 minutes, and the total number of windows that can be captured is determined to be... , The floor sign is used; based on the preset window movement step size and the preset window length, the window slides to round down the continuous... The temperature deviation of the nozzle at each time point is divided into several parts, and the results are obtained. A first window of data; for each first window of data, the data contained in that first window of data in a continuous sequence... The temperature deviation of the nozzle at each time point is statistically transformed to obtain the variance value, and this variance value is then used as the variance value for continuous... The first feature value corresponding to the temperature deviation of the nozzle at a given time moment is used to form the corresponding first window feature data, which contains the same... The first eigenvalue.
[0033] Considering that the temperature deviation of the nozzle can only reflect static error, while the temperature deviation variance of the nozzle can reflect the stability of PID control, a sudden increase in the temperature deviation variance of the nozzle means that the hot end of the nozzle is experiencing uncontrollable temperature fluctuations, which is a typical precursor to thermistor loosening or heating rod aging. In this application, by introducing the temperature deviation variance of the nozzle for evaluation, the accuracy of 3D printing fault prediction can be improved.
[0034] Step S202: Based on the preset window movement step size and the preset window length, the root mean square current of the extruder motor at multiple consecutive moments is divided and the peak-to-average power ratio is calculated to obtain multiple second window feature data. Specifically, based on the preset window movement step size and the preset window length, a window sliding method is used to continuously slide the window. The root mean square current of the extruder motor at each time point is divided to obtain... Each second window of data; for each second window of data, the data contained in that second window of data in a continuous sequence... The root mean square current of the extruder motor at each time point is statistically transformed to obtain the peak-to-average power ratio. This peak-to-average power ratio is then used as the value for continuous... The second characteristic value corresponding to the root mean square current of the extruder motor at a given time is used to form the corresponding second window of characteristic data, which contains the same... The second eigenvalue.
[0035] Considering that the increase in the root mean square current of the extruder motor may be caused by accelerating the printing speed under normal conditions, and the increase in the peak-to-average power ratio means that the root mean square current waveform of the extruder motor has severe glitch characteristics, which usually corresponds to the periodic resistance change generated when the extruder gear is biting the filament, this is a typical precursor to the extruder gear biting or the extruder motor losing steps. In this application, by introducing the peak-to-average power ratio for evaluation, the accuracy of 3D printing fault prediction can be improved.
[0036] Step S203: Based on the preset window movement step size and the preset window length, divide the occupancy status value of the instruction buffer at multiple consecutive time points and calculate the change slope to obtain multiple third window feature data. Specifically, based on the preset window movement step size and the preset window length, a window sliding method is used to continuously slide the window. The occupancy status of the instruction buffer at each time point is divided to obtain... Each third window of data; for each third window of data, the data contained in that third window of data in a continuous sequence... To obtain the slope of change, a statistical transformation is performed on the occupancy status values of the instruction buffer at each time point. This can be achieved by using the least squares method on the continuous... After fitting a straight line to the occupancy status value of the instruction buffer at each time point, the slope of the line is calculated and used as the slope of change. This slope can be used to determine whether the instruction buffer is in a stable full state, an empty state, or a rapidly depleting leaking state. This slope is then used as the slope for continuous... The third feature value corresponding to the occupancy status value of the instruction buffer at each time point is used to form the corresponding third window feature data, which contains the same... The third eigenvalue.
[0037] Step S204: The multiple first window feature data, multiple second window feature data, multiple third window feature data, the thermodynamic data stream, the kinetic data stream and the instruction data stream are spliced together according to window time to form a multidimensional feature tensor; Among them, the multidimensional feature tensor is composed of It consists of matrices, each with dimensions of . , To represent the total number of all raw values and statistical values at each time point, each row of each matrix records all raw values and statistical values at the same time point. The raw values originate from the thermodynamic data stream, the kinetic data stream, and the command data stream. The statistical values originate from multiple first-window feature data, multiple second-window feature data, and multiple third-window feature data. It can be understood that each matrix corresponds to a truncation window, which defines a time range. Thermodynamic data falling within this time range is selected from the thermodynamic data stream, kinetic data falling within this time range from the kinetic data stream, command data falling within this time range from the command data stream, a single first-window feature data falling within this time range from multiple first-window feature data, a single second-window feature data falling within this time range from multiple second-window feature data, and a single third-window feature data falling within this time range from multiple third-window feature data. All the selected data are then organized row by row according to the sampling time to form the matrix.
[0038] In this application, by introducing sliding window feature engineering, relevant time series data are overlapped and sliced, and statistical features are extracted and data is stitched within the window. This transforms discrete points into multidimensional feature tensors with temporal correlation, which helps subsequent models learn the dependencies across time steps and effectively capture the data perturbation features before the fault occurs to make more reliable predictions.
[0039] In step S103 of some embodiments, the 3D printing fault prediction model can be constructed based on an improved Bi-LSTM (Bidirectional Long Short-Term Memory) model. This improved Bi-LSTM model is formed by connecting a fully connected layer to the output layer of a traditional Bi-LSTM model, and using the Softmax activation function in this fully connected layer. Utilizing the bidirectional scanning characteristics of the traditional Bi-LSTM model, it can simultaneously capture the past evolution and future trends of fault features. The training process of this improved Bi-LSTM model is described below: First, a pre-collected training sample dataset is accessed, containing several training samples. Each training sample carries a unique label: label 0 (no future failure), label 1 (nearly nozzle clogging), label 2 (future thermal runaway), or label 3 (future motor step loss). This training sample dataset should cover all four label categories. Each training sample includes historical thermodynamic data streams, historical dynamic data streams, and historical command data streams generated during 3D printing. Then, step S102 is used to process each training sample to obtain several corresponding historical multidimensional feature tensors. Finally, the improved Bi-LSTM model is trained based on a preset loss function, the historical multidimensional feature tensors, and the label corresponding to each historical multidimensional feature tensor, to obtain the 3D printing fault prediction model. Preferably, the preset loss function is the cross-entropy loss function.
[0040] In step S103 of some embodiments, the 3D printing fault prediction model directly outputs a multidimensional probability vector at a future time, denoted as... , The probability that no 3D printing failures will occur at that future point in time. This represents the probability of a nozzle clogging failure occurring at that future moment. The probability of thermal runaway occurring at that future moment. To determine the probability of a motor step loss fault occurring at a future time, the maximum value of the multidimensional probability vector at that future time is extracted to identify the 3D printing fault information at that future time, including the type of 3D printing fault occurring at that future time and its corresponding 3D printing fault probability.
[0041] Based on this, in order to achieve intelligent closed-loop intervention and self-healing function in the early stage of failure, the above-mentioned 3D printing failure prediction method based on multidimensional data may also include the following: Step S104: Based on the 3D printing failure probability, control the printer, specifically in the following three ways: In the first case, if the probability of 3D printing failure is less than the first preset probability threshold, preferably 30%, it means that the current 3D printing process is stable. At this time, the nozzle is controlled according to the preset printing speed, and the throat cooling fan in the printer is controlled according to the preset PWM duty cycle. In the second scenario, if the 3D printing failure probability is greater than or equal to the first preset probability threshold but less than the second preset probability threshold, preferably 70%, it indicates that the current 3D printing process has a progressive failure risk such as nozzle pressure buildup or precursors of thermal creep. In this case, the preset printing speed is adjusted according to the 3D printing failure probability to obtain the target printing speed, and the nozzle is controlled according to the target printing speed. The preset PWM duty cycle is adjusted according to the 3D printing failure probability to obtain the target PWM duty cycle, and the throat cooling fan is controlled according to the target PWM duty cycle. In the third scenario, if the probability of a 3D printing failure is greater than or equal to the second preset probability threshold, it indicates that there is an irreversible failure in the current 3D printing process, such as severe head blockage or thermal runaway. In this case, the printer is controlled to pause 3D printing. Specifically, the heat source inside the printer is controlled to stop heating the nozzle of the print head, the extruder motor is controlled to rotate in the opposite direction to forcefully retract the filament, and then the print head is moved to a preset safe coordinate position. At the same time, an alarm message can be generated and sent to the user terminal through the cloud interface.
[0042] In this application, by introducing a dynamic hierarchical control strategy based on failure probability, the system can effectively manage printing tasks that would otherwise fail, reduce unnecessary downtime losses, and improve printing success rate and unattended reliability while ensuring printing safety.
[0043] In the second scenario described above, regarding the adjustment of the preset printing speed to obtain the target printing speed based on the 3D printing failure probability, the corresponding implementation may include, but is not limited to, the following steps S301 to S303: Step S301: Calculate the probability deviation based on the 3D printing failure probability and the first preset probability threshold. This can be achieved using the following expression: ; In the formula, This probability bias, This represents the probability of failure in 3D printing. This is the first preset probability threshold; Step S302: Calculate the speed adjustment ratio based on the preset speed attenuation coefficient and the probability deviation. This can be achieved using the following expression: ; In the formula, Adjust the ratio for this speed. The preset speed attenuation coefficient is preferably 1.5; Step S303: Calculate the target printing speed based on the preset printing speed and the speed adjustment ratio. This can be achieved using the following expression: ; In the formula, For this target printing speed, This is the preset printing speed.
[0044] In this application, by employing an inverse mapping strategy, the printing speed of the nozzle is controlled to decrease linearly or non-linearly when the probability of 3D printing failure increases. This can alleviate the pressure buildup inside the extruder and maximize the physical recovery time.
[0045] In the second scenario described above, regarding the adjustment of the preset PWM duty cycle to obtain the target PWM duty cycle based on the 3D printing failure probability, the corresponding implementation may include, but is not limited to, the following steps S401 to S403: Step S401: Calculate the duty cycle compensation value based on the preset duty cycle compensation coefficient and the 3D printing failure probability. This can be achieved using the following expression: ; In the formula, This is the duty cycle compensation value. The preset duty cycle compensation coefficient is preferably 0.5; Step S402: Calculate the candidate PWM duty cycle based on the preset PWM duty cycle and the duty cycle compensation value. This can be achieved using the following expression: ; In the formula, The duty cycle of this candidate PWM. This is the preset PWM duty cycle; Step S403: Perform a threshold comparison on the candidate PWM duty cycle to determine the target PWM duty cycle. This can be achieved using the following expression: ; In the formula, For the target PWM duty cycle, The preset duty cycle threshold is preferably 100%.
[0046] In this application, by adopting a proportional compensation strategy to control the PWM duty cycle of the throat cooling fan to increase when the probability of 3D printing failure increases, the upward flow of heat can be suppressed, thereby effectively reducing the risk of thermal creep caused by poor heat dissipation.
[0047] Please see Figure 2 , Figure 2 This is an optional schematic diagram of a 3D printing fault prediction system based on multidimensional data provided in an embodiment of this application. This system can implement the aforementioned 3D printing fault prediction method based on multidimensional data, and may include, but is not limited to, the following: The acquisition module 501 is used to acquire the thermodynamic data stream, kinetic data stream and command data stream generated during 3D printing by the printer. The thermodynamic data stream includes the temperature deviation of the nozzle at multiple consecutive moments, the kinetic data stream includes the root mean square current of the extruder motor at multiple consecutive moments, and the command data stream includes the occupancy status value of the command buffer at multiple consecutive moments. The processing module 502 is used to extract statistical features from the nozzle temperature deviation, the root mean square current of the extruder motor, and the occupancy status value of the command buffer at multiple consecutive moments, and then combine the thermodynamic data stream, the kinetic data stream, and the command data stream to form a multidimensional feature tensor. The prediction module 503 is used to input the multidimensional feature tensor into the 3D printing fault prediction model to predict 3D printing fault information at future moments.
[0048] In some embodiments, the 3D printing fault information includes a 3D printing fault probability, and the system may further include a control module 504 for controlling the printer based on the 3D printing fault probability.
[0049] It is understood that the content of the above method embodiments is applicable to this system embodiment. The specific functions implemented in this system embodiment are the same as those implemented in the above method embodiments, and the beneficial effects achieved by this system embodiment are also the same as those achieved by the above method embodiments.
[0050] This application also provides an electronic device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the above-described 3D printing fault prediction method based on multidimensional data. This electronic device can include any smart terminal such as a tablet computer or desktop computer.
[0051] It is understood that the content of the above method embodiments is applicable to the present device embodiments. The specific functions implemented by the present device embodiments are the same as those implemented by the above method embodiments, and the beneficial effects achieved by the present device embodiments are also the same as those achieved by the above method embodiments.
[0052] Please see Figure 3 , Figure 3 This is a schematic diagram illustrating the hardware structure of an electronic device according to another embodiment. The electronic device includes: The processor 601 can be implemented using a general-purpose CPU (Central Processing Unit), microprocessor, application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of this application. The memory 602 can be implemented as a read-only memory (ROM), static storage device, dynamic storage device, or random access memory (RAM). The memory 602 can store the operating system and other applications. When the technical solutions provided in the embodiments of this application are implemented through software or firmware, the relevant program code is stored in the memory 602 and is called and executed by the processor 601. The input / output interface 603 is used to implement information input and output; The communication interface 604 is used to enable communication and interaction between this device and other devices. Communication can be achieved through wired means (such as USB, network cable, etc.) or wireless means (such as mobile network, WIFI, Bluetooth, etc.). Bus 605 transmits information between various components of the device (e.g., processor 601, memory 602, input / output interface 603, and communication interface 604); The processor 601, memory 602, input / output interface 603 and communication interface 604 are connected to each other within the device via bus 605.
[0053] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described 3D printing fault prediction method based on multidimensional data.
[0054] It is understood that the content of the above method embodiments is applicable to this storage medium embodiment. The specific functions implemented by this storage medium embodiment are the same as those implemented by the above method embodiments, and the beneficial effects achieved by this storage medium embodiment are also the same as those achieved by the above method embodiments.
[0055] Memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs and non-transitory computer-executable programs. Furthermore, memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, memory may optionally include memory remotely located relative to the processor, and these remote memories can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
[0056] The embodiments described in this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided by the embodiments of this application. As those skilled in the art will know, with the evolution of technology and the emergence of new application scenarios, the technical solutions provided by the embodiments of this application are also applicable to similar technical problems.
[0057] Those skilled in the art will understand that the technical solutions shown in the figures do not constitute a limitation on the embodiments of this application, and may include more or fewer steps than shown, or combine certain steps, or different steps.
[0058] The system embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.
[0059] Those skilled in the art will understand that all or some of the steps in the methods disclosed above, as well as the functional modules / units in the systems and devices, can be implemented as software, firmware, hardware, or suitable combinations thereof.
[0060] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in the specification and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0061] It should be understood that in this application, "at least one (item)" means one or more, and "more than" means two or more. "And / or" is used to describe the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: only A exists, only B exists, and both A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.
[0062] In the embodiments provided in this application, it should be understood that the disclosed systems and methods can be implemented in other ways. For example, the system embodiments described above are merely illustrative; for instance, the division of the units described above is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between systems or units may be electrical, mechanical, or other forms.
[0063] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0064] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0065] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes multiple instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing programs, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0066] The preferred embodiments of the present application have been described above with reference to the accompanying drawings, but this does not limit the scope of the claims of the present application. Any modifications, equivalent substitutions, and improvements made by those skilled in the art without departing from the scope and substance of the embodiments of the present application shall be within the scope of the claims of the present application.
Claims
1. A 3D printing fault prediction method based on multidimensional data, characterized in that, The method includes: Acquire thermodynamic data streams, kinetic data streams, and command data streams generated during 3D printing in a printer. The thermodynamic data streams include the temperature deviation of the nozzle at multiple consecutive moments. The kinetic data streams include the root mean square current of the extruder motor at the multiple moments. The command data streams include the occupancy status values of the command buffer at the multiple moments. After extracting statistical features from the nozzle temperature deviation, extruder motor root mean square current, and command buffer occupancy status value at the multiple time points, the thermodynamic data stream, the kinetic data stream, and the command data stream are combined to form a multidimensional feature tensor. The multidimensional feature tensor is input into the 3D printing fault prediction model to predict 3D printing fault information at future moments.
2. The 3D printing fault prediction method based on multidimensional data according to claim 1, characterized in that, After extracting statistical features from the nozzle temperature deviation, extruder motor root mean square current, and command buffer occupancy values at the multiple time points, the data streams—the thermodynamic data stream, the kinetic data stream, and the command data stream—are concatenated to form a multidimensional feature tensor, including: Based on the preset window movement step size and preset window length, the temperature deviation of the nozzle at the multiple times is divided and the variance is calculated to obtain multiple first window feature data. Based on the preset window movement step size and the preset window length, the root mean square current of the extruder motor at the multiple times is divided and the peak-to-average power ratio is calculated to obtain multiple second window feature data. Based on the preset window movement step size and the preset window length, the occupancy status value of the instruction buffer at the multiple time points is divided and the change slope is calculated to obtain multiple third window feature data; The plurality of first window feature data, the plurality of second window feature data, the plurality of third window feature data, the thermodynamic data stream, the kinetic data stream, and the instruction data stream are concatenated according to window time to form the multidimensional feature tensor; Wherein, the preset window movement step size is less than the preset window length.
3. The 3D printing fault prediction method based on multidimensional data according to claim 1, characterized in that, The 3D printing failure information includes the 3D printing failure probability; the method further includes: The printer is controlled based on the 3D printing failure probability.
4. The 3D printing fault prediction method based on multidimensional data according to claim 3, characterized in that, The step of controlling the printer based on the 3D printing failure probability includes: If the 3D printing failure probability is less than the first preset probability threshold, the nozzle is controlled according to the preset printing speed, and the throat cooling fan in the printer is controlled according to the preset PWM duty cycle. If the 3D printing failure probability is greater than or equal to the first preset probability threshold but less than the second preset probability threshold, then the preset printing speed is adjusted according to the 3D printing failure probability to obtain a target printing speed, and the nozzle is controlled according to the target printing speed. The preset PWM duty cycle is adjusted according to the 3D printing failure probability to obtain a target PWM duty cycle, and the throat cooling fan is controlled according to the target PWM duty cycle. If the 3D printing failure probability is greater than or equal to the second preset probability threshold, then the printer is controlled to pause 3D printing.
5. The 3D printing fault prediction method based on multidimensional data according to claim 4, characterized in that, The step of adjusting the preset printing speed according to the 3D printing failure probability to obtain the target printing speed includes: The probability deviation is calculated based on the 3D printing failure probability and the first preset probability threshold. The speed adjustment ratio is calculated based on the preset speed attenuation coefficient and the probability deviation. The target printing speed is calculated based on the preset printing speed and the speed adjustment ratio.
6. The 3D printing fault prediction method based on multidimensional data according to claim 4, characterized in that, The step of adjusting the preset PWM duty cycle to obtain the target PWM duty cycle based on the 3D printing failure probability includes: The duty cycle compensation value is calculated based on the preset duty cycle compensation coefficient and the 3D printing failure probability. Calculate the candidate PWM duty cycle based on the preset PWM duty cycle and the duty cycle compensation value; The candidate PWM duty cycles are compared against a threshold to determine the target PWM duty cycle.
7. A 3D printing fault prediction system based on multidimensional data, characterized in that, The system includes: The acquisition module is used to acquire thermodynamic data stream, kinetic data stream and command data stream generated during 3D printing by the printer. The thermodynamic data stream includes the temperature deviation of the nozzle at multiple consecutive moments. The kinetic data stream includes the root mean square current of the extruder motor at the multiple moments. The command data stream includes the occupancy status value of the command buffer at the multiple moments. The processing module is used to extract statistical features from the nozzle temperature deviation, the root mean square current of the extruder motor, and the occupancy status value of the command buffer at the multiple time points, and then combine them with the thermodynamic data stream, the kinetic data stream, and the command data stream to form a multidimensional feature tensor. The prediction module is used to input the multidimensional feature tensor into the 3D printing fault prediction model to predict 3D printing fault information at future moments.
8. The 3D printing fault prediction system based on multidimensional data according to claim 7, characterized in that, The 3D printing failure information includes the 3D printing failure probability; the system also includes: The control module is used to control the printer based on the 3D printing failure probability.
9. An electronic device, characterized in that, The electronic device includes a memory and a processor. The memory stores a computer program, and when the processor executes the computer program, it implements the 3D printing fault prediction method based on multidimensional data as described in any one of claims 1 to 6.
10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it implements the 3D printing fault prediction method based on multidimensional data as described in any one of claims 1 to 6.