The Optional Stop newsletter
Home | More Issues | Contact Us
From our website:
On-Line Classes
CD-Rom Courses
CNC Books
CNC Jobs
CNC Schools
CNC Tips
Educator's Page
Tech Talk Forum
Back Issues

March 23, 2011

Dear Subscribers,

Welcome to Issue 86! 

Our news this issue is the addition of a new on-line class entitled Getting More From Your CNC Machines.  It will help you gauge current productivity levels and provide countless suggestions for improvement.  Read more in the Product Corner below.

We've been very pleased by responses from students completing our updated on-line classes that use the new e-learning platform. If you haven't already, check out these affordable CNC classes.

As always, this issue includes something for everyone.  We ask instructors to share comments on testing software, we encourage managers to consider the pros and cons of maintaining consistency among machine controls, we show a way to limit offset entry size with custom macro, and much more.  Enjoy!


Mike Lynch

Product Corner: New On-Line Class! Getting More From Your CNC Machines!
Instructor Note: Testing software – what are you using?
Manager's Insight: Consistency and compatibility versus innovation with CNC control selection
G Code Primer: Word meanings in the G76 threading command
Macro Maven: Limiting wear offset amount
Parameter Preference: Parameter related which G76 threading command is used
Safety First: The importance of procedure

Product Corner: New On-Line Class! Getting More From Your CNC Machines!

Like all CNC people, you want your company to succeed. And succeeding in the CNC environment often includes getting the most from your CNC machines. At the very least, you need your CNC machines to perform at levels that allow you to meet production schedules and/or make a profit. If they are, your company never misses a delivery, workpieces are always available when they are required at the next manufacturing step, and your company is always achieving its expected profit.

But if your CNC machines are not meeting production schedules, your company will fall behind and will need to scramble to catch up. Worse, your company is losing money and/or business because it cannot keep up. This causes the inability to take on new business (and make more money) since your machines cannot keep up at current production levels.

If you feel that your company needs improvement in this regard, our new on-line class, Getting More From Your CNC Machines, will really help. We begin by asking you to re-consider some of the most basic concepts related to your CNC environment. We show you how to take a close look at your company’s specific identity – since the decisions you make must reflect who you are as a business.

We then show you how to determine an appropriate level of machine utilization that will allow you to meet your production schedules and/or make an predictable profit. This acceptable machine utilization level will be used to determine just what your CNC people must do in order to make the machines they run achieve your acceptable machine utilization level.

Assuming that your company needs improving, we then provide suggestions for improving machine utilization. All suggestions are intended to improve setup time or cycle time – and to this end – we include lessons for setup reduction principles and techniques as well as cycle time reduction principles and techniques. When you are finished with this on-line class, you will be armed with countless ideas that will help you get more from your CNC machine tools.

Like all of our on-line classes, this class is on-going and self paced. You can register and start at any time and work 24/7, and you’ll have 60 days to complete the class. Each lesson includes lesson text (a portion of the manual) that can be printed and saved. It also includes a PowerPoint slide presentation which can also be saved. These act as the presentation materials for each lesson – and will make excellent permanent references long after you complete class. When you are finished studying each lesson, there is an exercise to do – and exercises will be graded. A certificate of completion is provided upon successful completion (overall score must be at least 70%).

Here are the seven lessons included in this on-line class:

  • 1: Basic premises – concepts and definitions to help you better understand your CNC environment

  • 2: Who are you? – Every company is unique and CNC-related decisions must be appropriate to your company's needs

  • 3: Machine utilization must dictate personnel utilization – you must determine the level of machine utilization that enables your company to meet production schedules and/or to make a profit, then determine how your people will keep up with the machine/s at this level

  • 4: Setup reduction principles – these principles can be applied to just about any kind of production machinery

  • 5: Setup reduction techniques – We provide suggestions for improving setup-related tasks in the approximate order that setups are made

  • 6: Cycle time reduction principles – these principles can be applied to just about any kind of production machinery

  • 7: Cycle time reduction techniques – We provide suggestions for improving cycle time in the approximate order that production runs are completed

Register today!



Top of page

Instructor Note: Testing software – what are you using?

I admit it. I have always fought the trend toward on-line and computer-based testing. I have always felt – and still do – that adequate evaluation of a student’s understanding requires more than a series of true/false and multiple choice questions. And in my experience, this is all that even the best testing software can automatically do. Sure, there are other kinds of questions you can create, like fill-in-the-blanks and long- and short-answer, but none of the testing software programs I’ve seen have automated the process. They still require further evaluation from the instructor. And of course, none are sophisticated enough to automatically evaluate the correctness of CNC programs that students write. That said, as long as the limitations are known and can be dealt with through other evaluation techniques, testing software can be a very useful tool in student grading.

I freely acknowledge that I haven’t seen all of the testing software programs out there, but during the last few months while recreating my on-line classes, I have done quite a bit of research. I will tell you the best of what I’ve found and ask you to share any experiences you have. If you’ve found a testing software program that you like, please let me know. I’ll publish your suggestions in an upcoming issue of this newsletter. Be sure to include more than the name of the program – tell me what you like about the system you use.

Some features I look for in testing software programs (aside from a robust ability to create a variety of test questions) include:

  • Automatic grading (I use percentage-of-correct-answers for almost everything, but having a point system and adjustable letter grading is a plus)

  • The ability to incorporate pictures and other graphics in questions

  • The ability to provide different comments for right and wrong answers.

  • The ability for students to view and/or print the results of the tests they take

  • The ability to notify me (with email) when a student completes a test

Some of the testing programs I’ve seen are web-based. These are usually subscription-based, and you create your tests right on the hosting website. Students will log in to take tests, and when they finish, the instructor can be notified by email to finalize the grading process. The best value I have seen in this kind of system is Quia, which was recommended to me by Dean Duplessis, who is a Precision Metals Manufacturing Instructor for Northern Maine Community College. The link to the Quia system is here.

This system has a free 30-day trial and subscriptions (for schools) cost $49.00 per month per instructor.

Other testing software programs can be purchased and run from your own computer or computer network. I ended up going this route to gain the additional control of owning the software myself. The program I chose is called Quiz-Builder. Tests are generated in Flash-format that can be accessed from any web browser.
You can find the Quiz-Builder web site here:

Again, there is a free trial version, and school pricing is $149.00 per license.


Top of page

Manager's Insight: Consistency and compatibility versus innovation with CNC control selection

CNC controls have come a long way over the years. Many innovations have dramatically improved what they can do, their ease of use, and in general, the way they perform. A machine bought today will have features only dreamed of thirty years ago.

One real challenge many companies face is related to this very point. While innovations are normally considered a good thing, they can present problems if a company has (probably older) machines that do not include the innovation.
Control manufacturers do there best to maintain compatibility between new controls and older models. The term used to describe this is backward compatibility. If a new control is truly backward compatible, it will be able to run programs written for all previous controls made by the company.

One example of a backward compatible feature is decimal point programming. Early CNC (or NC) machines did not allow a decimal point with any CNC words. Instead, controls made before about 1980 used a fixed-format. An X coordinate of 2.0 inches is programmed as X20000 when using the fixed format. When decimal point programming first became available, all CNC users had been programming with fixed format. In order to allow these programs to run in newer controls that allowed decimal point programming, the control manufacturer had to make the control backward compatible. Indeed, many controls manufactured today still maintain this backward compatibility, even though they are maintaining compatibility with machines that are over 40 years old!

There is nothing wrong with compatibility and consistency. If people can do things in the same manner for several machines, it will minimize the amount of training required and eliminate some of the potential for making mistakes. However, at some point a decision must be made to take advantage of innovations that make CNC machines more productive. If you don’t, you risk utilizing a new CNC machine in the same manner that you are using a forty year old machine.

Another example that stresses this point is cutter radius compensation. Before cutter radius compensation was available, programmers had to program the centerline path of a previously determined end mill. If the programmer planned on using a 1.0 inch diameter end mill, the setup person had to use it. It was not possible to modify the size of the machined shape (for sizing and trial machining) without actually changing the program.

When cutter radius compensation was introduced, many users elected not to use it because they owned machines that did not have it. They wanted to maintain consistency – everyone would do things in the same manner. By doing this, of course, they eliminated the possibility for trial machining and sizing – which would improve the machine’s ability to produce.

Unfortunately, you don’t always know the full implications of a new feature or function until you start using it. Indeed, many people didn’t even know that cutter radius compensation provides the ability to trial machine and size workpieces machined with milling cutters.

Admittedly, deciding between consistency and taking advantage of a new innovation can be challenging. You must be able to judge the impact of the innovation and determine if it out-weighs the problems related to the change/s required for implementing it.


Top of page

G Code Primer: Word meanings in the G76 threading command

As you know, turning centers that have Fanuc and Fanuc-compatible controls have a multiple repetitive cycle (G76) that dramatically simplifies the programming of threading operations. While it is a usually a very simple command to use, there are some tricks to using it – especially with more complex threads.

Prior to the G76 command in a program, the spindle must be started. Most machine tool builders recommend that threading be done in the lowest spindle range (if the machine has more than one) and in RPM mode (constant surface speed mode will cause undesirable spindle speed changes for each pass).

The threading tool must then be sent to a convenient starting position. For external threads, this will be to a diameter that is larger than the major diameter of the thread. For internal threads, this will be a diameter that is smaller than the minor diameter of the thread. In Z, the convenient starting position should be about four times the thread pitch or 0.2 in, whichever is smaller. This approach distance in Z will ensure that the Z axis is moving at the desired feedrate (fully accelerated) prior to machining.

Note that Fanuc actually has two different ways to command G76, based upon control model. With most, a one-line G76 command is given.

Basic words for straight threads and what they do

  • G76 – this commands the threading operation

  • X – for external threads, this will be the minor diameter of the thread. For internal threads, it will be the thread’s major diameter

  • Z – this is the end point of the thread in Z – the tool will move from the convenient starting position (or close to it) to this location during each pass.
    K – this is the depth of the thread – the distance (on the side) from the major diameter of the thread to the minor diameter

  • D – this is the depth of the first pass. For external thread, the X position for the first pass can be calculated by adding twice the G76 K value to the G76 X value and subtracting twice the G76 D value. Subsequent passes will be shallower. And the number of passes can be difficult to calculate (formula to calculate number of passes is given in the Fanuc manual – good luck). Generally, if you want more passes, reduce the value of D. To make fewer passes, increase the value of D.

  • A – this is the included angle of the thread form. For National Standard threads, it will be 60 degrees (A60). Other thread forms require a different A word. Note that most controls limit the number of different A word values available. You must reference your programming manual to find them. When A is (correctly) specified, the threading tool will machine only on its front edge, which is required for traditional threading tools. There are, however, threading tool manufacturers that require their threading tools to be plunged straight in (forcing the tool to cut on both sides of the insert). To accomplish this, A can be left out of the G76 command, or it can be included and set to zero (A0).

  • F – this is the feedrate in inches per revolution, which will be equal to the thread’s pitch. For threads dimensioned in the Imperial (inch) measurement system, pitch is calculated by dividing one by the number of threads per inch.

Taper threading

To machine taper threads, an I word is included in the G76 command. I is the distance and direction along the X axis (a radial value) from the end point of the thread to the start point of the thread. For external threads, I will be negative. For internal threads, I will be positive. To calculate this distance, multiply the full Z axis travel distance for each pass (including approach) times the tangent of the taper angle.

Multiple start threads

One way to machine multiple start threads is to specify one G76 command per thread start. Between starts, move the tool over in Z by a distance of one divided by the number of starts times the lead. For a 0.5 lead thread with four starts, the tool will be moved over 0.125 between passes.

Some controls provide another word for the G76 command that specifies the entry angle for the thread start. This eliminates the need to move the tool between passes. For these controls, the letter address Q is used. For a four start thread, the Q word will be Q0 in the first G76 command, Q90. in the second, Q180. in the third, and Q270. in the last.


Top of page

Macro Maven: Limiting wear offset amount

Submitted by Suhas L. More of Macro CNC Solutions

If an operator makes a mistake with an offset entry, the results can be disastrous. While it may not be possible to completely eliminate the potential for mistakes, you may be able to error-trap some pretty obvious error conditions. When making wear offset adjustments, for example, an operator should never need to have more than about plus or minus 0.3 inches in a wear offset (X or Z register). If they do, they’ve probably made an entry mistake – possibly typing 0.5 instead of 0.0005 – or 0.005, or even 0.05.

Error trapping this kind of mistake is easy with custom macro B. Consider this main program:

In the main program just before each turret index:

  • .

  • .

  • .

  • G65 P1000 T0101 U0.3 W0.3 (Test offset)

  • T0101 (Turret index)

  • .

  • .

  • .

Before every turret index, include a G65 command to call the testing macro the tool station number (we’ve duplicated the turret index word), the maximum wear offset X value (with U) and the maximum wear offset Z value (with W). With our example, if more than 0.3 or less than -0.3 is in an X or Z wear offset register, an alarm will be sounded.

Here is the custom macro that does the error-checking:

  • O1000 (Custom macro)

  • T#20

  • #5=FIX[#20/100]

  • #6=#20-[#5*100]

  • #1=#[2000+#6]

  • #2=#[2000+#6]

  • IF[#1 GT #21] GOTO 99

  • IF[#1 LT [0-#21]] GOTO 99

  • IF[#2 GT #23] GOTO 999

  • IF[#2 LT [0-#23]] GOTO 999

  • GOTO 100

  • N99

  • #3000=101(X OFFSET OUT OF RANGE)

  • N999

  • #3000=102(Z OFFSET OUT OF RANGE)

  • N100

  • M99



Top of page

Parameter Preference: Parameter related which G76 threading command is used

Some controls allow you to specify more information in the program about how threads must be machined than others. With some controls, you can provide two G76 commands. In this case, you can specify the minimum depth of cut, the final pass depth, the number of spring passes, and the chamfer amount in the first G76 command – and the rest of the information about how the thread is to be machined in the second G76 command. With other controls, you are limited to but one G76 command – and the functions just mentioned cannot be programmed with G76.

Instead, parameters control each of these important functions. Do note that a G10 (data setting) command can be used to modify these functions if two dramatically different threads must be machined in the same program. But regardless, the two-line G76 command is more helpful than the one-line type.

What is not commonly known is that some controls allow you to choose (by a parameter setting) which style of G76 (and other multiple repetitive cycles) is used – the one-line or two-line type. To find out if your control model allows this (and to find out which parameter is related), look in the G76 documentation of your Fanuc manual.

M01Top of page

Safety First: The importance of procedures

The sequence by which a person performs any task is directly related to the efficiency (and correctness) with which the task is performed. In many cases, safety is not an issue, but tasks performed in an incorrect sequence must often be repeated, leading to duplicated effort and wasted time.

When making a setup, for example, if the workholding device is not squared with the table prior to measuring the program zero point, it will mean the program zero point measurement must be repeated (if and) when the setup person determines that they forgot to square the workholding device. If this step is missed, of course, scrap parts will be machined – and even more duplicated effort will be required when the setup person eventually figures out what is wrong.

But there are times, of course, when safety is directly related to the sequence by which a given task is performed. Forgetting to attach and/or adjust the coolant lines prior to running a program for the first time could lead to an injured operator if coolant is sprayed on them – especially if it hits them in the eyes. Failure to fully tighten the workholding device to the table prior to running a part could be disastrous. Failure to scan to the appropriate command in a program prior to rerunning a tool could cause a serious crash.

The list goes on and on. Obviously training has a lot to do with safety. Well-trained setup people and operators will be less likely to perform tasks out of sequence.

But why leave it up to setup people and operators to determine the order by which tasks should be completed – especially when efficiency and safety issues are at stake? Providing your people with safe operating procedures – and ensuring that the procedures are followed – will minimize the potential for tasks to be performed out of sequence.

I recommend creating an operation handbook for each machine. In this handbook, you can document procedures to do everything from turning the machine on to turning it off. This will simplify the tasks related to running CNC machines, ensure that tasks are performed efficiently, and – most importantly – minimize the potential for mistakes that can lead to injured people.



Top of page

Sofware ad
Machining center training materials
Parametric programming ad

The Optional Stop newsletter is published quarterly by CNC Concepts, Inc. and is distributed free of charge to people subscribing to our (email) distribution list and to those downloading it from our website ( Information is aimed at CNC users and instructors teaching live CNC classes. All techniques given in this newsletter are intended to help CNC people. However, CNC Concepts, Inc. can accept no responsibility for the use or misuse of the techniques given.

To subscribe: Simply email us ( and let us know you'd like to be added to our distribution list.

To unsubscribe: Respond to this email, typing REMOVE in the subject. Please accept our apologies if we have disturbed you.

ThirtyThirty hotel
Powered by Best Free Counters