Friday, 27 December 2013

axCut WIP - X/Y axes and optics nearly complete

First spool of plastic down, and the mechanical elements of the x/y axes are virtually complete, as are the various brackets for the optics (mirror and laser holders).  

Steps to get x/y finished:
  • Design/print limit switch brackets (for microswitches)
  • Tweak and re-print x-carriage plate - holes for the v-groove wheel bolts are too tight, preventing correct alignment/pressure on the rails.
  • Finish design of cable-chain for y-carriage (have a basic design started, needs refinement)
  • Wire it up to RAMPS board - test!

Steps to get optics finished:
  • Re-design/print fixed mirror holder - current design is not sufficiently rigid; allows for some flex/vibration of the mirror
  • Fit laser tube (already tested, brackets work well)
  • Fit and align mirrors
  • Sort out water cooling (big-ish job!)
  • Wire it up, test it!

 Will do another post about some of the 20x20 fixings I've developed along the way, you can see some of them in the pictures above:

  • Printed nut carrier (inspired by: - used extensively, must have made over 200 of these by now!
  • Drop-in square nut carrier (for when you forget to insert a t-nut carrier and can't be bothered to dismantle the frame to slide one in!) - this is still WIP, as the current design is a right pain to use
  • Snap-fitting - these do not require a t-nut (or equiv), they push into the 20x20 slot and then tighten into place with an M4 screw (you can see these on the photo of the ATX PSU brackets)

After the above, it's on to assembling the bed and associated z-axes drives.

Saturday, 16 November 2013

Laser Cutter Build

Early days, but I'm currently spending a LOT of hours on a laser cutter build - heavily inspired by BuildLog 2.x and Lasersaur.  All of the design is in OpenSCAD, building on the excellent work by nophead on the Mendel90 - many of the vitamins are reused, with new vitamin libraries for:
  • Aluminium Extrusions (Bosch Rexroth 20x20 profiles) and fittings (e.g. gussets)
  • Openrail, and associated plates, V-groove wheels, etc
  • Laser Optics (tube, mirrors, laser head)
The project is on github:

Clone the repository and open axCut.scad in the latest version of OpenSCAD to view the WIP design.

Here's some of the latest images:

The first real parts arrived this week - a 40W laser tube, power supply and optics set from China.  Will be testing this over the next week or two, once I've sorted out a water cooling arrangement.

Full BOM is on Google Drive and will be published once finalised.  Will also publish to thingiverse once the machine is built/tested.

My particular requirements list:
  • 40W CO2 laser (with space to upgrade to at least 80W - i.e accommodate a 1000mm tube with water cooling)
  • Bed size to accommodate A1 stock - design files use 850mm x 600mm with 30mm margin all round
  • Fully enclosed
  • Allow for pass-through (i.e. very long items)
  • Allow for high/tall items and "autofocus" via motorised bed (150+mm travel)
  • Have unobscured front access for loading/unloading parts
  • Bench-top design (may integrate a bench at a later date)
  • Side connections for extraction and cabling (i.e. power, usb)
  • Investigate using reprap s/w stack vs Mach3 - I'd really like to leverage as much as possible from the reprap community (e.g. modified sprinter firmware)
  • Budget target of £1500 (max £2000)

Sunday, 24 March 2013

Pretty in Pink

I seem to have sorted my over-heating issues from a few weeks ago, and have been steadily designing/printing various bits for around the house.  Most of these are too bespoke to bother putting on thingiverse, fortunately, they were all pretty fast to model and print:

  • Spice rack for the kitchen - aluminium channel with printed under-cabinet hangers
  • Brackets to hold fluorescent under-cabinet lights
  • Large washers for holding an Ikea cabinet (lost the originals)
  • A "laser" gun toy that straps to my sons forearm - his design
  • A clip for holding a blackout blind closed
  • A replacement holder for a magnifying glass
  • Sword hilt for my son (the original one got trashed)
  • Flexible bracelet for my daughter
My biggest project to date has in fact been the awesome Giant lego Darth Vader model from thingiverse, in pink:

This is also my first commission, got another to do in black when the filament arrives next week - great fun!

The foamboard heated chamber is working well, but I tend to leave the top flap open to stop it getting too warm.  I've also finished playing with my custom start/end gcode for slic3r:

Start G-Code
M104 S0
M140 S80
M190 S80
M104 S210
M109 S210

End G-Code
M108 S50.0
M113 S0.0
M104 S0
M140 S0
M190 S0
G4 P200000

Which is making for very reliable prints.  I am still getting the odd part warping up at the corners and don't feel confident printing full plates, but then I also need to get some pure acetate to clean the glass, so that's probably a contributing factor.

I've also been somewhat paranoid about leaving the printer unattended, so installed an LED light strip and a webcam.  I then run a livestream feed during prints, which I can monitor on pretty much any device (ipad, blackberry, iphone, etc) - surreal moment this afternoon when I found myself watching a print on my wife's android phone whilst at a softplay with my kids!

I have a more complex project almost complete - a DSLR follow focus unit - which I'll post about when it's been properly tested.

Sunday, 3 March 2013

Mendel90 - Heated Build Chamber from Foamboard

I've been steady printing small parts for the last few weeks, but since changing to a new reel of filament (Crystal Clear 3mm from faberdashery), I've been struggling to get reliable print settings.  This has been very frustrating, as the reel of Village Green that nophead supplied in the Mendel90 kit was very reliable.

In case anyone is interested - my settings are currently:

  • Hot end: 200C first layer, 180C thereafter
  • Bed: 90C first layer, 80C thereafter
  • Everything else at Slic3r defaults (everything I tweak seems to make it worse)

One particularly frustrating problem has been large prints curling up at the corners, or failing to stick to the heated bed.  Ambient temperatures in my office have been pretty cold lately, which won't help.  So...  it seemed a good idea to build an enclosure around the Mendel90 to keep it cosy.

I had some spare foamboard which seemed like an ideal material to build the enclosure from.  I also added a 2mm glass sheet to the front (a piece of picture frame glass, approx £3) which can be slid in/out vertically by lifting the flap along the front edge.  I've only been running with it for a few hours, but it's certainly allowed me to print some larger parts that weren't possible before.  Will find a thermometer soon and check the temperature it reaching, but at a guess, I'd say it's in the 30-40 degree range.

Filament is fed through a long slit in top, the slit is covered in thin craft foam to keep the heat in and trap dust.  The foamcore is joined to itself with hotglue and to the Mendel90 with white duct tape.

I'm fairly pleased with how it turned out - it was quick to build, very cheap and appears to do the job - it doesn't even look that bad.

Alongside building an enclosure, I also put together a quick filament spool:

It's similar to many already on Thingiverse, but uses cheap aluminium tube and very lightweight parts - 6mm tube for the arms, 12mm tube for the axle (no bearings). On Thingiverse -

PS - while writing this I've been playing with the custom start GCode in Slic3r, and now appear to have a clogged hotend - just stopped a print as no plastic was coming out to discover it appears to be leaking out above the nozzle - crap :(

Here's the startup GCode that killed it...  derived from nophead's oozefree start

M190 S90
G4 P120000
M109 S200

Sunday, 3 February 2013

Mendel90 - First prints

After watching Nophead's Mendel90 design evolve over the last year, I went for an impulse buy of the full kit a few weeks ago... the parts arrived Thursday and I've spent the weekend getting it assembled. The kit is superb, great attention to detail, good instructions and everything you need to get printing in one box - backed by top notch service from Nophead and his wife. I would highly recommend the kit to anyone wanting to get stuck into 3D printing - it's much easier to put together than a Prusa Mendel and the final machine looks amazing with the black dibond finish. Only slight surprise is just how big it is, occupying a fair chunk of space on my desk.

 The manual is very well written, with just a few bits which weren't immediately obvious - but a quick google for Mendel90 images quickly cleared those up. The setup steps all went very smoothly, and after just a couple of calibration prints, the Mendel90 had printed the Android test model. This afternoon (Sunday) has been spent printing random objects for the kids, including:

  • A couple of Nerf targets, inspired by - I knocked these up in OpenSCAD, with the open mk2 design being my favourite.
  • Two hairclips for my daughter based on:
  • A belt clip for my son's wooden sword
  • 5 segments from the modular hose (ala loc line) OpenSCAD library I put together a year or so ago (!) - good news is they worked after a small tweak to the library to solve a non-manifold issue...
Pictures of these first prints below:

I can safely say, I'm addicted - and fortunately so are my family...  the ability to dream up a part, model it, print it and then play/use it in an afternoon is just incredible :)

Thursday, 17 January 2013

Variable density circle packing to approximate bone cross section - WIP 1

Currently looking into generating infill patterns for 3D printing that have variable density and an internal structure similar to bone. Been pondering this one for over a year, but finally got round to writing some code.

First stage in this process is to develop a robust sphere packing algorithm, the spheres will later be "sliced" in some way to generate the infill. Not sure what I'll try first, but perhaps a veronoi tessellation followed by printing each face of the resulting tessellation. Short cut may be to merge the spheres back into an existing model (via OpenSCAD, or directly modifying the STL) and then slicing as per normal... along the lines of Gary's experiment: thoughts-on-fill-algorithms/

For now, the short video below shows the WIP algorithm operating in 2D (as it's easier to debug before moving into 3D).

High level algorithm models the cells as soft-bodies, with a repelling force acting between close neighbours. The repelling force is non-linear, with a sharp drop-off at the cells "boundary". Cells start small and attempt to grow to a target radius based on their distance from the boundary of the object. Cells undergo mitosis (split into two) under certain conditions: 1) they have no close neighbours 2) there is a sufficient gap (3 units in the demo video) between the cell and all of it's neighbours.

For each iteration of the algorithm:
1) inter-cell forces are calculated
2) cell locations are updated, taking into account collisions with other cells (soft collision) and the object boundary (nullifies velocity component orthogonal to the boundary)
3) mitosis conditions are evaluated, cell splits if appropriate
4) cell updates it's radius based on distance to neighbours (e.g. only grows if there's room)

Video is showing every iteration of the algorithm - it runs much faster in real time, but performance judgements are not really relevant yet, as it's far from optimised and only in 2D. Key challenge is a robust way of judging the end of the convergence...