Harbor Freight HVLP Spray Guns Work Pretty Well
I’m in the middle of painting panels for the flood enclosure I’m building for my mill and wanted to pass along a mini-review of the Harbor Freight HVLP spray guns I’ve tried. I started with them more expensive one they sell, #93305:

Not such good luck with #93305…
To be honest, I didn’t have very good luck with the 93305 model. Seems like no amount of adjustment would prevent it from working fine for a little while and eventually spattering to much paint out the nozzle which dripped down all over everything. I followed the instructions, I Googled the heck out of other’s instructions, all to no avail. This model pressurizes the paint can, and I’m convinced it’s pressure regulator that sits on top of the can was defective in some way and too much pressure was forcing too much paint through the system. My unit was also older than the one pictured and had a metal gun instead of what looks like blue plastic in that picture. Steer clear of this model!
A quick order early in the week landed me another model to play with for the weekend. This was the #94572, which includes two gravity-fed guns (no air regulator malfunction):

These are the droids you’re looking for!
You can get this pair of these little boogers on sale as I write this for $49: cheap! And they worked great. While trying to figure out how to adjust the other gun, I came across many more articles about this 2 gun kit than the remote can gun–seems others had already sussed out the better deal. There were a lot of folks out there using them to paint cars of all things and swearing that they actually worked extremely well for it. I figured that’d be good enough to paint my plywood panels for the flood enclosure and that was exactly right. They lay down a lot of paint on the wood without runs and are very easy to use and adjust. Cleanup is easy, and if I had any tip it would be that they like the paint a little thinner than what I was mixing it at first. There’s nothing much to adjusting them, fiddle with the knobs a bit, but mine worked great right out of the box. If not for the long drying time since it’s too cold here for more than 1 coat a day, I’d be long done by now with very nice looking results.
If you’ve got a painting project, you could do a lot worse than to pick up this set of guns.
G-Wizard Calculator Version 1.630 Just Posted
Release 1.630 is a minor feature release:
- We’ve added buttons so you can go to the correct web page to Purchase G-Wizard as your trial is running out or to renew your subscription if it is running out. It’s also easy to see how many days are left on your trial or subscription as they draw to a close.
- Added a button to the “Search KB” popup to show all entries.
- Re-evaluated the Rougher Endmill performance and upped the feedrates for it.
- Added 4 user-defineable fields to the Tool Crib so you can track extra information of your own choosing. One customer wanted this to be able to track the quantity of particular cutters he had on hand. To use it, click the “Optimize” button and you can name the fields. All cribs use the same field names. The 4 fields are scrolled all the way to the right.
- Cleaned up some rounding issues for the Bolt Circle calculator.
- Fixed a bug in tool deflection calculations where we had assumed the body of indexable tooling was made of carbide instead of steel.
- Fixed a problem with CSV exports of Tool Cribs and CutKB.
It’s been a little while since we posted a mandatory upgrade, so I am marking this one mandatory to get everyone on the same page.
You can find the install page here: http://www.cnccookbook.com/GWizard/GWizardInstall1SC.html
You’ll need to be a registered user to install, but if you aren’t already, pop over to our registration page and get a free trial.
A CNCCookbook Milestone: Over 1,000,000 Visits a Year

Starting the week between Christmas and New Year’s, CNCCookbook began doing quite a few transformations to give the site an overall facelift. We revamped our menus and merged the WordPress blog into the main site (it had been a separate site during most of 2011). In addition, we’ve redoubled our efforts to publish more quality content. The results have been rewarding as our traffic is way up. I’m pleased to announce we now receive well over 1 million visits per year, and that we have over 10,000 of you on our mailing list. For comparison, our traffic during January 2011 was 58,000 visitors versus 104,000 in January 2012–a 79% growth rate.
That’s quite an accomplishment, and we’re very proud of it.
For comparison, here are some measures of annual unique visitors by Compete.com:
| Mastercam.com | 9,261 |
| CNCCookbook | 11,201 |
| HMEM | 13,650 |
| HaasCNC | 15,147 |
| MMSOnline | 20,339 |
| CNCZone | 71,458 |
| practicalmachinist.com | 152,270 |
| blog.makezine.com | 201,155 |
Compete works by sampling an audience of 2 million to see which web sites they visit. It’s a pretty large audience, but the numbers are more representative of relative volumes than actual volumes. Nevertheless, we can see that CNCCookbook is moving up through the ranks of machining websites quite nicely.
I want to take this opportunity to thank all of you dear readers for making this possible. It’s your visits, after all, that we’re talking about here.
The popularity of web sites is based on how well they attract new visitors and on how loyal their existing audience is about coming back. We promise to do our part by providing great content that gives you a reason to come back. If you like our content and want to see us keep growing, there are several ways you can help out in addition to dropping in from time to time to see what’s new.
First, tell your friends who may also be machinists and interested in this sort of content. Sending them a quick email about an article you saw and liked really helps. There’s a convenient button for this at the bottom of every post. We monitor click throughs from email, and folks that discover us because someone sent them an email with a link to CNCCookbook are among our most loyal readers. Thanks so much if you’ve done this for us in the past.
Second, help us out by clicking the gadgets you see at the bottom of every post. We have buttons for Google’s +1, Facebook “likes”, Twitter’s Tweets, and sharing via LinkedIn. If you use any of these services, you’ll know right away what they’re good for. Please click on the ones you use when you run across an article here you really like to help get the word out. Now here is something you may not have know: search engines like Google are increasingly using popularity on such services as an additional way to decide which links to recommend. For Google, the +1 button is extremely important. Whether or not you gave a Google Plus account, please press our “+1″ buttons. It only takes a second (hey, try it right now for this post), there are no popups, and it simply registers your vote with Google that you liked an article.
One more thing you may not know is that all those “+1′s” help Google to optimize your personal search results. For example, if you “+1″ feeds and speeds articles relevant to machinists, Google will soon realize you want to see machining content more than feeds and speeds relevant to computer network performance. In other words, if you click “+1″ on articles you like, you are training Google to give you better results over time.
Last thought on helping us goes out to those of you that have web sites or that are writers. We’d love to have you link to our site from your own web site. This is one more way that Google uses to judge how high to rank search results. They figure if lots of sites link to a page, it must be a pretty good page. CNCCookbook does extremely well getting links. I guess folks are finding value here and want to pass it along. But, just as you can never be too thin or too wealthy, we can never have too many links.
If you are a writer, we’re always open to the idea of a guest post. Drop me a line with your thoughts on what you’d like to post about. Let’s see what makes sense. In the past, we’ve had some wonderful guest posts from folks like Robert Grzesek, the founder of MeshCAM.
Thanks again for your help and support. With a little luck, we may almost double again in 2012!
More Elbow Room for the CNCCookbook Blog
I like to use larger pictures (the site’s standard is 800 wide) so you can see the details. People these days have larger screens too, except when they’re on an iPad or something similar. When I did the update to our blog recently, I used a WordPress theme called “Boldy” that is a fixed width theme, and it is optimized for 1024×768 screens. Because of that, a lot of the photos were getting cut off on one side. So, I spent a few hours today rewhacking the theme to produce a variable width version that can expand to fill a larger screen.
Ahhhhhhh. More elbow room!
This new variable width version doesn’t have everything just right yet, so I will probably tweak on it some more, but I decided it was worth rolling out. Besides, I need it for the post on Vacuum Tables that follows!
Fixturing with Vacuum Tables, Vacuum Chucks, and Vacuum Clamping Systems
I’ve been interested off and on in vacuum fixturing for quite a while. My brother is in the design stage of a big CNC router table, and wants to build in a vacuum table capability. I had been dimly aware that it is also applicable to CNC milling operations on metal, but hadn’t really delved into it too much. Then I came across a great article showing how to build a vacuum table over on the MicroSystemsGeorgia web site and it was the impetus for several hours spent researching this method of fixturing.
Here is the table design by Chris Kokourek that got me going:

Here is the vacuum table mounted on the VMC table. That outside groove was done with a 1/8″ ballnose and is used to hold rubber cord that seals the edge. The round vacuum ports are milled 1/16″ deep and each one has a hole in the center leading to the passages behind…

Here is the vacuum pump. It takes compressed air (20 CFM) and uses a venturi to generate the vacuum. In addition, it tries to silence the noise a bit. Not cheap, but some of these are available on eBay!

Here are the air passages on the back side of the vacuum table…

The air passages are sealed with a simple plate…

These are the changes Chris made to get to his 2nd generation vacuum table:
Fewer holes. Originally there were holes around every edge to use additional clamps. The clamps are needed to prevent the work from sliding sideways from milling forces. But, he discovered the two clamps shown on the table were sufficient to prevent the sliding. Filling the holes means one less place for liquid coolant to collect and splash back if you use an air hose to clean the chips.
He re-routed the groove for the outer gasket so there are no open bolt holes, hence it is inset around the holes. If you don’t do this, you have to tape the holes on the workpiece or you have a vacuum leak.

Chris has provided some dowel pins to repeatably locate the workpiece on the vacuum table. You’d think these would help minimize the sliding tendency as well. Or, you could put the dowel pins along two edges and butt the workpiece up against them to locate it.
A nice vacuum table like this could save you a lot of time loading and unloading your work–perfect if you do a lot of work with large plates!
No sooner had I finished absorbing this interesting article did I head over to eBay to see how much more cheaply I could lay hands on a venturi vacuum pump. There were some pretty decent deals, but I didn’t pull the trigger. It did get me poking around though, and I found this:
ClampuSystems Vacuum Clamping Kit…
This is a vacuum clamping kit. You get 4 puck-shaped clamps which you presumably secure to your table and set the material on top. They sell these for cabinet makers to use with routers and such. The kit is very reasonably priced and might be a good way to get started experimenting with vacuum fixturing. They sell a variety of vacuum tables, clamps, and accessories on their web site, including vacuum venturi pumps that are a lot cheaper than the ones listed on McMaster Carr. I suspect they may be louder, but the other specs seem comparable.
Next, I jumped over to CNCZone to see what posts about vacuum fixturing might pop up. As usual, there was a lot of material to go through. These were my findings after going through 10 pages of search results:
- One post suggests using Gast rotary vane vacuum pumps. This may be a lot quieter than a compressed air venturi pump and a cursory look at these pumps on eBay suggests they don’t cost any more. You’ll probably want to pair one up with a tank so there is a little extra capacity, so that would increase the cost a tad. If you do use a pump on a machine with flood coolant, you’ll also need to figure out some way to keep coolant out of the pump.
- The same thread suggests All Star Adhesives for gasketing supplies to use in conjunction with vacuum fixtures.
- From the same thread, here are some pix of a vacuum table used for diamond drag engraving small plates:

The white material is an open cell foam used for gasketing. Note that it is also in the center to support the workpiece from bowing. Each pocket holds a workpiece…
- Long-time contributor Geof converts a compressor to a vacuum pump for some serious capacity. Here is his vacuum table with improvised coolant trap (important to avoid screwing up the pump!):
Household water filter serves as a coolant trap for the vacuum line…
Converting a compressor like this results in a much more efficient vacuum pump than the venturi systems, but you do have to be pretty serious about vacuum fixturing and have a spare compressor laying around somewhere! Interesting thought: to pull a vacuum, the compressor must overcome a pressure differential of 14.7 lbs per square inch. To compress to normal shop air pressures, it needs 10x that much pressure differential. Doing duty as a vacuum pump is much easier on the compressor. Geoff suggests a 2HP converted to vacuum pump is plenty. He just happened to have the 5HP available.
- Vac-Magic is Mitee Bite’s vacuum pallet system:
- Advice from TXFred on CNCZone about using vac tables:
1. Only a single vacuum port is needed unless you plan to set up multiple pieces at a time. I put the port near the bottom left corner, and made that corner the origin for all my programs. You can see that I put in lots of holes for ports. This was a mistake, because I had to divert the gasket around each one of these holes.
2. I used 1/8″ closed cell foam tube from MSC as my gasket material.
3. The grooves were milled with a 1/8″ end mill. Feedrate was kept low to create the smoothest possible surface.
4. Face the top after the grooves are milled. Then chamfer the edges of the grooves, or they’ll tear up your seal. Round the corners of each raised square, for the same reason. Once that’s all done, flip it over and face the bottom.
5. The grooves should be spaced so that the distance from the outside edge of one groove to the opposite edge of the next is a fraction of an inch. Your stock will likely be measured in whole inches. You need to be sure that the stock completely overlaps the seal. If your grooves are on 1/4″, 1/2″ or 1″ centers, this won’t happen.
6. The grooves should be about .08″ deep or less. The foam compresses a lot, and you want a good seal. I made my grooves 0.1″ deep, and sometimes had a hard time getting a good seal. Put a vacuum gauge on your pump so you can verify the seal. Also put a ball valve on the pump, so you can quickly apply or release vacuum without power cycling the pump.
7. The Harbor Freight vacuum pump works fine, but does put out some oily smoke. Also, it is not compatible with flood coolant. It will inhale any coolant that leaks past the seal, and that coolant winds up in the pump’s crankcase. [Fred also mentions filling his coolant trap with flood coolant very quickly, about 1 minute!]
8. When programming, touch off your Z to the table, then jog up to set your zero. Since your zero is relative to the table, you can do clever tricks like cutting almost all the way through material without breaking the seal or milling into the table. And when you’re done you can break the material into pieces along the lines that you milled.
At some point, I need to build a vacuum table to play with. These notes and references will serve me well when that time comes.
Use “Corncob” Roughers to Kick MRR’s Up a Notch
“Corncob” Roughers are endmills that have serrations on the flutes to help break up the chips. You’ve probably wondered what the advantages are for these, so I thought I’d put together a post and talk about them a bit. These roughing endmills are only useful for roughing as the serrations leave tracks on any walls machined on the workpiece. So, unless you don’t care about those tracks, you’re going to need to put up with a toolchange to a finishing endmill and another pass to finish your part. Because of these extra steps, it’s reasonable to wonder about the value of these endmills.
What do they do that regular endmills don’t? There are at least two strong benefits to these endmills.
Their first advantage is that they often seem to minimize chatter. If you’re hogging hard and getting chatter, try one and see if it doesn’t go away. The configuration of the teeth with the serrations changes the characteristics of the vibration and can often move the frequency out of the critical zone for chatter. For more about these sorts of effects, see our Feeds and Speeds Cookbook chapter on chatter.
The second advantage for these roughers is they can run considerably higher chiploads than comparable finishing style endmills. The serrations chop the chips down to much finer sizes, which means more of them can be packed into the flutes without jamming. In addition, the smaller chips are lighter making it easier for your coolant, air blast, or mist system to clear the chips from the cutter. The combination of these effects is significant. At the behest of a customer, I recently revisited the chipload bonus our G-Wizard Feeds and Speeds Calculator gives to roughers. I went through the offerings from 10 different endmill manufacturers and reviewed the chipload multiplier for their corncob roughers versus the closest equivalent finishing endmill for aluminum and steel. The results were impressive and ranged from a minimum of 1 to 2.75 at the top end. The average was 1.48 and the median was 1.23. When doing these kinds of analysis, I have a statistical model I use to clear out the far outliers and get to an amalgamated value that is a better than a simple average. It’s proprietary so I won’t go into it. When all of that was said and done, I wound up increasing the bonus G-Wizard awards these roughers from 20% to 38% (a change that will appear in the next release of GW shortly).
Is it worth a toolchange to get a 38% increase in Material Removal Rate? You be the judge, but I really like using this style cutter.
Why Doesn’t My CNC Machine Move the Cutter Where I Told It To?!??
Let’s start out by saying this article is not about troubleshooting a machine that isn’t performing correctly. There are cases where seemingly innocuous commands to a properly set up and adjusted CNC machine do not result in the moves that were commanded.
How can that be possible?
The short answer is that this is caused because there are many approximations and assumptions made every step of the way from your conception, to CAD drawing, to CAM program, to G-Code, to Trajectory Planning in the Controller, to the Servos or Steppers driving the axis, to the leadscrew and other components driving the table, and so on. There are various techniques that are used to minimize these errors, but it is useful to be aware of their sources, so let’s look at a few of them. This diagram includes a few examples of each:

Sources of CNC Position Error…
From Conception to CAD File: CAD Errors
In your mind’s eye, you see a very pure shape. Circles, cylinders, smoothly flowing lines, all with infinite precision. The CAD program has to render these notions with more limited means. Perhaps it can only represent lines, and hence arcs and circles become a series of short line segments that approximate the arc. Perhaps it can represent splines, but the curve you have in mind is only approximated by the spline.
Some file formats make fairly extreme assumptions. Perhaps your carefully constructed 3D model, which had smooth flowing curves and other geometries, is being represented by the file format as a mesh of triangles which can only approximate the original model.
In these cases, the CAD program is approximating what you’ve asked for, and there will be errors and assumptions made in that process. You have a little bit of control over it. You can choose to use a better CAD program. There are settings in most of the CAD programs that govern the degree of error their approximation is supposed to allow.
From CAM to G-Code: CAM Errors
The next step in the journey from conception to making chips is to load your CAD model into your CAM program. Even if they’re integrated, there may not be a lot of difference in the end result. The CAM program wants to think about your model in a certain way to do its job. That certain way may or may not be highly compatible with what the CAD model can actually offer. If nothing else, the CAM program is applying cutter geometry to the model. There is no cutter geometry that corresponds to a mesh of triangles, so if that’s what the model offers, the CAM program is going to approximate.
Perhaps the toolpath algorithm itself is doing some sort of approximation of your geometry. Was it easier for the software engineer that wrote the toolpath code to think of your arcs as a bunch of short line segments? If so, he will have converted your arc geometry to line segments to facilitate his task. If he used enough line segments, the approximation will be accurate enough for your purposes. But, of course, there are tradeoffs. Fewer segments means faster algorithms. If you don’t check your default tolerances in the software, you may find the compromise between speed and accuracy chosen is not a good one for the job you have at hand.
Perhaps it was easier to ignore some commands that are available on your machine and controller and go with a simpler post processor. Many post processors have the option to view arcs as lots of line segments. Many will simulate canned cycles rather than having to be fully aware of the many varieties available on the many controllers out there (not to mention what optional parameters may be set on each controller).
Does your CAM program have any notion of what your machine is actually capable of? Does it know, for example, what sort of acceleration the axes are capable of?
Most CAM software does not. It accepts the programmer’s idea of proper speeds and feeds (or worse many use a crude calculation of their own) and assumes that if the programmer says the feeds and speeds are okay that the machine can actually perform at those levels. Of course the feeds and speeds are based largely on notions of what the cutter can handle in the given material.
Some operations are difficult because they will involve accelerations that the machine may not be capable of or that it may not be capable of pursuing accurately. A good example of a motion that’s challenging for machines is helical interpolation. Our G-Wizard Feeds and Speeds Calculator specifically considers available axis acceleration when suggestion feeds and speeds for helical interpolation. If we didn’t, it would be hard to do accurate interpolations.
But most machinists are doing helical interpolation without worrying about acceleration. If they command it, the machine will do it, right?
Nope. There’s a reason why this sort of motion is a common way to test a CNC machine. It tasks the motion with motions that make it most likely to expose vulnerabilities. To move in a straight line is not so bad. But to describe a circle requires two axes to work in a perfectly coordinate way, accelerating, decelerating, and even reversing direction to go around the full circle.
If your CAM program generates g-code for a helical interpolation that is unaware of the machine’s acceleration limits, the machine is simply going to do the best it can. If it happens to get around the circle without tripping a servo fault due to following error, you may think all is well, but your interpolated hole may not be very accurate.
From G-Code to Commanded Motion: Controller Errors
We’re almost to the end of the journey as we present g-code to the controller whose job it is to convert that g-code into axis motions to cut our part. Unfortunately, we’re also entering the realm where we may have the least control over what’s happening and very little understanding of what the controller is doing.
We do know there are important considerations going on down inside the controller, though. We know, for example, that many manufacturers offer HSM options that make the controller more accurate for High Speed Machining. We know controllers will perform better if we give them arcs instead of thousands of tiny straight line segments because there is software available that will do arc fitting and machinists report that it helps. We know there are controllers like the Miceli and others that claim they can double the speed at which your machine processes a g-code program using the same servos and other components.
How can Miceli offer a money-back guarantee to double your machine’s speed using the same servos? The only possible answer is that somehow other controllers are wasting the potential of those components in various ways. The same g-code goes into both controllers, but one is able to interpret that g-code and turn it into motion commands to the servos much more effectively than the other.
Consider the case of a zillion short line segments versus a smooth arc. Why is that harder and slower?
The g-code for each line segment has to be parsed and evaluated by the controller as it is moving the cutter. Say we are representing a 3″ diameter circle to an accuracy of 0.0005″ or half a thousandth. We can use G-Wizard’s Chord calculator to figure out how many segments will be needed. A chord of height 0.0005″ (the maximum error) for a circle of radius 1.5″, will be 0.0775″ long, will cover 2.9588 degrees of the circle, and hence we will need 122 segments (round up) to cover the whole circumference of the circle.
Suddenly, our g-code program will have 122x as many moves as it would if a single arc move could draw the circle. Let’s say we have a very nice VMC that can interpolate very accurately and we want the same hole accurate to 0.0002″. Doing that will take 193 segments.
What does that mean to the controller?
If you have the HSM option on your Haas controller, it can process 1000 blocks per second. At 150 IPM, your cutter can move 0.0025″ per block if you have the HSM option. Put another way, if you have blocks that move less than 0.0025″ but still require a feedrate of at least 150 IPM, the Haas control may not keep up if you give it enough of those moves and something has to give. Now that’s a nice control with the added cost of an HSM option to speed up its processing. Imagine an older control without an HSM option.
Eventually, the control has to slow down the cutter in order to give it self enough time processing blocks to keep up. This situation becomes even more complex for 3D, which is also prone to lots of very short moves.
What controllers like Mach3 which are at the low end of the market?
Obviously they’re going to process much more slowly than 1000 blocks per second. In addition, their trajectory planners are going to be correspondingly less sophisticated than that Haas control. And, they’re going to try to operate by generating pulses via the parallel port unless a separate hardware motion control solution is being used. Mach3 uses a ring buffer which it fills with velocity commands for each axis. Suffice it to say that the ring buffer is subject to the same issues as having too many g-code blocks per second to process. If either one gets too full, the machine has to be slowed down in some way or we’ve got a problem. There are a lot of other problems that can crop up in Mach3′s ring buffer and parallel port system as well. Some are discussed in our series linked to just above about hardware motion control.
Mechanical Errors: The Final Frontier
It’s been a long journey. I’m reminded of those crazy films in school that show the entire journey of a bite of food through the body or some such. We are finally near the end. The trajectory planner on the controller is commanding our stepper or servo to make a move. Let’s track through the different kinds of errors that accrue here.
First up–servo following error and lost steps. These are both the same thing in the end of the day: something happens that causes the motor not to be able to move the axis where it should be. Could be the force required for the motor to move exceeded its capacity at the particular rpm it was running at. For whatever reason, a move was commanded and it didn’t happen. With a stepper-based system, that motion is lost. The cutter will be off by the amount of the lost steps until such time as we re-home the machine (a good argument to do so frequently in my mind!). With a servo-based system, the servo will try to get itself back on track. It will try to speed up when the resistance is reduced to catch up to where it should be, for example. If it can do that before the following error (total distance it is behind) becomes too great, all will be well, though our cut can be off by up to the amount of the allowable following error. Presumably we have set that small enough we don’t worry too much.
If we get more than the following error on a servo system, the machine faults and the job is stopped. This is a good thing because we know we had a problem. On a stepper based system, it just keeps going. Given enough lost steps, things can get ugly. For example, if we lose steps each time we raise the spindle, the spindle will drop lower and lower each pass, which means a deeper cut, which can lead to more lost steps, and you can see how the vicious cycle unfolds.
As an aside, folks that like to say lost steps should never happen in a properly designed and operated machine are just kidding themselves. It sounds great, but in practice, the forces required to move the machine are too unpredictable. Every temperature change means the gibs are fitting a little differently which will affect the axis friction. Use or non-use of a one shot oiler matters a lot. ”Sticktion” means short moves (there’s those darned little line segments versus longer arcs again!) have radically higher friction than longer moves. I’ve seen on my servo based system how often servo faults come along even when I detune the machine a long ways from “optimal”. The only difference is the stepper guys never see a fault, they just wonder why their parts aren’t as accurate as they expected sometimes.
There are many other sources of error in the mechanicals. We may have backlash or other lost motion in our leadscrews. The leadscrew will have errors in its thread. The length of the leadscrew (and the other machine components) will change as the temperature changes. There is a long list of these things. The more sophisticated the machine, the more it will do to try to overcome these limitations. For example, the machine may have a set of glass scales mounted to each axis that give it continuous feedback on how far the axis is actually moving. The factory or service technicians may use a laser to precisely measure how far your leadscrew moves at every position of travel. This creates a leadscrew map that your controller can use to compensate for inaccuracies in the leadscrew. The machine may have temperature sensors located at various places to help it compensate.
If your machine doesn’t have all these whizbang accuracy gadgets, you may be able to use a probe to deliver a lot of the same benefits. See our article about RAMTIC manufacturing for some ideas there.
Conclusion
By now, I hope I’ve been able to show that even though you may have commanded your CNC machine to make a move, and even though it may be in good working order, there are a host of subtle interactions that can get in the way and cause your machine to move with less than the accuracy you desire. There are a lot of techniques to help you get around these obstacles including:
- Being aware of the limitations of various CAD file formats like STL, and being on top of the tolerance settings used by your CAD and CAM programs.
- Being on the lookout for sources of errors generated within your CAM program. Try to use a post and CAM that allows for true arc commands rather than lots of line segments, for example.
- Being up to speed on your controller’s limitations with respect to how quickly it can process blocks. Get yourself a curve fit program to reduce the complexity of some of your g-code, perhaps.
- Being aware of the many sources of error within your machine’s mechanicals.
Experienced machinists compensate for these things in a variety of ways. They’ll know that machines need to be warmed up before you can depend on them to hold tolerance. They come to know that they have to measure and compensate every nth part to deal with changes from tool wear, machine getting warmer, and so on. They’ll have a good sense of what kind of tolerances they can hold on key operations, for example interpolated holes. They know how to use tools like the various offsets on the machine to compensate for differences between the features they measure on the parts and what the prints call for. And they will have honed the combination of their CAD/CAM and Post to get the most performance they can out of them over time.
It’s challenging to wring the maximum performance out of such a combination, but it can surely be worth it in many cases.
A New John Grimsmo Knifemaking Video with some G-Wizard Tool Deflection Work
If you’ve been reading our blog for very long, you’ll know we’re fans of John Grimsmo’s knifemaking videos. In them he uses a little hobby mill to make custom parts for knives, which he sells to collectors. There is a lot of fascinating and useful information in them, but beyond that, they’re just fun to watch if you have a few minutes and any interest at all in knifemaking. Here is John’s latest video which covers a variety of topics:
In this video he’s working with some Swedish stainless that is well thought of for making knife blades called “RWL34″. The blade design itself is interesting, and John works through a couple of problems he encountered working this tough material, including breaking an endmill due to excessive deflection. He uses G-Wizard to figure out how to reduce his depth of cut to keep deflection within allowable limits and shows all of this in the video. It’s a pretty long video (over half an hour), but he has a lot of detail to show folks about how he approaches his work.
Given how expensive good cutters can be, a tool like G-Wizard can pay for itself pretty quickly if it helps you avoid breaking your cutters. If you’ve never checked out our G-Wizard Machinist’s Calculator, sign up for our 30-day trial, it’s free!
High Resolution 3D Printer
This is an amazing project and video I saw recently on Hoss’s 3D Printer thread over on CNCZone:
3D printing an alien skull in high resolution…
There’s not a lot of information available about how this printer works, but there is a blog with some interesting pictures:

Whistle done in typical RepRap melted filament style…
A whistle done in 50 micron resolution with this high resolution 3D printer…
A ball 3D printed in high resolution…
As you can see, the resolution with this technique is much much higher than the typical hobby-class melted filament 3D printers like RepRap.
Apparently the process involves photo-reactive resin (resin that is cured by light), and they use DLP projectors to create the layers one 2D slice at a time. Imagine a glass-bottomed tank full of resin, and a glass plate on the Z-axis where a normal mill’s spindle would be. Lower the plate to the bottom of the tank and project an image of the 2D slice onto the bottom of it through the bottom of the thank. The resin is cured by the light, and it takes 5-10 seconds for the layer to harden. Move the head up by the layer thickness (50 microns in the high res photos above) and expose another layer. Continue until you’ve pulled your 3D printed object up and out of the resin tank.
The mechanism and concept are actually pretty simple, though the process is can be time consuming. A 1″ high object in 50 micron layers needs 508 layers. At 5 seconds a layer, that’s 42 minutes. Considering that the complexity doesn’t affect the layer time, doing something like the little ball is actually very fast compared to micromilling it in a 5-axis machine of some sort.
The gentleman with the blog says he is working on turning his project into a product, though he hasn’t posted for a while so it isn’t clear the state of the project.
These high resolution printers are really slick. Here are a couple of links I found with more information about them:
http://3dprinter.wikidot.com/: Lots of info here in a Wiki for a group that are working on this style of printer.
http://3dlprint.com/: This printer is extremely similar to the one in the video above.
These printers are not apt to be inexpensive. The DLP projector used in the 3DLPrint blog printer is a Dell 5100Mp which is a $2500 digital printer. Of course you can reuse it for your Superbowl parties, LOL!
Photo-reactive resin to work with this type of technology also seems to be expensive. One source quoted the resin for use with Dental 3D Printers at a price of $96 for 500 ml.
Still, these printers are extremely cool and it would be fun to play with one!
Ever Use a G-Code Simulator to Debug Your Part Programs?
Tired of cutting air to see whether your g-code program is going to work?
We just added a new chapter to our G-Code Tutorial that shows how you can use a G-Code Simulator like G-Wizard Editor to help diagnose your part programs.

Lots of good info there about what a good g-code simulator can do for you. If you haven’t already signed up for the free G-Wizard Editor/Simulator Beta Test, now is your chance. Sign up and then use GWE to go through our G-Code course.
Blog Categories
Popular posts
Recent Comments
- G-Wizard Calculator Version 1.630 Just Posted « « CNCCookbook CNC Blog CNCCookbook CNC Blog on Use “Corncob” Roughers to Kick MRR’s Up a Notch
- A CNCCookbook Milestone: Over 1,000,000 Visits a Year « « CNCCookbook CNC Blog CNCCookbook CNC Blog on We’re Moving the CNCCookbook Blog!
- A CNCCookbook Milestone: Over 1,000,000 Visits a Year « « CNCCookbook CNC Blog CNCCookbook CNC Blog on How To Choose a Stepover
- Lauren Havel on More Shaper Tricks on a CNC Mill: Cutting Splines
- End Mills and Feeds n Speeds - Page 3 - CNCzone.com-The Largest Machinist Community on the net! on Getting the Best Performance from ER Collet Chucks





