6. 3D Scanning and printing
Intro
When I moved to Amsterdam, my friend Dustin helped me move into the apartment that I was renting. He had a 3D printer and was hoping to print, in secret, 3D designs of an engagement ring for his fiancé. He brought the 3D printer to my house and said that I could keep it there to work on. He said the plate was bent, and spent a few hours fixing the Ender 3 machine that was going to be left at my new plek. I had high hopes for my 3D printing. After Dustin left, I attempted my first print. Halfway through the job, something went wrong. I brought the machine upstairs, to store it in a dusty corner. And that is my 3D printing career up until this point.
Tasks
Group assignment
Our group assignment this week was to initialize and test the 3D printers at the Waag lab. In Neil's presentation, he outlined the different aspects of 3D printing that act as constraints on the ability of different printers and filament types. These are the features that we are comparing:
- overhang
- bridging
- stringing
- sharp-corners
- tolerance
- scale/diameter
In Neil's lecture, there were quite a few different, individual prints to test each of these features. However, following the lead of Michelle Vossen's Waag Fab Academy year, we decided to use a single test print that would incorporate everything in one.
3D printer set up
After our first full day of printer testing, I noticed that there was a notable pattern when it came to things to consider when using a 3D printer, a checklist, if you will...
- Make sure to select the correct filament type for the project + nozzle size
- Clean the plate with ethanol
- Calibrate the printer / print bed (some machines have auto-calibration, some not -- for instance, the Ender 3 has analog dials under the build plate)
- Choose a slicer that is compatible with the printer (for converting files into G-Code)
- Load G code on an SD card
- Check the first layer of the print (or first few)
Prusa MK3S
Slicer program: PrusaSlicer
Filament considerations:
- 0.4mm nozzle
- PLA
Calibration process: Here is the link to the different kinds of calibration processes. We opted to do an XYZ calibration.
What is an XYZ calibration:
- It checks whether the printer was assembled correctly and ensures the axes are perpendicular to each other
- Test measures the skew of the X/Y axis and applies compensations for any imperfections
- It verifies the printer's ability to move accurately along all three axes (X, Y, and Z)
From the LCD Menu > choose Calibration
> XYZ calibration
Remove the steel sheet > Cut and place a piece of paper underneath the nozzle for each of 4 initial calibration points > Make sure the paper can move freely, but only just
The screen instructs to: "Hit reset if the nozzle touches the paper"
Then, when the initial 4 point calibration is done, the program calibrates 9 further points with the steel sheet back on (the heat bed).
Before printing, clean the steel sheet with 70% ethanol and a dry paper towel.
To make space to clean, on the digital screen select Move axis
> Z
> move the nozzle up
Next, we did the First layer calibration > PLA
You want the filament being laid to be squished a bit, not hovering way above. Note the guides, provided by Prusa, below.
Our first First layer calibration test didn't meet our liking. The nozzle was too close to the print bed and it flattened the printed filament too much. We adjusted the Z-axis position and got the results we were looking for.
Next, it was time to print.
Print results:
SainSmart INFI-20 aka Wallboy
The INFI-20 (aka Wallboy) is the most interesting of Waag's 3D printers. It is also the trickiest to work with. It's attached to the wall and prints at a 45 degree angle. It has a treadmill-style print bed, which allows users to keep printing new parts -- while the old ones are rolled off the assembly line. It's also ideal for printing really long parts.
Slicer program: SainSmart Slicer
Filament considerations:
Calibration process: We ran the First layer calibration on Wallboy and it seemed that the print bed was already well calibrated. The filament was flattened, but not squished. The filament was also sticking nicely to the print bed.
Print results: The print started smoothly, however, at a certain stage, Sam yanked the SD card from the machine and the print stopped. When we fired up the print again, the filament wasn't sticking to the print bed. It kept "pooping" out curly strands of filament. I cleaned the print bed, rolled back the y-axis, and tried again. We got the same results.
Although the results were quite confusing, with a bit of deductive reasoning, I figured out that there were two files on the SD card that had the same name. One of them was for Wallboy, and the other was for the Prusa.
Luckily, that was the issue and the print started working.
The issue, however, with a printer at 45 degrees, is managing how the print sticks to the print bed. Our test print eventually became too heavy and fell.
For the rest of the week, we avoided Wallboy.
Ender 3
Slicer program: PrusaSlicer, Creality, Ultimaker Cura, etc.
Filament considerations:
Calibration process: Auto home > then try to fit paper underneath the nozzle at the four corners of the print bed by moving along the X and Y axis > making sure that the paper is sort of in contact with the nozzle, but can still move freely.
Print results:
Ultimaker
Slicer program: Ultimaker Cura
Filament considerations:
- 2.85mm
Calibration process: This seemed to almost break Irja. I was working on calibrating Wallboy at the time, though, so I wasn't involved.
Print results: This printer was definitely the slowest of the bunch. The print quality seemed to be the best, though. It seemd that the print time estimation was way off, but regardless, we mistimed our test print and didn't have enough runway to finish our first test print. Since we were going to run out of time anyways, we decided to increase the print speed, from 100% to 250%. It had no effect on the estimated print time. It did however shift the whole print so that the filament was lined up incorrectly.
On Friday, Sam got in early and started the prints. Perhaps he felt guilty about destroying my first beautiful print on Wallboy. Perhaps we'll never know. Anyways, this time the print finished. The print quality was very good when compated to the Prusa and the Ender.
Slicing
Keep objects close together.
Filament considerations
Loading filament -- trimming the endputting it on something that will allow it to spin > feeding it through a tube > select Load filament
on screen > insert filament into the extruder > test extrude > make sure to select (on-screen) the correct filament type (important for heating)
Struggled to get the filament out of the Prusa at the end of Friday. Tried heating the nozzle and pulling, but it didn't work. Eventually, test extruding helped pry the filament free.
G-Code
G Code is the language that the 3D printer understands. G-code is very old. It’s used for all CNC machines / anything with XYZ or rotating axis.
G-commands: positioning M-commands (miscellaneous): tool and machine set up
Individual project
3D print ideas
Opensource toilet tutorial
Fusion design
Digital files:
3D scanning
Ferret
3D model viewer
Look at Henk's code Model-viewer.dev
Couldn't download the min.js file without opening it in Gitlab, but when I opened it it would crash.
Inspiring resources:
- https://n-e-r-v-o-u-s.com/projects/albums/kinematics-link/
- https://news.mit.edu/2020/defextiles-leveraging-3d-printer-defect-to-create-quasi-textiles-1020
- nonplanar.xyz
- meshlab.net — to look at your meshes
- Ling Dong - 3D project
- Valdemar
- 3D scanners
- Digital Emily — 2008
- Scanning
- Frank Gehry
- Lumafield
- model viewer
- https://www.printables.com/
- https://www.thingiverse.com/
- https://sketchfab.com/
- 3D bricklaying
- Bricklaying pt. 2
- Z-pinning printing
- SLA printing