First steps with the RapMan V3.1 3D printer

The educational technology and digital learning wiki
Jump to navigation Jump to search

Introduction

This article explains how to print test example with the RapMan 3-D printer and then introduces some more advanced subjects.

Print the cup

First acceptable prints (#2 and 3)

Once you assembled your RapMan, try to print the cup (it may take several attempts to get it right). In the pictures are our second (white) and fourth (yellow) attempts. You also can see the raft made for the yellow version. Somewhere below, you can find attempt #6 (a red cup).

If needed, adapt the print temperature in the M_Mug.bfb file. E.g. if you can get about 0.5 cm/second using a temperature of 247 degrees with the manual extruder test described in the Assembling the RapMan V3.1 3D printer article, change the value to this.

For the raft, use the strict minimum, e.g. start with 235 degrees. Search for all M104 (except the one on line 457). The raft should not stick too much to the print board but it should stick. It doesn't matter if it is a bit faulty.

For the cup, around line 457 adjust for color ABS, e.g. to set temperature to 240 degrees (for white plastic), change the first line below.

M104 S240.0
G1 X22.76 Y-18.7 Z1.95 F960.0
G1 X22.89 Y-18.64 Z2.0 F960.0

For the color ABS cup we got a decent result with:

M104 S247.0
First prints

We found that we had to raise the temperature and slow down printing a bit (even for the default white plastic). Also it's a good idea to modify all files to extrude some plastic before it starts printing the raft (did not manage this so far).

Both cups are not yet satisfactory. Some tuning ahead - 15:12, 28 February 2010 (UTC).

Note: The Extruder-Fan doesn't run all the time, so don't worry if it doesn't run with the test files. It is not needed for ABS.

  • In G-code, it can be turned on/off: M106 - fan on, M107 - fan off.

Printing - first steps

If you use ABS plastic (by default you likely do) then you must understand the following:

  • You should first print a raft at a somewhat lower temperature (else it will stick to the print bed)
  • Then, the object will be printed on top.

The three print parameters

It is important to understand that printing will be affected by three parameters:

  1. Temperature
  2. Extrusion speed (how fast the bolt turns in the extruder)
  3. Head movement speed

In addition:

  • Pressure on the extruder's pressure wheels. They have to be fairly tight.

These all interact somewhat and that makes calibration difficult.

To learn more about printing, read the Skeinforge for RapMan article. It includes important extra information.

Temperatures for ABS

White ABS:

  • Raft temperature: 235 (or a bit more)
  • Print temperature: 240-245 (or a bit more)

Color ABS:

  • Raft temperature: 235 (or a bit more, since there is the danger that it will not stick enough)
  • Print temperature 243-248 (or a bit more). In our machine, we set it to 247 or 248.

If the raft temperature is too low, then there is the danger that the raft and the resulting object will warp. If it is too hot, then you will have trouble getting it off the raft (I use a knife)

Raft temperature too low and/or not fat enough
Raft temperature too low and/or not fat enough (side view)

It is likely that you may need to adjust temperatures to your setting. We think that it may be because the thermistor may not be exactly where it should be (how could you check under the cement ...), wiring may be different (length of resistances), etc.

You can manually adjust temperatures during printing, but you may have to react quite quickly. You should only vary in small steps, no more than 2 degrees when you experiment. We found that 2 degrees make a difference. Also remember that white and color ABS polymer do not have the same ideal melting temperature !

Also, there may be a problem with transport of the filament (e.g. temperature is hot enough, but plastic is not coming in because you didn't adjust the pressure wheels well enough)

Extrusion speed and pressure wheels on the extruder

  • To see if the plastic moves down I painted small dots on the wire.
  • Tighten quite a lot (without forcing of course). If the filament does not move, add pressure.
  • Until you got it all sorted out, I recommend putting the print head in position (x max and y min, e.g. over the hole that is diagonally opposite from home). Then manually extrude about half a meter of filament at the temperature you set in the G-code file. See if the plastic flows as planned, i.e. 5mm/second ...

G-code

It is now time to understand some of the g-codes or to have a table ready (there is also one in the Operations manual).

According to Wikipedia, “G-Code, or preparatory code or function, are functions in the Numerical control programming language. The G-codes are the codes that position the tool and do the actual work, as opposed to M-codes, that manages the machine; T for tool-related codes. S and F are tool-Speed and tool-Feed, and finally D-codes for tool compensation.”

Below are the most important g-codes you need to know for a first user experience.

Read the G-code article for more information.

List of RapMan G-code (thanks to Bits from Bytes blog: RapMan special codes

Code Explanation Example
G1 Coordinated Motion in X, Y, and Z axes with speed F mm/minute. G1 X10.0 Y20.0 Z1.15 F960.0
G21 Millimetres as units used G21
G90 Absolute Positioning G90
M101 Turn extruder on (forward/filament in). M101
M103 Turn extruder off. M103
M104 Set target temperature to 245.0 C. M104 S245
M106 Turn fan on. M106
M107 Turn fan off. M107
M108 Set Extruder speed to S value/10 = 40rpm. M108 S400

Typical file headers produced by the Skeinforge program

G21 millimeter system selection
G90 absolute distance mode
G28 Return to home position
M103 Turn extruder OFF.
M104 S247.0 Set temperature to 247.0 DegC.
G1 X0.0 Y0.0 Z0.0 F480.0 example of linear interpolation at speed 480
M101 Turn extruder ON.
Main code follows .....

G-code examples for the raft

This applies to our Rapman V1. machine. Yours may be different.

The problems you may get with the raft can be of two sorts:

  • It will not stick to the print bed and warp or worse: move
  • It will stick too much, i.e. you need to take the print bed off and then remove the print with a knife or something.

We (so far) play with two parameters: temperate and extrusion speed. Both are too low in most RapMap test files if you plan to print color ABS

Here is a good setting for our machine to print the raft for the heart (HeatBase.bfb and HeartLit.bfb)

  • More heat for the first layer of the raft: S239
  • Fatter lines: S550 (don't use the default which I don't what it is, probably around 400). Set/Change the extrusion rate after setting the temperature (as below).
  • You may lower temperature again for the second layer (as shown below). Else the raft may stick too much to the object.

In the beginning of G-code file, change both parameters

 M104 S239.0
 M108 S550.0
 ...... G code for the first layer
 M104 S235.0
 M108 S400.0
 ...... G code for the second layer

Of course, an alternative to raising the extrusion rate would be to slow down the head movement speed.

The object itself was then printed with these (maybe a bit too hot).

M104 S248.0

The following temperature for the raft was too hot and too fat (had trouble to rip it off)

M104 S242.0
M108 S600.0

In addition

  • Always extrude at least 30 cm of plastic at high temperature (e.g. 248 for color ABS) before running the file.
  • When we started printing from a "cold" situation without extruding some plastic before hand, no plastic came out at start and then the nozzle would get stuck in some mess...
  • If you plan to print a larger object, e.g. 12cm long, then make the raft temperature higher than 235 or 238 (my standard setting). The plastic will warp more and therefor attempt to rip it off. I don't have any setting yet, but I'd go for a temperature of 240 or higher and a yet fatter raft, e.g. set M108 to S600.0. But don't blame me if you can't get it off the print bed. Play it incrementally :)

Fine tuning

Below are two red cups that are sort of acceptable.

Two red cups: left: default settings, right:higher temperatures

IMHO, the result can still be improved in two ways:

  • Readjust the geometry down to fractions of millimeters and tighten/align the belts
  • Play more with temperature/speed/extrusion rate settings.

In any case, if yours look much worse, then there is probably something wrong in the geometry. Make sure that distances and angles of your reprap is cubic and there are no loose bolts, rods and belts.

Using the skeinforge tool to generate g-code

As we explained above, the CAM code used for RepRap is g-code and it can be created with several tools (including hand editing).

Currently, most people use either a 3D modeling or a CAD tool (see below), then export to the .STL format and then finally translate to g-code. To generate g-code there are serveral alternatives:

  • Skeinforge is a tool chain composed of Python scripts that converts your 3d model into G-Code instructions for Rapman and other fab lab tools.
  • BfB Axon is a free frontend for Skeinforge (recommended to beginners as of Q4 2010)
  • Netfabb engine for RapMan is a cheap commercial solution.

Below are a few tips for skeinforge (that we should replace by Axon instructions some day)

Download and install
  • Download: Skeinforge
  • Download: Python (if needed)
  • Unzip skeinforge.zip in some simple directory, e.g. c:\soft\

Skeinforge is moving target. As of March 2010 all the information we found is for older versions (so you need adapt information you can find) ....

  • Read Skeinforge (BitsFromBytes Wiki).
  • For ABS, the best information is ABS (BitsFromBytes Wiki)
  • Also read the manual that ships with Skeinforge (documentation folder) !
Happy Duplo man standing on a rapman brick

Disclaimer:

  • Do not trust my settings below. Check your G-code file manually !!
  • I just start printing my first STL .... so this is my first attempt to understand how skeinforge 2010-03-01 06:07:03 generates g-code. I probably got something wrong (see g-codes generated below).

Example used: parametric lego duplo by Domonoky

Here are the basic steps:

(0) Run skeinforge

  • Go to the directory and click on skeinforge.py

(1) Fix profile: In the pull-down menus, select

  • "Profile Type = Extrusion
  • "Profile Selection" = ABS

(2) Fix parameters:

  • Click on the "Craft" button. A new window will pop up.
  • Fix temperatures (much too low !), e.g. for plastic color ABS:
Base temperature (raft base temperature): 238
Interface temperature (raft temperature): 238
All the rest: 247
  • Fix flow . Click on "Speed" and set to 200 or higher, e.g. we often use 400
  • Verify the parameters defining your printer. Click on "Carve" and read Skeinforge Carve. I didn't change anything I believe.
  • Define the "fill". By default an object will not be filled.

If you fill an object, then you can choose from three patterns and also define the thickness of the surface layers, etc.

  • Click on "Chamber"

Untick "Activate Chamber".

(3) Generating the G-code, fixing it and printing

  • Then click on the "Craft" button in this craft settings window and select your STL file. This also can be done by clicking on "Skeinforge" in the main panel.

... then wait... this can be quite long, e.g. 60 seconds for a simple Lego brick.

  • Look at the generated pictures that will pop up. If they look ok, continue.
  • Examine and fix G-code. (update: If you configure skeinforge right, you don't need to do this!) I had to remove superfluous g-code from the beginning of the file and that turned on/off the temperature instead of heating it up: got rid of all M-codes I didn't understand. (M105,M115,116,117,....).
  • Then print :)

Here are some pictures of the process: The generated g-code was not optiomized IMHO. E.g. lot's of temperature settings that will slow down printing. Each time, there is a change, the print head will move, cool down, heat backup and go back to printing. This is why one can see this extra filaments sticking out (easy to remove)

Rapman printing a duplo compatible block

A bad picture of the raw result. Anyhow, I was happy to learn that the printer can easily create "roofs", i.e. print over some empty space with ABS plastic.

Raw result

The duplo clone has a similar dimensions, but does not fully fit. A bit too loose on bottom and slightly wrong positioning of elements on top.

Raw result cleaned a bit

Then you will have to adjust other parameters like head spead, extrusion rate and layer thinkness. Read Skeinforge for RapMan and followup links.

Choosing the Filament

According to the RepRap manuals and websites there seems to be a consensus that starting with ABS is easiest.

“Filament used by RapMan's extruder is a plastic rod with 3mm diameter. You will most likely found it in specialised shops under name "welding rod" as these are generally used for welding plastic. Note that "welding filament's" come in few different shapes .. triangle cross section, circular cross section and stripes (cubical cross section). You need ones that are circular cross section 3mm diameter” (Bits from Bytes Wiki, retrieved 12:18, 8 March 2010 (UTC)).

The Rapman wiki has extra information (click on the links)

  • ABS
  • HDPE
    • Warps and needs slow printing
    • needs a special print bed made out of PP/HDPE. E.g. use a kitchen plastic chopping board
  • LDPE
  • PP
    • Warps a lot and needs very slow printing
    • Printing in a very warm room helps (35 degrees)
  • PLA

Post processing (cleanup) of prints

Prints will have imperfections.

  • Remove these with a sharp cutting plyer or a sharp knife (e.g. a tiny swiss army knife is perfect)
  • Use the abrasive files you bought for assembly
  • You then can apply Acetol to make the plastic shiny (Read the warnings on the bottle with respect to inhaling and inflaming !)

See post processing of 3D polymer prints for more details. This article also discusses painting.

Moving on

See the articles in the RapMan category.

You probably should learn how to model 3-D printable objects. But you also may improve your printing skills trying to print various objects that you can find on the Internet, e.g. on Thingiverse. See the RapMan article for more pointers.