PerceptEngine Features - AutoCorrection


PerceptEngine Features - Part V

I previously discussed the importance of the SolidScore metric and Thresholding feature offered by PerceptEngine. The primary take away is that PerceptEngine is able to quantify quality with the SolidScore and then have a 3D-Printer autonomously act to improve quality during the fabrication process. This greatly increases unattended operation efficiency and makes Additive more appealing to the modern manufacturing supply chain (i.e. improved Additive adoption). 

But how is the printer able to improve quality without an operators help?

We've developed a system that makes a 3D-Printer self-aware in terms of how well it's building a specified part. I discussed what I mean by self-aware, in detail, in a previous post. This self-awareness provides a printer the tools to fix issues on it's own, without the need of user input.

Our Smart 3D-Printer system has three distinct autonomous phases once a print has started:

  1. Assess

    The assessment process, performed every layer, consists of autonomous in-situ process monitoring data collection, storage, and real-time analysis via the SolidScore metric. The analysis performed by the SolidScore algorithm quantifies part quality during the fabrication process.
  2. Inform

    After the quality for a specific layer has been quantified, the SolidScore metric has a unique value permanently stored for that layer. The system then autonomously begins tracking SolidScore values as they change with every layer. If a significant enough error occurs during the fabrication process, the SolidScore value for that layer would see a significant change. This change in quality violates user thresholds which are pre-set prior to the start of the printing process. Once violated, thresholds activate the printers ability to take evasive action to avoid significant quality issues or build failure. 
  3. Correct

    Currently, these evasive actions, provided by PerceptEngine's Thresholding feature, can alert operators via text or email, pause the printing process, stop the printing process entirely, and/or AutoCorrect errors causing decreased component quality before moving onto the next layer. If an AutoCorrection threshold is violated, the printer does not move to the next layer but instead assesses if specific additional printing operations could be performed to improve the quality of that layer. If yes, PerceptEngine autonomously generates machine code for those specific additional operations. This machine code is then injected in real-time during the printing process, these actions are carried out by the printer and then the three steps outlined here repeat until the SolidScore metric value no longer violates the pre-set user threshold. Once the AutoCorrection threshold is no longer violated, the printer proceeds to the next layer.

Hold your horses pal, you're saying the printer can tell it's self what to do?

Exactly! But only if you told it before the print started to tell it's self what to do if something goes wrong during the print by setting an AutoCorrection threshold.

Do you have a graphic or something to explain this?

As a matter of fact, we do!

AutoCorrection Graphical Depiction 

AutoCorrection Graphical Depiction 

The above graphic shows how AutoCorrection, as it exists today, can improve the geometric quality of a layer during the 3D-Printing process. For this example I use a simple one inch cube as the geometry and material extrusion (FFF/FDM) as the 3D-Printing process. After pressing print and setting an AutoCorrection threshold, the printer begins making the first layer.

Based on the digital model, the first layer of the cube should be a square as seen in the top left image of the graphic. Upon completion of the first layer, PerceptEngine collects data of what was actually printed for that layer (top middle image). Obviously there are differences between the digital model for that layer and the printed model.

PerceptEngine then assesses the differences and creates a variance image as seen in the top right of the graphic. The variance image provides information to produce the SolidScore value for that layer. PerceptEngine informs the operator of the SolidScore value and autonomously checks to see if the AutoCorrection threshold was violated. 

After determining the AutoCorrection threshold was violated, PerceptEngine begins to take action to improve layer quality. In this case, AutoCorrection is focused on ensuring there is never too little material during the fabrication process (i.e. any yellow areas). To accomplish adding material to exactly the correct areas, PerceptEngine extracts the yellow from the variance image (bottom left image), autonomously writes machine code to add more material to those areas (middle bottom image), injects that machine code into the printer and carries out the corrections to create a better layer as seen in the bottom right image.

Why only worry about the yellow areas which don't have enough material? Can't you do something about the red areas too?

Coming from both an Additive and Subtractive manufacturing background, we realized having more material than you need on your 3D-Printed part is better than having not enough. The logic behind this is that you can generally remove material if there's too much in order to meet customer part specifications. Where as if there isn't enough material in the correct spot when your 3D-Printed part finishes, you're usually up the creek.

When it comes to the red areas on the variance image, it's important to understand that 3D-Printers are great at adding material to parts but are usually ill equipped with the tools to subtract material (this isn't always the case so if your printer is capable, AutoCorrection could remove the extra material in-process as well as add material where needed).

What if geometry isn't the problem, what about material mechanical property errors that occur in-process? 

We are currently adapting the SolidScore metric to account for mechanical properties during the fabrication process, once this is completed, AutoCorrection will also be applicable of adjusting material mechanical properties when correcting in-process errors.

What's the end goal of AutoCorrection?

The ultimate objective for AutoCorrection is to fix any errors during the printing process that negatively impact the quality and customer acceptance of 3D-Printed parts. Beyond this, PerceptEngine is closing the in-process loop with automation which means 3D-Printing will be an entirely unattended manufacturing process. Improving part quality and the success rate(s) of Additive processes will greatly improve Additive Manufacturing's chances for mass adoption.  

Solid Innovations' was founded under the promise AutoCorrection offers 3D-Printing. Our logo, the infinity symbol, is even an Easter egg representing the closed-loop nature of an automated Additive workflow.

Solid Innovations with Slogan Logo.png

Next up on the chopping block, automated quality and traceability report generation for every build.

- Joseph M. Sinclair

Interested in seeing if PerceptEngine is right for you? Sign up for our free Beta Program and join the revolution today!

Stay Tuned, More Posts Coming Soon...