MIT Researchers Create a ‘Smart’ 3D Printer That Can Locate an Object & Print on Top of it

Last week, I reported on 3 MIT students that had created a 3D Printer capable of printing with ice cream. The Ice Cream 3D Printer was developed as part of Professor John Hart’s graduate class on additive manufacturing. It was a very unique design, taking into account many factors that most of us probably would not have thought of. While these three students were busy working on a system to 3D print ice cream, three other students in the class were working on another 3D printing project.

claudio5

Printer located the partial pyramid and proceeded to precisely print a blue cube on top.

3DPrint.com was able to catch up with MIT students, Claudio V. Di Leo, Louise E. van den Heuvel, and Sumant S. Raykar, who set out to create a unique 3D printing system, with 3 goals in mind:

  1. To create an affordable 3D scanning system that is designed to be both cost effective, and able to fit inside of a 3D printer, in order to enhance the process of 3D printing. The students wished to do so with minimal modifications to the Solidoodle 3D printer that they had been provided to work with.
  2.  Utilize the scanner inside of the 3D printer to detect the position and orientation of a part that has been placed on the print bed, and then print an additional part on top of that object. They wanted the scanner to be able to accurately, with sub-mm precisions, capture the top-most layer of the object that had been placed within the 3D printer.
  3. Use this method to restart a print job that had just been interrupted at an arbitrary location.

claudio11

The scanner that the students created included two main components, a line laser and a camera.

“Attached to the printhead is a line laser (Infiniter VLM-650-27) which projects a laser line onto the print bed,” the students explained. “Attached to the Solidoodle frame is a webcam (Logitech B905 2MP Webcam) which is angled towards the print bed.”

In order for the scanner to work correctly, the students had to make sure that the plane formed by the laser was perpendicular to the print bed, meaning that the laser had to be placed facing straight down. If this were not done as accurately as possible, the results would not have been recorded properly. To ensure that this was the case, they 3D printed a 90 degree laser holder, and then taped it to the print head, which always remains parallel to the print bed.

The way the 3D scanner operates is really ingenious. It uses a laser that is projected onto the build platform. If an object is laying on the platform, the laser line will become distorted (see image below).

Showing the distortion of the laser, which is then photographed with the camera

Showing the distortion of the laser, which is then photographed with the camera

“Through this distortion we can reconstruct the height of the object at the points where the laser is hitting the object,” they explained. “We then use the printhead, onto which the laser is attached, to move the laser to a new location for scanning. Once the laser line has moved over the entire surface of interest we will have scanned as much of the object of interest as visible from the camera.”

claudio9Claudio V. Di Leo tells 3DPrint.com that the line laser cost $26.00, while the camera cost approximately $30.00, and because the line laser was mounted directly to the Solidoodle’s print head, they didn’t need to purchase any additional hardware. “So if you have a printer, like a Solidoodle, the in-situ scanner hardware can be achieved for around 60 bucks,” explained Di Leo.

The scanner that Di Leo and his colleagues created was designed so that it could provide very accurate data about the top of an object in the 3D printer, by producing elaborate point cloud data. This means that it could be used to determine the top layer of an interrupted 3D printed object, or even the very top of an object that has been placed inside of the 3D printer, in order to have additional material printed on top of it. In essence the group of students had created a “smart” 3D printer capable of adding additional material onto already solid objects, in a manner that is extremely precise.

claudio2Di Leo tells us that they experimented with their modified machine, by placing an object (an incomplete pyramid) in the 3D printer. This object had been previously 3D printed using ABS plastic. They then used the internal scanner to determine where the top layer (z-height) of the object was located, using point cloud data. The printer then began to print a cube precisely on top of the original object (see video below). “The cube was PLA, since it adheres well even without the substrate being hot,” explained Di Leo.

The result was what they had expected. The PLA cube had been placed exactly where they wanted, and it had bonded itself to the original ABS object. “The bonding is fair, but can be broken off. It is mainly held together by the hot PLA adhering to the ABS substrate,” said Di Leo.

The cube was 3D printed on top of the partial pyramid

The cube was 3D printed on top of the partial pyramid

If you own a 3D printer you probably have run into the fairly common issue of having your 3D print get interrupted mid-print, or perhaps you manually needed to stop it because you realized something in the g-code was incorrect. This can be a huge problem that can cause time and material to be wasted. This group of students wanted to show that their 3D printer would be able to resume 3D printing of an object that had been previously halted. To do this they purposefully stopped a 3D printing job at an arbitrary time. They then used the internal scanner to identify the layer that was currently being printed. After doing this, they trimmed the g-code and resumed the print. As they had expected, the 3D printer was able to resume the previously halted job.

While the cost for creating this “smart” 3D printer is very minimal, it does requires some advanced software.

This is the object that was halted than restarted

This is the object that was halted than restarted

“All of the image acquisition and processing was done in Matlab, so you would also need access to that software unless of course you develop your own algorithms,” Di Leo told us. “But we did use some of the built-in algorithms in Matlab for acquiring images and analyzing the image distortion, etc. I think when I get a chance I will try to clean-up the Matlab codes I wrote and publish them somewhere so that other people can play around/expand on it.”

Di Leo and his colleagues set out to test and prove that their 3D printer could located an object and then precisely print additional material on top of that object.  They succeeded, but they also believe that this affordable scanning technology could be used to provided periodic inspections of ongoing print jobs.  ” This would prevent downtime of the machine by detecting failed jobs and alerting the user, or automatically removing and restarting the print job,” the students explained.

Another possible use for the scanner would be to calibrate the 3D printer in several different ways, including homing the z-coordinate and leveling the print bed.  However, the most interesting possible utilization of this internal scanner would be for the creation of composite structures, as well as for embedding electronic or functional parts into a print.  “Here the main difficulty is the development of tool paths that would avoid collision with the foreign object,” they wrote.

At this time, the group of students don’t have any solid plans to continue to develop this further. However, if there is enough interest, who knows.  They did mention several areas where they believe this printer could be improved upon.  They would like to include an additional calibration step to assure that the laser line is directly perpendicular to the print bed.  They also feel that an additional camera, placed on the printer frame, opposite to the current one, would allow for the user to get a full discretization of the object with a single scan.

What do you think about this “Smart” 3D Printer? Would you have a significant use for something like this? Discuss in the MIT Smart 3D Printer forum thread on 3DPB.com.

 

 

You may also like...

Follow

Get every new post delivered to your Inbox

Join other followers