You are on page 1of 32

EFFICIENT

CNC MACHINE MONITORING &


CONTROL USING
FPGA

SYED TAHIR HUSSAIN RIZVI 2009-MS-CE-10


Milling Machine

Conventionally, an operator decides and


adjusts various machines parameters like
design, depth of cut etc depending on type of
job

Controls the slide movements by hand.


CNC

COMPUTER NUMERIC CONTROL

Controlling a Machine by giving some numerical values through Computer


NUMERIC CONTROL
 Automation of machine tools that are operated by programmed commands
encoded on a storage medium

 No need to manually controlled via handwheels or levers

 In a CNC Machine functions and slide movements are controlled by motors


using computer programs.

 In the first NC machines , that were motors that moved the controls to follow
points fed into the system on punched tape.

 In modern CNC systems, design is automated using computer-aided design


(CAD) and computer-aided manufacturing (CAM) programs.
Basic Parts of CNC
 CNC system consists of three basic components:

1. Part program: a file/code (set of commands) which describes the sequence


of operations to be done.

2. Processing equipment: the unit which performs the manufacturing


operations according to the part program.

3. Machine control unit (MCU): stores the program and executes it by


converting each command into actions by the processing unit.

 If the MCU is a computer, then the NC is called CNC (Computer


Numerical Control)
CNC MACHINE

 CAD/CAM produces a computer file that is used to extract the


commands needed to operate a particular machine via a postprocessor,
and then loaded into the CNC machines for production.

 A computer aided design, or CAD, system uses computers to graphically


create product designs and models. These designs can be reviewed,
revised, and refined for use and application. Once finalized, the CAD
design is then exported to a computer aided manufacturing, or CAM,
system.

 CAM systems assist in all phases of manufacturing a product, including


machining, scheduling, management and quality control.
CNC Machine Control Unit (MCU)

 Decides Parameters
 Cutting speed
 Depth of cut
 Tool selection
 Tool paths

 The MCU issues commands in form of numeric data to motors that position slides and
tool accordingly.

 Programmed instructions are converted into output signals which in turn control
machine operations such as spindle speeds, tool selection, tool movement, and cutting
fluid flow.

 By using a computer processor (CNC), it allows programs to be edited and stored in the
computer memory as well as allow to monitor quality control functions during the actual
machining.
Basic CNC Principle
 The requirement of any CNC machine is automatic, precise,
and consistent motion control.

 All computer controlled machines are able to control


motion in various directions. Each of these directions of
motion is called an axis.

 Additionally, a CNC axis may be either a linear axis in


which movement is in a straight line, or a rotary axis
with motion following a circular path.
Axis to be Controlled
 In CNC machining, more than one axis can be controlled
simultaneously. These axis are:

- x, y, z axes (linear axes)


- a, b, c axes (rotational axes around x, y, z axes respectively
Axis to be Controlled

 In 2-axis milling machines, the x and y axes can be controlled


simultaneously.

 In 3-axis milling machines, the x, y, and z axes can be controlled


simultaneously.

 In 2 ½ milling machines, the z-axis is fixed at a certain value


and then the x and y axes are controlled simultaneously.
Basic CNC Principle
Each axis consists of a mechanical component, such as a slide that
moves, a motor that powers the mechanical movement, and a ball
screw to transfer the power from the motor to the mechanical
component.
These components, along with the computer controls are referred to as
an axis drive system.
Motors and loop control
 Two types of motor are commonly used:
 Stepper Motors
 Servo motors

 Stepper motors typically use open loop motion


control

 Servo motors use closed loop motion control


Stepper Motor
 Stepper motors can be seen as motors controlled by electrical
pulses.

 Common stepper motors require 200 pulses per rotation, so by


sending 600 pulses, the motor should make exactly 3 turns. This is
called "open loop motion control" because there is no mechanism
that checks that the motor turns as expected.

 The main drawback of stepper motors is the possibility of "missing


steps" if driven too fast, so stepper motors are always used at
conservative speeds (i.e. with enough margin to avoid missing
steps).
Servo Motors
 Servo motors don't use pulses, but continuous current, which is
simpler than pulses, but getting exact motion is more complex.

 To get 3 turns, the controller needs to send some current to the


motor, and needs a way to monitor the rotation, so that it stops
sending current once the 3 turns are achieved. This is called
"closed loop control" because of the mechanism that monitors
the motor rotation.

 This allows for faster operation and efficiency, but is more


complex and slightly less precise than stepper motors.
Open & Closed Loop Controls
Advantages of CNC Machine
 Easier to program;
 Easy storage of existing programs;
 Easy to change a program
 Avoids human errors
 NC machines are safer to operate
 Complex geometry is produced as cheaply as simple ones
 Usually generates closer tolerances than manual machines
How to increase efficiency of motion controller
& monitoring system?

The industry of machine tools keeps a constant


progress that responds to the most demanding
market requirements, such as
production-time decreasing
and
zero-defect manufacturing
CNC Position Controller using FPGA
CNC Position Controller using FPGA

 A motion controller for high-speed CNC machines has


higher demands on the electronics design compared with
a conventional speed CNC

 Requires higher sampling rates of Position Controller


(servo loop update time) that reduce the available time
for on-line processing.

 In CNC, the position controller need different modules


to implement the movement control of machine tools.
CNC Position Controller using FPGA

 The velocity profile generator module can generate velocity profiles with the desired
acceleration and deceleration characteristics.

 The interpolation calculation module move to the desired location without any sharp jerks.
 
 The PID control module controls the position and velocity of the motors.
 
 The feedback counter module calculates the current motor position.
  
 The data converter module converts the output of the circuit into the driving signals for
servo drivers of several types.

 The clock generator module provides various clock signals for several modules in the
system.

 The external interface module communicates with the host computer


CNC Position Controller using FPGA

 Most motion control systems use a motion controller that is


based on a digital signal processor (DSP) and a microprocessor,.
A multiple axis motion control system needs many functions in
order to quickly and accurately perform the complex tasks
required for industrial robots and automation systems.

 Complicated multiplicative, divisional, and trigonometric


function calls are needed to perform repetitive calculations. This
requirement leads to a complex hardware design, expensive
computation, increased system size, high cost, and high power
consumption .
CNC Position Controller using FPGA

 The field-programmable gate array (FPGA) can be


used to implement digital systems.

 In contrast, DSPs and personal computers (PCs)


have pipelined architectures. The computing time
of an FPGA-based controller can be relatively short
regardless of the complexity of the control
algorithm because of its parallel processing
architecture.
CNC Position Controller using FPGA

 FPGA is an array of basic logic blocks where the user can define its interconnectivity, making
them programmable in a fully open architecture.

 FPGA provides the advantages of a general purpose processor and a specialized circuit that
can be reconfigured as many times as it is necessary until the required functionality is
achieved.

 FPGA is more flexible and its design cycle is much shorter because of its reconfigurability.

 FPGA has become more popular for hardware designers to provide high-performance digital
signal processing, providing solutions that are often 10X to 100X faster than can be
accomplished with PC or Single Board Computer (SBC) processors. FPGA has a natural
parallel architecture for high-speed computation.

 The FPGA-based implementation of control algorithm offers advantages such as high-speed


computation, complex functionality and real-time processing capabilities.
CNC Position Controller using FPGA

High-speed machining and servo loop update cycle


 Feed rate is the relative velocity at which the cutter is advanced along the
workpiece. Feed rate units depend on the motion of the tool and workpiece; In
linear systems (e.g., milling), the units are typically distance per time (inches per
minute [in/min or ipm] or millimeters per minute [mm/min]).
 
 The control resolution of CNC is the distance that the axis moves in position
control cycle (a servo control cycle).
 
 In the high-speed machining process, CNC must to maintain control resolution,
while ensuring high-speed feed rate. When the feed rate is 30m/min and position
control cycle is 1ms (frequency is 1 KHz), the control resolution of CNC can only
attain 0.5 mm.
Feed Rate=(30m/min)=(30/60 m/sec)=(.5 m/sec)
Control Resolution =(.5 m/sec)*(1msec)=.5 mm
CNC Position Controller using FPGA

 If keeping feed rate unchanged and improving the frequency


of servo loop update to 10 KHz (servo loop update cycle is
0.1 ms), the control resolution would attain 0.05mm.

 CNC Position Controller receives the position command


calculated by processor and controls accurately servos
revolving which drive the axis to move to the target position.

 In order to reduce the response time for CNC position


controller for all 3 axis, fpga can be used for calculation of
position of all axis at the same time.
Monitoring of CNC Machine using FPGA
Monitoring of CNC Machine using FPGA

 The vibrations are one of the most significant variables to be


monitored on machine tools since they directly affect the end
piece finishing.

 Time domain, Fast Fourier transform (FFT), and Discrete


Wavelet Transform (DWT) are techniques often used for
vibration analysis

 It is difficult to find an instrument for vibration analysis that


allows individually applying the time, FFT, and DWT
techniques.
Monitoring of CNC Machine using FPGA

 Data processing of the instrument should performs the calculation


in a lower time than that required for the next module for further
processing or decision making tasks; for instance, in a typical
industrial controller, the processing parameters are required every
time the control loop is updated.

 Continuous online monitoring, parallel processing of parameters


and controlling parameters are different operations to be served.

 A continuous-online-monitoring instrument can be implemented.


This instrument can provides the parameters for improving the
control and decision-making processes in CNC machine tools
Monitoring of CNC Machine using FPGA

 Time-domain analysis is utilized in measuring the vibration levels, based on the


amplitude. The vibration-signal waveform can give, by itself, relevant
information regarding the analyzed process such as dc level and rate of change of
the vibration signal.
 

 FFT analysis is applied to detect failures on gearboxes and mechanical


unbalance. These defects are reflected on the signal spectrum with a significant
increase in the fundamental frequency

 DWT analysis can be applied for detecting cutting-tool breakage on machine


tools and broken bars in induction motors
Conclusion
 The control and monitoring of CNC machine are
two major parts. So, on working them an efficient
CNC machine can be achieved. For this, a lot of
calculations and tasks are required to be performed
in fastest time.

 So, field-programmable gate array can be used to


achieve real-time and continuous online analysis
and a fast motion controller.
References
 Efficient Implementation of CNC Position Controller using FPGA
(Yaodong Tao, Hu Lin, Yi Hu, Xiaohui Zhang, Zhicheng Wang)
 
 The Design of a High Performance Modular CNC System Architecture
(Claudio Ambran, Kevin Oldknowb, Giuseppe Migliorini", and Ian Yellowleyb)

 FPGA-Based Vibration Analyzer for Continuous CNC Machinery Monitoring


With Fused FFT-DWT Signal Processing
(Jose de Jesus Rangel-Magdaleno, Rene de Jesus Romero-Troncoso)

 An FPGA-Based Multiple-Axis Motion Control Chip


(Jung Uk Cho, Quy Ngoc Le, and Jae Wook Jeon)

 Design of Reconfigurable CNC System Based on FPGA


(LI Dongdong, Wu Liming, Zhu Gaofeng, Lai Nanhui)
THANK YOU

You might also like