This week focusses on 3d scanning and 3d printing.
The assignments for this week are two-fold:
- Test the design rules for your printer(s)
- Document your work and explain what are the limits of your printer(s) (in a group or individually)
- Design and 3D print an object (small, few cm3, limited by printer time) that could not be easily made subtractively
- 3D scan an object, try to prepare it for printing (and optionally print it)
- I have a Prusa i3 Mk3s at home for “day-to-day” printing. I also have a wooden Ultimaker 1 from 2011.
- Since the node has an Ultimaker 2+, I am curious to see the improvements between the 1 (kit version) and the 2+ (pre-assembled version).
- The Prusa is a great, almost fire-and-forget printer.
- 3d scanning is not the point-and-click most manufacturers would like you to believe it is.
3d printing is an additive technology. That means that material is added to create a model. Compared to for example CNC milling, where material is removed to create a model.
There are a number of different techniques in 3d printing. Most accessible are Fused Deposition Modelling (FDM) and Stereolithography (SLA) desktop printers.
The group project will get us up to speed with the operation of the FDM 3d printer. Since the node has two types, it will also provide a nice comparison between them.
Prusa is a Czech 3d printer company founded by Josef Prusa. It has its roots in the RepRap printer models. Prusa actively develops and improves on his models and shares his designs as open hardware and open software. His printer-farm actually produce the parts for the printers he sells, so coming close to Adrian Bowyer’s idea of self-replicating machines.
The i3 Mk3s is Prusa’s latest iteration.
Ultimaker is a Dutch 3d printer company that has its roots it the ProtoSpace hackerspace in Utrecht \o/. THey started by selling wooden kits that have to be assembled. This is the best way of learning the functioning, limits and extendibility of your printer.
The Ultimaker 2 was their first pre-assembled machine, but still using the design of the original version. I will focus mostly on this printer for the group assignment.
|Prusa i3 Mk3s||Ultimaker 2+|
|Head movement||X and Z||X and Y|
|Filament feed||direct feed||bowden feed|
|Filament diameter||1.75 mm||2.85 mm|
|Default nozzle size||0.4 mm||0.4 mm|
Because the Ultimaker uses a Bowden tube for feeding the filament, the head can be very light. It only needs to contain the heater and fans. This allows it to be fast and precise. I would like to find out if this is reflected in print-speed and accuracy.
Contrary to the RepRap-lineage, the Ultimaker moves the head in an X/Y plane and the printbed will be lowered for the Z axis.
A gppd first layer of filament is crucial for a proper print. If the first layer is not right, it can lead to problems like parts detaching from the bed before the print is done. The printer will then print in the air and a nice mess of filament-spaghetti is the result.
The printbed is attached to the printer using three screws (and three points define a plane). The printer can print a reference layer that you can use to level the bed. A proper first layer should have slightly squashed lines of filament. If they are too round, they will not stick to the printbed. If they are too flat, they will bee too thick on the sides.
The Ultimaker uses a bowden tube. This means that the filament is pushed from the frame through a tube (the bowden tube) into the printhead. This is similar to the functioning of the cables in the brake of a bike or parking brake of a car.
The filament is fed through two wheels that grab it and push it into the tube. To insert the filament, you briefly lift the round lever to move the two wheels apart, so they will not block the path.
The round button on the front of the printer will let you select the various options in the printer’s menu.
After inserting the filament, it has to be loaded in the printerhead. This is done by selecting the Material > Load option. You have to specify the material type, as this will determine how hot the printerhead should be when receiving the material. A too cold or too hot printerhead can damage the head and/or the filament, resulting in failed prints.
The designs are prepared with Ultimaker’s Cura software. This takes a 3d model and slices it into layers that can be printed on top of each other by the printer. This software is therefor typically called a “slicer”.
In the slicer, you can specify the layer height (for the balance between resolution and printing time), the material (for the correct heating of the printerhead and printbed) and a number of other parameters.
The generated slices are then put on an SD card and loaded into the printer.
The printer will display the estimated print time.
During printing, the printer will estimate the time remaining. Luckily it does a horrible job at this, so the print finished in the predicted 3 hours.
Both printers are pretty accurate. The Ultimaker has a bit more problems with overhang. The Prusa only struggles with the final 80% overhang. Because FDM printing relies on the lower layers to provide support for the upper layers, the printer cannot start printing in empty air. When printing too large overhangs, the filament is not supported by lower layers of filament, so it will start to droop.
The Ultimaker had an additional issue that not-supported layers (layers not well attached to lower layers), will start to curl up. This did not affect the print much, as these were the final layers of the model. If this would have happened at the start, inaccuracies can propagate throughout the model.
The Ultimaker prints slightly thicker lines. Both nozzles are stated as 0.4 mm, but the details in the bridging test on the Ultimaker are clearly thicker.
The individual assignment is to design a model that cannot be created with substractive methods.
I decided to create an enclosed movable object that has to be created in one go. It is printed on my Prusa i3 Mk3s at home. The five holes in the inner and outer parts are purely decorative.
The inner part is curved and fits into the inverted curve of the outer part. This makes it printable as the parts are not touching, a more steady platform and a more stable stream of scansbut no CNC mill can create this curved slot between the parts. QED.
In the picture on the left, you see the inner body with its curved outer edge. You can also see the sketch that is used to create the outer body. In the picture on the right, you see the revolution of the sketch, forming the outer body.
The FreeCAD FDM-FTW project file can be found here
The Waag node has a Sense 3d scanner. This is a handheld scanner that is connected to a computer. The scanner takes pictures and measures distances to objects. By moving the scanner around the object and collecting pictures and measurements from different angles, software can combine these in a 3d model of the object.
The scanner can be quite finnicky in keeping track what parts of the objects have been scanned and if every surface has been covered. This depends on the surface of the object, the time spend and the amount of coffee the person holding the scanner has had. #CafeineShakes
I tried scanning my hand, but using your other hand to move the scanner around your hand is tricky.
Therefor I used my leg.
Moving the scanner slowly around your leg when you are sitting down is much easier and you can keep a greater distance with the scanner. This helps the scanner to better sense the shift in position when moving it.
The pictures below show the surfaces as recognized by the scanner and the constructed 3d model.
The colors of the surfaces on the left picture are used to add color to the 3d model on the right picture, since most (older) 3d object file formats have no place for color information.
I took this 3d model and printed it.
The scanner creates an .stl file that can be imported in a 3d printer’s slicer. I used PrusaSlicer for this.
As you can see in the top-right picture of my leg, the scan software created a triangle shape where the floor is. I think it will do this to make the floor (of which it scanned only the top surface) into a solid body that can be exported. Surfaces without a solid body cannot exist in an .stl file.
In PrusaSlicer I rotated the leg and lowered it on the build plate, so the triangular floor part was below the printbed. The slicer then removed this part and the printer went on its merry way.
The 3d scan file can be found here here (zipped).
- The scanning was really fun, but a lot of work. The group also exchanged experiences with scanning apps on smartphones. Current smartphones are extremely powerful and have very accurate sensors inside. An app like Qlone can result in very detailed scans.
- When the Ultimaker is finished printing, the printbed is still very warm and the PLA still somewhat soft. Using a spatula to remove the model has to be done carefully, or you might warp the model.
- I would try to rotate the 3d object on a table instead of moving the scanner around it. This will result in more steady scans for the software to work with.