background image

 

1

Conversational Programming on CNCs 

New Developments to Increase Productivity

 

 

 

Long Yang 

CNC Application Engineer 

GE Fanuc Automation 

ABSTRACT 

 

In many machine shops, parts are machined in small quantities, and jobs are changed frequently.  
In this environment, effective part programming is always an important factor to increase 
productivity. Offline CAD/CAM packages can help, but they can be too expensive for small 
shops, and it takes time to train machine operators to use this complex software. Conversational 
programming on the CNC, on the other hand, can greatly help these shops to write part programs 
quickly to increase productivity, and they are typically easy to learn.  
 
The objectives of this paper are as follows, 

•  To identify the best features of conversational programming 
•  To identify the benefits of conversational programming and how to select the software 

that best fits your shop 

• 

To discuss

 the 

latest development of conversational programming 

 

Introduction 

Conversational programming on the CNC was developed in the early 1980s and is popular in 
many job shops, maintenance shops and tool rooms. In these shops, parts are machined in small 
quantities, and jobs are changed frequently. In many cases, the part machining processes are 
simple, such as face milling, outer diameter (OD) and inner diameter (ID) turning and bolt-hole 
pattern drilling. If a machine operator can program these parts or machining processes quickly 
based on the mechanical drawings, productivity will be increased significantly. Therefore, 
effective programming is an important factor to increase productivity.  
Three programming methods have been used to develop part programs:  

•  Manual G code programming 
•  Offline CAM software on a PC 

•  Conversational programming on the CNC 

Manual G code programming can be very effective for some simple machining processes, such 
as face milling. However, it has two main drawbacks. First, G code programming is not intuitive 
and requires a lot of training. Many machine operators are intimidated by G code and are not 
willing to learn G code programming. Second, G code programming for complex machining 
processes, such as contour OD/ID turning and pocketing, is very tedious and time consuming. G 
code programming becomes ineffective in this case.  
Offline CAM software is designed to program complex parts on a PC and cannot be used on the 
CNC without a PC front end. Another drawback similar to G code programming is that most 
CAM software has a steep learning curve, which limits its use.  

background image

 

2

Conversational programming on CNC was developed to solve the inefficiencies of manual G 
code programming and offline CAM software. A good conversational programming is intuitive, 
simple, and yet capable of programming simple to complex parts. Conversational programming 
on CNC becomes a very effective programming tool for many machine shops that manufacture 
parts in small to medium lot sizes. 
Conversational programming has advanced significantly in the last twenty years, with the 
advances in computer technology. The operation of the early conversational programming is 
very similar to DOS on PCs. The user interface was text based because of the limitations of the 
hardware and was not intuitive. For example, it is difficult to describe geometry with text, 
forcing the operator to have a good understanding of the geometric terminology.  
The user interface of the latest conversational programming is based on graphical input. For 
example, the geometry data is not only described in text, but also presented graphically. 
Therefore, a user understands the input intuitively and can quickly develop the part program. The 
operation of latest conversational programming is similar to Microsoft Windows.  
This paper will discuss the latest development of conversational programming on CNC with the 
emphasis on the following subjects,  

•  Identifying the best features of conversational programming  

•  Identifying the benefits of conversational programming and how to select the 

software that best fits your shop 

•  Discussing the latest developments of conversational programming  

Features of Conversational Programming on CNC 

Design of a good conversational programming on CNC is a difficult task because many factors 
need to be considered.  
 
First of all, the programming tool must cover a broad user base. The first group of users is 
experienced manual machinists who are familiar with machining process but with little or no 
experience with CNC machines. The second group is CNC machinists who know how to operate 
CNC machines and have limited knowledge of G code and M code.  They may not be familiar 
with machining processes, such as feeds and speeds. The third group has the combined 
knowledge of the first two groups. It is difficult to satisfy the needs of all these groups with one 
tool. 
 
The programming tool also needs to cover a broad range of applications from simple machining 
processes, such as OD/ID turning, face milling and bolt-hole pattern drilling, to complex 
machining processes, such as turning with multiple turrets and a sub-spindle.  
 
With above challenges in mind, this paper will discuss the features that an ideal conversational 
programming system should incorporate.  

Intuitive User Interface 

The User Interface should be intuitive to users. The layout of the programming processes should 
be presented in a manner that models the manual machining process that is familiar to the 
operator.  
 

background image

 

3

Currently, there are two methods for the layout. The first one is to closely follow the manual 
machine process, with the operator providing all the necessary geometry and cutting technology 
data (such as feeds and speeds) as they are required.  Face milling a cube is a good example to 
use. The following are the natural steps to write a program: 
 

1.  Define the workpiece  
2.  Select a cutting tool and define feed and speed 
3.  Turn on spindle 
4.  Move the tool to starting position 
5.  Define face milling process 

 
After these 5 steps, the machining process for face milling is defined. This layout is very 
intuitive to manual machine operators, and they should not have any difficulty following the 
program flow. The following illustration is an example of the softkey layout of GE Fanuc 
Manual Guide for milling.  
 
 
 
 
 
The second method is to separate a machining process into two groups of data: technology data 
and geometry data. The technology data includes tooling, feed and speed, machining sequence 
(M code). The geometry data includes the profile of the part and the machining processes to be 
used. This input method is more logical and compact. The following illustration is an example of 
OD turning process in GE Fanuc Manual Guide for Turning. The top right window shows 
technology data and the bottom right window shows geometry data. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Graphical Program Input 

The geometry input should be more graphical and less descriptive. This makes the input very 
intuitive. The following is an example for bolt-hole pattern input. Both graphical representation 

 

 

background image

 

4

and text description of geometry data are presented. When cursor is on a data entry, the 
corresponding letter will be highlighted in the geometry window. 
 
 
 
 
 
 
 
 
 
 
 
 

Easy Contour Input 

Contoured shapes are used frequently in frame milling, pocket milling and OD/ID turning. A 
capable contour function will help a user to write programs quickly, by using information 
available on the part drawing. A contour function should have the following characteristics: 
 
1.  Versatile geometry input 

Different representations for the same geometry may be given in mechanical drawings. For 
example, a line may be defined in combination of end points or an angle with length; a circle 
may be defined in combination of a radius with end points, or a radius with center point, or a 
radius with an angle. The contour function should take whatever dimensions are available for 
the input.  
 

2.  Automatic calculation of connection point 

The contour function should automatically calculate tangent points between arcs, or between 
line and arc, and cross points between lines, or arcs. A user should not have to manually 
calculate these connection points. If there are more than one possible connection point, for 
example, two possible tangent points between a line with an arc, the program should 
graphically present these points and allow the user to select the correct connection point. 

 
3.  Calculator 

A handy calculator should be available in case a user needs to convert dimension data on the 
mechanical drawing. The arithmetic should at least include +, -, *, /. 

 
4.  Absolute and incremental input 

A mechanical drawing may be dimensioned in absolute (one reference point) or in 
incremental (many reference points). The contour input should be freely switched between 
absolute and incremental input. 

Part Program Simulation  

Graphical simulation can help a user to quickly check out the part program and increase 
productivity. Consider the following functions: 

background image

 

5

 
1.  Solid model (3-dimensional) simulation 

Solid model simulation can provide an overall check for a part program, and give the 
operator the confidence to run the part program. An operator can quickly find out any evident 
geometry mistake in a part program using solid model simulation. It is desirable to include 
cutting tools in solid model simulation, and this can provide better understanding of the 
cutting process. 
 
 
 
 
 
 
 
 
 
 
 

2.  Solid model rotation 

Solid model rotation will provide different perspective views for a part. 

 
3.  Tool path simulation  

Tool path simulation can provide a detailed check for a part program. The following features 
are found very useful in tool path simulation:  
•  G code display: G code corresponding to current tool path is displayed next to the 

simulation screen. Most CNCs use G code at motion control level, and the G code display 
can help users to make sure that a part grogram is correct. Some detailed information, 
such as cutter compensation and tool length offset, can be easily checked using tool path 
simulation together with the displayed G code. 

•  Single block execution: This allows a user to easily follow each tool movement. 

•  Tool path clear: When tool paths are overlapped in a part program, it is hard for a user to 

follow the simulation. With this function, a user can erase any previously drawn tool path 
and easily check the rest of the part program.  

 

4.  Sectional display 

A sectional display is used to check inside of some machine features, such as a hole, groove 
and pocket.  
 

5.  3-plane display  

A 3-plane display provides another visual aid for overall program checking. 

 
6.  Zoom function 

Zoom function should allow zoom in (enlargement) and zoom out (reduction). Zoom out is 
very useful to check auxiliary tool movements, such as tool change position. 
 

7.  Simulation speed adjustment 

 

background image

 

6

Simulation speed adjustment allows speed-up or slow-down of the simulation. Again, this is 
useful for checking part program details. 

Easy Tool and Workpiece Setup 

Machine operators often spend a lot of time to setup tools and workpiece. Conversational setup 
for tools and workpiece reduces the setup time. This is particularly beneficial to the operators 
with less CNC experience. The following illustration is an example for workpiece setup in GE 
Fanuc Manual Guide for Turning. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
In the above example, a user first specifies the tool, then moves the tool to touch the outer 
diameter of the work piece and inputs the diameter. Therefore, the work shift of X-axis is 
determined. The work shift of Z-axis can be obtained similarly.  
 
Another useful function is tool and material data file. Geometry data, offset value and material 
information are assigned to each cutting tool. Cutting conditions, such as feed and speed, are also 
assigned to each workpiece material and cutting process. Using this data, the software 
automatically decides the cutting tool and cutting conditions when a machining process is input, 
and programming time can be reduced. 

Teaching Function 

The teaching function is very beneficial to the machine shops that have experienced manual 
machine operators. These operators know how to cut metals on manual machines but have little 
or no knowledge on CNCs. The teaching function enables these machinists to generate simple 
part programs. This can lead them to a full understanding of CNC programming and operation.  
 
The teaching function should register both tool movements (G code) and miscellaneous functions 
(M code). The tool movements should include slanted line and arc, which requires simultaneous 
movements of two axes. The tool movements are typically executed using the electronic handle 
wheel, which is similar to manual operation. 
 
Another very useful teaching function is thread repair. When the thread of a large component, 
such as an oil pipe, is damaged, it is desirable to be able to repair the thread. (If the thread cannot 

background image

 

7

be repaired, the component has to be discarded.) The difficulty of repairing a thread is to find the 
start point of synchronization between spindle and linear axis for the thread. With the thread 
repair function, the thread geometry data, such as diameter and pitch, and the starting point of the 
thread can be taught conversationally as a machining process. Then, the damaged thread is easily 
repaired. This function is very popular in machine shops that do maintenance work and 
remanufacture for the oil and gas industry.  

G Code Conversation Capability 

Conversational programming is always expressed in macro statements or in plain English like 
language. Part programs developed in conversational programming cannot be used on the 
machines without conversational programming. Unfortunately, most CNC machines today do not 
have conversational programming. Even for the machines with conversational programming, the 
part program is not interchangeable for different vendors’ CNCs. It is desirable that the 
conversational part programs can be converted to standard G codes so that they can be used on 
other CNC machines.  
 
G code has been the standard machining language for the past several decades and will be the 
dominant language for the foreseeable future. Conversational programming language updates 
very quickly, and the part program developed in previous conversational programming may not 
be able to operate in later conversational programming. It is necessary to archive a part program 
in G code for later use.  

Background Editing 

Background editing enables a user to develop new part programs using conversational 
programming while the machine is cutting part. This function can allow a user to use all the 
functionalities of editing and animation in conversational programming. A perception in the past 
is that a machine has to stop running in order develop part program conversationally, and this 
can waste valuable machine operation time. With background editing function, new part 
programs are developed while the machine is running. This can reduce machine idle time and 
increase productivity.  
 
Currently, there are two ways to implement background editing. The first method is to convert 
the conversational program to a G code program. Then, the G code program is executed on ISO 
(regular) screens, and new part programs are developed on conversational screens. The second 
method is that both machine program execution and new program development are performed in 
conversational screens. 

Easy Customization (Expandability)  

Some job shops may need special cycles to produce the parts, and some OEMs may require 
unique machining processes for their machines. A generic conversational programming does not 
necessarily provide these special cycles because they only apply to specific machines and/or 
special parts. However, it is important to provide the developing tools and interface for users to 
add their own special cycles. This can be very valuable. For example, machining a flange surface 
is shown below, where the machining processes include facing, frame milling, grooving and 
bolt-hole drilling. If similar parts with different geometries are produced in a job shop, the user 

background image

 

8

should develop one cycle that combines all four of these machining processes. This speeds up the 
program development. 
 
 
 
 
 
 
 
 
 
 
 
 
 
Flexibility of addition and modification of text display is useful. This will help the OEM or end 
user to customize the display and make it unique to their machines. For example, when each 
machine uses unique M codes, it will be useful for the OEM to be able to add a pop-up window 
to display these M codes with explanations. When machine operators develop the part programs, 
they can quickly select the M code needed with the help of M code pop-up window shown 
below. An OEM should freely add and modify the M code list based on the machine 
requirements. 
 
 
 
 
 
 
 
 
 
 
 
 

Complex Machining 

Multi-task machine tools, which provide both milling and turning machining processes, have 
become very popular in recent years. These machines are very efficient and increase productivity 
significantly. Many machine tool builders offer these types of machines. (An example of these 
machines is a multi-task lathe with three turrets, sub-spindle and tilting milling head.) 
Programming these machines can prove to be difficult. A lot of offline software packages are not 
capable of providing effective programming because of the complexity of the machines. Some 
low-end offline software packages even do not have the programming capability for these 
machines. One difficulty is the interference check for a multi-task machine, such as a lathe with 
three turrets, sub-spindle and tilting milling head. Because multiple tools move simultaneously, 
the interference check is critical. To prevent collision, machine data, such as the stroke limit of 

 

background image

 

9

each turret, the dimension of chuck and tail stock, tool geometry etc., are required. When a part 
program is developed, the data needs to be considered for interference checking. Machine tool 
builders build machines differently, and the data for the interference check may also be different. 
All the machine data is stored in the CNC, and conversational programming uses the data in 
conversational programming. Hence, collision between tools and workpiece can be prevented. 
Implementation of interference check in offline CAM software is much more difficult.  
 
The following are examples of multi-task turning centers. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
The following are examples of multi-task machining centers. 
 
 
 
 
 
 
 
 
 
 
 

Import of CAD Drawings for Complex Tool Path  

Tool path geometry for most parts is a simple contour that can be expressed in terms of lines and 
arcs (first order and second order curves). These contours can be manually input based on the 
mechanical drawing. However, some parts have a complex contour that is expressed in higher 
order curves. It is very difficult to manually input these curves. It is desirable that conversational 
programming software can import geometry data, such as DXF or IGES file, from CAD 
program. This will make the conversational programming more versatile.  

2 turrets with milling head 

and sub-spindle

T

M

T

ATC

2 turrets with milling head 

and sub-spindle

T

M

T

ATC

T

T

M

T

ATC

M

T

ATC

T

T

2 turrets with sub-spindle

T

T

T

T

2 turrets with sub-spindle

T

T

T

3 turrets with sub-spindle

T

T

T

T

T

T

T

T

T

3 turrets with sub-spindle

T

T

M

T

ATC

3 turrets with milling head and 

sub-spindle

T

T

M

T

ATC

T

T

T

T

M

T

ATC

M

T

ATC

3 turrets with milling head and 

sub-spindle

T

1 turret with sub-spindle

T

T

T

1 turret with sub-spindle

1 turret with milling head and 

sub-spindle

M

T

ATC

1 turret with milling head and 

sub-spindle

M

T

ATC

M

T

ATC

M

T

ATC

Tool head

with tilting axis

B-axis

C-axis

Tool head

with tilting axis

B-axis

C-axis

B-axis

C-axis

Lathe machining

Tool head

Rotation by

spindle motor

Lathe machining

Tool head

Rotation by

spindle motor

Rotation by

spindle motor

5-axis (3+2) type machining center

Compound machine with both of

milling and lathe machining capability

background image

 

10

PC Version for Training and Demo 

A simplified version of conversational programming for PC can be very useful for product 
demonstration and training. The software does not need to be comprehensive. A simplified PC 
version can help control vendors to easily demonstrate the software without using a CNC. Good 
conversational programming is self-contained and self-explanatory, and a user can easily learn 
how to use it. Therefore, control vendors can send the PC version software to their customers and 
let them evaluate the software. Another benefit is that the end user is able to learn basic functions 
with the PC version, which reduces the time spent on a machine.  

Modular Software 

The goal of conversational programming is to help machine operators on the shop floor to write 
part programs quickly and easily. To meet this goal, the programming must be easy to learn and 
easy to use. However, when more functionality, such as complex machining and tool/material 
data, is provided, the operation may become confusing and difficult to follow, which can 
intimidate the average machine operator. Good conversational programming should have a 
modular structure. The majority of job shops with conversational programming use it to develop 
simple part programs, and users in these shops may not be proficient in CNC programming. For 
these shops, simplicity and ease of use are the top priority. The basic software module should be 
designed to meet this goal. For the jobs that need advanced functions, such as multi-task 
machining cycles, the software modules for the advanced functions can be added to the basic 
module. In general, the operators on these machines have better CNC programming skill and are 
able to program these complex functions. The following is a schematic for the software structure: 
 

 
 
 
 
 
 
 
 
 
 
 
Comparison between Online Conversational Programming 
and Offline CAM Software 

Both online conversational programming and offline CAM software are designed to help 
development of machining programs and have many similarities. However, each programming 
method has its advantages and disadvantages.  

Advanced

Milling

Cycles

Advanced

Turning

Cycles

Advanced

Setup

Teaching

Customi-

zation

CAD

Interface

Basic Module for Conversational Programming

(Edit, tuning/milling cycles, animation, tool/work setup)

CNC System Software

Advanced Software Modules

 

background image

 

11

Advantages of Online Conversational Programming 

Program Verification and Optimization 
Conversational programming significantly reduces the program verification time. After the 
program is written, the operator can instantaneously find out any evident geometry error in the 
program using solid model graphic animation. Then, the tool path together with G code display 
can be used to check the machining details, such as tool length compensation and cutter 
compensation. Dry run can also be used to check the physical machine movements in the 
program. If any program error is found, it can be corrected immediately on the machine. 
However, any error in the offline programming needs to be corrected on the PC and tested again. 
This means that a program has to be transferred between PC and CNC, and both the machine 
operator and NC programmer will have to be involved in the process. Therefore, longer program 
check time will be required for offline programming.  
 
Conversational programming also facilitates machining optimization. The programmed feed and 
speed sometimes need to be adjusted to obtain better surface finish and better machine 
performance during the machining. For conversational programming, this can be changed 
instantly on the machine. However, for offline programming, the operator has to search the G 
code program and find the feed and/or speed that need to be changed. Then, offline programming 
has to update the change and post a new G code program. It is clear this can take much longer 
than conversational programming. 

Machine Setup Function 
In many job shops that manufacture a wide range of different parts in small quantity, the setup 
for tooling and workpiece can be a significant portion of production time. In these shops, the 
parts are frequently changed, and therefore, the tools and fixtures have to be changed 
correspondingly. With conversational programming, a machine operator can quickly measure 
tools and set up workpiece, significantly reducing machine setup time. 
 
Conversational probe calibration and measurement cycles are very useful as well. A machine 
operator can interactively calibrate the probe, and the software automatically records the probe 
data, such as probe length and stylus ball diameter. The measurement cycles will assist a 
machine operator in examining the parts quickly. For example, the precision of some features on 
a part, such as diameter of holes that are machined by an endmill, is critical and need to be 
checked. (The precision error may be caused by programming error or quite often by tool wear.) 
With the help of conversational programming, an operator will be able to program the measuring 
cycle for the feature and inspect the part quickly. 

Teaching Function 
The teaching function is found to be valuable for training machine operators. In many job shops, 
the machine operators never received adequate CNC basic training before they operated the 
machines. A lot of them do not know how a CNC works or how to program a CNC. With the 
teaching function, they can learn CNC fundamentals, such as machine movements (G code) and 
machine operation logics (M code). This can lead them to being more efficient in working with 
CNC machines and, in the long run, can increase the productivity in these job shops. 
 

background image

 

12

The teaching of machining cycles, such as thread repair, prove to be very useful in job shops that 
perform a lot of maintenance work. These types of machining cycles can only be done with 
conversational programming.  

Customization 
Customization allows OEMs and end users to further modify the programming interface to make 
the conversational programming very unique to their machines. This enhances the machine 
functionality and increases productivity in job shops. Customization can be accomplished in 
conversational programming. However, offline CAM software is not be able to provide this 
flexibility. 

Utilization of CNC 
A great advantage for conversational programming is that it fully utilizes the CNC’s capability. 
CNC manufacturers develop their own conversational programming and know how to fully 
utilize the control capabilities. For example, most CNCs today use G code as a low-level motion 
control language, though this may be hidden from a user of conversational programming. 
Therefore, the conversational programming uses G code internally to command the machining. 
For many machining processes, such as OD/ID turning and drilling, canned cycle G codes will 
be used instead of many G01 and G02/G03 blocks. When the conversational program is 
converted to a G code program, the G code program is much more compact than the G code 
program posted from offline CAM software because CAM software may not have the 
information on the availability of canned cycles of the machine. The program storage is limited 
on many CNCs, and shorter programs benefit the controls with limited program storage. Another 
good example is to teach start synchronization point in thread repair, and this is not possible with 
offline programming. 

Disadvantages of Online Conversational Programming 

Consumption of Machining Time 
Conversational programming is done on a machine. This will inevitably consume some 
machining time, even though background editing is used in developing part programs. 
Consumption of machining time is not economical for any high production machine shop.  

3-axis Contour Programming in Milling 
3-axis contour programming for milling requires 3-dimensional graphic rendering capability and 
interface with CAD software. Most conversational programming today does not provide this 
function and will not be effective in 3-axis contour programming in milling.  

5-axis Contour Programming in Milling 
5-axis contour programming in milling requires intensive mathematical calculation for tool 
vector and 3-dimensional graphic rendering capability. The programmer must have very solid 
understanding of these mathematics and has to spend time on the control to check the tool 
movements. Because of these concerns, most conversational programming today is not used for 
5-axis contour programming.  
 

background image

 

13

Development Trends 

Complex Machining 

Development of new types of multi-task machines, such as multi-path lathe with tilted milling 
head, will require efficient programming tools. Standard G code programming is ineffective for 
these complex machines. CAM software will always be behind the development of the new 
machines. Moreover, CAM software developers may not be willing to spend a lot of effort on a 
special application because of economical considerations. Conversational programming may take 
the lead to develop the programming tools to support these complex machines.  

Implementation of More CAM Functions 

The advancement of CNC hardware and reduction of hardware cost will enable conversational 
programming to add more functions widely used in CAM software, such as 3-dimensional 
graphic rendering and 5-axis programming. Another development will be that conversational 
programming will apply more Microsoft Windows techniques, and the graphic user interface will 
look very similar to Microsoft Windows. The interface will allow a user to open different 
windows to edit programs, and functions like COPY, CUT, and PASTE will no longer be a 
luxury. With a graphical interface, the OEM or user will have more flexibility to customize the 
programming tool and make conversational programming more efficient. Computer input 
devices, such as a mouse, trackball and writing pad, will be more widely used in conversational 
programming. 

Conversational CNC 

The striking feature of conversational programming is the graphical and/or descriptive 
interaction. This makes a complicated program development process become an easier task. 
Future CNCs will surely adopt the conversational advantages. In the past, all major CNC 
manufacturers developed conversational programming as add-on software on top of regular CNC 
software. The conversational programming screens are different from the regular CNC screens. 
Most conversational programming screens are developed later and provide a Microsoft Windows 
look and feel. The regular screens may gradually be replaced with conversational screens. More 
conversational features will be added to the CNC to help the OEM setup the machine or to help 
maintenance personnel to troubleshoot the machine. These features may include servo setup and 
tuning, machine setup, machine trouble-shooting and machine optimization. These tasks can 
easily be performed using a conversational user interface.  
 

Conclusions 

Good conversational programming should allow an average machine operator to learn the 
programming skills with minimum effort and to develop relatively complex part programs 
efficiently. To achieve this goal, the conversational program must have the following basic 
features:  intuitive programming layout, graphical program input, comprehensive machining 
cycles, easy contour input, excellent program animation, and easy tool/work setup. Other 
features that will make conversational program more versatile and valuable are teaching 
function, G code conversion capability, background editing, customization, and complex 
machining.  
 

background image

 

14

Conversational programming is more suitable for machine shops that manufacture a wide variety 
of different parts in small production. In these shops, a machine operator will often be required to 
program the part, to setup tools and fixture, to verify and optimize the program, and to cut the 
part. Conversational programming can significantly boost the productivity in these machine 
shops. Conversational programming is also well accepted in tool rooms or model shops because 
of the diversity of parts machined. For multi-task machines, such as a multi-path lathe with tilted 
milling head, conversational programming has proved very successful in the past, and end users 
should definitely consider conversational programming on these machines. Conversational 
programming is valuable in providing CNC training. The teaching function can particularly help 
machine operators to obtain a better understanding of CNC programming and CNC operation. 
Well-trained CNC machine operators can greatly improve productivity. 
 
Conversational programming is not ideal for high production machines (except multi-task 
machines). Any idle time of these machines may increase production cost, and part programs 
should be developed on offline CAM software. 
 
Future conversational programming will have a more Microsoft Windows look and feel, and the 
program input and edit will become more convenient. Functions widely used in today’s offline 
CAM software, such as 3-dimensional graphic rendering, may be incorporated in some 
conversational programming systems. Some high-end conversational programming software will 
continue taking the lead in the area of programming multi-task machines. 

Acknowledgments 

The author would like to acknowledge Mark Brownhill and Bill Griffith from GE Fanuc for 
providing many valuable suggestions and comments on this paper. Alicia Brower of GE Fanuc is 
also acknowledged for proof reading the final draft. 
 

References 

 

1.  GE Fanuc, Manual Guide for Turning Operator’s Manual 
2.  GE Fanuc, Manual Guide for Milling Operator’s Manual 
3.  GE Fanuc, Manual Guide i Operator’s Manual 
4.  GE Fanuc, Manual Guide i Setup Guidance Operator’s Manual 
5.  Mazak, Mazatrol Fusion 640 Technical Specifications 
6.  Heidenhain, iTNC 530 Technical Specifications 
7.  Heidenhain, MANUALplus 4110 Technical Specifications 
8.  Hurco, UltiMax Technical Specifications 
9.  Siemens, ManualTurn Technical Specifications 
10. Siemens, ShopTurn Technical Specifications 
11. Siemens, ShopMill Technical Specifications 
12. Fagor, 8055 CNC Technical Specifications