ArchivesSyndicate This Blog |
After Darwin: Should Mendel be a specific 3D printer or a technology toolbox?Friday, January 16. 2009In which your narrator suspects that we are using the wrong model of
evolution...
Darwin has been a roaring success by virtually any measure you'd care to name. In April of 2008 we had exactly five reprap and repstrap printers more or less operating. Last month, Dr. Bowyer estimated that several thousand were either operating or under construction. That's not exponential growth. It's hyperbolic. I, personally, have no doubt that in 5-10 years Dr. Bowyer is going to find himself on the Queen's annual Honor's List. Mind, in my opinion he richly deserves it. That said, I wanted to share a few ponderings that I've been nursing on the nature of change in the reprap movement for the past few months. Basically, Reprap has two models of evolution going on in parallel. In the core team, we see what I will call a punctuated animal model of evolution while the larger reprap community is a very vibrant bacterial model. Back at the end of 2006 and the beginning of 2007, the Reprap Core Team had several prototypes for a first release Reprap machine; Da Witch in New Zealand, A.R.N.I.E. at Bath and Tommelise 1.0 in the US. By March of 2007, Darwin, which was to become the first official release reprap machine had grown out of the A.R.N.I.E. prototype...
Basically, Darwin morphed into a fully industrial product. It began with the controller boards being outsourced for production by the Reprap foundation and has culminated with a shippable kit purchasable for US$1,100 {shipping not included} requiring little more than the sort of assembly you'd be expected to apply to something bought from Ikea. What is getting built out there in its thousands, to use Dr. Bowyer's metaphor, is 100% vitamins - 0% replicated parts.
A few tentative attempts have been made towards coming up with a second generation mainstream reprap machine. The most notable effort in this regard has been undertaken by eD at Bath university.
We've found ourselves increasingly sliding towards designing with industrialisation in mind from the onset. Instead of designing simpler electronics that would be easy to cobble together, we have been designing boards with parts like surface-mount chips friendly to outsourcing and short production runs. Design, for absolutely the best of reasons, has been getting more and more centralised and unified. I think that this has been happening in large measure because of the model of evolutionary development that the core Reprap team have been using. While we have been giving lip service to Darwin's original theory of natural selection, in practice we've been using Richard Goldschmidt's Saltation theory in which very large changes happen from one generation to the next.
The only place that sort of thing can economically happen is on a factory production line variously defined. That's why there are factory production lines and that's why it makes sense to make something at one point on the planet and then ship it everywhere.
I think, and this is again my own, very personal opinion, is that the core team needs not so much to dictate the technologies used as manage and facilitate the interstices/interfaces between the different parts and systems while letting the community at large provide the microenvironment-specific solutions to problems.
If we do that, as I see it, we have a chance of creating a prototyping/production capability that truly can diffuse into the furthest reaches of the planet. As it stands now, we're developing technology that is easy to make in a factory, put in a box and ship worldwide. In my opinion, what we have slipped into doing now is the antithesis of what we set out to do so many months ago.
Tommelise 2.0 operational againSunday, December 14. 2008In which your narrator finds what may be a very clever way of attaching
toolheads to the z-axis worktable...
My first impulse was to mount a piece of poplar onto the z-axis worktable
and secure toolheads onto that. I'd already designed the z-axis worktable so
that it could easily be demounted from the z-axis base. It seemed reasonable
that toolheads should be similarly easy to mount and demount.
Recently, I'd bought some spring clamps and my son, this morning, was noting how much force it took to force the jaws apart. As he was working with one of the larger plastic ones I had, it occurred to me that it could clamp the Dremel toolhead as well easily as it could clamp two pieces of poplar together while I drilled a common hole through them. A quick trip to the hardware store gave me a spring clamp that I was able to mount on a 1.5x1.5 inch L-profile aluminum extrusion. That I attached to the z-axis with bolts and wingnuts. It seems to work pretty well and I don't need anything resembling a counterweight system. Upgrading T2's z-axisSaturday, December 13. 2008Tommelise 2.0 gains a more rigid z-axis...
While the poplar and aluminum extrusion z-axis that I originally built for
T2 was adequate for the sorts of lateral loads generated by ordinary extrusion
printing and milling of such materials as HDPE, it proved too floppy for the
more exacting requirements of milling thin steel sheet and printed circuit
boards.
The original z-axis used a poplar z-axis work table with aluminum U-profile
extrusions braised onto L-profile extrusions for guides. The aluminim braising
proved both difficult to do and fragile, as well. Further, the friction load
between the aluminum guides and the poplar z-axis work table proved to be
excessive. Finally, the 12" poplar work table itself proved to weigh over a
pound.
Fully extended only about 6 inches of the work table remained withing the
guides. While increasing the tension on the guides kept the table stable, the
consequent increase on friction load tended to overwhelm the z-axis linear
stepper.
My first design decision was that the overall length of the z-axis work table needed to go to 18 inches so that fully extended there was still a foot of the table controlled by the guides. I used JB-Weld epoxy rather than screws to make rigid joins.
While the longer z-axis work table was non-negotiable, the 50% longer work
table was also going to weigh about 50% more. In that the existing z-axis
required a counterweight, it was obvious that something was going to have to be
done about lightening the worktable. 3/8ths inch HDPE was about as thin as HDPE
could be and still be rigid enough. Sadly, although HDPE is half the depth of
the poplar, it is nearly twice as dense and weighed approximately the
same.
There the situation remained for some weeks until I happened across a 2.5
inch aluminum door threshold at my local hardware store.
And here from the back side where you can see the tensioning spring for the bearings providing the normal compression.
Life imitates art far more than art imitates Life - Oscar WildeTuesday, October 21. 2008In which the narrator tries to solve a practical problem
and finds the solution to be esthetically pleasing as well...
I had a few hours this morning while I was waiting on some
information before I could do the next task in my day jog, so I used the time
seeing if I could carry my PCB layout app through to doing Voronoi Isolate layouts. I had got as far as doing the layout of a typical USB/18F4550 circuit board.
and was able to get that down to the copper traces which
would be suitable for developing conventional milling toolpaths,
thusly.
Having got to that point the next thing I had to do was identify the individual traces so that I could develop the toolpaths around them. Experience with ordinary milling toolpaths made that a simple enough exercise.
It should be mentioned that early on in his career, our own Dr. Adrian Bowyer developed an algorithm for doing Voronoi, also called Dirichlet, tesselations. I'm not sure what the algorithm he developed looked like in that it was published in a journal in 1980 and I wasn't able to get at it on the web. I was going to ask Adrian for a copy of the paper, but hadn't got around to it. This morning, not having the paper in hand, I decided to have a go at writing my own and seeing how it came out. I use a finite element rather than a geometric approach in all of the Slice and Dice apps that I've written. The PCB app I've written follows the same prejudice. Coming from that prejudice, it seemed to me that Voronoi tesselations could be generated rather simply from a bitmap of the traces, suitably identified by trace, by simply wrapping each trace in successive layers of pixels until the accreting traces ran up against one or more other traces. At that point growth along those boundaries would stop and growth would continue by accretion until the PCB was filled. Here is what the USB/18F4550 circuit board looked like when you applied that rule. It may not be completely kosher, but worked fairly well. As abstract art, it wasn't too bad, either.
My next task is to generate a drill file consisting of the centres of the little red circles on the layout. Those are where the chip pins fit. That should be trivial. Sort of like designing with 2D strip boardFriday, October 17. 2008In which your narrator overestimates the
difficulty in knocking his PCB layout app into shape...
I was very pleasantly surprised with the ease with which
my PCB layout app came together. I visualised getting it working just well
enough to generate some milling files for T2 this weekend. I got a LOT further
than that this evening.
The biggest job I has was to sort out the graphics scaling
equations that I was using. I ALWAYS have trouble with that. Of course, I got
something that looked like it was right that turned out, once I started trying
to test its envelope, to be be profoundly wrong. The difference this time,
however, was that I was able to sort out the code snarls in just an hour or so
this evening. Heretofore, I often spend days on this sort of task because of my
dsylexia.
Once the scaling equations were right the rest of the
work, things like being able to delete traces and components, storing and
reloading layouts and the like was all done in about two hours. Just to put the
app through it's paces, I did a basic layout of the 18F4550 plus its USB
connection on a 150x150 mm board. I've left off a couple of capacitors that go
with the voltage regulator in the upper right-hand corner of the board. It
wouldn't have been a big deal to put them in the footprints file. I just
haven't got around to it yet.
You can see from the layout that the 18F4550 is an extremely easy chip to set up communications for. Once you have your components laid out and connected up to your satisfaction you can just look at the layout sans the grid.
J'en ai marre!Tuesday, October 14. 2008In which your narrator shares one of the
better known sentiments of the French chanteuse,
Alizée.
I had what was either a late night yesterdayor an early
morning today, depending on how you want to look at it. By about 1830 yesterday,
I was, like Alizée, ... fed up ... pissed off ... tired. For the past
several weeks I have been diligently working my way through the tutorials for
Eagle, KiCad and, finally, FreePCB. Voicing a few of the more pungent Afrikaans
explicatives under my breath, I shut down FreePCB and opened Visual Studio in
Visual Basic .NET mode. By 0130 the next morning, there was
this...
In order to make that happen I needed to be able to convert the output from a PCB design app to something Tommelise could understand. On the face of it this was no big deal. Eagle can spit out G-Code via a plug-in while KiCad and FreePCB can handle Gerber format plus a few others. As I've discovered, however, appearances can be deceiving. A few months ago, I ran across a lovely paper on applying the Voronoi Isolate notion to the calculation of toolpaths for milling PCBs. Recapping briefly, most PCBs are made by one of several chemical etching processes. The end result tends to look something like this.
My original plan was to use the MIT Voronoi app along with
KiCad to generate nice toolpaths for Tommelise. When I read the paper closely,
however, I discovered that the authors had apparently implimented Algorithm 1,
which had the sorts of all-to-common problems caused by less than perfect Gerber
formatted input files. As well, they'd used a rather complex geometric approach
to creating Voronoi Isolates and implemented it in, the good Lord save me, Java.
correction and update made on 17/11/08} I wrote some code that did Voronoi Isolates years ago using a much simpler grid approach and had most of the routines in Slice and Dice to do the job again. That left me with learning how to design PCBs with one of the available, preferably open source, apps. As I spent more time with the apps, I tossed Eagle in that although it was very good, it was a commercial app. While they let you use a severely cut-down version of Eagle for free, if you needed more than that, you were looking at paying $750 for just their standard version. While I've never shunned software just because it's commercial, I've got a severe allergy to paying more than a very few hundred dollars for one app. It was a matter of a few moments to locate a torrent for a recent cracked version of Eagle on Pirate Bay which would have got me around this obstacle. Thinking about it, though, it became clear that it was just bad business to predicate the success of an open source project on a commercial app that users would be tempted to pirate. Thus, Eagle became history. The more I worked with learning KiCad and FreePCB the more I kept thinking about that hypothetical bright 12 year old that was my professed target audience. If he or she had the slightest touch of attention deficit disorder, the learning curve on either of the PCB apps was well over a magnitude too long. It was like learning Algebra in Middle School, it takes far too many hours "learning" things that turn your mind to slag before you get anything back to convince you that it's worthwhile going on. The authors of both packages began to write their apps years ago with the notion of creating a simple app that would draw in a lot of new users. Over the years, however, both apps became more and more like commercial bloatware, and their original simplicity deteriorated with each upgrade even while their power and flexibility increased dramatically. As my spare time, hour by hour and day by day, evaporated, I began to realise that I was caught in the old, old situation which is most efficiently described as... ...when you are up to your ass in alligators, it is difficult to remember that your initial objective was to drain the swamp. Briefly, I felt like I was trying to drive a lawnmower from the cockpit of the Space Shuttle. I'd only wanted to mill single, or at most double layer PCB's. I'd gone to a LOT of trouble to keep my controller designs simple and using as few parts as possible. By 1830 yesterday evening it had become crystal clear that the situation had spun completely out of control. With considerable trepidation, I began to write my own app. I got acquainted with KiCad, a French app, some years ago and had got quite used to and liked Eeschema, the schematic module. It was quite useful for documenting my controller designs. As well, I'd generated my own component library to get me somewhere between schematics and physical board layouts. Ordinarily, chip pins in the Eeschema libraries are grouped, more or less, by function rather than actual physical position on the chip. I'd rewritten those chip descriptors to reflect the real pin positions on the perimeter of the chips that I was using. I found being able to look at my board and look at my schematic and see, more or less, the same thing was very handy for quality assurance. Having come on the Reprap project quite early on, I'd got, with considerable pain, into using stripboards, specifically Euroboard stripboards, as a development tool. Stripboards are rather handy for blocking out new circuits and are more permanent than a powered breadboard. Recently, however, my use of hex inverter chips to reduce the number of microcontroller pins needed to run T2's stepper motors have rather overwhelmed the ability of the Euroboard stripboard to cope and the poor things have been covered with a mass of jumper wires. When I thought about it, I wanted to mill PCBs not much more complicated than stripboards before the mare's nest of jumper wires began to collect on them. I want there to be a one-to-one match between my schematics and my boards whenever possible. What I coded last night pretty much does that. I can...
I've got maybe one or two more man-days to add in a few editing and file save/refresh capabilities and then one or two more to interface the file formats with the milling modules. I should be able to cut some test PCB designs that actually mean something next weekend. Tommelise 2.0 goes into productionThursday, October 2. 2008You won't be hearing too much about Tommelise 2.0 after this. It went into
regular production last night making parts for other projects. There are a few
things that want sorting out about it, viz,
.
All that said T2 is doing very good work right now. Last night I started
proving the preliminary design for the electromagnet spools for the linear
stepper motors that I hope to use in Tommelise 3.0. Here you can see one of the
two halves for a spool being milled out of 3/8ths inch HDPE. Here you can see the cut 5 mm into the 8 mm internal width of the spool.
As it is presently designed the linear stepper for Tommelise 3.0 will use a common 3/8-16 threaded rod as a lead screw. In combination with the 15 degree step of the stepper motor itself the motor will advance a linear distance of 0.053 mm/step. Drawing, as it does, 9.2 watts, the stepper will be pulling 240% of the electricity that the largest stepper on Tommelise 2.0, a Haydon 36000 series. I've deliberately overdesigned it hoping that I can get something that will work acceptable. I can easily size the design down, should the design specifications I've made are even in the same ballpark with the stepper's actual performance. Testing the envelopeWednesday, October 1. 2008Well, it's been about eighteen months since hitting a milestone on my
Reprap work has caused me to to break out my 12 year-old Mcallans' single malt.
Tonight... is the night, though. I should possibly have published this in the
Builders' blog. I reasoned that you could do this with a Darwin, however, so I
published it here in the main blog instead.
I wanted, however, to test the envelopes of my Slice and Dice software, the cutter and the positioning accuracy of the Tommelise positioning robot. I could probably get eight teeth on a 6 mm pitch radius gear, but that would be right at the limits of my system. It took me about two and one-half hours to cut it. Most of that time was spent worrying that I'd mar the piece. It should go quite a bit faster in future now that I have the parameters for working HDPE on this machine. I developed the gear profile using a script that I wrote in Java two years ago as an add-on for the Art of Illusion 3D modeling system. Testing out the profile on a poplar blank went on yesterday after what seemed like a lifetime of tweaking my Slice and Dice routine to do milling work instead of additive extrusion. You can see the relative size of this sprocket gear with respect to the original ten-toothed prototype that I cut some weeks ago.
My first attempt to cut this sprocket was tried with a sheet of 1/4th inch polypropylene. The handling of this material, however, proved to be tremendously different than HDPE, so after work I decided to do a trial cut in HDPE, a material I've had some prior experience with, instead. The gear broke loose from the sheet quite abruptly and caused me quite a
fright. I feared that the cutter would damage the sprocket. Nothing of the sort
happened, however. Here, you can see the scale of the sprocket. I designed the gear to have a precut hole that would give me a good friction fit on one of my little tin can stepper motors. The sprocket looks a little fuzzy because I didn't have any fine grit sandpaper to clean the swarf off with. Knocking off the swarf was a matter of a minute or so with a fine screwdriver and a loose cutter. It needs saying that this sprocket is only sort of a demonstration piece. I've actually designed it as part of a fist-sized alti-azimuth positioning system for an infrared radar environmental mapping system that I'm building for a mobile robot project that I began recently. That project is most definitely not open source so you'll not hear it mentioned again for some time, if ever. Tommelise is getting put to very practical work from the get-go. Here you can get an idea of how cleanly the walls of the sprocket have been cut. Now that I know how to cut steel and can cut spools for the electromagnets for my linear stepper motor project, which most definitely will be open source, I expect to start making rapid progress on that development shortly. Second try at cutting steelMonday, September 29. 2008
In which your narrator actually manages to cut the thin steel plate...
The round diamond engraving cutter that I used before was clearly not useful for cutting steel, only engraving on it. I expect that I could have actually cut it if I'd had many, many hours and a lot of patience. I went back and found a pointed tungsten carbide cutter head suitable, they said, for cutting things like stainless steel and granite. As I went through the many flavours of cutters on offer, I kept seeing the caveat, "do not use this cutter as a drill, cut from the side of the cutter." I decided to reduce the number of variables that I had to deal with so I glued a strip of the 0.01 inch steel (0.254 mm) that I was dealing with onto a piece of milled, 3/4 inch poplar with white Elmer's glue. White Elmers glue is not recommended for joining metal and wood. That's why I used it. I wanted to be able to remove the steel from the wood backing after I was finished cutting. In that regard this gambit worked very well. I was able to cut the steel without worring about the steel warping or resisting the cutter laterally with stored energy from bending. I also didn't have to worry about pieces of cut steel abruptly flying off when the cuts were finished. In spite of that I found that the pointed cutter had problems, different ones mind, but just as serious as the diamond engraving cutter had. Instead of the steel sheet warping and storing energy in deflection, the torque induced by the high speed cutter tended, when the cutter grabbed at the edge of a cut at irregular intervals, to move the z-axis housing and the xy cutter plane fractionally. This energy would store until a grab of the cutter occurred. Then the cutter tended to cut off at an angle and drill all the way through the steel abruptly. It was clear that quick, shallow cuts at high speeds, the method that worked so well with HDPE, weren't going to work with steel. At that point I abandoned trying to cut out the templates for effecting the field offsets and decided to do a set of controlled linear cuts, not unlike what I did by hand initially with HDPE. I quickly confirmed that quick shallow cuts were not going to work. At that point, having noted that the cutter would drill through the thin steel, I decided to see if I could drill through the steel and then cut laterally at a slow rate through the whole of the steel sheet. That worked. I made an initial cut (red ellipse) at several steps (0.1 mm) per second. The lateral force from the cutter head caused the z-axis mounting to flex slightly along the x-axis, a known weakness in the present x-z positioning table. When I dropped the cutting speed to about 0.1 mm/sec (yellow ellipse), I was able to cut through the steel successfully. The deflection at the right end of the 0.1 mm/sec occurred when I doubled the cutting speed. At 6 mm/sec and given the noise levels, I don't think that I'm going to be cutting a lot of steel sheet without an acoustical hood over Tommelise or at least acoustically isolating the Dremel tool from the x-z gantry frame. All the same, I should be able to cut my field offset plates for my home-built linear stepper motor design. First try at cutting steelWednesday, September 24. 2008Some time ago I resolved that I would take a crack at making Tommelise cut the thin sheet steel to do the field offsets for the linear
tin can stepper that I've designed.
I bought a little diamond cutting head
for about $9 that works with my Dremel.
Field offsets are how you turn an ordinary air core electromagnet into a multi pole magnet suitable for making what is known as a
"tin can" stepper motor. You can see here what I am talking
about.
I plan on using a 3/8-24 inch threaded rod for a lead
screw for now till I figure out how to cut my own lead screws. You can buy that
kind of threaded rod in most good hardware stores. One of the gripes that I have
with the Haydon linear stepper motors is that the 3 mm lead screw is far to
flimsy for the lengths I'm using. Making my own linear steppers lets me fix that
problem as well as controlling the costs.
First, I had to generate a flat steel expression of what
the field offsets would look like (Shades of my misspent years in engineering
school discriptive geometry studio).
I then purchased a 1/16th inch round diamond cutter for
the Dremel tool that I've installed on Tommelise 2.0 and went to
work.
The first problem that I encountered was the flimsiness of
the thin gauge steel needed for the field offsets. It tended to bow and this
caused problems for the cutter. Duct tape finally secured it sufficiently for an
attempt at cutting to take place.
While the diamond cutter was making progress it was far too slow for the 0.05 mm vertical resolution of Tommelise 2.0. When I advanced
the cutting depth I tended to get chattering and juttering as the cutter grabbed
the edges of the cut in places.
I finally called it a night and attempted to cut a sample
of the steel by hand with the diamond cutter. In fact, it was possible and went
relatively quickly. The problem was, however, that the diamond cutter is most
efficient when held at a 45 degree angle with respect to the material being cut.
That makes all kinds of sense for a person using a Dremel tool by hand, but is
not much help for me.
I'll be shopping around for a different cutter geometry to
see if I can ameliorate this problem.
(Page 1 of 11, totaling 105 entries)
» next page
'Coffee Bar' design by David Cummins powered by Serendipity |