3D Printer: Difference between revisions

From All Hands Active Wiki
Jump to navigation Jump to search
 
(139 intermediate revisions by 15 users not shown)
Line 1: Line 1:
[[Category:Tools]]
[[Category:Tools]]
[[Category:Electronics Tools]]
[[Category:Requires Maintenance]]
[[Category:Requires Maintenance]]
AllHandsActive has two Makerbot Industries Cupcake series 3D Printers. The printers are both heavily modified from their original state so aside from the chasis saying Cupcake, refer to documentation shown below.
=3D Printers=
AHA currently has four 3D printers.


==3D Printer workstation==
Ender 3 printers -
===About===
*[[Ender 3 - Bert]]
A small netbook (host name: FLICKY) sits with the 3D printers. Use the 'AHA' login with the usual back room password. ReplicatorG and Slic3r are installed and configured. It has an SD card slot so you can also use it to build to card and print from that.
*[[Ender 3 - Ernie]]
*[[Ender 3 v2 - Oscar]]


_Unplug_ and shut down when not using it.
Ender 5 printer
*[[Ender 5 Plus - Big Bird]]


Feel free to use the netbook and take it along when you transport printers.
All of the printers except Oscar are set up to print via Octoprint. The links to access octoprint are available on each of the printers webpages. The Ender 3 printers all use the same PrusaSlicer config - [[:File:PrusaSlicer config bundle.ini]] (Current as of 12/16/2023). The Ender 5 uses the profile [[:File:Ender 5.ini]]. These profiles are installed on the dedicated 3D printing computer, but you may download them and access octoprint from your own computer.  


===Known issues===
Replicatorg loads full screen, right click on program in XFCE top bar and say always on top, this will then put the window in the right place and allow you to resize. Alternatively attach a larger monitor.


===Maintenance and upgrades===
Machine is maintained by: Tyler W.
*This machine does not have the latest Config files for the bots (10/3/12)


==File Types==
===STL===
The slicing software needs your 3D model as an STL file before it can slice it. Slicing produces a file which has GCODE to describe the toolhead movements for each layer. It is important that your STL file only include one solid water tight object. Missing faces, open verticies and improper normal calculations will cause the slicer software to produce errors. You can fix some of this issues in an automated fashion by using NetFabb Basic, Blender (recalculate normals) and MeshLab's repair mode.
===GCODE===
This is a description of the tool path that is generated by a slicer. The file includes commands which instruct the printer how to move to produce the final object
===S3G===
Replicatorg converts a GCODE file into this reduced and compressed file type. This is equivalent to the GCODE but the smaller and easier to parse file type can be read off an SD card with less work. Use the build to SD card function in Replicatorg to produce this file.


==Jargon==
* Layer Height - The size of each layer the printer produces. This is limited at it's maximum by the size of the nozzle and at it's minimum by the amount of plastic produced and how much stretching occurs.
* Infill - The pattern and amount of plastic put inside the model to support it.
* Shells - The number of solid outer layers the model has
* Raft - A piece of plastic generated to stick to the print bed. This also includes support material for the object
* Filament - The plastic fed into the printer
* Extruder - The portion of a printer which
* Slic3r - Produces a GCODE file from an STL file
* Skeinforge - Produces a GCODE file from an STL file, built into Replicatorg
* Replicatorg - Produces a S3G file from GCODE and controls the printer
* OpenSCAD - 3D Solid Modeling software


==Creamcheese Cupcake==
'''NOTE: most of this information is out of date.  I dumped class notes in here for the time being -- they are rough guidelines for how to run the machines, but they are missing a lot of details.''' 
 
Notes from the 3D printer class: 
 
History:
*Not a new technology -- early 3d printers existed in the '80s.
 
Types of printing:
*FDM (Fused Deposition Modeling) / FFF (Fused Filament Fabrication) -- "typical" 3d printers
*SLA (stereolithography) / DLP (Digital Light Processing) -- i.e. resin printers
*SLS (Selective Laser Sintering) / SLM (Selective Laser Melting) -- powdered materials melted with a laser.  Can be used for metal parts;  not consumer-level tech yet.


===This bots history===
Software:
This machine started as a Cupcake with Gen3 electronics and Gen3 Extruder.
*3D models are saved in STL
*6/10 - Bot recieved
*Machines are controlled with GCODE
*7/10 - Changed to makergear hot end
*Slicers translate STL models into lines of GCODE
*1/11 - The X and Y axis were made a low rider and changed to be quiet and more accurate.
*Cura, PrusaSlicer, Slic3r, Simplify3d are a few slicers
*5/12 - The DC extruder died during a 3D printing talk at Penguicon 2012. Switched to Stepper extruder
* Lots of parameters you can tune or adjust.  Most are beyond the scope of this class, or open to experimentation. However, some parameters will frequently be changed to fit your needs, such as brims/skirts/rafts, layer height, shell thickness, infill %, infill type, support materials, bed and nozzle temperatures, and feed rates.
*7/12 - Replaced stepper drivers with Pololu
*10/12 - Accelerated


===Things this bot has:===
Machine anatomy: go over the major parts
*Gen3 Electronics (V2.x Steppers x 3, Motherboard RepRap v1.2, Extruder controller 2.2)
*[http://store.makerbot.com/nema-17-cork-gasket-pack.html NEMA 17 Cork Gaskets] - Cuts down on noise
*Extra Stepper driver for extruder (Makerbot V2.x)
*Ugly cable hack [http://store.makerbot.com/3g-5d-shield-for-cupcake.html does this], looks like [http://www.thingiverse.com/derivative:13984]
*[http://www.thingiverse.com/thing:32084 Sailfish firmware]
*[http://thingiverse.com/thing:7129 MiseryPusher Extruder]
*Custom designed [http://www.thingiverse.com/thing:23000 toolhead holder]
*[http://thingiverse.com/derivative:9549 Mendel X and Y low rider Axis]
*[http://store.makerbot.com/relay-board-mount-kit.html Relay mount kit]
*[http://store.makerbot.com/relay-board-kit-v1-0.html Relay board kit]
*[http://store.makerbot.com/makerbot-cupcake-heated-build-platform-v2-0.html MB Heated Build Platform]
*Makergear Groovemount insulator
*Modular thermistor
*Modular heater core
*36MM Brass barrel
*.35MM nozzle.
*Kysan 13.6:1 Stepper Motor (the same that Makergear.com sells)
*3x Pololu 1/16th step stepper drivers
*[http://www.thingiverse.com/thing:4526 PSMD board for new stepper drivers]


===What do I need to run Creamcheese? (UPDATED 11/4!)===
Filament types: go over some common materials
* Get ReplicatorG 0039 Sailfish edition (MUST BE THIS VERSION!) - [http://www.thingiverse.com/thing:32084 Sailfish Replicatorg]/
* Get [http://slic3r.org/ Slic3r 0.9.3]
* Get the Creamcheese config files from here: [http://novaslp.net/download/makerbot/AHAMakerbotSettings121104.zip Tyler's repository of cool stuff!] - UPDATED 11/4
* Put the *.xml files in your replicatorg machines directory
* Place the 3 directories and their contents into the Slic3r config directory. This is usually in your applications settings folder on windows or in a hidden folder on Unix called .Slic3r


===Printing with Slic3r and Replicatorg===
Machine operation:
* Get a model in STL format ([Thingiverse.com] or cad program)
*Always clean the UNHEATED print bed of old filament bits and dust using a sturdy paper towel or clean, lint-free cloth with 90% isopropyl alcohol on it. Try to avoid touching the bed after you clean it.
* Start Slic3r and make sure Creamcheese settings are loaded
* Under Print Settings, change fill density and shells. We recommend .30 fill density and 2-3 shells.
* Under platter drag your STL files into slic3r or use the Add button. Move things so they will fit.
* Press export GCode.
* Open the GCODE file and replace all E's with A's (our extruder axis is A not E.)
* Delete the first G1 line in the file which should have nothing after it.
* Save the result.
* Open ReplicatorG and connect to CreamCheese with machine type CreamCheese - Slic3r (supported)
* File->Open and pick your newly generated GCode file
* Pick build to file
* Save the resulting .s3g to an SD card with a filename no longer than 7 character.
* Put the SD card in the bot
* In ReplicatorG open tools->control panel.
* Preheat the bot to 220 and the platform to 110. When it reaches temp turn on the extruder until plastic comes out.
* Clear nozzle and lower to center of platform only a very tiny bit above it. You can use the controls in the control panel to do this or manually move it.
* Close control panel and pick build from file.
* Choose your .s3g file from the list.
* If print doesn't stick at start, hit cancel, clean platform and try again.
* After finish let print cool on platform. When cool the print should remove easily without deforming.


===FAQ===
*Leveling the bed:
* What happened to Skeinforge/Why do I need Slic3r? It was much easier to get good prints from Slic3r and generating Gcode is faster. ReplicatorG doesn't have great documentation but we provide files you can use to set it up for non-accelerated prints. In theory all you need to do is change the feed rates to something higher with acceleration but it didn't produce good prints.
**You will want to do this before every print.
* Why can I no longer print over the USB cable/Why should I use the SD Card? We added the 1/16th step drivers and it creates a lot of traffic that the USB cable link can't handle for parts with lots of little tight corners. You can still print over USB for smaller objects if you want. Try it! If your print pauses and has blobs use the SD Card instead. Another advantage is if your computer dies or sleeps the printer will keep working via SD Card.
**Make sure bed is heated to printing temperature before leveling
* But a USB cable is super fast! What gives? The USB cable looks like a USB cable, but it is really a USB to Serial cable. The makerbot talks to the computer over serial and that is significantly slower than the USB maximum.
**One printer has a auto-leveling probe (untested), and the other one you will need to use the "paper method". (Demonstrate the paper method using the octoprint bed leveling helper plugin)
* My print didn't work. It said it printed but it did nothing. What did I do wrong? Make sure you used a short file name when making the S3G file. Long file names cause the bot to do this.


===Experimenting with the 3D printer configuration===
* Loading filament:
[[3D_Printer:Creamcheese:Config|Experimental Config]]
**Move print head a fair distance from the bed
**Remove from the desiccant zipper bag.  After removing the spool, always re-seal the bag to keep the desiccant packet as dry as possible.
** Check the end of the filament when you pull it out of the bag.  Make sure it's secured in the side of the spool.  If it's not, you will need to try your best to ensure it isn't crossing under another loop to prevent a print failure.
** Feed filament in from the top, push on the spring lever to allow it to be inserted easily.  Continue to push the filament in until the color changes to the new filament's color, or you get a decent flow from the nozzle.


===Contact===
* Printing:
Questions? Can you borrow it? Break something? Contact one of the following people!
**Load the model you want, slice it, and send it to the printer
*Tyler W.
**Carefully monitor the first layer or two to make sure it has good adhesion
*Michael Sh.
**First layer nozzle height should be close enough to slightly squish the extruded filament into an "oval" profile.  It should not be too far away so as to drop it onto the bed, or so close that it flattens the filament entirely.
*Josh W.
**When the print is finished, wait until the bed has cooled completely before trying to remove it -- it should come off more easily when cool.  Try to avoid scraping it off, which can gouge the bed.


==BlackBottom Cupcake==
*Unloading filament:
===This bots history===
**Always unload and store filament in its desiccant zipper bag when you're done printing for the day.  If left out, it will begin to absorb moisture from the air, which will cause it to become unusable over time.
This machine started as a Cupcake with Gen3 electronics and Gen5 Extruder. The DC extruder was upgraded by Ox to a Gen5/6+ stepstruder. The bot originally was given a 3G5D board but it never worked well. As a result we did the ugly cable hack.  
**Make sure the print head is heated to the working temperature.
**Push the spring lever in and pull the filament out. If you encounter any resistance, make sure the nozzle is at the right temperature.
** When unloading the filament, be sure to capture and tuck the loose end securely into the edge of the spool. If you let it flop loose, it's very likely that it will end up crossing under an adjacent loop, which will cause filament feed issues during its next use!


At some point Ox decided to donate this bot to AHA!
*Finishing up:
**Always ensure the nozzle heater, bed heater, and print cooling fan is turned off before leaving! The hot-end fan will always remain on.


It was renamed from Ox's bot to BlackBottom Cupcake (alternate name for a creamcheese cupcake) on 7/1/12
Questions? Reach out to board@allhandsactive.org, #3dprinting or #Operations on Matrix.


===Things this bot has:===
As of 8/24/18:  
*Gen3 Electronics + Gen4 stepper for extruder
*[[Ender 3 - Bert]] is available to print
*Mk6 Stepstruder
*[[Ender 3 - Ernie]] is available to print
*Acrylic Platform
*.40MM Nozzle
*Sailfish Firmware.


===How Do I run BlackBottom Cupcake?===
Configure your machine like you would for Creamcheese cupcake.


When slicing use the following config:
Older/obsolete information follows, safe to ignore for the most part:  
Blackbottom - 3MM ABS - BlackBottom


When connecting to Replicatorg connect using machine BlackBottom - Slic3r
==Creating a 3D Model ==
Lots of software exists to create models. As long as the software can export to STL file format, you can print your model. Check out the following software packages that we recommend.


Follow the same instructions as Creamcheese.
* Trimble (previously Google) Sketchup Make - [http://www.sketchup.com/products/sketchup-make]
**Skethcup STL Plugin - [http://extensions.sketchup.com/en/content/sketchup-stl]
*OpenSCAD - [http://openscad.org]
*Blender - [http://blender.org]
*Rhino3D - [https://www.rhino3d.com/6]
*OnShape - [https://www.onshape.com]
*FreeCAD - [https://www.freecadweb.org]
*Fusion360 - [https://www.autodesk.com/products/fusion-360/personal]
3D model database
*Yobi3D - [http://www.yobi3d.com Free 3D model search engine]
*Thingiverse - [http://www.thingiverse.com]


===Contact===
==File Types==
Questions? Can you borrow it? Break something? Contact one of the following people!
==='''''STL'''''===
*Tyler W.
The slicing software needs your 3D model as an STL file before it can slice it. Slicing produces a file that has GCODE to describe the tool head movements for each layer. It is important that your STL file only includes one solid water-tight object. Missing faces, open vertices, and improper normal calculations will cause the slicer software to produce errors. You can fix some of these issues in an automated fashion by using NetFabb Basic, Blender (recalculate normals), and MeshLab's repair mode.
*Josh W.
====How to fix an STL====
*Michael Sh.
You've got holes or inverted normals? You can fix this by hand, try Blender or Meshlab. For a quick fix either try netfabb basic on client or NetFabb cloud [http://cloud.netfabb.com/]. These can fix basic problems and possibly produce a better file. You need 1 shell, non-inverted normals, and no holes to get a good print.


==The Replicator==
The newest versions of Slic3r will automatically try to fix holes and other errors in your stl files. This can work, but make sure that your model hasn't changed dramatically before printing. Take a look at it in the 3d view.
===This Bots History===
This bot was won by Backyard Brains and is for their use only. If you need to use it, contact a member of their staff or Tyler to setup a job for you.


===How do I run the Replicator?===
You can also try these awesome pieces of software:
*Grab the latest version of Replicatorg.
*MeshMixer
*Slice using the Replicator Profile for the latest version of Skeinforge for the left or right extruder.
*MeshLab
*Build to SD Card
*NetFabb Basic
*SD card into replicator
*blender
*In replicator menu, level the platform
*Preheat the head you wish to use.
*Select file from SD Card.


If the Kapton tape is ripping, reapply two new pieces from the roll and smooth them as you put them on. It is best for the bed to be cold when you do this.
==='''''GCODE'''''===
This is a description of the tool path that is generated by a slicer. The file includes commands which instruct the printer on how to move to produce the final object
==='''''S3G/X3G''''' ===
Replicatorg converts a GCODE file into this reduced and compressed file type. This is equivalent to the GCODE but the smaller and easier to parse file type can be read off an SD card with less work. Use the build to SD card function in Replicatorg to produce this file. It can also be created with Makerbot's software


==Waynestock==
==Jargon==
===This Bots History===
*Layer Height - The size of each layer the printer produces. This is limited at its maximum by the size of the nozzle and at its minimum by the amount of plastic produced and how much stretching occurs.
*Infill - The pattern and amount of plastic put inside the model to support it.
*Shells - The number of solid outer layers the model has
*Raft - A piece of plastic generated to stick to the print bed. This also includes support material for the object
*Filament - The plastic fed into the printer
*Extruder - The part responsible for filament melting and forming it into a continuous profile.
*Slic3r - Produces a GCODE file from an STL file
* Skeinforge - Produces a GCODE file from an STL file, built into Replicatorg
*Replicatorg - Produces a S3G file from GCODE and controls the printer
* OpenSCAD - 3D Solid Modeling software

Latest revision as of 20:54, 8 February 2024

3D Printers

AHA currently has four 3D printers.

Ender 3 printers -

Ender 5 printer

All of the printers except Oscar are set up to print via Octoprint. The links to access octoprint are available on each of the printers webpages. The Ender 3 printers all use the same PrusaSlicer config - File:PrusaSlicer config bundle.ini (Current as of 12/16/2023). The Ender 5 uses the profile File:Ender 5.ini. These profiles are installed on the dedicated 3D printing computer, but you may download them and access octoprint from your own computer.



NOTE: most of this information is out of date. I dumped class notes in here for the time being -- they are rough guidelines for how to run the machines, but they are missing a lot of details.

Notes from the 3D printer class:

History:

  • Not a new technology -- early 3d printers existed in the '80s.

Types of printing:

  • FDM (Fused Deposition Modeling) / FFF (Fused Filament Fabrication) -- "typical" 3d printers
  • SLA (stereolithography) / DLP (Digital Light Processing) -- i.e. resin printers
  • SLS (Selective Laser Sintering) / SLM (Selective Laser Melting) -- powdered materials melted with a laser. Can be used for metal parts; not consumer-level tech yet.

Software:

  • 3D models are saved in STL
  • Machines are controlled with GCODE
  • Slicers translate STL models into lines of GCODE
  • Cura, PrusaSlicer, Slic3r, Simplify3d are a few slicers
  • Lots of parameters you can tune or adjust. Most are beyond the scope of this class, or open to experimentation. However, some parameters will frequently be changed to fit your needs, such as brims/skirts/rafts, layer height, shell thickness, infill %, infill type, support materials, bed and nozzle temperatures, and feed rates.

Machine anatomy: go over the major parts

Filament types: go over some common materials

Machine operation:

  • Always clean the UNHEATED print bed of old filament bits and dust using a sturdy paper towel or clean, lint-free cloth with 90% isopropyl alcohol on it. Try to avoid touching the bed after you clean it.
  • Leveling the bed:
    • You will want to do this before every print.
    • Make sure bed is heated to printing temperature before leveling
    • One printer has a auto-leveling probe (untested), and the other one you will need to use the "paper method". (Demonstrate the paper method using the octoprint bed leveling helper plugin)
  • Loading filament:
    • Move print head a fair distance from the bed
    • Remove from the desiccant zipper bag. After removing the spool, always re-seal the bag to keep the desiccant packet as dry as possible.
    • Check the end of the filament when you pull it out of the bag. Make sure it's secured in the side of the spool. If it's not, you will need to try your best to ensure it isn't crossing under another loop to prevent a print failure.
    • Feed filament in from the top, push on the spring lever to allow it to be inserted easily. Continue to push the filament in until the color changes to the new filament's color, or you get a decent flow from the nozzle.
  • Printing:
    • Load the model you want, slice it, and send it to the printer
    • Carefully monitor the first layer or two to make sure it has good adhesion
    • First layer nozzle height should be close enough to slightly squish the extruded filament into an "oval" profile. It should not be too far away so as to drop it onto the bed, or so close that it flattens the filament entirely.
    • When the print is finished, wait until the bed has cooled completely before trying to remove it -- it should come off more easily when cool. Try to avoid scraping it off, which can gouge the bed.
  • Unloading filament:
    • Always unload and store filament in its desiccant zipper bag when you're done printing for the day. If left out, it will begin to absorb moisture from the air, which will cause it to become unusable over time.
    • Make sure the print head is heated to the working temperature.
    • Push the spring lever in and pull the filament out. If you encounter any resistance, make sure the nozzle is at the right temperature.
    • When unloading the filament, be sure to capture and tuck the loose end securely into the edge of the spool. If you let it flop loose, it's very likely that it will end up crossing under an adjacent loop, which will cause filament feed issues during its next use!
  • Finishing up:
    • Always ensure the nozzle heater, bed heater, and print cooling fan is turned off before leaving! The hot-end fan will always remain on.

Questions? Reach out to board@allhandsactive.org, #3dprinting or #Operations on Matrix.


As of 8/24/18:


Older/obsolete information follows, safe to ignore for the most part:

Creating a 3D Model

Lots of software exists to create models. As long as the software can export to STL file format, you can print your model. Check out the following software packages that we recommend.

  • Trimble (previously Google) Sketchup Make - [1]
    • Skethcup STL Plugin - [2]
  • OpenSCAD - [3]
  • Blender - [4]
  • Rhino3D - [5]
  • OnShape - [6]
  • FreeCAD - [7]
  • Fusion360 - [8]

3D model database

File Types

STL

The slicing software needs your 3D model as an STL file before it can slice it. Slicing produces a file that has GCODE to describe the tool head movements for each layer. It is important that your STL file only includes one solid water-tight object. Missing faces, open vertices, and improper normal calculations will cause the slicer software to produce errors. You can fix some of these issues in an automated fashion by using NetFabb Basic, Blender (recalculate normals), and MeshLab's repair mode.

How to fix an STL

You've got holes or inverted normals? You can fix this by hand, try Blender or Meshlab. For a quick fix either try netfabb basic on client or NetFabb cloud [10]. These can fix basic problems and possibly produce a better file. You need 1 shell, non-inverted normals, and no holes to get a good print.

The newest versions of Slic3r will automatically try to fix holes and other errors in your stl files. This can work, but make sure that your model hasn't changed dramatically before printing. Take a look at it in the 3d view.

You can also try these awesome pieces of software:

  • MeshMixer
  • MeshLab
  • NetFabb Basic
  • blender

GCODE

This is a description of the tool path that is generated by a slicer. The file includes commands which instruct the printer on how to move to produce the final object

S3G/X3G

Replicatorg converts a GCODE file into this reduced and compressed file type. This is equivalent to the GCODE but the smaller and easier to parse file type can be read off an SD card with less work. Use the build to SD card function in Replicatorg to produce this file. It can also be created with Makerbot's software

Jargon

  • Layer Height - The size of each layer the printer produces. This is limited at its maximum by the size of the nozzle and at its minimum by the amount of plastic produced and how much stretching occurs.
  • Infill - The pattern and amount of plastic put inside the model to support it.
  • Shells - The number of solid outer layers the model has
  • Raft - A piece of plastic generated to stick to the print bed. This also includes support material for the object
  • Filament - The plastic fed into the printer
  • Extruder - The part responsible for filament melting and forming it into a continuous profile.
  • Slic3r - Produces a GCODE file from an STL file
  • Skeinforge - Produces a GCODE file from an STL file, built into Replicatorg
  • Replicatorg - Produces a S3G file from GCODE and controls the printer
  • OpenSCAD - 3D Solid Modeling software