Printing functional parts


Filed under : RepStrap

I tried to print the Wade’s M8 extruder block recently, only to find that my bed temperature of 110C isn’t enough to prevent the part from warping. I have some bits on order to convert my bed to 500W direct from the mains, (after Nophead’s flash bang bed design). Until I get this built, I thought I would concentrate on improving my Gcode scripts to improve my print quality and speed.

If I print small objects, I get no problems with warping, so I thought I would try a strap buckle (clip, buckle). I often get asked by friends and relatives why anyone would want a 3D printer at home, and I think this object is a good example of the reprap‘s ability to produce functional components. It would also prove to be a good test for how my process deals with overhangs.

Much to my pleasant surprise, the print was successful, and even without any knife work, the male clip fits into and out of the female buckle:

I still have further tuning to do to improve the print quality, but I am starting to feel like my repstrap is finally becoming useable as a 3D printer:

My toolchain consists of a mixture of well known software and some python scripts of my own creation:

1. 3D model in STL format

2. skeinforge, to create Gcode file for it’s point data

3. python script to convert the Gcode file into an svg of path data

4. python script to convert svg path data into Gcode

5. RepSnapper to run the machine

The above toolchain allows me to configure my output Gcode just the way I like it. I currently have it setup with extruder reversals for the last few mm of each path, and I wind the filament forward again at the start of the next path. I dare say skeinforge could probably be configured to produce the output I want, but I think the toolchain should be modularised as follows (and I plan to eventually remove skeinforge from my toolchain as I would prefer a simpler tool) :

1. Create 3D model

2. Output svg slice data defining each layer, (probably as a plugin to the software used for step 1).

3. Process slice data to create svg path data (similar format to skeinforge’s vectorwrite output) for each layer, (specify number of shells, infill pattern).

4. Process svg path data to create machine specific Gcode, (specify extrusion reversals, extrusion multiplier, temperatures, nozzle wipe).

For the modelling, I am currently leaning towards google sketchup. I appreciate modelling software such as AOI is more in tune with the ethos of the reprap project than google sketchup, but the latter has a massive user base with a potentially huge repository of printable(?) models, and I have found it to be much easier to get to grips with, (plus it is free, and has plugin functionality with Ruby). Having said that, if I could find an open source assembly modelling package I wouldn’t hesitate to move to that, (until then I will continue with Solidworks for assembly modelling, despite its poor support for the STL file format, although I have yet to investigate the macro functionality within SW).

My next step is to finalise my Sketchup plugin to output an svg file containing layer definitions, so I can use that as an input to skeinforge, without the need for an STL file.

Comments are closed.