Workshop diy 3 d printing makerbots 2012

29
1 Workshop DIY 3D-printing

description

 

Transcript of Workshop diy 3 d printing makerbots 2012

Page 1: Workshop diy 3 d printing   makerbots 2012

1

Workshop DIY 3D-printing

Page 2: Workshop diy 3 d printing   makerbots 2012

2

Some links .......................................................................................................................................... 3 

A1- Makerbot replicator and thing-o-matic ......................................................................................... 4 

1-start replicatorG. .............................................................................................................................. 4 

2-heat up the printer ........................................................................................................................... 6 

3-generating G-code .......................................................................................................................... 7 

4-test the extruder & PRINT ............................................................................................................. 10 

A2- Getting started: the ultimaker .................................................................................................... 12 

B Print your own objects ................................................................................................................... 15 

B1 –some extra comfort: SD-card .................................................................................................... 15 

C Under the hood: configuring Skeinforge ....................................................................................... 16 

ADDENDUM: THE little CNC-MILL .................................................................................................. 18 

1-Connect ......................................................................................................................................... 18 

2-Try it .............................................................................................................................................. 19 

F WRITING A BIT OF GCODE ........................................................................................................ 19 

G MILLING SOFTWARE .................................................................................................................. 20 

1-Software: general concepts ........................................................................................................... 20 

2-Software: CADPY .......................................................................................................................... 21 

3-Install CADPY ............................................................................................................................... 21 

H More CNC-milling ......................................................................................................................... 26 

K An introduction into G-code .......................................................................................................... 27 

Gcode example (for milling) ............................................................................................................. 29 

Course notes written by:

[email protected] +32.486.945.529

Page 3: Workshop diy 3 d printing   makerbots 2012

3

SOME LINKS

The Makerbot website:

http://www.makerbot.com

The Ultimaker website:

http://www.ultimaker.com

Our supplier, who imports the Makerbots into Europe:

http://www.kd85.com/

Where we are from:

http://www.timelab.org

Our little CNC-machine:

http://www.repairablemachines.com

Where you can find a lot of printable 3D-models:

http://www.thingiverse.com

Alternative intro to ReplicatorG:

http://www.makerbot.com/docs/replicator/software/

Printing with soluble support:

http://www.flickr.com/photos/tbuser/6733182253/

Page 4: Workshop diy 3 d printing   makerbots 2012

4

If you want to use your own computer later today, you can find the software at :

www.replicat.org

A1- MAKERBOT REPLICATOR AND THING-O-MATIC

1-START REPLICATORG. Open ReplicatorG, you should find a link on the desktop of the preconfigured machines.

Go to ‘File’ and open ‘01-12_tooth_T5.stl’ You should find it under ’04-EXAMPLES’ on the USB-sticks or on the desktop of the computers. The interface looks something like this:

Take a minute to check out the buttons and menu items. The large buttons show their function if you hover your mouse over them.

The buttons on the right open menu’s to scale/move/rotate your object if it were to be imported upside down.

As indicated in the image, go to Machine>Driver and select the correct driver. The name of the driver you need should be indicated on the card next to the machine you’re working with.

Page 5: Workshop diy 3 d printing   makerbots 2012

5

In Machine> Connection select the correct serial port. If you can use from more than one us the following techniques:

a-Guess, or try all of them b-Close the menu, disconnect the machine, go back to the menu. The serial port that is no longer available is the one from the machine.

Then hit ‘Connect’ . If you have the correct serial port, it will connect with the machine.

Now go to‘Control Panel’

Page 6: Workshop diy 3 d printing   makerbots 2012

6

2-HEAT UP THE PRINTER

Depending on the version of the Makerbot you are using, the control panel should look something like this:

Set the Extruder temperature to the value indicated on the card next to your printer. (if you have 2 extruders, use the right one for now)

You should see the machine heating up in the graph at the bottom right.

You can try out the different buttons on this menu, but DO NOT DO NOT DO NOT push ‘forward’ or ‘reverse’ before the machine is properly heated up. These buttons activate the extruder, and trying to push cold hard plastic through the nozzle will damage it.

See if you can find the controls to move the print head around the platform.

Try to:

-move the Z-axis up by 20 mm

-move to the center position

-change the speeds

-use emergency stop

Now go back to the main interface (you don’t need to close this window)

Page 7: Workshop diy 3 d printing   makerbots 2012

7

3-GENERATING G-CODE

To print the 3D-object, the file needs to be translated from a 3D-file into machine code. This code is called Gcode, it describes the motion of the toolhead and defines motor speeds and temperatures. The translation is handled by a series of algorithms in a piece of software called ‘Skeinforge’. It is integrated as a module into Replicator G.

First, let’s make sure you are using the correct version of Skeinforge.

In the main interface, go to Menu> Gcode> Choose Gcode generator and check if the selected one matches the one indicated on your card.

Page 8: Workshop diy 3 d printing   makerbots 2012

8

Next, click ‘Generate Gcode’ at the bottom right. You will this popup window:

Select the profile indicated on your card. The Replicators have 2 extruders, you can select right or left for a different colour.

Leave ‘Use raft’ checked.

Leave ‘support material’ as none and leave default start/end code checked.

If you select ‘Print-O-Matic’ you will see a number of extra options, allowing you to select Layer Height, or changing the solidity of the model.

Page 9: Workshop diy 3 d printing   makerbots 2012

9

Object Infill: how solid your object is

Layer height: self-explanatory, I’ve tested values up to 0.2mm on the Replicators.

Number of shells: Use this for hollow objects.Every object has 1 shell (the outside) So 0 here actually means 0 and 2 means 3 shell layers.

Feedrate: speed , Don’t mess with that.

Print temperature: Leave at 220 for ABS. Set at 230 for PLA

You can find a more detailed explanation at: http://www.makerbot.com/docs/software/printomatic/

You can experiment with that later. For now, leave these settings unchanged.

Click ‘Generate’. Now you’ll see a window indicating the progress generating the code. This may take some time…

Page 10: Workshop diy 3 d printing   makerbots 2012

10

When it’s done, you should see an extra ‘flap’ below the big buttons, saying ‘Gcode’ next to ‘Model’ It should look something like the image below when you click it. All CNC-machines use a similar text-based code to control the motors. This code is annotated (with the red text). On oldy-style CNC-machines you would type in this kind of code by hand, based on a technical drawing.

I can show you how to read this, there’s a short reference further in this manual, but you don’t need this now. We can dig into this later if you want.

For now go back to the ‘Control panel’ and see if the printer is hot yet…

4-TEST THE EXTRUDER & PRINT

First take a look at the spool with plastic filament going into the printer. It should be free to unwind and feed into the printer. Check this for knots or kinks.

Page 11: Workshop diy 3 d printing   makerbots 2012

11

Motor speed is a value between 0 to 255. Thievalue you fill in here is just for testing, the actual speeds are set in the Gcode during printing.

Next go back to the Control panel.

Check if the extruder is hot. It should be at 220°. (230° for PLA)

If so, press ‘forward’.

The extruder should extrude a smooth squirt of plastic. Press stop and clear away the plastic with some tweezers. (there should be some on your desk)

BEFORE EVERY PRINT, CHECK THE MACHINE IS HEATED UP AND THE FILAMENT GOING INTO THE TOP IS FREE TO DO SO.

Oh, and another all-capitals-sentence:

THE EXTRUDER HEAD IS HOT! DON’T TOUCH IT.

If the plastic is being extruded smoothly, you’re ready to print. Press ‘Build’ (the second large button from the left in the main interface window)

At the start of the print, the plastic is supposed to stick to the platform. This can be tricky.

If it does not, cancel the print and ask for help.

If it does start correctly, make sure the printer has enough free plastic filament to pull in, and get someone to get you coffee. This example should take about 10 minutes to print.

When the print finishes, give it 30 seconds to cool down, then peel off the print from the platform. It should, hopefully, look something like this:

Page 12: Workshop diy 3 d printing   makerbots 2012

12

A2- GETTING STARTED: THE ULTIMAKER

The Ultimakers are a Dutch design. The machines here use PLA instead of ABS-plastic, and don’t use a heated bed.

This can make the start of the print a bit more tricky. If the plastic doesn’t stick to the bed, cancel the print and call me.

They do each have their own control panel. Start by taking a look at it, navigate through it.

Select ‘Prepare’

Look for ‘Move axis’, and move the toolhead around. Take care not to bump into the platform.

Look for ‘preheat PLA’ under the ‘Prepare’ menu item.

Select ‘preheat PLA’ to warm up the printer.

The ultimakers are configured to use a different piece of software. It is called Cura, and tries to be a bit easier to use:

http://daid.github.com/Cura/

Open up Cura, there shoukd be a link on the desktop. The software should connect to the printer automatically, and you should get the window below.

If you see a menu item ‘Simple’ click on it. If you don’t see it, you’re already in ‘Simple’ mode, leave it be.

Page 13: Workshop diy 3 d printing   makerbots 2012

13

Above is the software in ‘Simple’ mode (which is what you want) , below in ‘Normal’ mode (which you can try later:

Go to ‘File’ and open ‘01-12_tooth_T5.stl’ You should find it under ’04-EXAMPLES’ on the USB-sticks or on the desktop of the computers.

Select ‘Normal quality print’ You can try the other settings later (they’re quite self-explanatory, I think)

Select ‘PLA’

Leave Diameter as is.

Click ‘Slice to Gcode’.

Wait for calculations to finish.

Page 14: Workshop diy 3 d printing   makerbots 2012

14

Then click ‘Print GCODE’ . A new window appears.

The major difference with the replicatorG control software is that the buttons to move the head and set the temperature are located here.

Select ‘Jog’ and move the head around.

Try out the ‘home’ icons.

Don’t mess around with the ‘Speed’ settings

Go to’Temp’ and set this to 230 °C

DON’T FORGET THIS STEP. WITH THE MAKERBOTS THE TEMPERATURE IS SET IN THE CODE, WITH THE ULTIMAKERS IT IT SEEMS TO BE SET HERE (SO YOU COULD ACTUALLY CHANGE THE TEMPERATURE DURING THE PRINT)

You should see the temperature rise in the graph.

When the printer is hot, select ‘Print Gcode’

That ‘s it…

Page 15: Workshop diy 3 d printing   makerbots 2012

15

B PRINT YOUR OWN OBJECTS

At this point you can open up your own file, generate G-code and try it. Feel free to try different settings in the Print-O-Matic options.

Alternatively, you can try to set up the software on your own laptop, go to:

http://www.replicat.org and follow the instructions there.

(You’ll also need Python 2.7, but the software should tell you where to get it, ask me if you get confused)

2 of theThing-O-Matic s don’t have a control panel – they still have the memory card, but you’ll have to start the print from the computer

B1 –SOME EXTRA COMFORT: SD-CARD

For long or repeated prints it can be annoying to have to leave your computer connected. You will have noticed by now most of the printers have a little LCD-screen and their own controls. It is possible to write a file to the memory of the machine, and then print from memory as a stand-alone machine.

Here is how you do this:

-Look for an SD-card on the side of your printer

-Take it out of the machine and place it in the card reader of the laptop

-In ReplicatorG, choose: ‘Build to file for use with SD-card’ (3rd button from the left)

-You get a browser window, select the SD-card.

-Name your file and save.

-Eject the SD-card and place it back in the machine.

You can now:

a-start the machine from ReplicatorG, using ‘Build from SD-card’ (second button)

Once the machine is started you can unplug your computer

Or

b-Use the control panel on the printer to select the file. In this case you can do the entire print job without an attached computer.

Page 16: Workshop diy 3 d printing   makerbots 2012

16

C UNDER THE HOOD: CONFIGURING SKEINFORGE

You used to have to do all the settings here. With the print-o-matic options you don’t really need to learn about these options here that much anymore.

Skeinforge is basically a large series of scripts that are executed one by one. Each have a number of parameters, and when you first take a look at those it will look quite daunting.

However: -at some point you’ll need to be able to tweak more settings. Either because the printer isn’t set up right, or because you need different settings for a small, hollow object than you need for, say, a gear wheel you want to have as strong as possible.

-you don’t need to learn all the settings at once, you need to figure out which ones are the important ones.

If you want to dig into this, go to GCode > Edit Slicing Profiles

Select a profile and click ‘Duplicate’ (so you don’t mess up the existing profile)

Page 17: Workshop diy 3 d printing   makerbots 2012

17

The most important values are indicated in blue and yellow.

The modules you should get acquainted with are:

-Carve: this cuts the 3D-model in 2D-layers. Layer thickness is defined here

-Temperature: what it sounds like

-Raft: this is the module doing the bottom raft on the model

-Speed: sets extrusion and motion speeds

-Fill: how the object is filled in (hollow/solid)

-Multiply: print more than one copy at a time

Try to find following parameters, while taking a look around in the interface:

-Flow rate setting (this is extrusion speed)

-Layer thickness: thickness of 1 layer on the Z-axis

-Infill solidity: how solid do you want your object

-Base temperature: print head temperature

-Perimeter width over thickness: how wide a strip of layed-down plastic is as a ratio to the layer height.

A good start to learn more, are these links:

- http://davedurant.wordpress.com/2010/10/17/configuring-skeinforge-some-basic-terms/This is a very good tutorial, there are more on the same site.

http://fabmetheus.crsndoo.com/wiki/index.php/Skeinforge This is the official manual, with an overview to existing tutorials.

Page 18: Workshop diy 3 d printing   makerbots 2012

18

If you do not have the option to select these, you need to copy the drivers from the USB-stick. Consult chapter C on how to do this.

ADDENDUM: THE LITTLE CNC-MILL

Timelab’s miniCNC is a milling machine with an open floor. It was designed as a small mill, capable of milling into larger panels. In this workshop we’ll show you how to use it to mill small parts out of plexi.

1-CONNECT The machine has the same electronics as the Makerbot. You control it using ReplicatorG.

-Go to Machine>Driver and select ‘miniCNC 32-teeth-gear’ If your machine has a sticker on it saying ’36-teeth gear’ select ‘miniCNC 36-teeth-gear’.

-Connect the machine with the USB-cable and click ‘Connect’ in replicatorG. You might need to go back to Machine>Serial Port to select the correct serial port.

Page 19: Workshop diy 3 d printing   makerbots 2012

19

2-TRY IT -Once you got connected, open ’02-square.gcode’ from the ’03-EXAMPLES’ folderYou won’t have a 3D-preview, but the g-code should look like this:

G90

G92 X0 Y0 Z0

G21

G01 Z-3 F50

G01 X40 F100

G01 Y40

G01 X0

G01 Y0

G01 Z0

Put a piece of plywood under the machine. Turn on the Dremel by hand. You don’t need to open it up fully, half way is fine. Press ‘Build’. If you selected the correct driver and the machine is working properly, this code should mill a 40x40mm pattern, 3mm deep. If you’re using a 2mm milling bit, this results in a 38x38 mm square. Check the size to see if the scale works out.

F WRITING A BIT OF GCODE You’ll notice the G-code is a lot shorter than the one from the 3D-printer. It will get longer once we do more complex shapes, but basic holes and rectangles only need a few lines.

In Chapter H you’ll find a short reference on what the Gcode commands do. Take a look at it, and compare it with the documented code here:

G90 (use absolute coordinates)

G92 X0 Y0 Z0 (you are now at zero)

G21 (and we’re working in millimeters)

G01 Z-3 F50 (go down 3 mm on the Z-axis at speed 50mm/min)

G01 X40 F100 (move 40mm to the right at speed 100mm/min)

G01 Y40 (move 40m up, keep same speed)

G01 X0

G01 Y0

G01 Z0

Page 20: Workshop diy 3 d printing   makerbots 2012

20

G MILLING SOFTWARE

1-SOFTWARE: GENERAL CONCEPTS The example above is how you would program a CNC-machine in ye olde days, typing code by hand. Most CNC-machines still work and understand this code (or a variant on it), but you use a piece of software to convert a 3D-file into G-code.

Because with this machine you have access to the Gcode, you can use any software that allows you to export machine code. You export the code and open it in ReplicatorG An interesting program to try out for 3D-milling is Deskproto, www.deskproto.com Skeinforge, the G-code generator for the Makerbot, can be used for 3D-milling as well, but is quite complicated to set up and does not offer a good preview. We’ve been using a 2D-based interface, as we were interested in introducing basic milling to people who don’t necessarily have a background in 3D-modelling.

Page 21: Workshop diy 3 d printing   makerbots 2012

21

2-SOFTWARE: CADPY CADPY is a small program from MIT we adapted for use with our machine. It allows you to cut out shapes without needing to learn 3D-modelling, using bitmaps or scanned drawings.

3-INSTALL CADPY On windows: Go to the USB-stick\ 01-INSTALL FILES,copy 01-cadPy_win32_exe.rar and unpack. Then, in the folder that is created go to dist\cad-2011-05-15.exe

If this does not run on your computer, go to http://www.repairablemachines.com/downloads.html and follow the guidelines to install Pythons

On Ubuntu: Consult http://www.repairablemachines.com/downloads.html for command line install.

On the set up computers, open the CADPY link on the desktop.

After opening the software, you should see an interface a bit like The orange lines in the image above are the generated tool paths. These are saved as Gcode and then opened in ReplicatorG. ReplicatorG controls the machine in the same way as it does the Makerbots.

Page 22: Workshop diy 3 d printing   makerbots 2012

22

We use CAD.PY to convert a 2D-bitmap to machine code. This machine code is called G-code, and is sent to the machine later using a separate piece of software, ReplicatorG. In this tutorial we will open a black & white bitmap, set the correct size and depth, generate the G-code and save it.

After installing Python, and opening cad.py, you should see this screen:

1-Click on 'INPUT' and select a bitmap. The image we used is a png-file of a black letter 'A', 50.8 x50.8 mm wide at 300dpi. You can find it as ‘05-A.png’ under the EXAMPLES folder on the stick.

Once the bitmap got loaded, you should see something like this.

2- Change ‘window size’ to a value that fits the window on your screen..

3- Next you’ll set the size of the image, the origin point, the depth you want to mill, and

Page 23: Workshop diy 3 d printing   makerbots 2012

23

which part of the image you want to have cut out.

x min / y min: sets the origin point, we usually leave these at 0,0. When you start the CNC the location of the milling head will be the bottom left corner of the image field (which is not the same as the bottom left corner of the 'A'!)

x width/y width: the size of the image field in millimeters. The software takes the size as set in Photoshop. Set these to ‘50’

nx/ny: is non-editable, it displays the amount of pixels in your image

depth: a negative number, in mm. This is the total cutting depth. If you enter '-7' here the black parts in the image will be cut out to this depth. Grey parts of the image will be interpolated between 0 and depth, according to the settings in intensity min / intensity max (we haven't experimented much with those yet)Set this to ‘-4’

travel height: how much the milling bit is raised when moving the tool.Set this to ‘1’

number of layers: you can either cut out to the desired depth in one go, or mill in a number of layers. This will depend on the hardness of the material and, if you have slopes, how smooth you want these. 1 gives you the full depth in one go.Leave at 1 for now

invert image: flips the black and white parts of the image around

When you're happy with these settings, click on 'CAM'. You will now see an additional number of buttons and boxes:

CAD.PY suggests a default filename as output file. You can change this if desired, but it will by default save a gcode file in the same folder where the bitmap is located.

maximum vector fit error: mostly left this alone, should influence accuracy.

tool diameter: diameter of your milling bit. Set to the correct value. Most of you will be

Page 24: Workshop diy 3 d printing   makerbots 2012

24

'Send to machine' doesn't work (yet) for the Arduino-based electronics.

using a 2mm bit.

tool overlap:value between 0 and 1. Overlap between the milling paths. A larger number gives less overlap. A value of 1 will give a distance of the full tool diameter between paths.

#contours: number, 1 gives only an outline, which is useful when cutting a contour. -1 mills away everything in black. Values of 2,3,... are also possible. Set to ‘1’ for now.

'contour' starts the calculation. CAD.PY will calculate the tool path, and display these when done:

Give it a try….

Page 25: Workshop diy 3 d printing   makerbots 2012

25

-Once the calculation is finished, you can go back to replicatorG, open the Gcode-file ’05.A.gcode’ you just created.

-place a piece of plywood under the machine

-Position the mill bit and turn on the Dremel

-Hit ‘Build’ and try it.

Page 26: Workshop diy 3 d printing   makerbots 2012

26

H MORE CNC-MILLING

1-On the stick you we prepared some more example files. ‘Arduinobot’ is a frame for a small robot, designed to be cut out of 2mm plexi.

2- Make and mill your own pieces

Prepare a bitmap-file in Photoshop (I export a PDF out of my CAD program) PNG-files work well, black & white is faster than grayscale. Format: PNG-file, minimum 200 dpi, black&white* Maximum dimensions: 16x16cm*** Minimum detail: 1mm **

*Everything in black will be milled away. The black areas of the design should not touch the borders of the image.

**Depends on which of our machines you’re using ***This is the diameter of the smallest milling bit available

3- On one of the computer we installed a trial version of Deskproto. You can use this to generate Gcode from 3D-models and mill into foam. I can help with that if you’re interested in trying this. We’ve included a sample file, with the setup for our machine, in EXAMPLES:

Page 27: Workshop diy 3 d printing   makerbots 2012

27

K AN INTRODUCTION INTO G-CODE -G-code is a standard for machinecode. -However, each brand of CNC-manufacturers tend to make their own ‘flavor’ The reference below is a command list for the Makerbot electronics, which are also used on the miniCNC.

-G-codes: commands starting with ‘G’ are motion commands -M-codes: commands starting with ‘M’ are toolhead commands. (as the Dremel on the miniCNC is not controlled by the electronics these are meaningless for this machine)

CODE EXPLANATION 

EXAMPLE 

  

G01 Xxx.xx Yxx.xx  Zxx.xx Fxx 

Move to given coördinate. The parameter F defines a speed in mm/min 

G21G01 X10 F120 G01 Y10 G01 X0 G01 Y0  (this draws a square of 10x10mm, at 120mm/s)  You could also write: G21  G01 X0 Y0 Z0 G01 X10 Y0 Z0 F120 G01 X0 Y10 Z0   …    

 

 

G04  Pxxxx  Pause command, parameter P is defined in milliseconds  G04 P5000 (wait for 5 seconds) 

G21  Use millimeters as units,  G20 is ‘use inches’ 

G21 (use once at start of file)

 

G90  Set absolute positioning i.e. you will be using absolute coordinates, G91 selects relative coordinates. 

G90G01 X10  G01  Y10 G01 X0  G01 Y0 (draws a square, compare with G91)  

Page 28: Workshop diy 3 d printing   makerbots 2012

28

 

G92 Xxx.xx Yxx.xx Zxx.xx   Set origin/ define position G92 X0 Y0 Z0  (you are now at X0,Y0, Z0) 

 

 

 

 

 

 

M101 Extruder on M101 (Extruder on, forward)

 

M103 Extruder off M103 (Extruder off)

 

M104 Sxxx  Set extruder temperature, between 215 and 230°C for ABS 

M104 S220 T0 (Temperature to 220 celsius)

 

 

M108 Sxxx  Set extruder motor speed, value from 0 to 255 

M108 S255 (Extruder speed = max)

 

 

M30   Used at end of file, loop function (the code starts again from the top) 

 

 

 

 

 

 

 

 

 

 

 

Page 29: Workshop diy 3 d printing   makerbots 2012

29

GCODE EXAMPLE (FOR MILLING) (this file creates a 30x30 square button with 4 holes in it)

G21 (set mm as units) G91 G92 X0 Y0 Z0 (current position is zero) (lines above are a general header)

G01 X10 Y20 F120

(plunge hole) G01 Z-5 F50 G01 Z0

G01 X10 Y10 F120

(plunge hole) G01 Z-5 F50 G01 Z0

G01 X20 Y10 F120

(plunge hole) G01 Z-5 F50 G01 Z0

G01 X20 Y20 F120

(plunge hole) G01 Z-5 F50 G01 Z0

(cut out a 30x30mm square)

G01 X-2 Y-2 F120 G01 Z-5 F50 G01 Y32 G01 X32 G01 Y-2 G01 X-2

(lift and end) G01 Z0