Thursday, November 12, 2009

CNC Pt. 14: Upgrades

Which brings us to our next thing: upgrading to a real spindle.

This is the 4/5hp spindle assembly from an X2 mini mill. The cast iron has been chopped down a bit to reduce weight, and the gear drive replaced with a belt drive for reliability and sound. There are a ton of advantages to a real spindle over a crappy router, too many to list, but here are a few big ones:

1: Play. There is almost none, so chatter is cut down drastically. This is better for your finished product and better for your bits.

2: Torque. A trim router has none. A VFD controlled motor maintains most of its torque at any rpm.

3: Collets. Rather than a crappy, 1/4" only 'collet' (which is really a badly designed chuck), this uses R8 collets (I also have an adapter to go to ER32 collets). This means flexibility in what bits I can use, less chance of them coming loose, and less runout.

4: Sound. Routers sound terrible, this has a pleasing hum to it.

5: Motor placement & type. Since it's far enough away from the business end, and mostly sealed off from the elements, this will make running coolant much easier.

CNC Pt. 13: More Tests

With that done it was time for some real tests. First in wood:

Then in aluminum!

There's some chatter in the router, and of course the router has to be run well above the appropriate cutting speed for aluminum. But it gets us by for some messing around.

CNC Pt. 12: T-Slot Table

Next up was the T-Slot table. This was also the first time the machine could really be used for something meaningfull, as all the holes were drilled by program. This was exciting for a lot of reasons, not the least of which that it was drilling aluminum for the first time.

CNC Pt. 11: Enclosure

I didn't realize how far behind I was on updating this project, but much has happened since the last post. The plan was always to make this an enclosed machine, and to make it as quiet as we could manage. The sides were covered with sheet metal, the sheet metal lined with automotive sound deadening material, and the front with a big piece of 0.25" lexan. The lexan is held in place with magnet strip, which also insures perfect alignment without needing pins.

It has become known as "The Evil Dishwasher."

Monday, June 8, 2009

CNC, Pt. 10: First Test

Everything was moved back out into the garage and all the power supply, controller, and computer parts were mounted into a single tidy computer case.

You'll notice the computer we're using is one of those little ViaC3 mini-ITX setups. They're small, relatively cheap, and have everything built into the motherboard.

Mike made a quick model in Lightwave3D and imported it into DeskProto. DeskProto is a tool that creates machine code (in G-Code format) from 3d models. From there it's just a quick trip to the machine's hard drive to run the file. And here it is, our very first test cut, hacked into a 2x4.

It's fair to note that while the machine is far from done, this is a pretty significant milestone. The first goal: a machine that could cut intricate shapes into wood for use in furniture (or whatever) has been achieved. There are several other goals ahead though.

Friday, June 5, 2009

CNC, Pt. 9: Computer

After a great deal of debate, trial, and research, we loaded a computer with FreeDOS and TurboCNC. To sum up the argument, windows based controllers, in my experience, suffer from an endless chain of issues associated with the use of hardware abstraction layers to provide "security." Linux works well, and offers EMC2 (free), but after a few arguments between myself and the system I decided this was a good place for pure simplicity.

TurboCNC reads control code (G-Code), interprets and outputs directly to the controller. Simple, straightforward, constistant, and free to mess around with. Donate the guy some money once you decide TurboCNC is awesome. Same goes for FreeDOS. These guys put a lot of work into their software for our benefit, and should be rewarded.

It took less than 5 minutes to get TurboCNC moving the machine, where we ran a few test files just to see everything work together. Messing around we were able to achieve some pretty good speeds (up to about 140 IPM, not bad for a heavy machine under powering its motors). Also, at 75 IPM the machine feels totally unstoppable. You can push and pull with all your might and it just keeps tracking along regardless. Also, there is no discernible play or flex in any dimension. When the motors are held constant it feels like everything is just welded in place. I do believe this thing is going to work:

Thursday, June 4, 2009

CNC, Pt. 8: Wiring

The whole apparatus was then moved onto my kitchen counter for wiring and testing. All the parts for the power supply, which consists of a large toroid transformer (changes 120V household A/C current to 32V A/C Current), a bridge rectifier (converts AC to DC), and a couple of large capacitors (help keep the power source stable). The final output is 30 volts at more amps than I can make use of.

Stepper motors, for those who have never messed with them, are motors with many sets of magnetic coils that can be energized independently. When one set is energized the motor jumps to a certain position. Energize the next set and it jumps again. By this principle we can control how much a motor turns and how fast. It does, however, make for complicated controlling mechanisms.
The motor controller board was another ebay purchase. It is possibly to save a load of money and build your own controller, which is exactly what I have done in the past, but things have changed since then. My (time X money) = constant ratio has shifted a bit, leaving me with the ability to afford a premade controller, and not a lot of time to build one from scratch. Your situation may closer resemble standard college life.

Wednesday, June 3, 2009

CNC, Pt. 7: Z Axis Motor Mounts

The mounting of the Z axis motor was done using more 1/4" aluminum plate. It was at this point, or somewhere close to it, that we decided that the Z axis plate needed more structure to prevent it from flexing under load. Aluminum L brackets were added, which had the benefit of looking pretty cool.

Tuesday, June 2, 2009

Reasons to work late

CNC, Pt. 6: X and Y Axis Motor Mounts

Time to mount the motors! All the ball screws needed to be turned down on a lathe so that a standard coupler could be used to attach them to the motor output shaft. This is a very laborious and time consuming process that is probably best left to someone else. Being a masochist, I went ahead and turned them down myself on my mini-lathe. The outer surface, to about 1/8" depth, is extremely hardened steel. To the point that it cannot be cut with a standard bandsaw blade. It's really tough stuff.

The actual motor and ballnut mounts are made from welded steel plate, then ground flat on a plane sander. It is most important to get the mounts to a perfect 90 degree angle, as any adjustment in this dimension has to be done with shims. When completed I only needed a shim under the Y axis ballnut mount, which was cut out of a cheap auto parts store feeler gauge set.

Monday, June 1, 2009

CNC, Pt. 5: Bed Plates

The next step is to mount the beds for the X and Y axes (that is, the two horizontal axes). This is probably one of the hardest parts of the construction process. I used tapered (countersink) screws to keep the hardware beneath the bed surface, but if I had to do it all over again I would have used a regular low profile machine screw and milled a flat spot into the bed plate to provide a little more adjustment. As it stands now, the screws have to be tightened in stages and in pattern to get the to just the right position.

The Z axis rails are then bolted to the Y axis bed plate. The holes for mounting are tapped directly into the aluminum.

And the same process again for mounting the Z plate- shown here with a 1/4" high speed router attached.

Sunday, May 31, 2009

CNC, Pt. 4: Frame Construction

Construction begins! It's pretty straight forward, just start building in reverse of how it was designed- steel frame first. It is very important to be as precise as absolutely possible when constructing the frame since the rails are bolted directly to it, and you only get about 1/8" of adjustment or less when it's all said and done. Those rails, when locked down, need to be withing about 1/100th of an inch of perfectly parallel or they will bind up and bring the machine to a disappointing halt.

Once the frame was done we mounted the rails (loosely) by drilling and tapping directly into the steel beams.

Wednesday, May 27, 2009

CNC, Pt. 3: Design

About the frame, and about doing this kind of design work: When working on designs for things that are very mechanical, and not very aerospacy, I tend to shoot from the hip. I have a pretty healthy aversion to math, and I find solids modelers to be cumbersome. I've grown up building things, so my version of shooting from the hip, in general, is still reasonably accurate with error on the side of overbuilt and heavy.

My approach then is to map out as many known pieces and principles as I can, then try to finagle them around in a basic 3D model till everything is as close to ideal as I can manage. I knew my rails (24.5", 19", and 12.5"), and I already had my motors (3 x 280 oz NEMA23 stepper motors). I made quick models of the rails, screws, ball nuts, and motors so that I could align them the way they would be in the machine. From there I modeled rail blocks and assumed that I would use 1/4" aluminum plate to tie them together.

I went with a "split gantry" layout to keep a high stiffness, meaning only one axis has to be mounted on top of another axis.

This whole process leaves everything floating in space, but with all the parts just where they need to end up in the final machine. Therefore all that needed to be done was to model a steel frame around it for everything to attach to, and take measurements...

Strange as it may be, I do all my non-FEA engineering in Maya3d. It's just quicker to mock things up. It also makes it very easy to rig up motion and limits on things so that I can check for interferences and spacing. The machine is designed for stiffness, not efficient use of the rails. As a result the total motion area is 12x12x6 inches.

CNC, Pt. 2: Rotary -> Linear

Ok, Ballscrews and ballnuts. The basic idea is that you need to convert rotary motion (a motor turning) into linear motion (a car rolling down a rail). There are a few ways to do this: You can use a belt, or put little wheels on a track, or use a threaded rod and nut. In the case of a hardened CNC machine like this you need it to be able to provide a large amount of force without getting nudged around or flexing, so that last option, the threaded rod, is a pretty good candidate.

A regular threaded rod will work sometimes, but in general they are very fragile because the edges of the threads are pointy and easy to get chips or bends in them. The simple solution to this is make threads that are flat on the outside so that they are less fragile. This is called an "Acme thread."

There's one step better though, which is to get a very special threading that uses ball bearings to roll on. The advantage of this is a lower friction (meaning more power makes it from rotary force to linear force). In some cases ballscrews can be twice as efficient as an Acme threaded rod. They are, however, generally between 4 and 20 times more expensive depending on just what you get. You do save money on motors, controllers, and power supplies, but it's not always worth it. Do the accounting for your application, and feel free to ask me questions. I'll be happy to elaborate if you're looking to build one of these.

Here's a neat animation of how a ballnut works; notice that the ball bearings have to be recirculated through the nut in order to keep rolling on the screw:

On to the design...

Tuesday, May 26, 2009

The Saga of the CNC, Pt. 1

This is a kind of post-facto blogging, although the project isn't completely done yet. I realize I should have shared it as it happened so I'm going to try to catch-me-up by going through the whole process bit by bit till it meets up with the current state.

I guess the first place to start is "what the heck is a CNC?" Literally it means "computer numerical control," which is not terribly helpful unless you already know exactly what it is anyway. Engineers are jerks like that. What it is, really, is a semi-autonomous robot that serves the very specific purpose of cutting out parts from wood, plastic, or metal. It's given a list of instructions and then goes to town on making something. Or many things. Or the same thing many times. Sounds pretty useful, right? Well it is. And by that I mean the molds to just about every product you own are probably cut on a CNC of some sort, and in the case of some higher end stuff the product itself is often cut on a CNC.

I've made a couple smaller ones in the past for cutting foam and wax, but I've always wanted to make a serious-business CNC machine that was capable of cutting aluminum and hardwoods. The first step was to determine machine size, and to do that I needed to know what sorts of components I would be using. After an extensive search I settled on a set of rails sold by an ebay dealer named "linearmotionbearings2008." Here they be:

Those are both rails and ballscrews. I'll explain the whole ballscrew thing in the next post, along with the basic design of the machine.

Saturday, May 23, 2009

Memorial Day Weekend Fun

Started out the weekend right- by pulling the engine out of the Supra again:

Friday, May 22, 2009

Hybrid Rocket Engine

This is the rocket engine I've been designing. I hope to build it not too far in the future. (Hobby thing, not for work). For scale the outside diameter of the housing is three inches.

Thursday, May 14, 2009

Hubble Mission Update

Just started hour 5 of the first Hubble EVA: Everything is going smoothly and quickly, already doing 'get ahead' type work. Nice job, fellas.

Saturday, April 25, 2009

Passion or Mental Illness?

It is, after all, possible that we've gone too far. I doubt it of course but I'll let the world be the judge:

Wednesday, April 22, 2009

It's a Bike!

19 pounds, zero ounces. Ultegra group.

Monday, April 13, 2009


The ol' netbook started to make some noise, so I took it apart to check/fix its faulty fan. Fun was had, things were fixed, and warranties were abolished.

Wednesday, April 8, 2009

Things I did today

Watched this in person. I love my job. Plus we had sea turtles (and barracuda, and manatees):

Tuesday, April 7, 2009


So tired all day long
but when it's time to crash out
not a wink of sleep.

Sunday, April 5, 2009

Whatcha learnin' about today?

Between bouts of exchanging all parts my car's interior to a different color, the wine chiller arrived today. Did a little research on storing fine wines, and what the issues are; here's what I've learned:

1: There are multiple kinds of catalyzation in the process of aging wines. The trick is to get them all to arrive at their perfect solution at the same time by controlling the temperature. Apparently the best temperature for this is around 56f

2: Temperature stability is very important because the thermal expansion of the wine causes gasses to breath through the cork. Constant cycling of temperature will cause the wine's vapor to be exchanged with oxygen, ruining the wine (or at least lessening the amount in the bottle, depending).

3: If the cork becomes too dry, it will shrink in the bottle and allow more gasses to exchange. For that reason you need to maintain a reasonable humidity level in the storage area. But not so high that mold can develop. This means 50-80%.

4: Blockout light: UV can cause some of the reactions to catalyze faster than others, changing the flavor of the wine.

Somewhere down the road I figure I'll make a proper wine cabinet- maybe oak? I'm also thinking I'll do a frieze of some story CNC'd or carved into wooden panels. Oisen and Niamh maybe? The non-christanized version, of course. Who doesn't love a rediculously old Irish tale?

Saturday, April 4, 2009

Time orientation

The brother sent this one on to me, with note that chapter-10 seems to mess with some links so should be skipped over.

First couple chapters are explanation of the idea. Of course I have zillions of questions about study format, are we measuring what we think we're measuring, etc, etc. This is a lecture talk, so they glazed over it all. I'll have to spend some time with the studies and get back on that, but let's make the assumption that all is as stated. It certainly seems to have a fair amount of face validity to it.

I'm automatically prone to applying these ideas to myself and the people around me who I know well, which of course is a terribly mix of anecdote, case study, and personal bias. But here's my thoughts: I grew up in a house of very future-oriented people, namely my father, who faces most decisions with the respect only an actuary would. All contingencies are planned for, any possible problems that could occur are treated as though all go wrong at the same time, and everything goes in a neat spreadsheet package. I have no idea how much of this was learned from risk assessment of space operations, but I suspect he came into the program with these very useful skills because he already possessed a great deal of them. My mother I'd say is compassed around present-present-future, which makes for a pretty good dynamic between the two of them. With occasional difficulty in choosing paint colors. Neither (and I suspect all people) fit cleanly into a particular spot all the time.

The result, myself, is someone who is situationally specific to all these things. Money, education, work, etc, I tend to over plan. I would say most of the time I knew exactly how much homework I had to turn in, how many days I had to show up, and what score I had to get on each exam before the first was done, with a proper margin of error based on statistical past experiences, of most of the classes I took. After which I would make up for my carefully plotted free time with totally unstructured, semi-risky adventures ranging from car racing to delicious treats. On top of that there's little doubt in my mind that I live my relationships excessivly in the past.

I think the link here is that present-future should be treated seperately from past by its common thread: pictureness. Past lacks a scale of big-picture or little picture- in fact I often find myself surpised when I sum up some past experience and it seems like it was a much bigger deal than I know it really was. I'm not sure which was really wrong. Present and future is different than that- some people are oriented strongly to big picture actions, and some to small picture actions.

The example of my student-y-ness is a big picture thing. I failed to view the individual work assignments, or even the tests themselves as relevant. The big picture was a college education, and as I progressed, a life education, until it grew to a life career, financial situation, personal capability, etc, etc. Somewhere down the road it will probably get to be even more abstract. This allowed me to put dotted lines around the required bits, like how much work, how much play, how much money. Often at the loss of little picture items- how often to pick up the phone, go out, finish that one project, etc. Things tend to get done in time, but things without a specific due-date tend to float for a long time. The whole is a steady march, but the individual projects tend to look more like intermitent sprints.

Friday, April 3, 2009

Clover Haiku?

It's Eff Oh You Are
One, zero, one. Zero one
One zero zero.

So....Whatcha Thinking About?

Base what? How do numbers work again?

You're actually already aware of number base systems, even if you think you've never heard of this before. You're used to working in a base-10 (decimal) system, meaning you count zero through nine, then increment the next digit over and repeat.
01, 02....09, 10, 11, 12...

To change the base, you do the same thing (mostly, we'll get into the complicated in a moment). IE Binary is counted as:
001, 010, 011, 100, 101...

I'm intentionally starting with extra zero's at the beginning of these sequences to make sure you recognize those are always there, but dropped in every-day math for clarity. It's importaint to recognize this though, it makes a lot of sense when you get outside of your normal counting system.

Why are alternate number bases important? Well, the real question is why is base-10 so important? The simply answer is that we have 10 fingers (usually), so we arbitrarily emphasize such a thing. Had we been octopi perhaps octals would be all the rage. This is an introspective post, after all. Get your brain working on how you've been conditioned to be special...

So we pulled ten "things" as a core to our general math understanding/teaching for, basically, no good reason. We could have chosen any number of "things" to base this on. There's a problem though, we're still putting emphasis on our most basic- how many apples, how many fingers, how many integer items. Rather than choosing an arbitrary "unit," why not choose something less specific, but equally well defined? These are called "non-integer" bases, and I'll give you an example of my favorite: Phinary.

Phinary, or base-Phi, is centered around "the golden ratio." The golden ratio is a relationship that occurs in a lot of simple shapes like pentagons and dodecahedron, plus a lot in nature. The number, in base 10, is arrived at by solving g=1/(1+g). It's about 1.618 to 1. Try writing out the obvious repeating nature of the g=1/(1+g) on a sheet of paper, each time substituting g on the right for g on the left. You'll get an idea of what we're talking about.

So how do you represent a ratio as a system of counting? First is to realize that "numbers" are a representation of a real thing- I think binary shows this pretty well in its "on" or "off" nature. Base-10 is like this too, but slightly more complicated (think switches with positions, or something). Math in this light seems very logical and, well, rational.

Phi-base works around a non-rational number ratio, and as such it needs to be represented in a pretty strange way. As a ratio all "digits" need to be separated to address a standard form (only one representation for a single number, similar to base-10), and counting is a little less obviously linear. To do this in a semi-logical way, you create a couple rules for the problems you'll inevitably face, for example let's try some simple incrementing:

001.00 Seems pretty simple so far. Add them together.
002.00, except that 2 itself is wrong, and to translate it becomes:
010.01. It's a ratio, see? Maybe? Let's try the next one, add those two together to get:
001.00 + 010.01 = 011.01, except now you've lost your ratio representation by putting two 1's next to each other; 011 translates to 100; therefore 3 = 100.01. You've pretty much hit all the rules you run into now, so....

Can you do 4 and 5?
4 is easy, 001.00 + 100.01 = 101.01. 5 is a little harder, but same rules: 102.01, translate 2 to become 110.02, again to become 1000.1001. If you can make it to 7 or more you're doing pretty good. You'll also find you can multiply in the same fashion and use the same limited rules.

It's pretty, it's strange, but mostly it's helpful for you to get out of your assumptions about how we measure things. Give it some introspection. Imagine that this approach was the way your brain naturally worked, as apposed to having to fight yourself to translate everything from base-10.

Also imagine this is why it's not a good idea to prod Spiv when he's in seemingly deep thought, expecting to get an honest, easy answer.

Thursday, April 2, 2009

Autism Issues

Woah, I really need to drag up that whitepaper I did about 5 years ago. Here's the basic premise of it, until I can find it again: Autism is a pretty rough communication disorder, or so it's approached. It seems to have a pretty strong genetic component, and perhaps some minor environmental components. Much research needs to be done on both, I suspect it's a kind of genetic predisposition plus stress model thing like so many other disorders- or at least stress in just how bad it can get. Plus once it starts the stressors elevate, so you have a sort of exponential possibility on damage. This is all marshmallow-y stuff though. Stresses can come in many forms, noted by this study is fever: increased rate of chemical process catalyzation in parts of the brain. I did not propose such a thing, but it certainly is interesting.

What's more interesting, to me, is the location of the brain studied, and how that links back to my original proposition. The locus coeruleus is thought to be part of the system we have for sorting out sensory information, and this is where the trains collide: Take a moment to look around while driving down the street (safely, of course). You're very good at picking out which information to register; which cars are near you, what color the traffic light is,  what your speedometer says. It's really amazing how we sort data so quickly, down to a handful of items worthy of direct attention. This is millions of years of evolution at work to help you decide that the tiger is much more importaint than the leaves in the trees.

Suppose for a moment you lost this ability- no way to tell which is more important. The texture of the asphalt, the sway of the grass, it's all just the same as the brake lights of the vehicle directly in front of you. There's really no way a person could drive like this. I suspect this is a large component in autism. Just as a tone deaf person has trouble picking a single voice out of a noisy room, observations made it seem quite likely that a severely autistic child has great difficulty grasping a single word out of the slurry of information that is overwhelming their brains at any time. Makes it pretty hard to learn language properly, or make friendships. In time a person would simply start to regard most of the sensory data as the common white noise, like the ringing in my ears, and internalize all else.

Result? Depends on the person. Some will find certain moments to try and press their sensory intake to. Physical textures, wiggling objects, etc. Others will try and bring external things into their world in unique ways, like synaesthetes (recently, famously, Daniel Tennet). All of these things are very common to autistic persons.

Mehler's study seems to point to this exactly, but with the right amount of caution- it's a hint at what could be structures of autism. And it's fortunately in places that can be dealt with. Unfortunately, as per Lenangred, Chompsky, etc, children who did not learn language early enough in life may never quite get there anyway. Developmental damages are a tough nut.

The hope is that a neurobiological theory can result in some help for those already suffering, and help prevent suffering altogether for those to come.

Thursday Crunchies

Since I neglected to post yesterday's haiku- here's two, vaguely waved at roomies:

Many Octopi
Unbelievably Diverse
Not for eating...Drew.


A Haiku T-shirt?
Oh, you witty bastard, you!

I'm feeling funky, after driving my April Fool's joke to the car club yesterday. I now owe one haiku  to Heyzoos, perhaps I'll exchange it for the pictures he took of said joke.

Wednesday, April 1, 2009

Today's Foolery

It's April 1st, and thus far I think Google has the best pranks.

Here, Here, and Here for the examples.

Haiku pending...

Monday, March 30, 2009


I love getting mail
from China- their stamps are so
much cooler than ours.

Day 1, Home sick

As in ill, at the hizzy. Rather than longing for a place which no longer exists to post-collegiate, pre-familia persons like myself. What better time to start a blog?

Let's lay out some goals:
Every day, a new haiku.
At least on weekdays.

Maybe not every day, but whenever I feel like one. Such steady goals, eh? Aside from that it should probably accompany some interesting thing I find, or just updates from my random projects. I make no promises of themes.