Four Sided Machining With an Indexer

I'm working on a project that requires hundreds of precisely machined components. Most of them can be produced easily from sheet stock or scrap lumber using 2D cutting methods. A few I've made by hand as they were just a one off.

One part I need for the project, a piece about nine inches by three inches by one inch thick, is machined on four sides. The shape is a trapezoid, or more correctly, a parallelogram with two sides offset by six degrees. Two nearly vertical slices chopped out of one side are also offset by six degrees. Various holes are drilled for pegs and other things. It's also 3D shaped on the top and bottom (three inch sides).

The "Part" crudely represented in Rhino.

The problem with multi-side machining is registration. A part is accurately registered if it is placed on the machining bed exactly in the place it should be. Knowing where the part is physically located is critical when attempting to machine it. The machining tool has no idea what is where. It only knows what to do. If the part isn't where the machine expects it, some sort of error will creep into the process. Typically, holes and such in the wrong place, at a minimum.

If the part cannot be exactly setup for the next machining operation, errors will be induced and most of them will be extremely obvious. I've done a lot of two sided (top/bottom) machining and that's pretty easy to do. Typically, if it's something critical, I'll just drill a couple of quarter inch holes in the spoil board of the table and use a dowel matching the table position to a hole in the part to index it. Another easy method is to have precisely sized material and use stops on the table so that no eyeballing is required. Simply flip the part, press it to the stops and tighten the clamps.

Switch that from two to four sided and that's where it gets a lot tougher. It's very difficult to correctly register a part while rotating it to a side. I've had a lot of difficulty doing it manually. The answer to high quality registration when machining a part on four sides is to use an indexer.

What is an indexer? An indexer is a machine that has a rotary axis. An easy way to think of it is a computerized lathe. Not an accurate way but at least a lathe goes around a rotary axis. That's really where the similarities usually end. An indexer can be used as a lathe but so can a sledgehammer be used to kill ants.

Running a rotary job on the Indexer.

Indexers are usually used to make round things. Fancy table legs, posts, amazing art and odd shaped objects such as gun stocks. I've used my indexer that way quite a few times.

Using an indexer typically uses two axises of the CNC machine, such as the Y and Z axis and work back and forth, up and down, while the indexer turns the part underneath. The bit is always centered along the axis of the indexer.

Another use for an indexer is as a fancy hold down device that can rotate on command. The indexer grabs hold of the part with jaws and the tailstock holds the part on the rotational axis by a pointed bit of metal. The indexer holds the part quite well but it requires a good bit of material to hold onto and also as a safety margin. The indexer is a rather mean and unforgiving metal object. Bash a carbide tool into one and POOF! Turn a nice end mill into trash. The outstanding property of using an indexer as a hold down device is that it can rotate too. It's fairly easy to setup a jig to hold some piece of material and rotate it ninety degrees. How about ninety-six degrees? That's hard to measure accurately. The indexer can set this up easily and repeatedly.

Aspire, the program I use to design and create cutting files for the CNC, had no way for me to simulate four sided machining. They do have an excellent system for two sided (top/bottom). I knew what it was going to look like as I had modeled it in Rhino, a 3D design tool. I had to use a block with notes scribbled on it to determine the order in which the toolpaths had to be run.

I started with the top. To mount the part on the indexer, I first made sure it was as precisely sized as I could. Then I marked the center by drawing two diagonal lines, one from each corner, on one end of each piece. I used a pointy punch to make it easy to mount on the tailstock.

I placed the piece in the indexer as level as I could with the unaided eye, then cranked it tight. Unlike a normal job, not only does the Z index (vertical) have to be set to the surface of the material, the B axis (rotary index plane) has to be adjusted to perfectly level so that the bit is square to the material when it cuts.

To align the B axis, I placed a level on top of the part. I have a level with a digital readout so I can just read the degrees to level right from the tool. Without that, I'd have to fudge around trying to find out exactly how far off the part is from level. With the digital readout, I just set the B index that many degrees and see what the level says. The level is pretty accurate so it only takes maybe two iterations to get within tolerance.

Most indexer jobs set the Z axis height to the center of the rotary index. Doing this makes it more reliable when trying to machine a rotary job. With this job, I set the Z axis to the surface of the part. A bonus with this job is that the dimensions (1x3) make the difference between the surface of the three inch side to the one inch side is exactly one inch. I wouldn't have to set the Z index again for this job, just move it up or down an inch and zero it.

I ran the toolpaths for the top of the part and within a minute, knew something was wrong. The blank was destroyed as a finish piece but it would still be good to test the rest of the toolpaths. I forgot to check the 3D cut before I saved the toolpath. Something must have changed as the 3D cut was way too deep. Oh well, I made three blanks. As long as I didn't mess up again, I'd have enough blanks to finish the project.

Machining the top of the part.

After running the top, I rotated the indexer minus six degrees so I could do the slices. That went well. Next, the left side by rotating the B axis to ninety-six degrees. The first step for this side was to plane it down so that the side was offset by six degrees. Since the part was tilted away from the center of the part, I had to offset the toolpath that distance to hit the right part of the part. The key element on the sides, besides being offset by six degrees, is they have three peg holes on each side. The peg holes have to be exactly placed or the part won't fit.

The last side.

After the left side, I did the bottom, minus one-hundred-eighty degrees rotation. No surprises. Finished that and did the final side, which is offset by minus two-hundred-seventy-six degrees.

I checked the fit of the ruined part in the assembly and it fit. I noted a couple of niceties I could do before running the next part, made the adjustments in the models, objects and toolpaths, ran it again and it was just right.

Bottom of the finished part.

Top of the finished part.

You might wonder why I rotated the index in a negative direction. Wouldn't it have been easier to just do it without negative numbers? The answer is of course! But... since I had to do a mirror image of this part for the other side of the project, I would do everything in reverse, so it would be positive rotations.

The cool thing about making a mirror image part for the other side of the assembly is that since I had made top/bottom, left/right as different sides of the same part, all I had to do to get a mirror image was use Aspire's "Move to the other side" function. Once switched from the top to the bottom, the object was automatically mirrored and still exactly in place. I had a perfect mirror part in about twenty minutes.

The two parts came out just as expected and they fit.


Popular posts from this blog

Zip Code Boundary Maps

First Day at IO 2019

Debugging a Three Way Switch