6. 3D Scanning and printing¶
This week I worked on 3 task(s) on 3D scanning and 3D printing in order to identify the advantages and limitations of 3D printing and scanning technology, and to apply design methods and production processes to show my understanding. These were the assignments:
- test the design rules for your 3D printer(s)
(Follow this link to see the group assignment)
- test the design rules for your 3D printer(s)
- design and 3D print an object (small, few cm3, limited by printer time) that could not be made subtractively
- 3D scan an object (and optionally print it)
1. Described what you learned by testing the 3D printers > DONE
2. Shown how you designed and made your object and explained why it could not be made subtractively > DONE
3. Scanned an object > DONE
4. Outlined problems and how you fixed them > DONE
5. Included your design files and ‘hero shot’ photos of the scan and the final object > DONE
Individual - Design rules for 3D printer(s)¶
The idea with this exercise is to test limitations of 3D print technologies and to learn the ways to design for producing the expected results.
I used PLA filament:
Poly(lactic acid) or polylactic acid or polylactide (PLA) is a biodegradable and bioactive thermoplastic aliphatic polyester derived from renewable resources, such as corn starch (in the United States and Canada), cassava roots, chips or starch (mostly in Asia), or sugarcane (in the rest of the world). PLA is not a polyacid (polyelectrolyte), but rather a polyester. (Source)
|Technical Name||Polylactic Acid (PLA)|
|Melt Temperature||PLLA: 157 - 170 °C (315 - 338 °F)|
|Typical Injection Molding Temperature||PLLA: 178 - 240 °C (353 - 464 °F)|
|Heat Deflection Temperature (HDT)||49 - 52 °C (121 - 126 °F) at 0.46 MPa (66 PSI)|
|Tensile Strength||PLLA: 61 - 66 MPa (8840 - 9500 PSI)|
|Flexural Strength||PLLA: 48 - 110 MPa (6,950 - 16,000 PSI)|
|Specific Gravity||PLLA: 1.24|
|Shrink Rate||PLLA: 0.37 - 0.41% (0.0037 - 0.0041 in/in)|
I used Rhino to design this:
These were my premises:
- do ‘something that could not be made by substraction processes‘
- do not spend more than the neccesary time
- do something simple but obviuos
So I decided to use booleans to make an internal and angled gap to a basic volume. I used pyramids, spheres and a cube.
These are the followed steps to obtains the final boolean model:
Apart from that, I would like to test the resin 3D printing with a little more complex model that I designed some time ago, but finally I couldn’t on this time but I’ll try it when possible.
This was made with:
- Illustrator > drawing texture vectors
- Rhino > extruding and merging by booleans
- 3DS Max > bending with modifiers
The difficult part is that the piece is designed to have 0.5 mm thickness layer on every side, and 0.5 mm on the middle (total thickness: 1.5 mm), so it is so fragile while being printed, and a precission issue in a moment, can just make a notorious change on the surface.
The example showed was printed on a Dreamer, almost completed by failed at the end.
Here are the main differences and matches between PROCESSES set by default in SOFTWARE:
(note: consider next info just to set up the changes needed in the process you start)
- LAYER HEIGHT > PROCESS A: 0.3 / PROCESS B: 0.15
- INFILL > PROCESS A: VALUE.MEASURE / PROCESS B: VALUE.MEASURE
- SUPPORT > PROCESS A: VALUE.MEASURE / PROCESS B: VALUE.MEASURE
- TEMPERATURE > As PLA was the material used, bed temperature=50 and extruder temperature=210
- SCALE > I scaled the design to size=30 mm³
These were the followed steps to do the assignment:
- Review material > PLA musn’t break easily. Sometimes, this happens when the filament is very old or it has been exposed to sun dryness, for example
- Prepare design > print_booleans (Download > exported from Rhino as .stl and scaled to 30mm³ in Cura and Slic3r)
Prepare G-CODE file(s) > I used both Cura and Slic3r to generate the g-code. Here I describe the process parameters I used:
Scaling the model
From original to 30mm³
At first I used supports everywhere and also I tried ‘touching building plate’
Setting temperature, infill and layer height
I mostly used 20% infill except at the end with Anet A8 that I tried with 100% to see if that would resolve the problem.
Calculating time and weight
My printer jobs were always between 30 minutes and 1 hour, except with Anet A8 high resolution profile that went around the 3 hours.
Exporting g-code to a file
Prepare materials in the 3D printer > PLA was already instaled. (See CALIBRATION for other details)
Prepare the machine. ADVICES:
Machine’s bed calibration must be made at the beginning because of the priority and the importance to make it before wasting time and material.
The way the machine works needs a bed well calibrated to avoid Z distance differences, which would return some parts not attached to the bed or some parts compressed. This could derive in incomplete jobs or machine problems as:
- part movement
- part deformation
- extruder stuck
- bed scracthes
(See details about this issues on Results section)
The way to calibrate the machine’s bed is with the help of the bed bottom screws:
- Put the extruder on one bed’s corner
- Put a common paper between the bed and the extruder tip
- Turn the bottom screw to elevate/lower that bed’s corner until the paper begins to get trapped between the bed and the extruder tip
- Repeat the process on 3 remaining corners
Use some calibration pattern file to test the 3D printer in order to ensure the correct calibration by checking this steps:
- [x] filament does not remain in the air
- [x] filament remains attached to the bed
- [x] extruder tip does not touch and force with its movements the previously attached filament
This is the result of a calibrated 3D printer bed in where to print the designed file.
Job origin must be set at the beginning because of the needing to put X, Y, Z space references between the g-code and the 3D printer bed. By this way, the job is safe to be made correctly without space errors that could bring undesirable results for both the machine and the 3D print.
Job origin is set directly from software when generating the g-code, so no manual setting had to be made.
Both extruder and bed can be pre-heated at job temperature. This could be done while importing the g-code file to the 3D printer for saving heating time that is, anyway, necesary for 3D printing job.
Subjection (if needed)
The first printing layer of the part may avoid moving while printing applying a little hair spray on the bed. Sometimes, this is a necessary complement to the temperature function of the bed.
Load file to 3D printer > G-code file is loaded from miniSD card, and run from the 3D printer panel:
3D printer begins to heat both extruder and bed until the job starts.
Test operation > Watch if filament goes out from the extruder and fixes to the bed correctly.
Check operation and results > After a while, the part and supports must be consistent and stay in place.
Job can be paused for any need.
Readjust 3D printer settings/material/design/g-code file(s) (if needed) > If filament has to be changed or reloaded, is possible that machine’s preparation must be done again. Anyway, it’s necessary to stop and restart the job again.
- Start and monitor job start > Select from the 3D printer panel the design g-code file in the miniSD card and press PRINT. Initially watch the job to check all goes as expected
- Watch job and wait it to be finished > ADVICES/TIPS (warning: consider 3D printer rules exposed before). Eventually watch the job to check all goes as expected. From 3D printer panel you can use ‘PAUSE/RESUME’ to stop the job for a while or use CANCEL to clear the running job
Secure the workspace > Cooldown the extruder to avoid stucks by overheating without extruding, or just turn-off the machine.
Take out the part and clean debris on the bed > Use something flat and sharp, like a spatula, to remove the piece from the bed if it does not come off easily, and to remove PLA debris from the bed
Retire the printer bed, if possible, to extract the printed piece to avoid damage the part or the machine itself. (In this case, the bed is a glass with paper-tape covering it)
Check final design results > ADVICES
Finish the part
These are the MATERIALS/TOOLS needed to clean/smooth/brighten the printed part:
Carefully remove debris from the printed part, better with a small cutter in the very narrow zones (avoid to ruin the part or your fingers!)
- CHEMICAL (ACETONE/ISOPROP)
This is the first print made with an Academy partner to test the printer Anet A8:
This is the final result of my printed design:
After having some problems printing it on Anet A8, I tried to print the model in the Prusa MK2, while I tried again to print the file in another Anet A8.
Prusa MK2 gave this result on first attemp with the same printing settings:
- Additive VS Substractive:
As the image shows, this hollow piece could not be made by substractive proceses because of certain angled parts that cannot be cut from the outside. The only way to do it in a unique process is by adding material layer to layer.
Anet A8 printing problems
As you can see on first images (0.3 layer resolution), printing quality looks fine at start and finish points. This made me thinking in the design, as it may be very thin at the middle of the part. Before changing my 3D model, I tried with 0.15 layer height resolution to see changes, and this was the new result:
Worse than before, it appeared to be a melting problem, specially on displaced/not vertical parts:
I thought this could be the result of a bad Z calibration (extruder could be very close to the piece), and also I thought seeing the support that maybe the extruder was having some kind of obstruction issue.
Also I had this attaching problem with Anet A8:
The printer was calibrated again to fix this.
The same job was run and the final part was this one:
Again, I put a print job on Anet A8 changing some g-code parameters:
These settings returned this result:
Apparently, this Anet A8, have two main reasons to give unexpected results: the extruder quality itself and the mechanical system which is always giving tolerances issues, mostly because of the belts.
The PLA filament is always new.
Original design files¶
3D print files > week06_mre_3Dprint.7z
Individual - 3D Scan¶
The idea with these exercise is to test 3D scan tools to obtain 3D models from real objetcs of shapes.
I tried these processes to 3D scan objects:
- Kinect 2
This process allowed me to obtain very precise 3D shapes, but the matter is that they are meshes from projections, which returns a lot of work if processing them in 3D model software:
This method is quite simple and fast, but the problem is the obtained resolution. Also, the tracking process is very sensitive and sometimes frustrating. Results are not bad, but it’s a funny way to create ‘monsters’:
This photogrammetry mobile software was the most easy, fast and reliable to me. It has a payment restriction to obtain the 3D model, but it allows to see in some free ways:
This is the software that returned the worst results. Is based on photogrammetry and, even with a lot of images, the result was just SO bad. The process to obtain the images with the smartphone look fine with trackers that turn from green to red when taking good positions while making the photos, but the result has nothing to do with reality.
Photoscan, ReCap and 3DF Zephyr
These three software gave me problems at the export as 3D object time, even Autodesk ReCap trying to use the free student license.
Original design files¶
3D scan files > week06_mre_3Dscan.7z
Qlone files are not free to download as .stl, so I share the iSense one
- Creative Mechanisms - Everything You Need To Know About Polylactic Acid (PLA)
- ReprapWorld - Natureworks Ingeo 4043D PLA pellets
- Wikipedia - Polylactic acid