Automated programming of nc-machines: evolution of shopfloor programming.
Ficko, Mirko ; Pahole, Ivo ; Balic, Joze 等
Abstract: Since the beginning of use of numerically controlled
machines (CNC) there has been a tendency towards increasing the
productivity in creation of CNC programs (G-code) and, in the same time,
reducing the exactingness of programming. Striving for these two targets
has led to two separate manners of programming which are, today, most
widely used: computer--aided programming and programming on the machine.
Due to the variety of properties the area of use differs completely.
Both manners of programming do no more satisfy the requirements of
modern use of CNC machines. In last years systems for automated programming are appearing, promising that they will replace programming
on the machine in the future.
Key words: computer aided manufacturing, automated programming.
1. INTRODUCTION
In general, modern CNC machines are used for specific tasks, but
they are increasingly used also as the replacement of conventional
machines. In this case, often geometrically simple cases are machined
able to be simply programmed. For such cases, frequently, manual
programming or programming on the machine are still always used.
There are many products not requiring computer-aided programming.
Considering, for example, the tool for forming of sheet steel, which is
very complex, it can be established that only some elements have an
exacting 3D shape, whereas, the other parts are mainly built out of
basic geometrical features.
In the first part the paper presents the evolution of CNC
programming since the beginning till today, in second part it defines
the trends in the development of shop-floor programming.
2. EVOLUTION OF PROGRAMMING
Soon after John T. Parsons had developed the CNC machine in early
fifties (Parsons, 1958), the need for efficient programming of these
machines appeared. During the development of the technology of CNC
control of machine tools several modes of programming appeared; the
following of them are most widely used and present still today:
--Manual programming.
--Shop-floor programming.
--CAM programming.
In the sixties and seventies of the preceding century in most cases
manual programming sufficed in industrial practice. However, due to
limitations of the human intelligence it is not possible in this manner
to utilize fully the CNC machines. Programming of CNC machines requires
the capabilities at which the computer is more apt than the human.
Therefore, the use of computer for creation of G-code started soon.
Though, at the beginning computers had insufficient capabilities and
restricted possibilities of input compared to today's conditions.
That posed problems, particularly, when describing the product geometry.
Thus, higher program languages were developed, out of which APT was most
widely used (IIT Research Institute, 1967), assuring more advanced input
of the product geometry and also more advanced programming. Thus, much
repeating manual programming work was spared. The use of such aids for
manual programming can be considered to be the superstructure of manual
programming and an intermediate stage of development up to
computer-aided programming. By the use of higher programming languages
the programming of the tool path mainly for simple shapes of products,
consisting, particularly, of straight lines and circular arcs, was
simplified and its time shortened. However, in such programming the
human was still busy solving geometrical problems.
While the describing, textual input of geometry is usually rather
simple for 2D or 2.5D form, it is practically inapplicable for the input
of 3D geometry. Therefore, manual programming is not appropriate for
programming geometrically exacting shapes and today it is often too
exacting and too slow even for simple shapes (Ficko, 2006). It must be
borne in mind that computer aided programming originates in manual
programming and uses the approaches based on manual programming.
Familiarization with manual programming is, thus, a key to good
exploitation of the CAM application (Smid, 2004).
Since the beginning of commercial use of CNC machines the
programming has been possible also on the machine itself by the use of
the incorporated keyboard. The controls assure manual operating of the
machine on the coordinates and a more advanced programming in the
higher-level programming language inherent in the controls. However,
special attention must be paid to programming on the machine, since it
has developed and survived until today, whereas manual programming is
disappearing. Programming on the machine and/or shop-floor programming,
just like the manual programming, gradually started to acquire more
complex commands and functions supported in the machine controls in
distinction from manual programming supported by the use of the computer
(like in case of APT). Those functions comprise, particularly, the
machining cycles, repeating operations, operations executed according to pattern and logical operations (Smid, 2004). However, these advanced
capabilities of controls are not very much applicable due to
difficulties in communication and interaction between the machine and
the human.
Also the required level of knowledge for better exploitation of
capabilities of the controls is too high for machine operators. Thus,
the machine operators, usually, cannot take full advantage of the
capabilities of the controls. Further, the productivity of such
programming is bad, since it does not exceed much the productivity of
manual programming. The human is still always the main performer of the
computation operations and, simultaneously, the restricting factor.
Such manner of programming of CNC machines is widely used for
machining simpler parts in customized production. Programming on the
machine does away with the need for the programmer and computer
supported technologies, which results in the reduction of cost and
facilitation of organization. Of course, with the use of programming on
the machine the advantages of modern technologies available are
renounced. If the advantages of modern CNC machines are renounced, also
the important competitive advantages are lost and productivity
decreased.
The beginnings of the CAM reach back to seventies to the time of
the programming language APT, but in the eighties of the previous
century the development became outstanding. The computer technology made
progress and graphic interfaces, ensuring intuitive and interactive
input of geometry, were presented. 3D CAD models became the principal
carriers of information. Surface and solid models and accelerated shaded
computer graphics with high definition were introduced. The development
of CAD models was followed by the development of CAM software taking
full advantage of more and more precise and extensive geometry
information from the CAD model. Because of increasing applicability of
CAM software and accessibility of platforms for running those
applications the CAM software became popular among the users of CNC
machines.
Creation of CNC programs by CAM software became irreplaceable,
particularly, for complex workpieces and/or sculptured shapes. By
expansion of the area of use of the CNC machines also to customized
production also the need for productivity and simplicity of the CAM
software increased.
3. AUTOMATED PROGRAMMING BETWEEN SHOPFLOOR PROGRAMMING AND CAM
Today, practically all G-code is created in two ways differing in
the area of use and advantages/disadvantages:
--CAM supported programming; applicable for programming of the most
complex CNC machines and the most exacting machining. Programming is
exacting and requires highly qualified programmers--technologists having
technological knowledge and experience in addition to programming
skills. The CAD model of the product and blank is needed for
programming.
--Programming on the machine (controls); for programming of simple
shapes, in particular, in customized or small-lot production. It is
widely employed in workshop use of CNC machines. Programming can be
affected by the machine operator with relatively little knowledge,
having technological knowledge and experience. There is no need for CAD
models. The disadvantages are the low productivity; the machine is
occupied during programming, much defects resulting from human factor.
Although the CAM programming is superior in almost all technical
properties, it has some disadvantages, particularly, of organizational
and technical character. Because of those deficiencies the users need a
system which is simple for use, such as programming on the machine, and
exploits the advantages of CAM programming. It can be seen that the
purpose and properties of these two types of programming complement
themselves as shown in Fig.1. For simple, particularly, 2D and 2,5D
products, above all in customized workshop production the programming on
the machine is often used, whereas for more exacting shapes the CAM
programming is used.
However, the programming on the machine is less and less
competitive and is losing users. The programming on the machine does not
belong to the CAx-chain of technologies. With the exit from the
CAx-chain in the manufacture the possibilities, assured by modern
technologies in this area, such as simulation of cutting, simulation of
machine and optimization are renounced.
[FIGURE 1 OMITTED]
Due to modern CAx support of the manufacture the opportunity
appeared to satisfy the need for a new manner of programming which would
combine the advantages of the manual and CAM programming. Highly
automated programming simple for use and appropriate, particularly, for
simple and also more complex problems is needed (Balic). In this case,
simple problems are meant to be technologically nonexacting machining,
particularly, of products built from geometrical features (Balic &
Korosec 2002). Automated programming will assure high productivity in
creation of programs and will do away with the need for highly qualified
personnel for programming of CNC machine tools. This new manner of
creation of programs will require little interfering and deciding of the
human.
4. CONCLUSIONS
Today, in fact, all G-code except the simplest ones are created by
CAM applications. However, there is an area of use, where manual
programming and shop-floor programming are still always used,
particularly, because of cost-effectiveness and organizational
nonexactingness. Due to incontestable disadvantages of those manners of
programming the need for highly automated CAM programming capable of
being executed directly beside or even on the machine appears. Such
automated programming will reduce the area of use of CAM programming and
will eliminate the manual programming almost completely.
5. REFERENCES
Parsons, J.T. Motor Controlled Apparatus For Positioning Machine
Tool, U.S. Patent 2820187, filed May 5, 1952, and issued Jan 14, 1958
IIT Research Institute. (1967). APT part programming, McGraw-Hill,
New York
Ficko, M.; Pahole, I. & Balic J. (2006). Avtomatizacija
programiranja NC-strojev s programskim paketom EdgeCAM / Automatisation
of programming of NC machines by EdgeCAM. in Proc. Orodjarstvo 2006,
Polajnar, A. (Ed.), Poje, J. (Ed.) & Junkar, M. (Ed.), pp. 181-182,
ISBN 961-6226-89-4 Portoroz, 10.-12. Oct, 2006, Fakulteta za
strojnistvo, Maribor
Smid, P. (2003). CNC programming handbook: A comprehensive guide to
practical CNC programming, Industrial Press, cop., ISBN 0-8311-3158-6,
New York
Balic, J. & Korosec M. (2002). Intelligent tool path generation
for milling of free surfaces using neural networks. International
Journal of Machine Tools & Manufacture, Vol. 42, No. 10 (August
2002), pp. 1171-1179, ISSN 0890-6955