Thursday, February 25, 2010
first tests building a powder-based stereolithography printer: part 2
i thought i'd take a break from applying to postdocs and things, and tinker a bit more tinkering with progressively building the powder-based stereolithography printer rig:
(click on the thumbnails for larger pictures)
i decided that rather than go pickup a spare gen3 electronics set, i'd just build a stepper controller board and plug it into a dsPIC breakout board (thinking that the printer will need at least 3 steppers -- two on the pivotable mirror, and one to index the table, plus however many other motors for laying down new layers of powder).
i picked up some L293D H-bridges, and after a good afternoon had a 4-channel stepper controller (or, alternatively, one stepper channel could be used to control two DC motors). around this time i also remembered how very long it takes to build things on perfboards with through-hole components, and how much time surface mount components and the folks over at gold pheonix have saved me in the past couple of years :).
the stepper controller can take separate voltages for the two left and two right channels, although one channel has to be between 4.5-7v to supply logic voltages to the L293D H-bridges. it also supports both unipolar and bipolar steppers -- i just added two pins to the 4 stepper header that supply the motor voltage, incase it ever needs to be used for unipolar steppers.
after some tests plugged into the dsPIC33FJ256MC710 board, i decided to start working on the pivotable mirror mechanism. the pivotable mirror has to reflect the laser beam through variable angles such that the entire print space of the chamber is accessable, and at a sufficiently high resolution to be able to print things (not that we know what that resolution has to be just yet, so higher is better, while still maintaining some speed. in the event its too slow, the laser diode could always be pulsed, too).
i've never made a pivotable mirror before, and there seemed to be lots of different ways to go at it. you could have two spinning mirrors slightly out of phase, and rasterize a pattern, you could attach some mirrors to a galvanometer, or a bunch of other ways. my goals for the project are, as much as possible, to keep things fairly simple and off-the-shelf. i decided that the spinning mirrors probably weren't a great idea, since you'd likely want to be able to have a sustained beam present at a given location for some time, and to be able to move that beam progressively (or, at least, this seems like a good way to start -- maybe the spinning mirror idea would work out pretty well, heating up an entire layer gradually and simultaneously).
the idea i went with was to have a single mirror mounted to a small sheet of acrylic. this acrylic sheet would pivot about its center, and have two ball joints on both the X and Y axis that would move back and forth on tiny lead screws connected to steppers, allowing the mirror to be aimed.
finding some small ball joints wasn't very easy, and so i ended up using some pretty big ones from tiny tripod camera mounts i found at the dollar store. i used some epoxy to hold a long screw coupling to the center of the ball joint (to act as the nut), and found some long machine screws to use as the actual screw. couplings are a big problem, so i whipped up some compression based ones out of a few layers of acrylic and aligned them *by eye* before supergluing them. they actually worked not horribly, but a much better solution has to be thought up that doesn't require precision machining equipment.
here is a whole single-axis mechanism: stepper (bottom), stepper-screw coupling, screw, nut (but really it's a large screw-screw coupling), and the ball joint (top).
the steppers were mounted to a sheet of acrylic
and here's the little table, with the ball joint on the pivot point (center), as well as the mounting holes for the other ball joints for both the X and Y axis. the mirror would be mounted to the center point.
and here's the whole mechanism together, with stepper control. i tested it out, and there are a bunch of issues that need to be resolved, and so i think it will require some redesign (though it was a good test -- i've never designed anything like this before):
1) the stepper-screw couplings need to be VERY precise, so i'll have to figure out a better way of mounting the stepper to the screw.
2) the ball joints are huge, and i don't think they're the ideal solution as the ball-holder section of the joint can spin if there's any friction between the nut and the screw, leading to reduced motion of the mirror, and importantly, an inaccurate idea of where the mirror is actually pointing.
3) ideally the ball itself (or whatever pivot joint is used) should be mounted as close to the surface of the mirror as possible -- the more distance between the pivot and the mirror, the more skew things will have (although, this can be compensated for in software as long as you know the distance).
4) generally the whole mechanism is pretty big, and I think could be reduced quite a bit.
i have some thoughts on redesigning things, but i'm curious to hear others thoughts?
i've accidentally overvoltaged more DVD burner diodes than i'm willing to admit -- without part numbers or datasheets on the diodes, this is *very* easy to do. i'm keeping an eye out on ebay for an inexpensive module that includes both a 250+mw diode with a collimating lense that reduces the beam width to somewhere on the order of 0.5mm to 1.0mm. there are plenty of ~808nm infrared diodes on ebay that can be had inexpensively and that are on the order of 1000mw, but that just seems both dangerous (the beam is invisible), and difficult to work with / align / etc.
plastic powder update:
i've decided to try and make some ABS plastic powder, since it seems really difficult to find ABS in powder form (it's most commonly granules, filament, or sheets). i'm thinking of a belt sander or some of the options mentioned in the comments on the last post -- the trick is that the whole SLS printer has the best chance of working when the powder size is very fine. we took a bunch of our failed prints from the repstrap and put them in a pop can to melt down with a blow torch. not the best option, but it's freezing cold outside, so slow cooking them under a candle or something similar likely wouldn't work. it's almost melted in spots, and i'd like it to be pretty consistent before heading to a belt sander:
so, that's the progress so far. i'm going to rethink the pivotable mirror and try to think of some small pivot joints, and also give some thought on attaching a stepper to index the table up and down (although i'll likely run into some problems with alignment in developing some way to couple the stepper shaft to the screw -- so this will require some thought as well).
thanks for reading! thoughts appreciated :).
For the screw attachment, you need to allow a little flexion, since the ball joint you're aiming at will move away from the motor axis. How about this:
You might want to add something to tighten the tube onto the shafts if it looks like it might slip (eg. hose clamps) but the forces involved should be quite low.
You might also want to reduce the gap between shaft and screw relative to the McWire photo, so the flexion point is better defined
In your ball system, there might be a problem: the balls can swivel, so the mirror could twist around the fixed point, changing the angles dramatically.
Also, as you pointed out, the balls on the actuation screws could swivel, trashing the actual actuator lengths.
To avoid this, you could use a pair of gimbals, an universal joint, or ball joints with fingers (sorry, cant find the real English name: http://fr.wikipedia.org/wiki/Liaison_%28m%C3%A9canique%29#Liaison_rotule_.C3.A0_doigt)
You could find universal joints at the hardware store for use with socket sets.
Using a large set of gimbals for the fixed point would allow the surface of the mirror to be placed at the intersection of the rotation axes, making the calculation of required angles based on the target point _much_ simpler.(by aiming the laser at the center, the beam will always leave this point regardless of the angle)
You could still use plain universal joints for the actuator screws though.
You should even be able to get away with aquarium hosing, just like the motor end of the screws! (use hex standoffs with one screwy end and one nutty end, this might be what you meant by "screw coupling")
I think I might have gone with two mirrors, avoiding the need for ball joints altogether, but this seems simpler, especially if you can put the reflexion point at the intersection of the mirrors.
Last minute thought: the laser diode can't be very heavy, so why not put it on the table instead of the mirror ? Means that:
1) You wont need to find a mirror capable of surviving the heat (i.e: one that wont absorb a substantial amount of the light)
2) You wont have any problems due to the double reflection (one on the glass, one on the reflective backing)
3) You wont have any problems placing the mirror so the laser is at the side of the build area (a large reflection angle will make problem 2) more visible)
4) No need to be nervous about lasers and shiny mirrors... just lasers pointing in random directions ;)
And as a bonus, you will get a 2X resolution boost!
Hope it helps, I'll subscribe in case you want to discuss.
Just a few ideas from an old engineer!
An XY table might be better than focusing the beam through a prism or mirror because.
1) The accuracy would be better and also software is already developed with the reprap type projects.
2) There would be less energy loss projecting the beam directly at the workpiece. This would result in more rapid heating of the target.
3) The mirrors would wear out as the rear reflective coating in a mirror is only a few atoms thick. Mirror / prism wear is common in laser machines
4) The focusing length of the laser is probably quite short, so it would be easier to mount the laser closer to the workpiece.
5) An XY table would mean you could add more lasers later. For example you could have several in a row, pulsing them in a single pass (ie like an inkjet printer)
You might also be better with two lasers focusing at a point in space. This way you get a smaller double temperature hot spot in X,Y and Z. A single laser does not easily give you this in the Z axis even with accurate focusing
You would probably need to add some sort of gearing and/or micro stepping.
But its the easiest way!
You'll have to modify it a little to get the mirror rotating around the laser reflection point though.
Have a rummage through the forum posts there was some discusion some time back about recovering scrap by disolving it in acetone and then dropping the solution into water, Whereupon the plastic aparently is seperated off as a very fine powder. I think the person that did most with thei was Forest. Coud be worth dropping him a note.
move the whole printer frame like a container gantry over the print bed raise and lower the print bed for focus IE focus is Z1 and Z2 is the print increment. Y is the laser sliding on the gantry X is the gantry sliding over the bed.
Any old printer will do you will not need any firmware to run the gantry as this can just be sent as a print job to the existing printer the X axis is performed by the paper feed drive after each layer is lase-rd.
You will need to lower the Z2 axis put then spray some more plastic powder on to the print bed. move the gantry back to the start position of the x axis. then print the next layer.
This will keep the laser almost as close as it is to a CD when its being burned.
If lasers are like most emitter's you will save a significant amount of power loss by minimizing the distance.
I'm not sure if inverse square law applies to laser power loses though.
In view of how close a laser burning CD/DVD has the laser to the blank media indicates to me that laser burning is affected by inverse square law.
We found some couplings and larger screws today at the hardware store, too, that seem to fit right onto the stepper shaft and the screw -- so hopefully there won't be too many more issues with the coupling.
Regarding "chemically grinding" the ABS, a lot of folks have suggested reading Forest's post about acetone, but if you read it through including the comments, note that it appears as though a few different parts seem to come out of the mix, and one commenter suggests it's actually taking apart ABS into its component parts (which wouldn't be too good). I'm also not sure if it would strip the pigment from the mix, but that seems likely, and its critical that the ABS powder be black for these experiments.
With respect to mounting the laser directly above the table, this has some benefits, but you'd essentially have to make a full x/y table to the size of your build area. For this small ~1inch diameter area, that wouldn't be too much of an issue, but my hope with buildling a small reflecting mirror system (with sufficiently high precision) is to be able to move it over to a test rig with a larger build area, if this one works out. That would save a lot of time.
All the mirrors are front surface mirrors, so there aren't any issues with double reflections and shouldn't be too many issues with absorbance from the silvering.
would you or your dad like to document your work at:
You guys seem to be the lead RepRap developers for this.
Definitely -- let's do SLS Printer, so that I'll start using the proper 'selective laser sintering' term rather than stereolithography, which i've recently learned is reserved for UV curing liquids :)
Have you considered using a Lynxmotion Micro Pan and Tilt, with two servo motors?
I think it would work faster than a XY-table, since servo motors can move 60 degrees in 0,2 seconds, some even faster.
If you have a build area of 20x20 cm, and the laser is mounted 30 cm above this area, it will only have to move 34 degrees to touch the border of the build area. Just an idea :)
Links to this post: