Jashan Bhoora | blog

Posted: 15/04/2014

This first year of university is going quickly, the second term already finished. Since York happens to have an unusually long Easter break, I thought it might be a good opportunity to spend some time on a project of my own (not forgetting some revision of course).

The Computer Science department at York has a 3D printer in one of the hardware labs; a MakerBot Thing-o-matic. 3D printing is one CAM technology I had not yet had the chance to mess around with yet, as my high school did not have one at the time. However, my hardware lecturer was kind enough to allow me to use it, and I went on to make use of it in a small extension for one of our assignments (to print a case for a device we had made), and I used it to manufacture the gears that were used in my teams entry for the Thales Arduino competition.

As you might guess, I was highly interested in the technology, and hoped to use it again.

Introducing the RepRap Project; something I had come across a while ago, but hadn't explored until now.RepRap, or the REPlicating RAPid Prototyper Project in a community based initiative to create DIY self replicating CAM machines, and make them accessible to everyone. At the forefront of this project is the development and creation of open-source 3D printers. The idea is that once you have one 3D printer - either a commercially assembled one, or built from scratch (called a RepStrap) - you could use it to print out the structural parts for a another printer, build it, and so on. Overall this approach is far cheaper than investing in a commercial 3D printer (which generally cost thousands of pounds), yet at the same time can yield comparable results at a fraction of the cost.

And so, with 5 weeks off, I got to work...

There are a variety of models various contributors have released for others to build. As this was my first attempt, I decided to build a seemingly popular and recent design called the Prusa i3, named after its creator (and a big contributor to RepRap): Josef Prusa.

With this sorted, it was a case of collecting together the materials and electronics, and following the vast array of available information to get things up and running. Due to the open source nature of the project, this is slightly more challenging than it may first appear. Since there is so much information, and so many variations and modifications to a process it can become a little tricky to know what exactly to do. Regardless, it all made very interesting reading, and by sticking to it, I slowly made progress.

The Prusa i3 (or indeed, most RepRap printer designs) can be split into 4 main parts:

  1. Frame (the structural X, Y and Z axes)
  2. Printing bed (which may be heated to give a better print)
  3. Extruder (the part that feeds and heats the plastic and deposits it on the bed)
  4. Electronics (the motors, sensors, switches, power supply and controllers)

I proceeded in the same order as above, starting by cutting out the frame by hand in plywood (which was cheaper than having it milled in aluminium), then joining the rods and plastic parts (which were bought online) together with bolts. I soon had the skeleton of the printer made.

Next came the extruder assembly. All extruders have two parts; the hot end and the cold end. The cold end is the half that drives the plastic filament into the hot end, which then heats the plastic and deposits it on the print bed. I went for a popular J-head hot end with a 0.35mm nozzle (which I chose to try and achieve finer prints), along with a Gregs-Wade cold end. This was attached to the assembly.

Finally, the electronics. The i3 requires 5 motors, 2 temperature sensors, 3 micro-switches, a form of heating element, an optional heated bed (that I decided to include), a power supply and the main controller. There are a variety of controllers to choose from, and in the end I went with a RAMPS setup, which takes the form of a shield for an Arduino Mega.

Everything was finally assembled, and my chosen firmware (Marlin) was uploaded to the Arduino. However, it was not done yet.The printer needed to be calibrated before anything good was going to be produced by it. There are many variables that can cause a bad print, and most can be prevented by proper calibration.

Despite this, after a first, quite rushed attempt at calibration, excitement got the better of me and I decided to jump in and try printing anyway. The result was expectedly bad (and video of this first test print can be seen below), but the trial run was useful, and better highlighted what firmware variables and hardware parts needed adjusting.

Quite a lot more careful tweaking and testing later, and a number of failed attempts, I was able to get my first calibration prints.

Below is a sample of some of them. One demonstrates a test for layer height and thickness, and the other two test the printer prints the sizes specified in the designs. The cube also tests bridging, that is, printing hanging layers in thin air. You can also see a time lapse video of two of the test prints I did.

The prints aren't quite 100% yet. There's still some roughness on some of the surfaces on the cube and pyramid, and some minor infill issues on two of the puzzle pieces. Overall though, things seem to be working. I'll hopefully be able to refine it a bit more, and print a few more test pieces. In the summer break I'll have more time to mess around with it, and have a chance to test bigger changes like different firmwares, and different firmware and slicer settings, as well as hardware variations.Either way, now that I finally have a RepRap I'll definitely be making heavier use of 3D printing in future projects.