To subscribe: Simply email us (firstname.lastname@example.org) 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.
New product update: Two new products from CNC Concepts, Inc.
We're excited about our two newest products. We hope you'll check them out.
ME Consultant ProAn affordable time and cost estimating system written by Michael Rainey
If you have anything to do with speed and feedrate selection, if you do time and/or cost estimating, or if you are concerned that cutting conditions used for quoting are being used once you get a job, you should really check out this simple-to-use program.
Our website provides all the details, including a demo you can download and a PowerPoint tutorial for the program. ME Consultant Pro includes a material file (with 20 preloaded materials), a machine file (with 3 sample machines), and a configuration file (allowing the entry of a few more time- and cost-related parameters) - so there won't be much for you to enter to get critical information about the machining center machining operations you perform.
Priced at only $100.00 (and $50.00 for each additional seat), this software should be a must-have for anyone serious about manufacturing.
eBook: Machining Operations Performed On Machining CentersThe first in a series of eBooks that address basic machining practice concerns. Written by Mike Lynch.
This introductory eBook is aimed at entry-level CNC people. It provides information regarding what a CNC machining center is designed to do. Included are presentations on hole machining operations and milling operations. Within each presentation, we also show how cutting conditions (speeds and feeds) are calculated. This eBook sells for $29.00.
Instructor note: Teaching CNC with the Key Concepts approach - part eight
Part eight - Key concept number Seven: You must understand your machine from an operator's viewpoint
Here are some links that allow you to review other parts of this article:
Key Concept number seven formally begins the setup and operation part of this course. However, youve done a great deal during the programming-related lessons to prepare students for setup and operation. Indeed, weve been giving suggestions in each lesson plan to help you stress setup and operation related topics.
Weve done this for three reasons. First, and as stated many times in our curriculums, programmers must know enough about setup and operation to direct setup people and operators. Truly, the more a programmer knows about setup and operation, the better and more efficient the programs they will write.
We feel this is a common short-coming in many CNC-using companies. Setup people and operators are often left to fend for themselves - with minimal direction from programmers (or anyone else). If a programmer truly understands what it takes to make setups and complete productions runs, they can provide exceptional setup and production run documentation.
Consider, for example, a technique shown in lesson eighteen that is related to trial machining using block delete. With a true understanding of what a setup person or operator must do in order to trial machine, a programmer can include commands right in the program that facilitate any trial machining application. If a programmer doesn't understand trial machining, of course, the setup person and operator must struggle through trial machining on their own. Worse, they will not know how to trial machine and scrap many workpieces.
Second, setup people and operators can truly benefit from having a working knowledge of certain programming features. When appropriate, weve provided suggestions in each lesson plan to help you explain certain programming functions to setup people and operators.
While you won't go into programming details for setup people and operators, you explain enough to help them understand the setup- and operation-related implications of these programming features. During Key Concepts one and four, for example, you explain enough about program zero assignment, tool length compensation, and cutter radius compensation to help setup people and operators understand the reasons why certain things must be done at the machine.
Third, weve minimized the need for duplicating presentations. If youve followed our recommendations and presented the setup- and operation-related implications of certain programming features during programming, you wont have to repeat these presentations during the setup and operation part of this class though reviewing key points never hurts.
Key concept number seven contains two topics (lessons):
You can see our specific recommendations for each topic in our recently completed Lesson Plans manuals. We won't duplicate the suggestions here.
Time saver: Do you really need the laser jaw setter?by Mursheen
Just watched "laser jaw setter" video. Good idea, but if the issue is changeover time, isn't it easier (and a lot faster) to use a referenced boring bar as a jaw setting guide? I have been programming and setting cnc turning centers for 5 years and find this a very simple and fast changeover method. Referenced turning tools are an easy guide for internal grip soft jaws.Editor's note: We do include both methods of mounting jaws on three jaw chucks on our website - using the laser jaw setter and using a boring bar. One advantage of the laser jaw setter is that it provides ample room for mounting jaws. With a boring bar, you're limited by the length of the boring bar - and it can get pretty cramped.
G-code primer: Programming stored stroke limit (G22 and G23)Suggested by Chris Kocourek
Chris writes: I'd like to see an article addressing stored stroke limit when working on over-size work pieces which overhang the vertical machining center table. Just this past week I had this situation arise. If the machine table was to advance forward far enough in Y- direction, my oversize work piece would hit the Z axis way cover, damaging it. I would have liked to set a "soft" travel limit, but didn't know exactly how to go about doing it.
This is an excellent application for stored stroke limit. With this feature (which most machine tool builders include as part of their standard package), you have the ability to define a zone (three-dimensional box for a machining center) in which the machine's axes must stay. If an attempt is made to send an axis outside of this box - either manually or by a programmed command, an over travel alarm will sound.
To test if your machine has stored stroke limit
It is pretty easy to test for any optional G code. Simply execute the G code in the MDI mode. In this case, simply execute G22. If you receive alarm number ten (unusable G code), the machine does not have the feature. If you receive no alarm - or if the alarm is related to the (missing) words that must be included with your G code, the machine has the feature.
How stored stroke limit works
You can set up stored stroke limit in one of two ways (by parameter setting). In either case, you'll be defining a box or cube. Either the axes will not be allowed to leave the box (the standard or default parameter setting with most controls) or the axes will not be allowed to enter the box. The parameter number will vary from one Fanuc control model to another, so you must look in the Fanuc manual (for the descriptions of G22 and G23) to find the parameter and its use. For this application, the parameter must be set so that the axes must not exit the box.
You'll be using a G22 command to instate the stored stroke limit and G23 when you want to cancel it. For this application (protecting the Z axis ways from the oversize workpiece on the table), the G22 command will limit how far the Y axis can move in the Y minus direction.
To define the box out of which the axes cannot move, you must specify two points - the left-front-bottom of the box in X, Y and Z and the right-back-top of the box in X, Y, and Z. The left-front-bottom point will be defined with the letter addresses I, J, and K (I for X, J for Y, and K for Z) while the right-back-top point will be defined with letter addresses X, Y, and Z.
The point of origin for these entries will be the machine's reference position (the zero return position). Here is an example command:
Note that with most machining centers, the zero return position is very close to the over travel limit in each axis, meaning the specified values in the G22 command will probably be negative. From the time when this command is given, whenever an axis moves out of the specified box, an alarm will sound.
One severe limitation (in my opinion) is related to the Z axis. Stored stroke limit does not consider tool length compensation. That is, if you want to guard something in the Z axis, each tool will require its own G22 command - and of course, you'll have to know the precise length of each tool in order to give each G22 command. Again, this dramatically minimize how helpful the stored stroke limit feature will be. But for our application (protecting only the Y axis), this limitation will not be a factor.
Setting up the safety zone
While you may be able to predict the values needed in the G22 command, it might be better to actually cautiously move the machines axes - while monitoring the machine position display (which shows the current distance to the zero return position).
With our application, first place the oversize workpiece on the table. Since we're only concerned with the Y axis, cautiously move the Y axis in the negative direction until the large workpiece is close to the Z axis ways. Let's say at this point the Y axis machine position display shows Y-13.4843. So maybe you want to limit the position to Y-13.0.
For X and Z, there is no need to limit, so we'll simply use values that exceed the machine's over travel limits for these axes (the machine's normal over travel limits [soft and hard limits] will still be in effect even when the machine is under the influence of a G22 command).
We'll say that the machine has 20.0 inch X axis travel and 18.0 inch Z axis travel. Here is a command that will protect the Z axis ways:
Notice that the positive limits need no protection, so we provide the machine's zero return position for the limit (with X0, Y0, and Z0).
G22 is modal, so once given, the safety zone will remain in effect until a G23 is given (or until the machine's power is turned off). So you should only need to give one G22 command - at the very beginning of the program.
Parameter preference: Finding the parameter related to stored stroke limit
In the previous article, we mentioned that the method by which stored stroke limited works is controlled by parameter. Either the machine will keep the axes from leaving the box created by the G22 command - or it will keep the axes from entering this box. For our application, the machine must keep the axes from leaving the box.
To find any parameter, you should begin by looking in the Fanuc manual at the section that describes the feature in question. In our case, this means looking at the description of G22 - stored stroke limit.
I happen to be looking in a 6MB manual. A sentence that is close to the description of the forbidden area states: Parameter (RWL) selects either inside or outside as forbidden area. While this is helpful, I cannot find anything that specifies the parameter number that is involved. This means I must search through the parameter list (which unfortunately, is not uncommon) to find the parameter named RWL.
In this case, it doesn't take very long - it is bit number six of parameter number nine. According to Fanuc's documentation:
So bit six (seventh bit from the right) must be set to a 1 for the application given above.
Custom macro tip: Another way to get arguments into a custom macro
For part family applications, one way to provide arguments (input variables) for the custom macro is to list them right at the beginning of the custom macro program. We normally use common variable (#100 series) along with a nice documenting message to explain the meaning of the variable. Consider, for example, this part family custom macro:
All of the arguments needed for the program are specified right at the beginning with common variables - and the accompanying message makes it clear as to what each argument represents. Again, this is a common method for getting arguments into a part family custom macro.
Consider adding one more criteria to this application. What if the workpiece material varies from job to job. Maybe sometimes this workpiece is made from aluminum - other times it is made from steel - yet other times it is made from brass, or copper, or nickel. You could of course, add some additional arguments to specify feeds and speeds for each tool, but these values would have to be changed every time a new material is to be machined. Here is another way to handle this problem.
We can set up a series of special cutting conditions custom macros (actually called as subprograms) that specify all cutting conditions needed for the material. For example, this might be the custom macro for steel:
And here is the custom macro for an aluminum workpiece:
You can easily create as many cutting conditions custom macros as you have materials to machine. The main program, of course, must be modified to reflect this new criteria: