Vibration-Mitigating Algorithm Increases Speed of 3D Printing

The solution to 3D-printing vibration issues may not lie in the hardware, but in the software.

The average 3D printer is a hardworking machine. While the print head zips along the X, Y, and Z axis, it can’t zip too fast, or vibration will cause degradation in the print quality. This is particularly true of smaller, more lightweight printers used by consumers and small businesses. Motors have gotten faster in recent years, but there’s only so fast they can go before the machine begins to “skip counts,” which results in layer registration errors. This can result in wavy “ghosted” surfaces on the printed item at best and comically (and costly) misprinted mistakes at worst.

There are limits to what can be done mechanically to reduce vibration. Mechanical fixes involve the addition of material to increase stiffness or damping. This additional material, however, increases the weight and cost of the printer. Stiffer, higher quality parts can also help, but they drive up costs. The addition of damping often increases friction, which can cause precision issues and increase wear and tear.

The solution to vibration may not lie in the hardware, but in the software. “Look ahead” algorithms allow the printer to prepare for what’s coming and alter its operation. A properly built algorithm could also enable the printer to cut corners when possible if a stop at a sharp corner is unnecessary.

A typical print of a U.S. Capitol replica using a HICTOP Prusa i3 3-D printer at normal speed.

A failed print of a U.S. Capitol replica using a HICTOP Prusa i3 3-D printer pushed to ~2x speed.

A successful print of a U.S. Capitol replica using a HICTOP Prusa i3 3-D printer at ~2x speed using the filtered b-spline (FBS) algorithm developed by Michigan Engineering researchers.

Photos: Evan Dougherty/Michigan Engineering, Communications & Marketing

Chinedum Okwudire, associate professor of mechanical engineering at the University of Michigan, together with PhD candidates Molong Duan and Deokkyun Yoon, has developed a software compensation algorithm that anticipates and mitigates vibration before it occurs. The technique, called “FBS [filtered b-spline] Vibration Compensation,” uses a model of the printer's behavior to adjust its motions to avoid or reduce vibration-induced errors.

Think of it like driving: A good driver watches not only what’s right in front of the car, but also what’s coming up the road, altering operation and speed to avoid unnecessary braking. The algorithm can be applied to nearly all 3D printers with very little necessary by way of customization for individual printers, Okwudire, who directs U-M’s Smart and Sustainable Automation Research Lab, told Design News.

“The algorithm will be pretty much the same for all printers using the same firmware,” he said. “However, the dynamic model used by the algorithm must be customized for each printer model. For example, Lulzbot Taz 6 will have one and Lulzbot Mini will have another. The beauty of our FBS algorithm is the robustness it has exhibited in our experiments so far. We have not found it to be finicky, meaning that it’s not ultra-sensitive to small variations that often occur in the real world.”

While the algorithm may be most helpful to small, lightweight printers, there are important implications for industrial printers, as well, and even other machines such as CNC machine tools, laser engravers and robots, or anywhere vibration is a problem in operation. The team has been approached by several printer manufacturers that have requested testing of the algorithm on their printers. 

“The good (and bad) thing with vibration problems is that there is a very easy and obvious cure for them, that is to slow down,” Okwudire told Design News. “This is why many feel that vibration issues are not very critical in practice. Of course, the problem is that slowing down comes at the cost of speed. We have shown that one does not need to make this hard tradeoff between speed and accuracy when it comes to vibration.”

So far, the team has achieved up to 5 g (50,000 mm/s^2) accelerations on a HICTOP Prusa i3 without failure and 5 g on a very low-cost desktop printer without a belt tensioner. While testing continues, the researchers believe they can go even higher. Without the algorithm, the highest acceleration they reached without failure was 0.3 g (3,000 mm/s^2).

“We have also noticed benefits in speed (feed rate) that accrue from using our algorithm,” said Okwudire. “So far, we have tested a 2x higher feed rate on the Lulzbot Taz 6 and HICTOP Prusa i3 without failure, but we have not yet reached the limits. We suspect that we could see even higher improvements in printing speed on some printers or print jobs. We are still in a discovery phase, and it’s exciting.”

Vibration compensation algorithms must be reasonably robust to work in practice. The research has shown mathematically that the algorithm possesses an unusual versatility that will allow it to work well under uncertainty, according to its creators. There are, however, parts of the algorithm that are still a mystery, and the team will continue to study it to better understand what’s behind its performance.

“We see lots of opportunities to improve the speed, precision, reliability and functionalities of 3D printers through software,” noted Okwudire. “This is a very virgin area in the world of 3D printing. Our goal is to remove the trial-and-error. We want a printer that is so smart and self-aware that it will self-optimize its behavior to get high quality prints without sacrificing speed. This is just our first step in this direction.”

The research was published in the Mechatronics.

Comments (0)

Please log in or register to post comments.
By submitting this form, you accept the Mollom privacy policy.
  • Oldest First
  • Newest First
Loading Comments...